.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__6CActorFb .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__6CActorCFRC12CTransform4f .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 lbl_803EB7BC lbl_803EB7BC: # ROM: 0x3E87BC .4byte lbl_80291744 .4byte lbl_802909FC .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80290A6C .4byte lbl_802914E4 .4byte lbl_80291744 .4byte lbl_802914F0 .4byte lbl_80291744 .4byte lbl_802916A4 .4byte lbl_80291698 .4byte lbl_80291744 .4byte lbl_80291500 .4byte lbl_802916CC .4byte lbl_80291518 .4byte lbl_8029150C .4byte lbl_802916F4 .4byte lbl_80291744 .4byte lbl_8029171C .4byte lbl_802915D8 .4byte lbl_80291744 .4byte lbl_80290B10 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_802911DC .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_802908F0 .4byte lbl_80290AD0 .4byte lbl_80290B24 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291744 .4byte lbl_80291330 .4byte lbl_8029142C .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__6CActorFb .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__6CActorCFRC12CTransform4f .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__14CCameraManagerCFR13CStateManager /* 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, lbl_805A61D4@ha /* 8028BABC 00288A1C 38 83 61 D4 */ addi r4, r3, lbl_805A61D4@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, lbl_805A5EBC@ha /* 8028BB18 00288A78 83 E3 00 00 */ lwz r31, 0(r3) /* 8028BB1C 00288A7C 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@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, lbl_805A8828@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__16CActorParametersFv /* 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, lbl_803DAA68@ha /* 8028C404 00289364 3C 60 80 3E */ lis r3, lbl_803DAA14@ha /* 8028C408 00289368 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028C448 002893A8 90 1F 02 14 */ stw r0, 0x214(r31) /* 8028C44C 002893AC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_8056D780@ha /* 8028D2EC 0028A24C 7F 83 E3 78 */ mr r3, r28 /* 8028D2F0 0028A250 38 84 D7 80 */ addi r4, r4, lbl_8056D780@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 sub_801a78dc /* 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 sub_801a78dc /* 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, lbl_803DAA68@ha /* 8028DD58 0028ACB8 38 C0 00 01 */ li r6, 1 /* 8028DD5C 0028ACBC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028DDA0 0028AD00 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028DDA4 0028AD04 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028DE94 0028ADF4 C0 5E 00 58 */ lfs f2, 0x58(r30) /* 8028DE98 0028ADF8 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028DEF4 0028AE54 90 1C 00 F8 */ stw r0, 0xf8(r28) /* 8028DEF8 0028AE58 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E0A0 0028B000 3C 60 80 3E */ lis r3, lbl_803DA9E4@ha /* 8028E0A4 0028B004 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E0EC 0028B04C 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028E0F0 0028B050 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E2B8 0028B218 38 C0 00 01 */ li r6, 1 /* 8028E2BC 0028B21C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E300 0028B260 90 1E 00 C8 */ stw r0, 0xc8(r30) /* 8028E304 0028B264 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E3FC 0028B35C 80 7B 04 50 */ lwz r3, 0x450(r27) /* 8028E400 0028B360 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@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, lbl_803DAA68@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, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E6F8 0028B658 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E748 0028B6A8 90 1A 01 58 */ stw r0, 0x158(r26) /* 8028E74C 0028B6AC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E768 0028B6C8 38 00 00 0A */ li r0, 0xa /* 8028E76C 0028B6CC 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E794 0028B6F4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E82C 0028B78C 80 63 04 50 */ lwz r3, 0x450(r3) /* 8028E830 0028B790 38 04 AA 68 */ addi r0, r4, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E874 0028B7D4 90 1F 01 58 */ stw r0, 0x158(r31) /* 8028E878 0028B7D8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E894 0028B7F4 38 00 00 0A */ li r0, 0xa /* 8028E898 0028B7F8 38 A4 AA 68 */ addi r5, r4, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028E8B8 0028B818 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028EB8C 0028BAEC 38 C0 00 01 */ li r6, 1 /* 8028EB90 0028BAF0 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028EBD4 0028BB34 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028EBD8 0028BB38 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028ECD4 0028BC34 38 C0 00 01 */ li r6, 1 /* 8028ECD8 0028BC38 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028ED1C 0028BC7C 90 1B 00 C8 */ stw r0, 0xc8(r27) /* 8028ED20 0028BC80 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_8056D718@ha /* 8028ED9C 0028BCFC 38 84 D7 18 */ addi r4, r4, lbl_8056D718@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, lbl_803DAA68@ha /* 8028EEEC 0028BE4C 38 00 00 00 */ li r0, 0 /* 8028EEF0 0028BE50 38 83 AA 68 */ addi r4, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028EF34 0028BE94 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 8028EF38 0028BE98 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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 sub_80077c8c 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 sub_80077c8c 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, lbl_803DAA68@ha /* 8028FEF8 0028CE58 C0 02 BE A0 */ lfs f0, lbl_805ADBC0@sda21(r2) /* 8028FEFC 0028CE5C 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 8028FF50 0028CEB0 90 1D 02 88 */ stw r0, 0x288(r29) /* 8028FF54 0028CEB4 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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__13CStateManagerFP7CEntity9TEditorId20EScriptObjectMessage /* 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 .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 lbl_80291744 /* 802908D8 0028D838 3C A0 80 3F */ lis r5, lbl_803EB7BC@ha /* 802908DC 0028D83C 56 A0 10 3A */ slwi r0, r21, 2 /* 802908E0 0028D840 38 A5 B7 BC */ addi r5, r5, lbl_803EB7BC@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 .global lbl_802908F0 lbl_802908F0: /* 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 .global lbl_802909FC lbl_802909FC: /* 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 .global lbl_80290A6C lbl_80290A6C: /* 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 .global lbl_80290AD0 lbl_80290AD0: /* 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 .global lbl_80290B10 lbl_80290B10: /* 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 .global lbl_80290B24 lbl_80290B24: /* 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 .global lbl_802911DC lbl_802911DC: /* 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 .global lbl_80291330 lbl_80291330: /* 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, lbl_803DAA68@ha /* 80291350 0028E2B0 C0 5F 00 58 */ lfs f2, 0x58(r31) /* 80291354 0028E2B4 38 A3 AA 68 */ addi r5, r3, lbl_803DAA68@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, lbl_803DAA68@ha /* 802913B0 0028E310 90 12 00 F8 */ stw r0, 0xf8(r18) /* 802913B4 0028E314 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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 .global lbl_8029142C lbl_8029142C: /* 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 .global lbl_802914E4 lbl_802914E4: /* 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 .global lbl_802914F0 lbl_802914F0: /* 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 .global lbl_80291500 lbl_80291500: /* 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 .global lbl_8029150C lbl_8029150C: /* 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 .global lbl_80291518 lbl_80291518: /* 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, lbl_803DAA68@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, lbl_803DAA68@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, lbl_803DAA68@ha /* 802915A4 0028E504 90 12 00 F8 */ stw r0, 0xf8(r18) /* 802915A8 0028E508 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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 .global lbl_802915D8 lbl_802915D8: /* 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, lbl_803DAA68@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, lbl_803DAA68@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, lbl_803DAA68@ha /* 80291664 0028E5C4 90 12 00 F8 */ stw r0, 0xf8(r18) /* 80291668 0028E5C8 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@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 .global lbl_80291698 lbl_80291698: /* 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 .global lbl_802916A4 lbl_802916A4: /* 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 .global lbl_802916CC lbl_802916CC: /* 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 .global lbl_802916F4 lbl_802916F4: /* 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 .global lbl_8029171C lbl_8029171C: /* 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 .global lbl_80291744 lbl_80291744: /* 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 .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, lbl_80570004@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, -0x2a88(r3) /* 80291B74 0028EAD4 80 83 00 04 */ lwz r4, lbl_80570004@l(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 sub_801a78dc 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 sub_801a78dc 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 0x803D5A74 .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 0x803D5A8A .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 .4byte 0x3F19999A .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 0x803D5A9D .4byte 0x803D5AA5 .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5AAC .4byte 0x803D5AB4 .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5ABC .4byte 0x803D5AC4 .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5ACC .4byte 0x803D5AAC .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5AD3 .4byte 0x803D5ABC .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5ADA .4byte 0x803D5AE2 .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5AEA .4byte 0x803D5AF2 .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5AE2 .4byte 0x803D5AFA .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5AF2 .4byte 0x803D5B04 .float 1.0 .float 1.0 .float 1.0 .4byte 0x803D5AFA .4byte 0x803D5B0E .float 2.0 .float 2.0 .float 2.0 .4byte 0x803D5B04 .4byte 0x803D5B1C .float 2.0 .float 2.0 .float 2.0 .global lbl_803D5A74 lbl_803D5A74: # ROM: 0x3D2A74 .asciz "grenadeLauncher2_LCTR" .byte 0x6C, 0x6F .asciz "ckon_target_LCTR" .byte 0x53, 0x70, 0x69 .asciz "ne_2" .byte 0x43, 0x6F, 0x6C .4byte 0x6C617200 .asciz "R_ankle" .asciz "R_toe_1" .asciz "L_ankle" .asciz "L_toe_1" .asciz "R_knee" .byte 0x4C .asciz "_knee" .byte 0x52, 0x5F .asciz "elbow" .byte 0x52, 0x5F .asciz "wrist" .byte 0x4C, 0x5F .asciz "elbow" .byte 0x4C, 0x5F .asciz "wrist" .byte 0x52, 0x5F .asciz "index_1" .asciz "L_index_1" .byte 0x52, 0x5F .asciz "index_3_SDK" .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