.include "macros.inc" .section .data .balign 8 .global lbl_803EB6C8 lbl_803EB6C8: # ROM: 0x3E86C8 .4byte 0 .4byte 0 .4byte __dt__Q212COmegaPirate6CFlashFv .4byte Accept__Q212COmegaPirate6CFlashFR8IVisitor .4byte PreThink__7CEntityFfR13CStateManager .4byte Think__Q212COmegaPirate6CFlashFfR13CStateManager .4byte AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFUc .4byte PreRender__Q212COmegaPirate6CFlashFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__Q212COmegaPirate6CFlashCFRC14CFrustumPlanesRC13CStateManager .4byte Render__Q212COmegaPirate6CFlashCFRC13CStateManager .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__6CActorCFRC13CStateManager .4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef .global lbl_803EB734 lbl_803EB734: # ROM: 0x3E8734 .4byte lbl_8028DBCC .4byte lbl_8028D848 .4byte lbl_8028D8D8 .4byte lbl_8028D968 .4byte lbl_8028D9F8 .4byte lbl_8028DA34 .4byte lbl_8028DABC .4byte lbl_8028DB44 .global lbl_803EB754 lbl_803EB754: # ROM: 0x3E8754 .4byte lbl_80290624 .4byte lbl_80290654 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_80290634 .4byte lbl_8029063C .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802906CC .4byte lbl_802906A0 .4byte lbl_80290644 .4byte lbl_8029062C .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_802907F0 .4byte lbl_8029064C .4byte lbl_802907F0 .4byte lbl_802906D8 .global AcceptScriptMsg_jumptable AcceptScriptMsg_jumptable: # ROM: 0x3E87BC .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Activate .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Deactivate .4byte AcceptScriptMsg_Decrement .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Increment .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Open .4byte AcceptScriptMsg_Reset .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_SetToMax .4byte AcceptScriptMsg_SetToZero .4byte AcceptScriptMsg_Start .4byte AcceptScriptMsg_Stop .4byte AcceptScriptMsg_StopAndReset .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_UNKM18 .4byte AcceptScriptMsg_Action .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Alert .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Touched .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Registered .4byte AcceptScriptMsg_Deleted .4byte AcceptScriptMsg_InitializedInArea .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Default .4byte AcceptScriptMsg_Damaged .4byte AcceptScriptMsg_InvulnDamage .global lbl_803EB868 lbl_803EB868: # ROM: 0x3E8868 .4byte 0 .4byte 0 .4byte __dt__12COmegaPirateFv .4byte Accept__12CElitePirateFR8IVisitor .4byte PreThink__10CPatternedFfR13CStateManager .4byte Think__12COmegaPirateFfR13CStateManager .4byte AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFUc .4byte PreRender__12COmegaPirateFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager .4byte Render__12COmegaPirateCFRC13CStateManager .4byte CanRenderUnsorted__10CPatternedCFRC13CStateManager .4byte CalculateRenderBounds__6CActorFv .4byte HealthInfo__3CAiFR13CStateManager .4byte GetDamageVulnerability__12CElitePirateCFv .4byte GetDamageVulnerability__12CElitePirateCFRC9CVector3fRC9CVector3fRC11CDamageInfo .4byte GetTouchBounds__10CPatternedCFv .4byte Touch__10CPatternedFR6CActorR13CStateManager .4byte GetOrbitPosition__12COmegaPirateCFRC13CStateManager .4byte GetAimPosition__12CElitePirateCFRC13CStateManagerf .4byte GetHomingPosition__6CActorCFRC13CStateManagerf .4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager .4byte GetCollisionResponseType__10CPatternedCFRC9CVector3fRC9CVector3fRC11CWeaponModei .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager .4byte DoUserAnimEvent__12COmegaPirateFR13CStateManagerRC13CInt32POINode14EUserEventType .4byte GetCollisionPrimitive__12CElitePirateCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager .4byte GetStepDownHeight__13CPhysicsActorCFv .4byte GetStepUpHeight__13CPhysicsActorCFv .4byte GetWeight__13CPhysicsActorCFv .4byte Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState .4byte KnockBack__12CElitePirateFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef .4byte GetDamageVulnerability__3CAiFv .4byte TakeDamage__12CElitePirateFRC9CVector3ff .4byte CanBeShot__3CAiFRC13CStateManageri .4byte IsListening__3CAiCFv .4byte Listen__3CAiFRC9CVector3f16EListenNoiseType .4byte GetOrigin__3CAiCFv .4byte Patrol__12CElitePirateFR13CStateManager9EStateMsgf .4byte FollowPattern__10CPatternedFR13CStateManager9EStateMsgf .4byte Dead__10CPatternedFR13CStateManager9EStateMsgf .4byte PathFind__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Start__10CPatternedFR13CStateManager9EStateMsgf .4byte SelectTarget__3CAiFR13CStateManager9EStateMsgf .4byte TargetPatrol__12COmegaPirateFR13CStateManager9EStateMsgf .4byte TargetPlayer__10CPatternedFR13CStateManager9EStateMsgf .4byte TargetCover__3CAiFR13CStateManager9EStateMsgf .4byte Halt__12CElitePirateFR13CStateManager9EStateMsgf .4byte Walk__3CAiFR13CStateManager9EStateMsgf .4byte Run__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Generate__12CElitePirateFR13CStateManager9EStateMsgf .4byte Deactivate__3CAiFR13CStateManager9EStateMsgf .4byte Attack__12COmegaPirateFR13CStateManager9EStateMsgf .4byte LoopedAttack__3CAiFR13CStateManager9EStateMsgf .4byte JumpBack__12COmegaPirateFR13CStateManager9EStateMsgf .4byte DoubleSnap__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Shuffle__12COmegaPirateFR13CStateManager9EStateMsgf .4byte TurnAround__3CAiFR13CStateManager9EStateMsgf .4byte Skid__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Active__3CAiFR13CStateManager9EStateMsgf .4byte InActive__3CAiFR13CStateManager9EStateMsgf .4byte CoverAttack__3CAiFR13CStateManager9EStateMsgf .4byte Crouch__3CAiFR13CStateManager9EStateMsgf .4byte FadeIn__3CAiFR13CStateManager9EStateMsgf .4byte FadeOut__3CAiFR13CStateManager9EStateMsgf .4byte GetUp__3CAiFR13CStateManager9EStateMsgf .4byte Taunt__12CElitePirateFR13CStateManager9EStateMsgf .4byte Suck__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Flee__3CAiFR13CStateManager9EStateMsgf .4byte Lurk__3CAiFR13CStateManager9EStateMsgf .4byte ProjectileAttack__12CElitePirateFR13CStateManager9EStateMsgf .4byte Flinch__3CAiFR13CStateManager9EStateMsgf .4byte Hurled__3CAiFR13CStateManager9EStateMsgf .4byte TelegraphAttack__3CAiFR13CStateManager9EStateMsgf .4byte Jump__3CAiFR13CStateManager9EStateMsgf .4byte Explode__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Dodge__3CAiFR13CStateManager9EStateMsgf .4byte Retreat__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Cover__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Approach__3CAiFR13CStateManager9EStateMsgf .4byte WallHang__12COmegaPirateFR13CStateManager9EStateMsgf .4byte WallDetach__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Enraged__12COmegaPirateFR13CStateManager9EStateMsgf .4byte SpecialAttack__12CElitePirateFR13CStateManager9EStateMsgf .4byte Growth__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Faint__12COmegaPirateFR13CStateManager9EStateMsgf .4byte Land__3CAiFR13CStateManager9EStateMsgf .4byte Bounce__3CAiFR13CStateManager9EStateMsgf .4byte PathFindEx__3CAiFR13CStateManager9EStateMsgf .4byte Dizzy__12COmegaPirateFR13CStateManager9EStateMsgf .4byte CallForBackup__12CElitePirateFR13CStateManager9EStateMsgf .4byte BulbAttack__3CAiFR13CStateManager9EStateMsgf .4byte PodAttack__3CAiFR13CStateManager9EStateMsgf .4byte InAttackPosition__3CAiFR13CStateManagerf .4byte Leash__10CPatternedFR13CStateManagerf .4byte OffLine__10CPatternedFR13CStateManagerf .4byte Attacked__10CPatternedFR13CStateManagerf .4byte PathShagged__10CPatternedFR13CStateManagerf .4byte PathOver__10CPatternedFR13CStateManagerf .4byte PathFound__10CPatternedFR13CStateManagerf .4byte TooClose__12CElitePirateFR13CStateManagerf .4byte InRange__10CPatternedFR13CStateManagerf .4byte InMaxRange__10CPatternedFR13CStateManagerf .4byte InDetectionRange__12CElitePirateFR13CStateManagerf .4byte SpotPlayer__12CElitePirateFR13CStateManagerf .4byte PlayerSpot__10CPatternedFR13CStateManagerf .4byte PatternOver__10CPatternedFR13CStateManagerf .4byte PatternShagged__10CPatternedFR13CStateManagerf .4byte HasAttackPattern__10CPatternedFR13CStateManagerf .4byte HasPatrolPath__10CPatternedFR13CStateManagerf .4byte HasRetreatPattern__10CPatternedFR13CStateManagerf .4byte Delay__10CPatternedFR13CStateManagerf .4byte RandomDelay__10CPatternedFR13CStateManagerf .4byte FixedDelay__10CPatternedFR13CStateManagerf .4byte Default__10CPatternedFR13CStateManagerf .4byte sub_8022bcc0 .4byte ShouldAttack__12CElitePirateFR13CStateManagerf .4byte ShouldDoubleSnap__3CAiFR13CStateManagerf .4byte InPosition__12CElitePirateFR13CStateManagerf .4byte ShouldTurn__12CElitePirateFR13CStateManagerf .4byte HitSomething__3CAiFR13CStateManagerf .4byte ShouldJumpBack__3CAiFR13CStateManagerf .4byte Stuck__10CPatternedFR13CStateManagerf .4byte NoPathNodes__10CPatternedFR13CStateManagerf .4byte Landed__12COmegaPirateFR13CStateManagerf .4byte HearShot__3CAiFR13CStateManagerf .4byte HearPlayer__12COmegaPirateFR13CStateManagerf .4byte CoverCheck__3CAiFR13CStateManagerf .4byte CoverFind__3CAiFR13CStateManagerf .4byte CoverBlown__12COmegaPirateFR13CStateManagerf .4byte CoverNearlyBlown__3CAiFR13CStateManagerf .4byte CoveringFire__3CAiFR13CStateManagerf .4byte GotUp__3CAiFR13CStateManagerf .4byte LineOfSight__3CAiFR13CStateManagerf .4byte AggressionCheck__12COmegaPirateFR13CStateManagerf .4byte AttackOver__3CAiFR13CStateManagerf .4byte ShouldTaunt__12CElitePirateFR13CStateManagerf .4byte Inside__3CAiFR13CStateManagerf .4byte ShouldFire__12COmegaPirateFR13CStateManagerf .4byte ShouldFlinch__3CAiFR13CStateManagerf .4byte PatrolPathOver__10CPatternedFR13CStateManagerf .4byte ShouldDodge__3CAiFR13CStateManagerf .4byte ShouldRetreat__3CAiFR13CStateManagerf .4byte ShouldCrouch__3CAiFR13CStateManagerf .4byte ShouldMove__12COmegaPirateFR13CStateManagerf .4byte ShotAt__12COmegaPirateFR13CStateManagerf .4byte HasTargetingPoint__3CAiFR13CStateManagerf .4byte ShouldWallHang__3CAiFR13CStateManagerf .4byte SetAIStage__3CAiFR13CStateManagerf .4byte AIStage__3CAiFR13CStateManagerf .4byte StartAttack__3CAiFR13CStateManagerf .4byte BreakAttack__3CAiFR13CStateManagerf .4byte ShouldStrafe__3CAiFR13CStateManagerf .4byte ShouldSpecialAttack__12CElitePirateFR13CStateManagerf .4byte LostInterest__3CAiFR13CStateManagerf .4byte CodeTrigger__12COmegaPirateFR13CStateManagerf .4byte BounceFind__3CAiFR13CStateManagerf .4byte Random__10CPatternedFR13CStateManagerf .4byte FixedRandom__10CPatternedFR13CStateManagerf .4byte IsDizzy__3CAiFR13CStateManagerf .4byte ShouldCallForBackup__12COmegaPirateFR13CStateManagerf .4byte Freeze__10CPatternedFRC9CVector3f13CUnitVector3ff .4byte KnockbackWhenFrozen__10CPatternedCFv .4byte MassiveDeath__10CPatternedFR13CStateManager .4byte MassiveFrozenDeath__10CPatternedFR13CStateManager .4byte Burn__10CPatternedFff .4byte Shock__10CPatternedFff .4byte ThinkAboutMove__10CPatternedFf .4byte GetSearchPath__12CElitePirateFv .4byte GetContactDamage__10CPatternedCFv .4byte GetModelAlphau8__10CPatternedCFRC13CStateManager .4byte IsOnGround__10CPatternedCFv .4byte GetGravityConstant__10CPatternedCFv .4byte GetProjectileInfo__10CPatternedFv .4byte PhazeOut__10CPatternedFR13CStateManager .4byte GetDeathExplosionParticle__10CPatternedCFv .4byte sub_802921bc .4byte sub_8028b510 .4byte sub_80290434 .4byte sub_8028fa64 .4byte sub_8028c304 .section .sdata .balign 8 .global lbl_805A8538 lbl_805A8538: # ROM: 0x3F5ED8 .4byte 0x00000013 .global lbl_805A853C lbl_805A853C: # ROM: 0x3F5EDC .4byte 0 .global lbl_805A8540 lbl_805A8540: # ROM: 0x3F5EE0 .4byte 0x00000021 .global lbl_805A8544 lbl_805A8544: # ROM: 0x3F5EE4 .4byte 0x0000002F .global lbl_805A8548 lbl_805A8548: # ROM: 0x3F5EE8 .4byte 0x00000031 .global lbl_805A854C lbl_805A854C: # ROM: 0x3F5EEC .4byte 0x00000020 .global lbl_805A8550 lbl_805A8550: # ROM: 0x3F5EF0 .4byte 0x00000021 .global lbl_805A8554 lbl_805A8554: # ROM: 0x3F5EF4 .4byte 0x0000002F .global lbl_805A8558 lbl_805A8558: # ROM: 0x3F5EF8 .4byte 0x00000013 .global lbl_805A855C lbl_805A855C: # ROM: 0x3F5EFC .4byte 0x00000013 .global lbl_805A8560 lbl_805A8560: # ROM: 0x3F5F00 .float 1.0 .global lbl_805A8564 lbl_805A8564: # ROM: 0x3F5F04 .float 1.0 .global lbl_805A8568 lbl_805A8568: # ROM: 0x3F5F08 .float 1.0 .global lbl_805A856C lbl_805A856C: # ROM: 0x3F5F0C .float 1.0 .global lbl_805A8570 lbl_805A8570: # ROM: 0x3F5F10 .float 1.0 .global lbl_805A8574 lbl_805A8574: # ROM: 0x3F5F14 .float 1.0 .global lbl_805A8578 lbl_805A8578: # ROM: 0x3F5F18 .byte 0x00 .global lbl_805A8579 lbl_805A8579: # ROM: 0x3F5F19 .balign 4 .global lbl_805A857C lbl_805A857C: # ROM: 0x3F5F1C .float 1.0 .section .text, "ax" .global __dt__Q212COmegaPirate6CFlashFv __dt__Q212COmegaPirate6CFlashFv: /* 8028B490 002883F0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028B494 002883F4 7C 08 02 A6 */ mflr r0 /* 8028B498 002883F8 90 01 00 14 */ stw r0, 0x14(r1) /* 8028B49C 002883FC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8028B4A0 00288400 7C 9F 23 78 */ mr r31, r4 /* 8028B4A4 00288404 93 C1 00 08 */ stw r30, 8(r1) /* 8028B4A8 00288408 7C 7E 1B 79 */ or. r30, r3, r3 /* 8028B4AC 0028840C 41 82 00 48 */ beq lbl_8028B4F4 /* 8028B4B0 00288410 3C 60 80 3F */ lis r3, lbl_803EB6C8@ha /* 8028B4B4 00288414 34 1E 00 E8 */ addic. r0, r30, 0xe8 /* 8028B4B8 00288418 38 03 B6 C8 */ addi r0, r3, lbl_803EB6C8@l /* 8028B4BC 0028841C 90 1E 00 00 */ stw r0, 0(r30) /* 8028B4C0 00288420 41 82 00 18 */ beq lbl_8028B4D8 /* 8028B4C4 00288424 34 1E 00 E8 */ addic. r0, r30, 0xe8 /* 8028B4C8 00288428 41 82 00 10 */ beq lbl_8028B4D8 /* 8028B4CC 0028842C 38 7E 00 E8 */ addi r3, r30, 0xe8 /* 8028B4D0 00288430 38 80 00 00 */ li r4, 0 /* 8028B4D4 00288434 48 0B 59 6D */ bl __dt__6CTokenFv lbl_8028B4D8: /* 8028B4D8 00288438 7F C3 F3 78 */ mr r3, r30 /* 8028B4DC 0028843C 38 80 00 00 */ li r4, 0 /* 8028B4E0 00288440 4B DC A2 11 */ bl __dt__6CActorFv /* 8028B4E4 00288444 7F E0 07 35 */ extsh. r0, r31 /* 8028B4E8 00288448 40 81 00 0C */ ble lbl_8028B4F4 /* 8028B4EC 0028844C 7F C3 F3 78 */ mr r3, r30 /* 8028B4F0 00288450 48 08 A4 41 */ bl Free__7CMemoryFPCv lbl_8028B4F4: /* 8028B4F4 00288454 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028B4F8 00288458 7F C3 F3 78 */ mr r3, r30 /* 8028B4FC 0028845C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8028B500 00288460 83 C1 00 08 */ lwz r30, 8(r1) /* 8028B504 00288464 7C 08 03 A6 */ mtlr r0 /* 8028B508 00288468 38 21 00 10 */ addi r1, r1, 0x10 /* 8028B50C 0028846C 4E 80 00 20 */ blr .global sub_8028b510 sub_8028b510: /* 8028B510 00288470 38 60 00 00 */ li r3, 0 /* 8028B514 00288474 4E 80 00 20 */ blr .global sub_8028b518 sub_8028b518: /* 8028B518 00288478 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8028B51C 0028847C 7C 08 02 A6 */ mflr r0 /* 8028B520 00288480 90 01 00 54 */ stw r0, 0x54(r1) /* 8028B524 00288484 BF 41 00 38 */ stmw r26, 0x38(r1) /* 8028B528 00288488 7C 7E 1B 78 */ mr r30, r3 /* 8028B52C 0028848C 7C 9F 23 78 */ mr r31, r4 /* 8028B530 00288490 4B DC 9D 15 */ bl RemoveEmitter__6CActorFv /* 8028B534 00288494 38 7E 00 34 */ addi r3, r30, 0x34 /* 8028B538 00288498 38 9E 0A 4C */ addi r4, r30, 0xa4c /* 8028B53C 0028849C 48 08 76 05 */ bl __as__12CTransform4fFRC12CTransform4f /* 8028B540 002884A0 88 7E 00 E4 */ lbz r3, 0xe4(r30) /* 8028B544 002884A4 39 00 00 01 */ li r8, 1 /* 8028B548 002884A8 51 03 26 F6 */ rlwimi r3, r8, 4, 0x1b, 0x1b /* 8028B54C 002884AC 38 00 00 00 */ li r0, 0 /* 8028B550 002884B0 98 7E 00 E4 */ stb r3, 0xe4(r30) /* 8028B554 002884B4 7F C3 F3 78 */ mr r3, r30 /* 8028B558 002884B8 7F E5 FB 78 */ mr r5, r31 /* 8028B55C 002884BC 38 80 00 14 */ li r4, 0x14 /* 8028B560 002884C0 88 FE 00 E4 */ lbz r7, 0xe4(r30) /* 8028B564 002884C4 51 07 1F 38 */ rlwimi r7, r8, 3, 0x1c, 0x1c /* 8028B568 002884C8 38 C0 FF FF */ li r6, -1 /* 8028B56C 002884CC 98 FE 00 E4 */ stb r7, 0xe4(r30) /* 8028B570 002884D0 88 FE 00 E4 */ lbz r7, 0xe4(r30) /* 8028B574 002884D4 51 07 17 7A */ rlwimi r7, r8, 2, 0x1d, 0x1d /* 8028B578 002884D8 98 FE 00 E4 */ stb r7, 0xe4(r30) /* 8028B57C 002884DC 99 1E 09 A1 */ stb r8, 0x9a1(r30) /* 8028B580 002884E0 98 1E 0A 4A */ stb r0, 0xa4a(r30) /* 8028B584 002884E4 4B DC 5B 3D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028B588 002884E8 7F C3 F3 78 */ mr r3, r30 /* 8028B58C 002884EC 7F E5 FB 78 */ mr r5, r31 /* 8028B590 002884F0 38 80 00 0E */ li r4, 0xe /* 8028B594 002884F4 38 C0 FF FF */ li r6, -1 /* 8028B598 002884F8 4B DC 5B 29 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028B59C 002884FC 7F C3 F3 78 */ mr r3, r30 /* 8028B5A0 00288500 7F E5 FB 78 */ mr r5, r31 /* 8028B5A4 00288504 38 80 00 06 */ li r4, 6 /* 8028B5A8 00288508 38 C0 FF FF */ li r6, -1 /* 8028B5AC 0028850C 4B DC 5B 15 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028B5B0 00288510 83 9E 09 E0 */ lwz r28, 0x9e0(r30) /* 8028B5B4 00288514 3B 60 00 00 */ li r27, 0 /* 8028B5B8 00288518 3B A0 00 00 */ li r29, 0 /* 8028B5BC 0028851C 48 00 00 7C */ b lbl_8028B638 lbl_8028B5C0: /* 8028B5C0 00288520 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 8028B5C4 00288524 7F E3 FB 78 */ mr r3, r31 /* 8028B5C8 00288528 38 81 00 1C */ addi r4, r1, 0x1c /* 8028B5CC 0028852C 7C 05 EA 2E */ lhzx r0, r5, r29 /* 8028B5D0 00288530 B0 01 00 1C */ sth r0, 0x1c(r1) /* 8028B5D4 00288534 4B DC 0F A1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028B5D8 00288538 7C 7A 1B 79 */ or. r26, r3, r3 /* 8028B5DC 0028853C 41 82 00 54 */ beq lbl_8028B630 /* 8028B5E0 00288540 81 83 00 00 */ lwz r12, 0(r3) /* 8028B5E4 00288544 38 80 00 00 */ li r4, 0 /* 8028B5E8 00288548 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028B5EC 0028854C 7D 89 03 A6 */ mtctr r12 /* 8028B5F0 00288550 4E 80 04 21 */ bctrl /* 8028B5F4 00288554 7F 43 D3 78 */ mr r3, r26 /* 8028B5F8 00288558 7F E6 FB 78 */ mr r6, r31 /* 8028B5FC 0028855C 38 80 00 29 */ li r4, 0x29 /* 8028B600 00288560 38 A0 00 28 */ li r5, 0x28 /* 8028B604 00288564 4B DC 88 D1 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager /* 8028B608 00288568 88 1A 00 E7 */ lbz r0, 0xe7(r26) /* 8028B60C 0028856C 38 60 00 00 */ li r3, 0 /* 8028B610 00288570 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 8028B614 00288574 7F E3 FB 78 */ mr r3, r31 /* 8028B618 00288578 98 1A 00 E7 */ stb r0, 0xe7(r26) /* 8028B61C 0028857C 38 81 00 18 */ addi r4, r1, 0x18 /* 8028B620 00288580 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 8028B624 00288584 7C 05 EA 2E */ lhzx r0, r5, r29 /* 8028B628 00288588 B0 01 00 18 */ sth r0, 0x18(r1) /* 8028B62C 0028858C 4B DC 0C 41 */ bl FreeScriptObject__13CStateManagerF9TUniqueId lbl_8028B630: /* 8028B630 00288590 3B 7B 00 01 */ addi r27, r27, 1 /* 8028B634 00288594 3B BD 00 14 */ addi r29, r29, 0x14 lbl_8028B638: /* 8028B638 00288598 7C 1B E0 40 */ cmplw r27, r28 /* 8028B63C 0028859C 41 80 FF 84 */ blt lbl_8028B5C0 /* 8028B640 002885A0 80 1E 09 E0 */ lwz r0, 0x9e0(r30) /* 8028B644 002885A4 83 9E 09 E8 */ lwz r28, 0x9e8(r30) /* 8028B648 002885A8 1C 00 00 14 */ mulli r0, r0, 0x14 /* 8028B64C 002885AC 93 81 00 24 */ stw r28, 0x24(r1) /* 8028B650 002885B0 7F BC 02 14 */ add r29, r28, r0 /* 8028B654 002885B4 93 81 00 20 */ stw r28, 0x20(r1) /* 8028B658 002885B8 93 A1 00 2C */ stw r29, 0x2c(r1) /* 8028B65C 002885BC 93 A1 00 28 */ stw r29, 0x28(r1) /* 8028B660 002885C0 48 00 00 20 */ b lbl_8028B680 lbl_8028B664: /* 8028B664 002885C4 28 1C 00 00 */ cmplwi r28, 0 /* 8028B668 002885C8 41 82 00 14 */ beq lbl_8028B67C /* 8028B66C 002885CC 34 1C 00 04 */ addic. r0, r28, 4 /* 8028B670 002885D0 41 82 00 0C */ beq lbl_8028B67C /* 8028B674 002885D4 38 7C 00 04 */ addi r3, r28, 4 /* 8028B678 002885D8 48 0B 24 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8028B67C: /* 8028B67C 002885DC 3B 9C 00 14 */ addi r28, r28, 0x14 lbl_8028B680: /* 8028B680 002885E0 7C 1C E8 40 */ cmplw r28, r29 /* 8028B684 002885E4 40 82 FF E0 */ bne lbl_8028B664 /* 8028B688 002885E8 38 00 00 00 */ li r0, 0 /* 8028B68C 002885EC 7F E3 FB 78 */ mr r3, r31 /* 8028B690 002885F0 90 1E 09 E0 */ stw r0, 0x9e0(r30) /* 8028B694 002885F4 38 81 00 14 */ addi r4, r1, 0x14 /* 8028B698 002885F8 A0 1E 07 72 */ lhz r0, 0x772(r30) /* 8028B69C 002885FC B0 01 00 10 */ sth r0, 0x10(r1) /* 8028B6A0 00288600 B0 01 00 14 */ sth r0, 0x14(r1) /* 8028B6A4 00288604 4B DC 0E D1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028B6A8 00288608 A0 1E 09 90 */ lhz r0, 0x990(r30) /* 8028B6AC 0028860C 7C 7A 1B 78 */ mr r26, r3 /* 8028B6B0 00288610 7F E3 FB 78 */ mr r3, r31 /* 8028B6B4 00288614 38 81 00 0C */ addi r4, r1, 0xc /* 8028B6B8 00288618 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028B6BC 0028861C 4B DC 0E B9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028B6C0 00288620 28 1A 00 00 */ cmplwi r26, 0 /* 8028B6C4 00288624 7C 7B 1B 78 */ mr r27, r3 /* 8028B6C8 00288628 41 82 00 1C */ beq lbl_8028B6E4 /* 8028B6CC 0028862C 7F 43 D3 78 */ mr r3, r26 /* 8028B6D0 00288630 38 80 00 00 */ li r4, 0 /* 8028B6D4 00288634 81 9A 00 00 */ lwz r12, 0(r26) /* 8028B6D8 00288638 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028B6DC 0028863C 7D 89 03 A6 */ mtctr r12 /* 8028B6E0 00288640 4E 80 04 21 */ bctrl lbl_8028B6E4: /* 8028B6E4 00288644 28 1B 00 00 */ cmplwi r27, 0 /* 8028B6E8 00288648 41 82 00 1C */ beq lbl_8028B704 /* 8028B6EC 0028864C 7F 63 DB 78 */ mr r3, r27 /* 8028B6F0 00288650 38 80 00 00 */ li r4, 0 /* 8028B6F4 00288654 81 9B 00 00 */ lwz r12, 0(r27) /* 8028B6F8 00288658 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028B6FC 0028865C 7D 89 03 A6 */ mtctr r12 /* 8028B700 00288660 4E 80 04 21 */ bctrl lbl_8028B704: /* 8028B704 00288664 7F C3 F3 78 */ mr r3, r30 /* 8028B708 00288668 38 80 00 00 */ li r4, 0 /* 8028B70C 0028866C 81 9E 00 00 */ lwz r12, 0(r30) /* 8028B710 00288670 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028B714 00288674 7D 89 03 A6 */ mtctr r12 /* 8028B718 00288678 4E 80 04 21 */ bctrl /* 8028B71C 0028867C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8028B720 00288680 7F E3 FB 78 */ mr r3, r31 /* 8028B724 00288684 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028B728 00288688 38 81 00 08 */ addi r4, r1, 8 /* 8028B72C 0028868C B0 01 00 08 */ sth r0, 8(r1) /* 8028B730 00288690 38 A0 00 59 */ li r5, 0x59 /* 8028B734 00288694 4B DB 88 11 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi /* 8028B738 00288698 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028B73C 0028869C 7F E4 FB 78 */ mr r4, r31 /* 8028B740 002886A0 38 A0 00 00 */ li r5, 0 /* 8028B744 002886A4 4B F1 BB B5 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028B748 002886A8 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028B74C 002886AC 7F E4 FB 78 */ mr r4, r31 /* 8028B750 002886B0 38 A0 00 00 */ li r5, 0 /* 8028B754 002886B4 4B F1 BB A5 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028B758 002886B8 BB 41 00 38 */ lmw r26, 0x38(r1) /* 8028B75C 002886BC 80 01 00 54 */ lwz r0, 0x54(r1) /* 8028B760 002886C0 7C 08 03 A6 */ mtlr r0 /* 8028B764 002886C4 38 21 00 50 */ addi r1, r1, 0x50 /* 8028B768 002886C8 4E 80 00 20 */ blr .global Accept__Q212COmegaPirate6CFlashFR8IVisitor Accept__Q212COmegaPirate6CFlashFR8IVisitor: /* 8028B76C 002886CC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028B770 002886D0 7C 08 02 A6 */ mflr r0 /* 8028B774 002886D4 90 01 00 14 */ stw r0, 0x14(r1) /* 8028B778 002886D8 7C 60 1B 78 */ mr r0, r3 /* 8028B77C 002886DC 7C 83 23 78 */ mr r3, r4 /* 8028B780 002886E0 81 84 00 00 */ lwz r12, 0(r4) /* 8028B784 002886E4 7C 04 03 78 */ mr r4, r0 /* 8028B788 002886E8 81 8C 00 08 */ lwz r12, 8(r12) /* 8028B78C 002886EC 7D 89 03 A6 */ mtctr r12 /* 8028B790 002886F0 4E 80 04 21 */ bctrl /* 8028B794 002886F4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028B798 002886F8 7C 08 03 A6 */ mtlr r0 /* 8028B79C 002886FC 38 21 00 10 */ addi r1, r1, 0x10 /* 8028B7A0 00288700 4E 80 00 20 */ blr .global Think__Q212COmegaPirate6CFlashFfR13CStateManager Think__Q212COmegaPirate6CFlashFfR13CStateManager: /* 8028B7A4 00288704 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8028B7A8 00288708 7C 08 02 A6 */ mflr r0 /* 8028B7AC 0028870C 90 01 00 74 */ stw r0, 0x74(r1) /* 8028B7B0 00288710 DB E1 00 60 */ stfd f31, 0x60(r1) /* 8028B7B4 00288714 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 8028B7B8 00288718 DB C1 00 50 */ stfd f30, 0x50(r1) /* 8028B7BC 0028871C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8028B7C0 00288720 DB A1 00 40 */ stfd f29, 0x40(r1) /* 8028B7C4 00288724 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 8028B7C8 00288728 DB 81 00 30 */ stfd f28, 0x30(r1) /* 8028B7CC 0028872C F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 8028B7D0 00288730 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8028B7D4 00288734 93 C1 00 28 */ stw r30, 0x28(r1) /* 8028B7D8 00288738 FF 80 08 90 */ fmr f28, f1 /* 8028B7DC 0028873C 7C 7E 1B 78 */ mr r30, r3 /* 8028B7E0 00288740 7C 9F 23 78 */ mr r31, r4 /* 8028B7E4 00288744 4B DC 58 D5 */ bl Think__7CEntityFfR13CStateManager /* 8028B7E8 00288748 C0 3E 00 F4 */ lfs f1, 0xf4(r30) /* 8028B7EC 0028874C C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028B7F0 00288750 EC 21 E0 28 */ fsubs f1, f1, f28 /* 8028B7F4 00288754 D0 3E 00 F4 */ stfs f1, 0xf4(r30) /* 8028B7F8 00288758 C0 3E 00 F4 */ lfs f1, 0xf4(r30) /* 8028B7FC 0028875C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028B800 00288760 41 81 00 EC */ bgt lbl_8028B8EC /* 8028B804 00288764 C0 3E 00 F8 */ lfs f1, 0xf8(r30) /* 8028B808 00288768 C0 02 BE A4 */ lfs f0, lbl_805ADBC4@sda21(r2) /* 8028B80C 0028876C EC 21 E0 2A */ fadds f1, f1, f28 /* 8028B810 00288770 D0 3E 00 F8 */ stfs f1, 0xf8(r30) /* 8028B814 00288774 C3 FE 00 F8 */ lfs f31, 0xf8(r30) /* 8028B818 00288778 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8028B81C 0028877C 40 81 00 1C */ ble lbl_8028B838 /* 8028B820 00288780 EC 3F 00 28 */ fsubs f1, f31, f0 /* 8028B824 00288784 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028B828 00288788 C0 42 BE A0 */ lfs f2, lbl_805ADBC0@sda21(r2) /* 8028B82C 0028878C EC 01 00 24 */ fdivs f0, f1, f0 /* 8028B830 00288790 EF E2 00 28 */ fsubs f31, f2, f0 /* 8028B834 00288794 48 00 00 08 */ b lbl_8028B83C lbl_8028B838: /* 8028B838 00288798 EF FF 00 24 */ fdivs f31, f31, f0 lbl_8028B83C: /* 8028B83C 0028879C 80 7F 08 70 */ lwz r3, 0x870(r31) /* 8028B840 002887A0 7F E4 FB 78 */ mr r4, r31 /* 8028B844 002887A4 4B D8 02 D5 */ bl GetCurrentCamera__14CCameraManagerCFRC13CStateManager /* 8028B848 002887A8 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 8028B84C 002887AC 38 81 00 1C */ addi r4, r1, 0x1c /* 8028B850 002887B0 C0 03 00 50 */ lfs f0, 0x50(r3) /* 8028B854 002887B4 C0 7E 00 60 */ lfs f3, 0x60(r30) /* 8028B858 002887B8 C0 43 00 60 */ lfs f2, 0x60(r3) /* 8028B85C 002887BC EC 81 00 28 */ fsubs f4, f1, f0 /* 8028B860 002887C0 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 8028B864 002887C4 C0 03 00 40 */ lfs f0, 0x40(r3) /* 8028B868 002887C8 EC 43 10 28 */ fsubs f2, f3, f2 /* 8028B86C 002887CC EC 01 00 28 */ fsubs f0, f1, f0 /* 8028B870 002887D0 D0 81 00 20 */ stfs f4, 0x20(r1) /* 8028B874 002887D4 D0 41 00 24 */ stfs f2, 0x24(r1) /* 8028B878 002887D8 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8028B87C 002887DC C3 83 00 58 */ lfs f28, 0x58(r3) /* 8028B880 002887E0 C3 A3 00 48 */ lfs f29, 0x48(r3) /* 8028B884 002887E4 C3 C3 00 38 */ lfs f30, 0x38(r3) /* 8028B888 002887E8 38 61 00 10 */ addi r3, r1, 0x10 /* 8028B88C 002887EC 48 08 8F C5 */ bl AsNormalized__9CVector3fCFv /* 8028B890 002887F0 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8028B894 002887F4 C0 41 00 10 */ lfs f2, 0x10(r1) /* 8028B898 002887F8 EC 20 07 72 */ fmuls f1, f0, f29 /* 8028B89C 002887FC C0 61 00 18 */ lfs f3, 0x18(r1) /* 8028B8A0 00288800 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028B8A4 00288804 EC 22 0F BA */ fmadds f1, f2, f30, f1 /* 8028B8A8 00288808 EC 23 0F 3A */ fmadds f1, f3, f28, f1 /* 8028B8AC 0028880C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028B8B0 00288810 40 80 00 08 */ bge lbl_8028B8B8 /* 8028B8B4 00288814 48 00 00 08 */ b lbl_8028B8BC lbl_8028B8B8: /* 8028B8B8 00288818 EC 01 00 72 */ fmuls f0, f1, f1 lbl_8028B8BC: /* 8028B8BC 0028881C EC 20 07 F2 */ fmuls f1, f0, f31 /* 8028B8C0 00288820 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028B8C4 00288824 D0 3E 00 FC */ stfs f1, 0xfc(r30) /* 8028B8C8 00288828 C0 3E 00 F8 */ lfs f1, 0xf8(r30) /* 8028B8CC 0028882C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028B8D0 00288830 40 81 00 1C */ ble lbl_8028B8EC /* 8028B8D4 00288834 A0 1E 00 08 */ lhz r0, 8(r30) /* 8028B8D8 00288838 7F E3 FB 78 */ mr r3, r31 /* 8028B8DC 0028883C 38 81 00 0C */ addi r4, r1, 0xc /* 8028B8E0 00288840 B0 01 00 08 */ sth r0, 8(r1) /* 8028B8E4 00288844 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028B8E8 00288848 4B DC 09 85 */ bl FreeScriptObject__13CStateManagerF9TUniqueId lbl_8028B8EC: /* 8028B8EC 0028884C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8028B8F0 00288850 CB E1 00 60 */ lfd f31, 0x60(r1) /* 8028B8F4 00288854 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8028B8F8 00288858 CB C1 00 50 */ lfd f30, 0x50(r1) /* 8028B8FC 0028885C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8028B900 00288860 CB A1 00 40 */ lfd f29, 0x40(r1) /* 8028B904 00288864 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 8028B908 00288868 CB 81 00 30 */ lfd f28, 0x30(r1) /* 8028B90C 0028886C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8028B910 00288870 80 01 00 74 */ lwz r0, 0x74(r1) /* 8028B914 00288874 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8028B918 00288878 7C 08 03 A6 */ mtlr r0 /* 8028B91C 0028887C 38 21 00 70 */ addi r1, r1, 0x70 /* 8028B920 00288880 4E 80 00 20 */ blr .global PreRender__Q212COmegaPirate6CFlashFR13CStateManagerRC14CFrustumPlanes PreRender__Q212COmegaPirate6CFlashFR13CStateManagerRC14CFrustumPlanes: /* 8028B924 00288884 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028B928 00288888 7C 08 02 A6 */ mflr r0 /* 8028B92C 0028888C 90 01 00 24 */ stw r0, 0x24(r1) /* 8028B930 00288890 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028B934 00288894 7C 7F 1B 78 */ mr r31, r3 /* 8028B938 00288898 A0 03 00 08 */ lhz r0, 8(r3) /* 8028B93C 0028889C 7C 83 23 78 */ mr r3, r4 /* 8028B940 002888A0 38 81 00 08 */ addi r4, r1, 8 /* 8028B944 002888A4 B0 01 00 08 */ sth r0, 8(r1) /* 8028B948 002888A8 4B DB 8F 91 */ bl RenderLast__13CStateManagerFRC9TUniqueId /* 8028B94C 002888AC 80 1F 00 F0 */ lwz r0, 0xf0(r31) /* 8028B950 002888B0 28 00 00 00 */ cmplwi r0, 0 /* 8028B954 002888B4 40 82 00 30 */ bne lbl_8028B984 /* 8028B958 002888B8 88 1F 00 EC */ lbz r0, 0xec(r31) /* 8028B95C 002888BC 28 00 00 00 */ cmplwi r0, 0 /* 8028B960 002888C0 41 82 00 24 */ beq lbl_8028B984 /* 8028B964 002888C4 80 7F 00 E8 */ lwz r3, 0xe8(r31) /* 8028B968 002888C8 80 03 00 10 */ lwz r0, 0x10(r3) /* 8028B96C 002888CC 28 00 00 00 */ cmplwi r0, 0 /* 8028B970 002888D0 41 82 00 14 */ beq lbl_8028B984 /* 8028B974 002888D4 38 7F 00 E8 */ addi r3, r31, 0xe8 /* 8028B978 002888D8 48 0B 54 95 */ bl GetObj__6CTokenFv /* 8028B97C 002888DC 80 03 00 04 */ lwz r0, 4(r3) /* 8028B980 002888E0 90 1F 00 F0 */ stw r0, 0xf0(r31) lbl_8028B984: /* 8028B984 002888E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028B988 002888E8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028B98C 002888EC 7C 08 03 A6 */ mtlr r0 /* 8028B990 002888F0 38 21 00 20 */ addi r1, r1, 0x20 /* 8028B994 002888F4 4E 80 00 20 */ blr .global Render__Q212COmegaPirate6CFlashCFRC13CStateManager Render__Q212COmegaPirate6CFlashCFRC13CStateManager: /* 8028B998 002888F8 94 21 FE C0 */ stwu r1, -0x140(r1) /* 8028B99C 002888FC 7C 08 02 A6 */ mflr r0 /* 8028B9A0 00288900 90 01 01 44 */ stw r0, 0x144(r1) /* 8028B9A4 00288904 DB E1 01 30 */ stfd f31, 0x130(r1) /* 8028B9A8 00288908 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 /* 8028B9AC 0028890C DB C1 01 20 */ stfd f30, 0x120(r1) /* 8028B9B0 00288910 F3 C1 01 28 */ psq_st f30, 296(r1), 0, qr0 /* 8028B9B4 00288914 DB A1 01 10 */ stfd f29, 0x110(r1) /* 8028B9B8 00288918 F3 A1 01 18 */ psq_st f29, 280(r1), 0, qr0 /* 8028B9BC 0028891C DB 81 01 00 */ stfd f28, 0x100(r1) /* 8028B9C0 00288920 F3 81 01 08 */ psq_st f28, 264(r1), 0, qr0 /* 8028B9C4 00288924 DB 61 00 F0 */ stfd f27, 0xf0(r1) /* 8028B9C8 00288928 F3 61 00 F8 */ psq_st f27, 248(r1), 0, qr0 /* 8028B9CC 0028892C DB 41 00 E0 */ stfd f26, 0xe0(r1) /* 8028B9D0 00288930 F3 41 00 E8 */ psq_st f26, 232(r1), 0, qr0 /* 8028B9D4 00288934 DB 21 00 D0 */ stfd f25, 0xd0(r1) /* 8028B9D8 00288938 F3 21 00 D8 */ psq_st f25, 216(r1), 0, qr0 /* 8028B9DC 0028893C DB 01 00 C0 */ stfd f24, 0xc0(r1) /* 8028B9E0 00288940 F3 01 00 C8 */ psq_st f24, 200(r1), 0, qr0 /* 8028B9E4 00288944 DA E1 00 B0 */ stfd f23, 0xb0(r1) /* 8028B9E8 00288948 F2 E1 00 B8 */ psq_st f23, 184(r1), 0, qr0 /* 8028B9EC 0028894C DA C1 00 A0 */ stfd f22, 0xa0(r1) /* 8028B9F0 00288950 F2 C1 00 A8 */ psq_st f22, 168(r1), 0, qr0 /* 8028B9F4 00288954 DA A1 00 90 */ stfd f21, 0x90(r1) /* 8028B9F8 00288958 F2 A1 00 98 */ psq_st f21, 152(r1), 0, qr0 /* 8028B9FC 0028895C DA 81 00 80 */ stfd f20, 0x80(r1) /* 8028BA00 00288960 F2 81 00 88 */ psq_st f20, 136(r1), 0, qr0 /* 8028BA04 00288964 93 E1 00 7C */ stw r31, 0x7c(r1) /* 8028BA08 00288968 93 C1 00 78 */ stw r30, 0x78(r1) /* 8028BA0C 0028896C 7C 9F 23 78 */ mr r31, r4 /* 8028BA10 00288970 7C 7E 1B 78 */ mr r30, r3 /* 8028BA14 00288974 80 64 08 B8 */ lwz r3, 0x8b8(r4) /* 8028BA18 00288978 80 63 00 00 */ lwz r3, 0(r3) /* 8028BA1C 0028897C 4B E0 5B 3D */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028BA20 00288980 2C 03 00 03 */ cmpwi r3, 3 /* 8028BA24 00288984 41 82 02 64 */ beq lbl_8028BC88 /* 8028BA28 00288988 80 7E 00 F0 */ lwz r3, 0xf0(r30) /* 8028BA2C 0028898C 38 A0 00 00 */ li r5, 0 /* 8028BA30 00288990 28 03 00 00 */ cmplwi r3, 0 /* 8028BA34 00288994 40 82 00 14 */ bne lbl_8028BA48 /* 8028BA38 00288998 80 9E 00 E8 */ lwz r4, 0xe8(r30) /* 8028BA3C 0028899C 80 04 00 10 */ lwz r0, 0x10(r4) /* 8028BA40 002889A0 28 00 00 00 */ cmplwi r0, 0 /* 8028BA44 002889A4 41 82 00 08 */ beq lbl_8028BA4C lbl_8028BA48: /* 8028BA48 002889A8 38 A0 00 01 */ li r5, 1 lbl_8028BA4C: /* 8028BA4C 002889AC 54 A0 06 3F */ clrlwi. r0, r5, 0x18 /* 8028BA50 002889B0 41 82 02 38 */ beq lbl_8028BC88 /* 8028BA54 002889B4 28 03 00 00 */ cmplwi r3, 0 /* 8028BA58 002889B8 41 82 02 30 */ beq lbl_8028BC88 /* 8028BA5C 002889BC 38 80 00 00 */ li r4, 0 /* 8028BA60 002889C0 38 A0 00 01 */ li r5, 1 /* 8028BA64 002889C4 48 08 3C D9 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode /* 8028BA68 002889C8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8028BA6C 002889CC 7F E4 FB 78 */ mr r4, r31 /* 8028BA70 002889D0 C2 82 BE AC */ lfs f20, lbl_805ADBCC@sda21(r2) /* 8028BA74 002889D4 80 63 00 00 */ lwz r3, 0(r3) /* 8028BA78 002889D8 4B E0 5A E1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028BA7C 002889DC 2C 03 00 01 */ cmpwi r3, 1 /* 8028BA80 002889E0 40 82 00 20 */ bne lbl_8028BAA0 /* 8028BA84 002889E4 38 60 00 03 */ li r3, 3 /* 8028BA88 002889E8 38 80 00 01 */ li r4, 1 /* 8028BA8C 002889EC 38 A0 00 00 */ li r5, 0 /* 8028BA90 002889F0 38 C0 00 00 */ li r6, 0 /* 8028BA94 002889F4 48 07 CE 3D */ bl SetBlendMode__3CGXF12_GXBlendMode14_GXBlendFactor14_GXBlendFactor10_GXLogicOp /* 8028BA98 002889F8 C2 82 BE B0 */ lfs f20, lbl_805ADBD0@sda21(r2) /* 8028BA9C 002889FC 48 00 00 18 */ b lbl_8028BAB4 lbl_8028BAA0: /* 8028BAA0 00288A00 38 60 00 01 */ li r3, 1 /* 8028BAA4 00288A04 38 80 00 04 */ li r4, 4 /* 8028BAA8 00288A08 38 A0 00 01 */ li r5, 1 /* 8028BAAC 00288A0C 38 C0 00 00 */ li r6, 0 /* 8028BAB0 00288A10 48 07 FF A1 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp lbl_8028BAB4: /* 8028BAB4 00288A14 C0 1E 00 FC */ lfs f0, 0xfc(r30) /* 8028BAB8 00288A18 3C 60 80 5A */ lis r3, mViewMatrix__9CGraphics@ha /* 8028BABC 00288A1C 38 83 61 D4 */ addi r4, r3, mViewMatrix__9CGraphics@l /* 8028BAC0 00288A20 C2 FE 00 60 */ lfs f23, 0x60(r30) /* 8028BAC4 00288A24 EC 94 00 32 */ fmuls f4, f20, f0 /* 8028BAC8 00288A28 C0 24 00 00 */ lfs f1, 0(r4) /* 8028BACC 00288A2C C0 04 00 10 */ lfs f0, 0x10(r4) /* 8028BAD0 00288A30 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 8028BAD4 00288A34 C0 64 00 20 */ lfs f3, 0x20(r4) /* 8028BAD8 00288A38 38 63 66 70 */ addi r3, r3, sIdentity__12CTransform4f@l /* 8028BADC 00288A3C C0 44 00 08 */ lfs f2, 8(r4) /* 8028BAE0 00288A40 EF A4 00 72 */ fmuls f29, f4, f1 /* 8028BAE4 00288A44 C0 24 00 18 */ lfs f1, 0x18(r4) /* 8028BAE8 00288A48 EF C4 00 32 */ fmuls f30, f4, f0 /* 8028BAEC 00288A4C C0 04 00 28 */ lfs f0, 0x28(r4) /* 8028BAF0 00288A50 EF E4 00 F2 */ fmuls f31, f4, f3 /* 8028BAF4 00288A54 EF 44 00 B2 */ fmuls f26, f4, f2 /* 8028BAF8 00288A58 EF 64 00 72 */ fmuls f27, f4, f1 /* 8028BAFC 00288A5C D0 81 00 10 */ stfs f4, 0x10(r1) /* 8028BB00 00288A60 EF 84 00 32 */ fmuls f28, f4, f0 /* 8028BB04 00288A64 C3 1E 00 50 */ lfs f24, 0x50(r30) /* 8028BB08 00288A68 C3 3E 00 40 */ lfs f25, 0x40(r30) /* 8028BB0C 00288A6C 48 08 0A D5 */ bl SetModelMatrix__9CGraphicsFRC12CTransform4f /* 8028BB10 00288A70 48 0B E4 9D */ bl White__6CColorFv /* 8028BB14 00288A74 3C 80 80 5A */ lis r4, kEnvModulate__9CGraphics@ha /* 8028BB18 00288A78 83 E3 00 00 */ lwz r31, 0(r3) /* 8028BB1C 00288A7C 38 84 5E BC */ addi r4, r4, kEnvModulate__9CGraphics@l /* 8028BB20 00288A80 38 60 00 00 */ li r3, 0 /* 8028BB24 00288A84 48 07 E7 95 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass /* 8028BB28 00288A88 80 8D 9C 68 */ lwz r4, kEnvPassthru__9CGraphics@sda21(r13) /* 8028BB2C 00288A8C 38 60 00 01 */ li r3, 1 /* 8028BB30 00288A90 48 07 E7 89 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass /* 8028BB34 00288A94 38 60 00 00 */ li r3, 0 /* 8028BB38 00288A98 38 80 00 07 */ li r4, 7 /* 8028BB3C 00288A9C 38 A0 00 00 */ li r5, 0 /* 8028BB40 00288AA0 48 07 FF 55 */ bl SetDepthWriteMode__9CGraphicsFb8ERglEnumb /* 8028BB44 00288AA4 C0 21 00 10 */ lfs f1, 0x10(r1) /* 8028BB48 00288AA8 C0 0D 99 BC */ lfs f0, lbl_805A857C@sda21(r13) /* 8028BB4C 00288AAC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028BB50 00288AB0 40 80 00 0C */ bge lbl_8028BB5C /* 8028BB54 00288AB4 38 61 00 10 */ addi r3, r1, 0x10 /* 8028BB58 00288AB8 48 00 00 08 */ b lbl_8028BB60 lbl_8028BB5C: /* 8028BB5C 00288ABC 38 6D 99 BC */ addi r3, r13, lbl_805A857C@sda21 lbl_8028BB60: /* 8028BB60 00288AC0 C0 22 BE B4 */ lfs f1, lbl_805ADBD4@sda21(r2) /* 8028BB64 00288AC4 C0 03 00 00 */ lfs f0, 0(r3) /* 8028BB68 00288AC8 EE C1 00 32 */ fmuls f22, f1, f0 /* 8028BB6C 00288ACC F2 C1 A0 08 */ psq_st f22, 8(r1), 1, qr2 /* 8028BB70 00288AD0 38 61 00 0C */ addi r3, r1, 0xc /* 8028BB74 00288AD4 88 01 00 08 */ lbz r0, 8(r1) /* 8028BB78 00288AD8 53 E0 00 2E */ rlwimi r0, r31, 0, 0, 0x17 /* 8028BB7C 00288ADC 90 01 00 0C */ stw r0, 0xc(r1) /* 8028BB80 00288AE0 48 07 F9 C9 */ bl StreamColor__9CGraphicsFRC6CColor /* 8028BB84 00288AE4 38 60 00 A0 */ li r3, 0xa0 /* 8028BB88 00288AE8 48 07 FA E1 */ bl StreamBegin__9CGraphicsF13ERglPrimitive /* 8028BB8C 00288AEC C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028BB90 00288AF0 FC 40 08 90 */ fmr f2, f1 /* 8028BB94 00288AF4 48 07 F8 D1 */ bl StreamTexcoord__9CGraphicsFff /* 8028BB98 00288AF8 EE D9 E8 28 */ fsubs f22, f25, f29 /* 8028BB9C 00288AFC 38 61 00 68 */ addi r3, r1, 0x68 /* 8028BBA0 00288B00 EE B8 F0 28 */ fsubs f21, f24, f30 /* 8028BBA4 00288B04 EE 97 F8 28 */ fsubs f20, f23, f31 /* 8028BBA8 00288B08 EC 16 D0 2A */ fadds f0, f22, f26 /* 8028BBAC 00288B0C D2 C1 00 5C */ stfs f22, 0x5c(r1) /* 8028BBB0 00288B10 EC 55 D8 2A */ fadds f2, f21, f27 /* 8028BBB4 00288B14 EC 34 E0 2A */ fadds f1, f20, f28 /* 8028BBB8 00288B18 D2 A1 00 60 */ stfs f21, 0x60(r1) /* 8028BBBC 00288B1C D2 81 00 64 */ stfs f20, 0x64(r1) /* 8028BBC0 00288B20 D0 01 00 68 */ stfs f0, 0x68(r1) /* 8028BBC4 00288B24 D0 41 00 6C */ stfs f2, 0x6c(r1) /* 8028BBC8 00288B28 D0 21 00 70 */ stfs f1, 0x70(r1) /* 8028BBCC 00288B2C 48 07 F9 F5 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 8028BBD0 00288B30 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028BBD4 00288B34 C0 42 BE 9C */ lfs f2, lbl_805ADBBC@sda21(r2) /* 8028BBD8 00288B38 48 07 F8 8D */ bl StreamTexcoord__9CGraphicsFff /* 8028BBDC 00288B3C EC 55 D8 28 */ fsubs f2, f21, f27 /* 8028BBE0 00288B40 D2 C1 00 44 */ stfs f22, 0x44(r1) /* 8028BBE4 00288B44 EC 34 E0 28 */ fsubs f1, f20, f28 /* 8028BBE8 00288B48 38 61 00 50 */ addi r3, r1, 0x50 /* 8028BBEC 00288B4C EC 16 D0 28 */ fsubs f0, f22, f26 /* 8028BBF0 00288B50 D2 A1 00 48 */ stfs f21, 0x48(r1) /* 8028BBF4 00288B54 D2 81 00 4C */ stfs f20, 0x4c(r1) /* 8028BBF8 00288B58 D0 01 00 50 */ stfs f0, 0x50(r1) /* 8028BBFC 00288B5C D0 41 00 54 */ stfs f2, 0x54(r1) /* 8028BC00 00288B60 D0 21 00 58 */ stfs f1, 0x58(r1) /* 8028BC04 00288B64 48 07 F9 BD */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 8028BC08 00288B68 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028BC0C 00288B6C FC 40 08 90 */ fmr f2, f1 /* 8028BC10 00288B70 48 07 F8 55 */ bl StreamTexcoord__9CGraphicsFff /* 8028BC14 00288B74 EE 99 E8 2A */ fadds f20, f25, f29 /* 8028BC18 00288B78 38 61 00 38 */ addi r3, r1, 0x38 /* 8028BC1C 00288B7C EE B8 F0 2A */ fadds f21, f24, f30 /* 8028BC20 00288B80 EE D7 F8 2A */ fadds f22, f23, f31 /* 8028BC24 00288B84 EC 14 D0 28 */ fsubs f0, f20, f26 /* 8028BC28 00288B88 D2 81 00 2C */ stfs f20, 0x2c(r1) /* 8028BC2C 00288B8C EC 55 D8 28 */ fsubs f2, f21, f27 /* 8028BC30 00288B90 EC 36 E0 28 */ fsubs f1, f22, f28 /* 8028BC34 00288B94 D2 A1 00 30 */ stfs f21, 0x30(r1) /* 8028BC38 00288B98 D2 C1 00 34 */ stfs f22, 0x34(r1) /* 8028BC3C 00288B9C D0 01 00 38 */ stfs f0, 0x38(r1) /* 8028BC40 00288BA0 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 8028BC44 00288BA4 D0 21 00 40 */ stfs f1, 0x40(r1) /* 8028BC48 00288BA8 48 07 F9 79 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 8028BC4C 00288BAC C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028BC50 00288BB0 C0 42 BE A0 */ lfs f2, lbl_805ADBC0@sda21(r2) /* 8028BC54 00288BB4 48 07 F8 11 */ bl StreamTexcoord__9CGraphicsFff /* 8028BC58 00288BB8 EC 55 D8 2A */ fadds f2, f21, f27 /* 8028BC5C 00288BBC D2 81 00 14 */ stfs f20, 0x14(r1) /* 8028BC60 00288BC0 EC 36 E0 2A */ fadds f1, f22, f28 /* 8028BC64 00288BC4 38 61 00 20 */ addi r3, r1, 0x20 /* 8028BC68 00288BC8 EC 14 D0 2A */ fadds f0, f20, f26 /* 8028BC6C 00288BCC D2 A1 00 18 */ stfs f21, 0x18(r1) /* 8028BC70 00288BD0 D2 C1 00 1C */ stfs f22, 0x1c(r1) /* 8028BC74 00288BD4 D0 01 00 20 */ stfs f0, 0x20(r1) /* 8028BC78 00288BD8 D0 41 00 24 */ stfs f2, 0x24(r1) /* 8028BC7C 00288BDC D0 21 00 28 */ stfs f1, 0x28(r1) /* 8028BC80 00288BE0 48 07 F9 41 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 8028BC84 00288BE4 48 07 F7 8D */ bl StreamEnd__9CGraphicsFv lbl_8028BC88: /* 8028BC88 00288BE8 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 /* 8028BC8C 00288BEC CB E1 01 30 */ lfd f31, 0x130(r1) /* 8028BC90 00288BF0 E3 C1 01 28 */ psq_l f30, 296(r1), 0, qr0 /* 8028BC94 00288BF4 CB C1 01 20 */ lfd f30, 0x120(r1) /* 8028BC98 00288BF8 E3 A1 01 18 */ psq_l f29, 280(r1), 0, qr0 /* 8028BC9C 00288BFC CB A1 01 10 */ lfd f29, 0x110(r1) /* 8028BCA0 00288C00 E3 81 01 08 */ psq_l f28, 264(r1), 0, qr0 /* 8028BCA4 00288C04 CB 81 01 00 */ lfd f28, 0x100(r1) /* 8028BCA8 00288C08 E3 61 00 F8 */ psq_l f27, 248(r1), 0, qr0 /* 8028BCAC 00288C0C CB 61 00 F0 */ lfd f27, 0xf0(r1) /* 8028BCB0 00288C10 E3 41 00 E8 */ psq_l f26, 232(r1), 0, qr0 /* 8028BCB4 00288C14 CB 41 00 E0 */ lfd f26, 0xe0(r1) /* 8028BCB8 00288C18 E3 21 00 D8 */ psq_l f25, 216(r1), 0, qr0 /* 8028BCBC 00288C1C CB 21 00 D0 */ lfd f25, 0xd0(r1) /* 8028BCC0 00288C20 E3 01 00 C8 */ psq_l f24, 200(r1), 0, qr0 /* 8028BCC4 00288C24 CB 01 00 C0 */ lfd f24, 0xc0(r1) /* 8028BCC8 00288C28 E2 E1 00 B8 */ psq_l f23, 184(r1), 0, qr0 /* 8028BCCC 00288C2C CA E1 00 B0 */ lfd f23, 0xb0(r1) /* 8028BCD0 00288C30 E2 C1 00 A8 */ psq_l f22, 168(r1), 0, qr0 /* 8028BCD4 00288C34 CA C1 00 A0 */ lfd f22, 0xa0(r1) /* 8028BCD8 00288C38 E2 A1 00 98 */ psq_l f21, 152(r1), 0, qr0 /* 8028BCDC 00288C3C CA A1 00 90 */ lfd f21, 0x90(r1) /* 8028BCE0 00288C40 E2 81 00 88 */ psq_l f20, 136(r1), 0, qr0 /* 8028BCE4 00288C44 CA 81 00 80 */ lfd f20, 0x80(r1) /* 8028BCE8 00288C48 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 8028BCEC 00288C4C 80 01 01 44 */ lwz r0, 0x144(r1) /* 8028BCF0 00288C50 83 C1 00 78 */ lwz r30, 0x78(r1) /* 8028BCF4 00288C54 7C 08 03 A6 */ mtlr r0 /* 8028BCF8 00288C58 38 21 01 40 */ addi r1, r1, 0x140 /* 8028BCFC 00288C5C 4E 80 00 20 */ blr .global AddToRenderer__Q212COmegaPirate6CFlashCFRC14CFrustumPlanesRC13CStateManager AddToRenderer__Q212COmegaPirate6CFlashCFRC14CFrustumPlanesRC13CStateManager: /* 8028BD00 00288C60 4E 80 00 20 */ blr .global "__ct__Q212COmegaPirate6CFlashF9TUniqueIdRC11CEntityInfoRC9CVector3fRC23TLockedToken<8CTexture>" "__ct__Q212COmegaPirate6CFlashF9TUniqueIdRC11CEntityInfoRC9CVector3fRC23TLockedToken<8CTexture>": /* 8028BD04 00288C64 94 21 FE C0 */ stwu r1, -0x140(r1) /* 8028BD08 00288C68 7C 08 02 A6 */ mflr r0 /* 8028BD0C 00288C6C 90 01 01 44 */ stw r0, 0x144(r1) /* 8028BD10 00288C70 DB E1 01 30 */ stfd f31, 0x130(r1) /* 8028BD14 00288C74 F3 E1 01 38 */ psq_st f31, 312(r1), 0, qr0 /* 8028BD18 00288C78 BF 61 01 1C */ stmw r27, 0x11c(r1) /* 8028BD1C 00288C7C 3D 00 80 3D */ lis r8, lbl_803D5A74@ha /* 8028BD20 00288C80 FF E0 08 90 */ fmr f31, f1 /* 8028BD24 00288C84 39 08 5A 74 */ addi r8, r8, lbl_803D5A74@l /* 8028BD28 00288C88 7C 7B 1B 78 */ mr r27, r3 /* 8028BD2C 00288C8C 7C 9C 23 78 */ mr r28, r4 /* 8028BD30 00288C90 7C BD 2B 78 */ mr r29, r5 /* 8028BD34 00288C94 7C DE 33 78 */ mr r30, r6 /* 8028BD38 00288C98 7C FF 3B 78 */ mr r31, r7 /* 8028BD3C 00288C9C 38 61 00 20 */ addi r3, r1, 0x20 /* 8028BD40 00288CA0 38 88 00 B6 */ addi r4, r8, 0xb6 /* 8028BD44 00288CA4 4B D7 8F 75 */ bl string_l__4rstlFPCc /* 8028BD48 00288CA8 38 61 00 C8 */ addi r3, r1, 0xc8 /* 8028BD4C 00288CAC 4B DA EA 59 */ bl CModelDataNull__10CModelDataFv /* 8028BD50 00288CB0 38 61 00 60 */ addi r3, r1, 0x60 /* 8028BD54 00288CB4 4B D8 F0 E5 */ bl None__16CActorParametersFv /* 8028BD58 00288CB8 A0 6D A3 8C */ lhz r3, kInvalidUniqueId@sda21(r13) /* 8028BD5C 00288CBC 38 A0 00 00 */ li r5, 0 /* 8028BD60 00288CC0 A0 1C 00 00 */ lhz r0, 0(r28) /* 8028BD64 00288CC4 7F C4 F3 78 */ mr r4, r30 /* 8028BD68 00288CC8 B0 61 00 10 */ sth r3, 0x10(r1) /* 8028BD6C 00288CCC 38 61 00 30 */ addi r3, r1, 0x30 /* 8028BD70 00288CD0 90 A1 00 1C */ stw r5, 0x1c(r1) /* 8028BD74 00288CD4 90 A1 00 18 */ stw r5, 0x18(r1) /* 8028BD78 00288CD8 B0 01 00 14 */ sth r0, 0x14(r1) /* 8028BD7C 00288CDC 48 08 73 C5 */ bl Translate__12CTransform4fFRC9CVector3f /* 8028BD80 00288CE0 38 61 00 60 */ addi r3, r1, 0x60 /* 8028BD84 00288CE4 38 01 00 10 */ addi r0, r1, 0x10 /* 8028BD88 00288CE8 90 61 00 08 */ stw r3, 8(r1) /* 8028BD8C 00288CEC 7F 63 DB 78 */ mr r3, r27 /* 8028BD90 00288CF0 7F A7 EB 78 */ mr r7, r29 /* 8028BD94 00288CF4 38 81 00 14 */ addi r4, r1, 0x14 /* 8028BD98 00288CF8 90 01 00 0C */ stw r0, 0xc(r1) /* 8028BD9C 00288CFC 38 C1 00 20 */ addi r6, r1, 0x20 /* 8028BDA0 00288D00 39 01 00 30 */ addi r8, r1, 0x30 /* 8028BDA4 00288D04 39 21 00 C8 */ addi r9, r1, 0xc8 /* 8028BDA8 00288D08 39 41 00 18 */ addi r10, r1, 0x18 /* 8028BDAC 00288D0C 38 A0 00 01 */ li r5, 1 /* 8028BDB0 00288D10 4B DC 9A 71 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" /* 8028BDB4 00288D14 38 61 00 60 */ addi r3, r1, 0x60 /* 8028BDB8 00288D18 38 80 FF FF */ li r4, -1 /* 8028BDBC 00288D1C 4B E7 A8 4D */ bl __dt__16CLightParametersFv /* 8028BDC0 00288D20 38 61 00 C8 */ addi r3, r1, 0xc8 /* 8028BDC4 00288D24 38 80 FF FF */ li r4, -1 /* 8028BDC8 00288D28 4B E8 AC 85 */ bl __dt__10CModelDataFv /* 8028BDCC 00288D2C 38 61 00 20 */ addi r3, r1, 0x20 /* 8028BDD0 00288D30 48 0B 1D 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028BDD4 00288D34 3C 60 80 3F */ lis r3, lbl_803EB6C8@ha /* 8028BDD8 00288D38 3B 9B 00 E8 */ addi r28, r27, 0xe8 /* 8028BDDC 00288D3C 38 03 B6 C8 */ addi r0, r3, lbl_803EB6C8@l /* 8028BDE0 00288D40 7F E4 FB 78 */ mr r4, r31 /* 8028BDE4 00288D44 90 1B 00 00 */ stw r0, 0(r27) /* 8028BDE8 00288D48 7F 83 E3 78 */ mr r3, r28 /* 8028BDEC 00288D4C 48 0B 50 BD */ bl __ct__6CTokenFRC6CToken /* 8028BDF0 00288D50 38 00 00 00 */ li r0, 0 /* 8028BDF4 00288D54 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028BDF8 00288D58 90 1C 00 08 */ stw r0, 8(r28) /* 8028BDFC 00288D5C 7F 83 E3 78 */ mr r3, r28 /* 8028BE00 00288D60 D3 FB 00 F4 */ stfs f31, 0xf4(r27) /* 8028BE04 00288D64 D0 1B 00 F8 */ stfs f0, 0xf8(r27) /* 8028BE08 00288D68 D0 1B 00 FC */ stfs f0, 0xfc(r27) /* 8028BE0C 00288D6C 48 0B 4F 79 */ bl Lock__6CTokenFv /* 8028BE10 00288D70 7F 63 DB 78 */ mr r3, r27 /* 8028BE14 00288D74 E3 E1 01 38 */ psq_l f31, 312(r1), 0, qr0 /* 8028BE18 00288D78 CB E1 01 30 */ lfd f31, 0x130(r1) /* 8028BE1C 00288D7C BB 61 01 1C */ lmw r27, 0x11c(r1) /* 8028BE20 00288D80 80 01 01 44 */ lwz r0, 0x144(r1) /* 8028BE24 00288D84 7C 08 03 A6 */ mtlr r0 /* 8028BE28 00288D88 38 21 01 40 */ addi r1, r1, 0x140 /* 8028BE2C 00288D8C 4E 80 00 20 */ blr .global CreateFlash__12COmegaPirateFR13CStateManagerf CreateFlash__12COmegaPirateFR13CStateManagerf: /* 8028BE30 00288D90 94 21 FF 70 */ stwu r1, -0x90(r1) /* 8028BE34 00288D94 7C 08 02 A6 */ mflr r0 /* 8028BE38 00288D98 3C A0 80 3D */ lis r5, lbl_803D5A74@ha /* 8028BE3C 00288D9C 90 01 00 94 */ stw r0, 0x94(r1) /* 8028BE40 00288DA0 38 A5 5A 74 */ addi r5, r5, lbl_803D5A74@l /* 8028BE44 00288DA4 DB E1 00 88 */ stfd f31, 0x88(r1) /* 8028BE48 00288DA8 FF E0 08 90 */ fmr f31, f1 /* 8028BE4C 00288DAC BF 61 00 74 */ stmw r27, 0x74(r1) /* 8028BE50 00288DB0 7C 7D 1B 78 */ mr r29, r3 /* 8028BE54 00288DB4 7C 9E 23 78 */ mr r30, r4 /* 8028BE58 00288DB8 38 85 00 C9 */ addi r4, r5, 0xc9 /* 8028BE5C 00288DBC 3B 80 00 00 */ li r28, 0 /* 8028BE60 00288DC0 3B 60 00 00 */ li r27, 0 /* 8028BE64 00288DC4 38 60 01 00 */ li r3, 0x100 /* 8028BE68 00288DC8 38 A0 00 00 */ li r5, 0 /* 8028BE6C 00288DCC 48 08 9A 01 */ bl __nw__FUlPCcPCc /* 8028BE70 00288DD0 7C 7F 1B 79 */ or. r31, r3, r3 /* 8028BE74 00288DD4 41 82 00 84 */ beq lbl_8028BEF8 /* 8028BE78 00288DD8 80 CD A3 88 */ lwz r6, kInvalidEditorId@sda21(r13) /* 8028BE7C 00288DDC 38 00 00 00 */ li r0, 0 /* 8028BE80 00288DE0 90 01 00 40 */ stw r0, 0x40(r1) /* 8028BE84 00288DE4 38 61 00 58 */ addi r3, r1, 0x58 /* 8028BE88 00288DE8 38 81 00 34 */ addi r4, r1, 0x34 /* 8028BE8C 00288DEC 38 A1 00 3C */ addi r5, r1, 0x3c /* 8028BE90 00288DF0 90 C1 00 38 */ stw r6, 0x38(r1) /* 8028BE94 00288DF4 38 C1 00 38 */ addi r6, r1, 0x38 /* 8028BE98 00288DF8 3B 80 00 01 */ li r28, 1 /* 8028BE9C 00288DFC 90 01 00 44 */ stw r0, 0x44(r1) /* 8028BEA0 00288E00 90 01 00 48 */ stw r0, 0x48(r1) /* 8028BEA4 00288E04 80 1D 00 04 */ lwz r0, 4(r29) /* 8028BEA8 00288E08 90 01 00 30 */ stw r0, 0x30(r1) /* 8028BEAC 00288E0C 90 01 00 34 */ stw r0, 0x34(r1) /* 8028BEB0 00288E10 4B DC 55 D5 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" /* 8028BEB4 00288E14 7F C4 F3 78 */ mr r4, r30 /* 8028BEB8 00288E18 38 61 00 08 */ addi r3, r1, 8 /* 8028BEBC 00288E1C 3B 60 00 01 */ li r27, 1 /* 8028BEC0 00288E20 4B DC 12 1D */ bl AllocateUniqueId__13CStateManagerFv /* 8028BEC4 00288E24 A0 01 00 08 */ lhz r0, 8(r1) /* 8028BEC8 00288E28 38 61 00 4C */ addi r3, r1, 0x4c /* 8028BECC 00288E2C 38 9D 00 9C */ addi r4, r29, 0x9c /* 8028BED0 00288E30 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028BED4 00288E34 48 0A B7 39 */ bl GetCenterPoint__6CAABoxCFv /* 8028BED8 00288E38 FC 20 F8 90 */ fmr f1, f31 /* 8028BEDC 00288E3C 7F E3 FB 78 */ mr r3, r31 /* 8028BEE0 00288E40 38 81 00 0C */ addi r4, r1, 0xc /* 8028BEE4 00288E44 38 A1 00 58 */ addi r5, r1, 0x58 /* 8028BEE8 00288E48 38 C1 00 4C */ addi r6, r1, 0x4c /* 8028BEEC 00288E4C 38 FD 0B 70 */ addi r7, r29, 0xb70 /* 8028BEF0 00288E50 4B FF FE 15 */ bl "__ct__Q212COmegaPirate6CFlashF9TUniqueIdRC11CEntityInfoRC9CVector3fRC23TLockedToken<8CTexture>" /* 8028BEF4 00288E54 7C 7F 1B 78 */ mr r31, r3 lbl_8028BEF8: /* 8028BEF8 00288E58 7F C3 F3 78 */ mr r3, r30 /* 8028BEFC 00288E5C 7F E4 FB 78 */ mr r4, r31 /* 8028BF00 00288E60 4B DC 0C 15 */ bl AddObject__13CStateManagerFR7CEntity /* 8028BF04 00288E64 7F 60 07 75 */ extsb. r0, r27 /* 8028BF08 00288E68 41 82 00 44 */ beq lbl_8028BF4C /* 8028BF0C 00288E6C 80 01 00 60 */ lwz r0, 0x60(r1) /* 8028BF10 00288E70 80 61 00 68 */ lwz r3, 0x68(r1) /* 8028BF14 00288E74 1C 00 00 0C */ mulli r0, r0, 0xc /* 8028BF18 00288E78 90 61 00 14 */ stw r3, 0x14(r1) /* 8028BF1C 00288E7C 7C 64 1B 78 */ mr r4, r3 /* 8028BF20 00288E80 7C 03 02 14 */ add r0, r3, r0 /* 8028BF24 00288E84 90 61 00 10 */ stw r3, 0x10(r1) /* 8028BF28 00288E88 90 01 00 1C */ stw r0, 0x1c(r1) /* 8028BF2C 00288E8C 90 01 00 18 */ stw r0, 0x18(r1) /* 8028BF30 00288E90 48 00 00 08 */ b lbl_8028BF38 lbl_8028BF34: /* 8028BF34 00288E94 38 84 00 0C */ addi r4, r4, 0xc lbl_8028BF38: /* 8028BF38 00288E98 7C 04 00 40 */ cmplw r4, r0 /* 8028BF3C 00288E9C 40 82 FF F8 */ bne lbl_8028BF34 /* 8028BF40 00288EA0 28 03 00 00 */ cmplwi r3, 0 /* 8028BF44 00288EA4 41 82 00 08 */ beq lbl_8028BF4C /* 8028BF48 00288EA8 48 08 99 E9 */ bl Free__7CMemoryFPCv lbl_8028BF4C: /* 8028BF4C 00288EAC 7F 80 07 75 */ extsb. r0, r28 /* 8028BF50 00288EB0 41 82 00 44 */ beq lbl_8028BF94 /* 8028BF54 00288EB4 80 01 00 40 */ lwz r0, 0x40(r1) /* 8028BF58 00288EB8 80 61 00 48 */ lwz r3, 0x48(r1) /* 8028BF5C 00288EBC 1C 00 00 0C */ mulli r0, r0, 0xc /* 8028BF60 00288EC0 90 61 00 24 */ stw r3, 0x24(r1) /* 8028BF64 00288EC4 7C 64 1B 78 */ mr r4, r3 /* 8028BF68 00288EC8 7C 03 02 14 */ add r0, r3, r0 /* 8028BF6C 00288ECC 90 61 00 20 */ stw r3, 0x20(r1) /* 8028BF70 00288ED0 90 01 00 2C */ stw r0, 0x2c(r1) /* 8028BF74 00288ED4 90 01 00 28 */ stw r0, 0x28(r1) /* 8028BF78 00288ED8 48 00 00 08 */ b lbl_8028BF80 lbl_8028BF7C: /* 8028BF7C 00288EDC 38 84 00 0C */ addi r4, r4, 0xc lbl_8028BF80: /* 8028BF80 00288EE0 7C 04 00 40 */ cmplw r4, r0 /* 8028BF84 00288EE4 40 82 FF F8 */ bne lbl_8028BF7C /* 8028BF88 00288EE8 28 03 00 00 */ cmplwi r3, 0 /* 8028BF8C 00288EEC 41 82 00 08 */ beq lbl_8028BF94 /* 8028BF90 00288EF0 48 08 99 A1 */ bl Free__7CMemoryFPCv lbl_8028BF94: /* 8028BF94 00288EF4 CB E1 00 88 */ lfd f31, 0x88(r1) /* 8028BF98 00288EF8 BB 61 00 74 */ lmw r27, 0x74(r1) /* 8028BF9C 00288EFC 80 01 00 94 */ lwz r0, 0x94(r1) /* 8028BFA0 00288F00 7C 08 03 A6 */ mtlr r0 /* 8028BFA4 00288F04 38 21 00 90 */ addi r1, r1, 0x90 /* 8028BFA8 00288F08 4E 80 00 20 */ blr .global sub_8028bfac sub_8028bfac: /* 8028BFAC 00288F0C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8028BFB0 00288F10 7C 08 02 A6 */ mflr r0 /* 8028BFB4 00288F14 90 01 00 34 */ stw r0, 0x34(r1) /* 8028BFB8 00288F18 38 00 00 04 */ li r0, 4 /* 8028BFBC 00288F1C 2C 00 00 00 */ cmpwi r0, 0 /* 8028BFC0 00288F20 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8028BFC4 00288F24 7C 7F 1B 78 */ mr r31, r3 /* 8028BFC8 00288F28 93 C1 00 28 */ stw r30, 0x28(r1) /* 8028BFCC 00288F2C 90 01 00 1C */ stw r0, 0x1c(r1) /* 8028BFD0 00288F30 83 C3 0A B8 */ lwz r30, 0xab8(r3) /* 8028BFD4 00288F34 90 01 00 20 */ stw r0, 0x20(r1) /* 8028BFD8 00288F38 48 00 00 0C */ b lbl_8028BFE4 /* 8028BFDC 00288F3C 90 01 00 24 */ stw r0, 0x24(r1) /* 8028BFE0 00288F40 48 00 00 20 */ b lbl_8028C000 lbl_8028BFE4: /* 8028BFE4 00288F44 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 8028BFE8 00288F48 38 60 00 04 */ li r3, 4 /* 8028BFEC 00288F4C 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8028BFF0 00288F50 38 A0 00 00 */ li r5, 0 /* 8028BFF4 00288F54 38 84 00 C9 */ addi r4, r4, 0xc9 /* 8028BFF8 00288F58 48 08 98 21 */ bl __nwa__FUlPCcPCc /* 8028BFFC 00288F5C 90 61 00 24 */ stw r3, 0x24(r1) lbl_8028C000: /* 8028C000 00288F60 80 61 00 24 */ lwz r3, 0x24(r1) /* 8028C004 00288F64 28 03 00 00 */ cmplwi r3, 0 /* 8028C008 00288F68 41 82 00 0C */ beq lbl_8028C014 /* 8028C00C 00288F6C 88 0D 99 B9 */ lbz r0, lbl_805A8579@sda21(r13) /* 8028C010 00288F70 98 03 00 00 */ stb r0, 0(r3) lbl_8028C014: /* 8028C014 00288F74 34 63 00 01 */ addic. r3, r3, 1 /* 8028C018 00288F78 41 82 00 0C */ beq lbl_8028C024 /* 8028C01C 00288F7C 88 0D 99 B9 */ lbz r0, lbl_805A8579@sda21(r13) /* 8028C020 00288F80 98 03 00 00 */ stb r0, 0(r3) lbl_8028C024: /* 8028C024 00288F84 34 63 00 01 */ addic. r3, r3, 1 /* 8028C028 00288F88 41 82 00 0C */ beq lbl_8028C034 /* 8028C02C 00288F8C 88 0D 99 B9 */ lbz r0, lbl_805A8579@sda21(r13) /* 8028C030 00288F90 98 03 00 00 */ stb r0, 0(r3) lbl_8028C034: /* 8028C034 00288F94 34 63 00 01 */ addic. r3, r3, 1 /* 8028C038 00288F98 41 82 00 0C */ beq lbl_8028C044 /* 8028C03C 00288F9C 88 0D 99 B9 */ lbz r0, lbl_805A8579@sda21(r13) /* 8028C040 00288FA0 98 03 00 00 */ stb r0, 0(r3) lbl_8028C044: /* 8028C044 00288FA4 28 1E 00 00 */ cmplwi r30, 0 /* 8028C048 00288FA8 80 E1 00 24 */ lwz r7, 0x24(r1) /* 8028C04C 00288FAC 7F C3 F3 78 */ mr r3, r30 /* 8028C050 00288FB0 38 80 00 00 */ li r4, 0 /* 8028C054 00288FB4 40 81 00 FC */ ble lbl_8028C150 /* 8028C058 00288FB8 57 C0 E8 FF */ rlwinm. r0, r30, 0x1d, 3, 0x1f /* 8028C05C 00288FBC 7C 09 03 A6 */ mtctr r0 /* 8028C060 00288FC0 41 82 00 D0 */ beq lbl_8028C130 lbl_8028C064: /* 8028C064 00288FC4 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C068 00288FC8 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C06C 00288FCC 38 84 00 04 */ addi r4, r4, 4 /* 8028C070 00288FD0 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C074 00288FD4 38 05 00 01 */ addi r0, r5, 1 /* 8028C078 00288FD8 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C07C 00288FDC 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C080 00288FE0 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C084 00288FE4 38 84 00 04 */ addi r4, r4, 4 /* 8028C088 00288FE8 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C08C 00288FEC 38 05 00 01 */ addi r0, r5, 1 /* 8028C090 00288FF0 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C094 00288FF4 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C098 00288FF8 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C09C 00288FFC 38 84 00 04 */ addi r4, r4, 4 /* 8028C0A0 00289000 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C0A4 00289004 38 05 00 01 */ addi r0, r5, 1 /* 8028C0A8 00289008 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C0AC 0028900C 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C0B0 00289010 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C0B4 00289014 38 84 00 04 */ addi r4, r4, 4 /* 8028C0B8 00289018 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C0BC 0028901C 38 05 00 01 */ addi r0, r5, 1 /* 8028C0C0 00289020 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C0C4 00289024 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C0C8 00289028 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C0CC 0028902C 38 84 00 04 */ addi r4, r4, 4 /* 8028C0D0 00289030 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C0D4 00289034 38 05 00 01 */ addi r0, r5, 1 /* 8028C0D8 00289038 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C0DC 0028903C 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C0E0 00289040 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C0E4 00289044 38 84 00 04 */ addi r4, r4, 4 /* 8028C0E8 00289048 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C0EC 0028904C 38 05 00 01 */ addi r0, r5, 1 /* 8028C0F0 00289050 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C0F4 00289054 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C0F8 00289058 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C0FC 0028905C 38 84 00 04 */ addi r4, r4, 4 /* 8028C100 00289060 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C104 00289064 38 05 00 01 */ addi r0, r5, 1 /* 8028C108 00289068 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C10C 0028906C 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C110 00289070 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C114 00289074 38 84 00 04 */ addi r4, r4, 4 /* 8028C118 00289078 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C11C 0028907C 38 05 00 01 */ addi r0, r5, 1 /* 8028C120 00289080 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C124 00289084 42 00 FF 40 */ bdnz lbl_8028C064 /* 8028C128 00289088 70 63 00 07 */ andi. r3, r3, 7 /* 8028C12C 0028908C 41 82 00 24 */ beq lbl_8028C150 lbl_8028C130: /* 8028C130 00289090 7C 69 03 A6 */ mtctr r3 lbl_8028C134: /* 8028C134 00289094 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C138 00289098 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C13C 0028909C 38 84 00 04 */ addi r4, r4, 4 /* 8028C140 002890A0 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C144 002890A4 38 05 00 01 */ addi r0, r5, 1 /* 8028C148 002890A8 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C14C 002890AC 42 00 FF E8 */ bdnz lbl_8028C134 lbl_8028C150: /* 8028C150 002890B0 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C154 002890B4 38 A0 00 00 */ li r5, 0 /* 8028C158 002890B8 80 61 00 24 */ lwz r3, 0x24(r1) /* 8028C15C 002890BC 88 04 00 00 */ lbz r0, 0(r4) /* 8028C160 002890C0 28 00 00 00 */ cmplwi r0, 0 /* 8028C164 002890C4 40 82 00 10 */ bne lbl_8028C174 /* 8028C168 002890C8 88 03 00 00 */ lbz r0, 0(r3) /* 8028C16C 002890CC 28 00 00 00 */ cmplwi r0, 0 /* 8028C170 002890D0 41 82 00 08 */ beq lbl_8028C178 lbl_8028C174: /* 8028C174 002890D4 38 A0 00 01 */ li r5, 1 lbl_8028C178: /* 8028C178 002890D8 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C17C 002890DC 88 04 00 01 */ lbz r0, 1(r4) /* 8028C180 002890E0 28 00 00 00 */ cmplwi r0, 0 /* 8028C184 002890E4 40 82 00 10 */ bne lbl_8028C194 /* 8028C188 002890E8 88 03 00 01 */ lbz r0, 1(r3) /* 8028C18C 002890EC 28 00 00 00 */ cmplwi r0, 0 /* 8028C190 002890F0 41 82 00 08 */ beq lbl_8028C198 lbl_8028C194: /* 8028C194 002890F4 38 A5 00 01 */ addi r5, r5, 1 lbl_8028C198: /* 8028C198 002890F8 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C19C 002890FC 88 04 00 02 */ lbz r0, 2(r4) /* 8028C1A0 00289100 28 00 00 00 */ cmplwi r0, 0 /* 8028C1A4 00289104 40 82 00 10 */ bne lbl_8028C1B4 /* 8028C1A8 00289108 88 03 00 02 */ lbz r0, 2(r3) /* 8028C1AC 0028910C 28 00 00 00 */ cmplwi r0, 0 /* 8028C1B0 00289110 41 82 00 08 */ beq lbl_8028C1B8 lbl_8028C1B4: /* 8028C1B4 00289114 38 A5 00 01 */ addi r5, r5, 1 lbl_8028C1B8: /* 8028C1B8 00289118 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C1BC 0028911C 88 04 00 03 */ lbz r0, 3(r4) /* 8028C1C0 00289120 28 00 00 00 */ cmplwi r0, 0 /* 8028C1C4 00289124 40 82 00 10 */ bne lbl_8028C1D4 /* 8028C1C8 00289128 88 03 00 03 */ lbz r0, 3(r3) /* 8028C1CC 0028912C 28 00 00 00 */ cmplwi r0, 0 /* 8028C1D0 00289130 41 82 00 08 */ beq lbl_8028C1D8 lbl_8028C1D4: /* 8028C1D4 00289134 38 A5 00 01 */ addi r5, r5, 1 lbl_8028C1D8: /* 8028C1D8 00289138 80 01 00 1C */ lwz r0, 0x1c(r1) /* 8028C1DC 0028913C 7C BF 2B 78 */ mr r31, r5 /* 8028C1E0 00289140 90 61 00 0C */ stw r3, 0xc(r1) /* 8028C1E4 00289144 7C 83 02 14 */ add r4, r3, r0 /* 8028C1E8 00289148 7C 03 20 50 */ subf r0, r3, r4 /* 8028C1EC 0028914C 90 81 00 14 */ stw r4, 0x14(r1) /* 8028C1F0 00289150 90 81 00 10 */ stw r4, 0x10(r1) /* 8028C1F4 00289154 90 61 00 08 */ stw r3, 8(r1) /* 8028C1F8 00289158 7C 09 03 A6 */ mtctr r0 /* 8028C1FC 0028915C 7C 03 20 40 */ cmplw r3, r4 /* 8028C200 00289160 41 82 00 08 */ beq lbl_8028C208 lbl_8028C204: /* 8028C204 00289164 42 00 00 00 */ bdnz lbl_8028C204 lbl_8028C208: /* 8028C208 00289168 28 03 00 00 */ cmplwi r3, 0 /* 8028C20C 0028916C 41 82 00 08 */ beq lbl_8028C214 /* 8028C210 00289170 48 08 97 21 */ bl Free__7CMemoryFPCv lbl_8028C214: /* 8028C214 00289174 80 01 00 34 */ lwz r0, 0x34(r1) /* 8028C218 00289178 7F E3 FB 78 */ mr r3, r31 /* 8028C21C 0028917C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8028C220 00289180 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8028C224 00289184 7C 08 03 A6 */ mtlr r0 /* 8028C228 00289188 38 21 00 30 */ addi r1, r1, 0x30 /* 8028C22C 0028918C 4E 80 00 20 */ blr .global sub_8028c230 sub_8028c230: /* 8028C230 00289190 80 A3 0B 88 */ lwz r5, 0xb88(r3) /* 8028C234 00289194 88 65 00 00 */ lbz r3, 0(r5) /* 8028C238 00289198 88 05 00 01 */ lbz r0, 1(r5) /* 8028C23C 0028919C 88 85 00 02 */ lbz r4, 2(r5) /* 8028C240 002891A0 7C 63 02 14 */ add r3, r3, r0 /* 8028C244 002891A4 88 05 00 03 */ lbz r0, 3(r5) /* 8028C248 002891A8 7C 63 22 14 */ add r3, r3, r4 /* 8028C24C 002891AC 7C 63 02 14 */ add r3, r3, r0 /* 8028C250 002891B0 4E 80 00 20 */ blr .global Landed__12COmegaPirateFR13CStateManagerf Landed__12COmegaPirateFR13CStateManagerf: /* 8028C254 002891B4 80 83 0B 4C */ lwz r4, 0xb4c(r3) /* 8028C258 002891B8 38 60 00 04 */ li r3, 4 /* 8028C25C 002891BC 38 04 FF FC */ addi r0, r4, -4 /* 8028C260 002891C0 7C 83 1B 38 */ orc r3, r4, r3 /* 8028C264 002891C4 54 00 F8 7E */ srwi r0, r0, 1 /* 8028C268 002891C8 7C 00 18 50 */ subf r0, r0, r3 /* 8028C26C 002891CC 54 03 0F FE */ srwi r3, r0, 0x1f /* 8028C270 002891D0 4E 80 00 20 */ blr .global ShouldMove__12COmegaPirateFR13CStateManagerf ShouldMove__12COmegaPirateFR13CStateManagerf: /* 8028C274 002891D4 C0 23 03 38 */ lfs f1, 0x338(r3) /* 8028C278 002891D8 C0 03 0B 64 */ lfs f0, 0xb64(r3) /* 8028C27C 002891DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028C280 002891E0 7C 00 00 26 */ mfcr r0 /* 8028C284 002891E4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f /* 8028C288 002891E8 4E 80 00 20 */ blr .global Attack__12COmegaPirateFR13CStateManager9EStateMsgf Attack__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028C28C 002891EC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028C290 002891F0 7C 08 02 A6 */ mflr r0 /* 8028C294 002891F4 2C 05 00 01 */ cmpwi r5, 1 /* 8028C298 002891F8 90 01 00 14 */ stw r0, 0x14(r1) /* 8028C29C 002891FC 41 82 00 54 */ beq lbl_8028C2F0 /* 8028C2A0 00289200 40 80 00 10 */ bge lbl_8028C2B0 /* 8028C2A4 00289204 2C 05 00 00 */ cmpwi r5, 0 /* 8028C2A8 00289208 40 80 00 14 */ bge lbl_8028C2BC /* 8028C2AC 0028920C 48 00 00 44 */ b lbl_8028C2F0 lbl_8028C2B0: /* 8028C2B0 00289210 2C 05 00 03 */ cmpwi r5, 3 /* 8028C2B4 00289214 40 80 00 3C */ bge lbl_8028C2F0 /* 8028C2B8 00289218 48 00 00 20 */ b lbl_8028C2D8 lbl_8028C2BC: /* 8028C2BC 0028921C 88 03 04 02 */ lbz r0, 0x402(r3) /* 8028C2C0 00289220 38 C0 00 01 */ li r6, 1 /* 8028C2C4 00289224 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c /* 8028C2C8 00289228 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028C2CC 0028922C 98 03 04 02 */ stb r0, 0x402(r3) /* 8028C2D0 00289230 D0 03 05 04 */ stfs f0, 0x504(r3) /* 8028C2D4 00289234 48 00 00 1C */ b lbl_8028C2F0 lbl_8028C2D8: /* 8028C2D8 00289238 88 03 04 02 */ lbz r0, 0x402(r3) /* 8028C2DC 0028923C 38 C0 00 00 */ li r6, 0 /* 8028C2E0 00289240 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c /* 8028C2E4 00289244 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028C2E8 00289248 98 03 04 02 */ stb r0, 0x402(r3) /* 8028C2EC 0028924C D0 03 05 04 */ stfs f0, 0x504(r3) lbl_8028C2F0: /* 8028C2F0 00289250 4B F9 E3 B9 */ bl Attack__12CElitePirateFR13CStateManager9EStateMsgf /* 8028C2F4 00289254 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028C2F8 00289258 7C 08 03 A6 */ mtlr r0 /* 8028C2FC 0028925C 38 21 00 10 */ addi r1, r1, 0x10 /* 8028C300 00289260 4E 80 00 20 */ blr .global sub_8028c304 sub_8028c304: /* 8028C304 00289264 A0 A4 06 F4 */ lhz r5, 0x6f4(r4) /* 8028C308 00289268 38 00 00 08 */ li r0, 8 /* 8028C30C 0028926C 80 C4 06 F0 */ lwz r6, 0x6f0(r4) /* 8028C310 00289270 80 E4 06 D0 */ lwz r7, 0x6d0(r4) /* 8028C314 00289274 C0 42 BE 9C */ lfs f2, lbl_805ADBBC@sda21(r2) /* 8028C318 00289278 90 03 00 00 */ stw r0, 0(r3) /* 8028C31C 0028927C C0 22 BE B8 */ lfs f1, lbl_805ADBD8@sda21(r2) /* 8028C320 00289280 90 E3 00 04 */ stw r7, 4(r3) /* 8028C324 00289284 C0 02 BE BC */ lfs f0, lbl_805ADBDC@sda21(r2) /* 8028C328 00289288 80 04 06 D4 */ lwz r0, 0x6d4(r4) /* 8028C32C 0028928C 90 03 00 08 */ stw r0, 8(r3) /* 8028C330 00289290 88 04 06 D8 */ lbz r0, 0x6d8(r4) /* 8028C334 00289294 98 03 00 0C */ stb r0, 0xc(r3) /* 8028C338 00289298 C0 64 06 DC */ lfs f3, 0x6dc(r4) /* 8028C33C 0028929C D0 63 00 10 */ stfs f3, 0x10(r3) /* 8028C340 002892A0 C0 64 06 E0 */ lfs f3, 0x6e0(r4) /* 8028C344 002892A4 D0 63 00 14 */ stfs f3, 0x14(r3) /* 8028C348 002892A8 C0 64 06 E4 */ lfs f3, 0x6e4(r4) /* 8028C34C 002892AC D0 63 00 18 */ stfs f3, 0x18(r3) /* 8028C350 002892B0 C0 64 06 E8 */ lfs f3, 0x6e8(r4) /* 8028C354 002892B4 D0 63 00 1C */ stfs f3, 0x1c(r3) /* 8028C358 002892B8 88 04 06 EC */ lbz r0, 0x6ec(r4) /* 8028C35C 002892BC 98 03 00 20 */ stb r0, 0x20(r3) /* 8028C360 002892C0 D0 43 00 24 */ stfs f2, 0x24(r3) /* 8028C364 002892C4 D0 23 00 28 */ stfs f1, 0x28(r3) /* 8028C368 002892C8 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 8028C36C 002892CC D0 43 00 30 */ stfs f2, 0x30(r3) /* 8028C370 002892D0 90 C3 00 34 */ stw r6, 0x34(r3) /* 8028C374 002892D4 B0 A3 00 38 */ sth r5, 0x38(r3) /* 8028C378 002892D8 4E 80 00 20 */ blr .global Enraged__12COmegaPirateFR13CStateManager9EStateMsgf Enraged__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028C37C 002892DC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028C380 002892E0 7C 08 02 A6 */ mflr r0 /* 8028C384 002892E4 2C 05 00 01 */ cmpwi r5, 1 /* 8028C388 002892E8 90 01 00 24 */ stw r0, 0x24(r1) /* 8028C38C 002892EC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028C390 002892F0 41 82 00 2C */ beq lbl_8028C3BC /* 8028C394 002892F4 40 80 00 10 */ bge lbl_8028C3A4 /* 8028C398 002892F8 2C 05 00 00 */ cmpwi r5, 0 /* 8028C39C 002892FC 40 80 00 14 */ bge lbl_8028C3B0 /* 8028C3A0 00289300 48 00 00 EC */ b lbl_8028C48C lbl_8028C3A4: /* 8028C3A4 00289304 2C 05 00 03 */ cmpwi r5, 3 /* 8028C3A8 00289308 40 80 00 E4 */ bge lbl_8028C48C /* 8028C3AC 0028930C 48 00 00 D4 */ b lbl_8028C480 lbl_8028C3B0: /* 8028C3B0 00289310 38 00 00 00 */ li r0, 0 /* 8028C3B4 00289314 90 03 05 68 */ stw r0, 0x568(r3) /* 8028C3B8 00289318 48 00 00 D4 */ b lbl_8028C48C lbl_8028C3BC: /* 8028C3BC 0028931C 80 03 05 68 */ lwz r0, 0x568(r3) /* 8028C3C0 00289320 2C 00 00 01 */ cmpwi r0, 1 /* 8028C3C4 00289324 41 82 00 C8 */ beq lbl_8028C48C /* 8028C3C8 00289328 40 80 00 10 */ bge lbl_8028C3D8 /* 8028C3CC 0028932C 2C 00 00 00 */ cmpwi r0, 0 /* 8028C3D0 00289330 40 80 00 14 */ bge lbl_8028C3E4 /* 8028C3D4 00289334 48 00 00 B8 */ b lbl_8028C48C lbl_8028C3D8: /* 8028C3D8 00289338 2C 00 00 03 */ cmpwi r0, 3 /* 8028C3DC 0028933C 40 80 00 B0 */ bge lbl_8028C48C /* 8028C3E0 00289340 48 00 00 84 */ b lbl_8028C464 lbl_8028C3E4: /* 8028C3E4 00289344 80 C3 04 50 */ lwz r6, 0x450(r3) /* 8028C3E8 00289348 80 06 02 B8 */ lwz r0, 0x2b8(r6) /* 8028C3EC 0028934C 2C 00 00 10 */ cmpwi r0, 0x10 /* 8028C3F0 00289350 40 82 00 10 */ bne lbl_8028C400 /* 8028C3F4 00289354 38 00 00 02 */ li r0, 2 /* 8028C3F8 00289358 90 03 05 68 */ stw r0, 0x568(r3) /* 8028C3FC 0028935C 48 00 00 90 */ b lbl_8028C48C lbl_8028C400: /* 8028C400 00289360 3C 80 80 3E */ lis r4, __vt__13CBodyStateCmd@ha /* 8028C404 00289364 3C 60 80 3E */ lis r3, lbl_803DAA14@ha /* 8028C408 00289368 38 04 AA 68 */ addi r0, r4, __vt__13CBodyStateCmd@l /* 8028C40C 0028936C 38 80 00 12 */ li r4, 0x12 /* 8028C410 00289370 90 01 00 08 */ stw r0, 8(r1) /* 8028C414 00289374 38 A3 AA 14 */ addi r5, r3, lbl_803DAA14@l /* 8028C418 00289378 38 00 00 00 */ li r0, 0 /* 8028C41C 0028937C 3B E6 00 04 */ addi r31, r6, 4 /* 8028C420 00289380 90 81 00 0C */ stw r4, 0xc(r1) /* 8028C424 00289384 7F E3 FB 78 */ mr r3, r31 /* 8028C428 00289388 38 80 00 12 */ li r4, 0x12 /* 8028C42C 0028938C 90 A1 00 08 */ stw r5, 8(r1) /* 8028C430 00289390 90 01 00 10 */ stw r0, 0x10(r1) /* 8028C434 00289394 4B EA 50 05 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028C438 00289398 80 01 00 0C */ lwz r0, 0xc(r1) /* 8028C43C 0028939C 3C 60 80 3E */ lis r3, lbl_803DAA14@ha /* 8028C440 002893A0 38 83 AA 14 */ addi r4, r3, lbl_803DAA14@l /* 8028C444 002893A4 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028C448 002893A8 90 1F 02 14 */ stw r0, 0x214(r31) /* 8028C44C 002893AC 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028C450 002893B0 80 61 00 10 */ lwz r3, 0x10(r1) /* 8028C454 002893B4 90 81 00 08 */ stw r4, 8(r1) /* 8028C458 002893B8 90 7F 02 18 */ stw r3, 0x218(r31) /* 8028C45C 002893BC 90 01 00 08 */ stw r0, 8(r1) /* 8028C460 002893C0 48 00 00 2C */ b lbl_8028C48C lbl_8028C464: /* 8028C464 002893C4 80 83 04 50 */ lwz r4, 0x450(r3) /* 8028C468 002893C8 80 04 02 B8 */ lwz r0, 0x2b8(r4) /* 8028C46C 002893CC 2C 00 00 10 */ cmpwi r0, 0x10 /* 8028C470 002893D0 41 82 00 1C */ beq lbl_8028C48C /* 8028C474 002893D4 38 00 00 03 */ li r0, 3 /* 8028C478 002893D8 90 03 05 68 */ stw r0, 0x568(r3) /* 8028C47C 002893DC 48 00 00 10 */ b lbl_8028C48C lbl_8028C480: /* 8028C480 002893E0 38 00 00 01 */ li r0, 1 /* 8028C484 002893E4 98 03 0A DF */ stb r0, 0xadf(r3) /* 8028C488 002893E8 98 03 0A E0 */ stb r0, 0xae0(r3) lbl_8028C48C: /* 8028C48C 002893EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028C490 002893F0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028C494 002893F4 7C 08 03 A6 */ mtlr r0 /* 8028C498 002893F8 38 21 00 20 */ addi r1, r1, 0x20 /* 8028C49C 002893FC 4E 80 00 20 */ blr .global Cover__12COmegaPirateFR13CStateManager9EStateMsgf Cover__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028C4A0 00289400 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028C4A4 00289404 7C 08 02 A6 */ mflr r0 /* 8028C4A8 00289408 90 01 00 14 */ stw r0, 0x14(r1) /* 8028C4AC 0028940C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8028C4B0 00289410 7C BF 2B 78 */ mr r31, r5 /* 8028C4B4 00289414 93 C1 00 08 */ stw r30, 8(r1) /* 8028C4B8 00289418 7C 7E 1B 78 */ mr r30, r3 /* 8028C4BC 0028941C 4B F9 DD 1D */ bl Cover__12CElitePirateFR13CStateManager9EStateMsgf /* 8028C4C0 00289420 2C 1F 00 01 */ cmpwi r31, 1 /* 8028C4C4 00289424 41 82 00 3C */ beq lbl_8028C500 /* 8028C4C8 00289428 40 80 00 10 */ bge lbl_8028C4D8 /* 8028C4CC 0028942C 2C 1F 00 00 */ cmpwi r31, 0 /* 8028C4D0 00289430 40 80 00 14 */ bge lbl_8028C4E4 /* 8028C4D4 00289434 48 00 00 2C */ b lbl_8028C500 lbl_8028C4D8: /* 8028C4D8 00289438 2C 1F 00 03 */ cmpwi r31, 3 /* 8028C4DC 0028943C 40 80 00 24 */ bge lbl_8028C500 /* 8028C4E0 00289440 48 00 00 18 */ b lbl_8028C4F8 lbl_8028C4E4: /* 8028C4E4 00289444 C0 1E 03 B4 */ lfs f0, 0x3b4(r30) /* 8028C4E8 00289448 38 00 00 01 */ li r0, 1 /* 8028C4EC 0028944C D0 1E 0A D4 */ stfs f0, 0xad4(r30) /* 8028C4F0 00289450 98 1E 0A D8 */ stb r0, 0xad8(r30) /* 8028C4F4 00289454 48 00 00 0C */ b lbl_8028C500 lbl_8028C4F8: /* 8028C4F8 00289458 38 00 00 00 */ li r0, 0 /* 8028C4FC 0028945C 98 1E 0A D8 */ stb r0, 0xad8(r30) lbl_8028C500: /* 8028C500 00289460 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028C504 00289464 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8028C508 00289468 83 C1 00 08 */ lwz r30, 8(r1) /* 8028C50C 0028946C 7C 08 03 A6 */ mtlr r0 /* 8028C510 00289470 38 21 00 10 */ addi r1, r1, 0x10 /* 8028C514 00289474 4E 80 00 20 */ blr .global TargetPatrol__12COmegaPirateFR13CStateManager9EStateMsgf TargetPatrol__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028C518 00289478 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028C51C 0028947C 7C 08 02 A6 */ mflr r0 /* 8028C520 00289480 2C 05 00 01 */ cmpwi r5, 1 /* 8028C524 00289484 90 01 00 14 */ stw r0, 0x14(r1) /* 8028C528 00289488 41 82 00 3C */ beq lbl_8028C564 /* 8028C52C 0028948C 40 80 00 10 */ bge lbl_8028C53C /* 8028C530 00289490 2C 05 00 00 */ cmpwi r5, 0 /* 8028C534 00289494 40 80 00 14 */ bge lbl_8028C548 /* 8028C538 00289498 48 00 00 70 */ b lbl_8028C5A8 lbl_8028C53C: /* 8028C53C 0028949C 2C 05 00 03 */ cmpwi r5, 3 /* 8028C540 002894A0 40 80 00 68 */ bge lbl_8028C5A8 /* 8028C544 002894A4 48 00 00 5C */ b lbl_8028C5A0 lbl_8028C548: /* 8028C548 002894A8 C0 03 03 B4 */ lfs f0, 0x3b4(r3) /* 8028C54C 002894AC C0 42 BE C0 */ lfs f2, lbl_805ADBE0@sda21(r2) /* 8028C550 002894B0 D0 03 0A D4 */ stfs f0, 0xad4(r3) /* 8028C554 002894B4 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C558 002894B8 EC 02 00 32 */ fmuls f0, f2, f0 /* 8028C55C 002894BC D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C560 002894C0 48 00 00 48 */ b lbl_8028C5A8 lbl_8028C564: /* 8028C564 002894C4 80 C3 04 50 */ lwz r6, 0x450(r3) /* 8028C568 002894C8 80 06 02 B8 */ lwz r0, 0x2b8(r6) /* 8028C56C 002894CC 2C 00 00 06 */ cmpwi r0, 6 /* 8028C570 002894D0 40 82 00 10 */ bne lbl_8028C580 /* 8028C574 002894D4 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C578 002894D8 D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C57C 002894DC 48 00 00 2C */ b lbl_8028C5A8 lbl_8028C580: /* 8028C580 002894E0 C0 43 0A D4 */ lfs f2, 0xad4(r3) /* 8028C584 002894E4 C0 03 03 B4 */ lfs f0, 0x3b4(r3) /* 8028C588 002894E8 FC 02 00 00 */ fcmpu cr0, f2, f0 /* 8028C58C 002894EC 40 82 00 1C */ bne lbl_8028C5A8 /* 8028C590 002894F0 C0 02 BE C0 */ lfs f0, lbl_805ADBE0@sda21(r2) /* 8028C594 002894F4 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8028C598 002894F8 D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C59C 002894FC 48 00 00 0C */ b lbl_8028C5A8 lbl_8028C5A0: /* 8028C5A0 00289500 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C5A4 00289504 D0 03 03 B4 */ stfs f0, 0x3b4(r3) lbl_8028C5A8: /* 8028C5A8 00289508 4B F9 EB 19 */ bl TargetPatrol__12CElitePirateFR13CStateManager9EStateMsgf /* 8028C5AC 0028950C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028C5B0 00289510 7C 08 03 A6 */ mtlr r0 /* 8028C5B4 00289514 38 21 00 10 */ addi r1, r1, 0x10 /* 8028C5B8 00289518 4E 80 00 20 */ blr .global PathFind__12COmegaPirateFR13CStateManager9EStateMsgf PathFind__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028C5BC 0028951C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028C5C0 00289520 7C 08 02 A6 */ mflr r0 /* 8028C5C4 00289524 2C 05 00 01 */ cmpwi r5, 1 /* 8028C5C8 00289528 90 01 00 14 */ stw r0, 0x14(r1) /* 8028C5CC 0028952C 41 82 00 3C */ beq lbl_8028C608 /* 8028C5D0 00289530 40 80 00 10 */ bge lbl_8028C5E0 /* 8028C5D4 00289534 2C 05 00 00 */ cmpwi r5, 0 /* 8028C5D8 00289538 40 80 00 14 */ bge lbl_8028C5EC /* 8028C5DC 0028953C 48 00 00 70 */ b lbl_8028C64C lbl_8028C5E0: /* 8028C5E0 00289540 2C 05 00 03 */ cmpwi r5, 3 /* 8028C5E4 00289544 40 80 00 68 */ bge lbl_8028C64C /* 8028C5E8 00289548 48 00 00 5C */ b lbl_8028C644 lbl_8028C5EC: /* 8028C5EC 0028954C C0 03 03 B4 */ lfs f0, 0x3b4(r3) /* 8028C5F0 00289550 C0 42 BE C0 */ lfs f2, lbl_805ADBE0@sda21(r2) /* 8028C5F4 00289554 D0 03 0A D4 */ stfs f0, 0xad4(r3) /* 8028C5F8 00289558 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C5FC 0028955C EC 02 00 32 */ fmuls f0, f2, f0 /* 8028C600 00289560 D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C604 00289564 48 00 00 48 */ b lbl_8028C64C lbl_8028C608: /* 8028C608 00289568 80 C3 04 50 */ lwz r6, 0x450(r3) /* 8028C60C 0028956C 80 06 02 B8 */ lwz r0, 0x2b8(r6) /* 8028C610 00289570 2C 00 00 06 */ cmpwi r0, 6 /* 8028C614 00289574 40 82 00 10 */ bne lbl_8028C624 /* 8028C618 00289578 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C61C 0028957C D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C620 00289580 48 00 00 2C */ b lbl_8028C64C lbl_8028C624: /* 8028C624 00289584 C0 43 0A D4 */ lfs f2, 0xad4(r3) /* 8028C628 00289588 C0 03 03 B4 */ lfs f0, 0x3b4(r3) /* 8028C62C 0028958C FC 02 00 00 */ fcmpu cr0, f2, f0 /* 8028C630 00289590 40 82 00 1C */ bne lbl_8028C64C /* 8028C634 00289594 C0 02 BE C0 */ lfs f0, lbl_805ADBE0@sda21(r2) /* 8028C638 00289598 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8028C63C 0028959C D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C640 002895A0 48 00 00 0C */ b lbl_8028C64C lbl_8028C644: /* 8028C644 002895A4 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C648 002895A8 D0 03 03 B4 */ stfs f0, 0x3b4(r3) lbl_8028C64C: /* 8028C64C 002895AC 4B F9 ED 85 */ bl PathFind__12CElitePirateFR13CStateManager9EStateMsgf /* 8028C650 002895B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028C654 002895B4 7C 08 03 A6 */ mtlr r0 /* 8028C658 002895B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8028C65C 002895BC 4E 80 00 20 */ blr .global Run__12COmegaPirateFR13CStateManager9EStateMsgf Run__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028C660 002895C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8028C664 002895C4 7C 08 02 A6 */ mflr r0 /* 8028C668 002895C8 2C 05 00 01 */ cmpwi r5, 1 /* 8028C66C 002895CC 90 01 00 14 */ stw r0, 0x14(r1) /* 8028C670 002895D0 41 82 00 3C */ beq lbl_8028C6AC /* 8028C674 002895D4 40 80 00 10 */ bge lbl_8028C684 /* 8028C678 002895D8 2C 05 00 00 */ cmpwi r5, 0 /* 8028C67C 002895DC 40 80 00 14 */ bge lbl_8028C690 /* 8028C680 002895E0 48 00 00 70 */ b lbl_8028C6F0 lbl_8028C684: /* 8028C684 002895E4 2C 05 00 03 */ cmpwi r5, 3 /* 8028C688 002895E8 40 80 00 68 */ bge lbl_8028C6F0 /* 8028C68C 002895EC 48 00 00 5C */ b lbl_8028C6E8 lbl_8028C690: /* 8028C690 002895F0 C0 03 03 B4 */ lfs f0, 0x3b4(r3) /* 8028C694 002895F4 C0 42 BE C0 */ lfs f2, lbl_805ADBE0@sda21(r2) /* 8028C698 002895F8 D0 03 0A D4 */ stfs f0, 0xad4(r3) /* 8028C69C 002895FC C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C6A0 00289600 EC 02 00 32 */ fmuls f0, f2, f0 /* 8028C6A4 00289604 D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C6A8 00289608 48 00 00 48 */ b lbl_8028C6F0 lbl_8028C6AC: /* 8028C6AC 0028960C 80 C3 04 50 */ lwz r6, 0x450(r3) /* 8028C6B0 00289610 80 06 02 B8 */ lwz r0, 0x2b8(r6) /* 8028C6B4 00289614 2C 00 00 06 */ cmpwi r0, 6 /* 8028C6B8 00289618 40 82 00 10 */ bne lbl_8028C6C8 /* 8028C6BC 0028961C C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C6C0 00289620 D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C6C4 00289624 48 00 00 2C */ b lbl_8028C6F0 lbl_8028C6C8: /* 8028C6C8 00289628 C0 43 0A D4 */ lfs f2, 0xad4(r3) /* 8028C6CC 0028962C C0 03 03 B4 */ lfs f0, 0x3b4(r3) /* 8028C6D0 00289630 FC 02 00 00 */ fcmpu cr0, f2, f0 /* 8028C6D4 00289634 40 82 00 1C */ bne lbl_8028C6F0 /* 8028C6D8 00289638 C0 02 BE C0 */ lfs f0, lbl_805ADBE0@sda21(r2) /* 8028C6DC 0028963C EC 00 00 B2 */ fmuls f0, f0, f2 /* 8028C6E0 00289640 D0 03 03 B4 */ stfs f0, 0x3b4(r3) /* 8028C6E4 00289644 48 00 00 0C */ b lbl_8028C6F0 lbl_8028C6E8: /* 8028C6E8 00289648 C0 03 0A D4 */ lfs f0, 0xad4(r3) /* 8028C6EC 0028964C D0 03 03 B4 */ stfs f0, 0x3b4(r3) lbl_8028C6F0: /* 8028C6F0 00289650 4B F9 F2 99 */ bl Run__12CElitePirateFR13CStateManager9EStateMsgf /* 8028C6F4 00289654 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028C6F8 00289658 7C 08 03 A6 */ mtlr r0 /* 8028C6FC 0028965C 38 21 00 10 */ addi r1, r1, 0x10 /* 8028C700 00289660 4E 80 00 20 */ blr .global sub_8028c704 sub_8028c704: /* 8028C704 00289664 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028C708 00289668 7C 08 02 A6 */ mflr r0 /* 8028C70C 0028966C 90 01 00 24 */ stw r0, 0x24(r1) /* 8028C710 00289670 DB E1 00 10 */ stfd f31, 0x10(r1) /* 8028C714 00289674 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 8028C718 00289678 93 E1 00 0C */ stw r31, 0xc(r1) /* 8028C71C 0028967C 80 C3 0A C8 */ lwz r6, 0xac8(r3) /* 8028C720 00289680 FF E0 08 90 */ fmr f31, f1 /* 8028C724 00289684 80 03 0A B8 */ lwz r0, 0xab8(r3) /* 8028C728 00289688 7C 7F 1B 78 */ mr r31, r3 /* 8028C72C 0028968C 7C 06 00 00 */ cmpw r6, r0 /* 8028C730 00289690 40 80 00 F4 */ bge lbl_8028C824 /* 8028C734 00289694 C0 3F 0A B0 */ lfs f1, 0xab0(r31) /* 8028C738 00289698 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028C73C 0028969C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028C740 002896A0 4C 40 13 82 */ cror 2, 0, 2 /* 8028C744 002896A4 40 82 00 D4 */ bne lbl_8028C818 /* 8028C748 002896A8 38 A6 00 01 */ addi r5, r6, 1 /* 8028C74C 002896AC 54 C0 10 3A */ slwi r0, r6, 2 /* 8028C750 002896B0 90 BF 0A C8 */ stw r5, 0xac8(r31) /* 8028C754 002896B4 80 BF 0A C0 */ lwz r5, 0xac0(r31) /* 8028C758 002896B8 7C 05 00 2E */ lwzx r0, r5, r0 /* 8028C75C 002896BC 2C 00 00 02 */ cmpwi r0, 2 /* 8028C760 002896C0 41 82 00 48 */ beq lbl_8028C7A8 /* 8028C764 002896C4 40 80 00 14 */ bge lbl_8028C778 /* 8028C768 002896C8 2C 00 00 00 */ cmpwi r0, 0 /* 8028C76C 002896CC 41 82 00 60 */ beq lbl_8028C7CC /* 8028C770 002896D0 40 80 00 14 */ bge lbl_8028C784 /* 8028C774 002896D4 48 00 00 9C */ b lbl_8028C810 lbl_8028C778: /* 8028C778 002896D8 2C 00 00 04 */ cmpwi r0, 4 /* 8028C77C 002896DC 40 80 00 94 */ bge lbl_8028C810 /* 8028C780 002896E0 48 00 00 70 */ b lbl_8028C7F0 lbl_8028C784: /* 8028C784 002896E4 7C 85 23 78 */ mr r5, r4 /* 8028C788 002896E8 38 80 00 08 */ li r4, 8 /* 8028C78C 002896EC 38 C0 FF FF */ li r6, -1 /* 8028C790 002896F0 4B DC 49 31 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028C794 002896F4 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C798 002896F8 88 64 00 01 */ lbz r3, 1(r4) /* 8028C79C 002896FC 38 03 00 01 */ addi r0, r3, 1 /* 8028C7A0 00289700 98 04 00 01 */ stb r0, 1(r4) /* 8028C7A4 00289704 48 00 00 6C */ b lbl_8028C810 lbl_8028C7A8: /* 8028C7A8 00289708 7C 85 23 78 */ mr r5, r4 /* 8028C7AC 0028970C 38 80 00 0B */ li r4, 0xb /* 8028C7B0 00289710 38 C0 FF FF */ li r6, -1 /* 8028C7B4 00289714 4B DC 49 0D */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028C7B8 00289718 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C7BC 0028971C 88 64 00 02 */ lbz r3, 2(r4) /* 8028C7C0 00289720 38 03 00 01 */ addi r0, r3, 1 /* 8028C7C4 00289724 98 04 00 02 */ stb r0, 2(r4) /* 8028C7C8 00289728 48 00 00 48 */ b lbl_8028C810 lbl_8028C7CC: /* 8028C7CC 0028972C 7C 85 23 78 */ mr r5, r4 /* 8028C7D0 00289730 38 80 00 02 */ li r4, 2 /* 8028C7D4 00289734 38 C0 FF FF */ li r6, -1 /* 8028C7D8 00289738 4B DC 48 E9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028C7DC 0028973C 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C7E0 00289740 88 64 00 00 */ lbz r3, 0(r4) /* 8028C7E4 00289744 38 03 00 01 */ addi r0, r3, 1 /* 8028C7E8 00289748 98 04 00 00 */ stb r0, 0(r4) /* 8028C7EC 0028974C 48 00 00 24 */ b lbl_8028C810 lbl_8028C7F0: /* 8028C7F0 00289750 7C 85 23 78 */ mr r5, r4 /* 8028C7F4 00289754 38 80 00 19 */ li r4, 0x19 /* 8028C7F8 00289758 38 C0 FF FF */ li r6, -1 /* 8028C7FC 0028975C 4B DC 48 C5 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028C800 00289760 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8028C804 00289764 88 64 00 03 */ lbz r3, 3(r4) /* 8028C808 00289768 38 03 00 01 */ addi r0, r3, 1 /* 8028C80C 0028976C 98 04 00 03 */ stb r0, 3(r4) lbl_8028C810: /* 8028C810 00289770 C0 02 BE C4 */ lfs f0, lbl_805ADBE4@sda21(r2) /* 8028C814 00289774 D0 1F 0A B0 */ stfs f0, 0xab0(r31) lbl_8028C818: /* 8028C818 00289778 C0 1F 0A B0 */ lfs f0, 0xab0(r31) /* 8028C81C 0028977C EC 00 F8 28 */ fsubs f0, f0, f31 /* 8028C820 00289780 D0 1F 0A B0 */ stfs f0, 0xab0(r31) lbl_8028C824: /* 8028C824 00289784 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 8028C828 00289788 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028C82C 0028978C CB E1 00 10 */ lfd f31, 0x10(r1) /* 8028C830 00289790 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8028C834 00289794 7C 08 03 A6 */ mtlr r0 /* 8028C838 00289798 38 21 00 20 */ addi r1, r1, 0x20 /* 8028C83C 0028979C 4E 80 00 20 */ blr .global sub_8028c840 sub_8028c840: /* 8028C840 002897A0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8028C844 002897A4 7C 08 02 A6 */ mflr r0 /* 8028C848 002897A8 90 01 00 64 */ stw r0, 0x64(r1) /* 8028C84C 002897AC 38 00 00 00 */ li r0, 0 /* 8028C850 002897B0 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8028C854 002897B4 7C BF 2B 78 */ mr r31, r5 /* 8028C858 002897B8 93 C1 00 58 */ stw r30, 0x58(r1) /* 8028C85C 002897BC 7C 7E 1B 78 */ mr r30, r3 /* 8028C860 002897C0 38 61 00 40 */ addi r3, r1, 0x40 /* 8028C864 002897C4 93 A1 00 54 */ stw r29, 0x54(r1) /* 8028C868 002897C8 93 81 00 50 */ stw r28, 0x50(r1) /* 8028C86C 002897CC 90 81 00 08 */ stw r4, 8(r1) /* 8028C870 002897D0 38 80 00 04 */ li r4, 4 /* 8028C874 002897D4 90 01 00 44 */ stw r0, 0x44(r1) /* 8028C878 002897D8 90 01 00 48 */ stw r0, 0x48(r1) /* 8028C87C 002897DC 90 01 00 4C */ stw r0, 0x4c(r1) /* 8028C880 002897E0 4B F4 99 7D */ bl "reserve__Q24rstl37vectorFi" /* 8028C884 002897E4 38 00 00 04 */ li r0, 4 /* 8028C888 002897E8 83 9E 0A B8 */ lwz r28, 0xab8(r30) /* 8028C88C 002897EC 90 01 00 34 */ stw r0, 0x34(r1) /* 8028C890 002897F0 90 01 00 38 */ stw r0, 0x38(r1) /* 8028C894 002897F4 48 00 00 0C */ b lbl_8028C8A0 /* 8028C898 002897F8 90 01 00 3C */ stw r0, 0x3c(r1) /* 8028C89C 002897FC 48 00 00 20 */ b lbl_8028C8BC lbl_8028C8A0: /* 8028C8A0 00289800 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 8028C8A4 00289804 38 60 00 04 */ li r3, 4 /* 8028C8A8 00289808 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8028C8AC 0028980C 38 A0 00 00 */ li r5, 0 /* 8028C8B0 00289810 38 84 00 C9 */ addi r4, r4, 0xc9 /* 8028C8B4 00289814 48 08 8F 65 */ bl __nwa__FUlPCcPCc /* 8028C8B8 00289818 90 61 00 3C */ stw r3, 0x3c(r1) lbl_8028C8BC: /* 8028C8BC 0028981C 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8028C8C0 00289820 28 03 00 00 */ cmplwi r3, 0 /* 8028C8C4 00289824 41 82 00 0C */ beq lbl_8028C8D0 /* 8028C8C8 00289828 88 0D 99 B8 */ lbz r0, lbl_805A8578@sda21(r13) /* 8028C8CC 0028982C 98 03 00 00 */ stb r0, 0(r3) lbl_8028C8D0: /* 8028C8D0 00289830 34 63 00 01 */ addic. r3, r3, 1 /* 8028C8D4 00289834 41 82 00 0C */ beq lbl_8028C8E0 /* 8028C8D8 00289838 88 0D 99 B8 */ lbz r0, lbl_805A8578@sda21(r13) /* 8028C8DC 0028983C 98 03 00 00 */ stb r0, 0(r3) lbl_8028C8E0: /* 8028C8E0 00289840 34 63 00 01 */ addic. r3, r3, 1 /* 8028C8E4 00289844 41 82 00 0C */ beq lbl_8028C8F0 /* 8028C8E8 00289848 88 0D 99 B8 */ lbz r0, lbl_805A8578@sda21(r13) /* 8028C8EC 0028984C 98 03 00 00 */ stb r0, 0(r3) lbl_8028C8F0: /* 8028C8F0 00289850 34 63 00 01 */ addic. r3, r3, 1 /* 8028C8F4 00289854 41 82 00 0C */ beq lbl_8028C900 /* 8028C8F8 00289858 88 0D 99 B8 */ lbz r0, lbl_805A8578@sda21(r13) /* 8028C8FC 0028985C 98 03 00 00 */ stb r0, 0(r3) lbl_8028C900: /* 8028C900 00289860 28 1C 00 00 */ cmplwi r28, 0 /* 8028C904 00289864 80 E1 00 3C */ lwz r7, 0x3c(r1) /* 8028C908 00289868 7F 83 E3 78 */ mr r3, r28 /* 8028C90C 0028986C 38 80 00 00 */ li r4, 0 /* 8028C910 00289870 40 81 00 FC */ ble lbl_8028CA0C /* 8028C914 00289874 57 80 E8 FF */ rlwinm. r0, r28, 0x1d, 3, 0x1f /* 8028C918 00289878 7C 09 03 A6 */ mtctr r0 /* 8028C91C 0028987C 41 82 00 D0 */ beq lbl_8028C9EC lbl_8028C920: /* 8028C920 00289880 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C924 00289884 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C928 00289888 38 84 00 04 */ addi r4, r4, 4 /* 8028C92C 0028988C 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C930 00289890 38 05 00 01 */ addi r0, r5, 1 /* 8028C934 00289894 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C938 00289898 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C93C 0028989C 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C940 002898A0 38 84 00 04 */ addi r4, r4, 4 /* 8028C944 002898A4 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C948 002898A8 38 05 00 01 */ addi r0, r5, 1 /* 8028C94C 002898AC 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C950 002898B0 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C954 002898B4 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C958 002898B8 38 84 00 04 */ addi r4, r4, 4 /* 8028C95C 002898BC 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C960 002898C0 38 05 00 01 */ addi r0, r5, 1 /* 8028C964 002898C4 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C968 002898C8 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C96C 002898CC 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C970 002898D0 38 84 00 04 */ addi r4, r4, 4 /* 8028C974 002898D4 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C978 002898D8 38 05 00 01 */ addi r0, r5, 1 /* 8028C97C 002898DC 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C980 002898E0 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C984 002898E4 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C988 002898E8 38 84 00 04 */ addi r4, r4, 4 /* 8028C98C 002898EC 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C990 002898F0 38 05 00 01 */ addi r0, r5, 1 /* 8028C994 002898F4 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C998 002898F8 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C99C 002898FC 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C9A0 00289900 38 84 00 04 */ addi r4, r4, 4 /* 8028C9A4 00289904 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C9A8 00289908 38 05 00 01 */ addi r0, r5, 1 /* 8028C9AC 0028990C 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C9B0 00289910 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C9B4 00289914 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C9B8 00289918 38 84 00 04 */ addi r4, r4, 4 /* 8028C9BC 0028991C 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C9C0 00289920 38 05 00 01 */ addi r0, r5, 1 /* 8028C9C4 00289924 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C9C8 00289928 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C9CC 0028992C 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C9D0 00289930 38 84 00 04 */ addi r4, r4, 4 /* 8028C9D4 00289934 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028C9D8 00289938 38 05 00 01 */ addi r0, r5, 1 /* 8028C9DC 0028993C 7C 07 31 AE */ stbx r0, r7, r6 /* 8028C9E0 00289940 42 00 FF 40 */ bdnz lbl_8028C920 /* 8028C9E4 00289944 70 63 00 07 */ andi. r3, r3, 7 /* 8028C9E8 00289948 41 82 00 24 */ beq lbl_8028CA0C lbl_8028C9EC: /* 8028C9EC 0028994C 7C 69 03 A6 */ mtctr r3 lbl_8028C9F0: /* 8028C9F0 00289950 80 BE 0A C0 */ lwz r5, 0xac0(r30) /* 8028C9F4 00289954 7C C5 20 2E */ lwzx r6, r5, r4 /* 8028C9F8 00289958 38 84 00 04 */ addi r4, r4, 4 /* 8028C9FC 0028995C 7C A7 30 AE */ lbzx r5, r7, r6 /* 8028CA00 00289960 38 05 00 01 */ addi r0, r5, 1 /* 8028CA04 00289964 7C 07 31 AE */ stbx r0, r7, r6 /* 8028CA08 00289968 42 00 FF E8 */ bdnz lbl_8028C9F0 lbl_8028CA0C: /* 8028CA0C 0028996C 3B 80 00 00 */ li r28, 0 lbl_8028CA10: /* 8028CA10 00289970 80 7E 0B 88 */ lwz r3, 0xb88(r30) /* 8028CA14 00289974 7C 03 E0 AE */ lbzx r0, r3, r28 /* 8028CA18 00289978 28 00 00 00 */ cmplwi r0, 0 /* 8028CA1C 0028997C 40 82 00 14 */ bne lbl_8028CA30 /* 8028CA20 00289980 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8028CA24 00289984 7C 03 E0 AE */ lbzx r0, r3, r28 /* 8028CA28 00289988 28 00 00 00 */ cmplwi r0, 0 /* 8028CA2C 0028998C 41 82 00 50 */ beq lbl_8028CA7C lbl_8028CA30: /* 8028CA30 00289990 80 01 00 44 */ lwz r0, 0x44(r1) /* 8028CA34 00289994 57 9D 06 3E */ clrlwi r29, r28, 0x18 /* 8028CA38 00289998 80 A1 00 48 */ lwz r5, 0x48(r1) /* 8028CA3C 0028999C 7C 00 28 00 */ cmpw r0, r5 /* 8028CA40 002899A0 41 80 00 1C */ blt lbl_8028CA5C /* 8028CA44 002899A4 2C 05 00 00 */ cmpwi r5, 0 /* 8028CA48 002899A8 38 61 00 40 */ addi r3, r1, 0x40 /* 8028CA4C 002899AC 38 80 00 04 */ li r4, 4 /* 8028CA50 002899B0 41 82 00 08 */ beq lbl_8028CA58 /* 8028CA54 002899B4 54 A4 08 3C */ slwi r4, r5, 1 lbl_8028CA58: /* 8028CA58 002899B8 4B F4 97 A5 */ bl "reserve__Q24rstl37vectorFi" lbl_8028CA5C: /* 8028CA5C 002899BC 80 61 00 4C */ lwz r3, 0x4c(r1) /* 8028CA60 002899C0 80 01 00 44 */ lwz r0, 0x44(r1) /* 8028CA64 002899C4 7C 63 02 15 */ add. r3, r3, r0 /* 8028CA68 002899C8 41 82 00 08 */ beq lbl_8028CA70 /* 8028CA6C 002899CC 9B A3 00 00 */ stb r29, 0(r3) lbl_8028CA70: /* 8028CA70 002899D0 80 61 00 44 */ lwz r3, 0x44(r1) /* 8028CA74 002899D4 38 03 00 01 */ addi r0, r3, 1 /* 8028CA78 002899D8 90 01 00 44 */ stw r0, 0x44(r1) lbl_8028CA7C: /* 8028CA7C 002899DC 3B 9C 00 01 */ addi r28, r28, 1 /* 8028CA80 002899E0 28 1C 00 04 */ cmplwi r28, 4 /* 8028CA84 002899E4 41 80 FF 8C */ blt lbl_8028CA10 /* 8028CA88 002899E8 83 81 00 44 */ lwz r28, 0x44(r1) /* 8028CA8C 002899EC 2C 1C 00 00 */ cmpwi r28, 0 /* 8028CA90 002899F0 40 81 00 B4 */ ble lbl_8028CB44 /* 8028CA94 002899F4 80 7F 09 00 */ lwz r3, 0x900(r31) /* 8028CA98 002899F8 48 08 5A 89 */ bl Next__9CRandom16Fv /* 8028CA9C 002899FC 7C 03 E3 96 */ divwu r0, r3, r28 /* 8028CAA0 00289A00 80 81 00 4C */ lwz r4, 0x4c(r1) /* 8028CAA4 00289A04 83 BE 0A B8 */ lwz r29, 0xab8(r30) /* 8028CAA8 00289A08 7C 00 E1 D6 */ mullw r0, r0, r28 /* 8028CAAC 00289A0C 7C 00 18 50 */ subf r0, r0, r3 /* 8028CAB0 00289A10 7F C3 F3 78 */ mr r3, r30 /* 8028CAB4 00289A14 7F 84 00 AE */ lbzx r28, r4, r0 /* 8028CAB8 00289A18 4B FF F7 79 */ bl sub_8028c230 /* 8028CABC 00289A1C 7C 7D 1A 14 */ add r3, r29, r3 /* 8028CAC0 00289A20 80 01 00 08 */ lwz r0, 8(r1) /* 8028CAC4 00289A24 20 83 00 03 */ subfic r4, r3, 3 /* 8028CAC8 00289A28 38 61 00 08 */ addi r3, r1, 8 /* 8028CACC 00289A2C 7C 04 00 40 */ cmplw r4, r0 /* 8028CAD0 00289A30 90 81 00 2C */ stw r4, 0x2c(r1) /* 8028CAD4 00289A34 40 80 00 08 */ bge lbl_8028CADC /* 8028CAD8 00289A38 38 61 00 2C */ addi r3, r1, 0x2c lbl_8028CADC: /* 8028CADC 00289A3C 83 A3 00 00 */ lwz r29, 0(r3) /* 8028CAE0 00289A40 3B E0 00 00 */ li r31, 0 /* 8028CAE4 00289A44 48 00 00 54 */ b lbl_8028CB38 lbl_8028CAE8: /* 8028CAE8 00289A48 80 1E 0A B8 */ lwz r0, 0xab8(r30) /* 8028CAEC 00289A4C 80 BE 0A BC */ lwz r5, 0xabc(r30) /* 8028CAF0 00289A50 7C 00 28 00 */ cmpw r0, r5 /* 8028CAF4 00289A54 41 80 00 1C */ blt lbl_8028CB10 /* 8028CAF8 00289A58 2C 05 00 00 */ cmpwi r5, 0 /* 8028CAFC 00289A5C 38 7E 0A B4 */ addi r3, r30, 0xab4 /* 8028CB00 00289A60 38 80 00 04 */ li r4, 4 /* 8028CB04 00289A64 41 82 00 08 */ beq lbl_8028CB0C /* 8028CB08 00289A68 54 A4 08 3C */ slwi r4, r5, 1 lbl_8028CB0C: /* 8028CB0C 00289A6C 48 00 59 E5 */ bl sub_802924f0 lbl_8028CB10: /* 8028CB10 00289A70 80 1E 0A B8 */ lwz r0, 0xab8(r30) /* 8028CB14 00289A74 80 7E 0A C0 */ lwz r3, 0xac0(r30) /* 8028CB18 00289A78 54 00 10 3A */ slwi r0, r0, 2 /* 8028CB1C 00289A7C 7C 63 02 15 */ add. r3, r3, r0 /* 8028CB20 00289A80 41 82 00 08 */ beq lbl_8028CB28 /* 8028CB24 00289A84 93 83 00 00 */ stw r28, 0(r3) lbl_8028CB28: /* 8028CB28 00289A88 80 7E 0A B8 */ lwz r3, 0xab8(r30) /* 8028CB2C 00289A8C 3B FF 00 01 */ addi r31, r31, 1 /* 8028CB30 00289A90 38 03 00 01 */ addi r0, r3, 1 /* 8028CB34 00289A94 90 1E 0A B8 */ stw r0, 0xab8(r30) lbl_8028CB38: /* 8028CB38 00289A98 7C 1F E8 00 */ cmpw r31, r29 /* 8028CB3C 00289A9C 41 80 FF AC */ blt lbl_8028CAE8 /* 8028CB40 00289AA0 48 00 00 14 */ b lbl_8028CB54 lbl_8028CB44: /* 8028CB44 00289AA4 80 81 00 08 */ lwz r4, 8(r1) /* 8028CB48 00289AA8 7F C3 F3 78 */ mr r3, r30 /* 8028CB4C 00289AAC 7F E5 FB 78 */ mr r5, r31 /* 8028CB50 00289AB0 48 00 00 9D */ bl sub_8028cbec lbl_8028CB54: /* 8028CB54 00289AB4 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8028CB58 00289AB8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8028CB5C 00289ABC 90 61 00 20 */ stw r3, 0x20(r1) /* 8028CB60 00289AC0 7C 83 02 14 */ add r4, r3, r0 /* 8028CB64 00289AC4 7C 03 20 50 */ subf r0, r3, r4 /* 8028CB68 00289AC8 90 81 00 28 */ stw r4, 0x28(r1) /* 8028CB6C 00289ACC 90 81 00 24 */ stw r4, 0x24(r1) /* 8028CB70 00289AD0 90 61 00 1C */ stw r3, 0x1c(r1) /* 8028CB74 00289AD4 7C 09 03 A6 */ mtctr r0 /* 8028CB78 00289AD8 7C 03 20 40 */ cmplw r3, r4 /* 8028CB7C 00289ADC 41 82 00 08 */ beq lbl_8028CB84 lbl_8028CB80: /* 8028CB80 00289AE0 42 00 00 00 */ bdnz lbl_8028CB80 lbl_8028CB84: /* 8028CB84 00289AE4 28 03 00 00 */ cmplwi r3, 0 /* 8028CB88 00289AE8 41 82 00 08 */ beq lbl_8028CB90 /* 8028CB8C 00289AEC 48 08 8D A5 */ bl Free__7CMemoryFPCv lbl_8028CB90: /* 8028CB90 00289AF0 80 61 00 4C */ lwz r3, 0x4c(r1) /* 8028CB94 00289AF4 80 01 00 44 */ lwz r0, 0x44(r1) /* 8028CB98 00289AF8 90 61 00 10 */ stw r3, 0x10(r1) /* 8028CB9C 00289AFC 7C 83 02 14 */ add r4, r3, r0 /* 8028CBA0 00289B00 7C 03 20 50 */ subf r0, r3, r4 /* 8028CBA4 00289B04 90 81 00 18 */ stw r4, 0x18(r1) /* 8028CBA8 00289B08 90 81 00 14 */ stw r4, 0x14(r1) /* 8028CBAC 00289B0C 90 61 00 0C */ stw r3, 0xc(r1) /* 8028CBB0 00289B10 7C 09 03 A6 */ mtctr r0 /* 8028CBB4 00289B14 7C 03 20 40 */ cmplw r3, r4 /* 8028CBB8 00289B18 41 82 00 08 */ beq lbl_8028CBC0 lbl_8028CBBC: /* 8028CBBC 00289B1C 42 00 00 00 */ bdnz lbl_8028CBBC lbl_8028CBC0: /* 8028CBC0 00289B20 28 03 00 00 */ cmplwi r3, 0 /* 8028CBC4 00289B24 41 82 00 08 */ beq lbl_8028CBCC /* 8028CBC8 00289B28 48 08 8D 69 */ bl Free__7CMemoryFPCv lbl_8028CBCC: /* 8028CBCC 00289B2C 80 01 00 64 */ lwz r0, 0x64(r1) /* 8028CBD0 00289B30 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8028CBD4 00289B34 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8028CBD8 00289B38 83 A1 00 54 */ lwz r29, 0x54(r1) /* 8028CBDC 00289B3C 83 81 00 50 */ lwz r28, 0x50(r1) /* 8028CBE0 00289B40 7C 08 03 A6 */ mtlr r0 /* 8028CBE4 00289B44 38 21 00 60 */ addi r1, r1, 0x60 /* 8028CBE8 00289B48 4E 80 00 20 */ blr .global sub_8028cbec sub_8028cbec: /* 8028CBEC 00289B4C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028CBF0 00289B50 7C 08 02 A6 */ mflr r0 /* 8028CBF4 00289B54 90 01 00 24 */ stw r0, 0x24(r1) /* 8028CBF8 00289B58 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028CBFC 00289B5C 7C 7F 1B 78 */ mr r31, r3 /* 8028CC00 00289B60 93 C1 00 18 */ stw r30, 0x18(r1) /* 8028CC04 00289B64 93 A1 00 14 */ stw r29, 0x14(r1) /* 8028CC08 00289B68 93 81 00 10 */ stw r28, 0x10(r1) /* 8028CC0C 00289B6C 7C BC 2B 78 */ mr r28, r5 /* 8028CC10 00289B70 90 81 00 08 */ stw r4, 8(r1) /* 8028CC14 00289B74 80 65 09 00 */ lwz r3, 0x900(r5) /* 8028CC18 00289B78 48 08 59 09 */ bl Next__9CRandom16Fv /* 8028CC1C 00289B7C 54 60 F0 02 */ slwi r0, r3, 0x1e /* 8028CC20 00289B80 54 64 0F FE */ srwi r4, r3, 0x1f /* 8028CC24 00289B84 7C 04 00 50 */ subf r0, r4, r0 /* 8028CC28 00289B88 83 DF 0A B8 */ lwz r30, 0xab8(r31) /* 8028CC2C 00289B8C 54 00 10 3E */ rotlwi r0, r0, 2 /* 8028CC30 00289B90 7F E3 FB 78 */ mr r3, r31 /* 8028CC34 00289B94 7F A0 22 14 */ add r29, r0, r4 /* 8028CC38 00289B98 4B FF F5 F9 */ bl sub_8028c230 /* 8028CC3C 00289B9C 7C 7E 1A 14 */ add r3, r30, r3 /* 8028CC40 00289BA0 80 01 00 08 */ lwz r0, 8(r1) /* 8028CC44 00289BA4 20 83 00 03 */ subfic r4, r3, 3 /* 8028CC48 00289BA8 38 61 00 08 */ addi r3, r1, 8 /* 8028CC4C 00289BAC 7C 04 00 40 */ cmplw r4, r0 /* 8028CC50 00289BB0 90 81 00 0C */ stw r4, 0xc(r1) /* 8028CC54 00289BB4 40 80 00 08 */ bge lbl_8028CC5C /* 8028CC58 00289BB8 38 61 00 0C */ addi r3, r1, 0xc lbl_8028CC5C: /* 8028CC5C 00289BBC 83 C3 00 00 */ lwz r30, 0(r3) /* 8028CC60 00289BC0 7F E3 FB 78 */ mr r3, r31 /* 8028CC64 00289BC4 4B FF F3 49 */ bl sub_8028bfac /* 8028CC68 00289BC8 28 03 00 02 */ cmplwi r3, 2 /* 8028CC6C 00289BCC 40 80 00 68 */ bge lbl_8028CCD4 /* 8028CC70 00289BD0 3B 80 00 00 */ li r28, 0 /* 8028CC74 00289BD4 48 00 00 54 */ b lbl_8028CCC8 lbl_8028CC78: /* 8028CC78 00289BD8 80 1F 0A B8 */ lwz r0, 0xab8(r31) /* 8028CC7C 00289BDC 80 BF 0A BC */ lwz r5, 0xabc(r31) /* 8028CC80 00289BE0 7C 00 28 00 */ cmpw r0, r5 /* 8028CC84 00289BE4 41 80 00 1C */ blt lbl_8028CCA0 /* 8028CC88 00289BE8 2C 05 00 00 */ cmpwi r5, 0 /* 8028CC8C 00289BEC 38 7F 0A B4 */ addi r3, r31, 0xab4 /* 8028CC90 00289BF0 38 80 00 04 */ li r4, 4 /* 8028CC94 00289BF4 41 82 00 08 */ beq lbl_8028CC9C /* 8028CC98 00289BF8 54 A4 08 3C */ slwi r4, r5, 1 lbl_8028CC9C: /* 8028CC9C 00289BFC 48 00 58 55 */ bl sub_802924f0 lbl_8028CCA0: /* 8028CCA0 00289C00 80 1F 0A B8 */ lwz r0, 0xab8(r31) /* 8028CCA4 00289C04 80 7F 0A C0 */ lwz r3, 0xac0(r31) /* 8028CCA8 00289C08 54 00 10 3A */ slwi r0, r0, 2 /* 8028CCAC 00289C0C 7C 63 02 15 */ add. r3, r3, r0 /* 8028CCB0 00289C10 41 82 00 08 */ beq lbl_8028CCB8 /* 8028CCB4 00289C14 93 A3 00 00 */ stw r29, 0(r3) lbl_8028CCB8: /* 8028CCB8 00289C18 80 7F 0A B8 */ lwz r3, 0xab8(r31) /* 8028CCBC 00289C1C 3B 9C 00 01 */ addi r28, r28, 1 /* 8028CCC0 00289C20 38 03 00 01 */ addi r0, r3, 1 /* 8028CCC4 00289C24 90 1F 0A B8 */ stw r0, 0xab8(r31) lbl_8028CCC8: /* 8028CCC8 00289C28 7C 1C F0 00 */ cmpw r28, r30 /* 8028CCCC 00289C2C 41 80 FF AC */ blt lbl_8028CC78 /* 8028CCD0 00289C30 48 00 00 14 */ b lbl_8028CCE4 lbl_8028CCD4: /* 8028CCD4 00289C34 7F E3 FB 78 */ mr r3, r31 /* 8028CCD8 00289C38 7F C4 F3 78 */ mr r4, r30 /* 8028CCDC 00289C3C 7F 85 E3 78 */ mr r5, r28 /* 8028CCE0 00289C40 4B FF FB 61 */ bl sub_8028c840 lbl_8028CCE4: /* 8028CCE4 00289C44 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028CCE8 00289C48 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028CCEC 00289C4C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8028CCF0 00289C50 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8028CCF4 00289C54 83 81 00 10 */ lwz r28, 0x10(r1) /* 8028CCF8 00289C58 7C 08 03 A6 */ mtlr r0 /* 8028CCFC 00289C5C 38 21 00 20 */ addi r1, r1, 0x20 /* 8028CD00 00289C60 4E 80 00 20 */ blr .global sub_8028cd04 sub_8028cd04: /* 8028CD04 00289C64 80 03 0A 7C */ lwz r0, 0xa7c(r3) /* 8028CD08 00289C68 2C 00 00 02 */ cmpwi r0, 2 /* 8028CD0C 00289C6C 41 82 00 D4 */ beq lbl_8028CDE0 /* 8028CD10 00289C70 40 80 00 10 */ bge lbl_8028CD20 /* 8028CD14 00289C74 2C 00 00 01 */ cmpwi r0, 1 /* 8028CD18 00289C78 40 80 00 70 */ bge lbl_8028CD88 /* 8028CD1C 00289C7C 48 00 01 04 */ b lbl_8028CE20 lbl_8028CD20: /* 8028CD20 00289C80 2C 00 00 04 */ cmpwi r0, 4 /* 8028CD24 00289C84 40 80 00 FC */ bge lbl_8028CE20 /* 8028CD28 00289C88 C0 63 0A 8C */ lfs f3, 0xa8c(r3) /* 8028CD2C 00289C8C C0 03 0A 84 */ lfs f0, 0xa84(r3) /* 8028CD30 00289C90 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8028CD34 00289C94 40 80 00 0C */ bge lbl_8028CD40 /* 8028CD38 00289C98 38 83 0A 8C */ addi r4, r3, 0xa8c /* 8028CD3C 00289C9C 48 00 00 08 */ b lbl_8028CD44 lbl_8028CD40: /* 8028CD40 00289CA0 38 83 0A 84 */ addi r4, r3, 0xa84 lbl_8028CD44: /* 8028CD44 00289CA4 C0 04 00 00 */ lfs f0, 0(r4) /* 8028CD48 00289CA8 C0 42 BE A0 */ lfs f2, lbl_805ADBC0@sda21(r2) /* 8028CD4C 00289CAC EC 00 18 24 */ fdivs f0, f0, f3 /* 8028CD50 00289CB0 EC 02 00 28 */ fsubs f0, f2, f0 /* 8028CD54 00289CB4 D0 03 0A 80 */ stfs f0, 0xa80(r3) /* 8028CD58 00289CB8 C0 43 0A 84 */ lfs f2, 0xa84(r3) /* 8028CD5C 00289CBC C0 03 0A 8C */ lfs f0, 0xa8c(r3) /* 8028CD60 00289CC0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028CD64 00289CC4 40 81 00 14 */ ble lbl_8028CD78 /* 8028CD68 00289CC8 38 00 00 02 */ li r0, 2 /* 8028CD6C 00289CCC C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028CD70 00289CD0 90 03 0A 7C */ stw r0, 0xa7c(r3) /* 8028CD74 00289CD4 D0 03 0A 84 */ stfs f0, 0xa84(r3) lbl_8028CD78: /* 8028CD78 00289CD8 C0 03 0A 84 */ lfs f0, 0xa84(r3) /* 8028CD7C 00289CDC EC 00 08 2A */ fadds f0, f0, f1 /* 8028CD80 00289CE0 D0 03 0A 84 */ stfs f0, 0xa84(r3) /* 8028CD84 00289CE4 4E 80 00 20 */ blr lbl_8028CD88: /* 8028CD88 00289CE8 C0 43 0A 90 */ lfs f2, 0xa90(r3) /* 8028CD8C 00289CEC C0 03 0A 84 */ lfs f0, 0xa84(r3) /* 8028CD90 00289CF0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028CD94 00289CF4 40 80 00 0C */ bge lbl_8028CDA0 /* 8028CD98 00289CF8 38 83 0A 90 */ addi r4, r3, 0xa90 /* 8028CD9C 00289CFC 48 00 00 08 */ b lbl_8028CDA4 lbl_8028CDA0: /* 8028CDA0 00289D00 38 83 0A 84 */ addi r4, r3, 0xa84 lbl_8028CDA4: /* 8028CDA4 00289D04 C0 04 00 00 */ lfs f0, 0(r4) /* 8028CDA8 00289D08 EC 00 10 24 */ fdivs f0, f0, f2 /* 8028CDAC 00289D0C D0 03 0A 80 */ stfs f0, 0xa80(r3) /* 8028CDB0 00289D10 C0 43 0A 84 */ lfs f2, 0xa84(r3) /* 8028CDB4 00289D14 C0 03 0A 90 */ lfs f0, 0xa90(r3) /* 8028CDB8 00289D18 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028CDBC 00289D1C 40 81 00 14 */ ble lbl_8028CDD0 /* 8028CDC0 00289D20 38 00 00 00 */ li r0, 0 /* 8028CDC4 00289D24 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028CDC8 00289D28 90 03 0A 7C */ stw r0, 0xa7c(r3) /* 8028CDCC 00289D2C D0 03 0A 84 */ stfs f0, 0xa84(r3) lbl_8028CDD0: /* 8028CDD0 00289D30 C0 03 0A 84 */ lfs f0, 0xa84(r3) /* 8028CDD4 00289D34 EC 00 08 2A */ fadds f0, f0, f1 /* 8028CDD8 00289D38 D0 03 0A 84 */ stfs f0, 0xa84(r3) /* 8028CDDC 00289D3C 4E 80 00 20 */ blr lbl_8028CDE0: /* 8028CDE0 00289D40 C0 62 BE 9C */ lfs f3, lbl_805ADBBC@sda21(r2) /* 8028CDE4 00289D44 D0 63 0A 80 */ stfs f3, 0xa80(r3) /* 8028CDE8 00289D48 C0 43 0A 84 */ lfs f2, 0xa84(r3) /* 8028CDEC 00289D4C C0 03 0A 94 */ lfs f0, 0xa94(r3) /* 8028CDF0 00289D50 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028CDF4 00289D54 40 81 00 1C */ ble lbl_8028CE10 /* 8028CDF8 00289D58 88 03 0A 88 */ lbz r0, 0xa88(r3) /* 8028CDFC 00289D5C 28 00 00 00 */ cmplwi r0, 0 /* 8028CE00 00289D60 40 82 00 10 */ bne lbl_8028CE10 /* 8028CE04 00289D64 38 00 00 01 */ li r0, 1 /* 8028CE08 00289D68 90 03 0A 7C */ stw r0, 0xa7c(r3) /* 8028CE0C 00289D6C D0 63 0A 84 */ stfs f3, 0xa84(r3) lbl_8028CE10: /* 8028CE10 00289D70 C0 03 0A 84 */ lfs f0, 0xa84(r3) /* 8028CE14 00289D74 EC 00 08 2A */ fadds f0, f0, f1 /* 8028CE18 00289D78 D0 03 0A 84 */ stfs f0, 0xa84(r3) /* 8028CE1C 00289D7C 4E 80 00 20 */ blr lbl_8028CE20: /* 8028CE20 00289D80 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028CE24 00289D84 D0 03 0A 80 */ stfs f0, 0xa80(r3) /* 8028CE28 00289D88 4E 80 00 20 */ blr .global sub_8028ce2c sub_8028ce2c: /* 8028CE2C 00289D8C 94 21 FE C0 */ stwu r1, -0x140(r1) /* 8028CE30 00289D90 7C 08 02 A6 */ mflr r0 /* 8028CE34 00289D94 90 01 01 44 */ stw r0, 0x144(r1) /* 8028CE38 00289D98 BF 21 01 24 */ stmw r25, 0x124(r1) /* 8028CE3C 00289D9C 7C B9 2B 78 */ mr r25, r5 /* 8028CE40 00289DA0 7C DA 33 78 */ mr r26, r6 /* 8028CE44 00289DA4 7C 9E 23 78 */ mr r30, r4 /* 8028CE48 00289DA8 3B A1 00 B8 */ addi r29, r1, 0xb8 /* 8028CE4C 00289DAC 3B 81 00 FC */ addi r28, r1, 0xfc /* 8028CE50 00289DB0 3B 60 00 00 */ li r27, 0 /* 8028CE54 00289DB4 80 63 00 64 */ lwz r3, 0x64(r3) /* 8028CE58 00289DB8 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8028CE5C 00289DBC 48 00 01 D8 */ b lbl_8028D034 lbl_8028CE60: /* 8028CE60 00289DC0 80 9E 00 00 */ lwz r4, 0(r30) /* 8028CE64 00289DC4 38 61 00 7C */ addi r3, r1, 0x7c /* 8028CE68 00289DC8 4B D7 7E 51 */ bl string_l__4rstlFPCc /* 8028CE6C 00289DCC 7F E4 FB 78 */ mr r4, r31 /* 8028CE70 00289DD0 38 61 00 18 */ addi r3, r1, 0x18 /* 8028CE74 00289DD4 38 A1 00 7C */ addi r5, r1, 0x7c /* 8028CE78 00289DD8 4B DA 19 C1 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8028CE7C 00289DDC 88 01 00 18 */ lbz r0, 0x18(r1) /* 8028CE80 00289DE0 38 61 00 7C */ addi r3, r1, 0x7c /* 8028CE84 00289DE4 98 01 00 20 */ stb r0, 0x20(r1) /* 8028CE88 00289DE8 48 0B 0C 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028CE8C 00289DEC 80 9E 00 04 */ lwz r4, 4(r30) /* 8028CE90 00289DF0 38 61 00 6C */ addi r3, r1, 0x6c /* 8028CE94 00289DF4 4B D7 7E 25 */ bl string_l__4rstlFPCc /* 8028CE98 00289DF8 7F E4 FB 78 */ mr r4, r31 /* 8028CE9C 00289DFC 38 61 00 14 */ addi r3, r1, 0x14 /* 8028CEA0 00289E00 38 A1 00 6C */ addi r5, r1, 0x6c /* 8028CEA4 00289E04 4B DA 19 95 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8028CEA8 00289E08 88 01 00 14 */ lbz r0, 0x14(r1) /* 8028CEAC 00289E0C 38 61 00 6C */ addi r3, r1, 0x6c /* 8028CEB0 00289E10 98 01 00 1C */ stb r0, 0x1c(r1) /* 8028CEB4 00289E14 48 0B 0C 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028CEB8 00289E18 88 01 00 20 */ lbz r0, 0x20(r1) /* 8028CEBC 00289E1C 28 00 00 FF */ cmplwi r0, 0xff /* 8028CEC0 00289E20 41 82 01 6C */ beq lbl_8028D02C /* 8028CEC4 00289E24 88 01 00 1C */ lbz r0, 0x1c(r1) /* 8028CEC8 00289E28 28 00 00 FF */ cmplwi r0, 0xff /* 8028CECC 00289E2C 41 82 01 60 */ beq lbl_8028D02C /* 8028CED0 00289E30 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 8028CED4 00289E34 38 61 00 44 */ addi r3, r1, 0x44 /* 8028CED8 00289E38 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8028CEDC 00289E3C 38 C1 00 08 */ addi r6, r1, 8 /* 8028CEE0 00289E40 38 84 00 D0 */ addi r4, r4, 0xd0 /* 8028CEE4 00289E44 38 A0 FF FF */ li r5, -1 /* 8028CEE8 00289E48 48 0B 12 AD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCciRCQ24rstl17rmemory_allocator" /* 8028CEEC 00289E4C 7F 64 DB 78 */ mr r4, r27 /* 8028CEF0 00289E50 38 61 00 34 */ addi r3, r1, 0x34 /* 8028CEF4 00289E54 48 0B 19 A1 */ bl CreateFromInteger__13CStringExtrasFi /* 8028CEF8 00289E58 38 61 00 24 */ addi r3, r1, 0x24 /* 8028CEFC 00289E5C 38 81 00 44 */ addi r4, r1, 0x44 /* 8028CF00 00289E60 38 A1 00 34 */ addi r5, r1, 0x34 /* 8028CF04 00289E64 4B D7 7D 59 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8028CF08 00289E68 C0 BE 00 10 */ lfs f5, 0x10(r30) /* 8028CF0C 00289E6C 38 61 00 8C */ addi r3, r1, 0x8c /* 8028CF10 00289E70 C0 9E 00 0C */ lfs f4, 0xc(r30) /* 8028CF14 00289E74 38 81 00 10 */ addi r4, r1, 0x10 /* 8028CF18 00289E78 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028CF1C 00289E7C 38 A1 00 0C */ addi r5, r1, 0xc /* 8028CF20 00289E80 C0 3E 00 08 */ lfs f1, 8(r30) /* 8028CF24 00289E84 38 C1 00 60 */ addi r6, r1, 0x60 /* 8028CF28 00289E88 EC 44 00 32 */ fmuls f2, f4, f0 /* 8028CF2C 00289E8C 89 21 00 1C */ lbz r9, 0x1c(r1) /* 8028CF30 00289E90 EC 61 00 32 */ fmuls f3, f1, f0 /* 8028CF34 00289E94 88 01 00 20 */ lbz r0, 0x20(r1) /* 8028CF38 00289E98 EC 05 00 32 */ fmuls f0, f5, f0 /* 8028CF3C 00289E9C D0 21 00 54 */ stfs f1, 0x54(r1) /* 8028CF40 00289EA0 D0 81 00 58 */ stfs f4, 0x58(r1) /* 8028CF44 00289EA4 39 01 00 24 */ addi r8, r1, 0x24 /* 8028CF48 00289EA8 C0 22 BE C8 */ lfs f1, lbl_805ADBE8@sda21(r2) /* 8028CF4C 00289EAC 38 E0 00 01 */ li r7, 1 /* 8028CF50 00289EB0 D0 A1 00 5C */ stfs f5, 0x5c(r1) /* 8028CF54 00289EB4 D0 61 00 60 */ stfs f3, 0x60(r1) /* 8028CF58 00289EB8 D0 41 00 64 */ stfs f2, 0x64(r1) /* 8028CF5C 00289EBC D0 01 00 68 */ stfs f0, 0x68(r1) /* 8028CF60 00289EC0 99 21 00 0C */ stb r9, 0xc(r1) /* 8028CF64 00289EC4 98 01 00 10 */ stb r0, 0x10(r1) /* 8028CF68 00289EC8 4B F1 B6 6D */ bl "OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 8028CF6C 00289ECC 80 E1 00 8C */ lwz r7, 0x8c(r1) /* 8028CF70 00289ED0 7F 83 E3 78 */ mr r3, r28 /* 8028CF74 00289ED4 80 C1 00 90 */ lwz r6, 0x90(r1) /* 8028CF78 00289ED8 7F A4 EB 78 */ mr r4, r29 /* 8028CF7C 00289EDC 88 A1 00 94 */ lbz r5, 0x94(r1) /* 8028CF80 00289EE0 88 01 00 95 */ lbz r0, 0x95(r1) /* 8028CF84 00289EE4 C0 E1 00 98 */ lfs f7, 0x98(r1) /* 8028CF88 00289EE8 C0 C1 00 9C */ lfs f6, 0x9c(r1) /* 8028CF8C 00289EEC C0 A1 00 A0 */ lfs f5, 0xa0(r1) /* 8028CF90 00289EF0 C0 81 00 A4 */ lfs f4, 0xa4(r1) /* 8028CF94 00289EF4 C0 61 00 A8 */ lfs f3, 0xa8(r1) /* 8028CF98 00289EF8 C0 41 00 AC */ lfs f2, 0xac(r1) /* 8028CF9C 00289EFC C0 21 00 B0 */ lfs f1, 0xb0(r1) /* 8028CFA0 00289F00 C0 01 00 B4 */ lfs f0, 0xb4(r1) /* 8028CFA4 00289F04 90 E1 00 D0 */ stw r7, 0xd0(r1) /* 8028CFA8 00289F08 90 C1 00 D4 */ stw r6, 0xd4(r1) /* 8028CFAC 00289F0C 98 A1 00 D8 */ stb r5, 0xd8(r1) /* 8028CFB0 00289F10 98 01 00 D9 */ stb r0, 0xd9(r1) /* 8028CFB4 00289F14 D0 E1 00 DC */ stfs f7, 0xdc(r1) /* 8028CFB8 00289F18 D0 C1 00 E0 */ stfs f6, 0xe0(r1) /* 8028CFBC 00289F1C D0 A1 00 E4 */ stfs f5, 0xe4(r1) /* 8028CFC0 00289F20 D0 81 00 E8 */ stfs f4, 0xe8(r1) /* 8028CFC4 00289F24 D0 61 00 EC */ stfs f3, 0xec(r1) /* 8028CFC8 00289F28 D0 41 00 F0 */ stfs f2, 0xf0(r1) /* 8028CFCC 00289F2C D0 21 00 F4 */ stfs f1, 0xf4(r1) /* 8028CFD0 00289F30 D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 8028CFD4 00289F34 48 0B 11 8D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8028CFD8 00289F38 A0 01 00 C8 */ lhz r0, 0xc8(r1) /* 8028CFDC 00289F3C 28 1D 00 00 */ cmplwi r29, 0 /* 8028CFE0 00289F40 C0 01 00 CC */ lfs f0, 0xcc(r1) /* 8028CFE4 00289F44 B0 01 01 0C */ sth r0, 0x10c(r1) /* 8028CFE8 00289F48 D0 01 01 10 */ stfs f0, 0x110(r1) /* 8028CFEC 00289F4C 41 82 00 0C */ beq lbl_8028CFF8 /* 8028CFF0 00289F50 7F A3 EB 78 */ mr r3, r29 /* 8028CFF4 00289F54 48 0B 0A ED */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8028CFF8: /* 8028CFF8 00289F58 38 61 00 24 */ addi r3, r1, 0x24 /* 8028CFFC 00289F5C 48 0B 0A E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028D000 00289F60 38 61 00 34 */ addi r3, r1, 0x34 /* 8028D004 00289F64 48 0B 0A DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028D008 00289F68 38 61 00 44 */ addi r3, r1, 0x44 /* 8028D00C 00289F6C 48 0B 0A D5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028D010 00289F70 7F 43 D3 78 */ mr r3, r26 /* 8028D014 00289F74 38 81 00 D0 */ addi r4, r1, 0xd0 /* 8028D018 00289F78 4B EC 92 19 */ bl sub_80156230 /* 8028D01C 00289F7C 28 1C 00 00 */ cmplwi r28, 0 /* 8028D020 00289F80 41 82 00 0C */ beq lbl_8028D02C /* 8028D024 00289F84 7F 83 E3 78 */ mr r3, r28 /* 8028D028 00289F88 48 0B 0A B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8028D02C: /* 8028D02C 00289F8C 3B DE 00 14 */ addi r30, r30, 0x14 /* 8028D030 00289F90 3B 7B 00 01 */ addi r27, r27, 1 lbl_8028D034: /* 8028D034 00289F94 7C 1B C8 00 */ cmpw r27, r25 /* 8028D038 00289F98 41 80 FE 28 */ blt lbl_8028CE60 /* 8028D03C 00289F9C BB 21 01 24 */ lmw r25, 0x124(r1) /* 8028D040 00289FA0 80 01 01 44 */ lwz r0, 0x144(r1) /* 8028D044 00289FA4 7C 08 03 A6 */ mtlr r0 /* 8028D048 00289FA8 38 21 01 40 */ addi r1, r1, 0x140 /* 8028D04C 00289FAC 4E 80 00 20 */ blr .global sub_8028d050 sub_8028d050: /* 8028D050 00289FB0 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 8028D054 00289FB4 7C 08 02 A6 */ mflr r0 /* 8028D058 00289FB8 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8028D05C 00289FBC BF 21 00 C4 */ stmw r25, 0xc4(r1) /* 8028D060 00289FC0 7C B9 2B 78 */ mr r25, r5 /* 8028D064 00289FC4 7C DA 33 78 */ mr r26, r6 /* 8028D068 00289FC8 7C 9E 23 78 */ mr r30, r4 /* 8028D06C 00289FCC 3B A1 00 60 */ addi r29, r1, 0x60 /* 8028D070 00289FD0 3B 81 00 A4 */ addi r28, r1, 0xa4 /* 8028D074 00289FD4 3B 60 00 00 */ li r27, 0 /* 8028D078 00289FD8 80 63 00 64 */ lwz r3, 0x64(r3) /* 8028D07C 00289FDC 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8028D080 00289FE0 48 00 01 20 */ b lbl_8028D1A0 lbl_8028D084: /* 8028D084 00289FE4 80 9E 00 00 */ lwz r4, 0(r30) /* 8028D088 00289FE8 38 61 00 24 */ addi r3, r1, 0x24 /* 8028D08C 00289FEC 4B D7 7C 2D */ bl string_l__4rstlFPCc /* 8028D090 00289FF0 7F E4 FB 78 */ mr r4, r31 /* 8028D094 00289FF4 38 61 00 0C */ addi r3, r1, 0xc /* 8028D098 00289FF8 38 A1 00 24 */ addi r5, r1, 0x24 /* 8028D09C 00289FFC 4B DA 17 9D */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8028D0A0 0028A000 88 01 00 0C */ lbz r0, 0xc(r1) /* 8028D0A4 0028A004 38 61 00 24 */ addi r3, r1, 0x24 /* 8028D0A8 0028A008 98 01 00 10 */ stb r0, 0x10(r1) /* 8028D0AC 0028A00C 48 0B 0A 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028D0B0 0028A010 88 01 00 10 */ lbz r0, 0x10(r1) /* 8028D0B4 0028A014 28 00 00 FF */ cmplwi r0, 0xff /* 8028D0B8 0028A018 41 82 00 E0 */ beq lbl_8028D198 /* 8028D0BC 0028A01C 80 9E 00 00 */ lwz r4, 0(r30) /* 8028D0C0 0028A020 38 61 00 14 */ addi r3, r1, 0x14 /* 8028D0C4 0028A024 4B D7 7B F5 */ bl string_l__4rstlFPCc /* 8028D0C8 0028A028 88 01 00 10 */ lbz r0, 0x10(r1) /* 8028D0CC 0028A02C 38 61 00 34 */ addi r3, r1, 0x34 /* 8028D0D0 0028A030 C0 3E 00 04 */ lfs f1, 4(r30) /* 8028D0D4 0028A034 38 81 00 08 */ addi r4, r1, 8 /* 8028D0D8 0028A038 98 01 00 08 */ stb r0, 8(r1) /* 8028D0DC 0028A03C 38 A1 00 14 */ addi r5, r1, 0x14 /* 8028D0E0 0028A040 C0 42 BE C8 */ lfs f2, lbl_805ADBE8@sda21(r2) /* 8028D0E4 0028A044 4B F1 B7 29 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 8028D0E8 0028A048 80 E1 00 34 */ lwz r7, 0x34(r1) /* 8028D0EC 0028A04C 7F 83 E3 78 */ mr r3, r28 /* 8028D0F0 0028A050 80 C1 00 38 */ lwz r6, 0x38(r1) /* 8028D0F4 0028A054 7F A4 EB 78 */ mr r4, r29 /* 8028D0F8 0028A058 88 A1 00 3C */ lbz r5, 0x3c(r1) /* 8028D0FC 0028A05C 88 01 00 3D */ lbz r0, 0x3d(r1) /* 8028D100 0028A060 C0 E1 00 40 */ lfs f7, 0x40(r1) /* 8028D104 0028A064 C0 C1 00 44 */ lfs f6, 0x44(r1) /* 8028D108 0028A068 C0 A1 00 48 */ lfs f5, 0x48(r1) /* 8028D10C 0028A06C C0 81 00 4C */ lfs f4, 0x4c(r1) /* 8028D110 0028A070 C0 61 00 50 */ lfs f3, 0x50(r1) /* 8028D114 0028A074 C0 41 00 54 */ lfs f2, 0x54(r1) /* 8028D118 0028A078 C0 21 00 58 */ lfs f1, 0x58(r1) /* 8028D11C 0028A07C C0 01 00 5C */ lfs f0, 0x5c(r1) /* 8028D120 0028A080 90 E1 00 78 */ stw r7, 0x78(r1) /* 8028D124 0028A084 90 C1 00 7C */ stw r6, 0x7c(r1) /* 8028D128 0028A088 98 A1 00 80 */ stb r5, 0x80(r1) /* 8028D12C 0028A08C 98 01 00 81 */ stb r0, 0x81(r1) /* 8028D130 0028A090 D0 E1 00 84 */ stfs f7, 0x84(r1) /* 8028D134 0028A094 D0 C1 00 88 */ stfs f6, 0x88(r1) /* 8028D138 0028A098 D0 A1 00 8C */ stfs f5, 0x8c(r1) /* 8028D13C 0028A09C D0 81 00 90 */ stfs f4, 0x90(r1) /* 8028D140 0028A0A0 D0 61 00 94 */ stfs f3, 0x94(r1) /* 8028D144 0028A0A4 D0 41 00 98 */ stfs f2, 0x98(r1) /* 8028D148 0028A0A8 D0 21 00 9C */ stfs f1, 0x9c(r1) /* 8028D14C 0028A0AC D0 01 00 A0 */ stfs f0, 0xa0(r1) /* 8028D150 0028A0B0 48 0B 10 11 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 8028D154 0028A0B4 A0 01 00 70 */ lhz r0, 0x70(r1) /* 8028D158 0028A0B8 28 1D 00 00 */ cmplwi r29, 0 /* 8028D15C 0028A0BC C0 01 00 74 */ lfs f0, 0x74(r1) /* 8028D160 0028A0C0 B0 01 00 B4 */ sth r0, 0xb4(r1) /* 8028D164 0028A0C4 D0 01 00 B8 */ stfs f0, 0xb8(r1) /* 8028D168 0028A0C8 41 82 00 0C */ beq lbl_8028D174 /* 8028D16C 0028A0CC 7F A3 EB 78 */ mr r3, r29 /* 8028D170 0028A0D0 48 0B 09 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8028D174: /* 8028D174 0028A0D4 38 61 00 14 */ addi r3, r1, 0x14 /* 8028D178 0028A0D8 48 0B 09 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028D17C 0028A0DC 7F 43 D3 78 */ mr r3, r26 /* 8028D180 0028A0E0 38 81 00 78 */ addi r4, r1, 0x78 /* 8028D184 0028A0E4 4B EC 90 AD */ bl sub_80156230 /* 8028D188 0028A0E8 28 1C 00 00 */ cmplwi r28, 0 /* 8028D18C 0028A0EC 41 82 00 0C */ beq lbl_8028D198 /* 8028D190 0028A0F0 7F 83 E3 78 */ mr r3, r28 /* 8028D194 0028A0F4 48 0B 09 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8028D198: /* 8028D198 0028A0F8 3B DE 00 08 */ addi r30, r30, 8 /* 8028D19C 0028A0FC 3B 7B 00 01 */ addi r27, r27, 1 lbl_8028D1A0: /* 8028D1A0 0028A100 7C 1B C8 00 */ cmpw r27, r25 /* 8028D1A4 0028A104 41 80 FE E0 */ blt lbl_8028D084 /* 8028D1A8 0028A108 BB 21 00 C4 */ lmw r25, 0xc4(r1) /* 8028D1AC 0028A10C 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8028D1B0 0028A110 7C 08 03 A6 */ mtlr r0 /* 8028D1B4 0028A114 38 21 00 E0 */ addi r1, r1, 0xe0 /* 8028D1B8 0028A118 4E 80 00 20 */ blr .global sub_8028d1bc sub_8028d1bc: /* 8028D1BC 0028A11C 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8028D1C0 0028A120 7C 08 02 A6 */ mflr r0 /* 8028D1C4 0028A124 90 01 00 64 */ stw r0, 0x64(r1) /* 8028D1C8 0028A128 BE A1 00 34 */ stmw r21, 0x34(r1) /* 8028D1CC 0028A12C 7C 79 1B 78 */ mr r25, r3 /* 8028D1D0 0028A130 7C 9A 23 78 */ mr r26, r4 /* 8028D1D4 0028A134 7C BB 2B 78 */ mr r27, r5 /* 8028D1D8 0028A138 3B A0 00 00 */ li r29, 0 /* 8028D1DC 0028A13C 48 00 01 20 */ b lbl_8028D2FC lbl_8028D1E0: /* 8028D1E0 0028A140 80 7A 00 00 */ lwz r3, 0(r26) /* 8028D1E4 0028A144 7F A4 EB 78 */ mr r4, r29 /* 8028D1E8 0028A148 4B F1 A0 51 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi /* 8028D1EC 0028A14C A0 03 00 3C */ lhz r0, 0x3c(r3) /* 8028D1F0 0028A150 7F 63 DB 78 */ mr r3, r27 /* 8028D1F4 0028A154 38 81 00 08 */ addi r4, r1, 8 /* 8028D1F8 0028A158 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028D1FC 0028A15C B0 01 00 08 */ sth r0, 8(r1) /* 8028D200 0028A160 4B DB F3 75 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028D204 0028A164 7C 7C 1B 79 */ or. r28, r3, r3 /* 8028D208 0028A168 41 82 00 F0 */ beq lbl_8028D2F8 /* 8028D20C 0028A16C 7F 65 DB 78 */ mr r5, r27 /* 8028D210 0028A170 38 80 00 1B */ li r4, 0x1b /* 8028D214 0028A174 4B DC 71 3D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D218 0028A178 7F 83 E3 78 */ mr r3, r28 /* 8028D21C 0028A17C 7F 65 DB 78 */ mr r5, r27 /* 8028D220 0028A180 38 80 00 15 */ li r4, 0x15 /* 8028D224 0028A184 4B DC 71 2D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D228 0028A188 7F 83 E3 78 */ mr r3, r28 /* 8028D22C 0028A18C 7F 65 DB 78 */ mr r5, r27 /* 8028D230 0028A190 38 80 00 35 */ li r4, 0x35 /* 8028D234 0028A194 4B DC 71 1D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D238 0028A198 7F 83 E3 78 */ mr r3, r28 /* 8028D23C 0028A19C 7F 65 DB 78 */ mr r5, r27 /* 8028D240 0028A1A0 38 80 00 2B */ li r4, 0x2b /* 8028D244 0028A1A4 4B DC 71 0D */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D248 0028A1A8 7F 23 CB 78 */ mr r3, r25 /* 8028D24C 0028A1AC 4B DC 66 71 */ bl GetMaterialFilter__6CActorCFv /* 8028D250 0028A1B0 83 E3 00 00 */ lwz r31, 0(r3) /* 8028D254 0028A1B4 83 03 00 04 */ lwz r24, 4(r3) /* 8028D258 0028A1B8 7F 23 CB 78 */ mr r3, r25 /* 8028D25C 0028A1BC 4B DC 66 61 */ bl GetMaterialFilter__6CActorCFv /* 8028D260 0028A1C0 82 E3 00 08 */ lwz r23, 8(r3) /* 8028D264 0028A1C4 82 C3 00 0C */ lwz r22, 0xc(r3) /* 8028D268 0028A1C8 7F 83 E3 78 */ mr r3, r28 /* 8028D26C 0028A1CC 4B DC 66 51 */ bl GetMaterialFilter__6CActorCFv /* 8028D270 0028A1D0 82 A3 00 00 */ lwz r21, 0(r3) /* 8028D274 0028A1D4 83 C3 00 04 */ lwz r30, 4(r3) /* 8028D278 0028A1D8 7F 83 E3 78 */ mr r3, r28 /* 8028D27C 0028A1DC 4B DC 66 41 */ bl GetMaterialFilter__6CActorCFv /* 8028D280 0028A1E0 38 00 FF FE */ li r0, -2 /* 8028D284 0028A1E4 39 00 FF FF */ li r8, -1 /* 8028D288 0028A1E8 7E E7 00 38 */ and r7, r23, r0 /* 8028D28C 0028A1EC 3C C0 00 02 */ lis r6, 2 /* 8028D290 0028A1F0 62 A0 00 01 */ ori r0, r21, 1 /* 8028D294 0028A1F4 80 83 00 08 */ lwz r4, 8(r3) /* 8028D298 0028A1F8 80 A3 00 0C */ lwz r5, 0xc(r3) /* 8028D29C 0028A1FC 7E C8 40 38 */ and r8, r22, r8 /* 8028D2A0 0028A200 7C E6 33 78 */ or r6, r7, r6 /* 8028D2A4 0028A204 7F 03 F3 78 */ or r3, r24, r30 /* 8028D2A8 0028A208 7D 07 2B 78 */ or r7, r8, r5 /* 8028D2AC 0028A20C 7F E5 03 78 */ or r5, r31, r0 /* 8028D2B0 0028A210 7C C6 23 78 */ or r6, r6, r4 /* 8028D2B4 0028A214 38 00 00 03 */ li r0, 3 /* 8028D2B8 0028A218 90 61 00 14 */ stw r3, 0x14(r1) /* 8028D2BC 0028A21C 7F 83 E3 78 */ mr r3, r28 /* 8028D2C0 0028A220 38 81 00 10 */ addi r4, r1, 0x10 /* 8028D2C4 0028A224 90 A1 00 10 */ stw r5, 0x10(r1) /* 8028D2C8 0028A228 90 E1 00 1C */ stw r7, 0x1c(r1) /* 8028D2CC 0028A22C 90 C1 00 18 */ stw r6, 0x18(r1) /* 8028D2D0 0028A230 90 01 00 20 */ stw r0, 0x20(r1) /* 8028D2D4 0028A234 4B DC 65 CD */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter /* 8028D2D8 0028A238 7F 83 E3 78 */ mr r3, r28 /* 8028D2DC 0028A23C 7F 65 DB 78 */ mr r5, r27 /* 8028D2E0 0028A240 38 80 00 12 */ li r4, 0x12 /* 8028D2E4 0028A244 4B DC 6C 9D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D2E8 0028A248 3C 80 80 57 */ lis r4, sReflectVulnerability__20CDamageVulnerability@ha /* 8028D2EC 0028A24C 7F 83 E3 78 */ mr r3, r28 /* 8028D2F0 0028A250 38 84 D7 80 */ addi r4, r4, sReflectVulnerability__20CDamageVulnerability@l /* 8028D2F4 0028A254 4B F1 B8 A5 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability lbl_8028D2F8: /* 8028D2F8 0028A258 3B BD 00 01 */ addi r29, r29, 1 lbl_8028D2FC: /* 8028D2FC 0028A25C 80 7A 00 00 */ lwz r3, 0(r26) /* 8028D300 0028A260 4B F1 9F 49 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv /* 8028D304 0028A264 7C 1D 18 40 */ cmplw r29, r3 /* 8028D308 0028A268 41 80 FE D8 */ blt lbl_8028D1E0 /* 8028D30C 0028A26C BA A1 00 34 */ lmw r21, 0x34(r1) /* 8028D310 0028A270 80 01 00 64 */ lwz r0, 0x64(r1) /* 8028D314 0028A274 7C 08 03 A6 */ mtlr r0 /* 8028D318 0028A278 38 21 00 60 */ addi r1, r1, 0x60 /* 8028D31C 0028A27C 4E 80 00 20 */ blr .global sub_8028d320 sub_8028d320: /* 8028D320 0028A280 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8028D324 0028A284 7C 08 02 A6 */ mflr r0 /* 8028D328 0028A288 90 01 00 64 */ stw r0, 0x64(r1) /* 8028D32C 0028A28C BE A1 00 34 */ stmw r21, 0x34(r1) /* 8028D330 0028A290 7C 7B 1B 78 */ mr r27, r3 /* 8028D334 0028A294 7C 9C 23 78 */ mr r28, r4 /* 8028D338 0028A298 7C BD 2B 78 */ mr r29, r5 /* 8028D33C 0028A29C 3B E0 00 00 */ li r31, 0 /* 8028D340 0028A2A0 48 00 00 FC */ b lbl_8028D43C lbl_8028D344: /* 8028D344 0028A2A4 80 7C 00 00 */ lwz r3, 0(r28) /* 8028D348 0028A2A8 7F E4 FB 78 */ mr r4, r31 /* 8028D34C 0028A2AC 4B F1 9E ED */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi /* 8028D350 0028A2B0 A0 03 00 3C */ lhz r0, 0x3c(r3) /* 8028D354 0028A2B4 7F A3 EB 78 */ mr r3, r29 /* 8028D358 0028A2B8 38 81 00 08 */ addi r4, r1, 8 /* 8028D35C 0028A2BC B0 01 00 0C */ sth r0, 0xc(r1) /* 8028D360 0028A2C0 B0 01 00 08 */ sth r0, 8(r1) /* 8028D364 0028A2C4 4B DB F2 11 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028D368 0028A2C8 7C 7E 1B 79 */ or. r30, r3, r3 /* 8028D36C 0028A2CC 41 82 00 CC */ beq lbl_8028D438 /* 8028D370 0028A2D0 7F A5 EB 78 */ mr r5, r29 /* 8028D374 0028A2D4 38 80 00 1B */ li r4, 0x1b /* 8028D378 0028A2D8 4B DC 6F D9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D37C 0028A2DC 7F C3 F3 78 */ mr r3, r30 /* 8028D380 0028A2E0 7F A5 EB 78 */ mr r5, r29 /* 8028D384 0028A2E4 38 80 00 15 */ li r4, 0x15 /* 8028D388 0028A2E8 4B DC 6F C9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D38C 0028A2EC 7F C3 F3 78 */ mr r3, r30 /* 8028D390 0028A2F0 7F A5 EB 78 */ mr r5, r29 /* 8028D394 0028A2F4 38 80 00 35 */ li r4, 0x35 /* 8028D398 0028A2F8 4B DC 6F B9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D39C 0028A2FC 7F C3 F3 78 */ mr r3, r30 /* 8028D3A0 0028A300 7F A5 EB 78 */ mr r5, r29 /* 8028D3A4 0028A304 38 80 00 2B */ li r4, 0x2b /* 8028D3A8 0028A308 4B DC 6F A9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028D3AC 0028A30C 7F 63 DB 78 */ mr r3, r27 /* 8028D3B0 0028A310 4B DC 65 0D */ bl GetMaterialFilter__6CActorCFv /* 8028D3B4 0028A314 83 43 00 00 */ lwz r26, 0(r3) /* 8028D3B8 0028A318 83 23 00 04 */ lwz r25, 4(r3) /* 8028D3BC 0028A31C 7F 63 DB 78 */ mr r3, r27 /* 8028D3C0 0028A320 4B DC 64 FD */ bl GetMaterialFilter__6CActorCFv /* 8028D3C4 0028A324 83 03 00 08 */ lwz r24, 8(r3) /* 8028D3C8 0028A328 82 E3 00 0C */ lwz r23, 0xc(r3) /* 8028D3CC 0028A32C 7F C3 F3 78 */ mr r3, r30 /* 8028D3D0 0028A330 4B DC 64 ED */ bl GetMaterialFilter__6CActorCFv /* 8028D3D4 0028A334 82 C3 00 00 */ lwz r22, 0(r3) /* 8028D3D8 0028A338 82 A3 00 04 */ lwz r21, 4(r3) /* 8028D3DC 0028A33C 7F C3 F3 78 */ mr r3, r30 /* 8028D3E0 0028A340 4B DC 64 DD */ bl GetMaterialFilter__6CActorCFv /* 8028D3E4 0028A344 80 83 00 0C */ lwz r4, 0xc(r3) /* 8028D3E8 0028A348 3C A0 00 02 */ lis r5, 2 /* 8028D3EC 0028A34C 80 03 00 08 */ lwz r0, 8(r3) /* 8028D3F0 0028A350 7F 05 2B 78 */ or r5, r24, r5 /* 8028D3F4 0028A354 7E E7 23 78 */ or r7, r23, r4 /* 8028D3F8 0028A358 7F 23 AB 78 */ or r3, r25, r21 /* 8028D3FC 0028A35C 7C A6 03 78 */ or r6, r5, r0 /* 8028D400 0028A360 7F 45 B3 78 */ or r5, r26, r22 /* 8028D404 0028A364 38 00 00 03 */ li r0, 3 /* 8028D408 0028A368 90 61 00 14 */ stw r3, 0x14(r1) /* 8028D40C 0028A36C 7F C3 F3 78 */ mr r3, r30 /* 8028D410 0028A370 38 81 00 10 */ addi r4, r1, 0x10 /* 8028D414 0028A374 90 A1 00 10 */ stw r5, 0x10(r1) /* 8028D418 0028A378 90 E1 00 1C */ stw r7, 0x1c(r1) /* 8028D41C 0028A37C 90 C1 00 18 */ stw r6, 0x18(r1) /* 8028D420 0028A380 90 01 00 20 */ stw r0, 0x20(r1) /* 8028D424 0028A384 4B DC 64 7D */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter /* 8028D428 0028A388 7F C3 F3 78 */ mr r3, r30 /* 8028D42C 0028A38C 7F A5 EB 78 */ mr r5, r29 /* 8028D430 0028A390 38 80 00 12 */ li r4, 0x12 /* 8028D434 0028A394 4B DC 6B 4D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_8028D438: /* 8028D438 0028A398 3B FF 00 01 */ addi r31, r31, 1 lbl_8028D43C: /* 8028D43C 0028A39C 80 7C 00 00 */ lwz r3, 0(r28) /* 8028D440 0028A3A0 4B F1 9E 09 */ bl GetNumCollisionActors__22CCollisionActorManagerCFv /* 8028D444 0028A3A4 7C 1F 18 40 */ cmplw r31, r3 /* 8028D448 0028A3A8 41 80 FE FC */ blt lbl_8028D344 /* 8028D44C 0028A3AC BA A1 00 34 */ lmw r21, 0x34(r1) /* 8028D450 0028A3B0 80 01 00 64 */ lwz r0, 0x64(r1) /* 8028D454 0028A3B4 7C 08 03 A6 */ mtlr r0 /* 8028D458 0028A3B8 38 21 00 60 */ addi r1, r1, 0x60 /* 8028D45C 0028A3BC 4E 80 00 20 */ blr .global sub_8028d460 sub_8028d460: /* 8028D460 0028A3C0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8028D464 0028A3C4 7C 08 02 A6 */ mflr r0 /* 8028D468 0028A3C8 90 01 00 64 */ stw r0, 0x64(r1) /* 8028D46C 0028A3CC 38 00 00 00 */ li r0, 0 /* 8028D470 0028A3D0 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8028D474 0028A3D4 7C 9F 23 78 */ mr r31, r4 /* 8028D478 0028A3D8 38 80 00 01 */ li r4, 1 /* 8028D47C 0028A3DC 93 C1 00 58 */ stw r30, 0x58(r1) /* 8028D480 0028A3E0 7C 7E 1B 78 */ mr r30, r3 /* 8028D484 0028A3E4 38 61 00 3C */ addi r3, r1, 0x3c /* 8028D488 0028A3E8 93 A1 00 54 */ stw r29, 0x54(r1) /* 8028D48C 0028A3EC 93 81 00 50 */ stw r28, 0x50(r1) /* 8028D490 0028A3F0 90 01 00 40 */ stw r0, 0x40(r1) /* 8028D494 0028A3F4 90 01 00 44 */ stw r0, 0x44(r1) /* 8028D498 0028A3F8 90 01 00 48 */ stw r0, 0x48(r1) /* 8028D49C 0028A3FC 4B EC 93 1D */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" /* 8028D4A0 0028A400 7F C3 F3 78 */ mr r3, r30 /* 8028D4A4 0028A404 38 C1 00 3C */ addi r6, r1, 0x3c /* 8028D4A8 0028A408 38 82 BE 94 */ addi r4, r2, lbl_805ADBB4@sda21 /* 8028D4AC 0028A40C 38 A0 00 01 */ li r5, 1 /* 8028D4B0 0028A410 4B FF FB A1 */ bl sub_8028d050 /* 8028D4B4 0028A414 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 8028D4B8 0028A418 38 60 00 18 */ li r3, 0x18 /* 8028D4BC 0028A41C 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8028D4C0 0028A420 38 A0 00 00 */ li r5, 0 /* 8028D4C4 0028A424 38 84 00 C9 */ addi r4, r4, 0xc9 /* 8028D4C8 0028A428 48 08 83 A5 */ bl __nw__FUlPCcPCc /* 8028D4CC 0028A42C 7C 7D 1B 79 */ or. r29, r3, r3 /* 8028D4D0 0028A430 41 82 00 38 */ beq lbl_8028D508 /* 8028D4D4 0028A434 81 3E 00 04 */ lwz r9, 4(r30) /* 8028D4D8 0028A438 7F E4 FB 78 */ mr r4, r31 /* 8028D4DC 0028A43C 38 A1 00 18 */ addi r5, r1, 0x18 /* 8028D4E0 0028A440 38 C1 00 28 */ addi r6, r1, 0x28 /* 8028D4E4 0028A444 91 21 00 28 */ stw r9, 0x28(r1) /* 8028D4E8 0028A448 38 E1 00 3C */ addi r7, r1, 0x3c /* 8028D4EC 0028A44C 39 00 00 01 */ li r8, 1 /* 8028D4F0 0028A450 A0 1E 00 08 */ lhz r0, 8(r30) /* 8028D4F4 0028A454 91 21 00 24 */ stw r9, 0x24(r1) /* 8028D4F8 0028A458 B0 01 00 14 */ sth r0, 0x14(r1) /* 8028D4FC 0028A45C B0 01 00 18 */ sth r0, 0x18(r1) /* 8028D500 0028A460 4B F1 A4 31 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" /* 8028D504 0028A464 7C 7D 1B 78 */ mr r29, r3 lbl_8028D508: /* 8028D508 0028A468 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028D50C 0028A46C 38 80 00 01 */ li r4, 1 /* 8028D510 0028A470 4B F1 A3 CD */ bl __dt__22CCollisionActorManagerFv /* 8028D514 0028A474 93 BE 0A 38 */ stw r29, 0xa38(r30) /* 8028D518 0028A478 7F C3 F3 78 */ mr r3, r30 /* 8028D51C 0028A47C 7F E5 FB 78 */ mr r5, r31 /* 8028D520 0028A480 38 9E 0A 38 */ addi r4, r30, 0xa38 /* 8028D524 0028A484 4B FF FD FD */ bl sub_8028d320 /* 8028D528 0028A488 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028D52C 0028A48C 38 80 00 00 */ li r4, 0 /* 8028D530 0028A490 4B F1 9D 09 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi /* 8028D534 0028A494 A0 03 00 3C */ lhz r0, 0x3c(r3) /* 8028D538 0028A498 7F E3 FB 78 */ mr r3, r31 /* 8028D53C 0028A49C 38 81 00 10 */ addi r4, r1, 0x10 /* 8028D540 0028A4A0 B0 1E 0A 46 */ sth r0, 0xa46(r30) /* 8028D544 0028A4A4 A0 1E 0A 46 */ lhz r0, 0xa46(r30) /* 8028D548 0028A4A8 B0 01 00 10 */ sth r0, 0x10(r1) /* 8028D54C 0028A4AC 4B DB F0 29 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028D550 0028A4B0 7C 7C 1B 79 */ or. r28, r3, r3 /* 8028D554 0028A4B4 41 82 00 48 */ beq lbl_8028D59C /* 8028D558 0028A4B8 7F C3 F3 78 */ mr r3, r30 /* 8028D55C 0028A4BC 7F E4 FB 78 */ mr r4, r31 /* 8028D560 0028A4C0 81 9E 00 00 */ lwz r12, 0(r30) /* 8028D564 0028A4C4 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028D568 0028A4C8 7D 89 03 A6 */ mtctr r12 /* 8028D56C 0028A4CC 4E 80 04 21 */ bctrl /* 8028D570 0028A4D0 7C 7D 1B 78 */ mr r29, r3 /* 8028D574 0028A4D4 7F 83 E3 78 */ mr r3, r28 /* 8028D578 0028A4D8 81 9C 00 00 */ lwz r12, 0(r28) /* 8028D57C 0028A4DC 7F E4 FB 78 */ mr r4, r31 /* 8028D580 0028A4E0 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028D584 0028A4E4 7D 89 03 A6 */ mtctr r12 /* 8028D588 0028A4E8 4E 80 04 21 */ bctrl /* 8028D58C 0028A4EC C0 1D 00 00 */ lfs f0, 0(r29) /* 8028D590 0028A4F0 D0 03 00 00 */ stfs f0, 0(r3) /* 8028D594 0028A4F4 C0 1D 00 04 */ lfs f0, 4(r29) /* 8028D598 0028A4F8 D0 03 00 04 */ stfs f0, 4(r3) lbl_8028D59C: /* 8028D59C 0028A4FC 38 00 00 00 */ li r0, 0 /* 8028D5A0 0028A500 38 61 00 2C */ addi r3, r1, 0x2c /* 8028D5A4 0028A504 90 01 00 30 */ stw r0, 0x30(r1) /* 8028D5A8 0028A508 38 80 00 0B */ li r4, 0xb /* 8028D5AC 0028A50C 90 01 00 34 */ stw r0, 0x34(r1) /* 8028D5B0 0028A510 90 01 00 38 */ stw r0, 0x38(r1) /* 8028D5B4 0028A514 4B EC 92 05 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi" /* 8028D5B8 0028A518 3C 80 80 3D */ lis r4, lbl_803D5998@ha /* 8028D5BC 0028A51C 7F C3 F3 78 */ mr r3, r30 /* 8028D5C0 0028A520 38 84 59 98 */ addi r4, r4, lbl_803D5998@l /* 8028D5C4 0028A524 38 C1 00 2C */ addi r6, r1, 0x2c /* 8028D5C8 0028A528 38 A0 00 0B */ li r5, 0xb /* 8028D5CC 0028A52C 4B FF F8 61 */ bl sub_8028ce2c /* 8028D5D0 0028A530 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 8028D5D4 0028A534 38 60 00 18 */ li r3, 0x18 /* 8028D5D8 0028A538 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8028D5DC 0028A53C 38 A0 00 00 */ li r5, 0 /* 8028D5E0 0028A540 38 84 00 C9 */ addi r4, r4, 0xc9 /* 8028D5E4 0028A544 48 08 82 89 */ bl __nw__FUlPCcPCc /* 8028D5E8 0028A548 7C 7D 1B 79 */ or. r29, r3, r3 /* 8028D5EC 0028A54C 41 82 00 38 */ beq lbl_8028D624 /* 8028D5F0 0028A550 81 3E 00 04 */ lwz r9, 4(r30) /* 8028D5F4 0028A554 7F E4 FB 78 */ mr r4, r31 /* 8028D5F8 0028A558 38 A1 00 0C */ addi r5, r1, 0xc /* 8028D5FC 0028A55C 38 C1 00 20 */ addi r6, r1, 0x20 /* 8028D600 0028A560 91 21 00 20 */ stw r9, 0x20(r1) /* 8028D604 0028A564 38 E1 00 2C */ addi r7, r1, 0x2c /* 8028D608 0028A568 39 00 00 01 */ li r8, 1 /* 8028D60C 0028A56C A0 1E 00 08 */ lhz r0, 8(r30) /* 8028D610 0028A570 91 21 00 1C */ stw r9, 0x1c(r1) /* 8028D614 0028A574 B0 01 00 08 */ sth r0, 8(r1) /* 8028D618 0028A578 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028D61C 0028A57C 4B F1 A3 15 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b" /* 8028D620 0028A580 7C 7D 1B 78 */ mr r29, r3 lbl_8028D624: /* 8028D624 0028A584 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028D628 0028A588 38 80 00 01 */ li r4, 1 /* 8028D62C 0028A58C 4B F1 A2 B1 */ bl __dt__22CCollisionActorManagerFv /* 8028D630 0028A590 93 BE 0A 9C */ stw r29, 0xa9c(r30) /* 8028D634 0028A594 7F C3 F3 78 */ mr r3, r30 /* 8028D638 0028A598 7F E5 FB 78 */ mr r5, r31 /* 8028D63C 0028A59C 38 9E 0A 9C */ addi r4, r30, 0xa9c /* 8028D640 0028A5A0 4B FF FB 7D */ bl sub_8028d1bc /* 8028D644 0028A5A4 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028D648 0028A5A8 38 80 00 00 */ li r4, 0 /* 8028D64C 0028A5AC 4B F1 9B ED */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi /* 8028D650 0028A5B0 A0 03 00 3C */ lhz r0, 0x3c(r3) /* 8028D654 0028A5B4 38 61 00 2C */ addi r3, r1, 0x2c /* 8028D658 0028A5B8 38 80 FF FF */ li r4, -1 /* 8028D65C 0028A5BC B0 1E 0A 48 */ sth r0, 0xa48(r30) /* 8028D660 0028A5C0 4B EC 8C CD */ bl sub_8015632c /* 8028D664 0028A5C4 38 61 00 3C */ addi r3, r1, 0x3c /* 8028D668 0028A5C8 38 80 FF FF */ li r4, -1 /* 8028D66C 0028A5CC 4B EC 8C C1 */ bl sub_8015632c /* 8028D670 0028A5D0 80 01 00 64 */ lwz r0, 0x64(r1) /* 8028D674 0028A5D4 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8028D678 0028A5D8 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8028D67C 0028A5DC 83 A1 00 54 */ lwz r29, 0x54(r1) /* 8028D680 0028A5E0 83 81 00 50 */ lwz r28, 0x50(r1) /* 8028D684 0028A5E4 7C 08 03 A6 */ mtlr r0 /* 8028D688 0028A5E8 38 21 00 60 */ addi r1, r1, 0x60 /* 8028D68C 0028A5EC 4E 80 00 20 */ blr .global sub_8028d690 sub_8028d690: /* 8028D690 0028A5F0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028D694 0028A5F4 7C 08 02 A6 */ mflr r0 /* 8028D698 0028A5F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8028D69C 0028A5FC DB E1 00 10 */ stfd f31, 0x10(r1) /* 8028D6A0 0028A600 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 8028D6A4 0028A604 93 E1 00 0C */ stw r31, 0xc(r1) /* 8028D6A8 0028A608 7C 7F 1B 78 */ mr r31, r3 /* 8028D6AC 0028A60C FF E0 08 90 */ fmr f31, f1 /* 8028D6B0 0028A610 80 03 0A 30 */ lwz r0, 0xa30(r3) /* 8028D6B4 0028A614 2C 00 00 02 */ cmpwi r0, 2 /* 8028D6B8 0028A618 41 82 00 CC */ beq lbl_8028D784 /* 8028D6BC 0028A61C 40 80 00 10 */ bge lbl_8028D6CC /* 8028D6C0 0028A620 2C 00 00 01 */ cmpwi r0, 1 /* 8028D6C4 0028A624 40 80 00 14 */ bge lbl_8028D6D8 /* 8028D6C8 0028A628 48 00 00 F8 */ b lbl_8028D7C0 lbl_8028D6CC: /* 8028D6CC 0028A62C 2C 00 00 04 */ cmpwi r0, 4 /* 8028D6D0 0028A630 40 80 00 F0 */ bge lbl_8028D7C0 /* 8028D6D4 0028A634 48 00 00 5C */ b lbl_8028D730 lbl_8028D6D8: /* 8028D6D8 0028A638 C0 22 BE 7C */ lfs f1, lbl_805ADB9C@sda21(r2) /* 8028D6DC 0028A63C C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D6E0 0028A640 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028D6E4 0028A644 40 80 00 0C */ bge lbl_8028D6F0 /* 8028D6E8 0028A648 38 62 BE 7C */ addi r3, r2, lbl_805ADB9C@sda21 /* 8028D6EC 0028A64C 48 00 00 08 */ b lbl_8028D6F4 lbl_8028D6F0: /* 8028D6F0 0028A650 38 7F 0A 34 */ addi r3, r31, 0xa34 lbl_8028D6F4: /* 8028D6F4 0028A654 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028D6F8 0028A658 C0 03 00 00 */ lfs f0, 0(r3) /* 8028D6FC 0028A65C EC 01 00 28 */ fsubs f0, f1, f0 /* 8028D700 0028A660 D0 1F 0A 2C */ stfs f0, 0xa2c(r31) /* 8028D704 0028A664 C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D708 0028A668 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8028D70C 0028A66C 40 81 00 14 */ ble lbl_8028D720 /* 8028D710 0028A670 38 00 00 00 */ li r0, 0 /* 8028D714 0028A674 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D718 0028A678 90 1F 0A 30 */ stw r0, 0xa30(r31) /* 8028D71C 0028A67C D0 1F 0A 34 */ stfs f0, 0xa34(r31) lbl_8028D720: /* 8028D720 0028A680 C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D724 0028A684 EC 00 F8 2A */ fadds f0, f0, f31 /* 8028D728 0028A688 D0 1F 0A 34 */ stfs f0, 0xa34(r31) /* 8028D72C 0028A68C 48 00 00 9C */ b lbl_8028D7C8 lbl_8028D730: /* 8028D730 0028A690 C0 22 BE 80 */ lfs f1, lbl_805ADBA0@sda21(r2) /* 8028D734 0028A694 C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D738 0028A698 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028D73C 0028A69C 40 80 00 0C */ bge lbl_8028D748 /* 8028D740 0028A6A0 38 62 BE 80 */ addi r3, r2, lbl_805ADBA0@sda21 /* 8028D744 0028A6A4 48 00 00 08 */ b lbl_8028D74C lbl_8028D748: /* 8028D748 0028A6A8 38 7F 0A 34 */ addi r3, r31, 0xa34 lbl_8028D74C: /* 8028D74C 0028A6AC C0 23 00 00 */ lfs f1, 0(r3) /* 8028D750 0028A6B0 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028D754 0028A6B4 D0 3F 0A 2C */ stfs f1, 0xa2c(r31) /* 8028D758 0028A6B8 C0 3F 0A 34 */ lfs f1, 0xa34(r31) /* 8028D75C 0028A6BC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028D760 0028A6C0 40 81 00 14 */ ble lbl_8028D774 /* 8028D764 0028A6C4 38 00 00 02 */ li r0, 2 /* 8028D768 0028A6C8 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D76C 0028A6CC 90 1F 0A 30 */ stw r0, 0xa30(r31) /* 8028D770 0028A6D0 D0 1F 0A 34 */ stfs f0, 0xa34(r31) lbl_8028D774: /* 8028D774 0028A6D4 C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D778 0028A6D8 EC 00 F8 2A */ fadds f0, f0, f31 /* 8028D77C 0028A6DC D0 1F 0A 34 */ stfs f0, 0xa34(r31) /* 8028D780 0028A6E0 48 00 00 48 */ b lbl_8028D7C8 lbl_8028D784: /* 8028D784 0028A6E4 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028D788 0028A6E8 D0 3F 0A 2C */ stfs f1, 0xa2c(r31) /* 8028D78C 0028A6EC C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D790 0028A6F0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8028D794 0028A6F4 40 81 00 1C */ ble lbl_8028D7B0 /* 8028D798 0028A6F8 38 00 00 01 */ li r0, 1 /* 8028D79C 0028A6FC C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D7A0 0028A700 90 1F 0A 30 */ stw r0, 0xa30(r31) /* 8028D7A4 0028A704 C0 22 BE A4 */ lfs f1, lbl_805ADBC4@sda21(r2) /* 8028D7A8 0028A708 D0 1F 0A 34 */ stfs f0, 0xa34(r31) /* 8028D7AC 0028A70C 4B FF E6 85 */ bl CreateFlash__12COmegaPirateFR13CStateManagerf lbl_8028D7B0: /* 8028D7B0 0028A710 C0 1F 0A 34 */ lfs f0, 0xa34(r31) /* 8028D7B4 0028A714 EC 00 F8 2A */ fadds f0, f0, f31 /* 8028D7B8 0028A718 D0 1F 0A 34 */ stfs f0, 0xa34(r31) /* 8028D7BC 0028A71C 48 00 00 0C */ b lbl_8028D7C8 lbl_8028D7C0: /* 8028D7C0 0028A720 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D7C4 0028A724 D0 1F 0A 2C */ stfs f0, 0xa2c(r31) lbl_8028D7C8: /* 8028D7C8 0028A728 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 8028D7CC 0028A72C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028D7D0 0028A730 CB E1 00 10 */ lfd f31, 0x10(r1) /* 8028D7D4 0028A734 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8028D7D8 0028A738 7C 08 03 A6 */ mtlr r0 /* 8028D7DC 0028A73C 38 21 00 20 */ addi r1, r1, 0x20 /* 8028D7E0 0028A740 4E 80 00 20 */ blr .global sub_8028d7e4 sub_8028d7e4: /* 8028D7E4 0028A744 94 21 FF 80 */ stwu r1, -0x80(r1) /* 8028D7E8 0028A748 7C 08 02 A6 */ mflr r0 /* 8028D7EC 0028A74C 90 01 00 84 */ stw r0, 0x84(r1) /* 8028D7F0 0028A750 DB E1 00 70 */ stfd f31, 0x70(r1) /* 8028D7F4 0028A754 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 8028D7F8 0028A758 DB C1 00 60 */ stfd f30, 0x60(r1) /* 8028D7FC 0028A75C F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 8028D800 0028A760 DB A1 00 50 */ stfd f29, 0x50(r1) /* 8028D804 0028A764 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 8028D808 0028A768 BF 61 00 3C */ stmw r27, 0x3c(r1) /* 8028D80C 0028A76C 7C 7E 1B 78 */ mr r30, r3 /* 8028D810 0028A770 7C 9F 23 78 */ mr r31, r4 /* 8028D814 0028A774 80 03 09 C8 */ lwz r0, 0x9c8(r3) /* 8028D818 0028A778 80 63 00 64 */ lwz r3, 0x64(r3) /* 8028D81C 0028A77C 28 00 00 07 */ cmplwi r0, 7 /* 8028D820 0028A780 C3 E3 00 00 */ lfs f31, 0(r3) /* 8028D824 0028A784 C3 C3 00 04 */ lfs f30, 4(r3) /* 8028D828 0028A788 C3 A3 00 08 */ lfs f29, 8(r3) /* 8028D82C 0028A78C 41 81 04 64 */ bgt lbl_8028DC90 /* 8028D830 0028A790 3C 60 80 3F */ lis r3, lbl_803EB734@ha /* 8028D834 0028A794 54 00 10 3A */ slwi r0, r0, 2 /* 8028D838 0028A798 38 63 B7 34 */ addi r3, r3, lbl_803EB734@l /* 8028D83C 0028A79C 7C 03 00 2E */ lwzx r0, r3, r0 /* 8028D840 0028A7A0 7C 09 03 A6 */ mtctr r0 /* 8028D844 0028A7A4 4E 80 04 20 */ bctr .global lbl_8028D848 lbl_8028D848: /* 8028D848 0028A7A8 C0 42 BE 84 */ lfs f2, lbl_805ADBA4@sda21(r2) /* 8028D84C 0028A7AC C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028D850 0028A7B0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D854 0028A7B4 40 80 00 0C */ bge lbl_8028D860 /* 8028D858 0028A7B8 38 62 BE 84 */ addi r3, r2, lbl_805ADBA4@sda21 /* 8028D85C 0028A7BC 48 00 00 08 */ b lbl_8028D864 lbl_8028D860: /* 8028D860 0028A7C0 38 7E 09 CC */ addi r3, r30, 0x9cc lbl_8028D864: /* 8028D864 0028A7C4 C0 43 00 00 */ lfs f2, 0(r3) /* 8028D868 0028A7C8 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028D86C 0028A7CC C0 62 BE A0 */ lfs f3, lbl_805ADBC0@sda21(r2) /* 8028D870 0028A7D0 EC 42 00 24 */ fdivs f2, f2, f0 /* 8028D874 0028A7D4 C0 82 BE CC */ lfs f4, lbl_805ADBEC@sda21(r2) /* 8028D878 0028A7D8 C0 0D 99 A0 */ lfs f0, lbl_805A8560@sda21(r13) /* 8028D87C 0028A7DC EC 43 10 28 */ fsubs f2, f3, f2 /* 8028D880 0028A7E0 EC 44 10 2A */ fadds f2, f4, f2 /* 8028D884 0028A7E4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D888 0028A7E8 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 8028D88C 0028A7EC 40 80 00 0C */ bge lbl_8028D898 /* 8028D890 0028A7F0 38 61 00 2C */ addi r3, r1, 0x2c /* 8028D894 0028A7F4 48 00 00 08 */ b lbl_8028D89C lbl_8028D898: /* 8028D898 0028A7F8 38 6D 99 A0 */ addi r3, r13, lbl_805A8560@sda21 lbl_8028D89C: /* 8028D89C 0028A7FC C0 9E 09 D0 */ lfs f4, 0x9d0(r30) /* 8028D8A0 0028A800 C0 63 00 00 */ lfs f3, 0(r3) /* 8028D8A4 0028A804 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028D8A8 0028A808 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028D8AC 0028A80C EF E4 00 F2 */ fmuls f31, f4, f3 /* 8028D8B0 0028A810 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D8B4 0028A814 40 81 00 14 */ ble lbl_8028D8C8 /* 8028D8B8 0028A818 38 00 00 03 */ li r0, 3 /* 8028D8BC 0028A81C C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D8C0 0028A820 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028D8C4 0028A824 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028D8C8: /* 8028D8C8 0028A828 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028D8CC 0028A82C EC 00 08 2A */ fadds f0, f0, f1 /* 8028D8D0 0028A830 D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028D8D4 0028A834 48 00 02 FC */ b lbl_8028DBD0 .global lbl_8028D8D8 lbl_8028D8D8: /* 8028D8D8 0028A838 C0 42 BE 88 */ lfs f2, lbl_805ADBA8@sda21(r2) /* 8028D8DC 0028A83C C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028D8E0 0028A840 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D8E4 0028A844 40 80 00 0C */ bge lbl_8028D8F0 /* 8028D8E8 0028A848 38 62 BE 88 */ addi r3, r2, lbl_805ADBA8@sda21 /* 8028D8EC 0028A84C 48 00 00 08 */ b lbl_8028D8F4 lbl_8028D8F0: /* 8028D8F0 0028A850 38 7E 09 CC */ addi r3, r30, 0x9cc lbl_8028D8F4: /* 8028D8F4 0028A854 C0 43 00 00 */ lfs f2, 0(r3) /* 8028D8F8 0028A858 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028D8FC 0028A85C C0 62 BE A0 */ lfs f3, lbl_805ADBC0@sda21(r2) /* 8028D900 0028A860 EC 42 00 24 */ fdivs f2, f2, f0 /* 8028D904 0028A864 C0 82 BE CC */ lfs f4, lbl_805ADBEC@sda21(r2) /* 8028D908 0028A868 C0 0D 99 A4 */ lfs f0, lbl_805A8564@sda21(r13) /* 8028D90C 0028A86C EC 43 10 28 */ fsubs f2, f3, f2 /* 8028D910 0028A870 EC 44 10 2A */ fadds f2, f4, f2 /* 8028D914 0028A874 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D918 0028A878 D0 41 00 28 */ stfs f2, 0x28(r1) /* 8028D91C 0028A87C 40 80 00 0C */ bge lbl_8028D928 /* 8028D920 0028A880 38 61 00 28 */ addi r3, r1, 0x28 /* 8028D924 0028A884 48 00 00 08 */ b lbl_8028D92C lbl_8028D928: /* 8028D928 0028A888 38 6D 99 A4 */ addi r3, r13, lbl_805A8564@sda21 lbl_8028D92C: /* 8028D92C 0028A88C C0 9E 09 D4 */ lfs f4, 0x9d4(r30) /* 8028D930 0028A890 C0 63 00 00 */ lfs f3, 0(r3) /* 8028D934 0028A894 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028D938 0028A898 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028D93C 0028A89C EF C4 00 F2 */ fmuls f30, f4, f3 /* 8028D940 0028A8A0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D944 0028A8A4 40 81 00 14 */ ble lbl_8028D958 /* 8028D948 0028A8A8 38 00 00 01 */ li r0, 1 /* 8028D94C 0028A8AC C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D950 0028A8B0 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028D954 0028A8B4 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028D958: /* 8028D958 0028A8B8 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028D95C 0028A8BC EC 00 08 2A */ fadds f0, f0, f1 /* 8028D960 0028A8C0 D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028D964 0028A8C4 48 00 02 6C */ b lbl_8028DBD0 .global lbl_8028D968 lbl_8028D968: /* 8028D968 0028A8C8 C0 42 BE 8C */ lfs f2, lbl_805ADBAC@sda21(r2) /* 8028D96C 0028A8CC C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028D970 0028A8D0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D974 0028A8D4 40 80 00 0C */ bge lbl_8028D980 /* 8028D978 0028A8D8 38 62 BE 8C */ addi r3, r2, lbl_805ADBAC@sda21 /* 8028D97C 0028A8DC 48 00 00 08 */ b lbl_8028D984 lbl_8028D980: /* 8028D980 0028A8E0 38 7E 09 CC */ addi r3, r30, 0x9cc lbl_8028D984: /* 8028D984 0028A8E4 C0 43 00 00 */ lfs f2, 0(r3) /* 8028D988 0028A8E8 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028D98C 0028A8EC C0 62 BE A0 */ lfs f3, lbl_805ADBC0@sda21(r2) /* 8028D990 0028A8F0 EC 42 00 24 */ fdivs f2, f2, f0 /* 8028D994 0028A8F4 C0 82 BE CC */ lfs f4, lbl_805ADBEC@sda21(r2) /* 8028D998 0028A8F8 C0 0D 99 A8 */ lfs f0, lbl_805A8568@sda21(r13) /* 8028D99C 0028A8FC EC 43 10 28 */ fsubs f2, f3, f2 /* 8028D9A0 0028A900 EC 44 10 2A */ fadds f2, f4, f2 /* 8028D9A4 0028A904 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D9A8 0028A908 D0 41 00 24 */ stfs f2, 0x24(r1) /* 8028D9AC 0028A90C 40 80 00 0C */ bge lbl_8028D9B8 /* 8028D9B0 0028A910 38 61 00 24 */ addi r3, r1, 0x24 /* 8028D9B4 0028A914 48 00 00 08 */ b lbl_8028D9BC lbl_8028D9B8: /* 8028D9B8 0028A918 38 6D 99 A8 */ addi r3, r13, lbl_805A8568@sda21 lbl_8028D9BC: /* 8028D9BC 0028A91C C0 9E 09 D8 */ lfs f4, 0x9d8(r30) /* 8028D9C0 0028A920 C0 63 00 00 */ lfs f3, 0(r3) /* 8028D9C4 0028A924 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028D9C8 0028A928 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028D9CC 0028A92C EF A4 00 F2 */ fmuls f29, f4, f3 /* 8028D9D0 0028A930 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028D9D4 0028A934 40 81 00 14 */ ble lbl_8028D9E8 /* 8028D9D8 0028A938 38 00 00 04 */ li r0, 4 /* 8028D9DC 0028A93C C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028D9E0 0028A940 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028D9E4 0028A944 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028D9E8: /* 8028D9E8 0028A948 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028D9EC 0028A94C EC 00 08 2A */ fadds f0, f0, f1 /* 8028D9F0 0028A950 D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028D9F4 0028A954 48 00 01 DC */ b lbl_8028DBD0 .global lbl_8028D9F8 lbl_8028D9F8: /* 8028D9F8 0028A958 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028D9FC 0028A95C C0 02 BE D0 */ lfs f0, lbl_805ADBF0@sda21(r2) /* 8028DA00 0028A960 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DA04 0028A964 40 81 00 20 */ ble lbl_8028DA24 /* 8028DA08 0028A968 88 1E 0A D0 */ lbz r0, 0xad0(r30) /* 8028DA0C 0028A96C 28 00 00 00 */ cmplwi r0, 0 /* 8028DA10 0028A970 41 82 00 14 */ beq lbl_8028DA24 /* 8028DA14 0028A974 38 00 00 07 */ li r0, 7 /* 8028DA18 0028A978 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028DA1C 0028A97C 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028DA20 0028A980 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028DA24: /* 8028DA24 0028A984 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DA28 0028A988 EC 00 08 2A */ fadds f0, f0, f1 /* 8028DA2C 0028A98C D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028DA30 0028A990 48 00 01 A0 */ b lbl_8028DBD0 .global lbl_8028DA34 lbl_8028DA34: /* 8028DA34 0028A994 C0 42 BE 84 */ lfs f2, lbl_805ADBA4@sda21(r2) /* 8028DA38 0028A998 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DA3C 0028A99C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DA40 0028A9A0 40 80 00 0C */ bge lbl_8028DA4C /* 8028DA44 0028A9A4 38 62 BE 84 */ addi r3, r2, lbl_805ADBA4@sda21 /* 8028DA48 0028A9A8 48 00 00 08 */ b lbl_8028DA50 lbl_8028DA4C: /* 8028DA4C 0028A9AC 38 7E 09 CC */ addi r3, r30, 0x9cc lbl_8028DA50: /* 8028DA50 0028A9B0 C0 43 00 00 */ lfs f2, 0(r3) /* 8028DA54 0028A9B4 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028DA58 0028A9B8 C0 62 BE CC */ lfs f3, lbl_805ADBEC@sda21(r2) /* 8028DA5C 0028A9BC EC 42 00 24 */ fdivs f2, f2, f0 /* 8028DA60 0028A9C0 C0 0D 99 AC */ lfs f0, lbl_805A856C@sda21(r13) /* 8028DA64 0028A9C4 EC 43 10 2A */ fadds f2, f3, f2 /* 8028DA68 0028A9C8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DA6C 0028A9CC D0 41 00 20 */ stfs f2, 0x20(r1) /* 8028DA70 0028A9D0 40 80 00 0C */ bge lbl_8028DA7C /* 8028DA74 0028A9D4 38 61 00 20 */ addi r3, r1, 0x20 /* 8028DA78 0028A9D8 48 00 00 08 */ b lbl_8028DA80 lbl_8028DA7C: /* 8028DA7C 0028A9DC 38 6D 99 AC */ addi r3, r13, lbl_805A856C@sda21 lbl_8028DA80: /* 8028DA80 0028A9E0 C0 9E 09 D0 */ lfs f4, 0x9d0(r30) /* 8028DA84 0028A9E4 C0 63 00 00 */ lfs f3, 0(r3) /* 8028DA88 0028A9E8 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028DA8C 0028A9EC C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028DA90 0028A9F0 EF E4 00 F2 */ fmuls f31, f4, f3 /* 8028DA94 0028A9F4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DA98 0028A9F8 40 81 00 14 */ ble lbl_8028DAAC /* 8028DA9C 0028A9FC 38 00 00 06 */ li r0, 6 /* 8028DAA0 0028AA00 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028DAA4 0028AA04 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028DAA8 0028AA08 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028DAAC: /* 8028DAAC 0028AA0C C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DAB0 0028AA10 EC 00 08 2A */ fadds f0, f0, f1 /* 8028DAB4 0028AA14 D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028DAB8 0028AA18 48 00 01 18 */ b lbl_8028DBD0 .global lbl_8028DABC lbl_8028DABC: /* 8028DABC 0028AA1C C0 42 BE 88 */ lfs f2, lbl_805ADBA8@sda21(r2) /* 8028DAC0 0028AA20 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DAC4 0028AA24 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DAC8 0028AA28 40 80 00 0C */ bge lbl_8028DAD4 /* 8028DACC 0028AA2C 38 62 BE 88 */ addi r3, r2, lbl_805ADBA8@sda21 /* 8028DAD0 0028AA30 48 00 00 08 */ b lbl_8028DAD8 lbl_8028DAD4: /* 8028DAD4 0028AA34 38 7E 09 CC */ addi r3, r30, 0x9cc lbl_8028DAD8: /* 8028DAD8 0028AA38 C0 43 00 00 */ lfs f2, 0(r3) /* 8028DADC 0028AA3C C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028DAE0 0028AA40 C0 62 BE CC */ lfs f3, lbl_805ADBEC@sda21(r2) /* 8028DAE4 0028AA44 EC 42 00 24 */ fdivs f2, f2, f0 /* 8028DAE8 0028AA48 C0 0D 99 B0 */ lfs f0, lbl_805A8570@sda21(r13) /* 8028DAEC 0028AA4C EC 43 10 2A */ fadds f2, f3, f2 /* 8028DAF0 0028AA50 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DAF4 0028AA54 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 8028DAF8 0028AA58 40 80 00 0C */ bge lbl_8028DB04 /* 8028DAFC 0028AA5C 38 61 00 1C */ addi r3, r1, 0x1c /* 8028DB00 0028AA60 48 00 00 08 */ b lbl_8028DB08 lbl_8028DB04: /* 8028DB04 0028AA64 38 6D 99 B0 */ addi r3, r13, lbl_805A8570@sda21 lbl_8028DB08: /* 8028DB08 0028AA68 C0 9E 09 D4 */ lfs f4, 0x9d4(r30) /* 8028DB0C 0028AA6C C0 63 00 00 */ lfs f3, 0(r3) /* 8028DB10 0028AA70 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028DB14 0028AA74 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028DB18 0028AA78 EF C4 00 F2 */ fmuls f30, f4, f3 /* 8028DB1C 0028AA7C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DB20 0028AA80 40 81 00 14 */ ble lbl_8028DB34 /* 8028DB24 0028AA84 38 00 00 00 */ li r0, 0 /* 8028DB28 0028AA88 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028DB2C 0028AA8C 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028DB30 0028AA90 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028DB34: /* 8028DB34 0028AA94 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DB38 0028AA98 EC 00 08 2A */ fadds f0, f0, f1 /* 8028DB3C 0028AA9C D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028DB40 0028AAA0 48 00 00 90 */ b lbl_8028DBD0 .global lbl_8028DB44 lbl_8028DB44: /* 8028DB44 0028AAA4 C0 42 BE 8C */ lfs f2, lbl_805ADBAC@sda21(r2) /* 8028DB48 0028AAA8 C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DB4C 0028AAAC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DB50 0028AAB0 40 80 00 0C */ bge lbl_8028DB5C /* 8028DB54 0028AAB4 38 62 BE 8C */ addi r3, r2, lbl_805ADBAC@sda21 /* 8028DB58 0028AAB8 48 00 00 08 */ b lbl_8028DB60 lbl_8028DB5C: /* 8028DB5C 0028AABC 38 7E 09 CC */ addi r3, r30, 0x9cc lbl_8028DB60: /* 8028DB60 0028AAC0 C0 43 00 00 */ lfs f2, 0(r3) /* 8028DB64 0028AAC4 C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028DB68 0028AAC8 C0 62 BE CC */ lfs f3, lbl_805ADBEC@sda21(r2) /* 8028DB6C 0028AACC EC 42 00 24 */ fdivs f2, f2, f0 /* 8028DB70 0028AAD0 C0 0D 99 B4 */ lfs f0, lbl_805A8574@sda21(r13) /* 8028DB74 0028AAD4 EC 43 10 2A */ fadds f2, f3, f2 /* 8028DB78 0028AAD8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DB7C 0028AADC D0 41 00 18 */ stfs f2, 0x18(r1) /* 8028DB80 0028AAE0 40 80 00 0C */ bge lbl_8028DB8C /* 8028DB84 0028AAE4 38 61 00 18 */ addi r3, r1, 0x18 /* 8028DB88 0028AAE8 48 00 00 08 */ b lbl_8028DB90 lbl_8028DB8C: /* 8028DB8C 0028AAEC 38 6D 99 B4 */ addi r3, r13, lbl_805A8574@sda21 lbl_8028DB90: /* 8028DB90 0028AAF0 C0 9E 09 D8 */ lfs f4, 0x9d8(r30) /* 8028DB94 0028AAF4 C0 63 00 00 */ lfs f3, 0(r3) /* 8028DB98 0028AAF8 C0 5E 09 CC */ lfs f2, 0x9cc(r30) /* 8028DB9C 0028AAFC C0 02 BE A8 */ lfs f0, lbl_805ADBC8@sda21(r2) /* 8028DBA0 0028AB00 EF A4 00 F2 */ fmuls f29, f4, f3 /* 8028DBA4 0028AB04 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028DBA8 0028AB08 40 81 00 14 */ ble lbl_8028DBBC /* 8028DBAC 0028AB0C 38 00 00 05 */ li r0, 5 /* 8028DBB0 0028AB10 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028DBB4 0028AB14 90 1E 09 C8 */ stw r0, 0x9c8(r30) /* 8028DBB8 0028AB18 D0 1E 09 CC */ stfs f0, 0x9cc(r30) lbl_8028DBBC: /* 8028DBBC 0028AB1C C0 1E 09 CC */ lfs f0, 0x9cc(r30) /* 8028DBC0 0028AB20 EC 00 08 2A */ fadds f0, f0, f1 /* 8028DBC4 0028AB24 D0 1E 09 CC */ stfs f0, 0x9cc(r30) /* 8028DBC8 0028AB28 48 00 00 08 */ b lbl_8028DBD0 .global lbl_8028DBCC lbl_8028DBCC: /* 8028DBCC 0028AB2C 48 00 00 C4 */ b lbl_8028DC90 lbl_8028DBD0: /* 8028DBD0 0028AB30 A0 1E 07 72 */ lhz r0, 0x772(r30) /* 8028DBD4 0028AB34 7F E3 FB 78 */ mr r3, r31 /* 8028DBD8 0028AB38 38 81 00 14 */ addi r4, r1, 0x14 /* 8028DBDC 0028AB3C B0 01 00 10 */ sth r0, 0x10(r1) /* 8028DBE0 0028AB40 B0 01 00 14 */ sth r0, 0x14(r1) /* 8028DBE4 0028AB44 4B DB E9 91 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028DBE8 0028AB48 A0 1E 09 90 */ lhz r0, 0x990(r30) /* 8028DBEC 0028AB4C 7C 7D 1B 78 */ mr r29, r3 /* 8028DBF0 0028AB50 7F E3 FB 78 */ mr r3, r31 /* 8028DBF4 0028AB54 38 81 00 0C */ addi r4, r1, 0xc /* 8028DBF8 0028AB58 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028DBFC 0028AB5C 4B DB E9 79 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028DC00 0028AB60 80 9E 00 64 */ lwz r4, 0x64(r30) /* 8028DC04 0028AB64 28 1D 00 00 */ cmplwi r29, 0 /* 8028DC08 0028AB68 D3 E4 00 00 */ stfs f31, 0(r4) /* 8028DC0C 0028AB6C D3 C4 00 04 */ stfs f30, 4(r4) /* 8028DC10 0028AB70 D3 A4 00 08 */ stfs f29, 8(r4) /* 8028DC14 0028AB74 41 82 00 14 */ beq lbl_8028DC28 /* 8028DC18 0028AB78 80 9D 00 64 */ lwz r4, 0x64(r29) /* 8028DC1C 0028AB7C D3 E4 00 00 */ stfs f31, 0(r4) /* 8028DC20 0028AB80 D3 C4 00 04 */ stfs f30, 4(r4) /* 8028DC24 0028AB84 D3 A4 00 08 */ stfs f29, 8(r4) lbl_8028DC28: /* 8028DC28 0028AB88 28 03 00 00 */ cmplwi r3, 0 /* 8028DC2C 0028AB8C 41 82 00 14 */ beq lbl_8028DC40 /* 8028DC30 0028AB90 80 63 00 64 */ lwz r3, 0x64(r3) /* 8028DC34 0028AB94 D3 E3 00 00 */ stfs f31, 0(r3) /* 8028DC38 0028AB98 D3 C3 00 04 */ stfs f30, 4(r3) /* 8028DC3C 0028AB9C D3 A3 00 08 */ stfs f29, 8(r3) lbl_8028DC40: /* 8028DC40 0028ABA0 83 9E 09 E0 */ lwz r28, 0x9e0(r30) /* 8028DC44 0028ABA4 3B 60 00 00 */ li r27, 0 /* 8028DC48 0028ABA8 3B A0 00 00 */ li r29, 0 /* 8028DC4C 0028ABAC 48 00 00 3C */ b lbl_8028DC88 lbl_8028DC50: /* 8028DC50 0028ABB0 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 8028DC54 0028ABB4 7F E3 FB 78 */ mr r3, r31 /* 8028DC58 0028ABB8 38 81 00 08 */ addi r4, r1, 8 /* 8028DC5C 0028ABBC 7C 05 EA 2E */ lhzx r0, r5, r29 /* 8028DC60 0028ABC0 B0 01 00 08 */ sth r0, 8(r1) /* 8028DC64 0028ABC4 4B DB E9 11 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028DC68 0028ABC8 28 03 00 00 */ cmplwi r3, 0 /* 8028DC6C 0028ABCC 41 82 00 14 */ beq lbl_8028DC80 /* 8028DC70 0028ABD0 80 63 00 64 */ lwz r3, 0x64(r3) /* 8028DC74 0028ABD4 D3 E3 00 00 */ stfs f31, 0(r3) /* 8028DC78 0028ABD8 D3 C3 00 04 */ stfs f30, 4(r3) /* 8028DC7C 0028ABDC D3 A3 00 08 */ stfs f29, 8(r3) lbl_8028DC80: /* 8028DC80 0028ABE0 3B 7B 00 01 */ addi r27, r27, 1 /* 8028DC84 0028ABE4 3B BD 00 14 */ addi r29, r29, 0x14 lbl_8028DC88: /* 8028DC88 0028ABE8 7C 1B E0 40 */ cmplw r27, r28 /* 8028DC8C 0028ABEC 41 80 FF C4 */ blt lbl_8028DC50 lbl_8028DC90: /* 8028DC90 0028ABF0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 8028DC94 0028ABF4 CB E1 00 70 */ lfd f31, 0x70(r1) /* 8028DC98 0028ABF8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 8028DC9C 0028ABFC CB C1 00 60 */ lfd f30, 0x60(r1) /* 8028DCA0 0028AC00 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 8028DCA4 0028AC04 CB A1 00 50 */ lfd f29, 0x50(r1) /* 8028DCA8 0028AC08 BB 61 00 3C */ lmw r27, 0x3c(r1) /* 8028DCAC 0028AC0C 80 01 00 84 */ lwz r0, 0x84(r1) /* 8028DCB0 0028AC10 7C 08 03 A6 */ mtlr r0 /* 8028DCB4 0028AC14 38 21 00 80 */ addi r1, r1, 0x80 /* 8028DCB8 0028AC18 4E 80 00 20 */ blr .global WallHang__12COmegaPirateFR13CStateManager9EStateMsgf WallHang__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028DCBC 0028AC1C 4E 80 00 20 */ blr .global WallDetach__12COmegaPirateFR13CStateManager9EStateMsgf WallDetach__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028DCC0 0028AC20 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8028DCC4 0028AC24 7C 08 02 A6 */ mflr r0 /* 8028DCC8 0028AC28 2C 05 00 01 */ cmpwi r5, 1 /* 8028DCCC 0028AC2C 90 01 00 34 */ stw r0, 0x34(r1) /* 8028DCD0 0028AC30 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8028DCD4 0028AC34 7C 7F 1B 78 */ mr r31, r3 /* 8028DCD8 0028AC38 41 82 00 2C */ beq lbl_8028DD04 /* 8028DCDC 0028AC3C 40 80 00 10 */ bge lbl_8028DCEC /* 8028DCE0 0028AC40 2C 05 00 00 */ cmpwi r5, 0 /* 8028DCE4 0028AC44 40 80 00 14 */ bge lbl_8028DCF8 /* 8028DCE8 0028AC48 48 00 01 20 */ b lbl_8028DE08 lbl_8028DCEC: /* 8028DCEC 0028AC4C 2C 05 00 03 */ cmpwi r5, 3 /* 8028DCF0 0028AC50 40 80 01 18 */ bge lbl_8028DE08 /* 8028DCF4 0028AC54 48 00 00 EC */ b lbl_8028DDE0 lbl_8028DCF8: /* 8028DCF8 0028AC58 38 00 00 00 */ li r0, 0 /* 8028DCFC 0028AC5C 90 1F 05 68 */ stw r0, 0x568(r31) /* 8028DD00 0028AC60 48 00 01 08 */ b lbl_8028DE08 lbl_8028DD04: /* 8028DD04 0028AC64 80 1F 05 68 */ lwz r0, 0x568(r31) /* 8028DD08 0028AC68 2C 00 00 01 */ cmpwi r0, 1 /* 8028DD0C 0028AC6C 41 82 00 FC */ beq lbl_8028DE08 /* 8028DD10 0028AC70 40 80 00 10 */ bge lbl_8028DD20 /* 8028DD14 0028AC74 2C 00 00 00 */ cmpwi r0, 0 /* 8028DD18 0028AC78 40 80 00 14 */ bge lbl_8028DD2C /* 8028DD1C 0028AC7C 48 00 00 EC */ b lbl_8028DE08 lbl_8028DD20: /* 8028DD20 0028AC80 2C 00 00 03 */ cmpwi r0, 3 /* 8028DD24 0028AC84 40 80 00 E4 */ bge lbl_8028DE08 /* 8028DD28 0028AC88 48 00 00 9C */ b lbl_8028DDC4 lbl_8028DD2C: /* 8028DD2C 0028AC8C 80 9F 04 50 */ lwz r4, 0x450(r31) /* 8028DD30 0028AC90 80 04 02 B8 */ lwz r0, 0x2b8(r4) /* 8028DD34 0028AC94 2C 00 00 03 */ cmpwi r0, 3 /* 8028DD38 0028AC98 40 82 00 1C */ bne lbl_8028DD54 /* 8028DD3C 0028AC9C 38 00 00 02 */ li r0, 2 /* 8028DD40 0028ACA0 38 80 00 01 */ li r4, 1 /* 8028DD44 0028ACA4 90 1F 05 68 */ stw r0, 0x568(r31) /* 8028DD48 0028ACA8 80 7F 04 50 */ lwz r3, 0x450(r31) /* 8028DD4C 0028ACAC 4B EA CC 8D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType /* 8028DD50 0028ACB0 48 00 00 B8 */ b lbl_8028DE08 lbl_8028DD54: /* 8028DD54 0028ACB4 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028DD58 0028ACB8 38 C0 00 01 */ li r6, 1 /* 8028DD5C 0028ACBC 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028DD60 0028ACC0 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028DD64 0028ACC4 90 01 00 10 */ stw r0, 0x10(r1) /* 8028DD68 0028ACC8 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l /* 8028DD6C 0028ACCC 38 00 00 02 */ li r0, 2 /* 8028DD70 0028ACD0 3B E4 00 04 */ addi r31, r4, 4 /* 8028DD74 0028ACD4 90 C1 00 14 */ stw r6, 0x14(r1) /* 8028DD78 0028ACD8 7F E3 FB 78 */ mr r3, r31 /* 8028DD7C 0028ACDC 38 80 00 01 */ li r4, 1 /* 8028DD80 0028ACE0 90 A1 00 10 */ stw r5, 0x10(r1) /* 8028DD84 0028ACE4 90 01 00 18 */ stw r0, 0x18(r1) /* 8028DD88 0028ACE8 90 C1 00 1C */ stw r6, 0x1c(r1) /* 8028DD8C 0028ACEC 4B EA 36 AD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028DD90 0028ACF0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028DD94 0028ACF4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028DD98 0028ACF8 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l /* 8028DD9C 0028ACFC 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028DDA0 0028AD00 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028DDA4 0028AD04 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028DDA8 0028AD08 80 A1 00 18 */ lwz r5, 0x18(r1) /* 8028DDAC 0028AD0C 90 81 00 10 */ stw r4, 0x10(r1) /* 8028DDB0 0028AD10 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8028DDB4 0028AD14 90 BF 00 CC */ stw r5, 0xcc(r31) /* 8028DDB8 0028AD18 90 7F 00 D0 */ stw r3, 0xd0(r31) /* 8028DDBC 0028AD1C 90 01 00 10 */ stw r0, 0x10(r1) /* 8028DDC0 0028AD20 48 00 00 48 */ b lbl_8028DE08 lbl_8028DDC4: /* 8028DDC4 0028AD24 80 7F 04 50 */ lwz r3, 0x450(r31) /* 8028DDC8 0028AD28 80 03 02 B8 */ lwz r0, 0x2b8(r3) /* 8028DDCC 0028AD2C 2C 00 00 03 */ cmpwi r0, 3 /* 8028DDD0 0028AD30 41 82 00 38 */ beq lbl_8028DE08 /* 8028DDD4 0028AD34 38 00 00 03 */ li r0, 3 /* 8028DDD8 0028AD38 90 1F 05 68 */ stw r0, 0x568(r31) /* 8028DDDC 0028AD3C 48 00 00 2C */ b lbl_8028DE08 lbl_8028DDE0: /* 8028DDE0 0028AD40 A0 1F 00 08 */ lhz r0, 8(r31) /* 8028DDE4 0028AD44 7C 83 23 78 */ mr r3, r4 /* 8028DDE8 0028AD48 38 81 00 0C */ addi r4, r1, 0xc /* 8028DDEC 0028AD4C 38 A0 00 59 */ li r5, 0x59 /* 8028DDF0 0028AD50 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028DDF4 0028AD54 B0 01 00 08 */ sth r0, 8(r1) /* 8028DDF8 0028AD58 C0 3F 0A 98 */ lfs f1, 0xa98(r31) /* 8028DDFC 0028AD5C 4B DB 61 49 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi /* 8028DE00 0028AD60 38 00 00 01 */ li r0, 1 /* 8028DE04 0028AD64 98 1F 0B 79 */ stb r0, 0xb79(r31) lbl_8028DE08: /* 8028DE08 0028AD68 80 01 00 34 */ lwz r0, 0x34(r1) /* 8028DE0C 0028AD6C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8028DE10 0028AD70 7C 08 03 A6 */ mtlr r0 /* 8028DE14 0028AD74 38 21 00 30 */ addi r1, r1, 0x30 /* 8028DE18 0028AD78 4E 80 00 20 */ blr .global JumpBack__12COmegaPirateFR13CStateManager9EStateMsgf JumpBack__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028DE1C 0028AD7C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8028DE20 0028AD80 7C 08 02 A6 */ mflr r0 /* 8028DE24 0028AD84 2C 05 00 01 */ cmpwi r5, 1 /* 8028DE28 0028AD88 90 01 00 44 */ stw r0, 0x44(r1) /* 8028DE2C 0028AD8C BF 61 00 2C */ stmw r27, 0x2c(r1) /* 8028DE30 0028AD90 7C 7E 1B 78 */ mr r30, r3 /* 8028DE34 0028AD94 7C 9F 23 78 */ mr r31, r4 /* 8028DE38 0028AD98 41 82 01 44 */ beq lbl_8028DF7C /* 8028DE3C 0028AD9C 40 80 01 74 */ bge lbl_8028DFB0 /* 8028DE40 0028ADA0 2C 05 00 00 */ cmpwi r5, 0 /* 8028DE44 0028ADA4 40 80 00 0C */ bge lbl_8028DE50 /* 8028DE48 0028ADA8 48 00 01 68 */ b lbl_8028DFB0 /* 8028DE4C 0028ADAC 48 00 01 64 */ b lbl_8028DFB0 lbl_8028DE50: /* 8028DE50 0028ADB0 7F E5 FB 78 */ mr r5, r31 /* 8028DE54 0028ADB4 38 80 00 00 */ li r4, 0 /* 8028DE58 0028ADB8 4B F9 97 45 */ bl sub_8022759c /* 8028DE5C 0028ADBC 38 60 00 02 */ li r3, 2 /* 8028DE60 0028ADC0 38 00 00 00 */ li r0, 0 /* 8028DE64 0028ADC4 90 7E 05 68 */ stw r3, 0x568(r30) /* 8028DE68 0028ADC8 38 80 00 05 */ li r4, 5 /* 8028DE6C 0028ADCC 98 1E 0A DE */ stb r0, 0xade(r30) /* 8028DE70 0028ADD0 98 1E 0A DF */ stb r0, 0xadf(r30) /* 8028DE74 0028ADD4 98 1E 0A E0 */ stb r0, 0xae0(r30) /* 8028DE78 0028ADD8 90 1E 0B 68 */ stw r0, 0xb68(r30) /* 8028DE7C 0028ADDC 80 7E 04 50 */ lwz r3, 0x450(r30) /* 8028DE80 0028ADE0 80 03 02 EC */ lwz r0, 0x2ec(r3) /* 8028DE84 0028ADE4 90 1E 0A 40 */ stw r0, 0xa40(r30) /* 8028DE88 0028ADE8 80 7E 04 50 */ lwz r3, 0x450(r30) /* 8028DE8C 0028ADEC 4B EA CB 4D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType /* 8028DE90 0028ADF0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028DE94 0028ADF4 C0 5E 00 58 */ lfs f2, 0x58(r30) /* 8028DE98 0028ADF8 38 A3 AA 68 */ addi r5, r3, __vt__13CBodyStateCmd@l /* 8028DE9C 0028ADFC C0 3E 00 48 */ lfs f1, 0x48(r30) /* 8028DEA0 0028AE00 C0 1E 00 38 */ lfs f0, 0x38(r30) /* 8028DEA4 0028AE04 3C 80 80 3E */ lis r4, lbl_803DAA44@ha /* 8028DEA8 0028AE08 80 7E 04 50 */ lwz r3, 0x450(r30) /* 8028DEAC 0028AE0C 38 C0 00 04 */ li r6, 4 /* 8028DEB0 0028AE10 38 00 00 05 */ li r0, 5 /* 8028DEB4 0028AE14 90 A1 00 0C */ stw r5, 0xc(r1) /* 8028DEB8 0028AE18 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l /* 8028DEBC 0028AE1C 3B 83 00 04 */ addi r28, r3, 4 /* 8028DEC0 0028AE20 90 C1 00 10 */ stw r6, 0x10(r1) /* 8028DEC4 0028AE24 7F 83 E3 78 */ mr r3, r28 /* 8028DEC8 0028AE28 38 80 00 04 */ li r4, 4 /* 8028DECC 0028AE2C 90 A1 00 0C */ stw r5, 0xc(r1) /* 8028DED0 0028AE30 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8028DED4 0028AE34 D0 21 00 18 */ stfs f1, 0x18(r1) /* 8028DED8 0028AE38 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 8028DEDC 0028AE3C 90 01 00 20 */ stw r0, 0x20(r1) /* 8028DEE0 0028AE40 4B EA 35 59 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028DEE4 0028AE44 80 01 00 10 */ lwz r0, 0x10(r1) /* 8028DEE8 0028AE48 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 8028DEEC 0028AE4C 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l /* 8028DEF0 0028AE50 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028DEF4 0028AE54 90 1C 00 F8 */ stw r0, 0xf8(r28) /* 8028DEF8 0028AE58 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028DEFC 0028AE5C 80 A1 00 14 */ lwz r5, 0x14(r1) /* 8028DF00 0028AE60 3B 60 00 00 */ li r27, 0 /* 8028DF04 0028AE64 80 61 00 18 */ lwz r3, 0x18(r1) /* 8028DF08 0028AE68 3B A0 00 00 */ li r29, 0 /* 8028DF0C 0028AE6C 90 BC 00 FC */ stw r5, 0xfc(r28) /* 8028DF10 0028AE70 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 8028DF14 0028AE74 90 7C 01 00 */ stw r3, 0x100(r28) /* 8028DF18 0028AE78 80 61 00 20 */ lwz r3, 0x20(r1) /* 8028DF1C 0028AE7C 90 BC 01 04 */ stw r5, 0x104(r28) /* 8028DF20 0028AE80 90 7C 01 08 */ stw r3, 0x108(r28) /* 8028DF24 0028AE84 90 81 00 0C */ stw r4, 0xc(r1) /* 8028DF28 0028AE88 83 9E 09 E0 */ lwz r28, 0x9e0(r30) /* 8028DF2C 0028AE8C 90 01 00 0C */ stw r0, 0xc(r1) /* 8028DF30 0028AE90 48 00 00 40 */ b lbl_8028DF70 lbl_8028DF34: /* 8028DF34 0028AE94 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 8028DF38 0028AE98 7F E3 FB 78 */ mr r3, r31 /* 8028DF3C 0028AE9C 38 81 00 08 */ addi r4, r1, 8 /* 8028DF40 0028AEA0 7C 05 EA 2E */ lhzx r0, r5, r29 /* 8028DF44 0028AEA4 B0 01 00 08 */ sth r0, 8(r1) /* 8028DF48 0028AEA8 4B DB E6 2D */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028DF4C 0028AEAC 28 03 00 00 */ cmplwi r3, 0 /* 8028DF50 0028AEB0 41 82 00 18 */ beq lbl_8028DF68 /* 8028DF54 0028AEB4 81 83 00 00 */ lwz r12, 0(r3) /* 8028DF58 0028AEB8 38 80 00 00 */ li r4, 0 /* 8028DF5C 0028AEBC 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028DF60 0028AEC0 7D 89 03 A6 */ mtctr r12 /* 8028DF64 0028AEC4 4E 80 04 21 */ bctrl lbl_8028DF68: /* 8028DF68 0028AEC8 3B 7B 00 01 */ addi r27, r27, 1 /* 8028DF6C 0028AECC 3B BD 00 14 */ addi r29, r29, 0x14 lbl_8028DF70: /* 8028DF70 0028AED0 7C 1B E0 40 */ cmplw r27, r28 /* 8028DF74 0028AED4 41 80 FF C0 */ blt lbl_8028DF34 /* 8028DF78 0028AED8 48 00 00 38 */ b lbl_8028DFB0 lbl_8028DF7C: /* 8028DF7C 0028AEDC 80 1E 05 68 */ lwz r0, 0x568(r30) /* 8028DF80 0028AEE0 2C 00 00 01 */ cmpwi r0, 1 /* 8028DF84 0028AEE4 41 82 00 2C */ beq lbl_8028DFB0 /* 8028DF88 0028AEE8 40 80 00 08 */ bge lbl_8028DF90 /* 8028DF8C 0028AEEC 48 00 00 24 */ b lbl_8028DFB0 lbl_8028DF90: /* 8028DF90 0028AEF0 2C 00 00 03 */ cmpwi r0, 3 /* 8028DF94 0028AEF4 40 80 00 1C */ bge lbl_8028DFB0 /* 8028DF98 0028AEF8 80 7E 04 50 */ lwz r3, 0x450(r30) /* 8028DF9C 0028AEFC 80 03 02 B8 */ lwz r0, 0x2b8(r3) /* 8028DFA0 0028AF00 2C 00 00 06 */ cmpwi r0, 6 /* 8028DFA4 0028AF04 41 82 00 0C */ beq lbl_8028DFB0 /* 8028DFA8 0028AF08 38 00 00 03 */ li r0, 3 /* 8028DFAC 0028AF0C 90 1E 05 68 */ stw r0, 0x568(r30) lbl_8028DFB0: /* 8028DFB0 0028AF10 BB 61 00 2C */ lmw r27, 0x2c(r1) /* 8028DFB4 0028AF14 80 01 00 44 */ lwz r0, 0x44(r1) /* 8028DFB8 0028AF18 7C 08 03 A6 */ mtlr r0 /* 8028DFBC 0028AF1C 38 21 00 40 */ addi r1, r1, 0x40 /* 8028DFC0 0028AF20 4E 80 00 20 */ blr .global Retreat__12COmegaPirateFR13CStateManager9EStateMsgf Retreat__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028DFC4 0028AF24 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028DFC8 0028AF28 7C 08 02 A6 */ mflr r0 /* 8028DFCC 0028AF2C 2C 05 00 01 */ cmpwi r5, 1 /* 8028DFD0 0028AF30 90 01 00 24 */ stw r0, 0x24(r1) /* 8028DFD4 0028AF34 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028DFD8 0028AF38 7C 9F 23 78 */ mr r31, r4 /* 8028DFDC 0028AF3C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8028DFE0 0028AF40 7C 7E 1B 78 */ mr r30, r3 /* 8028DFE4 0028AF44 41 82 00 74 */ beq lbl_8028E058 /* 8028DFE8 0028AF48 40 80 01 40 */ bge lbl_8028E128 /* 8028DFEC 0028AF4C 2C 05 00 00 */ cmpwi r5, 0 /* 8028DFF0 0028AF50 40 80 00 0C */ bge lbl_8028DFFC /* 8028DFF4 0028AF54 48 00 01 34 */ b lbl_8028E128 /* 8028DFF8 0028AF58 48 00 01 30 */ b lbl_8028E128 lbl_8028DFFC: /* 8028DFFC 0028AF5C 7F E5 FB 78 */ mr r5, r31 /* 8028E000 0028AF60 38 80 00 00 */ li r4, 0 /* 8028E004 0028AF64 4B F9 95 99 */ bl sub_8022759c /* 8028E008 0028AF68 38 00 00 00 */ li r0, 0 /* 8028E00C 0028AF6C 7F C3 F3 78 */ mr r3, r30 /* 8028E010 0028AF70 90 1E 05 68 */ stw r0, 0x568(r30) /* 8028E014 0028AF74 7F E5 FB 78 */ mr r5, r31 /* 8028E018 0028AF78 38 80 00 06 */ li r4, 6 /* 8028E01C 0028AF7C 38 C0 FF FF */ li r6, -1 /* 8028E020 0028AF80 4B DC 30 A1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028E024 0028AF84 38 00 00 00 */ li r0, 0 /* 8028E028 0028AF88 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028E02C 0028AF8C 98 1E 0A D0 */ stb r0, 0xad0(r30) /* 8028E030 0028AF90 C0 02 BE D4 */ lfs f0, lbl_805ADBF4@sda21(r2) /* 8028E034 0028AF94 98 1E 0A 44 */ stb r0, 0xa44(r30) /* 8028E038 0028AF98 98 1E 0A 4A */ stb r0, 0xa4a(r30) /* 8028E03C 0028AF9C D0 3E 0B 5C */ stfs f1, 0xb5c(r30) /* 8028E040 0028AFA0 D0 3E 0B 60 */ stfs f1, 0xb60(r30) /* 8028E044 0028AFA4 D0 1E 0B 64 */ stfs f0, 0xb64(r30) /* 8028E048 0028AFA8 80 7E 0B 68 */ lwz r3, 0xb68(r30) /* 8028E04C 0028AFAC 38 03 00 01 */ addi r0, r3, 1 /* 8028E050 0028AFB0 90 1E 0B 68 */ stw r0, 0xb68(r30) /* 8028E054 0028AFB4 48 00 00 D4 */ b lbl_8028E128 lbl_8028E058: /* 8028E058 0028AFB8 80 1E 05 68 */ lwz r0, 0x568(r30) /* 8028E05C 0028AFBC 2C 00 00 01 */ cmpwi r0, 1 /* 8028E060 0028AFC0 41 82 00 C8 */ beq lbl_8028E128 /* 8028E064 0028AFC4 40 80 00 10 */ bge lbl_8028E074 /* 8028E068 0028AFC8 2C 00 00 00 */ cmpwi r0, 0 /* 8028E06C 0028AFCC 40 80 00 14 */ bge lbl_8028E080 /* 8028E070 0028AFD0 48 00 00 B8 */ b lbl_8028E128 lbl_8028E074: /* 8028E074 0028AFD4 2C 00 00 03 */ cmpwi r0, 3 /* 8028E078 0028AFD8 40 80 00 B0 */ bge lbl_8028E128 /* 8028E07C 0028AFDC 48 00 00 94 */ b lbl_8028E110 lbl_8028E080: /* 8028E080 0028AFE0 80 FE 04 50 */ lwz r7, 0x450(r30) /* 8028E084 0028AFE4 80 07 02 B8 */ lwz r0, 0x2b8(r7) /* 8028E088 0028AFE8 2C 00 00 03 */ cmpwi r0, 3 /* 8028E08C 0028AFEC 40 82 00 10 */ bne lbl_8028E09C /* 8028E090 0028AFF0 38 00 00 02 */ li r0, 2 /* 8028E094 0028AFF4 90 1E 05 68 */ stw r0, 0x568(r30) /* 8028E098 0028AFF8 48 00 00 90 */ b lbl_8028E128 lbl_8028E09C: /* 8028E09C 0028AFFC 3C 80 80 3E */ lis r4, __vt__13CBodyStateCmd@ha /* 8028E0A0 0028B000 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028E0A4 0028B004 38 04 AA 68 */ addi r0, r4, __vt__13CBodyStateCmd@l /* 8028E0A8 0028B008 38 80 00 01 */ li r4, 1 /* 8028E0AC 0028B00C 90 01 00 08 */ stw r0, 8(r1) /* 8028E0B0 0028B010 38 C3 A9 E4 */ addi r6, r3, lbl_803DA9E4@l /* 8028E0B4 0028B014 38 A0 00 00 */ li r5, 0 /* 8028E0B8 0028B018 38 00 00 02 */ li r0, 2 /* 8028E0BC 0028B01C 3B E7 00 04 */ addi r31, r7, 4 /* 8028E0C0 0028B020 90 81 00 0C */ stw r4, 0xc(r1) /* 8028E0C4 0028B024 7F E3 FB 78 */ mr r3, r31 /* 8028E0C8 0028B028 38 80 00 01 */ li r4, 1 /* 8028E0CC 0028B02C 90 C1 00 08 */ stw r6, 8(r1) /* 8028E0D0 0028B030 90 A1 00 10 */ stw r5, 0x10(r1) /* 8028E0D4 0028B034 90 01 00 14 */ stw r0, 0x14(r1) /* 8028E0D8 0028B038 4B EA 33 61 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028E0DC 0028B03C 80 01 00 0C */ lwz r0, 0xc(r1) /* 8028E0E0 0028B040 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028E0E4 0028B044 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l /* 8028E0E8 0028B048 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E0EC 0028B04C 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028E0F0 0028B050 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E0F4 0028B054 80 A1 00 10 */ lwz r5, 0x10(r1) /* 8028E0F8 0028B058 90 81 00 08 */ stw r4, 8(r1) /* 8028E0FC 0028B05C 80 61 00 14 */ lwz r3, 0x14(r1) /* 8028E100 0028B060 90 BF 00 CC */ stw r5, 0xcc(r31) /* 8028E104 0028B064 90 7F 00 D0 */ stw r3, 0xd0(r31) /* 8028E108 0028B068 90 01 00 08 */ stw r0, 8(r1) /* 8028E10C 0028B06C 48 00 00 1C */ b lbl_8028E128 lbl_8028E110: /* 8028E110 0028B070 80 7E 04 50 */ lwz r3, 0x450(r30) /* 8028E114 0028B074 80 03 02 B8 */ lwz r0, 0x2b8(r3) /* 8028E118 0028B078 2C 00 00 03 */ cmpwi r0, 3 /* 8028E11C 0028B07C 41 82 00 0C */ beq lbl_8028E128 /* 8028E120 0028B080 38 00 00 03 */ li r0, 3 /* 8028E124 0028B084 90 1E 05 68 */ stw r0, 0x568(r30) lbl_8028E128: /* 8028E128 0028B088 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028E12C 0028B08C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028E130 0028B090 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8028E134 0028B094 7C 08 03 A6 */ mtlr r0 /* 8028E138 0028B098 38 21 00 20 */ addi r1, r1, 0x20 /* 8028E13C 0028B09C 4E 80 00 20 */ blr .global DoubleSnap__12COmegaPirateFR13CStateManager9EStateMsgf DoubleSnap__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028E140 0028B0A0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8028E144 0028B0A4 7C 08 02 A6 */ mflr r0 /* 8028E148 0028B0A8 2C 05 00 01 */ cmpwi r5, 1 /* 8028E14C 0028B0AC 90 01 00 44 */ stw r0, 0x44(r1) /* 8028E150 0028B0B0 BF 41 00 28 */ stmw r26, 0x28(r1) /* 8028E154 0028B0B4 7C 7F 1B 78 */ mr r31, r3 /* 8028E158 0028B0B8 7C 9A 23 78 */ mr r26, r4 /* 8028E15C 0028B0BC 41 82 01 14 */ beq lbl_8028E270 /* 8028E160 0028B0C0 40 80 00 10 */ bge lbl_8028E170 /* 8028E164 0028B0C4 2C 05 00 00 */ cmpwi r5, 0 /* 8028E168 0028B0C8 40 80 00 14 */ bge lbl_8028E17C /* 8028E16C 0028B0CC 48 00 02 20 */ b lbl_8028E38C lbl_8028E170: /* 8028E170 0028B0D0 2C 05 00 03 */ cmpwi r5, 3 /* 8028E174 0028B0D4 40 80 02 18 */ bge lbl_8028E38C /* 8028E178 0028B0D8 48 00 01 C8 */ b lbl_8028E340 lbl_8028E17C: /* 8028E17C 0028B0DC 7F 45 D3 78 */ mr r5, r26 /* 8028E180 0028B0E0 38 80 00 07 */ li r4, 7 /* 8028E184 0028B0E4 38 C0 FF FF */ li r6, -1 /* 8028E188 0028B0E8 4B DC 2F 39 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028E18C 0028B0EC 7F E3 FB 78 */ mr r3, r31 /* 8028E190 0028B0F0 7F 45 D3 78 */ mr r5, r26 /* 8028E194 0028B0F4 38 80 00 00 */ li r4, 0 /* 8028E198 0028B0F8 4B F9 94 05 */ bl sub_8022759c /* 8028E19C 0028B0FC 3B C0 00 00 */ li r30, 0 /* 8028E1A0 0028B100 C0 02 BE D8 */ lfs f0, lbl_805ADBF8@sda21(r2) /* 8028E1A4 0028B104 93 DF 05 68 */ stw r30, 0x568(r31) /* 8028E1A8 0028B108 3B 80 00 00 */ li r28, 0 /* 8028E1AC 0028B10C 9B DF 0A 44 */ stb r30, 0xa44(r31) /* 8028E1B0 0028B110 9B DF 0A 4A */ stb r30, 0xa4a(r31) /* 8028E1B4 0028B114 9B DF 0A 88 */ stb r30, 0xa88(r31) /* 8028E1B8 0028B118 D0 1F 0A 8C */ stfs f0, 0xa8c(r31) /* 8028E1BC 0028B11C 83 BF 09 E0 */ lwz r29, 0x9e0(r31) /* 8028E1C0 0028B120 48 00 00 8C */ b lbl_8028E24C lbl_8028E1C4: /* 8028E1C4 0028B124 80 BF 09 E8 */ lwz r5, 0x9e8(r31) /* 8028E1C8 0028B128 7F 43 D3 78 */ mr r3, r26 /* 8028E1CC 0028B12C 38 81 00 14 */ addi r4, r1, 0x14 /* 8028E1D0 0028B130 7C 05 F2 2E */ lhzx r0, r5, r30 /* 8028E1D4 0028B134 B0 01 00 14 */ sth r0, 0x14(r1) /* 8028E1D8 0028B138 4B DB E3 9D */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028E1DC 0028B13C 7C 7B 1B 79 */ or. r27, r3, r3 /* 8028E1E0 0028B140 41 82 00 64 */ beq lbl_8028E244 /* 8028E1E4 0028B144 81 83 00 00 */ lwz r12, 0(r3) /* 8028E1E8 0028B148 38 80 00 01 */ li r4, 1 /* 8028E1EC 0028B14C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028E1F0 0028B150 7D 89 03 A6 */ mtctr r12 /* 8028E1F4 0028B154 4E 80 04 21 */ bctrl /* 8028E1F8 0028B158 7F 63 DB 78 */ mr r3, r27 /* 8028E1FC 0028B15C 38 9F 0A E4 */ addi r4, r31, 0xae4 /* 8028E200 0028B160 4B E2 2C 55 */ bl sub_800b0e54 /* 8028E204 0028B164 7F 63 DB 78 */ mr r3, r27 /* 8028E208 0028B168 7F 45 D3 78 */ mr r5, r26 /* 8028E20C 0028B16C 38 80 00 29 */ li r4, 0x29 /* 8028E210 0028B170 4B DC 61 41 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028E214 0028B174 7F 63 DB 78 */ mr r3, r27 /* 8028E218 0028B178 7F 45 D3 78 */ mr r5, r26 /* 8028E21C 0028B17C 38 80 00 28 */ li r4, 0x28 /* 8028E220 0028B180 4B DC 61 31 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028E224 0028B184 88 1B 03 56 */ lbz r0, 0x356(r27) /* 8028E228 0028B188 38 60 00 00 */ li r3, 0 /* 8028E22C 0028B18C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 8028E230 0028B190 38 60 00 01 */ li r3, 1 /* 8028E234 0028B194 98 1B 03 56 */ stb r0, 0x356(r27) /* 8028E238 0028B198 88 1B 03 56 */ lbz r0, 0x356(r27) /* 8028E23C 0028B19C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f /* 8028E240 0028B1A0 98 1B 03 56 */ stb r0, 0x356(r27) lbl_8028E244: /* 8028E244 0028B1A4 3B 9C 00 01 */ addi r28, r28, 1 /* 8028E248 0028B1A8 3B DE 00 14 */ addi r30, r30, 0x14 lbl_8028E24C: /* 8028E24C 0028B1AC 7C 1C E8 40 */ cmplw r28, r29 /* 8028E250 0028B1B0 41 80 FF 74 */ blt lbl_8028E1C4 /* 8028E254 0028B1B4 C0 02 BE DC */ lfs f0, lbl_805ADBFC@sda21(r2) /* 8028E258 0028B1B8 7F E3 FB 78 */ mr r3, r31 /* 8028E25C 0028B1BC 7F 45 D3 78 */ mr r5, r26 /* 8028E260 0028B1C0 38 80 00 27 */ li r4, 0x27 /* 8028E264 0028B1C4 D0 1F 0B 64 */ stfs f0, 0xb64(r31) /* 8028E268 0028B1C8 4B DC 60 E9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028E26C 0028B1CC 48 00 01 20 */ b lbl_8028E38C lbl_8028E270: /* 8028E270 0028B1D0 80 1F 05 68 */ lwz r0, 0x568(r31) /* 8028E274 0028B1D4 2C 00 00 01 */ cmpwi r0, 1 /* 8028E278 0028B1D8 41 82 01 14 */ beq lbl_8028E38C /* 8028E27C 0028B1DC 40 80 00 10 */ bge lbl_8028E28C /* 8028E280 0028B1E0 2C 00 00 00 */ cmpwi r0, 0 /* 8028E284 0028B1E4 40 80 00 14 */ bge lbl_8028E298 /* 8028E288 0028B1E8 48 00 01 04 */ b lbl_8028E38C lbl_8028E28C: /* 8028E28C 0028B1EC 2C 00 00 03 */ cmpwi r0, 3 /* 8028E290 0028B1F0 40 80 00 FC */ bge lbl_8028E38C /* 8028E294 0028B1F4 48 00 00 90 */ b lbl_8028E324 lbl_8028E298: /* 8028E298 0028B1F8 80 9F 04 50 */ lwz r4, 0x450(r31) /* 8028E29C 0028B1FC 80 04 02 B8 */ lwz r0, 0x2b8(r4) /* 8028E2A0 0028B200 2C 00 00 03 */ cmpwi r0, 3 /* 8028E2A4 0028B204 40 82 00 10 */ bne lbl_8028E2B4 /* 8028E2A8 0028B208 38 00 00 02 */ li r0, 2 /* 8028E2AC 0028B20C 90 1F 05 68 */ stw r0, 0x568(r31) /* 8028E2B0 0028B210 48 00 00 DC */ b lbl_8028E38C lbl_8028E2B4: /* 8028E2B4 0028B214 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E2B8 0028B218 38 C0 00 01 */ li r6, 1 /* 8028E2BC 0028B21C 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E2C0 0028B220 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028E2C4 0028B224 90 01 00 18 */ stw r0, 0x18(r1) /* 8028E2C8 0028B228 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l /* 8028E2CC 0028B22C 38 00 00 02 */ li r0, 2 /* 8028E2D0 0028B230 3B C4 00 04 */ addi r30, r4, 4 /* 8028E2D4 0028B234 90 C1 00 1C */ stw r6, 0x1c(r1) /* 8028E2D8 0028B238 7F C3 F3 78 */ mr r3, r30 /* 8028E2DC 0028B23C 38 80 00 01 */ li r4, 1 /* 8028E2E0 0028B240 90 A1 00 18 */ stw r5, 0x18(r1) /* 8028E2E4 0028B244 90 C1 00 20 */ stw r6, 0x20(r1) /* 8028E2E8 0028B248 90 01 00 24 */ stw r0, 0x24(r1) /* 8028E2EC 0028B24C 4B EA 31 4D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028E2F0 0028B250 80 01 00 1C */ lwz r0, 0x1c(r1) /* 8028E2F4 0028B254 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028E2F8 0028B258 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l /* 8028E2FC 0028B25C 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E300 0028B260 90 1E 00 C8 */ stw r0, 0xc8(r30) /* 8028E304 0028B264 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E308 0028B268 80 A1 00 20 */ lwz r5, 0x20(r1) /* 8028E30C 0028B26C 90 81 00 18 */ stw r4, 0x18(r1) /* 8028E310 0028B270 80 61 00 24 */ lwz r3, 0x24(r1) /* 8028E314 0028B274 90 BE 00 CC */ stw r5, 0xcc(r30) /* 8028E318 0028B278 90 7E 00 D0 */ stw r3, 0xd0(r30) /* 8028E31C 0028B27C 90 01 00 18 */ stw r0, 0x18(r1) /* 8028E320 0028B280 48 00 00 6C */ b lbl_8028E38C lbl_8028E324: /* 8028E324 0028B284 80 7F 04 50 */ lwz r3, 0x450(r31) /* 8028E328 0028B288 80 03 02 B8 */ lwz r0, 0x2b8(r3) /* 8028E32C 0028B28C 2C 00 00 03 */ cmpwi r0, 3 /* 8028E330 0028B290 41 82 00 5C */ beq lbl_8028E38C /* 8028E334 0028B294 38 00 00 03 */ li r0, 3 /* 8028E338 0028B298 90 1F 05 68 */ stw r0, 0x568(r31) /* 8028E33C 0028B29C 48 00 00 50 */ b lbl_8028E38C lbl_8028E340: /* 8028E340 0028B2A0 A0 1F 07 72 */ lhz r0, 0x772(r31) /* 8028E344 0028B2A4 7F 43 D3 78 */ mr r3, r26 /* 8028E348 0028B2A8 38 81 00 10 */ addi r4, r1, 0x10 /* 8028E34C 0028B2AC B0 01 00 0C */ sth r0, 0xc(r1) /* 8028E350 0028B2B0 B0 01 00 10 */ sth r0, 0x10(r1) /* 8028E354 0028B2B4 4B DB E2 21 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028E358 0028B2B8 28 03 00 00 */ cmplwi r3, 0 /* 8028E35C 0028B2BC 41 82 00 0C */ beq lbl_8028E368 /* 8028E360 0028B2C0 38 00 00 01 */ li r0, 1 /* 8028E364 0028B2C4 98 03 03 FE */ stb r0, 0x3fe(r3) lbl_8028E368: /* 8028E368 0028B2C8 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 8028E36C 0028B2CC 7F 43 D3 78 */ mr r3, r26 /* 8028E370 0028B2D0 38 81 00 08 */ addi r4, r1, 8 /* 8028E374 0028B2D4 B0 01 00 08 */ sth r0, 8(r1) /* 8028E378 0028B2D8 4B DB E1 FD */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028E37C 0028B2DC 28 03 00 00 */ cmplwi r3, 0 /* 8028E380 0028B2E0 41 82 00 0C */ beq lbl_8028E38C /* 8028E384 0028B2E4 38 00 00 01 */ li r0, 1 /* 8028E388 0028B2E8 98 03 03 FE */ stb r0, 0x3fe(r3) lbl_8028E38C: /* 8028E38C 0028B2EC BB 41 00 28 */ lmw r26, 0x28(r1) /* 8028E390 0028B2F0 80 01 00 44 */ lwz r0, 0x44(r1) /* 8028E394 0028B2F4 7C 08 03 A6 */ mtlr r0 /* 8028E398 0028B2F8 38 21 00 40 */ addi r1, r1, 0x40 /* 8028E39C 0028B2FC 4E 80 00 20 */ blr .global Faint__12COmegaPirateFR13CStateManager9EStateMsgf Faint__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028E3A0 0028B300 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8028E3A4 0028B304 7C 08 02 A6 */ mflr r0 /* 8028E3A8 0028B308 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8028E3AC 0028B30C DB E1 00 90 */ stfd f31, 0x90(r1) /* 8028E3B0 0028B310 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8028E3B4 0028B314 DB C1 00 80 */ stfd f30, 0x80(r1) /* 8028E3B8 0028B318 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 8028E3BC 0028B31C DB A1 00 70 */ stfd f29, 0x70(r1) /* 8028E3C0 0028B320 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 8028E3C4 0028B324 BF 41 00 58 */ stmw r26, 0x58(r1) /* 8028E3C8 0028B328 FF A0 08 90 */ fmr f29, f1 /* 8028E3CC 0028B32C 2C 05 00 01 */ cmpwi r5, 1 /* 8028E3D0 0028B330 7C 7B 1B 78 */ mr r27, r3 /* 8028E3D4 0028B334 7C 9C 23 78 */ mr r28, r4 /* 8028E3D8 0028B338 41 82 00 FC */ beq lbl_8028E4D4 /* 8028E3DC 0028B33C 40 80 00 10 */ bge lbl_8028E3EC /* 8028E3E0 0028B340 2C 05 00 00 */ cmpwi r5, 0 /* 8028E3E4 0028B344 40 80 00 14 */ bge lbl_8028E3F8 /* 8028E3E8 0028B348 48 00 03 D4 */ b lbl_8028E7BC lbl_8028E3EC: /* 8028E3EC 0028B34C 2C 05 00 03 */ cmpwi r5, 3 /* 8028E3F0 0028B350 40 80 03 CC */ bge lbl_8028E7BC /* 8028E3F4 0028B354 48 00 03 70 */ b lbl_8028E764 lbl_8028E3F8: /* 8028E3F8 0028B358 3C 80 80 3E */ lis r4, __vt__13CBodyStateCmd@ha /* 8028E3FC 0028B35C 80 7B 04 50 */ lwz r3, 0x450(r27) /* 8028E400 0028B360 38 04 AA 68 */ addi r0, r4, __vt__13CBodyStateCmd@l /* 8028E404 0028B364 3C 80 80 3E */ lis r4, lbl_803DAA2C@ha /* 8028E408 0028B368 90 01 00 48 */ stw r0, 0x48(r1) /* 8028E40C 0028B36C 38 A4 AA 2C */ addi r5, r4, lbl_803DAA2C@l /* 8028E410 0028B370 38 80 00 08 */ li r4, 8 /* 8028E414 0028B374 38 00 00 00 */ li r0, 0 /* 8028E418 0028B378 3B 43 00 04 */ addi r26, r3, 4 /* 8028E41C 0028B37C 90 81 00 4C */ stw r4, 0x4c(r1) /* 8028E420 0028B380 7F 43 D3 78 */ mr r3, r26 /* 8028E424 0028B384 38 80 00 08 */ li r4, 8 /* 8028E428 0028B388 90 A1 00 48 */ stw r5, 0x48(r1) /* 8028E42C 0028B38C 90 01 00 50 */ stw r0, 0x50(r1) /* 8028E430 0028B390 4B EA 30 09 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028E434 0028B394 80 01 00 4C */ lwz r0, 0x4c(r1) /* 8028E438 0028B398 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha /* 8028E43C 0028B39C 38 83 AA 2C */ addi r4, r3, lbl_803DAA2C@l /* 8028E440 0028B3A0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E444 0028B3A4 90 1A 01 58 */ stw r0, 0x158(r26) /* 8028E448 0028B3A8 38 00 00 01 */ li r0, 1 /* 8028E44C 0028B3AC 80 A1 00 50 */ lwz r5, 0x50(r1) /* 8028E450 0028B3B0 38 63 AA 68 */ addi r3, r3, __vt__13CBodyStateCmd@l /* 8028E454 0028B3B4 90 81 00 48 */ stw r4, 0x48(r1) /* 8028E458 0028B3B8 90 BA 01 5C */ stw r5, 0x15c(r26) /* 8028E45C 0028B3BC 98 1B 0A 44 */ stb r0, 0xa44(r27) /* 8028E460 0028B3C0 98 1B 0A 4A */ stb r0, 0xa4a(r27) /* 8028E464 0028B3C4 80 1B 0A 7C */ lwz r0, 0xa7c(r27) /* 8028E468 0028B3C8 90 61 00 48 */ stw r3, 0x48(r1) /* 8028E46C 0028B3CC 2C 00 00 02 */ cmpwi r0, 2 /* 8028E470 0028B3D0 40 82 00 0C */ bne lbl_8028E47C /* 8028E474 0028B3D4 C0 02 BE E0 */ lfs f0, lbl_805ADC00@sda21(r2) /* 8028E478 0028B3D8 D0 1B 0A 8C */ stfs f0, 0xa8c(r27) lbl_8028E47C: /* 8028E47C 0028B3DC 83 BB 09 E0 */ lwz r29, 0x9e0(r27) /* 8028E480 0028B3E0 3B C0 00 00 */ li r30, 0 /* 8028E484 0028B3E4 3B 40 00 00 */ li r26, 0 /* 8028E488 0028B3E8 48 00 00 40 */ b lbl_8028E4C8 lbl_8028E48C: /* 8028E48C 0028B3EC 80 BB 09 E8 */ lwz r5, 0x9e8(r27) /* 8028E490 0028B3F0 7F 83 E3 78 */ mr r3, r28 /* 8028E494 0028B3F4 38 81 00 0C */ addi r4, r1, 0xc /* 8028E498 0028B3F8 7C 05 D2 2E */ lhzx r0, r5, r26 /* 8028E49C 0028B3FC B0 01 00 0C */ sth r0, 0xc(r1) /* 8028E4A0 0028B400 4B DB E0 D5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028E4A4 0028B404 28 03 00 00 */ cmplwi r3, 0 /* 8028E4A8 0028B408 41 82 00 18 */ beq lbl_8028E4C0 /* 8028E4AC 0028B40C 81 83 00 00 */ lwz r12, 0(r3) /* 8028E4B0 0028B410 38 80 00 01 */ li r4, 1 /* 8028E4B4 0028B414 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028E4B8 0028B418 7D 89 03 A6 */ mtctr r12 /* 8028E4BC 0028B41C 4E 80 04 21 */ bctrl lbl_8028E4C0: /* 8028E4C0 0028B420 3B DE 00 01 */ addi r30, r30, 1 /* 8028E4C4 0028B424 3B 5A 00 14 */ addi r26, r26, 0x14 lbl_8028E4C8: /* 8028E4C8 0028B428 7C 1E E8 40 */ cmplw r30, r29 /* 8028E4CC 0028B42C 41 80 FF C0 */ blt lbl_8028E48C /* 8028E4D0 0028B430 48 00 02 EC */ b lbl_8028E7BC lbl_8028E4D4: /* 8028E4D4 0028B434 80 1B 0B 4C */ lwz r0, 0xb4c(r27) /* 8028E4D8 0028B438 28 00 00 04 */ cmplwi r0, 4 /* 8028E4DC 0028B43C 40 80 02 14 */ bge lbl_8028E6F0 /* 8028E4E0 0028B440 80 1B 09 C8 */ lwz r0, 0x9c8(r27) /* 8028E4E4 0028B444 2C 00 00 00 */ cmpwi r0, 0 /* 8028E4E8 0028B448 40 82 02 08 */ bne lbl_8028E6F0 /* 8028E4EC 0028B44C C0 3B 0B 58 */ lfs f1, 0xb58(r27) /* 8028E4F0 0028B450 C0 02 BE E4 */ lfs f0, lbl_805ADC04@sda21(r2) /* 8028E4F4 0028B454 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028E4F8 0028B458 4C 41 13 82 */ cror 2, 1, 2 /* 8028E4FC 0028B45C 40 82 01 F4 */ bne lbl_8028E6F0 /* 8028E500 0028B460 C0 22 BE 90 */ lfs f1, lbl_805ADBB0@sda21(r2) /* 8028E504 0028B464 C0 1B 0B 50 */ lfs f0, 0xb50(r27) /* 8028E508 0028B468 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028E50C 0028B46C 40 80 00 0C */ bge lbl_8028E518 /* 8028E510 0028B470 38 62 BE 90 */ addi r3, r2, lbl_805ADBB0@sda21 /* 8028E514 0028B474 48 00 00 08 */ b lbl_8028E51C lbl_8028E518: /* 8028E518 0028B478 38 7B 0B 50 */ addi r3, r27, 0xb50 lbl_8028E51C: /* 8028E51C 0028B47C C3 E3 00 00 */ lfs f31, 0(r3) /* 8028E520 0028B480 3B A0 00 00 */ li r29, 0 /* 8028E524 0028B484 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028E528 0028B488 3B 40 00 00 */ li r26, 0 /* 8028E52C 0028B48C 83 DB 09 E0 */ lwz r30, 0x9e0(r27) /* 8028E530 0028B490 EF C0 F8 28 */ fsubs f30, f0, f31 /* 8028E534 0028B494 48 00 01 78 */ b lbl_8028E6AC lbl_8028E538: /* 8028E538 0028B498 80 BB 09 E8 */ lwz r5, 0x9e8(r27) /* 8028E53C 0028B49C 7F 83 E3 78 */ mr r3, r28 /* 8028E540 0028B4A0 38 81 00 08 */ addi r4, r1, 8 /* 8028E544 0028B4A4 7C 05 D2 2E */ lhzx r0, r5, r26 /* 8028E548 0028B4A8 B0 01 00 08 */ sth r0, 8(r1) /* 8028E54C 0028B4AC 4B DB E0 29 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028E550 0028B4B0 7C 7F 1B 79 */ or. r31, r3, r3 /* 8028E554 0028B4B4 41 82 01 50 */ beq lbl_8028E6A4 /* 8028E558 0028B4B8 80 7C 08 B8 */ lwz r3, 0x8b8(r28) /* 8028E55C 0028B4BC 7F 84 E3 78 */ mr r4, r28 /* 8028E560 0028B4C0 80 63 00 00 */ lwz r3, 0(r3) /* 8028E564 0028B4C4 4B E0 2F F5 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028E568 0028B4C8 2C 03 00 01 */ cmpwi r3, 1 /* 8028E56C 0028B4CC 40 82 00 E8 */ bne lbl_8028E654 /* 8028E570 0028B4D0 80 1B 0B 4C */ lwz r0, 0xb4c(r27) /* 8028E574 0028B4D4 7C 1D 00 40 */ cmplw r29, r0 /* 8028E578 0028B4D8 40 80 00 58 */ bge lbl_8028E5D0 /* 8028E57C 0028B4DC C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028E580 0028B4E0 38 61 00 18 */ addi r3, r1, 0x18 /* 8028E584 0028B4E4 C0 82 BE A0 */ lfs f4, lbl_805ADBC0@sda21(r2) /* 8028E588 0028B4E8 FC 40 08 90 */ fmr f2, f1 /* 8028E58C 0028B4EC FC 60 08 90 */ fmr f3, f1 /* 8028E590 0028B4F0 48 0D 4E 5D */ bl __ct__6CColorFffff /* 8028E594 0028B4F4 80 61 00 18 */ lwz r3, 0x18(r1) /* 8028E598 0028B4F8 38 C0 00 05 */ li r6, 5 /* 8028E59C 0028B4FC 38 80 00 03 */ li r4, 3 /* 8028E5A0 0028B500 38 A0 00 00 */ li r5, 0 /* 8028E5A4 0028B504 98 DF 00 B4 */ stb r6, 0xb4(r31) /* 8028E5A8 0028B508 54 80 00 3A */ rlwinm r0, r4, 0, 0, 0x1d /* 8028E5AC 0028B50C 60 00 00 03 */ ori r0, r0, 3 /* 8028E5B0 0028B510 98 BF 00 B5 */ stb r5, 0xb5(r31) /* 8028E5B4 0028B514 B0 1F 00 B6 */ sth r0, 0xb6(r31) /* 8028E5B8 0028B518 98 C1 00 34 */ stb r6, 0x34(r1) /* 8028E5BC 0028B51C 98 A1 00 35 */ stb r5, 0x35(r1) /* 8028E5C0 0028B520 B0 81 00 36 */ sth r4, 0x36(r1) /* 8028E5C4 0028B524 90 61 00 38 */ stw r3, 0x38(r1) /* 8028E5C8 0028B528 90 7F 00 B8 */ stw r3, 0xb8(r31) /* 8028E5CC 0028B52C 48 00 00 D8 */ b lbl_8028E6A4 lbl_8028E5D0: /* 8028E5D0 0028B530 7C 00 E8 40 */ cmplw r0, r29 /* 8028E5D4 0028B534 40 82 00 D0 */ bne lbl_8028E6A4 /* 8028E5D8 0028B538 88 1B 0B 6E */ lbz r0, 0xb6e(r27) /* 8028E5DC 0028B53C 28 00 00 00 */ cmplwi r0, 0 /* 8028E5E0 0028B540 40 82 00 20 */ bne lbl_8028E600 /* 8028E5E4 0028B544 7F 63 DB 78 */ mr r3, r27 /* 8028E5E8 0028B548 7F 85 E3 78 */ mr r5, r28 /* 8028E5EC 0028B54C 38 80 00 03 */ li r4, 3 /* 8028E5F0 0028B550 38 C0 FF FF */ li r6, -1 /* 8028E5F4 0028B554 4B DC 2A CD */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028E5F8 0028B558 38 00 00 01 */ li r0, 1 /* 8028E5FC 0028B55C 98 1B 0B 6E */ stb r0, 0xb6e(r27) lbl_8028E600: /* 8028E600 0028B560 FC 20 F0 90 */ fmr f1, f30 /* 8028E604 0028B564 38 61 00 14 */ addi r3, r1, 0x14 /* 8028E608 0028B568 FC 40 F0 90 */ fmr f2, f30 /* 8028E60C 0028B56C FC 60 F0 90 */ fmr f3, f30 /* 8028E610 0028B570 FC 80 F8 90 */ fmr f4, f31 /* 8028E614 0028B574 48 0D 4D D9 */ bl __ct__6CColorFffff /* 8028E618 0028B578 80 61 00 14 */ lwz r3, 0x14(r1) /* 8028E61C 0028B57C 38 C0 00 05 */ li r6, 5 /* 8028E620 0028B580 38 80 00 03 */ li r4, 3 /* 8028E624 0028B584 38 A0 00 00 */ li r5, 0 /* 8028E628 0028B588 98 DF 00 B4 */ stb r6, 0xb4(r31) /* 8028E62C 0028B58C 54 80 00 3A */ rlwinm r0, r4, 0, 0, 0x1d /* 8028E630 0028B590 60 00 00 03 */ ori r0, r0, 3 /* 8028E634 0028B594 98 BF 00 B5 */ stb r5, 0xb5(r31) /* 8028E638 0028B598 B0 1F 00 B6 */ sth r0, 0xb6(r31) /* 8028E63C 0028B59C 98 C1 00 2C */ stb r6, 0x2c(r1) /* 8028E640 0028B5A0 98 A1 00 2D */ stb r5, 0x2d(r1) /* 8028E644 0028B5A4 B0 81 00 2E */ sth r4, 0x2e(r1) /* 8028E648 0028B5A8 90 61 00 30 */ stw r3, 0x30(r1) /* 8028E64C 0028B5AC 90 7F 00 B8 */ stw r3, 0xb8(r31) /* 8028E650 0028B5B0 48 00 00 54 */ b lbl_8028E6A4 lbl_8028E654: /* 8028E654 0028B5B4 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028E658 0028B5B8 38 61 00 10 */ addi r3, r1, 0x10 /* 8028E65C 0028B5BC C0 82 BE 9C */ lfs f4, lbl_805ADBBC@sda21(r2) /* 8028E660 0028B5C0 FC 40 08 90 */ fmr f2, f1 /* 8028E664 0028B5C4 FC 60 08 90 */ fmr f3, f1 /* 8028E668 0028B5C8 48 0D 4D 85 */ bl __ct__6CColorFffff /* 8028E66C 0028B5CC 80 61 00 10 */ lwz r3, 0x10(r1) /* 8028E670 0028B5D0 38 C0 00 05 */ li r6, 5 /* 8028E674 0028B5D4 38 80 00 03 */ li r4, 3 /* 8028E678 0028B5D8 38 A0 00 00 */ li r5, 0 /* 8028E67C 0028B5DC 98 DF 00 B4 */ stb r6, 0xb4(r31) /* 8028E680 0028B5E0 54 80 00 3A */ rlwinm r0, r4, 0, 0, 0x1d /* 8028E684 0028B5E4 60 00 00 03 */ ori r0, r0, 3 /* 8028E688 0028B5E8 98 BF 00 B5 */ stb r5, 0xb5(r31) /* 8028E68C 0028B5EC B0 1F 00 B6 */ sth r0, 0xb6(r31) /* 8028E690 0028B5F0 98 C1 00 24 */ stb r6, 0x24(r1) /* 8028E694 0028B5F4 98 A1 00 25 */ stb r5, 0x25(r1) /* 8028E698 0028B5F8 B0 81 00 26 */ sth r4, 0x26(r1) /* 8028E69C 0028B5FC 90 61 00 28 */ stw r3, 0x28(r1) /* 8028E6A0 0028B600 90 7F 00 B8 */ stw r3, 0xb8(r31) lbl_8028E6A4: /* 8028E6A4 0028B604 3B BD 00 01 */ addi r29, r29, 1 /* 8028E6A8 0028B608 3B 5A 00 14 */ addi r26, r26, 0x14 lbl_8028E6AC: /* 8028E6AC 0028B60C 7C 1D F0 40 */ cmplw r29, r30 /* 8028E6B0 0028B610 41 80 FE 88 */ blt lbl_8028E538 /* 8028E6B4 0028B614 C0 3B 0B 50 */ lfs f1, 0xb50(r27) /* 8028E6B8 0028B618 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028E6BC 0028B61C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028E6C0 0028B620 40 81 00 24 */ ble lbl_8028E6E4 /* 8028E6C4 0028B624 80 7B 0B 4C */ lwz r3, 0xb4c(r27) /* 8028E6C8 0028B628 38 00 00 00 */ li r0, 0 /* 8028E6CC 0028B62C C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028E6D0 0028B630 38 63 00 01 */ addi r3, r3, 1 /* 8028E6D4 0028B634 90 7B 0B 4C */ stw r3, 0xb4c(r27) /* 8028E6D8 0028B638 D0 1B 0B 50 */ stfs f0, 0xb50(r27) /* 8028E6DC 0028B63C D0 1B 0B 58 */ stfs f0, 0xb58(r27) /* 8028E6E0 0028B640 98 1B 0B 6E */ stb r0, 0xb6e(r27) lbl_8028E6E4: /* 8028E6E4 0028B644 C0 1B 0B 50 */ lfs f0, 0xb50(r27) /* 8028E6E8 0028B648 EC 00 E8 2A */ fadds f0, f0, f29 /* 8028E6EC 0028B64C D0 1B 0B 50 */ stfs f0, 0xb50(r27) lbl_8028E6F0: /* 8028E6F0 0028B650 C0 1B 0B 58 */ lfs f0, 0xb58(r27) /* 8028E6F4 0028B654 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E6F8 0028B658 38 83 AA 68 */ addi r4, r3, __vt__13CBodyStateCmd@l /* 8028E6FC 0028B65C 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha /* 8028E700 0028B660 EC 00 E8 2A */ fadds f0, f0, f29 /* 8028E704 0028B664 38 C0 00 08 */ li r6, 8 /* 8028E708 0028B668 38 00 00 00 */ li r0, 0 /* 8028E70C 0028B66C 90 81 00 3C */ stw r4, 0x3c(r1) /* 8028E710 0028B670 38 A3 AA 2C */ addi r5, r3, lbl_803DAA2C@l /* 8028E714 0028B674 38 80 00 08 */ li r4, 8 /* 8028E718 0028B678 D0 1B 0B 58 */ stfs f0, 0xb58(r27) /* 8028E71C 0028B67C 80 7B 04 50 */ lwz r3, 0x450(r27) /* 8028E720 0028B680 90 C1 00 40 */ stw r6, 0x40(r1) /* 8028E724 0028B684 3B 43 00 04 */ addi r26, r3, 4 /* 8028E728 0028B688 90 A1 00 3C */ stw r5, 0x3c(r1) /* 8028E72C 0028B68C 7F 43 D3 78 */ mr r3, r26 /* 8028E730 0028B690 90 01 00 44 */ stw r0, 0x44(r1) /* 8028E734 0028B694 4B EA 2D 05 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028E738 0028B698 80 01 00 40 */ lwz r0, 0x40(r1) /* 8028E73C 0028B69C 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha /* 8028E740 0028B6A0 38 83 AA 2C */ addi r4, r3, lbl_803DAA2C@l /* 8028E744 0028B6A4 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E748 0028B6A8 90 1A 01 58 */ stw r0, 0x158(r26) /* 8028E74C 0028B6AC 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E750 0028B6B0 80 61 00 44 */ lwz r3, 0x44(r1) /* 8028E754 0028B6B4 90 81 00 3C */ stw r4, 0x3c(r1) /* 8028E758 0028B6B8 90 7A 01 5C */ stw r3, 0x15c(r26) /* 8028E75C 0028B6BC 90 01 00 3C */ stw r0, 0x3c(r1) /* 8028E760 0028B6C0 48 00 00 5C */ b lbl_8028E7BC lbl_8028E764: /* 8028E764 0028B6C4 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E768 0028B6C8 38 00 00 0A */ li r0, 0xa /* 8028E76C 0028B6CC 38 63 AA 68 */ addi r3, r3, __vt__13CBodyStateCmd@l /* 8028E770 0028B6D0 90 01 00 20 */ stw r0, 0x20(r1) /* 8028E774 0028B6D4 38 81 00 1C */ addi r4, r1, 0x1c /* 8028E778 0028B6D8 90 61 00 1C */ stw r3, 0x1c(r1) /* 8028E77C 0028B6DC 80 7B 04 50 */ lwz r3, 0x450(r27) /* 8028E780 0028B6E0 38 63 00 04 */ addi r3, r3, 4 /* 8028E784 0028B6E4 4B EA 30 35 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd /* 8028E788 0028B6E8 34 01 00 1C */ addic. r0, r1, 0x1c /* 8028E78C 0028B6EC 41 82 00 10 */ beq lbl_8028E79C /* 8028E790 0028B6F0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E794 0028B6F4 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E798 0028B6F8 90 01 00 1C */ stw r0, 0x1c(r1) lbl_8028E79C: /* 8028E79C 0028B6FC C0 3B 0B 58 */ lfs f1, 0xb58(r27) /* 8028E7A0 0028B700 C0 02 BE E4 */ lfs f0, lbl_805ADC04@sda21(r2) /* 8028E7A4 0028B704 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028E7A8 0028B708 4C 41 13 82 */ cror 2, 1, 2 /* 8028E7AC 0028B70C 40 82 00 10 */ bne lbl_8028E7BC /* 8028E7B0 0028B710 80 7B 0B 4C */ lwz r3, 0xb4c(r27) /* 8028E7B4 0028B714 38 03 00 01 */ addi r0, r3, 1 /* 8028E7B8 0028B718 90 1B 0B 4C */ stw r0, 0xb4c(r27) lbl_8028E7BC: /* 8028E7BC 0028B71C E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8028E7C0 0028B720 CB E1 00 90 */ lfd f31, 0x90(r1) /* 8028E7C4 0028B724 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 8028E7C8 0028B728 CB C1 00 80 */ lfd f30, 0x80(r1) /* 8028E7CC 0028B72C E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 8028E7D0 0028B730 CB A1 00 70 */ lfd f29, 0x70(r1) /* 8028E7D4 0028B734 BB 41 00 58 */ lmw r26, 0x58(r1) /* 8028E7D8 0028B738 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8028E7DC 0028B73C 7C 08 03 A6 */ mtlr r0 /* 8028E7E0 0028B740 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8028E7E4 0028B744 4E 80 00 20 */ blr .global Dizzy__12COmegaPirateFR13CStateManager9EStateMsgf Dizzy__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028E7E8 0028B748 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8028E7EC 0028B74C 7C 08 02 A6 */ mflr r0 /* 8028E7F0 0028B750 2C 05 00 01 */ cmpwi r5, 1 /* 8028E7F4 0028B754 90 01 00 34 */ stw r0, 0x34(r1) /* 8028E7F8 0028B758 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8028E7FC 0028B75C 41 82 00 2C */ beq lbl_8028E828 /* 8028E800 0028B760 40 80 00 10 */ bge lbl_8028E810 /* 8028E804 0028B764 2C 05 00 00 */ cmpwi r5, 0 /* 8028E808 0028B768 40 80 00 14 */ bge lbl_8028E81C /* 8028E80C 0028B76C 48 00 00 B4 */ b lbl_8028E8C0 lbl_8028E810: /* 8028E810 0028B770 2C 05 00 03 */ cmpwi r5, 3 /* 8028E814 0028B774 40 80 00 AC */ bge lbl_8028E8C0 /* 8028E818 0028B778 48 00 00 78 */ b lbl_8028E890 lbl_8028E81C: /* 8028E81C 0028B77C 38 00 00 01 */ li r0, 1 /* 8028E820 0028B780 98 03 0A 44 */ stb r0, 0xa44(r3) /* 8028E824 0028B784 48 00 00 9C */ b lbl_8028E8C0 lbl_8028E828: /* 8028E828 0028B788 3C 80 80 3E */ lis r4, __vt__13CBodyStateCmd@ha /* 8028E82C 0028B78C 80 63 04 50 */ lwz r3, 0x450(r3) /* 8028E830 0028B790 38 04 AA 68 */ addi r0, r4, __vt__13CBodyStateCmd@l /* 8028E834 0028B794 3C 80 80 3E */ lis r4, lbl_803DAA2C@ha /* 8028E838 0028B798 90 01 00 10 */ stw r0, 0x10(r1) /* 8028E83C 0028B79C 38 A4 AA 2C */ addi r5, r4, lbl_803DAA2C@l /* 8028E840 0028B7A0 38 80 00 08 */ li r4, 8 /* 8028E844 0028B7A4 38 00 00 02 */ li r0, 2 /* 8028E848 0028B7A8 3B E3 00 04 */ addi r31, r3, 4 /* 8028E84C 0028B7AC 90 81 00 14 */ stw r4, 0x14(r1) /* 8028E850 0028B7B0 7F E3 FB 78 */ mr r3, r31 /* 8028E854 0028B7B4 38 80 00 08 */ li r4, 8 /* 8028E858 0028B7B8 90 A1 00 10 */ stw r5, 0x10(r1) /* 8028E85C 0028B7BC 90 01 00 18 */ stw r0, 0x18(r1) /* 8028E860 0028B7C0 4B EA 2B D9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028E864 0028B7C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8028E868 0028B7C8 3C 60 80 3E */ lis r3, lbl_803DAA2C@ha /* 8028E86C 0028B7CC 38 83 AA 2C */ addi r4, r3, lbl_803DAA2C@l /* 8028E870 0028B7D0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E874 0028B7D4 90 1F 01 58 */ stw r0, 0x158(r31) /* 8028E878 0028B7D8 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E87C 0028B7DC 80 61 00 18 */ lwz r3, 0x18(r1) /* 8028E880 0028B7E0 90 81 00 10 */ stw r4, 0x10(r1) /* 8028E884 0028B7E4 90 7F 01 5C */ stw r3, 0x15c(r31) /* 8028E888 0028B7E8 90 01 00 10 */ stw r0, 0x10(r1) /* 8028E88C 0028B7EC 48 00 00 34 */ b lbl_8028E8C0 lbl_8028E890: /* 8028E890 0028B7F0 3C 80 80 3E */ lis r4, __vt__13CBodyStateCmd@ha /* 8028E894 0028B7F4 38 00 00 0A */ li r0, 0xa /* 8028E898 0028B7F8 38 A4 AA 68 */ addi r5, r4, __vt__13CBodyStateCmd@l /* 8028E89C 0028B7FC 90 01 00 0C */ stw r0, 0xc(r1) /* 8028E8A0 0028B800 38 81 00 08 */ addi r4, r1, 8 /* 8028E8A4 0028B804 90 A1 00 08 */ stw r5, 8(r1) /* 8028E8A8 0028B808 80 63 04 50 */ lwz r3, 0x450(r3) /* 8028E8AC 0028B80C 38 63 00 04 */ addi r3, r3, 4 /* 8028E8B0 0028B810 4B EA 2F 09 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd /* 8028E8B4 0028B814 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028E8B8 0028B818 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028E8BC 0028B81C 90 01 00 08 */ stw r0, 8(r1) lbl_8028E8C0: /* 8028E8C0 0028B820 80 01 00 34 */ lwz r0, 0x34(r1) /* 8028E8C4 0028B824 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8028E8C8 0028B828 7C 08 03 A6 */ mtlr r0 /* 8028E8CC 0028B82C 38 21 00 30 */ addi r1, r1, 0x30 /* 8028E8D0 0028B830 4E 80 00 20 */ blr .global Growth__12COmegaPirateFR13CStateManager9EStateMsgf Growth__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028E8D4 0028B834 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8028E8D8 0028B838 7C 08 02 A6 */ mflr r0 /* 8028E8DC 0028B83C 2C 05 00 01 */ cmpwi r5, 1 /* 8028E8E0 0028B840 90 01 00 34 */ stw r0, 0x34(r1) /* 8028E8E4 0028B844 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8028E8E8 0028B848 7C 9F 23 78 */ mr r31, r4 /* 8028E8EC 0028B84C 93 C1 00 28 */ stw r30, 0x28(r1) /* 8028E8F0 0028B850 7C 7E 1B 78 */ mr r30, r3 /* 8028E8F4 0028B854 41 82 00 B0 */ beq lbl_8028E9A4 /* 8028E8F8 0028B858 40 80 00 10 */ bge lbl_8028E908 /* 8028E8FC 0028B85C 2C 05 00 00 */ cmpwi r5, 0 /* 8028E900 0028B860 40 80 00 14 */ bge lbl_8028E914 /* 8028E904 0028B864 48 00 01 E0 */ b lbl_8028EAE4 lbl_8028E908: /* 8028E908 0028B868 2C 05 00 03 */ cmpwi r5, 3 /* 8028E90C 0028B86C 40 80 01 D8 */ bge lbl_8028EAE4 /* 8028E910 0028B870 48 00 01 60 */ b lbl_8028EA70 lbl_8028E914: /* 8028E914 0028B874 38 80 00 02 */ li r4, 2 /* 8028E918 0028B878 38 00 00 00 */ li r0, 0 /* 8028E91C 0028B87C 90 9E 09 C8 */ stw r4, 0x9c8(r30) /* 8028E920 0028B880 7F E5 FB 78 */ mr r5, r31 /* 8028E924 0028B884 38 80 00 33 */ li r4, 0x33 /* 8028E928 0028B888 98 1E 0A D0 */ stb r0, 0xad0(r30) /* 8028E92C 0028B88C 4B DC 56 55 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028E930 0028B890 7F C3 F3 78 */ mr r3, r30 /* 8028E934 0028B894 7F E5 FB 78 */ mr r5, r31 /* 8028E938 0028B898 38 80 00 27 */ li r4, 0x27 /* 8028E93C 0028B89C 4B DC 56 45 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028E940 0028B8A0 38 00 00 00 */ li r0, 0 /* 8028E944 0028B8A4 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 8028E948 0028B8A8 98 1E 0B 6C */ stb r0, 0xb6c(r30) /* 8028E94C 0028B8AC 39 03 66 A0 */ addi r8, r3, sZeroVector__9CVector3f@l /* 8028E950 0028B8B0 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028E954 0028B8B4 7F C3 F3 78 */ mr r3, r30 /* 8028E958 0028B8B8 98 1E 0B 6D */ stb r0, 0xb6d(r30) /* 8028E95C 0028B8BC 39 21 00 1C */ addi r9, r1, 0x1c /* 8028E960 0028B8C0 C0 42 BE D0 */ lfs f2, lbl_805ADBF0@sda21(r2) /* 8028E964 0028B8C4 38 80 0B 27 */ li r4, 0xb27 /* 8028E968 0028B8C8 81 5F 08 CC */ lwz r10, 0x8cc(r31) /* 8028E96C 0028B8CC 38 A0 00 00 */ li r5, 0 /* 8028E970 0028B8D0 C0 BE 00 60 */ lfs f5, 0x60(r30) /* 8028E974 0028B8D4 38 C0 00 14 */ li r6, 0x14 /* 8028E978 0028B8D8 C0 9E 00 50 */ lfs f4, 0x50(r30) /* 8028E97C 0028B8DC 38 E0 00 7F */ li r7, 0x7f /* 8028E980 0028B8E0 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8028E984 0028B8E4 C0 62 BE E8 */ lfs f3, lbl_805ADC08@sda21(r2) /* 8028E988 0028B8E8 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8028E98C 0028B8EC D0 81 00 20 */ stfs f4, 0x20(r1) /* 8028E990 0028B8F0 D0 A1 00 24 */ stfs f5, 0x24(r1) /* 8028E994 0028B8F4 93 E1 00 08 */ stw r31, 8(r1) /* 8028E998 0028B8F8 90 01 00 0C */ stw r0, 0xc(r1) /* 8028E99C 0028B8FC 4B DC 45 95 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManagerb /* 8028E9A0 0028B900 48 00 01 44 */ b lbl_8028EAE4 lbl_8028E9A4: /* 8028E9A4 0028B904 80 1E 0B 68 */ lwz r0, 0xb68(r30) /* 8028E9A8 0028B908 28 00 00 00 */ cmplwi r0, 0 /* 8028E9AC 0028B90C 40 82 00 84 */ bne lbl_8028EA30 /* 8028E9B0 0028B910 C0 22 BE EC */ lfs f1, lbl_805ADC0C@sda21(r2) /* 8028E9B4 0028B914 C0 1E 0B 64 */ lfs f0, 0xb64(r30) /* 8028E9B8 0028B918 C0 5E 03 38 */ lfs f2, 0x338(r30) /* 8028E9BC 0028B91C EC 01 00 32 */ fmuls f0, f1, f0 /* 8028E9C0 0028B920 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028E9C4 0028B924 40 81 00 28 */ ble lbl_8028E9EC /* 8028E9C8 0028B928 88 1E 0B 6C */ lbz r0, 0xb6c(r30) /* 8028E9CC 0028B92C 28 00 00 00 */ cmplwi r0, 0 /* 8028E9D0 0028B930 40 82 00 1C */ bne lbl_8028E9EC /* 8028E9D4 0028B934 7F E5 FB 78 */ mr r5, r31 /* 8028E9D8 0028B938 38 80 00 04 */ li r4, 4 /* 8028E9DC 0028B93C 38 C0 FF FF */ li r6, -1 /* 8028E9E0 0028B940 4B DC 26 E1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028E9E4 0028B944 38 00 00 01 */ li r0, 1 /* 8028E9E8 0028B948 98 1E 0B 6C */ stb r0, 0xb6c(r30) lbl_8028E9EC: /* 8028E9EC 0028B94C C0 22 BE F0 */ lfs f1, lbl_805ADC10@sda21(r2) /* 8028E9F0 0028B950 C0 1E 0B 64 */ lfs f0, 0xb64(r30) /* 8028E9F4 0028B954 C0 5E 03 38 */ lfs f2, 0x338(r30) /* 8028E9F8 0028B958 EC 01 00 32 */ fmuls f0, f1, f0 /* 8028E9FC 0028B95C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028EA00 0028B960 40 81 00 E4 */ ble lbl_8028EAE4 /* 8028EA04 0028B964 88 1E 0B 6D */ lbz r0, 0xb6d(r30) /* 8028EA08 0028B968 28 00 00 00 */ cmplwi r0, 0 /* 8028EA0C 0028B96C 40 82 00 D8 */ bne lbl_8028EAE4 /* 8028EA10 0028B970 7F C3 F3 78 */ mr r3, r30 /* 8028EA14 0028B974 7F E5 FB 78 */ mr r5, r31 /* 8028EA18 0028B978 38 80 00 04 */ li r4, 4 /* 8028EA1C 0028B97C 38 C0 FF FF */ li r6, -1 /* 8028EA20 0028B980 4B DC 26 A1 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028EA24 0028B984 38 00 00 01 */ li r0, 1 /* 8028EA28 0028B988 98 1E 0B 6D */ stb r0, 0xb6d(r30) /* 8028EA2C 0028B98C 48 00 00 B8 */ b lbl_8028EAE4 lbl_8028EA30: /* 8028EA30 0028B990 C0 22 BE B8 */ lfs f1, lbl_805ADBD8@sda21(r2) /* 8028EA34 0028B994 C0 1E 0B 64 */ lfs f0, 0xb64(r30) /* 8028EA38 0028B998 C0 5E 03 38 */ lfs f2, 0x338(r30) /* 8028EA3C 0028B99C EC 01 00 32 */ fmuls f0, f1, f0 /* 8028EA40 0028B9A0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028EA44 0028B9A4 40 81 00 A0 */ ble lbl_8028EAE4 /* 8028EA48 0028B9A8 88 1E 0B 6C */ lbz r0, 0xb6c(r30) /* 8028EA4C 0028B9AC 28 00 00 00 */ cmplwi r0, 0 /* 8028EA50 0028B9B0 40 82 00 94 */ bne lbl_8028EAE4 /* 8028EA54 0028B9B4 7F E5 FB 78 */ mr r5, r31 /* 8028EA58 0028B9B8 38 80 00 04 */ li r4, 4 /* 8028EA5C 0028B9BC 38 C0 FF FF */ li r6, -1 /* 8028EA60 0028B9C0 4B DC 26 61 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 8028EA64 0028B9C4 38 00 00 01 */ li r0, 1 /* 8028EA68 0028B9C8 98 1E 0B 6C */ stb r0, 0xb6c(r30) /* 8028EA6C 0028B9CC 48 00 00 78 */ b lbl_8028EAE4 lbl_8028EA70: /* 8028EA70 0028B9D0 48 00 05 55 */ bl sub_8028efc4 /* 8028EA74 0028B9D4 38 00 00 01 */ li r0, 1 /* 8028EA78 0028B9D8 7F C3 F3 78 */ mr r3, r30 /* 8028EA7C 0028B9DC 98 1E 0A D0 */ stb r0, 0xad0(r30) /* 8028EA80 0028B9E0 7F E5 FB 78 */ mr r5, r31 /* 8028EA84 0028B9E4 38 80 00 33 */ li r4, 0x33 /* 8028EA88 0028B9E8 4B DC 58 C9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028EA8C 0028B9EC 81 5F 08 CC */ lwz r10, 0x8cc(r31) /* 8028EA90 0028B9F0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 8028EA94 0028B9F4 C0 9E 00 60 */ lfs f4, 0x60(r30) /* 8028EA98 0028B9F8 39 03 66 A0 */ addi r8, r3, sZeroVector__9CVector3f@l /* 8028EA9C 0028B9FC C0 7E 00 50 */ lfs f3, 0x50(r30) /* 8028EAA0 0028BA00 38 00 00 00 */ li r0, 0 /* 8028EAA4 0028BA04 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8028EAA8 0028BA08 7F C3 F3 78 */ mr r3, r30 /* 8028EAAC 0028BA0C C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028EAB0 0028BA10 39 21 00 10 */ addi r9, r1, 0x10 /* 8028EAB4 0028BA14 D0 61 00 14 */ stfs f3, 0x14(r1) /* 8028EAB8 0028BA18 38 80 0B 28 */ li r4, 0xb28 /* 8028EABC 0028BA1C C0 42 BE D0 */ lfs f2, lbl_805ADBF0@sda21(r2) /* 8028EAC0 0028BA20 38 A0 00 00 */ li r5, 0 /* 8028EAC4 0028BA24 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8028EAC8 0028BA28 38 C0 00 14 */ li r6, 0x14 /* 8028EACC 0028BA2C C0 62 BE E8 */ lfs f3, lbl_805ADC08@sda21(r2) /* 8028EAD0 0028BA30 38 E0 00 7F */ li r7, 0x7f /* 8028EAD4 0028BA34 D0 81 00 18 */ stfs f4, 0x18(r1) /* 8028EAD8 0028BA38 93 E1 00 08 */ stw r31, 8(r1) /* 8028EADC 0028BA3C 90 01 00 0C */ stw r0, 0xc(r1) /* 8028EAE0 0028BA40 4B DC 44 51 */ bl ProcessSoundEvent__6CActorFififfUcUcRC9CVector3fRC9CVector3fiR13CStateManagerb lbl_8028EAE4: /* 8028EAE4 0028BA44 80 01 00 34 */ lwz r0, 0x34(r1) /* 8028EAE8 0028BA48 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8028EAEC 0028BA4C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8028EAF0 0028BA50 7C 08 03 A6 */ mtlr r0 /* 8028EAF4 0028BA54 38 21 00 30 */ addi r1, r1, 0x30 /* 8028EAF8 0028BA58 4E 80 00 20 */ blr .global Explode__12COmegaPirateFR13CStateManager9EStateMsgf Explode__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028EAFC 0028BA5C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028EB00 0028BA60 7C 08 02 A6 */ mflr r0 /* 8028EB04 0028BA64 2C 05 00 01 */ cmpwi r5, 1 /* 8028EB08 0028BA68 7C 66 1B 78 */ mr r6, r3 /* 8028EB0C 0028BA6C 90 01 00 24 */ stw r0, 0x24(r1) /* 8028EB10 0028BA70 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028EB14 0028BA74 41 82 00 30 */ beq lbl_8028EB44 /* 8028EB18 0028BA78 40 80 00 10 */ bge lbl_8028EB28 /* 8028EB1C 0028BA7C 2C 05 00 00 */ cmpwi r5, 0 /* 8028EB20 0028BA80 40 80 00 14 */ bge lbl_8028EB34 /* 8028EB24 0028BA84 48 00 00 FC */ b lbl_8028EC20 lbl_8028EB28: /* 8028EB28 0028BA88 2C 05 00 03 */ cmpwi r5, 3 /* 8028EB2C 0028BA8C 40 80 00 F4 */ bge lbl_8028EC20 /* 8028EB30 0028BA90 48 00 00 E4 */ b lbl_8028EC14 lbl_8028EB34: /* 8028EB34 0028BA94 38 00 00 00 */ li r0, 0 /* 8028EB38 0028BA98 90 06 05 68 */ stw r0, 0x568(r6) /* 8028EB3C 0028BA9C 98 06 0A D0 */ stb r0, 0xad0(r6) /* 8028EB40 0028BAA0 48 00 00 E0 */ b lbl_8028EC20 lbl_8028EB44: /* 8028EB44 0028BAA4 80 06 05 68 */ lwz r0, 0x568(r6) /* 8028EB48 0028BAA8 2C 00 00 01 */ cmpwi r0, 1 /* 8028EB4C 0028BAAC 41 82 00 D4 */ beq lbl_8028EC20 /* 8028EB50 0028BAB0 40 80 00 10 */ bge lbl_8028EB60 /* 8028EB54 0028BAB4 2C 00 00 00 */ cmpwi r0, 0 /* 8028EB58 0028BAB8 40 80 00 14 */ bge lbl_8028EB6C /* 8028EB5C 0028BABC 48 00 00 C4 */ b lbl_8028EC20 lbl_8028EB60: /* 8028EB60 0028BAC0 2C 00 00 03 */ cmpwi r0, 3 /* 8028EB64 0028BAC4 40 80 00 BC */ bge lbl_8028EC20 /* 8028EB68 0028BAC8 48 00 00 90 */ b lbl_8028EBF8 lbl_8028EB6C: /* 8028EB6C 0028BACC 80 86 04 50 */ lwz r4, 0x450(r6) /* 8028EB70 0028BAD0 80 04 02 B8 */ lwz r0, 0x2b8(r4) /* 8028EB74 0028BAD4 2C 00 00 03 */ cmpwi r0, 3 /* 8028EB78 0028BAD8 40 82 00 10 */ bne lbl_8028EB88 /* 8028EB7C 0028BADC 38 00 00 02 */ li r0, 2 /* 8028EB80 0028BAE0 90 06 05 68 */ stw r0, 0x568(r6) /* 8028EB84 0028BAE4 48 00 00 9C */ b lbl_8028EC20 lbl_8028EB88: /* 8028EB88 0028BAE8 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028EB8C 0028BAEC 38 C0 00 01 */ li r6, 1 /* 8028EB90 0028BAF0 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028EB94 0028BAF4 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028EB98 0028BAF8 90 01 00 08 */ stw r0, 8(r1) /* 8028EB9C 0028BAFC 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l /* 8028EBA0 0028BB00 38 00 00 00 */ li r0, 0 /* 8028EBA4 0028BB04 3B E4 00 04 */ addi r31, r4, 4 /* 8028EBA8 0028BB08 90 C1 00 0C */ stw r6, 0xc(r1) /* 8028EBAC 0028BB0C 7F E3 FB 78 */ mr r3, r31 /* 8028EBB0 0028BB10 38 80 00 01 */ li r4, 1 /* 8028EBB4 0028BB14 90 A1 00 08 */ stw r5, 8(r1) /* 8028EBB8 0028BB18 90 01 00 10 */ stw r0, 0x10(r1) /* 8028EBBC 0028BB1C 90 C1 00 14 */ stw r6, 0x14(r1) /* 8028EBC0 0028BB20 4B EA 28 79 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028EBC4 0028BB24 80 01 00 0C */ lwz r0, 0xc(r1) /* 8028EBC8 0028BB28 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028EBCC 0028BB2C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l /* 8028EBD0 0028BB30 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028EBD4 0028BB34 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028EBD8 0028BB38 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028EBDC 0028BB3C 80 A1 00 10 */ lwz r5, 0x10(r1) /* 8028EBE0 0028BB40 90 81 00 08 */ stw r4, 8(r1) /* 8028EBE4 0028BB44 80 61 00 14 */ lwz r3, 0x14(r1) /* 8028EBE8 0028BB48 90 BF 00 CC */ stw r5, 0xcc(r31) /* 8028EBEC 0028BB4C 90 7F 00 D0 */ stw r3, 0xd0(r31) /* 8028EBF0 0028BB50 90 01 00 08 */ stw r0, 8(r1) /* 8028EBF4 0028BB54 48 00 00 2C */ b lbl_8028EC20 lbl_8028EBF8: /* 8028EBF8 0028BB58 80 66 04 50 */ lwz r3, 0x450(r6) /* 8028EBFC 0028BB5C 80 03 02 B8 */ lwz r0, 0x2b8(r3) /* 8028EC00 0028BB60 2C 00 00 03 */ cmpwi r0, 3 /* 8028EC04 0028BB64 41 82 00 1C */ beq lbl_8028EC20 /* 8028EC08 0028BB68 38 00 00 03 */ li r0, 3 /* 8028EC0C 0028BB6C 90 06 05 68 */ stw r0, 0x568(r6) /* 8028EC10 0028BB70 48 00 00 10 */ b lbl_8028EC20 lbl_8028EC14: /* 8028EC14 0028BB74 80 66 04 50 */ lwz r3, 0x450(r6) /* 8028EC18 0028BB78 80 86 0A 40 */ lwz r4, 0xa40(r6) /* 8028EC1C 0028BB7C 4B EA BD BD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType lbl_8028EC20: /* 8028EC20 0028BB80 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028EC24 0028BB84 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028EC28 0028BB88 7C 08 03 A6 */ mtlr r0 /* 8028EC2C 0028BB8C 38 21 00 20 */ addi r1, r1, 0x20 /* 8028EC30 0028BB90 4E 80 00 20 */ blr .global Suck__12COmegaPirateFR13CStateManager9EStateMsgf Suck__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028EC34 0028BB94 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8028EC38 0028BB98 7C 08 02 A6 */ mflr r0 /* 8028EC3C 0028BB9C 2C 05 00 01 */ cmpwi r5, 1 /* 8028EC40 0028BBA0 90 01 00 44 */ stw r0, 0x44(r1) /* 8028EC44 0028BBA4 BF 41 00 28 */ stmw r26, 0x28(r1) /* 8028EC48 0028BBA8 7C 7C 1B 78 */ mr r28, r3 /* 8028EC4C 0028BBAC 7C 9D 23 78 */ mr r29, r4 /* 8028EC50 0028BBB0 41 82 00 3C */ beq lbl_8028EC8C /* 8028EC54 0028BBB4 40 80 00 10 */ bge lbl_8028EC64 /* 8028EC58 0028BBB8 2C 05 00 00 */ cmpwi r5, 0 /* 8028EC5C 0028BBBC 40 80 00 14 */ bge lbl_8028EC70 /* 8028EC60 0028BBC0 48 00 01 F8 */ b lbl_8028EE58 lbl_8028EC64: /* 8028EC64 0028BBC4 2C 05 00 03 */ cmpwi r5, 3 /* 8028EC68 0028BBC8 40 80 01 F0 */ bge lbl_8028EE58 /* 8028EC6C 0028BBCC 48 00 00 FC */ b lbl_8028ED68 lbl_8028EC70: /* 8028EC70 0028BBD0 38 00 00 00 */ li r0, 0 /* 8028EC74 0028BBD4 38 60 00 03 */ li r3, 3 /* 8028EC78 0028BBD8 90 1C 05 68 */ stw r0, 0x568(r28) /* 8028EC7C 0028BBDC 38 00 00 01 */ li r0, 1 /* 8028EC80 0028BBE0 90 7C 0A 7C */ stw r3, 0xa7c(r28) /* 8028EC84 0028BBE4 98 1C 0A 88 */ stb r0, 0xa88(r28) /* 8028EC88 0028BBE8 48 00 01 D0 */ b lbl_8028EE58 lbl_8028EC8C: /* 8028EC8C 0028BBEC 80 1C 05 68 */ lwz r0, 0x568(r28) /* 8028EC90 0028BBF0 2C 00 00 01 */ cmpwi r0, 1 /* 8028EC94 0028BBF4 41 82 01 C4 */ beq lbl_8028EE58 /* 8028EC98 0028BBF8 40 80 00 10 */ bge lbl_8028ECA8 /* 8028EC9C 0028BBFC 2C 00 00 00 */ cmpwi r0, 0 /* 8028ECA0 0028BC00 40 80 00 14 */ bge lbl_8028ECB4 /* 8028ECA4 0028BC04 48 00 01 B4 */ b lbl_8028EE58 lbl_8028ECA8: /* 8028ECA8 0028BC08 2C 00 00 03 */ cmpwi r0, 3 /* 8028ECAC 0028BC0C 40 80 01 AC */ bge lbl_8028EE58 /* 8028ECB0 0028BC10 48 00 00 9C */ b lbl_8028ED4C lbl_8028ECB4: /* 8028ECB4 0028BC14 80 9C 04 50 */ lwz r4, 0x450(r28) /* 8028ECB8 0028BC18 80 04 02 B8 */ lwz r0, 0x2b8(r4) /* 8028ECBC 0028BC1C 2C 00 00 03 */ cmpwi r0, 3 /* 8028ECC0 0028BC20 40 82 00 10 */ bne lbl_8028ECD0 /* 8028ECC4 0028BC24 38 00 00 02 */ li r0, 2 /* 8028ECC8 0028BC28 90 1C 05 68 */ stw r0, 0x568(r28) /* 8028ECCC 0028BC2C 48 00 01 8C */ b lbl_8028EE58 lbl_8028ECD0: /* 8028ECD0 0028BC30 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028ECD4 0028BC34 38 C0 00 01 */ li r6, 1 /* 8028ECD8 0028BC38 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028ECDC 0028BC3C 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028ECE0 0028BC40 90 01 00 18 */ stw r0, 0x18(r1) /* 8028ECE4 0028BC44 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l /* 8028ECE8 0028BC48 38 00 00 00 */ li r0, 0 /* 8028ECEC 0028BC4C 3B 64 00 04 */ addi r27, r4, 4 /* 8028ECF0 0028BC50 90 C1 00 1C */ stw r6, 0x1c(r1) /* 8028ECF4 0028BC54 7F 63 DB 78 */ mr r3, r27 /* 8028ECF8 0028BC58 38 80 00 01 */ li r4, 1 /* 8028ECFC 0028BC5C 90 A1 00 18 */ stw r5, 0x18(r1) /* 8028ED00 0028BC60 90 C1 00 20 */ stw r6, 0x20(r1) /* 8028ED04 0028BC64 90 01 00 24 */ stw r0, 0x24(r1) /* 8028ED08 0028BC68 4B EA 27 31 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028ED0C 0028BC6C 80 01 00 1C */ lwz r0, 0x1c(r1) /* 8028ED10 0028BC70 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028ED14 0028BC74 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l /* 8028ED18 0028BC78 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028ED1C 0028BC7C 90 1B 00 C8 */ stw r0, 0xc8(r27) /* 8028ED20 0028BC80 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028ED24 0028BC84 80 C1 00 20 */ lwz r6, 0x20(r1) /* 8028ED28 0028BC88 38 80 00 01 */ li r4, 1 /* 8028ED2C 0028BC8C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8028ED30 0028BC90 90 DB 00 CC */ stw r6, 0xcc(r27) /* 8028ED34 0028BC94 90 7B 00 D0 */ stw r3, 0xd0(r27) /* 8028ED38 0028BC98 90 A1 00 18 */ stw r5, 0x18(r1) /* 8028ED3C 0028BC9C 80 7C 04 50 */ lwz r3, 0x450(r28) /* 8028ED40 0028BCA0 90 01 00 18 */ stw r0, 0x18(r1) /* 8028ED44 0028BCA4 4B EA BC 95 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType /* 8028ED48 0028BCA8 48 00 01 10 */ b lbl_8028EE58 lbl_8028ED4C: /* 8028ED4C 0028BCAC 80 7C 04 50 */ lwz r3, 0x450(r28) /* 8028ED50 0028BCB0 80 03 02 B8 */ lwz r0, 0x2b8(r3) /* 8028ED54 0028BCB4 2C 00 00 03 */ cmpwi r0, 3 /* 8028ED58 0028BCB8 41 82 01 00 */ beq lbl_8028EE58 /* 8028ED5C 0028BCBC 38 00 00 03 */ li r0, 3 /* 8028ED60 0028BCC0 90 1C 05 68 */ stw r0, 0x568(r28) /* 8028ED64 0028BCC4 48 00 00 F4 */ b lbl_8028EE58 lbl_8028ED68: /* 8028ED68 0028BCC8 83 FC 09 E0 */ lwz r31, 0x9e0(r28) /* 8028ED6C 0028BCCC 3B C0 00 00 */ li r30, 0 /* 8028ED70 0028BCD0 3B 60 00 00 */ li r27, 0 /* 8028ED74 0028BCD4 48 00 00 C4 */ b lbl_8028EE38 lbl_8028ED78: /* 8028ED78 0028BCD8 80 BC 09 E8 */ lwz r5, 0x9e8(r28) /* 8028ED7C 0028BCDC 7F A3 EB 78 */ mr r3, r29 /* 8028ED80 0028BCE0 38 81 00 08 */ addi r4, r1, 8 /* 8028ED84 0028BCE4 7C 05 DA 2E */ lhzx r0, r5, r27 /* 8028ED88 0028BCE8 B0 01 00 08 */ sth r0, 8(r1) /* 8028ED8C 0028BCEC 4B DB D7 E9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028ED90 0028BCF0 7C 7A 1B 79 */ or. r26, r3, r3 /* 8028ED94 0028BCF4 41 82 00 9C */ beq lbl_8028EE30 /* 8028ED98 0028BCF8 3C 80 80 57 */ lis r4, sImmuneVulnerability__20CDamageVulnerability@ha /* 8028ED9C 0028BCFC 38 84 D7 18 */ addi r4, r4, sImmuneVulnerability__20CDamageVulnerability@l /* 8028EDA0 0028BD00 4B E2 20 B5 */ bl sub_800b0e54 /* 8028EDA4 0028BD04 7F 43 D3 78 */ mr r3, r26 /* 8028EDA8 0028BD08 7F A5 EB 78 */ mr r5, r29 /* 8028EDAC 0028BD0C 38 80 00 29 */ li r4, 0x29 /* 8028EDB0 0028BD10 4B DC 51 D1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028EDB4 0028BD14 7F 43 D3 78 */ mr r3, r26 /* 8028EDB8 0028BD18 7F A5 EB 78 */ mr r5, r29 /* 8028EDBC 0028BD1C 38 80 00 28 */ li r4, 0x28 /* 8028EDC0 0028BD20 4B DC 51 C1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028EDC4 0028BD24 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028EDC8 0028BD28 38 60 00 01 */ li r3, 1 /* 8028EDCC 0028BD2C 88 1A 03 56 */ lbz r0, 0x356(r26) /* 8028EDD0 0028BD30 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 8028EDD4 0028BD34 FC 40 08 90 */ fmr f2, f1 /* 8028EDD8 0028BD38 C0 82 BE 9C */ lfs f4, lbl_805ADBBC@sda21(r2) /* 8028EDDC 0028BD3C FC 60 08 90 */ fmr f3, f1 /* 8028EDE0 0028BD40 98 1A 03 56 */ stb r0, 0x356(r26) /* 8028EDE4 0028BD44 38 61 00 0C */ addi r3, r1, 0xc /* 8028EDE8 0028BD48 48 0D 46 05 */ bl __ct__6CColorFffff /* 8028EDEC 0028BD4C 80 61 00 0C */ lwz r3, 0xc(r1) /* 8028EDF0 0028BD50 38 C0 00 05 */ li r6, 5 /* 8028EDF4 0028BD54 38 80 00 03 */ li r4, 3 /* 8028EDF8 0028BD58 38 A0 00 00 */ li r5, 0 /* 8028EDFC 0028BD5C 98 DA 00 B4 */ stb r6, 0xb4(r26) /* 8028EE00 0028BD60 54 80 00 3A */ rlwinm r0, r4, 0, 0, 0x1d /* 8028EE04 0028BD64 60 00 00 03 */ ori r0, r0, 3 /* 8028EE08 0028BD68 98 BA 00 B5 */ stb r5, 0xb5(r26) /* 8028EE0C 0028BD6C B0 1A 00 B6 */ sth r0, 0xb6(r26) /* 8028EE10 0028BD70 90 7A 00 B8 */ stw r3, 0xb8(r26) /* 8028EE14 0028BD74 88 1A 03 56 */ lbz r0, 0x356(r26) /* 8028EE18 0028BD78 50 A0 07 FE */ rlwimi r0, r5, 0, 0x1f, 0x1f /* 8028EE1C 0028BD7C 98 C1 00 10 */ stb r6, 0x10(r1) /* 8028EE20 0028BD80 98 A1 00 11 */ stb r5, 0x11(r1) /* 8028EE24 0028BD84 B0 81 00 12 */ sth r4, 0x12(r1) /* 8028EE28 0028BD88 90 61 00 14 */ stw r3, 0x14(r1) /* 8028EE2C 0028BD8C 98 1A 03 56 */ stb r0, 0x356(r26) lbl_8028EE30: /* 8028EE30 0028BD90 3B DE 00 01 */ addi r30, r30, 1 /* 8028EE34 0028BD94 3B 7B 00 14 */ addi r27, r27, 0x14 lbl_8028EE38: /* 8028EE38 0028BD98 7C 1E F8 40 */ cmplw r30, r31 /* 8028EE3C 0028BD9C 41 80 FF 3C */ blt lbl_8028ED78 /* 8028EE40 0028BDA0 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028EE44 0028BDA4 38 00 00 00 */ li r0, 0 /* 8028EE48 0028BDA8 C0 02 BE E4 */ lfs f0, lbl_805ADC04@sda21(r2) /* 8028EE4C 0028BDAC D0 3C 0B 50 */ stfs f1, 0xb50(r28) /* 8028EE50 0028BDB0 D0 1C 0B 58 */ stfs f0, 0xb58(r28) /* 8028EE54 0028BDB4 90 1C 0B 4C */ stw r0, 0xb4c(r28) lbl_8028EE58: /* 8028EE58 0028BDB8 BB 41 00 28 */ lmw r26, 0x28(r1) /* 8028EE5C 0028BDBC 80 01 00 44 */ lwz r0, 0x44(r1) /* 8028EE60 0028BDC0 7C 08 03 A6 */ mtlr r0 /* 8028EE64 0028BDC4 38 21 00 40 */ addi r1, r1, 0x40 /* 8028EE68 0028BDC8 4E 80 00 20 */ blr .global Skid__12COmegaPirateFR13CStateManager9EStateMsgf Skid__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028EE6C 0028BDCC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028EE70 0028BDD0 7C 08 02 A6 */ mflr r0 /* 8028EE74 0028BDD4 2C 05 00 01 */ cmpwi r5, 1 /* 8028EE78 0028BDD8 90 01 00 24 */ stw r0, 0x24(r1) /* 8028EE7C 0028BDDC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028EE80 0028BDE0 41 82 00 24 */ beq lbl_8028EEA4 /* 8028EE84 0028BDE4 40 80 00 EC */ bge lbl_8028EF70 /* 8028EE88 0028BDE8 2C 05 00 00 */ cmpwi r5, 0 /* 8028EE8C 0028BDEC 40 80 00 0C */ bge lbl_8028EE98 /* 8028EE90 0028BDF0 48 00 00 E0 */ b lbl_8028EF70 /* 8028EE94 0028BDF4 48 00 00 DC */ b lbl_8028EF70 lbl_8028EE98: /* 8028EE98 0028BDF8 38 00 00 00 */ li r0, 0 /* 8028EE9C 0028BDFC 90 03 05 68 */ stw r0, 0x568(r3) /* 8028EEA0 0028BE00 48 00 00 D0 */ b lbl_8028EF70 lbl_8028EEA4: /* 8028EEA4 0028BE04 80 03 05 68 */ lwz r0, 0x568(r3) /* 8028EEA8 0028BE08 2C 00 00 01 */ cmpwi r0, 1 /* 8028EEAC 0028BE0C 41 82 00 C4 */ beq lbl_8028EF70 /* 8028EEB0 0028BE10 40 80 00 10 */ bge lbl_8028EEC0 /* 8028EEB4 0028BE14 2C 00 00 00 */ cmpwi r0, 0 /* 8028EEB8 0028BE18 40 80 00 14 */ bge lbl_8028EECC /* 8028EEBC 0028BE1C 48 00 00 B4 */ b lbl_8028EF70 lbl_8028EEC0: /* 8028EEC0 0028BE20 2C 00 00 03 */ cmpwi r0, 3 /* 8028EEC4 0028BE24 40 80 00 AC */ bge lbl_8028EF70 /* 8028EEC8 0028BE28 48 00 00 90 */ b lbl_8028EF58 lbl_8028EECC: /* 8028EECC 0028BE2C 80 C3 04 50 */ lwz r6, 0x450(r3) /* 8028EED0 0028BE30 80 06 02 B8 */ lwz r0, 0x2b8(r6) /* 8028EED4 0028BE34 2C 00 00 03 */ cmpwi r0, 3 /* 8028EED8 0028BE38 40 82 00 10 */ bne lbl_8028EEE8 /* 8028EEDC 0028BE3C 38 00 00 02 */ li r0, 2 /* 8028EEE0 0028BE40 90 03 05 68 */ stw r0, 0x568(r3) /* 8028EEE4 0028BE44 48 00 00 8C */ b lbl_8028EF70 lbl_8028EEE8: /* 8028EEE8 0028BE48 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028EEEC 0028BE4C 38 00 00 00 */ li r0, 0 /* 8028EEF0 0028BE50 38 83 AA 68 */ addi r4, r3, __vt__13CBodyStateCmd@l /* 8028EEF4 0028BE54 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028EEF8 0028BE58 90 81 00 08 */ stw r4, 8(r1) /* 8028EEFC 0028BE5C 38 A3 A9 E4 */ addi r5, r3, lbl_803DA9E4@l /* 8028EF00 0028BE60 38 60 00 01 */ li r3, 1 /* 8028EF04 0028BE64 3B E6 00 04 */ addi r31, r6, 4 /* 8028EF08 0028BE68 90 61 00 0C */ stw r3, 0xc(r1) /* 8028EF0C 0028BE6C 7F E3 FB 78 */ mr r3, r31 /* 8028EF10 0028BE70 38 80 00 01 */ li r4, 1 /* 8028EF14 0028BE74 90 A1 00 08 */ stw r5, 8(r1) /* 8028EF18 0028BE78 90 01 00 10 */ stw r0, 0x10(r1) /* 8028EF1C 0028BE7C 90 01 00 14 */ stw r0, 0x14(r1) /* 8028EF20 0028BE80 4B EA 25 19 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028EF24 0028BE84 80 01 00 0C */ lwz r0, 0xc(r1) /* 8028EF28 0028BE88 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028EF2C 0028BE8C 38 83 A9 E4 */ addi r4, r3, lbl_803DA9E4@l /* 8028EF30 0028BE90 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028EF34 0028BE94 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028EF38 0028BE98 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028EF3C 0028BE9C 80 A1 00 10 */ lwz r5, 0x10(r1) /* 8028EF40 0028BEA0 90 81 00 08 */ stw r4, 8(r1) /* 8028EF44 0028BEA4 80 61 00 14 */ lwz r3, 0x14(r1) /* 8028EF48 0028BEA8 90 BF 00 CC */ stw r5, 0xcc(r31) /* 8028EF4C 0028BEAC 90 7F 00 D0 */ stw r3, 0xd0(r31) /* 8028EF50 0028BEB0 90 01 00 08 */ stw r0, 8(r1) /* 8028EF54 0028BEB4 48 00 00 1C */ b lbl_8028EF70 lbl_8028EF58: /* 8028EF58 0028BEB8 80 83 04 50 */ lwz r4, 0x450(r3) /* 8028EF5C 0028BEBC 80 04 02 B8 */ lwz r0, 0x2b8(r4) /* 8028EF60 0028BEC0 2C 00 00 03 */ cmpwi r0, 3 /* 8028EF64 0028BEC4 41 82 00 0C */ beq lbl_8028EF70 /* 8028EF68 0028BEC8 38 00 00 03 */ li r0, 3 /* 8028EF6C 0028BECC 90 03 05 68 */ stw r0, 0x568(r3) lbl_8028EF70: /* 8028EF70 0028BED0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028EF74 0028BED4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028EF78 0028BED8 7C 08 03 A6 */ mtlr r0 /* 8028EF7C 0028BEDC 38 21 00 20 */ addi r1, r1, 0x20 /* 8028EF80 0028BEE0 4E 80 00 20 */ blr .global Shuffle__12COmegaPirateFR13CStateManager9EStateMsgf Shuffle__12COmegaPirateFR13CStateManager9EStateMsgf: /* 8028EF84 0028BEE4 4E 80 00 20 */ blr .global CodeTrigger__12COmegaPirateFR13CStateManagerf CodeTrigger__12COmegaPirateFR13CStateManagerf: /* 8028EF88 0028BEE8 88 63 0B 78 */ lbz r3, 0xb78(r3) /* 8028EF8C 0028BEEC 4E 80 00 20 */ blr .global HearPlayer__12COmegaPirateFR13CStateManagerf HearPlayer__12COmegaPirateFR13CStateManagerf: /* 8028EF90 0028BEF0 88 63 0A 3C */ lbz r3, 0xa3c(r3) /* 8028EF94 0028BEF4 4E 80 00 20 */ blr .global CoverBlown__12COmegaPirateFR13CStateManagerf CoverBlown__12COmegaPirateFR13CStateManagerf: /* 8028EF98 0028BEF8 88 03 09 B4 */ lbz r0, 0x9b4(r3) /* 8028EF9C 0028BEFC 28 00 00 00 */ cmplwi r0, 0 /* 8028EFA0 0028BF00 41 82 00 1C */ beq lbl_8028EFBC /* 8028EFA4 0028BF04 38 00 00 00 */ li r0, 0 /* 8028EFA8 0028BF08 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028EFAC 0028BF0C 98 03 09 B4 */ stb r0, 0x9b4(r3) /* 8028EFB0 0028BF10 D0 03 0B 5C */ stfs f0, 0xb5c(r3) /* 8028EFB4 0028BF14 38 60 00 01 */ li r3, 1 /* 8028EFB8 0028BF18 4E 80 00 20 */ blr lbl_8028EFBC: /* 8028EFBC 0028BF1C 38 60 00 00 */ li r3, 0 /* 8028EFC0 0028BF20 4E 80 00 20 */ blr .global sub_8028efc4 sub_8028efc4: /* 8028EFC4 0028BF24 94 21 FD A0 */ stwu r1, -0x260(r1) /* 8028EFC8 0028BF28 7C 08 02 A6 */ mflr r0 /* 8028EFCC 0028BF2C 90 01 02 64 */ stw r0, 0x264(r1) /* 8028EFD0 0028BF30 DB E1 02 50 */ stfd f31, 0x250(r1) /* 8028EFD4 0028BF34 F3 E1 02 58 */ psq_st f31, 600(r1), 0, qr0 /* 8028EFD8 0028BF38 DB C1 02 40 */ stfd f30, 0x240(r1) /* 8028EFDC 0028BF3C F3 C1 02 48 */ psq_st f30, 584(r1), 0, qr0 /* 8028EFE0 0028BF40 DB A1 02 30 */ stfd f29, 0x230(r1) /* 8028EFE4 0028BF44 F3 A1 02 38 */ psq_st f29, 568(r1), 0, qr0 /* 8028EFE8 0028BF48 DB 81 02 20 */ stfd f28, 0x220(r1) /* 8028EFEC 0028BF4C F3 81 02 28 */ psq_st f28, 552(r1), 0, qr0 /* 8028EFF0 0028BF50 DB 61 02 10 */ stfd f27, 0x210(r1) /* 8028EFF4 0028BF54 F3 61 02 18 */ psq_st f27, 536(r1), 0, qr0 /* 8028EFF8 0028BF58 DB 41 02 00 */ stfd f26, 0x200(r1) /* 8028EFFC 0028BF5C F3 41 02 08 */ psq_st f26, 520(r1), 0, qr0 /* 8028F000 0028BF60 DB 21 01 F0 */ stfd f25, 0x1f0(r1) /* 8028F004 0028BF64 F3 21 01 F8 */ psq_st f25, 504(r1), 0, qr0 /* 8028F008 0028BF68 DB 01 01 E0 */ stfd f24, 0x1e0(r1) /* 8028F00C 0028BF6C F3 01 01 E8 */ psq_st f24, 488(r1), 0, qr0 /* 8028F010 0028BF70 DA E1 01 D0 */ stfd f23, 0x1d0(r1) /* 8028F014 0028BF74 F2 E1 01 D8 */ psq_st f23, 472(r1), 0, qr0 /* 8028F018 0028BF78 DA C1 01 C0 */ stfd f22, 0x1c0(r1) /* 8028F01C 0028BF7C F2 C1 01 C8 */ psq_st f22, 456(r1), 0, qr0 /* 8028F020 0028BF80 BF 21 01 A4 */ stmw r25, 0x1a4(r1) /* 8028F024 0028BF84 7C 9F 23 78 */ mr r31, r4 /* 8028F028 0028BF88 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 8028F02C 0028BF8C 80 BF 08 4C */ lwz r5, 0x84c(r31) /* 8028F030 0028BF90 7C 7E 1B 78 */ mr r30, r3 /* 8028F034 0028BF94 C7 24 66 A0 */ lfsu f25, sZeroVector__9CVector3f@l(r4) /* 8028F038 0028BF98 3B 80 00 00 */ li r28, 0 /* 8028F03C 0028BF9C C2 C2 BE 9C */ lfs f22, lbl_805ADBBC@sda21(r2) /* 8028F040 0028BFA0 3B 40 00 00 */ li r26, 0 /* 8028F044 0028BFA4 C3 C5 00 50 */ lfs f30, 0x50(r5) /* 8028F048 0028BFA8 3B A0 00 00 */ li r29, 0 /* 8028F04C 0028BFAC C3 E5 00 40 */ lfs f31, 0x40(r5) /* 8028F050 0028BFB0 C3 45 00 60 */ lfs f26, 0x60(r5) /* 8028F054 0028BFB4 C3 04 00 04 */ lfs f24, 4(r4) /* 8028F058 0028BFB8 C2 E4 00 08 */ lfs f23, 8(r4) /* 8028F05C 0028BFBC 83 63 09 A8 */ lwz r27, 0x9a8(r3) /* 8028F060 0028BFC0 48 00 00 A0 */ b lbl_8028F100 lbl_8028F064: /* 8028F064 0028BFC4 80 BE 09 B0 */ lwz r5, 0x9b0(r30) /* 8028F068 0028BFC8 7F E3 FB 78 */ mr r3, r31 /* 8028F06C 0028BFCC 38 81 00 0C */ addi r4, r1, 0xc /* 8028F070 0028BFD0 7C 05 EA 2E */ lhzx r0, r5, r29 /* 8028F074 0028BFD4 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028F078 0028BFD8 4B DB D5 2D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 8028F07C 0028BFDC 7C 64 1B 78 */ mr r4, r3 /* 8028F080 0028BFE0 38 61 00 10 */ addi r3, r1, 0x10 /* 8028F084 0028BFE4 4B E1 74 C9 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" /* 8028F088 0028BFE8 83 23 00 04 */ lwz r25, 4(r3) /* 8028F08C 0028BFEC 28 19 00 00 */ cmplwi r25, 0 /* 8028F090 0028BFF0 41 82 00 68 */ beq lbl_8028F0F8 /* 8028F094 0028BFF4 C3 79 00 60 */ lfs f27, 0x60(r25) /* 8028F098 0028BFF8 38 61 00 BC */ addi r3, r1, 0xbc /* 8028F09C 0028BFFC C3 99 00 50 */ lfs f28, 0x50(r25) /* 8028F0A0 0028C000 C3 B9 00 40 */ lfs f29, 0x40(r25) /* 8028F0A4 0028C004 EC 1A D8 28 */ fsubs f0, f26, f27 /* 8028F0A8 0028C008 EC 3E E0 28 */ fsubs f1, f30, f28 /* 8028F0AC 0028C00C EC 5F E8 28 */ fsubs f2, f31, f29 /* 8028F0B0 0028C010 D0 01 00 B8 */ stfs f0, 0xb8(r1) /* 8028F0B4 0028C014 D0 41 00 B0 */ stfs f2, 0xb0(r1) /* 8028F0B8 0028C018 D0 21 00 B4 */ stfs f1, 0xb4(r1) /* 8028F0BC 0028C01C D0 41 00 BC */ stfs f2, 0xbc(r1) /* 8028F0C0 0028C020 D0 21 00 C0 */ stfs f1, 0xc0(r1) /* 8028F0C4 0028C024 D0 01 00 C4 */ stfs f0, 0xc4(r1) /* 8028F0C8 0028C028 48 08 57 F1 */ bl Magnitude__9CVector3fCFv /* 8028F0CC 0028C02C FC 01 B0 40 */ fcmpo cr0, f1, f22 /* 8028F0D0 0028C030 40 81 00 28 */ ble lbl_8028F0F8 /* 8028F0D4 0028C034 A0 79 00 08 */ lhz r3, 8(r25) /* 8028F0D8 0028C038 A0 1E 0A DA */ lhz r0, 0xada(r30) /* 8028F0DC 0028C03C 7C 03 00 40 */ cmplw r3, r0 /* 8028F0E0 0028C040 41 82 00 18 */ beq lbl_8028F0F8 /* 8028F0E4 0028C044 FE C0 08 90 */ fmr f22, f1 /* 8028F0E8 0028C048 7F 5C D3 78 */ mr r28, r26 /* 8028F0EC 0028C04C FF 20 E8 90 */ fmr f25, f29 /* 8028F0F0 0028C050 FF 00 E0 90 */ fmr f24, f28 /* 8028F0F4 0028C054 FE E0 D8 90 */ fmr f23, f27 lbl_8028F0F8: /* 8028F0F8 0028C058 3B 5A 00 01 */ addi r26, r26, 1 /* 8028F0FC 0028C05C 3B BD 00 14 */ addi r29, r29, 0x14 lbl_8028F100: /* 8028F100 0028C060 7C 1A D8 40 */ cmplw r26, r27 /* 8028F104 0028C064 41 80 FF 60 */ blt lbl_8028F064 /* 8028F108 0028C068 D3 21 00 98 */ stfs f25, 0x98(r1) /* 8028F10C 0028C06C 7F E5 FB 78 */ mr r5, r31 /* 8028F110 0028C070 38 61 00 A4 */ addi r3, r1, 0xa4 /* 8028F114 0028C074 38 81 00 98 */ addi r4, r1, 0x98 /* 8028F118 0028C078 D3 01 00 9C */ stfs f24, 0x9c(r1) /* 8028F11C 0028C07C D2 E1 00 A0 */ stfs f23, 0xa0(r1) /* 8028F120 0028C080 48 00 02 29 */ bl sub_8028f348 /* 8028F124 0028C084 7F C3 F3 78 */ mr r3, r30 /* 8028F128 0028C088 38 81 00 A4 */ addi r4, r1, 0xa4 /* 8028F12C 0028C08C 4B DC 3D 61 */ bl SetTranslation__6CActorFRC9CVector3f /* 8028F130 0028C090 1C DC 00 14 */ mulli r6, r28, 0x14 /* 8028F134 0028C094 80 BE 09 B0 */ lwz r5, 0x9b0(r30) /* 8028F138 0028C098 7F E3 FB 78 */ mr r3, r31 /* 8028F13C 0028C09C 38 81 00 08 */ addi r4, r1, 8 /* 8028F140 0028C0A0 7C 05 32 2E */ lhzx r0, r5, r6 /* 8028F144 0028C0A4 B0 1E 0A DA */ sth r0, 0xada(r30) /* 8028F148 0028C0A8 80 BE 09 B0 */ lwz r5, 0x9b0(r30) /* 8028F14C 0028C0AC 7C 05 32 2E */ lhzx r0, r5, r6 /* 8028F150 0028C0B0 B0 01 00 08 */ sth r0, 8(r1) /* 8028F154 0028C0B4 4B DB D4 21 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028F158 0028C0B8 7C 64 1B 78 */ mr r4, r3 /* 8028F15C 0028C0BC 38 61 00 50 */ addi r3, r1, 0x50 /* 8028F160 0028C0C0 4B E1 73 ED */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" /* 8028F164 0028C0C4 80 63 00 04 */ lwz r3, 4(r3) /* 8028F168 0028C0C8 28 03 00 00 */ cmplwi r3, 0 /* 8028F16C 0028C0CC 41 82 00 14 */ beq lbl_8028F180 /* 8028F170 0028C0D0 7F E5 FB 78 */ mr r5, r31 /* 8028F174 0028C0D4 38 80 00 01 */ li r4, 1 /* 8028F178 0028C0D8 38 C0 FF FF */ li r6, -1 /* 8028F17C 0028C0DC 4B DC 1F 45 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage lbl_8028F180: /* 8028F180 0028C0E0 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 8028F184 0028C0E4 38 61 00 28 */ addi r3, r1, 0x28 /* 8028F188 0028C0E8 C0 5E 00 50 */ lfs f2, 0x50(r30) /* 8028F18C 0028C0EC 48 08 50 75 */ bl __ct__9CVector2fFff /* 8028F190 0028C0F0 FC 20 F8 90 */ fmr f1, f31 /* 8028F194 0028C0F4 38 61 00 30 */ addi r3, r1, 0x30 /* 8028F198 0028C0F8 FC 40 F0 90 */ fmr f2, f30 /* 8028F19C 0028C0FC 48 08 50 65 */ bl __ct__9CVector2fFff /* 8028F1A0 0028C100 38 61 00 38 */ addi r3, r1, 0x38 /* 8028F1A4 0028C104 38 81 00 30 */ addi r4, r1, 0x30 /* 8028F1A8 0028C108 38 A1 00 28 */ addi r5, r1, 0x28 /* 8028F1AC 0028C10C 48 08 4D 8D */ bl __mi__FRC9CVector2fRC9CVector2f /* 8028F1B0 0028C110 C0 21 00 38 */ lfs f1, 0x38(r1) /* 8028F1B4 0028C114 38 61 00 48 */ addi r3, r1, 0x48 /* 8028F1B8 0028C118 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 8028F1BC 0028C11C 38 81 00 40 */ addi r4, r1, 0x40 /* 8028F1C0 0028C120 D0 21 00 40 */ stfs f1, 0x40(r1) /* 8028F1C4 0028C124 D0 01 00 44 */ stfs f0, 0x44(r1) /* 8028F1C8 0028C128 48 08 4E B9 */ bl AsNormalized__9CVector2fCFv /* 8028F1CC 0028C12C C0 5E 00 48 */ lfs f2, 0x48(r30) /* 8028F1D0 0028C130 38 61 00 18 */ addi r3, r1, 0x18 /* 8028F1D4 0028C134 C0 3E 00 38 */ lfs f1, 0x38(r30) /* 8028F1D8 0028C138 C0 1E 00 58 */ lfs f0, 0x58(r30) /* 8028F1DC 0028C13C D0 21 00 8C */ stfs f1, 0x8c(r1) /* 8028F1E0 0028C140 C2 E1 00 48 */ lfs f23, 0x48(r1) /* 8028F1E4 0028C144 D0 41 00 90 */ stfs f2, 0x90(r1) /* 8028F1E8 0028C148 C3 01 00 4C */ lfs f24, 0x4c(r1) /* 8028F1EC 0028C14C D0 01 00 94 */ stfs f0, 0x94(r1) /* 8028F1F0 0028C150 48 08 50 11 */ bl __ct__9CVector2fFff /* 8028F1F4 0028C154 38 61 00 20 */ addi r3, r1, 0x20 /* 8028F1F8 0028C158 38 81 00 18 */ addi r4, r1, 0x18 /* 8028F1FC 0028C15C 48 08 4E 85 */ bl AsNormalized__9CVector2fCFv /* 8028F200 0028C160 C0 42 BE 9C */ lfs f2, lbl_805ADBBC@sda21(r2) /* 8028F204 0028C164 38 61 00 7C */ addi r3, r1, 0x7c /* 8028F208 0028C168 C0 21 00 20 */ lfs f1, 0x20(r1) /* 8028F20C 0028C16C 38 81 00 70 */ addi r4, r1, 0x70 /* 8028F210 0028C170 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8028F214 0028C174 38 A1 00 64 */ addi r5, r1, 0x64 /* 8028F218 0028C178 D2 E1 00 64 */ stfs f23, 0x64(r1) /* 8028F21C 0028C17C D3 01 00 68 */ stfs f24, 0x68(r1) /* 8028F220 0028C180 D0 41 00 6C */ stfs f2, 0x6c(r1) /* 8028F224 0028C184 D0 21 00 70 */ stfs f1, 0x70(r1) /* 8028F228 0028C188 D0 01 00 74 */ stfs f0, 0x74(r1) /* 8028F22C 0028C18C D0 41 00 78 */ stfs f2, 0x78(r1) /* 8028F230 0028C190 48 08 28 89 */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f /* 8028F234 0028C194 C0 61 00 7C */ lfs f3, 0x7c(r1) /* 8028F238 0028C198 38 61 01 08 */ addi r3, r1, 0x108 /* 8028F23C 0028C19C C0 41 00 80 */ lfs f2, 0x80(r1) /* 8028F240 0028C1A0 38 81 00 C8 */ addi r4, r1, 0xc8 /* 8028F244 0028C1A4 C0 21 00 84 */ lfs f1, 0x84(r1) /* 8028F248 0028C1A8 C0 01 00 88 */ lfs f0, 0x88(r1) /* 8028F24C 0028C1AC D0 61 00 C8 */ stfs f3, 0xc8(r1) /* 8028F250 0028C1B0 D0 41 00 CC */ stfs f2, 0xcc(r1) /* 8028F254 0028C1B4 D0 21 00 D0 */ stfs f1, 0xd0(r1) /* 8028F258 0028C1B8 D0 01 00 D4 */ stfs f0, 0xd4(r1) /* 8028F25C 0028C1BC 48 08 2E 31 */ bl BuildTransform__11CQuaternionCFv /* 8028F260 0028C1C0 38 61 01 2C */ addi r3, r1, 0x12c /* 8028F264 0028C1C4 38 9E 00 34 */ addi r4, r30, 0x34 /* 8028F268 0028C1C8 48 08 3E 8D */ bl BuildMatrix3f__12CTransform4fCFv /* 8028F26C 0028C1CC 38 61 01 50 */ addi r3, r1, 0x150 /* 8028F270 0028C1D0 38 81 01 2C */ addi r4, r1, 0x12c /* 8028F274 0028C1D4 38 A1 01 08 */ addi r5, r1, 0x108 /* 8028F278 0028C1D8 48 08 0E B9 */ bl __ml__9CMatrix3fCFRC9CMatrix3f /* 8028F27C 0028C1DC 38 61 01 74 */ addi r3, r1, 0x174 /* 8028F280 0028C1E0 38 81 01 50 */ addi r4, r1, 0x150 /* 8028F284 0028C1E4 48 08 0D A1 */ bl __ct__9CMatrix3fFRC9CMatrix3f /* 8028F288 0028C1E8 C0 5E 00 60 */ lfs f2, 0x60(r30) /* 8028F28C 0028C1EC 38 61 00 D8 */ addi r3, r1, 0xd8 /* 8028F290 0028C1F0 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 8028F294 0028C1F4 38 81 01 74 */ addi r4, r1, 0x174 /* 8028F298 0028C1F8 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8028F29C 0028C1FC 38 A1 00 58 */ addi r5, r1, 0x58 /* 8028F2A0 0028C200 D0 01 00 58 */ stfs f0, 0x58(r1) /* 8028F2A4 0028C204 D0 21 00 5C */ stfs f1, 0x5c(r1) /* 8028F2A8 0028C208 D0 41 00 60 */ stfs f2, 0x60(r1) /* 8028F2AC 0028C20C 48 08 3F CD */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f /* 8028F2B0 0028C210 38 7E 00 34 */ addi r3, r30, 0x34 /* 8028F2B4 0028C214 38 81 00 D8 */ addi r4, r1, 0xd8 /* 8028F2B8 0028C218 48 08 38 89 */ bl __as__12CTransform4fFRC12CTransform4f /* 8028F2BC 0028C21C 88 1E 00 E4 */ lbz r0, 0xe4(r30) /* 8028F2C0 0028C220 38 60 00 01 */ li r3, 1 /* 8028F2C4 0028C224 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 8028F2C8 0028C228 98 1E 00 E4 */ stb r0, 0xe4(r30) /* 8028F2CC 0028C22C 88 1E 00 E4 */ lbz r0, 0xe4(r30) /* 8028F2D0 0028C230 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c /* 8028F2D4 0028C234 98 1E 00 E4 */ stb r0, 0xe4(r30) /* 8028F2D8 0028C238 88 1E 00 E4 */ lbz r0, 0xe4(r30) /* 8028F2DC 0028C23C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d /* 8028F2E0 0028C240 98 1E 00 E4 */ stb r0, 0xe4(r30) /* 8028F2E4 0028C244 E3 E1 02 58 */ psq_l f31, 600(r1), 0, qr0 /* 8028F2E8 0028C248 CB E1 02 50 */ lfd f31, 0x250(r1) /* 8028F2EC 0028C24C E3 C1 02 48 */ psq_l f30, 584(r1), 0, qr0 /* 8028F2F0 0028C250 CB C1 02 40 */ lfd f30, 0x240(r1) /* 8028F2F4 0028C254 E3 A1 02 38 */ psq_l f29, 568(r1), 0, qr0 /* 8028F2F8 0028C258 CB A1 02 30 */ lfd f29, 0x230(r1) /* 8028F2FC 0028C25C E3 81 02 28 */ psq_l f28, 552(r1), 0, qr0 /* 8028F300 0028C260 CB 81 02 20 */ lfd f28, 0x220(r1) /* 8028F304 0028C264 E3 61 02 18 */ psq_l f27, 536(r1), 0, qr0 /* 8028F308 0028C268 CB 61 02 10 */ lfd f27, 0x210(r1) /* 8028F30C 0028C26C E3 41 02 08 */ psq_l f26, 520(r1), 0, qr0 /* 8028F310 0028C270 CB 41 02 00 */ lfd f26, 0x200(r1) /* 8028F314 0028C274 E3 21 01 F8 */ psq_l f25, 504(r1), 0, qr0 /* 8028F318 0028C278 CB 21 01 F0 */ lfd f25, 0x1f0(r1) /* 8028F31C 0028C27C E3 01 01 E8 */ psq_l f24, 488(r1), 0, qr0 /* 8028F320 0028C280 CB 01 01 E0 */ lfd f24, 0x1e0(r1) /* 8028F324 0028C284 E2 E1 01 D8 */ psq_l f23, 472(r1), 0, qr0 /* 8028F328 0028C288 CA E1 01 D0 */ lfd f23, 0x1d0(r1) /* 8028F32C 0028C28C E2 C1 01 C8 */ psq_l f22, 456(r1), 0, qr0 /* 8028F330 0028C290 CA C1 01 C0 */ lfd f22, 0x1c0(r1) /* 8028F334 0028C294 BB 21 01 A4 */ lmw r25, 0x1a4(r1) /* 8028F338 0028C298 80 01 02 64 */ lwz r0, 0x264(r1) /* 8028F33C 0028C29C 7C 08 03 A6 */ mtlr r0 /* 8028F340 0028C2A0 38 21 02 60 */ addi r1, r1, 0x260 /* 8028F344 0028C2A4 4E 80 00 20 */ blr .global sub_8028f348 sub_8028f348: /* 8028F348 0028C2A8 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8028F34C 0028C2AC 7C 08 02 A6 */ mflr r0 /* 8028F350 0028C2B0 90 01 00 64 */ stw r0, 0x64(r1) /* 8028F354 0028C2B4 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8028F358 0028C2B8 7C BF 2B 78 */ mr r31, r5 /* 8028F35C 0028C2BC 93 C1 00 58 */ stw r30, 0x58(r1) /* 8028F360 0028C2C0 7C 9E 23 78 */ mr r30, r4 /* 8028F364 0028C2C4 38 80 00 01 */ li r4, 1 /* 8028F368 0028C2C8 93 A1 00 54 */ stw r29, 0x54(r1) /* 8028F36C 0028C2CC 7C 7D 1B 78 */ mr r29, r3 /* 8028F370 0028C2D0 38 60 00 00 */ li r3, 0 /* 8028F374 0028C2D4 80 0D 99 9C */ lwz r0, lbl_805A855C@sda21(r13) /* 8028F378 0028C2D8 7C 05 03 78 */ mr r5, r0 /* 8028F37C 0028C2DC 48 0F AB 79 */ bl __shl2i /* 8028F380 0028C2E0 39 00 00 00 */ li r8, 0 /* 8028F384 0028C2E4 38 00 00 01 */ li r0, 1 /* 8028F388 0028C2E8 3C A0 80 5A */ lis r5, sDownVector__9CVector3f@ha /* 8028F38C 0028C2EC 90 81 00 0C */ stw r4, 0xc(r1) /* 8028F390 0028C2F0 38 C5 67 00 */ addi r6, r5, sDownVector__9CVector3f@l /* 8028F394 0028C2F4 C0 22 BE F4 */ lfs f1, lbl_805ADC14@sda21(r2) /* 8028F398 0028C2F8 90 61 00 08 */ stw r3, 8(r1) /* 8028F39C 0028C2FC 7F E4 FB 78 */ mr r4, r31 /* 8028F3A0 0028C300 7F C5 F3 78 */ mr r5, r30 /* 8028F3A4 0028C304 38 61 00 20 */ addi r3, r1, 0x20 /* 8028F3A8 0028C308 91 01 00 14 */ stw r8, 0x14(r1) /* 8028F3AC 0028C30C 38 E1 00 08 */ addi r7, r1, 8 /* 8028F3B0 0028C310 91 01 00 10 */ stw r8, 0x10(r1) /* 8028F3B4 0028C314 90 01 00 18 */ stw r0, 0x18(r1) /* 8028F3B8 0028C318 4B EF 54 51 */ bl RayStaticIntersection__14CGameCollisionFRC13CStateManagerRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 8028F3BC 0028C31C 88 01 00 40 */ lbz r0, 0x40(r1) /* 8028F3C0 0028C320 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8028F3C4 0028C324 28 00 00 00 */ cmplwi r0, 0 /* 8028F3C8 0028C328 C0 21 00 28 */ lfs f1, 0x28(r1) /* 8028F3CC 0028C32C C0 41 00 2C */ lfs f2, 0x2c(r1) /* 8028F3D0 0028C330 40 82 00 20 */ bne lbl_8028F3F0 /* 8028F3D4 0028C334 C0 1E 00 00 */ lfs f0, 0(r30) /* 8028F3D8 0028C338 D0 1D 00 00 */ stfs f0, 0(r29) /* 8028F3DC 0028C33C C0 1E 00 04 */ lfs f0, 4(r30) /* 8028F3E0 0028C340 D0 1D 00 04 */ stfs f0, 4(r29) /* 8028F3E4 0028C344 C0 1E 00 08 */ lfs f0, 8(r30) /* 8028F3E8 0028C348 D0 1D 00 08 */ stfs f0, 8(r29) /* 8028F3EC 0028C34C 48 00 00 10 */ b lbl_8028F3FC lbl_8028F3F0: /* 8028F3F0 0028C350 D0 1D 00 00 */ stfs f0, 0(r29) /* 8028F3F4 0028C354 D0 3D 00 04 */ stfs f1, 4(r29) /* 8028F3F8 0028C358 D0 5D 00 08 */ stfs f2, 8(r29) lbl_8028F3FC: /* 8028F3FC 0028C35C 80 01 00 64 */ lwz r0, 0x64(r1) /* 8028F400 0028C360 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8028F404 0028C364 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8028F408 0028C368 83 A1 00 54 */ lwz r29, 0x54(r1) /* 8028F40C 0028C36C 7C 08 03 A6 */ mtlr r0 /* 8028F410 0028C370 38 21 00 60 */ addi r1, r1, 0x60 /* 8028F414 0028C374 4E 80 00 20 */ blr .global Render__12COmegaPirateCFRC13CStateManager Render__12COmegaPirateCFRC13CStateManager: /* 8028F418 0028C378 94 21 FE 80 */ stwu r1, -0x180(r1) /* 8028F41C 0028C37C 7C 08 02 A6 */ mflr r0 /* 8028F420 0028C380 90 01 01 84 */ stw r0, 0x184(r1) /* 8028F424 0028C384 93 E1 01 7C */ stw r31, 0x17c(r1) /* 8028F428 0028C388 7C 9F 23 78 */ mr r31, r4 /* 8028F42C 0028C38C 38 81 00 38 */ addi r4, r1, 0x38 /* 8028F430 0028C390 93 C1 01 78 */ stw r30, 0x178(r1) /* 8028F434 0028C394 7C 7E 1B 78 */ mr r30, r3 /* 8028F438 0028C398 93 A1 01 74 */ stw r29, 0x174(r1) /* 8028F43C 0028C39C 80 A3 00 64 */ lwz r5, 0x64(r3) /* 8028F440 0028C3A0 38 61 00 44 */ addi r3, r1, 0x44 /* 8028F444 0028C3A4 C0 05 00 00 */ lfs f0, 0(r5) /* 8028F448 0028C3A8 D0 01 00 38 */ stfs f0, 0x38(r1) /* 8028F44C 0028C3AC C0 05 00 04 */ lfs f0, 4(r5) /* 8028F450 0028C3B0 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 8028F454 0028C3B4 C0 05 00 08 */ lfs f0, 8(r5) /* 8028F458 0028C3B8 D0 01 00 40 */ stfs f0, 0x40(r1) /* 8028F45C 0028C3BC 48 08 3D 69 */ bl Scale__12CTransform4fFRC9CVector3f /* 8028F460 0028C3C0 38 61 00 74 */ addi r3, r1, 0x74 /* 8028F464 0028C3C4 38 9E 00 34 */ addi r4, r30, 0x34 /* 8028F468 0028C3C8 38 A1 00 44 */ addi r5, r1, 0x44 /* 8028F46C 0028C3CC 48 08 34 E5 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 8028F470 0028C3D0 38 61 00 A4 */ addi r3, r1, 0xa4 /* 8028F474 0028C3D4 38 81 00 74 */ addi r4, r1, 0x74 /* 8028F478 0028C3D8 48 08 36 FD */ bl __ct__12CTransform4fFRC12CTransform4f /* 8028F47C 0028C3DC 38 61 00 A4 */ addi r3, r1, 0xa4 /* 8028F480 0028C3E0 48 07 D1 61 */ bl SetModelMatrix__9CGraphicsFRC12CTransform4f /* 8028F484 0028C3E4 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8028F488 0028C3E8 7F E4 FB 78 */ mr r4, r31 /* 8028F48C 0028C3EC 80 63 00 00 */ lwz r3, 0(r3) /* 8028F490 0028C3F0 4B E0 20 C9 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028F494 0028C3F4 2C 03 00 01 */ cmpwi r3, 1 /* 8028F498 0028C3F8 41 82 00 90 */ beq lbl_8028F528 /* 8028F49C 0028C3FC C0 9E 0A 2C */ lfs f4, 0xa2c(r30) /* 8028F4A0 0028C400 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028F4A4 0028C404 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 8028F4A8 0028C408 40 81 00 80 */ ble lbl_8028F528 /* 8028F4AC 0028C40C C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028F4B0 0028C410 38 00 00 00 */ li r0, 0 /* 8028F4B4 0028C414 98 01 01 68 */ stb r0, 0x168(r1) /* 8028F4B8 0028C418 38 61 00 14 */ addi r3, r1, 0x14 /* 8028F4BC 0028C41C FC 40 08 90 */ fmr f2, f1 /* 8028F4C0 0028C420 FC 60 08 90 */ fmr f3, f1 /* 8028F4C4 0028C424 48 0D 3F 29 */ bl __ct__6CColorFffff /* 8028F4C8 0028C428 39 20 00 03 */ li r9, 3 /* 8028F4CC 0028C42C 81 01 00 14 */ lwz r8, 0x14(r1) /* 8028F4D0 0028C430 55 20 00 3A */ rlwinm r0, r9, 0, 0, 0x1d /* 8028F4D4 0028C434 39 60 00 05 */ li r11, 5 /* 8028F4D8 0028C438 39 40 00 00 */ li r10, 0 /* 8028F4DC 0028C43C 99 61 00 30 */ stb r11, 0x30(r1) /* 8028F4E0 0028C440 60 00 00 03 */ ori r0, r0, 3 /* 8028F4E4 0028C444 80 7E 00 64 */ lwz r3, 0x64(r30) /* 8028F4E8 0028C448 99 41 00 31 */ stb r10, 0x31(r1) /* 8028F4EC 0028C44C 38 9E 09 F0 */ addi r4, r30, 0x9f0 /* 8028F4F0 0028C450 38 A1 00 30 */ addi r5, r1, 0x30 /* 8028F4F4 0028C454 38 C1 01 20 */ addi r6, r1, 0x120 /* 8028F4F8 0028C458 B0 01 00 32 */ sth r0, 0x32(r1) /* 8028F4FC 0028C45C 38 E0 00 00 */ li r7, 0 /* 8028F500 0028C460 91 01 00 34 */ stw r8, 0x34(r1) /* 8028F504 0028C464 99 61 00 28 */ stb r11, 0x28(r1) /* 8028F508 0028C468 80 63 00 10 */ lwz r3, 0x10(r3) /* 8028F50C 0028C46C 99 41 00 29 */ stb r10, 0x29(r1) /* 8028F510 0028C470 B1 21 00 2A */ sth r9, 0x2a(r1) /* 8028F514 0028C474 91 01 00 2C */ stw r8, 0x2c(r1) /* 8028F518 0028C478 4B D9 D4 05 */ bl "Render__9CAnimDataCFRC13CSkinnedModelRC11CModelFlagsRCQ24rstl37optional_object<18CVertexMorphEffect>PCf" /* 8028F51C 0028C47C 38 61 01 20 */ addi r3, r1, 0x120 /* 8028F520 0028C480 38 80 FF FF */ li r4, -1 /* 8028F524 0028C484 4B DE 87 69 */ bl "__dt__Q24rstl37optional_object<18CVertexMorphEffect>Fv" lbl_8028F528: /* 8028F528 0028C488 88 1E 09 A0 */ lbz r0, 0x9a0(r30) /* 8028F52C 0028C48C 28 00 00 00 */ cmplwi r0, 0 /* 8028F530 0028C490 41 82 01 04 */ beq lbl_8028F634 /* 8028F534 0028C494 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8028F538 0028C498 7F E4 FB 78 */ mr r4, r31 /* 8028F53C 0028C49C 80 63 00 00 */ lwz r3, 0(r3) /* 8028F540 0028C4A0 4B E0 20 19 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028F544 0028C4A4 20 03 00 01 */ subfic r0, r3, 1 /* 8028F548 0028C4A8 7C 03 00 34 */ cntlzw r3, r0 /* 8028F54C 0028C4AC 54 60 DE 3F */ rlwinm. r0, r3, 0x1b, 0x18, 0x1f /* 8028F550 0028C4B0 54 7D D9 7E */ srwi r29, r3, 5 /* 8028F554 0028C4B4 41 82 00 2C */ beq lbl_8028F580 /* 8028F558 0028C4B8 48 0B AA 5D */ bl Black__6CColorFv /* 8028F55C 0028C4BC 7C 65 1B 78 */ mr r5, r3 /* 8028F560 0028C4C0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 8028F564 0028C4C4 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028F568 0028C4C8 38 80 00 00 */ li r4, 0 /* 8028F56C 0028C4CC 81 83 00 00 */ lwz r12, 0(r3) /* 8028F570 0028C4D0 C0 42 BE A0 */ lfs f2, lbl_805ADBC0@sda21(r2) /* 8028F574 0028C4D4 81 8C 00 E0 */ lwz r12, 0xe0(r12) /* 8028F578 0028C4D8 7D 89 03 A6 */ mtctr r12 /* 8028F57C 0028C4DC 4E 80 04 21 */ bctrl lbl_8028F580: /* 8028F580 0028C4E0 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 8028F584 0028C4E4 41 82 00 84 */ beq lbl_8028F608 /* 8028F588 0028C4E8 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028F58C 0028C4EC 38 00 00 00 */ li r0, 0 /* 8028F590 0028C4F0 98 01 01 1C */ stb r0, 0x11c(r1) /* 8028F594 0028C4F4 38 61 00 10 */ addi r3, r1, 0x10 /* 8028F598 0028C4F8 FC 40 08 90 */ fmr f2, f1 /* 8028F59C 0028C4FC C0 82 BE F8 */ lfs f4, lbl_805ADC18@sda21(r2) /* 8028F5A0 0028C500 FC 60 08 90 */ fmr f3, f1 /* 8028F5A4 0028C504 48 0D 3E 49 */ bl __ct__6CColorFffff /* 8028F5A8 0028C508 39 20 00 03 */ li r9, 3 /* 8028F5AC 0028C50C 81 01 00 10 */ lwz r8, 0x10(r1) /* 8028F5B0 0028C510 55 20 00 3A */ rlwinm r0, r9, 0, 0, 0x1d /* 8028F5B4 0028C514 38 80 00 05 */ li r4, 5 /* 8028F5B8 0028C518 39 40 00 00 */ li r10, 0 /* 8028F5BC 0028C51C 98 81 00 20 */ stb r4, 0x20(r1) /* 8028F5C0 0028C520 60 00 00 01 */ ori r0, r0, 1 /* 8028F5C4 0028C524 80 7E 00 64 */ lwz r3, 0x64(r30) /* 8028F5C8 0028C528 99 41 00 21 */ stb r10, 0x21(r1) /* 8028F5CC 0028C52C 38 A1 00 20 */ addi r5, r1, 0x20 /* 8028F5D0 0028C530 38 C1 00 D4 */ addi r6, r1, 0xd4 /* 8028F5D4 0028C534 38 E0 00 00 */ li r7, 0 /* 8028F5D8 0028C538 B0 01 00 22 */ sth r0, 0x22(r1) /* 8028F5DC 0028C53C 91 01 00 24 */ stw r8, 0x24(r1) /* 8028F5E0 0028C540 80 63 00 10 */ lwz r3, 0x10(r3) /* 8028F5E4 0028C544 98 81 00 18 */ stb r4, 0x18(r1) /* 8028F5E8 0028C548 80 83 00 E0 */ lwz r4, 0xe0(r3) /* 8028F5EC 0028C54C 99 41 00 19 */ stb r10, 0x19(r1) /* 8028F5F0 0028C550 B1 21 00 1A */ sth r9, 0x1a(r1) /* 8028F5F4 0028C554 91 01 00 1C */ stw r8, 0x1c(r1) /* 8028F5F8 0028C558 4B D9 D3 25 */ bl "Render__9CAnimDataCFRC13CSkinnedModelRC11CModelFlagsRCQ24rstl37optional_object<18CVertexMorphEffect>PCf" /* 8028F5FC 0028C55C 38 61 00 D4 */ addi r3, r1, 0xd4 /* 8028F600 0028C560 38 80 FF FF */ li r4, -1 /* 8028F604 0028C564 4B DE 86 89 */ bl "__dt__Q24rstl37optional_object<18CVertexMorphEffect>Fv" lbl_8028F608: /* 8028F608 0028C568 7F C3 F3 78 */ mr r3, r30 /* 8028F60C 0028C56C 7F E4 FB 78 */ mr r4, r31 /* 8028F610 0028C570 4B DE 8A 1D */ bl Render__10CPatternedCFRC13CStateManager /* 8028F614 0028C574 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 8028F618 0028C578 41 82 00 1C */ beq lbl_8028F634 /* 8028F61C 0028C57C 80 1E 00 04 */ lwz r0, 4(r30) /* 8028F620 0028C580 7F E3 FB 78 */ mr r3, r31 /* 8028F624 0028C584 38 81 00 0C */ addi r4, r1, 0xc /* 8028F628 0028C588 90 01 00 08 */ stw r0, 8(r1) /* 8028F62C 0028C58C 90 01 00 0C */ stw r0, 0xc(r1) /* 8028F630 0028C590 4B DB 77 51 */ bl SetupFogForArea__13CStateManagerCF7TAreaId lbl_8028F634: /* 8028F634 0028C594 80 01 01 84 */ lwz r0, 0x184(r1) /* 8028F638 0028C598 83 E1 01 7C */ lwz r31, 0x17c(r1) /* 8028F63C 0028C59C 83 C1 01 78 */ lwz r30, 0x178(r1) /* 8028F640 0028C5A0 83 A1 01 74 */ lwz r29, 0x174(r1) /* 8028F644 0028C5A4 7C 08 03 A6 */ mtlr r0 /* 8028F648 0028C5A8 38 21 01 80 */ addi r1, r1, 0x180 /* 8028F64C 0028C5AC 4E 80 00 20 */ blr .global PreRender__12COmegaPirateFR13CStateManagerRC14CFrustumPlanes PreRender__12COmegaPirateFR13CStateManagerRC14CFrustumPlanes: /* 8028F650 0028C5B0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028F654 0028C5B4 7C 08 02 A6 */ mflr r0 /* 8028F658 0028C5B8 90 01 00 24 */ stw r0, 0x24(r1) /* 8028F65C 0028C5BC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028F660 0028C5C0 7C 9F 23 78 */ mr r31, r4 /* 8028F664 0028C5C4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8028F668 0028C5C8 7C 7E 1B 78 */ mr r30, r3 /* 8028F66C 0028C5CC 4B F9 D4 BD */ bl PreRender__12CElitePirateFR13CStateManagerRC14CFrustumPlanes /* 8028F670 0028C5D0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8028F674 0028C5D4 7F E4 FB 78 */ mr r4, r31 /* 8028F678 0028C5D8 80 63 00 00 */ lwz r3, 0(r3) /* 8028F67C 0028C5DC 4B E0 1E DD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028F680 0028C5E0 2C 03 00 01 */ cmpwi r3, 1 /* 8028F684 0028C5E4 40 82 00 54 */ bne lbl_8028F6D8 /* 8028F688 0028C5E8 C0 3E 0A 80 */ lfs f1, 0xa80(r30) /* 8028F68C 0028C5EC 38 61 00 08 */ addi r3, r1, 8 /* 8028F690 0028C5F0 C0 82 BE A0 */ lfs f4, lbl_805ADBC0@sda21(r2) /* 8028F694 0028C5F4 FC 40 08 90 */ fmr f2, f1 /* 8028F698 0028C5F8 FC 60 08 90 */ fmr f3, f1 /* 8028F69C 0028C5FC 48 0D 3D 51 */ bl __ct__6CColorFffff /* 8028F6A0 0028C600 80 61 00 08 */ lwz r3, 8(r1) /* 8028F6A4 0028C604 38 C0 00 01 */ li r6, 1 /* 8028F6A8 0028C608 38 80 00 03 */ li r4, 3 /* 8028F6AC 0028C60C 38 A0 00 00 */ li r5, 0 /* 8028F6B0 0028C610 98 DE 00 B4 */ stb r6, 0xb4(r30) /* 8028F6B4 0028C614 54 80 00 3A */ rlwinm r0, r4, 0, 0, 0x1d /* 8028F6B8 0028C618 60 00 00 03 */ ori r0, r0, 3 /* 8028F6BC 0028C61C 98 BE 00 B5 */ stb r5, 0xb5(r30) /* 8028F6C0 0028C620 B0 1E 00 B6 */ sth r0, 0xb6(r30) /* 8028F6C4 0028C624 98 C1 00 0C */ stb r6, 0xc(r1) /* 8028F6C8 0028C628 98 A1 00 0D */ stb r5, 0xd(r1) /* 8028F6CC 0028C62C B0 81 00 0E */ sth r4, 0xe(r1) /* 8028F6D0 0028C630 90 61 00 10 */ stw r3, 0x10(r1) /* 8028F6D4 0028C634 90 7E 00 B8 */ stw r3, 0xb8(r30) lbl_8028F6D8: /* 8028F6D8 0028C638 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028F6DC 0028C63C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028F6E0 0028C640 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8028F6E4 0028C644 7C 08 03 A6 */ mtlr r0 /* 8028F6E8 0028C648 38 21 00 20 */ addi r1, r1, 0x20 /* 8028F6EC 0028C64C 4E 80 00 20 */ blr .global sub_8028f6f0 sub_8028f6f0: /* 8028F6F0 0028C650 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8028F6F4 0028C654 7C 08 02 A6 */ mflr r0 /* 8028F6F8 0028C658 90 01 00 74 */ stw r0, 0x74(r1) /* 8028F6FC 0028C65C DB E1 00 60 */ stfd f31, 0x60(r1) /* 8028F700 0028C660 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 8028F704 0028C664 DB C1 00 50 */ stfd f30, 0x50(r1) /* 8028F708 0028C668 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8028F70C 0028C66C 93 E1 00 4C */ stw r31, 0x4c(r1) /* 8028F710 0028C670 93 C1 00 48 */ stw r30, 0x48(r1) /* 8028F714 0028C674 93 A1 00 44 */ stw r29, 0x44(r1) /* 8028F718 0028C678 7C 7E 1B 78 */ mr r30, r3 /* 8028F71C 0028C67C FF C0 08 90 */ fmr f30, f1 /* 8028F720 0028C680 80 03 09 94 */ lwz r0, 0x994(r3) /* 8028F724 0028C684 7C 9F 23 78 */ mr r31, r4 /* 8028F728 0028C688 2C 00 00 02 */ cmpwi r0, 2 /* 8028F72C 0028C68C 41 82 01 0C */ beq lbl_8028F838 /* 8028F730 0028C690 40 80 00 10 */ bge lbl_8028F740 /* 8028F734 0028C694 2C 00 00 01 */ cmpwi r0, 1 /* 8028F738 0028C698 40 80 00 14 */ bge lbl_8028F74C /* 8028F73C 0028C69C 48 00 01 4C */ b lbl_8028F888 lbl_8028F740: /* 8028F740 0028C6A0 2C 00 00 04 */ cmpwi r0, 4 /* 8028F744 0028C6A4 40 80 01 44 */ bge lbl_8028F888 /* 8028F748 0028C6A8 48 00 00 8C */ b lbl_8028F7D4 lbl_8028F74C: /* 8028F74C 0028C6AC C0 22 BE 74 */ lfs f1, lbl_805ADB94@sda21(r2) /* 8028F750 0028C6B0 C0 1E 09 98 */ lfs f0, 0x998(r30) /* 8028F754 0028C6B4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028F758 0028C6B8 40 80 00 0C */ bge lbl_8028F764 /* 8028F75C 0028C6BC 38 62 BE 74 */ addi r3, r2, lbl_805ADB94@sda21 /* 8028F760 0028C6C0 48 00 00 08 */ b lbl_8028F768 lbl_8028F764: /* 8028F764 0028C6C4 38 7E 09 98 */ addi r3, r30, 0x998 lbl_8028F768: /* 8028F768 0028C6C8 C0 03 00 00 */ lfs f0, 0(r3) /* 8028F76C 0028C6CC C0 42 BE FC */ lfs f2, lbl_805ADC1C@sda21(r2) /* 8028F770 0028C6D0 C0 62 BE A0 */ lfs f3, lbl_805ADBC0@sda21(r2) /* 8028F774 0028C6D4 EC 00 10 24 */ fdivs f0, f0, f2 /* 8028F778 0028C6D8 C0 22 BE B4 */ lfs f1, lbl_805ADBD4@sda21(r2) /* 8028F77C 0028C6DC EC 03 00 28 */ fsubs f0, f3, f0 /* 8028F780 0028C6E0 D0 1E 09 9C */ stfs f0, 0x99c(r30) /* 8028F784 0028C6E4 C0 1E 09 9C */ lfs f0, 0x99c(r30) /* 8028F788 0028C6E8 EC 81 00 32 */ fmuls f4, f1, f0 /* 8028F78C 0028C6EC F0 81 A0 09 */ psq_st f4, 9(r1), 1, qr2 /* 8028F790 0028C6F0 88 01 00 09 */ lbz r0, 9(r1) /* 8028F794 0028C6F4 98 1E 04 2F */ stb r0, 0x42f(r30) /* 8028F798 0028C6F8 C0 1E 09 98 */ lfs f0, 0x998(r30) /* 8028F79C 0028C6FC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8028F7A0 0028C700 40 81 00 1C */ ble lbl_8028F7BC /* 8028F7A4 0028C704 38 60 00 02 */ li r3, 2 /* 8028F7A8 0028C708 38 00 00 00 */ li r0, 0 /* 8028F7AC 0028C70C 90 7E 09 94 */ stw r3, 0x994(r30) /* 8028F7B0 0028C710 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028F7B4 0028C714 98 1E 09 A1 */ stb r0, 0x9a1(r30) /* 8028F7B8 0028C718 D0 1E 09 98 */ stfs f0, 0x998(r30) lbl_8028F7BC: /* 8028F7BC 0028C71C C0 1E 09 98 */ lfs f0, 0x998(r30) /* 8028F7C0 0028C720 38 00 00 01 */ li r0, 1 /* 8028F7C4 0028C724 EC 00 F0 2A */ fadds f0, f0, f30 /* 8028F7C8 0028C728 D0 1E 09 98 */ stfs f0, 0x998(r30) /* 8028F7CC 0028C72C 98 1E 09 A0 */ stb r0, 0x9a0(r30) /* 8028F7D0 0028C730 48 00 00 C8 */ b lbl_8028F898 lbl_8028F7D4: /* 8028F7D4 0028C734 C0 22 BE 78 */ lfs f1, lbl_805ADB98@sda21(r2) /* 8028F7D8 0028C738 C0 1E 09 98 */ lfs f0, 0x998(r30) /* 8028F7DC 0028C73C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028F7E0 0028C740 40 80 00 0C */ bge lbl_8028F7EC /* 8028F7E4 0028C744 38 62 BE 78 */ addi r3, r2, lbl_805ADB98@sda21 /* 8028F7E8 0028C748 48 00 00 08 */ b lbl_8028F7F0 lbl_8028F7EC: /* 8028F7EC 0028C74C 38 7E 09 98 */ addi r3, r30, 0x998 lbl_8028F7F0: /* 8028F7F0 0028C750 C0 43 00 00 */ lfs f2, 0(r3) /* 8028F7F4 0028C754 C0 22 BE FC */ lfs f1, lbl_805ADC1C@sda21(r2) /* 8028F7F8 0028C758 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028F7FC 0028C75C EC 22 08 24 */ fdivs f1, f2, f1 /* 8028F800 0028C760 D0 3E 09 9C */ stfs f1, 0x99c(r30) /* 8028F804 0028C764 C0 3E 09 98 */ lfs f1, 0x998(r30) /* 8028F808 0028C768 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028F80C 0028C76C 40 81 00 14 */ ble lbl_8028F820 /* 8028F810 0028C770 38 00 00 00 */ li r0, 0 /* 8028F814 0028C774 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028F818 0028C778 90 1E 09 94 */ stw r0, 0x994(r30) /* 8028F81C 0028C77C D0 1E 09 98 */ stfs f0, 0x998(r30) lbl_8028F820: /* 8028F820 0028C780 C0 1E 09 98 */ lfs f0, 0x998(r30) /* 8028F824 0028C784 38 00 00 01 */ li r0, 1 /* 8028F828 0028C788 EC 00 F0 2A */ fadds f0, f0, f30 /* 8028F82C 0028C78C D0 1E 09 98 */ stfs f0, 0x998(r30) /* 8028F830 0028C790 98 1E 09 A0 */ stb r0, 0x9a0(r30) /* 8028F834 0028C794 48 00 00 64 */ b lbl_8028F898 lbl_8028F838: /* 8028F838 0028C798 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028F83C 0028C79C C0 02 BE C4 */ lfs f0, lbl_805ADBE4@sda21(r2) /* 8028F840 0028C7A0 D0 3E 09 9C */ stfs f1, 0x99c(r30) /* 8028F844 0028C7A4 C0 5E 09 98 */ lfs f2, 0x998(r30) /* 8028F848 0028C7A8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8028F84C 0028C7AC 40 81 00 24 */ ble lbl_8028F870 /* 8028F850 0028C7B0 88 1E 09 A1 */ lbz r0, 0x9a1(r30) /* 8028F854 0028C7B4 28 00 00 00 */ cmplwi r0, 0 /* 8028F858 0028C7B8 41 82 00 18 */ beq lbl_8028F870 /* 8028F85C 0028C7BC 4B FF C5 D5 */ bl CreateFlash__12COmegaPirateFR13CStateManagerf /* 8028F860 0028C7C0 38 00 00 03 */ li r0, 3 /* 8028F864 0028C7C4 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028F868 0028C7C8 90 1E 09 94 */ stw r0, 0x994(r30) /* 8028F86C 0028C7CC D0 1E 09 98 */ stfs f0, 0x998(r30) lbl_8028F870: /* 8028F870 0028C7D0 C0 1E 09 98 */ lfs f0, 0x998(r30) /* 8028F874 0028C7D4 38 00 00 00 */ li r0, 0 /* 8028F878 0028C7D8 EC 00 F0 2A */ fadds f0, f0, f30 /* 8028F87C 0028C7DC D0 1E 09 98 */ stfs f0, 0x998(r30) /* 8028F880 0028C7E0 98 1E 09 A0 */ stb r0, 0x9a0(r30) /* 8028F884 0028C7E4 48 00 00 14 */ b lbl_8028F898 lbl_8028F888: /* 8028F888 0028C7E8 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028F88C 0028C7EC 38 00 00 01 */ li r0, 1 /* 8028F890 0028C7F0 D0 1E 09 9C */ stfs f0, 0x99c(r30) /* 8028F894 0028C7F4 98 1E 09 A0 */ stb r0, 0x9a0(r30) lbl_8028F898: /* 8028F898 0028C7F8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8028F89C 0028C7FC 7F E4 FB 78 */ mr r4, r31 /* 8028F8A0 0028C800 C3 DE 09 9C */ lfs f30, 0x99c(r30) /* 8028F8A4 0028C804 80 63 00 00 */ lwz r3, 0(r3) /* 8028F8A8 0028C808 4B E0 1C B1 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028F8AC 0028C80C 2C 03 00 01 */ cmpwi r3, 1 /* 8028F8B0 0028C810 40 82 00 18 */ bne lbl_8028F8C8 /* 8028F8B4 0028C814 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028F8B8 0028C818 38 00 00 01 */ li r0, 1 /* 8028F8BC 0028C81C C3 C2 BE 9C */ lfs f30, lbl_805ADBBC@sda21(r2) /* 8028F8C0 0028C820 D0 1E 09 9C */ stfs f0, 0x99c(r30) /* 8028F8C4 0028C824 98 1E 09 A0 */ stb r0, 0x9a0(r30) lbl_8028F8C8: /* 8028F8C8 0028C828 C0 22 BE B4 */ lfs f1, lbl_805ADBD4@sda21(r2) /* 8028F8CC 0028C82C C0 1E 09 9C */ lfs f0, 0x99c(r30) /* 8028F8D0 0028C830 EF E1 00 32 */ fmuls f31, f1, f0 /* 8028F8D4 0028C834 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 8028F8D8 0028C838 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028F8DC 0028C83C 88 01 00 08 */ lbz r0, 8(r1) /* 8028F8E0 0028C840 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 8028F8E4 0028C844 98 1E 04 2F */ stb r0, 0x42f(r30) /* 8028F8E8 0028C848 40 80 00 C4 */ bge lbl_8028F9AC /* 8028F8EC 0028C84C A0 1E 07 72 */ lhz r0, 0x772(r30) /* 8028F8F0 0028C850 7F E3 FB 78 */ mr r3, r31 /* 8028F8F4 0028C854 38 81 00 20 */ addi r4, r1, 0x20 /* 8028F8F8 0028C858 B0 01 00 1C */ sth r0, 0x1c(r1) /* 8028F8FC 0028C85C B0 01 00 20 */ sth r0, 0x20(r1) /* 8028F900 0028C860 4B DB CC 75 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028F904 0028C864 7C 7D 1B 79 */ or. r29, r3, r3 /* 8028F908 0028C868 41 82 00 44 */ beq lbl_8028F94C /* 8028F90C 0028C86C C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028F910 0028C870 FC 80 F0 90 */ fmr f4, f30 /* 8028F914 0028C874 38 61 00 30 */ addi r3, r1, 0x30 /* 8028F918 0028C878 FC 40 08 90 */ fmr f2, f1 /* 8028F91C 0028C87C FC 60 08 90 */ fmr f3, f1 /* 8028F920 0028C880 48 0D 3A CD */ bl __ct__6CColorFffff /* 8028F924 0028C884 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028F928 0028C888 80 01 00 30 */ lwz r0, 0x30(r1) /* 8028F92C 0028C88C FC 00 F0 00 */ fcmpu cr0, f0, f30 /* 8028F930 0028C890 90 1D 03 F4 */ stw r0, 0x3f4(r29) /* 8028F934 0028C894 40 82 00 10 */ bne lbl_8028F944 /* 8028F938 0028C898 38 00 00 00 */ li r0, 0 /* 8028F93C 0028C89C 98 1D 03 FD */ stb r0, 0x3fd(r29) /* 8028F940 0028C8A0 48 00 00 0C */ b lbl_8028F94C lbl_8028F944: /* 8028F944 0028C8A4 38 00 00 01 */ li r0, 1 /* 8028F948 0028C8A8 98 1D 03 FD */ stb r0, 0x3fd(r29) lbl_8028F94C: /* 8028F94C 0028C8AC A0 1E 09 90 */ lhz r0, 0x990(r30) /* 8028F950 0028C8B0 7F E3 FB 78 */ mr r3, r31 /* 8028F954 0028C8B4 38 81 00 18 */ addi r4, r1, 0x18 /* 8028F958 0028C8B8 B0 01 00 18 */ sth r0, 0x18(r1) /* 8028F95C 0028C8BC 4B DB CC 19 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028F960 0028C8C0 7C 7D 1B 79 */ or. r29, r3, r3 /* 8028F964 0028C8C4 41 82 00 D4 */ beq lbl_8028FA38 /* 8028F968 0028C8C8 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 8028F96C 0028C8CC FC 80 F0 90 */ fmr f4, f30 /* 8028F970 0028C8D0 38 61 00 2C */ addi r3, r1, 0x2c /* 8028F974 0028C8D4 FC 40 08 90 */ fmr f2, f1 /* 8028F978 0028C8D8 FC 60 08 90 */ fmr f3, f1 /* 8028F97C 0028C8DC 48 0D 3A 71 */ bl __ct__6CColorFffff /* 8028F980 0028C8E0 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028F984 0028C8E4 80 01 00 2C */ lwz r0, 0x2c(r1) /* 8028F988 0028C8E8 FC 00 F0 00 */ fcmpu cr0, f0, f30 /* 8028F98C 0028C8EC 90 1D 03 F4 */ stw r0, 0x3f4(r29) /* 8028F990 0028C8F0 40 82 00 10 */ bne lbl_8028F9A0 /* 8028F994 0028C8F4 38 00 00 00 */ li r0, 0 /* 8028F998 0028C8F8 98 1D 03 FD */ stb r0, 0x3fd(r29) /* 8028F99C 0028C8FC 48 00 00 9C */ b lbl_8028FA38 lbl_8028F9A0: /* 8028F9A0 0028C900 38 00 00 01 */ li r0, 1 /* 8028F9A4 0028C904 98 1D 03 FD */ stb r0, 0x3fd(r29) /* 8028F9A8 0028C908 48 00 00 90 */ b lbl_8028FA38 lbl_8028F9AC: /* 8028F9AC 0028C90C A0 1E 07 72 */ lhz r0, 0x772(r30) /* 8028F9B0 0028C910 7F E3 FB 78 */ mr r3, r31 /* 8028F9B4 0028C914 38 81 00 14 */ addi r4, r1, 0x14 /* 8028F9B8 0028C918 B0 01 00 10 */ sth r0, 0x10(r1) /* 8028F9BC 0028C91C B0 01 00 14 */ sth r0, 0x14(r1) /* 8028F9C0 0028C920 4B DB CB B5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028F9C4 0028C924 7C 7D 1B 79 */ or. r29, r3, r3 /* 8028F9C8 0028C928 41 82 00 2C */ beq lbl_8028F9F4 /* 8028F9CC 0028C92C C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028F9D0 0028C930 38 00 00 01 */ li r0, 1 /* 8028F9D4 0028C934 98 1D 03 FD */ stb r0, 0x3fd(r29) /* 8028F9D8 0028C938 38 61 00 28 */ addi r3, r1, 0x28 /* 8028F9DC 0028C93C FC 40 08 90 */ fmr f2, f1 /* 8028F9E0 0028C940 C0 82 BE A0 */ lfs f4, lbl_805ADBC0@sda21(r2) /* 8028F9E4 0028C944 FC 60 08 90 */ fmr f3, f1 /* 8028F9E8 0028C948 48 0D 3A 05 */ bl __ct__6CColorFffff /* 8028F9EC 0028C94C 80 01 00 28 */ lwz r0, 0x28(r1) /* 8028F9F0 0028C950 90 1D 03 F4 */ stw r0, 0x3f4(r29) lbl_8028F9F4: /* 8028F9F4 0028C954 A0 1E 09 90 */ lhz r0, 0x990(r30) /* 8028F9F8 0028C958 7F E3 FB 78 */ mr r3, r31 /* 8028F9FC 0028C95C 38 81 00 0C */ addi r4, r1, 0xc /* 8028FA00 0028C960 B0 01 00 0C */ sth r0, 0xc(r1) /* 8028FA04 0028C964 4B DB CB 71 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028FA08 0028C968 7C 7E 1B 79 */ or. r30, r3, r3 /* 8028FA0C 0028C96C 41 82 00 2C */ beq lbl_8028FA38 /* 8028FA10 0028C970 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 8028FA14 0028C974 38 61 00 24 */ addi r3, r1, 0x24 /* 8028FA18 0028C978 C0 82 BE A0 */ lfs f4, lbl_805ADBC0@sda21(r2) /* 8028FA1C 0028C97C FC 40 08 90 */ fmr f2, f1 /* 8028FA20 0028C980 FC 60 08 90 */ fmr f3, f1 /* 8028FA24 0028C984 48 0D 39 C9 */ bl __ct__6CColorFffff /* 8028FA28 0028C988 80 61 00 24 */ lwz r3, 0x24(r1) /* 8028FA2C 0028C98C 38 00 00 01 */ li r0, 1 /* 8028FA30 0028C990 90 7E 03 F4 */ stw r3, 0x3f4(r30) /* 8028FA34 0028C994 98 1E 03 FD */ stb r0, 0x3fd(r30) lbl_8028FA38: /* 8028FA38 0028C998 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8028FA3C 0028C99C CB E1 00 60 */ lfd f31, 0x60(r1) /* 8028FA40 0028C9A0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8028FA44 0028C9A4 CB C1 00 50 */ lfd f30, 0x50(r1) /* 8028FA48 0028C9A8 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8028FA4C 0028C9AC 83 C1 00 48 */ lwz r30, 0x48(r1) /* 8028FA50 0028C9B0 80 01 00 74 */ lwz r0, 0x74(r1) /* 8028FA54 0028C9B4 83 A1 00 44 */ lwz r29, 0x44(r1) /* 8028FA58 0028C9B8 7C 08 03 A6 */ mtlr r0 /* 8028FA5C 0028C9BC 38 21 00 70 */ addi r1, r1, 0x70 /* 8028FA60 0028C9C0 4E 80 00 20 */ blr .global sub_8028fa64 sub_8028fa64: /* 8028FA64 0028C9C4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8028FA68 0028C9C8 7C 08 02 A6 */ mflr r0 /* 8028FA6C 0028C9CC 90 01 00 24 */ stw r0, 0x24(r1) /* 8028FA70 0028C9D0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8028FA74 0028C9D4 7C BF 2B 78 */ mr r31, r5 /* 8028FA78 0028C9D8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8028FA7C 0028C9DC 7C 9E 23 78 */ mr r30, r4 /* 8028FA80 0028C9E0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8028FA84 0028C9E4 7C 7D 1B 78 */ mr r29, r3 /* 8028FA88 0028C9E8 4B F9 8F 29 */ bl sub_802289b0 /* 8028FA8C 0028C9EC A0 1D 09 90 */ lhz r0, 0x990(r29) /* 8028FA90 0028C9F0 7F A3 EB 78 */ mr r3, r29 /* 8028FA94 0028C9F4 7F C4 F3 78 */ mr r4, r30 /* 8028FA98 0028C9F8 7F E5 FB 78 */ mr r5, r31 /* 8028FA9C 0028C9FC B0 01 00 08 */ sth r0, 8(r1) /* 8028FAA0 0028CA00 38 C1 00 08 */ addi r6, r1, 8 /* 8028FAA4 0028CA04 4B F9 8E 7D */ bl sub_80228920 /* 8028FAA8 0028CA08 80 01 00 24 */ lwz r0, 0x24(r1) /* 8028FAAC 0028CA0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8028FAB0 0028CA10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8028FAB4 0028CA14 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8028FAB8 0028CA18 7C 08 03 A6 */ mtlr r0 /* 8028FABC 0028CA1C 38 21 00 20 */ addi r1, r1, 0x20 /* 8028FAC0 0028CA20 4E 80 00 20 */ blr .global Think__12COmegaPirateFfR13CStateManager Think__12COmegaPirateFfR13CStateManager: /* 8028FAC4 0028CA24 94 21 FE 90 */ stwu r1, -0x170(r1) /* 8028FAC8 0028CA28 7C 08 02 A6 */ mflr r0 /* 8028FACC 0028CA2C 90 01 01 74 */ stw r0, 0x174(r1) /* 8028FAD0 0028CA30 DB E1 01 60 */ stfd f31, 0x160(r1) /* 8028FAD4 0028CA34 F3 E1 01 68 */ psq_st f31, 360(r1), 0, qr0 /* 8028FAD8 0028CA38 DB C1 01 50 */ stfd f30, 0x150(r1) /* 8028FADC 0028CA3C F3 C1 01 58 */ psq_st f30, 344(r1), 0, qr0 /* 8028FAE0 0028CA40 DB A1 01 40 */ stfd f29, 0x140(r1) /* 8028FAE4 0028CA44 F3 A1 01 48 */ psq_st f29, 328(r1), 0, qr0 /* 8028FAE8 0028CA48 BF 41 01 28 */ stmw r26, 0x128(r1) /* 8028FAEC 0028CA4C 88 03 00 30 */ lbz r0, 0x30(r3) /* 8028FAF0 0028CA50 FF E0 08 90 */ fmr f31, f1 /* 8028FAF4 0028CA54 7C 7E 1B 78 */ mr r30, r3 /* 8028FAF8 0028CA58 7C 9F 23 78 */ mr r31, r4 /* 8028FAFC 0028CA5C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 8028FB00 0028CA60 41 82 09 08 */ beq lbl_80290408 /* 8028FB04 0028CA64 88 1E 09 88 */ lbz r0, 0x988(r30) /* 8028FB08 0028CA68 38 A0 00 01 */ li r5, 1 /* 8028FB0C 0028CA6C 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c /* 8028FB10 0028CA70 98 1E 09 88 */ stb r0, 0x988(r30) /* 8028FB14 0028CA74 4B F9 D8 71 */ bl Think__12CElitePirateFfR13CStateManager /* 8028FB18 0028CA78 7F C3 F3 78 */ mr r3, r30 /* 8028FB1C 0028CA7C C0 02 BF 00 */ lfs f0, lbl_805ADC20@sda21(r2) /* 8028FB20 0028CA80 81 9E 00 00 */ lwz r12, 0(r30) /* 8028FB24 0028CA84 7F E4 FB 78 */ mr r4, r31 /* 8028FB28 0028CA88 C3 DE 0A 98 */ lfs f30, 0xa98(r30) /* 8028FB2C 0028CA8C 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FB30 0028CA90 EF A0 07 B2 */ fmuls f29, f0, f30 /* 8028FB34 0028CA94 7D 89 03 A6 */ mtctr r12 /* 8028FB38 0028CA98 4E 80 04 21 */ bctrl /* 8028FB3C 0028CA9C C0 02 BE F8 */ lfs f0, lbl_805ADC18@sda21(r2) /* 8028FB40 0028CAA0 C0 23 00 00 */ lfs f1, 0(r3) /* 8028FB44 0028CAA4 EC 00 07 B2 */ fmuls f0, f0, f30 /* 8028FB48 0028CAA8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028FB4C 0028CAAC 4C 40 13 82 */ cror 2, 0, 2 /* 8028FB50 0028CAB0 40 82 00 10 */ bne lbl_8028FB60 /* 8028FB54 0028CAB4 38 00 00 03 */ li r0, 3 /* 8028FB58 0028CAB8 90 1E 0A C4 */ stw r0, 0xac4(r30) /* 8028FB5C 0028CABC 48 00 00 4C */ b lbl_8028FBA8 lbl_8028FB60: /* 8028FB60 0028CAC0 7F C3 F3 78 */ mr r3, r30 /* 8028FB64 0028CAC4 7F E4 FB 78 */ mr r4, r31 /* 8028FB68 0028CAC8 81 9E 00 00 */ lwz r12, 0(r30) /* 8028FB6C 0028CACC 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FB70 0028CAD0 7D 89 03 A6 */ mtctr r12 /* 8028FB74 0028CAD4 4E 80 04 21 */ bctrl /* 8028FB78 0028CAD8 C0 03 00 00 */ lfs f0, 0(r3) /* 8028FB7C 0028CADC FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 8028FB80 0028CAE0 4C 40 13 82 */ cror 2, 0, 2 /* 8028FB84 0028CAE4 40 82 00 10 */ bne lbl_8028FB94 /* 8028FB88 0028CAE8 38 00 00 02 */ li r0, 2 /* 8028FB8C 0028CAEC 90 1E 0A C4 */ stw r0, 0xac4(r30) /* 8028FB90 0028CAF0 48 00 00 18 */ b lbl_8028FBA8 lbl_8028FB94: /* 8028FB94 0028CAF4 80 1E 0A CC */ lwz r0, 0xacc(r30) /* 8028FB98 0028CAF8 28 00 00 04 */ cmplwi r0, 4 /* 8028FB9C 0028CAFC 40 81 00 0C */ ble lbl_8028FBA8 /* 8028FBA0 0028CB00 38 00 00 01 */ li r0, 1 /* 8028FBA4 0028CB04 90 1E 0A C4 */ stw r0, 0xac4(r30) lbl_8028FBA8: /* 8028FBA8 0028CB08 80 82 BE 70 */ lwz r4, lbl_805ADB90@sda21(r2) /* 8028FBAC 0028CB0C 38 61 00 98 */ addi r3, r1, 0x98 /* 8028FBB0 0028CB10 4B D7 51 09 */ bl string_l__4rstlFPCc /* 8028FBB4 0028CB14 7F C3 F3 78 */ mr r3, r30 /* 8028FBB8 0028CB18 7F E4 FB 78 */ mr r4, r31 /* 8028FBBC 0028CB1C 38 BE 09 90 */ addi r5, r30, 0x990 /* 8028FBC0 0028CB20 38 C1 00 98 */ addi r6, r1, 0x98 /* 8028FBC4 0028CB24 4B F9 8E 19 */ bl sub_802289dc /* 8028FBC8 0028CB28 38 61 00 98 */ addi r3, r1, 0x98 /* 8028FBCC 0028CB2C 48 0A DF 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8028FBD0 0028CB30 FC 20 F8 90 */ fmr f1, f31 /* 8028FBD4 0028CB34 7F C3 F3 78 */ mr r3, r30 /* 8028FBD8 0028CB38 7F E4 FB 78 */ mr r4, r31 /* 8028FBDC 0028CB3C 4B FF FB 15 */ bl sub_8028f6f0 /* 8028FBE0 0028CB40 FC 20 F8 90 */ fmr f1, f31 /* 8028FBE4 0028CB44 7F C3 F3 78 */ mr r3, r30 /* 8028FBE8 0028CB48 7F E4 FB 78 */ mr r4, r31 /* 8028FBEC 0028CB4C 4B FF DA A5 */ bl sub_8028d690 /* 8028FBF0 0028CB50 FC 20 F8 90 */ fmr f1, f31 /* 8028FBF4 0028CB54 7F C3 F3 78 */ mr r3, r30 /* 8028FBF8 0028CB58 7F E4 FB 78 */ mr r4, r31 /* 8028FBFC 0028CB5C 4B FF D1 09 */ bl sub_8028cd04 /* 8028FC00 0028CB60 88 1E 09 A1 */ lbz r0, 0x9a1(r30) /* 8028FC04 0028CB64 28 00 00 00 */ cmplwi r0, 0 /* 8028FC08 0028CB68 41 82 00 10 */ beq lbl_8028FC18 /* 8028FC0C 0028CB6C 88 1E 0A 4A */ lbz r0, 0xa4a(r30) /* 8028FC10 0028CB70 28 00 00 00 */ cmplwi r0, 0 /* 8028FC14 0028CB74 41 82 00 CC */ beq lbl_8028FCE0 lbl_8028FC18: /* 8028FC18 0028CB78 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8028FC1C 0028CB7C 7F E4 FB 78 */ mr r4, r31 /* 8028FC20 0028CB80 80 63 00 00 */ lwz r3, 0(r3) /* 8028FC24 0028CB84 4B E0 19 35 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 8028FC28 0028CB88 2C 03 00 01 */ cmpwi r3, 1 /* 8028FC2C 0028CB8C 40 82 00 B4 */ bne lbl_8028FCE0 /* 8028FC30 0028CB90 88 1E 0A 44 */ lbz r0, 0xa44(r30) /* 8028FC34 0028CB94 28 00 00 00 */ cmplwi r0, 0 /* 8028FC38 0028CB98 41 82 00 A8 */ beq lbl_8028FCE0 /* 8028FC3C 0028CB9C 7F C3 F3 78 */ mr r3, r30 /* 8028FC40 0028CBA0 7F E5 FB 78 */ mr r5, r31 /* 8028FC44 0028CBA4 38 80 00 28 */ li r4, 0x28 /* 8028FC48 0028CBA8 4B DC 47 09 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028FC4C 0028CBAC 7F C3 F3 78 */ mr r3, r30 /* 8028FC50 0028CBB0 7F E5 FB 78 */ mr r5, r31 /* 8028FC54 0028CBB4 38 80 00 29 */ li r4, 0x29 /* 8028FC58 0028CBB8 4B DC 46 F9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028FC5C 0028CBBC 80 1E 09 C8 */ lwz r0, 0x9c8(r30) /* 8028FC60 0028CBC0 2C 00 00 04 */ cmpwi r0, 4 /* 8028FC64 0028CBC4 40 82 00 28 */ bne lbl_8028FC8C /* 8028FC68 0028CBC8 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028FC6C 0028CBCC 7F E4 FB 78 */ mr r4, r31 /* 8028FC70 0028CBD0 38 A0 00 00 */ li r5, 0 /* 8028FC74 0028CBD4 4B F1 76 85 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FC78 0028CBD8 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028FC7C 0028CBDC 7F E4 FB 78 */ mr r4, r31 /* 8028FC80 0028CBE0 38 A0 00 00 */ li r5, 0 /* 8028FC84 0028CBE4 4B F1 76 75 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FC88 0028CBE8 48 00 01 18 */ b lbl_8028FDA0 lbl_8028FC8C: /* 8028FC8C 0028CBEC 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028FC90 0028CBF0 7F E4 FB 78 */ mr r4, r31 /* 8028FC94 0028CBF4 38 A0 00 01 */ li r5, 1 /* 8028FC98 0028CBF8 4B F1 76 61 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FC9C 0028CBFC 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028FCA0 0028CC00 7F E4 FB 78 */ mr r4, r31 /* 8028FCA4 0028CC04 38 A0 00 01 */ li r5, 1 /* 8028FCA8 0028CC08 4B F1 76 51 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FCAC 0028CC0C A0 1E 0A 48 */ lhz r0, 0xa48(r30) /* 8028FCB0 0028CC10 7F E3 FB 78 */ mr r3, r31 /* 8028FCB4 0028CC14 38 81 00 5C */ addi r4, r1, 0x5c /* 8028FCB8 0028CC18 B0 01 00 5C */ sth r0, 0x5c(r1) /* 8028FCBC 0028CC1C 4B DB C8 B9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028FCC0 0028CC20 28 03 00 00 */ cmplwi r3, 0 /* 8028FCC4 0028CC24 41 82 00 DC */ beq lbl_8028FDA0 /* 8028FCC8 0028CC28 81 83 00 00 */ lwz r12, 0(r3) /* 8028FCCC 0028CC2C 38 80 00 00 */ li r4, 0 /* 8028FCD0 0028CC30 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028FCD4 0028CC34 7D 89 03 A6 */ mtctr r12 /* 8028FCD8 0028CC38 4E 80 04 21 */ bctrl /* 8028FCDC 0028CC3C 48 00 00 C4 */ b lbl_8028FDA0 lbl_8028FCE0: /* 8028FCE0 0028CC40 7F C3 F3 78 */ mr r3, r30 /* 8028FCE4 0028CC44 7F E5 FB 78 */ mr r5, r31 /* 8028FCE8 0028CC48 38 80 00 28 */ li r4, 0x28 /* 8028FCEC 0028CC4C 4B DC 42 95 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028FCF0 0028CC50 7F C3 F3 78 */ mr r3, r30 /* 8028FCF4 0028CC54 7F E5 FB 78 */ mr r5, r31 /* 8028FCF8 0028CC58 38 80 00 29 */ li r4, 0x29 /* 8028FCFC 0028CC5C 4B DC 42 85 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028FD00 0028CC60 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028FD04 0028CC64 7F E4 FB 78 */ mr r4, r31 /* 8028FD08 0028CC68 38 A0 00 00 */ li r5, 0 /* 8028FD0C 0028CC6C 4B F1 75 ED */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FD10 0028CC70 88 1E 09 A1 */ lbz r0, 0x9a1(r30) /* 8028FD14 0028CC74 28 00 00 00 */ cmplwi r0, 0 /* 8028FD18 0028CC78 41 82 00 48 */ beq lbl_8028FD60 /* 8028FD1C 0028CC7C 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028FD20 0028CC80 7F E4 FB 78 */ mr r4, r31 /* 8028FD24 0028CC84 38 A0 00 01 */ li r5, 1 /* 8028FD28 0028CC88 4B F1 75 D1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FD2C 0028CC8C A0 1E 0A 48 */ lhz r0, 0xa48(r30) /* 8028FD30 0028CC90 7F E3 FB 78 */ mr r3, r31 /* 8028FD34 0028CC94 38 81 00 58 */ addi r4, r1, 0x58 /* 8028FD38 0028CC98 B0 01 00 58 */ sth r0, 0x58(r1) /* 8028FD3C 0028CC9C 4B DB C8 39 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028FD40 0028CCA0 28 03 00 00 */ cmplwi r3, 0 /* 8028FD44 0028CCA4 41 82 00 5C */ beq lbl_8028FDA0 /* 8028FD48 0028CCA8 81 83 00 00 */ lwz r12, 0(r3) /* 8028FD4C 0028CCAC 38 80 00 01 */ li r4, 1 /* 8028FD50 0028CCB0 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028FD54 0028CCB4 7D 89 03 A6 */ mtctr r12 /* 8028FD58 0028CCB8 4E 80 04 21 */ bctrl /* 8028FD5C 0028CCBC 48 00 00 44 */ b lbl_8028FDA0 lbl_8028FD60: /* 8028FD60 0028CCC0 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028FD64 0028CCC4 7F E4 FB 78 */ mr r4, r31 /* 8028FD68 0028CCC8 38 A0 00 00 */ li r5, 0 /* 8028FD6C 0028CCCC 4B F1 75 8D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 8028FD70 0028CCD0 A0 1E 0A 48 */ lhz r0, 0xa48(r30) /* 8028FD74 0028CCD4 7F E3 FB 78 */ mr r3, r31 /* 8028FD78 0028CCD8 38 81 00 54 */ addi r4, r1, 0x54 /* 8028FD7C 0028CCDC B0 01 00 54 */ sth r0, 0x54(r1) /* 8028FD80 0028CCE0 4B DB C7 F5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028FD84 0028CCE4 28 03 00 00 */ cmplwi r3, 0 /* 8028FD88 0028CCE8 41 82 00 18 */ beq lbl_8028FDA0 /* 8028FD8C 0028CCEC 81 83 00 00 */ lwz r12, 0(r3) /* 8028FD90 0028CCF0 38 80 00 00 */ li r4, 0 /* 8028FD94 0028CCF4 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8028FD98 0028CCF8 7D 89 03 A6 */ mtctr r12 /* 8028FD9C 0028CCFC 4E 80 04 21 */ bctrl lbl_8028FDA0: /* 8028FDA0 0028CD00 FC 20 F8 90 */ fmr f1, f31 /* 8028FDA4 0028CD04 7F C3 F3 78 */ mr r3, r30 /* 8028FDA8 0028CD08 7F E4 FB 78 */ mr r4, r31 /* 8028FDAC 0028CD0C 4B FF DA 39 */ bl sub_8028d7e4 /* 8028FDB0 0028CD10 FC 20 F8 90 */ fmr f1, f31 /* 8028FDB4 0028CD14 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8028FDB8 0028CD18 7F E4 FB 78 */ mr r4, r31 /* 8028FDBC 0028CD1C 38 A0 00 00 */ li r5, 0 /* 8028FDC0 0028CD20 4B F1 76 91 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions /* 8028FDC4 0028CD24 FC 20 F8 90 */ fmr f1, f31 /* 8028FDC8 0028CD28 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 8028FDCC 0028CD2C 7F E4 FB 78 */ mr r4, r31 /* 8028FDD0 0028CD30 38 A0 00 00 */ li r5, 0 /* 8028FDD4 0028CD34 4B F1 76 7D */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions /* 8028FDD8 0028CD38 A0 1E 0A 46 */ lhz r0, 0xa46(r30) /* 8028FDDC 0028CD3C 7F E3 FB 78 */ mr r3, r31 /* 8028FDE0 0028CD40 38 81 00 50 */ addi r4, r1, 0x50 /* 8028FDE4 0028CD44 B0 01 00 50 */ sth r0, 0x50(r1) /* 8028FDE8 0028CD48 4B DB C7 8D */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028FDEC 0028CD4C 7C 7D 1B 79 */ or. r29, r3, r3 /* 8028FDF0 0028CD50 41 82 00 9C */ beq lbl_8028FE8C /* 8028FDF4 0028CD54 7F C3 F3 78 */ mr r3, r30 /* 8028FDF8 0028CD58 7F E4 FB 78 */ mr r4, r31 /* 8028FDFC 0028CD5C 81 9E 00 00 */ lwz r12, 0(r30) /* 8028FE00 0028CD60 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FE04 0028CD64 7D 89 03 A6 */ mtctr r12 /* 8028FE08 0028CD68 4E 80 04 21 */ bctrl /* 8028FE0C 0028CD6C C3 C3 00 00 */ lfs f30, 0(r3) /* 8028FE10 0028CD70 7F A3 EB 78 */ mr r3, r29 /* 8028FE14 0028CD74 81 9D 00 00 */ lwz r12, 0(r29) /* 8028FE18 0028CD78 7F E4 FB 78 */ mr r4, r31 /* 8028FE1C 0028CD7C 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FE20 0028CD80 7D 89 03 A6 */ mtctr r12 /* 8028FE24 0028CD84 4E 80 04 21 */ bctrl /* 8028FE28 0028CD88 7C 7D 1B 78 */ mr r29, r3 /* 8028FE2C 0028CD8C 7F C3 F3 78 */ mr r3, r30 /* 8028FE30 0028CD90 81 9E 00 00 */ lwz r12, 0(r30) /* 8028FE34 0028CD94 7F E4 FB 78 */ mr r4, r31 /* 8028FE38 0028CD98 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FE3C 0028CD9C 7D 89 03 A6 */ mtctr r12 /* 8028FE40 0028CDA0 4E 80 04 21 */ bctrl /* 8028FE44 0028CDA4 C0 1D 00 00 */ lfs f0, 0(r29) /* 8028FE48 0028CDA8 7F E4 FB 78 */ mr r4, r31 /* 8028FE4C 0028CDAC D0 03 00 00 */ stfs f0, 0(r3) /* 8028FE50 0028CDB0 C0 1D 00 04 */ lfs f0, 4(r29) /* 8028FE54 0028CDB4 D0 03 00 04 */ stfs f0, 4(r3) /* 8028FE58 0028CDB8 7F C3 F3 78 */ mr r3, r30 /* 8028FE5C 0028CDBC 81 9E 00 00 */ lwz r12, 0(r30) /* 8028FE60 0028CDC0 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FE64 0028CDC4 7D 89 03 A6 */ mtctr r12 /* 8028FE68 0028CDC8 4E 80 04 21 */ bctrl /* 8028FE6C 0028CDCC C0 23 00 00 */ lfs f1, 0(r3) /* 8028FE70 0028CDD0 C0 1E 0B 5C */ lfs f0, 0xb5c(r30) /* 8028FE74 0028CDD4 EC 3E 08 28 */ fsubs f1, f30, f1 /* 8028FE78 0028CDD8 EC 00 08 2A */ fadds f0, f0, f1 /* 8028FE7C 0028CDDC D0 1E 0B 5C */ stfs f0, 0xb5c(r30) /* 8028FE80 0028CDE0 C0 1E 0B 60 */ lfs f0, 0xb60(r30) /* 8028FE84 0028CDE4 EC 00 08 2A */ fadds f0, f0, f1 /* 8028FE88 0028CDE8 D0 1E 0B 60 */ stfs f0, 0xb60(r30) lbl_8028FE8C: /* 8028FE8C 0028CDEC 7F C3 F3 78 */ mr r3, r30 /* 8028FE90 0028CDF0 7F E4 FB 78 */ mr r4, r31 /* 8028FE94 0028CDF4 81 9E 00 00 */ lwz r12, 0(r30) /* 8028FE98 0028CDF8 81 8C 00 34 */ lwz r12, 0x34(r12) /* 8028FE9C 0028CDFC 7D 89 03 A6 */ mtctr r12 /* 8028FEA0 0028CE00 4E 80 04 21 */ bctrl /* 8028FEA4 0028CE04 C0 23 00 00 */ lfs f1, 0(r3) /* 8028FEA8 0028CE08 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028FEAC 0028CE0C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028FEB0 0028CE10 4C 40 13 82 */ cror 2, 0, 2 /* 8028FEB4 0028CE14 40 82 00 14 */ bne lbl_8028FEC8 /* 8028FEB8 0028CE18 7F C3 F3 78 */ mr r3, r30 /* 8028FEBC 0028CE1C 7F E4 FB 78 */ mr r4, r31 /* 8028FEC0 0028CE20 4B FF B6 59 */ bl sub_8028b518 /* 8028FEC4 0028CE24 48 00 00 BC */ b lbl_8028FF80 lbl_8028FEC8: /* 8028FEC8 0028CE28 C0 3E 0B 5C */ lfs f1, 0xb5c(r30) /* 8028FECC 0028CE2C C0 02 BF 04 */ lfs f0, lbl_805ADC24@sda21(r2) /* 8028FED0 0028CE30 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028FED4 0028CE34 40 81 00 10 */ ble lbl_8028FEE4 /* 8028FED8 0028CE38 38 00 00 01 */ li r0, 1 /* 8028FEDC 0028CE3C 98 1E 09 B4 */ stb r0, 0x9b4(r30) /* 8028FEE0 0028CE40 48 00 00 A0 */ b lbl_8028FF80 lbl_8028FEE4: /* 8028FEE4 0028CE44 C0 3E 0B 60 */ lfs f1, 0xb60(r30) /* 8028FEE8 0028CE48 C0 02 BF 08 */ lfs f0, lbl_805ADC28@sda21(r2) /* 8028FEEC 0028CE4C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8028FEF0 0028CE50 40 81 00 90 */ ble lbl_8028FF80 /* 8028FEF4 0028CE54 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028FEF8 0028CE58 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028FEFC 0028CE5C 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028FF00 0028CE60 80 7E 04 50 */ lwz r3, 0x450(r30) /* 8028FF04 0028CE64 3C 80 80 3E */ lis r4, lbl_803E10C8@ha /* 8028FF08 0028CE68 90 01 00 C0 */ stw r0, 0xc0(r1) /* 8028FF0C 0028CE6C 38 C4 10 C8 */ addi r6, r4, lbl_803E10C8@l /* 8028FF10 0028CE70 38 80 00 1A */ li r4, 0x1a /* 8028FF14 0028CE74 38 A0 00 01 */ li r5, 1 /* 8028FF18 0028CE78 38 00 00 00 */ li r0, 0 /* 8028FF1C 0028CE7C 3B A3 00 04 */ addi r29, r3, 4 /* 8028FF20 0028CE80 90 81 00 C4 */ stw r4, 0xc4(r1) /* 8028FF24 0028CE84 7F A3 EB 78 */ mr r3, r29 /* 8028FF28 0028CE88 38 80 00 1A */ li r4, 0x1a /* 8028FF2C 0028CE8C 90 C1 00 C0 */ stw r6, 0xc0(r1) /* 8028FF30 0028CE90 D0 01 00 C8 */ stfs f0, 0xc8(r1) /* 8028FF34 0028CE94 90 A1 00 CC */ stw r5, 0xcc(r1) /* 8028FF38 0028CE98 98 01 00 D0 */ stb r0, 0xd0(r1) /* 8028FF3C 0028CE9C 4B EA 14 FD */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8028FF40 0028CEA0 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 8028FF44 0028CEA4 3C 60 80 3E */ lis r3, lbl_803E10C8@ha /* 8028FF48 0028CEA8 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l /* 8028FF4C 0028CEAC 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8028FF50 0028CEB0 90 1D 02 88 */ stw r0, 0x288(r29) /* 8028FF54 0028CEB4 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8028FF58 0028CEB8 C0 01 00 C8 */ lfs f0, 0xc8(r1) /* 8028FF5C 0028CEBC 80 A1 00 CC */ lwz r5, 0xcc(r1) /* 8028FF60 0028CEC0 D0 1D 02 8C */ stfs f0, 0x28c(r29) /* 8028FF64 0028CEC4 88 61 00 D0 */ lbz r3, 0xd0(r1) /* 8028FF68 0028CEC8 90 BD 02 90 */ stw r5, 0x290(r29) /* 8028FF6C 0028CECC C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8028FF70 0028CED0 98 7D 02 94 */ stb r3, 0x294(r29) /* 8028FF74 0028CED4 90 81 00 C0 */ stw r4, 0xc0(r1) /* 8028FF78 0028CED8 90 01 00 C0 */ stw r0, 0xc0(r1) /* 8028FF7C 0028CEDC D0 1E 0B 60 */ stfs f0, 0xb60(r30) lbl_8028FF80: /* 8028FF80 0028CEE0 FC 20 F8 90 */ fmr f1, f31 /* 8028FF84 0028CEE4 7F C3 F3 78 */ mr r3, r30 /* 8028FF88 0028CEE8 7F E4 FB 78 */ mr r4, r31 /* 8028FF8C 0028CEEC 4B FF C7 79 */ bl sub_8028c704 /* 8028FF90 0028CEF0 83 9E 09 E0 */ lwz r28, 0x9e0(r30) /* 8028FF94 0028CEF4 3B 60 00 00 */ li r27, 0 /* 8028FF98 0028CEF8 3B A0 00 00 */ li r29, 0 /* 8028FF9C 0028CEFC 48 00 00 90 */ b lbl_8029002C lbl_8028FFA0: /* 8028FFA0 0028CF00 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 8028FFA4 0028CF04 7F E3 FB 78 */ mr r3, r31 /* 8028FFA8 0028CF08 38 81 00 4C */ addi r4, r1, 0x4c /* 8028FFAC 0028CF0C 7C 05 EA 2E */ lhzx r0, r5, r29 /* 8028FFB0 0028CF10 B0 01 00 4C */ sth r0, 0x4c(r1) /* 8028FFB4 0028CF14 4B DB C5 C1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 8028FFB8 0028CF18 88 1E 0B 78 */ lbz r0, 0xb78(r30) /* 8028FFBC 0028CF1C 7C 7A 1B 78 */ mr r26, r3 /* 8028FFC0 0028CF20 28 00 00 00 */ cmplwi r0, 0 /* 8028FFC4 0028CF24 40 82 00 10 */ bne lbl_8028FFD4 /* 8028FFC8 0028CF28 88 1E 0B 79 */ lbz r0, 0xb79(r30) /* 8028FFCC 0028CF2C 28 00 00 00 */ cmplwi r0, 0 /* 8028FFD0 0028CF30 41 82 00 34 */ beq lbl_80290004 lbl_8028FFD4: /* 8028FFD4 0028CF34 88 1E 0A 4A */ lbz r0, 0xa4a(r30) /* 8028FFD8 0028CF38 28 00 00 00 */ cmplwi r0, 0 /* 8028FFDC 0028CF3C 40 82 00 28 */ bne lbl_80290004 /* 8028FFE0 0028CF40 7F 43 D3 78 */ mr r3, r26 /* 8028FFE4 0028CF44 7F E5 FB 78 */ mr r5, r31 /* 8028FFE8 0028CF48 38 80 00 28 */ li r4, 0x28 /* 8028FFEC 0028CF4C 4B DC 43 65 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8028FFF0 0028CF50 7F 43 D3 78 */ mr r3, r26 /* 8028FFF4 0028CF54 7F E5 FB 78 */ mr r5, r31 /* 8028FFF8 0028CF58 38 80 00 29 */ li r4, 0x29 /* 8028FFFC 0028CF5C 4B DC 43 55 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290000 0028CF60 48 00 00 24 */ b lbl_80290024 lbl_80290004: /* 80290004 0028CF64 7F 43 D3 78 */ mr r3, r26 /* 80290008 0028CF68 7F E5 FB 78 */ mr r5, r31 /* 8029000C 0028CF6C 38 80 00 28 */ li r4, 0x28 /* 80290010 0028CF70 4B DC 3F 71 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290014 0028CF74 7F 43 D3 78 */ mr r3, r26 /* 80290018 0028CF78 7F E5 FB 78 */ mr r5, r31 /* 8029001C 0028CF7C 38 80 00 29 */ li r4, 0x29 /* 80290020 0028CF80 4B DC 3F 61 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_80290024: /* 80290024 0028CF84 3B 7B 00 01 */ addi r27, r27, 1 /* 80290028 0028CF88 3B BD 00 14 */ addi r29, r29, 0x14 lbl_8029002C: /* 8029002C 0028CF8C 7C 1B E0 40 */ cmplw r27, r28 /* 80290030 0028CF90 41 80 FF 70 */ blt lbl_8028FFA0 /* 80290034 0028CF94 80 9F 08 B8 */ lwz r4, 0x8b8(r31) /* 80290038 0028CF98 80 7E 05 D4 */ lwz r3, 0x5d4(r30) /* 8029003C 0028CF9C 83 A4 00 00 */ lwz r29, 0(r4) /* 80290040 0028CFA0 4B F1 73 7D */ bl GetActive__22CCollisionActorManagerCFv /* 80290044 0028CFA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80290048 0028CFA8 41 82 00 C4 */ beq lbl_8029010C /* 8029004C 0028CFAC 88 1D 00 00 */ lbz r0, 0(r29) /* 80290050 0028CFB0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 80290054 0028CFB4 41 82 00 B8 */ beq lbl_8029010C /* 80290058 0028CFB8 80 1D 00 08 */ lwz r0, 8(r29) /* 8029005C 0028CFBC 2C 00 00 02 */ cmpwi r0, 2 /* 80290060 0028CFC0 40 82 00 AC */ bne lbl_8029010C /* 80290064 0028CFC4 88 1E 0A D8 */ lbz r0, 0xad8(r30) /* 80290068 0028CFC8 28 00 00 00 */ cmplwi r0, 0 /* 8029006C 0028CFCC 41 82 00 A0 */ beq lbl_8029010C /* 80290070 0028CFD0 7F C3 F3 78 */ mr r3, r30 /* 80290074 0028CFD4 7F E5 FB 78 */ mr r5, r31 /* 80290078 0028CFD8 38 80 00 28 */ li r4, 0x28 /* 8029007C 0028CFDC 4B DC 42 D5 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290080 0028CFE0 A0 1E 00 08 */ lhz r0, 8(r30) /* 80290084 0028CFE4 38 81 00 48 */ addi r4, r1, 0x48 /* 80290088 0028CFE8 B0 01 00 48 */ sth r0, 0x48(r1) /* 8029008C 0028CFEC B0 01 00 44 */ sth r0, 0x44(r1) /* 80290090 0028CFF0 80 7F 08 4C */ lwz r3, 0x84c(r31) /* 80290094 0028CFF4 4B D8 9D 11 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId /* 80290098 0028CFF8 83 5E 09 E0 */ lwz r26, 0x9e0(r30) /* 8029009C 0028CFFC 3B 60 00 00 */ li r27, 0 /* 802900A0 0028D000 3B A0 00 00 */ li r29, 0 /* 802900A4 0028D004 48 00 00 38 */ b lbl_802900DC lbl_802900A8: /* 802900A8 0028D008 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 802900AC 0028D00C 7F E3 FB 78 */ mr r3, r31 /* 802900B0 0028D010 38 81 00 40 */ addi r4, r1, 0x40 /* 802900B4 0028D014 7C 05 EA 2E */ lhzx r0, r5, r29 /* 802900B8 0028D018 B0 01 00 40 */ sth r0, 0x40(r1) /* 802900BC 0028D01C 4B DB C4 B9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 802900C0 0028D020 28 03 00 00 */ cmplwi r3, 0 /* 802900C4 0028D024 41 82 00 10 */ beq lbl_802900D4 /* 802900C8 0028D028 7F E5 FB 78 */ mr r5, r31 /* 802900CC 0028D02C 38 80 00 28 */ li r4, 0x28 /* 802900D0 0028D030 4B DC 3E B1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_802900D4: /* 802900D4 0028D034 3B 7B 00 01 */ addi r27, r27, 1 /* 802900D8 0028D038 3B BD 00 14 */ addi r29, r29, 0x14 lbl_802900DC: /* 802900DC 0028D03C 7C 1B D0 40 */ cmplw r27, r26 /* 802900E0 0028D040 41 80 FF C8 */ blt lbl_802900A8 /* 802900E4 0028D044 A0 1E 00 08 */ lhz r0, 8(r30) /* 802900E8 0028D048 7F E5 FB 78 */ mr r5, r31 /* 802900EC 0028D04C 38 81 00 3C */ addi r4, r1, 0x3c /* 802900F0 0028D050 B0 01 00 3C */ sth r0, 0x3c(r1) /* 802900F4 0028D054 80 7F 08 4C */ lwz r3, 0x84c(r31) /* 802900F8 0028D058 B0 01 00 38 */ sth r0, 0x38(r1) /* 802900FC 0028D05C 80 63 04 90 */ lwz r3, 0x490(r3) /* 80290100 0028D060 80 63 07 44 */ lwz r3, 0x744(r3) /* 80290104 0028D064 4B F2 98 1D */ bl SetNewTarget__10CAuxWeaponF9TUniqueIdR13CStateManager /* 80290108 0028D068 48 00 01 1C */ b lbl_80290224 lbl_8029010C: /* 8029010C 0028D06C 88 1E 0A 4A */ lbz r0, 0xa4a(r30) /* 80290110 0028D070 28 00 00 00 */ cmplwi r0, 0 /* 80290114 0028D074 40 82 01 10 */ bne lbl_80290224 /* 80290118 0028D078 7F C3 F3 78 */ mr r3, r30 /* 8029011C 0028D07C 7F E5 FB 78 */ mr r5, r31 /* 80290120 0028D080 38 80 00 28 */ li r4, 0x28 /* 80290124 0028D084 4B DC 3E 5D */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290128 0028D088 83 5E 09 E0 */ lwz r26, 0x9e0(r30) /* 8029012C 0028D08C 3B 60 00 00 */ li r27, 0 /* 80290130 0028D090 3B A0 00 00 */ li r29, 0 /* 80290134 0028D094 48 00 00 50 */ b lbl_80290184 lbl_80290138: /* 80290138 0028D098 80 BE 09 E8 */ lwz r5, 0x9e8(r30) /* 8029013C 0028D09C 7F E3 FB 78 */ mr r3, r31 /* 80290140 0028D0A0 38 81 00 34 */ addi r4, r1, 0x34 /* 80290144 0028D0A4 7C 05 EA 2E */ lhzx r0, r5, r29 /* 80290148 0028D0A8 B0 01 00 34 */ sth r0, 0x34(r1) /* 8029014C 0028D0AC 4B DB C4 29 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290150 0028D0B0 28 03 00 00 */ cmplwi r3, 0 /* 80290154 0028D0B4 41 82 00 28 */ beq lbl_8029017C /* 80290158 0028D0B8 88 1E 0B 78 */ lbz r0, 0xb78(r30) /* 8029015C 0028D0BC 28 00 00 00 */ cmplwi r0, 0 /* 80290160 0028D0C0 40 82 00 10 */ bne lbl_80290170 /* 80290164 0028D0C4 88 1E 0B 79 */ lbz r0, 0xb79(r30) /* 80290168 0028D0C8 28 00 00 00 */ cmplwi r0, 0 /* 8029016C 0028D0CC 41 82 00 10 */ beq lbl_8029017C lbl_80290170: /* 80290170 0028D0D0 7F E5 FB 78 */ mr r5, r31 /* 80290174 0028D0D4 38 80 00 28 */ li r4, 0x28 /* 80290178 0028D0D8 4B DC 41 D9 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_8029017C: /* 8029017C 0028D0DC 3B 7B 00 01 */ addi r27, r27, 1 /* 80290180 0028D0E0 3B BD 00 14 */ addi r29, r29, 0x14 lbl_80290184: /* 80290184 0028D0E4 7C 1B D0 40 */ cmplw r27, r26 /* 80290188 0028D0E8 41 80 FF B0 */ blt lbl_80290138 /* 8029018C 0028D0EC 80 9F 08 4C */ lwz r4, 0x84c(r31) /* 80290190 0028D0F0 7F E5 FB 78 */ mr r5, r31 /* 80290194 0028D0F4 A3 BE 00 08 */ lhz r29, 8(r30) /* 80290198 0028D0F8 38 61 00 30 */ addi r3, r1, 0x30 /* 8029019C 0028D0FC 80 84 04 90 */ lwz r4, 0x490(r4) /* 802901A0 0028D100 80 84 07 44 */ lwz r4, 0x744(r4) /* 802901A4 0028D104 4B F2 97 15 */ bl HasTarget__10CAuxWeaponCFRC13CStateManager /* 802901A8 0028D108 A0 01 00 30 */ lhz r0, 0x30(r1) /* 802901AC 0028D10C 7C 00 E8 40 */ cmplw r0, r29 /* 802901B0 0028D110 40 82 00 74 */ bne lbl_80290224 /* 802901B4 0028D114 83 BF 08 4C */ lwz r29, 0x84c(r31) /* 802901B8 0028D118 7F E5 FB 78 */ mr r5, r31 /* 802901BC 0028D11C 38 81 00 2C */ addi r4, r1, 0x2c /* 802901C0 0028D120 A0 1D 03 10 */ lhz r0, 0x310(r29) /* 802901C4 0028D124 7F A3 EB 78 */ mr r3, r29 /* 802901C8 0028D128 B0 01 00 28 */ sth r0, 0x28(r1) /* 802901CC 0028D12C B0 01 00 2C */ sth r0, 0x2c(r1) /* 802901D0 0028D130 4B EE EE AD */ bl ValidateOrbitTargetId__7CPlayerCF9TUniqueIdR13CStateManager /* 802901D4 0028D134 2C 03 00 00 */ cmpwi r3, 0 /* 802901D8 0028D138 40 82 00 2C */ bne lbl_80290204 /* 802901DC 0028D13C A0 1D 03 10 */ lhz r0, 0x310(r29) /* 802901E0 0028D140 7F E5 FB 78 */ mr r5, r31 /* 802901E4 0028D144 38 81 00 24 */ addi r4, r1, 0x24 /* 802901E8 0028D148 B0 01 00 24 */ sth r0, 0x24(r1) /* 802901EC 0028D14C 80 7F 08 4C */ lwz r3, 0x84c(r31) /* 802901F0 0028D150 B0 01 00 20 */ sth r0, 0x20(r1) /* 802901F4 0028D154 80 63 04 90 */ lwz r3, 0x490(r3) /* 802901F8 0028D158 80 63 07 44 */ lwz r3, 0x744(r3) /* 802901FC 0028D15C 4B F2 97 25 */ bl SetNewTarget__10CAuxWeaponF9TUniqueIdR13CStateManager /* 80290200 0028D160 48 00 00 24 */ b lbl_80290224 lbl_80290204: /* 80290204 0028D164 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80290208 0028D168 7F E5 FB 78 */ mr r5, r31 /* 8029020C 0028D16C 38 81 00 1C */ addi r4, r1, 0x1c /* 80290210 0028D170 B0 01 00 1C */ sth r0, 0x1c(r1) /* 80290214 0028D174 80 7F 08 4C */ lwz r3, 0x84c(r31) /* 80290218 0028D178 80 63 04 90 */ lwz r3, 0x490(r3) /* 8029021C 0028D17C 80 63 07 44 */ lwz r3, 0x744(r3) /* 80290220 0028D180 4B F2 97 01 */ bl SetNewTarget__10CAuxWeaponF9TUniqueIdR13CStateManager lbl_80290224: /* 80290224 0028D184 A0 1E 07 72 */ lhz r0, 0x772(r30) /* 80290228 0028D188 7F E3 FB 78 */ mr r3, r31 /* 8029022C 0028D18C 38 81 00 18 */ addi r4, r1, 0x18 /* 80290230 0028D190 B0 01 00 14 */ sth r0, 0x14(r1) /* 80290234 0028D194 B0 01 00 18 */ sth r0, 0x18(r1) /* 80290238 0028D198 4B DB C3 3D */ bl ObjectById__13CStateManagerF9TUniqueId /* 8029023C 0028D19C 28 03 00 00 */ cmplwi r3, 0 /* 80290240 0028D1A0 41 82 00 0C */ beq lbl_8029024C /* 80290244 0028D1A4 88 1E 0A DF */ lbz r0, 0xadf(r30) /* 80290248 0028D1A8 98 03 03 FE */ stb r0, 0x3fe(r3) lbl_8029024C: /* 8029024C 0028D1AC A0 1E 09 90 */ lhz r0, 0x990(r30) /* 80290250 0028D1B0 7F E3 FB 78 */ mr r3, r31 /* 80290254 0028D1B4 38 81 00 10 */ addi r4, r1, 0x10 /* 80290258 0028D1B8 B0 01 00 10 */ sth r0, 0x10(r1) /* 8029025C 0028D1BC 4B DB C3 19 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290260 0028D1C0 28 03 00 00 */ cmplwi r3, 0 /* 80290264 0028D1C4 41 82 00 0C */ beq lbl_80290270 /* 80290268 0028D1C8 88 1E 0A E0 */ lbz r0, 0xae0(r30) /* 8029026C 0028D1CC 98 03 03 FE */ stb r0, 0x3fe(r3) lbl_80290270: /* 80290270 0028D1D0 88 1E 09 EC */ lbz r0, 0x9ec(r30) /* 80290274 0028D1D4 28 00 00 00 */ cmplwi r0, 0 /* 80290278 0028D1D8 41 82 00 48 */ beq lbl_802902C0 /* 8029027C 0028D1DC 38 00 00 00 */ li r0, 0 /* 80290280 0028D1E0 3C 60 80 3D */ lis r3, lbl_803D5A74@ha /* 80290284 0028D1E4 38 83 5A 74 */ addi r4, r3, lbl_803D5A74@l /* 80290288 0028D1E8 98 1E 09 EC */ stb r0, 0x9ec(r30) /* 8029028C 0028D1EC 38 61 00 88 */ addi r3, r1, 0x88 /* 80290290 0028D1F0 38 84 00 E2 */ addi r4, r4, 0xe2 /* 80290294 0028D1F4 4B D7 4A 25 */ bl string_l__4rstlFPCc /* 80290298 0028D1F8 7F C3 F3 78 */ mr r3, r30 /* 8029029C 0028D1FC 4B E1 26 5D */ bl GetStateMachine__3CAiFv /* 802902A0 0028D200 7C 66 1B 78 */ mr r6, r3 /* 802902A4 0028D204 7F E4 FB 78 */ mr r4, r31 /* 802902A8 0028D208 7F C5 F3 78 */ mr r5, r30 /* 802902AC 0028D20C 38 7E 03 30 */ addi r3, r30, 0x330 /* 802902B0 0028D210 38 E1 00 88 */ addi r7, r1, 0x88 /* 802902B4 0028D214 4B DE F9 51 */ bl "SetState__18CStateMachineStateFR13CStateManagerR3CAiPC13CStateMachineRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 802902B8 0028D218 38 61 00 88 */ addi r3, r1, 0x88 /* 802902BC 0028D21C 48 0A D8 25 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_802902C0: /* 802902C0 0028D220 80 1E 0B 68 */ lwz r0, 0xb68(r30) /* 802902C4 0028D224 28 00 00 02 */ cmplwi r0, 2 /* 802902C8 0028D228 41 80 00 DC */ blt lbl_802903A4 /* 802902CC 0028D22C 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 802902D0 0028D230 38 61 00 78 */ addi r3, r1, 0x78 /* 802902D4 0028D234 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 802902D8 0028D238 38 84 00 EB */ addi r4, r4, 0xeb /* 802902DC 0028D23C 4B D7 49 DD */ bl string_l__4rstlFPCc /* 802902E0 0028D240 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 802902E4 0028D244 38 61 00 68 */ addi r3, r1, 0x68 /* 802902E8 0028D248 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 802902EC 0028D24C 38 84 00 EC */ addi r4, r4, 0xec /* 802902F0 0028D250 4B D7 49 C9 */ bl string_l__4rstlFPCc /* 802902F4 0028D254 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 802902F8 0028D258 38 61 00 60 */ addi r3, r1, 0x60 /* 802902FC 0028D25C 48 0B 8A F1 */ bl __ct__13CCharAnimTimeFf /* 80290300 0028D260 38 00 00 00 */ li r0, 0 /* 80290304 0028D264 7C 66 1B 78 */ mr r6, r3 /* 80290308 0028D268 90 01 00 08 */ stw r0, 8(r1) /* 8029030C 0028D26C 38 01 00 68 */ addi r0, r1, 0x68 /* 80290310 0028D270 C0 22 BE A0 */ lfs f1, lbl_805ADBC0@sda21(r2) /* 80290314 0028D274 38 61 00 D4 */ addi r3, r1, 0xd4 /* 80290318 0028D278 90 01 00 0C */ stw r0, 0xc(r1) /* 8029031C 0028D27C 38 81 00 78 */ addi r4, r1, 0x78 /* 80290320 0028D280 38 A0 00 02 */ li r5, 2 /* 80290324 0028D284 38 E0 FF FF */ li r7, -1 /* 80290328 0028D288 39 00 00 00 */ li r8, 0 /* 8029032C 0028D28C 39 20 FF FF */ li r9, -1 /* 80290330 0028D290 39 40 00 00 */ li r10, 0 /* 80290334 0028D294 4B D9 B0 59 */ bl "__ct__13CInt32POINodeFQ24rstl66basic_string,Q24rstl17rmemory_allocator>UsRC13CCharAnimTimeibfiiiRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290338 0028D298 7F C3 F3 78 */ mr r3, r30 /* 8029033C 0028D29C FC 20 F8 90 */ fmr f1, f31 /* 80290340 0028D2A0 81 9E 00 00 */ lwz r12, 0(r30) /* 80290344 0028D2A4 7F E4 FB 78 */ mr r4, r31 /* 80290348 0028D2A8 38 A1 00 D4 */ addi r5, r1, 0xd4 /* 8029034C 0028D2AC 38 C0 00 19 */ li r6, 0x19 /* 80290350 0028D2B0 81 8C 00 68 */ lwz r12, 0x68(r12) /* 80290354 0028D2B4 7D 89 03 A6 */ mtctr r12 /* 80290358 0028D2B8 4E 80 04 21 */ bctrl /* 8029035C 0028D2BC 3C 80 80 3E */ lis r4, lbl_803D9B98@ha /* 80290360 0028D2C0 34 61 01 10 */ addic. r3, r1, 0x110 /* 80290364 0028D2C4 38 04 9B 98 */ addi r0, r4, lbl_803D9B98@l /* 80290368 0028D2C8 90 01 00 D4 */ stw r0, 0xd4(r1) /* 8029036C 0028D2CC 41 82 00 08 */ beq lbl_80290374 /* 80290370 0028D2D0 48 0A D7 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80290374: /* 80290374 0028D2D4 3C 80 80 3E */ lis r4, lbl_803D9B8C@ha /* 80290378 0028D2D8 34 61 00 DC */ addic. r3, r1, 0xdc /* 8029037C 0028D2DC 38 04 9B 8C */ addi r0, r4, lbl_803D9B8C@l /* 80290380 0028D2E0 90 01 00 D4 */ stw r0, 0xd4(r1) /* 80290384 0028D2E4 41 82 00 08 */ beq lbl_8029038C /* 80290388 0028D2E8 48 0A D7 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_8029038C: /* 8029038C 0028D2EC 38 61 00 68 */ addi r3, r1, 0x68 /* 80290390 0028D2F0 48 0A D7 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80290394 0028D2F4 38 61 00 78 */ addi r3, r1, 0x78 /* 80290398 0028D2F8 48 0A D7 49 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 8029039C 0028D2FC 38 00 00 00 */ li r0, 0 /* 802903A0 0028D300 90 1E 0B 68 */ stw r0, 0xb68(r30) lbl_802903A4: /* 802903A4 0028D304 C0 3E 0B 8C */ lfs f1, 0xb8c(r30) /* 802903A8 0028D308 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 802903AC 0028D30C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802903B0 0028D310 40 81 00 4C */ ble lbl_802903FC /* 802903B4 0028D314 7F C4 F3 78 */ mr r4, r30 /* 802903B8 0028D318 38 61 00 A8 */ addi r3, r1, 0xa8 /* 802903BC 0028D31C 4B E8 A5 71 */ bl GetBoundingBox__13CPhysicsActorCFv /* 802903C0 0028D320 C0 41 00 B4 */ lfs f2, 0xb4(r1) /* 802903C4 0028D324 FC 20 F8 90 */ fmr f1, f31 /* 802903C8 0028D328 C0 01 00 A8 */ lfs f0, 0xa8(r1) /* 802903CC 0028D32C 7F E3 FB 78 */ mr r3, r31 /* 802903D0 0028D330 C0 62 BE C4 */ lfs f3, lbl_805ADBE4@sda21(r2) /* 802903D4 0028D334 7F C4 F3 78 */ mr r4, r30 /* 802903D8 0028D338 EC 02 00 28 */ fsubs f0, f2, f0 /* 802903DC 0028D33C C0 42 BE A0 */ lfs f2, lbl_805ADBC0@sda21(r2) /* 802903E0 0028D340 38 A0 00 08 */ li r5, 8 /* 802903E4 0028D344 C0 82 BF 0C */ lfs f4, lbl_805ADC2C@sda21(r2) /* 802903E8 0028D348 EC 63 00 32 */ fmuls f3, f3, f0 /* 802903EC 0028D34C C0 A2 BE A8 */ lfs f5, lbl_805ADBC8@sda21(r2) /* 802903F0 0028D350 4B EE F7 95 */ bl sub_8017fb84 /* 802903F4 0028D354 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 802903F8 0028D358 D0 1E 0B 8C */ stfs f0, 0xb8c(r30) lbl_802903FC: /* 802903FC 0028D35C C0 1E 0B 8C */ lfs f0, 0xb8c(r30) /* 80290400 0028D360 EC 00 F8 2A */ fadds f0, f0, f31 /* 80290404 0028D364 D0 1E 0B 8C */ stfs f0, 0xb8c(r30) lbl_80290408: /* 80290408 0028D368 E3 E1 01 68 */ psq_l f31, 360(r1), 0, qr0 /* 8029040C 0028D36C CB E1 01 60 */ lfd f31, 0x160(r1) /* 80290410 0028D370 E3 C1 01 58 */ psq_l f30, 344(r1), 0, qr0 /* 80290414 0028D374 CB C1 01 50 */ lfd f30, 0x150(r1) /* 80290418 0028D378 E3 A1 01 48 */ psq_l f29, 328(r1), 0, qr0 /* 8029041C 0028D37C CB A1 01 40 */ lfd f29, 0x140(r1) /* 80290420 0028D380 BB 41 01 28 */ lmw r26, 0x128(r1) /* 80290424 0028D384 80 01 01 74 */ lwz r0, 0x174(r1) /* 80290428 0028D388 7C 08 03 A6 */ mtlr r0 /* 8029042C 0028D38C 38 21 01 70 */ addi r1, r1, 0x170 /* 80290430 0028D390 4E 80 00 20 */ blr .global sub_80290434 sub_80290434: /* 80290434 0028D394 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80290438 0028D398 7C 08 02 A6 */ mflr r0 /* 8029043C 0028D39C 90 01 00 24 */ stw r0, 0x24(r1) /* 80290440 0028D3A0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80290444 0028D3A4 7C 9F 23 78 */ mr r31, r4 /* 80290448 0028D3A8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8029044C 0028D3AC 7C 7E 1B 78 */ mr r30, r3 /* 80290450 0028D3B0 4B F9 8C C5 */ bl sub_80229114 /* 80290454 0028D3B4 A0 1E 09 90 */ lhz r0, 0x990(r30) /* 80290458 0028D3B8 7F C3 F3 78 */ mr r3, r30 /* 8029045C 0028D3BC 7F E4 FB 78 */ mr r4, r31 /* 80290460 0028D3C0 38 A1 00 08 */ addi r5, r1, 8 /* 80290464 0028D3C4 B0 01 00 08 */ sth r0, 8(r1) /* 80290468 0028D3C8 4B F9 8B C5 */ bl sub_8022902c /* 8029046C 0028D3CC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80290470 0028D3D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80290474 0028D3D4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80290478 0028D3D8 7C 08 03 A6 */ mtlr r0 /* 8029047C 0028D3DC 38 21 00 20 */ addi r1, r1, 0x20 /* 80290480 0028D3E0 4E 80 00 20 */ blr .global AggressionCheck__12COmegaPirateFR13CStateManagerf AggressionCheck__12COmegaPirateFR13CStateManagerf: /* 80290484 0028D3E4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80290488 0028D3E8 7C 08 02 A6 */ mflr r0 /* 8029048C 0028D3EC 90 01 00 14 */ stw r0, 0x14(r1) /* 80290490 0028D3F0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80290494 0028D3F4 3B E0 00 00 */ li r31, 0 /* 80290498 0028D3F8 A0 A3 09 90 */ lhz r5, 0x990(r3) /* 8029049C 0028D3FC A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 802904A0 0028D400 7C 05 00 40 */ cmplw r5, r0 /* 802904A4 0028D404 40 82 00 14 */ bne lbl_802904B8 /* 802904A8 0028D408 4B F9 B8 2D */ bl AggressionCheck__12CElitePirateFR13CStateManagerf /* 802904AC 0028D40C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802904B0 0028D410 41 82 00 08 */ beq lbl_802904B8 /* 802904B4 0028D414 3B E0 00 01 */ li r31, 1 lbl_802904B8: /* 802904B8 0028D418 80 01 00 14 */ lwz r0, 0x14(r1) /* 802904BC 0028D41C 7F E3 FB 78 */ mr r3, r31 /* 802904C0 0028D420 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802904C4 0028D424 7C 08 03 A6 */ mtlr r0 /* 802904C8 0028D428 38 21 00 10 */ addi r1, r1, 0x10 /* 802904CC 0028D42C 4E 80 00 20 */ blr .global ShotAt__12COmegaPirateFR13CStateManagerf ShotAt__12COmegaPirateFR13CStateManagerf: /* 802904D0 0028D430 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802904D4 0028D434 7C 08 02 A6 */ mflr r0 /* 802904D8 0028D438 90 01 00 14 */ stw r0, 0x14(r1) /* 802904DC 0028D43C 4B F9 B9 51 */ bl ShotAt__12CElitePirateFR13CStateManagerf /* 802904E0 0028D440 80 01 00 14 */ lwz r0, 0x14(r1) /* 802904E4 0028D444 7C 08 03 A6 */ mtlr r0 /* 802904E8 0028D448 38 21 00 10 */ addi r1, r1, 0x10 /* 802904EC 0028D44C 4E 80 00 20 */ blr .global ShouldCallForBackup__12COmegaPirateFR13CStateManagerf ShouldCallForBackup__12COmegaPirateFR13CStateManagerf: /* 802904F0 0028D450 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802904F4 0028D454 7C 08 02 A6 */ mflr r0 /* 802904F8 0028D458 90 01 00 34 */ stw r0, 0x34(r1) /* 802904FC 0028D45C DB E1 00 28 */ stfd f31, 0x28(r1) /* 80290500 0028D460 FF E0 08 90 */ fmr f31, f1 /* 80290504 0028D464 93 E1 00 24 */ stw r31, 0x24(r1) /* 80290508 0028D468 3B E0 00 00 */ li r31, 0 /* 8029050C 0028D46C 93 C1 00 20 */ stw r30, 0x20(r1) /* 80290510 0028D470 7C 9E 23 78 */ mr r30, r4 /* 80290514 0028D474 93 A1 00 1C */ stw r29, 0x1c(r1) /* 80290518 0028D478 7C 7D 1B 78 */ mr r29, r3 /* 8029051C 0028D47C 4B F9 B9 69 */ bl ShouldCallForBackup__12CElitePirateFR13CStateManagerf /* 80290520 0028D480 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80290524 0028D484 41 82 00 2C */ beq lbl_80290550 /* 80290528 0028D488 A0 1D 09 90 */ lhz r0, 0x990(r29) /* 8029052C 0028D48C FC 20 F8 90 */ fmr f1, f31 /* 80290530 0028D490 7F A3 EB 78 */ mr r3, r29 /* 80290534 0028D494 7F C4 F3 78 */ mr r4, r30 /* 80290538 0028D498 B0 01 00 08 */ sth r0, 8(r1) /* 8029053C 0028D49C 38 A1 00 08 */ addi r5, r1, 8 /* 80290540 0028D4A0 4B F9 B8 F9 */ bl sub_8022be38 /* 80290544 0028D4A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80290548 0028D4A8 41 82 00 08 */ beq lbl_80290550 /* 8029054C 0028D4AC 3B E0 00 01 */ li r31, 1 lbl_80290550: /* 80290550 0028D4B0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80290554 0028D4B4 7F E3 FB 78 */ mr r3, r31 /* 80290558 0028D4B8 CB E1 00 28 */ lfd f31, 0x28(r1) /* 8029055C 0028D4BC 83 E1 00 24 */ lwz r31, 0x24(r1) /* 80290560 0028D4C0 83 C1 00 20 */ lwz r30, 0x20(r1) /* 80290564 0028D4C4 83 A1 00 1C */ lwz r29, 0x1c(r1) /* 80290568 0028D4C8 7C 08 03 A6 */ mtlr r0 /* 8029056C 0028D4CC 38 21 00 30 */ addi r1, r1, 0x30 /* 80290570 0028D4D0 4E 80 00 20 */ blr .global ShouldFire__12COmegaPirateFR13CStateManagerf ShouldFire__12COmegaPirateFR13CStateManagerf: /* 80290574 0028D4D4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80290578 0028D4D8 7C 08 02 A6 */ mflr r0 /* 8029057C 0028D4DC 90 01 00 24 */ stw r0, 0x24(r1) /* 80290580 0028D4E0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80290584 0028D4E4 3B E0 00 01 */ li r31, 1 /* 80290588 0028D4E8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8029058C 0028D4EC 7C 9E 23 78 */ mr r30, r4 /* 80290590 0028D4F0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80290594 0028D4F4 7C 7D 1B 78 */ mr r29, r3 /* 80290598 0028D4F8 4B F9 BC ED */ bl ShouldFire__12CElitePirateFR13CStateManagerf /* 8029059C 0028D4FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802905A0 0028D500 40 82 00 28 */ bne lbl_802905C8 /* 802905A4 0028D504 A0 1D 09 90 */ lhz r0, 0x990(r29) /* 802905A8 0028D508 7F A3 EB 78 */ mr r3, r29 /* 802905AC 0028D50C 7F C4 F3 78 */ mr r4, r30 /* 802905B0 0028D510 38 A1 00 08 */ addi r5, r1, 8 /* 802905B4 0028D514 B0 01 00 08 */ sth r0, 8(r1) /* 802905B8 0028D518 4B F9 BA 65 */ bl sub_8022c01c /* 802905BC 0028D51C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802905C0 0028D520 40 82 00 08 */ bne lbl_802905C8 /* 802905C4 0028D524 3B E0 00 00 */ li r31, 0 lbl_802905C8: /* 802905C8 0028D528 80 01 00 24 */ lwz r0, 0x24(r1) /* 802905CC 0028D52C 7F E3 FB 78 */ mr r3, r31 /* 802905D0 0028D530 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802905D4 0028D534 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802905D8 0028D538 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802905DC 0028D53C 7C 08 03 A6 */ mtlr r0 /* 802905E0 0028D540 38 21 00 20 */ addi r1, r1, 0x20 /* 802905E4 0028D544 4E 80 00 20 */ blr .global DoUserAnimEvent__12COmegaPirateFR13CStateManagerRC13CInt32POINode14EUserEventType DoUserAnimEvent__12COmegaPirateFR13CStateManagerRC13CInt32POINode14EUserEventType: /* 802905E8 0028D548 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802905EC 0028D54C 7C 08 02 A6 */ mflr r0 /* 802905F0 0028D550 28 06 00 19 */ cmplwi r6, 0x19 /* 802905F4 0028D554 90 01 00 34 */ stw r0, 0x34(r1) /* 802905F8 0028D558 93 E1 00 2C */ stw r31, 0x2c(r1) /* 802905FC 0028D55C 7C 9F 23 78 */ mr r31, r4 /* 80290600 0028D560 93 C1 00 28 */ stw r30, 0x28(r1) /* 80290604 0028D564 7C 7E 1B 78 */ mr r30, r3 /* 80290608 0028D568 41 81 01 E8 */ bgt lbl_802907F0 /* 8029060C 0028D56C 3C E0 80 3F */ lis r7, lbl_803EB754@ha /* 80290610 0028D570 54 C0 10 3A */ slwi r0, r6, 2 /* 80290614 0028D574 38 E7 B7 54 */ addi r7, r7, lbl_803EB754@l /* 80290618 0028D578 7C 07 00 2E */ lwzx r0, r7, r0 /* 8029061C 0028D57C 7C 09 03 A6 */ mtctr r0 /* 80290620 0028D580 4E 80 04 20 */ bctr .global lbl_80290624 lbl_80290624: /* 80290624 0028D584 4B F9 BD DD */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType /* 80290628 0028D588 48 00 01 D4 */ b lbl_802907FC .global lbl_8029062C lbl_8029062C: /* 8029062C 0028D58C 4B F9 BD D5 */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType /* 80290630 0028D590 48 00 01 CC */ b lbl_802907FC .global lbl_80290634 lbl_80290634: /* 80290634 0028D594 4B F9 BD CD */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType /* 80290638 0028D598 48 00 01 C4 */ b lbl_802907FC .global lbl_8029063C lbl_8029063C: /* 8029063C 0028D59C 4B F9 BD C5 */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType /* 80290640 0028D5A0 48 00 01 BC */ b lbl_802907FC .global lbl_80290644 lbl_80290644: /* 80290644 0028D5A4 4B F9 BD BD */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType /* 80290648 0028D5A8 48 00 01 B4 */ b lbl_802907FC .global lbl_8029064C lbl_8029064C: /* 8029064C 0028D5AC 4B F9 BD B5 */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType /* 80290650 0028D5B0 48 00 01 AC */ b lbl_802907FC .global lbl_80290654 lbl_80290654: /* 80290654 0028D5B4 A0 7E 09 90 */ lhz r3, 0x990(r30) /* 80290658 0028D5B8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8029065C 0028D5BC 7C 03 00 40 */ cmplw r3, r0 /* 80290660 0028D5C0 41 82 01 9C */ beq lbl_802907FC /* 80290664 0028D5C4 A0 1E 09 90 */ lhz r0, 0x990(r30) /* 80290668 0028D5C8 7F E3 FB 78 */ mr r3, r31 /* 8029066C 0028D5CC 38 81 00 10 */ addi r4, r1, 0x10 /* 80290670 0028D5D0 B0 01 00 10 */ sth r0, 0x10(r1) /* 80290674 0028D5D4 4B DB BF 01 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290678 0028D5D8 7C 64 1B 79 */ or. r4, r3, r3 /* 8029067C 0028D5DC 41 82 01 80 */ beq lbl_802907FC /* 80290680 0028D5E0 A0 1E 00 08 */ lhz r0, 8(r30) /* 80290684 0028D5E4 7F E3 FB 78 */ mr r3, r31 /* 80290688 0028D5E8 38 A1 00 0C */ addi r5, r1, 0xc /* 8029068C 0028D5EC 38 C0 00 13 */ li r6, 0x13 /* 80290690 0028D5F0 B0 01 00 08 */ sth r0, 8(r1) /* 80290694 0028D5F4 B0 01 00 0C */ sth r0, 0xc(r1) /* 80290698 0028D5F8 4B DB 38 39 */ bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage /* 8029069C 0028D5FC 48 00 01 60 */ b lbl_802907FC .global lbl_802906A0 lbl_802906A0: /* 802906A0 0028D600 80 1E 09 94 */ lwz r0, 0x994(r30) /* 802906A4 0028D604 2C 00 00 02 */ cmpwi r0, 2 /* 802906A8 0028D608 41 82 01 54 */ beq lbl_802907FC /* 802906AC 0028D60C 88 1E 09 A1 */ lbz r0, 0x9a1(r30) /* 802906B0 0028D610 28 00 00 00 */ cmplwi r0, 0 /* 802906B4 0028D614 41 82 01 48 */ beq lbl_802907FC /* 802906B8 0028D618 38 60 00 01 */ li r3, 1 /* 802906BC 0028D61C 38 00 00 03 */ li r0, 3 /* 802906C0 0028D620 90 7E 09 94 */ stw r3, 0x994(r30) /* 802906C4 0028D624 90 1E 0A 30 */ stw r0, 0xa30(r30) /* 802906C8 0028D628 48 00 01 34 */ b lbl_802907FC .global lbl_802906CC lbl_802906CC: /* 802906CC 0028D62C 38 00 00 01 */ li r0, 1 /* 802906D0 0028D630 98 1E 09 A1 */ stb r0, 0x9a1(r30) /* 802906D4 0028D634 48 00 01 28 */ b lbl_802907FC .global lbl_802906D8 lbl_802906D8: /* 802906D8 0028D638 80 1E 0A B8 */ lwz r0, 0xab8(r30) /* 802906DC 0028D63C 80 7E 0A C0 */ lwz r3, 0xac0(r30) /* 802906E0 0028D640 54 00 10 3A */ slwi r0, r0, 2 /* 802906E4 0028D644 7C 03 02 14 */ add r0, r3, r0 /* 802906E8 0028D648 90 61 00 18 */ stw r3, 0x18(r1) /* 802906EC 0028D64C 90 01 00 20 */ stw r0, 0x20(r1) /* 802906F0 0028D650 90 01 00 1C */ stw r0, 0x1c(r1) /* 802906F4 0028D654 90 61 00 14 */ stw r3, 0x14(r1) /* 802906F8 0028D658 48 00 00 08 */ b lbl_80290700 lbl_802906FC: /* 802906FC 0028D65C 38 63 00 04 */ addi r3, r3, 4 lbl_80290700: /* 80290700 0028D660 7C 03 00 40 */ cmplw r3, r0 /* 80290704 0028D664 40 82 FF F8 */ bne lbl_802906FC /* 80290708 0028D668 38 00 00 00 */ li r0, 0 /* 8029070C 0028D66C 90 1E 0A B8 */ stw r0, 0xab8(r30) /* 80290710 0028D670 90 1E 0A C8 */ stw r0, 0xac8(r30) /* 80290714 0028D674 80 7E 0A CC */ lwz r3, 0xacc(r30) /* 80290718 0028D678 38 03 00 01 */ addi r0, r3, 1 /* 8029071C 0028D67C 90 1E 0A CC */ stw r0, 0xacc(r30) /* 80290720 0028D680 80 1E 0A C4 */ lwz r0, 0xac4(r30) /* 80290724 0028D684 2C 00 00 02 */ cmpwi r0, 2 /* 80290728 0028D688 41 82 00 5C */ beq lbl_80290784 /* 8029072C 0028D68C 40 80 00 14 */ bge lbl_80290740 /* 80290730 0028D690 2C 00 00 00 */ cmpwi r0, 0 /* 80290734 0028D694 41 82 00 18 */ beq lbl_8029074C /* 80290738 0028D698 40 80 00 28 */ bge lbl_80290760 /* 8029073C 0028D69C 48 00 00 9C */ b lbl_802907D8 lbl_80290740: /* 80290740 0028D6A0 2C 00 00 04 */ cmpwi r0, 4 /* 80290744 0028D6A4 40 80 00 94 */ bge lbl_802907D8 /* 80290748 0028D6A8 48 00 00 60 */ b lbl_802907A8 lbl_8029074C: /* 8029074C 0028D6AC 7F C3 F3 78 */ mr r3, r30 /* 80290750 0028D6B0 7F E5 FB 78 */ mr r5, r31 /* 80290754 0028D6B4 38 80 00 02 */ li r4, 2 /* 80290758 0028D6B8 4B FF C4 95 */ bl sub_8028cbec /* 8029075C 0028D6BC 48 00 00 7C */ b lbl_802907D8 lbl_80290760: /* 80290760 0028D6C0 7F C3 F3 78 */ mr r3, r30 /* 80290764 0028D6C4 7F E5 FB 78 */ mr r5, r31 /* 80290768 0028D6C8 38 80 00 01 */ li r4, 1 /* 8029076C 0028D6CC 4B FF C4 81 */ bl sub_8028cbec /* 80290770 0028D6D0 7F C3 F3 78 */ mr r3, r30 /* 80290774 0028D6D4 7F E5 FB 78 */ mr r5, r31 /* 80290778 0028D6D8 38 80 00 01 */ li r4, 1 /* 8029077C 0028D6DC 4B FF C4 71 */ bl sub_8028cbec /* 80290780 0028D6E0 48 00 00 58 */ b lbl_802907D8 lbl_80290784: /* 80290784 0028D6E4 7F C3 F3 78 */ mr r3, r30 /* 80290788 0028D6E8 7F E5 FB 78 */ mr r5, r31 /* 8029078C 0028D6EC 38 80 00 02 */ li r4, 2 /* 80290790 0028D6F0 4B FF C4 5D */ bl sub_8028cbec /* 80290794 0028D6F4 7F C3 F3 78 */ mr r3, r30 /* 80290798 0028D6F8 7F E5 FB 78 */ mr r5, r31 /* 8029079C 0028D6FC 38 80 00 01 */ li r4, 1 /* 802907A0 0028D700 4B FF C4 4D */ bl sub_8028cbec /* 802907A4 0028D704 48 00 00 34 */ b lbl_802907D8 lbl_802907A8: /* 802907A8 0028D708 7F C3 F3 78 */ mr r3, r30 /* 802907AC 0028D70C 7F E5 FB 78 */ mr r5, r31 /* 802907B0 0028D710 38 80 00 01 */ li r4, 1 /* 802907B4 0028D714 4B FF C4 39 */ bl sub_8028cbec /* 802907B8 0028D718 7F C3 F3 78 */ mr r3, r30 /* 802907BC 0028D71C 7F E5 FB 78 */ mr r5, r31 /* 802907C0 0028D720 38 80 00 01 */ li r4, 1 /* 802907C4 0028D724 4B FF C4 29 */ bl sub_8028cbec /* 802907C8 0028D728 7F C3 F3 78 */ mr r3, r30 /* 802907CC 0028D72C 7F E5 FB 78 */ mr r5, r31 /* 802907D0 0028D730 38 80 00 01 */ li r4, 1 /* 802907D4 0028D734 4B FF C4 19 */ bl sub_8028cbec lbl_802907D8: /* 802907D8 0028D738 7F C3 F3 78 */ mr r3, r30 /* 802907DC 0028D73C 7F E5 FB 78 */ mr r5, r31 /* 802907E0 0028D740 38 80 00 01 */ li r4, 1 /* 802907E4 0028D744 38 C0 FF FF */ li r6, -1 /* 802907E8 0028D748 4B DC 08 D9 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage /* 802907EC 0028D74C 48 00 00 10 */ b lbl_802907FC .global lbl_802907F0 lbl_802907F0: /* 802907F0 0028D750 7F C3 F3 78 */ mr r3, r30 /* 802907F4 0028D754 7F E4 FB 78 */ mr r4, r31 /* 802907F8 0028D758 4B F9 BC 09 */ bl DoUserAnimEvent__12CElitePirateFR13CStateManagerRC13CInt32POINode14EUserEventType lbl_802907FC: /* 802907FC 0028D75C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80290800 0028D760 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80290804 0028D764 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80290808 0028D768 7C 08 03 A6 */ mtlr r0 /* 8029080C 0028D76C 38 21 00 30 */ addi r1, r1, 0x30 /* 80290810 0028D770 4E 80 00 20 */ blr .global GetOrbitPosition__12COmegaPirateCFRC13CStateManager GetOrbitPosition__12COmegaPirateCFRC13CStateManager: /* 80290814 0028D774 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80290818 0028D778 7C 08 02 A6 */ mflr r0 /* 8029081C 0028D77C 90 01 00 24 */ stw r0, 0x24(r1) /* 80290820 0028D780 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80290824 0028D784 7C BF 2B 78 */ mr r31, r5 /* 80290828 0028D788 93 C1 00 18 */ stw r30, 0x18(r1) /* 8029082C 0028D78C 7C 9E 23 78 */ mr r30, r4 /* 80290830 0028D790 93 A1 00 14 */ stw r29, 0x14(r1) /* 80290834 0028D794 7C 7D 1B 78 */ mr r29, r3 /* 80290838 0028D798 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8029083C 0028D79C A0 84 09 90 */ lhz r4, 0x990(r4) /* 80290840 0028D7A0 7C 04 00 40 */ cmplw r4, r0 /* 80290844 0028D7A4 41 82 00 40 */ beq lbl_80290884 /* 80290848 0028D7A8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 8029084C 0028D7AC 80 63 00 00 */ lwz r3, 0(r3) /* 80290850 0028D7B0 80 03 00 14 */ lwz r0, 0x14(r3) /* 80290854 0028D7B4 2C 00 00 03 */ cmpwi r0, 3 /* 80290858 0028D7B8 40 82 00 2C */ bne lbl_80290884 /* 8029085C 0028D7BC B0 81 00 08 */ sth r4, 8(r1) /* 80290860 0028D7C0 7F E3 FB 78 */ mr r3, r31 /* 80290864 0028D7C4 38 81 00 08 */ addi r4, r1, 8 /* 80290868 0028D7C8 4B DB BD 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 8029086C 0028D7CC 7C 65 1B 79 */ or. r5, r3, r3 /* 80290870 0028D7D0 41 82 00 14 */ beq lbl_80290884 /* 80290874 0028D7D4 7F A3 EB 78 */ mr r3, r29 /* 80290878 0028D7D8 7F C4 F3 78 */ mr r4, r30 /* 8029087C 0028D7DC 4B F9 7F E9 */ bl sub_80228864 /* 80290880 0028D7E0 48 00 00 14 */ b lbl_80290894 lbl_80290884: /* 80290884 0028D7E4 7F A3 EB 78 */ mr r3, r29 /* 80290888 0028D7E8 7F C4 F3 78 */ mr r4, r30 /* 8029088C 0028D7EC 7F E5 FB 78 */ mr r5, r31 /* 80290890 0028D7F0 4B F9 BF 81 */ bl GetOrbitPosition__12CElitePirateCFRC13CStateManager lbl_80290894: /* 80290894 0028D7F4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80290898 0028D7F8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8029089C 0028D7FC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802908A0 0028D800 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802908A4 0028D804 7C 08 03 A6 */ mtlr r0 /* 802908A8 0028D808 38 21 00 20 */ addi r1, r1, 0x20 /* 802908AC 0028D80C 4E 80 00 20 */ blr .if version >= 1 .global AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 8029092C 0028D88C 94 21 FD 90 */ stwu r1, -0x270(r1) /* 80290930 0028D890 7C 08 02 A6 */ mflr r0 /* 80290934 0028D894 90 01 02 74 */ stw r0, 0x274(r1) /* 80290938 0028D898 BE 41 02 38 */ stmw r18, 0x238(r1) /* 8029093C 0028D89C 7C 95 23 78 */ mr r21, r4 /* 80290940 0028D8A0 28 15 00 2A */ cmplwi r21, 0x2a /* 80290944 0028D8A4 7C 7F 1B 78 */ mr r31, r3 /* 80290948 0028D8A8 7C B4 2B 78 */ mr r20, r5 /* 8029094C 0028D8AC 7C DE 33 78 */ mr r30, r6 /* 80290950 0028D8B0 41 81 0E A0 */ bgt AcceptScriptMsg_Default /* 80290954 0028D8B4 3C A0 80 3F */ lis r5, AcceptScriptMsg_jumptable@ha /* 80290958 0028D8B8 56 A0 10 3A */ slwi r0, r21, 2 /* 8029095C 0028D8BC 38 A5 B9 9C */ addi r5, r5, AcceptScriptMsg_jumptable@l /* 80290960 0028D8C0 7C 05 00 2E */ lwzx r0, r5, r0 /* 80290964 0028D8C4 7C 09 03 A6 */ mtctr r0 /* 80290968 0028D8C8 4E 80 04 20 */ bctr AcceptScriptMsg_Registered: /* 8029096C 0028D8CC A0 14 00 00 */ lhz r0, 0x0(r20) /* 80290970 0028D8D0 38 A1 00 9C */ addi r5, r1, 0x9c /* 80290974 0028D8D4 B0 01 00 9C */ sth r0, 0x9c(r1) /* 80290978 0028D8D8 4B F9 C2 D1 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 8029097C 0028D8DC 7F C4 F3 78 */ mr r4, r30 /* 80290980 0028D8E0 38 61 00 98 */ addi r3, r1, 0x98 /* 80290984 0028D8E4 4B DB C7 D5 */ bl AllocateUniqueId__13CStateManagerFv /* 80290988 0028D8E8 A0 01 00 98 */ lhz r0, 0x98(r1) /* 8029098C 0028D8EC 7F E3 FB 78 */ mr r3, r31 /* 80290990 0028D8F0 7F C4 F3 78 */ mr r4, r30 /* 80290994 0028D8F4 38 A1 00 94 */ addi r5, r1, 0x94 /* 80290998 0028D8F8 B0 1F 09 90 */ sth r0, 0x990(r31) /* 8029099C 0028D8FC A0 1F 09 90 */ lhz r0, 0x990(r31) /* 802909A0 0028D900 B0 01 00 94 */ sth r0, 0x94(r1) /* 802909A4 0028D904 4B F9 81 85 */ bl sub_80228aac /* 802909A8 0028D908 7F E3 FB 78 */ mr r3, r31 /* 802909AC 0028D90C 7F C4 F3 78 */ mr r4, r30 /* 802909B0 0028D910 4B FF CB 2D */ bl sub_8028d460 /* 802909B4 0028D914 80 7F 04 50 */ lwz r3, 0x450(r31) /* 802909B8 0028D918 38 80 00 08 */ li r4, 0x8 /* 802909BC 0028D91C 4B EA A0 99 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType /* 802909C0 0028D920 88 1F 04 02 */ lbz r0, 0x402(r31) /* 802909C4 0028D924 38 60 00 00 */ li r3, 0x0 /* 802909C8 0028D928 50 60 26 F6 */ rlwimi r0, r3, 4, 27, 27 /* 802909CC 0028D92C 38 7F 0A 4C */ addi r3, r31, 0xa4c /* 802909D0 0028D930 98 1F 04 02 */ stb r0, 0x402(r31) /* 802909D4 0028D934 38 9F 00 34 */ addi r4, r31, 0x34 /* 802909D8 0028D938 48 08 22 49 */ bl __as__12CTransform4fFRC12CTransform4f /* 802909DC 0028D93C 7F E3 FB 78 */ mr r3, r31 /* 802909E0 0028D940 7F C4 F3 78 */ mr r4, r30 /* 802909E4 0028D944 81 9F 00 00 */ lwz r12, 0x0(r31) /* 802909E8 0028D948 81 8C 00 34 */ lwz r12, 0x34(r12) /* 802909EC 0028D94C 7D 89 03 A6 */ mtctr r12 /* 802909F0 0028D950 4E 80 04 21 */ bctrl /* 802909F4 0028D954 C0 03 00 00 */ lfs f0, 0x0(r3) /* 802909F8 0028D958 7F C3 F3 78 */ mr r3, r30 /* 802909FC 0028D95C 38 81 00 90 */ addi r4, r1, 0x90 /* 80290A00 0028D960 D0 1F 0A 98 */ stfs f0, 0xa98(r31) /* 80290A04 0028D964 A0 1F 07 72 */ lhz r0, 0x772(r31) /* 80290A08 0028D968 B0 01 00 8C */ sth r0, 0x8c(r1) /* 80290A0C 0028D96C B0 01 00 90 */ sth r0, 0x90(r1) /* 80290A10 0028D970 4B DB BB E1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290A14 0028D974 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290A18 0028D978 7C 72 1B 78 */ mr r18, r3 /* 80290A1C 0028D97C 7F C3 F3 78 */ mr r3, r30 /* 80290A20 0028D980 38 81 00 88 */ addi r4, r1, 0x88 /* 80290A24 0028D984 B0 01 00 88 */ sth r0, 0x88(r1) /* 80290A28 0028D988 4B DB BB C9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290A2C 0028D98C 28 12 00 00 */ cmplwi r18, 0x0 /* 80290A30 0028D990 7C 73 1B 78 */ mr r19, r3 /* 80290A34 0028D994 41 82 00 14 */ beq lbl_80290A48 /* 80290A38 0028D998 7E 43 93 78 */ mr r3, r18 /* 80290A3C 0028D99C 7F C5 F3 78 */ mr r5, r30 /* 80290A40 0028D9A0 38 80 00 27 */ li r4, 0x27 /* 80290A44 0028D9A4 4B DC 35 B9 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_80290A48: /* 80290A48 0028D9A8 28 13 00 00 */ cmplwi r19, 0x0 /* 80290A4C 0028D9AC 41 82 00 14 */ beq lbl_80290A60 /* 80290A50 0028D9B0 7E 63 9B 78 */ mr r3, r19 /* 80290A54 0028D9B4 7F C5 F3 78 */ mr r5, r30 /* 80290A58 0028D9B8 38 80 00 27 */ li r4, 0x27 /* 80290A5C 0028D9BC 4B DC 35 A1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_80290A60: /* 80290A60 0028D9C0 38 7F 04 60 */ addi r3, r31, 0x460 /* 80290A64 0028D9C4 38 80 00 00 */ li r4, 0x0 /* 80290A68 0028D9C8 4B FA 33 79 */ bl SetAutoResetImpulse__20CKnockBackControllerFb /* 80290A6C 0028D9CC 7F E3 FB 78 */ mr r3, r31 /* 80290A70 0028D9D0 4B F9 88 55 */ bl sub_80229248 /* 80290A74 0028D9D4 48 00 0D 98 */ b lbl_8029180C AcceptScriptMsg_Activate: /* 80290A78 0028D9D8 A0 14 00 00 */ lhz r0, 0x0(r20) /* 80290A7C 0028D9DC 38 A1 00 84 */ addi r5, r1, 0x84 /* 80290A80 0028D9E0 B0 01 00 84 */ sth r0, 0x84(r1) /* 80290A84 0028D9E4 4B F9 C1 C5 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290A88 0028D9E8 80 7F 0A 38 */ lwz r3, 0xa38(r31) /* 80290A8C 0028D9EC 7F C4 F3 78 */ mr r4, r30 /* 80290A90 0028D9F0 38 A0 00 01 */ li r5, 0x1 /* 80290A94 0028D9F4 4B F1 68 E1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290A98 0028D9F8 80 7F 0A 9C */ lwz r3, 0xa9c(r31) /* 80290A9C 0028D9FC 7F C4 F3 78 */ mr r4, r30 /* 80290AA0 0028DA00 38 A0 00 01 */ li r5, 0x1 /* 80290AA4 0028DA04 4B F1 68 D1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290AA8 0028DA08 38 7F 04 60 */ addi r3, r31, 0x460 /* 80290AAC 0028DA0C 38 80 00 00 */ li r4, 0x0 /* 80290AB0 0028DA10 4B FA 33 31 */ bl SetAutoResetImpulse__20CKnockBackControllerFb /* 80290AB4 0028DA14 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290AB8 0028DA18 7F C3 F3 78 */ mr r3, r30 /* 80290ABC 0028DA1C 38 81 00 80 */ addi r4, r1, 0x80 /* 80290AC0 0028DA20 B0 01 00 80 */ sth r0, 0x80(r1) /* 80290AC4 0028DA24 4B DB BB 2D */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290AC8 0028DA28 28 03 00 00 */ cmplwi r3, 0x0 /* 80290ACC 0028DA2C 41 82 0D 40 */ beq lbl_8029180C /* 80290AD0 0028DA30 81 83 00 00 */ lwz r12, 0x0(r3) /* 80290AD4 0028DA34 38 80 00 01 */ li r4, 0x1 /* 80290AD8 0028DA38 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80290ADC 0028DA3C 7D 89 03 A6 */ mtctr r12 /* 80290AE0 0028DA40 4E 80 04 21 */ bctrl /* 80290AE4 0028DA44 48 00 0D 28 */ b lbl_8029180C AcceptScriptMsg_Deactivate: /* 80290AE8 0028DA48 A0 14 00 00 */ lhz r0, 0x0(r20) /* 80290AEC 0028DA4C 38 A1 00 7C */ addi r5, r1, 0x7c /* 80290AF0 0028DA50 B0 01 00 7C */ sth r0, 0x7c(r1) /* 80290AF4 0028DA54 4B F9 C1 55 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290AF8 0028DA58 80 7F 0A 38 */ lwz r3, 0xa38(r31) /* 80290AFC 0028DA5C 7F C4 F3 78 */ mr r4, r30 /* 80290B00 0028DA60 38 A0 00 00 */ li r5, 0x0 /* 80290B04 0028DA64 4B F1 68 71 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290B08 0028DA68 80 7F 0A 9C */ lwz r3, 0xa9c(r31) /* 80290B0C 0028DA6C 7F C4 F3 78 */ mr r4, r30 /* 80290B10 0028DA70 38 A0 00 00 */ li r5, 0x0 /* 80290B14 0028DA74 4B F1 68 61 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290B18 0028DA78 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290B1C 0028DA7C 7F C3 F3 78 */ mr r3, r30 /* 80290B20 0028DA80 38 81 00 78 */ addi r4, r1, 0x78 /* 80290B24 0028DA84 B0 01 00 78 */ sth r0, 0x78(r1) /* 80290B28 0028DA88 4B DB BA C9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290B2C 0028DA8C 28 03 00 00 */ cmplwi r3, 0x0 /* 80290B30 0028DA90 41 82 0C DC */ beq lbl_8029180C /* 80290B34 0028DA94 81 83 00 00 */ lwz r12, 0x0(r3) /* 80290B38 0028DA98 38 80 00 00 */ li r4, 0x0 /* 80290B3C 0028DA9C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80290B40 0028DAA0 7D 89 03 A6 */ mtctr r12 /* 80290B44 0028DAA4 4E 80 04 21 */ bctrl /* 80290B48 0028DAA8 48 00 0C C4 */ b lbl_8029180C AcceptScriptMsg_Deleted: /* 80290B4C 0028DAAC A0 14 00 00 */ lhz r0, 0x0(r20) /* 80290B50 0028DAB0 38 A1 00 74 */ addi r5, r1, 0x74 /* 80290B54 0028DAB4 B0 01 00 74 */ sth r0, 0x74(r1) /* 80290B58 0028DAB8 4B F9 C0 F1 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290B5C 0028DABC 80 7F 0A 38 */ lwz r3, 0xa38(r31) /* 80290B60 0028DAC0 7F C4 F3 78 */ mr r4, r30 /* 80290B64 0028DAC4 4B F1 68 DD */ bl Destroy__22CCollisionActorManagerCFR13CStateManager /* 80290B68 0028DAC8 80 7F 0A 9C */ lwz r3, 0xa9c(r31) /* 80290B6C 0028DACC 7F C4 F3 78 */ mr r4, r30 /* 80290B70 0028DAD0 4B F1 68 D1 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager /* 80290B74 0028DAD4 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290B78 0028DAD8 7F C3 F3 78 */ mr r3, r30 /* 80290B7C 0028DADC 38 81 00 70 */ addi r4, r1, 0x70 /* 80290B80 0028DAE0 B0 01 00 70 */ sth r0, 0x70(r1) /* 80290B84 0028DAE4 4B DB B7 65 */ bl FreeScriptObject__13CStateManagerF9TUniqueId /* 80290B88 0028DAE8 48 00 0C 84 */ b lbl_8029180C AcceptScriptMsg_Alert: /* 80290B8C 0028DAEC A0 14 00 00 */ lhz r0, 0x0(r20) /* 80290B90 0028DAF0 38 A1 00 6C */ addi r5, r1, 0x6c /* 80290B94 0028DAF4 B0 01 00 6C */ sth r0, 0x6c(r1) /* 80290B98 0028DAF8 4B F9 C0 B1 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290B9C 0028DAFC 48 00 0C 70 */ b lbl_8029180C AcceptScriptMsg_InitializedInArea: /* 80290BA0 0028DB00 A0 14 00 00 */ lhz r0, 0x0(r20) /* 80290BA4 0028DB04 38 A1 00 68 */ addi r5, r1, 0x68 /* 80290BA8 0028DB08 B0 01 00 68 */ sth r0, 0x68(r1) /* 80290BAC 0028DB0C 4B F9 C0 9D */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290BB0 0028DB10 83 1F 00 24 */ lwz r24, 0x24(r31) /* 80290BB4 0028DB14 3B 21 02 20 */ addi r25, r1, 0x220 /* 80290BB8 0028DB18 3B 41 02 0C */ addi r26, r1, 0x20c /* 80290BBC 0028DB1C 3B 61 01 DC */ addi r27, r1, 0x1dc /* 80290BC0 0028DB20 3A E1 01 C8 */ addi r23, r1, 0x1c8 /* 80290BC4 0028DB24 3B A0 00 00 */ li r29, 0x0 /* 80290BC8 0028DB28 3B 80 00 00 */ li r28, 0x0 /* 80290BCC 0028DB2C 48 00 06 80 */ b lbl_8029124C lbl_80290BD0: /* 80290BD0 0028DB30 80 1F 00 2C */ lwz r0, 0x2c(r31) /* 80290BD4 0028DB34 7F C4 F3 78 */ mr r4, r30 /* 80290BD8 0028DB38 38 61 00 64 */ addi r3, r1, 0x64 /* 80290BDC 0028DB3C 38 A1 00 D0 */ addi r5, r1, 0xd0 /* 80290BE0 0028DB40 7E 60 E2 14 */ add r19, r0, r28 /* 80290BE4 0028DB44 80 13 00 08 */ lwz r0, 0x8(r19) /* 80290BE8 0028DB48 90 01 00 D0 */ stw r0, 0xd0(r1) /* 80290BEC 0028DB4C 4B DB 73 AD */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 80290BF0 0028DB50 80 13 00 00 */ lwz r0, 0x0(r19) /* 80290BF4 0028DB54 A0 81 00 64 */ lhz r4, 0x64(r1) /* 80290BF8 0028DB58 2C 00 00 0A */ cmpwi r0, 0xa /* 80290BFC 0028DB5C B0 81 00 A8 */ sth r4, 0xa8(r1) /* 80290C00 0028DB60 40 82 06 44 */ bne lbl_80291244 /* 80290C04 0028DB64 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80290C08 0028DB68 54 83 04 3E */ clrlwi r3, r4, 16 /* 80290C0C 0028DB6C 7C 03 00 40 */ cmplw r3, r0 /* 80290C10 0028DB70 41 82 06 34 */ beq lbl_80291244 /* 80290C14 0028DB74 80 13 00 04 */ lwz r0, 0x4(r19) /* 80290C18 0028DB78 2C 00 00 01 */ cmpwi r0, 0x1 /* 80290C1C 0028DB7C 40 82 03 D0 */ bne lbl_80290FEC /* 80290C20 0028DB80 B0 81 00 60 */ sth r4, 0x60(r1) /* 80290C24 0028DB84 7F C3 F3 78 */ mr r3, r30 /* 80290C28 0028DB88 38 81 00 60 */ addi r4, r1, 0x60 /* 80290C2C 0028DB8C 4B DB B9 C5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290C30 0028DB90 7C 64 1B 78 */ mr r4, r3 /* 80290C34 0028DB94 38 61 01 14 */ addi r3, r1, 0x114 /* 80290C38 0028DB98 4B E1 92 21 */ bl "__ct__27TCastToPtr<13CScriptEffect>FP7CEntity" /* 80290C3C 0028DB9C 80 83 00 04 */ lwz r4, 0x4(r3) /* 80290C40 0028DBA0 28 04 00 00 */ cmplwi r4, 0x0 /* 80290C44 0028DBA4 41 82 00 88 */ beq lbl_80290CCC /* 80290C48 0028DBA8 A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290C4C 0028DBAC 7F 23 CB 78 */ mr r3, r25 /* 80290C50 0028DBB0 38 84 00 10 */ addi r4, r4, 0x10 /* 80290C54 0028DBB4 B0 01 02 1C */ sth r0, 0x21c(r1) /* 80290C58 0028DBB8 48 0A D5 E9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290C5C 0028DBBC 80 1F 09 BC */ lwz r0, 0x9bc(r31) /* 80290C60 0028DBC0 80 BF 09 C0 */ lwz r5, 0x9c0(r31) /* 80290C64 0028DBC4 7C 00 28 00 */ cmpw r0, r5 /* 80290C68 0028DBC8 41 80 00 1C */ blt lbl_80290C84 /* 80290C6C 0028DBCC 2C 05 00 00 */ cmpwi r5, 0x0 /* 80290C70 0028DBD0 38 7F 09 B8 */ addi r3, r31, 0x9b8 /* 80290C74 0028DBD4 38 80 00 04 */ li r4, 0x4 /* 80290C78 0028DBD8 41 82 00 08 */ beq lbl_80290C80 /* 80290C7C 0028DBDC 54 A4 08 3C */ slwi r4, r5, 1 lbl_80290C80: /* 80290C80 0028DBE0 48 00 18 15 */ bl sub_802923e8 lbl_80290C84: /* 80290C84 0028DBE4 80 1F 09 BC */ lwz r0, 0x9bc(r31) /* 80290C88 0028DBE8 80 7F 09 C4 */ lwz r3, 0x9c4(r31) /* 80290C8C 0028DBEC 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80290C90 0028DBF0 7C A3 02 15 */ add. r5, r3, r0 /* 80290C94 0028DBF4 41 82 00 18 */ beq lbl_80290CAC /* 80290C98 0028DBF8 A0 01 02 1C */ lhz r0, 0x21c(r1) /* 80290C9C 0028DBFC 7F 24 CB 78 */ mr r4, r25 /* 80290CA0 0028DC00 38 65 00 04 */ addi r3, r5, 0x4 /* 80290CA4 0028DC04 B0 05 00 00 */ sth r0, 0x0(r5) /* 80290CA8 0028DC08 48 0A D5 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80290CAC: /* 80290CAC 0028DC0C 80 7F 09 BC */ lwz r3, 0x9bc(r31) /* 80290CB0 0028DC10 28 19 00 00 */ cmplwi r25, 0x0 /* 80290CB4 0028DC14 38 03 00 01 */ addi r0, r3, 0x1 /* 80290CB8 0028DC18 90 1F 09 BC */ stw r0, 0x9bc(r31) /* 80290CBC 0028DC1C 41 82 05 88 */ beq lbl_80291244 /* 80290CC0 0028DC20 7F 23 CB 78 */ mr r3, r25 /* 80290CC4 0028DC24 48 0A CE FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80290CC8 0028DC28 48 00 05 7C */ b lbl_80291244 lbl_80290CCC: /* 80290CCC 0028DC2C A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290CD0 0028DC30 7F C3 F3 78 */ mr r3, r30 /* 80290CD4 0028DC34 38 81 00 5C */ addi r4, r1, 0x5c /* 80290CD8 0028DC38 B0 01 00 5C */ sth r0, 0x5c(r1) /* 80290CDC 0028DC3C 4B DB B9 15 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290CE0 0028DC40 7C 64 1B 78 */ mr r4, r3 /* 80290CE4 0028DC44 38 61 01 0C */ addi r3, r1, 0x10c /* 80290CE8 0028DC48 4B E1 81 A9 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" /* 80290CEC 0028DC4C 82 C3 00 04 */ lwz r22, 0x4(r3) /* 80290CF0 0028DC50 28 16 00 00 */ cmplwi r22, 0x0 /* 80290CF4 0028DC54 41 82 02 48 */ beq lbl_80290F3C /* 80290CF8 0028DC58 A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290CFC 0028DC5C 7F 43 D3 78 */ mr r3, r26 /* 80290D00 0028DC60 38 96 00 10 */ addi r4, r22, 0x10 /* 80290D04 0028DC64 B0 01 02 08 */ sth r0, 0x208(r1) /* 80290D08 0028DC68 48 0A D5 39 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290D0C 0028DC6C 80 1F 09 E0 */ lwz r0, 0x9e0(r31) /* 80290D10 0028DC70 80 BF 09 E4 */ lwz r5, 0x9e4(r31) /* 80290D14 0028DC74 7C 00 28 00 */ cmpw r0, r5 /* 80290D18 0028DC78 41 80 00 1C */ blt lbl_80290D34 /* 80290D1C 0028DC7C 2C 05 00 00 */ cmpwi r5, 0x0 /* 80290D20 0028DC80 38 7F 09 DC */ addi r3, r31, 0x9dc /* 80290D24 0028DC84 38 80 00 04 */ li r4, 0x4 /* 80290D28 0028DC88 41 82 00 08 */ beq lbl_80290D30 /* 80290D2C 0028DC8C 54 A4 08 3C */ slwi r4, r5, 1 lbl_80290D30: /* 80290D30 0028DC90 48 00 17 65 */ bl sub_802923e8 lbl_80290D34: /* 80290D34 0028DC94 80 1F 09 E0 */ lwz r0, 0x9e0(r31) /* 80290D38 0028DC98 80 7F 09 E8 */ lwz r3, 0x9e8(r31) /* 80290D3C 0028DC9C 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80290D40 0028DCA0 7C A3 02 15 */ add. r5, r3, r0 /* 80290D44 0028DCA4 41 82 00 18 */ beq lbl_80290D5C /* 80290D48 0028DCA8 A0 01 02 08 */ lhz r0, 0x208(r1) /* 80290D4C 0028DCAC 7F 44 D3 78 */ mr r4, r26 /* 80290D50 0028DCB0 38 65 00 04 */ addi r3, r5, 0x4 /* 80290D54 0028DCB4 B0 05 00 00 */ sth r0, 0x0(r5) /* 80290D58 0028DCB8 48 0A D4 E9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80290D5C: /* 80290D5C 0028DCBC 80 7F 09 E0 */ lwz r3, 0x9e0(r31) /* 80290D60 0028DCC0 28 1A 00 00 */ cmplwi r26, 0x0 /* 80290D64 0028DCC4 38 03 00 01 */ addi r0, r3, 0x1 /* 80290D68 0028DCC8 90 1F 09 E0 */ stw r0, 0x9e0(r31) /* 80290D6C 0028DCCC 41 82 00 0C */ beq lbl_80290D78 /* 80290D70 0028DCD0 7F 43 D3 78 */ mr r3, r26 /* 80290D74 0028DCD4 48 0A CE 4D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80290D78: /* 80290D78 0028DCD8 7E C3 B3 78 */ mr r3, r22 /* 80290D7C 0028DCDC 7F C5 F3 78 */ mr r5, r30 /* 80290D80 0028DCE0 38 80 00 28 */ li r4, 0x28 /* 80290D84 0028DCE4 4B DC 36 49 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290D88 0028DCE8 7E C3 B3 78 */ mr r3, r22 /* 80290D8C 0028DCEC 7F C5 F3 78 */ mr r5, r30 /* 80290D90 0028DCF0 38 80 00 29 */ li r4, 0x29 /* 80290D94 0028DCF4 4B DC 36 39 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290D98 0028DCF8 7E C3 B3 78 */ mr r3, r22 /* 80290D9C 0028DCFC 7F C5 F3 78 */ mr r5, r30 /* 80290DA0 0028DD00 38 80 00 21 */ li r4, 0x21 /* 80290DA4 0028DD04 4B DC 36 29 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290DA8 0028DD08 7E C3 B3 78 */ mr r3, r22 /* 80290DAC 0028DD0C 7F C5 F3 78 */ mr r5, r30 /* 80290DB0 0028DD10 38 80 00 27 */ li r4, 0x27 /* 80290DB4 0028DD14 4B DC 32 49 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290DB8 0028DD18 7E C3 B3 78 */ mr r3, r22 /* 80290DBC 0028DD1C 4B DC 2B 7D */ bl GetMaterialFilter__6CActorCFv /* 80290DC0 0028DD20 80 AD 99 8C */ lwz r5, lbl_805A854C@sda21(r13) /* 80290DC4 0028DD24 38 80 00 01 */ li r4, 0x1 /* 80290DC8 0028DD28 82 A3 00 08 */ lwz r21, 0x8(r3) /* 80290DCC 0028DD2C 82 83 00 0C */ lwz r20, 0xc(r3) /* 80290DD0 0028DD30 38 60 00 00 */ li r3, 0x0 /* 80290DD4 0028DD34 48 0F 92 FD */ bl __shl2i /* 80290DD8 0028DD38 80 AD 99 90 */ lwz r5, lbl_805A8550@sda21(r13) /* 80290DDC 0028DD3C 7C 93 23 78 */ mr r19, r4 /* 80290DE0 0028DD40 7C 72 1B 78 */ mr r18, r3 /* 80290DE4 0028DD44 38 60 00 00 */ li r3, 0x0 /* 80290DE8 0028DD48 38 80 00 01 */ li r4, 0x1 /* 80290DEC 0028DD4C 48 0F 92 E5 */ bl __shl2i /* 80290DF0 0028DD50 80 AD 99 94 */ lwz r5, lbl_805A8554@sda21(r13) /* 80290DF4 0028DD54 7E 73 23 78 */ or r19, r19, r4 /* 80290DF8 0028DD58 7E 52 1B 78 */ or r18, r18, r3 /* 80290DFC 0028DD5C 38 60 00 00 */ li r3, 0x0 /* 80290E00 0028DD60 38 80 00 01 */ li r4, 0x1 /* 80290E04 0028DD64 48 0F 92 CD */ bl __shl2i /* 80290E08 0028DD68 7E 52 1B 78 */ or r18, r18, r3 /* 80290E0C 0028DD6C 7E 73 23 78 */ or r19, r19, r4 /* 80290E10 0028DD70 7F E3 FB 78 */ mr r3, r31 /* 80290E14 0028DD74 7E 94 9B 78 */ or r20, r20, r19 /* 80290E18 0028DD78 7E B5 93 78 */ or r21, r21, r18 /* 80290E1C 0028DD7C 4B DC 2B 1D */ bl GetMaterialFilter__6CActorCFv /* 80290E20 0028DD80 80 A3 00 00 */ lwz r5, 0x0(r3) /* 80290E24 0028DD84 38 00 00 03 */ li r0, 0x3 /* 80290E28 0028DD88 80 C3 00 04 */ lwz r6, 0x4(r3) /* 80290E2C 0028DD8C 7E C3 B3 78 */ mr r3, r22 /* 80290E30 0028DD90 38 81 01 F0 */ addi r4, r1, 0x1f0 /* 80290E34 0028DD94 90 C1 01 F4 */ stw r6, 0x1f4(r1) /* 80290E38 0028DD98 90 A1 01 F0 */ stw r5, 0x1f0(r1) /* 80290E3C 0028DD9C 92 81 01 FC */ stw r20, 0x1fc(r1) /* 80290E40 0028DDA0 92 A1 01 F8 */ stw r21, 0x1f8(r1) /* 80290E44 0028DDA4 90 01 02 00 */ stw r0, 0x200(r1) /* 80290E48 0028DDA8 4B DC 2A D5 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter /* 80290E4C 0028DDAC 7E C3 B3 78 */ mr r3, r22 /* 80290E50 0028DDB0 81 96 00 00 */ lwz r12, 0x0(r22) /* 80290E54 0028DDB4 81 8C 00 38 */ lwz r12, 0x38(r12) /* 80290E58 0028DDB8 7D 89 03 A6 */ mtctr r12 /* 80290E5C 0028DDBC 4E 80 04 21 */ bctrl /* 80290E60 0028DDC0 80 83 00 00 */ lwz r4, 0x0(r3) /* 80290E64 0028DDC4 80 03 00 04 */ lwz r0, 0x4(r3) /* 80290E68 0028DDC8 90 9F 0A E4 */ stw r4, 0xae4(r31) /* 80290E6C 0028DDCC 90 1F 0A E8 */ stw r0, 0xae8(r31) /* 80290E70 0028DDD0 80 83 00 08 */ lwz r4, 0x8(r3) /* 80290E74 0028DDD4 80 03 00 0C */ lwz r0, 0xc(r3) /* 80290E78 0028DDD8 90 9F 0A EC */ stw r4, 0xaec(r31) /* 80290E7C 0028DDDC 90 1F 0A F0 */ stw r0, 0xaf0(r31) /* 80290E80 0028DDE0 80 83 00 10 */ lwz r4, 0x10(r3) /* 80290E84 0028DDE4 80 03 00 14 */ lwz r0, 0x14(r3) /* 80290E88 0028DDE8 90 9F 0A F4 */ stw r4, 0xaf4(r31) /* 80290E8C 0028DDEC 90 1F 0A F8 */ stw r0, 0xaf8(r31) /* 80290E90 0028DDF0 80 83 00 18 */ lwz r4, 0x18(r3) /* 80290E94 0028DDF4 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80290E98 0028DDF8 90 9F 0A FC */ stw r4, 0xafc(r31) /* 80290E9C 0028DDFC 90 1F 0B 00 */ stw r0, 0xb00(r31) /* 80290EA0 0028DE00 80 83 00 20 */ lwz r4, 0x20(r3) /* 80290EA4 0028DE04 80 03 00 24 */ lwz r0, 0x24(r3) /* 80290EA8 0028DE08 90 9F 0B 04 */ stw r4, 0xb04(r31) /* 80290EAC 0028DE0C 90 1F 0B 08 */ stw r0, 0xb08(r31) /* 80290EB0 0028DE10 80 83 00 28 */ lwz r4, 0x28(r3) /* 80290EB4 0028DE14 80 03 00 2C */ lwz r0, 0x2c(r3) /* 80290EB8 0028DE18 90 9F 0B 0C */ stw r4, 0xb0c(r31) /* 80290EBC 0028DE1C 90 1F 0B 10 */ stw r0, 0xb10(r31) /* 80290EC0 0028DE20 80 83 00 30 */ lwz r4, 0x30(r3) /* 80290EC4 0028DE24 80 03 00 34 */ lwz r0, 0x34(r3) /* 80290EC8 0028DE28 90 9F 0B 14 */ stw r4, 0xb14(r31) /* 80290ECC 0028DE2C 90 1F 0B 18 */ stw r0, 0xb18(r31) /* 80290ED0 0028DE30 80 03 00 38 */ lwz r0, 0x38(r3) /* 80290ED4 0028DE34 90 1F 0B 1C */ stw r0, 0xb1c(r31) /* 80290ED8 0028DE38 80 83 00 3C */ lwz r4, 0x3c(r3) /* 80290EDC 0028DE3C 80 03 00 40 */ lwz r0, 0x40(r3) /* 80290EE0 0028DE40 90 9F 0B 20 */ stw r4, 0xb20(r31) /* 80290EE4 0028DE44 90 1F 0B 24 */ stw r0, 0xb24(r31) /* 80290EE8 0028DE48 80 83 00 44 */ lwz r4, 0x44(r3) /* 80290EEC 0028DE4C 80 03 00 48 */ lwz r0, 0x48(r3) /* 80290EF0 0028DE50 90 9F 0B 28 */ stw r4, 0xb28(r31) /* 80290EF4 0028DE54 90 1F 0B 2C */ stw r0, 0xb2c(r31) /* 80290EF8 0028DE58 80 83 00 4C */ lwz r4, 0x4c(r3) /* 80290EFC 0028DE5C 80 03 00 50 */ lwz r0, 0x50(r3) /* 80290F00 0028DE60 90 9F 0B 30 */ stw r4, 0xb30(r31) /* 80290F04 0028DE64 90 1F 0B 34 */ stw r0, 0xb34(r31) /* 80290F08 0028DE68 80 83 00 54 */ lwz r4, 0x54(r3) /* 80290F0C 0028DE6C 80 03 00 58 */ lwz r0, 0x58(r3) /* 80290F10 0028DE70 90 9F 0B 38 */ stw r4, 0xb38(r31) /* 80290F14 0028DE74 90 1F 0B 3C */ stw r0, 0xb3c(r31) /* 80290F18 0028DE78 80 03 00 5C */ lwz r0, 0x5c(r3) /* 80290F1C 0028DE7C 90 1F 0B 40 */ stw r0, 0xb40(r31) /* 80290F20 0028DE80 80 03 00 60 */ lwz r0, 0x60(r3) /* 80290F24 0028DE84 90 1F 0B 44 */ stw r0, 0xb44(r31) /* 80290F28 0028DE88 80 03 00 64 */ lwz r0, 0x64(r3) /* 80290F2C 0028DE8C 90 1F 0B 48 */ stw r0, 0xb48(r31) /* 80290F30 0028DE90 80 16 00 B8 */ lwz r0, 0xb8(r22) /* 80290F34 0028DE94 90 1F 0B 54 */ stw r0, 0xb54(r31) /* 80290F38 0028DE98 48 00 03 0C */ b lbl_80291244 lbl_80290F3C: /* 80290F3C 0028DE9C A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290F40 0028DEA0 7F C3 F3 78 */ mr r3, r30 /* 80290F44 0028DEA4 38 81 00 58 */ addi r4, r1, 0x58 /* 80290F48 0028DEA8 B0 01 00 58 */ sth r0, 0x58(r1) /* 80290F4C 0028DEAC 4B DB B6 A5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290F50 0028DEB0 7C 64 1B 78 */ mr r4, r3 /* 80290F54 0028DEB4 38 61 01 04 */ addi r3, r1, 0x104 /* 80290F58 0028DEB8 4B E1 75 FD */ bl "__ct__26TCastToPtr<12CScriptSound>FP7CEntity" /* 80290F5C 0028DEBC 80 83 00 04 */ lwz r4, 0x4(r3) /* 80290F60 0028DEC0 28 04 00 00 */ cmplwi r4, 0x0 /* 80290F64 0028DEC4 41 82 02 E0 */ beq lbl_80291244 /* 80290F68 0028DEC8 A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290F6C 0028DECC 7F 63 DB 78 */ mr r3, r27 /* 80290F70 0028DED0 38 84 00 10 */ addi r4, r4, 0x10 /* 80290F74 0028DED4 B0 01 01 D8 */ sth r0, 0x1d8(r1) /* 80290F78 0028DED8 48 0A D2 C9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290F7C 0028DEDC 80 1F 0A A4 */ lwz r0, 0xaa4(r31) /* 80290F80 0028DEE0 80 BF 0A A8 */ lwz r5, 0xaa8(r31) /* 80290F84 0028DEE4 7C 00 28 00 */ cmpw r0, r5 /* 80290F88 0028DEE8 41 80 00 1C */ blt lbl_80290FA4 /* 80290F8C 0028DEEC 2C 05 00 00 */ cmpwi r5, 0x0 /* 80290F90 0028DEF0 38 7F 0A A0 */ addi r3, r31, 0xaa0 /* 80290F94 0028DEF4 38 80 00 04 */ li r4, 0x4 /* 80290F98 0028DEF8 41 82 00 08 */ beq lbl_80290FA0 /* 80290F9C 0028DEFC 54 A4 08 3C */ slwi r4, r5, 1 lbl_80290FA0: /* 80290FA0 0028DF00 48 00 14 F5 */ bl sub_802923e8 lbl_80290FA4: /* 80290FA4 0028DF04 80 1F 0A A4 */ lwz r0, 0xaa4(r31) /* 80290FA8 0028DF08 80 7F 0A AC */ lwz r3, 0xaac(r31) /* 80290FAC 0028DF0C 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80290FB0 0028DF10 7C A3 02 15 */ add. r5, r3, r0 /* 80290FB4 0028DF14 41 82 00 18 */ beq lbl_80290FCC /* 80290FB8 0028DF18 A0 01 01 D8 */ lhz r0, 0x1d8(r1) /* 80290FBC 0028DF1C 7F 64 DB 78 */ mr r4, r27 /* 80290FC0 0028DF20 38 65 00 04 */ addi r3, r5, 0x4 /* 80290FC4 0028DF24 B0 05 00 00 */ sth r0, 0x0(r5) /* 80290FC8 0028DF28 48 0A D2 79 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80290FCC: /* 80290FCC 0028DF2C 80 7F 0A A4 */ lwz r3, 0xaa4(r31) /* 80290FD0 0028DF30 28 1B 00 00 */ cmplwi r27, 0x0 /* 80290FD4 0028DF34 38 03 00 01 */ addi r0, r3, 0x1 /* 80290FD8 0028DF38 90 1F 0A A4 */ stw r0, 0xaa4(r31) /* 80290FDC 0028DF3C 41 82 02 68 */ beq lbl_80291244 /* 80290FE0 0028DF40 7F 63 DB 78 */ mr r3, r27 /* 80290FE4 0028DF44 48 0A CB DD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80290FE8 0028DF48 48 00 02 5C */ b lbl_80291244 lbl_80290FEC: /* 80290FEC 0028DF4C 2C 00 00 06 */ cmpwi r0, 0x6 /* 80290FF0 0028DF50 40 82 02 54 */ bne lbl_80291244 /* 80290FF4 0028DF54 B0 81 00 54 */ sth r4, 0x54(r1) /* 80290FF8 0028DF58 7F C3 F3 78 */ mr r3, r30 /* 80290FFC 0028DF5C 38 81 00 54 */ addi r4, r1, 0x54 /* 80291000 0028DF60 4B DB B5 F1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80291004 0028DF64 7C 64 1B 78 */ mr r4, r3 /* 80291008 0028DF68 38 61 00 FC */ addi r3, r1, 0xfc /* 8029100C 0028DF6C 4B E1 55 BD */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" /* 80291010 0028DF70 82 C3 00 04 */ lwz r22, 0x4(r3) /* 80291014 0028DF74 28 16 00 00 */ cmplwi r22, 0x0 /* 80291018 0028DF78 41 82 02 2C */ beq lbl_80291244 /* 8029101C 0028DF7C 82 96 00 24 */ lwz r20, 0x24(r22) /* 80291020 0028DF80 38 00 00 00 */ li r0, 0x0 /* 80291024 0028DF84 38 61 01 1C */ addi r3, r1, 0x11c /* 80291028 0028DF88 38 80 00 03 */ li r4, 0x3 /* 8029102C 0028DF8C 90 01 01 20 */ stw r0, 0x120(r1) /* 80291030 0028DF90 90 01 01 24 */ stw r0, 0x124(r1) /* 80291034 0028DF94 90 01 01 28 */ stw r0, 0x128(r1) /* 80291038 0028DF98 4B D7 B4 4D */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" /* 8029103C 0028DF9C 3A A0 00 00 */ li r21, 0x0 /* 80291040 0028DFA0 3A 60 00 00 */ li r19, 0x0 /* 80291044 0028DFA4 48 00 00 CC */ b lbl_80291110 lbl_80291048: /* 80291048 0028DFA8 80 B6 00 2C */ lwz r5, 0x2c(r22) /* 8029104C 0028DFAC 38 13 00 08 */ addi r0, r19, 0x8 /* 80291050 0028DFB0 7F C4 F3 78 */ mr r4, r30 /* 80291054 0028DFB4 38 61 00 50 */ addi r3, r1, 0x50 /* 80291058 0028DFB8 7C 05 00 2E */ lwzx r0, r5, r0 /* 8029105C 0028DFBC 38 A1 00 CC */ addi r5, r1, 0xcc /* 80291060 0028DFC0 90 01 00 CC */ stw r0, 0xcc(r1) /* 80291064 0028DFC4 4B DB 6F 35 */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 80291068 0028DFC8 A0 01 00 50 */ lhz r0, 0x50(r1) /* 8029106C 0028DFCC 7F C3 F3 78 */ mr r3, r30 /* 80291070 0028DFD0 38 81 00 4C */ addi r4, r1, 0x4c /* 80291074 0028DFD4 B0 01 00 A4 */ sth r0, 0xa4(r1) /* 80291078 0028DFD8 B0 01 00 4C */ sth r0, 0x4c(r1) /* 8029107C 0028DFDC 4B DB B5 75 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80291080 0028DFE0 7C 64 1B 78 */ mr r4, r3 /* 80291084 0028DFE4 38 61 00 F4 */ addi r3, r1, 0xf4 /* 80291088 0028DFE8 4B E1 7E 09 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" /* 8029108C 0028DFEC 82 43 00 04 */ lwz r18, 0x4(r3) /* 80291090 0028DFF0 28 12 00 00 */ cmplwi r18, 0x0 /* 80291094 0028DFF4 41 82 00 74 */ beq lbl_80291108 /* 80291098 0028DFF8 7E 43 93 78 */ mr r3, r18 /* 8029109C 0028DFFC 7F C5 F3 78 */ mr r5, r30 /* 802910A0 0028E000 38 80 00 28 */ li r4, 0x28 /* 802910A4 0028E004 4B DC 33 29 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 802910A8 0028E008 7E 43 93 78 */ mr r3, r18 /* 802910AC 0028E00C 7F C5 F3 78 */ mr r5, r30 /* 802910B0 0028E010 38 80 00 29 */ li r4, 0x29 /* 802910B4 0028E014 4B DC 33 19 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 802910B8 0028E018 80 01 01 20 */ lwz r0, 0x120(r1) /* 802910BC 0028E01C 80 A1 01 24 */ lwz r5, 0x124(r1) /* 802910C0 0028E020 7C 00 28 00 */ cmpw r0, r5 /* 802910C4 0028E024 41 80 00 1C */ blt lbl_802910E0 /* 802910C8 0028E028 2C 05 00 00 */ cmpwi r5, 0x0 /* 802910CC 0028E02C 38 61 01 1C */ addi r3, r1, 0x11c /* 802910D0 0028E030 38 80 00 04 */ li r4, 0x4 /* 802910D4 0028E034 41 82 00 08 */ beq lbl_802910DC /* 802910D8 0028E038 54 A4 08 3C */ slwi r4, r5, 1 lbl_802910DC: /* 802910DC 0028E03C 4B D7 B3 A9 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" lbl_802910E0: /* 802910E0 0028E040 80 01 01 20 */ lwz r0, 0x120(r1) /* 802910E4 0028E044 80 61 01 28 */ lwz r3, 0x128(r1) /* 802910E8 0028E048 54 00 08 3C */ slwi r0, r0, 1 /* 802910EC 0028E04C 7C 63 02 15 */ add. r3, r3, r0 /* 802910F0 0028E050 41 82 00 0C */ beq lbl_802910FC /* 802910F4 0028E054 A0 01 00 A4 */ lhz r0, 0xa4(r1) /* 802910F8 0028E058 B0 03 00 00 */ sth r0, 0x0(r3) lbl_802910FC: /* 802910FC 0028E05C 80 61 01 20 */ lwz r3, 0x120(r1) /* 80291100 0028E060 38 03 00 01 */ addi r0, r3, 0x1 /* 80291104 0028E064 90 01 01 20 */ stw r0, 0x120(r1) lbl_80291108: /* 80291108 0028E068 3A B5 00 01 */ addi r21, r21, 0x1 /* 8029110C 0028E06C 3A 73 00 0C */ addi r19, r19, 0xc lbl_80291110: /* 80291110 0028E070 7C 15 A0 40 */ cmplw r21, r20 /* 80291114 0028E074 41 80 FF 34 */ blt lbl_80291048 /* 80291118 0028E078 80 61 01 20 */ lwz r3, 0x120(r1) /* 8029111C 0028E07C A0 81 00 A8 */ lhz r4, 0xa8(r1) /* 80291120 0028E080 80 01 01 24 */ lwz r0, 0x124(r1) /* 80291124 0028E084 2C 03 00 00 */ cmpwi r3, 0x0 /* 80291128 0028E088 B0 81 01 C4 */ sth r4, 0x1c4(r1) /* 8029112C 0028E08C 90 61 01 CC */ stw r3, 0x1cc(r1) /* 80291130 0028E090 90 01 01 D0 */ stw r0, 0x1d0(r1) /* 80291134 0028E094 40 82 00 18 */ bne lbl_8029114C /* 80291138 0028E098 2C 00 00 00 */ cmpwi r0, 0x0 /* 8029113C 0028E09C 40 82 00 10 */ bne lbl_8029114C /* 80291140 0028E0A0 38 00 00 00 */ li r0, 0x0 /* 80291144 0028E0A4 90 01 01 D4 */ stw r0, 0x1d4(r1) /* 80291148 0028E0A8 48 00 00 68 */ b lbl_802911B0 lbl_8029114C: /* 8029114C 0028E0AC 80 01 01 D0 */ lwz r0, 0x1d0(r1) /* 80291150 0028E0B0 54 03 08 3D */ slwi. r3, r0, 1 /* 80291154 0028E0B4 40 82 00 10 */ bne lbl_80291164 /* 80291158 0028E0B8 38 00 00 00 */ li r0, 0x0 /* 8029115C 0028E0BC 90 01 01 D4 */ stw r0, 0x1d4(r1) /* 80291160 0028E0C0 48 00 00 1C */ b lbl_8029117C lbl_80291164: /* 80291164 0028E0C4 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 80291168 0028E0C8 38 A0 00 00 */ li r5, 0x0 /* 8029116C 0028E0CC 38 84 5C 54 */ addi r4, r4, lbl_803D5A74@l /* 80291170 0028E0D0 38 84 00 C9 */ addi r4, r4, 0xc9 /* 80291174 0028E0D4 48 08 47 85 */ bl __nwa__FUlPCcPCc /* 80291178 0028E0D8 90 61 01 D4 */ stw r3, 0x1d4(r1) lbl_8029117C: /* 8029117C 0028E0DC 80 01 01 CC */ lwz r0, 0x1cc(r1) /* 80291180 0028E0E0 80 81 01 28 */ lwz r4, 0x128(r1) /* 80291184 0028E0E4 80 61 01 D4 */ lwz r3, 0x1d4(r1) /* 80291188 0028E0E8 7C 09 03 A6 */ mtctr r0 /* 8029118C 0028E0EC 2C 00 00 00 */ cmpwi r0, 0x0 /* 80291190 0028E0F0 40 81 00 20 */ ble lbl_802911B0 lbl_80291194: /* 80291194 0028E0F4 28 03 00 00 */ cmplwi r3, 0x0 /* 80291198 0028E0F8 41 82 00 0C */ beq lbl_802911A4 /* 8029119C 0028E0FC A0 04 00 00 */ lhz r0, 0x0(r4) /* 802911A0 0028E100 B0 03 00 00 */ sth r0, 0x0(r3) lbl_802911A4: /* 802911A4 0028E104 38 63 00 02 */ addi r3, r3, 0x2 /* 802911A8 0028E108 38 84 00 02 */ addi r4, r4, 0x2 /* 802911AC 0028E10C 42 00 FF E8 */ bdnz lbl_80291194 lbl_802911B0: /* 802911B0 0028E110 38 7F 09 A4 */ addi r3, r31, 0x9a4 /* 802911B4 0028E114 38 81 01 C4 */ addi r4, r1, 0x1c4 /* 802911B8 0028E118 48 00 06 69 */ bl sub_80291774 /* 802911BC 0028E11C 28 17 00 00 */ cmplwi r23, 0x0 /* 802911C0 0028E120 41 82 00 44 */ beq lbl_80291204 /* 802911C4 0028E124 80 01 01 CC */ lwz r0, 0x1cc(r1) /* 802911C8 0028E128 80 61 01 D4 */ lwz r3, 0x1d4(r1) /* 802911CC 0028E12C 54 00 08 3C */ slwi r0, r0, 1 /* 802911D0 0028E130 7C 03 02 14 */ add r0, r3, r0 /* 802911D4 0028E134 90 61 00 B0 */ stw r3, 0xb0(r1) /* 802911D8 0028E138 7C 64 1B 78 */ mr r4, r3 /* 802911DC 0028E13C 90 01 00 B8 */ stw r0, 0xb8(r1) /* 802911E0 0028E140 90 01 00 B4 */ stw r0, 0xb4(r1) /* 802911E4 0028E144 90 61 00 AC */ stw r3, 0xac(r1) /* 802911E8 0028E148 48 00 00 08 */ b lbl_802911F0 lbl_802911EC: /* 802911EC 0028E14C 38 84 00 02 */ addi r4, r4, 0x2 lbl_802911F0: /* 802911F0 0028E150 7C 04 00 40 */ cmplw r4, r0 /* 802911F4 0028E154 40 82 FF F8 */ bne lbl_802911EC /* 802911F8 0028E158 28 03 00 00 */ cmplwi r3, 0x0 /* 802911FC 0028E15C 41 82 00 08 */ beq lbl_80291204 /* 80291200 0028E160 48 08 48 11 */ bl Free__7CMemoryFPCv lbl_80291204: /* 80291204 0028E164 80 01 01 20 */ lwz r0, 0x120(r1) /* 80291208 0028E168 80 61 01 28 */ lwz r3, 0x128(r1) /* 8029120C 0028E16C 54 00 08 3C */ slwi r0, r0, 1 /* 80291210 0028E170 7C 03 02 14 */ add r0, r3, r0 /* 80291214 0028E174 90 61 00 C0 */ stw r3, 0xc0(r1) /* 80291218 0028E178 7C 64 1B 78 */ mr r4, r3 /* 8029121C 0028E17C 90 01 00 C8 */ stw r0, 0xc8(r1) /* 80291220 0028E180 90 01 00 C4 */ stw r0, 0xc4(r1) /* 80291224 0028E184 90 61 00 BC */ stw r3, 0xbc(r1) /* 80291228 0028E188 48 00 00 08 */ b func_80291230 lbl_8029122C: /* 8029122C 0028E18C 38 84 00 02 */ addi r4, r4, 0x2 func_80291230: /* 80291230 0028E190 7C 04 00 40 */ cmplw r4, r0 /* 80291234 0028E194 40 82 FF F8 */ bne lbl_8029122C /* 80291238 0028E198 28 03 00 00 */ cmplwi r3, 0x0 /* 8029123C 0028E19C 41 82 00 08 */ beq lbl_80291244 /* 80291240 0028E1A0 48 08 47 D1 */ bl Free__7CMemoryFPCv lbl_80291244: /* 80291244 0028E1A4 3B BD 00 01 */ addi r29, r29, 0x1 /* 80291248 0028E1A8 3B 9C 00 0C */ addi r28, r28, 0xc lbl_8029124C: /* 8029124C 0028E1AC 7C 1D C0 40 */ cmplw r29, r24 /* 80291250 0028E1B0 41 80 F9 80 */ blt lbl_80290BD0 /* 80291254 0028E1B4 48 00 05 B8 */ b lbl_8029180C AcceptScriptMsg_Touched: /* 80291258 0028E1B8 A0 14 00 00 */ lhz r0, 0x0(r20) /* 8029125C 0028E1BC 38 A1 00 48 */ addi r5, r1, 0x48 /* 80291260 0028E1C0 B0 01 00 48 */ sth r0, 0x48(r1) /* 80291264 0028E1C4 4B F9 B9 E5 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80291268 0028E1C8 A0 14 00 00 */ lhz r0, 0x0(r20) /* 8029126C 0028E1CC A0 7F 09 90 */ lhz r3, 0x990(r31) /* 80291270 0028E1D0 7C 00 18 40 */ cmplw r0, r3 /* 80291274 0028E1D4 40 82 00 20 */ bne lbl_80291294 /* 80291278 0028E1D8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 8029127C 0028E1DC 7C 03 00 40 */ cmplw r3, r0 /* 80291280 0028E1E0 41 82 00 14 */ beq lbl_80291294 /* 80291284 0028E1E4 7F E3 FB 78 */ mr r3, r31 /* 80291288 0028E1E8 7F C5 F3 78 */ mr r5, r30 /* 8029128C 0028E1EC 38 80 00 01 */ li r4, 0x1 /* 80291290 0028E1F0 4B F9 63 89 */ bl sub_8022759c lbl_80291294: /* 80291294 0028E1F4 A0 14 00 00 */ lhz r0, 0x0(r20) /* 80291298 0028E1F8 7F C3 F3 78 */ mr r3, r30 /* 8029129C 0028E1FC 38 81 00 44 */ addi r4, r1, 0x44 /* 802912A0 0028E200 B0 01 00 44 */ sth r0, 0x44(r1) /* 802912A4 0028E204 4B DB B3 4D */ bl ObjectById__13CStateManagerF9TUniqueId /* 802912A8 0028E208 7C 60 1B 78 */ mr r0, r3 /* 802912AC 0028E20C 38 61 00 EC */ addi r3, r1, 0xec /* 802912B0 0028E210 7C 04 03 78 */ mr r4, r0 /* 802912B4 0028E214 4B E1 E1 15 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" /* 802912B8 0028E218 80 83 00 04 */ lwz r4, 0x4(r3) /* 802912BC 0028E21C 28 04 00 00 */ cmplwi r4, 0x0 /* 802912C0 0028E220 41 82 05 4C */ beq lbl_8029180C /* 802912C4 0028E224 38 61 00 40 */ addi r3, r1, 0x40 /* 802912C8 0028E228 4B F1 79 41 */ bl GetLastTouchedObject__15CCollisionActorCFv /* 802912CC 0028E22C A0 01 00 40 */ lhz r0, 0x40(r1) /* 802912D0 0028E230 7F C3 F3 78 */ mr r3, r30 /* 802912D4 0028E234 38 81 00 3C */ addi r4, r1, 0x3c /* 802912D8 0028E238 B0 01 00 A0 */ sth r0, 0xa0(r1) /* 802912DC 0028E23C B0 01 00 3C */ sth r0, 0x3c(r1) /* 802912E0 0028E240 4B DB B3 11 */ bl ObjectById__13CStateManagerF9TUniqueId /* 802912E4 0028E244 7C 60 1B 78 */ mr r0, r3 /* 802912E8 0028E248 38 61 00 E4 */ addi r3, r1, 0xe4 /* 802912EC 0028E24C 7C 04 03 78 */ mr r4, r0 /* 802912F0 0028E250 4B E1 B1 21 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" /* 802912F4 0028E254 82 43 00 04 */ lwz r18, 0x4(r3) /* 802912F8 0028E258 28 12 00 00 */ cmplwi r18, 0x0 /* 802912FC 0028E25C 41 82 05 10 */ beq lbl_8029180C /* 80291300 0028E260 C0 3F 04 20 */ lfs f1, 0x420(r31) /* 80291304 0028E264 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 80291308 0028E268 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8029130C 0028E26C 4C 40 13 82 */ cror 2, 0, 2 /* 80291310 0028E270 40 82 04 FC */ bne lbl_8029180C /* 80291314 0028E274 80 AD 99 98 */ lwz r5, lbl_805A8558@sda21(r13) /* 80291318 0028E278 38 60 00 00 */ li r3, 0x0 /* 8029131C 0028E27C 38 80 00 01 */ li r4, 0x1 /* 80291320 0028E280 48 0F 8D B1 */ bl __shl2i /* 80291324 0028E284 38 A0 00 00 */ li r5, 0x0 /* 80291328 0028E288 38 00 00 03 */ li r0, 0x3 /* 8029132C 0028E28C 90 81 01 94 */ stw r4, 0x194(r1) /* 80291330 0028E290 7F E4 FB 78 */ mr r4, r31 /* 80291334 0028E294 90 61 01 90 */ stw r3, 0x190(r1) /* 80291338 0028E298 38 61 01 A8 */ addi r3, r1, 0x1a8 /* 8029133C 0028E29C 90 A1 01 9C */ stw r5, 0x19c(r1) /* 80291340 0028E2A0 90 A1 01 98 */ stw r5, 0x198(r1) /* 80291344 0028E2A4 90 01 01 A0 */ stw r0, 0x1a0(r1) /* 80291348 0028E2A8 A0 1F 00 08 */ lhz r0, 0x8(r31) /* 8029134C 0028E2AC B0 01 00 28 */ sth r0, 0x28(r1) /* 80291350 0028E2B0 A0 B2 00 08 */ lhz r5, 0x8(r18) /* 80291354 0028E2B4 B0 01 00 24 */ sth r0, 0x24(r1) /* 80291358 0028E2B8 B0 A1 00 30 */ sth r5, 0x30(r1) /* 8029135C 0028E2BC A0 1F 00 08 */ lhz r0, 0x8(r31) /* 80291360 0028E2C0 B0 A1 00 2C */ sth r5, 0x2c(r1) /* 80291364 0028E2C4 B0 01 00 38 */ sth r0, 0x38(r1) /* 80291368 0028E2C8 81 9F 00 00 */ lwz r12, 0x0(r31) /* 8029136C 0028E2CC B0 01 00 34 */ sth r0, 0x34(r1) /* 80291370 0028E2D0 81 8C 02 B0 */ lwz r12, 0x2b0(r12) /* 80291374 0028E2D4 7D 89 03 A6 */ mtctr r12 /* 80291378 0028E2D8 4E 80 04 21 */ bctrl /* 8029137C 0028E2DC 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80291380 0028E2E0 7F C3 F3 78 */ mr r3, r30 /* 80291384 0028E2E4 39 24 68 80 */ addi r9, r4, sZeroVector__9CVector3f@l /* 80291388 0028E2E8 38 A1 00 30 */ addi r5, r1, 0x30 /* 8029138C 0028E2EC 38 81 00 38 */ addi r4, r1, 0x38 /* 80291390 0028E2F0 38 C1 00 28 */ addi r6, r1, 0x28 /* 80291394 0028E2F4 38 E1 01 A8 */ addi r7, r1, 0x1a8 /* 80291398 0028E2F8 39 01 01 90 */ addi r8, r1, 0x190 /* 8029139C 0028E2FC 4B DB 8D 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f /* 802913A0 0028E300 C0 1F 04 24 */ lfs f0, 0x424(r31) /* 802913A4 0028E304 D0 1F 04 20 */ stfs f0, 0x420(r31) /* 802913A8 0028E308 48 00 04 64 */ b lbl_8029180C AcceptScriptMsg_Damaged: /* 802913AC 0028E30C A0 14 00 00 */ lhz r0, 0x0(r20) /* 802913B0 0028E310 A0 7F 09 90 */ lhz r3, 0x990(r31) /* 802913B4 0028E314 7C 00 18 40 */ cmplw r0, r3 /* 802913B8 0028E318 40 82 00 A4 */ bne lbl_8029145C /* 802913BC 0028E31C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 802913C0 0028E320 7C 03 00 40 */ cmplw r3, r0 /* 802913C4 0028E324 41 82 00 98 */ beq lbl_8029145C /* 802913C8 0028E328 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 802913CC 0028E32C C0 5F 00 58 */ lfs f2, 0x58(r31) /* 802913D0 0028E330 38 A3 AC 48 */ addi r5, r3, __vt__13CBodyStateCmd@l /* 802913D4 0028E334 C0 3F 00 48 */ lfs f1, 0x48(r31) /* 802913D8 0028E338 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 802913DC 0028E33C 3C 80 80 3E */ lis r4, lbl_803DAA44@ha /* 802913E0 0028E340 80 7F 04 50 */ lwz r3, 0x450(r31) /* 802913E4 0028E344 38 C0 00 04 */ li r6, 0x4 /* 802913E8 0028E348 38 00 00 08 */ li r0, 0x8 /* 802913EC 0028E34C 90 A1 01 78 */ stw r5, 0x178(r1) /* 802913F0 0028E350 38 A4 AC 24 */ addi r5, r4, lbl_803DAA44@l /* 802913F4 0028E354 3A 43 00 04 */ addi r18, r3, 0x4 /* 802913F8 0028E358 90 C1 01 7C */ stw r6, 0x17c(r1) /* 802913FC 0028E35C 7E 43 93 78 */ mr r3, r18 /* 80291400 0028E360 38 80 00 04 */ li r4, 0x4 /* 80291404 0028E364 90 A1 01 78 */ stw r5, 0x178(r1) /* 80291408 0028E368 D0 01 01 80 */ stfs f0, 0x180(r1) /* 8029140C 0028E36C D0 21 01 84 */ stfs f1, 0x184(r1) /* 80291410 0028E370 D0 41 01 88 */ stfs f2, 0x188(r1) /* 80291414 0028E374 90 01 01 8C */ stw r0, 0x18c(r1) /* 80291418 0028E378 4B EA 00 9D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 8029141C 0028E37C 80 01 01 7C */ lwz r0, 0x17c(r1) /* 80291420 0028E380 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 80291424 0028E384 38 83 AC 24 */ addi r4, r3, lbl_803DAA44@l /* 80291428 0028E388 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8029142C 0028E38C 90 12 00 F8 */ stw r0, 0xf8(r18) /* 80291430 0028E390 38 03 AC 48 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 80291434 0028E394 80 A1 01 80 */ lwz r5, 0x180(r1) /* 80291438 0028E398 80 61 01 84 */ lwz r3, 0x184(r1) /* 8029143C 0028E39C 90 B2 00 FC */ stw r5, 0xfc(r18) /* 80291440 0028E3A0 80 A1 01 88 */ lwz r5, 0x188(r1) /* 80291444 0028E3A4 90 72 01 00 */ stw r3, 0x100(r18) /* 80291448 0028E3A8 80 61 01 8C */ lwz r3, 0x18c(r1) /* 8029144C 0028E3AC 90 B2 01 04 */ stw r5, 0x104(r18) /* 80291450 0028E3B0 90 81 01 78 */ stw r4, 0x178(r1) /* 80291454 0028E3B4 90 72 01 08 */ stw r3, 0x108(r18) /* 80291458 0028E3B8 90 01 01 78 */ stw r0, 0x178(r1) lbl_8029145C: /* 8029145C 0028E3BC A0 14 00 00 */ lhz r0, 0x0(r20) /* 80291460 0028E3C0 7F E3 FB 78 */ mr r3, r31 /* 80291464 0028E3C4 7E A4 AB 78 */ mr r4, r21 /* 80291468 0028E3C8 7F C6 F3 78 */ mr r6, r30 /* 8029146C 0028E3CC B0 01 00 20 */ sth r0, 0x20(r1) /* 80291470 0028E3D0 38 A1 00 20 */ addi r5, r1, 0x20 /* 80291474 0028E3D4 4B F9 B7 D5 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80291478 0028E3D8 A0 74 00 00 */ lhz r3, 0x0(r20) /* 8029147C 0028E3DC A0 1F 0A 46 */ lhz r0, 0xa46(r31) /* 80291480 0028E3E0 7C 03 00 40 */ cmplw r3, r0 /* 80291484 0028E3E4 40 82 03 88 */ bne lbl_8029180C /* 80291488 0028E3E8 80 1F 0A 7C */ lwz r0, 0xa7c(r31) /* 8029148C 0028E3EC 2C 00 00 02 */ cmpwi r0, 0x2 /* 80291490 0028E3F0 40 82 03 7C */ bne lbl_8029180C /* 80291494 0028E3F4 38 00 00 03 */ li r0, 0x3 /* 80291498 0028E3F8 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8029149C 0028E3FC 90 1F 0A 7C */ stw r0, 0xa7c(r31) /* 802914A0 0028E400 D0 1F 0A 84 */ stfs f0, 0xa84(r31) /* 802914A4 0028E404 48 00 03 68 */ b lbl_8029180C AcceptScriptMsg_InvulnDamage: /* 802914A8 0028E408 A0 14 00 00 */ lhz r0, 0x0(r20) /* 802914AC 0028E40C 7F C3 F3 78 */ mr r3, r30 /* 802914B0 0028E410 38 81 00 1C */ addi r4, r1, 0x1c /* 802914B4 0028E414 B0 01 00 1C */ sth r0, 0x1c(r1) /* 802914B8 0028E418 4B DB B1 69 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 802914BC 0028E41C 7C 64 1B 78 */ mr r4, r3 /* 802914C0 0028E420 38 61 00 D4 */ addi r3, r1, 0xd4 /* 802914C4 0028E424 4B E1 C2 C5 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" /* 802914C8 0028E428 82 43 00 04 */ lwz r18, 0x4(r3) /* 802914CC 0028E42C 28 12 00 00 */ cmplwi r18, 0x0 /* 802914D0 0028E430 41 82 00 7C */ beq lbl_8029154C /* 802914D4 0028E434 88 1F 0A 4A */ lbz r0, 0xa4a(r31) /* 802914D8 0028E438 28 00 00 00 */ cmplwi r0, 0x0 /* 802914DC 0028E43C 41 82 00 70 */ beq lbl_8029154C /* 802914E0 0028E440 80 AD 99 78 */ lwz r5, lbl_805A8538@sda21(r13) /* 802914E4 0028E444 38 60 00 00 */ li r3, 0x0 /* 802914E8 0028E448 38 80 00 01 */ li r4, 0x1 /* 802914EC 0028E44C 48 0F 8B E5 */ bl __shl2i /* 802914F0 0028E450 39 00 00 00 */ li r8, 0x0 /* 802914F4 0028E454 39 40 00 03 */ li r10, 0x3 /* 802914F8 0028E458 90 81 01 64 */ stw r4, 0x164(r1) /* 802914FC 0028E45C 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80291500 0028E460 39 24 68 80 */ addi r9, r4, sZeroVector__9CVector3f@l /* 80291504 0028E464 A0 14 00 00 */ lhz r0, 0x0(r20) /* 80291508 0028E468 90 61 01 60 */ stw r3, 0x160(r1) /* 8029150C 0028E46C 7F C3 F3 78 */ mr r3, r30 /* 80291510 0028E470 38 81 00 18 */ addi r4, r1, 0x18 /* 80291514 0028E474 38 A1 00 14 */ addi r5, r1, 0x14 /* 80291518 0028E478 91 01 01 6C */ stw r8, 0x16c(r1) /* 8029151C 0028E47C 38 C1 00 10 */ addi r6, r1, 0x10 /* 80291520 0028E480 38 F2 01 2C */ addi r7, r18, 0x12c /* 80291524 0028E484 91 01 01 68 */ stw r8, 0x168(r1) /* 80291528 0028E488 39 01 01 60 */ addi r8, r1, 0x160 /* 8029152C 0028E48C 91 41 01 70 */ stw r10, 0x170(r1) /* 80291530 0028E490 A1 72 00 EC */ lhz r11, 0xec(r18) /* 80291534 0028E494 B1 61 00 10 */ sth r11, 0x10(r1) /* 80291538 0028E498 A1 5F 0A 46 */ lhz r10, 0xa46(r31) /* 8029153C 0028E49C B1 61 00 0C */ sth r11, 0xc(r1) /* 80291540 0028E4A0 B1 41 00 14 */ sth r10, 0x14(r1) /* 80291544 0028E4A4 B0 01 00 18 */ sth r0, 0x18(r1) /* 80291548 0028E4A8 4B DB 8B D5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f lbl_8029154C: /* 8029154C 0028E4AC 7F E3 FB 78 */ mr r3, r31 /* 80291550 0028E4B0 7F C5 F3 78 */ mr r5, r30 /* 80291554 0028E4B4 38 80 00 01 */ li r4, 0x1 /* 80291558 0028E4B8 4B F9 60 C1 */ bl sub_8022759c /* 8029155C 0028E4BC 48 00 02 B0 */ b lbl_8029180C AcceptScriptMsg_Decrement: /* 80291560 0028E4C0 38 00 00 01 */ li r0, 0x1 /* 80291564 0028E4C4 98 1F 09 EC */ stb r0, 0x9ec(r31) /* 80291568 0028E4C8 48 00 02 A4 */ b lbl_8029180C AcceptScriptMsg_Increment: /* 8029156C 0028E4CC 7F C5 F3 78 */ mr r5, r30 /* 80291570 0028E4D0 38 80 00 01 */ li r4, 0x1 /* 80291574 0028E4D4 4B F9 60 A5 */ bl sub_8022759c /* 80291578 0028E4D8 48 00 02 94 */ b lbl_8029180C AcceptScriptMsg_SetToMax: /* 8029157C 0028E4DC 38 00 00 01 */ li r0, 0x1 /* 80291580 0028E4E0 98 1F 0A 3C */ stb r0, 0xa3c(r31) /* 80291584 0028E4E4 48 00 02 88 */ b lbl_8029180C AcceptScriptMsg_Stop: /* 80291588 0028E4E8 7F C4 F3 78 */ mr r4, r30 /* 8029158C 0028E4EC 4B FF A0 09 */ bl sub_8028b518 /* 80291590 0028E4F0 48 00 02 7C */ b lbl_8029180C AcceptScriptMsg_Start: /* 80291594 0028E4F4 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 80291598 0028E4F8 D0 1F 03 B4 */ stfs f0, 0x3b4(r31) /* 8029159C 0028E4FC 88 7F 0A DE */ lbz r3, 0xade(r31) /* 802915A0 0028E500 38 03 00 01 */ addi r0, r3, 0x1 /* 802915A4 0028E504 98 1F 0A DE */ stb r0, 0xade(r31) /* 802915A8 0028E508 88 1F 0A DE */ lbz r0, 0xade(r31) /* 802915AC 0028E50C 28 00 00 04 */ cmplwi r0, 0x4 /* 802915B0 0028E510 40 80 02 5C */ bge lbl_8029180C /* 802915B4 0028E514 3C A0 80 3E */ lis r5, __vt__13CBodyStateCmd@ha /* 802915B8 0028E518 3C 60 80 5A */ lis r3, sLeftVector__9CVector3f@ha /* 802915BC 0028E51C 38 83 68 EC */ addi r4, r3, sLeftVector__9CVector3f@l /* 802915C0 0028E520 80 7F 04 50 */ lwz r3, 0x450(r31) /* 802915C4 0028E524 38 E5 AC 48 */ addi r7, r5, __vt__13CBodyStateCmd@l /* 802915C8 0028E528 C0 44 00 00 */ lfs f2, 0x0(r4) /* 802915CC 0028E52C C0 24 00 04 */ lfs f1, 0x4(r4) /* 802915D0 0028E530 3C A0 80 3E */ lis r5, lbl_803DAA44@ha /* 802915D4 0028E534 C0 04 00 08 */ lfs f0, 0x8(r4) /* 802915D8 0028E538 38 C0 00 04 */ li r6, 0x4 /* 802915DC 0028E53C 38 00 00 01 */ li r0, 0x1 /* 802915E0 0028E540 3A 43 00 04 */ addi r18, r3, 0x4 /* 802915E4 0028E544 90 E1 01 44 */ stw r7, 0x144(r1) /* 802915E8 0028E548 38 A5 AC 24 */ addi r5, r5, lbl_803DAA44@l /* 802915EC 0028E54C 7E 43 93 78 */ mr r3, r18 /* 802915F0 0028E550 38 80 00 04 */ li r4, 0x4 /* 802915F4 0028E554 90 C1 01 48 */ stw r6, 0x148(r1) /* 802915F8 0028E558 90 A1 01 44 */ stw r5, 0x144(r1) /* 802915FC 0028E55C D0 41 01 4C */ stfs f2, 0x14c(r1) /* 80291600 0028E560 D0 21 01 50 */ stfs f1, 0x150(r1) /* 80291604 0028E564 D0 01 01 54 */ stfs f0, 0x154(r1) /* 80291608 0028E568 90 01 01 58 */ stw r0, 0x158(r1) /* 8029160C 0028E56C 4B E9 FE A9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 80291610 0028E570 80 01 01 48 */ lwz r0, 0x148(r1) /* 80291614 0028E574 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 80291618 0028E578 38 83 AC 24 */ addi r4, r3, lbl_803DAA44@l /* 8029161C 0028E57C 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 80291620 0028E580 90 12 00 F8 */ stw r0, 0xf8(r18) /* 80291624 0028E584 38 03 AC 48 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 80291628 0028E588 80 A1 01 4C */ lwz r5, 0x14c(r1) /* 8029162C 0028E58C 80 61 01 50 */ lwz r3, 0x150(r1) /* 80291630 0028E590 90 B2 00 FC */ stw r5, 0xfc(r18) /* 80291634 0028E594 80 A1 01 54 */ lwz r5, 0x154(r1) /* 80291638 0028E598 90 72 01 00 */ stw r3, 0x100(r18) /* 8029163C 0028E59C 80 61 01 58 */ lwz r3, 0x158(r1) /* 80291640 0028E5A0 90 B2 01 04 */ stw r5, 0x104(r18) /* 80291644 0028E5A4 90 81 01 44 */ stw r4, 0x144(r1) /* 80291648 0028E5A8 90 72 01 08 */ stw r3, 0x108(r18) /* 8029164C 0028E5AC 90 01 01 44 */ stw r0, 0x144(r1) /* 80291650 0028E5B0 48 00 01 BC */ b lbl_8029180C AcceptScriptMsg_Action: /* 80291654 0028E5B4 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 80291658 0028E5B8 D0 1F 03 B4 */ stfs f0, 0x3b4(r31) /* 8029165C 0028E5BC 88 7F 0A DE */ lbz r3, 0xade(r31) /* 80291660 0028E5C0 38 03 00 01 */ addi r0, r3, 0x1 /* 80291664 0028E5C4 98 1F 0A DE */ stb r0, 0xade(r31) /* 80291668 0028E5C8 88 1F 0A DE */ lbz r0, 0xade(r31) /* 8029166C 0028E5CC 28 00 00 04 */ cmplwi r0, 0x4 /* 80291670 0028E5D0 40 80 01 9C */ bge lbl_8029180C /* 80291674 0028E5D4 3C A0 80 3E */ lis r5, __vt__13CBodyStateCmd@ha /* 80291678 0028E5D8 3C 60 80 5A */ lis r3, sRightVector__9CVector3f@ha /* 8029167C 0028E5DC 38 83 68 F8 */ addi r4, r3, sRightVector__9CVector3f@l /* 80291680 0028E5E0 80 7F 04 50 */ lwz r3, 0x450(r31) /* 80291684 0028E5E4 38 E5 AC 48 */ addi r7, r5, __vt__13CBodyStateCmd@l /* 80291688 0028E5E8 C0 44 00 00 */ lfs f2, 0x0(r4) /* 8029168C 0028E5EC C0 24 00 04 */ lfs f1, 0x4(r4) /* 80291690 0028E5F0 3C A0 80 3E */ lis r5, lbl_803DAA44@ha /* 80291694 0028E5F4 C0 04 00 08 */ lfs f0, 0x8(r4) /* 80291698 0028E5F8 38 C0 00 04 */ li r6, 0x4 /* 8029169C 0028E5FC 38 00 00 01 */ li r0, 0x1 /* 802916A0 0028E600 3A 43 00 04 */ addi r18, r3, 0x4 /* 802916A4 0028E604 90 E1 01 2C */ stw r7, 0x12c(r1) /* 802916A8 0028E608 38 A5 AC 24 */ addi r5, r5, lbl_803DAA44@l /* 802916AC 0028E60C 7E 43 93 78 */ mr r3, r18 /* 802916B0 0028E610 38 80 00 04 */ li r4, 0x4 /* 802916B4 0028E614 90 C1 01 30 */ stw r6, 0x130(r1) /* 802916B8 0028E618 90 A1 01 2C */ stw r5, 0x12c(r1) /* 802916BC 0028E61C D0 41 01 34 */ stfs f2, 0x134(r1) /* 802916C0 0028E620 D0 21 01 38 */ stfs f1, 0x138(r1) /* 802916C4 0028E624 D0 01 01 3C */ stfs f0, 0x13c(r1) /* 802916C8 0028E628 90 01 01 40 */ stw r0, 0x140(r1) /* 802916CC 0028E62C 4B E9 FD E9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 802916D0 0028E630 80 01 01 30 */ lwz r0, 0x130(r1) /* 802916D4 0028E634 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 802916D8 0028E638 38 83 AC 24 */ addi r4, r3, lbl_803DAA44@l /* 802916DC 0028E63C 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 802916E0 0028E640 90 12 00 F8 */ stw r0, 0xf8(r18) /* 802916E4 0028E644 38 03 AC 48 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 802916E8 0028E648 80 A1 01 34 */ lwz r5, 0x134(r1) /* 802916EC 0028E64C 80 61 01 38 */ lwz r3, 0x138(r1) /* 802916F0 0028E650 90 B2 00 FC */ stw r5, 0xfc(r18) /* 802916F4 0028E654 80 A1 01 3C */ lwz r5, 0x13c(r1) /* 802916F8 0028E658 90 72 01 00 */ stw r3, 0x100(r18) /* 802916FC 0028E65C 80 61 01 40 */ lwz r3, 0x140(r1) /* 80291700 0028E660 90 B2 01 04 */ stw r5, 0x104(r18) /* 80291704 0028E664 90 81 01 2C */ stw r4, 0x12c(r1) /* 80291708 0028E668 90 72 01 08 */ stw r3, 0x108(r18) /* 8029170C 0028E66C 90 01 01 2C */ stw r0, 0x12c(r1) /* 80291710 0028E670 48 00 00 FC */ b lbl_8029180C AcceptScriptMsg_Reset: /* 80291714 0028E674 38 00 00 01 */ li r0, 0x1 /* 80291718 0028E678 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 8029171C 0028E67C 98 1F 0B 78 */ stb r0, 0xb78(r31) /* 80291720 0028E680 38 63 AC 48 */ addi r3, r3, __vt__13CBodyStateCmd@l /* 80291724 0028E684 38 00 00 0C */ li r0, 0xc /* 80291728 0028E688 38 81 00 DC */ addi r4, r1, 0xdc /* 8029172C 0028E68C 90 61 00 DC */ stw r3, 0xdc(r1) /* 80291730 0028E690 90 01 00 E0 */ stw r0, 0xe0(r1) /* 80291734 0028E694 80 7F 04 50 */ lwz r3, 0x450(r31) /* 80291738 0028E698 38 63 00 04 */ addi r3, r3, 0x4 /* 8029173C 0028E69C 4B EA 00 F9 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd /* 80291740 0028E6A0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 80291744 0028E6A4 38 03 AC 48 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 80291748 0028E6A8 90 01 00 DC */ stw r0, 0xdc(r1) /* 8029174C 0028E6AC 48 00 00 C0 */ b lbl_8029180C AcceptScriptMsg_Open: /* 80291750 0028E6B0 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 80291754 0028E6B4 88 64 00 03 */ lbz r3, 0x3(r4) /* 80291758 0028E6B8 28 03 00 00 */ cmplwi r3, 0x0 /* 8029175C 0028E6BC 41 82 00 10 */ beq lbl_8029176C /* 80291760 0028E6C0 38 03 FF FF */ addi r0, r3, -0x1 /* 80291764 0028E6C4 54 00 06 3E */ clrlwi r0, r0, 24 /* 80291768 0028E6C8 48 00 00 08 */ b lbl_80291770 lbl_8029176C: /* 8029176C 0028E6CC 38 00 00 00 */ li r0, 0x0 lbl_80291770: /* 80291770 0028E6D0 98 04 00 03 */ stb r0, 0x3(r4) /* 80291774 0028E6D4 48 00 00 98 */ b lbl_8029180C AcceptScriptMsg_SetToZero: /* 80291778 0028E6D8 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 8029177C 0028E6DC 88 64 00 02 */ lbz r3, 0x2(r4) /* 80291780 0028E6E0 28 03 00 00 */ cmplwi r3, 0x0 /* 80291784 0028E6E4 41 82 00 10 */ beq lbl_80291794 /* 80291788 0028E6E8 38 03 FF FF */ addi r0, r3, -0x1 /* 8029178C 0028E6EC 54 00 06 3E */ clrlwi r0, r0, 24 /* 80291790 0028E6F0 48 00 00 08 */ b lvl_80291798 lbl_80291794: /* 80291794 0028E6F4 38 00 00 00 */ li r0, 0x0 lvl_80291798: /* 80291798 0028E6F8 98 04 00 02 */ stb r0, 0x2(r4) /* 8029179C 0028E6FC 48 00 00 70 */ b lbl_8029180C AcceptScriptMsg_StopAndReset: /* 802917A0 0028E700 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 802917A4 0028E704 88 64 00 01 */ lbz r3, 0x1(r4) /* 802917A8 0028E708 28 03 00 00 */ cmplwi r3, 0x0 /* 802917AC 0028E70C 41 82 00 10 */ beq lbl_802917BC /* 802917B0 0028E710 38 03 FF FF */ addi r0, r3, -0x1 /* 802917B4 0028E714 54 00 06 3E */ clrlwi r0, r0, 24 /* 802917B8 0028E718 48 00 00 08 */ b func_802917C0 lbl_802917BC: /* 802917BC 0028E71C 38 00 00 00 */ li r0, 0x0 func_802917C0: /* 802917C0 0028E720 98 04 00 01 */ stb r0, 0x1(r4) /* 802917C4 0028E724 48 00 00 48 */ b lbl_8029180C AcceptScriptMsg_UNKM18: /* 802917C8 0028E728 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 802917CC 0028E72C 88 64 00 00 */ lbz r3, 0x0(r4) /* 802917D0 0028E730 28 03 00 00 */ cmplwi r3, 0x0 /* 802917D4 0028E734 41 82 00 10 */ beq lbl_802917E4 /* 802917D8 0028E738 38 03 FF FF */ addi r0, r3, -0x1 /* 802917DC 0028E73C 54 00 06 3E */ clrlwi r0, r0, 24 /* 802917E0 0028E740 48 00 00 08 */ b func_802917E8 lbl_802917E4: /* 802917E4 0028E744 38 00 00 00 */ li r0, 0x0 func_802917E8: /* 802917E8 0028E748 98 04 00 00 */ stb r0, 0x0(r4) /* 802917EC 0028E74C 48 00 00 20 */ b lbl_8029180C AcceptScriptMsg_Default: /* 802917F0 0028E750 A0 14 00 00 */ lhz r0, 0x0(r20) /* 802917F4 0028E754 7F E3 FB 78 */ mr r3, r31 /* 802917F8 0028E758 7E A4 AB 78 */ mr r4, r21 /* 802917FC 0028E75C 7F C6 F3 78 */ mr r6, r30 /* 80291800 0028E760 B0 01 00 08 */ sth r0, 0x8(r1) /* 80291804 0028E764 38 A1 00 08 */ addi r5, r1, 0x8 /* 80291808 0028E768 4B F9 B4 41 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager lbl_8029180C: /* 8029180C 0028E76C BA 41 02 38 */ lmw r18, 0x238(r1) /* 80291810 0028E770 80 01 02 74 */ lwz r0, 0x274(r1) /* 80291814 0028E774 7C 08 03 A6 */ mtlr r0 /* 80291818 0028E778 38 21 02 70 */ addi r1, r1, 0x270 /* 8029181C 0028E77C 4E 80 00 20 */ blr .else .global AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 802908B0 0028D810 94 21 FD A0 */ stwu r1, -0x260(r1) /* 802908B4 0028D814 7C 08 02 A6 */ mflr r0 /* 802908B8 0028D818 90 01 02 64 */ stw r0, 0x264(r1) /* 802908BC 0028D81C BE 41 02 28 */ stmw r18, 0x228(r1) /* 802908C0 0028D820 7C 95 23 78 */ mr r21, r4 /* 802908C4 0028D824 28 15 00 2A */ cmplwi r21, 0x2a /* 802908C8 0028D828 7C 7F 1B 78 */ mr r31, r3 /* 802908CC 0028D82C 7C B4 2B 78 */ mr r20, r5 /* 802908D0 0028D830 7C DE 33 78 */ mr r30, r6 /* 802908D4 0028D834 41 81 0E 70 */ bgt AcceptScriptMsg_Default /* 802908D8 0028D838 3C A0 80 3F */ lis r5, AcceptScriptMsg_jumptable@ha /* 802908DC 0028D83C 56 A0 10 3A */ slwi r0, r21, 2 /* 802908E0 0028D840 38 A5 B7 BC */ addi r5, r5, AcceptScriptMsg_jumptable@l /* 802908E4 0028D844 7C 05 00 2E */ lwzx r0, r5, r0 /* 802908E8 0028D848 7C 09 03 A6 */ mtctr r0 /* 802908EC 0028D84C 4E 80 04 20 */ bctr AcceptScriptMsg_Registered: /* 802908F0 0028D850 A0 14 00 00 */ lhz r0, 0(r20) /* 802908F4 0028D854 38 A1 00 9C */ addi r5, r1, 0x9c /* 802908F8 0028D858 B0 01 00 9C */ sth r0, 0x9c(r1) /* 802908FC 0028D85C 4B F9 C2 D1 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290900 0028D860 7F C4 F3 78 */ mr r4, r30 /* 80290904 0028D864 38 61 00 98 */ addi r3, r1, 0x98 /* 80290908 0028D868 4B DB C7 D5 */ bl AllocateUniqueId__13CStateManagerFv /* 8029090C 0028D86C A0 01 00 98 */ lhz r0, 0x98(r1) /* 80290910 0028D870 7F E3 FB 78 */ mr r3, r31 /* 80290914 0028D874 7F C4 F3 78 */ mr r4, r30 /* 80290918 0028D878 38 A1 00 94 */ addi r5, r1, 0x94 /* 8029091C 0028D87C B0 1F 09 90 */ sth r0, 0x990(r31) /* 80290920 0028D880 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290924 0028D884 B0 01 00 94 */ sth r0, 0x94(r1) /* 80290928 0028D888 4B F9 81 85 */ bl sub_80228aac /* 8029092C 0028D88C 7F E3 FB 78 */ mr r3, r31 /* 80290930 0028D890 7F C4 F3 78 */ mr r4, r30 /* 80290934 0028D894 4B FF CB 2D */ bl sub_8028d460 /* 80290938 0028D898 80 7F 04 50 */ lwz r3, 0x450(r31) /* 8029093C 0028D89C 38 80 00 08 */ li r4, 8 /* 80290940 0028D8A0 4B EA A0 99 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType /* 80290944 0028D8A4 88 1F 04 02 */ lbz r0, 0x402(r31) /* 80290948 0028D8A8 38 60 00 00 */ li r3, 0 /* 8029094C 0028D8AC 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 80290950 0028D8B0 38 7F 0A 4C */ addi r3, r31, 0xa4c /* 80290954 0028D8B4 98 1F 04 02 */ stb r0, 0x402(r31) /* 80290958 0028D8B8 38 9F 00 34 */ addi r4, r31, 0x34 /* 8029095C 0028D8BC 48 08 21 E5 */ bl __as__12CTransform4fFRC12CTransform4f /* 80290960 0028D8C0 7F E3 FB 78 */ mr r3, r31 /* 80290964 0028D8C4 7F C4 F3 78 */ mr r4, r30 /* 80290968 0028D8C8 81 9F 00 00 */ lwz r12, 0(r31) /* 8029096C 0028D8CC 81 8C 00 34 */ lwz r12, 0x34(r12) /* 80290970 0028D8D0 7D 89 03 A6 */ mtctr r12 /* 80290974 0028D8D4 4E 80 04 21 */ bctrl /* 80290978 0028D8D8 C0 03 00 00 */ lfs f0, 0(r3) /* 8029097C 0028D8DC 7F C3 F3 78 */ mr r3, r30 /* 80290980 0028D8E0 38 81 00 90 */ addi r4, r1, 0x90 /* 80290984 0028D8E4 D0 1F 0A 98 */ stfs f0, 0xa98(r31) /* 80290988 0028D8E8 A0 1F 07 72 */ lhz r0, 0x772(r31) /* 8029098C 0028D8EC B0 01 00 8C */ sth r0, 0x8c(r1) /* 80290990 0028D8F0 B0 01 00 90 */ sth r0, 0x90(r1) /* 80290994 0028D8F4 4B DB BB E1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290998 0028D8F8 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 8029099C 0028D8FC 7C 72 1B 78 */ mr r18, r3 /* 802909A0 0028D900 7F C3 F3 78 */ mr r3, r30 /* 802909A4 0028D904 38 81 00 88 */ addi r4, r1, 0x88 /* 802909A8 0028D908 B0 01 00 88 */ sth r0, 0x88(r1) /* 802909AC 0028D90C 4B DB BB C9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 802909B0 0028D910 28 12 00 00 */ cmplwi r18, 0 /* 802909B4 0028D914 7C 73 1B 78 */ mr r19, r3 /* 802909B8 0028D918 41 82 00 14 */ beq lbl_802909CC /* 802909BC 0028D91C 7E 43 93 78 */ mr r3, r18 /* 802909C0 0028D920 7F C5 F3 78 */ mr r5, r30 /* 802909C4 0028D924 38 80 00 27 */ li r4, 0x27 /* 802909C8 0028D928 4B DC 35 B9 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_802909CC: /* 802909CC 0028D92C 28 13 00 00 */ cmplwi r19, 0 /* 802909D0 0028D930 41 82 00 14 */ beq lbl_802909E4 /* 802909D4 0028D934 7E 63 9B 78 */ mr r3, r19 /* 802909D8 0028D938 7F C5 F3 78 */ mr r5, r30 /* 802909DC 0028D93C 38 80 00 27 */ li r4, 0x27 /* 802909E0 0028D940 4B DC 35 A1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager lbl_802909E4: /* 802909E4 0028D944 38 7F 04 60 */ addi r3, r31, 0x460 /* 802909E8 0028D948 38 80 00 00 */ li r4, 0 /* 802909EC 0028D94C 4B FA 33 79 */ bl SetAutoResetImpulse__20CKnockBackControllerFb /* 802909F0 0028D950 7F E3 FB 78 */ mr r3, r31 /* 802909F4 0028D954 4B F9 88 55 */ bl sub_80229248 /* 802909F8 0028D958 48 00 0D 68 */ b lbl_80291760 AcceptScriptMsg_Activate: /* 802909FC 0028D95C A0 14 00 00 */ lhz r0, 0(r20) /* 80290A00 0028D960 38 A1 00 84 */ addi r5, r1, 0x84 /* 80290A04 0028D964 B0 01 00 84 */ sth r0, 0x84(r1) /* 80290A08 0028D968 4B F9 C1 C5 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290A0C 0028D96C 80 7F 0A 38 */ lwz r3, 0xa38(r31) /* 80290A10 0028D970 7F C4 F3 78 */ mr r4, r30 /* 80290A14 0028D974 38 A0 00 01 */ li r5, 1 /* 80290A18 0028D978 4B F1 68 E1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290A1C 0028D97C 80 7F 0A 9C */ lwz r3, 0xa9c(r31) /* 80290A20 0028D980 7F C4 F3 78 */ mr r4, r30 /* 80290A24 0028D984 38 A0 00 01 */ li r5, 1 /* 80290A28 0028D988 4B F1 68 D1 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290A2C 0028D98C 38 7F 04 60 */ addi r3, r31, 0x460 /* 80290A30 0028D990 38 80 00 00 */ li r4, 0 /* 80290A34 0028D994 4B FA 33 31 */ bl SetAutoResetImpulse__20CKnockBackControllerFb /* 80290A38 0028D998 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290A3C 0028D99C 7F C3 F3 78 */ mr r3, r30 /* 80290A40 0028D9A0 38 81 00 80 */ addi r4, r1, 0x80 /* 80290A44 0028D9A4 B0 01 00 80 */ sth r0, 0x80(r1) /* 80290A48 0028D9A8 4B DB BB 2D */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290A4C 0028D9AC 28 03 00 00 */ cmplwi r3, 0 /* 80290A50 0028D9B0 41 82 0D 10 */ beq lbl_80291760 /* 80290A54 0028D9B4 81 83 00 00 */ lwz r12, 0(r3) /* 80290A58 0028D9B8 38 80 00 01 */ li r4, 1 /* 80290A5C 0028D9BC 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80290A60 0028D9C0 7D 89 03 A6 */ mtctr r12 /* 80290A64 0028D9C4 4E 80 04 21 */ bctrl /* 80290A68 0028D9C8 48 00 0C F8 */ b lbl_80291760 AcceptScriptMsg_Deactivate: /* 80290A6C 0028D9CC A0 14 00 00 */ lhz r0, 0(r20) /* 80290A70 0028D9D0 38 A1 00 7C */ addi r5, r1, 0x7c /* 80290A74 0028D9D4 B0 01 00 7C */ sth r0, 0x7c(r1) /* 80290A78 0028D9D8 4B F9 C1 55 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290A7C 0028D9DC 80 7F 0A 38 */ lwz r3, 0xa38(r31) /* 80290A80 0028D9E0 7F C4 F3 78 */ mr r4, r30 /* 80290A84 0028D9E4 38 A0 00 00 */ li r5, 0 /* 80290A88 0028D9E8 4B F1 68 71 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290A8C 0028D9EC 80 7F 0A 9C */ lwz r3, 0xa9c(r31) /* 80290A90 0028D9F0 7F C4 F3 78 */ mr r4, r30 /* 80290A94 0028D9F4 38 A0 00 00 */ li r5, 0 /* 80290A98 0028D9F8 4B F1 68 61 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb /* 80290A9C 0028D9FC A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290AA0 0028DA00 7F C3 F3 78 */ mr r3, r30 /* 80290AA4 0028DA04 38 81 00 78 */ addi r4, r1, 0x78 /* 80290AA8 0028DA08 B0 01 00 78 */ sth r0, 0x78(r1) /* 80290AAC 0028DA0C 4B DB BA C9 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290AB0 0028DA10 28 03 00 00 */ cmplwi r3, 0 /* 80290AB4 0028DA14 41 82 0C AC */ beq lbl_80291760 /* 80290AB8 0028DA18 81 83 00 00 */ lwz r12, 0(r3) /* 80290ABC 0028DA1C 38 80 00 00 */ li r4, 0 /* 80290AC0 0028DA20 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80290AC4 0028DA24 7D 89 03 A6 */ mtctr r12 /* 80290AC8 0028DA28 4E 80 04 21 */ bctrl /* 80290ACC 0028DA2C 48 00 0C 94 */ b lbl_80291760 AcceptScriptMsg_Deleted: /* 80290AD0 0028DA30 A0 14 00 00 */ lhz r0, 0(r20) /* 80290AD4 0028DA34 38 A1 00 74 */ addi r5, r1, 0x74 /* 80290AD8 0028DA38 B0 01 00 74 */ sth r0, 0x74(r1) /* 80290ADC 0028DA3C 4B F9 C0 F1 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290AE0 0028DA40 80 7F 0A 38 */ lwz r3, 0xa38(r31) /* 80290AE4 0028DA44 7F C4 F3 78 */ mr r4, r30 /* 80290AE8 0028DA48 4B F1 68 DD */ bl Destroy__22CCollisionActorManagerCFR13CStateManager /* 80290AEC 0028DA4C 80 7F 0A 9C */ lwz r3, 0xa9c(r31) /* 80290AF0 0028DA50 7F C4 F3 78 */ mr r4, r30 /* 80290AF4 0028DA54 4B F1 68 D1 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager /* 80290AF8 0028DA58 A0 1F 09 90 */ lhz r0, 0x990(r31) /* 80290AFC 0028DA5C 7F C3 F3 78 */ mr r3, r30 /* 80290B00 0028DA60 38 81 00 70 */ addi r4, r1, 0x70 /* 80290B04 0028DA64 B0 01 00 70 */ sth r0, 0x70(r1) /* 80290B08 0028DA68 4B DB B7 65 */ bl FreeScriptObject__13CStateManagerF9TUniqueId /* 80290B0C 0028DA6C 48 00 0C 54 */ b lbl_80291760 AcceptScriptMsg_Alert: /* 80290B10 0028DA70 A0 14 00 00 */ lhz r0, 0(r20) /* 80290B14 0028DA74 38 A1 00 6C */ addi r5, r1, 0x6c /* 80290B18 0028DA78 B0 01 00 6C */ sth r0, 0x6c(r1) /* 80290B1C 0028DA7C 4B F9 C0 B1 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290B20 0028DA80 48 00 0C 40 */ b lbl_80291760 AcceptScriptMsg_InitializedInArea: /* 80290B24 0028DA84 A0 14 00 00 */ lhz r0, 0(r20) /* 80290B28 0028DA88 38 A1 00 68 */ addi r5, r1, 0x68 /* 80290B2C 0028DA8C B0 01 00 68 */ sth r0, 0x68(r1) /* 80290B30 0028DA90 4B F9 C0 9D */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 80290B34 0028DA94 83 1F 00 24 */ lwz r24, 0x24(r31) /* 80290B38 0028DA98 3B 21 02 18 */ addi r25, r1, 0x218 /* 80290B3C 0028DA9C 3B 41 02 04 */ addi r26, r1, 0x204 /* 80290B40 0028DAA0 3B 61 01 D4 */ addi r27, r1, 0x1d4 /* 80290B44 0028DAA4 3A E1 01 C0 */ addi r23, r1, 0x1c0 /* 80290B48 0028DAA8 3B A0 00 00 */ li r29, 0 /* 80290B4C 0028DAAC 3B 80 00 00 */ li r28, 0 /* 80290B50 0028DAB0 48 00 06 80 */ b lbl_802911D0 lbl_80290B54: /* 80290B54 0028DAB4 80 1F 00 2C */ lwz r0, 0x2c(r31) /* 80290B58 0028DAB8 7F C4 F3 78 */ mr r4, r30 /* 80290B5C 0028DABC 38 61 00 64 */ addi r3, r1, 0x64 /* 80290B60 0028DAC0 38 A1 00 D0 */ addi r5, r1, 0xd0 /* 80290B64 0028DAC4 7E 60 E2 14 */ add r19, r0, r28 /* 80290B68 0028DAC8 80 13 00 08 */ lwz r0, 8(r19) /* 80290B6C 0028DACC 90 01 00 D0 */ stw r0, 0xd0(r1) /* 80290B70 0028DAD0 4B DB 73 AD */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 80290B74 0028DAD4 80 13 00 00 */ lwz r0, 0(r19) /* 80290B78 0028DAD8 A0 81 00 64 */ lhz r4, 0x64(r1) /* 80290B7C 0028DADC 2C 00 00 0A */ cmpwi r0, 0xa /* 80290B80 0028DAE0 B0 81 00 A8 */ sth r4, 0xa8(r1) /* 80290B84 0028DAE4 40 82 06 44 */ bne lbl_802911C8 /* 80290B88 0028DAE8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80290B8C 0028DAEC 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 80290B90 0028DAF0 7C 03 00 40 */ cmplw r3, r0 /* 80290B94 0028DAF4 41 82 06 34 */ beq lbl_802911C8 /* 80290B98 0028DAF8 80 13 00 04 */ lwz r0, 4(r19) /* 80290B9C 0028DAFC 2C 00 00 01 */ cmpwi r0, 1 /* 80290BA0 0028DB00 40 82 03 D0 */ bne lbl_80290F70 /* 80290BA4 0028DB04 B0 81 00 60 */ sth r4, 0x60(r1) /* 80290BA8 0028DB08 7F C3 F3 78 */ mr r3, r30 /* 80290BAC 0028DB0C 38 81 00 60 */ addi r4, r1, 0x60 /* 80290BB0 0028DB10 4B DB B9 C5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290BB4 0028DB14 7C 64 1B 78 */ mr r4, r3 /* 80290BB8 0028DB18 38 61 01 0C */ addi r3, r1, 0x10c /* 80290BBC 0028DB1C 4B E1 92 21 */ bl "__ct__27TCastToPtr<13CScriptEffect>FP7CEntity" /* 80290BC0 0028DB20 80 83 00 04 */ lwz r4, 4(r3) /* 80290BC4 0028DB24 28 04 00 00 */ cmplwi r4, 0 /* 80290BC8 0028DB28 41 82 00 88 */ beq lbl_80290C50 /* 80290BCC 0028DB2C A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290BD0 0028DB30 7F 23 CB 78 */ mr r3, r25 /* 80290BD4 0028DB34 38 84 00 10 */ addi r4, r4, 0x10 /* 80290BD8 0028DB38 B0 01 02 14 */ sth r0, 0x214(r1) /* 80290BDC 0028DB3C 48 0A D5 85 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290BE0 0028DB40 80 1F 09 BC */ lwz r0, 0x9bc(r31) /* 80290BE4 0028DB44 80 BF 09 C0 */ lwz r5, 0x9c0(r31) /* 80290BE8 0028DB48 7C 00 28 00 */ cmpw r0, r5 /* 80290BEC 0028DB4C 41 80 00 1C */ blt lbl_80290C08 /* 80290BF0 0028DB50 2C 05 00 00 */ cmpwi r5, 0 /* 80290BF4 0028DB54 38 7F 09 B8 */ addi r3, r31, 0x9b8 /* 80290BF8 0028DB58 38 80 00 04 */ li r4, 4 /* 80290BFC 0028DB5C 41 82 00 08 */ beq lbl_80290C04 /* 80290C00 0028DB60 54 A4 08 3C */ slwi r4, r5, 1 lbl_80290C04: /* 80290C04 0028DB64 48 00 17 E5 */ bl sub_802923e8 lbl_80290C08: /* 80290C08 0028DB68 80 1F 09 BC */ lwz r0, 0x9bc(r31) /* 80290C0C 0028DB6C 80 7F 09 C4 */ lwz r3, 0x9c4(r31) /* 80290C10 0028DB70 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80290C14 0028DB74 7C A3 02 15 */ add. r5, r3, r0 /* 80290C18 0028DB78 41 82 00 18 */ beq lbl_80290C30 /* 80290C1C 0028DB7C A0 01 02 14 */ lhz r0, 0x214(r1) /* 80290C20 0028DB80 7F 24 CB 78 */ mr r4, r25 /* 80290C24 0028DB84 38 65 00 04 */ addi r3, r5, 4 /* 80290C28 0028DB88 B0 05 00 00 */ sth r0, 0(r5) /* 80290C2C 0028DB8C 48 0A D5 35 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80290C30: /* 80290C30 0028DB90 80 7F 09 BC */ lwz r3, 0x9bc(r31) /* 80290C34 0028DB94 28 19 00 00 */ cmplwi r25, 0 /* 80290C38 0028DB98 38 03 00 01 */ addi r0, r3, 1 /* 80290C3C 0028DB9C 90 1F 09 BC */ stw r0, 0x9bc(r31) /* 80290C40 0028DBA0 41 82 05 88 */ beq lbl_802911C8 /* 80290C44 0028DBA4 7F 23 CB 78 */ mr r3, r25 /* 80290C48 0028DBA8 48 0A CE 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80290C4C 0028DBAC 48 00 05 7C */ b lbl_802911C8 lbl_80290C50: /* 80290C50 0028DBB0 A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290C54 0028DBB4 7F C3 F3 78 */ mr r3, r30 /* 80290C58 0028DBB8 38 81 00 5C */ addi r4, r1, 0x5c /* 80290C5C 0028DBBC B0 01 00 5C */ sth r0, 0x5c(r1) /* 80290C60 0028DBC0 4B DB B9 15 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290C64 0028DBC4 7C 64 1B 78 */ mr r4, r3 /* 80290C68 0028DBC8 38 61 01 04 */ addi r3, r1, 0x104 /* 80290C6C 0028DBCC 4B E1 81 A9 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" /* 80290C70 0028DBD0 82 C3 00 04 */ lwz r22, 4(r3) /* 80290C74 0028DBD4 28 16 00 00 */ cmplwi r22, 0 /* 80290C78 0028DBD8 41 82 02 48 */ beq lbl_80290EC0 /* 80290C7C 0028DBDC A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290C80 0028DBE0 7F 43 D3 78 */ mr r3, r26 /* 80290C84 0028DBE4 38 96 00 10 */ addi r4, r22, 0x10 /* 80290C88 0028DBE8 B0 01 02 00 */ sth r0, 0x200(r1) /* 80290C8C 0028DBEC 48 0A D4 D5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290C90 0028DBF0 80 1F 09 E0 */ lwz r0, 0x9e0(r31) /* 80290C94 0028DBF4 80 BF 09 E4 */ lwz r5, 0x9e4(r31) /* 80290C98 0028DBF8 7C 00 28 00 */ cmpw r0, r5 /* 80290C9C 0028DBFC 41 80 00 1C */ blt lbl_80290CB8 /* 80290CA0 0028DC00 2C 05 00 00 */ cmpwi r5, 0 /* 80290CA4 0028DC04 38 7F 09 DC */ addi r3, r31, 0x9dc /* 80290CA8 0028DC08 38 80 00 04 */ li r4, 4 /* 80290CAC 0028DC0C 41 82 00 08 */ beq lbl_80290CB4 /* 80290CB0 0028DC10 54 A4 08 3C */ slwi r4, r5, 1 lbl_80290CB4: /* 80290CB4 0028DC14 48 00 17 35 */ bl sub_802923e8 lbl_80290CB8: /* 80290CB8 0028DC18 80 1F 09 E0 */ lwz r0, 0x9e0(r31) /* 80290CBC 0028DC1C 80 7F 09 E8 */ lwz r3, 0x9e8(r31) /* 80290CC0 0028DC20 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80290CC4 0028DC24 7C A3 02 15 */ add. r5, r3, r0 /* 80290CC8 0028DC28 41 82 00 18 */ beq lbl_80290CE0 /* 80290CCC 0028DC2C A0 01 02 00 */ lhz r0, 0x200(r1) /* 80290CD0 0028DC30 7F 44 D3 78 */ mr r4, r26 /* 80290CD4 0028DC34 38 65 00 04 */ addi r3, r5, 4 /* 80290CD8 0028DC38 B0 05 00 00 */ sth r0, 0(r5) /* 80290CDC 0028DC3C 48 0A D4 85 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80290CE0: /* 80290CE0 0028DC40 80 7F 09 E0 */ lwz r3, 0x9e0(r31) /* 80290CE4 0028DC44 28 1A 00 00 */ cmplwi r26, 0 /* 80290CE8 0028DC48 38 03 00 01 */ addi r0, r3, 1 /* 80290CEC 0028DC4C 90 1F 09 E0 */ stw r0, 0x9e0(r31) /* 80290CF0 0028DC50 41 82 00 0C */ beq lbl_80290CFC /* 80290CF4 0028DC54 7F 43 D3 78 */ mr r3, r26 /* 80290CF8 0028DC58 48 0A CD E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80290CFC: /* 80290CFC 0028DC5C 7E C3 B3 78 */ mr r3, r22 /* 80290D00 0028DC60 7F C5 F3 78 */ mr r5, r30 /* 80290D04 0028DC64 38 80 00 28 */ li r4, 0x28 /* 80290D08 0028DC68 4B DC 36 49 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290D0C 0028DC6C 7E C3 B3 78 */ mr r3, r22 /* 80290D10 0028DC70 7F C5 F3 78 */ mr r5, r30 /* 80290D14 0028DC74 38 80 00 29 */ li r4, 0x29 /* 80290D18 0028DC78 4B DC 36 39 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290D1C 0028DC7C 7E C3 B3 78 */ mr r3, r22 /* 80290D20 0028DC80 7F C5 F3 78 */ mr r5, r30 /* 80290D24 0028DC84 38 80 00 21 */ li r4, 0x21 /* 80290D28 0028DC88 4B DC 36 29 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290D2C 0028DC8C 7E C3 B3 78 */ mr r3, r22 /* 80290D30 0028DC90 7F C5 F3 78 */ mr r5, r30 /* 80290D34 0028DC94 38 80 00 27 */ li r4, 0x27 /* 80290D38 0028DC98 4B DC 32 49 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager /* 80290D3C 0028DC9C 7E C3 B3 78 */ mr r3, r22 /* 80290D40 0028DCA0 4B DC 2B 7D */ bl GetMaterialFilter__6CActorCFv /* 80290D44 0028DCA4 80 AD 99 8C */ lwz r5, lbl_805A854C@sda21(r13) /* 80290D48 0028DCA8 38 80 00 01 */ li r4, 1 /* 80290D4C 0028DCAC 82 A3 00 08 */ lwz r21, 8(r3) /* 80290D50 0028DCB0 82 83 00 0C */ lwz r20, 0xc(r3) /* 80290D54 0028DCB4 38 60 00 00 */ li r3, 0 /* 80290D58 0028DCB8 48 0F 91 9D */ bl __shl2i /* 80290D5C 0028DCBC 80 AD 99 90 */ lwz r5, lbl_805A8550@sda21(r13) /* 80290D60 0028DCC0 7C 93 23 78 */ mr r19, r4 /* 80290D64 0028DCC4 7C 72 1B 78 */ mr r18, r3 /* 80290D68 0028DCC8 38 60 00 00 */ li r3, 0 /* 80290D6C 0028DCCC 38 80 00 01 */ li r4, 1 /* 80290D70 0028DCD0 48 0F 91 85 */ bl __shl2i /* 80290D74 0028DCD4 80 AD 99 94 */ lwz r5, lbl_805A8554@sda21(r13) /* 80290D78 0028DCD8 7E 73 23 78 */ or r19, r19, r4 /* 80290D7C 0028DCDC 7E 52 1B 78 */ or r18, r18, r3 /* 80290D80 0028DCE0 38 60 00 00 */ li r3, 0 /* 80290D84 0028DCE4 38 80 00 01 */ li r4, 1 /* 80290D88 0028DCE8 48 0F 91 6D */ bl __shl2i /* 80290D8C 0028DCEC 7E 52 1B 78 */ or r18, r18, r3 /* 80290D90 0028DCF0 7E 73 23 78 */ or r19, r19, r4 /* 80290D94 0028DCF4 7F E3 FB 78 */ mr r3, r31 /* 80290D98 0028DCF8 7E 94 9B 78 */ or r20, r20, r19 /* 80290D9C 0028DCFC 7E B5 93 78 */ or r21, r21, r18 /* 80290DA0 0028DD00 4B DC 2B 1D */ bl GetMaterialFilter__6CActorCFv /* 80290DA4 0028DD04 80 A3 00 00 */ lwz r5, 0(r3) /* 80290DA8 0028DD08 38 00 00 03 */ li r0, 3 /* 80290DAC 0028DD0C 80 C3 00 04 */ lwz r6, 4(r3) /* 80290DB0 0028DD10 7E C3 B3 78 */ mr r3, r22 /* 80290DB4 0028DD14 38 81 01 E8 */ addi r4, r1, 0x1e8 /* 80290DB8 0028DD18 90 C1 01 EC */ stw r6, 0x1ec(r1) /* 80290DBC 0028DD1C 90 A1 01 E8 */ stw r5, 0x1e8(r1) /* 80290DC0 0028DD20 92 81 01 F4 */ stw r20, 0x1f4(r1) /* 80290DC4 0028DD24 92 A1 01 F0 */ stw r21, 0x1f0(r1) /* 80290DC8 0028DD28 90 01 01 F8 */ stw r0, 0x1f8(r1) /* 80290DCC 0028DD2C 4B DC 2A D5 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter /* 80290DD0 0028DD30 7E C3 B3 78 */ mr r3, r22 /* 80290DD4 0028DD34 81 96 00 00 */ lwz r12, 0(r22) /* 80290DD8 0028DD38 81 8C 00 38 */ lwz r12, 0x38(r12) /* 80290DDC 0028DD3C 7D 89 03 A6 */ mtctr r12 /* 80290DE0 0028DD40 4E 80 04 21 */ bctrl /* 80290DE4 0028DD44 80 83 00 00 */ lwz r4, 0(r3) /* 80290DE8 0028DD48 80 03 00 04 */ lwz r0, 4(r3) /* 80290DEC 0028DD4C 90 9F 0A E4 */ stw r4, 0xae4(r31) /* 80290DF0 0028DD50 90 1F 0A E8 */ stw r0, 0xae8(r31) /* 80290DF4 0028DD54 80 83 00 08 */ lwz r4, 8(r3) /* 80290DF8 0028DD58 80 03 00 0C */ lwz r0, 0xc(r3) /* 80290DFC 0028DD5C 90 9F 0A EC */ stw r4, 0xaec(r31) /* 80290E00 0028DD60 90 1F 0A F0 */ stw r0, 0xaf0(r31) /* 80290E04 0028DD64 80 83 00 10 */ lwz r4, 0x10(r3) /* 80290E08 0028DD68 80 03 00 14 */ lwz r0, 0x14(r3) /* 80290E0C 0028DD6C 90 9F 0A F4 */ stw r4, 0xaf4(r31) /* 80290E10 0028DD70 90 1F 0A F8 */ stw r0, 0xaf8(r31) /* 80290E14 0028DD74 80 83 00 18 */ lwz r4, 0x18(r3) /* 80290E18 0028DD78 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80290E1C 0028DD7C 90 9F 0A FC */ stw r4, 0xafc(r31) /* 80290E20 0028DD80 90 1F 0B 00 */ stw r0, 0xb00(r31) /* 80290E24 0028DD84 80 83 00 20 */ lwz r4, 0x20(r3) /* 80290E28 0028DD88 80 03 00 24 */ lwz r0, 0x24(r3) /* 80290E2C 0028DD8C 90 9F 0B 04 */ stw r4, 0xb04(r31) /* 80290E30 0028DD90 90 1F 0B 08 */ stw r0, 0xb08(r31) /* 80290E34 0028DD94 80 83 00 28 */ lwz r4, 0x28(r3) /* 80290E38 0028DD98 80 03 00 2C */ lwz r0, 0x2c(r3) /* 80290E3C 0028DD9C 90 9F 0B 0C */ stw r4, 0xb0c(r31) /* 80290E40 0028DDA0 90 1F 0B 10 */ stw r0, 0xb10(r31) /* 80290E44 0028DDA4 80 83 00 30 */ lwz r4, 0x30(r3) /* 80290E48 0028DDA8 80 03 00 34 */ lwz r0, 0x34(r3) /* 80290E4C 0028DDAC 90 9F 0B 14 */ stw r4, 0xb14(r31) /* 80290E50 0028DDB0 90 1F 0B 18 */ stw r0, 0xb18(r31) /* 80290E54 0028DDB4 80 03 00 38 */ lwz r0, 0x38(r3) /* 80290E58 0028DDB8 90 1F 0B 1C */ stw r0, 0xb1c(r31) /* 80290E5C 0028DDBC 80 83 00 3C */ lwz r4, 0x3c(r3) /* 80290E60 0028DDC0 80 03 00 40 */ lwz r0, 0x40(r3) /* 80290E64 0028DDC4 90 9F 0B 20 */ stw r4, 0xb20(r31) /* 80290E68 0028DDC8 90 1F 0B 24 */ stw r0, 0xb24(r31) /* 80290E6C 0028DDCC 80 83 00 44 */ lwz r4, 0x44(r3) /* 80290E70 0028DDD0 80 03 00 48 */ lwz r0, 0x48(r3) /* 80290E74 0028DDD4 90 9F 0B 28 */ stw r4, 0xb28(r31) /* 80290E78 0028DDD8 90 1F 0B 2C */ stw r0, 0xb2c(r31) /* 80290E7C 0028DDDC 80 83 00 4C */ lwz r4, 0x4c(r3) /* 80290E80 0028DDE0 80 03 00 50 */ lwz r0, 0x50(r3) /* 80290E84 0028DDE4 90 9F 0B 30 */ stw r4, 0xb30(r31) /* 80290E88 0028DDE8 90 1F 0B 34 */ stw r0, 0xb34(r31) /* 80290E8C 0028DDEC 80 83 00 54 */ lwz r4, 0x54(r3) /* 80290E90 0028DDF0 80 03 00 58 */ lwz r0, 0x58(r3) /* 80290E94 0028DDF4 90 9F 0B 38 */ stw r4, 0xb38(r31) /* 80290E98 0028DDF8 90 1F 0B 3C */ stw r0, 0xb3c(r31) /* 80290E9C 0028DDFC 80 03 00 5C */ lwz r0, 0x5c(r3) /* 80290EA0 0028DE00 90 1F 0B 40 */ stw r0, 0xb40(r31) /* 80290EA4 0028DE04 80 03 00 60 */ lwz r0, 0x60(r3) /* 80290EA8 0028DE08 90 1F 0B 44 */ stw r0, 0xb44(r31) /* 80290EAC 0028DE0C 80 03 00 64 */ lwz r0, 0x64(r3) /* 80290EB0 0028DE10 90 1F 0B 48 */ stw r0, 0xb48(r31) /* 80290EB4 0028DE14 80 16 00 B8 */ lwz r0, 0xb8(r22) /* 80290EB8 0028DE18 90 1F 0B 54 */ stw r0, 0xb54(r31) /* 80290EBC 0028DE1C 48 00 03 0C */ b lbl_802911C8 lbl_80290EC0: /* 80290EC0 0028DE20 A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290EC4 0028DE24 7F C3 F3 78 */ mr r3, r30 /* 80290EC8 0028DE28 38 81 00 58 */ addi r4, r1, 0x58 /* 80290ECC 0028DE2C B0 01 00 58 */ sth r0, 0x58(r1) /* 80290ED0 0028DE30 4B DB B6 A5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290ED4 0028DE34 7C 64 1B 78 */ mr r4, r3 /* 80290ED8 0028DE38 38 61 00 FC */ addi r3, r1, 0xfc /* 80290EDC 0028DE3C 4B E1 75 FD */ bl "__ct__26TCastToPtr<12CScriptSound>FP7CEntity" /* 80290EE0 0028DE40 80 83 00 04 */ lwz r4, 4(r3) /* 80290EE4 0028DE44 28 04 00 00 */ cmplwi r4, 0 /* 80290EE8 0028DE48 41 82 02 E0 */ beq lbl_802911C8 /* 80290EEC 0028DE4C A0 01 00 A8 */ lhz r0, 0xa8(r1) /* 80290EF0 0028DE50 7F 63 DB 78 */ mr r3, r27 /* 80290EF4 0028DE54 38 84 00 10 */ addi r4, r4, 0x10 /* 80290EF8 0028DE58 B0 01 01 D0 */ sth r0, 0x1d0(r1) /* 80290EFC 0028DE5C 48 0A D2 65 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 80290F00 0028DE60 80 1F 0A A4 */ lwz r0, 0xaa4(r31) /* 80290F04 0028DE64 80 BF 0A A8 */ lwz r5, 0xaa8(r31) /* 80290F08 0028DE68 7C 00 28 00 */ cmpw r0, r5 /* 80290F0C 0028DE6C 41 80 00 1C */ blt lbl_80290F28 /* 80290F10 0028DE70 2C 05 00 00 */ cmpwi r5, 0 /* 80290F14 0028DE74 38 7F 0A A0 */ addi r3, r31, 0xaa0 /* 80290F18 0028DE78 38 80 00 04 */ li r4, 4 /* 80290F1C 0028DE7C 41 82 00 08 */ beq lbl_80290F24 /* 80290F20 0028DE80 54 A4 08 3C */ slwi r4, r5, 1 lbl_80290F24: /* 80290F24 0028DE84 48 00 14 C5 */ bl sub_802923e8 lbl_80290F28: /* 80290F28 0028DE88 80 1F 0A A4 */ lwz r0, 0xaa4(r31) /* 80290F2C 0028DE8C 80 7F 0A AC */ lwz r3, 0xaac(r31) /* 80290F30 0028DE90 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80290F34 0028DE94 7C A3 02 15 */ add. r5, r3, r0 /* 80290F38 0028DE98 41 82 00 18 */ beq lbl_80290F50 /* 80290F3C 0028DE9C A0 01 01 D0 */ lhz r0, 0x1d0(r1) /* 80290F40 0028DEA0 7F 64 DB 78 */ mr r4, r27 /* 80290F44 0028DEA4 38 65 00 04 */ addi r3, r5, 4 /* 80290F48 0028DEA8 B0 05 00 00 */ sth r0, 0(r5) /* 80290F4C 0028DEAC 48 0A D2 15 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_80290F50: /* 80290F50 0028DEB0 80 7F 0A A4 */ lwz r3, 0xaa4(r31) /* 80290F54 0028DEB4 28 1B 00 00 */ cmplwi r27, 0 /* 80290F58 0028DEB8 38 03 00 01 */ addi r0, r3, 1 /* 80290F5C 0028DEBC 90 1F 0A A4 */ stw r0, 0xaa4(r31) /* 80290F60 0028DEC0 41 82 02 68 */ beq lbl_802911C8 /* 80290F64 0028DEC4 7F 63 DB 78 */ mr r3, r27 /* 80290F68 0028DEC8 48 0A CB 79 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 80290F6C 0028DECC 48 00 02 5C */ b lbl_802911C8 lbl_80290F70: /* 80290F70 0028DED0 2C 00 00 06 */ cmpwi r0, 6 /* 80290F74 0028DED4 40 82 02 54 */ bne lbl_802911C8 /* 80290F78 0028DED8 B0 81 00 54 */ sth r4, 0x54(r1) /* 80290F7C 0028DEDC 7F C3 F3 78 */ mr r3, r30 /* 80290F80 0028DEE0 38 81 00 54 */ addi r4, r1, 0x54 /* 80290F84 0028DEE4 4B DB B5 F1 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80290F88 0028DEE8 7C 64 1B 78 */ mr r4, r3 /* 80290F8C 0028DEEC 38 61 00 F4 */ addi r3, r1, 0xf4 /* 80290F90 0028DEF0 4B E1 55 BD */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity" /* 80290F94 0028DEF4 82 C3 00 04 */ lwz r22, 4(r3) /* 80290F98 0028DEF8 28 16 00 00 */ cmplwi r22, 0 /* 80290F9C 0028DEFC 41 82 02 2C */ beq lbl_802911C8 /* 80290FA0 0028DF00 82 96 00 24 */ lwz r20, 0x24(r22) /* 80290FA4 0028DF04 38 00 00 00 */ li r0, 0 /* 80290FA8 0028DF08 38 61 01 14 */ addi r3, r1, 0x114 /* 80290FAC 0028DF0C 38 80 00 03 */ li r4, 3 /* 80290FB0 0028DF10 90 01 01 18 */ stw r0, 0x118(r1) /* 80290FB4 0028DF14 90 01 01 1C */ stw r0, 0x11c(r1) /* 80290FB8 0028DF18 90 01 01 20 */ stw r0, 0x120(r1) /* 80290FBC 0028DF1C 4B D7 B4 4D */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" /* 80290FC0 0028DF20 3A A0 00 00 */ li r21, 0 /* 80290FC4 0028DF24 3A 60 00 00 */ li r19, 0 /* 80290FC8 0028DF28 48 00 00 CC */ b lbl_80291094 lbl_80290FCC: /* 80290FCC 0028DF2C 80 B6 00 2C */ lwz r5, 0x2c(r22) /* 80290FD0 0028DF30 38 13 00 08 */ addi r0, r19, 8 /* 80290FD4 0028DF34 7F C4 F3 78 */ mr r4, r30 /* 80290FD8 0028DF38 38 61 00 50 */ addi r3, r1, 0x50 /* 80290FDC 0028DF3C 7C 05 00 2E */ lwzx r0, r5, r0 /* 80290FE0 0028DF40 38 A1 00 CC */ addi r5, r1, 0xcc /* 80290FE4 0028DF44 90 01 00 CC */ stw r0, 0xcc(r1) /* 80290FE8 0028DF48 4B DB 6F 35 */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 80290FEC 0028DF4C A0 01 00 50 */ lhz r0, 0x50(r1) /* 80290FF0 0028DF50 7F C3 F3 78 */ mr r3, r30 /* 80290FF4 0028DF54 38 81 00 4C */ addi r4, r1, 0x4c /* 80290FF8 0028DF58 B0 01 00 A4 */ sth r0, 0xa4(r1) /* 80290FFC 0028DF5C B0 01 00 4C */ sth r0, 0x4c(r1) /* 80291000 0028DF60 4B DB B5 75 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80291004 0028DF64 7C 64 1B 78 */ mr r4, r3 /* 80291008 0028DF68 38 61 00 EC */ addi r3, r1, 0xec /* 8029100C 0028DF6C 4B E1 7E 09 */ bl "__ct__29TCastToPtr<15CScriptPlatform>FP7CEntity" /* 80291010 0028DF70 82 43 00 04 */ lwz r18, 4(r3) /* 80291014 0028DF74 28 12 00 00 */ cmplwi r18, 0 /* 80291018 0028DF78 41 82 00 74 */ beq lbl_8029108C /* 8029101C 0028DF7C 7E 43 93 78 */ mr r3, r18 /* 80291020 0028DF80 7F C5 F3 78 */ mr r5, r30 /* 80291024 0028DF84 38 80 00 28 */ li r4, 0x28 /* 80291028 0028DF88 4B DC 33 29 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8029102C 0028DF8C 7E 43 93 78 */ mr r3, r18 /* 80291030 0028DF90 7F C5 F3 78 */ mr r5, r30 /* 80291034 0028DF94 38 80 00 29 */ li r4, 0x29 /* 80291038 0028DF98 4B DC 33 19 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager /* 8029103C 0028DF9C 80 01 01 18 */ lwz r0, 0x118(r1) /* 80291040 0028DFA0 80 A1 01 1C */ lwz r5, 0x11c(r1) /* 80291044 0028DFA4 7C 00 28 00 */ cmpw r0, r5 /* 80291048 0028DFA8 41 80 00 1C */ blt lbl_80291064 /* 8029104C 0028DFAC 2C 05 00 00 */ cmpwi r5, 0 /* 80291050 0028DFB0 38 61 01 14 */ addi r3, r1, 0x114 /* 80291054 0028DFB4 38 80 00 04 */ li r4, 4 /* 80291058 0028DFB8 41 82 00 08 */ beq lbl_80291060 /* 8029105C 0028DFBC 54 A4 08 3C */ slwi r4, r5, 1 lbl_80291060: /* 80291060 0028DFC0 4B D7 B3 A9 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" lbl_80291064: /* 80291064 0028DFC4 80 01 01 18 */ lwz r0, 0x118(r1) /* 80291068 0028DFC8 80 61 01 20 */ lwz r3, 0x120(r1) /* 8029106C 0028DFCC 54 00 08 3C */ slwi r0, r0, 1 /* 80291070 0028DFD0 7C 63 02 15 */ add. r3, r3, r0 /* 80291074 0028DFD4 41 82 00 0C */ beq lbl_80291080 /* 80291078 0028DFD8 A0 01 00 A4 */ lhz r0, 0xa4(r1) /* 8029107C 0028DFDC B0 03 00 00 */ sth r0, 0(r3) lbl_80291080: /* 80291080 0028DFE0 80 61 01 18 */ lwz r3, 0x118(r1) /* 80291084 0028DFE4 38 03 00 01 */ addi r0, r3, 1 /* 80291088 0028DFE8 90 01 01 18 */ stw r0, 0x118(r1) lbl_8029108C: /* 8029108C 0028DFEC 3A B5 00 01 */ addi r21, r21, 1 /* 80291090 0028DFF0 3A 73 00 0C */ addi r19, r19, 0xc lbl_80291094: /* 80291094 0028DFF4 7C 15 A0 40 */ cmplw r21, r20 /* 80291098 0028DFF8 41 80 FF 34 */ blt lbl_80290FCC /* 8029109C 0028DFFC 80 61 01 18 */ lwz r3, 0x118(r1) /* 802910A0 0028E000 A0 81 00 A8 */ lhz r4, 0xa8(r1) /* 802910A4 0028E004 80 01 01 1C */ lwz r0, 0x11c(r1) /* 802910A8 0028E008 2C 03 00 00 */ cmpwi r3, 0 /* 802910AC 0028E00C B0 81 01 BC */ sth r4, 0x1bc(r1) /* 802910B0 0028E010 90 61 01 C4 */ stw r3, 0x1c4(r1) /* 802910B4 0028E014 90 01 01 C8 */ stw r0, 0x1c8(r1) /* 802910B8 0028E018 40 82 00 18 */ bne lbl_802910D0 /* 802910BC 0028E01C 2C 00 00 00 */ cmpwi r0, 0 /* 802910C0 0028E020 40 82 00 10 */ bne lbl_802910D0 /* 802910C4 0028E024 38 00 00 00 */ li r0, 0 /* 802910C8 0028E028 90 01 01 CC */ stw r0, 0x1cc(r1) /* 802910CC 0028E02C 48 00 00 68 */ b lbl_80291134 lbl_802910D0: /* 802910D0 0028E030 80 01 01 C8 */ lwz r0, 0x1c8(r1) /* 802910D4 0028E034 54 03 08 3D */ rlwinm. r3, r0, 1, 0, 0x1e /* 802910D8 0028E038 40 82 00 10 */ bne lbl_802910E8 /* 802910DC 0028E03C 38 00 00 00 */ li r0, 0 /* 802910E0 0028E040 90 01 01 CC */ stw r0, 0x1cc(r1) /* 802910E4 0028E044 48 00 00 1C */ b lbl_80291100 lbl_802910E8: /* 802910E8 0028E048 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 802910EC 0028E04C 38 A0 00 00 */ li r5, 0 /* 802910F0 0028E050 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 802910F4 0028E054 38 84 00 C9 */ addi r4, r4, 0xc9 /* 802910F8 0028E058 48 08 47 21 */ bl __nwa__FUlPCcPCc /* 802910FC 0028E05C 90 61 01 CC */ stw r3, 0x1cc(r1) lbl_80291100: /* 80291100 0028E060 80 01 01 C4 */ lwz r0, 0x1c4(r1) /* 80291104 0028E064 80 81 01 20 */ lwz r4, 0x120(r1) /* 80291108 0028E068 80 61 01 CC */ lwz r3, 0x1cc(r1) /* 8029110C 0028E06C 7C 09 03 A6 */ mtctr r0 /* 80291110 0028E070 2C 00 00 00 */ cmpwi r0, 0 /* 80291114 0028E074 40 81 00 20 */ ble lbl_80291134 lbl_80291118: /* 80291118 0028E078 28 03 00 00 */ cmplwi r3, 0 /* 8029111C 0028E07C 41 82 00 0C */ beq lbl_80291128 /* 80291120 0028E080 A0 04 00 00 */ lhz r0, 0(r4) /* 80291124 0028E084 B0 03 00 00 */ sth r0, 0(r3) lbl_80291128: /* 80291128 0028E088 38 63 00 02 */ addi r3, r3, 2 /* 8029112C 0028E08C 38 84 00 02 */ addi r4, r4, 2 /* 80291130 0028E090 42 00 FF E8 */ bdnz lbl_80291118 lbl_80291134: /* 80291134 0028E094 38 7F 09 A4 */ addi r3, r31, 0x9a4 /* 80291138 0028E098 38 81 01 BC */ addi r4, r1, 0x1bc /* 8029113C 0028E09C 48 00 06 39 */ bl sub_80291774 /* 80291140 0028E0A0 28 17 00 00 */ cmplwi r23, 0 /* 80291144 0028E0A4 41 82 00 44 */ beq lbl_80291188 /* 80291148 0028E0A8 80 01 01 C4 */ lwz r0, 0x1c4(r1) /* 8029114C 0028E0AC 80 61 01 CC */ lwz r3, 0x1cc(r1) /* 80291150 0028E0B0 54 00 08 3C */ slwi r0, r0, 1 /* 80291154 0028E0B4 7C 03 02 14 */ add r0, r3, r0 /* 80291158 0028E0B8 90 61 00 B0 */ stw r3, 0xb0(r1) /* 8029115C 0028E0BC 7C 64 1B 78 */ mr r4, r3 /* 80291160 0028E0C0 90 01 00 B8 */ stw r0, 0xb8(r1) /* 80291164 0028E0C4 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80291168 0028E0C8 90 61 00 AC */ stw r3, 0xac(r1) /* 8029116C 0028E0CC 48 00 00 08 */ b lbl_80291174 lbl_80291170: /* 80291170 0028E0D0 38 84 00 02 */ addi r4, r4, 2 lbl_80291174: /* 80291174 0028E0D4 7C 04 00 40 */ cmplw r4, r0 /* 80291178 0028E0D8 40 82 FF F8 */ bne lbl_80291170 /* 8029117C 0028E0DC 28 03 00 00 */ cmplwi r3, 0 /* 80291180 0028E0E0 41 82 00 08 */ beq lbl_80291188 /* 80291184 0028E0E4 48 08 47 AD */ bl Free__7CMemoryFPCv lbl_80291188: /* 80291188 0028E0E8 80 01 01 18 */ lwz r0, 0x118(r1) /* 8029118C 0028E0EC 80 61 01 20 */ lwz r3, 0x120(r1) /* 80291190 0028E0F0 54 00 08 3C */ slwi r0, r0, 1 /* 80291194 0028E0F4 7C 03 02 14 */ add r0, r3, r0 /* 80291198 0028E0F8 90 61 00 C0 */ stw r3, 0xc0(r1) /* 8029119C 0028E0FC 7C 64 1B 78 */ mr r4, r3 /* 802911A0 0028E100 90 01 00 C8 */ stw r0, 0xc8(r1) /* 802911A4 0028E104 90 01 00 C4 */ stw r0, 0xc4(r1) /* 802911A8 0028E108 90 61 00 BC */ stw r3, 0xbc(r1) /* 802911AC 0028E10C 48 00 00 08 */ b lbl_802911B4 lbl_802911B0: /* 802911B0 0028E110 38 84 00 02 */ addi r4, r4, 2 lbl_802911B4: /* 802911B4 0028E114 7C 04 00 40 */ cmplw r4, r0 /* 802911B8 0028E118 40 82 FF F8 */ bne lbl_802911B0 /* 802911BC 0028E11C 28 03 00 00 */ cmplwi r3, 0 /* 802911C0 0028E120 41 82 00 08 */ beq lbl_802911C8 /* 802911C4 0028E124 48 08 47 6D */ bl Free__7CMemoryFPCv lbl_802911C8: /* 802911C8 0028E128 3B BD 00 01 */ addi r29, r29, 1 /* 802911CC 0028E12C 3B 9C 00 0C */ addi r28, r28, 0xc lbl_802911D0: /* 802911D0 0028E130 7C 1D C0 40 */ cmplw r29, r24 /* 802911D4 0028E134 41 80 F9 80 */ blt lbl_80290B54 /* 802911D8 0028E138 48 00 05 88 */ b lbl_80291760 AcceptScriptMsg_Touched: /* 802911DC 0028E13C A0 14 00 00 */ lhz r0, 0(r20) /* 802911E0 0028E140 38 A1 00 48 */ addi r5, r1, 0x48 /* 802911E4 0028E144 B0 01 00 48 */ sth r0, 0x48(r1) /* 802911E8 0028E148 4B F9 B9 E5 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 802911EC 0028E14C A0 14 00 00 */ lhz r0, 0(r20) /* 802911F0 0028E150 A0 7F 09 90 */ lhz r3, 0x990(r31) /* 802911F4 0028E154 7C 00 18 40 */ cmplw r0, r3 /* 802911F8 0028E158 40 82 00 20 */ bne lbl_80291218 /* 802911FC 0028E15C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80291200 0028E160 7C 03 00 40 */ cmplw r3, r0 /* 80291204 0028E164 41 82 00 14 */ beq lbl_80291218 /* 80291208 0028E168 7F E3 FB 78 */ mr r3, r31 /* 8029120C 0028E16C 7F C5 F3 78 */ mr r5, r30 /* 80291210 0028E170 38 80 00 01 */ li r4, 1 /* 80291214 0028E174 4B F9 63 89 */ bl sub_8022759c lbl_80291218: /* 80291218 0028E178 A0 14 00 00 */ lhz r0, 0(r20) /* 8029121C 0028E17C 7F C3 F3 78 */ mr r3, r30 /* 80291220 0028E180 38 81 00 44 */ addi r4, r1, 0x44 /* 80291224 0028E184 B0 01 00 44 */ sth r0, 0x44(r1) /* 80291228 0028E188 4B DB B3 4D */ bl ObjectById__13CStateManagerF9TUniqueId /* 8029122C 0028E18C 7C 60 1B 78 */ mr r0, r3 /* 80291230 0028E190 38 61 00 E4 */ addi r3, r1, 0xe4 /* 80291234 0028E194 7C 04 03 78 */ mr r4, r0 /* 80291238 0028E198 4B E1 E1 15 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity" /* 8029123C 0028E19C 80 83 00 04 */ lwz r4, 4(r3) /* 80291240 0028E1A0 28 04 00 00 */ cmplwi r4, 0 /* 80291244 0028E1A4 41 82 05 1C */ beq lbl_80291760 /* 80291248 0028E1A8 38 61 00 40 */ addi r3, r1, 0x40 /* 8029124C 0028E1AC 4B F1 79 41 */ bl GetLastTouchedObject__15CCollisionActorCFv /* 80291250 0028E1B0 A0 01 00 40 */ lhz r0, 0x40(r1) /* 80291254 0028E1B4 7F C3 F3 78 */ mr r3, r30 /* 80291258 0028E1B8 38 81 00 3C */ addi r4, r1, 0x3c /* 8029125C 0028E1BC B0 01 00 A0 */ sth r0, 0xa0(r1) /* 80291260 0028E1C0 B0 01 00 3C */ sth r0, 0x3c(r1) /* 80291264 0028E1C4 4B DB B3 11 */ bl ObjectById__13CStateManagerF9TUniqueId /* 80291268 0028E1C8 7C 60 1B 78 */ mr r0, r3 /* 8029126C 0028E1CC 38 61 00 DC */ addi r3, r1, 0xdc /* 80291270 0028E1D0 7C 04 03 78 */ mr r4, r0 /* 80291274 0028E1D4 4B E1 B1 21 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" /* 80291278 0028E1D8 82 43 00 04 */ lwz r18, 4(r3) /* 8029127C 0028E1DC 28 12 00 00 */ cmplwi r18, 0 /* 80291280 0028E1E0 41 82 04 E0 */ beq lbl_80291760 /* 80291284 0028E1E4 C0 3F 04 20 */ lfs f1, 0x420(r31) /* 80291288 0028E1E8 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 8029128C 0028E1EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80291290 0028E1F0 4C 40 13 82 */ cror 2, 0, 2 /* 80291294 0028E1F4 40 82 04 CC */ bne lbl_80291760 /* 80291298 0028E1F8 80 AD 99 98 */ lwz r5, lbl_805A8558@sda21(r13) /* 8029129C 0028E1FC 38 60 00 00 */ li r3, 0 /* 802912A0 0028E200 38 80 00 01 */ li r4, 1 /* 802912A4 0028E204 48 0F 8C 51 */ bl __shl2i /* 802912A8 0028E208 38 A0 00 00 */ li r5, 0 /* 802912AC 0028E20C 38 00 00 03 */ li r0, 3 /* 802912B0 0028E210 90 81 01 8C */ stw r4, 0x18c(r1) /* 802912B4 0028E214 7F E4 FB 78 */ mr r4, r31 /* 802912B8 0028E218 90 61 01 88 */ stw r3, 0x188(r1) /* 802912BC 0028E21C 38 61 01 A0 */ addi r3, r1, 0x1a0 /* 802912C0 0028E220 90 A1 01 94 */ stw r5, 0x194(r1) /* 802912C4 0028E224 90 A1 01 90 */ stw r5, 0x190(r1) /* 802912C8 0028E228 90 01 01 98 */ stw r0, 0x198(r1) /* 802912CC 0028E22C A0 1F 00 08 */ lhz r0, 8(r31) /* 802912D0 0028E230 B0 01 00 28 */ sth r0, 0x28(r1) /* 802912D4 0028E234 A0 B2 00 08 */ lhz r5, 8(r18) /* 802912D8 0028E238 B0 01 00 24 */ sth r0, 0x24(r1) /* 802912DC 0028E23C B0 A1 00 30 */ sth r5, 0x30(r1) /* 802912E0 0028E240 A0 1F 00 08 */ lhz r0, 8(r31) /* 802912E4 0028E244 B0 A1 00 2C */ sth r5, 0x2c(r1) /* 802912E8 0028E248 B0 01 00 38 */ sth r0, 0x38(r1) /* 802912EC 0028E24C 81 9F 00 00 */ lwz r12, 0(r31) /* 802912F0 0028E250 B0 01 00 34 */ sth r0, 0x34(r1) /* 802912F4 0028E254 81 8C 02 B0 */ lwz r12, 0x2b0(r12) /* 802912F8 0028E258 7D 89 03 A6 */ mtctr r12 /* 802912FC 0028E25C 4E 80 04 21 */ bctrl /* 80291300 0028E260 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80291304 0028E264 7F C3 F3 78 */ mr r3, r30 /* 80291308 0028E268 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l /* 8029130C 0028E26C 38 A1 00 30 */ addi r5, r1, 0x30 /* 80291310 0028E270 38 81 00 38 */ addi r4, r1, 0x38 /* 80291314 0028E274 38 C1 00 28 */ addi r6, r1, 0x28 /* 80291318 0028E278 38 E1 01 A0 */ addi r7, r1, 0x1a0 /* 8029131C 0028E27C 39 01 01 88 */ addi r8, r1, 0x188 /* 80291320 0028E280 4B DB 8D 81 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f /* 80291324 0028E284 C0 1F 04 24 */ lfs f0, 0x424(r31) /* 80291328 0028E288 D0 1F 04 20 */ stfs f0, 0x420(r31) /* 8029132C 0028E28C 48 00 04 34 */ b lbl_80291760 AcceptScriptMsg_Damaged: /* 80291330 0028E290 A0 14 00 00 */ lhz r0, 0(r20) /* 80291334 0028E294 A0 7F 09 90 */ lhz r3, 0x990(r31) /* 80291338 0028E298 7C 00 18 40 */ cmplw r0, r3 /* 8029133C 0028E29C 40 82 00 A4 */ bne lbl_802913E0 /* 80291340 0028E2A0 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80291344 0028E2A4 7C 03 00 40 */ cmplw r3, r0 /* 80291348 0028E2A8 41 82 00 98 */ beq lbl_802913E0 /* 8029134C 0028E2AC 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 80291350 0028E2B0 C0 5F 00 58 */ lfs f2, 0x58(r31) /* 80291354 0028E2B4 38 A3 AA 68 */ addi r5, r3, __vt__13CBodyStateCmd@l /* 80291358 0028E2B8 C0 3F 00 48 */ lfs f1, 0x48(r31) /* 8029135C 0028E2BC C0 1F 00 38 */ lfs f0, 0x38(r31) /* 80291360 0028E2C0 3C 80 80 3E */ lis r4, lbl_803DAA44@ha /* 80291364 0028E2C4 80 7F 04 50 */ lwz r3, 0x450(r31) /* 80291368 0028E2C8 38 C0 00 04 */ li r6, 4 /* 8029136C 0028E2CC 38 00 00 08 */ li r0, 8 /* 80291370 0028E2D0 90 A1 01 70 */ stw r5, 0x170(r1) /* 80291374 0028E2D4 38 A4 AA 44 */ addi r5, r4, lbl_803DAA44@l /* 80291378 0028E2D8 3A 43 00 04 */ addi r18, r3, 4 /* 8029137C 0028E2DC 90 C1 01 74 */ stw r6, 0x174(r1) /* 80291380 0028E2E0 7E 43 93 78 */ mr r3, r18 /* 80291384 0028E2E4 38 80 00 04 */ li r4, 4 /* 80291388 0028E2E8 90 A1 01 70 */ stw r5, 0x170(r1) /* 8029138C 0028E2EC D0 01 01 78 */ stfs f0, 0x178(r1) /* 80291390 0028E2F0 D0 21 01 7C */ stfs f1, 0x17c(r1) /* 80291394 0028E2F4 D0 41 01 80 */ stfs f2, 0x180(r1) /* 80291398 0028E2F8 90 01 01 84 */ stw r0, 0x184(r1) /* 8029139C 0028E2FC 4B EA 00 9D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 802913A0 0028E300 80 01 01 74 */ lwz r0, 0x174(r1) /* 802913A4 0028E304 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 802913A8 0028E308 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l /* 802913AC 0028E30C 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 802913B0 0028E310 90 12 00 F8 */ stw r0, 0xf8(r18) /* 802913B4 0028E314 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 802913B8 0028E318 80 A1 01 78 */ lwz r5, 0x178(r1) /* 802913BC 0028E31C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 802913C0 0028E320 90 B2 00 FC */ stw r5, 0xfc(r18) /* 802913C4 0028E324 80 A1 01 80 */ lwz r5, 0x180(r1) /* 802913C8 0028E328 90 72 01 00 */ stw r3, 0x100(r18) /* 802913CC 0028E32C 80 61 01 84 */ lwz r3, 0x184(r1) /* 802913D0 0028E330 90 B2 01 04 */ stw r5, 0x104(r18) /* 802913D4 0028E334 90 81 01 70 */ stw r4, 0x170(r1) /* 802913D8 0028E338 90 72 01 08 */ stw r3, 0x108(r18) /* 802913DC 0028E33C 90 01 01 70 */ stw r0, 0x170(r1) lbl_802913E0: /* 802913E0 0028E340 A0 14 00 00 */ lhz r0, 0(r20) /* 802913E4 0028E344 7F E3 FB 78 */ mr r3, r31 /* 802913E8 0028E348 7E A4 AB 78 */ mr r4, r21 /* 802913EC 0028E34C 7F C6 F3 78 */ mr r6, r30 /* 802913F0 0028E350 B0 01 00 20 */ sth r0, 0x20(r1) /* 802913F4 0028E354 38 A1 00 20 */ addi r5, r1, 0x20 /* 802913F8 0028E358 4B F9 B7 D5 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 802913FC 0028E35C A0 74 00 00 */ lhz r3, 0(r20) /* 80291400 0028E360 A0 1F 0A 46 */ lhz r0, 0xa46(r31) /* 80291404 0028E364 7C 03 00 40 */ cmplw r3, r0 /* 80291408 0028E368 40 82 03 58 */ bne lbl_80291760 /* 8029140C 0028E36C 80 1F 0A 7C */ lwz r0, 0xa7c(r31) /* 80291410 0028E370 2C 00 00 02 */ cmpwi r0, 2 /* 80291414 0028E374 40 82 03 4C */ bne lbl_80291760 /* 80291418 0028E378 38 00 00 03 */ li r0, 3 /* 8029141C 0028E37C C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 80291420 0028E380 90 1F 0A 7C */ stw r0, 0xa7c(r31) /* 80291424 0028E384 D0 1F 0A 84 */ stfs f0, 0xa84(r31) /* 80291428 0028E388 48 00 03 38 */ b lbl_80291760 AcceptScriptMsg_InvulnDamage: /* 8029142C 0028E38C A0 14 00 00 */ lhz r0, 0(r20) /* 80291430 0028E390 7F C3 F3 78 */ mr r3, r30 /* 80291434 0028E394 38 81 00 1C */ addi r4, r1, 0x1c /* 80291438 0028E398 B0 01 00 1C */ sth r0, 0x1c(r1) /* 8029143C 0028E39C 4B DB B1 69 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 80291440 0028E3A0 7C 64 1B 78 */ mr r4, r3 /* 80291444 0028E3A4 38 61 00 D4 */ addi r3, r1, 0xd4 /* 80291448 0028E3A8 4B E1 C2 C5 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" /* 8029144C 0028E3AC 82 43 00 04 */ lwz r18, 4(r3) /* 80291450 0028E3B0 28 12 00 00 */ cmplwi r18, 0 /* 80291454 0028E3B4 41 82 00 7C */ beq lbl_802914D0 /* 80291458 0028E3B8 88 1F 0A 4A */ lbz r0, 0xa4a(r31) /* 8029145C 0028E3BC 28 00 00 00 */ cmplwi r0, 0 /* 80291460 0028E3C0 41 82 00 70 */ beq lbl_802914D0 /* 80291464 0028E3C4 80 AD 99 78 */ lwz r5, lbl_805A8538@sda21(r13) /* 80291468 0028E3C8 38 60 00 00 */ li r3, 0 /* 8029146C 0028E3CC 38 80 00 01 */ li r4, 1 /* 80291470 0028E3D0 48 0F 8A 85 */ bl __shl2i /* 80291474 0028E3D4 39 00 00 00 */ li r8, 0 /* 80291478 0028E3D8 39 40 00 03 */ li r10, 3 /* 8029147C 0028E3DC 90 81 01 5C */ stw r4, 0x15c(r1) /* 80291480 0028E3E0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 80291484 0028E3E4 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l /* 80291488 0028E3E8 A0 14 00 00 */ lhz r0, 0(r20) /* 8029148C 0028E3EC 90 61 01 58 */ stw r3, 0x158(r1) /* 80291490 0028E3F0 7F C3 F3 78 */ mr r3, r30 /* 80291494 0028E3F4 38 81 00 18 */ addi r4, r1, 0x18 /* 80291498 0028E3F8 38 A1 00 14 */ addi r5, r1, 0x14 /* 8029149C 0028E3FC 91 01 01 64 */ stw r8, 0x164(r1) /* 802914A0 0028E400 38 C1 00 10 */ addi r6, r1, 0x10 /* 802914A4 0028E404 38 F2 01 2C */ addi r7, r18, 0x12c /* 802914A8 0028E408 91 01 01 60 */ stw r8, 0x160(r1) /* 802914AC 0028E40C 39 01 01 58 */ addi r8, r1, 0x158 /* 802914B0 0028E410 91 41 01 68 */ stw r10, 0x168(r1) /* 802914B4 0028E414 A1 72 00 EC */ lhz r11, 0xec(r18) /* 802914B8 0028E418 B1 61 00 10 */ sth r11, 0x10(r1) /* 802914BC 0028E41C A1 5F 0A 46 */ lhz r10, 0xa46(r31) /* 802914C0 0028E420 B1 61 00 0C */ sth r11, 0xc(r1) /* 802914C4 0028E424 B1 41 00 14 */ sth r10, 0x14(r1) /* 802914C8 0028E428 B0 01 00 18 */ sth r0, 0x18(r1) /* 802914CC 0028E42C 4B DB 8B D5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f lbl_802914D0: /* 802914D0 0028E430 7F E3 FB 78 */ mr r3, r31 /* 802914D4 0028E434 7F C5 F3 78 */ mr r5, r30 /* 802914D8 0028E438 38 80 00 01 */ li r4, 1 /* 802914DC 0028E43C 4B F9 60 C1 */ bl sub_8022759c /* 802914E0 0028E440 48 00 02 80 */ b lbl_80291760 AcceptScriptMsg_Decrement: /* 802914E4 0028E444 38 00 00 01 */ li r0, 1 /* 802914E8 0028E448 98 1F 09 EC */ stb r0, 0x9ec(r31) /* 802914EC 0028E44C 48 00 02 74 */ b lbl_80291760 AcceptScriptMsg_Increment: /* 802914F0 0028E450 7F C5 F3 78 */ mr r5, r30 /* 802914F4 0028E454 38 80 00 01 */ li r4, 1 /* 802914F8 0028E458 4B F9 60 A5 */ bl sub_8022759c /* 802914FC 0028E45C 48 00 02 64 */ b lbl_80291760 AcceptScriptMsg_SetToMax: /* 80291500 0028E460 38 00 00 01 */ li r0, 1 /* 80291504 0028E464 98 1F 0A 3C */ stb r0, 0xa3c(r31) /* 80291508 0028E468 48 00 02 58 */ b lbl_80291760 AcceptScriptMsg_Stop: /* 8029150C 0028E46C 7F C4 F3 78 */ mr r4, r30 /* 80291510 0028E470 4B FF A0 09 */ bl sub_8028b518 /* 80291514 0028E474 48 00 02 4C */ b lbl_80291760 AcceptScriptMsg_Start: /* 80291518 0028E478 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8029151C 0028E47C D0 1F 03 B4 */ stfs f0, 0x3b4(r31) /* 80291520 0028E480 88 7F 0A DE */ lbz r3, 0xade(r31) /* 80291524 0028E484 38 03 00 01 */ addi r0, r3, 1 /* 80291528 0028E488 98 1F 0A DE */ stb r0, 0xade(r31) /* 8029152C 0028E48C 88 1F 0A DE */ lbz r0, 0xade(r31) /* 80291530 0028E490 28 00 00 04 */ cmplwi r0, 4 /* 80291534 0028E494 40 80 02 2C */ bge lbl_80291760 /* 80291538 0028E498 3C A0 80 3E */ lis r5, __vt__13CBodyStateCmd@ha /* 8029153C 0028E49C 3C 60 80 5A */ lis r3, sLeftVector__9CVector3f@ha /* 80291540 0028E4A0 38 83 67 0C */ addi r4, r3, sLeftVector__9CVector3f@l /* 80291544 0028E4A4 80 7F 04 50 */ lwz r3, 0x450(r31) /* 80291548 0028E4A8 38 E5 AA 68 */ addi r7, r5, __vt__13CBodyStateCmd@l /* 8029154C 0028E4AC C0 44 00 00 */ lfs f2, 0(r4) /* 80291550 0028E4B0 C0 24 00 04 */ lfs f1, 4(r4) /* 80291554 0028E4B4 3C A0 80 3E */ lis r5, lbl_803DAA44@ha /* 80291558 0028E4B8 C0 04 00 08 */ lfs f0, 8(r4) /* 8029155C 0028E4BC 38 C0 00 04 */ li r6, 4 /* 80291560 0028E4C0 38 00 00 01 */ li r0, 1 /* 80291564 0028E4C4 3A 43 00 04 */ addi r18, r3, 4 /* 80291568 0028E4C8 90 E1 01 3C */ stw r7, 0x13c(r1) /* 8029156C 0028E4CC 38 A5 AA 44 */ addi r5, r5, lbl_803DAA44@l /* 80291570 0028E4D0 7E 43 93 78 */ mr r3, r18 /* 80291574 0028E4D4 38 80 00 04 */ li r4, 4 /* 80291578 0028E4D8 90 C1 01 40 */ stw r6, 0x140(r1) /* 8029157C 0028E4DC 90 A1 01 3C */ stw r5, 0x13c(r1) /* 80291580 0028E4E0 D0 41 01 44 */ stfs f2, 0x144(r1) /* 80291584 0028E4E4 D0 21 01 48 */ stfs f1, 0x148(r1) /* 80291588 0028E4E8 D0 01 01 4C */ stfs f0, 0x14c(r1) /* 8029158C 0028E4EC 90 01 01 50 */ stw r0, 0x150(r1) /* 80291590 0028E4F0 4B E9 FE A9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 80291594 0028E4F4 80 01 01 40 */ lwz r0, 0x140(r1) /* 80291598 0028E4F8 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 8029159C 0028E4FC 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l /* 802915A0 0028E500 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 802915A4 0028E504 90 12 00 F8 */ stw r0, 0xf8(r18) /* 802915A8 0028E508 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 802915AC 0028E50C 80 A1 01 44 */ lwz r5, 0x144(r1) /* 802915B0 0028E510 80 61 01 48 */ lwz r3, 0x148(r1) /* 802915B4 0028E514 90 B2 00 FC */ stw r5, 0xfc(r18) /* 802915B8 0028E518 80 A1 01 4C */ lwz r5, 0x14c(r1) /* 802915BC 0028E51C 90 72 01 00 */ stw r3, 0x100(r18) /* 802915C0 0028E520 80 61 01 50 */ lwz r3, 0x150(r1) /* 802915C4 0028E524 90 B2 01 04 */ stw r5, 0x104(r18) /* 802915C8 0028E528 90 81 01 3C */ stw r4, 0x13c(r1) /* 802915CC 0028E52C 90 72 01 08 */ stw r3, 0x108(r18) /* 802915D0 0028E530 90 01 01 3C */ stw r0, 0x13c(r1) /* 802915D4 0028E534 48 00 01 8C */ b lbl_80291760 AcceptScriptMsg_Action: /* 802915D8 0028E538 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 802915DC 0028E53C D0 1F 03 B4 */ stfs f0, 0x3b4(r31) /* 802915E0 0028E540 88 7F 0A DE */ lbz r3, 0xade(r31) /* 802915E4 0028E544 38 03 00 01 */ addi r0, r3, 1 /* 802915E8 0028E548 98 1F 0A DE */ stb r0, 0xade(r31) /* 802915EC 0028E54C 88 1F 0A DE */ lbz r0, 0xade(r31) /* 802915F0 0028E550 28 00 00 04 */ cmplwi r0, 4 /* 802915F4 0028E554 40 80 01 6C */ bge lbl_80291760 /* 802915F8 0028E558 3C A0 80 3E */ lis r5, __vt__13CBodyStateCmd@ha /* 802915FC 0028E55C 3C 60 80 5A */ lis r3, sRightVector__9CVector3f@ha /* 80291600 0028E560 38 83 67 18 */ addi r4, r3, sRightVector__9CVector3f@l /* 80291604 0028E564 80 7F 04 50 */ lwz r3, 0x450(r31) /* 80291608 0028E568 38 E5 AA 68 */ addi r7, r5, __vt__13CBodyStateCmd@l /* 8029160C 0028E56C C0 44 00 00 */ lfs f2, 0(r4) /* 80291610 0028E570 C0 24 00 04 */ lfs f1, 4(r4) /* 80291614 0028E574 3C A0 80 3E */ lis r5, lbl_803DAA44@ha /* 80291618 0028E578 C0 04 00 08 */ lfs f0, 8(r4) /* 8029161C 0028E57C 38 C0 00 04 */ li r6, 4 /* 80291620 0028E580 38 00 00 01 */ li r0, 1 /* 80291624 0028E584 3A 43 00 04 */ addi r18, r3, 4 /* 80291628 0028E588 90 E1 01 24 */ stw r7, 0x124(r1) /* 8029162C 0028E58C 38 A5 AA 44 */ addi r5, r5, lbl_803DAA44@l /* 80291630 0028E590 7E 43 93 78 */ mr r3, r18 /* 80291634 0028E594 38 80 00 04 */ li r4, 4 /* 80291638 0028E598 90 C1 01 28 */ stw r6, 0x128(r1) /* 8029163C 0028E59C 90 A1 01 24 */ stw r5, 0x124(r1) /* 80291640 0028E5A0 D0 41 01 2C */ stfs f2, 0x12c(r1) /* 80291644 0028E5A4 D0 21 01 30 */ stfs f1, 0x130(r1) /* 80291648 0028E5A8 D0 01 01 34 */ stfs f0, 0x134(r1) /* 8029164C 0028E5AC 90 01 01 38 */ stw r0, 0x138(r1) /* 80291650 0028E5B0 4B E9 FD E9 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd /* 80291654 0028E5B4 80 01 01 28 */ lwz r0, 0x128(r1) /* 80291658 0028E5B8 3C 60 80 3E */ lis r3, lbl_803DAA44@ha /* 8029165C 0028E5BC 38 83 AA 44 */ addi r4, r3, lbl_803DAA44@l /* 80291660 0028E5C0 3C 60 80 3E */ lis r3, __vt__13CBodyStateCmd@ha /* 80291664 0028E5C4 90 12 00 F8 */ stw r0, 0xf8(r18) /* 80291668 0028E5C8 38 03 AA 68 */ addi r0, r3, __vt__13CBodyStateCmd@l /* 8029166C 0028E5CC 80 A1 01 2C */ lwz r5, 0x12c(r1) /* 80291670 0028E5D0 80 61 01 30 */ lwz r3, 0x130(r1) /* 80291674 0028E5D4 90 B2 00 FC */ stw r5, 0xfc(r18) /* 80291678 0028E5D8 80 A1 01 34 */ lwz r5, 0x134(r1) /* 8029167C 0028E5DC 90 72 01 00 */ stw r3, 0x100(r18) /* 80291680 0028E5E0 80 61 01 38 */ lwz r3, 0x138(r1) /* 80291684 0028E5E4 90 B2 01 04 */ stw r5, 0x104(r18) /* 80291688 0028E5E8 90 81 01 24 */ stw r4, 0x124(r1) /* 8029168C 0028E5EC 90 72 01 08 */ stw r3, 0x108(r18) /* 80291690 0028E5F0 90 01 01 24 */ stw r0, 0x124(r1) /* 80291694 0028E5F4 48 00 00 CC */ b lbl_80291760 AcceptScriptMsg_Reset: /* 80291698 0028E5F8 38 00 00 01 */ li r0, 1 /* 8029169C 0028E5FC 98 1F 0B 78 */ stb r0, 0xb78(r31) /* 802916A0 0028E600 48 00 00 C0 */ b lbl_80291760 AcceptScriptMsg_Open: /* 802916A4 0028E604 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 802916A8 0028E608 88 64 00 03 */ lbz r3, 3(r4) /* 802916AC 0028E60C 28 03 00 00 */ cmplwi r3, 0 /* 802916B0 0028E610 41 82 00 10 */ beq lbl_802916C0 /* 802916B4 0028E614 38 03 FF FF */ addi r0, r3, -1 /* 802916B8 0028E618 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 802916BC 0028E61C 48 00 00 08 */ b lbl_802916C4 lbl_802916C0: /* 802916C0 0028E620 38 00 00 00 */ li r0, 0 lbl_802916C4: /* 802916C4 0028E624 98 04 00 03 */ stb r0, 3(r4) /* 802916C8 0028E628 48 00 00 98 */ b lbl_80291760 AcceptScriptMsg_SetToZero: /* 802916CC 0028E62C 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 802916D0 0028E630 88 64 00 02 */ lbz r3, 2(r4) /* 802916D4 0028E634 28 03 00 00 */ cmplwi r3, 0 /* 802916D8 0028E638 41 82 00 10 */ beq lbl_802916E8 /* 802916DC 0028E63C 38 03 FF FF */ addi r0, r3, -1 /* 802916E0 0028E640 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 802916E4 0028E644 48 00 00 08 */ b lbl_802916EC lbl_802916E8: /* 802916E8 0028E648 38 00 00 00 */ li r0, 0 lbl_802916EC: /* 802916EC 0028E64C 98 04 00 02 */ stb r0, 2(r4) /* 802916F0 0028E650 48 00 00 70 */ b lbl_80291760 AcceptScriptMsg_StopAndReset: /* 802916F4 0028E654 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 802916F8 0028E658 88 64 00 01 */ lbz r3, 1(r4) /* 802916FC 0028E65C 28 03 00 00 */ cmplwi r3, 0 /* 80291700 0028E660 41 82 00 10 */ beq lbl_80291710 /* 80291704 0028E664 38 03 FF FF */ addi r0, r3, -1 /* 80291708 0028E668 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8029170C 0028E66C 48 00 00 08 */ b lbl_80291714 lbl_80291710: /* 80291710 0028E670 38 00 00 00 */ li r0, 0 lbl_80291714: /* 80291714 0028E674 98 04 00 01 */ stb r0, 1(r4) /* 80291718 0028E678 48 00 00 48 */ b lbl_80291760 AcceptScriptMsg_UNKM18: /* 8029171C 0028E67C 80 9F 0B 88 */ lwz r4, 0xb88(r31) /* 80291720 0028E680 88 64 00 00 */ lbz r3, 0(r4) /* 80291724 0028E684 28 03 00 00 */ cmplwi r3, 0 /* 80291728 0028E688 41 82 00 10 */ beq lbl_80291738 /* 8029172C 0028E68C 38 03 FF FF */ addi r0, r3, -1 /* 80291730 0028E690 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 80291734 0028E694 48 00 00 08 */ b lbl_8029173C lbl_80291738: /* 80291738 0028E698 38 00 00 00 */ li r0, 0 lbl_8029173C: /* 8029173C 0028E69C 98 04 00 00 */ stb r0, 0(r4) /* 80291740 0028E6A0 48 00 00 20 */ b lbl_80291760 AcceptScriptMsg_Default: /* 80291744 0028E6A4 A0 14 00 00 */ lhz r0, 0(r20) /* 80291748 0028E6A8 7F E3 FB 78 */ mr r3, r31 /* 8029174C 0028E6AC 7E A4 AB 78 */ mr r4, r21 /* 80291750 0028E6B0 7F C6 F3 78 */ mr r6, r30 /* 80291754 0028E6B4 B0 01 00 08 */ sth r0, 8(r1) /* 80291758 0028E6B8 38 A1 00 08 */ addi r5, r1, 8 /* 8029175C 0028E6BC 4B F9 B4 71 */ bl AcceptScriptMsg__12CElitePirateF20EScriptObjectMessage9TUniqueIdR13CStateManager lbl_80291760: /* 80291760 0028E6C0 BA 41 02 28 */ lmw r18, 0x228(r1) /* 80291764 0028E6C4 80 01 02 64 */ lwz r0, 0x264(r1) /* 80291768 0028E6C8 7C 08 03 A6 */ mtlr r0 /* 8029176C 0028E6CC 38 21 02 60 */ addi r1, r1, 0x260 /* 80291770 0028E6D0 4E 80 00 20 */ blr .endif .global sub_80291774 sub_80291774: /* 80291774 0028E6D4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80291778 0028E6D8 7C 08 02 A6 */ mflr r0 /* 8029177C 0028E6DC 90 01 00 24 */ stw r0, 0x24(r1) /* 80291780 0028E6E0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80291784 0028E6E4 7C 9F 23 78 */ mr r31, r4 /* 80291788 0028E6E8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8029178C 0028E6EC 7C 7E 1B 78 */ mr r30, r3 /* 80291790 0028E6F0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80291794 0028E6F4 80 03 00 04 */ lwz r0, 4(r3) /* 80291798 0028E6F8 80 A3 00 08 */ lwz r5, 8(r3) /* 8029179C 0028E6FC 7C 00 28 00 */ cmpw r0, r5 /* 802917A0 0028E700 41 80 00 18 */ blt lbl_802917B8 /* 802917A4 0028E704 2C 05 00 00 */ cmpwi r5, 0 /* 802917A8 0028E708 38 80 00 04 */ li r4, 4 /* 802917AC 0028E70C 41 82 00 08 */ beq lbl_802917B4 /* 802917B0 0028E710 54 A4 08 3C */ slwi r4, r5, 1 lbl_802917B4: /* 802917B4 0028E714 48 00 0A 11 */ bl sub_802921c4 lbl_802917B8: /* 802917B8 0028E718 80 1E 00 04 */ lwz r0, 4(r30) /* 802917BC 0028E71C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 802917C0 0028E720 1C 00 00 14 */ mulli r0, r0, 0x14 /* 802917C4 0028E724 7F A3 02 15 */ add. r29, r3, r0 /* 802917C8 0028E728 41 82 00 A4 */ beq lbl_8029186C /* 802917CC 0028E72C A0 1F 00 00 */ lhz r0, 0(r31) /* 802917D0 0028E730 B0 1D 00 00 */ sth r0, 0(r29) /* 802917D4 0028E734 80 1F 00 08 */ lwz r0, 8(r31) /* 802917D8 0028E738 90 1D 00 08 */ stw r0, 8(r29) /* 802917DC 0028E73C 80 1F 00 0C */ lwz r0, 0xc(r31) /* 802917E0 0028E740 90 1D 00 0C */ stw r0, 0xc(r29) /* 802917E4 0028E744 80 1F 00 08 */ lwz r0, 8(r31) /* 802917E8 0028E748 2C 00 00 00 */ cmpwi r0, 0 /* 802917EC 0028E74C 40 82 00 1C */ bne lbl_80291808 /* 802917F0 0028E750 80 1F 00 0C */ lwz r0, 0xc(r31) /* 802917F4 0028E754 2C 00 00 00 */ cmpwi r0, 0 /* 802917F8 0028E758 40 82 00 10 */ bne lbl_80291808 /* 802917FC 0028E75C 38 00 00 00 */ li r0, 0 /* 80291800 0028E760 90 1D 00 10 */ stw r0, 0x10(r29) /* 80291804 0028E764 48 00 00 68 */ b lbl_8029186C lbl_80291808: /* 80291808 0028E768 80 1D 00 0C */ lwz r0, 0xc(r29) /* 8029180C 0028E76C 54 03 08 3D */ rlwinm. r3, r0, 1, 0, 0x1e /* 80291810 0028E770 40 82 00 10 */ bne lbl_80291820 /* 80291814 0028E774 38 00 00 00 */ li r0, 0 /* 80291818 0028E778 90 1D 00 10 */ stw r0, 0x10(r29) /* 8029181C 0028E77C 48 00 00 1C */ b lbl_80291838 lbl_80291820: /* 80291820 0028E780 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 80291824 0028E784 38 A0 00 00 */ li r5, 0 /* 80291828 0028E788 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8029182C 0028E78C 38 84 00 C9 */ addi r4, r4, 0xc9 /* 80291830 0028E790 48 08 3F E9 */ bl __nwa__FUlPCcPCc /* 80291834 0028E794 90 7D 00 10 */ stw r3, 0x10(r29) lbl_80291838: /* 80291838 0028E798 80 1D 00 08 */ lwz r0, 8(r29) /* 8029183C 0028E79C 80 9F 00 10 */ lwz r4, 0x10(r31) /* 80291840 0028E7A0 80 7D 00 10 */ lwz r3, 0x10(r29) /* 80291844 0028E7A4 7C 09 03 A6 */ mtctr r0 /* 80291848 0028E7A8 2C 00 00 00 */ cmpwi r0, 0 /* 8029184C 0028E7AC 40 81 00 20 */ ble lbl_8029186C lbl_80291850: /* 80291850 0028E7B0 28 03 00 00 */ cmplwi r3, 0 /* 80291854 0028E7B4 41 82 00 0C */ beq lbl_80291860 /* 80291858 0028E7B8 A0 04 00 00 */ lhz r0, 0(r4) /* 8029185C 0028E7BC B0 03 00 00 */ sth r0, 0(r3) lbl_80291860: /* 80291860 0028E7C0 38 63 00 02 */ addi r3, r3, 2 /* 80291864 0028E7C4 38 84 00 02 */ addi r4, r4, 2 /* 80291868 0028E7C8 42 00 FF E8 */ bdnz lbl_80291850 lbl_8029186C: /* 8029186C 0028E7CC 80 7E 00 04 */ lwz r3, 4(r30) /* 80291870 0028E7D0 38 03 00 01 */ addi r0, r3, 1 /* 80291874 0028E7D4 90 1E 00 04 */ stw r0, 4(r30) /* 80291878 0028E7D8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8029187C 0028E7DC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80291880 0028E7E0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80291884 0028E7E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80291888 0028E7E8 7C 08 03 A6 */ mtlr r0 /* 8029188C 0028E7EC 38 21 00 20 */ addi r1, r1, 0x20 /* 80291890 0028E7F0 4E 80 00 20 */ blr .global "__ct__12COmegaPirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CElitePirateDataiii" "__ct__12COmegaPirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CElitePirateDataiii": /* 80291894 0028E7F4 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80291898 0028E7F8 7C 08 02 A6 */ mflr r0 /* 8029189C 0028E7FC 90 01 00 A4 */ stw r0, 0xa4(r1) /* 802918A0 0028E800 81 61 00 A8 */ lwz r11, 0xa8(r1) /* 802918A4 0028E804 BF 61 00 8C */ stmw r27, 0x8c(r1) /* 802918A8 0028E808 7C 7F 1B 78 */ mr r31, r3 /* 802918AC 0028E80C 83 A1 00 AC */ lwz r29, 0xac(r1) /* 802918B0 0028E810 7D 1E 43 78 */ mr r30, r8 /* 802918B4 0028E814 83 81 00 B0 */ lwz r28, 0xb0(r1) /* 802918B8 0028E818 83 61 00 B4 */ lwz r27, 0xb4(r1) /* 802918BC 0028E81C A0 04 00 00 */ lhz r0, 0(r4) /* 802918C0 0028E820 38 81 00 10 */ addi r4, r1, 0x10 /* 802918C4 0028E824 B0 01 00 10 */ sth r0, 0x10(r1) /* 802918C8 0028E828 91 61 00 08 */ stw r11, 8(r1) /* 802918CC 0028E82C 4B F9 BE C5 */ bl "__ct__12CElitePirateF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoRC16CActorParametersRC16CElitePirateData" /* 802918D0 0028E830 3C 80 80 3F */ lis r4, lbl_803EB868@ha /* 802918D4 0028E834 3C 60 43 4D */ lis r3, 0x434D444C@ha /* 802918D8 0028E838 38 04 B8 68 */ addi r0, r4, lbl_803EB868@l /* 802918DC 0028E83C 38 C0 00 00 */ li r6, 0 /* 802918E0 0028E840 90 1F 00 00 */ stw r0, 0(r31) /* 802918E4 0028E844 38 80 00 01 */ li r4, 1 /* 802918E8 0028E848 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 802918EC 0028E84C 38 03 44 4C */ addi r0, r3, 0x434D444C@l /* 802918F0 0028E850 A0 ED A3 8C */ lhz r7, kInvalidUniqueId@sda21(r13) /* 802918F4 0028E854 38 61 00 3C */ addi r3, r1, 0x3c /* 802918F8 0028E858 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 802918FC 0028E85C 38 A1 00 44 */ addi r5, r1, 0x44 /* 80291900 0028E860 B0 FF 09 90 */ sth r7, 0x990(r31) /* 80291904 0028E864 90 DF 09 94 */ stw r6, 0x994(r31) /* 80291908 0028E868 D0 3F 09 98 */ stfs f1, 0x998(r31) /* 8029190C 0028E86C D0 1F 09 9C */ stfs f0, 0x99c(r31) /* 80291910 0028E870 98 9F 09 A0 */ stb r4, 0x9a0(r31) /* 80291914 0028E874 98 9F 09 A1 */ stb r4, 0x9a1(r31) /* 80291918 0028E878 90 DF 09 A8 */ stw r6, 0x9a8(r31) /* 8029191C 0028E87C 90 DF 09 AC */ stw r6, 0x9ac(r31) /* 80291920 0028E880 90 DF 09 B0 */ stw r6, 0x9b0(r31) /* 80291924 0028E884 98 DF 09 B4 */ stb r6, 0x9b4(r31) /* 80291928 0028E888 90 DF 09 BC */ stw r6, 0x9bc(r31) /* 8029192C 0028E88C 90 DF 09 C0 */ stw r6, 0x9c0(r31) /* 80291930 0028E890 90 DF 09 C4 */ stw r6, 0x9c4(r31) /* 80291934 0028E894 90 DF 09 C8 */ stw r6, 0x9c8(r31) /* 80291938 0028E898 D0 3F 09 CC */ stfs f1, 0x9cc(r31) /* 8029193C 0028E89C C0 3E 00 04 */ lfs f1, 4(r30) /* 80291940 0028E8A0 C0 5E 00 08 */ lfs f2, 8(r30) /* 80291944 0028E8A4 C0 1E 00 00 */ lfs f0, 0(r30) /* 80291948 0028E8A8 D0 1F 09 D0 */ stfs f0, 0x9d0(r31) /* 8029194C 0028E8AC D0 3F 09 D4 */ stfs f1, 0x9d4(r31) /* 80291950 0028E8B0 D0 5F 09 D8 */ stfs f2, 0x9d8(r31) /* 80291954 0028E8B4 90 DF 09 E0 */ stw r6, 0x9e0(r31) /* 80291958 0028E8B8 90 DF 09 E4 */ stw r6, 0x9e4(r31) /* 8029195C 0028E8BC 90 DF 09 E8 */ stw r6, 0x9e8(r31) /* 80291960 0028E8C0 98 DF 09 EC */ stb r6, 0x9ec(r31) /* 80291964 0028E8C4 90 01 00 44 */ stw r0, 0x44(r1) /* 80291968 0028E8C8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 8029196C 0028E8CC 93 A1 00 48 */ stw r29, 0x48(r1) /* 80291970 0028E8D0 81 84 00 00 */ lwz r12, 0(r4) /* 80291974 0028E8D4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80291978 0028E8D8 7D 89 03 A6 */ mtctr r12 /* 8029197C 0028E8DC 4E 80 04 21 */ bctrl /* 80291980 0028E8E0 3B A1 00 64 */ addi r29, r1, 0x64 /* 80291984 0028E8E4 38 81 00 3C */ addi r4, r1, 0x3c /* 80291988 0028E8E8 7F A3 EB 78 */ mr r3, r29 /* 8029198C 0028E8EC 48 0A F5 1D */ bl __ct__6CTokenFRC6CToken /* 80291990 0028E8F0 7F A3 EB 78 */ mr r3, r29 /* 80291994 0028E8F4 48 0A F4 79 */ bl GetObj__6CTokenFv /* 80291998 0028E8F8 80 A3 00 04 */ lwz r5, 4(r3) /* 8029199C 0028E8FC 3C 60 43 53 */ lis r3, 0x43534B52@ha /* 802919A0 0028E900 38 03 4B 52 */ addi r0, r3, 0x43534B52@l /* 802919A4 0028E904 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 802919A8 0028E908 90 A1 00 6C */ stw r5, 0x6c(r1) /* 802919AC 0028E90C 38 61 00 2C */ addi r3, r1, 0x2c /* 802919B0 0028E910 38 A1 00 34 */ addi r5, r1, 0x34 /* 802919B4 0028E914 90 01 00 34 */ stw r0, 0x34(r1) /* 802919B8 0028E918 93 81 00 38 */ stw r28, 0x38(r1) /* 802919BC 0028E91C 81 84 00 00 */ lwz r12, 0(r4) /* 802919C0 0028E920 81 8C 00 0C */ lwz r12, 0xc(r12) /* 802919C4 0028E924 7D 89 03 A6 */ mtctr r12 /* 802919C8 0028E928 4E 80 04 21 */ bctrl /* 802919CC 0028E92C 3B 81 00 58 */ addi r28, r1, 0x58 /* 802919D0 0028E930 38 81 00 2C */ addi r4, r1, 0x2c /* 802919D4 0028E934 7F 83 E3 78 */ mr r3, r28 /* 802919D8 0028E938 48 0A F4 D1 */ bl __ct__6CTokenFRC6CToken /* 802919DC 0028E93C 7F 83 E3 78 */ mr r3, r28 /* 802919E0 0028E940 48 0A F4 2D */ bl GetObj__6CTokenFv /* 802919E4 0028E944 80 A3 00 04 */ lwz r5, 4(r3) /* 802919E8 0028E948 3C 60 43 49 */ lis r3, 0x43494E46@ha /* 802919EC 0028E94C 38 03 4E 46 */ addi r0, r3, 0x43494E46@l /* 802919F0 0028E950 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 802919F4 0028E954 90 A1 00 60 */ stw r5, 0x60(r1) /* 802919F8 0028E958 38 61 00 1C */ addi r3, r1, 0x1c /* 802919FC 0028E95C 38 A1 00 24 */ addi r5, r1, 0x24 /* 80291A00 0028E960 90 01 00 24 */ stw r0, 0x24(r1) /* 80291A04 0028E964 93 61 00 28 */ stw r27, 0x28(r1) /* 80291A08 0028E968 81 84 00 00 */ lwz r12, 0(r4) /* 80291A0C 0028E96C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80291A10 0028E970 7D 89 03 A6 */ mtctr r12 /* 80291A14 0028E974 4E 80 04 21 */ bctrl /* 80291A18 0028E978 3B 61 00 4C */ addi r27, r1, 0x4c /* 80291A1C 0028E97C 38 81 00 1C */ addi r4, r1, 0x1c /* 80291A20 0028E980 7F 63 DB 78 */ mr r3, r27 /* 80291A24 0028E984 48 0A F4 85 */ bl __ct__6CTokenFRC6CToken /* 80291A28 0028E988 7F 63 DB 78 */ mr r3, r27 /* 80291A2C 0028E98C 48 0A F3 E1 */ bl GetObj__6CTokenFv /* 80291A30 0028E990 80 03 00 04 */ lwz r0, 4(r3) /* 80291A34 0028E994 38 7F 09 F0 */ addi r3, r31, 0x9f0 /* 80291A38 0028E998 7F A4 EB 78 */ mr r4, r29 /* 80291A3C 0028E99C 7F 85 E3 78 */ mr r5, r28 /* 80291A40 0028E9A0 90 01 00 54 */ stw r0, 0x54(r1) /* 80291A44 0028E9A4 7F 66 DB 78 */ mr r6, r27 /* 80291A48 0028E9A8 38 E0 00 01 */ li r7, 1 /* 80291A4C 0028E9AC 48 0C 19 ED */ bl "__ct__13CSkinnedModelFRC21TLockedToken<6CModel>RC26TLockedToken<10CSkinRules>RC31TLockedToken<15CCharLayoutInfo>Q213CSkinnedModel14EDataOwnership" /* 80291A50 0028E9B0 7F 63 DB 78 */ mr r3, r27 /* 80291A54 0028E9B4 38 80 00 00 */ li r4, 0 /* 80291A58 0028E9B8 48 0A F3 E9 */ bl __dt__6CTokenFv /* 80291A5C 0028E9BC 38 61 00 1C */ addi r3, r1, 0x1c /* 80291A60 0028E9C0 38 80 FF FF */ li r4, -1 /* 80291A64 0028E9C4 48 0A F3 DD */ bl __dt__6CTokenFv /* 80291A68 0028E9C8 7F 83 E3 78 */ mr r3, r28 /* 80291A6C 0028E9CC 38 80 00 00 */ li r4, 0 /* 80291A70 0028E9D0 48 0A F3 D1 */ bl __dt__6CTokenFv /* 80291A74 0028E9D4 38 61 00 2C */ addi r3, r1, 0x2c /* 80291A78 0028E9D8 38 80 FF FF */ li r4, -1 /* 80291A7C 0028E9DC 48 0A F3 C5 */ bl __dt__6CTokenFv /* 80291A80 0028E9E0 7F A3 EB 78 */ mr r3, r29 /* 80291A84 0028E9E4 38 80 00 00 */ li r4, 0 /* 80291A88 0028E9E8 48 0A F3 B9 */ bl __dt__6CTokenFv /* 80291A8C 0028E9EC 38 61 00 3C */ addi r3, r1, 0x3c /* 80291A90 0028E9F0 38 80 FF FF */ li r4, -1 /* 80291A94 0028E9F4 48 0A F3 AD */ bl __dt__6CTokenFv /* 80291A98 0028E9F8 C0 02 BE 9C */ lfs f0, lbl_805ADBBC@sda21(r2) /* 80291A9C 0028E9FC 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 80291AA0 0028EA00 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 80291AA4 0028EA04 38 A0 00 00 */ li r5, 0 /* 80291AA8 0028EA08 D0 1F 0A 2C */ stfs f0, 0xa2c(r31) /* 80291AAC 0028EA0C 38 00 00 01 */ li r0, 1 /* 80291AB0 0028EA10 38 7F 0A 4C */ addi r3, r31, 0xa4c /* 80291AB4 0028EA14 90 BF 0A 30 */ stw r5, 0xa30(r31) /* 80291AB8 0028EA18 D0 1F 0A 34 */ stfs f0, 0xa34(r31) /* 80291ABC 0028EA1C 90 BF 0A 38 */ stw r5, 0xa38(r31) /* 80291AC0 0028EA20 98 BF 0A 3C */ stb r5, 0xa3c(r31) /* 80291AC4 0028EA24 90 1F 0A 40 */ stw r0, 0xa40(r31) /* 80291AC8 0028EA28 98 BF 0A 44 */ stb r5, 0xa44(r31) /* 80291ACC 0028EA2C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80291AD0 0028EA30 B0 1F 0A 46 */ sth r0, 0xa46(r31) /* 80291AD4 0028EA34 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 80291AD8 0028EA38 B0 1F 0A 48 */ sth r0, 0xa48(r31) /* 80291ADC 0028EA3C 98 BF 0A 4A */ stb r5, 0xa4a(r31) /* 80291AE0 0028EA40 48 08 10 95 */ bl __ct__12CTransform4fFRC12CTransform4f /* 80291AE4 0028EA44 38 00 00 00 */ li r0, 0 /* 80291AE8 0028EA48 C0 42 BE A0 */ lfs f2, lbl_805ADBC0@sda21(r2) /* 80291AEC 0028EA4C 90 1F 0A 7C */ stw r0, 0xa7c(r31) /* 80291AF0 0028EA50 38 80 00 01 */ li r4, 1 /* 80291AF4 0028EA54 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 80291AF8 0028EA58 3C 60 80 57 */ lis r3, sNormalVulnerability__20CDamageVulnerability@ha /* 80291AFC 0028EA5C D0 5F 0A 80 */ stfs f2, 0xa80(r31) /* 80291B00 0028EA60 C0 02 BE D8 */ lfs f0, lbl_805ADBF8@sda21(r2) /* 80291B04 0028EA64 D0 3F 0A 84 */ stfs f1, 0xa84(r31) /* 80291B08 0028EA68 98 1F 0A 88 */ stb r0, 0xa88(r31) /* 80291B0C 0028EA6C D0 1F 0A 8C */ stfs f0, 0xa8c(r31) /* 80291B10 0028EA70 D0 5F 0A 90 */ stfs f2, 0xa90(r31) /* 80291B14 0028EA74 D0 5F 0A 94 */ stfs f2, 0xa94(r31) /* 80291B18 0028EA78 D0 3F 0A 98 */ stfs f1, 0xa98(r31) /* 80291B1C 0028EA7C 90 1F 0A 9C */ stw r0, 0xa9c(r31) /* 80291B20 0028EA80 90 1F 0A A4 */ stw r0, 0xaa4(r31) /* 80291B24 0028EA84 90 1F 0A A8 */ stw r0, 0xaa8(r31) /* 80291B28 0028EA88 90 1F 0A AC */ stw r0, 0xaac(r31) /* 80291B2C 0028EA8C D0 3F 0A B0 */ stfs f1, 0xab0(r31) /* 80291B30 0028EA90 90 1F 0A B8 */ stw r0, 0xab8(r31) /* 80291B34 0028EA94 90 1F 0A BC */ stw r0, 0xabc(r31) /* 80291B38 0028EA98 90 1F 0A C0 */ stw r0, 0xac0(r31) /* 80291B3C 0028EA9C 90 1F 0A C4 */ stw r0, 0xac4(r31) /* 80291B40 0028EAA0 90 1F 0A C8 */ stw r0, 0xac8(r31) /* 80291B44 0028EAA4 90 1F 0A CC */ stw r0, 0xacc(r31) /* 80291B48 0028EAA8 98 1F 0A D0 */ stb r0, 0xad0(r31) /* 80291B4C 0028EAAC D0 5F 0A D4 */ stfs f2, 0xad4(r31) /* 80291B50 0028EAB0 98 1F 0A D8 */ stb r0, 0xad8(r31) /* 80291B54 0028EAB4 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13) /* 80291B58 0028EAB8 B0 BF 0A DA */ sth r5, 0xada(r31) /* 80291B5C 0028EABC 98 1F 0A DC */ stb r0, 0xadc(r31) /* 80291B60 0028EAC0 98 1F 0A DD */ stb r0, 0xadd(r31) /* 80291B64 0028EAC4 98 1F 0A DE */ stb r0, 0xade(r31) /* 80291B68 0028EAC8 98 9F 0A DF */ stb r4, 0xadf(r31) /* 80291B6C 0028EACC 98 9F 0A E0 */ stb r4, 0xae0(r31) /* 80291B70 0028EAD0 84 A3 D5 78 */ lwzu r5, sNormalVulnerability__20CDamageVulnerability@l(r3) /* 80291B74 0028EAD4 80 83 00 04 */ lwz r4, 4(r3) /* 80291B78 0028EAD8 90 BF 0A E4 */ stw r5, 0xae4(r31) /* 80291B7C 0028EADC 90 9F 0A E8 */ stw r4, 0xae8(r31) /* 80291B80 0028EAE0 80 A3 00 08 */ lwz r5, 8(r3) /* 80291B84 0028EAE4 80 83 00 0C */ lwz r4, 0xc(r3) /* 80291B88 0028EAE8 90 BF 0A EC */ stw r5, 0xaec(r31) /* 80291B8C 0028EAEC 90 9F 0A F0 */ stw r4, 0xaf0(r31) /* 80291B90 0028EAF0 80 A3 00 10 */ lwz r5, 0x10(r3) /* 80291B94 0028EAF4 80 83 00 14 */ lwz r4, 0x14(r3) /* 80291B98 0028EAF8 90 BF 0A F4 */ stw r5, 0xaf4(r31) /* 80291B9C 0028EAFC 90 9F 0A F8 */ stw r4, 0xaf8(r31) /* 80291BA0 0028EB00 80 A3 00 18 */ lwz r5, 0x18(r3) /* 80291BA4 0028EB04 80 83 00 1C */ lwz r4, 0x1c(r3) /* 80291BA8 0028EB08 90 BF 0A FC */ stw r5, 0xafc(r31) /* 80291BAC 0028EB0C 90 9F 0B 00 */ stw r4, 0xb00(r31) /* 80291BB0 0028EB10 80 A3 00 20 */ lwz r5, 0x20(r3) /* 80291BB4 0028EB14 80 83 00 24 */ lwz r4, 0x24(r3) /* 80291BB8 0028EB18 90 BF 0B 04 */ stw r5, 0xb04(r31) /* 80291BBC 0028EB1C 90 9F 0B 08 */ stw r4, 0xb08(r31) /* 80291BC0 0028EB20 80 A3 00 28 */ lwz r5, 0x28(r3) /* 80291BC4 0028EB24 80 83 00 2C */ lwz r4, 0x2c(r3) /* 80291BC8 0028EB28 90 BF 0B 0C */ stw r5, 0xb0c(r31) /* 80291BCC 0028EB2C 90 9F 0B 10 */ stw r4, 0xb10(r31) /* 80291BD0 0028EB30 80 A3 00 30 */ lwz r5, 0x30(r3) /* 80291BD4 0028EB34 80 83 00 34 */ lwz r4, 0x34(r3) /* 80291BD8 0028EB38 90 BF 0B 14 */ stw r5, 0xb14(r31) /* 80291BDC 0028EB3C 90 9F 0B 18 */ stw r4, 0xb18(r31) /* 80291BE0 0028EB40 80 83 00 38 */ lwz r4, 0x38(r3) /* 80291BE4 0028EB44 90 9F 0B 1C */ stw r4, 0xb1c(r31) /* 80291BE8 0028EB48 80 A3 00 3C */ lwz r5, 0x3c(r3) /* 80291BEC 0028EB4C 80 83 00 40 */ lwz r4, 0x40(r3) /* 80291BF0 0028EB50 90 BF 0B 20 */ stw r5, 0xb20(r31) /* 80291BF4 0028EB54 90 9F 0B 24 */ stw r4, 0xb24(r31) /* 80291BF8 0028EB58 80 A3 00 44 */ lwz r5, 0x44(r3) /* 80291BFC 0028EB5C 80 83 00 48 */ lwz r4, 0x48(r3) /* 80291C00 0028EB60 90 BF 0B 28 */ stw r5, 0xb28(r31) /* 80291C04 0028EB64 90 9F 0B 2C */ stw r4, 0xb2c(r31) /* 80291C08 0028EB68 80 A3 00 4C */ lwz r5, 0x4c(r3) /* 80291C0C 0028EB6C 80 83 00 50 */ lwz r4, 0x50(r3) /* 80291C10 0028EB70 90 BF 0B 30 */ stw r5, 0xb30(r31) /* 80291C14 0028EB74 90 9F 0B 34 */ stw r4, 0xb34(r31) /* 80291C18 0028EB78 80 A3 00 54 */ lwz r5, 0x54(r3) /* 80291C1C 0028EB7C 80 83 00 58 */ lwz r4, 0x58(r3) /* 80291C20 0028EB80 90 BF 0B 38 */ stw r5, 0xb38(r31) /* 80291C24 0028EB84 90 9F 0B 3C */ stw r4, 0xb3c(r31) /* 80291C28 0028EB88 80 83 00 5C */ lwz r4, 0x5c(r3) /* 80291C2C 0028EB8C 90 9F 0B 40 */ stw r4, 0xb40(r31) /* 80291C30 0028EB90 80 83 00 60 */ lwz r4, 0x60(r3) /* 80291C34 0028EB94 90 9F 0B 44 */ stw r4, 0xb44(r31) /* 80291C38 0028EB98 80 63 00 64 */ lwz r3, 0x64(r3) /* 80291C3C 0028EB9C 90 7F 0B 48 */ stw r3, 0xb48(r31) /* 80291C40 0028EBA0 90 1F 0B 4C */ stw r0, 0xb4c(r31) /* 80291C44 0028EBA4 D0 3F 0B 50 */ stfs f1, 0xb50(r31) /* 80291C48 0028EBA8 48 0B 83 65 */ bl White__6CColorFv /* 80291C4C 0028EBAC 80 03 00 00 */ lwz r0, 0(r3) /* 80291C50 0028EBB0 3C 60 80 3D */ lis r3, lbl_803D5A74@ha /* 80291C54 0028EBB4 38 83 5A 74 */ addi r4, r3, lbl_803D5A74@l /* 80291C58 0028EBB8 C0 02 BE E4 */ lfs f0, lbl_805ADC04@sda21(r2) /* 80291C5C 0028EBBC 90 1F 0B 54 */ stw r0, 0xb54(r31) /* 80291C60 0028EBC0 38 00 00 00 */ li r0, 0 /* 80291C64 0028EBC4 C0 22 BE 9C */ lfs f1, lbl_805ADBBC@sda21(r2) /* 80291C68 0028EBC8 38 61 00 14 */ addi r3, r1, 0x14 /* 80291C6C 0028EBCC D0 1F 0B 58 */ stfs f0, 0xb58(r31) /* 80291C70 0028EBD0 38 A4 00 F1 */ addi r5, r4, 0xf1 /* 80291C74 0028EBD4 C0 02 BE DC */ lfs f0, lbl_805ADBFC@sda21(r2) /* 80291C78 0028EBD8 D0 3F 0B 5C */ stfs f1, 0xb5c(r31) /* 80291C7C 0028EBDC D0 3F 0B 60 */ stfs f1, 0xb60(r31) /* 80291C80 0028EBE0 D0 1F 0B 64 */ stfs f0, 0xb64(r31) /* 80291C84 0028EBE4 90 1F 0B 68 */ stw r0, 0xb68(r31) /* 80291C88 0028EBE8 98 1F 0B 6C */ stb r0, 0xb6c(r31) /* 80291C8C 0028EBEC 98 1F 0B 6D */ stb r0, 0xb6d(r31) /* 80291C90 0028EBF0 98 1F 0B 6E */ stb r0, 0xb6e(r31) /* 80291C94 0028EBF4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 80291C98 0028EBF8 81 84 00 00 */ lwz r12, 0(r4) /* 80291C9C 0028EBFC 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80291CA0 0028EC00 7D 89 03 A6 */ mtctr r12 /* 80291CA4 0028EC04 4E 80 04 21 */ bctrl /* 80291CA8 0028EC08 38 7F 0B 70 */ addi r3, r31, 0xb70 /* 80291CAC 0028EC0C 38 81 00 14 */ addi r4, r1, 0x14 /* 80291CB0 0028EC10 48 0A F1 F9 */ bl __ct__6CTokenFRC6CToken /* 80291CB4 0028EC14 38 61 00 14 */ addi r3, r1, 0x14 /* 80291CB8 0028EC18 38 80 FF FF */ li r4, -1 /* 80291CBC 0028EC1C 48 0A F1 85 */ bl __dt__6CTokenFv /* 80291CC0 0028EC20 38 00 00 00 */ li r0, 0 /* 80291CC4 0028EC24 38 7F 09 A4 */ addi r3, r31, 0x9a4 /* 80291CC8 0028EC28 98 1F 0B 78 */ stb r0, 0xb78(r31) /* 80291CCC 0028EC2C 38 80 00 03 */ li r4, 3 /* 80291CD0 0028EC30 98 1F 0B 79 */ stb r0, 0xb79(r31) /* 80291CD4 0028EC34 90 1F 0B 80 */ stw r0, 0xb80(r31) /* 80291CD8 0028EC38 90 1F 0B 84 */ stw r0, 0xb84(r31) /* 80291CDC 0028EC3C 90 1F 0B 88 */ stw r0, 0xb88(r31) /* 80291CE0 0028EC40 48 00 04 E5 */ bl sub_802921c4 /* 80291CE4 0028EC44 38 7F 09 B8 */ addi r3, r31, 0x9b8 /* 80291CE8 0028EC48 38 80 00 18 */ li r4, 0x18 /* 80291CEC 0028EC4C 48 00 06 FD */ bl sub_802923e8 /* 80291CF0 0028EC50 38 7F 09 DC */ addi r3, r31, 0x9dc /* 80291CF4 0028EC54 38 80 00 04 */ li r4, 4 /* 80291CF8 0028EC58 48 00 06 F1 */ bl sub_802923e8 /* 80291CFC 0028EC5C 38 7F 0A A0 */ addi r3, r31, 0xaa0 /* 80291D00 0028EC60 38 80 00 04 */ li r4, 4 /* 80291D04 0028EC64 48 00 06 E5 */ bl sub_802923e8 /* 80291D08 0028EC68 38 7F 0A B4 */ addi r3, r31, 0xab4 /* 80291D0C 0028EC6C 38 80 00 03 */ li r4, 3 /* 80291D10 0028EC70 48 00 07 E1 */ bl sub_802924f0 /* 80291D14 0028EC74 38 7F 0B 70 */ addi r3, r31, 0xb70 /* 80291D18 0028EC78 48 0A F0 6D */ bl Lock__6CTokenFv /* 80291D1C 0028EC7C C0 22 BF 10 */ lfs f1, lbl_805ADC30@sda21(r2) /* 80291D20 0028EC80 7F E3 FB 78 */ mr r3, r31 /* 80291D24 0028EC84 4B E8 8D 65 */ bl SetMass__13CPhysicsActorFf /* 80291D28 0028EC88 38 7F 0B 7C */ addi r3, r31, 0xb7c /* 80291D2C 0028EC8C 38 80 00 04 */ li r4, 4 /* 80291D30 0028EC90 4B F4 44 CD */ bl "reserve__Q24rstl37vectorFi" /* 80291D34 0028EC94 3B 60 00 00 */ li r27, 0 lbl_80291D38: /* 80291D38 0028EC98 80 1F 0B 80 */ lwz r0, 0xb80(r31) /* 80291D3C 0028EC9C 80 BF 0B 84 */ lwz r5, 0xb84(r31) /* 80291D40 0028ECA0 7C 00 28 00 */ cmpw r0, r5 /* 80291D44 0028ECA4 41 80 00 1C */ blt lbl_80291D60 /* 80291D48 0028ECA8 2C 05 00 00 */ cmpwi r5, 0 /* 80291D4C 0028ECAC 38 7F 0B 7C */ addi r3, r31, 0xb7c /* 80291D50 0028ECB0 38 80 00 04 */ li r4, 4 /* 80291D54 0028ECB4 41 82 00 08 */ beq lbl_80291D5C /* 80291D58 0028ECB8 54 A4 08 3C */ slwi r4, r5, 1 lbl_80291D5C: /* 80291D5C 0028ECBC 4B F4 44 A1 */ bl "reserve__Q24rstl37vectorFi" lbl_80291D60: /* 80291D60 0028ECC0 80 7F 0B 88 */ lwz r3, 0xb88(r31) /* 80291D64 0028ECC4 80 1F 0B 80 */ lwz r0, 0xb80(r31) /* 80291D68 0028ECC8 7C 63 02 15 */ add. r3, r3, r0 /* 80291D6C 0028ECCC 41 82 00 0C */ beq lbl_80291D78 /* 80291D70 0028ECD0 88 0D 99 7C */ lbz r0, lbl_805A853C@sda21(r13) /* 80291D74 0028ECD4 98 03 00 00 */ stb r0, 0(r3) lbl_80291D78: /* 80291D78 0028ECD8 80 7F 0B 80 */ lwz r3, 0xb80(r31) /* 80291D7C 0028ECDC 3B 7B 00 01 */ addi r27, r27, 1 /* 80291D80 0028ECE0 28 1B 00 04 */ cmplwi r27, 4 /* 80291D84 0028ECE4 38 03 00 01 */ addi r0, r3, 1 /* 80291D88 0028ECE8 90 1F 0B 80 */ stw r0, 0xb80(r31) /* 80291D8C 0028ECEC 41 80 FF AC */ blt lbl_80291D38 /* 80291D90 0028ECF0 7F E3 FB 78 */ mr r3, r31 /* 80291D94 0028ECF4 4B DC 1B 29 */ bl GetMaterialFilter__6CActorCFv /* 80291D98 0028ECF8 80 AD 99 80 */ lwz r5, lbl_805A8540@sda21(r13) /* 80291D9C 0028ECFC 38 80 00 01 */ li r4, 1 /* 80291DA0 0028ED00 83 C3 00 08 */ lwz r30, 8(r3) /* 80291DA4 0028ED04 83 A3 00 0C */ lwz r29, 0xc(r3) /* 80291DA8 0028ED08 38 60 00 00 */ li r3, 0 /* 80291DAC 0028ED0C 48 0F 81 49 */ bl __shl2i /* 80291DB0 0028ED10 80 AD 99 84 */ lwz r5, lbl_805A8544@sda21(r13) /* 80291DB4 0028ED14 7C 9B 23 78 */ mr r27, r4 /* 80291DB8 0028ED18 7C 7C 1B 78 */ mr r28, r3 /* 80291DBC 0028ED1C 38 60 00 00 */ li r3, 0 /* 80291DC0 0028ED20 38 80 00 01 */ li r4, 1 /* 80291DC4 0028ED24 48 0F 81 31 */ bl __shl2i /* 80291DC8 0028ED28 80 AD 99 88 */ lwz r5, lbl_805A8548@sda21(r13) /* 80291DCC 0028ED2C 7F 7B 23 78 */ or r27, r27, r4 /* 80291DD0 0028ED30 7F 9C 1B 78 */ or r28, r28, r3 /* 80291DD4 0028ED34 38 60 00 00 */ li r3, 0 /* 80291DD8 0028ED38 38 80 00 01 */ li r4, 1 /* 80291DDC 0028ED3C 48 0F 81 19 */ bl __shl2i /* 80291DE0 0028ED40 7F 9C 1B 78 */ or r28, r28, r3 /* 80291DE4 0028ED44 7F 7B 23 78 */ or r27, r27, r4 /* 80291DE8 0028ED48 7F E3 FB 78 */ mr r3, r31 /* 80291DEC 0028ED4C 7F BD DB 78 */ or r29, r29, r27 /* 80291DF0 0028ED50 7F DE E3 78 */ or r30, r30, r28 /* 80291DF4 0028ED54 4B DC 1A C9 */ bl GetMaterialFilter__6CActorCFv /* 80291DF8 0028ED58 80 A3 00 00 */ lwz r5, 0(r3) /* 80291DFC 0028ED5C 38 00 00 03 */ li r0, 3 /* 80291E00 0028ED60 80 C3 00 04 */ lwz r6, 4(r3) /* 80291E04 0028ED64 7F E3 FB 78 */ mr r3, r31 /* 80291E08 0028ED68 38 81 00 70 */ addi r4, r1, 0x70 /* 80291E0C 0028ED6C 90 C1 00 74 */ stw r6, 0x74(r1) /* 80291E10 0028ED70 90 A1 00 70 */ stw r5, 0x70(r1) /* 80291E14 0028ED74 93 A1 00 7C */ stw r29, 0x7c(r1) /* 80291E18 0028ED78 93 C1 00 78 */ stw r30, 0x78(r1) /* 80291E1C 0028ED7C 90 01 00 80 */ stw r0, 0x80(r1) /* 80291E20 0028ED80 4B DC 1A 81 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter /* 80291E24 0028ED84 7F E3 FB 78 */ mr r3, r31 /* 80291E28 0028ED88 81 9F 00 00 */ lwz r12, 0(r31) /* 80291E2C 0028ED8C 81 8C 02 AC */ lwz r12, 0x2ac(r12) /* 80291E30 0028ED90 7D 89 03 A6 */ mtctr r12 /* 80291E34 0028ED94 4E 80 04 21 */ bctrl /* 80291E38 0028ED98 C0 02 BF 08 */ lfs f0, lbl_805ADC28@sda21(r2) /* 80291E3C 0028ED9C D0 03 00 D8 */ stfs f0, 0xd8(r3) /* 80291E40 0028EDA0 7F E3 FB 78 */ mr r3, r31 /* 80291E44 0028EDA4 BB 61 00 8C */ lmw r27, 0x8c(r1) /* 80291E48 0028EDA8 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80291E4C 0028EDAC 7C 08 03 A6 */ mtlr r0 /* 80291E50 0028EDB0 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80291E54 0028EDB4 4E 80 00 20 */ blr .global sub_80291e58 sub_80291e58: /* 80291E58 0028EDB8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80291E5C 0028EDBC 7C 08 02 A6 */ mflr r0 /* 80291E60 0028EDC0 90 01 00 34 */ stw r0, 0x34(r1) /* 80291E64 0028EDC4 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80291E68 0028EDC8 93 C1 00 28 */ stw r30, 0x28(r1) /* 80291E6C 0028EDCC 93 A1 00 24 */ stw r29, 0x24(r1) /* 80291E70 0028EDD0 7C 9D 23 78 */ mr r29, r4 /* 80291E74 0028EDD4 93 81 00 20 */ stw r28, 0x20(r1) /* 80291E78 0028EDD8 7C 7C 1B 79 */ or. r28, r3, r3 /* 80291E7C 0028EDDC 41 82 00 6C */ beq lbl_80291EE8 /* 80291E80 0028EDE0 80 1C 00 04 */ lwz r0, 4(r28) /* 80291E84 0028EDE4 83 DC 00 0C */ lwz r30, 0xc(r28) /* 80291E88 0028EDE8 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80291E8C 0028EDEC 93 C1 00 10 */ stw r30, 0x10(r1) /* 80291E90 0028EDF0 7F FE 02 14 */ add r31, r30, r0 /* 80291E94 0028EDF4 93 C1 00 14 */ stw r30, 0x14(r1) /* 80291E98 0028EDF8 93 E1 00 08 */ stw r31, 8(r1) /* 80291E9C 0028EDFC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80291EA0 0028EE00 48 00 00 20 */ b lbl_80291EC0 lbl_80291EA4: /* 80291EA4 0028EE04 28 1E 00 00 */ cmplwi r30, 0 /* 80291EA8 0028EE08 41 82 00 14 */ beq lbl_80291EBC /* 80291EAC 0028EE0C 34 1E 00 04 */ addic. r0, r30, 4 /* 80291EB0 0028EE10 41 82 00 0C */ beq lbl_80291EBC /* 80291EB4 0028EE14 38 7E 00 04 */ addi r3, r30, 4 /* 80291EB8 0028EE18 48 0A BC 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_80291EBC: /* 80291EBC 0028EE1C 3B DE 00 14 */ addi r30, r30, 0x14 lbl_80291EC0: /* 80291EC0 0028EE20 7C 1E F8 40 */ cmplw r30, r31 /* 80291EC4 0028EE24 40 82 FF E0 */ bne lbl_80291EA4 /* 80291EC8 0028EE28 80 7C 00 0C */ lwz r3, 0xc(r28) /* 80291ECC 0028EE2C 28 03 00 00 */ cmplwi r3, 0 /* 80291ED0 0028EE30 41 82 00 08 */ beq lbl_80291ED8 /* 80291ED4 0028EE34 48 08 3A 5D */ bl Free__7CMemoryFPCv lbl_80291ED8: /* 80291ED8 0028EE38 7F A0 07 35 */ extsh. r0, r29 /* 80291EDC 0028EE3C 40 81 00 0C */ ble lbl_80291EE8 /* 80291EE0 0028EE40 7F 83 E3 78 */ mr r3, r28 /* 80291EE4 0028EE44 48 08 3A 4D */ bl Free__7CMemoryFPCv lbl_80291EE8: /* 80291EE8 0028EE48 80 01 00 34 */ lwz r0, 0x34(r1) /* 80291EEC 0028EE4C 7F 83 E3 78 */ mr r3, r28 /* 80291EF0 0028EE50 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80291EF4 0028EE54 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80291EF8 0028EE58 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80291EFC 0028EE5C 83 81 00 20 */ lwz r28, 0x20(r1) /* 80291F00 0028EE60 7C 08 03 A6 */ mtlr r0 /* 80291F04 0028EE64 38 21 00 30 */ addi r1, r1, 0x30 /* 80291F08 0028EE68 4E 80 00 20 */ blr .global sub_80291f0c sub_80291f0c: /* 80291F0C 0028EE6C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80291F10 0028EE70 7C 08 02 A6 */ mflr r0 /* 80291F14 0028EE74 90 01 00 24 */ stw r0, 0x24(r1) /* 80291F18 0028EE78 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80291F1C 0028EE7C 7C 9F 23 78 */ mr r31, r4 /* 80291F20 0028EE80 93 C1 00 18 */ stw r30, 0x18(r1) /* 80291F24 0028EE84 7C 7E 1B 79 */ or. r30, r3, r3 /* 80291F28 0028EE88 41 82 00 54 */ beq lbl_80291F7C /* 80291F2C 0028EE8C 80 1E 00 04 */ lwz r0, 4(r30) /* 80291F30 0028EE90 38 61 00 14 */ addi r3, r1, 0x14 /* 80291F34 0028EE94 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80291F38 0028EE98 38 81 00 0C */ addi r4, r1, 0xc /* 80291F3C 0028EE9C 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80291F40 0028EEA0 7C A5 02 14 */ add r5, r5, r0 /* 80291F44 0028EEA4 90 A1 00 0C */ stw r5, 0xc(r1) /* 80291F48 0028EEA8 80 1E 00 0C */ lwz r0, 0xc(r30) /* 80291F4C 0028EEAC 90 A1 00 08 */ stw r5, 8(r1) /* 80291F50 0028EEB0 90 01 00 10 */ stw r0, 0x10(r1) /* 80291F54 0028EEB4 90 01 00 14 */ stw r0, 0x14(r1) /* 80291F58 0028EEB8 48 00 00 41 */ bl sub_80291f98 /* 80291F5C 0028EEBC 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80291F60 0028EEC0 28 03 00 00 */ cmplwi r3, 0 /* 80291F64 0028EEC4 41 82 00 08 */ beq lbl_80291F6C /* 80291F68 0028EEC8 48 08 39 C9 */ bl Free__7CMemoryFPCv lbl_80291F6C: /* 80291F6C 0028EECC 7F E0 07 35 */ extsh. r0, r31 /* 80291F70 0028EED0 40 81 00 0C */ ble lbl_80291F7C /* 80291F74 0028EED4 7F C3 F3 78 */ mr r3, r30 /* 80291F78 0028EED8 48 08 39 B9 */ bl Free__7CMemoryFPCv lbl_80291F7C: /* 80291F7C 0028EEDC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80291F80 0028EEE0 7F C3 F3 78 */ mr r3, r30 /* 80291F84 0028EEE4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80291F88 0028EEE8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80291F8C 0028EEEC 7C 08 03 A6 */ mtlr r0 /* 80291F90 0028EEF0 38 21 00 20 */ addi r1, r1, 0x20 /* 80291F94 0028EEF4 4E 80 00 20 */ blr .global sub_80291f98 sub_80291f98: /* 80291F98 0028EEF8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80291F9C 0028EEFC 7C 08 02 A6 */ mflr r0 /* 80291FA0 0028EF00 90 01 00 14 */ stw r0, 0x14(r1) /* 80291FA4 0028EF04 93 E1 00 0C */ stw r31, 0xc(r1) /* 80291FA8 0028EF08 93 C1 00 08 */ stw r30, 8(r1) /* 80291FAC 0028EF0C 7C 9E 23 78 */ mr r30, r4 /* 80291FB0 0028EF10 83 E3 00 00 */ lwz r31, 0(r3) /* 80291FB4 0028EF14 48 00 00 10 */ b lbl_80291FC4 lbl_80291FB8: /* 80291FB8 0028EF18 7F E3 FB 78 */ mr r3, r31 /* 80291FBC 0028EF1C 48 00 00 2D */ bl sub_80291fe8 /* 80291FC0 0028EF20 3B FF 00 14 */ addi r31, r31, 0x14 lbl_80291FC4: /* 80291FC4 0028EF24 80 1E 00 00 */ lwz r0, 0(r30) /* 80291FC8 0028EF28 7C 1F 00 40 */ cmplw r31, r0 /* 80291FCC 0028EF2C 40 82 FF EC */ bne lbl_80291FB8 /* 80291FD0 0028EF30 80 01 00 14 */ lwz r0, 0x14(r1) /* 80291FD4 0028EF34 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80291FD8 0028EF38 83 C1 00 08 */ lwz r30, 8(r1) /* 80291FDC 0028EF3C 7C 08 03 A6 */ mtlr r0 /* 80291FE0 0028EF40 38 21 00 10 */ addi r1, r1, 0x10 /* 80291FE4 0028EF44 4E 80 00 20 */ blr .global sub_80291fe8 sub_80291fe8: /* 80291FE8 0028EF48 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80291FEC 0028EF4C 7C 08 02 A6 */ mflr r0 /* 80291FF0 0028EF50 28 03 00 00 */ cmplwi r3, 0 /* 80291FF4 0028EF54 90 01 00 24 */ stw r0, 0x24(r1) /* 80291FF8 0028EF58 41 82 00 4C */ beq lbl_80292044 /* 80291FFC 0028EF5C 34 03 00 04 */ addic. r0, r3, 4 /* 80292000 0028EF60 41 82 00 44 */ beq lbl_80292044 /* 80292004 0028EF64 80 03 00 08 */ lwz r0, 8(r3) /* 80292008 0028EF68 80 63 00 10 */ lwz r3, 0x10(r3) /* 8029200C 0028EF6C 54 00 08 3C */ slwi r0, r0, 1 /* 80292010 0028EF70 7C 03 02 14 */ add r0, r3, r0 /* 80292014 0028EF74 90 61 00 0C */ stw r3, 0xc(r1) /* 80292018 0028EF78 7C 64 1B 78 */ mr r4, r3 /* 8029201C 0028EF7C 90 01 00 14 */ stw r0, 0x14(r1) /* 80292020 0028EF80 90 01 00 10 */ stw r0, 0x10(r1) /* 80292024 0028EF84 90 61 00 08 */ stw r3, 8(r1) /* 80292028 0028EF88 48 00 00 08 */ b lbl_80292030 lbl_8029202C: /* 8029202C 0028EF8C 38 84 00 02 */ addi r4, r4, 2 lbl_80292030: /* 80292030 0028EF90 7C 04 00 40 */ cmplw r4, r0 /* 80292034 0028EF94 40 82 FF F8 */ bne lbl_8029202C /* 80292038 0028EF98 28 03 00 00 */ cmplwi r3, 0 /* 8029203C 0028EF9C 41 82 00 08 */ beq lbl_80292044 /* 80292040 0028EFA0 48 08 38 F1 */ bl Free__7CMemoryFPCv lbl_80292044: /* 80292044 0028EFA4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80292048 0028EFA8 7C 08 03 A6 */ mtlr r0 /* 8029204C 0028EFAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80292050 0028EFB0 4E 80 00 20 */ blr .global __dt__12COmegaPirateFv __dt__12COmegaPirateFv: /* 80292054 0028EFB4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80292058 0028EFB8 7C 08 02 A6 */ mflr r0 /* 8029205C 0028EFBC 90 01 00 34 */ stw r0, 0x34(r1) /* 80292060 0028EFC0 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80292064 0028EFC4 7C 9F 23 78 */ mr r31, r4 /* 80292068 0028EFC8 93 C1 00 28 */ stw r30, 0x28(r1) /* 8029206C 0028EFCC 7C 7E 1B 79 */ or. r30, r3, r3 /* 80292070 0028EFD0 41 82 01 30 */ beq lbl_802921A0 /* 80292074 0028EFD4 3C 60 80 3F */ lis r3, lbl_803EB868@ha /* 80292078 0028EFD8 34 1E 0B 7C */ addic. r0, r30, 0xb7c /* 8029207C 0028EFDC 38 03 B8 68 */ addi r0, r3, lbl_803EB868@l /* 80292080 0028EFE0 90 1E 00 00 */ stw r0, 0(r30) /* 80292084 0028EFE4 41 82 00 40 */ beq lbl_802920C4 /* 80292088 0028EFE8 80 7E 0B 88 */ lwz r3, 0xb88(r30) /* 8029208C 0028EFEC 80 1E 0B 80 */ lwz r0, 0xb80(r30) /* 80292090 0028EFF0 90 61 00 1C */ stw r3, 0x1c(r1) /* 80292094 0028EFF4 7C 83 02 14 */ add r4, r3, r0 /* 80292098 0028EFF8 7C 03 20 50 */ subf r0, r3, r4 /* 8029209C 0028EFFC 90 81 00 24 */ stw r4, 0x24(r1) /* 802920A0 0028F000 90 81 00 20 */ stw r4, 0x20(r1) /* 802920A4 0028F004 90 61 00 18 */ stw r3, 0x18(r1) /* 802920A8 0028F008 7C 09 03 A6 */ mtctr r0 /* 802920AC 0028F00C 7C 03 20 40 */ cmplw r3, r4 /* 802920B0 0028F010 41 82 00 08 */ beq lbl_802920B8 lbl_802920B4: /* 802920B4 0028F014 42 00 00 00 */ bdnz lbl_802920B4 lbl_802920B8: /* 802920B8 0028F018 28 03 00 00 */ cmplwi r3, 0 /* 802920BC 0028F01C 41 82 00 08 */ beq lbl_802920C4 /* 802920C0 0028F020 48 08 38 71 */ bl Free__7CMemoryFPCv lbl_802920C4: /* 802920C4 0028F024 34 1E 0B 70 */ addic. r0, r30, 0xb70 /* 802920C8 0028F028 41 82 00 10 */ beq lbl_802920D8 /* 802920CC 0028F02C 38 7E 0B 70 */ addi r3, r30, 0xb70 /* 802920D0 0028F030 38 80 00 00 */ li r4, 0 /* 802920D4 0028F034 48 0A ED 6D */ bl __dt__6CTokenFv lbl_802920D8: /* 802920D8 0028F038 34 1E 0A B4 */ addic. r0, r30, 0xab4 /* 802920DC 0028F03C 41 82 00 44 */ beq lbl_80292120 /* 802920E0 0028F040 80 1E 0A B8 */ lwz r0, 0xab8(r30) /* 802920E4 0028F044 80 7E 0A C0 */ lwz r3, 0xac0(r30) /* 802920E8 0028F048 54 00 10 3A */ slwi r0, r0, 2 /* 802920EC 0028F04C 7C 03 02 14 */ add r0, r3, r0 /* 802920F0 0028F050 90 61 00 0C */ stw r3, 0xc(r1) /* 802920F4 0028F054 7C 64 1B 78 */ mr r4, r3 /* 802920F8 0028F058 90 01 00 14 */ stw r0, 0x14(r1) /* 802920FC 0028F05C 90 01 00 10 */ stw r0, 0x10(r1) /* 80292100 0028F060 90 61 00 08 */ stw r3, 8(r1) /* 80292104 0028F064 48 00 00 08 */ b lbl_8029210C lbl_80292108: /* 80292108 0028F068 38 84 00 04 */ addi r4, r4, 4 lbl_8029210C: /* 8029210C 0028F06C 7C 04 00 40 */ cmplw r4, r0 /* 80292110 0028F070 40 82 FF F8 */ bne lbl_80292108 /* 80292114 0028F074 28 03 00 00 */ cmplwi r3, 0 /* 80292118 0028F078 41 82 00 08 */ beq lbl_80292120 /* 8029211C 0028F07C 48 08 38 15 */ bl Free__7CMemoryFPCv lbl_80292120: /* 80292120 0028F080 38 7E 0A A0 */ addi r3, r30, 0xaa0 /* 80292124 0028F084 38 80 FF FF */ li r4, -1 /* 80292128 0028F088 4B FF FD 31 */ bl sub_80291e58 /* 8029212C 0028F08C 34 1E 0A 9C */ addic. r0, r30, 0xa9c /* 80292130 0028F090 41 82 00 10 */ beq lbl_80292140 /* 80292134 0028F094 80 7E 0A 9C */ lwz r3, 0xa9c(r30) /* 80292138 0028F098 38 80 00 01 */ li r4, 1 /* 8029213C 0028F09C 4B F1 57 A1 */ bl __dt__22CCollisionActorManagerFv lbl_80292140: /* 80292140 0028F0A0 34 1E 0A 38 */ addic. r0, r30, 0xa38 /* 80292144 0028F0A4 41 82 00 10 */ beq lbl_80292154 /* 80292148 0028F0A8 80 7E 0A 38 */ lwz r3, 0xa38(r30) /* 8029214C 0028F0AC 38 80 00 01 */ li r4, 1 /* 80292150 0028F0B0 4B F1 57 8D */ bl __dt__22CCollisionActorManagerFv lbl_80292154: /* 80292154 0028F0B4 38 7E 09 F0 */ addi r3, r30, 0x9f0 /* 80292158 0028F0B8 38 80 FF FF */ li r4, -1 /* 8029215C 0028F0BC 48 0C 11 21 */ bl __dt__13CSkinnedModelFv /* 80292160 0028F0C0 38 7E 09 DC */ addi r3, r30, 0x9dc /* 80292164 0028F0C4 38 80 FF FF */ li r4, -1 /* 80292168 0028F0C8 4B FF FC F1 */ bl sub_80291e58 /* 8029216C 0028F0CC 38 7E 09 B8 */ addi r3, r30, 0x9b8 /* 80292170 0028F0D0 38 80 FF FF */ li r4, -1 /* 80292174 0028F0D4 4B FF FC E5 */ bl sub_80291e58 /* 80292178 0028F0D8 38 7E 09 A4 */ addi r3, r30, 0x9a4 /* 8029217C 0028F0DC 38 80 FF FF */ li r4, -1 /* 80292180 0028F0E0 4B FF FD 8D */ bl sub_80291f0c /* 80292184 0028F0E4 7F C3 F3 78 */ mr r3, r30 /* 80292188 0028F0E8 38 80 00 00 */ li r4, 0 /* 8029218C 0028F0EC 4B F9 B3 6D */ bl __dt__12CElitePirateFv /* 80292190 0028F0F0 7F E0 07 35 */ extsh. r0, r31 /* 80292194 0028F0F4 40 81 00 0C */ ble lbl_802921A0 /* 80292198 0028F0F8 7F C3 F3 78 */ mr r3, r30 /* 8029219C 0028F0FC 48 08 37 95 */ bl Free__7CMemoryFPCv lbl_802921A0: /* 802921A0 0028F100 80 01 00 34 */ lwz r0, 0x34(r1) /* 802921A4 0028F104 7F C3 F3 78 */ mr r3, r30 /* 802921A8 0028F108 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 802921AC 0028F10C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 802921B0 0028F110 7C 08 03 A6 */ mtlr r0 /* 802921B4 0028F114 38 21 00 30 */ addi r1, r1, 0x30 /* 802921B8 0028F118 4E 80 00 20 */ blr .global sub_802921bc sub_802921bc: /* 802921BC 0028F11C 38 60 00 00 */ li r3, 0 /* 802921C0 0028F120 4E 80 00 20 */ blr .global sub_802921c4 sub_802921c4: /* 802921C4 0028F124 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802921C8 0028F128 7C 08 02 A6 */ mflr r0 /* 802921CC 0028F12C 90 01 00 34 */ stw r0, 0x34(r1) /* 802921D0 0028F130 93 E1 00 2C */ stw r31, 0x2c(r1) /* 802921D4 0028F134 93 C1 00 28 */ stw r30, 0x28(r1) /* 802921D8 0028F138 7C 9E 23 78 */ mr r30, r4 /* 802921DC 0028F13C 93 A1 00 24 */ stw r29, 0x24(r1) /* 802921E0 0028F140 7C 7D 1B 78 */ mr r29, r3 /* 802921E4 0028F144 80 03 00 08 */ lwz r0, 8(r3) /* 802921E8 0028F148 7C 1E 00 00 */ cmpw r30, r0 /* 802921EC 0028F14C 40 81 00 90 */ ble lbl_8029227C /* 802921F0 0028F150 1C 7E 00 14 */ mulli r3, r30, 0x14 /* 802921F4 0028F154 2C 03 00 00 */ cmpwi r3, 0 /* 802921F8 0028F158 40 82 00 0C */ bne lbl_80292204 /* 802921FC 0028F15C 3B E0 00 00 */ li r31, 0 /* 80292200 0028F160 48 00 00 1C */ b lbl_8029221C lbl_80292204: /* 80292204 0028F164 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 80292208 0028F168 38 A0 00 00 */ li r5, 0 /* 8029220C 0028F16C 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 80292210 0028F170 38 84 00 C9 */ addi r4, r4, 0xc9 /* 80292214 0028F174 48 08 36 05 */ bl __nwa__FUlPCcPCc /* 80292218 0028F178 7C 7F 1B 78 */ mr r31, r3 lbl_8029221C: /* 8029221C 0028F17C 80 1D 00 04 */ lwz r0, 4(r29) /* 80292220 0028F180 7F E5 FB 78 */ mr r5, r31 /* 80292224 0028F184 80 DD 00 0C */ lwz r6, 0xc(r29) /* 80292228 0028F188 38 61 00 14 */ addi r3, r1, 0x14 /* 8029222C 0028F18C 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80292230 0028F190 38 81 00 0C */ addi r4, r1, 0xc /* 80292234 0028F194 7C C6 02 14 */ add r6, r6, r0 /* 80292238 0028F198 90 C1 00 0C */ stw r6, 0xc(r1) /* 8029223C 0028F19C 80 1D 00 0C */ lwz r0, 0xc(r29) /* 80292240 0028F1A0 90 C1 00 08 */ stw r6, 8(r1) /* 80292244 0028F1A4 90 01 00 10 */ stw r0, 0x10(r1) /* 80292248 0028F1A8 90 01 00 14 */ stw r0, 0x14(r1) /* 8029224C 0028F1AC 48 00 00 99 */ bl sub_802922e4 /* 80292250 0028F1B0 80 1D 00 04 */ lwz r0, 4(r29) /* 80292254 0028F1B4 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80292258 0028F1B8 1C 00 00 14 */ mulli r0, r0, 0x14 /* 8029225C 0028F1BC 7C 83 02 14 */ add r4, r3, r0 /* 80292260 0028F1C0 48 00 00 39 */ bl sub_80292298 /* 80292264 0028F1C4 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80292268 0028F1C8 28 03 00 00 */ cmplwi r3, 0 /* 8029226C 0028F1CC 41 82 00 08 */ beq lbl_80292274 /* 80292270 0028F1D0 48 08 36 C1 */ bl Free__7CMemoryFPCv lbl_80292274: /* 80292274 0028F1D4 93 FD 00 0C */ stw r31, 0xc(r29) /* 80292278 0028F1D8 93 DD 00 08 */ stw r30, 8(r29) lbl_8029227C: /* 8029227C 0028F1DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80292280 0028F1E0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80292284 0028F1E4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80292288 0028F1E8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8029228C 0028F1EC 7C 08 03 A6 */ mtlr r0 /* 80292290 0028F1F0 38 21 00 30 */ addi r1, r1, 0x30 /* 80292294 0028F1F4 4E 80 00 20 */ blr .global sub_80292298 sub_80292298: /* 80292298 0028F1F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8029229C 0028F1FC 7C 08 02 A6 */ mflr r0 /* 802922A0 0028F200 90 01 00 14 */ stw r0, 0x14(r1) /* 802922A4 0028F204 93 E1 00 0C */ stw r31, 0xc(r1) /* 802922A8 0028F208 7C 7F 1B 78 */ mr r31, r3 /* 802922AC 0028F20C 93 C1 00 08 */ stw r30, 8(r1) /* 802922B0 0028F210 7C 9E 23 78 */ mr r30, r4 /* 802922B4 0028F214 48 00 00 10 */ b lbl_802922C4 lbl_802922B8: /* 802922B8 0028F218 7F E3 FB 78 */ mr r3, r31 /* 802922BC 0028F21C 4B FF FD 2D */ bl sub_80291fe8 /* 802922C0 0028F220 3B FF 00 14 */ addi r31, r31, 0x14 lbl_802922C4: /* 802922C4 0028F224 7C 1F F0 40 */ cmplw r31, r30 /* 802922C8 0028F228 40 82 FF F0 */ bne lbl_802922B8 /* 802922CC 0028F22C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802922D0 0028F230 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802922D4 0028F234 83 C1 00 08 */ lwz r30, 8(r1) /* 802922D8 0028F238 7C 08 03 A6 */ mtlr r0 /* 802922DC 0028F23C 38 21 00 10 */ addi r1, r1, 0x10 /* 802922E0 0028F240 4E 80 00 20 */ blr .global sub_802922e4 sub_802922e4: /* 802922E4 0028F244 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802922E8 0028F248 7C 08 02 A6 */ mflr r0 /* 802922EC 0028F24C 90 01 00 24 */ stw r0, 0x24(r1) /* 802922F0 0028F250 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802922F4 0028F254 93 C1 00 18 */ stw r30, 0x18(r1) /* 802922F8 0028F258 7C BE 2B 78 */ mr r30, r5 /* 802922FC 0028F25C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80292300 0028F260 7C 9D 23 78 */ mr r29, r4 /* 80292304 0028F264 83 E3 00 00 */ lwz r31, 0(r3) /* 80292308 0028F268 48 00 00 B4 */ b lbl_802923BC lbl_8029230C: /* 8029230C 0028F26C 28 1E 00 00 */ cmplwi r30, 0 /* 80292310 0028F270 41 82 00 A4 */ beq lbl_802923B4 /* 80292314 0028F274 A0 1F 00 00 */ lhz r0, 0(r31) /* 80292318 0028F278 B0 1E 00 00 */ sth r0, 0(r30) /* 8029231C 0028F27C 80 1F 00 08 */ lwz r0, 8(r31) /* 80292320 0028F280 90 1E 00 08 */ stw r0, 8(r30) /* 80292324 0028F284 80 1F 00 0C */ lwz r0, 0xc(r31) /* 80292328 0028F288 90 1E 00 0C */ stw r0, 0xc(r30) /* 8029232C 0028F28C 80 1F 00 08 */ lwz r0, 8(r31) /* 80292330 0028F290 2C 00 00 00 */ cmpwi r0, 0 /* 80292334 0028F294 40 82 00 1C */ bne lbl_80292350 /* 80292338 0028F298 80 1F 00 0C */ lwz r0, 0xc(r31) /* 8029233C 0028F29C 2C 00 00 00 */ cmpwi r0, 0 /* 80292340 0028F2A0 40 82 00 10 */ bne lbl_80292350 /* 80292344 0028F2A4 38 00 00 00 */ li r0, 0 /* 80292348 0028F2A8 90 1E 00 10 */ stw r0, 0x10(r30) /* 8029234C 0028F2AC 48 00 00 68 */ b lbl_802923B4 lbl_80292350: /* 80292350 0028F2B0 80 1E 00 0C */ lwz r0, 0xc(r30) /* 80292354 0028F2B4 54 03 08 3D */ rlwinm. r3, r0, 1, 0, 0x1e /* 80292358 0028F2B8 40 82 00 10 */ bne lbl_80292368 /* 8029235C 0028F2BC 38 00 00 00 */ li r0, 0 /* 80292360 0028F2C0 90 1E 00 10 */ stw r0, 0x10(r30) /* 80292364 0028F2C4 48 00 00 1C */ b lbl_80292380 lbl_80292368: /* 80292368 0028F2C8 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 8029236C 0028F2CC 38 A0 00 00 */ li r5, 0 /* 80292370 0028F2D0 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 80292374 0028F2D4 38 84 00 C9 */ addi r4, r4, 0xc9 /* 80292378 0028F2D8 48 08 34 A1 */ bl __nwa__FUlPCcPCc /* 8029237C 0028F2DC 90 7E 00 10 */ stw r3, 0x10(r30) lbl_80292380: /* 80292380 0028F2E0 80 1E 00 08 */ lwz r0, 8(r30) /* 80292384 0028F2E4 80 9F 00 10 */ lwz r4, 0x10(r31) /* 80292388 0028F2E8 80 7E 00 10 */ lwz r3, 0x10(r30) /* 8029238C 0028F2EC 7C 09 03 A6 */ mtctr r0 /* 80292390 0028F2F0 2C 00 00 00 */ cmpwi r0, 0 /* 80292394 0028F2F4 40 81 00 20 */ ble lbl_802923B4 lbl_80292398: /* 80292398 0028F2F8 28 03 00 00 */ cmplwi r3, 0 /* 8029239C 0028F2FC 41 82 00 0C */ beq lbl_802923A8 /* 802923A0 0028F300 A0 04 00 00 */ lhz r0, 0(r4) /* 802923A4 0028F304 B0 03 00 00 */ sth r0, 0(r3) lbl_802923A8: /* 802923A8 0028F308 38 63 00 02 */ addi r3, r3, 2 /* 802923AC 0028F30C 38 84 00 02 */ addi r4, r4, 2 /* 802923B0 0028F310 42 00 FF E8 */ bdnz lbl_80292398 lbl_802923B4: /* 802923B4 0028F314 3B DE 00 14 */ addi r30, r30, 0x14 /* 802923B8 0028F318 3B FF 00 14 */ addi r31, r31, 0x14 lbl_802923BC: /* 802923BC 0028F31C 80 1D 00 00 */ lwz r0, 0(r29) /* 802923C0 0028F320 7C 1F 00 40 */ cmplw r31, r0 /* 802923C4 0028F324 40 82 FF 48 */ bne lbl_8029230C /* 802923C8 0028F328 80 01 00 24 */ lwz r0, 0x24(r1) /* 802923CC 0028F32C 7F C3 F3 78 */ mr r3, r30 /* 802923D0 0028F330 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802923D4 0028F334 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802923D8 0028F338 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802923DC 0028F33C 7C 08 03 A6 */ mtlr r0 /* 802923E0 0028F340 38 21 00 20 */ addi r1, r1, 0x20 /* 802923E4 0028F344 4E 80 00 20 */ blr .global sub_802923e8 sub_802923e8: /* 802923E8 0028F348 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802923EC 0028F34C 7C 08 02 A6 */ mflr r0 /* 802923F0 0028F350 90 01 00 34 */ stw r0, 0x34(r1) /* 802923F4 0028F354 BF 41 00 18 */ stmw r26, 0x18(r1) /* 802923F8 0028F358 7C 9F 23 78 */ mr r31, r4 /* 802923FC 0028F35C 7C 7E 1B 78 */ mr r30, r3 /* 80292400 0028F360 80 03 00 08 */ lwz r0, 8(r3) /* 80292404 0028F364 7C 1F 00 00 */ cmpw r31, r0 /* 80292408 0028F368 40 81 00 D4 */ ble lbl_802924DC /* 8029240C 0028F36C 1C 7F 00 14 */ mulli r3, r31, 0x14 /* 80292410 0028F370 2C 03 00 00 */ cmpwi r3, 0 /* 80292414 0028F374 40 82 00 0C */ bne lbl_80292420 /* 80292418 0028F378 3B 80 00 00 */ li r28, 0 /* 8029241C 0028F37C 48 00 00 1C */ b lbl_80292438 lbl_80292420: /* 80292420 0028F380 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 80292424 0028F384 38 A0 00 00 */ li r5, 0 /* 80292428 0028F388 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 8029242C 0028F38C 38 84 00 C9 */ addi r4, r4, 0xc9 /* 80292430 0028F390 48 08 33 E9 */ bl __nwa__FUlPCcPCc /* 80292434 0028F394 7C 7C 1B 78 */ mr r28, r3 lbl_80292438: /* 80292438 0028F398 80 1E 00 04 */ lwz r0, 4(r30) /* 8029243C 0028F39C 7F 9B E3 78 */ mr r27, r28 /* 80292440 0028F3A0 83 5E 00 0C */ lwz r26, 0xc(r30) /* 80292444 0028F3A4 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80292448 0028F3A8 93 41 00 10 */ stw r26, 0x10(r1) /* 8029244C 0028F3AC 7F BA 02 14 */ add r29, r26, r0 /* 80292450 0028F3B0 93 41 00 14 */ stw r26, 0x14(r1) /* 80292454 0028F3B4 93 A1 00 08 */ stw r29, 8(r1) /* 80292458 0028F3B8 93 A1 00 0C */ stw r29, 0xc(r1) /* 8029245C 0028F3BC 48 00 00 28 */ b lbl_80292484 lbl_80292460: /* 80292460 0028F3C0 28 1B 00 00 */ cmplwi r27, 0 /* 80292464 0028F3C4 41 82 00 18 */ beq lbl_8029247C /* 80292468 0028F3C8 A0 1A 00 00 */ lhz r0, 0(r26) /* 8029246C 0028F3CC 38 7B 00 04 */ addi r3, r27, 4 /* 80292470 0028F3D0 38 9A 00 04 */ addi r4, r26, 4 /* 80292474 0028F3D4 B0 1B 00 00 */ sth r0, 0(r27) /* 80292478 0028F3D8 48 0A BC E9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" lbl_8029247C: /* 8029247C 0028F3DC 3B 7B 00 14 */ addi r27, r27, 0x14 /* 80292480 0028F3E0 3B 5A 00 14 */ addi r26, r26, 0x14 lbl_80292484: /* 80292484 0028F3E4 7C 1A E8 40 */ cmplw r26, r29 /* 80292488 0028F3E8 40 82 FF D8 */ bne lbl_80292460 /* 8029248C 0028F3EC 80 1E 00 04 */ lwz r0, 4(r30) /* 80292490 0028F3F0 83 5E 00 0C */ lwz r26, 0xc(r30) /* 80292494 0028F3F4 1C 00 00 14 */ mulli r0, r0, 0x14 /* 80292498 0028F3F8 7F 7A 02 14 */ add r27, r26, r0 /* 8029249C 0028F3FC 48 00 00 20 */ b lbl_802924BC lbl_802924A0: /* 802924A0 0028F400 28 1A 00 00 */ cmplwi r26, 0 /* 802924A4 0028F404 41 82 00 14 */ beq lbl_802924B8 /* 802924A8 0028F408 34 1A 00 04 */ addic. r0, r26, 4 /* 802924AC 0028F40C 41 82 00 0C */ beq lbl_802924B8 /* 802924B0 0028F410 38 7A 00 04 */ addi r3, r26, 4 /* 802924B4 0028F414 48 0A B6 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" lbl_802924B8: /* 802924B8 0028F418 3B 5A 00 14 */ addi r26, r26, 0x14 lbl_802924BC: /* 802924BC 0028F41C 7C 1A D8 40 */ cmplw r26, r27 /* 802924C0 0028F420 40 82 FF E0 */ bne lbl_802924A0 /* 802924C4 0028F424 80 7E 00 0C */ lwz r3, 0xc(r30) /* 802924C8 0028F428 28 03 00 00 */ cmplwi r3, 0 /* 802924CC 0028F42C 41 82 00 08 */ beq lbl_802924D4 /* 802924D0 0028F430 48 08 34 61 */ bl Free__7CMemoryFPCv lbl_802924D4: /* 802924D4 0028F434 93 9E 00 0C */ stw r28, 0xc(r30) /* 802924D8 0028F438 93 FE 00 08 */ stw r31, 8(r30) lbl_802924DC: /* 802924DC 0028F43C BB 41 00 18 */ lmw r26, 0x18(r1) /* 802924E0 0028F440 80 01 00 34 */ lwz r0, 0x34(r1) /* 802924E4 0028F444 7C 08 03 A6 */ mtlr r0 /* 802924E8 0028F448 38 21 00 30 */ addi r1, r1, 0x30 /* 802924EC 0028F44C 4E 80 00 20 */ blr .global sub_802924f0 sub_802924f0: /* 802924F0 0028F450 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802924F4 0028F454 7C 08 02 A6 */ mflr r0 /* 802924F8 0028F458 90 01 00 34 */ stw r0, 0x34(r1) /* 802924FC 0028F45C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80292500 0028F460 7C 9F 23 78 */ mr r31, r4 /* 80292504 0028F464 93 C1 00 28 */ stw r30, 0x28(r1) /* 80292508 0028F468 7C 7E 1B 78 */ mr r30, r3 /* 8029250C 0028F46C 93 A1 00 24 */ stw r29, 0x24(r1) /* 80292510 0028F470 80 03 00 08 */ lwz r0, 8(r3) /* 80292514 0028F474 7C 1F 00 00 */ cmpw r31, r0 /* 80292518 0028F478 40 81 00 AC */ ble lbl_802925C4 /* 8029251C 0028F47C 57 E3 10 3B */ rlwinm. r3, r31, 2, 0, 0x1d /* 80292520 0028F480 40 82 00 0C */ bne lbl_8029252C /* 80292524 0028F484 3B A0 00 00 */ li r29, 0 /* 80292528 0028F488 48 00 00 1C */ b lbl_80292544 lbl_8029252C: /* 8029252C 0028F48C 3C 80 80 3D */ lis r4, lbl_803D5A74@ha /* 80292530 0028F490 38 A0 00 00 */ li r5, 0 /* 80292534 0028F494 38 84 5A 74 */ addi r4, r4, lbl_803D5A74@l /* 80292538 0028F498 38 84 00 C9 */ addi r4, r4, 0xc9 /* 8029253C 0028F49C 48 08 32 DD */ bl __nwa__FUlPCcPCc /* 80292540 0028F4A0 7C 7D 1B 78 */ mr r29, r3 lbl_80292544: /* 80292544 0028F4A4 80 1E 00 04 */ lwz r0, 4(r30) /* 80292548 0028F4A8 7F A4 EB 78 */ mr r4, r29 /* 8029254C 0028F4AC 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80292550 0028F4B0 54 00 10 3A */ slwi r0, r0, 2 /* 80292554 0028F4B4 7C 65 02 14 */ add r3, r5, r0 /* 80292558 0028F4B8 90 A1 00 10 */ stw r5, 0x10(r1) /* 8029255C 0028F4BC 90 61 00 08 */ stw r3, 8(r1) /* 80292560 0028F4C0 90 61 00 0C */ stw r3, 0xc(r1) /* 80292564 0028F4C4 90 A1 00 14 */ stw r5, 0x14(r1) /* 80292568 0028F4C8 48 00 00 1C */ b lbl_80292584 lbl_8029256C: /* 8029256C 0028F4CC 28 04 00 00 */ cmplwi r4, 0 /* 80292570 0028F4D0 41 82 00 0C */ beq lbl_8029257C /* 80292574 0028F4D4 80 05 00 00 */ lwz r0, 0(r5) /* 80292578 0028F4D8 90 04 00 00 */ stw r0, 0(r4) lbl_8029257C: /* 8029257C 0028F4DC 38 84 00 04 */ addi r4, r4, 4 /* 80292580 0028F4E0 38 A5 00 04 */ addi r5, r5, 4 lbl_80292584: /* 80292584 0028F4E4 7C 05 18 40 */ cmplw r5, r3 /* 80292588 0028F4E8 40 82 FF E4 */ bne lbl_8029256C /* 8029258C 0028F4EC 80 1E 00 04 */ lwz r0, 4(r30) /* 80292590 0028F4F0 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80292594 0028F4F4 54 00 10 3A */ slwi r0, r0, 2 /* 80292598 0028F4F8 7C 64 1B 78 */ mr r4, r3 /* 8029259C 0028F4FC 7C 03 02 14 */ add r0, r3, r0 /* 802925A0 0028F500 48 00 00 08 */ b lbl_802925A8 lbl_802925A4: /* 802925A4 0028F504 38 84 00 04 */ addi r4, r4, 4 lbl_802925A8: /* 802925A8 0028F508 7C 04 00 40 */ cmplw r4, r0 /* 802925AC 0028F50C 40 82 FF F8 */ bne lbl_802925A4 /* 802925B0 0028F510 28 03 00 00 */ cmplwi r3, 0 /* 802925B4 0028F514 41 82 00 08 */ beq lbl_802925BC /* 802925B8 0028F518 48 08 33 79 */ bl Free__7CMemoryFPCv lbl_802925BC: /* 802925BC 0028F51C 93 BE 00 0C */ stw r29, 0xc(r30) /* 802925C0 0028F520 93 FE 00 08 */ stw r31, 8(r30) lbl_802925C4: /* 802925C4 0028F524 80 01 00 34 */ lwz r0, 0x34(r1) /* 802925C8 0028F528 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 802925CC 0028F52C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 802925D0 0028F530 83 A1 00 24 */ lwz r29, 0x24(r1) /* 802925D4 0028F534 7C 08 03 A6 */ mtlr r0 /* 802925D8 0028F538 38 21 00 30 */ addi r1, r1, 0x30 /* 802925DC 0028F53C 4E 80 00 20 */ blr .section .sdata2, "a" .balign 8 .global lbl_805ADB90 lbl_805ADB90: # ROM: 0x3FA430 .4byte lbl_803D5A74 .global lbl_805ADB94 lbl_805ADB94: # ROM: 0x3FA434 .float 1.25 .global lbl_805ADB98 lbl_805ADB98: # ROM: 0x3FA438 .float 1.0 .global lbl_805ADB9C lbl_805ADB9C: # ROM: 0x3FA43C .float 1.0 .global lbl_805ADBA0 lbl_805ADBA0: # ROM: 0x3FA440 .float 1.0 .global lbl_805ADBA4 lbl_805ADBA4: # ROM: 0x3FA444 .float 0.25 .global lbl_805ADBA8 lbl_805ADBA8: # ROM: 0x3FA448 .float 0.25 .global lbl_805ADBAC lbl_805ADBAC: # ROM: 0x3FA44C .float 0.25 .global lbl_805ADBB0 lbl_805ADBB0: # ROM: 0x3FA450 .float 1.0 .global lbl_805ADBB4 lbl_805ADBB4: # ROM: 0x3FA454 .4byte lbl_803D5A8A .float 1.0 .global lbl_805ADBBC lbl_805ADBBC: # ROM: 0x3FA45C .4byte 0 .global lbl_805ADBC0 lbl_805ADBC0: # ROM: 0x3FA460 .float 1.0 .global lbl_805ADBC4 lbl_805ADBC4: # ROM: 0x3FA464 .float 0.75 .global lbl_805ADBC8 lbl_805ADBC8: # ROM: 0x3FA468 .float 0.25 .global lbl_805ADBCC lbl_805ADBCC: # ROM: 0x3FA46C .4byte 0x420C0000 .global lbl_805ADBD0 lbl_805ADBD0: # ROM: 0x3FA470 .4byte 0x42700000 .global lbl_805ADBD4 lbl_805ADBD4: # ROM: 0x3FA474 .float 255.0 .global lbl_805ADBD8 lbl_805ADBD8: # ROM: 0x3FA478 .float 0.5 .global lbl_805ADBDC lbl_805ADBDC: # ROM: 0x3FA47C .4byte 0x41C642AA .global lbl_805ADBE0 lbl_805ADBE0: # ROM: 0x3FA480 .4byte 0x3FB33333 .global lbl_805ADBE4 lbl_805ADBE4: # ROM: 0x3FA484 .float 1.5 .global lbl_805ADBE8 lbl_805ADBE8: # ROM: 0x3FA488 .float 0.001 .global lbl_805ADBEC lbl_805ADBEC: # ROM: 0x3FA48C .4byte 0x3BA3D70A .global lbl_805ADBF0 lbl_805ADBF0: # ROM: 0x3FA490 .float 0.1 .global lbl_805ADBF4 lbl_805ADBF4: # ROM: 0x3FA494 .float 5.0 .global lbl_805ADBF8 lbl_805ADBF8: # ROM: 0x3FA498 .4byte 0x40400000 .global lbl_805ADBFC lbl_805ADBFC: # ROM: 0x3FA49C .4byte 0x41880000 .global lbl_805ADC00 lbl_805ADC00: # ROM: 0x3FA4A0 .4byte 0x3EAA7EFA .global lbl_805ADC04 lbl_805ADC04: # ROM: 0x3FA4A4 .float 2.5 .global lbl_805ADC08 lbl_805ADC08: # ROM: 0x3FA4A8 .4byte 0x447A0000 .global lbl_805ADC0C lbl_805ADC0C: # ROM: 0x3FA4AC .float 0.3 .global lbl_805ADC10 lbl_805ADC10: # ROM: 0x3FA4B0 .float 0.6 .global lbl_805ADC14 lbl_805ADC14: # ROM: 0x3FA4B4 .4byte 0x41F00000 .global lbl_805ADC18 lbl_805ADC18: # ROM: 0x3FA4B8 .float 0.2 .global lbl_805ADC1C lbl_805ADC1C: # ROM: 0x3FA4BC .float 1.25 .global lbl_805ADC20 lbl_805ADC20: # ROM: 0x3FA4C0 .float 0.7 .global lbl_805ADC24 lbl_805ADC24: # ROM: 0x3FA4C4 .4byte 0x42C80000 .global lbl_805ADC28 lbl_805ADC28: # ROM: 0x3FA4C8 .4byte 0x41A00000 .global lbl_805ADC2C lbl_805ADC2C: # ROM: 0x3FA4CC .4byte 0x461C4000 .global lbl_805ADC30 lbl_805ADC30: # ROM: 0x3FA4D0 .4byte 0x47C35000 .4byte 0 .section .rodata .balign 8 .global lbl_803D5998 lbl_803D5998: # ROM: 0x3D2998 .4byte lbl_803D5A9D .4byte lbl_803D5AA5 .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5AAC .4byte lbl_803D5AB4 .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5ABC .4byte lbl_803D5AC4 .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5ACC .4byte lbl_803D5AAC .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5AD3 .4byte lbl_803D5ABC .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5ADA .4byte lbl_803D5AE2 .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5AEA .4byte lbl_803D5AF2 .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5AE2 .4byte lbl_803D5AFA .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5AF2 .4byte lbl_803D5B04 .float 1.0 .float 1.0 .float 1.0 .4byte lbl_803D5AFA .4byte lbl_803D5B0E .float 2.0 .float 2.0 .float 2.0 .4byte lbl_803D5B04 .4byte lbl_803D5B1C .float 2.0 .float 2.0 .float 2.0 .global lbl_803D5A74 lbl_803D5A74: # ROM: 0x3D2A74 .asciz "grenadeLauncher2_LCTR" .global lbl_803D5A8A lbl_803D5A8A: # ROM: 0x3D2A8A .byte 0x6C, 0x6F .asciz "ckon_target_LCTR" .global lbl_803D5A9D lbl_803D5A9D: # ROM: 0x3D2A9D .byte 0x53, 0x70, 0x69 .asciz "ne_2" .global lbl_803D5AA5 lbl_803D5AA5: # ROM: 0x3D2AA5 .byte 0x43, 0x6F, 0x6C .4byte 0x6C617200 .global lbl_803D5AAC lbl_803D5AAC: # ROM: 0x3D2AAC .asciz "R_ankle" .global lbl_803D5AB4 lbl_803D5AB4: # ROM: 0x3D2AB4 .asciz "R_toe_1" .global lbl_803D5ABC lbl_803D5ABC: # ROM: 0x3D2ABC .asciz "L_ankle" .global lbl_803D5AC4 lbl_803D5AC4: # ROM: 0x3D2AC4 .asciz "L_toe_1" .global lbl_803D5ACC lbl_803D5ACC: # ROM: 0x3D2ACC .asciz "R_knee" .global lbl_803D5AD3 lbl_803D5AD3: # ROM: 0x3D2AD3 .byte 0x4C .asciz "_knee" .global lbl_803D5ADA lbl_803D5ADA: # ROM: 0x3D2ADA .byte 0x52, 0x5F .asciz "elbow" .global lbl_803D5AE2 lbl_803D5AE2: # ROM: 0x3D2AE2 .byte 0x52, 0x5F .asciz "wrist" .global lbl_803D5AEA lbl_803D5AEA: # ROM: 0x3D2AEA .byte 0x4C, 0x5F .asciz "elbow" .global lbl_803D5AF2 lbl_803D5AF2: # ROM: 0x3D2AF2 .byte 0x4C, 0x5F .asciz "wrist" .global lbl_803D5AFA lbl_803D5AFA: # ROM: 0x3D2AFA .byte 0x52, 0x5F .asciz "index_1" .global lbl_803D5B04 lbl_803D5B04: # ROM: 0x3D2B04 .asciz "L_index_1" .global lbl_803D5B0E lbl_803D5B0E: # ROM: 0x3D2B0E .byte 0x52, 0x5F .asciz "index_3_SDK" .global lbl_803D5B1C lbl_803D5B1C: # ROM: 0x3D2B1C .asciz "L_index_3_SDK" .byte 0x4F, 0x6D .asciz "ega Pirate Flash" .byte 0x3F, 0x3F, 0x28 .4byte 0x3F3F2900 .asciz "Omega_Pirate_OBB_" .byte 0x4A, 0x75 .asciz "mpBack" .balign 4 .asciz "root" .byte 0x54, 0x68, 0x65 .asciz "rmal_Spot_2" .4byte 0