.include "macros.inc" .section .ctors, "wa" lbl_ctor: .4byte __sinit_CPlayer_cpp .section .data .balign 8 .global lbl_803D96E8 lbl_803D96E8: # ROM: 0x3D66E8 .4byte 0 .4byte 0 .4byte __dt__7CPlayerFv .4byte Accept__7CPlayerFR8IVisitor .4byte PreThink__7CPlayerFfR13CStateManager .4byte Think__7CPlayerFfR13CStateManager .4byte AcceptScriptMsg__7CPlayerF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFb .4byte PreRender__7CPlayerFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__7CPlayerCFRC14CFrustumPlanesRC13CStateManager .4byte Render__7CPlayerCFRC13CStateManager .4byte CanRenderUnsorted__7CPlayerCFRC13CStateManager .4byte CalculateRenderBounds__7CPlayerFv .4byte HealthInfo__7CPlayerFR13CStateManager .4byte GetDamageVulnerability__7CPlayerCFv .4byte GetDamageVulnerability__7CPlayerCFRC9CVector3fRC9CVector3fRC11CDamageInfo .4byte GetTouchBounds__7CPlayerCFv .4byte Touch__7CPlayerFR6CActorR13CStateManager .4byte GetOrbitPosition__13CPhysicsActorCFRC13CStateManager .4byte GetAimPosition__7CPlayerCFRC13CStateManagerf .4byte GetHomingPosition__7CPlayerCFRC13CStateManagerf .4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager .4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei .4byte FluidFXThink__7CPlayerFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC12CTransform4f .4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__7CPlayerCFv .4byte GetPrimitiveTransform__7CPlayerCFv .4byte CollidedWith__7CPlayerFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager .4byte GetStepDownHeight__7CPlayerCFv .4byte GetStepUpHeight__7CPlayerCFv .4byte GetWeight__7CPlayerCFv .4byte IsTransparent__7CPlayerCFv .global lbl_803D9770 lbl_803D9770: # ROM: 0x3D6770 .4byte lbl_80012610 .4byte lbl_80012634 .4byte lbl_8001261C .4byte lbl_80012628 .4byte lbl_8001262C .4byte lbl_80012634 .4byte lbl_80012610 .global lbl_803D978C lbl_803D978C: # ROM: 0x3D678C .4byte lbl_800165CC .4byte lbl_80016D24 .4byte lbl_80016D24 .4byte lbl_80016960 .4byte lbl_800169F0 .4byte lbl_800169FC .4byte lbl_80016A08 .4byte lbl_80016D24 .4byte lbl_80016C4C .4byte lbl_800169B8 .4byte lbl_80016D24 .4byte lbl_80016CC0 .4byte lbl_80016D24 .4byte lbl_80016D24 .4byte lbl_80016A20 .4byte lbl_80016B34 .4byte lbl_80016C0C .4byte lbl_80016D24 .4byte lbl_80016C58 .4byte lbl_80016D24 .4byte lbl_80016C30 .4byte lbl_80016A14 .global lbl_803D97E4 lbl_803D97E4: # ROM: 0x3D67E4 .4byte 0 .4byte 0 .4byte 0 .4byte SetMaterial__19CCollisionPrimitiveFRC13CMaterialList .4byte GetMaterial__19CCollisionPrimitiveCFv .4byte 0 .4byte 0 .4byte 0 .4byte __dt__19CCollisionPrimitiveFv .4byte 0 .4byte 0 .section .bss .balign 8 .lcomm lbl_80457908, 0xC0, 4 .lcomm lbl_804579C8, 0x20, 4 .lcomm lbl_804579E8, 0x10, 4 .lcomm lbl_804579F8, 0x18, 4 .lcomm lbl_80457A10, 0x838, 4 .lcomm lbl_80458248, 0x108, 4 .lcomm lbl_80458350, 0x1E58, 4 .section .rodata .balign 8 .global skPlayerLandSfxSoft__7CPlayer skPlayerLandSfxSoft__7CPlayer: .2byte 0xFFFF, 0x05E4, 0x05D2, 0x0621 .2byte 0x0658, 0xFFFF, 0x05E3, 0x0606 .2byte 0x05C0, 0x088E, 0x0694, 0x0638 .2byte 0x062B, 0xFFFF, 0x0621, 0x05D2 .2byte 0x05D2, 0x05C0, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0x05FB, 0x0625 .global skPlayerLandSfxHard__7CPlayer skPlayerLandSfxHard__7CPlayer: .2byte 0xFFFF, 0x0651, 0x064B, 0x0647 .2byte 0x065A, 0xFFFF, 0x0648, 0x064E .2byte 0x064F, 0x08D7, 0x0696, 0x0650 .2byte 0x064C, 0xFFFF, 0x0647, 0x064B .2byte 0x064B, 0x064F, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0x0652, 0x064D .global skLeftStepSounds_7CPlayer skLeftStepSounds_7CPlayer: .2byte 0xFFFF, 0x05B9, 0x05D7, 0x0622 .2byte 0x0653, 0xFFFF, 0x05D5, 0x0611 .2byte 0x05D9, 0x0887, 0x0699, 0x063A .2byte 0x0631, 0xFFFF, 0x0629, 0x05D7 .2byte 0x05D7, 0x05D9, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0x05F9, 0x0629 .global skRightStepSounds_7CPlayer skRightStepSounds_7CPlayer: .2byte 0xFFFF, 0x05BA, 0x05D8, 0x0623 .2byte 0x0654, 0xFFFF, 0x05D6, 0x0612 .2byte 0x05DB, 0x0888, 0x069A, 0x063B .2byte 0x0632, 0xFFFF, 0x062A, 0x05D8 .2byte 0x05D8, 0x05DB, 0xFFFF, 0xFFFF .2byte 0xFFFF, 0xFFFF, 0x05FA, 0x062A .global lbl_803CC4F8 lbl_803CC4F8: .asciz "GUN_LCTR" .asciz "BallTransition_DGRP" .asciz "??(??)" .asciz "FrostExplosion" .asciz "WaterSheets" .asciz "CPlayer" .balign 4 .section .sbss .balign 8 # CPlayer .global lbl_805A8C78 lbl_805A8C78: .skip 0x4 .global lbl_805A8C7C lbl_805A8C7C: .skip 0x4 .global lbl_805A8C80 lbl_805A8C80: .skip 0x1 .global lbl_805A8C81 lbl_805A8C81: .skip 0x3 .global lbl_805A8C84 lbl_805A8C84: .skip 0x4 .global lbl_805A8C88 lbl_805A8C88: .skip 0x4 # TOneStatic .global lbl_805A8C8C lbl_805A8C8C: .skip 0x4 .global lbl_805A8C90 lbl_805A8C90: .skip 0x4 # TOneStatic .global lbl_805A8C94 lbl_805A8C94: .skip 0x4 .global lbl_805A8C98 lbl_805A8C98: .skip 0x4 # TOneStatic .global lbl_805A8C9C lbl_805A8C9C: .skip 0x4 .global lbl_805A8CA0 lbl_805A8CA0: .skip 0x4 # TOneStatic .global lbl_805A8CA4 lbl_805A8CA4: .skip 0x4 .global lbl_805A8CA8 lbl_805A8CA8: .skip 0x8 .section .sdata .balign 8 .global lbl_805A6C48 lbl_805A6C48: # ROM: 0x3F45E8 .4byte 0x00000013 .global lbl_805A6C4C lbl_805A6C4C: # ROM: 0x3F45EC .4byte 0x00000011 .global lbl_805A6C50 lbl_805A6C50: # ROM: 0x3F45F0 .4byte 0x00000035 .global lbl_805A6C54 lbl_805A6C54: # ROM: 0x3F45F4 .4byte 0x0000000D .global lbl_805A6C58 lbl_805A6C58: # ROM: 0x3F45F8 .4byte 0x00000032 .global lbl_805A6C5C lbl_805A6C5C: # ROM: 0x3F45FC .4byte 0x00000005 .global lbl_805A6C60 lbl_805A6C60: # ROM: 0x3F4600 .4byte 0x00000034 .global lbl_805A6C64 lbl_805A6C64: # ROM: 0x3F4604 .4byte 0x00000009 .global lbl_805A6C68 lbl_805A6C68: # ROM: 0x3F4608 .4byte 0x00000033 .global lbl_805A6C6C lbl_805A6C6C: # ROM: 0x3F460C .4byte 0x41A00000 .global lbl_805A6C70 lbl_805A6C70: # ROM: 0x3F4610 .4byte 0x42A00000 .global lbl_805A6C74 lbl_805A6C74: # ROM: 0x3F4614 .4byte 0x42A00000 .global lbl_805A6C78 lbl_805A6C78: # ROM: 0x3F4618 .4byte 0x43870000 .global lbl_805A6C7C lbl_805A6C7C: # ROM: 0x3F461C .4byte 0 .global lbl_805A6C80 lbl_805A6C80: # ROM: 0x3F4620 .4byte 0 .global lbl_805A6C84 lbl_805A6C84: # ROM: 0x3F4624 .float 1.0 .global lbl_805A6C88 lbl_805A6C88: # ROM: 0x3F4628 .4byte 0x00000013 .global lbl_805A6C8C lbl_805A6C8C: # ROM: 0x3F462C .float 1.0 .global lbl_805A6C90 lbl_805A6C90: # ROM: 0x3F4630 .4byte 0x00000013 .global lbl_805A6C94 lbl_805A6C94: # ROM: 0x3F4634 .float 1.0 .global lbl_805A6C98 lbl_805A6C98: # ROM: 0x3F4638 .4byte 0 .global lbl_805A6C9C lbl_805A6C9C: # ROM: 0x3F463C .float 1.0 .global lbl_805A6CA0 lbl_805A6CA0: # ROM: 0x3F4640 .4byte 0 .global lbl_805A6CA4 lbl_805A6CA4: # ROM: 0x3F4644 .float 1.0 .global lbl_805A6CA8 lbl_805A6CA8: # ROM: 0x3F4648 .4byte 0 .global lbl_805A6CAC lbl_805A6CAC: # ROM: 0x3F464C .float 1.0 .global lbl_805A6CB0 lbl_805A6CB0: # ROM: 0x3F4650 .4byte 0 .global lbl_805A6CB4 lbl_805A6CB4: # ROM: 0x3F4654 .float 1.0 .global lbl_805A6CB8 lbl_805A6CB8: # ROM: 0x3F4658 .4byte 0x00000013 .global lbl_805A6CBC lbl_805A6CBC: # ROM: 0x3F465C .float 1.0 .global lbl_805A6CC0 lbl_805A6CC0: # ROM: 0x3F4660 .4byte 0x00000007 .global lbl_805A6CC4 lbl_805A6CC4: # ROM: 0x3F4664 .4byte 0x00000020 .global lbl_805A6CC8 lbl_805A6CC8: # ROM: 0x3F4668 .4byte 0x00000013 .global lbl_805A6CCC lbl_805A6CCC: # ROM: 0x3F466C .4byte 0 .global lbl_805A6CD0 lbl_805A6CD0: # ROM: 0x3F4670 .float 1.0 .global lbl_805A6CD4 lbl_805A6CD4: # ROM: 0x3F4674 .4byte 0 .section .sdata2, "a" .balign 8 .global lbl_805A9E00 lbl_805A9E00: # ROM: 0x3F66A0 .byte 0x00 .global lbl_805A9E01 lbl_805A9E01: # ROM: 0x3F66A1 .byte 0x00 .global lbl_805A9E02 lbl_805A9E02: # ROM: 0x3F66A2 .2byte 0x00000100 .global lbl_805A9E04 lbl_805A9E04: # ROM: 0x3F66A4 .float 0.5 .global lbl_805A9E08 lbl_805A9E08: # ROM: 0x3F66A8 .byte 0x00 .global lbl_805A9E09 lbl_805A9E09: # ROM: 0x3F66A9 .byte 0x01, 0x00, 0x00 .global lbl_805A9E0C lbl_805A9E0C: # ROM: 0x3F66AC .float 2.5 .global lbl_805A9E10 lbl_805A9E10: # ROM: 0x3F66B0 .4byte 0x40C00000 .global lbl_805A9E14 lbl_805A9E14: # ROM: 0x3F66B4 .4byte lbl_803CC4F8 .global lbl_805A9E18 lbl_805A9E18: # ROM: 0x3F66B8 .float 0.5 .global lbl_805A9E1C lbl_805A9E1C: # ROM: 0x3F66BC .float 2.5 .global lbl_805A9E20 lbl_805A9E20: # ROM: 0x3F66C0 .float 1.0 .global lbl_805A9E24 lbl_805A9E24: # ROM: 0x3F66C4 .4byte 0x42C80000 .global lbl_805A9E28 lbl_805A9E28: # ROM: 0x3F66C8 .4byte 0x41F00000 .global lbl_805A9E2C lbl_805A9E2C: # ROM: 0x3F66CC .4byte 0 .global lbl_805A9E30 lbl_805A9E30: # ROM: 0x3F66D0 .4byte 0x40400000 .global lbl_805A9E34 lbl_805A9E34: # ROM: 0x3F66D4 .float 0.2 .global lbl_805A9E38 lbl_805A9E38: # ROM: 0x3F66D8 .4byte 0x4039999A .global lbl_805A9E3C lbl_805A9E3C: # ROM: 0x3F66DC .4byte 0x40880000 .global lbl_805A9E40 lbl_805A9E40: # ROM: 0x3F66E0 .float 0.2 .global lbl_805A9E44 lbl_805A9E44: # ROM: 0x3F66E4 .4byte 0x42700000 .global lbl_805A9E48 lbl_805A9E48: # ROM: 0x3F66E8 .4byte 0x40400000 .global lbl_805A9E4C lbl_805A9E4C: # ROM: 0x3F66EC .4byte 0x00000002 .global lbl_805A9E50 lbl_805A9E50: # ROM: 0x3F66F0 .4byte 0x3D99999A .global lbl_805A9E54 lbl_805A9E54: # ROM: 0x3F66F4 .float 2.0 .global lbl_805A9E58 lbl_805A9E58: # ROM: 0x3F66F8 .float 2.5 .global lbl_805A9E5C lbl_805A9E5C: # ROM: 0x3F66FC .4byte 0x40C00000 .global lbl_805A9E60 lbl_805A9E60: # ROM: 0x3F6700 .float 0.1 .global lbl_805A9E64 lbl_805A9E64: # ROM: 0x3F6704 .4byte 0x3F99999A .global lbl_805A9E68 lbl_805A9E68: # ROM: 0x3F6708 .4byte 0x41480000 .global lbl_805A9E6C lbl_805A9E6C: # ROM: 0x3F670C .float 0.75 .global lbl_805A9E70 lbl_805A9E70: # ROM: 0x3F6710 .float 0.3 .global lbl_805A9E74 lbl_805A9E74: # ROM: 0x3F6714 .4byte 0x41200000 .global lbl_805A9E78 lbl_805A9E78: # ROM: 0x3F6718 .float 0.15 .4byte 0 .global lbl_805A9E80 lbl_805A9E80: # ROM: 0x3F6720 .double 4.503601774854144E15 .global lbl_805A9E88 lbl_805A9E88: # ROM: 0x3F6728 .float 0.5 .global lbl_805A9E8C lbl_805A9E8C: # ROM: 0x3F672C .4byte 0x37A7C5AC .global lbl_805A9E90 lbl_805A9E90: # ROM: 0x3F6730 .float 15.0 .global lbl_805A9E94 lbl_805A9E94: # ROM: 0x3F6734 .float 4.0 .global lbl_805A9E98 lbl_805A9E98: # ROM: 0x3F6738 .4byte 0x41C80000 .4byte 0 .global lbl_805A9EA0 lbl_805A9EA0: # ROM: 0x3F6740 .double 1.0 .global lbl_805A9EA8 lbl_805A9EA8: # ROM: 0x3F6748 .float -1.0 .global lbl_805A9EAC lbl_805A9EAC: # ROM: 0x3F674C .float 0.4 .global lbl_805A9EB0 lbl_805A9EB0: # ROM: 0x3F6750 .4byte 0x3D4CCCCD .global lbl_805A9EB4 lbl_805A9EB4: # ROM: 0x3F6754 .4byte 0x3F4CCCCD .global lbl_805A9EB8 lbl_805A9EB8: # ROM: 0x3F6758 .4byte 0x3E4CCCCC .global lbl_805A9EBC lbl_805A9EBC: # ROM: 0x3F675C .4byte 0x3F600000 .global lbl_805A9EC0 lbl_805A9EC0: # ROM: 0x3F6760 .float 8.0 .global lbl_805A9EC4 lbl_805A9EC4: # ROM: 0x3F6764 .float 0.9 .global lbl_805A9EC8 lbl_805A9EC8: # ROM: 0x3F6768 .4byte 0x3DCCCCD0 .global lbl_805A9ECC lbl_805A9ECC: # ROM: 0x3F676C .float 0.017453292 .global lbl_805A9ED0 lbl_805A9ED0: # ROM: 0x3F6770 .4byte 0x43B40000 .global lbl_805A9ED4 lbl_805A9ED4: # ROM: 0x3F6774 .float 0.45 .global lbl_805A9ED8 lbl_805A9ED8: # ROM: 0x3F6778 .4byte 0x3F860A92 .global lbl_805A9EDC lbl_805A9EDC: # ROM: 0x3F677C .4byte 0x3FC90FDB .global lbl_805A9EE0 lbl_805A9EE0: # ROM: 0x3F6780 .4byte 0xBF0E147B .global lbl_805A9EE4 lbl_805A9EE4: # ROM: 0x3F6784 .4byte 0x3F0E147B .global lbl_805A9EE8 lbl_805A9EE8: # ROM: 0x3F6788 .float 0.7853982 .global lbl_805A9EEC lbl_805A9EEC: # ROM: 0x3F678C .4byte 0x41600000 .global lbl_805A9EF0 lbl_805A9EF0: # ROM: 0x3F6790 .4byte 0x413AAAA4 .global lbl_805A9EF4 lbl_805A9EF4: # ROM: 0x3F6794 .4byte 0x44160000 .global lbl_805A9EF8 lbl_805A9EF8: # ROM: 0x3F6798 .4byte 0x40F00000 .global lbl_805A9EFC lbl_805A9EFC: # ROM: 0x3F679C .float 0.7 .global lbl_805A9F00 lbl_805A9F00: # ROM: 0x3F67A0 .4byte 0x3EDB6DB8 .global lbl_805A9F04 lbl_805A9F04: # ROM: 0x3F67A4 .4byte 0x3D924925 .global lbl_805A9F08 lbl_805A9F08: # ROM: 0x3F67A8 .float 5.0 .global lbl_805A9F0C lbl_805A9F0C: # ROM: 0x3F67AC .float 1.1920929E-7 .global lbl_805A9F10 lbl_805A9F10: # ROM: 0x3F67B0 .float 0.25 .global lbl_805A9F14 lbl_805A9F14: # ROM: 0x3F67B4 .4byte 0xBE4CCCCD .global lbl_805A9F18 lbl_805A9F18: # ROM: 0x3F67B8 .4byte 0x42BE0000 .global lbl_805A9F1C lbl_805A9F1C: # ROM: 0x3F67BC .4byte 0x42FE0000 .global lbl_805A9F20 lbl_805A9F20: # ROM: 0x3F67C0 .4byte 0x42BE0000 .global lbl_805A9F24 lbl_805A9F24: # ROM: 0x3F67C4 .4byte 0x3FCCCCCD .global lbl_805A9F28 lbl_805A9F28: # ROM: 0x3F67C8 .float 1.25 .global lbl_805A9F2C lbl_805A9F2C: # ROM: 0x3F67CC .4byte 0x3C14F209 .global lbl_805A9F30 lbl_805A9F30: # ROM: 0x3F67D0 .4byte 0x3FE99999 .4byte 0xA0000000 .global lbl_805A9F38 lbl_805A9F38: # ROM: 0x3F67D8 .4byte 0xC2200000 .global lbl_805A9F3C lbl_805A9F3C: # ROM: 0x3F67DC .4byte 0xC0A00000 .global lbl_805A9F40 lbl_805A9F40: # ROM: 0x3F67E0 .4byte 0xC1F00000 .global lbl_805A9F44 lbl_805A9F44: # ROM: 0x3F67E4 .4byte 0x3DC28F5C .global lbl_805A9F48 lbl_805A9F48: # ROM: 0x3F67E8 .4byte 0x3727C5AC .global lbl_805A9F4C lbl_805A9F4C: # ROM: 0x3F67EC .4byte 0x3F59999A .global lbl_805A9F50 lbl_805A9F50: # ROM: 0x3F67F0 .4byte 0xBEF33334 .global lbl_805A9F54 lbl_805A9F54: # ROM: 0x3F67F4 .4byte 0x42B20000 .global lbl_805A9F58 lbl_805A9F58: # ROM: 0x3F67F8 .4byte 0x42180000 .global lbl_805A9F5C lbl_805A9F5C: # ROM: 0x3F67FC .4byte 0xBF5020C4 .global lbl_805A9F60 lbl_805A9F60: # ROM: 0x3F6800 .4byte 0xC01C0831 .global lbl_805A9F64 lbl_805A9F64: # ROM: 0x3F6804 .float 1.5 .global lbl_805A9F68 lbl_805A9F68: # ROM: 0x3F6808 .float 0.01 .global lbl_805A9F6C lbl_805A9F6C: # ROM: 0x3F680C .float 0.6 .global lbl_805A9F70 lbl_805A9F70: # ROM: 0x3F6810 .4byte 0x447A0000 .4byte 0 .section .text, "ax" .global __dt__7CPlayerFv __dt__7CPlayerFv: /* 80010144 0000D0A4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80010148 0000D0A8 7C 08 02 A6 */ mflr r0 /* 8001014C 0000D0AC 90 01 00 84 */ stw r0, 0x84(r1) /* 80010150 0000D0B0 93 E1 00 7C */ stw r31, 0x7c(r1) /* 80010154 0000D0B4 7C 9F 23 78 */ mr r31, r4 /* 80010158 0000D0B8 93 C1 00 78 */ stw r30, 0x78(r1) /* 8001015C 0000D0BC 7C 7E 1B 79 */ or. r30, r3, r3 /* 80010160 0000D0C0 93 A1 00 74 */ stw r29, 0x74(r1) /* 80010164 0000D0C4 93 81 00 70 */ stw r28, 0x70(r1) /* 80010168 0000D0C8 41 82 06 E8 */ beq lbl_80010850 /* 8001016C 0000D0CC 3C 60 80 3E */ lis r3, lbl_803D96E8@ha /* 80010170 0000D0D0 34 1E 09 E4 */ addic. r0, r30, 0x9e4 /* 80010174 0000D0D4 38 03 96 E8 */ addi r0, r3, lbl_803D96E8@l /* 80010178 0000D0D8 90 1E 00 00 */ stw r0, 0(r30) /* 8001017C 0000D0DC 41 82 00 58 */ beq lbl_800101D4 /* 80010180 0000D0E0 80 BE 09 E4 */ lwz r5, 0x9e4(r30) /* 80010184 0000D0E4 38 60 00 00 */ li r3, 0 /* 80010188 0000D0E8 2C 05 00 00 */ cmpwi r5, 0 /* 8001018C 0000D0EC 40 81 00 40 */ ble lbl_800101CC /* 80010190 0000D0F0 2C 05 00 08 */ cmpwi r5, 8 /* 80010194 0000D0F4 38 85 FF F8 */ addi r4, r5, -8 /* 80010198 0000D0F8 40 81 00 20 */ ble lbl_800101B8 /* 8001019C 0000D0FC 38 04 00 07 */ addi r0, r4, 7 /* 800101A0 0000D100 54 00 E8 FE */ srwi r0, r0, 3 /* 800101A4 0000D104 7C 09 03 A6 */ mtctr r0 /* 800101A8 0000D108 2C 04 00 00 */ cmpwi r4, 0 /* 800101AC 0000D10C 40 81 00 0C */ ble lbl_800101B8 lbl_800101B0: /* 800101B0 0000D110 38 63 00 08 */ addi r3, r3, 8 /* 800101B4 0000D114 42 00 FF FC */ bdnz lbl_800101B0 lbl_800101B8: /* 800101B8 0000D118 7C 03 28 50 */ subf r0, r3, r5 /* 800101BC 0000D11C 7C 09 03 A6 */ mtctr r0 /* 800101C0 0000D120 7C 03 28 00 */ cmpw r3, r5 /* 800101C4 0000D124 40 80 00 08 */ bge lbl_800101CC lbl_800101C8: /* 800101C8 0000D128 42 00 00 00 */ bdnz lbl_800101C8 lbl_800101CC: /* 800101CC 0000D12C 38 00 00 00 */ li r0, 0 /* 800101D0 0000D130 90 1E 09 E4 */ stw r0, 0x9e4(r30) lbl_800101D4: /* 800101D4 0000D134 34 1E 09 80 */ addic. r0, r30, 0x980 /* 800101D8 0000D138 41 82 00 58 */ beq lbl_80010230 /* 800101DC 0000D13C 80 BE 09 80 */ lwz r5, 0x980(r30) /* 800101E0 0000D140 38 60 00 00 */ li r3, 0 /* 800101E4 0000D144 2C 05 00 00 */ cmpwi r5, 0 /* 800101E8 0000D148 40 81 00 40 */ ble lbl_80010228 /* 800101EC 0000D14C 2C 05 00 08 */ cmpwi r5, 8 /* 800101F0 0000D150 38 85 FF F8 */ addi r4, r5, -8 /* 800101F4 0000D154 40 81 00 20 */ ble lbl_80010214 /* 800101F8 0000D158 38 04 00 07 */ addi r0, r4, 7 /* 800101FC 0000D15C 54 00 E8 FE */ srwi r0, r0, 3 /* 80010200 0000D160 7C 09 03 A6 */ mtctr r0 /* 80010204 0000D164 2C 04 00 00 */ cmpwi r4, 0 /* 80010208 0000D168 40 81 00 0C */ ble lbl_80010214 lbl_8001020C: /* 8001020C 0000D16C 38 63 00 08 */ addi r3, r3, 8 /* 80010210 0000D170 42 00 FF FC */ bdnz lbl_8001020C lbl_80010214: /* 80010214 0000D174 7C 03 28 50 */ subf r0, r3, r5 /* 80010218 0000D178 7C 09 03 A6 */ mtctr r0 /* 8001021C 0000D17C 7C 03 28 00 */ cmpw r3, r5 /* 80010220 0000D180 40 80 00 08 */ bge lbl_80010228 lbl_80010224: /* 80010224 0000D184 42 00 00 00 */ bdnz lbl_80010224 lbl_80010228: /* 80010228 0000D188 38 00 00 00 */ li r0, 0 /* 8001022C 0000D18C 90 1E 09 80 */ stw r0, 0x980(r30) lbl_80010230: /* 80010230 0000D190 34 1E 09 3C */ addic. r0, r30, 0x93c /* 80010234 0000D194 41 82 00 58 */ beq lbl_8001028C /* 80010238 0000D198 80 BE 09 3C */ lwz r5, 0x93c(r30) /* 8001023C 0000D19C 38 60 00 00 */ li r3, 0 /* 80010240 0000D1A0 2C 05 00 00 */ cmpwi r5, 0 /* 80010244 0000D1A4 40 81 00 40 */ ble lbl_80010284 /* 80010248 0000D1A8 2C 05 00 08 */ cmpwi r5, 8 /* 8001024C 0000D1AC 38 85 FF F8 */ addi r4, r5, -8 /* 80010250 0000D1B0 40 81 00 20 */ ble lbl_80010270 /* 80010254 0000D1B4 38 04 00 07 */ addi r0, r4, 7 /* 80010258 0000D1B8 54 00 E8 FE */ srwi r0, r0, 3 /* 8001025C 0000D1BC 7C 09 03 A6 */ mtctr r0 /* 80010260 0000D1C0 2C 04 00 00 */ cmpwi r4, 0 /* 80010264 0000D1C4 40 81 00 0C */ ble lbl_80010270 lbl_80010268: /* 80010268 0000D1C8 38 63 00 08 */ addi r3, r3, 8 /* 8001026C 0000D1CC 42 00 FF FC */ bdnz lbl_80010268 lbl_80010270: /* 80010270 0000D1D0 7C 03 28 50 */ subf r0, r3, r5 /* 80010274 0000D1D4 7C 09 03 A6 */ mtctr r0 /* 80010278 0000D1D8 7C 03 28 00 */ cmpw r3, r5 /* 8001027C 0000D1DC 40 80 00 08 */ bge lbl_80010284 lbl_80010280: /* 80010280 0000D1E0 42 00 00 00 */ bdnz lbl_80010280 lbl_80010284: /* 80010284 0000D1E4 38 00 00 00 */ li r0, 0 /* 80010288 0000D1E8 90 1E 09 3C */ stw r0, 0x93c(r30) lbl_8001028C: /* 8001028C 0000D1EC 34 1E 08 38 */ addic. r0, r30, 0x838 /* 80010290 0000D1F0 41 82 00 58 */ beq lbl_800102E8 /* 80010294 0000D1F4 80 BE 08 38 */ lwz r5, 0x838(r30) /* 80010298 0000D1F8 38 60 00 00 */ li r3, 0 /* 8001029C 0000D1FC 2C 05 00 00 */ cmpwi r5, 0 /* 800102A0 0000D200 40 81 00 40 */ ble lbl_800102E0 /* 800102A4 0000D204 2C 05 00 08 */ cmpwi r5, 8 /* 800102A8 0000D208 38 85 FF F8 */ addi r4, r5, -8 /* 800102AC 0000D20C 40 81 00 20 */ ble lbl_800102CC /* 800102B0 0000D210 38 04 00 07 */ addi r0, r4, 7 /* 800102B4 0000D214 54 00 E8 FE */ srwi r0, r0, 3 /* 800102B8 0000D218 7C 09 03 A6 */ mtctr r0 /* 800102BC 0000D21C 2C 04 00 00 */ cmpwi r4, 0 /* 800102C0 0000D220 40 81 00 0C */ ble lbl_800102CC lbl_800102C4: /* 800102C4 0000D224 38 63 00 08 */ addi r3, r3, 8 /* 800102C8 0000D228 42 00 FF FC */ bdnz lbl_800102C4 lbl_800102CC: /* 800102CC 0000D22C 7C 03 28 50 */ subf r0, r3, r5 /* 800102D0 0000D230 7C 09 03 A6 */ mtctr r0 /* 800102D4 0000D234 7C 03 28 00 */ cmpw r3, r5 /* 800102D8 0000D238 40 80 00 08 */ bge lbl_800102E0 lbl_800102DC: /* 800102DC 0000D23C 42 00 00 00 */ bdnz lbl_800102DC lbl_800102E0: /* 800102E0 0000D240 38 00 00 00 */ li r0, 0 /* 800102E4 0000D244 90 1E 08 38 */ stw r0, 0x838(r30) lbl_800102E8: /* 800102E8 0000D248 34 1E 07 F0 */ addic. r0, r30, 0x7f0 /* 800102EC 0000D24C 41 82 00 10 */ beq lbl_800102FC /* 800102F0 0000D250 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 800102F4 0000D254 38 80 00 01 */ li r4, 1 /* 800102F8 0000D258 48 10 67 55 */ bl __dt__10CModelDataFv lbl_800102FC: /* 800102FC 0000D25C 34 1E 07 6C */ addic. r0, r30, 0x76c /* 80010300 0000D260 41 82 00 CC */ beq lbl_800103CC /* 80010304 0000D264 80 7E 07 6C */ lwz r3, 0x76c(r30) /* 80010308 0000D268 28 03 00 00 */ cmplwi r3, 0 /* 8001030C 0000D26C 41 82 00 C0 */ beq lbl_800103CC /* 80010310 0000D270 34 03 00 B0 */ addic. r0, r3, 0xb0 /* 80010314 0000D274 41 82 00 58 */ beq lbl_8001036C /* 80010318 0000D278 80 C3 00 B0 */ lwz r6, 0xb0(r3) /* 8001031C 0000D27C 38 80 00 00 */ li r4, 0 /* 80010320 0000D280 2C 06 00 00 */ cmpwi r6, 0 /* 80010324 0000D284 40 81 00 40 */ ble lbl_80010364 /* 80010328 0000D288 2C 06 00 08 */ cmpwi r6, 8 /* 8001032C 0000D28C 38 A6 FF F8 */ addi r5, r6, -8 /* 80010330 0000D290 40 81 00 20 */ ble lbl_80010350 /* 80010334 0000D294 38 05 00 07 */ addi r0, r5, 7 /* 80010338 0000D298 54 00 E8 FE */ srwi r0, r0, 3 /* 8001033C 0000D29C 7C 09 03 A6 */ mtctr r0 /* 80010340 0000D2A0 2C 05 00 00 */ cmpwi r5, 0 /* 80010344 0000D2A4 40 81 00 0C */ ble lbl_80010350 lbl_80010348: /* 80010348 0000D2A8 38 84 00 08 */ addi r4, r4, 8 /* 8001034C 0000D2AC 42 00 FF FC */ bdnz lbl_80010348 lbl_80010350: /* 80010350 0000D2B0 7C 04 30 50 */ subf r0, r4, r6 /* 80010354 0000D2B4 7C 09 03 A6 */ mtctr r0 /* 80010358 0000D2B8 7C 04 30 00 */ cmpw r4, r6 /* 8001035C 0000D2BC 40 80 00 08 */ bge lbl_80010364 lbl_80010360: /* 80010360 0000D2C0 42 00 00 00 */ bdnz lbl_80010360 lbl_80010364: /* 80010364 0000D2C4 38 00 00 00 */ li r0, 0 /* 80010368 0000D2C8 90 03 00 B0 */ stw r0, 0xb0(r3) lbl_8001036C: /* 8001036C 0000D2CC 34 03 00 7C */ addic. r0, r3, 0x7c /* 80010370 0000D2D0 41 82 00 58 */ beq lbl_800103C8 /* 80010374 0000D2D4 80 C3 00 7C */ lwz r6, 0x7c(r3) /* 80010378 0000D2D8 38 80 00 00 */ li r4, 0 /* 8001037C 0000D2DC 2C 06 00 00 */ cmpwi r6, 0 /* 80010380 0000D2E0 40 81 00 40 */ ble lbl_800103C0 /* 80010384 0000D2E4 2C 06 00 08 */ cmpwi r6, 8 /* 80010388 0000D2E8 38 A6 FF F8 */ addi r5, r6, -8 /* 8001038C 0000D2EC 40 81 00 20 */ ble lbl_800103AC /* 80010390 0000D2F0 38 05 00 07 */ addi r0, r5, 7 /* 80010394 0000D2F4 54 00 E8 FE */ srwi r0, r0, 3 /* 80010398 0000D2F8 7C 09 03 A6 */ mtctr r0 /* 8001039C 0000D2FC 2C 05 00 00 */ cmpwi r5, 0 /* 800103A0 0000D300 40 81 00 0C */ ble lbl_800103AC lbl_800103A4: /* 800103A4 0000D304 38 84 00 08 */ addi r4, r4, 8 /* 800103A8 0000D308 42 00 FF FC */ bdnz lbl_800103A4 lbl_800103AC: /* 800103AC 0000D30C 7C 04 30 50 */ subf r0, r4, r6 /* 800103B0 0000D310 7C 09 03 A6 */ mtctr r0 /* 800103B4 0000D314 7C 04 30 00 */ cmpw r4, r6 /* 800103B8 0000D318 40 80 00 08 */ bge lbl_800103C0 lbl_800103BC: /* 800103BC 0000D31C 42 00 00 00 */ bdnz lbl_800103BC lbl_800103C0: /* 800103C0 0000D320 38 00 00 00 */ li r0, 0 /* 800103C4 0000D324 90 03 00 7C */ stw r0, 0x7c(r3) lbl_800103C8: /* 800103C8 0000D328 48 00 AB 6D */ bl "__dl__30TOneStatic<16CPlayerCameraBob>FPv" lbl_800103CC: /* 800103CC 0000D32C 34 1E 07 68 */ addic. r0, r30, 0x768 /* 800103D0 0000D330 41 82 00 10 */ beq lbl_800103E0 /* 800103D4 0000D334 80 7E 07 68 */ lwz r3, 0x768(r30) /* 800103D8 0000D338 38 80 00 01 */ li r4, 1 /* 800103DC 0000D33C 48 0E 8A 35 */ bl sub_800f8e10 lbl_800103E0: /* 800103E0 0000D340 34 1E 07 30 */ addic. r0, r30, 0x730 /* 800103E4 0000D344 41 82 00 64 */ beq lbl_80010448 /* 800103E8 0000D348 80 1E 07 34 */ lwz r0, 0x734(r30) /* 800103EC 0000D34C 83 9E 07 3C */ lwz r28, 0x73c(r30) /* 800103F0 0000D350 54 00 18 38 */ slwi r0, r0, 3 /* 800103F4 0000D354 7F BC 02 14 */ add r29, r28, r0 /* 800103F8 0000D358 93 81 00 5C */ stw r28, 0x5c(r1) /* 800103FC 0000D35C 93 A1 00 64 */ stw r29, 0x64(r1) /* 80010400 0000D360 93 A1 00 60 */ stw r29, 0x60(r1) /* 80010404 0000D364 93 81 00 58 */ stw r28, 0x58(r1) /* 80010408 0000D368 48 00 00 28 */ b lbl_80010430 lbl_8001040C: /* 8001040C 0000D36C 28 1C 00 00 */ cmplwi r28, 0 /* 80010410 0000D370 41 82 00 1C */ beq lbl_8001042C /* 80010414 0000D374 88 1C 00 00 */ lbz r0, 0(r28) /* 80010418 0000D378 28 00 00 00 */ cmplwi r0, 0 /* 8001041C 0000D37C 41 82 00 10 */ beq lbl_8001042C /* 80010420 0000D380 80 7C 00 04 */ lwz r3, 4(r28) /* 80010424 0000D384 38 80 00 01 */ li r4, 1 /* 80010428 0000D388 48 10 66 25 */ bl __dt__10CModelDataFv lbl_8001042C: /* 8001042C 0000D38C 3B 9C 00 08 */ addi r28, r28, 8 lbl_80010430: /* 80010430 0000D390 7C 1C E8 40 */ cmplw r28, r29 /* 80010434 0000D394 40 82 FF D8 */ bne lbl_8001040C /* 80010438 0000D398 80 7E 07 3C */ lwz r3, 0x73c(r30) /* 8001043C 0000D39C 28 03 00 00 */ cmplwi r3, 0 /* 80010440 0000D3A0 41 82 00 08 */ beq lbl_80010448 /* 80010444 0000D3A4 48 30 54 ED */ bl Free__7CMemoryFPCv lbl_80010448: /* 80010448 0000D3A8 34 1E 07 1C */ addic. r0, r30, 0x71c /* 8001044C 0000D3AC 41 82 00 60 */ beq lbl_800104AC /* 80010450 0000D3B0 34 1E 07 1C */ addic. r0, r30, 0x71c /* 80010454 0000D3B4 41 82 00 58 */ beq lbl_800104AC /* 80010458 0000D3B8 80 BE 07 1C */ lwz r5, 0x71c(r30) /* 8001045C 0000D3BC 38 60 00 00 */ li r3, 0 /* 80010460 0000D3C0 2C 05 00 00 */ cmpwi r5, 0 /* 80010464 0000D3C4 40 81 00 40 */ ble lbl_800104A4 /* 80010468 0000D3C8 2C 05 00 08 */ cmpwi r5, 8 /* 8001046C 0000D3CC 38 85 FF F8 */ addi r4, r5, -8 /* 80010470 0000D3D0 40 81 00 20 */ ble lbl_80010490 /* 80010474 0000D3D4 38 04 00 07 */ addi r0, r4, 7 /* 80010478 0000D3D8 54 00 E8 FE */ srwi r0, r0, 3 /* 8001047C 0000D3DC 7C 09 03 A6 */ mtctr r0 /* 80010480 0000D3E0 2C 04 00 00 */ cmpwi r4, 0 /* 80010484 0000D3E4 40 81 00 0C */ ble lbl_80010490 lbl_80010488: /* 80010488 0000D3E8 38 63 00 08 */ addi r3, r3, 8 /* 8001048C 0000D3EC 42 00 FF FC */ bdnz lbl_80010488 lbl_80010490: /* 80010490 0000D3F0 7C 03 28 50 */ subf r0, r3, r5 /* 80010494 0000D3F4 7C 09 03 A6 */ mtctr r0 /* 80010498 0000D3F8 7C 03 28 00 */ cmpw r3, r5 /* 8001049C 0000D3FC 40 80 00 08 */ bge lbl_800104A4 lbl_800104A0: /* 800104A0 0000D400 42 00 00 00 */ bdnz lbl_800104A0 lbl_800104A4: /* 800104A4 0000D404 38 00 00 00 */ li r0, 0 /* 800104A8 0000D408 90 1E 07 1C */ stw r0, 0x71c(r30) lbl_800104AC: /* 800104AC 0000D40C 34 1E 06 58 */ addic. r0, r30, 0x658 /* 800104B0 0000D410 41 82 00 60 */ beq lbl_80010510 /* 800104B4 0000D414 34 1E 06 58 */ addic. r0, r30, 0x658 /* 800104B8 0000D418 41 82 00 58 */ beq lbl_80010510 /* 800104BC 0000D41C 80 BE 06 58 */ lwz r5, 0x658(r30) /* 800104C0 0000D420 38 60 00 00 */ li r3, 0 /* 800104C4 0000D424 2C 05 00 00 */ cmpwi r5, 0 /* 800104C8 0000D428 40 81 00 40 */ ble lbl_80010508 /* 800104CC 0000D42C 2C 05 00 08 */ cmpwi r5, 8 /* 800104D0 0000D430 38 85 FF F8 */ addi r4, r5, -8 /* 800104D4 0000D434 40 81 00 20 */ ble lbl_800104F4 /* 800104D8 0000D438 38 04 00 07 */ addi r0, r4, 7 /* 800104DC 0000D43C 54 00 E8 FE */ srwi r0, r0, 3 /* 800104E0 0000D440 7C 09 03 A6 */ mtctr r0 /* 800104E4 0000D444 2C 04 00 00 */ cmpwi r4, 0 /* 800104E8 0000D448 40 81 00 0C */ ble lbl_800104F4 lbl_800104EC: /* 800104EC 0000D44C 38 63 00 08 */ addi r3, r3, 8 /* 800104F0 0000D450 42 00 FF FC */ bdnz lbl_800104EC lbl_800104F4: /* 800104F4 0000D454 7C 03 28 50 */ subf r0, r3, r5 /* 800104F8 0000D458 7C 09 03 A6 */ mtctr r0 /* 800104FC 0000D45C 7C 03 28 00 */ cmpw r3, r5 /* 80010500 0000D460 40 80 00 08 */ bge lbl_80010508 lbl_80010504: /* 80010504 0000D464 42 00 00 00 */ bdnz lbl_80010504 lbl_80010508: /* 80010508 0000D468 38 00 00 00 */ li r0, 0 /* 8001050C 0000D46C 90 1E 06 58 */ stw r0, 0x658(r30) lbl_80010510: /* 80010510 0000D470 34 1E 05 94 */ addic. r0, r30, 0x594 /* 80010514 0000D474 41 82 00 60 */ beq lbl_80010574 /* 80010518 0000D478 34 1E 05 94 */ addic. r0, r30, 0x594 /* 8001051C 0000D47C 41 82 00 58 */ beq lbl_80010574 /* 80010520 0000D480 80 BE 05 94 */ lwz r5, 0x594(r30) /* 80010524 0000D484 38 60 00 00 */ li r3, 0 /* 80010528 0000D488 2C 05 00 00 */ cmpwi r5, 0 /* 8001052C 0000D48C 40 81 00 40 */ ble lbl_8001056C /* 80010530 0000D490 2C 05 00 08 */ cmpwi r5, 8 /* 80010534 0000D494 38 85 FF F8 */ addi r4, r5, -8 /* 80010538 0000D498 40 81 00 20 */ ble lbl_80010558 /* 8001053C 0000D49C 38 04 00 07 */ addi r0, r4, 7 /* 80010540 0000D4A0 54 00 E8 FE */ srwi r0, r0, 3 /* 80010544 0000D4A4 7C 09 03 A6 */ mtctr r0 /* 80010548 0000D4A8 2C 04 00 00 */ cmpwi r4, 0 /* 8001054C 0000D4AC 40 81 00 0C */ ble lbl_80010558 lbl_80010550: /* 80010550 0000D4B0 38 63 00 08 */ addi r3, r3, 8 /* 80010554 0000D4B4 42 00 FF FC */ bdnz lbl_80010550 lbl_80010558: /* 80010558 0000D4B8 7C 03 28 50 */ subf r0, r3, r5 /* 8001055C 0000D4BC 7C 09 03 A6 */ mtctr r0 /* 80010560 0000D4C0 7C 03 28 00 */ cmpw r3, r5 /* 80010564 0000D4C4 40 80 00 08 */ bge lbl_8001056C lbl_80010568: /* 80010568 0000D4C8 42 00 00 00 */ bdnz lbl_80010568 lbl_8001056C: /* 8001056C 0000D4CC 38 00 00 00 */ li r0, 0 /* 80010570 0000D4D0 90 1E 05 94 */ stw r0, 0x594(r30) lbl_80010574: /* 80010574 0000D4D4 34 1E 04 A4 */ addic. r0, r30, 0x4a4 /* 80010578 0000D4D8 41 82 00 60 */ beq lbl_800105D8 /* 8001057C 0000D4DC 34 1E 04 A4 */ addic. r0, r30, 0x4a4 /* 80010580 0000D4E0 41 82 00 58 */ beq lbl_800105D8 /* 80010584 0000D4E4 80 BE 04 A4 */ lwz r5, 0x4a4(r30) /* 80010588 0000D4E8 38 60 00 00 */ li r3, 0 /* 8001058C 0000D4EC 2C 05 00 00 */ cmpwi r5, 0 /* 80010590 0000D4F0 40 81 00 40 */ ble lbl_800105D0 /* 80010594 0000D4F4 2C 05 00 08 */ cmpwi r5, 8 /* 80010598 0000D4F8 38 85 FF F8 */ addi r4, r5, -8 /* 8001059C 0000D4FC 40 81 00 20 */ ble lbl_800105BC /* 800105A0 0000D500 38 04 00 07 */ addi r0, r4, 7 /* 800105A4 0000D504 54 00 E8 FE */ srwi r0, r0, 3 /* 800105A8 0000D508 7C 09 03 A6 */ mtctr r0 /* 800105AC 0000D50C 2C 04 00 00 */ cmpwi r4, 0 /* 800105B0 0000D510 40 81 00 0C */ ble lbl_800105BC lbl_800105B4: /* 800105B4 0000D514 38 63 00 08 */ addi r3, r3, 8 /* 800105B8 0000D518 42 00 FF FC */ bdnz lbl_800105B4 lbl_800105BC: /* 800105BC 0000D51C 7C 03 28 50 */ subf r0, r3, r5 /* 800105C0 0000D520 7C 09 03 A6 */ mtctr r0 /* 800105C4 0000D524 7C 03 28 00 */ cmpw r3, r5 /* 800105C8 0000D528 40 80 00 08 */ bge lbl_800105D0 lbl_800105CC: /* 800105CC 0000D52C 42 00 00 00 */ bdnz lbl_800105CC lbl_800105D0: /* 800105D0 0000D530 38 00 00 00 */ li r0, 0 /* 800105D4 0000D534 90 1E 04 A4 */ stw r0, 0x4a4(r30) lbl_800105D8: /* 800105D8 0000D538 38 7E 04 A0 */ addi r3, r30, 0x4a0 /* 800105DC 0000D53C 38 80 FF FF */ li r4, -1 /* 800105E0 0000D540 48 00 02 95 */ bl sub_80010874 /* 800105E4 0000D544 34 1E 04 90 */ addic. r0, r30, 0x490 /* 800105E8 0000D548 41 82 00 10 */ beq lbl_800105F8 /* 800105EC 0000D54C 80 7E 04 90 */ lwz r3, 0x490(r30) /* 800105F0 0000D550 38 80 00 01 */ li r4, 1 /* 800105F4 0000D554 48 03 23 F1 */ bl __dt__10CPlayerGunFv lbl_800105F8: /* 800105F8 0000D558 34 1E 04 04 */ addic. r0, r30, 0x404 /* 800105FC 0000D55C 41 82 00 60 */ beq lbl_8001065C /* 80010600 0000D560 34 1E 04 04 */ addic. r0, r30, 0x404 /* 80010604 0000D564 41 82 00 58 */ beq lbl_8001065C /* 80010608 0000D568 80 BE 04 04 */ lwz r5, 0x404(r30) /* 8001060C 0000D56C 38 60 00 00 */ li r3, 0 /* 80010610 0000D570 2C 05 00 00 */ cmpwi r5, 0 /* 80010614 0000D574 40 81 00 40 */ ble lbl_80010654 /* 80010618 0000D578 2C 05 00 08 */ cmpwi r5, 8 /* 8001061C 0000D57C 38 85 FF F8 */ addi r4, r5, -8 /* 80010620 0000D580 40 81 00 20 */ ble lbl_80010640 /* 80010624 0000D584 38 04 00 07 */ addi r0, r4, 7 /* 80010628 0000D588 54 00 E8 FE */ srwi r0, r0, 3 /* 8001062C 0000D58C 7C 09 03 A6 */ mtctr r0 /* 80010630 0000D590 2C 04 00 00 */ cmpwi r4, 0 /* 80010634 0000D594 40 81 00 0C */ ble lbl_80010640 lbl_80010638: /* 80010638 0000D598 38 63 00 08 */ addi r3, r3, 8 /* 8001063C 0000D59C 42 00 FF FC */ bdnz lbl_80010638 lbl_80010640: /* 80010640 0000D5A0 7C 03 28 50 */ subf r0, r3, r5 /* 80010644 0000D5A4 7C 09 03 A6 */ mtctr r0 /* 80010648 0000D5A8 7C 03 28 00 */ cmpw r3, r5 /* 8001064C 0000D5AC 40 80 00 08 */ bge lbl_80010654 lbl_80010650: /* 80010650 0000D5B0 42 00 00 00 */ bdnz lbl_80010650 lbl_80010654: /* 80010654 0000D5B4 38 00 00 00 */ li r0, 0 /* 80010658 0000D5B8 90 1E 04 04 */ stw r0, 0x404(r30) lbl_8001065C: /* 8001065C 0000D5BC 34 1E 03 64 */ addic. r0, r30, 0x364 /* 80010660 0000D5C0 41 82 00 44 */ beq lbl_800106A4 /* 80010664 0000D5C4 80 1E 03 68 */ lwz r0, 0x368(r30) /* 80010668 0000D5C8 80 7E 03 70 */ lwz r3, 0x370(r30) /* 8001066C 0000D5CC 54 00 08 3C */ slwi r0, r0, 1 /* 80010670 0000D5D0 7C 03 02 14 */ add r0, r3, r0 /* 80010674 0000D5D4 90 61 00 4C */ stw r3, 0x4c(r1) /* 80010678 0000D5D8 7C 64 1B 78 */ mr r4, r3 /* 8001067C 0000D5DC 90 01 00 54 */ stw r0, 0x54(r1) /* 80010680 0000D5E0 90 01 00 50 */ stw r0, 0x50(r1) /* 80010684 0000D5E4 90 61 00 48 */ stw r3, 0x48(r1) /* 80010688 0000D5E8 48 00 00 08 */ b lbl_80010690 lbl_8001068C: /* 8001068C 0000D5EC 38 84 00 02 */ addi r4, r4, 2 lbl_80010690: /* 80010690 0000D5F0 7C 04 00 40 */ cmplw r4, r0 /* 80010694 0000D5F4 40 82 FF F8 */ bne lbl_8001068C /* 80010698 0000D5F8 28 03 00 00 */ cmplwi r3, 0 /* 8001069C 0000D5FC 41 82 00 08 */ beq lbl_800106A4 /* 800106A0 0000D600 48 30 52 91 */ bl Free__7CMemoryFPCv lbl_800106A4: /* 800106A4 0000D604 34 1E 03 54 */ addic. r0, r30, 0x354 /* 800106A8 0000D608 41 82 00 44 */ beq lbl_800106EC /* 800106AC 0000D60C 80 1E 03 58 */ lwz r0, 0x358(r30) /* 800106B0 0000D610 80 7E 03 60 */ lwz r3, 0x360(r30) /* 800106B4 0000D614 54 00 08 3C */ slwi r0, r0, 1 /* 800106B8 0000D618 7C 03 02 14 */ add r0, r3, r0 /* 800106BC 0000D61C 90 61 00 3C */ stw r3, 0x3c(r1) /* 800106C0 0000D620 7C 64 1B 78 */ mr r4, r3 /* 800106C4 0000D624 90 01 00 44 */ stw r0, 0x44(r1) /* 800106C8 0000D628 90 01 00 40 */ stw r0, 0x40(r1) /* 800106CC 0000D62C 90 61 00 38 */ stw r3, 0x38(r1) /* 800106D0 0000D630 48 00 00 08 */ b lbl_800106D8 lbl_800106D4: /* 800106D4 0000D634 38 84 00 02 */ addi r4, r4, 2 lbl_800106D8: /* 800106D8 0000D638 7C 04 00 40 */ cmplw r4, r0 /* 800106DC 0000D63C 40 82 FF F8 */ bne lbl_800106D4 /* 800106E0 0000D640 28 03 00 00 */ cmplwi r3, 0 /* 800106E4 0000D644 41 82 00 08 */ beq lbl_800106EC /* 800106E8 0000D648 48 30 52 49 */ bl Free__7CMemoryFPCv lbl_800106EC: /* 800106EC 0000D64C 34 1E 03 44 */ addic. r0, r30, 0x344 /* 800106F0 0000D650 41 82 00 44 */ beq lbl_80010734 /* 800106F4 0000D654 80 1E 03 48 */ lwz r0, 0x348(r30) /* 800106F8 0000D658 80 7E 03 50 */ lwz r3, 0x350(r30) /* 800106FC 0000D65C 54 00 08 3C */ slwi r0, r0, 1 /* 80010700 0000D660 7C 03 02 14 */ add r0, r3, r0 /* 80010704 0000D664 90 61 00 2C */ stw r3, 0x2c(r1) /* 80010708 0000D668 7C 64 1B 78 */ mr r4, r3 /* 8001070C 0000D66C 90 01 00 34 */ stw r0, 0x34(r1) /* 80010710 0000D670 90 01 00 30 */ stw r0, 0x30(r1) /* 80010714 0000D674 90 61 00 28 */ stw r3, 0x28(r1) /* 80010718 0000D678 48 00 00 08 */ b lbl_80010720 lbl_8001071C: /* 8001071C 0000D67C 38 84 00 02 */ addi r4, r4, 2 lbl_80010720: /* 80010720 0000D680 7C 04 00 40 */ cmplw r4, r0 /* 80010724 0000D684 40 82 FF F8 */ bne lbl_8001071C /* 80010728 0000D688 28 03 00 00 */ cmplwi r3, 0 /* 8001072C 0000D68C 41 82 00 08 */ beq lbl_80010734 /* 80010730 0000D690 48 30 52 01 */ bl Free__7CMemoryFPCv lbl_80010734: /* 80010734 0000D694 34 1E 02 B4 */ addic. r0, r30, 0x2b4 /* 80010738 0000D698 41 82 00 58 */ beq lbl_80010790 /* 8001073C 0000D69C 80 BE 02 B4 */ lwz r5, 0x2b4(r30) /* 80010740 0000D6A0 38 60 00 00 */ li r3, 0 /* 80010744 0000D6A4 2C 05 00 00 */ cmpwi r5, 0 /* 80010748 0000D6A8 40 81 00 40 */ ble lbl_80010788 /* 8001074C 0000D6AC 2C 05 00 08 */ cmpwi r5, 8 /* 80010750 0000D6B0 38 85 FF F8 */ addi r4, r5, -8 /* 80010754 0000D6B4 40 81 00 20 */ ble lbl_80010774 /* 80010758 0000D6B8 38 04 00 07 */ addi r0, r4, 7 /* 8001075C 0000D6BC 54 00 E8 FE */ srwi r0, r0, 3 /* 80010760 0000D6C0 7C 09 03 A6 */ mtctr r0 /* 80010764 0000D6C4 2C 04 00 00 */ cmpwi r4, 0 /* 80010768 0000D6C8 40 81 00 0C */ ble lbl_80010774 lbl_8001076C: /* 8001076C 0000D6CC 38 63 00 08 */ addi r3, r3, 8 /* 80010770 0000D6D0 42 00 FF FC */ bdnz lbl_8001076C lbl_80010774: /* 80010774 0000D6D4 7C 03 28 50 */ subf r0, r3, r5 /* 80010778 0000D6D8 7C 09 03 A6 */ mtctr r0 /* 8001077C 0000D6DC 7C 03 28 00 */ cmpw r3, r5 /* 80010780 0000D6E0 40 80 00 08 */ bge lbl_80010788 lbl_80010784: /* 80010784 0000D6E4 42 00 00 00 */ bdnz lbl_80010784 lbl_80010788: /* 80010788 0000D6E8 38 00 00 00 */ li r0, 0 /* 8001078C 0000D6EC 90 1E 02 B4 */ stw r0, 0x2b4(r30) lbl_80010790: /* 80010790 0000D6F0 34 1E 02 74 */ addic. r0, r30, 0x274 /* 80010794 0000D6F4 41 82 00 4C */ beq lbl_800107E0 /* 80010798 0000D6F8 34 1E 02 74 */ addic. r0, r30, 0x274 /* 8001079C 0000D6FC 41 82 00 44 */ beq lbl_800107E0 /* 800107A0 0000D700 80 1E 02 78 */ lwz r0, 0x278(r30) /* 800107A4 0000D704 80 7E 02 80 */ lwz r3, 0x280(r30) /* 800107A8 0000D708 54 00 18 38 */ slwi r0, r0, 3 /* 800107AC 0000D70C 7C 03 02 14 */ add r0, r3, r0 /* 800107B0 0000D710 90 61 00 0C */ stw r3, 0xc(r1) /* 800107B4 0000D714 7C 64 1B 78 */ mr r4, r3 /* 800107B8 0000D718 90 01 00 14 */ stw r0, 0x14(r1) /* 800107BC 0000D71C 90 01 00 10 */ stw r0, 0x10(r1) /* 800107C0 0000D720 90 61 00 08 */ stw r3, 8(r1) /* 800107C4 0000D724 48 00 00 08 */ b lbl_800107CC lbl_800107C8: /* 800107C8 0000D728 38 84 00 08 */ addi r4, r4, 8 lbl_800107CC: /* 800107CC 0000D72C 7C 04 00 40 */ cmplw r4, r0 /* 800107D0 0000D730 40 82 FF F8 */ bne lbl_800107C8 /* 800107D4 0000D734 28 03 00 00 */ cmplwi r3, 0 /* 800107D8 0000D738 41 82 00 08 */ beq lbl_800107E0 /* 800107DC 0000D73C 48 30 51 55 */ bl Free__7CMemoryFPCv lbl_800107E0: /* 800107E0 0000D740 34 1E 02 5C */ addic. r0, r30, 0x25c /* 800107E4 0000D744 41 82 00 50 */ beq lbl_80010834 /* 800107E8 0000D748 80 1E 02 60 */ lwz r0, 0x260(r30) /* 800107EC 0000D74C 83 9E 02 68 */ lwz r28, 0x268(r30) /* 800107F0 0000D750 54 00 18 38 */ slwi r0, r0, 3 /* 800107F4 0000D754 7F BC 02 14 */ add r29, r28, r0 /* 800107F8 0000D758 93 81 00 1C */ stw r28, 0x1c(r1) /* 800107FC 0000D75C 93 A1 00 24 */ stw r29, 0x24(r1) /* 80010800 0000D760 93 A1 00 20 */ stw r29, 0x20(r1) /* 80010804 0000D764 93 81 00 18 */ stw r28, 0x18(r1) /* 80010808 0000D768 48 00 00 14 */ b lbl_8001081C lbl_8001080C: /* 8001080C 0000D76C 7F 83 E3 78 */ mr r3, r28 /* 80010810 0000D770 38 80 FF FF */ li r4, -1 /* 80010814 0000D774 48 33 06 2D */ bl __dt__6CTokenFv /* 80010818 0000D778 3B 9C 00 08 */ addi r28, r28, 8 lbl_8001081C: /* 8001081C 0000D77C 7C 1C E8 40 */ cmplw r28, r29 /* 80010820 0000D780 40 82 FF EC */ bne lbl_8001080C /* 80010824 0000D784 80 7E 02 68 */ lwz r3, 0x268(r30) /* 80010828 0000D788 28 03 00 00 */ cmplwi r3, 0 /* 8001082C 0000D78C 41 82 00 08 */ beq lbl_80010834 /* 80010830 0000D790 48 30 51 01 */ bl Free__7CMemoryFPCv lbl_80010834: /* 80010834 0000D794 7F C3 F3 78 */ mr r3, r30 /* 80010838 0000D798 38 80 00 00 */ li r4, 0 /* 8001083C 0000D79C 48 10 BB D9 */ bl __dt__13CPhysicsActorFv /* 80010840 0000D7A0 7F E0 07 35 */ extsh. r0, r31 /* 80010844 0000D7A4 40 81 00 0C */ ble lbl_80010850 /* 80010848 0000D7A8 7F C3 F3 78 */ mr r3, r30 /* 8001084C 0000D7AC 48 00 A7 A5 */ bl "__dl__20TOneStatic<7CPlayer>FPv" lbl_80010850: /* 80010850 0000D7B0 80 01 00 84 */ lwz r0, 0x84(r1) /* 80010854 0000D7B4 7F C3 F3 78 */ mr r3, r30 /* 80010858 0000D7B8 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 8001085C 0000D7BC 83 C1 00 78 */ lwz r30, 0x78(r1) /* 80010860 0000D7C0 83 A1 00 74 */ lwz r29, 0x74(r1) /* 80010864 0000D7C4 83 81 00 70 */ lwz r28, 0x70(r1) /* 80010868 0000D7C8 7C 08 03 A6 */ mtlr r0 /* 8001086C 0000D7CC 38 21 00 80 */ addi r1, r1, 0x80 .global sub_80010870 sub_80010870: /* 80010870 0000D7D0 4E 80 00 20 */ blr .global sub_80010874 sub_80010874: /* 80010874 0000D7D4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80010878 0000D7D8 7C 08 02 A6 */ mflr r0 /* 8001087C 0000D7DC 90 01 00 14 */ stw r0, 0x14(r1) /* 80010880 0000D7E0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80010884 0000D7E4 7C 9F 23 78 */ mr r31, r4 /* 80010888 0000D7E8 93 C1 00 08 */ stw r30, 8(r1) /* 8001088C 0000D7EC 7C 7E 1B 79 */ or. r30, r3, r3 /* 80010890 0000D7F0 41 82 00 20 */ beq lbl_800108B0 /* 80010894 0000D7F4 80 7E 00 00 */ lwz r3, 0(r30) /* 80010898 0000D7F8 38 80 00 01 */ li r4, 1 /* 8001089C 0000D7FC 48 00 00 31 */ bl __dt__10CMorphBallFv /* 800108A0 0000D800 7F E0 07 35 */ extsh. r0, r31 /* 800108A4 0000D804 40 81 00 0C */ ble lbl_800108B0 /* 800108A8 0000D808 7F C3 F3 78 */ mr r3, r30 /* 800108AC 0000D80C 48 30 50 85 */ bl Free__7CMemoryFPCv lbl_800108B0: /* 800108B0 0000D810 80 01 00 14 */ lwz r0, 0x14(r1) /* 800108B4 0000D814 7F C3 F3 78 */ mr r3, r30 /* 800108B8 0000D818 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800108BC 0000D81C 83 C1 00 08 */ lwz r30, 8(r1) /* 800108C0 0000D820 7C 08 03 A6 */ mtlr r0 /* 800108C4 0000D824 38 21 00 10 */ addi r1, r1, 0x10 /* 800108C8 0000D828 4E 80 00 20 */ blr .global __dt__10CMorphBallFv __dt__10CMorphBallFv: /* 800108CC 0000D82C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800108D0 0000D830 7C 08 02 A6 */ mflr r0 /* 800108D4 0000D834 90 01 00 14 */ stw r0, 0x14(r1) /* 800108D8 0000D838 93 E1 00 0C */ stw r31, 0xc(r1) /* 800108DC 0000D83C 7C 7F 1B 79 */ or. r31, r3, r3 /* 800108E0 0000D840 41 82 01 A0 */ beq lbl_80010A80 /* 800108E4 0000D844 34 1F 02 3C */ addic. r0, r31, 0x23c /* 800108E8 0000D848 41 82 00 60 */ beq lbl_80010948 /* 800108EC 0000D84C 34 1F 02 3C */ addic. r0, r31, 0x23c /* 800108F0 0000D850 41 82 00 58 */ beq lbl_80010948 /* 800108F4 0000D854 80 DF 02 3C */ lwz r6, 0x23c(r31) /* 800108F8 0000D858 38 60 00 00 */ li r3, 0 /* 800108FC 0000D85C 2C 06 00 00 */ cmpwi r6, 0 /* 80010900 0000D860 40 81 00 40 */ ble lbl_80010940 /* 80010904 0000D864 2C 06 00 08 */ cmpwi r6, 8 /* 80010908 0000D868 38 A6 FF F8 */ addi r5, r6, -8 /* 8001090C 0000D86C 40 81 00 20 */ ble lbl_8001092C /* 80010910 0000D870 38 05 00 07 */ addi r0, r5, 7 /* 80010914 0000D874 54 00 E8 FE */ srwi r0, r0, 3 /* 80010918 0000D878 7C 09 03 A6 */ mtctr r0 /* 8001091C 0000D87C 2C 05 00 00 */ cmpwi r5, 0 /* 80010920 0000D880 40 81 00 0C */ ble lbl_8001092C lbl_80010924: /* 80010924 0000D884 38 63 00 08 */ addi r3, r3, 8 /* 80010928 0000D888 42 00 FF FC */ bdnz lbl_80010924 lbl_8001092C: /* 8001092C 0000D88C 7C 03 30 50 */ subf r0, r3, r6 /* 80010930 0000D890 7C 09 03 A6 */ mtctr r0 /* 80010934 0000D894 7C 03 30 00 */ cmpw r3, r6 /* 80010938 0000D898 40 80 00 08 */ bge lbl_80010940 lbl_8001093C: /* 8001093C 0000D89C 42 00 00 00 */ bdnz lbl_8001093C lbl_80010940: /* 80010940 0000D8A0 38 00 00 00 */ li r0, 0 /* 80010944 0000D8A4 90 1F 02 3C */ stw r0, 0x23c(r31) lbl_80010948: /* 80010948 0000D8A8 34 1F 01 48 */ addic. r0, r31, 0x148 /* 8001094C 0000D8AC 41 82 00 60 */ beq lbl_800109AC /* 80010950 0000D8B0 34 1F 01 48 */ addic. r0, r31, 0x148 /* 80010954 0000D8B4 41 82 00 58 */ beq lbl_800109AC /* 80010958 0000D8B8 80 DF 01 48 */ lwz r6, 0x148(r31) /* 8001095C 0000D8BC 38 60 00 00 */ li r3, 0 /* 80010960 0000D8C0 2C 06 00 00 */ cmpwi r6, 0 /* 80010964 0000D8C4 40 81 00 40 */ ble lbl_800109A4 /* 80010968 0000D8C8 2C 06 00 08 */ cmpwi r6, 8 /* 8001096C 0000D8CC 38 A6 FF F8 */ addi r5, r6, -8 /* 80010970 0000D8D0 40 81 00 20 */ ble lbl_80010990 /* 80010974 0000D8D4 38 05 00 07 */ addi r0, r5, 7 /* 80010978 0000D8D8 54 00 E8 FE */ srwi r0, r0, 3 /* 8001097C 0000D8DC 7C 09 03 A6 */ mtctr r0 /* 80010980 0000D8E0 2C 05 00 00 */ cmpwi r5, 0 /* 80010984 0000D8E4 40 81 00 0C */ ble lbl_80010990 lbl_80010988: /* 80010988 0000D8E8 38 63 00 08 */ addi r3, r3, 8 /* 8001098C 0000D8EC 42 00 FF FC */ bdnz lbl_80010988 lbl_80010990: /* 80010990 0000D8F0 7C 03 30 50 */ subf r0, r3, r6 /* 80010994 0000D8F4 7C 09 03 A6 */ mtctr r0 /* 80010998 0000D8F8 7C 03 30 00 */ cmpw r3, r6 /* 8001099C 0000D8FC 40 80 00 08 */ bge lbl_800109A4 lbl_800109A0: /* 800109A0 0000D900 42 00 00 00 */ bdnz lbl_800109A0 lbl_800109A4: /* 800109A4 0000D904 38 00 00 00 */ li r0, 0 /* 800109A8 0000D908 90 1F 01 48 */ stw r0, 0x148(r31) lbl_800109AC: /* 800109AC 0000D90C 34 1F 00 54 */ addic. r0, r31, 0x54 /* 800109B0 0000D910 41 82 00 60 */ beq lbl_80010A10 /* 800109B4 0000D914 34 1F 00 54 */ addic. r0, r31, 0x54 /* 800109B8 0000D918 41 82 00 58 */ beq lbl_80010A10 /* 800109BC 0000D91C 80 DF 00 54 */ lwz r6, 0x54(r31) /* 800109C0 0000D920 38 60 00 00 */ li r3, 0 /* 800109C4 0000D924 2C 06 00 00 */ cmpwi r6, 0 /* 800109C8 0000D928 40 81 00 40 */ ble lbl_80010A08 /* 800109CC 0000D92C 2C 06 00 08 */ cmpwi r6, 8 /* 800109D0 0000D930 38 A6 FF F8 */ addi r5, r6, -8 /* 800109D4 0000D934 40 81 00 20 */ ble lbl_800109F4 /* 800109D8 0000D938 38 05 00 07 */ addi r0, r5, 7 /* 800109DC 0000D93C 54 00 E8 FE */ srwi r0, r0, 3 /* 800109E0 0000D940 7C 09 03 A6 */ mtctr r0 /* 800109E4 0000D944 2C 05 00 00 */ cmpwi r5, 0 /* 800109E8 0000D948 40 81 00 0C */ ble lbl_800109F4 lbl_800109EC: /* 800109EC 0000D94C 38 63 00 08 */ addi r3, r3, 8 /* 800109F0 0000D950 42 00 FF FC */ bdnz lbl_800109EC lbl_800109F4: /* 800109F4 0000D954 7C 03 30 50 */ subf r0, r3, r6 /* 800109F8 0000D958 7C 09 03 A6 */ mtctr r0 /* 800109FC 0000D95C 7C 03 30 00 */ cmpw r3, r6 /* 80010A00 0000D960 40 80 00 08 */ bge lbl_80010A08 lbl_80010A04: /* 80010A04 0000D964 42 00 00 00 */ bdnz lbl_80010A04 lbl_80010A08: /* 80010A08 0000D968 38 00 00 00 */ li r0, 0 /* 80010A0C 0000D96C 90 1F 00 54 */ stw r0, 0x54(r31) lbl_80010A10: /* 80010A10 0000D970 28 1F 00 00 */ cmplwi r31, 0 /* 80010A14 0000D974 41 82 00 5C */ beq lbl_80010A70 /* 80010A18 0000D978 41 82 00 58 */ beq lbl_80010A70 /* 80010A1C 0000D97C 80 DF 00 00 */ lwz r6, 0(r31) /* 80010A20 0000D980 38 60 00 00 */ li r3, 0 /* 80010A24 0000D984 2C 06 00 00 */ cmpwi r6, 0 /* 80010A28 0000D988 40 81 00 40 */ ble lbl_80010A68 /* 80010A2C 0000D98C 2C 06 00 08 */ cmpwi r6, 8 /* 80010A30 0000D990 38 A6 FF F8 */ addi r5, r6, -8 /* 80010A34 0000D994 40 81 00 20 */ ble lbl_80010A54 /* 80010A38 0000D998 38 05 00 07 */ addi r0, r5, 7 /* 80010A3C 0000D99C 54 00 E8 FE */ srwi r0, r0, 3 /* 80010A40 0000D9A0 7C 09 03 A6 */ mtctr r0 /* 80010A44 0000D9A4 2C 05 00 00 */ cmpwi r5, 0 /* 80010A48 0000D9A8 40 81 00 0C */ ble lbl_80010A54 lbl_80010A4C: /* 80010A4C 0000D9AC 38 63 00 08 */ addi r3, r3, 8 /* 80010A50 0000D9B0 42 00 FF FC */ bdnz lbl_80010A4C lbl_80010A54: /* 80010A54 0000D9B4 7C 03 30 50 */ subf r0, r3, r6 /* 80010A58 0000D9B8 7C 09 03 A6 */ mtctr r0 /* 80010A5C 0000D9BC 7C 03 30 00 */ cmpw r3, r6 /* 80010A60 0000D9C0 40 80 00 08 */ bge lbl_80010A68 lbl_80010A64: /* 80010A64 0000D9C4 42 00 00 00 */ bdnz lbl_80010A64 lbl_80010A68: /* 80010A68 0000D9C8 38 00 00 00 */ li r0, 0 /* 80010A6C 0000D9CC 90 1F 00 00 */ stw r0, 0(r31) lbl_80010A70: /* 80010A70 0000D9D0 7C 80 07 35 */ extsh. r0, r4 /* 80010A74 0000D9D4 40 81 00 0C */ ble lbl_80010A80 /* 80010A78 0000D9D8 7F E3 FB 78 */ mr r3, r31 /* 80010A7C 0000D9DC 48 30 4E B5 */ bl Free__7CMemoryFPCv lbl_80010A80: /* 80010A80 0000D9E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80010A84 0000D9E4 7F E3 FB 78 */ mr r3, r31 /* 80010A88 0000D9E8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80010A8C 0000D9EC 7C 08 03 A6 */ mtlr r0 /* 80010A90 0000D9F0 38 21 00 10 */ addi r1, r1, 0x10 .global sub_80010a94 sub_80010a94: /* 80010A94 0000D9F4 4E 80 00 20 */ blr .global IsTransparent__7CPlayerCFv IsTransparent__7CPlayerCFv: /* 80010A98 0000D9F8 C0 23 05 88 */ lfs f1, 0x588(r3) /* 80010A9C 0000D9FC C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80010AA0 0000DA00 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80010AA4 0000DA04 7C 00 00 26 */ mfcr r0 /* 80010AA8 0000DA08 54 03 0F FE */ srwi r3, r0, 0x1f /* 80010AAC 0000DA0C 4E 80 00 20 */ blr .global IsEnergyLow__7CPlayerCFRC13CStateManager IsEnergyLow__7CPlayerCFRC13CStateManager: /* 80010AB0 0000DA10 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80010AB4 0000DA14 7C 08 02 A6 */ mflr r0 /* 80010AB8 0000DA18 90 01 00 24 */ stw r0, 0x24(r1) /* 80010ABC 0000DA1C DB E1 00 10 */ stfd f31, 0x10(r1) /* 80010AC0 0000DA20 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 80010AC4 0000DA24 93 E1 00 0C */ stw r31, 0xc(r1) /* 80010AC8 0000DA28 81 83 00 00 */ lwz r12, 0(r3) /* 80010ACC 0000DA2C 7C 9F 23 78 */ mr r31, r4 /* 80010AD0 0000DA30 81 8C 00 34 */ lwz r12, 0x34(r12) /* 80010AD4 0000DA34 7D 89 03 A6 */ mtctr r12 /* 80010AD8 0000DA38 4E 80 04 21 */ bctrl /* 80010ADC 0000DA3C 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 80010AE0 0000DA40 38 80 00 18 */ li r4, 0x18 /* 80010AE4 0000DA44 C3 E3 00 00 */ lfs f31, 0(r3) /* 80010AE8 0000DA48 80 65 00 00 */ lwz r3, 0(r5) /* 80010AEC 0000DA4C 48 08 10 09 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType /* 80010AF0 0000DA50 2C 03 00 04 */ cmpwi r3, 4 /* 80010AF4 0000DA54 41 80 00 0C */ blt lbl_80010B00 /* 80010AF8 0000DA58 C0 02 81 04 */ lfs f0, lbl_805A9E24@sda21(r2) /* 80010AFC 0000DA5C 48 00 00 08 */ b lbl_80010B04 lbl_80010B00: /* 80010B00 0000DA60 C0 02 81 08 */ lfs f0, lbl_805A9E28@sda21(r2) lbl_80010B04: /* 80010B04 0000DA64 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80010B08 0000DA68 7C 00 00 26 */ mfcr r0 /* 80010B0C 0000DA6C 54 03 0F FE */ srwi r3, r0, 0x1f /* 80010B10 0000DA70 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 80010B14 0000DA74 80 01 00 24 */ lwz r0, 0x24(r1) /* 80010B18 0000DA78 CB E1 00 10 */ lfd f31, 0x10(r1) /* 80010B1C 0000DA7C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80010B20 0000DA80 7C 08 03 A6 */ mtlr r0 /* 80010B24 0000DA84 38 21 00 20 */ addi r1, r1, 0x20 /* 80010B28 0000DA88 4E 80 00 20 */ blr .global FinishNewScan__7CPlayerFR13CStateManager FinishNewScan__7CPlayerFR13CStateManager: /* 80010B2C 0000DA8C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80010B30 0000DA90 7C 08 02 A6 */ mflr r0 /* 80010B34 0000DA94 90 01 00 34 */ stw r0, 0x34(r1) /* 80010B38 0000DA98 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80010B3C 0000DA9C 7C 9F 23 78 */ mr r31, r4 /* 80010B40 0000DAA0 38 81 00 0C */ addi r4, r1, 0xc /* 80010B44 0000DAA4 93 C1 00 28 */ stw r30, 0x28(r1) /* 80010B48 0000DAA8 93 A1 00 24 */ stw r29, 0x24(r1) /* 80010B4C 0000DAAC A0 03 03 10 */ lhz r0, 0x310(r3) /* 80010B50 0000DAB0 7F E3 FB 78 */ mr r3, r31 /* 80010B54 0000DAB4 B0 01 00 08 */ sth r0, 8(r1) /* 80010B58 0000DAB8 B0 01 00 0C */ sth r0, 0xc(r1) /* 80010B5C 0000DABC 48 03 BA 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80010B60 0000DAC0 7C 64 1B 78 */ mr r4, r3 /* 80010B64 0000DAC4 38 61 00 10 */ addi r3, r1, 0x10 /* 80010B68 0000DAC8 48 09 F1 29 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 80010B6C 0000DACC 80 63 00 04 */ lwz r3, 4(r3) /* 80010B70 0000DAD0 28 03 00 00 */ cmplwi r3, 0 /* 80010B74 0000DAD4 41 82 00 C8 */ beq lbl_80010C3C /* 80010B78 0000DAD8 80 83 00 68 */ lwz r4, 0x68(r3) /* 80010B7C 0000DADC 38 00 00 80 */ li r0, 0x80 /* 80010B80 0000DAE0 80 C3 00 6C */ lwz r6, 0x6c(r3) /* 80010B84 0000DAE4 38 A0 00 00 */ li r5, 0 /* 80010B88 0000DAE8 7C 80 00 38 */ and r0, r4, r0 /* 80010B8C 0000DAEC 7C C4 28 38 */ and r4, r6, r5 /* 80010B90 0000DAF0 7C 84 2A 78 */ xor r4, r4, r5 /* 80010B94 0000DAF4 7C 00 2A 78 */ xor r0, r0, r5 /* 80010B98 0000DAF8 7C 80 03 79 */ or. r0, r4, r0 /* 80010B9C 0000DAFC 41 82 00 A0 */ beq lbl_80010C3C /* 80010BA0 0000DB00 48 04 29 29 */ bl GetScannableObjectInfo__6CActorCFv /* 80010BA4 0000DB04 7C 7E 1B 79 */ or. r30, r3, r3 /* 80010BA8 0000DB08 41 82 00 94 */ beq lbl_80010C3C /* 80010BAC 0000DB0C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80010BB0 0000DB10 80 9E 00 00 */ lwz r4, 0(r30) /* 80010BB4 0000DB14 80 63 00 00 */ lwz r3, 0(r3) /* 80010BB8 0000DB18 48 08 0A D9 */ bl GetScanTime__12CPlayerStateCFUi /* 80010BBC 0000DB1C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80010BC0 0000DB20 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80010BC4 0000DB24 4C 41 13 82 */ cror 2, 1, 2 /* 80010BC8 0000DB28 40 82 00 74 */ bne lbl_80010C3C /* 80010BCC 0000DB2C 80 7E 00 00 */ lwz r3, 0(r30) /* 80010BD0 0000DB30 48 28 92 85 */ bl IsDataLoreResearchScan__FUi /* 80010BD4 0000DB34 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80010BD8 0000DB38 41 82 00 64 */ beq lbl_80010C3C /* 80010BDC 0000DB3C 7F E4 FB 78 */ mr r4, r31 /* 80010BE0 0000DB40 38 61 00 18 */ addi r3, r1, 0x18 /* 80010BE4 0000DB44 48 28 91 E1 */ bl CalculateScanCompletionRate__13CStateManagerFv /* 80010BE8 0000DB48 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80010BEC 0000DB4C 83 A1 00 18 */ lwz r29, 0x18(r1) /* 80010BF0 0000DB50 80 63 00 00 */ lwz r3, 0(r3) /* 80010BF4 0000DB54 83 C1 00 1C */ lwz r30, 0x1c(r1) /* 80010BF8 0000DB58 7F A4 EB 78 */ mr r4, r29 /* 80010BFC 0000DB5C 80 63 01 80 */ lwz r3, 0x180(r3) /* 80010C00 0000DB60 7F C5 F3 78 */ mr r5, r30 /* 80010C04 0000DB64 48 28 8F D1 */ bl UpdatePersistentScanPercent__FUiUiUi /* 80010C08 0000DB68 7C 64 1B 78 */ mr r4, r3 /* 80010C0C 0000DB6C 3C 04 00 01 */ addis r0, r4, 1 /* 80010C10 0000DB70 28 00 FF FF */ cmplwi r0, 0xffff /* 80010C14 0000DB74 41 82 00 10 */ beq lbl_80010C24 /* 80010C18 0000DB78 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80010C1C 0000DB7C 7F E3 FB 78 */ mr r3, r31 /* 80010C20 0000DB80 48 03 3C 15 */ bl ShowPausedHUDMemo__13CStateManagerFUif lbl_80010C24: /* 80010C24 0000DB84 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80010C28 0000DB88 80 63 00 00 */ lwz r3, 0(r3) /* 80010C2C 0000DB8C 93 A3 01 80 */ stw r29, 0x180(r3) /* 80010C30 0000DB90 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80010C34 0000DB94 80 63 00 00 */ lwz r3, 0(r3) /* 80010C38 0000DB98 93 C3 01 84 */ stw r30, 0x184(r3) lbl_80010C3C: /* 80010C3C 0000DB9C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80010C40 0000DBA0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80010C44 0000DBA4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80010C48 0000DBA8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80010C4C 0000DBAC 7C 08 03 A6 */ mtlr r0 /* 80010C50 0000DBB0 38 21 00 30 */ addi r1, r1, 0x30 /* 80010C54 0000DBB4 4E 80 00 20 */ blr .global GetAttachedActorStruggle__7CPlayerCFv GetAttachedActorStruggle__7CPlayerCFv: /* 80010C58 0000DBB8 C0 23 0A 28 */ lfs f1, 0xa28(r3) /* 80010C5C 0000DBBC 4E 80 00 20 */ blr .global StartSamusVoiceSfx__7CPlayerFUssi StartSamusVoiceSfx__7CPlayerFUssi: /* 80010C60 0000DBC0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80010C64 0000DBC4 7C 08 02 A6 */ mflr r0 /* 80010C68 0000DBC8 90 01 00 34 */ stw r0, 0x34(r1) /* 80010C6C 0000DBCC BF 61 00 1C */ stmw r27, 0x1c(r1) /* 80010C70 0000DBD0 7C 7B 1B 78 */ mr r27, r3 /* 80010C74 0000DBD4 7C 9C 23 78 */ mr r28, r4 /* 80010C78 0000DBD8 7C BD 2B 78 */ mr r29, r5 /* 80010C7C 0000DBDC 7C DE 33 78 */ mr r30, r6 /* 80010C80 0000DBE0 3B E0 00 01 */ li r31, 1 /* 80010C84 0000DBE4 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80010C88 0000DBE8 2C 00 00 01 */ cmpwi r0, 1 /* 80010C8C 0000DBEC 40 82 00 0C */ bne lbl_80010C98 /* 80010C90 0000DBF0 38 60 00 00 */ li r3, 0 /* 80010C94 0000DBF4 48 00 00 88 */ b lbl_80010D1C lbl_80010C98: /* 80010C98 0000DBF8 80 1B 07 7C */ lwz r0, 0x77c(r27) /* 80010C9C 0000DBFC 28 00 00 00 */ cmplwi r0, 0 /* 80010CA0 0000DC00 41 82 00 40 */ beq lbl_80010CE0 /* 80010CA4 0000DC04 80 1B 07 7C */ lwz r0, 0x77c(r27) /* 80010CA8 0000DC08 38 61 00 10 */ addi r3, r1, 0x10 /* 80010CAC 0000DC0C 90 01 00 10 */ stw r0, 0x10(r1) /* 80010CB0 0000DC10 48 2D 81 25 */ bl IsPlaying__11CSfxManagerF10CSfxHandle /* 80010CB4 0000DC14 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80010CB8 0000DC18 41 82 00 28 */ beq lbl_80010CE0 /* 80010CBC 0000DC1C 80 1B 07 80 */ lwz r0, 0x780(r27) /* 80010CC0 0000DC20 3B E0 00 00 */ li r31, 0 /* 80010CC4 0000DC24 7C 1E 00 00 */ cmpw r30, r0 /* 80010CC8 0000DC28 40 81 00 18 */ ble lbl_80010CE0 /* 80010CCC 0000DC2C 80 1B 07 7C */ lwz r0, 0x77c(r27) /* 80010CD0 0000DC30 38 61 00 0C */ addi r3, r1, 0xc /* 80010CD4 0000DC34 90 01 00 0C */ stw r0, 0xc(r1) /* 80010CD8 0000DC38 48 2D 90 71 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 80010CDC 0000DC3C 3B E0 00 01 */ li r31, 1 lbl_80010CE0: /* 80010CE0 0000DC40 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 80010CE4 0000DC44 41 82 00 34 */ beq lbl_80010D18 /* 80010CE8 0000DC48 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80010CEC 0000DC4C 7F 84 E3 78 */ mr r4, r28 /* 80010CF0 0000DC50 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80010CF4 0000DC54 7F A5 EB 78 */ mr r5, r29 /* 80010CF8 0000DC58 38 61 00 08 */ addi r3, r1, 8 /* 80010CFC 0000DC5C 38 C0 00 40 */ li r6, 0x40 /* 80010D00 0000DC60 38 E0 00 00 */ li r7, 0 /* 80010D04 0000DC64 39 20 00 00 */ li r9, 0 /* 80010D08 0000DC68 48 2D 90 6D */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80010D0C 0000DC6C 80 01 00 08 */ lwz r0, 8(r1) /* 80010D10 0000DC70 90 1B 07 7C */ stw r0, 0x77c(r27) /* 80010D14 0000DC74 93 DB 07 80 */ stw r30, 0x780(r27) lbl_80010D18: /* 80010D18 0000DC78 57 E3 06 3E */ clrlwi r3, r31, 0x18 lbl_80010D1C: /* 80010D1C 0000DC7C BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80010D20 0000DC80 80 01 00 34 */ lwz r0, 0x34(r1) /* 80010D24 0000DC84 7C 08 03 A6 */ mtlr r0 /* 80010D28 0000DC88 38 21 00 30 */ addi r1, r1, 0x30 /* 80010D2C 0000DC8C 4E 80 00 20 */ blr .global PostUpdate__7CPlayerFfR13CStateManager PostUpdate__7CPlayerFfR13CStateManager: /* 80010D30 0000DC90 94 21 FE B0 */ stwu r1, -0x150(r1) /* 80010D34 0000DC94 7C 08 02 A6 */ mflr r0 /* 80010D38 0000DC98 90 01 01 54 */ stw r0, 0x154(r1) /* 80010D3C 0000DC9C DB E1 01 40 */ stfd f31, 0x140(r1) /* 80010D40 0000DCA0 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 /* 80010D44 0000DCA4 DB C1 01 30 */ stfd f30, 0x130(r1) /* 80010D48 0000DCA8 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 /* 80010D4C 0000DCAC DB A1 01 20 */ stfd f29, 0x120(r1) /* 80010D50 0000DCB0 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 /* 80010D54 0000DCB4 93 E1 01 1C */ stw r31, 0x11c(r1) /* 80010D58 0000DCB8 93 C1 01 18 */ stw r30, 0x118(r1) /* 80010D5C 0000DCBC FF A0 08 90 */ fmr f29, f1 /* 80010D60 0000DCC0 7C 7E 1B 78 */ mr r30, r3 /* 80010D64 0000DCC4 7C 9F 23 78 */ mr r31, r4 /* 80010D68 0000DCC8 48 00 81 ED */ bl UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager /* 80010D6C 0000DCCC 80 1E 03 B8 */ lwz r0, 0x3b8(r30) /* 80010D70 0000DCD0 2C 00 00 03 */ cmpwi r0, 3 /* 80010D74 0000DCD4 41 82 00 0C */ beq lbl_80010D80 /* 80010D78 0000DCD8 C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) /* 80010D7C 0000DCDC 48 00 00 14 */ b lbl_80010D90 lbl_80010D80: /* 80010D80 0000DCE0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80010D84 0000DCE4 C0 3E 03 BC */ lfs f1, 0x3bc(r30) /* 80010D88 0000DCE8 C0 03 02 A8 */ lfs f0, 0x2a8(r3) /* 80010D8C 0000DCEC EF E1 00 24 */ fdivs f31, f1, f0 lbl_80010D90: /* 80010D90 0000DCF0 C3 C2 81 0C */ lfs f30, lbl_805A9E2C@sda21(r2) /* 80010D94 0000DCF4 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80010D98 0000DCF8 4B FF 9B 69 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80010D9C 0000DCFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80010DA0 0000DD00 41 82 00 F0 */ beq lbl_80010E90 /* 80010DA4 0000DD04 C0 2D 87 B8 */ lfs f1, lbl_805A7378@sda21(r13) /* 80010DA8 0000DD08 38 61 00 08 */ addi r3, r1, 8 /* 80010DAC 0000DD0C C0 4D 87 BC */ lfs f2, lbl_805A737C@sda21(r13) /* 80010DB0 0000DD10 48 30 34 51 */ bl __ct__9CVector2fFff /* 80010DB4 0000DD14 C0 2D 87 C0 */ lfs f1, lbl_805A7380@sda21(r13) /* 80010DB8 0000DD18 7C 65 1B 78 */ mr r5, r3 /* 80010DBC 0000DD1C 38 61 00 10 */ addi r3, r1, 0x10 /* 80010DC0 0000DD20 38 80 00 01 */ li r4, 1 /* 80010DC4 0000DD24 48 0D 94 8D */ bl __ct__16CPlayerCameraBobFQ216CPlayerCameraBob14ECameraBobTypeRC9CVector2ff /* 80010DC8 0000DD28 80 7E 07 6C */ lwz r3, 0x76c(r30) /* 80010DCC 0000DD2C 38 81 00 10 */ addi r4, r1, 0x10 /* 80010DD0 0000DD30 48 00 01 35 */ bl __ct__16CPlayerCameraBobFRC16CPlayerCameraBob /* 80010DD4 0000DD34 34 A1 00 C0 */ addic. r5, r1, 0xc0 /* 80010DD8 0000DD38 41 82 00 58 */ beq lbl_80010E30 /* 80010DDC 0000DD3C 80 C5 00 00 */ lwz r6, 0(r5) /* 80010DE0 0000DD40 38 60 00 00 */ li r3, 0 /* 80010DE4 0000DD44 2C 06 00 00 */ cmpwi r6, 0 /* 80010DE8 0000DD48 40 81 00 40 */ ble lbl_80010E28 /* 80010DEC 0000DD4C 2C 06 00 08 */ cmpwi r6, 8 /* 80010DF0 0000DD50 38 86 FF F8 */ addi r4, r6, -8 /* 80010DF4 0000DD54 40 81 00 20 */ ble lbl_80010E14 /* 80010DF8 0000DD58 38 04 00 07 */ addi r0, r4, 7 /* 80010DFC 0000DD5C 54 00 E8 FE */ srwi r0, r0, 3 /* 80010E00 0000DD60 7C 09 03 A6 */ mtctr r0 /* 80010E04 0000DD64 2C 04 00 00 */ cmpwi r4, 0 /* 80010E08 0000DD68 40 81 00 0C */ ble lbl_80010E14 lbl_80010E0C: /* 80010E0C 0000DD6C 38 63 00 08 */ addi r3, r3, 8 /* 80010E10 0000DD70 42 00 FF FC */ bdnz lbl_80010E0C lbl_80010E14: /* 80010E14 0000DD74 7C 03 30 50 */ subf r0, r3, r6 /* 80010E18 0000DD78 7C 09 03 A6 */ mtctr r0 /* 80010E1C 0000DD7C 7C 03 30 00 */ cmpw r3, r6 /* 80010E20 0000DD80 40 80 00 08 */ bge lbl_80010E28 lbl_80010E24: /* 80010E24 0000DD84 42 00 00 00 */ bdnz lbl_80010E24 lbl_80010E28: /* 80010E28 0000DD88 38 00 00 00 */ li r0, 0 /* 80010E2C 0000DD8C 90 05 00 00 */ stw r0, 0(r5) lbl_80010E30: /* 80010E30 0000DD90 34 A1 00 8C */ addic. r5, r1, 0x8c /* 80010E34 0000DD94 41 82 00 70 */ beq lbl_80010EA4 /* 80010E38 0000DD98 80 C5 00 00 */ lwz r6, 0(r5) /* 80010E3C 0000DD9C 38 60 00 00 */ li r3, 0 /* 80010E40 0000DDA0 2C 06 00 00 */ cmpwi r6, 0 /* 80010E44 0000DDA4 40 81 00 40 */ ble lbl_80010E84 /* 80010E48 0000DDA8 2C 06 00 08 */ cmpwi r6, 8 /* 80010E4C 0000DDAC 38 86 FF F8 */ addi r4, r6, -8 /* 80010E50 0000DDB0 40 81 00 20 */ ble lbl_80010E70 /* 80010E54 0000DDB4 38 04 00 07 */ addi r0, r4, 7 /* 80010E58 0000DDB8 54 00 E8 FE */ srwi r0, r0, 3 /* 80010E5C 0000DDBC 7C 09 03 A6 */ mtctr r0 /* 80010E60 0000DDC0 2C 04 00 00 */ cmpwi r4, 0 /* 80010E64 0000DDC4 40 81 00 0C */ ble lbl_80010E70 lbl_80010E68: /* 80010E68 0000DDC8 38 63 00 08 */ addi r3, r3, 8 /* 80010E6C 0000DDCC 42 00 FF FC */ bdnz lbl_80010E68 lbl_80010E70: /* 80010E70 0000DDD0 7C 03 30 50 */ subf r0, r3, r6 /* 80010E74 0000DDD4 7C 09 03 A6 */ mtctr r0 /* 80010E78 0000DDD8 7C 03 30 00 */ cmpw r3, r6 /* 80010E7C 0000DDDC 40 80 00 08 */ bge lbl_80010E84 lbl_80010E80: /* 80010E80 0000DDE0 42 00 00 00 */ bdnz lbl_80010E80 lbl_80010E84: /* 80010E84 0000DDE4 38 00 00 00 */ li r0, 0 /* 80010E88 0000DDE8 90 05 00 00 */ stw r0, 0(r5) /* 80010E8C 0000DDEC 48 00 00 18 */ b lbl_80010EA4 lbl_80010E90: /* 80010E90 0000DDF0 FC 20 E8 90 */ fmr f1, f29 /* 80010E94 0000DDF4 7F C3 F3 78 */ mr r3, r30 /* 80010E98 0000DDF8 7F E4 FB 78 */ mr r4, r31 /* 80010E9C 0000DDFC 48 27 31 75 */ bl UpdateCameraBob__7CPlayerFfR13CStateManager /* 80010EA0 0000DE00 FF C0 08 90 */ fmr f30, f1 lbl_80010EA4: /* 80010EA4 0000DE04 FC 20 F8 90 */ fmr f1, f31 /* 80010EA8 0000DE08 80 7E 04 90 */ lwz r3, 0x490(r30) /* 80010EAC 0000DE0C FC 40 F0 90 */ fmr f2, f30 /* 80010EB0 0000DE10 7F E4 FB 78 */ mr r4, r31 /* 80010EB4 0000DE14 FC 60 E8 90 */ fmr f3, f29 /* 80010EB8 0000DE18 48 02 FA 7D */ bl Update__10CPlayerGunFfffR13CStateManager /* 80010EBC 0000DE1C 7F C3 F3 78 */ mr r3, r30 /* 80010EC0 0000DE20 7F E4 FB 78 */ mr r4, r31 /* 80010EC4 0000DE24 48 16 DD 65 */ bl UpdateOrbitTarget__7CPlayerFR13CStateManager /* 80010EC8 0000DE28 7F C3 F3 78 */ mr r3, r30 /* 80010ECC 0000DE2C 7F E4 FB 78 */ mr r4, r31 /* 80010ED0 0000DE30 48 16 DB FD */ bl UpdateOrbitOrientation__7CPlayerFR13CStateManager /* 80010ED4 0000DE34 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 80010ED8 0000DE38 CB E1 01 40 */ lfd f31, 0x140(r1) /* 80010EDC 0000DE3C E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 /* 80010EE0 0000DE40 CB C1 01 30 */ lfd f30, 0x130(r1) /* 80010EE4 0000DE44 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 /* 80010EE8 0000DE48 CB A1 01 20 */ lfd f29, 0x120(r1) /* 80010EEC 0000DE4C 83 E1 01 1C */ lwz r31, 0x11c(r1) /* 80010EF0 0000DE50 80 01 01 54 */ lwz r0, 0x154(r1) /* 80010EF4 0000DE54 83 C1 01 18 */ lwz r30, 0x118(r1) /* 80010EF8 0000DE58 7C 08 03 A6 */ mtlr r0 /* 80010EFC 0000DE5C 38 21 01 50 */ addi r1, r1, 0x150 /* 80010F00 0000DE60 4E 80 00 20 */ blr .global __ct__16CPlayerCameraBobFRC16CPlayerCameraBob __ct__16CPlayerCameraBobFRC16CPlayerCameraBob: /* 80010F04 0000DE64 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80010F08 0000DE68 7C 08 02 A6 */ mflr r0 /* 80010F0C 0000DE6C 90 01 00 14 */ stw r0, 0x14(r1) /* 80010F10 0000DE70 93 E1 00 0C */ stw r31, 0xc(r1) /* 80010F14 0000DE74 7C 9F 23 78 */ mr r31, r4 /* 80010F18 0000DE78 93 C1 00 08 */ stw r30, 8(r1) /* 80010F1C 0000DE7C 7C 7E 1B 78 */ mr r30, r3 /* 80010F20 0000DE80 38 7E 00 2C */ addi r3, r30, 0x2c /* 80010F24 0000DE84 80 04 00 00 */ lwz r0, 0(r4) /* 80010F28 0000DE88 38 9F 00 2C */ addi r4, r31, 0x2c /* 80010F2C 0000DE8C 90 1E 00 00 */ stw r0, 0(r30) /* 80010F30 0000DE90 80 BF 00 04 */ lwz r5, 4(r31) /* 80010F34 0000DE94 80 1F 00 08 */ lwz r0, 8(r31) /* 80010F38 0000DE98 90 BE 00 04 */ stw r5, 4(r30) /* 80010F3C 0000DE9C 90 1E 00 08 */ stw r0, 8(r30) /* 80010F40 0000DEA0 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 80010F44 0000DEA4 D0 1E 00 0C */ stfs f0, 0xc(r30) /* 80010F48 0000DEA8 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 80010F4C 0000DEAC D0 1E 00 10 */ stfs f0, 0x10(r30) /* 80010F50 0000DEB0 C0 1F 00 14 */ lfs f0, 0x14(r31) /* 80010F54 0000DEB4 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 80010F58 0000DEB8 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 80010F5C 0000DEBC D0 1E 00 18 */ stfs f0, 0x18(r30) /* 80010F60 0000DEC0 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 80010F64 0000DEC4 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 80010F68 0000DEC8 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80010F6C 0000DECC 90 1E 00 20 */ stw r0, 0x20(r30) /* 80010F70 0000DED0 80 1F 00 24 */ lwz r0, 0x24(r31) /* 80010F74 0000DED4 90 1E 00 24 */ stw r0, 0x24(r30) /* 80010F78 0000DED8 88 1F 00 28 */ lbz r0, 0x28(r31) /* 80010F7C 0000DEDC 98 1E 00 28 */ stb r0, 0x28(r30) /* 80010F80 0000DEE0 88 1F 00 29 */ lbz r0, 0x29(r31) /* 80010F84 0000DEE4 98 1E 00 29 */ stb r0, 0x29(r30) /* 80010F88 0000DEE8 48 30 1B B9 */ bl __as__12CTransform4fFRC12CTransform4f /* 80010F8C 0000DEEC 80 BF 00 5C */ lwz r5, 0x5c(r31) /* 80010F90 0000DEF0 38 7E 00 7C */ addi r3, r30, 0x7c /* 80010F94 0000DEF4 80 9F 00 60 */ lwz r4, 0x60(r31) /* 80010F98 0000DEF8 38 1F 00 7C */ addi r0, r31, 0x7c /* 80010F9C 0000DEFC 7C 03 00 40 */ cmplw r3, r0 /* 80010FA0 0000DF00 90 BE 00 5C */ stw r5, 0x5c(r30) /* 80010FA4 0000DF04 90 9E 00 60 */ stw r4, 0x60(r30) /* 80010FA8 0000DF08 80 1F 00 64 */ lwz r0, 0x64(r31) /* 80010FAC 0000DF0C 90 1E 00 64 */ stw r0, 0x64(r30) /* 80010FB0 0000DF10 C0 1F 00 68 */ lfs f0, 0x68(r31) /* 80010FB4 0000DF14 D0 1E 00 68 */ stfs f0, 0x68(r30) /* 80010FB8 0000DF18 C0 1F 00 6C */ lfs f0, 0x6c(r31) /* 80010FBC 0000DF1C D0 1E 00 6C */ stfs f0, 0x6c(r30) /* 80010FC0 0000DF20 C0 1F 00 70 */ lfs f0, 0x70(r31) /* 80010FC4 0000DF24 D0 1E 00 70 */ stfs f0, 0x70(r30) /* 80010FC8 0000DF28 C0 1F 00 74 */ lfs f0, 0x74(r31) /* 80010FCC 0000DF2C D0 1E 00 74 */ stfs f0, 0x74(r30) /* 80010FD0 0000DF30 C0 1F 00 78 */ lfs f0, 0x78(r31) /* 80010FD4 0000DF34 D0 1E 00 78 */ stfs f0, 0x78(r30) /* 80010FD8 0000DF38 41 82 00 A8 */ beq lbl_80011080 /* 80010FDC 0000DF3C 80 BE 00 7C */ lwz r5, 0x7c(r30) /* 80010FE0 0000DF40 38 DE 00 80 */ addi r6, r30, 0x80 /* 80010FE4 0000DF44 38 60 00 00 */ li r3, 0 /* 80010FE8 0000DF48 2C 05 00 00 */ cmpwi r5, 0 /* 80010FEC 0000DF4C 40 81 00 40 */ ble lbl_8001102C /* 80010FF0 0000DF50 2C 05 00 08 */ cmpwi r5, 8 /* 80010FF4 0000DF54 38 85 FF F8 */ addi r4, r5, -8 /* 80010FF8 0000DF58 40 81 00 20 */ ble lbl_80011018 /* 80010FFC 0000DF5C 38 04 00 07 */ addi r0, r4, 7 /* 80011000 0000DF60 54 00 E8 FE */ srwi r0, r0, 3 /* 80011004 0000DF64 7C 09 03 A6 */ mtctr r0 /* 80011008 0000DF68 2C 04 00 00 */ cmpwi r4, 0 /* 8001100C 0000DF6C 40 81 00 0C */ ble lbl_80011018 lbl_80011010: /* 80011010 0000DF70 38 63 00 08 */ addi r3, r3, 8 /* 80011014 0000DF74 42 00 FF FC */ bdnz lbl_80011010 lbl_80011018: /* 80011018 0000DF78 7C 03 28 50 */ subf r0, r3, r5 /* 8001101C 0000DF7C 7C 09 03 A6 */ mtctr r0 /* 80011020 0000DF80 7C 03 28 00 */ cmpw r3, r5 /* 80011024 0000DF84 40 80 00 08 */ bge lbl_8001102C lbl_80011028: /* 80011028 0000DF88 42 00 00 00 */ bdnz lbl_80011028 lbl_8001102C: /* 8001102C 0000DF8C 38 00 00 00 */ li r0, 0 /* 80011030 0000DF90 38 7F 00 80 */ addi r3, r31, 0x80 /* 80011034 0000DF94 90 1E 00 7C */ stw r0, 0x7c(r30) /* 80011038 0000DF98 80 1F 00 7C */ lwz r0, 0x7c(r31) /* 8001103C 0000DF9C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80011040 0000DFA0 7C 03 02 14 */ add r0, r3, r0 /* 80011044 0000DFA4 48 00 00 2C */ b lbl_80011070 lbl_80011048: /* 80011048 0000DFA8 28 06 00 00 */ cmplwi r6, 0 /* 8001104C 0000DFAC 41 82 00 1C */ beq lbl_80011068 /* 80011050 0000DFB0 C0 03 00 00 */ lfs f0, 0(r3) /* 80011054 0000DFB4 D0 06 00 00 */ stfs f0, 0(r6) /* 80011058 0000DFB8 C0 03 00 04 */ lfs f0, 4(r3) /* 8001105C 0000DFBC D0 06 00 04 */ stfs f0, 4(r6) /* 80011060 0000DFC0 C0 03 00 08 */ lfs f0, 8(r3) /* 80011064 0000DFC4 D0 06 00 08 */ stfs f0, 8(r6) lbl_80011068: /* 80011068 0000DFC8 38 C6 00 0C */ addi r6, r6, 0xc /* 8001106C 0000DFCC 38 63 00 0C */ addi r3, r3, 0xc lbl_80011070: /* 80011070 0000DFD0 7C 03 00 40 */ cmplw r3, r0 /* 80011074 0000DFD4 40 82 FF D4 */ bne lbl_80011048 /* 80011078 0000DFD8 80 1F 00 7C */ lwz r0, 0x7c(r31) /* 8001107C 0000DFDC 90 1E 00 7C */ stw r0, 0x7c(r30) lbl_80011080: /* 80011080 0000DFE0 38 7E 00 B0 */ addi r3, r30, 0xb0 /* 80011084 0000DFE4 38 1F 00 B0 */ addi r0, r31, 0xb0 /* 80011088 0000DFE8 7C 03 00 40 */ cmplw r3, r0 /* 8001108C 0000DFEC 41 82 00 98 */ beq lbl_80011124 /* 80011090 0000DFF0 80 BE 00 B0 */ lwz r5, 0xb0(r30) /* 80011094 0000DFF4 38 DE 00 B4 */ addi r6, r30, 0xb4 /* 80011098 0000DFF8 38 60 00 00 */ li r3, 0 /* 8001109C 0000DFFC 2C 05 00 00 */ cmpwi r5, 0 /* 800110A0 0000E000 40 81 00 40 */ ble lbl_800110E0 /* 800110A4 0000E004 2C 05 00 08 */ cmpwi r5, 8 /* 800110A8 0000E008 38 85 FF F8 */ addi r4, r5, -8 /* 800110AC 0000E00C 40 81 00 20 */ ble lbl_800110CC /* 800110B0 0000E010 38 04 00 07 */ addi r0, r4, 7 /* 800110B4 0000E014 54 00 E8 FE */ srwi r0, r0, 3 /* 800110B8 0000E018 7C 09 03 A6 */ mtctr r0 /* 800110BC 0000E01C 2C 04 00 00 */ cmpwi r4, 0 /* 800110C0 0000E020 40 81 00 0C */ ble lbl_800110CC lbl_800110C4: /* 800110C4 0000E024 38 63 00 08 */ addi r3, r3, 8 /* 800110C8 0000E028 42 00 FF FC */ bdnz lbl_800110C4 lbl_800110CC: /* 800110CC 0000E02C 7C 03 28 50 */ subf r0, r3, r5 /* 800110D0 0000E030 7C 09 03 A6 */ mtctr r0 /* 800110D4 0000E034 7C 03 28 00 */ cmpw r3, r5 /* 800110D8 0000E038 40 80 00 08 */ bge lbl_800110E0 lbl_800110DC: /* 800110DC 0000E03C 42 00 00 00 */ bdnz lbl_800110DC lbl_800110E0: /* 800110E0 0000E040 38 00 00 00 */ li r0, 0 /* 800110E4 0000E044 38 7F 00 B4 */ addi r3, r31, 0xb4 /* 800110E8 0000E048 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 800110EC 0000E04C 80 1F 00 B0 */ lwz r0, 0xb0(r31) /* 800110F0 0000E050 54 00 10 3A */ slwi r0, r0, 2 /* 800110F4 0000E054 7C 03 02 14 */ add r0, r3, r0 /* 800110F8 0000E058 48 00 00 1C */ b lbl_80011114 lbl_800110FC: /* 800110FC 0000E05C 28 06 00 00 */ cmplwi r6, 0 /* 80011100 0000E060 41 82 00 0C */ beq lbl_8001110C /* 80011104 0000E064 C0 03 00 00 */ lfs f0, 0(r3) /* 80011108 0000E068 D0 06 00 00 */ stfs f0, 0(r6) lbl_8001110C: /* 8001110C 0000E06C 38 C6 00 04 */ addi r6, r6, 4 /* 80011110 0000E070 38 63 00 04 */ addi r3, r3, 4 lbl_80011114: /* 80011114 0000E074 7C 03 00 40 */ cmplw r3, r0 /* 80011118 0000E078 40 82 FF E4 */ bne lbl_800110FC /* 8001111C 0000E07C 80 1F 00 B0 */ lwz r0, 0xb0(r31) /* 80011120 0000E080 90 1E 00 B0 */ stw r0, 0xb0(r30) lbl_80011124: /* 80011124 0000E084 C0 1F 00 C4 */ lfs f0, 0xc4(r31) /* 80011128 0000E088 38 7E 00 D0 */ addi r3, r30, 0xd0 /* 8001112C 0000E08C 38 9F 00 D0 */ addi r4, r31, 0xd0 /* 80011130 0000E090 D0 1E 00 C4 */ stfs f0, 0xc4(r30) /* 80011134 0000E094 C0 1F 00 C8 */ lfs f0, 0xc8(r31) /* 80011138 0000E098 D0 1E 00 C8 */ stfs f0, 0xc8(r30) /* 8001113C 0000E09C 80 1F 00 CC */ lwz r0, 0xcc(r31) /* 80011140 0000E0A0 90 1E 00 CC */ stw r0, 0xcc(r30) /* 80011144 0000E0A4 48 30 19 FD */ bl __as__12CTransform4fFRC12CTransform4f /* 80011148 0000E0A8 C0 1F 01 00 */ lfs f0, 0x100(r31) /* 8001114C 0000E0AC 7F C3 F3 78 */ mr r3, r30 /* 80011150 0000E0B0 D0 1E 01 00 */ stfs f0, 0x100(r30) /* 80011154 0000E0B4 C0 1F 01 04 */ lfs f0, 0x104(r31) /* 80011158 0000E0B8 D0 1E 01 04 */ stfs f0, 0x104(r30) /* 8001115C 0000E0BC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80011160 0000E0C0 83 C1 00 08 */ lwz r30, 8(r1) /* 80011164 0000E0C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80011168 0000E0C8 7C 08 03 A6 */ mtlr r0 /* 8001116C 0000E0CC 38 21 00 10 */ addi r1, r1, 0x10 /* 80011170 0000E0D0 4E 80 00 20 */ blr .global SetPlayerHitWallDuringMove__7CPlayerFv SetPlayerHitWallDuringMove__7CPlayerFv: /* 80011174 0000E0D4 88 03 09 C5 */ lbz r0, 0x9c5(r3) /* 80011178 0000E0D8 38 80 00 01 */ li r4, 1 /* 8001117C 0000E0DC 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d /* 80011180 0000E0E0 98 03 09 C5 */ stb r0, 0x9c5(r3) /* 80011184 0000E0E4 90 83 02 D0 */ stw r4, 0x2d0(r3) /* 80011188 0000E0E8 4E 80 00 20 */ blr .global ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle: /* 8001118C 0000E0EC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80011190 0000E0F0 7C 08 02 A6 */ mflr r0 /* 80011194 0000E0F4 90 01 00 24 */ stw r0, 0x24(r1) /* 80011198 0000E0F8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8001119C 0000E0FC 7C 9F 23 78 */ mr r31, r4 /* 800111A0 0000E100 48 27 3E 6D */ bl CheckSubmerged__7CPlayerCFv /* 800111A4 0000E104 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800111A8 0000E108 41 82 00 18 */ beq lbl_800111C0 /* 800111AC 0000E10C 80 1F 00 00 */ lwz r0, 0(r31) /* 800111B0 0000E110 38 61 00 08 */ addi r3, r1, 8 /* 800111B4 0000E114 38 80 00 00 */ li r4, 0 /* 800111B8 0000E118 90 01 00 08 */ stw r0, 8(r1) /* 800111BC 0000E11C 48 2D 7C F1 */ bl PitchBend__11CSfxManagerF10CSfxHandlei lbl_800111C0: /* 800111C0 0000E120 80 01 00 24 */ lwz r0, 0x24(r1) /* 800111C4 0000E124 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800111C8 0000E128 7C 08 03 A6 */ mtlr r0 /* 800111CC 0000E12C 38 21 00 20 */ addi r1, r1, 0x20 /* 800111D0 0000E130 4E 80 00 20 */ blr .global UpdatePhazonDamage__7CPlayerFfR13CStateManager UpdatePhazonDamage__7CPlayerFfR13CStateManager: /* 800111D4 0000E134 94 21 F5 D0 */ stwu r1, -0xa30(r1) /* 800111D8 0000E138 7C 08 02 A6 */ mflr r0 /* 800111DC 0000E13C 90 01 0A 34 */ stw r0, 0xa34(r1) /* 800111E0 0000E140 DB E1 0A 20 */ stfd f31, 0xa20(r1) /* 800111E4 0000E144 F3 E1 0A 28 */ psq_st f31, -1496(r1), 0, qr0 /* 800111E8 0000E148 DB C1 0A 10 */ stfd f30, 0xa10(r1) /* 800111EC 0000E14C F3 C1 0A 18 */ psq_st f30, -1512(r1), 0, qr0 /* 800111F0 0000E150 DB A1 0A 00 */ stfd f29, 0xa00(r1) /* 800111F4 0000E154 F3 A1 0A 08 */ psq_st f29, -1528(r1), 0, qr0 /* 800111F8 0000E158 DB 81 09 F0 */ stfd f28, 0x9f0(r1) /* 800111FC 0000E15C F3 81 09 F8 */ psq_st f28, -1544(r1), 0, qr0 /* 80011200 0000E160 BE E1 09 CC */ stmw r23, 0x9cc(r1) /* 80011204 0000E164 7C 7E 1B 78 */ mr r30, r3 /* 80011208 0000E168 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8001120C 0000E16C 80 C3 00 04 */ lwz r6, 4(r3) /* 80011210 0000E170 FF 80 08 90 */ fmr f28, f1 /* 80011214 0000E174 7C 9F 23 78 */ mr r31, r4 /* 80011218 0000E178 7C 06 00 00 */ cmpw r6, r0 /* 8001121C 0000E17C 90 C1 00 30 */ stw r6, 0x30(r1) /* 80011220 0000E180 41 82 04 F8 */ beq lbl_80011718 /* 80011224 0000E184 80 BF 08 50 */ lwz r5, 0x850(r31) /* 80011228 0000E188 54 C3 18 38 */ slwi r3, r6, 3 /* 8001122C 0000E18C 38 83 00 04 */ addi r4, r3, 4 /* 80011230 0000E190 90 C1 00 2C */ stw r6, 0x2c(r1) /* 80011234 0000E194 80 A5 00 20 */ lwz r5, 0x20(r5) /* 80011238 0000E198 7C 65 20 2E */ lwzx r3, r5, r4 /* 8001123C 0000E19C 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 80011240 0000E1A0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80011244 0000E1A4 40 82 00 08 */ bne lbl_8001124C /* 80011248 0000E1A8 48 00 04 D0 */ b lbl_80011718 lbl_8001124C: /* 8001124C 0000E1AC 7C 65 20 2E */ lwzx r3, r5, r4 /* 80011250 0000E1B0 3B 40 00 00 */ li r26, 0 /* 80011254 0000E1B4 90 C1 00 24 */ stw r6, 0x24(r1) /* 80011258 0000E1B8 80 63 01 2C */ lwz r3, 0x12c(r3) /* 8001125C 0000E1BC 90 C1 00 28 */ stw r6, 0x28(r1) /* 80011260 0000E1C0 80 63 10 D8 */ lwz r3, 0x10d8(r3) /* 80011264 0000E1C4 28 03 00 00 */ cmplwi r3, 0 /* 80011268 0000E1C8 41 82 00 0C */ beq lbl_80011274 /* 8001126C 0000E1CC 83 23 00 50 */ lwz r25, 0x50(r3) /* 80011270 0000E1D0 48 00 00 08 */ b lbl_80011278 lbl_80011274: /* 80011274 0000E1D4 3B 20 00 00 */ li r25, 0 lbl_80011278: /* 80011278 0000E1D8 2C 19 00 02 */ cmpwi r25, 2 /* 8001127C 0000E1DC 41 82 00 24 */ beq lbl_800112A0 /* 80011280 0000E1E0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80011284 0000E1E4 38 80 00 17 */ li r4, 0x17 /* 80011288 0000E1E8 80 63 00 00 */ lwz r3, 0(r3) /* 8001128C 0000E1EC 48 08 08 35 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80011290 0000E1F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80011294 0000E1F4 40 82 02 C8 */ bne lbl_8001155C /* 80011298 0000E1F8 2C 19 00 01 */ cmpwi r25, 1 /* 8001129C 0000E1FC 40 82 02 C0 */ bne lbl_8001155C lbl_800112A0: /* 800112A0 0000E200 80 AD 81 00 */ lwz r5, lbl_805A6CC0@sda21(r13) /* 800112A4 0000E204 38 60 00 00 */ li r3, 0 /* 800112A8 0000E208 38 80 00 01 */ li r4, 1 /* 800112AC 0000E20C 48 37 8C 49 */ bl __shl2i /* 800112B0 0000E210 38 A0 00 01 */ li r5, 1 /* 800112B4 0000E214 38 C0 00 00 */ li r6, 0 /* 800112B8 0000E218 90 81 01 04 */ stw r4, 0x104(r1) /* 800112BC 0000E21C 90 61 01 00 */ stw r3, 0x100(r1) /* 800112C0 0000E220 90 C1 01 0C */ stw r6, 0x10c(r1) /* 800112C4 0000E224 90 C1 01 08 */ stw r6, 0x108(r1) /* 800112C8 0000E228 90 A1 01 10 */ stw r5, 0x110(r1) /* 800112CC 0000E22C 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 800112D0 0000E230 90 A1 00 B8 */ stw r5, 0xb8(r1) /* 800112D4 0000E234 2C 00 00 01 */ cmpwi r0, 1 /* 800112D8 0000E238 40 82 00 20 */ bne lbl_800112F8 /* 800112DC 0000E23C 80 7E 07 68 */ lwz r3, 0x768(r30) /* 800112E0 0000E240 7F E4 FB 78 */ mr r4, r31 /* 800112E4 0000E244 C0 22 81 18 */ lfs f1, lbl_805A9E38@sda21(r2) /* 800112E8 0000E248 38 A1 01 00 */ addi r5, r1, 0x100 /* 800112EC 0000E24C 48 0E 02 79 */ bl BallCloseToCollision__10CMorphBallCFRC13CStateManagerfRC15CMaterialFilter /* 800112F0 0000E250 7C 7A 1B 78 */ mr r26, r3 /* 800112F4 0000E254 48 00 02 68 */ b lbl_8001155C lbl_800112F8: /* 800112F8 0000E258 80 AD 81 04 */ lwz r5, lbl_805A6CC4@sda21(r13) /* 800112FC 0000E25C 38 60 00 00 */ li r3, 0 /* 80011300 0000E260 90 C1 00 4C */ stw r6, 0x4c(r1) /* 80011304 0000E264 38 80 00 01 */ li r4, 1 /* 80011308 0000E268 90 C1 00 48 */ stw r6, 0x48(r1) /* 8001130C 0000E26C 48 37 8B E9 */ bl __shl2i /* 80011310 0000E270 80 01 00 48 */ lwz r0, 0x48(r1) /* 80011314 0000E274 80 C1 00 4C */ lwz r6, 0x4c(r1) /* 80011318 0000E278 7C 00 1B 78 */ or r0, r0, r3 /* 8001131C 0000E27C 80 AD 81 08 */ lwz r5, lbl_805A6CC8@sda21(r13) /* 80011320 0000E280 7C C4 23 78 */ or r4, r6, r4 /* 80011324 0000E284 90 01 00 48 */ stw r0, 0x48(r1) /* 80011328 0000E288 38 60 00 00 */ li r3, 0 /* 8001132C 0000E28C 90 81 00 4C */ stw r4, 0x4c(r1) /* 80011330 0000E290 38 80 00 01 */ li r4, 1 /* 80011334 0000E294 48 37 8B C1 */ bl __shl2i /* 80011338 0000E298 80 01 00 48 */ lwz r0, 0x48(r1) /* 8001133C 0000E29C 80 A1 00 4C */ lwz r5, 0x4c(r1) /* 80011340 0000E2A0 7C 00 1B 78 */ or r0, r0, r3 /* 80011344 0000E2A4 7F C3 F3 78 */ mr r3, r30 /* 80011348 0000E2A8 7C A4 23 78 */ or r4, r5, r4 /* 8001134C 0000E2AC 90 01 00 48 */ stw r0, 0x48(r1) /* 80011350 0000E2B0 90 81 00 4C */ stw r4, 0x4c(r1) /* 80011354 0000E2B4 81 9E 00 00 */ lwz r12, 0(r30) /* 80011358 0000E2B8 81 8C 00 6C */ lwz r12, 0x6c(r12) /* 8001135C 0000E2BC 7D 89 03 A6 */ mtctr r12 /* 80011360 0000E2C0 4E 80 04 21 */ bctrl /* 80011364 0000E2C4 7C 64 1B 78 */ mr r4, r3 /* 80011368 0000E2C8 38 61 00 90 */ addi r3, r1, 0x90 /* 8001136C 0000E2CC 81 84 00 00 */ lwz r12, 0(r4) /* 80011370 0000E2D0 38 BE 00 34 */ addi r5, r30, 0x34 /* 80011374 0000E2D4 81 8C 00 14 */ lwz r12, 0x14(r12) /* 80011378 0000E2D8 7D 89 03 A6 */ mtctr r12 /* 8001137C 0000E2DC 4E 80 04 21 */ bctrl /* 80011380 0000E2E0 38 61 00 50 */ addi r3, r1, 0x50 /* 80011384 0000E2E4 38 81 00 90 */ addi r4, r1, 0x90 /* 80011388 0000E2E8 48 32 62 85 */ bl GetCenterPoint__6CAABoxCFv /* 8001138C 0000E2EC C3 E1 00 50 */ lfs f31, 0x50(r1) /* 80011390 0000E2F0 38 61 00 E0 */ addi r3, r1, 0xe0 /* 80011394 0000E2F4 C3 C1 00 54 */ lfs f30, 0x54(r1) /* 80011398 0000E2F8 38 81 00 48 */ addi r4, r1, 0x48 /* 8001139C 0000E2FC C3 A1 00 58 */ lfs f29, 0x58(r1) /* 800113A0 0000E300 48 2B E5 15 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList /* 800113A4 0000E304 C0 02 81 1C */ lfs f0, lbl_805A9E3C@sda21(r2) /* 800113A8 0000E308 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha /* 800113AC 0000E30C 38 63 CA F8 */ addi r3, r3, lbl_803ECAF8@l /* 800113B0 0000E310 38 00 00 00 */ li r0, 0 /* 800113B4 0000E314 90 61 00 E0 */ stw r3, 0xe0(r1) /* 800113B8 0000E318 38 61 00 78 */ addi r3, r1, 0x78 /* 800113BC 0000E31C 38 81 00 E0 */ addi r4, r1, 0xe0 /* 800113C0 0000E320 D3 E1 00 F0 */ stfs f31, 0xf0(r1) /* 800113C4 0000E324 D3 C1 00 F4 */ stfs f30, 0xf4(r1) /* 800113C8 0000E328 D3 A1 00 F8 */ stfs f29, 0xf8(r1) /* 800113CC 0000E32C D0 01 00 FC */ stfs f0, 0xfc(r1) /* 800113D0 0000E330 90 01 01 B8 */ stw r0, 0x1b8(r1) /* 800113D4 0000E334 48 2C 2F F9 */ bl CalculateLocalAABox__17CCollidableSphereCFv /* 800113D8 0000E338 7F E3 FB 78 */ mr r3, r31 /* 800113DC 0000E33C 7F C5 F3 78 */ mr r5, r30 /* 800113E0 0000E340 38 81 01 B8 */ addi r4, r1, 0x1b8 /* 800113E4 0000E344 38 C1 00 78 */ addi r6, r1, 0x78 /* 800113E8 0000E348 48 03 B3 15 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" /* 800113EC 0000E34C 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha /* 800113F0 0000E350 7F E3 FB 78 */ mr r3, r31 /* 800113F4 0000E354 38 A4 66 70 */ addi r5, r4, sIdentity__12CTransform4f@l /* 800113F8 0000E358 38 C1 01 00 */ addi r6, r1, 0x100 /* 800113FC 0000E35C 38 81 00 E0 */ addi r4, r1, 0xe0 /* 80011400 0000E360 48 17 1F A1 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter /* 80011404 0000E364 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80011408 0000E368 41 82 00 0C */ beq lbl_80011414 /* 8001140C 0000E36C 3B 40 00 01 */ li r26, 1 /* 80011410 0000E370 48 00 00 E0 */ b lbl_800114F0 lbl_80011414: /* 80011414 0000E374 3B 61 01 BC */ addi r27, r1, 0x1bc /* 80011418 0000E378 3B A1 01 50 */ addi r29, r1, 0x150 /* 8001141C 0000E37C 7F 78 DB 78 */ mr r24, r27 /* 80011420 0000E380 3B 81 01 88 */ addi r28, r1, 0x188 /* 80011424 0000E384 48 00 00 B8 */ b lbl_800114DC lbl_80011428: /* 80011428 0000E388 A0 18 00 00 */ lhz r0, 0(r24) /* 8001142C 0000E38C 7F E3 FB 78 */ mr r3, r31 /* 80011430 0000E390 38 81 00 1C */ addi r4, r1, 0x1c /* 80011434 0000E394 B0 01 00 1C */ sth r0, 0x1c(r1) /* 80011438 0000E398 48 03 B1 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 8001143C 0000E39C 7C 64 1B 78 */ mr r4, r3 /* 80011440 0000E3A0 38 61 00 34 */ addi r3, r1, 0x34 /* 80011444 0000E3A4 48 09 B2 A1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" /* 80011448 0000E3A8 82 E3 00 04 */ lwz r23, 4(r3) /* 8001144C 0000E3AC 28 17 00 00 */ cmplwi r23, 0 /* 80011450 0000E3B0 41 82 00 88 */ beq lbl_800114D8 /* 80011454 0000E3B4 7E E4 BB 78 */ mr r4, r23 /* 80011458 0000E3B8 38 61 01 18 */ addi r3, r1, 0x118 /* 8001145C 0000E3BC 81 97 00 00 */ lwz r12, 0(r23) /* 80011460 0000E3C0 81 8C 00 70 */ lwz r12, 0x70(r12) /* 80011464 0000E3C4 7D 89 03 A6 */ mtctr r12 /* 80011468 0000E3C8 4E 80 04 21 */ bctrl /* 8001146C 0000E3CC 7E E3 BB 78 */ mr r3, r23 /* 80011470 0000E3D0 81 97 00 00 */ lwz r12, 0(r23) /* 80011474 0000E3D4 81 8C 00 6C */ lwz r12, 0x6c(r12) /* 80011478 0000E3D8 7D 89 03 A6 */ mtctr r12 /* 8001147C 0000E3DC 4E 80 04 21 */ bctrl /* 80011480 0000E3E0 3C 80 80 5A */ lis r4, skPassEverything__15CMaterialFilter@ha /* 80011484 0000E3E4 90 61 01 48 */ stw r3, 0x148(r1) /* 80011488 0000E3E8 38 04 FD 18 */ addi r0, r4, skPassEverything__15CMaterialFilter@l /* 8001148C 0000E3EC 7F A3 EB 78 */ mr r3, r29 /* 80011490 0000E3F0 90 01 01 4C */ stw r0, 0x14c(r1) /* 80011494 0000E3F4 38 81 01 18 */ addi r4, r1, 0x118 /* 80011498 0000E3F8 48 30 16 DD */ bl __ct__12CTransform4fFRC12CTransform4f /* 8001149C 0000E3FC 38 81 00 E0 */ addi r4, r1, 0xe0 /* 800114A0 0000E400 38 01 01 00 */ addi r0, r1, 0x100 /* 800114A4 0000E404 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 800114A8 0000E408 90 81 01 80 */ stw r4, 0x180(r1) /* 800114AC 0000E40C 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 800114B0 0000E410 90 01 01 84 */ stw r0, 0x184(r1) /* 800114B4 0000E414 7F 83 E3 78 */ mr r3, r28 /* 800114B8 0000E418 48 30 16 BD */ bl __ct__12CTransform4fFRC12CTransform4f /* 800114BC 0000E41C 38 61 01 80 */ addi r3, r1, 0x180 /* 800114C0 0000E420 38 81 01 48 */ addi r4, r1, 0x148 /* 800114C4 0000E424 48 2B D3 69 */ bl CollideBoolean__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDesc /* 800114C8 0000E428 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800114CC 0000E42C 41 82 00 0C */ beq lbl_800114D8 /* 800114D0 0000E430 3B 40 00 01 */ li r26, 1 /* 800114D4 0000E434 48 00 00 1C */ b lbl_800114F0 lbl_800114D8: /* 800114D8 0000E438 3B 18 00 02 */ addi r24, r24, 2 lbl_800114DC: /* 800114DC 0000E43C 80 01 01 B8 */ lwz r0, 0x1b8(r1) /* 800114E0 0000E440 54 00 08 3C */ slwi r0, r0, 1 /* 800114E4 0000E444 7C 1B 02 14 */ add r0, r27, r0 /* 800114E8 0000E448 7C 18 00 40 */ cmplw r24, r0 /* 800114EC 0000E44C 40 82 FF 3C */ bne lbl_80011428 lbl_800114F0: /* 800114F0 0000E450 80 A1 01 B8 */ lwz r5, 0x1b8(r1) /* 800114F4 0000E454 38 60 00 00 */ li r3, 0 /* 800114F8 0000E458 2C 05 00 00 */ cmpwi r5, 0 /* 800114FC 0000E45C 40 81 00 40 */ ble lbl_8001153C /* 80011500 0000E460 2C 05 00 08 */ cmpwi r5, 8 /* 80011504 0000E464 38 85 FF F8 */ addi r4, r5, -8 /* 80011508 0000E468 40 81 00 20 */ ble lbl_80011528 /* 8001150C 0000E46C 38 04 00 07 */ addi r0, r4, 7 /* 80011510 0000E470 54 00 E8 FE */ srwi r0, r0, 3 /* 80011514 0000E474 7C 09 03 A6 */ mtctr r0 /* 80011518 0000E478 2C 04 00 00 */ cmpwi r4, 0 /* 8001151C 0000E47C 40 81 00 0C */ ble lbl_80011528 lbl_80011520: /* 80011520 0000E480 38 63 00 08 */ addi r3, r3, 8 /* 80011524 0000E484 42 00 FF FC */ bdnz lbl_80011520 lbl_80011528: /* 80011528 0000E488 7C 03 28 50 */ subf r0, r3, r5 /* 8001152C 0000E48C 7C 09 03 A6 */ mtctr r0 /* 80011530 0000E490 7C 03 28 00 */ cmpw r3, r5 /* 80011534 0000E494 40 80 00 08 */ bge lbl_8001153C lbl_80011538: /* 80011538 0000E498 42 00 00 00 */ bdnz lbl_80011538 lbl_8001153C: /* 8001153C 0000E49C 3C 80 80 3F */ lis r4, lbl_803ECAF8@ha /* 80011540 0000E4A0 3C 60 80 3E */ lis r3, lbl_803D97E4@ha /* 80011544 0000E4A4 38 04 CA F8 */ addi r0, r4, lbl_803ECAF8@l /* 80011548 0000E4A8 38 80 00 00 */ li r4, 0 /* 8001154C 0000E4AC 90 01 00 E0 */ stw r0, 0xe0(r1) /* 80011550 0000E4B0 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l /* 80011554 0000E4B4 90 81 01 B8 */ stw r4, 0x1b8(r1) /* 80011558 0000E4B8 90 01 00 E0 */ stw r0, 0xe0(r1) lbl_8001155C: /* 8001155C 0000E4BC 57 40 06 3F */ clrlwi. r0, r26, 0x18 /* 80011560 0000E4C0 41 82 01 34 */ beq lbl_80011694 /* 80011564 0000E4C4 C0 1E 0A 18 */ lfs f0, 0xa18(r30) /* 80011568 0000E4C8 EC 00 E0 2A */ fadds f0, f0, f28 /* 8001156C 0000E4CC D0 1E 0A 18 */ stfs f0, 0xa18(r30) /* 80011570 0000E4D0 C0 3E 0A 18 */ lfs f1, 0xa18(r30) /* 80011574 0000E4D4 C0 02 81 10 */ lfs f0, lbl_805A9E30@sda21(r2) /* 80011578 0000E4D8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001157C 0000E4DC 40 80 00 0C */ bge lbl_80011588 /* 80011580 0000E4E0 38 7E 0A 18 */ addi r3, r30, 0xa18 /* 80011584 0000E4E4 48 00 00 08 */ b lbl_8001158C lbl_80011588: /* 80011588 0000E4E8 38 62 81 10 */ addi r3, r2, lbl_805A9E30@sda21 lbl_8001158C: /* 8001158C 0000E4EC C0 23 00 00 */ lfs f1, 0(r3) /* 80011590 0000E4F0 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) /* 80011594 0000E4F4 D0 3E 0A 18 */ stfs f1, 0xa18(r30) /* 80011598 0000E4F8 C0 3E 0A 18 */ lfs f1, 0xa18(r30) /* 8001159C 0000E4FC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800115A0 0000E500 40 81 01 48 */ ble lbl_800116E8 /* 800115A4 0000E504 EC 21 00 28 */ fsubs f1, f1, f0 /* 800115A8 0000E508 C0 02 81 28 */ lfs f0, lbl_805A9E48@sda21(r2) /* 800115AC 0000E50C C0 42 81 24 */ lfs f2, lbl_805A9E44@sda21(r2) /* 800115B0 0000E510 2C 19 00 02 */ cmpwi r25, 2 /* 800115B4 0000E514 39 00 00 08 */ li r8, 8 /* 800115B8 0000E518 EC 01 00 24 */ fdivs f0, f1, f0 /* 800115BC 0000E51C EC 02 00 32 */ fmuls f0, f2, f0 /* 800115C0 0000E520 EC 3C 00 32 */ fmuls f1, f28, f0 /* 800115C4 0000E524 40 82 00 08 */ bne lbl_800115CC /* 800115C8 0000E528 39 00 00 0E */ li r8, 0xe lbl_800115CC: /* 800115CC 0000E52C 88 01 00 40 */ lbz r0, 0x40(r1) /* 800115D0 0000E530 38 E0 00 00 */ li r7, 0 /* 800115D4 0000E534 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 /* 800115D8 0000E538 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800115DC 0000E53C 98 01 00 40 */ stb r0, 0x40(r1) /* 800115E0 0000E540 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 800115E4 0000E544 50 E4 36 72 */ rlwimi r4, r7, 6, 0x19, 0x19 /* 800115E8 0000E548 38 60 00 01 */ li r3, 1 /* 800115EC 0000E54C 88 01 00 D8 */ lbz r0, 0xd8(r1) /* 800115F0 0000E550 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 800115F4 0000E554 54 86 06 3E */ clrlwi r6, r4, 0x18 /* 800115F8 0000E558 98 81 00 40 */ stb r4, 0x40(r1) /* 800115FC 0000E55C 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a /* 80011600 0000E560 80 AD 80 88 */ lwz r5, lbl_805A6C48@sda21(r13) /* 80011604 0000E564 91 01 00 3C */ stw r8, 0x3c(r1) /* 80011608 0000E568 38 60 00 00 */ li r3, 0 /* 8001160C 0000E56C 38 80 00 01 */ li r4, 1 /* 80011610 0000E570 98 C1 00 40 */ stb r6, 0x40(r1) /* 80011614 0000E574 91 01 00 C0 */ stw r8, 0xc0(r1) /* 80011618 0000E578 98 C1 00 C4 */ stb r6, 0xc4(r1) /* 8001161C 0000E57C D0 21 00 C8 */ stfs f1, 0xc8(r1) /* 80011620 0000E580 D0 21 00 CC */ stfs f1, 0xcc(r1) /* 80011624 0000E584 D0 01 00 D0 */ stfs f0, 0xd0(r1) /* 80011628 0000E588 D0 01 00 D4 */ stfs f0, 0xd4(r1) /* 8001162C 0000E58C 98 01 00 D8 */ stb r0, 0xd8(r1) /* 80011630 0000E590 48 37 88 C5 */ bl __shl2i /* 80011634 0000E594 A1 4D A3 8C */ lhz r10, kInvalidUniqueId@sda21(r13) /* 80011638 0000E598 39 00 00 00 */ li r8, 0 /* 8001163C 0000E59C 38 00 00 03 */ li r0, 3 /* 80011640 0000E5A0 90 81 00 64 */ stw r4, 0x64(r1) /* 80011644 0000E5A4 3C A0 80 5A */ lis r5, sZeroVector__9CVector3f@ha /* 80011648 0000E5A8 38 81 00 18 */ addi r4, r1, 0x18 /* 8001164C 0000E5AC 90 61 00 60 */ stw r3, 0x60(r1) /* 80011650 0000E5B0 39 25 66 A0 */ addi r9, r5, sZeroVector__9CVector3f@l /* 80011654 0000E5B4 7F E3 FB 78 */ mr r3, r31 /* 80011658 0000E5B8 38 A1 00 14 */ addi r5, r1, 0x14 /* 8001165C 0000E5BC 91 01 00 6C */ stw r8, 0x6c(r1) /* 80011660 0000E5C0 38 C1 00 0C */ addi r6, r1, 0xc /* 80011664 0000E5C4 38 E1 00 C0 */ addi r7, r1, 0xc0 /* 80011668 0000E5C8 91 01 00 68 */ stw r8, 0x68(r1) /* 8001166C 0000E5CC 39 01 00 60 */ addi r8, r1, 0x60 /* 80011670 0000E5D0 90 01 00 70 */ stw r0, 0x70(r1) /* 80011674 0000E5D4 B1 41 00 0C */ sth r10, 0xc(r1) /* 80011678 0000E5D8 A0 1E 00 08 */ lhz r0, 8(r30) /* 8001167C 0000E5DC B1 41 00 08 */ sth r10, 8(r1) /* 80011680 0000E5E0 B0 01 00 10 */ sth r0, 0x10(r1) /* 80011684 0000E5E4 B0 01 00 14 */ sth r0, 0x14(r1) /* 80011688 0000E5E8 B1 41 00 18 */ sth r10, 0x18(r1) /* 8001168C 0000E5EC 48 03 8A 15 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f /* 80011690 0000E5F0 48 00 00 58 */ b lbl_800116E8 lbl_80011694: /* 80011694 0000E5F4 C0 1E 0A 18 */ lfs f0, 0xa18(r30) /* 80011698 0000E5F8 EC 00 E0 28 */ fsubs f0, f0, f28 /* 8001169C 0000E5FC D0 1E 0A 18 */ stfs f0, 0xa18(r30) /* 800116A0 0000E600 C0 3E 0A 18 */ lfs f1, 0xa18(r30) /* 800116A4 0000E604 C0 02 81 14 */ lfs f0, lbl_805A9E34@sda21(r2) /* 800116A8 0000E608 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800116AC 0000E60C 40 80 00 0C */ bge lbl_800116B8 /* 800116B0 0000E610 38 7E 0A 18 */ addi r3, r30, 0xa18 /* 800116B4 0000E614 48 00 00 08 */ b lbl_800116BC lbl_800116B8: /* 800116B8 0000E618 38 62 81 14 */ addi r3, r2, lbl_805A9E34@sda21 lbl_800116BC: /* 800116BC 0000E61C C0 03 00 00 */ lfs f0, 0(r3) /* 800116C0 0000E620 D0 1E 0A 18 */ stfs f0, 0xa18(r30) /* 800116C4 0000E624 C0 2D 81 0C */ lfs f1, lbl_805A6CCC@sda21(r13) /* 800116C8 0000E628 C0 1E 0A 18 */ lfs f0, 0xa18(r30) /* 800116CC 0000E62C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800116D0 0000E630 40 80 00 0C */ bge lbl_800116DC /* 800116D4 0000E634 38 7E 0A 18 */ addi r3, r30, 0xa18 /* 800116D8 0000E638 48 00 00 08 */ b lbl_800116E0 lbl_800116DC: /* 800116DC 0000E63C 38 6D 81 0C */ addi r3, r13, lbl_805A6CCC@sda21 lbl_800116E0: /* 800116E0 0000E640 C0 03 00 00 */ lfs f0, 0(r3) /* 800116E4 0000E644 D0 1E 0A 18 */ stfs f0, 0xa18(r30) lbl_800116E8: /* 800116E8 0000E648 C0 5E 0A 18 */ lfs f2, 0xa18(r30) /* 800116EC 0000E64C C0 22 81 20 */ lfs f1, lbl_805A9E40@sda21(r2) /* 800116F0 0000E650 C0 0D 81 10 */ lfs f0, lbl_805A6CD0@sda21(r13) /* 800116F4 0000E654 EC 22 08 24 */ fdivs f1, f2, f1 /* 800116F8 0000E658 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800116FC 0000E65C D0 21 00 20 */ stfs f1, 0x20(r1) /* 80011700 0000E660 40 80 00 0C */ bge lbl_8001170C /* 80011704 0000E664 38 6D 81 10 */ addi r3, r13, lbl_805A6CD0@sda21 /* 80011708 0000E668 48 00 00 08 */ b lbl_80011710 lbl_8001170C: /* 8001170C 0000E66C 38 61 00 20 */ addi r3, r1, 0x20 lbl_80011710: /* 80011710 0000E670 C0 03 00 00 */ lfs f0, 0(r3) /* 80011714 0000E674 D0 1E 0A 1C */ stfs f0, 0xa1c(r30) lbl_80011718: /* 80011718 0000E678 E3 E1 0A 28 */ psq_l f31, -1496(r1), 0, qr0 /* 8001171C 0000E67C CB E1 0A 20 */ lfd f31, 0xa20(r1) /* 80011720 0000E680 E3 C1 0A 18 */ psq_l f30, -1512(r1), 0, qr0 /* 80011724 0000E684 CB C1 0A 10 */ lfd f30, 0xa10(r1) /* 80011728 0000E688 E3 A1 0A 08 */ psq_l f29, -1528(r1), 0, qr0 /* 8001172C 0000E68C CB A1 0A 00 */ lfd f29, 0xa00(r1) /* 80011730 0000E690 E3 81 09 F8 */ psq_l f28, -1544(r1), 0, qr0 /* 80011734 0000E694 CB 81 09 F0 */ lfd f28, 0x9f0(r1) /* 80011738 0000E698 BA E1 09 CC */ lmw r23, 0x9cc(r1) /* 8001173C 0000E69C 80 01 0A 34 */ lwz r0, 0xa34(r1) /* 80011740 0000E6A0 7C 08 03 A6 */ mtlr r0 /* 80011744 0000E6A4 38 21 0A 30 */ addi r1, r1, 0xa30 /* 80011748 0000E6A8 4E 80 00 20 */ blr .global __dt__17CCollidableSphere __dt__17CCollidableSphere: /* 8001174C 0000E6AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80011750 0000E6B0 7C 08 02 A6 */ mflr r0 /* 80011754 0000E6B4 90 01 00 14 */ stw r0, 0x14(r1) /* 80011758 0000E6B8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8001175C 0000E6BC 7C 7F 1B 79 */ or. r31, r3, r3 /* 80011760 0000E6C0 41 82 00 30 */ beq lbl_80011790 /* 80011764 0000E6C4 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha /* 80011768 0000E6C8 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l /* 8001176C 0000E6CC 90 1F 00 00 */ stw r0, 0(r31) /* 80011770 0000E6D0 41 82 00 10 */ beq lbl_80011780 /* 80011774 0000E6D4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha /* 80011778 0000E6D8 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l /* 8001177C 0000E6DC 90 1F 00 00 */ stw r0, 0(r31) lbl_80011780: /* 80011780 0000E6E0 7C 80 07 35 */ extsh. r0, r4 /* 80011784 0000E6E4 40 81 00 0C */ ble lbl_80011790 /* 80011788 0000E6E8 7F E3 FB 78 */ mr r3, r31 /* 8001178C 0000E6EC 48 30 41 A5 */ bl Free__7CMemoryFPCv lbl_80011790: /* 80011790 0000E6F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80011794 0000E6F4 7F E3 FB 78 */ mr r3, r31 /* 80011798 0000E6F8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8001179C 0000E6FC 7C 08 03 A6 */ mtlr r0 /* 800117A0 0000E700 38 21 00 10 */ addi r1, r1, 0x10 /* 800117A4 0000E704 4E 80 00 20 */ blr .global __dt__19CCollisionPrimitiveFv __dt__19CCollisionPrimitiveFv: /* 800117A8 0000E708 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800117AC 0000E70C 7C 08 02 A6 */ mflr r0 /* 800117B0 0000E710 90 01 00 14 */ stw r0, 0x14(r1) /* 800117B4 0000E714 93 E1 00 0C */ stw r31, 0xc(r1) /* 800117B8 0000E718 7C 7F 1B 79 */ or. r31, r3, r3 /* 800117BC 0000E71C 41 82 00 1C */ beq lbl_800117D8 /* 800117C0 0000E720 3C A0 80 3E */ lis r5, lbl_803D97E4@ha /* 800117C4 0000E724 7C 80 07 35 */ extsh. r0, r4 /* 800117C8 0000E728 38 05 97 E4 */ addi r0, r5, lbl_803D97E4@l /* 800117CC 0000E72C 90 1F 00 00 */ stw r0, 0(r31) /* 800117D0 0000E730 40 81 00 08 */ ble lbl_800117D8 /* 800117D4 0000E734 48 30 41 5D */ bl Free__7CMemoryFPCv lbl_800117D8: /* 800117D8 0000E738 80 01 00 14 */ lwz r0, 0x14(r1) /* 800117DC 0000E73C 7F E3 FB 78 */ mr r3, r31 /* 800117E0 0000E740 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800117E4 0000E744 7C 08 03 A6 */ mtlr r0 /* 800117E8 0000E748 38 21 00 10 */ addi r1, r1, 0x10 /* 800117EC 0000E74C 4E 80 00 20 */ blr .global UpdatePhazonCameraShake__7CPlayerFfR13CStateManager UpdatePhazonCameraShake__7CPlayerFfR13CStateManager: /* 800117F0 0000E750 94 21 FE 30 */ stwu r1, -0x1d0(r1) /* 800117F4 0000E754 7C 08 02 A6 */ mflr r0 /* 800117F8 0000E758 90 01 01 D4 */ stw r0, 0x1d4(r1) /* 800117FC 0000E75C DB E1 01 C0 */ stfd f31, 0x1c0(r1) /* 80011800 0000E760 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 /* 80011804 0000E764 93 E1 01 BC */ stw r31, 0x1bc(r1) /* 80011808 0000E768 93 C1 01 B8 */ stw r30, 0x1b8(r1) /* 8001180C 0000E76C 7C 7F 1B 78 */ mr r31, r3 /* 80011810 0000E770 80 02 81 2C */ lwz r0, lbl_805A9E4C@sda21(r2) /* 80011814 0000E774 80 A3 0A 2C */ lwz r5, 0xa2c(r3) /* 80011818 0000E778 FF E0 08 90 */ fmr f31, f1 /* 8001181C 0000E77C 7C 9E 23 78 */ mr r30, r4 /* 80011820 0000E780 38 61 00 08 */ addi r3, r1, 8 /* 80011824 0000E784 38 85 00 01 */ addi r4, r5, 1 /* 80011828 0000E788 7C 00 20 00 */ cmpw r0, r4 /* 8001182C 0000E78C 90 81 00 08 */ stw r4, 8(r1) /* 80011830 0000E790 40 80 00 08 */ bge lbl_80011838 /* 80011834 0000E794 38 62 81 2C */ addi r3, r2, lbl_805A9E4C@sda21 lbl_80011838: /* 80011838 0000E798 80 03 00 00 */ lwz r0, 0(r3) /* 8001183C 0000E79C 90 1F 0A 2C */ stw r0, 0xa2c(r31) /* 80011840 0000E7A0 80 1F 0A 10 */ lwz r0, 0xa10(r31) /* 80011844 0000E7A4 2C 00 00 00 */ cmpwi r0, 0 /* 80011848 0000E7A8 41 82 00 DC */ beq lbl_80011924 /* 8001184C 0000E7AC C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80011850 0000E7B0 C0 1F 0A 14 */ lfs f0, 0xa14(r31) /* 80011854 0000E7B4 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 80011858 0000E7B8 40 82 00 A8 */ bne lbl_80011900 /* 8001185C 0000E7BC C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80011860 0000E7C0 38 61 00 0C */ addi r3, r1, 0xc /* 80011864 0000E7C4 C0 42 81 30 */ lfs f2, lbl_805A9E50@sda21(r2) /* 80011868 0000E7C8 48 14 C1 D9 */ bl BuildPhazonCameraShakeData__16CCameraShakeDataFff /* 8001186C 0000E7CC 38 61 00 E0 */ addi r3, r1, 0xe0 /* 80011870 0000E7D0 38 81 00 0C */ addi r4, r1, 0xc /* 80011874 0000E7D4 4B FF 95 35 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData /* 80011878 0000E7D8 34 81 00 8C */ addic. r4, r1, 0x8c /* 8001187C 0000E7DC 41 82 00 10 */ beq lbl_8001188C /* 80011880 0000E7E0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80011884 0000E7E4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 80011888 0000E7E8 90 04 00 00 */ stw r0, 0(r4) lbl_8001188C: /* 8001188C 0000E7EC 34 81 00 50 */ addic. r4, r1, 0x50 /* 80011890 0000E7F0 41 82 00 10 */ beq lbl_800118A0 /* 80011894 0000E7F4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80011898 0000E7F8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 8001189C 0000E7FC 90 04 00 00 */ stw r0, 0(r4) lbl_800118A0: /* 800118A0 0000E800 34 81 00 14 */ addic. r4, r1, 0x14 /* 800118A4 0000E804 41 82 00 10 */ beq lbl_800118B4 /* 800118A8 0000E808 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 800118AC 0000E80C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 800118B0 0000E810 90 04 00 00 */ stw r0, 0(r4) lbl_800118B4: /* 800118B4 0000E814 80 7E 08 70 */ lwz r3, 0x870(r30) /* 800118B8 0000E818 38 81 00 E0 */ addi r4, r1, 0xe0 /* 800118BC 0000E81C 38 A0 00 00 */ li r5, 0 /* 800118C0 0000E820 4B FF 91 61 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab /* 800118C4 0000E824 34 81 01 60 */ addic. r4, r1, 0x160 /* 800118C8 0000E828 41 82 00 10 */ beq lbl_800118D8 /* 800118CC 0000E82C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 800118D0 0000E830 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 800118D4 0000E834 90 04 00 00 */ stw r0, 0(r4) lbl_800118D8: /* 800118D8 0000E838 34 81 01 24 */ addic. r4, r1, 0x124 /* 800118DC 0000E83C 41 82 00 10 */ beq lbl_800118EC /* 800118E0 0000E840 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 800118E4 0000E844 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 800118E8 0000E848 90 04 00 00 */ stw r0, 0(r4) lbl_800118EC: /* 800118EC 0000E84C 34 81 00 E8 */ addic. r4, r1, 0xe8 /* 800118F0 0000E850 41 82 00 10 */ beq lbl_80011900 /* 800118F4 0000E854 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 800118F8 0000E858 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 800118FC 0000E85C 90 04 00 00 */ stw r0, 0(r4) lbl_80011900: /* 80011900 0000E860 C0 3F 0A 14 */ lfs f1, 0xa14(r31) /* 80011904 0000E864 C0 02 81 34 */ lfs f0, lbl_805A9E54@sda21(r2) /* 80011908 0000E868 EC 21 F8 2A */ fadds f1, f1, f31 /* 8001190C 0000E86C D0 3F 0A 14 */ stfs f1, 0xa14(r31) /* 80011910 0000E870 C0 3F 0A 14 */ lfs f1, 0xa14(r31) /* 80011914 0000E874 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80011918 0000E878 40 81 00 0C */ ble lbl_80011924 /* 8001191C 0000E87C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011920 0000E880 D0 1F 0A 14 */ stfs f0, 0xa14(r31) lbl_80011924: /* 80011924 0000E884 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 /* 80011928 0000E888 80 01 01 D4 */ lwz r0, 0x1d4(r1) /* 8001192C 0000E88C CB E1 01 C0 */ lfd f31, 0x1c0(r1) /* 80011930 0000E890 83 E1 01 BC */ lwz r31, 0x1bc(r1) /* 80011934 0000E894 83 C1 01 B8 */ lwz r30, 0x1b8(r1) /* 80011938 0000E898 7C 08 03 A6 */ mtlr r0 /* 8001193C 0000E89C 38 21 01 D0 */ addi r1, r1, 0x1d0 /* 80011940 0000E8A0 4E 80 00 20 */ blr .global DecrementPhazon__7CPlayerFv DecrementPhazon__7CPlayerFv: /* 80011944 0000E8A4 80 83 0A 10 */ lwz r4, 0xa10(r3) /* 80011948 0000E8A8 2C 04 00 00 */ cmpwi r4, 0 /* 8001194C 0000E8AC 4D 82 00 20 */ beqlr /* 80011950 0000E8B0 38 04 FF FF */ addi r0, r4, -1 /* 80011954 0000E8B4 90 03 0A 10 */ stw r0, 0xa10(r3) /* 80011958 0000E8B8 4E 80 00 20 */ blr .global IncrementPhazon__7CPlayerFv IncrementPhazon__7CPlayerFv: /* 8001195C 0000E8BC 80 03 0A 10 */ lwz r0, 0xa10(r3) /* 80011960 0000E8C0 2C 00 00 00 */ cmpwi r0, 0 /* 80011964 0000E8C4 40 82 00 0C */ bne lbl_80011970 /* 80011968 0000E8C8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001196C 0000E8CC D0 03 0A 14 */ stfs f0, 0xa14(r3) lbl_80011970: /* 80011970 0000E8D0 80 83 0A 10 */ lwz r4, 0xa10(r3) /* 80011974 0000E8D4 38 04 00 01 */ addi r0, r4, 1 /* 80011978 0000E8D8 90 03 0A 10 */ stw r0, 0xa10(r3) /* 8001197C 0000E8DC 4E 80 00 20 */ blr .global DoPreThink__7CPlayerfRC13CStateManager DoPreThink__7CPlayerfRC13CStateManager: /* 80011980 0000E8E0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80011984 0000E8E4 7C 08 02 A6 */ mflr r0 /* 80011988 0000E8E8 90 01 00 24 */ stw r0, 0x24(r1) /* 8001198C 0000E8EC DB E1 00 18 */ stfd f31, 0x18(r1) /* 80011990 0000E8F0 FF E0 08 90 */ fmr f31, f1 /* 80011994 0000E8F4 93 E1 00 14 */ stw r31, 0x14(r1) /* 80011998 0000E8F8 7C 9F 23 78 */ mr r31, r4 /* 8001199C 0000E8FC 93 C1 00 10 */ stw r30, 0x10(r1) /* 800119A0 0000E900 7C 7E 1B 78 */ mr r30, r3 /* 800119A4 0000E904 81 83 00 00 */ lwz r12, 0(r3) /* 800119A8 0000E908 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800119AC 0000E90C 7D 89 03 A6 */ mtctr r12 /* 800119B0 0000E910 4E 80 04 21 */ bctrl /* 800119B4 0000E914 A0 1E 0A 00 */ lhz r0, 0xa00(r30) /* 800119B8 0000E918 7F E3 FB 78 */ mr r3, r31 /* 800119BC 0000E91C 38 81 00 08 */ addi r4, r1, 8 /* 800119C0 0000E920 B0 01 00 08 */ sth r0, 8(r1) /* 800119C4 0000E924 48 03 AB B1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 800119C8 0000E928 28 03 00 00 */ cmplwi r3, 0 /* 800119CC 0000E92C 41 82 00 1C */ beq lbl_800119E8 /* 800119D0 0000E930 81 83 00 00 */ lwz r12, 0(r3) /* 800119D4 0000E934 FC 20 F8 90 */ fmr f1, f31 /* 800119D8 0000E938 7F E4 FB 78 */ mr r4, r31 /* 800119DC 0000E93C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800119E0 0000E940 7D 89 03 A6 */ mtctr r12 /* 800119E4 0000E944 4E 80 04 21 */ bctrl lbl_800119E8: /* 800119E8 0000E948 80 01 00 24 */ lwz r0, 0x24(r1) /* 800119EC 0000E94C CB E1 00 18 */ lfd f31, 0x18(r1) /* 800119F0 0000E950 83 E1 00 14 */ lwz r31, 0x14(r1) /* 800119F4 0000E954 83 C1 00 10 */ lwz r30, 0x10(r1) /* 800119F8 0000E958 7C 08 03 A6 */ mtlr r0 /* 800119FC 0000E95C 38 21 00 20 */ addi r1, r1, 0x20 /* 80011A00 0000E960 4E 80 00 20 */ blr .global DoThink__7CPlayerFfRC13CStateManager DoThink__7CPlayerFfRC13CStateManager: /* 80011A04 0000E964 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80011A08 0000E968 7C 08 02 A6 */ mflr r0 /* 80011A0C 0000E96C 90 01 00 24 */ stw r0, 0x24(r1) /* 80011A10 0000E970 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80011A14 0000E974 FF E0 08 90 */ fmr f31, f1 /* 80011A18 0000E978 93 E1 00 14 */ stw r31, 0x14(r1) /* 80011A1C 0000E97C 7C 9F 23 78 */ mr r31, r4 /* 80011A20 0000E980 93 C1 00 10 */ stw r30, 0x10(r1) /* 80011A24 0000E984 7C 7E 1B 78 */ mr r30, r3 /* 80011A28 0000E988 81 83 00 00 */ lwz r12, 0(r3) /* 80011A2C 0000E98C 81 8C 00 14 */ lwz r12, 0x14(r12) /* 80011A30 0000E990 7D 89 03 A6 */ mtctr r12 /* 80011A34 0000E994 4E 80 04 21 */ bctrl /* 80011A38 0000E998 A0 1E 0A 00 */ lhz r0, 0xa00(r30) /* 80011A3C 0000E99C 7F E3 FB 78 */ mr r3, r31 /* 80011A40 0000E9A0 38 81 00 08 */ addi r4, r1, 8 /* 80011A44 0000E9A4 B0 01 00 08 */ sth r0, 8(r1) /* 80011A48 0000E9A8 48 03 AB 2D */ bl ObjectById__13CStateManagerF9TUniqueId /* 80011A4C 0000E9AC 28 03 00 00 */ cmplwi r3, 0 /* 80011A50 0000E9B0 41 82 00 1C */ beq lbl_80011A6C /* 80011A54 0000E9B4 81 83 00 00 */ lwz r12, 0(r3) /* 80011A58 0000E9B8 FC 20 F8 90 */ fmr f1, f31 /* 80011A5C 0000E9BC 7F E4 FB 78 */ mr r4, r31 /* 80011A60 0000E9C0 81 8C 00 14 */ lwz r12, 0x14(r12) /* 80011A64 0000E9C4 7D 89 03 A6 */ mtctr r12 /* 80011A68 0000E9C8 4E 80 04 21 */ bctrl lbl_80011A6C: /* 80011A6C 0000E9CC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80011A70 0000E9D0 CB E1 00 18 */ lfd f31, 0x18(r1) /* 80011A74 0000E9D4 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80011A78 0000E9D8 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80011A7C 0000E9DC 7C 08 03 A6 */ mtlr r0 /* 80011A80 0000E9E0 38 21 00 20 */ addi r1, r1, 0x20 /* 80011A84 0000E9E4 4E 80 00 20 */ blr .global ResetControlDirectionInterpolation__7CPlayerFv ResetControlDirectionInterpolation__7CPlayerFv: /* 80011A88 0000E9E8 88 03 09 C6 */ lbz r0, 0x9c6(r3) /* 80011A8C 0000E9EC 38 80 00 00 */ li r4, 0 /* 80011A90 0000E9F0 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 /* 80011A94 0000E9F4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011A98 0000E9F8 98 03 09 C6 */ stb r0, 0x9c6(r3) /* 80011A9C 0000E9FC D0 03 09 F8 */ stfs f0, 0x9f8(r3) /* 80011AA0 0000EA00 4E 80 00 20 */ blr .global SetControlDirectionInterpolation__7CPlayerFf SetControlDirectionInterpolation__7CPlayerFf: /* 80011AA4 0000EA04 88 03 09 C6 */ lbz r0, 0x9c6(r3) /* 80011AA8 0000EA08 38 80 00 01 */ li r4, 1 /* 80011AAC 0000EA0C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 /* 80011AB0 0000EA10 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011AB4 0000EA14 98 03 09 C6 */ stb r0, 0x9c6(r3) /* 80011AB8 0000EA18 D0 03 09 F8 */ stfs f0, 0x9f8(r3) /* 80011ABC 0000EA1C D0 23 09 FC */ stfs f1, 0x9fc(r3) /* 80011AC0 0000EA20 4E 80 00 20 */ blr .global IsPlayerDeadEnough__7CPlayerCFv IsPlayerDeadEnough__7CPlayerCFv: /* 80011AC4 0000EA24 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80011AC8 0000EA28 2C 00 00 01 */ cmpwi r0, 1 /* 80011ACC 0000EA2C 41 82 00 38 */ beq lbl_80011B04 /* 80011AD0 0000EA30 40 80 00 10 */ bge lbl_80011AE0 /* 80011AD4 0000EA34 2C 00 00 00 */ cmpwi r0, 0 /* 80011AD8 0000EA38 40 80 00 14 */ bge lbl_80011AEC /* 80011ADC 0000EA3C 48 00 00 48 */ b lbl_80011B24 lbl_80011AE0: /* 80011AE0 0000EA40 2C 00 00 04 */ cmpwi r0, 4 /* 80011AE4 0000EA44 40 80 00 40 */ bge lbl_80011B24 /* 80011AE8 0000EA48 48 00 00 34 */ b lbl_80011B1C lbl_80011AEC: /* 80011AEC 0000EA4C C0 23 09 F4 */ lfs f1, 0x9f4(r3) /* 80011AF0 0000EA50 C0 02 81 38 */ lfs f0, lbl_805A9E58@sda21(r2) /* 80011AF4 0000EA54 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80011AF8 0000EA58 7C 00 00 26 */ mfcr r0 /* 80011AFC 0000EA5C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f /* 80011B00 0000EA60 4E 80 00 20 */ blr lbl_80011B04: /* 80011B04 0000EA64 C0 23 09 F4 */ lfs f1, 0x9f4(r3) /* 80011B08 0000EA68 C0 02 81 3C */ lfs f0, lbl_805A9E5C@sda21(r2) /* 80011B0C 0000EA6C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80011B10 0000EA70 7C 00 00 26 */ mfcr r0 /* 80011B14 0000EA74 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f /* 80011B18 0000EA78 4E 80 00 20 */ blr lbl_80011B1C: /* 80011B1C 0000EA7C 38 60 00 00 */ li r3, 0 /* 80011B20 0000EA80 4E 80 00 20 */ blr lbl_80011B24: /* 80011B24 0000EA84 38 60 00 00 */ li r3, 0 /* 80011B28 0000EA88 4E 80 00 20 */ blr .global AsyncLoadSuit__7CPlayerFR13CStateManager AsyncLoadSuit__7CPlayerFR13CStateManager: /* 80011B2C 0000EA8C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80011B30 0000EA90 7C 08 02 A6 */ mflr r0 /* 80011B34 0000EA94 90 01 00 14 */ stw r0, 0x14(r1) /* 80011B38 0000EA98 80 63 04 90 */ lwz r3, 0x490(r3) /* 80011B3C 0000EA9C 48 02 90 29 */ bl AsyncLoadSuit__10CPlayerGunFR13CStateManager /* 80011B40 0000EAA0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80011B44 0000EAA4 7C 08 03 A6 */ mtlr r0 /* 80011B48 0000EAA8 38 21 00 10 */ addi r1, r1, 0x10 /* 80011B4C 0000EAAC 4E 80 00 20 */ blr .global LoadAnimationTokens__7CPlayerFv LoadAnimationTokens__7CPlayerFv: /* 80011B50 0000EAB0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80011B54 0000EAB4 7C 08 02 A6 */ mflr r0 /* 80011B58 0000EAB8 3C A0 80 3D */ lis r5, lbl_803CC4F8@ha /* 80011B5C 0000EABC 90 01 00 44 */ stw r0, 0x44(r1) /* 80011B60 0000EAC0 38 A5 C4 F8 */ addi r5, r5, lbl_803CC4F8@l /* 80011B64 0000EAC4 38 A5 00 09 */ addi r5, r5, 9 /* 80011B68 0000EAC8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80011B6C 0000EACC 93 C1 00 38 */ stw r30, 0x38(r1) /* 80011B70 0000EAD0 93 A1 00 34 */ stw r29, 0x34(r1) /* 80011B74 0000EAD4 7C 7D 1B 78 */ mr r29, r3 /* 80011B78 0000EAD8 38 61 00 10 */ addi r3, r1, 0x10 /* 80011B7C 0000EADC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80011B80 0000EAE0 81 84 00 00 */ lwz r12, 0(r4) /* 80011B84 0000EAE4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80011B88 0000EAE8 7D 89 03 A6 */ mtctr r12 /* 80011B8C 0000EAEC 4E 80 04 21 */ bctrl /* 80011B90 0000EAF0 3B C1 00 20 */ addi r30, r1, 0x20 /* 80011B94 0000EAF4 38 81 00 10 */ addi r4, r1, 0x10 /* 80011B98 0000EAF8 7F C3 F3 78 */ mr r3, r30 /* 80011B9C 0000EAFC 48 32 F3 0D */ bl __ct__6CTokenFRC6CToken /* 80011BA0 0000EB00 7F C3 F3 78 */ mr r3, r30 /* 80011BA4 0000EB04 48 32 F2 69 */ bl GetObj__6CTokenFv /* 80011BA8 0000EB08 80 03 00 04 */ lwz r0, 4(r3) /* 80011BAC 0000EB0C 38 61 00 10 */ addi r3, r1, 0x10 /* 80011BB0 0000EB10 38 80 FF FF */ li r4, -1 /* 80011BB4 0000EB14 90 01 00 28 */ stw r0, 0x28(r1) /* 80011BB8 0000EB18 48 32 F2 89 */ bl __dt__6CTokenFv /* 80011BBC 0000EB1C 83 E1 00 28 */ lwz r31, 0x28(r1) /* 80011BC0 0000EB20 38 7D 02 5C */ addi r3, r29, 0x25c /* 80011BC4 0000EB24 80 9F 00 04 */ lwz r4, 4(r31) /* 80011BC8 0000EB28 4B FF 6D 95 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" /* 80011BCC 0000EB2C 83 DF 00 0C */ lwz r30, 0xc(r31) /* 80011BD0 0000EB30 48 00 00 C8 */ b lbl_80011C98 lbl_80011BD4: /* 80011BD4 0000EB34 80 7E 00 00 */ lwz r3, 0(r30) /* 80011BD8 0000EB38 3C 03 BC B3 */ addis r0, r3, 0xbcb3 /* 80011BDC 0000EB3C 28 00 44 4C */ cmplwi r0, 0x444c /* 80011BE0 0000EB40 41 82 00 B4 */ beq lbl_80011C94 /* 80011BE4 0000EB44 3C 03 BC AD */ addis r0, r3, 0xbcad /* 80011BE8 0000EB48 28 00 4B 52 */ cmplwi r0, 0x4b52 /* 80011BEC 0000EB4C 41 82 00 A8 */ beq lbl_80011C94 /* 80011BF0 0000EB50 3C 03 AB A8 */ addis r0, r3, 0xaba8 /* 80011BF4 0000EB54 28 00 54 52 */ cmplwi r0, 0x5452 /* 80011BF8 0000EB58 41 82 00 9C */ beq lbl_80011C94 /* 80011BFC 0000EB5C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80011C00 0000EB60 7F C5 F3 78 */ mr r5, r30 /* 80011C04 0000EB64 38 61 00 08 */ addi r3, r1, 8 /* 80011C08 0000EB68 81 84 00 00 */ lwz r12, 0(r4) /* 80011C0C 0000EB6C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80011C10 0000EB70 7D 89 03 A6 */ mtctr r12 /* 80011C14 0000EB74 4E 80 04 21 */ bctrl /* 80011C18 0000EB78 38 61 00 18 */ addi r3, r1, 0x18 /* 80011C1C 0000EB7C 38 81 00 08 */ addi r4, r1, 8 /* 80011C20 0000EB80 48 32 F2 89 */ bl __ct__6CTokenFRC6CToken /* 80011C24 0000EB84 38 61 00 08 */ addi r3, r1, 8 /* 80011C28 0000EB88 38 80 FF FF */ li r4, -1 /* 80011C2C 0000EB8C 48 32 F2 15 */ bl __dt__6CTokenFv /* 80011C30 0000EB90 38 61 00 18 */ addi r3, r1, 0x18 /* 80011C34 0000EB94 48 32 F1 51 */ bl Lock__6CTokenFv /* 80011C38 0000EB98 80 1D 02 60 */ lwz r0, 0x260(r29) /* 80011C3C 0000EB9C 80 BD 02 64 */ lwz r5, 0x264(r29) /* 80011C40 0000EBA0 7C 00 28 00 */ cmpw r0, r5 /* 80011C44 0000EBA4 41 80 00 1C */ blt lbl_80011C60 /* 80011C48 0000EBA8 2C 05 00 00 */ cmpwi r5, 0 /* 80011C4C 0000EBAC 38 7D 02 5C */ addi r3, r29, 0x25c /* 80011C50 0000EBB0 38 80 00 04 */ li r4, 4 /* 80011C54 0000EBB4 41 82 00 08 */ beq lbl_80011C5C /* 80011C58 0000EBB8 54 A4 08 3C */ slwi r4, r5, 1 lbl_80011C5C: /* 80011C5C 0000EBBC 4B FF 6D 01 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" lbl_80011C60: /* 80011C60 0000EBC0 80 1D 02 60 */ lwz r0, 0x260(r29) /* 80011C64 0000EBC4 80 7D 02 68 */ lwz r3, 0x268(r29) /* 80011C68 0000EBC8 54 00 18 38 */ slwi r0, r0, 3 /* 80011C6C 0000EBCC 7C 63 02 15 */ add. r3, r3, r0 /* 80011C70 0000EBD0 41 82 00 0C */ beq lbl_80011C7C /* 80011C74 0000EBD4 38 81 00 18 */ addi r4, r1, 0x18 /* 80011C78 0000EBD8 48 32 F2 31 */ bl __ct__6CTokenFRC6CToken lbl_80011C7C: /* 80011C7C 0000EBDC 80 BD 02 60 */ lwz r5, 0x260(r29) /* 80011C80 0000EBE0 38 61 00 18 */ addi r3, r1, 0x18 /* 80011C84 0000EBE4 38 80 FF FF */ li r4, -1 /* 80011C88 0000EBE8 38 05 00 01 */ addi r0, r5, 1 /* 80011C8C 0000EBEC 90 1D 02 60 */ stw r0, 0x260(r29) /* 80011C90 0000EBF0 48 32 F1 B1 */ bl __dt__6CTokenFv lbl_80011C94: /* 80011C94 0000EBF4 3B DE 00 08 */ addi r30, r30, 8 lbl_80011C98: /* 80011C98 0000EBF8 80 1F 00 04 */ lwz r0, 4(r31) /* 80011C9C 0000EBFC 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80011CA0 0000EC00 54 00 18 38 */ slwi r0, r0, 3 /* 80011CA4 0000EC04 7C 03 02 14 */ add r0, r3, r0 /* 80011CA8 0000EC08 7C 1E 00 40 */ cmplw r30, r0 /* 80011CAC 0000EC0C 40 82 FF 28 */ bne lbl_80011BD4 /* 80011CB0 0000EC10 38 61 00 20 */ addi r3, r1, 0x20 /* 80011CB4 0000EC14 38 80 00 00 */ li r4, 0 /* 80011CB8 0000EC18 48 32 F1 89 */ bl __dt__6CTokenFv /* 80011CBC 0000EC1C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80011CC0 0000EC20 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80011CC4 0000EC24 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80011CC8 0000EC28 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80011CCC 0000EC2C 7C 08 03 A6 */ mtlr r0 /* 80011CD0 0000EC30 38 21 00 40 */ addi r1, r1, 0x40 .global sub_80011cd4 sub_80011cd4: /* 80011CD4 0000EC34 4E 80 00 20 */ blr .global HasTransitionBeamModel__7CPlayerCFv HasTransitionBeamModel__7CPlayerCFv: /* 80011CD8 0000EC38 80 83 07 F0 */ lwz r4, 0x7f0(r3) /* 80011CDC 0000EC3C 38 60 00 00 */ li r3, 0 /* 80011CE0 0000EC40 28 04 00 00 */ cmplwi r4, 0 /* 80011CE4 0000EC44 4D 82 00 20 */ beqlr /* 80011CE8 0000EC48 80 04 00 10 */ lwz r0, 0x10(r4) /* 80011CEC 0000EC4C 28 00 00 00 */ cmplwi r0, 0 /* 80011CF0 0000EC50 40 82 00 10 */ bne lbl_80011D00 /* 80011CF4 0000EC54 88 04 00 28 */ lbz r0, 0x28(r4) /* 80011CF8 0000EC58 28 00 00 00 */ cmplwi r0, 0 /* 80011CFC 0000EC5C 4D 82 00 20 */ beqlr lbl_80011D00: /* 80011D00 0000EC60 38 60 00 01 */ li r3, 1 /* 80011D04 0000EC64 4E 80 00 20 */ blr .global CanRenderUnsorted__7CPlayerCFRC13CStateManager CanRenderUnsorted__7CPlayerCFRC13CStateManager: /* 80011D08 0000EC68 38 60 00 00 */ li r3, 0 /* 80011D0C 0000EC6C 4E 80 00 20 */ blr .global GetDamageVulnerability__7CPlayerCFRC9CVector3fRC9CVector3fRC11CDamageInfo GetDamageVulnerability__7CPlayerCFRC9CVector3fRC9CVector3fRC11CDamageInfo: /* 80011D10 0000EC70 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80011D14 0000EC74 2C 00 00 01 */ cmpwi r0, 1 /* 80011D18 0000EC78 40 82 00 2C */ bne lbl_80011D44 /* 80011D1C 0000EC7C C0 23 05 70 */ lfs f1, 0x570(r3) /* 80011D20 0000EC80 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011D24 0000EC84 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80011D28 0000EC88 40 81 00 1C */ ble lbl_80011D44 /* 80011D2C 0000EC8C 88 06 00 18 */ lbz r0, 0x18(r6) /* 80011D30 0000EC90 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80011D34 0000EC94 40 82 00 10 */ bne lbl_80011D44 /* 80011D38 0000EC98 3C 60 80 57 */ lis r3, lbl_8056D718@ha /* 80011D3C 0000EC9C 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l /* 80011D40 0000ECA0 4E 80 00 20 */ blr lbl_80011D44: /* 80011D44 0000ECA4 3C 60 80 57 */ lis r3, lbl_8056D578@ha /* 80011D48 0000ECA8 38 63 D5 78 */ addi r3, r3, lbl_8056D578@l /* 80011D4C 0000ECAC 4E 80 00 20 */ blr .global GetDamageVulnerability__7CPlayerCFv GetDamageVulnerability__7CPlayerCFv: /* 80011D50 0000ECB0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80011D54 0000ECB4 7C 08 02 A6 */ mflr r0 /* 80011D58 0000ECB8 39 00 00 00 */ li r8, 0 /* 80011D5C 0000ECBC 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80011D60 0000ECC0 90 01 00 34 */ stw r0, 0x34(r1) /* 80011D64 0000ECC4 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 80011D68 0000ECC8 88 A1 00 0C */ lbz r5, 0xc(r1) /* 80011D6C 0000ECCC 51 05 3E 30 */ rlwimi r5, r8, 7, 0x18, 0x18 /* 80011D70 0000ECD0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011D74 0000ECD4 54 A6 06 3E */ clrlwi r6, r5, 0x18 /* 80011D78 0000ECD8 88 01 00 28 */ lbz r0, 0x28(r1) /* 80011D7C 0000ECDC 51 06 36 72 */ rlwimi r6, r8, 6, 0x19, 0x19 /* 80011D80 0000ECE0 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 /* 80011D84 0000ECE4 54 C7 06 3E */ clrlwi r7, r6, 0x18 /* 80011D88 0000ECE8 91 01 00 10 */ stw r8, 0x10(r1) /* 80011D8C 0000ECEC 51 07 2E B4 */ rlwimi r7, r8, 5, 0x1a, 0x1a /* 80011D90 0000ECF0 98 A1 00 0C */ stb r5, 0xc(r1) /* 80011D94 0000ECF4 3C A0 80 5A */ lis r5, sUpVector__9CVector3f@ha /* 80011D98 0000ECF8 38 A5 66 F4 */ addi r5, r5, sUpVector__9CVector3f@l /* 80011D9C 0000ECFC 98 C1 00 0C */ stb r6, 0xc(r1) /* 80011DA0 0000ED00 38 C1 00 10 */ addi r6, r1, 0x10 /* 80011DA4 0000ED04 98 E1 00 14 */ stb r7, 0x14(r1) /* 80011DA8 0000ED08 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80011DAC 0000ED0C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80011DB0 0000ED10 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80011DB4 0000ED14 D0 01 00 24 */ stfs f0, 0x24(r1) /* 80011DB8 0000ED18 98 01 00 28 */ stb r0, 0x28(r1) /* 80011DBC 0000ED1C 81 83 00 00 */ lwz r12, 0(r3) /* 80011DC0 0000ED20 91 01 00 08 */ stw r8, 8(r1) /* 80011DC4 0000ED24 81 8C 00 3C */ lwz r12, 0x3c(r12) /* 80011DC8 0000ED28 98 E1 00 0C */ stb r7, 0xc(r1) /* 80011DCC 0000ED2C 7D 89 03 A6 */ mtctr r12 /* 80011DD0 0000ED30 4E 80 04 21 */ bctrl /* 80011DD4 0000ED34 80 01 00 34 */ lwz r0, 0x34(r1) /* 80011DD8 0000ED38 7C 08 03 A6 */ mtlr r0 /* 80011DDC 0000ED3C 38 21 00 30 */ addi r1, r1, 0x30 /* 80011DE0 0000ED40 4E 80 00 20 */ blr .global GetHomingPosition__7CPlayerCFRC13CStateManagerf GetHomingPosition__7CPlayerCFRC13CStateManagerf: /* 80011DE4 0000ED44 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80011DE8 0000ED48 7C 08 02 A6 */ mflr r0 /* 80011DEC 0000ED4C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011DF0 0000ED50 90 01 00 54 */ stw r0, 0x54(r1) /* 80011DF4 0000ED54 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80011DF8 0000ED58 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80011DFC 0000ED5C 7C 9F 23 78 */ mr r31, r4 /* 80011E00 0000ED60 93 C1 00 48 */ stw r30, 0x48(r1) /* 80011E04 0000ED64 7C 7E 1B 78 */ mr r30, r3 /* 80011E08 0000ED68 40 81 00 40 */ ble lbl_80011E48 /* 80011E0C 0000ED6C 38 61 00 08 */ addi r3, r1, 8 /* 80011E10 0000ED70 48 10 9E A1 */ bl PredictMotion__13CPhysicsActorCFf /* 80011E14 0000ED74 C0 3F 00 40 */ lfs f1, 0x40(r31) /* 80011E18 0000ED78 C0 01 00 08 */ lfs f0, 8(r1) /* 80011E1C 0000ED7C C0 9F 00 50 */ lfs f4, 0x50(r31) /* 80011E20 0000ED80 C0 61 00 0C */ lfs f3, 0xc(r1) /* 80011E24 0000ED84 EC 01 00 2A */ fadds f0, f1, f0 /* 80011E28 0000ED88 C0 5F 00 60 */ lfs f2, 0x60(r31) /* 80011E2C 0000ED8C C0 21 00 10 */ lfs f1, 0x10(r1) /* 80011E30 0000ED90 EC 64 18 2A */ fadds f3, f4, f3 /* 80011E34 0000ED94 D0 1E 00 00 */ stfs f0, 0(r30) /* 80011E38 0000ED98 EC 02 08 2A */ fadds f0, f2, f1 /* 80011E3C 0000ED9C D0 7E 00 04 */ stfs f3, 4(r30) /* 80011E40 0000EDA0 D0 1E 00 08 */ stfs f0, 8(r30) /* 80011E44 0000EDA4 48 00 00 1C */ b lbl_80011E60 lbl_80011E48: /* 80011E48 0000EDA8 C0 5F 00 60 */ lfs f2, 0x60(r31) /* 80011E4C 0000EDAC C0 3F 00 50 */ lfs f1, 0x50(r31) /* 80011E50 0000EDB0 C0 1F 00 40 */ lfs f0, 0x40(r31) /* 80011E54 0000EDB4 D0 1E 00 00 */ stfs f0, 0(r30) /* 80011E58 0000EDB8 D0 3E 00 04 */ stfs f1, 4(r30) /* 80011E5C 0000EDBC D0 5E 00 08 */ stfs f2, 8(r30) lbl_80011E60: /* 80011E60 0000EDC0 80 01 00 54 */ lwz r0, 0x54(r1) /* 80011E64 0000EDC4 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 80011E68 0000EDC8 83 C1 00 48 */ lwz r30, 0x48(r1) /* 80011E6C 0000EDCC 7C 08 03 A6 */ mtlr r0 /* 80011E70 0000EDD0 38 21 00 50 */ addi r1, r1, 0x50 /* 80011E74 0000EDD4 4E 80 00 20 */ blr .global GetAimPosition__7CPlayerCFRC13CStateManagerf GetAimPosition__7CPlayerCFRC13CStateManagerf: /* 80011E78 0000EDD8 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80011E7C 0000EDDC 7C 08 02 A6 */ mflr r0 /* 80011E80 0000EDE0 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80011E84 0000EDE4 DB E1 00 90 */ stfd f31, 0x90(r1) /* 80011E88 0000EDE8 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80011E8C 0000EDEC DB C1 00 80 */ stfd f30, 0x80(r1) /* 80011E90 0000EDF0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80011E94 0000EDF4 DB A1 00 70 */ stfd f29, 0x70(r1) /* 80011E98 0000EDF8 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80011E9C 0000EDFC 93 E1 00 6C */ stw r31, 0x6c(r1) /* 80011EA0 0000EE00 93 C1 00 68 */ stw r30, 0x68(r1) /* 80011EA4 0000EE04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80011EA8 0000EE08 7C 9F 23 78 */ mr r31, r4 /* 80011EAC 0000EE0C C3 E4 00 40 */ lfs f31, 0x40(r4) /* 80011EB0 0000EE10 7C 7E 1B 78 */ mr r30, r3 /* 80011EB4 0000EE14 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80011EB8 0000EE18 C3 C4 00 50 */ lfs f30, 0x50(r4) /* 80011EBC 0000EE1C C3 A4 00 60 */ lfs f29, 0x60(r4) /* 80011EC0 0000EE20 40 81 00 7C */ ble lbl_80011F3C /* 80011EC4 0000EE24 80 1F 03 04 */ lwz r0, 0x304(r31) /* 80011EC8 0000EE28 2C 00 00 00 */ cmpwi r0, 0 /* 80011ECC 0000EE2C 40 82 00 28 */ bne lbl_80011EF4 /* 80011ED0 0000EE30 38 61 00 2C */ addi r3, r1, 0x2c /* 80011ED4 0000EE34 48 10 9D DD */ bl PredictMotion__13CPhysicsActorCFf /* 80011ED8 0000EE38 C0 41 00 2C */ lfs f2, 0x2c(r1) /* 80011EDC 0000EE3C C0 21 00 30 */ lfs f1, 0x30(r1) /* 80011EE0 0000EE40 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80011EE4 0000EE44 EF FF 10 2A */ fadds f31, f31, f2 /* 80011EE8 0000EE48 EF DE 08 2A */ fadds f30, f30, f1 /* 80011EEC 0000EE4C EF BD 00 2A */ fadds f29, f29, f0 /* 80011EF0 0000EE50 48 00 00 4C */ b lbl_80011F3C lbl_80011EF4: /* 80011EF4 0000EE54 C0 5F 01 38 */ lfs f2, 0x138(r31) /* 80011EF8 0000EE58 38 61 00 14 */ addi r3, r1, 0x14 /* 80011EFC 0000EE5C C0 7F 01 3C */ lfs f3, 0x13c(r31) /* 80011F00 0000EE60 38 81 00 08 */ addi r4, r1, 8 /* 80011F04 0000EE64 C0 1F 01 40 */ lfs f0, 0x140(r31) /* 80011F08 0000EE68 38 A1 00 20 */ addi r5, r1, 0x20 /* 80011F0C 0000EE6C D0 41 00 20 */ stfs f2, 0x20(r1) /* 80011F10 0000EE70 38 DF 03 14 */ addi r6, r31, 0x314 /* 80011F14 0000EE74 C0 5F 0A 04 */ lfs f2, 0xa04(r31) /* 80011F18 0000EE78 D0 61 00 24 */ stfs f3, 0x24(r1) /* 80011F1C 0000EE7C D0 01 00 28 */ stfs f0, 0x28(r1) /* 80011F20 0000EE80 D3 E1 00 08 */ stfs f31, 8(r1) /* 80011F24 0000EE84 D3 C1 00 0C */ stfs f30, 0xc(r1) /* 80011F28 0000EE88 D3 A1 00 10 */ stfs f29, 0x10(r1) /* 80011F2C 0000EE8C 48 12 AB 2D */ bl ProjectOrbitalPosition__18CSteeringBehaviorsFRC9CVector3fRC9CVector3fRC9CVector3ff /* 80011F30 0000EE90 C3 E1 00 14 */ lfs f31, 0x14(r1) /* 80011F34 0000EE94 C3 C1 00 18 */ lfs f30, 0x18(r1) /* 80011F38 0000EE98 C3 A1 00 1C */ lfs f29, 0x1c(r1) lbl_80011F3C: /* 80011F3C 0000EE9C 80 1F 02 F8 */ lwz r0, 0x2f8(r31) /* 80011F40 0000EEA0 2C 00 00 01 */ cmpwi r0, 1 /* 80011F44 0000EEA4 40 82 00 14 */ bne lbl_80011F58 /* 80011F48 0000EEA8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80011F4C 0000EEAC C0 03 02 7C */ lfs f0, 0x27c(r3) /* 80011F50 0000EEB0 EC 1D 00 2A */ fadds f0, f29, f0 /* 80011F54 0000EEB4 48 00 00 10 */ b lbl_80011F64 lbl_80011F58: /* 80011F58 0000EEB8 7F E3 FB 78 */ mr r3, r31 /* 80011F5C 0000EEBC 48 27 2E 85 */ bl GetEyeHeight__7CPlayerCFv /* 80011F60 0000EEC0 EC 1D 08 2A */ fadds f0, f29, f1 lbl_80011F64: /* 80011F64 0000EEC4 D3 FE 00 00 */ stfs f31, 0(r30) /* 80011F68 0000EEC8 D3 DE 00 04 */ stfs f30, 4(r30) /* 80011F6C 0000EECC D0 1E 00 08 */ stfs f0, 8(r30) /* 80011F70 0000EED0 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 80011F74 0000EED4 CB E1 00 90 */ lfd f31, 0x90(r1) /* 80011F78 0000EED8 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80011F7C 0000EEDC CB C1 00 80 */ lfd f30, 0x80(r1) /* 80011F80 0000EEE0 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80011F84 0000EEE4 CB A1 00 70 */ lfd f29, 0x70(r1) /* 80011F88 0000EEE8 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 80011F8C 0000EEEC 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80011F90 0000EEF0 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80011F94 0000EEF4 7C 08 03 A6 */ mtlr r0 /* 80011F98 0000EEF8 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80011F9C 0000EEFC 4E 80 00 20 */ blr .global ObjectInScanningRange__7CPlayerF9TUniqueIdRC13CStateManager ObjectInScanningRange__7CPlayerF9TUniqueIdRC13CStateManager: /* 80011FA0 0000EF00 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80011FA4 0000EF04 7C 08 02 A6 */ mflr r0 /* 80011FA8 0000EF08 90 01 00 44 */ stw r0, 0x44(r1) /* 80011FAC 0000EF0C DB E1 00 30 */ stfd f31, 0x30(r1) /* 80011FB0 0000EF10 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80011FB4 0000EF14 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80011FB8 0000EF18 A0 04 00 00 */ lhz r0, 0(r4) /* 80011FBC 0000EF1C 7C 7F 1B 78 */ mr r31, r3 /* 80011FC0 0000EF20 38 81 00 08 */ addi r4, r1, 8 /* 80011FC4 0000EF24 7C A3 2B 78 */ mr r3, r5 /* 80011FC8 0000EF28 B0 01 00 08 */ sth r0, 8(r1) /* 80011FCC 0000EF2C 48 03 A5 D9 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80011FD0 0000EF30 7C 64 1B 78 */ mr r4, r3 /* 80011FD4 0000EF34 38 61 00 0C */ addi r3, r1, 0xc /* 80011FD8 0000EF38 48 09 DC B9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 80011FDC 0000EF3C 80 83 00 04 */ lwz r4, 4(r3) /* 80011FE0 0000EF40 28 04 00 00 */ cmplwi r4, 0 /* 80011FE4 0000EF44 41 82 00 64 */ beq lbl_80012048 /* 80011FE8 0000EF48 C0 24 00 50 */ lfs f1, 0x50(r4) /* 80011FEC 0000EF4C 38 61 00 14 */ addi r3, r1, 0x14 /* 80011FF0 0000EF50 C0 1F 00 50 */ lfs f0, 0x50(r31) /* 80011FF4 0000EF54 C0 64 00 60 */ lfs f3, 0x60(r4) /* 80011FF8 0000EF58 C0 5F 00 60 */ lfs f2, 0x60(r31) /* 80011FFC 0000EF5C EC 81 00 28 */ fsubs f4, f1, f0 /* 80012000 0000EF60 C0 24 00 40 */ lfs f1, 0x40(r4) /* 80012004 0000EF64 C0 1F 00 40 */ lfs f0, 0x40(r31) /* 80012008 0000EF68 EC 43 10 28 */ fsubs f2, f3, f2 /* 8001200C 0000EF6C D0 81 00 18 */ stfs f4, 0x18(r1) /* 80012010 0000EF70 EC 01 00 28 */ fsubs f0, f1, f0 /* 80012014 0000EF74 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 80012018 0000EF78 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8001201C 0000EF7C 48 30 26 DD */ bl CanBeNormalized__9CVector3fCFv /* 80012020 0000EF80 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80012024 0000EF84 41 82 00 24 */ beq lbl_80012048 /* 80012028 0000EF88 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) /* 8001202C 0000EF8C 38 61 00 14 */ addi r3, r1, 0x14 /* 80012030 0000EF90 C3 E4 02 18 */ lfs f31, 0x218(r4) /* 80012034 0000EF94 48 30 28 85 */ bl Magnitude__9CVector3fCFv /* 80012038 0000EF98 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 8001203C 0000EF9C 40 80 00 0C */ bge lbl_80012048 /* 80012040 0000EFA0 38 60 00 01 */ li r3, 1 /* 80012044 0000EFA4 48 00 00 08 */ b lbl_8001204C lbl_80012048: /* 80012048 0000EFA8 38 60 00 00 */ li r3, 0 lbl_8001204C: /* 8001204C 0000EFAC E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80012050 0000EFB0 80 01 00 44 */ lwz r0, 0x44(r1) /* 80012054 0000EFB4 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80012058 0000EFB8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8001205C 0000EFBC 7C 08 03 A6 */ mtlr r0 /* 80012060 0000EFC0 38 21 00 40 */ addi r1, r1, 0x40 /* 80012064 0000EFC4 4E 80 00 20 */ blr .global FluidFXThink__7CPlayerFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager FluidFXThink__7CPlayerFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager: /* 80012068 0000EFC8 94 21 FE 40 */ stwu r1, -0x1c0(r1) /* 8001206C 0000EFCC 7C 08 02 A6 */ mflr r0 /* 80012070 0000EFD0 90 01 01 C4 */ stw r0, 0x1c4(r1) /* 80012074 0000EFD4 DB E1 01 B0 */ stfd f31, 0x1b0(r1) /* 80012078 0000EFD8 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 /* 8001207C 0000EFDC DB C1 01 A0 */ stfd f30, 0x1a0(r1) /* 80012080 0000EFE0 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 /* 80012084 0000EFE4 DB A1 01 90 */ stfd f29, 0x190(r1) /* 80012088 0000EFE8 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 /* 8001208C 0000EFEC DB 81 01 80 */ stfd f28, 0x180(r1) /* 80012090 0000EFF0 F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0 /* 80012094 0000EFF4 93 E1 01 7C */ stw r31, 0x17c(r1) /* 80012098 0000EFF8 93 C1 01 78 */ stw r30, 0x178(r1) /* 8001209C 0000EFFC 93 A1 01 74 */ stw r29, 0x174(r1) /* 800120A0 0000F000 93 81 01 70 */ stw r28, 0x170(r1) /* 800120A4 0000F004 7C 7C 1B 78 */ mr r28, r3 /* 800120A8 0000F008 7C 9F 23 78 */ mr r31, r4 /* 800120AC 0000F00C 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 800120B0 0000F010 7C BD 2B 78 */ mr r29, r5 /* 800120B4 0000F014 7C DE 33 78 */ mr r30, r6 /* 800120B8 0000F018 2C 00 00 01 */ cmpwi r0, 1 /* 800120BC 0000F01C 40 82 00 28 */ bne lbl_800120E4 /* 800120C0 0000F020 80 7C 07 68 */ lwz r3, 0x768(r28) /* 800120C4 0000F024 48 0D D8 DD */ bl FluidFXThink__10CMorphBallFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager /* 800120C8 0000F028 2C 1F 00 01 */ cmpwi r31, 1 /* 800120CC 0000F02C 40 82 03 FC */ bne lbl_800124C8 /* 800120D0 0000F030 88 1C 09 C5 */ lbz r0, 0x9c5(r28) /* 800120D4 0000F034 38 60 00 01 */ li r3, 1 /* 800120D8 0000F038 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 800120DC 0000F03C 98 1C 09 C5 */ stb r0, 0x9c5(r28) /* 800120E0 0000F040 48 00 03 E8 */ b lbl_800124C8 lbl_800120E4: /* 800120E4 0000F044 2C 00 00 00 */ cmpwi r0, 0 /* 800120E8 0000F048 41 82 00 94 */ beq lbl_8001217C /* 800120EC 0000F04C A0 1C 00 08 */ lhz r0, 8(r28) /* 800120F0 0000F050 38 81 00 3C */ addi r4, r1, 0x3c /* 800120F4 0000F054 B0 01 00 3C */ sth r0, 0x3c(r1) /* 800120F8 0000F058 B0 01 00 38 */ sth r0, 0x38(r1) /* 800120FC 0000F05C 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80012100 0000F060 48 11 D4 AD */ bl GetLastSplashDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 80012104 0000F064 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) /* 80012108 0000F068 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001210C 0000F06C 4C 41 13 82 */ cror 2, 1, 2 /* 80012110 0000F070 40 82 03 B8 */ bne lbl_800124C8 /* 80012114 0000F074 7F A4 EB 78 */ mr r4, r29 /* 80012118 0000F078 38 61 01 58 */ addi r3, r1, 0x158 /* 8001211C 0000F07C 48 06 45 B1 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 80012120 0000F080 C0 5C 00 60 */ lfs f2, 0x60(r28) /* 80012124 0000F084 7F E0 00 34 */ cntlzw r0, r31 /* 80012128 0000F088 C0 1C 00 50 */ lfs f0, 0x50(r28) /* 8001212C 0000F08C 7F C5 F3 78 */ mr r5, r30 /* 80012130 0000F090 C0 9C 00 40 */ lfs f4, 0x40(r28) /* 80012134 0000F094 7F A6 EB 78 */ mr r6, r29 /* 80012138 0000F098 C0 61 01 6C */ lfs f3, 0x16c(r1) /* 8001213C 0000F09C 38 81 00 34 */ addi r4, r1, 0x34 /* 80012140 0000F0A0 D0 81 01 04 */ stfs f4, 0x104(r1) /* 80012144 0000F0A4 38 E1 01 04 */ addi r7, r1, 0x104 /* 80012148 0000F0A8 C0 22 81 40 */ lfs f1, lbl_805A9E60@sda21(r2) /* 8001214C 0000F0AC 54 08 D9 7E */ srwi r8, r0, 5 /* 80012150 0000F0B0 D0 01 01 08 */ stfs f0, 0x108(r1) /* 80012154 0000F0B4 D0 61 01 0C */ stfs f3, 0x10c(r1) /* 80012158 0000F0B8 A0 1C 00 08 */ lhz r0, 8(r28) /* 8001215C 0000F0BC D0 81 00 C8 */ stfs f4, 0xc8(r1) /* 80012160 0000F0C0 B0 01 00 34 */ sth r0, 0x34(r1) /* 80012164 0000F0C4 D0 01 00 CC */ stfs f0, 0xcc(r1) /* 80012168 0000F0C8 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 8001216C 0000F0CC D0 41 00 D0 */ stfs f2, 0xd0(r1) /* 80012170 0000F0D0 B0 01 00 30 */ sth r0, 0x30(r1) /* 80012174 0000F0D4 48 11 D1 45 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb /* 80012178 0000F0D8 48 00 03 50 */ b lbl_800124C8 lbl_8001217C: /* 8001217C 0000F0DC A0 1C 00 08 */ lhz r0, 8(r28) /* 80012180 0000F0E0 38 81 00 2C */ addi r4, r1, 0x2c /* 80012184 0000F0E4 B0 01 00 2C */ sth r0, 0x2c(r1) /* 80012188 0000F0E8 B0 01 00 28 */ sth r0, 0x28(r1) /* 8001218C 0000F0EC 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80012190 0000F0F0 48 11 D4 1D */ bl GetLastSplashDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 80012194 0000F0F4 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) /* 80012198 0000F0F8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001219C 0000F0FC 4C 41 13 82 */ cror 2, 1, 2 /* 800121A0 0000F100 40 82 03 28 */ bne lbl_800124C8 /* 800121A4 0000F104 C0 1C 05 0C */ lfs f0, 0x50c(r28) /* 800121A8 0000F108 38 61 00 F8 */ addi r3, r1, 0xf8 /* 800121AC 0000F10C D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 800121B0 0000F110 C0 1C 05 10 */ lfs f0, 0x510(r28) /* 800121B4 0000F114 D0 01 00 FC */ stfs f0, 0xfc(r1) /* 800121B8 0000F118 C0 1C 05 14 */ lfs f0, 0x514(r28) /* 800121BC 0000F11C D0 01 01 00 */ stfs f0, 0x100(r1) /* 800121C0 0000F120 48 30 25 39 */ bl CanBeNormalized__9CVector3fCFv /* 800121C4 0000F124 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800121C8 0000F128 41 82 00 3C */ beq lbl_80012204 /* 800121CC 0000F12C 38 61 00 BC */ addi r3, r1, 0xbc /* 800121D0 0000F130 38 81 00 F8 */ addi r4, r1, 0xf8 /* 800121D4 0000F134 48 30 26 7D */ bl AsNormalized__9CVector3fCFv /* 800121D8 0000F138 C0 61 00 C4 */ lfs f3, 0xc4(r1) /* 800121DC 0000F13C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800121E0 0000F140 C0 21 00 BC */ lfs f1, 0xbc(r1) /* 800121E4 0000F144 C0 42 81 44 */ lfs f2, lbl_805A9E64@sda21(r2) /* 800121E8 0000F148 EC 63 00 32 */ fmuls f3, f3, f0 /* 800121EC 0000F14C C0 01 00 C0 */ lfs f0, 0xc0(r1) /* 800121F0 0000F150 EC 21 00 B2 */ fmuls f1, f1, f2 /* 800121F4 0000F154 EC 00 00 B2 */ fmuls f0, f0, f2 /* 800121F8 0000F158 D0 61 01 00 */ stfs f3, 0x100(r1) /* 800121FC 0000F15C D0 21 00 F8 */ stfs f1, 0xf8(r1) /* 80012200 0000F160 D0 01 00 FC */ stfs f0, 0xfc(r1) lbl_80012204: /* 80012204 0000F164 2C 1F 00 01 */ cmpwi r31, 1 /* 80012208 0000F168 41 82 01 A8 */ beq lbl_800123B0 /* 8001220C 0000F16C 40 80 00 10 */ bge lbl_8001221C /* 80012210 0000F170 2C 1F 00 00 */ cmpwi r31, 0 /* 80012214 0000F174 40 80 00 14 */ bge lbl_80012228 /* 80012218 0000F178 48 00 02 B0 */ b lbl_800124C8 lbl_8001221C: /* 8001221C 0000F17C 2C 1F 00 03 */ cmpwi r31, 3 /* 80012220 0000F180 40 80 02 A8 */ bge lbl_800124C8 /* 80012224 0000F184 48 00 02 34 */ b lbl_80012458 lbl_80012228: /* 80012228 0000F188 C0 3C 04 FC */ lfs f1, 0x4fc(r28) /* 8001222C 0000F18C 3B E0 00 01 */ li r31, 1 /* 80012230 0000F190 C0 02 81 48 */ lfs f0, lbl_805A9E68@sda21(r2) /* 80012234 0000F194 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80012238 0000F198 40 81 00 A8 */ ble lbl_800122E0 /* 8001223C 0000F19C C0 7C 00 58 */ lfs f3, 0x58(r28) /* 80012240 0000F1A0 38 61 00 B0 */ addi r3, r1, 0xb0 /* 80012244 0000F1A4 C0 5C 00 48 */ lfs f2, 0x48(r28) /* 80012248 0000F1A8 38 81 00 A4 */ addi r4, r1, 0xa4 /* 8001224C 0000F1AC C0 3C 00 38 */ lfs f1, 0x38(r28) /* 80012250 0000F1B0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80012254 0000F1B4 D0 21 00 98 */ stfs f1, 0x98(r1) /* 80012258 0000F1B8 D0 41 00 9C */ stfs f2, 0x9c(r1) /* 8001225C 0000F1BC D0 61 00 A0 */ stfs f3, 0xa0(r1) /* 80012260 0000F1C0 D0 21 00 A4 */ stfs f1, 0xa4(r1) /* 80012264 0000F1C4 D0 41 00 A8 */ stfs f2, 0xa8(r1) /* 80012268 0000F1C8 D0 01 00 AC */ stfs f0, 0xac(r1) /* 8001226C 0000F1CC 48 30 25 E5 */ bl AsNormalized__9CVector3fCFv /* 80012270 0000F1D0 C3 C1 00 B0 */ lfs f30, 0xb0(r1) /* 80012274 0000F1D4 7F 84 E3 78 */ mr r4, r28 /* 80012278 0000F1D8 C3 A1 00 B4 */ lfs f29, 0xb4(r1) /* 8001227C 0000F1DC 38 61 00 68 */ addi r3, r1, 0x68 /* 80012280 0000F1E0 C3 81 00 B8 */ lfs f28, 0xb8(r1) /* 80012284 0000F1E4 48 27 62 6D */ bl GetDampedClampedVelocityWR__7CPlayerCFv /* 80012288 0000F1E8 C3 E1 00 6C */ lfs f31, 0x6c(r1) /* 8001228C 0000F1EC 7F 84 E3 78 */ mr r4, r28 /* 80012290 0000F1F0 38 61 00 74 */ addi r3, r1, 0x74 /* 80012294 0000F1F4 48 27 62 5D */ bl GetDampedClampedVelocityWR__7CPlayerCFv /* 80012298 0000F1F8 C0 21 00 74 */ lfs f1, 0x74(r1) /* 8001229C 0000F1FC 38 61 00 8C */ addi r3, r1, 0x8c /* 800122A0 0000F200 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800122A4 0000F204 38 81 00 80 */ addi r4, r1, 0x80 /* 800122A8 0000F208 D0 21 00 80 */ stfs f1, 0x80(r1) /* 800122AC 0000F20C D3 E1 00 84 */ stfs f31, 0x84(r1) /* 800122B0 0000F210 D0 01 00 88 */ stfs f0, 0x88(r1) /* 800122B4 0000F214 48 30 25 9D */ bl AsNormalized__9CVector3fCFv /* 800122B8 0000F218 C0 01 00 90 */ lfs f0, 0x90(r1) /* 800122BC 0000F21C C0 41 00 8C */ lfs f2, 0x8c(r1) /* 800122C0 0000F220 EC 3D 00 32 */ fmuls f1, f29, f0 /* 800122C4 0000F224 C0 61 00 94 */ lfs f3, 0x94(r1) /* 800122C8 0000F228 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) /* 800122CC 0000F22C EC 3E 08 BA */ fmadds f1, f30, f2, f1 /* 800122D0 0000F230 EC 3C 08 FA */ fmadds f1, f28, f3, f1 /* 800122D4 0000F234 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800122D8 0000F238 40 81 00 08 */ ble lbl_800122E0 /* 800122DC 0000F23C 3B E0 00 00 */ li r31, 0 lbl_800122E0: /* 800122E0 0000F240 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 800122E4 0000F244 41 82 01 E4 */ beq lbl_800124C8 /* 800122E8 0000F248 7F A4 EB 78 */ mr r4, r29 /* 800122EC 0000F24C 38 61 01 40 */ addi r3, r1, 0x140 /* 800122F0 0000F250 48 06 43 DD */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 800122F4 0000F254 C0 7C 00 50 */ lfs f3, 0x50(r28) /* 800122F8 0000F258 7F C5 F3 78 */ mr r5, r30 /* 800122FC 0000F25C C0 DC 00 40 */ lfs f6, 0x40(r28) /* 80012300 0000F260 7F A6 EB 78 */ mr r6, r29 /* 80012304 0000F264 C0 21 00 F8 */ lfs f1, 0xf8(r1) /* 80012308 0000F268 38 81 00 24 */ addi r4, r1, 0x24 /* 8001230C 0000F26C C0 01 00 FC */ lfs f0, 0xfc(r1) /* 80012310 0000F270 38 E1 00 EC */ addi r7, r1, 0xec /* 80012314 0000F274 C0 9C 00 60 */ lfs f4, 0x60(r28) /* 80012318 0000F278 EC 46 08 2A */ fadds f2, f6, f1 /* 8001231C 0000F27C EC 03 00 2A */ fadds f0, f3, f0 /* 80012320 0000F280 C0 A1 01 54 */ lfs f5, 0x154(r1) /* 80012324 0000F284 D0 C1 00 5C */ stfs f6, 0x5c(r1) /* 80012328 0000F288 39 00 00 01 */ li r8, 1 /* 8001232C 0000F28C C0 22 81 50 */ lfs f1, lbl_805A9E70@sda21(r2) /* 80012330 0000F290 D0 41 00 EC */ stfs f2, 0xec(r1) /* 80012334 0000F294 D0 01 00 F0 */ stfs f0, 0xf0(r1) /* 80012338 0000F298 D0 A1 00 F4 */ stfs f5, 0xf4(r1) /* 8001233C 0000F29C A0 1C 00 08 */ lhz r0, 8(r28) /* 80012340 0000F2A0 D0 61 00 60 */ stfs f3, 0x60(r1) /* 80012344 0000F2A4 B0 01 00 24 */ sth r0, 0x24(r1) /* 80012348 0000F2A8 D0 81 00 64 */ stfs f4, 0x64(r1) /* 8001234C 0000F2AC 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 80012350 0000F2B0 B0 01 00 20 */ sth r0, 0x20(r1) /* 80012354 0000F2B4 48 11 CF 65 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb /* 80012358 0000F2B8 80 7D 01 B4 */ lwz r3, 0x1b4(r29) /* 8001235C 0000F2BC 80 03 00 44 */ lwz r0, 0x44(r3) /* 80012360 0000F2C0 2C 00 00 00 */ cmpwi r0, 0 /* 80012364 0000F2C4 40 82 01 64 */ bne lbl_800124C8 /* 80012368 0000F2C8 80 7E 08 4C */ lwz r3, 0x84c(r30) /* 8001236C 0000F2CC 38 63 01 38 */ addi r3, r3, 0x138 /* 80012370 0000F2D0 48 30 25 49 */ bl Magnitude__9CVector3fCFv /* 80012374 0000F2D4 C0 42 81 54 */ lfs f2, lbl_805A9E74@sda21(r2) /* 80012378 0000F2D8 C0 0D 80 FC */ lfs f0, lbl_805A6CBC@sda21(r13) /* 8001237C 0000F2DC EC 21 10 24 */ fdivs f1, f1, f2 /* 80012380 0000F2E0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80012384 0000F2E4 D0 21 00 40 */ stfs f1, 0x40(r1) /* 80012388 0000F2E8 40 80 00 0C */ bge lbl_80012394 /* 8001238C 0000F2EC 38 61 00 40 */ addi r3, r1, 0x40 /* 80012390 0000F2F0 48 00 00 08 */ b lbl_80012398 lbl_80012394: /* 80012394 0000F2F4 38 6D 80 FC */ addi r3, r13, lbl_805A6CBC@sda21 lbl_80012398: /* 80012398 0000F2F8 C0 22 81 54 */ lfs f1, lbl_805A9E74@sda21(r2) /* 8001239C 0000F2FC C0 03 00 00 */ lfs f0, 0(r3) /* 800123A0 0000F300 80 7E 08 80 */ lwz r3, 0x880(r30) /* 800123A4 0000F304 EC 01 00 32 */ fmuls f0, f1, f0 /* 800123A8 0000F308 D0 03 0B 54 */ stfs f0, 0xb54(r3) /* 800123AC 0000F30C 48 00 01 1C */ b lbl_800124C8 lbl_800123B0: /* 800123B0 0000F310 38 7C 01 38 */ addi r3, r28, 0x138 /* 800123B4 0000F314 48 30 25 05 */ bl Magnitude__9CVector3fCFv /* 800123B8 0000F318 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 800123BC 0000F31C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800123C0 0000F320 40 81 01 08 */ ble lbl_800124C8 /* 800123C4 0000F324 A0 1C 00 08 */ lhz r0, 8(r28) /* 800123C8 0000F328 38 81 00 1C */ addi r4, r1, 0x1c /* 800123CC 0000F32C B0 01 00 1C */ sth r0, 0x1c(r1) /* 800123D0 0000F330 B0 01 00 18 */ sth r0, 0x18(r1) /* 800123D4 0000F334 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 800123D8 0000F338 48 11 D1 A9 */ bl GetLastRippleDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 800123DC 0000F33C C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) /* 800123E0 0000F340 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800123E4 0000F344 4C 41 13 82 */ cror 2, 1, 2 /* 800123E8 0000F348 40 82 00 E0 */ bne lbl_800124C8 /* 800123EC 0000F34C 7F A4 EB 78 */ mr r4, r29 /* 800123F0 0000F350 38 61 01 28 */ addi r3, r1, 0x128 /* 800123F4 0000F354 48 06 42 D9 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 800123F8 0000F358 C0 5C 00 60 */ lfs f2, 0x60(r28) /* 800123FC 0000F35C 7F A6 EB 78 */ mr r6, r29 /* 80012400 0000F360 C0 1C 00 50 */ lfs f0, 0x50(r28) /* 80012404 0000F364 7F C7 F3 78 */ mr r7, r30 /* 80012408 0000F368 C0 9C 00 40 */ lfs f4, 0x40(r28) /* 8001240C 0000F36C 38 81 00 14 */ addi r4, r1, 0x14 /* 80012410 0000F370 C0 61 01 3C */ lfs f3, 0x13c(r1) /* 80012414 0000F374 38 A1 00 E0 */ addi r5, r1, 0xe0 /* 80012418 0000F378 D0 81 00 E0 */ stfs f4, 0xe0(r1) /* 8001241C 0000F37C C0 22 96 D0 */ lfs f1, lbl_805AB3F0@sda21(r2) /* 80012420 0000F380 D0 01 00 E4 */ stfs f0, 0xe4(r1) /* 80012424 0000F384 D0 61 00 E8 */ stfs f3, 0xe8(r1) /* 80012428 0000F388 A0 1C 00 08 */ lhz r0, 8(r28) /* 8001242C 0000F38C D0 81 00 50 */ stfs f4, 0x50(r1) /* 80012430 0000F390 B0 01 00 14 */ sth r0, 0x14(r1) /* 80012434 0000F394 80 7D 01 B4 */ lwz r3, 0x1b4(r29) /* 80012438 0000F398 D0 01 00 54 */ stfs f0, 0x54(r1) /* 8001243C 0000F39C 81 83 00 00 */ lwz r12, 0(r3) /* 80012440 0000F3A0 D0 41 00 58 */ stfs f2, 0x58(r1) /* 80012444 0000F3A4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80012448 0000F3A8 B0 01 00 10 */ sth r0, 0x10(r1) /* 8001244C 0000F3AC 7D 89 03 A6 */ mtctr r12 /* 80012450 0000F3B0 4E 80 04 21 */ bctrl /* 80012454 0000F3B4 48 00 00 74 */ b lbl_800124C8 lbl_80012458: /* 80012458 0000F3B8 7F A4 EB 78 */ mr r4, r29 /* 8001245C 0000F3BC 38 61 01 10 */ addi r3, r1, 0x110 /* 80012460 0000F3C0 48 06 42 6D */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 80012464 0000F3C4 C0 7C 00 50 */ lfs f3, 0x50(r28) /* 80012468 0000F3C8 7F C5 F3 78 */ mr r5, r30 /* 8001246C 0000F3CC C0 DC 00 40 */ lfs f6, 0x40(r28) /* 80012470 0000F3D0 7F A6 EB 78 */ mr r6, r29 /* 80012474 0000F3D4 C0 21 00 F8 */ lfs f1, 0xf8(r1) /* 80012478 0000F3D8 38 81 00 0C */ addi r4, r1, 0xc /* 8001247C 0000F3DC C0 01 00 FC */ lfs f0, 0xfc(r1) /* 80012480 0000F3E0 38 E1 00 D4 */ addi r7, r1, 0xd4 /* 80012484 0000F3E4 C0 9C 00 60 */ lfs f4, 0x60(r28) /* 80012488 0000F3E8 EC 46 08 2A */ fadds f2, f6, f1 /* 8001248C 0000F3EC EC 03 00 2A */ fadds f0, f3, f0 /* 80012490 0000F3F0 C0 A1 01 24 */ lfs f5, 0x124(r1) /* 80012494 0000F3F4 D0 C1 00 44 */ stfs f6, 0x44(r1) /* 80012498 0000F3F8 39 00 00 01 */ li r8, 1 /* 8001249C 0000F3FC C0 22 81 58 */ lfs f1, lbl_805A9E78@sda21(r2) /* 800124A0 0000F400 D0 41 00 D4 */ stfs f2, 0xd4(r1) /* 800124A4 0000F404 D0 01 00 D8 */ stfs f0, 0xd8(r1) /* 800124A8 0000F408 D0 A1 00 DC */ stfs f5, 0xdc(r1) /* 800124AC 0000F40C A0 1C 00 08 */ lhz r0, 8(r28) /* 800124B0 0000F410 D0 61 00 48 */ stfs f3, 0x48(r1) /* 800124B4 0000F414 B0 01 00 0C */ sth r0, 0xc(r1) /* 800124B8 0000F418 D0 81 00 4C */ stfs f4, 0x4c(r1) /* 800124BC 0000F41C 80 7E 08 7C */ lwz r3, 0x87c(r30) /* 800124C0 0000F420 B0 01 00 08 */ sth r0, 8(r1) /* 800124C4 0000F424 48 11 CD F5 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb lbl_800124C8: /* 800124C8 0000F428 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 /* 800124CC 0000F42C CB E1 01 B0 */ lfd f31, 0x1b0(r1) /* 800124D0 0000F430 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 /* 800124D4 0000F434 CB C1 01 A0 */ lfd f30, 0x1a0(r1) /* 800124D8 0000F438 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 /* 800124DC 0000F43C CB A1 01 90 */ lfd f29, 0x190(r1) /* 800124E0 0000F440 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0 /* 800124E4 0000F444 CB 81 01 80 */ lfd f28, 0x180(r1) /* 800124E8 0000F448 83 E1 01 7C */ lwz r31, 0x17c(r1) /* 800124EC 0000F44C 83 C1 01 78 */ lwz r30, 0x178(r1) /* 800124F0 0000F450 83 A1 01 74 */ lwz r29, 0x174(r1) /* 800124F4 0000F454 80 01 01 C4 */ lwz r0, 0x1c4(r1) /* 800124F8 0000F458 83 81 01 70 */ lwz r28, 0x170(r1) /* 800124FC 0000F45C 7C 08 03 A6 */ mtlr r0 /* 80012500 0000F460 38 21 01 C0 */ addi r1, r1, 0x1c0 .global sub_80012504 sub_80012504: /* 80012504 0000F464 4E 80 00 20 */ blr .global GetDamageLocationWR__7CPlayerCFv GetDamageLocationWR__7CPlayerCFv: /* 80012508 0000F468 C0 04 05 64 */ lfs f0, 0x564(r4) /* 8001250C 0000F46C D0 03 00 00 */ stfs f0, 0(r3) /* 80012510 0000F470 C0 04 05 68 */ lfs f0, 0x568(r4) /* 80012514 0000F474 D0 03 00 04 */ stfs f0, 4(r3) /* 80012518 0000F478 C0 04 05 6C */ lfs f0, 0x56c(r4) /* 8001251C 0000F47C D0 03 00 08 */ stfs f0, 8(r3) /* 80012520 0000F480 4E 80 00 20 */ blr .global GetPrevDamageAmount__7CPlayerCFv GetPrevDamageAmount__7CPlayerCFv: /* 80012524 0000F484 C0 23 05 60 */ lfs f1, 0x560(r3) /* 80012528 0000F488 4E 80 00 20 */ blr .global GetDamageAmount__7CPlayerCFv GetDamageAmount__7CPlayerCFv: /* 8001252C 0000F48C C0 23 05 5C */ lfs f1, 0x55c(r3) /* 80012530 0000F490 4E 80 00 20 */ blr .global WasDamaged__7CPlayerCFv WasDamaged__7CPlayerCFv: /* 80012534 0000F494 88 63 05 58 */ lbz r3, 0x558(r3) /* 80012538 0000F498 4E 80 00 20 */ blr .global TakeDamage__7CPlayerFbRC9CVector3ff11EWeaponTypeR13CStateManager TakeDamage__7CPlayerFbRC9CVector3ff11EWeaponTypeR13CStateManager: /* 8001253C 0000F49C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80012540 0000F4A0 7C 08 02 A6 */ mflr r0 /* 80012544 0000F4A4 90 01 00 54 */ stw r0, 0x54(r1) /* 80012548 0000F4A8 DB E1 00 40 */ stfd f31, 0x40(r1) /* 8001254C 0000F4AC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80012550 0000F4B0 BF 21 00 24 */ stmw r25, 0x24(r1) /* 80012554 0000F4B4 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80012558 0000F4B8 FF E0 08 90 */ fmr f31, f1 /* 8001255C 0000F4BC 7C 7A 1B 78 */ mr r26, r3 /* 80012560 0000F4C0 7C BB 2B 78 */ mr r27, r5 /* 80012564 0000F4C4 7C FC 3B 78 */ mr r28, r7 /* 80012568 0000F4C8 41 82 03 34 */ beq lbl_8001289C /* 8001256C 0000F4CC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80012570 0000F4D0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80012574 0000F4D4 4C 41 13 82 */ cror 2, 1, 2 /* 80012578 0000F4D8 40 82 03 08 */ bne lbl_80012880 /* 8001257C 0000F4DC C0 02 81 68 */ lfs f0, lbl_805A9E88@sda21(r2) /* 80012580 0000F4E0 2C 06 00 09 */ cmpwi r6, 9 /* 80012584 0000F4E4 38 00 00 00 */ li r0, 0 /* 80012588 0000F4E8 D0 1A 05 70 */ stfs f0, 0x570(r26) /* 8001258C 0000F4EC D3 FA 05 5C */ stfs f31, 0x55c(r26) /* 80012590 0000F4F0 40 82 00 14 */ bne lbl_800125A4 /* 80012594 0000F4F4 C0 02 81 6C */ lfs f0, lbl_805A9E8C@sda21(r2) /* 80012598 0000F4F8 FC 00 F8 00 */ fcmpu cr0, f0, f31 /* 8001259C 0000F4FC 40 82 00 08 */ bne lbl_800125A4 /* 800125A0 0000F500 38 00 00 01 */ li r0, 1 lbl_800125A4: /* 800125A4 0000F504 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 800125A8 0000F508 41 82 00 0C */ beq lbl_800125B4 /* 800125AC 0000F50C C0 02 81 54 */ lfs f0, lbl_805A9E74@sda21(r2) /* 800125B0 0000F510 48 00 00 08 */ b lbl_800125B8 lbl_800125B4: /* 800125B4 0000F514 FC 00 F8 90 */ fmr f0, f31 lbl_800125B8: /* 800125B8 0000F518 D0 1A 05 60 */ stfs f0, 0x560(r26) /* 800125BC 0000F51C 38 06 FF F8 */ addi r0, r6, -8 /* 800125C0 0000F520 28 00 00 06 */ cmplwi r0, 6 /* 800125C4 0000F524 38 60 00 01 */ li r3, 1 /* 800125C8 0000F528 C0 1B 00 00 */ lfs f0, 0(r27) /* 800125CC 0000F52C 3B E0 00 00 */ li r31, 0 /* 800125D0 0000F530 3B C0 00 00 */ li r30, 0 /* 800125D4 0000F534 38 80 00 00 */ li r4, 0 /* 800125D8 0000F538 D0 1A 05 64 */ stfs f0, 0x564(r26) /* 800125DC 0000F53C 3B A0 00 00 */ li r29, 0 /* 800125E0 0000F540 C0 1B 00 04 */ lfs f0, 4(r27) /* 800125E4 0000F544 D0 1A 05 68 */ stfs f0, 0x568(r26) /* 800125E8 0000F548 C0 1B 00 08 */ lfs f0, 8(r27) /* 800125EC 0000F54C D0 1A 05 6C */ stfs f0, 0x56c(r26) /* 800125F0 0000F550 98 7A 05 58 */ stb r3, 0x558(r26) /* 800125F4 0000F554 41 81 00 40 */ bgt lbl_80012634 /* 800125F8 0000F558 3C 60 80 3E */ lis r3, lbl_803D9770@ha /* 800125FC 0000F55C 54 00 10 3A */ slwi r0, r0, 2 /* 80012600 0000F560 38 63 97 70 */ addi r3, r3, lbl_803D9770@l /* 80012604 0000F564 7C 03 00 2E */ lwzx r0, r3, r0 /* 80012608 0000F568 7C 09 03 A6 */ mtctr r0 /* 8001260C 0000F56C 4E 80 04 20 */ bctr .global lbl_80012610 lbl_80012610: /* 80012610 0000F570 3B C0 0C 2A */ li r30, 0xc2a /* 80012614 0000F574 38 80 06 75 */ li r4, 0x675 /* 80012618 0000F578 48 00 00 88 */ b lbl_800126A0 .global lbl_8001261C lbl_8001261C: /* 8001261C 0000F57C 3B C0 05 CE */ li r30, 0x5ce /* 80012620 0000F580 38 80 06 61 */ li r4, 0x661 /* 80012624 0000F584 48 00 00 7C */ b lbl_800126A0 .global lbl_80012628 lbl_80012628: /* 80012628 0000F588 3B C0 02 91 */ li r30, 0x291 .global lbl_8001262C lbl_8001262C: /* 8001262C 0000F58C 38 80 06 78 */ li r4, 0x678 /* 80012630 0000F590 48 00 00 70 */ b lbl_800126A0 .global lbl_80012634 lbl_80012634: /* 80012634 0000F594 80 1A 02 F8 */ lwz r0, 0x2f8(r26) /* 80012638 0000F598 2C 00 00 00 */ cmpwi r0, 0 /* 8001263C 0000F59C 40 82 00 38 */ bne lbl_80012674 /* 80012640 0000F5A0 C0 02 81 08 */ lfs f0, lbl_805A9E28@sda21(r2) /* 80012644 0000F5A4 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80012648 0000F5A8 40 81 00 0C */ ble lbl_80012654 /* 8001264C 0000F5AC 38 80 05 E8 */ li r4, 0x5e8 /* 80012650 0000F5B0 48 00 00 1C */ b lbl_8001266C lbl_80012654: /* 80012654 0000F5B4 C0 02 81 70 */ lfs f0, lbl_805A9E90@sda21(r2) /* 80012658 0000F5B8 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8001265C 0000F5BC 40 81 00 0C */ ble lbl_80012668 /* 80012660 0000F5C0 38 80 05 E7 */ li r4, 0x5e7 /* 80012664 0000F5C4 48 00 00 08 */ b lbl_8001266C lbl_80012668: /* 80012668 0000F5C8 38 80 05 D1 */ li r4, 0x5d1 lbl_8001266C: /* 8001266C 0000F5CC 3B E0 05 BB */ li r31, 0x5bb /* 80012670 0000F5D0 48 00 00 30 */ b lbl_800126A0 lbl_80012674: /* 80012674 0000F5D4 C0 02 81 08 */ lfs f0, lbl_805A9E28@sda21(r2) /* 80012678 0000F5D8 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8001267C 0000F5DC 40 81 00 0C */ ble lbl_80012688 /* 80012680 0000F5E0 3B E0 05 EA */ li r31, 0x5ea /* 80012684 0000F5E4 48 00 00 1C */ b lbl_800126A0 lbl_80012688: /* 80012688 0000F5E8 C0 02 81 70 */ lfs f0, lbl_805A9E90@sda21(r2) /* 8001268C 0000F5EC FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80012690 0000F5F0 40 81 00 0C */ ble lbl_8001269C /* 80012694 0000F5F4 3B E0 05 E9 */ li r31, 0x5e9 /* 80012698 0000F5F8 48 00 00 08 */ b lbl_800126A0 lbl_8001269C: /* 8001269C 0000F5FC 3B E0 05 D3 */ li r31, 0x5d3 lbl_800126A0: /* 800126A0 0000F600 7C 80 07 35 */ extsh. r0, r4 /* 800126A4 0000F604 41 82 00 44 */ beq lbl_800126E8 /* 800126A8 0000F608 C0 3A 07 74 */ lfs f1, 0x774(r26) /* 800126AC 0000F60C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800126B0 0000F610 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800126B4 0000F614 4C 40 13 82 */ cror 2, 0, 2 /* 800126B8 0000F618 40 82 00 30 */ bne lbl_800126E8 /* 800126BC 0000F61C 7F 43 D3 78 */ mr r3, r26 /* 800126C0 0000F620 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 800126C4 0000F624 38 A0 00 7F */ li r5, 0x7f /* 800126C8 0000F628 38 C0 00 08 */ li r6, 8 /* 800126CC 0000F62C 4B FF E5 95 */ bl StartSamusVoiceSfx__7CPlayerFUssi /* 800126D0 0000F630 80 7C 09 00 */ lwz r3, 0x900(r28) /* 800126D4 0000F634 C0 22 81 28 */ lfs f1, lbl_805A9E48@sda21(r2) /* 800126D8 0000F638 C0 42 81 74 */ lfs f2, lbl_805A9E94@sda21(r2) /* 800126DC 0000F63C 48 2F FE 69 */ bl Range__9CRandom16Fff /* 800126E0 0000F640 D0 3A 07 74 */ stfs f1, 0x774(r26) /* 800126E4 0000F644 3B A0 00 01 */ li r29, 1 lbl_800126E8: /* 800126E8 0000F648 80 7A 07 70 */ lwz r3, 0x770(r26) /* 800126EC 0000F64C 7F C0 07 35 */ extsh. r0, r30 /* 800126F0 0000F650 7C 03 00 D0 */ neg r0, r3 /* 800126F4 0000F654 7C 60 03 78 */ or r0, r3, r0 /* 800126F8 0000F658 54 19 0F FE */ srwi r25, r0, 0x1f /* 800126FC 0000F65C 41 82 00 98 */ beq lbl_80012794 /* 80012700 0000F660 88 1A 09 C7 */ lbz r0, 0x9c7(r26) /* 80012704 0000F664 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80012708 0000F668 40 82 00 8C */ bne lbl_80012794 /* 8001270C 0000F66C 80 1A 0A 2C */ lwz r0, 0xa2c(r26) /* 80012710 0000F670 2C 00 00 02 */ cmpwi r0, 2 /* 80012714 0000F674 41 80 00 80 */ blt lbl_80012794 /* 80012718 0000F678 28 19 00 00 */ cmplwi r25, 0 /* 8001271C 0000F67C 41 82 00 14 */ beq lbl_80012730 /* 80012720 0000F680 A0 7A 07 88 */ lhz r3, 0x788(r26) /* 80012724 0000F684 7F C0 07 34 */ extsh r0, r30 /* 80012728 0000F688 7C 03 00 00 */ cmpw r3, r0 /* 8001272C 0000F68C 41 82 00 60 */ beq lbl_8001278C lbl_80012730: /* 80012730 0000F690 28 19 00 00 */ cmplwi r25, 0 /* 80012734 0000F694 41 82 00 24 */ beq lbl_80012758 /* 80012738 0000F698 A0 7A 07 88 */ lhz r3, 0x788(r26) /* 8001273C 0000F69C 7F C0 07 34 */ extsh r0, r30 /* 80012740 0000F6A0 7C 03 00 00 */ cmpw r3, r0 /* 80012744 0000F6A4 41 82 00 14 */ beq lbl_80012758 /* 80012748 0000F6A8 80 1A 07 70 */ lwz r0, 0x770(r26) /* 8001274C 0000F6AC 38 61 00 14 */ addi r3, r1, 0x14 /* 80012750 0000F6B0 90 01 00 14 */ stw r0, 0x14(r1) /* 80012754 0000F6B4 48 2D 75 F5 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle lbl_80012758: /* 80012758 0000F6B8 57 DE 04 3E */ clrlwi r30, r30, 0x10 /* 8001275C 0000F6BC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80012760 0000F6C0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80012764 0000F6C4 7F C4 F3 78 */ mr r4, r30 /* 80012768 0000F6C8 38 61 00 10 */ addi r3, r1, 0x10 /* 8001276C 0000F6CC 38 A0 00 7F */ li r5, 0x7f /* 80012770 0000F6D0 38 C0 00 40 */ li r6, 0x40 /* 80012774 0000F6D4 38 E0 00 00 */ li r7, 0 /* 80012778 0000F6D8 39 20 00 01 */ li r9, 1 /* 8001277C 0000F6DC 48 2D 75 F9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80012780 0000F6E0 80 01 00 10 */ lwz r0, 0x10(r1) /* 80012784 0000F6E4 90 1A 07 70 */ stw r0, 0x770(r26) /* 80012788 0000F6E8 B3 DA 07 88 */ sth r30, 0x788(r26) lbl_8001278C: /* 8001278C 0000F6EC C0 02 81 68 */ lfs f0, lbl_805A9E88@sda21(r2) /* 80012790 0000F6F0 D0 1A 07 84 */ stfs f0, 0x784(r26) lbl_80012794: /* 80012794 0000F6F4 7F E0 07 35 */ extsh. r0, r31 /* 80012798 0000F6F8 41 82 00 5C */ beq lbl_800127F4 /* 8001279C 0000F6FC 28 19 00 00 */ cmplwi r25, 0 /* 800127A0 0000F700 41 82 00 1C */ beq lbl_800127BC /* 800127A4 0000F704 80 1A 07 70 */ lwz r0, 0x770(r26) /* 800127A8 0000F708 38 61 00 0C */ addi r3, r1, 0xc /* 800127AC 0000F70C 90 01 00 0C */ stw r0, 0xc(r1) /* 800127B0 0000F710 48 2D 75 99 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800127B4 0000F714 38 00 00 00 */ li r0, 0 /* 800127B8 0000F718 90 1A 07 70 */ stw r0, 0x770(r26) lbl_800127BC: /* 800127BC 0000F71C 57 F9 04 3E */ clrlwi r25, r31, 0x10 /* 800127C0 0000F720 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 800127C4 0000F724 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 800127C8 0000F728 7F 24 CB 78 */ mr r4, r25 /* 800127CC 0000F72C 38 61 00 08 */ addi r3, r1, 8 /* 800127D0 0000F730 38 A0 00 7F */ li r5, 0x7f /* 800127D4 0000F734 38 C0 00 40 */ li r6, 0x40 /* 800127D8 0000F738 38 E0 00 00 */ li r7, 0 /* 800127DC 0000F73C 39 20 00 00 */ li r9, 0 /* 800127E0 0000F740 48 2D 75 95 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800127E4 0000F744 B3 3A 07 88 */ sth r25, 0x788(r26) /* 800127E8 0000F748 38 00 00 00 */ li r0, 0 /* 800127EC 0000F74C 3B A0 00 01 */ li r29, 1 /* 800127F0 0000F750 90 1A 0A 2C */ stw r0, 0xa2c(r26) lbl_800127F4: /* 800127F4 0000F754 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 800127F8 0000F758 41 82 00 64 */ beq lbl_8001285C /* 800127FC 0000F75C 80 1A 02 F8 */ lwz r0, 0x2f8(r26) /* 80012800 0000F760 2C 00 00 00 */ cmpwi r0, 0 /* 80012804 0000F764 40 82 00 18 */ bne lbl_8001281C /* 80012808 0000F768 FC 20 F8 90 */ fmr f1, f31 /* 8001280C 0000F76C 80 7A 04 90 */ lwz r3, 0x490(r26) /* 80012810 0000F770 7F 64 DB 78 */ mr r4, r27 /* 80012814 0000F774 7F 85 E3 78 */ mr r5, r28 /* 80012818 0000F778 48 02 A5 91 */ bl DamageRumble__10CPlayerGunFRC9CVector3fRC13CStateManager lbl_8001281C: /* 8001281C 0000F77C C0 5A 05 5C */ lfs f2, 0x55c(r26) /* 80012820 0000F780 C0 22 81 78 */ lfs f1, lbl_805A9E98@sda21(r2) /* 80012824 0000F784 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 80012828 0000F788 EC 22 08 24 */ fdivs f1, f2, f1 /* 8001282C 0000F78C 80 7C 08 8C */ lwz r3, 0x88c(r28) /* 80012830 0000F790 FC 40 0A 10 */ fabs f2, f1 /* 80012834 0000F794 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80012838 0000F798 40 81 00 14 */ ble lbl_8001284C /* 8001283C 0000F79C C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 80012840 0000F7A0 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 80012844 0000F7A4 FC 01 00 AE */ fsel f0, f1, f2, f0 /* 80012848 0000F7A8 EC 22 00 32 */ fmuls f1, f2, f0 lbl_8001284C: /* 8001284C 0000F7AC 7F 84 E3 78 */ mr r4, r28 /* 80012850 0000F7B0 38 A0 00 0B */ li r5, 0xb /* 80012854 0000F7B4 38 C0 00 01 */ li r6, 1 /* 80012858 0000F7B8 48 21 B9 ED */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority lbl_8001285C: /* 8001285C 0000F7BC 80 1A 02 F8 */ lwz r0, 0x2f8(r26) /* 80012860 0000F7C0 2C 00 00 00 */ cmpwi r0, 0 /* 80012864 0000F7C4 41 82 00 1C */ beq lbl_80012880 /* 80012868 0000F7C8 80 7A 07 68 */ lwz r3, 0x768(r26) /* 8001286C 0000F7CC C0 3A 05 5C */ lfs f1, 0x55c(r26) /* 80012870 0000F7D0 48 0D C4 6D */ bl TakeDamage__10CMorphBallFf /* 80012874 0000F7D4 80 7A 07 68 */ lwz r3, 0x768(r26) /* 80012878 0000F7D8 C0 22 81 8C */ lfs f1, lbl_805A9EAC@sda21(r2) /* 8001287C 0000F7DC 48 0E 64 15 */ bl SetDamageTimer__10CMorphBallFf lbl_80012880: /* 80012880 0000F7E0 80 1A 03 B8 */ lwz r0, 0x3b8(r26) /* 80012884 0000F7E4 2C 00 00 00 */ cmpwi r0, 0 /* 80012888 0000F7E8 41 82 00 14 */ beq lbl_8001289C /* 8001288C 0000F7EC 7F 43 D3 78 */ mr r3, r26 /* 80012890 0000F7F0 7F 85 E3 78 */ mr r5, r28 /* 80012894 0000F7F4 38 80 00 0B */ li r4, 0xb /* 80012898 0000F7F8 48 16 88 2D */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager lbl_8001289C: /* 8001289C 0000F7FC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800128A0 0000F800 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800128A4 0000F804 BB 21 00 24 */ lmw r25, 0x24(r1) /* 800128A8 0000F808 80 01 00 54 */ lwz r0, 0x54(r1) /* 800128AC 0000F80C 7C 08 03 A6 */ mtlr r0 /* 800128B0 0000F810 38 21 00 50 */ addi r1, r1, 0x50 /* 800128B4 0000F814 4E 80 00 20 */ blr .global Accept__7CPlayerFR8IVisitor Accept__7CPlayerFR8IVisitor: /* 800128B8 0000F818 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800128BC 0000F81C 7C 08 02 A6 */ mflr r0 /* 800128C0 0000F820 90 01 00 14 */ stw r0, 0x14(r1) /* 800128C4 0000F824 7C 60 1B 78 */ mr r0, r3 /* 800128C8 0000F828 7C 83 23 78 */ mr r3, r4 /* 800128CC 0000F82C 81 84 00 00 */ lwz r12, 0(r4) /* 800128D0 0000F830 7C 04 03 78 */ mr r4, r0 /* 800128D4 0000F834 81 8C 00 54 */ lwz r12, 0x54(r12) /* 800128D8 0000F838 7D 89 03 A6 */ mtctr r12 /* 800128DC 0000F83C 4E 80 04 21 */ bctrl /* 800128E0 0000F840 80 01 00 14 */ lwz r0, 0x14(r1) /* 800128E4 0000F844 7C 08 03 A6 */ mtlr r0 /* 800128E8 0000F848 38 21 00 10 */ addi r1, r1, 0x10 /* 800128EC 0000F84C 4E 80 00 20 */ blr .global HealthInfo__7CPlayerFR13CStateManager HealthInfo__7CPlayerFR13CStateManager: /* 800128F0 0000F850 80 64 08 B8 */ lwz r3, 0x8b8(r4) /* 800128F4 0000F854 80 63 00 00 */ lwz r3, 0(r3) /* 800128F8 0000F858 38 63 00 0C */ addi r3, r3, 0xc /* 800128FC 0000F85C 4E 80 00 20 */ blr .global GetTransitionAlpha__7CPlayerCFRC9CVector3ff GetTransitionAlpha__7CPlayerCFRC9CVector3ff: /* 80012900 0000F860 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80012904 0000F864 7C 08 02 A6 */ mflr r0 /* 80012908 0000F868 90 01 00 54 */ stw r0, 0x54(r1) /* 8001290C 0000F86C DB E1 00 40 */ stfd f31, 0x40(r1) /* 80012910 0000F870 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80012914 0000F874 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80012918 0000F878 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 8001291C 0000F87C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80012920 0000F880 C0 43 02 E4 */ lfs f2, 0x2e4(r3) /* 80012924 0000F884 7C 9F 23 78 */ mr r31, r4 /* 80012928 0000F888 C0 03 02 D8 */ lfs f0, 0x2d8(r3) /* 8001292C 0000F88C 7C 64 1B 78 */ mr r4, r3 /* 80012930 0000F890 C0 62 81 68 */ lfs f3, lbl_805A9E88@sda21(r2) /* 80012934 0000F894 38 61 00 08 */ addi r3, r1, 8 /* 80012938 0000F898 EC 42 00 28 */ fsubs f2, f2, f0 /* 8001293C 0000F89C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80012940 0000F8A0 EF E3 08 BA */ fmadds f31, f3, f2, f1 /* 80012944 0000F8A4 EF C0 F8 2A */ fadds f30, f0, f31 /* 80012948 0000F8A8 48 27 24 35 */ bl GetEyePosition__7CPlayerCFv /* 8001294C 0000F8AC C0 3F 00 04 */ lfs f1, 4(r31) /* 80012950 0000F8B0 38 61 00 14 */ addi r3, r1, 0x14 /* 80012954 0000F8B4 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80012958 0000F8B8 C0 7F 00 08 */ lfs f3, 8(r31) /* 8001295C 0000F8BC C0 41 00 10 */ lfs f2, 0x10(r1) /* 80012960 0000F8C0 EC 81 00 28 */ fsubs f4, f1, f0 /* 80012964 0000F8C4 C0 3F 00 00 */ lfs f1, 0(r31) /* 80012968 0000F8C8 C0 01 00 08 */ lfs f0, 8(r1) /* 8001296C 0000F8CC EC 43 10 28 */ fsubs f2, f3, f2 /* 80012970 0000F8D0 D0 81 00 18 */ stfs f4, 0x18(r1) /* 80012974 0000F8D4 EC 01 00 28 */ fsubs f0, f1, f0 /* 80012978 0000F8D8 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 8001297C 0000F8DC D0 01 00 14 */ stfs f0, 0x14(r1) /* 80012980 0000F8E0 48 30 1F 39 */ bl Magnitude__9CVector3fCFv /* 80012984 0000F8E4 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 80012988 0000F8E8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001298C 0000F8EC 4C 41 13 82 */ cror 2, 1, 2 /* 80012990 0000F8F0 40 82 00 20 */ bne lbl_800129B0 /* 80012994 0000F8F4 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 80012998 0000F8F8 4C 40 13 82 */ cror 2, 0, 2 /* 8001299C 0000F8FC 40 82 00 14 */ bne lbl_800129B0 /* 800129A0 0000F900 EC 21 F8 28 */ fsubs f1, f1, f31 /* 800129A4 0000F904 EC 1E F8 28 */ fsubs f0, f30, f31 /* 800129A8 0000F908 EC 01 00 24 */ fdivs f0, f1, f0 /* 800129AC 0000F90C 48 00 00 10 */ b lbl_800129BC lbl_800129B0: /* 800129B0 0000F910 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 800129B4 0000F914 40 81 00 08 */ ble lbl_800129BC /* 800129B8 0000F918 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) lbl_800129BC: /* 800129BC 0000F91C FC 20 00 90 */ fmr f1, f0 /* 800129C0 0000F920 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800129C4 0000F924 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800129C8 0000F928 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 800129CC 0000F92C CB C1 00 30 */ lfd f30, 0x30(r1) /* 800129D0 0000F930 80 01 00 54 */ lwz r0, 0x54(r1) /* 800129D4 0000F934 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800129D8 0000F938 7C 08 03 A6 */ mtlr r0 /* 800129DC 0000F93C 38 21 00 50 */ addi r1, r1, 0x50 /* 800129E0 0000F940 4E 80 00 20 */ blr .global IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager: /* 800129E4 0000F944 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800129E8 0000F948 7C 08 02 A6 */ mflr r0 /* 800129EC 0000F94C 90 01 00 34 */ stw r0, 0x34(r1) /* 800129F0 0000F950 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800129F4 0000F954 93 C1 00 28 */ stw r30, 0x28(r1) /* 800129F8 0000F958 7C 9E 23 78 */ mr r30, r4 /* 800129FC 0000F95C 93 A1 00 24 */ stw r29, 0x24(r1) /* 80012A00 0000F960 7C 7D 1B 78 */ mr r29, r3 /* 80012A04 0000F964 38 7D 02 74 */ addi r3, r29, 0x274 /* 80012A08 0000F968 48 1A 1C 8D */ bl GetEnergyDrainIntensity__18CPlayerEnergyDrainCFv /* 80012A0C 0000F96C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80012A10 0000F970 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80012A14 0000F974 40 81 00 60 */ ble lbl_80012A74 /* 80012A18 0000F978 83 FD 02 80 */ lwz r31, 0x280(r29) /* 80012A1C 0000F97C 48 00 00 40 */ b lbl_80012A5C lbl_80012A20: /* 80012A20 0000F980 A0 1F 00 00 */ lhz r0, 0(r31) /* 80012A24 0000F984 7F C3 F3 78 */ mr r3, r30 /* 80012A28 0000F988 38 81 00 0C */ addi r4, r1, 0xc /* 80012A2C 0000F98C B0 01 00 08 */ sth r0, 8(r1) /* 80012A30 0000F990 B0 01 00 0C */ sth r0, 0xc(r1) /* 80012A34 0000F994 48 03 9B 71 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80012A38 0000F998 7C 64 1B 78 */ mr r4, r3 /* 80012A3C 0000F99C 38 61 00 10 */ addi r3, r1, 0x10 /* 80012A40 0000F9A0 48 09 2A 61 */ bl sub_800a54a0 /* 80012A44 0000F9A4 48 09 2A 31 */ bl "CastTo<12CMetroidBeta>__10CPatternedFP7CEntity" /* 80012A48 0000F9A8 28 03 00 00 */ cmplwi r3, 0 /* 80012A4C 0000F9AC 41 82 00 0C */ beq lbl_80012A58 /* 80012A50 0000F9B0 38 60 00 01 */ li r3, 1 /* 80012A54 0000F9B4 48 00 00 24 */ b lbl_80012A78 lbl_80012A58: /* 80012A58 0000F9B8 3B FF 00 08 */ addi r31, r31, 8 lbl_80012A5C: /* 80012A5C 0000F9BC 80 1D 02 78 */ lwz r0, 0x278(r29) /* 80012A60 0000F9C0 80 7D 02 80 */ lwz r3, 0x280(r29) /* 80012A64 0000F9C4 54 00 18 38 */ slwi r0, r0, 3 /* 80012A68 0000F9C8 7C 03 02 14 */ add r0, r3, r0 /* 80012A6C 0000F9CC 7C 1F 00 40 */ cmplw r31, r0 /* 80012A70 0000F9D0 40 82 FF B0 */ bne lbl_80012A20 lbl_80012A74: /* 80012A74 0000F9D4 38 60 00 00 */ li r3, 0 lbl_80012A78: /* 80012A78 0000F9D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80012A7C 0000F9DC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80012A80 0000F9E0 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80012A84 0000F9E4 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80012A88 0000F9E8 7C 08 03 A6 */ mtlr r0 /* 80012A8C 0000F9EC 38 21 00 30 */ addi r1, r1, 0x30 /* 80012A90 0000F9F0 4E 80 00 20 */ blr .global CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f: /* 80012A94 0000F9F4 94 21 F6 80 */ stwu r1, -0x980(r1) /* 80012A98 0000F9F8 7C 08 02 A6 */ mflr r0 /* 80012A9C 0000F9FC 90 01 09 84 */ stw r0, 0x984(r1) /* 80012AA0 0000FA00 DB E1 09 70 */ stfd f31, 0x970(r1) /* 80012AA4 0000FA04 F3 E1 09 78 */ psq_st f31, -1672(r1), 0, qr0 /* 80012AA8 0000FA08 DB C1 09 60 */ stfd f30, 0x960(r1) /* 80012AAC 0000FA0C F3 C1 09 68 */ psq_st f30, -1688(r1), 0, qr0 /* 80012AB0 0000FA10 DB A1 09 50 */ stfd f29, 0x950(r1) /* 80012AB4 0000FA14 F3 A1 09 58 */ psq_st f29, -1704(r1), 0, qr0 /* 80012AB8 0000FA18 DB 81 09 40 */ stfd f28, 0x940(r1) /* 80012ABC 0000FA1C F3 81 09 48 */ psq_st f28, -1720(r1), 0, qr0 /* 80012AC0 0000FA20 BF 21 09 24 */ stmw r25, 0x924(r1) /* 80012AC4 0000FA24 7C 79 1B 78 */ mr r25, r3 /* 80012AC8 0000FA28 7C 9E 23 78 */ mr r30, r4 /* 80012ACC 0000FA2C 80 C3 07 68 */ lwz r6, 0x768(r3) /* 80012AD0 0000FA30 7C BF 2B 78 */ mr r31, r5 /* 80012AD4 0000FA34 88 06 19 54 */ lbz r0, 0x1954(r6) /* 80012AD8 0000FA38 28 00 00 00 */ cmplwi r0, 0 /* 80012ADC 0000FA3C 40 82 00 28 */ bne lbl_80012B04 /* 80012AE0 0000FA40 88 19 05 90 */ lbz r0, 0x590(r25) /* 80012AE4 0000FA44 28 00 00 00 */ cmplwi r0, 0 /* 80012AE8 0000FA48 41 82 00 1C */ beq lbl_80012B04 /* 80012AEC 0000FA4C 4B FF FE F9 */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager /* 80012AF0 0000FA50 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80012AF4 0000FA54 41 82 00 18 */ beq lbl_80012B0C /* 80012AF8 0000FA58 80 19 02 F8 */ lwz r0, 0x2f8(r25) /* 80012AFC 0000FA5C 2C 00 00 01 */ cmpwi r0, 1 /* 80012B00 0000FA60 40 82 00 0C */ bne lbl_80012B0C lbl_80012B04: /* 80012B04 0000FA64 38 60 00 00 */ li r3, 0 /* 80012B08 0000FA68 48 00 03 64 */ b lbl_80012E6C lbl_80012B0C: /* 80012B0C 0000FA6C 88 19 09 C4 */ lbz r0, 0x9c4(r25) /* 80012B10 0000FA70 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 80012B14 0000FA74 40 82 00 0C */ bne lbl_80012B20 /* 80012B18 0000FA78 38 60 00 00 */ li r3, 0 /* 80012B1C 0000FA7C 48 00 03 50 */ b lbl_80012E6C lbl_80012B20: /* 80012B20 0000FA80 38 00 00 00 */ li r0, 0 /* 80012B24 0000FA84 80 AD 80 F8 */ lwz r5, lbl_805A6CB8@sda21(r13) /* 80012B28 0000FA88 90 01 01 10 */ stw r0, 0x110(r1) /* 80012B2C 0000FA8C 38 60 00 00 */ li r3, 0 /* 80012B30 0000FA90 38 80 00 01 */ li r4, 1 /* 80012B34 0000FA94 48 37 73 C1 */ bl __shl2i /* 80012B38 0000FA98 C0 79 02 E8 */ lfs f3, 0x2e8(r25) /* 80012B3C 0000FA9C 38 C0 00 01 */ li r6, 1 /* 80012B40 0000FAA0 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 80012B44 0000FAA4 38 00 00 00 */ li r0, 0 /* 80012B48 0000FAA8 C0 39 02 EC */ lfs f1, 0x2ec(r25) /* 80012B4C 0000FAAC 38 A1 00 58 */ addi r5, r1, 0x58 /* 80012B50 0000FAB0 C0 19 02 E4 */ lfs f0, 0x2e4(r25) /* 80012B54 0000FAB4 ED 43 10 2A */ fadds f10, f3, f2 /* 80012B58 0000FAB8 C1 B9 00 50 */ lfs f13, 0x50(r25) /* 80012B5C 0000FABC ED 21 10 2A */ fadds f9, f1, f2 /* 80012B60 0000FAC0 C3 99 00 60 */ lfs f28, 0x60(r25) /* 80012B64 0000FAC4 EC 60 10 2A */ fadds f3, f0, f2 /* 80012B68 0000FAC8 C0 99 00 40 */ lfs f4, 0x40(r25) /* 80012B6C 0000FACC C0 19 02 DC */ lfs f0, 0x2dc(r25) /* 80012B70 0000FAD0 ED 8A 68 2A */ fadds f12, f10, f13 /* 80012B74 0000FAD4 C0 39 02 E0 */ lfs f1, 0x2e0(r25) /* 80012B78 0000FAD8 ED 69 E0 2A */ fadds f11, f9, f28 /* 80012B7C 0000FADC EC C0 10 28 */ fsubs f6, f0, f2 /* 80012B80 0000FAE0 C0 19 02 D8 */ lfs f0, 0x2d8(r25) /* 80012B84 0000FAE4 EC A1 10 28 */ fsubs f5, f1, f2 /* 80012B88 0000FAE8 EC 20 10 28 */ fsubs f1, f0, f2 /* 80012B8C 0000FAEC 90 81 00 D4 */ stw r4, 0xd4(r1) /* 80012B90 0000FAF0 EC 43 20 2A */ fadds f2, f3, f4 /* 80012B94 0000FAF4 ED 06 68 2A */ fadds f8, f6, f13 /* 80012B98 0000FAF8 90 61 00 D0 */ stw r3, 0xd0(r1) /* 80012B9C 0000FAFC EC E5 E0 2A */ fadds f7, f5, f28 /* 80012BA0 0000FB00 EC 01 20 2A */ fadds f0, f1, f4 /* 80012BA4 0000FB04 90 C1 00 C8 */ stw r6, 0xc8(r1) /* 80012BA8 0000FB08 38 61 00 A0 */ addi r3, r1, 0xa0 /* 80012BAC 0000FB0C 90 01 00 DC */ stw r0, 0xdc(r1) /* 80012BB0 0000FB10 38 81 00 70 */ addi r4, r1, 0x70 /* 80012BB4 0000FB14 90 01 00 D8 */ stw r0, 0xd8(r1) /* 80012BB8 0000FB18 90 C1 00 E0 */ stw r6, 0xe0(r1) /* 80012BBC 0000FB1C D0 81 00 7C */ stfs f4, 0x7c(r1) /* 80012BC0 0000FB20 D1 A1 00 80 */ stfs f13, 0x80(r1) /* 80012BC4 0000FB24 D3 81 00 84 */ stfs f28, 0x84(r1) /* 80012BC8 0000FB28 D0 61 00 4C */ stfs f3, 0x4c(r1) /* 80012BCC 0000FB2C D1 41 00 50 */ stfs f10, 0x50(r1) /* 80012BD0 0000FB30 D1 21 00 54 */ stfs f9, 0x54(r1) /* 80012BD4 0000FB34 D0 41 00 58 */ stfs f2, 0x58(r1) /* 80012BD8 0000FB38 D1 81 00 5C */ stfs f12, 0x5c(r1) /* 80012BDC 0000FB3C D1 61 00 60 */ stfs f11, 0x60(r1) /* 80012BE0 0000FB40 D0 21 00 64 */ stfs f1, 0x64(r1) /* 80012BE4 0000FB44 D0 C1 00 68 */ stfs f6, 0x68(r1) /* 80012BE8 0000FB48 D0 A1 00 6C */ stfs f5, 0x6c(r1) /* 80012BEC 0000FB4C D0 01 00 70 */ stfs f0, 0x70(r1) /* 80012BF0 0000FB50 D1 01 00 74 */ stfs f8, 0x74(r1) /* 80012BF4 0000FB54 D0 E1 00 78 */ stfs f7, 0x78(r1) /* 80012BF8 0000FB58 48 32 59 11 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80012BFC 0000FB5C 7C 66 1B 78 */ mr r6, r3 /* 80012C00 0000FB60 7F C3 F3 78 */ mr r3, r30 /* 80012C04 0000FB64 7F 25 CB 78 */ mr r5, r25 /* 80012C08 0000FB68 38 81 01 10 */ addi r4, r1, 0x110 /* 80012C0C 0000FB6C 48 03 9A F1 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" /* 80012C10 0000FB70 7F 23 CB 78 */ mr r3, r25 /* 80012C14 0000FB74 48 10 7D AD */ bl GetBaseBoundingBox__13CPhysicsActorCFv /* 80012C18 0000FB78 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80012C1C 0000FB7C C0 79 00 60 */ lfs f3, 0x60(r25) /* 80012C20 0000FB80 38 E4 66 A0 */ addi r7, r4, sZeroVector__9CVector3f@l /* 80012C24 0000FB84 C0 59 00 50 */ lfs f2, 0x50(r25) /* 80012C28 0000FB88 C0 39 00 40 */ lfs f1, 0x40(r25) /* 80012C2C 0000FB8C 3C C0 80 3F */ lis r6, lbl_803ECAD0@ha /* 80012C30 0000FB90 C0 07 00 00 */ lfs f0, 0(r7) /* 80012C34 0000FB94 3C A0 80 5A */ lis r5, sIdentity__12CTransform4f@ha /* 80012C38 0000FB98 3C 80 80 3E */ lis r4, lbl_803D97E4@ha /* 80012C3C 0000FB9C FF 80 10 18 */ frsp f28, f2 /* 80012C40 0000FBA0 D0 1F 00 00 */ stfs f0, 0(r31) /* 80012C44 0000FBA4 FF A0 18 18 */ frsp f29, f3 /* 80012C48 0000FBA8 FF C0 08 18 */ frsp f30, f1 /* 80012C4C 0000FBAC C3 E2 81 40 */ lfs f31, lbl_805A9E60@sda21(r2) /* 80012C50 0000FBB0 C0 07 00 04 */ lfs f0, 4(r7) /* 80012C54 0000FBB4 D0 21 00 40 */ stfs f1, 0x40(r1) /* 80012C58 0000FBB8 7C 7A 1B 78 */ mr r26, r3 /* 80012C5C 0000FBBC 3B 66 CA D0 */ addi r27, r6, lbl_803ECAD0@l /* 80012C60 0000FBC0 D0 1F 00 04 */ stfs f0, 4(r31) /* 80012C64 0000FBC4 3B 85 66 70 */ addi r28, r5, sIdentity__12CTransform4f@l /* 80012C68 0000FBC8 3B A4 97 E4 */ addi r29, r4, lbl_803D97E4@l /* 80012C6C 0000FBCC 3B 20 00 00 */ li r25, 0 /* 80012C70 0000FBD0 C0 07 00 08 */ lfs f0, 8(r7) /* 80012C74 0000FBD4 D0 41 00 44 */ stfs f2, 0x44(r1) /* 80012C78 0000FBD8 D0 61 00 48 */ stfs f3, 0x48(r1) /* 80012C7C 0000FBDC D0 1F 00 08 */ stfs f0, 8(r31) lbl_80012C80: /* 80012C80 0000FBE0 38 00 00 00 */ li r0, 0 /* 80012C84 0000FBE4 38 61 00 88 */ addi r3, r1, 0x88 /* 80012C88 0000FBE8 90 01 00 0C */ stw r0, 0xc(r1) /* 80012C8C 0000FBEC 38 81 00 34 */ addi r4, r1, 0x34 /* 80012C90 0000FBF0 38 A1 00 1C */ addi r5, r1, 0x1c /* 80012C94 0000FBF4 90 01 00 08 */ stw r0, 8(r1) /* 80012C98 0000FBF8 C0 1A 00 10 */ lfs f0, 0x10(r26) /* 80012C9C 0000FBFC C0 BF 00 04 */ lfs f5, 4(r31) /* 80012CA0 0000FC00 C0 3A 00 14 */ lfs f1, 0x14(r26) /* 80012CA4 0000FC04 EC E0 28 2A */ fadds f7, f0, f5 /* 80012CA8 0000FC08 C0 9F 00 08 */ lfs f4, 8(r31) /* 80012CAC 0000FC0C C0 1A 00 0C */ lfs f0, 0xc(r26) /* 80012CB0 0000FC10 EC C1 20 2A */ fadds f6, f1, f4 /* 80012CB4 0000FC14 C0 7F 00 00 */ lfs f3, 0(r31) /* 80012CB8 0000FC18 ED 07 E0 2A */ fadds f8, f7, f28 /* 80012CBC 0000FC1C EC 40 18 2A */ fadds f2, f0, f3 /* 80012CC0 0000FC20 D0 E1 00 14 */ stfs f7, 0x14(r1) /* 80012CC4 0000FC24 EC 26 E8 2A */ fadds f1, f6, f29 /* 80012CC8 0000FC28 D1 01 00 20 */ stfs f8, 0x20(r1) /* 80012CCC 0000FC2C EC 02 F0 2A */ fadds f0, f2, f30 /* 80012CD0 0000FC30 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80012CD4 0000FC34 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80012CD8 0000FC38 C0 1A 00 04 */ lfs f0, 4(r26) /* 80012CDC 0000FC3C C0 3A 00 08 */ lfs f1, 8(r26) /* 80012CE0 0000FC40 EC A0 28 2A */ fadds f5, f0, f5 /* 80012CE4 0000FC44 C0 1A 00 00 */ lfs f0, 0(r26) /* 80012CE8 0000FC48 EC 81 20 2A */ fadds f4, f1, f4 /* 80012CEC 0000FC4C D0 41 00 10 */ stfs f2, 0x10(r1) /* 80012CF0 0000FC50 EC 20 18 2A */ fadds f1, f0, f3 /* 80012CF4 0000FC54 EC 65 E0 2A */ fadds f3, f5, f28 /* 80012CF8 0000FC58 EC 44 E8 2A */ fadds f2, f4, f29 /* 80012CFC 0000FC5C D0 C1 00 18 */ stfs f6, 0x18(r1) /* 80012D00 0000FC60 EC 01 F0 2A */ fadds f0, f1, f30 /* 80012D04 0000FC64 D0 21 00 28 */ stfs f1, 0x28(r1) /* 80012D08 0000FC68 D0 A1 00 2C */ stfs f5, 0x2c(r1) /* 80012D0C 0000FC6C D0 81 00 30 */ stfs f4, 0x30(r1) /* 80012D10 0000FC70 D0 01 00 34 */ stfs f0, 0x34(r1) /* 80012D14 0000FC74 D0 61 00 38 */ stfs f3, 0x38(r1) /* 80012D18 0000FC78 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 80012D1C 0000FC7C 48 32 57 ED */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80012D20 0000FC80 38 61 00 E8 */ addi r3, r1, 0xe8 /* 80012D24 0000FC84 38 81 00 08 */ addi r4, r1, 8 /* 80012D28 0000FC88 48 2B CB 8D */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList /* 80012D2C 0000FC8C C0 A1 00 88 */ lfs f5, 0x88(r1) /* 80012D30 0000FC90 7F C3 F3 78 */ mr r3, r30 /* 80012D34 0000FC94 C0 81 00 8C */ lfs f4, 0x8c(r1) /* 80012D38 0000FC98 7F 85 E3 78 */ mr r5, r28 /* 80012D3C 0000FC9C C0 61 00 90 */ lfs f3, 0x90(r1) /* 80012D40 0000FCA0 38 81 00 E8 */ addi r4, r1, 0xe8 /* 80012D44 0000FCA4 C0 41 00 94 */ lfs f2, 0x94(r1) /* 80012D48 0000FCA8 38 C1 00 D0 */ addi r6, r1, 0xd0 /* 80012D4C 0000FCAC C0 21 00 98 */ lfs f1, 0x98(r1) /* 80012D50 0000FCB0 38 E1 01 10 */ addi r7, r1, 0x110 /* 80012D54 0000FCB4 C0 01 00 9C */ lfs f0, 0x9c(r1) /* 80012D58 0000FCB8 93 61 00 E8 */ stw r27, 0xe8(r1) /* 80012D5C 0000FCBC D0 A1 00 F8 */ stfs f5, 0xf8(r1) /* 80012D60 0000FCC0 D0 81 00 FC */ stfs f4, 0xfc(r1) /* 80012D64 0000FCC4 D0 61 01 00 */ stfs f3, 0x100(r1) /* 80012D68 0000FCC8 D0 41 01 04 */ stfs f2, 0x104(r1) /* 80012D6C 0000FCCC D0 21 01 08 */ stfs f1, 0x108(r1) /* 80012D70 0000FCD0 D0 01 01 0C */ stfs f0, 0x10c(r1) /* 80012D74 0000FCD4 48 17 18 A1 */ bl "DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" /* 80012D78 0000FCD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80012D7C 0000FCDC 40 82 00 78 */ bne lbl_80012DF4 /* 80012D80 0000FCE0 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha /* 80012D84 0000FCE4 80 A1 01 10 */ lwz r5, 0x110(r1) /* 80012D88 0000FCE8 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l /* 80012D8C 0000FCEC 3C 60 80 3E */ lis r3, lbl_803D97E4@ha /* 80012D90 0000FCF0 90 01 00 E8 */ stw r0, 0xe8(r1) /* 80012D94 0000FCF4 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l /* 80012D98 0000FCF8 2C 05 00 00 */ cmpwi r5, 0 /* 80012D9C 0000FCFC 38 60 00 00 */ li r3, 0 /* 80012DA0 0000FD00 90 01 00 E8 */ stw r0, 0xe8(r1) /* 80012DA4 0000FD04 40 81 00 40 */ ble lbl_80012DE4 /* 80012DA8 0000FD08 2C 05 00 08 */ cmpwi r5, 8 /* 80012DAC 0000FD0C 38 85 FF F8 */ addi r4, r5, -8 /* 80012DB0 0000FD10 40 81 00 20 */ ble lbl_80012DD0 /* 80012DB4 0000FD14 38 04 00 07 */ addi r0, r4, 7 /* 80012DB8 0000FD18 54 00 E8 FE */ srwi r0, r0, 3 /* 80012DBC 0000FD1C 7C 09 03 A6 */ mtctr r0 /* 80012DC0 0000FD20 2C 04 00 00 */ cmpwi r4, 0 /* 80012DC4 0000FD24 40 81 00 0C */ ble lbl_80012DD0 lbl_80012DC8: /* 80012DC8 0000FD28 38 63 00 08 */ addi r3, r3, 8 /* 80012DCC 0000FD2C 42 00 FF FC */ bdnz lbl_80012DC8 lbl_80012DD0: /* 80012DD0 0000FD30 7C 03 28 50 */ subf r0, r3, r5 /* 80012DD4 0000FD34 7C 09 03 A6 */ mtctr r0 /* 80012DD8 0000FD38 7C 03 28 00 */ cmpw r3, r5 /* 80012DDC 0000FD3C 40 80 00 08 */ bge lbl_80012DE4 lbl_80012DE0: /* 80012DE0 0000FD40 42 00 00 00 */ bdnz lbl_80012DE0 lbl_80012DE4: /* 80012DE4 0000FD44 38 00 00 00 */ li r0, 0 /* 80012DE8 0000FD48 38 60 00 01 */ li r3, 1 /* 80012DEC 0000FD4C 90 01 01 10 */ stw r0, 0x110(r1) /* 80012DF0 0000FD50 48 00 00 7C */ b lbl_80012E6C lbl_80012DF4: /* 80012DF4 0000FD54 C0 1F 00 08 */ lfs f0, 8(r31) /* 80012DF8 0000FD58 3B 39 00 01 */ addi r25, r25, 1 /* 80012DFC 0000FD5C 2C 19 00 08 */ cmpwi r25, 8 /* 80012E00 0000FD60 EC 00 F8 2A */ fadds f0, f0, f31 /* 80012E04 0000FD64 D0 1F 00 08 */ stfs f0, 8(r31) /* 80012E08 0000FD68 93 61 00 E8 */ stw r27, 0xe8(r1) /* 80012E0C 0000FD6C 93 A1 00 E8 */ stw r29, 0xe8(r1) /* 80012E10 0000FD70 41 80 FE 70 */ blt lbl_80012C80 /* 80012E14 0000FD74 80 A1 01 10 */ lwz r5, 0x110(r1) /* 80012E18 0000FD78 38 60 00 00 */ li r3, 0 /* 80012E1C 0000FD7C 2C 05 00 00 */ cmpwi r5, 0 /* 80012E20 0000FD80 40 81 00 40 */ ble lbl_80012E60 /* 80012E24 0000FD84 2C 05 00 08 */ cmpwi r5, 8 /* 80012E28 0000FD88 38 85 FF F8 */ addi r4, r5, -8 /* 80012E2C 0000FD8C 40 81 00 20 */ ble lbl_80012E4C /* 80012E30 0000FD90 38 04 00 07 */ addi r0, r4, 7 /* 80012E34 0000FD94 54 00 E8 FE */ srwi r0, r0, 3 /* 80012E38 0000FD98 7C 09 03 A6 */ mtctr r0 /* 80012E3C 0000FD9C 2C 04 00 00 */ cmpwi r4, 0 /* 80012E40 0000FDA0 40 81 00 0C */ ble lbl_80012E4C lbl_80012E44: /* 80012E44 0000FDA4 38 63 00 08 */ addi r3, r3, 8 /* 80012E48 0000FDA8 42 00 FF FC */ bdnz lbl_80012E44 lbl_80012E4C: /* 80012E4C 0000FDAC 7C 03 28 50 */ subf r0, r3, r5 /* 80012E50 0000FDB0 7C 09 03 A6 */ mtctr r0 /* 80012E54 0000FDB4 7C 03 28 00 */ cmpw r3, r5 /* 80012E58 0000FDB8 40 80 00 08 */ bge lbl_80012E60 lbl_80012E5C: /* 80012E5C 0000FDBC 42 00 00 00 */ bdnz lbl_80012E5C lbl_80012E60: /* 80012E60 0000FDC0 38 00 00 00 */ li r0, 0 /* 80012E64 0000FDC4 38 60 00 00 */ li r3, 0 /* 80012E68 0000FDC8 90 01 01 10 */ stw r0, 0x110(r1) lbl_80012E6C: /* 80012E6C 0000FDCC E3 E1 09 78 */ psq_l f31, -1672(r1), 0, qr0 /* 80012E70 0000FDD0 CB E1 09 70 */ lfd f31, 0x970(r1) /* 80012E74 0000FDD4 E3 C1 09 68 */ psq_l f30, -1688(r1), 0, qr0 /* 80012E78 0000FDD8 CB C1 09 60 */ lfd f30, 0x960(r1) /* 80012E7C 0000FDDC E3 A1 09 58 */ psq_l f29, -1704(r1), 0, qr0 /* 80012E80 0000FDE0 CB A1 09 50 */ lfd f29, 0x950(r1) /* 80012E84 0000FDE4 E3 81 09 48 */ psq_l f28, -1720(r1), 0, qr0 /* 80012E88 0000FDE8 CB 81 09 40 */ lfd f28, 0x940(r1) /* 80012E8C 0000FDEC BB 21 09 24 */ lmw r25, 0x924(r1) /* 80012E90 0000FDF0 80 01 09 84 */ lwz r0, 0x984(r1) /* 80012E94 0000FDF4 7C 08 03 A6 */ mtlr r0 /* 80012E98 0000FDF8 38 21 09 80 */ addi r1, r1, 0x980 /* 80012E9C 0000FDFC 4E 80 00 20 */ blr .global __dt__16CCollidableAABoxFv __dt__16CCollidableAABoxFv: /* 80012EA0 0000FE00 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80012EA4 0000FE04 7C 08 02 A6 */ mflr r0 /* 80012EA8 0000FE08 90 01 00 14 */ stw r0, 0x14(r1) /* 80012EAC 0000FE0C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80012EB0 0000FE10 7C 7F 1B 79 */ or. r31, r3, r3 /* 80012EB4 0000FE14 41 82 00 30 */ beq lbl_80012EE4 /* 80012EB8 0000FE18 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha /* 80012EBC 0000FE1C 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l /* 80012EC0 0000FE20 90 1F 00 00 */ stw r0, 0(r31) /* 80012EC4 0000FE24 41 82 00 10 */ beq lbl_80012ED4 /* 80012EC8 0000FE28 3C 60 80 3E */ lis r3, lbl_803D97E4@ha /* 80012ECC 0000FE2C 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l /* 80012ED0 0000FE30 90 1F 00 00 */ stw r0, 0(r31) lbl_80012ED4: /* 80012ED4 0000FE34 7C 80 07 35 */ extsh. r0, r4 /* 80012ED8 0000FE38 40 81 00 0C */ ble lbl_80012EE4 /* 80012EDC 0000FE3C 7F E3 FB 78 */ mr r3, r31 /* 80012EE0 0000FE40 48 30 2A 51 */ bl Free__7CMemoryFPCv lbl_80012EE4: /* 80012EE4 0000FE44 80 01 00 14 */ lwz r0, 0x14(r1) /* 80012EE8 0000FE48 7F E3 FB 78 */ mr r3, r31 /* 80012EEC 0000FE4C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80012EF0 0000FE50 7C 08 03 A6 */ mtlr r0 /* 80012EF4 0000FE54 38 21 00 10 */ addi r1, r1, 0x10 /* 80012EF8 0000FE58 4E 80 00 20 */ blr .global CanEnterMorphBallState__7CPlayerCFR13CStateManagerf CanEnterMorphBallState__7CPlayerCFR13CStateManagerf: /* 80012EFC 0000FE5C 94 21 F7 E0 */ stwu r1, -0x820(r1) /* 80012F00 0000FE60 7C 08 02 A6 */ mflr r0 /* 80012F04 0000FE64 38 A0 00 00 */ li r5, 0 /* 80012F08 0000FE68 90 01 08 24 */ stw r0, 0x824(r1) /* 80012F0C 0000FE6C 93 E1 08 1C */ stw r31, 0x81c(r1) /* 80012F10 0000FE70 7C 7F 1B 78 */ mr r31, r3 /* 80012F14 0000FE74 80 03 03 B8 */ lwz r0, 0x3b8(r3) /* 80012F18 0000FE78 90 A1 00 08 */ stw r5, 8(r1) /* 80012F1C 0000FE7C 2C 00 00 00 */ cmpwi r0, 0 /* 80012F20 0000FE80 40 82 00 1C */ bne lbl_80012F3C /* 80012F24 0000FE84 4B FF FA C1 */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager /* 80012F28 0000FE88 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80012F2C 0000FE8C 41 82 00 6C */ beq lbl_80012F98 /* 80012F30 0000FE90 80 1F 02 F8 */ lwz r0, 0x2f8(r31) /* 80012F34 0000FE94 2C 00 00 00 */ cmpwi r0, 0 /* 80012F38 0000FE98 40 82 00 60 */ bne lbl_80012F98 lbl_80012F3C: /* 80012F3C 0000FE9C 80 A1 00 08 */ lwz r5, 8(r1) /* 80012F40 0000FEA0 38 60 00 00 */ li r3, 0 /* 80012F44 0000FEA4 2C 05 00 00 */ cmpwi r5, 0 /* 80012F48 0000FEA8 40 81 00 40 */ ble lbl_80012F88 /* 80012F4C 0000FEAC 2C 05 00 08 */ cmpwi r5, 8 /* 80012F50 0000FEB0 38 85 FF F8 */ addi r4, r5, -8 /* 80012F54 0000FEB4 40 81 00 20 */ ble lbl_80012F74 /* 80012F58 0000FEB8 38 04 00 07 */ addi r0, r4, 7 /* 80012F5C 0000FEBC 54 00 E8 FE */ srwi r0, r0, 3 /* 80012F60 0000FEC0 7C 09 03 A6 */ mtctr r0 /* 80012F64 0000FEC4 2C 04 00 00 */ cmpwi r4, 0 /* 80012F68 0000FEC8 40 81 00 0C */ ble lbl_80012F74 lbl_80012F6C: /* 80012F6C 0000FECC 38 63 00 08 */ addi r3, r3, 8 /* 80012F70 0000FED0 42 00 FF FC */ bdnz lbl_80012F6C lbl_80012F74: /* 80012F74 0000FED4 7C 03 28 50 */ subf r0, r3, r5 /* 80012F78 0000FED8 7C 09 03 A6 */ mtctr r0 /* 80012F7C 0000FEDC 7C 03 28 00 */ cmpw r3, r5 /* 80012F80 0000FEE0 40 80 00 08 */ bge lbl_80012F88 lbl_80012F84: /* 80012F84 0000FEE4 42 00 00 00 */ bdnz lbl_80012F84 lbl_80012F88: /* 80012F88 0000FEE8 38 00 00 00 */ li r0, 0 /* 80012F8C 0000FEEC 38 60 00 00 */ li r3, 0 /* 80012F90 0000FEF0 90 01 00 08 */ stw r0, 8(r1) /* 80012F94 0000FEF4 48 00 00 C4 */ b lbl_80013058 lbl_80012F98: /* 80012F98 0000FEF8 88 1F 09 C4 */ lbz r0, 0x9c4(r31) /* 80012F9C 0000FEFC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80012FA0 0000FF00 40 82 00 60 */ bne lbl_80013000 /* 80012FA4 0000FF04 80 A1 00 08 */ lwz r5, 8(r1) /* 80012FA8 0000FF08 38 60 00 00 */ li r3, 0 /* 80012FAC 0000FF0C 2C 05 00 00 */ cmpwi r5, 0 /* 80012FB0 0000FF10 40 81 00 40 */ ble lbl_80012FF0 /* 80012FB4 0000FF14 2C 05 00 08 */ cmpwi r5, 8 /* 80012FB8 0000FF18 38 85 FF F8 */ addi r4, r5, -8 /* 80012FBC 0000FF1C 40 81 00 20 */ ble lbl_80012FDC /* 80012FC0 0000FF20 38 04 00 07 */ addi r0, r4, 7 /* 80012FC4 0000FF24 54 00 E8 FE */ srwi r0, r0, 3 /* 80012FC8 0000FF28 7C 09 03 A6 */ mtctr r0 /* 80012FCC 0000FF2C 2C 04 00 00 */ cmpwi r4, 0 /* 80012FD0 0000FF30 40 81 00 0C */ ble lbl_80012FDC lbl_80012FD4: /* 80012FD4 0000FF34 38 63 00 08 */ addi r3, r3, 8 /* 80012FD8 0000FF38 42 00 FF FC */ bdnz lbl_80012FD4 lbl_80012FDC: /* 80012FDC 0000FF3C 7C 03 28 50 */ subf r0, r3, r5 /* 80012FE0 0000FF40 7C 09 03 A6 */ mtctr r0 /* 80012FE4 0000FF44 7C 03 28 00 */ cmpw r3, r5 /* 80012FE8 0000FF48 40 80 00 08 */ bge lbl_80012FF0 lbl_80012FEC: /* 80012FEC 0000FF4C 42 00 00 00 */ bdnz lbl_80012FEC lbl_80012FF0: /* 80012FF0 0000FF50 38 00 00 00 */ li r0, 0 /* 80012FF4 0000FF54 38 60 00 00 */ li r3, 0 /* 80012FF8 0000FF58 90 01 00 08 */ stw r0, 8(r1) /* 80012FFC 0000FF5C 48 00 00 5C */ b lbl_80013058 lbl_80013000: /* 80013000 0000FF60 80 A1 00 08 */ lwz r5, 8(r1) /* 80013004 0000FF64 38 60 00 00 */ li r3, 0 /* 80013008 0000FF68 2C 05 00 00 */ cmpwi r5, 0 /* 8001300C 0000FF6C 40 81 00 40 */ ble lbl_8001304C /* 80013010 0000FF70 2C 05 00 08 */ cmpwi r5, 8 /* 80013014 0000FF74 38 85 FF F8 */ addi r4, r5, -8 /* 80013018 0000FF78 40 81 00 20 */ ble lbl_80013038 /* 8001301C 0000FF7C 38 04 00 07 */ addi r0, r4, 7 /* 80013020 0000FF80 54 00 E8 FE */ srwi r0, r0, 3 /* 80013024 0000FF84 7C 09 03 A6 */ mtctr r0 /* 80013028 0000FF88 2C 04 00 00 */ cmpwi r4, 0 /* 8001302C 0000FF8C 40 81 00 0C */ ble lbl_80013038 lbl_80013030: /* 80013030 0000FF90 38 63 00 08 */ addi r3, r3, 8 /* 80013034 0000FF94 42 00 FF FC */ bdnz lbl_80013030 lbl_80013038: /* 80013038 0000FF98 7C 03 28 50 */ subf r0, r3, r5 /* 8001303C 0000FF9C 7C 09 03 A6 */ mtctr r0 /* 80013040 0000FFA0 7C 03 28 00 */ cmpw r3, r5 /* 80013044 0000FFA4 40 80 00 08 */ bge lbl_8001304C lbl_80013048: /* 80013048 0000FFA8 42 00 00 00 */ bdnz lbl_80013048 lbl_8001304C: /* 8001304C 0000FFAC 38 00 00 00 */ li r0, 0 /* 80013050 0000FFB0 38 60 00 01 */ li r3, 1 /* 80013054 0000FFB4 90 01 00 08 */ stw r0, 8(r1) lbl_80013058: /* 80013058 0000FFB8 80 01 08 24 */ lwz r0, 0x824(r1) /* 8001305C 0000FFBC 83 E1 08 1C */ lwz r31, 0x81c(r1) /* 80013060 0000FFC0 7C 08 03 A6 */ mtlr r0 /* 80013064 0000FFC4 38 21 08 20 */ addi r1, r1, 0x820 /* 80013068 0000FFC8 4E 80 00 20 */ blr .global SetHudDisable__7CPlayerFfff SetHudDisable__7CPlayerFfff: /* 8001306C 0000FFCC D0 23 07 40 */ stfs f1, 0x740(r3) /* 80013070 0000FFD0 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80013074 0000FFD4 D0 43 07 44 */ stfs f2, 0x744(r3) /* 80013078 0000FFD8 D0 63 07 48 */ stfs f3, 0x748(r3) /* 8001307C 0000FFDC C0 03 07 44 */ lfs f0, 0x744(r3) /* 80013080 0000FFE0 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 80013084 0000FFE4 4C 82 00 20 */ bnelr /* 80013088 0000FFE8 C0 03 07 40 */ lfs f0, 0x740(r3) /* 8001308C 0000FFEC FC 01 00 00 */ fcmpu cr0, f1, f0 /* 80013090 0000FFF0 40 82 00 10 */ bne lbl_800130A0 /* 80013094 0000FFF4 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80013098 0000FFF8 D0 03 07 4C */ stfs f0, 0x74c(r3) /* 8001309C 0000FFFC 4E 80 00 20 */ blr lbl_800130A0: /* 800130A0 00010000 D0 23 07 4C */ stfs f1, 0x74c(r3) /* 800130A4 00010004 4E 80 00 20 */ blr .global GetTouchBounds__7CPlayerCFv GetTouchBounds__7CPlayerCFv: /* 800130A8 00010008 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800130AC 0001000C 7C 08 02 A6 */ mflr r0 /* 800130B0 00010010 90 01 00 84 */ stw r0, 0x84(r1) /* 800130B4 00010014 DB E1 00 70 */ stfd f31, 0x70(r1) /* 800130B8 00010018 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 800130BC 0001001C DB C1 00 60 */ stfd f30, 0x60(r1) /* 800130C0 00010020 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 800130C4 00010024 93 E1 00 5C */ stw r31, 0x5c(r1) /* 800130C8 00010028 93 C1 00 58 */ stw r30, 0x58(r1) /* 800130CC 0001002C 7C 9F 23 78 */ mr r31, r4 /* 800130D0 00010030 7C 7E 1B 78 */ mr r30, r3 /* 800130D4 00010034 80 04 02 F8 */ lwz r0, 0x2f8(r4) /* 800130D8 00010038 2C 00 00 01 */ cmpwi r0, 1 /* 800130DC 0001003C 40 82 00 BC */ bne lbl_80013198 /* 800130E0 00010040 80 7F 07 68 */ lwz r3, 0x768(r31) /* 800130E4 00010044 48 0E 5D 15 */ bl GetBallTouchRadius__10CMorphBallCFv /* 800130E8 00010048 FF E0 08 90 */ fmr f31, f1 /* 800130EC 0001004C 80 7F 07 68 */ lwz r3, 0x768(r31) /* 800130F0 00010050 FF C0 F8 50 */ fneg f30, f31 /* 800130F4 00010054 48 0E 5D 11 */ bl GetBallRadius__10CMorphBallCFv /* 800130F8 00010058 C0 1F 00 60 */ lfs f0, 0x60(r31) /* 800130FC 0001005C 38 61 00 38 */ addi r3, r1, 0x38 /* 80013100 00010060 C0 5F 00 40 */ lfs f2, 0x40(r31) /* 80013104 00010064 38 81 00 14 */ addi r4, r1, 0x14 /* 80013108 00010068 EC A0 08 2A */ fadds f5, f0, f1 /* 8001310C 0001006C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80013110 00010070 C0 1F 00 50 */ lfs f0, 0x50(r31) /* 80013114 00010074 38 A1 00 08 */ addi r5, r1, 8 /* 80013118 00010078 EC 42 08 2A */ fadds f2, f2, f1 /* 8001311C 0001007C EC 20 08 2A */ fadds f1, f0, f1 /* 80013120 00010080 EC 05 F8 2A */ fadds f0, f5, f31 /* 80013124 00010084 EC 82 F8 2A */ fadds f4, f2, f31 /* 80013128 00010088 EC 61 F8 2A */ fadds f3, f1, f31 /* 8001312C 0001008C EC 42 F0 2A */ fadds f2, f2, f30 /* 80013130 00010090 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80013134 00010094 EC 21 F0 2A */ fadds f1, f1, f30 /* 80013138 00010098 EC 05 F0 2A */ fadds f0, f5, f30 /* 8001313C 0001009C D0 81 00 08 */ stfs f4, 8(r1) /* 80013140 000100A0 D0 61 00 0C */ stfs f3, 0xc(r1) /* 80013144 000100A4 D0 41 00 14 */ stfs f2, 0x14(r1) /* 80013148 000100A8 D0 21 00 18 */ stfs f1, 0x18(r1) /* 8001314C 000100AC D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80013150 000100B0 48 32 53 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80013154 000100B4 38 00 00 01 */ li r0, 1 /* 80013158 000100B8 28 1E 00 00 */ cmplwi r30, 0 /* 8001315C 000100BC 98 1E 00 18 */ stb r0, 0x18(r30) /* 80013160 000100C0 41 82 00 80 */ beq lbl_800131E0 /* 80013164 000100C4 C0 01 00 38 */ lfs f0, 0x38(r1) /* 80013168 000100C8 D0 1E 00 00 */ stfs f0, 0(r30) /* 8001316C 000100CC C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80013170 000100D0 D0 1E 00 04 */ stfs f0, 4(r30) /* 80013174 000100D4 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80013178 000100D8 D0 1E 00 08 */ stfs f0, 8(r30) /* 8001317C 000100DC C0 01 00 44 */ lfs f0, 0x44(r1) /* 80013180 000100E0 D0 1E 00 0C */ stfs f0, 0xc(r30) /* 80013184 000100E4 C0 01 00 48 */ lfs f0, 0x48(r1) /* 80013188 000100E8 D0 1E 00 10 */ stfs f0, 0x10(r30) /* 8001318C 000100EC C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80013190 000100F0 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 80013194 000100F4 48 00 00 4C */ b lbl_800131E0 lbl_80013198: /* 80013198 000100F8 38 61 00 20 */ addi r3, r1, 0x20 /* 8001319C 000100FC 48 10 77 91 */ bl GetBoundingBox__13CPhysicsActorCFv /* 800131A0 00010100 38 00 00 01 */ li r0, 1 /* 800131A4 00010104 28 1E 00 00 */ cmplwi r30, 0 /* 800131A8 00010108 98 1E 00 18 */ stb r0, 0x18(r30) /* 800131AC 0001010C 41 82 00 34 */ beq lbl_800131E0 /* 800131B0 00010110 C0 01 00 20 */ lfs f0, 0x20(r1) /* 800131B4 00010114 D0 1E 00 00 */ stfs f0, 0(r30) /* 800131B8 00010118 C0 01 00 24 */ lfs f0, 0x24(r1) /* 800131BC 0001011C D0 1E 00 04 */ stfs f0, 4(r30) /* 800131C0 00010120 C0 01 00 28 */ lfs f0, 0x28(r1) /* 800131C4 00010124 D0 1E 00 08 */ stfs f0, 8(r30) /* 800131C8 00010128 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 800131CC 0001012C D0 1E 00 0C */ stfs f0, 0xc(r30) /* 800131D0 00010130 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800131D4 00010134 D0 1E 00 10 */ stfs f0, 0x10(r30) /* 800131D8 00010138 C0 01 00 34 */ lfs f0, 0x34(r1) /* 800131DC 0001013C D0 1E 00 14 */ stfs f0, 0x14(r30) lbl_800131E0: /* 800131E0 00010140 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 800131E4 00010144 CB E1 00 70 */ lfd f31, 0x70(r1) /* 800131E8 00010148 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 800131EC 0001014C CB C1 00 60 */ lfd f30, 0x60(r1) /* 800131F0 00010150 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 800131F4 00010154 80 01 00 84 */ lwz r0, 0x84(r1) /* 800131F8 00010158 83 C1 00 58 */ lwz r30, 0x58(r1) /* 800131FC 0001015C 7C 08 03 A6 */ mtlr r0 /* 80013200 00010160 38 21 00 80 */ addi r1, r1, 0x80 /* 80013204 00010164 4E 80 00 20 */ blr .global Touch__7CPlayerFR6CActorR13CStateManager Touch__7CPlayerFR6CActorR13CStateManager: /* 80013208 00010168 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001320C 0001016C 7C 08 02 A6 */ mflr r0 /* 80013210 00010170 90 01 00 14 */ stw r0, 0x14(r1) /* 80013214 00010174 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80013218 00010178 2C 00 00 01 */ cmpwi r0, 1 /* 8001321C 0001017C 40 82 00 0C */ bne lbl_80013228 /* 80013220 00010180 80 63 07 68 */ lwz r3, 0x768(r3) /* 80013224 00010184 48 0D CA 3D */ bl Touch__10CMorphBallFR6CActorR13CStateManager lbl_80013228: /* 80013228 00010188 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001322C 0001018C 7C 08 03 A6 */ mtlr r0 /* 80013230 00010190 38 21 00 10 */ addi r1, r1, 0x10 /* 80013234 00010194 4E 80 00 20 */ blr .global UpdateScanningState__7CPlayerFRC11CFinalInputR13CStateManagerf UpdateScanningState__7CPlayerFRC11CFinalInputR13CStateManagerf: /* 80013238 00010198 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8001323C 0001019C 7C 08 02 A6 */ mflr r0 /* 80013240 000101A0 90 01 00 54 */ stw r0, 0x54(r1) /* 80013244 000101A4 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80013248 000101A8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8001324C 000101AC 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80013250 000101B0 93 C1 00 38 */ stw r30, 0x38(r1) /* 80013254 000101B4 93 A1 00 34 */ stw r29, 0x34(r1) /* 80013258 000101B8 7C BF 2B 78 */ mr r31, r5 /* 8001325C 000101BC FF E0 08 90 */ fmr f31, f1 /* 80013260 000101C0 80 C5 08 B8 */ lwz r6, 0x8b8(r5) /* 80013264 000101C4 7C 7E 1B 78 */ mr r30, r3 /* 80013268 000101C8 7C 9D 23 78 */ mr r29, r4 /* 8001326C 000101CC 80 86 00 00 */ lwz r4, 0(r6) /* 80013270 000101D0 80 04 00 14 */ lwz r0, 0x14(r4) /* 80013274 000101D4 2C 00 00 02 */ cmpwi r0, 2 /* 80013278 000101D8 41 82 00 10 */ beq lbl_80013288 /* 8001327C 000101DC 38 80 00 00 */ li r4, 0 /* 80013280 000101E0 48 00 03 A1 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager /* 80013284 000101E4 48 00 02 5C */ b lbl_800134E0 lbl_80013288: /* 80013288 000101E8 80 1E 03 A8 */ lwz r0, 0x3a8(r30) /* 8001328C 000101EC 2C 00 00 00 */ cmpwi r0, 0 /* 80013290 000101F0 41 82 00 28 */ beq lbl_800132B8 /* 80013294 000101F4 A0 1E 03 B4 */ lhz r0, 0x3b4(r30) /* 80013298 000101F8 A0 9E 03 10 */ lhz r4, 0x310(r30) /* 8001329C 000101FC 7C 00 20 40 */ cmplw r0, r4 /* 800132A0 00010200 41 82 00 18 */ beq lbl_800132B8 /* 800132A4 00010204 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800132A8 00010208 7C 04 00 40 */ cmplw r4, r0 /* 800132AC 0001020C 41 82 00 0C */ beq lbl_800132B8 /* 800132B0 00010210 38 80 00 00 */ li r4, 0 /* 800132B4 00010214 48 00 03 6D */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager lbl_800132B8: /* 800132B8 00010218 80 1E 03 A8 */ lwz r0, 0x3a8(r30) /* 800132BC 0001021C 2C 00 00 01 */ cmpwi r0, 1 /* 800132C0 00010220 41 82 00 E4 */ beq lbl_800133A4 /* 800132C4 00010224 40 80 00 10 */ bge lbl_800132D4 /* 800132C8 00010228 2C 00 00 00 */ cmpwi r0, 0 /* 800132CC 0001022C 40 80 00 14 */ bge lbl_800132E0 /* 800132D0 00010230 48 00 02 10 */ b lbl_800134E0 lbl_800132D4: /* 800132D4 00010234 2C 00 00 03 */ cmpwi r0, 3 /* 800132D8 00010238 40 80 02 08 */ bge lbl_800134E0 /* 800132DC 0001023C 48 00 01 DC */ b lbl_800134B8 lbl_800132E0: /* 800132E0 00010240 7F C3 F3 78 */ mr r3, r30 /* 800132E4 00010244 7F A4 EB 78 */ mr r4, r29 /* 800132E8 00010248 7F E5 FB 78 */ mr r5, r31 /* 800132EC 0001024C 48 00 02 19 */ bl ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager /* 800132F0 00010250 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800132F4 00010254 41 82 01 EC */ beq lbl_800134E0 /* 800132F8 00010258 A0 1E 03 10 */ lhz r0, 0x310(r30) /* 800132FC 0001025C 7F E3 FB 78 */ mr r3, r31 /* 80013300 00010260 38 81 00 14 */ addi r4, r1, 0x14 /* 80013304 00010264 B0 01 00 10 */ sth r0, 0x10(r1) /* 80013308 00010268 B0 01 00 14 */ sth r0, 0x14(r1) /* 8001330C 0001026C 48 03 92 69 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80013310 00010270 7C 64 1B 78 */ mr r4, r3 /* 80013314 00010274 38 61 00 28 */ addi r3, r1, 0x28 /* 80013318 00010278 48 09 C9 79 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8001331C 0001027C 80 63 00 04 */ lwz r3, 4(r3) /* 80013320 00010280 28 03 00 00 */ cmplwi r3, 0 /* 80013324 00010284 41 82 01 BC */ beq lbl_800134E0 /* 80013328 00010288 48 04 01 A1 */ bl GetScannableObjectInfo__6CActorCFv /* 8001332C 0001028C 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 80013330 00010290 7C 7D 1B 78 */ mr r29, r3 /* 80013334 00010294 80 83 00 00 */ lwz r4, 0(r3) /* 80013338 00010298 80 65 00 00 */ lwz r3, 0(r5) /* 8001333C 0001029C 48 07 E3 55 */ bl GetScanTime__12CPlayerStateCFUi /* 80013340 000102A0 FF E0 08 90 */ fmr f31, f1 /* 80013344 000102A4 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80013348 000102A8 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8001334C 000102AC 4C 41 13 82 */ cror 2, 1, 2 /* 80013350 000102B0 40 82 00 1C */ bne lbl_8001336C /* 80013354 000102B4 88 1E 09 C6 */ lbz r0, 0x9c6(r30) /* 80013358 000102B8 38 60 00 00 */ li r3, 0 /* 8001335C 000102BC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 80013360 000102C0 FF E0 00 90 */ fmr f31, f0 /* 80013364 000102C4 98 1E 09 C6 */ stb r0, 0x9c6(r30) /* 80013368 000102C8 48 00 00 14 */ b lbl_8001337C lbl_8001336C: /* 8001336C 000102CC 88 1E 09 C6 */ lbz r0, 0x9c6(r30) /* 80013370 000102D0 38 60 00 01 */ li r3, 1 /* 80013374 000102D4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 80013378 000102D8 98 1E 09 C6 */ stb r0, 0x9c6(r30) lbl_8001337C: /* 8001337C 000102DC 7F C3 F3 78 */ mr r3, r30 /* 80013380 000102E0 7F E5 FB 78 */ mr r5, r31 /* 80013384 000102E4 38 80 00 01 */ li r4, 1 /* 80013388 000102E8 48 00 02 99 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager /* 8001338C 000102EC C0 3D 00 08 */ lfs f1, 8(r29) /* 80013390 000102F0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80013394 000102F4 EC 3F 00 72 */ fmuls f1, f31, f1 /* 80013398 000102F8 D0 3E 03 AC */ stfs f1, 0x3ac(r30) /* 8001339C 000102FC D0 1E 03 B0 */ stfs f0, 0x3b0(r30) /* 800133A0 00010300 48 00 01 40 */ b lbl_800134E0 lbl_800133A4: /* 800133A4 00010304 7F C3 F3 78 */ mr r3, r30 /* 800133A8 00010308 7F A4 EB 78 */ mr r4, r29 /* 800133AC 0001030C 7F E5 FB 78 */ mr r5, r31 /* 800133B0 00010310 48 00 01 55 */ bl ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager /* 800133B4 00010314 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800133B8 00010318 41 82 00 EC */ beq lbl_800134A4 /* 800133BC 0001031C A0 1E 03 10 */ lhz r0, 0x310(r30) /* 800133C0 00010320 7F E3 FB 78 */ mr r3, r31 /* 800133C4 00010324 38 81 00 0C */ addi r4, r1, 0xc /* 800133C8 00010328 B0 01 00 08 */ sth r0, 8(r1) /* 800133CC 0001032C B0 01 00 0C */ sth r0, 0xc(r1) /* 800133D0 00010330 48 03 91 A5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 800133D4 00010334 7C 64 1B 78 */ mr r4, r3 /* 800133D8 00010338 38 61 00 20 */ addi r3, r1, 0x20 /* 800133DC 0001033C 48 09 C8 B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 800133E0 00010340 80 63 00 04 */ lwz r3, 4(r3) /* 800133E4 00010344 28 03 00 00 */ cmplwi r3, 0 /* 800133E8 00010348 41 82 00 A8 */ beq lbl_80013490 /* 800133EC 0001034C 48 04 00 DD */ bl GetScannableObjectInfo__6CActorCFv /* 800133F0 00010350 28 03 00 00 */ cmplwi r3, 0 /* 800133F4 00010354 41 82 00 EC */ beq lbl_800134E0 /* 800133F8 00010358 C0 23 00 08 */ lfs f1, 8(r3) /* 800133FC 0001035C D0 21 00 1C */ stfs f1, 0x1c(r1) /* 80013400 00010360 C0 1E 03 AC */ lfs f0, 0x3ac(r30) /* 80013404 00010364 EC 00 F8 2A */ fadds f0, f0, f31 /* 80013408 00010368 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001340C 0001036C D0 01 00 18 */ stfs f0, 0x18(r1) /* 80013410 00010370 40 80 00 0C */ bge lbl_8001341C /* 80013414 00010374 38 81 00 1C */ addi r4, r1, 0x1c /* 80013418 00010378 48 00 00 08 */ b lbl_80013420 lbl_8001341C: /* 8001341C 0001037C 38 81 00 18 */ addi r4, r1, 0x18 lbl_80013420: /* 80013420 00010380 C0 04 00 00 */ lfs f0, 0(r4) /* 80013424 00010384 D0 1E 03 AC */ stfs f0, 0x3ac(r30) /* 80013428 00010388 C0 1E 03 B0 */ lfs f0, 0x3b0(r30) /* 8001342C 0001038C EC 00 F8 2A */ fadds f0, f0, f31 /* 80013430 00010390 D0 1E 03 B0 */ stfs f0, 0x3b0(r30) /* 80013434 00010394 C0 3E 03 AC */ lfs f1, 0x3ac(r30) /* 80013438 00010398 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8001343C 0001039C 80 BF 08 B8 */ lwz r5, 0x8b8(r31) /* 80013440 000103A0 EC 21 00 24 */ fdivs f1, f1, f0 /* 80013444 000103A4 80 83 00 00 */ lwz r4, 0(r3) /* 80013448 000103A8 80 65 00 00 */ lwz r3, 0(r5) /* 8001344C 000103AC 48 07 E1 89 */ bl SetScanTime__12CPlayerStateFUif /* 80013450 000103B0 C0 3E 03 AC */ lfs f1, 0x3ac(r30) /* 80013454 000103B4 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 80013458 000103B8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001345C 000103BC 4C 41 13 82 */ cror 2, 1, 2 /* 80013460 000103C0 40 82 00 80 */ bne lbl_800134E0 /* 80013464 000103C4 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) /* 80013468 000103C8 C0 3E 03 B0 */ lfs f1, 0x3b0(r30) /* 8001346C 000103CC C0 03 02 24 */ lfs f0, 0x224(r3) /* 80013470 000103D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80013474 000103D4 4C 41 13 82 */ cror 2, 1, 2 /* 80013478 000103D8 40 82 00 68 */ bne lbl_800134E0 /* 8001347C 000103DC 7F C3 F3 78 */ mr r3, r30 /* 80013480 000103E0 7F E5 FB 78 */ mr r5, r31 /* 80013484 000103E4 38 80 00 02 */ li r4, 2 /* 80013488 000103E8 48 00 01 99 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager /* 8001348C 000103EC 48 00 00 54 */ b lbl_800134E0 lbl_80013490: /* 80013490 000103F0 7F C3 F3 78 */ mr r3, r30 /* 80013494 000103F4 7F E5 FB 78 */ mr r5, r31 /* 80013498 000103F8 38 80 00 00 */ li r4, 0 /* 8001349C 000103FC 48 00 01 85 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager /* 800134A0 00010400 48 00 00 40 */ b lbl_800134E0 lbl_800134A4: /* 800134A4 00010404 7F C3 F3 78 */ mr r3, r30 /* 800134A8 00010408 7F E5 FB 78 */ mr r5, r31 /* 800134AC 0001040C 38 80 00 00 */ li r4, 0 /* 800134B0 00010410 48 00 01 71 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager /* 800134B4 00010414 48 00 00 2C */ b lbl_800134E0 lbl_800134B8: /* 800134B8 00010418 7F C3 F3 78 */ mr r3, r30 /* 800134BC 0001041C 7F A4 EB 78 */ mr r4, r29 /* 800134C0 00010420 7F E5 FB 78 */ mr r5, r31 /* 800134C4 00010424 48 00 00 41 */ bl ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager /* 800134C8 00010428 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800134CC 0001042C 40 82 00 14 */ bne lbl_800134E0 /* 800134D0 00010430 7F C3 F3 78 */ mr r3, r30 /* 800134D4 00010434 7F E5 FB 78 */ mr r5, r31 /* 800134D8 00010438 38 80 00 00 */ li r4, 0 /* 800134DC 0001043C 48 00 01 45 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager lbl_800134E0: /* 800134E0 00010440 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800134E4 00010444 80 01 00 54 */ lwz r0, 0x54(r1) /* 800134E8 00010448 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800134EC 0001044C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800134F0 00010450 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800134F4 00010454 83 A1 00 34 */ lwz r29, 0x34(r1) /* 800134F8 00010458 7C 08 03 A6 */ mtlr r0 /* 800134FC 0001045C 38 21 00 50 */ addi r1, r1, 0x50 /* 80013500 00010460 4E 80 00 20 */ blr .global ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager: /* 80013504 00010464 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80013508 00010468 7C 08 02 A6 */ mflr r0 /* 8001350C 0001046C 90 01 00 44 */ stw r0, 0x44(r1) /* 80013510 00010470 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80013514 00010474 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80013518 00010478 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8001351C 0001047C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80013520 00010480 7C 7E 1B 78 */ mr r30, r3 /* 80013524 00010484 7C BF 2B 78 */ mr r31, r5 /* 80013528 00010488 38 60 00 3C */ li r3, 0x3c /* 8001352C 0001048C 4B FF 93 49 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80013530 00010490 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80013534 00010494 41 82 00 C8 */ beq lbl_800135FC /* 80013538 00010498 A0 1E 03 10 */ lhz r0, 0x310(r30) /* 8001353C 0001049C 7F E3 FB 78 */ mr r3, r31 /* 80013540 000104A0 38 81 00 0C */ addi r4, r1, 0xc /* 80013544 000104A4 B0 01 00 08 */ sth r0, 8(r1) /* 80013548 000104A8 B0 01 00 0C */ sth r0, 0xc(r1) /* 8001354C 000104AC 48 03 90 29 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80013550 000104B0 7C 64 1B 78 */ mr r4, r3 /* 80013554 000104B4 38 61 00 10 */ addi r3, r1, 0x10 /* 80013558 000104B8 48 09 C7 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8001355C 000104BC 80 1E 03 04 */ lwz r0, 0x304(r30) /* 80013560 000104C0 80 C3 00 04 */ lwz r6, 4(r3) /* 80013564 000104C4 2C 00 00 01 */ cmpwi r0, 1 /* 80013568 000104C8 40 82 00 94 */ bne lbl_800135FC /* 8001356C 000104CC 28 06 00 00 */ cmplwi r6, 0 /* 80013570 000104D0 41 82 00 8C */ beq lbl_800135FC /* 80013574 000104D4 80 66 00 68 */ lwz r3, 0x68(r6) /* 80013578 000104D8 38 00 00 80 */ li r0, 0x80 /* 8001357C 000104DC 80 A6 00 6C */ lwz r5, 0x6c(r6) /* 80013580 000104E0 38 80 00 00 */ li r4, 0 /* 80013584 000104E4 7C 60 00 38 */ and r0, r3, r0 /* 80013588 000104E8 7C A3 20 38 */ and r3, r5, r4 /* 8001358C 000104EC 7C 63 22 78 */ xor r3, r3, r4 /* 80013590 000104F0 7C 00 22 78 */ xor r0, r0, r4 /* 80013594 000104F4 7C 60 03 79 */ or. r0, r3, r0 /* 80013598 000104F8 41 82 00 64 */ beq lbl_800135FC /* 8001359C 000104FC C0 3E 00 50 */ lfs f1, 0x50(r30) /* 800135A0 00010500 38 61 00 18 */ addi r3, r1, 0x18 /* 800135A4 00010504 C0 06 00 50 */ lfs f0, 0x50(r6) /* 800135A8 00010508 C0 7E 00 60 */ lfs f3, 0x60(r30) /* 800135AC 0001050C C0 46 00 60 */ lfs f2, 0x60(r6) /* 800135B0 00010510 EC 81 00 28 */ fsubs f4, f1, f0 /* 800135B4 00010514 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 800135B8 00010518 C0 06 00 40 */ lfs f0, 0x40(r6) /* 800135BC 0001051C EC 43 10 28 */ fsubs f2, f3, f2 /* 800135C0 00010520 EC 01 00 28 */ fsubs f0, f1, f0 /* 800135C4 00010524 D0 81 00 1C */ stfs f4, 0x1c(r1) /* 800135C8 00010528 D0 41 00 20 */ stfs f2, 0x20(r1) /* 800135CC 0001052C D0 01 00 18 */ stfs f0, 0x18(r1) /* 800135D0 00010530 48 30 11 29 */ bl CanBeNormalized__9CVector3fCFv /* 800135D4 00010534 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800135D8 00010538 41 82 00 24 */ beq lbl_800135FC /* 800135DC 0001053C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) /* 800135E0 00010540 38 61 00 18 */ addi r3, r1, 0x18 /* 800135E4 00010544 C3 E4 02 18 */ lfs f31, 0x218(r4) /* 800135E8 00010548 48 30 12 D1 */ bl Magnitude__9CVector3fCFv /* 800135EC 0001054C FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 800135F0 00010550 40 80 00 0C */ bge lbl_800135FC /* 800135F4 00010554 38 60 00 01 */ li r3, 1 /* 800135F8 00010558 48 00 00 08 */ b lbl_80013600 lbl_800135FC: /* 800135FC 0001055C 38 60 00 00 */ li r3, 0 lbl_80013600: /* 80013600 00010560 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80013604 00010564 80 01 00 44 */ lwz r0, 0x44(r1) /* 80013608 00010568 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8001360C 0001056C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80013610 00010570 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80013614 00010574 7C 08 03 A6 */ mtlr r0 /* 80013618 00010578 38 21 00 40 */ addi r1, r1, 0x40 /* 8001361C 0001057C 4E 80 00 20 */ blr .global SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager: /* 80013620 00010580 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80013624 00010584 7C 08 02 A6 */ mflr r0 /* 80013628 00010588 90 01 00 44 */ stw r0, 0x44(r1) /* 8001362C 0001058C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80013630 00010590 7C BF 2B 78 */ mr r31, r5 /* 80013634 00010594 93 C1 00 38 */ stw r30, 0x38(r1) /* 80013638 00010598 7C 9E 23 78 */ mr r30, r4 /* 8001363C 0001059C 93 A1 00 34 */ stw r29, 0x34(r1) /* 80013640 000105A0 7C 7D 1B 78 */ mr r29, r3 /* 80013644 000105A4 93 81 00 30 */ stw r28, 0x30(r1) /* 80013648 000105A8 80 03 03 A8 */ lwz r0, 0x3a8(r3) /* 8001364C 000105AC 7C 00 F0 00 */ cmpw r0, r30 /* 80013650 000105B0 41 82 01 A0 */ beq lbl_800137F0 /* 80013654 000105B4 7F E3 FB 78 */ mr r3, r31 /* 80013658 000105B8 38 80 00 00 */ li r4, 0 /* 8001365C 000105BC 48 03 08 FD */ bl SetGameState__13CStateManagerFQ213CStateManager10EGameState /* 80013660 000105C0 80 1D 03 A8 */ lwz r0, 0x3a8(r29) /* 80013664 000105C4 2C 00 00 02 */ cmpwi r0, 2 /* 80013668 000105C8 40 82 00 48 */ bne lbl_800136B0 /* 8001366C 000105CC A0 1D 03 B4 */ lhz r0, 0x3b4(r29) /* 80013670 000105D0 7F E3 FB 78 */ mr r3, r31 /* 80013674 000105D4 38 81 00 10 */ addi r4, r1, 0x10 /* 80013678 000105D8 B0 01 00 10 */ sth r0, 0x10(r1) /* 8001367C 000105DC 48 03 8E F9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80013680 000105E0 7C 64 1B 78 */ mr r4, r3 /* 80013684 000105E4 38 61 00 1C */ addi r3, r1, 0x1c /* 80013688 000105E8 48 09 C6 09 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 8001368C 000105EC 80 63 00 04 */ lwz r3, 4(r3) /* 80013690 000105F0 28 03 00 00 */ cmplwi r3, 0 /* 80013694 000105F4 41 82 00 1C */ beq lbl_800136B0 /* 80013698 000105F8 81 83 00 00 */ lwz r12, 0(r3) /* 8001369C 000105FC 7F E5 FB 78 */ mr r5, r31 /* 800136A0 00010600 38 80 00 02 */ li r4, 2 /* 800136A4 00010604 81 8C 00 60 */ lwz r12, 0x60(r12) /* 800136A8 00010608 7D 89 03 A6 */ mtctr r12 /* 800136AC 0001060C 4E 80 04 21 */ bctrl lbl_800136B0: /* 800136B0 00010610 2C 1E 00 01 */ cmpwi r30, 1 /* 800136B4 00010614 41 82 01 08 */ beq lbl_800137BC /* 800136B8 00010618 40 80 00 10 */ bge lbl_800136C8 /* 800136BC 0001061C 2C 1E 00 00 */ cmpwi r30, 0 /* 800136C0 00010620 40 80 00 14 */ bge lbl_800136D4 /* 800136C4 00010624 48 00 01 28 */ b lbl_800137EC lbl_800136C8: /* 800136C8 00010628 2C 1E 00 03 */ cmpwi r30, 3 /* 800136CC 0001062C 40 80 01 20 */ bge lbl_800137EC /* 800136D0 00010630 48 00 00 F8 */ b lbl_800137C8 lbl_800136D4: /* 800136D4 00010634 80 1D 03 A8 */ lwz r0, 0x3a8(r29) /* 800136D8 00010638 2C 00 00 01 */ cmpwi r0, 1 /* 800136DC 0001063C 41 82 00 0C */ beq lbl_800136E8 /* 800136E0 00010640 2C 00 00 02 */ cmpwi r0, 2 /* 800136E4 00010644 40 82 00 1C */ bne lbl_80013700 lbl_800136E8: /* 800136E8 00010648 88 1D 09 C6 */ lbz r0, 0x9c6(r29) /* 800136EC 0001064C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 800136F0 00010650 41 82 00 10 */ beq lbl_80013700 /* 800136F4 00010654 7F A3 EB 78 */ mr r3, r29 /* 800136F8 00010658 7F E4 FB 78 */ mr r4, r31 /* 800136FC 0001065C 4B FF D4 31 */ bl FinishNewScan__7CPlayerFR13CStateManager lbl_80013700: /* 80013700 00010660 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80013704 00010664 D0 1D 03 AC */ stfs f0, 0x3ac(r29) /* 80013708 00010668 D0 1D 03 B0 */ stfs f0, 0x3b0(r29) /* 8001370C 0001066C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80013710 00010670 88 03 02 1C */ lbz r0, 0x21c(r3) /* 80013714 00010674 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80013718 00010678 40 82 00 98 */ bne lbl_800137B0 /* 8001371C 0001067C A0 1D 03 10 */ lhz r0, 0x310(r29) /* 80013720 00010680 7F E3 FB 78 */ mr r3, r31 /* 80013724 00010684 38 81 00 0C */ addi r4, r1, 0xc /* 80013728 00010688 B0 01 00 08 */ sth r0, 8(r1) /* 8001372C 0001068C B0 01 00 0C */ sth r0, 0xc(r1) /* 80013730 00010690 48 03 8E 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80013734 00010694 7C 64 1B 78 */ mr r4, r3 /* 80013738 00010698 38 61 00 14 */ addi r3, r1, 0x14 /* 8001373C 0001069C 48 09 C5 55 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 80013740 000106A0 80 63 00 04 */ lwz r3, 4(r3) /* 80013744 000106A4 28 03 00 00 */ cmplwi r3, 0 /* 80013748 000106A8 41 82 00 68 */ beq lbl_800137B0 /* 8001374C 000106AC 80 83 00 68 */ lwz r4, 0x68(r3) /* 80013750 000106B0 38 00 00 80 */ li r0, 0x80 /* 80013754 000106B4 80 C3 00 6C */ lwz r6, 0x6c(r3) /* 80013758 000106B8 38 A0 00 00 */ li r5, 0 /* 8001375C 000106BC 7C 80 00 38 */ and r0, r4, r0 /* 80013760 000106C0 7C C4 28 38 */ and r4, r6, r5 /* 80013764 000106C4 7C 84 2A 78 */ xor r4, r4, r5 /* 80013768 000106C8 7C 00 2A 78 */ xor r0, r0, r5 /* 8001376C 000106CC 7C 80 03 79 */ or. r0, r4, r0 /* 80013770 000106D0 41 82 00 40 */ beq lbl_800137B0 /* 80013774 000106D4 48 03 FD 55 */ bl GetScannableObjectInfo__6CActorCFv /* 80013778 000106D8 7C 7C 1B 79 */ or. r28, r3, r3 /* 8001377C 000106DC 41 82 00 34 */ beq lbl_800137B0 /* 80013780 000106E0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80013784 000106E4 80 9C 00 00 */ lwz r4, 0(r28) /* 80013788 000106E8 80 63 00 00 */ lwz r3, 0(r3) /* 8001378C 000106EC 48 07 DF 05 */ bl GetScanTime__12CPlayerStateCFUi /* 80013790 000106F0 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80013794 000106F4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80013798 000106F8 40 80 00 18 */ bge lbl_800137B0 /* 8001379C 000106FC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800137A0 00010700 80 9C 00 00 */ lwz r4, 0(r28) /* 800137A4 00010704 80 63 00 00 */ lwz r3, 0(r3) /* 800137A8 00010708 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 800137AC 0001070C 48 07 DE 29 */ bl SetScanTime__12CPlayerStateFUif lbl_800137B0: /* 800137B0 00010710 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800137B4 00010714 B0 1D 03 B4 */ sth r0, 0x3b4(r29) /* 800137B8 00010718 48 00 00 34 */ b lbl_800137EC lbl_800137BC: /* 800137BC 0001071C A0 1D 03 10 */ lhz r0, 0x310(r29) /* 800137C0 00010720 B0 1D 03 B4 */ sth r0, 0x3b4(r29) /* 800137C4 00010724 48 00 00 28 */ b lbl_800137EC lbl_800137C8: /* 800137C8 00010728 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 800137CC 0001072C 88 03 02 1C */ lbz r0, 0x21c(r3) /* 800137D0 00010730 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 800137D4 00010734 41 82 00 10 */ beq lbl_800137E4 /* 800137D8 00010738 7F E3 FB 78 */ mr r3, r31 /* 800137DC 0001073C 38 80 00 01 */ li r4, 1 /* 800137E0 00010740 48 03 07 79 */ bl SetGameState__13CStateManagerFQ213CStateManager10EGameState lbl_800137E4: /* 800137E4 00010744 A0 1D 03 10 */ lhz r0, 0x310(r29) /* 800137E8 00010748 B0 1D 03 B4 */ sth r0, 0x3b4(r29) lbl_800137EC: /* 800137EC 0001074C 93 DD 03 A8 */ stw r30, 0x3a8(r29) lbl_800137F0: /* 800137F0 00010750 80 01 00 44 */ lwz r0, 0x44(r1) /* 800137F4 00010754 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800137F8 00010758 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800137FC 0001075C 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80013800 00010760 83 81 00 30 */ lwz r28, 0x30(r1) /* 80013804 00010764 7C 08 03 A6 */ mtlr r0 /* 80013808 00010768 38 21 00 40 */ addi r1, r1, 0x40 /* 8001380C 0001076C 4E 80 00 20 */ blr .global GetExplorationMode__7CPlayerCFv GetExplorationMode__7CPlayerCFv: /* 80013810 00010770 80 03 04 98 */ lwz r0, 0x498(r3) /* 80013814 00010774 2C 00 00 03 */ cmpwi r0, 3 /* 80013818 00010778 41 82 00 20 */ beq lbl_80013838 /* 8001381C 0001077C 40 80 00 24 */ bge lbl_80013840 /* 80013820 00010780 2C 00 00 00 */ cmpwi r0, 0 /* 80013824 00010784 41 82 00 14 */ beq lbl_80013838 /* 80013828 00010788 40 80 00 08 */ bge lbl_80013830 /* 8001382C 0001078C 48 00 00 14 */ b lbl_80013840 lbl_80013830: /* 80013830 00010790 38 60 00 00 */ li r3, 0 /* 80013834 00010794 4E 80 00 20 */ blr lbl_80013838: /* 80013838 00010798 38 60 00 01 */ li r3, 1 /* 8001383C 0001079C 4E 80 00 20 */ blr lbl_80013840: /* 80013840 000107A0 38 60 00 00 */ li r3, 0 /* 80013844 000107A4 4E 80 00 20 */ blr .global GetCombatMode__7CPlayerCFv GetCombatMode__7CPlayerCFv: /* 80013848 000107A8 80 03 04 98 */ lwz r0, 0x498(r3) /* 8001384C 000107AC 2C 00 00 03 */ cmpwi r0, 3 /* 80013850 000107B0 41 82 00 20 */ beq lbl_80013870 /* 80013854 000107B4 40 80 00 24 */ bge lbl_80013878 /* 80013858 000107B8 2C 00 00 00 */ cmpwi r0, 0 /* 8001385C 000107BC 41 82 00 14 */ beq lbl_80013870 /* 80013860 000107C0 40 80 00 08 */ bge lbl_80013868 /* 80013864 000107C4 48 00 00 14 */ b lbl_80013878 lbl_80013868: /* 80013868 000107C8 38 60 00 01 */ li r3, 1 /* 8001386C 000107CC 4E 80 00 20 */ blr lbl_80013870: /* 80013870 000107D0 38 60 00 00 */ li r3, 0 /* 80013874 000107D4 4E 80 00 20 */ blr lbl_80013878: /* 80013878 000107D8 38 60 00 00 */ li r3, 0 /* 8001387C 000107DC 4E 80 00 20 */ blr .global RenderGun__7CPlayerCFRC13CStateManagerRC9CVector3f RenderGun__7CPlayerCFRC13CStateManagerRC9CVector3f: /* 80013880 000107E0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80013884 000107E4 7C 08 02 A6 */ mflr r0 /* 80013888 000107E8 90 01 00 24 */ stw r0, 0x24(r1) /* 8001388C 000107EC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80013890 000107F0 7C BF 2B 78 */ mr r31, r5 /* 80013894 000107F4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80013898 000107F8 7C 9E 23 78 */ mr r30, r4 /* 8001389C 000107FC 93 A1 00 14 */ stw r29, 0x14(r1) /* 800138A0 00010800 7C 7D 1B 78 */ mr r29, r3 /* 800138A4 00010804 93 81 00 10 */ stw r28, 0x10(r1) /* 800138A8 00010808 80 64 08 70 */ lwz r3, 0x870(r4) /* 800138AC 0001080C 4B FF 70 55 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 800138B0 00010810 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800138B4 00010814 40 82 00 FC */ bne lbl_800139B0 /* 800138B8 00010818 80 7D 04 90 */ lwz r3, 0x490(r29) /* 800138BC 0001081C 80 63 07 40 */ lwz r3, 0x740(r3) /* 800138C0 00010820 88 03 03 B2 */ lbz r0, 0x3b2(r3) /* 800138C4 00010824 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800138C8 00010828 41 82 00 1C */ beq lbl_800138E4 /* 800138CC 0001082C 80 03 03 34 */ lwz r0, 0x334(r3) /* 800138D0 00010830 2C 00 00 0A */ cmpwi r0, 0xa /* 800138D4 00010834 41 82 00 10 */ beq lbl_800138E4 /* 800138D8 00010838 7F C4 F3 78 */ mr r4, r30 /* 800138DC 0001083C 7F E5 FB 78 */ mr r5, r31 /* 800138E0 00010840 48 10 BB D9 */ bl RenderGrappleBeam__11CGrappleArmCFRC13CStateManagerRC9CVector3f lbl_800138E4: /* 800138E4 00010844 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 800138E8 00010848 7F C4 F3 78 */ mr r4, r30 /* 800138EC 0001084C 80 63 00 00 */ lwz r3, 0(r3) /* 800138F0 00010850 48 07 DC 69 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 800138F4 00010854 80 9E 08 B8 */ lwz r4, 0x8b8(r30) /* 800138F8 00010858 20 03 00 02 */ subfic r0, r3, 2 /* 800138FC 0001085C 7C 00 00 34 */ cntlzw r0, r0 /* 80013900 00010860 80 64 00 00 */ lwz r3, 0(r4) /* 80013904 00010864 54 1C D9 7E */ srwi r28, r0, 5 /* 80013908 00010868 48 07 DF 5D */ bl GetVisorTransitionFactor__12CPlayerStateCFv /* 8001390C 0001086C 57 80 06 3F */ clrlwi. r0, r28, 0x18 /* 80013910 00010870 38 60 00 00 */ li r3, 0 /* 80013914 00010874 41 82 00 18 */ beq lbl_8001392C /* 80013918 00010878 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 8001391C 0001087C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80013920 00010880 4C 41 13 82 */ cror 2, 1, 2 /* 80013924 00010884 40 82 00 08 */ bne lbl_8001392C /* 80013928 00010888 38 60 00 01 */ li r3, 1 lbl_8001392C: /* 8001392C 0001088C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80013930 00010890 28 00 00 01 */ cmplwi r0, 1 /* 80013934 00010894 41 82 00 7C */ beq lbl_800139B0 /* 80013938 00010898 80 7E 08 70 */ lwz r3, 0x870(r30) /* 8001393C 0001089C 4B FF 6F A9 */ bl IsInFirstPersonCamera__14CCameraManagerCFv /* 80013940 000108A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80013944 000108A4 41 82 00 10 */ beq lbl_80013954 /* 80013948 000108A8 80 1D 02 F4 */ lwz r0, 0x2f4(r29) /* 8001394C 000108AC 2C 00 00 00 */ cmpwi r0, 0 /* 80013950 000108B0 41 82 00 1C */ beq lbl_8001396C lbl_80013954: /* 80013954 000108B4 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80013958 000108B8 2C 00 00 02 */ cmpwi r0, 2 /* 8001395C 000108BC 40 82 00 54 */ bne lbl_800139B0 /* 80013960 000108C0 80 1D 04 98 */ lwz r0, 0x498(r29) /* 80013964 000108C4 2C 00 00 03 */ cmpwi r0, 3 /* 80013968 000108C8 40 82 00 48 */ bne lbl_800139B0 lbl_8001396C: /* 8001396C 000108CC C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013970 000108D0 38 60 00 05 */ li r3, 5 /* 80013974 000108D4 38 80 00 00 */ li r4, 0 /* 80013978 000108D8 38 00 00 03 */ li r0, 3 /* 8001397C 000108DC FC 40 08 90 */ fmr f2, f1 /* 80013980 000108E0 98 61 00 08 */ stb r3, 8(r1) /* 80013984 000108E4 FC 60 08 90 */ fmr f3, f1 /* 80013988 000108E8 C0 9D 04 94 */ lfs f4, 0x494(r29) /* 8001398C 000108EC 98 81 00 09 */ stb r4, 9(r1) /* 80013990 000108F0 38 61 00 0C */ addi r3, r1, 0xc /* 80013994 000108F4 B0 01 00 0A */ sth r0, 0xa(r1) /* 80013998 000108F8 48 34 FA 55 */ bl __ct__6CColorFffff /* 8001399C 000108FC 80 7D 04 90 */ lwz r3, 0x490(r29) /* 800139A0 00010900 7F C4 F3 78 */ mr r4, r30 /* 800139A4 00010904 7F E5 FB 78 */ mr r5, r31 /* 800139A8 00010908 38 C1 00 08 */ addi r6, r1, 8 /* 800139AC 0001090C 48 02 E0 E1 */ bl Render__10CPlayerGunCFRC13CStateManagerRC9CVector3fRC11CModelFlags lbl_800139B0: /* 800139B0 00010910 80 01 00 24 */ lwz r0, 0x24(r1) /* 800139B4 00010914 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800139B8 00010918 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800139BC 0001091C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800139C0 00010920 83 81 00 10 */ lwz r28, 0x10(r1) /* 800139C4 00010924 7C 08 03 A6 */ mtlr r0 /* 800139C8 00010928 38 21 00 20 */ addi r1, r1, 0x20 /* 800139CC 0001092C 4E 80 00 20 */ blr .global Render__7CPlayerCFRC13CStateManager Render__7CPlayerCFRC13CStateManager: /* 800139D0 00010930 94 21 FD 60 */ stwu r1, -0x2a0(r1) /* 800139D4 00010934 7C 08 02 A6 */ mflr r0 /* 800139D8 00010938 90 01 02 A4 */ stw r0, 0x2a4(r1) /* 800139DC 0001093C DB E1 02 90 */ stfd f31, 0x290(r1) /* 800139E0 00010940 F3 E1 02 98 */ psq_st f31, 664(r1), 0, qr0 /* 800139E4 00010944 DB C1 02 80 */ stfd f30, 0x280(r1) /* 800139E8 00010948 F3 C1 02 88 */ psq_st f30, 648(r1), 0, qr0 /* 800139EC 0001094C DB A1 02 70 */ stfd f29, 0x270(r1) /* 800139F0 00010950 F3 A1 02 78 */ psq_st f29, 632(r1), 0, qr0 /* 800139F4 00010954 DB 81 02 60 */ stfd f28, 0x260(r1) /* 800139F8 00010958 F3 81 02 68 */ psq_st f28, 616(r1), 0, qr0 /* 800139FC 0001095C DB 61 02 50 */ stfd f27, 0x250(r1) /* 80013A00 00010960 F3 61 02 58 */ psq_st f27, 600(r1), 0, qr0 /* 80013A04 00010964 BE A1 02 24 */ stmw r21, 0x224(r1) /* 80013A08 00010968 80 A3 02 F4 */ lwz r5, 0x2f4(r3) /* 80013A0C 0001096C 7C 7E 1B 78 */ mr r30, r3 /* 80013A10 00010970 7C 9F 23 78 */ mr r31, r4 /* 80013A14 00010974 20 65 00 04 */ subfic r3, r5, 4 /* 80013A18 00010978 38 05 FF FC */ addi r0, r5, -4 /* 80013A1C 0001097C 7C 60 03 78 */ or r0, r3, r0 /* 80013A20 00010980 54 15 0F FF */ rlwinm. r21, r0, 1, 0x1f, 0x1f /* 80013A24 00010984 40 82 00 48 */ bne lbl_80013A6C /* 80013A28 00010988 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80013A2C 0001098C 4B FF 80 ED */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80013A30 00010990 7C 64 1B 78 */ mr r4, r3 /* 80013A34 00010994 38 61 00 10 */ addi r3, r1, 0x10 /* 80013A38 00010998 48 09 BC F9 */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" /* 80013A3C 0001099C 80 83 00 04 */ lwz r4, 4(r3) /* 80013A40 000109A0 28 04 00 00 */ cmplwi r4, 0 /* 80013A44 000109A4 41 82 00 28 */ beq lbl_80013A6C /* 80013A48 000109A8 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80013A4C 000109AC 38 60 00 00 */ li r3, 0 /* 80013A50 000109B0 2C 00 00 01 */ cmpwi r0, 1 /* 80013A54 000109B4 40 82 00 14 */ bne lbl_80013A68 /* 80013A58 000109B8 80 04 02 1C */ lwz r0, 0x21c(r4) /* 80013A5C 000109BC 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 80013A60 000109C0 41 82 00 08 */ beq lbl_80013A68 /* 80013A64 000109C4 38 60 00 01 */ li r3, 1 lbl_80013A68: /* 80013A68 000109C8 7C 75 1B 78 */ mr r21, r3 lbl_80013A6C: /* 80013A6C 000109CC 80 1E 02 F4 */ lwz r0, 0x2f4(r30) /* 80013A70 000109D0 2C 00 00 00 */ cmpwi r0, 0 /* 80013A74 000109D4 41 82 06 28 */ beq lbl_8001409C /* 80013A78 000109D8 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80013A7C 000109DC 41 82 06 20 */ beq lbl_8001409C /* 80013A80 000109E0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80013A84 000109E4 3A A0 00 00 */ li r21, 0 /* 80013A88 000109E8 3A E0 00 00 */ li r23, 0 /* 80013A8C 000109EC 2C 00 00 02 */ cmpwi r0, 2 /* 80013A90 000109F0 41 82 00 A8 */ beq lbl_80013B38 /* 80013A94 000109F4 40 80 00 14 */ bge lbl_80013AA8 /* 80013A98 000109F8 2C 00 00 00 */ cmpwi r0, 0 /* 80013A9C 000109FC 41 82 00 18 */ beq lbl_80013AB4 /* 80013AA0 00010A00 40 80 00 C8 */ bge lbl_80013B68 /* 80013AA4 00010A04 48 00 00 E4 */ b lbl_80013B88 lbl_80013AA8: /* 80013AA8 00010A08 2C 00 00 04 */ cmpwi r0, 4 /* 80013AAC 00010A0C 40 80 00 DC */ bge lbl_80013B88 /* 80013AB0 00010A10 48 00 00 A0 */ b lbl_80013B50 lbl_80013AB4: /* 80013AB4 00010A14 80 7E 00 64 */ lwz r3, 0x64(r30) /* 80013AB8 00010A18 7F E4 FB 78 */ mr r4, r31 /* 80013ABC 00010A1C 38 A0 00 00 */ li r5, 0 /* 80013AC0 00010A20 48 10 22 51 */ bl Touch__10CModelDataCFRC13CStateManageri /* 80013AC4 00010A24 7F C3 F3 78 */ mr r3, r30 /* 80013AC8 00010A28 7F E4 FB 78 */ mr r4, r31 /* 80013ACC 00010A2C 48 10 6A 1D */ bl Render__13CPhysicsActorCFRC13CStateManager /* 80013AD0 00010A30 7F C3 F3 78 */ mr r3, r30 /* 80013AD4 00010A34 4B FF E2 05 */ bl HasTransitionBeamModel__7CPlayerCFv /* 80013AD8 00010A38 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80013ADC 00010A3C 41 82 00 AC */ beq lbl_80013B88 /* 80013AE0 00010A40 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 80013AE4 00010A44 7F E4 FB 78 */ mr r4, r31 /* 80013AE8 00010A48 38 A0 00 00 */ li r5, 0 /* 80013AEC 00010A4C 48 10 22 25 */ bl Touch__10CModelDataCFRC13CStateManageri /* 80013AF0 00010A50 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013AF4 00010A54 38 80 00 00 */ li r4, 0 /* 80013AF8 00010A58 38 00 00 03 */ li r0, 3 /* 80013AFC 00010A5C 98 81 00 78 */ stb r4, 0x78(r1) /* 80013B00 00010A60 FC 40 08 90 */ fmr f2, f1 /* 80013B04 00010A64 38 61 00 7C */ addi r3, r1, 0x7c /* 80013B08 00010A68 FC 60 08 90 */ fmr f3, f1 /* 80013B0C 00010A6C 98 81 00 79 */ stb r4, 0x79(r1) /* 80013B10 00010A70 FC 80 08 90 */ fmr f4, f1 /* 80013B14 00010A74 B0 01 00 7A */ sth r0, 0x7a(r1) /* 80013B18 00010A78 48 34 F8 D5 */ bl __ct__6CColorFffff /* 80013B1C 00010A7C 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 80013B20 00010A80 7F E4 FB 78 */ mr r4, r31 /* 80013B24 00010A84 80 DE 00 90 */ lwz r6, 0x90(r30) /* 80013B28 00010A88 38 BE 07 F4 */ addi r5, r30, 0x7f4 /* 80013B2C 00010A8C 38 E1 00 78 */ addi r7, r1, 0x78 /* 80013B30 00010A90 48 10 12 8D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 80013B34 00010A94 48 00 00 54 */ b lbl_80013B88 lbl_80013B38: /* 80013B38 00010A98 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80013B3C 00010A9C 7F E4 FB 78 */ mr r4, r31 /* 80013B40 00010AA0 48 0D B4 7D */ bl TouchModel__10CMorphBallCFRC13CStateManager /* 80013B44 00010AA4 3A A0 00 01 */ li r21, 1 /* 80013B48 00010AA8 3A E0 00 01 */ li r23, 1 /* 80013B4C 00010AAC 48 00 00 3C */ b lbl_80013B88 lbl_80013B50: /* 80013B50 00010AB0 80 7E 04 90 */ lwz r3, 0x490(r30) /* 80013B54 00010AB4 7F E4 FB 78 */ mr r4, r31 /* 80013B58 00010AB8 48 02 E8 25 */ bl TouchModel__10CPlayerGunCFRC13CStateManager /* 80013B5C 00010ABC 3A A0 00 01 */ li r21, 1 /* 80013B60 00010AC0 3A E0 00 01 */ li r23, 1 /* 80013B64 00010AC4 48 00 00 24 */ b lbl_80013B88 lbl_80013B68: /* 80013B68 00010AC8 80 7E 00 64 */ lwz r3, 0x64(r30) /* 80013B6C 00010ACC 7F E4 FB 78 */ mr r4, r31 /* 80013B70 00010AD0 38 A0 00 00 */ li r5, 0 /* 80013B74 00010AD4 48 10 21 9D */ bl Touch__10CModelDataCFRC13CStateManageri /* 80013B78 00010AD8 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80013B7C 00010ADC 7F E4 FB 78 */ mr r4, r31 /* 80013B80 00010AE0 80 BE 00 90 */ lwz r5, 0x90(r30) /* 80013B84 00010AE4 48 0D E6 F5 */ bl Render__10CMorphBallCFRC13CStateManagerPC12CActorLights_0 lbl_80013B88: /* 80013B88 00010AE8 56 A0 06 3F */ clrlwi. r0, r21, 0x18 /* 80013B8C 00010AEC 41 82 05 10 */ beq lbl_8001409C /* 80013B90 00010AF0 7F C3 F3 78 */ mr r3, r30 /* 80013B94 00010AF4 7F E4 FB 78 */ mr r4, r31 /* 80013B98 00010AF8 48 10 69 51 */ bl Render__13CPhysicsActorCFRC13CStateManager /* 80013B9C 00010AFC 7F C3 F3 78 */ mr r3, r30 /* 80013BA0 00010B00 4B FF E1 39 */ bl HasTransitionBeamModel__7CPlayerCFv /* 80013BA4 00010B04 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80013BA8 00010B08 41 82 00 74 */ beq lbl_80013C1C /* 80013BAC 00010B0C C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013BB0 00010B10 38 A0 00 05 */ li r5, 5 /* 80013BB4 00010B14 38 80 00 00 */ li r4, 0 /* 80013BB8 00010B18 38 00 00 03 */ li r0, 3 /* 80013BBC 00010B1C FC 40 08 90 */ fmr f2, f1 /* 80013BC0 00010B20 C0 9E 05 88 */ lfs f4, 0x588(r30) /* 80013BC4 00010B24 FC 60 08 90 */ fmr f3, f1 /* 80013BC8 00010B28 98 A1 00 68 */ stb r5, 0x68(r1) /* 80013BCC 00010B2C 38 61 00 6C */ addi r3, r1, 0x6c /* 80013BD0 00010B30 98 81 00 69 */ stb r4, 0x69(r1) /* 80013BD4 00010B34 B0 01 00 6A */ sth r0, 0x6a(r1) /* 80013BD8 00010B38 48 34 F8 15 */ bl __ct__6CColorFffff /* 80013BDC 00010B3C A0 01 00 6A */ lhz r0, 0x6a(r1) /* 80013BE0 00010B40 38 BE 07 F4 */ addi r5, r30, 0x7f4 /* 80013BE4 00010B44 88 61 00 68 */ lbz r3, 0x68(r1) /* 80013BE8 00010B48 38 E1 00 70 */ addi r7, r1, 0x70 /* 80013BEC 00010B4C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 80013BF0 00010B50 88 C1 00 69 */ lbz r6, 0x69(r1) /* 80013BF4 00010B54 60 08 00 03 */ ori r8, r0, 3 /* 80013BF8 00010B58 80 01 00 6C */ lwz r0, 0x6c(r1) /* 80013BFC 00010B5C 98 61 00 70 */ stb r3, 0x70(r1) /* 80013C00 00010B60 38 80 00 00 */ li r4, 0 /* 80013C04 00010B64 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 80013C08 00010B68 98 C1 00 71 */ stb r6, 0x71(r1) /* 80013C0C 00010B6C 80 DE 00 90 */ lwz r6, 0x90(r30) /* 80013C10 00010B70 B1 01 00 72 */ sth r8, 0x72(r1) /* 80013C14 00010B74 90 01 00 74 */ stw r0, 0x74(r1) /* 80013C18 00010B78 48 10 2C 5D */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_80013C1C: /* 80013C1C 00010B7C C0 5E 05 74 */ lfs f2, 0x574(r30) /* 80013C20 00010B80 C0 1E 05 78 */ lfs f0, 0x578(r30) /* 80013C24 00010B84 C0 22 81 90 */ lfs f1, lbl_805A9EB0@sda21(r2) /* 80013C28 00010B88 EC 42 00 24 */ fdivs f2, f2, f0 /* 80013C2C 00010B8C 80 7E 07 34 */ lwz r3, 0x734(r30) /* 80013C30 00010B90 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80013C34 00010B94 40 80 00 0C */ bge lbl_80013C40 /* 80013C38 00010B98 C3 82 81 0C */ lfs f28, lbl_805A9E2C@sda21(r2) /* 80013C3C 00010B9C 48 00 00 44 */ b lbl_80013C80 lbl_80013C40: /* 80013C40 00010BA0 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 80013C44 00010BA4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80013C48 00010BA8 40 80 00 10 */ bge lbl_80013C58 /* 80013C4C 00010BAC EC 02 08 28 */ fsubs f0, f2, f1 /* 80013C50 00010BB0 EF 80 08 24 */ fdivs f28, f0, f1 /* 80013C54 00010BB4 48 00 00 2C */ b lbl_80013C80 lbl_80013C58: /* 80013C58 00010BB8 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) /* 80013C5C 00010BBC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80013C60 00010BC0 40 80 00 0C */ bge lbl_80013C6C /* 80013C64 00010BC4 C3 82 81 00 */ lfs f28, lbl_805A9E20@sda21(r2) /* 80013C68 00010BC8 48 00 00 18 */ b lbl_80013C80 lbl_80013C6C: /* 80013C6C 00010BCC EC 22 00 28 */ fsubs f1, f2, f0 /* 80013C70 00010BD0 C0 02 81 98 */ lfs f0, lbl_805A9EB8@sda21(r2) /* 80013C74 00010BD4 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 80013C78 00010BD8 EC 01 00 24 */ fdivs f0, f1, f0 /* 80013C7C 00010BDC EF 82 00 28 */ fsubs f28, f2, f0 lbl_80013C80: /* 80013C80 00010BE0 38 03 00 01 */ addi r0, r3, 1 /* 80013C84 00010BE4 C3 A2 81 00 */ lfs f29, lbl_805A9E20@sda21(r2) /* 80013C88 00010BE8 CB C2 81 60 */ lfd f30, lbl_805A9E80@sda21(r2) /* 80013C8C 00010BEC 3B 21 00 54 */ addi r25, r1, 0x54 /* 80013C90 00010BF0 C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) /* 80013C94 00010BF4 3B 01 00 44 */ addi r24, r1, 0x44 /* 80013C98 00010BF8 6C 1D 80 00 */ xoris r29, r0, 0x8000 /* 80013C9C 00010BFC 3A C0 00 00 */ li r22, 0 /* 80013CA0 00010C00 3B 40 00 00 */ li r26, 0 /* 80013CA4 00010C04 3F 80 43 30 */ lis r28, 0x4330 /* 80013CA8 00010C08 48 00 01 A0 */ b lbl_80013E48 lbl_80013CAC: /* 80013CAC 00010C0C 3A B6 00 01 */ addi r21, r22, 1 /* 80013CB0 00010C10 38 61 00 60 */ addi r3, r1, 0x60 /* 80013CB4 00010C14 7E A5 AB 78 */ mr r5, r21 /* 80013CB8 00010C18 38 9E 07 1C */ addi r4, r30, 0x71c /* 80013CBC 00010C1C 48 00 04 7D */ bl "GetEntry__21TReservedAverageCFi" /* 80013CC0 00010C20 38 75 00 01 */ addi r3, r21, 1 /* 80013CC4 00010C24 38 00 00 00 */ li r0, 0 /* 80013CC8 00010C28 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 80013CCC 00010C2C 93 81 02 08 */ stw r28, 0x208(r1) /* 80013CD0 00010C30 C0 01 00 60 */ lfs f0, 0x60(r1) /* 80013CD4 00010C34 90 61 02 0C */ stw r3, 0x20c(r1) /* 80013CD8 00010C38 C8 21 02 08 */ lfd f1, 0x208(r1) /* 80013CDC 00010C3C 93 A1 02 14 */ stw r29, 0x214(r1) /* 80013CE0 00010C40 EC 41 F0 28 */ fsubs f2, f1, f30 /* 80013CE4 00010C44 93 81 02 10 */ stw r28, 0x210(r1) /* 80013CE8 00010C48 C8 21 02 10 */ lfd f1, 0x210(r1) /* 80013CEC 00010C4C 98 01 00 64 */ stb r0, 0x64(r1) /* 80013CF0 00010C50 EC 21 F0 28 */ fsubs f1, f1, f30 /* 80013CF4 00010C54 EC 22 08 24 */ fdivs f1, f2, f1 /* 80013CF8 00010C58 EC 3D 08 28 */ fsubs f1, f29, f1 /* 80013CFC 00010C5C EC 3C 00 72 */ fmuls f1, f28, f1 /* 80013D00 00010C60 EF 61 00 32 */ fmuls f27, f1, f0 /* 80013D04 00010C64 FC 1F D8 00 */ fcmpu cr0, f31, f27 /* 80013D08 00010C68 41 82 01 38 */ beq lbl_80013E40 /* 80013D0C 00010C6C 80 9E 07 3C */ lwz r4, 0x73c(r30) /* 80013D10 00010C70 38 1A 00 04 */ addi r0, r26, 4 /* 80013D14 00010C74 7E A5 AB 78 */ mr r5, r21 /* 80013D18 00010C78 38 61 01 D4 */ addi r3, r1, 0x1d4 /* 80013D1C 00010C7C 7F 64 00 2E */ lwzx r27, r4, r0 /* 80013D20 00010C80 38 9E 06 58 */ addi r4, r30, 0x658 /* 80013D24 00010C84 48 00 03 B5 */ bl "GetEntry__34TReservedAverage<12CTransform4f,4>CFi" /* 80013D28 00010C88 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013D2C 00010C8C 38 60 00 05 */ li r3, 5 /* 80013D30 00010C90 38 80 00 00 */ li r4, 0 /* 80013D34 00010C94 38 00 00 03 */ li r0, 3 /* 80013D38 00010C98 FC 40 08 90 */ fmr f2, f1 /* 80013D3C 00010C9C 98 61 00 50 */ stb r3, 0x50(r1) /* 80013D40 00010CA0 FC 60 08 90 */ fmr f3, f1 /* 80013D44 00010CA4 7F 23 CB 78 */ mr r3, r25 /* 80013D48 00010CA8 FC 80 D8 90 */ fmr f4, f27 /* 80013D4C 00010CAC 98 81 00 51 */ stb r4, 0x51(r1) /* 80013D50 00010CB0 B0 01 00 52 */ sth r0, 0x52(r1) /* 80013D54 00010CB4 48 34 F6 99 */ bl __ct__6CColorFffff /* 80013D58 00010CB8 A0 01 00 52 */ lhz r0, 0x52(r1) /* 80013D5C 00010CBC 7F E3 FB 78 */ mr r3, r31 /* 80013D60 00010CC0 88 C1 00 50 */ lbz r6, 0x50(r1) /* 80013D64 00010CC4 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 80013D68 00010CC8 88 A1 00 51 */ lbz r5, 0x51(r1) /* 80013D6C 00010CCC 60 04 00 01 */ ori r4, r0, 1 /* 80013D70 00010CD0 80 01 00 54 */ lwz r0, 0x54(r1) /* 80013D74 00010CD4 98 C1 00 58 */ stb r6, 0x58(r1) /* 80013D78 00010CD8 98 A1 00 59 */ stb r5, 0x59(r1) /* 80013D7C 00010CDC B0 81 00 5A */ sth r4, 0x5a(r1) /* 80013D80 00010CE0 90 01 00 5C */ stw r0, 0x5c(r1) /* 80013D84 00010CE4 48 10 11 59 */ bl GetRenderingModel__10CModelDataFRC13CStateManager /* 80013D88 00010CE8 80 DE 00 90 */ lwz r6, 0x90(r30) /* 80013D8C 00010CEC 7C 64 1B 78 */ mr r4, r3 /* 80013D90 00010CF0 7F 63 DB 78 */ mr r3, r27 /* 80013D94 00010CF4 38 A1 01 D4 */ addi r5, r1, 0x1d4 /* 80013D98 00010CF8 38 E1 00 58 */ addi r7, r1, 0x58 /* 80013D9C 00010CFC 48 10 2A D9 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 80013DA0 00010D00 38 00 00 00 */ li r0, 0 /* 80013DA4 00010D04 7F C3 F3 78 */ mr r3, r30 /* 80013DA8 00010D08 98 01 02 04 */ stb r0, 0x204(r1) /* 80013DAC 00010D0C 4B FF DF 2D */ bl HasTransitionBeamModel__7CPlayerCFv /* 80013DB0 00010D10 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80013DB4 00010D14 41 82 00 8C */ beq lbl_80013E40 /* 80013DB8 00010D18 7E A5 AB 78 */ mr r5, r21 /* 80013DBC 00010D1C 38 61 01 A0 */ addi r3, r1, 0x1a0 /* 80013DC0 00010D20 38 9E 05 94 */ addi r4, r30, 0x594 /* 80013DC4 00010D24 48 00 03 15 */ bl "GetEntry__34TReservedAverage<12CTransform4f,4>CFi" /* 80013DC8 00010D28 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013DCC 00010D2C 38 60 00 05 */ li r3, 5 /* 80013DD0 00010D30 38 80 00 00 */ li r4, 0 /* 80013DD4 00010D34 38 00 00 03 */ li r0, 3 /* 80013DD8 00010D38 FC 40 08 90 */ fmr f2, f1 /* 80013DDC 00010D3C 98 61 00 40 */ stb r3, 0x40(r1) /* 80013DE0 00010D40 FC 60 08 90 */ fmr f3, f1 /* 80013DE4 00010D44 7F 03 C3 78 */ mr r3, r24 /* 80013DE8 00010D48 FC 80 D8 90 */ fmr f4, f27 /* 80013DEC 00010D4C 98 81 00 41 */ stb r4, 0x41(r1) /* 80013DF0 00010D50 B0 01 00 42 */ sth r0, 0x42(r1) /* 80013DF4 00010D54 48 34 F5 F9 */ bl __ct__6CColorFffff /* 80013DF8 00010D58 A0 01 00 42 */ lhz r0, 0x42(r1) /* 80013DFC 00010D5C 38 A1 01 A0 */ addi r5, r1, 0x1a0 /* 80013E00 00010D60 88 61 00 40 */ lbz r3, 0x40(r1) /* 80013E04 00010D64 38 E1 00 48 */ addi r7, r1, 0x48 /* 80013E08 00010D68 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 80013E0C 00010D6C 88 C1 00 41 */ lbz r6, 0x41(r1) /* 80013E10 00010D70 60 08 00 01 */ ori r8, r0, 1 /* 80013E14 00010D74 80 01 00 44 */ lwz r0, 0x44(r1) /* 80013E18 00010D78 98 61 00 48 */ stb r3, 0x48(r1) /* 80013E1C 00010D7C 38 80 00 00 */ li r4, 0 /* 80013E20 00010D80 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 80013E24 00010D84 98 C1 00 49 */ stb r6, 0x49(r1) /* 80013E28 00010D88 80 DE 00 90 */ lwz r6, 0x90(r30) /* 80013E2C 00010D8C B1 01 00 4A */ sth r8, 0x4a(r1) /* 80013E30 00010D90 90 01 00 4C */ stw r0, 0x4c(r1) /* 80013E34 00010D94 48 10 2A 41 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 80013E38 00010D98 38 00 00 00 */ li r0, 0 /* 80013E3C 00010D9C 98 01 01 D0 */ stb r0, 0x1d0(r1) lbl_80013E40: /* 80013E40 00010DA0 3B 5A 00 08 */ addi r26, r26, 8 /* 80013E44 00010DA4 3A D6 00 01 */ addi r22, r22, 1 lbl_80013E48: /* 80013E48 00010DA8 80 1E 07 34 */ lwz r0, 0x734(r30) /* 80013E4C 00010DAC 7C 16 00 00 */ cmpw r22, r0 /* 80013E50 00010DB0 41 80 FE 5C */ blt lbl_80013CAC /* 80013E54 00010DB4 56 E0 06 3F */ clrlwi. r0, r23, 0x18 /* 80013E58 00010DB8 41 82 02 44 */ beq lbl_8001409C /* 80013E5C 00010DBC C0 3E 05 74 */ lfs f1, 0x574(r30) /* 80013E60 00010DC0 C0 1E 05 78 */ lfs f0, 0x578(r30) /* 80013E64 00010DC4 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80013E68 00010DC8 EF 61 00 24 */ fdivs f27, f1, f0 /* 80013E6C 00010DCC C0 22 81 4C */ lfs f1, lbl_805A9E6C@sda21(r2) /* 80013E70 00010DD0 2C 00 00 03 */ cmpwi r0, 3 /* 80013E74 00010DD4 C0 82 81 74 */ lfs f4, lbl_805A9E94@sda21(r2) /* 80013E78 00010DD8 40 82 00 14 */ bne lbl_80013E8C /* 80013E7C 00010DDC C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80013E80 00010DE0 C0 22 81 9C */ lfs f1, lbl_805A9EBC@sda21(r2) /* 80013E84 00010DE4 EF 60 D8 28 */ fsubs f27, f0, f27 /* 80013E88 00010DE8 C0 82 81 A0 */ lfs f4, lbl_805A9EC0@sda21(r2) lbl_80013E8C: /* 80013E8C 00010DEC FC 1B 08 40 */ fcmpo cr0, f27, f1 /* 80013E90 00010DF0 40 81 00 80 */ ble lbl_80013F10 /* 80013E94 00010DF4 EC 1B 08 28 */ fsubs f0, f27, f1 /* 80013E98 00010DF8 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013E9C 00010DFC 80 9E 07 68 */ lwz r4, 0x768(r30) /* 80013EA0 00010E00 38 61 00 08 */ addi r3, r1, 8 /* 80013EA4 00010E04 FC 40 08 90 */ fmr f2, f1 /* 80013EA8 00010E08 FC 60 08 90 */ fmr f3, f1 /* 80013EAC 00010E0C EC 84 00 32 */ fmuls f4, f4, f0 /* 80013EB0 00010E10 82 A4 00 5C */ lwz r21, 0x5c(r4) /* 80013EB4 00010E14 48 34 F5 39 */ bl __ct__6CColorFffff /* 80013EB8 00010E18 80 01 00 08 */ lwz r0, 8(r1) /* 80013EBC 00010E1C 38 E0 00 05 */ li r7, 5 /* 80013EC0 00010E20 38 A0 00 03 */ li r5, 3 /* 80013EC4 00010E24 38 C0 00 00 */ li r6, 0 /* 80013EC8 00010E28 80 9E 07 68 */ lwz r4, 0x768(r30) /* 80013ECC 00010E2C 38 61 01 70 */ addi r3, r1, 0x170 /* 80013ED0 00010E30 98 E1 00 38 */ stb r7, 0x38(r1) /* 80013ED4 00010E34 9A A1 00 39 */ stb r21, 0x39(r1) /* 80013ED8 00010E38 B0 A1 00 3A */ sth r5, 0x3a(r1) /* 80013EDC 00010E3C 90 01 00 3C */ stw r0, 0x3c(r1) /* 80013EE0 00010E40 98 E1 00 30 */ stb r7, 0x30(r1) /* 80013EE4 00010E44 82 A4 00 58 */ lwz r21, 0x58(r4) /* 80013EE8 00010E48 98 C1 00 31 */ stb r6, 0x31(r1) /* 80013EEC 00010E4C B0 A1 00 32 */ sth r5, 0x32(r1) /* 80013EF0 00010E50 90 01 00 34 */ stw r0, 0x34(r1) /* 80013EF4 00010E54 48 0E 28 01 */ bl GetBallToWorld__10CMorphBallCFv /* 80013EF8 00010E58 80 DE 00 90 */ lwz r6, 0x90(r30) /* 80013EFC 00010E5C 7E A3 AB 78 */ mr r3, r21 /* 80013F00 00010E60 7F E4 FB 78 */ mr r4, r31 /* 80013F04 00010E64 38 A1 01 70 */ addi r5, r1, 0x170 /* 80013F08 00010E68 38 E1 00 38 */ addi r7, r1, 0x38 /* 80013F0C 00010E6C 48 10 0E B1 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_80013F10: /* 80013F10 00010E70 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80013F14 00010E74 2C 00 00 02 */ cmpwi r0, 2 /* 80013F18 00010E78 40 82 01 84 */ bne lbl_8001409C /* 80013F1C 00010E7C C0 82 81 68 */ lfs f4, lbl_805A9E88@sda21(r2) /* 80013F20 00010E80 FC 1B 20 40 */ fcmpo cr0, f27, f4 /* 80013F24 00010E84 40 81 01 6C */ ble lbl_80014090 /* 80013F28 00010E88 EC 7B 20 28 */ fsubs f3, f27, f4 /* 80013F2C 00010E8C C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 80013F30 00010E90 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) /* 80013F34 00010E94 C0 22 81 40 */ lfs f1, lbl_805A9E60@sda21(r2) /* 80013F38 00010E98 EC 63 20 24 */ fdivs f3, f3, f4 /* 80013F3C 00010E9C EC A2 18 28 */ fsubs f5, f2, f3 /* 80013F40 00010EA0 FC 03 08 40 */ fcmpo cr0, f3, f1 /* 80013F44 00010EA4 EF E0 11 7A */ fmadds f31, f0, f5, f2 /* 80013F48 00010EA8 40 80 00 0C */ bge lbl_80013F54 /* 80013F4C 00010EAC C0 82 81 0C */ lfs f4, lbl_805A9E2C@sda21(r2) /* 80013F50 00010EB0 48 00 00 40 */ b lbl_80013F90 lbl_80013F54: /* 80013F54 00010EB4 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) /* 80013F58 00010EB8 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80013F5C 00010EBC 40 80 00 10 */ bge lbl_80013F6C /* 80013F60 00010EC0 EC 03 08 28 */ fsubs f0, f3, f1 /* 80013F64 00010EC4 EC 80 08 24 */ fdivs f4, f0, f1 /* 80013F68 00010EC8 48 00 00 28 */ b lbl_80013F90 lbl_80013F6C: /* 80013F6C 00010ECC C0 02 81 A4 */ lfs f0, lbl_805A9EC4@sda21(r2) /* 80013F70 00010ED0 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80013F74 00010ED4 40 80 00 0C */ bge lbl_80013F80 /* 80013F78 00010ED8 FC 80 10 90 */ fmr f4, f2 /* 80013F7C 00010EDC 48 00 00 14 */ b lbl_80013F90 lbl_80013F80: /* 80013F80 00010EE0 EC 3B 00 28 */ fsubs f1, f27, f0 /* 80013F84 00010EE4 C0 02 81 A8 */ lfs f0, lbl_805A9EC8@sda21(r2) /* 80013F88 00010EE8 EC 01 00 24 */ fdivs f0, f1, f0 /* 80013F8C 00010EEC EC 82 00 28 */ fsubs f4, f2, f0 lbl_80013F90: /* 80013F90 00010EF0 C0 02 81 B0 */ lfs f0, lbl_805A9ED0@sda21(r2) /* 80013F94 00010EF4 C0 62 81 68 */ lfs f3, lbl_805A9E88@sda21(r2) /* 80013F98 00010EF8 EC 20 01 72 */ fmuls f1, f0, f5 /* 80013F9C 00010EFC C0 42 81 AC */ lfs f2, lbl_805A9ECC@sda21(r2) /* 80013FA0 00010F00 EC 84 00 F2 */ fmuls f4, f4, f3 /* 80013FA4 00010F04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80013FA8 00010F08 EC 22 00 72 */ fmuls f1, f2, f1 /* 80013FAC 00010F0C FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80013FB0 00010F10 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80013FB4 00010F14 40 81 00 DC */ ble lbl_80014090 /* 80013FB8 00010F18 80 9E 07 68 */ lwz r4, 0x768(r30) /* 80013FBC 00010F1C 38 A0 00 07 */ li r5, 7 /* 80013FC0 00010F20 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80013FC4 00010F24 38 00 00 03 */ li r0, 3 /* 80013FC8 00010F28 82 A4 00 5C */ lwz r21, 0x5c(r4) /* 80013FCC 00010F2C 38 80 00 00 */ li r4, 0 /* 80013FD0 00010F30 FC 40 08 90 */ fmr f2, f1 /* 80013FD4 00010F34 38 61 00 1C */ addi r3, r1, 0x1c /* 80013FD8 00010F38 FC 60 08 90 */ fmr f3, f1 /* 80013FDC 00010F3C 98 A1 00 18 */ stb r5, 0x18(r1) /* 80013FE0 00010F40 98 81 00 19 */ stb r4, 0x19(r1) /* 80013FE4 00010F44 B0 01 00 1A */ sth r0, 0x1a(r1) /* 80013FE8 00010F48 48 34 F4 05 */ bl __ct__6CColorFffff /* 80013FEC 00010F4C A0 61 00 1A */ lhz r3, 0x1a(r1) /* 80013FF0 00010F50 FC 20 F8 90 */ fmr f1, f31 /* 80013FF4 00010F54 88 C1 00 18 */ lbz r6, 0x18(r1) /* 80013FF8 00010F58 FC 40 F8 90 */ fmr f2, f31 /* 80013FFC 00010F5C 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80014000 00010F60 54 63 00 3A */ rlwinm r3, r3, 0, 0, 0x1d /* 80014004 00010F64 60 64 00 01 */ ori r4, r3, 1 /* 80014008 00010F68 88 A1 00 19 */ lbz r5, 0x19(r1) /* 8001400C 00010F6C FC 60 F8 90 */ fmr f3, f31 /* 80014010 00010F70 82 DE 07 68 */ lwz r22, 0x768(r30) /* 80014014 00010F74 38 61 00 80 */ addi r3, r1, 0x80 /* 80014018 00010F78 98 C1 00 28 */ stb r6, 0x28(r1) /* 8001401C 00010F7C 9A A1 00 29 */ stb r21, 0x29(r1) /* 80014020 00010F80 B0 81 00 2A */ sth r4, 0x2a(r1) /* 80014024 00010F84 90 01 00 2C */ stw r0, 0x2c(r1) /* 80014028 00010F88 98 C1 00 20 */ stb r6, 0x20(r1) /* 8001402C 00010F8C 82 B6 00 58 */ lwz r21, 0x58(r22) /* 80014030 00010F90 98 A1 00 21 */ stb r5, 0x21(r1) /* 80014034 00010F94 B0 81 00 22 */ sth r4, 0x22(r1) /* 80014038 00010F98 90 01 00 24 */ stw r0, 0x24(r1) /* 8001403C 00010F9C 48 2F F1 CD */ bl Scale__12CTransform4fFfff /* 80014040 00010FA0 38 61 00 B0 */ addi r3, r1, 0xb0 /* 80014044 00010FA4 38 81 00 0C */ addi r4, r1, 0xc /* 80014048 00010FA8 48 2F F7 C9 */ bl RotateZ__12CTransform4fFRC9CRelAngle /* 8001404C 00010FAC 7E C4 B3 78 */ mr r4, r22 /* 80014050 00010FB0 38 61 00 E0 */ addi r3, r1, 0xe0 /* 80014054 00010FB4 48 0E 26 A1 */ bl GetBallToWorld__10CMorphBallCFv /* 80014058 00010FB8 38 61 01 10 */ addi r3, r1, 0x110 /* 8001405C 00010FBC 38 81 00 E0 */ addi r4, r1, 0xe0 /* 80014060 00010FC0 38 A1 00 B0 */ addi r5, r1, 0xb0 /* 80014064 00010FC4 48 2F E8 ED */ bl __ml__12CTransform4fCFRC12CTransform4f /* 80014068 00010FC8 38 61 01 40 */ addi r3, r1, 0x140 /* 8001406C 00010FCC 38 81 01 10 */ addi r4, r1, 0x110 /* 80014070 00010FD0 38 A1 00 80 */ addi r5, r1, 0x80 /* 80014074 00010FD4 48 2F E8 DD */ bl __ml__12CTransform4fCFRC12CTransform4f /* 80014078 00010FD8 80 DE 00 90 */ lwz r6, 0x90(r30) /* 8001407C 00010FDC 7E A3 AB 78 */ mr r3, r21 /* 80014080 00010FE0 7F E4 FB 78 */ mr r4, r31 /* 80014084 00010FE4 38 A1 01 40 */ addi r5, r1, 0x140 /* 80014088 00010FE8 38 E1 00 28 */ addi r7, r1, 0x28 /* 8001408C 00010FEC 48 10 0D 31 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_80014090: /* 80014090 00010FF0 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80014094 00010FF4 7F E4 FB 78 */ mr r4, r31 /* 80014098 00010FF8 48 0D DF 29 */ bl RenderMorphBallTransitionFlash__10CMorphBallCFRC13CStateManager lbl_8001409C: /* 8001409C 00010FFC E3 E1 02 98 */ psq_l f31, 664(r1), 0, qr0 /* 800140A0 00011000 CB E1 02 90 */ lfd f31, 0x290(r1) /* 800140A4 00011004 E3 C1 02 88 */ psq_l f30, 648(r1), 0, qr0 /* 800140A8 00011008 CB C1 02 80 */ lfd f30, 0x280(r1) /* 800140AC 0001100C E3 A1 02 78 */ psq_l f29, 632(r1), 0, qr0 /* 800140B0 00011010 CB A1 02 70 */ lfd f29, 0x270(r1) /* 800140B4 00011014 E3 81 02 68 */ psq_l f28, 616(r1), 0, qr0 /* 800140B8 00011018 CB 81 02 60 */ lfd f28, 0x260(r1) /* 800140BC 0001101C E3 61 02 58 */ psq_l f27, 600(r1), 0, qr0 /* 800140C0 00011020 CB 61 02 50 */ lfd f27, 0x250(r1) /* 800140C4 00011024 BA A1 02 24 */ lmw r21, 0x224(r1) /* 800140C8 00011028 80 01 02 A4 */ lwz r0, 0x2a4(r1) /* 800140CC 0001102C 7C 08 03 A6 */ mtlr r0 /* 800140D0 00011030 38 21 02 A0 */ addi r1, r1, 0x2a0 /* 800140D4 00011034 4E 80 00 20 */ blr .global "GetEntry__34TReservedAverage<12CTransform4f,4>CFi" "GetEntry__34TReservedAverage<12CTransform4f,4>CFi": /* 800140D8 00011038 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800140DC 0001103C 7C 08 02 A6 */ mflr r0 /* 800140E0 00011040 90 01 00 14 */ stw r0, 0x14(r1) /* 800140E4 00011044 93 E1 00 0C */ stw r31, 0xc(r1) /* 800140E8 00011048 7C 7F 1B 78 */ mr r31, r3 /* 800140EC 0001104C 80 04 00 00 */ lwz r0, 0(r4) /* 800140F0 00011050 7C 05 00 00 */ cmpw r5, r0 /* 800140F4 00011054 41 80 00 10 */ blt lbl_80014104 /* 800140F8 00011058 38 00 00 00 */ li r0, 0 /* 800140FC 0001105C 98 1F 00 30 */ stb r0, 0x30(r31) /* 80014100 00011060 48 00 00 24 */ b lbl_80014124 lbl_80014104: /* 80014104 00011064 1C A5 00 30 */ mulli r5, r5, 0x30 /* 80014108 00011068 38 00 00 01 */ li r0, 1 /* 8001410C 0001106C 28 1F 00 00 */ cmplwi r31, 0 /* 80014110 00011070 98 1F 00 30 */ stb r0, 0x30(r31) /* 80014114 00011074 7C 84 2A 14 */ add r4, r4, r5 /* 80014118 00011078 38 84 00 04 */ addi r4, r4, 4 /* 8001411C 0001107C 41 82 00 08 */ beq lbl_80014124 /* 80014120 00011080 48 2F EA 55 */ bl __ct__12CTransform4fFRC12CTransform4f lbl_80014124: /* 80014124 00011084 80 01 00 14 */ lwz r0, 0x14(r1) /* 80014128 00011088 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8001412C 0001108C 7C 08 03 A6 */ mtlr r0 /* 80014130 00011090 38 21 00 10 */ addi r1, r1, 0x10 /* 80014134 00011094 4E 80 00 20 */ blr .global "GetEntry__21TReservedAverageCFi" "GetEntry__21TReservedAverageCFi": /* 80014138 00011098 80 04 00 00 */ lwz r0, 0(r4) /* 8001413C 0001109C 7C 05 00 00 */ cmpw r5, r0 /* 80014140 000110A0 41 80 00 10 */ blt lbl_80014150 /* 80014144 000110A4 38 00 00 00 */ li r0, 0 /* 80014148 000110A8 98 03 00 04 */ stb r0, 4(r3) /* 8001414C 000110AC 4E 80 00 20 */ blr lbl_80014150: /* 80014150 000110B0 38 00 00 01 */ li r0, 1 /* 80014154 000110B4 28 03 00 00 */ cmplwi r3, 0 /* 80014158 000110B8 54 A5 10 3A */ slwi r5, r5, 2 /* 8001415C 000110BC 98 03 00 04 */ stb r0, 4(r3) /* 80014160 000110C0 7C 84 2A 14 */ add r4, r4, r5 /* 80014164 000110C4 4D 82 00 20 */ beqlr /* 80014168 000110C8 C0 04 00 04 */ lfs f0, 4(r4) /* 8001416C 000110CC D0 03 00 00 */ stfs f0, 0(r3) /* 80014170 000110D0 4E 80 00 20 */ blr .global RenderReflectedPlayer__7CPlayerFR13CStateManager RenderReflectedPlayer__7CPlayerFR13CStateManager: /* 80014174 000110D4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80014178 000110D8 7C 08 02 A6 */ mflr r0 /* 8001417C 000110DC 90 01 00 84 */ stw r0, 0x84(r1) /* 80014180 000110E0 38 00 00 00 */ li r0, 0 /* 80014184 000110E4 93 E1 00 7C */ stw r31, 0x7c(r1) /* 80014188 000110E8 7C 9F 23 78 */ mr r31, r4 /* 8001418C 000110EC 93 C1 00 78 */ stw r30, 0x78(r1) /* 80014190 000110F0 7C 7E 1B 78 */ mr r30, r3 /* 80014194 000110F4 90 01 00 10 */ stw r0, 0x10(r1) /* 80014198 000110F8 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 8001419C 000110FC 2C 00 00 01 */ cmpwi r0, 1 /* 800141A0 00011100 41 82 00 A8 */ beq lbl_80014248 /* 800141A4 00011104 40 80 00 10 */ bge lbl_800141B4 /* 800141A8 00011108 2C 00 00 00 */ cmpwi r0, 0 /* 800141AC 0001110C 40 80 00 10 */ bge lbl_800141BC /* 800141B0 00011110 48 00 00 A4 */ b lbl_80014254 lbl_800141B4: /* 800141B4 00011114 2C 00 00 04 */ cmpwi r0, 4 /* 800141B8 00011118 40 80 00 9C */ bge lbl_80014254 lbl_800141BC: /* 800141BC 0001111C 7F C3 F3 78 */ mr r3, r30 /* 800141C0 00011120 38 80 00 01 */ li r4, 1 /* 800141C4 00011124 48 03 F7 5D */ bl SetCalculateLighting__6CActorFb /* 800141C8 00011128 80 1E 02 F4 */ lwz r0, 0x2f4(r30) /* 800141CC 0001112C 2C 00 00 00 */ cmpwi r0, 0 /* 800141D0 00011130 40 82 00 14 */ bne lbl_800141E4 /* 800141D4 00011134 7F C3 F3 78 */ mr r3, r30 /* 800141D8 00011138 7F E4 FB 78 */ mr r4, r31 /* 800141DC 0001113C 38 A1 00 10 */ addi r5, r1, 0x10 /* 800141E0 00011140 48 04 0B 01 */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes lbl_800141E4: /* 800141E4 00011144 7F C3 F3 78 */ mr r3, r30 /* 800141E8 00011148 7F E4 FB 78 */ mr r4, r31 /* 800141EC 0001114C 48 10 62 FD */ bl Render__13CPhysicsActorCFRC13CStateManager /* 800141F0 00011150 7F C3 F3 78 */ mr r3, r30 /* 800141F4 00011154 4B FF DA E5 */ bl HasTransitionBeamModel__7CPlayerCFv /* 800141F8 00011158 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800141FC 0001115C 41 82 00 58 */ beq lbl_80014254 /* 80014200 00011160 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80014204 00011164 38 80 00 00 */ li r4, 0 /* 80014208 00011168 38 00 00 03 */ li r0, 3 /* 8001420C 0001116C 98 81 00 08 */ stb r4, 8(r1) /* 80014210 00011170 FC 40 08 90 */ fmr f2, f1 /* 80014214 00011174 38 61 00 0C */ addi r3, r1, 0xc /* 80014218 00011178 FC 60 08 90 */ fmr f3, f1 /* 8001421C 0001117C 98 81 00 09 */ stb r4, 9(r1) /* 80014220 00011180 FC 80 08 90 */ fmr f4, f1 /* 80014224 00011184 B0 01 00 0A */ sth r0, 0xa(r1) /* 80014228 00011188 48 34 F1 C5 */ bl __ct__6CColorFffff /* 8001422C 0001118C 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 80014230 00011190 7F E4 FB 78 */ mr r4, r31 /* 80014234 00011194 38 BE 07 F4 */ addi r5, r30, 0x7f4 /* 80014238 00011198 38 E1 00 08 */ addi r7, r1, 8 /* 8001423C 0001119C 38 C0 00 00 */ li r6, 0 /* 80014240 000111A0 48 10 0B 7D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 80014244 000111A4 48 00 00 10 */ b lbl_80014254 lbl_80014248: /* 80014248 000111A8 80 7E 07 68 */ lwz r3, 0x768(r30) /* 8001424C 000111AC 80 BE 00 90 */ lwz r5, 0x90(r30) /* 80014250 000111B0 48 0D E0 29 */ bl Render__10CMorphBallCFRC13CStateManagerPC12CActorLights_0 lbl_80014254: /* 80014254 000111B4 80 A1 00 10 */ lwz r5, 0x10(r1) /* 80014258 000111B8 38 60 00 00 */ li r3, 0 /* 8001425C 000111BC 2C 05 00 00 */ cmpwi r5, 0 /* 80014260 000111C0 40 81 00 40 */ ble lbl_800142A0 /* 80014264 000111C4 2C 05 00 08 */ cmpwi r5, 8 /* 80014268 000111C8 38 85 FF F8 */ addi r4, r5, -8 /* 8001426C 000111CC 40 81 00 20 */ ble lbl_8001428C /* 80014270 000111D0 38 04 00 07 */ addi r0, r4, 7 /* 80014274 000111D4 54 00 E8 FE */ srwi r0, r0, 3 /* 80014278 000111D8 7C 09 03 A6 */ mtctr r0 /* 8001427C 000111DC 2C 04 00 00 */ cmpwi r4, 0 /* 80014280 000111E0 40 81 00 0C */ ble lbl_8001428C lbl_80014284: /* 80014284 000111E4 38 63 00 08 */ addi r3, r3, 8 /* 80014288 000111E8 42 00 FF FC */ bdnz lbl_80014284 lbl_8001428C: /* 8001428C 000111EC 7C 03 28 50 */ subf r0, r3, r5 /* 80014290 000111F0 7C 09 03 A6 */ mtctr r0 /* 80014294 000111F4 7C 03 28 00 */ cmpw r3, r5 /* 80014298 000111F8 40 80 00 08 */ bge lbl_800142A0 lbl_8001429C: /* 8001429C 000111FC 42 00 00 00 */ bdnz lbl_8001429C lbl_800142A0: /* 800142A0 00011200 38 00 00 00 */ li r0, 0 /* 800142A4 00011204 90 01 00 10 */ stw r0, 0x10(r1) /* 800142A8 00011208 80 01 00 84 */ lwz r0, 0x84(r1) /* 800142AC 0001120C 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 800142B0 00011210 83 C1 00 78 */ lwz r30, 0x78(r1) /* 800142B4 00011214 7C 08 03 A6 */ mtlr r0 /* 800142B8 00011218 38 21 00 80 */ addi r1, r1, 0x80 /* 800142BC 0001121C 4E 80 00 20 */ blr .global PreRender__7CPlayerFR13CStateManagerRC14CFrustumPlanes PreRender__7CPlayerFR13CStateManagerRC14CFrustumPlanes: /* 800142C0 00011220 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800142C4 00011224 7C 08 02 A6 */ mflr r0 /* 800142C8 00011228 90 01 00 34 */ stw r0, 0x34(r1) /* 800142CC 0001122C BF 61 00 1C */ stmw r27, 0x1c(r1) /* 800142D0 00011230 7C 7B 1B 78 */ mr r27, r3 /* 800142D4 00011234 7C 9C 23 78 */ mr r28, r4 /* 800142D8 00011238 7C BD 2B 78 */ mr r29, r5 /* 800142DC 0001123C 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 800142E0 00011240 2C 00 00 01 */ cmpwi r0, 1 /* 800142E4 00011244 40 82 00 20 */ bne lbl_80014304 /* 800142E8 00011248 38 80 00 00 */ li r4, 0 /* 800142EC 0001124C 48 03 F6 35 */ bl SetCalculateLighting__6CActorFb /* 800142F0 00011250 80 7B 07 68 */ lwz r3, 0x768(r27) /* 800142F4 00011254 7F 84 E3 78 */ mr r4, r28 /* 800142F8 00011258 7F A5 EB 78 */ mr r5, r29 /* 800142FC 0001125C 48 0D EB 8D */ bl PreRender__10CMorphBallFR13CStateManagerRC14CFrustumPlanes /* 80014300 00011260 48 00 00 40 */ b lbl_80014340 lbl_80014304: /* 80014304 00011264 38 80 00 01 */ li r4, 1 /* 80014308 00011268 48 03 F6 19 */ bl SetCalculateLighting__6CActorFb /* 8001430C 0001126C 80 1B 02 F8 */ lwz r0, 0x2f8(r27) /* 80014310 00011270 2C 00 00 00 */ cmpwi r0, 0 /* 80014314 00011274 40 82 00 2C */ bne lbl_80014340 /* 80014318 00011278 83 FB 04 90 */ lwz r31, 0x490(r27) /* 8001431C 0001127C 7F 85 E3 78 */ mr r5, r28 /* 80014320 00011280 80 9C 08 70 */ lwz r4, 0x870(r28) /* 80014324 00011284 38 61 00 08 */ addi r3, r1, 8 /* 80014328 00011288 4B FF 65 ED */ bl GetGlobalCameraTranslation__14CCameraManagerCFRC13CStateManager /* 8001432C 0001128C 7F E3 FB 78 */ mr r3, r31 /* 80014330 00011290 7F 84 E3 78 */ mr r4, r28 /* 80014334 00011294 7F A5 EB 78 */ mr r5, r29 /* 80014338 00011298 38 C1 00 08 */ addi r6, r1, 8 /* 8001433C 0001129C 48 02 E4 29 */ bl PreRender__10CPlayerGunFR13CStateManagerRC14CFrustumPlanesRC9CVector3f lbl_80014340: /* 80014340 000112A0 80 1B 02 F8 */ lwz r0, 0x2f8(r27) /* 80014344 000112A4 2C 00 00 00 */ cmpwi r0, 0 /* 80014348 000112A8 41 82 00 14 */ beq lbl_8001435C /* 8001434C 000112AC 80 7C 08 70 */ lwz r3, 0x870(r28) /* 80014350 000112B0 4B FF 65 B1 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80014354 000112B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014358 000112B8 41 82 00 10 */ beq lbl_80014368 lbl_8001435C: /* 8001435C 000112BC 80 7B 07 68 */ lwz r3, 0x768(r27) /* 80014360 000112C0 48 0D 94 8D */ bl DeleteBallShadow__10CMorphBallFv /* 80014364 000112C4 48 00 00 18 */ b lbl_8001437C lbl_80014368: /* 80014368 000112C8 80 7B 07 68 */ lwz r3, 0x768(r27) /* 8001436C 000112CC 48 0D 94 BD */ bl CreateBallShadow__10CMorphBallFv /* 80014370 000112D0 80 7B 07 68 */ lwz r3, 0x768(r27) /* 80014374 000112D4 7F 84 E3 78 */ mr r4, r28 /* 80014378 000112D8 48 0D 95 AD */ bl RenderToShadowTex__10CMorphBallFR13CStateManager lbl_8001437C: /* 8001437C 000112DC 3B C0 00 00 */ li r30, 0 /* 80014380 000112E0 3B E0 00 00 */ li r31, 0 /* 80014384 000112E4 48 00 00 20 */ b lbl_800143A4 lbl_80014388: /* 80014388 000112E8 80 7B 07 3C */ lwz r3, 0x73c(r27) /* 8001438C 000112EC 38 1F 00 04 */ addi r0, r31, 4 /* 80014390 000112F0 7C 63 00 2E */ lwzx r3, r3, r0 /* 80014394 000112F4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80014398 000112F8 48 01 86 6D */ bl PreRender__9CAnimDataFv /* 8001439C 000112FC 3B FF 00 08 */ addi r31, r31, 8 /* 800143A0 00011300 3B DE 00 01 */ addi r30, r30, 1 lbl_800143A4: /* 800143A4 00011304 80 1B 07 34 */ lwz r0, 0x734(r27) /* 800143A8 00011308 7C 1E 00 00 */ cmpw r30, r0 /* 800143AC 0001130C 41 80 FF DC */ blt lbl_80014388 /* 800143B0 00011310 80 1B 02 F4 */ lwz r0, 0x2f4(r27) /* 800143B4 00011314 2C 00 00 00 */ cmpwi r0, 0 /* 800143B8 00011318 41 82 00 14 */ beq lbl_800143CC /* 800143BC 0001131C 7F 63 DB 78 */ mr r3, r27 /* 800143C0 00011320 7F 84 E3 78 */ mr r4, r28 /* 800143C4 00011324 7F A5 EB 78 */ mr r5, r29 /* 800143C8 00011328 48 04 09 19 */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes lbl_800143CC: /* 800143CC 0001132C BB 61 00 1C */ lmw r27, 0x1c(r1) /* 800143D0 00011330 80 01 00 34 */ lwz r0, 0x34(r1) /* 800143D4 00011334 7C 08 03 A6 */ mtlr r0 /* 800143D8 00011338 38 21 00 30 */ addi r1, r1, 0x30 /* 800143DC 0001133C 4E 80 00 20 */ blr .global CalculateRenderBounds__7CPlayerFv CalculateRenderBounds__7CPlayerFv: /* 800143E0 00011340 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800143E4 00011344 7C 08 02 A6 */ mflr r0 /* 800143E8 00011348 90 01 00 44 */ stw r0, 0x44(r1) /* 800143EC 0001134C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800143F0 00011350 7C 7F 1B 78 */ mr r31, r3 /* 800143F4 00011354 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 800143F8 00011358 2C 00 00 01 */ cmpwi r0, 1 /* 800143FC 0001135C 40 82 00 8C */ bne lbl_80014488 /* 80014400 00011360 80 7F 07 68 */ lwz r3, 0x768(r31) /* 80014404 00011364 48 0E 4A 01 */ bl GetBallRadius__10CMorphBallCFv /* 80014408 00011368 C0 DF 00 50 */ lfs f6, 0x50(r31) /* 8001440C 0001136C 38 61 00 20 */ addi r3, r1, 0x20 /* 80014410 00011370 C0 5F 00 40 */ lfs f2, 0x40(r31) /* 80014414 00011374 38 81 00 14 */ addi r4, r1, 0x14 /* 80014418 00011378 C0 7F 00 60 */ lfs f3, 0x60(r31) /* 8001441C 0001137C EC 81 30 2A */ fadds f4, f1, f6 /* 80014420 00011380 C0 02 81 34 */ lfs f0, lbl_805A9E54@sda21(r2) /* 80014424 00011384 EC A1 10 2A */ fadds f5, f1, f2 /* 80014428 00011388 EC 42 08 28 */ fsubs f2, f2, f1 /* 8001442C 0001138C D0 61 00 1C */ stfs f3, 0x1c(r1) /* 80014430 00011390 EC 60 18 7A */ fmadds f3, f0, f1, f3 /* 80014434 00011394 EC 06 08 28 */ fsubs f0, f6, f1 /* 80014438 00011398 D0 A1 00 08 */ stfs f5, 8(r1) /* 8001443C 0001139C 38 A1 00 08 */ addi r5, r1, 8 /* 80014440 000113A0 D0 81 00 0C */ stfs f4, 0xc(r1) /* 80014444 000113A4 D0 61 00 10 */ stfs f3, 0x10(r1) /* 80014448 000113A8 D0 41 00 14 */ stfs f2, 0x14(r1) /* 8001444C 000113AC D0 01 00 18 */ stfs f0, 0x18(r1) /* 80014450 000113B0 48 32 40 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80014454 000113B4 80 61 00 20 */ lwz r3, 0x20(r1) /* 80014458 000113B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8001445C 000113BC 90 7F 00 9C */ stw r3, 0x9c(r31) /* 80014460 000113C0 90 1F 00 A0 */ stw r0, 0xa0(r31) /* 80014464 000113C4 80 01 00 28 */ lwz r0, 0x28(r1) /* 80014468 000113C8 90 1F 00 A4 */ stw r0, 0xa4(r31) /* 8001446C 000113CC 80 61 00 2C */ lwz r3, 0x2c(r1) /* 80014470 000113D0 80 01 00 30 */ lwz r0, 0x30(r1) /* 80014474 000113D4 90 7F 00 A8 */ stw r3, 0xa8(r31) /* 80014478 000113D8 90 1F 00 AC */ stw r0, 0xac(r31) /* 8001447C 000113DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80014480 000113E0 90 1F 00 B0 */ stw r0, 0xb0(r31) /* 80014484 000113E4 48 00 00 08 */ b lbl_8001448C lbl_80014488: /* 80014488 000113E8 48 04 0C 4D */ bl CalculateRenderBounds__6CActorFv lbl_8001448C: /* 8001448C 000113EC 80 01 00 44 */ lwz r0, 0x44(r1) /* 80014490 000113F0 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80014494 000113F4 7C 08 03 A6 */ mtlr r0 /* 80014498 000113F8 38 21 00 40 */ addi r1, r1, 0x40 /* 8001449C 000113FC 4E 80 00 20 */ blr .global AddToRenderer__7CPlayerCFRC14CFrustumPlanesRC13CStateManager AddToRenderer__7CPlayerCFRC14CFrustumPlanesRC13CStateManager: /* 800144A0 00011400 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800144A4 00011404 7C 08 02 A6 */ mflr r0 /* 800144A8 00011408 90 01 00 24 */ stw r0, 0x24(r1) /* 800144AC 0001140C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800144B0 00011410 7C BF 2B 78 */ mr r31, r5 /* 800144B4 00011414 93 C1 00 18 */ stw r30, 0x18(r1) /* 800144B8 00011418 7C 9E 23 78 */ mr r30, r4 /* 800144BC 0001141C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800144C0 00011420 7C 7D 1B 78 */ mr r29, r3 /* 800144C4 00011424 80 03 02 F4 */ lwz r0, 0x2f4(r3) /* 800144C8 00011428 2C 00 00 00 */ cmpwi r0, 0 /* 800144CC 0001142C 41 82 00 44 */ beq lbl_80014510 /* 800144D0 00011430 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 800144D4 00011434 2C 00 00 01 */ cmpwi r0, 1 /* 800144D8 00011438 40 82 00 38 */ bne lbl_80014510 /* 800144DC 0001143C 80 7D 07 68 */ lwz r3, 0x768(r29) /* 800144E0 00011440 48 0D C2 BD */ bl IsInFrustum__10CMorphBallCFRC14CFrustumPlanes /* 800144E4 00011444 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800144E8 00011448 41 82 00 18 */ beq lbl_80014500 /* 800144EC 0001144C 7F A3 EB 78 */ mr r3, r29 /* 800144F0 00011450 7F C4 F3 78 */ mr r4, r30 /* 800144F4 00011454 7F E5 FB 78 */ mr r5, r31 /* 800144F8 00011458 48 04 06 41 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager /* 800144FC 0001145C 48 00 00 34 */ b lbl_80014530 lbl_80014500: /* 80014500 00011460 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80014504 00011464 7F E4 FB 78 */ mr r4, r31 /* 80014508 00011468 48 0D AA B5 */ bl TouchModel__10CMorphBallCFRC13CStateManager /* 8001450C 0001146C 48 00 00 24 */ b lbl_80014530 lbl_80014510: /* 80014510 00011470 80 7D 04 90 */ lwz r3, 0x490(r29) /* 80014514 00011474 7F C4 F3 78 */ mr r4, r30 /* 80014518 00011478 7F E5 FB 78 */ mr r5, r31 /* 8001451C 0001147C 48 02 E4 95 */ bl AddToRenderer__10CPlayerGunCFRC14CFrustumPlanesRC13CStateManager /* 80014520 00011480 7F A3 EB 78 */ mr r3, r29 /* 80014524 00011484 7F C4 F3 78 */ mr r4, r30 /* 80014528 00011488 7F E5 FB 78 */ mr r5, r31 /* 8001452C 0001148C 48 04 06 0D */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager lbl_80014530: /* 80014530 00011490 80 01 00 24 */ lwz r0, 0x24(r1) /* 80014534 00011494 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80014538 00011498 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8001453C 0001149C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80014540 000114A0 7C 08 03 A6 */ mtlr r0 /* 80014544 000114A4 38 21 00 20 */ addi r1, r1, 0x20 /* 80014548 000114A8 4E 80 00 20 */ blr .global UpdateGunAlpha__7CPlayerFRC13CStateManager UpdateGunAlpha__7CPlayerFRC13CStateManager: /* 8001454C 000114AC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80014550 000114B0 7C 08 02 A6 */ mflr r0 /* 80014554 000114B4 90 01 00 24 */ stw r0, 0x24(r1) /* 80014558 000114B8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8001455C 000114BC 7C 7F 1B 78 */ mr r31, r3 /* 80014560 000114C0 80 03 04 98 */ lwz r0, 0x498(r3) /* 80014564 000114C4 2C 00 00 02 */ cmpwi r0, 2 /* 80014568 000114C8 41 82 00 94 */ beq lbl_800145FC /* 8001456C 000114CC 40 80 00 14 */ bge lbl_80014580 /* 80014570 000114D0 2C 00 00 00 */ cmpwi r0, 0 /* 80014574 000114D4 41 82 00 18 */ beq lbl_8001458C /* 80014578 000114D8 40 80 00 50 */ bge lbl_800145C8 /* 8001457C 000114DC 48 00 00 88 */ b lbl_80014604 lbl_80014580: /* 80014580 000114E0 2C 00 00 04 */ cmpwi r0, 4 /* 80014584 000114E4 40 80 00 80 */ bge lbl_80014604 /* 80014588 000114E8 48 00 00 10 */ b lbl_80014598 lbl_8001458C: /* 8001458C 000114EC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014590 000114F0 D0 1F 04 94 */ stfs f0, 0x494(r31) /* 80014594 000114F4 48 00 00 70 */ b lbl_80014604 lbl_80014598: /* 80014598 000114F8 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) /* 8001459C 000114FC 38 81 00 0C */ addi r4, r1, 0xc /* 800145A0 00011500 C0 3F 04 9C */ lfs f1, 0x49c(r31) /* 800145A4 00011504 38 6D 80 E8 */ addi r3, r13, lbl_805A6CA8@sda21 /* 800145A8 00011508 C0 05 00 3C */ lfs f0, 0x3c(r5) /* 800145AC 0001150C 38 AD 80 EC */ addi r5, r13, lbl_805A6CAC@sda21 /* 800145B0 00011510 EC 01 00 24 */ fdivs f0, f1, f0 /* 800145B4 00011514 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800145B8 00011518 4B FF 7C FD */ bl "Clamp__5CMathFRCfRCfRCf" /* 800145BC 0001151C C0 03 00 00 */ lfs f0, 0(r3) /* 800145C0 00011520 D0 1F 04 94 */ stfs f0, 0x494(r31) /* 800145C4 00011524 48 00 00 40 */ b lbl_80014604 lbl_800145C8: /* 800145C8 00011528 C0 3F 04 9C */ lfs f1, 0x49c(r31) /* 800145CC 0001152C 38 81 00 08 */ addi r4, r1, 8 /* 800145D0 00011530 C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) /* 800145D4 00011534 38 6D 80 F0 */ addi r3, r13, lbl_805A6CB0@sda21 /* 800145D8 00011538 38 AD 80 F4 */ addi r5, r13, lbl_805A6CB4@sda21 /* 800145DC 0001153C EC 01 00 24 */ fdivs f0, f1, f0 /* 800145E0 00011540 D0 01 00 08 */ stfs f0, 8(r1) /* 800145E4 00011544 4B FF 7C D1 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800145E8 00011548 C0 23 00 00 */ lfs f1, 0(r3) /* 800145EC 0001154C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 800145F0 00011550 EC 00 08 28 */ fsubs f0, f0, f1 /* 800145F4 00011554 D0 1F 04 94 */ stfs f0, 0x494(r31) /* 800145F8 00011558 48 00 00 0C */ b lbl_80014604 lbl_800145FC: /* 800145FC 0001155C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80014600 00011560 D0 1F 04 94 */ stfs f0, 0x494(r31) lbl_80014604: /* 80014604 00011564 80 01 00 24 */ lwz r0, 0x24(r1) /* 80014608 00011568 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8001460C 0001156C 7C 08 03 A6 */ mtlr r0 /* 80014610 00011570 38 21 00 20 */ addi r1, r1, 0x20 /* 80014614 00011574 4E 80 00 20 */ blr .global ComputeFreeLook__7CPlayerFRC11CFinalInput ComputeFreeLook__7CPlayerFRC11CFinalInput: /* 80014618 00011578 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8001461C 0001157C 7C 08 02 A6 */ mflr r0 /* 80014620 00011580 90 01 00 54 */ stw r0, 0x54(r1) /* 80014624 00011584 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80014628 00011588 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8001462C 0001158C DB C1 00 30 */ stfd f30, 0x30(r1) /* 80014630 00011590 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 80014634 00011594 DB A1 00 20 */ stfd f29, 0x20(r1) /* 80014638 00011598 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 8001463C 0001159C DB 81 00 10 */ stfd f28, 0x10(r1) /* 80014640 000115A0 F3 81 00 18 */ psq_st f28, 24(r1), 0, qr0 /* 80014644 000115A4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80014648 000115A8 93 C1 00 08 */ stw r30, 8(r1) /* 8001464C 000115AC 7C 7E 1B 78 */ mr r30, r3 /* 80014650 000115B0 7C 9F 23 78 */ mr r31, r4 /* 80014654 000115B4 38 60 00 06 */ li r3, 6 /* 80014658 000115B8 4B FF 82 C1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001465C 000115BC FF C0 08 90 */ fmr f30, f1 /* 80014660 000115C0 7F E4 FB 78 */ mr r4, r31 /* 80014664 000115C4 38 60 00 07 */ li r3, 7 /* 80014668 000115C8 4B FF 82 B1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001466C 000115CC FF E0 08 90 */ fmr f31, f1 /* 80014670 000115D0 7F E4 FB 78 */ mr r4, r31 /* 80014674 000115D4 38 60 00 08 */ li r3, 8 /* 80014678 000115D8 4B FF 82 A1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001467C 000115DC FF A0 08 90 */ fmr f29, f1 /* 80014680 000115E0 7F E4 FB 78 */ mr r4, r31 /* 80014684 000115E4 38 60 00 09 */ li r3, 9 /* 80014688 000115E8 4B FF 82 91 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001468C 000115EC 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80014690 000115F0 FF 80 08 90 */ fmr f28, f1 /* 80014694 000115F4 88 03 01 E4 */ lbz r0, 0x1e4(r3) /* 80014698 000115F8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 8001469C 000115FC 41 82 00 24 */ beq lbl_800146C0 /* 800146A0 00011600 7F E4 FB 78 */ mr r4, r31 /* 800146A4 00011604 38 60 00 09 */ li r3, 9 /* 800146A8 00011608 4B FF 82 71 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800146AC 0001160C FF A0 08 90 */ fmr f29, f1 /* 800146B0 00011610 7F E4 FB 78 */ mr r4, r31 /* 800146B4 00011614 38 60 00 08 */ li r3, 8 /* 800146B8 00011618 4B FF 82 61 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800146BC 0001161C FF 80 08 90 */ fmr f28, f1 lbl_800146C0: /* 800146C0 00011620 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 800146C4 00011624 88 03 02 29 */ lbz r0, 0x229(r3) /* 800146C8 00011628 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 800146CC 0001162C 40 82 00 34 */ bne lbl_80014700 /* 800146D0 00011630 7F E4 FB 78 */ mr r4, r31 /* 800146D4 00011634 38 60 00 0B */ li r3, 0xb /* 800146D8 00011638 4B FF 81 9D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800146DC 0001163C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800146E0 00011640 40 82 00 10 */ bne lbl_800146F0 /* 800146E4 00011644 80 1E 03 04 */ lwz r0, 0x304(r30) /* 800146E8 00011648 2C 00 00 00 */ cmpwi r0, 0 /* 800146EC 0001164C 41 82 00 14 */ beq lbl_80014700 lbl_800146F0: /* 800146F0 00011650 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800146F4 00011654 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) /* 800146F8 00011658 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) /* 800146FC 0001165C 48 00 00 5C */ b lbl_80014758 lbl_80014700: /* 80014700 00011660 88 1E 03 DC */ lbz r0, 0x3dc(r30) /* 80014704 00011664 28 00 00 00 */ cmplwi r0, 0 /* 80014708 00011668 41 82 00 2C */ beq lbl_80014734 /* 8001470C 0001166C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80014710 00011670 EC 5E F8 28 */ fsubs f2, f30, f31 /* 80014714 00011674 EC 3D E0 28 */ fsubs f1, f29, f28 /* 80014718 00011678 C0 03 01 30 */ lfs f0, 0x130(r3) /* 8001471C 0001167C EC 02 00 32 */ fmuls f0, f2, f0 /* 80014720 00011680 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) /* 80014724 00011684 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80014728 00011688 C0 03 01 34 */ lfs f0, 0x134(r3) /* 8001472C 0001168C EC 01 00 32 */ fmuls f0, f1, f0 /* 80014730 00011690 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) lbl_80014734: /* 80014734 00011694 88 1E 03 DE */ lbz r0, 0x3de(r30) /* 80014738 00011698 28 00 00 00 */ cmplwi r0, 0 /* 8001473C 0001169C 41 82 00 10 */ beq lbl_8001474C /* 80014740 000116A0 88 1E 03 DD */ lbz r0, 0x3dd(r30) /* 80014744 000116A4 28 00 00 00 */ cmplwi r0, 0 /* 80014748 000116A8 40 82 00 10 */ bne lbl_80014758 lbl_8001474C: /* 8001474C 000116AC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014750 000116B0 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) /* 80014754 000116B4 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) lbl_80014758: /* 80014758 000116B8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 8001475C 000116BC 88 63 02 28 */ lbz r3, 0x228(r3) /* 80014760 000116C0 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f /* 80014764 000116C4 41 82 00 68 */ beq lbl_800147CC /* 80014768 000116C8 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f /* 8001476C 000116CC 41 82 00 2C */ beq lbl_80014798 /* 80014770 000116D0 7F E4 FB 78 */ mr r4, r31 /* 80014774 000116D4 38 60 00 21 */ li r3, 0x21 /* 80014778 000116D8 4B FF 80 FD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001477C 000116DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014780 000116E0 41 82 00 40 */ beq lbl_800147C0 /* 80014784 000116E4 7F E4 FB 78 */ mr r4, r31 /* 80014788 000116E8 38 60 00 22 */ li r3, 0x22 /* 8001478C 000116EC 4B FF 80 E9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80014790 000116F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014794 000116F4 41 82 00 2C */ beq lbl_800147C0 lbl_80014798: /* 80014798 000116F8 7F E4 FB 78 */ mr r4, r31 /* 8001479C 000116FC 38 60 00 21 */ li r3, 0x21 /* 800147A0 00011700 4B FF 80 D5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800147A4 00011704 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800147A8 00011708 40 82 00 24 */ bne lbl_800147CC /* 800147AC 0001170C 7F E4 FB 78 */ mr r4, r31 /* 800147B0 00011710 38 60 00 22 */ li r3, 0x22 /* 800147B4 00011714 4B FF 80 C1 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800147B8 00011718 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800147BC 0001171C 40 82 00 10 */ bne lbl_800147CC lbl_800147C0: /* 800147C0 00011720 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800147C4 00011724 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) /* 800147C8 00011728 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) lbl_800147CC: /* 800147CC 0001172C 7F C3 F3 78 */ mr r3, r30 /* 800147D0 00011730 48 00 5A 45 */ bl IsMorphBallTransitioning__7CPlayerCFv /* 800147D4 00011734 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800147D8 00011738 41 82 00 10 */ beq lbl_800147E8 /* 800147DC 0001173C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800147E0 00011740 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) /* 800147E4 00011744 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) lbl_800147E8: /* 800147E8 00011748 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800147EC 0001174C CB E1 00 40 */ lfd f31, 0x40(r1) /* 800147F0 00011750 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 800147F4 00011754 CB C1 00 30 */ lfd f30, 0x30(r1) /* 800147F8 00011758 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 800147FC 0001175C CB A1 00 20 */ lfd f29, 0x20(r1) /* 80014800 00011760 E3 81 00 18 */ psq_l f28, 24(r1), 0, qr0 /* 80014804 00011764 CB 81 00 10 */ lfd f28, 0x10(r1) /* 80014808 00011768 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8001480C 0001176C 80 01 00 54 */ lwz r0, 0x54(r1) /* 80014810 00011770 83 C1 00 08 */ lwz r30, 8(r1) /* 80014814 00011774 7C 08 03 A6 */ mtlr r0 /* 80014818 00011778 38 21 00 50 */ addi r1, r1, 0x50 /* 8001481C 0001177C 4E 80 00 20 */ blr .global UpdateFreeLook__7CPlayerFf UpdateFreeLook__7CPlayerFf: /* 80014820 00011780 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80014824 00011784 7C 08 02 A6 */ mflr r0 /* 80014828 00011788 90 01 00 54 */ stw r0, 0x54(r1) /* 8001482C 0001178C DB E1 00 40 */ stfd f31, 0x40(r1) /* 80014830 00011790 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80014834 00011794 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80014838 00011798 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 8001483C 0001179C DB A1 00 20 */ stfd f29, 0x20(r1) /* 80014840 000117A0 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 80014844 000117A4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80014848 000117A8 7C 7F 1B 78 */ mr r31, r3 /* 8001484C 000117AC FF A0 08 90 */ fmr f29, f1 /* 80014850 000117B0 48 00 14 AD */ bl GetFrozenState__7CPlayerCFv /* 80014854 000117B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014858 000117B8 40 82 01 20 */ bne lbl_80014978 /* 8001485C 000117BC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80014860 000117C0 88 1F 03 DE */ lbz r0, 0x3de(r31) /* 80014864 000117C4 C0 03 01 38 */ lfs f0, 0x138(r3) /* 80014868 000117C8 28 00 00 00 */ cmplwi r0, 0 /* 8001486C 000117CC EF FD 00 32 */ fmuls f31, f29, f0 /* 80014870 000117D0 40 82 00 0C */ bne lbl_8001487C /* 80014874 000117D4 C0 03 01 3C */ lfs f0, 0x13c(r3) /* 80014878 000117D8 EF FD 00 32 */ fmuls f31, f29, f0 lbl_8001487C: /* 8001487C 000117DC C3 DF 03 F0 */ lfs f30, 0x3f0(r31) /* 80014880 000117E0 38 81 00 0C */ addi r4, r1, 0xc /* 80014884 000117E4 C0 3F 03 EC */ lfs f1, 0x3ec(r31) /* 80014888 000117E8 38 6D 80 D8 */ addi r3, r13, lbl_805A6C98@sda21 /* 8001488C 000117EC C0 02 81 B8 */ lfs f0, lbl_805A9ED8@sda21(r2) /* 80014890 000117F0 38 AD 80 DC */ addi r5, r13, lbl_805A6C9C@sda21 /* 80014894 000117F4 EF DE 08 28 */ fsubs f30, f30, f1 /* 80014898 000117F8 EC 1E 00 24 */ fdivs f0, f30, f0 /* 8001489C 000117FC FC 00 02 10 */ fabs f0, f0 /* 800148A0 00011800 FC 00 00 18 */ frsp f0, f0 /* 800148A4 00011804 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800148A8 00011808 4B FF 7A 0D */ bl "Clamp__5CMathFRCfRCfRCf" /* 800148AC 0001180C C3 A3 00 00 */ lfs f29, 0(r3) /* 800148B0 00011810 C0 02 81 BC */ lfs f0, lbl_805A9EDC@sda21(r2) /* 800148B4 00011814 EC 20 07 72 */ fmuls f1, f0, f29 /* 800148B8 00011818 48 38 02 25 */ bl sin /* 800148BC 0001181C FC 40 08 18 */ frsp f2, f1 /* 800148C0 00011820 C0 22 81 34 */ lfs f1, lbl_805A9E54@sda21(r2) /* 800148C4 00011824 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800148C8 00011828 EC 21 17 78 */ fmsubs f1, f1, f29, f2 /* 800148CC 0001182C FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 800148D0 00011830 EC 3F 00 72 */ fmuls f1, f31, f1 /* 800148D4 00011834 4C 40 13 82 */ cror 2, 0, 2 /* 800148D8 00011838 40 82 00 14 */ bne lbl_800148EC /* 800148DC 0001183C C0 1F 03 EC */ lfs f0, 0x3ec(r31) /* 800148E0 00011840 EC 00 08 2A */ fadds f0, f0, f1 /* 800148E4 00011844 D0 1F 03 EC */ stfs f0, 0x3ec(r31) /* 800148E8 00011848 48 00 00 10 */ b lbl_800148F8 lbl_800148EC: /* 800148EC 0001184C C0 1F 03 EC */ lfs f0, 0x3ec(r31) /* 800148F0 00011850 EC 00 08 28 */ fsubs f0, f0, f1 /* 800148F4 00011854 D0 1F 03 EC */ stfs f0, 0x3ec(r31) lbl_800148F8: /* 800148F8 00011858 C3 DF 03 E8 */ lfs f30, 0x3e8(r31) /* 800148FC 0001185C 38 81 00 08 */ addi r4, r1, 8 /* 80014900 00011860 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) /* 80014904 00011864 38 6D 80 E0 */ addi r3, r13, lbl_805A6CA0@sda21 /* 80014908 00011868 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) /* 8001490C 0001186C 38 AD 80 E4 */ addi r5, r13, lbl_805A6CA4@sda21 /* 80014910 00011870 EF DE 00 28 */ fsubs f30, f30, f0 /* 80014914 00011874 C0 06 01 30 */ lfs f0, 0x130(r6) /* 80014918 00011878 EC 1E 00 24 */ fdivs f0, f30, f0 /* 8001491C 0001187C FC 00 02 10 */ fabs f0, f0 /* 80014920 00011880 FC 00 00 18 */ frsp f0, f0 /* 80014924 00011884 D0 01 00 08 */ stfs f0, 8(r1) /* 80014928 00011888 4B FF 79 8D */ bl "Clamp__5CMathFRCfRCfRCf" /* 8001492C 0001188C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014930 00011890 C0 23 00 00 */ lfs f1, 0(r3) /* 80014934 00011894 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80014938 00011898 EC 3F 00 72 */ fmuls f1, f31, f1 /* 8001493C 0001189C 4C 40 13 82 */ cror 2, 0, 2 /* 80014940 000118A0 40 82 00 14 */ bne lbl_80014954 /* 80014944 000118A4 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) /* 80014948 000118A8 EC 00 08 2A */ fadds f0, f0, f1 /* 8001494C 000118AC D0 1F 03 E4 */ stfs f0, 0x3e4(r31) /* 80014950 000118B0 48 00 00 10 */ b lbl_80014960 lbl_80014954: /* 80014954 000118B4 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) /* 80014958 000118B8 EC 00 08 28 */ fsubs f0, f0, f1 /* 8001495C 000118BC D0 1F 03 E4 */ stfs f0, 0x3e4(r31) lbl_80014960: /* 80014960 000118C0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80014964 000118C4 88 03 02 28 */ lbz r0, 0x228(r3) /* 80014968 000118C8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8001496C 000118CC 41 82 00 0C */ beq lbl_80014978 /* 80014970 000118D0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014974 000118D4 D0 1F 03 E4 */ stfs f0, 0x3e4(r31) lbl_80014978: /* 80014978 000118D8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 8001497C 000118DC CB E1 00 40 */ lfd f31, 0x40(r1) /* 80014980 000118E0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80014984 000118E4 CB C1 00 30 */ lfd f30, 0x30(r1) /* 80014988 000118E8 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 8001498C 000118EC CB A1 00 20 */ lfd f29, 0x20(r1) /* 80014990 000118F0 80 01 00 54 */ lwz r0, 0x54(r1) /* 80014994 000118F4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80014998 000118F8 7C 08 03 A6 */ mtlr r0 /* 8001499C 000118FC 38 21 00 50 */ addi r1, r1, 0x50 /* 800149A0 00011900 4E 80 00 20 */ blr .global DetachActorFromPlayer__7CPlayerFv DetachActorFromPlayer__7CPlayerFv: /* 800149A4 00011904 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800149A8 00011908 38 80 00 00 */ li r4, 0 /* 800149AC 0001190C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800149B0 00011910 B0 03 02 6C */ sth r0, 0x26c(r3) /* 800149B4 00011914 D0 03 02 70 */ stfs f0, 0x270(r3) /* 800149B8 00011918 D0 03 0A 28 */ stfs f0, 0xa28(r3) /* 800149BC 0001191C 80 63 04 90 */ lwz r3, 0x490(r3) /* 800149C0 00011920 88 03 08 35 */ lbz r0, 0x835(r3) /* 800149C4 00011924 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f /* 800149C8 00011928 98 03 08 35 */ stb r0, 0x835(r3) /* 800149CC 0001192C 4E 80 00 20 */ blr .global AttachActorToPlayer__7CPlayerF9TUniqueId AttachActorToPlayer__7CPlayerF9TUniqueId: /* 800149D0 00011930 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800149D4 00011934 7C 08 02 A6 */ mflr r0 /* 800149D8 00011938 90 01 00 14 */ stw r0, 0x14(r1) /* 800149DC 0001193C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800149E0 00011940 A0 C3 02 6C */ lhz r6, 0x26c(r3) /* 800149E4 00011944 7C 06 00 40 */ cmplw r6, r0 /* 800149E8 00011948 40 82 00 44 */ bne lbl_80014A2C /* 800149EC 0001194C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 /* 800149F0 00011950 41 82 00 18 */ beq lbl_80014A08 /* 800149F4 00011954 80 A3 04 90 */ lwz r5, 0x490(r3) /* 800149F8 00011958 38 C0 00 01 */ li r6, 1 /* 800149FC 0001195C 88 05 08 35 */ lbz r0, 0x835(r5) /* 80014A00 00011960 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f /* 80014A04 00011964 98 05 08 35 */ stb r0, 0x835(r5) lbl_80014A08: /* 80014A08 00011968 A0 04 00 00 */ lhz r0, 0(r4) /* 80014A0C 0001196C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014A10 00011970 B0 03 02 6C */ sth r0, 0x26c(r3) /* 80014A14 00011974 D0 03 02 70 */ stfs f0, 0x270(r3) /* 80014A18 00011978 D0 03 0A 28 */ stfs f0, 0xa28(r3) /* 80014A1C 0001197C 80 63 07 68 */ lwz r3, 0x768(r3) /* 80014A20 00011980 48 0E 0B 8D */ bl StopEffects__10CMorphBallFv /* 80014A24 00011984 38 60 00 01 */ li r3, 1 /* 80014A28 00011988 48 00 00 08 */ b lbl_80014A30 lbl_80014A2C: /* 80014A2C 0001198C 38 60 00 00 */ li r3, 0 lbl_80014A30: /* 80014A30 00011990 80 01 00 14 */ lwz r0, 0x14(r1) /* 80014A34 00011994 7C 08 03 A6 */ mtlr r0 /* 80014A38 00011998 38 21 00 10 */ addi r1, r1, 0x10 /* 80014A3C 0001199C 4E 80 00 20 */ blr .global CalculateLeftStickEdgePosition__7CPlayerCFff CalculateLeftStickEdgePosition__7CPlayerCFff: /* 80014A40 000119A0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80014A44 000119A4 7C 08 02 A6 */ mflr r0 /* 80014A48 000119A8 90 01 00 44 */ stw r0, 0x44(r1) /* 80014A4C 000119AC DB E1 00 30 */ stfd f31, 0x30(r1) /* 80014A50 000119B0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80014A54 000119B4 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80014A58 000119B8 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80014A5C 000119BC DB A1 00 10 */ stfd f29, 0x10(r1) /* 80014A60 000119C0 F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 /* 80014A64 000119C4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80014A68 000119C8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014A6C 000119CC 7C 7F 1B 78 */ mr r31, r3 /* 80014A70 000119D0 C3 E2 81 88 */ lfs f31, lbl_805A9EA8@sda21(r2) /* 80014A74 000119D4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80014A78 000119D8 C3 C2 81 C0 */ lfs f30, lbl_805A9EE0@sda21(r2) /* 80014A7C 000119DC C3 A2 81 C4 */ lfs f29, lbl_805A9EE4@sda21(r2) /* 80014A80 000119E0 4C 41 13 82 */ cror 2, 1, 2 /* 80014A84 000119E4 40 82 00 0C */ bne lbl_80014A90 /* 80014A88 000119E8 FF E0 F8 50 */ fneg f31, f31 /* 80014A8C 000119EC FF C0 F0 50 */ fneg f30, f30 lbl_80014A90: /* 80014A90 000119F0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80014A94 000119F4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80014A98 000119F8 40 80 00 0C */ bge lbl_80014AA4 /* 80014A9C 000119FC C0 02 81 C4 */ lfs f0, lbl_805A9EE4@sda21(r2) /* 80014AA0 00011A00 FF A0 00 50 */ fneg f29, f0 lbl_80014AA4: /* 80014AA4 00011A04 FC 00 0A 10 */ fabs f0, f1 /* 80014AA8 00011A08 FC 20 12 10 */ fabs f1, f2 /* 80014AAC 00011A0C FC 00 00 18 */ frsp f0, f0 /* 80014AB0 00011A10 FC 20 08 18 */ frsp f1, f1 /* 80014AB4 00011A14 EC 21 00 24 */ fdivs f1, f1, f0 /* 80014AB8 00011A18 48 30 08 B5 */ bl ArcTangentR__5CMathFf /* 80014ABC 00011A1C C0 42 81 C8 */ lfs f2, lbl_805A9EE8@sda21(r2) /* 80014AC0 00011A20 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 80014AC4 00011A24 EC 81 10 24 */ fdivs f4, f1, f2 /* 80014AC8 00011A28 FC 20 22 10 */ fabs f1, f4 /* 80014ACC 00011A2C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80014AD0 00011A30 40 81 00 14 */ ble lbl_80014AE4 /* 80014AD4 00011A34 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 80014AD8 00011A38 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80014ADC 00011A3C FC 04 00 6E */ fsel f0, f4, f1, f0 /* 80014AE0 00011A40 EC 81 00 32 */ fmuls f4, f1, f0 lbl_80014AE4: /* 80014AE4 00011A44 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 80014AE8 00011A48 EC 1E F8 28 */ fsubs f0, f30, f31 /* 80014AEC 00011A4C EC 3D 10 28 */ fsubs f1, f29, f2 /* 80014AF0 00011A50 EC 64 00 32 */ fmuls f3, f4, f0 /* 80014AF4 00011A54 EC 04 00 B2 */ fmuls f0, f4, f2 /* 80014AF8 00011A58 EC 24 00 72 */ fmuls f1, f4, f1 /* 80014AFC 00011A5C EC 7F 18 2A */ fadds f3, f31, f3 /* 80014B00 00011A60 EC 02 00 2A */ fadds f0, f2, f0 /* 80014B04 00011A64 EC 22 08 2A */ fadds f1, f2, f1 /* 80014B08 00011A68 D0 7F 00 00 */ stfs f3, 0(r31) /* 80014B0C 00011A6C D0 3F 00 04 */ stfs f1, 4(r31) /* 80014B10 00011A70 D0 1F 00 08 */ stfs f0, 8(r31) /* 80014B14 00011A74 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80014B18 00011A78 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80014B1C 00011A7C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80014B20 00011A80 CB C1 00 20 */ lfd f30, 0x20(r1) /* 80014B24 00011A84 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 /* 80014B28 00011A88 CB A1 00 10 */ lfd f29, 0x10(r1) /* 80014B2C 00011A8C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80014B30 00011A90 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80014B34 00011A94 7C 08 03 A6 */ mtlr r0 /* 80014B38 00011A98 38 21 00 40 */ addi r1, r1, 0x40 /* 80014B3C 00011A9C 4E 80 00 20 */ blr .global GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager: /* 80014B40 00011AA0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80014B44 00011AA4 7C 08 02 A6 */ mflr r0 /* 80014B48 00011AA8 90 01 00 14 */ stw r0, 0x14(r1) /* 80014B4C 00011AAC 80 64 08 B8 */ lwz r3, 0x8b8(r4) /* 80014B50 00011AB0 38 80 00 0F */ li r4, 0xf /* 80014B54 00011AB4 80 63 00 00 */ lwz r3, 0(r3) /* 80014B58 00011AB8 48 07 CF C5 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType /* 80014B5C 00011ABC 2C 03 00 00 */ cmpwi r3, 0 /* 80014B60 00011AC0 41 82 00 0C */ beq lbl_80014B6C /* 80014B64 00011AC4 C0 22 81 CC */ lfs f1, lbl_805A9EEC@sda21(r2) /* 80014B68 00011AC8 48 00 00 08 */ b lbl_80014B70 lbl_80014B6C: /* 80014B6C 00011ACC C0 22 81 D0 */ lfs f1, lbl_805A9EF0@sda21(r2) lbl_80014B70: /* 80014B70 00011AD0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80014B74 00011AD4 7C 08 03 A6 */ mtlr r0 /* 80014B78 00011AD8 38 21 00 10 */ addi r1, r1, 0x10 /* 80014B7C 00011ADC 4E 80 00 20 */ blr .global UpdateMorphBallState__7CPlayerFfRC11CFinalInputR13CStateManager UpdateMorphBallState__7CPlayerFfRC11CFinalInputR13CStateManager: /* 80014B80 00011AE0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80014B84 00011AE4 7C 08 02 A6 */ mflr r0 /* 80014B88 00011AE8 90 01 00 54 */ stw r0, 0x54(r1) /* 80014B8C 00011AEC DB E1 00 40 */ stfd f31, 0x40(r1) /* 80014B90 00011AF0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80014B94 00011AF4 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80014B98 00011AF8 93 C1 00 38 */ stw r30, 0x38(r1) /* 80014B9C 00011AFC FF E0 08 90 */ fmr f31, f1 /* 80014BA0 00011B00 7C 7E 1B 78 */ mr r30, r3 /* 80014BA4 00011B04 7C BF 2B 78 */ mr r31, r5 /* 80014BA8 00011B08 38 60 00 0D */ li r3, 0xd /* 80014BAC 00011B0C 4B FF 7C 25 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80014BB0 00011B10 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014BB4 00011B14 41 82 01 88 */ beq lbl_80014D3C /* 80014BB8 00011B18 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80014BBC 00011B1C 2C 00 00 01 */ cmpwi r0, 1 /* 80014BC0 00011B20 41 82 00 AC */ beq lbl_80014C6C /* 80014BC4 00011B24 40 80 01 78 */ bge lbl_80014D3C /* 80014BC8 00011B28 2C 00 00 00 */ cmpwi r0, 0 /* 80014BCC 00011B2C 40 80 00 0C */ bge lbl_80014BD8 /* 80014BD0 00011B30 48 00 01 6C */ b lbl_80014D3C /* 80014BD4 00011B34 48 00 01 68 */ b lbl_80014D3C lbl_80014BD8: /* 80014BD8 00011B38 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80014BDC 00011B3C 38 80 00 10 */ li r4, 0x10 /* 80014BE0 00011B40 80 63 00 00 */ lwz r3, 0(r3) /* 80014BE4 00011B44 48 07 CE DD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80014BE8 00011B48 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80014BEC 00011B4C 28 00 00 01 */ cmplwi r0, 1 /* 80014BF0 00011B50 40 82 00 40 */ bne lbl_80014C30 /* 80014BF4 00011B54 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80014BF8 00011B58 7F C3 F3 78 */ mr r3, r30 /* 80014BFC 00011B5C 7F E4 FB 78 */ mr r4, r31 /* 80014C00 00011B60 4B FF E2 FD */ bl CanEnterMorphBallState__7CPlayerCFR13CStateManagerf /* 80014C04 00011B64 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014C08 00011B68 41 82 00 28 */ beq lbl_80014C30 /* 80014C0C 00011B6C C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 80014C10 00011B70 FC 20 F8 90 */ fmr f1, f31 /* 80014C14 00011B74 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80014C18 00011B78 7F C3 F3 78 */ mr r3, r30 /* 80014C1C 00011B7C D0 5E 05 74 */ stfs f2, 0x574(r30) /* 80014C20 00011B80 7F E4 FB 78 */ mr r4, r31 /* 80014C24 00011B84 D0 1E 05 78 */ stfs f0, 0x578(r30) /* 80014C28 00011B88 48 26 ED 25 */ bl TransitionToMorphBallState__7CPlayerFfR13CStateManager /* 80014C2C 00011B8C 48 00 01 10 */ b lbl_80014D3C lbl_80014C30: /* 80014C30 00011B90 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80014C34 00011B94 38 61 00 10 */ addi r3, r1, 0x10 /* 80014C38 00011B98 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80014C3C 00011B9C 38 80 06 F5 */ li r4, 0x6f5 /* 80014C40 00011BA0 38 A0 00 7F */ li r5, 0x7f /* 80014C44 00011BA4 38 C0 00 40 */ li r6, 0x40 /* 80014C48 00011BA8 38 E0 00 01 */ li r7, 1 /* 80014C4C 00011BAC 39 20 00 00 */ li r9, 0 /* 80014C50 00011BB0 48 2D 51 25 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80014C54 00011BB4 80 01 00 10 */ lwz r0, 0x10(r1) /* 80014C58 00011BB8 7F C3 F3 78 */ mr r3, r30 /* 80014C5C 00011BBC 38 81 00 14 */ addi r4, r1, 0x14 /* 80014C60 00011BC0 90 01 00 14 */ stw r0, 0x14(r1) /* 80014C64 00011BC4 4B FF C5 29 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80014C68 00011BC8 48 00 00 D4 */ b lbl_80014D3C lbl_80014C6C: /* 80014C6C 00011BCC 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80014C70 00011BD0 7F C3 F3 78 */ mr r3, r30 /* 80014C74 00011BD4 38 C4 66 A0 */ addi r6, r4, sZeroVector__9CVector3f@l /* 80014C78 00011BD8 7F E4 FB 78 */ mr r4, r31 /* 80014C7C 00011BDC C0 46 00 00 */ lfs f2, 0(r6) /* 80014C80 00011BE0 38 A1 00 24 */ addi r5, r1, 0x24 /* 80014C84 00011BE4 C0 26 00 04 */ lfs f1, 4(r6) /* 80014C88 00011BE8 C0 06 00 08 */ lfs f0, 8(r6) /* 80014C8C 00011BEC D0 41 00 24 */ stfs f2, 0x24(r1) /* 80014C90 00011BF0 D0 21 00 28 */ stfs f1, 0x28(r1) /* 80014C94 00011BF4 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 80014C98 00011BF8 4B FF DD FD */ bl CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f /* 80014C9C 00011BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014CA0 00011C00 41 82 00 64 */ beq lbl_80014D04 /* 80014CA4 00011C04 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 80014CA8 00011C08 7F C3 F3 78 */ mr r3, r30 /* 80014CAC 00011C0C C0 01 00 28 */ lfs f0, 0x28(r1) /* 80014CB0 00011C10 38 81 00 18 */ addi r4, r1, 0x18 /* 80014CB4 00011C14 C0 7E 00 60 */ lfs f3, 0x60(r30) /* 80014CB8 00011C18 C0 41 00 2C */ lfs f2, 0x2c(r1) /* 80014CBC 00011C1C EC 81 00 2A */ fadds f4, f1, f0 /* 80014CC0 00011C20 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 80014CC4 00011C24 C0 01 00 24 */ lfs f0, 0x24(r1) /* 80014CC8 00011C28 EC 43 10 2A */ fadds f2, f3, f2 /* 80014CCC 00011C2C D0 81 00 1C */ stfs f4, 0x1c(r1) /* 80014CD0 00011C30 EC 01 00 2A */ fadds f0, f1, f0 /* 80014CD4 00011C34 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80014CD8 00011C38 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80014CDC 00011C3C 48 03 E1 B1 */ bl SetTranslation__6CActorFRC9CVector3f /* 80014CE0 00011C40 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 80014CE4 00011C44 FC 20 F8 90 */ fmr f1, f31 /* 80014CE8 00011C48 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80014CEC 00011C4C 7F C3 F3 78 */ mr r3, r30 /* 80014CF0 00011C50 D0 5E 05 74 */ stfs f2, 0x574(r30) /* 80014CF4 00011C54 7F E4 FB 78 */ mr r4, r31 /* 80014CF8 00011C58 D0 1E 05 78 */ stfs f0, 0x578(r30) /* 80014CFC 00011C5C 48 26 E3 79 */ bl TransitionFromMorphBallState__7CPlayerFR13CStateManager /* 80014D00 00011C60 48 00 00 3C */ b lbl_80014D3C lbl_80014D04: /* 80014D04 00011C64 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80014D08 00011C68 38 61 00 08 */ addi r3, r1, 8 /* 80014D0C 00011C6C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80014D10 00011C70 38 80 06 F5 */ li r4, 0x6f5 /* 80014D14 00011C74 38 A0 00 7F */ li r5, 0x7f /* 80014D18 00011C78 38 C0 00 40 */ li r6, 0x40 /* 80014D1C 00011C7C 38 E0 00 01 */ li r7, 1 /* 80014D20 00011C80 39 20 00 00 */ li r9, 0 /* 80014D24 00011C84 48 2D 50 51 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80014D28 00011C88 80 01 00 08 */ lwz r0, 8(r1) /* 80014D2C 00011C8C 7F C3 F3 78 */ mr r3, r30 /* 80014D30 00011C90 38 81 00 0C */ addi r4, r1, 0xc /* 80014D34 00011C94 90 01 00 0C */ stw r0, 0xc(r1) /* 80014D38 00011C98 4B FF C4 55 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_80014D3C: /* 80014D3C 00011C9C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80014D40 00011CA0 80 01 00 54 */ lwz r0, 0x54(r1) /* 80014D44 00011CA4 CB E1 00 40 */ lfd f31, 0x40(r1) /* 80014D48 00011CA8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80014D4C 00011CAC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80014D50 00011CB0 7C 08 03 A6 */ mtlr r0 /* 80014D54 00011CB4 38 21 00 50 */ addi r1, r1, 0x50 /* 80014D58 00011CB8 4E 80 00 20 */ blr .global ProcessInput__7CPlayerFRC11CFinalInputR13CStateManager ProcessInput__7CPlayerFRC11CFinalInputR13CStateManager: /* 80014D5C 00011CBC 94 21 DA 60 */ stwu r1, -0x25a0(r1) /* 80014D60 00011CC0 7C 08 02 A6 */ mflr r0 /* 80014D64 00011CC4 90 01 25 A4 */ stw r0, 0x25a4(r1) /* 80014D68 00011CC8 38 00 25 98 */ li r0, 0x2598 /* 80014D6C 00011CCC DB E1 25 90 */ stfd f31, 0x2590(r1) /* 80014D70 00011CD0 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 /* 80014D74 00011CD4 38 00 25 88 */ li r0, 0x2588 /* 80014D78 00011CD8 DB C1 25 80 */ stfd f30, 0x2580(r1) /* 80014D7C 00011CDC 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 /* 80014D80 00011CE0 38 00 25 78 */ li r0, 0x2578 /* 80014D84 00011CE4 DB A1 25 70 */ stfd f29, 0x2570(r1) /* 80014D88 00011CE8 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 /* 80014D8C 00011CEC BF 21 25 54 */ stmw r25, 0x2554(r1) /* 80014D90 00011CF0 7C 9E 23 78 */ mr r30, r4 /* 80014D94 00011CF4 7C 7D 1B 78 */ mr r29, r3 /* 80014D98 00011CF8 80 04 00 04 */ lwz r0, 4(r4) /* 80014D9C 00011CFC 7C BF 2B 78 */ mr r31, r5 /* 80014DA0 00011D00 2C 00 00 00 */ cmpwi r0, 0 /* 80014DA4 00011D04 40 82 09 30 */ bne lbl_800156D4 /* 80014DA8 00011D08 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80014DAC 00011D0C C3 FE 00 00 */ lfs f31, 0(r30) /* 80014DB0 00011D10 2C 00 00 01 */ cmpwi r0, 1 /* 80014DB4 00011D14 41 82 00 0C */ beq lbl_80014DC0 /* 80014DB8 00011D18 FC 20 F8 90 */ fmr f1, f31 /* 80014DBC 00011D1C 4B FF E4 7D */ bl UpdateScanningState__7CPlayerFRC11CFinalInputR13CStateManagerf lbl_80014DC0: /* 80014DC0 00011D20 80 1F 09 04 */ lwz r0, 0x904(r31) /* 80014DC4 00011D24 2C 00 00 00 */ cmpwi r0, 0 /* 80014DC8 00011D28 40 82 09 0C */ bne lbl_800156D4 /* 80014DCC 00011D2C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80014DD0 00011D30 80 63 00 00 */ lwz r3, 0(r3) /* 80014DD4 00011D34 88 03 00 00 */ lbz r0, 0(r3) /* 80014DD8 00011D38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80014DDC 00011D3C 40 82 00 08 */ bne lbl_80014DE4 /* 80014DE0 00011D40 48 00 08 F4 */ b lbl_800156D4 lbl_80014DE4: /* 80014DE4 00011D44 7F A3 EB 78 */ mr r3, r29 /* 80014DE8 00011D48 48 00 0F 15 */ bl GetFrozenState__7CPlayerCFv /* 80014DEC 00011D4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014DF0 00011D50 41 82 00 8C */ beq lbl_80014E7C /* 80014DF4 00011D54 7F A3 EB 78 */ mr r3, r29 /* 80014DF8 00011D58 7F C4 F3 78 */ mr r4, r30 /* 80014DFC 00011D5C 7F E5 FB 78 */ mr r5, r31 /* 80014E00 00011D60 48 00 09 FD */ bl UpdateFrozenState__7CPlayerFRC11CFinalInputR13CStateManager /* 80014E04 00011D64 7F A3 EB 78 */ mr r3, r29 /* 80014E08 00011D68 48 00 0E F5 */ bl GetFrozenState__7CPlayerCFv /* 80014E0C 00011D6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014E10 00011D70 41 82 00 6C */ beq lbl_80014E7C /* 80014E14 00011D74 80 1D 02 58 */ lwz r0, 0x258(r29) /* 80014E18 00011D78 2C 00 00 00 */ cmpwi r0, 0 /* 80014E1C 00011D7C 41 82 08 B8 */ beq lbl_800156D4 /* 80014E20 00011D80 2C 00 00 04 */ cmpwi r0, 4 /* 80014E24 00011D84 41 82 08 B0 */ beq lbl_800156D4 /* 80014E28 00011D88 38 61 01 D0 */ addi r3, r1, 0x1d0 /* 80014E2C 00011D8C 48 33 4F F5 */ bl __ct__11CFinalInputFv /* 80014E30 00011D90 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80014E34 00011D94 2C 00 00 01 */ cmpwi r0, 1 /* 80014E38 00011D98 40 82 00 2C */ bne lbl_80014E64 /* 80014E3C 00011D9C FC 20 F8 90 */ fmr f1, f31 /* 80014E40 00011DA0 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80014E44 00011DA4 7F E5 FB 78 */ mr r5, r31 /* 80014E48 00011DA8 38 81 01 D0 */ addi r4, r1, 0x1d0 /* 80014E4C 00011DAC 48 0E 3E DD */ bl ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf /* 80014E50 00011DB0 FC 20 F8 90 */ fmr f1, f31 /* 80014E54 00011DB4 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80014E58 00011DB8 7F E4 FB 78 */ mr r4, r31 /* 80014E5C 00011DBC 48 0E 0D F1 */ bl UpdateBallDynamics__10CMorphBallFR13CStateManagerf /* 80014E60 00011DC0 48 00 08 74 */ b lbl_800156D4 lbl_80014E64: /* 80014E64 00011DC4 FC 20 F8 90 */ fmr f1, f31 /* 80014E68 00011DC8 7F A3 EB 78 */ mr r3, r29 /* 80014E6C 00011DCC 7F E5 FB 78 */ mr r5, r31 /* 80014E70 00011DD0 38 81 01 D0 */ addi r4, r1, 0x1d0 /* 80014E74 00011DD4 48 27 21 01 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf /* 80014E78 00011DD8 48 00 08 5C */ b lbl_800156D4 lbl_80014E7C: /* 80014E7C 00011DDC 88 1D 07 60 */ lbz r0, 0x760(r29) /* 80014E80 00011DE0 28 00 00 00 */ cmplwi r0, 0 /* 80014E84 00011DE4 41 82 00 18 */ beq lbl_80014E9C /* 80014E88 00011DE8 FC 20 F8 90 */ fmr f1, f31 /* 80014E8C 00011DEC 7F A3 EB 78 */ mr r3, r29 /* 80014E90 00011DF0 7F E4 FB 78 */ mr r4, r31 /* 80014E94 00011DF4 48 00 08 95 */ bl ProcessFrozenInput__7CPlayerFfR13CStateManager /* 80014E98 00011DF8 48 00 08 3C */ b lbl_800156D4 lbl_80014E9C: /* 80014E9C 00011DFC 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80014EA0 00011E00 2C 00 00 00 */ cmpwi r0, 0 /* 80014EA4 00011E04 40 82 03 84 */ bne lbl_80015228 /* 80014EA8 00011E08 80 7D 04 A0 */ lwz r3, 0x4a0(r29) /* 80014EAC 00011E0C 48 28 20 C1 */ bl Passes__Q27CPlayer12CInputFilterFv /* 80014EB0 00011E10 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80014EB4 00011E14 41 82 03 74 */ beq lbl_80015228 /* 80014EB8 00011E18 7F A3 EB 78 */ mr r3, r29 /* 80014EBC 00011E1C 81 9D 00 00 */ lwz r12, 0(r29) /* 80014EC0 00011E20 81 8C 00 6C */ lwz r12, 0x6c(r12) /* 80014EC4 00011E24 7D 89 03 A6 */ mtctr r12 /* 80014EC8 00011E28 4E 80 04 21 */ bctrl /* 80014ECC 00011E2C 3B 43 00 10 */ addi r26, r3, 0x10 /* 80014ED0 00011E30 7F A3 EB 78 */ mr r3, r29 /* 80014ED4 00011E34 81 9D 00 00 */ lwz r12, 0(r29) /* 80014ED8 00011E38 81 8C 00 6C */ lwz r12, 0x6c(r12) /* 80014EDC 00011E3C 7D 89 03 A6 */ mtctr r12 /* 80014EE0 00011E40 4E 80 04 21 */ bctrl /* 80014EE4 00011E44 81 83 00 00 */ lwz r12, 0(r3) /* 80014EE8 00011E48 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80014EEC 00011E4C 7D 89 03 A6 */ mtctr r12 /* 80014EF0 00011E50 4E 80 04 21 */ bctrl /* 80014EF4 00011E54 C0 5A 00 10 */ lfs f2, 0x10(r26) /* 80014EF8 00011E58 7C 79 1B 78 */ mr r25, r3 /* 80014EFC 00011E5C C0 62 81 20 */ lfs f3, lbl_805A9E40@sda21(r2) /* 80014F00 00011E60 38 61 00 B8 */ addi r3, r1, 0xb8 /* 80014F04 00011E64 C0 3A 00 14 */ lfs f1, 0x14(r26) /* 80014F08 00011E68 38 81 00 6C */ addi r4, r1, 0x6c /* 80014F0C 00011E6C C0 1A 00 0C */ lfs f0, 0xc(r26) /* 80014F10 00011E70 EC 42 18 2A */ fadds f2, f2, f3 /* 80014F14 00011E74 EC 21 18 2A */ fadds f1, f1, f3 /* 80014F18 00011E78 38 A1 00 60 */ addi r5, r1, 0x60 /* 80014F1C 00011E7C EC 00 18 2A */ fadds f0, f0, f3 /* 80014F20 00011E80 D0 41 00 64 */ stfs f2, 0x64(r1) /* 80014F24 00011E84 D0 01 00 60 */ stfs f0, 0x60(r1) /* 80014F28 00011E88 D0 21 00 68 */ stfs f1, 0x68(r1) /* 80014F2C 00011E8C C0 5A 00 04 */ lfs f2, 4(r26) /* 80014F30 00011E90 C0 3A 00 08 */ lfs f1, 8(r26) /* 80014F34 00011E94 C0 1A 00 00 */ lfs f0, 0(r26) /* 80014F38 00011E98 EC 42 18 28 */ fsubs f2, f2, f3 /* 80014F3C 00011E9C EC 21 18 28 */ fsubs f1, f1, f3 /* 80014F40 00011EA0 EC 00 18 28 */ fsubs f0, f0, f3 /* 80014F44 00011EA4 D0 41 00 70 */ stfs f2, 0x70(r1) /* 80014F48 00011EA8 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 80014F4C 00011EAC D0 21 00 74 */ stfs f1, 0x74(r1) /* 80014F50 00011EB0 48 32 35 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80014F54 00011EB4 7F 24 CB 78 */ mr r4, r25 /* 80014F58 00011EB8 38 61 01 A8 */ addi r3, r1, 0x1a8 /* 80014F5C 00011EBC 48 2B A9 59 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList /* 80014F60 00011EC0 C0 A1 00 B8 */ lfs f5, 0xb8(r1) /* 80014F64 00011EC4 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha /* 80014F68 00011EC8 C0 81 00 BC */ lfs f4, 0xbc(r1) /* 80014F6C 00011ECC 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l /* 80014F70 00011ED0 C0 61 00 C0 */ lfs f3, 0xc0(r1) /* 80014F74 00011ED4 7F A3 EB 78 */ mr r3, r29 /* 80014F78 00011ED8 C0 41 00 C4 */ lfs f2, 0xc4(r1) /* 80014F7C 00011EDC C0 21 00 C8 */ lfs f1, 0xc8(r1) /* 80014F80 00011EE0 C0 01 00 CC */ lfs f0, 0xcc(r1) /* 80014F84 00011EE4 90 01 01 A8 */ stw r0, 0x1a8(r1) /* 80014F88 00011EE8 D0 A1 01 B8 */ stfs f5, 0x1b8(r1) /* 80014F8C 00011EEC D0 81 01 BC */ stfs f4, 0x1bc(r1) /* 80014F90 00011EF0 D0 61 01 C0 */ stfs f3, 0x1c0(r1) /* 80014F94 00011EF4 D0 41 01 C4 */ stfs f2, 0x1c4(r1) /* 80014F98 00011EF8 D0 21 01 C8 */ stfs f1, 0x1c8(r1) /* 80014F9C 00011EFC D0 01 01 CC */ stfs f0, 0x1cc(r1) /* 80014FA0 00011F00 48 10 63 D9 */ bl Stop__13CPhysicsActorFv /* 80014FA4 00011F04 7F 44 D3 78 */ mr r4, r26 /* 80014FA8 00011F08 38 61 00 A0 */ addi r3, r1, 0xa0 /* 80014FAC 00011F0C 38 BD 00 34 */ addi r5, r29, 0x34 /* 80014FB0 00011F10 48 32 29 4D */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f /* 80014FB4 00011F14 C0 41 00 AC */ lfs f2, 0xac(r1) /* 80014FB8 00011F18 38 61 00 88 */ addi r3, r1, 0x88 /* 80014FBC 00011F1C C0 C2 81 28 */ lfs f6, lbl_805A9E48@sda21(r2) /* 80014FC0 00011F20 38 81 00 54 */ addi r4, r1, 0x54 /* 80014FC4 00011F24 C0 21 00 B0 */ lfs f1, 0xb0(r1) /* 80014FC8 00011F28 38 A1 00 48 */ addi r5, r1, 0x48 /* 80014FCC 00011F2C C0 01 00 B4 */ lfs f0, 0xb4(r1) /* 80014FD0 00011F30 EC A2 30 2A */ fadds f5, f2, f6 /* 80014FD4 00011F34 C0 41 00 A0 */ lfs f2, 0xa0(r1) /* 80014FD8 00011F38 EC 81 30 2A */ fadds f4, f1, f6 /* 80014FDC 00011F3C C0 21 00 A4 */ lfs f1, 0xa4(r1) /* 80014FE0 00011F40 EC 60 30 2A */ fadds f3, f0, f6 /* 80014FE4 00011F44 C0 01 00 A8 */ lfs f0, 0xa8(r1) /* 80014FE8 00011F48 EC 42 30 28 */ fsubs f2, f2, f6 /* 80014FEC 00011F4C D0 A1 00 48 */ stfs f5, 0x48(r1) /* 80014FF0 00011F50 EC 21 30 28 */ fsubs f1, f1, f6 /* 80014FF4 00011F54 EC 00 30 28 */ fsubs f0, f0, f6 /* 80014FF8 00011F58 D0 81 00 4C */ stfs f4, 0x4c(r1) /* 80014FFC 00011F5C D0 61 00 50 */ stfs f3, 0x50(r1) /* 80015000 00011F60 D0 41 00 54 */ stfs f2, 0x54(r1) /* 80015004 00011F64 D0 21 00 58 */ stfs f1, 0x58(r1) /* 80015008 00011F68 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 8001500C 00011F6C 48 32 34 FD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80015010 00011F70 C0 A1 00 88 */ lfs f5, 0x88(r1) /* 80015014 00011F74 38 61 0A 04 */ addi r3, r1, 0xa04 /* 80015018 00011F78 C0 81 00 8C */ lfs f4, 0x8c(r1) /* 8001501C 00011F7C 38 81 00 D0 */ addi r4, r1, 0xd0 /* 80015020 00011F80 C0 61 00 90 */ lfs f3, 0x90(r1) /* 80015024 00011F84 C0 41 00 94 */ lfs f2, 0x94(r1) /* 80015028 00011F88 C0 21 00 98 */ lfs f1, 0x98(r1) /* 8001502C 00011F8C C0 01 00 9C */ lfs f0, 0x9c(r1) /* 80015030 00011F90 D0 A1 00 D0 */ stfs f5, 0xd0(r1) /* 80015034 00011F94 D0 81 00 D4 */ stfs f4, 0xd4(r1) /* 80015038 00011F98 D0 61 00 D8 */ stfs f3, 0xd8(r1) /* 8001503C 00011F9C D0 41 00 DC */ stfs f2, 0xdc(r1) /* 80015040 00011FA0 D0 21 00 E0 */ stfs f1, 0xe0(r1) /* 80015044 00011FA4 D0 01 00 E4 */ stfs f0, 0xe4(r1) /* 80015048 00011FA8 48 28 EA 49 */ bl __ct__19CAreaCollisionCacheFRC6CAABox /* 8001504C 00011FAC 7F E3 FB 78 */ mr r3, r31 /* 80015050 00011FB0 38 81 0A 04 */ addi r4, r1, 0xa04 /* 80015054 00011FB4 48 16 F6 71 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache /* 80015058 00011FB8 38 00 00 00 */ li r0, 0 /* 8001505C 00011FBC 7F E3 FB 78 */ mr r3, r31 /* 80015060 00011FC0 90 01 02 00 */ stw r0, 0x200(r1) /* 80015064 00011FC4 7F A5 EB 78 */ mr r5, r29 /* 80015068 00011FC8 38 81 02 00 */ addi r4, r1, 0x200 /* 8001506C 00011FCC 38 C1 00 D0 */ addi r6, r1, 0xd0 /* 80015070 00011FD0 48 03 76 8D */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" /* 80015074 00011FD4 7F E4 FB 78 */ mr r4, r31 /* 80015078 00011FD8 7F A6 EB 78 */ mr r6, r29 /* 8001507C 00011FDC 38 61 00 38 */ addi r3, r1, 0x38 /* 80015080 00011FE0 38 A1 0A 04 */ addi r5, r1, 0xa04 /* 80015084 00011FE4 38 E1 01 A8 */ addi r7, r1, 0x1a8 /* 80015088 00011FE8 39 01 02 00 */ addi r8, r1, 0x200 /* 8001508C 00011FEC 48 16 B3 61 */ bl "FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>" /* 80015090 00011FF0 88 01 00 44 */ lbz r0, 0x44(r1) /* 80015094 00011FF4 28 00 00 00 */ cmplwi r0, 0 /* 80015098 00011FF8 98 01 00 84 */ stb r0, 0x84(r1) /* 8001509C 00011FFC 41 82 00 24 */ beq lbl_800150C0 /* 800150A0 00012000 34 61 00 78 */ addic. r3, r1, 0x78 /* 800150A4 00012004 41 82 00 1C */ beq lbl_800150C0 /* 800150A8 00012008 C0 01 00 38 */ lfs f0, 0x38(r1) /* 800150AC 0001200C D0 03 00 00 */ stfs f0, 0(r3) /* 800150B0 00012010 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 800150B4 00012014 D0 03 00 04 */ stfs f0, 4(r3) /* 800150B8 00012018 C0 01 00 40 */ lfs f0, 0x40(r1) /* 800150BC 0001201C D0 03 00 08 */ stfs f0, 8(r3) lbl_800150C0: /* 800150C0 00012020 88 01 00 84 */ lbz r0, 0x84(r1) /* 800150C4 00012024 38 60 00 00 */ li r3, 0 /* 800150C8 00012028 98 61 00 44 */ stb r3, 0x44(r1) /* 800150CC 0001202C 28 00 00 00 */ cmplwi r0, 0 /* 800150D0 00012030 41 82 00 54 */ beq lbl_80015124 /* 800150D4 00012034 80 7D 04 A0 */ lwz r3, 0x4a0(r29) /* 800150D8 00012038 48 28 1D 4D */ bl Reset__Q27CPlayer12CInputFilterFv /* 800150DC 0001203C C0 BD 00 60 */ lfs f5, 0x60(r29) /* 800150E0 00012040 7F A3 EB 78 */ mr r3, r29 /* 800150E4 00012044 C0 9D 00 50 */ lfs f4, 0x50(r29) /* 800150E8 00012048 38 81 00 2C */ addi r4, r1, 0x2c /* 800150EC 0001204C C0 7D 00 40 */ lfs f3, 0x40(r29) /* 800150F0 00012050 C0 41 00 7C */ lfs f2, 0x7c(r1) /* 800150F4 00012054 C0 21 00 80 */ lfs f1, 0x80(r1) /* 800150F8 00012058 C0 01 00 78 */ lfs f0, 0x78(r1) /* 800150FC 0001205C EC 44 10 2A */ fadds f2, f4, f2 /* 80015100 00012060 EC 25 08 2A */ fadds f1, f5, f1 /* 80015104 00012064 D0 61 00 20 */ stfs f3, 0x20(r1) /* 80015108 00012068 EC 03 00 2A */ fadds f0, f3, f0 /* 8001510C 0001206C D0 81 00 24 */ stfs f4, 0x24(r1) /* 80015110 00012070 D0 A1 00 28 */ stfs f5, 0x28(r1) /* 80015114 00012074 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 80015118 00012078 D0 41 00 30 */ stfs f2, 0x30(r1) /* 8001511C 0001207C D0 21 00 34 */ stfs f1, 0x34(r1) /* 80015120 00012080 48 03 DD 6D */ bl SetTranslation__6CActorFRC9CVector3f lbl_80015124: /* 80015124 00012084 80 A1 02 00 */ lwz r5, 0x200(r1) /* 80015128 00012088 38 60 00 00 */ li r3, 0 /* 8001512C 0001208C 98 61 00 84 */ stb r3, 0x84(r1) /* 80015130 00012090 2C 05 00 00 */ cmpwi r5, 0 /* 80015134 00012094 40 81 00 40 */ ble lbl_80015174 /* 80015138 00012098 2C 05 00 08 */ cmpwi r5, 8 /* 8001513C 0001209C 38 85 FF F8 */ addi r4, r5, -8 /* 80015140 000120A0 40 81 00 20 */ ble lbl_80015160 /* 80015144 000120A4 38 04 00 07 */ addi r0, r4, 7 /* 80015148 000120A8 54 00 E8 FE */ srwi r0, r0, 3 /* 8001514C 000120AC 7C 09 03 A6 */ mtctr r0 /* 80015150 000120B0 2C 04 00 00 */ cmpwi r4, 0 /* 80015154 000120B4 40 81 00 0C */ ble lbl_80015160 lbl_80015158: /* 80015158 000120B8 38 63 00 08 */ addi r3, r3, 8 /* 8001515C 000120BC 42 00 FF FC */ bdnz lbl_80015158 lbl_80015160: /* 80015160 000120C0 7C 03 28 50 */ subf r0, r3, r5 /* 80015164 000120C4 7C 09 03 A6 */ mtctr r0 /* 80015168 000120C8 7C 03 28 00 */ cmpw r3, r5 /* 8001516C 000120CC 40 80 00 08 */ bge lbl_80015174 lbl_80015170: /* 80015170 000120D0 42 00 00 00 */ bdnz lbl_80015170 lbl_80015174: /* 80015174 000120D4 38 60 00 00 */ li r3, 0 /* 80015178 000120D8 34 E1 0A 1C */ addic. r7, r1, 0xa1c /* 8001517C 000120DC 90 61 02 00 */ stw r3, 0x200(r1) /* 80015180 000120E0 41 82 00 90 */ beq lbl_80015210 /* 80015184 000120E4 38 C7 00 04 */ addi r6, r7, 4 /* 80015188 000120E8 48 00 00 74 */ b lbl_800151FC lbl_8001518C: /* 8001518C 000120EC 28 06 00 00 */ cmplwi r6, 0 /* 80015190 000120F0 41 82 00 64 */ beq lbl_800151F4 /* 80015194 000120F4 34 06 00 04 */ addic. r0, r6, 4 /* 80015198 000120F8 41 82 00 5C */ beq lbl_800151F4 /* 8001519C 000120FC 81 06 00 04 */ lwz r8, 4(r6) /* 800151A0 00012100 38 80 00 00 */ li r4, 0 /* 800151A4 00012104 2C 08 00 00 */ cmpwi r8, 0 /* 800151A8 00012108 40 81 00 44 */ ble lbl_800151EC /* 800151AC 0001210C 2C 08 00 08 */ cmpwi r8, 8 /* 800151B0 00012110 38 A8 FF F8 */ addi r5, r8, -8 /* 800151B4 00012114 40 81 00 20 */ ble lbl_800151D4 /* 800151B8 00012118 38 05 00 07 */ addi r0, r5, 7 /* 800151BC 0001211C 54 00 E8 FE */ srwi r0, r0, 3 /* 800151C0 00012120 7C 09 03 A6 */ mtctr r0 /* 800151C4 00012124 2C 05 00 00 */ cmpwi r5, 0 /* 800151C8 00012128 40 81 00 0C */ ble lbl_800151D4 lbl_800151CC: /* 800151CC 0001212C 38 84 00 08 */ addi r4, r4, 8 /* 800151D0 00012130 42 00 FF FC */ bdnz lbl_800151CC lbl_800151D4: /* 800151D4 00012134 7C 04 40 50 */ subf r0, r4, r8 /* 800151D8 00012138 7C 09 03 A6 */ mtctr r0 /* 800151DC 0001213C 7C 04 40 00 */ cmpw r4, r8 /* 800151E0 00012140 40 80 00 0C */ bge lbl_800151EC lbl_800151E4: /* 800151E4 00012144 38 84 00 01 */ addi r4, r4, 1 /* 800151E8 00012148 42 00 FF FC */ bdnz lbl_800151E4 lbl_800151EC: /* 800151EC 0001214C 38 00 00 00 */ li r0, 0 /* 800151F0 00012150 90 06 00 04 */ stw r0, 4(r6) lbl_800151F4: /* 800151F4 00012154 38 C6 09 0C */ addi r6, r6, 0x90c /* 800151F8 00012158 38 63 00 01 */ addi r3, r3, 1 lbl_800151FC: /* 800151FC 0001215C 80 07 00 00 */ lwz r0, 0(r7) /* 80015200 00012160 7C 03 00 00 */ cmpw r3, r0 /* 80015204 00012164 41 80 FF 88 */ blt lbl_8001518C /* 80015208 00012168 38 00 00 00 */ li r0, 0 /* 8001520C 0001216C 90 07 00 00 */ stw r0, 0(r7) lbl_80015210: /* 80015210 00012170 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha /* 80015214 00012174 3C 60 80 3E */ lis r3, lbl_803D97E4@ha /* 80015218 00012178 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l /* 8001521C 0001217C 90 01 01 A8 */ stw r0, 0x1a8(r1) /* 80015220 00012180 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l /* 80015224 00012184 90 01 01 A8 */ stw r0, 0x1a8(r1) lbl_80015228: /* 80015228 00012188 7F A3 EB 78 */ mr r3, r29 /* 8001522C 0001218C 7F C4 F3 78 */ mr r4, r30 /* 80015230 00012190 7F E5 FB 78 */ mr r5, r31 /* 80015234 00012194 48 16 54 35 */ bl UpdateGrappleState__7CPlayerFRC11CFinalInputR13CStateManager /* 80015238 00012198 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 8001523C 0001219C 2C 00 00 01 */ cmpwi r0, 1 /* 80015240 000121A0 40 82 01 04 */ bne lbl_80015344 /* 80015244 000121A4 A0 7D 02 6C */ lhz r3, 0x26c(r29) /* 80015248 000121A8 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) /* 8001524C 000121AC A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80015250 000121B0 C3 A4 01 E4 */ lfs f29, 0x1e4(r4) /* 80015254 000121B4 7C 03 00 40 */ cmplw r3, r0 /* 80015258 000121B8 C3 C4 01 E8 */ lfs f30, 0x1e8(r4) /* 8001525C 000121BC 40 82 00 18 */ bne lbl_80015274 /* 80015260 000121C0 7F A3 EB 78 */ mr r3, r29 /* 80015264 000121C4 7F E4 FB 78 */ mr r4, r31 /* 80015268 000121C8 4B FF D7 7D */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager /* 8001526C 000121CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015270 000121D0 41 82 00 08 */ beq lbl_80015278 lbl_80015274: /* 80015274 000121D4 C3 A2 81 34 */ lfs f29, lbl_805A9E54@sda21(r2) lbl_80015278: /* 80015278 000121D8 FC 20 E8 90 */ fmr f1, f29 /* 8001527C 000121DC 7F C4 F3 78 */ mr r4, r30 /* 80015280 000121E0 FC 40 F0 90 */ fmr f2, f30 /* 80015284 000121E4 38 61 01 18 */ addi r3, r1, 0x118 /* 80015288 000121E8 48 33 3C 1D */ bl ScaleAnalogueSticks__11CFinalInputCFff /* 8001528C 000121EC C1 21 01 18 */ lfs f9, 0x118(r1) /* 80015290 000121F0 FC 20 F8 90 */ fmr f1, f31 /* 80015294 000121F4 81 61 01 1C */ lwz r11, 0x11c(r1) /* 80015298 000121F8 7F E5 FB 78 */ mr r5, r31 /* 8001529C 000121FC C1 01 01 20 */ lfs f8, 0x120(r1) /* 800152A0 00012200 38 81 01 78 */ addi r4, r1, 0x178 /* 800152A4 00012204 C0 E1 01 24 */ lfs f7, 0x124(r1) /* 800152A8 00012208 C0 C1 01 28 */ lfs f6, 0x128(r1) /* 800152AC 0001220C C0 A1 01 2C */ lfs f5, 0x12c(r1) /* 800152B0 00012210 C0 81 01 30 */ lfs f4, 0x130(r1) /* 800152B4 00012214 C0 61 01 34 */ lfs f3, 0x134(r1) /* 800152B8 00012218 89 41 01 38 */ lbz r10, 0x138(r1) /* 800152BC 0001221C 89 21 01 39 */ lbz r9, 0x139(r1) /* 800152C0 00012220 89 01 01 3A */ lbz r8, 0x13a(r1) /* 800152C4 00012224 88 E1 01 3B */ lbz r7, 0x13b(r1) /* 800152C8 00012228 C0 41 01 3C */ lfs f2, 0x13c(r1) /* 800152CC 0001222C C0 01 01 40 */ lfs f0, 0x140(r1) /* 800152D0 00012230 88 C1 01 44 */ lbz r6, 0x144(r1) /* 800152D4 00012234 88 61 01 45 */ lbz r3, 0x145(r1) /* 800152D8 00012238 88 01 01 46 */ lbz r0, 0x146(r1) /* 800152DC 0001223C D1 21 01 78 */ stfs f9, 0x178(r1) /* 800152E0 00012240 91 61 01 7C */ stw r11, 0x17c(r1) /* 800152E4 00012244 D1 01 01 80 */ stfs f8, 0x180(r1) /* 800152E8 00012248 D0 E1 01 84 */ stfs f7, 0x184(r1) /* 800152EC 0001224C D0 C1 01 88 */ stfs f6, 0x188(r1) /* 800152F0 00012250 D0 A1 01 8C */ stfs f5, 0x18c(r1) /* 800152F4 00012254 D0 81 01 90 */ stfs f4, 0x190(r1) /* 800152F8 00012258 D0 61 01 94 */ stfs f3, 0x194(r1) /* 800152FC 0001225C 99 41 01 98 */ stb r10, 0x198(r1) /* 80015300 00012260 99 21 01 99 */ stb r9, 0x199(r1) /* 80015304 00012264 99 01 01 9A */ stb r8, 0x19a(r1) /* 80015308 00012268 98 E1 01 9B */ stb r7, 0x19b(r1) /* 8001530C 0001226C D0 41 01 9C */ stfs f2, 0x19c(r1) /* 80015310 00012270 D0 01 01 A0 */ stfs f0, 0x1a0(r1) /* 80015314 00012274 98 C1 01 A4 */ stb r6, 0x1a4(r1) /* 80015318 00012278 98 61 01 A5 */ stb r3, 0x1a5(r1) /* 8001531C 0001227C 98 01 01 A6 */ stb r0, 0x1a6(r1) /* 80015320 00012280 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80015324 00012284 48 0E 3A 05 */ bl ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf /* 80015328 00012288 FC 20 F8 90 */ fmr f1, f31 /* 8001532C 0001228C 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80015330 00012290 7F E4 FB 78 */ mr r4, r31 /* 80015334 00012294 48 0E 09 19 */ bl UpdateBallDynamics__10CMorphBallFR13CStateManagerf /* 80015338 00012298 80 7D 04 A0 */ lwz r3, 0x4a0(r29) /* 8001533C 0001229C 48 28 1A E9 */ bl Reset__Q27CPlayer12CInputFilterFv /* 80015340 000122A0 48 00 01 70 */ b lbl_800154B0 lbl_80015344: /* 80015344 000122A4 80 1D 03 04 */ lwz r0, 0x304(r29) /* 80015348 000122A8 2C 00 00 05 */ cmpwi r0, 5 /* 8001534C 000122AC 40 82 00 1C */ bne lbl_80015368 /* 80015350 000122B0 FC 20 F8 90 */ fmr f1, f31 /* 80015354 000122B4 7F A3 EB 78 */ mr r3, r29 /* 80015358 000122B8 7F C4 F3 78 */ mr r4, r30 /* 8001535C 000122BC 7F E5 FB 78 */ mr r5, r31 /* 80015360 000122C0 48 16 43 4D */ bl ApplyGrappleForces__7CPlayerFRC11CFinalInputR13CStateManagerf /* 80015364 000122C4 48 00 00 D0 */ b lbl_80015434 lbl_80015368: /* 80015368 000122C8 7F A3 EB 78 */ mr r3, r29 /* 8001536C 000122CC 7F E4 FB 78 */ mr r4, r31 /* 80015370 000122D0 4B FF D6 75 */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager /* 80015374 000122D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015378 000122D8 41 82 00 0C */ beq lbl_80015384 /* 8001537C 000122DC C0 22 81 28 */ lfs f1, lbl_805A9E48@sda21(r2) /* 80015380 000122E0 48 00 00 08 */ b lbl_80015388 lbl_80015384: /* 80015384 000122E4 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) lbl_80015388: /* 80015388 000122E8 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 8001538C 000122EC 7F C4 F3 78 */ mr r4, r30 /* 80015390 000122F0 38 61 00 E8 */ addi r3, r1, 0xe8 /* 80015394 000122F4 48 33 3B 11 */ bl ScaleAnalogueSticks__11CFinalInputCFff /* 80015398 000122F8 C1 21 00 E8 */ lfs f9, 0xe8(r1) /* 8001539C 000122FC FC 20 F8 90 */ fmr f1, f31 /* 800153A0 00012300 81 81 00 EC */ lwz r12, 0xec(r1) /* 800153A4 00012304 7F A3 EB 78 */ mr r3, r29 /* 800153A8 00012308 C1 01 00 F0 */ lfs f8, 0xf0(r1) /* 800153AC 0001230C 7F E5 FB 78 */ mr r5, r31 /* 800153B0 00012310 C0 E1 00 F4 */ lfs f7, 0xf4(r1) /* 800153B4 00012314 C0 C1 00 F8 */ lfs f6, 0xf8(r1) /* 800153B8 00012318 38 81 01 48 */ addi r4, r1, 0x148 /* 800153BC 0001231C C0 A1 00 FC */ lfs f5, 0xfc(r1) /* 800153C0 00012320 C0 81 01 00 */ lfs f4, 0x100(r1) /* 800153C4 00012324 C0 61 01 04 */ lfs f3, 0x104(r1) /* 800153C8 00012328 89 61 01 08 */ lbz r11, 0x108(r1) /* 800153CC 0001232C 89 41 01 09 */ lbz r10, 0x109(r1) /* 800153D0 00012330 89 21 01 0A */ lbz r9, 0x10a(r1) /* 800153D4 00012334 89 01 01 0B */ lbz r8, 0x10b(r1) /* 800153D8 00012338 C0 41 01 0C */ lfs f2, 0x10c(r1) /* 800153DC 0001233C C0 01 01 10 */ lfs f0, 0x110(r1) /* 800153E0 00012340 88 E1 01 14 */ lbz r7, 0x114(r1) /* 800153E4 00012344 88 C1 01 15 */ lbz r6, 0x115(r1) /* 800153E8 00012348 88 01 01 16 */ lbz r0, 0x116(r1) /* 800153EC 0001234C D1 21 01 48 */ stfs f9, 0x148(r1) /* 800153F0 00012350 91 81 01 4C */ stw r12, 0x14c(r1) /* 800153F4 00012354 D1 01 01 50 */ stfs f8, 0x150(r1) /* 800153F8 00012358 D0 E1 01 54 */ stfs f7, 0x154(r1) /* 800153FC 0001235C D0 C1 01 58 */ stfs f6, 0x158(r1) /* 80015400 00012360 D0 A1 01 5C */ stfs f5, 0x15c(r1) /* 80015404 00012364 D0 81 01 60 */ stfs f4, 0x160(r1) /* 80015408 00012368 D0 61 01 64 */ stfs f3, 0x164(r1) /* 8001540C 0001236C 99 61 01 68 */ stb r11, 0x168(r1) /* 80015410 00012370 99 41 01 69 */ stb r10, 0x169(r1) /* 80015414 00012374 99 21 01 6A */ stb r9, 0x16a(r1) /* 80015418 00012378 99 01 01 6B */ stb r8, 0x16b(r1) /* 8001541C 0001237C D0 41 01 6C */ stfs f2, 0x16c(r1) /* 80015420 00012380 D0 01 01 70 */ stfs f0, 0x170(r1) /* 80015424 00012384 98 E1 01 74 */ stb r7, 0x174(r1) /* 80015428 00012388 98 C1 01 75 */ stb r6, 0x175(r1) /* 8001542C 0001238C 98 01 01 76 */ stb r0, 0x176(r1) /* 80015430 00012390 48 27 1B 45 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf lbl_80015434: /* 80015434 00012394 7F A3 EB 78 */ mr r3, r29 /* 80015438 00012398 7F E4 FB 78 */ mr r4, r31 /* 8001543C 0001239C 48 00 32 A9 */ bl ShouldSampleFailsafe__7CPlayerCFv /* 80015440 000123A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015444 000123A4 41 82 00 6C */ beq lbl_800154B0 /* 80015448 000123A8 80 1D 02 58 */ lwz r0, 0x258(r29) /* 8001544C 000123AC 3B 40 00 02 */ li r26, 2 /* 80015450 000123B0 2C 00 00 02 */ cmpwi r0, 2 /* 80015454 000123B4 40 82 00 0C */ bne lbl_80015460 /* 80015458 000123B8 3B 40 00 01 */ li r26, 1 /* 8001545C 000123BC 48 00 00 10 */ b lbl_8001546C lbl_80015460: /* 80015460 000123C0 2C 00 00 01 */ cmpwi r0, 1 /* 80015464 000123C4 40 82 00 08 */ bne lbl_8001546C /* 80015468 000123C8 3B 40 00 00 */ li r26, 0 lbl_8001546C: /* 8001546C 000123CC C0 9D 00 60 */ lfs f4, 0x60(r29) /* 80015470 000123D0 38 61 00 0C */ addi r3, r1, 0xc /* 80015474 000123D4 C0 7D 00 50 */ lfs f3, 0x50(r29) /* 80015478 000123D8 C0 1D 00 40 */ lfs f0, 0x40(r29) /* 8001547C 000123DC C0 5E 00 0C */ lfs f2, 0xc(r30) /* 80015480 000123E0 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80015484 000123E4 C0 3E 00 08 */ lfs f1, 8(r30) /* 80015488 000123E8 D0 61 00 18 */ stfs f3, 0x18(r1) /* 8001548C 000123EC D0 81 00 1C */ stfs f4, 0x1c(r1) /* 80015490 000123F0 83 3D 04 A0 */ lwz r25, 0x4a0(r29) /* 80015494 000123F4 48 2F ED 6D */ bl __ct__9CVector2fFff /* 80015498 000123F8 7C 67 1B 78 */ mr r7, r3 /* 8001549C 000123FC 7F 23 CB 78 */ mr r3, r25 /* 800154A0 00012400 7F 44 D3 78 */ mr r4, r26 /* 800154A4 00012404 38 A1 00 14 */ addi r5, r1, 0x14 /* 800154A8 00012408 38 DD 01 38 */ addi r6, r29, 0x138 /* 800154AC 0001240C 48 28 20 0D */ bl AddSample__Q27CPlayer12CInputFilterFiRC9CVector3fRC9CVector3fRC9CVector2f lbl_800154B0: /* 800154B0 00012410 7F A3 EB 78 */ mr r3, r29 /* 800154B4 00012414 7F C4 F3 78 */ mr r4, r30 /* 800154B8 00012418 4B FF F1 61 */ bl ComputeFreeLook__7CPlayerFRC11CFinalInput /* 800154BC 0001241C FC 20 F8 90 */ fmr f1, f31 /* 800154C0 00012420 7F A3 EB 78 */ mr r3, r29 /* 800154C4 00012424 7F C4 F3 78 */ mr r4, r30 /* 800154C8 00012428 7F E5 FB 78 */ mr r5, r31 /* 800154CC 0001242C 48 00 1A 19 */ bl UpdateFreeLookState__7CPlayerFRC11CFinalInputfR13CStateManager /* 800154D0 00012430 7F A3 EB 78 */ mr r3, r29 /* 800154D4 00012434 7F C4 F3 78 */ mr r4, r30 /* 800154D8 00012438 7F E5 FB 78 */ mr r5, r31 /* 800154DC 0001243C 48 16 8C F5 */ bl UpdateOrbitInput__7CPlayerFRC11CFinalInputR13CStateManager /* 800154E0 00012440 7F A3 EB 78 */ mr r3, r29 /* 800154E4 00012444 7F E4 FB 78 */ mr r4, r31 /* 800154E8 00012448 48 16 8C A1 */ bl UpdateOrbitZone__7CPlayerFR13CStateManager /* 800154EC 0001244C 7F A3 EB 78 */ mr r3, r29 /* 800154F0 00012450 7F C4 F3 78 */ mr r4, r30 /* 800154F4 00012454 7F E5 FB 78 */ mr r5, r31 /* 800154F8 00012458 48 00 49 29 */ bl UpdateGunState__7CPlayerFRC11CFinalInputR13CStateManager /* 800154FC 0001245C FC 20 F8 90 */ fmr f1, f31 /* 80015500 00012460 7F A3 EB 78 */ mr r3, r29 /* 80015504 00012464 7F C4 F3 78 */ mr r4, r30 /* 80015508 00012468 7F E5 FB 78 */ mr r5, r31 /* 8001550C 0001246C 48 00 30 25 */ bl UpdateVisorState__7CPlayerFRC11CFinalInputfR13CStateManager /* 80015510 00012470 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80015514 00012474 2C 00 00 01 */ cmpwi r0, 1 /* 80015518 00012478 41 82 00 18 */ beq lbl_80015530 /* 8001551C 0001247C 2C 00 00 00 */ cmpwi r0, 0 /* 80015520 00012480 40 82 01 2C */ bne lbl_8001564C /* 80015524 00012484 80 1D 04 98 */ lwz r0, 0x498(r29) /* 80015528 00012488 2C 00 00 02 */ cmpwi r0, 2 /* 8001552C 0001248C 40 82 01 20 */ bne lbl_8001564C lbl_80015530: /* 80015530 00012490 80 7D 04 90 */ lwz r3, 0x490(r29) /* 80015534 00012494 7F C4 F3 78 */ mr r4, r30 /* 80015538 00012498 7F E5 FB 78 */ mr r5, r31 /* 8001553C 0001249C 48 02 B2 6D */ bl ProcessInput__10CPlayerGunFRC11CFinalInputR13CStateManager /* 80015540 000124A0 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80015544 000124A4 2C 00 00 01 */ cmpwi r0, 1 /* 80015548 000124A8 40 82 01 04 */ bne lbl_8001564C /* 8001554C 000124AC A0 7D 02 6C */ lhz r3, 0x26c(r29) /* 80015550 000124B0 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80015554 000124B4 7C 03 00 40 */ cmplw r3, r0 /* 80015558 000124B8 41 82 00 F4 */ beq lbl_8001564C /* 8001555C 000124BC 7F C4 F3 78 */ mr r4, r30 /* 80015560 000124C0 38 60 00 02 */ li r3, 2 /* 80015564 000124C4 4B FF 72 6D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80015568 000124C8 7C 79 1B 78 */ mr r25, r3 /* 8001556C 000124CC 7F C4 F3 78 */ mr r4, r30 /* 80015570 000124D0 38 60 00 03 */ li r3, 3 /* 80015574 000124D4 4B FF 72 5D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80015578 000124D8 7C 7A 1B 78 */ mr r26, r3 /* 8001557C 000124DC 7F C4 F3 78 */ mr r4, r30 /* 80015580 000124E0 38 60 00 00 */ li r3, 0 /* 80015584 000124E4 4B FF 72 4D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80015588 000124E8 7C 7B 1B 78 */ mr r27, r3 /* 8001558C 000124EC 7F C4 F3 78 */ mr r4, r30 /* 80015590 000124F0 38 60 00 01 */ li r3, 1 /* 80015594 000124F4 4B FF 72 3D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80015598 000124F8 7C 7C 1B 78 */ mr r28, r3 /* 8001559C 000124FC 7F C4 F3 78 */ mr r4, r30 /* 800155A0 00012500 38 60 00 0A */ li r3, 0xa /* 800155A4 00012504 4B FF 72 2D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800155A8 00012508 57 20 06 3F */ clrlwi. r0, r25, 0x18 /* 800155AC 0001250C 40 82 00 24 */ bne lbl_800155D0 /* 800155B0 00012510 57 40 06 3F */ clrlwi. r0, r26, 0x18 /* 800155B4 00012514 40 82 00 1C */ bne lbl_800155D0 /* 800155B8 00012518 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 800155BC 0001251C 40 82 00 14 */ bne lbl_800155D0 /* 800155C0 00012520 57 80 06 3F */ clrlwi. r0, r28, 0x18 /* 800155C4 00012524 40 82 00 0C */ bne lbl_800155D0 /* 800155C8 00012528 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800155CC 0001252C 41 82 00 30 */ beq lbl_800155FC lbl_800155D0: /* 800155D0 00012530 C0 02 81 D4 */ lfs f0, lbl_805A9EF4@sda21(r2) /* 800155D4 00012534 C0 3D 0A 28 */ lfs f1, 0xa28(r29) /* 800155D8 00012538 EC 40 07 F2 */ fmuls f2, f0, f31 /* 800155DC 0001253C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 800155E0 00012540 EC 3F 08 BA */ fmadds f1, f31, f2, f1 /* 800155E4 00012544 D0 3D 0A 28 */ stfs f1, 0xa28(r29) /* 800155E8 00012548 C0 3D 0A 28 */ lfs f1, 0xa28(r29) /* 800155EC 0001254C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800155F0 00012550 40 81 00 5C */ ble lbl_8001564C /* 800155F4 00012554 D0 1D 0A 28 */ stfs f0, 0xa28(r29) /* 800155F8 00012558 48 00 00 54 */ b lbl_8001564C lbl_800155FC: /* 800155FC 0001255C C0 02 81 D8 */ lfs f0, lbl_805A9EF8@sda21(r2) /* 80015600 00012560 C0 3D 0A 28 */ lfs f1, 0xa28(r29) /* 80015604 00012564 EC 40 07 F2 */ fmuls f2, f0, f31 /* 80015608 00012568 C0 0D 80 D4 */ lfs f0, lbl_805A6C94@sda21(r13) /* 8001560C 0001256C EC 21 10 BA */ fmadds f1, f1, f2, f2 /* 80015610 00012570 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80015614 00012574 D0 21 00 08 */ stfs f1, 8(r1) /* 80015618 00012578 40 80 00 0C */ bge lbl_80015624 /* 8001561C 0001257C 38 6D 80 D4 */ addi r3, r13, lbl_805A6C94@sda21 /* 80015620 00012580 48 00 00 08 */ b lbl_80015628 lbl_80015624: /* 80015624 00012584 38 61 00 08 */ addi r3, r1, 8 lbl_80015628: /* 80015628 00012588 C0 43 00 00 */ lfs f2, 0(r3) /* 8001562C 0001258C C0 3D 0A 28 */ lfs f1, 0xa28(r29) /* 80015630 00012590 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015634 00012594 EC 3F 08 BC */ fnmsubs f1, f31, f2, f1 /* 80015638 00012598 D0 3D 0A 28 */ stfs f1, 0xa28(r29) /* 8001563C 0001259C C0 3D 0A 28 */ lfs f1, 0xa28(r29) /* 80015640 000125A0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015644 000125A4 40 80 00 08 */ bge lbl_8001564C /* 80015648 000125A8 D0 1D 0A 28 */ stfs f0, 0xa28(r29) lbl_8001564C: /* 8001564C 000125AC 7F A3 EB 78 */ mr r3, r29 /* 80015650 000125B0 7F E4 FB 78 */ mr r4, r31 /* 80015654 000125B4 48 00 1D A1 */ bl UpdateCameraState__7CPlayerFR13CStateManager /* 80015658 000125B8 FC 20 F8 90 */ fmr f1, f31 /* 8001565C 000125BC 7F A3 EB 78 */ mr r3, r29 /* 80015660 000125C0 7F C4 F3 78 */ mr r4, r30 /* 80015664 000125C4 7F E5 FB 78 */ mr r5, r31 /* 80015668 000125C8 4B FF F5 19 */ bl UpdateMorphBallState__7CPlayerFfRC11CFinalInputR13CStateManager /* 8001566C 000125CC FC 20 F8 90 */ fmr f1, f31 /* 80015670 000125D0 7F A3 EB 78 */ mr r3, r29 /* 80015674 000125D4 7F C4 F3 78 */ mr r4, r30 /* 80015678 000125D8 48 00 17 25 */ bl UpdateCameraTimers__7CPlayerFfRC11CFinalInput /* 8001567C 000125DC FC 20 F8 90 */ fmr f1, f31 /* 80015680 000125E0 7F A3 EB 78 */ mr r3, r29 /* 80015684 000125E4 7F C4 F3 78 */ mr r4, r30 /* 80015688 000125E8 7F E5 FB 78 */ mr r5, r31 /* 8001568C 000125EC 48 00 26 65 */ bl UpdateFootstepSounds__7CPlayerFRC11CFinalInputR13CStateManagerf /* 80015690 000125F0 C0 1D 02 A8 */ lfs f0, 0x2a8(r29) /* 80015694 000125F4 7F A3 EB 78 */ mr r3, r29 /* 80015698 000125F8 EC 00 F8 2A */ fadds f0, f0, f31 /* 8001569C 000125FC D0 1D 02 A8 */ stfs f0, 0x2a8(r29) /* 800156A0 00012600 48 26 F9 6D */ bl CheckSubmerged__7CPlayerCFv /* 800156A4 00012604 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800156A8 00012608 41 82 00 14 */ beq lbl_800156BC /* 800156AC 0001260C 7F A3 EB 78 */ mr r3, r29 /* 800156B0 00012610 38 80 00 00 */ li r4, 0 /* 800156B4 00012614 48 03 DC 71 */ bl SetSoundEventPitchBend__6CActorFi /* 800156B8 00012618 48 00 00 10 */ b lbl_800156C8 lbl_800156BC: /* 800156BC 0001261C 7F A3 EB 78 */ mr r3, r29 /* 800156C0 00012620 38 80 20 00 */ li r4, 0x2000 /* 800156C4 00012624 48 03 DC 61 */ bl SetSoundEventPitchBend__6CActorFi lbl_800156C8: /* 800156C8 00012628 7F A3 EB 78 */ mr r3, r29 /* 800156CC 0001262C 7F C4 F3 78 */ mr r4, r30 /* 800156D0 00012630 48 27 03 2D */ bl CalculateLeaveMorphBallDirection__7CPlayerFRC11CFinalInput lbl_800156D4: /* 800156D4 00012634 38 00 25 98 */ li r0, 0x2598 /* 800156D8 00012638 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 /* 800156DC 0001263C CB E1 25 90 */ lfd f31, 0x2590(r1) /* 800156E0 00012640 38 00 25 88 */ li r0, 0x2588 /* 800156E4 00012644 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 /* 800156E8 00012648 CB C1 25 80 */ lfd f30, 0x2580(r1) /* 800156EC 0001264C 38 00 25 78 */ li r0, 0x2578 /* 800156F0 00012650 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 /* 800156F4 00012654 CB A1 25 70 */ lfd f29, 0x2570(r1) /* 800156F8 00012658 BB 21 25 54 */ lmw r25, 0x2554(r1) /* 800156FC 0001265C 80 01 25 A4 */ lwz r0, 0x25a4(r1) /* 80015700 00012660 7C 08 03 A6 */ mtlr r0 /* 80015704 00012664 38 21 25 A0 */ addi r1, r1, 0x25a0 /* 80015708 00012668 4E 80 00 20 */ blr .global GetMaterial__19CCollisionPrimitiveCFv GetMaterial__19CCollisionPrimitiveCFv: /* 8001570C 0001266C 38 63 00 08 */ addi r3, r3, 8 /* 80015710 00012670 4E 80 00 20 */ blr .global StartLandingControlFreeze__7CPlayerFv StartLandingControlFreeze__7CPlayerFv: /* 80015714 00012674 38 00 00 01 */ li r0, 1 /* 80015718 00012678 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) /* 8001571C 0001267C 98 03 07 60 */ stb r0, 0x760(r3) /* 80015720 00012680 D0 03 07 64 */ stfs f0, 0x764(r3) /* 80015724 00012684 4E 80 00 20 */ blr .global ProcessFrozenInput__7CPlayerFfR13CStateManager ProcessFrozenInput__7CPlayerFfR13CStateManager: /* 80015728 00012688 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8001572C 0001268C 7C 08 02 A6 */ mflr r0 /* 80015730 00012690 90 01 00 54 */ stw r0, 0x54(r1) /* 80015734 00012694 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80015738 00012698 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8001573C 0001269C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80015740 000126A0 93 C1 00 38 */ stw r30, 0x38(r1) /* 80015744 000126A4 7C 7E 1B 78 */ mr r30, r3 /* 80015748 000126A8 FF E0 08 90 */ fmr f31, f1 /* 8001574C 000126AC C0 23 07 64 */ lfs f1, 0x764(r3) /* 80015750 000126B0 7C 9F 23 78 */ mr r31, r4 /* 80015754 000126B4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015758 000126B8 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8001575C 000126BC D0 23 07 64 */ stfs f1, 0x764(r3) /* 80015760 000126C0 C0 23 07 64 */ lfs f1, 0x764(r3) /* 80015764 000126C4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015768 000126C8 4C 40 13 82 */ cror 2, 0, 2 /* 8001576C 000126CC 40 82 00 0C */ bne lbl_80015778 /* 80015770 000126D0 48 00 00 79 */ bl EndLandingControlFreeze__7CPlayerFv /* 80015774 000126D4 48 00 00 54 */ b lbl_800157C8 lbl_80015778: /* 80015778 000126D8 38 61 00 08 */ addi r3, r1, 8 /* 8001577C 000126DC 48 33 46 A5 */ bl __ct__11CFinalInputFv /* 80015780 000126E0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80015784 000126E4 2C 00 00 01 */ cmpwi r0, 1 /* 80015788 000126E8 40 82 00 2C */ bne lbl_800157B4 /* 8001578C 000126EC FC 20 F8 90 */ fmr f1, f31 /* 80015790 000126F0 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80015794 000126F4 7F E5 FB 78 */ mr r5, r31 /* 80015798 000126F8 38 81 00 08 */ addi r4, r1, 8 /* 8001579C 000126FC 48 0E 35 8D */ bl ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf /* 800157A0 00012700 FC 20 F8 90 */ fmr f1, f31 /* 800157A4 00012704 80 7E 07 68 */ lwz r3, 0x768(r30) /* 800157A8 00012708 7F E4 FB 78 */ mr r4, r31 /* 800157AC 0001270C 48 0E 04 A1 */ bl UpdateBallDynamics__10CMorphBallFR13CStateManagerf /* 800157B0 00012710 48 00 00 18 */ b lbl_800157C8 lbl_800157B4: /* 800157B4 00012714 FC 20 F8 90 */ fmr f1, f31 /* 800157B8 00012718 7F C3 F3 78 */ mr r3, r30 /* 800157BC 0001271C 7F E5 FB 78 */ mr r5, r31 /* 800157C0 00012720 38 81 00 08 */ addi r4, r1, 8 /* 800157C4 00012724 48 27 17 B1 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf lbl_800157C8: /* 800157C8 00012728 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800157CC 0001272C 80 01 00 54 */ lwz r0, 0x54(r1) /* 800157D0 00012730 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800157D4 00012734 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800157D8 00012738 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800157DC 0001273C 7C 08 03 A6 */ mtlr r0 /* 800157E0 00012740 38 21 00 50 */ addi r1, r1, 0x50 /* 800157E4 00012744 4E 80 00 20 */ blr .global EndLandingControlFreeze__7CPlayerFv EndLandingControlFreeze__7CPlayerFv: /* 800157E8 00012748 38 00 00 00 */ li r0, 0 /* 800157EC 0001274C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800157F0 00012750 98 03 07 60 */ stb r0, 0x760(r3) /* 800157F4 00012754 D0 03 07 64 */ stfs f0, 0x764(r3) /* 800157F8 00012758 4E 80 00 20 */ blr .global UpdateFrozenState__7CPlayerFRC11CFinalInputR13CStateManager UpdateFrozenState__7CPlayerFRC11CFinalInputR13CStateManager: /* 800157FC 0001275C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80015800 00012760 7C 08 02 A6 */ mflr r0 /* 80015804 00012764 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015808 00012768 90 01 00 44 */ stw r0, 0x44(r1) /* 8001580C 0001276C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80015810 00012770 7C BF 2B 78 */ mr r31, r5 /* 80015814 00012774 93 C1 00 38 */ stw r30, 0x38(r1) /* 80015818 00012778 7C 9E 23 78 */ mr r30, r4 /* 8001581C 0001277C 93 A1 00 34 */ stw r29, 0x34(r1) /* 80015820 00012780 7C 7D 1B 78 */ mr r29, r3 /* 80015824 00012784 C0 43 07 50 */ lfs f2, 0x750(r3) /* 80015828 00012788 C0 24 00 00 */ lfs f1, 0(r4) /* 8001582C 0001278C EC 22 08 28 */ fsubs f1, f2, f1 /* 80015830 00012790 D0 23 07 50 */ stfs f1, 0x750(r3) /* 80015834 00012794 C0 23 07 50 */ lfs f1, 0x750(r3) /* 80015838 00012798 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001583C 0001279C 40 81 00 20 */ ble lbl_8001585C /* 80015840 000127A0 C0 22 81 DC */ lfs f1, lbl_805A9EFC@sda21(r2) /* 80015844 000127A4 38 A0 00 00 */ li r5, 0 /* 80015848 000127A8 C0 42 81 E0 */ lfs f2, lbl_805A9F00@sda21(r2) /* 8001584C 000127AC C0 62 81 E4 */ lfs f3, lbl_805A9F04@sda21(r2) /* 80015850 000127B0 80 9D 0A 08 */ lwz r4, 0xa08(r29) /* 80015854 000127B4 48 00 22 61 */ bl SetVisorSteam__7CPlayerFfffUib /* 80015858 000127B8 48 00 00 10 */ b lbl_80015868 lbl_8001585C: /* 8001585C 000127BC 7F E4 FB 78 */ mr r4, r31 /* 80015860 000127C0 48 00 01 CD */ bl UnFreeze__7CPlayerFR13CStateManager /* 80015864 000127C4 48 00 01 70 */ b lbl_800159D4 lbl_80015868: /* 80015868 000127C8 80 1D 02 58 */ lwz r0, 0x258(r29) /* 8001586C 000127CC 2C 00 00 00 */ cmpwi r0, 0 /* 80015870 000127D0 41 82 00 0C */ beq lbl_8001587C /* 80015874 000127D4 2C 00 00 04 */ cmpwi r0, 4 /* 80015878 000127D8 40 82 00 14 */ bne lbl_8001588C lbl_8001587C: /* 8001587C 000127DC 7F A3 EB 78 */ mr r3, r29 /* 80015880 000127E0 48 10 5A F9 */ bl Stop__13CPhysicsActorFv /* 80015884 000127E4 7F A3 EB 78 */ mr r3, r29 /* 80015888 000127E8 48 10 5A 2D */ bl ClearForcesAndTorques__13CPhysicsActorFv lbl_8001588C: /* 8001588C 000127EC C0 3E 00 00 */ lfs f1, 0(r30) /* 80015890 000127F0 38 7D 07 A0 */ addi r3, r29, 0x7a0 /* 80015894 000127F4 48 00 22 79 */ bl Update__Q27CPlayer11CVisorSteamFf /* 80015898 000127F8 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 8001589C 000127FC 2C 00 00 01 */ cmpwi r0, 1 /* 800158A0 00012800 41 82 00 20 */ beq lbl_800158C0 /* 800158A4 00012804 40 80 00 10 */ bge lbl_800158B4 /* 800158A8 00012808 2C 00 00 00 */ cmpwi r0, 0 /* 800158AC 0001280C 40 80 00 28 */ bge lbl_800158D4 /* 800158B0 00012810 48 00 01 24 */ b lbl_800159D4 lbl_800158B4: /* 800158B4 00012814 2C 00 00 04 */ cmpwi r0, 4 /* 800158B8 00012818 40 80 01 1C */ bge lbl_800159D4 /* 800158BC 0001281C 48 00 00 18 */ b lbl_800158D4 lbl_800158C0: /* 800158C0 00012820 80 7D 04 90 */ lwz r3, 0x490(r29) /* 800158C4 00012824 7F C4 F3 78 */ mr r4, r30 /* 800158C8 00012828 7F E5 FB 78 */ mr r5, r31 /* 800158CC 0001282C 48 02 AE DD */ bl ProcessInput__10CPlayerGunFRC11CFinalInputR13CStateManager /* 800158D0 00012830 48 00 01 04 */ b lbl_800159D4 lbl_800158D4: /* 800158D4 00012834 7F C4 F3 78 */ mr r4, r30 /* 800158D8 00012838 38 60 00 0A */ li r3, 0xa /* 800158DC 0001283C 4B FF 6E F5 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800158E0 00012840 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800158E4 00012844 41 82 00 F0 */ beq lbl_800159D4 /* 800158E8 00012848 80 1D 07 54 */ lwz r0, 0x754(r29) /* 800158EC 0001284C 2C 00 00 00 */ cmpwi r0, 0 /* 800158F0 00012850 41 82 00 40 */ beq lbl_80015930 /* 800158F4 00012854 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 800158F8 00012858 38 61 00 10 */ addi r3, r1, 0x10 /* 800158FC 0001285C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80015900 00012860 38 80 0C 37 */ li r4, 0xc37 /* 80015904 00012864 38 A0 00 7F */ li r5, 0x7f /* 80015908 00012868 38 C0 00 40 */ li r6, 0x40 /* 8001590C 0001286C 38 E0 00 00 */ li r7, 0 /* 80015910 00012870 39 20 00 00 */ li r9, 0 /* 80015914 00012874 48 2D 44 61 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80015918 00012878 80 01 00 10 */ lwz r0, 0x10(r1) /* 8001591C 0001287C 7F A3 EB 78 */ mr r3, r29 /* 80015920 00012880 38 81 00 14 */ addi r4, r1, 0x14 /* 80015924 00012884 90 01 00 14 */ stw r0, 0x14(r1) /* 80015928 00012888 4B FF B8 65 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 8001592C 0001288C 48 00 00 3C */ b lbl_80015968 lbl_80015930: /* 80015930 00012890 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80015934 00012894 38 61 00 08 */ addi r3, r1, 8 /* 80015938 00012898 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 8001593C 0001289C 38 80 0C 38 */ li r4, 0xc38 /* 80015940 000128A0 38 A0 00 7F */ li r5, 0x7f /* 80015944 000128A4 38 C0 00 40 */ li r6, 0x40 /* 80015948 000128A8 38 E0 00 00 */ li r7, 0 /* 8001594C 000128AC 39 20 00 00 */ li r9, 0 /* 80015950 000128B0 48 2D 44 25 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80015954 000128B4 80 01 00 08 */ lwz r0, 8(r1) /* 80015958 000128B8 7F A3 EB 78 */ mr r3, r29 /* 8001595C 000128BC 38 81 00 0C */ addi r4, r1, 0xc /* 80015960 000128C0 90 01 00 0C */ stw r0, 0xc(r1) /* 80015964 000128C4 4B FF B8 29 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_80015968: /* 80015968 000128C8 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) /* 8001596C 000128CC 80 7D 07 54 */ lwz r3, 0x754(r29) /* 80015970 000128D0 80 84 02 FC */ lwz r4, 0x2fc(r4) /* 80015974 000128D4 38 03 00 01 */ addi r0, r3, 1 /* 80015978 000128D8 7C 00 20 00 */ cmpw r0, r4 /* 8001597C 000128DC 90 1D 07 54 */ stw r0, 0x754(r29) /* 80015980 000128E0 40 81 00 54 */ ble lbl_800159D4 /* 80015984 000128E4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80015988 000128E8 38 63 00 A8 */ addi r3, r3, 0xa8 /* 8001598C 000128EC 48 1B F9 35 */ bl IncrementFrozenFpsCount__14CSystemOptionsFv /* 80015990 000128F0 38 61 00 20 */ addi r3, r1, 0x20 /* 80015994 000128F4 38 8D 81 14 */ addi r4, r13, lbl_805A6CD4@sda21 /* 80015998 000128F8 48 00 00 59 */ bl wstring_l__4rstlFPCw /* 8001599C 000128FC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800159A0 00012900 38 00 00 01 */ li r0, 1 /* 800159A4 00012904 98 01 00 1C */ stb r0, 0x1c(r1) /* 800159A8 00012908 38 61 00 20 */ addi r3, r1, 0x20 /* 800159AC 0001290C 38 81 00 18 */ addi r4, r1, 0x18 /* 800159B0 00012910 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800159B4 00012914 98 01 00 1D */ stb r0, 0x1d(r1) /* 800159B8 00012918 98 01 00 1E */ stb r0, 0x1e(r1) /* 800159BC 0001291C 48 05 62 AD */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo /* 800159C0 00012920 38 61 00 20 */ addi r3, r1, 0x20 /* 800159C4 00012924 48 32 77 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800159C8 00012928 7F A3 EB 78 */ mr r3, r29 /* 800159CC 0001292C 7F E4 FB 78 */ mr r4, r31 /* 800159D0 00012930 48 00 00 5D */ bl UnFreeze__7CPlayerFR13CStateManager lbl_800159D4: /* 800159D4 00012934 80 01 00 44 */ lwz r0, 0x44(r1) /* 800159D8 00012938 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800159DC 0001293C 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800159E0 00012940 83 A1 00 34 */ lwz r29, 0x34(r1) /* 800159E4 00012944 7C 08 03 A6 */ mtlr r0 /* 800159E8 00012948 38 21 00 40 */ addi r1, r1, 0x40 /* 800159EC 0001294C 4E 80 00 20 */ blr .global wstring_l__4rstlFPCw wstring_l__4rstlFPCw: /* 800159F0 00012950 90 83 00 00 */ stw r4, 0(r3) /* 800159F4 00012954 38 00 00 00 */ li r0, 0 /* 800159F8 00012958 7C 85 23 78 */ mr r5, r4 /* 800159FC 0001295C 90 03 00 04 */ stw r0, 4(r3) /* 80015A00 00012960 48 00 00 08 */ b lbl_80015A08 lbl_80015A04: /* 80015A04 00012964 38 A5 00 02 */ addi r5, r5, 2 lbl_80015A08: /* 80015A08 00012968 A0 05 00 00 */ lhz r0, 0(r5) /* 80015A0C 0001296C 28 00 00 00 */ cmplwi r0, 0 /* 80015A10 00012970 40 82 FF F4 */ bne lbl_80015A04 /* 80015A14 00012974 7C 84 28 50 */ subf r4, r4, r5 /* 80015A18 00012978 54 80 0F FE */ srwi r0, r4, 0x1f /* 80015A1C 0001297C 7C 00 22 14 */ add r0, r0, r4 /* 80015A20 00012980 7C 00 0E 70 */ srawi r0, r0, 1 /* 80015A24 00012984 90 03 00 08 */ stw r0, 8(r3) /* 80015A28 00012988 4E 80 00 20 */ blr .global UnFreeze__7CPlayerFR13CStateManager UnFreeze__7CPlayerFR13CStateManager: /* 80015A2C 0001298C 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 80015A30 00012990 7C 08 02 A6 */ mflr r0 /* 80015A34 00012994 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80015A38 00012998 BE C1 00 88 */ stmw r22, 0x88(r1) /* 80015A3C 0001299C 7C 7D 1B 78 */ mr r29, r3 /* 80015A40 000129A0 7C 9E 23 78 */ mr r30, r4 /* 80015A44 000129A4 48 00 02 B9 */ bl GetFrozenState__7CPlayerCFv /* 80015A48 000129A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015A4C 000129AC 41 82 02 9C */ beq lbl_80015CE8 /* 80015A50 000129B0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015A54 000129B4 38 00 00 00 */ li r0, 0 /* 80015A58 000129B8 7F A3 EB 78 */ mr r3, r29 /* 80015A5C 000129BC D0 1D 07 50 */ stfs f0, 0x750(r29) /* 80015A60 000129C0 90 1D 07 54 */ stw r0, 0x754(r29) /* 80015A64 000129C4 48 10 59 15 */ bl Stop__13CPhysicsActorFv /* 80015A68 000129C8 7F A3 EB 78 */ mr r3, r29 /* 80015A6C 000129CC 48 10 58 49 */ bl ClearForcesAndTorques__13CPhysicsActorFv /* 80015A70 000129D0 7F A3 EB 78 */ mr r3, r29 /* 80015A74 000129D4 7F C5 F3 78 */ mr r5, r30 /* 80015A78 000129D8 38 80 00 2B */ li r4, 0x2b /* 80015A7C 000129DC 48 03 E5 05 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80015A80 000129E0 80 7E 08 70 */ lwz r3, 0x870(r30) /* 80015A84 000129E4 4B FF 4E 7D */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80015A88 000129E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015A8C 000129EC 40 82 02 38 */ bne lbl_80015CC4 /* 80015A90 000129F0 80 7D 0A 0C */ lwz r3, 0xa0c(r29) /* 80015A94 000129F4 3C 03 00 01 */ addis r0, r3, 1 /* 80015A98 000129F8 28 00 FF FF */ cmplwi r0, 0xffff /* 80015A9C 000129FC 41 82 02 28 */ beq lbl_80015CC4 /* 80015AA0 00012A00 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 80015AA4 00012A04 3B 80 00 00 */ li r28, 0 /* 80015AA8 00012A08 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l /* 80015AAC 00012A0C 3B 60 00 00 */ li r27, 0 /* 80015AB0 00012A10 38 83 00 1D */ addi r4, r3, 0x1d /* 80015AB4 00012A14 3B 40 00 00 */ li r26, 0 /* 80015AB8 00012A18 3B 20 00 00 */ li r25, 0 /* 80015ABC 00012A1C 3A C0 00 00 */ li r22, 0 /* 80015AC0 00012A20 38 60 01 10 */ li r3, 0x110 /* 80015AC4 00012A24 38 A0 00 00 */ li r5, 0 /* 80015AC8 00012A28 48 2F FD A5 */ bl __nw__FUlPCcPCc /* 80015ACC 00012A2C 7C 7F 1B 79 */ or. r31, r3, r3 /* 80015AD0 00012A30 41 82 01 20 */ beq lbl_80015BF0 /* 80015AD4 00012A34 80 DD 0A 0C */ lwz r6, 0xa0c(r29) /* 80015AD8 00012A38 3C 60 50 41 */ lis r3, 0x50415254@ha /* 80015ADC 00012A3C 38 03 52 54 */ addi r0, r3, 0x50415254@l /* 80015AE0 00012A40 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80015AE4 00012A44 90 01 00 34 */ stw r0, 0x34(r1) /* 80015AE8 00012A48 38 61 00 2C */ addi r3, r1, 0x2c /* 80015AEC 00012A4C 38 A1 00 34 */ addi r5, r1, 0x34 /* 80015AF0 00012A50 90 C1 00 38 */ stw r6, 0x38(r1) /* 80015AF4 00012A54 81 84 00 00 */ lwz r12, 0(r4) /* 80015AF8 00012A58 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80015AFC 00012A5C 7D 89 03 A6 */ mtctr r12 /* 80015B00 00012A60 4E 80 04 21 */ bctrl /* 80015B04 00012A64 38 61 00 24 */ addi r3, r1, 0x24 /* 80015B08 00012A68 38 81 00 2C */ addi r4, r1, 0x2c /* 80015B0C 00012A6C 3B 40 00 01 */ li r26, 1 /* 80015B10 00012A70 48 32 B3 99 */ bl __ct__6CTokenFRC6CToken /* 80015B14 00012A74 38 00 00 01 */ li r0, 1 /* 80015B18 00012A78 34 61 00 3C */ addic. r3, r1, 0x3c /* 80015B1C 00012A7C 98 01 00 44 */ stb r0, 0x44(r1) /* 80015B20 00012A80 3B 20 00 01 */ li r25, 1 /* 80015B24 00012A84 41 82 00 0C */ beq lbl_80015B30 /* 80015B28 00012A88 38 81 00 24 */ addi r4, r1, 0x24 /* 80015B2C 00012A8C 48 32 B3 7D */ bl __ct__6CTokenFRC6CToken lbl_80015B30: /* 80015B30 00012A90 38 00 00 00 */ li r0, 0 /* 80015B34 00012A94 7F C4 F3 78 */ mr r4, r30 /* 80015B38 00012A98 98 01 00 50 */ stb r0, 0x50(r1) /* 80015B3C 00012A9C 38 61 00 10 */ addi r3, r1, 0x10 /* 80015B40 00012AA0 3A C0 00 01 */ li r22, 1 /* 80015B44 00012AA4 3B 60 00 01 */ li r27, 1 /* 80015B48 00012AA8 48 03 75 95 */ bl AllocateUniqueId__13CStateManagerFv /* 80015B4C 00012AAC A0 01 00 10 */ lhz r0, 0x10(r1) /* 80015B50 00012AB0 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 80015B54 00012AB4 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l /* 80015B58 00012AB8 38 61 00 54 */ addi r3, r1, 0x54 /* 80015B5C 00012ABC B0 01 00 14 */ sth r0, 0x14(r1) /* 80015B60 00012AC0 38 84 00 24 */ addi r4, r4, 0x24 /* 80015B64 00012AC4 4B FE F1 55 */ bl string_l__4rstlFPCc /* 80015B68 00012AC8 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80015B6C 00012ACC 38 61 00 20 */ addi r3, r1, 0x20 /* 80015B70 00012AD0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015B74 00012AD4 3B 80 00 01 */ li r28, 1 /* 80015B78 00012AD8 FC 40 08 90 */ fmr f2, f1 /* 80015B7C 00012ADC D0 21 00 64 */ stfs f1, 0x64(r1) /* 80015B80 00012AE0 FC 60 08 90 */ fmr f3, f1 /* 80015B84 00012AE4 FC 80 08 90 */ fmr f4, f1 /* 80015B88 00012AE8 D0 21 00 68 */ stfs f1, 0x68(r1) /* 80015B8C 00012AEC D0 21 00 6C */ stfs f1, 0x6c(r1) /* 80015B90 00012AF0 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80015B94 00012AF4 D0 01 00 74 */ stfs f0, 0x74(r1) /* 80015B98 00012AF8 D0 01 00 78 */ stfs f0, 0x78(r1) /* 80015B9C 00012AFC 48 34 D8 51 */ bl __ct__6CColorFffff /* 80015BA0 00012B00 7C 77 1B 78 */ mr r23, r3 /* 80015BA4 00012B04 7F C3 F3 78 */ mr r3, r30 /* 80015BA8 00012B08 48 11 A6 85 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager /* 80015BAC 00012B0C 7C 78 1B 78 */ mr r24, r3 /* 80015BB0 00012B10 7F C3 F3 78 */ mr r3, r30 /* 80015BB4 00012B14 48 11 A6 45 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager /* 80015BB8 00012B18 38 61 00 64 */ addi r3, r1, 0x64 /* 80015BBC 00012B1C 38 01 00 70 */ addi r0, r1, 0x70 /* 80015BC0 00012B20 90 61 00 08 */ stw r3, 8(r1) /* 80015BC4 00012B24 7F E3 FB 78 */ mr r3, r31 /* 80015BC8 00012B28 7F 09 C3 78 */ mr r9, r24 /* 80015BCC 00012B2C 7E EA BB 78 */ mr r10, r23 /* 80015BD0 00012B30 90 01 00 0C */ stw r0, 0xc(r1) /* 80015BD4 00012B34 38 81 00 3C */ addi r4, r1, 0x3c /* 80015BD8 00012B38 38 A1 00 48 */ addi r5, r1, 0x48 /* 80015BDC 00012B3C 38 C1 00 14 */ addi r6, r1, 0x14 /* 80015BE0 00012B40 39 01 00 54 */ addi r8, r1, 0x54 /* 80015BE4 00012B44 38 E0 00 01 */ li r7, 1 /* 80015BE8 00012B48 48 11 A3 11 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" /* 80015BEC 00012B4C 7C 7F 1B 78 */ mr r31, r3 lbl_80015BF0: /* 80015BF0 00012B50 7F C3 F3 78 */ mr r3, r30 /* 80015BF4 00012B54 7F E4 FB 78 */ mr r4, r31 /* 80015BF8 00012B58 48 03 70 FD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence /* 80015BFC 00012B5C 7E C0 07 75 */ extsb. r0, r22 /* 80015C00 00012B60 41 82 00 28 */ beq lbl_80015C28 /* 80015C04 00012B64 88 01 00 44 */ lbz r0, 0x44(r1) /* 80015C08 00012B68 28 00 00 00 */ cmplwi r0, 0 /* 80015C0C 00012B6C 41 82 00 14 */ beq lbl_80015C20 /* 80015C10 00012B70 34 61 00 3C */ addic. r3, r1, 0x3c /* 80015C14 00012B74 41 82 00 0C */ beq lbl_80015C20 /* 80015C18 00012B78 38 80 00 00 */ li r4, 0 /* 80015C1C 00012B7C 48 32 B2 25 */ bl __dt__6CTokenFv lbl_80015C20: /* 80015C20 00012B80 38 00 00 00 */ li r0, 0 /* 80015C24 00012B84 98 01 00 44 */ stb r0, 0x44(r1) lbl_80015C28: /* 80015C28 00012B88 7F 20 07 75 */ extsb. r0, r25 /* 80015C2C 00012B8C 41 82 00 10 */ beq lbl_80015C3C /* 80015C30 00012B90 38 61 00 24 */ addi r3, r1, 0x24 /* 80015C34 00012B94 38 80 00 00 */ li r4, 0 /* 80015C38 00012B98 48 32 B2 09 */ bl __dt__6CTokenFv lbl_80015C3C: /* 80015C3C 00012B9C 7F 40 07 75 */ extsb. r0, r26 /* 80015C40 00012BA0 41 82 00 10 */ beq lbl_80015C50 /* 80015C44 00012BA4 38 61 00 2C */ addi r3, r1, 0x2c /* 80015C48 00012BA8 38 80 FF FF */ li r4, -1 /* 80015C4C 00012BAC 48 32 B1 F5 */ bl __dt__6CTokenFv lbl_80015C50: /* 80015C50 00012BB0 7F 60 07 75 */ extsb. r0, r27 /* 80015C54 00012BB4 41 82 00 28 */ beq lbl_80015C7C /* 80015C58 00012BB8 88 01 00 50 */ lbz r0, 0x50(r1) /* 80015C5C 00012BBC 28 00 00 00 */ cmplwi r0, 0 /* 80015C60 00012BC0 41 82 00 14 */ beq lbl_80015C74 /* 80015C64 00012BC4 34 61 00 48 */ addic. r3, r1, 0x48 /* 80015C68 00012BC8 41 82 00 0C */ beq lbl_80015C74 /* 80015C6C 00012BCC 38 80 00 00 */ li r4, 0 /* 80015C70 00012BD0 48 32 B1 D1 */ bl __dt__6CTokenFv lbl_80015C74: /* 80015C74 00012BD4 38 00 00 00 */ li r0, 0 /* 80015C78 00012BD8 98 01 00 50 */ stb r0, 0x50(r1) lbl_80015C7C: /* 80015C7C 00012BDC 7F 80 07 75 */ extsb. r0, r28 /* 80015C80 00012BE0 41 82 00 0C */ beq lbl_80015C8C /* 80015C84 00012BE4 38 61 00 54 */ addi r3, r1, 0x54 /* 80015C88 00012BE8 48 32 7E 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80015C8C: /* 80015C8C 00012BEC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80015C90 00012BF0 38 61 00 18 */ addi r3, r1, 0x18 /* 80015C94 00012BF4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80015C98 00012BF8 38 80 0C 39 */ li r4, 0xc39 /* 80015C9C 00012BFC 38 A0 00 7F */ li r5, 0x7f /* 80015CA0 00012C00 38 C0 00 40 */ li r6, 0x40 /* 80015CA4 00012C04 38 E0 00 00 */ li r7, 0 /* 80015CA8 00012C08 39 20 00 00 */ li r9, 0 /* 80015CAC 00012C0C 48 2D 40 C9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80015CB0 00012C10 80 01 00 18 */ lwz r0, 0x18(r1) /* 80015CB4 00012C14 7F A3 EB 78 */ mr r3, r29 /* 80015CB8 00012C18 38 81 00 1C */ addi r4, r1, 0x1c /* 80015CBC 00012C1C 90 01 00 1C */ stw r0, 0x1c(r1) /* 80015CC0 00012C20 4B FF B4 CD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_80015CC4: /* 80015CC4 00012C24 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80015CC8 00012C28 48 0D C2 8D */ bl Stop__10CMorphBallFv /* 80015CCC 00012C2C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80015CD0 00012C30 7F A3 EB 78 */ mr r3, r29 /* 80015CD4 00012C34 C0 42 81 E0 */ lfs f2, lbl_805A9F00@sda21(r2) /* 80015CD8 00012C38 38 A0 00 00 */ li r5, 0 /* 80015CDC 00012C3C C0 62 81 E4 */ lfs f3, lbl_805A9F04@sda21(r2) /* 80015CE0 00012C40 80 9D 0A 08 */ lwz r4, 0xa08(r29) /* 80015CE4 00012C44 48 00 1D D1 */ bl SetVisorSteam__7CPlayerFfffUib lbl_80015CE8: /* 80015CE8 00012C48 BA C1 00 88 */ lmw r22, 0x88(r1) /* 80015CEC 00012C4C 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80015CF0 00012C50 7C 08 03 A6 */ mtlr r0 /* 80015CF4 00012C54 38 21 00 B0 */ addi r1, r1, 0xb0 /* 80015CF8 00012C58 4E 80 00 20 */ blr .global GetFrozenState__7CPlayerCFv GetFrozenState__7CPlayerCFv: /* 80015CFC 00012C5C C0 23 07 50 */ lfs f1, 0x750(r3) /* 80015D00 00012C60 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015D04 00012C64 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015D08 00012C68 7C 00 00 26 */ mfcr r0 /* 80015D0C 00012C6C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f /* 80015D10 00012C70 4E 80 00 20 */ blr .global Freeze__7CPlayerFR13CStateManagerUiUsUi Freeze__7CPlayerFR13CStateManagerUiUsUi: /* 80015D14 00012C74 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80015D18 00012C78 7C 08 02 A6 */ mflr r0 /* 80015D1C 00012C7C 90 01 00 44 */ stw r0, 0x44(r1) /* 80015D20 00012C80 BF 61 00 2C */ stmw r27, 0x2c(r1) /* 80015D24 00012C84 7C 7B 1B 78 */ mr r27, r3 /* 80015D28 00012C88 7C 9C 23 78 */ mr r28, r4 /* 80015D2C 00012C8C 7C BD 2B 78 */ mr r29, r5 /* 80015D30 00012C90 7C DE 33 78 */ mr r30, r6 /* 80015D34 00012C94 7C FF 3B 78 */ mr r31, r7 /* 80015D38 00012C98 80 64 08 70 */ lwz r3, 0x870(r4) /* 80015D3C 00012C9C 4B FF 4B C5 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80015D40 00012CA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015D44 00012CA4 40 82 01 58 */ bne lbl_80015E9C /* 80015D48 00012CA8 7F 63 DB 78 */ mr r3, r27 /* 80015D4C 00012CAC 4B FF FF B1 */ bl GetFrozenState__7CPlayerCFv /* 80015D50 00012CB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015D54 00012CB4 40 82 01 48 */ bne lbl_80015E9C /* 80015D58 00012CB8 80 1B 02 F8 */ lwz r0, 0x2f8(r27) /* 80015D5C 00012CBC 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) /* 80015D60 00012CC0 2C 00 00 00 */ cmpwi r0, 0 /* 80015D64 00012CC4 38 63 00 A8 */ addi r3, r3, 0xa8 /* 80015D68 00012CC8 40 82 00 0C */ bne lbl_80015D74 /* 80015D6C 00012CCC 48 1B F5 89 */ bl GetShowFrozenFpsMessage__14CSystemOptionsCFv /* 80015D70 00012CD0 48 00 00 08 */ b lbl_80015D78 lbl_80015D74: /* 80015D74 00012CD4 48 1B F5 31 */ bl GetShowFrozenBallMessage__14CSystemOptionsCFv lbl_80015D78: /* 80015D78 00012CD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80015D7C 00012CDC 41 82 00 60 */ beq lbl_80015DDC /* 80015D80 00012CE0 80 BB 02 F8 */ lwz r5, 0x2f8(r27) /* 80015D84 00012CE4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) /* 80015D88 00012CE8 38 85 FF FF */ addi r4, r5, -1 /* 80015D8C 00012CEC 20 05 00 01 */ subfic r0, r5, 1 /* 80015D90 00012CF0 7C 80 03 78 */ or r0, r4, r0 /* 80015D94 00012CF4 7C 04 FE 70 */ srawi r4, r0, 0x1f /* 80015D98 00012CF8 38 84 00 14 */ addi r4, r4, 0x14 /* 80015D9C 00012CFC 48 34 09 61 */ bl GetString__12CStringTableCFi /* 80015DA0 00012D00 7C 64 1B 78 */ mr r4, r3 /* 80015DA4 00012D04 38 61 00 18 */ addi r3, r1, 0x18 /* 80015DA8 00012D08 4B FF FC 49 */ bl wstring_l__4rstlFPCw /* 80015DAC 00012D0C C0 02 81 E8 */ lfs f0, lbl_805A9F08@sda21(r2) /* 80015DB0 00012D10 38 00 00 00 */ li r0, 0 /* 80015DB4 00012D14 38 A0 00 01 */ li r5, 1 /* 80015DB8 00012D18 98 01 00 15 */ stb r0, 0x15(r1) /* 80015DBC 00012D1C 38 61 00 18 */ addi r3, r1, 0x18 /* 80015DC0 00012D20 38 81 00 10 */ addi r4, r1, 0x10 /* 80015DC4 00012D24 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80015DC8 00012D28 98 A1 00 14 */ stb r5, 0x14(r1) /* 80015DCC 00012D2C 98 01 00 16 */ stb r0, 0x16(r1) /* 80015DD0 00012D30 48 05 5E 99 */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo /* 80015DD4 00012D34 38 61 00 18 */ addi r3, r1, 0x18 /* 80015DD8 00012D38 48 32 73 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80015DDC: /* 80015DDC 00012D3C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) /* 80015DE0 00012D40 7F 63 DB 78 */ mr r3, r27 /* 80015DE4 00012D44 C0 3B 07 58 */ lfs f1, 0x758(r27) /* 80015DE8 00012D48 C0 04 02 F8 */ lfs f0, 0x2f8(r4) /* 80015DEC 00012D4C EC 01 00 2A */ fadds f0, f1, f0 /* 80015DF0 00012D50 D0 1B 07 50 */ stfs f0, 0x750(r27) /* 80015DF4 00012D54 80 1B 07 5C */ lwz r0, 0x75c(r27) /* 80015DF8 00012D58 7C 00 00 D0 */ neg r0, r0 /* 80015DFC 00012D5C 90 1B 07 54 */ stw r0, 0x754(r27) /* 80015E00 00012D60 48 10 55 79 */ bl Stop__13CPhysicsActorFv /* 80015E04 00012D64 7F 63 DB 78 */ mr r3, r27 /* 80015E08 00012D68 48 10 54 AD */ bl ClearForcesAndTorques__13CPhysicsActorFv /* 80015E0C 00012D6C 80 1B 03 B8 */ lwz r0, 0x3b8(r27) /* 80015E10 00012D70 2C 00 00 00 */ cmpwi r0, 0 /* 80015E14 00012D74 41 82 00 18 */ beq lbl_80015E2C /* 80015E18 00012D78 7F 63 DB 78 */ mr r3, r27 /* 80015E1C 00012D7C 7F 85 E3 78 */ mr r5, r28 /* 80015E20 00012D80 38 80 00 0A */ li r4, 0xa /* 80015E24 00012D84 48 16 52 A1 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager /* 80015E28 00012D88 48 00 00 14 */ b lbl_80015E3C lbl_80015E2C: /* 80015E2C 00012D8C 7F 63 DB 78 */ mr r3, r27 /* 80015E30 00012D90 7F 85 E3 78 */ mr r5, r28 /* 80015E34 00012D94 38 80 00 0A */ li r4, 0xa /* 80015E38 00012D98 48 16 53 65 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager lbl_80015E3C: /* 80015E3C 00012D9C 7F 63 DB 78 */ mr r3, r27 /* 80015E40 00012DA0 7F 85 E3 78 */ mr r5, r28 /* 80015E44 00012DA4 38 80 00 2B */ li r4, 0x2b /* 80015E48 00012DA8 48 03 E5 09 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80015E4C 00012DAC 7F 63 DB 78 */ mr r3, r27 /* 80015E50 00012DB0 48 00 43 C5 */ bl IsMorphBallTransitioning__7CPlayerCFv /* 80015E54 00012DB4 93 BB 0A 08 */ stw r29, 0xa08(r27) /* 80015E58 00012DB8 7F C4 F3 78 */ mr r4, r30 /* 80015E5C 00012DBC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80015E60 00012DC0 38 61 00 08 */ addi r3, r1, 8 /* 80015E64 00012DC4 93 FB 0A 0C */ stw r31, 0xa0c(r27) /* 80015E68 00012DC8 38 A0 00 7F */ li r5, 0x7f /* 80015E6C 00012DCC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80015E70 00012DD0 38 C0 00 40 */ li r6, 0x40 /* 80015E74 00012DD4 38 E0 00 00 */ li r7, 0 /* 80015E78 00012DD8 39 20 00 00 */ li r9, 0 /* 80015E7C 00012DDC 48 2D 3E F9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80015E80 00012DE0 80 01 00 08 */ lwz r0, 8(r1) /* 80015E84 00012DE4 7F 63 DB 78 */ mr r3, r27 /* 80015E88 00012DE8 38 81 00 0C */ addi r4, r1, 0xc /* 80015E8C 00012DEC 90 01 00 0C */ stw r0, 0xc(r1) /* 80015E90 00012DF0 4B FF B2 FD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80015E94 00012DF4 7F 63 DB 78 */ mr r3, r27 /* 80015E98 00012DF8 4B FF F9 51 */ bl EndLandingControlFreeze__7CPlayerFv lbl_80015E9C: /* 80015E9C 00012DFC BB 61 00 2C */ lmw r27, 0x2c(r1) /* 80015EA0 00012E00 80 01 00 44 */ lwz r0, 0x44(r1) /* 80015EA4 00012E04 7C 08 03 A6 */ mtlr r0 /* 80015EA8 00012E08 38 21 00 40 */ addi r1, r1, 0x40 /* 80015EAC 00012E0C 4E 80 00 20 */ blr .global Think__7CPlayerFfR13CStateManager Think__7CPlayerFfR13CStateManager: /* 80015EB0 00012E10 94 21 FE E0 */ stwu r1, -0x120(r1) /* 80015EB4 00012E14 7C 08 02 A6 */ mflr r0 /* 80015EB8 00012E18 90 01 01 24 */ stw r0, 0x124(r1) /* 80015EBC 00012E1C DB E1 01 10 */ stfd f31, 0x110(r1) /* 80015EC0 00012E20 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 /* 80015EC4 00012E24 BE E1 00 EC */ stmw r23, 0xec(r1) /* 80015EC8 00012E28 FF E0 08 90 */ fmr f31, f1 /* 80015ECC 00012E2C 7C 7D 1B 78 */ mr r29, r3 /* 80015ED0 00012E30 7C 9E 23 78 */ mr r30, r4 /* 80015ED4 00012E34 48 27 21 F1 */ bl UpdateStepCameraZBias__7CPlayerFf /* 80015ED8 00012E38 7F A3 EB 78 */ mr r3, r29 /* 80015EDC 00012E3C 7F C4 F3 78 */ mr r4, r30 /* 80015EE0 00012E40 48 00 05 6D */ bl UpdateWaterSurfaceCameraBias__7CPlayerFR13CStateManager /* 80015EE4 00012E44 FC 20 F8 90 */ fmr f1, f31 /* 80015EE8 00012E48 7F A3 EB 78 */ mr r3, r29 /* 80015EEC 00012E4C 7F C4 F3 78 */ mr r4, r30 /* 80015EF0 00012E50 4B FF B9 01 */ bl UpdatePhazonCameraShake__7CPlayerFfR13CStateManager /* 80015EF4 00012E54 FC 20 F8 90 */ fmr f1, f31 /* 80015EF8 00012E58 7F A3 EB 78 */ mr r3, r29 /* 80015EFC 00012E5C 7F C4 F3 78 */ mr r4, r30 /* 80015F00 00012E60 4B FF B2 D5 */ bl UpdatePhazonDamage__7CPlayerFfR13CStateManager /* 80015F04 00012E64 FC 20 F8 90 */ fmr f1, f31 /* 80015F08 00012E68 7F A3 EB 78 */ mr r3, r29 /* 80015F0C 00012E6C 4B FF E9 15 */ bl UpdateFreeLook__7CPlayerFf /* 80015F10 00012E70 7F A3 EB 78 */ mr r3, r29 /* 80015F14 00012E74 7F C4 F3 78 */ mr r4, r30 /* 80015F18 00012E78 48 26 E6 B5 */ bl UpdatePlayerHints__7CPlayerFRC13CStateManager /* 80015F1C 00012E7C 80 7D 02 B0 */ lwz r3, 0x2b0(r29) /* 80015F20 00012E80 2C 03 00 02 */ cmpwi r3, 2 /* 80015F24 00012E84 40 80 00 0C */ bge lbl_80015F30 /* 80015F28 00012E88 38 03 00 01 */ addi r0, r3, 1 /* 80015F2C 00012E8C 90 1D 02 B0 */ stw r0, 0x2b0(r29) lbl_80015F30: /* 80015F30 00012E90 88 BD 09 C4 */ lbz r5, 0x9c4(r29) /* 80015F34 00012E94 38 80 00 00 */ li r4, 0 /* 80015F38 00012E98 88 1D 09 C5 */ lbz r0, 0x9c5(r29) /* 80015F3C 00012E9C 7F A3 EB 78 */ mr r3, r29 /* 80015F40 00012EA0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 /* 80015F44 00012EA4 98 1D 09 C5 */ stb r0, 0x9c5(r29) /* 80015F48 00012EA8 88 BD 09 C5 */ lbz r5, 0x9c5(r29) /* 80015F4C 00012EAC 88 1D 09 C4 */ lbz r0, 0x9c4(r29) /* 80015F50 00012EB0 50 A0 D7 FE */ rlwimi r0, r5, 0x1a, 0x1f, 0x1f /* 80015F54 00012EB4 98 1D 09 C4 */ stb r0, 0x9c4(r29) /* 80015F58 00012EB8 88 1D 09 C5 */ lbz r0, 0x9c5(r29) /* 80015F5C 00012EBC 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 /* 80015F60 00012EC0 98 1D 09 C5 */ stb r0, 0x9c5(r29) /* 80015F64 00012EC4 48 27 23 21 */ bl UpdateBombJumpStuff__7CPlayerFv /* 80015F68 00012EC8 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80015F6C 00012ECC C0 1D 02 88 */ lfs f0, 0x288(r29) /* 80015F70 00012ED0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015F74 00012ED4 40 80 00 2C */ bge lbl_80015FA0 /* 80015F78 00012ED8 EC 00 F8 28 */ fsubs f0, f0, f31 /* 80015F7C 00012EDC D0 1D 02 88 */ stfs f0, 0x288(r29) /* 80015F80 00012EE0 C0 1D 02 88 */ lfs f0, 0x288(r29) /* 80015F84 00012EE4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015F88 00012EE8 4C 41 13 82 */ cror 2, 1, 2 /* 80015F8C 00012EEC 40 82 00 14 */ bne lbl_80015FA0 /* 80015F90 00012EF0 7F A3 EB 78 */ mr r3, r29 /* 80015F94 00012EF4 7F C5 F3 78 */ mr r5, r30 /* 80015F98 00012EF8 38 80 00 02 */ li r4, 2 /* 80015F9C 00012EFC 48 27 04 51 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager lbl_80015FA0: /* 80015FA0 00012F00 C0 3D 02 A0 */ lfs f1, 0x2a0(r29) /* 80015FA4 00012F04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015FA8 00012F08 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015FAC 00012F0C 40 81 00 0C */ ble lbl_80015FB8 /* 80015FB0 00012F10 EC 01 F8 2A */ fadds f0, f1, f31 /* 80015FB4 00012F14 D0 1D 02 A0 */ stfs f0, 0x2a0(r29) lbl_80015FB8: /* 80015FB8 00012F18 C0 3D 07 74 */ lfs f1, 0x774(r29) /* 80015FBC 00012F1C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80015FC0 00012F20 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015FC4 00012F24 40 81 00 0C */ ble lbl_80015FD0 /* 80015FC8 00012F28 EC 01 F8 28 */ fsubs f0, f1, f31 /* 80015FCC 00012F2C D0 1D 07 74 */ stfs f0, 0x774(r29) lbl_80015FD0: /* 80015FD0 00012F30 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80015FD4 00012F34 C0 1D 02 8C */ lfs f0, 0x28c(r29) /* 80015FD8 00012F38 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80015FDC 00012F3C 40 80 00 0C */ bge lbl_80015FE8 /* 80015FE0 00012F40 EC 00 F8 28 */ fsubs f0, f0, f31 /* 80015FE4 00012F44 D0 1D 02 8C */ stfs f0, 0x28c(r29) lbl_80015FE8: /* 80015FE8 00012F48 C0 1D 03 00 */ lfs f0, 0x300(r29) /* 80015FEC 00012F4C EC 00 F8 2A */ fadds f0, f0, f31 /* 80015FF0 00012F50 D0 1D 03 00 */ stfs f0, 0x300(r29) /* 80015FF4 00012F54 80 1D 02 58 */ lwz r0, 0x258(r29) /* 80015FF8 00012F58 2C 00 00 04 */ cmpwi r0, 4 /* 80015FFC 00012F5C 40 82 00 24 */ bne lbl_80016020 /* 80016000 00012F60 C0 3D 03 00 */ lfs f1, 0x300(r29) /* 80016004 00012F64 C0 02 81 8C */ lfs f0, lbl_805A9EAC@sda21(r2) /* 80016008 00012F68 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001600C 00012F6C 40 81 00 14 */ ble lbl_80016020 /* 80016010 00012F70 7F A3 EB 78 */ mr r3, r29 /* 80016014 00012F74 7F C5 F3 78 */ mr r5, r30 /* 80016018 00012F78 38 80 00 02 */ li r4, 2 /* 8001601C 00012F7C 48 27 03 D1 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager lbl_80016020: /* 80016020 00012F80 C0 3D 05 70 */ lfs f1, 0x570(r29) /* 80016024 00012F84 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016028 00012F88 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001602C 00012F8C 40 81 00 0C */ ble lbl_80016038 /* 80016030 00012F90 EC 01 F8 28 */ fsubs f0, f1, f31 /* 80016034 00012F94 D0 1D 05 70 */ stfs f0, 0x570(r29) lbl_80016038: /* 80016038 00012F98 FC 20 F8 90 */ fmr f1, f31 /* 8001603C 00012F9C 7F A3 EB 78 */ mr r3, r29 /* 80016040 00012FA0 7F C4 F3 78 */ mr r4, r30 /* 80016044 00012FA4 48 00 27 2D */ bl Update__7CPlayerFfR13CStateManager /* 80016048 00012FA8 FC 20 F8 90 */ fmr f1, f31 /* 8001604C 00012FAC 7F A3 EB 78 */ mr r3, r29 /* 80016050 00012FB0 7F C4 F3 78 */ mr r4, r30 /* 80016054 00012FB4 48 26 CA C5 */ bl UpdateTransitionFilter__7CPlayerFfR13CStateManager /* 80016058 00012FB8 FC 20 F8 90 */ fmr f1, f31 /* 8001605C 00012FBC 7F A3 EB 78 */ mr r3, r29 /* 80016060 00012FC0 48 26 FF C5 */ bl CalculatePlayerMovementDirection__7CPlayerFf /* 80016064 00012FC4 FC 20 F8 90 */ fmr f1, f31 /* 80016068 00012FC8 7F A3 EB 78 */ mr r3, r29 /* 8001606C 00012FCC 7F C4 F3 78 */ mr r4, r30 /* 80016070 00012FD0 48 26 FE 29 */ bl UpdatePlayerControlDirection__7CPlayerFfR13CStateManager /* 80016074 00012FD4 88 0D A0 B8 */ lbz r0, lbl_805A8C78@sda21(r13) /* 80016078 00012FD8 28 00 00 00 */ cmplwi r0, 0 /* 8001607C 00012FDC 41 82 00 20 */ beq lbl_8001609C /* 80016080 00012FE0 80 0D A0 BC */ lwz r0, lbl_805A8C7C@sda21(r13) /* 80016084 00012FE4 2C 00 00 04 */ cmpwi r0, 4 /* 80016088 00012FE8 40 82 00 10 */ bne lbl_80016098 /* 8001608C 00012FEC 38 00 00 00 */ li r0, 0 /* 80016090 00012FF0 90 1D 02 B0 */ stw r0, 0x2b0(r29) /* 80016094 00012FF4 48 00 00 08 */ b lbl_8001609C lbl_80016098: /* 80016098 00012FF8 90 1D 02 AC */ stw r0, 0x2ac(r29) lbl_8001609C: /* 8001609C 00012FFC 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 800160A0 00013000 2C 00 00 00 */ cmpwi r0, 0 /* 800160A4 00013004 40 82 01 F0 */ bne lbl_80016294 /* 800160A8 00013008 88 1D 09 C5 */ lbz r0, 0x9c5(r29) /* 800160AC 0001300C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 800160B0 00013010 41 82 01 E4 */ beq lbl_80016294 /* 800160B4 00013014 80 7E 08 70 */ lwz r3, 0x870(r30) /* 800160B8 00013018 80 03 00 74 */ lwz r0, 0x74(r3) /* 800160BC 0001301C 2C 00 00 00 */ cmpwi r0, 0 /* 800160C0 00013020 40 82 01 D4 */ bne lbl_80016294 /* 800160C4 00013024 7F A3 EB 78 */ mr r3, r29 /* 800160C8 00013028 7F C4 F3 78 */ mr r4, r30 /* 800160CC 0001302C 48 00 19 95 */ bl GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager /* 800160D0 00013030 7C 7F 1B 79 */ or. r31, r3, r3 /* 800160D4 00013034 41 82 01 C0 */ beq lbl_80016294 /* 800160D8 00013038 88 1F 02 48 */ lbz r0, 0x248(r31) /* 800160DC 0001303C 28 00 00 00 */ cmplwi r0, 0 /* 800160E0 00013040 41 82 01 7C */ beq lbl_8001625C /* 800160E4 00013044 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 800160E8 00013048 3B 80 00 00 */ li r28, 0 /* 800160EC 0001304C 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l /* 800160F0 00013050 3B 60 00 00 */ li r27, 0 /* 800160F4 00013054 38 83 00 1D */ addi r4, r3, 0x1d /* 800160F8 00013058 3A E0 00 00 */ li r23, 0 /* 800160FC 0001305C 38 60 01 10 */ li r3, 0x110 /* 80016100 00013060 38 A0 00 00 */ li r5, 0 /* 80016104 00013064 48 2F F7 69 */ bl __nw__FUlPCcPCc /* 80016108 00013068 7C 78 1B 79 */ or. r24, r3, r3 /* 8001610C 0001306C 41 82 00 DC */ beq lbl_800161E8 /* 80016110 00013070 38 00 00 01 */ li r0, 1 /* 80016114 00013074 34 61 00 60 */ addic. r3, r1, 0x60 /* 80016118 00013078 98 01 00 68 */ stb r0, 0x68(r1) /* 8001611C 0001307C 38 9F 02 3C */ addi r4, r31, 0x23c /* 80016120 00013080 41 82 00 08 */ beq lbl_80016128 /* 80016124 00013084 48 32 AD 85 */ bl __ct__6CTokenFRC6CToken lbl_80016128: /* 80016128 00013088 38 00 00 00 */ li r0, 0 /* 8001612C 0001308C 7F C4 F3 78 */ mr r4, r30 /* 80016130 00013090 98 01 00 74 */ stb r0, 0x74(r1) /* 80016134 00013094 38 61 00 10 */ addi r3, r1, 0x10 /* 80016138 00013098 3A E0 00 01 */ li r23, 1 /* 8001613C 0001309C 3B 60 00 01 */ li r27, 1 /* 80016140 000130A0 48 03 6F 9D */ bl AllocateUniqueId__13CStateManagerFv /* 80016144 000130A4 A0 01 00 10 */ lhz r0, 0x10(r1) /* 80016148 000130A8 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 8001614C 000130AC 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l /* 80016150 000130B0 38 61 00 78 */ addi r3, r1, 0x78 /* 80016154 000130B4 B0 01 00 14 */ sth r0, 0x14(r1) /* 80016158 000130B8 38 84 00 33 */ addi r4, r4, 0x33 /* 8001615C 000130BC 4B FE EB 5D */ bl string_l__4rstlFPCc /* 80016160 000130C0 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80016164 000130C4 38 61 00 20 */ addi r3, r1, 0x20 /* 80016168 000130C8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001616C 000130CC 3B 80 00 01 */ li r28, 1 /* 80016170 000130D0 FC 40 08 90 */ fmr f2, f1 /* 80016174 000130D4 D0 21 00 88 */ stfs f1, 0x88(r1) /* 80016178 000130D8 FC 60 08 90 */ fmr f3, f1 /* 8001617C 000130DC FC 80 08 90 */ fmr f4, f1 /* 80016180 000130E0 D0 21 00 8C */ stfs f1, 0x8c(r1) /* 80016184 000130E4 D0 21 00 90 */ stfs f1, 0x90(r1) /* 80016188 000130E8 D0 01 00 94 */ stfs f0, 0x94(r1) /* 8001618C 000130EC D0 01 00 98 */ stfs f0, 0x98(r1) /* 80016190 000130F0 D0 01 00 9C */ stfs f0, 0x9c(r1) /* 80016194 000130F4 48 34 D2 59 */ bl __ct__6CColorFffff /* 80016198 000130F8 7C 79 1B 78 */ mr r25, r3 /* 8001619C 000130FC 7F C3 F3 78 */ mr r3, r30 /* 800161A0 00013100 48 11 A0 8D */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager /* 800161A4 00013104 7C 7A 1B 78 */ mr r26, r3 /* 800161A8 00013108 7F C3 F3 78 */ mr r3, r30 /* 800161AC 0001310C 48 11 A0 4D */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager /* 800161B0 00013110 38 61 00 88 */ addi r3, r1, 0x88 /* 800161B4 00013114 38 01 00 94 */ addi r0, r1, 0x94 /* 800161B8 00013118 90 61 00 08 */ stw r3, 8(r1) /* 800161BC 0001311C 7F 03 C3 78 */ mr r3, r24 /* 800161C0 00013120 7F 49 D3 78 */ mr r9, r26 /* 800161C4 00013124 7F 2A CB 78 */ mr r10, r25 /* 800161C8 00013128 90 01 00 0C */ stw r0, 0xc(r1) /* 800161CC 0001312C 38 81 00 60 */ addi r4, r1, 0x60 /* 800161D0 00013130 38 A1 00 6C */ addi r5, r1, 0x6c /* 800161D4 00013134 38 C1 00 14 */ addi r6, r1, 0x14 /* 800161D8 00013138 39 01 00 78 */ addi r8, r1, 0x78 /* 800161DC 0001313C 38 E0 00 01 */ li r7, 1 /* 800161E0 00013140 48 11 9D 19 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" /* 800161E4 00013144 7C 78 1B 78 */ mr r24, r3 lbl_800161E8: /* 800161E8 00013148 7F C3 F3 78 */ mr r3, r30 /* 800161EC 0001314C 7F 04 C3 78 */ mr r4, r24 /* 800161F0 00013150 48 03 6B 05 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence /* 800161F4 00013154 7E E0 07 75 */ extsb. r0, r23 /* 800161F8 00013158 41 82 00 28 */ beq lbl_80016220 /* 800161FC 0001315C 88 01 00 68 */ lbz r0, 0x68(r1) /* 80016200 00013160 28 00 00 00 */ cmplwi r0, 0 /* 80016204 00013164 41 82 00 14 */ beq lbl_80016218 /* 80016208 00013168 34 61 00 60 */ addic. r3, r1, 0x60 /* 8001620C 0001316C 41 82 00 0C */ beq lbl_80016218 /* 80016210 00013170 38 80 00 00 */ li r4, 0 /* 80016214 00013174 48 32 AC 2D */ bl __dt__6CTokenFv lbl_80016218: /* 80016218 00013178 38 00 00 00 */ li r0, 0 /* 8001621C 0001317C 98 01 00 68 */ stb r0, 0x68(r1) lbl_80016220: /* 80016220 00013180 7F 60 07 75 */ extsb. r0, r27 /* 80016224 00013184 41 82 00 28 */ beq lbl_8001624C /* 80016228 00013188 88 01 00 74 */ lbz r0, 0x74(r1) /* 8001622C 0001318C 28 00 00 00 */ cmplwi r0, 0 /* 80016230 00013190 41 82 00 14 */ beq lbl_80016244 /* 80016234 00013194 34 61 00 6C */ addic. r3, r1, 0x6c /* 80016238 00013198 41 82 00 0C */ beq lbl_80016244 /* 8001623C 0001319C 38 80 00 00 */ li r4, 0 /* 80016240 000131A0 48 32 AC 01 */ bl __dt__6CTokenFv lbl_80016244: /* 80016244 000131A4 38 00 00 00 */ li r0, 0 /* 80016248 000131A8 98 01 00 74 */ stb r0, 0x74(r1) lbl_8001624C: /* 8001624C 000131AC 7F 80 07 75 */ extsb. r0, r28 /* 80016250 000131B0 41 82 00 0C */ beq lbl_8001625C /* 80016254 000131B4 38 61 00 78 */ addi r3, r1, 0x78 /* 80016258 000131B8 48 32 78 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8001625C: /* 8001625C 000131BC A0 9F 02 60 */ lhz r4, 0x260(r31) /* 80016260 000131C0 38 61 00 18 */ addi r3, r1, 0x18 /* 80016264 000131C4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80016268 000131C8 38 A0 00 7F */ li r5, 0x7f /* 8001626C 000131CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80016270 000131D0 38 C0 00 40 */ li r6, 0x40 /* 80016274 000131D4 38 E0 00 00 */ li r7, 0 /* 80016278 000131D8 39 20 00 00 */ li r9, 0 /* 8001627C 000131DC 48 2D 3A F9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80016280 000131E0 80 01 00 18 */ lwz r0, 0x18(r1) /* 80016284 000131E4 7F A3 EB 78 */ mr r3, r29 /* 80016288 000131E8 38 81 00 1C */ addi r4, r1, 0x1c /* 8001628C 000131EC 90 01 00 1C */ stw r0, 0x1c(r1) /* 80016290 000131F0 4B FF AE FD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_80016294: /* 80016294 000131F4 80 7E 08 70 */ lwz r3, 0x870(r30) /* 80016298 000131F8 88 1D 09 C5 */ lbz r0, 0x9c5(r29) /* 8001629C 000131FC 80 83 00 74 */ lwz r4, 0x74(r3) /* 800162A0 00013200 7C 64 00 D0 */ neg r3, r4 /* 800162A4 00013204 7C 63 23 78 */ or r3, r3, r4 /* 800162A8 00013208 50 60 2E F6 */ rlwimi r0, r3, 5, 0x1b, 0x1b /* 800162AC 0001320C 98 1D 09 C5 */ stb r0, 0x9c5(r29) /* 800162B0 00013210 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 800162B4 00013214 2C 00 00 01 */ cmpwi r0, 1 /* 800162B8 00013218 41 82 01 60 */ beq lbl_80016418 /* 800162BC 0001321C C0 7D 00 54 */ lfs f3, 0x54(r29) /* 800162C0 00013220 C0 3D 00 44 */ lfs f1, 0x44(r29) /* 800162C4 00013224 FC 80 1A 10 */ fabs f4, f3 /* 800162C8 00013228 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 800162CC 0001322C C0 42 81 EC */ lfs f2, lbl_805A9F0C@sda21(r2) /* 800162D0 00013230 D0 01 00 54 */ stfs f0, 0x54(r1) /* 800162D4 00013234 FC 00 20 18 */ frsp f0, f4 /* 800162D8 00013238 D0 21 00 58 */ stfs f1, 0x58(r1) /* 800162DC 0001323C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 800162E0 00013240 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 800162E4 00013244 41 81 00 2C */ bgt lbl_80016310 /* 800162E8 00013248 C0 7D 00 58 */ lfs f3, 0x58(r29) /* 800162EC 0001324C C0 1D 00 48 */ lfs f0, 0x48(r29) /* 800162F0 00013250 FC 80 1A 10 */ fabs f4, f3 /* 800162F4 00013254 C0 3D 00 38 */ lfs f1, 0x38(r29) /* 800162F8 00013258 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800162FC 0001325C FC 00 20 18 */ frsp f0, f4 /* 80016300 00013260 D0 21 00 48 */ stfs f1, 0x48(r1) /* 80016304 00013264 D0 61 00 50 */ stfs f3, 0x50(r1) /* 80016308 00013268 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8001630C 0001326C 40 81 01 0C */ ble lbl_80016418 lbl_80016310: /* 80016310 00013270 C0 7D 00 60 */ lfs f3, 0x60(r29) /* 80016314 00013274 38 61 00 A0 */ addi r3, r1, 0xa0 /* 80016318 00013278 C0 5D 00 50 */ lfs f2, 0x50(r29) /* 8001631C 0001327C C0 3D 00 40 */ lfs f1, 0x40(r29) /* 80016320 00013280 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016324 00013284 D0 21 00 AC */ stfs f1, 0xac(r1) /* 80016328 00013288 D0 41 00 B0 */ stfs f2, 0xb0(r1) /* 8001632C 0001328C D0 61 00 B4 */ stfs f3, 0xb4(r1) /* 80016330 00013290 C0 7D 00 58 */ lfs f3, 0x58(r29) /* 80016334 00013294 C0 5D 00 48 */ lfs f2, 0x48(r29) /* 80016338 00013298 C0 3D 00 38 */ lfs f1, 0x38(r29) /* 8001633C 0001329C D0 61 00 A8 */ stfs f3, 0xa8(r1) /* 80016340 000132A0 D0 21 00 A0 */ stfs f1, 0xa0(r1) /* 80016344 000132A4 D0 41 00 A4 */ stfs f2, 0xa4(r1) /* 80016348 000132A8 D0 01 00 A8 */ stfs f0, 0xa8(r1) /* 8001634C 000132AC 48 2F E3 AD */ bl CanBeNormalized__9CVector3fCFv /* 80016350 000132B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016354 000132B4 41 82 00 80 */ beq lbl_800163D4 /* 80016358 000132B8 38 61 00 24 */ addi r3, r1, 0x24 /* 8001635C 000132BC 38 81 00 A0 */ addi r4, r1, 0xa0 /* 80016360 000132C0 48 2F E4 F1 */ bl AsNormalized__9CVector3fCFv /* 80016364 000132C4 38 61 00 30 */ addi r3, r1, 0x30 /* 80016368 000132C8 38 81 00 24 */ addi r4, r1, 0x24 /* 8001636C 000132CC 48 2F DA 65 */ bl __ct__13CUnitVector3fFRC9CVector3f /* 80016370 000132D0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80016374 000132D4 7C 7B 1B 78 */ mr r27, r3 /* 80016378 000132D8 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 8001637C 000132DC 38 61 00 3C */ addi r3, r1, 0x3c /* 80016380 000132E0 48 2F DA 51 */ bl __ct__13CUnitVector3fFRC9CVector3f /* 80016384 000132E4 3C 80 80 5A */ lis r4, sUpVector__9CVector3f@ha /* 80016388 000132E8 7F 65 DB 78 */ mr r5, r27 /* 8001638C 000132EC 38 C4 66 F4 */ addi r6, r4, sUpVector__9CVector3f@l /* 80016390 000132F0 7C 64 1B 78 */ mr r4, r3 /* 80016394 000132F4 38 61 00 B8 */ addi r3, r1, 0xb8 /* 80016398 000132F8 48 2F D7 79 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 8001639C 000132FC 38 7D 00 34 */ addi r3, r29, 0x34 /* 800163A0 00013300 38 81 00 B8 */ addi r4, r1, 0xb8 /* 800163A4 00013304 48 2F C7 9D */ bl __as__12CTransform4fFRC12CTransform4f /* 800163A8 00013308 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 800163AC 0001330C 38 60 00 01 */ li r3, 1 /* 800163B0 00013310 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 800163B4 00013314 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 800163B8 00013318 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 800163BC 0001331C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c /* 800163C0 00013320 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 800163C4 00013324 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 800163C8 00013328 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d /* 800163CC 0001332C 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 800163D0 00013330 48 00 00 3C */ b lbl_8001640C lbl_800163D4: /* 800163D4 00013334 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha /* 800163D8 00013338 38 7D 00 34 */ addi r3, r29, 0x34 /* 800163DC 0001333C 38 84 66 70 */ addi r4, r4, sIdentity__12CTransform4f@l /* 800163E0 00013340 48 2F C7 61 */ bl __as__12CTransform4fFRC12CTransform4f /* 800163E4 00013344 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 800163E8 00013348 38 60 00 01 */ li r3, 1 /* 800163EC 0001334C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 800163F0 00013350 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 800163F4 00013354 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 800163F8 00013358 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c /* 800163FC 0001335C 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 80016400 00013360 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 80016404 00013364 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d /* 80016408 00013368 98 1D 00 E4 */ stb r0, 0xe4(r29) lbl_8001640C: /* 8001640C 0001336C 7F A3 EB 78 */ mr r3, r29 /* 80016410 00013370 38 81 00 AC */ addi r4, r1, 0xac /* 80016414 00013374 48 03 CA 79 */ bl SetTranslation__6CActorFRC9CVector3f lbl_80016418: /* 80016418 00013378 C0 1D 01 38 */ lfs f0, 0x138(r29) /* 8001641C 0001337C D0 1D 07 94 */ stfs f0, 0x794(r29) /* 80016420 00013380 C0 1D 01 3C */ lfs f0, 0x13c(r29) /* 80016424 00013384 D0 1D 07 98 */ stfs f0, 0x798(r29) /* 80016428 00013388 C0 1D 01 40 */ lfs f0, 0x140(r29) /* 8001642C 0001338C D0 1D 07 9C */ stfs f0, 0x79c(r29) /* 80016430 00013390 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 /* 80016434 00013394 CB E1 01 10 */ lfd f31, 0x110(r1) /* 80016438 00013398 BA E1 00 EC */ lmw r23, 0xec(r1) /* 8001643C 0001339C 80 01 01 24 */ lwz r0, 0x124(r1) /* 80016440 000133A0 7C 08 03 A6 */ mtlr r0 /* 80016444 000133A4 38 21 01 20 */ addi r1, r1, 0x120 .global sub_80016448 sub_80016448: /* 80016448 000133A8 4E 80 00 20 */ blr .global UpdateWaterSurfaceCameraBias__7CPlayerFR13CStateManager UpdateWaterSurfaceCameraBias__7CPlayerFR13CStateManager: /* 8001644C 000133AC 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80016450 000133B0 7C 08 02 A6 */ mflr r0 /* 80016454 000133B4 90 01 00 64 */ stw r0, 0x64(r1) /* 80016458 000133B8 DB E1 00 50 */ stfd f31, 0x50(r1) /* 8001645C 000133BC F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 80016460 000133C0 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80016464 000133C4 A0 03 00 C4 */ lhz r0, 0xc4(r3) /* 80016468 000133C8 7C 7F 1B 78 */ mr r31, r3 /* 8001646C 000133CC 7C 83 23 78 */ mr r3, r4 /* 80016470 000133D0 38 81 00 0C */ addi r4, r1, 0xc /* 80016474 000133D4 B0 01 00 08 */ sth r0, 8(r1) /* 80016478 000133D8 B0 01 00 0C */ sth r0, 0xc(r1) /* 8001647C 000133DC 48 03 61 29 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80016480 000133E0 7C 64 1B 78 */ mr r4, r3 /* 80016484 000133E4 38 61 00 10 */ addi r3, r1, 0x10 /* 80016488 000133E8 48 09 03 D9 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" /* 8001648C 000133EC 80 83 00 04 */ lwz r4, 4(r3) /* 80016490 000133F0 28 04 00 00 */ cmplwi r4, 0 /* 80016494 000133F4 41 82 00 90 */ beq lbl_80016524 /* 80016498 000133F8 38 61 00 24 */ addi r3, r1, 0x24 /* 8001649C 000133FC 48 06 02 31 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 800164A0 00013400 C3 E1 00 38 */ lfs f31, 0x38(r1) /* 800164A4 00013404 7F E4 FB 78 */ mr r4, r31 /* 800164A8 00013408 38 61 00 18 */ addi r3, r1, 0x18 /* 800164AC 0001340C 48 26 E8 D1 */ bl GetEyePosition__7CPlayerCFv /* 800164B0 00013410 C0 41 00 20 */ lfs f2, 0x20(r1) /* 800164B4 00013414 C0 7F 09 C8 */ lfs f3, 0x9c8(r31) /* 800164B8 00013418 EC 42 18 28 */ fsubs f2, f2, f3 /* 800164BC 0001341C FC 02 F8 40 */ fcmpo cr0, f2, f31 /* 800164C0 00013420 EC 82 F8 28 */ fsubs f4, f2, f31 /* 800164C4 00013424 4C 41 13 82 */ cror 2, 1, 2 /* 800164C8 00013428 40 82 00 2C */ bne lbl_800164F4 /* 800164CC 0001342C C0 22 81 F0 */ lfs f1, lbl_805A9F10@sda21(r2) /* 800164D0 00013430 FC 04 08 40 */ fcmpo cr0, f4, f1 /* 800164D4 00013434 4C 40 13 82 */ cror 2, 0, 2 /* 800164D8 00013438 40 82 00 1C */ bne lbl_800164F4 /* 800164DC 0001343C EC 03 F8 2A */ fadds f0, f3, f31 /* 800164E0 00013440 7F E3 FB 78 */ mr r3, r31 /* 800164E4 00013444 EC 01 00 2A */ fadds f0, f1, f0 /* 800164E8 00013448 EC 20 10 28 */ fsubs f1, f0, f2 /* 800164EC 0001344C 48 26 DE 81 */ bl SetEyeZBias__7CPlayerFf /* 800164F0 00013450 48 00 00 34 */ b lbl_80016524 lbl_800164F4: /* 800164F4 00013454 FC 02 F8 40 */ fcmpo cr0, f2, f31 /* 800164F8 00013458 40 80 00 2C */ bge lbl_80016524 /* 800164FC 0001345C C0 02 81 F4 */ lfs f0, lbl_805A9F14@sda21(r2) /* 80016500 00013460 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80016504 00013464 4C 41 13 82 */ cror 2, 1, 2 /* 80016508 00013468 40 82 00 1C */ bne lbl_80016524 /* 8001650C 0001346C EC 23 F8 2A */ fadds f1, f3, f31 /* 80016510 00013470 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) /* 80016514 00013474 7F E3 FB 78 */ mr r3, r31 /* 80016518 00013478 EC 01 00 28 */ fsubs f0, f1, f0 /* 8001651C 0001347C EC 20 10 28 */ fsubs f1, f0, f2 /* 80016520 00013480 48 26 DE 4D */ bl SetEyeZBias__7CPlayerFf lbl_80016524: /* 80016524 00013484 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 80016528 00013488 80 01 00 64 */ lwz r0, 0x64(r1) /* 8001652C 0001348C CB E1 00 50 */ lfd f31, 0x50(r1) /* 80016530 00013490 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 80016534 00013494 7C 08 03 A6 */ mtlr r0 /* 80016538 00013498 38 21 00 60 */ addi r1, r1, 0x60 /* 8001653C 0001349C 4E 80 00 20 */ blr .global PreThink__7CPlayerFfR13CStateManager PreThink__7CPlayerFfR13CStateManager: /* 80016540 000134A0 38 00 00 00 */ li r0, 0 /* 80016544 000134A4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016548 000134A8 98 03 05 58 */ stb r0, 0x558(r3) /* 8001654C 000134AC 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80016550 000134B0 D0 03 05 5C */ stfs f0, 0x55c(r3) /* 80016554 000134B4 D0 03 05 60 */ stfs f0, 0x560(r3) /* 80016558 000134B8 C4 04 66 A0 */ lfsu f0, sZeroVector__9CVector3f@l(r4) /* 8001655C 000134BC D0 03 05 64 */ stfs f0, 0x564(r3) /* 80016560 000134C0 C0 04 00 04 */ lfs f0, 4(r4) /* 80016564 000134C4 D0 03 05 68 */ stfs f0, 0x568(r3) /* 80016568 000134C8 C0 04 00 08 */ lfs f0, 8(r4) /* 8001656C 000134CC D0 03 05 6C */ stfs f0, 0x56c(r3) /* 80016570 000134D0 D0 23 0A 04 */ stfs f1, 0xa04(r3) /* 80016574 000134D4 4E 80 00 20 */ blr .global AcceptScriptMsg__7CPlayerF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__7CPlayerF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 80016578 000134D8 94 21 FE 00 */ stwu r1, -0x200(r1) /* 8001657C 000134DC 7C 08 02 A6 */ mflr r0 /* 80016580 000134E0 90 01 02 04 */ stw r0, 0x204(r1) /* 80016584 000134E4 DB E1 01 F0 */ stfd f31, 0x1f0(r1) /* 80016588 000134E8 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 /* 8001658C 000134EC DB C1 01 E0 */ stfd f30, 0x1e0(r1) /* 80016590 000134F0 F3 C1 01 E8 */ psq_st f30, 488(r1), 0, qr0 /* 80016594 000134F4 BF 41 01 C8 */ stmw r26, 0x1c8(r1) /* 80016598 000134F8 7C 9C 23 78 */ mr r28, r4 /* 8001659C 000134FC 7C 7B 1B 78 */ mr r27, r3 /* 800165A0 00013500 38 1C FF E9 */ addi r0, r28, -23 /* 800165A4 00013504 7C BD 2B 78 */ mr r29, r5 /* 800165A8 00013508 28 00 00 15 */ cmplwi r0, 0x15 /* 800165AC 0001350C 7C DE 33 78 */ mr r30, r6 /* 800165B0 00013510 41 81 07 74 */ bgt lbl_80016D24 /* 800165B4 00013514 3C 80 80 3E */ lis r4, lbl_803D978C@ha /* 800165B8 00013518 54 00 10 3A */ slwi r0, r0, 2 /* 800165BC 0001351C 38 84 97 8C */ addi r4, r4, lbl_803D978C@l /* 800165C0 00013520 7C 04 00 2E */ lwzx r0, r4, r0 /* 800165C4 00013524 7C 09 03 A6 */ mtctr r0 /* 800165C8 00013528 4E 80 04 20 */ bctr .global lbl_800165CC lbl_800165CC: /* 800165CC 0001352C 80 7B 02 58 */ lwz r3, 0x258(r27) /* 800165D0 00013530 2C 03 00 00 */ cmpwi r3, 0 /* 800165D4 00013534 41 82 02 3C */ beq lbl_80016810 /* 800165D8 00013538 80 1B 02 F8 */ lwz r0, 0x2f8(r27) /* 800165DC 0001353C 2C 00 00 01 */ cmpwi r0, 1 /* 800165E0 00013540 41 82 02 30 */ beq lbl_80016810 /* 800165E4 00013544 C0 3B 03 00 */ lfs f1, 0x300(r27) /* 800165E8 00013548 C0 02 81 50 */ lfs f0, lbl_805A9E70@sda21(r2) /* 800165EC 0001354C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800165F0 00013550 40 81 02 20 */ ble lbl_80016810 /* 800165F4 00013554 2C 03 00 03 */ cmpwi r3, 3 /* 800165F8 00013558 41 82 03 4C */ beq lbl_80016944 /* 800165FC 0001355C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80016600 00013560 C0 22 81 34 */ lfs f1, lbl_805A9E54@sda21(r2) /* 80016604 00013564 C0 03 00 C4 */ lfs f0, 0xc4(r3) /* 80016608 00013568 C0 42 81 08 */ lfs f2, lbl_805A9E28@sda21(r2) /* 8001660C 0001356C FC 00 00 50 */ fneg f0, f0 /* 80016610 00013570 C3 C2 81 0C */ lfs f30, lbl_805A9E2C@sda21(r2) /* 80016614 00013574 EC 01 00 32 */ fmuls f0, f1, f0 /* 80016618 00013578 EC 22 00 32 */ fmuls f1, f2, f0 /* 8001661C 0001357C FC 1E 08 00 */ fcmpu cr0, f30, f1 /* 80016620 00013580 40 82 00 08 */ bne lbl_80016628 /* 80016624 00013584 48 00 00 10 */ b lbl_80016634 lbl_80016628: /* 80016628 00013588 FC 00 08 34 */ frsqrte f0, f1 /* 8001662C 0001358C FF C1 00 32 */ fmul f30, f1, f0 /* 80016630 00013590 FF C0 F0 18 */ frsp f30, f30 lbl_80016634: /* 80016634 00013594 C0 1B 07 9C */ lfs f0, 0x79c(r27) /* 80016638 00013598 38 81 00 4C */ addi r4, r1, 0x4c /* 8001663C 0001359C C0 42 82 04 */ lfs f2, lbl_805A9F24@sda21(r2) /* 80016640 000135A0 38 62 81 F8 */ addi r3, r2, lbl_805A9F18@sda21 /* 80016644 000135A4 FC 20 00 50 */ fneg f1, f0 /* 80016648 000135A8 C0 02 82 00 */ lfs f0, lbl_805A9F20@sda21(r2) /* 8001664C 000135AC 38 A2 81 FC */ addi r5, r2, lbl_805A9F1C@sda21 /* 80016650 000135B0 EC 02 00 7A */ fmadds f0, f2, f1, f0 /* 80016654 000135B4 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 80016658 000135B8 4B FF 5C 5D */ bl "Clamp__5CMathFRCfRCfRCf" /* 8001665C 000135BC C3 E3 00 00 */ lfs f31, 0(r3) /* 80016660 000135C0 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 80016664 000135C4 C0 1B 07 9C */ lfs f0, 0x79c(r27) /* 80016668 000135C8 8B E1 00 08 */ lbz r31, 8(r1) /* 8001666C 000135CC FC 00 00 50 */ fneg f0, f0 /* 80016670 000135D0 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80016674 000135D4 40 80 00 2C */ bge lbl_800166A0 /* 80016678 000135D8 3C 60 80 3D */ lis r3, skPlayerLandSfxSoft__7CPlayer@ha /* 8001667C 000135DC 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 80016680 000135E0 38 A3 C4 38 */ addi r5, r3, skPlayerLandSfxSoft__7CPlayer@l /* 80016684 000135E4 7F C4 F3 78 */ mr r4, r30 /* 80016688 000135E8 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l /* 8001668C 000135EC 7F 63 DB 78 */ mr r3, r27 /* 80016690 000135F0 38 C0 00 18 */ li r6, 0x18 /* 80016694 000135F4 48 00 1A A1 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs /* 80016698 000135F8 7C 7A 1B 78 */ mr r26, r3 /* 8001669C 000135FC 48 00 00 D4 */ b lbl_80016770 lbl_800166A0: /* 800166A0 00013600 3C 60 80 3D */ lis r3, skPlayerLandSfxHard__7CPlayer@ha /* 800166A4 00013604 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 800166A8 00013608 38 A3 C4 68 */ addi r5, r3, skPlayerLandSfxHard__7CPlayer@l /* 800166AC 0001360C 7F C4 F3 78 */ mr r4, r30 /* 800166B0 00013610 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l /* 800166B4 00013614 7F 63 DB 78 */ mr r3, r27 /* 800166B8 00013618 38 C0 00 18 */ li r6, 0x18 /* 800166BC 0001361C 48 00 1A 79 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs /* 800166C0 00013620 7C 60 1B 78 */ mr r0, r3 /* 800166C4 00013624 7F 63 DB 78 */ mr r3, r27 /* 800166C8 00013628 7C 1A 03 78 */ mr r26, r0 /* 800166CC 0001362C 38 80 06 0E */ li r4, 0x60e /* 800166D0 00013630 38 A0 00 7F */ li r5, 0x7f /* 800166D4 00013634 38 C0 00 05 */ li r6, 5 /* 800166D8 00013638 4B FF A5 89 */ bl StartSamusVoiceSfx__7CPlayerFUssi /* 800166DC 0001363C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 800166E0 00013640 38 00 00 01 */ li r0, 1 /* 800166E4 00013644 C0 02 81 54 */ lfs f0, lbl_805A9E74@sda21(r2) /* 800166E8 00013648 38 61 00 E8 */ addi r3, r1, 0xe8 /* 800166EC 0001364C D0 3B 05 5C */ stfs f1, 0x55c(r27) /* 800166F0 00013650 C0 22 81 50 */ lfs f1, lbl_805A9E70@sda21(r2) /* 800166F4 00013654 D0 1B 05 60 */ stfs f0, 0x560(r27) /* 800166F8 00013658 C0 42 82 08 */ lfs f2, lbl_805A9F28@sda21(r2) /* 800166FC 0001365C C0 9B 00 60 */ lfs f4, 0x60(r27) /* 80016700 00013660 C0 7B 00 50 */ lfs f3, 0x50(r27) /* 80016704 00013664 C0 1B 00 40 */ lfs f0, 0x40(r27) /* 80016708 00013668 D0 1B 05 64 */ stfs f0, 0x564(r27) /* 8001670C 0001366C D0 7B 05 68 */ stfs f3, 0x568(r27) /* 80016710 00013670 D0 9B 05 6C */ stfs f4, 0x56c(r27) /* 80016714 00013674 98 1B 05 58 */ stb r0, 0x558(r27) /* 80016718 00013678 48 14 6F AD */ bl BuildLandingCameraShake__16CCameraShakeDataFff /* 8001671C 0001367C 80 7E 08 70 */ lwz r3, 0x870(r30) /* 80016720 00013680 38 81 00 E8 */ addi r4, r1, 0xe8 /* 80016724 00013684 38 A0 00 00 */ li r5, 0 /* 80016728 00013688 4B FF 42 F9 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab /* 8001672C 0001368C 34 81 01 68 */ addic. r4, r1, 0x168 /* 80016730 00013690 41 82 00 10 */ beq lbl_80016740 /* 80016734 00013694 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80016738 00013698 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 8001673C 0001369C 90 04 00 00 */ stw r0, 0(r4) lbl_80016740: /* 80016740 000136A0 34 81 01 2C */ addic. r4, r1, 0x12c /* 80016744 000136A4 41 82 00 10 */ beq lbl_80016754 /* 80016748 000136A8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 8001674C 000136AC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 80016750 000136B0 90 04 00 00 */ stw r0, 0(r4) lbl_80016754: /* 80016754 000136B4 34 81 00 F0 */ addic. r4, r1, 0xf0 /* 80016758 000136B8 41 82 00 10 */ beq lbl_80016768 /* 8001675C 000136BC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha /* 80016760 000136C0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l /* 80016764 000136C4 90 04 00 00 */ stw r0, 0(r4) lbl_80016768: /* 80016768 000136C8 7F 63 DB 78 */ mr r3, r27 /* 8001676C 000136CC 4B FF EF A9 */ bl StartLandingControlFreeze__7CPlayerFv lbl_80016770: /* 80016770 000136D0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80016774 000136D4 7F E5 FB 78 */ mr r5, r31 /* 80016778 000136D8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 8001677C 000136DC 38 61 00 44 */ addi r3, r1, 0x44 /* 80016780 000136E0 57 44 04 3E */ clrlwi r4, r26, 0x10 /* 80016784 000136E4 38 C0 00 40 */ li r6, 0x40 /* 80016788 000136E8 38 E0 00 01 */ li r7, 1 /* 8001678C 000136EC 39 20 00 00 */ li r9, 0 /* 80016790 000136F0 48 2D 35 E5 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80016794 000136F4 80 01 00 44 */ lwz r0, 0x44(r1) /* 80016798 000136F8 7F 63 DB 78 */ mr r3, r27 /* 8001679C 000136FC 38 81 00 48 */ addi r4, r1, 0x48 /* 800167A0 00013700 90 01 00 48 */ stw r0, 0x48(r1) /* 800167A4 00013704 4B FF A9 E9 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 800167A8 00013708 C0 1B 07 9C */ lfs f0, 0x79c(r27) /* 800167AC 0001370C C0 42 82 0C */ lfs f2, lbl_805A9F2C@sda21(r2) /* 800167B0 00013710 FC 20 00 50 */ fneg f1, f0 /* 800167B4 00013714 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800167B8 00013718 EC 62 00 72 */ fmuls f3, f2, f1 /* 800167BC 0001371C FC 03 00 40 */ fcmpo cr0, f3, f0 /* 800167C0 00013720 40 81 00 44 */ ble lbl_80016804 /* 800167C4 00013724 FC 20 1A 10 */ fabs f1, f3 /* 800167C8 00013728 C8 02 82 10 */ lfd f0, lbl_805A9F30@sda21(r2) /* 800167CC 0001372C 80 7E 08 8C */ lwz r3, 0x88c(r30) /* 800167D0 00013730 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800167D4 00013734 40 81 00 1C */ ble lbl_800167F0 /* 800167D8 00013738 C0 42 81 88 */ lfs f2, lbl_805A9EA8@sda21(r2) /* 800167DC 0001373C C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 800167E0 00013740 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) /* 800167E4 00013744 FC 23 10 6E */ fsel f1, f3, f1, f2 /* 800167E8 00013748 EC 20 00 72 */ fmuls f1, f0, f1 /* 800167EC 0001374C 48 00 00 08 */ b lbl_800167F4 lbl_800167F0: /* 800167F0 00013750 FC 20 18 90 */ fmr f1, f3 lbl_800167F4: /* 800167F4 00013754 7F C4 F3 78 */ mr r4, r30 /* 800167F8 00013758 38 A0 00 0F */ li r5, 0xf /* 800167FC 0001375C 38 C0 00 01 */ li r6, 1 /* 80016800 00013760 48 21 7A 45 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority lbl_80016804: /* 80016804 00013764 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016808 00013768 D0 1B 02 A0 */ stfs f0, 0x2a0(r27) /* 8001680C 0001376C 48 00 01 38 */ b lbl_80016944 lbl_80016810: /* 80016810 00013770 2C 03 00 00 */ cmpwi r3, 0 /* 80016814 00013774 41 82 01 30 */ beq lbl_80016944 /* 80016818 00013778 80 1B 02 F8 */ lwz r0, 0x2f8(r27) /* 8001681C 0001377C 2C 00 00 01 */ cmpwi r0, 1 /* 80016820 00013780 40 82 01 24 */ bne lbl_80016944 /* 80016824 00013784 C0 3B 01 40 */ lfs f1, 0x140(r27) /* 80016828 00013788 C0 02 82 18 */ lfs f0, lbl_805A9F38@sda21(r2) /* 8001682C 0001378C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80016830 00013790 40 80 00 3C */ bge lbl_8001686C /* 80016834 00013794 80 7B 07 68 */ lwz r3, 0x768(r27) /* 80016838 00013798 48 0D B1 99 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 8001683C 0001379C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016840 000137A0 40 82 00 2C */ bne lbl_8001686C /* 80016844 000137A4 80 1B 02 58 */ lwz r0, 0x258(r27) /* 80016848 000137A8 2C 00 00 02 */ cmpwi r0, 2 /* 8001684C 000137AC 40 82 00 20 */ bne lbl_8001686C /* 80016850 000137B0 C0 3B 03 00 */ lfs f1, 0x300(r27) /* 80016854 000137B4 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) /* 80016858 000137B8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001685C 000137BC 40 81 00 10 */ ble lbl_8001686C /* 80016860 000137C0 C0 22 81 20 */ lfs f1, lbl_805A9E40@sda21(r2) /* 80016864 000137C4 7F 63 DB 78 */ mr r3, r27 /* 80016868 000137C8 48 10 3C 79 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf lbl_8001686C: /* 8001686C 000137CC 80 7B 07 68 */ lwz r3, 0x768(r27) /* 80016870 000137D0 48 0D 7F 41 */ bl StartLandingSfx__10CMorphBallFv /* 80016874 000137D4 C0 3B 01 40 */ lfs f1, 0x140(r27) /* 80016878 000137D8 C0 02 82 1C */ lfs f0, lbl_805A9F3C@sda21(r2) /* 8001687C 000137DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80016880 000137E0 40 80 00 60 */ bge lbl_800168E0 /* 80016884 000137E4 FC 20 08 50 */ fneg f1, f1 /* 80016888 000137E8 C0 42 82 0C */ lfs f2, lbl_805A9F2C@sda21(r2) /* 8001688C 000137EC C0 62 81 68 */ lfs f3, lbl_805A9E88@sda21(r2) /* 80016890 000137F0 C8 02 82 10 */ lfd f0, lbl_805A9F30@sda21(r2) /* 80016894 000137F4 EC 22 00 72 */ fmuls f1, f2, f1 /* 80016898 000137F8 80 7E 08 8C */ lwz r3, 0x88c(r30) /* 8001689C 000137FC EC 63 00 72 */ fmuls f3, f3, f1 /* 800168A0 00013800 FC 20 1A 10 */ fabs f1, f3 /* 800168A4 00013804 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800168A8 00013808 40 81 00 1C */ ble lbl_800168C4 /* 800168AC 0001380C C0 42 81 88 */ lfs f2, lbl_805A9EA8@sda21(r2) /* 800168B0 00013810 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 800168B4 00013814 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) /* 800168B8 00013818 FC 23 10 6E */ fsel f1, f3, f1, f2 /* 800168BC 0001381C EC 20 00 72 */ fmuls f1, f0, f1 /* 800168C0 00013820 48 00 00 08 */ b lbl_800168C8 lbl_800168C4: /* 800168C4 00013824 FC 20 18 90 */ fmr f1, f3 lbl_800168C8: /* 800168C8 00013828 7F C4 F3 78 */ mr r4, r30 /* 800168CC 0001382C 38 A0 00 0F */ li r5, 0xf /* 800168D0 00013830 38 C0 00 01 */ li r6, 1 /* 800168D4 00013834 48 21 79 71 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority /* 800168D8 00013838 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800168DC 0001383C D0 1B 02 A0 */ stfs f0, 0x2a0(r27) lbl_800168E0: /* 800168E0 00013840 C0 3B 01 40 */ lfs f1, 0x140(r27) /* 800168E4 00013844 C0 02 82 20 */ lfs f0, lbl_805A9F40@sda21(r2) /* 800168E8 00013848 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800168EC 0001384C 40 80 00 58 */ bge lbl_80016944 /* 800168F0 00013850 FC 20 08 50 */ fneg f1, f1 /* 800168F4 00013854 C0 42 82 0C */ lfs f2, lbl_805A9F2C@sda21(r2) /* 800168F8 00013858 C8 02 82 10 */ lfd f0, lbl_805A9F30@sda21(r2) /* 800168FC 0001385C 80 7E 08 8C */ lwz r3, 0x88c(r30) /* 80016900 00013860 EC 62 00 72 */ fmuls f3, f2, f1 /* 80016904 00013864 FC 20 1A 10 */ fabs f1, f3 /* 80016908 00013868 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001690C 0001386C 40 81 00 1C */ ble lbl_80016928 /* 80016910 00013870 C0 42 81 88 */ lfs f2, lbl_805A9EA8@sda21(r2) /* 80016914 00013874 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80016918 00013878 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) /* 8001691C 0001387C FC 23 10 6E */ fsel f1, f3, f1, f2 /* 80016920 00013880 EC 20 00 72 */ fmuls f1, f0, f1 /* 80016924 00013884 48 00 00 08 */ b lbl_8001692C lbl_80016928: /* 80016928 00013888 FC 20 18 90 */ fmr f1, f3 lbl_8001692C: /* 8001692C 0001388C 7F C4 F3 78 */ mr r4, r30 /* 80016930 00013890 38 A0 00 0F */ li r5, 0xf /* 80016934 00013894 38 C0 00 01 */ li r6, 1 /* 80016938 00013898 48 21 79 0D */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority /* 8001693C 0001389C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016940 000138A0 D0 1B 02 A0 */ stfs f0, 0x2a0(r27) lbl_80016944: /* 80016944 000138A4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016948 000138A8 7F 63 DB 78 */ mr r3, r27 /* 8001694C 000138AC 7F C5 F3 78 */ mr r5, r30 /* 80016950 000138B0 38 80 00 00 */ li r4, 0 /* 80016954 000138B4 D0 1B 03 00 */ stfs f0, 0x300(r27) /* 80016958 000138B8 48 26 FA 95 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager /* 8001695C 000138BC 48 00 03 C8 */ b lbl_80016D24 .global lbl_80016960 lbl_80016960: /* 80016960 000138C0 80 9B 02 F8 */ lwz r4, 0x2f8(r27) /* 80016964 000138C4 2C 04 00 01 */ cmpwi r4, 1 /* 80016968 000138C8 40 82 00 14 */ bne lbl_8001697C /* 8001696C 000138CC 80 7B 07 68 */ lwz r3, 0x768(r27) /* 80016970 000138D0 80 03 18 7C */ lwz r0, 0x187c(r3) /* 80016974 000138D4 2C 00 00 01 */ cmpwi r0, 1 /* 80016978 000138D8 41 82 03 AC */ beq lbl_80016D24 lbl_8001697C: /* 8001697C 000138DC 2C 04 00 01 */ cmpwi r4, 1 /* 80016980 000138E0 41 82 00 18 */ beq lbl_80016998 /* 80016984 000138E4 7F 63 DB 78 */ mr r3, r27 /* 80016988 000138E8 7F C5 F3 78 */ mr r5, r30 /* 8001698C 000138EC 38 80 00 03 */ li r4, 3 /* 80016990 000138F0 48 26 FA 5D */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager /* 80016994 000138F4 48 00 03 90 */ b lbl_80016D24 lbl_80016998: /* 80016998 000138F8 80 1B 02 58 */ lwz r0, 0x258(r27) /* 8001699C 000138FC 2C 00 00 00 */ cmpwi r0, 0 /* 800169A0 00013900 40 82 03 84 */ bne lbl_80016D24 /* 800169A4 00013904 7F 63 DB 78 */ mr r3, r27 /* 800169A8 00013908 7F C5 F3 78 */ mr r5, r30 /* 800169AC 0001390C 38 80 00 04 */ li r4, 4 /* 800169B0 00013910 48 26 FA 3D */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager /* 800169B4 00013914 48 00 03 70 */ b lbl_80016D24 .global lbl_800169B8 lbl_800169B8: /* 800169B8 00013918 80 1B 02 F8 */ lwz r0, 0x2f8(r27) /* 800169BC 0001391C 2C 00 00 01 */ cmpwi r0, 1 /* 800169C0 00013920 40 82 03 64 */ bne lbl_80016D24 /* 800169C4 00013924 80 9B 07 68 */ lwz r4, 0x768(r27) /* 800169C8 00013928 80 04 18 7C */ lwz r0, 0x187c(r4) /* 800169CC 0001392C 2C 00 00 01 */ cmpwi r0, 1 /* 800169D0 00013930 40 82 03 54 */ bne lbl_80016D24 /* 800169D4 00013934 80 1B 02 58 */ lwz r0, 0x258(r27) /* 800169D8 00013938 2C 00 00 02 */ cmpwi r0, 2 /* 800169DC 0001393C 41 82 03 48 */ beq lbl_80016D24 /* 800169E0 00013940 7F C5 F3 78 */ mr r5, r30 /* 800169E4 00013944 38 80 00 02 */ li r4, 2 /* 800169E8 00013948 48 26 FA 05 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager /* 800169EC 0001394C 48 00 03 38 */ b lbl_80016D24 .global lbl_800169F0 lbl_800169F0: /* 800169F0 00013950 38 00 00 02 */ li r0, 2 /* 800169F4 00013954 90 1B 02 AC */ stw r0, 0x2ac(r27) /* 800169F8 00013958 48 00 03 2C */ b lbl_80016D24 .global lbl_800169FC lbl_800169FC: /* 800169FC 0001395C 38 00 00 03 */ li r0, 3 /* 80016A00 00013960 90 1B 02 AC */ stw r0, 0x2ac(r27) /* 80016A04 00013964 48 00 03 20 */ b lbl_80016D24 .global lbl_80016A08 lbl_80016A08: /* 80016A08 00013968 38 00 00 00 */ li r0, 0 /* 80016A0C 0001396C 90 1B 02 AC */ stw r0, 0x2ac(r27) /* 80016A10 00013970 48 00 03 14 */ b lbl_80016D24 .global lbl_80016A14 lbl_80016A14: /* 80016A14 00013974 38 00 00 07 */ li r0, 7 /* 80016A18 00013978 90 1B 02 AC */ stw r0, 0x2ac(r27) /* 80016A1C 0001397C 48 00 03 08 */ b lbl_80016D24 .global lbl_80016A20 lbl_80016A20: /* 80016A20 00013980 A0 1D 00 00 */ lhz r0, 0(r29) /* 80016A24 00013984 38 A1 00 30 */ addi r5, r1, 0x30 /* 80016A28 00013988 38 80 00 01 */ li r4, 1 /* 80016A2C 0001398C B0 01 00 30 */ sth r0, 0x30(r1) /* 80016A30 00013990 48 03 C8 91 */ bl SetInFluid__6CActorFb9TUniqueId /* 80016A34 00013994 7F 63 DB 78 */ mr r3, r27 /* 80016A38 00013998 7F C4 F3 78 */ mr r4, r30 /* 80016A3C 0001399C 48 26 E4 8D */ bl UpdateSubmerged__7CPlayerFRC13CStateManager /* 80016A40 000139A0 7F 63 DB 78 */ mr r3, r27 /* 80016A44 000139A4 48 26 E3 9D */ bl GetEyeHeight__7CPlayerCFv /* 80016A48 000139A8 C0 02 81 68 */ lfs f0, lbl_805A9E88@sda21(r2) /* 80016A4C 000139AC 38 60 00 00 */ li r3, 0 /* 80016A50 000139B0 80 AD 80 D0 */ lwz r5, lbl_805A6C90@sda21(r13) /* 80016A54 000139B4 38 80 00 01 */ li r4, 1 /* 80016A58 000139B8 EF C0 00 72 */ fmuls f30, f0, f1 /* 80016A5C 000139BC 48 37 34 99 */ bl __shl2i /* 80016A60 000139C0 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 80016A64 000139C4 39 00 00 01 */ li r8, 1 /* 80016A68 000139C8 38 00 00 00 */ li r0, 0 /* 80016A6C 000139CC C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 80016A70 000139D0 90 81 00 A4 */ stw r4, 0xa4(r1) /* 80016A74 000139D4 FC 20 F0 90 */ fmr f1, f30 /* 80016A78 000139D8 7F C4 F3 78 */ mr r4, r30 /* 80016A7C 000139DC 38 A1 00 78 */ addi r5, r1, 0x78 /* 80016A80 000139E0 90 61 00 A0 */ stw r3, 0xa0(r1) /* 80016A84 000139E4 38 61 00 B8 */ addi r3, r1, 0xb8 /* 80016A88 000139E8 38 C1 00 6C */ addi r6, r1, 0x6c /* 80016A8C 000139EC 90 01 00 AC */ stw r0, 0xac(r1) /* 80016A90 000139F0 38 E1 00 A0 */ addi r7, r1, 0xa0 /* 80016A94 000139F4 90 01 00 A8 */ stw r0, 0xa8(r1) /* 80016A98 000139F8 91 01 00 B0 */ stw r8, 0xb0(r1) /* 80016A9C 000139FC D0 41 00 6C */ stfs f2, 0x6c(r1) /* 80016AA0 00013A00 D0 41 00 70 */ stfs f2, 0x70(r1) /* 80016AA4 00013A04 D0 01 00 74 */ stfs f0, 0x74(r1) /* 80016AA8 00013A08 C0 7B 00 60 */ lfs f3, 0x60(r27) /* 80016AAC 00013A0C C0 5B 00 50 */ lfs f2, 0x50(r27) /* 80016AB0 00013A10 C0 1B 00 40 */ lfs f0, 0x40(r27) /* 80016AB4 00013A14 91 01 00 98 */ stw r8, 0x98(r1) /* 80016AB8 00013A18 D0 01 00 78 */ stfs f0, 0x78(r1) /* 80016ABC 00013A1C D0 41 00 7C */ stfs f2, 0x7c(r1) /* 80016AC0 00013A20 D0 61 00 80 */ stfs f3, 0x80(r1) /* 80016AC4 00013A24 48 03 64 D5 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 80016AC8 00013A28 88 01 00 D8 */ lbz r0, 0xd8(r1) /* 80016ACC 00013A2C 28 00 00 00 */ cmplwi r0, 0 /* 80016AD0 00013A30 40 82 02 54 */ bne lbl_80016D24 /* 80016AD4 00013A34 C0 62 82 24 */ lfs f3, lbl_805A9F44@sda21(r2) /* 80016AD8 00013A38 7F 63 DB 78 */ mr r3, r27 /* 80016ADC 00013A3C C0 5B 01 3C */ lfs f2, 0x13c(r27) /* 80016AE0 00013A40 38 81 00 60 */ addi r4, r1, 0x60 /* 80016AE4 00013A44 C0 3B 01 40 */ lfs f1, 0x140(r27) /* 80016AE8 00013A48 C0 1B 01 38 */ lfs f0, 0x138(r27) /* 80016AEC 00013A4C EC 43 00 B2 */ fmuls f2, f3, f2 /* 80016AF0 00013A50 EC 23 00 72 */ fmuls f1, f3, f1 /* 80016AF4 00013A54 EC 03 00 32 */ fmuls f0, f3, f0 /* 80016AF8 00013A58 D0 41 00 64 */ stfs f2, 0x64(r1) /* 80016AFC 00013A5C D0 01 00 60 */ stfs f0, 0x60(r1) /* 80016B00 00013A60 D0 21 00 68 */ stfs f1, 0x68(r1) /* 80016B04 00013A64 48 10 41 9D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f /* 80016B08 00013A68 C0 62 82 24 */ lfs f3, lbl_805A9F44@sda21(r2) /* 80016B0C 00013A6C C0 1B 00 FC */ lfs f0, 0xfc(r27) /* 80016B10 00013A70 C0 5B 01 00 */ lfs f2, 0x100(r27) /* 80016B14 00013A74 C0 3B 01 04 */ lfs f1, 0x104(r27) /* 80016B18 00013A78 EC 03 00 32 */ fmuls f0, f3, f0 /* 80016B1C 00013A7C EC 43 00 B2 */ fmuls f2, f3, f2 /* 80016B20 00013A80 EC 23 00 72 */ fmuls f1, f3, f1 /* 80016B24 00013A84 D0 1B 00 FC */ stfs f0, 0xfc(r27) /* 80016B28 00013A88 D0 5B 01 00 */ stfs f2, 0x100(r27) /* 80016B2C 00013A8C D0 3B 01 04 */ stfs f1, 0x104(r27) /* 80016B30 00013A90 48 00 01 F4 */ b lbl_80016D24 .global lbl_80016B34 lbl_80016B34: /* 80016B34 00013A94 7F C4 F3 78 */ mr r4, r30 /* 80016B38 00013A98 48 26 E3 91 */ bl UpdateSubmerged__7CPlayerFRC13CStateManager /* 80016B3C 00013A9C 7F 63 DB 78 */ mr r3, r27 /* 80016B40 00013AA0 48 26 E4 CD */ bl CheckSubmerged__7CPlayerCFv /* 80016B44 00013AA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016B48 00013AA8 41 82 00 B0 */ beq lbl_80016BF8 /* 80016B4C 00013AAC 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 80016B50 00013AB0 38 80 00 15 */ li r4, 0x15 /* 80016B54 00013AB4 80 63 00 00 */ lwz r3, 0(r3) /* 80016B58 00013AB8 48 07 AF 69 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80016B5C 00013ABC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016B60 00013AC0 40 82 00 98 */ bne lbl_80016BF8 /* 80016B64 00013AC4 A0 1B 00 C4 */ lhz r0, 0xc4(r27) /* 80016B68 00013AC8 7F C3 F3 78 */ mr r3, r30 /* 80016B6C 00013ACC 38 81 00 2C */ addi r4, r1, 0x2c /* 80016B70 00013AD0 B0 01 00 28 */ sth r0, 0x28(r1) /* 80016B74 00013AD4 B0 01 00 2C */ sth r0, 0x2c(r1) /* 80016B78 00013AD8 48 03 5A 2D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80016B7C 00013ADC 7C 64 1B 78 */ mr r4, r3 /* 80016B80 00013AE0 38 61 00 58 */ addi r3, r1, 0x58 /* 80016B84 00013AE4 48 08 FC DD */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" /* 80016B88 00013AE8 80 63 00 04 */ lwz r3, 4(r3) /* 80016B8C 00013AEC 28 03 00 00 */ cmplwi r3, 0 /* 80016B90 00013AF0 41 82 00 68 */ beq lbl_80016BF8 /* 80016B94 00013AF4 80 63 01 B4 */ lwz r3, 0x1b4(r3) /* 80016B98 00013AF8 80 03 00 44 */ lwz r0, 0x44(r3) /* 80016B9C 00013AFC 2C 00 00 03 */ cmpwi r0, 3 /* 80016BA0 00013B00 41 82 00 50 */ beq lbl_80016BF0 /* 80016BA4 00013B04 40 80 00 1C */ bge lbl_80016BC0 /* 80016BA8 00013B08 2C 00 00 01 */ cmpwi r0, 1 /* 80016BAC 00013B0C 41 82 00 38 */ beq lbl_80016BE4 /* 80016BB0 00013B10 40 80 00 28 */ bge lbl_80016BD8 /* 80016BB4 00013B14 2C 00 00 00 */ cmpwi r0, 0 /* 80016BB8 00013B18 40 80 00 14 */ bge lbl_80016BCC /* 80016BBC 00013B1C 48 00 00 3C */ b lbl_80016BF8 lbl_80016BC0: /* 80016BC0 00013B20 2C 00 00 05 */ cmpwi r0, 5 /* 80016BC4 00013B24 41 82 00 14 */ beq lbl_80016BD8 /* 80016BC8 00013B28 48 00 00 30 */ b lbl_80016BF8 lbl_80016BCC: /* 80016BCC 00013B2C 38 00 00 00 */ li r0, 0 /* 80016BD0 00013B30 90 1B 02 B0 */ stw r0, 0x2b0(r27) /* 80016BD4 00013B34 48 00 00 24 */ b lbl_80016BF8 lbl_80016BD8: /* 80016BD8 00013B38 38 00 00 05 */ li r0, 5 /* 80016BDC 00013B3C 90 1B 02 AC */ stw r0, 0x2ac(r27) /* 80016BE0 00013B40 48 00 00 18 */ b lbl_80016BF8 lbl_80016BE4: /* 80016BE4 00013B44 38 00 00 00 */ li r0, 0 /* 80016BE8 00013B48 90 1B 02 B0 */ stw r0, 0x2b0(r27) /* 80016BEC 00013B4C 48 00 00 0C */ b lbl_80016BF8 lbl_80016BF0: /* 80016BF0 00013B50 38 00 00 06 */ li r0, 6 /* 80016BF4 00013B54 90 1B 02 AC */ stw r0, 0x2ac(r27) lbl_80016BF8: /* 80016BF8 00013B58 88 1B 09 C5 */ lbz r0, 0x9c5(r27) /* 80016BFC 00013B5C 38 60 00 01 */ li r3, 1 /* 80016C00 00013B60 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 80016C04 00013B64 98 1B 09 C5 */ stb r0, 0x9c5(r27) /* 80016C08 00013B68 48 00 01 1C */ b lbl_80016D24 .global lbl_80016C0C lbl_80016C0C: /* 80016C0C 00013B6C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80016C10 00013B70 38 A1 00 24 */ addi r5, r1, 0x24 /* 80016C14 00013B74 38 80 00 00 */ li r4, 0 /* 80016C18 00013B78 B0 01 00 24 */ sth r0, 0x24(r1) /* 80016C1C 00013B7C 48 03 C6 A5 */ bl SetInFluid__6CActorFb9TUniqueId /* 80016C20 00013B80 7F 63 DB 78 */ mr r3, r27 /* 80016C24 00013B84 7F C4 F3 78 */ mr r4, r30 /* 80016C28 00013B88 48 26 E2 A1 */ bl UpdateSubmerged__7CPlayerFRC13CStateManager /* 80016C2C 00013B8C 48 00 00 F8 */ b lbl_80016D24 .global lbl_80016C30 lbl_80016C30: /* 80016C30 00013B90 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) /* 80016C34 00013B94 7F C5 F3 78 */ mr r5, r30 /* 80016C38 00013B98 38 80 00 09 */ li r4, 9 /* 80016C3C 00013B9C C0 06 01 FC */ lfs f0, 0x1fc(r6) /* 80016C40 00013BA0 D0 1B 03 78 */ stfs f0, 0x378(r27) /* 80016C44 00013BA4 48 16 45 59 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager /* 80016C48 00013BA8 48 00 00 DC */ b lbl_80016D24 .global lbl_80016C4C lbl_80016C4C: /* 80016C4C 00013BAC A0 1D 00 00 */ lhz r0, 0(r29) /* 80016C50 00013BB0 B0 1B 08 2E */ sth r0, 0x82e(r27) /* 80016C54 00013BB4 48 00 00 D0 */ b lbl_80016D24 .global lbl_80016C58 lbl_80016C58: /* 80016C58 00013BB8 A0 1D 00 00 */ lhz r0, 0(r29) /* 80016C5C 00013BBC 7F C3 F3 78 */ mr r3, r30 /* 80016C60 00013BC0 38 81 00 20 */ addi r4, r1, 0x20 /* 80016C64 00013BC4 B0 01 00 20 */ sth r0, 0x20(r1) /* 80016C68 00013BC8 48 03 59 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80016C6C 00013BCC 7C 64 1B 78 */ mr r4, r3 /* 80016C70 00013BD0 38 61 00 50 */ addi r3, r1, 0x50 /* 80016C74 00013BD4 48 09 80 55 */ bl "__ct__31TCastToPtr<17CEnergyProjectile>FP7CEntity" /* 80016C78 00013BD8 80 63 00 04 */ lwz r3, 4(r3) /* 80016C7C 00013BDC 28 03 00 00 */ cmplwi r3, 0 /* 80016C80 00013BE0 41 82 00 A4 */ beq lbl_80016D24 /* 80016C84 00013BE4 80 03 00 E8 */ lwz r0, 0xe8(r3) /* 80016C88 00013BE8 54 00 04 62 */ rlwinm r0, r0, 0, 0x11, 0x11 /* 80016C8C 00013BEC 2C 00 40 00 */ cmpwi r0, 0x4000 /* 80016C90 00013BF0 40 82 00 94 */ bne lbl_80016D24 /* 80016C94 00013BF4 A0 1B 00 08 */ lhz r0, 8(r27) /* 80016C98 00013BF8 38 81 00 1C */ addi r4, r1, 0x1c /* 80016C9C 00013BFC C0 43 01 54 */ lfs f2, 0x154(r3) /* 80016CA0 00013C00 C0 22 81 50 */ lfs f1, lbl_805A9E70@sda21(r2) /* 80016CA4 00013C04 B0 01 00 1C */ sth r0, 0x1c(r1) /* 80016CA8 00013C08 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 80016CAC 00013C0C B0 01 00 18 */ sth r0, 0x18(r1) /* 80016CB0 00013C10 80 63 00 00 */ lwz r3, 0(r3) /* 80016CB4 00013C14 38 63 01 88 */ addi r3, r3, 0x188 /* 80016CB8 00013C18 48 1A 9E 81 */ bl AddSource__19CStaticInterferenceF9TUniqueId /* 80016CBC 00013C1C 48 00 00 68 */ b lbl_80016D24 .global lbl_80016CC0 lbl_80016CC0: /* 80016CC0 00013C20 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 80016CC4 00013C24 80 63 00 00 */ lwz r3, 0(r3) /* 80016CC8 00013C28 48 07 AC AD */ bl ResetVisor__12CPlayerStateFv /* 80016CCC 00013C2C 80 1B 07 34 */ lwz r0, 0x734(r27) /* 80016CD0 00013C30 83 5B 07 3C */ lwz r26, 0x73c(r27) /* 80016CD4 00013C34 54 00 18 38 */ slwi r0, r0, 3 /* 80016CD8 00013C38 7F FA 02 14 */ add r31, r26, r0 /* 80016CDC 00013C3C 93 41 00 38 */ stw r26, 0x38(r1) /* 80016CE0 00013C40 93 E1 00 40 */ stw r31, 0x40(r1) /* 80016CE4 00013C44 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80016CE8 00013C48 93 41 00 34 */ stw r26, 0x34(r1) /* 80016CEC 00013C4C 48 00 00 28 */ b lbl_80016D14 lbl_80016CF0: /* 80016CF0 00013C50 28 1A 00 00 */ cmplwi r26, 0 /* 80016CF4 00013C54 41 82 00 1C */ beq lbl_80016D10 /* 80016CF8 00013C58 88 1A 00 00 */ lbz r0, 0(r26) /* 80016CFC 00013C5C 28 00 00 00 */ cmplwi r0, 0 /* 80016D00 00013C60 41 82 00 10 */ beq lbl_80016D10 /* 80016D04 00013C64 80 7A 00 04 */ lwz r3, 4(r26) /* 80016D08 00013C68 38 80 00 01 */ li r4, 1 /* 80016D0C 00013C6C 48 0F FD 41 */ bl __dt__10CModelDataFv lbl_80016D10: /* 80016D10 00013C70 3B 5A 00 08 */ addi r26, r26, 8 lbl_80016D14: /* 80016D14 00013C74 7C 1A F8 40 */ cmplw r26, r31 /* 80016D18 00013C78 40 82 FF D8 */ bne lbl_80016CF0 /* 80016D1C 00013C7C 38 00 00 00 */ li r0, 0 /* 80016D20 00013C80 90 1B 07 34 */ stw r0, 0x734(r27) .global lbl_80016D24 lbl_80016D24: /* 80016D24 00013C84 A0 1D 00 00 */ lhz r0, 0(r29) /* 80016D28 00013C88 7F 84 E3 78 */ mr r4, r28 /* 80016D2C 00013C8C 7F C6 F3 78 */ mr r6, r30 /* 80016D30 00013C90 38 A1 00 14 */ addi r5, r1, 0x14 /* 80016D34 00013C94 B0 01 00 14 */ sth r0, 0x14(r1) /* 80016D38 00013C98 80 7B 04 90 */ lwz r3, 0x490(r27) /* 80016D3C 00013C9C 48 02 57 B1 */ bl AcceptScriptMsg__10CPlayerGunF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80016D40 00013CA0 A0 1D 00 00 */ lhz r0, 0(r29) /* 80016D44 00013CA4 7F 84 E3 78 */ mr r4, r28 /* 80016D48 00013CA8 7F C6 F3 78 */ mr r6, r30 /* 80016D4C 00013CAC 38 A1 00 10 */ addi r5, r1, 0x10 /* 80016D50 00013CB0 B0 01 00 10 */ sth r0, 0x10(r1) /* 80016D54 00013CB4 80 7B 07 68 */ lwz r3, 0x768(r27) /* 80016D58 00013CB8 48 0D EA B5 */ bl AcceptScriptMsg__10CMorphBallF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80016D5C 00013CBC A0 1D 00 00 */ lhz r0, 0(r29) /* 80016D60 00013CC0 7F 63 DB 78 */ mr r3, r27 /* 80016D64 00013CC4 7F 84 E3 78 */ mr r4, r28 /* 80016D68 00013CC8 7F C6 F3 78 */ mr r6, r30 /* 80016D6C 00013CCC B0 01 00 0C */ sth r0, 0xc(r1) /* 80016D70 00013CD0 38 A1 00 0C */ addi r5, r1, 0xc /* 80016D74 00013CD4 48 03 C8 A1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80016D78 00013CD8 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 /* 80016D7C 00013CDC CB E1 01 F0 */ lfd f31, 0x1f0(r1) /* 80016D80 00013CE0 E3 C1 01 E8 */ psq_l f30, 488(r1), 0, qr0 /* 80016D84 00013CE4 CB C1 01 E0 */ lfd f30, 0x1e0(r1) /* 80016D88 00013CE8 BB 41 01 C8 */ lmw r26, 0x1c8(r1) /* 80016D8C 00013CEC 80 01 02 04 */ lwz r0, 0x204(r1) /* 80016D90 00013CF0 7C 08 03 A6 */ mtlr r0 /* 80016D94 00013CF4 38 21 02 00 */ addi r1, r1, 0x200 /* 80016D98 00013CF8 4E 80 00 20 */ blr .global UpdateCameraTimers__7CPlayerFfRC11CFinalInput UpdateCameraTimers__7CPlayerFfRC11CFinalInput: /* 80016D9C 00013CFC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80016DA0 00013D00 7C 08 02 A6 */ mflr r0 /* 80016DA4 00013D04 90 01 00 24 */ stw r0, 0x24(r1) /* 80016DA8 00013D08 DB E1 00 10 */ stfd f31, 0x10(r1) /* 80016DAC 00013D0C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 80016DB0 00013D10 93 E1 00 0C */ stw r31, 0xc(r1) /* 80016DB4 00013D14 93 C1 00 08 */ stw r30, 8(r1) /* 80016DB8 00013D18 7C 7E 1B 78 */ mr r30, r3 /* 80016DBC 00013D1C FF E0 08 90 */ fmr f31, f1 /* 80016DC0 00013D20 88 03 03 DC */ lbz r0, 0x3dc(r3) /* 80016DC4 00013D24 7C 9F 23 78 */ mr r31, r4 /* 80016DC8 00013D28 28 00 00 00 */ cmplwi r0, 0 /* 80016DCC 00013D2C 40 82 00 10 */ bne lbl_80016DDC /* 80016DD0 00013D30 88 1E 03 DD */ lbz r0, 0x3dd(r30) /* 80016DD4 00013D34 28 00 00 00 */ cmplwi r0, 0 /* 80016DD8 00013D38 41 82 00 14 */ beq lbl_80016DEC lbl_80016DDC: /* 80016DDC 00013D3C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016DE0 00013D40 D0 1E 02 94 */ stfs f0, 0x294(r30) /* 80016DE4 00013D44 D0 1E 02 9C */ stfs f0, 0x29c(r30) /* 80016DE8 00013D48 48 00 00 DC */ b lbl_80016EC4 lbl_80016DEC: /* 80016DEC 00013D4C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80016DF0 00013D50 88 03 02 2A */ lbz r0, 0x22a(r3) /* 80016DF4 00013D54 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 80016DF8 00013D58 41 82 00 44 */ beq lbl_80016E3C /* 80016DFC 00013D5C 38 60 00 0B */ li r3, 0xb /* 80016E00 00013D60 4B FF 5A 75 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016E04 00013D64 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016E08 00013D68 40 82 00 18 */ bne lbl_80016E20 /* 80016E0C 00013D6C 7F E4 FB 78 */ mr r4, r31 /* 80016E10 00013D70 38 60 00 0C */ li r3, 0xc /* 80016E14 00013D74 4B FF 5A 61 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016E18 00013D78 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016E1C 00013D7C 41 82 00 20 */ beq lbl_80016E3C lbl_80016E20: /* 80016E20 00013D80 C0 3E 02 88 */ lfs f1, 0x288(r30) /* 80016E24 00013D84 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016E28 00013D88 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80016E2C 00013D8C 40 81 00 10 */ ble lbl_80016E3C /* 80016E30 00013D90 38 00 00 01 */ li r0, 1 /* 80016E34 00013D94 98 1E 02 A4 */ stb r0, 0x2a4(r30) /* 80016E38 00013D98 48 00 00 8C */ b lbl_80016EC4 lbl_80016E3C: /* 80016E3C 00013D9C 7F E4 FB 78 */ mr r4, r31 /* 80016E40 00013DA0 38 60 00 0A */ li r3, 0xa /* 80016E44 00013DA4 4B FF 59 8D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016E48 00013DA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016E4C 00013DAC 41 82 00 10 */ beq lbl_80016E5C /* 80016E50 00013DB0 80 7E 02 98 */ lwz r3, 0x298(r30) /* 80016E54 00013DB4 38 03 00 01 */ addi r0, r3, 1 /* 80016E58 00013DB8 90 1E 02 98 */ stw r0, 0x298(r30) lbl_80016E5C: /* 80016E5C 00013DBC 7F E4 FB 78 */ mr r4, r31 /* 80016E60 00013DC0 38 60 00 0A */ li r3, 0xa /* 80016E64 00013DC4 4B FF 5A 11 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016E68 00013DC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016E6C 00013DCC 41 82 00 34 */ beq lbl_80016EA0 /* 80016E70 00013DD0 C0 3E 02 94 */ lfs f1, 0x294(r30) /* 80016E74 00013DD4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016E78 00013DD8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80016E7C 00013DDC 40 81 00 24 */ ble lbl_80016EA0 /* 80016E80 00013DE0 88 1E 02 A4 */ lbz r0, 0x2a4(r30) /* 80016E84 00013DE4 28 00 00 00 */ cmplwi r0, 0 /* 80016E88 00013DE8 40 82 00 18 */ bne lbl_80016EA0 /* 80016E8C 00013DEC 80 1E 02 98 */ lwz r0, 0x298(r30) /* 80016E90 00013DF0 2C 00 00 02 */ cmpwi r0, 2 /* 80016E94 00013DF4 41 81 00 0C */ bgt lbl_80016EA0 /* 80016E98 00013DF8 EC 01 F8 2A */ fadds f0, f1, f31 /* 80016E9C 00013DFC D0 1E 02 94 */ stfs f0, 0x294(r30) lbl_80016EA0: /* 80016EA0 00013E00 C0 3E 02 9C */ lfs f1, 0x29c(r30) /* 80016EA4 00013E04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016EA8 00013E08 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80016EAC 00013E0C 40 81 00 18 */ ble lbl_80016EC4 /* 80016EB0 00013E10 88 1E 02 A4 */ lbz r0, 0x2a4(r30) /* 80016EB4 00013E14 28 00 00 00 */ cmplwi r0, 0 /* 80016EB8 00013E18 40 82 00 0C */ bne lbl_80016EC4 /* 80016EBC 00013E1C EC 01 F8 2A */ fadds f0, f1, f31 /* 80016EC0 00013E20 D0 1E 02 9C */ stfs f0, 0x29c(r30) lbl_80016EC4: /* 80016EC4 00013E24 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 80016EC8 00013E28 80 01 00 24 */ lwz r0, 0x24(r1) /* 80016ECC 00013E2C CB E1 00 10 */ lfd f31, 0x10(r1) /* 80016ED0 00013E30 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80016ED4 00013E34 83 C1 00 08 */ lwz r30, 8(r1) /* 80016ED8 00013E38 7C 08 03 A6 */ mtlr r0 /* 80016EDC 00013E3C 38 21 00 20 */ addi r1, r1, 0x20 /* 80016EE0 00013E40 4E 80 00 20 */ blr .global UpdateFreeLookState__7CPlayerFRC11CFinalInputfR13CStateManager UpdateFreeLookState__7CPlayerFRC11CFinalInputfR13CStateManager: /* 80016EE4 00013E44 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80016EE8 00013E48 7C 08 02 A6 */ mflr r0 /* 80016EEC 00013E4C 90 01 00 64 */ stw r0, 0x64(r1) /* 80016EF0 00013E50 DB E1 00 50 */ stfd f31, 0x50(r1) /* 80016EF4 00013E54 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 80016EF8 00013E58 DB C1 00 40 */ stfd f30, 0x40(r1) /* 80016EFC 00013E5C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 80016F00 00013E60 DB A1 00 30 */ stfd f29, 0x30(r1) /* 80016F04 00013E64 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 80016F08 00013E68 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80016F0C 00013E6C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80016F10 00013E70 93 A1 00 24 */ stw r29, 0x24(r1) /* 80016F14 00013E74 7C 7D 1B 78 */ mr r29, r3 /* 80016F18 00013E78 FF A0 08 90 */ fmr f29, f1 /* 80016F1C 00013E7C 80 03 03 04 */ lwz r0, 0x304(r3) /* 80016F20 00013E80 7C 9E 23 78 */ mr r30, r4 /* 80016F24 00013E84 7C BF 2B 78 */ mr r31, r5 /* 80016F28 00013E88 2C 00 00 04 */ cmpwi r0, 4 /* 80016F2C 00013E8C 41 82 00 30 */ beq lbl_80016F5C /* 80016F30 00013E90 48 00 32 E5 */ bl IsMorphBallTransitioning__7CPlayerCFv /* 80016F34 00013E94 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016F38 00013E98 40 82 00 24 */ bne lbl_80016F5C /* 80016F3C 00013E9C 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80016F40 00013EA0 2C 00 00 00 */ cmpwi r0, 0 /* 80016F44 00013EA4 40 82 00 18 */ bne lbl_80016F5C /* 80016F48 00013EA8 80 1D 03 B8 */ lwz r0, 0x3b8(r29) /* 80016F4C 00013EAC 2C 00 00 00 */ cmpwi r0, 0 /* 80016F50 00013EB0 41 82 00 38 */ beq lbl_80016F88 /* 80016F54 00013EB4 2C 00 00 01 */ cmpwi r0, 1 /* 80016F58 00013EB8 41 82 00 30 */ beq lbl_80016F88 lbl_80016F5C: /* 80016F5C 00013EBC 38 60 00 00 */ li r3, 0 /* 80016F60 00013EC0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80016F64 00013EC4 98 7D 03 DC */ stb r3, 0x3dc(r29) /* 80016F68 00013EC8 98 7D 03 DD */ stb r3, 0x3dd(r29) /* 80016F6C 00013ECC 98 7D 03 DE */ stb r3, 0x3de(r29) /* 80016F70 00013ED0 D0 1D 03 E8 */ stfs f0, 0x3e8(r29) /* 80016F74 00013ED4 D0 1D 03 F0 */ stfs f0, 0x3f0(r29) /* 80016F78 00013ED8 88 1D 09 C4 */ lbz r0, 0x9c4(r29) /* 80016F7C 00013EDC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 80016F80 00013EE0 98 1D 09 C4 */ stb r0, 0x9c4(r29) /* 80016F84 00013EE4 48 00 02 E4 */ b lbl_80017268 lbl_80016F88: /* 80016F88 00013EE8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80016F8C 00013EEC 88 63 02 28 */ lbz r3, 0x228(r3) /* 80016F90 00013EF0 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f /* 80016F94 00013EF4 41 82 01 CC */ beq lbl_80017160 /* 80016F98 00013EF8 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f /* 80016F9C 00013EFC 41 82 00 2C */ beq lbl_80016FC8 /* 80016FA0 00013F00 7F C4 F3 78 */ mr r4, r30 /* 80016FA4 00013F04 38 60 00 21 */ li r3, 0x21 /* 80016FA8 00013F08 4B FF 58 CD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016FAC 00013F0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016FB0 00013F10 41 82 00 18 */ beq lbl_80016FC8 /* 80016FB4 00013F14 7F C4 F3 78 */ mr r4, r30 /* 80016FB8 00013F18 38 60 00 22 */ li r3, 0x22 /* 80016FBC 00013F1C 4B FF 58 B9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016FC0 00013F20 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016FC4 00013F24 40 82 00 3C */ bne lbl_80017000 lbl_80016FC8: /* 80016FC8 00013F28 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80016FCC 00013F2C 88 03 02 28 */ lbz r0, 0x228(r3) /* 80016FD0 00013F30 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80016FD4 00013F34 40 82 01 6C */ bne lbl_80017140 /* 80016FD8 00013F38 7F C4 F3 78 */ mr r4, r30 /* 80016FDC 00013F3C 38 60 00 21 */ li r3, 0x21 /* 80016FE0 00013F40 4B FF 58 95 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016FE4 00013F44 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016FE8 00013F48 40 82 00 18 */ bne lbl_80017000 /* 80016FEC 00013F4C 7F C4 F3 78 */ mr r4, r30 /* 80016FF0 00013F50 38 60 00 22 */ li r3, 0x22 /* 80016FF4 00013F54 4B FF 58 81 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80016FF8 00013F58 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80016FFC 00013F5C 41 82 01 44 */ beq lbl_80017140 lbl_80017000: /* 80017000 00013F60 88 1D 03 DD */ lbz r0, 0x3dd(r29) /* 80017004 00013F64 28 00 00 00 */ cmplwi r0, 0 /* 80017008 00013F68 40 82 00 A4 */ bne lbl_800170AC /* 8001700C 00013F6C 80 9F 08 70 */ lwz r4, 0x870(r31) /* 80017010 00013F70 38 61 00 08 */ addi r3, r1, 8 /* 80017014 00013F74 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017018 00013F78 80 84 00 7C */ lwz r4, 0x7c(r4) /* 8001701C 00013F7C C3 A4 00 58 */ lfs f29, 0x58(r4) /* 80017020 00013F80 C3 C4 00 48 */ lfs f30, 0x48(r4) /* 80017024 00013F84 C3 E4 00 38 */ lfs f31, 0x38(r4) /* 80017028 00013F88 D3 A1 00 10 */ stfs f29, 0x10(r1) /* 8001702C 00013F8C D3 E1 00 08 */ stfs f31, 8(r1) /* 80017030 00013F90 D3 C1 00 0C */ stfs f30, 0xc(r1) /* 80017034 00013F94 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80017038 00013F98 D0 1D 03 E4 */ stfs f0, 0x3e4(r29) /* 8001703C 00013F9C 48 2F D6 BD */ bl CanBeNormalized__9CVector3fCFv /* 80017040 00013FA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80017044 00013FA4 41 82 00 68 */ beq lbl_800170AC /* 80017048 00013FA8 38 61 00 08 */ addi r3, r1, 8 /* 8001704C 00013FAC 48 2F D8 AD */ bl Normalize__9CVector3fFv /* 80017050 00013FB0 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80017054 00013FB4 C0 41 00 08 */ lfs f2, 8(r1) /* 80017058 00013FB8 EC 3E 00 32 */ fmuls f1, f30, f0 /* 8001705C 00013FBC C0 61 00 10 */ lfs f3, 0x10(r1) /* 80017060 00013FC0 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 80017064 00013FC4 EC 3F 08 BA */ fmadds f1, f31, f2, f1 /* 80017068 00013FC8 EC 3D 08 FA */ fmadds f1, f29, f3, f1 /* 8001706C 00013FCC FC 40 0A 10 */ fabs f2, f1 /* 80017070 00013FD0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80017074 00013FD4 40 81 00 14 */ ble lbl_80017088 /* 80017078 00013FD8 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 8001707C 00013FDC C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 80017080 00013FE0 FC 01 00 AE */ fsel f0, f1, f2, f0 /* 80017084 00013FE4 EC 22 00 32 */ fmuls f1, f2, f0 lbl_80017088: /* 80017088 00013FE8 48 37 DB A5 */ bl acos /* 8001708C 00013FEC FC 20 08 18 */ frsp f1, f1 /* 80017090 00013FF0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017094 00013FF4 FC 1D 00 40 */ fcmpo cr0, f29, f0 /* 80017098 00013FF8 D0 3D 03 EC */ stfs f1, 0x3ec(r29) /* 8001709C 00013FFC 40 80 00 10 */ bge lbl_800170AC /* 800170A0 00014000 C0 1D 03 EC */ lfs f0, 0x3ec(r29) /* 800170A4 00014004 FC 00 00 50 */ fneg f0, f0 /* 800170A8 00014008 D0 1D 03 EC */ stfs f0, 0x3ec(r29) lbl_800170AC: /* 800170AC 0001400C 38 00 00 01 */ li r0, 1 /* 800170B0 00014010 7F C4 F3 78 */ mr r4, r30 /* 800170B4 00014014 98 1D 03 DC */ stb r0, 0x3dc(r29) /* 800170B8 00014018 38 60 00 06 */ li r3, 6 /* 800170BC 0001401C 98 1D 03 DD */ stb r0, 0x3dd(r29) /* 800170C0 00014020 4B FF 58 59 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800170C4 00014024 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 800170C8 00014028 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800170CC 0001402C 4C 41 13 82 */ cror 2, 1, 2 /* 800170D0 00014030 41 82 00 58 */ beq lbl_80017128 /* 800170D4 00014034 7F C4 F3 78 */ mr r4, r30 /* 800170D8 00014038 38 60 00 07 */ li r3, 7 /* 800170DC 0001403C 4B FF 58 3D */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800170E0 00014040 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 800170E4 00014044 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800170E8 00014048 4C 41 13 82 */ cror 2, 1, 2 /* 800170EC 0001404C 41 82 00 3C */ beq lbl_80017128 /* 800170F0 00014050 7F C4 F3 78 */ mr r4, r30 /* 800170F4 00014054 38 60 00 09 */ li r3, 9 /* 800170F8 00014058 4B FF 58 21 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800170FC 0001405C C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 80017100 00014060 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017104 00014064 4C 41 13 82 */ cror 2, 1, 2 /* 80017108 00014068 41 82 00 20 */ beq lbl_80017128 /* 8001710C 0001406C 7F C4 F3 78 */ mr r4, r30 /* 80017110 00014070 38 60 00 08 */ li r3, 8 /* 80017114 00014074 4B FF 58 05 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80017118 00014078 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 8001711C 0001407C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017120 00014080 4C 41 13 82 */ cror 2, 1, 2 /* 80017124 00014084 40 82 00 10 */ bne lbl_80017134 lbl_80017128: /* 80017128 00014088 38 00 00 01 */ li r0, 1 /* 8001712C 0001408C 98 1D 03 DE */ stb r0, 0x3de(r29) /* 80017130 00014090 48 00 01 2C */ b lbl_8001725C lbl_80017134: /* 80017134 00014094 38 00 00 00 */ li r0, 0 /* 80017138 00014098 98 1D 03 DE */ stb r0, 0x3de(r29) /* 8001713C 0001409C 48 00 01 20 */ b lbl_8001725C lbl_80017140: /* 80017140 000140A0 38 00 00 00 */ li r0, 0 /* 80017144 000140A4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017148 000140A8 98 1D 03 DC */ stb r0, 0x3dc(r29) /* 8001714C 000140AC 98 1D 03 DD */ stb r0, 0x3dd(r29) /* 80017150 000140B0 98 1D 03 DE */ stb r0, 0x3de(r29) /* 80017154 000140B4 D0 1D 03 E8 */ stfs f0, 0x3e8(r29) /* 80017158 000140B8 D0 1D 03 F0 */ stfs f0, 0x3f0(r29) /* 8001715C 000140BC 48 00 01 00 */ b lbl_8001725C lbl_80017160: /* 80017160 000140C0 7F C4 F3 78 */ mr r4, r30 /* 80017164 000140C4 38 60 00 06 */ li r3, 6 /* 80017168 000140C8 4B FF 57 B1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001716C 000140CC C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 80017170 000140D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017174 000140D4 4C 41 13 82 */ cror 2, 1, 2 /* 80017178 000140D8 41 82 00 58 */ beq lbl_800171D0 /* 8001717C 000140DC 7F C4 F3 78 */ mr r4, r30 /* 80017180 000140E0 38 60 00 07 */ li r3, 7 /* 80017184 000140E4 4B FF 57 95 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80017188 000140E8 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 8001718C 000140EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017190 000140F0 4C 41 13 82 */ cror 2, 1, 2 /* 80017194 000140F4 41 82 00 3C */ beq lbl_800171D0 /* 80017198 000140F8 7F C4 F3 78 */ mr r4, r30 /* 8001719C 000140FC 38 60 00 09 */ li r3, 9 /* 800171A0 00014100 4B FF 57 79 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800171A4 00014104 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 800171A8 00014108 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800171AC 0001410C 4C 41 13 82 */ cror 2, 1, 2 /* 800171B0 00014110 41 82 00 20 */ beq lbl_800171D0 /* 800171B4 00014114 7F C4 F3 78 */ mr r4, r30 /* 800171B8 00014118 38 60 00 08 */ li r3, 8 /* 800171BC 0001411C 4B FF 57 5D */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800171C0 00014120 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 800171C4 00014124 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800171C8 00014128 4C 41 13 82 */ cror 2, 1, 2 /* 800171CC 0001412C 40 82 00 10 */ bne lbl_800171DC lbl_800171D0: /* 800171D0 00014130 38 00 00 01 */ li r0, 1 /* 800171D4 00014134 98 1D 03 DE */ stb r0, 0x3de(r29) /* 800171D8 00014138 48 00 00 0C */ b lbl_800171E4 lbl_800171DC: /* 800171DC 0001413C 38 00 00 00 */ li r0, 0 /* 800171E0 00014140 98 1D 03 DE */ stb r0, 0x3de(r29) lbl_800171E4: /* 800171E4 00014144 38 00 00 00 */ li r0, 0 /* 800171E8 00014148 98 1D 03 DD */ stb r0, 0x3dd(r29) /* 800171EC 0001414C C0 1D 03 E4 */ lfs f0, 0x3e4(r29) /* 800171F0 00014150 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 800171F4 00014154 FC 00 02 10 */ fabs f0, f0 /* 800171F8 00014158 C0 23 01 44 */ lfs f1, 0x144(r3) /* 800171FC 0001415C FC 00 00 18 */ frsp f0, f0 /* 80017200 00014160 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017204 00014164 40 80 00 48 */ bge lbl_8001724C /* 80017208 00014168 C0 1D 03 EC */ lfs f0, 0x3ec(r29) /* 8001720C 0001416C FC 00 02 10 */ fabs f0, f0 /* 80017210 00014170 FC 00 00 18 */ frsp f0, f0 /* 80017214 00014174 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017218 00014178 40 80 00 34 */ bge lbl_8001724C /* 8001721C 0001417C C0 3D 03 E0 */ lfs f1, 0x3e0(r29) /* 80017220 00014180 C0 03 01 48 */ lfs f0, 0x148(r3) /* 80017224 00014184 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017228 00014188 40 81 00 18 */ ble lbl_80017240 /* 8001722C 0001418C 98 1D 03 DC */ stb r0, 0x3dc(r29) /* 80017230 00014190 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017234 00014194 D0 1D 03 E8 */ stfs f0, 0x3e8(r29) /* 80017238 00014198 D0 1D 03 F0 */ stfs f0, 0x3f0(r29) /* 8001723C 0001419C 48 00 00 20 */ b lbl_8001725C lbl_80017240: /* 80017240 000141A0 EC 01 E8 2A */ fadds f0, f1, f29 /* 80017244 000141A4 D0 1D 03 E0 */ stfs f0, 0x3e0(r29) /* 80017248 000141A8 48 00 00 14 */ b lbl_8001725C lbl_8001724C: /* 8001724C 000141AC 38 00 00 01 */ li r0, 1 /* 80017250 000141B0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017254 000141B4 98 1D 03 DC */ stb r0, 0x3dc(r29) /* 80017258 000141B8 D0 1D 03 E0 */ stfs f0, 0x3e0(r29) lbl_8001725C: /* 8001725C 000141BC 7F A3 EB 78 */ mr r3, r29 /* 80017260 000141C0 7F C4 F3 78 */ mr r4, r30 /* 80017264 000141C4 48 00 12 3D */ bl UpdateCrosshairsState__7CPlayerFRC11CFinalInput lbl_80017268: /* 80017268 000141C8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 8001726C 000141CC CB E1 00 50 */ lfd f31, 0x50(r1) /* 80017270 000141D0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 80017274 000141D4 CB C1 00 40 */ lfd f30, 0x40(r1) /* 80017278 000141D8 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 8001727C 000141DC CB A1 00 30 */ lfd f29, 0x30(r1) /* 80017280 000141E0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80017284 000141E4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80017288 000141E8 80 01 00 64 */ lwz r0, 0x64(r1) /* 8001728C 000141EC 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80017290 000141F0 7C 08 03 A6 */ mtlr r0 /* 80017294 000141F4 38 21 00 60 */ addi r1, r1, 0x60 /* 80017298 000141F8 4E 80 00 20 */ blr .global SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager: /* 8001729C 000141FC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800172A0 00014200 7C 08 02 A6 */ mflr r0 /* 800172A4 00014204 90 01 00 44 */ stw r0, 0x44(r1) /* 800172A8 00014208 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800172AC 0001420C 7C BF 2B 78 */ mr r31, r5 /* 800172B0 00014210 93 C1 00 38 */ stw r30, 0x38(r1) /* 800172B4 00014214 7C 7E 1B 78 */ mr r30, r3 /* 800172B8 00014218 93 A1 00 34 */ stw r29, 0x34(r1) /* 800172BC 0001421C 80 03 02 F4 */ lwz r0, 0x2f4(r3) /* 800172C0 00014220 7C 00 20 00 */ cmpw r0, r4 /* 800172C4 00014224 41 82 01 14 */ beq lbl_800173D8 /* 800172C8 00014228 90 9E 02 F4 */ stw r4, 0x2f4(r30) /* 800172CC 0001422C 2C 04 00 02 */ cmpwi r4, 2 /* 800172D0 00014230 80 7F 08 70 */ lwz r3, 0x870(r31) /* 800172D4 00014234 41 82 01 04 */ beq lbl_800173D8 /* 800172D8 00014238 40 80 00 14 */ bge lbl_800172EC /* 800172DC 0001423C 2C 04 00 00 */ cmpwi r4, 0 /* 800172E0 00014240 41 82 00 1C */ beq lbl_800172FC /* 800172E4 00014244 40 80 00 44 */ bge lbl_80017328 /* 800172E8 00014248 48 00 00 F0 */ b lbl_800173D8 lbl_800172EC: /* 800172EC 0001424C 2C 04 00 04 */ cmpwi r4, 4 /* 800172F0 00014250 41 82 00 90 */ beq lbl_80017380 /* 800172F4 00014254 40 80 00 E4 */ bge lbl_800173D8 /* 800172F8 00014258 48 00 00 5C */ b lbl_80017354 lbl_800172FC: /* 800172FC 0001425C 80 A3 00 7C */ lwz r5, 0x7c(r3) /* 80017300 00014260 38 81 00 1C */ addi r4, r1, 0x1c /* 80017304 00014264 A0 05 00 08 */ lhz r0, 8(r5) /* 80017308 00014268 B0 01 00 18 */ sth r0, 0x18(r1) /* 8001730C 0001426C B0 01 00 1C */ sth r0, 0x1c(r1) /* 80017310 00014270 4B FF 47 B5 */ bl SetCurrentCameraId__14CCameraManagerF9TUniqueIdR13CStateManager /* 80017314 00014274 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80017318 00014278 7F E4 FB 78 */ mr r4, r31 /* 8001731C 0001427C 38 A0 00 00 */ li r5, 0 /* 80017320 00014280 48 0D E4 21 */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb /* 80017324 00014284 48 00 00 B4 */ b lbl_800173D8 lbl_80017328: /* 80017328 00014288 80 A3 00 80 */ lwz r5, 0x80(r3) /* 8001732C 0001428C 38 81 00 14 */ addi r4, r1, 0x14 /* 80017330 00014290 A0 05 00 08 */ lhz r0, 8(r5) /* 80017334 00014294 B0 01 00 10 */ sth r0, 0x10(r1) /* 80017338 00014298 B0 01 00 14 */ sth r0, 0x14(r1) /* 8001733C 0001429C 4B FF 47 89 */ bl SetCurrentCameraId__14CCameraManagerF9TUniqueIdR13CStateManager /* 80017340 000142A0 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80017344 000142A4 7F E4 FB 78 */ mr r4, r31 /* 80017348 000142A8 38 A0 00 01 */ li r5, 1 /* 8001734C 000142AC 48 0D E3 F5 */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb /* 80017350 000142B0 48 00 00 88 */ b lbl_800173D8 lbl_80017354: /* 80017354 000142B4 80 A3 00 80 */ lwz r5, 0x80(r3) /* 80017358 000142B8 38 81 00 0C */ addi r4, r1, 0xc /* 8001735C 000142BC A0 05 00 08 */ lhz r0, 8(r5) /* 80017360 000142C0 B0 01 00 08 */ sth r0, 8(r1) /* 80017364 000142C4 B0 01 00 0C */ sth r0, 0xc(r1) /* 80017368 000142C8 4B FF 47 5D */ bl SetCurrentCameraId__14CCameraManagerF9TUniqueIdR13CStateManager /* 8001736C 000142CC 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80017370 000142D0 7F E4 FB 78 */ mr r4, r31 /* 80017374 000142D4 38 A0 00 01 */ li r5, 1 /* 80017378 000142D8 48 0D E3 C9 */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb /* 8001737C 000142DC 48 00 00 5C */ b lbl_800173D8 lbl_80017380: /* 80017380 000142E0 7F E4 FB 78 */ mr r4, r31 /* 80017384 000142E4 3B A0 00 00 */ li r29, 0 /* 80017388 000142E8 4B FF 47 91 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 8001738C 000142EC 7C 64 1B 78 */ mr r4, r3 /* 80017390 000142F0 38 61 00 20 */ addi r3, r1, 0x20 /* 80017394 000142F4 48 09 83 9D */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" /* 80017398 000142F8 80 83 00 04 */ lwz r4, 4(r3) /* 8001739C 000142FC 28 04 00 00 */ cmplwi r4, 0 /* 800173A0 00014300 41 82 00 28 */ beq lbl_800173C8 /* 800173A4 00014304 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 800173A8 00014308 38 60 00 00 */ li r3, 0 /* 800173AC 0001430C 2C 00 00 01 */ cmpwi r0, 1 /* 800173B0 00014310 40 82 00 14 */ bne lbl_800173C4 /* 800173B4 00014314 80 04 02 1C */ lwz r0, 0x21c(r4) /* 800173B8 00014318 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 800173BC 0001431C 41 82 00 08 */ beq lbl_800173C4 /* 800173C0 00014320 38 60 00 01 */ li r3, 1 lbl_800173C4: /* 800173C4 00014324 7C 7D 1B 78 */ mr r29, r3 lbl_800173C8: /* 800173C8 00014328 80 7E 07 68 */ lwz r3, 0x768(r30) /* 800173CC 0001432C 7F E4 FB 78 */ mr r4, r31 /* 800173D0 00014330 57 A5 06 3E */ clrlwi r5, r29, 0x18 /* 800173D4 00014334 48 0D E3 6D */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb lbl_800173D8: /* 800173D8 00014338 80 01 00 44 */ lwz r0, 0x44(r1) /* 800173DC 0001433C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800173E0 00014340 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800173E4 00014344 83 A1 00 34 */ lwz r29, 0x34(r1) /* 800173E8 00014348 7C 08 03 A6 */ mtlr r0 /* 800173EC 0001434C 38 21 00 40 */ addi r1, r1, 0x40 /* 800173F0 00014350 4E 80 00 20 */ blr .global UpdateCameraState__7CPlayerFR13CStateManager UpdateCameraState__7CPlayerFR13CStateManager: /* 800173F4 00014354 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800173F8 00014358 7C 08 02 A6 */ mflr r0 /* 800173FC 0001435C 90 01 00 14 */ stw r0, 0x14(r1) /* 80017400 00014360 48 00 00 15 */ bl UpdateCinematicState__7CPlayerFR13CStateManager /* 80017404 00014364 80 01 00 14 */ lwz r0, 0x14(r1) /* 80017408 00014368 7C 08 03 A6 */ mtlr r0 /* 8001740C 0001436C 38 21 00 10 */ addi r1, r1, 0x10 /* 80017410 00014370 4E 80 00 20 */ blr .global UpdateCinematicState__7CPlayerFR13CStateManager UpdateCinematicState__7CPlayerFR13CStateManager: /* 80017414 00014374 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80017418 00014378 7C 08 02 A6 */ mflr r0 /* 8001741C 0001437C 90 01 00 64 */ stw r0, 0x64(r1) /* 80017420 00014380 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80017424 00014384 7C 9F 23 78 */ mr r31, r4 /* 80017428 00014388 93 C1 00 58 */ stw r30, 0x58(r1) /* 8001742C 0001438C 7C 7E 1B 78 */ mr r30, r3 /* 80017430 00014390 80 64 08 70 */ lwz r3, 0x870(r4) /* 80017434 00014394 4B FF 34 CD */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80017438 00014398 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8001743C 0001439C 41 82 00 54 */ beq lbl_80017490 /* 80017440 000143A0 80 1E 02 F4 */ lwz r0, 0x2f4(r30) /* 80017444 000143A4 2C 00 00 04 */ cmpwi r0, 4 /* 80017448 000143A8 41 82 02 0C */ beq lbl_80017654 /* 8001744C 000143AC 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80017450 000143B0 90 1E 02 FC */ stw r0, 0x2fc(r30) /* 80017454 000143B4 80 1E 02 FC */ lwz r0, 0x2fc(r30) /* 80017458 000143B8 2C 00 00 03 */ cmpwi r0, 3 /* 8001745C 000143BC 40 82 00 0C */ bne lbl_80017468 /* 80017460 000143C0 38 00 00 00 */ li r0, 0 /* 80017464 000143C4 90 1E 02 FC */ stw r0, 0x2fc(r30) lbl_80017468: /* 80017468 000143C8 80 1E 02 FC */ lwz r0, 0x2fc(r30) /* 8001746C 000143CC 2C 00 00 02 */ cmpwi r0, 2 /* 80017470 000143D0 40 82 00 0C */ bne lbl_8001747C /* 80017474 000143D4 38 00 00 01 */ li r0, 1 /* 80017478 000143D8 90 1E 02 FC */ stw r0, 0x2fc(r30) lbl_8001747C: /* 8001747C 000143DC 7F C3 F3 78 */ mr r3, r30 /* 80017480 000143E0 7F E5 FB 78 */ mr r5, r31 /* 80017484 000143E4 38 80 00 04 */ li r4, 4 /* 80017488 000143E8 4B FF FE 15 */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager /* 8001748C 000143EC 48 00 01 C8 */ b lbl_80017654 lbl_80017490: /* 80017490 000143F0 80 1E 02 F4 */ lwz r0, 0x2f4(r30) /* 80017494 000143F4 2C 00 00 04 */ cmpwi r0, 4 /* 80017498 000143F8 40 82 01 BC */ bne lbl_80017654 /* 8001749C 000143FC 80 7E 02 FC */ lwz r3, 0x2fc(r30) /* 800174A0 00014400 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 800174A4 00014404 7C 03 00 00 */ cmpw r3, r0 /* 800174A8 00014408 40 82 00 74 */ bne lbl_8001751C /* 800174AC 0001440C 2C 03 00 01 */ cmpwi r3, 1 /* 800174B0 00014410 41 82 00 14 */ beq lbl_800174C4 /* 800174B4 00014414 40 80 01 A0 */ bge lbl_80017654 /* 800174B8 00014418 2C 03 00 00 */ cmpwi r3, 0 /* 800174BC 0001441C 40 80 00 1C */ bge lbl_800174D8 /* 800174C0 00014420 48 00 01 94 */ b lbl_80017654 lbl_800174C4: /* 800174C4 00014424 7F C3 F3 78 */ mr r3, r30 /* 800174C8 00014428 7F E5 FB 78 */ mr r5, r31 /* 800174CC 0001442C 38 80 00 01 */ li r4, 1 /* 800174D0 00014430 4B FF FD CD */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager /* 800174D4 00014434 48 00 01 80 */ b lbl_80017654 lbl_800174D8: /* 800174D8 00014438 7F C3 F3 78 */ mr r3, r30 /* 800174DC 0001443C 7F E5 FB 78 */ mr r5, r31 /* 800174E0 00014440 38 80 00 00 */ li r4, 0 /* 800174E4 00014444 4B FF FD B9 */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager /* 800174E8 00014448 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800174EC 0001444C 80 63 00 00 */ lwz r3, 0(r3) /* 800174F0 00014450 80 03 00 14 */ lwz r0, 0x14(r3) /* 800174F4 00014454 2C 00 00 02 */ cmpwi r0, 2 /* 800174F8 00014458 41 82 01 5C */ beq lbl_80017654 /* 800174FC 0001445C 7F C3 F3 78 */ mr r3, r30 /* 80017500 00014460 7F E5 FB 78 */ mr r5, r31 /* 80017504 00014464 38 9E 00 34 */ addi r4, r30, 0x34 /* 80017508 00014468 48 00 19 C1 */ bl ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager /* 8001750C 0001446C 7F C3 F3 78 */ mr r3, r30 /* 80017510 00014470 7F E4 FB 78 */ mr r4, r31 /* 80017514 00014474 48 00 2B 99 */ bl DrawGun__7CPlayerFR13CStateManager /* 80017518 00014478 48 00 01 3C */ b lbl_80017654 lbl_8001751C: /* 8001751C 0001447C 7F C3 F3 78 */ mr r3, r30 /* 80017520 00014480 48 10 3E 59 */ bl Stop__13CPhysicsActorFv /* 80017524 00014484 7F C3 F3 78 */ mr r3, r30 /* 80017528 00014488 7F E5 FB 78 */ mr r5, r31 /* 8001752C 0001448C 38 80 00 01 */ li r4, 1 /* 80017530 00014490 48 16 3C 6D */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager /* 80017534 00014494 80 1E 02 FC */ lwz r0, 0x2fc(r30) /* 80017538 00014498 2C 00 00 01 */ cmpwi r0, 1 /* 8001753C 0001449C 41 82 00 C4 */ beq lbl_80017600 /* 80017540 000144A0 40 80 01 14 */ bge lbl_80017654 /* 80017544 000144A4 2C 00 00 00 */ cmpwi r0, 0 /* 80017548 000144A8 40 80 00 08 */ bge lbl_80017550 /* 8001754C 000144AC 48 00 01 08 */ b lbl_80017654 lbl_80017550: /* 80017550 000144B0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80017554 000144B4 7F C3 F3 78 */ mr r3, r30 /* 80017558 000144B8 38 C4 66 A0 */ addi r6, r4, sZeroVector__9CVector3f@l /* 8001755C 000144BC 7F E4 FB 78 */ mr r4, r31 /* 80017560 000144C0 C0 46 00 00 */ lfs f2, 0(r6) /* 80017564 000144C4 38 A1 00 14 */ addi r5, r1, 0x14 /* 80017568 000144C8 C0 26 00 04 */ lfs f1, 4(r6) /* 8001756C 000144CC C0 06 00 08 */ lfs f0, 8(r6) /* 80017570 000144D0 D0 41 00 14 */ stfs f2, 0x14(r1) /* 80017574 000144D4 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80017578 000144D8 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8001757C 000144DC 4B FF B5 19 */ bl CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f /* 80017580 000144E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80017584 000144E4 41 82 00 D0 */ beq lbl_80017654 /* 80017588 000144E8 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 8001758C 000144EC 7F C3 F3 78 */ mr r3, r30 /* 80017590 000144F0 C0 01 00 18 */ lfs f0, 0x18(r1) /* 80017594 000144F4 38 81 00 08 */ addi r4, r1, 8 /* 80017598 000144F8 C0 7E 00 60 */ lfs f3, 0x60(r30) /* 8001759C 000144FC C0 41 00 1C */ lfs f2, 0x1c(r1) /* 800175A0 00014500 EC 81 00 2A */ fadds f4, f1, f0 /* 800175A4 00014504 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 800175A8 00014508 C0 01 00 14 */ lfs f0, 0x14(r1) /* 800175AC 0001450C EC 43 10 2A */ fadds f2, f3, f2 /* 800175B0 00014510 D0 81 00 0C */ stfs f4, 0xc(r1) /* 800175B4 00014514 EC 01 00 2A */ fadds f0, f1, f0 /* 800175B8 00014518 D0 41 00 10 */ stfs f2, 0x10(r1) /* 800175BC 0001451C D0 01 00 08 */ stfs f0, 8(r1) /* 800175C0 00014520 48 03 B8 CD */ bl SetTranslation__6CActorFRC9CVector3f /* 800175C4 00014524 7F C3 F3 78 */ mr r3, r30 /* 800175C8 00014528 7F E4 FB 78 */ mr r4, r31 /* 800175CC 0001452C 48 26 B7 51 */ bl LeaveMorphBallState__7CPlayerFR13CStateManager /* 800175D0 00014530 7F C3 F3 78 */ mr r3, r30 /* 800175D4 00014534 7F E5 FB 78 */ mr r5, r31 /* 800175D8 00014538 38 80 00 00 */ li r4, 0 /* 800175DC 0001453C 4B FF FC C1 */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager /* 800175E0 00014540 7F C3 F3 78 */ mr r3, r30 /* 800175E4 00014544 7F E5 FB 78 */ mr r5, r31 /* 800175E8 00014548 38 9E 00 34 */ addi r4, r30, 0x34 /* 800175EC 0001454C 48 00 18 DD */ bl ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager /* 800175F0 00014550 7F C3 F3 78 */ mr r3, r30 /* 800175F4 00014554 7F E4 FB 78 */ mr r4, r31 /* 800175F8 00014558 48 00 2A B5 */ bl DrawGun__7CPlayerFR13CStateManager /* 800175FC 0001455C 48 00 00 58 */ b lbl_80017654 lbl_80017600: /* 80017600 00014560 7F C3 F3 78 */ mr r3, r30 /* 80017604 00014564 7F E4 FB 78 */ mr r4, r31 /* 80017608 00014568 48 26 B8 E9 */ bl EnterMorphBallState__7CPlayerFR13CStateManager /* 8001760C 0001456C 7F C3 F3 78 */ mr r3, r30 /* 80017610 00014570 7F E4 FB 78 */ mr r4, r31 /* 80017614 00014574 48 26 BA 19 */ bl ActivateMorphBallCamera__7CPlayerFR13CStateManager /* 80017618 00014578 80 7F 08 70 */ lwz r3, 0x870(r31) /* 8001761C 0001457C 7F E4 FB 78 */ mr r4, r31 /* 80017620 00014580 4B FF 1D F1 */ bl SetupBallCamera__14CCameraManagerFR13CStateManager /* 80017624 00014584 80 BF 08 70 */ lwz r5, 0x870(r31) /* 80017628 00014588 7F C4 F3 78 */ mr r4, r30 /* 8001762C 0001458C 38 61 00 20 */ addi r3, r1, 0x20 /* 80017630 00014590 83 C5 00 80 */ lwz r30, 0x80(r5) /* 80017634 00014594 48 26 E0 B5 */ bl CreateTransformFromMovementDirection__7CPlayerCFv /* 80017638 00014598 7F C3 F3 78 */ mr r3, r30 /* 8001763C 0001459C 7F E5 FB 78 */ mr r5, r31 /* 80017640 000145A0 81 9E 00 00 */ lwz r12, 0(r30) /* 80017644 000145A4 38 81 00 20 */ addi r4, r1, 0x20 /* 80017648 000145A8 81 8C 00 70 */ lwz r12, 0x70(r12) /* 8001764C 000145AC 7D 89 03 A6 */ mtctr r12 /* 80017650 000145B0 4E 80 04 21 */ bctrl lbl_80017654: /* 80017654 000145B4 80 01 00 64 */ lwz r0, 0x64(r1) /* 80017658 000145B8 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8001765C 000145BC 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80017660 000145C0 7C 08 03 A6 */ mtlr r0 /* 80017664 000145C4 38 21 00 60 */ addi r1, r1, 0x60 /* 80017668 000145C8 4E 80 00 20 */ blr .global SetSpawnedMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager SetSpawnedMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager: /* 8001766C 000145CC 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80017670 000145D0 7C 08 02 A6 */ mflr r0 /* 80017674 000145D4 90 01 00 64 */ stw r0, 0x64(r1) /* 80017678 000145D8 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8001767C 000145DC 7C 7F 1B 78 */ mr r31, r3 /* 80017680 000145E0 93 C1 00 58 */ stw r30, 0x58(r1) /* 80017684 000145E4 7C BE 2B 78 */ mr r30, r5 /* 80017688 000145E8 90 83 02 FC */ stw r4, 0x2fc(r3) /* 8001768C 000145EC 38 80 00 04 */ li r4, 4 /* 80017690 000145F0 4B FF FC 0D */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager /* 80017694 000145F4 80 7F 02 FC */ lwz r3, 0x2fc(r31) /* 80017698 000145F8 80 1F 02 F8 */ lwz r0, 0x2f8(r31) /* 8001769C 000145FC 7C 03 00 00 */ cmpw r3, r0 /* 800176A0 00014600 41 82 01 2C */ beq lbl_800177CC /* 800176A4 00014604 7F E3 FB 78 */ mr r3, r31 /* 800176A8 00014608 48 10 3C D1 */ bl Stop__13CPhysicsActorFv /* 800176AC 0001460C 7F E3 FB 78 */ mr r3, r31 /* 800176B0 00014610 7F C5 F3 78 */ mr r5, r30 /* 800176B4 00014614 38 80 00 01 */ li r4, 1 /* 800176B8 00014618 48 16 3A E5 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager /* 800176BC 0001461C 80 1F 02 FC */ lwz r0, 0x2fc(r31) /* 800176C0 00014620 2C 00 00 01 */ cmpwi r0, 1 /* 800176C4 00014624 41 82 00 B4 */ beq lbl_80017778 /* 800176C8 00014628 40 80 01 04 */ bge lbl_800177CC /* 800176CC 0001462C 2C 00 00 00 */ cmpwi r0, 0 /* 800176D0 00014630 40 80 00 08 */ bge lbl_800176D8 /* 800176D4 00014634 48 00 00 F8 */ b lbl_800177CC lbl_800176D8: /* 800176D8 00014638 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800176DC 0001463C 7F E3 FB 78 */ mr r3, r31 /* 800176E0 00014640 38 C4 66 A0 */ addi r6, r4, sZeroVector__9CVector3f@l /* 800176E4 00014644 7F C4 F3 78 */ mr r4, r30 /* 800176E8 00014648 C0 46 00 00 */ lfs f2, 0(r6) /* 800176EC 0001464C 38 A1 00 14 */ addi r5, r1, 0x14 /* 800176F0 00014650 C0 26 00 04 */ lfs f1, 4(r6) /* 800176F4 00014654 C0 06 00 08 */ lfs f0, 8(r6) /* 800176F8 00014658 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800176FC 0001465C D0 21 00 18 */ stfs f1, 0x18(r1) /* 80017700 00014660 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80017704 00014664 4B FF B3 91 */ bl CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f /* 80017708 00014668 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8001770C 0001466C 41 82 00 C0 */ beq lbl_800177CC /* 80017710 00014670 C0 3F 00 50 */ lfs f1, 0x50(r31) /* 80017714 00014674 7F E3 FB 78 */ mr r3, r31 /* 80017718 00014678 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8001771C 0001467C 38 81 00 08 */ addi r4, r1, 8 /* 80017720 00014680 C0 7F 00 60 */ lfs f3, 0x60(r31) /* 80017724 00014684 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 80017728 00014688 EC 81 00 2A */ fadds f4, f1, f0 /* 8001772C 0001468C C0 3F 00 40 */ lfs f1, 0x40(r31) /* 80017730 00014690 C0 01 00 14 */ lfs f0, 0x14(r1) /* 80017734 00014694 EC 43 10 2A */ fadds f2, f3, f2 /* 80017738 00014698 D0 81 00 0C */ stfs f4, 0xc(r1) /* 8001773C 0001469C EC 01 00 2A */ fadds f0, f1, f0 /* 80017740 000146A0 D0 41 00 10 */ stfs f2, 0x10(r1) /* 80017744 000146A4 D0 01 00 08 */ stfs f0, 8(r1) /* 80017748 000146A8 48 03 B7 45 */ bl SetTranslation__6CActorFRC9CVector3f /* 8001774C 000146AC 7F E3 FB 78 */ mr r3, r31 /* 80017750 000146B0 7F C4 F3 78 */ mr r4, r30 /* 80017754 000146B4 48 26 B5 C9 */ bl LeaveMorphBallState__7CPlayerFR13CStateManager /* 80017758 000146B8 7F E3 FB 78 */ mr r3, r31 /* 8001775C 000146BC 7F C5 F3 78 */ mr r5, r30 /* 80017760 000146C0 38 9F 00 34 */ addi r4, r31, 0x34 /* 80017764 000146C4 48 00 17 65 */ bl ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager /* 80017768 000146C8 7F E3 FB 78 */ mr r3, r31 /* 8001776C 000146CC 7F C4 F3 78 */ mr r4, r30 /* 80017770 000146D0 48 00 29 3D */ bl DrawGun__7CPlayerFR13CStateManager /* 80017774 000146D4 48 00 00 58 */ b lbl_800177CC lbl_80017778: /* 80017778 000146D8 7F E3 FB 78 */ mr r3, r31 /* 8001777C 000146DC 7F C4 F3 78 */ mr r4, r30 /* 80017780 000146E0 48 26 B7 71 */ bl EnterMorphBallState__7CPlayerFR13CStateManager /* 80017784 000146E4 7F E3 FB 78 */ mr r3, r31 /* 80017788 000146E8 7F C4 F3 78 */ mr r4, r30 /* 8001778C 000146EC 48 26 B8 A1 */ bl ActivateMorphBallCamera__7CPlayerFR13CStateManager /* 80017790 000146F0 80 7E 08 70 */ lwz r3, 0x870(r30) /* 80017794 000146F4 7F C4 F3 78 */ mr r4, r30 /* 80017798 000146F8 4B FF 1C 79 */ bl SetupBallCamera__14CCameraManagerFR13CStateManager /* 8001779C 000146FC 80 BE 08 70 */ lwz r5, 0x870(r30) /* 800177A0 00014700 7F E4 FB 78 */ mr r4, r31 /* 800177A4 00014704 38 61 00 20 */ addi r3, r1, 0x20 /* 800177A8 00014708 83 E5 00 80 */ lwz r31, 0x80(r5) /* 800177AC 0001470C 48 26 DF 3D */ bl CreateTransformFromMovementDirection__7CPlayerCFv /* 800177B0 00014710 7F E3 FB 78 */ mr r3, r31 /* 800177B4 00014714 7F C5 F3 78 */ mr r5, r30 /* 800177B8 00014718 81 9F 00 00 */ lwz r12, 0(r31) /* 800177BC 0001471C 38 81 00 20 */ addi r4, r1, 0x20 /* 800177C0 00014720 81 8C 00 70 */ lwz r12, 0x70(r12) /* 800177C4 00014724 7D 89 03 A6 */ mtctr r12 /* 800177C8 00014728 4E 80 04 21 */ bctrl lbl_800177CC: /* 800177CC 0001472C 80 01 00 64 */ lwz r0, 0x64(r1) /* 800177D0 00014730 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 800177D4 00014734 83 C1 00 58 */ lwz r30, 0x58(r1) /* 800177D8 00014738 7C 08 03 A6 */ mtlr r0 /* 800177DC 0001473C 38 21 00 60 */ addi r1, r1, 0x60 /* 800177E0 00014740 4E 80 00 20 */ blr .global SetMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager SetMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager: /* 800177E4 00014744 94 21 FF 70 */ stwu r1, -0x90(r1) /* 800177E8 00014748 7C 08 02 A6 */ mflr r0 /* 800177EC 0001474C 90 01 00 94 */ stw r0, 0x94(r1) /* 800177F0 00014750 BE E1 00 6C */ stmw r23, 0x6c(r1) /* 800177F4 00014754 7C 7D 1B 78 */ mr r29, r3 /* 800177F8 00014758 7C BE 2B 78 */ mr r30, r5 /* 800177FC 0001475C 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80017800 00014760 2C 00 00 01 */ cmpwi r0, 1 /* 80017804 00014764 40 82 00 1C */ bne lbl_80017820 /* 80017808 00014768 2C 04 00 01 */ cmpwi r4, 1 /* 8001780C 0001476C 41 82 00 14 */ beq lbl_80017820 /* 80017810 00014770 88 7D 09 C4 */ lbz r3, 0x9c4(r29) /* 80017814 00014774 88 1D 09 C5 */ lbz r0, 0x9c5(r29) /* 80017818 00014778 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 8001781C 0001477C 98 1D 09 C5 */ stb r0, 0x9c5(r29) lbl_80017820: /* 80017820 00014780 20 04 00 01 */ subfic r0, r4, 1 /* 80017824 00014784 90 9D 02 F8 */ stw r4, 0x2f8(r29) /* 80017828 00014788 7C 00 00 34 */ cntlzw r0, r0 /* 8001782C 0001478C 2C 04 00 03 */ cmpwi r4, 3 /* 80017830 00014790 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f /* 80017834 00014794 98 1D 00 F9 */ stb r0, 0xf9(r29) /* 80017838 00014798 41 82 02 14 */ beq lbl_80017A4C /* 8001783C 0001479C 40 80 02 10 */ bge lbl_80017A4C /* 80017840 000147A0 2C 04 00 00 */ cmpwi r4, 0 /* 80017844 000147A4 41 82 00 0C */ beq lbl_80017850 /* 80017848 000147A8 40 80 01 F8 */ bge lbl_80017A40 /* 8001784C 000147AC 48 00 02 00 */ b lbl_80017A4C lbl_80017850: /* 80017850 000147B0 88 1D 09 C5 */ lbz r0, 0x9c5(r29) /* 80017854 000147B4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 80017858 000147B8 41 82 01 F4 */ beq lbl_80017A4C /* 8001785C 000147BC 80 7E 08 70 */ lwz r3, 0x870(r30) /* 80017860 000147C0 80 03 00 74 */ lwz r0, 0x74(r3) /* 80017864 000147C4 2C 00 00 00 */ cmpwi r0, 0 /* 80017868 000147C8 40 82 01 E4 */ bne lbl_80017A4C /* 8001786C 000147CC 7F A3 EB 78 */ mr r3, r29 /* 80017870 000147D0 7F C4 F3 78 */ mr r4, r30 /* 80017874 000147D4 48 00 01 ED */ bl GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager /* 80017878 000147D8 7C 7F 1B 79 */ or. r31, r3, r3 /* 8001787C 000147DC 41 82 01 D0 */ beq lbl_80017A4C /* 80017880 000147E0 88 1F 02 5C */ lbz r0, 0x25c(r31) /* 80017884 000147E4 28 00 00 00 */ cmplwi r0, 0 /* 80017888 000147E8 41 82 01 7C */ beq lbl_80017A04 /* 8001788C 000147EC 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 80017890 000147F0 3B 80 00 00 */ li r28, 0 /* 80017894 000147F4 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l /* 80017898 000147F8 3B 60 00 00 */ li r27, 0 /* 8001789C 000147FC 38 83 00 1D */ addi r4, r3, 0x1d /* 800178A0 00014800 3A E0 00 00 */ li r23, 0 /* 800178A4 00014804 38 60 01 10 */ li r3, 0x110 /* 800178A8 00014808 38 A0 00 00 */ li r5, 0 /* 800178AC 0001480C 48 2F DF C1 */ bl __nw__FUlPCcPCc /* 800178B0 00014810 7C 78 1B 79 */ or. r24, r3, r3 /* 800178B4 00014814 41 82 00 DC */ beq lbl_80017990 /* 800178B8 00014818 38 00 00 01 */ li r0, 1 /* 800178BC 0001481C 34 61 00 24 */ addic. r3, r1, 0x24 /* 800178C0 00014820 98 01 00 2C */ stb r0, 0x2c(r1) /* 800178C4 00014824 38 9F 02 50 */ addi r4, r31, 0x250 /* 800178C8 00014828 41 82 00 08 */ beq lbl_800178D0 /* 800178CC 0001482C 48 32 95 DD */ bl __ct__6CTokenFRC6CToken lbl_800178D0: /* 800178D0 00014830 38 00 00 00 */ li r0, 0 /* 800178D4 00014834 7F C4 F3 78 */ mr r4, r30 /* 800178D8 00014838 98 01 00 38 */ stb r0, 0x38(r1) /* 800178DC 0001483C 38 61 00 10 */ addi r3, r1, 0x10 /* 800178E0 00014840 3A E0 00 01 */ li r23, 1 /* 800178E4 00014844 3B 60 00 01 */ li r27, 1 /* 800178E8 00014848 48 03 57 F5 */ bl AllocateUniqueId__13CStateManagerFv /* 800178EC 0001484C A0 01 00 10 */ lhz r0, 0x10(r1) /* 800178F0 00014850 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 800178F4 00014854 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l /* 800178F8 00014858 38 61 00 3C */ addi r3, r1, 0x3c /* 800178FC 0001485C B0 01 00 14 */ sth r0, 0x14(r1) /* 80017900 00014860 38 84 00 33 */ addi r4, r4, 0x33 /* 80017904 00014864 4B FE D3 B5 */ bl string_l__4rstlFPCc /* 80017908 00014868 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 8001790C 0001486C 38 61 00 20 */ addi r3, r1, 0x20 /* 80017910 00014870 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017914 00014874 3B 80 00 01 */ li r28, 1 /* 80017918 00014878 FC 40 08 90 */ fmr f2, f1 /* 8001791C 0001487C D0 21 00 4C */ stfs f1, 0x4c(r1) /* 80017920 00014880 FC 60 08 90 */ fmr f3, f1 /* 80017924 00014884 FC 80 08 90 */ fmr f4, f1 /* 80017928 00014888 D0 21 00 50 */ stfs f1, 0x50(r1) /* 8001792C 0001488C D0 21 00 54 */ stfs f1, 0x54(r1) /* 80017930 00014890 D0 01 00 58 */ stfs f0, 0x58(r1) /* 80017934 00014894 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 80017938 00014898 D0 01 00 60 */ stfs f0, 0x60(r1) /* 8001793C 0001489C 48 34 BA B1 */ bl __ct__6CColorFffff /* 80017940 000148A0 7C 79 1B 78 */ mr r25, r3 /* 80017944 000148A4 7F C3 F3 78 */ mr r3, r30 /* 80017948 000148A8 48 11 88 E5 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager /* 8001794C 000148AC 7C 7A 1B 78 */ mr r26, r3 /* 80017950 000148B0 7F C3 F3 78 */ mr r3, r30 /* 80017954 000148B4 48 11 88 A5 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager /* 80017958 000148B8 38 61 00 4C */ addi r3, r1, 0x4c /* 8001795C 000148BC 38 01 00 58 */ addi r0, r1, 0x58 /* 80017960 000148C0 90 61 00 08 */ stw r3, 8(r1) /* 80017964 000148C4 7F 03 C3 78 */ mr r3, r24 /* 80017968 000148C8 7F 49 D3 78 */ mr r9, r26 /* 8001796C 000148CC 7F 2A CB 78 */ mr r10, r25 /* 80017970 000148D0 90 01 00 0C */ stw r0, 0xc(r1) /* 80017974 000148D4 38 81 00 24 */ addi r4, r1, 0x24 /* 80017978 000148D8 38 A1 00 30 */ addi r5, r1, 0x30 /* 8001797C 000148DC 38 C1 00 14 */ addi r6, r1, 0x14 /* 80017980 000148E0 39 01 00 3C */ addi r8, r1, 0x3c /* 80017984 000148E4 38 E0 00 01 */ li r7, 1 /* 80017988 000148E8 48 11 85 71 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" /* 8001798C 000148EC 7C 78 1B 78 */ mr r24, r3 lbl_80017990: /* 80017990 000148F0 7F C3 F3 78 */ mr r3, r30 /* 80017994 000148F4 7F 04 C3 78 */ mr r4, r24 /* 80017998 000148F8 48 03 53 5D */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence /* 8001799C 000148FC 7E E0 07 75 */ extsb. r0, r23 /* 800179A0 00014900 41 82 00 28 */ beq lbl_800179C8 /* 800179A4 00014904 88 01 00 2C */ lbz r0, 0x2c(r1) /* 800179A8 00014908 28 00 00 00 */ cmplwi r0, 0 /* 800179AC 0001490C 41 82 00 14 */ beq lbl_800179C0 /* 800179B0 00014910 34 61 00 24 */ addic. r3, r1, 0x24 /* 800179B4 00014914 41 82 00 0C */ beq lbl_800179C0 /* 800179B8 00014918 38 80 00 00 */ li r4, 0 /* 800179BC 0001491C 48 32 94 85 */ bl __dt__6CTokenFv lbl_800179C0: /* 800179C0 00014920 38 00 00 00 */ li r0, 0 /* 800179C4 00014924 98 01 00 2C */ stb r0, 0x2c(r1) lbl_800179C8: /* 800179C8 00014928 7F 60 07 75 */ extsb. r0, r27 /* 800179CC 0001492C 41 82 00 28 */ beq lbl_800179F4 /* 800179D0 00014930 88 01 00 38 */ lbz r0, 0x38(r1) /* 800179D4 00014934 28 00 00 00 */ cmplwi r0, 0 /* 800179D8 00014938 41 82 00 14 */ beq lbl_800179EC /* 800179DC 0001493C 34 61 00 30 */ addic. r3, r1, 0x30 /* 800179E0 00014940 41 82 00 0C */ beq lbl_800179EC /* 800179E4 00014944 38 80 00 00 */ li r4, 0 /* 800179E8 00014948 48 32 94 59 */ bl __dt__6CTokenFv lbl_800179EC: /* 800179EC 0001494C 38 00 00 00 */ li r0, 0 /* 800179F0 00014950 98 01 00 38 */ stb r0, 0x38(r1) lbl_800179F4: /* 800179F4 00014954 7F 80 07 75 */ extsb. r0, r28 /* 800179F8 00014958 41 82 00 0C */ beq lbl_80017A04 /* 800179FC 0001495C 38 61 00 3C */ addi r3, r1, 0x3c /* 80017A00 00014960 48 32 60 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80017A04: /* 80017A04 00014964 A0 9F 02 62 */ lhz r4, 0x262(r31) /* 80017A08 00014968 38 61 00 18 */ addi r3, r1, 0x18 /* 80017A0C 0001496C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80017A10 00014970 38 A0 00 7F */ li r5, 0x7f /* 80017A14 00014974 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80017A18 00014978 38 C0 00 40 */ li r6, 0x40 /* 80017A1C 0001497C 38 E0 00 00 */ li r7, 0 /* 80017A20 00014980 39 20 00 00 */ li r9, 0 /* 80017A24 00014984 48 2D 23 51 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80017A28 00014988 80 01 00 18 */ lwz r0, 0x18(r1) /* 80017A2C 0001498C 7F A3 EB 78 */ mr r3, r29 /* 80017A30 00014990 38 81 00 1C */ addi r4, r1, 0x1c /* 80017A34 00014994 90 01 00 1C */ stw r0, 0x1c(r1) /* 80017A38 00014998 4B FF 97 55 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80017A3C 0001499C 48 00 00 10 */ b lbl_80017A4C lbl_80017A40: /* 80017A40 000149A0 80 7D 07 68 */ lwz r3, 0x768(r29) /* 80017A44 000149A4 7F C4 F3 78 */ mr r4, r30 /* 80017A48 000149A8 48 0D 7C E5 */ bl LoadMorphBallModel__10CMorphBallFR13CStateManager lbl_80017A4C: /* 80017A4C 000149AC BA E1 00 6C */ lmw r23, 0x6c(r1) /* 80017A50 000149B0 80 01 00 94 */ lwz r0, 0x94(r1) /* 80017A54 000149B4 7C 08 03 A6 */ mtlr r0 /* 80017A58 000149B8 38 21 00 90 */ addi r1, r1, 0x90 /* 80017A5C 000149BC 4E 80 00 20 */ blr .global GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager: /* 80017A60 000149C0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80017A64 000149C4 7C 08 02 A6 */ mflr r0 /* 80017A68 000149C8 90 01 00 24 */ stw r0, 0x24(r1) /* 80017A6C 000149CC A0 A3 00 C4 */ lhz r5, 0xc4(r3) /* 80017A70 000149D0 38 60 00 00 */ li r3, 0 /* 80017A74 000149D4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80017A78 000149D8 7C 05 00 40 */ cmplw r5, r0 /* 80017A7C 000149DC 41 82 00 28 */ beq lbl_80017AA4 /* 80017A80 000149E0 B0 A1 00 08 */ sth r5, 8(r1) /* 80017A84 000149E4 7C 83 23 78 */ mr r3, r4 /* 80017A88 000149E8 38 81 00 0C */ addi r4, r1, 0xc /* 80017A8C 000149EC B0 A1 00 0C */ sth r5, 0xc(r1) /* 80017A90 000149F0 48 03 4B 15 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80017A94 000149F4 7C 64 1B 78 */ mr r4, r3 /* 80017A98 000149F8 38 61 00 10 */ addi r3, r1, 0x10 /* 80017A9C 000149FC 48 08 ED C5 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" /* 80017AA0 00014A00 80 63 00 04 */ lwz r3, 4(r3) lbl_80017AA4: /* 80017AA4 00014A04 80 01 00 24 */ lwz r0, 0x24(r1) /* 80017AA8 00014A08 7C 08 03 A6 */ mtlr r0 /* 80017AAC 00014A0C 38 21 00 20 */ addi r1, r1, 0x20 /* 80017AB0 00014A10 4E 80 00 20 */ blr .global SetVisorSteam__7CPlayerFfffUib SetVisorSteam__7CPlayerFfffUib: /* 80017AB4 00014A14 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80017AB8 00014A18 7C 08 02 A6 */ mflr r0 /* 80017ABC 00014A1C 38 63 07 A0 */ addi r3, r3, 0x7a0 /* 80017AC0 00014A20 90 01 00 14 */ stw r0, 0x14(r1) /* 80017AC4 00014A24 48 00 00 15 */ bl SetSteam__Q27CPlayer11CVisorSteamFfffUib /* 80017AC8 00014A28 80 01 00 14 */ lwz r0, 0x14(r1) /* 80017ACC 00014A2C 7C 08 03 A6 */ mtlr r0 /* 80017AD0 00014A30 38 21 00 10 */ addi r1, r1, 0x10 /* 80017AD4 00014A34 4E 80 00 20 */ blr .global SetSteam__Q27CPlayer11CVisorSteamFfffUib SetSteam__Q27CPlayer11CVisorSteamFfffUib: /* 80017AD8 00014A38 80 C3 00 1C */ lwz r6, 0x1c(r3) /* 80017ADC 00014A3C 3C 06 00 01 */ addis r0, r6, 1 /* 80017AE0 00014A40 28 00 FF FF */ cmplwi r0, 0xffff /* 80017AE4 00014A44 41 82 00 10 */ beq lbl_80017AF4 /* 80017AE8 00014A48 C0 03 00 10 */ lfs f0, 0x10(r3) /* 80017AEC 00014A4C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017AF0 00014A50 40 81 00 14 */ ble lbl_80017B04 lbl_80017AF4: /* 80017AF4 00014A54 D0 23 00 10 */ stfs f1, 0x10(r3) /* 80017AF8 00014A58 D0 43 00 14 */ stfs f2, 0x14(r3) /* 80017AFC 00014A5C D0 63 00 18 */ stfs f3, 0x18(r3) /* 80017B00 00014A60 90 83 00 1C */ stw r4, 0x1c(r3) lbl_80017B04: /* 80017B04 00014A64 98 A3 00 28 */ stb r5, 0x28(r3) /* 80017B08 00014A68 4E 80 00 20 */ blr .global Update__Q27CPlayer11CVisorSteamFf Update__Q27CPlayer11CVisorSteamFf: /* 80017B0C 00014A6C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80017B10 00014A70 7C 08 02 A6 */ mflr r0 /* 80017B14 00014A74 90 01 00 34 */ stw r0, 0x34(r1) /* 80017B18 00014A78 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80017B1C 00014A7C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80017B20 00014A80 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80017B24 00014A84 93 C1 00 18 */ stw r30, 0x18(r1) /* 80017B28 00014A88 7C 7E 1B 78 */ mr r30, r3 /* 80017B2C 00014A8C FF E0 08 90 */ fmr f31, f1 /* 80017B30 00014A90 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80017B34 00014A94 3C 03 00 01 */ addis r0, r3, 1 /* 80017B38 00014A98 28 00 FF FF */ cmplwi r0, 0xffff /* 80017B3C 00014A9C 41 82 00 28 */ beq lbl_80017B64 /* 80017B40 00014AA0 C0 1E 00 10 */ lfs f0, 0x10(r30) /* 80017B44 00014AA4 D0 1E 00 00 */ stfs f0, 0(r30) /* 80017B48 00014AA8 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80017B4C 00014AAC D0 1E 00 04 */ stfs f0, 4(r30) /* 80017B50 00014AB0 C0 1E 00 18 */ lfs f0, 0x18(r30) /* 80017B54 00014AB4 D0 1E 00 08 */ stfs f0, 8(r30) /* 80017B58 00014AB8 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 80017B5C 00014ABC 90 1E 00 0C */ stw r0, 0xc(r30) /* 80017B60 00014AC0 48 00 00 0C */ b lbl_80017B6C lbl_80017B64: /* 80017B64 00014AC4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017B68 00014AC8 D0 1E 00 00 */ stfs f0, 0(r30) lbl_80017B6C: /* 80017B6C 00014ACC 38 00 FF FF */ li r0, -1 /* 80017B70 00014AD0 C0 22 82 28 */ lfs f1, lbl_805A9F48@sda21(r2) /* 80017B74 00014AD4 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80017B78 00014AD8 C0 5E 00 20 */ lfs f2, 0x20(r30) /* 80017B7C 00014ADC C0 1E 00 00 */ lfs f0, 0(r30) /* 80017B80 00014AE0 EC 02 00 28 */ fsubs f0, f2, f0 /* 80017B84 00014AE4 FC 00 02 10 */ fabs f0, f0 /* 80017B88 00014AE8 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017B8C 00014AEC 40 80 00 18 */ bge lbl_80017BA4 /* 80017B90 00014AF0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017B94 00014AF4 EC 02 00 28 */ fsubs f0, f2, f0 /* 80017B98 00014AF8 FC 00 02 10 */ fabs f0, f0 /* 80017B9C 00014AFC FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017BA0 00014B00 41 80 00 F4 */ blt lbl_80017C94 lbl_80017BA4: /* 80017BA4 00014B04 C0 5E 00 20 */ lfs f2, 0x20(r30) /* 80017BA8 00014B08 C0 1E 00 00 */ lfs f0, 0(r30) /* 80017BAC 00014B0C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80017BB0 00014B10 40 81 00 5C */ ble lbl_80017C0C /* 80017BB4 00014B14 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80017BB8 00014B18 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80017BBC 00014B1C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017BC0 00014B20 4C 40 13 82 */ cror 2, 0, 2 /* 80017BC4 00014B24 40 82 00 2C */ bne lbl_80017BF0 /* 80017BC8 00014B28 C0 1E 00 08 */ lfs f0, 8(r30) /* 80017BCC 00014B2C EC 1F 00 24 */ fdivs f0, f31, f0 /* 80017BD0 00014B30 EC 02 00 28 */ fsubs f0, f2, f0 /* 80017BD4 00014B34 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 80017BD8 00014B38 C0 1E 00 20 */ lfs f0, 0x20(r30) /* 80017BDC 00014B3C C0 3E 00 00 */ lfs f1, 0(r30) /* 80017BE0 00014B40 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017BE4 00014B44 40 80 00 B0 */ bge lbl_80017C94 /* 80017BE8 00014B48 D0 3E 00 20 */ stfs f1, 0x20(r30) /* 80017BEC 00014B4C 48 00 00 A8 */ b lbl_80017C94 lbl_80017BF0: /* 80017BF0 00014B50 EC 00 F8 28 */ fsubs f0, f0, f31 /* 80017BF4 00014B54 D0 1E 00 24 */ stfs f0, 0x24(r30) /* 80017BF8 00014B58 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80017BFC 00014B5C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017C00 00014B60 40 80 00 94 */ bge lbl_80017C94 /* 80017C04 00014B64 D0 3E 00 24 */ stfs f1, 0x24(r30) /* 80017C08 00014B68 48 00 00 8C */ b lbl_80017C94 lbl_80017C0C: /* 80017C0C 00014B6C 80 DE 00 0C */ lwz r6, 0xc(r30) /* 80017C10 00014B70 3C 60 54 58 */ lis r3, 0x54585452@ha /* 80017C14 00014B74 38 03 54 52 */ addi r0, r3, 0x54585452@l /* 80017C18 00014B78 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80017C1C 00014B7C 90 01 00 10 */ stw r0, 0x10(r1) /* 80017C20 00014B80 38 61 00 08 */ addi r3, r1, 8 /* 80017C24 00014B84 38 A1 00 10 */ addi r5, r1, 0x10 /* 80017C28 00014B88 90 C1 00 14 */ stw r6, 0x14(r1) /* 80017C2C 00014B8C 81 84 00 00 */ lwz r12, 0(r4) /* 80017C30 00014B90 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80017C34 00014B94 7D 89 03 A6 */ mtctr r12 /* 80017C38 00014B98 4E 80 04 21 */ bctrl /* 80017C3C 00014B9C 80 A1 00 08 */ lwz r5, 8(r1) /* 80017C40 00014BA0 38 61 00 08 */ addi r3, r1, 8 /* 80017C44 00014BA4 38 80 FF FF */ li r4, -1 /* 80017C48 00014BA8 80 A5 00 10 */ lwz r5, 0x10(r5) /* 80017C4C 00014BAC 7C 05 00 D0 */ neg r0, r5 /* 80017C50 00014BB0 7C 00 2B 78 */ or r0, r0, r5 /* 80017C54 00014BB4 54 1F 0F FE */ srwi r31, r0, 0x1f /* 80017C58 00014BB8 48 32 91 E9 */ bl __dt__6CTokenFv /* 80017C5C 00014BBC 28 1F 00 00 */ cmplwi r31, 0 /* 80017C60 00014BC0 41 82 00 34 */ beq lbl_80017C94 /* 80017C64 00014BC4 C0 1E 00 04 */ lfs f0, 4(r30) /* 80017C68 00014BC8 C0 3E 00 20 */ lfs f1, 0x20(r30) /* 80017C6C 00014BCC EC 1F 00 24 */ fdivs f0, f31, f0 /* 80017C70 00014BD0 EC 01 00 2A */ fadds f0, f1, f0 /* 80017C74 00014BD4 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 80017C78 00014BD8 C0 1E 00 20 */ lfs f0, 0x20(r30) /* 80017C7C 00014BDC C0 3E 00 00 */ lfs f1, 0(r30) /* 80017C80 00014BE0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017C84 00014BE4 40 81 00 08 */ ble lbl_80017C8C /* 80017C88 00014BE8 D0 3E 00 20 */ stfs f1, 0x20(r30) lbl_80017C8C: /* 80017C8C 00014BEC C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 80017C90 00014BF0 D0 1E 00 24 */ stfs f0, 0x24(r30) lbl_80017C94: /* 80017C94 00014BF4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80017C98 00014BF8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80017C9C 00014BFC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80017CA0 00014C00 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80017CA4 00014C04 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80017CA8 00014C08 7C 08 03 A6 */ mtlr r0 /* 80017CAC 00014C0C 38 21 00 30 */ addi r1, r1, 0x30 /* 80017CB0 00014C10 4E 80 00 20 */ blr .global __ct__Q27CPlayer11CVisorSteamFv __ct__Q27CPlayer11CVisorSteamFv: /* 80017CB4 00014C14 D0 23 00 00 */ stfs f1, 0(r3) /* 80017CB8 00014C18 38 A0 FF FF */ li r5, -1 /* 80017CBC 00014C1C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017CC0 00014C20 38 00 00 00 */ li r0, 0 /* 80017CC4 00014C24 D0 43 00 04 */ stfs f2, 4(r3) /* 80017CC8 00014C28 D0 63 00 08 */ stfs f3, 8(r3) /* 80017CCC 00014C2C 90 83 00 0C */ stw r4, 0xc(r3) /* 80017CD0 00014C30 D0 03 00 10 */ stfs f0, 0x10(r3) /* 80017CD4 00014C34 D0 03 00 14 */ stfs f0, 0x14(r3) /* 80017CD8 00014C38 D0 03 00 18 */ stfs f0, 0x18(r3) /* 80017CDC 00014C3C 90 A3 00 1C */ stw r5, 0x1c(r3) /* 80017CE0 00014C40 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80017CE4 00014C44 D0 03 00 24 */ stfs f0, 0x24(r3) /* 80017CE8 00014C48 98 03 00 28 */ stb r0, 0x28(r3) /* 80017CEC 00014C4C 4E 80 00 20 */ blr .global UpdateFootstepSounds__7CPlayerFRC11CFinalInputR13CStateManagerf UpdateFootstepSounds__7CPlayerFRC11CFinalInputR13CStateManagerf: /* 80017CF0 00014C50 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80017CF4 00014C54 7C 08 02 A6 */ mflr r0 /* 80017CF8 00014C58 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80017CFC 00014C5C DB E1 00 90 */ stfd f31, 0x90(r1) /* 80017D00 00014C60 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80017D04 00014C64 DB C1 00 80 */ stfd f30, 0x80(r1) /* 80017D08 00014C68 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80017D0C 00014C6C DB A1 00 70 */ stfd f29, 0x70(r1) /* 80017D10 00014C70 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80017D14 00014C74 DB 81 00 60 */ stfd f28, 0x60(r1) /* 80017D18 00014C78 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 80017D1C 00014C7C 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80017D20 00014C80 93 C1 00 58 */ stw r30, 0x58(r1) /* 80017D24 00014C84 93 A1 00 54 */ stw r29, 0x54(r1) /* 80017D28 00014C88 93 81 00 50 */ stw r28, 0x50(r1) /* 80017D2C 00014C8C 7C 7D 1B 78 */ mr r29, r3 /* 80017D30 00014C90 FF 80 08 90 */ fmr f28, f1 /* 80017D34 00014C94 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80017D38 00014C98 7C 9C 23 78 */ mr r28, r4 /* 80017D3C 00014C9C 7C BE 2B 78 */ mr r30, r5 /* 80017D40 00014CA0 2C 00 00 00 */ cmpwi r0, 0 /* 80017D44 00014CA4 40 82 03 B0 */ bne lbl_800180F4 /* 80017D48 00014CA8 80 1D 02 58 */ lwz r0, 0x258(r29) /* 80017D4C 00014CAC 2C 00 00 00 */ cmpwi r0, 0 /* 80017D50 00014CB0 40 82 03 A4 */ bne lbl_800180F4 /* 80017D54 00014CB4 88 1D 03 DC */ lbz r0, 0x3dc(r29) /* 80017D58 00014CB8 28 00 00 00 */ cmplwi r0, 0 /* 80017D5C 00014CBC 40 82 03 98 */ bne lbl_800180F4 /* 80017D60 00014CC0 88 1D 03 DD */ lbz r0, 0x3dd(r29) /* 80017D64 00014CC4 28 00 00 00 */ cmplwi r0, 0 /* 80017D68 00014CC8 40 82 03 8C */ bne lbl_800180F4 /* 80017D6C 00014CCC C0 1D 07 8C */ lfs f0, 0x78c(r29) /* 80017D70 00014CD0 3B E0 00 7F */ li r31, 0x7f /* 80017D74 00014CD4 EC 00 E0 2A */ fadds f0, f0, f28 /* 80017D78 00014CD8 D0 1D 07 8C */ stfs f0, 0x78c(r29) /* 80017D7C 00014CDC 48 26 ED 01 */ bl TurnInput__7CPlayerCFRC11CFinalInput /* 80017D80 00014CE0 FF E0 08 90 */ fmr f31, f1 /* 80017D84 00014CE4 7F A3 EB 78 */ mr r3, r29 /* 80017D88 00014CE8 7F 84 E3 78 */ mr r4, r28 /* 80017D8C 00014CEC 48 26 EF 49 */ bl ForwardInput__7CPlayerCFRC11CFinalInputf /* 80017D90 00014CF0 FC 20 0A 10 */ fabs f1, f1 /* 80017D94 00014CF4 C0 02 81 90 */ lfs f0, lbl_805A9EB0@sda21(r2) /* 80017D98 00014CF8 FC 40 FA 10 */ fabs f2, f31 /* 80017D9C 00014CFC C3 A2 81 0C */ lfs f29, lbl_805A9E2C@sda21(r2) /* 80017DA0 00014D00 FC 20 08 18 */ frsp f1, f1 /* 80017DA4 00014D04 FC 40 10 18 */ frsp f2, f2 /* 80017DA8 00014D08 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017DAC 00014D0C 41 81 00 10 */ bgt lbl_80017DBC /* 80017DB0 00014D10 80 1D 03 04 */ lwz r0, 0x304(r29) /* 80017DB4 00014D14 2C 00 00 00 */ cmpwi r0, 0 /* 80017DB8 00014D18 41 82 00 B0 */ beq lbl_80017E68 lbl_80017DBC: /* 80017DBC 00014D1C C0 1D 01 38 */ lfs f0, 0x138(r29) /* 80017DC0 00014D20 38 61 00 38 */ addi r3, r1, 0x38 /* 80017DC4 00014D24 D0 01 00 38 */ stfs f0, 0x38(r1) /* 80017DC8 00014D28 C0 1D 01 3C */ lfs f0, 0x13c(r29) /* 80017DCC 00014D2C D0 01 00 3C */ stfs f0, 0x3c(r1) /* 80017DD0 00014D30 C0 1D 01 40 */ lfs f0, 0x140(r29) /* 80017DD4 00014D34 D0 01 00 40 */ stfs f0, 0x40(r1) /* 80017DD8 00014D38 48 2F CA E1 */ bl Magnitude__9CVector3fCFv /* 80017DDC 00014D3C FF E0 08 90 */ fmr f31, f1 /* 80017DE0 00014D40 7F A3 EB 78 */ mr r3, r29 /* 80017DE4 00014D44 FC 20 E0 90 */ fmr f1, f28 /* 80017DE8 00014D48 48 26 DB 21 */ bl GetActualFirstPersonMaxVelocity__7CPlayerCFv /* 80017DEC 00014D4C EC 3F 08 24 */ fdivs f1, f31, f1 /* 80017DF0 00014D50 C0 0D 80 CC */ lfs f0, lbl_805A6C8C@sda21(r13) /* 80017DF4 00014D54 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80017DF8 00014D58 D0 21 00 34 */ stfs f1, 0x34(r1) /* 80017DFC 00014D5C 40 80 00 0C */ bge lbl_80017E08 /* 80017E00 00014D60 38 6D 80 CC */ addi r3, r13, lbl_805A6C8C@sda21 /* 80017E04 00014D64 48 00 00 08 */ b lbl_80017E0C lbl_80017E08: /* 80017E08 00014D68 38 61 00 34 */ addi r3, r1, 0x34 lbl_80017E0C: /* 80017E0C 00014D6C C0 43 00 00 */ lfs f2, 0(r3) /* 80017E10 00014D70 C0 02 81 90 */ lfs f0, lbl_805A9EB0@sda21(r2) /* 80017E14 00014D74 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80017E18 00014D78 40 81 00 28 */ ble lbl_80017E40 /* 80017E1C 00014D7C 80 1D 07 90 */ lwz r0, 0x790(r29) /* 80017E20 00014D80 C0 22 82 30 */ lfs f1, lbl_805A9F50@sda21(r2) /* 80017E24 00014D84 C0 02 82 2C */ lfs f0, lbl_805A9F4C@sda21(r2) /* 80017E28 00014D88 2C 00 00 00 */ cmpwi r0, 0 /* 80017E2C 00014D8C EF A1 00 BA */ fmadds f29, f1, f2, f0 /* 80017E30 00014D90 40 82 00 20 */ bne lbl_80017E50 /* 80017E34 00014D94 38 00 00 01 */ li r0, 1 /* 80017E38 00014D98 90 1D 07 90 */ stw r0, 0x790(r29) /* 80017E3C 00014D9C 48 00 00 14 */ b lbl_80017E50 lbl_80017E40: /* 80017E40 00014DA0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017E44 00014DA4 38 00 00 00 */ li r0, 0 /* 80017E48 00014DA8 D0 1D 07 8C */ stfs f0, 0x78c(r29) /* 80017E4C 00014DAC 90 1D 07 90 */ stw r0, 0x790(r29) lbl_80017E50: /* 80017E50 00014DB0 C0 22 82 38 */ lfs f1, lbl_805A9F58@sda21(r2) /* 80017E54 00014DB4 C0 02 82 34 */ lfs f0, lbl_805A9F54@sda21(r2) /* 80017E58 00014DB8 EF C1 00 BA */ fmadds f30, f1, f2, f0 /* 80017E5C 00014DBC F3 C1 C0 08 */ psq_st f30, 8(r1), 1, qr4 /* 80017E60 00014DC0 8B E1 00 08 */ lbz r31, 8(r1) /* 80017E64 00014DC4 48 00 00 5C */ b lbl_80017EC0 lbl_80017E68: /* 80017E68 00014DC8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80017E6C 00014DCC 40 81 00 48 */ ble lbl_80017EB4 /* 80017E70 00014DD0 80 1D 07 90 */ lwz r0, 0x790(r29) /* 80017E74 00014DD4 2C 00 00 01 */ cmpwi r0, 1 /* 80017E78 00014DD8 40 82 00 14 */ bne lbl_80017E8C /* 80017E7C 00014DDC C0 22 82 3C */ lfs f1, lbl_805A9F5C@sda21(r2) /* 80017E80 00014DE0 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80017E84 00014DE4 EF A1 00 BA */ fmadds f29, f1, f2, f0 /* 80017E88 00014DE8 48 00 00 10 */ b lbl_80017E98 lbl_80017E8C: /* 80017E8C 00014DEC C0 22 82 40 */ lfs f1, lbl_805A9F60@sda21(r2) /* 80017E90 00014DF0 C0 02 81 28 */ lfs f0, lbl_805A9E48@sda21(r2) /* 80017E94 00014DF4 EF A1 00 BA */ fmadds f29, f1, f2, f0 lbl_80017E98: /* 80017E98 00014DF8 2C 00 00 00 */ cmpwi r0, 0 /* 80017E9C 00014DFC 40 82 00 10 */ bne lbl_80017EAC /* 80017EA0 00014E00 38 00 00 01 */ li r0, 1 /* 80017EA4 00014E04 90 1D 07 90 */ stw r0, 0x790(r29) /* 80017EA8 00014E08 C3 BD 07 8C */ lfs f29, 0x78c(r29) lbl_80017EAC: /* 80017EAC 00014E0C 3B E0 00 60 */ li r31, 0x60 /* 80017EB0 00014E10 48 00 00 10 */ b lbl_80017EC0 lbl_80017EB4: /* 80017EB4 00014E14 D3 BD 07 8C */ stfs f29, 0x78c(r29) /* 80017EB8 00014E18 38 00 00 00 */ li r0, 0 /* 80017EBC 00014E1C 90 1D 07 90 */ stw r0, 0x790(r29) lbl_80017EC0: /* 80017EC0 00014E20 80 1D 07 90 */ lwz r0, 0x790(r29) /* 80017EC4 00014E24 2C 00 00 00 */ cmpwi r0, 0 /* 80017EC8 00014E28 41 82 02 2C */ beq lbl_800180F4 /* 80017ECC 00014E2C C0 1D 07 8C */ lfs f0, 0x78c(r29) /* 80017ED0 00014E30 FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 80017ED4 00014E34 40 81 02 20 */ ble lbl_800180F4 /* 80017ED8 00014E38 88 0D A0 C8 */ lbz r0, lbl_805A8C88@sda21(r13) /* 80017EDC 00014E3C 7C 00 07 75 */ extsb. r0, r0 /* 80017EE0 00014E40 40 82 00 20 */ bne lbl_80017F00 /* 80017EE4 00014E44 7F A3 EB 78 */ mr r3, r29 /* 80017EE8 00014E48 48 26 CE F9 */ bl GetEyeHeight__7CPlayerCFv /* 80017EEC 00014E4C C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 80017EF0 00014E50 38 00 00 01 */ li r0, 1 /* 80017EF4 00014E54 98 0D A0 C8 */ stb r0, lbl_805A8C88@sda21(r13) /* 80017EF8 00014E58 EC 01 00 28 */ fsubs f0, f1, f0 /* 80017EFC 00014E5C D0 0D A0 C4 */ stfs f0, lbl_805A8C84@sda21(r13) lbl_80017F00: /* 80017F00 00014E60 88 1D 00 E6 */ lbz r0, 0xe6(r29) /* 80017F04 00014E64 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f /* 80017F08 00014E68 41 82 01 34 */ beq lbl_8001803C /* 80017F0C 00014E6C C0 3D 08 28 */ lfs f1, 0x828(r29) /* 80017F10 00014E70 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80017F14 00014E74 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017F18 00014E78 40 81 01 24 */ ble lbl_8001803C /* 80017F1C 00014E7C C0 0D A0 C4 */ lfs f0, lbl_805A8C84@sda21(r13) /* 80017F20 00014E80 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80017F24 00014E84 40 80 01 18 */ bge lbl_8001803C /* 80017F28 00014E88 88 1D 08 2C */ lbz r0, 0x82c(r29) /* 80017F2C 00014E8C 28 00 00 00 */ cmplwi r0, 0 /* 80017F30 00014E90 41 82 00 88 */ beq lbl_80017FB8 /* 80017F34 00014E94 80 1D 07 90 */ lwz r0, 0x790(r29) /* 80017F38 00014E98 2C 00 00 01 */ cmpwi r0, 1 /* 80017F3C 00014E9C 40 82 00 40 */ bne lbl_80017F7C /* 80017F40 00014EA0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80017F44 00014EA4 38 61 00 2C */ addi r3, r1, 0x2c /* 80017F48 00014EA8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80017F4C 00014EAC 7F E5 07 74 */ extsb r5, r31 /* 80017F50 00014EB0 38 80 08 87 */ li r4, 0x887 /* 80017F54 00014EB4 38 C0 00 40 */ li r6, 0x40 /* 80017F58 00014EB8 38 E0 00 01 */ li r7, 1 /* 80017F5C 00014EBC 39 20 00 00 */ li r9, 0 /* 80017F60 00014EC0 48 2D 1E 15 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80017F64 00014EC4 80 01 00 2C */ lwz r0, 0x2c(r1) /* 80017F68 00014EC8 7F A3 EB 78 */ mr r3, r29 /* 80017F6C 00014ECC 38 81 00 30 */ addi r4, r1, 0x30 /* 80017F70 00014ED0 90 01 00 30 */ stw r0, 0x30(r1) /* 80017F74 00014ED4 4B FF 92 19 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80017F78 00014ED8 48 00 01 54 */ b lbl_800180CC lbl_80017F7C: /* 80017F7C 00014EDC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80017F80 00014EE0 38 61 00 24 */ addi r3, r1, 0x24 /* 80017F84 00014EE4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80017F88 00014EE8 7F E5 07 74 */ extsb r5, r31 /* 80017F8C 00014EEC 38 80 08 88 */ li r4, 0x888 /* 80017F90 00014EF0 38 C0 00 40 */ li r6, 0x40 /* 80017F94 00014EF4 38 E0 00 01 */ li r7, 1 /* 80017F98 00014EF8 39 20 00 00 */ li r9, 0 /* 80017F9C 00014EFC 48 2D 1D D9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80017FA0 00014F00 80 01 00 24 */ lwz r0, 0x24(r1) /* 80017FA4 00014F04 7F A3 EB 78 */ mr r3, r29 /* 80017FA8 00014F08 38 81 00 28 */ addi r4, r1, 0x28 /* 80017FAC 00014F0C 90 01 00 28 */ stw r0, 0x28(r1) /* 80017FB0 00014F10 4B FF 91 DD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80017FB4 00014F14 48 00 01 18 */ b lbl_800180CC lbl_80017FB8: /* 80017FB8 00014F18 80 1D 07 90 */ lwz r0, 0x790(r29) /* 80017FBC 00014F1C 2C 00 00 01 */ cmpwi r0, 1 /* 80017FC0 00014F20 40 82 00 40 */ bne lbl_80018000 /* 80017FC4 00014F24 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80017FC8 00014F28 38 61 00 1C */ addi r3, r1, 0x1c /* 80017FCC 00014F2C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80017FD0 00014F30 7F E5 07 74 */ extsb r5, r31 /* 80017FD4 00014F34 38 80 05 CC */ li r4, 0x5cc /* 80017FD8 00014F38 38 C0 00 40 */ li r6, 0x40 /* 80017FDC 00014F3C 38 E0 00 01 */ li r7, 1 /* 80017FE0 00014F40 39 20 00 00 */ li r9, 0 /* 80017FE4 00014F44 48 2D 1D 91 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80017FE8 00014F48 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80017FEC 00014F4C 7F A3 EB 78 */ mr r3, r29 /* 80017FF0 00014F50 38 81 00 20 */ addi r4, r1, 0x20 /* 80017FF4 00014F54 90 01 00 20 */ stw r0, 0x20(r1) /* 80017FF8 00014F58 4B FF 91 95 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80017FFC 00014F5C 48 00 00 D0 */ b lbl_800180CC lbl_80018000: /* 80018000 00014F60 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80018004 00014F64 38 61 00 14 */ addi r3, r1, 0x14 /* 80018008 00014F68 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 8001800C 00014F6C 7F E5 07 74 */ extsb r5, r31 /* 80018010 00014F70 38 80 05 CD */ li r4, 0x5cd /* 80018014 00014F74 38 C0 00 40 */ li r6, 0x40 /* 80018018 00014F78 38 E0 00 01 */ li r7, 1 /* 8001801C 00014F7C 39 20 00 00 */ li r9, 0 /* 80018020 00014F80 48 2D 1D 55 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80018024 00014F84 80 01 00 14 */ lwz r0, 0x14(r1) /* 80018028 00014F88 7F A3 EB 78 */ mr r3, r29 /* 8001802C 00014F8C 38 81 00 18 */ addi r4, r1, 0x18 /* 80018030 00014F90 90 01 00 18 */ stw r0, 0x18(r1) /* 80018034 00014F94 4B FF 91 59 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle /* 80018038 00014F98 48 00 00 94 */ b lbl_800180CC lbl_8001803C: /* 8001803C 00014F9C 80 1D 07 90 */ lwz r0, 0x790(r29) /* 80018040 00014FA0 2C 00 00 01 */ cmpwi r0, 1 /* 80018044 00014FA4 40 82 00 2C */ bne lbl_80018070 /* 80018048 00014FA8 3C 60 80 3D */ lis r3, skLeftStepSounds_7CPlayer@ha /* 8001804C 00014FAC 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 80018050 00014FB0 38 A3 C4 98 */ addi r5, r3, skLeftStepSounds_7CPlayer@l /* 80018054 00014FB4 7F C4 F3 78 */ mr r4, r30 /* 80018058 00014FB8 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l /* 8001805C 00014FBC 7F A3 EB 78 */ mr r3, r29 /* 80018060 00014FC0 38 C0 00 18 */ li r6, 0x18 /* 80018064 00014FC4 48 00 00 D1 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs /* 80018068 00014FC8 7C 60 1B 78 */ mr r0, r3 /* 8001806C 00014FCC 48 00 00 28 */ b lbl_80018094 lbl_80018070: /* 80018070 00014FD0 3C 60 80 3D */ lis r3, skRightStepSounds_7CPlayer@ha /* 80018074 00014FD4 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 80018078 00014FD8 38 A3 C4 C8 */ addi r5, r3, skRightStepSounds_7CPlayer@l /* 8001807C 00014FDC 7F C4 F3 78 */ mr r4, r30 /* 80018080 00014FE0 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l /* 80018084 00014FE4 7F A3 EB 78 */ mr r3, r29 /* 80018088 00014FE8 38 C0 00 18 */ li r6, 0x18 /* 8001808C 00014FEC 48 00 00 A9 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs /* 80018090 00014FF0 7C 60 1B 78 */ mr r0, r3 lbl_80018094: /* 80018094 00014FF4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80018098 00014FF8 38 61 00 0C */ addi r3, r1, 0xc /* 8001809C 00014FFC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 800180A0 00015000 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 800180A4 00015004 7F E5 07 74 */ extsb r5, r31 /* 800180A8 00015008 38 C0 00 40 */ li r6, 0x40 /* 800180AC 0001500C 38 E0 00 01 */ li r7, 1 /* 800180B0 00015010 39 20 00 00 */ li r9, 0 /* 800180B4 00015014 48 2D 1C C1 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800180B8 00015018 80 01 00 0C */ lwz r0, 0xc(r1) /* 800180BC 0001501C 7F A3 EB 78 */ mr r3, r29 /* 800180C0 00015020 38 81 00 10 */ addi r4, r1, 0x10 /* 800180C4 00015024 90 01 00 10 */ stw r0, 0x10(r1) /* 800180C8 00015028 4B FF 90 C5 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_800180CC: /* 800180CC 0001502C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 800180D0 00015030 D0 1D 07 8C */ stfs f0, 0x78c(r29) /* 800180D4 00015034 80 1D 07 90 */ lwz r0, 0x790(r29) /* 800180D8 00015038 2C 00 00 01 */ cmpwi r0, 1 /* 800180DC 0001503C 40 82 00 10 */ bne lbl_800180EC /* 800180E0 00015040 38 00 00 02 */ li r0, 2 /* 800180E4 00015044 90 1D 07 90 */ stw r0, 0x790(r29) /* 800180E8 00015048 48 00 00 0C */ b lbl_800180F4 lbl_800180EC: /* 800180EC 0001504C 38 00 00 01 */ li r0, 1 /* 800180F0 00015050 90 1D 07 90 */ stw r0, 0x790(r29) lbl_800180F4: /* 800180F4 00015054 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 800180F8 00015058 CB E1 00 90 */ lfd f31, 0x90(r1) /* 800180FC 0001505C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80018100 00015060 CB C1 00 80 */ lfd f30, 0x80(r1) /* 80018104 00015064 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80018108 00015068 CB A1 00 70 */ lfd f29, 0x70(r1) /* 8001810C 0001506C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 80018110 00015070 CB 81 00 60 */ lfd f28, 0x60(r1) /* 80018114 00015074 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80018118 00015078 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8001811C 0001507C 83 A1 00 54 */ lwz r29, 0x54(r1) /* 80018120 00015080 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80018124 00015084 83 81 00 50 */ lwz r28, 0x50(r1) /* 80018128 00015088 7C 08 03 A6 */ mtlr r0 /* 8001812C 0001508C 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80018130 00015090 4E 80 00 20 */ blr .global GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs: /* 80018134 00015094 94 21 F7 10 */ stwu r1, -0x8f0(r1) /* 80018138 00015098 7C 08 02 A6 */ mflr r0 /* 8001813C 0001509C 90 01 08 F4 */ stw r0, 0x8f4(r1) /* 80018140 000150A0 BF 41 08 D8 */ stmw r26, 0x8d8(r1) /* 80018144 000150A4 7C FE 3B 78 */ mr r30, r7 /* 80018148 000150A8 7C 7A 1B 78 */ mr r26, r3 /* 8001814C 000150AC 7C 9B 23 78 */ mr r27, r4 /* 80018150 000150B0 7C BC 2B 78 */ mr r28, r5 /* 80018154 000150B4 7C DD 33 78 */ mr r29, r6 /* 80018158 000150B8 54 FF 04 3E */ clrlwi r31, r7, 0x10 /* 8001815C 000150BC 88 0D A0 C0 */ lbz r0, lbl_805A8C80@sda21(r13) /* 80018160 000150C0 7C 00 07 75 */ extsb. r0, r0 /* 80018164 000150C4 40 82 00 24 */ bne lbl_80018188 /* 80018168 000150C8 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 8001816C 000150CC 3C 60 80 45 */ lis r3, lbl_804579E8@ha /* 80018170 000150D0 38 00 00 01 */ li r0, 1 /* 80018174 000150D4 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 80018178 000150D8 D4 23 79 E8 */ stfsu f1, lbl_804579E8@l(r3) /* 8001817C 000150DC D0 23 00 04 */ stfs f1, 4(r3) /* 80018180 000150E0 D0 03 00 08 */ stfs f0, 8(r3) /* 80018184 000150E4 98 0D A0 C0 */ stb r0, lbl_805A8C80@sda21(r13) lbl_80018188: /* 80018188 000150E8 88 0D A0 C1 */ lbz r0, lbl_805A8C81@sda21(r13) /* 8001818C 000150EC 7C 00 07 75 */ extsb. r0, r0 /* 80018190 000150F0 40 82 00 40 */ bne lbl_800181D0 /* 80018194 000150F4 80 AD 80 C8 */ lwz r5, lbl_805A6C88@sda21(r13) /* 80018198 000150F8 38 60 00 00 */ li r3, 0 /* 8001819C 000150FC 38 80 00 01 */ li r4, 1 /* 800181A0 00015100 48 37 1D 55 */ bl __shl2i /* 800181A4 00015104 3C A0 80 45 */ lis r5, lbl_804579F8@ha /* 800181A8 00015108 38 C0 00 01 */ li r6, 1 /* 800181AC 0001510C 38 A5 79 F8 */ addi r5, r5, lbl_804579F8@l /* 800181B0 00015110 38 00 00 00 */ li r0, 0 /* 800181B4 00015114 90 C1 00 50 */ stw r6, 0x50(r1) /* 800181B8 00015118 90 85 00 04 */ stw r4, 4(r5) /* 800181BC 0001511C 90 65 00 00 */ stw r3, 0(r5) /* 800181C0 00015120 90 05 00 0C */ stw r0, 0xc(r5) /* 800181C4 00015124 90 05 00 08 */ stw r0, 8(r5) /* 800181C8 00015128 90 C5 00 10 */ stw r6, 0x10(r5) /* 800181CC 0001512C 98 CD A0 C1 */ stb r6, lbl_805A8C81@sda21(r13) lbl_800181D0: /* 800181D0 00015130 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13) /* 800181D4 00015134 38 00 00 00 */ li r0, 0 /* 800181D8 00015138 90 01 00 D0 */ stw r0, 0xd0(r1) /* 800181DC 0001513C 7F 44 D3 78 */ mr r4, r26 /* 800181E0 00015140 38 61 00 24 */ addi r3, r1, 0x24 /* 800181E4 00015144 B0 A1 00 08 */ sth r5, 8(r1) /* 800181E8 00015148 48 10 27 45 */ bl GetBoundingBox__13CPhysicsActorCFv /* 800181EC 0001514C C0 81 00 24 */ lfs f4, 0x24(r1) /* 800181F0 00015150 3C 60 80 45 */ lis r3, lbl_804579E8@ha /* 800181F4 00015154 C0 41 00 28 */ lfs f2, 0x28(r1) /* 800181F8 00015158 38 A3 79 E8 */ addi r5, r3, lbl_804579E8@l /* 800181FC 0001515C C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80018200 00015160 38 61 00 58 */ addi r3, r1, 0x58 /* 80018204 00015164 C0 A1 00 30 */ lfs f5, 0x30(r1) /* 80018208 00015168 38 81 00 18 */ addi r4, r1, 0x18 /* 8001820C 0001516C C0 61 00 34 */ lfs f3, 0x34(r1) /* 80018210 00015170 C0 21 00 38 */ lfs f1, 0x38(r1) /* 80018214 00015174 D0 81 00 58 */ stfs f4, 0x58(r1) /* 80018218 00015178 C0 85 00 04 */ lfs f4, 4(r5) /* 8001821C 0001517C D0 41 00 5C */ stfs f2, 0x5c(r1) /* 80018220 00015180 C0 45 00 08 */ lfs f2, 8(r5) /* 80018224 00015184 D0 01 00 60 */ stfs f0, 0x60(r1) /* 80018228 00015188 C0 05 00 00 */ lfs f0, 0(r5) /* 8001822C 0001518C D0 A1 00 64 */ stfs f5, 0x64(r1) /* 80018230 00015190 D0 61 00 68 */ stfs f3, 0x68(r1) /* 80018234 00015194 D0 21 00 6C */ stfs f1, 0x6c(r1) /* 80018238 00015198 C0 BA 00 50 */ lfs f5, 0x50(r26) /* 8001823C 0001519C C0 7A 00 60 */ lfs f3, 0x60(r26) /* 80018240 000151A0 C0 3A 00 40 */ lfs f1, 0x40(r26) /* 80018244 000151A4 EC 85 20 2A */ fadds f4, f5, f4 /* 80018248 000151A8 EC 43 10 2A */ fadds f2, f3, f2 /* 8001824C 000151AC EC 01 00 2A */ fadds f0, f1, f0 /* 80018250 000151B0 D0 81 00 1C */ stfs f4, 0x1c(r1) /* 80018254 000151B4 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80018258 000151B8 D0 41 00 20 */ stfs f2, 0x20(r1) /* 8001825C 000151BC 48 31 F8 AD */ bl AccumulateBounds__6CAABoxFRC9CVector3f /* 80018260 000151C0 3C 80 80 45 */ lis r4, lbl_804579F8@ha /* 80018264 000151C4 7F 63 DB 78 */ mr r3, r27 /* 80018268 000151C8 38 C4 79 F8 */ addi r6, r4, lbl_804579F8@l /* 8001826C 000151CC 38 A1 00 58 */ addi r5, r1, 0x58 /* 80018270 000151D0 38 81 00 D0 */ addi r4, r1, 0xd0 /* 80018274 000151D4 38 E0 00 00 */ li r7, 0 /* 80018278 000151D8 48 03 44 A9 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 8001827C 000151DC C0 7A 00 60 */ lfs f3, 0x60(r26) /* 80018280 000151E0 3C 80 80 45 */ lis r4, lbl_804579E8@ha /* 80018284 000151E4 C0 5A 00 50 */ lfs f2, 0x50(r26) /* 80018288 000151E8 3C 60 80 45 */ lis r3, lbl_804579F8@ha /* 8001828C 000151EC C0 1A 00 40 */ lfs f0, 0x40(r26) /* 80018290 000151F0 38 E4 79 E8 */ addi r7, r4, lbl_804579E8@l /* 80018294 000151F4 39 03 79 F8 */ addi r8, r3, lbl_804579F8@l /* 80018298 000151F8 C0 22 82 44 */ lfs f1, lbl_805A9F64@sda21(r2) /* 8001829C 000151FC D0 01 00 0C */ stfs f0, 0xc(r1) /* 800182A0 00015200 7F 64 DB 78 */ mr r4, r27 /* 800182A4 00015204 38 61 00 70 */ addi r3, r1, 0x70 /* 800182A8 00015208 38 A1 00 08 */ addi r5, r1, 8 /* 800182AC 0001520C D0 41 00 10 */ stfs f2, 0x10(r1) /* 800182B0 00015210 38 C1 00 0C */ addi r6, r1, 0xc /* 800182B4 00015214 39 21 00 D0 */ addi r9, r1, 0xd0 /* 800182B8 00015218 D0 61 00 14 */ stfs f3, 0x14(r1) /* 800182BC 0001521C 48 03 4D 09 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" /* 800182C0 00015220 88 A1 00 90 */ lbz r5, 0x90(r1) /* 800182C4 00015224 38 61 00 C8 */ addi r3, r1, 0xc8 /* 800182C8 00015228 C0 E1 00 70 */ lfs f7, 0x70(r1) /* 800182CC 0001522C C0 C1 00 74 */ lfs f6, 0x74(r1) /* 800182D0 00015230 28 05 00 00 */ cmplwi r5, 0 /* 800182D4 00015234 C0 A1 00 78 */ lfs f5, 0x78(r1) /* 800182D8 00015238 C0 81 00 7C */ lfs f4, 0x7c(r1) /* 800182DC 0001523C C0 61 00 80 */ lfs f3, 0x80(r1) /* 800182E0 00015240 C0 41 00 84 */ lfs f2, 0x84(r1) /* 800182E4 00015244 C0 21 00 88 */ lfs f1, 0x88(r1) /* 800182E8 00015248 C0 01 00 8C */ lfs f0, 0x8c(r1) /* 800182EC 0001524C 80 01 00 98 */ lwz r0, 0x98(r1) /* 800182F0 00015250 80 81 00 9C */ lwz r4, 0x9c(r1) /* 800182F4 00015254 D0 E1 00 A0 */ stfs f7, 0xa0(r1) /* 800182F8 00015258 D0 C1 00 A4 */ stfs f6, 0xa4(r1) /* 800182FC 0001525C D0 A1 00 A8 */ stfs f5, 0xa8(r1) /* 80018300 00015260 D0 81 00 AC */ stfs f4, 0xac(r1) /* 80018304 00015264 D0 61 00 B0 */ stfs f3, 0xb0(r1) /* 80018308 00015268 D0 41 00 B4 */ stfs f2, 0xb4(r1) /* 8001830C 0001526C D0 21 00 B8 */ stfs f1, 0xb8(r1) /* 80018310 00015270 D0 01 00 BC */ stfs f0, 0xbc(r1) /* 80018314 00015274 98 A1 00 C0 */ stb r5, 0xc0(r1) /* 80018318 00015278 90 81 00 CC */ stw r4, 0xcc(r1) /* 8001831C 0001527C 90 01 00 C8 */ stw r0, 0xc8(r1) /* 80018320 00015280 41 82 00 18 */ beq lbl_80018338 /* 80018324 00015284 7F 84 E3 78 */ mr r4, r28 /* 80018328 00015288 7F A5 EB 78 */ mr r5, r29 /* 8001832C 0001528C 7F C6 F3 78 */ mr r6, r30 /* 80018330 00015290 48 00 00 75 */ bl SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs /* 80018334 00015294 7C 7F 1B 78 */ mr r31, r3 lbl_80018338: /* 80018338 00015298 80 C1 00 D0 */ lwz r6, 0xd0(r1) /* 8001833C 0001529C 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 80018340 000152A0 38 80 00 00 */ li r4, 0 /* 80018344 000152A4 2C 06 00 00 */ cmpwi r6, 0 /* 80018348 000152A8 40 81 00 40 */ ble lbl_80018388 /* 8001834C 000152AC 2C 06 00 08 */ cmpwi r6, 8 /* 80018350 000152B0 38 A6 FF F8 */ addi r5, r6, -8 /* 80018354 000152B4 40 81 00 20 */ ble lbl_80018374 /* 80018358 000152B8 38 05 00 07 */ addi r0, r5, 7 /* 8001835C 000152BC 54 00 E8 FE */ srwi r0, r0, 3 /* 80018360 000152C0 7C 09 03 A6 */ mtctr r0 /* 80018364 000152C4 2C 05 00 00 */ cmpwi r5, 0 /* 80018368 000152C8 40 81 00 0C */ ble lbl_80018374 lbl_8001836C: /* 8001836C 000152CC 38 84 00 08 */ addi r4, r4, 8 /* 80018370 000152D0 42 00 FF FC */ bdnz lbl_8001836C lbl_80018374: /* 80018374 000152D4 7C 04 30 50 */ subf r0, r4, r6 /* 80018378 000152D8 7C 09 03 A6 */ mtctr r0 /* 8001837C 000152DC 7C 04 30 00 */ cmpw r4, r6 /* 80018380 000152E0 40 80 00 08 */ bge lbl_80018388 lbl_80018384: /* 80018384 000152E4 42 00 00 00 */ bdnz lbl_80018384 lbl_80018388: /* 80018388 000152E8 38 00 00 00 */ li r0, 0 /* 8001838C 000152EC 90 01 00 D0 */ stw r0, 0xd0(r1) /* 80018390 000152F0 BB 41 08 D8 */ lmw r26, 0x8d8(r1) /* 80018394 000152F4 80 01 08 F4 */ lwz r0, 0x8f4(r1) /* 80018398 000152F8 7C 08 03 A6 */ mtlr r0 /* 8001839C 000152FC 38 21 08 F0 */ addi r1, r1, 0x8f0 /* 800183A0 00015300 4E 80 00 20 */ blr .global SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs: /* 800183A4 00015304 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800183A8 00015308 7C 08 02 A6 */ mflr r0 /* 800183AC 0001530C 90 01 00 24 */ stw r0, 0x24(r1) /* 800183B0 00015310 BF 41 00 08 */ stmw r26, 8(r1) /* 800183B4 00015314 7C 7A 1B 78 */ mr r26, r3 /* 800183B8 00015318 7C BB 2B 78 */ mr r27, r5 /* 800183BC 0001531C 54 DD 04 3E */ clrlwi r29, r6, 0x10 /* 800183C0 00015320 7C 9E 23 78 */ mr r30, r4 /* 800183C4 00015324 3B 80 00 00 */ li r28, 0 /* 800183C8 00015328 3B E0 00 00 */ li r31, 0 /* 800183CC 0001532C 48 00 00 48 */ b lbl_80018414 lbl_800183D0: /* 800183D0 00015330 38 60 00 00 */ li r3, 0 /* 800183D4 00015334 38 80 00 01 */ li r4, 1 /* 800183D8 00015338 48 37 1B 1D */ bl __shl2i /* 800183DC 0001533C 80 1A 00 00 */ lwz r0, 0(r26) /* 800183E0 00015340 80 BA 00 04 */ lwz r5, 4(r26) /* 800183E4 00015344 7C 00 18 38 */ and r0, r0, r3 /* 800183E8 00015348 7C A3 20 38 */ and r3, r5, r4 /* 800183EC 0001534C 7C 63 FA 78 */ xor r3, r3, r31 /* 800183F0 00015350 7C 00 FA 78 */ xor r0, r0, r31 /* 800183F4 00015354 7C 60 03 79 */ or. r0, r3, r0 /* 800183F8 00015358 41 82 00 14 */ beq lbl_8001840C /* 800183FC 0001535C A0 1E 00 00 */ lhz r0, 0(r30) /* 80018400 00015360 28 00 FF FF */ cmplwi r0, 0xffff /* 80018404 00015364 41 82 00 08 */ beq lbl_8001840C /* 80018408 00015368 7C 1D 03 78 */ mr r29, r0 lbl_8001840C: /* 8001840C 0001536C 3B DE 00 02 */ addi r30, r30, 2 /* 80018410 00015370 3B 9C 00 01 */ addi r28, r28, 1 lbl_80018414: /* 80018414 00015374 7F 85 07 34 */ extsh r5, r28 /* 80018418 00015378 7C 05 D8 00 */ cmpw r5, r27 /* 8001841C 0001537C 41 80 FF B4 */ blt lbl_800183D0 /* 80018420 00015380 57 A3 04 3E */ clrlwi r3, r29, 0x10 /* 80018424 00015384 BB 41 00 08 */ lmw r26, 8(r1) /* 80018428 00015388 80 01 00 24 */ lwz r0, 0x24(r1) /* 8001842C 0001538C 7C 08 03 A6 */ mtlr r0 /* 80018430 00015390 38 21 00 20 */ addi r1, r1, 0x20 /* 80018434 00015394 4E 80 00 20 */ blr .global UpdatePlayerSounds__7CPlayerFf UpdatePlayerSounds__7CPlayerFf: /* 80018438 00015398 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8001843C 0001539C 7C 08 02 A6 */ mflr r0 /* 80018440 000153A0 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 80018444 000153A4 90 01 00 24 */ stw r0, 0x24(r1) /* 80018448 000153A8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8001844C 000153AC 7C 7F 1B 78 */ mr r31, r3 /* 80018450 000153B0 C0 03 07 84 */ lfs f0, 0x784(r3) /* 80018454 000153B4 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80018458 000153B8 40 81 00 34 */ ble lbl_8001848C /* 8001845C 000153BC EC 00 08 28 */ fsubs f0, f0, f1 /* 80018460 000153C0 D0 1F 07 84 */ stfs f0, 0x784(r31) /* 80018464 000153C4 C0 1F 07 84 */ lfs f0, 0x784(r31) /* 80018468 000153C8 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8001846C 000153CC 4C 40 13 82 */ cror 2, 0, 2 /* 80018470 000153D0 40 82 00 1C */ bne lbl_8001848C /* 80018474 000153D4 80 1F 07 70 */ lwz r0, 0x770(r31) /* 80018478 000153D8 38 61 00 08 */ addi r3, r1, 8 /* 8001847C 000153DC 90 01 00 08 */ stw r0, 8(r1) /* 80018480 000153E0 48 2D 18 C9 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 80018484 000153E4 38 00 00 00 */ li r0, 0 /* 80018488 000153E8 90 1F 07 70 */ stw r0, 0x770(r31) lbl_8001848C: /* 8001848C 000153EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80018490 000153F0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80018494 000153F4 7C 08 03 A6 */ mtlr r0 /* 80018498 000153F8 38 21 00 20 */ addi r1, r1, 0x20 /* 8001849C 000153FC 4E 80 00 20 */ blr .global UpdateCrosshairsState__7CPlayerFRC11CFinalInput UpdateCrosshairsState__7CPlayerFRC11CFinalInput: /* 800184A0 00015400 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800184A4 00015404 7C 08 02 A6 */ mflr r0 /* 800184A8 00015408 90 01 00 14 */ stw r0, 0x14(r1) /* 800184AC 0001540C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800184B0 00015410 7C 7F 1B 78 */ mr r31, r3 /* 800184B4 00015414 38 60 00 39 */ li r3, 0x39 /* 800184B8 00015418 4B FF 43 BD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800184BC 0001541C 88 1F 09 C4 */ lbz r0, 0x9c4(r31) /* 800184C0 00015420 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 800184C4 00015424 98 1F 09 C4 */ stb r0, 0x9c4(r31) /* 800184C8 00015428 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800184CC 0001542C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800184D0 00015430 7C 08 03 A6 */ mtlr r0 /* 800184D4 00015434 38 21 00 10 */ addi r1, r1, 0x10 /* 800184D8 00015438 4E 80 00 20 */ blr .global UpdateVisorTransition__7CPlayerFfR13CStateManager UpdateVisorTransition__7CPlayerFfR13CStateManager: /* 800184DC 0001543C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800184E0 00015440 7C 08 02 A6 */ mflr r0 /* 800184E4 00015444 90 01 00 24 */ stw r0, 0x24(r1) /* 800184E8 00015448 DB E1 00 18 */ stfd f31, 0x18(r1) /* 800184EC 0001544C FF E0 08 90 */ fmr f31, f1 /* 800184F0 00015450 93 E1 00 14 */ stw r31, 0x14(r1) /* 800184F4 00015454 80 64 08 B8 */ lwz r3, 0x8b8(r4) /* 800184F8 00015458 83 E3 00 00 */ lwz r31, 0(r3) /* 800184FC 0001545C 7F E3 FB 78 */ mr r3, r31 /* 80018500 00015460 48 07 93 35 */ bl GetIsVisorTransitioning__12CPlayerStateCFv /* 80018504 00015464 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018508 00015468 41 82 00 10 */ beq lbl_80018518 /* 8001850C 0001546C FC 20 F8 90 */ fmr f1, f31 /* 80018510 00015470 7F E3 FB 78 */ mr r3, r31 /* 80018514 00015474 48 07 93 61 */ bl UpdateVisorTransition__12CPlayerStateFf lbl_80018518: /* 80018518 00015478 80 01 00 24 */ lwz r0, 0x24(r1) /* 8001851C 0001547C CB E1 00 18 */ lfd f31, 0x18(r1) /* 80018520 00015480 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80018524 00015484 7C 08 03 A6 */ mtlr r0 /* 80018528 00015488 38 21 00 20 */ addi r1, r1, 0x20 /* 8001852C 0001548C 4E 80 00 20 */ blr .global UpdateVisorState__7CPlayerFRC11CFinalInputfR13CStateManager UpdateVisorState__7CPlayerFRC11CFinalInputfR13CStateManager: /* 80018530 00015490 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80018534 00015494 7C 08 02 A6 */ mflr r0 /* 80018538 00015498 90 01 00 44 */ stw r0, 0x44(r1) /* 8001853C 0001549C BF 01 00 20 */ stmw r24, 0x20(r1) /* 80018540 000154A0 7C 7C 1B 78 */ mr r28, r3 /* 80018544 000154A4 7C 9D 23 78 */ mr r29, r4 /* 80018548 000154A8 7C BE 2B 78 */ mr r30, r5 /* 8001854C 000154AC 38 7C 07 A0 */ addi r3, r28, 0x7a0 /* 80018550 000154B0 4B FF F5 BD */ bl Update__Q27CPlayer11CVisorSteamFf /* 80018554 000154B4 88 1C 07 C8 */ lbz r0, 0x7c8(r28) /* 80018558 000154B8 28 00 00 00 */ cmplwi r0, 0 /* 8001855C 000154BC 41 82 00 14 */ beq lbl_80018570 /* 80018560 000154C0 C0 3E 0F 28 */ lfs f1, 0xf28(r30) /* 80018564 000154C4 C0 1C 07 C0 */ lfs f0, 0x7c0(r28) /* 80018568 000154C8 EC 01 00 2A */ fadds f0, f1, f0 /* 8001856C 000154CC D0 1E 0F 28 */ stfs f0, 0xf28(r30) lbl_80018570: /* 80018570 000154D0 80 BE 08 B8 */ lwz r5, 0x8b8(r30) /* 80018574 000154D4 7F C3 F3 78 */ mr r3, r30 /* 80018578 000154D8 A0 1C 03 10 */ lhz r0, 0x310(r28) /* 8001857C 000154DC 38 81 00 0C */ addi r4, r1, 0xc /* 80018580 000154E0 83 7C 02 F8 */ lwz r27, 0x2f8(r28) /* 80018584 000154E4 83 E5 00 00 */ lwz r31, 0(r5) /* 80018588 000154E8 B0 01 00 08 */ sth r0, 8(r1) /* 8001858C 000154EC B0 01 00 0C */ sth r0, 0xc(r1) /* 80018590 000154F0 48 03 40 15 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80018594 000154F4 7C 64 1B 78 */ mr r4, r3 /* 80018598 000154F8 38 61 00 10 */ addi r3, r1, 0x10 /* 8001859C 000154FC 48 09 15 2D */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" /* 800185A0 00015500 80 1C 03 04 */ lwz r0, 0x304(r28) /* 800185A4 00015504 80 63 00 04 */ lwz r3, 4(r3) /* 800185A8 00015508 2C 00 00 05 */ cmpwi r0, 5 /* 800185AC 0001550C 41 82 01 24 */ beq lbl_800186D0 /* 800185B0 00015510 28 03 00 00 */ cmplwi r3, 0 /* 800185B4 00015514 41 82 00 08 */ beq lbl_800185BC /* 800185B8 00015518 48 00 01 18 */ b lbl_800186D0 lbl_800185BC: /* 800185BC 0001551C 2C 1B 00 00 */ cmpwi r27, 0 /* 800185C0 00015520 40 82 01 10 */ bne lbl_800186D0 /* 800185C4 00015524 7F E3 FB 78 */ mr r3, r31 /* 800185C8 00015528 48 07 92 6D */ bl GetIsVisorTransitioning__12CPlayerStateCFv /* 800185CC 0001552C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800185D0 00015530 40 82 01 00 */ bne lbl_800186D0 /* 800185D4 00015534 80 1C 03 A8 */ lwz r0, 0x3a8(r28) /* 800185D8 00015538 2C 00 00 00 */ cmpwi r0, 0 /* 800185DC 0001553C 40 82 00 F4 */ bne lbl_800186D0 /* 800185E0 00015540 83 5F 00 18 */ lwz r26, 0x18(r31) /* 800185E4 00015544 2C 1A 00 02 */ cmpwi r26, 2 /* 800185E8 00015548 40 82 00 58 */ bne lbl_80018640 /* 800185EC 0001554C 7F A4 EB 78 */ mr r4, r29 /* 800185F0 00015550 38 60 00 0B */ li r3, 0xb /* 800185F4 00015554 4B FF 41 DD */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800185F8 00015558 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800185FC 0001555C 40 82 00 18 */ bne lbl_80018614 /* 80018600 00015560 7F A4 EB 78 */ mr r4, r29 /* 80018604 00015564 38 60 00 0C */ li r3, 0xc /* 80018608 00015568 4B FF 41 C9 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001860C 0001556C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018610 00015570 41 82 00 30 */ beq lbl_80018640 lbl_80018614: /* 80018614 00015574 7F E3 FB 78 */ mr r3, r31 /* 80018618 00015578 38 80 00 11 */ li r4, 0x11 /* 8001861C 0001557C 48 07 94 A5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 80018620 00015580 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018624 00015584 41 82 00 1C */ beq lbl_80018640 /* 80018628 00015588 7F E3 FB 78 */ mr r3, r31 /* 8001862C 0001558C 38 80 00 00 */ li r4, 0 /* 80018630 00015590 48 07 93 25 */ bl StartTransitionToVisor__12CPlayerStateFQ212CPlayerState12EPlayerVisor /* 80018634 00015594 7F 83 E3 78 */ mr r3, r28 /* 80018638 00015598 7F C4 F3 78 */ mr r4, r30 /* 8001863C 0001559C 48 00 1A 71 */ bl DrawGun__7CPlayerFR13CStateManager lbl_80018640: /* 80018640 000155A0 3C 60 80 45 */ lis r3, lbl_804579C8@ha /* 80018644 000155A4 3B 20 00 00 */ li r25, 0 /* 80018648 000155A8 3B 63 79 C8 */ addi r27, r3, lbl_804579C8@l lbl_8001864C: /* 8001864C 000155AC 83 1B 00 04 */ lwz r24, 4(r27) /* 80018650 000155B0 7F E3 FB 78 */ mr r3, r31 /* 80018654 000155B4 80 9B 00 00 */ lwz r4, 0(r27) /* 80018658 000155B8 48 07 94 69 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 8001865C 000155BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018660 000155C0 41 82 00 60 */ beq lbl_800186C0 /* 80018664 000155C4 7F 03 C3 78 */ mr r3, r24 /* 80018668 000155C8 7F A4 EB 78 */ mr r4, r29 /* 8001866C 000155CC 4B FF 41 65 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80018670 000155D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018674 000155D4 41 82 00 4C */ beq lbl_800186C0 /* 80018678 000155D8 88 1C 09 C4 */ lbz r0, 0x9c4(r28) /* 8001867C 000155DC 38 60 00 01 */ li r3, 1 /* 80018680 000155E0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 80018684 000155E4 7C 1A C8 00 */ cmpw r26, r25 /* 80018688 000155E8 98 1C 09 C4 */ stb r0, 0x9c4(r28) /* 8001868C 000155EC 41 82 00 34 */ beq lbl_800186C0 /* 80018690 000155F0 7F E3 FB 78 */ mr r3, r31 /* 80018694 000155F4 7F 24 CB 78 */ mr r4, r25 /* 80018698 000155F8 48 07 92 BD */ bl StartTransitionToVisor__12CPlayerStateFQ212CPlayerState12EPlayerVisor /* 8001869C 000155FC 2C 19 00 02 */ cmpwi r25, 2 /* 800186A0 00015600 40 82 00 14 */ bne lbl_800186B4 /* 800186A4 00015604 7F 83 E3 78 */ mr r3, r28 /* 800186A8 00015608 7F C4 F3 78 */ mr r4, r30 /* 800186AC 0001560C 48 00 1A C1 */ bl HolsterGun__7CPlayerFR13CStateManager /* 800186B0 00015610 48 00 00 10 */ b lbl_800186C0 lbl_800186B4: /* 800186B4 00015614 7F 83 E3 78 */ mr r3, r28 /* 800186B8 00015618 7F C4 F3 78 */ mr r4, r30 /* 800186BC 0001561C 48 00 19 F1 */ bl DrawGun__7CPlayerFR13CStateManager lbl_800186C0: /* 800186C0 00015620 3B 39 00 01 */ addi r25, r25, 1 /* 800186C4 00015624 3B 7B 00 08 */ addi r27, r27, 8 /* 800186C8 00015628 2C 19 00 04 */ cmpwi r25, 4 /* 800186CC 0001562C 41 80 FF 80 */ blt lbl_8001864C lbl_800186D0: /* 800186D0 00015630 BB 01 00 20 */ lmw r24, 0x20(r1) /* 800186D4 00015634 80 01 00 44 */ lwz r0, 0x44(r1) /* 800186D8 00015638 7C 08 03 A6 */ mtlr r0 /* 800186DC 0001563C 38 21 00 40 */ addi r1, r1, 0x40 /* 800186E0 00015640 4E 80 00 20 */ blr .global ShouldSampleFailsafe__7CPlayerCFv ShouldSampleFailsafe__7CPlayerCFv: /* 800186E4 00015644 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800186E8 00015648 7C 08 02 A6 */ mflr r0 /* 800186EC 0001564C 90 01 00 24 */ stw r0, 0x24(r1) /* 800186F0 00015650 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800186F4 00015654 7C 9F 23 78 */ mr r31, r4 /* 800186F8 00015658 93 C1 00 18 */ stw r30, 0x18(r1) /* 800186FC 0001565C 7C 7E 1B 78 */ mr r30, r3 /* 80018700 00015660 80 64 08 70 */ lwz r3, 0x870(r4) /* 80018704 00015664 4B FF 34 15 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80018708 00015668 7C 64 1B 78 */ mr r4, r3 /* 8001870C 0001566C 38 61 00 08 */ addi r3, r1, 8 /* 80018710 00015670 48 09 70 21 */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" /* 80018714 00015674 80 9F 08 B8 */ lwz r4, 0x8b8(r31) /* 80018718 00015678 80 A3 00 04 */ lwz r5, 4(r3) /* 8001871C 0001567C 80 64 00 00 */ lwz r3, 0(r4) /* 80018720 00015680 88 03 00 00 */ lbz r0, 0(r3) /* 80018724 00015684 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80018728 00015688 41 82 00 24 */ beq lbl_8001874C /* 8001872C 0001568C 80 1E 02 F4 */ lwz r0, 0x2f4(r30) /* 80018730 00015690 2C 00 00 04 */ cmpwi r0, 4 /* 80018734 00015694 40 82 00 20 */ bne lbl_80018754 /* 80018738 00015698 28 05 00 00 */ cmplwi r5, 0 /* 8001873C 0001569C 41 82 00 18 */ beq lbl_80018754 /* 80018740 000156A0 80 05 02 1C */ lwz r0, 0x21c(r5) /* 80018744 000156A4 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 80018748 000156A8 41 82 00 0C */ beq lbl_80018754 lbl_8001874C: /* 8001874C 000156AC 38 60 00 00 */ li r3, 0 /* 80018750 000156B0 48 00 00 08 */ b lbl_80018758 lbl_80018754: /* 80018754 000156B4 38 60 00 01 */ li r3, 1 lbl_80018758: /* 80018758 000156B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8001875C 000156BC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80018760 000156C0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80018764 000156C4 7C 08 03 A6 */ mtlr r0 /* 80018768 000156C8 38 21 00 20 */ addi r1, r1, 0x20 /* 8001876C 000156CC 4E 80 00 20 */ blr .global Update__7CPlayerFfR13CStateManager Update__7CPlayerFfR13CStateManager: /* 80018770 000156D0 94 21 FE B0 */ stwu r1, -0x150(r1) /* 80018774 000156D4 7C 08 02 A6 */ mflr r0 /* 80018778 000156D8 90 01 01 54 */ stw r0, 0x154(r1) /* 8001877C 000156DC DB E1 01 40 */ stfd f31, 0x140(r1) /* 80018780 000156E0 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 /* 80018784 000156E4 93 E1 01 3C */ stw r31, 0x13c(r1) /* 80018788 000156E8 93 C1 01 38 */ stw r30, 0x138(r1) /* 8001878C 000156EC 93 A1 01 34 */ stw r29, 0x134(r1) /* 80018790 000156F0 D0 21 00 08 */ stfs f1, 8(r1) /* 80018794 000156F4 7C 7E 1B 78 */ mr r30, r3 /* 80018798 000156F8 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 8001879C 000156FC 7C 9F 23 78 */ mr r31, r4 /* 800187A0 00015700 48 10 1D 41 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf /* 800187A4 00015704 C0 21 00 08 */ lfs f1, 8(r1) /* 800187A8 00015708 7F C3 F3 78 */ mr r3, r30 /* 800187AC 0001570C 7F E4 FB 78 */ mr r4, r31 /* 800187B0 00015710 48 26 95 B9 */ bl UpdateMorphBallTransition__7CPlayerFfR13CStateManager /* 800187B4 00015714 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800187B8 00015718 80 1E 07 EC */ lwz r0, 0x7ec(r30) /* 800187BC 0001571C 80 63 00 00 */ lwz r3, 0(r3) /* 800187C0 00015720 80 63 00 08 */ lwz r3, 8(r3) /* 800187C4 00015724 7C 00 18 00 */ cmpw r0, r3 /* 800187C8 00015728 41 82 00 B4 */ beq lbl_8001887C /* 800187CC 0001572C 90 7E 07 EC */ stw r3, 0x7ec(r30) /* 800187D0 00015730 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) /* 800187D4 00015734 80 9E 07 EC */ lwz r4, 0x7ec(r30) /* 800187D8 00015738 48 19 3A 61 */ bl GetBallTransitionBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId /* 800187DC 0001573C 90 61 00 44 */ stw r3, 0x44(r1) /* 800187E0 00015740 38 61 00 E4 */ addi r3, r1, 0xe4 /* 800187E4 00015744 38 81 00 44 */ addi r4, r1, 0x44 /* 800187E8 00015748 C0 1E 07 D8 */ lfs f0, 0x7d8(r30) /* 800187EC 0001574C D0 01 00 48 */ stfs f0, 0x48(r1) /* 800187F0 00015750 C0 1E 07 DC */ lfs f0, 0x7dc(r30) /* 800187F4 00015754 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800187F8 00015758 C0 1E 07 E0 */ lfs f0, 0x7e0(r30) /* 800187FC 0001575C D0 01 00 50 */ stfs f0, 0x50(r1) /* 80018800 00015760 48 0F E5 5D */ bl __ct__10CModelDataFRC10CStaticRes /* 80018804 00015764 80 01 00 F4 */ lwz r0, 0xf4(r1) /* 80018808 00015768 38 60 00 00 */ li r3, 0 /* 8001880C 0001576C 28 00 00 00 */ cmplwi r0, 0 /* 80018810 00015770 40 82 00 14 */ bne lbl_80018824 /* 80018814 00015774 88 01 01 0C */ lbz r0, 0x10c(r1) /* 80018818 00015778 28 00 00 00 */ cmplwi r0, 0 /* 8001881C 0001577C 40 82 00 08 */ bne lbl_80018824 /* 80018820 00015780 38 60 00 01 */ li r3, 1 lbl_80018824: /* 80018824 00015784 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018828 00015788 41 82 00 0C */ beq lbl_80018834 /* 8001882C 0001578C 3B A0 00 00 */ li r29, 0 /* 80018830 00015790 48 00 00 30 */ b lbl_80018860 lbl_80018834: /* 80018834 00015794 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha /* 80018838 00015798 38 60 00 4C */ li r3, 0x4c /* 8001883C 0001579C 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l /* 80018840 000157A0 38 A0 00 00 */ li r5, 0 /* 80018844 000157A4 38 84 00 1D */ addi r4, r4, 0x1d /* 80018848 000157A8 48 2F D0 25 */ bl __nw__FUlPCcPCc /* 8001884C 000157AC 7C 7D 1B 79 */ or. r29, r3, r3 /* 80018850 000157B0 41 82 00 10 */ beq lbl_80018860 /* 80018854 000157B4 38 81 00 E4 */ addi r4, r1, 0xe4 /* 80018858 000157B8 48 00 05 35 */ bl __ct__10CModelDataFRC10CModelData /* 8001885C 000157BC 7C 7D 1B 78 */ mr r29, r3 lbl_80018860: /* 80018860 000157C0 80 7E 07 F0 */ lwz r3, 0x7f0(r30) /* 80018864 000157C4 38 80 00 01 */ li r4, 1 /* 80018868 000157C8 48 0F E1 E5 */ bl __dt__10CModelDataFv /* 8001886C 000157CC 93 BE 07 F0 */ stw r29, 0x7f0(r30) /* 80018870 000157D0 38 61 00 E4 */ addi r3, r1, 0xe4 /* 80018874 000157D4 38 80 FF FF */ li r4, -1 /* 80018878 000157D8 48 0F E1 D5 */ bl __dt__10CModelDataFv lbl_8001887C: /* 8001887C 000157DC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80018880 000157E0 80 63 00 00 */ lwz r3, 0(r3) /* 80018884 000157E4 88 03 00 00 */ lbz r0, 0(r3) /* 80018888 000157E8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8001888C 000157EC 40 82 01 08 */ bne lbl_80018994 /* 80018890 000157F0 C3 FE 09 F4 */ lfs f31, 0x9f4(r30) /* 80018894 000157F4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80018898 000157F8 FC 00 F8 00 */ fcmpu cr0, f0, f31 /* 8001889C 000157FC 40 82 00 54 */ bne lbl_800188F0 /* 800188A0 00015800 38 60 00 01 */ li r3, 1 /* 800188A4 00015804 48 2D 12 11 */ bl KillAll__11CSfxManagerFQ211CSfxManager12ESfxChannels /* 800188A8 00015808 48 34 CF FD */ bl StopAll__19CStreamAudioManagerFv /* 800188AC 0001580C 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 800188B0 00015810 2C 00 00 00 */ cmpwi r0, 0 /* 800188B4 00015814 40 82 00 3C */ bne lbl_800188F0 /* 800188B8 00015818 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 800188BC 0001581C 38 61 00 2C */ addi r3, r1, 0x2c /* 800188C0 00015820 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 800188C4 00015824 38 80 05 EC */ li r4, 0x5ec /* 800188C8 00015828 38 A0 00 7F */ li r5, 0x7f /* 800188CC 0001582C 38 C0 00 40 */ li r6, 0x40 /* 800188D0 00015830 38 E0 00 00 */ li r7, 0 /* 800188D4 00015834 39 20 00 00 */ li r9, 0 /* 800188D8 00015838 48 2D 14 9D */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800188DC 0001583C 80 01 00 2C */ lwz r0, 0x2c(r1) /* 800188E0 00015840 7F C3 F3 78 */ mr r3, r30 /* 800188E4 00015844 38 81 00 30 */ addi r4, r1, 0x30 /* 800188E8 00015848 90 01 00 30 */ stw r0, 0x30(r1) /* 800188EC 0001584C 4B FF 88 A1 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_800188F0: /* 800188F0 00015850 C0 3E 09 F4 */ lfs f1, 0x9f4(r30) /* 800188F4 00015854 C0 01 00 08 */ lfs f0, 8(r1) /* 800188F8 00015858 EC 01 00 2A */ fadds f0, f1, f0 /* 800188FC 0001585C D0 1E 09 F4 */ stfs f0, 0x9f4(r30) /* 80018900 00015860 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80018904 00015864 2C 00 00 00 */ cmpwi r0, 0 /* 80018908 00015868 41 82 00 8C */ beq lbl_80018994 /* 8001890C 0001586C C0 3E 09 F4 */ lfs f1, 0x9f4(r30) /* 80018910 00015870 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80018914 00015874 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80018918 00015878 4C 41 13 82 */ cror 2, 1, 2 /* 8001891C 0001587C 40 82 00 24 */ bne lbl_80018940 /* 80018920 00015880 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80018924 00015884 40 80 00 1C */ bge lbl_80018940 /* 80018928 00015888 80 9E 04 90 */ lwz r4, 0x490(r30) /* 8001892C 0001588C 7F E5 FB 78 */ mr r5, r31 /* 80018930 00015890 38 61 00 0C */ addi r3, r1, 0xc /* 80018934 00015894 48 02 1F D1 */ bl DropPowerBomb__10CPlayerGunCFR13CStateManager /* 80018938 00015898 A0 01 00 0C */ lhz r0, 0xc(r1) /* 8001893C 0001589C B0 1E 0A 00 */ sth r0, 0xa00(r30) lbl_80018940: /* 80018940 000158A0 C0 3E 09 F4 */ lfs f1, 0x9f4(r30) /* 80018944 000158A4 C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) /* 80018948 000158A8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001894C 000158AC 4C 41 13 82 */ cror 2, 1, 2 /* 80018950 000158B0 40 82 00 44 */ bne lbl_80018994 /* 80018954 000158B4 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80018958 000158B8 40 80 00 3C */ bge lbl_80018994 /* 8001895C 000158BC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 80018960 000158C0 38 61 00 24 */ addi r3, r1, 0x24 /* 80018964 000158C4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) /* 80018968 000158C8 38 80 05 EC */ li r4, 0x5ec /* 8001896C 000158CC 38 A0 00 7F */ li r5, 0x7f /* 80018970 000158D0 38 C0 00 40 */ li r6, 0x40 /* 80018974 000158D4 38 E0 00 00 */ li r7, 0 /* 80018978 000158D8 39 20 00 00 */ li r9, 0 /* 8001897C 000158DC 48 2D 13 F9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80018980 000158E0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80018984 000158E4 7F C3 F3 78 */ mr r3, r30 /* 80018988 000158E8 38 81 00 28 */ addi r4, r1, 0x28 /* 8001898C 000158EC 90 01 00 28 */ stw r0, 0x28(r1) /* 80018990 000158F0 4B FF 87 FD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_80018994: /* 80018994 000158F4 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80018998 000158F8 2C 00 00 01 */ cmpwi r0, 1 /* 8001899C 000158FC 41 82 00 68 */ beq lbl_80018A04 /* 800189A0 00015900 40 80 00 10 */ bge lbl_800189B0 /* 800189A4 00015904 2C 00 00 00 */ cmpwi r0, 0 /* 800189A8 00015908 40 80 00 10 */ bge lbl_800189B8 /* 800189AC 0001590C 48 00 00 58 */ b lbl_80018A04 lbl_800189B0: /* 800189B0 00015910 2C 00 00 04 */ cmpwi r0, 4 /* 800189B4 00015914 40 80 00 50 */ bge lbl_80018A04 lbl_800189B8: /* 800189B8 00015918 80 82 80 F4 */ lwz r4, lbl_805A9E14@sda21(r2) /* 800189BC 0001591C 38 61 00 34 */ addi r3, r1, 0x34 /* 800189C0 00015920 4B FE C2 F9 */ bl string_l__4rstlFPCc /* 800189C4 00015924 80 9E 00 64 */ lwz r4, 0x64(r30) /* 800189C8 00015928 38 61 00 84 */ addi r3, r1, 0x84 /* 800189CC 0001592C 38 A1 00 34 */ addi r5, r1, 0x34 /* 800189D0 00015930 48 0F CF D1 */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800189D4 00015934 38 61 00 B4 */ addi r3, r1, 0xb4 /* 800189D8 00015938 38 81 00 84 */ addi r4, r1, 0x84 /* 800189DC 0001593C 48 2F A1 99 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800189E0 00015940 38 61 00 34 */ addi r3, r1, 0x34 /* 800189E4 00015944 48 32 50 FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800189E8 00015948 38 61 00 54 */ addi r3, r1, 0x54 /* 800189EC 0001594C 38 9E 00 34 */ addi r4, r30, 0x34 /* 800189F0 00015950 38 A1 00 B4 */ addi r5, r1, 0xb4 /* 800189F4 00015954 48 2F 9F 5D */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800189F8 00015958 38 7E 07 F4 */ addi r3, r30, 0x7f4 /* 800189FC 0001595C 38 81 00 54 */ addi r4, r1, 0x54 /* 80018A00 00015960 48 2F A1 41 */ bl __as__12CTransform4fFRC12CTransform4f lbl_80018A04: /* 80018A04 00015964 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80018A08 00015968 2C 00 00 00 */ cmpwi r0, 0 /* 80018A0C 0001596C 40 82 00 28 */ bne lbl_80018A34 /* 80018A10 00015970 C0 21 00 08 */ lfs f1, 8(r1) /* 80018A14 00015974 7F C3 F3 78 */ mr r3, r30 /* 80018A18 00015978 48 16 33 3D */ bl UpdateAimTargetTimer__7CPlayerFf /* 80018A1C 0001597C 7F C3 F3 78 */ mr r3, r30 /* 80018A20 00015980 7F E4 FB 78 */ mr r4, r31 /* 80018A24 00015984 48 16 30 7D */ bl UpdateAimTarget__7CPlayerFR13CStateManager /* 80018A28 00015988 C0 21 00 08 */ lfs f1, 8(r1) /* 80018A2C 0001598C 7F C3 F3 78 */ mr r3, r30 /* 80018A30 00015990 48 16 57 25 */ bl UpdateOrbitModeTimer__7CPlayerFf lbl_80018A34: /* 80018A34 00015994 C0 21 00 08 */ lfs f1, 8(r1) /* 80018A38 00015998 7F C3 F3 78 */ mr r3, r30 /* 80018A3C 0001599C 48 16 56 FD */ bl UpdateOrbitPreventionTimer__7CPlayerFf /* 80018A40 000159A0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80018A44 000159A4 2C 00 00 01 */ cmpwi r0, 1 /* 80018A48 000159A8 40 82 00 18 */ bne lbl_80018A60 /* 80018A4C 000159AC 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80018A50 000159B0 7F E4 FB 78 */ mr r4, r31 /* 80018A54 000159B4 C0 21 00 08 */ lfs f1, 8(r1) /* 80018A58 000159B8 48 0D CF 1D */ bl Update__10CMorphBallFfR13CStateManager /* 80018A5C 000159BC 48 00 00 0C */ b lbl_80018A68 lbl_80018A60: /* 80018A60 000159C0 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80018A64 000159C4 48 0D 5E 09 */ bl StopSounds__10CMorphBallFv lbl_80018A68: /* 80018A68 000159C8 80 1E 02 F8 */ lwz r0, 0x2f8(r30) /* 80018A6C 000159CC 2C 00 00 02 */ cmpwi r0, 2 /* 80018A70 000159D0 41 82 00 0C */ beq lbl_80018A7C /* 80018A74 000159D4 2C 00 00 03 */ cmpwi r0, 3 /* 80018A78 000159D8 40 82 00 14 */ bne lbl_80018A8C lbl_80018A7C: /* 80018A7C 000159DC 80 7E 07 68 */ lwz r3, 0x768(r30) /* 80018A80 000159E0 7F E4 FB 78 */ mr r4, r31 /* 80018A84 000159E4 C0 21 00 08 */ lfs f1, 8(r1) /* 80018A88 000159E8 48 0D BD E1 */ bl UpdateEffects__10CMorphBallFfR13CStateManager lbl_80018A8C: /* 80018A8C 000159EC 7F C3 F3 78 */ mr r3, r30 /* 80018A90 000159F0 4B FF BA BD */ bl UpdateGunAlpha__7CPlayerFRC13CStateManager /* 80018A94 000159F4 7F C3 F3 78 */ mr r3, r30 /* 80018A98 000159F8 7F E4 FB 78 */ mr r4, r31 /* 80018A9C 000159FC 48 00 06 2D */ bl UpdateDebugCamera__7CPlayerFR13CStateManager /* 80018AA0 00015A00 C0 21 00 08 */ lfs f1, 8(r1) /* 80018AA4 00015A04 7F C3 F3 78 */ mr r3, r30 /* 80018AA8 00015A08 7F E4 FB 78 */ mr r4, r31 /* 80018AAC 00015A0C 4B FF FA 31 */ bl UpdateVisorTransition__7CPlayerFfR13CStateManager /* 80018AB0 00015A10 80 DF 08 50 */ lwz r6, 0x850(r31) /* 80018AB4 00015A14 7F E3 FB 78 */ mr r3, r31 /* 80018AB8 00015A18 7F C4 F3 78 */ mr r4, r30 /* 80018ABC 00015A1C 38 A1 00 20 */ addi r5, r1, 0x20 /* 80018AC0 00015A20 80 06 00 68 */ lwz r0, 0x68(r6) /* 80018AC4 00015A24 90 01 00 1C */ stw r0, 0x1c(r1) /* 80018AC8 00015A28 90 01 00 20 */ stw r0, 0x20(r1) /* 80018ACC 00015A2C 48 02 C7 AD */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId /* 80018AD0 00015A30 C0 21 00 08 */ lfs f1, 8(r1) /* 80018AD4 00015A34 7F C3 F3 78 */ mr r3, r30 /* 80018AD8 00015A38 4B FF F9 61 */ bl UpdatePlayerSounds__7CPlayerFf /* 80018ADC 00015A3C A0 7E 02 6C */ lhz r3, 0x26c(r30) /* 80018AE0 00015A40 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80018AE4 00015A44 7C 03 00 40 */ cmplw r3, r0 /* 80018AE8 00015A48 41 82 00 14 */ beq lbl_80018AFC /* 80018AEC 00015A4C C0 3E 02 70 */ lfs f1, 0x270(r30) /* 80018AF0 00015A50 C0 01 00 08 */ lfs f0, 8(r1) /* 80018AF4 00015A54 EC 01 00 2A */ fadds f0, f1, f0 /* 80018AF8 00015A58 D0 1E 02 70 */ stfs f0, 0x270(r30) lbl_80018AFC: /* 80018AFC 00015A5C C0 5E 07 40 */ lfs f2, 0x740(r30) /* 80018B00 00015A60 C0 21 00 08 */ lfs f1, 8(r1) /* 80018B04 00015A64 C0 0D 80 BC */ lfs f0, lbl_805A6C7C@sda21(r13) /* 80018B08 00015A68 EC 22 08 28 */ fsubs f1, f2, f1 /* 80018B0C 00015A6C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80018B10 00015A70 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80018B14 00015A74 40 80 00 0C */ bge lbl_80018B20 /* 80018B18 00015A78 38 61 00 18 */ addi r3, r1, 0x18 /* 80018B1C 00015A7C 48 00 00 08 */ b lbl_80018B24 lbl_80018B20: /* 80018B20 00015A80 38 6D 80 BC */ addi r3, r13, lbl_805A6C7C@sda21 lbl_80018B24: /* 80018B24 00015A84 C0 23 00 00 */ lfs f1, 0(r3) /* 80018B28 00015A88 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80018B2C 00015A8C D0 3E 07 40 */ stfs f1, 0x740(r30) /* 80018B30 00015A90 C0 3E 07 40 */ lfs f1, 0x740(r30) /* 80018B34 00015A94 C0 7E 07 44 */ lfs f3, 0x744(r30) /* 80018B38 00015A98 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80018B3C 00015A9C C0 9E 07 48 */ lfs f4, 0x748(r30) /* 80018B40 00015AA0 40 81 00 38 */ ble lbl_80018B78 /* 80018B44 00015AA4 C0 41 00 08 */ lfs f2, 8(r1) /* 80018B48 00015AA8 C0 3E 07 4C */ lfs f1, 0x74c(r30) /* 80018B4C 00015AAC C0 0D 80 C0 */ lfs f0, lbl_805A6C80@sda21(r13) /* 80018B50 00015AB0 EC 22 08 FC */ fnmsubs f1, f2, f3, f1 /* 80018B54 00015AB4 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80018B58 00015AB8 D0 21 00 14 */ stfs f1, 0x14(r1) /* 80018B5C 00015ABC 40 80 00 0C */ bge lbl_80018B68 /* 80018B60 00015AC0 38 61 00 14 */ addi r3, r1, 0x14 /* 80018B64 00015AC4 48 00 00 08 */ b lbl_80018B6C lbl_80018B68: /* 80018B68 00015AC8 38 6D 80 C0 */ addi r3, r13, lbl_805A6C80@sda21 lbl_80018B6C: /* 80018B6C 00015ACC C0 03 00 00 */ lfs f0, 0(r3) /* 80018B70 00015AD0 D0 1E 07 4C */ stfs f0, 0x74c(r30) /* 80018B74 00015AD4 48 00 00 34 */ b lbl_80018BA8 lbl_80018B78: /* 80018B78 00015AD8 C0 41 00 08 */ lfs f2, 8(r1) /* 80018B7C 00015ADC C0 3E 07 4C */ lfs f1, 0x74c(r30) /* 80018B80 00015AE0 C0 0D 80 C4 */ lfs f0, lbl_805A6C84@sda21(r13) /* 80018B84 00015AE4 EC 22 09 3A */ fmadds f1, f2, f4, f1 /* 80018B88 00015AE8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80018B8C 00015AEC D0 21 00 10 */ stfs f1, 0x10(r1) /* 80018B90 00015AF0 40 80 00 0C */ bge lbl_80018B9C /* 80018B94 00015AF4 38 61 00 10 */ addi r3, r1, 0x10 /* 80018B98 00015AF8 48 00 00 08 */ b lbl_80018BA0 lbl_80018B9C: /* 80018B9C 00015AFC 38 6D 80 C4 */ addi r3, r13, lbl_805A6C84@sda21 lbl_80018BA0: /* 80018BA0 00015B00 C0 03 00 00 */ lfs f0, 0(r3) /* 80018BA4 00015B04 D0 1E 07 4C */ stfs f0, 0x74c(r30) lbl_80018BA8: /* 80018BA8 00015B08 C0 21 00 08 */ lfs f1, 8(r1) /* 80018BAC 00015B0C 7F E4 FB 78 */ mr r4, r31 /* 80018BB0 00015B10 38 7E 02 74 */ addi r3, r30, 0x274 /* 80018BB4 00015B14 48 19 BA 19 */ bl ProcessEnergyDrain__18CPlayerEnergyDrainFRC13CStateManagerf /* 80018BB8 00015B18 80 1E 04 A4 */ lwz r0, 0x4a4(r30) /* 80018BBC 00015B1C 2C 00 00 14 */ cmpwi r0, 0x14 /* 80018BC0 00015B20 40 80 00 28 */ bge lbl_80018BE8 /* 80018BC4 00015B24 54 00 10 3A */ slwi r0, r0, 2 /* 80018BC8 00015B28 7C 7E 02 14 */ add r3, r30, r0 /* 80018BCC 00015B2C 34 63 04 A8 */ addic. r3, r3, 0x4a8 /* 80018BD0 00015B30 41 82 00 0C */ beq lbl_80018BDC /* 80018BD4 00015B34 C0 1E 04 F8 */ lfs f0, 0x4f8(r30) /* 80018BD8 00015B38 D0 03 00 00 */ stfs f0, 0(r3) lbl_80018BDC: /* 80018BDC 00015B3C 80 7E 04 A4 */ lwz r3, 0x4a4(r30) /* 80018BE0 00015B40 38 03 00 01 */ addi r0, r3, 1 /* 80018BE4 00015B44 90 1E 04 A4 */ stw r0, 0x4a4(r30) lbl_80018BE8: /* 80018BE8 00015B48 80 7E 04 A4 */ lwz r3, 0x4a4(r30) /* 80018BEC 00015B4C 38 FE 04 A8 */ addi r7, r30, 0x4a8 /* 80018BF0 00015B50 34 A3 FF FF */ addic. r5, r3, -1 /* 80018BF4 00015B54 54 A0 10 3A */ slwi r0, r5, 2 /* 80018BF8 00015B58 7C A3 2B 78 */ mr r3, r5 /* 80018BFC 00015B5C 7C C7 02 14 */ add r6, r7, r0 /* 80018C00 00015B60 40 81 00 C4 */ ble lbl_80018CC4 /* 80018C04 00015B64 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f /* 80018C08 00015B68 7C 09 03 A6 */ mtctr r0 /* 80018C0C 00015B6C 41 82 00 98 */ beq lbl_80018CA4 lbl_80018C10: /* 80018C10 00015B70 38 85 FF FF */ addi r4, r5, -1 /* 80018C14 00015B74 54 80 10 3A */ slwi r0, r4, 2 /* 80018C18 00015B78 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C1C 00015B7C 38 85 FF FE */ addi r4, r5, -2 /* 80018C20 00015B80 54 80 10 3A */ slwi r0, r4, 2 /* 80018C24 00015B84 D0 06 00 00 */ stfs f0, 0(r6) /* 80018C28 00015B88 38 85 FF FD */ addi r4, r5, -3 /* 80018C2C 00015B8C 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C30 00015B90 54 80 10 3A */ slwi r0, r4, 2 /* 80018C34 00015B94 38 85 FF FC */ addi r4, r5, -4 /* 80018C38 00015B98 D0 06 FF FC */ stfs f0, -4(r6) /* 80018C3C 00015B9C 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C40 00015BA0 54 80 10 3A */ slwi r0, r4, 2 /* 80018C44 00015BA4 38 85 FF FB */ addi r4, r5, -5 /* 80018C48 00015BA8 D0 06 FF F8 */ stfs f0, -8(r6) /* 80018C4C 00015BAC 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C50 00015BB0 54 80 10 3A */ slwi r0, r4, 2 /* 80018C54 00015BB4 38 85 FF FA */ addi r4, r5, -6 /* 80018C58 00015BB8 D0 06 FF F4 */ stfs f0, -0xc(r6) /* 80018C5C 00015BBC 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C60 00015BC0 54 80 10 3A */ slwi r0, r4, 2 /* 80018C64 00015BC4 38 85 FF F9 */ addi r4, r5, -7 /* 80018C68 00015BC8 D0 06 FF F0 */ stfs f0, -0x10(r6) /* 80018C6C 00015BCC 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C70 00015BD0 54 80 10 3A */ slwi r0, r4, 2 /* 80018C74 00015BD4 38 85 FF F8 */ addi r4, r5, -8 /* 80018C78 00015BD8 38 A5 FF F8 */ addi r5, r5, -8 /* 80018C7C 00015BDC D0 06 FF EC */ stfs f0, -0x14(r6) /* 80018C80 00015BE0 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C84 00015BE4 54 80 10 3A */ slwi r0, r4, 2 /* 80018C88 00015BE8 D0 06 FF E8 */ stfs f0, -0x18(r6) /* 80018C8C 00015BEC 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018C90 00015BF0 D0 06 FF E4 */ stfs f0, -0x1c(r6) /* 80018C94 00015BF4 38 C6 FF E0 */ addi r6, r6, -32 /* 80018C98 00015BF8 42 00 FF 78 */ bdnz lbl_80018C10 /* 80018C9C 00015BFC 70 63 00 07 */ andi. r3, r3, 7 /* 80018CA0 00015C00 41 82 00 24 */ beq lbl_80018CC4 lbl_80018CA4: /* 80018CA4 00015C04 7C 69 03 A6 */ mtctr r3 lbl_80018CA8: /* 80018CA8 00015C08 38 85 FF FF */ addi r4, r5, -1 /* 80018CAC 00015C0C 38 A5 FF FF */ addi r5, r5, -1 /* 80018CB0 00015C10 54 80 10 3A */ slwi r0, r4, 2 /* 80018CB4 00015C14 7C 07 04 2E */ lfsx f0, r7, r0 /* 80018CB8 00015C18 D0 06 00 00 */ stfs f0, 0(r6) /* 80018CBC 00015C1C 38 C6 FF FC */ addi r6, r6, -4 /* 80018CC0 00015C20 42 00 FF E8 */ bdnz lbl_80018CA8 lbl_80018CC4: /* 80018CC4 00015C24 C0 1E 04 F8 */ lfs f0, 0x4f8(r30) /* 80018CC8 00015C28 7F E4 FB 78 */ mr r4, r31 /* 80018CCC 00015C2C 38 A1 00 08 */ addi r5, r1, 8 /* 80018CD0 00015C30 D0 07 00 00 */ stfs f0, 0(r7) /* 80018CD4 00015C34 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 80018CD8 00015C38 80 63 00 00 */ lwz r3, 0(r3) /* 80018CDC 00015C3C 48 07 88 D1 */ bl UpdateStaticInterference__12CPlayerStateFR13CStateManagerRCf /* 80018CE0 00015C40 7F C3 F3 78 */ mr r3, r30 /* 80018CE4 00015C44 7F E4 FB 78 */ mr r4, r31 /* 80018CE8 00015C48 4B FF F9 FD */ bl ShouldSampleFailsafe__7CPlayerCFv /* 80018CEC 00015C4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018CF0 00015C50 40 82 00 0C */ bne lbl_80018CFC /* 80018CF4 00015C54 7F C3 F3 78 */ mr r3, r30 /* 80018CF8 00015C58 48 10 26 81 */ bl Stop__13CPhysicsActorFv lbl_80018CFC: /* 80018CFC 00015C5C 7F C3 F3 78 */ mr r3, r30 /* 80018D00 00015C60 7F E4 FB 78 */ mr r4, r31 /* 80018D04 00015C64 4B FF 7D AD */ bl IsEnergyLow__7CPlayerCFRC13CStateManager /* 80018D08 00015C68 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018D0C 00015C6C 41 82 00 14 */ beq lbl_80018D20 /* 80018D10 00015C70 C0 3E 0A 30 */ lfs f1, 0xa30(r30) /* 80018D14 00015C74 C0 01 00 08 */ lfs f0, 8(r1) /* 80018D18 00015C78 EC 01 00 28 */ fsubs f0, f1, f0 /* 80018D1C 00015C7C 48 00 00 08 */ b lbl_80018D24 lbl_80018D20: /* 80018D20 00015C80 C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) lbl_80018D24: /* 80018D24 00015C84 D0 1E 0A 30 */ stfs f0, 0xa30(r30) /* 80018D28 00015C88 80 7F 08 70 */ lwz r3, 0x870(r31) /* 80018D2C 00015C8C 4B FF 1B D5 */ bl IsInCinematicCamera__14CCameraManagerCFv /* 80018D30 00015C90 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80018D34 00015C94 40 82 00 34 */ bne lbl_80018D68 /* 80018D38 00015C98 C0 3E 0A 30 */ lfs f1, 0xa30(r30) /* 80018D3C 00015C9C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80018D40 00015CA0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80018D44 00015CA4 4C 40 13 82 */ cror 2, 0, 2 /* 80018D48 00015CA8 40 82 00 20 */ bne lbl_80018D68 /* 80018D4C 00015CAC 7F C3 F3 78 */ mr r3, r30 /* 80018D50 00015CB0 38 80 06 37 */ li r4, 0x637 /* 80018D54 00015CB4 38 A0 00 7F */ li r5, 0x7f /* 80018D58 00015CB8 38 C0 00 07 */ li r6, 7 /* 80018D5C 00015CBC 4B FF 7F 05 */ bl StartSamusVoiceSfx__7CPlayerFUssi /* 80018D60 00015CC0 C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) /* 80018D64 00015CC4 D0 1E 0A 30 */ stfs f0, 0xa30(r30) lbl_80018D68: /* 80018D68 00015CC8 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 80018D6C 00015CCC 80 01 01 54 */ lwz r0, 0x154(r1) /* 80018D70 00015CD0 CB E1 01 40 */ lfd f31, 0x140(r1) /* 80018D74 00015CD4 83 E1 01 3C */ lwz r31, 0x13c(r1) /* 80018D78 00015CD8 83 C1 01 38 */ lwz r30, 0x138(r1) /* 80018D7C 00015CDC 83 A1 01 34 */ lwz r29, 0x134(r1) /* 80018D80 00015CE0 7C 08 03 A6 */ mtlr r0 /* 80018D84 00015CE4 38 21 01 50 */ addi r1, r1, 0x150 /* 80018D88 00015CE8 4E 80 00 20 */ blr .global __ct__10CModelDataFRC10CModelData __ct__10CModelDataFRC10CModelData: /* 80018D8C 00015CEC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80018D90 00015CF0 7C 08 02 A6 */ mflr r0 /* 80018D94 00015CF4 90 01 00 24 */ stw r0, 0x24(r1) /* 80018D98 00015CF8 38 00 00 00 */ li r0, 0 /* 80018D9C 00015CFC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80018DA0 00015D00 7C 9F 23 78 */ mr r31, r4 /* 80018DA4 00015D04 93 C1 00 18 */ stw r30, 0x18(r1) /* 80018DA8 00015D08 7C 7E 1B 78 */ mr r30, r3 /* 80018DAC 00015D0C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80018DB0 00015D10 93 81 00 10 */ stw r28, 0x10(r1) /* 80018DB4 00015D14 C0 04 00 00 */ lfs f0, 0(r4) /* 80018DB8 00015D18 D0 03 00 00 */ stfs f0, 0(r3) /* 80018DBC 00015D1C C0 04 00 04 */ lfs f0, 4(r4) /* 80018DC0 00015D20 D0 03 00 04 */ stfs f0, 4(r3) /* 80018DC4 00015D24 C0 04 00 08 */ lfs f0, 8(r4) /* 80018DC8 00015D28 D0 03 00 08 */ stfs f0, 8(r3) /* 80018DCC 00015D2C 88 64 00 0C */ lbz r3, 0xc(r4) /* 80018DD0 00015D30 98 7E 00 0C */ stb r3, 0xc(r30) /* 80018DD4 00015D34 80 64 00 10 */ lwz r3, 0x10(r4) /* 80018DD8 00015D38 90 7E 00 10 */ stw r3, 0x10(r30) /* 80018DDC 00015D3C 98 04 00 0C */ stb r0, 0xc(r4) /* 80018DE0 00015D40 88 04 00 14 */ lbz r0, 0x14(r4) /* 80018DE4 00015D44 98 1E 00 14 */ stb r0, 0x14(r30) /* 80018DE8 00015D48 80 04 00 18 */ lwz r0, 0x18(r4) /* 80018DEC 00015D4C 90 1E 00 18 */ stw r0, 0x18(r30) /* 80018DF0 00015D50 88 04 00 28 */ lbz r0, 0x28(r4) /* 80018DF4 00015D54 98 1E 00 28 */ stb r0, 0x28(r30) /* 80018DF8 00015D58 88 04 00 28 */ lbz r0, 0x28(r4) /* 80018DFC 00015D5C 28 00 00 00 */ cmplwi r0, 0 /* 80018E00 00015D60 41 82 00 2C */ beq lbl_80018E2C /* 80018E04 00015D64 37 BE 00 1C */ addic. r29, r30, 0x1c /* 80018E08 00015D68 3B 9F 00 1C */ addi r28, r31, 0x1c /* 80018E0C 00015D6C 41 82 00 20 */ beq lbl_80018E2C /* 80018E10 00015D70 7F A3 EB 78 */ mr r3, r29 /* 80018E14 00015D74 7F 84 E3 78 */ mr r4, r28 /* 80018E18 00015D78 48 32 80 91 */ bl __ct__6CTokenFRC6CToken /* 80018E1C 00015D7C 80 1C 00 08 */ lwz r0, 8(r28) /* 80018E20 00015D80 7F A3 EB 78 */ mr r3, r29 /* 80018E24 00015D84 90 1D 00 08 */ stw r0, 8(r29) /* 80018E28 00015D88 48 32 7F 5D */ bl Lock__6CTokenFv lbl_80018E2C: /* 80018E2C 00015D8C 88 1F 00 38 */ lbz r0, 0x38(r31) /* 80018E30 00015D90 98 1E 00 38 */ stb r0, 0x38(r30) /* 80018E34 00015D94 88 1F 00 38 */ lbz r0, 0x38(r31) /* 80018E38 00015D98 28 00 00 00 */ cmplwi r0, 0 /* 80018E3C 00015D9C 41 82 00 2C */ beq lbl_80018E68 /* 80018E40 00015DA0 37 BE 00 2C */ addic. r29, r30, 0x2c /* 80018E44 00015DA4 3B 9F 00 2C */ addi r28, r31, 0x2c /* 80018E48 00015DA8 41 82 00 20 */ beq lbl_80018E68 /* 80018E4C 00015DAC 7F A3 EB 78 */ mr r3, r29 /* 80018E50 00015DB0 7F 84 E3 78 */ mr r4, r28 /* 80018E54 00015DB4 48 32 80 55 */ bl __ct__6CTokenFRC6CToken /* 80018E58 00015DB8 80 1C 00 08 */ lwz r0, 8(r28) /* 80018E5C 00015DBC 7F A3 EB 78 */ mr r3, r29 /* 80018E60 00015DC0 90 1D 00 08 */ stw r0, 8(r29) /* 80018E64 00015DC4 48 32 7F 21 */ bl Lock__6CTokenFv lbl_80018E68: /* 80018E68 00015DC8 88 1F 00 48 */ lbz r0, 0x48(r31) /* 80018E6C 00015DCC 98 1E 00 48 */ stb r0, 0x48(r30) /* 80018E70 00015DD0 88 1F 00 48 */ lbz r0, 0x48(r31) /* 80018E74 00015DD4 28 00 00 00 */ cmplwi r0, 0 /* 80018E78 00015DD8 41 82 00 2C */ beq lbl_80018EA4 /* 80018E7C 00015DDC 37 BE 00 3C */ addic. r29, r30, 0x3c /* 80018E80 00015DE0 3B 9F 00 3C */ addi r28, r31, 0x3c /* 80018E84 00015DE4 41 82 00 20 */ beq lbl_80018EA4 /* 80018E88 00015DE8 7F A3 EB 78 */ mr r3, r29 /* 80018E8C 00015DEC 7F 84 E3 78 */ mr r4, r28 /* 80018E90 00015DF0 48 32 80 19 */ bl __ct__6CTokenFRC6CToken /* 80018E94 00015DF4 80 1C 00 08 */ lwz r0, 8(r28) /* 80018E98 00015DF8 7F A3 EB 78 */ mr r3, r29 /* 80018E9C 00015DFC 90 1D 00 08 */ stw r0, 8(r29) /* 80018EA0 00015E00 48 32 7E E5 */ bl Lock__6CTokenFv lbl_80018EA4: /* 80018EA4 00015E04 80 01 00 24 */ lwz r0, 0x24(r1) /* 80018EA8 00015E08 7F C3 F3 78 */ mr r3, r30 /* 80018EAC 00015E0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80018EB0 00015E10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80018EB4 00015E14 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80018EB8 00015E18 83 81 00 10 */ lwz r28, 0x10(r1) /* 80018EBC 00015E1C 7C 08 03 A6 */ mtlr r0 /* 80018EC0 00015E20 38 21 00 20 */ addi r1, r1, 0x20 /* 80018EC4 00015E24 4E 80 00 20 */ blr .global ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager: /* 80018EC8 00015E28 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80018ECC 00015E2C 7C 08 02 A6 */ mflr r0 /* 80018ED0 00015E30 90 01 00 54 */ stw r0, 0x54(r1) /* 80018ED4 00015E34 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80018ED8 00015E38 7C BF 2B 78 */ mr r31, r5 /* 80018EDC 00015E3C 93 C1 00 48 */ stw r30, 0x48(r1) /* 80018EE0 00015E40 7C 9E 23 78 */ mr r30, r4 /* 80018EE4 00015E44 7F E4 FB 78 */ mr r4, r31 /* 80018EE8 00015E48 93 A1 00 44 */ stw r29, 0x44(r1) /* 80018EEC 00015E4C 7C 7D 1B 78 */ mr r29, r3 /* 80018EF0 00015E50 48 00 12 29 */ bl ResetGun__7CPlayerFR13CStateManager /* 80018EF4 00015E54 C0 5E 00 24 */ lfs f2, 0x24(r30) /* 80018EF8 00015E58 7F C4 F3 78 */ mr r4, r30 /* 80018EFC 00015E5C C0 3E 00 14 */ lfs f1, 0x14(r30) /* 80018F00 00015E60 38 61 00 08 */ addi r3, r1, 8 /* 80018F04 00015E64 C0 1E 00 04 */ lfs f0, 4(r30) /* 80018F08 00015E68 D0 1D 05 30 */ stfs f0, 0x530(r29) /* 80018F0C 00015E6C D0 3D 05 34 */ stfs f1, 0x534(r29) /* 80018F10 00015E70 D0 5D 05 38 */ stfs f2, 0x538(r29) /* 80018F14 00015E74 48 2F 9C 61 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80018F18 00015E78 80 7D 04 90 */ lwz r3, 0x490(r29) /* 80018F1C 00015E7C 38 81 00 08 */ addi r4, r1, 8 /* 80018F20 00015E80 38 63 03 E8 */ addi r3, r3, 0x3e8 /* 80018F24 00015E84 48 2F 9C 1D */ bl __as__12CTransform4fFRC12CTransform4f /* 80018F28 00015E88 C0 22 82 48 */ lfs f1, lbl_805A9F68@sda21(r2) /* 80018F2C 00015E8C 7F A3 EB 78 */ mr r3, r29 /* 80018F30 00015E90 7F E4 FB 78 */ mr r4, r31 /* 80018F34 00015E94 48 00 00 21 */ bl UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager /* 80018F38 00015E98 80 01 00 54 */ lwz r0, 0x54(r1) /* 80018F3C 00015E9C 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 80018F40 00015EA0 83 C1 00 48 */ lwz r30, 0x48(r1) /* 80018F44 00015EA4 83 A1 00 44 */ lwz r29, 0x44(r1) /* 80018F48 00015EA8 7C 08 03 A6 */ mtlr r0 /* 80018F4C 00015EAC 38 21 00 50 */ addi r1, r1, 0x50 /* 80018F50 00015EB0 4E 80 00 20 */ blr .global UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager: /* 80018F54 00015EB4 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 80018F58 00015EB8 7C 08 02 A6 */ mflr r0 /* 80018F5C 00015EBC 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80018F60 00015EC0 DB E1 00 A0 */ stfd f31, 0xa0(r1) /* 80018F64 00015EC4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 /* 80018F68 00015EC8 DB C1 00 90 */ stfd f30, 0x90(r1) /* 80018F6C 00015ECC F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 /* 80018F70 00015ED0 DB A1 00 80 */ stfd f29, 0x80(r1) /* 80018F74 00015ED4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 /* 80018F78 00015ED8 DB 81 00 70 */ stfd f28, 0x70(r1) /* 80018F7C 00015EDC F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 /* 80018F80 00015EE0 93 E1 00 6C */ stw r31, 0x6c(r1) /* 80018F84 00015EE4 93 C1 00 68 */ stw r30, 0x68(r1) /* 80018F88 00015EE8 3C A0 80 5A */ lis r5, sZeroVector__9CVector3f@ha /* 80018F8C 00015EEC C4 45 66 A0 */ lfsu f2, sZeroVector__9CVector3f@l(r5) /* 80018F90 00015EF0 FF 80 08 90 */ fmr f28, f1 /* 80018F94 00015EF4 7C 7E 1B 78 */ mr r30, r3 /* 80018F98 00015EF8 C0 25 00 04 */ lfs f1, 4(r5) /* 80018F9C 00015EFC 7C 9F 23 78 */ mr r31, r4 /* 80018FA0 00015F00 C0 05 00 08 */ lfs f0, 8(r5) /* 80018FA4 00015F04 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80018FA8 00015F08 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80018FAC 00015F0C D0 01 00 28 */ stfs f0, 0x28(r1) /* 80018FB0 00015F10 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 80018FB4 00015F14 2C 00 00 01 */ cmpwi r0, 1 /* 80018FB8 00015F18 40 82 00 14 */ bne lbl_80018FCC /* 80018FBC 00015F1C C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) /* 80018FC0 00015F20 C3 A2 82 4C */ lfs f29, lbl_805A9F6C@sda21(r2) /* 80018FC4 00015F24 FF C0 F8 90 */ fmr f30, f31 /* 80018FC8 00015F28 48 00 00 68 */ b lbl_80019030 lbl_80018FCC: /* 80018FCC 00015F2C 80 7E 04 90 */ lwz r3, 0x490(r30) /* 80018FD0 00015F30 80 8D A1 34 */ lwz r4, gpTweakPlayerGun@sda21(r13) /* 80018FD4 00015F34 80 63 07 40 */ lwz r3, 0x740(r3) /* 80018FD8 00015F38 C3 E4 00 4C */ lfs f31, 0x4c(r4) /* 80018FDC 00015F3C 88 03 03 B2 */ lbz r0, 0x3b2(r3) /* 80018FE0 00015F40 C3 C4 00 50 */ lfs f30, 0x50(r4) /* 80018FE4 00015F44 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80018FE8 00015F48 C3 A4 00 54 */ lfs f29, 0x54(r4) /* 80018FEC 00015F4C 41 82 00 08 */ beq lbl_80018FF4 /* 80018FF0 00015F50 48 00 00 08 */ b lbl_80018FF8 lbl_80018FF4: /* 80018FF4 00015F54 38 A4 00 64 */ addi r5, r4, 0x64 lbl_80018FF8: /* 80018FF8 00015F58 C0 05 00 00 */ lfs f0, 0(r5) /* 80018FFC 00015F5C 7F C3 F3 78 */ mr r3, r30 /* 80019000 00015F60 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80019004 00015F64 C0 05 00 04 */ lfs f0, 4(r5) /* 80019008 00015F68 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8001900C 00015F6C C0 05 00 08 */ lfs f0, 8(r5) /* 80019010 00015F70 D0 01 00 28 */ stfs f0, 0x28(r1) /* 80019014 00015F74 48 26 BD CD */ bl GetEyeHeight__7CPlayerCFv /* 80019018 00015F78 EF BD 08 2A */ fadds f29, f29, f1 /* 8001901C 00015F7C 7F C3 F3 78 */ mr r3, r30 /* 80019020 00015F80 48 26 BD C1 */ bl GetEyeHeight__7CPlayerCFv /* 80019024 00015F84 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80019028 00015F88 EC 00 08 2A */ fadds f0, f0, f1 /* 8001902C 00015F8C D0 01 00 28 */ stfs f0, 0x28(r1) lbl_80019030: /* 80019030 00015F90 80 9E 07 6C */ lwz r4, 0x76c(r30) /* 80019034 00015F94 38 61 00 2C */ addi r3, r1, 0x2c /* 80019038 00015F98 48 0D 0C F1 */ bl GetGunBobTransformation__16CPlayerCameraBobCFv /* 8001903C 00015F9C C0 81 00 58 */ lfs f4, 0x58(r1) /* 80019040 00015FA0 7F C3 F3 78 */ mr r3, r30 /* 80019044 00015FA4 C0 01 00 48 */ lfs f0, 0x48(r1) /* 80019048 00015FA8 7F E5 FB 78 */ mr r5, r31 /* 8001904C 00015FAC C0 21 00 38 */ lfs f1, 0x38(r1) /* 80019050 00015FB0 EC 5D 20 2A */ fadds f2, f29, f4 /* 80019054 00015FB4 EC 7E 00 2A */ fadds f3, f30, f0 /* 80019058 00015FB8 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8001905C 00015FBC EC 1F 08 2A */ fadds f0, f31, f1 /* 80019060 00015FC0 38 81 00 14 */ addi r4, r1, 0x14 /* 80019064 00015FC4 D0 21 00 08 */ stfs f1, 8(r1) /* 80019068 00015FC8 D0 81 00 10 */ stfs f4, 0x10(r1) /* 8001906C 00015FCC D0 01 00 14 */ stfs f0, 0x14(r1) /* 80019070 00015FD0 D0 61 00 18 */ stfs f3, 0x18(r1) /* 80019074 00015FD4 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 80019078 00015FD8 48 00 00 7D */ bl UpdateGunTransform__7CPlayerFRC9CVector3fR13CStateManager /* 8001907C 00015FDC FC 20 E0 90 */ fmr f1, f28 /* 80019080 00015FE0 7F C3 F3 78 */ mr r3, r30 /* 80019084 00015FE4 7F E5 FB 78 */ mr r5, r31 /* 80019088 00015FE8 38 81 00 20 */ addi r4, r1, 0x20 /* 8001908C 00015FEC 48 16 03 01 */ bl UpdateGrappleArmTransform__7CPlayerFRC9CVector3fR13CStateManagerf /* 80019090 00015FF0 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 /* 80019094 00015FF4 CB E1 00 A0 */ lfd f31, 0xa0(r1) /* 80019098 00015FF8 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 /* 8001909C 00015FFC CB C1 00 90 */ lfd f30, 0x90(r1) /* 800190A0 00016000 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 /* 800190A4 00016004 CB A1 00 80 */ lfd f29, 0x80(r1) /* 800190A8 00016008 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 /* 800190AC 0001600C CB 81 00 70 */ lfd f28, 0x70(r1) /* 800190B0 00016010 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800190B4 00016014 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 800190B8 00016018 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800190BC 0001601C 7C 08 03 A6 */ mtlr r0 /* 800190C0 00016020 38 21 00 B0 */ addi r1, r1, 0xb0 /* 800190C4 00016024 4E 80 00 20 */ blr .global UpdateDebugCamera__7CPlayerFR13CStateManager UpdateDebugCamera__7CPlayerFR13CStateManager: /* 800190C8 00016028 4E 80 00 20 */ blr .global GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager: /* 800190CC 0001602C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800190D0 00016030 7C 08 02 A6 */ mflr r0 /* 800190D4 00016034 90 01 00 14 */ stw r0, 0x14(r1) /* 800190D8 00016038 80 64 08 70 */ lwz r3, 0x870(r4) /* 800190DC 0001603C 80 63 00 7C */ lwz r3, 0x7c(r3) /* 800190E0 00016040 4B FF 50 05 */ bl GetGunFollowTransform__18CFirstPersonCameraCFv /* 800190E4 00016044 80 01 00 14 */ lwz r0, 0x14(r1) /* 800190E8 00016048 7C 08 03 A6 */ mtlr r0 /* 800190EC 0001604C 38 21 00 10 */ addi r1, r1, 0x10 /* 800190F0 00016050 4E 80 00 20 */ blr .global UpdateGunTransform__7CPlayerFRC9CVector3fR13CStateManager UpdateGunTransform__7CPlayerFRC9CVector3fR13CStateManager: /* 800190F4 00016054 94 21 FC 10 */ stwu r1, -0x3f0(r1) /* 800190F8 00016058 7C 08 02 A6 */ mflr r0 /* 800190FC 0001605C 90 01 03 F4 */ stw r0, 0x3f4(r1) /* 80019100 00016060 DB E1 03 E0 */ stfd f31, 0x3e0(r1) /* 80019104 00016064 F3 E1 03 E8 */ psq_st f31, 1000(r1), 0, qr0 /* 80019108 00016068 DB C1 03 D0 */ stfd f30, 0x3d0(r1) /* 8001910C 0001606C F3 C1 03 D8 */ psq_st f30, 984(r1), 0, qr0 /* 80019110 00016070 DB A1 03 C0 */ stfd f29, 0x3c0(r1) /* 80019114 00016074 F3 A1 03 C8 */ psq_st f29, 968(r1), 0, qr0 /* 80019118 00016078 93 E1 03 BC */ stw r31, 0x3bc(r1) /* 8001911C 0001607C 93 C1 03 B8 */ stw r30, 0x3b8(r1) /* 80019120 00016080 93 A1 03 B4 */ stw r29, 0x3b4(r1) /* 80019124 00016084 7C 7D 1B 78 */ mr r29, r3 /* 80019128 00016088 7C 9E 23 78 */ mr r30, r4 /* 8001912C 0001608C 7C BF 2B 78 */ mr r31, r5 /* 80019130 00016090 38 61 03 74 */ addi r3, r1, 0x374 /* 80019134 00016094 38 9D 00 34 */ addi r4, r29, 0x34 /* 80019138 00016098 48 2F 9A 3D */ bl __ct__12CTransform4fFRC12CTransform4f /* 8001913C 0001609C 7F A3 EB 78 */ mr r3, r29 /* 80019140 000160A0 48 26 BC A1 */ bl GetEyeHeight__7CPlayerCFv /* 80019144 000160A4 FF A0 08 90 */ fmr f29, f1 /* 80019148 000160A8 80 9F 08 70 */ lwz r4, 0x870(r31) /* 8001914C 000160AC 7F E5 FB 78 */ mr r5, r31 /* 80019150 000160B0 38 61 02 B4 */ addi r3, r1, 0x2b4 /* 80019154 000160B4 4B FF 18 15 */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager /* 80019158 000160B8 38 61 03 44 */ addi r3, r1, 0x344 /* 8001915C 000160BC 38 81 02 B4 */ addi r4, r1, 0x2b4 /* 80019160 000160C0 48 2F 9A 15 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80019164 000160C4 38 61 03 14 */ addi r3, r1, 0x314 /* 80019168 000160C8 38 81 03 44 */ addi r4, r1, 0x344 /* 8001916C 000160CC 48 2F 9A 09 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80019170 000160D0 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80019174 000160D4 2C 00 00 02 */ cmpwi r0, 2 /* 80019178 000160D8 40 82 00 58 */ bne lbl_800191D0 /* 8001917C 000160DC C0 1E 00 08 */ lfs f0, 8(r30) /* 80019180 000160E0 38 61 00 8C */ addi r3, r1, 0x8c /* 80019184 000160E4 C0 5E 00 04 */ lfs f2, 4(r30) /* 80019188 000160E8 38 81 03 44 */ addi r4, r1, 0x344 /* 8001918C 000160EC EC 60 E8 28 */ fsubs f3, f0, f29 /* 80019190 000160F0 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80019194 000160F4 C0 1E 00 00 */ lfs f0, 0(r30) /* 80019198 000160F8 38 A1 00 80 */ addi r5, r1, 0x80 /* 8001919C 000160FC EC 42 08 28 */ fsubs f2, f2, f1 /* 800191A0 00016100 EC 00 08 28 */ fsubs f0, f0, f1 /* 800191A4 00016104 D0 61 00 7C */ stfs f3, 0x7c(r1) /* 800191A8 00016108 D0 01 00 74 */ stfs f0, 0x74(r1) /* 800191AC 0001610C D0 41 00 78 */ stfs f2, 0x78(r1) /* 800191B0 00016110 D0 01 00 80 */ stfs f0, 0x80(r1) /* 800191B4 00016114 D0 41 00 84 */ stfs f2, 0x84(r1) /* 800191B8 00016118 D0 61 00 88 */ stfs f3, 0x88(r1) /* 800191BC 0001611C 48 2F 99 2D */ bl __ml__12CTransform4fCFRC9CVector3f /* 800191C0 00016120 C3 E1 00 8C */ lfs f31, 0x8c(r1) /* 800191C4 00016124 C3 C1 00 90 */ lfs f30, 0x90(r1) /* 800191C8 00016128 C3 A1 00 94 */ lfs f29, 0x94(r1) /* 800191CC 0001612C 48 00 00 6C */ b lbl_80019238 lbl_800191D0: /* 800191D0 00016130 C0 1E 00 08 */ lfs f0, 8(r30) /* 800191D4 00016134 38 61 00 5C */ addi r3, r1, 0x5c /* 800191D8 00016138 C0 5E 00 04 */ lfs f2, 4(r30) /* 800191DC 0001613C 38 81 03 44 */ addi r4, r1, 0x344 /* 800191E0 00016140 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 800191E4 00016144 EC 60 E8 28 */ fsubs f3, f0, f29 /* 800191E8 00016148 C0 1E 00 00 */ lfs f0, 0(r30) /* 800191EC 0001614C 38 A1 00 50 */ addi r5, r1, 0x50 /* 800191F0 00016150 EC 42 08 28 */ fsubs f2, f2, f1 /* 800191F4 00016154 EC 00 08 28 */ fsubs f0, f0, f1 /* 800191F8 00016158 D0 61 00 58 */ stfs f3, 0x58(r1) /* 800191FC 0001615C D0 41 00 54 */ stfs f2, 0x54(r1) /* 80019200 00016160 D0 01 00 50 */ stfs f0, 0x50(r1) /* 80019204 00016164 48 2F 98 7D */ bl Rotate__12CTransform4fCFRC9CVector3f /* 80019208 00016168 7F A4 EB 78 */ mr r4, r29 /* 8001920C 0001616C 38 61 00 68 */ addi r3, r1, 0x68 /* 80019210 00016170 48 26 BB 6D */ bl GetEyePosition__7CPlayerCFv /* 80019214 00016174 C0 21 00 68 */ lfs f1, 0x68(r1) /* 80019218 00016178 C0 01 00 5C */ lfs f0, 0x5c(r1) /* 8001921C 0001617C C0 61 00 6C */ lfs f3, 0x6c(r1) /* 80019220 00016180 C0 41 00 60 */ lfs f2, 0x60(r1) /* 80019224 00016184 EF E1 00 2A */ fadds f31, f1, f0 /* 80019228 00016188 C0 21 00 70 */ lfs f1, 0x70(r1) /* 8001922C 0001618C C0 01 00 64 */ lfs f0, 0x64(r1) /* 80019230 00016190 EF C3 10 2A */ fadds f30, f3, f2 /* 80019234 00016194 EF A1 00 2A */ fadds f29, f1, f0 lbl_80019238: /* 80019238 00016198 C0 41 03 44 */ lfs f2, 0x344(r1) /* 8001923C 0001619C 38 61 00 C8 */ addi r3, r1, 0xc8 /* 80019240 000161A0 C0 21 03 54 */ lfs f1, 0x354(r1) /* 80019244 000161A4 38 81 00 44 */ addi r4, r1, 0x44 /* 80019248 000161A8 C0 01 03 64 */ lfs f0, 0x364(r1) /* 8001924C 000161AC D3 E1 03 20 */ stfs f31, 0x320(r1) /* 80019250 000161B0 D3 C1 03 30 */ stfs f30, 0x330(r1) /* 80019254 000161B4 D3 A1 03 40 */ stfs f29, 0x340(r1) /* 80019258 000161B8 D0 41 00 44 */ stfs f2, 0x44(r1) /* 8001925C 000161BC D0 21 00 48 */ stfs f1, 0x48(r1) /* 80019260 000161C0 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 80019264 000161C4 48 2F AB 6D */ bl __ct__13CUnitVector3fFRC9CVector3f /* 80019268 000161C8 80 1D 04 98 */ lwz r0, 0x498(r29) /* 8001926C 000161CC 2C 00 00 02 */ cmpwi r0, 2 /* 80019270 000161D0 41 82 02 6C */ beq lbl_800194DC /* 80019274 000161D4 40 80 00 14 */ bge lbl_80019288 /* 80019278 000161D8 2C 00 00 00 */ cmpwi r0, 0 /* 8001927C 000161DC 41 82 00 D8 */ beq lbl_80019354 /* 80019280 000161E0 40 80 00 14 */ bge lbl_80019294 /* 80019284 000161E4 48 00 02 58 */ b lbl_800194DC lbl_80019288: /* 80019288 000161E8 2C 00 00 04 */ cmpwi r0, 4 /* 8001928C 000161EC 40 80 02 50 */ bge lbl_800194DC /* 80019290 000161F0 48 00 01 48 */ b lbl_800193D8 lbl_80019294: /* 80019294 000161F4 C0 5D 04 9C */ lfs f2, 0x49c(r29) /* 80019298 000161F8 C0 22 81 B4 */ lfs f1, lbl_805A9ED4@sda21(r2) /* 8001929C 000161FC C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 800192A0 00016200 EC 42 08 24 */ fdivs f2, f2, f1 /* 800192A4 00016204 FC 20 12 10 */ fabs f1, f2 /* 800192A8 00016208 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800192AC 0001620C 40 81 00 14 */ ble lbl_800192C0 /* 800192B0 00016210 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 800192B4 00016214 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 800192B8 00016218 FC 02 00 6E */ fsel f0, f2, f1, f0 /* 800192BC 0001621C EC 41 00 32 */ fmuls f2, f1, f0 lbl_800192C0: /* 800192C0 00016220 C0 02 82 48 */ lfs f0, lbl_805A9F68@sda21(r2) /* 800192C4 00016224 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800192C8 00016228 40 81 02 14 */ ble lbl_800194DC /* 800192CC 0001622C 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) /* 800192D0 00016230 FC 20 10 50 */ fneg f1, f2 /* 800192D4 00016234 38 61 00 34 */ addi r3, r1, 0x34 /* 800192D8 00016238 38 81 00 C8 */ addi r4, r1, 0xc8 /* 800192DC 0001623C C0 05 00 44 */ lfs f0, 0x44(r5) /* 800192E0 00016240 38 A1 00 10 */ addi r5, r1, 0x10 /* 800192E4 00016244 EC 01 00 32 */ fmuls f0, f1, f0 /* 800192E8 00016248 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800192EC 0001624C 48 2F 80 09 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle /* 800192F0 00016250 C0 61 00 34 */ lfs f3, 0x34(r1) /* 800192F4 00016254 38 61 02 24 */ addi r3, r1, 0x224 /* 800192F8 00016258 C0 41 00 38 */ lfs f2, 0x38(r1) /* 800192FC 0001625C 38 81 03 44 */ addi r4, r1, 0x344 /* 80019300 00016260 C0 21 00 3C */ lfs f1, 0x3c(r1) /* 80019304 00016264 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80019308 00016268 D0 61 00 B8 */ stfs f3, 0xb8(r1) /* 8001930C 0001626C D0 41 00 BC */ stfs f2, 0xbc(r1) /* 80019310 00016270 D0 21 00 C0 */ stfs f1, 0xc0(r1) /* 80019314 00016274 D0 01 00 C4 */ stfs f0, 0xc4(r1) /* 80019318 00016278 48 2F 99 29 */ bl GetRotation__12CTransform4fCFv /* 8001931C 0001627C 38 61 02 54 */ addi r3, r1, 0x254 /* 80019320 00016280 38 81 00 B8 */ addi r4, r1, 0xb8 /* 80019324 00016284 48 2F 8C 95 */ bl BuildTransform4f__11CQuaternionCFv /* 80019328 00016288 38 61 02 84 */ addi r3, r1, 0x284 /* 8001932C 0001628C 38 81 02 54 */ addi r4, r1, 0x254 /* 80019330 00016290 38 A1 02 24 */ addi r5, r1, 0x224 /* 80019334 00016294 48 2F 96 1D */ bl __ml__12CTransform4fCFRC12CTransform4f /* 80019338 00016298 38 61 03 14 */ addi r3, r1, 0x314 /* 8001933C 0001629C 38 81 02 84 */ addi r4, r1, 0x284 /* 80019340 000162A0 48 2F 98 01 */ bl __as__12CTransform4fFRC12CTransform4f /* 80019344 000162A4 D3 E1 03 20 */ stfs f31, 0x320(r1) /* 80019348 000162A8 D3 C1 03 30 */ stfs f30, 0x330(r1) /* 8001934C 000162AC D3 A1 03 40 */ stfs f29, 0x340(r1) /* 80019350 000162B0 48 00 01 8C */ b lbl_800194DC lbl_80019354: /* 80019354 000162B4 80 CD A1 34 */ lwz r6, gpTweakPlayerGun@sda21(r13) /* 80019358 000162B8 38 61 00 24 */ addi r3, r1, 0x24 /* 8001935C 000162BC 38 81 00 C8 */ addi r4, r1, 0xc8 /* 80019360 000162C0 38 A1 00 0C */ addi r5, r1, 0xc /* 80019364 000162C4 C0 06 00 44 */ lfs f0, 0x44(r6) /* 80019368 000162C8 FC 00 00 50 */ fneg f0, f0 /* 8001936C 000162CC D0 01 00 0C */ stfs f0, 0xc(r1) /* 80019370 000162D0 48 2F 7F 85 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle /* 80019374 000162D4 C0 61 00 24 */ lfs f3, 0x24(r1) /* 80019378 000162D8 38 61 01 94 */ addi r3, r1, 0x194 /* 8001937C 000162DC C0 41 00 28 */ lfs f2, 0x28(r1) /* 80019380 000162E0 38 81 03 44 */ addi r4, r1, 0x344 /* 80019384 000162E4 C0 21 00 2C */ lfs f1, 0x2c(r1) /* 80019388 000162E8 C0 01 00 30 */ lfs f0, 0x30(r1) /* 8001938C 000162EC D0 61 00 A8 */ stfs f3, 0xa8(r1) /* 80019390 000162F0 D0 41 00 AC */ stfs f2, 0xac(r1) /* 80019394 000162F4 D0 21 00 B0 */ stfs f1, 0xb0(r1) /* 80019398 000162F8 D0 01 00 B4 */ stfs f0, 0xb4(r1) /* 8001939C 000162FC 48 2F 98 A5 */ bl GetRotation__12CTransform4fCFv /* 800193A0 00016300 38 61 01 C4 */ addi r3, r1, 0x1c4 /* 800193A4 00016304 38 81 00 A8 */ addi r4, r1, 0xa8 /* 800193A8 00016308 48 2F 8C 11 */ bl BuildTransform4f__11CQuaternionCFv /* 800193AC 0001630C 38 61 01 F4 */ addi r3, r1, 0x1f4 /* 800193B0 00016310 38 81 01 C4 */ addi r4, r1, 0x1c4 /* 800193B4 00016314 38 A1 01 94 */ addi r5, r1, 0x194 /* 800193B8 00016318 48 2F 95 99 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800193BC 0001631C 38 61 03 14 */ addi r3, r1, 0x314 /* 800193C0 00016320 38 81 01 F4 */ addi r4, r1, 0x1f4 /* 800193C4 00016324 48 2F 97 7D */ bl __as__12CTransform4fFRC12CTransform4f /* 800193C8 00016328 D3 E1 03 20 */ stfs f31, 0x320(r1) /* 800193CC 0001632C D3 C1 03 30 */ stfs f30, 0x330(r1) /* 800193D0 00016330 D3 A1 03 40 */ stfs f29, 0x340(r1) /* 800193D4 00016334 48 00 01 08 */ b lbl_800194DC lbl_800193D8: /* 800193D8 00016338 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) /* 800193DC 0001633C C0 5D 04 9C */ lfs f2, 0x49c(r29) /* 800193E0 00016340 C0 23 00 3C */ lfs f1, 0x3c(r3) /* 800193E4 00016344 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 800193E8 00016348 EC 42 08 24 */ fdivs f2, f2, f1 /* 800193EC 0001634C FC 20 12 10 */ fabs f1, f2 /* 800193F0 00016350 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800193F4 00016354 40 81 00 14 */ ble lbl_80019408 /* 800193F8 00016358 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 800193FC 0001635C C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 80019400 00016360 FC 02 00 6E */ fsel f0, f2, f1, f0 /* 80019404 00016364 EC 41 00 32 */ fmuls f2, f1, f0 lbl_80019408: /* 80019408 00016368 C0 62 81 00 */ lfs f3, lbl_805A9E20@sda21(r2) /* 8001940C 0001636C 80 1D 02 F8 */ lwz r0, 0x2f8(r29) /* 80019410 00016370 EC 23 10 28 */ fsubs f1, f3, f2 /* 80019414 00016374 2C 00 00 02 */ cmpwi r0, 2 /* 80019418 00016378 40 82 00 34 */ bne lbl_8001944C /* 8001941C 0001637C C0 5D 04 9C */ lfs f2, 0x49c(r29) /* 80019420 00016380 C0 22 81 40 */ lfs f1, lbl_805A9E60@sda21(r2) /* 80019424 00016384 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 80019428 00016388 EC 42 08 24 */ fdivs f2, f2, f1 /* 8001942C 0001638C FC 20 12 10 */ fabs f1, f2 /* 80019430 00016390 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80019434 00016394 40 81 00 10 */ ble lbl_80019444 /* 80019438 00016398 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 8001943C 0001639C FC 02 00 EE */ fsel f0, f2, f3, f0 /* 80019440 000163A0 EC 43 00 32 */ fmuls f2, f3, f0 lbl_80019444: /* 80019444 000163A4 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 80019448 000163A8 EC 20 10 28 */ fsubs f1, f0, f2 lbl_8001944C: /* 8001944C 000163AC C0 02 82 48 */ lfs f0, lbl_805A9F68@sda21(r2) /* 80019450 000163B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80019454 000163B4 40 81 00 88 */ ble lbl_800194DC /* 80019458 000163B8 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) /* 8001945C 000163BC FC 20 08 50 */ fneg f1, f1 /* 80019460 000163C0 38 61 00 14 */ addi r3, r1, 0x14 /* 80019464 000163C4 38 81 00 C8 */ addi r4, r1, 0xc8 /* 80019468 000163C8 C0 05 00 44 */ lfs f0, 0x44(r5) /* 8001946C 000163CC 38 A1 00 08 */ addi r5, r1, 8 /* 80019470 000163D0 EC 01 00 32 */ fmuls f0, f1, f0 /* 80019474 000163D4 D0 01 00 08 */ stfs f0, 8(r1) /* 80019478 000163D8 48 2F 7E 7D */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle /* 8001947C 000163DC C0 61 00 14 */ lfs f3, 0x14(r1) /* 80019480 000163E0 38 61 01 04 */ addi r3, r1, 0x104 /* 80019484 000163E4 C0 41 00 18 */ lfs f2, 0x18(r1) /* 80019488 000163E8 38 81 03 44 */ addi r4, r1, 0x344 /* 8001948C 000163EC C0 21 00 1C */ lfs f1, 0x1c(r1) /* 80019490 000163F0 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80019494 000163F4 D0 61 00 98 */ stfs f3, 0x98(r1) /* 80019498 000163F8 D0 41 00 9C */ stfs f2, 0x9c(r1) /* 8001949C 000163FC D0 21 00 A0 */ stfs f1, 0xa0(r1) /* 800194A0 00016400 D0 01 00 A4 */ stfs f0, 0xa4(r1) /* 800194A4 00016404 48 2F 97 9D */ bl GetRotation__12CTransform4fCFv /* 800194A8 00016408 38 61 01 34 */ addi r3, r1, 0x134 /* 800194AC 0001640C 38 81 00 98 */ addi r4, r1, 0x98 /* 800194B0 00016410 48 2F 8B 09 */ bl BuildTransform4f__11CQuaternionCFv /* 800194B4 00016414 38 61 01 64 */ addi r3, r1, 0x164 /* 800194B8 00016418 38 81 01 34 */ addi r4, r1, 0x134 /* 800194BC 0001641C 38 A1 01 04 */ addi r5, r1, 0x104 /* 800194C0 00016420 48 2F 94 91 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800194C4 00016424 38 61 03 14 */ addi r3, r1, 0x314 /* 800194C8 00016428 38 81 01 64 */ addi r4, r1, 0x164 /* 800194CC 0001642C 48 2F 96 75 */ bl __as__12CTransform4fFRC12CTransform4f /* 800194D0 00016430 D3 E1 03 20 */ stfs f31, 0x320(r1) /* 800194D4 00016434 D3 C1 03 30 */ stfs f30, 0x330(r1) /* 800194D8 00016438 D3 A1 03 40 */ stfs f29, 0x340(r1) lbl_800194DC: /* 800194DC 0001643C 38 61 00 D4 */ addi r3, r1, 0xd4 /* 800194E0 00016440 38 81 03 14 */ addi r4, r1, 0x314 /* 800194E4 00016444 48 2F 96 91 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800194E8 00016448 80 7D 04 90 */ lwz r3, 0x490(r29) /* 800194EC 0001644C 38 81 00 D4 */ addi r4, r1, 0xd4 /* 800194F0 00016450 38 63 03 E8 */ addi r3, r3, 0x3e8 /* 800194F4 00016454 48 2F 96 4D */ bl __as__12CTransform4fFRC12CTransform4f /* 800194F8 00016458 38 61 02 E4 */ addi r3, r1, 0x2e4 /* 800194FC 0001645C 38 81 03 14 */ addi r4, r1, 0x314 /* 80019500 00016460 48 2F 96 75 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80019504 00016464 7F A3 EB 78 */ mr r3, r29 /* 80019508 00016468 7F E5 FB 78 */ mr r5, r31 /* 8001950C 0001646C 38 81 02 E4 */ addi r4, r1, 0x2e4 /* 80019510 00016470 48 00 04 31 */ bl UpdateAimTargetPrediction__7CPlayerFRC12CTransform4fR13CStateManager /* 80019514 00016474 7F A3 EB 78 */ mr r3, r29 /* 80019518 00016478 7F E5 FB 78 */ mr r5, r31 /* 8001951C 0001647C 38 81 02 E4 */ addi r4, r1, 0x2e4 /* 80019520 00016480 48 00 00 39 */ bl UpdateAssistedAiming__7CPlayerFRC12CTransform4fR13CStateManager /* 80019524 00016484 E3 E1 03 E8 */ psq_l f31, 1000(r1), 0, qr0 /* 80019528 00016488 CB E1 03 E0 */ lfd f31, 0x3e0(r1) /* 8001952C 0001648C E3 C1 03 D8 */ psq_l f30, 984(r1), 0, qr0 /* 80019530 00016490 CB C1 03 D0 */ lfd f30, 0x3d0(r1) /* 80019534 00016494 E3 A1 03 C8 */ psq_l f29, 968(r1), 0, qr0 /* 80019538 00016498 CB A1 03 C0 */ lfd f29, 0x3c0(r1) /* 8001953C 0001649C 83 E1 03 BC */ lwz r31, 0x3bc(r1) /* 80019540 000164A0 83 C1 03 B8 */ lwz r30, 0x3b8(r1) /* 80019544 000164A4 80 01 03 F4 */ lwz r0, 0x3f4(r1) /* 80019548 000164A8 83 A1 03 B4 */ lwz r29, 0x3b4(r1) /* 8001954C 000164AC 7C 08 03 A6 */ mtlr r0 /* 80019550 000164B0 38 21 03 F0 */ addi r1, r1, 0x3f0 /* 80019554 000164B4 4E 80 00 20 */ blr .global UpdateAssistedAiming__7CPlayerFRC12CTransform4fR13CStateManager UpdateAssistedAiming__7CPlayerFRC12CTransform4fR13CStateManager: /* 80019558 000164B8 94 21 FE E0 */ stwu r1, -0x120(r1) /* 8001955C 000164BC 7C 08 02 A6 */ mflr r0 /* 80019560 000164C0 90 01 01 24 */ stw r0, 0x124(r1) /* 80019564 000164C4 DB E1 01 10 */ stfd f31, 0x110(r1) /* 80019568 000164C8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 /* 8001956C 000164CC DB C1 01 00 */ stfd f30, 0x100(r1) /* 80019570 000164D0 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 /* 80019574 000164D4 DB A1 00 F0 */ stfd f29, 0xf0(r1) /* 80019578 000164D8 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 /* 8001957C 000164DC DB 81 00 E0 */ stfd f28, 0xe0(r1) /* 80019580 000164E0 F3 81 00 E8 */ psq_st f28, 232(r1), 0, qr0 /* 80019584 000164E4 DB 61 00 D0 */ stfd f27, 0xd0(r1) /* 80019588 000164E8 F3 61 00 D8 */ psq_st f27, 216(r1), 0, qr0 /* 8001958C 000164EC 93 E1 00 CC */ stw r31, 0xcc(r1) /* 80019590 000164F0 93 C1 00 C8 */ stw r30, 0xc8(r1) /* 80019594 000164F4 93 A1 00 C4 */ stw r29, 0xc4(r1) /* 80019598 000164F8 93 81 00 C0 */ stw r28, 0xc0(r1) /* 8001959C 000164FC 7C 7E 1B 78 */ mr r30, r3 /* 800195A0 00016500 7C 9F 23 78 */ mr r31, r4 /* 800195A4 00016504 7C BC 2B 78 */ mr r28, r5 /* 800195A8 00016508 38 61 00 90 */ addi r3, r1, 0x90 /* 800195AC 0001650C 48 2F 95 C9 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800195B0 00016510 A0 1E 03 F4 */ lhz r0, 0x3f4(r30) /* 800195B4 00016514 7F 83 E3 78 */ mr r3, r28 /* 800195B8 00016518 38 81 00 0C */ addi r4, r1, 0xc /* 800195BC 0001651C B0 01 00 08 */ sth r0, 8(r1) /* 800195C0 00016520 B0 01 00 0C */ sth r0, 0xc(r1) /* 800195C4 00016524 48 03 2F E1 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800195C8 00016528 7C 64 1B 78 */ mr r4, r3 /* 800195CC 0001652C 38 61 00 10 */ addi r3, r1, 0x10 /* 800195D0 00016530 48 09 66 C1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 800195D4 00016534 80 03 00 04 */ lwz r0, 4(r3) /* 800195D8 00016538 28 00 00 00 */ cmplwi r0, 0 /* 800195DC 0001653C 41 82 03 0C */ beq lbl_800198E8 /* 800195E0 00016540 C0 5E 04 84 */ lfs f2, 0x484(r30) /* 800195E4 00016544 38 61 00 48 */ addi r3, r1, 0x48 /* 800195E8 00016548 C0 3F 00 1C */ lfs f1, 0x1c(r31) /* 800195EC 0001654C C0 7E 04 88 */ lfs f3, 0x488(r30) /* 800195F0 00016550 C0 1F 00 2C */ lfs f0, 0x2c(r31) /* 800195F4 00016554 EC 82 08 28 */ fsubs f4, f2, f1 /* 800195F8 00016558 C0 5E 04 80 */ lfs f2, 0x480(r30) /* 800195FC 0001655C C0 3F 00 0C */ lfs f1, 0xc(r31) /* 80019600 00016560 EC 63 00 28 */ fsubs f3, f3, f0 /* 80019604 00016564 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80019608 00016568 EC 22 08 28 */ fsubs f1, f2, f1 /* 8001960C 0001656C D0 81 00 58 */ stfs f4, 0x58(r1) /* 80019610 00016570 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 80019614 00016574 D0 21 00 54 */ stfs f1, 0x54(r1) /* 80019618 00016578 D0 21 00 48 */ stfs f1, 0x48(r1) /* 8001961C 0001657C D0 81 00 4C */ stfs f4, 0x4c(r1) /* 80019620 00016580 D0 01 00 50 */ stfs f0, 0x50(r1) /* 80019624 00016584 48 2F B2 95 */ bl Magnitude__9CVector3fCFv /* 80019628 00016588 C0 1F 00 24 */ lfs f0, 0x24(r31) /* 8001962C 0001658C FF 80 08 90 */ fmr f28, f1 /* 80019630 00016590 C0 7F 00 14 */ lfs f3, 0x14(r31) /* 80019634 00016594 38 61 00 3C */ addi r3, r1, 0x3c /* 80019638 00016598 C0 5F 00 04 */ lfs f2, 4(r31) /* 8001963C 0001659C D0 01 00 44 */ stfs f0, 0x44(r1) /* 80019640 000165A0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80019644 000165A4 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 80019648 000165A8 D0 61 00 40 */ stfs f3, 0x40(r1) /* 8001964C 000165AC D0 01 00 44 */ stfs f0, 0x44(r1) /* 80019650 000165B0 48 2F B2 69 */ bl Magnitude__9CVector3fCFv /* 80019654 000165B4 FF E0 08 90 */ fmr f31, f1 /* 80019658 000165B8 38 61 00 48 */ addi r3, r1, 0x48 /* 8001965C 000165BC 48 2F B0 9D */ bl CanBeNormalized__9CVector3fCFv /* 80019660 000165C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019664 000165C4 41 82 02 84 */ beq lbl_800198E8 /* 80019668 000165C8 38 61 00 3C */ addi r3, r1, 0x3c /* 8001966C 000165CC 48 2F B0 8D */ bl CanBeNormalized__9CVector3fCFv /* 80019670 000165D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019674 000165D4 41 82 02 74 */ beq lbl_800198E8 /* 80019678 000165D8 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 8001967C 000165DC FC 40 E0 90 */ fmr f2, f28 /* 80019680 000165E0 C0 E1 00 48 */ lfs f7, 0x48(r1) /* 80019684 000165E4 ED 01 E0 24 */ fdivs f8, f1, f28 /* 80019688 000165E8 C0 C1 00 4C */ lfs f6, 0x4c(r1) /* 8001968C 000165EC C0 A1 00 50 */ lfs f5, 0x50(r1) /* 80019690 000165F0 C0 81 00 3C */ lfs f4, 0x3c(r1) /* 80019694 000165F4 C0 61 00 40 */ lfs f3, 0x40(r1) /* 80019698 000165F8 C0 01 00 44 */ lfs f0, 0x44(r1) /* 8001969C 000165FC ED 21 F8 24 */ fdivs f9, f1, f31 /* 800196A0 00016600 C0 21 00 5C */ lfs f1, 0x5c(r1) /* 800196A4 00016604 EC E7 02 32 */ fmuls f7, f7, f8 /* 800196A8 00016608 EC C6 02 32 */ fmuls f6, f6, f8 /* 800196AC 0001660C EC A5 02 32 */ fmuls f5, f5, f8 /* 800196B0 00016610 EC 84 02 72 */ fmuls f4, f4, f9 /* 800196B4 00016614 D0 E1 00 48 */ stfs f7, 0x48(r1) /* 800196B8 00016618 EC 63 02 72 */ fmuls f3, f3, f9 /* 800196BC 0001661C EC 00 02 72 */ fmuls f0, f0, f9 /* 800196C0 00016620 D0 C1 00 4C */ stfs f6, 0x4c(r1) /* 800196C4 00016624 D0 A1 00 50 */ stfs f5, 0x50(r1) /* 800196C8 00016628 D0 81 00 3C */ stfs f4, 0x3c(r1) /* 800196CC 0001662C D0 61 00 40 */ stfs f3, 0x40(r1) /* 800196D0 00016630 D0 01 00 44 */ stfs f0, 0x44(r1) /* 800196D4 00016634 48 37 B5 99 */ bl atan2 /* 800196D8 00016638 C0 9F 00 24 */ lfs f4, 0x24(r31) /* 800196DC 0001663C FF C0 08 18 */ frsp f30, f1 /* 800196E0 00016640 C0 7F 00 14 */ lfs f3, 0x14(r31) /* 800196E4 00016644 FC 40 F8 90 */ fmr f2, f31 /* 800196E8 00016648 C0 1F 00 04 */ lfs f0, 4(r31) /* 800196EC 0001664C FC 20 20 90 */ fmr f1, f4 /* 800196F0 00016650 D0 61 00 34 */ stfs f3, 0x34(r1) /* 800196F4 00016654 D0 01 00 30 */ stfs f0, 0x30(r1) /* 800196F8 00016658 D0 81 00 38 */ stfs f4, 0x38(r1) /* 800196FC 0001665C 48 37 B5 71 */ bl atan2 /* 80019700 00016660 FC 00 08 18 */ frsp f0, f1 /* 80019704 00016664 88 1E 09 C6 */ lbz r0, 0x9c6(r30) /* 80019708 00016668 3B A0 00 01 */ li r29, 1 /* 8001970C 0001666C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80019710 00016670 EF FE 00 28 */ fsubs f31, f30, f0 /* 80019714 00016674 40 82 00 4C */ bne lbl_80019760 /* 80019718 00016678 FC 00 FA 10 */ fabs f0, f31 /* 8001971C 0001667C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80019720 00016680 C0 23 02 68 */ lfs f1, 0x268(r3) /* 80019724 00016684 FC 00 00 18 */ frsp f0, f0 /* 80019728 00016688 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8001972C 0001668C 40 81 00 34 */ ble lbl_80019760 /* 80019730 00016690 88 03 02 2A */ lbz r0, 0x22a(r3) /* 80019734 00016694 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 80019738 00016698 41 82 00 10 */ beq lbl_80019748 /* 8001973C 0001669C C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) /* 80019740 000166A0 3B A0 00 00 */ li r29, 0 /* 80019744 000166A4 48 00 00 1C */ b lbl_80019760 lbl_80019748: /* 80019748 000166A8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001974C 000166AC FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80019750 000166B0 40 81 00 0C */ ble lbl_8001975C /* 80019754 000166B4 FF E0 08 90 */ fmr f31, f1 /* 80019758 000166B8 48 00 00 08 */ b lbl_80019760 lbl_8001975C: /* 8001975C 000166BC FF E0 08 50 */ fneg f31, f1 lbl_80019760: /* 80019760 000166C0 C0 E1 00 40 */ lfs f7, 0x40(r1) /* 80019764 000166C4 C0 81 00 48 */ lfs f4, 0x48(r1) /* 80019768 000166C8 C1 21 00 44 */ lfs f9, 0x44(r1) /* 8001976C 000166CC C0 C1 00 4C */ lfs f6, 0x4c(r1) /* 80019770 000166D0 EC 04 01 F2 */ fmuls f0, f4, f7 /* 80019774 000166D4 C0 A1 00 3C */ lfs f5, 0x3c(r1) /* 80019778 000166D8 C1 01 00 50 */ lfs f8, 0x50(r1) /* 8001977C 000166DC EC 66 02 72 */ fmuls f3, f6, f9 /* 80019780 000166E0 EC 25 01 B8 */ fmsubs f1, f5, f6, f0 /* 80019784 000166E4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80019788 000166E8 EC 48 01 72 */ fmuls f2, f8, f5 /* 8001978C 000166EC EC 67 1A 38 */ fmsubs f3, f7, f8, f3 /* 80019790 000166F0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80019794 000166F4 D0 21 00 2C */ stfs f1, 0x2c(r1) /* 80019798 000166F8 EC 09 11 38 */ fmsubs f0, f9, f4, f2 /* 8001979C 000166FC D0 61 00 24 */ stfs f3, 0x24(r1) /* 800197A0 00016700 D0 01 00 28 */ stfs f0, 0x28(r1) /* 800197A4 00016704 7C 00 00 26 */ mfcr r0 /* 800197A8 00016708 EC 27 01 B2 */ fmuls f1, f7, f6 /* 800197AC 0001670C C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) /* 800197B0 00016710 54 1C 17 FE */ rlwinm r28, r0, 2, 0x1f, 0x1f /* 800197B4 00016714 EC 25 09 3A */ fmadds f1, f5, f4, f1 /* 800197B8 00016718 EC 29 0A 3A */ fmadds f1, f9, f8, f1 /* 800197BC 0001671C FC 40 0A 10 */ fabs f2, f1 /* 800197C0 00016720 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800197C4 00016724 40 81 00 14 */ ble lbl_800197D8 /* 800197C8 00016728 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) /* 800197CC 0001672C C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 800197D0 00016730 FC 01 00 AE */ fsel f0, f1, f2, f0 /* 800197D4 00016734 EC 22 00 32 */ fmuls f1, f2, f0 lbl_800197D8: /* 800197D8 00016738 48 37 B4 55 */ bl acos /* 800197DC 0001673C FC 00 08 18 */ frsp f0, f1 /* 800197E0 00016740 88 1E 09 C6 */ lbz r0, 0x9c6(r30) /* 800197E4 00016744 38 80 00 01 */ li r4, 1 /* 800197E8 00016748 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 800197EC 0001674C FF 60 00 90 */ fmr f27, f0 /* 800197F0 00016750 40 82 00 34 */ bne lbl_80019824 /* 800197F4 00016754 FC 00 02 10 */ fabs f0, f0 /* 800197F8 00016758 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 800197FC 0001675C C0 23 02 64 */ lfs f1, 0x264(r3) /* 80019800 00016760 FC 00 00 18 */ frsp f0, f0 /* 80019804 00016764 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80019808 00016768 40 81 00 1C */ ble lbl_80019824 /* 8001980C 0001676C 88 03 02 2A */ lbz r0, 0x22a(r3) /* 80019810 00016770 FF 60 08 90 */ fmr f27, f1 /* 80019814 00016774 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80019818 00016778 41 82 00 0C */ beq lbl_80019824 /* 8001981C 0001677C C3 62 81 0C */ lfs f27, lbl_805A9E2C@sda21(r2) /* 80019820 00016780 38 80 00 00 */ li r4, 0 lbl_80019824: /* 80019824 00016784 28 1C 00 00 */ cmplwi r28, 0 /* 80019828 00016788 41 82 00 08 */ beq lbl_80019830 /* 8001982C 0001678C FF 60 D8 50 */ fneg f27, f27 lbl_80019830: /* 80019830 00016790 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 80019834 00016794 41 82 00 0C */ beq lbl_80019840 /* 80019838 00016798 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 8001983C 0001679C 40 82 00 0C */ bne lbl_80019848 lbl_80019840: /* 80019840 000167A0 C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) /* 80019844 000167A4 FF 60 F8 90 */ fmr f27, f31 lbl_80019848: /* 80019848 000167A8 FC 20 F8 90 */ fmr f1, f31 /* 8001984C 000167AC 48 37 B2 91 */ bl sin /* 80019850 000167B0 FF C0 08 18 */ frsp f30, f1 /* 80019854 000167B4 FC 20 F8 90 */ fmr f1, f31 /* 80019858 000167B8 48 37 AB 99 */ bl cos /* 8001985C 000167BC FF A0 08 18 */ frsp f29, f1 /* 80019860 000167C0 FC 20 D8 90 */ fmr f1, f27 /* 80019864 000167C4 48 37 AB 8D */ bl cos /* 80019868 000167C8 FF 80 08 18 */ frsp f28, f1 /* 8001986C 000167CC FC 20 F8 90 */ fmr f1, f31 /* 80019870 000167D0 48 37 AB 81 */ bl cos /* 80019874 000167D4 FF E0 08 18 */ frsp f31, f1 /* 80019878 000167D8 FC 20 D8 90 */ fmr f1, f27 /* 8001987C 000167DC 48 37 B2 61 */ bl sin /* 80019880 000167E0 FC 20 08 18 */ frsp f1, f1 /* 80019884 000167E4 D3 C1 00 5C */ stfs f30, 0x5c(r1) /* 80019888 000167E8 EC 1C 07 72 */ fmuls f0, f28, f29 /* 8001988C 000167EC 7F E4 FB 78 */ mr r4, r31 /* 80019890 000167F0 38 61 00 18 */ addi r3, r1, 0x18 /* 80019894 000167F4 38 A1 00 54 */ addi r5, r1, 0x54 /* 80019898 000167F8 EC 21 07 F2 */ fmuls f1, f1, f31 /* 8001989C 000167FC D0 01 00 58 */ stfs f0, 0x58(r1) /* 800198A0 00016800 D0 21 00 54 */ stfs f1, 0x54(r1) /* 800198A4 00016804 48 2F 91 DD */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800198A8 00016808 C0 41 00 18 */ lfs f2, 0x18(r1) /* 800198AC 0001680C 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800198B0 00016810 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 800198B4 00016814 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 800198B8 00016818 C0 01 00 20 */ lfs f0, 0x20(r1) /* 800198BC 0001681C 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 800198C0 00016820 D0 41 00 54 */ stfs f2, 0x54(r1) /* 800198C4 00016824 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 800198C8 00016828 38 61 00 60 */ addi r3, r1, 0x60 /* 800198CC 0001682C 38 A1 00 54 */ addi r5, r1, 0x54 /* 800198D0 00016830 D0 21 00 58 */ stfs f1, 0x58(r1) /* 800198D4 00016834 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 800198D8 00016838 48 2F A2 39 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800198DC 0001683C 38 61 00 90 */ addi r3, r1, 0x90 /* 800198E0 00016840 38 81 00 60 */ addi r4, r1, 0x60 /* 800198E4 00016844 48 2F 92 5D */ bl __as__12CTransform4fFRC12CTransform4f lbl_800198E8: /* 800198E8 00016848 80 7E 04 90 */ lwz r3, 0x490(r30) /* 800198EC 0001684C 38 81 00 90 */ addi r4, r1, 0x90 /* 800198F0 00016850 38 63 04 78 */ addi r3, r3, 0x478 /* 800198F4 00016854 48 2F 92 4D */ bl __as__12CTransform4fFRC12CTransform4f /* 800198F8 00016858 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 /* 800198FC 0001685C CB E1 01 10 */ lfd f31, 0x110(r1) /* 80019900 00016860 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 /* 80019904 00016864 CB C1 01 00 */ lfd f30, 0x100(r1) /* 80019908 00016868 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 /* 8001990C 0001686C CB A1 00 F0 */ lfd f29, 0xf0(r1) /* 80019910 00016870 E3 81 00 E8 */ psq_l f28, 232(r1), 0, qr0 /* 80019914 00016874 CB 81 00 E0 */ lfd f28, 0xe0(r1) /* 80019918 00016878 E3 61 00 D8 */ psq_l f27, 216(r1), 0, qr0 /* 8001991C 0001687C CB 61 00 D0 */ lfd f27, 0xd0(r1) /* 80019920 00016880 83 E1 00 CC */ lwz r31, 0xcc(r1) /* 80019924 00016884 83 C1 00 C8 */ lwz r30, 0xc8(r1) /* 80019928 00016888 83 A1 00 C4 */ lwz r29, 0xc4(r1) /* 8001992C 0001688C 80 01 01 24 */ lwz r0, 0x124(r1) /* 80019930 00016890 83 81 00 C0 */ lwz r28, 0xc0(r1) /* 80019934 00016894 7C 08 03 A6 */ mtlr r0 /* 80019938 00016898 38 21 01 20 */ addi r1, r1, 0x120 /* 8001993C 0001689C 4E 80 00 20 */ blr .global UpdateAimTargetPrediction__7CPlayerFRC12CTransform4fR13CStateManager UpdateAimTargetPrediction__7CPlayerFRC12CTransform4fR13CStateManager: /* 80019940 000168A0 94 21 FE F0 */ stwu r1, -0x110(r1) /* 80019944 000168A4 7C 08 02 A6 */ mflr r0 /* 80019948 000168A8 90 01 01 14 */ stw r0, 0x114(r1) /* 8001994C 000168AC DB E1 01 00 */ stfd f31, 0x100(r1) /* 80019950 000168B0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 /* 80019954 000168B4 DB C1 00 F0 */ stfd f30, 0xf0(r1) /* 80019958 000168B8 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 /* 8001995C 000168BC DB A1 00 E0 */ stfd f29, 0xe0(r1) /* 80019960 000168C0 F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 /* 80019964 000168C4 DB 81 00 D0 */ stfd f28, 0xd0(r1) /* 80019968 000168C8 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 /* 8001996C 000168CC DB 61 00 C0 */ stfd f27, 0xc0(r1) /* 80019970 000168D0 F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0 /* 80019974 000168D4 DB 41 00 B0 */ stfd f26, 0xb0(r1) /* 80019978 000168D8 F3 41 00 B8 */ psq_st f26, 184(r1), 0, qr0 /* 8001997C 000168DC DB 21 00 A0 */ stfd f25, 0xa0(r1) /* 80019980 000168E0 F3 21 00 A8 */ psq_st f25, 168(r1), 0, qr0 /* 80019984 000168E4 DB 01 00 90 */ stfd f24, 0x90(r1) /* 80019988 000168E8 F3 01 00 98 */ psq_st f24, 152(r1), 0, qr0 /* 8001998C 000168EC 93 E1 00 8C */ stw r31, 0x8c(r1) /* 80019990 000168F0 93 C1 00 88 */ stw r30, 0x88(r1) /* 80019994 000168F4 93 A1 00 84 */ stw r29, 0x84(r1) /* 80019998 000168F8 93 81 00 80 */ stw r28, 0x80(r1) /* 8001999C 000168FC 7C 7F 1B 78 */ mr r31, r3 /* 800199A0 00016900 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800199A4 00016904 A0 C3 03 F4 */ lhz r6, 0x3f4(r3) /* 800199A8 00016908 7C 9C 23 78 */ mr r28, r4 /* 800199AC 0001690C 7C BD 2B 78 */ mr r29, r5 /* 800199B0 00016910 7C 06 00 40 */ cmplw r6, r0 /* 800199B4 00016914 41 82 01 C0 */ beq lbl_80019B74 /* 800199B8 00016918 B0 C1 00 08 */ sth r6, 8(r1) /* 800199BC 0001691C 7F A3 EB 78 */ mr r3, r29 /* 800199C0 00016920 38 81 00 0C */ addi r4, r1, 0xc /* 800199C4 00016924 B0 C1 00 0C */ sth r6, 0xc(r1) /* 800199C8 00016928 48 03 2B DD */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800199CC 0001692C 7C 64 1B 78 */ mr r4, r3 /* 800199D0 00016930 38 61 00 18 */ addi r3, r1, 0x18 /* 800199D4 00016934 48 09 62 BD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 800199D8 00016938 83 C3 00 04 */ lwz r30, 4(r3) /* 800199DC 0001693C 28 1E 00 00 */ cmplwi r30, 0 /* 800199E0 00016940 41 82 01 94 */ beq lbl_80019B74 /* 800199E4 00016944 7F C4 F3 78 */ mr r4, r30 /* 800199E8 00016948 38 61 00 10 */ addi r3, r1, 0x10 /* 800199EC 0001694C 48 09 3D 21 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" /* 800199F0 00016950 80 E3 00 04 */ lwz r7, 4(r3) /* 800199F4 00016954 7F C4 F3 78 */ mr r4, r30 /* 800199F8 00016958 88 1F 09 C6 */ lbz r0, 0x9c6(r31) /* 800199FC 0001695C 7F A5 EB 78 */ mr r5, r29 /* 80019A00 00016960 7C C7 00 D0 */ neg r6, r7 /* 80019A04 00016964 38 61 00 58 */ addi r3, r1, 0x58 /* 80019A08 00016968 7C C6 3B 78 */ or r6, r6, r7 /* 80019A0C 0001696C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 80019A10 00016970 50 C0 2E F6 */ rlwimi r0, r6, 5, 0x1b, 0x1b /* 80019A14 00016974 98 1F 09 C6 */ stb r0, 0x9c6(r31) /* 80019A18 00016978 81 9E 00 00 */ lwz r12, 0(r30) /* 80019A1C 0001697C 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 80019A20 00016980 7D 89 03 A6 */ mtctr r12 /* 80019A24 00016984 4E 80 04 21 */ bctrl /* 80019A28 00016988 C3 61 00 58 */ lfs f27, 0x58(r1) /* 80019A2C 0001698C C0 1C 00 0C */ lfs f0, 0xc(r28) /* 80019A30 00016990 C3 C1 00 5C */ lfs f30, 0x5c(r1) /* 80019A34 00016994 C0 5C 00 1C */ lfs f2, 0x1c(r28) /* 80019A38 00016998 EC 1B 00 28 */ fsubs f0, f27, f0 /* 80019A3C 0001699C C3 A1 00 60 */ lfs f29, 0x60(r1) /* 80019A40 000169A0 C0 3C 00 2C */ lfs f1, 0x2c(r28) /* 80019A44 000169A4 EC 5E 10 28 */ fsubs f2, f30, f2 /* 80019A48 000169A8 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80019A4C 000169AC EC 1D 08 28 */ fsubs f0, f29, f1 /* 80019A50 000169B0 D0 41 00 74 */ stfs f2, 0x74(r1) /* 80019A54 000169B4 D0 01 00 78 */ stfs f0, 0x78(r1) /* 80019A58 000169B8 80 7F 04 90 */ lwz r3, 0x490(r31) /* 80019A5C 000169BC 48 02 48 89 */ bl GetBeamVelocity__10CPlayerGunCFv /* 80019A60 000169C0 FF E0 08 90 */ fmr f31, f1 /* 80019A64 000169C4 38 61 00 70 */ addi r3, r1, 0x70 /* 80019A68 000169C8 48 2F AE 51 */ bl Magnitude__9CVector3fCFv /* 80019A6C 000169CC EC 21 F8 24 */ fdivs f1, f1, f31 /* 80019A70 000169D0 81 9E 00 00 */ lwz r12, 0(r30) /* 80019A74 000169D4 7F C4 F3 78 */ mr r4, r30 /* 80019A78 000169D8 7F A5 EB 78 */ mr r5, r29 /* 80019A7C 000169DC 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 80019A80 000169E0 38 61 00 4C */ addi r3, r1, 0x4c /* 80019A84 000169E4 7D 89 03 A6 */ mtctr r12 /* 80019A88 000169E8 4E 80 04 21 */ bctrl /* 80019A8C 000169EC C3 41 00 4C */ lfs f26, 0x4c(r1) /* 80019A90 000169F0 38 61 00 64 */ addi r3, r1, 0x64 /* 80019A94 000169F4 C3 E1 00 50 */ lfs f31, 0x50(r1) /* 80019A98 000169F8 C3 81 00 54 */ lfs f28, 0x54(r1) /* 80019A9C 000169FC EC 1A D8 28 */ fsubs f0, f26, f27 /* 80019AA0 00016A00 EF 3F F0 28 */ fsubs f25, f31, f30 /* 80019AA4 00016A04 EF 1C E8 28 */ fsubs f24, f28, f29 /* 80019AA8 00016A08 D0 01 00 64 */ stfs f0, 0x64(r1) /* 80019AAC 00016A0C D3 21 00 68 */ stfs f25, 0x68(r1) /* 80019AB0 00016A10 D3 01 00 6C */ stfs f24, 0x6c(r1) /* 80019AB4 00016A14 D3 7F 03 F8 */ stfs f27, 0x3f8(r31) /* 80019AB8 00016A18 D3 DF 03 FC */ stfs f30, 0x3fc(r31) /* 80019ABC 00016A1C D3 BF 04 00 */ stfs f29, 0x400(r31) /* 80019AC0 00016A20 48 2F AD F9 */ bl Magnitude__9CVector3fCFv /* 80019AC4 00016A24 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) /* 80019AC8 00016A28 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80019ACC 00016A2C 40 80 00 18 */ bge lbl_80019AE4 /* 80019AD0 00016A30 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80019AD4 00016A34 38 7F 04 04 */ addi r3, r31, 0x404 /* 80019AD8 00016A38 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 80019ADC 00016A3C 48 00 01 6D */ bl sub_80019c48 /* 80019AE0 00016A40 48 00 00 20 */ b lbl_80019B00 lbl_80019AE4: /* 80019AE4 00016A44 EC 1A D8 28 */ fsubs f0, f26, f27 /* 80019AE8 00016A48 D3 21 00 44 */ stfs f25, 0x44(r1) /* 80019AEC 00016A4C 38 7F 04 04 */ addi r3, r31, 0x404 /* 80019AF0 00016A50 38 81 00 40 */ addi r4, r1, 0x40 /* 80019AF4 00016A54 D3 01 00 48 */ stfs f24, 0x48(r1) /* 80019AF8 00016A58 D0 01 00 40 */ stfs f0, 0x40(r1) /* 80019AFC 00016A5C 48 00 01 4D */ bl sub_80019c48 lbl_80019B00: /* 80019B00 00016A60 38 61 00 30 */ addi r3, r1, 0x30 /* 80019B04 00016A64 38 9F 04 04 */ addi r4, r31, 0x404 /* 80019B08 00016A68 48 00 00 CD */ bl "GetAverage__31TReservedAverage<9CVector3f,20>CFv" /* 80019B0C 00016A6C 88 61 00 3C */ lbz r3, 0x3c(r1) /* 80019B10 00016A70 38 00 00 00 */ li r0, 0 /* 80019B14 00016A74 28 03 00 00 */ cmplwi r3, 0 /* 80019B18 00016A78 98 01 00 3C */ stb r0, 0x3c(r1) /* 80019B1C 00016A7C 41 82 00 4C */ beq lbl_80019B68 /* 80019B20 00016A80 88 1F 09 C6 */ lbz r0, 0x9c6(r31) /* 80019B24 00016A84 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80019B28 00016A88 40 82 00 40 */ bne lbl_80019B68 /* 80019B2C 00016A8C 38 61 00 20 */ addi r3, r1, 0x20 /* 80019B30 00016A90 38 9F 04 04 */ addi r4, r31, 0x404 /* 80019B34 00016A94 48 00 00 A1 */ bl "GetAverage__31TReservedAverage<9CVector3f,20>CFv" /* 80019B38 00016A98 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80019B3C 00016A9C 38 00 00 00 */ li r0, 0 /* 80019B40 00016AA0 C0 41 00 24 */ lfs f2, 0x24(r1) /* 80019B44 00016AA4 EC 1B 00 2A */ fadds f0, f27, f0 /* 80019B48 00016AA8 C0 21 00 28 */ lfs f1, 0x28(r1) /* 80019B4C 00016AAC EC 5E 10 2A */ fadds f2, f30, f2 /* 80019B50 00016AB0 EC 3D 08 2A */ fadds f1, f29, f1 /* 80019B54 00016AB4 D0 1F 04 80 */ stfs f0, 0x480(r31) /* 80019B58 00016AB8 D0 5F 04 84 */ stfs f2, 0x484(r31) /* 80019B5C 00016ABC D0 3F 04 88 */ stfs f1, 0x488(r31) /* 80019B60 00016AC0 98 01 00 2C */ stb r0, 0x2c(r1) /* 80019B64 00016AC4 48 00 00 10 */ b lbl_80019B74 lbl_80019B68: /* 80019B68 00016AC8 D3 5F 04 80 */ stfs f26, 0x480(r31) /* 80019B6C 00016ACC D3 FF 04 84 */ stfs f31, 0x484(r31) /* 80019B70 00016AD0 D3 9F 04 88 */ stfs f28, 0x488(r31) lbl_80019B74: /* 80019B74 00016AD4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 /* 80019B78 00016AD8 CB E1 01 00 */ lfd f31, 0x100(r1) /* 80019B7C 00016ADC E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 /* 80019B80 00016AE0 CB C1 00 F0 */ lfd f30, 0xf0(r1) /* 80019B84 00016AE4 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 /* 80019B88 00016AE8 CB A1 00 E0 */ lfd f29, 0xe0(r1) /* 80019B8C 00016AEC E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 /* 80019B90 00016AF0 CB 81 00 D0 */ lfd f28, 0xd0(r1) /* 80019B94 00016AF4 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0 /* 80019B98 00016AF8 CB 61 00 C0 */ lfd f27, 0xc0(r1) /* 80019B9C 00016AFC E3 41 00 B8 */ psq_l f26, 184(r1), 0, qr0 /* 80019BA0 00016B00 CB 41 00 B0 */ lfd f26, 0xb0(r1) /* 80019BA4 00016B04 E3 21 00 A8 */ psq_l f25, 168(r1), 0, qr0 /* 80019BA8 00016B08 CB 21 00 A0 */ lfd f25, 0xa0(r1) /* 80019BAC 00016B0C E3 01 00 98 */ psq_l f24, 152(r1), 0, qr0 /* 80019BB0 00016B10 CB 01 00 90 */ lfd f24, 0x90(r1) /* 80019BB4 00016B14 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 80019BB8 00016B18 83 C1 00 88 */ lwz r30, 0x88(r1) /* 80019BBC 00016B1C 83 A1 00 84 */ lwz r29, 0x84(r1) /* 80019BC0 00016B20 80 01 01 14 */ lwz r0, 0x114(r1) /* 80019BC4 00016B24 83 81 00 80 */ lwz r28, 0x80(r1) /* 80019BC8 00016B28 7C 08 03 A6 */ mtlr r0 /* 80019BCC 00016B2C 38 21 01 10 */ addi r1, r1, 0x110 /* 80019BD0 00016B30 4E 80 00 20 */ blr .global "GetAverage__31TReservedAverage<9CVector3f,20>CFv" "GetAverage__31TReservedAverage<9CVector3f,20>CFv": /* 80019BD4 00016B34 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80019BD8 00016B38 7C 08 02 A6 */ mflr r0 /* 80019BDC 00016B3C 90 01 00 24 */ stw r0, 0x24(r1) /* 80019BE0 00016B40 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80019BE4 00016B44 7C 7F 1B 78 */ mr r31, r3 /* 80019BE8 00016B48 80 A4 00 00 */ lwz r5, 0(r4) /* 80019BEC 00016B4C 2C 05 00 00 */ cmpwi r5, 0 /* 80019BF0 00016B50 40 82 00 10 */ bne lbl_80019C00 /* 80019BF4 00016B54 38 00 00 00 */ li r0, 0 /* 80019BF8 00016B58 98 1F 00 0C */ stb r0, 0xc(r31) /* 80019BFC 00016B5C 48 00 00 38 */ b lbl_80019C34 lbl_80019C00: /* 80019C00 00016B60 38 61 00 08 */ addi r3, r1, 8 /* 80019C04 00016B64 38 84 00 04 */ addi r4, r4, 4 /* 80019C08 00016B68 48 00 14 39 */ bl "GetAverageValue<9CVector3f>__FPC9CVector3fi" /* 80019C0C 00016B6C 38 00 00 01 */ li r0, 1 /* 80019C10 00016B70 28 1F 00 00 */ cmplwi r31, 0 /* 80019C14 00016B74 98 1F 00 0C */ stb r0, 0xc(r31) /* 80019C18 00016B78 41 82 00 1C */ beq lbl_80019C34 /* 80019C1C 00016B7C C0 01 00 08 */ lfs f0, 8(r1) /* 80019C20 00016B80 D0 1F 00 00 */ stfs f0, 0(r31) /* 80019C24 00016B84 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80019C28 00016B88 D0 1F 00 04 */ stfs f0, 4(r31) /* 80019C2C 00016B8C C0 01 00 10 */ lfs f0, 0x10(r1) /* 80019C30 00016B90 D0 1F 00 08 */ stfs f0, 8(r31) lbl_80019C34: /* 80019C34 00016B94 80 01 00 24 */ lwz r0, 0x24(r1) /* 80019C38 00016B98 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80019C3C 00016B9C 7C 08 03 A6 */ mtlr r0 /* 80019C40 00016BA0 38 21 00 20 */ addi r1, r1, 0x20 /* 80019C44 00016BA4 4E 80 00 20 */ blr .global sub_80019c48 sub_80019c48: /* 80019C48 00016BA8 80 03 00 00 */ lwz r0, 0(r3) /* 80019C4C 00016BAC 2C 00 00 0A */ cmpwi r0, 0xa /* 80019C50 00016BB0 40 80 00 38 */ bge lbl_80019C88 /* 80019C54 00016BB4 1C 00 00 0C */ mulli r0, r0, 0xc /* 80019C58 00016BB8 7C A3 02 14 */ add r5, r3, r0 /* 80019C5C 00016BBC 34 A5 00 04 */ addic. r5, r5, 4 /* 80019C60 00016BC0 41 82 00 1C */ beq lbl_80019C7C /* 80019C64 00016BC4 C0 04 00 00 */ lfs f0, 0(r4) /* 80019C68 00016BC8 D0 05 00 00 */ stfs f0, 0(r5) /* 80019C6C 00016BCC C0 04 00 04 */ lfs f0, 4(r4) /* 80019C70 00016BD0 D0 05 00 04 */ stfs f0, 4(r5) /* 80019C74 00016BD4 C0 04 00 08 */ lfs f0, 8(r4) /* 80019C78 00016BD8 D0 05 00 08 */ stfs f0, 8(r5) lbl_80019C7C: /* 80019C7C 00016BDC 80 A3 00 00 */ lwz r5, 0(r3) /* 80019C80 00016BE0 38 05 00 01 */ addi r0, r5, 1 /* 80019C84 00016BE4 90 03 00 00 */ stw r0, 0(r3) lbl_80019C88: /* 80019C88 00016BE8 80 A3 00 00 */ lwz r5, 0(r3) /* 80019C8C 00016BEC 35 25 FF FF */ addic. r9, r5, -1 /* 80019C90 00016BF0 1C 09 00 0C */ mulli r0, r9, 0xc /* 80019C94 00016BF4 7D 25 4B 78 */ mr r5, r9 /* 80019C98 00016BF8 7D 03 02 14 */ add r8, r3, r0 /* 80019C9C 00016BFC 39 08 00 04 */ addi r8, r8, 4 /* 80019CA0 00016C00 40 81 00 E8 */ ble lbl_80019D88 /* 80019CA4 00016C04 55 20 F0 BF */ rlwinm. r0, r9, 0x1e, 2, 0x1f /* 80019CA8 00016C08 7C 09 03 A6 */ mtctr r0 /* 80019CAC 00016C0C 41 82 00 A8 */ beq lbl_80019D54 lbl_80019CB0: /* 80019CB0 00016C10 38 C9 FF FF */ addi r6, r9, -1 /* 80019CB4 00016C14 1C 06 00 0C */ mulli r0, r6, 0xc /* 80019CB8 00016C18 38 C9 FF FE */ addi r6, r9, -2 /* 80019CBC 00016C1C 7C E3 02 14 */ add r7, r3, r0 /* 80019CC0 00016C20 C0 07 00 04 */ lfs f0, 4(r7) /* 80019CC4 00016C24 1C 06 00 0C */ mulli r0, r6, 0xc /* 80019CC8 00016C28 38 C9 FF FD */ addi r6, r9, -3 /* 80019CCC 00016C2C D0 08 00 00 */ stfs f0, 0(r8) /* 80019CD0 00016C30 C0 07 00 08 */ lfs f0, 8(r7) /* 80019CD4 00016C34 D0 08 00 04 */ stfs f0, 4(r8) /* 80019CD8 00016C38 C0 07 00 0C */ lfs f0, 0xc(r7) /* 80019CDC 00016C3C 7C E3 02 14 */ add r7, r3, r0 /* 80019CE0 00016C40 1C 06 00 0C */ mulli r0, r6, 0xc /* 80019CE4 00016C44 38 C9 FF FC */ addi r6, r9, -4 /* 80019CE8 00016C48 D0 08 00 08 */ stfs f0, 8(r8) /* 80019CEC 00016C4C 39 29 FF FC */ addi r9, r9, -4 /* 80019CF0 00016C50 C0 07 00 04 */ lfs f0, 4(r7) /* 80019CF4 00016C54 D0 08 FF F4 */ stfs f0, -0xc(r8) /* 80019CF8 00016C58 C0 07 00 08 */ lfs f0, 8(r7) /* 80019CFC 00016C5C D0 08 FF F8 */ stfs f0, -8(r8) /* 80019D00 00016C60 C0 07 00 0C */ lfs f0, 0xc(r7) /* 80019D04 00016C64 7C E3 02 14 */ add r7, r3, r0 /* 80019D08 00016C68 1C 06 00 0C */ mulli r0, r6, 0xc /* 80019D0C 00016C6C D0 08 FF FC */ stfs f0, -4(r8) /* 80019D10 00016C70 C0 07 00 04 */ lfs f0, 4(r7) /* 80019D14 00016C74 D0 08 FF E8 */ stfs f0, -0x18(r8) /* 80019D18 00016C78 C0 07 00 08 */ lfs f0, 8(r7) /* 80019D1C 00016C7C D0 08 FF EC */ stfs f0, -0x14(r8) /* 80019D20 00016C80 C0 07 00 0C */ lfs f0, 0xc(r7) /* 80019D24 00016C84 7C E3 02 14 */ add r7, r3, r0 /* 80019D28 00016C88 D0 08 FF F0 */ stfs f0, -0x10(r8) /* 80019D2C 00016C8C C0 07 00 04 */ lfs f0, 4(r7) /* 80019D30 00016C90 D0 08 FF DC */ stfs f0, -0x24(r8) /* 80019D34 00016C94 C0 07 00 08 */ lfs f0, 8(r7) /* 80019D38 00016C98 D0 08 FF E0 */ stfs f0, -0x20(r8) /* 80019D3C 00016C9C C0 07 00 0C */ lfs f0, 0xc(r7) /* 80019D40 00016CA0 D0 08 FF E4 */ stfs f0, -0x1c(r8) /* 80019D44 00016CA4 39 08 FF D0 */ addi r8, r8, -48 /* 80019D48 00016CA8 42 00 FF 68 */ bdnz lbl_80019CB0 /* 80019D4C 00016CAC 70 A5 00 03 */ andi. r5, r5, 3 /* 80019D50 00016CB0 41 82 00 38 */ beq lbl_80019D88 lbl_80019D54: /* 80019D54 00016CB4 7C A9 03 A6 */ mtctr r5 lbl_80019D58: /* 80019D58 00016CB8 38 C9 FF FF */ addi r6, r9, -1 /* 80019D5C 00016CBC 39 29 FF FF */ addi r9, r9, -1 /* 80019D60 00016CC0 1C 06 00 0C */ mulli r0, r6, 0xc /* 80019D64 00016CC4 7C E3 02 14 */ add r7, r3, r0 /* 80019D68 00016CC8 C0 07 00 04 */ lfs f0, 4(r7) /* 80019D6C 00016CCC D0 08 00 00 */ stfs f0, 0(r8) /* 80019D70 00016CD0 C0 07 00 08 */ lfs f0, 8(r7) /* 80019D74 00016CD4 D0 08 00 04 */ stfs f0, 4(r8) /* 80019D78 00016CD8 C0 07 00 0C */ lfs f0, 0xc(r7) /* 80019D7C 00016CDC D0 08 00 08 */ stfs f0, 8(r8) /* 80019D80 00016CE0 39 08 FF F4 */ addi r8, r8, -12 /* 80019D84 00016CE4 42 00 FF D4 */ bdnz lbl_80019D58 lbl_80019D88: /* 80019D88 00016CE8 C0 04 00 00 */ lfs f0, 0(r4) /* 80019D8C 00016CEC D0 03 00 04 */ stfs f0, 4(r3) /* 80019D90 00016CF0 C0 04 00 04 */ lfs f0, 4(r4) /* 80019D94 00016CF4 D0 03 00 08 */ stfs f0, 8(r3) /* 80019D98 00016CF8 C0 04 00 08 */ lfs f0, 8(r4) /* 80019D9C 00016CFC D0 03 00 0C */ stfs f0, 0xc(r3) /* 80019DA0 00016D00 4E 80 00 20 */ blr .global ResetAimTargetPrediction__7CPlayerF9TUniqueId ResetAimTargetPrediction__7CPlayerF9TUniqueId: /* 80019DA4 00016D04 A0 A4 00 00 */ lhz r5, 0(r4) /* 80019DA8 00016D08 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80019DAC 00016D0C 7C 05 00 40 */ cmplw r5, r0 /* 80019DB0 00016D10 41 82 00 10 */ beq lbl_80019DC0 /* 80019DB4 00016D14 A0 03 03 F4 */ lhz r0, 0x3f4(r3) /* 80019DB8 00016D18 7C 00 28 40 */ cmplw r0, r5 /* 80019DBC 00016D1C 41 82 00 58 */ beq lbl_80019E14 lbl_80019DC0: /* 80019DC0 00016D20 80 E3 04 04 */ lwz r7, 0x404(r3) /* 80019DC4 00016D24 38 A0 00 00 */ li r5, 0 /* 80019DC8 00016D28 2C 07 00 00 */ cmpwi r7, 0 /* 80019DCC 00016D2C 40 81 00 40 */ ble lbl_80019E0C /* 80019DD0 00016D30 2C 07 00 08 */ cmpwi r7, 8 /* 80019DD4 00016D34 38 C7 FF F8 */ addi r6, r7, -8 /* 80019DD8 00016D38 40 81 00 20 */ ble lbl_80019DF8 /* 80019DDC 00016D3C 38 06 00 07 */ addi r0, r6, 7 /* 80019DE0 00016D40 54 00 E8 FE */ srwi r0, r0, 3 /* 80019DE4 00016D44 7C 09 03 A6 */ mtctr r0 /* 80019DE8 00016D48 2C 06 00 00 */ cmpwi r6, 0 /* 80019DEC 00016D4C 40 81 00 0C */ ble lbl_80019DF8 lbl_80019DF0: /* 80019DF0 00016D50 38 A5 00 08 */ addi r5, r5, 8 /* 80019DF4 00016D54 42 00 FF FC */ bdnz lbl_80019DF0 lbl_80019DF8: /* 80019DF8 00016D58 7C 05 38 50 */ subf r0, r5, r7 /* 80019DFC 00016D5C 7C 09 03 A6 */ mtctr r0 /* 80019E00 00016D60 7C 05 38 00 */ cmpw r5, r7 /* 80019E04 00016D64 40 80 00 08 */ bge lbl_80019E0C lbl_80019E08: /* 80019E08 00016D68 42 00 00 00 */ bdnz lbl_80019E08 lbl_80019E0C: /* 80019E0C 00016D6C 38 00 00 00 */ li r0, 0 /* 80019E10 00016D70 90 03 04 04 */ stw r0, 0x404(r3) lbl_80019E14: /* 80019E14 00016D74 A0 04 00 00 */ lhz r0, 0(r4) /* 80019E18 00016D78 B0 03 03 F4 */ sth r0, 0x3f4(r3) /* 80019E1C 00016D7C 4E 80 00 20 */ blr .global UpdateGunState__7CPlayerFRC11CFinalInputR13CStateManager UpdateGunState__7CPlayerFRC11CFinalInputR13CStateManager: /* 80019E20 00016D80 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80019E24 00016D84 7C 08 02 A6 */ mflr r0 /* 80019E28 00016D88 90 01 00 34 */ stw r0, 0x34(r1) /* 80019E2C 00016D8C DB E1 00 20 */ stfd f31, 0x20(r1) /* 80019E30 00016D90 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80019E34 00016D94 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80019E38 00016D98 93 C1 00 18 */ stw r30, 0x18(r1) /* 80019E3C 00016D9C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80019E40 00016DA0 93 81 00 10 */ stw r28, 0x10(r1) /* 80019E44 00016DA4 7C 7D 1B 78 */ mr r29, r3 /* 80019E48 00016DA8 7C 9C 23 78 */ mr r28, r4 /* 80019E4C 00016DAC 80 03 04 98 */ lwz r0, 0x498(r3) /* 80019E50 00016DB0 7C BE 2B 78 */ mr r30, r5 /* 80019E54 00016DB4 C3 E4 00 00 */ lfs f31, 0(r4) /* 80019E58 00016DB8 2C 00 00 02 */ cmpwi r0, 2 /* 80019E5C 00016DBC 41 82 00 24 */ beq lbl_80019E80 /* 80019E60 00016DC0 40 80 00 14 */ bge lbl_80019E74 /* 80019E64 00016DC4 2C 00 00 00 */ cmpwi r0, 0 /* 80019E68 00016DC8 41 82 01 4C */ beq lbl_80019FB4 /* 80019E6C 00016DCC 40 80 01 14 */ bge lbl_80019F80 /* 80019E70 00016DD0 48 00 02 14 */ b lbl_8001A084 lbl_80019E74: /* 80019E74 00016DD4 2C 00 00 04 */ cmpwi r0, 4 /* 80019E78 00016DD8 40 80 02 0C */ bge lbl_8001A084 /* 80019E7C 00016DDC 48 00 01 E4 */ b lbl_8001A060 lbl_80019E80: /* 80019E80 00016DE0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80019E84 00016DE4 3B E0 00 00 */ li r31, 0 /* 80019E88 00016DE8 88 03 02 29 */ lbz r0, 0x229(r3) /* 80019E8C 00016DEC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 80019E90 00016DF0 41 82 00 78 */ beq lbl_80019F08 /* 80019E94 00016DF4 38 60 00 17 */ li r3, 0x17 /* 80019E98 00016DF8 4B FF 29 39 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019E9C 00016DFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019EA0 00016E00 41 82 00 08 */ beq lbl_80019EA8 /* 80019EA4 00016E04 3B E0 00 01 */ li r31, 1 lbl_80019EA8: /* 80019EA8 00016E08 7F 84 E3 78 */ mr r4, r28 /* 80019EAC 00016E0C 38 60 00 0B */ li r3, 0xb /* 80019EB0 00016E10 4B FF 29 C5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019EB4 00016E14 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019EB8 00016E18 40 82 00 B0 */ bne lbl_80019F68 /* 80019EBC 00016E1C 7F 84 E3 78 */ mr r4, r28 /* 80019EC0 00016E20 38 60 00 0C */ li r3, 0xc /* 80019EC4 00016E24 4B FF 29 B1 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019EC8 00016E28 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019ECC 00016E2C 40 82 00 9C */ bne lbl_80019F68 /* 80019ED0 00016E30 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80019ED4 00016E34 88 03 02 29 */ lbz r0, 0x229(r3) /* 80019ED8 00016E38 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80019EDC 00016E3C 41 82 00 8C */ beq lbl_80019F68 /* 80019EE0 00016E40 C0 3D 04 9C */ lfs f1, 0x49c(r29) /* 80019EE4 00016E44 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80019EE8 00016E48 EC 21 F8 28 */ fsubs f1, f1, f31 /* 80019EEC 00016E4C D0 3D 04 9C */ stfs f1, 0x49c(r29) /* 80019EF0 00016E50 C0 3D 04 9C */ lfs f1, 0x49c(r29) /* 80019EF4 00016E54 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80019EF8 00016E58 4C 40 13 82 */ cror 2, 0, 2 /* 80019EFC 00016E5C 40 82 00 6C */ bne lbl_80019F68 /* 80019F00 00016E60 3B E0 00 01 */ li r31, 1 /* 80019F04 00016E64 48 00 00 64 */ b lbl_80019F68 lbl_80019F08: /* 80019F08 00016E68 38 60 00 0B */ li r3, 0xb /* 80019F0C 00016E6C 4B FF 29 69 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019F10 00016E70 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019F14 00016E74 40 82 00 48 */ bne lbl_80019F5C /* 80019F18 00016E78 7F 84 E3 78 */ mr r4, r28 /* 80019F1C 00016E7C 38 60 00 0C */ li r3, 0xc /* 80019F20 00016E80 4B FF 29 55 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019F24 00016E84 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019F28 00016E88 40 82 00 34 */ bne lbl_80019F5C /* 80019F2C 00016E8C 80 7D 04 90 */ lwz r3, 0x490(r29) /* 80019F30 00016E90 88 03 08 33 */ lbz r0, 0x833(r3) /* 80019F34 00016E94 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80019F38 00016E98 41 82 00 24 */ beq lbl_80019F5C /* 80019F3C 00016E9C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80019F40 00016EA0 88 03 02 29 */ lbz r0, 0x229(r3) /* 80019F44 00016EA4 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80019F48 00016EA8 41 82 00 20 */ beq lbl_80019F68 /* 80019F4C 00016EAC C0 1D 04 9C */ lfs f0, 0x49c(r29) /* 80019F50 00016EB0 EC 00 F8 28 */ fsubs f0, f0, f31 /* 80019F54 00016EB4 D0 1D 04 9C */ stfs f0, 0x49c(r29) /* 80019F58 00016EB8 48 00 00 10 */ b lbl_80019F68 lbl_80019F5C: /* 80019F5C 00016EBC 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) /* 80019F60 00016EC0 C0 03 00 40 */ lfs f0, 0x40(r3) /* 80019F64 00016EC4 D0 1D 04 9C */ stfs f0, 0x49c(r29) lbl_80019F68: /* 80019F68 00016EC8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 80019F6C 00016ECC 41 82 01 18 */ beq lbl_8001A084 /* 80019F70 00016ED0 7F A3 EB 78 */ mr r3, r29 /* 80019F74 00016ED4 7F C4 F3 78 */ mr r4, r30 /* 80019F78 00016ED8 48 00 01 F5 */ bl HolsterGun__7CPlayerFR13CStateManager /* 80019F7C 00016EDC 48 00 01 08 */ b lbl_8001A084 lbl_80019F80: /* 80019F80 00016EE0 C0 3D 04 9C */ lfs f1, 0x49c(r29) /* 80019F84 00016EE4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 80019F88 00016EE8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80019F8C 00016EEC 40 81 00 10 */ ble lbl_80019F9C /* 80019F90 00016EF0 EC 01 F8 28 */ fsubs f0, f1, f31 /* 80019F94 00016EF4 D0 1D 04 9C */ stfs f0, 0x49c(r29) /* 80019F98 00016EF8 48 00 00 EC */ b lbl_8001A084 lbl_80019F9C: /* 80019F9C 00016EFC 38 00 00 02 */ li r0, 2 /* 80019FA0 00016F00 90 1D 04 98 */ stw r0, 0x498(r29) /* 80019FA4 00016F04 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) /* 80019FA8 00016F08 C0 03 00 40 */ lfs f0, 0x40(r3) /* 80019FAC 00016F0C D0 1D 04 9C */ stfs f0, 0x49c(r29) /* 80019FB0 00016F10 48 00 00 D4 */ b lbl_8001A084 lbl_80019FB4: /* 80019FB4 00016F14 3B E0 00 00 */ li r31, 0 /* 80019FB8 00016F18 38 60 00 0B */ li r3, 0xb /* 80019FBC 00016F1C 4B FF 28 B9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019FC0 00016F20 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019FC4 00016F24 40 82 00 24 */ bne lbl_80019FE8 /* 80019FC8 00016F28 7F 84 E3 78 */ mr r4, r28 /* 80019FCC 00016F2C 38 60 00 0C */ li r3, 0xc /* 80019FD0 00016F30 4B FF 28 A5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 80019FD4 00016F34 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80019FD8 00016F38 40 82 00 10 */ bne lbl_80019FE8 /* 80019FDC 00016F3C 80 1D 03 B8 */ lwz r0, 0x3b8(r29) /* 80019FE0 00016F40 2C 00 00 00 */ cmpwi r0, 0 /* 80019FE4 00016F44 40 82 00 0C */ bne lbl_80019FF0 lbl_80019FE8: /* 80019FE8 00016F48 3B E0 00 01 */ li r31, 1 /* 80019FEC 00016F4C 48 00 00 2C */ b lbl_8001A018 lbl_80019FF0: /* 80019FF0 00016F50 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 80019FF4 00016F54 88 03 02 29 */ lbz r0, 0x229(r3) /* 80019FF8 00016F58 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 80019FFC 00016F5C 41 82 00 1C */ beq lbl_8001A018 /* 8001A000 00016F60 7F 84 E3 78 */ mr r4, r28 /* 8001A004 00016F64 38 60 00 17 */ li r3, 0x17 /* 8001A008 00016F68 4B FF 27 C9 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 8001A00C 00016F6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8001A010 00016F70 41 82 00 08 */ beq lbl_8001A018 /* 8001A014 00016F74 3B E0 00 01 */ li r31, 1 lbl_8001A018: /* 8001A018 00016F78 80 1D 03 B8 */ lwz r0, 0x3b8(r29) /* 8001A01C 00016F7C 2C 00 00 00 */ cmpwi r0, 0 /* 8001A020 00016F80 40 82 00 24 */ bne lbl_8001A044 /* 8001A024 00016F84 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 8001A028 00016F88 80 63 00 00 */ lwz r3, 0(r3) /* 8001A02C 00016F8C 80 03 00 14 */ lwz r0, 0x14(r3) /* 8001A030 00016F90 2C 00 00 02 */ cmpwi r0, 2 /* 8001A034 00016F94 41 82 00 10 */ beq lbl_8001A044 /* 8001A038 00016F98 80 03 00 18 */ lwz r0, 0x18(r3) /* 8001A03C 00016F9C 2C 00 00 02 */ cmpwi r0, 2 /* 8001A040 00016FA0 40 82 00 08 */ bne lbl_8001A048 lbl_8001A044: /* 8001A044 00016FA4 3B E0 00 00 */ li r31, 0 lbl_8001A048: /* 8001A048 00016FA8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 8001A04C 00016FAC 41 82 00 38 */ beq lbl_8001A084 /* 8001A050 00016FB0 7F A3 EB 78 */ mr r3, r29 /* 8001A054 00016FB4 7F C4 F3 78 */ mr r4, r30 /* 8001A058 00016FB8 48 00 00 55 */ bl DrawGun__7CPlayerFR13CStateManager /* 8001A05C 00016FBC 48 00 00 28 */ b lbl_8001A084 lbl_8001A060: /* 8001A060 00016FC0 C0 3D 04 9C */ lfs f1, 0x49c(r29) /* 8001A064 00016FC4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001A068 00016FC8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8001A06C 00016FCC 40 81 00 10 */ ble lbl_8001A07C /* 8001A070 00016FD0 EC 01 F8 28 */ fsubs f0, f1, f31 /* 8001A074 00016FD4 D0 1D 04 9C */ stfs f0, 0x49c(r29) /* 8001A078 00016FD8 48 00 00 0C */ b lbl_8001A084 lbl_8001A07C: /* 8001A07C 00016FDC 38 00 00 00 */ li r0, 0 /* 8001A080 00016FE0 90 1D 04 98 */ stw r0, 0x498(r29) lbl_8001A084: /* 8001A084 00016FE4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8001A088 00016FE8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8001A08C 00016FEC CB E1 00 20 */ lfd f31, 0x20(r1) /* 8001A090 00016FF0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8001A094 00016FF4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8001A098 00016FF8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8001A09C 00016FFC 83 81 00 10 */ lwz r28, 0x10(r1) /* 8001A0A0 00017000 7C 08 03 A6 */ mtlr r0 /* 8001A0A4 00017004 38 21 00 30 */ addi r1, r1, 0x30 /* 8001A0A8 00017008 4E 80 00 20 */ blr .global DrawGun__7CPlayerFR13CStateManager DrawGun__7CPlayerFR13CStateManager: /* 8001A0AC 0001700C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001A0B0 00017010 7C 08 02 A6 */ mflr r0 /* 8001A0B4 00017014 90 01 00 14 */ stw r0, 0x14(r1) /* 8001A0B8 00017018 93 E1 00 0C */ stw r31, 0xc(r1) /* 8001A0BC 0001701C 7C 9F 23 78 */ mr r31, r4 /* 8001A0C0 00017020 93 C1 00 08 */ stw r30, 8(r1) /* 8001A0C4 00017024 7C 7E 1B 78 */ mr r30, r3 /* 8001A0C8 00017028 80 03 04 98 */ lwz r0, 0x498(r3) /* 8001A0CC 0001702C 2C 00 00 00 */ cmpwi r0, 0 /* 8001A0D0 00017030 40 82 00 30 */ bne lbl_8001A100 /* 8001A0D4 00017034 48 16 11 D5 */ bl InGrappleJumpCooldown__7CPlayerCFv /* 8001A0D8 00017038 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8001A0DC 0001703C 41 82 00 08 */ beq lbl_8001A0E4 /* 8001A0E0 00017040 48 00 00 20 */ b lbl_8001A100 lbl_8001A0E4: /* 8001A0E4 00017044 38 00 00 01 */ li r0, 1 /* 8001A0E8 00017048 C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) /* 8001A0EC 0001704C 90 1E 04 98 */ stw r0, 0x498(r30) /* 8001A0F0 00017050 7F E4 FB 78 */ mr r4, r31 /* 8001A0F4 00017054 D0 1E 04 9C */ stfs f0, 0x49c(r30) /* 8001A0F8 00017058 80 7E 04 90 */ lwz r3, 0x490(r30) /* 8001A0FC 0001705C 48 02 38 3D */ bl ResetIdle__10CPlayerGunFR13CStateManager lbl_8001A100: /* 8001A100 00017060 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001A104 00017064 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8001A108 00017068 83 C1 00 08 */ lwz r30, 8(r1) /* 8001A10C 0001706C 7C 08 03 A6 */ mtlr r0 /* 8001A110 00017070 38 21 00 10 */ addi r1, r1, 0x10 /* 8001A114 00017074 4E 80 00 20 */ blr .global ResetGun__7CPlayerFR13CStateManager ResetGun__7CPlayerFR13CStateManager: /* 8001A118 00017078 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8001A11C 0001707C 7C 08 02 A6 */ mflr r0 /* 8001A120 00017080 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001A124 00017084 90 01 00 24 */ stw r0, 0x24(r1) /* 8001A128 00017088 38 00 00 00 */ li r0, 0 /* 8001A12C 0001708C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8001A130 00017090 7C 7F 1B 78 */ mr r31, r3 /* 8001A134 00017094 90 03 04 98 */ stw r0, 0x498(r3) /* 8001A138 00017098 D0 03 04 9C */ stfs f0, 0x49c(r3) /* 8001A13C 0001709C 80 63 04 90 */ lwz r3, 0x490(r3) /* 8001A140 000170A0 48 02 29 19 */ bl CancelFiring__10CPlayerGunFR13CStateManager /* 8001A144 000170A4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A148 000170A8 7F E3 FB 78 */ mr r3, r31 /* 8001A14C 000170AC 38 81 00 08 */ addi r4, r1, 8 /* 8001A150 000170B0 B0 01 00 08 */ sth r0, 8(r1) /* 8001A154 000170B4 4B FF FC 51 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId /* 8001A158 000170B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8001A15C 000170BC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8001A160 000170C0 7C 08 03 A6 */ mtlr r0 /* 8001A164 000170C4 38 21 00 20 */ addi r1, r1, 0x20 /* 8001A168 000170C8 4E 80 00 20 */ blr .global HolsterGun__7CPlayerFR13CStateManager HolsterGun__7CPlayerFR13CStateManager: /* 8001A16C 000170CC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8001A170 000170D0 7C 08 02 A6 */ mflr r0 /* 8001A174 000170D4 90 01 00 24 */ stw r0, 0x24(r1) /* 8001A178 000170D8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8001A17C 000170DC 7C 7F 1B 78 */ mr r31, r3 /* 8001A180 000170E0 80 A3 04 98 */ lwz r5, 0x498(r3) /* 8001A184 000170E4 2C 05 00 00 */ cmpwi r5, 0 /* 8001A188 000170E8 41 82 00 78 */ beq lbl_8001A200 /* 8001A18C 000170EC 2C 05 00 03 */ cmpwi r5, 3 /* 8001A190 000170F0 40 82 00 08 */ bne lbl_8001A198 /* 8001A194 000170F4 48 00 00 6C */ b lbl_8001A200 lbl_8001A198: /* 8001A198 000170F8 80 1F 02 F8 */ lwz r0, 0x2f8(r31) /* 8001A19C 000170FC 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) /* 8001A1A0 00017100 2C 00 00 02 */ cmpwi r0, 2 /* 8001A1A4 00017104 C0 63 00 3C */ lfs f3, 0x3c(r3) /* 8001A1A8 00017108 40 82 00 08 */ bne lbl_8001A1B0 /* 8001A1AC 0001710C C0 62 81 40 */ lfs f3, lbl_805A9E60@sda21(r2) lbl_8001A1B0: /* 8001A1B0 00017110 2C 05 00 01 */ cmpwi r5, 1 /* 8001A1B4 00017114 40 82 00 24 */ bne lbl_8001A1D8 /* 8001A1B8 00017118 C0 3F 04 9C */ lfs f1, 0x49c(r31) /* 8001A1BC 0001711C C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) /* 8001A1C0 00017120 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 8001A1C4 00017124 EC 01 00 24 */ fdivs f0, f1, f0 /* 8001A1C8 00017128 EC 02 00 28 */ fsubs f0, f2, f0 /* 8001A1CC 0001712C EC 03 00 32 */ fmuls f0, f3, f0 /* 8001A1D0 00017130 D0 1F 04 9C */ stfs f0, 0x49c(r31) /* 8001A1D4 00017134 48 00 00 08 */ b lbl_8001A1DC lbl_8001A1D8: /* 8001A1D8 00017138 D0 7F 04 9C */ stfs f3, 0x49c(r31) lbl_8001A1DC: /* 8001A1DC 0001713C 38 00 00 03 */ li r0, 3 /* 8001A1E0 00017140 90 1F 04 98 */ stw r0, 0x498(r31) /* 8001A1E4 00017144 80 7F 04 90 */ lwz r3, 0x490(r31) /* 8001A1E8 00017148 48 02 28 71 */ bl CancelFiring__10CPlayerGunFR13CStateManager /* 8001A1EC 0001714C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A1F0 00017150 7F E3 FB 78 */ mr r3, r31 /* 8001A1F4 00017154 38 81 00 08 */ addi r4, r1, 8 /* 8001A1F8 00017158 B0 01 00 08 */ sth r0, 8(r1) /* 8001A1FC 0001715C 4B FF FB A9 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId lbl_8001A200: /* 8001A200 00017160 80 01 00 24 */ lwz r0, 0x24(r1) /* 8001A204 00017164 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8001A208 00017168 7C 08 03 A6 */ mtlr r0 /* 8001A20C 0001716C 38 21 00 20 */ addi r1, r1, 0x20 /* 8001A210 00017170 4E 80 00 20 */ blr .global IsMorphBallTransitioning__7CPlayerCFv IsMorphBallTransitioning__7CPlayerCFv: /* 8001A214 00017174 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 8001A218 00017178 2C 00 00 04 */ cmpwi r0, 4 /* 8001A21C 0001717C 40 80 00 18 */ bge lbl_8001A234 /* 8001A220 00017180 2C 00 00 02 */ cmpwi r0, 2 /* 8001A224 00017184 40 80 00 08 */ bge lbl_8001A22C /* 8001A228 00017188 48 00 00 0C */ b lbl_8001A234 lbl_8001A22C: /* 8001A22C 0001718C 38 60 00 01 */ li r3, 1 /* 8001A230 00017190 4E 80 00 20 */ blr lbl_8001A234: /* 8001A234 00017194 38 60 00 00 */ li r3, 0 /* 8001A238 00017198 4E 80 00 20 */ blr .global __ct__7CPlayerF9TUniqueIdRC12CTransform4fRC6CAABoxUi9CVector3fffffRC13CMaterialList __ct__7CPlayerF9TUniqueIdRC12CTransform4fRC6CAABoxUi9CVector3fffffRC13CMaterialList: /* 8001A23C 0001719C 94 21 FD 50 */ stwu r1, -0x2b0(r1) /* 8001A240 000171A0 7C 08 02 A6 */ mflr r0 /* 8001A244 000171A4 90 01 02 B4 */ stw r0, 0x2b4(r1) /* 8001A248 000171A8 DB E1 02 A0 */ stfd f31, 0x2a0(r1) /* 8001A24C 000171AC F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 /* 8001A250 000171B0 DB C1 02 90 */ stfd f30, 0x290(r1) /* 8001A254 000171B4 F3 C1 02 98 */ psq_st f30, 664(r1), 0, qr0 /* 8001A258 000171B8 DB A1 02 80 */ stfd f29, 0x280(r1) /* 8001A25C 000171BC F3 A1 02 88 */ psq_st f29, 648(r1), 0, qr0 /* 8001A260 000171C0 DB 81 02 70 */ stfd f28, 0x270(r1) /* 8001A264 000171C4 F3 81 02 78 */ psq_st f28, 632(r1), 0, qr0 /* 8001A268 000171C8 BE E1 02 4C */ stmw r23, 0x24c(r1) /* 8001A26C 000171CC 3D 40 80 3D */ lis r10, lbl_803CC4F8@ha /* 8001A270 000171D0 FF 80 08 90 */ fmr f28, f1 /* 8001A274 000171D4 FF A0 10 90 */ fmr f29, f2 /* 8001A278 000171D8 39 4A C4 F8 */ addi r10, r10, lbl_803CC4F8@l /* 8001A27C 000171DC 7C 7F 1B 78 */ mr r31, r3 /* 8001A280 000171E0 7C 98 23 78 */ mr r24, r4 /* 8001A284 000171E4 FF C0 18 90 */ fmr f30, f3 /* 8001A288 000171E8 FF E0 20 90 */ fmr f31, f4 /* 8001A28C 000171EC 7C B9 2B 78 */ mr r25, r5 /* 8001A290 000171F0 7C DA 33 78 */ mr r26, r6 /* 8001A294 000171F4 7C FB 3B 78 */ mr r27, r7 /* 8001A298 000171F8 7D 1E 43 78 */ mr r30, r8 /* 8001A29C 000171FC 7D 3C 4B 78 */ mr r28, r9 /* 8001A2A0 00017200 38 61 00 50 */ addi r3, r1, 0x50 /* 8001A2A4 00017204 38 8A 00 3F */ addi r4, r10, 0x3f /* 8001A2A8 00017208 4B FE AA 11 */ bl string_l__4rstlFPCc /* 8001A2AC 0001720C 80 8D A3 88 */ lwz r4, kInvalidEditorId@sda21(r13) /* 8001A2B0 00017210 3C 60 80 57 */ lis r3, NullConnectionList__7CEntity@ha /* 8001A2B4 00017214 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 8001A2B8 00017218 38 A3 D4 10 */ addi r5, r3, NullConnectionList__7CEntity@l /* 8001A2BC 0001721C 90 81 00 30 */ stw r4, 0x30(r1) /* 8001A2C0 00017220 38 61 00 94 */ addi r3, r1, 0x94 /* 8001A2C4 00017224 38 81 00 34 */ addi r4, r1, 0x34 /* 8001A2C8 00017228 38 C1 00 30 */ addi r6, r1, 0x30 /* 8001A2CC 0001722C 90 01 00 34 */ stw r0, 0x34(r1) /* 8001A2D0 00017230 48 03 71 B5 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" /* 8001A2D4 00017234 7F 64 DB 78 */ mr r4, r27 /* 8001A2D8 00017238 7F C5 F3 78 */ mr r5, r30 /* 8001A2DC 0001723C 38 61 00 78 */ addi r3, r1, 0x78 /* 8001A2E0 00017240 48 00 0B 79 */ bl MakePlayerAnimres__FUiRC9CVector3f /* 8001A2E4 00017244 38 61 01 AC */ addi r3, r1, 0x1ac /* 8001A2E8 00017248 38 81 00 78 */ addi r4, r1, 0x78 /* 8001A2EC 0001724C 48 0F C8 69 */ bl __ct__10CModelDataFRC8CAnimRes /* 8001A2F0 00017250 38 61 01 44 */ addi r3, r1, 0x144 /* 8001A2F4 00017254 48 00 0B 45 */ bl None__16CActorParametersFv /* 8001A2F8 00017258 48 00 12 3D */ bl Identity__10CAxisAngleFv /* 8001A2FC 0001725C 7C 77 1B 78 */ mr r23, r3 /* 8001A300 00017260 48 00 12 35 */ bl Identity__10CAxisAngleFv /* 8001A304 00017264 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 8001A308 00017268 A1 98 00 00 */ lhz r12, 0(r24) /* 8001A30C 0001726C 3B A4 66 A0 */ addi r29, r4, sZeroVector__9CVector3f@l /* 8001A310 00017270 39 61 01 10 */ addi r11, r1, 0x110 /* 8001A314 00017274 C0 7D 00 00 */ lfs f3, 0(r29) /* 8001A318 00017278 FC 20 E8 90 */ fmr f1, f29 /* 8001A31C 0001727C C0 9D 00 04 */ lfs f4, 4(r29) /* 8001A320 00017280 FC 40 F0 90 */ fmr f2, f30 /* 8001A324 00017284 C0 BD 00 08 */ lfs f5, 8(r29) /* 8001A328 00017288 38 01 01 44 */ addi r0, r1, 0x144 /* 8001A32C 0001728C D0 61 01 10 */ stfs f3, 0x110(r1) /* 8001A330 00017290 7F 28 CB 78 */ mr r8, r25 /* 8001A334 00017294 7F 8A E3 78 */ mr r10, r28 /* 8001A338 00017298 D0 81 01 14 */ stfs f4, 0x114(r1) /* 8001A33C 0001729C 38 81 00 1C */ addi r4, r1, 0x1c /* 8001A340 000172A0 38 C1 00 50 */ addi r6, r1, 0x50 /* 8001A344 000172A4 38 E1 00 94 */ addi r7, r1, 0x94 /* 8001A348 000172A8 D0 A1 01 18 */ stfs f5, 0x118(r1) /* 8001A34C 000172AC 39 21 01 AC */ addi r9, r1, 0x1ac /* 8001A350 000172B0 38 A0 00 01 */ li r5, 1 /* 8001A354 000172B4 C0 03 00 00 */ lfs f0, 0(r3) /* 8001A358 000172B8 D0 01 01 1C */ stfs f0, 0x11c(r1) /* 8001A35C 000172BC C0 03 00 04 */ lfs f0, 4(r3) /* 8001A360 000172C0 D0 01 01 20 */ stfs f0, 0x120(r1) /* 8001A364 000172C4 C0 03 00 08 */ lfs f0, 8(r3) /* 8001A368 000172C8 7F E3 FB 78 */ mr r3, r31 /* 8001A36C 000172CC D0 01 01 24 */ stfs f0, 0x124(r1) /* 8001A370 000172D0 D0 61 01 28 */ stfs f3, 0x128(r1) /* 8001A374 000172D4 D0 81 01 2C */ stfs f4, 0x12c(r1) /* 8001A378 000172D8 D0 A1 01 30 */ stfs f5, 0x130(r1) /* 8001A37C 000172DC C0 17 00 00 */ lfs f0, 0(r23) /* 8001A380 000172E0 D0 01 01 34 */ stfs f0, 0x134(r1) /* 8001A384 000172E4 C0 17 00 04 */ lfs f0, 4(r23) /* 8001A388 000172E8 D0 01 01 38 */ stfs f0, 0x138(r1) /* 8001A38C 000172EC C0 17 00 08 */ lfs f0, 8(r23) /* 8001A390 000172F0 D0 01 01 3C */ stfs f0, 0x13c(r1) /* 8001A394 000172F4 D3 81 01 40 */ stfs f28, 0x140(r1) /* 8001A398 000172F8 B1 81 00 1C */ sth r12, 0x1c(r1) /* 8001A39C 000172FC 93 41 00 08 */ stw r26, 8(r1) /* 8001A3A0 00017300 91 61 00 0C */ stw r11, 0xc(r1) /* 8001A3A4 00017304 90 01 00 10 */ stw r0, 0x10(r1) /* 8001A3A8 00017308 48 10 21 09 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" /* 8001A3AC 0001730C 38 61 01 44 */ addi r3, r1, 0x144 /* 8001A3B0 00017310 38 80 FF FF */ li r4, -1 /* 8001A3B4 00017314 48 0E C2 55 */ bl __dt__16CLightParametersFv /* 8001A3B8 00017318 38 61 01 AC */ addi r3, r1, 0x1ac /* 8001A3BC 0001731C 38 80 FF FF */ li r4, -1 /* 8001A3C0 00017320 48 0F C6 8D */ bl __dt__10CModelDataFv /* 8001A3C4 00017324 80 01 00 9C */ lwz r0, 0x9c(r1) /* 8001A3C8 00017328 80 61 00 A4 */ lwz r3, 0xa4(r1) /* 8001A3CC 0001732C 1C 00 00 0C */ mulli r0, r0, 0xc /* 8001A3D0 00017330 90 61 00 24 */ stw r3, 0x24(r1) /* 8001A3D4 00017334 7C 64 1B 78 */ mr r4, r3 /* 8001A3D8 00017338 7C 03 02 14 */ add r0, r3, r0 /* 8001A3DC 0001733C 90 61 00 20 */ stw r3, 0x20(r1) /* 8001A3E0 00017340 90 01 00 2C */ stw r0, 0x2c(r1) /* 8001A3E4 00017344 90 01 00 28 */ stw r0, 0x28(r1) /* 8001A3E8 00017348 48 00 00 08 */ b lbl_8001A3F0 lbl_8001A3EC: /* 8001A3EC 0001734C 38 84 00 0C */ addi r4, r4, 0xc lbl_8001A3F0: /* 8001A3F0 00017350 7C 04 00 40 */ cmplw r4, r0 /* 8001A3F4 00017354 40 82 FF F8 */ bne lbl_8001A3EC /* 8001A3F8 00017358 28 03 00 00 */ cmplwi r3, 0 /* 8001A3FC 0001735C 41 82 00 08 */ beq lbl_8001A404 /* 8001A400 00017360 48 2F B5 31 */ bl Free__7CMemoryFPCv lbl_8001A404: /* 8001A404 00017364 38 61 00 50 */ addi r3, r1, 0x50 /* 8001A408 00017368 48 32 36 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8001A40C 0001736C 3C 60 80 3E */ lis r3, lbl_803D96E8@ha /* 8001A410 00017370 38 00 00 00 */ li r0, 0 /* 8001A414 00017374 38 63 96 E8 */ addi r3, r3, lbl_803D96E8@l /* 8001A418 00017378 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001A41C 0001737C 90 7F 00 00 */ stw r3, 0(r31) /* 8001A420 00017380 38 7F 02 74 */ addi r3, r31, 0x274 /* 8001A424 00017384 38 80 00 04 */ li r4, 4 /* 8001A428 00017388 90 1F 02 58 */ stw r0, 0x258(r31) /* 8001A42C 0001738C 90 1F 02 60 */ stw r0, 0x260(r31) /* 8001A430 00017390 90 1F 02 64 */ stw r0, 0x264(r31) /* 8001A434 00017394 90 1F 02 68 */ stw r0, 0x268(r31) /* 8001A438 00017398 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A43C 0001739C B0 1F 02 6C */ sth r0, 0x26c(r31) /* 8001A440 000173A0 D0 1F 02 70 */ stfs f0, 0x270(r31) /* 8001A444 000173A4 48 19 A8 81 */ bl __ct__18CPlayerEnergyDrainFUi /* 8001A448 000173A8 C0 82 81 0C */ lfs f4, lbl_805A9E2C@sda21(r2) /* 8001A44C 000173AC 39 00 00 00 */ li r8, 0 /* 8001A450 000173B0 C0 02 82 50 */ lfs f0, lbl_805A9F70@sda21(r2) /* 8001A454 000173B4 38 E0 00 02 */ li r7, 2 /* 8001A458 000173B8 D0 9F 02 88 */ stfs f4, 0x288(r31) /* 8001A45C 000173BC 38 60 00 01 */ li r3, 1 /* 8001A460 000173C0 C0 62 81 00 */ lfs f3, lbl_805A9E20@sda21(r2) /* 8001A464 000173C4 38 00 00 03 */ li r0, 3 /* 8001A468 000173C8 D0 9F 02 8C */ stfs f4, 0x28c(r31) /* 8001A46C 000173CC D0 9F 02 90 */ stfs f4, 0x290(r31) /* 8001A470 000173D0 D0 9F 02 94 */ stfs f4, 0x294(r31) /* 8001A474 000173D4 91 1F 02 98 */ stw r8, 0x298(r31) /* 8001A478 000173D8 D0 9F 02 9C */ stfs f4, 0x29c(r31) /* 8001A47C 000173DC D0 9F 02 A0 */ stfs f4, 0x2a0(r31) /* 8001A480 000173E0 99 1F 02 A4 */ stb r8, 0x2a4(r31) /* 8001A484 000173E4 D0 1F 02 A8 */ stfs f0, 0x2a8(r31) /* 8001A488 000173E8 91 1F 02 AC */ stw r8, 0x2ac(r31) /* 8001A48C 000173EC 90 FF 02 B0 */ stw r7, 0x2b0(r31) /* 8001A490 000173F0 91 1F 02 B4 */ stw r8, 0x2b4(r31) /* 8001A494 000173F4 90 7F 02 D0 */ stw r3, 0x2d0(r31) /* 8001A498 000173F8 D0 9F 02 D4 */ stfs f4, 0x2d4(r31) /* 8001A49C 000173FC C0 1A 00 00 */ lfs f0, 0(r26) /* 8001A4A0 00017400 D0 1F 02 D8 */ stfs f0, 0x2d8(r31) /* 8001A4A4 00017404 C0 1A 00 04 */ lfs f0, 4(r26) /* 8001A4A8 00017408 D0 1F 02 DC */ stfs f0, 0x2dc(r31) /* 8001A4AC 0001740C C0 1A 00 08 */ lfs f0, 8(r26) /* 8001A4B0 00017410 D0 1F 02 E0 */ stfs f0, 0x2e0(r31) /* 8001A4B4 00017414 C0 1A 00 0C */ lfs f0, 0xc(r26) /* 8001A4B8 00017418 D0 1F 02 E4 */ stfs f0, 0x2e4(r31) /* 8001A4BC 0001741C C0 1A 00 10 */ lfs f0, 0x10(r26) /* 8001A4C0 00017420 D0 1F 02 E8 */ stfs f0, 0x2e8(r31) /* 8001A4C4 00017424 C0 1A 00 14 */ lfs f0, 0x14(r26) /* 8001A4C8 00017428 D0 1F 02 EC */ stfs f0, 0x2ec(r31) /* 8001A4CC 0001742C D0 7F 02 F0 */ stfs f3, 0x2f0(r31) /* 8001A4D0 00017430 91 1F 02 F4 */ stw r8, 0x2f4(r31) /* 8001A4D4 00017434 91 1F 02 F8 */ stw r8, 0x2f8(r31) /* 8001A4D8 00017438 91 1F 02 FC */ stw r8, 0x2fc(r31) /* 8001A4DC 0001743C D0 9F 03 00 */ stfs f4, 0x300(r31) /* 8001A4E0 00017440 91 1F 03 04 */ stw r8, 0x304(r31) /* 8001A4E4 00017444 91 1F 03 08 */ stw r8, 0x308(r31) /* 8001A4E8 00017448 90 1F 03 0C */ stw r0, 0x30c(r31) /* 8001A4EC 0001744C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A4F0 00017450 B0 1F 03 10 */ sth r0, 0x310(r31) /* 8001A4F4 00017454 D0 9F 03 14 */ stfs f4, 0x314(r31) /* 8001A4F8 00017458 D0 9F 03 18 */ stfs f4, 0x318(r31) /* 8001A4FC 0001745C D0 9F 03 1C */ stfs f4, 0x31c(r31) /* 8001A500 00017460 D0 9F 03 20 */ stfs f4, 0x320(r31) /* 8001A504 00017464 D0 9F 03 24 */ stfs f4, 0x324(r31) /* 8001A508 00017468 D0 9F 03 28 */ stfs f4, 0x328(r31) /* 8001A50C 0001746C D0 9F 03 2C */ stfs f4, 0x32c(r31) /* 8001A510 00017470 91 1F 03 30 */ stw r8, 0x330(r31) /* 8001A514 00017474 90 7F 03 34 */ stw r3, 0x334(r31) /* 8001A518 00017478 90 7F 03 38 */ stw r3, 0x338(r31) /* 8001A51C 0001747C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A520 00017480 B0 1F 03 3C */ sth r0, 0x33c(r31) /* 8001A524 00017484 D0 9F 03 40 */ stfs f4, 0x340(r31) /* 8001A528 00017488 91 1F 03 48 */ stw r8, 0x348(r31) /* 8001A52C 0001748C 91 1F 03 4C */ stw r8, 0x34c(r31) /* 8001A530 00017490 91 1F 03 50 */ stw r8, 0x350(r31) /* 8001A534 00017494 91 1F 03 58 */ stw r8, 0x358(r31) /* 8001A538 00017498 91 1F 03 5C */ stw r8, 0x35c(r31) /* 8001A53C 0001749C 91 1F 03 60 */ stw r8, 0x360(r31) /* 8001A540 000174A0 91 1F 03 68 */ stw r8, 0x368(r31) /* 8001A544 000174A4 91 1F 03 6C */ stw r8, 0x36c(r31) /* 8001A548 000174A8 91 1F 03 70 */ stw r8, 0x370(r31) /* 8001A54C 000174AC 99 1F 03 74 */ stb r8, 0x374(r31) /* 8001A550 000174B0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 8001A554 000174B4 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 8001A558 000174B8 C0 42 82 44 */ lfs f2, lbl_805A9F64@sda21(r2) /* 8001A55C 000174BC D0 9F 03 78 */ stfs f4, 0x378(r31) /* 8001A560 000174C0 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l /* 8001A564 000174C4 C0 22 81 68 */ lfs f1, lbl_805A9E88@sda21(r2) /* 8001A568 000174C8 38 C4 66 A0 */ addi r6, r4, sZeroVector__9CVector3f@l /* 8001A56C 000174CC 99 1F 03 7C */ stb r8, 0x37c(r31) /* 8001A570 000174D0 38 83 00 1D */ addi r4, r3, 0x1d /* 8001A574 000174D4 C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) /* 8001A578 000174D8 38 60 08 38 */ li r3, 0x838 /* 8001A57C 000174DC D0 9F 03 80 */ stfs f4, 0x380(r31) /* 8001A580 000174E0 38 A0 00 00 */ li r5, 0 /* 8001A584 000174E4 D0 9F 03 84 */ stfs f4, 0x384(r31) /* 8001A588 000174E8 D0 9F 03 88 */ stfs f4, 0x388(r31) /* 8001A58C 000174EC 99 1F 03 8C */ stb r8, 0x38c(r31) /* 8001A590 000174F0 90 FF 03 90 */ stw r7, 0x390(r31) /* 8001A594 000174F4 99 1F 03 94 */ stb r8, 0x394(r31) /* 8001A598 000174F8 D0 5F 03 98 */ stfs f2, 0x398(r31) /* 8001A59C 000174FC 99 1F 03 9C */ stb r8, 0x39c(r31) /* 8001A5A0 00017500 D0 3F 03 A0 */ stfs f1, 0x3a0(r31) /* 8001A5A4 00017504 D0 1F 03 A4 */ stfs f0, 0x3a4(r31) /* 8001A5A8 00017508 91 1F 03 A8 */ stw r8, 0x3a8(r31) /* 8001A5AC 0001750C D0 9F 03 AC */ stfs f4, 0x3ac(r31) /* 8001A5B0 00017510 D0 9F 03 B0 */ stfs f4, 0x3b0(r31) /* 8001A5B4 00017514 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A5B8 00017518 B0 1F 03 B4 */ sth r0, 0x3b4(r31) /* 8001A5BC 0001751C 91 1F 03 B8 */ stw r8, 0x3b8(r31) /* 8001A5C0 00017520 D0 9F 03 BC */ stfs f4, 0x3bc(r31) /* 8001A5C4 00017524 D0 9F 03 C0 */ stfs f4, 0x3c0(r31) /* 8001A5C8 00017528 D0 7F 03 C4 */ stfs f3, 0x3c4(r31) /* 8001A5CC 0001752C D0 9F 03 C8 */ stfs f4, 0x3c8(r31) /* 8001A5D0 00017530 D0 9F 03 CC */ stfs f4, 0x3cc(r31) /* 8001A5D4 00017534 D0 9F 03 D0 */ stfs f4, 0x3d0(r31) /* 8001A5D8 00017538 D0 9F 03 D4 */ stfs f4, 0x3d4(r31) /* 8001A5DC 0001753C D0 9F 03 D8 */ stfs f4, 0x3d8(r31) /* 8001A5E0 00017540 99 1F 03 DC */ stb r8, 0x3dc(r31) /* 8001A5E4 00017544 99 1F 03 DD */ stb r8, 0x3dd(r31) /* 8001A5E8 00017548 99 1F 03 DE */ stb r8, 0x3de(r31) /* 8001A5EC 0001754C D0 9F 03 E0 */ stfs f4, 0x3e0(r31) /* 8001A5F0 00017550 D0 9F 03 E4 */ stfs f4, 0x3e4(r31) /* 8001A5F4 00017554 D0 9F 03 E8 */ stfs f4, 0x3e8(r31) /* 8001A5F8 00017558 D0 9F 03 EC */ stfs f4, 0x3ec(r31) /* 8001A5FC 0001755C D0 9F 03 F0 */ stfs f4, 0x3f0(r31) /* 8001A600 00017560 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8001A604 00017564 B0 1F 03 F4 */ sth r0, 0x3f4(r31) /* 8001A608 00017568 C0 06 00 00 */ lfs f0, 0(r6) /* 8001A60C 0001756C D0 1F 03 F8 */ stfs f0, 0x3f8(r31) /* 8001A610 00017570 C0 1D 00 04 */ lfs f0, 4(r29) /* 8001A614 00017574 D0 1F 03 FC */ stfs f0, 0x3fc(r31) /* 8001A618 00017578 C0 1D 00 08 */ lfs f0, 8(r29) /* 8001A61C 0001757C D0 1F 04 00 */ stfs f0, 0x400(r31) /* 8001A620 00017580 91 1F 04 04 */ stw r8, 0x404(r31) /* 8001A624 00017584 C0 06 00 00 */ lfs f0, 0(r6) /* 8001A628 00017588 D0 1F 04 80 */ stfs f0, 0x480(r31) /* 8001A62C 0001758C C0 1D 00 04 */ lfs f0, 4(r29) /* 8001A630 00017590 D0 1F 04 84 */ stfs f0, 0x484(r31) /* 8001A634 00017594 C0 1D 00 08 */ lfs f0, 8(r29) /* 8001A638 00017598 D0 1F 04 88 */ stfs f0, 0x488(r31) /* 8001A63C 0001759C D0 9F 04 8C */ stfs f4, 0x48c(r31) /* 8001A640 000175A0 48 00 08 65 */ bl "__nw__24TOneStatic<10CPlayerGun>FUlPCcPCc" /* 8001A644 000175A4 7C 60 1B 79 */ or. r0, r3, r3 /* 8001A648 000175A8 41 82 00 18 */ beq lbl_8001A660 /* 8001A64C 000175AC A0 18 00 00 */ lhz r0, 0(r24) /* 8001A650 000175B0 38 81 00 18 */ addi r4, r1, 0x18 /* 8001A654 000175B4 B0 01 00 18 */ sth r0, 0x18(r1) /* 8001A658 000175B8 48 02 8B 71 */ bl __ct__10CPlayerGunF9TUniqueId /* 8001A65C 000175BC 7C 60 1B 78 */ mr r0, r3 lbl_8001A660: /* 8001A660 000175C0 90 1F 04 90 */ stw r0, 0x490(r31) /* 8001A664 000175C4 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 8001A668 000175C8 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 8001A66C 000175CC 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l /* 8001A670 000175D0 38 00 00 02 */ li r0, 2 /* 8001A674 000175D4 38 60 02 E0 */ li r3, 0x2e0 /* 8001A678 000175D8 D0 1F 04 94 */ stfs f0, 0x494(r31) /* 8001A67C 000175DC 38 84 00 1D */ addi r4, r4, 0x1d /* 8001A680 000175E0 38 A0 00 00 */ li r5, 0 /* 8001A684 000175E4 90 1F 04 98 */ stw r0, 0x498(r31) /* 8001A688 000175E8 80 CD A1 34 */ lwz r6, gpTweakPlayerGun@sda21(r13) /* 8001A68C 000175EC C0 06 00 40 */ lfs f0, 0x40(r6) /* 8001A690 000175F0 D0 1F 04 9C */ stfs f0, 0x49c(r31) /* 8001A694 000175F4 48 2F B1 D9 */ bl __nw__FUlPCcPCc /* 8001A698 000175F8 7C 60 1B 79 */ or. r0, r3, r3 /* 8001A69C 000175FC 41 82 00 0C */ beq lbl_8001A6A8 /* 8001A6A0 00017600 48 27 D3 2D */ bl __ct__Q27CPlayer12CInputFilterFv /* 8001A6A4 00017604 7C 60 1B 78 */ mr r0, r3 lbl_8001A6A8: /* 8001A6A8 00017608 90 1F 04 A0 */ stw r0, 0x4a0(r31) /* 8001A6AC 0001760C 39 00 00 00 */ li r8, 0 /* 8001A6B0 00017610 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 8001A6B4 00017614 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha /* 8001A6B8 00017618 91 1F 04 A4 */ stw r8, 0x4a4(r31) /* 8001A6BC 0001761C 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l /* 8001A6C0 00017620 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 8001A6C4 00017624 38 E4 66 A0 */ addi r7, r4, sZeroVector__9CVector3f@l /* 8001A6C8 00017628 38 C0 FF FF */ li r6, -1 /* 8001A6CC 0001762C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 8001A6D0 00017630 D0 5F 04 F8 */ stfs f2, 0x4f8(r31) /* 8001A6D4 00017634 38 00 00 01 */ li r0, 1 /* 8001A6D8 00017638 38 83 00 1D */ addi r4, r3, 0x1d /* 8001A6DC 0001763C 38 60 01 08 */ li r3, 0x108 /* 8001A6E0 00017640 D0 5F 04 FC */ stfs f2, 0x4fc(r31) /* 8001A6E4 00017644 38 A0 00 00 */ li r5, 0 /* 8001A6E8 00017648 C0 9F 00 58 */ lfs f4, 0x58(r31) /* 8001A6EC 0001764C C0 7F 00 48 */ lfs f3, 0x48(r31) /* 8001A6F0 00017650 C0 3F 00 38 */ lfs f1, 0x38(r31) /* 8001A6F4 00017654 D0 3F 05 00 */ stfs f1, 0x500(r31) /* 8001A6F8 00017658 D0 7F 05 04 */ stfs f3, 0x504(r31) /* 8001A6FC 0001765C D0 9F 05 08 */ stfs f4, 0x508(r31) /* 8001A700 00017660 C0 9F 00 58 */ lfs f4, 0x58(r31) /* 8001A704 00017664 C0 7F 00 48 */ lfs f3, 0x48(r31) /* 8001A708 00017668 C0 3F 00 38 */ lfs f1, 0x38(r31) /* 8001A70C 0001766C D0 3F 05 0C */ stfs f1, 0x50c(r31) /* 8001A710 00017670 D0 7F 05 10 */ stfs f3, 0x510(r31) /* 8001A714 00017674 D0 9F 05 14 */ stfs f4, 0x514(r31) /* 8001A718 00017678 C0 9F 00 58 */ lfs f4, 0x58(r31) /* 8001A71C 0001767C C0 7F 00 48 */ lfs f3, 0x48(r31) /* 8001A720 00017680 C0 3F 00 38 */ lfs f1, 0x38(r31) /* 8001A724 00017684 D0 3F 05 18 */ stfs f1, 0x518(r31) /* 8001A728 00017688 D0 7F 05 1C */ stfs f3, 0x51c(r31) /* 8001A72C 0001768C D0 9F 05 20 */ stfs f4, 0x520(r31) /* 8001A730 00017690 C0 9F 00 60 */ lfs f4, 0x60(r31) /* 8001A734 00017694 C0 7F 00 50 */ lfs f3, 0x50(r31) /* 8001A738 00017698 C0 3F 00 40 */ lfs f1, 0x40(r31) /* 8001A73C 0001769C D0 3F 05 24 */ stfs f1, 0x524(r31) /* 8001A740 000176A0 D0 7F 05 28 */ stfs f3, 0x528(r31) /* 8001A744 000176A4 D0 9F 05 2C */ stfs f4, 0x52c(r31) /* 8001A748 000176A8 C0 9F 00 58 */ lfs f4, 0x58(r31) /* 8001A74C 000176AC C0 7F 00 48 */ lfs f3, 0x48(r31) /* 8001A750 000176B0 C0 3F 00 38 */ lfs f1, 0x38(r31) /* 8001A754 000176B4 D0 3F 05 30 */ stfs f1, 0x530(r31) /* 8001A758 000176B8 D0 7F 05 34 */ stfs f3, 0x534(r31) /* 8001A75C 000176BC D0 9F 05 38 */ stfs f4, 0x538(r31) /* 8001A760 000176C0 D0 5F 05 3C */ stfs f2, 0x53c(r31) /* 8001A764 000176C4 C0 9F 00 58 */ lfs f4, 0x58(r31) /* 8001A768 000176C8 C0 7F 00 48 */ lfs f3, 0x48(r31) /* 8001A76C 000176CC C0 3F 00 38 */ lfs f1, 0x38(r31) /* 8001A770 000176D0 D0 3F 05 40 */ stfs f1, 0x540(r31) /* 8001A774 000176D4 D0 7F 05 44 */ stfs f3, 0x544(r31) /* 8001A778 000176D8 D0 9F 05 48 */ stfs f4, 0x548(r31) /* 8001A77C 000176DC C0 9F 00 58 */ lfs f4, 0x58(r31) /* 8001A780 000176E0 C0 7F 00 48 */ lfs f3, 0x48(r31) /* 8001A784 000176E4 C0 3F 00 38 */ lfs f1, 0x38(r31) /* 8001A788 000176E8 D0 3F 05 4C */ stfs f1, 0x54c(r31) /* 8001A78C 000176EC D0 7F 05 50 */ stfs f3, 0x550(r31) /* 8001A790 000176F0 D0 9F 05 54 */ stfs f4, 0x554(r31) /* 8001A794 000176F4 99 1F 05 58 */ stb r8, 0x558(r31) /* 8001A798 000176F8 D0 5F 05 5C */ stfs f2, 0x55c(r31) /* 8001A79C 000176FC D0 5F 05 60 */ stfs f2, 0x560(r31) /* 8001A7A0 00017700 C0 27 00 00 */ lfs f1, 0(r7) /* 8001A7A4 00017704 D0 3F 05 64 */ stfs f1, 0x564(r31) /* 8001A7A8 00017708 C0 3D 00 04 */ lfs f1, 4(r29) /* 8001A7AC 0001770C D0 3F 05 68 */ stfs f1, 0x568(r31) /* 8001A7B0 00017710 C0 3D 00 08 */ lfs f1, 8(r29) /* 8001A7B4 00017714 D0 3F 05 6C */ stfs f1, 0x56c(r31) /* 8001A7B8 00017718 D0 5F 05 70 */ stfs f2, 0x570(r31) /* 8001A7BC 0001771C D0 5F 05 74 */ stfs f2, 0x574(r31) /* 8001A7C0 00017720 D0 5F 05 78 */ stfs f2, 0x578(r31) /* 8001A7C4 00017724 91 1F 05 7C */ stw r8, 0x57c(r31) /* 8001A7C8 00017728 91 1F 05 80 */ stw r8, 0x580(r31) /* 8001A7CC 0001772C 90 DF 05 84 */ stw r6, 0x584(r31) /* 8001A7D0 00017730 D0 1F 05 88 */ stfs f0, 0x588(r31) /* 8001A7D4 00017734 D0 5F 05 8C */ stfs f2, 0x58c(r31) /* 8001A7D8 00017738 98 1F 05 90 */ stb r0, 0x590(r31) /* 8001A7DC 0001773C 91 1F 05 94 */ stw r8, 0x594(r31) /* 8001A7E0 00017740 91 1F 06 58 */ stw r8, 0x658(r31) /* 8001A7E4 00017744 91 1F 07 1C */ stw r8, 0x71c(r31) /* 8001A7E8 00017748 91 1F 07 34 */ stw r8, 0x734(r31) /* 8001A7EC 0001774C 91 1F 07 38 */ stw r8, 0x738(r31) /* 8001A7F0 00017750 91 1F 07 3C */ stw r8, 0x73c(r31) /* 8001A7F4 00017754 D0 5F 07 40 */ stfs f2, 0x740(r31) /* 8001A7F8 00017758 D0 5F 07 44 */ stfs f2, 0x744(r31) /* 8001A7FC 0001775C D0 5F 07 48 */ stfs f2, 0x748(r31) /* 8001A800 00017760 D0 1F 07 4C */ stfs f0, 0x74c(r31) /* 8001A804 00017764 D0 5F 07 50 */ stfs f2, 0x750(r31) /* 8001A808 00017768 91 1F 07 54 */ stw r8, 0x754(r31) /* 8001A80C 0001776C D0 5F 07 58 */ stfs f2, 0x758(r31) /* 8001A810 00017770 91 1F 07 5C */ stw r8, 0x75c(r31) /* 8001A814 00017774 99 1F 07 60 */ stb r8, 0x760(r31) /* 8001A818 00017778 D0 5F 07 64 */ stfs f2, 0x764(r31) /* 8001A81C 0001777C 91 1F 07 68 */ stw r8, 0x768(r31) /* 8001A820 00017780 48 00 06 E5 */ bl "__nw__30TOneStatic<16CPlayerCameraBob>FUlPCcPCc" /* 8001A824 00017784 7C 77 1B 79 */ or. r23, r3, r3 /* 8001A828 00017788 41 82 00 2C */ beq lbl_8001A854 /* 8001A82C 0001778C C0 2D 87 B8 */ lfs f1, lbl_805A7378@sda21(r13) /* 8001A830 00017790 38 61 00 38 */ addi r3, r1, 0x38 /* 8001A834 00017794 C0 4D 87 BC */ lfs f2, lbl_805A737C@sda21(r13) /* 8001A838 00017798 48 2F 99 C9 */ bl __ct__9CVector2fFff /* 8001A83C 0001779C C0 2D 87 C0 */ lfs f1, lbl_805A7380@sda21(r13) /* 8001A840 000177A0 7C 65 1B 78 */ mr r5, r3 /* 8001A844 000177A4 7E E3 BB 78 */ mr r3, r23 /* 8001A848 000177A8 38 80 00 01 */ li r4, 1 /* 8001A84C 000177AC 48 0C FA 05 */ bl __ct__16CPlayerCameraBobFQ216CPlayerCameraBob14ECameraBobTypeRC9CVector2ff /* 8001A850 000177B0 7C 77 1B 78 */ mr r23, r3 lbl_8001A854: /* 8001A854 000177B4 92 FF 07 6C */ stw r23, 0x76c(r31) /* 8001A858 000177B8 38 00 00 00 */ li r0, 0 /* 8001A85C 000177BC C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 8001A860 000177C0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 8001A864 000177C4 90 1F 07 70 */ stw r0, 0x770(r31) /* 8001A868 000177C8 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l /* 8001A86C 000177CC FC 40 08 90 */ fmr f2, f1 /* 8001A870 000177D0 38 7F 07 A0 */ addi r3, r31, 0x7a0 /* 8001A874 000177D4 D0 3F 07 74 */ stfs f1, 0x774(r31) /* 8001A878 000177D8 FC 60 08 90 */ fmr f3, f1 /* 8001A87C 000177DC 38 80 FF FF */ li r4, -1 /* 8001A880 000177E0 90 1F 07 78 */ stw r0, 0x778(r31) /* 8001A884 000177E4 90 1F 07 7C */ stw r0, 0x77c(r31) /* 8001A888 000177E8 90 1F 07 80 */ stw r0, 0x780(r31) /* 8001A88C 000177EC D0 3F 07 84 */ stfs f1, 0x784(r31) /* 8001A890 000177F0 B0 1F 07 88 */ sth r0, 0x788(r31) /* 8001A894 000177F4 D0 3F 07 8C */ stfs f1, 0x78c(r31) /* 8001A898 000177F8 90 1F 07 90 */ stw r0, 0x790(r31) /* 8001A89C 000177FC C0 05 00 00 */ lfs f0, 0(r5) /* 8001A8A0 00017800 D0 1F 07 94 */ stfs f0, 0x794(r31) /* 8001A8A4 00017804 C0 1D 00 04 */ lfs f0, 4(r29) /* 8001A8A8 00017808 D0 1F 07 98 */ stfs f0, 0x798(r31) /* 8001A8AC 0001780C C0 1D 00 08 */ lfs f0, 8(r29) /* 8001A8B0 00017810 D0 1F 07 9C */ stfs f0, 0x79c(r31) /* 8001A8B4 00017814 4B FF D4 01 */ bl __ct__Q27CPlayer11CVisorSteamFv /* 8001A8B8 00017818 38 00 FF FF */ li r0, -1 /* 8001A8BC 0001781C 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 8001A8C0 00017820 90 1F 07 CC */ stw r0, 0x7cc(r31) /* 8001A8C4 00017824 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 8001A8C8 00017828 80 C2 83 F0 */ lwz r6, lbl_805AA110@sda21(r2) /* 8001A8CC 0001782C 38 A0 00 01 */ li r5, 1 /* 8001A8D0 00017830 93 7F 07 D0 */ stw r27, 0x7d0(r31) /* 8001A8D4 00017834 38 00 00 00 */ li r0, 0 /* 8001A8D8 00017838 38 7F 07 F4 */ addi r3, r31, 0x7f4 /* 8001A8DC 0001783C 90 DF 07 D4 */ stw r6, 0x7d4(r31) /* 8001A8E0 00017840 C0 1E 00 00 */ lfs f0, 0(r30) /* 8001A8E4 00017844 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) /* 8001A8E8 00017848 C0 1E 00 04 */ lfs f0, 4(r30) /* 8001A8EC 0001784C D0 1F 07 DC */ stfs f0, 0x7dc(r31) /* 8001A8F0 00017850 C0 1E 00 08 */ lfs f0, 8(r30) /* 8001A8F4 00017854 D0 1F 07 E0 */ stfs f0, 0x7e0(r31) /* 8001A8F8 00017858 98 BF 07 E4 */ stb r5, 0x7e4(r31) /* 8001A8FC 0001785C 90 1F 07 E8 */ stw r0, 0x7e8(r31) /* 8001A900 00017860 90 1F 07 EC */ stw r0, 0x7ec(r31) /* 8001A904 00017864 90 1F 07 F0 */ stw r0, 0x7f0(r31) /* 8001A908 00017868 48 2F 82 6D */ bl __ct__12CTransform4fFRC12CTransform4f /* 8001A90C 0001786C C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) /* 8001A910 00017870 38 00 00 00 */ li r0, 0 /* 8001A914 00017874 38 60 03 E8 */ li r3, 0x3e8 /* 8001A918 00017878 38 80 00 01 */ li r4, 1 /* 8001A91C 0001787C D0 5F 08 24 */ stfs f2, 0x824(r31) /* 8001A920 00017880 D0 5F 08 28 */ stfs f2, 0x828(r31) /* 8001A924 00017884 98 1F 08 2C */ stb r0, 0x82c(r31) /* 8001A928 00017888 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13) /* 8001A92C 0001788C B0 BF 08 2E */ sth r5, 0x82e(r31) /* 8001A930 00017890 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13) /* 8001A934 00017894 B0 BF 08 30 */ sth r5, 0x830(r31) /* 8001A938 00017898 90 7F 08 34 */ stw r3, 0x834(r31) /* 8001A93C 0001789C 90 1F 08 38 */ stw r0, 0x838(r31) /* 8001A940 000178A0 90 1F 09 3C */ stw r0, 0x93c(r31) /* 8001A944 000178A4 90 1F 09 80 */ stw r0, 0x980(r31) /* 8001A948 000178A8 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A94C 000178AC 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 /* 8001A950 000178B0 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A954 000178B4 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A958 000178B8 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 /* 8001A95C 000178BC 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A960 000178C0 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A964 000178C4 50 83 2E B4 */ rlwimi r3, r4, 5, 0x1a, 0x1a /* 8001A968 000178C8 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A96C 000178CC 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A970 000178D0 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b /* 8001A974 000178D4 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A978 000178D8 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A97C 000178DC 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c /* 8001A980 000178E0 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A984 000178E4 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A988 000178E8 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d /* 8001A98C 000178EC 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A990 000178F0 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A994 000178F4 50 03 0F BC */ rlwimi r3, r0, 1, 0x1e, 0x1e /* 8001A998 000178F8 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A99C 000178FC 88 7F 09 C4 */ lbz r3, 0x9c4(r31) /* 8001A9A0 00017900 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f /* 8001A9A4 00017904 98 7F 09 C4 */ stb r3, 0x9c4(r31) /* 8001A9A8 00017908 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9AC 0001790C 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 /* 8001A9B0 00017910 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9B4 00017914 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9B8 00017918 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 /* 8001A9BC 0001791C 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9C0 00017920 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9C4 00017924 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a /* 8001A9C8 00017928 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9CC 0001792C 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9D0 00017930 50 03 26 F6 */ rlwimi r3, r0, 4, 0x1b, 0x1b /* 8001A9D4 00017934 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9D8 00017938 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9DC 0001793C 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c /* 8001A9E0 00017940 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9E4 00017944 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9E8 00017948 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d /* 8001A9EC 0001794C 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9F0 00017950 88 7F 09 C5 */ lbz r3, 0x9c5(r31) /* 8001A9F4 00017954 50 83 07 FE */ rlwimi r3, r4, 0, 0x1f, 0x1f /* 8001A9F8 00017958 98 7F 09 C5 */ stb r3, 0x9c5(r31) /* 8001A9FC 0001795C 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA00 00017960 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 /* 8001AA04 00017964 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA08 00017968 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA0C 0001796C 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 /* 8001AA10 00017970 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA14 00017974 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA18 00017978 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a /* 8001AA1C 0001797C 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA20 00017980 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA24 00017984 50 03 26 F6 */ rlwimi r3, r0, 4, 0x1b, 0x1b /* 8001AA28 00017988 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA2C 0001798C 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA30 00017990 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c /* 8001AA34 00017994 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA38 00017998 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA3C 0001799C 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d /* 8001AA40 000179A0 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA44 000179A4 88 7F 09 C6 */ lbz r3, 0x9c6(r31) /* 8001AA48 000179A8 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f /* 8001AA4C 000179AC C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) /* 8001AA50 000179B0 38 80 FF FF */ li r4, -1 /* 8001AA54 000179B4 98 7F 09 C6 */ stb r3, 0x9c6(r31) /* 8001AA58 000179B8 38 60 00 02 */ li r3, 2 /* 8001AA5C 000179BC C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) /* 8001AA60 000179C0 88 BF 09 C7 */ lbz r5, 0x9c7(r31) /* 8001AA64 000179C4 50 05 36 72 */ rlwimi r5, r0, 6, 0x19, 0x19 /* 8001AA68 000179C8 98 BF 09 C7 */ stb r5, 0x9c7(r31) /* 8001AA6C 000179CC D0 5F 09 C8 */ stfs f2, 0x9c8(r31) /* 8001AA70 000179D0 D0 5F 09 CC */ stfs f2, 0x9cc(r31) /* 8001AA74 000179D4 90 1F 09 D0 */ stw r0, 0x9d0(r31) /* 8001AA78 000179D8 90 1F 09 D4 */ stw r0, 0x9d4(r31) /* 8001AA7C 000179DC D0 5F 09 D8 */ stfs f2, 0x9d8(r31) /* 8001AA80 000179E0 D0 3F 09 DC */ stfs f1, 0x9dc(r31) /* 8001AA84 000179E4 D0 5F 09 E0 */ stfs f2, 0x9e0(r31) /* 8001AA88 000179E8 90 1F 09 E4 */ stw r0, 0x9e4(r31) /* 8001AA8C 000179EC D0 5F 09 F4 */ stfs f2, 0x9f4(r31) /* 8001AA90 000179F0 D0 5F 09 F8 */ stfs f2, 0x9f8(r31) /* 8001AA94 000179F4 D0 5F 09 FC */ stfs f2, 0x9fc(r31) /* 8001AA98 000179F8 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13) /* 8001AA9C 000179FC B0 BF 0A 00 */ sth r5, 0xa00(r31) /* 8001AAA0 00017A00 D0 5F 0A 04 */ stfs f2, 0xa04(r31) /* 8001AAA4 00017A04 90 9F 0A 08 */ stw r4, 0xa08(r31) /* 8001AAA8 00017A08 90 1F 0A 10 */ stw r0, 0xa10(r31) /* 8001AAAC 00017A0C D0 5F 0A 14 */ stfs f2, 0xa14(r31) /* 8001AAB0 00017A10 D0 5F 0A 18 */ stfs f2, 0xa18(r31) /* 8001AAB4 00017A14 D0 5F 0A 1C */ stfs f2, 0xa1c(r31) /* 8001AAB8 00017A18 D0 3F 0A 20 */ stfs f1, 0xa20(r31) /* 8001AABC 00017A1C D0 3F 0A 24 */ stfs f1, 0xa24(r31) /* 8001AAC0 00017A20 D0 5F 0A 28 */ stfs f2, 0xa28(r31) /* 8001AAC4 00017A24 90 7F 0A 2C */ stw r3, 0xa2c(r31) /* 8001AAC8 00017A28 D0 1F 0A 30 */ stfs f0, 0xa30(r31) /* 8001AACC 00017A2C 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) /* 8001AAD0 00017A30 80 9F 07 EC */ lwz r4, 0x7ec(r31) /* 8001AAD4 00017A34 48 19 17 65 */ bl GetBallTransitionBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId /* 8001AAD8 00017A38 C0 5E 00 00 */ lfs f2, 0(r30) /* 8001AADC 00017A3C 38 81 00 40 */ addi r4, r1, 0x40 /* 8001AAE0 00017A40 C0 3E 00 04 */ lfs f1, 4(r30) /* 8001AAE4 00017A44 C0 1E 00 08 */ lfs f0, 8(r30) /* 8001AAE8 00017A48 90 61 00 40 */ stw r3, 0x40(r1) /* 8001AAEC 00017A4C 38 61 01 F8 */ addi r3, r1, 0x1f8 /* 8001AAF0 00017A50 D0 41 00 44 */ stfs f2, 0x44(r1) /* 8001AAF4 00017A54 D0 21 00 48 */ stfs f1, 0x48(r1) /* 8001AAF8 00017A58 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 8001AAFC 00017A5C 48 0F C2 61 */ bl __ct__10CModelDataFRC10CStaticRes /* 8001AB00 00017A60 80 01 02 08 */ lwz r0, 0x208(r1) /* 8001AB04 00017A64 38 60 00 00 */ li r3, 0 /* 8001AB08 00017A68 28 00 00 00 */ cmplwi r0, 0 /* 8001AB0C 00017A6C 40 82 00 14 */ bne lbl_8001AB20 /* 8001AB10 00017A70 88 01 02 20 */ lbz r0, 0x220(r1) /* 8001AB14 00017A74 28 00 00 00 */ cmplwi r0, 0 /* 8001AB18 00017A78 40 82 00 08 */ bne lbl_8001AB20 /* 8001AB1C 00017A7C 38 60 00 01 */ li r3, 1 lbl_8001AB20: /* 8001AB20 00017A80 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8001AB24 00017A84 41 82 00 0C */ beq lbl_8001AB30 /* 8001AB28 00017A88 3A E0 00 00 */ li r23, 0 /* 8001AB2C 00017A8C 48 00 00 30 */ b lbl_8001AB5C lbl_8001AB30: /* 8001AB30 00017A90 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha /* 8001AB34 00017A94 38 60 00 4C */ li r3, 0x4c /* 8001AB38 00017A98 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l /* 8001AB3C 00017A9C 38 A0 00 00 */ li r5, 0 /* 8001AB40 00017AA0 38 84 00 1D */ addi r4, r4, 0x1d /* 8001AB44 00017AA4 48 2F AD 29 */ bl __nw__FUlPCcPCc /* 8001AB48 00017AA8 7C 77 1B 79 */ or. r23, r3, r3 /* 8001AB4C 00017AAC 41 82 00 10 */ beq lbl_8001AB5C /* 8001AB50 00017AB0 38 81 01 F8 */ addi r4, r1, 0x1f8 /* 8001AB54 00017AB4 4B FF E2 39 */ bl __ct__10CModelDataFRC10CModelData /* 8001AB58 00017AB8 7C 77 1B 78 */ mr r23, r3 lbl_8001AB5C: /* 8001AB5C 00017ABC 80 7F 07 F0 */ lwz r3, 0x7f0(r31) /* 8001AB60 00017AC0 38 80 00 01 */ li r4, 1 /* 8001AB64 00017AC4 48 0F BE E9 */ bl __dt__10CModelDataFv /* 8001AB68 00017AC8 92 FF 07 F0 */ stw r23, 0x7f0(r31) /* 8001AB6C 00017ACC 38 7F 07 30 */ addi r3, r31, 0x730 /* 8001AB70 00017AD0 38 80 00 03 */ li r4, 3 /* 8001AB74 00017AD4 48 00 06 45 */ bl "reserve__Q24rstl66vector,Q24rstl17rmemory_allocator>Fi" /* 8001AB78 00017AD8 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha /* 8001AB7C 00017ADC 38 60 1E 58 */ li r3, 0x1e58 /* 8001AB80 00017AE0 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l /* 8001AB84 00017AE4 38 A0 00 00 */ li r5, 0 /* 8001AB88 00017AE8 38 84 00 1D */ addi r4, r4, 0x1d /* 8001AB8C 00017AEC 48 00 04 05 */ bl "__nw__24TOneStatic<10CMorphBall>FUlPCcPCc" /* 8001AB90 00017AF0 7C 77 1B 79 */ or. r23, r3, r3 /* 8001AB94 00017AF4 41 82 00 14 */ beq lbl_8001ABA8 /* 8001AB98 00017AF8 FC 20 F8 90 */ fmr f1, f31 /* 8001AB9C 00017AFC 7F E4 FB 78 */ mr r4, r31 /* 8001ABA0 00017B00 48 0D E9 D5 */ bl __ct__10CMorphBallFR7CPlayerf /* 8001ABA4 00017B04 7C 77 1B 78 */ mr r23, r3 lbl_8001ABA8: /* 8001ABA8 00017B08 80 7F 07 68 */ lwz r3, 0x768(r31) /* 8001ABAC 00017B0C 38 80 00 01 */ li r4, 1 /* 8001ABB0 00017B10 48 0D E2 61 */ bl sub_800f8e10 /* 8001ABB4 00017B14 92 FF 07 68 */ stw r23, 0x768(r31) /* 8001ABB8 00017B18 7F E3 FB 78 */ mr r3, r31 /* 8001ABBC 00017B1C C0 3F 00 E8 */ lfs f1, 0xe8(r31) /* 8001ABC0 00017B20 48 0F FE 9D */ bl SetInertiaTensorScalar__13CPhysicsActorFf /* 8001ABC4 00017B24 7F E4 FB 78 */ mr r4, r31 /* 8001ABC8 00017B28 38 61 00 DC */ addi r3, r1, 0xdc /* 8001ABCC 00017B2C 48 10 0A A9 */ bl GetMotionState__13CPhysicsActorCFv /* 8001ABD0 00017B30 80 A1 00 DC */ lwz r5, 0xdc(r1) /* 8001ABD4 00017B34 38 61 00 AC */ addi r3, r1, 0xac /* 8001ABD8 00017B38 80 01 00 E0 */ lwz r0, 0xe0(r1) /* 8001ABDC 00017B3C 38 9F 00 34 */ addi r4, r31, 0x34 /* 8001ABE0 00017B40 90 BF 01 F4 */ stw r5, 0x1f4(r31) /* 8001ABE4 00017B44 90 1F 01 F8 */ stw r0, 0x1f8(r31) /* 8001ABE8 00017B48 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8001ABEC 00017B4C 90 1F 01 FC */ stw r0, 0x1fc(r31) /* 8001ABF0 00017B50 80 A1 00 E8 */ lwz r5, 0xe8(r1) /* 8001ABF4 00017B54 80 01 00 EC */ lwz r0, 0xec(r1) /* 8001ABF8 00017B58 90 BF 02 00 */ stw r5, 0x200(r31) /* 8001ABFC 00017B5C 90 1F 02 04 */ stw r0, 0x204(r31) /* 8001AC00 00017B60 80 A1 00 F0 */ lwz r5, 0xf0(r1) /* 8001AC04 00017B64 80 01 00 F4 */ lwz r0, 0xf4(r1) /* 8001AC08 00017B68 90 BF 02 08 */ stw r5, 0x208(r31) /* 8001AC0C 00017B6C 90 1F 02 0C */ stw r0, 0x20c(r31) /* 8001AC10 00017B70 80 A1 00 F8 */ lwz r5, 0xf8(r1) /* 8001AC14 00017B74 80 01 00 FC */ lwz r0, 0xfc(r1) /* 8001AC18 00017B78 90 BF 02 10 */ stw r5, 0x210(r31) /* 8001AC1C 00017B7C 90 1F 02 14 */ stw r0, 0x214(r31) /* 8001AC20 00017B80 80 01 01 00 */ lwz r0, 0x100(r1) /* 8001AC24 00017B84 90 1F 02 18 */ stw r0, 0x218(r31) /* 8001AC28 00017B88 80 A1 01 04 */ lwz r5, 0x104(r1) /* 8001AC2C 00017B8C 80 01 01 08 */ lwz r0, 0x108(r1) /* 8001AC30 00017B90 90 BF 02 1C */ stw r5, 0x21c(r31) /* 8001AC34 00017B94 90 1F 02 20 */ stw r0, 0x220(r31) /* 8001AC38 00017B98 80 01 01 0C */ lwz r0, 0x10c(r1) /* 8001AC3C 00017B9C 90 1F 02 24 */ stw r0, 0x224(r31) /* 8001AC40 00017BA0 48 2F 7F 35 */ bl __ct__12CTransform4fFRC12CTransform4f /* 8001AC44 00017BA4 80 7F 04 90 */ lwz r3, 0x490(r31) /* 8001AC48 00017BA8 38 81 00 AC */ addi r4, r1, 0xac /* 8001AC4C 00017BAC 38 63 03 E8 */ addi r3, r3, 0x3e8 /* 8001AC50 00017BB0 48 2F 7E F1 */ bl __as__12CTransform4fFRC12CTransform4f /* 8001AC54 00017BB4 80 7F 04 90 */ lwz r3, 0x490(r31) /* 8001AC58 00017BB8 38 9F 00 34 */ addi r4, r31, 0x34 /* 8001AC5C 00017BBC 80 63 07 40 */ lwz r3, 0x740(r3) /* 8001AC60 00017BC0 38 63 02 20 */ addi r3, r3, 0x220 /* 8001AC64 00017BC4 48 2F 7E DD */ bl __as__12CTransform4fFRC12CTransform4f /* 8001AC68 00017BC8 7F E3 FB 78 */ mr r3, r31 /* 8001AC6C 00017BCC 48 26 80 1D */ bl InitializeBallTransition__7CPlayerFv /* 8001AC70 00017BD0 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 8001AC74 00017BD4 80 9F 00 64 */ lwz r4, 0x64(r31) /* 8001AC78 00017BD8 38 A3 66 70 */ addi r5, r3, sIdentity__12CTransform4f@l /* 8001AC7C 00017BDC 38 61 00 60 */ addi r3, r1, 0x60 /* 8001AC80 00017BE0 48 0F AB 35 */ bl GetBounds__10CModelDataCFRC12CTransform4f /* 8001AC84 00017BE4 C0 21 00 74 */ lfs f1, 0x74(r1) /* 8001AC88 00017BE8 7F E3 FB 78 */ mr r3, r31 /* 8001AC8C 00017BEC C0 01 00 68 */ lfs f0, 0x68(r1) /* 8001AC90 00017BF0 38 80 00 01 */ li r4, 1 /* 8001AC94 00017BF4 EC 01 00 28 */ fsubs f0, f1, f0 /* 8001AC98 00017BF8 D0 1F 02 F0 */ stfs f0, 0x2f0(r31) /* 8001AC9C 00017BFC 48 03 8C 85 */ bl SetCalculateLighting__6CActorFb /* 8001ACA0 00017C00 80 9F 00 90 */ lwz r4, 0x90(r31) /* 8001ACA4 00017C04 38 A0 00 01 */ li r5, 1 /* 8001ACA8 00017C08 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001ACAC 00017C0C 38 7F 05 0C */ addi r3, r31, 0x50c /* 8001ACB0 00017C10 88 04 02 98 */ lbz r0, 0x298(r4) /* 8001ACB4 00017C14 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 /* 8001ACB8 00017C18 98 04 02 98 */ stb r0, 0x298(r4) /* 8001ACBC 00017C1C D0 1F 05 14 */ stfs f0, 0x514(r31) /* 8001ACC0 00017C20 48 2F 9A 39 */ bl CanBeNormalized__9CVector3fCFv /* 8001ACC4 00017C24 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8001ACC8 00017C28 41 82 00 0C */ beq lbl_8001ACD4 /* 8001ACCC 00017C2C 38 7F 05 0C */ addi r3, r31, 0x50c /* 8001ACD0 00017C30 48 2F 9C 29 */ bl Normalize__9CVector3fFv lbl_8001ACD4: /* 8001ACD4 00017C34 38 7F 02 B4 */ addi r3, r31, 0x2b4 /* 8001ACD8 00017C38 80 1F 02 B4 */ lwz r0, 0x2b4(r31) /* 8001ACDC 00017C3C 54 00 10 3A */ slwi r0, r0, 2 /* 8001ACE0 00017C40 7C 63 02 14 */ add r3, r3, r0 /* 8001ACE4 00017C44 34 63 00 04 */ addic. r3, r3, 4 /* 8001ACE8 00017C48 41 82 00 0C */ beq lbl_8001ACF4 /* 8001ACEC 00017C4C C0 0D 80 AC */ lfs f0, lbl_805A6C6C@sda21(r13) /* 8001ACF0 00017C50 D0 03 00 00 */ stfs f0, 0(r3) lbl_8001ACF4: /* 8001ACF4 00017C54 80 7F 02 B4 */ lwz r3, 0x2b4(r31) /* 8001ACF8 00017C58 38 9F 02 B4 */ addi r4, r31, 0x2b4 /* 8001ACFC 00017C5C 38 03 00 01 */ addi r0, r3, 1 /* 8001AD00 00017C60 90 1F 02 B4 */ stw r0, 0x2b4(r31) /* 8001AD04 00017C64 80 1F 02 B4 */ lwz r0, 0x2b4(r31) /* 8001AD08 00017C68 54 00 10 3A */ slwi r0, r0, 2 /* 8001AD0C 00017C6C 7C 64 02 14 */ add r3, r4, r0 /* 8001AD10 00017C70 34 63 00 04 */ addic. r3, r3, 4 /* 8001AD14 00017C74 41 82 00 0C */ beq lbl_8001AD20 /* 8001AD18 00017C78 C0 0D 80 B0 */ lfs f0, lbl_805A6C70@sda21(r13) /* 8001AD1C 00017C7C D0 03 00 00 */ stfs f0, 0(r3) lbl_8001AD20: /* 8001AD20 00017C80 80 7F 02 B4 */ lwz r3, 0x2b4(r31) /* 8001AD24 00017C84 38 9F 02 B4 */ addi r4, r31, 0x2b4 /* 8001AD28 00017C88 38 03 00 01 */ addi r0, r3, 1 /* 8001AD2C 00017C8C 90 1F 02 B4 */ stw r0, 0x2b4(r31) /* 8001AD30 00017C90 80 1F 02 B4 */ lwz r0, 0x2b4(r31) /* 8001AD34 00017C94 54 00 10 3A */ slwi r0, r0, 2 /* 8001AD38 00017C98 7C 64 02 14 */ add r3, r4, r0 /* 8001AD3C 00017C9C 34 63 00 04 */ addic. r3, r3, 4 /* 8001AD40 00017CA0 41 82 00 0C */ beq lbl_8001AD4C /* 8001AD44 00017CA4 C0 0D 80 B4 */ lfs f0, lbl_805A6C74@sda21(r13) /* 8001AD48 00017CA8 D0 03 00 00 */ stfs f0, 0(r3) lbl_8001AD4C: /* 8001AD4C 00017CAC 80 7F 02 B4 */ lwz r3, 0x2b4(r31) /* 8001AD50 00017CB0 38 9F 02 B4 */ addi r4, r31, 0x2b4 /* 8001AD54 00017CB4 38 03 00 01 */ addi r0, r3, 1 /* 8001AD58 00017CB8 90 1F 02 B4 */ stw r0, 0x2b4(r31) /* 8001AD5C 00017CBC 80 1F 02 B4 */ lwz r0, 0x2b4(r31) /* 8001AD60 00017CC0 54 00 10 3A */ slwi r0, r0, 2 /* 8001AD64 00017CC4 7C 64 02 14 */ add r3, r4, r0 /* 8001AD68 00017CC8 34 63 00 04 */ addic. r3, r3, 4 /* 8001AD6C 00017CCC 41 82 00 0C */ beq lbl_8001AD78 /* 8001AD70 00017CD0 C0 0D 80 B8 */ lfs f0, lbl_805A6C78@sda21(r13) /* 8001AD74 00017CD4 D0 03 00 00 */ stfs f0, 0(r3) lbl_8001AD78: /* 8001AD78 00017CD8 80 9F 02 B4 */ lwz r4, 0x2b4(r31) /* 8001AD7C 00017CDC 7F E3 FB 78 */ mr r3, r31 /* 8001AD80 00017CE0 C0 22 81 78 */ lfs f1, lbl_805A9E98@sda21(r2) /* 8001AD84 00017CE4 38 04 00 01 */ addi r0, r4, 1 /* 8001AD88 00017CE8 90 1F 02 B4 */ stw r0, 0x2b4(r31) /* 8001AD8C 00017CEC 48 0F F7 35 */ bl SetMaximumCollisionVelocity__13CPhysicsActorFf /* 8001AD90 00017CF0 38 7F 03 54 */ addi r3, r31, 0x354 /* 8001AD94 00017CF4 38 80 00 40 */ li r4, 0x40 /* 8001AD98 00017CF8 4B FF 16 71 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" /* 8001AD9C 00017CFC 38 7F 03 44 */ addi r3, r31, 0x344 /* 8001ADA0 00017D00 38 80 00 40 */ li r4, 0x40 /* 8001ADA4 00017D04 4B FF 16 65 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" /* 8001ADA8 00017D08 38 7F 03 64 */ addi r3, r31, 0x364 /* 8001ADAC 00017D0C 38 80 00 40 */ li r4, 0x40 /* 8001ADB0 00017D10 4B FF 16 59 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" /* 8001ADB4 00017D14 80 9F 00 64 */ lwz r4, 0x64(r31) /* 8001ADB8 00017D18 7F E3 FB 78 */ mr r3, r31 /* 8001ADBC 00017D1C C0 1E 00 00 */ lfs f0, 0(r30) /* 8001ADC0 00017D20 D0 04 00 00 */ stfs f0, 0(r4) /* 8001ADC4 00017D24 C0 1E 00 04 */ lfs f0, 4(r30) /* 8001ADC8 00017D28 D0 04 00 04 */ stfs f0, 4(r4) /* 8001ADCC 00017D2C C0 1E 00 08 */ lfs f0, 8(r30) /* 8001ADD0 00017D30 D0 04 00 08 */ stfs f0, 8(r4) /* 8001ADD4 00017D34 80 9F 07 F0 */ lwz r4, 0x7f0(r31) /* 8001ADD8 00017D38 C0 1E 00 00 */ lfs f0, 0(r30) /* 8001ADDC 00017D3C D0 04 00 00 */ stfs f0, 0(r4) /* 8001ADE0 00017D40 C0 1E 00 04 */ lfs f0, 4(r30) /* 8001ADE4 00017D44 D0 04 00 04 */ stfs f0, 4(r4) /* 8001ADE8 00017D48 C0 1E 00 08 */ lfs f0, 8(r30) /* 8001ADEC 00017D4C D0 04 00 08 */ stfs f0, 8(r4) /* 8001ADF0 00017D50 4B FF 6D 61 */ bl LoadAnimationTokens__7CPlayerFv /* 8001ADF4 00017D54 38 61 01 F8 */ addi r3, r1, 0x1f8 /* 8001ADF8 00017D58 38 80 FF FF */ li r4, -1 /* 8001ADFC 00017D5C 48 0F BC 51 */ bl __dt__10CModelDataFv /* 8001AE00 00017D60 7F E3 FB 78 */ mr r3, r31 /* 8001AE04 00017D64 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 /* 8001AE08 00017D68 CB E1 02 A0 */ lfd f31, 0x2a0(r1) /* 8001AE0C 00017D6C E3 C1 02 98 */ psq_l f30, 664(r1), 0, qr0 /* 8001AE10 00017D70 CB C1 02 90 */ lfd f30, 0x290(r1) /* 8001AE14 00017D74 E3 A1 02 88 */ psq_l f29, 648(r1), 0, qr0 /* 8001AE18 00017D78 CB A1 02 80 */ lfd f29, 0x280(r1) /* 8001AE1C 00017D7C E3 81 02 78 */ psq_l f28, 632(r1), 0, qr0 /* 8001AE20 00017D80 CB 81 02 70 */ lfd f28, 0x270(r1) /* 8001AE24 00017D84 BA E1 02 4C */ lmw r23, 0x24c(r1) /* 8001AE28 00017D88 80 01 02 B4 */ lwz r0, 0x2b4(r1) /* 8001AE2C 00017D8C 7C 08 03 A6 */ mtlr r0 /* 8001AE30 00017D90 38 21 02 B0 */ addi r1, r1, 0x2b0 /* 8001AE34 00017D94 4E 80 00 20 */ blr .global None__16CActorParametersFv None__16CActorParametersFv: /* 8001AE38 00017D98 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001AE3C 00017D9C 7C 08 02 A6 */ mflr r0 /* 8001AE40 00017DA0 90 01 00 14 */ stw r0, 0x14(r1) /* 8001AE44 00017DA4 48 0E BB 8D */ bl __ct__16CActorParametersFv /* 8001AE48 00017DA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001AE4C 00017DAC 7C 08 03 A6 */ mtlr r0 /* 8001AE50 00017DB0 38 21 00 10 */ addi r1, r1, 0x10 /* 8001AE54 00017DB4 4E 80 00 20 */ blr .global MakePlayerAnimres__FUiRC9CVector3f MakePlayerAnimres__FUiRC9CVector3f: /* 8001AE58 00017DB8 90 83 00 00 */ stw r4, 0(r3) /* 8001AE5C 00017DBC 38 80 00 01 */ li r4, 1 /* 8001AE60 00017DC0 80 C2 83 F0 */ lwz r6, lbl_805AA110@sda21(r2) /* 8001AE64 00017DC4 38 00 00 00 */ li r0, 0 /* 8001AE68 00017DC8 90 C3 00 04 */ stw r6, 4(r3) /* 8001AE6C 00017DCC C0 05 00 00 */ lfs f0, 0(r5) /* 8001AE70 00017DD0 D0 03 00 08 */ stfs f0, 8(r3) /* 8001AE74 00017DD4 C0 05 00 04 */ lfs f0, 4(r5) /* 8001AE78 00017DD8 D0 03 00 0C */ stfs f0, 0xc(r3) /* 8001AE7C 00017DDC C0 05 00 08 */ lfs f0, 8(r5) /* 8001AE80 00017DE0 D0 03 00 10 */ stfs f0, 0x10(r3) /* 8001AE84 00017DE4 98 83 00 14 */ stb r4, 0x14(r3) /* 8001AE88 00017DE8 90 03 00 18 */ stw r0, 0x18(r3) /* 8001AE8C 00017DEC 4E 80 00 20 */ blr .global SetMaterial__19CCollisionPrimitiveFRC13CMaterialList SetMaterial__19CCollisionPrimitiveFRC13CMaterialList: /* 8001AE90 00017DF0 80 04 00 00 */ lwz r0, 0(r4) /* 8001AE94 00017DF4 80 84 00 04 */ lwz r4, 4(r4) /* 8001AE98 00017DF8 90 83 00 0C */ stw r4, 0xc(r3) /* 8001AE9C 00017DFC 90 03 00 08 */ stw r0, 8(r3) /* 8001AEA0 00017E00 4E 80 00 20 */ blr .global "__nw__24TOneStatic<10CPlayerGun>FUlPCcPCc" "__nw__24TOneStatic<10CPlayerGun>FUlPCcPCc": /* 8001AEA4 00017E04 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001AEA8 00017E08 7C 08 02 A6 */ mflr r0 /* 8001AEAC 00017E0C 90 01 00 14 */ stw r0, 0x14(r1) /* 8001AEB0 00017E10 48 00 00 31 */ bl "ReferenceCount__24TOneStatic<10CPlayerGun>Fv" /* 8001AEB4 00017E14 80 83 00 00 */ lwz r4, 0(r3) /* 8001AEB8 00017E18 38 04 00 01 */ addi r0, r4, 1 /* 8001AEBC 00017E1C 90 03 00 00 */ stw r0, 0(r3) /* 8001AEC0 00017E20 48 00 00 15 */ bl "GetAllocSpace__24TOneStatic<10CPlayerGun>Fv" /* 8001AEC4 00017E24 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001AEC8 00017E28 7C 08 03 A6 */ mtlr r0 /* 8001AECC 00017E2C 38 21 00 10 */ addi r1, r1, 0x10 /* 8001AED0 00017E30 4E 80 00 20 */ blr .global "GetAllocSpace__24TOneStatic<10CPlayerGun>Fv" "GetAllocSpace__24TOneStatic<10CPlayerGun>Fv": /* 8001AED4 00017E34 3C 60 80 45 */ lis r3, lbl_80457A10@ha /* 8001AED8 00017E38 38 63 7A 10 */ addi r3, r3, lbl_80457A10@l /* 8001AEDC 00017E3C 4E 80 00 20 */ blr .global "ReferenceCount__24TOneStatic<10CPlayerGun>Fv" "ReferenceCount__24TOneStatic<10CPlayerGun>Fv": /* 8001AEE0 00017E40 88 0D A0 D0 */ lbz r0, lbl_805A8C90@sda21(r13) /* 8001AEE4 00017E44 7C 00 07 75 */ extsb. r0, r0 /* 8001AEE8 00017E48 40 82 00 14 */ bne lbl_8001AEFC /* 8001AEEC 00017E4C 38 60 00 00 */ li r3, 0 /* 8001AEF0 00017E50 38 00 00 01 */ li r0, 1 /* 8001AEF4 00017E54 90 6D A0 CC */ stw r3, lbl_805A8C8C@sda21(r13) /* 8001AEF8 00017E58 98 0D A0 D0 */ stb r0, lbl_805A8C90@sda21(r13) lbl_8001AEFC: /* 8001AEFC 00017E5C 38 6D A0 CC */ addi r3, r13, lbl_805A8C8C@sda21 /* 8001AF00 00017E60 4E 80 00 20 */ blr .global "__nw__30TOneStatic<16CPlayerCameraBob>FUlPCcPCc" "__nw__30TOneStatic<16CPlayerCameraBob>FUlPCcPCc": /* 8001AF04 00017E64 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001AF08 00017E68 7C 08 02 A6 */ mflr r0 /* 8001AF0C 00017E6C 90 01 00 14 */ stw r0, 0x14(r1) /* 8001AF10 00017E70 48 00 00 5D */ bl "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv" /* 8001AF14 00017E74 80 83 00 00 */ lwz r4, 0(r3) /* 8001AF18 00017E78 38 04 00 01 */ addi r0, r4, 1 /* 8001AF1C 00017E7C 90 03 00 00 */ stw r0, 0(r3) /* 8001AF20 00017E80 48 00 00 41 */ bl "GetAllocSpace__30TOneStatic<16CPlayerCameraBob>Fv" /* 8001AF24 00017E84 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001AF28 00017E88 7C 08 03 A6 */ mtlr r0 /* 8001AF2C 00017E8C 38 21 00 10 */ addi r1, r1, 0x10 /* 8001AF30 00017E90 4E 80 00 20 */ blr .global "__dl__30TOneStatic<16CPlayerCameraBob>FPv" "__dl__30TOneStatic<16CPlayerCameraBob>FPv": /* 8001AF34 00017E94 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001AF38 00017E98 7C 08 02 A6 */ mflr r0 /* 8001AF3C 00017E9C 90 01 00 14 */ stw r0, 0x14(r1) /* 8001AF40 00017EA0 48 00 00 2D */ bl "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv" /* 8001AF44 00017EA4 80 83 00 00 */ lwz r4, 0(r3) /* 8001AF48 00017EA8 38 04 FF FF */ addi r0, r4, -1 /* 8001AF4C 00017EAC 90 03 00 00 */ stw r0, 0(r3) /* 8001AF50 00017EB0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001AF54 00017EB4 7C 08 03 A6 */ mtlr r0 /* 8001AF58 00017EB8 38 21 00 10 */ addi r1, r1, 0x10 /* 8001AF5C 00017EBC 4E 80 00 20 */ blr .global "GetAllocSpace__30TOneStatic<16CPlayerCameraBob>Fv" "GetAllocSpace__30TOneStatic<16CPlayerCameraBob>Fv": /* 8001AF60 00017EC0 3C 60 80 46 */ lis r3, lbl_80458248@ha /* 8001AF64 00017EC4 38 63 82 48 */ addi r3, r3, lbl_80458248@l /* 8001AF68 00017EC8 4E 80 00 20 */ blr .global "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv" "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv": /* 8001AF6C 00017ECC 88 0D A0 D8 */ lbz r0, lbl_805A8C98@sda21(r13) /* 8001AF70 00017ED0 7C 00 07 75 */ extsb. r0, r0 /* 8001AF74 00017ED4 40 82 00 14 */ bne lbl_8001AF88 /* 8001AF78 00017ED8 38 60 00 00 */ li r3, 0 /* 8001AF7C 00017EDC 38 00 00 01 */ li r0, 1 /* 8001AF80 00017EE0 90 6D A0 D4 */ stw r3, lbl_805A8C94@sda21(r13) /* 8001AF84 00017EE4 98 0D A0 D8 */ stb r0, lbl_805A8C98@sda21(r13) lbl_8001AF88: /* 8001AF88 00017EE8 38 6D A0 D4 */ addi r3, r13, lbl_805A8C94@sda21 /* 8001AF8C 00017EEC 4E 80 00 20 */ blr .global "__nw__24TOneStatic<10CMorphBall>FUlPCcPCc" "__nw__24TOneStatic<10CMorphBall>FUlPCcPCc": /* 8001AF90 00017EF0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001AF94 00017EF4 7C 08 02 A6 */ mflr r0 /* 8001AF98 00017EF8 90 01 00 14 */ stw r0, 0x14(r1) /* 8001AF9C 00017EFC 48 00 00 31 */ bl "ReferenceCount__24TOneStatic<10CMorphBall>Fv" /* 8001AFA0 00017F00 80 83 00 00 */ lwz r4, 0(r3) /* 8001AFA4 00017F04 38 04 00 01 */ addi r0, r4, 1 /* 8001AFA8 00017F08 90 03 00 00 */ stw r0, 0(r3) /* 8001AFAC 00017F0C 48 00 00 15 */ bl "GetAllocSpace__24TOneStatic<10CMorphBall>Fv" /* 8001AFB0 00017F10 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001AFB4 00017F14 7C 08 03 A6 */ mtlr r0 /* 8001AFB8 00017F18 38 21 00 10 */ addi r1, r1, 0x10 /* 8001AFBC 00017F1C 4E 80 00 20 */ blr .global "GetAllocSpace__24TOneStatic<10CMorphBall>Fv" "GetAllocSpace__24TOneStatic<10CMorphBall>Fv": /* 8001AFC0 00017F20 3C 60 80 46 */ lis r3, lbl_80458350@ha /* 8001AFC4 00017F24 38 63 83 50 */ addi r3, r3, lbl_80458350@l /* 8001AFC8 00017F28 4E 80 00 20 */ blr .global "ReferenceCount__24TOneStatic<10CMorphBall>Fv" "ReferenceCount__24TOneStatic<10CMorphBall>Fv": /* 8001AFCC 00017F2C 88 0D A0 E0 */ lbz r0, lbl_805A8CA0@sda21(r13) /* 8001AFD0 00017F30 7C 00 07 75 */ extsb. r0, r0 /* 8001AFD4 00017F34 40 82 00 14 */ bne lbl_8001AFE8 /* 8001AFD8 00017F38 38 60 00 00 */ li r3, 0 /* 8001AFDC 00017F3C 38 00 00 01 */ li r0, 1 /* 8001AFE0 00017F40 90 6D A0 DC */ stw r3, lbl_805A8C9C@sda21(r13) /* 8001AFE4 00017F44 98 0D A0 E0 */ stb r0, lbl_805A8CA0@sda21(r13) lbl_8001AFE8: /* 8001AFE8 00017F48 38 6D A0 DC */ addi r3, r13, lbl_805A8C9C@sda21 /* 8001AFEC 00017F4C 4E 80 00 20 */ blr .global "__dl__20TOneStatic<7CPlayer>FPv" "__dl__20TOneStatic<7CPlayer>FPv": /* 8001AFF0 00017F50 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001AFF4 00017F54 7C 08 02 A6 */ mflr r0 /* 8001AFF8 00017F58 90 01 00 14 */ stw r0, 0x14(r1) /* 8001AFFC 00017F5C 48 00 00 21 */ bl "ReferenceCount__20TOneStatic<7CPlayer>Fv" /* 8001B000 00017F60 80 83 00 00 */ lwz r4, 0(r3) /* 8001B004 00017F64 38 04 FF FF */ addi r0, r4, -1 /* 8001B008 00017F68 90 03 00 00 */ stw r0, 0(r3) /* 8001B00C 00017F6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8001B010 00017F70 7C 08 03 A6 */ mtlr r0 /* 8001B014 00017F74 38 21 00 10 */ addi r1, r1, 0x10 /* 8001B018 00017F78 4E 80 00 20 */ blr .global "ReferenceCount__20TOneStatic<7CPlayer>Fv" "ReferenceCount__20TOneStatic<7CPlayer>Fv": /* 8001B01C 00017F7C 88 0D A0 E8 */ lbz r0, lbl_805A8CA8@sda21(r13) /* 8001B020 00017F80 7C 00 07 75 */ extsb. r0, r0 /* 8001B024 00017F84 40 82 00 14 */ bne lbl_8001B038 /* 8001B028 00017F88 38 60 00 00 */ li r3, 0 /* 8001B02C 00017F8C 38 00 00 01 */ li r0, 1 /* 8001B030 00017F90 90 6D A0 E4 */ stw r3, lbl_805A8CA4@sda21(r13) /* 8001B034 00017F94 98 0D A0 E8 */ stb r0, lbl_805A8CA8@sda21(r13) lbl_8001B038: /* 8001B038 00017F98 38 6D A0 E4 */ addi r3, r13, lbl_805A8CA4@sda21 /* 8001B03C 00017F9C 4E 80 00 20 */ blr .global "GetAverageValue<9CVector3f>__FPC9CVector3fi" "GetAverageValue<9CVector3f>__FPC9CVector3fi": /* 8001B040 00017FA0 1C C5 00 0C */ mulli r6, r5, 0xc /* 8001B044 00017FA4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8001B048 00017FA8 38 E4 00 0C */ addi r7, r4, 0xc /* 8001B04C 00017FAC C0 64 00 00 */ lfs f3, 0(r4) /* 8001B050 00017FB0 38 00 00 0C */ li r0, 0xc /* 8001B054 00017FB4 7C C4 32 14 */ add r6, r4, r6 /* 8001B058 00017FB8 C0 84 00 04 */ lfs f4, 4(r4) /* 8001B05C 00017FBC 7C 07 30 40 */ cmplw r7, r6 /* 8001B060 00017FC0 C0 A4 00 08 */ lfs f5, 8(r4) /* 8001B064 00017FC4 38 86 00 0B */ addi r4, r6, 0xb /* 8001B068 00017FC8 7C 87 20 50 */ subf r4, r7, r4 /* 8001B06C 00017FCC 7C 84 03 96 */ divwu r4, r4, r0 /* 8001B070 00017FD0 40 80 01 04 */ bge lbl_8001B174 /* 8001B074 00017FD4 54 80 E8 FF */ rlwinm. r0, r4, 0x1d, 3, 0x1f /* 8001B078 00017FD8 7C 09 03 A6 */ mtctr r0 /* 8001B07C 00017FDC 41 82 00 D4 */ beq lbl_8001B150 lbl_8001B080: /* 8001B080 00017FE0 C0 47 00 00 */ lfs f2, 0(r7) /* 8001B084 00017FE4 C0 27 00 04 */ lfs f1, 4(r7) /* 8001B088 00017FE8 C0 07 00 08 */ lfs f0, 8(r7) /* 8001B08C 00017FEC EC 63 10 2A */ fadds f3, f3, f2 /* 8001B090 00017FF0 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B094 00017FF4 C0 47 00 0C */ lfs f2, 0xc(r7) /* 8001B098 00017FF8 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B09C 00017FFC C0 27 00 10 */ lfs f1, 0x10(r7) /* 8001B0A0 00018000 C0 07 00 14 */ lfs f0, 0x14(r7) /* 8001B0A4 00018004 EC 63 10 2A */ fadds f3, f3, f2 /* 8001B0A8 00018008 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B0AC 0001800C C0 47 00 18 */ lfs f2, 0x18(r7) /* 8001B0B0 00018010 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B0B4 00018014 C0 27 00 1C */ lfs f1, 0x1c(r7) /* 8001B0B8 00018018 C0 07 00 20 */ lfs f0, 0x20(r7) /* 8001B0BC 0001801C EC 63 10 2A */ fadds f3, f3, f2 /* 8001B0C0 00018020 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B0C4 00018024 C0 47 00 24 */ lfs f2, 0x24(r7) /* 8001B0C8 00018028 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B0CC 0001802C C0 27 00 28 */ lfs f1, 0x28(r7) /* 8001B0D0 00018030 C0 07 00 2C */ lfs f0, 0x2c(r7) /* 8001B0D4 00018034 EC 63 10 2A */ fadds f3, f3, f2 /* 8001B0D8 00018038 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B0DC 0001803C C0 47 00 30 */ lfs f2, 0x30(r7) /* 8001B0E0 00018040 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B0E4 00018044 C0 27 00 34 */ lfs f1, 0x34(r7) /* 8001B0E8 00018048 C0 07 00 38 */ lfs f0, 0x38(r7) /* 8001B0EC 0001804C EC 63 10 2A */ fadds f3, f3, f2 /* 8001B0F0 00018050 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B0F4 00018054 C0 47 00 3C */ lfs f2, 0x3c(r7) /* 8001B0F8 00018058 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B0FC 0001805C C0 27 00 40 */ lfs f1, 0x40(r7) /* 8001B100 00018060 C0 07 00 44 */ lfs f0, 0x44(r7) /* 8001B104 00018064 EC 63 10 2A */ fadds f3, f3, f2 /* 8001B108 00018068 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B10C 0001806C C0 47 00 48 */ lfs f2, 0x48(r7) /* 8001B110 00018070 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B114 00018074 C0 27 00 4C */ lfs f1, 0x4c(r7) /* 8001B118 00018078 C0 07 00 50 */ lfs f0, 0x50(r7) /* 8001B11C 0001807C EC 63 10 2A */ fadds f3, f3, f2 /* 8001B120 00018080 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B124 00018084 C0 47 00 54 */ lfs f2, 0x54(r7) /* 8001B128 00018088 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B12C 0001808C C0 27 00 58 */ lfs f1, 0x58(r7) /* 8001B130 00018090 C0 07 00 5C */ lfs f0, 0x5c(r7) /* 8001B134 00018094 EC 63 10 2A */ fadds f3, f3, f2 /* 8001B138 00018098 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B13C 0001809C 38 E7 00 60 */ addi r7, r7, 0x60 /* 8001B140 000180A0 EC A5 00 2A */ fadds f5, f5, f0 /* 8001B144 000180A4 42 00 FF 3C */ bdnz lbl_8001B080 /* 8001B148 000180A8 70 84 00 07 */ andi. r4, r4, 7 /* 8001B14C 000180AC 41 82 00 28 */ beq lbl_8001B174 lbl_8001B150: /* 8001B150 000180B0 7C 89 03 A6 */ mtctr r4 lbl_8001B154: /* 8001B154 000180B4 C0 47 00 00 */ lfs f2, 0(r7) /* 8001B158 000180B8 C0 27 00 04 */ lfs f1, 4(r7) /* 8001B15C 000180BC C0 07 00 08 */ lfs f0, 8(r7) /* 8001B160 000180C0 EC 63 10 2A */ fadds f3, f3, f2 /* 8001B164 000180C4 EC 84 08 2A */ fadds f4, f4, f1 /* 8001B168 000180C8 38 E7 00 0C */ addi r7, r7, 0xc /* 8001B16C 000180CC EC A5 00 2A */ fadds f5, f5, f0 /* 8001B170 000180D0 42 00 FF E4 */ bdnz lbl_8001B154 lbl_8001B174: /* 8001B174 000180D4 6C A4 80 00 */ xoris r4, r5, 0x8000 /* 8001B178 000180D8 3C 00 43 30 */ lis r0, 0x4330 /* 8001B17C 000180DC 90 81 00 0C */ stw r4, 0xc(r1) /* 8001B180 000180E0 C8 22 81 60 */ lfd f1, lbl_805A9E80@sda21(r2) /* 8001B184 000180E4 90 01 00 08 */ stw r0, 8(r1) /* 8001B188 000180E8 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) /* 8001B18C 000180EC C8 01 00 08 */ lfd f0, 8(r1) /* 8001B190 000180F0 EC 00 08 28 */ fsubs f0, f0, f1 /* 8001B194 000180F4 EC 02 00 24 */ fdivs f0, f2, f0 /* 8001B198 000180F8 EC 40 00 F2 */ fmuls f2, f0, f3 /* 8001B19C 000180FC EC 20 01 32 */ fmuls f1, f0, f4 /* 8001B1A0 00018100 EC 00 01 72 */ fmuls f0, f0, f5 /* 8001B1A4 00018104 D0 43 00 00 */ stfs f2, 0(r3) /* 8001B1A8 00018108 D0 23 00 04 */ stfs f1, 4(r3) /* 8001B1AC 0001810C D0 03 00 08 */ stfs f0, 8(r3) /* 8001B1B0 00018110 38 21 00 10 */ addi r1, r1, 0x10 /* 8001B1B4 00018114 4E 80 00 20 */ blr .global "reserve__Q24rstl66vector,Q24rstl17rmemory_allocator>Fi" "reserve__Q24rstl66vector,Q24rstl17rmemory_allocator>Fi": /* 8001B1B8 00018118 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8001B1BC 0001811C 7C 08 02 A6 */ mflr r0 /* 8001B1C0 00018120 90 01 00 34 */ stw r0, 0x34(r1) /* 8001B1C4 00018124 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 8001B1C8 00018128 7C 9F 23 78 */ mr r31, r4 /* 8001B1CC 0001812C 7C 7E 1B 78 */ mr r30, r3 /* 8001B1D0 00018130 80 03 00 08 */ lwz r0, 8(r3) /* 8001B1D4 00018134 7C 1F 00 00 */ cmpw r31, r0 /* 8001B1D8 00018138 40 81 00 DC */ ble lbl_8001B2B4 /* 8001B1DC 0001813C 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c /* 8001B1E0 00018140 40 82 00 0C */ bne lbl_8001B1EC /* 8001B1E4 00018144 3B A0 00 00 */ li r29, 0 /* 8001B1E8 00018148 48 00 00 1C */ b lbl_8001B204 lbl_8001B1EC: /* 8001B1EC 0001814C 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha /* 8001B1F0 00018150 38 A0 00 00 */ li r5, 0 /* 8001B1F4 00018154 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l /* 8001B1F8 00018158 38 84 00 1D */ addi r4, r4, 0x1d /* 8001B1FC 0001815C 48 2F A6 1D */ bl __nwa__FUlPCcPCc /* 8001B200 00018160 7C 7D 1B 78 */ mr r29, r3 lbl_8001B204: /* 8001B204 00018164 80 7E 00 04 */ lwz r3, 4(r30) /* 8001B208 00018168 7F A5 EB 78 */ mr r5, r29 /* 8001B20C 0001816C 80 DE 00 0C */ lwz r6, 0xc(r30) /* 8001B210 00018170 38 00 00 00 */ li r0, 0 /* 8001B214 00018174 54 63 18 38 */ slwi r3, r3, 3 /* 8001B218 00018178 7C 86 1A 14 */ add r4, r6, r3 /* 8001B21C 0001817C 90 C1 00 10 */ stw r6, 0x10(r1) /* 8001B220 00018180 90 81 00 08 */ stw r4, 8(r1) /* 8001B224 00018184 90 81 00 0C */ stw r4, 0xc(r1) /* 8001B228 00018188 90 C1 00 14 */ stw r6, 0x14(r1) /* 8001B22C 0001818C 48 00 00 28 */ b lbl_8001B254 lbl_8001B230: /* 8001B230 00018190 28 05 00 00 */ cmplwi r5, 0 /* 8001B234 00018194 41 82 00 18 */ beq lbl_8001B24C /* 8001B238 00018198 88 66 00 00 */ lbz r3, 0(r6) /* 8001B23C 0001819C 98 65 00 00 */ stb r3, 0(r5) /* 8001B240 000181A0 80 66 00 04 */ lwz r3, 4(r6) /* 8001B244 000181A4 90 65 00 04 */ stw r3, 4(r5) /* 8001B248 000181A8 98 06 00 00 */ stb r0, 0(r6) lbl_8001B24C: /* 8001B24C 000181AC 38 A5 00 08 */ addi r5, r5, 8 /* 8001B250 000181B0 38 C6 00 08 */ addi r6, r6, 8 lbl_8001B254: /* 8001B254 000181B4 7C 06 20 40 */ cmplw r6, r4 /* 8001B258 000181B8 40 82 FF D8 */ bne lbl_8001B230 /* 8001B25C 000181BC 80 1E 00 04 */ lwz r0, 4(r30) /* 8001B260 000181C0 83 7E 00 0C */ lwz r27, 0xc(r30) /* 8001B264 000181C4 54 00 18 38 */ slwi r0, r0, 3 /* 8001B268 000181C8 7F 9B 02 14 */ add r28, r27, r0 /* 8001B26C 000181CC 48 00 00 28 */ b lbl_8001B294 lbl_8001B270: /* 8001B270 000181D0 28 1B 00 00 */ cmplwi r27, 0 /* 8001B274 000181D4 41 82 00 1C */ beq lbl_8001B290 /* 8001B278 000181D8 88 1B 00 00 */ lbz r0, 0(r27) /* 8001B27C 000181DC 28 00 00 00 */ cmplwi r0, 0 /* 8001B280 000181E0 41 82 00 10 */ beq lbl_8001B290 /* 8001B284 000181E4 80 7B 00 04 */ lwz r3, 4(r27) /* 8001B288 000181E8 38 80 00 01 */ li r4, 1 /* 8001B28C 000181EC 48 0F B7 C1 */ bl __dt__10CModelDataFv lbl_8001B290: /* 8001B290 000181F0 3B 7B 00 08 */ addi r27, r27, 8 lbl_8001B294: /* 8001B294 000181F4 7C 1B E0 40 */ cmplw r27, r28 /* 8001B298 000181F8 40 82 FF D8 */ bne lbl_8001B270 /* 8001B29C 000181FC 80 7E 00 0C */ lwz r3, 0xc(r30) /* 8001B2A0 00018200 28 03 00 00 */ cmplwi r3, 0 /* 8001B2A4 00018204 41 82 00 08 */ beq lbl_8001B2AC /* 8001B2A8 00018208 48 2F A6 89 */ bl Free__7CMemoryFPCv lbl_8001B2AC: /* 8001B2AC 0001820C 93 BE 00 0C */ stw r29, 0xc(r30) /* 8001B2B0 00018210 93 FE 00 08 */ stw r31, 8(r30) lbl_8001B2B4: /* 8001B2B4 00018214 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 8001B2B8 00018218 80 01 00 34 */ lwz r0, 0x34(r1) /* 8001B2BC 0001821C 7C 08 03 A6 */ mtlr r0 /* 8001B2C0 00018220 38 21 00 30 */ addi r1, r1, 0x30 /* 8001B2C4 00018224 4E 80 00 20 */ blr .global __sinit_CPlayer_cpp __sinit_CPlayer_cpp: /* 8001B2C8 00018228 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8001B2CC 0001822C 7C 08 02 A6 */ mflr r0 /* 8001B2D0 00018230 3C 60 80 45 */ lis r3, lbl_80457908@ha /* 8001B2D4 00018234 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) /* 8001B2D8 00018238 90 01 00 44 */ stw r0, 0x44(r1) /* 8001B2DC 0001823C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) /* 8001B2E0 00018240 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8001B2E4 00018244 3B E3 79 08 */ addi r31, r3, lbl_80457908@l /* 8001B2E8 00018248 38 9F 00 18 */ addi r4, r31, 0x18 /* 8001B2EC 0001824C 38 61 00 28 */ addi r3, r1, 0x28 /* 8001B2F0 00018250 38 DF 00 00 */ addi r6, r31, 0 /* 8001B2F4 00018254 38 BF 00 0C */ addi r5, r31, 0xc /* 8001B2F8 00018258 D0 3F 00 00 */ stfs f1, 0(r31) /* 8001B2FC 0001825C D0 26 00 04 */ stfs f1, 4(r6) /* 8001B300 00018260 D0 26 00 08 */ stfs f1, 8(r6) /* 8001B304 00018264 D0 3F 00 0C */ stfs f1, 0xc(r31) /* 8001B308 00018268 D0 25 00 04 */ stfs f1, 4(r5) /* 8001B30C 0001826C D0 05 00 08 */ stfs f0, 8(r5) /* 8001B310 00018270 D0 3F 00 18 */ stfs f1, 0x18(r31) /* 8001B314 00018274 D0 24 00 04 */ stfs f1, 4(r4) /* 8001B318 00018278 D0 24 00 08 */ stfs f1, 8(r4) /* 8001B31C 0001827C D0 24 00 0C */ stfs f1, 0xc(r4) /* 8001B320 00018280 D0 01 00 28 */ stfs f0, 0x28(r1) /* 8001B324 00018284 D0 21 00 2C */ stfs f1, 0x2c(r1) /* 8001B328 00018288 D0 21 00 30 */ stfs f1, 0x30(r1) /* 8001B32C 0001828C 48 2F 95 CD */ bl Normalize__9CVector3fFv /* 8001B330 00018290 C0 61 00 28 */ lfs f3, 0x28(r1) /* 8001B334 00018294 38 BF 00 18 */ addi r5, r31, 0x18 /* 8001B338 00018298 38 00 00 00 */ li r0, 0 /* 8001B33C 0001829C C0 41 00 2C */ lfs f2, 0x2c(r1) /* 8001B340 000182A0 C0 21 00 30 */ lfs f1, 0x30(r1) /* 8001B344 000182A4 38 7F 00 48 */ addi r3, r31, 0x48 /* 8001B348 000182A8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) /* 8001B34C 000182AC 38 80 00 00 */ li r4, 0 /* 8001B350 000182B0 D0 65 00 10 */ stfs f3, 0x10(r5) /* 8001B354 000182B4 D0 45 00 14 */ stfs f2, 0x14(r5) /* 8001B358 000182B8 D0 25 00 18 */ stfs f1, 0x18(r5) /* 8001B35C 000182BC D0 05 00 1C */ stfs f0, 0x1c(r5) /* 8001B360 000182C0 98 05 00 20 */ stb r0, 0x20(r5) /* 8001B364 000182C4 90 05 00 2C */ stw r0, 0x2c(r5) /* 8001B368 000182C8 90 05 00 28 */ stw r0, 0x28(r5) /* 8001B36C 000182CC 48 2B 2E 1D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid /* 8001B370 000182D0 3C 60 80 5A */ lis r3, mskNullBox__6CAABox@ha /* 8001B374 000182D4 81 4D 80 8C */ lwz r10, lbl_805A6C4C@sda21(r13) /* 8001B378 000182D8 39 83 67 84 */ addi r12, r3, mskNullBox__6CAABox@l /* 8001B37C 000182DC 81 2D 80 90 */ lwz r9, lbl_805A6C50@sda21(r13) /* 8001B380 000182E0 C0 AC 00 00 */ lfs f5, 0(r12) /* 8001B384 000182E4 39 1F 00 C0 */ addi r8, r31, 0xc0 /* 8001B388 000182E8 80 ED 80 94 */ lwz r7, lbl_805A6C54@sda21(r13) /* 8001B38C 000182EC 39 7F 00 A8 */ addi r11, r31, 0xa8 /* 8001B390 000182F0 80 CD 80 98 */ lwz r6, lbl_805A6C58@sda21(r13) /* 8001B394 000182F4 80 AD 80 9C */ lwz r5, lbl_805A6C5C@sda21(r13) /* 8001B398 000182F8 80 8D 80 A0 */ lwz r4, lbl_805A6C60@sda21(r13) /* 8001B39C 000182FC 80 6D 80 A4 */ lwz r3, lbl_805A6C64@sda21(r13) /* 8001B3A0 00018300 80 0D 80 A8 */ lwz r0, lbl_805A6C68@sda21(r13) /* 8001B3A4 00018304 C0 8C 00 04 */ lfs f4, 4(r12) /* 8001B3A8 00018308 C0 6C 00 08 */ lfs f3, 8(r12) /* 8001B3AC 0001830C C0 4C 00 0C */ lfs f2, 0xc(r12) /* 8001B3B0 00018310 C0 2C 00 10 */ lfs f1, 0x10(r12) /* 8001B3B4 00018314 C0 0C 00 14 */ lfs f0, 0x14(r12) /* 8001B3B8 00018318 D0 BF 00 A8 */ stfs f5, 0xa8(r31) /* 8001B3BC 0001831C D0 8B 00 04 */ stfs f4, 4(r11) /* 8001B3C0 00018320 D0 6B 00 08 */ stfs f3, 8(r11) /* 8001B3C4 00018324 D0 4B 00 0C */ stfs f2, 0xc(r11) /* 8001B3C8 00018328 D0 2B 00 10 */ stfs f1, 0x10(r11) /* 8001B3CC 0001832C D0 0B 00 14 */ stfs f0, 0x14(r11) /* 8001B3D0 00018330 91 41 00 20 */ stw r10, 0x20(r1) /* 8001B3D4 00018334 91 21 00 24 */ stw r9, 0x24(r1) /* 8001B3D8 00018338 91 5F 00 C0 */ stw r10, 0xc0(r31) /* 8001B3DC 0001833C 91 28 00 04 */ stw r9, 4(r8) /* 8001B3E0 00018340 90 E1 00 18 */ stw r7, 0x18(r1) /* 8001B3E4 00018344 90 C1 00 1C */ stw r6, 0x1c(r1) /* 8001B3E8 00018348 90 E8 00 08 */ stw r7, 8(r8) /* 8001B3EC 0001834C 90 C8 00 0C */ stw r6, 0xc(r8) /* 8001B3F0 00018350 90 A1 00 10 */ stw r5, 0x10(r1) /* 8001B3F4 00018354 90 81 00 14 */ stw r4, 0x14(r1) /* 8001B3F8 00018358 90 A8 00 10 */ stw r5, 0x10(r8) /* 8001B3FC 0001835C 90 88 00 14 */ stw r4, 0x14(r8) /* 8001B400 00018360 90 61 00 08 */ stw r3, 8(r1) /* 8001B404 00018364 90 01 00 0C */ stw r0, 0xc(r1) /* 8001B408 00018368 90 68 00 18 */ stw r3, 0x18(r8) /* 8001B40C 0001836C 90 08 00 1C */ stw r0, 0x1c(r8) /* 8001B410 00018370 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8001B414 00018374 80 01 00 44 */ lwz r0, 0x44(r1) /* 8001B418 00018378 7C 08 03 A6 */ mtlr r0 /* 8001B41C 0001837C 38 21 00 40 */ addi r1, r1, 0x40 /* 8001B420 00018380 4E 80 00 20 */ blr