.include "macros.inc" .section .data .global lbl_803D9EB0 lbl_803D9EB0: # ROM: 0x3D6EB0 .4byte 0 .4byte 0 .4byte __dt__6CActorFv .4byte 0 .4byte PreThink__7CEntityFfR13CStateManager .4byte Think__7CEntityFfR13CStateManager .4byte AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFb .4byte PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager .4byte Render__6CActorCFRC13CStateManager .4byte CanRenderUnsorted__6CActorCFRC13CStateManager .4byte CalculateRenderBounds__6CActorFv .4byte HealthInfo__6CActorFR13CStateManager .4byte GetDamageVulnerability__6CActorCFv .4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo .4byte GetTouchBounds__6CActorCFv .4byte Touch__6CActorFR6CActorR13CStateManager .4byte GetOrbitPosition__6CActorCFRC13CStateManager .4byte GetAimPosition__6CActorCFRC13CStateManagerf .4byte GetHomingPosition__6CActorCFRC13CStateManagerf .4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager .4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei .4byte FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC12CTransform4f .4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventType .global lbl_803D9F1C lbl_803D9F1C: # ROM: 0x3D6F1C .4byte lbl_8005381C .4byte lbl_80053654 .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005366C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_8005381C .4byte lbl_800536C8 .4byte lbl_80053674 .4byte lbl_80053790 .4byte lbl_8005381C .4byte lbl_80053760 .4byte lbl_8005381C .4byte lbl_80053778 .4byte 0 .section .sdata .global lbl_805A6E68 lbl_805A6E68: # ROM: 0x3F4808 .4byte 0x00000013 .global lbl_805A6E6C lbl_805A6E6C: # ROM: 0x3F480C .4byte 0xFFFF0000 .global lbl_805A6E70 lbl_805A6E70: # ROM: 0x3F4810 .4byte 0 .global lbl_805A6E74 lbl_805A6E74: # ROM: 0x3F4814 .4byte 0x437F0000 .section .text, "ax" .global UpdateSfxEmitters__6CActorFv UpdateSfxEmitters__6CActorFv: /* 80052C4C 0004FBAC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80052C50 0004FBB0 7C 08 02 A6 */ mflr r0 /* 80052C54 0004FBB4 90 01 00 34 */ stw r0, 0x34(r1) /* 80052C58 0004FBB8 BF 41 00 18 */ stmw r26, 0x18(r1) /* 80052C5C 0004FBBC 7C 7A 1B 78 */ mr r26, r3 /* 80052C60 0004FBC0 3C 60 80 5A */ lis r3, skZero3f@ha /* 80052C64 0004FBC4 3B 60 00 00 */ li r27, 0 /* 80052C68 0004FBC8 3B BA 00 DC */ addi r29, r26, 0xdc /* 80052C6C 0004FBCC 3B E0 00 00 */ li r31, 0 /* 80052C70 0004FBD0 3B C3 66 A0 */ addi r30, r3, skZero3f@l /* 80052C74 0004FBD4 83 9A 00 D8 */ lwz r28, 0xd8(r26) /* 80052C78 0004FBD8 48 00 00 40 */ b lbl_80052CB8 lbl_80052C7C: /* 80052C7C 0004FBDC C0 5A 00 60 */ lfs f2, 0x60(r26) /* 80052C80 0004FBE0 7F C5 F3 78 */ mr r5, r30 /* 80052C84 0004FBE4 C0 3A 00 50 */ lfs f1, 0x50(r26) /* 80052C88 0004FBE8 38 61 00 08 */ addi r3, r1, 8 /* 80052C8C 0004FBEC C0 1A 00 40 */ lfs f0, 0x40(r26) /* 80052C90 0004FBF0 38 81 00 0C */ addi r4, r1, 0xc /* 80052C94 0004FBF4 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80052C98 0004FBF8 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80052C9C 0004FBFC D0 41 00 14 */ stfs f2, 0x14(r1) /* 80052CA0 0004FC00 7C 1D F8 2E */ lwzx r0, r29, r31 /* 80052CA4 0004FC04 90 01 00 08 */ stw r0, 8(r1) /* 80052CA8 0004FC08 88 DA 00 D4 */ lbz r6, 0xd4(r26) /* 80052CAC 0004FC0C 48 29 72 05 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc /* 80052CB0 0004FC10 3B 7B 00 01 */ addi r27, r27, 1 /* 80052CB4 0004FC14 3B FF 00 04 */ addi r31, r31, 4 lbl_80052CB8: /* 80052CB8 0004FC18 7C 1B E0 40 */ cmplw r27, r28 /* 80052CBC 0004FC1C 41 80 FF C0 */ blt lbl_80052C7C /* 80052CC0 0004FC20 BB 41 00 18 */ lmw r26, 0x18(r1) /* 80052CC4 0004FC24 80 01 00 34 */ lwz r0, 0x34(r1) /* 80052CC8 0004FC28 7C 08 03 A6 */ mtlr r0 /* 80052CCC 0004FC2C 38 21 00 30 */ addi r1, r1, 0x30 /* 80052CD0 0004FC30 4E 80 00 20 */ blr .global CanDrawStatic__6CActorCFv CanDrawStatic__6CActorCFv: /* 80052CD4 0004FC34 88 03 00 30 */ lbz r0, 0x30(r3) /* 80052CD8 0004FC38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80052CDC 0004FC3C 41 82 00 48 */ beq lbl_80052D24 /* 80052CE0 0004FC40 80 A3 00 64 */ lwz r5, 0x64(r3) /* 80052CE4 0004FC44 38 80 00 00 */ li r4, 0 /* 80052CE8 0004FC48 28 05 00 00 */ cmplwi r5, 0 /* 80052CEC 0004FC4C 41 82 00 20 */ beq lbl_80052D0C /* 80052CF0 0004FC50 80 05 00 10 */ lwz r0, 0x10(r5) /* 80052CF4 0004FC54 28 00 00 00 */ cmplwi r0, 0 /* 80052CF8 0004FC58 40 82 00 10 */ bne lbl_80052D08 /* 80052CFC 0004FC5C 88 05 00 28 */ lbz r0, 0x28(r5) /* 80052D00 0004FC60 28 00 00 00 */ cmplwi r0, 0 /* 80052D04 0004FC64 41 82 00 08 */ beq lbl_80052D0C lbl_80052D08: /* 80052D08 0004FC68 38 80 00 01 */ li r4, 1 lbl_80052D0C: /* 80052D0C 0004FC6C 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80052D10 0004FC70 41 82 00 14 */ beq lbl_80052D24 /* 80052D14 0004FC74 88 03 00 B4 */ lbz r0, 0xb4(r3) /* 80052D18 0004FC78 7C 00 07 74 */ extsb r0, r0 /* 80052D1C 0004FC7C 2C 00 00 04 */ cmpwi r0, 4 /* 80052D20 0004FC80 40 81 00 0C */ ble lbl_80052D2C lbl_80052D24: /* 80052D24 0004FC84 38 60 00 00 */ li r3, 0 /* 80052D28 0004FC88 4E 80 00 20 */ blr lbl_80052D2C: /* 80052D2C 0004FC8C 80 85 00 10 */ lwz r4, 0x10(r5) /* 80052D30 0004FC90 38 60 00 00 */ li r3, 0 /* 80052D34 0004FC94 28 04 00 00 */ cmplwi r4, 0 /* 80052D38 0004FC98 40 82 00 14 */ bne lbl_80052D4C /* 80052D3C 0004FC9C 88 05 00 28 */ lbz r0, 0x28(r5) /* 80052D40 0004FCA0 28 00 00 00 */ cmplwi r0, 0 /* 80052D44 0004FCA4 40 82 00 08 */ bne lbl_80052D4C /* 80052D48 0004FCA8 38 60 00 01 */ li r3, 1 lbl_80052D4C: /* 80052D4C 0004FCAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80052D50 0004FCB0 40 82 00 0C */ bne lbl_80052D5C /* 80052D54 0004FCB4 28 04 00 00 */ cmplwi r4, 0 /* 80052D58 0004FCB8 41 82 00 0C */ beq lbl_80052D64 lbl_80052D5C: /* 80052D5C 0004FCBC 38 60 00 00 */ li r3, 0 /* 80052D60 0004FCC0 4E 80 00 20 */ blr lbl_80052D64: /* 80052D64 0004FCC4 38 60 00 01 */ li r3, 1 /* 80052D68 0004FCC8 4E 80 00 20 */ blr .global CreateShadow__6CActorFb CreateShadow__6CActorFb: /* 80052D6C 0004FCCC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80052D70 0004FCD0 7C 08 02 A6 */ mflr r0 /* 80052D74 0004FCD4 90 01 00 14 */ stw r0, 0x14(r1) /* 80052D78 0004FCD8 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80052D7C 0004FCDC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80052D80 0004FCE0 7C 9F 23 78 */ mr r31, r4 /* 80052D84 0004FCE4 93 C1 00 08 */ stw r30, 8(r1) /* 80052D88 0004FCE8 7C 7E 1B 78 */ mr r30, r3 /* 80052D8C 0004FCEC 41 82 00 2C */ beq lbl_80052DB8 /* 80052D90 0004FCF0 48 00 00 4D */ bl CreateShadow__6CActorFv /* 80052D94 0004FCF4 88 7E 00 E5 */ lbz r3, 0xe5(r30) /* 80052D98 0004FCF8 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f /* 80052D9C 0004FCFC 40 82 00 1C */ bne lbl_80052DB8 /* 80052DA0 0004FD00 80 1E 00 94 */ lwz r0, 0x94(r30) /* 80052DA4 0004FD04 28 00 00 00 */ cmplwi r0, 0 /* 80052DA8 0004FD08 41 82 00 10 */ beq lbl_80052DB8 /* 80052DAC 0004FD0C 38 00 00 01 */ li r0, 1 /* 80052DB0 0004FD10 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 /* 80052DB4 0004FD14 98 7E 00 E5 */ stb r3, 0xe5(r30) lbl_80052DB8: /* 80052DB8 0004FD18 88 1E 00 E5 */ lbz r0, 0xe5(r30) /* 80052DBC 0004FD1C 53 E0 3E 30 */ rlwimi r0, r31, 7, 0x18, 0x18 /* 80052DC0 0004FD20 98 1E 00 E5 */ stb r0, 0xe5(r30) /* 80052DC4 0004FD24 80 01 00 14 */ lwz r0, 0x14(r1) /* 80052DC8 0004FD28 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80052DCC 0004FD2C 83 C1 00 08 */ lwz r30, 8(r1) /* 80052DD0 0004FD30 7C 08 03 A6 */ mtlr r0 /* 80052DD4 0004FD34 38 21 00 10 */ addi r1, r1, 0x10 /* 80052DD8 0004FD38 4E 80 00 20 */ blr .global CreateShadow__6CActorFv CreateShadow__6CActorFv: /* 80052DDC 0004FD3C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80052DE0 0004FD40 7C 08 02 A6 */ mflr r0 /* 80052DE4 0004FD44 90 01 00 14 */ stw r0, 0x14(r1) /* 80052DE8 0004FD48 93 E1 00 0C */ stw r31, 0xc(r1) /* 80052DEC 0004FD4C 93 C1 00 08 */ stw r30, 8(r1) /* 80052DF0 0004FD50 7C 7E 1B 78 */ mr r30, r3 /* 80052DF4 0004FD54 80 03 00 94 */ lwz r0, 0x94(r3) /* 80052DF8 0004FD58 28 00 00 00 */ cmplwi r0, 0 /* 80052DFC 0004FD5C 40 82 00 78 */ bne lbl_80052E74 /* 80052E00 0004FD60 80 9E 00 64 */ lwz r4, 0x64(r30) /* 80052E04 0004FD64 38 60 00 00 */ li r3, 0 /* 80052E08 0004FD68 28 04 00 00 */ cmplwi r4, 0 /* 80052E0C 0004FD6C 41 82 00 20 */ beq lbl_80052E2C /* 80052E10 0004FD70 80 04 00 10 */ lwz r0, 0x10(r4) /* 80052E14 0004FD74 28 00 00 00 */ cmplwi r0, 0 /* 80052E18 0004FD78 40 82 00 10 */ bne lbl_80052E28 /* 80052E1C 0004FD7C 88 04 00 28 */ lbz r0, 0x28(r4) /* 80052E20 0004FD80 28 00 00 00 */ cmplwi r0, 0 /* 80052E24 0004FD84 41 82 00 08 */ beq lbl_80052E2C lbl_80052E28: /* 80052E28 0004FD88 38 60 00 01 */ li r3, 1 lbl_80052E2C: /* 80052E2C 0004FD8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80052E30 0004FD90 41 82 00 44 */ beq lbl_80052E74 /* 80052E34 0004FD94 3C 80 80 3D */ lis r4, lbl_803CCF68@ha /* 80052E38 0004FD98 38 60 00 4C */ li r3, 0x4c /* 80052E3C 0004FD9C 38 84 CF 68 */ addi r4, r4, lbl_803CCF68@l /* 80052E40 0004FDA0 38 A0 00 00 */ li r5, 0 /* 80052E44 0004FDA4 48 2C 2A 29 */ bl __nw__FUlPCcPCc /* 80052E48 0004FDA8 7C 7F 1B 79 */ or. r31, r3, r3 /* 80052E4C 0004FDAC 41 82 00 1C */ beq lbl_80052E68 /* 80052E50 0004FDB0 C0 22 86 30 */ lfs f1, lbl_805AA350@sda21(r2) /* 80052E54 0004FDB4 C0 62 86 34 */ lfs f3, lbl_805AA354@sda21(r2) /* 80052E58 0004FDB8 FC 40 08 90 */ fmr f2, f1 /* 80052E5C 0004FDBC C0 82 86 38 */ lfs f4, lbl_805AA358@sda21(r2) /* 80052E60 0004FDC0 48 0B 34 E1 */ bl __ct__13CSimpleShadowFffff /* 80052E64 0004FDC4 7C 7F 1B 78 */ mr r31, r3 lbl_80052E68: /* 80052E68 0004FDC8 80 7E 00 94 */ lwz r3, 0x94(r30) /* 80052E6C 0004FDCC 48 2C 2A C5 */ bl Free__7CMemoryFPCv /* 80052E70 0004FDD0 93 FE 00 94 */ stw r31, 0x94(r30) lbl_80052E74: /* 80052E74 0004FDD4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80052E78 0004FDD8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80052E7C 0004FDDC 83 C1 00 08 */ lwz r30, 8(r1) /* 80052E80 0004FDE0 7C 08 03 A6 */ mtlr r0 /* 80052E84 0004FDE4 38 21 00 10 */ addi r1, r1, 0x10 /* 80052E88 0004FDE8 4E 80 00 20 */ blr .global SetTranslation__6CActorFRC9CVector3f SetTranslation__6CActorFRC9CVector3f: /* 80052E8C 0004FDEC C0 04 00 00 */ lfs f0, 0(r4) /* 80052E90 0004FDF0 38 A0 00 01 */ li r5, 1 /* 80052E94 0004FDF4 D0 03 00 40 */ stfs f0, 0x40(r3) /* 80052E98 0004FDF8 C0 04 00 04 */ lfs f0, 4(r4) /* 80052E9C 0004FDFC D0 03 00 50 */ stfs f0, 0x50(r3) /* 80052EA0 0004FE00 C0 04 00 08 */ lfs f0, 8(r4) /* 80052EA4 0004FE04 D0 03 00 60 */ stfs f0, 0x60(r3) /* 80052EA8 0004FE08 88 03 00 E4 */ lbz r0, 0xe4(r3) /* 80052EAC 0004FE0C 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b /* 80052EB0 0004FE10 98 03 00 E4 */ stb r0, 0xe4(r3) /* 80052EB4 0004FE14 88 03 00 E4 */ lbz r0, 0xe4(r3) /* 80052EB8 0004FE18 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c /* 80052EBC 0004FE1C 98 03 00 E4 */ stb r0, 0xe4(r3) /* 80052EC0 0004FE20 88 03 00 E4 */ lbz r0, 0xe4(r3) /* 80052EC4 0004FE24 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d /* 80052EC8 0004FE28 98 03 00 E4 */ stb r0, 0xe4(r3) /* 80052ECC 0004FE2C 4E 80 00 20 */ blr .global "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" "GetScaledLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": /* 80052ED0 0004FE30 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80052ED4 0004FE34 7C 08 02 A6 */ mflr r0 /* 80052ED8 0004FE38 90 01 00 14 */ stw r0, 0x14(r1) /* 80052EDC 0004FE3C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80052EE0 0004FE40 7C 7F 1B 78 */ mr r31, r3 /* 80052EE4 0004FE44 80 84 00 64 */ lwz r4, 0x64(r4) /* 80052EE8 0004FE48 48 0C 2A B9 */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80052EEC 0004FE4C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80052EF0 0004FE50 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80052EF4 0004FE54 7C 08 03 A6 */ mtlr r0 /* 80052EF8 0004FE58 38 21 00 10 */ addi r1, r1, 0x10 /* 80052EFC 0004FE5C 4E 80 00 20 */ blr .global "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": /* 80052F00 0004FE60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80052F04 0004FE64 7C 08 02 A6 */ mflr r0 /* 80052F08 0004FE68 90 01 00 14 */ stw r0, 0x14(r1) /* 80052F0C 0004FE6C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80052F10 0004FE70 7C 7F 1B 78 */ mr r31, r3 /* 80052F14 0004FE74 80 84 00 64 */ lwz r4, 0x64(r4) /* 80052F18 0004FE78 48 0C 2B 55 */ bl "GetLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80052F1C 0004FE7C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80052F20 0004FE80 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80052F24 0004FE84 7C 08 03 A6 */ mtlr r0 /* 80052F28 0004FE88 38 21 00 10 */ addi r1, r1, 0x10 /* 80052F2C 0004FE8C 4E 80 00 20 */ blr .global ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager: /* 80052F30 0004FE90 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 80052F34 0004FE94 7C 08 02 A6 */ mflr r0 /* 80052F38 0004FE98 90 01 00 E4 */ stw r0, 0xe4(r1) /* 80052F3C 0004FE9C DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 80052F40 0004FEA0 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 80052F44 0004FEA4 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 80052F48 0004FEA8 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 80052F4C 0004FEAC DB A1 00 B0 */ stfd f29, 0xb0(r1) /* 80052F50 0004FEB0 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 /* 80052F54 0004FEB4 BE 41 00 78 */ stmw r18, 0x78(r1) /* 80052F58 0004FEB8 C0 88 00 00 */ lfs f4, 0(r8) /* 80052F5C 0004FEBC FF C0 18 90 */ fmr f30, f3 /* 80052F60 0004FEC0 C0 08 00 04 */ lfs f0, 4(r8) /* 80052F64 0004FEC4 FF E0 08 90 */ fmr f31, f1 /* 80052F68 0004FEC8 EC 64 01 32 */ fmuls f3, f4, f4 /* 80052F6C 0004FECC C0 88 00 08 */ lfs f4, 8(r8) /* 80052F70 0004FED0 EC 20 00 32 */ fmuls f1, f0, f0 /* 80052F74 0004FED4 EC 84 01 32 */ fmuls f4, f4, f4 /* 80052F78 0004FED8 82 E1 00 E8 */ lwz r23, 0xe8(r1) /* 80052F7C 0004FEDC EC 1E 07 B2 */ fmuls f0, f30, f30 /* 80052F80 0004FEE0 EC 23 08 2A */ fadds f1, f3, f1 /* 80052F84 0004FEE4 88 01 00 EF */ lbz r0, 0xef(r1) /* 80052F88 0004FEE8 FF A0 10 90 */ fmr f29, f2 /* 80052F8C 0004FEEC 7C 7F 1B 78 */ mr r31, r3 /* 80052F90 0004FEF0 7C 98 23 78 */ mr r24, r4 /* 80052F94 0004FEF4 EC 24 08 2A */ fadds f1, f4, f1 /* 80052F98 0004FEF8 7C B2 2B 78 */ mr r18, r5 /* 80052F9C 0004FEFC 7C D3 33 78 */ mr r19, r6 /* 80052FA0 0004FF00 7C F4 3B 78 */ mr r20, r7 /* 80052FA4 0004FF04 7D 35 4B 78 */ mr r21, r9 /* 80052FA8 0004FF08 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80052FAC 0004FF0C 7D 56 53 78 */ mr r22, r10 /* 80052FB0 0004FF10 40 80 02 E4 */ bge lbl_80053294 /* 80052FB4 0004FF14 28 00 00 00 */ cmplwi r0, 0 /* 80052FB8 0004FF18 41 82 00 10 */ beq lbl_80052FC8 /* 80052FBC 0004FF1C 57 03 04 3E */ clrlwi r3, r24, 0x10 /* 80052FC0 0004FF20 48 29 59 F1 */ bl TranslateSFXID__11CSfxManagerFUs /* 80052FC4 0004FF24 48 00 00 08 */ b lbl_80052FCC lbl_80052FC8: /* 80052FC8 0004FF28 57 03 04 3E */ clrlwi r3, r24, 0x10 lbl_80052FCC: /* 80052FCC 0004FF2C 56 40 07 39 */ rlwinm. r0, r18, 0, 0x1c, 0x1c /* 80052FD0 0004FF30 56 44 CF FE */ rlwinm r4, r18, 0x19, 0x1f, 0x1f /* 80052FD4 0004FF34 7C 7E 1B 78 */ mr r30, r3 /* 80052FD8 0004FF38 57 1B 0F FE */ srwi r27, r24, 0x1f /* 80052FDC 0004FF3C 57 1A 17 FE */ rlwinm r26, r24, 2, 0x1f, 0x1f /* 80052FE0 0004FF40 57 19 1F FE */ rlwinm r25, r24, 3, 0x1f, 0x1f /* 80052FE4 0004FF44 68 98 00 01 */ xori r24, r4, 1 /* 80052FE8 0004FF48 38 A0 00 01 */ li r5, 1 /* 80052FEC 0004FF4C 41 82 00 08 */ beq lbl_80052FF4 /* 80052FF0 0004FF50 60 A5 00 08 */ ori r5, r5, 8 lbl_80052FF4: /* 80052FF4 0004FF54 C0 02 86 3C */ lfs f0, lbl_805AA35C@sda21(r2) /* 80052FF8 0004FF58 3C 60 80 5A */ lis r3, skZero3f@ha /* 80052FFC 0004FF5C 38 80 00 00 */ li r4, 0 /* 80053000 0004FF60 C4 43 66 A0 */ lfsu f2, skZero3f@l(r3) /* 80053004 0004FF64 B0 81 00 64 */ sth r4, 0x64(r1) /* 80053008 0004FF68 3B A1 00 4C */ addi r29, r1, 0x4c /* 8005300C 0004FF6C 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) /* 80053010 0004FF70 57 DC 04 3E */ clrlwi r28, r30, 0x10 /* 80053014 0004FF74 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 80053018 0004FF78 C0 B5 00 00 */ lfs f5, 0(r21) /* 8005301C 0004FF7C D0 01 00 40 */ stfs f0, 0x40(r1) /* 80053020 0004FF80 C0 95 00 04 */ lfs f4, 4(r21) /* 80053024 0004FF84 D0 01 00 44 */ stfs f0, 0x44(r1) /* 80053028 0004FF88 C0 75 00 08 */ lfs f3, 8(r21) /* 8005302C 0004FF8C D0 01 00 48 */ stfs f0, 0x48(r1) /* 80053030 0004FF90 C0 23 00 04 */ lfs f1, 4(r3) /* 80053034 0004FF94 D0 01 00 50 */ stfs f0, 0x50(r1) /* 80053038 0004FF98 D0 01 00 54 */ stfs f0, 0x54(r1) /* 8005303C 0004FF9C C0 03 00 08 */ lfs f0, 8(r3) /* 80053040 0004FFA0 D3 C1 00 58 */ stfs f30, 0x58(r1) /* 80053044 0004FFA4 D3 A1 00 5C */ stfs f29, 0x5c(r1) /* 80053048 0004FFA8 90 A1 00 60 */ stw r5, 0x60(r1) /* 8005304C 0004FFAC 9A 81 00 66 */ stb r20, 0x66(r1) /* 80053050 0004FFB0 9A 61 00 67 */ stb r19, 0x67(r1) /* 80053054 0004FFB4 98 81 00 68 */ stb r4, 0x68(r1) /* 80053058 0004FFB8 98 01 00 69 */ stb r0, 0x69(r1) /* 8005305C 0004FFBC D0 A1 00 40 */ stfs f5, 0x40(r1) /* 80053060 0004FFC0 D0 81 00 44 */ stfs f4, 0x44(r1) /* 80053064 0004FFC4 D0 61 00 48 */ stfs f3, 0x48(r1) /* 80053068 0004FFC8 D0 41 00 4C */ stfs f2, 0x4c(r1) /* 8005306C 0004FFCC D0 21 00 50 */ stfs f1, 0x50(r1) /* 80053070 0004FFD0 D0 01 00 54 */ stfs f0, 0x54(r1) /* 80053074 0004FFD4 B3 C1 00 64 */ sth r30, 0x64(r1) /* 80053078 0004FFD8 80 77 09 00 */ lwz r3, 0x900(r23) /* 8005307C 0004FFDC 48 2B F4 61 */ bl Float__9CRandom16Fv /* 80053080 0004FFE0 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 80053084 0004FFE4 4C 40 13 82 */ cror 2, 0, 2 /* 80053088 0004FFE8 40 82 02 0C */ bne lbl_80053294 /* 8005308C 0004FFEC 28 1B 00 00 */ cmplwi r27, 0 /* 80053090 0004FFF0 41 82 01 48 */ beq lbl_800531D8 /* 80053094 0004FFF4 80 9F 00 8C */ lwz r4, 0x8c(r31) /* 80053098 0004FFF8 A0 1F 00 88 */ lhz r0, 0x88(r31) /* 8005309C 0004FFFC 28 04 00 00 */ cmplwi r4, 0 /* 800530A0 00050000 90 81 00 3C */ stw r4, 0x3c(r1) /* 800530A4 00050004 40 82 00 98 */ bne lbl_8005313C /* 800530A8 00050008 28 1A 00 00 */ cmplwi r26, 0 /* 800530AC 0005000C 41 82 00 34 */ beq lbl_800530E0 /* 800530B0 00050010 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 800530B4 00050014 7F C4 F3 78 */ mr r4, r30 /* 800530B8 00050018 7E CA B3 78 */ mr r10, r22 /* 800530BC 0005001C 38 61 00 2C */ addi r3, r1, 0x2c /* 800530C0 00050020 38 A0 00 7F */ li r5, 0x7f /* 800530C4 00050024 38 C0 00 40 */ li r6, 0x40 /* 800530C8 00050028 38 E0 00 01 */ li r7, 1 /* 800530CC 0005002C 39 20 00 01 */ li r9, 1 /* 800530D0 00050030 48 29 6C A5 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800530D4 00050034 80 01 00 2C */ lwz r0, 0x2c(r1) /* 800530D8 00050038 90 01 00 38 */ stw r0, 0x38(r1) /* 800530DC 0005003C 48 00 00 28 */ b lbl_80053104 lbl_800530E0: /* 800530E0 00050040 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) /* 800530E4 00050044 7E C8 B3 78 */ mr r8, r22 /* 800530E8 00050048 38 61 00 28 */ addi r3, r1, 0x28 /* 800530EC 0005004C 38 81 00 40 */ addi r4, r1, 0x40 /* 800530F0 00050050 57 05 06 3E */ clrlwi r5, r24, 0x18 /* 800530F4 00050054 38 E0 00 01 */ li r7, 1 /* 800530F8 00050058 48 29 6E E9 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi /* 800530FC 0005005C 80 01 00 28 */ lwz r0, 0x28(r1) /* 80053100 00050060 90 01 00 38 */ stw r0, 0x38(r1) lbl_80053104: /* 80053104 00050064 80 01 00 38 */ lwz r0, 0x38(r1) /* 80053108 00050068 28 00 00 00 */ cmplwi r0, 0 /* 8005310C 0005006C 41 82 01 88 */ beq lbl_80053294 /* 80053110 00050070 B3 9F 00 88 */ sth r28, 0x88(r31) /* 80053114 00050074 90 1F 00 8C */ stw r0, 0x8c(r31) /* 80053118 00050078 88 1F 00 E6 */ lbz r0, 0xe6(r31) /* 8005311C 0005007C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 80053120 00050080 41 82 01 74 */ beq lbl_80053294 /* 80053124 00050084 80 01 00 38 */ lwz r0, 0x38(r1) /* 80053128 00050088 38 61 00 24 */ addi r3, r1, 0x24 /* 8005312C 0005008C 90 01 00 24 */ stw r0, 0x24(r1) /* 80053130 00050090 80 9F 00 C0 */ lwz r4, 0xc0(r31) /* 80053134 00050094 48 29 5D 79 */ bl PitchBend__11CSfxManagerF10CSfxHandlei /* 80053138 00050098 48 00 01 5C */ b lbl_80053294 lbl_8005313C: /* 8005313C 0005009C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 80053140 000500A0 7F 80 E3 78 */ mr r0, r28 /* 80053144 000500A4 7C 03 00 40 */ cmplw r3, r0 /* 80053148 000500A8 40 82 00 20 */ bne lbl_80053168 /* 8005314C 000500AC 90 81 00 20 */ stw r4, 0x20(r1) /* 80053150 000500B0 7F A5 EB 78 */ mr r5, r29 /* 80053154 000500B4 7E 86 A3 78 */ mr r6, r20 /* 80053158 000500B8 38 61 00 20 */ addi r3, r1, 0x20 /* 8005315C 000500BC 38 81 00 40 */ addi r4, r1, 0x40 /* 80053160 000500C0 48 29 6D 51 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc /* 80053164 000500C4 48 00 01 30 */ b lbl_80053294 lbl_80053168: /* 80053168 000500C8 56 40 07 7B */ rlwinm. r0, r18, 0, 0x1d, 0x1d /* 8005316C 000500CC 41 82 01 28 */ beq lbl_80053294 /* 80053170 000500D0 90 81 00 1C */ stw r4, 0x1c(r1) /* 80053174 000500D4 38 61 00 1C */ addi r3, r1, 0x1c /* 80053178 000500D8 48 29 6D 0D */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle /* 8005317C 000500DC A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) /* 80053180 000500E0 7E C8 B3 78 */ mr r8, r22 /* 80053184 000500E4 38 61 00 18 */ addi r3, r1, 0x18 /* 80053188 000500E8 38 81 00 40 */ addi r4, r1, 0x40 /* 8005318C 000500EC 57 05 06 3E */ clrlwi r5, r24, 0x18 /* 80053190 000500F0 38 E0 00 01 */ li r7, 1 /* 80053194 000500F4 48 29 6E 4D */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi /* 80053198 000500F8 80 61 00 18 */ lwz r3, 0x18(r1) /* 8005319C 000500FC 28 03 00 00 */ cmplwi r3, 0 /* 800531A0 00050100 90 61 00 34 */ stw r3, 0x34(r1) /* 800531A4 00050104 41 82 00 F0 */ beq lbl_80053294 /* 800531A8 00050108 B3 9F 00 88 */ sth r28, 0x88(r31) /* 800531AC 0005010C 90 7F 00 8C */ stw r3, 0x8c(r31) /* 800531B0 00050110 88 1F 00 E6 */ lbz r0, 0xe6(r31) /* 800531B4 00050114 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 800531B8 00050118 41 82 00 DC */ beq lbl_80053294 /* 800531BC 0005011C 28 03 00 00 */ cmplwi r3, 0 /* 800531C0 00050120 41 82 00 D4 */ beq lbl_80053294 /* 800531C4 00050124 90 61 00 14 */ stw r3, 0x14(r1) /* 800531C8 00050128 38 61 00 14 */ addi r3, r1, 0x14 /* 800531CC 0005012C 80 9F 00 C0 */ lwz r4, 0xc0(r31) /* 800531D0 00050130 48 29 5C DD */ bl PitchBend__11CSfxManagerF10CSfxHandlei /* 800531D4 00050134 48 00 00 C0 */ b lbl_80053294 lbl_800531D8: /* 800531D8 00050138 28 1A 00 00 */ cmplwi r26, 0 /* 800531DC 0005013C 41 82 00 34 */ beq lbl_80053210 /* 800531E0 00050140 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) /* 800531E4 00050144 7F C4 F3 78 */ mr r4, r30 /* 800531E8 00050148 7E CA B3 78 */ mr r10, r22 /* 800531EC 0005014C 38 61 00 10 */ addi r3, r1, 0x10 /* 800531F0 00050150 57 07 06 3E */ clrlwi r7, r24, 0x18 /* 800531F4 00050154 38 A0 00 7F */ li r5, 0x7f /* 800531F8 00050158 38 C0 00 40 */ li r6, 0x40 /* 800531FC 0005015C 39 20 00 00 */ li r9, 0 /* 80053200 00050160 48 29 6B 75 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 80053204 00050164 80 01 00 10 */ lwz r0, 0x10(r1) /* 80053208 00050168 90 01 00 30 */ stw r0, 0x30(r1) /* 8005320C 0005016C 48 00 00 28 */ b lbl_80053234 lbl_80053210: /* 80053210 00050170 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) /* 80053214 00050174 7E C8 B3 78 */ mr r8, r22 /* 80053218 00050178 38 61 00 0C */ addi r3, r1, 0xc /* 8005321C 0005017C 38 81 00 40 */ addi r4, r1, 0x40 /* 80053220 00050180 57 05 06 3E */ clrlwi r5, r24, 0x18 /* 80053224 00050184 38 E0 00 00 */ li r7, 0 /* 80053228 00050188 48 29 6D B9 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi /* 8005322C 0005018C 80 01 00 0C */ lwz r0, 0xc(r1) /* 80053230 00050190 90 01 00 30 */ stw r0, 0x30(r1) lbl_80053234: /* 80053234 00050194 28 19 00 00 */ cmplwi r25, 0 /* 80053238 00050198 41 82 00 3C */ beq lbl_80053274 /* 8005323C 0005019C 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 80053240 000501A0 80 81 00 30 */ lwz r4, 0x30(r1) /* 80053244 000501A4 54 00 EE FA */ rlwinm r0, r0, 0x1d, 0x1b, 0x1d /* 80053248 000501A8 7C 7F 02 14 */ add r3, r31, r0 /* 8005324C 000501AC 90 83 00 DC */ stw r4, 0xdc(r3) /* 80053250 000501B0 88 BF 00 E4 */ lbz r5, 0xe4(r31) /* 80053254 000501B4 80 7F 00 D8 */ lwz r3, 0xd8(r31) /* 80053258 000501B8 54 A4 DF 7E */ rlwinm r4, r5, 0x1b, 0x1d, 0x1f /* 8005325C 000501BC 38 84 00 01 */ addi r4, r4, 1 /* 80053260 000501C0 7C 04 1B D6 */ divw r0, r4, r3 /* 80053264 000501C4 7C 00 19 D6 */ mullw r0, r0, r3 /* 80053268 000501C8 7C 00 20 50 */ subf r0, r0, r4 /* 8005326C 000501CC 50 05 2E 34 */ rlwimi r5, r0, 5, 0x18, 0x1a /* 80053270 000501D0 98 BF 00 E4 */ stb r5, 0xe4(r31) lbl_80053274: /* 80053274 000501D4 88 1F 00 E6 */ lbz r0, 0xe6(r31) /* 80053278 000501D8 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 8005327C 000501DC 41 82 00 18 */ beq lbl_80053294 /* 80053280 000501E0 80 01 00 30 */ lwz r0, 0x30(r1) /* 80053284 000501E4 38 61 00 08 */ addi r3, r1, 8 /* 80053288 000501E8 90 01 00 08 */ stw r0, 8(r1) /* 8005328C 000501EC 80 9F 00 C0 */ lwz r4, 0xc0(r31) /* 80053290 000501F0 48 29 5C 1D */ bl PitchBend__11CSfxManagerF10CSfxHandlei lbl_80053294: /* 80053294 000501F4 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 80053298 000501F8 CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 8005329C 000501FC E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 800532A0 00050200 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 800532A4 00050204 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 /* 800532A8 00050208 CB A1 00 B0 */ lfd f29, 0xb0(r1) /* 800532AC 0005020C BA 41 00 78 */ lmw r18, 0x78(r1) /* 800532B0 00050210 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 800532B4 00050214 7C 08 03 A6 */ mtlr r0 /* 800532B8 00050218 38 21 00 E0 */ addi r1, r1, 0xe0 /* 800532BC 0005021C 4E 80 00 20 */ blr .global SetInFluid__6CActorFb9TUniqueId SetInFluid__6CActorFb9TUniqueId: /* 800532C0 00050220 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 800532C4 00050224 41 82 00 24 */ beq lbl_800532E8 /* 800532C8 00050228 88 C3 00 E6 */ lbz r6, 0xe6(r3) /* 800532CC 0005022C 54 C4 DF 7E */ rlwinm r4, r6, 0x1b, 0x1d, 0x1f /* 800532D0 00050230 38 04 00 01 */ addi r0, r4, 1 /* 800532D4 00050234 50 06 2E 34 */ rlwimi r6, r0, 5, 0x18, 0x1a /* 800532D8 00050238 98 C3 00 E6 */ stb r6, 0xe6(r3) /* 800532DC 0005023C A0 05 00 00 */ lhz r0, 0(r5) /* 800532E0 00050240 B0 03 00 C4 */ sth r0, 0xc4(r3) /* 800532E4 00050244 4E 80 00 20 */ blr lbl_800532E8: /* 800532E8 00050248 88 83 00 E6 */ lbz r4, 0xe6(r3) /* 800532EC 0005024C 54 85 DF 7F */ rlwinm. r5, r4, 0x1b, 0x1d, 0x1f /* 800532F0 00050250 4D 82 00 20 */ beqlr /* 800532F4 00050254 38 05 FF FF */ addi r0, r5, -1 /* 800532F8 00050258 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a /* 800532FC 0005025C 98 83 00 E6 */ stb r4, 0xe6(r3) /* 80053300 00050260 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 80053304 00050264 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f /* 80053308 00050268 4C 82 00 20 */ bnelr /* 8005330C 0005026C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) /* 80053310 00050270 B0 03 00 C4 */ sth r0, 0xc4(r3) /* 80053314 00050274 4E 80 00 20 */ blr .global GetSfxHandle__6CActorCFv GetSfxHandle__6CActorCFv: /* 80053318 00050278 80 04 00 8C */ lwz r0, 0x8c(r4) /* 8005331C 0005027C 90 03 00 00 */ stw r0, 0(r3) /* 80053320 00050280 4E 80 00 20 */ blr .global SetSoundEventPitchBend__6CActorFi SetSoundEventPitchBend__6CActorFi: /* 80053324 00050284 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80053328 00050288 7C 08 02 A6 */ mflr r0 /* 8005332C 0005028C 38 A0 00 01 */ li r5, 1 /* 80053330 00050290 90 01 00 14 */ stw r0, 0x14(r1) /* 80053334 00050294 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 80053338 00050298 50 A0 0F BC */ rlwimi r0, r5, 1, 0x1e, 0x1e /* 8005333C 0005029C 98 03 00 E6 */ stb r0, 0xe6(r3) /* 80053340 000502A0 90 83 00 C0 */ stw r4, 0xc0(r3) /* 80053344 000502A4 80 03 00 8C */ lwz r0, 0x8c(r3) /* 80053348 000502A8 28 00 00 00 */ cmplwi r0, 0 /* 8005334C 000502AC 41 82 00 14 */ beq lbl_80053360 /* 80053350 000502B0 80 03 00 8C */ lwz r0, 0x8c(r3) /* 80053354 000502B4 38 61 00 08 */ addi r3, r1, 8 /* 80053358 000502B8 90 01 00 08 */ stw r0, 8(r1) /* 8005335C 000502BC 48 29 5B 51 */ bl PitchBend__11CSfxManagerF10CSfxHandlei lbl_80053360: /* 80053360 000502C0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80053364 000502C4 7C 08 03 A6 */ mtlr r0 /* 80053368 000502C8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005336C 000502CC 4E 80 00 20 */ blr .global SetVolume__6CActorFUc SetVolume__6CActorFUc: /* 80053370 000502D0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80053374 000502D4 7C 08 02 A6 */ mflr r0 /* 80053378 000502D8 90 01 00 34 */ stw r0, 0x34(r1) /* 8005337C 000502DC 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80053380 000502E0 7C 9F 23 78 */ mr r31, r4 /* 80053384 000502E4 93 C1 00 28 */ stw r30, 0x28(r1) /* 80053388 000502E8 7C 7E 1B 78 */ mr r30, r3 /* 8005338C 000502EC 80 03 00 8C */ lwz r0, 0x8c(r3) /* 80053390 000502F0 28 00 00 00 */ cmplwi r0, 0 /* 80053394 000502F4 90 01 00 0C */ stw r0, 0xc(r1) /* 80053398 000502F8 41 82 00 38 */ beq lbl_800533D0 /* 8005339C 000502FC C0 5E 00 60 */ lfs f2, 0x60(r30) /* 800533A0 00050300 3C 60 80 5A */ lis r3, skZero3f@ha /* 800533A4 00050304 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 800533A8 00050308 38 A3 66 A0 */ addi r5, r3, skZero3f@l /* 800533AC 0005030C C0 1E 00 40 */ lfs f0, 0x40(r30) /* 800533B0 00050310 7F E6 FB 78 */ mr r6, r31 /* 800533B4 00050314 38 61 00 08 */ addi r3, r1, 8 /* 800533B8 00050318 38 81 00 10 */ addi r4, r1, 0x10 /* 800533BC 0005031C D0 01 00 10 */ stfs f0, 0x10(r1) /* 800533C0 00050320 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800533C4 00050324 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800533C8 00050328 90 01 00 08 */ stw r0, 8(r1) /* 800533CC 0005032C 48 29 6A E5 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc lbl_800533D0: /* 800533D0 00050330 9B FE 00 D4 */ stb r31, 0xd4(r30) /* 800533D4 00050334 80 01 00 34 */ lwz r0, 0x34(r1) /* 800533D8 00050338 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800533DC 0005033C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800533E0 00050340 7C 08 03 A6 */ mtlr r0 /* 800533E4 00050344 38 21 00 30 */ addi r1, r1, 0x30 /* 800533E8 00050348 4E 80 00 20 */ blr .global SetMuted__6CActorFb SetMuted__6CActorFb: /* 800533EC 0005034C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800533F0 00050350 7C 08 02 A6 */ mflr r0 /* 800533F4 00050354 90 01 00 14 */ stw r0, 0x14(r1) /* 800533F8 00050358 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 800533FC 0005035C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 80053400 00050360 98 03 00 E5 */ stb r0, 0xe5(r3) /* 80053404 00050364 48 00 1E 41 */ bl RemoveEmitter__6CActorFv /* 80053408 00050368 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005340C 0005036C 7C 08 03 A6 */ mtlr r0 /* 80053410 00050370 38 21 00 10 */ addi r1, r1, 0x10 /* 80053414 00050374 4E 80 00 20 */ blr .global MoveScannableObjectInfoToActor__6CActorFP6CActorR13CStateManager MoveScannableObjectInfoToActor__6CActorFP6CActorR13CStateManager: /* 80053418 00050378 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005341C 0005037C 7C 08 02 A6 */ mflr r0 /* 80053420 00050380 90 01 00 24 */ stw r0, 0x24(r1) /* 80053424 00050384 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80053428 00050388 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005342C 0005038C 7C BE 2B 78 */ mr r30, r5 /* 80053430 00050390 93 A1 00 14 */ stw r29, 0x14(r1) /* 80053434 00050394 7C 9D 23 79 */ or. r29, r4, r4 /* 80053438 00050398 93 81 00 10 */ stw r28, 0x10(r1) /* 8005343C 0005039C 7C 7C 1B 78 */ mr r28, r3 /* 80053440 000503A0 41 82 00 68 */ beq lbl_800534A8 /* 80053444 000503A4 38 7C 00 98 */ addi r3, r28, 0x98 /* 80053448 000503A8 38 1D 00 98 */ addi r0, r29, 0x98 /* 8005344C 000503AC 7C 03 00 40 */ cmplw r3, r0 /* 80053450 000503B0 41 82 00 38 */ beq lbl_80053488 /* 80053454 000503B4 83 FD 00 98 */ lwz r31, 0x98(r29) /* 80053458 000503B8 28 1F 00 00 */ cmplwi r31, 0 /* 8005345C 000503BC 41 82 00 1C */ beq lbl_80053478 /* 80053460 000503C0 41 82 00 10 */ beq lbl_80053470 /* 80053464 000503C4 7F E3 FB 78 */ mr r3, r31 /* 80053468 000503C8 38 80 00 00 */ li r4, 0 /* 8005346C 000503CC 48 2E D9 D5 */ bl __dt__6CTokenFv lbl_80053470: /* 80053470 000503D0 7F E3 FB 78 */ mr r3, r31 /* 80053474 000503D4 48 2C 24 BD */ bl Free__7CMemoryFPCv lbl_80053478: /* 80053478 000503D8 80 7C 00 98 */ lwz r3, 0x98(r28) /* 8005347C 000503DC 38 00 00 00 */ li r0, 0 /* 80053480 000503E0 90 7D 00 98 */ stw r3, 0x98(r29) /* 80053484 000503E4 90 1C 00 98 */ stw r0, 0x98(r28) lbl_80053488: /* 80053488 000503E8 7F A3 EB 78 */ mr r3, r29 /* 8005348C 000503EC 7F C5 F3 78 */ mr r5, r30 /* 80053490 000503F0 38 80 00 27 */ li r4, 0x27 /* 80053494 000503F4 48 00 0E BD */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80053498 000503F8 7F 83 E3 78 */ mr r3, r28 /* 8005349C 000503FC 7F C5 F3 78 */ mr r5, r30 /* 800534A0 00050400 38 80 00 27 */ li r4, 0x27 /* 800534A4 00050404 48 00 0A DD */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_800534A8: /* 800534A8 00050408 80 01 00 24 */ lwz r0, 0x24(r1) /* 800534AC 0005040C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800534B0 00050410 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800534B4 00050414 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800534B8 00050418 83 81 00 10 */ lwz r28, 0x10(r1) /* 800534BC 0005041C 7C 08 03 A6 */ mtlr r0 /* 800534C0 00050420 38 21 00 20 */ addi r1, r1, 0x20 /* 800534C4 00050424 4E 80 00 20 */ blr .global GetScannableObjectInfo__6CActorCFv GetScannableObjectInfo__6CActorCFv: /* 800534C8 00050428 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800534CC 0005042C 7C 08 02 A6 */ mflr r0 /* 800534D0 00050430 90 01 00 14 */ stw r0, 0x14(r1) /* 800534D4 00050434 93 E1 00 0C */ stw r31, 0xc(r1) /* 800534D8 00050438 93 C1 00 08 */ stw r30, 8(r1) /* 800534DC 0005043C 7C 7E 1B 78 */ mr r30, r3 /* 800534E0 00050440 83 E3 00 98 */ lwz r31, 0x98(r3) /* 800534E4 00050444 28 1F 00 00 */ cmplwi r31, 0 /* 800534E8 00050448 40 82 00 0C */ bne lbl_800534F4 /* 800534EC 0005044C 38 60 00 00 */ li r3, 0 /* 800534F0 00050450 48 00 00 68 */ b lbl_80053558 lbl_800534F4: /* 800534F4 00050454 80 1F 00 08 */ lwz r0, 8(r31) /* 800534F8 00050458 28 00 00 00 */ cmplwi r0, 0 /* 800534FC 0005045C 41 82 00 0C */ beq lbl_80053508 /* 80053500 00050460 38 60 00 01 */ li r3, 1 /* 80053504 00050464 48 00 00 3C */ b lbl_80053540 lbl_80053508: /* 80053508 00050468 88 1F 00 04 */ lbz r0, 4(r31) /* 8005350C 0005046C 28 00 00 00 */ cmplwi r0, 0 /* 80053510 00050470 41 82 00 2C */ beq lbl_8005353C /* 80053514 00050474 80 7F 00 00 */ lwz r3, 0(r31) /* 80053518 00050478 80 03 00 10 */ lwz r0, 0x10(r3) /* 8005351C 0005047C 28 00 00 00 */ cmplwi r0, 0 /* 80053520 00050480 41 82 00 1C */ beq lbl_8005353C /* 80053524 00050484 7F E3 FB 78 */ mr r3, r31 /* 80053528 00050488 48 2E D8 E5 */ bl GetObj__6CTokenFv /* 8005352C 0005048C 80 03 00 04 */ lwz r0, 4(r3) /* 80053530 00050490 38 60 00 01 */ li r3, 1 /* 80053534 00050494 90 1F 00 08 */ stw r0, 8(r31) /* 80053538 00050498 48 00 00 08 */ b lbl_80053540 lbl_8005353C: /* 8005353C 0005049C 38 60 00 00 */ li r3, 0 lbl_80053540: /* 80053540 000504A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80053544 000504A4 41 82 00 10 */ beq lbl_80053554 /* 80053548 000504A8 80 7E 00 98 */ lwz r3, 0x98(r30) /* 8005354C 000504AC 80 63 00 08 */ lwz r3, 8(r3) /* 80053550 000504B0 48 00 00 08 */ b lbl_80053558 lbl_80053554: /* 80053554 000504B4 38 60 00 00 */ li r3, 0 lbl_80053558: /* 80053558 000504B8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005355C 000504BC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80053560 000504C0 83 C1 00 08 */ lwz r30, 8(r1) /* 80053564 000504C4 7C 08 03 A6 */ mtlr r0 /* 80053568 000504C8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005356C 000504CC 4E 80 00 20 */ blr .global OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager: /* 80053570 000504D0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80053574 000504D4 7C 08 02 A6 */ mflr r0 /* 80053578 000504D8 2C 04 00 01 */ cmpwi r4, 1 /* 8005357C 000504DC 90 01 00 14 */ stw r0, 0x14(r1) /* 80053580 000504E0 41 82 00 30 */ beq lbl_800535B0 /* 80053584 000504E4 40 80 00 10 */ bge lbl_80053594 /* 80053588 000504E8 2C 04 00 00 */ cmpwi r4, 0 /* 8005358C 000504EC 40 80 00 14 */ bge lbl_800535A0 /* 80053590 000504F0 48 00 00 3C */ b lbl_800535CC lbl_80053594: /* 80053594 000504F4 2C 04 00 03 */ cmpwi r4, 3 /* 80053598 000504F8 40 80 00 34 */ bge lbl_800535CC /* 8005359C 000504FC 48 00 00 24 */ b lbl_800535C0 lbl_800535A0: /* 800535A0 00050500 38 80 00 1A */ li r4, 0x1a /* 800535A4 00050504 38 C0 FF FF */ li r6, -1 /* 800535A8 00050508 4B FF DB 19 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 800535AC 0005050C 48 00 00 20 */ b lbl_800535CC lbl_800535B0: /* 800535B0 00050510 38 80 00 1B */ li r4, 0x1b /* 800535B4 00050514 38 C0 FF FF */ li r6, -1 /* 800535B8 00050518 4B FF DB 09 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 800535BC 0005051C 48 00 00 10 */ b lbl_800535CC lbl_800535C0: /* 800535C0 00050520 38 80 00 1C */ li r4, 0x1c /* 800535C4 00050524 38 C0 FF FF */ li r6, -1 /* 800535C8 00050528 4B FF DA F9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage lbl_800535CC: /* 800535CC 0005052C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800535D0 00050530 7C 08 03 A6 */ mtlr r0 /* 800535D4 00050534 38 21 00 10 */ addi r1, r1, 0x10 /* 800535D8 00050538 4E 80 00 20 */ blr .global FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager: /* 800535DC 0005053C 4E 80 00 20 */ blr .global GetSortingBounds__6CActorCFRC12CTransform4f GetSortingBounds__6CActorCFRC12CTransform4f: /* 800535E0 00050540 C0 04 00 9C */ lfs f0, 0x9c(r4) /* 800535E4 00050544 D0 03 00 00 */ stfs f0, 0(r3) /* 800535E8 00050548 C0 04 00 A0 */ lfs f0, 0xa0(r4) /* 800535EC 0005054C D0 03 00 04 */ stfs f0, 4(r3) /* 800535F0 00050550 C0 04 00 A4 */ lfs f0, 0xa4(r4) /* 800535F4 00050554 D0 03 00 08 */ stfs f0, 8(r3) /* 800535F8 00050558 C0 04 00 A8 */ lfs f0, 0xa8(r4) /* 800535FC 0005055C D0 03 00 0C */ stfs f0, 0xc(r3) /* 80053600 00050560 C0 04 00 AC */ lfs f0, 0xac(r4) /* 80053604 00050564 D0 03 00 10 */ stfs f0, 0x10(r3) /* 80053608 00050568 C0 04 00 B0 */ lfs f0, 0xb0(r4) /* 8005360C 0005056C D0 03 00 14 */ stfs f0, 0x14(r3) /* 80053610 00050570 4E 80 00 20 */ blr .global AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 80053614 00050574 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80053618 00050578 7C 08 02 A6 */ mflr r0 /* 8005361C 0005057C 90 01 00 64 */ stw r0, 0x64(r1) /* 80053620 00050580 BF 61 00 4C */ stmw r27, 0x4c(r1) /* 80053624 00050584 7C 9D 23 78 */ mr r29, r4 /* 80053628 00050588 28 1D 00 27 */ cmplwi r29, 0x27 /* 8005362C 0005058C 7C 7C 1B 78 */ mr r28, r3 /* 80053630 00050590 7C BE 2B 78 */ mr r30, r5 /* 80053634 00050594 7C DF 33 78 */ mr r31, r6 /* 80053638 00050598 41 81 01 E4 */ bgt lbl_8005381C /* 8005363C 0005059C 3C 80 80 3E */ lis r4, lbl_803D9F1C@ha /* 80053640 000505A0 57 A0 10 3A */ slwi r0, r29, 2 /* 80053644 000505A4 38 84 9F 1C */ addi r4, r4, lbl_803D9F1C@l /* 80053648 000505A8 7C 04 00 2E */ lwzx r0, r4, r0 /* 8005364C 000505AC 7C 09 03 A6 */ mtctr r0 /* 80053650 000505B0 4E 80 04 20 */ bctr .global lbl_80053654 lbl_80053654: /* 80053654 000505B4 88 1C 00 30 */ lbz r0, 0x30(r28) /* 80053658 000505B8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8005365C 000505BC 40 82 01 C0 */ bne lbl_8005381C /* 80053660 000505C0 48 2B 68 81 */ bl GetSecondsMod900__9CGraphicsFv /* 80053664 000505C4 D0 3C 00 BC */ stfs f1, 0xbc(r28) /* 80053668 000505C8 48 00 01 B4 */ b lbl_8005381C .global lbl_8005366C lbl_8005366C: /* 8005366C 000505CC 48 00 1B D9 */ bl RemoveEmitter__6CActorFv /* 80053670 000505D0 48 00 01 AC */ b lbl_8005381C .global lbl_80053674 lbl_80053674: /* 80053674 000505D4 48 00 1B D1 */ bl RemoveEmitter__6CActorFv /* 80053678 000505D8 80 9C 00 64 */ lwz r4, 0x64(r28) /* 8005367C 000505DC 38 60 00 00 */ li r3, 0 /* 80053680 000505E0 28 04 00 00 */ cmplwi r4, 0 /* 80053684 000505E4 41 82 00 20 */ beq lbl_800536A4 /* 80053688 000505E8 80 04 00 10 */ lwz r0, 0x10(r4) /* 8005368C 000505EC 28 00 00 00 */ cmplwi r0, 0 /* 80053690 000505F0 40 82 00 10 */ bne lbl_800536A0 /* 80053694 000505F4 88 04 00 28 */ lbz r0, 0x28(r4) /* 80053698 000505F8 28 00 00 00 */ cmplwi r0, 0 /* 8005369C 000505FC 41 82 00 08 */ beq lbl_800536A4 lbl_800536A0: /* 800536A0 00050600 38 60 00 01 */ li r3, 1 lbl_800536A4: /* 800536A4 00050604 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800536A8 00050608 41 82 01 74 */ beq lbl_8005381C /* 800536AC 0005060C 80 64 00 10 */ lwz r3, 0x10(r4) /* 800536B0 00050610 28 03 00 00 */ cmplwi r3, 0 /* 800536B4 00050614 41 82 01 68 */ beq lbl_8005381C /* 800536B8 00050618 7F E4 FB 78 */ mr r4, r31 /* 800536BC 0005061C 38 63 01 20 */ addi r3, r3, 0x120 /* 800536C0 00050620 48 06 46 71 */ bl DeleteAllLights__17CParticleDatabaseCFR13CStateManager /* 800536C4 00050624 48 00 01 58 */ b lbl_8005381C .global lbl_800536C8 lbl_800536C8: /* 800536C8 00050628 80 1C 00 98 */ lwz r0, 0x98(r28) /* 800536CC 0005062C 28 00 00 00 */ cmplwi r0, 0 /* 800536D0 00050630 41 82 00 14 */ beq lbl_800536E4 /* 800536D4 00050634 7F E5 FB 78 */ mr r5, r31 /* 800536D8 00050638 38 80 00 27 */ li r4, 0x27 /* 800536DC 0005063C 48 00 0C 75 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 800536E0 00050640 48 00 00 10 */ b lbl_800536F0 lbl_800536E4: /* 800536E4 00050644 7F E5 FB 78 */ mr r5, r31 /* 800536E8 00050648 38 80 00 27 */ li r4, 0x27 /* 800536EC 0005064C 48 00 08 95 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_800536F0: /* 800536F0 00050650 80 BC 00 64 */ lwz r5, 0x64(r28) /* 800536F4 00050654 38 60 00 00 */ li r3, 0 /* 800536F8 00050658 28 05 00 00 */ cmplwi r5, 0 /* 800536FC 0005065C 41 82 00 14 */ beq lbl_80053710 /* 80053700 00050660 80 05 00 10 */ lwz r0, 0x10(r5) /* 80053704 00050664 28 00 00 00 */ cmplwi r0, 0 /* 80053708 00050668 41 82 00 08 */ beq lbl_80053710 /* 8005370C 0005066C 38 60 00 01 */ li r3, 1 lbl_80053710: /* 80053710 00050670 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80053714 00050674 41 82 01 08 */ beq lbl_8005381C /* 80053718 00050678 C0 05 00 00 */ lfs f0, 0(r5) /* 8005371C 0005067C 7F 84 E3 78 */ mr r4, r28 /* 80053720 00050680 38 61 00 20 */ addi r3, r1, 0x20 /* 80053724 00050684 D0 01 00 30 */ stfs f0, 0x30(r1) /* 80053728 00050688 C0 05 00 04 */ lfs f0, 4(r5) /* 8005372C 0005068C D0 01 00 34 */ stfs f0, 0x34(r1) /* 80053730 00050690 C0 05 00 08 */ lfs f0, 8(r5) /* 80053734 00050694 D0 01 00 38 */ stfs f0, 0x38(r1) /* 80053738 00050698 4B FF D9 4D */ bl GetAreaId__7CEntityCFv /* 8005373C 0005069C 80 01 00 20 */ lwz r0, 0x20(r1) /* 80053740 000506A0 7F E4 FB 78 */ mr r4, r31 /* 80053744 000506A4 38 A1 00 24 */ addi r5, r1, 0x24 /* 80053748 000506A8 38 C1 00 30 */ addi r6, r1, 0x30 /* 8005374C 000506AC 90 01 00 24 */ stw r0, 0x24(r1) /* 80053750 000506B0 80 7C 00 64 */ lwz r3, 0x64(r28) /* 80053754 000506B4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80053758 000506B8 4B FD 77 15 */ bl InitializeEffects__9CAnimDataFR13CStateManager7TAreaIdRC9CVector3f /* 8005375C 000506BC 48 00 00 C0 */ b lbl_8005381C .global lbl_80053760 lbl_80053760: /* 80053760 000506C0 A0 1E 00 00 */ lhz r0, 0(r30) /* 80053764 000506C4 38 A1 00 18 */ addi r5, r1, 0x18 /* 80053768 000506C8 38 80 00 01 */ li r4, 1 /* 8005376C 000506CC B0 01 00 18 */ sth r0, 0x18(r1) /* 80053770 000506D0 4B FF FB 51 */ bl SetInFluid__6CActorFb9TUniqueId /* 80053774 000506D4 48 00 00 A8 */ b lbl_8005381C .global lbl_80053778 lbl_80053778: /* 80053778 000506D8 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) /* 8005377C 000506DC 38 A1 00 14 */ addi r5, r1, 0x14 /* 80053780 000506E0 38 80 00 00 */ li r4, 0 /* 80053784 000506E4 B0 01 00 14 */ sth r0, 0x14(r1) /* 80053788 000506E8 4B FF FB 39 */ bl SetInFluid__6CActorFb9TUniqueId /* 8005378C 000506EC 48 00 00 90 */ b lbl_8005381C .global lbl_80053790 lbl_80053790: /* 80053790 000506F0 83 7C 00 2C */ lwz r27, 0x2c(r28) /* 80053794 000506F4 48 00 00 70 */ b lbl_80053804 lbl_80053798: /* 80053798 000506F8 80 1B 00 00 */ lwz r0, 0(r27) /* 8005379C 000506FC 2C 00 00 1E */ cmpwi r0, 0x1e /* 800537A0 00050700 40 82 00 60 */ bne lbl_80053800 /* 800537A4 00050704 80 1B 00 08 */ lwz r0, 8(r27) /* 800537A8 00050708 7F E4 FB 78 */ mr r4, r31 /* 800537AC 0005070C 38 61 00 0C */ addi r3, r1, 0xc /* 800537B0 00050710 38 A1 00 1C */ addi r5, r1, 0x1c /* 800537B4 00050714 90 01 00 1C */ stw r0, 0x1c(r1) /* 800537B8 00050718 4B FF 47 65 */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 800537BC 0005071C A0 01 00 0C */ lhz r0, 0xc(r1) /* 800537C0 00050720 7F E3 FB 78 */ mr r3, r31 /* 800537C4 00050724 38 81 00 10 */ addi r4, r1, 0x10 /* 800537C8 00050728 B0 01 00 10 */ sth r0, 0x10(r1) /* 800537CC 0005072C 4B FF 8D A9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 800537D0 00050730 7C 64 1B 78 */ mr r4, r3 /* 800537D4 00050734 38 61 00 28 */ addi r3, r1, 0x28 /* 800537D8 00050738 48 05 C4 B9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 800537DC 0005073C 80 83 00 04 */ lwz r4, 4(r3) /* 800537E0 00050740 28 04 00 00 */ cmplwi r4, 0 /* 800537E4 00050744 41 82 00 1C */ beq lbl_80053800 /* 800537E8 00050748 A0 7C 00 C6 */ lhz r3, 0xc6(r28) /* 800537EC 0005074C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) /* 800537F0 00050750 7C 03 00 40 */ cmplw r3, r0 /* 800537F4 00050754 40 82 00 0C */ bne lbl_80053800 /* 800537F8 00050758 A0 04 00 08 */ lhz r0, 8(r4) /* 800537FC 0005075C B0 1C 00 C6 */ sth r0, 0xc6(r28) lbl_80053800: /* 80053800 00050760 3B 7B 00 0C */ addi r27, r27, 0xc lbl_80053804: /* 80053804 00050764 80 1C 00 24 */ lwz r0, 0x24(r28) /* 80053808 00050768 80 7C 00 2C */ lwz r3, 0x2c(r28) /* 8005380C 0005076C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80053810 00050770 7C 03 02 14 */ add r0, r3, r0 /* 80053814 00050774 7C 1B 00 40 */ cmplw r27, r0 /* 80053818 00050778 40 82 FF 80 */ bne lbl_80053798 .global lbl_8005381C lbl_8005381C: /* 8005381C 0005077C A0 1E 00 00 */ lhz r0, 0(r30) /* 80053820 00050780 7F 83 E3 78 */ mr r3, r28 /* 80053824 00050784 7F A4 EB 78 */ mr r4, r29 /* 80053828 00050788 7F E6 FB 78 */ mr r6, r31 /* 8005382C 0005078C B0 01 00 08 */ sth r0, 8(r1) /* 80053830 00050790 38 A1 00 08 */ addi r5, r1, 8 /* 80053834 00050794 4B FF D9 29 */ bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80053838 00050798 BB 61 00 4C */ lmw r27, 0x4c(r1) /* 8005383C 0005079C 80 01 00 64 */ lwz r0, 0x64(r1) /* 80053840 000507A0 7C 08 03 A6 */ mtlr r0 /* 80053844 000507A4 38 21 00 60 */ addi r1, r1, 0x60 /* 80053848 000507A8 4E 80 00 20 */ blr .global SetActive__6CActorFb SetActive__6CActorFb: /* 8005384C 000507AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80053850 000507B0 7C 08 02 A6 */ mflr r0 /* 80053854 000507B4 38 C0 00 01 */ li r6, 1 /* 80053858 000507B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8005385C 000507BC 88 03 00 E4 */ lbz r0, 0xe4(r3) /* 80053860 000507C0 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b /* 80053864 000507C4 98 03 00 E4 */ stb r0, 0xe4(r3) /* 80053868 000507C8 88 03 00 E4 */ lbz r0, 0xe4(r3) /* 8005386C 000507CC 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c /* 80053870 000507D0 98 03 00 E4 */ stb r0, 0xe4(r3) /* 80053874 000507D4 88 03 00 E4 */ lbz r0, 0xe4(r3) /* 80053878 000507D8 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d /* 8005387C 000507DC 98 03 00 E4 */ stb r0, 0xe4(r3) /* 80053880 000507E0 88 03 00 E7 */ lbz r0, 0xe7(r3) /* 80053884 000507E4 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d /* 80053888 000507E8 98 03 00 E7 */ stb r0, 0xe7(r3) /* 8005388C 000507EC 4B FF D8 1D */ bl SetActive__7CEntityFb /* 80053890 000507F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80053894 000507F4 7C 08 03 A6 */ mtlr r0 /* 80053898 000507F8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005389C 000507FC 4E 80 00 20 */ blr .global SetMaterialFilter__6CActorFRC15CMaterialFilter SetMaterialFilter__6CActorFRC15CMaterialFilter: /* 800538A0 00050800 C8 04 00 00 */ lfd f0, 0(r4) /* 800538A4 00050804 D8 03 00 70 */ stfd f0, 0x70(r3) /* 800538A8 00050808 C8 04 00 08 */ lfd f0, 8(r4) /* 800538AC 0005080C D8 03 00 78 */ stfd f0, 0x78(r3) /* 800538B0 00050810 80 04 00 10 */ lwz r0, 0x10(r4) /* 800538B4 00050814 90 03 00 80 */ stw r0, 0x80(r3) /* 800538B8 00050818 4E 80 00 20 */ blr .global GetMaterialFilter__6CActorCFv GetMaterialFilter__6CActorCFv: /* 800538BC 0005081C 38 63 00 70 */ addi r3, r3, 0x70 /* 800538C0 00050820 4E 80 00 20 */ blr .global sub_800538c4 sub_800538c4: /* 800538C4 00050824 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800538C8 00050828 7C 08 02 A6 */ mflr r0 /* 800538CC 0005082C 90 01 00 14 */ stw r0, 0x14(r1) /* 800538D0 00050830 38 00 00 00 */ li r0, 0 /* 800538D4 00050834 93 E1 00 0C */ stw r31, 0xc(r1) /* 800538D8 00050838 93 C1 00 08 */ stw r30, 8(r1) /* 800538DC 0005083C 7C 7E 1B 78 */ mr r30, r3 /* 800538E0 00050840 98 04 00 00 */ stb r0, 0(r4) /* 800538E4 00050844 83 E4 00 04 */ lwz r31, 4(r4) /* 800538E8 00050848 38 80 00 01 */ li r4, 1 /* 800538EC 0005084C 80 63 00 90 */ lwz r3, 0x90(r3) /* 800538F0 00050850 48 0B 17 E5 */ bl __dt__12CActorLightsFv /* 800538F4 00050854 93 FE 00 90 */ stw r31, 0x90(r30) /* 800538F8 00050858 38 60 00 01 */ li r3, 1 /* 800538FC 0005085C 88 1E 00 E4 */ lbz r0, 0xe4(r30) /* 80053900 00050860 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f /* 80053904 00050864 98 1E 00 E4 */ stb r0, 0xe4(r30) /* 80053908 00050868 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005390C 0005086C 83 C1 00 08 */ lwz r30, 8(r1) /* 80053910 00050870 80 01 00 14 */ lwz r0, 0x14(r1) /* 80053914 00050874 7C 08 03 A6 */ mtlr r0 /* 80053918 00050878 38 21 00 10 */ addi r1, r1, 0x10 /* 8005391C 0005087C 4E 80 00 20 */ blr .global SetCalculateLighting__6CActorFb SetCalculateLighting__6CActorFb: /* 80053920 00050880 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80053924 00050884 7C 08 02 A6 */ mflr r0 /* 80053928 00050888 90 01 00 34 */ stw r0, 0x34(r1) /* 8005392C 0005088C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80053930 00050890 93 C1 00 28 */ stw r30, 0x28(r1) /* 80053934 00050894 7C 9E 23 78 */ mr r30, r4 /* 80053938 00050898 93 A1 00 24 */ stw r29, 0x24(r1) /* 8005393C 0005089C 7C 7D 1B 78 */ mr r29, r3 /* 80053940 000508A0 80 03 00 90 */ lwz r0, 0x90(r3) /* 80053944 000508A4 28 00 00 00 */ cmplwi r0, 0 /* 80053948 000508A8 40 82 00 78 */ bne lbl_800539C0 /* 8005394C 000508AC 3C 80 80 3D */ lis r4, lbl_803CCF68@ha /* 80053950 000508B0 38 60 02 E0 */ li r3, 0x2e0 /* 80053954 000508B4 38 84 CF 68 */ addi r4, r4, lbl_803CCF68@l /* 80053958 000508B8 38 A0 00 00 */ li r5, 0 /* 8005395C 000508BC 48 2C 1F 11 */ bl __nw__FUlPCcPCc /* 80053960 000508C0 7C 7F 1B 79 */ or. r31, r3, r3 /* 80053964 000508C4 41 82 00 4C */ beq lbl_800539B0 /* 80053968 000508C8 3C 80 80 5A */ lis r4, skZero3f@ha /* 8005396C 000508CC C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) /* 80053970 000508D0 38 E4 66 A0 */ addi r7, r4, skZero3f@l /* 80053974 000508D4 38 A1 00 08 */ addi r5, r1, 8 /* 80053978 000508D8 81 07 00 00 */ lwz r8, 0(r7) /* 8005397C 000508DC 38 80 00 08 */ li r4, 8 /* 80053980 000508E0 81 67 00 04 */ lwz r11, 4(r7) /* 80053984 000508E4 38 C0 00 04 */ li r6, 4 /* 80053988 000508E8 80 07 00 08 */ lwz r0, 8(r7) /* 8005398C 000508EC 38 E0 00 04 */ li r7, 4 /* 80053990 000508F0 91 01 00 08 */ stw r8, 8(r1) /* 80053994 000508F4 39 00 00 00 */ li r8, 0 /* 80053998 000508F8 39 20 00 00 */ li r9, 0 /* 8005399C 000508FC 39 40 00 00 */ li r10, 0 /* 800539A0 00050900 91 61 00 0C */ stw r11, 0xc(r1) /* 800539A4 00050904 90 01 00 10 */ stw r0, 0x10(r1) /* 800539A8 00050908 48 0B 18 25 */ bl __ct__12CActorLightsFUi9CVector3fiif /* 800539AC 0005090C 7C 7F 1B 78 */ mr r31, r3 lbl_800539B0: /* 800539B0 00050910 80 7D 00 90 */ lwz r3, 0x90(r29) /* 800539B4 00050914 38 80 00 01 */ li r4, 1 /* 800539B8 00050918 48 0B 17 1D */ bl __dt__12CActorLightsFv /* 800539BC 0005091C 93 FD 00 90 */ stw r31, 0x90(r29) lbl_800539C0: /* 800539C0 00050920 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 800539C4 00050924 53 C0 07 FE */ rlwimi r0, r30, 0, 0x1f, 0x1f /* 800539C8 00050928 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 800539CC 0005092C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800539D0 00050930 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800539D4 00050934 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800539D8 00050938 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800539DC 0005093C 7C 08 03 A6 */ mtlr r0 /* 800539E0 00050940 38 21 00 30 */ addi r1, r1, 0x30 /* 800539E4 00050944 4E 80 00 20 */ blr .global IsModelOpaque__6CActorCFRC13CStateManager IsModelOpaque__6CActorCFRC13CStateManager: /* 800539E8 00050948 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800539EC 0005094C 7C 08 02 A6 */ mflr r0 /* 800539F0 00050950 90 01 00 14 */ stw r0, 0x14(r1) /* 800539F4 00050954 93 E1 00 0C */ stw r31, 0xc(r1) /* 800539F8 00050958 7C 7F 1B 78 */ mr r31, r3 /* 800539FC 0005095C 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 80053A00 00050960 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80053A04 00050964 41 82 00 0C */ beq lbl_80053A10 /* 80053A08 00050968 38 60 00 00 */ li r3, 0 /* 80053A0C 0005096C 48 00 00 70 */ b lbl_80053A7C lbl_80053A10: /* 80053A10 00050970 80 BF 00 64 */ lwz r5, 0x64(r31) /* 80053A14 00050974 38 60 00 00 */ li r3, 0 /* 80053A18 00050978 28 05 00 00 */ cmplwi r5, 0 /* 80053A1C 0005097C 41 82 00 20 */ beq lbl_80053A3C /* 80053A20 00050980 80 05 00 10 */ lwz r0, 0x10(r5) /* 80053A24 00050984 28 00 00 00 */ cmplwi r0, 0 /* 80053A28 00050988 40 82 00 10 */ bne lbl_80053A38 /* 80053A2C 0005098C 88 05 00 28 */ lbz r0, 0x28(r5) /* 80053A30 00050990 28 00 00 00 */ cmplwi r0, 0 /* 80053A34 00050994 41 82 00 08 */ beq lbl_80053A3C lbl_80053A38: /* 80053A38 00050998 38 60 00 01 */ li r3, 1 lbl_80053A3C: /* 80053A3C 0005099C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80053A40 000509A0 40 82 00 0C */ bne lbl_80053A4C /* 80053A44 000509A4 38 60 00 01 */ li r3, 1 /* 80053A48 000509A8 48 00 00 34 */ b lbl_80053A7C lbl_80053A4C: /* 80053A4C 000509AC 88 1F 00 B4 */ lbz r0, 0xb4(r31) /* 80053A50 000509B0 7C 00 07 74 */ extsb r0, r0 /* 80053A54 000509B4 2C 00 00 04 */ cmpwi r0, 4 /* 80053A58 000509B8 40 81 00 0C */ ble lbl_80053A64 /* 80053A5C 000509BC 38 60 00 00 */ li r3, 0 /* 80053A60 000509C0 48 00 00 1C */ b lbl_80053A7C lbl_80053A64: /* 80053A64 000509C4 7C 83 23 78 */ mr r3, r4 /* 80053A68 000509C8 48 0C 14 75 */ bl GetRenderingModel__10CModelDataFRC13CStateManager /* 80053A6C 000509CC 7C 60 1B 78 */ mr r0, r3 /* 80053A70 000509D0 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80053A74 000509D4 7C 04 03 78 */ mr r4, r0 /* 80053A78 000509D8 48 0C 1A 05 */ bl IsDefinitelyOpaque__10CModelDataCFQ210CModelData11EWhichModel lbl_80053A7C: /* 80053A7C 000509DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80053A80 000509E0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80053A84 000509E4 7C 08 03 A6 */ mtlr r0 /* 80053A88 000509E8 38 21 00 10 */ addi r1, r1, 0x10 /* 80053A8C 000509EC 4E 80 00 20 */ blr .global GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager: /* 80053A90 000509F0 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80053A94 000509F4 7C 08 02 A6 */ mflr r0 /* 80053A98 000509F8 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80053A9C 000509FC DB E1 00 90 */ stfd f31, 0x90(r1) /* 80053AA0 00050A00 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80053AA4 00050A04 DB C1 00 80 */ stfd f30, 0x80(r1) /* 80053AA8 00050A08 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80053AAC 00050A0C DB A1 00 70 */ stfd f29, 0x70(r1) /* 80053AB0 00050A10 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80053AB4 00050A14 DB 81 00 60 */ stfd f28, 0x60(r1) /* 80053AB8 00050A18 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 80053ABC 00050A1C 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80053AC0 00050A20 93 C1 00 58 */ stw r30, 0x58(r1) /* 80053AC4 00050A24 93 A1 00 54 */ stw r29, 0x54(r1) /* 80053AC8 00050A28 93 81 00 50 */ stw r28, 0x50(r1) /* 80053ACC 00050A2C 7C BE 2B 78 */ mr r30, r5 /* 80053AD0 00050A30 7C 7C 1B 78 */ mr r28, r3 /* 80053AD4 00050A34 80 65 08 70 */ lwz r3, 0x870(r5) /* 80053AD8 00050A38 7C 9D 23 78 */ mr r29, r4 /* 80053ADC 00050A3C 7F C4 F3 78 */ mr r4, r30 /* 80053AE0 00050A40 4B FB 80 39 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 80053AE4 00050A44 7F A4 EB 78 */ mr r4, r29 /* 80053AE8 00050A48 7C 7F 1B 78 */ mr r31, r3 /* 80053AEC 00050A4C 81 9D 00 00 */ lwz r12, 0(r29) /* 80053AF0 00050A50 7F C5 F3 78 */ mr r5, r30 /* 80053AF4 00050A54 38 61 00 40 */ addi r3, r1, 0x40 /* 80053AF8 00050A58 81 8C 00 48 */ lwz r12, 0x48(r12) /* 80053AFC 00050A5C 7D 89 03 A6 */ mtctr r12 /* 80053B00 00050A60 4E 80 04 21 */ bctrl /* 80053B04 00050A64 C3 A1 00 40 */ lfs f29, 0x40(r1) /* 80053B08 00050A68 38 61 00 34 */ addi r3, r1, 0x34 /* 80053B0C 00050A6C C0 1F 00 40 */ lfs f0, 0x40(r31) /* 80053B10 00050A70 C3 E1 00 44 */ lfs f31, 0x44(r1) /* 80053B14 00050A74 C0 5F 00 50 */ lfs f2, 0x50(r31) /* 80053B18 00050A78 EC 00 E8 28 */ fsubs f0, f0, f29 /* 80053B1C 00050A7C C0 3F 00 60 */ lfs f1, 0x60(r31) /* 80053B20 00050A80 C3 C1 00 48 */ lfs f30, 0x48(r1) /* 80053B24 00050A84 EC 42 F8 28 */ fsubs f2, f2, f31 /* 80053B28 00050A88 D0 01 00 34 */ stfs f0, 0x34(r1) /* 80053B2C 00050A8C EC 01 F0 28 */ fsubs f0, f1, f30 /* 80053B30 00050A90 D0 41 00 38 */ stfs f2, 0x38(r1) /* 80053B34 00050A94 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 80053B38 00050A98 48 2C 0D 81 */ bl Magnitude__9CVector3fCFv /* 80053B3C 00050A9C C0 9D 00 A8 */ lfs f4, 0xa8(r29) /* 80053B40 00050AA0 C0 7D 00 9C */ lfs f3, 0x9c(r29) /* 80053B44 00050AA4 C0 5D 00 B0 */ lfs f2, 0xb0(r29) /* 80053B48 00050AA8 C0 1D 00 A4 */ lfs f0, 0xa4(r29) /* 80053B4C 00050AAC EC 84 18 28 */ fsubs f4, f4, f3 /* 80053B50 00050AB0 C0 7D 00 AC */ lfs f3, 0xac(r29) /* 80053B54 00050AB4 EC A2 00 28 */ fsubs f5, f2, f0 /* 80053B58 00050AB8 C0 1D 00 A0 */ lfs f0, 0xa0(r29) /* 80053B5C 00050ABC D0 81 00 10 */ stfs f4, 0x10(r1) /* 80053B60 00050AC0 EC 43 00 28 */ fsubs f2, f3, f0 /* 80053B64 00050AC4 FC 05 20 40 */ fcmpo cr0, f5, f4 /* 80053B68 00050AC8 D0 A1 00 14 */ stfs f5, 0x14(r1) /* 80053B6C 00050ACC D0 41 00 0C */ stfs f2, 0xc(r1) /* 80053B70 00050AD0 40 80 00 0C */ bge lbl_80053B7C /* 80053B74 00050AD4 38 61 00 10 */ addi r3, r1, 0x10 /* 80053B78 00050AD8 48 00 00 08 */ b lbl_80053B80 lbl_80053B7C: /* 80053B7C 00050ADC 38 61 00 14 */ addi r3, r1, 0x14 lbl_80053B80: /* 80053B80 00050AE0 C0 03 00 00 */ lfs f0, 0(r3) /* 80053B84 00050AE4 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80053B88 00050AE8 40 80 00 08 */ bge lbl_80053B90 /* 80053B8C 00050AEC 38 61 00 0C */ addi r3, r1, 0xc lbl_80053B90: /* 80053B90 00050AF0 C0 62 86 40 */ lfs f3, lbl_805AA360@sda21(r2) /* 80053B94 00050AF4 C0 43 00 00 */ lfs f2, 0(r3) /* 80053B98 00050AF8 C0 02 86 44 */ lfs f0, lbl_805AA364@sda21(r2) /* 80053B9C 00050AFC EC 63 00 B2 */ fmuls f3, f3, f2 /* 80053BA0 00050B00 D0 61 00 18 */ stfs f3, 0x18(r1) /* 80053BA4 00050B04 C0 5F 01 60 */ lfs f2, 0x160(r31) /* 80053BA8 00050B08 EC 21 10 28 */ fsubs f1, f1, f2 /* 80053BAC 00050B0C EC 01 00 28 */ fsubs f0, f1, f0 /* 80053BB0 00050B10 FC 00 18 40 */ fcmpo cr0, f0, f3 /* 80053BB4 00050B14 D0 01 00 08 */ stfs f0, 8(r1) /* 80053BB8 00050B18 40 80 00 0C */ bge lbl_80053BC4 /* 80053BBC 00050B1C 38 61 00 08 */ addi r3, r1, 8 /* 80053BC0 00050B20 48 00 00 08 */ b lbl_80053BC8 lbl_80053BC4: /* 80053BC4 00050B24 38 61 00 18 */ addi r3, r1, 0x18 lbl_80053BC8: /* 80053BC8 00050B28 C3 83 00 00 */ lfs f28, 0(r3) /* 80053BCC 00050B2C 38 61 00 28 */ addi r3, r1, 0x28 /* 80053BD0 00050B30 38 81 00 1C */ addi r4, r1, 0x1c /* 80053BD4 00050B34 D3 81 00 18 */ stfs f28, 0x18(r1) /* 80053BD8 00050B38 C0 5F 00 50 */ lfs f2, 0x50(r31) /* 80053BDC 00050B3C C0 3F 00 60 */ lfs f1, 0x60(r31) /* 80053BE0 00050B40 C0 1F 00 40 */ lfs f0, 0x40(r31) /* 80053BE4 00050B44 EC 5F 10 28 */ fsubs f2, f31, f2 /* 80053BE8 00050B48 EC 3E 08 28 */ fsubs f1, f30, f1 /* 80053BEC 00050B4C EC 1D 00 28 */ fsubs f0, f29, f0 /* 80053BF0 00050B50 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80053BF4 00050B54 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80053BF8 00050B58 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80053BFC 00050B5C 48 2C 0C 55 */ bl AsNormalized__9CVector3fCFv /* 80053C00 00050B60 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80053C04 00050B64 C0 41 00 2C */ lfs f2, 0x2c(r1) /* 80053C08 00050B68 EC 1C 00 32 */ fmuls f0, f28, f0 /* 80053C0C 00050B6C C0 21 00 30 */ lfs f1, 0x30(r1) /* 80053C10 00050B70 EC 5C 00 B2 */ fmuls f2, f28, f2 /* 80053C14 00050B74 EC 3C 00 72 */ fmuls f1, f28, f1 /* 80053C18 00050B78 EC 1D 00 28 */ fsubs f0, f29, f0 /* 80053C1C 00050B7C EC 5F 10 28 */ fsubs f2, f31, f2 /* 80053C20 00050B80 EC 3E 08 28 */ fsubs f1, f30, f1 /* 80053C24 00050B84 D0 1C 00 00 */ stfs f0, 0(r28) /* 80053C28 00050B88 D0 5C 00 04 */ stfs f2, 4(r28) /* 80053C2C 00050B8C D0 3C 00 08 */ stfs f1, 8(r28) /* 80053C30 00050B90 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 80053C34 00050B94 CB E1 00 90 */ lfd f31, 0x90(r1) /* 80053C38 00050B98 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80053C3C 00050B9C CB C1 00 80 */ lfd f30, 0x80(r1) /* 80053C40 00050BA0 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80053C44 00050BA4 CB A1 00 70 */ lfd f29, 0x70(r1) /* 80053C48 00050BA8 E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 80053C4C 00050BAC CB 81 00 60 */ lfd f28, 0x60(r1) /* 80053C50 00050BB0 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80053C54 00050BB4 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80053C58 00050BB8 83 A1 00 54 */ lwz r29, 0x54(r1) /* 80053C5C 00050BBC 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80053C60 00050BC0 83 81 00 50 */ lwz r28, 0x50(r1) /* 80053C64 00050BC4 7C 08 03 A6 */ mtlr r0 /* 80053C68 00050BC8 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80053C6C 00050BCC 4E 80 00 20 */ blr .global GetHomingPosition__6CActorCFRC13CStateManagerf GetHomingPosition__6CActorCFRC13CStateManagerf: /* 80053C70 00050BD0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80053C74 00050BD4 7C 08 02 A6 */ mflr r0 /* 80053C78 00050BD8 90 01 00 14 */ stw r0, 0x14(r1) /* 80053C7C 00050BDC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80053C80 00050BE0 7C 7F 1B 78 */ mr r31, r3 /* 80053C84 00050BE4 81 84 00 00 */ lwz r12, 0(r4) /* 80053C88 00050BE8 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 80053C8C 00050BEC 7D 89 03 A6 */ mtctr r12 /* 80053C90 00050BF0 4E 80 04 21 */ bctrl /* 80053C94 00050BF4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80053C98 00050BF8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80053C9C 00050BFC 7C 08 03 A6 */ mtlr r0 /* 80053CA0 00050C00 38 21 00 10 */ addi r1, r1, 0x10 /* 80053CA4 00050C04 4E 80 00 20 */ blr .global GetAimPosition__6CActorCFRC13CStateManagerf GetAimPosition__6CActorCFRC13CStateManagerf: /* 80053CA8 00050C08 C0 44 00 60 */ lfs f2, 0x60(r4) /* 80053CAC 00050C0C C0 24 00 50 */ lfs f1, 0x50(r4) /* 80053CB0 00050C10 C0 04 00 40 */ lfs f0, 0x40(r4) /* 80053CB4 00050C14 D0 03 00 00 */ stfs f0, 0(r3) /* 80053CB8 00050C18 D0 23 00 04 */ stfs f1, 4(r3) /* 80053CBC 00050C1C D0 43 00 08 */ stfs f2, 8(r3) /* 80053CC0 00050C20 4E 80 00 20 */ blr .global GetOrbitPosition__6CActorCFRC13CStateManager GetOrbitPosition__6CActorCFRC13CStateManager: /* 80053CC4 00050C24 C0 44 00 60 */ lfs f2, 0x60(r4) /* 80053CC8 00050C28 C0 24 00 50 */ lfs f1, 0x50(r4) /* 80053CCC 00050C2C C0 04 00 40 */ lfs f0, 0x40(r4) /* 80053CD0 00050C30 D0 03 00 00 */ stfs f0, 0(r3) /* 80053CD4 00050C34 D0 23 00 04 */ stfs f1, 4(r3) /* 80053CD8 00050C38 D0 43 00 08 */ stfs f2, 8(r3) /* 80053CDC 00050C3C 4E 80 00 20 */ blr .global GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei: /* 80053CE0 00050C40 38 60 00 0D */ li r3, 0xd /* 80053CE4 00050C44 4E 80 00 20 */ blr .global RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager: /* 80053CE8 00050C48 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053CEC 00050C4C 7C 08 02 A6 */ mflr r0 /* 80053CF0 00050C50 90 01 00 24 */ stw r0, 0x24(r1) /* 80053CF4 00050C54 BF 61 00 0C */ stmw r27, 0xc(r1) /* 80053CF8 00050C58 7C 7D 1B 78 */ mr r29, r3 /* 80053CFC 00050C5C 7C BB 2B 78 */ mr r27, r5 /* 80053D00 00050C60 7C 85 23 78 */ mr r5, r4 /* 80053D04 00050C64 7C DC 33 78 */ mr r28, r6 /* 80053D08 00050C68 7C FE 3B 78 */ mr r30, r7 /* 80053D0C 00050C6C 7D 1F 43 78 */ mr r31, r8 /* 80053D10 00050C70 38 60 00 00 */ li r3, 0 /* 80053D14 00050C74 38 80 00 01 */ li r4, 1 /* 80053D18 00050C78 48 33 61 DD */ bl __shl2i /* 80053D1C 00050C7C 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80053D20 00050C80 7C 85 20 F8 */ nor r5, r4, r4 /* 80053D24 00050C84 80 9D 00 68 */ lwz r4, 0x68(r29) /* 80053D28 00050C88 7C 63 18 F8 */ nor r3, r3, r3 /* 80053D2C 00050C8C 7C 00 28 38 */ and r0, r0, r5 /* 80053D30 00050C90 7F 65 DB 78 */ mr r5, r27 /* 80053D34 00050C94 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80053D38 00050C98 7C 80 18 38 */ and r0, r4, r3 /* 80053D3C 00050C9C 38 60 00 00 */ li r3, 0 /* 80053D40 00050CA0 38 80 00 01 */ li r4, 1 /* 80053D44 00050CA4 90 1D 00 68 */ stw r0, 0x68(r29) /* 80053D48 00050CA8 48 33 61 AD */ bl __shl2i /* 80053D4C 00050CAC 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80053D50 00050CB0 7C 85 20 F8 */ nor r5, r4, r4 /* 80053D54 00050CB4 80 9D 00 68 */ lwz r4, 0x68(r29) /* 80053D58 00050CB8 7C 63 18 F8 */ nor r3, r3, r3 /* 80053D5C 00050CBC 7C 00 28 38 */ and r0, r0, r5 /* 80053D60 00050CC0 7F 85 E3 78 */ mr r5, r28 /* 80053D64 00050CC4 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80053D68 00050CC8 7C 80 18 38 */ and r0, r4, r3 /* 80053D6C 00050CCC 38 60 00 00 */ li r3, 0 /* 80053D70 00050CD0 38 80 00 01 */ li r4, 1 /* 80053D74 00050CD4 90 1D 00 68 */ stw r0, 0x68(r29) /* 80053D78 00050CD8 48 33 61 7D */ bl __shl2i /* 80053D7C 00050CDC 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80053D80 00050CE0 7C 85 20 F8 */ nor r5, r4, r4 /* 80053D84 00050CE4 80 9D 00 68 */ lwz r4, 0x68(r29) /* 80053D88 00050CE8 7C 63 18 F8 */ nor r3, r3, r3 /* 80053D8C 00050CEC 7C 00 28 38 */ and r0, r0, r5 /* 80053D90 00050CF0 7F C5 F3 78 */ mr r5, r30 /* 80053D94 00050CF4 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80053D98 00050CF8 7C 80 18 38 */ and r0, r4, r3 /* 80053D9C 00050CFC 38 60 00 00 */ li r3, 0 /* 80053DA0 00050D00 38 80 00 01 */ li r4, 1 /* 80053DA4 00050D04 90 1D 00 68 */ stw r0, 0x68(r29) /* 80053DA8 00050D08 48 33 61 4D */ bl __shl2i /* 80053DAC 00050D0C 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80053DB0 00050D10 7C 86 20 F8 */ nor r6, r4, r4 /* 80053DB4 00050D14 80 9D 00 68 */ lwz r4, 0x68(r29) /* 80053DB8 00050D18 7C 65 18 F8 */ nor r5, r3, r3 /* 80053DBC 00050D1C 7C 00 30 38 */ and r0, r0, r6 /* 80053DC0 00050D20 7F E3 FB 78 */ mr r3, r31 /* 80053DC4 00050D24 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80053DC8 00050D28 7C 80 28 38 */ and r0, r4, r5 /* 80053DCC 00050D2C 7F A4 EB 78 */ mr r4, r29 /* 80053DD0 00050D30 90 1D 00 68 */ stw r0, 0x68(r29) /* 80053DD4 00050D34 4B FF 92 1D */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 80053DD8 00050D38 BB 61 00 0C */ lmw r27, 0xc(r1) /* 80053DDC 00050D3C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80053DE0 00050D40 7C 08 03 A6 */ mtlr r0 /* 80053DE4 00050D44 38 21 00 20 */ addi r1, r1, 0x20 /* 80053DE8 00050D48 4E 80 00 20 */ blr .global RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager: /* 80053DEC 00050D4C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053DF0 00050D50 7C 08 02 A6 */ mflr r0 /* 80053DF4 00050D54 90 01 00 24 */ stw r0, 0x24(r1) /* 80053DF8 00050D58 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80053DFC 00050D5C 7C FF 3B 78 */ mr r31, r7 /* 80053E00 00050D60 93 C1 00 18 */ stw r30, 0x18(r1) /* 80053E04 00050D64 7C 7E 1B 78 */ mr r30, r3 /* 80053E08 00050D68 38 60 00 00 */ li r3, 0 /* 80053E0C 00050D6C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80053E10 00050D70 7C DD 33 78 */ mr r29, r6 /* 80053E14 00050D74 93 81 00 10 */ stw r28, 0x10(r1) /* 80053E18 00050D78 7C BC 2B 78 */ mr r28, r5 /* 80053E1C 00050D7C 7C 85 23 78 */ mr r5, r4 /* 80053E20 00050D80 38 80 00 01 */ li r4, 1 /* 80053E24 00050D84 48 33 60 D1 */ bl __shl2i /* 80053E28 00050D88 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80053E2C 00050D8C 7C 85 20 F8 */ nor r5, r4, r4 /* 80053E30 00050D90 80 9E 00 68 */ lwz r4, 0x68(r30) /* 80053E34 00050D94 7C 63 18 F8 */ nor r3, r3, r3 /* 80053E38 00050D98 7C 00 28 38 */ and r0, r0, r5 /* 80053E3C 00050D9C 7F 85 E3 78 */ mr r5, r28 /* 80053E40 00050DA0 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80053E44 00050DA4 7C 80 18 38 */ and r0, r4, r3 /* 80053E48 00050DA8 38 60 00 00 */ li r3, 0 /* 80053E4C 00050DAC 38 80 00 01 */ li r4, 1 /* 80053E50 00050DB0 90 1E 00 68 */ stw r0, 0x68(r30) /* 80053E54 00050DB4 48 33 60 A1 */ bl __shl2i /* 80053E58 00050DB8 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80053E5C 00050DBC 7C 85 20 F8 */ nor r5, r4, r4 /* 80053E60 00050DC0 80 9E 00 68 */ lwz r4, 0x68(r30) /* 80053E64 00050DC4 7C 63 18 F8 */ nor r3, r3, r3 /* 80053E68 00050DC8 7C 00 28 38 */ and r0, r0, r5 /* 80053E6C 00050DCC 7F A5 EB 78 */ mr r5, r29 /* 80053E70 00050DD0 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80053E74 00050DD4 7C 80 18 38 */ and r0, r4, r3 /* 80053E78 00050DD8 38 60 00 00 */ li r3, 0 /* 80053E7C 00050DDC 38 80 00 01 */ li r4, 1 /* 80053E80 00050DE0 90 1E 00 68 */ stw r0, 0x68(r30) /* 80053E84 00050DE4 48 33 60 71 */ bl __shl2i /* 80053E88 00050DE8 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80053E8C 00050DEC 7C 86 20 F8 */ nor r6, r4, r4 /* 80053E90 00050DF0 80 9E 00 68 */ lwz r4, 0x68(r30) /* 80053E94 00050DF4 7C 65 18 F8 */ nor r5, r3, r3 /* 80053E98 00050DF8 7C 00 30 38 */ and r0, r0, r6 /* 80053E9C 00050DFC 7F E3 FB 78 */ mr r3, r31 /* 80053EA0 00050E00 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80053EA4 00050E04 7C 80 28 38 */ and r0, r4, r5 /* 80053EA8 00050E08 7F C4 F3 78 */ mr r4, r30 /* 80053EAC 00050E0C 90 1E 00 68 */ stw r0, 0x68(r30) /* 80053EB0 00050E10 4B FF 91 41 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 80053EB4 00050E14 80 01 00 24 */ lwz r0, 0x24(r1) /* 80053EB8 00050E18 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80053EBC 00050E1C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80053EC0 00050E20 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80053EC4 00050E24 83 81 00 10 */ lwz r28, 0x10(r1) /* 80053EC8 00050E28 7C 08 03 A6 */ mtlr r0 /* 80053ECC 00050E2C 38 21 00 20 */ addi r1, r1, 0x20 /* 80053ED0 00050E30 4E 80 00 20 */ blr .global RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager: /* 80053ED4 00050E34 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053ED8 00050E38 7C 08 02 A6 */ mflr r0 /* 80053EDC 00050E3C 90 01 00 24 */ stw r0, 0x24(r1) /* 80053EE0 00050E40 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80053EE4 00050E44 7C DF 33 78 */ mr r31, r6 /* 80053EE8 00050E48 93 C1 00 18 */ stw r30, 0x18(r1) /* 80053EEC 00050E4C 7C BE 2B 78 */ mr r30, r5 /* 80053EF0 00050E50 7C 85 23 78 */ mr r5, r4 /* 80053EF4 00050E54 38 80 00 01 */ li r4, 1 /* 80053EF8 00050E58 93 A1 00 14 */ stw r29, 0x14(r1) /* 80053EFC 00050E5C 7C 7D 1B 78 */ mr r29, r3 /* 80053F00 00050E60 38 60 00 00 */ li r3, 0 /* 80053F04 00050E64 48 33 5F F1 */ bl __shl2i /* 80053F08 00050E68 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80053F0C 00050E6C 7C 85 20 F8 */ nor r5, r4, r4 /* 80053F10 00050E70 80 9D 00 68 */ lwz r4, 0x68(r29) /* 80053F14 00050E74 7C 63 18 F8 */ nor r3, r3, r3 /* 80053F18 00050E78 7C 00 28 38 */ and r0, r0, r5 /* 80053F1C 00050E7C 7F C5 F3 78 */ mr r5, r30 /* 80053F20 00050E80 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80053F24 00050E84 7C 80 18 38 */ and r0, r4, r3 /* 80053F28 00050E88 38 60 00 00 */ li r3, 0 /* 80053F2C 00050E8C 38 80 00 01 */ li r4, 1 /* 80053F30 00050E90 90 1D 00 68 */ stw r0, 0x68(r29) /* 80053F34 00050E94 48 33 5F C1 */ bl __shl2i /* 80053F38 00050E98 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80053F3C 00050E9C 7C 86 20 F8 */ nor r6, r4, r4 /* 80053F40 00050EA0 80 9D 00 68 */ lwz r4, 0x68(r29) /* 80053F44 00050EA4 7C 65 18 F8 */ nor r5, r3, r3 /* 80053F48 00050EA8 7C 00 30 38 */ and r0, r0, r6 /* 80053F4C 00050EAC 7F E3 FB 78 */ mr r3, r31 /* 80053F50 00050EB0 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80053F54 00050EB4 7C 80 28 38 */ and r0, r4, r5 /* 80053F58 00050EB8 7F A4 EB 78 */ mr r4, r29 /* 80053F5C 00050EBC 90 1D 00 68 */ stw r0, 0x68(r29) /* 80053F60 00050EC0 4B FF 90 91 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 80053F64 00050EC4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80053F68 00050EC8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80053F6C 00050ECC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80053F70 00050ED0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80053F74 00050ED4 7C 08 03 A6 */ mtlr r0 /* 80053F78 00050ED8 38 21 00 20 */ addi r1, r1, 0x20 /* 80053F7C 00050EDC 4E 80 00 20 */ blr .global RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager: /* 80053F80 00050EE0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80053F84 00050EE4 7C 08 02 A6 */ mflr r0 /* 80053F88 00050EE8 90 01 00 14 */ stw r0, 0x14(r1) /* 80053F8C 00050EEC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80053F90 00050EF0 7C BF 2B 78 */ mr r31, r5 /* 80053F94 00050EF4 7C 85 23 78 */ mr r5, r4 /* 80053F98 00050EF8 38 80 00 01 */ li r4, 1 /* 80053F9C 00050EFC 93 C1 00 08 */ stw r30, 8(r1) /* 80053FA0 00050F00 7C 7E 1B 78 */ mr r30, r3 /* 80053FA4 00050F04 38 60 00 00 */ li r3, 0 /* 80053FA8 00050F08 48 33 5F 4D */ bl __shl2i /* 80053FAC 00050F0C 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80053FB0 00050F10 7C 86 20 F8 */ nor r6, r4, r4 /* 80053FB4 00050F14 80 9E 00 68 */ lwz r4, 0x68(r30) /* 80053FB8 00050F18 7C 65 18 F8 */ nor r5, r3, r3 /* 80053FBC 00050F1C 7C 00 30 38 */ and r0, r0, r6 /* 80053FC0 00050F20 7F E3 FB 78 */ mr r3, r31 /* 80053FC4 00050F24 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80053FC8 00050F28 7C 80 28 38 */ and r0, r4, r5 /* 80053FCC 00050F2C 7F C4 F3 78 */ mr r4, r30 /* 80053FD0 00050F30 90 1E 00 68 */ stw r0, 0x68(r30) /* 80053FD4 00050F34 4B FF 90 1D */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 80053FD8 00050F38 80 01 00 14 */ lwz r0, 0x14(r1) /* 80053FDC 00050F3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80053FE0 00050F40 83 C1 00 08 */ lwz r30, 8(r1) /* 80053FE4 00050F44 7C 08 03 A6 */ mtlr r0 /* 80053FE8 00050F48 38 21 00 10 */ addi r1, r1, 0x10 /* 80053FEC 00050F4C 4E 80 00 20 */ blr .global AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager: /* 80053FF0 00050F50 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053FF4 00050F54 7C 08 02 A6 */ mflr r0 /* 80053FF8 00050F58 90 01 00 24 */ stw r0, 0x24(r1) /* 80053FFC 00050F5C BF 41 00 08 */ stmw r26, 8(r1) /* 80054000 00050F60 7C 7E 1B 78 */ mr r30, r3 /* 80054004 00050F64 7C BA 2B 78 */ mr r26, r5 /* 80054008 00050F68 7C 85 23 78 */ mr r5, r4 /* 8005400C 00050F6C 7C DB 33 78 */ mr r27, r6 /* 80054010 00050F70 7C FC 3B 78 */ mr r28, r7 /* 80054014 00050F74 7D 1D 43 78 */ mr r29, r8 /* 80054018 00050F78 7D 3F 4B 78 */ mr r31, r9 /* 8005401C 00050F7C 38 60 00 00 */ li r3, 0 /* 80054020 00050F80 38 80 00 01 */ li r4, 1 /* 80054024 00050F84 48 33 5E D1 */ bl __shl2i /* 80054028 00050F88 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 8005402C 00050F8C 7F 45 D3 78 */ mr r5, r26 /* 80054030 00050F90 80 DE 00 68 */ lwz r6, 0x68(r30) /* 80054034 00050F94 7C 00 23 78 */ or r0, r0, r4 /* 80054038 00050F98 38 80 00 01 */ li r4, 1 /* 8005403C 00050F9C 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80054040 00050FA0 7C C0 1B 78 */ or r0, r6, r3 /* 80054044 00050FA4 38 60 00 00 */ li r3, 0 /* 80054048 00050FA8 90 1E 00 68 */ stw r0, 0x68(r30) /* 8005404C 00050FAC 48 33 5E A9 */ bl __shl2i /* 80054050 00050FB0 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80054054 00050FB4 7F 65 DB 78 */ mr r5, r27 /* 80054058 00050FB8 80 DE 00 68 */ lwz r6, 0x68(r30) /* 8005405C 00050FBC 7C 00 23 78 */ or r0, r0, r4 /* 80054060 00050FC0 38 80 00 01 */ li r4, 1 /* 80054064 00050FC4 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80054068 00050FC8 7C C0 1B 78 */ or r0, r6, r3 /* 8005406C 00050FCC 38 60 00 00 */ li r3, 0 /* 80054070 00050FD0 90 1E 00 68 */ stw r0, 0x68(r30) /* 80054074 00050FD4 48 33 5E 81 */ bl __shl2i /* 80054078 00050FD8 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 8005407C 00050FDC 7F 85 E3 78 */ mr r5, r28 /* 80054080 00050FE0 80 DE 00 68 */ lwz r6, 0x68(r30) /* 80054084 00050FE4 7C 00 23 78 */ or r0, r0, r4 /* 80054088 00050FE8 38 80 00 01 */ li r4, 1 /* 8005408C 00050FEC 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80054090 00050FF0 7C C0 1B 78 */ or r0, r6, r3 /* 80054094 00050FF4 38 60 00 00 */ li r3, 0 /* 80054098 00050FF8 90 1E 00 68 */ stw r0, 0x68(r30) /* 8005409C 00050FFC 48 33 5E 59 */ bl __shl2i /* 800540A0 00051000 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 800540A4 00051004 7F A5 EB 78 */ mr r5, r29 /* 800540A8 00051008 80 DE 00 68 */ lwz r6, 0x68(r30) /* 800540AC 0005100C 7C 00 23 78 */ or r0, r0, r4 /* 800540B0 00051010 38 80 00 01 */ li r4, 1 /* 800540B4 00051014 90 1E 00 6C */ stw r0, 0x6c(r30) /* 800540B8 00051018 7C C0 1B 78 */ or r0, r6, r3 /* 800540BC 0005101C 38 60 00 00 */ li r3, 0 /* 800540C0 00051020 90 1E 00 68 */ stw r0, 0x68(r30) /* 800540C4 00051024 48 33 5E 31 */ bl __shl2i /* 800540C8 00051028 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 800540CC 0005102C 80 BE 00 68 */ lwz r5, 0x68(r30) /* 800540D0 00051030 7C 00 23 78 */ or r0, r0, r4 /* 800540D4 00051034 7F C4 F3 78 */ mr r4, r30 /* 800540D8 00051038 90 1E 00 6C */ stw r0, 0x6c(r30) /* 800540DC 0005103C 7C A0 1B 78 */ or r0, r5, r3 /* 800540E0 00051040 7F E3 FB 78 */ mr r3, r31 /* 800540E4 00051044 90 1E 00 68 */ stw r0, 0x68(r30) /* 800540E8 00051048 4B FF 8F 09 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 800540EC 0005104C BB 41 00 08 */ lmw r26, 8(r1) /* 800540F0 00051050 80 01 00 24 */ lwz r0, 0x24(r1) /* 800540F4 00051054 7C 08 03 A6 */ mtlr r0 /* 800540F8 00051058 38 21 00 20 */ addi r1, r1, 0x20 /* 800540FC 0005105C 4E 80 00 20 */ blr .global AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager: /* 80054100 00051060 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80054104 00051064 7C 08 02 A6 */ mflr r0 /* 80054108 00051068 90 01 00 24 */ stw r0, 0x24(r1) /* 8005410C 0005106C BF 61 00 0C */ stmw r27, 0xc(r1) /* 80054110 00051070 7C 7E 1B 78 */ mr r30, r3 /* 80054114 00051074 7C BB 2B 78 */ mr r27, r5 /* 80054118 00051078 7C 85 23 78 */ mr r5, r4 /* 8005411C 0005107C 7C DC 33 78 */ mr r28, r6 /* 80054120 00051080 7C FD 3B 78 */ mr r29, r7 /* 80054124 00051084 7D 1F 43 78 */ mr r31, r8 /* 80054128 00051088 38 60 00 00 */ li r3, 0 /* 8005412C 0005108C 38 80 00 01 */ li r4, 1 /* 80054130 00051090 48 33 5D C5 */ bl __shl2i /* 80054134 00051094 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80054138 00051098 7F 65 DB 78 */ mr r5, r27 /* 8005413C 0005109C 80 DE 00 68 */ lwz r6, 0x68(r30) /* 80054140 000510A0 7C 00 23 78 */ or r0, r0, r4 /* 80054144 000510A4 38 80 00 01 */ li r4, 1 /* 80054148 000510A8 90 1E 00 6C */ stw r0, 0x6c(r30) /* 8005414C 000510AC 7C C0 1B 78 */ or r0, r6, r3 /* 80054150 000510B0 38 60 00 00 */ li r3, 0 /* 80054154 000510B4 90 1E 00 68 */ stw r0, 0x68(r30) /* 80054158 000510B8 48 33 5D 9D */ bl __shl2i /* 8005415C 000510BC 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80054160 000510C0 7F 85 E3 78 */ mr r5, r28 /* 80054164 000510C4 80 DE 00 68 */ lwz r6, 0x68(r30) /* 80054168 000510C8 7C 00 23 78 */ or r0, r0, r4 /* 8005416C 000510CC 38 80 00 01 */ li r4, 1 /* 80054170 000510D0 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80054174 000510D4 7C C0 1B 78 */ or r0, r6, r3 /* 80054178 000510D8 38 60 00 00 */ li r3, 0 /* 8005417C 000510DC 90 1E 00 68 */ stw r0, 0x68(r30) /* 80054180 000510E0 48 33 5D 75 */ bl __shl2i /* 80054184 000510E4 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80054188 000510E8 7F A5 EB 78 */ mr r5, r29 /* 8005418C 000510EC 80 DE 00 68 */ lwz r6, 0x68(r30) /* 80054190 000510F0 7C 00 23 78 */ or r0, r0, r4 /* 80054194 000510F4 38 80 00 01 */ li r4, 1 /* 80054198 000510F8 90 1E 00 6C */ stw r0, 0x6c(r30) /* 8005419C 000510FC 7C C0 1B 78 */ or r0, r6, r3 /* 800541A0 00051100 38 60 00 00 */ li r3, 0 /* 800541A4 00051104 90 1E 00 68 */ stw r0, 0x68(r30) /* 800541A8 00051108 48 33 5D 4D */ bl __shl2i /* 800541AC 0005110C 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 800541B0 00051110 80 BE 00 68 */ lwz r5, 0x68(r30) /* 800541B4 00051114 7C 00 23 78 */ or r0, r0, r4 /* 800541B8 00051118 7F C4 F3 78 */ mr r4, r30 /* 800541BC 0005111C 90 1E 00 6C */ stw r0, 0x6c(r30) /* 800541C0 00051120 7C A0 1B 78 */ or r0, r5, r3 /* 800541C4 00051124 7F E3 FB 78 */ mr r3, r31 /* 800541C8 00051128 90 1E 00 68 */ stw r0, 0x68(r30) /* 800541CC 0005112C 4B FF 8E 25 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 800541D0 00051130 BB 61 00 0C */ lmw r27, 0xc(r1) /* 800541D4 00051134 80 01 00 24 */ lwz r0, 0x24(r1) /* 800541D8 00051138 7C 08 03 A6 */ mtlr r0 /* 800541DC 0005113C 38 21 00 20 */ addi r1, r1, 0x20 /* 800541E0 00051140 4E 80 00 20 */ blr .global AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager AddMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager: /* 800541E4 00051144 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800541E8 00051148 7C 08 02 A6 */ mflr r0 /* 800541EC 0005114C 90 01 00 24 */ stw r0, 0x24(r1) /* 800541F0 00051150 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800541F4 00051154 7C FF 3B 78 */ mr r31, r7 /* 800541F8 00051158 93 C1 00 18 */ stw r30, 0x18(r1) /* 800541FC 0005115C 7C DE 33 78 */ mr r30, r6 /* 80054200 00051160 93 A1 00 14 */ stw r29, 0x14(r1) /* 80054204 00051164 7C BD 2B 78 */ mr r29, r5 /* 80054208 00051168 7C 85 23 78 */ mr r5, r4 /* 8005420C 0005116C 38 80 00 01 */ li r4, 1 /* 80054210 00051170 93 81 00 10 */ stw r28, 0x10(r1) /* 80054214 00051174 7C 7C 1B 78 */ mr r28, r3 /* 80054218 00051178 38 60 00 00 */ li r3, 0 /* 8005421C 0005117C 48 33 5C D9 */ bl __shl2i /* 80054220 00051180 80 1C 00 6C */ lwz r0, 0x6c(r28) /* 80054224 00051184 7F A5 EB 78 */ mr r5, r29 /* 80054228 00051188 80 DC 00 68 */ lwz r6, 0x68(r28) /* 8005422C 0005118C 7C 00 23 78 */ or r0, r0, r4 /* 80054230 00051190 38 80 00 01 */ li r4, 1 /* 80054234 00051194 90 1C 00 6C */ stw r0, 0x6c(r28) /* 80054238 00051198 7C C0 1B 78 */ or r0, r6, r3 /* 8005423C 0005119C 38 60 00 00 */ li r3, 0 /* 80054240 000511A0 90 1C 00 68 */ stw r0, 0x68(r28) /* 80054244 000511A4 48 33 5C B1 */ bl __shl2i /* 80054248 000511A8 80 1C 00 6C */ lwz r0, 0x6c(r28) /* 8005424C 000511AC 7F C5 F3 78 */ mr r5, r30 /* 80054250 000511B0 80 DC 00 68 */ lwz r6, 0x68(r28) /* 80054254 000511B4 7C 00 23 78 */ or r0, r0, r4 /* 80054258 000511B8 38 80 00 01 */ li r4, 1 /* 8005425C 000511BC 90 1C 00 6C */ stw r0, 0x6c(r28) /* 80054260 000511C0 7C C0 1B 78 */ or r0, r6, r3 /* 80054264 000511C4 38 60 00 00 */ li r3, 0 /* 80054268 000511C8 90 1C 00 68 */ stw r0, 0x68(r28) /* 8005426C 000511CC 48 33 5C 89 */ bl __shl2i /* 80054270 000511D0 80 1C 00 6C */ lwz r0, 0x6c(r28) /* 80054274 000511D4 80 BC 00 68 */ lwz r5, 0x68(r28) /* 80054278 000511D8 7C 00 23 78 */ or r0, r0, r4 /* 8005427C 000511DC 7F 84 E3 78 */ mr r4, r28 /* 80054280 000511E0 90 1C 00 6C */ stw r0, 0x6c(r28) /* 80054284 000511E4 7C A0 1B 78 */ or r0, r5, r3 /* 80054288 000511E8 7F E3 FB 78 */ mr r3, r31 /* 8005428C 000511EC 90 1C 00 68 */ stw r0, 0x68(r28) /* 80054290 000511F0 4B FF 8D 61 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 80054294 000511F4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80054298 000511F8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005429C 000511FC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800542A0 00051200 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800542A4 00051204 83 81 00 10 */ lwz r28, 0x10(r1) /* 800542A8 00051208 7C 08 03 A6 */ mtlr r0 /* 800542AC 0005120C 38 21 00 20 */ addi r1, r1, 0x20 /* 800542B0 00051210 4E 80 00 20 */ blr .global AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager: /* 800542B4 00051214 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800542B8 00051218 7C 08 02 A6 */ mflr r0 /* 800542BC 0005121C 90 01 00 24 */ stw r0, 0x24(r1) /* 800542C0 00051220 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800542C4 00051224 7C DF 33 78 */ mr r31, r6 /* 800542C8 00051228 93 C1 00 18 */ stw r30, 0x18(r1) /* 800542CC 0005122C 7C BE 2B 78 */ mr r30, r5 /* 800542D0 00051230 7C 85 23 78 */ mr r5, r4 /* 800542D4 00051234 38 80 00 01 */ li r4, 1 /* 800542D8 00051238 93 A1 00 14 */ stw r29, 0x14(r1) /* 800542DC 0005123C 7C 7D 1B 78 */ mr r29, r3 /* 800542E0 00051240 38 60 00 00 */ li r3, 0 /* 800542E4 00051244 48 33 5C 11 */ bl __shl2i /* 800542E8 00051248 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 800542EC 0005124C 7F C5 F3 78 */ mr r5, r30 /* 800542F0 00051250 80 DD 00 68 */ lwz r6, 0x68(r29) /* 800542F4 00051254 7C 00 23 78 */ or r0, r0, r4 /* 800542F8 00051258 38 80 00 01 */ li r4, 1 /* 800542FC 0005125C 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80054300 00051260 7C C0 1B 78 */ or r0, r6, r3 /* 80054304 00051264 38 60 00 00 */ li r3, 0 /* 80054308 00051268 90 1D 00 68 */ stw r0, 0x68(r29) /* 8005430C 0005126C 48 33 5B E9 */ bl __shl2i /* 80054310 00051270 80 1D 00 6C */ lwz r0, 0x6c(r29) /* 80054314 00051274 80 BD 00 68 */ lwz r5, 0x68(r29) /* 80054318 00051278 7C 00 23 78 */ or r0, r0, r4 /* 8005431C 0005127C 7F A4 EB 78 */ mr r4, r29 /* 80054320 00051280 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80054324 00051284 7C A0 1B 78 */ or r0, r5, r3 /* 80054328 00051288 7F E3 FB 78 */ mr r3, r31 /* 8005432C 0005128C 90 1D 00 68 */ stw r0, 0x68(r29) /* 80054330 00051290 4B FF 8C C1 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 80054334 00051294 80 01 00 24 */ lwz r0, 0x24(r1) /* 80054338 00051298 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005433C 0005129C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80054340 000512A0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80054344 000512A4 7C 08 03 A6 */ mtlr r0 /* 80054348 000512A8 38 21 00 20 */ addi r1, r1, 0x20 /* 8005434C 000512AC 4E 80 00 20 */ blr .global AddMaterial__6CActorF14EMaterialTypesR13CStateManager AddMaterial__6CActorF14EMaterialTypesR13CStateManager: /* 80054350 000512B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80054354 000512B4 7C 08 02 A6 */ mflr r0 /* 80054358 000512B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8005435C 000512BC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80054360 000512C0 7C BF 2B 78 */ mr r31, r5 /* 80054364 000512C4 7C 85 23 78 */ mr r5, r4 /* 80054368 000512C8 38 80 00 01 */ li r4, 1 /* 8005436C 000512CC 93 C1 00 08 */ stw r30, 8(r1) /* 80054370 000512D0 7C 7E 1B 78 */ mr r30, r3 /* 80054374 000512D4 38 60 00 00 */ li r3, 0 /* 80054378 000512D8 48 33 5B 7D */ bl __shl2i /* 8005437C 000512DC 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80054380 000512E0 80 BE 00 68 */ lwz r5, 0x68(r30) /* 80054384 000512E4 7C 00 23 78 */ or r0, r0, r4 /* 80054388 000512E8 7F C4 F3 78 */ mr r4, r30 /* 8005438C 000512EC 90 1E 00 6C */ stw r0, 0x6c(r30) /* 80054390 000512F0 7C A0 1B 78 */ or r0, r5, r3 /* 80054394 000512F4 7F E3 FB 78 */ mr r3, r31 /* 80054398 000512F8 90 1E 00 68 */ stw r0, 0x68(r30) /* 8005439C 000512FC 4B FF 8C 55 */ bl UpdateObjectInLists__13CStateManagerFR7CEntity /* 800543A0 00051300 80 01 00 14 */ lwz r0, 0x14(r1) /* 800543A4 00051304 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800543A8 00051308 83 C1 00 08 */ lwz r30, 8(r1) /* 800543AC 0005130C 7C 08 03 A6 */ mtlr r0 /* 800543B0 00051310 38 21 00 10 */ addi r1, r1, 0x10 /* 800543B4 00051314 4E 80 00 20 */ blr .global SetCallTouch__6CActorFb SetCallTouch__6CActorFb: /* 800543B8 00051318 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 800543BC 0005131C 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c /* 800543C0 00051320 98 03 00 E5 */ stb r0, 0xe5(r3) /* 800543C4 00051324 4E 80 00 20 */ blr .global GetCallTouch__6CActorCFv GetCallTouch__6CActorCFv: /* 800543C8 00051328 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 800543CC 0005132C 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f /* 800543D0 00051330 7C 03 00 D0 */ neg r0, r3 /* 800543D4 00051334 7C 00 1B 78 */ or r0, r0, r3 /* 800543D8 00051338 54 03 0F FE */ srwi r3, r0, 0x1f /* 800543DC 0005133C 4E 80 00 20 */ blr .global SetUseInSortedLists__6CActorFb SetUseInSortedLists__6CActorFb: /* 800543E0 00051340 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 800543E4 00051344 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b /* 800543E8 00051348 98 03 00 E5 */ stb r0, 0xe5(r3) /* 800543EC 0005134C 4E 80 00 20 */ blr .global GetUseInSortedLists__6CActorCFv GetUseInSortedLists__6CActorCFv: /* 800543F0 00051350 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 800543F4 00051354 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f /* 800543F8 00051358 7C 03 00 D0 */ neg r0, r3 /* 800543FC 0005135C 7C 00 1B 78 */ or r0, r0, r3 /* 80054400 00051360 54 03 0F FE */ srwi r3, r0, 0x1f /* 80054404 00051364 4E 80 00 20 */ blr .global Touch__6CActorFR6CActorR13CStateManager Touch__6CActorFR6CActorR13CStateManager: /* 80054408 00051368 4E 80 00 20 */ blr .global GetTouchBounds__6CActorCFv GetTouchBounds__6CActorCFv: /* 8005440C 0005136C 38 00 00 00 */ li r0, 0 /* 80054410 00051370 98 03 00 18 */ stb r0, 0x18(r3) /* 80054414 00051374 4E 80 00 20 */ blr .global GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo: /* 80054418 00051378 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005441C 0005137C 7C 08 02 A6 */ mflr r0 /* 80054420 00051380 90 01 00 14 */ stw r0, 0x14(r1) /* 80054424 00051384 81 83 00 00 */ lwz r12, 0(r3) /* 80054428 00051388 81 8C 00 38 */ lwz r12, 0x38(r12) /* 8005442C 0005138C 7D 89 03 A6 */ mtctr r12 /* 80054430 00051390 4E 80 04 21 */ bctrl /* 80054434 00051394 80 01 00 14 */ lwz r0, 0x14(r1) /* 80054438 00051398 7C 08 03 A6 */ mtlr r0 /* 8005443C 0005139C 38 21 00 10 */ addi r1, r1, 0x10 /* 80054440 000513A0 4E 80 00 20 */ blr .global GetDamageVulnerability__6CActorCFv GetDamageVulnerability__6CActorCFv: /* 80054444 000513A4 3C 60 80 57 */ lis r3, lbl_8056D578@ha /* 80054448 000513A8 38 63 D5 78 */ addi r3, r3, lbl_8056D578@l /* 8005444C 000513AC 4E 80 00 20 */ blr .global HealthInfo__6CActorFR13CStateManager HealthInfo__6CActorFR13CStateManager: /* 80054450 000513B0 38 60 00 00 */ li r3, 0 /* 80054454 000513B4 4E 80 00 20 */ blr .global GetPitch__6CActorCFv GetPitch__6CActorCFv: /* 80054458 000513B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005445C 000513BC 7C 08 02 A6 */ mflr r0 /* 80054460 000513C0 90 01 00 14 */ stw r0, 0x14(r1) /* 80054464 000513C4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80054468 000513C8 7C 7F 1B 78 */ mr r31, r3 /* 8005446C 000513CC C0 23 00 48 */ lfs f1, 0x48(r3) /* 80054470 000513D0 C0 03 00 38 */ lfs f0, 0x38(r3) /* 80054474 000513D4 EC 21 00 72 */ fmuls f1, f1, f1 /* 80054478 000513D8 EC 00 00 32 */ fmuls f0, f0, f0 /* 8005447C 000513DC EC 21 00 2A */ fadds f1, f1, f0 /* 80054480 000513E0 48 2C 10 81 */ bl SqrtF__5CMathFf /* 80054484 000513E4 C0 1F 00 58 */ lfs f0, 0x58(r31) /* 80054488 000513E8 FC 40 08 90 */ fmr f2, f1 /* 8005448C 000513EC FC 20 00 50 */ fneg f1, f0 /* 80054490 000513F0 48 34 07 DD */ bl atan2 /* 80054494 000513F4 FC 00 08 50 */ fneg f0, f1 /* 80054498 000513F8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005449C 000513FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800544A0 00051400 FC 20 00 18 */ frsp f1, f0 /* 800544A4 00051404 7C 08 03 A6 */ mtlr r0 /* 800544A8 00051408 38 21 00 10 */ addi r1, r1, 0x10 /* 800544AC 0005140C 4E 80 00 20 */ blr .global GetYaw__6CActorCFv GetYaw__6CActorCFv: /* 800544B0 00051410 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800544B4 00051414 7C 08 02 A6 */ mflr r0 /* 800544B8 00051418 C8 22 86 48 */ lfd f1, lbl_805AA368@sda21(r2) /* 800544BC 0005141C 90 01 00 14 */ stw r0, 0x14(r1) /* 800544C0 00051420 C0 03 00 38 */ lfs f0, 0x38(r3) /* 800544C4 00051424 C0 43 00 48 */ lfs f2, 0x48(r3) /* 800544C8 00051428 EC 00 00 32 */ fmuls f0, f0, f0 /* 800544CC 0005142C EC 82 00 BA */ fmadds f4, f2, f2, f0 /* 800544D0 00051430 FC 04 08 40 */ fcmpo cr0, f4, f1 /* 800544D4 00051434 40 81 00 58 */ ble lbl_8005452C /* 800544D8 00051438 FC 20 20 34 */ frsqrte f1, f4 /* 800544DC 0005143C C8 62 86 50 */ lfd f3, lbl_805AA370@sda21(r2) /* 800544E0 00051440 C8 42 86 58 */ lfd f2, lbl_805AA378@sda21(r2) /* 800544E4 00051444 FC 01 00 72 */ fmul f0, f1, f1 /* 800544E8 00051448 FC 23 00 72 */ fmul f1, f3, f1 /* 800544EC 0005144C FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800544F0 00051450 FC 21 00 32 */ fmul f1, f1, f0 /* 800544F4 00051454 FC 01 00 72 */ fmul f0, f1, f1 /* 800544F8 00051458 FC 23 00 72 */ fmul f1, f3, f1 /* 800544FC 0005145C FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 80054500 00051460 FC 21 00 32 */ fmul f1, f1, f0 /* 80054504 00051464 FC 01 00 72 */ fmul f0, f1, f1 /* 80054508 00051468 FC 23 00 72 */ fmul f1, f3, f1 /* 8005450C 0005146C FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 80054510 00051470 FC 21 00 32 */ fmul f1, f1, f0 /* 80054514 00051474 FC 01 00 72 */ fmul f0, f1, f1 /* 80054518 00051478 FC 23 00 72 */ fmul f1, f3, f1 /* 8005451C 0005147C FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 80054520 00051480 FC 01 00 32 */ fmul f0, f1, f0 /* 80054524 00051484 FC 24 00 32 */ fmul f1, f4, f0 /* 80054528 00051488 48 00 00 2C */ b lbl_80054554 lbl_8005452C: /* 8005452C 0005148C FC 01 20 00 */ fcmpu cr0, f1, f4 /* 80054530 00051490 40 82 00 08 */ bne lbl_80054538 /* 80054534 00051494 48 00 00 20 */ b lbl_80054554 lbl_80054538: /* 80054538 00051498 FC 04 08 00 */ fcmpu cr0, f4, f1 /* 8005453C 0005149C 41 82 00 10 */ beq lbl_8005454C /* 80054540 000514A0 3C 80 80 5B */ lis r4, lbl_805A8BA0@ha /* 80054544 000514A4 C0 24 8B A0 */ lfs f1, lbl_805A8BA0@l(r4) /* 80054548 000514A8 48 00 00 0C */ b lbl_80054554 lbl_8005454C: /* 8005454C 000514AC 3C 80 80 5B */ lis r4, lbl_805A8BA4@ha /* 80054550 000514B0 C0 24 8B A4 */ lfs f1, lbl_805A8BA4@l(r4) lbl_80054554: /* 80054554 000514B4 FC 20 08 18 */ frsp f1, f1 /* 80054558 000514B8 C0 02 86 60 */ lfs f0, lbl_805AA380@sda21(r2) /* 8005455C 000514BC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80054560 000514C0 40 81 00 1C */ ble lbl_8005457C /* 80054564 000514C4 C0 23 00 38 */ lfs f1, 0x38(r3) /* 80054568 000514C8 C0 43 00 48 */ lfs f2, 0x48(r3) /* 8005456C 000514CC 48 34 07 01 */ bl atan2 /* 80054570 000514D0 FC 00 08 50 */ fneg f0, f1 /* 80054574 000514D4 FC 20 00 18 */ frsp f1, f0 /* 80054578 000514D8 48 00 00 08 */ b lbl_80054580 lbl_8005457C: /* 8005457C 000514DC C0 22 86 3C */ lfs f1, lbl_805AA35C@sda21(r2) lbl_80054580: /* 80054580 000514E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80054584 000514E4 7C 08 03 A6 */ mtlr r0 /* 80054588 000514E8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005458C 000514EC 4E 80 00 20 */ blr .global RenderInternal__6CActorCFRC13CStateManager RenderInternal__6CActorCFRC13CStateManager: /* 80054590 000514F0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80054594 000514F4 7C 08 02 A6 */ mflr r0 /* 80054598 000514F8 90 01 00 64 */ stw r0, 0x64(r1) /* 8005459C 000514FC DB E1 00 50 */ stfd f31, 0x50(r1) /* 800545A0 00051500 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 800545A4 00051504 DB C1 00 40 */ stfd f30, 0x40(r1) /* 800545A8 00051508 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 800545AC 0005150C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800545B0 00051510 93 C1 00 38 */ stw r30, 0x38(r1) /* 800545B4 00051514 93 A1 00 34 */ stw r29, 0x34(r1) /* 800545B8 00051518 7C 9D 23 78 */ mr r29, r4 /* 800545BC 0005151C 7C 7F 1B 78 */ mr r31, r3 /* 800545C0 00051520 7F A3 EB 78 */ mr r3, r29 /* 800545C4 00051524 48 0C 09 19 */ bl GetRenderingModel__10CModelDataFRC13CStateManager /* 800545C8 00051528 7C 7E 1B 78 */ mr r30, r3 /* 800545CC 0005152C 2C 1E 00 03 */ cmpwi r30, 3 /* 800545D0 00051530 40 82 01 90 */ bne lbl_80054760 /* 800545D4 00051534 80 7F 00 64 */ lwz r3, 0x64(r31) /* 800545D8 00051538 88 03 00 14 */ lbz r0, 0x14(r3) /* 800545DC 0005153C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 800545E0 00051540 41 82 00 B0 */ beq lbl_80054690 /* 800545E4 00051544 E0 3F A0 BB */ psq_l f1, 187(r31), 1, qr2 /* 800545E8 00051548 C0 02 86 64 */ lfs f0, lbl_805AA384@sda21(r2) /* 800545EC 0005154C C0 9F 00 D0 */ lfs f4, 0xd0(r31) /* 800545F0 00051550 C0 42 86 30 */ lfs f2, lbl_805AA350@sda21(r2) /* 800545F4 00051554 EC 60 00 72 */ fmuls f3, f0, f1 /* 800545F8 00051558 FC 04 10 40 */ fcmpo cr0, f4, f2 /* 800545FC 0005155C 4C 40 13 82 */ cror 2, 0, 2 /* 80054600 00051560 40 82 00 10 */ bne lbl_80054610 /* 80054604 00051564 FC 40 20 90 */ fmr f2, f4 /* 80054608 00051568 39 20 00 00 */ li r9, 0 /* 8005460C 0005156C 48 00 00 2C */ b lbl_80054638 lbl_80054610: /* 80054610 00051570 C0 02 86 68 */ lfs f0, lbl_805AA388@sda21(r2) /* 80054614 00051574 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80054618 00051578 40 80 00 1C */ bge lbl_80054634 /* 8005461C 0005157C EC 04 10 28 */ fsubs f0, f4, f2 /* 80054620 00051580 C0 22 86 6C */ lfs f1, lbl_805AA38C@sda21(r2) /* 80054624 00051584 EF E1 00 32 */ fmuls f31, f1, f0 /* 80054628 00051588 F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 /* 8005462C 0005158C 89 21 00 0A */ lbz r9, 0xa(r1) /* 80054630 00051590 48 00 00 08 */ b lbl_80054638 lbl_80054634: /* 80054634 00051594 39 20 00 FF */ li r9, 0xff lbl_80054638: /* 80054638 00051598 C0 02 86 6C */ lfs f0, lbl_805AA38C@sda21(r2) /* 8005463C 0005159C EC 00 00 B2 */ fmuls f0, f0, f2 /* 80054640 000515A0 EF C0 00 F2 */ fmuls f30, f0, f3 /* 80054644 000515A4 F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 /* 80054648 000515A8 38 9F 00 34 */ addi r4, r31, 0x34 /* 8005464C 000515AC 88 7F 00 BB */ lbz r3, 0xbb(r31) /* 80054650 000515B0 38 A1 00 20 */ addi r5, r1, 0x20 /* 80054654 000515B4 89 01 00 09 */ lbz r8, 9(r1) /* 80054658 000515B8 38 C1 00 1C */ addi r6, r1, 0x1c /* 8005465C 000515BC 54 60 F6 BE */ rlwinm r0, r3, 0x1e, 0x1a, 0x1f /* 80054660 000515C0 98 61 00 23 */ stb r3, 0x23(r1) /* 80054664 000515C4 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80054668 000515C8 38 FF 00 B4 */ addi r7, r31, 0xb4 /* 8005466C 000515CC 99 01 00 20 */ stb r8, 0x20(r1) /* 80054670 000515D0 99 01 00 21 */ stb r8, 0x21(r1) /* 80054674 000515D4 99 01 00 22 */ stb r8, 0x22(r1) /* 80054678 000515D8 99 21 00 1C */ stb r9, 0x1c(r1) /* 8005467C 000515DC 99 21 00 1D */ stb r9, 0x1d(r1) /* 80054680 000515E0 99 21 00 1E */ stb r9, 0x1e(r1) /* 80054684 000515E4 98 01 00 1F */ stb r0, 0x1f(r1) /* 80054688 000515E8 48 0C 1C 19 */ bl RenderThermal__10CModelDataCFRC12CTransform4fRC6CColorRC6CColorRC11CModelFlags /* 8005468C 000515EC 48 00 00 EC */ b lbl_80054778 lbl_80054690: /* 80054690 000515F0 C0 3D 0F 28 */ lfs f1, 0xf28(r29) /* 80054694 000515F4 C0 02 86 70 */ lfs f0, lbl_805AA390@sda21(r2) /* 80054698 000515F8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8005469C 000515FC 40 81 00 C4 */ ble lbl_80054760 /* 800546A0 00051600 88 1F 00 B4 */ lbz r0, 0xb4(r31) /* 800546A4 00051604 7C 00 07 75 */ extsb. r0, r0 /* 800546A8 00051608 40 82 00 B8 */ bne lbl_80054760 /* 800546AC 0005160C C0 1D 0F 24 */ lfs f0, 0xf24(r29) /* 800546B0 00051610 D0 21 00 10 */ stfs f1, 0x10(r1) /* 800546B4 00051614 EC 01 00 2A */ fadds f0, f1, f0 /* 800546B8 00051618 EC 01 00 32 */ fmuls f0, f1, f0 /* 800546BC 0005161C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800546C0 00051620 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800546C4 00051624 40 80 00 0C */ bge lbl_800546D0 /* 800546C8 00051628 38 61 00 10 */ addi r3, r1, 0x10 /* 800546CC 0005162C 48 00 00 08 */ b lbl_800546D4 lbl_800546D0: /* 800546D0 00051630 38 61 00 14 */ addi r3, r1, 0x14 lbl_800546D4: /* 800546D4 00051634 C0 22 86 6C */ lfs f1, lbl_805AA38C@sda21(r2) /* 800546D8 00051638 38 81 00 0C */ addi r4, r1, 0xc /* 800546DC 0005163C C0 03 00 00 */ lfs f0, 0(r3) /* 800546E0 00051640 38 6D 82 B0 */ addi r3, r13, lbl_805A6E70@sda21 /* 800546E4 00051644 38 AD 82 B4 */ addi r5, r13, lbl_805A6E74@sda21 /* 800546E8 00051648 EC 01 00 32 */ fmuls f0, f1, f0 /* 800546EC 0005164C D0 01 00 0C */ stfs f0, 0xc(r1) /* 800546F0 00051650 4B FB 7B C5 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800546F4 00051654 C3 C3 00 00 */ lfs f30, 0(r3) /* 800546F8 00051658 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 /* 800546FC 0005165C 39 60 00 FF */ li r11, 0xff /* 80054700 00051660 88 7F 00 B4 */ lbz r3, 0xb4(r31) /* 80054704 00051664 39 00 00 02 */ li r8, 2 /* 80054708 00051668 88 C1 00 08 */ lbz r6, 8(r1) /* 8005470C 0005166C 7F C4 F3 78 */ mr r4, r30 /* 80054710 00051670 80 1F 00 B8 */ lwz r0, 0xb8(r31) /* 80054714 00051674 38 BF 00 34 */ addi r5, r31, 0x34 /* 80054718 00051678 98 C1 00 18 */ stb r6, 0x18(r1) /* 8005471C 0005167C 38 E1 00 24 */ addi r7, r1, 0x24 /* 80054720 00051680 89 5F 00 B5 */ lbz r10, 0xb5(r31) /* 80054724 00051684 98 61 00 24 */ stb r3, 0x24(r1) /* 80054728 00051688 A1 3F 00 B6 */ lhz r9, 0xb6(r31) /* 8005472C 0005168C 98 C1 00 19 */ stb r6, 0x19(r1) /* 80054730 00051690 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80054734 00051694 98 C1 00 1A */ stb r6, 0x1a(r1) /* 80054738 00051698 80 DF 00 90 */ lwz r6, 0x90(r31) /* 8005473C 0005169C 99 61 00 1B */ stb r11, 0x1b(r1) /* 80054740 000516A0 90 01 00 28 */ stw r0, 0x28(r1) /* 80054744 000516A4 80 01 00 18 */ lwz r0, 0x18(r1) /* 80054748 000516A8 99 41 00 25 */ stb r10, 0x25(r1) /* 8005474C 000516AC B1 21 00 26 */ sth r9, 0x26(r1) /* 80054750 000516B0 99 01 00 24 */ stb r8, 0x24(r1) /* 80054754 000516B4 90 01 00 28 */ stw r0, 0x28(r1) /* 80054758 000516B8 48 0C 21 1D */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 8005475C 000516BC 48 00 00 1C */ b lbl_80054778 lbl_80054760: /* 80054760 000516C0 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80054764 000516C4 7F C4 F3 78 */ mr r4, r30 /* 80054768 000516C8 80 DF 00 90 */ lwz r6, 0x90(r31) /* 8005476C 000516CC 38 BF 00 34 */ addi r5, r31, 0x34 /* 80054770 000516D0 38 FF 00 B4 */ addi r7, r31, 0xb4 /* 80054774 000516D4 48 0C 21 01 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_80054778: /* 80054778 000516D8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 8005477C 000516DC CB E1 00 50 */ lfd f31, 0x50(r1) /* 80054780 000516E0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 80054784 000516E4 CB C1 00 40 */ lfd f30, 0x40(r1) /* 80054788 000516E8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8005478C 000516EC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80054790 000516F0 80 01 00 64 */ lwz r0, 0x64(r1) /* 80054794 000516F4 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80054798 000516F8 7C 08 03 A6 */ mtlr r0 /* 8005479C 000516FC 38 21 00 60 */ addi r1, r1, 0x60 /* 800547A0 00051700 4E 80 00 20 */ blr .global Render__6CActorCFRC13CStateManager Render__6CActorCFRC13CStateManager: /* 800547A4 00051704 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800547A8 00051708 7C 08 02 A6 */ mflr r0 /* 800547AC 0005170C 90 01 00 44 */ stw r0, 0x44(r1) /* 800547B0 00051710 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800547B4 00051714 7C 9F 23 78 */ mr r31, r4 /* 800547B8 00051718 93 C1 00 38 */ stw r30, 0x38(r1) /* 800547BC 0005171C 7C 7E 1B 78 */ mr r30, r3 /* 800547C0 00051720 93 A1 00 34 */ stw r29, 0x34(r1) /* 800547C4 00051724 80 83 00 64 */ lwz r4, 0x64(r3) /* 800547C8 00051728 28 04 00 00 */ cmplwi r4, 0 /* 800547CC 0005172C 41 82 01 44 */ beq lbl_80054910 /* 800547D0 00051730 80 A4 00 10 */ lwz r5, 0x10(r4) /* 800547D4 00051734 38 60 00 00 */ li r3, 0 /* 800547D8 00051738 28 05 00 00 */ cmplwi r5, 0 /* 800547DC 0005173C 40 82 00 14 */ bne lbl_800547F0 /* 800547E0 00051740 88 04 00 28 */ lbz r0, 0x28(r4) /* 800547E4 00051744 28 00 00 00 */ cmplwi r0, 0 /* 800547E8 00051748 40 82 00 08 */ bne lbl_800547F0 /* 800547EC 0005174C 38 60 00 01 */ li r3, 1 lbl_800547F0: /* 800547F0 00051750 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800547F4 00051754 40 82 01 1C */ bne lbl_80054910 /* 800547F8 00051758 88 1E 00 E6 */ lbz r0, 0xe6(r30) /* 800547FC 0005175C 3B A0 00 00 */ li r29, 0 /* 80054800 00051760 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80054804 00051764 41 82 00 18 */ beq lbl_8005481C /* 80054808 00051768 28 04 00 00 */ cmplwi r4, 0 /* 8005480C 0005176C 41 82 00 10 */ beq lbl_8005481C /* 80054810 00051770 28 05 00 00 */ cmplwi r5, 0 /* 80054814 00051774 41 82 00 08 */ beq lbl_8005481C /* 80054818 00051778 3B A0 00 01 */ li r29, 1 lbl_8005481C: /* 8005481C 0005177C 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 80054820 00051780 41 82 00 0C */ beq lbl_8005482C /* 80054824 00051784 38 65 01 20 */ addi r3, r5, 0x120 /* 80054828 00051788 48 06 37 8D */ bl RenderSystemsToBeDrawnFirst__17CParticleDatabaseCFv lbl_8005482C: /* 8005482C 0005178C 88 1E 00 E7 */ lbz r0, 0xe7(r30) /* 80054830 00051790 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 80054834 00051794 41 82 00 C4 */ beq lbl_800548F8 /* 80054838 00051798 88 1E 00 E5 */ lbz r0, 0xe5(r30) /* 8005483C 0005179C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80054840 000517A0 41 82 00 10 */ beq lbl_80054850 /* 80054844 000517A4 7F E3 FB 78 */ mr r3, r31 /* 80054848 000517A8 7F C4 F3 78 */ mr r4, r30 /* 8005484C 000517AC 4B FF 08 3D */ bl SetupParticleHook__13CStateManagerCFRC6CActor lbl_80054850: /* 80054850 000517B0 88 1E 00 E5 */ lbz r0, 0xe5(r30) /* 80054854 000517B4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80054858 000517B8 41 82 00 14 */ beq lbl_8005486C /* 8005485C 000517BC 7F C3 F3 78 */ mr r3, r30 /* 80054860 000517C0 7F E4 FB 78 */ mr r4, r31 /* 80054864 000517C4 4B FF FD 2D */ bl RenderInternal__6CActorCFRC13CStateManager /* 80054868 000517C8 48 00 00 70 */ b lbl_800548D8 lbl_8005486C: /* 8005486C 000517CC 48 2B 56 75 */ bl GetSecondsMod900__9CGraphicsFv /* 80054870 000517D0 C0 1E 00 BC */ lfs f0, 0xbc(r30) /* 80054874 000517D4 3C 00 43 30 */ lis r0, 0x4330 /* 80054878 000517D8 C0 62 86 74 */ lfs f3, lbl_805AA394@sda21(r2) /* 8005487C 000517DC 38 61 00 0C */ addi r3, r1, 0xc /* 80054880 000517E0 EC 81 00 28 */ fsubs f4, f1, f0 /* 80054884 000517E4 90 01 00 20 */ stw r0, 0x20(r1) /* 80054888 000517E8 C8 42 86 80 */ lfd f2, lbl_805AA3A0@sda21(r2) /* 8005488C 000517EC 38 81 00 08 */ addi r4, r1, 8 /* 80054890 000517F0 C0 02 86 78 */ lfs f0, lbl_805AA398@sda21(r2) /* 80054894 000517F4 EC 24 00 F2 */ fmuls f1, f4, f3 /* 80054898 000517F8 FC 20 08 1E */ fctiwz f1, f1 /* 8005489C 000517FC D8 21 00 18 */ stfd f1, 0x18(r1) /* 800548A0 00051800 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800548A4 00051804 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800548A8 00051808 90 01 00 24 */ stw r0, 0x24(r1) /* 800548AC 0005180C C8 21 00 20 */ lfd f1, 0x20(r1) /* 800548B0 00051810 EC 21 10 28 */ fsubs f1, f1, f2 /* 800548B4 00051814 EC 01 20 3C */ fnmsubs f0, f1, f0, f4 /* 800548B8 00051818 D0 01 00 08 */ stfs f0, 8(r1) /* 800548BC 0005181C 48 30 3A 19 */ bl __ct__13CTimeProviderFRCf /* 800548C0 00051820 7F C3 F3 78 */ mr r3, r30 /* 800548C4 00051824 7F E4 FB 78 */ mr r4, r31 /* 800548C8 00051828 4B FF FC C9 */ bl RenderInternal__6CActorCFRC13CStateManager /* 800548CC 0005182C 38 61 00 0C */ addi r3, r1, 0xc /* 800548D0 00051830 38 80 FF FF */ li r4, -1 /* 800548D4 00051834 48 30 39 89 */ bl __dt__13CTimeProviderFv lbl_800548D8: /* 800548D8 00051838 88 1E 00 E5 */ lbz r0, 0xe5(r30) /* 800548DC 0005183C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 800548E0 00051840 41 82 00 18 */ beq lbl_800548F8 /* 800548E4 00051844 48 2F DE 25 */ bl ClearPointGeneratorFunc__13CSkinnedModelFv /* 800548E8 00051848 80 7F 08 84 */ lwz r3, 0x884(r31) /* 800548EC 0005184C 7F E4 FB 78 */ mr r4, r31 /* 800548F0 00051850 7F C5 F3 78 */ mr r5, r30 /* 800548F4 00051854 48 18 F5 31 */ bl Render__20CActorModelParticlesCFRC6CActor lbl_800548F8: /* 800548F8 00051858 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 800548FC 0005185C 41 82 00 14 */ beq lbl_80054910 /* 80054900 00051860 80 7E 00 64 */ lwz r3, 0x64(r30) /* 80054904 00051864 80 63 00 10 */ lwz r3, 0x10(r3) /* 80054908 00051868 38 63 01 20 */ addi r3, r3, 0x120 /* 8005490C 0005186C 48 06 36 19 */ bl RenderSystemsToBeDrawnLast__17CParticleDatabaseCFv lbl_80054910: /* 80054910 00051870 7F C3 F3 78 */ mr r3, r30 /* 80054914 00051874 48 00 00 B5 */ bl DrawTouchBounds__6CActorCFv /* 80054918 00051878 80 01 00 44 */ lwz r0, 0x44(r1) /* 8005491C 0005187C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80054920 00051880 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80054924 00051884 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80054928 00051888 7C 08 03 A6 */ mtlr r0 /* 8005492C 0005188C 38 21 00 40 */ addi r1, r1, 0x40 /* 80054930 00051890 4E 80 00 20 */ blr .global CanRenderUnsorted__6CActorCFRC13CStateManager CanRenderUnsorted__6CActorCFRC13CStateManager: /* 80054934 00051894 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80054938 00051898 7C 08 02 A6 */ mflr r0 /* 8005493C 0005189C 38 A0 00 00 */ li r5, 0 /* 80054940 000518A0 90 01 00 14 */ stw r0, 0x14(r1) /* 80054944 000518A4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80054948 000518A8 80 C3 00 64 */ lwz r6, 0x64(r3) /* 8005494C 000518AC 28 06 00 00 */ cmplwi r6, 0 /* 80054950 000518B0 41 82 00 14 */ beq lbl_80054964 /* 80054954 000518B4 80 06 00 10 */ lwz r0, 0x10(r6) /* 80054958 000518B8 28 00 00 00 */ cmplwi r0, 0 /* 8005495C 000518BC 41 82 00 08 */ beq lbl_80054964 /* 80054960 000518C0 38 A0 00 01 */ li r5, 1 lbl_80054964: /* 80054964 000518C4 54 A0 06 3F */ clrlwi. r0, r5, 0x18 /* 80054968 000518C8 41 82 00 28 */ beq lbl_80054990 /* 8005496C 000518CC 80 A6 00 10 */ lwz r5, 0x10(r6) /* 80054970 000518D0 88 05 01 D4 */ lbz r0, 0x1d4(r5) /* 80054974 000518D4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80054978 000518D8 41 82 00 18 */ beq lbl_80054990 /* 8005497C 000518DC 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 80054980 000518E0 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80054984 000518E4 41 82 00 0C */ beq lbl_80054990 /* 80054988 000518E8 38 60 00 00 */ li r3, 0 /* 8005498C 000518EC 48 00 00 28 */ b lbl_800549B4 lbl_80054990: /* 80054990 000518F0 88 03 00 E5 */ lbz r0, 0xe5(r3) /* 80054994 000518F4 3B E0 00 00 */ li r31, 0 /* 80054998 000518F8 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 8005499C 000518FC 40 82 00 10 */ bne lbl_800549AC /* 800549A0 00051900 4B FF F0 49 */ bl IsModelOpaque__6CActorCFRC13CStateManager /* 800549A4 00051904 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800549A8 00051908 41 82 00 08 */ beq lbl_800549B0 lbl_800549AC: /* 800549AC 0005190C 3B E0 00 01 */ li r31, 1 lbl_800549B0: /* 800549B0 00051910 7F E3 FB 78 */ mr r3, r31 lbl_800549B4: /* 800549B4 00051914 80 01 00 14 */ lwz r0, 0x14(r1) /* 800549B8 00051918 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800549BC 0005191C 7C 08 03 A6 */ mtlr r0 /* 800549C0 00051920 38 21 00 10 */ addi r1, r1, 0x10 /* 800549C4 00051924 4E 80 00 20 */ blr .global DrawTouchBounds__6CActorCFv DrawTouchBounds__6CActorCFv: /* 800549C8 00051928 4E 80 00 20 */ blr .global EnsureRendered__6CActorCFRC13CStateManager EnsureRendered__6CActorCFRC13CStateManager: /* 800549CC 0005192C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800549D0 00051930 7C 08 02 A6 */ mflr r0 /* 800549D4 00051934 90 01 00 74 */ stw r0, 0x74(r1) /* 800549D8 00051938 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800549DC 0005193C 7C 9F 23 78 */ mr r31, r4 /* 800549E0 00051940 7F E5 FB 78 */ mr r5, r31 /* 800549E4 00051944 93 C1 00 68 */ stw r30, 0x68(r1) /* 800549E8 00051948 7C 7E 1B 78 */ mr r30, r3 /* 800549EC 0005194C 7F C4 F3 78 */ mr r4, r30 /* 800549F0 00051950 38 61 00 2C */ addi r3, r1, 0x2c /* 800549F4 00051954 81 9E 00 00 */ lwz r12, 0(r30) /* 800549F8 00051958 81 8C 00 64 */ lwz r12, 0x64(r12) /* 800549FC 0005195C 7D 89 03 A6 */ mtctr r12 /* 80054A00 00051960 4E 80 04 21 */ bctrl /* 80054A04 00051964 3C 60 80 5A */ lis r3, lbl_805A61D4@ha /* 80054A08 00051968 C1 01 00 2C */ lfs f8, 0x2c(r1) /* 80054A0C 0005196C 38 C3 61 D4 */ addi r6, r3, lbl_805A61D4@l /* 80054A10 00051970 C0 E1 00 30 */ lfs f7, 0x30(r1) /* 80054A14 00051974 C0 C1 00 34 */ lfs f6, 0x34(r1) /* 80054A18 00051978 38 61 00 08 */ addi r3, r1, 8 /* 80054A1C 0005197C C0 A1 00 38 */ lfs f5, 0x38(r1) /* 80054A20 00051980 38 81 00 44 */ addi r4, r1, 0x44 /* 80054A24 00051984 C0 81 00 3C */ lfs f4, 0x3c(r1) /* 80054A28 00051988 38 A1 00 20 */ addi r5, r1, 0x20 /* 80054A2C 0005198C C0 61 00 40 */ lfs f3, 0x40(r1) /* 80054A30 00051990 C0 46 00 04 */ lfs f2, 4(r6) /* 80054A34 00051994 C0 26 00 14 */ lfs f1, 0x14(r6) /* 80054A38 00051998 C0 06 00 24 */ lfs f0, 0x24(r6) /* 80054A3C 0005199C D1 01 00 44 */ stfs f8, 0x44(r1) /* 80054A40 000519A0 D0 E1 00 48 */ stfs f7, 0x48(r1) /* 80054A44 000519A4 D0 C1 00 4C */ stfs f6, 0x4c(r1) /* 80054A48 000519A8 D0 A1 00 50 */ stfs f5, 0x50(r1) /* 80054A4C 000519AC D0 81 00 54 */ stfs f4, 0x54(r1) /* 80054A50 000519B0 D0 61 00 58 */ stfs f3, 0x58(r1) /* 80054A54 000519B4 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80054A58 000519B8 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80054A5C 000519BC D0 01 00 28 */ stfs f0, 0x28(r1) /* 80054A60 000519C0 48 2E 27 7D */ bl ClosestPointAlongVector__6CAABoxCFRC9CVector3f /* 80054A64 000519C4 C0 41 00 08 */ lfs f2, 8(r1) /* 80054A68 000519C8 7F C3 F3 78 */ mr r3, r30 /* 80054A6C 000519CC C0 21 00 0C */ lfs f1, 0xc(r1) /* 80054A70 000519D0 7F E4 FB 78 */ mr r4, r31 /* 80054A74 000519D4 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80054A78 000519D8 38 A1 00 14 */ addi r5, r1, 0x14 /* 80054A7C 000519DC D0 41 00 14 */ stfs f2, 0x14(r1) /* 80054A80 000519E0 38 C1 00 44 */ addi r6, r1, 0x44 /* 80054A84 000519E4 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80054A88 000519E8 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80054A8C 000519EC 48 00 00 1D */ bl EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f /* 80054A90 000519F0 80 01 00 74 */ lwz r0, 0x74(r1) /* 80054A94 000519F4 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 80054A98 000519F8 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80054A9C 000519FC 7C 08 03 A6 */ mtlr r0 /* 80054AA0 00051A00 38 21 00 70 */ addi r1, r1, 0x70 /* 80054AA4 00051A04 4E 80 00 20 */ blr .global EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f EnsureRendered__6CActorCFRC13CStateManagerRC9CVector3f: /* 80054AA8 00051A08 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80054AAC 00051A0C 7C 08 02 A6 */ mflr r0 /* 80054AB0 00051A10 90 01 00 24 */ stw r0, 0x24(r1) /* 80054AB4 00051A14 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80054AB8 00051A18 7C DF 33 78 */ mr r31, r6 /* 80054ABC 00051A1C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80054AC0 00051A20 7C BE 2B 78 */ mr r30, r5 /* 80054AC4 00051A24 93 A1 00 14 */ stw r29, 0x14(r1) /* 80054AC8 00051A28 7C 9D 23 78 */ mr r29, r4 /* 80054ACC 00051A2C 93 81 00 10 */ stw r28, 0x10(r1) /* 80054AD0 00051A30 7C 7C 1B 78 */ mr r28, r3 /* 80054AD4 00051A34 80 03 00 64 */ lwz r0, 0x64(r3) /* 80054AD8 00051A38 28 00 00 00 */ cmplwi r0, 0 /* 80054ADC 00051A3C 41 82 00 28 */ beq lbl_80054B04 /* 80054AE0 00051A40 7F A3 EB 78 */ mr r3, r29 /* 80054AE4 00051A44 48 0C 03 F9 */ bl GetRenderingModel__10CModelDataFRC13CStateManager /* 80054AE8 00051A48 7C 60 1B 78 */ mr r0, r3 /* 80054AEC 00051A4C 80 7C 00 64 */ lwz r3, 0x64(r28) /* 80054AF0 00051A50 80 DC 00 90 */ lwz r6, 0x90(r28) /* 80054AF4 00051A54 7C 04 03 78 */ mr r4, r0 /* 80054AF8 00051A58 38 BC 00 34 */ addi r5, r28, 0x34 /* 80054AFC 00051A5C 38 FC 00 B4 */ addi r7, r28, 0xb4 /* 80054B00 00051A60 48 0C 1C 2D */ bl RenderUnsortedParts__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_80054B04: /* 80054B04 00051A64 7F A3 EB 78 */ mr r3, r29 /* 80054B08 00051A68 7F 84 E3 78 */ mr r4, r28 /* 80054B0C 00051A6C 7F C5 F3 78 */ mr r5, r30 /* 80054B10 00051A70 7F E6 FB 78 */ mr r6, r31 /* 80054B14 00051A74 4B FE FE 5D */ bl AddDrawableActor__13CStateManagerCFRC6CActorRC9CVector3fRC6CAABox /* 80054B18 00051A78 80 01 00 24 */ lwz r0, 0x24(r1) /* 80054B1C 00051A7C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80054B20 00051A80 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80054B24 00051A84 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80054B28 00051A88 83 81 00 10 */ lwz r28, 0x10(r1) /* 80054B2C 00051A8C 7C 08 03 A6 */ mtlr r0 /* 80054B30 00051A90 38 21 00 20 */ addi r1, r1, 0x20 /* 80054B34 00051A94 4E 80 00 20 */ blr .global AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager: /* 80054B38 00051A98 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80054B3C 00051A9C 7C 08 02 A6 */ mflr r0 /* 80054B40 00051AA0 90 01 00 64 */ stw r0, 0x64(r1) /* 80054B44 00051AA4 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80054B48 00051AA8 7C 9F 23 78 */ mr r31, r4 /* 80054B4C 00051AAC 38 80 00 00 */ li r4, 0 /* 80054B50 00051AB0 93 C1 00 58 */ stw r30, 0x58(r1) /* 80054B54 00051AB4 7C 7E 1B 78 */ mr r30, r3 /* 80054B58 00051AB8 93 A1 00 54 */ stw r29, 0x54(r1) /* 80054B5C 00051ABC 7C BD 2B 78 */ mr r29, r5 /* 80054B60 00051AC0 80 63 00 64 */ lwz r3, 0x64(r3) /* 80054B64 00051AC4 28 03 00 00 */ cmplwi r3, 0 /* 80054B68 00051AC8 41 82 00 20 */ beq lbl_80054B88 /* 80054B6C 00051ACC 80 03 00 10 */ lwz r0, 0x10(r3) /* 80054B70 00051AD0 28 00 00 00 */ cmplwi r0, 0 /* 80054B74 00051AD4 40 82 00 10 */ bne lbl_80054B84 /* 80054B78 00051AD8 88 03 00 28 */ lbz r0, 0x28(r3) /* 80054B7C 00051ADC 28 00 00 00 */ cmplwi r0, 0 /* 80054B80 00051AE0 41 82 00 08 */ beq lbl_80054B88 lbl_80054B84: /* 80054B84 00051AE4 38 80 00 01 */ li r4, 1 lbl_80054B88: /* 80054B88 00051AE8 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80054B8C 00051AEC 41 82 01 38 */ beq lbl_80054CC4 /* 80054B90 00051AF0 88 1E 00 E6 */ lbz r0, 0xe6(r30) /* 80054B94 00051AF4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80054B98 00051AF8 41 82 00 0C */ beq lbl_80054BA4 /* 80054B9C 00051AFC 7F E4 FB 78 */ mr r4, r31 /* 80054BA0 00051B00 48 0C 10 E1 */ bl RenderParticles__10CModelDataCFRC14CFrustumPlanes lbl_80054BA4: /* 80054BA4 00051B04 88 1E 00 E4 */ lbz r0, 0xe4(r30) /* 80054BA8 00051B08 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 80054BAC 00051B0C 40 82 00 4C */ bne lbl_80054BF8 /* 80054BB0 00051B10 7F C3 F3 78 */ mr r3, r30 /* 80054BB4 00051B14 7F A4 EB 78 */ mr r4, r29 /* 80054BB8 00051B18 81 9E 00 00 */ lwz r12, 0(r30) /* 80054BBC 00051B1C 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 80054BC0 00051B20 7D 89 03 A6 */ mtctr r12 /* 80054BC4 00051B24 4E 80 04 21 */ bctrl /* 80054BC8 00051B28 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80054BCC 00051B2C 41 82 00 20 */ beq lbl_80054BEC /* 80054BD0 00051B30 7F C3 F3 78 */ mr r3, r30 /* 80054BD4 00051B34 7F A4 EB 78 */ mr r4, r29 /* 80054BD8 00051B38 81 9E 00 00 */ lwz r12, 0(r30) /* 80054BDC 00051B3C 81 8C 00 28 */ lwz r12, 0x28(r12) /* 80054BE0 00051B40 7D 89 03 A6 */ mtctr r12 /* 80054BE4 00051B44 4E 80 04 21 */ bctrl /* 80054BE8 00051B48 48 00 00 10 */ b lbl_80054BF8 lbl_80054BEC: /* 80054BEC 00051B4C 7F C3 F3 78 */ mr r3, r30 /* 80054BF0 00051B50 7F A4 EB 78 */ mr r4, r29 /* 80054BF4 00051B54 4B FF FD D9 */ bl EnsureRendered__6CActorCFRC13CStateManager lbl_80054BF8: /* 80054BF8 00051B58 80 7D 08 B8 */ lwz r3, 0x8b8(r29) /* 80054BFC 00051B5C 7F A4 EB 78 */ mr r4, r29 /* 80054C00 00051B60 80 63 00 00 */ lwz r3, 0(r3) /* 80054C04 00051B64 48 03 C9 55 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80054C08 00051B68 2C 03 00 01 */ cmpwi r3, 1 /* 80054C0C 00051B6C 41 82 00 B8 */ beq lbl_80054CC4 /* 80054C10 00051B70 80 7D 08 B8 */ lwz r3, 0x8b8(r29) /* 80054C14 00051B74 7F A4 EB 78 */ mr r4, r29 /* 80054C18 00051B78 80 63 00 00 */ lwz r3, 0(r3) /* 80054C1C 00051B7C 48 03 C9 3D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80054C20 00051B80 2C 03 00 03 */ cmpwi r3, 3 /* 80054C24 00051B84 41 82 00 A0 */ beq lbl_80054CC4 /* 80054C28 00051B88 88 1E 00 E5 */ lbz r0, 0xe5(r30) /* 80054C2C 00051B8C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80054C30 00051B90 41 82 00 94 */ beq lbl_80054CC4 /* 80054C34 00051B94 80 7E 00 94 */ lwz r3, 0x94(r30) /* 80054C38 00051B98 48 0B 0E C9 */ bl Valid__13CSimpleShadowCFv /* 80054C3C 00051B9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80054C40 00051BA0 41 82 00 84 */ beq lbl_80054CC4 /* 80054C44 00051BA4 80 9E 00 94 */ lwz r4, 0x94(r30) /* 80054C48 00051BA8 38 61 00 2C */ addi r3, r1, 0x2c /* 80054C4C 00051BAC 48 0B 10 29 */ bl GetBounds__13CSimpleShadowCFv /* 80054C50 00051BB0 7F E3 FB 78 */ mr r3, r31 /* 80054C54 00051BB4 38 81 00 2C */ addi r4, r1, 0x2c /* 80054C58 00051BB8 48 2F 05 79 */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox /* 80054C5C 00051BBC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80054C60 00051BC0 28 00 00 01 */ cmplwi r0, 1 /* 80054C64 00051BC4 40 82 00 60 */ bne lbl_80054CC4 /* 80054C68 00051BC8 83 FE 00 94 */ lwz r31, 0x94(r30) /* 80054C6C 00051BCC 7F E3 FB 78 */ mr r3, r31 /* 80054C70 00051BD0 48 0B 10 A1 */ bl GetTransform__13CSimpleShadowCFv /* 80054C74 00051BD4 C0 43 00 2C */ lfs f2, 0x2c(r3) /* 80054C78 00051BD8 7F E4 FB 78 */ mr r4, r31 /* 80054C7C 00051BDC C0 23 00 1C */ lfs f1, 0x1c(r3) /* 80054C80 00051BE0 C0 03 00 0C */ lfs f0, 0xc(r3) /* 80054C84 00051BE4 38 61 00 14 */ addi r3, r1, 0x14 /* 80054C88 00051BE8 83 DE 00 94 */ lwz r30, 0x94(r30) /* 80054C8C 00051BEC D0 01 00 08 */ stfs f0, 8(r1) /* 80054C90 00051BF0 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80054C94 00051BF4 D0 41 00 10 */ stfs f2, 0x10(r1) /* 80054C98 00051BF8 48 0B 0F DD */ bl GetBounds__13CSimpleShadowCFv /* 80054C9C 00051BFC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 80054CA0 00051C00 7F C4 F3 78 */ mr r4, r30 /* 80054CA4 00051C04 38 A1 00 08 */ addi r5, r1, 8 /* 80054CA8 00051C08 38 C1 00 14 */ addi r6, r1, 0x14 /* 80054CAC 00051C0C 81 83 00 00 */ lwz r12, 0(r3) /* 80054CB0 00051C10 38 E0 00 01 */ li r7, 1 /* 80054CB4 00051C14 39 00 00 00 */ li r8, 0 /* 80054CB8 00051C18 81 8C 00 40 */ lwz r12, 0x40(r12) /* 80054CBC 00051C1C 7D 89 03 A6 */ mtctr r12 /* 80054CC0 00051C20 4E 80 04 21 */ bctrl lbl_80054CC4: /* 80054CC4 00051C24 80 01 00 64 */ lwz r0, 0x64(r1) /* 80054CC8 00051C28 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80054CCC 00051C2C 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80054CD0 00051C30 83 A1 00 54 */ lwz r29, 0x54(r1) /* 80054CD4 00051C34 7C 08 03 A6 */ mtlr r0 /* 80054CD8 00051C38 38 21 00 60 */ addi r1, r1, 0x60 /* 80054CDC 00051C3C 4E 80 00 20 */ blr .global PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes: /* 80054CE0 00051C40 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 80054CE4 00051C44 7C 08 02 A6 */ mflr r0 /* 80054CE8 00051C48 90 01 00 C4 */ stw r0, 0xc4(r1) /* 80054CEC 00051C4C 93 E1 00 BC */ stw r31, 0xbc(r1) /* 80054CF0 00051C50 7C BF 2B 78 */ mr r31, r5 /* 80054CF4 00051C54 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 80054CF8 00051C58 7C 9E 23 78 */ mr r30, r4 /* 80054CFC 00051C5C 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 80054D00 00051C60 7C 7D 1B 78 */ mr r29, r3 /* 80054D04 00051C64 93 81 00 B0 */ stw r28, 0xb0(r1) /* 80054D08 00051C68 80 83 00 64 */ lwz r4, 0x64(r3) /* 80054D0C 00051C6C 38 60 00 00 */ li r3, 0 /* 80054D10 00051C70 28 04 00 00 */ cmplwi r4, 0 /* 80054D14 00051C74 41 82 00 20 */ beq lbl_80054D34 /* 80054D18 00051C78 80 04 00 10 */ lwz r0, 0x10(r4) /* 80054D1C 00051C7C 28 00 00 00 */ cmplwi r0, 0 /* 80054D20 00051C80 40 82 00 10 */ bne lbl_80054D30 /* 80054D24 00051C84 88 04 00 28 */ lbz r0, 0x28(r4) /* 80054D28 00051C88 28 00 00 00 */ cmplwi r0, 0 /* 80054D2C 00051C8C 41 82 00 08 */ beq lbl_80054D34 lbl_80054D30: /* 80054D30 00051C90 38 60 00 01 */ li r3, 1 lbl_80054D34: /* 80054D34 00051C94 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80054D38 00051C98 41 82 02 D8 */ beq lbl_80055010 /* 80054D3C 00051C9C 7F E3 FB 78 */ mr r3, r31 /* 80054D40 00051CA0 38 9D 00 9C */ addi r4, r29, 0x9c /* 80054D44 00051CA4 48 2F 04 8D */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox /* 80054D48 00051CA8 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 80054D4C 00051CAC 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 80054D50 00051CB0 7C 63 00 34 */ cntlzw r3, r3 /* 80054D54 00051CB4 50 60 E7 BC */ rlwimi r0, r3, 0x1c, 0x1e, 0x1e /* 80054D58 00051CB8 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 80054D5C 00051CBC 88 7D 00 E4 */ lbz r3, 0xe4(r29) /* 80054D60 00051CC0 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f /* 80054D64 00051CC4 40 82 01 F4 */ bne lbl_80054F58 /* 80054D68 00051CC8 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f /* 80054D6C 00051CCC 3B E0 00 00 */ li r31, 0 /* 80054D70 00051CD0 41 82 00 2C */ beq lbl_80054D9C /* 80054D74 00051CD4 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 80054D78 00051CD8 38 60 00 00 */ li r3, 0 /* 80054D7C 00051CDC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d /* 80054D80 00051CE0 38 60 00 01 */ li r3, 1 /* 80054D84 00051CE4 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 80054D88 00051CE8 3B E0 00 01 */ li r31, 1 /* 80054D8C 00051CEC 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054D90 00051CF0 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 80054D94 00051CF4 98 1D 00 E5 */ stb r0, 0xe5(r29) /* 80054D98 00051CF8 48 00 00 38 */ b lbl_80054DD0 lbl_80054D9C: /* 80054D9C 00051CFC 88 1D 00 E7 */ lbz r0, 0xe7(r29) /* 80054DA0 00051D00 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 80054DA4 00051D04 41 82 00 0C */ beq lbl_80054DB0 /* 80054DA8 00051D08 3B E0 00 01 */ li r31, 1 /* 80054DAC 00051D0C 48 00 00 24 */ b lbl_80054DD0 lbl_80054DB0: /* 80054DB0 00051D10 80 7D 00 90 */ lwz r3, 0x90(r29) /* 80054DB4 00051D14 28 03 00 00 */ cmplwi r3, 0 /* 80054DB8 00051D18 41 82 00 18 */ beq lbl_80054DD0 /* 80054DBC 00051D1C 88 03 02 98 */ lbz r0, 0x298(r3) /* 80054DC0 00051D20 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f /* 80054DC4 00051D24 28 00 00 01 */ cmplwi r0, 1 /* 80054DC8 00051D28 40 82 00 08 */ bne lbl_80054DD0 /* 80054DCC 00051D2C 3B E0 00 01 */ li r31, 1 lbl_80054DD0: /* 80054DD0 00051D30 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054DD4 00051D34 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80054DD8 00051D38 41 82 00 4C */ beq lbl_80054E24 /* 80054DDC 00051D3C 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054DE0 00051D40 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80054DE4 00051D44 41 82 00 40 */ beq lbl_80054E24 /* 80054DE8 00051D48 83 9D 00 94 */ lwz r28, 0x94(r29) /* 80054DEC 00051D4C 28 1C 00 00 */ cmplwi r28, 0 /* 80054DF0 00051D50 41 82 00 34 */ beq lbl_80054E24 /* 80054DF4 00051D54 80 9D 00 64 */ lwz r4, 0x64(r29) /* 80054DF8 00051D58 38 61 00 78 */ addi r3, r1, 0x78 /* 80054DFC 00051D5C 48 0C 07 C9 */ bl GetBounds__10CModelDataCFv /* 80054E00 00051D60 7F 83 E3 78 */ mr r3, r28 /* 80054E04 00051D64 7F C6 F3 78 */ mr r6, r30 /* 80054E08 00051D68 38 81 00 78 */ addi r4, r1, 0x78 /* 80054E0C 00051D6C 38 BD 00 34 */ addi r5, r29, 0x34 /* 80054E10 00051D70 48 0B 10 B9 */ bl Calculate__13CSimpleShadowFRC6CAABoxRC12CTransform4fRC13CStateManager /* 80054E14 00051D74 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054E18 00051D78 38 60 00 00 */ li r3, 0 /* 80054E1C 00051D7C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 80054E20 00051D80 98 1D 00 E5 */ stb r0, 0xe5(r29) lbl_80054E24: /* 80054E24 00051D84 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 80054E28 00051D88 38 60 00 00 */ li r3, 0 /* 80054E2C 00051D8C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80054E30 00051D90 41 82 00 14 */ beq lbl_80054E44 /* 80054E34 00051D94 80 1D 00 90 */ lwz r0, 0x90(r29) /* 80054E38 00051D98 28 00 00 00 */ cmplwi r0, 0 /* 80054E3C 00051D9C 41 82 00 08 */ beq lbl_80054E44 /* 80054E40 00051DA0 38 60 00 01 */ li r3, 1 lbl_80054E44: /* 80054E44 00051DA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80054E48 00051DA8 41 82 00 F4 */ beq lbl_80054F3C /* 80054E4C 00051DAC 80 9D 00 64 */ lwz r4, 0x64(r29) /* 80054E50 00051DB0 38 61 00 60 */ addi r3, r1, 0x60 /* 80054E54 00051DB4 38 BD 00 34 */ addi r5, r29, 0x34 /* 80054E58 00051DB8 48 0C 09 5D */ bl GetBounds__10CModelDataCFRC12CTransform4f /* 80054E5C 00051DBC C0 A1 00 60 */ lfs f5, 0x60(r1) /* 80054E60 00051DC0 7F C4 F3 78 */ mr r4, r30 /* 80054E64 00051DC4 C0 81 00 64 */ lfs f4, 0x64(r1) /* 80054E68 00051DC8 C0 61 00 68 */ lfs f3, 0x68(r1) /* 80054E6C 00051DCC C0 41 00 6C */ lfs f2, 0x6c(r1) /* 80054E70 00051DD0 C0 21 00 70 */ lfs f1, 0x70(r1) /* 80054E74 00051DD4 C0 01 00 74 */ lfs f0, 0x74(r1) /* 80054E78 00051DD8 D0 A1 00 90 */ stfs f5, 0x90(r1) /* 80054E7C 00051DDC D0 81 00 94 */ stfs f4, 0x94(r1) /* 80054E80 00051DE0 D0 61 00 98 */ stfs f3, 0x98(r1) /* 80054E84 00051DE4 D0 41 00 9C */ stfs f2, 0x9c(r1) /* 80054E88 00051DE8 D0 21 00 A0 */ stfs f1, 0xa0(r1) /* 80054E8C 00051DEC D0 01 00 A4 */ stfs f0, 0xa4(r1) /* 80054E90 00051DF0 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 80054E94 00051DF4 80 63 00 00 */ lwz r3, 0(r3) /* 80054E98 00051DF8 48 03 C6 C1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 80054E9C 00051DFC 2C 03 00 03 */ cmpwi r3, 3 /* 80054EA0 00051E00 40 82 00 10 */ bne lbl_80054EB0 /* 80054EA4 00051E04 80 7D 00 90 */ lwz r3, 0x90(r29) /* 80054EA8 00051E08 48 0A E1 DD */ bl BuildConstantAmbientLighting__12CActorLightsFv /* 80054EAC 00051E0C 48 00 00 90 */ b lbl_80054F3C lbl_80054EB0: /* 80054EB0 00051E10 57 E0 06 3E */ clrlwi r0, r31, 0x18 /* 80054EB4 00051E14 28 00 00 01 */ cmplwi r0, 1 /* 80054EB8 00051E18 40 82 00 74 */ bne lbl_80054F2C /* 80054EBC 00051E1C 80 BD 00 04 */ lwz r5, 4(r29) /* 80054EC0 00051E20 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) /* 80054EC4 00051E24 7C 05 00 00 */ cmpw r5, r0 /* 80054EC8 00051E28 41 82 00 64 */ beq lbl_80054F2C /* 80054ECC 00051E2C 80 7E 08 50 */ lwz r3, 0x850(r30) /* 80054ED0 00051E30 54 A4 18 38 */ slwi r4, r5, 3 /* 80054ED4 00051E34 90 A1 00 10 */ stw r5, 0x10(r1) /* 80054ED8 00051E38 80 E3 00 20 */ lwz r7, 0x20(r3) /* 80054EDC 00051E3C 90 A1 00 14 */ stw r5, 0x14(r1) /* 80054EE0 00051E40 7C 67 22 14 */ add r3, r7, r4 /* 80054EE4 00051E44 80 63 00 04 */ lwz r3, 4(r3) /* 80054EE8 00051E48 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 80054EEC 00051E4C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80054EF0 00051E50 41 82 00 3C */ beq lbl_80054F2C /* 80054EF4 00051E54 38 04 00 04 */ addi r0, r4, 4 /* 80054EF8 00051E58 90 A1 00 08 */ stw r5, 8(r1) /* 80054EFC 00051E5C 80 7D 00 90 */ lwz r3, 0x90(r29) /* 80054F00 00051E60 7F C4 F3 78 */ mr r4, r30 /* 80054F04 00051E64 90 A1 00 0C */ stw r5, 0xc(r1) /* 80054F08 00051E68 38 C1 00 90 */ addi r6, r1, 0x90 /* 80054F0C 00051E6C 7C A7 00 2E */ lwzx r5, r7, r0 /* 80054F10 00051E70 48 0A EE B1 */ bl BuildAreaLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox /* 80054F14 00051E74 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80054F18 00051E78 41 82 00 14 */ beq lbl_80054F2C /* 80054F1C 00051E7C 88 1D 00 E7 */ lbz r0, 0xe7(r29) /* 80054F20 00051E80 38 60 00 00 */ li r3, 0 /* 80054F24 00051E84 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c /* 80054F28 00051E88 98 1D 00 E7 */ stb r0, 0xe7(r29) lbl_80054F2C: /* 80054F2C 00051E8C 80 7D 00 90 */ lwz r3, 0x90(r29) /* 80054F30 00051E90 7F C4 F3 78 */ mr r4, r30 /* 80054F34 00051E94 38 A1 00 90 */ addi r5, r1, 0x90 /* 80054F38 00051E98 48 0A E7 D9 */ bl BuildDynamicLightList__12CActorLightsFRC13CStateManagerRC6CAABox lbl_80054F3C: /* 80054F3C 00051E9C 80 7D 00 64 */ lwz r3, 0x64(r29) /* 80054F40 00051EA0 80 03 00 10 */ lwz r0, 0x10(r3) /* 80054F44 00051EA4 28 00 00 00 */ cmplwi r0, 0 /* 80054F48 00051EA8 41 82 00 C8 */ beq lbl_80055010 /* 80054F4C 00051EAC 80 63 00 10 */ lwz r3, 0x10(r3) /* 80054F50 00051EB0 4B FD 7A B5 */ bl PreRender__9CAnimDataFv /* 80054F54 00051EB4 48 00 00 BC */ b lbl_80055010 lbl_80054F58: /* 80054F58 00051EB8 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f /* 80054F5C 00051EBC 41 82 00 24 */ beq lbl_80054F80 /* 80054F60 00051EC0 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 80054F64 00051EC4 38 60 00 00 */ li r3, 0 /* 80054F68 00051EC8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d /* 80054F6C 00051ECC 38 60 00 01 */ li r3, 1 /* 80054F70 00051ED0 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 80054F74 00051ED4 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054F78 00051ED8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 80054F7C 00051EDC 98 1D 00 E5 */ stb r0, 0xe5(r29) lbl_80054F80: /* 80054F80 00051EE0 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054F84 00051EE4 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80054F88 00051EE8 41 82 00 88 */ beq lbl_80055010 /* 80054F8C 00051EEC 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80054F90 00051EF0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80054F94 00051EF4 41 82 00 7C */ beq lbl_80055010 /* 80054F98 00051EF8 83 9D 00 94 */ lwz r28, 0x94(r29) /* 80054F9C 00051EFC 28 1C 00 00 */ cmplwi r28, 0 /* 80054FA0 00051F00 41 82 00 70 */ beq lbl_80055010 /* 80054FA4 00051F04 80 9D 00 64 */ lwz r4, 0x64(r29) /* 80054FA8 00051F08 38 61 00 30 */ addi r3, r1, 0x30 /* 80054FAC 00051F0C 38 BD 00 34 */ addi r5, r29, 0x34 /* 80054FB0 00051F10 48 0C 08 05 */ bl GetBounds__10CModelDataCFRC12CTransform4f /* 80054FB4 00051F14 7F 84 E3 78 */ mr r4, r28 /* 80054FB8 00051F18 38 61 00 48 */ addi r3, r1, 0x48 /* 80054FBC 00051F1C 38 A1 00 30 */ addi r5, r1, 0x30 /* 80054FC0 00051F20 48 0B 0B 4D */ bl GetMaxShadowBox__13CSimpleShadowCFRC6CAABox /* 80054FC4 00051F24 7F E3 FB 78 */ mr r3, r31 /* 80054FC8 00051F28 38 81 00 48 */ addi r4, r1, 0x48 /* 80054FCC 00051F2C 48 2F 02 05 */ bl BoxInFrustumPlanes__14CFrustumPlanesCFRC6CAABox /* 80054FD0 00051F30 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80054FD4 00051F34 28 00 00 01 */ cmplwi r0, 1 /* 80054FD8 00051F38 40 82 00 38 */ bne lbl_80055010 /* 80054FDC 00051F3C 83 FD 00 94 */ lwz r31, 0x94(r29) /* 80054FE0 00051F40 38 61 00 18 */ addi r3, r1, 0x18 /* 80054FE4 00051F44 80 9D 00 64 */ lwz r4, 0x64(r29) /* 80054FE8 00051F48 48 0C 05 DD */ bl GetBounds__10CModelDataCFv /* 80054FEC 00051F4C 7F E3 FB 78 */ mr r3, r31 /* 80054FF0 00051F50 7F C6 F3 78 */ mr r6, r30 /* 80054FF4 00051F54 38 81 00 18 */ addi r4, r1, 0x18 /* 80054FF8 00051F58 38 BD 00 34 */ addi r5, r29, 0x34 /* 80054FFC 00051F5C 48 0B 0E CD */ bl Calculate__13CSimpleShadowFRC6CAABoxRC12CTransform4fRC13CStateManager /* 80055000 00051F60 88 1D 00 E5 */ lbz r0, 0xe5(r29) /* 80055004 00051F64 38 60 00 00 */ li r3, 0 /* 80055008 00051F68 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 8005500C 00051F6C 98 1D 00 E5 */ stb r0, 0xe5(r29) lbl_80055010: /* 80055010 00051F70 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 80055014 00051F74 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 80055018 00051F78 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 8005501C 00051F7C 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 80055020 00051F80 83 81 00 B0 */ lwz r28, 0xb0(r1) /* 80055024 00051F84 7C 08 03 A6 */ mtlr r0 /* 80055028 00051F88 38 21 00 C0 */ addi r1, r1, 0xc0 .global sub_8005502c sub_8005502c: /* 8005502C 00051F8C 4E 80 00 20 */ blr .global SetModelData__6CActorFRC10CModelData SetModelData__6CActorFRC10CModelData: /* 80055030 00051F90 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80055034 00051F94 7C 08 02 A6 */ mflr r0 /* 80055038 00051F98 90 01 00 24 */ stw r0, 0x24(r1) /* 8005503C 00051F9C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80055040 00051FA0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80055044 00051FA4 7C 9E 23 78 */ mr r30, r4 /* 80055048 00051FA8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8005504C 00051FAC 7C 7D 1B 78 */ mr r29, r3 /* 80055050 00051FB0 38 60 00 00 */ li r3, 0 /* 80055054 00051FB4 80 04 00 10 */ lwz r0, 0x10(r4) /* 80055058 00051FB8 28 00 00 00 */ cmplwi r0, 0 /* 8005505C 00051FBC 40 82 00 14 */ bne lbl_80055070 /* 80055060 00051FC0 88 1E 00 28 */ lbz r0, 0x28(r30) /* 80055064 00051FC4 28 00 00 00 */ cmplwi r0, 0 /* 80055068 00051FC8 40 82 00 08 */ bne lbl_80055070 /* 8005506C 00051FCC 38 60 00 01 */ li r3, 1 lbl_80055070: /* 80055070 00051FD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80055074 00051FD4 41 82 00 0C */ beq lbl_80055080 /* 80055078 00051FD8 3B E0 00 00 */ li r31, 0 /* 8005507C 00051FDC 48 00 00 2C */ b lbl_800550A8 lbl_80055080: /* 80055080 00051FE0 3C 80 80 3D */ lis r4, lbl_803CCF68@ha /* 80055084 00051FE4 38 60 00 4C */ li r3, 0x4c /* 80055088 00051FE8 38 84 CF 68 */ addi r4, r4, lbl_803CCF68@l /* 8005508C 00051FEC 38 A0 00 00 */ li r5, 0 /* 80055090 00051FF0 48 2C 07 DD */ bl __nw__FUlPCcPCc /* 80055094 00051FF4 7C 7F 1B 79 */ or. r31, r3, r3 /* 80055098 00051FF8 41 82 00 10 */ beq lbl_800550A8 /* 8005509C 00051FFC 7F C4 F3 78 */ mr r4, r30 /* 800550A0 00052000 4B FC 3C ED */ bl __ct__10CModelDataFRC10CModelData /* 800550A4 00052004 7C 7F 1B 78 */ mr r31, r3 lbl_800550A8: /* 800550A8 00052008 80 7D 00 64 */ lwz r3, 0x64(r29) /* 800550AC 0005200C 38 80 00 01 */ li r4, 1 /* 800550B0 00052010 48 0C 19 9D */ bl __dt__10CModelDataFv /* 800550B4 00052014 93 FD 00 64 */ stw r31, 0x64(r29) /* 800550B8 00052018 80 01 00 24 */ lwz r0, 0x24(r1) /* 800550BC 0005201C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800550C0 00052020 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800550C4 00052024 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800550C8 00052028 7C 08 03 A6 */ mtlr r0 /* 800550CC 0005202C 38 21 00 20 */ addi r1, r1, 0x20 /* 800550D0 00052030 4E 80 00 20 */ blr .global CalculateRenderBounds__6CActorFv CalculateRenderBounds__6CActorFv: /* 800550D4 00052034 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800550D8 00052038 7C 08 02 A6 */ mflr r0 /* 800550DC 0005203C 90 01 00 54 */ stw r0, 0x54(r1) /* 800550E0 00052040 93 E1 00 4C */ stw r31, 0x4c(r1) /* 800550E4 00052044 7C 7F 1B 78 */ mr r31, r3 /* 800550E8 00052048 38 60 00 00 */ li r3, 0 /* 800550EC 0005204C 80 9F 00 64 */ lwz r4, 0x64(r31) /* 800550F0 00052050 28 04 00 00 */ cmplwi r4, 0 /* 800550F4 00052054 41 82 00 20 */ beq lbl_80055114 /* 800550F8 00052058 80 04 00 10 */ lwz r0, 0x10(r4) /* 800550FC 0005205C 28 00 00 00 */ cmplwi r0, 0 /* 80055100 00052060 40 82 00 10 */ bne lbl_80055110 /* 80055104 00052064 88 04 00 28 */ lbz r0, 0x28(r4) /* 80055108 00052068 28 00 00 00 */ cmplwi r0, 0 /* 8005510C 0005206C 41 82 00 08 */ beq lbl_80055114 lbl_80055110: /* 80055110 00052070 38 60 00 01 */ li r3, 1 lbl_80055114: /* 80055114 00052074 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80055118 00052078 41 82 00 44 */ beq lbl_8005515C /* 8005511C 0005207C 38 61 00 2C */ addi r3, r1, 0x2c /* 80055120 00052080 38 BF 00 34 */ addi r5, r31, 0x34 /* 80055124 00052084 48 0C 06 91 */ bl GetBounds__10CModelDataCFRC12CTransform4f /* 80055128 00052088 80 61 00 2C */ lwz r3, 0x2c(r1) /* 8005512C 0005208C 80 01 00 30 */ lwz r0, 0x30(r1) /* 80055130 00052090 90 7F 00 9C */ stw r3, 0x9c(r31) /* 80055134 00052094 90 1F 00 A0 */ stw r0, 0xa0(r31) /* 80055138 00052098 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005513C 0005209C 90 1F 00 A4 */ stw r0, 0xa4(r31) /* 80055140 000520A0 80 61 00 38 */ lwz r3, 0x38(r1) /* 80055144 000520A4 80 01 00 3C */ lwz r0, 0x3c(r1) /* 80055148 000520A8 90 7F 00 A8 */ stw r3, 0xa8(r31) /* 8005514C 000520AC 90 1F 00 AC */ stw r0, 0xac(r31) /* 80055150 000520B0 80 01 00 40 */ lwz r0, 0x40(r1) /* 80055154 000520B4 90 1F 00 B0 */ stw r0, 0xb0(r31) /* 80055158 000520B8 48 00 00 5C */ b lbl_800551B4 lbl_8005515C: /* 8005515C 000520BC C0 5F 00 60 */ lfs f2, 0x60(r31) /* 80055160 000520C0 38 81 00 08 */ addi r4, r1, 8 /* 80055164 000520C4 C0 3F 00 50 */ lfs f1, 0x50(r31) /* 80055168 000520C8 7C 85 23 78 */ mr r5, r4 /* 8005516C 000520CC C0 1F 00 40 */ lfs f0, 0x40(r31) /* 80055170 000520D0 38 61 00 14 */ addi r3, r1, 0x14 /* 80055174 000520D4 D0 01 00 08 */ stfs f0, 8(r1) /* 80055178 000520D8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8005517C 000520DC D0 41 00 10 */ stfs f2, 0x10(r1) /* 80055180 000520E0 48 2E 33 89 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 80055184 000520E4 80 61 00 14 */ lwz r3, 0x14(r1) /* 80055188 000520E8 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005518C 000520EC 90 7F 00 9C */ stw r3, 0x9c(r31) /* 80055190 000520F0 90 1F 00 A0 */ stw r0, 0xa0(r31) /* 80055194 000520F4 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80055198 000520F8 90 1F 00 A4 */ stw r0, 0xa4(r31) /* 8005519C 000520FC 80 61 00 20 */ lwz r3, 0x20(r1) /* 800551A0 00052100 80 01 00 24 */ lwz r0, 0x24(r1) /* 800551A4 00052104 90 7F 00 A8 */ stw r3, 0xa8(r31) /* 800551A8 00052108 90 1F 00 AC */ stw r0, 0xac(r31) /* 800551AC 0005210C 80 01 00 28 */ lwz r0, 0x28(r1) /* 800551B0 00052110 90 1F 00 B0 */ stw r0, 0xb0(r31) lbl_800551B4: /* 800551B4 00052114 80 01 00 54 */ lwz r0, 0x54(r1) /* 800551B8 00052118 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 800551BC 0005211C 7C 08 03 A6 */ mtlr r0 /* 800551C0 00052120 38 21 00 50 */ addi r1, r1, 0x50 /* 800551C4 00052124 4E 80 00 20 */ blr .global GetAverageAnimVelocity__6CActorFi GetAverageAnimVelocity__6CActorFi: /* 800551C8 00052128 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800551CC 0005212C 7C 08 02 A6 */ mflr r0 /* 800551D0 00052130 90 01 00 14 */ stw r0, 0x14(r1) /* 800551D4 00052134 80 A3 00 64 */ lwz r5, 0x64(r3) /* 800551D8 00052138 38 60 00 00 */ li r3, 0 /* 800551DC 0005213C 28 05 00 00 */ cmplwi r5, 0 /* 800551E0 00052140 41 82 00 14 */ beq lbl_800551F4 /* 800551E4 00052144 80 05 00 10 */ lwz r0, 0x10(r5) /* 800551E8 00052148 28 00 00 00 */ cmplwi r0, 0 /* 800551EC 0005214C 41 82 00 08 */ beq lbl_800551F4 /* 800551F0 00052150 38 60 00 01 */ li r3, 1 lbl_800551F4: /* 800551F4 00052154 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800551F8 00052158 41 82 00 10 */ beq lbl_80055208 /* 800551FC 0005215C 80 65 00 10 */ lwz r3, 0x10(r5) /* 80055200 00052160 4B FD 93 21 */ bl GetAverageVelocity__9CAnimDataCFi /* 80055204 00052164 48 00 00 08 */ b lbl_8005520C lbl_80055208: /* 80055208 00052168 C0 22 86 3C */ lfs f1, lbl_805AA35C@sda21(r2) lbl_8005520C: /* 8005520C 0005216C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055210 00052170 7C 08 03 A6 */ mtlr r0 /* 80055214 00052174 38 21 00 10 */ addi r1, r1, 0x10 /* 80055218 00052178 4E 80 00 20 */ blr .global DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventType DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventType: /* 8005521C 0005217C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055220 00052180 7C 08 02 A6 */ mflr r0 /* 80055224 00052184 2C 06 00 02 */ cmpwi r6, 2 /* 80055228 00052188 90 01 00 14 */ stw r0, 0x14(r1) /* 8005522C 0005218C 40 82 00 08 */ bne lbl_80055234 /* 80055230 00052190 48 00 00 15 */ bl RemoveEmitter__6CActorFv lbl_80055234: /* 80055234 00052194 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055238 00052198 7C 08 03 A6 */ mtlr r0 /* 8005523C 0005219C 38 21 00 10 */ addi r1, r1, 0x10 /* 80055240 000521A0 4E 80 00 20 */ blr .global RemoveEmitter__6CActorFv RemoveEmitter__6CActorFv: /* 80055244 000521A4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80055248 000521A8 7C 08 02 A6 */ mflr r0 /* 8005524C 000521AC 90 01 00 24 */ stw r0, 0x24(r1) /* 80055250 000521B0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80055254 000521B4 7C 7F 1B 78 */ mr r31, r3 /* 80055258 000521B8 80 03 00 8C */ lwz r0, 0x8c(r3) /* 8005525C 000521BC 28 00 00 00 */ cmplwi r0, 0 /* 80055260 000521C0 90 01 00 0C */ stw r0, 0xc(r1) /* 80055264 000521C4 41 82 00 24 */ beq lbl_80055288 /* 80055268 000521C8 90 01 00 08 */ stw r0, 8(r1) /* 8005526C 000521CC 38 61 00 08 */ addi r3, r1, 8 /* 80055270 000521D0 48 29 4C 15 */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle /* 80055274 000521D4 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 80055278 000521D8 38 00 00 00 */ li r0, 0 /* 8005527C 000521DC 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l /* 80055280 000521E0 B0 7F 00 88 */ sth r3, 0x88(r31) /* 80055284 000521E4 90 1F 00 8C */ stw r0, 0x8c(r31) lbl_80055288: /* 80055288 000521E8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005528C 000521EC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80055290 000521F0 7C 08 03 A6 */ mtlr r0 /* 80055294 000521F4 38 21 00 20 */ addi r1, r1, 0x20 /* 80055298 000521F8 4E 80 00 20 */ blr .global UpdateAnimation__6CActorFfR13CStateManagerb UpdateAnimation__6CActorFfR13CStateManagerb: /* 8005529C 000521FC 94 21 FF 10 */ stwu r1, -0xf0(r1) /* 800552A0 00052200 7C 08 02 A6 */ mflr r0 /* 800552A4 00052204 90 01 00 F4 */ stw r0, 0xf4(r1) /* 800552A8 00052208 DB E1 00 E0 */ stfd f31, 0xe0(r1) /* 800552AC 0005220C F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 /* 800552B0 00052210 DB C1 00 D0 */ stfd f30, 0xd0(r1) /* 800552B4 00052214 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 /* 800552B8 00052218 DB A1 00 C0 */ stfd f29, 0xc0(r1) /* 800552BC 0005221C F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0 /* 800552C0 00052220 DB 81 00 B0 */ stfd f28, 0xb0(r1) /* 800552C4 00052224 F3 81 00 B8 */ psq_st f28, 184(r1), 0, qr0 /* 800552C8 00052228 DB 61 00 A0 */ stfd f27, 0xa0(r1) /* 800552CC 0005222C F3 61 00 A8 */ psq_st f27, 168(r1), 0, qr0 /* 800552D0 00052230 DB 41 00 90 */ stfd f26, 0x90(r1) /* 800552D4 00052234 F3 41 00 98 */ psq_st f26, 152(r1), 0, qr0 /* 800552D8 00052238 DB 21 00 80 */ stfd f25, 0x80(r1) /* 800552DC 0005223C F3 21 00 88 */ psq_st f25, 136(r1), 0, qr0 /* 800552E0 00052240 DB 01 00 70 */ stfd f24, 0x70(r1) /* 800552E4 00052244 F3 01 00 78 */ psq_st f24, 120(r1), 0, qr0 /* 800552E8 00052248 BF 01 00 50 */ stmw r24, 0x50(r1) /* 800552EC 0005224C FF 00 08 90 */ fmr f24, f1 /* 800552F0 00052250 7C 7A 1B 78 */ mr r26, r3 /* 800552F4 00052254 7C 9B 23 78 */ mr r27, r4 /* 800552F8 00052258 7C BC 2B 78 */ mr r28, r5 /* 800552FC 0005225C 7C D8 33 78 */ mr r24, r6 /* 80055300 00052260 38 61 00 10 */ addi r3, r1, 0x10 /* 80055304 00052264 4B FF BD 81 */ bl GetAreaId__7CEntityCFv /* 80055308 00052268 80 01 00 10 */ lwz r0, 0x10(r1) /* 8005530C 0005226C FC 20 C0 90 */ fmr f1, f24 /* 80055310 00052270 7F 85 E3 78 */ mr r5, r28 /* 80055314 00052274 38 61 00 30 */ addi r3, r1, 0x30 /* 80055318 00052278 90 01 00 14 */ stw r0, 0x14(r1) /* 8005531C 0005227C 38 C1 00 14 */ addi r6, r1, 0x14 /* 80055320 00052280 57 07 06 3E */ clrlwi r7, r24, 0x18 /* 80055324 00052284 80 9B 00 64 */ lwz r4, 0x64(r27) /* 80055328 00052288 48 0C 08 0D */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb /* 8005532C 0005228C FC 20 C0 90 */ fmr f1, f24 /* 80055330 00052290 C3 E1 00 30 */ lfs f31, 0x30(r1) /* 80055334 00052294 C3 C1 00 34 */ lfs f30, 0x34(r1) /* 80055338 00052298 7F 85 E3 78 */ mr r5, r28 /* 8005533C 0005229C C3 A1 00 38 */ lfs f29, 0x38(r1) /* 80055340 000522A0 38 9B 00 34 */ addi r4, r27, 0x34 /* 80055344 000522A4 C3 81 00 3C */ lfs f28, 0x3c(r1) /* 80055348 000522A8 C3 61 00 40 */ lfs f27, 0x40(r1) /* 8005534C 000522AC C3 41 00 44 */ lfs f26, 0x44(r1) /* 80055350 000522B0 C3 21 00 48 */ lfs f25, 0x48(r1) /* 80055354 000522B4 80 7B 00 64 */ lwz r3, 0x64(r27) /* 80055358 000522B8 48 0C 02 35 */ bl AdvanceParticles__10CModelDataFRC12CTransform4ffR13CStateManager /* 8005535C 000522BC 7F 63 DB 78 */ mr r3, r27 /* 80055360 000522C0 4B FF D8 ED */ bl UpdateSfxEmitters__6CActorFv /* 80055364 000522C4 80 9B 00 64 */ lwz r4, 0x64(r27) /* 80055368 000522C8 38 60 00 00 */ li r3, 0 /* 8005536C 000522CC 28 04 00 00 */ cmplwi r4, 0 /* 80055370 000522D0 41 82 00 14 */ beq lbl_80055384 /* 80055374 000522D4 80 04 00 10 */ lwz r0, 0x10(r4) /* 80055378 000522D8 28 00 00 00 */ cmplwi r0, 0 /* 8005537C 000522DC 41 82 00 08 */ beq lbl_80055384 /* 80055380 000522E0 38 60 00 01 */ li r3, 1 lbl_80055384: /* 80055384 000522E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80055388 000522E8 41 82 02 F8 */ beq lbl_80055680 /* 8005538C 000522EC 8B DB 00 D4 */ lbz r30, 0xd4(r27) /* 80055390 000522F0 7F 84 E3 78 */ mr r4, r28 /* 80055394 000522F4 83 FB 00 04 */ lwz r31, 4(r27) /* 80055398 000522F8 80 7C 08 70 */ lwz r3, 0x870(r28) /* 8005539C 000522FC 4B FB 67 7D */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager /* 800553A0 00052300 C0 BB 00 60 */ lfs f5, 0x60(r27) /* 800553A4 00052304 3B A0 00 00 */ li r29, 0 /* 800553A8 00052308 C0 9B 00 50 */ lfs f4, 0x50(r27) /* 800553AC 0005230C 38 80 00 00 */ li r4, 0 /* 800553B0 00052310 C0 7B 00 40 */ lfs f3, 0x40(r27) /* 800553B4 00052314 D0 61 00 24 */ stfs f3, 0x24(r1) /* 800553B8 00052318 D0 81 00 28 */ stfs f4, 0x28(r1) /* 800553BC 0005231C D0 A1 00 2C */ stfs f5, 0x2c(r1) /* 800553C0 00052320 C0 43 00 50 */ lfs f2, 0x50(r3) /* 800553C4 00052324 C0 23 00 60 */ lfs f1, 0x60(r3) /* 800553C8 00052328 C0 03 00 40 */ lfs f0, 0x40(r3) /* 800553CC 0005232C EC 42 20 28 */ fsubs f2, f2, f4 /* 800553D0 00052330 EC 21 28 28 */ fsubs f1, f1, f5 /* 800553D4 00052334 EC 00 18 28 */ fsubs f0, f0, f3 /* 800553D8 00052338 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 800553DC 0005233C D0 01 00 18 */ stfs f0, 0x18(r1) /* 800553E0 00052340 D0 21 00 20 */ stfs f1, 0x20(r1) /* 800553E4 00052344 80 7B 00 64 */ lwz r3, 0x64(r27) /* 800553E8 00052348 28 03 00 00 */ cmplwi r3, 0 /* 800553EC 0005234C 41 82 00 14 */ beq lbl_80055400 /* 800553F0 00052350 80 03 00 10 */ lwz r0, 0x10(r3) /* 800553F4 00052354 28 00 00 00 */ cmplwi r0, 0 /* 800553F8 00052358 41 82 00 08 */ beq lbl_80055400 /* 800553FC 0005235C 38 80 00 01 */ li r4, 1 lbl_80055400: /* 80055400 00052360 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80055404 00052364 41 82 00 1C */ beq lbl_80055420 /* 80055408 00052368 80 83 00 10 */ lwz r4, 0x10(r3) /* 8005540C 0005236C 3C 60 80 57 */ lis r3, lbl_8056C9EC@ha /* 80055410 00052370 38 63 C9 EC */ addi r3, r3, lbl_8056C9EC@l /* 80055414 00052374 83 A4 02 18 */ lwz r29, 0x218(r4) /* 80055418 00052378 3B 23 00 04 */ addi r25, r3, 4 /* 8005541C 0005237C 48 00 00 08 */ b lbl_80055424 lbl_80055420: /* 80055420 00052380 3B 20 00 00 */ li r25, 0 lbl_80055424: /* 80055424 00052384 2C 1D 00 00 */ cmpwi r29, 0 /* 80055428 00052388 40 81 00 98 */ ble lbl_800554C0 /* 8005542C 0005238C 28 19 00 00 */ cmplwi r25, 0 /* 80055430 00052390 41 82 00 90 */ beq lbl_800554C0 /* 80055434 00052394 3B 00 00 00 */ li r24, 0 /* 80055438 00052398 48 00 00 80 */ b lbl_800554B8 lbl_8005543C: /* 8005543C 0005239C A0 19 00 18 */ lhz r0, 0x18(r25) /* 80055440 000523A0 80 99 00 30 */ lwz r4, 0x30(r25) /* 80055444 000523A4 2C 00 00 08 */ cmpwi r0, 8 /* 80055448 000523A8 40 82 00 68 */ bne lbl_800554B0 /* 8005544C 000523AC 88 1B 00 E5 */ lbz r0, 0xe5(r27) /* 80055450 000523B0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 80055454 000523B4 40 82 00 5C */ bne lbl_800554B0 /* 80055458 000523B8 2C 04 FF FF */ cmpwi r4, -1 /* 8005545C 000523BC 41 82 00 18 */ beq lbl_80055474 /* 80055460 000523C0 80 7B 00 64 */ lwz r3, 0x64(r27) /* 80055464 000523C4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80055468 000523C8 80 03 02 04 */ lwz r0, 0x204(r3) /* 8005546C 000523CC 7C 04 00 00 */ cmpw r4, r0 /* 80055470 000523D0 40 82 00 40 */ bne lbl_800554B0 lbl_80055474: /* 80055474 000523D4 93 81 00 08 */ stw r28, 8(r1) /* 80055478 000523D8 38 00 00 01 */ li r0, 1 /* 8005547C 000523DC 7F 63 DB 78 */ mr r3, r27 /* 80055480 000523E0 7F C7 F3 78 */ mr r7, r30 /* 80055484 000523E4 90 01 00 0C */ stw r0, 0xc(r1) /* 80055488 000523E8 7F EA FB 78 */ mr r10, r31 /* 8005548C 000523EC 39 01 00 18 */ addi r8, r1, 0x18 /* 80055490 000523F0 39 21 00 24 */ addi r9, r1, 0x24 /* 80055494 000523F4 80 99 00 38 */ lwz r4, 0x38(r25) /* 80055498 000523F8 38 C0 00 14 */ li r6, 0x14 /* 8005549C 000523FC C0 39 00 2C */ lfs f1, 0x2c(r25) /* 800554A0 00052400 80 B9 00 34 */ lwz r5, 0x34(r25) /* 800554A4 00052404 C0 59 00 3C */ lfs f2, 0x3c(r25) /* 800554A8 00052408 C0 79 00 40 */ lfs f3, 0x40(r25) /* 800554AC 0005240C 4B FF DA 85 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager lbl_800554B0: /* 800554B0 00052410 3B 39 00 44 */ addi r25, r25, 0x44 /* 800554B4 00052414 3B 18 00 01 */ addi r24, r24, 1 lbl_800554B8: /* 800554B8 00052418 7C 18 E8 00 */ cmpw r24, r29 /* 800554BC 0005241C 41 80 FF 80 */ blt lbl_8005543C lbl_800554C0: /* 800554C0 00052420 80 9B 00 64 */ lwz r4, 0x64(r27) /* 800554C4 00052424 3B A0 00 00 */ li r29, 0 /* 800554C8 00052428 38 60 00 00 */ li r3, 0 /* 800554CC 0005242C 28 04 00 00 */ cmplwi r4, 0 /* 800554D0 00052430 41 82 00 14 */ beq lbl_800554E4 /* 800554D4 00052434 80 04 00 10 */ lwz r0, 0x10(r4) /* 800554D8 00052438 28 00 00 00 */ cmplwi r0, 0 /* 800554DC 0005243C 41 82 00 08 */ beq lbl_800554E4 /* 800554E0 00052440 38 60 00 01 */ li r3, 1 lbl_800554E4: /* 800554E4 00052444 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800554E8 00052448 41 82 00 1C */ beq lbl_80055504 /* 800554EC 0005244C 80 84 00 10 */ lwz r4, 0x10(r4) /* 800554F0 00052450 3C 60 80 57 */ lis r3, lbl_8056BDF4@ha /* 800554F4 00052454 38 63 BD F4 */ addi r3, r3, lbl_8056BDF4@l /* 800554F8 00052458 83 A4 02 10 */ lwz r29, 0x210(r4) /* 800554FC 0005245C 3B 23 00 04 */ addi r25, r3, 4 /* 80055500 00052460 48 00 00 08 */ b lbl_80055508 lbl_80055504: /* 80055504 00052464 3B 20 00 00 */ li r25, 0 lbl_80055508: /* 80055508 00052468 2C 1D 00 00 */ cmpwi r29, 0 /* 8005550C 0005246C 40 81 00 C8 */ ble lbl_800555D4 /* 80055510 00052470 28 19 00 00 */ cmplwi r25, 0 /* 80055514 00052474 41 82 00 C0 */ beq lbl_800555D4 /* 80055518 00052478 3B 00 00 00 */ li r24, 0 /* 8005551C 0005247C 48 00 00 B0 */ b lbl_800555CC lbl_80055520: /* 80055520 00052480 A0 B9 00 18 */ lhz r5, 0x18(r25) /* 80055524 00052484 80 99 00 30 */ lwz r4, 0x30(r25) /* 80055528 00052488 2C 05 00 04 */ cmpwi r5, 4 /* 8005552C 0005248C 40 82 00 6C */ bne lbl_80055598 /* 80055530 00052490 88 1B 00 E5 */ lbz r0, 0xe5(r27) /* 80055534 00052494 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 80055538 00052498 40 82 00 60 */ bne lbl_80055598 /* 8005553C 0005249C 2C 04 FF FF */ cmpwi r4, -1 /* 80055540 000524A0 41 82 00 18 */ beq lbl_80055558 /* 80055544 000524A4 80 7B 00 64 */ lwz r3, 0x64(r27) /* 80055548 000524A8 80 63 00 10 */ lwz r3, 0x10(r3) /* 8005554C 000524AC 80 03 02 04 */ lwz r0, 0x204(r3) /* 80055550 000524B0 7C 04 00 00 */ cmpw r4, r0 /* 80055554 000524B4 40 82 00 44 */ bne lbl_80055598 lbl_80055558: /* 80055558 000524B8 93 81 00 08 */ stw r28, 8(r1) /* 8005555C 000524BC 38 00 00 01 */ li r0, 1 /* 80055560 000524C0 C0 42 86 44 */ lfs f2, lbl_805AA364@sda21(r2) /* 80055564 000524C4 7F 63 DB 78 */ mr r3, r27 /* 80055568 000524C8 90 01 00 0C */ stw r0, 0xc(r1) /* 8005556C 000524CC 7F C7 F3 78 */ mr r7, r30 /* 80055570 000524D0 C0 62 86 88 */ lfs f3, lbl_805AA3A8@sda21(r2) /* 80055574 000524D4 7F EA FB 78 */ mr r10, r31 /* 80055578 000524D8 80 99 00 38 */ lwz r4, 0x38(r25) /* 8005557C 000524DC 39 01 00 18 */ addi r8, r1, 0x18 /* 80055580 000524E0 C0 39 00 2C */ lfs f1, 0x2c(r25) /* 80055584 000524E4 39 21 00 24 */ addi r9, r1, 0x24 /* 80055588 000524E8 80 B9 00 34 */ lwz r5, 0x34(r25) /* 8005558C 000524EC 38 C0 00 14 */ li r6, 0x14 /* 80055590 000524F0 4B FF D9 A1 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManager /* 80055594 000524F4 48 00 00 30 */ b lbl_800555C4 lbl_80055598: /* 80055598 000524F8 2C 05 00 06 */ cmpwi r5, 6 /* 8005559C 000524FC 40 82 00 28 */ bne lbl_800555C4 /* 800555A0 00052500 7F 63 DB 78 */ mr r3, r27 /* 800555A4 00052504 FC 20 C0 90 */ fmr f1, f24 /* 800555A8 00052508 81 9B 00 00 */ lwz r12, 0(r27) /* 800555AC 0005250C 7F 84 E3 78 */ mr r4, r28 /* 800555B0 00052510 7F 25 CB 78 */ mr r5, r25 /* 800555B4 00052514 80 D9 00 38 */ lwz r6, 0x38(r25) /* 800555B8 00052518 81 8C 00 68 */ lwz r12, 0x68(r12) /* 800555BC 0005251C 7D 89 03 A6 */ mtctr r12 /* 800555C0 00052520 4E 80 04 21 */ bctrl lbl_800555C4: /* 800555C4 00052524 3B 39 00 4C */ addi r25, r25, 0x4c /* 800555C8 00052528 3B 18 00 01 */ addi r24, r24, 1 lbl_800555CC: /* 800555CC 0005252C 7C 18 E8 00 */ cmpw r24, r29 /* 800555D0 00052530 41 80 FF 50 */ blt lbl_80055520 lbl_800555D4: /* 800555D4 00052534 80 9B 00 64 */ lwz r4, 0x64(r27) /* 800555D8 00052538 3B 00 00 00 */ li r24, 0 /* 800555DC 0005253C 38 60 00 00 */ li r3, 0 /* 800555E0 00052540 28 04 00 00 */ cmplwi r4, 0 /* 800555E4 00052544 41 82 00 14 */ beq lbl_800555F8 /* 800555E8 00052548 80 04 00 10 */ lwz r0, 0x10(r4) /* 800555EC 0005254C 28 00 00 00 */ cmplwi r0, 0 /* 800555F0 00052550 41 82 00 08 */ beq lbl_800555F8 /* 800555F4 00052554 38 60 00 01 */ li r3, 1 lbl_800555F8: /* 800555F8 00052558 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800555FC 0005255C 41 82 00 1C */ beq lbl_80055618 /* 80055600 00052560 80 84 00 10 */ lwz r4, 0x10(r4) /* 80055604 00052564 3C 60 80 57 */ lis r3, lbl_8056C2B8@ha /* 80055608 00052568 38 63 C2 B8 */ addi r3, r3, lbl_8056C2B8@l /* 8005560C 0005256C 83 04 02 14 */ lwz r24, 0x214(r4) /* 80055610 00052570 3B 23 00 04 */ addi r25, r3, 4 /* 80055614 00052574 48 00 00 08 */ b lbl_8005561C lbl_80055618: /* 80055618 00052578 3B 20 00 00 */ li r25, 0 lbl_8005561C: /* 8005561C 0005257C 2C 18 00 00 */ cmpwi r24, 0 /* 80055620 00052580 40 81 00 60 */ ble lbl_80055680 /* 80055624 00052584 28 19 00 00 */ cmplwi r25, 0 /* 80055628 00052588 41 82 00 58 */ beq lbl_80055680 /* 8005562C 0005258C 3B A0 00 00 */ li r29, 0 /* 80055630 00052590 48 00 00 48 */ b lbl_80055678 lbl_80055634: /* 80055634 00052594 80 99 00 30 */ lwz r4, 0x30(r25) /* 80055638 00052598 2C 04 FF FF */ cmpwi r4, -1 /* 8005563C 0005259C 41 82 00 18 */ beq lbl_80055654 /* 80055640 000525A0 80 7B 00 64 */ lwz r3, 0x64(r27) /* 80055644 000525A4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80055648 000525A8 80 03 02 04 */ lwz r0, 0x204(r3) /* 8005564C 000525AC 7C 04 00 00 */ cmpw r4, r0 /* 80055650 000525B0 40 82 00 20 */ bne lbl_80055670 lbl_80055654: /* 80055654 000525B4 80 7B 00 64 */ lwz r3, 0x64(r27) /* 80055658 000525B8 7F 86 E3 78 */ mr r6, r28 /* 8005565C 000525BC 38 99 00 08 */ addi r4, r25, 8 /* 80055660 000525C0 38 A0 00 01 */ li r5, 1 /* 80055664 000525C4 80 63 00 10 */ lwz r3, 0x10(r3) /* 80055668 000525C8 38 63 01 20 */ addi r3, r3, 0x120 /* 8005566C 000525CC 48 06 35 5D */ bl "SetParticleEffectState__17CParticleDatabaseFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>bR13CStateManager" lbl_80055670: /* 80055670 000525D0 3B 39 00 5C */ addi r25, r25, 0x5c /* 80055674 000525D4 3B BD 00 01 */ addi r29, r29, 1 lbl_80055678: /* 80055678 000525D8 7C 1D C0 00 */ cmpw r29, r24 /* 8005567C 000525DC 41 80 FF B8 */ blt lbl_80055634 lbl_80055680: /* 80055680 000525E0 D3 FA 00 00 */ stfs f31, 0(r26) /* 80055684 000525E4 D3 DA 00 04 */ stfs f30, 4(r26) /* 80055688 000525E8 D3 BA 00 08 */ stfs f29, 8(r26) /* 8005568C 000525EC D3 9A 00 0C */ stfs f28, 0xc(r26) /* 80055690 000525F0 D3 7A 00 10 */ stfs f27, 0x10(r26) /* 80055694 000525F4 D3 5A 00 14 */ stfs f26, 0x14(r26) /* 80055698 000525F8 D3 3A 00 18 */ stfs f25, 0x18(r26) /* 8005569C 000525FC E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 /* 800556A0 00052600 CB E1 00 E0 */ lfd f31, 0xe0(r1) /* 800556A4 00052604 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 /* 800556A8 00052608 CB C1 00 D0 */ lfd f30, 0xd0(r1) /* 800556AC 0005260C E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0 /* 800556B0 00052610 CB A1 00 C0 */ lfd f29, 0xc0(r1) /* 800556B4 00052614 E3 81 00 B8 */ psq_l f28, 184(r1), 0, qr0 /* 800556B8 00052618 CB 81 00 B0 */ lfd f28, 0xb0(r1) /* 800556BC 0005261C E3 61 00 A8 */ psq_l f27, 168(r1), 0, qr0 /* 800556C0 00052620 CB 61 00 A0 */ lfd f27, 0xa0(r1) /* 800556C4 00052624 E3 41 00 98 */ psq_l f26, 152(r1), 0, qr0 /* 800556C8 00052628 CB 41 00 90 */ lfd f26, 0x90(r1) /* 800556CC 0005262C E3 21 00 88 */ psq_l f25, 136(r1), 0, qr0 /* 800556D0 00052630 CB 21 00 80 */ lfd f25, 0x80(r1) /* 800556D4 00052634 E3 01 00 78 */ psq_l f24, 120(r1), 0, qr0 /* 800556D8 00052638 CB 01 00 70 */ lfd f24, 0x70(r1) /* 800556DC 0005263C BB 01 00 50 */ lmw r24, 0x50(r1) /* 800556E0 00052640 80 01 00 F4 */ lwz r0, 0xf4(r1) /* 800556E4 00052644 7C 08 03 A6 */ mtlr r0 /* 800556E8 00052648 38 21 00 F0 */ addi r1, r1, 0xf0 /* 800556EC 0005264C 4E 80 00 20 */ blr .global __dt__6CActorFv __dt__6CActorFv: /* 800556F0 00052650 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800556F4 00052654 7C 08 02 A6 */ mflr r0 /* 800556F8 00052658 90 01 00 24 */ stw r0, 0x24(r1) /* 800556FC 0005265C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80055700 00052660 93 C1 00 18 */ stw r30, 0x18(r1) /* 80055704 00052664 7C 9E 23 78 */ mr r30, r4 /* 80055708 00052668 93 A1 00 14 */ stw r29, 0x14(r1) /* 8005570C 0005266C 7C 7D 1B 79 */ or. r29, r3, r3 /* 80055710 00052670 41 82 00 F0 */ beq lbl_80055800 /* 80055714 00052674 3C 80 80 3E */ lis r4, lbl_803D9EB0@ha /* 80055718 00052678 38 04 9E B0 */ addi r0, r4, lbl_803D9EB0@l /* 8005571C 0005267C 90 1D 00 00 */ stw r0, 0(r29) /* 80055720 00052680 4B FF FB 25 */ bl RemoveEmitter__6CActorFv /* 80055724 00052684 34 1D 00 D8 */ addic. r0, r29, 0xd8 /* 80055728 00052688 41 82 00 58 */ beq lbl_80055780 /* 8005572C 0005268C 80 BD 00 D8 */ lwz r5, 0xd8(r29) /* 80055730 00052690 38 60 00 00 */ li r3, 0 /* 80055734 00052694 2C 05 00 00 */ cmpwi r5, 0 /* 80055738 00052698 40 81 00 40 */ ble lbl_80055778 /* 8005573C 0005269C 2C 05 00 08 */ cmpwi r5, 8 /* 80055740 000526A0 38 85 FF F8 */ addi r4, r5, -8 /* 80055744 000526A4 40 81 00 20 */ ble lbl_80055764 /* 80055748 000526A8 38 04 00 07 */ addi r0, r4, 7 /* 8005574C 000526AC 54 00 E8 FE */ srwi r0, r0, 3 /* 80055750 000526B0 7C 09 03 A6 */ mtctr r0 /* 80055754 000526B4 2C 04 00 00 */ cmpwi r4, 0 /* 80055758 000526B8 40 81 00 0C */ ble lbl_80055764 lbl_8005575C: /* 8005575C 000526BC 38 63 00 08 */ addi r3, r3, 8 /* 80055760 000526C0 42 00 FF FC */ bdnz lbl_8005575C lbl_80055764: /* 80055764 000526C4 7C 03 28 50 */ subf r0, r3, r5 /* 80055768 000526C8 7C 09 03 A6 */ mtctr r0 /* 8005576C 000526CC 7C 03 28 00 */ cmpw r3, r5 /* 80055770 000526D0 40 80 00 08 */ bge lbl_80055778 lbl_80055774: /* 80055774 000526D4 42 00 00 00 */ bdnz lbl_80055774 lbl_80055778: /* 80055778 000526D8 38 00 00 00 */ li r0, 0 /* 8005577C 000526DC 90 1D 00 D8 */ stw r0, 0xd8(r29) lbl_80055780: /* 80055780 000526E0 34 1D 00 98 */ addic. r0, r29, 0x98 /* 80055784 000526E4 41 82 00 28 */ beq lbl_800557AC /* 80055788 000526E8 83 FD 00 98 */ lwz r31, 0x98(r29) /* 8005578C 000526EC 28 1F 00 00 */ cmplwi r31, 0 /* 80055790 000526F0 41 82 00 1C */ beq lbl_800557AC /* 80055794 000526F4 41 82 00 10 */ beq lbl_800557A4 /* 80055798 000526F8 7F E3 FB 78 */ mr r3, r31 /* 8005579C 000526FC 38 80 00 00 */ li r4, 0 /* 800557A0 00052700 48 2E B6 A1 */ bl __dt__6CTokenFv lbl_800557A4: /* 800557A4 00052704 7F E3 FB 78 */ mr r3, r31 /* 800557A8 00052708 48 2C 01 89 */ bl Free__7CMemoryFPCv lbl_800557AC: /* 800557AC 0005270C 34 1D 00 94 */ addic. r0, r29, 0x94 /* 800557B0 00052710 41 82 00 0C */ beq lbl_800557BC /* 800557B4 00052714 80 7D 00 94 */ lwz r3, 0x94(r29) /* 800557B8 00052718 48 2C 01 79 */ bl Free__7CMemoryFPCv lbl_800557BC: /* 800557BC 0005271C 34 1D 00 90 */ addic. r0, r29, 0x90 /* 800557C0 00052720 41 82 00 10 */ beq lbl_800557D0 /* 800557C4 00052724 80 7D 00 90 */ lwz r3, 0x90(r29) /* 800557C8 00052728 38 80 00 01 */ li r4, 1 /* 800557CC 0005272C 48 0A F9 09 */ bl __dt__12CActorLightsFv lbl_800557D0: /* 800557D0 00052730 34 1D 00 64 */ addic. r0, r29, 0x64 /* 800557D4 00052734 41 82 00 10 */ beq lbl_800557E4 /* 800557D8 00052738 80 7D 00 64 */ lwz r3, 0x64(r29) /* 800557DC 0005273C 38 80 00 01 */ li r4, 1 /* 800557E0 00052740 48 0C 12 6D */ bl __dt__10CModelDataFv lbl_800557E4: /* 800557E4 00052744 7F A3 EB 78 */ mr r3, r29 /* 800557E8 00052748 38 80 00 00 */ li r4, 0 /* 800557EC 0005274C 4B FF BA 89 */ bl __dt__7CEntityFv /* 800557F0 00052750 7F C0 07 35 */ extsh. r0, r30 /* 800557F4 00052754 40 81 00 0C */ ble lbl_80055800 /* 800557F8 00052758 7F A3 EB 78 */ mr r3, r29 /* 800557FC 0005275C 48 2C 01 35 */ bl Free__7CMemoryFPCv lbl_80055800: /* 80055800 00052760 80 01 00 24 */ lwz r0, 0x24(r1) /* 80055804 00052764 7F A3 EB 78 */ mr r3, r29 /* 80055808 00052768 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005580C 0005276C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80055810 00052770 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80055814 00052774 7C 08 03 A6 */ mtlr r0 /* 80055818 00052778 38 21 00 20 */ addi r1, r1, 0x20 /* 8005581C 0005277C 4E 80 00 20 */ blr .global "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId": /* 80055820 00052780 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80055824 00052784 7C 08 02 A6 */ mflr r0 /* 80055828 00052788 90 01 00 74 */ stw r0, 0x74(r1) /* 8005582C 0005278C BF 21 00 54 */ stmw r25, 0x54(r1) /* 80055830 00052790 7C BA 2B 78 */ mr r26, r5 /* 80055834 00052794 83 A1 00 78 */ lwz r29, 0x78(r1) /* 80055838 00052798 7C 7F 1B 78 */ mr r31, r3 /* 8005583C 0005279C 83 C1 00 7C */ lwz r30, 0x7c(r1) /* 80055840 000527A0 7D 19 43 78 */ mr r25, r8 /* 80055844 000527A4 7D 3B 4B 78 */ mr r27, r9 /* 80055848 000527A8 7D 5C 53 78 */ mr r28, r10 /* 8005584C 000527AC 7C E5 3B 78 */ mr r5, r7 /* 80055850 000527B0 A0 04 00 00 */ lhz r0, 0(r4) /* 80055854 000527B4 7C C4 33 78 */ mr r4, r6 /* 80055858 000527B8 7C 87 23 78 */ mr r7, r4 /* 8005585C 000527BC 7F 46 D3 78 */ mr r6, r26 /* 80055860 000527C0 B0 01 00 08 */ sth r0, 8(r1) /* 80055864 000527C4 38 81 00 08 */ addi r4, r1, 8 /* 80055868 000527C8 4B FF BA BD */ bl "__ct__7CEntityF9TUniqueIdRC11CEntityInfobRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8005586C 000527CC 3C 60 80 3E */ lis r3, lbl_803D9EB0@ha /* 80055870 000527D0 7F 24 CB 78 */ mr r4, r25 /* 80055874 000527D4 38 03 9E B0 */ addi r0, r3, lbl_803D9EB0@l /* 80055878 000527D8 38 7F 00 34 */ addi r3, r31, 0x34 /* 8005587C 000527DC 90 1F 00 00 */ stw r0, 0(r31) /* 80055880 000527E0 48 2B D2 F5 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80055884 000527E4 80 1B 00 10 */ lwz r0, 0x10(r27) /* 80055888 000527E8 38 60 00 00 */ li r3, 0 /* 8005588C 000527EC 28 00 00 00 */ cmplwi r0, 0 /* 80055890 000527F0 40 82 00 14 */ bne lbl_800558A4 /* 80055894 000527F4 88 1B 00 28 */ lbz r0, 0x28(r27) /* 80055898 000527F8 28 00 00 00 */ cmplwi r0, 0 /* 8005589C 000527FC 40 82 00 08 */ bne lbl_800558A4 /* 800558A0 00052800 38 60 00 01 */ li r3, 1 lbl_800558A4: /* 800558A4 00052804 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800558A8 00052808 41 82 00 0C */ beq lbl_800558B4 /* 800558AC 0005280C 38 00 00 00 */ li r0, 0 /* 800558B0 00052810 48 00 00 2C */ b lbl_800558DC lbl_800558B4: /* 800558B4 00052814 3C 80 80 3D */ lis r4, lbl_803CCF68@ha /* 800558B8 00052818 38 60 00 4C */ li r3, 0x4c /* 800558BC 0005281C 38 84 CF 68 */ addi r4, r4, lbl_803CCF68@l /* 800558C0 00052820 38 A0 00 00 */ li r5, 0 /* 800558C4 00052824 48 2B FF A9 */ bl __nw__FUlPCcPCc /* 800558C8 00052828 7C 60 1B 79 */ or. r0, r3, r3 /* 800558CC 0005282C 41 82 00 10 */ beq lbl_800558DC /* 800558D0 00052830 7F 64 DB 78 */ mr r4, r27 /* 800558D4 00052834 4B FC 34 B9 */ bl __ct__10CModelDataFRC10CModelData /* 800558D8 00052838 7C 60 1B 78 */ mr r0, r3 lbl_800558DC: /* 800558DC 0005283C 90 1F 00 64 */ stw r0, 0x64(r31) /* 800558E0 00052840 7F 84 E3 78 */ mr r4, r28 /* 800558E4 00052844 7F A5 EB 78 */ mr r5, r29 /* 800558E8 00052848 38 61 00 30 */ addi r3, r1, 0x30 /* 800558EC 0005284C 48 00 04 3D */ bl MakeActorMaterialList__FRC13CMaterialListRC16CActorParameters /* 800558F0 00052850 80 01 00 30 */ lwz r0, 0x30(r1) /* 800558F4 00052854 38 60 00 00 */ li r3, 0 /* 800558F8 00052858 80 A1 00 34 */ lwz r5, 0x34(r1) /* 800558FC 0005285C 38 80 00 01 */ li r4, 1 /* 80055900 00052860 90 BF 00 6C */ stw r5, 0x6c(r31) /* 80055904 00052864 90 1F 00 68 */ stw r0, 0x68(r31) /* 80055908 00052868 80 AD 82 A8 */ lwz r5, lbl_805A6E68@sda21(r13) /* 8005590C 0005286C 48 33 45 E9 */ bl __shl2i /* 80055910 00052870 90 9F 00 74 */ stw r4, 0x74(r31) /* 80055914 00052874 38 A0 00 03 */ li r5, 3 /* 80055918 00052878 38 80 00 00 */ li r4, 0 /* 8005591C 0005287C 38 C0 00 00 */ li r6, 0 /* 80055920 00052880 90 7F 00 70 */ stw r3, 0x70(r31) /* 80055924 00052884 90 9F 00 7C */ stw r4, 0x7c(r31) /* 80055928 00052888 90 9F 00 78 */ stw r4, 0x78(r31) /* 8005592C 0005288C 90 BF 00 80 */ stw r5, 0x80(r31) /* 80055930 00052890 A0 0D 82 AC */ lhz r0, lbl_805A6E6C@sda21(r13) /* 80055934 00052894 90 A1 00 48 */ stw r5, 0x48(r1) /* 80055938 00052898 B0 1F 00 88 */ sth r0, 0x88(r31) /* 8005593C 0005289C 90 9F 00 8C */ stw r4, 0x8c(r31) /* 80055940 000528A0 80 1B 00 10 */ lwz r0, 0x10(r27) /* 80055944 000528A4 28 00 00 00 */ cmplwi r0, 0 /* 80055948 000528A8 40 82 00 14 */ bne lbl_8005595C /* 8005594C 000528AC 88 1B 00 28 */ lbz r0, 0x28(r27) /* 80055950 000528B0 28 00 00 00 */ cmplwi r0, 0 /* 80055954 000528B4 40 82 00 08 */ bne lbl_8005595C /* 80055958 000528B8 38 80 00 01 */ li r4, 1 lbl_8005595C: /* 8005595C 000528BC 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80055960 000528C0 41 82 00 0C */ beq lbl_8005596C /* 80055964 000528C4 38 60 00 00 */ li r3, 0 /* 80055968 000528C8 48 00 00 20 */ b lbl_80055988 lbl_8005596C: /* 8005596C 000528CC 7F A4 EB 78 */ mr r4, r29 /* 80055970 000528D0 38 61 00 24 */ addi r3, r1, 0x24 /* 80055974 000528D4 48 0B 0A 9D */ bl MakeActorLights__16CLightParametersCFv /* 80055978 000528D8 38 00 00 00 */ li r0, 0 /* 8005597C 000528DC 80 61 00 28 */ lwz r3, 0x28(r1) /* 80055980 000528E0 98 01 00 24 */ stb r0, 0x24(r1) /* 80055984 000528E4 38 C0 00 01 */ li r6, 1 lbl_80055988: /* 80055988 000528E8 7C C0 07 75 */ extsb. r0, r6 /* 8005598C 000528EC 90 7F 00 90 */ stw r3, 0x90(r31) /* 80055990 000528F0 41 82 00 1C */ beq lbl_800559AC /* 80055994 000528F4 88 01 00 24 */ lbz r0, 0x24(r1) /* 80055998 000528F8 28 00 00 00 */ cmplwi r0, 0 /* 8005599C 000528FC 41 82 00 10 */ beq lbl_800559AC /* 800559A0 00052900 80 61 00 28 */ lwz r3, 0x28(r1) /* 800559A4 00052904 38 80 00 01 */ li r4, 1 /* 800559A8 00052908 48 0A F7 2D */ bl __dt__12CActorLightsFv lbl_800559AC: /* 800559AC 0005290C 38 A0 00 00 */ li r5, 0 /* 800559B0 00052910 C0 22 86 30 */ lfs f1, lbl_805AA350@sda21(r2) /* 800559B4 00052914 90 BF 00 94 */ stw r5, 0x94(r31) /* 800559B8 00052918 3C 80 80 5A */ lis r4, lbl_805A6754@ha /* 800559BC 0005291C FC 40 08 90 */ fmr f2, f1 /* 800559C0 00052920 38 00 00 03 */ li r0, 3 /* 800559C4 00052924 90 BF 00 98 */ stw r5, 0x98(r31) /* 800559C8 00052928 FC 60 08 90 */ fmr f3, f1 /* 800559CC 0005292C FC 80 08 90 */ fmr f4, f1 /* 800559D0 00052930 38 61 00 20 */ addi r3, r1, 0x20 /* 800559D4 00052934 C4 04 67 54 */ lfsu f0, lbl_805A6754@l(r4) /* 800559D8 00052938 D0 1F 00 9C */ stfs f0, 0x9c(r31) /* 800559DC 0005293C C0 04 00 04 */ lfs f0, 4(r4) /* 800559E0 00052940 D0 1F 00 A0 */ stfs f0, 0xa0(r31) /* 800559E4 00052944 C0 04 00 08 */ lfs f0, 8(r4) /* 800559E8 00052948 D0 1F 00 A4 */ stfs f0, 0xa4(r31) /* 800559EC 0005294C C0 04 00 0C */ lfs f0, 0xc(r4) /* 800559F0 00052950 D0 1F 00 A8 */ stfs f0, 0xa8(r31) /* 800559F4 00052954 C0 04 00 10 */ lfs f0, 0x10(r4) /* 800559F8 00052958 D0 1F 00 AC */ stfs f0, 0xac(r31) /* 800559FC 0005295C C0 04 00 14 */ lfs f0, 0x14(r4) /* 80055A00 00052960 D0 1F 00 B0 */ stfs f0, 0xb0(r31) /* 80055A04 00052964 98 A1 00 1C */ stb r5, 0x1c(r1) /* 80055A08 00052968 98 A1 00 1D */ stb r5, 0x1d(r1) /* 80055A0C 0005296C B0 01 00 1E */ sth r0, 0x1e(r1) /* 80055A10 00052970 48 30 D9 DD */ bl __ct__6CColorFffff /* 80055A14 00052974 88 01 00 1C */ lbz r0, 0x1c(r1) /* 80055A18 00052978 38 C0 20 00 */ li r6, 0x2000 /* 80055A1C 0005297C C0 02 86 3C */ lfs f0, lbl_805AA35C@sda21(r2) /* 80055A20 00052980 38 A0 FF FF */ li r5, -1 /* 80055A24 00052984 98 1F 00 B4 */ stb r0, 0xb4(r31) /* 80055A28 00052988 35 1F 00 DC */ addic. r8, r31, 0xdc /* 80055A2C 0005298C 88 82 CC 40 */ lbz r4, lbl_805AE960@sda21(r2) /* 80055A30 00052990 38 60 00 02 */ li r3, 2 /* 80055A34 00052994 88 E1 00 1D */ lbz r7, 0x1d(r1) /* 80055A38 00052998 38 00 00 00 */ li r0, 0 /* 80055A3C 0005299C 98 FF 00 B5 */ stb r7, 0xb5(r31) /* 80055A40 000529A0 A0 E1 00 1E */ lhz r7, 0x1e(r1) /* 80055A44 000529A4 B0 FF 00 B6 */ sth r7, 0xb6(r31) /* 80055A48 000529A8 80 E1 00 20 */ lwz r7, 0x20(r1) /* 80055A4C 000529AC 90 FF 00 B8 */ stw r7, 0xb8(r31) /* 80055A50 000529B0 D0 1F 00 BC */ stfs f0, 0xbc(r31) /* 80055A54 000529B4 90 DF 00 C0 */ stw r6, 0xc0(r31) /* 80055A58 000529B8 A0 CD A3 8C */ lhz r6, lbl_805A8F4C@sda21(r13) /* 80055A5C 000529BC B0 DF 00 C4 */ sth r6, 0xc4(r31) /* 80055A60 000529C0 A0 DE 00 00 */ lhz r6, 0(r30) /* 80055A64 000529C4 B0 DF 00 C6 */ sth r6, 0xc6(r31) /* 80055A68 000529C8 90 BF 00 C8 */ stw r5, 0xc8(r31) /* 80055A6C 000529CC 90 BF 00 CC */ stw r5, 0xcc(r31) /* 80055A70 000529D0 C0 1D 00 64 */ lfs f0, 0x64(r29) /* 80055A74 000529D4 D0 1F 00 D0 */ stfs f0, 0xd0(r31) /* 80055A78 000529D8 98 9F 00 D4 */ stb r4, 0xd4(r31) /* 80055A7C 000529DC 90 7F 00 D8 */ stw r3, 0xd8(r31) /* 80055A80 000529E0 41 82 00 08 */ beq lbl_80055A88 /* 80055A84 000529E4 90 08 00 00 */ stw r0, 0(r8) lbl_80055A88: /* 80055A88 000529E8 35 08 00 04 */ addic. r8, r8, 4 /* 80055A8C 000529EC 41 82 00 08 */ beq lbl_80055A94 /* 80055A90 000529F0 90 08 00 00 */ stw r0, 0(r8) lbl_80055A94: /* 80055A94 000529F4 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055A98 000529F8 38 A0 00 00 */ li r5, 0 /* 80055A9C 000529FC 50 A0 E8 04 */ rlwimi r0, r5, 0x1d, 0, 2 /* 80055AA0 00052A00 38 80 00 01 */ li r4, 1 /* 80055AA4 00052A04 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AA8 00052A08 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055AAC 00052A0C 50 80 E0 C6 */ rlwimi r0, r4, 0x1c, 3, 3 /* 80055AB0 00052A10 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AB4 00052A14 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055AB8 00052A18 50 80 D9 08 */ rlwimi r0, r4, 0x1b, 4, 4 /* 80055ABC 00052A1C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AC0 00052A20 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055AC4 00052A24 50 80 D1 4A */ rlwimi r0, r4, 0x1a, 5, 5 /* 80055AC8 00052A28 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055ACC 00052A2C 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055AD0 00052A30 50 A0 C9 8C */ rlwimi r0, r5, 0x19, 6, 6 /* 80055AD4 00052A34 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AD8 00052A38 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055ADC 00052A3C 50 80 C1 CE */ rlwimi r0, r4, 0x18, 7, 7 /* 80055AE0 00052A40 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AE4 00052A44 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055AE8 00052A48 50 A0 BA 10 */ rlwimi r0, r5, 0x17, 8, 8 /* 80055AEC 00052A4C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AF0 00052A50 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055AF4 00052A54 50 A0 B2 52 */ rlwimi r0, r5, 0x16, 9, 9 /* 80055AF8 00052A58 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055AFC 00052A5C 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B00 00052A60 50 A0 AA 94 */ rlwimi r0, r5, 0x15, 0xa, 0xa /* 80055B04 00052A64 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B08 00052A68 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B0C 00052A6C 50 80 A2 D6 */ rlwimi r0, r4, 0x14, 0xb, 0xb /* 80055B10 00052A70 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B14 00052A74 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B18 00052A78 50 80 9B 18 */ rlwimi r0, r4, 0x13, 0xc, 0xc /* 80055B1C 00052A7C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B20 00052A80 88 7D 00 58 */ lbz r3, 0x58(r29) /* 80055B24 00052A84 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B28 00052A88 50 60 5B 5A */ rlwimi r0, r3, 0xb, 0xd, 0xd /* 80055B2C 00052A8C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B30 00052A90 88 7D 00 58 */ lbz r3, 0x58(r29) /* 80055B34 00052A94 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B38 00052A98 50 60 63 9C */ rlwimi r0, r3, 0xc, 0xe, 0xe /* 80055B3C 00052A9C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B40 00052AA0 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B44 00052AA4 50 A0 83 DE */ rlwimi r0, r5, 0x10, 0xf, 0xf /* 80055B48 00052AA8 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B4C 00052AAC 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B50 00052AB0 50 A0 6C 24 */ rlwimi r0, r5, 0xd, 0x10, 0x12 /* 80055B54 00052AB4 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B58 00052AB8 88 1D 00 58 */ lbz r0, 0x58(r29) /* 80055B5C 00052ABC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80055B60 00052AC0 41 82 00 08 */ beq lbl_80055B68 /* 80055B64 00052AC4 38 80 00 02 */ li r4, 2 lbl_80055B68: /* 80055B68 00052AC8 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B6C 00052ACC 50 80 5C E8 */ rlwimi r0, r4, 0xb, 0x13, 0x14 /* 80055B70 00052AD0 38 C0 00 01 */ li r6, 1 /* 80055B74 00052AD4 38 A0 00 00 */ li r5, 0 /* 80055B78 00052AD8 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B7C 00052ADC 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B80 00052AE0 50 C0 55 6A */ rlwimi r0, r6, 0xa, 0x15, 0x15 /* 80055B84 00052AE4 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B88 00052AE8 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B8C 00052AEC 50 A0 4D AC */ rlwimi r0, r5, 9, 0x16, 0x16 /* 80055B90 00052AF0 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055B94 00052AF4 88 9D 00 54 */ lbz r4, 0x54(r29) /* 80055B98 00052AF8 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055B9C 00052AFC 50 80 0D F4 */ rlwimi r0, r4, 1, 0x17, 0x1a /* 80055BA0 00052B00 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055BA4 00052B04 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055BA8 00052B08 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b /* 80055BAC 00052B0C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055BB0 00052B10 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055BB4 00052B14 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c /* 80055BB8 00052B18 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055BBC 00052B1C 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055BC0 00052B20 53 40 17 7A */ rlwimi r0, r26, 2, 0x1d, 0x1d /* 80055BC4 00052B24 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055BC8 00052B28 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055BCC 00052B2C 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e /* 80055BD0 00052B30 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055BD4 00052B34 80 1F 00 E4 */ lwz r0, 0xe4(r31) /* 80055BD8 00052B38 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f /* 80055BDC 00052B3C 90 1F 00 E4 */ stw r0, 0xe4(r31) /* 80055BE0 00052B40 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80055BE4 00052B44 28 03 00 00 */ cmplwi r3, 0 /* 80055BE8 00052B48 41 82 00 70 */ beq lbl_80055C58 /* 80055BEC 00052B4C 80 1D 00 44 */ lwz r0, 0x44(r29) /* 80055BF0 00052B50 28 00 00 00 */ cmplwi r0, 0 /* 80055BF4 00052B54 41 82 00 0C */ beq lbl_80055C00 /* 80055BF8 00052B58 38 9D 00 44 */ addi r4, r29, 0x44 /* 80055BFC 00052B5C 48 0B F3 F5 */ bl "SetXRayModel__10CModelDataFRCQ24rstl11pair" lbl_80055C00: /* 80055C00 00052B60 80 1D 00 4C */ lwz r0, 0x4c(r29) /* 80055C04 00052B64 28 00 00 00 */ cmplwi r0, 0 /* 80055C08 00052B68 41 82 00 10 */ beq lbl_80055C18 /* 80055C0C 00052B6C 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80055C10 00052B70 38 9D 00 4C */ addi r4, r29, 0x4c /* 80055C14 00052B74 48 0B F6 41 */ bl "SetInfraModel__10CModelDataFRCQ24rstl11pair" lbl_80055C18: /* 80055C18 00052B78 88 1D 00 1C */ lbz r0, 0x1c(r29) /* 80055C1C 00052B7C 28 00 00 00 */ cmplwi r0, 0 /* 80055C20 00052B80 41 82 00 10 */ beq lbl_80055C30 /* 80055C24 00052B84 80 1D 00 3C */ lwz r0, 0x3c(r29) /* 80055C28 00052B88 2C 00 00 00 */ cmpwi r0, 0 /* 80055C2C 00052B8C 40 82 00 10 */ bne lbl_80055C3C lbl_80055C30: /* 80055C30 00052B90 80 1D 00 18 */ lwz r0, 0x18(r29) /* 80055C34 00052B94 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80055C38 00052B98 90 03 00 18 */ stw r0, 0x18(r3) lbl_80055C3C: /* 80055C3C 00052B9C 88 1D 00 58 */ lbz r0, 0x58(r29) /* 80055C40 00052BA0 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80055C44 00052BA4 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f /* 80055C48 00052BA8 7C 04 00 34 */ cntlzw r4, r0 /* 80055C4C 00052BAC 88 03 00 14 */ lbz r0, 0x14(r3) /* 80055C50 00052BB0 50 80 0E 72 */ rlwimi r0, r4, 1, 0x19, 0x19 /* 80055C54 00052BB4 98 03 00 14 */ stb r0, 0x14(r3) lbl_80055C58: /* 80055C58 00052BB8 83 7D 00 40 */ lwz r27, 0x40(r29) /* 80055C5C 00052BBC 3C 1B 00 01 */ addis r0, r27, 1 /* 80055C60 00052BC0 28 00 FF FF */ cmplwi r0, 0xffff /* 80055C64 00052BC4 41 82 00 AC */ beq lbl_80055D10 /* 80055C68 00052BC8 3C 60 80 3D */ lis r3, lbl_803CCF68@ha /* 80055C6C 00052BCC 3B 20 00 00 */ li r25, 0 /* 80055C70 00052BD0 38 83 CF 68 */ addi r4, r3, lbl_803CCF68@l /* 80055C74 00052BD4 38 A0 00 00 */ li r5, 0 /* 80055C78 00052BD8 38 60 00 0C */ li r3, 0xc /* 80055C7C 00052BDC 48 2B FB F1 */ bl __nw__FUlPCcPCc /* 80055C80 00052BE0 7C 7A 1B 79 */ or. r26, r3, r3 /* 80055C84 00052BE4 41 82 00 48 */ beq lbl_80055CCC /* 80055C88 00052BE8 3C 60 53 43 */ lis r3, 0x5343414E@ha /* 80055C8C 00052BEC 93 61 00 18 */ stw r27, 0x18(r1) /* 80055C90 00052BF0 38 03 41 4E */ addi r0, r3, 0x5343414E@l /* 80055C94 00052BF4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80055C98 00052BF8 90 01 00 14 */ stw r0, 0x14(r1) /* 80055C9C 00052BFC 38 61 00 0C */ addi r3, r1, 0xc /* 80055CA0 00052C00 38 A1 00 14 */ addi r5, r1, 0x14 /* 80055CA4 00052C04 81 84 00 00 */ lwz r12, 0(r4) /* 80055CA8 00052C08 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80055CAC 00052C0C 7D 89 03 A6 */ mtctr r12 /* 80055CB0 00052C10 4E 80 04 21 */ bctrl /* 80055CB4 00052C14 7F 43 D3 78 */ mr r3, r26 /* 80055CB8 00052C18 38 81 00 0C */ addi r4, r1, 0xc /* 80055CBC 00052C1C 3B 20 00 01 */ li r25, 1 /* 80055CC0 00052C20 48 2E B1 E9 */ bl __ct__6CTokenFRC6CToken /* 80055CC4 00052C24 38 00 00 00 */ li r0, 0 /* 80055CC8 00052C28 90 1A 00 08 */ stw r0, 8(r26) lbl_80055CCC: /* 80055CCC 00052C2C 83 7F 00 98 */ lwz r27, 0x98(r31) /* 80055CD0 00052C30 28 1B 00 00 */ cmplwi r27, 0 /* 80055CD4 00052C34 41 82 00 1C */ beq lbl_80055CF0 /* 80055CD8 00052C38 41 82 00 10 */ beq lbl_80055CE8 /* 80055CDC 00052C3C 7F 63 DB 78 */ mr r3, r27 /* 80055CE0 00052C40 38 80 00 00 */ li r4, 0 /* 80055CE4 00052C44 48 2E B1 5D */ bl __dt__6CTokenFv lbl_80055CE8: /* 80055CE8 00052C48 7F 63 DB 78 */ mr r3, r27 /* 80055CEC 00052C4C 48 2B FC 45 */ bl Free__7CMemoryFPCv lbl_80055CF0: /* 80055CF0 00052C50 7F 20 07 75 */ extsb. r0, r25 /* 80055CF4 00052C54 93 5F 00 98 */ stw r26, 0x98(r31) /* 80055CF8 00052C58 41 82 00 10 */ beq lbl_80055D08 /* 80055CFC 00052C5C 38 61 00 0C */ addi r3, r1, 0xc /* 80055D00 00052C60 38 80 FF FF */ li r4, -1 /* 80055D04 00052C64 48 2E B1 3D */ bl __dt__6CTokenFv lbl_80055D08: /* 80055D08 00052C68 80 7F 00 98 */ lwz r3, 0x98(r31) /* 80055D0C 00052C6C 48 2E B0 79 */ bl Lock__6CTokenFv lbl_80055D10: /* 80055D10 00052C70 7F E3 FB 78 */ mr r3, r31 /* 80055D14 00052C74 BB 21 00 54 */ lmw r25, 0x54(r1) /* 80055D18 00052C78 80 01 00 74 */ lwz r0, 0x74(r1) /* 80055D1C 00052C7C 7C 08 03 A6 */ mtlr r0 /* 80055D20 00052C80 38 21 00 70 */ addi r1, r1, 0x70 /* 80055D24 00052C84 4E 80 00 20 */ blr .global MakeActorMaterialList__FRC13CMaterialListRC16CActorParameters MakeActorMaterialList__FRC13CMaterialListRC16CActorParameters: /* 80055D28 00052C88 88 05 00 54 */ lbz r0, 0x54(r5) /* 80055D2C 00052C8C 80 C4 00 00 */ lwz r6, 0(r4) /* 80055D30 00052C90 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 80055D34 00052C94 80 84 00 04 */ lwz r4, 4(r4) /* 80055D38 00052C98 41 82 00 08 */ beq lbl_80055D40 /* 80055D3C 00052C9C 60 C6 40 00 */ ori r6, r6, 0x4000 lbl_80055D40: /* 80055D40 00052CA0 88 05 00 54 */ lbz r0, 0x54(r5) /* 80055D44 00052CA4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 80055D48 00052CA8 41 82 00 0C */ beq lbl_80055D54 /* 80055D4C 00052CAC 3C 00 08 00 */ lis r0, 0x800 /* 80055D50 00052CB0 7C 84 03 78 */ or r4, r4, r0 lbl_80055D54: /* 80055D54 00052CB4 90 83 00 04 */ stw r4, 4(r3) /* 80055D58 00052CB8 90 C3 00 00 */ stw r6, 0(r3) /* 80055D5C 00052CBC 4E 80 00 20 */ blr