prime/asm/MetroidPrime/BodyState/CBodyController.s

1290 lines
66 KiB
ArmAsm
Raw Normal View History

.include "macros.inc"
.section .sdata
.balign 8
.global lbl_805A7740
lbl_805A7740:
# ROM: 0x3F50E0
.4byte 0
.4byte 0
.section .text, "ax"
.global UpdateFrozenInfo__15CBodyControllerFfR13CStateManager
UpdateFrozenInfo__15CBodyControllerFfR13CStateManager:
/* 80139D40 00136CA0 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80139D44 00136CA4 7C 08 02 A6 */ mflr r0
/* 80139D48 00136CA8 90 01 00 64 */ stw r0, 0x64(r1)
/* 80139D4C 00136CAC DB E1 00 50 */ stfd f31, 0x50(r1)
/* 80139D50 00136CB0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 80139D54 00136CB4 DB C1 00 40 */ stfd f30, 0x40(r1)
/* 80139D58 00136CB8 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
/* 80139D5C 00136CBC DB A1 00 30 */ stfd f29, 0x30(r1)
/* 80139D60 00136CC0 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0
/* 80139D64 00136CC4 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80139D68 00136CC8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80139D6C 00136CCC 88 03 03 00 */ lbz r0, 0x300(r3)
/* 80139D70 00136CD0 FF A0 08 90 */ fmr f29, f1
/* 80139D74 00136CD4 7C 7E 1B 78 */ mr r30, r3
/* 80139D78 00136CD8 7C 9F 23 78 */ mr r31, r4
/* 80139D7C 00136CDC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 80139D80 00136CE0 41 82 01 5C */ beq lbl_80139EDC
/* 80139D84 00136CE4 C0 3E 03 04 */ lfs f1, 0x304(r30)
/* 80139D88 00136CE8 C0 1E 03 08 */ lfs f0, 0x308(r30)
/* 80139D8C 00136CEC C0 5E 03 0C */ lfs f2, 0x30c(r30)
/* 80139D90 00136CF0 EC 01 00 2A */ fadds f0, f1, f0
/* 80139D94 00136CF4 C0 3E 03 10 */ lfs f1, 0x310(r30)
/* 80139D98 00136CF8 EF E2 00 2A */ fadds f31, f2, f0
/* 80139D9C 00136CFC FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 80139DA0 00136D00 40 81 00 40 */ ble lbl_80139DE0
/* 80139DA4 00136D04 80 1E 02 D0 */ lwz r0, 0x2d0(r30)
/* 80139DA8 00136D08 2C 00 00 18 */ cmpwi r0, 0x18
/* 80139DAC 00136D0C 41 82 00 34 */ beq lbl_80139DE0
/* 80139DB0 00136D10 48 00 03 A5 */ bl UnFreeze__15CBodyControllerFv
/* 80139DB4 00136D14 80 7E 00 00 */ lwz r3, 0(r30)
/* 80139DB8 00136D18 28 03 00 00 */ cmplwi r3, 0
/* 80139DBC 00136D1C 41 82 00 14 */ beq lbl_80139DD0
/* 80139DC0 00136D20 7F E5 FB 78 */ mr r5, r31
/* 80139DC4 00136D24 38 80 00 1D */ li r4, 0x1d
/* 80139DC8 00136D28 38 C0 FF FF */ li r6, -1
/* 80139DCC 00136D2C 4B F1 72 F5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage
lbl_80139DD0:
/* 80139DD0 00136D30 80 7F 08 84 */ lwz r3, 0x884(r31)
/* 80139DD4 00136D34 80 9E 00 00 */ lwz r4, 0(r30)
/* 80139DD8 00136D38 48 0A B4 81 */ bl StartIce__20CActorModelParticlesFR6CActorR13CStateManager
/* 80139DDC 00136D3C 48 00 01 00 */ b lbl_80139EDC
lbl_80139DE0:
/* 80139DE0 00136D40 FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 80139DE4 00136D44 4C 40 13 82 */ cror 2, 0, 2
/* 80139DE8 00136D48 40 82 00 F4 */ bne lbl_80139EDC
/* 80139DEC 00136D4C EC 1F 10 28 */ fsubs f0, f31, f2
/* 80139DF0 00136D50 C3 C2 9A 70 */ lfs f30, lbl_805AB790@sda21(r2)
/* 80139DF4 00136D54 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80139DF8 00136D58 40 80 00 14 */ bge lbl_80139E0C
/* 80139DFC 00136D5C 7F C3 F3 78 */ mr r3, r30
/* 80139E00 00136D60 48 00 02 CD */ bl GetPercentageFrozen__15CBodyControllerCFv
/* 80139E04 00136D64 C0 02 9A 70 */ lfs f0, lbl_805AB790@sda21(r2)
/* 80139E08 00136D68 EF C0 08 28 */ fsubs f30, f0, f1
lbl_80139E0C:
/* 80139E0C 00136D6C FC 20 F0 90 */ fmr f1, f30
/* 80139E10 00136D70 7F C3 F3 78 */ mr r3, r30
/* 80139E14 00136D74 48 00 0A 4D */ bl MultiplyPlaybackRate__15CBodyControllerFf
/* 80139E18 00136D78 C0 02 9A 74 */ lfs f0, lbl_805AB794@sda21(r2)
/* 80139E1C 00136D7C C0 3E 03 10 */ lfs f1, 0x310(r30)
/* 80139E20 00136D80 EC 00 07 B2 */ fmuls f0, f0, f30
/* 80139E24 00136D84 EC 21 E8 2A */ fadds f1, f1, f29
/* 80139E28 00136D88 FC 00 00 1E */ fctiwz f0, f0
/* 80139E2C 00136D8C D0 3E 03 10 */ stfs f1, 0x310(r30)
/* 80139E30 00136D90 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 80139E34 00136D94 80 7E 00 00 */ lwz r3, 0(r30)
/* 80139E38 00136D98 80 81 00 24 */ lwz r4, 0x24(r1)
/* 80139E3C 00136D9C 4B F1 95 35 */ bl SetVolume__6CActorFUc
/* 80139E40 00136DA0 C0 1E 03 10 */ lfs f0, 0x310(r30)
/* 80139E44 00136DA4 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80139E48 00136DA8 40 81 00 94 */ ble lbl_80139EDC
/* 80139E4C 00136DAC 7F C3 F3 78 */ mr r3, r30
/* 80139E50 00136DB0 48 0B 77 E5 */ bl HasIceBreakoutState__15CBodyControllerFv
/* 80139E54 00136DB4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80139E58 00136DB8 41 82 00 84 */ beq lbl_80139EDC
/* 80139E5C 00136DBC 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha
/* 80139E60 00136DC0 C0 02 9A 70 */ lfs f0, lbl_805AB790@sda21(r2)
/* 80139E64 00136DC4 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l
/* 80139E68 00136DC8 3C 60 80 3E */ lis r3, lbl_803E10C8@ha
/* 80139E6C 00136DCC 90 01 00 08 */ stw r0, 8(r1)
/* 80139E70 00136DD0 38 C3 10 C8 */ addi r6, r3, lbl_803E10C8@l
/* 80139E74 00136DD4 38 60 00 1A */ li r3, 0x1a
/* 80139E78 00136DD8 38 A0 00 03 */ li r5, 3
/* 80139E7C 00136DDC 38 00 00 00 */ li r0, 0
/* 80139E80 00136DE0 3B FE 00 04 */ addi r31, r30, 4
/* 80139E84 00136DE4 90 61 00 0C */ stw r3, 0xc(r1)
/* 80139E88 00136DE8 7F E3 FB 78 */ mr r3, r31
/* 80139E8C 00136DEC 38 80 00 1A */ li r4, 0x1a
/* 80139E90 00136DF0 90 C1 00 08 */ stw r6, 8(r1)
/* 80139E94 00136DF4 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80139E98 00136DF8 90 A1 00 14 */ stw r5, 0x14(r1)
/* 80139E9C 00136DFC 98 01 00 18 */ stb r0, 0x18(r1)
/* 80139EA0 00136E00 4B FF 75 99 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd
/* 80139EA4 00136E04 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80139EA8 00136E08 3C 60 80 3E */ lis r3, lbl_803E10C8@ha
/* 80139EAC 00136E0C 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l
/* 80139EB0 00136E10 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha
/* 80139EB4 00136E14 90 1F 02 88 */ stw r0, 0x288(r31)
/* 80139EB8 00136E18 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l
/* 80139EBC 00136E1C C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80139EC0 00136E20 80 A1 00 14 */ lwz r5, 0x14(r1)
/* 80139EC4 00136E24 D0 1F 02 8C */ stfs f0, 0x28c(r31)
/* 80139EC8 00136E28 88 61 00 18 */ lbz r3, 0x18(r1)
/* 80139ECC 00136E2C 90 BF 02 90 */ stw r5, 0x290(r31)
/* 80139ED0 00136E30 90 81 00 08 */ stw r4, 8(r1)
/* 80139ED4 00136E34 98 7F 02 94 */ stb r3, 0x294(r31)
/* 80139ED8 00136E38 90 01 00 08 */ stw r0, 8(r1)
lbl_80139EDC:
/* 80139EDC 00136E3C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
/* 80139EE0 00136E40 CB E1 00 50 */ lfd f31, 0x50(r1)
/* 80139EE4 00136E44 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
/* 80139EE8 00136E48 CB C1 00 40 */ lfd f30, 0x40(r1)
/* 80139EEC 00136E4C E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0
/* 80139EF0 00136E50 CB A1 00 30 */ lfd f29, 0x30(r1)
/* 80139EF4 00136E54 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80139EF8 00136E58 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80139EFC 00136E5C 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80139F00 00136E60 7C 08 03 A6 */ mtlr r0
/* 80139F04 00136E64 38 21 00 60 */ addi r1, r1, 0x60
/* 80139F08 00136E68 4E 80 00 20 */ blr
.global StopElectrocution__15CBodyControllerFv
StopElectrocution__15CBodyControllerFv:
/* 80139F0C 00136E6C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80139F10 00136E70 7C 08 02 A6 */ mflr r0
/* 80139F14 00136E74 7C 66 1B 78 */ mr r6, r3
/* 80139F18 00136E78 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha
/* 80139F1C 00136E7C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80139F20 00136E80 38 A3 AA 68 */ addi r5, r3, __vt__13CBodyStateCmd@l
/* 80139F24 00136E84 C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 80139F28 00136E88 38 00 00 1B */ li r0, 0x1b
/* 80139F2C 00136E8C 38 66 00 04 */ addi r3, r6, 4
/* 80139F30 00136E90 38 81 00 08 */ addi r4, r1, 8
/* 80139F34 00136E94 D0 06 03 24 */ stfs f0, 0x324(r6)
/* 80139F38 00136E98 D0 06 03 2C */ stfs f0, 0x32c(r6)
/* 80139F3C 00136E9C 90 A1 00 08 */ stw r5, 8(r1)
/* 80139F40 00136EA0 90 01 00 0C */ stw r0, 0xc(r1)
/* 80139F44 00136EA4 4B FF 78 75 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd
/* 80139F48 00136EA8 34 01 00 08 */ addic. r0, r1, 8
/* 80139F4C 00136EAC 41 82 00 10 */ beq lbl_80139F5C
/* 80139F50 00136EB0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha
/* 80139F54 00136EB4 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l
/* 80139F58 00136EB8 90 01 00 08 */ stw r0, 8(r1)
lbl_80139F5C:
/* 80139F5C 00136EBC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80139F60 00136EC0 7C 08 03 A6 */ mtlr r0
/* 80139F64 00136EC4 38 21 00 10 */ addi r1, r1, 0x10
/* 80139F68 00136EC8 4E 80 00 20 */ blr
.global SetElectrocuting__15CBodyControllerFf
SetElectrocuting__15CBodyControllerFf:
/* 80139F6C 00136ECC 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80139F70 00136ED0 7C 08 02 A6 */ mflr r0
/* 80139F74 00136ED4 90 01 00 44 */ stw r0, 0x44(r1)
/* 80139F78 00136ED8 DB E1 00 30 */ stfd f31, 0x30(r1)
/* 80139F7C 00136EDC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
/* 80139F80 00136EE0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80139F84 00136EE4 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80139F88 00136EE8 7C 7F 1B 78 */ mr r31, r3
/* 80139F8C 00136EEC C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 80139F90 00136EF0 C0 43 03 24 */ lfs f2, 0x324(r3)
/* 80139F94 00136EF4 FF E0 08 90 */ fmr f31, f1
/* 80139F98 00136EF8 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80139F9C 00136EFC 41 81 00 84 */ bgt lbl_8013A020
/* 80139FA0 00136F00 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha
/* 80139FA4 00136F04 C0 02 9A 70 */ lfs f0, lbl_805AB790@sda21(r2)
/* 80139FA8 00136F08 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l
/* 80139FAC 00136F0C 3C 60 80 3E */ lis r3, lbl_803E10C8@ha
/* 80139FB0 00136F10 90 01 00 08 */ stw r0, 8(r1)
/* 80139FB4 00136F14 38 C3 10 C8 */ addi r6, r3, lbl_803E10C8@l
/* 80139FB8 00136F18 38 60 00 1A */ li r3, 0x1a
/* 80139FBC 00136F1C 38 A0 00 00 */ li r5, 0
/* 80139FC0 00136F20 38 00 00 01 */ li r0, 1
/* 80139FC4 00136F24 3B DF 00 04 */ addi r30, r31, 4
/* 80139FC8 00136F28 90 61 00 0C */ stw r3, 0xc(r1)
/* 80139FCC 00136F2C 7F C3 F3 78 */ mr r3, r30
/* 80139FD0 00136F30 38 80 00 1A */ li r4, 0x1a
/* 80139FD4 00136F34 90 C1 00 08 */ stw r6, 8(r1)
/* 80139FD8 00136F38 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80139FDC 00136F3C 90 A1 00 14 */ stw r5, 0x14(r1)
/* 80139FE0 00136F40 98 01 00 18 */ stb r0, 0x18(r1)
/* 80139FE4 00136F44 4B FF 74 55 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd
/* 80139FE8 00136F48 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80139FEC 00136F4C 3C 60 80 3E */ lis r3, lbl_803E10C8@ha
/* 80139FF0 00136F50 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l
/* 80139FF4 00136F54 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha
/* 80139FF8 00136F58 90 1E 02 88 */ stw r0, 0x288(r30)
/* 80139FFC 00136F5C 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l
/* 8013A000 00136F60 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 8013A004 00136F64 80 A1 00 14 */ lwz r5, 0x14(r1)
/* 8013A008 00136F68 D0 1E 02 8C */ stfs f0, 0x28c(r30)
/* 8013A00C 00136F6C 88 61 00 18 */ lbz r3, 0x18(r1)
/* 8013A010 00136F70 90 BE 02 90 */ stw r5, 0x290(r30)
/* 8013A014 00136F74 90 81 00 08 */ stw r4, 8(r1)
/* 8013A018 00136F78 98 7E 02 94 */ stb r3, 0x294(r30)
/* 8013A01C 00136F7C 90 01 00 08 */ stw r0, 8(r1)
lbl_8013A020:
/* 8013A020 00136F80 D3 FF 03 24 */ stfs f31, 0x324(r31)
/* 8013A024 00136F84 C0 22 9A 78 */ lfs f1, lbl_805AB798@sda21(r2)
/* 8013A028 00136F88 D0 3F 03 2C */ stfs f1, 0x32c(r31)
/* 8013A02C 00136F8C 88 1F 03 00 */ lbz r0, 0x300(r31)
/* 8013A030 00136F90 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 8013A034 00136F94 41 82 00 10 */ beq lbl_8013A044
/* 8013A038 00136F98 7F E3 FB 78 */ mr r3, r31
/* 8013A03C 00136F9C 48 00 01 19 */ bl UnFreeze__15CBodyControllerFv
/* 8013A040 00136FA0 48 00 00 18 */ b lbl_8013A058
lbl_8013A044:
/* 8013A044 00136FA4 C0 1F 03 20 */ lfs f0, 0x320(r31)
/* 8013A048 00136FA8 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 8013A04C 00136FAC 40 81 00 0C */ ble lbl_8013A058
/* 8013A050 00136FB0 7F E3 FB 78 */ mr r3, r31
/* 8013A054 00136FB4 48 00 00 25 */ bl DouseFlames__15CBodyControllerFv
lbl_8013A058:
/* 8013A058 00136FB8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
/* 8013A05C 00136FBC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8013A060 00136FC0 CB E1 00 30 */ lfd f31, 0x30(r1)
/* 8013A064 00136FC4 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8013A068 00136FC8 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8013A06C 00136FCC 7C 08 03 A6 */ mtlr r0
/* 8013A070 00136FD0 38 21 00 40 */ addi r1, r1, 0x40
/* 8013A074 00136FD4 4E 80 00 20 */ blr
.global DouseFlames__15CBodyControllerFv
DouseFlames__15CBodyControllerFv:
/* 8013A078 00136FD8 C0 23 03 20 */ lfs f1, 0x320(r3)
/* 8013A07C 00136FDC C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A080 00136FE0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8013A084 00136FE4 4C 81 00 20 */ blelr
/* 8013A088 00136FE8 D0 03 03 20 */ stfs f0, 0x320(r3)
/* 8013A08C 00136FEC D0 03 03 28 */ stfs f0, 0x328(r3)
/* 8013A090 00136FF0 4E 80 00 20 */ blr
.global SetOnFire__15CBodyControllerFf
SetOnFire__15CBodyControllerFf:
/* 8013A094 00136FF4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8013A098 00136FF8 7C 08 02 A6 */ mflr r0
/* 8013A09C 00136FFC C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A0A0 00137000 90 01 00 14 */ stw r0, 0x14(r1)
/* 8013A0A4 00137004 D0 23 03 20 */ stfs f1, 0x320(r3)
/* 8013A0A8 00137008 D0 03 03 28 */ stfs f0, 0x328(r3)
/* 8013A0AC 0013700C 88 03 03 00 */ lbz r0, 0x300(r3)
/* 8013A0B0 00137010 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 8013A0B4 00137014 41 82 00 08 */ beq lbl_8013A0BC
/* 8013A0B8 00137018 48 00 00 9D */ bl UnFreeze__15CBodyControllerFv
lbl_8013A0BC:
/* 8013A0BC 0013701C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8013A0C0 00137020 7C 08 03 A6 */ mtlr r0
/* 8013A0C4 00137024 38 21 00 10 */ addi r1, r1, 0x10
/* 8013A0C8 00137028 4E 80 00 20 */ blr
.global GetPercentageFrozen__15CBodyControllerCFv
GetPercentageFrozen__15CBodyControllerCFv:
/* 8013A0CC 0013702C C0 43 03 04 */ lfs f2, 0x304(r3)
/* 8013A0D0 00137030 C0 A3 03 08 */ lfs f5, 0x308(r3)
/* 8013A0D4 00137034 C0 83 03 0C */ lfs f4, 0x30c(r3)
/* 8013A0D8 00137038 EC 22 28 2A */ fadds f1, f2, f5
/* 8013A0DC 0013703C C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A0E0 00137040 C0 63 03 10 */ lfs f3, 0x310(r3)
/* 8013A0E4 00137044 FC 00 18 00 */ fcmpu cr0, f0, f3
/* 8013A0E8 00137048 EC C4 08 2A */ fadds f6, f4, f1
/* 8013A0EC 0013704C 41 82 00 0C */ beq lbl_8013A0F8
/* 8013A0F0 00137050 FC 00 30 00 */ fcmpu cr0, f0, f6
/* 8013A0F4 00137054 40 82 00 0C */ bne lbl_8013A100
lbl_8013A0F8:
/* 8013A0F8 00137058 C0 22 9A 78 */ lfs f1, lbl_805AB798@sda21(r2)
/* 8013A0FC 0013705C 4E 80 00 20 */ blr
lbl_8013A100:
/* 8013A100 00137060 FC 03 10 40 */ fcmpo cr0, f3, f2
/* 8013A104 00137064 C0 22 9A 70 */ lfs f1, lbl_805AB790@sda21(r2)
/* 8013A108 00137068 4C 40 13 82 */ cror 2, 0, 2
/* 8013A10C 0013706C 40 82 00 14 */ bne lbl_8013A120
/* 8013A110 00137070 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8013A114 00137074 40 81 00 0C */ ble lbl_8013A120
/* 8013A118 00137078 EC 23 10 24 */ fdivs f1, f3, f2
/* 8013A11C 0013707C 4E 80 00 20 */ blr
lbl_8013A120:
/* 8013A120 00137080 EC 06 20 28 */ fsubs f0, f6, f4
/* 8013A124 00137084 FC 03 00 40 */ fcmpo cr0, f3, f0
/* 8013A128 00137088 4C 41 13 82 */ cror 2, 1, 2
/* 8013A12C 0013708C 4C 82 00 20 */ bnelr
/* 8013A130 00137090 C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A134 00137094 FC 04 00 40 */ fcmpo cr0, f4, f0
/* 8013A138 00137098 4C 81 00 20 */ blelr
/* 8013A13C 0013709C EC 05 10 2A */ fadds f0, f5, f2
/* 8013A140 001370A0 C0 22 9A 70 */ lfs f1, lbl_805AB790@sda21(r2)
/* 8013A144 001370A4 EC 03 00 28 */ fsubs f0, f3, f0
/* 8013A148 001370A8 EC 00 20 24 */ fdivs f0, f0, f4
/* 8013A14C 001370AC EC 21 00 28 */ fsubs f1, f1, f0
/* 8013A150 001370B0 4E 80 00 20 */ blr
.global UnFreeze__15CBodyControllerFv
UnFreeze__15CBodyControllerFv:
/* 8013A154 001370B4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8013A158 001370B8 7C 08 02 A6 */ mflr r0
/* 8013A15C 001370BC C0 22 9A 70 */ lfs f1, lbl_805AB790@sda21(r2)
/* 8013A160 001370C0 90 01 00 34 */ stw r0, 0x34(r1)
/* 8013A164 001370C4 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8013A168 001370C8 7C 7F 1B 78 */ mr r31, r3
/* 8013A16C 001370CC 48 00 07 21 */ bl SetPlaybackRate__15CBodyControllerFf
/* 8013A170 001370D0 88 1F 03 00 */ lbz r0, 0x300(r31)
/* 8013A174 001370D4 38 60 00 00 */ li r3, 0
/* 8013A178 001370D8 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 8013A17C 001370DC C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A180 001370E0 98 1F 03 00 */ stb r0, 0x300(r31)
/* 8013A184 001370E4 38 80 00 7F */ li r4, 0x7f
/* 8013A188 001370E8 D0 1F 03 04 */ stfs f0, 0x304(r31)
/* 8013A18C 001370EC D0 1F 03 08 */ stfs f0, 0x308(r31)
/* 8013A190 001370F0 D0 1F 03 0C */ stfs f0, 0x30c(r31)
/* 8013A194 001370F4 D0 1F 03 10 */ stfs f0, 0x310(r31)
/* 8013A198 001370F8 80 7F 00 00 */ lwz r3, 0(r31)
/* 8013A19C 001370FC 4B F1 91 D5 */ bl SetVolume__6CActorFUc
/* 8013A1A0 00137100 80 9F 00 00 */ lwz r4, 0(r31)
/* 8013A1A4 00137104 38 61 00 08 */ addi r3, r1, 8
/* 8013A1A8 00137108 4B F7 25 A9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FR7CEntity"
/* 8013A1AC 0013710C 80 63 00 04 */ lwz r3, 4(r3)
/* 8013A1B0 00137110 38 81 00 10 */ addi r4, r1, 0x10
/* 8013A1B4 00137114 C0 1F 03 14 */ lfs f0, 0x314(r31)
/* 8013A1B8 00137118 C0 22 9A 70 */ lfs f1, lbl_805AB790@sda21(r2)
/* 8013A1BC 0013711C D0 03 00 FC */ stfs f0, 0xfc(r3)
/* 8013A1C0 00137120 C0 1F 03 18 */ lfs f0, 0x318(r31)
/* 8013A1C4 00137124 D0 03 01 00 */ stfs f0, 0x100(r3)
/* 8013A1C8 00137128 C0 1F 03 1C */ lfs f0, 0x31c(r31)
/* 8013A1CC 0013712C D0 03 01 04 */ stfs f0, 0x104(r3)
/* 8013A1D0 00137130 C0 03 00 E8 */ lfs f0, 0xe8(r3)
/* 8013A1D4 00137134 C0 5F 03 18 */ lfs f2, 0x318(r31)
/* 8013A1D8 00137138 EC 61 00 24 */ fdivs f3, f1, f0
/* 8013A1DC 0013713C C0 3F 03 1C */ lfs f1, 0x31c(r31)
/* 8013A1E0 00137140 C0 1F 03 14 */ lfs f0, 0x314(r31)
/* 8013A1E4 00137144 EC 43 00 B2 */ fmuls f2, f3, f2
/* 8013A1E8 00137148 EC 23 00 72 */ fmuls f1, f3, f1
/* 8013A1EC 0013714C EC 03 00 32 */ fmuls f0, f3, f0
/* 8013A1F0 00137150 D0 41 00 14 */ stfs f2, 0x14(r1)
/* 8013A1F4 00137154 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 8013A1F8 00137158 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 8013A1FC 0013715C 4B FE 0A A5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f
/* 8013A200 00137160 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8013A204 00137164 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8013A208 00137168 7C 08 03 A6 */ mtlr r0
/* 8013A20C 0013716C 38 21 00 30 */ addi r1, r1, 0x30
/* 8013A210 00137170 4E 80 00 20 */ blr
.global FrozenBreakout__15CBodyControllerFv
FrozenBreakout__15CBodyControllerFv:
/* 8013A214 00137174 88 03 03 00 */ lbz r0, 0x300(r3)
/* 8013A218 00137178 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 8013A21C 0013717C 4D 82 00 20 */ beqlr
/* 8013A220 00137180 C0 43 03 04 */ lfs f2, 0x304(r3)
/* 8013A224 00137184 C0 23 03 08 */ lfs f1, 0x308(r3)
/* 8013A228 00137188 C0 03 03 10 */ lfs f0, 0x310(r3)
/* 8013A22C 0013718C EC 22 08 2A */ fadds f1, f2, f1
/* 8013A230 00137190 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 8013A234 00137194 4C 80 00 20 */ bgelr
/* 8013A238 00137198 D0 23 03 10 */ stfs f1, 0x310(r3)
/* 8013A23C 0013719C 4E 80 00 20 */ blr
.global Freeze__15CBodyControllerFfff
Freeze__15CBodyControllerFfff:
/* 8013A240 001371A0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8013A244 001371A4 7C 08 02 A6 */ mflr r0
/* 8013A248 001371A8 38 80 00 01 */ li r4, 1
/* 8013A24C 001371AC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8013A250 001371B0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8013A254 001371B4 7C 7F 1B 78 */ mr r31, r3
/* 8013A258 001371B8 D0 23 03 04 */ stfs f1, 0x304(r3)
/* 8013A25C 001371BC 38 61 00 08 */ addi r3, r1, 8
/* 8013A260 001371C0 D0 5F 03 08 */ stfs f2, 0x308(r31)
/* 8013A264 001371C4 D0 7F 03 0C */ stfs f3, 0x30c(r31)
/* 8013A268 001371C8 88 1F 03 00 */ lbz r0, 0x300(r31)
/* 8013A26C 001371CC 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a
/* 8013A270 001371D0 98 1F 03 00 */ stb r0, 0x300(r31)
/* 8013A274 001371D4 88 1F 03 00 */ lbz r0, 0x300(r31)
/* 8013A278 001371D8 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b
/* 8013A27C 001371DC 98 1F 03 00 */ stb r0, 0x300(r31)
/* 8013A280 001371E0 80 9F 00 00 */ lwz r4, 0(r31)
/* 8013A284 001371E4 4B F7 24 CD */ bl "__ct__27TCastToPtr<13CPhysicsActor>FR7CEntity"
/* 8013A288 001371E8 80 83 00 04 */ lwz r4, 4(r3)
/* 8013A28C 001371EC 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8013A290 001371F0 C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A294 001371F4 C0 24 00 FC */ lfs f1, 0xfc(r4)
/* 8013A298 001371F8 D0 3F 03 14 */ stfs f1, 0x314(r31)
/* 8013A29C 001371FC C0 24 01 00 */ lfs f1, 0x100(r4)
/* 8013A2A0 00137200 D0 3F 03 18 */ stfs f1, 0x318(r31)
/* 8013A2A4 00137204 C0 24 01 04 */ lfs f1, 0x104(r4)
/* 8013A2A8 00137208 D0 3F 03 1C */ stfs f1, 0x31c(r31)
/* 8013A2AC 0013720C C4 23 66 A0 */ lfsu f1, sZeroVector__9CVector3f@l(r3)
/* 8013A2B0 00137210 D0 24 00 FC */ stfs f1, 0xfc(r4)
/* 8013A2B4 00137214 C0 23 00 04 */ lfs f1, 4(r3)
/* 8013A2B8 00137218 D0 24 01 00 */ stfs f1, 0x100(r4)
/* 8013A2BC 0013721C C0 23 00 08 */ lfs f1, 8(r3)
/* 8013A2C0 00137220 D0 24 01 04 */ stfs f1, 0x104(r4)
/* 8013A2C4 00137224 C0 23 00 00 */ lfs f1, 0(r3)
/* 8013A2C8 00137228 D0 24 01 50 */ stfs f1, 0x150(r4)
/* 8013A2CC 0013722C C0 23 00 04 */ lfs f1, 4(r3)
/* 8013A2D0 00137230 D0 24 01 54 */ stfs f1, 0x154(r4)
/* 8013A2D4 00137234 C0 23 00 08 */ lfs f1, 8(r3)
/* 8013A2D8 00137238 D0 24 01 58 */ stfs f1, 0x158(r4)
/* 8013A2DC 0013723C D0 1F 03 20 */ stfs f0, 0x320(r31)
/* 8013A2E0 00137240 D0 1F 03 28 */ stfs f0, 0x328(r31)
/* 8013A2E4 00137244 D0 1F 03 10 */ stfs f0, 0x310(r31)
/* 8013A2E8 00137248 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8013A2EC 0013724C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8013A2F0 00137250 7C 08 03 A6 */ mtlr r0
/* 8013A2F4 00137254 38 21 00 20 */ addi r1, r1, 0x20
/* 8013A2F8 00137258 4E 80 00 20 */ blr
.global LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
LoopBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16:
/* 8013A2FC 0013725C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8013A300 00137260 7C 08 02 A6 */ mflr r0
/* 8013A304 00137264 90 01 00 54 */ stw r0, 0x54(r1)
/* 8013A308 00137268 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8013A30C 0013726C 7C BF 2B 78 */ mr r31, r5
/* 8013A310 00137270 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8013A314 00137274 7C 9E 23 78 */ mr r30, r4
/* 8013A318 00137278 93 A1 00 44 */ stw r29, 0x44(r1)
/* 8013A31C 0013727C 7C 7D 1B 78 */ mr r29, r3
/* 8013A320 00137280 48 00 01 35 */ bl GetPASDatabase__15CBodyControllerCFv
/* 8013A324 00137284 7C 64 1B 78 */ mr r4, r3
/* 8013A328 00137288 7F C5 F3 78 */ mr r5, r30
/* 8013A32C 0013728C 7F E6 FB 78 */ mr r6, r31
/* 8013A330 00137290 38 61 00 08 */ addi r3, r1, 8
/* 8013A334 00137294 38 E0 FF FF */ li r7, -1
/* 8013A338 00137298 48 1A AD 29 */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i
/* 8013A33C 0013729C 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8013A340 001372A0 38 00 00 00 */ li r0, 0
/* 8013A344 001372A4 C0 02 9A 70 */ lfs f0, lbl_805AB790@sda21(r2)
/* 8013A348 001372A8 38 A0 FF FF */ li r5, -1
/* 8013A34C 001372AC 38 E0 00 01 */ li r7, 1
/* 8013A350 001372B0 90 61 00 10 */ stw r3, 0x10(r1)
/* 8013A354 001372B4 7F A3 EB 78 */ mr r3, r29
/* 8013A358 001372B8 38 81 00 10 */ addi r4, r1, 0x10
/* 8013A35C 001372BC 90 A1 00 14 */ stw r5, 0x14(r1)
/* 8013A360 001372C0 38 A0 00 01 */ li r5, 1
/* 8013A364 001372C4 38 C0 00 00 */ li r6, 0
/* 8013A368 001372C8 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 8013A36C 001372CC 98 E1 00 1C */ stb r7, 0x1c(r1)
/* 8013A370 001372D0 90 01 00 20 */ stw r0, 0x20(r1)
/* 8013A374 001372D4 90 01 00 24 */ stw r0, 0x24(r1)
/* 8013A378 001372D8 98 01 00 28 */ stb r0, 0x28(r1)
/* 8013A37C 001372DC 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8013A380 001372E0 90 01 00 30 */ stw r0, 0x30(r1)
/* 8013A384 001372E4 90 01 00 34 */ stw r0, 0x34(r1)
/* 8013A388 001372E8 48 00 05 95 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb
/* 8013A38C 001372EC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8013A390 001372F0 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8013A394 001372F4 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8013A398 001372F8 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 8013A39C 001372FC 7C 08 03 A6 */ mtlr r0
/* 8013A3A0 00137300 38 21 00 50 */ addi r1, r1, 0x50
/* 8013A3A4 00137304 4E 80 00 20 */ blr
.global PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16
PlayBestAnimation__15CBodyControllerFRC16CPASAnimParmDataR9CRandom16:
/* 8013A3A8 00137308 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8013A3AC 0013730C 7C 08 02 A6 */ mflr r0
/* 8013A3B0 00137310 90 01 00 54 */ stw r0, 0x54(r1)
/* 8013A3B4 00137314 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8013A3B8 00137318 7C BF 2B 78 */ mr r31, r5
/* 8013A3BC 0013731C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8013A3C0 00137320 7C 9E 23 78 */ mr r30, r4
/* 8013A3C4 00137324 93 A1 00 44 */ stw r29, 0x44(r1)
/* 8013A3C8 00137328 7C 7D 1B 78 */ mr r29, r3
/* 8013A3CC 0013732C 48 00 00 89 */ bl GetPASDatabase__15CBodyControllerCFv
/* 8013A3D0 00137330 7C 64 1B 78 */ mr r4, r3
/* 8013A3D4 00137334 7F C5 F3 78 */ mr r5, r30
/* 8013A3D8 00137338 7F E6 FB 78 */ mr r6, r31
/* 8013A3DC 0013733C 38 61 00 08 */ addi r3, r1, 8
/* 8013A3E0 00137340 38 E0 FF FF */ li r7, -1
/* 8013A3E4 00137344 48 1A AC 7D */ bl FindBestAnimation__12CPASDatabaseCFRC16CPASAnimParmDataR9CRandom16i
/* 8013A3E8 00137348 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8013A3EC 0013734C 38 00 00 00 */ li r0, 0
/* 8013A3F0 00137350 C0 02 9A 70 */ lfs f0, lbl_805AB790@sda21(r2)
/* 8013A3F4 00137354 38 A0 FF FF */ li r5, -1
/* 8013A3F8 00137358 38 E0 00 01 */ li r7, 1
/* 8013A3FC 0013735C 90 61 00 10 */ stw r3, 0x10(r1)
/* 8013A400 00137360 7F A3 EB 78 */ mr r3, r29
/* 8013A404 00137364 38 81 00 10 */ addi r4, r1, 0x10
/* 8013A408 00137368 90 A1 00 14 */ stw r5, 0x14(r1)
/* 8013A40C 0013736C 38 A0 00 00 */ li r5, 0
/* 8013A410 00137370 38 C0 00 00 */ li r6, 0
/* 8013A414 00137374 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 8013A418 00137378 98 E1 00 1C */ stb r7, 0x1c(r1)
/* 8013A41C 0013737C 90 01 00 20 */ stw r0, 0x20(r1)
/* 8013A420 00137380 90 01 00 24 */ stw r0, 0x24(r1)
/* 8013A424 00137384 98 01 00 28 */ stb r0, 0x28(r1)
/* 8013A428 00137388 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8013A42C 0013738C 90 01 00 30 */ stw r0, 0x30(r1)
/* 8013A430 00137390 90 01 00 34 */ stw r0, 0x34(r1)
/* 8013A434 00137394 48 00 04 E9 */ bl SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb
/* 8013A438 00137398 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8013A43C 0013739C 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8013A440 001373A0 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8013A444 001373A4 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 8013A448 001373A8 7C 08 03 A6 */ mtlr r0
/* 8013A44C 001373AC 38 21 00 50 */ addi r1, r1, 0x50
/* 8013A450 001373B0 4E 80 00 20 */ blr
.global GetPASDatabase__15CBodyControllerCFv
GetPASDatabase__15CBodyControllerCFv:
/* 8013A454 001373B4 80 63 00 00 */ lwz r3, 0(r3)
/* 8013A458 001373B8 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A45C 001373BC 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013A460 001373C0 38 63 00 3C */ addi r3, r3, 0x3c
/* 8013A464 001373C4 4E 80 00 20 */ blr
.global FaceDirection3D__15CBodyControllerFRC9CVector3ff
FaceDirection3D__15CBodyControllerFRC9CVector3ff:
/* 8013A468 001373C8 94 21 FF 20 */ stwu r1, -0xe0(r1)
/* 8013A46C 001373CC 7C 08 02 A6 */ mflr r0
/* 8013A470 001373D0 90 01 00 E4 */ stw r0, 0xe4(r1)
/* 8013A474 001373D4 DB E1 00 D0 */ stfd f31, 0xd0(r1)
/* 8013A478 001373D8 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0
/* 8013A47C 001373DC 93 E1 00 CC */ stw r31, 0xcc(r1)
/* 8013A480 001373E0 93 C1 00 C8 */ stw r30, 0xc8(r1)
/* 8013A484 001373E4 93 A1 00 C4 */ stw r29, 0xc4(r1)
/* 8013A488 001373E8 93 81 00 C0 */ stw r28, 0xc0(r1)
/* 8013A48C 001373EC 88 03 03 00 */ lbz r0, 0x300(r3)
/* 8013A490 001373F0 FF E0 08 90 */ fmr f31, f1
/* 8013A494 001373F4 7C 7C 1B 78 */ mr r28, r3
/* 8013A498 001373F8 7C 9D 23 78 */ mr r29, r4
/* 8013A49C 001373FC 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 8013A4A0 00137400 7C BE 2B 78 */ mr r30, r5
/* 8013A4A4 00137404 40 82 01 D8 */ bne lbl_8013A67C
/* 8013A4A8 00137408 7F A3 EB 78 */ mr r3, r29
/* 8013A4AC 0013740C 48 1D A2 4D */ bl CanBeNormalized__9CVector3fCFv
/* 8013A4B0 00137410 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8013A4B4 00137414 41 82 01 C8 */ beq lbl_8013A67C
/* 8013A4B8 00137418 7F C3 F3 78 */ mr r3, r30
/* 8013A4BC 0013741C 48 1D A2 3D */ bl CanBeNormalized__9CVector3fCFv
/* 8013A4C0 00137420 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8013A4C4 00137424 41 82 01 B8 */ beq lbl_8013A67C
/* 8013A4C8 00137428 80 9C 00 00 */ lwz r4, 0(r28)
/* 8013A4CC 0013742C 38 61 00 10 */ addi r3, r1, 0x10
/* 8013A4D0 00137430 4B F7 22 15 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
/* 8013A4D4 00137434 83 E3 00 04 */ lwz r31, 4(r3)
/* 8013A4D8 00137438 28 1F 00 00 */ cmplwi r31, 0
/* 8013A4DC 0013743C 41 82 01 A0 */ beq lbl_8013A67C
/* 8013A4E0 00137440 7F A4 EB 78 */ mr r4, r29
/* 8013A4E4 00137444 38 61 00 B4 */ addi r3, r1, 0xb4
/* 8013A4E8 00137448 48 1D 98 E9 */ bl __ct__13CUnitVector3fFRC9CVector3f
/* 8013A4EC 0013744C 7F C4 F3 78 */ mr r4, r30
/* 8013A4F0 00137450 38 61 00 A8 */ addi r3, r1, 0xa8
/* 8013A4F4 00137454 48 1D 98 DD */ bl __ct__13CUnitVector3fFRC9CVector3f
/* 8013A4F8 00137458 C0 21 00 B8 */ lfs f1, 0xb8(r1)
/* 8013A4FC 0013745C C0 01 00 AC */ lfs f0, 0xac(r1)
/* 8013A500 00137460 C0 41 00 B4 */ lfs f2, 0xb4(r1)
/* 8013A504 00137464 EC 01 00 32 */ fmuls f0, f1, f0
/* 8013A508 00137468 C0 21 00 A8 */ lfs f1, 0xa8(r1)
/* 8013A50C 0013746C C0 81 00 BC */ lfs f4, 0xbc(r1)
/* 8013A510 00137470 C0 61 00 B0 */ lfs f3, 0xb0(r1)
/* 8013A514 00137474 EC 42 00 7A */ fmadds f2, f2, f1, f0
/* 8013A518 00137478 C0 22 9A 70 */ lfs f1, lbl_805AB790@sda21(r2)
/* 8013A51C 0013747C C0 02 9A 7C */ lfs f0, lbl_805AB79C@sda21(r2)
/* 8013A520 00137480 EC 44 10 FA */ fmadds f2, f4, f3, f2
/* 8013A524 00137484 EC 22 08 28 */ fsubs f1, f2, f1
/* 8013A528 00137488 FC 20 0A 10 */ fabs f1, f1
/* 8013A52C 0013748C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8013A530 00137490 41 80 01 4C */ blt lbl_8013A67C
/* 8013A534 00137494 C0 02 9A 80 */ lfs f0, lbl_805AB7A0@sda21(r2)
/* 8013A538 00137498 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8013A53C 0013749C 40 80 00 B4 */ bge lbl_8013A5F0
/* 8013A540 001374A0 C0 1C 02 FC */ lfs f0, 0x2fc(r28)
/* 8013A544 001374A4 38 61 00 58 */ addi r3, r1, 0x58
/* 8013A548 001374A8 C0 22 9A 84 */ lfs f1, lbl_805AB7A4@sda21(r2)
/* 8013A54C 001374AC 38 81 00 4C */ addi r4, r1, 0x4c
/* 8013A550 001374B0 EC 1F 00 32 */ fmuls f0, f31, f0
/* 8013A554 001374B4 38 A1 00 0C */ addi r5, r1, 0xc
/* 8013A558 001374B8 EC 01 00 32 */ fmuls f0, f1, f0
/* 8013A55C 001374BC D0 01 00 0C */ stfs f0, 0xc(r1)
/* 8013A560 001374C0 C0 5F 00 5C */ lfs f2, 0x5c(r31)
/* 8013A564 001374C4 C0 3F 00 4C */ lfs f1, 0x4c(r31)
/* 8013A568 001374C8 C0 1F 00 3C */ lfs f0, 0x3c(r31)
/* 8013A56C 001374CC D0 21 00 44 */ stfs f1, 0x44(r1)
/* 8013A570 001374D0 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 8013A574 001374D4 D0 41 00 48 */ stfs f2, 0x48(r1)
/* 8013A578 001374D8 D0 01 00 4C */ stfs f0, 0x4c(r1)
/* 8013A57C 001374DC D0 21 00 50 */ stfs f1, 0x50(r1)
/* 8013A580 001374E0 D0 41 00 54 */ stfs f2, 0x54(r1)
/* 8013A584 001374E4 48 1D 6D 71 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle
/* 8013A588 001374E8 C0 61 00 58 */ lfs f3, 0x58(r1)
/* 8013A58C 001374EC 38 A1 00 9C */ addi r5, r1, 0x9c
/* 8013A590 001374F0 C0 41 00 5C */ lfs f2, 0x5c(r1)
/* 8013A594 001374F4 38 61 00 34 */ addi r3, r1, 0x34
/* 8013A598 001374F8 C0 21 00 60 */ lfs f1, 0x60(r1)
/* 8013A59C 001374FC C0 01 00 64 */ lfs f0, 0x64(r1)
/* 8013A5A0 00137500 D0 61 00 98 */ stfs f3, 0x98(r1)
/* 8013A5A4 00137504 D0 41 00 9C */ stfs f2, 0x9c(r1)
/* 8013A5A8 00137508 D0 21 00 A0 */ stfs f1, 0xa0(r1)
/* 8013A5AC 0013750C D0 01 00 A4 */ stfs f0, 0xa4(r1)
/* 8013A5B0 00137510 80 9C 00 00 */ lwz r4, 0(r28)
/* 8013A5B4 00137514 38 84 00 34 */ addi r4, r4, 0x34
/* 8013A5B8 00137518 48 1D 84 6D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f
/* 8013A5BC 0013751C C0 81 00 98 */ lfs f4, 0x98(r1)
/* 8013A5C0 00137520 FC 20 F8 90 */ fmr f1, f31
/* 8013A5C4 00137524 C0 61 00 34 */ lfs f3, 0x34(r1)
/* 8013A5C8 00137528 7F E3 FB 78 */ mr r3, r31
/* 8013A5CC 0013752C C0 41 00 38 */ lfs f2, 0x38(r1)
/* 8013A5D0 00137530 38 81 00 88 */ addi r4, r1, 0x88
/* 8013A5D4 00137534 C0 01 00 3C */ lfs f0, 0x3c(r1)
/* 8013A5D8 00137538 D0 81 00 88 */ stfs f4, 0x88(r1)
/* 8013A5DC 0013753C D0 61 00 8C */ stfs f3, 0x8c(r1)
/* 8013A5E0 00137540 D0 41 00 90 */ stfs f2, 0x90(r1)
/* 8013A5E4 00137544 D0 01 00 94 */ stfs f0, 0x94(r1)
/* 8013A5E8 00137548 4B FE 07 75 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf
/* 8013A5EC 0013754C 48 00 00 90 */ b lbl_8013A67C
lbl_8013A5F0:
/* 8013A5F0 00137550 C0 1C 02 FC */ lfs f0, 0x2fc(r28)
/* 8013A5F4 00137554 38 61 00 24 */ addi r3, r1, 0x24
/* 8013A5F8 00137558 C0 22 9A 84 */ lfs f1, lbl_805AB7A4@sda21(r2)
/* 8013A5FC 0013755C 38 81 00 A8 */ addi r4, r1, 0xa8
/* 8013A600 00137560 EC 1F 00 32 */ fmuls f0, f31, f0
/* 8013A604 00137564 38 A1 00 B4 */ addi r5, r1, 0xb4
/* 8013A608 00137568 38 C1 00 08 */ addi r6, r1, 8
/* 8013A60C 0013756C EC 01 00 32 */ fmuls f0, f1, f0
/* 8013A610 00137570 D0 01 00 08 */ stfs f0, 8(r1)
/* 8013A614 00137574 48 1D 6A 0D */ bl ClampedRotateTo__11CQuaternionFRC10UnitVectorRC10UnitVectorRC9CRelAngle
/* 8013A618 00137578 C0 61 00 24 */ lfs f3, 0x24(r1)
/* 8013A61C 0013757C 38 A1 00 7C */ addi r5, r1, 0x7c
/* 8013A620 00137580 C0 41 00 28 */ lfs f2, 0x28(r1)
/* 8013A624 00137584 38 61 00 18 */ addi r3, r1, 0x18
/* 8013A628 00137588 C0 21 00 2C */ lfs f1, 0x2c(r1)
/* 8013A62C 0013758C C0 01 00 30 */ lfs f0, 0x30(r1)
/* 8013A630 00137590 D0 61 00 78 */ stfs f3, 0x78(r1)
/* 8013A634 00137594 D0 41 00 7C */ stfs f2, 0x7c(r1)
/* 8013A638 00137598 D0 21 00 80 */ stfs f1, 0x80(r1)
/* 8013A63C 0013759C D0 01 00 84 */ stfs f0, 0x84(r1)
/* 8013A640 001375A0 80 9C 00 00 */ lwz r4, 0(r28)
/* 8013A644 001375A4 38 84 00 34 */ addi r4, r4, 0x34
/* 8013A648 001375A8 48 1D 83 DD */ bl TransposeRotate__12CTransform4fCFRC9CVector3f
/* 8013A64C 001375AC C0 81 00 78 */ lfs f4, 0x78(r1)
/* 8013A650 001375B0 FC 20 F8 90 */ fmr f1, f31
/* 8013A654 001375B4 C0 61 00 18 */ lfs f3, 0x18(r1)
/* 8013A658 001375B8 7F E3 FB 78 */ mr r3, r31
/* 8013A65C 001375BC C0 41 00 1C */ lfs f2, 0x1c(r1)
/* 8013A660 001375C0 38 81 00 68 */ addi r4, r1, 0x68
/* 8013A664 001375C4 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 8013A668 001375C8 D0 81 00 68 */ stfs f4, 0x68(r1)
/* 8013A66C 001375CC D0 61 00 6C */ stfs f3, 0x6c(r1)
/* 8013A670 001375D0 D0 41 00 70 */ stfs f2, 0x70(r1)
/* 8013A674 001375D4 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 8013A678 001375D8 4B FE 06 E5 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf
lbl_8013A67C:
/* 8013A67C 001375DC E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0
/* 8013A680 001375E0 80 01 00 E4 */ lwz r0, 0xe4(r1)
/* 8013A684 001375E4 CB E1 00 D0 */ lfd f31, 0xd0(r1)
/* 8013A688 001375E8 83 E1 00 CC */ lwz r31, 0xcc(r1)
/* 8013A68C 001375EC 83 C1 00 C8 */ lwz r30, 0xc8(r1)
/* 8013A690 001375F0 83 A1 00 C4 */ lwz r29, 0xc4(r1)
/* 8013A694 001375F4 83 81 00 C0 */ lwz r28, 0xc0(r1)
/* 8013A698 001375F8 7C 08 03 A6 */ mtlr r0
/* 8013A69C 001375FC 38 21 00 E0 */ addi r1, r1, 0xe0
/* 8013A6A0 00137600 4E 80 00 20 */ blr
.global FaceDirection__15CBodyControllerFRC9CVector3ff
FaceDirection__15CBodyControllerFRC9CVector3ff:
/* 8013A6A4 00137604 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 8013A6A8 00137608 7C 08 02 A6 */ mflr r0
/* 8013A6AC 0013760C 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 8013A6B0 00137610 DB E1 00 90 */ stfd f31, 0x90(r1)
/* 8013A6B4 00137614 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0
/* 8013A6B8 00137618 93 E1 00 8C */ stw r31, 0x8c(r1)
/* 8013A6BC 0013761C 93 C1 00 88 */ stw r30, 0x88(r1)
/* 8013A6C0 00137620 88 03 03 00 */ lbz r0, 0x300(r3)
/* 8013A6C4 00137624 FF E0 08 90 */ fmr f31, f1
/* 8013A6C8 00137628 7C 7E 1B 78 */ mr r30, r3
/* 8013A6CC 0013762C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 8013A6D0 00137630 40 82 01 18 */ bne lbl_8013A7E8
/* 8013A6D4 00137634 C0 04 00 08 */ lfs f0, 8(r4)
/* 8013A6D8 00137638 38 61 00 74 */ addi r3, r1, 0x74
/* 8013A6DC 0013763C C0 44 00 00 */ lfs f2, 0(r4)
/* 8013A6E0 00137640 C0 24 00 04 */ lfs f1, 4(r4)
/* 8013A6E4 00137644 D0 01 00 7C */ stfs f0, 0x7c(r1)
/* 8013A6E8 00137648 C0 02 9A 78 */ lfs f0, lbl_805AB798@sda21(r2)
/* 8013A6EC 0013764C D0 41 00 74 */ stfs f2, 0x74(r1)
/* 8013A6F0 00137650 D0 21 00 78 */ stfs f1, 0x78(r1)
/* 8013A6F4 00137654 D0 01 00 7C */ stfs f0, 0x7c(r1)
/* 8013A6F8 00137658 48 1D A0 01 */ bl CanBeNormalized__9CVector3fCFv
/* 8013A6FC 0013765C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8013A700 00137660 41 82 00 E8 */ beq lbl_8013A7E8
/* 8013A704 00137664 80 9E 00 00 */ lwz r4, 0(r30)
/* 8013A708 00137668 38 61 00 0C */ addi r3, r1, 0xc
/* 8013A70C 0013766C 4B F7 1F D9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
/* 8013A710 00137670 83 E3 00 04 */ lwz r31, 4(r3)
/* 8013A714 00137674 28 1F 00 00 */ cmplwi r31, 0
/* 8013A718 00137678 41 82 00 D0 */ beq lbl_8013A7E8
/* 8013A71C 0013767C 38 61 00 48 */ addi r3, r1, 0x48
/* 8013A720 00137680 38 81 00 74 */ addi r4, r1, 0x74
/* 8013A724 00137684 48 1D A1 2D */ bl AsNormalized__9CVector3fCFv
/* 8013A728 00137688 C0 1E 02 FC */ lfs f0, 0x2fc(r30)
/* 8013A72C 0013768C 38 61 00 38 */ addi r3, r1, 0x38
/* 8013A730 00137690 80 FE 00 00 */ lwz r7, 0(r30)
/* 8013A734 00137694 38 81 00 2C */ addi r4, r1, 0x2c
/* 8013A738 00137698 EC 1F 00 32 */ fmuls f0, f31, f0
/* 8013A73C 0013769C C0 22 9A 84 */ lfs f1, lbl_805AB7A4@sda21(r2)
/* 8013A740 001376A0 C0 C7 00 58 */ lfs f6, 0x58(r7)
/* 8013A744 001376A4 38 A1 00 20 */ addi r5, r1, 0x20
/* 8013A748 001376A8 C0 A7 00 48 */ lfs f5, 0x48(r7)
/* 8013A74C 001376AC 38 C1 00 08 */ addi r6, r1, 8
/* 8013A750 001376B0 C0 87 00 38 */ lfs f4, 0x38(r7)
/* 8013A754 001376B4 EC 61 00 32 */ fmuls f3, f1, f0
/* 8013A758 001376B8 C0 41 00 48 */ lfs f2, 0x48(r1)
/* 8013A75C 001376BC C0 21 00 4C */ lfs f1, 0x4c(r1)
/* 8013A760 001376C0 C0 01 00 50 */ lfs f0, 0x50(r1)
/* 8013A764 001376C4 D0 61 00 08 */ stfs f3, 8(r1)
/* 8013A768 001376C8 D0 41 00 20 */ stfs f2, 0x20(r1)
/* 8013A76C 001376CC D0 21 00 24 */ stfs f1, 0x24(r1)
/* 8013A770 001376D0 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 8013A774 001376D4 D0 81 00 2C */ stfs f4, 0x2c(r1)
/* 8013A778 001376D8 D0 A1 00 30 */ stfs f5, 0x30(r1)
/* 8013A77C 001376DC D0 C1 00 34 */ stfs f6, 0x34(r1)
/* 8013A780 001376E0 48 1D 6F 15 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle
/* 8013A784 001376E4 C0 61 00 38 */ lfs f3, 0x38(r1)
/* 8013A788 001376E8 38 A1 00 68 */ addi r5, r1, 0x68
/* 8013A78C 001376EC C0 41 00 3C */ lfs f2, 0x3c(r1)
/* 8013A790 001376F0 38 61 00 14 */ addi r3, r1, 0x14
/* 8013A794 001376F4 C0 21 00 40 */ lfs f1, 0x40(r1)
/* 8013A798 001376F8 C0 01 00 44 */ lfs f0, 0x44(r1)
/* 8013A79C 001376FC D0 61 00 64 */ stfs f3, 0x64(r1)
/* 8013A7A0 00137700 D0 41 00 68 */ stfs f2, 0x68(r1)
/* 8013A7A4 00137704 D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 8013A7A8 00137708 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 8013A7AC 0013770C 80 9E 00 00 */ lwz r4, 0(r30)
/* 8013A7B0 00137710 38 84 00 34 */ addi r4, r4, 0x34
/* 8013A7B4 00137714 48 1D 82 71 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f
/* 8013A7B8 00137718 C0 81 00 64 */ lfs f4, 0x64(r1)
/* 8013A7BC 0013771C FC 20 F8 90 */ fmr f1, f31
/* 8013A7C0 00137720 C0 61 00 14 */ lfs f3, 0x14(r1)
/* 8013A7C4 00137724 7F E3 FB 78 */ mr r3, r31
/* 8013A7C8 00137728 C0 41 00 18 */ lfs f2, 0x18(r1)
/* 8013A7CC 0013772C 38 81 00 54 */ addi r4, r1, 0x54
/* 8013A7D0 00137730 C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 8013A7D4 00137734 D0 81 00 54 */ stfs f4, 0x54(r1)
/* 8013A7D8 00137738 D0 61 00 58 */ stfs f3, 0x58(r1)
/* 8013A7DC 0013773C D0 41 00 5C */ stfs f2, 0x5c(r1)
/* 8013A7E0 00137740 D0 01 00 60 */ stfs f0, 0x60(r1)
/* 8013A7E4 00137744 4B FE 05 79 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf
lbl_8013A7E8:
/* 8013A7E8 00137748 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0
/* 8013A7EC 0013774C 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 8013A7F0 00137750 CB E1 00 90 */ lfd f31, 0x90(r1)
/* 8013A7F4 00137754 83 E1 00 8C */ lwz r31, 0x8c(r1)
/* 8013A7F8 00137758 83 C1 00 88 */ lwz r30, 0x88(r1)
/* 8013A7FC 0013775C 7C 08 03 A6 */ mtlr r0
/* 8013A800 00137760 38 21 00 A0 */ addi r1, r1, 0xa0
/* 8013A804 00137764 4E 80 00 20 */ blr
.global SetDeltaRotation__15CBodyControllerFRC11CQuaternion
SetDeltaRotation__15CBodyControllerFRC11CQuaternion:
/* 8013A808 00137768 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8013A80C 0013776C 7C 08 02 A6 */ mflr r0
/* 8013A810 00137770 7C 85 23 78 */ mr r5, r4
/* 8013A814 00137774 90 01 00 24 */ stw r0, 0x24(r1)
/* 8013A818 00137778 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8013A81C 0013777C 7C 7F 1B 78 */ mr r31, r3
/* 8013A820 00137780 38 61 00 08 */ addi r3, r1, 8
/* 8013A824 00137784 38 9F 02 DC */ addi r4, r31, 0x2dc
/* 8013A828 00137788 48 1D 69 79 */ bl __ml__11CQuaternionCFRC11CQuaternion
/* 8013A82C 0013778C C0 01 00 08 */ lfs f0, 8(r1)
/* 8013A830 00137790 D0 1F 02 DC */ stfs f0, 0x2dc(r31)
/* 8013A834 00137794 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8013A838 00137798 80 01 00 10 */ lwz r0, 0x10(r1)
/* 8013A83C 0013779C 90 7F 02 E0 */ stw r3, 0x2e0(r31)
/* 8013A840 001377A0 90 1F 02 E4 */ stw r0, 0x2e4(r31)
/* 8013A844 001377A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8013A848 001377A8 90 1F 02 E8 */ stw r0, 0x2e8(r31)
/* 8013A84C 001377AC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8013A850 001377B0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8013A854 001377B4 7C 08 03 A6 */ mtlr r0
/* 8013A858 001377B8 38 21 00 20 */ addi r1, r1, 0x20
/* 8013A85C 001377BC 4E 80 00 20 */ blr
.global MultiplyPlaybackRate__15CBodyControllerFf
MultiplyPlaybackRate__15CBodyControllerFf:
/* 8013A860 001377C0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8013A864 001377C4 7C 08 02 A6 */ mflr r0
/* 8013A868 001377C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8013A86C 001377CC 80 63 00 00 */ lwz r3, 0(r3)
/* 8013A870 001377D0 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A874 001377D4 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013A878 001377D8 4B EF 0B E1 */ bl MultiplyPlaybackRate__9CAnimDataFf
/* 8013A87C 001377DC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8013A880 001377E0 7C 08 03 A6 */ mtlr r0
/* 8013A884 001377E4 38 21 00 10 */ addi r1, r1, 0x10
/* 8013A888 001377E8 4E 80 00 20 */ blr
.global SetPlaybackRate__15CBodyControllerFf
SetPlaybackRate__15CBodyControllerFf:
/* 8013A88C 001377EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8013A890 001377F0 7C 08 02 A6 */ mflr r0
/* 8013A894 001377F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 8013A898 001377F8 80 63 00 00 */ lwz r3, 0(r3)
/* 8013A89C 001377FC 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A8A0 00137800 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013A8A4 00137804 4B EF 0B C5 */ bl SetPlaybackRate__9CAnimDataFf
/* 8013A8A8 00137808 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8013A8AC 0013780C 7C 08 03 A6 */ mtlr r0
/* 8013A8B0 00137810 38 21 00 10 */ addi r1, r1, 0x10
/* 8013A8B4 00137814 4E 80 00 20 */ blr
.global GetAnimTimeRemaining__15CBodyControllerCFv
GetAnimTimeRemaining__15CBodyControllerCFv:
/* 8013A8B8 00137818 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8013A8BC 0013781C 7C 08 02 A6 */ mflr r0
/* 8013A8C0 00137820 3C 80 80 3D */ lis r4, lbl_803D0060@ha
/* 8013A8C4 00137824 90 01 00 34 */ stw r0, 0x34(r1)
/* 8013A8C8 00137828 38 84 00 60 */ addi r4, r4, lbl_803D0060@l
/* 8013A8CC 0013782C DB E1 00 28 */ stfd f31, 0x28(r1)
/* 8013A8D0 00137830 93 E1 00 24 */ stw r31, 0x24(r1)
/* 8013A8D4 00137834 7C 7F 1B 78 */ mr r31, r3
/* 8013A8D8 00137838 38 61 00 08 */ addi r3, r1, 8
/* 8013A8DC 0013783C 4B EC A3 DD */ bl string_l__4rstlFPCc
/* 8013A8E0 00137840 80 7F 00 00 */ lwz r3, 0(r31)
/* 8013A8E4 00137844 38 81 00 08 */ addi r4, r1, 8
/* 8013A8E8 00137848 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A8EC 0013784C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013A8F0 00137850 4B EF 1B 7D */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8013A8F4 00137854 FF E0 08 90 */ fmr f31, f1
/* 8013A8F8 00137858 38 61 00 08 */ addi r3, r1, 8
/* 8013A8FC 0013785C 48 20 31 E5 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8013A900 00137860 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8013A904 00137864 FC 20 F8 90 */ fmr f1, f31
/* 8013A908 00137868 CB E1 00 28 */ lfd f31, 0x28(r1)
/* 8013A90C 0013786C 83 E1 00 24 */ lwz r31, 0x24(r1)
/* 8013A910 00137870 7C 08 03 A6 */ mtlr r0
/* 8013A914 00137874 38 21 00 30 */ addi r1, r1, 0x30
/* 8013A918 00137878 4E 80 00 20 */ blr
.global SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb
SetCurrentAnimation__15CBodyControllerFRC18CAnimPlaybackParmsbb:
/* 8013A91C 0013787C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8013A920 00137880 7C 08 02 A6 */ mflr r0
/* 8013A924 00137884 90 01 00 24 */ stw r0, 0x24(r1)
/* 8013A928 00137888 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8013A92C 0013788C 7C BF 2B 78 */ mr r31, r5
/* 8013A930 00137890 7C C5 33 78 */ mr r5, r6
/* 8013A934 00137894 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8013A938 00137898 7C 9E 23 78 */ mr r30, r4
/* 8013A93C 0013789C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8013A940 001378A0 7C 7D 1B 78 */ mr r29, r3
/* 8013A944 001378A4 80 63 00 00 */ lwz r3, 0(r3)
/* 8013A948 001378A8 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A94C 001378AC 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013A950 001378B0 4B EF 24 2D */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb
/* 8013A954 001378B4 80 7D 00 00 */ lwz r3, 0(r29)
/* 8013A958 001378B8 7F E4 FB 78 */ mr r4, r31
/* 8013A95C 001378BC 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A960 001378C0 4B FD AC 01 */ bl EnableLooping__10CModelDataFb
/* 8013A964 001378C4 80 1E 00 00 */ lwz r0, 0(r30)
/* 8013A968 001378C8 90 1D 02 F8 */ stw r0, 0x2f8(r29)
/* 8013A96C 001378CC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8013A970 001378D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8013A974 001378D4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8013A978 001378D8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8013A97C 001378DC 7C 08 03 A6 */ mtlr r0
/* 8013A980 001378E0 38 21 00 20 */ addi r1, r1, 0x20
/* 8013A984 001378E4 4E 80 00 20 */ blr
.global EnableAnimation__15CBodyControllerFb
EnableAnimation__15CBodyControllerFb:
/* 8013A988 001378E8 80 63 00 00 */ lwz r3, 0(r3)
/* 8013A98C 001378EC 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013A990 001378F0 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013A994 001378F4 88 03 02 20 */ lbz r0, 0x220(r3)
/* 8013A998 001378F8 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18
/* 8013A99C 001378FC 98 03 02 20 */ stb r0, 0x220(r3)
/* 8013A9A0 00137900 4E 80 00 20 */ blr
.global SetTurnSpeed__15CBodyControllerFf
SetTurnSpeed__15CBodyControllerFf:
/* 8013A9A4 00137904 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8013A9A8 00137908 FC 00 08 18 */ frsp f0, f1
/* 8013A9AC 0013790C C0 4D 8B 80 */ lfs f2, lbl_805A7740@sda21(r13)
/* 8013A9B0 00137910 D0 21 00 08 */ stfs f1, 8(r1)
/* 8013A9B4 00137914 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8013A9B8 00137918 40 80 00 0C */ bge lbl_8013A9C4
/* 8013A9BC 0013791C 38 81 00 08 */ addi r4, r1, 8
/* 8013A9C0 00137920 48 00 00 08 */ b lbl_8013A9C8
lbl_8013A9C4:
/* 8013A9C4 00137924 38 8D 8B 80 */ addi r4, r13, lbl_805A7740@sda21
lbl_8013A9C8:
/* 8013A9C8 00137928 C0 04 00 00 */ lfs f0, 0(r4)
/* 8013A9CC 0013792C D0 03 02 FC */ stfs f0, 0x2fc(r3)
/* 8013A9D0 00137930 38 21 00 10 */ addi r1, r1, 0x10
/* 8013A9D4 00137934 4E 80 00 20 */ blr
.global SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType:
/* 8013A9D8 00137938 90 83 02 EC */ stw r4, 0x2ec(r3)
/* 8013A9DC 0013793C 4E 80 00 20 */ blr
.global UpdateBody__15CBodyControllerFfR13CStateManager
UpdateBody__15CBodyControllerFfR13CStateManager:
/* 8013A9E0 00137940 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8013A9E4 00137944 7C 08 02 A6 */ mflr r0
/* 8013A9E8 00137948 90 01 00 34 */ stw r0, 0x34(r1)
/* 8013A9EC 0013794C DB E1 00 20 */ stfd f31, 0x20(r1)
/* 8013A9F0 00137950 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0
/* 8013A9F4 00137954 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8013A9F8 00137958 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8013A9FC 0013795C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8013AA00 00137960 FF E0 08 90 */ fmr f31, f1
/* 8013AA04 00137964 7C 7D 1B 78 */ mr r29, r3
/* 8013AA08 00137968 7C 9E 23 78 */ mr r30, r4
/* 8013AA0C 0013796C 4B FF F3 35 */ bl UpdateFrozenInfo__15CBodyControllerFfR13CStateManager
/* 8013AA10 00137970 C0 5D 03 20 */ lfs f2, 0x320(r29)
/* 8013AA14 00137974 C0 22 9A 78 */ lfs f1, lbl_805AB798@sda21(r2)
/* 8013AA18 00137978 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 8013AA1C 0013797C 40 81 00 28 */ ble lbl_8013AA44
/* 8013AA20 00137980 C0 1D 03 28 */ lfs f0, 0x328(r29)
/* 8013AA24 00137984 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 8013AA28 00137988 40 81 00 10 */ ble lbl_8013AA38
/* 8013AA2C 0013798C D0 3D 03 28 */ stfs f1, 0x328(r29)
/* 8013AA30 00137990 D0 3D 03 20 */ stfs f1, 0x320(r29)
/* 8013AA34 00137994 48 00 00 3C */ b lbl_8013AA70
lbl_8013AA38:
/* 8013AA38 00137998 EC 00 F8 2A */ fadds f0, f0, f31
/* 8013AA3C 0013799C D0 1D 03 28 */ stfs f0, 0x328(r29)
/* 8013AA40 001379A0 48 00 00 30 */ b lbl_8013AA70
lbl_8013AA44:
/* 8013AA44 001379A4 C0 5D 03 24 */ lfs f2, 0x324(r29)
/* 8013AA48 001379A8 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 8013AA4C 001379AC 40 81 00 24 */ ble lbl_8013AA70
/* 8013AA50 001379B0 C0 1D 03 2C */ lfs f0, 0x32c(r29)
/* 8013AA54 001379B4 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 8013AA58 001379B8 40 81 00 10 */ ble lbl_8013AA68
/* 8013AA5C 001379BC D0 3D 03 2C */ stfs f1, 0x32c(r29)
/* 8013AA60 001379C0 D0 3D 03 24 */ stfs f1, 0x324(r29)
/* 8013AA64 001379C4 48 00 00 0C */ b lbl_8013AA70
lbl_8013AA68:
/* 8013AA68 001379C8 EC 00 F8 2A */ fadds f0, f0, f31
/* 8013AA6C 001379CC D0 1D 03 2C */ stfs f0, 0x32c(r29)
lbl_8013AA70:
/* 8013AA70 001379D0 7F A3 EB 78 */ mr r3, r29
/* 8013AA74 001379D4 4B FF F6 59 */ bl GetPercentageFrozen__15CBodyControllerCFv
/* 8013AA78 001379D8 C0 02 9A 70 */ lfs f0, lbl_805AB790@sda21(r2)
/* 8013AA7C 001379DC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8013AA80 001379E0 40 80 01 00 */ bge lbl_8013AB80
/* 8013AA84 001379E4 88 1D 03 00 */ lbz r0, 0x300(r29)
/* 8013AA88 001379E8 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
/* 8013AA8C 001379EC 41 82 00 F4 */ beq lbl_8013AB80
/* 8013AA90 001379F0 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AA94 001379F4 4B FF 95 81 */ bl GetCurrentState__14CBodyStateInfoFv
/* 8013AA98 001379F8 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AA9C 001379FC FC 20 F8 90 */ fmr f1, f31
/* 8013AAA0 00137A00 7F A4 EB 78 */ mr r4, r29
/* 8013AAA4 00137A04 7F C5 F3 78 */ mr r5, r30
/* 8013AAA8 00137A08 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 8013AAAC 00137A0C 7D 89 03 A6 */ mtctr r12
/* 8013AAB0 00137A10 4E 80 04 21 */ bctrl
/* 8013AAB4 00137A14 7C 7F 1B 78 */ mr r31, r3
/* 8013AAB8 00137A18 2C 1F FF FF */ cmpwi r31, -1
/* 8013AABC 00137A1C 41 82 00 4C */ beq lbl_8013AB08
/* 8013AAC0 00137A20 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AAC4 00137A24 4B FF 95 51 */ bl GetCurrentState__14CBodyStateInfoFv
/* 8013AAC8 00137A28 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AACC 00137A2C 7F A4 EB 78 */ mr r4, r29
/* 8013AAD0 00137A30 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 8013AAD4 00137A34 7D 89 03 A6 */ mtctr r12
/* 8013AAD8 00137A38 4E 80 04 21 */ bctrl
/* 8013AADC 00137A3C 7F E4 FB 78 */ mr r4, r31
/* 8013AAE0 00137A40 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AAE4 00137A44 4B FF 95 F9 */ bl SetState__14CBodyStateInfoFQ23pas15EAnimationState
/* 8013AAE8 00137A48 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AAEC 00137A4C 4B FF 95 29 */ bl GetCurrentState__14CBodyStateInfoFv
/* 8013AAF0 00137A50 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AAF4 00137A54 7F A4 EB 78 */ mr r4, r29
/* 8013AAF8 00137A58 7F C5 F3 78 */ mr r5, r30
/* 8013AAFC 00137A5C 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 8013AB00 00137A60 7D 89 03 A6 */ mtctr r12
/* 8013AB04 00137A64 4E 80 04 21 */ bctrl
lbl_8013AB08:
/* 8013AB08 00137A68 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AB0C 00137A6C 4B FF 94 31 */ bl GetCurrentAdditiveState__14CBodyStateInfoFv
/* 8013AB10 00137A70 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AB14 00137A74 FC 20 F8 90 */ fmr f1, f31
/* 8013AB18 00137A78 7F A4 EB 78 */ mr r4, r29
/* 8013AB1C 00137A7C 7F C5 F3 78 */ mr r5, r30
/* 8013AB20 00137A80 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 8013AB24 00137A84 7D 89 03 A6 */ mtctr r12
/* 8013AB28 00137A88 4E 80 04 21 */ bctrl
/* 8013AB2C 00137A8C 7C 7F 1B 78 */ mr r31, r3
/* 8013AB30 00137A90 2C 1F FF FF */ cmpwi r31, -1
/* 8013AB34 00137A94 41 82 00 4C */ beq lbl_8013AB80
/* 8013AB38 00137A98 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AB3C 00137A9C 4B FF 94 01 */ bl GetCurrentAdditiveState__14CBodyStateInfoFv
/* 8013AB40 00137AA0 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AB44 00137AA4 7F A4 EB 78 */ mr r4, r29
/* 8013AB48 00137AA8 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 8013AB4C 00137AAC 7D 89 03 A6 */ mtctr r12
/* 8013AB50 00137AB0 4E 80 04 21 */ bctrl
/* 8013AB54 00137AB4 7F E4 FB 78 */ mr r4, r31
/* 8013AB58 00137AB8 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AB5C 00137ABC 4B FF 94 35 */ bl SetAdditiveState__14CBodyStateInfoFQ23pas15EAnimationState
/* 8013AB60 00137AC0 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013AB64 00137AC4 4B FF 93 D9 */ bl GetCurrentAdditiveState__14CBodyStateInfoFv
/* 8013AB68 00137AC8 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AB6C 00137ACC 7F A4 EB 78 */ mr r4, r29
/* 8013AB70 00137AD0 7F C5 F3 78 */ mr r5, r30
/* 8013AB74 00137AD4 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 8013AB78 00137AD8 7D 89 03 A6 */ mtctr r12
/* 8013AB7C 00137ADC 4E 80 04 21 */ bctrl
lbl_8013AB80:
/* 8013AB80 00137AE0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 8013AB84 00137AE4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8013AB88 00137AE8 CB E1 00 20 */ lfd f31, 0x20(r1)
/* 8013AB8C 00137AEC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8013AB90 00137AF0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8013AB94 00137AF4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8013AB98 00137AF8 7C 08 03 A6 */ mtlr r0
/* 8013AB9C 00137AFC 38 21 00 30 */ addi r1, r1, 0x30
/* 8013ABA0 00137B00 4E 80 00 20 */ blr
.global SetFallState__15CBodyControllerFQ23pas10EFallState
SetFallState__15CBodyControllerFQ23pas10EFallState:
/* 8013ABA4 00137B04 90 83 02 F0 */ stw r4, 0x2f0(r3)
/* 8013ABA8 00137B08 4E 80 00 20 */ blr
.global GetFallState__15CBodyControllerCFv
GetFallState__15CBodyControllerCFv:
/* 8013ABAC 00137B0C 80 63 02 F0 */ lwz r3, 0x2f0(r3)
/* 8013ABB0 00137B10 4E 80 00 20 */ blr
.global HasBodyState__15CBodyControllerCFQ23pas15EAnimationState
HasBodyState__15CBodyControllerCFQ23pas15EAnimationState:
/* 8013ABB4 00137B14 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8013ABB8 00137B18 7C 08 02 A6 */ mflr r0
/* 8013ABBC 00137B1C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8013ABC0 00137B20 80 63 00 00 */ lwz r3, 0(r3)
/* 8013ABC4 00137B24 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013ABC8 00137B28 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013ABCC 00137B2C 38 63 00 3C */ addi r3, r3, 0x3c
/* 8013ABD0 00137B30 48 1A A3 AD */ bl HasState__12CPASDatabaseCFi
/* 8013ABD4 00137B34 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8013ABD8 00137B38 7C 08 03 A6 */ mtlr r0
/* 8013ABDC 00137B3C 38 21 00 10 */ addi r1, r1, 0x10
/* 8013ABE0 00137B40 4E 80 00 20 */ blr
.global Update__15CBodyControllerFfR13CStateManager
Update__15CBodyControllerFfR13CStateManager:
/* 8013ABE4 00137B44 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8013ABE8 00137B48 7C 08 02 A6 */ mflr r0
/* 8013ABEC 00137B4C 90 01 00 44 */ stw r0, 0x44(r1)
/* 8013ABF0 00137B50 DB E1 00 30 */ stfd f31, 0x30(r1)
/* 8013ABF4 00137B54 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
/* 8013ABF8 00137B58 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8013ABFC 00137B5C 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8013AC00 00137B60 FF E0 08 90 */ fmr f31, f1
/* 8013AC04 00137B64 C0 22 9A 70 */ lfs f1, lbl_805AB790@sda21(r2)
/* 8013AC08 00137B68 7C 7F 1B 78 */ mr r31, r3
/* 8013AC0C 00137B6C 7C 9E 23 78 */ mr r30, r4
/* 8013AC10 00137B70 4B FF FC 7D */ bl SetPlaybackRate__15CBodyControllerFf
/* 8013AC14 00137B74 88 1F 03 00 */ lbz r0, 0x300(r31)
/* 8013AC18 00137B78 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 8013AC1C 00137B7C 41 82 00 B4 */ beq lbl_8013ACD0
/* 8013AC20 00137B80 3C 80 80 3D */ lis r4, lbl_803D0060@ha
/* 8013AC24 00137B84 38 61 00 10 */ addi r3, r1, 0x10
/* 8013AC28 00137B88 38 84 00 60 */ addi r4, r4, lbl_803D0060@l
/* 8013AC2C 00137B8C 4B EC A0 8D */ bl string_l__4rstlFPCc
/* 8013AC30 00137B90 80 7F 00 00 */ lwz r3, 0(r31)
/* 8013AC34 00137B94 FC 20 F8 90 */ fmr f1, f31
/* 8013AC38 00137B98 38 81 00 10 */ addi r4, r1, 0x10
/* 8013AC3C 00137B9C 80 63 00 64 */ lwz r3, 0x64(r3)
/* 8013AC40 00137BA0 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8013AC44 00137BA4 4B EF 17 A9 */ bl "IsAnimTimeRemaining__9CAnimDataCFfRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8013AC48 00137BA8 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8013AC4C 00137BAC 88 1F 03 00 */ lbz r0, 0x300(r31)
/* 8013AC50 00137BB0 7C 64 00 34 */ cntlzw r4, r3
/* 8013AC54 00137BB4 50 80 16 30 */ rlwimi r0, r4, 2, 0x18, 0x18
/* 8013AC58 00137BB8 38 61 00 10 */ addi r3, r1, 0x10
/* 8013AC5C 00137BBC 98 1F 03 00 */ stb r0, 0x300(r31)
/* 8013AC60 00137BC0 48 20 2E 81 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8013AC64 00137BC4 38 7F 00 04 */ addi r3, r31, 4
/* 8013AC68 00137BC8 4B FF 68 E1 */ bl BlendSteeringCmds__16CBodyStateCmdMgrFv
/* 8013AC6C 00137BCC 3C 60 80 5A */ lis r3, sNoRotation__11CQuaternion@ha
/* 8013AC70 00137BD0 FC 20 F8 90 */ fmr f1, f31
/* 8013AC74 00137BD4 38 C3 66 60 */ addi r6, r3, sNoRotation__11CQuaternion@l
/* 8013AC78 00137BD8 7F E3 FB 78 */ mr r3, r31
/* 8013AC7C 00137BDC C0 06 00 00 */ lfs f0, 0(r6)
/* 8013AC80 00137BE0 7F C4 F3 78 */ mr r4, r30
/* 8013AC84 00137BE4 D0 1F 02 DC */ stfs f0, 0x2dc(r31)
/* 8013AC88 00137BE8 80 A6 00 04 */ lwz r5, 4(r6)
/* 8013AC8C 00137BEC 80 06 00 08 */ lwz r0, 8(r6)
/* 8013AC90 00137BF0 90 BF 02 E0 */ stw r5, 0x2e0(r31)
/* 8013AC94 00137BF4 90 1F 02 E4 */ stw r0, 0x2e4(r31)
/* 8013AC98 00137BF8 80 06 00 0C */ lwz r0, 0xc(r6)
/* 8013AC9C 00137BFC 90 1F 02 E8 */ stw r0, 0x2e8(r31)
/* 8013ACA0 00137C00 4B FF FD 41 */ bl UpdateBody__15CBodyControllerFfR13CStateManager
/* 8013ACA4 00137C04 80 9F 00 00 */ lwz r4, 0(r31)
/* 8013ACA8 00137C08 38 61 00 08 */ addi r3, r1, 8
/* 8013ACAC 00137C0C 4B F7 1A 39 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
/* 8013ACB0 00137C10 80 63 00 04 */ lwz r3, 4(r3)
/* 8013ACB4 00137C14 28 03 00 00 */ cmplwi r3, 0
/* 8013ACB8 00137C18 41 82 00 10 */ beq lbl_8013ACC8
/* 8013ACBC 00137C1C FC 20 F8 90 */ fmr f1, f31
/* 8013ACC0 00137C20 38 9F 02 DC */ addi r4, r31, 0x2dc
/* 8013ACC4 00137C24 4B FE 00 99 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf
lbl_8013ACC8:
/* 8013ACC8 00137C28 38 7F 00 04 */ addi r3, r31, 4
/* 8013ACCC 00137C2C 4B FF 68 1D */ bl Reset__16CBodyStateCmdMgrFv
lbl_8013ACD0:
/* 8013ACD0 00137C30 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
/* 8013ACD4 00137C34 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8013ACD8 00137C38 CB E1 00 30 */ lfd f31, 0x30(r1)
/* 8013ACDC 00137C3C 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8013ACE0 00137C40 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8013ACE4 00137C44 7C 08 03 A6 */ mtlr r0
/* 8013ACE8 00137C48 38 21 00 40 */ addi r1, r1, 0x40
/* 8013ACEC 00137C4C 4E 80 00 20 */ blr
.global Activate__15CBodyControllerFR13CStateManager
Activate__15CBodyControllerFR13CStateManager:
/* 8013ACF0 00137C50 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8013ACF4 00137C54 7C 08 02 A6 */ mflr r0
/* 8013ACF8 00137C58 38 A0 00 01 */ li r5, 1
/* 8013ACFC 00137C5C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8013AD00 00137C60 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8013AD04 00137C64 7C 9F 23 78 */ mr r31, r4
/* 8013AD08 00137C68 93 C1 00 08 */ stw r30, 8(r1)
/* 8013AD0C 00137C6C 7C 7E 1B 78 */ mr r30, r3
/* 8013AD10 00137C70 88 03 03 00 */ lbz r0, 0x300(r3)
/* 8013AD14 00137C74 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19
/* 8013AD18 00137C78 98 03 03 00 */ stb r0, 0x300(r3)
/* 8013AD1C 00137C7C 4B FF F7 39 */ bl GetPASDatabase__15CBodyControllerCFv
/* 8013AD20 00137C80 7C 64 1B 78 */ mr r4, r3
/* 8013AD24 00137C84 38 7E 02 A4 */ addi r3, r30, 0x2a4
/* 8013AD28 00137C88 80 84 00 10 */ lwz r4, 0x10(r4)
/* 8013AD2C 00137C8C 4B FF 93 B1 */ bl SetState__14CBodyStateInfoFQ23pas15EAnimationState
/* 8013AD30 00137C90 38 7E 02 A4 */ addi r3, r30, 0x2a4
/* 8013AD34 00137C94 4B FF 92 E1 */ bl GetCurrentState__14CBodyStateInfoFv
/* 8013AD38 00137C98 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AD3C 00137C9C 7F C4 F3 78 */ mr r4, r30
/* 8013AD40 00137CA0 7F E5 FB 78 */ mr r5, r31
/* 8013AD44 00137CA4 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 8013AD48 00137CA8 7D 89 03 A6 */ mtctr r12
/* 8013AD4C 00137CAC 4E 80 04 21 */ bctrl
/* 8013AD50 00137CB0 38 7E 02 A4 */ addi r3, r30, 0x2a4
/* 8013AD54 00137CB4 4B FF 91 E9 */ bl GetCurrentAdditiveState__14CBodyStateInfoFv
/* 8013AD58 00137CB8 81 83 00 00 */ lwz r12, 0(r3)
/* 8013AD5C 00137CBC 7F C4 F3 78 */ mr r4, r30
/* 8013AD60 00137CC0 7F E5 FB 78 */ mr r5, r31
/* 8013AD64 00137CC4 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 8013AD68 00137CC8 7D 89 03 A6 */ mtctr r12
/* 8013AD6C 00137CCC 4E 80 04 21 */ bctrl
/* 8013AD70 00137CD0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8013AD74 00137CD4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8013AD78 00137CD8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8013AD7C 00137CDC 7C 08 03 A6 */ mtlr r0
/* 8013AD80 00137CE0 38 21 00 10 */ addi r1, r1, 0x10
/* 8013AD84 00137CE4 4E 80 00 20 */ blr
.global __ct__15CBodyControllerFR6CActorf9EBodyType
__ct__15CBodyControllerFR6CActorf9EBodyType:
/* 8013AD88 00137CE8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8013AD8C 00137CEC 7C 08 02 A6 */ mflr r0
/* 8013AD90 00137CF0 90 01 00 34 */ stw r0, 0x34(r1)
/* 8013AD94 00137CF4 DB E1 00 20 */ stfd f31, 0x20(r1)
/* 8013AD98 00137CF8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0
/* 8013AD9C 00137CFC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8013ADA0 00137D00 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8013ADA4 00137D04 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8013ADA8 00137D08 7C 7D 1B 78 */ mr r29, r3
/* 8013ADAC 00137D0C 7C 9E 23 78 */ mr r30, r4
/* 8013ADB0 00137D10 FF E0 08 90 */ fmr f31, f1
/* 8013ADB4 00137D14 93 C3 00 00 */ stw r30, 0(r3)
/* 8013ADB8 00137D18 7C BF 2B 78 */ mr r31, r5
/* 8013ADBC 00137D1C 38 7D 00 04 */ addi r3, r29, 4
/* 8013ADC0 00137D20 4B FF 6E ED */ bl __ct__16CBodyStateCmdMgrFv
/* 8013ADC4 00137D24 7F C4 F3 78 */ mr r4, r30
/* 8013ADC8 00137D28 7F E5 FB 78 */ mr r5, r31
/* 8013ADCC 00137D2C 38 7D 02 A4 */ addi r3, r29, 0x2a4
/* 8013ADD0 00137D30 4B FF 95 B5 */ bl __ct__14CBodyStateInfoFR6CActor9EBodyType
/* 8013ADD4 00137D34 3C 80 80 5A */ lis r4, sNoRotation__11CQuaternion@ha
/* 8013ADD8 00137D38 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8013ADDC 00137D3C 38 E4 66 60 */ addi r7, r4, sNoRotation__11CQuaternion@l
/* 8013ADE0 00137D40 38 C0 00 01 */ li r6, 1
/* 8013ADE4 00137D44 C0 07 00 00 */ lfs f0, 0(r7)
/* 8013ADE8 00137D48 38 A0 00 00 */ li r5, 0
/* 8013ADEC 00137D4C 38 00 FF FF */ li r0, -1
/* 8013ADF0 00137D50 C0 22 9A 78 */ lfs f1, lbl_805AB798@sda21(r2)
/* 8013ADF4 00137D54 D0 1D 02 DC */ stfs f0, 0x2dc(r29)
/* 8013ADF8 00137D58 38 83 66 A0 */ addi r4, r3, sZeroVector__9CVector3f@l
/* 8013ADFC 00137D5C 7F A3 EB 78 */ mr r3, r29
/* 8013AE00 00137D60 C0 07 00 04 */ lfs f0, 4(r7)
/* 8013AE04 00137D64 D0 1D 02 E0 */ stfs f0, 0x2e0(r29)
/* 8013AE08 00137D68 C0 07 00 08 */ lfs f0, 8(r7)
/* 8013AE0C 00137D6C D0 1D 02 E4 */ stfs f0, 0x2e4(r29)
/* 8013AE10 00137D70 C0 07 00 0C */ lfs f0, 0xc(r7)
/* 8013AE14 00137D74 D0 1D 02 E8 */ stfs f0, 0x2e8(r29)
/* 8013AE18 00137D78 90 DD 02 EC */ stw r6, 0x2ec(r29)
/* 8013AE1C 00137D7C 90 BD 02 F0 */ stw r5, 0x2f0(r29)
/* 8013AE20 00137D80 93 FD 02 F4 */ stw r31, 0x2f4(r29)
/* 8013AE24 00137D84 90 1D 02 F8 */ stw r0, 0x2f8(r29)
/* 8013AE28 00137D88 D3 FD 02 FC */ stfs f31, 0x2fc(r29)
/* 8013AE2C 00137D8C 88 1D 03 00 */ lbz r0, 0x300(r29)
/* 8013AE30 00137D90 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18
/* 8013AE34 00137D94 98 1D 03 00 */ stb r0, 0x300(r29)
/* 8013AE38 00137D98 88 1D 03 00 */ lbz r0, 0x300(r29)
/* 8013AE3C 00137D9C 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19
/* 8013AE40 00137DA0 98 1D 03 00 */ stb r0, 0x300(r29)
/* 8013AE44 00137DA4 88 1D 03 00 */ lbz r0, 0x300(r29)
/* 8013AE48 00137DA8 50 A0 2E B4 */ rlwimi r0, r5, 5, 0x1a, 0x1a
/* 8013AE4C 00137DAC 98 1D 03 00 */ stb r0, 0x300(r29)
/* 8013AE50 00137DB0 88 1D 03 00 */ lbz r0, 0x300(r29)
/* 8013AE54 00137DB4 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b
/* 8013AE58 00137DB8 98 1D 03 00 */ stb r0, 0x300(r29)
/* 8013AE5C 00137DBC 88 1D 03 00 */ lbz r0, 0x300(r29)
/* 8013AE60 00137DC0 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c
/* 8013AE64 00137DC4 98 1D 03 00 */ stb r0, 0x300(r29)
/* 8013AE68 00137DC8 D0 3D 03 04 */ stfs f1, 0x304(r29)
/* 8013AE6C 00137DCC D0 3D 03 08 */ stfs f1, 0x308(r29)
/* 8013AE70 00137DD0 D0 3D 03 0C */ stfs f1, 0x30c(r29)
/* 8013AE74 00137DD4 D0 3D 03 10 */ stfs f1, 0x310(r29)
/* 8013AE78 00137DD8 C0 04 00 00 */ lfs f0, 0(r4)
/* 8013AE7C 00137DDC D0 1D 03 14 */ stfs f0, 0x314(r29)
/* 8013AE80 00137DE0 C0 04 00 04 */ lfs f0, 4(r4)
/* 8013AE84 00137DE4 D0 1D 03 18 */ stfs f0, 0x318(r29)
/* 8013AE88 00137DE8 C0 04 00 08 */ lfs f0, 8(r4)
/* 8013AE8C 00137DEC D0 1D 03 1C */ stfs f0, 0x31c(r29)
/* 8013AE90 00137DF0 D0 3D 03 20 */ stfs f1, 0x320(r29)
/* 8013AE94 00137DF4 D0 3D 03 24 */ stfs f1, 0x324(r29)
/* 8013AE98 00137DF8 D0 3D 03 28 */ stfs f1, 0x328(r29)
/* 8013AE9C 00137DFC D0 3D 03 2C */ stfs f1, 0x32c(r29)
/* 8013AEA0 00137E00 D0 3D 03 30 */ stfs f1, 0x330(r29)
/* 8013AEA4 00137E04 93 BD 02 BC */ stw r29, 0x2bc(r29)
/* 8013AEA8 00137E08 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 8013AEAC 00137E0C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8013AEB0 00137E10 CB E1 00 20 */ lfd f31, 0x20(r1)
/* 8013AEB4 00137E14 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8013AEB8 00137E18 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8013AEBC 00137E1C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8013AEC0 00137E20 7C 08 03 A6 */ mtlr r0
/* 8013AEC4 00137E24 38 21 00 30 */ addi r1, r1, 0x30
/* 8013AEC8 00137E28 4E 80 00 20 */ blr
.section .sdata2, "a"
.balign 8
.global lbl_805AB790
lbl_805AB790:
# ROM: 0x3F8030
.float 1.0
.global lbl_805AB794
lbl_805AB794:
# ROM: 0x3F8034
.4byte 0x42FE0000
.global lbl_805AB798
lbl_805AB798:
# ROM: 0x3F8038
.4byte 0
.global lbl_805AB79C
lbl_805AB79C:
# ROM: 0x3F803C
.4byte 0x3727C5AC
.global lbl_805AB7A0
lbl_805AB7A0:
# ROM: 0x3F8040
.4byte 0xBF7FF38C
.global lbl_805AB7A4
lbl_805AB7A4:
# ROM: 0x3F8044
.float 0.017453292
.section .rodata
.balign 8
.global lbl_803D0060
lbl_803D0060:
# ROM: 0x3CD060
.asciz "Whole Body"
.balign 4
.4byte 0