prime/asm/MetroidPrime/Enemies/CMetroidPrimeExo.s

14128 lines
673 KiB
ArmAsm

.include "macros.inc"
.section .ctors, "wa"
lbl_ctor:
.4byte __sinit_CMetroidPrimeExo_cpp
.section .data
.balign 8
.global lbl_803EAA90
lbl_803EAA90:
# ROM: 0x3E7A90
.4byte lbl_803D56DB
.float 1.5
.4byte lbl_803D56E7
.4byte 0x40133333
.4byte 0
.4byte 0x3F6B851F
.global lbl_803EAAA8
lbl_803EAAA8:
# ROM: 0x3E7AA8
.4byte lbl_803D56F5
.4byte lbl_803D5700
.float 0.6
.float 0.6
.float 0.6
.4byte lbl_803D5700
.4byte lbl_803D5708
.float 0.3
.float 0.3
.float 0.3
.4byte lbl_803D5708
.4byte lbl_803D5710
.float 0.3
.float 0.3
.float 0.3
.4byte lbl_803D5710
.4byte lbl_803D571C
.float 0.4
.4byte 0x3F99999A
.float 0.4
.4byte lbl_803D5727
.4byte lbl_803D5731
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D5731
.4byte lbl_803D573B
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D573B
.4byte lbl_803D5745
.float 0.2
.float 0.2
.float 0.7
.4byte lbl_803D5752
.4byte lbl_803D575E
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D575E
.4byte lbl_803D576A
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D5777
.4byte lbl_803D5782
.float 0.6
.float 0.6
.float 0.6
.4byte lbl_803D5782
.4byte lbl_803D578A
.float 0.3
.float 0.3
.float 0.3
.4byte lbl_803D578A
.4byte lbl_803D5792
.float 0.3
.float 0.3
.float 0.3
.4byte lbl_803D5792
.4byte lbl_803D579E
.float 0.4
.4byte 0x3F99999A
.float 0.4
.4byte lbl_803D57A9
.4byte lbl_803D57B3
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D57B3
.4byte lbl_803D57BD
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D57BD
.4byte lbl_803D57C7
.float 0.2
.float 0.2
.float 0.7
.4byte lbl_803D57D4
.4byte lbl_803D57E0
.float 0.4
.float 0.4
.float 0.4
.4byte lbl_803D57E0
.4byte lbl_803D57EC
.float 0.2
.float 0.2
.float 0.2
.4byte lbl_803D57F9
.4byte lbl_803D5804
.4byte 0x3F4CCCCD
.4byte 0x3F4CCCCD
.4byte 0x3F4CCCCD
.4byte lbl_803D5804
.4byte lbl_803D580C
.float 0.7
.float 0.7
.float 0.7
.4byte lbl_803D580C
.4byte lbl_803D5814
.float 0.6
.float 0.1
.float 0.6
.4byte lbl_803D581F
.4byte lbl_803D5829
.4byte 0x3F4CCCCD
.float 0.1
.float 0.6
.4byte 0
.4byte 0
.float 2.0
.float 0.2
.float 0.5
.global lbl_803EAC74
lbl_803EAC74:
# ROM: 0x3E7C74
.4byte lbl_803D5731
.4byte lbl_803D57B3
.4byte lbl_803D5727
.4byte lbl_803D57A9
.4byte 0
.4byte 0
.4byte lbl_803D5700
.4byte lbl_803D5782
.4byte 0
.4byte 0
.4byte lbl_803D5833
.4byte lbl_803D581F
.4byte 0
.4byte 0
.4byte lbl_803D56F5
.4byte lbl_803D5777
.4byte lbl_803D575E
.4byte lbl_803D57E0
.4byte lbl_803D576A
.4byte lbl_803D57EC
.global lbl_803EACC4
lbl_803EACC4:
# ROM: 0x3E7CC4
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryTaunt__10CPatternedFR13CStateManageri
.global lbl_803EACD0
lbl_803EACD0:
# ROM: 0x3E7CD0
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryProjectileAttack__10CPatternedFR13CStateManageri
.global lbl_803EACDC
lbl_803EACDC:
# ROM: 0x3E7CDC
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryMeleeAttack__10CPatternedFR13CStateManageri
.global lbl_803EACE8
lbl_803EACE8:
# ROM: 0x3E7CE8
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryProjectileAttack__10CPatternedFR13CStateManageri
.global lbl_803EACF4
lbl_803EACF4:
# ROM: 0x3E7CF4
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryProjectileAttack__10CPatternedFR13CStateManageri
.global lbl_803EAD00
lbl_803EAD00:
# ROM: 0x3E7D00
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryMeleeAttack__10CPatternedFR13CStateManageri
.global lbl_803EAD0C
lbl_803EAD0C:
# ROM: 0x3E7D0C
.4byte 0
.4byte 0xFFFFFFFF
.4byte sub_8007c418
.global lbl_803EAD18
lbl_803EAD18:
# ROM: 0x3E7D18
.4byte 0
.4byte 0xFFFFFFFF
.4byte sub_8007bd04
.global lbl_803EAD24
lbl_803EAD24:
# ROM: 0x3E7D24
.4byte 0
.4byte 0xFFFFFFFF
.4byte sub_8027381c
.global lbl_803EAD30
lbl_803EAD30:
# ROM: 0x3E7D30
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryMeleeAttack__10CPatternedFR13CStateManageri
.global lbl_803EAD3C
lbl_803EAD3C:
# ROM: 0x3E7D3C
.4byte 0
.4byte 0xFFFFFFFF
.4byte sub_8007c418
.global lbl_803EAD48
lbl_803EAD48:
# ROM: 0x3E7D48
.4byte 0
.4byte 0xFFFFFFFF
.4byte TryMeleeAttack__10CPatternedFR13CStateManageri
.global lbl_803EAD54
lbl_803EAD54:
# ROM: 0x3E7D54
.4byte 0
.4byte 0
.4byte __dt__16CMetroidPrimeExo
.4byte Accept__16CMetroidPrimeExoFR8IVisitor
.4byte PreThink__16CMetroidPrimeExoFfR13CStateManager
.4byte Think__16CMetroidPrimeExoFfR13CStateManager
.4byte AcceptScriptMsg__16CMetroidPrimeExoF20EScriptObjectMessage9TUniqueIdR13CStateManager
.4byte SetActive__6CActorFb
.4byte PreRender__16CMetroidPrimeExoFR13CStateManagerRC14CFrustumPlanes
.4byte AddToRenderer__16CMetroidPrimeExoCFRC14CFrustumPlanesRC13CStateManager
.4byte Render__16CMetroidPrimeExoCFRC13CStateManager
.4byte CanRenderUnsorted__16CMetroidPrimeExoCFRC13CStateManager
.4byte CalculateRenderBounds__6CActorFv
.4byte HealthInfo__3CAiFR13CStateManager
.4byte GetDamageVulnerability__3CAiCFv
.4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo
.4byte GetTouchBounds__10CPatternedCFv
.4byte Touch__16CMetroidPrimeExoFR6CActorR13CStateManager
.4byte GetOrbitPosition__10CPatternedCFRC13CStateManager
.4byte GetAimPosition__10CPatternedCFRC13CStateManagerf
.4byte GetHomingPosition__6CActorCFRC13CStateManagerf
.4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager
.4byte GetCollisionResponseType__10CPatternedCFRC9CVector3fRC9CVector3fRC11CWeaponModei
.4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager
.4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager
.4byte GetSortingBounds__6CActorCFRC13CStateManager
.4byte DoUserAnimEvent__16CMetroidPrimeExoFR13CStateManagerRC13CInt32POINode14EUserEventType
.4byte GetCollisionPrimitive__13CPhysicsActorCFv
.4byte GetPrimitiveTransform__13CPhysicsActorCFv
.4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager
.4byte GetStepDownHeight__13CPhysicsActorCFv
.4byte GetStepUpHeight__13CPhysicsActorCFv
.4byte GetWeight__13CPhysicsActorCFv
.4byte Death__10CPatternedFR13CStateManagerRC9CVector3f18EScriptObjectState
.4byte KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef
.4byte GetDamageVulnerability__3CAiFv
.4byte TakeDamage__10CPatternedFRC9CVector3ff
.4byte CanBeShot__3CAiFRC13CStateManageri
.4byte IsListening__3CAiCFv
.4byte Listen__3CAiFRC9CVector3f16EListenNoiseType
.4byte GetOrigin__3CAiCFv
.4byte Patrol__10CPatternedFR13CStateManager9EStateMsgf
.4byte FollowPattern__10CPatternedFR13CStateManager9EStateMsgf
.4byte Dead__10CPatternedFR13CStateManager9EStateMsgf
.4byte PathFind__10CPatternedFR13CStateManager9EStateMsgf
.4byte Start__10CPatternedFR13CStateManager9EStateMsgf
.4byte SelectTarget__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte TargetPatrol__10CPatternedFR13CStateManager9EStateMsgf
.4byte TargetPlayer__10CPatternedFR13CStateManager9EStateMsgf
.4byte TargetCover__3CAiFR13CStateManager9EStateMsgf
.4byte Halt__3CAiFR13CStateManager9EStateMsgf
.4byte Walk__3CAiFR13CStateManager9EStateMsgf
.4byte Run__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Generate__3CAiFR13CStateManager9EStateMsgf
.4byte Deactivate__3CAiFR13CStateManager9EStateMsgf
.4byte Attack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte LoopedAttack__3CAiFR13CStateManager9EStateMsgf
.4byte JumpBack__3CAiFR13CStateManager9EStateMsgf
.4byte DoubleSnap__3CAiFR13CStateManager9EStateMsgf
.4byte Shuffle__3CAiFR13CStateManager9EStateMsgf
.4byte TurnAround__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Skid__3CAiFR13CStateManager9EStateMsgf
.4byte Active__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte InActive__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte CoverAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Crouch__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte FadeIn__3CAiFR13CStateManager9EStateMsgf
.4byte FadeOut__3CAiFR13CStateManager9EStateMsgf
.4byte GetUp__3CAiFR13CStateManager9EStateMsgf
.4byte Taunt__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Suck__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Flee__3CAiFR13CStateManager9EStateMsgf
.4byte Lurk__3CAiFR13CStateManager9EStateMsgf
.4byte ProjectileAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Flinch__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Hurled__3CAiFR13CStateManager9EStateMsgf
.4byte TelegraphAttack__3CAiFR13CStateManager9EStateMsgf
.4byte Jump__3CAiFR13CStateManager9EStateMsgf
.4byte Explode__3CAiFR13CStateManager9EStateMsgf
.4byte Dodge__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Retreat__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Cover__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Approach__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte WallHang__3CAiFR13CStateManager9EStateMsgf
.4byte WallDetach__3CAiFR13CStateManager9EStateMsgf
.4byte Enraged__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte SpecialAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Growth__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Faint__3CAiFR13CStateManager9EStateMsgf
.4byte Land__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
.4byte Bounce__3CAiFR13CStateManager9EStateMsgf
.4byte PathFindEx__3CAiFR13CStateManager9EStateMsgf
.4byte Dizzy__3CAiFR13CStateManager9EStateMsgf
.4byte CallForBackup__3CAiFR13CStateManager9EStateMsgf
.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__16CMetroidPrimeExoFR13CStateManagerf
.4byte InRange__10CPatternedFR13CStateManagerf
.4byte InMaxRange__16CMetroidPrimeExoFR13CStateManagerf
.4byte InDetectionRange__10CPatternedFR13CStateManagerf
.4byte SpotPlayer__10CPatternedFR13CStateManagerf
.4byte PlayerSpot__16CMetroidPrimeExoFR13CStateManagerf
.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 AnimOver__10CPatternedFR13CStateManagerf
.4byte sub_80273550
.4byte ShouldDoubleSnap__16CMetroidPrimeExoFR13CStateManagerf
.4byte InPosition__16CMetroidPrimeExoFR13CStateManagerf
.4byte ShouldTurn__16CMetroidPrimeExoFR13CStateManagerf
.4byte HitSomething__3CAiFR13CStateManagerf
.4byte sub_802734e4
.4byte Stuck__16CMetroidPrimeExoFR13CStateManagerf
.4byte NoPathNodes__10CPatternedFR13CStateManagerf
.4byte Landed__10CPatternedFR13CStateManagerf
.4byte HearShot__3CAiFR13CStateManagerf
.4byte HearPlayer__3CAiFR13CStateManagerf
.4byte CoverCheck__16CMetroidPrimeExoFR13CStateManagerf
.4byte sub_8027353c
.4byte CoverBlown__3CAiFR13CStateManagerf
.4byte CoverNearlyBlown__3CAiFR13CStateManagerf
.4byte sub_80273798
.4byte GotUp__3CAiFR13CStateManagerf
.4byte LineOfSight__3CAiFR13CStateManagerf
.4byte AggressionCheck__16CMetroidPrimeExoFR13CStateManagerf
.4byte AttackOver__16CMetroidPrimeExoFR13CStateManagerf
.4byte ShouldTaunt__3CAiFR13CStateManagerf
.4byte Inside__3CAiFR13CStateManagerf
.4byte sub_80273564
.4byte ShouldFlinch__16CMetroidPrimeExoFR13CStateManagerf
.4byte PatrolPathOver__10CPatternedFR13CStateManagerf
.4byte ShouldDodge__3CAiFR13CStateManagerf
.4byte ShouldRetreat__16CMetroidPrimeExoFR13CStateManagerf
.4byte sub_80273528
.4byte sub_802737ac
.4byte ShotAt__3CAiFR13CStateManagerf
.4byte HasTargetingPoint__3CAiFR13CStateManagerf
.4byte ShouldWallHang__3CAiFR13CStateManagerf
.4byte SetAIStage__3CAiFR13CStateManagerf
.4byte AIStage__16CMetroidPrimeExoFR13CStateManagerf
.4byte StartAttack__16CMetroidPrimeExoFR13CStateManagerf
.4byte BreakAttack__3CAiFR13CStateManagerf
.4byte ShouldStrafe__3CAiFR13CStateManagerf
.4byte sub_8027358c
.4byte LostInterest__3CAiFR13CStateManagerf
.4byte CodeTrigger__16CMetroidPrimeExoFR13CStateManagerf
.4byte BounceFind__3CAiFR13CStateManagerf
.4byte Random__10CPatternedFR13CStateManagerf
.4byte FixedRandom__10CPatternedFR13CStateManagerf
.4byte IsDizzy__3CAiFR13CStateManagerf
.4byte ShouldCallForBackup__3CAiFR13CStateManagerf
.4byte Freeze__10CPatternedFRC9CVector3f13CUnitVector3ff
.4byte KnockbackWhenFrozen__10CPatternedCFv
.4byte MassiveDeath__10CPatternedFR13CStateManager
.4byte MassiveFrozenDeath__10CPatternedFR13CStateManager
.4byte Burn__10CPatternedFff
.4byte Shock__10CPatternedFff
.4byte ThinkAboutMove__10CPatternedFf
.4byte GetSearchPath__10CPatternedFv
.4byte GetContactDamage__10CPatternedCFv
.4byte GetModelAlphau8__10CPatternedCFRC13CStateManager
.4byte IsOnGround__10CPatternedCFv
.4byte GetGravityConstant__10CPatternedCFv
.4byte ProjectileInfo__16CMetroidPrimeExoFv
.4byte PhazeOut__10CPatternedFR13CStateManager
.4byte GetDeathExplosionParticle__10CPatternedCFv
.global lbl_803EB020
lbl_803EB020:
# ROM: 0x3E8020
.4byte lbl_8027AEA0
.4byte lbl_8027ACE0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027ACF4
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AE54
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AE68
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AD08
.4byte lbl_8027AE14
.4byte lbl_8027ADA8
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AEA0
.4byte lbl_8027AE80
.4byte lbl_8027AE9C
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.global lbl_803EB0FC
lbl_803EB0FC:
# ROM: 0x3E80FC
.4byte 0
.4byte 0
.4byte sub_8027c4ec
.4byte sub_8027c0d0
.4byte PreThink__7CEntityFfR13CStateManager
.4byte Think__7CEntityFfR13CStateManager
.4byte AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager
.4byte SetActive__6CActorFb
.4byte PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes
.4byte AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager
.4byte Render__13CPhysicsActorCFRC13CStateManager
.4byte CanRenderUnsorted__6CActorCFRC13CStateManager
.4byte CalculateRenderBounds__6CActorFv
.4byte HealthInfo__6CActorFR13CStateManager
.4byte GetDamageVulnerability__6CActorCFv
.4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo
.4byte GetTouchBounds__6CActorCFv
.4byte Touch__6CActorFR6CActorR13CStateManager
.4byte GetOrbitPosition__13CPhysicsActorCFRC13CStateManager
.4byte GetAimPosition__13CPhysicsActorCFRC13CStateManagerf
.4byte GetHomingPosition__6CActorCFRC13CStateManagerf
.4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager
.4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei
.4byte FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager
.4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager
.4byte GetSortingBounds__6CActorCFRC13CStateManager
.4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef
.4byte GetCollisionPrimitive__13CPhysicsActorCFv
.4byte GetPrimitiveTransform__13CPhysicsActorCFv
.4byte CollidedWith__13CPhysicsActorFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager
.4byte GetStepDownHeight__13CPhysicsActorCFv
.4byte GetStepUpHeight__13CPhysicsActorCFv
.4byte GetWeight__13CPhysicsActorCFv
.section .sdata
.balign 8
.global lbl_805A8410
lbl_805A8410:
# ROM: 0x3F5DB0
.4byte 0x00000028
.global lbl_805A8414
lbl_805A8414:
# ROM: 0x3F5DB4
.4byte 0x00000039
.global lbl_805A8418
lbl_805A8418:
# ROM: 0x3F5DB8
.4byte 0x00000013
.global lbl_805A841C
lbl_805A841C:
# ROM: 0x3F5DBC
.4byte 0x0000000E
.global lbl_805A8420
lbl_805A8420:
# ROM: 0x3F5DC0
.4byte 0
.global lbl_805A8424
lbl_805A8424:
# ROM: 0x3F5DC4
.float 2.0
.global lbl_805A8428
lbl_805A8428:
# ROM: 0x3F5DC8
.4byte 0x00000035
.global lbl_805A842C
lbl_805A842C:
# ROM: 0x3F5DCC
.4byte 0x00000015
.global lbl_805A8430
lbl_805A8430:
# ROM: 0x3F5DD0
.4byte 0x00000013
.global lbl_805A8434
lbl_805A8434:
# ROM: 0x3F5DD4
.4byte 0x0000002F
.global lbl_805A8438
lbl_805A8438:
# ROM: 0x3F5DD8
.4byte 0x0000001C
.global lbl_805A843C
lbl_805A843C:
# ROM: 0x3F5DDC
.4byte 0x00000020
.global lbl_805A8440
lbl_805A8440:
# ROM: 0x3F5DE0
.4byte 0
.global lbl_805A8444
lbl_805A8444:
# ROM: 0x3F5DE4
.4byte 0
.global lbl_805A8448
lbl_805A8448:
# ROM: 0x3F5DE8
.float 1.0
.global lbl_805A844C
lbl_805A844C:
# ROM: 0x3F5DEC
.4byte 0x00000013
.global lbl_805A8450
lbl_805A8450:
# ROM: 0x3F5DF0
.4byte 0x00000021
.global lbl_805A8454
lbl_805A8454:
# ROM: 0x3F5DF4
.4byte 0x00000020
.global lbl_805A8458
lbl_805A8458:
# ROM: 0x3F5DF8
.4byte 0x00000012
.global lbl_805A845C
lbl_805A845C:
# ROM: 0x3F5DFC
.4byte 0
.global lbl_805A8460
lbl_805A8460:
# ROM: 0x3F5E00
.4byte 0x3FB33333
.global lbl_805A8464
lbl_805A8464:
# ROM: 0x3F5E04
.4byte 0
.global lbl_805A8468
lbl_805A8468:
# ROM: 0x3F5E08
.float 1.0
.global lbl_805A846C
lbl_805A846C:
# ROM: 0x3F5E0C
.4byte 0
.global lbl_805A8470
lbl_805A8470:
# ROM: 0x3F5E10
.float 1.0
.global lbl_805A8474
lbl_805A8474:
# ROM: 0x3F5E14
.4byte 0x00000013
.global lbl_805A8478
lbl_805A8478:
# ROM: 0x3F5E18
.4byte 0x00000020
.global lbl_805A847C
lbl_805A847C:
# ROM: 0x3F5E1C
.4byte 0x0000002F
.global lbl_805A8480
lbl_805A8480:
# ROM: 0x3F5E20
.4byte 0
.global lbl_805A8484
lbl_805A8484:
# ROM: 0x3F5E24
.float 1.0
.global lbl_805A8488
lbl_805A8488:
# ROM: 0x3F5E28
.4byte 0
.global lbl_805A848C
lbl_805A848C:
# ROM: 0x3F5E2C
.float 1.0
.global lbl_805A8490
lbl_805A8490:
# ROM: 0x3F5E30
.4byte 0x0000001F
.global lbl_805A8494
lbl_805A8494:
# ROM: 0x3F5E34
.4byte 0x00000031
.global lbl_805A8498
lbl_805A8498:
# ROM: 0x3F5E38
.float 0.2
.global lbl_805A849C
lbl_805A849C:
# ROM: 0x3F5E3C
.float 1.0
.section .bss
.balign 8
.lcomm lbl_8046E0C0, 0x18, 4
.section .sbss, "wa"
.balign 8
.global lbl_805A9140
lbl_805A9140:
.skip 0x4
.global lbl_805A9144
lbl_805A9144:
.skip 0x4
.global lbl_805A9148
lbl_805A9148:
.skip 0x8
.section .text, "ax"
.global __dt__16CMetroidPrimeExo
__dt__16CMetroidPrimeExo:
/* 802712AC 0026E20C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802712B0 0026E210 7C 08 02 A6 */ mflr r0
/* 802712B4 0026E214 90 01 00 24 */ stw r0, 0x24(r1)
/* 802712B8 0026E218 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802712BC 0026E21C 7C 9F 23 78 */ mr r31, r4
/* 802712C0 0026E220 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802712C4 0026E224 7C 7E 1B 79 */ or. r30, r3, r3
/* 802712C8 0026E228 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802712CC 0026E22C 93 81 00 10 */ stw r28, 0x10(r1)
/* 802712D0 0026E230 41 82 09 48 */ beq lbl_80271C18
/* 802712D4 0026E234 3C 60 80 3F */ lis r3, lbl_803EAD54@ha
/* 802712D8 0026E238 34 1E 14 3C */ addic. r0, r30, 0x143c
/* 802712DC 0026E23C 38 03 AD 54 */ addi r0, r3, lbl_803EAD54@l
/* 802712E0 0026E240 90 1E 00 00 */ stw r0, 0(r30)
/* 802712E4 0026E244 41 82 00 10 */ beq lbl_802712F4
/* 802712E8 0026E248 80 7E 14 3C */ lwz r3, 0x143c(r30)
/* 802712EC 0026E24C 38 80 00 01 */ li r4, 1
/* 802712F0 0026E250 48 02 D0 91 */ bl __dt__16CProjectedShadowFv
lbl_802712F4:
/* 802712F4 0026E254 34 1E 13 68 */ addic. r0, r30, 0x1368
/* 802712F8 0026E258 41 82 00 40 */ beq lbl_80271338
/* 802712FC 0026E25C 34 1E 13 E8 */ addic. r0, r30, 0x13e8
/* 80271300 0026E260 41 82 00 10 */ beq lbl_80271310
/* 80271304 0026E264 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271308 0026E268 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027130C 0026E26C 90 1E 13 E8 */ stw r0, 0x13e8(r30)
lbl_80271310:
/* 80271310 0026E270 34 1E 13 AC */ addic. r0, r30, 0x13ac
/* 80271314 0026E274 41 82 00 10 */ beq lbl_80271324
/* 80271318 0026E278 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027131C 0026E27C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271320 0026E280 90 1E 13 AC */ stw r0, 0x13ac(r30)
lbl_80271324:
/* 80271324 0026E284 34 1E 13 70 */ addic. r0, r30, 0x1370
/* 80271328 0026E288 41 82 00 10 */ beq lbl_80271338
/* 8027132C 0026E28C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271330 0026E290 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271334 0026E294 90 1E 13 70 */ stw r0, 0x1370(r30)
lbl_80271338:
/* 80271338 0026E298 34 1E 12 94 */ addic. r0, r30, 0x1294
/* 8027133C 0026E29C 41 82 00 40 */ beq lbl_8027137C
/* 80271340 0026E2A0 34 1E 13 14 */ addic. r0, r30, 0x1314
/* 80271344 0026E2A4 41 82 00 10 */ beq lbl_80271354
/* 80271348 0026E2A8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027134C 0026E2AC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271350 0026E2B0 90 1E 13 14 */ stw r0, 0x1314(r30)
lbl_80271354:
/* 80271354 0026E2B4 34 1E 12 D8 */ addic. r0, r30, 0x12d8
/* 80271358 0026E2B8 41 82 00 10 */ beq lbl_80271368
/* 8027135C 0026E2BC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271360 0026E2C0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271364 0026E2C4 90 1E 12 D8 */ stw r0, 0x12d8(r30)
lbl_80271368:
/* 80271368 0026E2C8 34 1E 12 9C */ addic. r0, r30, 0x129c
/* 8027136C 0026E2CC 41 82 00 10 */ beq lbl_8027137C
/* 80271370 0026E2D0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271374 0026E2D4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271378 0026E2D8 90 1E 12 9C */ stw r0, 0x129c(r30)
lbl_8027137C:
/* 8027137C 0026E2DC 34 1E 12 58 */ addic. r0, r30, 0x1258
/* 80271380 0026E2E0 41 82 00 58 */ beq lbl_802713D8
/* 80271384 0026E2E4 80 BE 12 58 */ lwz r5, 0x1258(r30)
/* 80271388 0026E2E8 38 60 00 00 */ li r3, 0
/* 8027138C 0026E2EC 2C 05 00 00 */ cmpwi r5, 0
/* 80271390 0026E2F0 40 81 00 40 */ ble lbl_802713D0
/* 80271394 0026E2F4 2C 05 00 08 */ cmpwi r5, 8
/* 80271398 0026E2F8 38 85 FF F8 */ addi r4, r5, -8
/* 8027139C 0026E2FC 40 81 00 20 */ ble lbl_802713BC
/* 802713A0 0026E300 38 04 00 07 */ addi r0, r4, 7
/* 802713A4 0026E304 54 00 E8 FE */ srwi r0, r0, 3
/* 802713A8 0026E308 7C 09 03 A6 */ mtctr r0
/* 802713AC 0026E30C 2C 04 00 00 */ cmpwi r4, 0
/* 802713B0 0026E310 40 81 00 0C */ ble lbl_802713BC
lbl_802713B4:
/* 802713B4 0026E314 38 63 00 08 */ addi r3, r3, 8
/* 802713B8 0026E318 42 00 FF FC */ bdnz lbl_802713B4
lbl_802713BC:
/* 802713BC 0026E31C 7C 03 28 50 */ subf r0, r3, r5
/* 802713C0 0026E320 7C 09 03 A6 */ mtctr r0
/* 802713C4 0026E324 7C 03 28 00 */ cmpw r3, r5
/* 802713C8 0026E328 40 80 00 08 */ bge lbl_802713D0
lbl_802713CC:
/* 802713CC 0026E32C 42 00 00 00 */ bdnz lbl_802713CC
lbl_802713D0:
/* 802713D0 0026E330 38 00 00 00 */ li r0, 0
/* 802713D4 0026E334 90 1E 12 58 */ stw r0, 0x1258(r30)
lbl_802713D8:
/* 802713D8 0026E338 34 1E 11 60 */ addic. r0, r30, 0x1160
/* 802713DC 0026E33C 41 82 00 90 */ beq lbl_8027146C
/* 802713E0 0026E340 38 DE 11 64 */ addi r6, r30, 0x1164
/* 802713E4 0026E344 38 60 00 00 */ li r3, 0
/* 802713E8 0026E348 48 00 00 70 */ b lbl_80271458
lbl_802713EC:
/* 802713EC 0026E34C 28 06 00 00 */ cmplwi r6, 0
/* 802713F0 0026E350 41 82 00 60 */ beq lbl_80271450
/* 802713F4 0026E354 41 82 00 5C */ beq lbl_80271450
/* 802713F8 0026E358 80 E6 00 00 */ lwz r7, 0(r6)
/* 802713FC 0026E35C 38 80 00 00 */ li r4, 0
/* 80271400 0026E360 2C 07 00 00 */ cmpwi r7, 0
/* 80271404 0026E364 40 81 00 44 */ ble lbl_80271448
/* 80271408 0026E368 2C 07 00 08 */ cmpwi r7, 8
/* 8027140C 0026E36C 38 A7 FF F8 */ addi r5, r7, -8
/* 80271410 0026E370 40 81 00 20 */ ble lbl_80271430
/* 80271414 0026E374 38 05 00 07 */ addi r0, r5, 7
/* 80271418 0026E378 54 00 E8 FE */ srwi r0, r0, 3
/* 8027141C 0026E37C 7C 09 03 A6 */ mtctr r0
/* 80271420 0026E380 2C 05 00 00 */ cmpwi r5, 0
/* 80271424 0026E384 40 81 00 0C */ ble lbl_80271430
lbl_80271428:
/* 80271428 0026E388 38 84 00 08 */ addi r4, r4, 8
/* 8027142C 0026E38C 42 00 FF FC */ bdnz lbl_80271428
lbl_80271430:
/* 80271430 0026E390 7C 04 38 50 */ subf r0, r4, r7
/* 80271434 0026E394 7C 09 03 A6 */ mtctr r0
/* 80271438 0026E398 7C 04 38 00 */ cmpw r4, r7
/* 8027143C 0026E39C 40 80 00 0C */ bge lbl_80271448
lbl_80271440:
/* 80271440 0026E3A0 38 84 00 01 */ addi r4, r4, 1
/* 80271444 0026E3A4 42 00 FF FC */ bdnz lbl_80271440
lbl_80271448:
/* 80271448 0026E3A8 38 00 00 00 */ li r0, 0
/* 8027144C 0026E3AC 90 06 00 00 */ stw r0, 0(r6)
lbl_80271450:
/* 80271450 0026E3B0 38 C6 00 3C */ addi r6, r6, 0x3c
/* 80271454 0026E3B4 38 63 00 01 */ addi r3, r3, 1
lbl_80271458:
/* 80271458 0026E3B8 80 1E 11 60 */ lwz r0, 0x1160(r30)
/* 8027145C 0026E3BC 7C 03 00 00 */ cmpw r3, r0
/* 80271460 0026E3C0 41 80 FF 8C */ blt lbl_802713EC
/* 80271464 0026E3C4 38 00 00 00 */ li r0, 0
/* 80271468 0026E3C8 90 1E 11 60 */ stw r0, 0x1160(r30)
lbl_8027146C:
/* 8027146C 0026E3CC 34 1E 10 8C */ addic. r0, r30, 0x108c
/* 80271470 0026E3D0 41 82 00 40 */ beq lbl_802714B0
/* 80271474 0026E3D4 34 1E 11 0C */ addic. r0, r30, 0x110c
/* 80271478 0026E3D8 41 82 00 10 */ beq lbl_80271488
/* 8027147C 0026E3DC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271480 0026E3E0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271484 0026E3E4 90 1E 11 0C */ stw r0, 0x110c(r30)
lbl_80271488:
/* 80271488 0026E3E8 34 1E 10 D0 */ addic. r0, r30, 0x10d0
/* 8027148C 0026E3EC 41 82 00 10 */ beq lbl_8027149C
/* 80271490 0026E3F0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271494 0026E3F4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271498 0026E3F8 90 1E 10 D0 */ stw r0, 0x10d0(r30)
lbl_8027149C:
/* 8027149C 0026E3FC 34 1E 10 94 */ addic. r0, r30, 0x1094
/* 802714A0 0026E400 41 82 00 10 */ beq lbl_802714B0
/* 802714A4 0026E404 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 802714A8 0026E408 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 802714AC 0026E40C 90 1E 10 94 */ stw r0, 0x1094(r30)
lbl_802714B0:
/* 802714B0 0026E410 34 1E 10 6C */ addic. r0, r30, 0x106c
/* 802714B4 0026E414 41 82 00 58 */ beq lbl_8027150C
/* 802714B8 0026E418 80 BE 10 6C */ lwz r5, 0x106c(r30)
/* 802714BC 0026E41C 38 60 00 00 */ li r3, 0
/* 802714C0 0026E420 2C 05 00 00 */ cmpwi r5, 0
/* 802714C4 0026E424 40 81 00 40 */ ble lbl_80271504
/* 802714C8 0026E428 2C 05 00 08 */ cmpwi r5, 8
/* 802714CC 0026E42C 38 85 FF F8 */ addi r4, r5, -8
/* 802714D0 0026E430 40 81 00 20 */ ble lbl_802714F0
/* 802714D4 0026E434 38 04 00 07 */ addi r0, r4, 7
/* 802714D8 0026E438 54 00 E8 FE */ srwi r0, r0, 3
/* 802714DC 0026E43C 7C 09 03 A6 */ mtctr r0
/* 802714E0 0026E440 2C 04 00 00 */ cmpwi r4, 0
/* 802714E4 0026E444 40 81 00 0C */ ble lbl_802714F0
lbl_802714E8:
/* 802714E8 0026E448 38 63 00 08 */ addi r3, r3, 8
/* 802714EC 0026E44C 42 00 FF FC */ bdnz lbl_802714E8
lbl_802714F0:
/* 802714F0 0026E450 7C 03 28 50 */ subf r0, r3, r5
/* 802714F4 0026E454 7C 09 03 A6 */ mtctr r0
/* 802714F8 0026E458 7C 03 28 00 */ cmpw r3, r5
/* 802714FC 0026E45C 40 80 00 08 */ bge lbl_80271504
lbl_80271500:
/* 80271500 0026E460 42 00 00 00 */ bdnz lbl_80271500
lbl_80271504:
/* 80271504 0026E464 38 00 00 00 */ li r0, 0
/* 80271508 0026E468 90 1E 10 6C */ stw r0, 0x106c(r30)
lbl_8027150C:
/* 8027150C 0026E46C 34 1E 10 58 */ addic. r0, r30, 0x1058
/* 80271510 0026E470 41 82 00 58 */ beq lbl_80271568
/* 80271514 0026E474 80 BE 10 58 */ lwz r5, 0x1058(r30)
/* 80271518 0026E478 38 60 00 00 */ li r3, 0
/* 8027151C 0026E47C 2C 05 00 00 */ cmpwi r5, 0
/* 80271520 0026E480 40 81 00 40 */ ble lbl_80271560
/* 80271524 0026E484 2C 05 00 08 */ cmpwi r5, 8
/* 80271528 0026E488 38 85 FF F8 */ addi r4, r5, -8
/* 8027152C 0026E48C 40 81 00 20 */ ble lbl_8027154C
/* 80271530 0026E490 38 04 00 07 */ addi r0, r4, 7
/* 80271534 0026E494 54 00 E8 FE */ srwi r0, r0, 3
/* 80271538 0026E498 7C 09 03 A6 */ mtctr r0
/* 8027153C 0026E49C 2C 04 00 00 */ cmpwi r4, 0
/* 80271540 0026E4A0 40 81 00 0C */ ble lbl_8027154C
lbl_80271544:
/* 80271544 0026E4A4 38 63 00 08 */ addi r3, r3, 8
/* 80271548 0026E4A8 42 00 FF FC */ bdnz lbl_80271544
lbl_8027154C:
/* 8027154C 0026E4AC 7C 03 28 50 */ subf r0, r3, r5
/* 80271550 0026E4B0 7C 09 03 A6 */ mtctr r0
/* 80271554 0026E4B4 7C 03 28 00 */ cmpw r3, r5
/* 80271558 0026E4B8 40 80 00 08 */ bge lbl_80271560
lbl_8027155C:
/* 8027155C 0026E4BC 42 00 00 00 */ bdnz lbl_8027155C
lbl_80271560:
/* 80271560 0026E4C0 38 00 00 00 */ li r0, 0
/* 80271564 0026E4C4 90 1E 10 58 */ stw r0, 0x1058(r30)
lbl_80271568:
/* 80271568 0026E4C8 34 1E 10 38 */ addic. r0, r30, 0x1038
/* 8027156C 0026E4CC 41 82 00 58 */ beq lbl_802715C4
/* 80271570 0026E4D0 80 BE 10 38 */ lwz r5, 0x1038(r30)
/* 80271574 0026E4D4 38 60 00 00 */ li r3, 0
/* 80271578 0026E4D8 2C 05 00 00 */ cmpwi r5, 0
/* 8027157C 0026E4DC 40 81 00 40 */ ble lbl_802715BC
/* 80271580 0026E4E0 2C 05 00 08 */ cmpwi r5, 8
/* 80271584 0026E4E4 38 85 FF F8 */ addi r4, r5, -8
/* 80271588 0026E4E8 40 81 00 20 */ ble lbl_802715A8
/* 8027158C 0026E4EC 38 04 00 07 */ addi r0, r4, 7
/* 80271590 0026E4F0 54 00 E8 FE */ srwi r0, r0, 3
/* 80271594 0026E4F4 7C 09 03 A6 */ mtctr r0
/* 80271598 0026E4F8 2C 04 00 00 */ cmpwi r4, 0
/* 8027159C 0026E4FC 40 81 00 0C */ ble lbl_802715A8
lbl_802715A0:
/* 802715A0 0026E500 38 63 00 08 */ addi r3, r3, 8
/* 802715A4 0026E504 42 00 FF FC */ bdnz lbl_802715A0
lbl_802715A8:
/* 802715A8 0026E508 7C 03 28 50 */ subf r0, r3, r5
/* 802715AC 0026E50C 7C 09 03 A6 */ mtctr r0
/* 802715B0 0026E510 7C 03 28 00 */ cmpw r3, r5
/* 802715B4 0026E514 40 80 00 08 */ bge lbl_802715BC
lbl_802715B8:
/* 802715B8 0026E518 42 00 00 00 */ bdnz lbl_802715B8
lbl_802715BC:
/* 802715BC 0026E51C 38 00 00 00 */ li r0, 0
/* 802715C0 0026E520 90 1E 10 38 */ stw r0, 0x1038(r30)
lbl_802715C4:
/* 802715C4 0026E524 34 1E 10 2C */ addic. r0, r30, 0x102c
/* 802715C8 0026E528 41 82 00 58 */ beq lbl_80271620
/* 802715CC 0026E52C 80 BE 10 2C */ lwz r5, 0x102c(r30)
/* 802715D0 0026E530 38 60 00 00 */ li r3, 0
/* 802715D4 0026E534 2C 05 00 00 */ cmpwi r5, 0
/* 802715D8 0026E538 40 81 00 40 */ ble lbl_80271618
/* 802715DC 0026E53C 2C 05 00 08 */ cmpwi r5, 8
/* 802715E0 0026E540 38 85 FF F8 */ addi r4, r5, -8
/* 802715E4 0026E544 40 81 00 20 */ ble lbl_80271604
/* 802715E8 0026E548 38 04 00 07 */ addi r0, r4, 7
/* 802715EC 0026E54C 54 00 E8 FE */ srwi r0, r0, 3
/* 802715F0 0026E550 7C 09 03 A6 */ mtctr r0
/* 802715F4 0026E554 2C 04 00 00 */ cmpwi r4, 0
/* 802715F8 0026E558 40 81 00 0C */ ble lbl_80271604
lbl_802715FC:
/* 802715FC 0026E55C 38 63 00 08 */ addi r3, r3, 8
/* 80271600 0026E560 42 00 FF FC */ bdnz lbl_802715FC
lbl_80271604:
/* 80271604 0026E564 7C 03 28 50 */ subf r0, r3, r5
/* 80271608 0026E568 7C 09 03 A6 */ mtctr r0
/* 8027160C 0026E56C 7C 03 28 00 */ cmpw r3, r5
/* 80271610 0026E570 40 80 00 08 */ bge lbl_80271618
lbl_80271614:
/* 80271614 0026E574 42 00 00 00 */ bdnz lbl_80271614
lbl_80271618:
/* 80271618 0026E578 38 00 00 00 */ li r0, 0
/* 8027161C 0026E57C 90 1E 10 2C */ stw r0, 0x102c(r30)
lbl_80271620:
/* 80271620 0026E580 34 1E 10 24 */ addic. r0, r30, 0x1024
/* 80271624 0026E584 41 82 00 30 */ beq lbl_80271654
/* 80271628 0026E588 88 1E 10 24 */ lbz r0, 0x1024(r30)
/* 8027162C 0026E58C 28 00 00 00 */ cmplwi r0, 0
/* 80271630 0026E590 41 82 00 24 */ beq lbl_80271654
/* 80271634 0026E594 80 7E 10 28 */ lwz r3, 0x1028(r30)
/* 80271638 0026E598 28 03 00 00 */ cmplwi r3, 0
/* 8027163C 0026E59C 41 82 00 18 */ beq lbl_80271654
/* 80271640 0026E5A0 81 83 00 00 */ lwz r12, 0(r3)
/* 80271644 0026E5A4 38 80 00 01 */ li r4, 1
/* 80271648 0026E5A8 81 8C 00 08 */ lwz r12, 8(r12)
/* 8027164C 0026E5AC 7D 89 03 A6 */ mtctr r12
/* 80271650 0026E5B0 4E 80 04 21 */ bctrl
lbl_80271654:
/* 80271654 0026E5B4 34 1E 10 1C */ addic. r0, r30, 0x101c
/* 80271658 0026E5B8 41 82 00 10 */ beq lbl_80271668
/* 8027165C 0026E5BC 38 7E 10 1C */ addi r3, r30, 0x101c
/* 80271660 0026E5C0 38 80 00 00 */ li r4, 0
/* 80271664 0026E5C4 48 0C F7 DD */ bl __dt__6CTokenFv
lbl_80271668:
/* 80271668 0026E5C8 34 1E 10 14 */ addic. r0, r30, 0x1014
/* 8027166C 0026E5CC 41 82 00 10 */ beq lbl_8027167C
/* 80271670 0026E5D0 38 7E 10 14 */ addi r3, r30, 0x1014
/* 80271674 0026E5D4 38 80 00 00 */ li r4, 0
/* 80271678 0026E5D8 48 0C F7 C9 */ bl __dt__6CTokenFv
lbl_8027167C:
/* 8027167C 0026E5DC 34 1E 10 00 */ addic. r0, r30, 0x1000
/* 80271680 0026E5E0 41 82 00 60 */ beq lbl_802716E0
/* 80271684 0026E5E4 3B 9E 10 04 */ addi r28, r30, 0x1004
/* 80271688 0026E5E8 3B A0 00 00 */ li r29, 0
/* 8027168C 0026E5EC 48 00 00 40 */ b lbl_802716CC
lbl_80271690:
/* 80271690 0026E5F0 28 1C 00 00 */ cmplwi r28, 0
/* 80271694 0026E5F4 41 82 00 30 */ beq lbl_802716C4
/* 80271698 0026E5F8 88 1C 00 00 */ lbz r0, 0(r28)
/* 8027169C 0026E5FC 28 00 00 00 */ cmplwi r0, 0
/* 802716A0 0026E600 41 82 00 24 */ beq lbl_802716C4
/* 802716A4 0026E604 80 7C 00 04 */ lwz r3, 4(r28)
/* 802716A8 0026E608 28 03 00 00 */ cmplwi r3, 0
/* 802716AC 0026E60C 41 82 00 18 */ beq lbl_802716C4
/* 802716B0 0026E610 81 83 00 00 */ lwz r12, 0(r3)
/* 802716B4 0026E614 38 80 00 01 */ li r4, 1
/* 802716B8 0026E618 81 8C 00 08 */ lwz r12, 8(r12)
/* 802716BC 0026E61C 7D 89 03 A6 */ mtctr r12
/* 802716C0 0026E620 4E 80 04 21 */ bctrl
lbl_802716C4:
/* 802716C4 0026E624 3B 9C 00 08 */ addi r28, r28, 8
/* 802716C8 0026E628 3B BD 00 01 */ addi r29, r29, 1
lbl_802716CC:
/* 802716CC 0026E62C 80 1E 10 00 */ lwz r0, 0x1000(r30)
/* 802716D0 0026E630 7C 1D 00 00 */ cmpw r29, r0
/* 802716D4 0026E634 41 80 FF BC */ blt lbl_80271690
/* 802716D8 0026E638 38 00 00 00 */ li r0, 0
/* 802716DC 0026E63C 90 1E 10 00 */ stw r0, 0x1000(r30)
lbl_802716E0:
/* 802716E0 0026E640 34 1E 0F EC */ addic. r0, r30, 0xfec
/* 802716E4 0026E644 41 82 00 60 */ beq lbl_80271744
/* 802716E8 0026E648 3B 9E 0F F0 */ addi r28, r30, 0xff0
/* 802716EC 0026E64C 3B A0 00 00 */ li r29, 0
/* 802716F0 0026E650 48 00 00 40 */ b lbl_80271730
lbl_802716F4:
/* 802716F4 0026E654 28 1C 00 00 */ cmplwi r28, 0
/* 802716F8 0026E658 41 82 00 30 */ beq lbl_80271728
/* 802716FC 0026E65C 88 1C 00 00 */ lbz r0, 0(r28)
/* 80271700 0026E660 28 00 00 00 */ cmplwi r0, 0
/* 80271704 0026E664 41 82 00 24 */ beq lbl_80271728
/* 80271708 0026E668 80 7C 00 04 */ lwz r3, 4(r28)
/* 8027170C 0026E66C 28 03 00 00 */ cmplwi r3, 0
/* 80271710 0026E670 41 82 00 18 */ beq lbl_80271728
/* 80271714 0026E674 81 83 00 00 */ lwz r12, 0(r3)
/* 80271718 0026E678 38 80 00 01 */ li r4, 1
/* 8027171C 0026E67C 81 8C 00 08 */ lwz r12, 8(r12)
/* 80271720 0026E680 7D 89 03 A6 */ mtctr r12
/* 80271724 0026E684 4E 80 04 21 */ bctrl
lbl_80271728:
/* 80271728 0026E688 3B 9C 00 08 */ addi r28, r28, 8
/* 8027172C 0026E68C 3B BD 00 01 */ addi r29, r29, 1
lbl_80271730:
/* 80271730 0026E690 80 1E 0F EC */ lwz r0, 0xfec(r30)
/* 80271734 0026E694 7C 1D 00 00 */ cmpw r29, r0
/* 80271738 0026E698 41 80 FF BC */ blt lbl_802716F4
/* 8027173C 0026E69C 38 00 00 00 */ li r0, 0
/* 80271740 0026E6A0 90 1E 0F EC */ stw r0, 0xfec(r30)
lbl_80271744:
/* 80271744 0026E6A4 34 1E 0F D8 */ addic. r0, r30, 0xfd8
/* 80271748 0026E6A8 41 82 00 40 */ beq lbl_80271788
/* 8027174C 0026E6AC 3B 9E 0F DC */ addi r28, r30, 0xfdc
/* 80271750 0026E6B0 3B A0 00 00 */ li r29, 0
/* 80271754 0026E6B4 48 00 00 20 */ b lbl_80271774
lbl_80271758:
/* 80271758 0026E6B8 28 1C 00 00 */ cmplwi r28, 0
/* 8027175C 0026E6BC 41 82 00 10 */ beq lbl_8027176C
/* 80271760 0026E6C0 7F 83 E3 78 */ mr r3, r28
/* 80271764 0026E6C4 38 80 00 00 */ li r4, 0
/* 80271768 0026E6C8 48 0C F6 D9 */ bl __dt__6CTokenFv
lbl_8027176C:
/* 8027176C 0026E6CC 3B 9C 00 08 */ addi r28, r28, 8
/* 80271770 0026E6D0 3B BD 00 01 */ addi r29, r29, 1
lbl_80271774:
/* 80271774 0026E6D4 80 1E 0F D8 */ lwz r0, 0xfd8(r30)
/* 80271778 0026E6D8 7C 1D 00 00 */ cmpw r29, r0
/* 8027177C 0026E6DC 41 80 FF DC */ blt lbl_80271758
/* 80271780 0026E6E0 38 00 00 00 */ li r0, 0
/* 80271784 0026E6E4 90 1E 0F D8 */ stw r0, 0xfd8(r30)
lbl_80271788:
/* 80271788 0026E6E8 34 1E 0F C4 */ addic. r0, r30, 0xfc4
/* 8027178C 0026E6EC 41 82 00 40 */ beq lbl_802717CC
/* 80271790 0026E6F0 3B 9E 0F C8 */ addi r28, r30, 0xfc8
/* 80271794 0026E6F4 3B A0 00 00 */ li r29, 0
/* 80271798 0026E6F8 48 00 00 20 */ b lbl_802717B8
lbl_8027179C:
/* 8027179C 0026E6FC 28 1C 00 00 */ cmplwi r28, 0
/* 802717A0 0026E700 41 82 00 10 */ beq lbl_802717B0
/* 802717A4 0026E704 7F 83 E3 78 */ mr r3, r28
/* 802717A8 0026E708 38 80 00 00 */ li r4, 0
/* 802717AC 0026E70C 48 0C F6 95 */ bl __dt__6CTokenFv
lbl_802717B0:
/* 802717B0 0026E710 3B 9C 00 08 */ addi r28, r28, 8
/* 802717B4 0026E714 3B BD 00 01 */ addi r29, r29, 1
lbl_802717B8:
/* 802717B8 0026E718 80 1E 0F C4 */ lwz r0, 0xfc4(r30)
/* 802717BC 0026E71C 7C 1D 00 00 */ cmpw r29, r0
/* 802717C0 0026E720 41 80 FF DC */ blt lbl_8027179C
/* 802717C4 0026E724 38 00 00 00 */ li r0, 0
/* 802717C8 0026E728 90 1E 0F C4 */ stw r0, 0xfc4(r30)
lbl_802717CC:
/* 802717CC 0026E72C 34 1E 0F AC */ addic. r0, r30, 0xfac
/* 802717D0 0026E730 41 82 00 30 */ beq lbl_80271800
/* 802717D4 0026E734 88 1E 0F AC */ lbz r0, 0xfac(r30)
/* 802717D8 0026E738 28 00 00 00 */ cmplwi r0, 0
/* 802717DC 0026E73C 41 82 00 24 */ beq lbl_80271800
/* 802717E0 0026E740 80 7E 0F B0 */ lwz r3, 0xfb0(r30)
/* 802717E4 0026E744 28 03 00 00 */ cmplwi r3, 0
/* 802717E8 0026E748 41 82 00 18 */ beq lbl_80271800
/* 802717EC 0026E74C 81 83 00 00 */ lwz r12, 0(r3)
/* 802717F0 0026E750 38 80 00 01 */ li r4, 1
/* 802717F4 0026E754 81 8C 00 08 */ lwz r12, 8(r12)
/* 802717F8 0026E758 7D 89 03 A6 */ mtctr r12
/* 802717FC 0026E75C 4E 80 04 21 */ bctrl
lbl_80271800:
/* 80271800 0026E760 34 1E 0F A4 */ addic. r0, r30, 0xfa4
/* 80271804 0026E764 41 82 00 10 */ beq lbl_80271814
/* 80271808 0026E768 38 7E 0F A4 */ addi r3, r30, 0xfa4
/* 8027180C 0026E76C 38 80 00 00 */ li r4, 0
/* 80271810 0026E770 48 0C F6 31 */ bl __dt__6CTokenFv
lbl_80271814:
/* 80271814 0026E774 34 1E 0E D0 */ addic. r0, r30, 0xed0
/* 80271818 0026E778 41 82 00 40 */ beq lbl_80271858
/* 8027181C 0026E77C 34 1E 0F 50 */ addic. r0, r30, 0xf50
/* 80271820 0026E780 41 82 00 10 */ beq lbl_80271830
/* 80271824 0026E784 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271828 0026E788 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027182C 0026E78C 90 1E 0F 50 */ stw r0, 0xf50(r30)
lbl_80271830:
/* 80271830 0026E790 34 1E 0F 14 */ addic. r0, r30, 0xf14
/* 80271834 0026E794 41 82 00 10 */ beq lbl_80271844
/* 80271838 0026E798 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027183C 0026E79C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271840 0026E7A0 90 1E 0F 14 */ stw r0, 0xf14(r30)
lbl_80271844:
/* 80271844 0026E7A4 34 1E 0E D8 */ addic. r0, r30, 0xed8
/* 80271848 0026E7A8 41 82 00 10 */ beq lbl_80271858
/* 8027184C 0026E7AC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271850 0026E7B0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271854 0026E7B4 90 1E 0E D8 */ stw r0, 0xed8(r30)
lbl_80271858:
/* 80271858 0026E7B8 34 1E 0E 70 */ addic. r0, r30, 0xe70
/* 8027185C 0026E7BC 41 82 00 14 */ beq lbl_80271870
/* 80271860 0026E7C0 34 7E 0E 74 */ addic. r3, r30, 0xe74
/* 80271864 0026E7C4 41 82 00 0C */ beq lbl_80271870
/* 80271868 0026E7C8 38 80 00 00 */ li r4, 0
/* 8027186C 0026E7CC 48 0C F5 D5 */ bl __dt__6CTokenFv
lbl_80271870:
/* 80271870 0026E7D0 34 1E 0D 9C */ addic. r0, r30, 0xd9c
/* 80271874 0026E7D4 41 82 00 40 */ beq lbl_802718B4
/* 80271878 0026E7D8 34 1E 0E 1C */ addic. r0, r30, 0xe1c
/* 8027187C 0026E7DC 41 82 00 10 */ beq lbl_8027188C
/* 80271880 0026E7E0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271884 0026E7E4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271888 0026E7E8 90 1E 0E 1C */ stw r0, 0xe1c(r30)
lbl_8027188C:
/* 8027188C 0026E7EC 34 1E 0D E0 */ addic. r0, r30, 0xde0
/* 80271890 0026E7F0 41 82 00 10 */ beq lbl_802718A0
/* 80271894 0026E7F4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271898 0026E7F8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027189C 0026E7FC 90 1E 0D E0 */ stw r0, 0xde0(r30)
lbl_802718A0:
/* 802718A0 0026E800 34 1E 0D A4 */ addic. r0, r30, 0xda4
/* 802718A4 0026E804 41 82 00 10 */ beq lbl_802718B4
/* 802718A8 0026E808 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 802718AC 0026E80C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 802718B0 0026E810 90 1E 0D A4 */ stw r0, 0xda4(r30)
lbl_802718B4:
/* 802718B4 0026E814 34 1E 0D 74 */ addic. r0, r30, 0xd74
/* 802718B8 0026E818 41 82 00 20 */ beq lbl_802718D8
/* 802718BC 0026E81C 34 1E 0D 74 */ addic. r0, r30, 0xd74
/* 802718C0 0026E820 41 82 00 18 */ beq lbl_802718D8
/* 802718C4 0026E824 34 1E 0D 74 */ addic. r0, r30, 0xd74
/* 802718C8 0026E828 41 82 00 10 */ beq lbl_802718D8
/* 802718CC 0026E82C 38 7E 0D 74 */ addi r3, r30, 0xd74
/* 802718D0 0026E830 38 80 00 00 */ li r4, 0
/* 802718D4 0026E834 48 0C F5 6D */ bl __dt__6CTokenFv
lbl_802718D8:
/* 802718D8 0026E838 34 1E 0C A0 */ addic. r0, r30, 0xca0
/* 802718DC 0026E83C 41 82 00 40 */ beq lbl_8027191C
/* 802718E0 0026E840 34 1E 0D 20 */ addic. r0, r30, 0xd20
/* 802718E4 0026E844 41 82 00 10 */ beq lbl_802718F4
/* 802718E8 0026E848 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 802718EC 0026E84C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 802718F0 0026E850 90 1E 0D 20 */ stw r0, 0xd20(r30)
lbl_802718F4:
/* 802718F4 0026E854 34 1E 0C E4 */ addic. r0, r30, 0xce4
/* 802718F8 0026E858 41 82 00 10 */ beq lbl_80271908
/* 802718FC 0026E85C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271900 0026E860 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271904 0026E864 90 1E 0C E4 */ stw r0, 0xce4(r30)
lbl_80271908:
/* 80271908 0026E868 34 1E 0C A8 */ addic. r0, r30, 0xca8
/* 8027190C 0026E86C 41 82 00 10 */ beq lbl_8027191C
/* 80271910 0026E870 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 80271914 0026E874 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 80271918 0026E878 90 1E 0C A8 */ stw r0, 0xca8(r30)
lbl_8027191C:
/* 8027191C 0026E87C 34 1E 0C 78 */ addic. r0, r30, 0xc78
/* 80271920 0026E880 41 82 00 20 */ beq lbl_80271940
/* 80271924 0026E884 34 1E 0C 78 */ addic. r0, r30, 0xc78
/* 80271928 0026E888 41 82 00 18 */ beq lbl_80271940
/* 8027192C 0026E88C 34 1E 0C 78 */ addic. r0, r30, 0xc78
/* 80271930 0026E890 41 82 00 10 */ beq lbl_80271940
/* 80271934 0026E894 38 7E 0C 78 */ addi r3, r30, 0xc78
/* 80271938 0026E898 38 80 00 00 */ li r4, 0
/* 8027193C 0026E89C 48 0C F5 05 */ bl __dt__6CTokenFv
lbl_80271940:
/* 80271940 0026E8A0 34 1E 0C 50 */ addic. r0, r30, 0xc50
/* 80271944 0026E8A4 41 82 00 30 */ beq lbl_80271974
/* 80271948 0026E8A8 88 1E 0C 50 */ lbz r0, 0xc50(r30)
/* 8027194C 0026E8AC 28 00 00 00 */ cmplwi r0, 0
/* 80271950 0026E8B0 41 82 00 24 */ beq lbl_80271974
/* 80271954 0026E8B4 80 7E 0C 54 */ lwz r3, 0xc54(r30)
/* 80271958 0026E8B8 28 03 00 00 */ cmplwi r3, 0
/* 8027195C 0026E8BC 41 82 00 18 */ beq lbl_80271974
/* 80271960 0026E8C0 81 83 00 00 */ lwz r12, 0(r3)
/* 80271964 0026E8C4 38 80 00 01 */ li r4, 1
/* 80271968 0026E8C8 81 8C 00 08 */ lwz r12, 8(r12)
/* 8027196C 0026E8CC 7D 89 03 A6 */ mtctr r12
/* 80271970 0026E8D0 4E 80 04 21 */ bctrl
lbl_80271974:
/* 80271974 0026E8D4 34 1E 0C 48 */ addic. r0, r30, 0xc48
/* 80271978 0026E8D8 41 82 00 10 */ beq lbl_80271988
/* 8027197C 0026E8DC 38 7E 0C 48 */ addi r3, r30, 0xc48
/* 80271980 0026E8E0 38 80 00 00 */ li r4, 0
/* 80271984 0026E8E4 48 0C F4 BD */ bl __dt__6CTokenFv
lbl_80271988:
/* 80271988 0026E8E8 34 1E 0B C4 */ addic. r0, r30, 0xbc4
/* 8027198C 0026E8EC 41 82 00 58 */ beq lbl_802719E4
/* 80271990 0026E8F0 80 BE 0B C4 */ lwz r5, 0xbc4(r30)
/* 80271994 0026E8F4 38 60 00 00 */ li r3, 0
/* 80271998 0026E8F8 2C 05 00 00 */ cmpwi r5, 0
/* 8027199C 0026E8FC 40 81 00 40 */ ble lbl_802719DC
/* 802719A0 0026E900 2C 05 00 08 */ cmpwi r5, 8
/* 802719A4 0026E904 38 85 FF F8 */ addi r4, r5, -8
/* 802719A8 0026E908 40 81 00 20 */ ble lbl_802719C8
/* 802719AC 0026E90C 38 04 00 07 */ addi r0, r4, 7
/* 802719B0 0026E910 54 00 E8 FE */ srwi r0, r0, 3
/* 802719B4 0026E914 7C 09 03 A6 */ mtctr r0
/* 802719B8 0026E918 2C 04 00 00 */ cmpwi r4, 0
/* 802719BC 0026E91C 40 81 00 0C */ ble lbl_802719C8
lbl_802719C0:
/* 802719C0 0026E920 38 63 00 08 */ addi r3, r3, 8
/* 802719C4 0026E924 42 00 FF FC */ bdnz lbl_802719C0
lbl_802719C8:
/* 802719C8 0026E928 7C 03 28 50 */ subf r0, r3, r5
/* 802719CC 0026E92C 7C 09 03 A6 */ mtctr r0
/* 802719D0 0026E930 7C 03 28 00 */ cmpw r3, r5
/* 802719D4 0026E934 40 80 00 08 */ bge lbl_802719DC
lbl_802719D8:
/* 802719D8 0026E938 42 00 00 00 */ bdnz lbl_802719D8
lbl_802719DC:
/* 802719DC 0026E93C 38 00 00 00 */ li r0, 0
/* 802719E0 0026E940 90 1E 0B C4 */ stw r0, 0xbc4(r30)
lbl_802719E4:
/* 802719E4 0026E944 34 1E 0B 30 */ addic. r0, r30, 0xb30
/* 802719E8 0026E948 41 82 00 58 */ beq lbl_80271A40
/* 802719EC 0026E94C 80 BE 0B 30 */ lwz r5, 0xb30(r30)
/* 802719F0 0026E950 38 60 00 00 */ li r3, 0
/* 802719F4 0026E954 2C 05 00 00 */ cmpwi r5, 0
/* 802719F8 0026E958 40 81 00 40 */ ble lbl_80271A38
/* 802719FC 0026E95C 2C 05 00 08 */ cmpwi r5, 8
/* 80271A00 0026E960 38 85 FF F8 */ addi r4, r5, -8
/* 80271A04 0026E964 40 81 00 20 */ ble lbl_80271A24
/* 80271A08 0026E968 38 04 00 07 */ addi r0, r4, 7
/* 80271A0C 0026E96C 54 00 E8 FE */ srwi r0, r0, 3
/* 80271A10 0026E970 7C 09 03 A6 */ mtctr r0
/* 80271A14 0026E974 2C 04 00 00 */ cmpwi r4, 0
/* 80271A18 0026E978 40 81 00 0C */ ble lbl_80271A24
lbl_80271A1C:
/* 80271A1C 0026E97C 38 63 00 08 */ addi r3, r3, 8
/* 80271A20 0026E980 42 00 FF FC */ bdnz lbl_80271A1C
lbl_80271A24:
/* 80271A24 0026E984 7C 03 28 50 */ subf r0, r3, r5
/* 80271A28 0026E988 7C 09 03 A6 */ mtctr r0
/* 80271A2C 0026E98C 7C 03 28 00 */ cmpw r3, r5
/* 80271A30 0026E990 40 80 00 08 */ bge lbl_80271A38
lbl_80271A34:
/* 80271A34 0026E994 42 00 00 00 */ bdnz lbl_80271A34
lbl_80271A38:
/* 80271A38 0026E998 38 00 00 00 */ li r0, 0
/* 80271A3C 0026E99C 90 1E 0B 30 */ stw r0, 0xb30(r30)
lbl_80271A40:
/* 80271A40 0026E9A0 34 1E 0B 24 */ addic. r0, r30, 0xb24
/* 80271A44 0026E9A4 41 82 00 58 */ beq lbl_80271A9C
/* 80271A48 0026E9A8 80 BE 0B 24 */ lwz r5, 0xb24(r30)
/* 80271A4C 0026E9AC 38 60 00 00 */ li r3, 0
/* 80271A50 0026E9B0 2C 05 00 00 */ cmpwi r5, 0
/* 80271A54 0026E9B4 40 81 00 40 */ ble lbl_80271A94
/* 80271A58 0026E9B8 2C 05 00 08 */ cmpwi r5, 8
/* 80271A5C 0026E9BC 38 85 FF F8 */ addi r4, r5, -8
/* 80271A60 0026E9C0 40 81 00 20 */ ble lbl_80271A80
/* 80271A64 0026E9C4 38 04 00 07 */ addi r0, r4, 7
/* 80271A68 0026E9C8 54 00 E8 FE */ srwi r0, r0, 3
/* 80271A6C 0026E9CC 7C 09 03 A6 */ mtctr r0
/* 80271A70 0026E9D0 2C 04 00 00 */ cmpwi r4, 0
/* 80271A74 0026E9D4 40 81 00 0C */ ble lbl_80271A80
lbl_80271A78:
/* 80271A78 0026E9D8 38 63 00 08 */ addi r3, r3, 8
/* 80271A7C 0026E9DC 42 00 FF FC */ bdnz lbl_80271A78
lbl_80271A80:
/* 80271A80 0026E9E0 7C 03 28 50 */ subf r0, r3, r5
/* 80271A84 0026E9E4 7C 09 03 A6 */ mtctr r0
/* 80271A88 0026E9E8 7C 03 28 00 */ cmpw r3, r5
/* 80271A8C 0026E9EC 40 80 00 08 */ bge lbl_80271A94
lbl_80271A90:
/* 80271A90 0026E9F0 42 00 00 00 */ bdnz lbl_80271A90
lbl_80271A94:
/* 80271A94 0026E9F4 38 00 00 00 */ li r0, 0
/* 80271A98 0026E9F8 90 1E 0B 24 */ stw r0, 0xb24(r30)
lbl_80271A9C:
/* 80271A9C 0026E9FC 34 1E 0A 80 */ addic. r0, r30, 0xa80
/* 80271AA0 0026EA00 41 82 00 48 */ beq lbl_80271AE8
/* 80271AA4 0026EA04 3B 9E 0A 84 */ addi r28, r30, 0xa84
/* 80271AA8 0026EA08 3B A0 00 00 */ li r29, 0
/* 80271AAC 0026EA0C 48 00 00 28 */ b lbl_80271AD4
lbl_80271AB0:
/* 80271AB0 0026EA10 28 1C 00 00 */ cmplwi r28, 0
/* 80271AB4 0026EA14 41 82 00 18 */ beq lbl_80271ACC
/* 80271AB8 0026EA18 41 82 00 14 */ beq lbl_80271ACC
/* 80271ABC 0026EA1C 41 82 00 10 */ beq lbl_80271ACC
/* 80271AC0 0026EA20 7F 83 E3 78 */ mr r3, r28
/* 80271AC4 0026EA24 38 80 00 00 */ li r4, 0
/* 80271AC8 0026EA28 48 0C F3 79 */ bl __dt__6CTokenFv
lbl_80271ACC:
/* 80271ACC 0026EA2C 3B 9C 00 28 */ addi r28, r28, 0x28
/* 80271AD0 0026EA30 3B BD 00 01 */ addi r29, r29, 1
lbl_80271AD4:
/* 80271AD4 0026EA34 80 1E 0A 80 */ lwz r0, 0xa80(r30)
/* 80271AD8 0026EA38 7C 1D 00 00 */ cmpw r29, r0
/* 80271ADC 0026EA3C 41 80 FF D4 */ blt lbl_80271AB0
/* 80271AE0 0026EA40 38 00 00 00 */ li r0, 0
/* 80271AE4 0026EA44 90 1E 0A 80 */ stw r0, 0xa80(r30)
lbl_80271AE8:
/* 80271AE8 0026EA48 34 1E 09 6C */ addic. r0, r30, 0x96c
/* 80271AEC 0026EA4C 41 82 00 58 */ beq lbl_80271B44
/* 80271AF0 0026EA50 80 BE 09 6C */ lwz r5, 0x96c(r30)
/* 80271AF4 0026EA54 38 60 00 00 */ li r3, 0
/* 80271AF8 0026EA58 2C 05 00 00 */ cmpwi r5, 0
/* 80271AFC 0026EA5C 40 81 00 40 */ ble lbl_80271B3C
/* 80271B00 0026EA60 2C 05 00 08 */ cmpwi r5, 8
/* 80271B04 0026EA64 38 85 FF F8 */ addi r4, r5, -8
/* 80271B08 0026EA68 40 81 00 20 */ ble lbl_80271B28
/* 80271B0C 0026EA6C 38 04 00 07 */ addi r0, r4, 7
/* 80271B10 0026EA70 54 00 E8 FE */ srwi r0, r0, 3
/* 80271B14 0026EA74 7C 09 03 A6 */ mtctr r0
/* 80271B18 0026EA78 2C 04 00 00 */ cmpwi r4, 0
/* 80271B1C 0026EA7C 40 81 00 0C */ ble lbl_80271B28
lbl_80271B20:
/* 80271B20 0026EA80 38 63 00 08 */ addi r3, r3, 8
/* 80271B24 0026EA84 42 00 FF FC */ bdnz lbl_80271B20
lbl_80271B28:
/* 80271B28 0026EA88 7C 03 28 50 */ subf r0, r3, r5
/* 80271B2C 0026EA8C 7C 09 03 A6 */ mtctr r0
/* 80271B30 0026EA90 7C 03 28 00 */ cmpw r3, r5
/* 80271B34 0026EA94 40 80 00 08 */ bge lbl_80271B3C
lbl_80271B38:
/* 80271B38 0026EA98 42 00 00 00 */ bdnz lbl_80271B38
lbl_80271B3C:
/* 80271B3C 0026EA9C 38 00 00 00 */ li r0, 0
/* 80271B40 0026EAA0 90 1E 09 6C */ stw r0, 0x96c(r30)
lbl_80271B44:
/* 80271B44 0026EAA4 34 1E 07 6C */ addic. r0, r30, 0x76c
/* 80271B48 0026EAA8 41 82 00 44 */ beq lbl_80271B8C
/* 80271B4C 0026EAAC 38 80 00 00 */ li r4, 0
/* 80271B50 0026EAB0 38 BE 07 70 */ addi r5, r30, 0x770
/* 80271B54 0026EAB4 7C 83 23 78 */ mr r3, r4
/* 80271B58 0026EAB8 48 00 00 20 */ b lbl_80271B78
lbl_80271B5C:
/* 80271B5C 0026EABC 28 05 00 00 */ cmplwi r5, 0
/* 80271B60 0026EAC0 41 82 00 10 */ beq lbl_80271B70
/* 80271B64 0026EAC4 34 05 00 24 */ addic. r0, r5, 0x24
/* 80271B68 0026EAC8 41 82 00 08 */ beq lbl_80271B70
/* 80271B6C 0026EACC 98 65 00 30 */ stb r3, 0x30(r5)
lbl_80271B70:
/* 80271B70 0026EAD0 38 A5 00 38 */ addi r5, r5, 0x38
/* 80271B74 0026EAD4 38 84 00 01 */ addi r4, r4, 1
lbl_80271B78:
/* 80271B78 0026EAD8 80 1E 07 6C */ lwz r0, 0x76c(r30)
/* 80271B7C 0026EADC 7C 04 00 00 */ cmpw r4, r0
/* 80271B80 0026EAE0 41 80 FF DC */ blt lbl_80271B5C
/* 80271B84 0026EAE4 38 00 00 00 */ li r0, 0
/* 80271B88 0026EAE8 90 1E 07 6C */ stw r0, 0x76c(r30)
lbl_80271B8C:
/* 80271B8C 0026EAEC 34 1E 05 88 */ addic. r0, r30, 0x588
/* 80271B90 0026EAF0 41 82 00 58 */ beq lbl_80271BE8
/* 80271B94 0026EAF4 80 BE 05 88 */ lwz r5, 0x588(r30)
/* 80271B98 0026EAF8 38 60 00 00 */ li r3, 0
/* 80271B9C 0026EAFC 2C 05 00 00 */ cmpwi r5, 0
/* 80271BA0 0026EB00 40 81 00 40 */ ble lbl_80271BE0
/* 80271BA4 0026EB04 2C 05 00 08 */ cmpwi r5, 8
/* 80271BA8 0026EB08 38 85 FF F8 */ addi r4, r5, -8
/* 80271BAC 0026EB0C 40 81 00 20 */ ble lbl_80271BCC
/* 80271BB0 0026EB10 38 04 00 07 */ addi r0, r4, 7
/* 80271BB4 0026EB14 54 00 E8 FE */ srwi r0, r0, 3
/* 80271BB8 0026EB18 7C 09 03 A6 */ mtctr r0
/* 80271BBC 0026EB1C 2C 04 00 00 */ cmpwi r4, 0
/* 80271BC0 0026EB20 40 81 00 0C */ ble lbl_80271BCC
lbl_80271BC4:
/* 80271BC4 0026EB24 38 63 00 08 */ addi r3, r3, 8
/* 80271BC8 0026EB28 42 00 FF FC */ bdnz lbl_80271BC4
lbl_80271BCC:
/* 80271BCC 0026EB2C 7C 03 28 50 */ subf r0, r3, r5
/* 80271BD0 0026EB30 7C 09 03 A6 */ mtctr r0
/* 80271BD4 0026EB34 7C 03 28 00 */ cmpw r3, r5
/* 80271BD8 0026EB38 40 80 00 08 */ bge lbl_80271BE0
lbl_80271BDC:
/* 80271BDC 0026EB3C 42 00 00 00 */ bdnz lbl_80271BDC
lbl_80271BE0:
/* 80271BE0 0026EB40 38 00 00 00 */ li r0, 0
/* 80271BE4 0026EB44 90 1E 05 88 */ stw r0, 0x588(r30)
lbl_80271BE8:
/* 80271BE8 0026EB48 34 1E 05 6C */ addic. r0, r30, 0x56c
/* 80271BEC 0026EB4C 41 82 00 10 */ beq lbl_80271BFC
/* 80271BF0 0026EB50 80 7E 05 6C */ lwz r3, 0x56c(r30)
/* 80271BF4 0026EB54 38 80 00 01 */ li r4, 1
/* 80271BF8 0026EB58 4B F3 5C E5 */ bl sub_801a78dc
lbl_80271BFC:
/* 80271BFC 0026EB5C 7F C3 F3 78 */ mr r3, r30
/* 80271C00 0026EB60 38 80 00 00 */ li r4, 0
/* 80271C04 0026EB64 4B E0 59 6D */ bl __dt__10CPatternedFv
/* 80271C08 0026EB68 7F E0 07 35 */ extsh. r0, r31
/* 80271C0C 0026EB6C 40 81 00 0C */ ble lbl_80271C18
/* 80271C10 0026EB70 7F C3 F3 78 */ mr r3, r30
/* 80271C14 0026EB74 48 0A 3D 1D */ bl Free__7CMemoryFPCv
lbl_80271C18:
/* 80271C18 0026EB78 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80271C1C 0026EB7C 7F C3 F3 78 */ mr r3, r30
/* 80271C20 0026EB80 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80271C24 0026EB84 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80271C28 0026EB88 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80271C2C 0026EB8C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80271C30 0026EB90 7C 08 03 A6 */ mtlr r0
/* 80271C34 0026EB94 38 21 00 20 */ addi r1, r1, 0x20
/* 80271C38 0026EB98 4E 80 00 20 */ blr
.global Approach__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Approach__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271C3C 0026EB9C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80271C40 0026EBA0 7C 08 02 A6 */ mflr r0
/* 80271C44 0026EBA4 2C 05 00 01 */ cmpwi r5, 1
/* 80271C48 0026EBA8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80271C4C 0026EBAC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80271C50 0026EBB0 7C 9F 23 78 */ mr r31, r4
/* 80271C54 0026EBB4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80271C58 0026EBB8 7C 7E 1B 78 */ mr r30, r3
/* 80271C5C 0026EBBC 41 82 00 34 */ beq lbl_80271C90
/* 80271C60 0026EBC0 40 80 00 10 */ bge lbl_80271C70
/* 80271C64 0026EBC4 2C 05 00 00 */ cmpwi r5, 0
/* 80271C68 0026EBC8 40 80 00 14 */ bge lbl_80271C7C
/* 80271C6C 0026EBCC 48 00 00 A4 */ b lbl_80271D10
lbl_80271C70:
/* 80271C70 0026EBD0 2C 05 00 03 */ cmpwi r5, 3
/* 80271C74 0026EBD4 40 80 00 9C */ bge lbl_80271D10
/* 80271C78 0026EBD8 48 00 00 7C */ b lbl_80271CF4
lbl_80271C7C:
/* 80271C7C 0026EBDC 38 00 00 01 */ li r0, 1
/* 80271C80 0026EBE0 38 A0 00 00 */ li r5, 0
/* 80271C84 0026EBE4 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 80271C88 0026EBE8 48 00 6B 79 */ bl sub_80278800
/* 80271C8C 0026EBEC 48 00 00 84 */ b lbl_80271D10
lbl_80271C90:
/* 80271C90 0026EBF0 3C A0 80 3F */ lis r5, lbl_803EAD48@ha
/* 80271C94 0026EBF4 38 C1 00 08 */ addi r6, r1, 8
/* 80271C98 0026EBF8 39 45 AD 48 */ addi r10, r5, lbl_803EAD48@l
/* 80271C9C 0026EBFC 38 A0 00 07 */ li r5, 7
/* 80271CA0 0026EC00 81 2A 00 00 */ lwz r9, 0(r10)
/* 80271CA4 0026EC04 38 E0 00 02 */ li r7, 2
/* 80271CA8 0026EC08 81 0A 00 04 */ lwz r8, 4(r10)
/* 80271CAC 0026EC0C 80 0A 00 08 */ lwz r0, 8(r10)
/* 80271CB0 0026EC10 91 21 00 08 */ stw r9, 8(r1)
/* 80271CB4 0026EC14 91 01 00 0C */ stw r8, 0xc(r1)
/* 80271CB8 0026EC18 90 01 00 10 */ stw r0, 0x10(r1)
/* 80271CBC 0026EC1C 4B E0 AA F9 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80271CC0 0026EC20 80 1E 03 2C */ lwz r0, 0x32c(r30)
/* 80271CC4 0026EC24 2C 00 00 02 */ cmpwi r0, 2
/* 80271CC8 0026EC28 40 82 00 48 */ bne lbl_80271D10
/* 80271CCC 0026EC2C 38 00 00 01 */ li r0, 1
/* 80271CD0 0026EC30 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80271CD4 0026EC34 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 80271CD8 0026EC38 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80271CDC 0026EC3C 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80271CE0 0026EC40 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 80271CE4 0026EC44 54 00 10 3A */ slwi r0, r0, 2
/* 80271CE8 0026EC48 7C 84 00 2E */ lwzx r4, r4, r0
/* 80271CEC 0026EC4C 4B EC 8C ED */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80271CF0 0026EC50 48 00 00 20 */ b lbl_80271D10
lbl_80271CF4:
/* 80271CF4 0026EC54 38 00 00 00 */ li r0, 0
/* 80271CF8 0026EC58 38 A0 00 01 */ li r5, 1
/* 80271CFC 0026EC5C 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 80271D00 0026EC60 48 00 6B 01 */ bl sub_80278800
/* 80271D04 0026EC64 7F C3 F3 78 */ mr r3, r30
/* 80271D08 0026EC68 7F E4 FB 78 */ mr r4, r31
/* 80271D0C 0026EC6C 48 00 1B C9 */ bl sub_802738d4
lbl_80271D10:
/* 80271D10 0026EC70 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80271D14 0026EC74 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80271D18 0026EC78 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80271D1C 0026EC7C 7C 08 03 A6 */ mtlr r0
/* 80271D20 0026EC80 38 21 00 20 */ addi r1, r1, 0x20
/* 80271D24 0026EC84 4E 80 00 20 */ blr
.global Growth__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Growth__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271D28 0026EC88 2C 05 00 00 */ cmpwi r5, 0
/* 80271D2C 0026EC8C 4C 82 00 20 */ bnelr
/* 80271D30 0026EC90 C0 02 BB F4 */ lfs f0, lbl_805AD914@sda21(r2)
/* 80271D34 0026EC94 D0 03 03 B4 */ stfs f0, 0x3b4(r3)
/* 80271D38 0026EC98 4E 80 00 20 */ blr
.global Land__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Land__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271D3C 0026EC9C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80271D40 0026ECA0 7C 08 02 A6 */ mflr r0
/* 80271D44 0026ECA4 2C 05 00 00 */ cmpwi r5, 0
/* 80271D48 0026ECA8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80271D4C 0026ECAC 40 82 00 08 */ bne lbl_80271D54
/* 80271D50 0026ECB0 48 00 69 AD */ bl sub_802786fc
lbl_80271D54:
/* 80271D54 0026ECB4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80271D58 0026ECB8 7C 08 03 A6 */ mtlr r0
/* 80271D5C 0026ECBC 38 21 00 10 */ addi r1, r1, 0x10
/* 80271D60 0026ECC0 4E 80 00 20 */ blr
.global Enraged__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Enraged__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271D64 0026ECC4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80271D68 0026ECC8 7C 08 02 A6 */ mflr r0
/* 80271D6C 0026ECCC 2C 05 00 00 */ cmpwi r5, 0
/* 80271D70 0026ECD0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80271D74 0026ECD4 41 82 00 08 */ beq lbl_80271D7C
/* 80271D78 0026ECD8 48 00 00 08 */ b lbl_80271D80
lbl_80271D7C:
/* 80271D7C 0026ECDC 48 00 69 81 */ bl sub_802786fc
lbl_80271D80:
/* 80271D80 0026ECE0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80271D84 0026ECE4 7C 08 03 A6 */ mtlr r0
/* 80271D88 0026ECE8 38 21 00 10 */ addi r1, r1, 0x10
/* 80271D8C 0026ECEC 4E 80 00 20 */ blr
.global Dodge__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Dodge__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271D90 0026ECF0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80271D94 0026ECF4 7C 08 02 A6 */ mflr r0
/* 80271D98 0026ECF8 2C 05 00 01 */ cmpwi r5, 1
/* 80271D9C 0026ECFC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80271DA0 0026ED00 41 82 00 4C */ beq lbl_80271DEC
/* 80271DA4 0026ED04 40 80 00 10 */ bge lbl_80271DB4
/* 80271DA8 0026ED08 2C 05 00 00 */ cmpwi r5, 0
/* 80271DAC 0026ED0C 40 80 00 14 */ bge lbl_80271DC0
/* 80271DB0 0026ED10 48 00 00 78 */ b lbl_80271E28
lbl_80271DB4:
/* 80271DB4 0026ED14 2C 05 00 03 */ cmpwi r5, 3
/* 80271DB8 0026ED18 40 80 00 70 */ bge lbl_80271E28
/* 80271DBC 0026ED1C 48 00 00 64 */ b lbl_80271E20
lbl_80271DC0:
/* 80271DC0 0026ED20 38 00 00 01 */ li r0, 1
/* 80271DC4 0026ED24 3C 80 80 3D */ lis r4, lbl_803D546C@ha
/* 80271DC8 0026ED28 90 03 03 2C */ stw r0, 0x32c(r3)
/* 80271DCC 0026ED2C 38 84 54 6C */ addi r4, r4, lbl_803D546C@l
/* 80271DD0 0026ED30 90 03 10 78 */ stw r0, 0x1078(r3)
/* 80271DD4 0026ED34 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 80271DD8 0026ED38 80 63 04 50 */ lwz r3, 0x450(r3)
/* 80271DDC 0026ED3C 54 00 10 3A */ slwi r0, r0, 2
/* 80271DE0 0026ED40 7C 84 00 2E */ lwzx r4, r4, r0
/* 80271DE4 0026ED44 4B EC 8B F5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80271DE8 0026ED48 48 00 00 40 */ b lbl_80271E28
lbl_80271DEC:
/* 80271DEC 0026ED4C 3C A0 80 3F */ lis r5, lbl_803EAD3C@ha
/* 80271DF0 0026ED50 38 C1 00 08 */ addi r6, r1, 8
/* 80271DF4 0026ED54 39 45 AD 3C */ addi r10, r5, lbl_803EAD3C@l
/* 80271DF8 0026ED58 38 A0 00 03 */ li r5, 3
/* 80271DFC 0026ED5C 81 2A 00 00 */ lwz r9, 0(r10)
/* 80271E00 0026ED60 38 E0 00 00 */ li r7, 0
/* 80271E04 0026ED64 81 0A 00 04 */ lwz r8, 4(r10)
/* 80271E08 0026ED68 80 0A 00 08 */ lwz r0, 8(r10)
/* 80271E0C 0026ED6C 91 21 00 08 */ stw r9, 8(r1)
/* 80271E10 0026ED70 91 01 00 0C */ stw r8, 0xc(r1)
/* 80271E14 0026ED74 90 01 00 10 */ stw r0, 0x10(r1)
/* 80271E18 0026ED78 4B E0 A9 9D */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80271E1C 0026ED7C 48 00 00 0C */ b lbl_80271E28
lbl_80271E20:
/* 80271E20 0026ED80 38 00 00 00 */ li r0, 0
/* 80271E24 0026ED84 90 03 03 2C */ stw r0, 0x32c(r3)
lbl_80271E28:
/* 80271E28 0026ED88 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80271E2C 0026ED8C 7C 08 03 A6 */ mtlr r0
/* 80271E30 0026ED90 38 21 00 20 */ addi r1, r1, 0x20
/* 80271E34 0026ED94 4E 80 00 20 */ blr
.global Crouch__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Crouch__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271E38 0026ED98 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80271E3C 0026ED9C 7C 08 02 A6 */ mflr r0
/* 80271E40 0026EDA0 2C 05 00 01 */ cmpwi r5, 1
/* 80271E44 0026EDA4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80271E48 0026EDA8 41 82 00 2C */ beq lbl_80271E74
/* 80271E4C 0026EDAC 40 80 00 10 */ bge lbl_80271E5C
/* 80271E50 0026EDB0 2C 05 00 00 */ cmpwi r5, 0
/* 80271E54 0026EDB4 40 80 00 14 */ bge lbl_80271E68
/* 80271E58 0026EDB8 48 00 00 5C */ b lbl_80271EB4
lbl_80271E5C:
/* 80271E5C 0026EDBC 2C 05 00 03 */ cmpwi r5, 3
/* 80271E60 0026EDC0 40 80 00 54 */ bge lbl_80271EB4
/* 80271E64 0026EDC4 48 00 00 44 */ b lbl_80271EA8
lbl_80271E68:
/* 80271E68 0026EDC8 38 00 00 01 */ li r0, 1
/* 80271E6C 0026EDCC 90 03 03 2C */ stw r0, 0x32c(r3)
/* 80271E70 0026EDD0 48 00 00 44 */ b lbl_80271EB4
lbl_80271E74:
/* 80271E74 0026EDD4 3C A0 80 3F */ lis r5, lbl_803EAD30@ha
/* 80271E78 0026EDD8 38 C1 00 08 */ addi r6, r1, 8
/* 80271E7C 0026EDDC 39 45 AD 30 */ addi r10, r5, lbl_803EAD30@l
/* 80271E80 0026EDE0 38 A0 00 07 */ li r5, 7
/* 80271E84 0026EDE4 81 2A 00 00 */ lwz r9, 0(r10)
/* 80271E88 0026EDE8 38 E0 00 05 */ li r7, 5
/* 80271E8C 0026EDEC 81 0A 00 04 */ lwz r8, 4(r10)
/* 80271E90 0026EDF0 80 0A 00 08 */ lwz r0, 8(r10)
/* 80271E94 0026EDF4 91 21 00 08 */ stw r9, 8(r1)
/* 80271E98 0026EDF8 91 01 00 0C */ stw r8, 0xc(r1)
/* 80271E9C 0026EDFC 90 01 00 10 */ stw r0, 0x10(r1)
/* 80271EA0 0026EE00 4B E0 A9 15 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80271EA4 0026EE04 48 00 00 10 */ b lbl_80271EB4
lbl_80271EA8:
/* 80271EA8 0026EE08 38 00 00 00 */ li r0, 0
/* 80271EAC 0026EE0C 90 03 03 2C */ stw r0, 0x32c(r3)
/* 80271EB0 0026EE10 48 00 1A 25 */ bl sub_802738d4
lbl_80271EB4:
/* 80271EB4 0026EE14 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80271EB8 0026EE18 7C 08 03 A6 */ mtlr r0
/* 80271EBC 0026EE1C 38 21 00 20 */ addi r1, r1, 0x20
/* 80271EC0 0026EE20 4E 80 00 20 */ blr
.global Retreat__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Retreat__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80271EC4 0026EE24 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80271EC8 0026EE28 7C 08 02 A6 */ mflr r0
/* 80271ECC 0026EE2C 2C 05 00 01 */ cmpwi r5, 1
/* 80271ED0 0026EE30 90 01 00 54 */ stw r0, 0x54(r1)
/* 80271ED4 0026EE34 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 80271ED8 0026EE38 7C 7F 1B 78 */ mr r31, r3
/* 80271EDC 0026EE3C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 80271EE0 0026EE40 7C 9E 23 78 */ mr r30, r4
/* 80271EE4 0026EE44 41 82 00 D8 */ beq lbl_80271FBC
/* 80271EE8 0026EE48 40 80 00 10 */ bge lbl_80271EF8
/* 80271EEC 0026EE4C 2C 05 00 00 */ cmpwi r5, 0
/* 80271EF0 0026EE50 40 80 00 14 */ bge lbl_80271F04
/* 80271EF4 0026EE54 48 00 01 8C */ b lbl_80272080
lbl_80271EF8:
/* 80271EF8 0026EE58 2C 05 00 03 */ cmpwi r5, 3
/* 80271EFC 0026EE5C 40 80 01 84 */ bge lbl_80272080
/* 80271F00 0026EE60 48 00 00 F0 */ b lbl_80271FF0
lbl_80271F04:
/* 80271F04 0026EE64 38 00 00 01 */ li r0, 1
/* 80271F08 0026EE68 7F C5 F3 78 */ mr r5, r30
/* 80271F0C 0026EE6C 90 1F 03 2C */ stw r0, 0x32c(r31)
/* 80271F10 0026EE70 38 80 00 09 */ li r4, 9
/* 80271F14 0026EE74 48 00 47 D1 */ bl sub_802766e4
/* 80271F18 0026EE78 7F E4 FB 78 */ mr r4, r31
/* 80271F1C 0026EE7C 7F C5 F3 78 */ mr r5, r30
/* 80271F20 0026EE80 38 61 00 14 */ addi r3, r1, 0x14
/* 80271F24 0026EE84 38 C0 00 0B */ li r6, 0xb
/* 80271F28 0026EE88 38 E0 00 06 */ li r7, 6
/* 80271F2C 0026EE8C 48 00 4C 11 */ bl sub_80276b3c
/* 80271F30 0026EE90 A0 01 00 14 */ lhz r0, 0x14(r1)
/* 80271F34 0026EE94 7F C3 F3 78 */ mr r3, r30
/* 80271F38 0026EE98 38 81 00 10 */ addi r4, r1, 0x10
/* 80271F3C 0026EE9C B0 01 00 1C */ sth r0, 0x1c(r1)
/* 80271F40 0026EEA0 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80271F44 0026EEA4 4B DD A6 61 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80271F48 0026EEA8 7C 64 1B 78 */ mr r4, r3
/* 80271F4C 0026EEAC 38 61 00 28 */ addi r3, r1, 0x28
/* 80271F50 0026EEB0 4B E3 45 FD */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 80271F54 0026EEB4 80 83 00 04 */ lwz r4, 4(r3)
/* 80271F58 0026EEB8 28 04 00 00 */ cmplwi r4, 0
/* 80271F5C 0026EEBC 41 82 00 38 */ beq lbl_80271F94
/* 80271F60 0026EEC0 38 7F 00 34 */ addi r3, r31, 0x34
/* 80271F64 0026EEC4 38 84 00 34 */ addi r4, r4, 0x34
/* 80271F68 0026EEC8 48 0A 0B D9 */ bl __as__12CTransform4fFRC12CTransform4f
/* 80271F6C 0026EECC 88 1F 00 E4 */ lbz r0, 0xe4(r31)
/* 80271F70 0026EED0 38 60 00 01 */ li r3, 1
/* 80271F74 0026EED4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b
/* 80271F78 0026EED8 98 1F 00 E4 */ stb r0, 0xe4(r31)
/* 80271F7C 0026EEDC 88 1F 00 E4 */ lbz r0, 0xe4(r31)
/* 80271F80 0026EEE0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c
/* 80271F84 0026EEE4 98 1F 00 E4 */ stb r0, 0xe4(r31)
/* 80271F88 0026EEE8 88 1F 00 E4 */ lbz r0, 0xe4(r31)
/* 80271F8C 0026EEEC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d
/* 80271F90 0026EEF0 98 1F 00 E4 */ stb r0, 0xe4(r31)
lbl_80271F94:
/* 80271F94 0026EEF4 38 00 00 01 */ li r0, 1
/* 80271F98 0026EEF8 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80271F9C 0026EEFC 90 1F 10 78 */ stw r0, 0x1078(r31)
/* 80271FA0 0026EF00 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80271FA4 0026EF04 80 1F 10 78 */ lwz r0, 0x1078(r31)
/* 80271FA8 0026EF08 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 80271FAC 0026EF0C 54 00 10 3A */ slwi r0, r0, 2
/* 80271FB0 0026EF10 7C 84 00 2E */ lwzx r4, r4, r0
/* 80271FB4 0026EF14 4B EC 8A 25 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80271FB8 0026EF18 48 00 00 C8 */ b lbl_80272080
lbl_80271FBC:
/* 80271FBC 0026EF1C 3C A0 80 3F */ lis r5, lbl_803EAD24@ha
/* 80271FC0 0026EF20 38 C1 00 30 */ addi r6, r1, 0x30
/* 80271FC4 0026EF24 39 25 AD 24 */ addi r9, r5, lbl_803EAD24@l
/* 80271FC8 0026EF28 38 A0 00 11 */ li r5, 0x11
/* 80271FCC 0026EF2C 81 09 00 00 */ lwz r8, 0(r9)
/* 80271FD0 0026EF30 80 E9 00 04 */ lwz r7, 4(r9)
/* 80271FD4 0026EF34 80 09 00 08 */ lwz r0, 8(r9)
/* 80271FD8 0026EF38 91 01 00 30 */ stw r8, 0x30(r1)
/* 80271FDC 0026EF3C 90 E1 00 34 */ stw r7, 0x34(r1)
/* 80271FE0 0026EF40 90 01 00 38 */ stw r0, 0x38(r1)
/* 80271FE4 0026EF44 80 FF 09 18 */ lwz r7, 0x918(r31)
/* 80271FE8 0026EF48 4B E0 A7 CD */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80271FEC 0026EF4C 48 00 00 94 */ b lbl_80272080
lbl_80271FF0:
/* 80271FF0 0026EF50 38 00 00 00 */ li r0, 0
/* 80271FF4 0026EF54 7F E4 FB 78 */ mr r4, r31
/* 80271FF8 0026EF58 90 1F 03 2C */ stw r0, 0x32c(r31)
/* 80271FFC 0026EF5C 7F C5 F3 78 */ mr r5, r30
/* 80272000 0026EF60 38 61 00 0C */ addi r3, r1, 0xc
/* 80272004 0026EF64 38 C0 00 0C */ li r6, 0xc
/* 80272008 0026EF68 38 E0 00 06 */ li r7, 6
/* 8027200C 0026EF6C 48 00 4B 31 */ bl sub_80276b3c
/* 80272010 0026EF70 A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80272014 0026EF74 7F C3 F3 78 */ mr r3, r30
/* 80272018 0026EF78 38 81 00 08 */ addi r4, r1, 8
/* 8027201C 0026EF7C B0 01 00 18 */ sth r0, 0x18(r1)
/* 80272020 0026EF80 B0 01 00 08 */ sth r0, 8(r1)
/* 80272024 0026EF84 4B DD A5 81 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80272028 0026EF88 7C 64 1B 78 */ mr r4, r3
/* 8027202C 0026EF8C 38 61 00 20 */ addi r3, r1, 0x20
/* 80272030 0026EF90 4B E3 45 1D */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 80272034 0026EF94 80 83 00 04 */ lwz r4, 4(r3)
/* 80272038 0026EF98 28 04 00 00 */ cmplwi r4, 0
/* 8027203C 0026EF9C 41 82 00 38 */ beq lbl_80272074
/* 80272040 0026EFA0 38 7F 00 34 */ addi r3, r31, 0x34
/* 80272044 0026EFA4 38 84 00 34 */ addi r4, r4, 0x34
/* 80272048 0026EFA8 48 0A 0A F9 */ bl __as__12CTransform4fFRC12CTransform4f
/* 8027204C 0026EFAC 88 1F 00 E4 */ lbz r0, 0xe4(r31)
/* 80272050 0026EFB0 38 60 00 01 */ li r3, 1
/* 80272054 0026EFB4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b
/* 80272058 0026EFB8 98 1F 00 E4 */ stb r0, 0xe4(r31)
/* 8027205C 0026EFBC 88 1F 00 E4 */ lbz r0, 0xe4(r31)
/* 80272060 0026EFC0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c
/* 80272064 0026EFC4 98 1F 00 E4 */ stb r0, 0xe4(r31)
/* 80272068 0026EFC8 88 1F 00 E4 */ lbz r0, 0xe4(r31)
/* 8027206C 0026EFCC 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d
/* 80272070 0026EFD0 98 1F 00 E4 */ stb r0, 0xe4(r31)
lbl_80272074:
/* 80272074 0026EFD4 80 7F 09 1C */ lwz r3, 0x91c(r31)
/* 80272078 0026EFD8 38 03 00 01 */ addi r0, r3, 1
/* 8027207C 0026EFDC 90 1F 09 1C */ stw r0, 0x91c(r31)
lbl_80272080:
/* 80272080 0026EFE0 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80272084 0026EFE4 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 80272088 0026EFE8 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8027208C 0026EFEC 7C 08 03 A6 */ mtlr r0
/* 80272090 0026EFF0 38 21 00 50 */ addi r1, r1, 0x50
/* 80272094 0026EFF4 4E 80 00 20 */ blr
.global Flinch__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Flinch__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272098 0026EFF8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8027209C 0026EFFC 7C 08 02 A6 */ mflr r0
/* 802720A0 0026F000 2C 05 00 01 */ cmpwi r5, 1
/* 802720A4 0026F004 90 01 00 24 */ stw r0, 0x24(r1)
/* 802720A8 0026F008 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802720AC 0026F00C 7C 9F 23 78 */ mr r31, r4
/* 802720B0 0026F010 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802720B4 0026F014 7C 7E 1B 78 */ mr r30, r3
/* 802720B8 0026F018 41 82 00 5C */ beq lbl_80272114
/* 802720BC 0026F01C 40 80 00 10 */ bge lbl_802720CC
/* 802720C0 0026F020 2C 05 00 00 */ cmpwi r5, 0
/* 802720C4 0026F024 40 80 00 14 */ bge lbl_802720D8
/* 802720C8 0026F028 48 00 00 DC */ b lbl_802721A4
lbl_802720CC:
/* 802720CC 0026F02C 2C 05 00 03 */ cmpwi r5, 3
/* 802720D0 0026F030 40 80 00 D4 */ bge lbl_802721A4
/* 802720D4 0026F034 48 00 00 90 */ b lbl_80272164
lbl_802720D8:
/* 802720D8 0026F038 38 00 00 01 */ li r0, 1
/* 802720DC 0026F03C 38 A0 00 00 */ li r5, 0
/* 802720E0 0026F040 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 802720E4 0026F044 48 00 67 1D */ bl sub_80278800
/* 802720E8 0026F048 7F C3 F3 78 */ mr r3, r30
/* 802720EC 0026F04C 7F E4 FB 78 */ mr r4, r31
/* 802720F0 0026F050 48 00 36 2D */ bl sub_8027571c
/* 802720F4 0026F054 88 1E 08 F4 */ lbz r0, 0x8f4(r30)
/* 802720F8 0026F058 38 60 00 00 */ li r3, 0
/* 802720FC 0026F05C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c
/* 80272100 0026F060 98 1E 08 F4 */ stb r0, 0x8f4(r30)
/* 80272104 0026F064 88 1E 08 F4 */ lbz r0, 0x8f4(r30)
/* 80272108 0026F068 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b
/* 8027210C 0026F06C 98 1E 08 F4 */ stb r0, 0x8f4(r30)
/* 80272110 0026F070 48 00 00 94 */ b lbl_802721A4
lbl_80272114:
/* 80272114 0026F074 3C A0 80 3F */ lis r5, lbl_803EAD18@ha
/* 80272118 0026F078 38 C1 00 08 */ addi r6, r1, 8
/* 8027211C 0026F07C 39 45 AD 18 */ addi r10, r5, lbl_803EAD18@l
/* 80272120 0026F080 38 A0 00 06 */ li r5, 6
/* 80272124 0026F084 81 2A 00 00 */ lwz r9, 0(r10)
/* 80272128 0026F088 38 E0 00 05 */ li r7, 5
/* 8027212C 0026F08C 81 0A 00 04 */ lwz r8, 4(r10)
/* 80272130 0026F090 80 0A 00 08 */ lwz r0, 8(r10)
/* 80272134 0026F094 91 21 00 08 */ stw r9, 8(r1)
/* 80272138 0026F098 91 01 00 0C */ stw r8, 0xc(r1)
/* 8027213C 0026F09C 90 01 00 10 */ stw r0, 0x10(r1)
/* 80272140 0026F0A0 4B E0 A6 75 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272144 0026F0A4 C0 02 BB F8 */ lfs f0, lbl_805AD918@sda21(r2)
/* 80272148 0026F0A8 C0 42 88 F0 */ lfs f2, lbl_805AA610@sda21(r2)
/* 8027214C 0026F0AC C0 3E 04 28 */ lfs f1, 0x428(r30)
/* 80272150 0026F0B0 EC 00 00 B2 */ fmuls f0, f0, f2
/* 80272154 0026F0B4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80272158 0026F0B8 40 80 00 4C */ bge lbl_802721A4
/* 8027215C 0026F0BC D0 5E 04 28 */ stfs f2, 0x428(r30)
/* 80272160 0026F0C0 48 00 00 44 */ b lbl_802721A4
lbl_80272164:
/* 80272164 0026F0C4 38 00 00 00 */ li r0, 0
/* 80272168 0026F0C8 38 A0 00 01 */ li r5, 1
/* 8027216C 0026F0CC 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 80272170 0026F0D0 48 00 66 91 */ bl sub_80278800
/* 80272174 0026F0D4 38 00 00 01 */ li r0, 1
/* 80272178 0026F0D8 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 8027217C 0026F0DC 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 80272180 0026F0E0 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272184 0026F0E4 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80272188 0026F0E8 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 8027218C 0026F0EC 54 00 10 3A */ slwi r0, r0, 2
/* 80272190 0026F0F0 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272194 0026F0F4 4B EC 88 45 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272198 0026F0F8 7F C3 F3 78 */ mr r3, r30
/* 8027219C 0026F0FC 7F E4 FB 78 */ mr r4, r31
/* 802721A0 0026F100 48 00 35 19 */ bl sub_802756b8
lbl_802721A4:
/* 802721A4 0026F104 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802721A8 0026F108 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802721AC 0026F10C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802721B0 0026F110 7C 08 03 A6 */ mtlr r0
/* 802721B4 0026F114 38 21 00 20 */ addi r1, r1, 0x20
/* 802721B8 0026F118 4E 80 00 20 */ blr
.global Suck__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Suck__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 802721BC 0026F11C 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 802721C0 0026F120 7C 08 02 A6 */ mflr r0
/* 802721C4 0026F124 2C 05 00 01 */ cmpwi r5, 1
/* 802721C8 0026F128 90 01 00 74 */ stw r0, 0x74(r1)
/* 802721CC 0026F12C 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 802721D0 0026F130 7C 9F 23 78 */ mr r31, r4
/* 802721D4 0026F134 93 C1 00 68 */ stw r30, 0x68(r1)
/* 802721D8 0026F138 7C 7E 1B 78 */ mr r30, r3
/* 802721DC 0026F13C 93 A1 00 64 */ stw r29, 0x64(r1)
/* 802721E0 0026F140 41 82 01 EC */ beq lbl_802723CC
/* 802721E4 0026F144 40 80 00 10 */ bge lbl_802721F4
/* 802721E8 0026F148 2C 05 00 00 */ cmpwi r5, 0
/* 802721EC 0026F14C 40 80 00 14 */ bge lbl_80272200
/* 802721F0 0026F150 48 00 01 DC */ b lbl_802723CC
lbl_802721F4:
/* 802721F4 0026F154 2C 05 00 03 */ cmpwi r5, 3
/* 802721F8 0026F158 40 80 01 D4 */ bge lbl_802723CC
/* 802721FC 0026F15C 48 00 00 5C */ b lbl_80272258
lbl_80272200:
/* 80272200 0026F160 83 BE 04 50 */ lwz r29, 0x450(r30)
/* 80272204 0026F164 38 80 00 0A */ li r4, 0xa
/* 80272208 0026F168 48 00 3C 0D */ bl sub_80275e14
/* 8027220C 0026F16C 7C 64 1B 78 */ mr r4, r3
/* 80272210 0026F170 7F A3 EB 78 */ mr r3, r29
/* 80272214 0026F174 4B EC 87 C5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272218 0026F178 38 00 00 0B */ li r0, 0xb
/* 8027221C 0026F17C 38 60 00 00 */ li r3, 0
/* 80272220 0026F180 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272224 0026F184 38 81 00 24 */ addi r4, r1, 0x24
/* 80272228 0026F188 C0 02 BB FC */ lfs f0, lbl_805AD91C@sda21(r2)
/* 8027222C 0026F18C 38 A0 00 00 */ li r5, 0
/* 80272230 0026F190 88 1E 10 54 */ lbz r0, 0x1054(r30)
/* 80272234 0026F194 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 80272238 0026F198 98 1E 10 54 */ stb r0, 0x1054(r30)
/* 8027223C 0026F19C D0 1E 10 84 */ stfs f0, 0x1084(r30)
/* 80272240 0026F1A0 A0 1E 00 08 */ lhz r0, 8(r30)
/* 80272244 0026F1A4 B0 01 00 24 */ sth r0, 0x24(r1)
/* 80272248 0026F1A8 B0 01 00 20 */ sth r0, 0x20(r1)
/* 8027224C 0026F1AC 80 7F 08 4C */ lwz r3, 0x84c(r31)
/* 80272250 0026F1B0 4B DA 27 81 */ bl AttachActorToPlayer__7CPlayerF9TUniqueId
/* 80272254 0026F1B4 48 00 01 78 */ b lbl_802723CC
lbl_80272258:
/* 80272258 0026F1B8 80 7F 08 4C */ lwz r3, 0x84c(r31)
/* 8027225C 0026F1BC 4B DA 27 49 */ bl DetachActorFromPlayer__7CPlayerFv
/* 80272260 0026F1C0 38 00 00 01 */ li r0, 1
/* 80272264 0026F1C4 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272268 0026F1C8 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 8027226C 0026F1CC 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272270 0026F1D0 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80272274 0026F1D4 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 80272278 0026F1D8 54 00 10 3A */ slwi r0, r0, 2
/* 8027227C 0026F1DC 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272280 0026F1E0 4B EC 87 59 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272284 0026F1E4 38 00 00 00 */ li r0, 0
/* 80272288 0026F1E8 7F C3 F3 78 */ mr r3, r30
/* 8027228C 0026F1EC 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272290 0026F1F0 7F E4 FB 78 */ mr r4, r31
/* 80272294 0026F1F4 38 A0 00 00 */ li r5, 0
/* 80272298 0026F1F8 48 00 33 15 */ bl sub_802755ac
/* 8027229C 0026F1FC 7F C3 F3 78 */ mr r3, r30
/* 802722A0 0026F200 7F E4 FB 78 */ mr r4, r31
/* 802722A4 0026F204 48 00 16 31 */ bl sub_802738d4
/* 802722A8 0026F208 C0 02 BC 00 */ lfs f0, lbl_805AD920@sda21(r2)
/* 802722AC 0026F20C D0 1E 10 88 */ stfs f0, 0x1088(r30)
/* 802722B0 0026F210 80 7F 08 4C */ lwz r3, 0x84c(r31)
/* 802722B4 0026F214 80 03 02 F8 */ lwz r0, 0x2f8(r3)
/* 802722B8 0026F218 2C 00 00 01 */ cmpwi r0, 1
/* 802722BC 0026F21C 41 82 01 00 */ beq lbl_802723BC
/* 802722C0 0026F220 A0 1E 00 08 */ lhz r0, 8(r30)
/* 802722C4 0026F224 7F E6 FB 78 */ mr r6, r31
/* 802722C8 0026F228 38 81 00 1C */ addi r4, r1, 0x1c
/* 802722CC 0026F22C 38 A0 00 08 */ li r5, 8
/* 802722D0 0026F230 B0 01 00 1C */ sth r0, 0x1c(r1)
/* 802722D4 0026F234 B0 01 00 18 */ sth r0, 0x18(r1)
/* 802722D8 0026F238 80 7F 08 4C */ lwz r3, 0x84c(r31)
/* 802722DC 0026F23C 4B F0 8F 79 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager
/* 802722E0 0026F240 88 1E 04 02 */ lbz r0, 0x402(r30)
/* 802722E4 0026F244 38 60 00 01 */ li r3, 1
/* 802722E8 0026F248 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c
/* 802722EC 0026F24C C0 02 BC 04 */ lfs f0, lbl_805AD924@sda21(r2)
/* 802722F0 0026F250 98 1E 04 02 */ stb r0, 0x402(r30)
/* 802722F4 0026F254 7F E3 FB 78 */ mr r3, r31
/* 802722F8 0026F258 38 81 00 14 */ addi r4, r1, 0x14
/* 802722FC 0026F25C 38 A1 00 0C */ addi r5, r1, 0xc
/* 80272300 0026F260 D0 1E 05 04 */ stfs f0, 0x504(r30)
/* 80272304 0026F264 38 C0 00 29 */ li r6, 0x29
/* 80272308 0026F268 A0 1E 00 08 */ lhz r0, 8(r30)
/* 8027230C 0026F26C B0 01 00 0C */ sth r0, 0xc(r1)
/* 80272310 0026F270 80 FF 08 4C */ lwz r7, 0x84c(r31)
/* 80272314 0026F274 B0 01 00 08 */ sth r0, 8(r1)
/* 80272318 0026F278 A0 07 00 08 */ lhz r0, 8(r7)
/* 8027231C 0026F27C B0 01 00 10 */ sth r0, 0x10(r1)
/* 80272320 0026F280 B0 01 00 14 */ sth r0, 0x14(r1)
/* 80272324 0026F284 4B DD 1B 31 */ bl SendScriptMsgAlways__13CStateManagerF9TUniqueId9TUniqueId20EScriptObjectMessage
/* 80272328 0026F288 80 BF 08 4C */ lwz r5, 0x84c(r31)
/* 8027232C 0026F28C 38 61 00 28 */ addi r3, r1, 0x28
/* 80272330 0026F290 C0 1E 00 50 */ lfs f0, 0x50(r30)
/* 80272334 0026F294 38 81 00 4C */ addi r4, r1, 0x4c
/* 80272338 0026F298 C0 65 00 50 */ lfs f3, 0x50(r5)
/* 8027233C 0026F29C C0 45 00 40 */ lfs f2, 0x40(r5)
/* 80272340 0026F2A0 C0 3E 00 40 */ lfs f1, 0x40(r30)
/* 80272344 0026F2A4 EC 63 00 28 */ fsubs f3, f3, f0
/* 80272348 0026F2A8 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027234C 0026F2AC EC 22 08 28 */ fsubs f1, f2, f1
/* 80272350 0026F2B0 D0 61 00 50 */ stfs f3, 0x50(r1)
/* 80272354 0026F2B4 D0 21 00 4C */ stfs f1, 0x4c(r1)
/* 80272358 0026F2B8 D0 01 00 54 */ stfs f0, 0x54(r1)
/* 8027235C 0026F2BC 48 0A 24 F5 */ bl AsNormalized__9CVector3fCFv
/* 80272360 0026F2C0 83 BF 08 4C */ lwz r29, 0x84c(r31)
/* 80272364 0026F2C4 C0 41 00 30 */ lfs f2, 0x30(r1)
/* 80272368 0026F2C8 C0 BD 00 E8 */ lfs f5, 0xe8(r29)
/* 8027236C 0026F2CC C0 21 00 28 */ lfs f1, 0x28(r1)
/* 80272370 0026F2D0 EC 85 00 B2 */ fmuls f4, f5, f2
/* 80272374 0026F2D4 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 80272378 0026F2D8 EC 65 00 72 */ fmuls f3, f5, f1
/* 8027237C 0026F2DC C0 22 BC 0C */ lfs f1, lbl_805AD92C@sda21(r2)
/* 80272380 0026F2E0 EC 45 00 32 */ fmuls f2, f5, f0
/* 80272384 0026F2E4 EC A1 01 32 */ fmuls f5, f1, f4
/* 80272388 0026F2E8 EC 01 00 F2 */ fmuls f0, f1, f3
/* 8027238C 0026F2EC D0 81 00 3C */ stfs f4, 0x3c(r1)
/* 80272390 0026F2F0 EC 21 00 B2 */ fmuls f1, f1, f2
/* 80272394 0026F2F4 D0 61 00 34 */ stfs f3, 0x34(r1)
/* 80272398 0026F2F8 D0 41 00 38 */ stfs f2, 0x38(r1)
/* 8027239C 0026F2FC D0 01 00 40 */ stfs f0, 0x40(r1)
/* 802723A0 0026F300 D0 21 00 44 */ stfs f1, 0x44(r1)
/* 802723A4 0026F304 D0 A1 00 48 */ stfs f5, 0x48(r1)
/* 802723A8 0026F308 4B DA 91 8D */ bl Identity__10CAxisAngleFv
/* 802723AC 0026F30C 7C 65 1B 78 */ mr r5, r3
/* 802723B0 0026F310 7F A3 EB 78 */ mr r3, r29
/* 802723B4 0026F314 38 81 00 40 */ addi r4, r1, 0x40
/* 802723B8 0026F318 4B EA 9F E1 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle
lbl_802723BC:
/* 802723BC 0026F31C 88 1E 10 54 */ lbz r0, 0x1054(r30)
/* 802723C0 0026F320 38 60 00 01 */ li r3, 1
/* 802723C4 0026F324 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b
/* 802723C8 0026F328 98 1E 10 54 */ stb r0, 0x1054(r30)
lbl_802723CC:
/* 802723CC 0026F32C 80 01 00 74 */ lwz r0, 0x74(r1)
/* 802723D0 0026F330 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 802723D4 0026F334 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 802723D8 0026F338 83 A1 00 64 */ lwz r29, 0x64(r1)
/* 802723DC 0026F33C 7C 08 03 A6 */ mtlr r0
/* 802723E0 0026F340 38 21 00 70 */ addi r1, r1, 0x70
/* 802723E4 0026F344 4E 80 00 20 */ blr
.global Run__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Run__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 802723E8 0026F348 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802723EC 0026F34C 7C 08 02 A6 */ mflr r0
/* 802723F0 0026F350 2C 05 00 01 */ cmpwi r5, 1
/* 802723F4 0026F354 90 01 00 44 */ stw r0, 0x44(r1)
/* 802723F8 0026F358 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 802723FC 0026F35C 7C 9F 23 78 */ mr r31, r4
/* 80272400 0026F360 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80272404 0026F364 7C 7E 1B 78 */ mr r30, r3
/* 80272408 0026F368 93 A1 00 34 */ stw r29, 0x34(r1)
/* 8027240C 0026F36C 93 81 00 30 */ stw r28, 0x30(r1)
/* 80272410 0026F370 41 82 00 F8 */ beq lbl_80272508
/* 80272414 0026F374 40 80 00 10 */ bge lbl_80272424
/* 80272418 0026F378 2C 05 00 00 */ cmpwi r5, 0
/* 8027241C 0026F37C 40 80 00 14 */ bge lbl_80272430
/* 80272420 0026F380 48 00 01 38 */ b lbl_80272558
lbl_80272424:
/* 80272424 0026F384 2C 05 00 03 */ cmpwi r5, 3
/* 80272428 0026F388 40 80 01 30 */ bge lbl_80272558
/* 8027242C 0026F38C 48 00 00 E4 */ b lbl_80272510
lbl_80272430:
/* 80272430 0026F390 38 00 00 0A */ li r0, 0xa
/* 80272434 0026F394 C0 02 BC 10 */ lfs f0, lbl_805AD930@sda21(r2)
/* 80272438 0026F398 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 8027243C 0026F39C 7F C4 F3 78 */ mr r4, r30
/* 80272440 0026F3A0 7F E5 FB 78 */ mr r5, r31
/* 80272444 0026F3A4 38 61 00 0C */ addi r3, r1, 0xc
/* 80272448 0026F3A8 D0 1E 10 84 */ stfs f0, 0x1084(r30)
/* 8027244C 0026F3AC 38 C0 00 01 */ li r6, 1
/* 80272450 0026F3B0 48 00 45 91 */ bl sub_802769e0
/* 80272454 0026F3B4 A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80272458 0026F3B8 7F E3 FB 78 */ mr r3, r31
/* 8027245C 0026F3BC 38 81 00 08 */ addi r4, r1, 8
/* 80272460 0026F3C0 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80272464 0026F3C4 B0 01 00 08 */ sth r0, 8(r1)
/* 80272468 0026F3C8 4B DD A1 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 8027246C 0026F3CC 7C 64 1B 78 */ mr r4, r3
/* 80272470 0026F3D0 38 61 00 14 */ addi r3, r1, 0x14
/* 80272474 0026F3D4 4B E3 40 D9 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 80272478 0026F3D8 83 83 00 04 */ lwz r28, 4(r3)
/* 8027247C 0026F3DC 28 1C 00 00 */ cmplwi r28, 0
/* 80272480 0026F3E0 41 82 00 74 */ beq lbl_802724F4
/* 80272484 0026F3E4 83 BE 04 50 */ lwz r29, 0x450(r30)
/* 80272488 0026F3E8 7F C3 F3 78 */ mr r3, r30
/* 8027248C 0026F3EC 38 80 00 01 */ li r4, 1
/* 80272490 0026F3F0 48 00 39 85 */ bl sub_80275e14
/* 80272494 0026F3F4 7C 64 1B 78 */ mr r4, r3
/* 80272498 0026F3F8 7F A3 EB 78 */ mr r3, r29
/* 8027249C 0026F3FC 4B EC 85 3D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 802724A0 0026F400 A0 01 00 10 */ lhz r0, 0x10(r1)
/* 802724A4 0026F404 7F C3 F3 78 */ mr r3, r30
/* 802724A8 0026F408 38 81 00 1C */ addi r4, r1, 0x1c
/* 802724AC 0026F40C B0 1E 02 DC */ sth r0, 0x2dc(r30)
/* 802724B0 0026F410 C0 5C 00 60 */ lfs f2, 0x60(r28)
/* 802724B4 0026F414 C0 3C 00 50 */ lfs f1, 0x50(r28)
/* 802724B8 0026F418 C0 1C 00 40 */ lfs f0, 0x40(r28)
/* 802724BC 0026F41C D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 802724C0 0026F420 D0 21 00 20 */ stfs f1, 0x20(r1)
/* 802724C4 0026F424 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 802724C8 0026F428 4B E0 A6 95 */ bl SetDestPos__10CPatternedFRC9CVector3f
/* 802724CC 0026F42C C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 802724D0 0026F430 38 60 00 00 */ li r3, 0
/* 802724D4 0026F434 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 802724D8 0026F438 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 802724DC 0026F43C D0 1E 02 EC */ stfs f0, 0x2ec(r30)
/* 802724E0 0026F440 D0 3E 02 F0 */ stfs f1, 0x2f0(r30)
/* 802724E4 0026F444 D0 5E 02 F4 */ stfs f2, 0x2f4(r30)
/* 802724E8 0026F448 88 1E 03 28 */ lbz r0, 0x328(r30)
/* 802724EC 0026F44C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 802724F0 0026F450 98 1E 03 28 */ stb r0, 0x328(r30)
lbl_802724F4:
/* 802724F4 0026F454 7F C3 F3 78 */ mr r3, r30
/* 802724F8 0026F458 7F E4 FB 78 */ mr r4, r31
/* 802724FC 0026F45C 38 A0 00 00 */ li r5, 0
/* 80272500 0026F460 48 00 63 01 */ bl sub_80278800
/* 80272504 0026F464 48 00 00 54 */ b lbl_80272558
lbl_80272508:
/* 80272508 0026F468 4B F8 31 49 */ bl ApproachDest__10CPatternedFR13CStateManager
/* 8027250C 0026F46C 48 00 00 4C */ b lbl_80272558
lbl_80272510:
/* 80272510 0026F470 38 00 00 00 */ li r0, 0
/* 80272514 0026F474 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272518 0026F478 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 8027251C 0026F47C 38 00 00 01 */ li r0, 1
/* 80272520 0026F480 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272524 0026F484 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 80272528 0026F488 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 8027252C 0026F48C 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 80272530 0026F490 54 00 10 3A */ slwi r0, r0, 2
/* 80272534 0026F494 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272538 0026F498 4B EC 84 A1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 8027253C 0026F49C 7F C3 F3 78 */ mr r3, r30
/* 80272540 0026F4A0 7F E4 FB 78 */ mr r4, r31
/* 80272544 0026F4A4 38 A0 00 01 */ li r5, 1
/* 80272548 0026F4A8 48 00 62 B9 */ bl sub_80278800
/* 8027254C 0026F4AC 7F C3 F3 78 */ mr r3, r30
/* 80272550 0026F4B0 7F E4 FB 78 */ mr r4, r31
/* 80272554 0026F4B4 48 00 13 81 */ bl sub_802738d4
lbl_80272558:
/* 80272558 0026F4B8 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8027255C 0026F4BC 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80272560 0026F4C0 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80272564 0026F4C4 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 80272568 0026F4C8 83 81 00 30 */ lwz r28, 0x30(r1)
/* 8027256C 0026F4CC 7C 08 03 A6 */ mtlr r0
/* 80272570 0026F4D0 38 21 00 40 */ addi r1, r1, 0x40
/* 80272574 0026F4D4 4E 80 00 20 */ blr
.global TurnAround__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
TurnAround__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272578 0026F4D8 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 8027257C 0026F4DC 7C 08 02 A6 */ mflr r0
/* 80272580 0026F4E0 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 80272584 0026F4E4 DB E1 00 90 */ stfd f31, 0x90(r1)
/* 80272588 0026F4E8 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0
/* 8027258C 0026F4EC DB C1 00 80 */ stfd f30, 0x80(r1)
/* 80272590 0026F4F0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0
/* 80272594 0026F4F4 DB A1 00 70 */ stfd f29, 0x70(r1)
/* 80272598 0026F4F8 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0
/* 8027259C 0026F4FC DB 81 00 60 */ stfd f28, 0x60(r1)
/* 802725A0 0026F500 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0
/* 802725A4 0026F504 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 802725A8 0026F508 93 C1 00 58 */ stw r30, 0x58(r1)
/* 802725AC 0026F50C FF 80 08 90 */ fmr f28, f1
/* 802725B0 0026F510 2C 05 00 01 */ cmpwi r5, 1
/* 802725B4 0026F514 7C 7E 1B 78 */ mr r30, r3
/* 802725B8 0026F518 7C 9F 23 78 */ mr r31, r4
/* 802725BC 0026F51C 41 82 00 34 */ beq lbl_802725F0
/* 802725C0 0026F520 40 80 00 10 */ bge lbl_802725D0
/* 802725C4 0026F524 2C 05 00 00 */ cmpwi r5, 0
/* 802725C8 0026F528 40 80 00 14 */ bge lbl_802725DC
/* 802725CC 0026F52C 48 00 01 58 */ b lbl_80272724
lbl_802725D0:
/* 802725D0 0026F530 2C 05 00 03 */ cmpwi r5, 3
/* 802725D4 0026F534 40 80 01 50 */ bge lbl_80272724
/* 802725D8 0026F538 48 00 01 40 */ b lbl_80272718
lbl_802725DC:
/* 802725DC 0026F53C 38 60 00 09 */ li r3, 9
/* 802725E0 0026F540 38 00 00 01 */ li r0, 1
/* 802725E4 0026F544 90 7E 09 2C */ stw r3, 0x92c(r30)
/* 802725E8 0026F548 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 802725EC 0026F54C 48 00 01 38 */ b lbl_80272724
lbl_802725F0:
/* 802725F0 0026F550 3C A0 80 3F */ lis r5, lbl_803EAD0C@ha
/* 802725F4 0026F554 38 C1 00 44 */ addi r6, r1, 0x44
/* 802725F8 0026F558 39 45 AD 0C */ addi r10, r5, lbl_803EAD0C@l
/* 802725FC 0026F55C 38 A0 00 03 */ li r5, 3
/* 80272600 0026F560 81 2A 00 00 */ lwz r9, 0(r10)
/* 80272604 0026F564 38 E0 00 03 */ li r7, 3
/* 80272608 0026F568 81 0A 00 04 */ lwz r8, 4(r10)
/* 8027260C 0026F56C 80 0A 00 08 */ lwz r0, 8(r10)
/* 80272610 0026F570 91 21 00 44 */ stw r9, 0x44(r1)
/* 80272614 0026F574 91 01 00 48 */ stw r8, 0x48(r1)
/* 80272618 0026F578 90 01 00 4C */ stw r0, 0x4c(r1)
/* 8027261C 0026F57C 4B E0 A1 99 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272620 0026F580 38 00 00 01 */ li r0, 1
/* 80272624 0026F584 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272628 0026F588 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 8027262C 0026F58C 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272630 0026F590 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80272634 0026F594 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 80272638 0026F598 54 00 10 3A */ slwi r0, r0, 2
/* 8027263C 0026F59C 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272640 0026F5A0 4B EC 83 99 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272644 0026F5A4 7F C4 F3 78 */ mr r4, r30
/* 80272648 0026F5A8 7F E5 FB 78 */ mr r5, r31
/* 8027264C 0026F5AC 38 61 00 38 */ addi r3, r1, 0x38
/* 80272650 0026F5B0 48 00 1F FD */ bl sub_8027464c
/* 80272654 0026F5B4 C3 A1 00 38 */ lfs f29, 0x38(r1)
/* 80272658 0026F5B8 38 61 00 2C */ addi r3, r1, 0x2c
/* 8027265C 0026F5BC C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 80272660 0026F5C0 38 81 00 20 */ addi r4, r1, 0x20
/* 80272664 0026F5C4 C3 E1 00 3C */ lfs f31, 0x3c(r1)
/* 80272668 0026F5C8 C0 5E 00 50 */ lfs f2, 0x50(r30)
/* 8027266C 0026F5CC EC 1D 00 28 */ fsubs f0, f29, f0
/* 80272670 0026F5D0 C0 3E 00 60 */ lfs f1, 0x60(r30)
/* 80272674 0026F5D4 C3 C1 00 40 */ lfs f30, 0x40(r1)
/* 80272678 0026F5D8 EC 5F 10 28 */ fsubs f2, f31, f2
/* 8027267C 0026F5DC D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80272680 0026F5E0 EC 1E 08 28 */ fsubs f0, f30, f1
/* 80272684 0026F5E4 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80272688 0026F5E8 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 8027268C 0026F5EC 48 0A 21 C5 */ bl AsNormalized__9CVector3fCFv
/* 80272690 0026F5F0 80 7F 08 4C */ lwz r3, 0x84c(r31)
/* 80272694 0026F5F4 C0 1E 00 50 */ lfs f0, 0x50(r30)
/* 80272698 0026F5F8 C0 43 00 50 */ lfs f2, 0x50(r3)
/* 8027269C 0026F5FC C0 83 00 40 */ lfs f4, 0x40(r3)
/* 802726A0 0026F600 EC 02 00 28 */ fsubs f0, f2, f0
/* 802726A4 0026F604 C0 7E 00 40 */ lfs f3, 0x40(r30)
/* 802726A8 0026F608 C0 21 00 30 */ lfs f1, 0x30(r1)
/* 802726AC 0026F60C EC 64 18 28 */ fsubs f3, f4, f3
/* 802726B0 0026F610 C0 C3 00 60 */ lfs f6, 0x60(r3)
/* 802726B4 0026F614 EC 01 00 32 */ fmuls f0, f1, f0
/* 802726B8 0026F618 C0 BE 00 60 */ lfs f5, 0x60(r30)
/* 802726BC 0026F61C C0 21 00 2C */ lfs f1, 0x2c(r1)
/* 802726C0 0026F620 EC A6 28 28 */ fsubs f5, f6, f5
/* 802726C4 0026F624 C0 E1 00 34 */ lfs f7, 0x34(r1)
/* 802726C8 0026F628 EC 21 00 FA */ fmadds f1, f1, f3, f0
/* 802726CC 0026F62C C0 02 BC 14 */ lfs f0, lbl_805AD934@sda21(r2)
/* 802726D0 0026F630 EC 27 09 7A */ fmadds f1, f7, f5, f1
/* 802726D4 0026F634 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802726D8 0026F638 40 80 00 4C */ bge lbl_80272724
/* 802726DC 0026F63C EC BF 10 28 */ fsubs f5, f31, f2
/* 802726E0 0026F640 D0 81 00 08 */ stfs f4, 8(r1)
/* 802726E4 0026F644 EC 7E 30 28 */ fsubs f3, f30, f6
/* 802726E8 0026F648 7F C3 F3 78 */ mr r3, r30
/* 802726EC 0026F64C EC 1D 20 28 */ fsubs f0, f29, f4
/* 802726F0 0026F650 D0 41 00 0C */ stfs f2, 0xc(r1)
/* 802726F4 0026F654 FC 20 E0 90 */ fmr f1, f28
/* 802726F8 0026F658 D0 C1 00 10 */ stfs f6, 0x10(r1)
/* 802726FC 0026F65C 7F E4 FB 78 */ mr r4, r31
/* 80272700 0026F660 38 A1 00 14 */ addi r5, r1, 0x14
/* 80272704 0026F664 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80272708 0026F668 D0 A1 00 18 */ stfs f5, 0x18(r1)
/* 8027270C 0026F66C D0 61 00 1C */ stfs f3, 0x1c(r1)
/* 80272710 0026F670 48 00 20 A9 */ bl sub_802747b8
/* 80272714 0026F674 48 00 00 10 */ b lbl_80272724
lbl_80272718:
/* 80272718 0026F678 38 00 00 00 */ li r0, 0
/* 8027271C 0026F67C 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272720 0026F680 90 1E 03 2C */ stw r0, 0x32c(r30)
lbl_80272724:
/* 80272724 0026F684 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0
/* 80272728 0026F688 CB E1 00 90 */ lfd f31, 0x90(r1)
/* 8027272C 0026F68C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0
/* 80272730 0026F690 CB C1 00 80 */ lfd f30, 0x80(r1)
/* 80272734 0026F694 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0
/* 80272738 0026F698 CB A1 00 70 */ lfd f29, 0x70(r1)
/* 8027273C 0026F69C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0
/* 80272740 0026F6A0 CB 81 00 60 */ lfd f28, 0x60(r1)
/* 80272744 0026F6A4 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 80272748 0026F6A8 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 8027274C 0026F6AC 83 C1 00 58 */ lwz r30, 0x58(r1)
/* 80272750 0026F6B0 7C 08 03 A6 */ mtlr r0
/* 80272754 0026F6B4 38 21 00 A0 */ addi r1, r1, 0xa0
/* 80272758 0026F6B8 4E 80 00 20 */ blr
.global CoverAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
CoverAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 8027275C 0026F6BC 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 80272760 0026F6C0 7C 08 02 A6 */ mflr r0
/* 80272764 0026F6C4 90 01 00 94 */ stw r0, 0x94(r1)
/* 80272768 0026F6C8 DB E1 00 80 */ stfd f31, 0x80(r1)
/* 8027276C 0026F6CC F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0
/* 80272770 0026F6D0 DB C1 00 70 */ stfd f30, 0x70(r1)
/* 80272774 0026F6D4 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0
/* 80272778 0026F6D8 DB A1 00 60 */ stfd f29, 0x60(r1)
/* 8027277C 0026F6DC F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0
/* 80272780 0026F6E0 DB 81 00 50 */ stfd f28, 0x50(r1)
/* 80272784 0026F6E4 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0
/* 80272788 0026F6E8 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8027278C 0026F6EC 93 C1 00 48 */ stw r30, 0x48(r1)
/* 80272790 0026F6F0 FF 80 08 90 */ fmr f28, f1
/* 80272794 0026F6F4 2C 05 00 01 */ cmpwi r5, 1
/* 80272798 0026F6F8 7C 7E 1B 78 */ mr r30, r3
/* 8027279C 0026F6FC 7C 9F 23 78 */ mr r31, r4
/* 802727A0 0026F700 41 82 00 38 */ beq lbl_802727D8
/* 802727A4 0026F704 40 80 00 10 */ bge lbl_802727B4
/* 802727A8 0026F708 2C 05 00 00 */ cmpwi r5, 0
/* 802727AC 0026F70C 40 80 00 14 */ bge lbl_802727C0
/* 802727B0 0026F710 48 00 01 78 */ b lbl_80272928
lbl_802727B4:
/* 802727B4 0026F714 2C 05 00 03 */ cmpwi r5, 3
/* 802727B8 0026F718 40 80 01 70 */ bge lbl_80272928
/* 802727BC 0026F71C 48 00 01 3C */ b lbl_802728F8
lbl_802727C0:
/* 802727C0 0026F720 38 00 00 01 */ li r0, 1
/* 802727C4 0026F724 C0 02 BC 10 */ lfs f0, lbl_805AD930@sda21(r2)
/* 802727C8 0026F728 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 802727CC 0026F72C 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 802727D0 0026F730 D0 1E 10 84 */ stfs f0, 0x1084(r30)
/* 802727D4 0026F734 48 00 01 54 */ b lbl_80272928
lbl_802727D8:
/* 802727D8 0026F738 3C A0 80 3F */ lis r5, lbl_803EAD00@ha
/* 802727DC 0026F73C 38 80 00 00 */ li r4, 0
/* 802727E0 0026F740 38 E5 AD 00 */ addi r7, r5, lbl_803EAD00@l
/* 802727E4 0026F744 80 C7 00 00 */ lwz r6, 0(r7)
/* 802727E8 0026F748 80 A7 00 04 */ lwz r5, 4(r7)
/* 802727EC 0026F74C 80 07 00 08 */ lwz r0, 8(r7)
/* 802727F0 0026F750 90 C1 00 38 */ stw r6, 0x38(r1)
/* 802727F4 0026F754 90 A1 00 3C */ stw r5, 0x3c(r1)
/* 802727F8 0026F758 90 01 00 40 */ stw r0, 0x40(r1)
/* 802727FC 0026F75C 48 00 36 39 */ bl sub_80275e34
/* 80272800 0026F760 7C 67 1B 78 */ mr r7, r3
/* 80272804 0026F764 7F C3 F3 78 */ mr r3, r30
/* 80272808 0026F768 7F E4 FB 78 */ mr r4, r31
/* 8027280C 0026F76C 38 C1 00 38 */ addi r6, r1, 0x38
/* 80272810 0026F770 38 A0 00 07 */ li r5, 7
/* 80272814 0026F774 4B E0 9F A1 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272818 0026F778 C0 62 BC 18 */ lfs f3, lbl_805AD938@sda21(r2)
/* 8027281C 0026F77C 38 61 00 2C */ addi r3, r1, 0x2c
/* 80272820 0026F780 C0 5E 00 38 */ lfs f2, 0x38(r30)
/* 80272824 0026F784 38 81 00 20 */ addi r4, r1, 0x20
/* 80272828 0026F788 C0 3E 00 48 */ lfs f1, 0x48(r30)
/* 8027282C 0026F78C C0 1E 00 58 */ lfs f0, 0x58(r30)
/* 80272830 0026F790 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80272834 0026F794 C0 BE 00 40 */ lfs f5, 0x40(r30)
/* 80272838 0026F798 EC 23 00 72 */ fmuls f1, f3, f1
/* 8027283C 0026F79C C0 9E 00 50 */ lfs f4, 0x50(r30)
/* 80272840 0026F7A0 EC 03 00 32 */ fmuls f0, f3, f0
/* 80272844 0026F7A4 C0 7E 00 60 */ lfs f3, 0x60(r30)
/* 80272848 0026F7A8 EF A2 28 2A */ fadds f29, f2, f5
/* 8027284C 0026F7AC EF C1 20 2A */ fadds f30, f1, f4
/* 80272850 0026F7B0 EF E0 18 2A */ fadds f31, f0, f3
/* 80272854 0026F7B4 EC 5D 28 28 */ fsubs f2, f29, f5
/* 80272858 0026F7B8 EC 3E 20 28 */ fsubs f1, f30, f4
/* 8027285C 0026F7BC EC 1F 18 28 */ fsubs f0, f31, f3
/* 80272860 0026F7C0 D0 41 00 20 */ stfs f2, 0x20(r1)
/* 80272864 0026F7C4 D0 21 00 24 */ stfs f1, 0x24(r1)
/* 80272868 0026F7C8 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 8027286C 0026F7CC 48 0A 1F E5 */ bl AsNormalized__9CVector3fCFv
/* 80272870 0026F7D0 80 7F 08 4C */ lwz r3, 0x84c(r31)
/* 80272874 0026F7D4 C0 1E 00 50 */ lfs f0, 0x50(r30)
/* 80272878 0026F7D8 C0 43 00 50 */ lfs f2, 0x50(r3)
/* 8027287C 0026F7DC C0 83 00 40 */ lfs f4, 0x40(r3)
/* 80272880 0026F7E0 EC 02 00 28 */ fsubs f0, f2, f0
/* 80272884 0026F7E4 C0 7E 00 40 */ lfs f3, 0x40(r30)
/* 80272888 0026F7E8 C0 21 00 30 */ lfs f1, 0x30(r1)
/* 8027288C 0026F7EC EC 64 18 28 */ fsubs f3, f4, f3
/* 80272890 0026F7F0 C0 C3 00 60 */ lfs f6, 0x60(r3)
/* 80272894 0026F7F4 EC 01 00 32 */ fmuls f0, f1, f0
/* 80272898 0026F7F8 C0 BE 00 60 */ lfs f5, 0x60(r30)
/* 8027289C 0026F7FC C0 21 00 2C */ lfs f1, 0x2c(r1)
/* 802728A0 0026F800 EC A6 28 28 */ fsubs f5, f6, f5
/* 802728A4 0026F804 C0 E1 00 34 */ lfs f7, 0x34(r1)
/* 802728A8 0026F808 EC 21 00 FA */ fmadds f1, f1, f3, f0
/* 802728AC 0026F80C C0 02 BC 14 */ lfs f0, lbl_805AD934@sda21(r2)
/* 802728B0 0026F810 EC 27 09 7A */ fmadds f1, f7, f5, f1
/* 802728B4 0026F814 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802728B8 0026F818 40 80 00 70 */ bge lbl_80272928
/* 802728BC 0026F81C EC BE 10 28 */ fsubs f5, f30, f2
/* 802728C0 0026F820 D0 81 00 08 */ stfs f4, 8(r1)
/* 802728C4 0026F824 EC 7F 30 28 */ fsubs f3, f31, f6
/* 802728C8 0026F828 7F C3 F3 78 */ mr r3, r30
/* 802728CC 0026F82C EC 1D 20 28 */ fsubs f0, f29, f4
/* 802728D0 0026F830 D0 41 00 0C */ stfs f2, 0xc(r1)
/* 802728D4 0026F834 FC 20 E0 90 */ fmr f1, f28
/* 802728D8 0026F838 D0 C1 00 10 */ stfs f6, 0x10(r1)
/* 802728DC 0026F83C 7F E4 FB 78 */ mr r4, r31
/* 802728E0 0026F840 38 A1 00 14 */ addi r5, r1, 0x14
/* 802728E4 0026F844 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 802728E8 0026F848 D0 A1 00 18 */ stfs f5, 0x18(r1)
/* 802728EC 0026F84C D0 61 00 1C */ stfs f3, 0x1c(r1)
/* 802728F0 0026F850 48 00 1E C9 */ bl sub_802747b8
/* 802728F4 0026F854 48 00 00 34 */ b lbl_80272928
lbl_802728F8:
/* 802728F8 0026F858 38 A0 00 00 */ li r5, 0
/* 802728FC 0026F85C 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272900 0026F860 90 BE 03 2C */ stw r5, 0x32c(r30)
/* 80272904 0026F864 38 00 00 01 */ li r0, 1
/* 80272908 0026F868 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 8027290C 0026F86C 90 BE 09 2C */ stw r5, 0x92c(r30)
/* 80272910 0026F870 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 80272914 0026F874 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80272918 0026F878 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 8027291C 0026F87C 54 00 10 3A */ slwi r0, r0, 2
/* 80272920 0026F880 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272924 0026F884 4B EC 80 B5 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
lbl_80272928:
/* 80272928 0026F888 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0
/* 8027292C 0026F88C CB E1 00 80 */ lfd f31, 0x80(r1)
/* 80272930 0026F890 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0
/* 80272934 0026F894 CB C1 00 70 */ lfd f30, 0x70(r1)
/* 80272938 0026F898 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0
/* 8027293C 0026F89C CB A1 00 60 */ lfd f29, 0x60(r1)
/* 80272940 0026F8A0 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0
/* 80272944 0026F8A4 CB 81 00 50 */ lfd f28, 0x50(r1)
/* 80272948 0026F8A8 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8027294C 0026F8AC 80 01 00 94 */ lwz r0, 0x94(r1)
/* 80272950 0026F8B0 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 80272954 0026F8B4 7C 08 03 A6 */ mtlr r0
/* 80272958 0026F8B8 38 21 00 90 */ addi r1, r1, 0x90
/* 8027295C 0026F8BC 4E 80 00 20 */ blr
.global Cover__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Cover__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272960 0026F8C0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272964 0026F8C4 7C 08 02 A6 */ mflr r0
/* 80272968 0026F8C8 2C 05 00 01 */ cmpwi r5, 1
/* 8027296C 0026F8CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272970 0026F8D0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80272974 0026F8D4 7C 9F 23 78 */ mr r31, r4
/* 80272978 0026F8D8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8027297C 0026F8DC 7C 7E 1B 78 */ mr r30, r3
/* 80272980 0026F8E0 41 82 00 3C */ beq lbl_802729BC
/* 80272984 0026F8E4 40 80 00 10 */ bge lbl_80272994
/* 80272988 0026F8E8 2C 05 00 00 */ cmpwi r5, 0
/* 8027298C 0026F8EC 40 80 00 14 */ bge lbl_802729A0
/* 80272990 0026F8F0 48 00 00 B8 */ b lbl_80272A48
lbl_80272994:
/* 80272994 0026F8F4 2C 05 00 03 */ cmpwi r5, 3
/* 80272998 0026F8F8 40 80 00 B0 */ bge lbl_80272A48
/* 8027299C 0026F8FC 48 00 00 94 */ b lbl_80272A30
lbl_802729A0:
/* 802729A0 0026F900 38 60 00 01 */ li r3, 1
/* 802729A4 0026F904 38 00 00 0C */ li r0, 0xc
/* 802729A8 0026F908 90 7E 03 2C */ stw r3, 0x32c(r30)
/* 802729AC 0026F90C C0 02 BC 1C */ lfs f0, lbl_805AD93C@sda21(r2)
/* 802729B0 0026F910 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 802729B4 0026F914 D0 1E 10 84 */ stfs f0, 0x1084(r30)
/* 802729B8 0026F918 48 00 00 90 */ b lbl_80272A48
lbl_802729BC:
/* 802729BC 0026F91C 3C A0 80 3F */ lis r5, lbl_803EACF4@ha
/* 802729C0 0026F920 38 80 00 0D */ li r4, 0xd
/* 802729C4 0026F924 38 E5 AC F4 */ addi r7, r5, lbl_803EACF4@l
/* 802729C8 0026F928 80 C7 00 00 */ lwz r6, 0(r7)
/* 802729CC 0026F92C 80 A7 00 04 */ lwz r5, 4(r7)
/* 802729D0 0026F930 80 07 00 08 */ lwz r0, 8(r7)
/* 802729D4 0026F934 90 C1 00 08 */ stw r6, 8(r1)
/* 802729D8 0026F938 90 A1 00 0C */ stw r5, 0xc(r1)
/* 802729DC 0026F93C 90 01 00 10 */ stw r0, 0x10(r1)
/* 802729E0 0026F940 48 00 34 55 */ bl sub_80275e34
/* 802729E4 0026F944 7C 67 1B 78 */ mr r7, r3
/* 802729E8 0026F948 7F C3 F3 78 */ mr r3, r30
/* 802729EC 0026F94C 7F E4 FB 78 */ mr r4, r31
/* 802729F0 0026F950 38 C1 00 08 */ addi r6, r1, 8
/* 802729F4 0026F954 38 A0 00 12 */ li r5, 0x12
/* 802729F8 0026F958 4B E0 9D BD */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 802729FC 0026F95C 80 1E 03 2C */ lwz r0, 0x32c(r30)
/* 80272A00 0026F960 2C 00 00 02 */ cmpwi r0, 2
/* 80272A04 0026F964 40 82 00 44 */ bne lbl_80272A48
/* 80272A08 0026F968 38 00 00 01 */ li r0, 1
/* 80272A0C 0026F96C 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272A10 0026F970 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 80272A14 0026F974 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272A18 0026F978 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80272A1C 0026F97C 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 80272A20 0026F980 54 00 10 3A */ slwi r0, r0, 2
/* 80272A24 0026F984 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272A28 0026F988 4B EC 7F B1 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272A2C 0026F98C 48 00 00 1C */ b lbl_80272A48
lbl_80272A30:
/* 80272A30 0026F990 38 00 00 00 */ li r0, 0
/* 80272A34 0026F994 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 80272A38 0026F998 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272A3C 0026F99C 48 00 0E 99 */ bl sub_802738d4
/* 80272A40 0026F9A0 38 00 00 02 */ li r0, 2
/* 80272A44 0026F9A4 90 1E 12 54 */ stw r0, 0x1254(r30)
lbl_80272A48:
/* 80272A48 0026F9A8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80272A4C 0026F9AC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80272A50 0026F9B0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80272A54 0026F9B4 7C 08 03 A6 */ mtlr r0
/* 80272A58 0026F9B8 38 21 00 20 */ addi r1, r1, 0x20
/* 80272A5C 0026F9BC 4E 80 00 20 */ blr
.global SpecialAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
SpecialAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272A60 0026F9C0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272A64 0026F9C4 7C 08 02 A6 */ mflr r0
/* 80272A68 0026F9C8 2C 05 00 01 */ cmpwi r5, 1
/* 80272A6C 0026F9CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272A70 0026F9D0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80272A74 0026F9D4 7C 7F 1B 78 */ mr r31, r3
/* 80272A78 0026F9D8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80272A7C 0026F9DC 7C 9E 23 78 */ mr r30, r4
/* 80272A80 0026F9E0 41 82 00 98 */ beq lbl_80272B18
/* 80272A84 0026F9E4 40 80 00 10 */ bge lbl_80272A94
/* 80272A88 0026F9E8 2C 05 00 00 */ cmpwi r5, 0
/* 80272A8C 0026F9EC 40 80 00 14 */ bge lbl_80272AA0
/* 80272A90 0026F9F0 48 00 01 0C */ b lbl_80272B9C
lbl_80272A94:
/* 80272A94 0026F9F4 2C 05 00 03 */ cmpwi r5, 3
/* 80272A98 0026F9F8 40 80 01 04 */ bge lbl_80272B9C
/* 80272A9C 0026F9FC 48 00 00 F0 */ b lbl_80272B8C
lbl_80272AA0:
/* 80272AA0 0026FA00 38 00 00 01 */ li r0, 1
/* 80272AA4 0026FA04 90 1F 03 2C */ stw r0, 0x32c(r31)
/* 80272AA8 0026FA08 80 1F 12 54 */ lwz r0, 0x1254(r31)
/* 80272AAC 0026FA0C 2C 00 00 04 */ cmpwi r0, 4
/* 80272AB0 0026FA10 41 82 00 3C */ beq lbl_80272AEC
/* 80272AB4 0026FA14 40 80 00 14 */ bge lbl_80272AC8
/* 80272AB8 0026FA18 2C 00 00 02 */ cmpwi r0, 2
/* 80272ABC 0026FA1C 41 82 00 18 */ beq lbl_80272AD4
/* 80272AC0 0026FA20 40 80 00 20 */ bge lbl_80272AE0
/* 80272AC4 0026FA24 48 00 00 3C */ b lbl_80272B00
lbl_80272AC8:
/* 80272AC8 0026FA28 2C 00 00 06 */ cmpwi r0, 6
/* 80272ACC 0026FA2C 40 80 00 34 */ bge lbl_80272B00
/* 80272AD0 0026FA30 48 00 00 28 */ b lbl_80272AF8
lbl_80272AD4:
/* 80272AD4 0026FA34 38 00 00 02 */ li r0, 2
/* 80272AD8 0026FA38 90 1F 09 2C */ stw r0, 0x92c(r31)
/* 80272ADC 0026FA3C 48 00 00 24 */ b lbl_80272B00
lbl_80272AE0:
/* 80272AE0 0026FA40 38 00 00 03 */ li r0, 3
/* 80272AE4 0026FA44 90 1F 09 2C */ stw r0, 0x92c(r31)
/* 80272AE8 0026FA48 48 00 00 18 */ b lbl_80272B00
lbl_80272AEC:
/* 80272AEC 0026FA4C 38 00 00 04 */ li r0, 4
/* 80272AF0 0026FA50 90 1F 09 2C */ stw r0, 0x92c(r31)
/* 80272AF4 0026FA54 48 00 00 0C */ b lbl_80272B00
lbl_80272AF8:
/* 80272AF8 0026FA58 38 00 00 05 */ li r0, 5
/* 80272AFC 0026FA5C 90 1F 09 2C */ stw r0, 0x92c(r31)
lbl_80272B00:
/* 80272B00 0026FA60 C0 02 BC 1C */ lfs f0, lbl_805AD93C@sda21(r2)
/* 80272B04 0026FA64 7F E3 FB 78 */ mr r3, r31
/* 80272B08 0026FA68 7F C4 F3 78 */ mr r4, r30
/* 80272B0C 0026FA6C D0 1F 10 84 */ stfs f0, 0x1084(r31)
/* 80272B10 0026FA70 48 00 15 45 */ bl sub_80274054
/* 80272B14 0026FA74 48 00 00 88 */ b lbl_80272B9C
lbl_80272B18:
/* 80272B18 0026FA78 3C 80 80 3F */ lis r4, lbl_803EACE8@ha
/* 80272B1C 0026FA7C 38 C4 AC E8 */ addi r6, r4, lbl_803EACE8@l
/* 80272B20 0026FA80 80 A6 00 00 */ lwz r5, 0(r6)
/* 80272B24 0026FA84 80 86 00 04 */ lwz r4, 4(r6)
/* 80272B28 0026FA88 80 06 00 08 */ lwz r0, 8(r6)
/* 80272B2C 0026FA8C 90 A1 00 08 */ stw r5, 8(r1)
/* 80272B30 0026FA90 90 81 00 0C */ stw r4, 0xc(r1)
/* 80272B34 0026FA94 90 01 00 10 */ stw r0, 0x10(r1)
/* 80272B38 0026FA98 80 9F 12 54 */ lwz r4, 0x1254(r31)
/* 80272B3C 0026FA9C 48 00 32 F9 */ bl sub_80275e34
/* 80272B40 0026FAA0 7C 67 1B 78 */ mr r7, r3
/* 80272B44 0026FAA4 7F E3 FB 78 */ mr r3, r31
/* 80272B48 0026FAA8 7F C4 F3 78 */ mr r4, r30
/* 80272B4C 0026FAAC 38 C1 00 08 */ addi r6, r1, 8
/* 80272B50 0026FAB0 38 A0 00 12 */ li r5, 0x12
/* 80272B54 0026FAB4 4B E0 9C 61 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272B58 0026FAB8 80 1F 03 2C */ lwz r0, 0x32c(r31)
/* 80272B5C 0026FABC 2C 00 00 02 */ cmpwi r0, 2
/* 80272B60 0026FAC0 40 82 00 3C */ bne lbl_80272B9C
/* 80272B64 0026FAC4 38 00 00 01 */ li r0, 1
/* 80272B68 0026FAC8 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272B6C 0026FACC 90 1F 10 78 */ stw r0, 0x1078(r31)
/* 80272B70 0026FAD0 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272B74 0026FAD4 80 1F 10 78 */ lwz r0, 0x1078(r31)
/* 80272B78 0026FAD8 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 80272B7C 0026FADC 54 00 10 3A */ slwi r0, r0, 2
/* 80272B80 0026FAE0 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272B84 0026FAE4 4B EC 7E 55 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272B88 0026FAE8 48 00 00 14 */ b lbl_80272B9C
lbl_80272B8C:
/* 80272B8C 0026FAEC 38 00 00 00 */ li r0, 0
/* 80272B90 0026FAF0 90 1F 03 2C */ stw r0, 0x32c(r31)
/* 80272B94 0026FAF4 90 1F 09 2C */ stw r0, 0x92c(r31)
/* 80272B98 0026FAF8 48 00 0D 3D */ bl sub_802738d4
lbl_80272B9C:
/* 80272B9C 0026FAFC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80272BA0 0026FB00 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80272BA4 0026FB04 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80272BA8 0026FB08 7C 08 03 A6 */ mtlr r0
/* 80272BAC 0026FB0C 38 21 00 20 */ addi r1, r1, 0x20
/* 80272BB0 0026FB10 4E 80 00 20 */ blr
.global Attack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Attack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272BB4 0026FB14 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272BB8 0026FB18 7C 08 02 A6 */ mflr r0
/* 80272BBC 0026FB1C 2C 05 00 01 */ cmpwi r5, 1
/* 80272BC0 0026FB20 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272BC4 0026FB24 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80272BC8 0026FB28 7C 9F 23 78 */ mr r31, r4
/* 80272BCC 0026FB2C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80272BD0 0026FB30 7C 7E 1B 78 */ mr r30, r3
/* 80272BD4 0026FB34 41 82 00 3C */ beq lbl_80272C10
/* 80272BD8 0026FB38 40 80 00 10 */ bge lbl_80272BE8
/* 80272BDC 0026FB3C 2C 05 00 00 */ cmpwi r5, 0
/* 80272BE0 0026FB40 40 80 00 14 */ bge lbl_80272BF4
/* 80272BE4 0026FB44 48 00 00 88 */ b lbl_80272C6C
lbl_80272BE8:
/* 80272BE8 0026FB48 2C 05 00 03 */ cmpwi r5, 3
/* 80272BEC 0026FB4C 40 80 00 80 */ bge lbl_80272C6C
/* 80272BF0 0026FB50 48 00 00 64 */ b lbl_80272C54
lbl_80272BF4:
/* 80272BF4 0026FB54 38 60 00 01 */ li r3, 1
/* 80272BF8 0026FB58 38 00 00 06 */ li r0, 6
/* 80272BFC 0026FB5C 90 7E 03 2C */ stw r3, 0x32c(r30)
/* 80272C00 0026FB60 C0 02 BC 20 */ lfs f0, lbl_805AD940@sda21(r2)
/* 80272C04 0026FB64 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272C08 0026FB68 D0 1E 10 84 */ stfs f0, 0x1084(r30)
/* 80272C0C 0026FB6C 48 00 00 60 */ b lbl_80272C6C
lbl_80272C10:
/* 80272C10 0026FB70 3C A0 80 3F */ lis r5, lbl_803EACDC@ha
/* 80272C14 0026FB74 38 80 00 09 */ li r4, 9
/* 80272C18 0026FB78 38 E5 AC DC */ addi r7, r5, lbl_803EACDC@l
/* 80272C1C 0026FB7C 80 C7 00 00 */ lwz r6, 0(r7)
/* 80272C20 0026FB80 80 A7 00 04 */ lwz r5, 4(r7)
/* 80272C24 0026FB84 80 07 00 08 */ lwz r0, 8(r7)
/* 80272C28 0026FB88 90 C1 00 08 */ stw r6, 8(r1)
/* 80272C2C 0026FB8C 90 A1 00 0C */ stw r5, 0xc(r1)
/* 80272C30 0026FB90 90 01 00 10 */ stw r0, 0x10(r1)
/* 80272C34 0026FB94 48 00 32 01 */ bl sub_80275e34
/* 80272C38 0026FB98 7C 67 1B 78 */ mr r7, r3
/* 80272C3C 0026FB9C 7F C3 F3 78 */ mr r3, r30
/* 80272C40 0026FBA0 7F E4 FB 78 */ mr r4, r31
/* 80272C44 0026FBA4 38 C1 00 08 */ addi r6, r1, 8
/* 80272C48 0026FBA8 38 A0 00 07 */ li r5, 7
/* 80272C4C 0026FBAC 4B E0 9B 69 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272C50 0026FBB0 48 00 00 1C */ b lbl_80272C6C
lbl_80272C54:
/* 80272C54 0026FBB4 38 00 00 00 */ li r0, 0
/* 80272C58 0026FBB8 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 80272C5C 0026FBBC 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272C60 0026FBC0 48 00 0C 75 */ bl sub_802738d4
/* 80272C64 0026FBC4 38 00 00 02 */ li r0, 2
/* 80272C68 0026FBC8 90 1E 12 54 */ stw r0, 0x1254(r30)
lbl_80272C6C:
/* 80272C6C 0026FBCC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80272C70 0026FBD0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80272C74 0026FBD4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80272C78 0026FBD8 7C 08 03 A6 */ mtlr r0
/* 80272C7C 0026FBDC 38 21 00 20 */ addi r1, r1, 0x20
/* 80272C80 0026FBE0 4E 80 00 20 */ blr
.global ProjectileAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
ProjectileAttack__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272C84 0026FBE4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272C88 0026FBE8 7C 08 02 A6 */ mflr r0
/* 80272C8C 0026FBEC 2C 05 00 01 */ cmpwi r5, 1
/* 80272C90 0026FBF0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272C94 0026FBF4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80272C98 0026FBF8 7C 9F 23 78 */ mr r31, r4
/* 80272C9C 0026FBFC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80272CA0 0026FC00 7C 7E 1B 78 */ mr r30, r3
/* 80272CA4 0026FC04 41 82 00 3C */ beq lbl_80272CE0
/* 80272CA8 0026FC08 40 80 00 10 */ bge lbl_80272CB8
/* 80272CAC 0026FC0C 2C 05 00 00 */ cmpwi r5, 0
/* 80272CB0 0026FC10 40 80 00 14 */ bge lbl_80272CC4
/* 80272CB4 0026FC14 48 00 00 E8 */ b lbl_80272D9C
lbl_80272CB8:
/* 80272CB8 0026FC18 2C 05 00 03 */ cmpwi r5, 3
/* 80272CBC 0026FC1C 40 80 00 E0 */ bge lbl_80272D9C
/* 80272CC0 0026FC20 48 00 00 94 */ b lbl_80272D54
lbl_80272CC4:
/* 80272CC4 0026FC24 38 60 00 01 */ li r3, 1
/* 80272CC8 0026FC28 38 00 00 07 */ li r0, 7
/* 80272CCC 0026FC2C 90 7E 03 2C */ stw r3, 0x32c(r30)
/* 80272CD0 0026FC30 C0 02 BC 24 */ lfs f0, lbl_805AD944@sda21(r2)
/* 80272CD4 0026FC34 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272CD8 0026FC38 D0 1E 10 84 */ stfs f0, 0x1084(r30)
/* 80272CDC 0026FC3C 48 00 00 C0 */ b lbl_80272D9C
lbl_80272CE0:
/* 80272CE0 0026FC40 3C 80 80 3F */ lis r4, lbl_803EACD0@ha
/* 80272CE4 0026FC44 38 C4 AC D0 */ addi r6, r4, lbl_803EACD0@l
/* 80272CE8 0026FC48 80 A6 00 00 */ lwz r5, 0(r6)
/* 80272CEC 0026FC4C 80 86 00 04 */ lwz r4, 4(r6)
/* 80272CF0 0026FC50 80 06 00 08 */ lwz r0, 8(r6)
/* 80272CF4 0026FC54 90 A1 00 08 */ stw r5, 8(r1)
/* 80272CF8 0026FC58 90 81 00 0C */ stw r4, 0xc(r1)
/* 80272CFC 0026FC5C 90 01 00 10 */ stw r0, 0x10(r1)
/* 80272D00 0026FC60 80 9E 12 54 */ lwz r4, 0x1254(r30)
/* 80272D04 0026FC64 48 00 31 31 */ bl sub_80275e34
/* 80272D08 0026FC68 7C 67 1B 78 */ mr r7, r3
/* 80272D0C 0026FC6C 7F C3 F3 78 */ mr r3, r30
/* 80272D10 0026FC70 7F E4 FB 78 */ mr r4, r31
/* 80272D14 0026FC74 38 C1 00 08 */ addi r6, r1, 8
/* 80272D18 0026FC78 38 A0 00 12 */ li r5, 0x12
/* 80272D1C 0026FC7C 4B E0 9A 99 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272D20 0026FC80 80 1E 03 2C */ lwz r0, 0x32c(r30)
/* 80272D24 0026FC84 2C 00 00 02 */ cmpwi r0, 2
/* 80272D28 0026FC88 40 82 00 74 */ bne lbl_80272D9C
/* 80272D2C 0026FC8C 38 00 00 01 */ li r0, 1
/* 80272D30 0026FC90 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 80272D34 0026FC94 90 1E 10 78 */ stw r0, 0x1078(r30)
/* 80272D38 0026FC98 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80272D3C 0026FC9C 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80272D40 0026FCA0 80 7E 04 50 */ lwz r3, 0x450(r30)
/* 80272D44 0026FCA4 54 00 10 3A */ slwi r0, r0, 2
/* 80272D48 0026FCA8 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272D4C 0026FCAC 4B EC 7C 8D */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272D50 0026FCB0 48 00 00 4C */ b lbl_80272D9C
lbl_80272D54:
/* 80272D54 0026FCB4 38 00 00 00 */ li r0, 0
/* 80272D58 0026FCB8 90 1E 03 2C */ stw r0, 0x32c(r30)
/* 80272D5C 0026FCBC 90 1E 09 2C */ stw r0, 0x92c(r30)
/* 80272D60 0026FCC0 48 00 0B 75 */ bl sub_802738d4
/* 80272D64 0026FCC4 C0 02 BC 28 */ lfs f0, lbl_805AD948@sda21(r2)
/* 80272D68 0026FCC8 38 80 00 00 */ li r4, 0
/* 80272D6C 0026FCCC D0 1E 10 88 */ stfs f0, 0x1088(r30)
/* 80272D70 0026FCD0 80 7E 0C 54 */ lwz r3, 0xc54(r30)
/* 80272D74 0026FCD4 81 83 00 00 */ lwz r12, 0(r3)
/* 80272D78 0026FCD8 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80272D7C 0026FCDC 7D 89 03 A6 */ mtctr r12
/* 80272D80 0026FCE0 4E 80 04 21 */ bctrl
/* 80272D84 0026FCE4 7F C3 F3 78 */ mr r3, r30
/* 80272D88 0026FCE8 7F E4 FB 78 */ mr r4, r31
/* 80272D8C 0026FCEC 38 A0 00 00 */ li r5, 0
/* 80272D90 0026FCF0 48 00 45 F1 */ bl sub_80277380
/* 80272D94 0026FCF4 38 00 00 02 */ li r0, 2
/* 80272D98 0026FCF8 90 1E 12 54 */ stw r0, 0x1254(r30)
lbl_80272D9C:
/* 80272D9C 0026FCFC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80272DA0 0026FD00 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80272DA4 0026FD04 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80272DA8 0026FD08 7C 08 03 A6 */ mtlr r0
/* 80272DAC 0026FD0C 38 21 00 20 */ addi r1, r1, 0x20
/* 80272DB0 0026FD10 4E 80 00 20 */ blr
.global Taunt__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Taunt__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272DB4 0026FD14 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272DB8 0026FD18 7C 08 02 A6 */ mflr r0
/* 80272DBC 0026FD1C 2C 05 00 01 */ cmpwi r5, 1
/* 80272DC0 0026FD20 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272DC4 0026FD24 41 82 00 2C */ beq lbl_80272DF0
/* 80272DC8 0026FD28 40 80 00 10 */ bge lbl_80272DD8
/* 80272DCC 0026FD2C 2C 05 00 00 */ cmpwi r5, 0
/* 80272DD0 0026FD30 40 80 00 14 */ bge lbl_80272DE4
/* 80272DD4 0026FD34 48 00 00 68 */ b lbl_80272E3C
lbl_80272DD8:
/* 80272DD8 0026FD38 2C 05 00 03 */ cmpwi r5, 3
/* 80272DDC 0026FD3C 40 80 00 60 */ bge lbl_80272E3C
/* 80272DE0 0026FD40 48 00 00 54 */ b lbl_80272E34
lbl_80272DE4:
/* 80272DE4 0026FD44 38 00 00 01 */ li r0, 1
/* 80272DE8 0026FD48 90 03 03 2C */ stw r0, 0x32c(r3)
/* 80272DEC 0026FD4C 48 00 00 50 */ b lbl_80272E3C
lbl_80272DF0:
/* 80272DF0 0026FD50 3C C0 80 3F */ lis r6, lbl_803EACC4@ha
/* 80272DF4 0026FD54 3C A0 80 3D */ lis r5, lbl_803D5478@ha
/* 80272DF8 0026FD58 39 46 AC C4 */ addi r10, r6, lbl_803EACC4@l
/* 80272DFC 0026FD5C 38 C1 00 08 */ addi r6, r1, 8
/* 80272E00 0026FD60 81 2A 00 00 */ lwz r9, 0(r10)
/* 80272E04 0026FD64 38 E5 54 78 */ addi r7, r5, lbl_803D5478@l
/* 80272E08 0026FD68 81 0A 00 04 */ lwz r8, 4(r10)
/* 80272E0C 0026FD6C 38 A0 00 10 */ li r5, 0x10
/* 80272E10 0026FD70 80 0A 00 08 */ lwz r0, 8(r10)
/* 80272E14 0026FD74 91 21 00 08 */ stw r9, 8(r1)
/* 80272E18 0026FD78 91 01 00 0C */ stw r8, 0xc(r1)
/* 80272E1C 0026FD7C 90 01 00 10 */ stw r0, 0x10(r1)
/* 80272E20 0026FD80 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 80272E24 0026FD84 54 00 10 3A */ slwi r0, r0, 2
/* 80272E28 0026FD88 7C E7 00 2E */ lwzx r7, r7, r0
/* 80272E2C 0026FD8C 4B E0 99 89 */ bl TryCommand__10CPatternedFR13CStateManageriM10CPatternedFR13CStateManageri_vi
/* 80272E30 0026FD90 48 00 00 0C */ b lbl_80272E3C
lbl_80272E34:
/* 80272E34 0026FD94 38 00 00 00 */ li r0, 0
/* 80272E38 0026FD98 90 03 03 2C */ stw r0, 0x32c(r3)
lbl_80272E3C:
/* 80272E3C 0026FD9C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80272E40 0026FDA0 7C 08 03 A6 */ mtlr r0
/* 80272E44 0026FDA4 38 21 00 20 */ addi r1, r1, 0x20
/* 80272E48 0026FDA8 4E 80 00 20 */ blr
.global SelectTarget__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
SelectTarget__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272E4C 0026FDAC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272E50 0026FDB0 7C 08 02 A6 */ mflr r0
/* 80272E54 0026FDB4 2C 05 00 01 */ cmpwi r5, 1
/* 80272E58 0026FDB8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272E5C 0026FDBC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80272E60 0026FDC0 7C 7F 1B 78 */ mr r31, r3
/* 80272E64 0026FDC4 41 82 00 4C */ beq lbl_80272EB0
/* 80272E68 0026FDC8 40 80 00 10 */ bge lbl_80272E78
/* 80272E6C 0026FDCC 2C 05 00 00 */ cmpwi r5, 0
/* 80272E70 0026FDD0 40 80 00 14 */ bge lbl_80272E84
/* 80272E74 0026FDD4 48 00 00 58 */ b lbl_80272ECC
lbl_80272E78:
/* 80272E78 0026FDD8 2C 05 00 03 */ cmpwi r5, 3
/* 80272E7C 0026FDDC 40 80 00 50 */ bge lbl_80272ECC
/* 80272E80 0026FDE0 48 00 00 38 */ b lbl_80272EB8
lbl_80272E84:
/* 80272E84 0026FDE4 C0 3F 09 24 */ lfs f1, 0x924(r31)
/* 80272E88 0026FDE8 38 81 00 08 */ addi r4, r1, 8
/* 80272E8C 0026FDEC C0 02 BB F8 */ lfs f0, lbl_805AD918@sda21(r2)
/* 80272E90 0026FDF0 38 6D 98 D8 */ addi r3, r13, lbl_805A8498@sda21
/* 80272E94 0026FDF4 38 AD 98 DC */ addi r5, r13, lbl_805A849C@sda21
/* 80272E98 0026FDF8 EC 01 00 32 */ fmuls f0, f1, f0
/* 80272E9C 0026FDFC D0 01 00 08 */ stfs f0, 8(r1)
/* 80272EA0 0026FE00 4B D9 94 15 */ bl "Clamp<f>__5CMathFRCfRCfRCf"
/* 80272EA4 0026FE04 C0 03 00 00 */ lfs f0, 0(r3)
/* 80272EA8 0026FE08 D0 1F 03 40 */ stfs f0, 0x340(r31)
/* 80272EAC 0026FE0C 48 00 00 20 */ b lbl_80272ECC
lbl_80272EB0:
/* 80272EB0 0026FE10 48 00 29 51 */ bl sub_80275800
/* 80272EB4 0026FE14 48 00 00 18 */ b lbl_80272ECC
lbl_80272EB8:
/* 80272EB8 0026FE18 48 00 0A 1D */ bl sub_802738d4
/* 80272EBC 0026FE1C 88 1F 10 54 */ lbz r0, 0x1054(r31)
/* 80272EC0 0026FE20 38 60 00 00 */ li r3, 0
/* 80272EC4 0026FE24 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b
/* 80272EC8 0026FE28 98 1F 10 54 */ stb r0, 0x1054(r31)
lbl_80272ECC:
/* 80272ECC 0026FE2C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80272ED0 0026FE30 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80272ED4 0026FE34 7C 08 03 A6 */ mtlr r0
/* 80272ED8 0026FE38 38 21 00 20 */ addi r1, r1, 0x20
/* 80272EDC 0026FE3C 4E 80 00 20 */ blr
.global Active__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
Active__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272EE0 0026FE40 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80272EE4 0026FE44 7C 08 02 A6 */ mflr r0
/* 80272EE8 0026FE48 2C 05 00 01 */ cmpwi r5, 1
/* 80272EEC 0026FE4C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80272EF0 0026FE50 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80272EF4 0026FE54 7C 7F 1B 78 */ mr r31, r3
/* 80272EF8 0026FE58 41 82 00 3C */ beq lbl_80272F34
/* 80272EFC 0026FE5C 40 80 00 10 */ bge lbl_80272F0C
/* 80272F00 0026FE60 2C 05 00 00 */ cmpwi r5, 0
/* 80272F04 0026FE64 40 80 00 14 */ bge lbl_80272F18
/* 80272F08 0026FE68 48 00 00 C0 */ b lbl_80272FC8
lbl_80272F0C:
/* 80272F0C 0026FE6C 2C 05 00 03 */ cmpwi r5, 3
/* 80272F10 0026FE70 40 80 00 B8 */ bge lbl_80272FC8
/* 80272F14 0026FE74 48 00 00 AC */ b lbl_80272FC0
lbl_80272F18:
/* 80272F18 0026FE78 C0 22 BC 2C */ lfs f1, lbl_805AD94C@sda21(r2)
/* 80272F1C 0026FE7C C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80272F20 0026FE80 D0 3F 10 7C */ stfs f1, 0x107c(r31)
/* 80272F24 0026FE84 C0 3F 10 88 */ lfs f1, 0x1088(r31)
/* 80272F28 0026FE88 D0 3F 10 84 */ stfs f1, 0x1084(r31)
/* 80272F2C 0026FE8C D0 1F 03 B4 */ stfs f0, 0x3b4(r31)
/* 80272F30 0026FE90 48 00 00 98 */ b lbl_80272FC8
lbl_80272F34:
/* 80272F34 0026FE94 80 1F 05 70 */ lwz r0, 0x570(r31)
/* 80272F38 0026FE98 2C 00 00 00 */ cmpwi r0, 0
/* 80272F3C 0026FE9C 40 82 00 10 */ bne lbl_80272F4C
/* 80272F40 0026FEA0 80 1F 10 78 */ lwz r0, 0x1078(r31)
/* 80272F44 0026FEA4 2C 00 00 01 */ cmpwi r0, 1
/* 80272F48 0026FEA8 41 82 00 80 */ beq lbl_80272FC8
lbl_80272F4C:
/* 80272F4C 0026FEAC C0 1F 10 7C */ lfs f0, 0x107c(r31)
/* 80272F50 0026FEB0 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80272F54 0026FEB4 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80272F58 0026FEB8 40 80 00 70 */ bge lbl_80272FC8
/* 80272F5C 0026FEBC C0 1F 10 84 */ lfs f0, 0x1084(r31)
/* 80272F60 0026FEC0 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80272F64 0026FEC4 40 80 00 64 */ bge lbl_80272FC8
/* 80272F68 0026FEC8 C0 3F 10 80 */ lfs f1, 0x1080(r31)
/* 80272F6C 0026FECC C0 02 BC 34 */ lfs f0, lbl_805AD954@sda21(r2)
/* 80272F70 0026FED0 D0 3F 10 7C */ stfs f1, 0x107c(r31)
/* 80272F74 0026FED4 D0 1F 10 84 */ stfs f0, 0x1084(r31)
/* 80272F78 0026FED8 80 64 09 00 */ lwz r3, 0x900(r4)
/* 80272F7C 0026FEDC 48 09 F5 A5 */ bl Next__9CRandom16Fv
/* 80272F80 0026FEE0 3C A0 55 55 */ lis r5, 0x55555556@ha
/* 80272F84 0026FEE4 3C 80 80 3D */ lis r4, lbl_803D546C@ha
/* 80272F88 0026FEE8 38 05 55 56 */ addi r0, r5, 0x55555556@l
/* 80272F8C 0026FEEC 7C A0 18 96 */ mulhw r5, r0, r3
/* 80272F90 0026FEF0 38 84 54 6C */ addi r4, r4, lbl_803D546C@l
/* 80272F94 0026FEF4 54 A0 0F FE */ srwi r0, r5, 0x1f
/* 80272F98 0026FEF8 7C 05 02 14 */ add r0, r5, r0
/* 80272F9C 0026FEFC 1C 00 00 03 */ mulli r0, r0, 3
/* 80272FA0 0026FF00 7C 00 18 50 */ subf r0, r0, r3
/* 80272FA4 0026FF04 90 1F 10 78 */ stw r0, 0x1078(r31)
/* 80272FA8 0026FF08 80 1F 10 78 */ lwz r0, 0x1078(r31)
/* 80272FAC 0026FF0C 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 80272FB0 0026FF10 54 00 10 3A */ slwi r0, r0, 2
/* 80272FB4 0026FF14 7C 84 00 2E */ lwzx r4, r4, r0
/* 80272FB8 0026FF18 4B EC 7A 21 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80272FBC 0026FF1C 48 00 00 0C */ b lbl_80272FC8
lbl_80272FC0:
/* 80272FC0 0026FF20 C0 02 BC 20 */ lfs f0, lbl_805AD940@sda21(r2)
/* 80272FC4 0026FF24 D0 1F 10 88 */ stfs f0, 0x1088(r31)
lbl_80272FC8:
/* 80272FC8 0026FF28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80272FCC 0026FF2C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80272FD0 0026FF30 7C 08 03 A6 */ mtlr r0
/* 80272FD4 0026FF34 38 21 00 10 */ addi r1, r1, 0x10
/* 80272FD8 0026FF38 4E 80 00 20 */ blr
.global InActive__16CMetroidPrimeExoFR13CStateManager9EStateMsgf
InActive__16CMetroidPrimeExoFR13CStateManager9EStateMsgf:
/* 80272FDC 0026FF3C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80272FE0 0026FF40 7C 08 02 A6 */ mflr r0
/* 80272FE4 0026FF44 2C 05 00 01 */ cmpwi r5, 1
/* 80272FE8 0026FF48 90 01 00 24 */ stw r0, 0x24(r1)
/* 80272FEC 0026FF4C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80272FF0 0026FF50 7C 7F 1B 78 */ mr r31, r3
/* 80272FF4 0026FF54 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80272FF8 0026FF58 7C 9E 23 78 */ mr r30, r4
/* 80272FFC 0026FF5C 41 82 00 94 */ beq lbl_80273090
/* 80273000 0026FF60 40 80 00 10 */ bge lbl_80273010
/* 80273004 0026FF64 2C 05 00 00 */ cmpwi r5, 0
/* 80273008 0026FF68 40 80 00 14 */ bge lbl_8027301C
/* 8027300C 0026FF6C 48 00 01 60 */ b lbl_8027316C
lbl_80273010:
/* 80273010 0026FF70 2C 05 00 03 */ cmpwi r5, 3
/* 80273014 0026FF74 40 80 01 58 */ bge lbl_8027316C
/* 80273018 0026FF78 48 00 00 EC */ b lbl_80273104
lbl_8027301C:
/* 8027301C 0026FF7C C0 3F 10 80 */ lfs f1, 0x1080(r31)
/* 80273020 0026FF80 38 E0 00 00 */ li r7, 0
/* 80273024 0026FF84 C0 02 BC 20 */ lfs f0, lbl_805AD940@sda21(r2)
/* 80273028 0026FF88 38 C0 00 01 */ li r6, 1
/* 8027302C 0026FF8C D0 3F 10 84 */ stfs f1, 0x1084(r31)
/* 80273030 0026FF90 38 A0 00 00 */ li r5, 0
/* 80273034 0026FF94 D0 1F 10 84 */ stfs f0, 0x1084(r31)
/* 80273038 0026FF98 88 1F 04 00 */ lbz r0, 0x400(r31)
/* 8027303C 0026FF9C 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18
/* 80273040 0026FFA0 98 1F 04 00 */ stb r0, 0x400(r31)
/* 80273044 0026FFA4 88 1F 09 14 */ lbz r0, 0x914(r31)
/* 80273048 0026FFA8 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18
/* 8027304C 0026FFAC 98 1F 09 14 */ stb r0, 0x914(r31)
/* 80273050 0026FFB0 48 00 57 B1 */ bl sub_80278800
/* 80273054 0026FFB4 38 00 00 01 */ li r0, 1
/* 80273058 0026FFB8 3C 60 80 3D */ lis r3, lbl_803D546C@ha
/* 8027305C 0026FFBC 90 1F 10 78 */ stw r0, 0x1078(r31)
/* 80273060 0026FFC0 38 83 54 6C */ addi r4, r3, lbl_803D546C@l
/* 80273064 0026FFC4 80 1F 10 78 */ lwz r0, 0x1078(r31)
/* 80273068 0026FFC8 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 8027306C 0026FFCC 54 00 10 3A */ slwi r0, r0, 2
/* 80273070 0026FFD0 7C 84 00 2E */ lwzx r4, r4, r0
/* 80273074 0026FFD4 4B EC 79 65 */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80273078 0026FFD8 7F E3 FB 78 */ mr r3, r31
/* 8027307C 0026FFDC 7F C4 F3 78 */ mr r4, r30
/* 80273080 0026FFE0 48 00 58 49 */ bl sub_802788c8
/* 80273084 0026FFE4 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80273088 0026FFE8 D0 1F 03 B4 */ stfs f0, 0x3b4(r31)
/* 8027308C 0026FFEC 48 00 00 E0 */ b lbl_8027316C
lbl_80273090:
/* 80273090 0026FFF0 C0 1F 10 7C */ lfs f0, 0x107c(r31)
/* 80273094 0026FFF4 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80273098 0026FFF8 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 8027309C 0026FFFC 40 80 00 D0 */ bge lbl_8027316C
/* 802730A0 00270000 C0 1F 10 84 */ lfs f0, 0x1084(r31)
/* 802730A4 00270004 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 802730A8 00270008 40 80 00 C4 */ bge lbl_8027316C
/* 802730AC 0027000C C0 3F 10 80 */ lfs f1, 0x1080(r31)
/* 802730B0 00270010 C0 02 BC 34 */ lfs f0, lbl_805AD954@sda21(r2)
/* 802730B4 00270014 D0 3F 10 7C */ stfs f1, 0x107c(r31)
/* 802730B8 00270018 D0 1F 10 84 */ stfs f0, 0x1084(r31)
/* 802730BC 0027001C 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 802730C0 00270020 48 09 F4 61 */ bl Next__9CRandom16Fv
/* 802730C4 00270024 3C A0 55 55 */ lis r5, 0x55555556@ha
/* 802730C8 00270028 3C 80 80 3D */ lis r4, lbl_803D546C@ha
/* 802730CC 0027002C 38 05 55 56 */ addi r0, r5, 0x55555556@l
/* 802730D0 00270030 7C A0 18 96 */ mulhw r5, r0, r3
/* 802730D4 00270034 38 84 54 6C */ addi r4, r4, lbl_803D546C@l
/* 802730D8 00270038 54 A0 0F FE */ srwi r0, r5, 0x1f
/* 802730DC 0027003C 7C 05 02 14 */ add r0, r5, r0
/* 802730E0 00270040 1C 00 00 03 */ mulli r0, r0, 3
/* 802730E4 00270044 7C 00 18 50 */ subf r0, r0, r3
/* 802730E8 00270048 90 1F 10 78 */ stw r0, 0x1078(r31)
/* 802730EC 0027004C 80 1F 10 78 */ lwz r0, 0x1078(r31)
/* 802730F0 00270050 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 802730F4 00270054 54 00 10 3A */ slwi r0, r0, 2
/* 802730F8 00270058 7C 84 00 2E */ lwzx r4, r4, r0
/* 802730FC 0027005C 4B EC 78 DD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 80273100 00270060 48 00 00 6C */ b lbl_8027316C
lbl_80273104:
/* 80273104 00270064 88 1F 09 14 */ lbz r0, 0x914(r31)
/* 80273108 00270068 38 C0 00 00 */ li r6, 0
/* 8027310C 0027006C 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18
/* 80273110 00270070 38 A0 00 01 */ li r5, 1
/* 80273114 00270074 98 1F 09 14 */ stb r0, 0x914(r31)
/* 80273118 00270078 88 1F 14 44 */ lbz r0, 0x1444(r31)
/* 8027311C 0027007C 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18
/* 80273120 00270080 98 1F 14 44 */ stb r0, 0x1444(r31)
/* 80273124 00270084 48 00 56 DD */ bl sub_80278800
/* 80273128 00270088 7F E3 FB 78 */ mr r3, r31
/* 8027312C 0027008C 7F C4 F3 78 */ mr r4, r30
/* 80273130 00270090 48 00 07 A5 */ bl sub_802738d4
/* 80273134 00270094 C0 1F 10 80 */ lfs f0, 0x1080(r31)
/* 80273138 00270098 7F C3 F3 78 */ mr r3, r30
/* 8027313C 0027009C C0 22 BC 38 */ lfs f1, lbl_805AD958@sda21(r2)
/* 80273140 002700A0 38 81 00 0C */ addi r4, r1, 0xc
/* 80273144 002700A4 D0 1F 10 84 */ stfs f0, 0x1084(r31)
/* 80273148 002700A8 38 A0 00 5B */ li r5, 0x5b
/* 8027314C 002700AC C0 1F 10 84 */ lfs f0, 0x1084(r31)
/* 80273150 002700B0 D0 1F 10 88 */ stfs f0, 0x1088(r31)
/* 80273154 002700B4 A0 1F 00 08 */ lhz r0, 8(r31)
/* 80273158 002700B8 B0 01 00 08 */ sth r0, 8(r1)
/* 8027315C 002700BC B0 01 00 0C */ sth r0, 0xc(r1)
/* 80273160 002700C0 4B DD 0D E5 */ bl SetBossParams__13CStateManagerF9TUniqueIdfUi
/* 80273164 002700C4 80 1F 08 D4 */ lwz r0, 0x8d4(r31)
/* 80273168 002700C8 90 1F 08 D0 */ stw r0, 0x8d0(r31)
lbl_8027316C:
/* 8027316C 002700CC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80273170 002700D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80273174 002700D4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80273178 002700D8 7C 08 03 A6 */ mtlr r0
/* 8027317C 002700DC 38 21 00 20 */ addi r1, r1, 0x20
/* 80273180 002700E0 4E 80 00 20 */ blr
.global Stuck__16CMetroidPrimeExoFR13CStateManagerf
Stuck__16CMetroidPrimeExoFR13CStateManagerf:
/* 80273184 002700E4 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80273188 002700E8 7C 08 02 A6 */ mflr r0
/* 8027318C 002700EC 90 01 00 74 */ stw r0, 0x74(r1)
/* 80273190 002700F0 DB E1 00 60 */ stfd f31, 0x60(r1)
/* 80273194 002700F4 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0
/* 80273198 002700F8 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 8027319C 002700FC 93 C1 00 58 */ stw r30, 0x58(r1)
/* 802731A0 00270100 7C 9F 23 78 */ mr r31, r4
/* 802731A4 00270104 7C 7E 1B 78 */ mr r30, r3
/* 802731A8 00270108 80 84 08 4C */ lwz r4, 0x84c(r4)
/* 802731AC 0027010C 38 61 00 34 */ addi r3, r1, 0x34
/* 802731B0 00270110 80 BE 00 64 */ lwz r5, 0x64(r30)
/* 802731B4 00270114 C0 24 00 50 */ lfs f1, 0x50(r4)
/* 802731B8 00270118 C0 1E 00 50 */ lfs f0, 0x50(r30)
/* 802731BC 0027011C C0 FE 00 58 */ lfs f7, 0x58(r30)
/* 802731C0 00270120 C0 DE 00 48 */ lfs f6, 0x48(r30)
/* 802731C4 00270124 EC 21 00 28 */ fsubs f1, f1, f0
/* 802731C8 00270128 C0 5E 00 38 */ lfs f2, 0x38(r30)
/* 802731CC 0027012C C0 A4 00 40 */ lfs f5, 0x40(r4)
/* 802731D0 00270130 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 802731D4 00270134 EC 26 00 72 */ fmuls f1, f6, f1
/* 802731D8 00270138 C0 84 00 60 */ lfs f4, 0x60(r4)
/* 802731DC 0027013C C0 7E 00 60 */ lfs f3, 0x60(r30)
/* 802731E0 00270140 EC A5 00 28 */ fsubs f5, f5, f0
/* 802731E4 00270144 C0 05 00 00 */ lfs f0, 0(r5)
/* 802731E8 00270148 EC 64 18 28 */ fsubs f3, f4, f3
/* 802731EC 0027014C D0 41 00 40 */ stfs f2, 0x40(r1)
/* 802731F0 00270150 EC 22 09 7A */ fmadds f1, f2, f5, f1
/* 802731F4 00270154 D0 01 00 34 */ stfs f0, 0x34(r1)
/* 802731F8 00270158 C0 05 00 04 */ lfs f0, 4(r5)
/* 802731FC 0027015C EF E7 08 FA */ fmadds f31, f7, f3, f1
/* 80273200 00270160 D0 C1 00 44 */ stfs f6, 0x44(r1)
/* 80273204 00270164 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 80273208 00270168 C0 05 00 08 */ lfs f0, 8(r5)
/* 8027320C 0027016C D0 E1 00 48 */ stfs f7, 0x48(r1)
/* 80273210 00270170 D0 01 00 3C */ stfs f0, 0x3c(r1)
/* 80273214 00270174 48 0A 16 A5 */ bl Magnitude__9CVector3fCFv
/* 80273218 00270178 C0 42 BC 3C */ lfs f2, lbl_805AD95C@sda21(r2)
/* 8027321C 0027017C C0 02 BC 40 */ lfs f0, lbl_805AD960@sda21(r2)
/* 80273220 00270180 EC 22 00 72 */ fmuls f1, f2, f1
/* 80273224 00270184 EC 00 00 72 */ fmuls f0, f0, f1
/* 80273228 00270188 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 8027322C 0027018C 40 80 00 0C */ bge lbl_80273238
/* 80273230 00270190 38 60 00 00 */ li r3, 0
/* 80273234 00270194 48 00 00 D8 */ b lbl_8027330C
lbl_80273238:
/* 80273238 00270198 7F C4 F3 78 */ mr r4, r30
/* 8027323C 0027019C 7F E5 FB 78 */ mr r5, r31
/* 80273240 002701A0 38 61 00 0C */ addi r3, r1, 0xc
/* 80273244 002701A4 38 C0 00 01 */ li r6, 1
/* 80273248 002701A8 48 00 37 99 */ bl sub_802769e0
/* 8027324C 002701AC A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80273250 002701B0 7F E3 FB 78 */ mr r3, r31
/* 80273254 002701B4 38 81 00 08 */ addi r4, r1, 8
/* 80273258 002701B8 B0 01 00 10 */ sth r0, 0x10(r1)
/* 8027325C 002701BC B0 01 00 08 */ sth r0, 8(r1)
/* 80273260 002701C0 4B DD 93 45 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80273264 002701C4 7C 64 1B 78 */ mr r4, r3
/* 80273268 002701C8 38 61 00 14 */ addi r3, r1, 0x14
/* 8027326C 002701CC 4B E3 32 E1 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 80273270 002701D0 80 A3 00 04 */ lwz r5, 4(r3)
/* 80273274 002701D4 28 05 00 00 */ cmplwi r5, 0
/* 80273278 002701D8 41 82 00 90 */ beq lbl_80273308
/* 8027327C 002701DC 80 9E 00 64 */ lwz r4, 0x64(r30)
/* 80273280 002701E0 38 61 00 1C */ addi r3, r1, 0x1c
/* 80273284 002701E4 C0 25 00 50 */ lfs f1, 0x50(r5)
/* 80273288 002701E8 C0 1E 00 50 */ lfs f0, 0x50(r30)
/* 8027328C 002701EC C0 FE 00 58 */ lfs f7, 0x58(r30)
/* 80273290 002701F0 C0 DE 00 48 */ lfs f6, 0x48(r30)
/* 80273294 002701F4 EC 21 00 28 */ fsubs f1, f1, f0
/* 80273298 002701F8 C0 5E 00 38 */ lfs f2, 0x38(r30)
/* 8027329C 002701FC C0 A5 00 40 */ lfs f5, 0x40(r5)
/* 802732A0 00270200 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 802732A4 00270204 EC 26 00 72 */ fmuls f1, f6, f1
/* 802732A8 00270208 C0 85 00 60 */ lfs f4, 0x60(r5)
/* 802732AC 0027020C C0 7E 00 60 */ lfs f3, 0x60(r30)
/* 802732B0 00270210 EC A5 00 28 */ fsubs f5, f5, f0
/* 802732B4 00270214 C0 04 00 00 */ lfs f0, 0(r4)
/* 802732B8 00270218 EC 64 18 28 */ fsubs f3, f4, f3
/* 802732BC 0027021C D0 41 00 28 */ stfs f2, 0x28(r1)
/* 802732C0 00270220 EC 22 09 7A */ fmadds f1, f2, f5, f1
/* 802732C4 00270224 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 802732C8 00270228 C0 04 00 04 */ lfs f0, 4(r4)
/* 802732CC 0027022C EF E7 08 FA */ fmadds f31, f7, f3, f1
/* 802732D0 00270230 D0 C1 00 2C */ stfs f6, 0x2c(r1)
/* 802732D4 00270234 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 802732D8 00270238 C0 04 00 08 */ lfs f0, 8(r4)
/* 802732DC 0027023C D0 E1 00 30 */ stfs f7, 0x30(r1)
/* 802732E0 00270240 D0 01 00 24 */ stfs f0, 0x24(r1)
/* 802732E4 00270244 48 0A 15 D5 */ bl Magnitude__9CVector3fCFv
/* 802732E8 00270248 C0 42 BC 3C */ lfs f2, lbl_805AD95C@sda21(r2)
/* 802732EC 0027024C C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 802732F0 00270250 EC 22 00 72 */ fmuls f1, f2, f1
/* 802732F4 00270254 EC 00 00 72 */ fmuls f0, f0, f1
/* 802732F8 00270258 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 802732FC 0027025C 7C 00 00 26 */ mfcr r0
/* 80273300 00270260 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80273304 00270264 48 00 00 08 */ b lbl_8027330C
lbl_80273308:
/* 80273308 00270268 38 60 00 01 */ li r3, 1
lbl_8027330C:
/* 8027330C 0027026C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0
/* 80273310 00270270 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80273314 00270274 CB E1 00 60 */ lfd f31, 0x60(r1)
/* 80273318 00270278 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 8027331C 0027027C 83 C1 00 58 */ lwz r30, 0x58(r1)
/* 80273320 00270280 7C 08 03 A6 */ mtlr r0
/* 80273324 00270284 38 21 00 70 */ addi r1, r1, 0x70
/* 80273328 00270288 4E 80 00 20 */ blr
.global PlayerSpot__16CMetroidPrimeExoFR13CStateManagerf
PlayerSpot__16CMetroidPrimeExoFR13CStateManagerf:
/* 8027332C 0027028C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80273330 00270290 7C 08 02 A6 */ mflr r0
/* 80273334 00270294 90 01 00 14 */ stw r0, 0x14(r1)
/* 80273338 00270298 80 64 08 4C */ lwz r3, 0x84c(r4)
/* 8027333C 0027029C 4B DA 29 C1 */ bl GetFrozenState__7CPlayerCFv
/* 80273340 002702A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80273344 002702A4 7C 08 03 A6 */ mtlr r0
/* 80273348 002702A8 38 21 00 10 */ addi r1, r1, 0x10
/* 8027334C 002702AC 4E 80 00 20 */ blr
.global CoverCheck__16CMetroidPrimeExoFR13CStateManagerf
CoverCheck__16CMetroidPrimeExoFR13CStateManagerf:
/* 80273350 002702B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80273354 002702B4 7C 08 02 A6 */ mflr r0
/* 80273358 002702B8 C0 22 BC 48 */ lfs f1, lbl_805AD968@sda21(r2)
/* 8027335C 002702BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80273360 002702C0 48 00 3E C5 */ bl sub_80277224
/* 80273364 002702C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80273368 002702C8 7C 08 03 A6 */ mtlr r0
/* 8027336C 002702CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80273370 002702D0 4E 80 00 20 */ blr
.global AggressionCheck__16CMetroidPrimeExoFR13CStateManagerf
AggressionCheck__16CMetroidPrimeExoFR13CStateManagerf:
/* 80273374 002702D4 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 80273378 002702D8 7C 08 02 A6 */ mflr r0
/* 8027337C 002702DC 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80273380 002702E0 DB E1 00 B0 */ stfd f31, 0xb0(r1)
/* 80273384 002702E4 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0
/* 80273388 002702E8 DB C1 00 A0 */ stfd f30, 0xa0(r1)
/* 8027338C 002702EC F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0
/* 80273390 002702F0 DB A1 00 90 */ stfd f29, 0x90(r1)
/* 80273394 002702F4 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0
/* 80273398 002702F8 DB 81 00 80 */ stfd f28, 0x80(r1)
/* 8027339C 002702FC F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0
/* 802733A0 00270300 DB 61 00 70 */ stfd f27, 0x70(r1)
/* 802733A4 00270304 F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0
/* 802733A8 00270308 DB 41 00 60 */ stfd f26, 0x60(r1)
/* 802733AC 0027030C F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0
/* 802733B0 00270310 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 802733B4 00270314 80 A4 08 4C */ lwz r5, 0x84c(r4)
/* 802733B8 00270318 7C 7F 1B 78 */ mr r31, r3
/* 802733BC 0027031C 80 82 BB E8 */ lwz r4, lbl_805AD908@sda21(r2)
/* 802733C0 00270320 38 61 00 14 */ addi r3, r1, 0x14
/* 802733C4 00270324 C3 45 00 60 */ lfs f26, 0x60(r5)
/* 802733C8 00270328 C3 65 00 50 */ lfs f27, 0x50(r5)
/* 802733CC 0027032C C3 85 00 40 */ lfs f28, 0x40(r5)
/* 802733D0 00270330 4B D9 18 E9 */ bl string_l__4rstlFPCc
/* 802733D4 00270334 7F E4 FB 78 */ mr r4, r31
/* 802733D8 00270338 38 61 00 24 */ addi r3, r1, 0x24
/* 802733DC 0027033C 38 A1 00 14 */ addi r5, r1, 0x14
/* 802733E0 00270340 4B E0 55 99 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802733E4 00270344 C3 A1 00 50 */ lfs f29, 0x50(r1)
/* 802733E8 00270348 38 61 00 14 */ addi r3, r1, 0x14
/* 802733EC 0027034C C3 C1 00 40 */ lfs f30, 0x40(r1)
/* 802733F0 00270350 C3 E1 00 30 */ lfs f31, 0x30(r1)
/* 802733F4 00270354 48 0C A6 ED */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802733F8 00270358 EC 3C F8 28 */ fsubs f1, f28, f31
/* 802733FC 0027035C C0 02 BC 4C */ lfs f0, lbl_805AD96C@sda21(r2)
/* 80273400 00270360 EC BB F0 28 */ fsubs f5, f27, f30
/* 80273404 00270364 EC 9A E8 28 */ fsubs f4, f26, f29
/* 80273408 00270368 EC 41 00 72 */ fmuls f2, f1, f1
/* 8027340C 0027036C D0 21 00 08 */ stfs f1, 8(r1)
/* 80273410 00270370 EC 25 01 72 */ fmuls f1, f5, f5
/* 80273414 00270374 EC 64 01 32 */ fmuls f3, f4, f4
/* 80273418 00270378 D0 A1 00 0C */ stfs f5, 0xc(r1)
/* 8027341C 0027037C EC 22 08 2A */ fadds f1, f2, f1
/* 80273420 00270380 D0 81 00 10 */ stfs f4, 0x10(r1)
/* 80273424 00270384 EC 23 08 2A */ fadds f1, f3, f1
/* 80273428 00270388 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8027342C 0027038C 7C 00 00 26 */ mfcr r0
/* 80273430 00270390 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80273434 00270394 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0
/* 80273438 00270398 CB E1 00 B0 */ lfd f31, 0xb0(r1)
/* 8027343C 0027039C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0
/* 80273440 002703A0 CB C1 00 A0 */ lfd f30, 0xa0(r1)
/* 80273444 002703A4 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0
/* 80273448 002703A8 CB A1 00 90 */ lfd f29, 0x90(r1)
/* 8027344C 002703AC E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0
/* 80273450 002703B0 CB 81 00 80 */ lfd f28, 0x80(r1)
/* 80273454 002703B4 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0
/* 80273458 002703B8 CB 61 00 70 */ lfd f27, 0x70(r1)
/* 8027345C 002703BC E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0
/* 80273460 002703C0 CB 41 00 60 */ lfd f26, 0x60(r1)
/* 80273464 002703C4 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 80273468 002703C8 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 8027346C 002703CC 7C 08 03 A6 */ mtlr r0
/* 80273470 002703D0 38 21 00 C0 */ addi r1, r1, 0xc0
/* 80273474 002703D4 4E 80 00 20 */ blr
.global AIStage__16CMetroidPrimeExoFR13CStateManagerf
AIStage__16CMetroidPrimeExoFR13CStateManagerf:
/* 80273478 002703D8 C0 02 BB F8 */ lfs f0, lbl_805AD918@sda21(r2)
/* 8027347C 002703DC 38 80 00 00 */ li r4, 0
/* 80273480 002703E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80273484 002703E4 40 80 00 10 */ bge lbl_80273494
/* 80273488 002703E8 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 8027348C 002703EC 2C 00 00 00 */ cmpwi r0, 0
/* 80273490 002703F0 41 82 00 48 */ beq lbl_802734D8
lbl_80273494:
/* 80273494 002703F4 C0 02 BC 50 */ lfs f0, lbl_805AD970@sda21(r2)
/* 80273498 002703F8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8027349C 002703FC 40 81 00 10 */ ble lbl_802734AC
/* 802734A0 00270400 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 802734A4 00270404 2C 00 00 02 */ cmpwi r0, 2
/* 802734A8 00270408 41 82 00 30 */ beq lbl_802734D8
lbl_802734AC:
/* 802734AC 0027040C 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 802734B0 00270410 2C 00 00 01 */ cmpwi r0, 1
/* 802734B4 00270414 40 82 00 28 */ bne lbl_802734DC
/* 802734B8 00270418 C0 02 BB F8 */ lfs f0, lbl_805AD918@sda21(r2)
/* 802734BC 0027041C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802734C0 00270420 4C 41 13 82 */ cror 2, 1, 2
/* 802734C4 00270424 40 82 00 18 */ bne lbl_802734DC
/* 802734C8 00270428 C0 02 BC 50 */ lfs f0, lbl_805AD970@sda21(r2)
/* 802734CC 0027042C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802734D0 00270430 4C 40 13 82 */ cror 2, 0, 2
/* 802734D4 00270434 40 82 00 08 */ bne lbl_802734DC
lbl_802734D8:
/* 802734D8 00270438 38 80 00 01 */ li r4, 1
lbl_802734DC:
/* 802734DC 0027043C 7C 83 23 78 */ mr r3, r4
/* 802734E0 00270440 4E 80 00 20 */ blr
.global sub_802734e4
sub_802734e4:
/* 802734E4 00270444 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 802734E8 00270448 20 00 00 0B */ subfic r0, r0, 0xb
/* 802734EC 0027044C 7C 00 00 34 */ cntlzw r0, r0
/* 802734F0 00270450 54 03 D9 7E */ srwi r3, r0, 5
/* 802734F4 00270454 4E 80 00 20 */ blr
.global AttackOver__16CMetroidPrimeExoFR13CStateManagerf
AttackOver__16CMetroidPrimeExoFR13CStateManagerf:
/* 802734F8 00270458 88 83 08 F4 */ lbz r4, 0x8f4(r3)
/* 802734FC 0027045C 38 A0 00 00 */ li r5, 0
/* 80273500 00270460 54 80 EF FF */ rlwinm. r0, r4, 0x1d, 0x1f, 0x1f
/* 80273504 00270464 40 82 00 18 */ bne lbl_8027351C
/* 80273508 00270468 54 80 E7 FF */ rlwinm. r0, r4, 0x1c, 0x1f, 0x1f
/* 8027350C 0027046C 40 82 00 10 */ bne lbl_8027351C
/* 80273510 00270470 88 03 10 54 */ lbz r0, 0x1054(r3)
/* 80273514 00270474 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 80273518 00270478 41 82 00 08 */ beq lbl_80273520
lbl_8027351C:
/* 8027351C 0027047C 38 A0 00 01 */ li r5, 1
lbl_80273520:
/* 80273520 00270480 7C A3 2B 78 */ mr r3, r5
/* 80273524 00270484 4E 80 00 20 */ blr
.global sub_80273528
sub_80273528:
/* 80273528 00270488 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 8027352C 0027048C 20 00 00 0A */ subfic r0, r0, 0xa
/* 80273530 00270490 7C 00 00 34 */ cntlzw r0, r0
/* 80273534 00270494 54 03 D9 7E */ srwi r3, r0, 5
/* 80273538 00270498 4E 80 00 20 */ blr
.global sub_8027353c
sub_8027353c:
/* 8027353C 0027049C 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 80273540 002704A0 20 00 00 0C */ subfic r0, r0, 0xc
/* 80273544 002704A4 7C 00 00 34 */ cntlzw r0, r0
/* 80273548 002704A8 54 03 D9 7E */ srwi r3, r0, 5
/* 8027354C 002704AC 4E 80 00 20 */ blr
.global sub_80273550
sub_80273550:
/* 80273550 002704B0 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 80273554 002704B4 20 00 00 09 */ subfic r0, r0, 9
/* 80273558 002704B8 7C 00 00 34 */ cntlzw r0, r0
/* 8027355C 002704BC 54 03 D9 7E */ srwi r3, r0, 5
/* 80273560 002704C0 4E 80 00 20 */ blr
.global sub_80273564
sub_80273564:
/* 80273564 002704C4 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 80273568 002704C8 38 60 00 00 */ li r3, 0
/* 8027356C 002704CC 2C 00 00 06 */ cmpwi r0, 6
/* 80273570 002704D0 41 82 00 14 */ beq lbl_80273584
/* 80273574 002704D4 2C 00 00 07 */ cmpwi r0, 7
/* 80273578 002704D8 41 82 00 0C */ beq lbl_80273584
/* 8027357C 002704DC 2C 00 00 08 */ cmpwi r0, 8
/* 80273580 002704E0 4C 82 00 20 */ bnelr
lbl_80273584:
/* 80273584 002704E4 38 60 00 01 */ li r3, 1
/* 80273588 002704E8 4E 80 00 20 */ blr
.global sub_8027358c
sub_8027358c:
/* 8027358C 002704EC 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 80273590 002704F0 38 60 00 00 */ li r3, 0
/* 80273594 002704F4 2C 00 00 02 */ cmpwi r0, 2
/* 80273598 002704F8 41 82 00 1C */ beq lbl_802735B4
/* 8027359C 002704FC 2C 00 00 03 */ cmpwi r0, 3
/* 802735A0 00270500 41 82 00 14 */ beq lbl_802735B4
/* 802735A4 00270504 2C 00 00 04 */ cmpwi r0, 4
/* 802735A8 00270508 41 82 00 0C */ beq lbl_802735B4
/* 802735AC 0027050C 2C 00 00 05 */ cmpwi r0, 5
/* 802735B0 00270510 4C 82 00 20 */ bnelr
lbl_802735B4:
/* 802735B4 00270514 38 60 00 01 */ li r3, 1
/* 802735B8 00270518 4E 80 00 20 */ blr
.global ShouldTurn__16CMetroidPrimeExoFR13CStateManagerf
ShouldTurn__16CMetroidPrimeExoFR13CStateManagerf:
/* 802735BC 0027051C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802735C0 00270520 7C 08 02 A6 */ mflr r0
/* 802735C4 00270524 90 01 00 34 */ stw r0, 0x34(r1)
/* 802735C8 00270528 DB E1 00 20 */ stfd f31, 0x20(r1)
/* 802735CC 0027052C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0
/* 802735D0 00270530 80 84 08 4C */ lwz r4, 0x84c(r4)
/* 802735D4 00270534 80 A3 00 64 */ lwz r5, 0x64(r3)
/* 802735D8 00270538 C0 24 00 50 */ lfs f1, 0x50(r4)
/* 802735DC 0027053C C0 03 00 50 */ lfs f0, 0x50(r3)
/* 802735E0 00270540 C0 E3 00 58 */ lfs f7, 0x58(r3)
/* 802735E4 00270544 C0 C3 00 48 */ lfs f6, 0x48(r3)
/* 802735E8 00270548 EC 21 00 28 */ fsubs f1, f1, f0
/* 802735EC 0027054C C0 43 00 38 */ lfs f2, 0x38(r3)
/* 802735F0 00270550 C0 A4 00 40 */ lfs f5, 0x40(r4)
/* 802735F4 00270554 C0 03 00 40 */ lfs f0, 0x40(r3)
/* 802735F8 00270558 EC 26 00 72 */ fmuls f1, f6, f1
/* 802735FC 0027055C C0 63 00 60 */ lfs f3, 0x60(r3)
/* 80273600 00270560 38 61 00 08 */ addi r3, r1, 8
/* 80273604 00270564 C0 84 00 60 */ lfs f4, 0x60(r4)
/* 80273608 00270568 EC A5 00 28 */ fsubs f5, f5, f0
/* 8027360C 0027056C C0 05 00 00 */ lfs f0, 0(r5)
/* 80273610 00270570 EC 64 18 28 */ fsubs f3, f4, f3
/* 80273614 00270574 D0 41 00 14 */ stfs f2, 0x14(r1)
/* 80273618 00270578 EC 22 09 7A */ fmadds f1, f2, f5, f1
/* 8027361C 0027057C D0 01 00 08 */ stfs f0, 8(r1)
/* 80273620 00270580 C0 05 00 04 */ lfs f0, 4(r5)
/* 80273624 00270584 EF E7 08 FA */ fmadds f31, f7, f3, f1
/* 80273628 00270588 D0 C1 00 18 */ stfs f6, 0x18(r1)
/* 8027362C 0027058C D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80273630 00270590 C0 05 00 08 */ lfs f0, 8(r5)
/* 80273634 00270594 D0 E1 00 1C */ stfs f7, 0x1c(r1)
/* 80273638 00270598 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 8027363C 0027059C 48 0A 12 7D */ bl Magnitude__9CVector3fCFv
/* 80273640 002705A0 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80273644 002705A4 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80273648 002705A8 7C 00 00 26 */ mfcr r0
/* 8027364C 002705AC 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80273650 002705B0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 80273654 002705B4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80273658 002705B8 CB E1 00 20 */ lfd f31, 0x20(r1)
/* 8027365C 002705BC 7C 08 03 A6 */ mtlr r0
/* 80273660 002705C0 38 21 00 30 */ addi r1, r1, 0x30
/* 80273664 002705C4 4E 80 00 20 */ blr
.global InMaxRange__16CMetroidPrimeExoFR13CStateManagerf
InMaxRange__16CMetroidPrimeExoFR13CStateManagerf:
/* 80273668 002705C8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8027366C 002705CC 7C 08 02 A6 */ mflr r0
/* 80273670 002705D0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80273674 002705D4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80273678 002705D8 3B E0 00 00 */ li r31, 0
/* 8027367C 002705DC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80273680 002705E0 7C 9E 23 78 */ mr r30, r4
/* 80273684 002705E4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80273688 002705E8 7C 7D 1B 78 */ mr r29, r3
/* 8027368C 002705EC 4B F8 2D 59 */ bl InMaxRange__10CPatternedFR13CStateManagerf
/* 80273690 002705F0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80273694 002705F4 40 82 00 64 */ bne lbl_802736F8
/* 80273698 002705F8 3C 80 80 3D */ lis r4, lbl_803D5428@ha
/* 8027369C 002705FC 7F A3 EB 78 */ mr r3, r29
/* 802736A0 00270600 38 A4 54 28 */ addi r5, r4, lbl_803D5428@l
/* 802736A4 00270604 7F C4 F3 78 */ mr r4, r30
/* 802736A8 00270608 C0 25 00 00 */ lfs f1, 0(r5)
/* 802736AC 0027060C 48 00 3B 79 */ bl sub_80277224
/* 802736B0 00270610 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802736B4 00270614 40 82 00 48 */ bne lbl_802736FC
/* 802736B8 00270618 3C 80 80 3D */ lis r4, lbl_803D5428@ha
/* 802736BC 0027061C 7F A3 EB 78 */ mr r3, r29
/* 802736C0 00270620 38 A4 54 28 */ addi r5, r4, lbl_803D5428@l
/* 802736C4 00270624 7F C4 F3 78 */ mr r4, r30
/* 802736C8 00270628 C0 25 00 04 */ lfs f1, 4(r5)
/* 802736CC 0027062C 48 00 3B 59 */ bl sub_80277224
/* 802736D0 00270630 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802736D4 00270634 40 82 00 28 */ bne lbl_802736FC
/* 802736D8 00270638 3C 80 80 3D */ lis r4, lbl_803D5428@ha
/* 802736DC 0027063C 7F A3 EB 78 */ mr r3, r29
/* 802736E0 00270640 38 A4 54 28 */ addi r5, r4, lbl_803D5428@l
/* 802736E4 00270644 7F C4 F3 78 */ mr r4, r30
/* 802736E8 00270648 C0 25 00 08 */ lfs f1, 8(r5)
/* 802736EC 0027064C 48 00 3B 39 */ bl sub_80277224
/* 802736F0 00270650 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802736F4 00270654 40 82 00 08 */ bne lbl_802736FC
lbl_802736F8:
/* 802736F8 00270658 3B E0 00 01 */ li r31, 1
lbl_802736FC:
/* 802736FC 0027065C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80273700 00270660 7F E3 FB 78 */ mr r3, r31
/* 80273704 00270664 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80273708 00270668 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8027370C 0027066C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80273710 00270670 7C 08 03 A6 */ mtlr r0
/* 80273714 00270674 38 21 00 20 */ addi r1, r1, 0x20
/* 80273718 00270678 4E 80 00 20 */ blr
.global TooClose__16CMetroidPrimeExoFR13CStateManagerf
TooClose__16CMetroidPrimeExoFR13CStateManagerf:
/* 8027371C 0027067C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80273720 00270680 7C 08 02 A6 */ mflr r0
/* 80273724 00270684 90 01 00 14 */ stw r0, 0x14(r1)
/* 80273728 00270688 4B F8 2D 31 */ bl TooClose__10CPatternedFR13CStateManagerf
/* 8027372C 0027068C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80273730 00270690 7C 08 03 A6 */ mtlr r0
/* 80273734 00270694 38 21 00 10 */ addi r1, r1, 0x10
/* 80273738 00270698 4E 80 00 20 */ blr
.global ShouldDoubleSnap__16CMetroidPrimeExoFR13CStateManagerf
ShouldDoubleSnap__16CMetroidPrimeExoFR13CStateManagerf:
/* 8027373C 0027069C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80273740 002706A0 7C 08 02 A6 */ mflr r0
/* 80273744 002706A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80273748 002706A8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8027374C 002706AC 3B E0 00 00 */ li r31, 0
/* 80273750 002706B0 88 03 03 28 */ lbz r0, 0x328(r3)
/* 80273754 002706B4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80273758 002706B8 40 82 00 24 */ bne lbl_8027377C
/* 8027375C 002706BC A0 A3 02 DC */ lhz r5, 0x2dc(r3)
/* 80273760 002706C0 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80273764 002706C4 7C 05 00 40 */ cmplw r5, r0
/* 80273768 002706C8 41 82 00 14 */ beq lbl_8027377C
/* 8027376C 002706CC C0 22 BC 54 */ lfs f1, lbl_805AD974@sda21(r2)
/* 80273770 002706D0 48 00 3A B5 */ bl sub_80277224
/* 80273774 002706D4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80273778 002706D8 40 82 00 08 */ bne lbl_80273780
lbl_8027377C:
/* 8027377C 002706DC 3B E0 00 01 */ li r31, 1
lbl_80273780:
/* 80273780 002706E0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80273784 002706E4 7F E3 FB 78 */ mr r3, r31
/* 80273788 002706E8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8027378C 002706EC 7C 08 03 A6 */ mtlr r0
/* 80273790 002706F0 38 21 00 10 */ addi r1, r1, 0x10
/* 80273794 002706F4 4E 80 00 20 */ blr
.global sub_80273798
sub_80273798:
/* 80273798 002706F8 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 8027379C 002706FC 20 00 00 0D */ subfic r0, r0, 0xd
/* 802737A0 00270700 7C 00 00 34 */ cntlzw r0, r0
/* 802737A4 00270704 54 03 D9 7E */ srwi r3, r0, 5
/* 802737A8 00270708 4E 80 00 20 */ blr
.global sub_802737ac
sub_802737ac:
/* 802737AC 0027070C 80 03 12 54 */ lwz r0, 0x1254(r3)
/* 802737B0 00270710 20 00 00 01 */ subfic r0, r0, 1
/* 802737B4 00270714 7C 00 00 34 */ cntlzw r0, r0
/* 802737B8 00270718 54 03 D9 7E */ srwi r3, r0, 5
/* 802737BC 0027071C 4E 80 00 20 */ blr
.global StartAttack__16CMetroidPrimeExoFR13CStateManagerf
StartAttack__16CMetroidPrimeExoFR13CStateManagerf:
/* 802737C0 00270720 C0 23 09 20 */ lfs f1, 0x920(r3)
/* 802737C4 00270724 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802737C8 00270728 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802737CC 0027072C 4C 40 13 82 */ cror 2, 0, 2
/* 802737D0 00270730 7C 00 00 26 */ mfcr r0
/* 802737D4 00270734 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f
/* 802737D8 00270738 4E 80 00 20 */ blr
.global ShouldRetreat__16CMetroidPrimeExoFR13CStateManagerf
ShouldRetreat__16CMetroidPrimeExoFR13CStateManagerf:
/* 802737DC 0027073C 88 03 08 F4 */ lbz r0, 0x8f4(r3)
/* 802737E0 00270740 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f
/* 802737E4 00270744 4E 80 00 20 */ blr
.global ShouldFlinch__16CMetroidPrimeExoFR13CStateManagerf
ShouldFlinch__16CMetroidPrimeExoFR13CStateManagerf:
/* 802737E8 00270748 88 03 08 F4 */ lbz r0, 0x8f4(r3)
/* 802737EC 0027074C 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f
/* 802737F0 00270750 4E 80 00 20 */ blr
.global InPosition__16CMetroidPrimeExoFR13CStateManagerf
InPosition__16CMetroidPrimeExoFR13CStateManagerf:
/* 802737F4 00270754 C0 23 10 84 */ lfs f1, 0x1084(r3)
/* 802737F8 00270758 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802737FC 0027075C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80273800 00270760 4C 40 13 82 */ cror 2, 0, 2
/* 80273804 00270764 7C 00 00 26 */ mfcr r0
/* 80273808 00270768 54 03 1F FE */ rlwinm r3, r0, 3, 0x1f, 0x1f
/* 8027380C 0027076C 4E 80 00 20 */ blr
.global CodeTrigger__16CMetroidPrimeExoFR13CStateManagerf
CodeTrigger__16CMetroidPrimeExoFR13CStateManagerf:
/* 80273810 00270770 88 03 14 44 */ lbz r0, 0x1444(r3)
/* 80273814 00270774 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f
/* 80273818 00270778 4E 80 00 20 */ blr
.global sub_8027381c
sub_8027381c:
/* 8027381C 0027077C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80273820 00270780 7C 08 02 A6 */ mflr r0
/* 80273824 00270784 3C E0 80 3E */ lis r7, lbl_803DAA68@ha
/* 80273828 00270788 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027382C 0027078C 90 01 00 34 */ stw r0, 0x34(r1)
/* 80273830 00270790 38 E7 AA 68 */ addi r7, r7, lbl_803DAA68@l
/* 80273834 00270794 39 00 00 13 */ li r8, 0x13
/* 80273838 00270798 88 81 00 14 */ lbz r4, 0x14(r1)
/* 8027383C 0027079C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80273840 002707A0 38 C0 00 00 */ li r6, 0
/* 80273844 002707A4 50 C4 3E 30 */ rlwimi r4, r6, 7, 0x18, 0x18
/* 80273848 002707A8 81 23 04 50 */ lwz r9, 0x450(r3)
/* 8027384C 002707AC 3C 60 80 3E */ lis r3, lbl_803DFE40@ha
/* 80273850 002707B0 90 E1 00 08 */ stw r7, 8(r1)
/* 80273854 002707B4 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 80273858 002707B8 38 E3 FE 40 */ addi r7, r3, lbl_803DFE40@l
/* 8027385C 002707BC 3B E9 00 04 */ addi r31, r9, 4
/* 80273860 002707C0 98 81 00 14 */ stb r4, 0x14(r1)
/* 80273864 002707C4 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19
/* 80273868 002707C8 7F E3 FB 78 */ mr r3, r31
/* 8027386C 002707CC 38 80 00 13 */ li r4, 0x13
/* 80273870 002707D0 91 01 00 0C */ stw r8, 0xc(r1)
/* 80273874 002707D4 90 E1 00 08 */ stw r7, 8(r1)
/* 80273878 002707D8 90 A1 00 10 */ stw r5, 0x10(r1)
/* 8027387C 002707DC 98 01 00 14 */ stb r0, 0x14(r1)
/* 80273880 002707E0 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 80273884 002707E4 4B EB DB B5 */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd
/* 80273888 002707E8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8027388C 002707EC 3C 60 80 3E */ lis r3, lbl_803DFE40@ha
/* 80273890 002707F0 38 83 FE 40 */ addi r4, r3, lbl_803DFE40@l
/* 80273894 002707F4 3C 60 80 3E */ lis r3, lbl_803DAA68@ha
/* 80273898 002707F8 90 1F 02 20 */ stw r0, 0x220(r31)
/* 8027389C 002707FC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l
/* 802738A0 00270800 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 802738A4 00270804 88 61 00 14 */ lbz r3, 0x14(r1)
/* 802738A8 00270808 90 BF 02 24 */ stw r5, 0x224(r31)
/* 802738AC 0027080C C0 01 00 18 */ lfs f0, 0x18(r1)
/* 802738B0 00270810 98 7F 02 28 */ stb r3, 0x228(r31)
/* 802738B4 00270814 90 81 00 08 */ stw r4, 8(r1)
/* 802738B8 00270818 D0 1F 02 2C */ stfs f0, 0x22c(r31)
/* 802738BC 0027081C 90 01 00 08 */ stw r0, 8(r1)
/* 802738C0 00270820 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802738C4 00270824 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802738C8 00270828 7C 08 03 A6 */ mtlr r0
/* 802738CC 0027082C 38 21 00 30 */ addi r1, r1, 0x30
/* 802738D0 00270830 4E 80 00 20 */ blr
.global sub_802738d4
sub_802738d4:
/* 802738D4 00270834 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802738D8 00270838 7C 08 02 A6 */ mflr r0
/* 802738DC 0027083C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802738E0 00270840 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802738E4 00270844 7C 7F 1B 78 */ mr r31, r3
/* 802738E8 00270848 80 64 09 00 */ lwz r3, 0x900(r4)
/* 802738EC 0027084C C0 3F 09 24 */ lfs f1, 0x924(r31)
/* 802738F0 00270850 C0 5F 09 28 */ lfs f2, 0x928(r31)
/* 802738F4 00270854 48 09 EC 51 */ bl Range__9CRandom16Fff
/* 802738F8 00270858 D0 3F 09 20 */ stfs f1, 0x920(r31)
/* 802738FC 0027085C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80273900 00270860 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80273904 00270864 7C 08 03 A6 */ mtlr r0
/* 80273908 00270868 38 21 00 10 */ addi r1, r1, 0x10
/* 8027390C 0027086C 4E 80 00 20 */ blr
.global sub_80273910
sub_80273910:
/* 80273910 00270870 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80273914 00270874 7C 08 02 A6 */ mflr r0
/* 80273918 00270878 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027391C 0027087C 90 01 00 74 */ stw r0, 0x74(r1)
/* 80273920 00270880 BF 41 00 58 */ stmw r26, 0x58(r1)
/* 80273924 00270884 7C 7F 1B 78 */ mr r31, r3
/* 80273928 00270888 7C 9A 23 78 */ mr r26, r4
/* 8027392C 0027088C C0 43 10 74 */ lfs f2, 0x1074(r3)
/* 80273930 00270890 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80273934 00270894 4C 40 13 82 */ cror 2, 0, 2
/* 80273938 00270898 40 82 00 5C */ bne lbl_80273994
/* 8027393C 0027089C 80 BF 10 6C */ lwz r5, 0x106c(r31)
/* 80273940 002708A0 38 60 00 00 */ li r3, 0
/* 80273944 002708A4 2C 05 00 00 */ cmpwi r5, 0
/* 80273948 002708A8 40 81 00 40 */ ble lbl_80273988
/* 8027394C 002708AC 2C 05 00 08 */ cmpwi r5, 8
/* 80273950 002708B0 38 85 FF F8 */ addi r4, r5, -8
/* 80273954 002708B4 40 81 00 20 */ ble lbl_80273974
/* 80273958 002708B8 38 04 00 07 */ addi r0, r4, 7
/* 8027395C 002708BC 54 00 E8 FE */ srwi r0, r0, 3
/* 80273960 002708C0 7C 09 03 A6 */ mtctr r0
/* 80273964 002708C4 2C 04 00 00 */ cmpwi r4, 0
/* 80273968 002708C8 40 81 00 0C */ ble lbl_80273974
lbl_8027396C:
/* 8027396C 002708CC 38 63 00 08 */ addi r3, r3, 8
/* 80273970 002708D0 42 00 FF FC */ bdnz lbl_8027396C
lbl_80273974:
/* 80273974 002708D4 7C 03 28 50 */ subf r0, r3, r5
/* 80273978 002708D8 7C 09 03 A6 */ mtctr r0
/* 8027397C 002708DC 7C 03 28 00 */ cmpw r3, r5
/* 80273980 002708E0 40 80 00 08 */ bge lbl_80273988
lbl_80273984:
/* 80273984 002708E4 42 00 00 00 */ bdnz lbl_80273984
lbl_80273988:
/* 80273988 002708E8 38 00 00 00 */ li r0, 0
/* 8027398C 002708EC 90 1F 10 6C */ stw r0, 0x106c(r31)
/* 80273990 002708F0 48 00 00 C0 */ b lbl_80273A50
lbl_80273994:
/* 80273994 002708F4 EC 02 08 28 */ fsubs f0, f2, f1
/* 80273998 002708F8 3B 9F 10 70 */ addi r28, r31, 0x1070
/* 8027399C 002708FC 7F 9B E3 78 */ mr r27, r28
/* 802739A0 00270900 3B C0 00 00 */ li r30, 0
/* 802739A4 00270904 D0 1F 10 74 */ stfs f0, 0x1074(r31)
/* 802739A8 00270908 48 00 00 94 */ b lbl_80273A3C
lbl_802739AC:
/* 802739AC 0027090C A0 1B 00 00 */ lhz r0, 0(r27)
/* 802739B0 00270910 7F 43 D3 78 */ mr r3, r26
/* 802739B4 00270914 38 81 00 08 */ addi r4, r1, 8
/* 802739B8 00270918 B0 01 00 08 */ sth r0, 8(r1)
/* 802739BC 0027091C 4B DD 8B B9 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 802739C0 00270920 7C 64 1B 78 */ mr r4, r3
/* 802739C4 00270924 38 61 00 0C */ addi r3, r1, 0xc
/* 802739C8 00270928 4B E3 1B DD */ bl sub_800a55a4
/* 802739CC 0027092C 4B E3 1B AD */ bl "CastTo<11CEnergyBall>__10CPatternedFP7CEntity"
/* 802739D0 00270930 7C 7D 1B 79 */ or. r29, r3, r3
/* 802739D4 00270934 41 82 00 64 */ beq lbl_80273A38
/* 802739D8 00270938 38 82 BB D4 */ addi r4, r2, lbl_805AD8F4@sda21
/* 802739DC 0027093C 38 61 00 10 */ addi r3, r1, 0x10
/* 802739E0 00270940 7C 84 F0 2E */ lwzx r4, r4, r30
/* 802739E4 00270944 3B DE 00 04 */ addi r30, r30, 4
/* 802739E8 00270948 4B D9 12 D1 */ bl string_l__4rstlFPCc
/* 802739EC 0027094C 7F E4 FB 78 */ mr r4, r31
/* 802739F0 00270950 38 61 00 20 */ addi r3, r1, 0x20
/* 802739F4 00270954 38 A1 00 10 */ addi r5, r1, 0x10
/* 802739F8 00270958 4B E0 4F 81 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802739FC 0027095C 38 7D 00 34 */ addi r3, r29, 0x34
/* 80273A00 00270960 38 81 00 20 */ addi r4, r1, 0x20
/* 80273A04 00270964 48 09 F1 3D */ bl __as__12CTransform4fFRC12CTransform4f
/* 80273A08 00270968 88 1D 00 E4 */ lbz r0, 0xe4(r29)
/* 80273A0C 0027096C 38 80 00 01 */ li r4, 1
/* 80273A10 00270970 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b
/* 80273A14 00270974 38 61 00 10 */ addi r3, r1, 0x10
/* 80273A18 00270978 98 1D 00 E4 */ stb r0, 0xe4(r29)
/* 80273A1C 0027097C 88 1D 00 E4 */ lbz r0, 0xe4(r29)
/* 80273A20 00270980 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c
/* 80273A24 00270984 98 1D 00 E4 */ stb r0, 0xe4(r29)
/* 80273A28 00270988 88 1D 00 E4 */ lbz r0, 0xe4(r29)
/* 80273A2C 0027098C 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d
/* 80273A30 00270990 98 1D 00 E4 */ stb r0, 0xe4(r29)
/* 80273A34 00270994 48 0C A0 AD */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_80273A38:
/* 80273A38 00270998 3B 7B 00 02 */ addi r27, r27, 2
lbl_80273A3C:
/* 80273A3C 0027099C 80 1F 10 6C */ lwz r0, 0x106c(r31)
/* 80273A40 002709A0 54 00 08 3C */ slwi r0, r0, 1
/* 80273A44 002709A4 7C 1C 02 14 */ add r0, r28, r0
/* 80273A48 002709A8 7C 1B 00 40 */ cmplw r27, r0
/* 80273A4C 002709AC 40 82 FF 60 */ bne lbl_802739AC
lbl_80273A50:
/* 80273A50 002709B0 BB 41 00 58 */ lmw r26, 0x58(r1)
/* 80273A54 002709B4 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80273A58 002709B8 7C 08 03 A6 */ mtlr r0
/* 80273A5C 002709BC 38 21 00 70 */ addi r1, r1, 0x70
/* 80273A60 002709C0 4E 80 00 20 */ blr
.global sub_80273a64
sub_80273a64:
/* 80273A64 002709C4 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 80273A68 002709C8 7C 08 02 A6 */ mflr r0
/* 80273A6C 002709CC 90 01 00 94 */ stw r0, 0x94(r1)
/* 80273A70 002709D0 BF 41 00 78 */ stmw r26, 0x78(r1)
/* 80273A74 002709D4 7C 7D 1B 78 */ mr r29, r3
/* 80273A78 002709D8 7C 9E 23 78 */ mr r30, r4
/* 80273A7C 002709DC 3B E0 FF FF */ li r31, -1
/* 80273A80 002709E0 80 03 05 70 */ lwz r0, 0x570(r3)
/* 80273A84 002709E4 2C 00 00 02 */ cmpwi r0, 2
/* 80273A88 002709E8 41 82 00 34 */ beq lbl_80273ABC
/* 80273A8C 002709EC 40 80 00 14 */ bge lbl_80273AA0
/* 80273A90 002709F0 2C 00 00 00 */ cmpwi r0, 0
/* 80273A94 002709F4 41 82 00 18 */ beq lbl_80273AAC
/* 80273A98 002709F8 40 80 00 1C */ bge lbl_80273AB4
/* 80273A9C 002709FC 48 00 00 2C */ b lbl_80273AC8
lbl_80273AA0:
/* 80273AA0 00270A00 2C 00 00 04 */ cmpwi r0, 4
/* 80273AA4 00270A04 40 80 00 24 */ bge lbl_80273AC8
/* 80273AA8 00270A08 48 00 00 1C */ b lbl_80273AC4
lbl_80273AAC:
/* 80273AAC 00270A0C 3B E0 00 01 */ li r31, 1
/* 80273AB0 00270A10 48 00 00 18 */ b lbl_80273AC8
lbl_80273AB4:
/* 80273AB4 00270A14 3B E0 00 02 */ li r31, 2
/* 80273AB8 00270A18 48 00 00 10 */ b lbl_80273AC8
lbl_80273ABC:
/* 80273ABC 00270A1C 3B E0 00 03 */ li r31, 3
/* 80273AC0 00270A20 48 00 00 08 */ b lbl_80273AC8
lbl_80273AC4:
/* 80273AC4 00270A24 3B E0 00 00 */ li r31, 0
lbl_80273AC8:
/* 80273AC8 00270A28 88 0D A5 88 */ lbz r0, lbl_805A9148@sda21(r13)
/* 80273ACC 00270A2C 7C 00 07 75 */ extsb. r0, r0
/* 80273AD0 00270A30 40 82 00 14 */ bne lbl_80273AE4
/* 80273AD4 00270A34 38 60 00 00 */ li r3, 0
/* 80273AD8 00270A38 38 00 00 01 */ li r0, 1
/* 80273ADC 00270A3C 90 6D A5 84 */ stw r3, lbl_805A9144@sda21(r13)
/* 80273AE0 00270A40 98 0D A5 88 */ stb r0, lbl_805A9148@sda21(r13)
lbl_80273AE4:
/* 80273AE4 00270A44 3B 9D 10 5C */ addi r28, r29, 0x105c
/* 80273AE8 00270A48 7F 9B E3 78 */ mr r27, r28
/* 80273AEC 00270A4C 48 00 01 64 */ b lbl_80273C50
lbl_80273AF0:
/* 80273AF0 00270A50 80 1B 00 00 */ lwz r0, 0(r27)
/* 80273AF4 00270A54 7F C4 F3 78 */ mr r4, r30
/* 80273AF8 00270A58 38 61 00 14 */ addi r3, r1, 0x14
/* 80273AFC 00270A5C 38 A1 00 28 */ addi r5, r1, 0x28
/* 80273B00 00270A60 90 01 00 28 */ stw r0, 0x28(r1)
/* 80273B04 00270A64 4B DD 44 19 */ bl GetIdForScript__13CStateManagerCF9TEditorId
/* 80273B08 00270A68 A0 01 00 14 */ lhz r0, 0x14(r1)
/* 80273B0C 00270A6C 7F C3 F3 78 */ mr r3, r30
/* 80273B10 00270A70 38 81 00 18 */ addi r4, r1, 0x18
/* 80273B14 00270A74 B0 01 00 18 */ sth r0, 0x18(r1)
/* 80273B18 00270A78 4B DD 8A 8D */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80273B1C 00270A7C 7C 64 1B 78 */ mr r4, r3
/* 80273B20 00270A80 38 61 00 20 */ addi r3, r1, 0x20
/* 80273B24 00270A84 4B E3 1A 81 */ bl sub_800a55a4
/* 80273B28 00270A88 4B E3 1A 51 */ bl "CastTo<11CEnergyBall>__10CPatternedFP7CEntity"
/* 80273B2C 00270A8C 28 03 00 00 */ cmplwi r3, 0
/* 80273B30 00270A90 41 82 01 1C */ beq lbl_80273C4C
/* 80273B34 00270A94 80 03 05 70 */ lwz r0, 0x570(r3)
/* 80273B38 00270A98 7C 1F 00 00 */ cmpw r31, r0
/* 80273B3C 00270A9C 40 82 01 10 */ bne lbl_80273C4C
/* 80273B40 00270AA0 7F C4 F3 78 */ mr r4, r30
/* 80273B44 00270AA4 7F 65 DB 78 */ mr r5, r27
/* 80273B48 00270AA8 38 61 00 2C */ addi r3, r1, 0x2c
/* 80273B4C 00270AAC 4B DD 47 9D */ bl GenerateObject__13CStateManagerFRC9TEditorId
/* 80273B50 00270AB0 A0 01 00 30 */ lhz r0, 0x30(r1)
/* 80273B54 00270AB4 7F C3 F3 78 */ mr r3, r30
/* 80273B58 00270AB8 38 81 00 10 */ addi r4, r1, 0x10
/* 80273B5C 00270ABC B0 01 00 1C */ sth r0, 0x1c(r1)
/* 80273B60 00270AC0 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80273B64 00270AC4 4B DD 8A 11 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80273B68 00270AC8 7C 64 1B 78 */ mr r4, r3
/* 80273B6C 00270ACC 38 61 00 24 */ addi r3, r1, 0x24
/* 80273B70 00270AD0 4B E3 1A 35 */ bl sub_800a55a4
/* 80273B74 00270AD4 4B E3 1A 05 */ bl "CastTo<11CEnergyBall>__10CPatternedFP7CEntity"
/* 80273B78 00270AD8 7C 7A 1B 79 */ or. r26, r3, r3
/* 80273B7C 00270ADC 41 82 00 D0 */ beq lbl_80273C4C
/* 80273B80 00270AE0 80 CD A5 84 */ lwz r6, lbl_805A9144@sda21(r13)
/* 80273B84 00270AE4 38 82 BB D4 */ addi r4, r2, lbl_805AD8F4@sda21
/* 80273B88 00270AE8 38 61 00 34 */ addi r3, r1, 0x34
/* 80273B8C 00270AEC 38 A6 00 01 */ addi r5, r6, 1
/* 80273B90 00270AF0 54 C0 17 7A */ rlwinm r0, r6, 2, 0x1d, 0x1d
/* 80273B94 00270AF4 90 AD A5 84 */ stw r5, lbl_805A9144@sda21(r13)
/* 80273B98 00270AF8 7C 84 00 2E */ lwzx r4, r4, r0
/* 80273B9C 00270AFC 4B D9 11 1D */ bl string_l__4rstlFPCc
/* 80273BA0 00270B00 7F A4 EB 78 */ mr r4, r29
/* 80273BA4 00270B04 38 61 00 44 */ addi r3, r1, 0x44
/* 80273BA8 00270B08 38 A1 00 34 */ addi r5, r1, 0x34
/* 80273BAC 00270B0C 4B E0 4D CD */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80273BB0 00270B10 38 7A 00 34 */ addi r3, r26, 0x34
/* 80273BB4 00270B14 38 81 00 44 */ addi r4, r1, 0x44
/* 80273BB8 00270B18 48 09 EF 89 */ bl __as__12CTransform4fFRC12CTransform4f
/* 80273BBC 00270B1C 88 1A 00 E4 */ lbz r0, 0xe4(r26)
/* 80273BC0 00270B20 38 80 00 01 */ li r4, 1
/* 80273BC4 00270B24 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b
/* 80273BC8 00270B28 38 61 00 34 */ addi r3, r1, 0x34
/* 80273BCC 00270B2C 98 1A 00 E4 */ stb r0, 0xe4(r26)
/* 80273BD0 00270B30 88 1A 00 E4 */ lbz r0, 0xe4(r26)
/* 80273BD4 00270B34 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c
/* 80273BD8 00270B38 98 1A 00 E4 */ stb r0, 0xe4(r26)
/* 80273BDC 00270B3C 88 1A 00 E4 */ lbz r0, 0xe4(r26)
/* 80273BE0 00270B40 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d
/* 80273BE4 00270B44 98 1A 00 E4 */ stb r0, 0xe4(r26)
/* 80273BE8 00270B48 48 0C 9E F9 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80273BEC 00270B4C A0 1D 00 08 */ lhz r0, 8(r29)
/* 80273BF0 00270B50 7F 43 D3 78 */ mr r3, r26
/* 80273BF4 00270B54 7F C6 F3 78 */ mr r6, r30
/* 80273BF8 00270B58 38 A1 00 0C */ addi r5, r1, 0xc
/* 80273BFC 00270B5C B0 01 00 0C */ sth r0, 0xc(r1)
/* 80273C00 00270B60 38 80 00 01 */ li r4, 1
/* 80273C04 00270B64 81 9A 00 00 */ lwz r12, 0(r26)
/* 80273C08 00270B68 B0 01 00 08 */ sth r0, 8(r1)
/* 80273C0C 00270B6C 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80273C10 00270B70 7D 89 03 A6 */ mtctr r12
/* 80273C14 00270B74 4E 80 04 21 */ bctrl
/* 80273C18 00270B78 80 1D 10 6C */ lwz r0, 0x106c(r29)
/* 80273C1C 00270B7C 54 00 08 3C */ slwi r0, r0, 1
/* 80273C20 00270B80 7C 7D 02 14 */ add r3, r29, r0
/* 80273C24 00270B84 34 63 10 70 */ addic. r3, r3, 0x1070
/* 80273C28 00270B88 41 82 00 0C */ beq lbl_80273C34
/* 80273C2C 00270B8C A0 01 00 1C */ lhz r0, 0x1c(r1)
/* 80273C30 00270B90 B0 03 00 00 */ sth r0, 0(r3)
lbl_80273C34:
/* 80273C34 00270B94 80 7D 10 6C */ lwz r3, 0x106c(r29)
/* 80273C38 00270B98 C0 02 BC 58 */ lfs f0, lbl_805AD978@sda21(r2)
/* 80273C3C 00270B9C 38 03 00 01 */ addi r0, r3, 1
/* 80273C40 00270BA0 90 1D 10 6C */ stw r0, 0x106c(r29)
/* 80273C44 00270BA4 D0 1D 10 74 */ stfs f0, 0x1074(r29)
/* 80273C48 00270BA8 48 00 00 1C */ b lbl_80273C64
lbl_80273C4C:
/* 80273C4C 00270BAC 3B 7B 00 04 */ addi r27, r27, 4
lbl_80273C50:
/* 80273C50 00270BB0 80 1D 10 58 */ lwz r0, 0x1058(r29)
/* 80273C54 00270BB4 54 00 10 3A */ slwi r0, r0, 2
/* 80273C58 00270BB8 7C 1C 02 14 */ add r0, r28, r0
/* 80273C5C 00270BBC 7C 1B 00 40 */ cmplw r27, r0
/* 80273C60 00270BC0 40 82 FE 90 */ bne lbl_80273AF0
lbl_80273C64:
/* 80273C64 00270BC4 BB 41 00 78 */ lmw r26, 0x78(r1)
/* 80273C68 00270BC8 80 01 00 94 */ lwz r0, 0x94(r1)
/* 80273C6C 00270BCC 7C 08 03 A6 */ mtlr r0
/* 80273C70 00270BD0 38 21 00 90 */ addi r1, r1, 0x90
/* 80273C74 00270BD4 4E 80 00 20 */ blr
.global sub_80273c78
sub_80273c78:
/* 80273C78 00270BD8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80273C7C 00270BDC 7C 08 02 A6 */ mflr r0
/* 80273C80 00270BE0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80273C84 00270BE4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80273C88 00270BE8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80273C8C 00270BEC 3B C0 00 00 */ li r30, 0
/* 80273C90 00270BF0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80273C94 00270BF4 93 81 00 10 */ stw r28, 0x10(r1)
/* 80273C98 00270BF8 7C 7C 1B 78 */ mr r28, r3
/* 80273C9C 00270BFC 83 E4 08 20 */ lwz r31, 0x820(r4)
/* 80273CA0 00270C00 AB BF 20 08 */ lha r29, 0x2008(r31)
/* 80273CA4 00270C04 48 00 00 68 */ b lbl_80273D0C
lbl_80273CA8:
/* 80273CA8 00270C08 7F E3 FB 78 */ mr r3, r31
/* 80273CAC 00270C0C 7F A4 EB 78 */ mr r4, r29
/* 80273CB0 00270C10 4B D9 C0 65 */ bl __vc__11CObjectListFi
/* 80273CB4 00270C14 7C 60 1B 78 */ mr r0, r3
/* 80273CB8 00270C18 38 61 00 08 */ addi r3, r1, 8
/* 80273CBC 00270C1C 7C 04 03 78 */ mr r4, r0
/* 80273CC0 00270C20 4B E3 18 E5 */ bl sub_800a55a4
/* 80273CC4 00270C24 4B E3 18 B5 */ bl "CastTo<11CEnergyBall>__10CPatternedFP7CEntity"
/* 80273CC8 00270C28 28 03 00 00 */ cmplwi r3, 0
/* 80273CCC 00270C2C 41 82 00 24 */ beq lbl_80273CF0
/* 80273CD0 00270C30 80 83 00 04 */ lwz r4, 4(r3)
/* 80273CD4 00270C34 80 1C 00 04 */ lwz r0, 4(r28)
/* 80273CD8 00270C38 7C 04 00 00 */ cmpw r4, r0
/* 80273CDC 00270C3C 40 82 00 14 */ bne lbl_80273CF0
/* 80273CE0 00270C40 88 03 00 30 */ lbz r0, 0x30(r3)
/* 80273CE4 00270C44 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80273CE8 00270C48 41 82 00 08 */ beq lbl_80273CF0
/* 80273CEC 00270C4C 3B DE 00 01 */ addi r30, r30, 1
lbl_80273CF0:
/* 80273CF0 00270C50 2C 1D FF FF */ cmpwi r29, -1
/* 80273CF4 00270C54 41 82 00 14 */ beq lbl_80273D08
/* 80273CF8 00270C58 57 A3 18 38 */ slwi r3, r29, 3
/* 80273CFC 00270C5C 38 03 00 08 */ addi r0, r3, 8
/* 80273D00 00270C60 7F BF 02 AE */ lhax r29, r31, r0
/* 80273D04 00270C64 48 00 00 08 */ b lbl_80273D0C
lbl_80273D08:
/* 80273D08 00270C68 3B A0 FF FF */ li r29, -1
lbl_80273D0C:
/* 80273D0C 00270C6C 2C 1D FF FF */ cmpwi r29, -1
/* 80273D10 00270C70 40 82 FF 98 */ bne lbl_80273CA8
/* 80273D14 00270C74 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80273D18 00270C78 7F C3 F3 78 */ mr r3, r30
/* 80273D1C 00270C7C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80273D20 00270C80 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80273D24 00270C84 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80273D28 00270C88 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80273D2C 00270C8C 7C 08 03 A6 */ mtlr r0
/* 80273D30 00270C90 38 21 00 20 */ addi r1, r1, 0x20
/* 80273D34 00270C94 4E 80 00 20 */ blr
.global sub_80273d38
sub_80273d38:
/* 80273D38 00270C98 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80273D3C 00270C9C 7C 08 02 A6 */ mflr r0
/* 80273D40 00270CA0 90 01 00 64 */ stw r0, 0x64(r1)
/* 80273D44 00270CA4 BF 61 00 4C */ stmw r27, 0x4c(r1)
/* 80273D48 00270CA8 7C 9C 23 78 */ mr r28, r4
/* 80273D4C 00270CAC 7C 7B 1B 78 */ mr r27, r3
/* 80273D50 00270CB0 38 81 00 18 */ addi r4, r1, 0x18
/* 80273D54 00270CB4 A0 03 05 68 */ lhz r0, 0x568(r3)
/* 80273D58 00270CB8 7F 83 E3 78 */ mr r3, r28
/* 80273D5C 00270CBC B0 01 00 18 */ sth r0, 0x18(r1)
/* 80273D60 00270CC0 4B DD 88 45 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80273D64 00270CC4 7C 64 1B 78 */ mr r4, r3
/* 80273D68 00270CC8 38 61 00 24 */ addi r3, r1, 0x24
/* 80273D6C 00270CCC 4B E3 93 7D */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80273D70 00270CD0 80 BB 10 58 */ lwz r5, 0x1058(r27)
/* 80273D74 00270CD4 3B DB 10 5C */ addi r30, r27, 0x105c
/* 80273D78 00270CD8 83 A3 00 04 */ lwz r29, 4(r3)
/* 80273D7C 00270CDC 38 60 00 00 */ li r3, 0
/* 80273D80 00270CE0 2C 05 00 00 */ cmpwi r5, 0
/* 80273D84 00270CE4 40 81 00 40 */ ble lbl_80273DC4
/* 80273D88 00270CE8 2C 05 00 08 */ cmpwi r5, 8
/* 80273D8C 00270CEC 38 85 FF F8 */ addi r4, r5, -8
/* 80273D90 00270CF0 40 81 00 20 */ ble lbl_80273DB0
/* 80273D94 00270CF4 38 04 00 07 */ addi r0, r4, 7
/* 80273D98 00270CF8 54 00 E8 FE */ srwi r0, r0, 3
/* 80273D9C 00270CFC 7C 09 03 A6 */ mtctr r0
/* 80273DA0 00270D00 2C 04 00 00 */ cmpwi r4, 0
/* 80273DA4 00270D04 40 81 00 0C */ ble lbl_80273DB0
lbl_80273DA8:
/* 80273DA8 00270D08 38 63 00 08 */ addi r3, r3, 8
/* 80273DAC 00270D0C 42 00 FF FC */ bdnz lbl_80273DA8
lbl_80273DB0:
/* 80273DB0 00270D10 7C 03 28 50 */ subf r0, r3, r5
/* 80273DB4 00270D14 7C 09 03 A6 */ mtctr r0
/* 80273DB8 00270D18 7C 03 28 00 */ cmpw r3, r5
/* 80273DBC 00270D1C 40 80 00 08 */ bge lbl_80273DC4
lbl_80273DC0:
/* 80273DC0 00270D20 42 00 00 00 */ bdnz lbl_80273DC0
lbl_80273DC4:
/* 80273DC4 00270D24 38 00 00 00 */ li r0, 0
/* 80273DC8 00270D28 28 1D 00 00 */ cmplwi r29, 0
/* 80273DCC 00270D2C 90 1B 10 58 */ stw r0, 0x1058(r27)
/* 80273DD0 00270D30 41 82 01 2C */ beq lbl_80273EFC
/* 80273DD4 00270D34 90 01 00 2C */ stw r0, 0x2c(r1)
/* 80273DD8 00270D38 83 FD 00 2C */ lwz r31, 0x2c(r29)
/* 80273DDC 00270D3C 48 00 00 B4 */ b lbl_80273E90
lbl_80273DE0:
/* 80273DE0 00270D40 80 1F 00 00 */ lwz r0, 0(r31)
/* 80273DE4 00270D44 2C 00 00 0D */ cmpwi r0, 0xd
/* 80273DE8 00270D48 40 82 00 A4 */ bne lbl_80273E8C
/* 80273DEC 00270D4C 80 1F 00 08 */ lwz r0, 8(r31)
/* 80273DF0 00270D50 7F 84 E3 78 */ mr r4, r28
/* 80273DF4 00270D54 38 61 00 14 */ addi r3, r1, 0x14
/* 80273DF8 00270D58 38 A1 00 20 */ addi r5, r1, 0x20
/* 80273DFC 00270D5C 90 01 00 20 */ stw r0, 0x20(r1)
/* 80273E00 00270D60 4B DD 41 1D */ bl GetIdForScript__13CStateManagerCF9TEditorId
/* 80273E04 00270D64 A0 01 00 14 */ lhz r0, 0x14(r1)
/* 80273E08 00270D68 7F 83 E3 78 */ mr r3, r28
/* 80273E0C 00270D6C 38 81 00 10 */ addi r4, r1, 0x10
/* 80273E10 00270D70 B0 01 00 1C */ sth r0, 0x1c(r1)
/* 80273E14 00270D74 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80273E18 00270D78 4B DD 87 5D */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80273E1C 00270D7C 28 03 00 00 */ cmplwi r3, 0
/* 80273E20 00270D80 41 82 00 6C */ beq lbl_80273E8C
/* 80273E24 00270D84 88 03 00 30 */ lbz r0, 0x30(r3)
/* 80273E28 00270D88 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80273E2C 00270D8C 41 82 00 2C */ beq lbl_80273E58
/* 80273E30 00270D90 A0 1B 00 08 */ lhz r0, 8(r27)
/* 80273E34 00270D94 7F 86 E3 78 */ mr r6, r28
/* 80273E38 00270D98 38 A1 00 0C */ addi r5, r1, 0xc
/* 80273E3C 00270D9C 38 80 00 04 */ li r4, 4
/* 80273E40 00270DA0 B0 01 00 0C */ sth r0, 0xc(r1)
/* 80273E44 00270DA4 81 83 00 00 */ lwz r12, 0(r3)
/* 80273E48 00270DA8 B0 01 00 08 */ sth r0, 8(r1)
/* 80273E4C 00270DAC 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80273E50 00270DB0 7D 89 03 A6 */ mtctr r12
/* 80273E54 00270DB4 4E 80 04 21 */ bctrl
lbl_80273E58:
/* 80273E58 00270DB8 80 1B 10 58 */ lwz r0, 0x1058(r27)
/* 80273E5C 00270DBC 54 00 10 3A */ slwi r0, r0, 2
/* 80273E60 00270DC0 7C 7E 02 15 */ add. r3, r30, r0
/* 80273E64 00270DC4 41 82 00 0C */ beq lbl_80273E70
/* 80273E68 00270DC8 80 1F 00 08 */ lwz r0, 8(r31)
/* 80273E6C 00270DCC 90 03 00 00 */ stw r0, 0(r3)
lbl_80273E70:
/* 80273E70 00270DD0 80 7B 10 58 */ lwz r3, 0x1058(r27)
/* 80273E74 00270DD4 38 03 00 01 */ addi r0, r3, 1
/* 80273E78 00270DD8 90 1B 10 58 */ stw r0, 0x1058(r27)
/* 80273E7C 00270DDC 80 1B 10 58 */ lwz r0, 0x1058(r27)
/* 80273E80 00270DE0 20 00 00 04 */ subfic r0, r0, 4
/* 80273E84 00270DE4 2C 00 00 00 */ cmpwi r0, 0
/* 80273E88 00270DE8 40 81 00 20 */ ble lbl_80273EA8
lbl_80273E8C:
/* 80273E8C 00270DEC 3B FF 00 0C */ addi r31, r31, 0xc
lbl_80273E90:
/* 80273E90 00270DF0 80 1D 00 24 */ lwz r0, 0x24(r29)
/* 80273E94 00270DF4 80 7D 00 2C */ lwz r3, 0x2c(r29)
/* 80273E98 00270DF8 1C 00 00 0C */ mulli r0, r0, 0xc
/* 80273E9C 00270DFC 7C 03 02 14 */ add r0, r3, r0
/* 80273EA0 00270E00 7C 1F 00 40 */ cmplw r31, r0
/* 80273EA4 00270E04 40 82 FF 3C */ bne lbl_80273DE0
lbl_80273EA8:
/* 80273EA8 00270E08 80 A1 00 2C */ lwz r5, 0x2c(r1)
/* 80273EAC 00270E0C 38 60 00 00 */ li r3, 0
/* 80273EB0 00270E10 2C 05 00 00 */ cmpwi r5, 0
/* 80273EB4 00270E14 40 81 00 40 */ ble lbl_80273EF4
/* 80273EB8 00270E18 2C 05 00 08 */ cmpwi r5, 8
/* 80273EBC 00270E1C 38 85 FF F8 */ addi r4, r5, -8
/* 80273EC0 00270E20 40 81 00 20 */ ble lbl_80273EE0
/* 80273EC4 00270E24 38 04 00 07 */ addi r0, r4, 7
/* 80273EC8 00270E28 54 00 E8 FE */ srwi r0, r0, 3
/* 80273ECC 00270E2C 7C 09 03 A6 */ mtctr r0
/* 80273ED0 00270E30 2C 04 00 00 */ cmpwi r4, 0
/* 80273ED4 00270E34 40 81 00 0C */ ble lbl_80273EE0
lbl_80273ED8:
/* 80273ED8 00270E38 38 63 00 08 */ addi r3, r3, 8
/* 80273EDC 00270E3C 42 00 FF FC */ bdnz lbl_80273ED8
lbl_80273EE0:
/* 80273EE0 00270E40 7C 03 28 50 */ subf r0, r3, r5
/* 80273EE4 00270E44 7C 09 03 A6 */ mtctr r0
/* 80273EE8 00270E48 7C 03 28 00 */ cmpw r3, r5
/* 80273EEC 00270E4C 40 80 00 08 */ bge lbl_80273EF4
lbl_80273EF0:
/* 80273EF0 00270E50 42 00 00 00 */ bdnz lbl_80273EF0
lbl_80273EF4:
/* 80273EF4 00270E54 38 00 00 00 */ li r0, 0
/* 80273EF8 00270E58 90 01 00 2C */ stw r0, 0x2c(r1)
lbl_80273EFC:
/* 80273EFC 00270E5C BB 61 00 4C */ lmw r27, 0x4c(r1)
/* 80273F00 00270E60 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80273F04 00270E64 7C 08 03 A6 */ mtlr r0
/* 80273F08 00270E68 38 21 00 60 */ addi r1, r1, 0x60
/* 80273F0C 00270E6C 4E 80 00 20 */ blr
.global sub_80273f10
sub_80273f10:
/* 80273F10 00270E70 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80273F14 00270E74 7C 08 02 A6 */ mflr r0
/* 80273F18 00270E78 90 01 00 64 */ stw r0, 0x64(r1)
/* 80273F1C 00270E7C 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 80273F20 00270E80 93 C1 00 58 */ stw r30, 0x58(r1)
/* 80273F24 00270E84 7C 9E 23 78 */ mr r30, r4
/* 80273F28 00270E88 38 81 00 08 */ addi r4, r1, 8
/* 80273F2C 00270E8C 93 A1 00 54 */ stw r29, 0x54(r1)
/* 80273F30 00270E90 7C 7D 1B 78 */ mr r29, r3
/* 80273F34 00270E94 A0 03 0E AC */ lhz r0, 0xeac(r3)
/* 80273F38 00270E98 7F C3 F3 78 */ mr r3, r30
/* 80273F3C 00270E9C B0 01 00 08 */ sth r0, 8(r1)
/* 80273F40 00270EA0 4B DD 86 35 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80273F44 00270EA4 7C 64 1B 78 */ mr r4, r3
/* 80273F48 00270EA8 38 61 00 0C */ addi r3, r1, 0xc
/* 80273F4C 00270EAC 4B E3 87 99 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity"
/* 80273F50 00270EB0 83 E3 00 04 */ lwz r31, 4(r3)
/* 80273F54 00270EB4 28 1F 00 00 */ cmplwi r31, 0
/* 80273F58 00270EB8 41 82 00 E0 */ beq lbl_80274038
/* 80273F5C 00270EBC 80 BE 08 4C */ lwz r5, 0x84c(r30)
/* 80273F60 00270EC0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80273F64 00270EC4 38 83 66 A0 */ addi r4, r3, sZeroVector__9CVector3f@l
/* 80273F68 00270EC8 C0 1F 00 50 */ lfs f0, 0x50(r31)
/* 80273F6C 00270ECC C0 45 00 50 */ lfs f2, 0x50(r5)
/* 80273F70 00270ED0 38 61 00 38 */ addi r3, r1, 0x38
/* 80273F74 00270ED4 C0 65 00 60 */ lfs f3, 0x60(r5)
/* 80273F78 00270ED8 EC 82 00 28 */ fsubs f4, f2, f0
/* 80273F7C 00270EDC C0 3F 00 60 */ lfs f1, 0x60(r31)
/* 80273F80 00270EE0 C0 45 00 40 */ lfs f2, 0x40(r5)
/* 80273F84 00270EE4 C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 80273F88 00270EE8 EC 63 08 28 */ fsubs f3, f3, f1
/* 80273F8C 00270EEC C0 22 BC 5C */ lfs f1, lbl_805AD97C@sda21(r2)
/* 80273F90 00270EF0 EC 02 00 28 */ fsubs f0, f2, f0
/* 80273F94 00270EF4 D0 81 00 3C */ stfs f4, 0x3c(r1)
/* 80273F98 00270EF8 D0 61 00 40 */ stfs f3, 0x40(r1)
/* 80273F9C 00270EFC D0 01 00 38 */ stfs f0, 0x38(r1)
/* 80273FA0 00270F00 48 09 BF C5 */ bl close_enough__FRC9CVector3fRC9CVector3ff
/* 80273FA4 00270F04 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80273FA8 00270F08 40 82 00 80 */ bne lbl_80274028
/* 80273FAC 00270F0C 38 61 00 2C */ addi r3, r1, 0x2c
/* 80273FB0 00270F10 38 81 00 38 */ addi r4, r1, 0x38
/* 80273FB4 00270F14 48 0A 08 9D */ bl AsNormalized__9CVector3fCFv
/* 80273FB8 00270F18 C0 7D 00 48 */ lfs f3, 0x48(r29)
/* 80273FBC 00270F1C C0 A1 00 30 */ lfs f5, 0x30(r1)
/* 80273FC0 00270F20 C0 5D 00 38 */ lfs f2, 0x38(r29)
/* 80273FC4 00270F24 EC 03 01 72 */ fmuls f0, f3, f5
/* 80273FC8 00270F28 C0 E1 00 2C */ lfs f7, 0x2c(r1)
/* 80273FCC 00270F2C C0 9D 00 58 */ lfs f4, 0x58(r29)
/* 80273FD0 00270F30 C0 C1 00 34 */ lfs f6, 0x34(r1)
/* 80273FD4 00270F34 EC 22 01 FA */ fmadds f1, f2, f7, f0
/* 80273FD8 00270F38 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80273FDC 00270F3C D0 41 00 20 */ stfs f2, 0x20(r1)
/* 80273FE0 00270F40 EC 24 09 BA */ fmadds f1, f4, f6, f1
/* 80273FE4 00270F44 D0 61 00 24 */ stfs f3, 0x24(r1)
/* 80273FE8 00270F48 D0 81 00 28 */ stfs f4, 0x28(r1)
/* 80273FEC 00270F4C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80273FF0 00270F50 40 81 00 0C */ ble lbl_80273FFC
/* 80273FF4 00270F54 C0 02 BC 60 */ lfs f0, lbl_805AD980@sda21(r2)
/* 80273FF8 00270F58 48 00 00 08 */ b lbl_80274000
lbl_80273FFC:
/* 80273FFC 00270F5C C0 02 BC 40 */ lfs f0, lbl_805AD960@sda21(r2)
lbl_80274000:
/* 80274000 00270F60 EC 40 01 F2 */ fmuls f2, f0, f7
/* 80274004 00270F64 7F E3 FB 78 */ mr r3, r31
/* 80274008 00270F68 EC 20 01 72 */ fmuls f1, f0, f5
/* 8027400C 00270F6C 38 81 00 14 */ addi r4, r1, 0x14
/* 80274010 00270F70 EC 00 01 B2 */ fmuls f0, f0, f6
/* 80274014 00270F74 D0 41 00 14 */ stfs f2, 0x14(r1)
/* 80274018 00270F78 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 8027401C 00270F7C D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 80274020 00270F80 4B EA 6C 81 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f
/* 80274024 00270F84 48 00 00 14 */ b lbl_80274038
lbl_80274028:
/* 80274028 00270F88 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 8027402C 00270F8C 7F E3 FB 78 */ mr r3, r31
/* 80274030 00270F90 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l
/* 80274034 00270F94 4B EA 6C 6D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f
lbl_80274038:
/* 80274038 00270F98 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8027403C 00270F9C 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 80274040 00270FA0 83 C1 00 58 */ lwz r30, 0x58(r1)
/* 80274044 00270FA4 83 A1 00 54 */ lwz r29, 0x54(r1)
/* 80274048 00270FA8 7C 08 03 A6 */ mtlr r0
/* 8027404C 00270FAC 38 21 00 60 */ addi r1, r1, 0x60
/* 80274050 00270FB0 4E 80 00 20 */ blr
.global sub_80274054
sub_80274054:
/* 80274054 00270FB4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80274058 00270FB8 7C 08 02 A6 */ mflr r0
/* 8027405C 00270FBC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80274060 00270FC0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80274064 00270FC4 7C 9F 23 78 */ mr r31, r4
/* 80274068 00270FC8 38 81 00 08 */ addi r4, r1, 8
/* 8027406C 00270FCC A0 03 0E AC */ lhz r0, 0xeac(r3)
/* 80274070 00270FD0 7F E3 FB 78 */ mr r3, r31
/* 80274074 00270FD4 B0 01 00 08 */ sth r0, 8(r1)
/* 80274078 00270FD8 4B DD 84 FD */ bl ObjectById__13CStateManagerF9TUniqueId
/* 8027407C 00270FDC 7C 64 1B 78 */ mr r4, r3
/* 80274080 00270FE0 38 61 00 0C */ addi r3, r1, 0xc
/* 80274084 00270FE4 4B E3 BC 0D */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
/* 80274088 00270FE8 80 63 00 04 */ lwz r3, 4(r3)
/* 8027408C 00270FEC 28 03 00 00 */ cmplwi r3, 0
/* 80274090 00270FF0 41 82 00 28 */ beq lbl_802740B8
/* 80274094 00270FF4 80 BF 08 4C */ lwz r5, 0x84c(r31)
/* 80274098 00270FF8 38 81 00 14 */ addi r4, r1, 0x14
/* 8027409C 00270FFC C0 45 00 60 */ lfs f2, 0x60(r5)
/* 802740A0 00271000 C0 25 00 50 */ lfs f1, 0x50(r5)
/* 802740A4 00271004 C0 05 00 40 */ lfs f0, 0x40(r5)
/* 802740A8 00271008 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 802740AC 0027100C D0 21 00 18 */ stfs f1, 0x18(r1)
/* 802740B0 00271010 D0 41 00 1C */ stfs f2, 0x1c(r1)
/* 802740B4 00271014 4B DD ED D9 */ bl SetTranslation__6CActorFRC9CVector3f
lbl_802740B8:
/* 802740B8 00271018 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802740BC 0027101C 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802740C0 00271020 7C 08 03 A6 */ mtlr r0
/* 802740C4 00271024 38 21 00 30 */ addi r1, r1, 0x30
/* 802740C8 00271028 4E 80 00 20 */ blr
.global sub_802740cc
sub_802740cc:
/* 802740CC 0027102C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802740D0 00271030 7C 08 02 A6 */ mflr r0
/* 802740D4 00271034 90 01 00 14 */ stw r0, 0x14(r1)
/* 802740D8 00271038 A0 03 0E AC */ lhz r0, 0xeac(r3)
/* 802740DC 0027103C 7C 83 23 78 */ mr r3, r4
/* 802740E0 00271040 38 81 00 08 */ addi r4, r1, 8
/* 802740E4 00271044 B0 01 00 08 */ sth r0, 8(r1)
/* 802740E8 00271048 4B DD 81 85 */ bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 802740EC 0027104C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802740F0 00271050 7C 08 03 A6 */ mtlr r0
/* 802740F4 00271054 38 21 00 10 */ addi r1, r1, 0x10
/* 802740F8 00271058 4E 80 00 20 */ blr
.global sub_802740fc
sub_802740fc:
/* 802740FC 0027105C 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80274100 00271060 7C 08 02 A6 */ mflr r0
/* 80274104 00271064 90 01 00 74 */ stw r0, 0x74(r1)
/* 80274108 00271068 BF 61 00 5C */ stmw r27, 0x5c(r1)
/* 8027410C 0027106C 7C 7D 1B 78 */ mr r29, r3
/* 80274110 00271070 7C 9F 23 78 */ mr r31, r4
/* 80274114 00271074 38 61 00 0C */ addi r3, r1, 0xc
/* 80274118 00271078 4B DD 8F C5 */ bl AllocateUniqueId__13CStateManagerFv
/* 8027411C 0027107C A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80274120 00271080 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 80274124 00271084 38 63 56 18 */ addi r3, r3, lbl_803D5618@l
/* 80274128 00271088 3B 80 00 00 */ li r28, 0
/* 8027412C 0027108C B0 1D 0E AC */ sth r0, 0xeac(r29)
/* 80274130 00271090 38 83 02 20 */ addi r4, r3, 0x220
/* 80274134 00271094 3B 60 00 00 */ li r27, 0
/* 80274138 00271098 38 60 02 58 */ li r3, 0x258
/* 8027413C 0027109C 38 A0 00 00 */ li r5, 0
/* 80274140 002710A0 48 0A 17 2D */ bl __nw__FUlPCcPCc
/* 80274144 002710A4 7C 7E 1B 79 */ or. r30, r3, r3
/* 80274148 002710A8 41 82 00 70 */ beq lbl_802741B8
/* 8027414C 002710AC 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13)
/* 80274150 002710B0 3C 60 80 57 */ lis r3, NullConnectionList__7CEntity@ha
/* 80274154 002710B4 38 A3 D4 10 */ addi r5, r3, NullConnectionList__7CEntity@l
/* 80274158 002710B8 38 81 00 24 */ addi r4, r1, 0x24
/* 8027415C 002710BC 90 01 00 28 */ stw r0, 0x28(r1)
/* 80274160 002710C0 38 61 00 3C */ addi r3, r1, 0x3c
/* 80274164 002710C4 38 C1 00 28 */ addi r6, r1, 0x28
/* 80274168 002710C8 80 1D 00 04 */ lwz r0, 4(r29)
/* 8027416C 002710CC 90 01 00 20 */ stw r0, 0x20(r1)
/* 80274170 002710D0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80274174 002710D4 4B DD D3 11 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId"
/* 80274178 002710D8 3C 80 80 3D */ lis r4, lbl_803D5618@ha
/* 8027417C 002710DC 38 61 00 2C */ addi r3, r1, 0x2c
/* 80274180 002710E0 38 84 56 18 */ addi r4, r4, lbl_803D5618@l
/* 80274184 002710E4 3B 80 00 01 */ li r28, 1
/* 80274188 002710E8 38 84 02 27 */ addi r4, r4, 0x227
/* 8027418C 002710EC 4B D9 0B 2D */ bl string_l__4rstlFPCc
/* 80274190 002710F0 A0 1D 0E AC */ lhz r0, 0xeac(r29)
/* 80274194 002710F4 7F C3 F3 78 */ mr r3, r30
/* 80274198 002710F8 38 81 00 08 */ addi r4, r1, 8
/* 8027419C 002710FC 38 C1 00 2C */ addi r6, r1, 0x2c
/* 802741A0 00271100 B0 01 00 08 */ sth r0, 8(r1)
/* 802741A4 00271104 38 E1 00 3C */ addi r7, r1, 0x3c
/* 802741A8 00271108 3B 60 00 01 */ li r27, 1
/* 802741AC 0027110C 38 A0 00 01 */ li r5, 1
/* 802741B0 00271110 48 00 00 81 */ bl sub_80274230
/* 802741B4 00271114 7C 7E 1B 78 */ mr r30, r3
lbl_802741B8:
/* 802741B8 00271118 7F 60 07 75 */ extsb. r0, r27
/* 802741BC 0027111C 41 82 00 0C */ beq lbl_802741C8
/* 802741C0 00271120 38 61 00 2C */ addi r3, r1, 0x2c
/* 802741C4 00271124 48 0C 99 1D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_802741C8:
/* 802741C8 00271128 7F 80 07 75 */ extsb. r0, r28
/* 802741CC 0027112C 41 82 00 44 */ beq lbl_80274210
/* 802741D0 00271130 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802741D4 00271134 80 61 00 4C */ lwz r3, 0x4c(r1)
/* 802741D8 00271138 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802741DC 0027113C 90 61 00 14 */ stw r3, 0x14(r1)
/* 802741E0 00271140 7C 64 1B 78 */ mr r4, r3
/* 802741E4 00271144 7C 03 02 14 */ add r0, r3, r0
/* 802741E8 00271148 90 61 00 10 */ stw r3, 0x10(r1)
/* 802741EC 0027114C 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802741F0 00271150 90 01 00 18 */ stw r0, 0x18(r1)
/* 802741F4 00271154 48 00 00 08 */ b lbl_802741FC
lbl_802741F8:
/* 802741F8 00271158 38 84 00 0C */ addi r4, r4, 0xc
lbl_802741FC:
/* 802741FC 0027115C 7C 04 00 40 */ cmplw r4, r0
/* 80274200 00271160 40 82 FF F8 */ bne lbl_802741F8
/* 80274204 00271164 28 03 00 00 */ cmplwi r3, 0
/* 80274208 00271168 41 82 00 08 */ beq lbl_80274210
/* 8027420C 0027116C 48 0A 17 25 */ bl Free__7CMemoryFPCv
lbl_80274210:
/* 80274210 00271170 7F E3 FB 78 */ mr r3, r31
/* 80274214 00271174 7F C4 F3 78 */ mr r4, r30
/* 80274218 00271178 4B DD 8A DD */ bl AddObject__13CStateManagerFP7CEntity
/* 8027421C 0027117C BB 61 00 5C */ lmw r27, 0x5c(r1)
/* 80274220 00271180 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80274224 00271184 7C 08 03 A6 */ mtlr r0
/* 80274228 00271188 38 21 00 70 */ addi r1, r1, 0x70
/* 8027422C 0027118C 4E 80 00 20 */ blr
.global sub_80274230
sub_80274230:
/* 80274230 00271190 94 21 FE A0 */ stwu r1, -0x160(r1)
/* 80274234 00271194 7C 08 02 A6 */ mflr r0
/* 80274238 00271198 90 01 01 64 */ stw r0, 0x164(r1)
/* 8027423C 0027119C BF 41 01 48 */ stmw r26, 0x148(r1)
/* 80274240 002711A0 7C 7B 1B 78 */ mr r27, r3
/* 80274244 002711A4 7C 9C 23 78 */ mr r28, r4
/* 80274248 002711A8 7C BD 2B 78 */ mr r29, r5
/* 8027424C 002711AC 7C DE 33 78 */ mr r30, r6
/* 80274250 002711B0 7C FF 3B 78 */ mr r31, r7
/* 80274254 002711B4 38 61 00 F4 */ addi r3, r1, 0xf4
/* 80274258 002711B8 4B DC 65 4D */ bl CModelDataNull__10CModelDataFv
/* 8027425C 002711BC 38 61 00 8C */ addi r3, r1, 0x8c
/* 80274260 002711C0 4B DA 6B D9 */ bl None__16CActorParametersFv
/* 80274264 002711C4 4B DA 72 D1 */ bl Identity__10CAxisAngleFv
/* 80274268 002711C8 7C 7A 1B 78 */ mr r26, r3
/* 8027426C 002711CC 4B DA 72 C9 */ bl Identity__10CAxisAngleFv
/* 80274270 002711D0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80274274 002711D4 C4 64 66 A0 */ lfsu f3, sZeroVector__9CVector3f@l(r4)
/* 80274278 002711D8 C0 22 BC 30 */ lfs f1, lbl_805AD950@sda21(r2)
/* 8027427C 002711DC 38 00 00 00 */ li r0, 0
/* 80274280 002711E0 C0 84 00 04 */ lfs f4, 4(r4)
/* 80274284 002711E4 C0 A4 00 08 */ lfs f5, 8(r4)
/* 80274288 002711E8 38 80 00 01 */ li r4, 1
/* 8027428C 002711EC D0 61 00 58 */ stfs f3, 0x58(r1)
/* 80274290 002711F0 C0 02 BC 64 */ lfs f0, lbl_805AD984@sda21(r2)
/* 80274294 002711F4 D0 81 00 5C */ stfs f4, 0x5c(r1)
/* 80274298 002711F8 80 AD 98 50 */ lwz r5, lbl_805A8410@sda21(r13)
/* 8027429C 002711FC D0 A1 00 60 */ stfs f5, 0x60(r1)
/* 802742A0 00271200 C0 43 00 00 */ lfs f2, 0(r3)
/* 802742A4 00271204 D0 41 00 64 */ stfs f2, 0x64(r1)
/* 802742A8 00271208 C0 43 00 04 */ lfs f2, 4(r3)
/* 802742AC 0027120C D0 41 00 68 */ stfs f2, 0x68(r1)
/* 802742B0 00271210 C0 43 00 08 */ lfs f2, 8(r3)
/* 802742B4 00271214 38 60 00 00 */ li r3, 0
/* 802742B8 00271218 D0 41 00 6C */ stfs f2, 0x6c(r1)
/* 802742BC 0027121C D0 61 00 70 */ stfs f3, 0x70(r1)
/* 802742C0 00271220 D0 81 00 74 */ stfs f4, 0x74(r1)
/* 802742C4 00271224 D0 A1 00 78 */ stfs f5, 0x78(r1)
/* 802742C8 00271228 C0 5A 00 00 */ lfs f2, 0(r26)
/* 802742CC 0027122C D0 41 00 7C */ stfs f2, 0x7c(r1)
/* 802742D0 00271230 C0 5A 00 04 */ lfs f2, 4(r26)
/* 802742D4 00271234 D0 41 00 80 */ stfs f2, 0x80(r1)
/* 802742D8 00271238 C0 5A 00 08 */ lfs f2, 8(r26)
/* 802742DC 0027123C D0 41 00 84 */ stfs f2, 0x84(r1)
/* 802742E0 00271240 D0 21 00 88 */ stfs f1, 0x88(r1)
/* 802742E4 00271244 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 802742E8 00271248 D0 21 00 2C */ stfs f1, 0x2c(r1)
/* 802742EC 0027124C D0 21 00 30 */ stfs f1, 0x30(r1)
/* 802742F0 00271250 D0 01 00 34 */ stfs f0, 0x34(r1)
/* 802742F4 00271254 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 802742F8 00271258 D0 01 00 3C */ stfs f0, 0x3c(r1)
/* 802742FC 0027125C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80274300 00271260 90 01 00 20 */ stw r0, 0x20(r1)
/* 80274304 00271264 48 11 5B F1 */ bl __shl2i
/* 80274308 00271268 80 01 00 20 */ lwz r0, 0x20(r1)
/* 8027430C 0027126C 80 C1 00 24 */ lwz r6, 0x24(r1)
/* 80274310 00271270 7C 00 1B 78 */ or r0, r0, r3
/* 80274314 00271274 80 AD 98 54 */ lwz r5, lbl_805A8414@sda21(r13)
/* 80274318 00271278 7C C4 23 78 */ or r4, r6, r4
/* 8027431C 0027127C 90 01 00 20 */ stw r0, 0x20(r1)
/* 80274320 00271280 38 60 00 00 */ li r3, 0
/* 80274324 00271284 90 81 00 24 */ stw r4, 0x24(r1)
/* 80274328 00271288 38 80 00 01 */ li r4, 1
/* 8027432C 0027128C 48 11 5B C9 */ bl __shl2i
/* 80274330 00271290 80 01 00 20 */ lwz r0, 0x20(r1)
/* 80274334 00271294 38 A1 00 28 */ addi r5, r1, 0x28
/* 80274338 00271298 80 C1 00 24 */ lwz r6, 0x24(r1)
/* 8027433C 0027129C 7C 03 1B 78 */ or r3, r0, r3
/* 80274340 002712A0 A0 1C 00 00 */ lhz r0, 0(r28)
/* 80274344 002712A4 7C C6 23 78 */ or r6, r6, r4
/* 80274348 002712A8 90 61 00 20 */ stw r3, 0x20(r1)
/* 8027434C 002712AC 38 61 00 40 */ addi r3, r1, 0x40
/* 80274350 002712B0 38 81 00 34 */ addi r4, r1, 0x34
/* 80274354 002712B4 90 C1 00 24 */ stw r6, 0x24(r1)
/* 80274358 002712B8 B0 01 00 18 */ sth r0, 0x18(r1)
/* 8027435C 002712BC 48 0C 41 AD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f
/* 80274360 002712C0 90 61 00 08 */ stw r3, 8(r1)
/* 80274364 002712C4 38 81 00 58 */ addi r4, r1, 0x58
/* 80274368 002712C8 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha
/* 8027436C 002712CC 38 01 00 8C */ addi r0, r1, 0x8c
/* 80274370 002712D0 90 81 00 0C */ stw r4, 0xc(r1)
/* 80274374 002712D4 39 03 66 70 */ addi r8, r3, sIdentity__12CTransform4f@l
/* 80274378 002712D8 C0 22 BC 68 */ lfs f1, lbl_805AD988@sda21(r2)
/* 8027437C 002712DC 7F 63 DB 78 */ mr r3, r27
/* 80274380 002712E0 90 01 00 10 */ stw r0, 0x10(r1)
/* 80274384 002712E4 7F A5 EB 78 */ mr r5, r29
/* 80274388 002712E8 C0 42 BC 6C */ lfs f2, lbl_805AD98C@sda21(r2)
/* 8027438C 002712EC 7F C6 F3 78 */ mr r6, r30
/* 80274390 002712F0 7F E7 FB 78 */ mr r7, r31
/* 80274394 002712F4 38 81 00 18 */ addi r4, r1, 0x18
/* 80274398 002712F8 39 21 00 F4 */ addi r9, r1, 0xf4
/* 8027439C 002712FC 39 41 00 20 */ addi r10, r1, 0x20
/* 802743A0 00271300 4B EA 81 11 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff"
/* 802743A4 00271304 38 61 00 8C */ addi r3, r1, 0x8c
/* 802743A8 00271308 38 80 FF FF */ li r4, -1
/* 802743AC 0027130C 4B E9 22 5D */ bl __dt__16CLightParametersFv
/* 802743B0 00271310 38 61 00 F4 */ addi r3, r1, 0xf4
/* 802743B4 00271314 38 80 FF FF */ li r4, -1
/* 802743B8 00271318 4B EA 26 95 */ bl __dt__10CModelDataFv
/* 802743BC 0027131C 3C 80 80 3F */ lis r4, lbl_803EB0FC@ha
/* 802743C0 00271320 7F 63 DB 78 */ mr r3, r27
/* 802743C4 00271324 38 04 B0 FC */ addi r0, r4, lbl_803EB0FC@l
/* 802743C8 00271328 90 1B 00 00 */ stw r0, 0(r27)
/* 802743CC 0027132C BB 41 01 48 */ lmw r26, 0x148(r1)
/* 802743D0 00271330 80 01 01 64 */ lwz r0, 0x164(r1)
/* 802743D4 00271334 7C 08 03 A6 */ mtlr r0
/* 802743D8 00271338 38 21 01 60 */ addi r1, r1, 0x160
/* 802743DC 0027133C 4E 80 00 20 */ blr
.global sub_802743e0
sub_802743e0:
/* 802743E0 00271340 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802743E4 00271344 7C 08 02 A6 */ mflr r0
/* 802743E8 00271348 90 01 00 24 */ stw r0, 0x24(r1)
/* 802743EC 0027134C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802743F0 00271350 7C BF 2B 78 */ mr r31, r5
/* 802743F4 00271354 A0 03 10 44 */ lhz r0, 0x1044(r3)
/* 802743F8 00271358 7C 83 23 78 */ mr r3, r4
/* 802743FC 0027135C 38 81 00 08 */ addi r4, r1, 8
/* 80274400 00271360 B0 01 00 08 */ sth r0, 8(r1)
/* 80274404 00271364 4B DD 81 71 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80274408 00271368 7C 64 1B 78 */ mr r4, r3
/* 8027440C 0027136C 38 61 00 0C */ addi r3, r1, 0xc
/* 80274410 00271370 4B E3 8F ED */ bl "__ct__33TCastToPtr<19CHUDBillboardEffect>FP7CEntity"
/* 80274414 00271374 80 63 00 04 */ lwz r3, 4(r3)
/* 80274418 00271378 28 03 00 00 */ cmplwi r3, 0
/* 8027441C 0027137C 41 82 00 1C */ beq lbl_80274438
/* 80274420 00271380 80 63 00 E8 */ lwz r3, 0xe8(r3)
/* 80274424 00271384 7F E4 FB 78 */ mr r4, r31
/* 80274428 00271388 81 83 00 00 */ lwz r12, 0(r3)
/* 8027442C 0027138C 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80274430 00271390 7D 89 03 A6 */ mtctr r12
/* 80274434 00271394 4E 80 04 21 */ bctrl
lbl_80274438:
/* 80274438 00271398 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8027443C 0027139C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80274440 002713A0 7C 08 03 A6 */ mtlr r0
/* 80274444 002713A4 38 21 00 20 */ addi r1, r1, 0x20
/* 80274448 002713A8 4E 80 00 20 */ blr
.global sub_8027444c
sub_8027444c:
/* 8027444C 002713AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80274450 002713B0 7C 08 02 A6 */ mflr r0
/* 80274454 002713B4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80274458 002713B8 A0 03 10 44 */ lhz r0, 0x1044(r3)
/* 8027445C 002713BC 7C 83 23 78 */ mr r3, r4
/* 80274460 002713C0 38 81 00 08 */ addi r4, r1, 8
/* 80274464 002713C4 B0 01 00 08 */ sth r0, 8(r1)
/* 80274468 002713C8 4B DD 7E 05 */ bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 8027446C 002713CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80274470 002713D0 7C 08 03 A6 */ mtlr r0
/* 80274474 002713D4 38 21 00 10 */ addi r1, r1, 0x10
/* 80274478 002713D8 4E 80 00 20 */ blr
.global sub_8027447c
sub_8027447c:
/* 8027447C 002713DC 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 80274480 002713E0 7C 08 02 A6 */ mflr r0
/* 80274484 002713E4 90 01 00 84 */ stw r0, 0x84(r1)
/* 80274488 002713E8 BF 21 00 64 */ stmw r25, 0x64(r1)
/* 8027448C 002713EC 7C 7B 1B 78 */ mr r27, r3
/* 80274490 002713F0 7C 9E 23 78 */ mr r30, r4
/* 80274494 002713F4 38 61 00 14 */ addi r3, r1, 0x14
/* 80274498 002713F8 4B DD 8C 45 */ bl AllocateUniqueId__13CStateManagerFv
/* 8027449C 002713FC A0 01 00 14 */ lhz r0, 0x14(r1)
/* 802744A0 00271400 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 802744A4 00271404 38 63 56 18 */ addi r3, r3, lbl_803D5618@l
/* 802744A8 00271408 3B A0 00 00 */ li r29, 0
/* 802744AC 0027140C B0 1B 10 44 */ sth r0, 0x1044(r27)
/* 802744B0 00271410 38 83 02 20 */ addi r4, r3, 0x220
/* 802744B4 00271414 3B 40 00 00 */ li r26, 0
/* 802744B8 00271418 3B 20 00 00 */ li r25, 0
/* 802744BC 0027141C 38 60 01 10 */ li r3, 0x110
/* 802744C0 00271420 38 A0 00 00 */ li r5, 0
/* 802744C4 00271424 48 0A 13 A9 */ bl __nw__FUlPCcPCc
/* 802744C8 00271428 7C 7F 1B 79 */ or. r31, r3, r3
/* 802744CC 0027142C 41 82 00 D0 */ beq lbl_8027459C
/* 802744D0 00271430 38 00 00 01 */ li r0, 1
/* 802744D4 00271434 34 61 00 1C */ addic. r3, r1, 0x1c
/* 802744D8 00271438 98 01 00 24 */ stb r0, 0x24(r1)
/* 802744DC 0027143C 41 82 00 0C */ beq lbl_802744E8
/* 802744E0 00271440 38 9B 10 1C */ addi r4, r27, 0x101c
/* 802744E4 00271444 48 0C C9 C5 */ bl __ct__6CTokenFRC6CToken
lbl_802744E8:
/* 802744E8 00271448 38 00 00 00 */ li r0, 0
/* 802744EC 0027144C 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 802744F0 00271450 98 01 00 30 */ stb r0, 0x30(r1)
/* 802744F4 00271454 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 802744F8 00271458 38 61 00 34 */ addi r3, r1, 0x34
/* 802744FC 0027145C 3B 20 00 01 */ li r25, 1
/* 80274500 00271460 A0 1B 10 44 */ lhz r0, 0x1044(r27)
/* 80274504 00271464 38 84 02 27 */ addi r4, r4, 0x227
/* 80274508 00271468 3B 40 00 01 */ li r26, 1
/* 8027450C 0027146C B0 01 00 10 */ sth r0, 0x10(r1)
/* 80274510 00271470 4B D9 07 A9 */ bl string_l__4rstlFPCc
/* 80274514 00271474 C0 22 BC 30 */ lfs f1, lbl_805AD950@sda21(r2)
/* 80274518 00271478 38 61 00 18 */ addi r3, r1, 0x18
/* 8027451C 0027147C C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80274520 00271480 3B A0 00 01 */ li r29, 1
/* 80274524 00271484 FC 40 08 90 */ fmr f2, f1
/* 80274528 00271488 D0 21 00 44 */ stfs f1, 0x44(r1)
/* 8027452C 0027148C FC 60 08 90 */ fmr f3, f1
/* 80274530 00271490 FC 80 08 90 */ fmr f4, f1
/* 80274534 00271494 D0 21 00 48 */ stfs f1, 0x48(r1)
/* 80274538 00271498 D0 21 00 4C */ stfs f1, 0x4c(r1)
/* 8027453C 0027149C D0 01 00 50 */ stfs f0, 0x50(r1)
/* 80274540 002714A0 D0 01 00 54 */ stfs f0, 0x54(r1)
/* 80274544 002714A4 D0 01 00 58 */ stfs f0, 0x58(r1)
/* 80274548 002714A8 48 0E EE A5 */ bl __ct__6CColorFffff
/* 8027454C 002714AC 7C 7B 1B 78 */ mr r27, r3
/* 80274550 002714B0 7F C3 F3 78 */ mr r3, r30
/* 80274554 002714B4 4B EB BC D9 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager
/* 80274558 002714B8 7C 7C 1B 78 */ mr r28, r3
/* 8027455C 002714BC 7F C3 F3 78 */ mr r3, r30
/* 80274560 002714C0 4B EB BC 99 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager
/* 80274564 002714C4 38 61 00 44 */ addi r3, r1, 0x44
/* 80274568 002714C8 38 01 00 50 */ addi r0, r1, 0x50
/* 8027456C 002714CC 90 61 00 08 */ stw r3, 8(r1)
/* 80274570 002714D0 7F E3 FB 78 */ mr r3, r31
/* 80274574 002714D4 7F 89 E3 78 */ mr r9, r28
/* 80274578 002714D8 7F 6A DB 78 */ mr r10, r27
/* 8027457C 002714DC 90 01 00 0C */ stw r0, 0xc(r1)
/* 80274580 002714E0 38 81 00 1C */ addi r4, r1, 0x1c
/* 80274584 002714E4 38 A1 00 28 */ addi r5, r1, 0x28
/* 80274588 002714E8 38 C1 00 10 */ addi r6, r1, 0x10
/* 8027458C 002714EC 39 01 00 34 */ addi r8, r1, 0x34
/* 80274590 002714F0 38 E0 00 01 */ li r7, 1
/* 80274594 002714F4 4B EB B9 65 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f"
/* 80274598 002714F8 7C 7F 1B 78 */ mr r31, r3
lbl_8027459C:
/* 8027459C 002714FC 7F 20 07 75 */ extsb. r0, r25
/* 802745A0 00271500 41 82 00 28 */ beq lbl_802745C8
/* 802745A4 00271504 88 01 00 24 */ lbz r0, 0x24(r1)
/* 802745A8 00271508 28 00 00 00 */ cmplwi r0, 0
/* 802745AC 0027150C 41 82 00 14 */ beq lbl_802745C0
/* 802745B0 00271510 34 61 00 1C */ addic. r3, r1, 0x1c
/* 802745B4 00271514 41 82 00 0C */ beq lbl_802745C0
/* 802745B8 00271518 38 80 00 00 */ li r4, 0
/* 802745BC 0027151C 48 0C C8 85 */ bl __dt__6CTokenFv
lbl_802745C0:
/* 802745C0 00271520 38 00 00 00 */ li r0, 0
/* 802745C4 00271524 98 01 00 24 */ stb r0, 0x24(r1)
lbl_802745C8:
/* 802745C8 00271528 7F 40 07 75 */ extsb. r0, r26
/* 802745CC 0027152C 41 82 00 28 */ beq lbl_802745F4
/* 802745D0 00271530 88 01 00 30 */ lbz r0, 0x30(r1)
/* 802745D4 00271534 28 00 00 00 */ cmplwi r0, 0
/* 802745D8 00271538 41 82 00 14 */ beq lbl_802745EC
/* 802745DC 0027153C 34 61 00 28 */ addic. r3, r1, 0x28
/* 802745E0 00271540 41 82 00 0C */ beq lbl_802745EC
/* 802745E4 00271544 38 80 00 00 */ li r4, 0
/* 802745E8 00271548 48 0C C8 59 */ bl __dt__6CTokenFv
lbl_802745EC:
/* 802745EC 0027154C 38 00 00 00 */ li r0, 0
/* 802745F0 00271550 98 01 00 30 */ stb r0, 0x30(r1)
lbl_802745F4:
/* 802745F4 00271554 7F A0 07 75 */ extsb. r0, r29
/* 802745F8 00271558 41 82 00 0C */ beq lbl_80274604
/* 802745FC 0027155C 38 61 00 34 */ addi r3, r1, 0x34
/* 80274600 00271560 48 0C 94 E1 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_80274604:
/* 80274604 00271564 7F C3 F3 78 */ mr r3, r30
/* 80274608 00271568 7F E4 FB 78 */ mr r4, r31
/* 8027460C 0027156C 4B DD 86 E9 */ bl AddObject__13CStateManagerFP7CEntity
/* 80274610 00271570 88 1F 01 04 */ lbz r0, 0x104(r31)
/* 80274614 00271574 38 60 00 01 */ li r3, 1
/* 80274618 00271578 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b
/* 8027461C 0027157C 38 80 00 00 */ li r4, 0
/* 80274620 00271580 98 1F 01 04 */ stb r0, 0x104(r31)
/* 80274624 00271584 80 7F 00 E8 */ lwz r3, 0xe8(r31)
/* 80274628 00271588 81 83 00 00 */ lwz r12, 0(r3)
/* 8027462C 0027158C 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80274630 00271590 7D 89 03 A6 */ mtctr r12
/* 80274634 00271594 4E 80 04 21 */ bctrl
/* 80274638 00271598 BB 21 00 64 */ lmw r25, 0x64(r1)
/* 8027463C 0027159C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80274640 002715A0 7C 08 03 A6 */ mtlr r0
/* 80274644 002715A4 38 21 00 80 */ addi r1, r1, 0x80
/* 80274648 002715A8 4E 80 00 20 */ blr
.global sub_8027464c
sub_8027464c:
/* 8027464C 002715AC 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80274650 002715B0 7C 08 02 A6 */ mflr r0
/* 80274654 002715B4 90 01 00 74 */ stw r0, 0x74(r1)
/* 80274658 002715B8 DB E1 00 60 */ stfd f31, 0x60(r1)
/* 8027465C 002715BC F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0
/* 80274660 002715C0 DB C1 00 50 */ stfd f30, 0x50(r1)
/* 80274664 002715C4 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0
/* 80274668 002715C8 DB A1 00 40 */ stfd f29, 0x40(r1)
/* 8027466C 002715CC F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0
/* 80274670 002715D0 DB 81 00 30 */ stfd f28, 0x30(r1)
/* 80274674 002715D4 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0
/* 80274678 002715D8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8027467C 002715DC 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80274680 002715E0 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80274684 002715E4 7C 7D 1B 78 */ mr r29, r3
/* 80274688 002715E8 7C BE 2B 78 */ mr r30, r5
/* 8027468C 002715EC 38 61 00 10 */ addi r3, r1, 0x10
/* 80274690 002715F0 38 C0 00 0A */ li r6, 0xa
/* 80274694 002715F4 38 E0 00 06 */ li r7, 6
/* 80274698 002715F8 48 00 24 A5 */ bl sub_80276b3c
/* 8027469C 002715FC A0 01 00 10 */ lhz r0, 0x10(r1)
/* 802746A0 00271600 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 802746A4 00271604 3B E3 66 A0 */ addi r31, r3, sZeroVector__9CVector3f@l
/* 802746A8 00271608 C3 82 BC 08 */ lfs f28, lbl_805AD928@sda21(r2)
/* 802746AC 0027160C B0 01 00 14 */ sth r0, 0x14(r1)
/* 802746B0 00271610 C3 FF 00 00 */ lfs f31, 0(r31)
/* 802746B4 00271614 C3 DF 00 04 */ lfs f30, 4(r31)
/* 802746B8 00271618 C3 BF 00 08 */ lfs f29, 8(r31)
/* 802746BC 0027161C 48 00 00 64 */ b lbl_80274720
lbl_802746C0:
/* 802746C0 00271620 A0 01 00 14 */ lhz r0, 0x14(r1)
/* 802746C4 00271624 7F C3 F3 78 */ mr r3, r30
/* 802746C8 00271628 38 81 00 0C */ addi r4, r1, 0xc
/* 802746CC 0027162C B0 01 00 0C */ sth r0, 0xc(r1)
/* 802746D0 00271630 4B DD 7E D5 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 802746D4 00271634 7C 64 1B 78 */ mr r4, r3
/* 802746D8 00271638 38 61 00 18 */ addi r3, r1, 0x18
/* 802746DC 0027163C 4B E3 1E 71 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 802746E0 00271640 80 83 00 04 */ lwz r4, 4(r3)
/* 802746E4 00271644 28 04 00 00 */ cmplwi r4, 0
/* 802746E8 00271648 41 82 00 24 */ beq lbl_8027470C
/* 802746EC 0027164C C0 04 00 40 */ lfs f0, 0x40(r4)
/* 802746F0 00271650 C0 44 00 50 */ lfs f2, 0x50(r4)
/* 802746F4 00271654 C0 24 00 60 */ lfs f1, 0x60(r4)
/* 802746F8 00271658 EF FF 00 2A */ fadds f31, f31, f0
/* 802746FC 0027165C C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80274700 00271660 EF DE 10 2A */ fadds f30, f30, f2
/* 80274704 00271664 EF BD 08 2A */ fadds f29, f29, f1
/* 80274708 00271668 EF 9C 00 2A */ fadds f28, f28, f0
lbl_8027470C:
/* 8027470C 0027166C 7F C5 F3 78 */ mr r5, r30
/* 80274710 00271670 38 61 00 08 */ addi r3, r1, 8
/* 80274714 00271674 4B E0 2A 21 */ bl NextWaypoint__15CScriptWaypointCFRC13CStateManager
/* 80274718 00271678 A0 01 00 08 */ lhz r0, 8(r1)
/* 8027471C 0027167C B0 01 00 14 */ sth r0, 0x14(r1)
lbl_80274720:
/* 80274720 00271680 A0 61 00 14 */ lhz r3, 0x14(r1)
/* 80274724 00271684 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80274728 00271688 7C 03 00 40 */ cmplw r3, r0
/* 8027472C 0027168C 40 82 FF 94 */ bne lbl_802746C0
/* 80274730 00271690 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80274734 00271694 FC 1C 00 40 */ fcmpo cr0, f28, f0
/* 80274738 00271698 40 81 00 28 */ ble lbl_80274760
/* 8027473C 0027169C C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80274740 002716A0 EC 00 E0 24 */ fdivs f0, f0, f28
/* 80274744 002716A4 EC 40 07 F2 */ fmuls f2, f0, f31
/* 80274748 002716A8 EC 20 07 B2 */ fmuls f1, f0, f30
/* 8027474C 002716AC EC 00 07 72 */ fmuls f0, f0, f29
/* 80274750 002716B0 D0 5D 00 00 */ stfs f2, 0(r29)
/* 80274754 002716B4 D0 3D 00 04 */ stfs f1, 4(r29)
/* 80274758 002716B8 D0 1D 00 08 */ stfs f0, 8(r29)
/* 8027475C 002716BC 48 00 00 20 */ b lbl_8027477C
lbl_80274760:
/* 80274760 002716C0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80274764 002716C4 C0 03 66 A0 */ lfs f0, sZeroVector__9CVector3f@l(r3)
/* 80274768 002716C8 D0 1D 00 00 */ stfs f0, 0(r29)
/* 8027476C 002716CC C0 1F 00 04 */ lfs f0, 4(r31)
/* 80274770 002716D0 D0 1D 00 04 */ stfs f0, 4(r29)
/* 80274774 002716D4 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80274778 002716D8 D0 1D 00 08 */ stfs f0, 8(r29)
lbl_8027477C:
/* 8027477C 002716DC E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0
/* 80274780 002716E0 CB E1 00 60 */ lfd f31, 0x60(r1)
/* 80274784 002716E4 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0
/* 80274788 002716E8 CB C1 00 50 */ lfd f30, 0x50(r1)
/* 8027478C 002716EC E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0
/* 80274790 002716F0 CB A1 00 40 */ lfd f29, 0x40(r1)
/* 80274794 002716F4 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0
/* 80274798 002716F8 CB 81 00 30 */ lfd f28, 0x30(r1)
/* 8027479C 002716FC 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802747A0 00271700 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802747A4 00271704 80 01 00 74 */ lwz r0, 0x74(r1)
/* 802747A8 00271708 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802747AC 0027170C 7C 08 03 A6 */ mtlr r0
/* 802747B0 00271710 38 21 00 70 */ addi r1, r1, 0x70
/* 802747B4 00271714 4E 80 00 20 */ blr
.global sub_802747b8
sub_802747b8:
/* 802747B8 00271718 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 802747BC 0027171C 7C 08 02 A6 */ mflr r0
/* 802747C0 00271720 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 802747C4 00271724 DB E1 00 B0 */ stfd f31, 0xb0(r1)
/* 802747C8 00271728 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0
/* 802747CC 0027172C DB C1 00 A0 */ stfd f30, 0xa0(r1)
/* 802747D0 00271730 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0
/* 802747D4 00271734 BF 61 00 8C */ stmw r27, 0x8c(r1)
/* 802747D8 00271738 C0 65 00 04 */ lfs f3, 4(r5)
/* 802747DC 0027173C 7C 9C 23 78 */ mr r28, r4
/* 802747E0 00271740 C0 45 00 00 */ lfs f2, 0(r5)
/* 802747E4 00271744 7C 7B 1B 78 */ mr r27, r3
/* 802747E8 00271748 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802747EC 0027174C FF E0 08 90 */ fmr f31, f1
/* 802747F0 00271750 D0 41 00 5C */ stfs f2, 0x5c(r1)
/* 802747F4 00271754 38 60 00 00 */ li r3, 0
/* 802747F8 00271758 80 AD 98 D0 */ lwz r5, lbl_805A8490@sda21(r13)
/* 802747FC 0027175C 38 80 00 01 */ li r4, 1
/* 80274800 00271760 D0 61 00 60 */ stfs f3, 0x60(r1)
/* 80274804 00271764 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 80274808 00271768 83 FC 08 4C */ lwz r31, 0x84c(r28)
/* 8027480C 0027176C 48 11 56 E9 */ bl __shl2i
/* 80274810 00271770 80 AD 98 D4 */ lwz r5, lbl_805A8494@sda21(r13)
/* 80274814 00271774 7C 9D 23 78 */ mr r29, r4
/* 80274818 00271778 7C 7E 1B 78 */ mr r30, r3
/* 8027481C 0027177C 38 60 00 00 */ li r3, 0
/* 80274820 00271780 38 80 00 01 */ li r4, 1
/* 80274824 00271784 48 11 56 D1 */ bl __shl2i
/* 80274828 00271788 3C A0 80 5A */ lis r5, sDownVector__9CVector3f@ha
/* 8027482C 0027178C 7F BD 23 78 */ or r29, r29, r4
/* 80274830 00271790 38 A5 67 00 */ addi r5, r5, sDownVector__9CVector3f@l
/* 80274834 00271794 7F DE 1B 78 */ or r30, r30, r3
/* 80274838 00271798 39 00 00 00 */ li r8, 0
/* 8027483C 0027179C 38 00 00 01 */ li r0, 1
/* 80274840 002717A0 C0 82 BC 20 */ lfs f4, lbl_805AD940@sda21(r2)
/* 80274844 002717A4 7F 83 E3 78 */ mr r3, r28
/* 80274848 002717A8 C0 45 00 08 */ lfs f2, 8(r5)
/* 8027484C 002717AC 7F 67 DB 78 */ mr r7, r27
/* 80274850 002717B0 C0 25 00 00 */ lfs f1, 0(r5)
/* 80274854 002717B4 38 81 00 50 */ addi r4, r1, 0x50
/* 80274858 002717B8 C0 05 00 04 */ lfs f0, 4(r5)
/* 8027485C 002717BC EC A4 00 B2 */ fmuls f5, f4, f2
/* 80274860 002717C0 EC 64 00 72 */ fmuls f3, f4, f1
/* 80274864 002717C4 93 A1 00 6C */ stw r29, 0x6c(r1)
/* 80274868 002717C8 EC 44 00 32 */ fmuls f2, f4, f0
/* 8027486C 002717CC 38 A1 00 44 */ addi r5, r1, 0x44
/* 80274870 002717D0 93 C1 00 68 */ stw r30, 0x68(r1)
/* 80274874 002717D4 38 C1 00 68 */ addi r6, r1, 0x68
/* 80274878 002717D8 91 01 00 74 */ stw r8, 0x74(r1)
/* 8027487C 002717DC 91 01 00 70 */ stw r8, 0x70(r1)
/* 80274880 002717E0 90 01 00 78 */ stw r0, 0x78(r1)
/* 80274884 002717E4 C1 1F 00 60 */ lfs f8, 0x60(r31)
/* 80274888 002717E8 C0 FF 00 50 */ lfs f7, 0x50(r31)
/* 8027488C 002717EC C0 3F 00 40 */ lfs f1, 0x40(r31)
/* 80274890 002717F0 EC 88 28 2A */ fadds f4, f8, f5
/* 80274894 002717F4 EC C7 10 2A */ fadds f6, f7, f2
/* 80274898 002717F8 D0 61 00 2C */ stfs f3, 0x2c(r1)
/* 8027489C 002717FC EC 01 18 2A */ fadds f0, f1, f3
/* 802748A0 00271800 D0 41 00 30 */ stfs f2, 0x30(r1)
/* 802748A4 00271804 D0 A1 00 34 */ stfs f5, 0x34(r1)
/* 802748A8 00271808 D0 21 00 38 */ stfs f1, 0x38(r1)
/* 802748AC 0027180C D0 E1 00 3C */ stfs f7, 0x3c(r1)
/* 802748B0 00271810 D1 01 00 40 */ stfs f8, 0x40(r1)
/* 802748B4 00271814 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 802748B8 00271818 D0 C1 00 48 */ stfs f6, 0x48(r1)
/* 802748BC 0027181C D0 81 00 4C */ stfs f4, 0x4c(r1)
/* 802748C0 00271820 D0 21 00 50 */ stfs f1, 0x50(r1)
/* 802748C4 00271824 D0 E1 00 54 */ stfs f7, 0x54(r1)
/* 802748C8 00271828 D1 01 00 58 */ stfs f8, 0x58(r1)
/* 802748CC 0027182C 4B DD 85 71 */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor
/* 802748D0 00271830 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802748D4 00271834 40 82 00 5C */ bne lbl_80274930
/* 802748D8 00271838 C0 22 BC 70 */ lfs f1, lbl_805AD990@sda21(r2)
/* 802748DC 0027183C 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 802748E0 00271840 C0 1F 00 E8 */ lfs f0, 0xe8(r31)
/* 802748E4 00271844 C4 43 66 F4 */ lfsu f2, sUpVector__9CVector3f@l(r3)
/* 802748E8 00271848 EC 61 00 32 */ fmuls f3, f1, f0
/* 802748EC 0027184C C0 23 00 04 */ lfs f1, 4(r3)
/* 802748F0 00271850 C0 03 00 08 */ lfs f0, 8(r3)
/* 802748F4 00271854 EC 43 00 B2 */ fmuls f2, f3, f2
/* 802748F8 00271858 EC 23 00 72 */ fmuls f1, f3, f1
/* 802748FC 0027185C EC 03 00 32 */ fmuls f0, f3, f0
/* 80274900 00271860 D0 41 00 20 */ stfs f2, 0x20(r1)
/* 80274904 00271864 D0 21 00 24 */ stfs f1, 0x24(r1)
/* 80274908 00271868 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 8027490C 0027186C 4B DA 6C 29 */ bl Identity__10CAxisAngleFv
/* 80274910 00271870 7C 65 1B 78 */ mr r5, r3
/* 80274914 00271874 7F E3 FB 78 */ mr r3, r31
/* 80274918 00271878 38 81 00 20 */ addi r4, r1, 0x20
/* 8027491C 0027187C 4B EA 7A 7D */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle
/* 80274920 00271880 7F E3 FB 78 */ mr r3, r31
/* 80274924 00271884 7F 85 E3 78 */ mr r5, r28
/* 80274928 00271888 38 80 00 02 */ li r4, 2
/* 8027492C 0027188C 48 01 1A C1 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager
lbl_80274930:
/* 80274930 00271890 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80274934 00271894 C0 22 BC 5C */ lfs f1, lbl_805AD97C@sda21(r2)
/* 80274938 00271898 38 83 66 A0 */ addi r4, r3, sZeroVector__9CVector3f@l
/* 8027493C 0027189C 38 61 00 5C */ addi r3, r1, 0x5c
/* 80274940 002718A0 48 09 B6 25 */ bl close_enough__FRC9CVector3fRC9CVector3ff
/* 80274944 002718A4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80274948 002718A8 40 82 00 7C */ bne lbl_802749C4
/* 8027494C 002718AC C3 DF 00 E8 */ lfs f30, 0xe8(r31)
/* 80274950 002718B0 38 61 00 14 */ addi r3, r1, 0x14
/* 80274954 002718B4 38 81 00 5C */ addi r4, r1, 0x5c
/* 80274958 002718B8 48 09 FE F9 */ bl AsNormalized__9CVector3fCFv
/* 8027495C 002718BC C0 62 BC 74 */ lfs f3, lbl_805AD994@sda21(r2)
/* 80274960 002718C0 C0 41 00 14 */ lfs f2, 0x14(r1)
/* 80274964 002718C4 C0 21 00 18 */ lfs f1, 0x18(r1)
/* 80274968 002718C8 C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 8027496C 002718CC EC 43 00 B2 */ fmuls f2, f3, f2
/* 80274970 002718D0 EC 23 00 72 */ fmuls f1, f3, f1
/* 80274974 002718D4 EC 03 00 32 */ fmuls f0, f3, f0
/* 80274978 002718D8 EC 5E 00 B2 */ fmuls f2, f30, f2
/* 8027497C 002718DC EC 3E 00 72 */ fmuls f1, f30, f1
/* 80274980 002718E0 EC 1E 00 32 */ fmuls f0, f30, f0
/* 80274984 002718E4 EC 5F 00 B2 */ fmuls f2, f31, f2
/* 80274988 002718E8 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8027498C 002718EC EC 1F 00 32 */ fmuls f0, f31, f0
/* 80274990 002718F0 D0 41 00 08 */ stfs f2, 8(r1)
/* 80274994 002718F4 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80274998 002718F8 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 8027499C 002718FC 4B DA 6B 99 */ bl Identity__10CAxisAngleFv
/* 802749A0 00271900 7C 65 1B 78 */ mr r5, r3
/* 802749A4 00271904 7F E3 FB 78 */ mr r3, r31
/* 802749A8 00271908 38 81 00 08 */ addi r4, r1, 8
/* 802749AC 0027190C 4B EA 79 ED */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle
/* 802749B0 00271910 7F E3 FB 78 */ mr r3, r31
/* 802749B4 00271914 4B EA 67 C9 */ bl UseCollisionImpulses__13CPhysicsActorFv
/* 802749B8 00271918 C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 802749BC 0027191C EC 00 07 F2 */ fmuls f0, f0, f31
/* 802749C0 00271920 D0 1F 02 D4 */ stfs f0, 0x2d4(r31)
lbl_802749C4:
/* 802749C4 00271924 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0
/* 802749C8 00271928 CB E1 00 B0 */ lfd f31, 0xb0(r1)
/* 802749CC 0027192C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0
/* 802749D0 00271930 CB C1 00 A0 */ lfd f30, 0xa0(r1)
/* 802749D4 00271934 BB 61 00 8C */ lmw r27, 0x8c(r1)
/* 802749D8 00271938 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 802749DC 0027193C 7C 08 03 A6 */ mtlr r0
/* 802749E0 00271940 38 21 00 C0 */ addi r1, r1, 0xc0
/* 802749E4 00271944 4E 80 00 20 */ blr
.global sub_802749e8
sub_802749e8:
/* 802749E8 00271948 94 21 FE 40 */ stwu r1, -0x1c0(r1)
/* 802749EC 0027194C 7C 08 02 A6 */ mflr r0
/* 802749F0 00271950 90 01 01 C4 */ stw r0, 0x1c4(r1)
/* 802749F4 00271954 DB E1 01 B0 */ stfd f31, 0x1b0(r1)
/* 802749F8 00271958 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0
/* 802749FC 0027195C DB C1 01 A0 */ stfd f30, 0x1a0(r1)
/* 80274A00 00271960 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0
/* 80274A04 00271964 DB A1 01 90 */ stfd f29, 0x190(r1)
/* 80274A08 00271968 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0
/* 80274A0C 0027196C DB 81 01 80 */ stfd f28, 0x180(r1)
/* 80274A10 00271970 F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0
/* 80274A14 00271974 DB 61 01 70 */ stfd f27, 0x170(r1)
/* 80274A18 00271978 F3 61 01 78 */ psq_st f27, 376(r1), 0, qr0
/* 80274A1C 0027197C DB 41 01 60 */ stfd f26, 0x160(r1)
/* 80274A20 00271980 F3 41 01 68 */ psq_st f26, 360(r1), 0, qr0
/* 80274A24 00271984 DB 21 01 50 */ stfd f25, 0x150(r1)
/* 80274A28 00271988 F3 21 01 58 */ psq_st f25, 344(r1), 0, qr0
/* 80274A2C 0027198C DB 01 01 40 */ stfd f24, 0x140(r1)
/* 80274A30 00271990 F3 01 01 48 */ psq_st f24, 328(r1), 0, qr0
/* 80274A34 00271994 DA E1 01 30 */ stfd f23, 0x130(r1)
/* 80274A38 00271998 F2 E1 01 38 */ psq_st f23, 312(r1), 0, qr0
/* 80274A3C 0027199C DA C1 01 20 */ stfd f22, 0x120(r1)
/* 80274A40 002719A0 F2 C1 01 28 */ psq_st f22, 296(r1), 0, qr0
/* 80274A44 002719A4 DA A1 01 10 */ stfd f21, 0x110(r1)
/* 80274A48 002719A8 F2 A1 01 18 */ psq_st f21, 280(r1), 0, qr0
/* 80274A4C 002719AC DA 81 01 00 */ stfd f20, 0x100(r1)
/* 80274A50 002719B0 F2 81 01 08 */ psq_st f20, 264(r1), 0, qr0
/* 80274A54 002719B4 DA 61 00 F0 */ stfd f19, 0xf0(r1)
/* 80274A58 002719B8 F2 61 00 F8 */ psq_st f19, 248(r1), 0, qr0
/* 80274A5C 002719BC DA 41 00 E0 */ stfd f18, 0xe0(r1)
/* 80274A60 002719C0 F2 41 00 E8 */ psq_st f18, 232(r1), 0, qr0
/* 80274A64 002719C4 BF 41 00 C8 */ stmw r26, 0xc8(r1)
/* 80274A68 002719C8 FE 80 08 90 */ fmr f20, f1
/* 80274A6C 002719CC C0 25 00 08 */ lfs f1, 8(r5)
/* 80274A70 002719D0 C0 04 00 08 */ lfs f0, 8(r4)
/* 80274A74 002719D4 FE A0 10 90 */ fmr f21, f2
/* 80274A78 002719D8 C0 A5 00 04 */ lfs f5, 4(r5)
/* 80274A7C 002719DC 54 C0 18 38 */ slwi r0, r6, 3
/* 80274A80 002719E0 EC 41 00 28 */ fsubs f2, f1, f0
/* 80274A84 002719E4 7C 63 02 14 */ add r3, r3, r0
/* 80274A88 002719E8 C0 84 00 04 */ lfs f4, 4(r4)
/* 80274A8C 002719EC FE C0 18 90 */ fmr f22, f3
/* 80274A90 002719F0 C0 25 00 00 */ lfs f1, 0(r5)
/* 80274A94 002719F4 7C 9D 23 78 */ mr r29, r4
/* 80274A98 002719F8 C0 04 00 00 */ lfs f0, 0(r4)
/* 80274A9C 002719FC EC 85 20 28 */ fsubs f4, f5, f4
/* 80274AA0 00271A00 83 E3 0F F4 */ lwz r31, 0xff4(r3)
/* 80274AA4 00271A04 83 C3 10 08 */ lwz r30, 0x1008(r3)
/* 80274AA8 00271A08 EC 01 00 28 */ fsubs f0, f1, f0
/* 80274AAC 00271A0C 38 61 00 44 */ addi r3, r1, 0x44
/* 80274AB0 00271A10 D0 81 00 48 */ stfs f4, 0x48(r1)
/* 80274AB4 00271A14 D0 41 00 4C */ stfs f2, 0x4c(r1)
/* 80274AB8 00271A18 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 80274ABC 00271A1C 48 09 FD FD */ bl Magnitude__9CVector3fCFv
/* 80274AC0 00271A20 FE E0 08 90 */ fmr f23, f1
/* 80274AC4 00271A24 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80274AC8 00271A28 C3 C1 00 44 */ lfs f30, 0x44(r1)
/* 80274ACC 00271A2C 38 83 66 A0 */ addi r4, r3, sZeroVector__9CVector3f@l
/* 80274AD0 00271A30 C3 A1 00 48 */ lfs f29, 0x48(r1)
/* 80274AD4 00271A34 38 61 00 44 */ addi r3, r1, 0x44
/* 80274AD8 00271A38 C3 81 00 4C */ lfs f28, 0x4c(r1)
/* 80274ADC 00271A3C C0 22 BC 5C */ lfs f1, lbl_805AD97C@sda21(r2)
/* 80274AE0 00271A40 48 09 B4 85 */ bl close_enough__FRC9CVector3fRC9CVector3ff
/* 80274AE4 00271A44 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80274AE8 00271A48 40 82 03 00 */ bne lbl_80274DE8
/* 80274AEC 00271A4C 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80274AF0 00271A50 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 80274AF4 00271A54 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l
/* 80274AF8 00271A58 C3 7D 00 00 */ lfs f27, 0(r29)
/* 80274AFC 00271A5C C3 5D 00 04 */ lfs f26, 4(r29)
/* 80274B00 00271A60 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l
/* 80274B04 00271A64 C3 3D 00 08 */ lfs f25, 8(r29)
/* 80274B08 00271A68 38 61 00 50 */ addi r3, r1, 0x50
/* 80274B0C 00271A6C 38 A1 00 44 */ addi r5, r1, 0x44
/* 80274B10 00271A70 48 09 F0 01 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
/* 80274B14 00271A74 38 61 00 80 */ addi r3, r1, 0x80
/* 80274B18 00271A78 38 81 00 50 */ addi r4, r1, 0x50
/* 80274B1C 00271A7C 48 09 E0 59 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 80274B20 00271A80 C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 80274B24 00271A84 3C 00 43 30 */ lis r0, 0x4330
/* 80274B28 00271A88 C0 A2 BC 30 */ lfs f5, lbl_805AD950@sda21(r2)
/* 80274B2C 00271A8C 7F E3 FB 78 */ mr r3, r31
/* 80274B30 00271A90 90 01 00 B8 */ stw r0, 0xb8(r1)
/* 80274B34 00271A94 38 80 00 01 */ li r4, 1
/* 80274B38 00271A98 EC 00 2D FA */ fmadds f0, f0, f23, f5
/* 80274B3C 00271A9C C8 82 BC 78 */ lfd f4, lbl_805AD998@sda21(r2)
/* 80274B40 00271AA0 C0 41 00 44 */ lfs f2, 0x44(r1)
/* 80274B44 00271AA4 C0 21 00 48 */ lfs f1, 0x48(r1)
/* 80274B48 00271AA8 FC 60 00 1E */ fctiwz f3, f0
/* 80274B4C 00271AAC C0 01 00 4C */ lfs f0, 0x4c(r1)
/* 80274B50 00271AB0 D8 61 00 B0 */ stfd f3, 0xb0(r1)
/* 80274B54 00271AB4 83 61 00 B4 */ lwz r27, 0xb4(r1)
/* 80274B58 00271AB8 6F 60 80 00 */ xoris r0, r27, 0x8000
/* 80274B5C 00271ABC 90 01 00 BC */ stw r0, 0xbc(r1)
/* 80274B60 00271AC0 C8 61 00 B8 */ lfd f3, 0xb8(r1)
/* 80274B64 00271AC4 EC 63 20 28 */ fsubs f3, f3, f4
/* 80274B68 00271AC8 EC 65 18 24 */ fdivs f3, f5, f3
/* 80274B6C 00271ACC EC 42 00 F2 */ fmuls f2, f2, f3
/* 80274B70 00271AD0 EC 21 00 F2 */ fmuls f1, f1, f3
/* 80274B74 00271AD4 EC 00 00 F2 */ fmuls f0, f0, f3
/* 80274B78 00271AD8 D0 41 00 44 */ stfs f2, 0x44(r1)
/* 80274B7C 00271ADC D0 21 00 48 */ stfs f1, 0x48(r1)
/* 80274B80 00271AE0 D0 01 00 4C */ stfs f0, 0x4c(r1)
/* 80274B84 00271AE4 81 9F 00 00 */ lwz r12, 0(r31)
/* 80274B88 00271AE8 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80274B8C 00271AEC 7D 89 03 A6 */ mtctr r12
/* 80274B90 00271AF0 4E 80 04 21 */ bctrl
/* 80274B94 00271AF4 6F 60 80 00 */ xoris r0, r27, 0x8000
/* 80274B98 00271AF8 3F 80 43 30 */ lis r28, 0x4330
/* 80274B9C 00271AFC 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80274BA0 00271B00 3B 40 00 00 */ li r26, 0
/* 80274BA4 00271B04 CB E2 BC 78 */ lfd f31, lbl_805AD998@sda21(r2)
/* 80274BA8 00271B08 93 81 00 C0 */ stw r28, 0xc0(r1)
/* 80274BAC 00271B0C C0 22 BC 30 */ lfs f1, lbl_805AD950@sda21(r2)
/* 80274BB0 00271B10 C8 01 00 C0 */ lfd f0, 0xc0(r1)
/* 80274BB4 00271B14 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80274BB8 00271B18 EF 01 00 24 */ fdivs f24, f1, f0
/* 80274BBC 00271B1C 48 00 00 D8 */ b lbl_80274C94
lbl_80274BC0:
/* 80274BC0 00271B20 6F 40 80 00 */ xoris r0, r26, 0x8000
/* 80274BC4 00271B24 93 81 00 C0 */ stw r28, 0xc0(r1)
/* 80274BC8 00271B28 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80274BCC 00271B2C C8 01 00 C0 */ lfd f0, 0xc0(r1)
/* 80274BD0 00271B30 EE E0 F8 28 */ fsubs f23, f0, f31
/* 80274BD4 00271B34 EE 77 06 32 */ fmuls f19, f23, f24
/* 80274BD8 00271B38 EC 37 B0 2A */ fadds f1, f23, f22
/* 80274BDC 00271B3C 48 0A 01 69 */ bl FastCosR__5CMathFf
/* 80274BE0 00271B40 EC 13 00 72 */ fmuls f0, f19, f1
/* 80274BE4 00271B44 FC 20 B8 90 */ fmr f1, f23
/* 80274BE8 00271B48 EE F4 00 32 */ fmuls f23, f20, f0
/* 80274BEC 00271B4C 48 0A 02 05 */ bl FastSinR__5CMathFf
/* 80274BF0 00271B50 EC 13 00 72 */ fmuls f0, f19, f1
/* 80274BF4 00271B54 2C 1A 00 00 */ cmpwi r26, 0
/* 80274BF8 00271B58 EC 35 00 32 */ fmuls f1, f21, f0
/* 80274BFC 00271B5C 40 81 00 2C */ ble lbl_80274C28
/* 80274C00 00271B60 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80274C04 00271B64 38 61 00 20 */ addi r3, r1, 0x20
/* 80274C08 00271B68 D2 E1 00 2C */ stfs f23, 0x2c(r1)
/* 80274C0C 00271B6C 38 81 00 80 */ addi r4, r1, 0x80
/* 80274C10 00271B70 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80274C14 00271B74 D0 01 00 30 */ stfs f0, 0x30(r1)
/* 80274C18 00271B78 D0 21 00 34 */ stfs f1, 0x34(r1)
/* 80274C1C 00271B7C 48 09 DE CD */ bl __ml__12CTransform4fCFRC9CVector3f
/* 80274C20 00271B80 38 A1 00 20 */ addi r5, r1, 0x20
/* 80274C24 00271B84 48 00 00 0C */ b lbl_80274C30
lbl_80274C28:
/* 80274C28 00271B88 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80274C2C 00271B8C 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l
lbl_80274C30:
/* 80274C30 00271B90 C0 45 00 04 */ lfs f2, 4(r5)
/* 80274C34 00271B94 7F E3 FB 78 */ mr r3, r31
/* 80274C38 00271B98 C0 25 00 08 */ lfs f1, 8(r5)
/* 80274C3C 00271B9C 38 81 00 38 */ addi r4, r1, 0x38
/* 80274C40 00271BA0 C0 05 00 00 */ lfs f0, 0(r5)
/* 80274C44 00271BA4 EC 5A 10 2A */ fadds f2, f26, f2
/* 80274C48 00271BA8 EC 39 08 2A */ fadds f1, f25, f1
/* 80274C4C 00271BAC EC 1B 00 2A */ fadds f0, f27, f0
/* 80274C50 00271BB0 D0 41 00 3C */ stfs f2, 0x3c(r1)
/* 80274C54 00271BB4 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 80274C58 00271BB8 D0 21 00 40 */ stfs f1, 0x40(r1)
/* 80274C5C 00271BBC 81 9F 00 00 */ lwz r12, 0(r31)
/* 80274C60 00271BC0 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80274C64 00271BC4 7D 89 03 A6 */ mtctr r12
/* 80274C68 00271BC8 4E 80 04 21 */ bctrl
/* 80274C6C 00271BCC 7F E3 FB 78 */ mr r3, r31
/* 80274C70 00271BD0 38 80 00 01 */ li r4, 1
/* 80274C74 00271BD4 48 0A 7C 4D */ bl ForceParticleCreation__11CElementGenFi
/* 80274C78 00271BD8 C0 41 00 44 */ lfs f2, 0x44(r1)
/* 80274C7C 00271BDC 3B 5A 00 01 */ addi r26, r26, 1
/* 80274C80 00271BE0 C0 21 00 48 */ lfs f1, 0x48(r1)
/* 80274C84 00271BE4 C0 01 00 4C */ lfs f0, 0x4c(r1)
/* 80274C88 00271BE8 EF 7B 10 2A */ fadds f27, f27, f2
/* 80274C8C 00271BEC EF 5A 08 2A */ fadds f26, f26, f1
/* 80274C90 00271BF0 EF 39 00 2A */ fadds f25, f25, f0
lbl_80274C94:
/* 80274C94 00271BF4 7C 1A D8 00 */ cmpw r26, r27
/* 80274C98 00271BF8 41 80 FF 28 */ blt lbl_80274BC0
/* 80274C9C 00271BFC 7F E3 FB 78 */ mr r3, r31
/* 80274CA0 00271C00 38 80 00 00 */ li r4, 0
/* 80274CA4 00271C04 81 9F 00 00 */ lwz r12, 0(r31)
/* 80274CA8 00271C08 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80274CAC 00271C0C 7D 89 03 A6 */ mtctr r12
/* 80274CB0 00271C10 4E 80 04 21 */ bctrl
/* 80274CB4 00271C14 80 7E 01 60 */ lwz r3, 0x160(r30)
/* 80274CB8 00271C18 3F 80 43 30 */ lis r28, 0x4330
/* 80274CBC 00271C1C 93 81 00 C0 */ stw r28, 0xc0(r1)
/* 80274CC0 00271C20 3B E0 00 00 */ li r31, 0
/* 80274CC4 00271C24 38 63 FF FF */ addi r3, r3, -1
/* 80274CC8 00271C28 CB E2 BC 78 */ lfd f31, lbl_805AD998@sda21(r2)
/* 80274CCC 00271C2C 6C 60 80 00 */ xoris r0, r3, 0x8000
/* 80274CD0 00271C30 C0 22 BC 30 */ lfs f1, lbl_805AD950@sda21(r2)
/* 80274CD4 00271C34 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80274CD8 00271C38 54 60 38 30 */ slwi r0, r3, 7
/* 80274CDC 00271C3C 80 7E 01 68 */ lwz r3, 0x168(r30)
/* 80274CE0 00271C40 3B 40 00 00 */ li r26, 0
/* 80274CE4 00271C44 C8 01 00 C0 */ lfd f0, 0xc0(r1)
/* 80274CE8 00271C48 7C 63 02 14 */ add r3, r3, r0
/* 80274CEC 00271C4C C3 3D 00 00 */ lfs f25, 0(r29)
/* 80274CF0 00271C50 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80274CF4 00271C54 C3 5D 00 04 */ lfs f26, 4(r29)
/* 80274CF8 00271C58 C3 7D 00 08 */ lfs f27, 8(r29)
/* 80274CFC 00271C5C C3 03 00 30 */ lfs f24, 0x30(r3)
/* 80274D00 00271C60 EE E1 00 24 */ fdivs f23, f1, f0
/* 80274D04 00271C64 EF DE 05 F2 */ fmuls f30, f30, f23
/* 80274D08 00271C68 EF BD 05 F2 */ fmuls f29, f29, f23
/* 80274D0C 00271C6C EF 9C 05 F2 */ fmuls f28, f28, f23
/* 80274D10 00271C70 48 00 00 CC */ b lbl_80274DDC
lbl_80274D14:
/* 80274D14 00271C74 6F E0 80 00 */ xoris r0, r31, 0x8000
/* 80274D18 00271C78 93 81 00 C0 */ stw r28, 0xc0(r1)
/* 80274D1C 00271C7C 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80274D20 00271C80 C8 01 00 C0 */ lfd f0, 0xc0(r1)
/* 80274D24 00271C84 EE 60 F8 28 */ fsubs f19, f0, f31
/* 80274D28 00271C88 EE 53 05 F2 */ fmuls f18, f19, f23
/* 80274D2C 00271C8C EC 33 B0 2A */ fadds f1, f19, f22
/* 80274D30 00271C90 48 0A 00 15 */ bl FastCosR__5CMathFf
/* 80274D34 00271C94 EC 12 00 72 */ fmuls f0, f18, f1
/* 80274D38 00271C98 FC 20 98 90 */ fmr f1, f19
/* 80274D3C 00271C9C EE 74 00 32 */ fmuls f19, f20, f0
/* 80274D40 00271CA0 48 0A 00 B1 */ bl FastSinR__5CMathFf
/* 80274D44 00271CA4 EC 12 00 72 */ fmuls f0, f18, f1
/* 80274D48 00271CA8 2C 1F 00 00 */ cmpwi r31, 0
/* 80274D4C 00271CAC EC 35 00 32 */ fmuls f1, f21, f0
/* 80274D50 00271CB0 40 81 00 2C */ ble lbl_80274D7C
/* 80274D54 00271CB4 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80274D58 00271CB8 38 61 00 08 */ addi r3, r1, 8
/* 80274D5C 00271CBC D2 61 00 14 */ stfs f19, 0x14(r1)
/* 80274D60 00271CC0 38 81 00 80 */ addi r4, r1, 0x80
/* 80274D64 00271CC4 38 A1 00 14 */ addi r5, r1, 0x14
/* 80274D68 00271CC8 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 80274D6C 00271CCC D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 80274D70 00271CD0 48 09 DD 79 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 80274D74 00271CD4 38 61 00 08 */ addi r3, r1, 8
/* 80274D78 00271CD8 48 00 00 0C */ b lbl_80274D84
lbl_80274D7C:
/* 80274D7C 00271CDC 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80274D80 00271CE0 38 63 66 A0 */ addi r3, r3, sZeroVector__9CVector3f@l
lbl_80274D84:
/* 80274D84 00271CE4 C0 03 00 00 */ lfs f0, 0(r3)
/* 80274D88 00271CE8 38 81 00 80 */ addi r4, r1, 0x80
/* 80274D8C 00271CEC C0 43 00 04 */ lfs f2, 4(r3)
/* 80274D90 00271CF0 80 1E 01 68 */ lwz r0, 0x168(r30)
/* 80274D94 00271CF4 EC 19 00 2A */ fadds f0, f25, f0
/* 80274D98 00271CF8 C0 23 00 08 */ lfs f1, 8(r3)
/* 80274D9C 00271CFC EC 5A 10 2A */ fadds f2, f26, f2
/* 80274DA0 00271D00 7F 60 D2 14 */ add r27, r0, r26
/* 80274DA4 00271D04 D0 1B 00 0C */ stfs f0, 0xc(r27)
/* 80274DA8 00271D08 EC 1B 08 2A */ fadds f0, f27, f1
/* 80274DAC 00271D0C 38 7B 00 38 */ addi r3, r27, 0x38
/* 80274DB0 00271D10 D0 5B 00 10 */ stfs f2, 0x10(r27)
/* 80274DB4 00271D14 D0 1B 00 14 */ stfs f0, 0x14(r27)
/* 80274DB8 00271D18 48 09 DD 89 */ bl __as__12CTransform4fFRC12CTransform4f
/* 80274DBC 00271D1C C0 1B 00 30 */ lfs f0, 0x30(r27)
/* 80274DC0 00271D20 EF 39 F0 2A */ fadds f25, f25, f30
/* 80274DC4 00271D24 EF 5A E8 2A */ fadds f26, f26, f29
/* 80274DC8 00271D28 3B FF 00 01 */ addi r31, r31, 1
/* 80274DCC 00271D2C D3 1B 00 30 */ stfs f24, 0x30(r27)
/* 80274DD0 00271D30 FF 00 00 90 */ fmr f24, f0
/* 80274DD4 00271D34 EF 7B E0 2A */ fadds f27, f27, f28
/* 80274DD8 00271D38 3B 5A 00 80 */ addi r26, r26, 0x80
lbl_80274DDC:
/* 80274DDC 00271D3C 80 1E 01 60 */ lwz r0, 0x160(r30)
/* 80274DE0 00271D40 7C 1F 00 00 */ cmpw r31, r0
/* 80274DE4 00271D44 41 80 FF 30 */ blt lbl_80274D14
lbl_80274DE8:
/* 80274DE8 00271D48 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0
/* 80274DEC 00271D4C CB E1 01 B0 */ lfd f31, 0x1b0(r1)
/* 80274DF0 00271D50 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0
/* 80274DF4 00271D54 CB C1 01 A0 */ lfd f30, 0x1a0(r1)
/* 80274DF8 00271D58 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0
/* 80274DFC 00271D5C CB A1 01 90 */ lfd f29, 0x190(r1)
/* 80274E00 00271D60 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0
/* 80274E04 00271D64 CB 81 01 80 */ lfd f28, 0x180(r1)
/* 80274E08 00271D68 E3 61 01 78 */ psq_l f27, 376(r1), 0, qr0
/* 80274E0C 00271D6C CB 61 01 70 */ lfd f27, 0x170(r1)
/* 80274E10 00271D70 E3 41 01 68 */ psq_l f26, 360(r1), 0, qr0
/* 80274E14 00271D74 CB 41 01 60 */ lfd f26, 0x160(r1)
/* 80274E18 00271D78 E3 21 01 58 */ psq_l f25, 344(r1), 0, qr0
/* 80274E1C 00271D7C CB 21 01 50 */ lfd f25, 0x150(r1)
/* 80274E20 00271D80 E3 01 01 48 */ psq_l f24, 328(r1), 0, qr0
/* 80274E24 00271D84 CB 01 01 40 */ lfd f24, 0x140(r1)
/* 80274E28 00271D88 E2 E1 01 38 */ psq_l f23, 312(r1), 0, qr0
/* 80274E2C 00271D8C CA E1 01 30 */ lfd f23, 0x130(r1)
/* 80274E30 00271D90 E2 C1 01 28 */ psq_l f22, 296(r1), 0, qr0
/* 80274E34 00271D94 CA C1 01 20 */ lfd f22, 0x120(r1)
/* 80274E38 00271D98 E2 A1 01 18 */ psq_l f21, 280(r1), 0, qr0
/* 80274E3C 00271D9C CA A1 01 10 */ lfd f21, 0x110(r1)
/* 80274E40 00271DA0 E2 81 01 08 */ psq_l f20, 264(r1), 0, qr0
/* 80274E44 00271DA4 CA 81 01 00 */ lfd f20, 0x100(r1)
/* 80274E48 00271DA8 E2 61 00 F8 */ psq_l f19, 248(r1), 0, qr0
/* 80274E4C 00271DAC CA 61 00 F0 */ lfd f19, 0xf0(r1)
/* 80274E50 00271DB0 E2 41 00 E8 */ psq_l f18, 232(r1), 0, qr0
/* 80274E54 00271DB4 CA 41 00 E0 */ lfd f18, 0xe0(r1)
/* 80274E58 00271DB8 BB 41 00 C8 */ lmw r26, 0xc8(r1)
/* 80274E5C 00271DBC 80 01 01 C4 */ lwz r0, 0x1c4(r1)
/* 80274E60 00271DC0 7C 08 03 A6 */ mtlr r0
/* 80274E64 00271DC4 38 21 01 C0 */ addi r1, r1, 0x1c0
/* 80274E68 00271DC8 4E 80 00 20 */ blr
.global sub_80274e6c
sub_80274e6c:
/* 80274E6C 00271DCC 94 21 FE 20 */ stwu r1, -0x1e0(r1)
/* 80274E70 00271DD0 7C 08 02 A6 */ mflr r0
/* 80274E74 00271DD4 90 01 01 E4 */ stw r0, 0x1e4(r1)
/* 80274E78 00271DD8 DB E1 01 D0 */ stfd f31, 0x1d0(r1)
/* 80274E7C 00271DDC F3 E1 01 D8 */ psq_st f31, 472(r1), 0, qr0
/* 80274E80 00271DE0 DB C1 01 C0 */ stfd f30, 0x1c0(r1)
/* 80274E84 00271DE4 F3 C1 01 C8 */ psq_st f30, 456(r1), 0, qr0
/* 80274E88 00271DE8 DB A1 01 B0 */ stfd f29, 0x1b0(r1)
/* 80274E8C 00271DEC F3 A1 01 B8 */ psq_st f29, 440(r1), 0, qr0
/* 80274E90 00271DF0 DB 81 01 A0 */ stfd f28, 0x1a0(r1)
/* 80274E94 00271DF4 F3 81 01 A8 */ psq_st f28, 424(r1), 0, qr0
/* 80274E98 00271DF8 DB 61 01 90 */ stfd f27, 0x190(r1)
/* 80274E9C 00271DFC F3 61 01 98 */ psq_st f27, 408(r1), 0, qr0
/* 80274EA0 00271E00 DB 41 01 80 */ stfd f26, 0x180(r1)
/* 80274EA4 00271E04 F3 41 01 88 */ psq_st f26, 392(r1), 0, qr0
/* 80274EA8 00271E08 DB 21 01 70 */ stfd f25, 0x170(r1)
/* 80274EAC 00271E0C F3 21 01 78 */ psq_st f25, 376(r1), 0, qr0
/* 80274EB0 00271E10 DB 01 01 60 */ stfd f24, 0x160(r1)
/* 80274EB4 00271E14 F3 01 01 68 */ psq_st f24, 360(r1), 0, qr0
/* 80274EB8 00271E18 DA E1 01 50 */ stfd f23, 0x150(r1)
/* 80274EBC 00271E1C F2 E1 01 58 */ psq_st f23, 344(r1), 0, qr0
/* 80274EC0 00271E20 BE A1 01 24 */ stmw r21, 0x124(r1)
/* 80274EC4 00271E24 7C 77 1B 78 */ mr r23, r3
/* 80274EC8 00271E28 FF E0 08 90 */ fmr f31, f1
/* 80274ECC 00271E2C C3 02 BC 08 */ lfs f24, lbl_805AD928@sda21(r2)
/* 80274ED0 00271E30 7C 98 23 78 */ mr r24, r4
/* 80274ED4 00271E34 80 63 04 50 */ lwz r3, 0x450(r3)
/* 80274ED8 00271E38 4B EC 51 F5 */ bl GetPercentageFrozen__15CBodyControllerCFv
/* 80274EDC 00271E3C C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80274EE0 00271E40 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80274EE4 00271E44 40 81 00 30 */ ble lbl_80274F14
/* 80274EE8 00271E48 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80274EEC 00271E4C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80274EF0 00271E50 41 82 00 24 */ beq lbl_80274F14
/* 80274EF4 00271E54 7E E3 BB 78 */ mr r3, r23
/* 80274EF8 00271E58 7F 04 C3 78 */ mr r4, r24
/* 80274EFC 00271E5C 38 A0 00 00 */ li r5, 0
/* 80274F00 00271E60 48 00 06 AD */ bl sub_802755ac
/* 80274F04 00271E64 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80274F08 00271E68 38 60 00 01 */ li r3, 1
/* 80274F0C 00271E6C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 80274F10 00271E70 98 17 10 54 */ stb r0, 0x1054(r23)
lbl_80274F14:
/* 80274F14 00271E74 C0 02 BC 40 */ lfs f0, lbl_805AD960@sda21(r2)
/* 80274F18 00271E78 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 80274F1C 00271E7C C3 C2 BC 68 */ lfs f30, lbl_805AD988@sda21(r2)
/* 80274F20 00271E80 3B D7 10 30 */ addi r30, r23, 0x1030
/* 80274F24 00271E84 EF 20 07 F2 */ fmuls f25, f0, f31
/* 80274F28 00271E88 3B B7 10 3C */ addi r29, r23, 0x103c
/* 80274F2C 00271E8C 3B 77 10 04 */ addi r27, r23, 0x1004
/* 80274F30 00271E90 3B 57 0F F0 */ addi r26, r23, 0xff0
/* 80274F34 00271E94 3B E3 66 F4 */ addi r31, r3, sUpVector__9CVector3f@l
/* 80274F38 00271E98 3B 20 00 00 */ li r25, 0
/* 80274F3C 00271E9C 3B 82 BB DC */ addi r28, r2, lbl_805AD8FC@sda21
lbl_80274F40:
/* 80274F40 00271EA0 C0 1E 00 00 */ lfs f0, 0(r30)
/* 80274F44 00271EA4 38 61 00 70 */ addi r3, r1, 0x70
/* 80274F48 00271EA8 80 9C 00 00 */ lwz r4, 0(r28)
/* 80274F4C 00271EAC EC 00 F8 28 */ fsubs f0, f0, f31
/* 80274F50 00271EB0 D0 1E 00 00 */ stfs f0, 0(r30)
/* 80274F54 00271EB4 C0 1D 00 00 */ lfs f0, 0(r29)
/* 80274F58 00271EB8 EC 00 C8 2A */ fadds f0, f0, f25
/* 80274F5C 00271EBC D0 1D 00 00 */ stfs f0, 0(r29)
/* 80274F60 00271EC0 C0 1E 00 00 */ lfs f0, 0(r30)
/* 80274F64 00271EC4 EE E0 F0 24 */ fdivs f23, f0, f30
/* 80274F68 00271EC8 4B D8 FD 51 */ bl string_l__4rstlFPCc
/* 80274F6C 00271ECC 7E E4 BB 78 */ mr r4, r23
/* 80274F70 00271ED0 38 61 00 F0 */ addi r3, r1, 0xf0
/* 80274F74 00271ED4 38 A1 00 70 */ addi r5, r1, 0x70
/* 80274F78 00271ED8 4B E0 3A 01 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80274F7C 00271EDC C0 41 01 1C */ lfs f2, 0x11c(r1)
/* 80274F80 00271EE0 38 61 00 70 */ addi r3, r1, 0x70
/* 80274F84 00271EE4 C0 21 01 0C */ lfs f1, 0x10c(r1)
/* 80274F88 00271EE8 C0 01 00 FC */ lfs f0, 0xfc(r1)
/* 80274F8C 00271EEC D0 21 00 9C */ stfs f1, 0x9c(r1)
/* 80274F90 00271EF0 D0 01 00 98 */ stfs f0, 0x98(r1)
/* 80274F94 00271EF4 D0 41 00 A0 */ stfs f2, 0xa0(r1)
/* 80274F98 00271EF8 48 0C 8B 49 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80274F9C 00271EFC 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13)
/* 80274FA0 00271F00 38 61 00 64 */ addi r3, r1, 0x64
/* 80274FA4 00271F04 80 D8 08 4C */ lwz r6, 0x84c(r24)
/* 80274FA8 00271F08 38 81 00 58 */ addi r4, r1, 0x58
/* 80274FAC 00271F0C C3 45 02 7C */ lfs f26, 0x27c(r5)
/* 80274FB0 00271F10 C0 5F 00 00 */ lfs f2, 0(r31)
/* 80274FB4 00271F14 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80274FB8 00271F18 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80274FBC 00271F1C EC BA 00 B2 */ fmuls f5, f26, f2
/* 80274FC0 00271F20 C0 C6 00 40 */ lfs f6, 0x40(r6)
/* 80274FC4 00271F24 EC 5A 00 72 */ fmuls f2, f26, f1
/* 80274FC8 00271F28 C0 86 00 50 */ lfs f4, 0x50(r6)
/* 80274FCC 00271F2C EC 3A 00 32 */ fmuls f1, f26, f0
/* 80274FD0 00271F30 C0 66 00 60 */ lfs f3, 0x60(r6)
/* 80274FD4 00271F34 EF 66 28 2A */ fadds f27, f6, f5
/* 80274FD8 00271F38 C0 01 00 98 */ lfs f0, 0x98(r1)
/* 80274FDC 00271F3C EF 84 10 2A */ fadds f28, f4, f2
/* 80274FE0 00271F40 C0 41 00 9C */ lfs f2, 0x9c(r1)
/* 80274FE4 00271F44 EF A3 08 2A */ fadds f29, f3, f1
/* 80274FE8 00271F48 C0 21 00 A0 */ lfs f1, 0xa0(r1)
/* 80274FEC 00271F4C EC 42 E0 28 */ fsubs f2, f2, f28
/* 80274FF0 00271F50 EC 21 E8 28 */ fsubs f1, f1, f29
/* 80274FF4 00271F54 EC 00 D8 28 */ fsubs f0, f0, f27
/* 80274FF8 00271F58 D0 41 00 5C */ stfs f2, 0x5c(r1)
/* 80274FFC 00271F5C D0 01 00 58 */ stfs f0, 0x58(r1)
/* 80275000 00271F60 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 80275004 00271F64 48 09 F8 4D */ bl AsNormalized__9CVector3fCFv
/* 80275008 00271F68 C0 41 00 64 */ lfs f2, 0x64(r1)
/* 8027500C 00271F6C C0 21 00 68 */ lfs f1, 0x68(r1)
/* 80275010 00271F70 C0 01 00 6C */ lfs f0, 0x6c(r1)
/* 80275014 00271F74 EC 5A 00 B2 */ fmuls f2, f26, f2
/* 80275018 00271F78 EC 3A 00 72 */ fmuls f1, f26, f1
/* 8027501C 00271F7C 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80275020 00271F80 EC 1A 00 32 */ fmuls f0, f26, f0
/* 80275024 00271F84 EF 5B 10 2A */ fadds f26, f27, f2
/* 80275028 00271F88 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 8027502C 00271F8C EF 9C 08 2A */ fadds f28, f28, f1
/* 80275030 00271F90 EF 7D 00 2A */ fadds f27, f29, f0
/* 80275034 00271F94 41 82 01 80 */ beq lbl_802751B4
/* 80275038 00271F98 C0 22 BC 44 */ lfs f1, lbl_805AD964@sda21(r2)
/* 8027503C 00271F9C 38 81 00 14 */ addi r4, r1, 0x14
/* 80275040 00271FA0 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80275044 00271FA4 38 6D 98 A4 */ addi r3, r13, lbl_805A8464@sda21
/* 80275048 00271FA8 38 AD 98 A8 */ addi r5, r13, lbl_805A8468@sda21
/* 8027504C 00271FAC EC 01 05 F8 */ fmsubs f0, f1, f23, f0
/* 80275050 00271FB0 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80275054 00271FB4 4B D9 72 61 */ bl "Clamp<f>__5CMathFRCfRCfRCf"
/* 80275058 00271FB8 C0 02 BC 80 */ lfs f0, lbl_805AD9A0@sda21(r2)
/* 8027505C 00271FBC 38 81 00 10 */ addi r4, r1, 0x10
/* 80275060 00271FC0 C3 A3 00 00 */ lfs f29, 0(r3)
/* 80275064 00271FC4 38 6D 98 AC */ addi r3, r13, lbl_805A846C@sda21
/* 80275068 00271FC8 EC 00 B8 2A */ fadds f0, f0, f23
/* 8027506C 00271FCC 38 AD 98 B0 */ addi r5, r13, lbl_805A8470@sda21
/* 80275070 00271FD0 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80275074 00271FD4 4B D9 72 41 */ bl "Clamp<f>__5CMathFRCfRCfRCf"
/* 80275078 00271FD8 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 8027507C 00271FDC 7F 26 CB 78 */ mr r6, r25
/* 80275080 00271FE0 C0 41 00 9C */ lfs f2, 0x9c(r1)
/* 80275084 00271FE4 38 81 00 98 */ addi r4, r1, 0x98
/* 80275088 00271FE8 C0 21 00 A0 */ lfs f1, 0xa0(r1)
/* 8027508C 00271FEC EC A0 E8 28 */ fsubs f5, f0, f29
/* 80275090 00271FF0 C0 01 00 98 */ lfs f0, 0x98(r1)
/* 80275094 00271FF4 EC 62 07 72 */ fmuls f3, f2, f29
/* 80275098 00271FF8 EC 41 07 72 */ fmuls f2, f1, f29
/* 8027509C 00271FFC C2 E3 00 00 */ lfs f23, 0(r3)
/* 802750A0 00272000 EC 00 07 72 */ fmuls f0, f0, f29
/* 802750A4 00272004 EC 9C 19 7A */ fmadds f4, f28, f5, f3
/* 802750A8 00272008 C0 22 BC 44 */ lfs f1, lbl_805AD964@sda21(r2)
/* 802750AC 0027200C EC 7B 11 7A */ fmadds f3, f27, f5, f2
/* 802750B0 00272010 EC 5A 01 7A */ fmadds f2, f26, f5, f0
/* 802750B4 00272014 C0 02 BC 80 */ lfs f0, lbl_805AD9A0@sda21(r2)
/* 802750B8 00272018 D0 81 00 90 */ stfs f4, 0x90(r1)
/* 802750BC 0027201C EC 21 05 F2 */ fmuls f1, f1, f23
/* 802750C0 00272020 7E E3 BB 78 */ mr r3, r23
/* 802750C4 00272024 D0 41 00 8C */ stfs f2, 0x8c(r1)
/* 802750C8 00272028 EC 40 05 F2 */ fmuls f2, f0, f23
/* 802750CC 0027202C 38 A1 00 8C */ addi r5, r1, 0x8c
/* 802750D0 00272030 D0 61 00 94 */ stfs f3, 0x94(r1)
/* 802750D4 00272034 C0 7D 00 00 */ lfs f3, 0(r29)
/* 802750D8 00272038 4B FF F9 11 */ bl sub_802749e8
/* 802750DC 0027203C C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802750E0 00272040 FC 17 00 40 */ fcmpo cr0, f23, f0
/* 802750E4 00272044 4C 40 13 82 */ cror 2, 0, 2
/* 802750E8 00272048 40 82 00 98 */ bne lbl_80275180
/* 802750EC 0027204C C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 802750F0 00272050 38 60 00 00 */ li r3, 0
/* 802750F4 00272054 80 AD 98 B8 */ lwz r5, lbl_805A8478@sda21(r13)
/* 802750F8 00272058 38 80 00 01 */ li r4, 1
/* 802750FC 0027205C EF 18 00 2A */ fadds f24, f24, f0
/* 80275100 00272060 48 11 4D F5 */ bl __shl2i
/* 80275104 00272064 80 AD 98 BC */ lwz r5, lbl_805A847C@sda21(r13)
/* 80275108 00272068 7C 95 23 78 */ mr r21, r4
/* 8027510C 0027206C 7C 76 1B 78 */ mr r22, r3
/* 80275110 00272070 38 60 00 00 */ li r3, 0
/* 80275114 00272074 38 80 00 01 */ li r4, 1
/* 80275118 00272078 48 11 4D DD */ bl __shl2i
/* 8027511C 0027207C 80 AD 98 B4 */ lwz r5, lbl_805A8474@sda21(r13)
/* 80275120 00272080 7E B5 23 78 */ or r21, r21, r4
/* 80275124 00272084 7E D6 1B 78 */ or r22, r22, r3
/* 80275128 00272088 38 60 00 00 */ li r3, 0
/* 8027512C 0027208C 38 80 00 01 */ li r4, 1
/* 80275130 00272090 48 11 4D C5 */ bl __shl2i
/* 80275134 00272094 38 00 00 03 */ li r0, 3
/* 80275138 00272098 90 81 00 AC */ stw r4, 0xac(r1)
/* 8027513C 0027209C 7E E7 BB 78 */ mr r7, r23
/* 80275140 002720A0 38 81 00 98 */ addi r4, r1, 0x98
/* 80275144 002720A4 90 61 00 A8 */ stw r3, 0xa8(r1)
/* 80275148 002720A8 7F 03 C3 78 */ mr r3, r24
/* 8027514C 002720AC 38 A1 00 8C */ addi r5, r1, 0x8c
/* 80275150 002720B0 38 C1 00 A8 */ addi r6, r1, 0xa8
/* 80275154 002720B4 92 A1 00 B4 */ stw r21, 0xb4(r1)
/* 80275158 002720B8 92 C1 00 B0 */ stw r22, 0xb0(r1)
/* 8027515C 002720BC 90 01 00 B8 */ stw r0, 0xb8(r1)
/* 80275160 002720C0 4B DD 7C DD */ bl RayCollideWorld__13CStateManagerFRC9CVector3fRC9CVector3fRC15CMaterialFilterPC6CActor
/* 80275164 002720C4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80275168 002720C8 40 82 00 30 */ bne lbl_80275198
/* 8027516C 002720CC 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80275170 002720D0 38 60 00 01 */ li r3, 1
/* 80275174 002720D4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 80275178 002720D8 98 17 10 54 */ stb r0, 0x1054(r23)
/* 8027517C 002720DC 48 00 00 1C */ b lbl_80275198
lbl_80275180:
/* 80275180 002720E0 FC 1D 00 40 */ fcmpo cr0, f29, f0
/* 80275184 002720E4 4C 40 13 82 */ cror 2, 0, 2
/* 80275188 002720E8 40 82 00 10 */ bne lbl_80275198
/* 8027518C 002720EC C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80275190 002720F0 EC 00 B8 28 */ fsubs f0, f0, f23
/* 80275194 002720F4 EF 18 00 2A */ fadds f24, f24, f0
lbl_80275198:
/* 80275198 002720F8 80 77 10 28 */ lwz r3, 0x1028(r23)
/* 8027519C 002720FC 38 81 00 8C */ addi r4, r1, 0x8c
/* 802751A0 00272100 81 83 00 00 */ lwz r12, 0(r3)
/* 802751A4 00272104 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 802751A8 00272108 7D 89 03 A6 */ mtctr r12
/* 802751AC 0027210C 4E 80 04 21 */ bctrl
/* 802751B0 00272110 48 00 00 C0 */ b lbl_80275270
lbl_802751B4:
/* 802751B4 00272114 48 00 03 F1 */ bl sub_802755a4
/* 802751B8 00272118 2C 03 00 00 */ cmpwi r3, 0
/* 802751BC 0027211C 41 82 00 B4 */ beq lbl_80275270
/* 802751C0 00272120 C0 22 BC 84 */ lfs f1, lbl_805AD9A4@sda21(r2)
/* 802751C4 00272124 38 81 00 0C */ addi r4, r1, 0xc
/* 802751C8 00272128 C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 802751CC 0027212C 38 6D 98 C0 */ addi r3, r13, lbl_805A8480@sda21
/* 802751D0 00272130 38 AD 98 C4 */ addi r5, r13, lbl_805A8484@sda21
/* 802751D4 00272134 EC 01 05 F8 */ fmsubs f0, f1, f23, f0
/* 802751D8 00272138 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 802751DC 0027213C 4B D9 70 D9 */ bl "Clamp<f>__5CMathFRCfRCfRCf"
/* 802751E0 00272140 C0 02 BC 80 */ lfs f0, lbl_805AD9A0@sda21(r2)
/* 802751E4 00272144 38 81 00 08 */ addi r4, r1, 8
/* 802751E8 00272148 C3 A3 00 00 */ lfs f29, 0(r3)
/* 802751EC 0027214C 38 6D 98 C8 */ addi r3, r13, lbl_805A8488@sda21
/* 802751F0 00272150 EC 00 B8 2A */ fadds f0, f0, f23
/* 802751F4 00272154 38 AD 98 CC */ addi r5, r13, lbl_805A848C@sda21
/* 802751F8 00272158 D0 01 00 08 */ stfs f0, 8(r1)
/* 802751FC 0027215C 4B D9 70 B9 */ bl "Clamp<f>__5CMathFRCfRCfRCf"
/* 80275200 00272160 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80275204 00272164 EC BC 07 72 */ fmuls f5, f28, f29
/* 80275208 00272168 C0 23 00 00 */ lfs f1, 0(r3)
/* 8027520C 0027216C EC 7B 07 72 */ fmuls f3, f27, f29
/* 80275210 00272170 EC E0 E8 28 */ fsubs f7, f0, f29
/* 80275214 00272174 C0 C1 00 9C */ lfs f6, 0x9c(r1)
/* 80275218 00272178 C0 81 00 A0 */ lfs f4, 0xa0(r1)
/* 8027521C 0027217C EC 1A 07 72 */ fmuls f0, f26, f29
/* 80275220 00272180 C0 41 00 98 */ lfs f2, 0x98(r1)
/* 80275224 00272184 EC A6 29 FA */ fmadds f5, f6, f7, f5
/* 80275228 00272188 EC 64 19 FA */ fmadds f3, f4, f7, f3
/* 8027522C 0027218C 7E E3 BB 78 */ mr r3, r23
/* 80275230 00272190 EC 02 01 FA */ fmadds f0, f2, f7, f0
/* 80275234 00272194 D0 A1 00 84 */ stfs f5, 0x84(r1)
/* 80275238 00272198 FC 40 08 90 */ fmr f2, f1
/* 8027523C 0027219C 7F 26 CB 78 */ mr r6, r25
/* 80275240 002721A0 D0 01 00 80 */ stfs f0, 0x80(r1)
/* 80275244 002721A4 38 81 00 98 */ addi r4, r1, 0x98
/* 80275248 002721A8 38 A1 00 80 */ addi r5, r1, 0x80
/* 8027524C 002721AC D0 61 00 88 */ stfs f3, 0x88(r1)
/* 80275250 002721B0 C0 7D 00 00 */ lfs f3, 0(r29)
/* 80275254 002721B4 4B FF F7 95 */ bl sub_802749e8
/* 80275258 002721B8 80 7B 00 04 */ lwz r3, 4(r27)
/* 8027525C 002721BC FC 20 F8 90 */ fmr f1, f31
/* 80275260 002721C0 81 83 00 00 */ lwz r12, 0(r3)
/* 80275264 002721C4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80275268 002721C8 7D 89 03 A6 */ mtctr r12
/* 8027526C 002721CC 4E 80 04 21 */ bctrl
lbl_80275270:
/* 80275270 002721D0 80 7A 00 04 */ lwz r3, 4(r26)
/* 80275274 002721D4 FC 20 F8 90 */ fmr f1, f31
/* 80275278 002721D8 81 83 00 00 */ lwz r12, 0(r3)
/* 8027527C 002721DC 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80275280 002721E0 7D 89 03 A6 */ mtctr r12
/* 80275284 002721E4 4E 80 04 21 */ bctrl
/* 80275288 002721E8 3B 39 00 01 */ addi r25, r25, 1
/* 8027528C 002721EC 3B BD 00 04 */ addi r29, r29, 4
/* 80275290 002721F0 2C 19 00 02 */ cmpwi r25, 2
/* 80275294 002721F4 3B 9C 00 04 */ addi r28, r28, 4
/* 80275298 002721F8 3B 7B 00 08 */ addi r27, r27, 8
/* 8027529C 002721FC 3B 5A 00 08 */ addi r26, r26, 8
/* 802752A0 00272200 3B DE 00 04 */ addi r30, r30, 4
/* 802752A4 00272204 41 80 FC 9C */ blt lbl_80274F40
/* 802752A8 00272208 80 77 10 28 */ lwz r3, 0x1028(r23)
/* 802752AC 0027220C FC 20 F8 90 */ fmr f1, f31
/* 802752B0 00272210 81 83 00 00 */ lwz r12, 0(r3)
/* 802752B4 00272214 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802752B8 00272218 7D 89 03 A6 */ mtctr r12
/* 802752BC 0027221C 4E 80 04 21 */ bctrl
/* 802752C0 00272220 C0 22 BC 80 */ lfs f1, lbl_805AD9A0@sda21(r2)
/* 802752C4 00272224 C0 02 BC 88 */ lfs f0, lbl_805AD9A8@sda21(r2)
/* 802752C8 00272228 EF 21 06 32 */ fmuls f25, f1, f24
/* 802752CC 0027222C FC 19 00 40 */ fcmpo cr0, f25, f0
/* 802752D0 00272230 40 81 00 38 */ ble lbl_80275308
/* 802752D4 00272234 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 802752D8 00272238 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802752DC 0027223C 41 82 00 2C */ beq lbl_80275308
/* 802752E0 00272240 80 77 10 28 */ lwz r3, 0x1028(r23)
/* 802752E4 00272244 38 80 00 01 */ li r4, 1
/* 802752E8 00272248 81 83 00 00 */ lwz r12, 0(r3)
/* 802752EC 0027224C 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 802752F0 00272250 7D 89 03 A6 */ mtctr r12
/* 802752F4 00272254 4E 80 04 21 */ bctrl
/* 802752F8 00272258 7E E3 BB 78 */ mr r3, r23
/* 802752FC 0027225C 7F 04 C3 78 */ mr r4, r24
/* 80275300 00272260 38 A0 00 01 */ li r5, 1
/* 80275304 00272264 4B FF F0 DD */ bl sub_802743e0
lbl_80275308:
/* 80275308 00272268 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 8027530C 0027226C C0 02 BC 8C */ lfs f0, lbl_805AD9AC@sda21(r2)
/* 80275310 00272270 EC 38 08 28 */ fsubs f1, f24, f1
/* 80275314 00272274 FC 20 0A 10 */ fabs f1, f1
/* 80275318 00272278 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8027531C 0027227C 41 80 02 2C */ blt lbl_80275548
/* 80275320 00272280 80 78 08 4C */ lwz r3, 0x84c(r24)
/* 80275324 00272284 80 03 02 F8 */ lwz r0, 0x2f8(r3)
/* 80275328 00272288 2C 00 00 01 */ cmpwi r0, 1
/* 8027532C 0027228C 40 82 00 48 */ bne lbl_80275374
/* 80275330 00272290 80 63 07 68 */ lwz r3, 0x768(r3)
/* 80275334 00272294 88 03 1D E4 */ lbz r0, 0x1de4(r3)
/* 80275338 00272298 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 8027533C 0027229C 41 82 00 14 */ beq lbl_80275350
/* 80275340 002722A0 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80275344 002722A4 38 60 00 01 */ li r3, 1
/* 80275348 002722A8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 8027534C 002722AC 98 17 10 54 */ stb r0, 0x1054(r23)
lbl_80275350:
/* 80275350 002722B0 80 78 08 4C */ lwz r3, 0x84c(r24)
/* 80275354 002722B4 4B D9 B9 05 */ bl GetAttachedActorStruggle__7CPlayerCFv
/* 80275358 002722B8 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 8027535C 002722BC FC 00 08 00 */ fcmpu cr0, f0, f1
/* 80275360 002722C0 40 82 00 14 */ bne lbl_80275374
/* 80275364 002722C4 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80275368 002722C8 38 60 00 01 */ li r3, 1
/* 8027536C 002722CC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 80275370 002722D0 98 17 10 54 */ stb r0, 0x1054(r23)
lbl_80275374:
/* 80275374 002722D4 83 38 08 4C */ lwz r25, 0x84c(r24)
/* 80275378 002722D8 38 61 00 48 */ addi r3, r1, 0x48
/* 8027537C 002722DC 80 82 BB E8 */ lwz r4, lbl_805AD908@sda21(r2)
/* 80275380 002722E0 4B D8 F9 39 */ bl string_l__4rstlFPCc
/* 80275384 002722E4 7E E4 BB 78 */ mr r4, r23
/* 80275388 002722E8 38 61 00 C0 */ addi r3, r1, 0xc0
/* 8027538C 002722EC 38 A1 00 48 */ addi r5, r1, 0x48
/* 80275390 002722F0 4B E0 35 E9 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80275394 002722F4 C3 61 00 EC */ lfs f27, 0xec(r1)
/* 80275398 002722F8 38 61 00 48 */ addi r3, r1, 0x48
/* 8027539C 002722FC C3 41 00 DC */ lfs f26, 0xdc(r1)
/* 802753A0 00272300 C2 E1 00 CC */ lfs f23, 0xcc(r1)
/* 802753A4 00272304 48 0C 87 3D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802753A8 00272308 C0 59 00 50 */ lfs f2, 0x50(r25)
/* 802753AC 0027230C 38 61 00 3C */ addi r3, r1, 0x3c
/* 802753B0 00272310 C0 39 00 60 */ lfs f1, 0x60(r25)
/* 802753B4 00272314 38 81 00 30 */ addi r4, r1, 0x30
/* 802753B8 00272318 C0 19 00 40 */ lfs f0, 0x40(r25)
/* 802753BC 0027231C EC 5A 10 28 */ fsubs f2, f26, f2
/* 802753C0 00272320 EC 3B 08 28 */ fsubs f1, f27, f1
/* 802753C4 00272324 EC 17 00 28 */ fsubs f0, f23, f0
/* 802753C8 00272328 D0 41 00 34 */ stfs f2, 0x34(r1)
/* 802753CC 0027232C D0 01 00 30 */ stfs f0, 0x30(r1)
/* 802753D0 00272330 D0 21 00 38 */ stfs f1, 0x38(r1)
/* 802753D4 00272334 48 09 F4 7D */ bl AsNormalized__9CVector3fCFv
/* 802753D8 00272338 80 19 02 F8 */ lwz r0, 0x2f8(r25)
/* 802753DC 0027233C C3 61 00 3C */ lfs f27, 0x3c(r1)
/* 802753E0 00272340 2C 00 00 01 */ cmpwi r0, 1
/* 802753E4 00272344 C3 81 00 40 */ lfs f28, 0x40(r1)
/* 802753E8 00272348 C3 A1 00 44 */ lfs f29, 0x44(r1)
/* 802753EC 0027234C 40 82 00 0C */ bne lbl_802753F8
/* 802753F0 00272350 C3 42 BC 90 */ lfs f26, lbl_805AD9B0@sda21(r2)
/* 802753F4 00272354 48 00 00 1C */ b lbl_80275410
lbl_802753F8:
/* 802753F8 00272358 80 19 03 04 */ lwz r0, 0x304(r25)
/* 802753FC 0027235C 2C 00 00 00 */ cmpwi r0, 0
/* 80275400 00272360 40 82 00 0C */ bne lbl_8027540C
/* 80275404 00272364 C3 42 BC 94 */ lfs f26, lbl_805AD9B4@sda21(r2)
/* 80275408 00272368 48 00 00 08 */ b lbl_80275410
lbl_8027540C:
/* 8027540C 0027236C C3 42 BC 98 */ lfs f26, lbl_805AD9B8@sda21(r2)
lbl_80275410:
/* 80275410 00272370 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80275414 00272374 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 80275418 00272378 41 82 00 10 */ beq lbl_80275428
/* 8027541C 0027237C C0 02 BC 50 */ lfs f0, lbl_805AD970@sda21(r2)
/* 80275420 00272380 FC 18 00 40 */ fcmpo cr0, f24, f0
/* 80275424 00272384 41 81 00 14 */ bgt lbl_80275438
lbl_80275428:
/* 80275428 00272388 C0 37 10 48 */ lfs f1, 0x1048(r23)
/* 8027542C 0027238C C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80275430 00272390 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80275434 00272394 40 81 00 AC */ ble lbl_802754E0
lbl_80275438:
/* 80275438 00272398 28 00 00 00 */ cmplwi r0, 0
/* 8027543C 0027239C C2 F9 00 E8 */ lfs f23, 0xe8(r25)
/* 80275440 002723A0 C3 02 96 A0 */ lfs f24, skGravityConstant__13CPhysicsActor@sda21(r2)
/* 80275444 002723A4 41 82 00 28 */ beq lbl_8027546C
/* 80275448 002723A8 C0 02 BC 9C */ lfs f0, lbl_805AD9BC@sda21(r2)
/* 8027544C 002723AC 38 60 00 00 */ li r3, 0
/* 80275450 002723B0 88 17 10 54 */ lbz r0, 0x1054(r23)
/* 80275454 002723B4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80275458 002723B8 EC 20 C0 24 */ fdivs f1, f0, f24
/* 8027545C 002723BC 98 17 10 54 */ stb r0, 0x1054(r23)
/* 80275460 002723C0 48 0A 00 A1 */ bl SqrtF__5CMathFf
/* 80275464 002723C4 D0 37 10 48 */ stfs f1, 0x1048(r23)
/* 80275468 002723C8 48 00 00 10 */ b lbl_80275478
lbl_8027546C:
/* 8027546C 002723CC C0 17 10 48 */ lfs f0, 0x1048(r23)
/* 80275470 002723D0 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80275474 002723D4 D0 17 10 48 */ stfs f0, 0x1048(r23)
lbl_80275478:
/* 80275478 002723D8 C0 02 BC 9C */ lfs f0, lbl_805AD9BC@sda21(r2)
/* 8027547C 002723DC EC 20 06 32 */ fmuls f1, f0, f24
/* 80275480 002723E0 48 0A 00 81 */ bl SqrtF__5CMathFf
/* 80275484 002723E4 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 80275488 002723E8 EC 77 00 72 */ fmuls f3, f23, f1
/* 8027548C 002723EC C0 5F 00 04 */ lfs f2, 4(r31)
/* 80275490 002723F0 C0 3F 00 08 */ lfs f1, 8(r31)
/* 80275494 002723F4 C0 03 66 F4 */ lfs f0, sUpVector__9CVector3f@l(r3)
/* 80275498 002723F8 EC 43 00 B2 */ fmuls f2, f3, f2
/* 8027549C 002723FC EC 23 00 72 */ fmuls f1, f3, f1
/* 802754A0 00272400 EC 03 00 32 */ fmuls f0, f3, f0
/* 802754A4 00272404 EC 5F 00 B2 */ fmuls f2, f31, f2
/* 802754A8 00272408 EC 3F 00 72 */ fmuls f1, f31, f1
/* 802754AC 0027240C EC 1F 00 32 */ fmuls f0, f31, f0
/* 802754B0 00272410 D0 41 00 28 */ stfs f2, 0x28(r1)
/* 802754B4 00272414 D0 01 00 24 */ stfs f0, 0x24(r1)
/* 802754B8 00272418 D0 21 00 2C */ stfs f1, 0x2c(r1)
/* 802754BC 0027241C 4B DA 60 79 */ bl Identity__10CAxisAngleFv
/* 802754C0 00272420 7C 65 1B 78 */ mr r5, r3
/* 802754C4 00272424 7F 23 CB 78 */ mr r3, r25
/* 802754C8 00272428 38 81 00 24 */ addi r4, r1, 0x24
/* 802754CC 0027242C 4B EA 6E CD */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle
/* 802754D0 00272430 7F 23 CB 78 */ mr r3, r25
/* 802754D4 00272434 7F 05 C3 78 */ mr r5, r24
/* 802754D8 00272438 38 80 00 02 */ li r4, 2
/* 802754DC 0027243C 48 01 0F 11 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager
lbl_802754E0:
/* 802754E0 00272440 C0 19 00 E8 */ lfs f0, 0xe8(r25)
/* 802754E4 00272444 EC 40 06 F2 */ fmuls f2, f0, f27
/* 802754E8 00272448 EC 20 07 32 */ fmuls f1, f0, f28
/* 802754EC 0027244C EC 00 07 72 */ fmuls f0, f0, f29
/* 802754F0 00272450 EC 5A 00 B2 */ fmuls f2, f26, f2
/* 802754F4 00272454 EC 3A 00 72 */ fmuls f1, f26, f1
/* 802754F8 00272458 EC 1A 00 32 */ fmuls f0, f26, f0
/* 802754FC 0027245C EC 59 00 B2 */ fmuls f2, f25, f2
/* 80275500 00272460 EC 39 00 72 */ fmuls f1, f25, f1
/* 80275504 00272464 EC 19 00 32 */ fmuls f0, f25, f0
/* 80275508 00272468 EC 5F 00 B2 */ fmuls f2, f31, f2
/* 8027550C 0027246C EC 3F 00 72 */ fmuls f1, f31, f1
/* 80275510 00272470 EC 1F 00 32 */ fmuls f0, f31, f0
/* 80275514 00272474 D0 41 00 18 */ stfs f2, 0x18(r1)
/* 80275518 00272478 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 8027551C 0027247C D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80275520 00272480 4B DA 60 15 */ bl Identity__10CAxisAngleFv
/* 80275524 00272484 7C 65 1B 78 */ mr r5, r3
/* 80275528 00272488 7F 23 CB 78 */ mr r3, r25
/* 8027552C 0027248C 38 81 00 18 */ addi r4, r1, 0x18
/* 80275530 00272490 4B EA 6E 69 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle
/* 80275534 00272494 7F 23 CB 78 */ mr r3, r25
/* 80275538 00272498 4B EA 5C 45 */ bl UseCollisionImpulses__13CPhysicsActorFv
/* 8027553C 0027249C C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 80275540 002724A0 EC 00 07 F2 */ fmuls f0, f0, f31
/* 80275544 002724A4 D0 19 02 D4 */ stfs f0, 0x2d4(r25)
lbl_80275548:
/* 80275548 002724A8 E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0
/* 8027554C 002724AC CB E1 01 D0 */ lfd f31, 0x1d0(r1)
/* 80275550 002724B0 E3 C1 01 C8 */ psq_l f30, 456(r1), 0, qr0
/* 80275554 002724B4 CB C1 01 C0 */ lfd f30, 0x1c0(r1)
/* 80275558 002724B8 E3 A1 01 B8 */ psq_l f29, 440(r1), 0, qr0
/* 8027555C 002724BC CB A1 01 B0 */ lfd f29, 0x1b0(r1)
/* 80275560 002724C0 E3 81 01 A8 */ psq_l f28, 424(r1), 0, qr0
/* 80275564 002724C4 CB 81 01 A0 */ lfd f28, 0x1a0(r1)
/* 80275568 002724C8 E3 61 01 98 */ psq_l f27, 408(r1), 0, qr0
/* 8027556C 002724CC CB 61 01 90 */ lfd f27, 0x190(r1)
/* 80275570 002724D0 E3 41 01 88 */ psq_l f26, 392(r1), 0, qr0
/* 80275574 002724D4 CB 41 01 80 */ lfd f26, 0x180(r1)
/* 80275578 002724D8 E3 21 01 78 */ psq_l f25, 376(r1), 0, qr0
/* 8027557C 002724DC CB 21 01 70 */ lfd f25, 0x170(r1)
/* 80275580 002724E0 E3 01 01 68 */ psq_l f24, 360(r1), 0, qr0
/* 80275584 002724E4 CB 01 01 60 */ lfd f24, 0x160(r1)
/* 80275588 002724E8 E2 E1 01 58 */ psq_l f23, 344(r1), 0, qr0
/* 8027558C 002724EC CA E1 01 50 */ lfd f23, 0x150(r1)
/* 80275590 002724F0 BA A1 01 24 */ lmw r21, 0x124(r1)
/* 80275594 002724F4 80 01 01 E4 */ lwz r0, 0x1e4(r1)
/* 80275598 002724F8 7C 08 03 A6 */ mtlr r0
/* 8027559C 002724FC 38 21 01 E0 */ addi r1, r1, 0x1e0
/* 802755A0 00272500 4E 80 00 20 */ blr
.global sub_802755a4
sub_802755a4:
/* 802755A4 00272504 80 6D A8 F8 */ lwz r3, lbl_805A94B8@sda21(r13)
/* 802755A8 00272508 4E 80 00 20 */ blr
.global sub_802755ac
sub_802755ac:
/* 802755AC 0027250C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802755B0 00272510 7C 08 02 A6 */ mflr r0
/* 802755B4 00272514 90 01 00 34 */ stw r0, 0x34(r1)
/* 802755B8 00272518 BE C1 00 08 */ stmw r22, 8(r1)
/* 802755BC 0027251C 7C 76 1B 78 */ mr r22, r3
/* 802755C0 00272520 7C B8 2B 78 */ mr r24, r5
/* 802755C4 00272524 7C 97 23 78 */ mr r23, r4
/* 802755C8 00272528 3B 40 00 00 */ li r26, 0
/* 802755CC 0027252C 3B 96 10 04 */ addi r28, r22, 0x1004
/* 802755D0 00272530 3B 76 10 30 */ addi r27, r22, 0x1030
/* 802755D4 00272534 54 BD 06 3E */ clrlwi r29, r5, 0x18
lbl_802755D8:
/* 802755D8 00272538 80 7C 00 04 */ lwz r3, 4(r28)
/* 802755DC 0027253C 7F 04 C3 78 */ mr r4, r24
/* 802755E0 00272540 81 83 00 00 */ lwz r12, 0(r3)
/* 802755E4 00272544 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 802755E8 00272548 7D 89 03 A6 */ mtctr r12
/* 802755EC 0027254C 4E 80 04 21 */ bctrl
/* 802755F0 00272550 28 1D 00 00 */ cmplwi r29, 0
/* 802755F4 00272554 41 82 00 68 */ beq lbl_8027565C
/* 802755F8 00272558 88 16 10 54 */ lbz r0, 0x1054(r22)
/* 802755FC 0027255C 54 00 CF FE */ rlwinm r0, r0, 0x19, 0x1f, 0x1f
/* 80275600 00272560 7C 00 E8 40 */ cmplw r0, r29
/* 80275604 00272564 41 82 00 80 */ beq lbl_80275684
/* 80275608 00272568 C0 02 BC 68 */ lfs f0, lbl_805AD988@sda21(r2)
/* 8027560C 0027256C 3B 20 00 00 */ li r25, 0
/* 80275610 00272570 3B E0 00 01 */ li r31, 1
/* 80275614 00272574 D0 1B 00 00 */ stfs f0, 0(r27)
/* 80275618 00272578 83 DC 00 04 */ lwz r30, 4(r28)
/* 8027561C 0027257C 48 00 00 30 */ b lbl_8027564C
lbl_80275620:
/* 80275620 00272580 80 7C 00 04 */ lwz r3, 4(r28)
/* 80275624 00272584 C8 22 BC A0 */ lfd f1, lbl_805AD9C0@sda21(r2)
/* 80275628 00272588 88 03 01 D0 */ lbz r0, 0x1d0(r3)
/* 8027562C 0027258C 53 E0 2E B4 */ rlwimi r0, r31, 5, 0x1a, 0x1a
/* 80275630 00272590 98 03 01 D0 */ stb r0, 0x1d0(r3)
/* 80275634 00272594 80 7C 00 04 */ lwz r3, 4(r28)
/* 80275638 00272598 81 83 00 00 */ lwz r12, 0(r3)
/* 8027563C 0027259C 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80275640 002725A0 7D 89 03 A6 */ mtctr r12
/* 80275644 002725A4 4E 80 04 21 */ bctrl
/* 80275648 002725A8 3B 39 00 01 */ addi r25, r25, 1
lbl_8027564C:
/* 8027564C 002725AC 80 1E 01 60 */ lwz r0, 0x160(r30)
/* 80275650 002725B0 7C 19 00 00 */ cmpw r25, r0
/* 80275654 002725B4 41 80 FF CC */ blt lbl_80275620
/* 80275658 002725B8 48 00 00 2C */ b lbl_80275684
lbl_8027565C:
/* 8027565C 002725BC 80 76 10 28 */ lwz r3, 0x1028(r22)
/* 80275660 002725C0 38 80 00 00 */ li r4, 0
/* 80275664 002725C4 81 83 00 00 */ lwz r12, 0(r3)
/* 80275668 002725C8 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 8027566C 002725CC 7D 89 03 A6 */ mtctr r12
/* 80275670 002725D0 4E 80 04 21 */ bctrl
/* 80275674 002725D4 7E C3 B3 78 */ mr r3, r22
/* 80275678 002725D8 7E E4 BB 78 */ mr r4, r23
/* 8027567C 002725DC 38 A0 00 00 */ li r5, 0
/* 80275680 002725E0 4B FF ED 61 */ bl sub_802743e0
lbl_80275684:
/* 80275684 002725E4 3B 5A 00 01 */ addi r26, r26, 1
/* 80275688 002725E8 3B 7B 00 04 */ addi r27, r27, 4
/* 8027568C 002725EC 2C 1A 00 02 */ cmpwi r26, 2
/* 80275690 002725F0 3B 9C 00 08 */ addi r28, r28, 8
/* 80275694 002725F4 41 80 FF 44 */ blt lbl_802755D8
/* 80275698 002725F8 88 16 10 54 */ lbz r0, 0x1054(r22)
/* 8027569C 002725FC 53 00 3E 30 */ rlwimi r0, r24, 7, 0x18, 0x18
/* 802756A0 00272600 98 16 10 54 */ stb r0, 0x1054(r22)
/* 802756A4 00272604 BA C1 00 08 */ lmw r22, 8(r1)
/* 802756A8 00272608 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802756AC 0027260C 7C 08 03 A6 */ mtlr r0
/* 802756B0 00272610 38 21 00 30 */ addi r1, r1, 0x30
/* 802756B4 00272614 4E 80 00 20 */ blr
.global sub_802756b8
sub_802756b8:
/* 802756B8 00272618 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802756BC 0027261C 7C 08 02 A6 */ mflr r0
/* 802756C0 00272620 90 01 00 24 */ stw r0, 0x24(r1)
/* 802756C4 00272624 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802756C8 00272628 7C 9F 23 78 */ mr r31, r4
/* 802756CC 0027262C 38 81 00 08 */ addi r4, r1, 8
/* 802756D0 00272630 A0 03 08 CC */ lhz r0, 0x8cc(r3)
/* 802756D4 00272634 7F E3 FB 78 */ mr r3, r31
/* 802756D8 00272638 B0 01 00 08 */ sth r0, 8(r1)
/* 802756DC 0027263C 4B DD 6E 99 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 802756E0 00272640 7C 64 1B 78 */ mr r4, r3
/* 802756E4 00272644 38 61 00 0C */ addi r3, r1, 0xc
/* 802756E8 00272648 4B E3 9C 65 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 802756EC 0027264C 80 63 00 04 */ lwz r3, 4(r3)
/* 802756F0 00272650 28 03 00 00 */ cmplwi r3, 0
/* 802756F4 00272654 41 82 00 14 */ beq lbl_80275708
/* 802756F8 00272658 7F E6 FB 78 */ mr r6, r31
/* 802756FC 0027265C 38 80 00 28 */ li r4, 0x28
/* 80275700 00272660 38 A0 00 29 */ li r5, 0x29
/* 80275704 00272664 4B DD EB B1 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager
lbl_80275708:
/* 80275708 00272668 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8027570C 0027266C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80275710 00272670 7C 08 03 A6 */ mtlr r0
/* 80275714 00272674 38 21 00 20 */ addi r1, r1, 0x20
/* 80275718 00272678 4E 80 00 20 */ blr
.global sub_8027571c
sub_8027571c:
/* 8027571C 0027267C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80275720 00272680 7C 08 02 A6 */ mflr r0
/* 80275724 00272684 90 01 00 24 */ stw r0, 0x24(r1)
/* 80275728 00272688 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8027572C 0027268C 7C 9F 23 78 */ mr r31, r4
/* 80275730 00272690 38 81 00 08 */ addi r4, r1, 8
/* 80275734 00272694 A0 03 08 CC */ lhz r0, 0x8cc(r3)
/* 80275738 00272698 7F E3 FB 78 */ mr r3, r31
/* 8027573C 0027269C B0 01 00 08 */ sth r0, 8(r1)
/* 80275740 002726A0 4B DD 6E 35 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80275744 002726A4 7C 64 1B 78 */ mr r4, r3
/* 80275748 002726A8 38 61 00 0C */ addi r3, r1, 0xc
/* 8027574C 002726AC 4B E3 9C 01 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 80275750 002726B0 80 63 00 04 */ lwz r3, 4(r3)
/* 80275754 002726B4 28 03 00 00 */ cmplwi r3, 0
/* 80275758 002726B8 41 82 00 14 */ beq lbl_8027576C
/* 8027575C 002726BC 7F E6 FB 78 */ mr r6, r31
/* 80275760 002726C0 38 80 00 28 */ li r4, 0x28
/* 80275764 002726C4 38 A0 00 29 */ li r5, 0x29
/* 80275768 002726C8 4B DD E7 6D */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager
lbl_8027576C:
/* 8027576C 002726CC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80275770 002726D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80275774 002726D4 7C 08 03 A6 */ mtlr r0
/* 80275778 002726D8 38 21 00 20 */ addi r1, r1, 0x20
/* 8027577C 002726DC 4E 80 00 20 */ blr
.global sub_80275780
sub_80275780:
/* 80275780 002726E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80275784 002726E4 7C 08 02 A6 */ mflr r0
/* 80275788 002726E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8027578C 002726EC DB E1 00 10 */ stfd f31, 0x10(r1)
/* 80275790 002726F0 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0
/* 80275794 002726F4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80275798 002726F8 7C 7F 1B 78 */ mr r31, r3
/* 8027579C 002726FC FF E0 08 90 */ fmr f31, f1
/* 802757A0 00272700 80 63 04 50 */ lwz r3, 0x450(r3)
/* 802757A4 00272704 4B EC 49 29 */ bl GetPercentageFrozen__15CBodyControllerCFv
/* 802757A8 00272708 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802757AC 0027270C FC 00 08 00 */ fcmpu cr0, f0, f1
/* 802757B0 00272710 40 82 00 34 */ bne lbl_802757E4
/* 802757B4 00272714 C0 1F 10 7C */ lfs f0, 0x107c(r31)
/* 802757B8 00272718 EC 00 F8 28 */ fsubs f0, f0, f31
/* 802757BC 0027271C D0 1F 10 7C */ stfs f0, 0x107c(r31)
/* 802757C0 00272720 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 802757C4 00272724 C0 1F 10 84 */ lfs f0, 0x1084(r31)
/* 802757C8 00272728 80 63 00 10 */ lwz r3, 0x10(r3)
/* 802757CC 0027272C C0 23 02 00 */ lfs f1, 0x200(r3)
/* 802757D0 00272730 EC 1F 00 7C */ fnmsubs f0, f31, f1, f0
/* 802757D4 00272734 D0 1F 10 84 */ stfs f0, 0x1084(r31)
/* 802757D8 00272738 C0 1F 09 20 */ lfs f0, 0x920(r31)
/* 802757DC 0027273C EC 00 F8 28 */ fsubs f0, f0, f31
/* 802757E0 00272740 D0 1F 09 20 */ stfs f0, 0x920(r31)
lbl_802757E4:
/* 802757E4 00272744 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0
/* 802757E8 00272748 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802757EC 0027274C CB E1 00 10 */ lfd f31, 0x10(r1)
/* 802757F0 00272750 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802757F4 00272754 7C 08 03 A6 */ mtlr r0
/* 802757F8 00272758 38 21 00 20 */ addi r1, r1, 0x20
/* 802757FC 0027275C 4E 80 00 20 */ blr
.global sub_80275800
sub_80275800:
/* 80275800 00272760 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80275804 00272764 7C 08 02 A6 */ mflr r0
/* 80275808 00272768 38 C0 00 01 */ li r6, 1
/* 8027580C 0027276C 90 01 00 54 */ stw r0, 0x54(r1)
/* 80275810 00272770 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 80275814 00272774 3B E0 13 C1 */ li r31, 0x13c1
/* 80275818 00272778 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8027581C 0027277C 7C 9E 23 78 */ mr r30, r4
/* 80275820 00272780 7F C5 F3 78 */ mr r5, r30
/* 80275824 00272784 93 A1 00 44 */ stw r29, 0x44(r1)
/* 80275828 00272788 7C 7D 1B 78 */ mr r29, r3
/* 8027582C 0027278C 38 61 00 0C */ addi r3, r1, 0xc
/* 80275830 00272790 7F A4 EB 78 */ mr r4, r29
/* 80275834 00272794 48 00 11 AD */ bl sub_802769e0
/* 80275838 00272798 A0 61 00 0C */ lhz r3, 0xc(r1)
/* 8027583C 0027279C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80275840 002727A0 B0 61 00 10 */ sth r3, 0x10(r1)
/* 80275844 002727A4 7C 03 00 40 */ cmplw r3, r0
/* 80275848 002727A8 41 82 00 8C */ beq lbl_802758D4
/* 8027584C 002727AC B0 61 00 08 */ sth r3, 8(r1)
/* 80275850 002727B0 7F C3 F3 78 */ mr r3, r30
/* 80275854 002727B4 38 81 00 08 */ addi r4, r1, 8
/* 80275858 002727B8 4B DD 6D 4D */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 8027585C 002727BC 7C 64 1B 78 */ mr r4, r3
/* 80275860 002727C0 38 61 00 14 */ addi r3, r1, 0x14
/* 80275864 002727C4 4B E3 0C E9 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 80275868 002727C8 80 63 00 04 */ lwz r3, 4(r3)
/* 8027586C 002727CC 28 03 00 00 */ cmplwi r3, 0
/* 80275870 002727D0 41 82 00 64 */ beq lbl_802758D4
/* 80275874 002727D4 C0 E3 00 50 */ lfs f7, 0x50(r3)
/* 80275878 002727D8 C0 1D 00 50 */ lfs f0, 0x50(r29)
/* 8027587C 002727DC C0 63 00 40 */ lfs f3, 0x40(r3)
/* 80275880 002727E0 EC C7 00 28 */ fsubs f6, f7, f0
/* 80275884 002727E4 C0 1D 00 40 */ lfs f0, 0x40(r29)
/* 80275888 002727E8 C1 03 00 60 */ lfs f8, 0x60(r3)
/* 8027588C 002727EC EC 83 00 28 */ fsubs f4, f3, f0
/* 80275890 002727F0 C0 1D 00 60 */ lfs f0, 0x60(r29)
/* 80275894 002727F4 EC 26 01 B2 */ fmuls f1, f6, f6
/* 80275898 002727F8 EC A8 00 28 */ fsubs f5, f8, f0
/* 8027589C 002727FC C0 02 BC 18 */ lfs f0, lbl_805AD938@sda21(r2)
/* 802758A0 00272800 EC 44 01 32 */ fmuls f2, f4, f4
/* 802758A4 00272804 D0 61 00 28 */ stfs f3, 0x28(r1)
/* 802758A8 00272808 EC 65 01 72 */ fmuls f3, f5, f5
/* 802758AC 0027280C EC 22 08 2A */ fadds f1, f2, f1
/* 802758B0 00272810 D0 E1 00 2C */ stfs f7, 0x2c(r1)
/* 802758B4 00272814 D1 01 00 30 */ stfs f8, 0x30(r1)
/* 802758B8 00272818 EC 23 08 2A */ fadds f1, f3, f1
/* 802758BC 0027281C D0 81 00 34 */ stfs f4, 0x34(r1)
/* 802758C0 00272820 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802758C4 00272824 D0 C1 00 38 */ stfs f6, 0x38(r1)
/* 802758C8 00272828 D0 A1 00 3C */ stfs f5, 0x3c(r1)
/* 802758CC 0027282C 40 81 00 08 */ ble lbl_802758D4
/* 802758D0 00272830 63 FF 00 02 */ ori r31, r31, 2
lbl_802758D4:
/* 802758D4 00272834 88 1D 10 54 */ lbz r0, 0x1054(r29)
/* 802758D8 00272838 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f
/* 802758DC 0027283C 40 82 00 08 */ bne lbl_802758E4
/* 802758E0 00272840 63 FF 04 00 */ ori r31, r31, 0x400
lbl_802758E4:
/* 802758E4 00272844 80 7E 08 4C */ lwz r3, 0x84c(r30)
/* 802758E8 00272848 C0 DD 00 48 */ lfs f6, 0x48(r29)
/* 802758EC 0027284C C0 23 00 50 */ lfs f1, 0x50(r3)
/* 802758F0 00272850 C0 1D 00 50 */ lfs f0, 0x50(r29)
/* 802758F4 00272854 C0 5D 00 38 */ lfs f2, 0x38(r29)
/* 802758F8 00272858 EC 61 00 28 */ fsubs f3, f1, f0
/* 802758FC 0027285C C0 23 00 40 */ lfs f1, 0x40(r3)
/* 80275900 00272860 C0 1D 00 40 */ lfs f0, 0x40(r29)
/* 80275904 00272864 C0 FD 00 58 */ lfs f7, 0x58(r29)
/* 80275908 00272868 EC A1 00 28 */ fsubs f5, f1, f0
/* 8027590C 0027286C C0 83 00 60 */ lfs f4, 0x60(r3)
/* 80275910 00272870 EC 26 00 F2 */ fmuls f1, f6, f3
/* 80275914 00272874 C0 7D 00 60 */ lfs f3, 0x60(r29)
/* 80275918 00272878 C0 02 BC A8 */ lfs f0, lbl_805AD9C8@sda21(r2)
/* 8027591C 0027287C EC 64 18 28 */ fsubs f3, f4, f3
/* 80275920 00272880 EC 22 09 7A */ fmadds f1, f2, f5, f1
/* 80275924 00272884 D0 41 00 1C */ stfs f2, 0x1c(r1)
/* 80275928 00272888 D0 C1 00 20 */ stfs f6, 0x20(r1)
/* 8027592C 0027288C EC 27 08 FA */ fmadds f1, f7, f3, f1
/* 80275930 00272890 D0 E1 00 24 */ stfs f7, 0x24(r1)
/* 80275934 00272894 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80275938 00272898 40 81 00 08 */ ble lbl_80275940
/* 8027593C 0027289C 63 FF 00 3C */ ori r31, r31, 0x3c
lbl_80275940:
/* 80275940 002728A0 7F A3 EB 78 */ mr r3, r29
/* 80275944 002728A4 7F C4 F3 78 */ mr r4, r30
/* 80275948 002728A8 4B FF E3 31 */ bl sub_80273c78
/* 8027594C 002728AC 2C 03 00 00 */ cmpwi r3, 0
/* 80275950 002728B0 40 82 00 08 */ bne lbl_80275958
/* 80275954 002728B4 63 FF 20 00 */ ori r31, r31, 0x2000
lbl_80275958:
/* 80275958 002728B8 3C 80 80 3D */ lis r4, lbl_803D5428@ha
/* 8027595C 002728BC 7F A3 EB 78 */ mr r3, r29
/* 80275960 002728C0 38 A4 54 28 */ addi r5, r4, lbl_803D5428@l
/* 80275964 002728C4 7F C4 F3 78 */ mr r4, r30
/* 80275968 002728C8 C0 25 00 04 */ lfs f1, 4(r5)
/* 8027596C 002728CC 48 00 18 B9 */ bl sub_80277224
/* 80275970 002728D0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80275974 002728D4 41 82 00 08 */ beq lbl_8027597C
/* 80275978 002728D8 63 FF 08 00 */ ori r31, r31, 0x800
lbl_8027597C:
/* 8027597C 002728DC 7F A3 EB 78 */ mr r3, r29
/* 80275980 002728E0 7F C4 F3 78 */ mr r4, r30
/* 80275984 002728E4 7F E5 FB 78 */ mr r5, r31
/* 80275988 002728E8 48 00 00 21 */ bl sub_802759a8
/* 8027598C 002728EC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80275990 002728F0 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 80275994 002728F4 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 80275998 002728F8 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 8027599C 002728FC 7C 08 03 A6 */ mtlr r0
/* 802759A0 00272900 38 21 00 50 */ addi r1, r1, 0x50
/* 802759A4 00272904 4E 80 00 20 */ blr
.global sub_802759a8
sub_802759a8:
/* 802759A8 00272908 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802759AC 0027290C 7C 08 02 A6 */ mflr r0
/* 802759B0 00272910 90 01 00 44 */ stw r0, 0x44(r1)
/* 802759B4 00272914 DB E1 00 30 */ stfd f31, 0x30(r1)
/* 802759B8 00272918 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
/* 802759BC 0027291C DB C1 00 20 */ stfd f30, 0x20(r1)
/* 802759C0 00272920 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0
/* 802759C4 00272924 BF 41 00 08 */ stmw r26, 8(r1)
/* 802759C8 00272928 7C 7A 1B 78 */ mr r26, r3
/* 802759CC 0027292C C3 E2 BC 08 */ lfs f31, lbl_805AD928@sda21(r2)
/* 802759D0 00272930 80 03 05 70 */ lwz r0, 0x570(r3)
/* 802759D4 00272934 7C 9B 23 78 */ mr r27, r4
/* 802759D8 00272938 7C BC 2B 78 */ mr r28, r5
/* 802759DC 0027293C 3B A0 00 00 */ li r29, 0
/* 802759E0 00272940 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 802759E4 00272944 3B E0 00 01 */ li r31, 1
/* 802759E8 00272948 7F DA 02 14 */ add r30, r26, r0
/* 802759EC 0027294C 3B DE 11 64 */ addi r30, r30, 0x1164
lbl_802759F0:
/* 802759F0 00272950 7F E0 E8 30 */ slw r0, r31, r29
/* 802759F4 00272954 7F 80 00 39 */ and. r0, r28, r0
/* 802759F8 00272958 41 82 00 2C */ beq lbl_80275A24
/* 802759FC 0027295C 7F 43 D3 78 */ mr r3, r26
/* 80275A00 00272960 7F A4 EB 78 */ mr r4, r29
/* 80275A04 00272964 48 00 03 65 */ bl sub_80275d68
/* 80275A08 00272968 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80275A0C 0027296C 41 82 00 18 */ beq lbl_80275A24
/* 80275A10 00272970 7F 43 D3 78 */ mr r3, r26
/* 80275A14 00272974 7F C4 F3 78 */ mr r4, r30
/* 80275A18 00272978 7F A5 EB 78 */ mr r5, r29
/* 80275A1C 0027297C 48 00 00 E9 */ bl sub_80275b04
/* 80275A20 00272980 EF FF 08 2A */ fadds f31, f31, f1
lbl_80275A24:
/* 80275A24 00272984 3B BD 00 01 */ addi r29, r29, 1
/* 80275A28 00272988 2C 1D 00 0D */ cmpwi r29, 0xd
/* 80275A2C 0027298C 40 81 FF C4 */ ble lbl_802759F0
/* 80275A30 00272990 C0 02 BC AC */ lfs f0, lbl_805AD9CC@sda21(r2)
/* 80275A34 00272994 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80275A38 00272998 40 81 00 0C */ ble lbl_80275A44
/* 80275A3C 0027299C 7F 43 D3 78 */ mr r3, r26
/* 80275A40 002729A0 48 00 01 29 */ bl sub_80275b68
lbl_80275A44:
/* 80275A44 002729A4 FC 40 F8 90 */ fmr f2, f31
/* 80275A48 002729A8 80 7B 09 00 */ lwz r3, 0x900(r27)
/* 80275A4C 002729AC C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80275A50 002729B0 48 09 CA F5 */ bl Range__9CRandom16Fff
/* 80275A54 002729B4 38 00 FF FF */ li r0, -1
/* 80275A58 002729B8 FF E0 08 90 */ fmr f31, f1
/* 80275A5C 002729BC 90 1A 12 54 */ stw r0, 0x1254(r26)
/* 80275A60 002729C0 3B A0 00 00 */ li r29, 0
/* 80275A64 002729C4 C3 C2 BC 08 */ lfs f30, lbl_805AD928@sda21(r2)
/* 80275A68 002729C8 3B E0 00 01 */ li r31, 1
lbl_80275A6C:
/* 80275A6C 002729CC 7F E0 E8 30 */ slw r0, r31, r29
/* 80275A70 002729D0 7F 80 00 39 */ and. r0, r28, r0
/* 80275A74 002729D4 41 82 00 60 */ beq lbl_80275AD4
/* 80275A78 002729D8 7F 43 D3 78 */ mr r3, r26
/* 80275A7C 002729DC 7F A4 EB 78 */ mr r4, r29
/* 80275A80 002729E0 48 00 02 E9 */ bl sub_80275d68
/* 80275A84 002729E4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80275A88 002729E8 41 82 00 4C */ beq lbl_80275AD4
/* 80275A8C 002729EC 7F 43 D3 78 */ mr r3, r26
/* 80275A90 002729F0 7F C4 F3 78 */ mr r4, r30
/* 80275A94 002729F4 7F A5 EB 78 */ mr r5, r29
/* 80275A98 002729F8 48 00 00 6D */ bl sub_80275b04
/* 80275A9C 002729FC FC 1F F0 40 */ fcmpo cr0, f31, f30
/* 80275AA0 00272A00 40 81 00 30 */ ble lbl_80275AD0
/* 80275AA4 00272A04 EC 1E 08 2A */ fadds f0, f30, f1
/* 80275AA8 00272A08 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80275AAC 00272A0C 40 80 00 24 */ bge lbl_80275AD0
/* 80275AB0 00272A10 57 A0 10 3A */ slwi r0, r29, 2
/* 80275AB4 00272A14 93 BA 12 54 */ stw r29, 0x1254(r26)
/* 80275AB8 00272A18 7C 7A 02 14 */ add r3, r26, r0
/* 80275ABC 00272A1C C0 02 BC 84 */ lfs f0, lbl_805AD9A4@sda21(r2)
/* 80275AC0 00272A20 C0 23 12 5C */ lfs f1, 0x125c(r3)
/* 80275AC4 00272A24 EC 01 00 2A */ fadds f0, f1, f0
/* 80275AC8 00272A28 D0 03 12 5C */ stfs f0, 0x125c(r3)
/* 80275ACC 00272A2C 48 00 00 14 */ b lbl_80275AE0
lbl_80275AD0:
/* 80275AD0 00272A30 EF DE 08 2A */ fadds f30, f30, f1
lbl_80275AD4:
/* 80275AD4 00272A34 3B BD 00 01 */ addi r29, r29, 1
/* 80275AD8 00272A38 2C 1D 00 0D */ cmpwi r29, 0xd
/* 80275ADC 00272A3C 40 81 FF 90 */ ble lbl_80275A6C
lbl_80275AE0:
/* 80275AE0 00272A40 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
/* 80275AE4 00272A44 CB E1 00 30 */ lfd f31, 0x30(r1)
/* 80275AE8 00272A48 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0
/* 80275AEC 00272A4C CB C1 00 20 */ lfd f30, 0x20(r1)
/* 80275AF0 00272A50 BB 41 00 08 */ lmw r26, 8(r1)
/* 80275AF4 00272A54 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80275AF8 00272A58 7C 08 03 A6 */ mtlr r0
/* 80275AFC 00272A5C 38 21 00 40 */ addi r1, r1, 0x40
/* 80275B00 00272A60 4E 80 00 20 */ blr
.global sub_80275b04
sub_80275b04:
/* 80275B04 00272A64 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80275B08 00272A68 7C 08 02 A6 */ mflr r0
/* 80275B0C 00272A6C C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80275B10 00272A70 90 01 00 14 */ stw r0, 0x14(r1)
/* 80275B14 00272A74 54 A0 10 3A */ slwi r0, r5, 2
/* 80275B18 00272A78 C0 02 BC 8C */ lfs f0, lbl_805AD9AC@sda21(r2)
/* 80275B1C 00272A7C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80275B20 00272A80 7F E3 02 14 */ add r31, r3, r0
/* 80275B24 00272A84 C0 5F 12 5C */ lfs f2, 0x125c(r31)
/* 80275B28 00272A88 EC 42 08 28 */ fsubs f2, f2, f1
/* 80275B2C 00272A8C FC 40 12 10 */ fabs f2, f2
/* 80275B30 00272A90 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80275B34 00272A94 40 80 00 08 */ bge lbl_80275B3C
/* 80275B38 00272A98 48 00 00 1C */ b lbl_80275B54
lbl_80275B3C:
/* 80275B3C 00272A9C 7C 83 23 78 */ mr r3, r4
/* 80275B40 00272AA0 7C A4 2B 78 */ mr r4, r5
/* 80275B44 00272AA4 48 00 66 E9 */ bl sub_8027c22c
/* 80275B48 00272AA8 EC 21 00 72 */ fmuls f1, f1, f1
/* 80275B4C 00272AAC C0 1F 12 5C */ lfs f0, 0x125c(r31)
/* 80275B50 00272AB0 EC 21 00 24 */ fdivs f1, f1, f0
lbl_80275B54:
/* 80275B54 00272AB4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80275B58 00272AB8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80275B5C 00272ABC 7C 08 03 A6 */ mtlr r0
/* 80275B60 00272AC0 38 21 00 10 */ addi r1, r1, 0x10
/* 80275B64 00272AC4 4E 80 00 20 */ blr
.global sub_80275b68
sub_80275b68:
/* 80275B68 00272AC8 80 C3 12 58 */ lwz r6, 0x1258(r3)
/* 80275B6C 00272ACC 38 E0 00 00 */ li r7, 0
/* 80275B70 00272AD0 C0 C2 BC 08 */ lfs f6, lbl_805AD928@sda21(r2)
/* 80275B74 00272AD4 2C 06 00 00 */ cmpwi r6, 0
/* 80275B78 00272AD8 40 81 00 A0 */ ble lbl_80275C18
/* 80275B7C 00272ADC 2C 06 00 08 */ cmpwi r6, 8
/* 80275B80 00272AE0 38 86 FF F8 */ addi r4, r6, -8
/* 80275B84 00272AE4 40 81 00 68 */ ble lbl_80275BEC
/* 80275B88 00272AE8 38 04 00 07 */ addi r0, r4, 7
/* 80275B8C 00272AEC 38 A3 12 5C */ addi r5, r3, 0x125c
/* 80275B90 00272AF0 54 00 E8 FE */ srwi r0, r0, 3
/* 80275B94 00272AF4 7C 09 03 A6 */ mtctr r0
/* 80275B98 00272AF8 2C 04 00 00 */ cmpwi r4, 0
/* 80275B9C 00272AFC 40 81 00 50 */ ble lbl_80275BEC
lbl_80275BA0:
/* 80275BA0 00272B00 C0 25 00 00 */ lfs f1, 0(r5)
/* 80275BA4 00272B04 38 E7 00 08 */ addi r7, r7, 8
/* 80275BA8 00272B08 C0 05 00 04 */ lfs f0, 4(r5)
/* 80275BAC 00272B0C EC C6 08 2A */ fadds f6, f6, f1
/* 80275BB0 00272B10 C0 A5 00 08 */ lfs f5, 8(r5)
/* 80275BB4 00272B14 C0 85 00 0C */ lfs f4, 0xc(r5)
/* 80275BB8 00272B18 C0 65 00 10 */ lfs f3, 0x10(r5)
/* 80275BBC 00272B1C EC C6 00 2A */ fadds f6, f6, f0
/* 80275BC0 00272B20 C0 45 00 14 */ lfs f2, 0x14(r5)
/* 80275BC4 00272B24 C0 25 00 18 */ lfs f1, 0x18(r5)
/* 80275BC8 00272B28 C0 05 00 1C */ lfs f0, 0x1c(r5)
/* 80275BCC 00272B2C 38 A5 00 20 */ addi r5, r5, 0x20
/* 80275BD0 00272B30 EC C6 28 2A */ fadds f6, f6, f5
/* 80275BD4 00272B34 EC C6 20 2A */ fadds f6, f6, f4
/* 80275BD8 00272B38 EC C6 18 2A */ fadds f6, f6, f3
/* 80275BDC 00272B3C EC C6 10 2A */ fadds f6, f6, f2
/* 80275BE0 00272B40 EC C6 08 2A */ fadds f6, f6, f1
/* 80275BE4 00272B44 EC C6 00 2A */ fadds f6, f6, f0
/* 80275BE8 00272B48 42 00 FF B8 */ bdnz lbl_80275BA0
lbl_80275BEC:
/* 80275BEC 00272B4C 54 E4 10 3A */ slwi r4, r7, 2
/* 80275BF0 00272B50 7C 07 30 50 */ subf r0, r7, r6
/* 80275BF4 00272B54 7C 83 22 14 */ add r4, r3, r4
/* 80275BF8 00272B58 7C 09 03 A6 */ mtctr r0
/* 80275BFC 00272B5C 7C 07 30 00 */ cmpw r7, r6
/* 80275C00 00272B60 38 84 12 5C */ addi r4, r4, 0x125c
/* 80275C04 00272B64 40 80 00 14 */ bge lbl_80275C18
lbl_80275C08:
/* 80275C08 00272B68 C0 04 00 00 */ lfs f0, 0(r4)
/* 80275C0C 00272B6C 38 84 00 04 */ addi r4, r4, 4
/* 80275C10 00272B70 EC C6 00 2A */ fadds f6, f6, f0
/* 80275C14 00272B74 42 00 FF F4 */ bdnz lbl_80275C08
lbl_80275C18:
/* 80275C18 00272B78 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80275C1C 00272B7C C0 02 BC 8C */ lfs f0, lbl_805AD9AC@sda21(r2)
/* 80275C20 00272B80 EC 26 08 28 */ fsubs f1, f6, f1
/* 80275C24 00272B84 FC 20 0A 10 */ fabs f1, f1
/* 80275C28 00272B88 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80275C2C 00272B8C 4D 80 00 20 */ bltlr
/* 80275C30 00272B90 38 83 12 5C */ addi r4, r3, 0x125c
/* 80275C34 00272B94 38 A0 00 00 */ li r5, 0
/* 80275C38 00272B98 48 00 00 18 */ b lbl_80275C50
lbl_80275C3C:
/* 80275C3C 00272B9C C0 04 00 00 */ lfs f0, 0(r4)
/* 80275C40 00272BA0 38 A5 00 01 */ addi r5, r5, 1
/* 80275C44 00272BA4 EC 00 30 24 */ fdivs f0, f0, f6
/* 80275C48 00272BA8 D0 04 00 00 */ stfs f0, 0(r4)
/* 80275C4C 00272BAC 38 84 00 04 */ addi r4, r4, 4
lbl_80275C50:
/* 80275C50 00272BB0 80 03 12 58 */ lwz r0, 0x1258(r3)
/* 80275C54 00272BB4 7C 05 00 00 */ cmpw r5, r0
/* 80275C58 00272BB8 41 80 FF E4 */ blt lbl_80275C3C
.global sub_80275c5c
sub_80275c5c:
/* 80275C5C 00272BBC 4E 80 00 20 */ blr
.global sub_80275c60
sub_80275c60:
/* 80275C60 00272BC0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80275C64 00272BC4 7C 08 02 A6 */ mflr r0
/* 80275C68 00272BC8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80275C6C 00272BCC BF 61 00 0C */ stmw r27, 0xc(r1)
/* 80275C70 00272BD0 7C 7E 1B 78 */ mr r30, r3
/* 80275C74 00272BD4 7C 9F 23 78 */ mr r31, r4
/* 80275C78 00272BD8 80 03 05 70 */ lwz r0, 0x570(r3)
/* 80275C7C 00272BDC 2C 00 FF FF */ cmpwi r0, -1
/* 80275C80 00272BE0 41 82 00 D4 */ beq lbl_80275D54
/* 80275C84 00272BE4 80 BE 12 58 */ lwz r5, 0x1258(r30)
/* 80275C88 00272BE8 3B 9E 12 5C */ addi r28, r30, 0x125c
/* 80275C8C 00272BEC 38 60 00 00 */ li r3, 0
/* 80275C90 00272BF0 2C 05 00 00 */ cmpwi r5, 0
/* 80275C94 00272BF4 40 81 00 40 */ ble lbl_80275CD4
/* 80275C98 00272BF8 2C 05 00 08 */ cmpwi r5, 8
/* 80275C9C 00272BFC 38 85 FF F8 */ addi r4, r5, -8
/* 80275CA0 00272C00 40 81 00 20 */ ble lbl_80275CC0
/* 80275CA4 00272C04 38 04 00 07 */ addi r0, r4, 7
/* 80275CA8 00272C08 54 00 E8 FE */ srwi r0, r0, 3
/* 80275CAC 00272C0C 7C 09 03 A6 */ mtctr r0
/* 80275CB0 00272C10 2C 04 00 00 */ cmpwi r4, 0
/* 80275CB4 00272C14 40 81 00 0C */ ble lbl_80275CC0
lbl_80275CB8:
/* 80275CB8 00272C18 38 63 00 08 */ addi r3, r3, 8
/* 80275CBC 00272C1C 42 00 FF FC */ bdnz lbl_80275CB8
lbl_80275CC0:
/* 80275CC0 00272C20 7C 03 28 50 */ subf r0, r3, r5
/* 80275CC4 00272C24 7C 09 03 A6 */ mtctr r0
/* 80275CC8 00272C28 7C 03 28 00 */ cmpw r3, r5
/* 80275CCC 00272C2C 40 80 00 08 */ bge lbl_80275CD4
lbl_80275CD0:
/* 80275CD0 00272C30 42 00 00 00 */ bdnz lbl_80275CD0
lbl_80275CD4:
/* 80275CD4 00272C34 38 00 00 00 */ li r0, 0
/* 80275CD8 00272C38 3B 60 00 00 */ li r27, 0
/* 80275CDC 00272C3C 90 1E 12 58 */ stw r0, 0x1258(r30)
/* 80275CE0 00272C40 80 1E 05 70 */ lwz r0, 0x570(r30)
/* 80275CE4 00272C44 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 80275CE8 00272C48 7F BE 02 14 */ add r29, r30, r0
/* 80275CEC 00272C4C 3B BD 11 64 */ addi r29, r29, 0x1164
lbl_80275CF0:
/* 80275CF0 00272C50 7F A3 EB 78 */ mr r3, r29
/* 80275CF4 00272C54 7F 64 DB 78 */ mr r4, r27
/* 80275CF8 00272C58 48 00 65 35 */ bl sub_8027c22c
/* 80275CFC 00272C5C 80 1E 12 58 */ lwz r0, 0x1258(r30)
/* 80275D00 00272C60 54 00 10 3A */ slwi r0, r0, 2
/* 80275D04 00272C64 7C 7C 02 15 */ add. r3, r28, r0
/* 80275D08 00272C68 41 82 00 08 */ beq lbl_80275D10
/* 80275D0C 00272C6C D0 23 00 00 */ stfs f1, 0(r3)
lbl_80275D10:
/* 80275D10 00272C70 80 7E 12 58 */ lwz r3, 0x1258(r30)
/* 80275D14 00272C74 3B 7B 00 01 */ addi r27, r27, 1
/* 80275D18 00272C78 2C 1B 00 0D */ cmpwi r27, 0xd
/* 80275D1C 00272C7C 38 03 00 01 */ addi r0, r3, 1
/* 80275D20 00272C80 90 1E 12 58 */ stw r0, 0x1258(r30)
/* 80275D24 00272C84 40 81 FF CC */ ble lbl_80275CF0
/* 80275D28 00272C88 80 1E 10 78 */ lwz r0, 0x1078(r30)
/* 80275D2C 00272C8C 2C 00 FF FF */ cmpwi r0, -1
/* 80275D30 00272C90 41 82 00 24 */ beq lbl_80275D54
/* 80275D34 00272C94 3B 60 00 00 */ li r27, 0
lbl_80275D38:
/* 80275D38 00272C98 7F C3 F3 78 */ mr r3, r30
/* 80275D3C 00272C9C 7F E4 FB 78 */ mr r4, r31
/* 80275D40 00272CA0 38 A0 FF FF */ li r5, -1
/* 80275D44 00272CA4 4B FF FC 65 */ bl sub_802759a8
/* 80275D48 00272CA8 3B 7B 00 01 */ addi r27, r27, 1
/* 80275D4C 00272CAC 2C 1B 00 28 */ cmpwi r27, 0x28
/* 80275D50 00272CB0 41 80 FF E8 */ blt lbl_80275D38
lbl_80275D54:
/* 80275D54 00272CB4 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 80275D58 00272CB8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80275D5C 00272CBC 7C 08 03 A6 */ mtlr r0
/* 80275D60 00272CC0 38 21 00 20 */ addi r1, r1, 0x20
/* 80275D64 00272CC4 4E 80 00 20 */ blr
.global sub_80275d68
sub_80275d68:
/* 80275D68 00272CC8 3C A0 80 3D */ lis r5, lbl_803D5428@ha
/* 80275D6C 00272CCC 54 80 10 3A */ slwi r0, r4, 2
/* 80275D70 00272CD0 38 C5 54 28 */ addi r6, r5, lbl_803D5428@l
/* 80275D74 00272CD4 38 A6 00 5C */ addi r5, r6, 0x5c
/* 80275D78 00272CD8 7C 05 00 2E */ lwzx r0, r5, r0
/* 80275D7C 00272CDC 2C 00 00 07 */ cmpwi r0, 7
/* 80275D80 00272CE0 41 82 00 2C */ beq lbl_80275DAC
/* 80275D84 00272CE4 40 80 00 10 */ bge lbl_80275D94
/* 80275D88 00272CE8 2C 00 00 05 */ cmpwi r0, 5
/* 80275D8C 00272CEC 41 82 00 4C */ beq lbl_80275DD8
/* 80275D90 00272CF0 48 00 00 7C */ b lbl_80275E0C
lbl_80275D94:
/* 80275D94 00272CF4 2C 00 00 12 */ cmpwi r0, 0x12
/* 80275D98 00272CF8 41 82 00 14 */ beq lbl_80275DAC
/* 80275D9C 00272CFC 40 80 00 70 */ bge lbl_80275E0C
/* 80275DA0 00272D00 2C 00 00 11 */ cmpwi r0, 0x11
/* 80275DA4 00272D04 40 80 00 60 */ bge lbl_80275E04
/* 80275DA8 00272D08 48 00 00 64 */ b lbl_80275E0C
lbl_80275DAC:
/* 80275DAC 00272D0C 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 80275DB0 00272D10 1C 84 00 0C */ mulli r4, r4, 0xc
/* 80275DB4 00272D14 38 66 00 A0 */ addi r3, r6, 0xa0
/* 80275DB8 00272D18 54 00 10 3A */ slwi r0, r0, 2
/* 80275DBC 00272D1C 7C 04 02 14 */ add r0, r4, r0
/* 80275DC0 00272D20 7C 83 00 2E */ lwzx r4, r3, r0
/* 80275DC4 00272D24 20 64 FF FF */ subfic r3, r4, -1
/* 80275DC8 00272D28 38 04 00 01 */ addi r0, r4, 1
/* 80275DCC 00272D2C 7C 60 03 78 */ or r0, r3, r0
/* 80275DD0 00272D30 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80275DD4 00272D34 4E 80 00 20 */ blr
lbl_80275DD8:
/* 80275DD8 00272D38 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 80275DDC 00272D3C 1C 84 00 0C */ mulli r4, r4, 0xc
/* 80275DE0 00272D40 38 66 01 48 */ addi r3, r6, 0x148
/* 80275DE4 00272D44 54 00 10 3A */ slwi r0, r0, 2
/* 80275DE8 00272D48 7C 04 02 14 */ add r0, r4, r0
/* 80275DEC 00272D4C 7C 83 00 2E */ lwzx r4, r3, r0
/* 80275DF0 00272D50 20 64 FF FF */ subfic r3, r4, -1
/* 80275DF4 00272D54 38 04 00 01 */ addi r0, r4, 1
/* 80275DF8 00272D58 7C 60 03 78 */ or r0, r3, r0
/* 80275DFC 00272D5C 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80275E00 00272D60 4E 80 00 20 */ blr
lbl_80275E04:
/* 80275E04 00272D64 38 60 00 01 */ li r3, 1
/* 80275E08 00272D68 4E 80 00 20 */ blr
lbl_80275E0C:
/* 80275E0C 00272D6C 38 60 00 00 */ li r3, 0
/* 80275E10 00272D70 4E 80 00 20 */ blr
.global sub_80275e14
sub_80275e14:
/* 80275E14 00272D74 1C 84 00 0C */ mulli r4, r4, 0xc
/* 80275E18 00272D78 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 80275E1C 00272D7C 3C 60 80 3D */ lis r3, lbl_803D5570@ha
/* 80275E20 00272D80 54 00 10 3A */ slwi r0, r0, 2
/* 80275E24 00272D84 38 63 55 70 */ addi r3, r3, lbl_803D5570@l
/* 80275E28 00272D88 7C 63 22 14 */ add r3, r3, r4
/* 80275E2C 00272D8C 7C 63 00 2E */ lwzx r3, r3, r0
/* 80275E30 00272D90 4E 80 00 20 */ blr
.global sub_80275e34
sub_80275e34:
/* 80275E34 00272D94 1C 84 00 0C */ mulli r4, r4, 0xc
/* 80275E38 00272D98 80 03 10 78 */ lwz r0, 0x1078(r3)
/* 80275E3C 00272D9C 3C 60 80 3D */ lis r3, lbl_803D54C8@ha
/* 80275E40 00272DA0 54 00 10 3A */ slwi r0, r0, 2
/* 80275E44 00272DA4 38 63 54 C8 */ addi r3, r3, lbl_803D54C8@l
/* 80275E48 00272DA8 7C 63 22 14 */ add r3, r3, r4
/* 80275E4C 00272DAC 7C 63 00 2E */ lwzx r3, r3, r0
/* 80275E50 00272DB0 4E 80 00 20 */ blr
.global sub_80275e54
sub_80275e54:
/* 80275E54 00272DB4 94 21 FE E0 */ stwu r1, -0x120(r1)
/* 80275E58 00272DB8 7C 08 02 A6 */ mflr r0
/* 80275E5C 00272DBC 90 01 01 24 */ stw r0, 0x124(r1)
/* 80275E60 00272DC0 DB E1 01 10 */ stfd f31, 0x110(r1)
/* 80275E64 00272DC4 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0
/* 80275E68 00272DC8 BF 61 00 FC */ stmw r27, 0xfc(r1)
/* 80275E6C 00272DCC 7C 7D 1B 78 */ mr r29, r3
/* 80275E70 00272DD0 FF E0 08 90 */ fmr f31, f1
/* 80275E74 00272DD4 83 63 0F B0 */ lwz r27, 0xfb0(r3)
/* 80275E78 00272DD8 7C 9E 23 78 */ mr r30, r4
/* 80275E7C 00272DDC 28 1B 00 00 */ cmplwi r27, 0
/* 80275E80 00272DE0 41 82 02 C8 */ beq lbl_80276148
/* 80275E84 00272DE4 38 61 00 C8 */ addi r3, r1, 0xc8
/* 80275E88 00272DE8 38 9D 00 34 */ addi r4, r29, 0x34
/* 80275E8C 00272DEC 48 09 CD B5 */ bl GetRotation__12CTransform4fCFv
/* 80275E90 00272DF0 7F 63 DB 78 */ mr r3, r27
/* 80275E94 00272DF4 38 81 00 C8 */ addi r4, r1, 0xc8
/* 80275E98 00272DF8 81 9B 00 00 */ lwz r12, 0(r27)
/* 80275E9C 00272DFC 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 80275EA0 00272E00 7D 89 03 A6 */ mtctr r12
/* 80275EA4 00272E04 4E 80 04 21 */ bctrl
/* 80275EA8 00272E08 C0 5D 00 60 */ lfs f2, 0x60(r29)
/* 80275EAC 00272E0C 38 81 00 5C */ addi r4, r1, 0x5c
/* 80275EB0 00272E10 C0 3D 00 50 */ lfs f1, 0x50(r29)
/* 80275EB4 00272E14 C0 1D 00 40 */ lfs f0, 0x40(r29)
/* 80275EB8 00272E18 D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 80275EBC 00272E1C D0 21 00 60 */ stfs f1, 0x60(r1)
/* 80275EC0 00272E20 D0 41 00 64 */ stfs f2, 0x64(r1)
/* 80275EC4 00272E24 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 80275EC8 00272E28 81 83 00 00 */ lwz r12, 0(r3)
/* 80275ECC 00272E2C 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 80275ED0 00272E30 7D 89 03 A6 */ mtctr r12
/* 80275ED4 00272E34 4E 80 04 21 */ bctrl
/* 80275ED8 00272E38 80 7D 00 64 */ lwz r3, 0x64(r29)
/* 80275EDC 00272E3C 38 81 00 50 */ addi r4, r1, 0x50
/* 80275EE0 00272E40 C0 03 00 00 */ lfs f0, 0(r3)
/* 80275EE4 00272E44 D0 01 00 50 */ stfs f0, 0x50(r1)
/* 80275EE8 00272E48 C0 03 00 04 */ lfs f0, 4(r3)
/* 80275EEC 00272E4C D0 01 00 54 */ stfs f0, 0x54(r1)
/* 80275EF0 00272E50 C0 03 00 08 */ lfs f0, 8(r3)
/* 80275EF4 00272E54 D0 01 00 58 */ stfs f0, 0x58(r1)
/* 80275EF8 00272E58 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 80275EFC 00272E5C 81 83 00 00 */ lwz r12, 0(r3)
/* 80275F00 00272E60 81 8C 00 24 */ lwz r12, 0x24(r12)
/* 80275F04 00272E64 7D 89 03 A6 */ mtctr r12
/* 80275F08 00272E68 4E 80 04 21 */ bctrl
/* 80275F0C 00272E6C 88 1D 0F C0 */ lbz r0, 0xfc0(r29)
/* 80275F10 00272E70 28 00 00 00 */ cmplwi r0, 0
/* 80275F14 00272E74 41 82 02 1C */ beq lbl_80276130
/* 80275F18 00272E78 80 1D 0F BC */ lwz r0, 0xfbc(r29)
/* 80275F1C 00272E7C 28 00 00 00 */ cmplwi r0, 0
/* 80275F20 00272E80 41 82 00 3C */ beq lbl_80275F5C
/* 80275F24 00272E84 C0 5D 00 60 */ lfs f2, 0x60(r29)
/* 80275F28 00272E88 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80275F2C 00272E8C C0 3D 00 50 */ lfs f1, 0x50(r29)
/* 80275F30 00272E90 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l
/* 80275F34 00272E94 C0 1D 00 40 */ lfs f0, 0x40(r29)
/* 80275F38 00272E98 38 61 00 20 */ addi r3, r1, 0x20
/* 80275F3C 00272E9C 38 81 00 44 */ addi r4, r1, 0x44
/* 80275F40 00272EA0 38 C0 00 7F */ li r6, 0x7f
/* 80275F44 00272EA4 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 80275F48 00272EA8 D0 21 00 48 */ stfs f1, 0x48(r1)
/* 80275F4C 00272EAC D0 41 00 4C */ stfs f2, 0x4c(r1)
/* 80275F50 00272EB0 80 1D 0F BC */ lwz r0, 0xfbc(r29)
/* 80275F54 00272EB4 90 01 00 20 */ stw r0, 0x20(r1)
/* 80275F58 00272EB8 48 07 3F 59 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc
lbl_80275F5C:
/* 80275F5C 00272EBC 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 80275F60 00272EC0 38 80 00 01 */ li r4, 1
/* 80275F64 00272EC4 80 BD 00 64 */ lwz r5, 0x64(r29)
/* 80275F68 00272EC8 81 83 00 00 */ lwz r12, 0(r3)
/* 80275F6C 00272ECC 83 65 00 10 */ lwz r27, 0x10(r5)
/* 80275F70 00272ED0 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80275F74 00272ED4 7D 89 03 A6 */ mtctr r12
/* 80275F78 00272ED8 4E 80 04 21 */ bctrl
/* 80275F7C 00272EDC 3C 60 80 3F */ lis r3, lbl_803EAC74@ha
/* 80275F80 00272EE0 3B E0 00 00 */ li r31, 0
/* 80275F84 00272EE4 3B 83 AC 74 */ addi r28, r3, lbl_803EAC74@l
lbl_80275F88:
/* 80275F88 00272EE8 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 80275F8C 00272EEC 38 80 00 00 */ li r4, 0
/* 80275F90 00272EF0 38 A0 00 13 */ li r5, 0x13
/* 80275F94 00272EF4 48 09 C6 01 */ bl Range__9CRandom16Fii
/* 80275F98 00272EF8 54 60 10 3A */ slwi r0, r3, 2
/* 80275F9C 00272EFC 38 61 00 34 */ addi r3, r1, 0x34
/* 80275FA0 00272F00 7C 9C 00 2E */ lwzx r4, r28, r0
/* 80275FA4 00272F04 4B D8 ED 15 */ bl string_l__4rstlFPCc
/* 80275FA8 00272F08 7F 64 DB 78 */ mr r4, r27
/* 80275FAC 00272F0C 38 61 00 14 */ addi r3, r1, 0x14
/* 80275FB0 00272F10 38 A1 00 34 */ addi r5, r1, 0x34
/* 80275FB4 00272F14 4B DB 88 85 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80275FB8 00272F18 88 01 00 14 */ lbz r0, 0x14(r1)
/* 80275FBC 00272F1C 38 61 00 34 */ addi r3, r1, 0x34
/* 80275FC0 00272F20 98 01 00 1C */ stb r0, 0x1c(r1)
/* 80275FC4 00272F24 48 0C 7B 1D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80275FC8 00272F28 88 01 00 1C */ lbz r0, 0x1c(r1)
/* 80275FCC 00272F2C 7F 64 DB 78 */ mr r4, r27
/* 80275FD0 00272F30 38 61 00 98 */ addi r3, r1, 0x98
/* 80275FD4 00272F34 38 A1 00 10 */ addi r5, r1, 0x10
/* 80275FD8 00272F38 98 01 00 10 */ stb r0, 0x10(r1)
/* 80275FDC 00272F3C 38 C0 00 00 */ li r6, 0
/* 80275FE0 00272F40 4B DB 62 95 */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime
/* 80275FE4 00272F44 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 80275FE8 00272F48 C0 41 00 C4 */ lfs f2, 0xc4(r1)
/* 80275FEC 00272F4C 88 03 01 84 */ lbz r0, 0x184(r3)
/* 80275FF0 00272F50 C0 21 00 B4 */ lfs f1, 0xb4(r1)
/* 80275FF4 00272F54 28 00 00 00 */ cmplwi r0, 0
/* 80275FF8 00272F58 C0 01 00 A4 */ lfs f0, 0xa4(r1)
/* 80275FFC 00272F5C 40 82 00 24 */ bne lbl_80276020
/* 80276000 00272F60 34 83 01 78 */ addic. r4, r3, 0x178
/* 80276004 00272F64 41 82 00 10 */ beq lbl_80276014
/* 80276008 00272F68 D0 04 00 00 */ stfs f0, 0(r4)
/* 8027600C 00272F6C D0 24 00 04 */ stfs f1, 4(r4)
/* 80276010 00272F70 D0 44 00 08 */ stfs f2, 8(r4)
lbl_80276014:
/* 80276014 00272F74 38 00 00 01 */ li r0, 1
/* 80276018 00272F78 98 03 01 84 */ stb r0, 0x184(r3)
/* 8027601C 00272F7C 48 00 00 10 */ b lbl_8027602C
lbl_80276020:
/* 80276020 00272F80 D0 03 01 78 */ stfs f0, 0x178(r3)
/* 80276024 00272F84 D0 23 01 7C */ stfs f1, 0x17c(r3)
/* 80276028 00272F88 D0 43 01 80 */ stfs f2, 0x180(r3)
lbl_8027602C:
/* 8027602C 00272F8C 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 80276030 00272F90 38 80 00 00 */ li r4, 0
/* 80276034 00272F94 38 A0 00 13 */ li r5, 0x13
/* 80276038 00272F98 48 09 C5 5D */ bl Range__9CRandom16Fii
/* 8027603C 00272F9C 54 60 10 3A */ slwi r0, r3, 2
/* 80276040 00272FA0 38 61 00 24 */ addi r3, r1, 0x24
/* 80276044 00272FA4 7C 9C 00 2E */ lwzx r4, r28, r0
/* 80276048 00272FA8 4B D8 EC 71 */ bl string_l__4rstlFPCc
/* 8027604C 00272FAC 7F 64 DB 78 */ mr r4, r27
/* 80276050 00272FB0 38 61 00 0C */ addi r3, r1, 0xc
/* 80276054 00272FB4 38 A1 00 24 */ addi r5, r1, 0x24
/* 80276058 00272FB8 4B DB 87 E1 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8027605C 00272FBC 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80276060 00272FC0 38 61 00 24 */ addi r3, r1, 0x24
/* 80276064 00272FC4 98 01 00 18 */ stb r0, 0x18(r1)
/* 80276068 00272FC8 48 0C 7A 79 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8027606C 00272FCC 88 01 00 18 */ lbz r0, 0x18(r1)
/* 80276070 00272FD0 7F 64 DB 78 */ mr r4, r27
/* 80276074 00272FD4 38 61 00 68 */ addi r3, r1, 0x68
/* 80276078 00272FD8 38 A1 00 08 */ addi r5, r1, 8
/* 8027607C 00272FDC 98 01 00 08 */ stb r0, 8(r1)
/* 80276080 00272FE0 38 C0 00 00 */ li r6, 0
/* 80276084 00272FE4 4B DB 61 F1 */ bl GetLocatorTransform__9CAnimDataCF6CSegIdPC13CCharAnimTime
/* 80276088 00272FE8 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 8027608C 00272FEC C0 41 00 94 */ lfs f2, 0x94(r1)
/* 80276090 00272FF0 88 03 01 A4 */ lbz r0, 0x1a4(r3)
/* 80276094 00272FF4 C0 21 00 84 */ lfs f1, 0x84(r1)
/* 80276098 00272FF8 28 00 00 00 */ cmplwi r0, 0
/* 8027609C 00272FFC C0 01 00 74 */ lfs f0, 0x74(r1)
/* 802760A0 00273000 40 82 00 24 */ bne lbl_802760C4
/* 802760A4 00273004 34 83 01 98 */ addic. r4, r3, 0x198
/* 802760A8 00273008 41 82 00 10 */ beq lbl_802760B8
/* 802760AC 0027300C D0 04 00 00 */ stfs f0, 0(r4)
/* 802760B0 00273010 D0 24 00 04 */ stfs f1, 4(r4)
/* 802760B4 00273014 D0 44 00 08 */ stfs f2, 8(r4)
lbl_802760B8:
/* 802760B8 00273018 38 00 00 01 */ li r0, 1
/* 802760BC 0027301C 98 03 01 A4 */ stb r0, 0x1a4(r3)
/* 802760C0 00273020 48 00 00 10 */ b lbl_802760D0
lbl_802760C4:
/* 802760C4 00273024 D0 03 01 98 */ stfs f0, 0x198(r3)
/* 802760C8 00273028 D0 23 01 9C */ stfs f1, 0x19c(r3)
/* 802760CC 0027302C D0 43 01 A0 */ stfs f2, 0x1a0(r3)
lbl_802760D0:
/* 802760D0 00273030 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 802760D4 00273034 38 80 00 01 */ li r4, 1
/* 802760D8 00273038 48 0E 8E 65 */ bl ForceParticleCreation__17CParticleElectricFi
/* 802760DC 0027303C 3B FF 00 01 */ addi r31, r31, 1
/* 802760E0 00273040 2C 1F 00 04 */ cmpwi r31, 4
/* 802760E4 00273044 41 80 FE A4 */ blt lbl_80275F88
/* 802760E8 00273048 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 802760EC 0027304C 38 80 00 00 */ li r4, 0
/* 802760F0 00273050 81 83 00 00 */ lwz r12, 0(r3)
/* 802760F4 00273054 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 802760F8 00273058 7D 89 03 A6 */ mtctr r12
/* 802760FC 0027305C 4E 80 04 21 */ bctrl
/* 80276100 00273060 C0 3D 0F B4 */ lfs f1, 0xfb4(r29)
/* 80276104 00273064 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80276108 00273068 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8027610C 0027306C D0 3D 0F B4 */ stfs f1, 0xfb4(r29)
/* 80276110 00273070 C0 3D 0F B4 */ lfs f1, 0xfb4(r29)
/* 80276114 00273074 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80276118 00273078 4C 40 13 82 */ cror 2, 0, 2
/* 8027611C 0027307C 40 82 00 14 */ bne lbl_80276130
/* 80276120 00273080 7F A3 EB 78 */ mr r3, r29
/* 80276124 00273084 7F C4 F3 78 */ mr r4, r30
/* 80276128 00273088 38 A0 00 00 */ li r5, 0
/* 8027612C 0027308C 48 00 00 D9 */ bl sub_80276204
lbl_80276130:
/* 80276130 00273090 80 7D 0F B0 */ lwz r3, 0xfb0(r29)
/* 80276134 00273094 FC 20 F8 90 */ fmr f1, f31
/* 80276138 00273098 81 83 00 00 */ lwz r12, 0(r3)
/* 8027613C 0027309C 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80276140 002730A0 7D 89 03 A6 */ mtctr r12
/* 80276144 002730A4 4E 80 04 21 */ bctrl
lbl_80276148:
/* 80276148 002730A8 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0
/* 8027614C 002730AC CB E1 01 10 */ lfd f31, 0x110(r1)
/* 80276150 002730B0 BB 61 00 FC */ lmw r27, 0xfc(r1)
/* 80276154 002730B4 80 01 01 24 */ lwz r0, 0x124(r1)
/* 80276158 002730B8 7C 08 03 A6 */ mtlr r0
/* 8027615C 002730BC 38 21 01 20 */ addi r1, r1, 0x120
/* 80276160 002730C0 4E 80 00 20 */ blr
.global sub_80276164
sub_80276164:
/* 80276164 002730C4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80276168 002730C8 7C 08 02 A6 */ mflr r0
/* 8027616C 002730CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80276170 002730D0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80276174 002730D4 7C 7F 1B 78 */ mr r31, r3
/* 80276178 002730D8 88 03 0F C1 */ lbz r0, 0xfc1(r3)
/* 8027617C 002730DC 28 00 00 00 */ cmplwi r0, 0
/* 80276180 002730E0 41 82 00 70 */ beq lbl_802761F0
/* 80276184 002730E4 C0 5F 0F B8 */ lfs f2, 0xfb8(r31)
/* 80276188 002730E8 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027618C 002730EC EC 22 08 28 */ fsubs f1, f2, f1
/* 80276190 002730F0 D0 3F 0F B8 */ stfs f1, 0xfb8(r31)
/* 80276194 002730F4 C0 3F 0F B8 */ lfs f1, 0xfb8(r31)
/* 80276198 002730F8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8027619C 002730FC 4C 40 13 82 */ cror 2, 0, 2
/* 802761A0 00273100 40 82 00 0C */ bne lbl_802761AC
/* 802761A4 00273104 38 A0 00 00 */ li r5, 0
/* 802761A8 00273108 48 00 01 F5 */ bl sub_8027639c
lbl_802761AC:
/* 802761AC 0027310C 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 802761B0 00273110 28 00 00 00 */ cmplwi r0, 0
/* 802761B4 00273114 41 82 00 3C */ beq lbl_802761F0
/* 802761B8 00273118 C0 5F 00 60 */ lfs f2, 0x60(r31)
/* 802761BC 0027311C 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 802761C0 00273120 C0 3F 00 50 */ lfs f1, 0x50(r31)
/* 802761C4 00273124 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l
/* 802761C8 00273128 C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 802761CC 0027312C 38 61 00 08 */ addi r3, r1, 8
/* 802761D0 00273130 38 81 00 0C */ addi r4, r1, 0xc
/* 802761D4 00273134 38 C0 00 7F */ li r6, 0x7f
/* 802761D8 00273138 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 802761DC 0027313C D0 21 00 10 */ stfs f1, 0x10(r1)
/* 802761E0 00273140 D0 41 00 14 */ stfs f2, 0x14(r1)
/* 802761E4 00273144 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 802761E8 00273148 90 01 00 08 */ stw r0, 8(r1)
/* 802761EC 0027314C 48 07 3C C5 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc
lbl_802761F0:
/* 802761F0 00273150 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802761F4 00273154 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802761F8 00273158 7C 08 03 A6 */ mtlr r0
/* 802761FC 0027315C 38 21 00 20 */ addi r1, r1, 0x20
/* 80276200 00273160 4E 80 00 20 */ blr
.global sub_80276204
sub_80276204:
/* 80276204 00273164 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80276208 00273168 7C 08 02 A6 */ mflr r0
/* 8027620C 0027316C 90 01 00 54 */ stw r0, 0x54(r1)
/* 80276210 00273170 54 A0 06 3F */ clrlwi. r0, r5, 0x18
/* 80276214 00273174 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 80276218 00273178 7C 7F 1B 78 */ mr r31, r3
/* 8027621C 0027317C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 80276220 00273180 7C BE 2B 78 */ mr r30, r5
/* 80276224 00273184 41 82 00 18 */ beq lbl_8027623C
/* 80276228 00273188 88 1F 0F C1 */ lbz r0, 0xfc1(r31)
/* 8027622C 0027318C 28 00 00 00 */ cmplwi r0, 0
/* 80276230 00273190 41 82 00 0C */ beq lbl_8027623C
/* 80276234 00273194 38 A0 00 00 */ li r5, 0
/* 80276238 00273198 48 00 01 65 */ bl sub_8027639c
lbl_8027623C:
/* 8027623C 0027319C 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 80276240 002731A0 9B DF 0F C0 */ stb r30, 0xfc0(r31)
/* 80276244 002731A4 41 82 00 F8 */ beq lbl_8027633C
/* 80276248 002731A8 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 8027624C 002731AC 28 00 00 00 */ cmplwi r0, 0
/* 80276250 002731B0 41 82 00 14 */ beq lbl_80276264
/* 80276254 002731B4 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 80276258 002731B8 38 61 00 18 */ addi r3, r1, 0x18
/* 8027625C 002731BC 90 01 00 18 */ stw r0, 0x18(r1)
/* 80276260 002731C0 48 07 3C 25 */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle
lbl_80276264:
/* 80276264 002731C4 C0 5F 00 60 */ lfs f2, 0x60(r31)
/* 80276268 002731C8 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8027626C 002731CC C0 3F 00 50 */ lfs f1, 0x50(r31)
/* 80276270 002731D0 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l
/* 80276274 002731D4 C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 80276278 002731D8 38 61 00 14 */ addi r3, r1, 0x14
/* 8027627C 002731DC 80 02 C6 00 */ lwz r0, kAllAreas__11CSfxManager@sda21(r2)
/* 80276280 002731E0 38 A1 00 24 */ addi r5, r1, 0x24
/* 80276284 002731E4 D0 01 00 24 */ stfs f0, 0x24(r1)
/* 80276288 002731E8 38 80 05 19 */ li r4, 0x519
/* 8027628C 002731EC A9 42 C5 FA */ lha r10, kMedPriority__11CSfxManager@sda21(r2)
/* 80276290 002731F0 38 E0 00 7F */ li r7, 0x7f
/* 80276294 002731F4 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 80276298 002731F8 39 00 00 01 */ li r8, 1
/* 8027629C 002731FC 39 20 00 01 */ li r9, 1
/* 802762A0 00273200 D0 41 00 2C */ stfs f2, 0x2c(r1)
/* 802762A4 00273204 90 01 00 08 */ stw r0, 8(r1)
/* 802762A8 00273208 48 07 3F 11 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi
/* 802762AC 0027320C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802762B0 00273210 3C 60 80 3E */ lis r3, lbl_803DAA68@ha
/* 802762B4 00273214 38 C3 AA 68 */ addi r6, r3, lbl_803DAA68@l
/* 802762B8 00273218 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 802762BC 0027321C 90 1F 0F BC */ stw r0, 0xfbc(r31)
/* 802762C0 00273220 3C 80 80 3E */ lis r4, lbl_803E10C8@ha
/* 802762C4 00273224 38 E0 00 1A */ li r7, 0x1a
/* 802762C8 00273228 38 A0 00 00 */ li r5, 0
/* 802762CC 0027322C 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 802762D0 00273230 38 00 00 01 */ li r0, 1
/* 802762D4 00273234 90 C1 00 30 */ stw r6, 0x30(r1)
/* 802762D8 00273238 38 C4 10 C8 */ addi r6, r4, lbl_803E10C8@l
/* 802762DC 0027323C 3B E3 00 04 */ addi r31, r3, 4
/* 802762E0 00273240 38 80 00 1A */ li r4, 0x1a
/* 802762E4 00273244 90 E1 00 34 */ stw r7, 0x34(r1)
/* 802762E8 00273248 7F E3 FB 78 */ mr r3, r31
/* 802762EC 0027324C 90 C1 00 30 */ stw r6, 0x30(r1)
/* 802762F0 00273250 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 802762F4 00273254 90 A1 00 3C */ stw r5, 0x3c(r1)
/* 802762F8 00273258 98 01 00 40 */ stb r0, 0x40(r1)
/* 802762FC 0027325C 4B EB B1 3D */ bl DeliverCmd__16CBodyStateCmdMgrF13EBodyStateCmd
/* 80276300 00273260 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80276304 00273264 3C 60 80 3E */ lis r3, lbl_803E10C8@ha
/* 80276308 00273268 38 83 10 C8 */ addi r4, r3, lbl_803E10C8@l
/* 8027630C 0027326C 3C 60 80 3E */ lis r3, lbl_803DAA68@ha
/* 80276310 00273270 90 1F 02 88 */ stw r0, 0x288(r31)
/* 80276314 00273274 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l
/* 80276318 00273278 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 8027631C 0027327C 80 A1 00 3C */ lwz r5, 0x3c(r1)
/* 80276320 00273280 D0 1F 02 8C */ stfs f0, 0x28c(r31)
/* 80276324 00273284 88 61 00 40 */ lbz r3, 0x40(r1)
/* 80276328 00273288 90 BF 02 90 */ stw r5, 0x290(r31)
/* 8027632C 0027328C 90 81 00 30 */ stw r4, 0x30(r1)
/* 80276330 00273290 98 7F 02 94 */ stb r3, 0x294(r31)
/* 80276334 00273294 90 01 00 30 */ stw r0, 0x30(r1)
/* 80276338 00273298 48 00 00 4C */ b lbl_80276384
lbl_8027633C:
/* 8027633C 0027329C 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 80276340 002732A0 38 61 00 10 */ addi r3, r1, 0x10
/* 80276344 002732A4 90 01 00 10 */ stw r0, 0x10(r1)
/* 80276348 002732A8 48 07 3B 3D */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle
/* 8027634C 002732AC 38 00 00 00 */ li r0, 0
/* 80276350 002732B0 3C 60 80 3E */ lis r3, lbl_803DAA68@ha
/* 80276354 002732B4 90 1F 0F BC */ stw r0, 0xfbc(r31)
/* 80276358 002732B8 38 63 AA 68 */ addi r3, r3, lbl_803DAA68@l
/* 8027635C 002732BC 38 00 00 1B */ li r0, 0x1b
/* 80276360 002732C0 38 81 00 1C */ addi r4, r1, 0x1c
/* 80276364 002732C4 90 61 00 1C */ stw r3, 0x1c(r1)
/* 80276368 002732C8 90 01 00 20 */ stw r0, 0x20(r1)
/* 8027636C 002732CC 80 7F 04 50 */ lwz r3, 0x450(r31)
/* 80276370 002732D0 38 63 00 04 */ addi r3, r3, 4
/* 80276374 002732D4 4B EB B4 45 */ bl DeliverCmd__16CBodyStateCmdMgrFRC13CBodyStateCmd
/* 80276378 002732D8 3C 60 80 3E */ lis r3, lbl_803DAA68@ha
/* 8027637C 002732DC 38 03 AA 68 */ addi r0, r3, lbl_803DAA68@l
/* 80276380 002732E0 90 01 00 1C */ stw r0, 0x1c(r1)
lbl_80276384:
/* 80276384 002732E4 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80276388 002732E8 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8027638C 002732EC 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 80276390 002732F0 7C 08 03 A6 */ mtlr r0
/* 80276394 002732F4 38 21 00 50 */ addi r1, r1, 0x50
/* 80276398 002732F8 4E 80 00 20 */ blr
.global sub_8027639c
sub_8027639c:
/* 8027639C 002732FC 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 802763A0 00273300 7C 08 02 A6 */ mflr r0
/* 802763A4 00273304 90 01 00 54 */ stw r0, 0x54(r1)
/* 802763A8 00273308 54 A0 06 3F */ clrlwi. r0, r5, 0x18
/* 802763AC 0027330C BF 61 00 3C */ stmw r27, 0x3c(r1)
/* 802763B0 00273310 7C BC 2B 78 */ mr r28, r5
/* 802763B4 00273314 7C 7F 1B 78 */ mr r31, r3
/* 802763B8 00273318 7C 9B 23 78 */ mr r27, r4
/* 802763BC 0027331C 41 82 00 18 */ beq lbl_802763D4
/* 802763C0 00273320 88 1F 0F C0 */ lbz r0, 0xfc0(r31)
/* 802763C4 00273324 28 00 00 00 */ cmplwi r0, 0
/* 802763C8 00273328 41 82 00 0C */ beq lbl_802763D4
/* 802763CC 0027332C 38 A0 00 00 */ li r5, 0
/* 802763D0 00273330 4B FF FE 35 */ bl sub_80276204
lbl_802763D4:
/* 802763D4 00273334 3C 60 80 3D */ lis r3, lbl_803D5444@ha
/* 802763D8 00273338 3B A0 00 00 */ li r29, 0
/* 802763DC 0027333C 3B C3 54 44 */ addi r30, r3, lbl_803D5444@l
lbl_802763E0:
/* 802763E0 00273340 80 9E 00 00 */ lwz r4, 0(r30)
/* 802763E4 00273344 38 61 00 28 */ addi r3, r1, 0x28
/* 802763E8 00273348 4B D8 E8 D1 */ bl string_l__4rstlFPCc
/* 802763EC 0027334C 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 802763F0 00273350 7F 85 E3 78 */ mr r5, r28
/* 802763F4 00273354 7F 66 DB 78 */ mr r6, r27
/* 802763F8 00273358 38 81 00 28 */ addi r4, r1, 0x28
/* 802763FC 0027335C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80276400 00273360 4B DB 49 C1 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager
/* 80276404 00273364 38 61 00 28 */ addi r3, r1, 0x28
/* 80276408 00273368 48 0C 76 D9 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8027640C 0027336C 3B BD 00 01 */ addi r29, r29, 1
/* 80276410 00273370 3B DE 00 04 */ addi r30, r30, 4
/* 80276414 00273374 28 1D 00 04 */ cmplwi r29, 4
/* 80276418 00273378 41 80 FF C8 */ blt lbl_802763E0
/* 8027641C 0027337C 57 80 06 3F */ clrlwi. r0, r28, 0x18
/* 80276420 00273380 9B 9F 0F C1 */ stb r28, 0xfc1(r31)
/* 80276424 00273384 41 82 00 74 */ beq lbl_80276498
/* 80276428 00273388 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 8027642C 0027338C 28 00 00 00 */ cmplwi r0, 0
/* 80276430 00273390 41 82 00 14 */ beq lbl_80276444
/* 80276434 00273394 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 80276438 00273398 38 61 00 18 */ addi r3, r1, 0x18
/* 8027643C 0027339C 90 01 00 18 */ stw r0, 0x18(r1)
/* 80276440 002733A0 48 07 3A 45 */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle
lbl_80276444:
/* 80276444 002733A4 C0 5F 00 60 */ lfs f2, 0x60(r31)
/* 80276448 002733A8 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8027644C 002733AC C0 3F 00 50 */ lfs f1, 0x50(r31)
/* 80276450 002733B0 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l
/* 80276454 002733B4 C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 80276458 002733B8 38 61 00 14 */ addi r3, r1, 0x14
/* 8027645C 002733BC 80 02 C6 00 */ lwz r0, kAllAreas__11CSfxManager@sda21(r2)
/* 80276460 002733C0 38 A1 00 1C */ addi r5, r1, 0x1c
/* 80276464 002733C4 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 80276468 002733C8 38 80 05 1A */ li r4, 0x51a
/* 8027646C 002733CC A9 42 C5 FA */ lha r10, kMedPriority__11CSfxManager@sda21(r2)
/* 80276470 002733D0 38 E0 00 7F */ li r7, 0x7f
/* 80276474 002733D4 D0 21 00 20 */ stfs f1, 0x20(r1)
/* 80276478 002733D8 39 00 00 01 */ li r8, 1
/* 8027647C 002733DC 39 20 00 01 */ li r9, 1
/* 80276480 002733E0 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80276484 002733E4 90 01 00 08 */ stw r0, 8(r1)
/* 80276488 002733E8 48 07 3D 31 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fUcbbsi
/* 8027648C 002733EC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80276490 002733F0 90 1F 0F BC */ stw r0, 0xfbc(r31)
/* 80276494 002733F4 48 00 00 1C */ b lbl_802764B0
lbl_80276498:
/* 80276498 002733F8 80 1F 0F BC */ lwz r0, 0xfbc(r31)
/* 8027649C 002733FC 38 61 00 10 */ addi r3, r1, 0x10
/* 802764A0 00273400 90 01 00 10 */ stw r0, 0x10(r1)
/* 802764A4 00273404 48 07 39 E1 */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle
/* 802764A8 00273408 38 00 00 00 */ li r0, 0
/* 802764AC 0027340C 90 1F 0F BC */ stw r0, 0xfbc(r31)
lbl_802764B0:
/* 802764B0 00273410 BB 61 00 3C */ lmw r27, 0x3c(r1)
/* 802764B4 00273414 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802764B8 00273418 7C 08 03 A6 */ mtlr r0
/* 802764BC 0027341C 38 21 00 50 */ addi r1, r1, 0x50
/* 802764C0 00273420 4E 80 00 20 */ blr
.global sub_802764c4
sub_802764c4:
/* 802764C4 00273424 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802764C8 00273428 7C 08 02 A6 */ mflr r0
/* 802764CC 0027342C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802764D0 00273430 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802764D4 00273434 7C DF 33 78 */ mr r31, r6
/* 802764D8 00273438 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802764DC 0027343C 7C 9E 23 78 */ mr r30, r4
/* 802764E0 00273440 38 81 00 08 */ addi r4, r1, 8
/* 802764E4 00273444 A0 05 00 00 */ lhz r0, 0(r5)
/* 802764E8 00273448 7F C3 F3 78 */ mr r3, r30
/* 802764EC 0027344C B0 01 00 08 */ sth r0, 8(r1)
/* 802764F0 00273450 4B DD 60 85 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 802764F4 00273454 7C 64 1B 79 */ or. r4, r3, r3
/* 802764F8 00273458 41 82 00 18 */ beq lbl_80276510
/* 802764FC 0027345C 80 1F 00 00 */ lwz r0, 0(r31)
/* 80276500 00273460 7F C3 F3 78 */ mr r3, r30
/* 80276504 00273464 38 A1 00 0C */ addi r5, r1, 0xc
/* 80276508 00273468 90 01 00 0C */ stw r0, 0xc(r1)
/* 8027650C 0027346C 4B DC ED 6D */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId
lbl_80276510:
/* 80276510 00273470 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80276514 00273474 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80276518 00273478 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8027651C 0027347C 7C 08 03 A6 */ mtlr r0
/* 80276520 00273480 38 21 00 20 */ addi r1, r1, 0x20
/* 80276524 00273484 4E 80 00 20 */ blr
.global sub_80276528
sub_80276528:
/* 80276528 00273488 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8027652C 0027348C 7C 08 02 A6 */ mflr r0
/* 80276530 00273490 90 01 00 54 */ stw r0, 0x54(r1)
/* 80276534 00273494 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 80276538 00273498 7C 9F 23 78 */ mr r31, r4
/* 8027653C 0027349C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 80276540 002734A0 7C 7E 1B 78 */ mr r30, r3
/* 80276544 002734A4 93 A1 00 44 */ stw r29, 0x44(r1)
/* 80276548 002734A8 93 81 00 40 */ stw r28, 0x40(r1)
/* 8027654C 002734AC 88 03 09 14 */ lbz r0, 0x914(r3)
/* 80276550 002734B0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80276554 002734B4 41 82 01 70 */ beq lbl_802766C4
/* 80276558 002734B8 80 BF 08 50 */ lwz r5, 0x850(r31)
/* 8027655C 002734BC 80 A5 00 68 */ lwz r5, 0x68(r5)
/* 80276560 002734C0 90 A1 00 34 */ stw r5, 0x34(r1)
/* 80276564 002734C4 80 1E 00 04 */ lwz r0, 4(r30)
/* 80276568 002734C8 7C 00 28 00 */ cmpw r0, r5
/* 8027656C 002734CC 41 82 01 34 */ beq lbl_802766A0
/* 80276570 002734D0 38 A1 00 34 */ addi r5, r1, 0x34
/* 80276574 002734D4 48 00 09 4D */ bl sub_80276ec0
/* 80276578 002734D8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8027657C 002734DC 41 82 01 10 */ beq lbl_8027668C
/* 80276580 002734E0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80276584 002734E4 7F C3 F3 78 */ mr r3, r30
/* 80276588 002734E8 7F E4 FB 78 */ mr r4, r31
/* 8027658C 002734EC 38 A1 00 1C */ addi r5, r1, 0x1c
/* 80276590 002734F0 90 01 00 30 */ stw r0, 0x30(r1)
/* 80276594 002734F4 38 C1 00 30 */ addi r6, r1, 0x30
/* 80276598 002734F8 A0 1E 00 08 */ lhz r0, 8(r30)
/* 8027659C 002734FC B0 01 00 18 */ sth r0, 0x18(r1)
/* 802765A0 00273500 B0 01 00 1C */ sth r0, 0x1c(r1)
/* 802765A4 00273504 4B FF FF 21 */ bl sub_802764c4
/* 802765A8 00273508 3B A0 00 00 */ li r29, 0
/* 802765AC 0027350C 48 00 00 3C */ b lbl_802765E8
lbl_802765B0:
/* 802765B0 00273510 80 7E 05 6C */ lwz r3, 0x56c(r30)
/* 802765B4 00273514 7F A4 EB 78 */ mr r4, r29
/* 802765B8 00273518 4B F3 0C 81 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi
/* 802765BC 0027351C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802765C0 00273520 7F E4 FB 78 */ mr r4, r31
/* 802765C4 00273524 38 A1 00 14 */ addi r5, r1, 0x14
/* 802765C8 00273528 38 C1 00 2C */ addi r6, r1, 0x2c
/* 802765CC 0027352C 90 01 00 2C */ stw r0, 0x2c(r1)
/* 802765D0 00273530 A0 03 00 3C */ lhz r0, 0x3c(r3)
/* 802765D4 00273534 7F C3 F3 78 */ mr r3, r30
/* 802765D8 00273538 B0 01 00 10 */ sth r0, 0x10(r1)
/* 802765DC 0027353C B0 01 00 14 */ sth r0, 0x14(r1)
/* 802765E0 00273540 4B FF FE E5 */ bl sub_802764c4
/* 802765E4 00273544 3B BD 00 01 */ addi r29, r29, 1
lbl_802765E8:
/* 802765E8 00273548 80 7E 05 6C */ lwz r3, 0x56c(r30)
/* 802765EC 0027354C 4B F3 0C 5D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv
/* 802765F0 00273550 7C 1D 18 40 */ cmplw r29, r3
/* 802765F4 00273554 41 80 FF BC */ blt lbl_802765B0
/* 802765F8 00273558 3B BE 0B 28 */ addi r29, r30, 0xb28
/* 802765FC 0027355C 3B 80 00 00 */ li r28, 0
/* 80276600 00273560 48 00 00 30 */ b lbl_80276630
lbl_80276604:
/* 80276604 00273564 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80276608 00273568 7F C3 F3 78 */ mr r3, r30
/* 8027660C 0027356C 7F E4 FB 78 */ mr r4, r31
/* 80276610 00273570 38 A1 00 0C */ addi r5, r1, 0xc
/* 80276614 00273574 90 01 00 28 */ stw r0, 0x28(r1)
/* 80276618 00273578 38 C1 00 28 */ addi r6, r1, 0x28
/* 8027661C 0027357C A0 1D 00 00 */ lhz r0, 0(r29)
/* 80276620 00273580 B0 01 00 0C */ sth r0, 0xc(r1)
/* 80276624 00273584 4B FF FE A1 */ bl sub_802764c4
/* 80276628 00273588 3B BD 00 02 */ addi r29, r29, 2
/* 8027662C 0027358C 3B 9C 00 01 */ addi r28, r28, 1
lbl_80276630:
/* 80276630 00273590 80 1E 0B 24 */ lwz r0, 0xb24(r30)
/* 80276634 00273594 7C 1C 00 00 */ cmpw r28, r0
/* 80276638 00273598 41 80 FF CC */ blt lbl_80276604
/* 8027663C 0027359C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80276640 002735A0 7F C3 F3 78 */ mr r3, r30
/* 80276644 002735A4 7F E4 FB 78 */ mr r4, r31
/* 80276648 002735A8 38 A1 00 08 */ addi r5, r1, 8
/* 8027664C 002735AC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80276650 002735B0 38 C1 00 24 */ addi r6, r1, 0x24
/* 80276654 002735B4 A0 1E 0E AC */ lhz r0, 0xeac(r30)
/* 80276658 002735B8 B0 01 00 08 */ sth r0, 8(r1)
/* 8027665C 002735BC 4B FF FE 69 */ bl sub_802764c4
/* 80276660 002735C0 80 1E 00 04 */ lwz r0, 4(r30)
/* 80276664 002735C4 7F C3 F3 78 */ mr r3, r30
/* 80276668 002735C8 7F E4 FB 78 */ mr r4, r31
/* 8027666C 002735CC 38 A1 00 20 */ addi r5, r1, 0x20
/* 80276670 002735D0 90 01 00 20 */ stw r0, 0x20(r1)
/* 80276674 002735D4 48 00 06 BD */ bl sub_80276d30
/* 80276678 002735D8 7F C3 F3 78 */ mr r3, r30
/* 8027667C 002735DC 7F E5 FB 78 */ mr r5, r31
/* 80276680 002735E0 38 80 00 07 */ li r4, 7
/* 80276684 002735E4 48 00 00 61 */ bl sub_802766e4
/* 80276688 002735E8 48 00 00 3C */ b lbl_802766C4
lbl_8027668C:
/* 8027668C 002735EC 88 1E 14 44 */ lbz r0, 0x1444(r30)
/* 80276690 002735F0 38 60 00 01 */ li r3, 1
/* 80276694 002735F4 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 80276698 002735F8 98 1E 14 44 */ stb r0, 0x1444(r30)
/* 8027669C 002735FC 48 00 00 28 */ b lbl_802766C4
lbl_802766A0:
/* 802766A0 00273600 88 9E 14 44 */ lbz r4, 0x1444(r30)
/* 802766A4 00273604 54 80 D7 FF */ rlwinm. r0, r4, 0x1a, 0x1f, 0x1f
/* 802766A8 00273608 41 82 00 1C */ beq lbl_802766C4
/* 802766AC 0027360C 38 00 00 00 */ li r0, 0
/* 802766B0 00273610 7F E5 FB 78 */ mr r5, r31
/* 802766B4 00273614 50 04 36 72 */ rlwimi r4, r0, 6, 0x19, 0x19
/* 802766B8 00273618 98 9E 14 44 */ stb r4, 0x1444(r30)
/* 802766BC 0027361C 38 80 00 07 */ li r4, 7
/* 802766C0 00273620 48 00 00 25 */ bl sub_802766e4
lbl_802766C4:
/* 802766C4 00273624 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802766C8 00273628 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 802766CC 0027362C 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 802766D0 00273630 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 802766D4 00273634 83 81 00 40 */ lwz r28, 0x40(r1)
/* 802766D8 00273638 7C 08 03 A6 */ mtlr r0
/* 802766DC 0027363C 38 21 00 50 */ addi r1, r1, 0x50
/* 802766E0 00273640 4E 80 00 20 */ blr
.global sub_802766e4
sub_802766e4:
/* 802766E4 00273644 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802766E8 00273648 7C 08 02 A6 */ mflr r0
/* 802766EC 0027364C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802766F0 00273650 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802766F4 00273654 7C BF 2B 78 */ mr r31, r5
/* 802766F8 00273658 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802766FC 0027365C 7C 9E 23 78 */ mr r30, r4
/* 80276700 00273660 38 81 00 08 */ addi r4, r1, 8
/* 80276704 00273664 A0 03 05 68 */ lhz r0, 0x568(r3)
/* 80276708 00273668 7F E3 FB 78 */ mr r3, r31
/* 8027670C 0027366C B0 01 00 08 */ sth r0, 8(r1)
/* 80276710 00273670 4B DD 5E 65 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80276714 00273674 7C 64 1B 78 */ mr r4, r3
/* 80276718 00273678 38 61 00 0C */ addi r3, r1, 0xc
/* 8027671C 0027367C 4B E3 69 CD */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276720 00273680 80 63 00 04 */ lwz r3, 4(r3)
/* 80276724 00273684 28 03 00 00 */ cmplwi r3, 0
/* 80276728 00273688 41 82 00 14 */ beq lbl_8027673C
/* 8027672C 0027368C 7F C4 F3 78 */ mr r4, r30
/* 80276730 00273690 7F E5 FB 78 */ mr r5, r31
/* 80276734 00273694 38 C0 FF FF */ li r6, -1
/* 80276738 00273698 4B DD A9 89 */ bl SendScriptMsgs__7CEntityF18EScriptObjectStateR13CStateManager20EScriptObjectMessage
lbl_8027673C:
/* 8027673C 0027369C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80276740 002736A0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80276744 002736A4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80276748 002736A8 7C 08 03 A6 */ mtlr r0
/* 8027674C 002736AC 38 21 00 20 */ addi r1, r1, 0x20
/* 80276750 002736B0 4E 80 00 20 */ blr
.global sub_80276754
sub_80276754:
/* 80276754 002736B4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80276758 002736B8 7C 08 02 A6 */ mflr r0
/* 8027675C 002736BC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80276760 002736C0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80276764 002736C4 7C 7F 1B 78 */ mr r31, r3
/* 80276768 002736C8 38 DF 11 64 */ addi r6, r31, 0x1164
/* 8027676C 002736CC 38 60 00 00 */ li r3, 0
/* 80276770 002736D0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80276774 002736D4 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80276778 002736D8 7C 9D 23 78 */ mr r29, r4
/* 8027677C 002736DC 48 00 00 70 */ b lbl_802767EC
lbl_80276780:
/* 80276780 002736E0 28 06 00 00 */ cmplwi r6, 0
/* 80276784 002736E4 41 82 00 60 */ beq lbl_802767E4
/* 80276788 002736E8 41 82 00 5C */ beq lbl_802767E4
/* 8027678C 002736EC 80 E6 00 00 */ lwz r7, 0(r6)
/* 80276790 002736F0 38 80 00 00 */ li r4, 0
/* 80276794 002736F4 2C 07 00 00 */ cmpwi r7, 0
/* 80276798 002736F8 40 81 00 44 */ ble lbl_802767DC
/* 8027679C 002736FC 2C 07 00 08 */ cmpwi r7, 8
/* 802767A0 00273700 38 A7 FF F8 */ addi r5, r7, -8
/* 802767A4 00273704 40 81 00 20 */ ble lbl_802767C4
/* 802767A8 00273708 38 05 00 07 */ addi r0, r5, 7
/* 802767AC 0027370C 54 00 E8 FE */ srwi r0, r0, 3
/* 802767B0 00273710 7C 09 03 A6 */ mtctr r0
/* 802767B4 00273714 2C 05 00 00 */ cmpwi r5, 0
/* 802767B8 00273718 40 81 00 0C */ ble lbl_802767C4
lbl_802767BC:
/* 802767BC 0027371C 38 84 00 08 */ addi r4, r4, 8
/* 802767C0 00273720 42 00 FF FC */ bdnz lbl_802767BC
lbl_802767C4:
/* 802767C4 00273724 7C 04 38 50 */ subf r0, r4, r7
/* 802767C8 00273728 7C 09 03 A6 */ mtctr r0
/* 802767CC 0027372C 7C 04 38 00 */ cmpw r4, r7
/* 802767D0 00273730 40 80 00 0C */ bge lbl_802767DC
lbl_802767D4:
/* 802767D4 00273734 38 84 00 01 */ addi r4, r4, 1
/* 802767D8 00273738 42 00 FF FC */ bdnz lbl_802767D4
lbl_802767DC:
/* 802767DC 0027373C 38 00 00 00 */ li r0, 0
/* 802767E0 00273740 90 06 00 00 */ stw r0, 0(r6)
lbl_802767E4:
/* 802767E4 00273744 38 C6 00 3C */ addi r6, r6, 0x3c
/* 802767E8 00273748 38 63 00 01 */ addi r3, r3, 1
lbl_802767EC:
/* 802767EC 0027374C 80 1F 11 60 */ lwz r0, 0x1160(r31)
/* 802767F0 00273750 7C 03 00 00 */ cmpw r3, r0
/* 802767F4 00273754 41 80 FF 8C */ blt lbl_80276780
/* 802767F8 00273758 38 00 00 00 */ li r0, 0
/* 802767FC 0027375C 7F A3 EB 78 */ mr r3, r29
/* 80276800 00273760 90 1F 11 60 */ stw r0, 0x1160(r31)
/* 80276804 00273764 38 81 00 08 */ addi r4, r1, 8
/* 80276808 00273768 A0 1F 05 68 */ lhz r0, 0x568(r31)
/* 8027680C 0027376C B0 01 00 08 */ sth r0, 8(r1)
/* 80276810 00273770 4B DD 5D 95 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80276814 00273774 7C 64 1B 78 */ mr r4, r3
/* 80276818 00273778 38 61 00 0C */ addi r3, r1, 0xc
/* 8027681C 0027377C 4B E3 68 CD */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276820 00273780 83 C3 00 04 */ lwz r30, 4(r3)
/* 80276824 00273784 28 1E 00 00 */ cmplwi r30, 0
/* 80276828 00273788 41 82 00 8C */ beq lbl_802768B4
/* 8027682C 0027378C 38 7F 11 60 */ addi r3, r31, 0x1160
/* 80276830 00273790 38 9E 0C B8 */ addi r4, r30, 0xcb8
/* 80276834 00273794 48 00 00 9D */ bl sub_802768d0
/* 80276838 00273798 C0 1E 0C 9C */ lfs f0, 0xc9c(r30)
/* 8027683C 0027379C 38 00 00 00 */ li r0, 0
/* 80276840 002737A0 7F E3 FB 78 */ mr r3, r31
/* 80276844 002737A4 7F A4 EB 78 */ mr r4, r29
/* 80276848 002737A8 D0 1F 08 C0 */ stfs f0, 0x8c0(r31)
/* 8027684C 002737AC C0 1E 0C A0 */ lfs f0, 0xca0(r30)
/* 80276850 002737B0 D0 1F 08 C4 */ stfs f0, 0x8c4(r31)
/* 80276854 002737B4 C0 1E 0C A4 */ lfs f0, 0xca4(r30)
/* 80276858 002737B8 D0 1F 10 4C */ stfs f0, 0x104c(r31)
/* 8027685C 002737BC C0 1E 0C A8 */ lfs f0, 0xca8(r30)
/* 80276860 002737C0 D0 1F 10 50 */ stfs f0, 0x1050(r31)
/* 80276864 002737C4 C0 1E 0C 84 */ lfs f0, 0xc84(r30)
/* 80276868 002737C8 D0 1F 09 24 */ stfs f0, 0x924(r31)
/* 8027686C 002737CC C0 1E 0C 88 */ lfs f0, 0xc88(r30)
/* 80276870 002737D0 D0 1F 09 28 */ stfs f0, 0x928(r31)
/* 80276874 002737D4 C0 1E 0C 8C */ lfs f0, 0xc8c(r30)
/* 80276878 002737D8 D0 1F 10 80 */ stfs f0, 0x1080(r31)
/* 8027687C 002737DC 80 BE 0C 90 */ lwz r5, 0xc90(r30)
/* 80276880 002737E0 90 BF 14 40 */ stw r5, 0x1440(r31)
/* 80276884 002737E4 80 BE 0C AC */ lwz r5, 0xcac(r30)
/* 80276888 002737E8 90 BF 09 18 */ stw r5, 0x918(r31)
/* 8027688C 002737EC 88 BE 0C 94 */ lbz r5, 0xc94(r30)
/* 80276890 002737F0 98 BF 05 84 */ stb r5, 0x584(r31)
/* 80276894 002737F4 80 BE 0C 98 */ lwz r5, 0xc98(r30)
/* 80276898 002737F8 90 BF 05 74 */ stw r5, 0x574(r31)
/* 8027689C 002737FC 80 BE 0C B0 */ lwz r5, 0xcb0(r30)
/* 802768A0 00273800 90 BF 08 D4 */ stw r5, 0x8d4(r31)
/* 802768A4 00273804 80 BE 0C B4 */ lwz r5, 0xcb4(r30)
/* 802768A8 00273808 90 BF 05 7C */ stw r5, 0x57c(r31)
/* 802768AC 0027380C 90 1F 05 80 */ stw r0, 0x580(r31)
/* 802768B0 00273810 4B FF F3 B1 */ bl sub_80275c60
lbl_802768B4:
/* 802768B4 00273814 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802768B8 00273818 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802768BC 0027381C 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802768C0 00273820 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802768C4 00273824 7C 08 03 A6 */ mtlr r0
/* 802768C8 00273828 38 21 00 30 */ addi r1, r1, 0x30
/* 802768CC 0027382C 4E 80 00 20 */ blr
.global sub_802768d0
sub_802768d0:
/* 802768D0 00273830 7C 03 20 40 */ cmplw r3, r4
/* 802768D4 00273834 4D 82 00 20 */ beqlr
/* 802768D8 00273838 39 03 00 04 */ addi r8, r3, 4
/* 802768DC 0027383C 38 A0 00 00 */ li r5, 0
/* 802768E0 00273840 48 00 00 70 */ b lbl_80276950
lbl_802768E4:
/* 802768E4 00273844 28 08 00 00 */ cmplwi r8, 0
/* 802768E8 00273848 41 82 00 60 */ beq lbl_80276948
/* 802768EC 0027384C 41 82 00 5C */ beq lbl_80276948
/* 802768F0 00273850 81 28 00 00 */ lwz r9, 0(r8)
/* 802768F4 00273854 38 C0 00 00 */ li r6, 0
/* 802768F8 00273858 2C 09 00 00 */ cmpwi r9, 0
/* 802768FC 0027385C 40 81 00 44 */ ble lbl_80276940
/* 80276900 00273860 2C 09 00 08 */ cmpwi r9, 8
/* 80276904 00273864 38 E9 FF F8 */ addi r7, r9, -8
/* 80276908 00273868 40 81 00 20 */ ble lbl_80276928
/* 8027690C 0027386C 38 07 00 07 */ addi r0, r7, 7
/* 80276910 00273870 54 00 E8 FE */ srwi r0, r0, 3
/* 80276914 00273874 7C 09 03 A6 */ mtctr r0
/* 80276918 00273878 2C 07 00 00 */ cmpwi r7, 0
/* 8027691C 0027387C 40 81 00 0C */ ble lbl_80276928
lbl_80276920:
/* 80276920 00273880 38 C6 00 08 */ addi r6, r6, 8
/* 80276924 00273884 42 00 FF FC */ bdnz lbl_80276920
lbl_80276928:
/* 80276928 00273888 7C 06 48 50 */ subf r0, r6, r9
/* 8027692C 0027388C 7C 09 03 A6 */ mtctr r0
/* 80276930 00273890 7C 06 48 00 */ cmpw r6, r9
/* 80276934 00273894 40 80 00 0C */ bge lbl_80276940
lbl_80276938:
/* 80276938 00273898 38 C6 00 01 */ addi r6, r6, 1
/* 8027693C 0027389C 42 00 FF FC */ bdnz lbl_80276938
lbl_80276940:
/* 80276940 002738A0 38 00 00 00 */ li r0, 0
/* 80276944 002738A4 90 08 00 00 */ stw r0, 0(r8)
lbl_80276948:
/* 80276948 002738A8 39 08 00 3C */ addi r8, r8, 0x3c
/* 8027694C 002738AC 38 A5 00 01 */ addi r5, r5, 1
lbl_80276950:
/* 80276950 002738B0 80 03 00 00 */ lwz r0, 0(r3)
/* 80276954 002738B4 7C 05 00 00 */ cmpw r5, r0
/* 80276958 002738B8 41 80 FF 8C */ blt lbl_802768E4
/* 8027695C 002738BC 38 00 00 00 */ li r0, 0
/* 80276960 002738C0 38 C3 00 04 */ addi r6, r3, 4
/* 80276964 002738C4 90 03 00 00 */ stw r0, 0(r3)
/* 80276968 002738C8 38 A4 00 04 */ addi r5, r4, 4
/* 8027696C 002738CC 80 04 00 00 */ lwz r0, 0(r4)
/* 80276970 002738D0 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 80276974 002738D4 7C E4 02 14 */ add r7, r4, r0
/* 80276978 002738D8 38 E7 00 04 */ addi r7, r7, 4
/* 8027697C 002738DC 48 00 00 50 */ b lbl_802769CC
lbl_80276980:
/* 80276980 002738E0 28 06 00 00 */ cmplwi r6, 0
/* 80276984 002738E4 41 82 00 40 */ beq lbl_802769C4
/* 80276988 002738E8 80 05 00 00 */ lwz r0, 0(r5)
/* 8027698C 002738EC 39 25 00 04 */ addi r9, r5, 4
/* 80276990 002738F0 39 06 00 04 */ addi r8, r6, 4
/* 80276994 002738F4 90 06 00 00 */ stw r0, 0(r6)
/* 80276998 002738F8 80 06 00 00 */ lwz r0, 0(r6)
/* 8027699C 002738FC 7C 09 03 A6 */ mtctr r0
/* 802769A0 00273900 2C 00 00 00 */ cmpwi r0, 0
/* 802769A4 00273904 40 81 00 20 */ ble lbl_802769C4
lbl_802769A8:
/* 802769A8 00273908 28 08 00 00 */ cmplwi r8, 0
/* 802769AC 0027390C 41 82 00 0C */ beq lbl_802769B8
/* 802769B0 00273910 C0 09 00 00 */ lfs f0, 0(r9)
/* 802769B4 00273914 D0 08 00 00 */ stfs f0, 0(r8)
lbl_802769B8:
/* 802769B8 00273918 39 08 00 04 */ addi r8, r8, 4
/* 802769BC 0027391C 39 29 00 04 */ addi r9, r9, 4
/* 802769C0 00273920 42 00 FF E8 */ bdnz lbl_802769A8
lbl_802769C4:
/* 802769C4 00273924 38 C6 00 3C */ addi r6, r6, 0x3c
/* 802769C8 00273928 38 A5 00 3C */ addi r5, r5, 0x3c
lbl_802769CC:
/* 802769CC 0027392C 7C 05 38 40 */ cmplw r5, r7
/* 802769D0 00273930 40 82 FF B0 */ bne lbl_80276980
/* 802769D4 00273934 80 04 00 00 */ lwz r0, 0(r4)
/* 802769D8 00273938 90 03 00 00 */ stw r0, 0(r3)
/* 802769DC 0027393C 4E 80 00 20 */ blr
.global sub_802769e0
sub_802769e0:
/* 802769E0 00273940 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 802769E4 00273944 7C 08 02 A6 */ mflr r0
/* 802769E8 00273948 90 01 00 64 */ stw r0, 0x64(r1)
/* 802769EC 0027394C DB E1 00 50 */ stfd f31, 0x50(r1)
/* 802769F0 00273950 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 802769F4 00273954 BF 61 00 3C */ stmw r27, 0x3c(r1)
/* 802769F8 00273958 7C 7B 1B 78 */ mr r27, r3
/* 802769FC 0027395C 7C DE 33 78 */ mr r30, r6
/* 80276A00 00273960 7C 9C 23 78 */ mr r28, r4
/* 80276A04 00273964 7C BD 2B 78 */ mr r29, r5
/* 80276A08 00273968 38 61 00 10 */ addi r3, r1, 0x10
/* 80276A0C 0027396C 38 C0 00 0A */ li r6, 0xa
/* 80276A10 00273970 38 E0 00 06 */ li r7, 6
/* 80276A14 00273974 48 00 01 29 */ bl sub_80276b3c
/* 80276A18 00273978 A0 01 00 10 */ lhz r0, 0x10(r1)
/* 80276A1C 0027397C A3 ED A3 8C */ lhz r31, kInvalidUniqueId@sda21(r13)
/* 80276A20 00273980 B0 01 00 14 */ sth r0, 0x14(r1)
/* 80276A24 00273984 C3 E2 BC 08 */ lfs f31, lbl_805AD928@sda21(r2)
/* 80276A28 00273988 48 00 00 E4 */ b lbl_80276B0C
lbl_80276A2C:
/* 80276A2C 0027398C A0 01 00 14 */ lhz r0, 0x14(r1)
/* 80276A30 00273990 7F A3 EB 78 */ mr r3, r29
/* 80276A34 00273994 38 81 00 0C */ addi r4, r1, 0xc
/* 80276A38 00273998 B0 01 00 0C */ sth r0, 0xc(r1)
/* 80276A3C 0027399C 4B DD 5B 69 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80276A40 002739A0 7C 64 1B 78 */ mr r4, r3
/* 80276A44 002739A4 38 61 00 18 */ addi r3, r1, 0x18
/* 80276A48 002739A8 4B E2 FB 05 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 80276A4C 002739AC 80 83 00 04 */ lwz r4, 4(r3)
/* 80276A50 002739B0 28 04 00 00 */ cmplwi r4, 0
/* 80276A54 002739B4 41 82 00 B0 */ beq lbl_80276B04
/* 80276A58 002739B8 C0 24 00 50 */ lfs f1, 0x50(r4)
/* 80276A5C 002739BC 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 80276A60 002739C0 C0 1C 00 50 */ lfs f0, 0x50(r28)
/* 80276A64 002739C4 C0 DC 00 48 */ lfs f6, 0x48(r28)
/* 80276A68 002739C8 EC 81 00 28 */ fsubs f4, f1, f0
/* 80276A6C 002739CC C0 44 00 40 */ lfs f2, 0x40(r4)
/* 80276A70 002739D0 C0 1C 00 40 */ lfs f0, 0x40(r28)
/* 80276A74 002739D4 C0 3C 00 38 */ lfs f1, 0x38(r28)
/* 80276A78 002739D8 EC A2 00 28 */ fsubs f5, f2, f0
/* 80276A7C 002739DC C0 64 00 60 */ lfs f3, 0x60(r4)
/* 80276A80 002739E0 EC 06 01 32 */ fmuls f0, f6, f4
/* 80276A84 002739E4 C0 5C 00 60 */ lfs f2, 0x60(r28)
/* 80276A88 002739E8 C0 9C 00 58 */ lfs f4, 0x58(r28)
/* 80276A8C 002739EC EC 43 10 28 */ fsubs f2, f3, f2
/* 80276A90 002739F0 EC 01 01 7A */ fmadds f0, f1, f5, f0
/* 80276A94 002739F4 D0 21 00 20 */ stfs f1, 0x20(r1)
/* 80276A98 002739F8 D0 C1 00 24 */ stfs f6, 0x24(r1)
/* 80276A9C 002739FC EC 24 00 BA */ fmadds f1, f4, f2, f0
/* 80276AA0 00273A00 D0 81 00 28 */ stfs f4, 0x28(r1)
/* 80276AA4 00273A04 41 82 00 24 */ beq lbl_80276AC8
/* 80276AA8 00273A08 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80276AAC 00273A0C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80276AB0 00273A10 40 81 00 18 */ ble lbl_80276AC8
/* 80276AB4 00273A14 FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 80276AB8 00273A18 40 81 00 10 */ ble lbl_80276AC8
/* 80276ABC 00273A1C FF E0 08 90 */ fmr f31, f1
/* 80276AC0 00273A20 A3 E1 00 14 */ lhz r31, 0x14(r1)
/* 80276AC4 00273A24 48 00 00 28 */ b lbl_80276AEC
lbl_80276AC8:
/* 80276AC8 00273A28 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 80276ACC 00273A2C 40 82 00 20 */ bne lbl_80276AEC
/* 80276AD0 00273A30 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80276AD4 00273A34 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80276AD8 00273A38 40 80 00 14 */ bge lbl_80276AEC
/* 80276ADC 00273A3C FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 80276AE0 00273A40 40 80 00 0C */ bge lbl_80276AEC
/* 80276AE4 00273A44 A3 E1 00 14 */ lhz r31, 0x14(r1)
/* 80276AE8 00273A48 FF E0 08 90 */ fmr f31, f1
lbl_80276AEC:
/* 80276AEC 00273A4C 7F A5 EB 78 */ mr r5, r29
/* 80276AF0 00273A50 38 61 00 08 */ addi r3, r1, 8
/* 80276AF4 00273A54 4B E0 06 41 */ bl NextWaypoint__15CScriptWaypointCFRC13CStateManager
/* 80276AF8 00273A58 A0 01 00 08 */ lhz r0, 8(r1)
/* 80276AFC 00273A5C B0 01 00 14 */ sth r0, 0x14(r1)
/* 80276B00 00273A60 48 00 00 0C */ b lbl_80276B0C
lbl_80276B04:
/* 80276B04 00273A64 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80276B08 00273A68 B0 01 00 14 */ sth r0, 0x14(r1)
lbl_80276B0C:
/* 80276B0C 00273A6C A0 61 00 14 */ lhz r3, 0x14(r1)
/* 80276B10 00273A70 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80276B14 00273A74 7C 03 00 40 */ cmplw r3, r0
/* 80276B18 00273A78 40 82 FF 14 */ bne lbl_80276A2C
/* 80276B1C 00273A7C B3 FB 00 00 */ sth r31, 0(r27)
/* 80276B20 00273A80 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
/* 80276B24 00273A84 CB E1 00 50 */ lfd f31, 0x50(r1)
/* 80276B28 00273A88 BB 61 00 3C */ lmw r27, 0x3c(r1)
/* 80276B2C 00273A8C 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80276B30 00273A90 7C 08 03 A6 */ mtlr r0
/* 80276B34 00273A94 38 21 00 60 */ addi r1, r1, 0x60
/* 80276B38 00273A98 4E 80 00 20 */ blr
.global sub_80276b3c
sub_80276b3c:
/* 80276B3C 00273A9C 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80276B40 00273AA0 7C 08 02 A6 */ mflr r0
/* 80276B44 00273AA4 90 01 00 64 */ stw r0, 0x64(r1)
/* 80276B48 00273AA8 BF 21 00 44 */ stmw r25, 0x44(r1)
/* 80276B4C 00273AAC 7C BA 2B 78 */ mr r26, r5
/* 80276B50 00273AB0 7C 79 1B 78 */ mr r25, r3
/* 80276B54 00273AB4 7C DB 33 78 */ mr r27, r6
/* 80276B58 00273AB8 7C FC 3B 78 */ mr r28, r7
/* 80276B5C 00273ABC 7F 43 D3 78 */ mr r3, r26
/* 80276B60 00273AC0 A0 04 05 68 */ lhz r0, 0x568(r4)
/* 80276B64 00273AC4 38 81 00 10 */ addi r4, r1, 0x10
/* 80276B68 00273AC8 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80276B6C 00273ACC 4B DD 5A 39 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80276B70 00273AD0 7C 64 1B 78 */ mr r4, r3
/* 80276B74 00273AD4 38 61 00 1C */ addi r3, r1, 0x1c
/* 80276B78 00273AD8 4B E3 65 71 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276B7C 00273ADC 83 A3 00 04 */ lwz r29, 4(r3)
/* 80276B80 00273AE0 28 1D 00 00 */ cmplwi r29, 0
/* 80276B84 00273AE4 41 82 01 90 */ beq lbl_80276D14
/* 80276B88 00273AE8 38 00 00 00 */ li r0, 0
/* 80276B8C 00273AEC 83 FD 00 2C */ lwz r31, 0x2c(r29)
/* 80276B90 00273AF0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80276B94 00273AF4 3B C1 00 28 */ addi r30, r1, 0x28
/* 80276B98 00273AF8 48 00 00 94 */ b lbl_80276C2C
lbl_80276B9C:
/* 80276B9C 00273AFC 80 1F 00 00 */ lwz r0, 0(r31)
/* 80276BA0 00273B00 7C 1B 00 00 */ cmpw r27, r0
/* 80276BA4 00273B04 40 82 00 84 */ bne lbl_80276C28
/* 80276BA8 00273B08 80 1F 00 04 */ lwz r0, 4(r31)
/* 80276BAC 00273B0C 7C 1C 00 00 */ cmpw r28, r0
/* 80276BB0 00273B10 40 82 00 78 */ bne lbl_80276C28
/* 80276BB4 00273B14 80 1F 00 08 */ lwz r0, 8(r31)
/* 80276BB8 00273B18 7F 44 D3 78 */ mr r4, r26
/* 80276BBC 00273B1C 38 61 00 0C */ addi r3, r1, 0xc
/* 80276BC0 00273B20 38 A1 00 18 */ addi r5, r1, 0x18
/* 80276BC4 00273B24 90 01 00 18 */ stw r0, 0x18(r1)
/* 80276BC8 00273B28 4B DD 13 55 */ bl GetIdForScript__13CStateManagerCF9TEditorId
/* 80276BCC 00273B2C A0 01 00 0C */ lhz r0, 0xc(r1)
/* 80276BD0 00273B30 7F 43 D3 78 */ mr r3, r26
/* 80276BD4 00273B34 38 81 00 08 */ addi r4, r1, 8
/* 80276BD8 00273B38 B0 01 00 14 */ sth r0, 0x14(r1)
/* 80276BDC 00273B3C B0 01 00 08 */ sth r0, 8(r1)
/* 80276BE0 00273B40 4B DD 59 C5 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80276BE4 00273B44 28 03 00 00 */ cmplwi r3, 0
/* 80276BE8 00273B48 41 82 00 40 */ beq lbl_80276C28
/* 80276BEC 00273B4C 88 03 00 30 */ lbz r0, 0x30(r3)
/* 80276BF0 00273B50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80276BF4 00273B54 41 82 00 34 */ beq lbl_80276C28
/* 80276BF8 00273B58 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80276BFC 00273B5C 54 00 08 3C */ slwi r0, r0, 1
/* 80276C00 00273B60 7C 7E 02 15 */ add. r3, r30, r0
/* 80276C04 00273B64 41 82 00 0C */ beq lbl_80276C10
/* 80276C08 00273B68 A0 01 00 14 */ lhz r0, 0x14(r1)
/* 80276C0C 00273B6C B0 03 00 00 */ sth r0, 0(r3)
lbl_80276C10:
/* 80276C10 00273B70 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80276C14 00273B74 38 63 00 01 */ addi r3, r3, 1
/* 80276C18 00273B78 20 03 00 08 */ subfic r0, r3, 8
/* 80276C1C 00273B7C 90 61 00 24 */ stw r3, 0x24(r1)
/* 80276C20 00273B80 2C 00 00 00 */ cmpwi r0, 0
/* 80276C24 00273B84 40 81 00 20 */ ble lbl_80276C44
lbl_80276C28:
/* 80276C28 00273B88 3B FF 00 0C */ addi r31, r31, 0xc
lbl_80276C2C:
/* 80276C2C 00273B8C 80 1D 00 24 */ lwz r0, 0x24(r29)
/* 80276C30 00273B90 80 7D 00 2C */ lwz r3, 0x2c(r29)
/* 80276C34 00273B94 1C 00 00 0C */ mulli r0, r0, 0xc
/* 80276C38 00273B98 7C 03 02 14 */ add r0, r3, r0
/* 80276C3C 00273B9C 7C 1F 00 40 */ cmplw r31, r0
/* 80276C40 00273BA0 40 82 FF 5C */ bne lbl_80276B9C
lbl_80276C44:
/* 80276C44 00273BA4 83 61 00 24 */ lwz r27, 0x24(r1)
/* 80276C48 00273BA8 2C 1B 00 00 */ cmpwi r27, 0
/* 80276C4C 00273BAC 41 82 00 7C */ beq lbl_80276CC8
/* 80276C50 00273BB0 80 7A 09 00 */ lwz r3, 0x900(r26)
/* 80276C54 00273BB4 48 09 B8 CD */ bl Next__9CRandom16Fv
/* 80276C58 00273BB8 7C 03 DB D6 */ divw r0, r3, r27
/* 80276C5C 00273BBC 80 A1 00 24 */ lwz r5, 0x24(r1)
/* 80276C60 00273BC0 38 80 00 00 */ li r4, 0
/* 80276C64 00273BC4 2C 05 00 00 */ cmpwi r5, 0
/* 80276C68 00273BC8 7C 00 D9 D6 */ mullw r0, r0, r27
/* 80276C6C 00273BCC 7C 00 18 50 */ subf r0, r0, r3
/* 80276C70 00273BD0 54 00 08 3C */ slwi r0, r0, 1
/* 80276C74 00273BD4 7C 1E 02 2E */ lhzx r0, r30, r0
/* 80276C78 00273BD8 B0 19 00 00 */ sth r0, 0(r25)
/* 80276C7C 00273BDC 40 81 00 40 */ ble lbl_80276CBC
/* 80276C80 00273BE0 2C 05 00 08 */ cmpwi r5, 8
/* 80276C84 00273BE4 38 65 FF F8 */ addi r3, r5, -8
/* 80276C88 00273BE8 40 81 00 20 */ ble lbl_80276CA8
/* 80276C8C 00273BEC 38 03 00 07 */ addi r0, r3, 7
/* 80276C90 00273BF0 54 00 E8 FE */ srwi r0, r0, 3
/* 80276C94 00273BF4 7C 09 03 A6 */ mtctr r0
/* 80276C98 00273BF8 2C 03 00 00 */ cmpwi r3, 0
/* 80276C9C 00273BFC 40 81 00 0C */ ble lbl_80276CA8
lbl_80276CA0:
/* 80276CA0 00273C00 38 84 00 08 */ addi r4, r4, 8
/* 80276CA4 00273C04 42 00 FF FC */ bdnz lbl_80276CA0
lbl_80276CA8:
/* 80276CA8 00273C08 7C 04 28 50 */ subf r0, r4, r5
/* 80276CAC 00273C0C 7C 09 03 A6 */ mtctr r0
/* 80276CB0 00273C10 7C 04 28 00 */ cmpw r4, r5
/* 80276CB4 00273C14 40 80 00 08 */ bge lbl_80276CBC
lbl_80276CB8:
/* 80276CB8 00273C18 42 00 00 00 */ bdnz lbl_80276CB8
lbl_80276CBC:
/* 80276CBC 00273C1C 38 00 00 00 */ li r0, 0
/* 80276CC0 00273C20 90 01 00 24 */ stw r0, 0x24(r1)
/* 80276CC4 00273C24 48 00 00 58 */ b lbl_80276D1C
lbl_80276CC8:
/* 80276CC8 00273C28 38 60 00 00 */ li r3, 0
/* 80276CCC 00273C2C 40 81 00 40 */ ble lbl_80276D0C
/* 80276CD0 00273C30 2C 1B 00 08 */ cmpwi r27, 8
/* 80276CD4 00273C34 38 9B FF F8 */ addi r4, r27, -8
/* 80276CD8 00273C38 40 81 00 20 */ ble lbl_80276CF8
/* 80276CDC 00273C3C 38 04 00 07 */ addi r0, r4, 7
/* 80276CE0 00273C40 54 00 E8 FE */ srwi r0, r0, 3
/* 80276CE4 00273C44 7C 09 03 A6 */ mtctr r0
/* 80276CE8 00273C48 2C 04 00 00 */ cmpwi r4, 0
/* 80276CEC 00273C4C 40 81 00 0C */ ble lbl_80276CF8
lbl_80276CF0:
/* 80276CF0 00273C50 38 63 00 08 */ addi r3, r3, 8
/* 80276CF4 00273C54 42 00 FF FC */ bdnz lbl_80276CF0
lbl_80276CF8:
/* 80276CF8 00273C58 7C 03 D8 50 */ subf r0, r3, r27
/* 80276CFC 00273C5C 7C 09 03 A6 */ mtctr r0
/* 80276D00 00273C60 7C 03 D8 00 */ cmpw r3, r27
/* 80276D04 00273C64 40 80 00 08 */ bge lbl_80276D0C
lbl_80276D08:
/* 80276D08 00273C68 42 00 00 00 */ bdnz lbl_80276D08
lbl_80276D0C:
/* 80276D0C 00273C6C 38 00 00 00 */ li r0, 0
/* 80276D10 00273C70 90 01 00 24 */ stw r0, 0x24(r1)
lbl_80276D14:
/* 80276D14 00273C74 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80276D18 00273C78 B0 19 00 00 */ sth r0, 0(r25)
lbl_80276D1C:
/* 80276D1C 00273C7C BB 21 00 44 */ lmw r25, 0x44(r1)
/* 80276D20 00273C80 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80276D24 00273C84 7C 08 03 A6 */ mtlr r0
/* 80276D28 00273C88 38 21 00 60 */ addi r1, r1, 0x60
/* 80276D2C 00273C8C 4E 80 00 20 */ blr
.global sub_80276d30
sub_80276d30:
/* 80276D30 00273C90 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80276D34 00273C94 7C 08 02 A6 */ mflr r0
/* 80276D38 00273C98 90 01 00 64 */ stw r0, 0x64(r1)
/* 80276D3C 00273C9C BF 61 00 4C */ stmw r27, 0x4c(r1)
/* 80276D40 00273CA0 7C 7D 1B 78 */ mr r29, r3
/* 80276D44 00273CA4 7C 9E 23 78 */ mr r30, r4
/* 80276D48 00273CA8 7C BF 2B 78 */ mr r31, r5
/* 80276D4C 00273CAC A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80276D50 00273CB0 A0 63 05 68 */ lhz r3, 0x568(r3)
/* 80276D54 00273CB4 7C 03 00 40 */ cmplw r3, r0
/* 80276D58 00273CB8 41 82 00 3C */ beq lbl_80276D94
/* 80276D5C 00273CBC A0 1D 05 68 */ lhz r0, 0x568(r29)
/* 80276D60 00273CC0 7F C3 F3 78 */ mr r3, r30
/* 80276D64 00273CC4 38 81 00 1C */ addi r4, r1, 0x1c
/* 80276D68 00273CC8 B0 01 00 1C */ sth r0, 0x1c(r1)
/* 80276D6C 00273CCC 4B DD 58 09 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80276D70 00273CD0 7C 64 1B 78 */ mr r4, r3
/* 80276D74 00273CD4 38 61 00 38 */ addi r3, r1, 0x38
/* 80276D78 00273CD8 4B E3 63 71 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276D7C 00273CDC 80 63 00 04 */ lwz r3, 4(r3)
/* 80276D80 00273CE0 28 03 00 00 */ cmplwi r3, 0
/* 80276D84 00273CE4 41 82 00 10 */ beq lbl_80276D94
/* 80276D88 00273CE8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80276D8C 00273CEC B0 01 00 18 */ sth r0, 0x18(r1)
/* 80276D90 00273CF0 B0 03 00 34 */ sth r0, 0x34(r3)
lbl_80276D94:
/* 80276D94 00273CF4 83 9E 08 10 */ lwz r28, 0x810(r30)
/* 80276D98 00273CF8 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13)
/* 80276D9C 00273CFC AB 7C 20 08 */ lha r27, 0x2008(r28)
/* 80276DA0 00273D00 90 01 00 24 */ stw r0, 0x24(r1)
/* 80276DA4 00273D04 48 00 00 6C */ b lbl_80276E10
lbl_80276DA8:
/* 80276DA8 00273D08 7F 83 E3 78 */ mr r3, r28
/* 80276DAC 00273D0C 7F 64 DB 78 */ mr r4, r27
/* 80276DB0 00273D10 4B D9 8F 65 */ bl __vc__11CObjectListFi
/* 80276DB4 00273D14 7C 60 1B 78 */ mr r0, r3
/* 80276DB8 00273D18 38 61 00 28 */ addi r3, r1, 0x28
/* 80276DBC 00273D1C 7C 04 03 78 */ mr r4, r0
/* 80276DC0 00273D20 4B E3 63 29 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276DC4 00273D24 80 83 00 04 */ lwz r4, 4(r3)
/* 80276DC8 00273D28 28 04 00 00 */ cmplwi r4, 0
/* 80276DCC 00273D2C 41 82 00 28 */ beq lbl_80276DF4
/* 80276DD0 00273D30 88 04 00 30 */ lbz r0, 0x30(r4)
/* 80276DD4 00273D34 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80276DD8 00273D38 41 82 00 1C */ beq lbl_80276DF4
/* 80276DDC 00273D3C 80 64 00 04 */ lwz r3, 4(r4)
/* 80276DE0 00273D40 80 1F 00 00 */ lwz r0, 0(r31)
/* 80276DE4 00273D44 7C 03 00 00 */ cmpw r3, r0
/* 80276DE8 00273D48 40 82 00 0C */ bne lbl_80276DF4
/* 80276DEC 00273D4C 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80276DF0 00273D50 90 01 00 24 */ stw r0, 0x24(r1)
lbl_80276DF4:
/* 80276DF4 00273D54 2C 1B FF FF */ cmpwi r27, -1
/* 80276DF8 00273D58 41 82 00 14 */ beq lbl_80276E0C
/* 80276DFC 00273D5C 57 63 18 38 */ slwi r3, r27, 3
/* 80276E00 00273D60 38 03 00 08 */ addi r0, r3, 8
/* 80276E04 00273D64 7F 7C 02 AE */ lhax r27, r28, r0
/* 80276E08 00273D68 48 00 00 08 */ b lbl_80276E10
lbl_80276E0C:
/* 80276E0C 00273D6C 3B 60 FF FF */ li r27, -1
lbl_80276E10:
/* 80276E10 00273D70 2C 1B FF FF */ cmpwi r27, -1
/* 80276E14 00273D74 40 82 FF 94 */ bne lbl_80276DA8
/* 80276E18 00273D78 A0 6D A3 8C */ lhz r3, kInvalidUniqueId@sda21(r13)
/* 80276E1C 00273D7C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80276E20 00273D80 B0 7D 05 68 */ sth r3, 0x568(r29)
/* 80276E24 00273D84 54 03 01 BE */ clrlwi r3, r0, 6
/* 80276E28 00273D88 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13)
/* 80276E2C 00273D8C 54 00 01 BE */ clrlwi r0, r0, 6
/* 80276E30 00273D90 7C 03 00 40 */ cmplw r3, r0
/* 80276E34 00273D94 41 82 00 60 */ beq lbl_80276E94
/* 80276E38 00273D98 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80276E3C 00273D9C 7F C4 F3 78 */ mr r4, r30
/* 80276E40 00273DA0 38 61 00 14 */ addi r3, r1, 0x14
/* 80276E44 00273DA4 38 A1 00 20 */ addi r5, r1, 0x20
/* 80276E48 00273DA8 90 01 00 20 */ stw r0, 0x20(r1)
/* 80276E4C 00273DAC 4B DD 10 D1 */ bl GetIdForScript__13CStateManagerCF9TEditorId
/* 80276E50 00273DB0 A0 01 00 14 */ lhz r0, 0x14(r1)
/* 80276E54 00273DB4 7F C3 F3 78 */ mr r3, r30
/* 80276E58 00273DB8 38 81 00 10 */ addi r4, r1, 0x10
/* 80276E5C 00273DBC B0 1D 05 68 */ sth r0, 0x568(r29)
/* 80276E60 00273DC0 A0 1D 05 68 */ lhz r0, 0x568(r29)
/* 80276E64 00273DC4 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80276E68 00273DC8 4B DD 57 0D */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80276E6C 00273DCC 7C 64 1B 78 */ mr r4, r3
/* 80276E70 00273DD0 38 61 00 30 */ addi r3, r1, 0x30
/* 80276E74 00273DD4 4B E3 62 75 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276E78 00273DD8 80 63 00 04 */ lwz r3, 4(r3)
/* 80276E7C 00273DDC 28 03 00 00 */ cmplwi r3, 0
/* 80276E80 00273DE0 41 82 00 14 */ beq lbl_80276E94
/* 80276E84 00273DE4 A0 1D 00 08 */ lhz r0, 8(r29)
/* 80276E88 00273DE8 B0 01 00 08 */ sth r0, 8(r1)
/* 80276E8C 00273DEC B0 01 00 0C */ sth r0, 0xc(r1)
/* 80276E90 00273DF0 B0 03 00 34 */ sth r0, 0x34(r3)
lbl_80276E94:
/* 80276E94 00273DF4 7F A3 EB 78 */ mr r3, r29
/* 80276E98 00273DF8 7F C4 F3 78 */ mr r4, r30
/* 80276E9C 00273DFC 4B FF F8 B9 */ bl sub_80276754
/* 80276EA0 00273E00 7F A3 EB 78 */ mr r3, r29
/* 80276EA4 00273E04 7F C4 F3 78 */ mr r4, r30
/* 80276EA8 00273E08 4B FF CE 91 */ bl sub_80273d38
/* 80276EAC 00273E0C BB 61 00 4C */ lmw r27, 0x4c(r1)
/* 80276EB0 00273E10 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80276EB4 00273E14 7C 08 03 A6 */ mtlr r0
/* 80276EB8 00273E18 38 21 00 60 */ addi r1, r1, 0x60
/* 80276EBC 00273E1C 4E 80 00 20 */ blr
.global sub_80276ec0
sub_80276ec0:
/* 80276EC0 00273E20 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80276EC4 00273E24 7C 08 02 A6 */ mflr r0
/* 80276EC8 00273E28 90 01 00 24 */ stw r0, 0x24(r1)
/* 80276ECC 00273E2C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80276ED0 00273E30 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80276ED4 00273E34 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80276ED8 00273E38 93 81 00 10 */ stw r28, 0x10(r1)
/* 80276EDC 00273E3C 7C BC 2B 78 */ mr r28, r5
/* 80276EE0 00273E40 83 E4 08 10 */ lwz r31, 0x810(r4)
/* 80276EE4 00273E44 83 CD A3 88 */ lwz r30, kInvalidEditorId@sda21(r13)
/* 80276EE8 00273E48 AB BF 20 08 */ lha r29, 0x2008(r31)
/* 80276EEC 00273E4C 48 00 00 68 */ b lbl_80276F54
lbl_80276EF0:
/* 80276EF0 00273E50 7F E3 FB 78 */ mr r3, r31
/* 80276EF4 00273E54 7F A4 EB 78 */ mr r4, r29
/* 80276EF8 00273E58 4B D9 8D E5 */ bl __vc__11CObjectListCFi
/* 80276EFC 00273E5C 7C 60 1B 78 */ mr r0, r3
/* 80276F00 00273E60 38 61 00 08 */ addi r3, r1, 8
/* 80276F04 00273E64 7C 04 03 78 */ mr r4, r0
/* 80276F08 00273E68 4B E3 61 E1 */ bl "__ct__32TCastToPtr<18CMetroidPrimeRelay>FP7CEntity"
/* 80276F0C 00273E6C 80 83 00 04 */ lwz r4, 4(r3)
/* 80276F10 00273E70 28 04 00 00 */ cmplwi r4, 0
/* 80276F14 00273E74 41 82 00 24 */ beq lbl_80276F38
/* 80276F18 00273E78 88 04 00 30 */ lbz r0, 0x30(r4)
/* 80276F1C 00273E7C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80276F20 00273E80 41 82 00 18 */ beq lbl_80276F38
/* 80276F24 00273E84 80 64 00 04 */ lwz r3, 4(r4)
/* 80276F28 00273E88 80 1C 00 00 */ lwz r0, 0(r28)
/* 80276F2C 00273E8C 7C 03 00 00 */ cmpw r3, r0
/* 80276F30 00273E90 40 82 00 08 */ bne lbl_80276F38
/* 80276F34 00273E94 83 C4 00 0C */ lwz r30, 0xc(r4)
lbl_80276F38:
/* 80276F38 00273E98 2C 1D FF FF */ cmpwi r29, -1
/* 80276F3C 00273E9C 41 82 00 14 */ beq lbl_80276F50
/* 80276F40 00273EA0 57 A3 18 38 */ slwi r3, r29, 3
/* 80276F44 00273EA4 38 03 00 08 */ addi r0, r3, 8
/* 80276F48 00273EA8 7F BF 02 AE */ lhax r29, r31, r0
/* 80276F4C 00273EAC 48 00 00 08 */ b lbl_80276F54
lbl_80276F50:
/* 80276F50 00273EB0 3B A0 FF FF */ li r29, -1
lbl_80276F54:
/* 80276F54 00273EB4 2C 1D FF FF */ cmpwi r29, -1
/* 80276F58 00273EB8 40 82 FF 98 */ bne lbl_80276EF0
/* 80276F5C 00273EBC 80 0D A3 88 */ lwz r0, kInvalidEditorId@sda21(r13)
/* 80276F60 00273EC0 57 C4 01 BE */ clrlwi r4, r30, 6
/* 80276F64 00273EC4 54 00 01 BE */ clrlwi r0, r0, 6
/* 80276F68 00273EC8 7C 64 00 50 */ subf r3, r4, r0
/* 80276F6C 00273ECC 7C 00 20 50 */ subf r0, r0, r4
/* 80276F70 00273ED0 7C 60 03 78 */ or r0, r3, r0
/* 80276F74 00273ED4 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80276F78 00273ED8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80276F7C 00273EDC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80276F80 00273EE0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80276F84 00273EE4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80276F88 00273EE8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80276F8C 00273EEC 7C 08 03 A6 */ mtlr r0
/* 80276F90 00273EF0 38 21 00 20 */ addi r1, r1, 0x20
/* 80276F94 00273EF4 4E 80 00 20 */ blr
.global AddToRenderer__16CMetroidPrimeExoCFRC14CFrustumPlanesRC13CStateManager
AddToRenderer__16CMetroidPrimeExoCFRC14CFrustumPlanesRC13CStateManager:
/* 80276F98 00273EF8 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 80276F9C 00273EFC 7C 08 02 A6 */ mflr r0
/* 80276FA0 00273F00 90 01 00 94 */ stw r0, 0x94(r1)
/* 80276FA4 00273F04 BF 61 00 7C */ stmw r27, 0x7c(r1)
/* 80276FA8 00273F08 7C 7B 1B 78 */ mr r27, r3
/* 80276FAC 00273F0C 7C 9C 23 78 */ mr r28, r4
/* 80276FB0 00273F10 4B E0 09 09 */ bl AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager
/* 80276FB4 00273F14 80 9B 0C 54 */ lwz r4, 0xc54(r27)
/* 80276FB8 00273F18 38 61 00 5C */ addi r3, r1, 0x5c
/* 80276FBC 00273F1C 81 84 00 00 */ lwz r12, 0(r4)
/* 80276FC0 00273F20 81 8C 00 5C */ lwz r12, 0x5c(r12)
/* 80276FC4 00273F24 7D 89 03 A6 */ mtctr r12
/* 80276FC8 00273F28 4E 80 04 21 */ bctrl
/* 80276FCC 00273F2C 7F 83 E3 78 */ mr r3, r28
/* 80276FD0 00273F30 38 81 00 5C */ addi r4, r1, 0x5c
/* 80276FD4 00273F34 48 0C E1 B5 */ bl "BoxInFrustumPlanes__14CFrustumPlanesCFRCQ24rstl24optional_object<6CAABox>"
/* 80276FD8 00273F38 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80276FDC 00273F3C 38 60 00 00 */ li r3, 0
/* 80276FE0 00273F40 98 61 00 74 */ stb r3, 0x74(r1)
/* 80276FE4 00273F44 41 82 00 1C */ beq lbl_80277000
/* 80276FE8 00273F48 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80276FEC 00273F4C 80 9B 0C 54 */ lwz r4, 0xc54(r27)
/* 80276FF0 00273F50 81 83 00 00 */ lwz r12, 0(r3)
/* 80276FF4 00273F54 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80276FF8 00273F58 7D 89 03 A6 */ mtctr r12
/* 80276FFC 00273F5C 4E 80 04 21 */ bctrl
lbl_80277000:
/* 80277000 00273F60 80 9B 0F B0 */ lwz r4, 0xfb0(r27)
/* 80277004 00273F64 38 61 00 40 */ addi r3, r1, 0x40
/* 80277008 00273F68 81 84 00 00 */ lwz r12, 0(r4)
/* 8027700C 00273F6C 81 8C 00 5C */ lwz r12, 0x5c(r12)
/* 80277010 00273F70 7D 89 03 A6 */ mtctr r12
/* 80277014 00273F74 4E 80 04 21 */ bctrl
/* 80277018 00273F78 7F 83 E3 78 */ mr r3, r28
/* 8027701C 00273F7C 38 81 00 40 */ addi r4, r1, 0x40
/* 80277020 00273F80 48 0C E1 69 */ bl "BoxInFrustumPlanes__14CFrustumPlanesCFRCQ24rstl24optional_object<6CAABox>"
/* 80277024 00273F84 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80277028 00273F88 38 60 00 00 */ li r3, 0
/* 8027702C 00273F8C 98 61 00 58 */ stb r3, 0x58(r1)
/* 80277030 00273F90 41 82 00 1C */ beq lbl_8027704C
/* 80277034 00273F94 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80277038 00273F98 80 9B 0F B0 */ lwz r4, 0xfb0(r27)
/* 8027703C 00273F9C 81 83 00 00 */ lwz r12, 0(r3)
/* 80277040 00273FA0 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80277044 00273FA4 7D 89 03 A6 */ mtctr r12
/* 80277048 00273FA8 4E 80 04 21 */ bctrl
lbl_8027704C:
/* 8027704C 00273FAC 80 9B 10 28 */ lwz r4, 0x1028(r27)
/* 80277050 00273FB0 38 61 00 24 */ addi r3, r1, 0x24
/* 80277054 00273FB4 81 84 00 00 */ lwz r12, 0(r4)
/* 80277058 00273FB8 81 8C 00 5C */ lwz r12, 0x5c(r12)
/* 8027705C 00273FBC 7D 89 03 A6 */ mtctr r12
/* 80277060 00273FC0 4E 80 04 21 */ bctrl
/* 80277064 00273FC4 7F 83 E3 78 */ mr r3, r28
/* 80277068 00273FC8 38 81 00 24 */ addi r4, r1, 0x24
/* 8027706C 00273FCC 48 0C E1 1D */ bl "BoxInFrustumPlanes__14CFrustumPlanesCFRCQ24rstl24optional_object<6CAABox>"
/* 80277070 00273FD0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80277074 00273FD4 38 60 00 00 */ li r3, 0
/* 80277078 00273FD8 98 61 00 3C */ stb r3, 0x3c(r1)
/* 8027707C 00273FDC 41 82 00 1C */ beq lbl_80277098
/* 80277080 00273FE0 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80277084 00273FE4 80 9B 10 28 */ lwz r4, 0x1028(r27)
/* 80277088 00273FE8 81 83 00 00 */ lwz r12, 0(r3)
/* 8027708C 00273FEC 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80277090 00273FF0 7D 89 03 A6 */ mtctr r12
/* 80277094 00273FF4 4E 80 04 21 */ bctrl
lbl_80277098:
/* 80277098 00273FF8 3B FB 0F F0 */ addi r31, r27, 0xff0
/* 8027709C 00273FFC 3B DB 10 04 */ addi r30, r27, 0x1004
/* 802770A0 00274000 3B A0 00 00 */ li r29, 0
lbl_802770A4:
/* 802770A4 00274004 80 9F 00 04 */ lwz r4, 4(r31)
/* 802770A8 00274008 38 61 00 08 */ addi r3, r1, 8
/* 802770AC 0027400C 81 84 00 00 */ lwz r12, 0(r4)
/* 802770B0 00274010 81 8C 00 5C */ lwz r12, 0x5c(r12)
/* 802770B4 00274014 7D 89 03 A6 */ mtctr r12
/* 802770B8 00274018 4E 80 04 21 */ bctrl
/* 802770BC 0027401C 7F 83 E3 78 */ mr r3, r28
/* 802770C0 00274020 38 81 00 08 */ addi r4, r1, 8
/* 802770C4 00274024 48 0C E0 C5 */ bl "BoxInFrustumPlanes__14CFrustumPlanesCFRCQ24rstl24optional_object<6CAABox>"
/* 802770C8 00274028 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802770CC 0027402C 38 60 00 00 */ li r3, 0
/* 802770D0 00274030 98 61 00 20 */ stb r3, 0x20(r1)
/* 802770D4 00274034 41 82 00 1C */ beq lbl_802770F0
/* 802770D8 00274038 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 802770DC 0027403C 80 9F 00 04 */ lwz r4, 4(r31)
/* 802770E0 00274040 81 83 00 00 */ lwz r12, 0(r3)
/* 802770E4 00274044 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 802770E8 00274048 7D 89 03 A6 */ mtctr r12
/* 802770EC 0027404C 4E 80 04 21 */ bctrl
lbl_802770F0:
/* 802770F0 00274050 88 1B 10 54 */ lbz r0, 0x1054(r27)
/* 802770F4 00274054 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802770F8 00274058 41 82 00 1C */ beq lbl_80277114
/* 802770FC 0027405C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80277100 00274060 80 9E 00 04 */ lwz r4, 4(r30)
/* 80277104 00274064 81 83 00 00 */ lwz r12, 0(r3)
/* 80277108 00274068 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 8027710C 0027406C 7D 89 03 A6 */ mtctr r12
/* 80277110 00274070 4E 80 04 21 */ bctrl
lbl_80277114:
/* 80277114 00274074 3B BD 00 01 */ addi r29, r29, 1
/* 80277118 00274078 3B DE 00 08 */ addi r30, r30, 8
/* 8027711C 0027407C 2C 1D 00 02 */ cmpwi r29, 2
/* 80277120 00274080 3B FF 00 08 */ addi r31, r31, 8
/* 80277124 00274084 41 80 FF 80 */ blt lbl_802770A4
/* 80277128 00274088 BB 61 00 7C */ lmw r27, 0x7c(r1)
/* 8027712C 0027408C 80 01 00 94 */ lwz r0, 0x94(r1)
/* 80277130 00274090 7C 08 03 A6 */ mtlr r0
/* 80277134 00274094 38 21 00 90 */ addi r1, r1, 0x90
/* 80277138 00274098 4E 80 00 20 */ blr
.global CanRenderUnsorted__16CMetroidPrimeExoCFRC13CStateManager
CanRenderUnsorted__16CMetroidPrimeExoCFRC13CStateManager:
/* 8027713C 0027409C 80 64 08 B8 */ lwz r3, 0x8b8(r4)
/* 80277140 002740A0 80 63 00 00 */ lwz r3, 0(r3)
/* 80277144 002740A4 80 83 00 14 */ lwz r4, 0x14(r3)
/* 80277148 002740A8 20 64 00 01 */ subfic r3, r4, 1
/* 8027714C 002740AC 38 04 FF FF */ addi r0, r4, -1
/* 80277150 002740B0 7C 60 03 78 */ or r0, r3, r0
/* 80277154 002740B4 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80277158 002740B8 4E 80 00 20 */ blr
.global Render__16CMetroidPrimeExoCFRC13CStateManager
Render__16CMetroidPrimeExoCFRC13CStateManager:
/* 8027715C 002740BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80277160 002740C0 7C 08 02 A6 */ mflr r0
/* 80277164 002740C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80277168 002740C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8027716C 002740CC 7C 9F 23 78 */ mr r31, r4
/* 80277170 002740D0 93 C1 00 08 */ stw r30, 8(r1)
/* 80277174 002740D4 7C 7E 1B 78 */ mr r30, r3
/* 80277178 002740D8 38 9E 08 D8 */ addi r4, r30, 0x8d8
/* 8027717C 002740DC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80277180 002740E0 81 83 00 00 */ lwz r12, 0(r3)
/* 80277184 002740E4 81 8C 00 FC */ lwz r12, 0xfc(r12)
/* 80277188 002740E8 7D 89 03 A6 */ mtctr r12
/* 8027718C 002740EC 4E 80 04 21 */ bctrl
/* 80277190 002740F0 7F C3 F3 78 */ mr r3, r30
/* 80277194 002740F4 7F E4 FB 78 */ mr r4, r31
/* 80277198 002740F8 4B E0 0E 95 */ bl Render__10CPatternedCFRC13CStateManager
/* 8027719C 002740FC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802771A0 00274100 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802771A4 00274104 83 C1 00 08 */ lwz r30, 8(r1)
/* 802771A8 00274108 7C 08 03 A6 */ mtlr r0
/* 802771AC 0027410C 38 21 00 10 */ addi r1, r1, 0x10
/* 802771B0 00274110 4E 80 00 20 */ blr
.global PreRender__16CMetroidPrimeExoFR13CStateManagerRC14CFrustumPlanes
PreRender__16CMetroidPrimeExoFR13CStateManagerRC14CFrustumPlanes:
/* 802771B4 00274114 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802771B8 00274118 7C 08 02 A6 */ mflr r0
/* 802771BC 0027411C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802771C0 00274120 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802771C4 00274124 7C 9F 23 78 */ mr r31, r4
/* 802771C8 00274128 93 C1 00 08 */ stw r30, 8(r1)
/* 802771CC 0027412C 7C 7E 1B 78 */ mr r30, r3
/* 802771D0 00274130 4B E0 11 0D */ bl PreRender__10CPatternedFR13CStateManagerRC14CFrustumPlanes
/* 802771D4 00274134 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 802771D8 00274138 80 7E 14 3C */ lwz r3, 0x143c(r30)
/* 802771DC 0027413C 39 04 66 A0 */ addi r8, r4, sZeroVector__9CVector3f@l
/* 802771E0 00274140 80 BE 00 64 */ lwz r5, 0x64(r30)
/* 802771E4 00274144 C0 22 BC 30 */ lfs f1, lbl_805AD950@sda21(r2)
/* 802771E8 00274148 7F E4 FB 78 */ mr r4, r31
/* 802771EC 0027414C C0 42 BC 40 */ lfs f2, lbl_805AD960@sda21(r2)
/* 802771F0 00274150 38 DE 00 34 */ addi r6, r30, 0x34
/* 802771F4 00274154 38 E0 00 01 */ li r7, 1
/* 802771F8 00274158 48 02 6B 91 */ bl RenderShadowBuffer__16CProjectedShadowFR13CStateManagerRC10CModelDataRC12CTransform4fiRC9CVector3fff
/* 802771FC 0027415C C0 02 BB FC */ lfs f0, lbl_805AD91C@sda21(r2)
/* 80277200 00274160 80 7E 14 3C */ lwz r3, 0x143c(r30)
/* 80277204 00274164 D0 03 00 98 */ stfs f0, 0x98(r3)
/* 80277208 00274168 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8027720C 0027416C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80277210 00274170 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80277214 00274174 7C 08 03 A6 */ mtlr r0
/* 80277218 00274178 38 21 00 10 */ addi r1, r1, 0x10
/* 8027721C 0027417C 4E 80 00 20 */ blr
.global Touch__16CMetroidPrimeExoFR6CActorR13CStateManager
Touch__16CMetroidPrimeExoFR6CActorR13CStateManager:
/* 80277220 00274180 4E 80 00 20 */ blr
.global sub_80277224
sub_80277224:
/* 80277224 00274184 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80277228 00274188 7C 08 02 A6 */ mflr r0
/* 8027722C 0027418C 90 01 00 64 */ stw r0, 0x64(r1)
/* 80277230 00274190 DB E1 00 50 */ stfd f31, 0x50(r1)
/* 80277234 00274194 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 80277238 00274198 DB C1 00 40 */ stfd f30, 0x40(r1)
/* 8027723C 0027419C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
/* 80277240 002741A0 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80277244 002741A4 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80277248 002741A8 FF E0 08 90 */ fmr f31, f1
/* 8027724C 002741AC C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80277250 002741B0 7C 7E 1B 78 */ mr r30, r3
/* 80277254 002741B4 7C 9F 23 78 */ mr r31, r4
/* 80277258 002741B8 7F C4 F3 78 */ mr r4, r30
/* 8027725C 002741BC 38 61 00 0C */ addi r3, r1, 0xc
/* 80277260 002741C0 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80277264 002741C4 7F E5 FB 78 */ mr r5, r31
/* 80277268 002741C8 4C 41 13 82 */ cror 2, 1, 2
/* 8027726C 002741CC 7C 00 00 26 */ mfcr r0
/* 80277270 002741D0 54 06 1F FE */ rlwinm r6, r0, 3, 0x1f, 0x1f
/* 80277274 002741D4 4B FF F7 6D */ bl sub_802769e0
/* 80277278 002741D8 A0 01 00 0C */ lhz r0, 0xc(r1)
/* 8027727C 002741DC 7F E3 FB 78 */ mr r3, r31
/* 80277280 002741E0 38 81 00 08 */ addi r4, r1, 8
/* 80277284 002741E4 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80277288 002741E8 B0 01 00 08 */ sth r0, 8(r1)
/* 8027728C 002741EC 4B DD 53 19 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80277290 002741F0 7C 64 1B 78 */ mr r4, r3
/* 80277294 002741F4 38 61 00 14 */ addi r3, r1, 0x14
/* 80277298 002741F8 4B E2 F2 B5 */ bl "__ct__29TCastToPtr<15CScriptWaypoint>FP7CEntity"
/* 8027729C 002741FC 80 A3 00 04 */ lwz r5, 4(r3)
/* 802772A0 00274200 28 05 00 00 */ cmplwi r5, 0
/* 802772A4 00274204 41 82 00 B0 */ beq lbl_80277354
/* 802772A8 00274208 80 9E 00 64 */ lwz r4, 0x64(r30)
/* 802772AC 0027420C 38 61 00 1C */ addi r3, r1, 0x1c
/* 802772B0 00274210 C0 25 00 50 */ lfs f1, 0x50(r5)
/* 802772B4 00274214 C0 1E 00 50 */ lfs f0, 0x50(r30)
/* 802772B8 00274218 C0 DE 00 48 */ lfs f6, 0x48(r30)
/* 802772BC 0027421C EC 61 00 28 */ fsubs f3, f1, f0
/* 802772C0 00274220 C0 25 00 40 */ lfs f1, 0x40(r5)
/* 802772C4 00274224 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 802772C8 00274228 C0 5E 00 38 */ lfs f2, 0x38(r30)
/* 802772CC 0027422C C0 85 00 60 */ lfs f4, 0x60(r5)
/* 802772D0 00274230 EC A1 00 28 */ fsubs f5, f1, f0
/* 802772D4 00274234 C0 04 00 00 */ lfs f0, 0(r4)
/* 802772D8 00274238 EC 26 00 F2 */ fmuls f1, f6, f3
/* 802772DC 0027423C C0 7E 00 60 */ lfs f3, 0x60(r30)
/* 802772E0 00274240 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 802772E4 00274244 C0 FE 00 58 */ lfs f7, 0x58(r30)
/* 802772E8 00274248 EC 64 18 28 */ fsubs f3, f4, f3
/* 802772EC 0027424C C0 04 00 04 */ lfs f0, 4(r4)
/* 802772F0 00274250 EC 22 09 7A */ fmadds f1, f2, f5, f1
/* 802772F4 00274254 D0 41 00 28 */ stfs f2, 0x28(r1)
/* 802772F8 00274258 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 802772FC 0027425C EF C7 08 FA */ fmadds f30, f7, f3, f1
/* 80277300 00274260 C0 04 00 08 */ lfs f0, 8(r4)
/* 80277304 00274264 D0 C1 00 2C */ stfs f6, 0x2c(r1)
/* 80277308 00274268 D0 E1 00 30 */ stfs f7, 0x30(r1)
/* 8027730C 0027426C D0 01 00 24 */ stfs f0, 0x24(r1)
/* 80277310 00274270 48 09 D5 A9 */ bl Magnitude__9CVector3fCFv
/* 80277314 00274274 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80277318 00274278 C0 42 BC 3C */ lfs f2, lbl_805AD95C@sda21(r2)
/* 8027731C 0027427C FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80277320 00274280 EC 02 00 72 */ fmuls f0, f2, f1
/* 80277324 00274284 4C 41 13 82 */ cror 2, 1, 2
/* 80277328 00274288 40 82 00 18 */ bne lbl_80277340
/* 8027732C 0027428C EC 1F 00 32 */ fmuls f0, f31, f0
/* 80277330 00274290 FC 1E 00 40 */ fcmpo cr0, f30, f0
/* 80277334 00274294 7C 00 00 26 */ mfcr r0
/* 80277338 00274298 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f
/* 8027733C 0027429C 48 00 00 1C */ b lbl_80277358
lbl_80277340:
/* 80277340 002742A0 EC 1F 00 32 */ fmuls f0, f31, f0
/* 80277344 002742A4 FC 1E 00 40 */ fcmpo cr0, f30, f0
/* 80277348 002742A8 7C 00 00 26 */ mfcr r0
/* 8027734C 002742AC 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80277350 002742B0 48 00 00 08 */ b lbl_80277358
lbl_80277354:
/* 80277354 002742B4 38 60 00 00 */ li r3, 0
lbl_80277358:
/* 80277358 002742B8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
/* 8027735C 002742BC CB E1 00 50 */ lfd f31, 0x50(r1)
/* 80277360 002742C0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
/* 80277364 002742C4 CB C1 00 40 */ lfd f30, 0x40(r1)
/* 80277368 002742C8 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 8027736C 002742CC 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80277370 002742D0 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80277374 002742D4 7C 08 03 A6 */ mtlr r0
/* 80277378 002742D8 38 21 00 60 */ addi r1, r1, 0x60
/* 8027737C 002742DC 4E 80 00 20 */ blr
.global sub_80277380
sub_80277380:
/* 80277380 002742E0 94 21 FE F0 */ stwu r1, -0x110(r1)
/* 80277384 002742E4 7C 08 02 A6 */ mflr r0
/* 80277388 002742E8 90 01 01 14 */ stw r0, 0x114(r1)
/* 8027738C 002742EC 54 A0 06 3F */ clrlwi. r0, r5, 0x18
/* 80277390 002742F0 93 E1 01 0C */ stw r31, 0x10c(r1)
/* 80277394 002742F4 7C 9F 23 78 */ mr r31, r4
/* 80277398 002742F8 93 C1 01 08 */ stw r30, 0x108(r1)
/* 8027739C 002742FC 7C 7E 1B 78 */ mr r30, r3
/* 802773A0 00274300 93 A1 01 04 */ stw r29, 0x104(r1)
/* 802773A4 00274304 93 81 01 00 */ stw r28, 0x100(r1)
/* 802773A8 00274308 7C BC 2B 78 */ mr r28, r5
/* 802773AC 0027430C 41 82 01 34 */ beq lbl_802774E0
/* 802773B0 00274310 80 1E 05 70 */ lwz r0, 0x570(r30)
/* 802773B4 00274314 7F E3 FB 78 */ mr r3, r31
/* 802773B8 00274318 38 81 00 0C */ addi r4, r1, 0xc
/* 802773BC 0027431C 90 1E 0C 58 */ stw r0, 0xc58(r30)
/* 802773C0 00274320 80 1E 0C 58 */ lwz r0, 0xc58(r30)
/* 802773C4 00274324 54 00 08 3C */ slwi r0, r0, 1
/* 802773C8 00274328 7C BE 02 14 */ add r5, r30, r0
/* 802773CC 0027432C A0 05 0B 28 */ lhz r0, 0xb28(r5)
/* 802773D0 00274330 B0 01 00 0C */ sth r0, 0xc(r1)
/* 802773D4 00274334 4B DD 51 A1 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 802773D8 00274338 7C 7D 1B 79 */ or. r29, r3, r3
/* 802773DC 0027433C 41 82 01 74 */ beq lbl_80277550
/* 802773E0 00274340 57 80 06 3F */ clrlwi. r0, r28, 0x18
/* 802773E4 00274344 41 82 01 6C */ beq lbl_80277550
/* 802773E8 00274348 88 1D 00 30 */ lbz r0, 0x30(r29)
/* 802773EC 0027434C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802773F0 00274350 40 82 01 60 */ bne lbl_80277550
/* 802773F4 00274354 80 1D 01 2C */ lwz r0, 0x12c(r29)
/* 802773F8 00274358 2C 00 00 00 */ cmpwi r0, 0
/* 802773FC 0027435C 40 82 00 18 */ bne lbl_80277414
/* 80277400 00274360 80 1D 00 E8 */ lwz r0, 0xe8(r29)
/* 80277404 00274364 C0 02 BB F4 */ lfs f0, lbl_805AD914@sda21(r2)
/* 80277408 00274368 60 00 10 00 */ ori r0, r0, 0x1000
/* 8027740C 0027436C 90 1D 00 E8 */ stw r0, 0xe8(r29)
/* 80277410 00274370 D0 1D 01 50 */ stfs f0, 0x150(r29)
lbl_80277414:
/* 80277414 00274374 80 82 BB E8 */ lwz r4, lbl_805AD908@sda21(r2)
/* 80277418 00274378 38 61 00 28 */ addi r3, r1, 0x28
/* 8027741C 0027437C 4B D8 D8 9D */ bl string_l__4rstlFPCc
/* 80277420 00274380 7F C4 F3 78 */ mr r4, r30
/* 80277424 00274384 38 61 00 68 */ addi r3, r1, 0x68
/* 80277428 00274388 38 A1 00 28 */ addi r5, r1, 0x28
/* 8027742C 0027438C 4B E0 15 4D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80277430 00274390 38 61 00 C8 */ addi r3, r1, 0xc8
/* 80277434 00274394 38 81 00 68 */ addi r4, r1, 0x68
/* 80277438 00274398 48 09 B7 3D */ bl __ct__12CTransform4fFRC12CTransform4f
/* 8027743C 0027439C 38 61 00 28 */ addi r3, r1, 0x28
/* 80277440 002743A0 48 0C 66 A1 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80277444 002743A4 7F C4 F3 78 */ mr r4, r30
/* 80277448 002743A8 7F E5 FB 78 */ mr r5, r31
/* 8027744C 002743AC 38 61 00 1C */ addi r3, r1, 0x1c
/* 80277450 002743B0 48 00 04 75 */ bl sub_802778c4
/* 80277454 002743B4 C0 61 00 1C */ lfs f3, 0x1c(r1)
/* 80277458 002743B8 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 8027745C 002743BC C0 21 00 20 */ lfs f1, 0x20(r1)
/* 80277460 002743C0 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l
/* 80277464 002743C4 C0 41 00 24 */ lfs f2, 0x24(r1)
/* 80277468 002743C8 38 61 00 38 */ addi r3, r1, 0x38
/* 8027746C 002743CC C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80277470 002743D0 38 81 00 10 */ addi r4, r1, 0x10
/* 80277474 002743D4 D0 7E 0C 60 */ stfs f3, 0xc60(r30)
/* 80277478 002743D8 38 BE 0C 60 */ addi r5, r30, 0xc60
/* 8027747C 002743DC D0 3E 0C 64 */ stfs f1, 0xc64(r30)
/* 80277480 002743E0 D0 5E 0C 68 */ stfs f2, 0xc68(r30)
/* 80277484 002743E4 D0 7E 0C 6C */ stfs f3, 0xc6c(r30)
/* 80277488 002743E8 D0 3E 0C 70 */ stfs f1, 0xc70(r30)
/* 8027748C 002743EC D0 5E 0C 74 */ stfs f2, 0xc74(r30)
/* 80277490 002743F0 D0 1E 0C 5C */ stfs f0, 0xc5c(r30)
/* 80277494 002743F4 C0 41 00 D4 */ lfs f2, 0xd4(r1)
/* 80277498 002743F8 C0 21 00 E4 */ lfs f1, 0xe4(r1)
/* 8027749C 002743FC C0 01 00 F4 */ lfs f0, 0xf4(r1)
/* 802774A0 00274400 D0 41 00 10 */ stfs f2, 0x10(r1)
/* 802774A4 00274404 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 802774A8 00274408 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 802774AC 0027440C 48 09 C6 65 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
/* 802774B0 00274410 38 61 00 98 */ addi r3, r1, 0x98
/* 802774B4 00274414 38 81 00 38 */ addi r4, r1, 0x38
/* 802774B8 00274418 48 09 B6 BD */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802774BC 0027441C 7F A3 EB 78 */ mr r3, r29
/* 802774C0 00274420 7F E5 FB 78 */ mr r5, r31
/* 802774C4 00274424 81 9D 00 00 */ lwz r12, 0(r29)
/* 802774C8 00274428 38 81 00 98 */ addi r4, r1, 0x98
/* 802774CC 0027442C 38 C0 00 00 */ li r6, 0
/* 802774D0 00274430 81 8C 00 78 */ lwz r12, 0x78(r12)
/* 802774D4 00274434 7D 89 03 A6 */ mtctr r12
/* 802774D8 00274438 4E 80 04 21 */ bctrl
/* 802774DC 0027443C 48 00 00 74 */ b lbl_80277550
lbl_802774E0:
/* 802774E0 00274440 3B BE 0B 28 */ addi r29, r30, 0xb28
/* 802774E4 00274444 3B 80 00 00 */ li r28, 0
/* 802774E8 00274448 48 00 00 5C */ b lbl_80277544
lbl_802774EC:
/* 802774EC 0027444C A0 7D 00 00 */ lhz r3, 0(r29)
/* 802774F0 00274450 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 802774F4 00274454 7C 03 00 40 */ cmplw r3, r0
/* 802774F8 00274458 41 82 00 44 */ beq lbl_8027753C
/* 802774FC 0027445C A0 1D 00 00 */ lhz r0, 0(r29)
/* 80277500 00274460 7F E3 FB 78 */ mr r3, r31
/* 80277504 00274464 38 81 00 08 */ addi r4, r1, 8
/* 80277508 00274468 B0 01 00 08 */ sth r0, 8(r1)
/* 8027750C 0027446C 4B DD 50 69 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80277510 00274470 28 03 00 00 */ cmplwi r3, 0
/* 80277514 00274474 41 82 00 28 */ beq lbl_8027753C
/* 80277518 00274478 88 03 05 48 */ lbz r0, 0x548(r3)
/* 8027751C 0027447C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 80277520 00274480 41 82 00 1C */ beq lbl_8027753C
/* 80277524 00274484 81 83 00 00 */ lwz r12, 0(r3)
/* 80277528 00274488 7F E4 FB 78 */ mr r4, r31
/* 8027752C 0027448C 38 A0 00 00 */ li r5, 0
/* 80277530 00274490 81 8C 00 74 */ lwz r12, 0x74(r12)
/* 80277534 00274494 7D 89 03 A6 */ mtctr r12
/* 80277538 00274498 4E 80 04 21 */ bctrl
lbl_8027753C:
/* 8027753C 0027449C 3B BD 00 02 */ addi r29, r29, 2
/* 80277540 002744A0 3B 9C 00 01 */ addi r28, r28, 1
lbl_80277544:
/* 80277544 002744A4 80 1E 09 6C */ lwz r0, 0x96c(r30)
/* 80277548 002744A8 7C 1C 00 00 */ cmpw r28, r0
/* 8027754C 002744AC 41 80 FF A0 */ blt lbl_802774EC
lbl_80277550:
/* 80277550 002744B0 80 01 01 14 */ lwz r0, 0x114(r1)
/* 80277554 002744B4 83 E1 01 0C */ lwz r31, 0x10c(r1)
/* 80277558 002744B8 83 C1 01 08 */ lwz r30, 0x108(r1)
/* 8027755C 002744BC 83 A1 01 04 */ lwz r29, 0x104(r1)
/* 80277560 002744C0 83 81 01 00 */ lwz r28, 0x100(r1)
/* 80277564 002744C4 7C 08 03 A6 */ mtlr r0
/* 80277568 002744C8 38 21 01 10 */ addi r1, r1, 0x110
/* 8027756C 002744CC 4E 80 00 20 */ blr
.global sub_80277570
sub_80277570:
/* 80277570 002744D0 94 21 FD D0 */ stwu r1, -0x230(r1)
/* 80277574 002744D4 7C 08 02 A6 */ mflr r0
/* 80277578 002744D8 90 01 02 34 */ stw r0, 0x234(r1)
/* 8027757C 002744DC DB E1 02 20 */ stfd f31, 0x220(r1)
/* 80277580 002744E0 F3 E1 02 28 */ psq_st f31, 552(r1), 0, qr0
/* 80277584 002744E4 DB C1 02 10 */ stfd f30, 0x210(r1)
/* 80277588 002744E8 F3 C1 02 18 */ psq_st f30, 536(r1), 0, qr0
/* 8027758C 002744EC DB A1 02 00 */ stfd f29, 0x200(r1)
/* 80277590 002744F0 F3 A1 02 08 */ psq_st f29, 520(r1), 0, qr0
/* 80277594 002744F4 DB 81 01 F0 */ stfd f28, 0x1f0(r1)
/* 80277598 002744F8 F3 81 01 F8 */ psq_st f28, 504(r1), 0, qr0
/* 8027759C 002744FC 93 E1 01 EC */ stw r31, 0x1ec(r1)
/* 802775A0 00274500 93 C1 01 E8 */ stw r30, 0x1e8(r1)
/* 802775A4 00274504 93 A1 01 E4 */ stw r29, 0x1e4(r1)
/* 802775A8 00274508 FF E0 08 90 */ fmr f31, f1
/* 802775AC 0027450C 7C 9E 23 78 */ mr r30, r4
/* 802775B0 00274510 80 82 BB E8 */ lwz r4, lbl_805AD908@sda21(r2)
/* 802775B4 00274514 7C 7D 1B 78 */ mr r29, r3
/* 802775B8 00274518 38 61 00 98 */ addi r3, r1, 0x98
/* 802775BC 0027451C 4B D8 D6 FD */ bl string_l__4rstlFPCc
/* 802775C0 00274520 7F A4 EB 78 */ mr r4, r29
/* 802775C4 00274524 38 61 01 44 */ addi r3, r1, 0x144
/* 802775C8 00274528 38 A1 00 98 */ addi r5, r1, 0x98
/* 802775CC 0027452C 4B E0 13 AD */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802775D0 00274530 38 61 01 A4 */ addi r3, r1, 0x1a4
/* 802775D4 00274534 38 81 01 44 */ addi r4, r1, 0x144
/* 802775D8 00274538 48 09 B5 9D */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802775DC 0027453C 38 61 00 98 */ addi r3, r1, 0x98
/* 802775E0 00274540 48 0C 65 01 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802775E4 00274544 C0 41 01 B0 */ lfs f2, 0x1b0(r1)
/* 802775E8 00274548 38 81 00 8C */ addi r4, r1, 0x8c
/* 802775EC 0027454C C0 21 01 C0 */ lfs f1, 0x1c0(r1)
/* 802775F0 00274550 C0 01 01 D0 */ lfs f0, 0x1d0(r1)
/* 802775F4 00274554 D0 41 00 8C */ stfs f2, 0x8c(r1)
/* 802775F8 00274558 D0 21 00 90 */ stfs f1, 0x90(r1)
/* 802775FC 0027455C D0 01 00 94 */ stfs f0, 0x94(r1)
/* 80277600 00274560 80 7D 0C 54 */ lwz r3, 0xc54(r29)
/* 80277604 00274564 81 83 00 00 */ lwz r12, 0(r3)
/* 80277608 00274568 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 8027760C 0027456C 7D 89 03 A6 */ mtctr r12
/* 80277610 00274570 4E 80 04 21 */ bctrl
/* 80277614 00274574 83 FD 0C 54 */ lwz r31, 0xc54(r29)
/* 80277618 00274578 38 61 01 14 */ addi r3, r1, 0x114
/* 8027761C 0027457C 38 81 01 A4 */ addi r4, r1, 0x1a4
/* 80277620 00274580 48 09 B6 21 */ bl GetRotation__12CTransform4fCFv
/* 80277624 00274584 7F E3 FB 78 */ mr r3, r31
/* 80277628 00274588 38 81 01 14 */ addi r4, r1, 0x114
/* 8027762C 0027458C 81 9F 00 00 */ lwz r12, 0(r31)
/* 80277630 00274590 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 80277634 00274594 7D 89 03 A6 */ mtctr r12
/* 80277638 00274598 4E 80 04 21 */ bctrl
/* 8027763C 0027459C 80 7D 0C 54 */ lwz r3, 0xc54(r29)
/* 80277640 002745A0 FC 20 F8 90 */ fmr f1, f31
/* 80277644 002745A4 81 83 00 00 */ lwz r12, 0(r3)
/* 80277648 002745A8 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027764C 002745AC 7D 89 03 A6 */ mtctr r12
/* 80277650 002745B0 4E 80 04 21 */ bctrl
/* 80277654 002745B4 80 1D 0C 58 */ lwz r0, 0xc58(r29)
/* 80277658 002745B8 2C 00 00 00 */ cmpwi r0, 0
/* 8027765C 002745BC 41 80 02 2C */ blt lbl_80277888
/* 80277660 002745C0 2C 00 00 03 */ cmpwi r0, 3
/* 80277664 002745C4 40 81 00 08 */ ble lbl_8027766C
/* 80277668 002745C8 48 00 02 20 */ b lbl_80277888
lbl_8027766C:
/* 8027766C 002745CC 54 00 08 3C */ slwi r0, r0, 1
/* 80277670 002745D0 7F C3 F3 78 */ mr r3, r30
/* 80277674 002745D4 7C BD 02 14 */ add r5, r29, r0
/* 80277678 002745D8 38 81 00 08 */ addi r4, r1, 8
/* 8027767C 002745DC A0 05 0B 28 */ lhz r0, 0xb28(r5)
/* 80277680 002745E0 B0 01 00 08 */ sth r0, 8(r1)
/* 80277684 002745E4 4B DD 4E F1 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80277688 002745E8 7C 7F 1B 79 */ or. r31, r3, r3
/* 8027768C 002745EC 41 82 01 FC */ beq lbl_80277888
/* 80277690 002745F0 88 1F 00 30 */ lbz r0, 0x30(r31)
/* 80277694 002745F4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80277698 002745F8 41 82 01 F0 */ beq lbl_80277888
/* 8027769C 002745FC 80 7D 04 50 */ lwz r3, 0x450(r29)
/* 802776A0 00274600 4B EC 2A 2D */ bl GetPercentageFrozen__15CBodyControllerCFv
/* 802776A4 00274604 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802776A8 00274608 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802776AC 0027460C 40 81 00 14 */ ble lbl_802776C0
/* 802776B0 00274610 7F A3 EB 78 */ mr r3, r29
/* 802776B4 00274614 7F C4 F3 78 */ mr r4, r30
/* 802776B8 00274618 38 A0 00 00 */ li r5, 0
/* 802776BC 0027461C 4B FF FC C5 */ bl sub_80277380
lbl_802776C0:
/* 802776C0 00274620 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha
/* 802776C4 00274624 38 61 01 74 */ addi r3, r1, 0x174
/* 802776C8 00274628 38 84 66 70 */ addi r4, r4, sIdentity__12CTransform4f@l
/* 802776CC 0027462C 48 09 B4 A9 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802776D0 00274630 C0 1D 0C 5C */ lfs f0, 0xc5c(r29)
/* 802776D4 00274634 38 81 00 10 */ addi r4, r1, 0x10
/* 802776D8 00274638 38 6D 98 9C */ addi r3, r13, lbl_805A845C@sda21
/* 802776DC 0027463C 38 AD 98 A0 */ addi r5, r13, lbl_805A8460@sda21
/* 802776E0 00274640 EC 00 F8 2A */ fadds f0, f0, f31
/* 802776E4 00274644 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 802776E8 00274648 4B D9 4B CD */ bl "Clamp<f>__5CMathFRCfRCfRCf"
/* 802776EC 0027464C C0 23 00 00 */ lfs f1, 0(r3)
/* 802776F0 00274650 38 61 00 80 */ addi r3, r1, 0x80
/* 802776F4 00274654 C0 02 BB F4 */ lfs f0, lbl_805AD914@sda21(r2)
/* 802776F8 00274658 38 81 00 74 */ addi r4, r1, 0x74
/* 802776FC 0027465C D0 3D 0C 5C */ stfs f1, 0xc5c(r29)
/* 80277700 00274660 C0 42 BC 30 */ lfs f2, lbl_805AD950@sda21(r2)
/* 80277704 00274664 C0 7D 0C 5C */ lfs f3, 0xc5c(r29)
/* 80277708 00274668 C0 3D 0C 70 */ lfs f1, 0xc70(r29)
/* 8027770C 0027466C ED 43 00 24 */ fdivs f10, f3, f0
/* 80277710 00274670 C0 1D 0C 74 */ lfs f0, 0xc74(r29)
/* 80277714 00274674 C0 7D 0C 6C */ lfs f3, 0xc6c(r29)
/* 80277718 00274678 C1 1D 0C 64 */ lfs f8, 0xc64(r29)
/* 8027771C 0027467C C0 DD 0C 68 */ lfs f6, 0xc68(r29)
/* 80277720 00274680 C0 9D 0C 60 */ lfs f4, 0xc60(r29)
/* 80277724 00274684 ED 22 50 28 */ fsubs f9, f2, f10
/* 80277728 00274688 C0 41 01 C0 */ lfs f2, 0x1c0(r1)
/* 8027772C 0027468C EC E1 02 B2 */ fmuls f7, f1, f10
/* 80277730 00274690 C0 21 01 D0 */ lfs f1, 0x1d0(r1)
/* 80277734 00274694 EC A0 02 B2 */ fmuls f5, f0, f10
/* 80277738 00274698 C0 01 01 B0 */ lfs f0, 0x1b0(r1)
/* 8027773C 0027469C EC E8 3A 7A */ fmadds f7, f8, f9, f7
/* 80277740 002746A0 EC A6 2A 7A */ fmadds f5, f6, f9, f5
/* 80277744 002746A4 EC 63 02 B2 */ fmuls f3, f3, f10
/* 80277748 002746A8 D0 E1 00 AC */ stfs f7, 0xac(r1)
/* 8027774C 002746AC EC C7 10 28 */ fsubs f6, f7, f2
/* 80277750 002746B0 EC 45 08 28 */ fsubs f2, f5, f1
/* 80277754 002746B4 EC 24 1A 7A */ fmadds f1, f4, f9, f3
/* 80277758 002746B8 D0 A1 00 B0 */ stfs f5, 0xb0(r1)
/* 8027775C 002746BC D0 21 00 A8 */ stfs f1, 0xa8(r1)
/* 80277760 002746C0 EC 01 00 28 */ fsubs f0, f1, f0
/* 80277764 002746C4 C3 9D 00 58 */ lfs f28, 0x58(r29)
/* 80277768 002746C8 C3 BD 00 48 */ lfs f29, 0x48(r29)
/* 8027776C 002746CC C3 DD 00 38 */ lfs f30, 0x38(r29)
/* 80277770 002746D0 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 80277774 002746D4 D0 C1 00 78 */ stfs f6, 0x78(r1)
/* 80277778 002746D8 D0 41 00 7C */ stfs f2, 0x7c(r1)
/* 8027777C 002746DC 48 09 D0 D5 */ bl AsNormalized__9CVector3fCFv
/* 80277780 002746E0 C0 81 00 84 */ lfs f4, 0x84(r1)
/* 80277784 002746E4 C0 C1 00 80 */ lfs f6, 0x80(r1)
/* 80277788 002746E8 EC 3D 01 32 */ fmuls f1, f29, f4
/* 8027778C 002746EC C0 A1 00 88 */ lfs f5, 0x88(r1)
/* 80277790 002746F0 C0 02 BC B0 */ lfs f0, lbl_805AD9D0@sda21(r2)
/* 80277794 002746F4 EC 3E 09 BA */ fmadds f1, f30, f6, f1
/* 80277798 002746F8 EC 3C 09 7A */ fmadds f1, f28, f5, f1
/* 8027779C 002746FC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802777A0 00274700 40 81 00 44 */ ble lbl_802777E4
/* 802777A4 00274704 C0 41 01 B0 */ lfs f2, 0x1b0(r1)
/* 802777A8 00274708 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 802777AC 0027470C C0 21 01 C0 */ lfs f1, 0x1c0(r1)
/* 802777B0 00274710 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l
/* 802777B4 00274714 C0 01 01 D0 */ lfs f0, 0x1d0(r1)
/* 802777B8 00274718 38 61 00 E4 */ addi r3, r1, 0xe4
/* 802777BC 0027471C D0 41 00 68 */ stfs f2, 0x68(r1)
/* 802777C0 00274720 38 81 00 68 */ addi r4, r1, 0x68
/* 802777C4 00274724 38 A1 00 A8 */ addi r5, r1, 0xa8
/* 802777C8 00274728 D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 802777CC 0027472C D0 01 00 70 */ stfs f0, 0x70(r1)
/* 802777D0 00274730 48 09 C3 41 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
/* 802777D4 00274734 38 61 01 74 */ addi r3, r1, 0x174
/* 802777D8 00274738 38 81 00 E4 */ addi r4, r1, 0xe4
/* 802777DC 0027473C 48 09 B3 65 */ bl __as__12CTransform4fFRC12CTransform4f
/* 802777E0 00274740 48 00 00 88 */ b lbl_80277868
lbl_802777E4:
/* 802777E4 00274744 C0 61 01 B0 */ lfs f3, 0x1b0(r1)
/* 802777E8 00274748 38 61 00 20 */ addi r3, r1, 0x20
/* 802777EC 0027474C C0 41 01 C0 */ lfs f2, 0x1c0(r1)
/* 802777F0 00274750 38 9D 00 34 */ addi r4, r29, 0x34
/* 802777F4 00274754 C0 21 01 D0 */ lfs f1, 0x1d0(r1)
/* 802777F8 00274758 C0 02 BC B4 */ lfs f0, lbl_805AD9D4@sda21(r2)
/* 802777FC 0027475C D0 61 00 14 */ stfs f3, 0x14(r1)
/* 80277800 00274760 D0 41 00 18 */ stfs f2, 0x18(r1)
/* 80277804 00274764 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 80277808 00274768 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 8027780C 0027476C D0 C1 00 30 */ stfs f6, 0x30(r1)
/* 80277810 00274770 D0 81 00 34 */ stfs f4, 0x34(r1)
/* 80277814 00274774 D0 A1 00 38 */ stfs f5, 0x38(r1)
/* 80277818 00274778 D3 C1 00 3C */ stfs f30, 0x3c(r1)
/* 8027781C 0027477C D3 A1 00 40 */ stfs f29, 0x40(r1)
/* 80277820 00274780 D3 81 00 44 */ stfs f28, 0x44(r1)
/* 80277824 00274784 48 09 A9 05 */ bl FromMatrix__11CQuaternionFRC12CTransform4f
/* 80277828 00274788 38 61 00 48 */ addi r3, r1, 0x48
/* 8027782C 0027478C 38 81 00 3C */ addi r4, r1, 0x3c
/* 80277830 00274790 38 A1 00 30 */ addi r5, r1, 0x30
/* 80277834 00274794 38 C1 00 0C */ addi r6, r1, 0xc
/* 80277838 00274798 48 09 9E 5D */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle
/* 8027783C 0027479C 38 61 00 58 */ addi r3, r1, 0x58
/* 80277840 002747A0 38 81 00 48 */ addi r4, r1, 0x48
/* 80277844 002747A4 38 A1 00 20 */ addi r5, r1, 0x20
/* 80277848 002747A8 48 09 99 59 */ bl __ml__11CQuaternionCFRC11CQuaternion
/* 8027784C 002747AC 38 61 00 B4 */ addi r3, r1, 0xb4
/* 80277850 002747B0 38 81 00 58 */ addi r4, r1, 0x58
/* 80277854 002747B4 38 A1 00 14 */ addi r5, r1, 0x14
/* 80277858 002747B8 48 09 A6 65 */ bl BuildTransform4f__11CQuaternionCFRC9CVector3f
/* 8027785C 002747BC 38 61 01 74 */ addi r3, r1, 0x174
/* 80277860 002747C0 38 81 00 B4 */ addi r4, r1, 0xb4
/* 80277864 002747C4 48 09 B2 DD */ bl __as__12CTransform4fFRC12CTransform4f
lbl_80277868:
/* 80277868 002747C8 7F E3 FB 78 */ mr r3, r31
/* 8027786C 002747CC FC 20 F8 90 */ fmr f1, f31
/* 80277870 002747D0 81 9F 00 00 */ lwz r12, 0(r31)
/* 80277874 002747D4 7F C5 F3 78 */ mr r5, r30
/* 80277878 002747D8 38 81 01 74 */ addi r4, r1, 0x174
/* 8027787C 002747DC 81 8C 00 70 */ lwz r12, 0x70(r12)
/* 80277880 002747E0 7D 89 03 A6 */ mtctr r12
/* 80277884 002747E4 4E 80 04 21 */ bctrl
lbl_80277888:
/* 80277888 002747E8 E3 E1 02 28 */ psq_l f31, 552(r1), 0, qr0
/* 8027788C 002747EC CB E1 02 20 */ lfd f31, 0x220(r1)
/* 80277890 002747F0 E3 C1 02 18 */ psq_l f30, 536(r1), 0, qr0
/* 80277894 002747F4 CB C1 02 10 */ lfd f30, 0x210(r1)
/* 80277898 002747F8 E3 A1 02 08 */ psq_l f29, 520(r1), 0, qr0
/* 8027789C 002747FC CB A1 02 00 */ lfd f29, 0x200(r1)
/* 802778A0 00274800 E3 81 01 F8 */ psq_l f28, 504(r1), 0, qr0
/* 802778A4 00274804 CB 81 01 F0 */ lfd f28, 0x1f0(r1)
/* 802778A8 00274808 83 E1 01 EC */ lwz r31, 0x1ec(r1)
/* 802778AC 0027480C 83 C1 01 E8 */ lwz r30, 0x1e8(r1)
/* 802778B0 00274810 80 01 02 34 */ lwz r0, 0x234(r1)
/* 802778B4 00274814 83 A1 01 E4 */ lwz r29, 0x1e4(r1)
/* 802778B8 00274818 7C 08 03 A6 */ mtlr r0
/* 802778BC 0027481C 38 21 02 30 */ addi r1, r1, 0x230
/* 802778C0 00274820 4E 80 00 20 */ blr
.global sub_802778c4
sub_802778c4:
/* 802778C4 00274824 94 21 F7 00 */ stwu r1, -0x900(r1)
/* 802778C8 00274828 7C 08 02 A6 */ mflr r0
/* 802778CC 0027482C 90 01 09 04 */ stw r0, 0x904(r1)
/* 802778D0 00274830 DB E1 08 F0 */ stfd f31, 0x8f0(r1)
/* 802778D4 00274834 F3 E1 08 F8 */ psq_st f31, -1800(r1), 0, qr0
/* 802778D8 00274838 DB C1 08 E0 */ stfd f30, 0x8e0(r1)
/* 802778DC 0027483C F3 C1 08 E8 */ psq_st f30, -1816(r1), 0, qr0
/* 802778E0 00274840 DB A1 08 D0 */ stfd f29, 0x8d0(r1)
/* 802778E4 00274844 F3 A1 08 D8 */ psq_st f29, -1832(r1), 0, qr0
/* 802778E8 00274848 BF 61 08 BC */ stmw r27, 0x8bc(r1)
/* 802778EC 0027484C 88 0D A5 80 */ lbz r0, lbl_805A9140@sda21(r13)
/* 802778F0 00274850 7C 7D 1B 78 */ mr r29, r3
/* 802778F4 00274854 7C 9E 23 78 */ mr r30, r4
/* 802778F8 00274858 7C BF 2B 78 */ mr r31, r5
/* 802778FC 0027485C 7C 00 07 75 */ extsb. r0, r0
/* 80277900 00274860 40 82 00 88 */ bne lbl_80277988
/* 80277904 00274864 80 AD 98 90 */ lwz r5, lbl_805A8450@sda21(r13)
/* 80277908 00274868 38 60 00 00 */ li r3, 0
/* 8027790C 0027486C 38 80 00 01 */ li r4, 1
/* 80277910 00274870 48 11 25 E5 */ bl __shl2i
/* 80277914 00274874 80 AD 98 94 */ lwz r5, lbl_805A8454@sda21(r13)
/* 80277918 00274878 7C 9B 23 78 */ mr r27, r4
/* 8027791C 0027487C 7C 7C 1B 78 */ mr r28, r3
/* 80277920 00274880 38 60 00 00 */ li r3, 0
/* 80277924 00274884 38 80 00 01 */ li r4, 1
/* 80277928 00274888 48 11 25 CD */ bl __shl2i
/* 8027792C 0027488C 80 AD 98 98 */ lwz r5, lbl_805A8458@sda21(r13)
/* 80277930 00274890 7F 7B 23 78 */ or r27, r27, r4
/* 80277934 00274894 7F 9C 1B 78 */ or r28, r28, r3
/* 80277938 00274898 38 60 00 00 */ li r3, 0
/* 8027793C 0027489C 38 80 00 01 */ li r4, 1
/* 80277940 002748A0 48 11 25 B5 */ bl __shl2i
/* 80277944 002748A4 80 AD 98 8C */ lwz r5, lbl_805A844C@sda21(r13)
/* 80277948 002748A8 7F 7B 23 78 */ or r27, r27, r4
/* 8027794C 002748AC 7F 9C 1B 78 */ or r28, r28, r3
/* 80277950 002748B0 38 60 00 00 */ li r3, 0
/* 80277954 002748B4 38 80 00 01 */ li r4, 1
/* 80277958 002748B8 48 11 25 9D */ bl __shl2i
/* 8027795C 002748BC 3C A0 80 47 */ lis r5, lbl_8046E0C0@ha
/* 80277960 002748C0 38 C0 00 03 */ li r6, 3
/* 80277964 002748C4 38 A5 E0 C0 */ addi r5, r5, lbl_8046E0C0@l
/* 80277968 002748C8 38 00 00 01 */ li r0, 1
/* 8027796C 002748CC 90 C1 00 40 */ stw r6, 0x40(r1)
/* 80277970 002748D0 90 85 00 04 */ stw r4, 4(r5)
/* 80277974 002748D4 90 65 00 00 */ stw r3, 0(r5)
/* 80277978 002748D8 93 65 00 0C */ stw r27, 0xc(r5)
/* 8027797C 002748DC 93 85 00 08 */ stw r28, 8(r5)
/* 80277980 002748E0 90 C5 00 10 */ stw r6, 0x10(r5)
/* 80277984 002748E4 98 0D A5 80 */ stb r0, lbl_805A9140@sda21(r13)
lbl_80277988:
/* 80277988 002748E8 80 9F 08 4C */ lwz r4, 0x84c(r31)
/* 8027798C 002748EC 3C 60 80 5A */ lis r3, sDownVector__9CVector3f@ha
/* 80277990 002748F0 38 E3 67 00 */ addi r7, r3, sDownVector__9CVector3f@l
/* 80277994 002748F4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80277998 002748F8 C0 A4 00 60 */ lfs f5, 0x60(r4)
/* 8027799C 002748FC 38 C0 00 00 */ li r6, 0
/* 802779A0 00274900 C0 84 00 50 */ lfs f4, 0x50(r4)
/* 802779A4 00274904 7F E5 FB 78 */ mr r5, r31
/* 802779A8 00274908 C0 24 00 40 */ lfs f1, 0x40(r4)
/* 802779AC 0027490C 38 61 00 0C */ addi r3, r1, 0xc
/* 802779B0 00274910 C0 67 00 00 */ lfs f3, 0(r7)
/* 802779B4 00274914 C0 47 00 04 */ lfs f2, 4(r7)
/* 802779B8 00274918 C0 07 00 08 */ lfs f0, 8(r7)
/* 802779BC 0027491C D0 21 00 24 */ stfs f1, 0x24(r1)
/* 802779C0 00274920 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 802779C4 00274924 D0 81 00 28 */ stfs f4, 0x28(r1)
/* 802779C8 00274928 D0 A1 00 2C */ stfs f5, 0x2c(r1)
/* 802779CC 0027492C D0 61 00 18 */ stfs f3, 0x18(r1)
/* 802779D0 00274930 D0 41 00 1C */ stfs f2, 0x1c(r1)
/* 802779D4 00274934 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 802779D8 00274938 90 C1 00 A8 */ stw r6, 0xa8(r1)
/* 802779DC 0027493C B0 01 00 08 */ sth r0, 8(r1)
/* 802779E0 00274940 81 84 00 00 */ lwz r12, 0(r4)
/* 802779E4 00274944 C3 A4 00 60 */ lfs f29, 0x60(r4)
/* 802779E8 00274948 81 8C 00 4C */ lwz r12, 0x4c(r12)
/* 802779EC 0027494C C3 C4 00 50 */ lfs f30, 0x50(r4)
/* 802779F0 00274950 C3 E4 00 40 */ lfs f31, 0x40(r4)
/* 802779F4 00274954 7D 89 03 A6 */ mtctr r12
/* 802779F8 00274958 4E 80 04 21 */ bctrl
/* 802779FC 0027495C C0 01 00 14 */ lfs f0, 0x14(r1)
/* 80277A00 00274960 3C 60 80 47 */ lis r3, lbl_8046E0C0@ha
/* 80277A04 00274964 C0 21 00 0C */ lfs f1, 0xc(r1)
/* 80277A08 00274968 38 E3 E0 C0 */ addi r7, r3, lbl_8046E0C0@l
/* 80277A0C 0027496C EC 60 E8 2A */ fadds f3, f0, f29
/* 80277A10 00274970 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80277A14 00274974 EC 41 F8 2A */ fadds f2, f1, f31
/* 80277A18 00274978 C0 82 BC 80 */ lfs f4, lbl_805AD9A0@sda21(r2)
/* 80277A1C 0027497C EC 00 F0 2A */ fadds f0, f0, f30
/* 80277A20 00274980 C0 22 BC B8 */ lfs f1, lbl_805AD9D8@sda21(r2)
/* 80277A24 00274984 EF E4 00 F2 */ fmuls f31, f4, f3
/* 80277A28 00274988 7F E3 FB 78 */ mr r3, r31
/* 80277A2C 0027498C EF A4 00 B2 */ fmuls f29, f4, f2
/* 80277A30 00274990 7F C8 F3 78 */ mr r8, r30
/* 80277A34 00274994 EF C4 00 32 */ fmuls f30, f4, f0
/* 80277A38 00274998 38 81 00 A8 */ addi r4, r1, 0xa8
/* 80277A3C 0027499C 38 A1 00 24 */ addi r5, r1, 0x24
/* 80277A40 002749A0 38 C1 00 18 */ addi r6, r1, 0x18
/* 80277A44 002749A4 4B DD 4C 95 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC9CVector3fRC9CVector3ffRC15CMaterialFilterPC6CActor"
/* 80277A48 002749A8 3C 60 80 47 */ lis r3, lbl_8046E0C0@ha
/* 80277A4C 002749AC C0 22 BC B8 */ lfs f1, lbl_805AD9D8@sda21(r2)
/* 80277A50 002749B0 39 03 E0 C0 */ addi r8, r3, lbl_8046E0C0@l
/* 80277A54 002749B4 7F E4 FB 78 */ mr r4, r31
/* 80277A58 002749B8 38 61 00 48 */ addi r3, r1, 0x48
/* 80277A5C 002749BC 38 A1 00 08 */ addi r5, r1, 8
/* 80277A60 002749C0 38 C1 00 24 */ addi r6, r1, 0x24
/* 80277A64 002749C4 38 E1 00 18 */ addi r7, r1, 0x18
/* 80277A68 002749C8 39 21 00 A8 */ addi r9, r1, 0xa8
/* 80277A6C 002749CC 4B DD 55 59 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>"
/* 80277A70 002749D0 88 81 00 68 */ lbz r4, 0x68(r1)
/* 80277A74 002749D4 C0 E1 00 48 */ lfs f7, 0x48(r1)
/* 80277A78 002749D8 C0 C1 00 4C */ lfs f6, 0x4c(r1)
/* 80277A7C 002749DC 28 04 00 00 */ cmplwi r4, 0
/* 80277A80 002749E0 C0 A1 00 50 */ lfs f5, 0x50(r1)
/* 80277A84 002749E4 C0 81 00 54 */ lfs f4, 0x54(r1)
/* 80277A88 002749E8 C0 61 00 58 */ lfs f3, 0x58(r1)
/* 80277A8C 002749EC C0 41 00 5C */ lfs f2, 0x5c(r1)
/* 80277A90 002749F0 C0 21 00 60 */ lfs f1, 0x60(r1)
/* 80277A94 002749F4 C0 01 00 64 */ lfs f0, 0x64(r1)
/* 80277A98 002749F8 80 01 00 70 */ lwz r0, 0x70(r1)
/* 80277A9C 002749FC 80 61 00 74 */ lwz r3, 0x74(r1)
/* 80277AA0 00274A00 D0 E1 00 78 */ stfs f7, 0x78(r1)
/* 80277AA4 00274A04 D0 C1 00 7C */ stfs f6, 0x7c(r1)
/* 80277AA8 00274A08 D0 A1 00 80 */ stfs f5, 0x80(r1)
/* 80277AAC 00274A0C D0 81 00 84 */ stfs f4, 0x84(r1)
/* 80277AB0 00274A10 D0 61 00 88 */ stfs f3, 0x88(r1)
/* 80277AB4 00274A14 D0 41 00 8C */ stfs f2, 0x8c(r1)
/* 80277AB8 00274A18 D0 21 00 90 */ stfs f1, 0x90(r1)
/* 80277ABC 00274A1C D0 01 00 94 */ stfs f0, 0x94(r1)
/* 80277AC0 00274A20 98 81 00 98 */ stb r4, 0x98(r1)
/* 80277AC4 00274A24 90 61 00 A4 */ stw r3, 0xa4(r1)
/* 80277AC8 00274A28 90 01 00 A0 */ stw r0, 0xa0(r1)
/* 80277ACC 00274A2C 41 82 00 1C */ beq lbl_80277AE8
/* 80277AD0 00274A30 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 80277AD4 00274A34 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80277AD8 00274A38 EC 1F 00 28 */ fsubs f0, f31, f0
/* 80277ADC 00274A3C EF A6 08 2A */ fadds f29, f6, f1
/* 80277AE0 00274A40 EF C5 08 2A */ fadds f30, f5, f1
/* 80277AE4 00274A44 EF E4 00 2A */ fadds f31, f4, f0
lbl_80277AE8:
/* 80277AE8 00274A48 D3 BD 00 00 */ stfs f29, 0(r29)
/* 80277AEC 00274A4C 38 60 00 00 */ li r3, 0
/* 80277AF0 00274A50 D3 DD 00 04 */ stfs f30, 4(r29)
/* 80277AF4 00274A54 D3 FD 00 08 */ stfs f31, 8(r29)
/* 80277AF8 00274A58 80 A1 00 A8 */ lwz r5, 0xa8(r1)
/* 80277AFC 00274A5C 2C 05 00 00 */ cmpwi r5, 0
/* 80277B00 00274A60 40 81 00 40 */ ble lbl_80277B40
/* 80277B04 00274A64 2C 05 00 08 */ cmpwi r5, 8
/* 80277B08 00274A68 38 85 FF F8 */ addi r4, r5, -8
/* 80277B0C 00274A6C 40 81 00 20 */ ble lbl_80277B2C
/* 80277B10 00274A70 38 04 00 07 */ addi r0, r4, 7
/* 80277B14 00274A74 54 00 E8 FE */ srwi r0, r0, 3
/* 80277B18 00274A78 7C 09 03 A6 */ mtctr r0
/* 80277B1C 00274A7C 2C 04 00 00 */ cmpwi r4, 0
/* 80277B20 00274A80 40 81 00 0C */ ble lbl_80277B2C
lbl_80277B24:
/* 80277B24 00274A84 38 63 00 08 */ addi r3, r3, 8
/* 80277B28 00274A88 42 00 FF FC */ bdnz lbl_80277B24
lbl_80277B2C:
/* 80277B2C 00274A8C 7C 03 28 50 */ subf r0, r3, r5
/* 80277B30 00274A90 7C 09 03 A6 */ mtctr r0
/* 80277B34 00274A94 7C 03 28 00 */ cmpw r3, r5
/* 80277B38 00274A98 40 80 00 08 */ bge lbl_80277B40
lbl_80277B3C:
/* 80277B3C 00274A9C 42 00 00 00 */ bdnz lbl_80277B3C
lbl_80277B40:
/* 80277B40 00274AA0 38 00 00 00 */ li r0, 0
/* 80277B44 00274AA4 90 01 00 A8 */ stw r0, 0xa8(r1)
/* 80277B48 00274AA8 E3 E1 08 F8 */ psq_l f31, -1800(r1), 0, qr0
/* 80277B4C 00274AAC CB E1 08 F0 */ lfd f31, 0x8f0(r1)
/* 80277B50 00274AB0 E3 C1 08 E8 */ psq_l f30, -1816(r1), 0, qr0
/* 80277B54 00274AB4 CB C1 08 E0 */ lfd f30, 0x8e0(r1)
/* 80277B58 00274AB8 E3 A1 08 D8 */ psq_l f29, -1832(r1), 0, qr0
/* 80277B5C 00274ABC CB A1 08 D0 */ lfd f29, 0x8d0(r1)
/* 80277B60 00274AC0 BB 61 08 BC */ lmw r27, 0x8bc(r1)
/* 80277B64 00274AC4 80 01 09 04 */ lwz r0, 0x904(r1)
/* 80277B68 00274AC8 7C 08 03 A6 */ mtlr r0
/* 80277B6C 00274ACC 38 21 09 00 */ addi r1, r1, 0x900
/* 80277B70 00274AD0 4E 80 00 20 */ blr
.global sub_80277b74
sub_80277b74:
/* 80277B74 00274AD4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80277B78 00274AD8 7C 08 02 A6 */ mflr r0
/* 80277B7C 00274ADC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80277B80 00274AE0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80277B84 00274AE4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80277B88 00274AE8 3B C0 00 00 */ li r30, 0
/* 80277B8C 00274AEC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80277B90 00274AF0 7C 9D 23 78 */ mr r29, r4
/* 80277B94 00274AF4 93 81 00 10 */ stw r28, 0x10(r1)
/* 80277B98 00274AF8 7C 7C 1B 78 */ mr r28, r3
/* 80277B9C 00274AFC 3B FC 0B 28 */ addi r31, r28, 0xb28
/* 80277BA0 00274B00 48 00 00 38 */ b lbl_80277BD8
lbl_80277BA4:
/* 80277BA4 00274B04 A0 7F 00 00 */ lhz r3, 0(r31)
/* 80277BA8 00274B08 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80277BAC 00274B0C 7C 03 00 40 */ cmplw r3, r0
/* 80277BB0 00274B10 41 82 00 20 */ beq lbl_80277BD0
/* 80277BB4 00274B14 A0 1F 00 00 */ lhz r0, 0(r31)
/* 80277BB8 00274B18 7F A3 EB 78 */ mr r3, r29
/* 80277BBC 00274B1C 38 81 00 08 */ addi r4, r1, 8
/* 80277BC0 00274B20 B0 01 00 08 */ sth r0, 8(r1)
/* 80277BC4 00274B24 4B DD 46 A9 */ bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 80277BC8 00274B28 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80277BCC 00274B2C B0 1F 00 00 */ sth r0, 0(r31)
lbl_80277BD0:
/* 80277BD0 00274B30 3B FF 00 02 */ addi r31, r31, 2
/* 80277BD4 00274B34 3B DE 00 01 */ addi r30, r30, 1
lbl_80277BD8:
/* 80277BD8 00274B38 80 1C 09 6C */ lwz r0, 0x96c(r28)
/* 80277BDC 00274B3C 7C 1E 00 00 */ cmpw r30, r0
/* 80277BE0 00274B40 41 80 FF C4 */ blt lbl_80277BA4
/* 80277BE4 00274B44 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80277BE8 00274B48 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80277BEC 00274B4C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80277BF0 00274B50 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80277BF4 00274B54 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80277BF8 00274B58 7C 08 03 A6 */ mtlr r0
/* 80277BFC 00274B5C 38 21 00 20 */ addi r1, r1, 0x20
/* 80277C00 00274B60 4E 80 00 20 */ blr
.global sub_80277c04
sub_80277c04:
/* 80277C04 00274B64 94 21 FF 50 */ stwu r1, -0xb0(r1)
/* 80277C08 00274B68 7C 08 02 A6 */ mflr r0
/* 80277C0C 00274B6C 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 80277C10 00274B70 BE 81 00 80 */ stmw r20, 0x80(r1)
/* 80277C14 00274B74 7C 74 1B 78 */ mr r20, r3
/* 80277C18 00274B78 7C 95 23 78 */ mr r21, r4
/* 80277C1C 00274B7C 38 80 00 00 */ li r4, 0
/* 80277C20 00274B80 80 63 0C 54 */ lwz r3, 0xc54(r3)
/* 80277C24 00274B84 81 83 00 00 */ lwz r12, 0(r3)
/* 80277C28 00274B88 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 80277C2C 00274B8C 7D 89 03 A6 */ mtctr r12
/* 80277C30 00274B90 4E 80 04 21 */ bctrl
/* 80277C34 00274B94 80 74 00 64 */ lwz r3, 0x64(r20)
/* 80277C38 00274B98 38 81 00 50 */ addi r4, r1, 0x50
/* 80277C3C 00274B9C C0 03 00 00 */ lfs f0, 0(r3)
/* 80277C40 00274BA0 D0 01 00 50 */ stfs f0, 0x50(r1)
/* 80277C44 00274BA4 C0 03 00 04 */ lfs f0, 4(r3)
/* 80277C48 00274BA8 D0 01 00 54 */ stfs f0, 0x54(r1)
/* 80277C4C 00274BAC C0 03 00 08 */ lfs f0, 8(r3)
/* 80277C50 00274BB0 D0 01 00 58 */ stfs f0, 0x58(r1)
/* 80277C54 00274BB4 80 74 0C 54 */ lwz r3, 0xc54(r20)
/* 80277C58 00274BB8 81 83 00 00 */ lwz r12, 0(r3)
/* 80277C5C 00274BBC 81 8C 00 24 */ lwz r12, 0x24(r12)
/* 80277C60 00274BC0 7D 89 03 A6 */ mtctr r12
/* 80277C64 00274BC4 4E 80 04 21 */ bctrl
/* 80277C68 00274BC8 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 80277C6C 00274BCC 3B 74 0B 28 */ addi r27, r20, 0xb28
/* 80277C70 00274BD0 3B 54 0A 84 */ addi r26, r20, 0xa84
/* 80277C74 00274BD4 3B 34 0B 34 */ addi r25, r20, 0xb34
/* 80277C78 00274BD8 3B 14 09 70 */ addi r24, r20, 0x970
/* 80277C7C 00274BDC 3A F4 0B C8 */ addi r23, r20, 0xbc8
/* 80277C80 00274BE0 3B C3 56 18 */ addi r30, r3, lbl_803D5618@l
/* 80277C84 00274BE4 3A C0 00 00 */ li r22, 0
/* 80277C88 00274BE8 48 00 01 88 */ b lbl_80277E10
lbl_80277C8C:
/* 80277C8C 00274BEC 7E A4 AB 78 */ mr r4, r21
/* 80277C90 00274BF0 38 61 00 2C */ addi r3, r1, 0x2c
/* 80277C94 00274BF4 4B DD 54 49 */ bl AllocateUniqueId__13CStateManagerFv
/* 80277C98 00274BF8 A0 61 00 2C */ lhz r3, 0x2c(r1)
/* 80277C9C 00274BFC 38 A0 00 00 */ li r5, 0
/* 80277CA0 00274C00 88 01 00 3C */ lbz r0, 0x3c(r1)
/* 80277CA4 00274C04 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18
/* 80277CA8 00274C08 B0 7B 00 00 */ sth r3, 0(r27)
/* 80277CAC 00274C0C 38 E0 00 0A */ li r7, 0xa
/* 80277CB0 00274C10 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 80277CB4 00274C14 38 60 00 01 */ li r3, 1
/* 80277CB8 00274C18 98 01 00 3C */ stb r0, 0x3c(r1)
/* 80277CBC 00274C1C 50 A4 36 72 */ rlwimi r4, r5, 6, 0x19, 0x19
/* 80277CC0 00274C20 88 01 00 74 */ lbz r0, 0x74(r1)
/* 80277CC4 00274C24 54 86 06 3E */ clrlwi r6, r4, 0x18
/* 80277CC8 00274C28 98 81 00 3C */ stb r4, 0x3c(r1)
/* 80277CCC 00274C2C 50 A6 2E B4 */ rlwimi r6, r5, 5, 0x1a, 0x1a
/* 80277CD0 00274C30 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 80277CD4 00274C34 C0 1A 00 20 */ lfs f0, 0x20(r26)
/* 80277CD8 00274C38 C0 3A 00 1C */ lfs f1, 0x1c(r26)
/* 80277CDC 00274C3C 38 9E 02 20 */ addi r4, r30, 0x220
/* 80277CE0 00274C40 C0 5A 00 14 */ lfs f2, 0x14(r26)
/* 80277CE4 00274C44 3B 80 00 00 */ li r28, 0
/* 80277CE8 00274C48 90 E1 00 38 */ stw r7, 0x38(r1)
/* 80277CEC 00274C4C 38 60 05 50 */ li r3, 0x550
/* 80277CF0 00274C50 38 A0 00 00 */ li r5, 0
/* 80277CF4 00274C54 98 C1 00 3C */ stb r6, 0x3c(r1)
/* 80277CF8 00274C58 90 E1 00 5C */ stw r7, 0x5c(r1)
/* 80277CFC 00274C5C 98 C1 00 60 */ stb r6, 0x60(r1)
/* 80277D00 00274C60 D0 41 00 64 */ stfs f2, 0x64(r1)
/* 80277D04 00274C64 D0 41 00 68 */ stfs f2, 0x68(r1)
/* 80277D08 00274C68 D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 80277D0C 00274C6C D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80277D10 00274C70 98 01 00 74 */ stb r0, 0x74(r1)
/* 80277D14 00274C74 48 09 DB 59 */ bl __nw__FUlPCcPCc
/* 80277D18 00274C78 7C 7D 1B 79 */ or. r29, r3, r3
/* 80277D1C 00274C7C 41 82 00 AC */ beq lbl_80277DC8
/* 80277D20 00274C80 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 80277D24 00274C84 3C 60 00 01 */ lis r3, 0x00008000@ha
/* 80277D28 00274C88 3B E3 80 00 */ addi r31, r3, 0x00008000@l
/* 80277D2C 00274C8C 2C 00 00 01 */ cmpwi r0, 1
/* 80277D30 00274C90 40 82 00 08 */ bne lbl_80277D38
/* 80277D34 00274C94 3B E0 00 00 */ li r31, 0
lbl_80277D38:
/* 80277D38 00274C98 A0 14 00 08 */ lhz r0, 8(r20)
/* 80277D3C 00274C9C 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 80277D40 00274CA0 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 80277D44 00274CA4 38 61 00 40 */ addi r3, r1, 0x40
/* 80277D48 00274CA8 B0 01 00 28 */ sth r0, 0x28(r1)
/* 80277D4C 00274CAC 38 84 02 27 */ addi r4, r4, 0x227
/* 80277D50 00274CB0 80 B4 00 04 */ lwz r5, 4(r20)
/* 80277D54 00274CB4 B0 01 00 24 */ sth r0, 0x24(r1)
/* 80277D58 00274CB8 90 A1 00 34 */ stw r5, 0x34(r1)
/* 80277D5C 00274CBC A0 1B 00 00 */ lhz r0, 0(r27)
/* 80277D60 00274CC0 90 A1 00 30 */ stw r5, 0x30(r1)
/* 80277D64 00274CC4 B0 01 00 20 */ sth r0, 0x20(r1)
/* 80277D68 00274CC8 83 9A 00 0C */ lwz r28, 0xc(r26)
/* 80277D6C 00274CCC 4B D8 CF 4D */ bl string_l__4rstlFPCc
/* 80277D70 00274CD0 38 01 00 20 */ addi r0, r1, 0x20
/* 80277D74 00274CD4 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha
/* 80277D78 00274CD8 90 01 00 08 */ stw r0, 8(r1)
/* 80277D7C 00274CDC 38 01 00 34 */ addi r0, r1, 0x34
/* 80277D80 00274CE0 39 03 66 70 */ addi r8, r3, sIdentity__12CTransform4f@l
/* 80277D84 00274CE4 7F 86 E3 78 */ mr r6, r28
/* 80277D88 00274CE8 90 01 00 0C */ stw r0, 0xc(r1)
/* 80277D8C 00274CEC 38 A1 00 28 */ addi r5, r1, 0x28
/* 80277D90 00274CF0 38 00 00 01 */ li r0, 1
/* 80277D94 00274CF4 7F A3 EB 78 */ mr r3, r29
/* 80277D98 00274CF8 90 A1 00 10 */ stw r5, 0x10(r1)
/* 80277D9C 00274CFC 7F 44 D3 78 */ mr r4, r26
/* 80277DA0 00274D00 7F 07 C3 78 */ mr r7, r24
/* 80277DA4 00274D04 38 A1 00 40 */ addi r5, r1, 0x40
/* 80277DA8 00274D08 93 21 00 14 */ stw r25, 0x14(r1)
/* 80277DAC 00274D0C 39 41 00 5C */ addi r10, r1, 0x5c
/* 80277DB0 00274D10 3B 80 00 01 */ li r28, 1
/* 80277DB4 00274D14 39 20 00 21 */ li r9, 0x21
/* 80277DB8 00274D18 90 01 00 18 */ stw r0, 0x18(r1)
/* 80277DBC 00274D1C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80277DC0 00274D20 4B F0 0E 69 */ bl "__ct__17CPlasmaProjectileFRC28TToken<18CWeaponDescription>RCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>11EWeaponTypeRC9CBeamInfoRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId9TUniqueIdbUi"
/* 80277DC4 00274D24 7C 7D 1B 78 */ mr r29, r3
lbl_80277DC8:
/* 80277DC8 00274D28 7F 80 07 75 */ extsb. r0, r28
/* 80277DCC 00274D2C 7F BC EB 78 */ mr r28, r29
/* 80277DD0 00274D30 41 82 00 0C */ beq lbl_80277DDC
/* 80277DD4 00274D34 38 61 00 40 */ addi r3, r1, 0x40
/* 80277DD8 00274D38 48 0C 5D 09 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_80277DDC:
/* 80277DDC 00274D3C C0 37 00 00 */ lfs f1, 0(r23)
/* 80277DE0 00274D40 7F 83 E3 78 */ mr r3, r28
/* 80277DE4 00274D44 38 97 00 04 */ addi r4, r23, 4
/* 80277DE8 00274D48 4B EF F0 4D */ bl sub_80176e34
/* 80277DEC 00274D4C 7E A3 AB 78 */ mr r3, r21
/* 80277DF0 00274D50 7F 84 E3 78 */ mr r4, r28
/* 80277DF4 00274D54 4B DD 4D 21 */ bl AddObject__13CStateManagerFR7CEntity
/* 80277DF8 00274D58 3B 7B 00 02 */ addi r27, r27, 2
/* 80277DFC 00274D5C 3B 5A 00 28 */ addi r26, r26, 0x28
/* 80277E00 00274D60 3B 39 00 24 */ addi r25, r25, 0x24
/* 80277E04 00274D64 3B 18 00 44 */ addi r24, r24, 0x44
/* 80277E08 00274D68 3A F7 00 20 */ addi r23, r23, 0x20
/* 80277E0C 00274D6C 3A D6 00 01 */ addi r22, r22, 1
lbl_80277E10:
/* 80277E10 00274D70 80 14 09 6C */ lwz r0, 0x96c(r20)
/* 80277E14 00274D74 7C 16 00 00 */ cmpw r22, r0
/* 80277E18 00274D78 41 80 FE 74 */ blt lbl_80277C8C
/* 80277E1C 00274D7C BA 81 00 80 */ lmw r20, 0x80(r1)
/* 80277E20 00274D80 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 80277E24 00274D84 7C 08 03 A6 */ mtlr r0
/* 80277E28 00274D88 38 21 00 B0 */ addi r1, r1, 0xb0
/* 80277E2C 00274D8C 4E 80 00 20 */ blr
.global sub_80277e30
sub_80277e30:
/* 80277E30 00274D90 94 21 FF 10 */ stwu r1, -0xf0(r1)
/* 80277E34 00274D94 7C 08 02 A6 */ mflr r0
/* 80277E38 00274D98 90 01 00 F4 */ stw r0, 0xf4(r1)
/* 80277E3C 00274D9C 93 E1 00 EC */ stw r31, 0xec(r1)
/* 80277E40 00274DA0 93 C1 00 E8 */ stw r30, 0xe8(r1)
/* 80277E44 00274DA4 7C 9E 23 78 */ mr r30, r4
/* 80277E48 00274DA8 93 A1 00 E4 */ stw r29, 0xe4(r1)
/* 80277E4C 00274DAC 7C 7D 1B 78 */ mr r29, r3
/* 80277E50 00274DB0 80 83 00 64 */ lwz r4, 0x64(r3)
/* 80277E54 00274DB4 38 61 00 68 */ addi r3, r1, 0x68
/* 80277E58 00274DB8 83 FE 08 4C */ lwz r31, 0x84c(r30)
/* 80277E5C 00274DBC C0 04 00 00 */ lfs f0, 0(r4)
/* 80277E60 00274DC0 D0 01 00 68 */ stfs f0, 0x68(r1)
/* 80277E64 00274DC4 C0 04 00 04 */ lfs f0, 4(r4)
/* 80277E68 00274DC8 D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 80277E6C 00274DCC C0 04 00 08 */ lfs f0, 8(r4)
/* 80277E70 00274DD0 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80277E74 00274DD4 48 09 CA 45 */ bl Magnitude__9CVector3fCFv
/* 80277E78 00274DD8 C0 02 BC 3C */ lfs f0, lbl_805AD95C@sda21(r2)
/* 80277E7C 00274DDC 38 61 00 C8 */ addi r3, r1, 0xc8
/* 80277E80 00274DE0 C1 3D 00 60 */ lfs f9, 0x60(r29)
/* 80277E84 00274DE4 38 81 00 5C */ addi r4, r1, 0x5c
/* 80277E88 00274DE8 EC A0 00 72 */ fmuls f5, f0, f1
/* 80277E8C 00274DEC C1 1D 00 50 */ lfs f8, 0x50(r29)
/* 80277E90 00274DF0 C0 22 BC BC */ lfs f1, lbl_805AD9DC@sda21(r2)
/* 80277E94 00274DF4 38 A1 00 38 */ addi r5, r1, 0x38
/* 80277E98 00274DF8 C0 02 BC C0 */ lfs f0, lbl_805AD9E0@sda21(r2)
/* 80277E9C 00274DFC EC 45 00 72 */ fmuls f2, f5, f1
/* 80277EA0 00274E00 C0 7D 00 40 */ lfs f3, 0x40(r29)
/* 80277EA4 00274E04 EC 85 00 32 */ fmuls f4, f5, f0
/* 80277EA8 00274E08 C0 22 BC C4 */ lfs f1, lbl_805AD9E4@sda21(r2)
/* 80277EAC 00274E0C C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 80277EB0 00274E10 EC E8 10 2A */ fadds f7, f8, f2
/* 80277EB4 00274E14 ED 45 00 72 */ fmuls f10, f5, f1
/* 80277EB8 00274E18 D0 41 00 20 */ stfs f2, 0x20(r1)
/* 80277EBC 00274E1C EC 25 00 32 */ fmuls f1, f5, f0
/* 80277EC0 00274E20 EC C9 20 2A */ fadds f6, f9, f4
/* 80277EC4 00274E24 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80277EC8 00274E28 EC 43 10 2A */ fadds f2, f3, f2
/* 80277ECC 00274E2C EC A8 50 2A */ fadds f5, f8, f10
/* 80277ED0 00274E30 D0 81 00 28 */ stfs f4, 0x28(r1)
/* 80277ED4 00274E34 EC 89 08 2A */ fadds f4, f9, f1
/* 80277ED8 00274E38 EC 03 50 2A */ fadds f0, f3, f10
/* 80277EDC 00274E3C D0 61 00 2C */ stfs f3, 0x2c(r1)
/* 80277EE0 00274E40 D1 01 00 30 */ stfs f8, 0x30(r1)
/* 80277EE4 00274E44 D1 21 00 34 */ stfs f9, 0x34(r1)
/* 80277EE8 00274E48 D0 41 00 38 */ stfs f2, 0x38(r1)
/* 80277EEC 00274E4C D0 E1 00 3C */ stfs f7, 0x3c(r1)
/* 80277EF0 00274E50 D0 C1 00 40 */ stfs f6, 0x40(r1)
/* 80277EF4 00274E54 D1 41 00 44 */ stfs f10, 0x44(r1)
/* 80277EF8 00274E58 D1 41 00 48 */ stfs f10, 0x48(r1)
/* 80277EFC 00274E5C D0 21 00 4C */ stfs f1, 0x4c(r1)
/* 80277F00 00274E60 D0 61 00 50 */ stfs f3, 0x50(r1)
/* 80277F04 00274E64 D1 01 00 54 */ stfs f8, 0x54(r1)
/* 80277F08 00274E68 D1 21 00 58 */ stfs f9, 0x58(r1)
/* 80277F0C 00274E6C D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 80277F10 00274E70 D0 A1 00 60 */ stfs f5, 0x60(r1)
/* 80277F14 00274E74 D0 81 00 64 */ stfs f4, 0x64(r1)
/* 80277F18 00274E78 48 0C 05 F1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f
/* 80277F1C 00274E7C C0 01 00 C8 */ lfs f0, 0xc8(r1)
/* 80277F20 00274E80 7F E4 FB 78 */ mr r4, r31
/* 80277F24 00274E84 38 61 00 AC */ addi r3, r1, 0xac
/* 80277F28 00274E88 D0 1D 08 F8 */ stfs f0, 0x8f8(r29)
/* 80277F2C 00274E8C C0 01 00 CC */ lfs f0, 0xcc(r1)
/* 80277F30 00274E90 D0 1D 08 FC */ stfs f0, 0x8fc(r29)
/* 80277F34 00274E94 C0 01 00 D0 */ lfs f0, 0xd0(r1)
/* 80277F38 00274E98 D0 1D 09 00 */ stfs f0, 0x900(r29)
/* 80277F3C 00274E9C C0 01 00 D4 */ lfs f0, 0xd4(r1)
/* 80277F40 00274EA0 D0 1D 09 04 */ stfs f0, 0x904(r29)
/* 80277F44 00274EA4 C0 01 00 D8 */ lfs f0, 0xd8(r1)
/* 80277F48 00274EA8 D0 1D 09 08 */ stfs f0, 0x908(r29)
/* 80277F4C 00274EAC C0 01 00 DC */ lfs f0, 0xdc(r1)
/* 80277F50 00274EB0 D0 1D 09 0C */ stfs f0, 0x90c(r29)
/* 80277F54 00274EB4 81 9F 00 00 */ lwz r12, 0(r31)
/* 80277F58 00274EB8 81 8C 00 40 */ lwz r12, 0x40(r12)
/* 80277F5C 00274EBC 7D 89 03 A6 */ mtctr r12
/* 80277F60 00274EC0 4E 80 04 21 */ bctrl
/* 80277F64 00274EC4 38 61 00 AC */ addi r3, r1, 0xac
/* 80277F68 00274EC8 38 81 00 C8 */ addi r4, r1, 0xc8
/* 80277F6C 00274ECC 48 0B FC 19 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox
/* 80277F70 00274ED0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80277F74 00274ED4 38 60 00 00 */ li r3, 0
/* 80277F78 00274ED8 98 61 00 C4 */ stb r3, 0xc4(r1)
/* 80277F7C 00274EDC 41 82 00 AC */ beq lbl_80278028
/* 80277F80 00274EE0 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80277F84 00274EE4 C0 1D 04 20 */ lfs f0, 0x420(r29)
/* 80277F88 00274EE8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80277F8C 00274EEC 4C 41 13 82 */ cror 2, 1, 2
/* 80277F90 00274EF0 40 82 00 98 */ bne lbl_80278028
/* 80277F94 00274EF4 80 AD 98 58 */ lwz r5, lbl_805A8418@sda21(r13)
/* 80277F98 00274EF8 38 60 00 00 */ li r3, 0
/* 80277F9C 00274EFC 38 80 00 01 */ li r4, 1
/* 80277FA0 00274F00 48 11 1F 55 */ bl __shl2i
/* 80277FA4 00274F04 38 A0 00 00 */ li r5, 0
/* 80277FA8 00274F08 38 00 00 03 */ li r0, 3
/* 80277FAC 00274F0C 90 81 00 7C */ stw r4, 0x7c(r1)
/* 80277FB0 00274F10 7F A4 EB 78 */ mr r4, r29
/* 80277FB4 00274F14 90 61 00 78 */ stw r3, 0x78(r1)
/* 80277FB8 00274F18 38 61 00 90 */ addi r3, r1, 0x90
/* 80277FBC 00274F1C 90 A1 00 84 */ stw r5, 0x84(r1)
/* 80277FC0 00274F20 90 A1 00 80 */ stw r5, 0x80(r1)
/* 80277FC4 00274F24 90 01 00 88 */ stw r0, 0x88(r1)
/* 80277FC8 00274F28 A0 1D 00 08 */ lhz r0, 8(r29)
/* 80277FCC 00274F2C B0 01 00 0C */ sth r0, 0xc(r1)
/* 80277FD0 00274F30 A0 BF 00 08 */ lhz r5, 8(r31)
/* 80277FD4 00274F34 B0 01 00 08 */ sth r0, 8(r1)
/* 80277FD8 00274F38 B0 A1 00 14 */ sth r5, 0x14(r1)
/* 80277FDC 00274F3C A0 1D 00 08 */ lhz r0, 8(r29)
/* 80277FE0 00274F40 B0 A1 00 10 */ sth r5, 0x10(r1)
/* 80277FE4 00274F44 B0 01 00 1C */ sth r0, 0x1c(r1)
/* 80277FE8 00274F48 81 9D 00 00 */ lwz r12, 0(r29)
/* 80277FEC 00274F4C B0 01 00 18 */ sth r0, 0x18(r1)
/* 80277FF0 00274F50 81 8C 02 B0 */ lwz r12, 0x2b0(r12)
/* 80277FF4 00274F54 7D 89 03 A6 */ mtctr r12
/* 80277FF8 00274F58 4E 80 04 21 */ bctrl
/* 80277FFC 00274F5C 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80278000 00274F60 7F C3 F3 78 */ mr r3, r30
/* 80278004 00274F64 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l
/* 80278008 00274F68 38 A1 00 14 */ addi r5, r1, 0x14
/* 8027800C 00274F6C 38 81 00 1C */ addi r4, r1, 0x1c
/* 80278010 00274F70 38 C1 00 0C */ addi r6, r1, 0xc
/* 80278014 00274F74 38 E1 00 90 */ addi r7, r1, 0x90
/* 80278018 00274F78 39 01 00 78 */ addi r8, r1, 0x78
/* 8027801C 00274F7C 4B DD 20 85 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f
/* 80278020 00274F80 C0 1D 04 24 */ lfs f0, 0x424(r29)
/* 80278024 00274F84 D0 1D 04 20 */ stfs f0, 0x420(r29)
lbl_80278028:
/* 80278028 00274F88 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 8027802C 00274F8C 83 E1 00 EC */ lwz r31, 0xec(r1)
/* 80278030 00274F90 83 C1 00 E8 */ lwz r30, 0xe8(r1)
/* 80278034 00274F94 83 A1 00 E4 */ lwz r29, 0xe4(r1)
/* 80278038 00274F98 7C 08 03 A6 */ mtlr r0
/* 8027803C 00274F9C 38 21 00 F0 */ addi r1, r1, 0xf0
/* 80278040 00274FA0 4E 80 00 20 */ blr
.global sub_80278044
sub_80278044:
/* 80278044 00274FA4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80278048 00274FA8 7C 08 02 A6 */ mflr r0
/* 8027804C 00274FAC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80278050 00274FB0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80278054 00274FB4 7C 9F 23 78 */ mr r31, r4
/* 80278058 00274FB8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8027805C 00274FBC 7C 7E 1B 78 */ mr r30, r3
/* 80278060 00274FC0 88 03 08 F4 */ lbz r0, 0x8f4(r3)
/* 80278064 00274FC4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80278068 00274FC8 41 82 00 B0 */ beq lbl_80278118
/* 8027806C 00274FCC C0 7E 08 E4 */ lfs f3, 0x8e4(r30)
/* 80278070 00274FD0 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80278074 00274FD4 FC 03 00 40 */ fcmpo cr0, f3, f0
/* 80278078 00274FD8 40 80 00 54 */ bge lbl_802780CC
/* 8027807C 00274FDC C0 42 BC 68 */ lfs f2, lbl_805AD988@sda21(r2)
/* 80278080 00274FE0 C0 0D 98 88 */ lfs f0, lbl_805A8448@sda21(r13)
/* 80278084 00274FE4 EC 21 10 24 */ fdivs f1, f1, f2
/* 80278088 00274FE8 EC 23 08 2A */ fadds f1, f3, f1
/* 8027808C 00274FEC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80278090 00274FF0 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80278094 00274FF4 40 80 00 0C */ bge lbl_802780A0
/* 80278098 00274FF8 38 61 00 0C */ addi r3, r1, 0xc
/* 8027809C 00274FFC 48 00 00 08 */ b lbl_802780A4
lbl_802780A0:
/* 802780A0 00275000 38 6D 98 88 */ addi r3, r13, lbl_805A8448@sda21
lbl_802780A4:
/* 802780A4 00275004 C0 03 00 00 */ lfs f0, 0(r3)
/* 802780A8 00275008 38 61 00 08 */ addi r3, r1, 8
/* 802780AC 0027500C 38 9E 08 DC */ addi r4, r30, 0x8dc
/* 802780B0 00275010 38 BE 08 E0 */ addi r5, r30, 0x8e0
/* 802780B4 00275014 D0 1E 08 E4 */ stfs f0, 0x8e4(r30)
/* 802780B8 00275018 C0 3E 08 E4 */ lfs f1, 0x8e4(r30)
/* 802780BC 0027501C 48 0E B1 F1 */ bl Lerp__6CColorFRC6CColorRC6CColorf
/* 802780C0 00275020 80 01 00 08 */ lwz r0, 8(r1)
/* 802780C4 00275024 90 1E 08 D8 */ stw r0, 0x8d8(r30)
/* 802780C8 00275028 48 00 00 50 */ b lbl_80278118
lbl_802780CC:
/* 802780CC 0027502C 80 1E 08 E0 */ lwz r0, 0x8e0(r30)
/* 802780D0 00275030 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 802780D4 00275034 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 802780D8 00275038 38 A0 00 00 */ li r5, 0
/* 802780DC 0027503C 90 1E 08 D8 */ stw r0, 0x8d8(r30)
/* 802780E0 00275040 38 61 00 10 */ addi r3, r1, 0x10
/* 802780E4 00275044 38 84 02 28 */ addi r4, r4, 0x228
/* 802780E8 00275048 88 1E 08 F4 */ lbz r0, 0x8f4(r30)
/* 802780EC 0027504C 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18
/* 802780F0 00275050 98 1E 08 F4 */ stb r0, 0x8f4(r30)
/* 802780F4 00275054 4B D8 CB C5 */ bl string_l__4rstlFPCc
/* 802780F8 00275058 80 7E 00 64 */ lwz r3, 0x64(r30)
/* 802780FC 0027505C 7F E6 FB 78 */ mr r6, r31
/* 80278100 00275060 38 81 00 10 */ addi r4, r1, 0x10
/* 80278104 00275064 38 A0 00 00 */ li r5, 0
/* 80278108 00275068 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8027810C 0027506C 4B DB 2C B5 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager
/* 80278110 00275070 38 61 00 10 */ addi r3, r1, 0x10
/* 80278114 00275074 48 0C 59 CD */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_80278118:
/* 80278118 00275078 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8027811C 0027507C 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80278120 00275080 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80278124 00275084 7C 08 03 A6 */ mtlr r0
/* 80278128 00275088 38 21 00 30 */ addi r1, r1, 0x30
/* 8027812C 0027508C 4E 80 00 20 */ blr
.global sub_80278130
sub_80278130:
/* 80278130 00275090 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80278134 00275094 38 A0 00 01 */ li r5, 1
/* 80278138 00275098 D0 03 08 E4 */ stfs f0, 0x8e4(r3)
/* 8027813C 0027509C 88 03 08 F4 */ lbz r0, 0x8f4(r3)
/* 80278140 002750A0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18
/* 80278144 002750A4 98 03 08 F4 */ stb r0, 0x8f4(r3)
/* 80278148 002750A8 80 04 00 00 */ lwz r0, 0(r4)
/* 8027814C 002750AC 90 03 08 E0 */ stw r0, 0x8e0(r3)
/* 80278150 002750B0 80 03 08 D8 */ lwz r0, 0x8d8(r3)
/* 80278154 002750B4 90 03 08 DC */ stw r0, 0x8dc(r3)
/* 80278158 002750B8 4E 80 00 20 */ blr
.global sub_8027815c
sub_8027815c:
/* 8027815C 002750BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80278160 002750C0 7C 08 02 A6 */ mflr r0
/* 80278164 002750C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80278168 002750C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8027816C 002750CC 7C 7F 1B 78 */ mr r31, r3
/* 80278170 002750D0 80 03 08 E8 */ lwz r0, 0x8e8(r3)
/* 80278174 002750D4 2C 00 FF FF */ cmpwi r0, -1
/* 80278178 002750D8 41 82 00 F0 */ beq lbl_80278268
/* 8027817C 002750DC 88 1F 08 F4 */ lbz r0, 0x8f4(r31)
/* 80278180 002750E0 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 80278184 002750E4 41 82 00 3C */ beq lbl_802781C0
/* 80278188 002750E8 C0 7F 08 EC */ lfs f3, 0x8ec(r31)
/* 8027818C 002750EC C0 42 BC 30 */ lfs f2, lbl_805AD950@sda21(r2)
/* 80278190 002750F0 FC 03 10 40 */ fcmpo cr0, f3, f2
/* 80278194 002750F4 40 80 00 60 */ bge lbl_802781F4
/* 80278198 002750F8 C0 02 BC 80 */ lfs f0, lbl_805AD9A0@sda21(r2)
/* 8027819C 002750FC EC 01 00 24 */ fdivs f0, f1, f0
/* 802781A0 00275100 EC 03 00 2A */ fadds f0, f3, f0
/* 802781A4 00275104 D0 1F 08 EC */ stfs f0, 0x8ec(r31)
/* 802781A8 00275108 C0 1F 08 EC */ lfs f0, 0x8ec(r31)
/* 802781AC 0027510C FC 00 10 40 */ fcmpo cr0, f0, f2
/* 802781B0 00275110 4C 41 13 82 */ cror 2, 1, 2
/* 802781B4 00275114 40 82 00 40 */ bne lbl_802781F4
/* 802781B8 00275118 D0 5F 08 EC */ stfs f2, 0x8ec(r31)
/* 802781BC 0027511C 48 00 00 38 */ b lbl_802781F4
lbl_802781C0:
/* 802781C0 00275120 C0 7F 08 EC */ lfs f3, 0x8ec(r31)
/* 802781C4 00275124 C0 42 BC 08 */ lfs f2, lbl_805AD928@sda21(r2)
/* 802781C8 00275128 FC 03 10 40 */ fcmpo cr0, f3, f2
/* 802781CC 0027512C 40 81 00 28 */ ble lbl_802781F4
/* 802781D0 00275130 C0 02 BC 6C */ lfs f0, lbl_805AD98C@sda21(r2)
/* 802781D4 00275134 EC 01 00 24 */ fdivs f0, f1, f0
/* 802781D8 00275138 EC 03 00 28 */ fsubs f0, f3, f0
/* 802781DC 0027513C D0 1F 08 EC */ stfs f0, 0x8ec(r31)
/* 802781E0 00275140 C0 1F 08 EC */ lfs f0, 0x8ec(r31)
/* 802781E4 00275144 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 802781E8 00275148 4C 40 13 82 */ cror 2, 0, 2
/* 802781EC 0027514C 40 82 00 08 */ bne lbl_802781F4
/* 802781F0 00275150 D0 5F 08 EC */ stfs f2, 0x8ec(r31)
lbl_802781F4:
/* 802781F4 00275154 C0 3F 08 EC */ lfs f1, 0x8ec(r31)
/* 802781F8 00275158 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802781FC 0027515C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80278200 00275160 41 81 00 10 */ bgt lbl_80278210
/* 80278204 00275164 88 1F 08 F4 */ lbz r0, 0x8f4(r31)
/* 80278208 00275168 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 8027820C 0027516C 41 82 00 5C */ beq lbl_80278268
lbl_80278210:
/* 80278210 00275170 C0 02 BC 5C */ lfs f0, lbl_805AD97C@sda21(r2)
/* 80278214 00275174 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80278218 00275178 40 81 00 30 */ ble lbl_80278248
/* 8027821C 0027517C 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 80278220 00275180 38 A0 00 01 */ li r5, 1
/* 80278224 00275184 80 9F 08 E8 */ lwz r4, 0x8e8(r31)
/* 80278228 00275188 38 C0 00 00 */ li r6, 0
/* 8027822C 0027518C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80278230 00275190 4B DB 1F A1 */ bl AddAdditiveAnimation__9CAnimDataFUifbb
/* 80278234 00275194 88 1F 08 F4 */ lbz r0, 0x8f4(r31)
/* 80278238 00275198 38 60 00 01 */ li r3, 1
/* 8027823C 0027519C 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80278240 002751A0 98 1F 08 F4 */ stb r0, 0x8f4(r31)
/* 80278244 002751A4 48 00 00 24 */ b lbl_80278268
lbl_80278248:
/* 80278248 002751A8 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 8027824C 002751AC 80 9F 08 E8 */ lwz r4, 0x8e8(r31)
/* 80278250 002751B0 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80278254 002751B4 4B DB 1F 05 */ bl DelAdditiveAnimation__9CAnimDataFUi
/* 80278258 002751B8 88 1F 08 F4 */ lbz r0, 0x8f4(r31)
/* 8027825C 002751BC 38 60 00 00 */ li r3, 0
/* 80278260 002751C0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80278264 002751C4 98 1F 08 F4 */ stb r0, 0x8f4(r31)
lbl_80278268:
/* 80278268 002751C8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8027826C 002751CC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80278270 002751D0 7C 08 03 A6 */ mtlr r0
/* 80278274 002751D4 38 21 00 10 */ addi r1, r1, 0x10
/* 80278278 002751D8 4E 80 00 20 */ blr
.global sub_8027827c
sub_8027827c:
/* 8027827C 002751DC 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 80278280 002751E0 7C 08 02 A6 */ mflr r0
/* 80278284 002751E4 90 01 00 94 */ stw r0, 0x94(r1)
/* 80278288 002751E8 BF 61 00 7C */ stmw r27, 0x7c(r1)
/* 8027828C 002751EC 7C 7C 1B 78 */ mr r28, r3
/* 80278290 002751F0 7C 9B 23 78 */ mr r27, r4
/* 80278294 002751F4 7C BD 2B 78 */ mr r29, r5
/* 80278298 002751F8 A0 64 00 00 */ lhz r3, 0(r4)
/* 8027829C 002751FC A0 1C 08 CC */ lhz r0, 0x8cc(r28)
/* 802782A0 00275200 7C 03 00 40 */ cmplw r3, r0
/* 802782A4 00275204 40 82 02 50 */ bne lbl_802784F4
/* 802782A8 00275208 B0 61 00 14 */ sth r3, 0x14(r1)
/* 802782AC 0027520C 7F A3 EB 78 */ mr r3, r29
/* 802782B0 00275210 38 81 00 14 */ addi r4, r1, 0x14
/* 802782B4 00275214 4B DD 42 F1 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 802782B8 00275218 7C 64 1B 78 */ mr r4, r3
/* 802782BC 0027521C 38 61 00 24 */ addi r3, r1, 0x24
/* 802782C0 00275220 4B E3 70 8D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 802782C4 00275224 83 E3 00 04 */ lwz r31, 4(r3)
/* 802782C8 00275228 28 1F 00 00 */ cmplwi r31, 0
/* 802782CC 0027522C 41 82 02 28 */ beq lbl_802784F4
/* 802782D0 00275230 88 1C 04 00 */ lbz r0, 0x400(r28)
/* 802782D4 00275234 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 802782D8 00275238 41 82 02 1C */ beq lbl_802784F4
/* 802782DC 0027523C 7F E4 FB 78 */ mr r4, r31
/* 802782E0 00275240 38 61 00 10 */ addi r3, r1, 0x10
/* 802782E4 00275244 4B F3 08 A9 */ bl GetLastTouchedObject__15CCollisionActorCFv
/* 802782E8 00275248 A0 01 00 10 */ lhz r0, 0x10(r1)
/* 802782EC 0027524C 7F A3 EB 78 */ mr r3, r29
/* 802782F0 00275250 38 81 00 0C */ addi r4, r1, 0xc
/* 802782F4 00275254 B0 01 00 18 */ sth r0, 0x18(r1)
/* 802782F8 00275258 B0 01 00 0C */ sth r0, 0xc(r1)
/* 802782FC 0027525C 4B DD 42 A9 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80278300 00275260 7C 64 1B 78 */ mr r4, r3
/* 80278304 00275264 38 61 00 1C */ addi r3, r1, 0x1c
/* 80278308 00275268 4B E2 D5 91 */ bl "__ct__20TCastToPtr<7CWeapon>FP7CEntity"
/* 8027830C 0027526C 83 C3 00 04 */ lwz r30, 4(r3)
/* 80278310 00275270 28 1E 00 00 */ cmplwi r30, 0
/* 80278314 00275274 41 82 01 E0 */ beq lbl_802784F4
/* 80278318 00275278 7F E3 FB 78 */ mr r3, r31
/* 8027831C 0027527C 81 9F 00 00 */ lwz r12, 0(r31)
/* 80278320 00275280 81 8C 00 38 */ lwz r12, 0x38(r12)
/* 80278324 00275284 7D 89 03 A6 */ mtctr r12
/* 80278328 00275288 4E 80 04 21 */ bctrl
/* 8027832C 0027528C 38 9E 01 2C */ addi r4, r30, 0x12c
/* 80278330 00275290 38 A0 00 00 */ li r5, 0
/* 80278334 00275294 4B E8 A3 D5 */ bl WeaponHurts__20CDamageVulnerabilityCFRC11CWeaponModei
/* 80278338 00275298 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8027833C 0027529C 41 82 01 B8 */ beq lbl_802784F4
/* 80278340 002752A0 C0 02 88 F0 */ lfs f0, lbl_805AA610@sda21(r2)
/* 80278344 002752A4 D0 1C 04 28 */ stfs f0, 0x428(r28)
/* 80278348 002752A8 A0 7B 00 00 */ lhz r3, 0(r27)
/* 8027834C 002752AC A0 1C 08 CC */ lhz r0, 0x8cc(r28)
/* 80278350 002752B0 7C 03 00 40 */ cmplw r3, r0
/* 80278354 002752B4 40 82 01 A0 */ bne lbl_802784F4
/* 80278358 002752B8 80 1E 01 2C */ lwz r0, 0x12c(r30)
/* 8027835C 002752BC 2C 00 00 01 */ cmpwi r0, 1
/* 80278360 002752C0 40 82 00 60 */ bne lbl_802783C0
/* 80278364 002752C4 B0 61 00 08 */ sth r3, 8(r1)
/* 80278368 002752C8 7F A3 EB 78 */ mr r3, r29
/* 8027836C 002752CC 38 81 00 08 */ addi r4, r1, 8
/* 80278370 002752D0 4B DD 42 05 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80278374 002752D4 7C 64 1B 78 */ mr r4, r3
/* 80278378 002752D8 38 61 00 2C */ addi r3, r1, 0x2c
/* 8027837C 002752DC 4B E3 6F D1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 80278380 002752E0 80 63 00 04 */ lwz r3, 4(r3)
/* 80278384 002752E4 28 03 00 00 */ cmplwi r3, 0
/* 80278388 002752E8 41 82 00 38 */ beq lbl_802783C0
/* 8027838C 002752EC 81 83 00 00 */ lwz r12, 0(r3)
/* 80278390 002752F0 7F A4 EB 78 */ mr r4, r29
/* 80278394 002752F4 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80278398 002752F8 7D 89 03 A6 */ mtctr r12
/* 8027839C 002752FC 4E 80 04 21 */ bctrl
/* 802783A0 00275300 28 03 00 00 */ cmplwi r3, 0
/* 802783A4 00275304 41 82 00 1C */ beq lbl_802783C0
/* 802783A8 00275308 C0 43 00 00 */ lfs f2, 0(r3)
/* 802783AC 0027530C C0 1C 08 C8 */ lfs f0, 0x8c8(r28)
/* 802783B0 00275310 C0 22 BC 80 */ lfs f1, lbl_805AD9A0@sda21(r2)
/* 802783B4 00275314 EC 00 10 28 */ fsubs f0, f0, f2
/* 802783B8 00275318 EC 01 10 3C */ fnmsubs f0, f1, f0, f2
/* 802783BC 0027531C D0 03 00 00 */ stfs f0, 0(r3)
lbl_802783C0:
/* 802783C0 00275320 80 1E 01 2C */ lwz r0, 0x12c(r30)
/* 802783C4 00275324 2C 00 00 02 */ cmpwi r0, 2
/* 802783C8 00275328 40 82 00 30 */ bne lbl_802783F8
/* 802783CC 0027532C 88 7E 01 30 */ lbz r3, 0x130(r30)
/* 802783D0 00275330 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 802783D4 00275334 40 82 00 0C */ bne lbl_802783E0
/* 802783D8 00275338 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 802783DC 0027533C 41 82 00 1C */ beq lbl_802783F8
lbl_802783E0:
/* 802783E0 00275340 C0 02 BC 9C */ lfs f0, lbl_805AD9BC@sda21(r2)
/* 802783E4 00275344 7F 83 E3 78 */ mr r3, r28
/* 802783E8 00275348 7F A4 EB 78 */ mr r4, r29
/* 802783EC 0027534C 38 A0 00 01 */ li r5, 1
/* 802783F0 00275350 D0 1C 0F B4 */ stfs f0, 0xfb4(r28)
/* 802783F4 00275354 4B FF DE 11 */ bl sub_80276204
lbl_802783F8:
/* 802783F8 00275358 80 1E 01 2C */ lwz r0, 0x12c(r30)
/* 802783FC 0027535C 2C 00 00 03 */ cmpwi r0, 3
/* 80278400 00275360 40 82 00 38 */ bne lbl_80278438
/* 80278404 00275364 88 7E 01 30 */ lbz r3, 0x130(r30)
/* 80278408 00275368 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 8027840C 0027536C 40 82 00 0C */ bne lbl_80278418
/* 80278410 00275370 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 80278414 00275374 41 82 00 24 */ beq lbl_80278438
lbl_80278418:
/* 80278418 00275378 C0 02 BC 9C */ lfs f0, lbl_805AD9BC@sda21(r2)
/* 8027841C 0027537C 7F 83 E3 78 */ mr r3, r28
/* 80278420 00275380 7F A4 EB 78 */ mr r4, r29
/* 80278424 00275384 38 A0 00 01 */ li r5, 1
/* 80278428 00275388 D0 1C 0F B8 */ stfs f0, 0xfb8(r28)
/* 8027842C 0027538C 4B FF DF 71 */ bl sub_8027639c
/* 80278430 00275390 38 00 00 01 */ li r0, 1
/* 80278434 00275394 98 1C 0F C1 */ stb r0, 0xfc1(r28)
lbl_80278438:
/* 80278438 00275398 80 1E 01 2C */ lwz r0, 0x12c(r30)
/* 8027843C 0027539C 2C 00 00 01 */ cmpwi r0, 1
/* 80278440 002753A0 40 82 00 B4 */ bne lbl_802784F4
/* 80278444 002753A4 88 1E 01 30 */ lbz r0, 0x130(r30)
/* 80278448 002753A8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 8027844C 002753AC 41 82 00 A8 */ beq lbl_802784F4
/* 80278450 002753B0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80278454 002753B4 38 61 00 58 */ addi r3, r1, 0x58
/* 80278458 002753B8 38 A4 66 A0 */ addi r5, r4, sZeroVector__9CVector3f@l
/* 8027845C 002753BC 38 81 00 4C */ addi r4, r1, 0x4c
/* 80278460 002753C0 C0 45 00 00 */ lfs f2, 0(r5)
/* 80278464 002753C4 C0 25 00 04 */ lfs f1, 4(r5)
/* 80278468 002753C8 C0 05 00 08 */ lfs f0, 8(r5)
/* 8027846C 002753CC D0 41 00 64 */ stfs f2, 0x64(r1)
/* 80278470 002753D0 D0 21 00 68 */ stfs f1, 0x68(r1)
/* 80278474 002753D4 D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 80278478 002753D8 C0 BF 00 60 */ lfs f5, 0x60(r31)
/* 8027847C 002753DC C0 1E 00 60 */ lfs f0, 0x60(r30)
/* 80278480 002753E0 C0 9F 00 50 */ lfs f4, 0x50(r31)
/* 80278484 002753E4 C0 5E 00 50 */ lfs f2, 0x50(r30)
/* 80278488 002753E8 EC 25 00 28 */ fsubs f1, f5, f0
/* 8027848C 002753EC C0 1F 00 40 */ lfs f0, 0x40(r31)
/* 80278490 002753F0 C0 7E 00 40 */ lfs f3, 0x40(r30)
/* 80278494 002753F4 EC 44 10 28 */ fsubs f2, f4, f2
/* 80278498 002753F8 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 8027849C 002753FC EC 00 18 28 */ fsubs f0, f0, f3
/* 802784A0 00275400 D0 81 00 44 */ stfs f4, 0x44(r1)
/* 802784A4 00275404 D0 A1 00 48 */ stfs f5, 0x48(r1)
/* 802784A8 00275408 D0 01 00 4C */ stfs f0, 0x4c(r1)
/* 802784AC 0027540C D0 41 00 50 */ stfs f2, 0x50(r1)
/* 802784B0 00275410 D0 21 00 54 */ stfs f1, 0x54(r1)
/* 802784B4 00275414 48 09 B9 1D */ bl __ct__13CUnitVector3fFRC9CVector3f
/* 802784B8 00275418 80 C1 00 58 */ lwz r6, 0x58(r1)
/* 802784BC 0027541C 7F 83 E3 78 */ mr r3, r28
/* 802784C0 00275420 80 E1 00 5C */ lwz r7, 0x5c(r1)
/* 802784C4 00275424 7F A4 EB 78 */ mr r4, r29
/* 802784C8 00275428 80 01 00 60 */ lwz r0, 0x60(r1)
/* 802784CC 0027542C 38 A1 00 64 */ addi r5, r1, 0x64
/* 802784D0 00275430 90 C1 00 34 */ stw r6, 0x34(r1)
/* 802784D4 00275434 38 C1 00 34 */ addi r6, r1, 0x34
/* 802784D8 00275438 C0 22 BC 44 */ lfs f1, lbl_805AD964@sda21(r2)
/* 802784DC 0027543C 90 E1 00 38 */ stw r7, 0x38(r1)
/* 802784E0 00275440 90 01 00 3C */ stw r0, 0x3c(r1)
/* 802784E4 00275444 81 9C 00 00 */ lwz r12, 0(r28)
/* 802784E8 00275448 81 8C 02 90 */ lwz r12, 0x290(r12)
/* 802784EC 0027544C 7D 89 03 A6 */ mtctr r12
/* 802784F0 00275450 4E 80 04 21 */ bctrl
lbl_802784F4:
/* 802784F4 00275454 BB 61 00 7C */ lmw r27, 0x7c(r1)
/* 802784F8 00275458 80 01 00 94 */ lwz r0, 0x94(r1)
/* 802784FC 0027545C 7C 08 03 A6 */ mtlr r0
/* 80278500 00275460 38 21 00 90 */ addi r1, r1, 0x90
/* 80278504 00275464 4E 80 00 20 */ blr
.global sub_80278508
sub_80278508:
/* 80278508 00275468 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 8027850C 0027546C 7C 08 02 A6 */ mflr r0
/* 80278510 00275470 90 01 00 84 */ stw r0, 0x84(r1)
/* 80278514 00275474 BF 61 00 6C */ stmw r27, 0x6c(r1)
/* 80278518 00275478 7C BB 2B 78 */ mr r27, r5
/* 8027851C 0027547C 7C 7D 1B 78 */ mr r29, r3
/* 80278520 00275480 7C 9E 23 78 */ mr r30, r4
/* 80278524 00275484 7C DF 33 78 */ mr r31, r6
/* 80278528 00275488 80 03 05 70 */ lwz r0, 0x570(r3)
/* 8027852C 0027548C 7C 00 D8 00 */ cmpw r0, r27
/* 80278530 00275490 41 82 00 EC */ beq lbl_8027861C
/* 80278534 00275494 3C 80 80 3D */ lis r4, lbl_803D5618@ha
/* 80278538 00275498 38 61 00 20 */ addi r3, r1, 0x20
/* 8027853C 0027549C 38 84 56 18 */ addi r4, r4, lbl_803D5618@l
/* 80278540 002754A0 38 84 02 28 */ addi r4, r4, 0x228
/* 80278544 002754A4 4B D8 C7 75 */ bl string_l__4rstlFPCc
/* 80278548 002754A8 80 7D 00 64 */ lwz r3, 0x64(r29)
/* 8027854C 002754AC 7F C6 F3 78 */ mr r6, r30
/* 80278550 002754B0 38 81 00 20 */ addi r4, r1, 0x20
/* 80278554 002754B4 38 A0 00 01 */ li r5, 1
/* 80278558 002754B8 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8027855C 002754BC 4B DB 28 65 */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager
/* 80278560 002754C0 38 61 00 20 */ addi r3, r1, 0x20
/* 80278564 002754C4 48 0C 55 7D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80278568 002754C8 81 1D 00 04 */ lwz r8, 4(r29)
/* 8027856C 002754CC 39 80 00 00 */ li r12, 0
/* 80278570 002754D0 C0 A2 BC 08 */ lfs f5, lbl_805AD928@sda21(r2)
/* 80278574 002754D4 3B 80 00 01 */ li r28, 1
/* 80278578 002754D8 C0 82 BC C8 */ lfs f4, lbl_805AD9E8@sda21(r2)
/* 8027857C 002754DC 39 60 00 7F */ li r11, 0x7f
/* 80278580 002754E0 C0 62 BC 6C */ lfs f3, lbl_805AD98C@sda21(r2)
/* 80278584 002754E4 39 40 00 14 */ li r10, 0x14
/* 80278588 002754E8 89 22 CC 41 */ lbz r9, lbl_805AE961@sda21(r2)
/* 8027858C 002754EC 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80278590 002754F0 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l
/* 80278594 002754F4 D0 A1 00 30 */ stfs f5, 0x30(r1)
/* 80278598 002754F8 C0 45 00 00 */ lfs f2, 0(r5)
/* 8027859C 002754FC 38 00 0B 9A */ li r0, 0xb9a
/* 802785A0 00275500 D0 A1 00 34 */ stfs f5, 0x34(r1)
/* 802785A4 00275504 38 61 00 14 */ addi r3, r1, 0x14
/* 802785A8 00275508 C0 25 00 04 */ lfs f1, 4(r5)
/* 802785AC 0027550C 38 81 00 30 */ addi r4, r1, 0x30
/* 802785B0 00275510 C0 05 00 08 */ lfs f0, 8(r5)
/* 802785B4 00275514 38 A0 00 01 */ li r5, 1
/* 802785B8 00275518 D0 A1 00 38 */ stfs f5, 0x38(r1)
/* 802785BC 0027551C 38 E0 00 00 */ li r7, 0
/* 802785C0 00275520 A8 C2 C5 FA */ lha r6, kMedPriority__11CSfxManager@sda21(r2)
/* 802785C4 00275524 D0 A1 00 3C */ stfs f5, 0x3c(r1)
/* 802785C8 00275528 D0 A1 00 40 */ stfs f5, 0x40(r1)
/* 802785CC 0027552C D0 A1 00 44 */ stfs f5, 0x44(r1)
/* 802785D0 00275530 D0 81 00 48 */ stfs f4, 0x48(r1)
/* 802785D4 00275534 D0 61 00 4C */ stfs f3, 0x4c(r1)
/* 802785D8 00275538 93 81 00 50 */ stw r28, 0x50(r1)
/* 802785DC 0027553C B1 81 00 54 */ sth r12, 0x54(r1)
/* 802785E0 00275540 99 61 00 56 */ stb r11, 0x56(r1)
/* 802785E4 00275544 99 41 00 57 */ stb r10, 0x57(r1)
/* 802785E8 00275548 99 81 00 58 */ stb r12, 0x58(r1)
/* 802785EC 0027554C 99 21 00 59 */ stb r9, 0x59(r1)
/* 802785F0 00275550 C0 BD 00 60 */ lfs f5, 0x60(r29)
/* 802785F4 00275554 C0 9D 00 50 */ lfs f4, 0x50(r29)
/* 802785F8 00275558 C0 7D 00 40 */ lfs f3, 0x40(r29)
/* 802785FC 0027555C D0 61 00 30 */ stfs f3, 0x30(r1)
/* 80278600 00275560 D0 81 00 34 */ stfs f4, 0x34(r1)
/* 80278604 00275564 D0 A1 00 38 */ stfs f5, 0x38(r1)
/* 80278608 00275568 D0 41 00 3C */ stfs f2, 0x3c(r1)
/* 8027860C 0027556C D0 21 00 40 */ stfs f1, 0x40(r1)
/* 80278610 00275570 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 80278614 00275574 B0 01 00 54 */ sth r0, 0x54(r1)
/* 80278618 00275578 48 07 19 C9 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi
lbl_8027861C:
/* 8027861C 0027557C 93 7D 05 70 */ stw r27, 0x570(r29)
/* 80278620 00275580 3B 9D 05 8C */ addi r28, r29, 0x58c
/* 80278624 00275584 7F A3 EB 78 */ mr r3, r29
/* 80278628 00275588 7F C5 F3 78 */ mr r5, r30
/* 8027862C 0027558C 80 1D 05 70 */ lwz r0, 0x570(r29)
/* 80278630 00275590 1C 00 00 78 */ mulli r0, r0, 0x78
/* 80278634 00275594 7C 9C 02 14 */ add r4, r28, r0
/* 80278638 00275598 38 84 00 6C */ addi r4, r4, 0x6c
/* 8027863C 0027559C 4B FF FA F5 */ bl sub_80278130
/* 80278640 002755A0 A0 1D 08 CC */ lhz r0, 0x8cc(r29)
/* 80278644 002755A4 7F C3 F3 78 */ mr r3, r30
/* 80278648 002755A8 38 81 00 10 */ addi r4, r1, 0x10
/* 8027864C 002755AC B0 01 00 10 */ sth r0, 0x10(r1)
/* 80278650 002755B0 4B DD 3F 25 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80278654 002755B4 7C 64 1B 78 */ mr r4, r3
/* 80278658 002755B8 38 61 00 18 */ addi r3, r1, 0x18
/* 8027865C 002755BC 4B E3 6C F1 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 80278660 002755C0 83 63 00 04 */ lwz r27, 4(r3)
/* 80278664 002755C4 28 1B 00 00 */ cmplwi r27, 0
/* 80278668 002755C8 41 82 00 80 */ beq lbl_802786E8
/* 8027866C 002755CC 57 E0 06 3F */ clrlwi. r0, r31, 0x18
/* 80278670 002755D0 41 82 00 34 */ beq lbl_802786A4
/* 80278674 002755D4 80 1D 05 70 */ lwz r0, 0x570(r29)
/* 80278678 002755D8 7F 63 DB 78 */ mr r3, r27
/* 8027867C 002755DC 1C 80 00 78 */ mulli r4, r0, 0x78
/* 80278680 002755E0 38 84 00 04 */ addi r4, r4, 4
/* 80278684 002755E4 7C 9C 22 14 */ add r4, r28, r4
/* 80278688 002755E8 4B F3 05 11 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability
/* 8027868C 002755EC 7F 63 DB 78 */ mr r3, r27
/* 80278690 002755F0 7F C6 F3 78 */ mr r6, r30
/* 80278694 002755F4 38 80 00 28 */ li r4, 0x28
/* 80278698 002755F8 38 A0 00 29 */ li r5, 0x29
/* 8027869C 002755FC 4B DD BC 19 */ bl AddMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager
/* 802786A0 00275600 48 00 00 48 */ b lbl_802786E8
lbl_802786A4:
/* 802786A4 00275604 3C 80 80 57 */ lis r4, sImmuneVulnerability__20CDamageVulnerability@ha
/* 802786A8 00275608 7F 63 DB 78 */ mr r3, r27
/* 802786AC 0027560C 38 84 D7 18 */ addi r4, r4, sImmuneVulnerability__20CDamageVulnerability@l
/* 802786B0 00275610 4B F3 04 E9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability
/* 802786B4 00275614 A0 1D 00 08 */ lhz r0, 8(r29)
/* 802786B8 00275618 7F C6 F3 78 */ mr r6, r30
/* 802786BC 0027561C 38 81 00 0C */ addi r4, r1, 0xc
/* 802786C0 00275620 38 A0 00 08 */ li r5, 8
/* 802786C4 00275624 B0 01 00 0C */ sth r0, 0xc(r1)
/* 802786C8 00275628 B0 01 00 08 */ sth r0, 8(r1)
/* 802786CC 0027562C 80 7E 08 4C */ lwz r3, 0x84c(r30)
/* 802786D0 00275630 4B F0 2B 85 */ bl SetOrbitRequestForTarget__7CPlayerF9TUniqueId19EPlayerOrbitRequestR13CStateManager
/* 802786D4 00275634 7F 63 DB 78 */ mr r3, r27
/* 802786D8 00275638 7F C6 F3 78 */ mr r6, r30
/* 802786DC 0027563C 38 80 00 28 */ li r4, 0x28
/* 802786E0 00275640 38 A0 00 29 */ li r5, 0x29
/* 802786E4 00275644 4B DD B7 F1 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypesR13CStateManager
lbl_802786E8:
/* 802786E8 00275648 BB 61 00 6C */ lmw r27, 0x6c(r1)
/* 802786EC 0027564C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802786F0 00275650 7C 08 03 A6 */ mtlr r0
/* 802786F4 00275654 38 21 00 80 */ addi r1, r1, 0x80
/* 802786F8 00275658 4E 80 00 20 */ blr
.global sub_802786fc
sub_802786fc:
/* 802786FC 0027565C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80278700 00275660 7C 08 02 A6 */ mflr r0
/* 80278704 00275664 90 01 00 24 */ stw r0, 0x24(r1)
/* 80278708 00275668 BF 41 00 08 */ stmw r26, 8(r1)
/* 8027870C 0027566C 7C 7E 1B 78 */ mr r30, r3
/* 80278710 00275670 7C 9F 23 78 */ mr r31, r4
/* 80278714 00275674 88 03 05 84 */ lbz r0, 0x584(r3)
/* 80278718 00275678 28 00 00 00 */ cmplwi r0, 0
/* 8027871C 0027567C 41 82 00 2C */ beq lbl_80278748
/* 80278720 00275680 80 1E 05 70 */ lwz r0, 0x570(r30)
/* 80278724 00275684 80 7F 09 00 */ lwz r3, 0x900(r31)
/* 80278728 00275688 1C 00 00 78 */ mulli r0, r0, 0x78
/* 8027872C 0027568C 7F BE 02 14 */ add r29, r30, r0
/* 80278730 00275690 3B BD 05 8C */ addi r29, r29, 0x58c
/* 80278734 00275694 48 09 9D ED */ bl Next__9CRandom16Fv
/* 80278738 00275698 54 60 17 7A */ rlwinm r0, r3, 2, 0x1d, 0x1d
/* 8027873C 0027569C 7C 7D 02 14 */ add r3, r29, r0
/* 80278740 002756A0 83 63 00 70 */ lwz r27, 0x70(r3)
/* 80278744 002756A4 48 00 00 84 */ b lbl_802787C8
lbl_80278748:
/* 80278748 002756A8 83 7E 05 70 */ lwz r27, 0x570(r30)
/* 8027874C 002756AC 3B 9E 05 8C */ addi r28, r30, 0x58c
/* 80278750 002756B0 3B 40 00 00 */ li r26, 0
/* 80278754 002756B4 3B A0 00 01 */ li r29, 1
lbl_80278758:
/* 80278758 002756B8 3B 5A 00 01 */ addi r26, r26, 1
/* 8027875C 002756BC 2C 1A 00 0A */ cmpwi r26, 0xa
/* 80278760 002756C0 40 80 00 24 */ bge lbl_80278784
/* 80278764 002756C4 80 7F 09 00 */ lwz r3, 0x900(r31)
/* 80278768 002756C8 48 09 9D B9 */ bl Next__9CRandom16Fv
/* 8027876C 002756CC 1C 1B 00 78 */ mulli r0, r27, 0x78
/* 80278770 002756D0 54 63 17 7A */ rlwinm r3, r3, 2, 0x1d, 0x1d
/* 80278774 002756D4 7C 60 1A 14 */ add r3, r0, r3
/* 80278778 002756D8 38 03 00 70 */ addi r0, r3, 0x70
/* 8027877C 002756DC 7F 7C 00 2E */ lwzx r27, r28, r0
/* 80278780 002756E0 48 00 00 18 */ b lbl_80278798
lbl_80278784:
/* 80278784 002756E4 2C 1A 00 14 */ cmpwi r26, 0x14
/* 80278788 002756E8 40 80 00 2C */ bge lbl_802787B4
/* 8027878C 002756EC 1C 7B 00 78 */ mulli r3, r27, 0x78
/* 80278790 002756F0 38 03 00 74 */ addi r0, r3, 0x74
/* 80278794 002756F4 7F 7C 00 2E */ lwzx r27, r28, r0
lbl_80278798:
/* 80278798 002756F8 80 1E 05 7C */ lwz r0, 0x57c(r30)
/* 8027879C 002756FC 7F A3 D8 30 */ slw r3, r29, r27
/* 802787A0 00275700 7C 00 18 39 */ and. r0, r0, r3
/* 802787A4 00275704 41 82 FF B4 */ beq lbl_80278758
/* 802787A8 00275708 80 1E 05 80 */ lwz r0, 0x580(r30)
/* 802787AC 0027570C 7C 00 18 39 */ and. r0, r0, r3
/* 802787B0 00275710 40 82 FF A8 */ bne lbl_80278758
lbl_802787B4:
/* 802787B4 00275714 38 00 00 01 */ li r0, 1
/* 802787B8 00275718 80 7E 05 80 */ lwz r3, 0x580(r30)
/* 802787BC 0027571C 7C 00 D8 30 */ slw r0, r0, r27
/* 802787C0 00275720 7C 60 03 78 */ or r0, r3, r0
/* 802787C4 00275724 90 1E 05 80 */ stw r0, 0x580(r30)
lbl_802787C8:
/* 802787C8 00275728 88 1E 08 F4 */ lbz r0, 0x8f4(r30)
/* 802787CC 0027572C 7F C3 F3 78 */ mr r3, r30
/* 802787D0 00275730 7F E4 FB 78 */ mr r4, r31
/* 802787D4 00275734 7F 65 DB 78 */ mr r5, r27
/* 802787D8 00275738 54 06 D7 FE */ rlwinm r6, r0, 0x1a, 0x1f, 0x1f
/* 802787DC 0027573C 4B FF FD 2D */ bl sub_80278508
/* 802787E0 00275740 7F C3 F3 78 */ mr r3, r30
/* 802787E4 00275744 7F E4 FB 78 */ mr r4, r31
/* 802787E8 00275748 4B FF D4 79 */ bl sub_80275c60
/* 802787EC 0027574C BB 41 00 08 */ lmw r26, 8(r1)
/* 802787F0 00275750 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802787F4 00275754 7C 08 03 A6 */ mtlr r0
/* 802787F8 00275758 38 21 00 20 */ addi r1, r1, 0x20
/* 802787FC 0027575C 4E 80 00 20 */ blr
.global sub_80278800
sub_80278800:
/* 80278800 00275760 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80278804 00275764 7C 08 02 A6 */ mflr r0
/* 80278808 00275768 90 01 00 34 */ stw r0, 0x34(r1)
/* 8027880C 0027576C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80278810 00275770 7C BF 2B 78 */ mr r31, r5
/* 80278814 00275774 7F E6 FB 78 */ mr r6, r31
/* 80278818 00275778 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8027881C 0027577C 7C 9E 23 78 */ mr r30, r4
/* 80278820 00275780 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80278824 00275784 7C 7D 1B 78 */ mr r29, r3
/* 80278828 00275788 88 03 08 F4 */ lbz r0, 0x8f4(r3)
/* 8027882C 0027578C 53 E0 36 72 */ rlwimi r0, r31, 6, 0x19, 0x19
/* 80278830 00275790 98 03 08 F4 */ stb r0, 0x8f4(r3)
/* 80278834 00275794 80 A3 05 70 */ lwz r5, 0x570(r3)
/* 80278838 00275798 4B FF FC D1 */ bl sub_80278508
/* 8027883C 0027579C 3C 80 80 3D */ lis r4, lbl_803D5618@ha
/* 80278840 002757A0 38 61 00 08 */ addi r3, r1, 8
/* 80278844 002757A4 38 84 56 18 */ addi r4, r4, lbl_803D5618@l
/* 80278848 002757A8 38 84 02 34 */ addi r4, r4, 0x234
/* 8027884C 002757AC 4B D8 C4 6D */ bl string_l__4rstlFPCc
/* 80278850 002757B0 80 7D 00 64 */ lwz r3, 0x64(r29)
/* 80278854 002757B4 7F E5 FB 78 */ mr r5, r31
/* 80278858 002757B8 7F C6 F3 78 */ mr r6, r30
/* 8027885C 002757BC 38 81 00 08 */ addi r4, r1, 8
/* 80278860 002757C0 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80278864 002757C4 4B DB 25 5D */ bl SetParticleEffectState__9CAnimDataFQ24rstl6stringbR13CStateManager
/* 80278868 002757C8 38 61 00 08 */ addi r3, r1, 8
/* 8027886C 002757CC 48 0C 52 75 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80278870 002757D0 57 E0 06 3F */ clrlwi. r0, r31, 0x18
/* 80278874 002757D4 41 82 00 24 */ beq lbl_80278898
/* 80278878 002757D8 80 1D 05 70 */ lwz r0, 0x570(r29)
/* 8027887C 002757DC 7F A3 EB 78 */ mr r3, r29
/* 80278880 002757E0 7F C5 F3 78 */ mr r5, r30
/* 80278884 002757E4 1C 00 00 78 */ mulli r0, r0, 0x78
/* 80278888 002757E8 7C 9D 02 14 */ add r4, r29, r0
/* 8027888C 002757EC 38 84 05 F8 */ addi r4, r4, 0x5f8
/* 80278890 002757F0 4B FF F8 A1 */ bl sub_80278130
/* 80278894 002757F4 48 00 00 18 */ b lbl_802788AC
lbl_80278898:
/* 80278898 002757F8 48 0D 17 1D */ bl Black__6CColorFv
/* 8027889C 002757FC 7C 64 1B 78 */ mr r4, r3
/* 802788A0 00275800 7F A3 EB 78 */ mr r3, r29
/* 802788A4 00275804 7F C5 F3 78 */ mr r5, r30
/* 802788A8 00275808 4B FF F8 89 */ bl sub_80278130
lbl_802788AC:
/* 802788AC 0027580C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802788B0 00275810 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802788B4 00275814 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802788B8 00275818 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802788BC 0027581C 7C 08 03 A6 */ mtlr r0
/* 802788C0 00275820 38 21 00 30 */ addi r1, r1, 0x30
/* 802788C4 00275824 4E 80 00 20 */ blr
.global sub_802788c8
sub_802788c8:
/* 802788C8 00275828 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802788CC 0027582C 7C 08 02 A6 */ mflr r0
/* 802788D0 00275830 90 01 00 24 */ stw r0, 0x24(r1)
/* 802788D4 00275834 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802788D8 00275838 7C 9F 23 78 */ mr r31, r4
/* 802788DC 0027583C 38 81 00 08 */ addi r4, r1, 8
/* 802788E0 00275840 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802788E4 00275844 7C 7E 1B 78 */ mr r30, r3
/* 802788E8 00275848 A0 03 08 CC */ lhz r0, 0x8cc(r3)
/* 802788EC 0027584C 7F E3 FB 78 */ mr r3, r31
/* 802788F0 00275850 B0 01 00 08 */ sth r0, 8(r1)
/* 802788F4 00275854 4B DD 3C 81 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 802788F8 00275858 7C 64 1B 78 */ mr r4, r3
/* 802788FC 0027585C 38 61 00 0C */ addi r3, r1, 0xc
/* 80278900 00275860 4B E3 6A 4D */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 80278904 00275864 80 63 00 04 */ lwz r3, 4(r3)
/* 80278908 00275868 28 03 00 00 */ cmplwi r3, 0
/* 8027890C 0027586C 41 82 00 28 */ beq lbl_80278934
/* 80278910 00275870 81 83 00 00 */ lwz r12, 0(r3)
/* 80278914 00275874 7F E4 FB 78 */ mr r4, r31
/* 80278918 00275878 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 8027891C 0027587C 7D 89 03 A6 */ mtctr r12
/* 80278920 00275880 4E 80 04 21 */ bctrl
/* 80278924 00275884 C0 1E 08 C0 */ lfs f0, 0x8c0(r30)
/* 80278928 00275888 D0 03 00 00 */ stfs f0, 0(r3)
/* 8027892C 0027588C C0 1E 08 C4 */ lfs f0, 0x8c4(r30)
/* 80278930 00275890 D0 03 00 04 */ stfs f0, 4(r3)
lbl_80278934:
/* 80278934 00275894 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80278938 00275898 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8027893C 0027589C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80278940 002758A0 7C 08 03 A6 */ mtlr r0
/* 80278944 002758A4 38 21 00 20 */ addi r1, r1, 0x20
/* 80278948 002758A8 4E 80 00 20 */ blr
.global sub_8027894c
sub_8027894c:
/* 8027894C 002758AC 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80278950 002758B0 7C 08 02 A6 */ mflr r0
/* 80278954 002758B4 90 01 00 64 */ stw r0, 0x64(r1)
/* 80278958 002758B8 DB E1 00 50 */ stfd f31, 0x50(r1)
/* 8027895C 002758BC F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 80278960 002758C0 DB C1 00 40 */ stfd f30, 0x40(r1)
/* 80278964 002758C4 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
/* 80278968 002758C8 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 8027896C 002758CC 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80278970 002758D0 93 A1 00 34 */ stw r29, 0x34(r1)
/* 80278974 002758D4 7C 7D 1B 78 */ mr r29, r3
/* 80278978 002758D8 7C 9E 23 78 */ mr r30, r4
/* 8027897C 002758DC A0 03 08 CC */ lhz r0, 0x8cc(r3)
/* 80278980 002758E0 7F C3 F3 78 */ mr r3, r30
/* 80278984 002758E4 38 81 00 08 */ addi r4, r1, 8
/* 80278988 002758E8 B0 01 00 08 */ sth r0, 8(r1)
/* 8027898C 002758EC 4B DD 3B E9 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80278990 002758F0 7C 64 1B 78 */ mr r4, r3
/* 80278994 002758F4 38 61 00 14 */ addi r3, r1, 0x14
/* 80278998 002758F8 4B E3 69 B5 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 8027899C 002758FC 83 E3 00 04 */ lwz r31, 4(r3)
/* 802789A0 00275900 28 1F 00 00 */ cmplwi r31, 0
/* 802789A4 00275904 41 82 01 90 */ beq lbl_80278B34
/* 802789A8 00275908 7F E3 FB 78 */ mr r3, r31
/* 802789AC 0027590C 7F C4 F3 78 */ mr r4, r30
/* 802789B0 00275910 81 9F 00 00 */ lwz r12, 0(r31)
/* 802789B4 00275914 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 802789B8 00275918 7D 89 03 A6 */ mtctr r12
/* 802789BC 0027591C 4E 80 04 21 */ bctrl
/* 802789C0 00275920 C0 23 00 00 */ lfs f1, 0(r3)
/* 802789C4 00275924 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 802789C8 00275928 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802789CC 0027592C 4C 40 13 82 */ cror 2, 0, 2
/* 802789D0 00275930 40 82 00 40 */ bne lbl_80278A10
/* 802789D4 00275934 88 7D 08 F4 */ lbz r3, 0x8f4(r29)
/* 802789D8 00275938 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f
/* 802789DC 0027593C 40 82 00 34 */ bne lbl_80278A10
/* 802789E0 00275940 38 80 00 01 */ li r4, 1
/* 802789E4 00275944 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c
/* 802789E8 00275948 98 7D 08 F4 */ stb r3, 0x8f4(r29)
/* 802789EC 0027594C 80 7D 08 D0 */ lwz r3, 0x8d0(r29)
/* 802789F0 00275950 38 03 FF FF */ addi r0, r3, -1
/* 802789F4 00275954 90 1D 08 D0 */ stw r0, 0x8d0(r29)
/* 802789F8 00275958 80 1D 08 D0 */ lwz r0, 0x8d0(r29)
/* 802789FC 0027595C 2C 00 00 00 */ cmpwi r0, 0
/* 80278A00 00275960 40 82 00 10 */ bne lbl_80278A10
/* 80278A04 00275964 88 1D 04 00 */ lbz r0, 0x400(r29)
/* 80278A08 00275968 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18
/* 80278A0C 0027596C 98 1D 04 00 */ stb r0, 0x400(r29)
lbl_80278A10:
/* 80278A10 00275970 88 1D 08 F4 */ lbz r0, 0x8f4(r29)
/* 80278A14 00275974 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
/* 80278A18 00275978 41 82 00 10 */ beq lbl_80278A28
/* 80278A1C 0027597C 7F A3 EB 78 */ mr r3, r29
/* 80278A20 00275980 7F C4 F3 78 */ mr r4, r30
/* 80278A24 00275984 4B FF FE A5 */ bl sub_802788c8
lbl_80278A28:
/* 80278A28 00275988 80 DD 09 1C */ lwz r6, 0x91c(r29)
/* 80278A2C 0027598C 2C 06 00 00 */ cmpwi r6, 0
/* 80278A30 00275990 41 80 01 04 */ blt lbl_80278B34
/* 80278A34 00275994 2C 06 00 04 */ cmpwi r6, 4
/* 80278A38 00275998 40 80 00 FC */ bge lbl_80278B34
/* 80278A3C 0027599C 88 1D 09 14 */ lbz r0, 0x914(r29)
/* 80278A40 002759A0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80278A44 002759A4 41 82 00 54 */ beq lbl_80278A98
/* 80278A48 002759A8 80 0D 98 80 */ lwz r0, lbl_805A8440@sda21(r13)
/* 80278A4C 002759AC 38 66 FF FF */ addi r3, r6, -1
/* 80278A50 002759B0 90 61 00 10 */ stw r3, 0x10(r1)
/* 80278A54 002759B4 38 8D 98 80 */ addi r4, r13, lbl_805A8440@sda21
/* 80278A58 002759B8 7C 00 18 00 */ cmpw r0, r3
/* 80278A5C 002759BC 40 80 00 08 */ bge lbl_80278A64
/* 80278A60 002759C0 38 81 00 10 */ addi r4, r1, 0x10
lbl_80278A64:
/* 80278A64 002759C4 7F A3 EB 78 */ mr r3, r29
/* 80278A68 002759C8 80 04 00 00 */ lwz r0, 0(r4)
/* 80278A6C 002759CC 81 9D 00 00 */ lwz r12, 0(r29)
/* 80278A70 002759D0 3C A0 80 3D */ lis r5, lbl_803D5434@ha
/* 80278A74 002759D4 54 00 10 3A */ slwi r0, r0, 2
/* 80278A78 002759D8 7F C4 F3 78 */ mr r4, r30
/* 80278A7C 002759DC 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80278A80 002759E0 38 A5 54 34 */ addi r5, r5, lbl_803D5434@l
/* 80278A84 002759E4 7F E5 04 2E */ lfsx f31, r5, r0
/* 80278A88 002759E8 7D 89 03 A6 */ mtctr r12
/* 80278A8C 002759EC 4E 80 04 21 */ bctrl
/* 80278A90 002759F0 D3 E3 00 00 */ stfs f31, 0(r3)
/* 80278A94 002759F4 48 00 00 A0 */ b lbl_80278B34
lbl_80278A98:
/* 80278A98 002759F8 80 9D 08 D0 */ lwz r4, 0x8d0(r29)
/* 80278A9C 002759FC 3C 00 43 30 */ lis r0, 0x4330
/* 80278AA0 00275A00 7F E3 FB 78 */ mr r3, r31
/* 80278AA4 00275A04 3C A0 80 3D */ lis r5, lbl_803D5434@ha
/* 80278AA8 00275A08 38 84 FF FF */ addi r4, r4, -1
/* 80278AAC 00275A0C 81 9F 00 00 */ lwz r12, 0(r31)
/* 80278AB0 00275A10 6C 84 80 00 */ xoris r4, r4, 0x8000
/* 80278AB4 00275A14 90 01 00 20 */ stw r0, 0x20(r1)
/* 80278AB8 00275A18 C8 42 BC 78 */ lfd f2, lbl_805AD998@sda21(r2)
/* 80278ABC 00275A1C 54 C0 10 3A */ slwi r0, r6, 2
/* 80278AC0 00275A20 90 81 00 24 */ stw r4, 0x24(r1)
/* 80278AC4 00275A24 38 A5 54 34 */ addi r5, r5, lbl_803D5434@l
/* 80278AC8 00275A28 C0 1D 08 C0 */ lfs f0, 0x8c0(r29)
/* 80278ACC 00275A2C 7F C4 F3 78 */ mr r4, r30
/* 80278AD0 00275A30 C8 21 00 20 */ lfd f1, 0x20(r1)
/* 80278AD4 00275A34 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80278AD8 00275A38 EC 21 10 28 */ fsubs f1, f1, f2
/* 80278ADC 00275A3C 7F E5 04 2E */ lfsx f31, r5, r0
/* 80278AE0 00275A40 EF C1 00 32 */ fmuls f30, f1, f0
/* 80278AE4 00275A44 7D 89 03 A6 */ mtctr r12
/* 80278AE8 00275A48 4E 80 04 21 */ bctrl
/* 80278AEC 00275A4C C0 23 00 00 */ lfs f1, 0(r3)
/* 80278AF0 00275A50 C0 0D 98 84 */ lfs f0, lbl_805A8444@sda21(r13)
/* 80278AF4 00275A54 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80278AF8 00275A58 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80278AFC 00275A5C 40 80 00 0C */ bge lbl_80278B08
/* 80278B00 00275A60 38 AD 98 84 */ addi r5, r13, lbl_805A8444@sda21
/* 80278B04 00275A64 48 00 00 08 */ b lbl_80278B0C
lbl_80278B08:
/* 80278B08 00275A68 38 A1 00 0C */ addi r5, r1, 0xc
lbl_80278B0C:
/* 80278B0C 00275A6C 7F A3 EB 78 */ mr r3, r29
/* 80278B10 00275A70 EC 1F F0 2A */ fadds f0, f31, f30
/* 80278B14 00275A74 81 9D 00 00 */ lwz r12, 0(r29)
/* 80278B18 00275A78 7F C4 F3 78 */ mr r4, r30
/* 80278B1C 00275A7C C0 25 00 00 */ lfs f1, 0(r5)
/* 80278B20 00275A80 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 80278B24 00275A84 EF C1 00 2A */ fadds f30, f1, f0
/* 80278B28 00275A88 7D 89 03 A6 */ mtctr r12
/* 80278B2C 00275A8C 4E 80 04 21 */ bctrl
/* 80278B30 00275A90 D3 C3 00 00 */ stfs f30, 0(r3)
lbl_80278B34:
/* 80278B34 00275A94 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
/* 80278B38 00275A98 CB E1 00 50 */ lfd f31, 0x50(r1)
/* 80278B3C 00275A9C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
/* 80278B40 00275AA0 CB C1 00 40 */ lfd f30, 0x40(r1)
/* 80278B44 00275AA4 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80278B48 00275AA8 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80278B4C 00275AAC 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80278B50 00275AB0 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 80278B54 00275AB4 7C 08 03 A6 */ mtlr r0
/* 80278B58 00275AB8 38 21 00 60 */ addi r1, r1, 0x60
/* 80278B5C 00275ABC 4E 80 00 20 */ blr
.global sub_80278b60
sub_80278b60:
/* 80278B60 00275AC0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80278B64 00275AC4 7C 08 02 A6 */ mflr r0
/* 80278B68 00275AC8 90 01 00 34 */ stw r0, 0x34(r1)
/* 80278B6C 00275ACC BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 80278B70 00275AD0 7C 7B 1B 78 */ mr r27, r3
/* 80278B74 00275AD4 7C 9C 23 78 */ mr r28, r4
/* 80278B78 00275AD8 7C BD 2B 78 */ mr r29, r5
/* 80278B7C 00275ADC 3B C0 00 00 */ li r30, 0
/* 80278B80 00275AE0 3B FB 07 70 */ addi r31, r27, 0x770
/* 80278B84 00275AE4 48 00 00 34 */ b lbl_80278BB8
lbl_80278B88:
/* 80278B88 00275AE8 7F E3 FB 78 */ mr r3, r31
/* 80278B8C 00275AEC 7F A4 EB 78 */ mr r4, r29
/* 80278B90 00275AF0 4B EF C6 95 */ bl SetActive__13CBoneTrackingFb
/* 80278B94 00275AF4 80 BC 08 4C */ lwz r5, 0x84c(r28)
/* 80278B98 00275AF8 7F E3 FB 78 */ mr r3, r31
/* 80278B9C 00275AFC 38 81 00 0C */ addi r4, r1, 0xc
/* 80278BA0 00275B00 A0 05 00 08 */ lhz r0, 8(r5)
/* 80278BA4 00275B04 B0 01 00 08 */ sth r0, 8(r1)
/* 80278BA8 00275B08 B0 01 00 0C */ sth r0, 0xc(r1)
/* 80278BAC 00275B0C 4B EF C6 6D */ bl SetTarget__13CBoneTrackingF9TUniqueId
/* 80278BB0 00275B10 3B FF 00 38 */ addi r31, r31, 0x38
/* 80278BB4 00275B14 3B DE 00 01 */ addi r30, r30, 1
lbl_80278BB8:
/* 80278BB8 00275B18 80 1B 07 6C */ lwz r0, 0x76c(r27)
/* 80278BBC 00275B1C 7C 1E 00 00 */ cmpw r30, r0
/* 80278BC0 00275B20 41 80 FF C8 */ blt lbl_80278B88
/* 80278BC4 00275B24 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 80278BC8 00275B28 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80278BCC 00275B2C 7C 08 03 A6 */ mtlr r0
/* 80278BD0 00275B30 38 21 00 30 */ addi r1, r1, 0x30
/* 80278BD4 00275B34 4E 80 00 20 */ blr
.global sub_80278bd8
sub_80278bd8:
/* 80278BD8 00275B38 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80278BDC 00275B3C 7C 08 02 A6 */ mflr r0
/* 80278BE0 00275B40 90 01 00 44 */ stw r0, 0x44(r1)
/* 80278BE4 00275B44 DB E1 00 30 */ stfd f31, 0x30(r1)
/* 80278BE8 00275B48 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
/* 80278BEC 00275B4C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80278BF0 00275B50 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80278BF4 00275B54 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80278BF8 00275B58 93 81 00 20 */ stw r28, 0x20(r1)
/* 80278BFC 00275B5C 7C 7C 1B 78 */ mr r28, r3
/* 80278C00 00275B60 FF E0 08 90 */ fmr f31, f1
/* 80278C04 00275B64 80 63 00 64 */ lwz r3, 0x64(r3)
/* 80278C08 00275B68 7C 9D 23 78 */ mr r29, r4
/* 80278C0C 00275B6C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80278C10 00275B70 4B DB 3D F5 */ bl PreRender__9CAnimDataFv
/* 80278C14 00275B74 3B FC 07 70 */ addi r31, r28, 0x770
/* 80278C18 00275B78 3B C0 00 00 */ li r30, 0
/* 80278C1C 00275B7C 48 00 00 54 */ b lbl_80278C70
lbl_80278C20:
/* 80278C20 00275B80 FC 20 F8 90 */ fmr f1, f31
/* 80278C24 00275B84 7F E3 FB 78 */ mr r3, r31
/* 80278C28 00275B88 4B EF CD 81 */ bl Update__13CBoneTrackingFf
/* 80278C2C 00275B8C 80 BC 00 64 */ lwz r5, 0x64(r28)
/* 80278C30 00275B90 7F E3 FB 78 */ mr r3, r31
/* 80278C34 00275B94 81 1C 04 50 */ lwz r8, 0x450(r28)
/* 80278C38 00275B98 7F A4 EB 78 */ mr r4, r29
/* 80278C3C 00275B9C C0 05 00 00 */ lfs f0, 0(r5)
/* 80278C40 00275BA0 38 DC 00 34 */ addi r6, r28, 0x34
/* 80278C44 00275BA4 38 E1 00 08 */ addi r7, r1, 8
/* 80278C48 00275BA8 D0 01 00 08 */ stfs f0, 8(r1)
/* 80278C4C 00275BAC C0 05 00 04 */ lfs f0, 4(r5)
/* 80278C50 00275BB0 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80278C54 00275BB4 C0 05 00 08 */ lfs f0, 8(r5)
/* 80278C58 00275BB8 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80278C5C 00275BBC 80 BC 00 64 */ lwz r5, 0x64(r28)
/* 80278C60 00275BC0 80 A5 00 10 */ lwz r5, 0x10(r5)
/* 80278C64 00275BC4 4B EF CC AD */ bl PreRender__13CBoneTrackingFRC13CStateManagerR9CAnimDataRC12CTransform4fRC9CVector3fRC15CBodyController
/* 80278C68 00275BC8 3B FF 00 38 */ addi r31, r31, 0x38
/* 80278C6C 00275BCC 3B DE 00 01 */ addi r30, r30, 1
lbl_80278C70:
/* 80278C70 00275BD0 80 1C 07 6C */ lwz r0, 0x76c(r28)
/* 80278C74 00275BD4 7C 1E 00 00 */ cmpw r30, r0
/* 80278C78 00275BD8 41 80 FF A8 */ blt lbl_80278C20
/* 80278C7C 00275BDC 88 1C 00 E4 */ lbz r0, 0xe4(r28)
/* 80278C80 00275BE0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f
/* 80278C84 00275BE4 41 82 00 1C */ beq lbl_80278CA0
/* 80278C88 00275BE8 88 7C 10 54 */ lbz r3, 0x1054(r28)
/* 80278C8C 00275BEC 88 1C 00 E4 */ lbz r0, 0xe4(r28)
/* 80278C90 00275BF0 54 63 CF FE */ rlwinm r3, r3, 0x19, 0x1f, 0x1f
/* 80278C94 00275BF4 7C 63 00 34 */ cntlzw r3, r3
/* 80278C98 00275BF8 50 60 E7 BC */ rlwimi r0, r3, 0x1c, 0x1e, 0x1e
/* 80278C9C 00275BFC 98 1C 00 E4 */ stb r0, 0xe4(r28)
lbl_80278CA0:
/* 80278CA0 00275C00 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
/* 80278CA4 00275C04 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80278CA8 00275C08 CB E1 00 30 */ lfd f31, 0x30(r1)
/* 80278CAC 00275C0C 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80278CB0 00275C10 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80278CB4 00275C14 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80278CB8 00275C18 83 81 00 20 */ lwz r28, 0x20(r1)
/* 80278CBC 00275C1C 7C 08 03 A6 */ mtlr r0
/* 80278CC0 00275C20 38 21 00 40 */ addi r1, r1, 0x40
/* 80278CC4 00275C24 4E 80 00 20 */ blr
.global sub_80278cc8
sub_80278cc8:
/* 80278CC8 00275C28 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 80278CCC 00275C2C 7C 08 02 A6 */ mflr r0
/* 80278CD0 00275C30 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80278CD4 00275C34 93 E1 00 BC */ stw r31, 0xbc(r1)
/* 80278CD8 00275C38 93 C1 00 B8 */ stw r30, 0xb8(r1)
/* 80278CDC 00275C3C 7C BE 2B 78 */ mr r30, r5
/* 80278CE0 00275C40 93 A1 00 B4 */ stw r29, 0xb4(r1)
/* 80278CE4 00275C44 7C 7D 1B 78 */ mr r29, r3
/* 80278CE8 00275C48 7F C3 F3 78 */ mr r3, r30
/* 80278CEC 00275C4C A0 04 00 00 */ lhz r0, 0(r4)
/* 80278CF0 00275C50 38 81 00 38 */ addi r4, r1, 0x38
/* 80278CF4 00275C54 B0 01 00 38 */ sth r0, 0x38(r1)
/* 80278CF8 00275C58 4B DD 38 AD */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80278CFC 00275C5C 7C 64 1B 78 */ mr r4, r3
/* 80278D00 00275C60 38 61 00 48 */ addi r3, r1, 0x48
/* 80278D04 00275C64 4B E3 66 49 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 80278D08 00275C68 80 83 00 04 */ lwz r4, 4(r3)
/* 80278D0C 00275C6C 28 04 00 00 */ cmplwi r4, 0
/* 80278D10 00275C70 41 82 01 E8 */ beq lbl_80278EF8
/* 80278D14 00275C74 88 1D 04 00 */ lbz r0, 0x400(r29)
/* 80278D18 00275C78 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 80278D1C 00275C7C 41 82 01 DC */ beq lbl_80278EF8
/* 80278D20 00275C80 38 61 00 34 */ addi r3, r1, 0x34
/* 80278D24 00275C84 4B F2 FE 69 */ bl GetLastTouchedObject__15CCollisionActorCFv
/* 80278D28 00275C88 7F A4 EB 78 */ mr r4, r29
/* 80278D2C 00275C8C A0 01 00 34 */ lhz r0, 0x34(r1)
/* 80278D30 00275C90 81 9D 00 00 */ lwz r12, 0(r29)
/* 80278D34 00275C94 38 61 00 88 */ addi r3, r1, 0x88
/* 80278D38 00275C98 B0 01 00 3C */ sth r0, 0x3c(r1)
/* 80278D3C 00275C9C 81 8C 02 B0 */ lwz r12, 0x2b0(r12)
/* 80278D40 00275CA0 7D 89 03 A6 */ mtctr r12
/* 80278D44 00275CA4 4E 80 04 21 */ bctrl
/* 80278D48 00275CA8 80 7E 08 4C */ lwz r3, 0x84c(r30)
/* 80278D4C 00275CAC 3B E1 00 88 */ addi r31, r1, 0x88
/* 80278D50 00275CB0 A0 81 00 3C */ lhz r4, 0x3c(r1)
/* 80278D54 00275CB4 A0 03 00 08 */ lhz r0, 8(r3)
/* 80278D58 00275CB8 7C 04 00 40 */ cmplw r4, r0
/* 80278D5C 00275CBC 40 82 00 AC */ bne lbl_80278E08
/* 80278D60 00275CC0 4B D9 CF 9D */ bl GetFrozenState__7CPlayerCFv
/* 80278D64 00275CC4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80278D68 00275CC8 41 82 00 10 */ beq lbl_80278D78
/* 80278D6C 00275CCC 80 7E 08 4C */ lwz r3, 0x84c(r30)
/* 80278D70 00275CD0 7F C4 F3 78 */ mr r4, r30
/* 80278D74 00275CD4 4B D9 CC B9 */ bl UnFreeze__7CPlayerFR13CStateManager
lbl_80278D78:
/* 80278D78 00275CD8 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 80278D7C 00275CDC C0 1D 04 20 */ lfs f0, 0x420(r29)
/* 80278D80 00275CE0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80278D84 00275CE4 4C 41 13 82 */ cror 2, 1, 2
/* 80278D88 00275CE8 40 82 01 70 */ bne lbl_80278EF8
/* 80278D8C 00275CEC 80 AD 98 58 */ lwz r5, lbl_805A8418@sda21(r13)
/* 80278D90 00275CF0 38 60 00 00 */ li r3, 0
/* 80278D94 00275CF4 38 80 00 01 */ li r4, 1
/* 80278D98 00275CF8 48 11 11 5D */ bl __shl2i
/* 80278D9C 00275CFC 39 00 00 00 */ li r8, 0
/* 80278DA0 00275D00 39 40 00 03 */ li r10, 3
/* 80278DA4 00275D04 90 81 00 74 */ stw r4, 0x74(r1)
/* 80278DA8 00275D08 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80278DAC 00275D0C 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l
/* 80278DB0 00275D10 A0 01 00 3C */ lhz r0, 0x3c(r1)
/* 80278DB4 00275D14 90 61 00 70 */ stw r3, 0x70(r1)
/* 80278DB8 00275D18 7F C3 F3 78 */ mr r3, r30
/* 80278DBC 00275D1C 7F E7 FB 78 */ mr r7, r31
/* 80278DC0 00275D20 38 81 00 30 */ addi r4, r1, 0x30
/* 80278DC4 00275D24 91 01 00 7C */ stw r8, 0x7c(r1)
/* 80278DC8 00275D28 38 A1 00 28 */ addi r5, r1, 0x28
/* 80278DCC 00275D2C 38 C1 00 24 */ addi r6, r1, 0x24
/* 80278DD0 00275D30 91 01 00 78 */ stw r8, 0x78(r1)
/* 80278DD4 00275D34 39 01 00 70 */ addi r8, r1, 0x70
/* 80278DD8 00275D38 91 41 00 80 */ stw r10, 0x80(r1)
/* 80278DDC 00275D3C A1 5D 00 08 */ lhz r10, 8(r29)
/* 80278DE0 00275D40 B1 41 00 24 */ sth r10, 0x24(r1)
/* 80278DE4 00275D44 B0 01 00 28 */ sth r0, 0x28(r1)
/* 80278DE8 00275D48 A0 1D 00 08 */ lhz r0, 8(r29)
/* 80278DEC 00275D4C B1 41 00 20 */ sth r10, 0x20(r1)
/* 80278DF0 00275D50 B0 01 00 2C */ sth r0, 0x2c(r1)
/* 80278DF4 00275D54 B0 01 00 30 */ sth r0, 0x30(r1)
/* 80278DF8 00275D58 4B DD 12 A9 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f
/* 80278DFC 00275D5C C0 1D 04 24 */ lfs f0, 0x424(r29)
/* 80278E00 00275D60 D0 1D 04 20 */ stfs f0, 0x420(r29)
/* 80278E04 00275D64 48 00 00 F4 */ b lbl_80278EF8
lbl_80278E08:
/* 80278E08 00275D68 B0 81 00 1C */ sth r4, 0x1c(r1)
/* 80278E0C 00275D6C 7F C3 F3 78 */ mr r3, r30
/* 80278E10 00275D70 38 81 00 1C */ addi r4, r1, 0x1c
/* 80278E14 00275D74 4B DD 37 91 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 80278E18 00275D78 7C 64 1B 78 */ mr r4, r3
/* 80278E1C 00275D7C 38 61 00 40 */ addi r3, r1, 0x40
/* 80278E20 00275D80 4B E3 6E 71 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
/* 80278E24 00275D84 80 83 00 04 */ lwz r4, 4(r3)
/* 80278E28 00275D88 28 04 00 00 */ cmplwi r4, 0
/* 80278E2C 00275D8C 41 82 00 CC */ beq lbl_80278EF8
/* 80278E30 00275D90 80 64 00 68 */ lwz r3, 0x68(r4)
/* 80278E34 00275D94 3C 00 00 02 */ lis r0, 2
/* 80278E38 00275D98 80 84 00 6C */ lwz r4, 0x6c(r4)
/* 80278E3C 00275D9C 38 C0 00 00 */ li r6, 0
/* 80278E40 00275DA0 7C 60 00 38 */ and r0, r3, r0
/* 80278E44 00275DA4 7C 83 30 38 */ and r3, r4, r6
/* 80278E48 00275DA8 7C 63 32 78 */ xor r3, r3, r6
/* 80278E4C 00275DAC 7C 00 32 78 */ xor r0, r0, r6
/* 80278E50 00275DB0 7C 60 03 79 */ or. r0, r3, r0
/* 80278E54 00275DB4 41 82 00 A4 */ beq lbl_80278EF8
/* 80278E58 00275DB8 88 01 00 54 */ lbz r0, 0x54(r1)
/* 80278E5C 00275DBC 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18
/* 80278E60 00275DC0 38 80 00 09 */ li r4, 9
/* 80278E64 00275DC4 38 60 00 01 */ li r3, 1
/* 80278E68 00275DC8 98 01 00 54 */ stb r0, 0x54(r1)
/* 80278E6C 00275DCC 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 80278E70 00275DD0 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19
/* 80278E74 00275DD4 80 AD 98 58 */ lwz r5, lbl_805A8418@sda21(r13)
/* 80278E78 00275DD8 98 01 00 54 */ stb r0, 0x54(r1)
/* 80278E7C 00275DDC 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 80278E80 00275DE0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80278E84 00275DE4 38 60 00 00 */ li r3, 0
/* 80278E88 00275DE8 90 81 00 50 */ stw r4, 0x50(r1)
/* 80278E8C 00275DEC 38 80 00 01 */ li r4, 1
/* 80278E90 00275DF0 98 01 00 54 */ stb r0, 0x54(r1)
/* 80278E94 00275DF4 48 11 10 61 */ bl __shl2i
/* 80278E98 00275DF8 39 00 00 00 */ li r8, 0
/* 80278E9C 00275DFC 39 40 00 03 */ li r10, 3
/* 80278EA0 00275E00 90 81 00 5C */ stw r4, 0x5c(r1)
/* 80278EA4 00275E04 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80278EA8 00275E08 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l
/* 80278EAC 00275E0C A0 01 00 3C */ lhz r0, 0x3c(r1)
/* 80278EB0 00275E10 90 61 00 58 */ stw r3, 0x58(r1)
/* 80278EB4 00275E14 7F C3 F3 78 */ mr r3, r30
/* 80278EB8 00275E18 7F E7 FB 78 */ mr r7, r31
/* 80278EBC 00275E1C 38 81 00 18 */ addi r4, r1, 0x18
/* 80278EC0 00275E20 91 01 00 64 */ stw r8, 0x64(r1)
/* 80278EC4 00275E24 38 A1 00 10 */ addi r5, r1, 0x10
/* 80278EC8 00275E28 38 C1 00 0C */ addi r6, r1, 0xc
/* 80278ECC 00275E2C 91 01 00 60 */ stw r8, 0x60(r1)
/* 80278ED0 00275E30 39 01 00 58 */ addi r8, r1, 0x58
/* 80278ED4 00275E34 91 41 00 68 */ stw r10, 0x68(r1)
/* 80278ED8 00275E38 A1 5D 00 08 */ lhz r10, 8(r29)
/* 80278EDC 00275E3C B1 41 00 0C */ sth r10, 0xc(r1)
/* 80278EE0 00275E40 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80278EE4 00275E44 A0 1D 00 08 */ lhz r0, 8(r29)
/* 80278EE8 00275E48 B1 41 00 08 */ sth r10, 8(r1)
/* 80278EEC 00275E4C B0 01 00 14 */ sth r0, 0x14(r1)
/* 80278EF0 00275E50 B0 01 00 18 */ sth r0, 0x18(r1)
/* 80278EF4 00275E54 4B DD 11 AD */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f
lbl_80278EF8:
/* 80278EF8 00275E58 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 80278EFC 00275E5C 83 E1 00 BC */ lwz r31, 0xbc(r1)
/* 80278F00 00275E60 83 C1 00 B8 */ lwz r30, 0xb8(r1)
/* 80278F04 00275E64 83 A1 00 B4 */ lwz r29, 0xb4(r1)
/* 80278F08 00275E68 7C 08 03 A6 */ mtlr r0
/* 80278F0C 00275E6C 38 21 00 C0 */ addi r1, r1, 0xc0
/* 80278F10 00275E70 4E 80 00 20 */ blr
.global sub_80278f14
sub_80278f14:
/* 80278F14 00275E74 94 21 FF 30 */ stwu r1, -0xd0(r1)
/* 80278F18 00275E78 7C 08 02 A6 */ mflr r0
/* 80278F1C 00275E7C 90 01 00 D4 */ stw r0, 0xd4(r1)
/* 80278F20 00275E80 DB E1 00 C0 */ stfd f31, 0xc0(r1)
/* 80278F24 00275E84 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0
/* 80278F28 00275E88 DB C1 00 B0 */ stfd f30, 0xb0(r1)
/* 80278F2C 00275E8C F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0
/* 80278F30 00275E90 DB A1 00 A0 */ stfd f29, 0xa0(r1)
/* 80278F34 00275E94 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0
/* 80278F38 00275E98 DB 81 00 90 */ stfd f28, 0x90(r1)
/* 80278F3C 00275E9C F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0
/* 80278F40 00275EA0 DB 61 00 80 */ stfd f27, 0x80(r1)
/* 80278F44 00275EA4 F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0
/* 80278F48 00275EA8 DB 41 00 70 */ stfd f26, 0x70(r1)
/* 80278F4C 00275EAC F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0
/* 80278F50 00275EB0 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 80278F54 00275EB4 7C 7F 1B 78 */ mr r31, r3
/* 80278F58 00275EB8 38 A0 00 00 */ li r5, 0
/* 80278F5C 00275EBC 80 63 05 6C */ lwz r3, 0x56c(r3)
/* 80278F60 00275EC0 4B F2 E4 F1 */ bl Update__22CCollisionActorManagerCFfR13CStateManagerQ222CCollisionActorManager14EUpdateOptions
/* 80278F64 00275EC4 80 BF 00 64 */ lwz r5, 0x64(r31)
/* 80278F68 00275EC8 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 80278F6C 00275ECC 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 80278F70 00275ED0 38 61 00 14 */ addi r3, r1, 0x14
/* 80278F74 00275ED4 C3 85 00 00 */ lfs f28, 0(r5)
/* 80278F78 00275ED8 38 84 00 CF */ addi r4, r4, 0xcf
/* 80278F7C 00275EDC C3 65 00 04 */ lfs f27, 4(r5)
/* 80278F80 00275EE0 C3 45 00 08 */ lfs f26, 8(r5)
/* 80278F84 00275EE4 4B D8 BD 35 */ bl string_l__4rstlFPCc
/* 80278F88 00275EE8 7F E4 FB 78 */ mr r4, r31
/* 80278F8C 00275EEC 38 61 00 30 */ addi r3, r1, 0x30
/* 80278F90 00275EF0 38 A1 00 14 */ addi r5, r1, 0x14
/* 80278F94 00275EF4 4B DD 9F 6D */ bl "GetLocatorTransform__6CActorCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80278F98 00275EF8 C3 A1 00 5C */ lfs f29, 0x5c(r1)
/* 80278F9C 00275EFC 38 61 00 14 */ addi r3, r1, 0x14
/* 80278FA0 00275F00 C3 C1 00 4C */ lfs f30, 0x4c(r1)
/* 80278FA4 00275F04 C3 E1 00 3C */ lfs f31, 0x3c(r1)
/* 80278FA8 00275F08 48 0C 4B 39 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80278FAC 00275F0C EC 5C 07 F2 */ fmuls f2, f28, f31
/* 80278FB0 00275F10 38 61 00 08 */ addi r3, r1, 8
/* 80278FB4 00275F14 EC 3B 07 B2 */ fmuls f1, f27, f30
/* 80278FB8 00275F18 38 9F 00 34 */ addi r4, r31, 0x34
/* 80278FBC 00275F1C EC 1A 07 72 */ fmuls f0, f26, f29
/* 80278FC0 00275F20 38 A1 00 24 */ addi r5, r1, 0x24
/* 80278FC4 00275F24 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80278FC8 00275F28 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 80278FCC 00275F2C D0 01 00 2C */ stfs f0, 0x2c(r1)
/* 80278FD0 00275F30 48 09 9A B1 */ bl Rotate__12CTransform4fCFRC9CVector3f
/* 80278FD4 00275F34 C0 41 00 08 */ lfs f2, 8(r1)
/* 80278FD8 00275F38 7F E3 FB 78 */ mr r3, r31
/* 80278FDC 00275F3C C0 21 00 0C */ lfs f1, 0xc(r1)
/* 80278FE0 00275F40 38 81 00 24 */ addi r4, r1, 0x24
/* 80278FE4 00275F44 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80278FE8 00275F48 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80278FEC 00275F4C D0 21 00 28 */ stfs f1, 0x28(r1)
/* 80278FF0 00275F50 D0 01 00 2C */ stfs f0, 0x2c(r1)
/* 80278FF4 00275F54 4B EA 1A 45 */ bl MoveCollisionPrimitive__13CPhysicsActorFRC9CVector3f
/* 80278FF8 00275F58 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0
/* 80278FFC 00275F5C CB E1 00 C0 */ lfd f31, 0xc0(r1)
/* 80279000 00275F60 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0
/* 80279004 00275F64 CB C1 00 B0 */ lfd f30, 0xb0(r1)
/* 80279008 00275F68 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0
/* 8027900C 00275F6C CB A1 00 A0 */ lfd f29, 0xa0(r1)
/* 80279010 00275F70 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0
/* 80279014 00275F74 CB 81 00 90 */ lfd f28, 0x90(r1)
/* 80279018 00275F78 E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0
/* 8027901C 00275F7C CB 61 00 80 */ lfd f27, 0x80(r1)
/* 80279020 00275F80 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0
/* 80279024 00275F84 CB 41 00 70 */ lfd f26, 0x70(r1)
/* 80279028 00275F88 80 01 00 D4 */ lwz r0, 0xd4(r1)
/* 8027902C 00275F8C 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 80279030 00275F90 7C 08 03 A6 */ mtlr r0
/* 80279034 00275F94 38 21 00 D0 */ addi r1, r1, 0xd0
/* 80279038 00275F98 4E 80 00 20 */ blr
.global sub_8027903c
sub_8027903c:
/* 8027903C 00275F9C 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80279040 00275FA0 7C 08 02 A6 */ mflr r0
/* 80279044 00275FA4 3C 80 80 3D */ lis r4, lbl_803D5454@ha
/* 80279048 00275FA8 90 01 00 74 */ stw r0, 0x74(r1)
/* 8027904C 00275FAC BF 61 00 5C */ stmw r27, 0x5c(r1)
/* 80279050 00275FB0 7C 7B 1B 78 */ mr r27, r3
/* 80279054 00275FB4 3B C4 54 54 */ addi r30, r4, lbl_803D5454@l
/* 80279058 00275FB8 3B A1 00 3C */ addi r29, r1, 0x3c
/* 8027905C 00275FBC 3B 80 00 00 */ li r28, 0
/* 80279060 00275FC0 3B E0 00 00 */ li r31, 0
lbl_80279064:
/* 80279064 00275FC4 80 9E 00 00 */ lwz r4, 0(r30)
/* 80279068 00275FC8 38 61 00 08 */ addi r3, r1, 8
/* 8027906C 00275FCC 4B D8 BC 4D */ bl string_l__4rstlFPCc
/* 80279070 00275FD0 80 9B 00 64 */ lwz r4, 0x64(r27)
/* 80279074 00275FD4 38 61 00 18 */ addi r3, r1, 0x18
/* 80279078 00275FD8 C0 22 BC CC */ lfs f1, lbl_805AD9EC@sda21(r2)
/* 8027907C 00275FDC 38 A1 00 08 */ addi r5, r1, 8
/* 80279080 00275FE0 80 84 00 10 */ lwz r4, 0x10(r4)
/* 80279084 00275FE4 38 C0 00 02 */ li r6, 2
/* 80279088 00275FE8 C0 42 BC D0 */ lfs f2, lbl_805AD9F0@sda21(r2)
/* 8027908C 00275FEC 4B EF C9 2D */ bl "__ct__13CBoneTrackingFRC9CAnimDataRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>ffb"
/* 80279090 00275FF0 38 7B 07 6C */ addi r3, r27, 0x76c
/* 80279094 00275FF4 38 81 00 18 */ addi r4, r1, 0x18
/* 80279098 00275FF8 48 00 00 3D */ bl sub_802790d4
/* 8027909C 00275FFC 28 1D 00 00 */ cmplwi r29, 0
/* 802790A0 00276000 41 82 00 08 */ beq lbl_802790A8
/* 802790A4 00276004 9B E1 00 48 */ stb r31, 0x48(r1)
lbl_802790A8:
/* 802790A8 00276008 38 61 00 08 */ addi r3, r1, 8
/* 802790AC 0027600C 48 0C 4A 35 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802790B0 00276010 3B 9C 00 01 */ addi r28, r28, 1
/* 802790B4 00276014 3B DE 00 04 */ addi r30, r30, 4
/* 802790B8 00276018 28 1C 00 06 */ cmplwi r28, 6
/* 802790BC 0027601C 41 80 FF A8 */ blt lbl_80279064
/* 802790C0 00276020 BB 61 00 5C */ lmw r27, 0x5c(r1)
/* 802790C4 00276024 80 01 00 74 */ lwz r0, 0x74(r1)
/* 802790C8 00276028 7C 08 03 A6 */ mtlr r0
/* 802790CC 0027602C 38 21 00 70 */ addi r1, r1, 0x70
/* 802790D0 00276030 4E 80 00 20 */ blr
.global sub_802790d4
sub_802790d4:
/* 802790D4 00276034 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802790D8 00276038 7C 08 02 A6 */ mflr r0
/* 802790DC 0027603C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802790E0 00276040 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802790E4 00276044 7C 7F 1B 78 */ mr r31, r3
/* 802790E8 00276048 80 03 00 00 */ lwz r0, 0(r3)
/* 802790EC 0027604C 1C 00 00 38 */ mulli r0, r0, 0x38
/* 802790F0 00276050 7C 7F 02 14 */ add r3, r31, r0
/* 802790F4 00276054 38 63 00 04 */ addi r3, r3, 4
/* 802790F8 00276058 48 00 00 25 */ bl sub_8027911c
/* 802790FC 0027605C 80 7F 00 00 */ lwz r3, 0(r31)
/* 80279100 00276060 38 03 00 01 */ addi r0, r3, 1
/* 80279104 00276064 90 1F 00 00 */ stw r0, 0(r31)
/* 80279108 00276068 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8027910C 0027606C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80279110 00276070 7C 08 03 A6 */ mtlr r0
/* 80279114 00276074 38 21 00 10 */ addi r1, r1, 0x10
/* 80279118 00276078 4E 80 00 20 */ blr
.global sub_8027911c
sub_8027911c:
/* 8027911C 0027607C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80279120 00276080 7C 08 02 A6 */ mflr r0
/* 80279124 00276084 28 03 00 00 */ cmplwi r3, 0
/* 80279128 00276088 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027912C 0027608C 41 82 00 08 */ beq lbl_80279134
/* 80279130 00276090 48 00 00 15 */ bl sub_80279144
lbl_80279134:
/* 80279134 00276094 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80279138 00276098 7C 08 03 A6 */ mtlr r0
/* 8027913C 0027609C 38 21 00 10 */ addi r1, r1, 0x10
/* 80279140 002760A0 4E 80 00 20 */ blr
.global sub_80279144
sub_80279144:
/* 80279144 002760A4 C0 04 00 00 */ lfs f0, 0(r4)
/* 80279148 002760A8 D0 03 00 00 */ stfs f0, 0(r3)
/* 8027914C 002760AC C0 04 00 04 */ lfs f0, 4(r4)
/* 80279150 002760B0 D0 03 00 04 */ stfs f0, 4(r3)
/* 80279154 002760B4 C0 04 00 08 */ lfs f0, 8(r4)
/* 80279158 002760B8 D0 03 00 08 */ stfs f0, 8(r3)
/* 8027915C 002760BC C0 04 00 0C */ lfs f0, 0xc(r4)
/* 80279160 002760C0 D0 03 00 0C */ stfs f0, 0xc(r3)
/* 80279164 002760C4 C0 04 00 10 */ lfs f0, 0x10(r4)
/* 80279168 002760C8 D0 03 00 10 */ stfs f0, 0x10(r3)
/* 8027916C 002760CC 88 04 00 14 */ lbz r0, 0x14(r4)
/* 80279170 002760D0 98 03 00 14 */ stb r0, 0x14(r3)
/* 80279174 002760D4 C0 04 00 18 */ lfs f0, 0x18(r4)
/* 80279178 002760D8 D0 03 00 18 */ stfs f0, 0x18(r3)
/* 8027917C 002760DC C0 04 00 1C */ lfs f0, 0x1c(r4)
/* 80279180 002760E0 D0 03 00 1C */ stfs f0, 0x1c(r3)
/* 80279184 002760E4 C0 04 00 20 */ lfs f0, 0x20(r4)
/* 80279188 002760E8 D0 03 00 20 */ stfs f0, 0x20(r3)
/* 8027918C 002760EC 88 04 00 30 */ lbz r0, 0x30(r4)
/* 80279190 002760F0 98 03 00 30 */ stb r0, 0x30(r3)
/* 80279194 002760F4 88 04 00 30 */ lbz r0, 0x30(r4)
/* 80279198 002760F8 28 00 00 00 */ cmplwi r0, 0
/* 8027919C 002760FC 41 82 00 24 */ beq lbl_802791C0
/* 802791A0 00276100 34 A3 00 24 */ addic. r5, r3, 0x24
/* 802791A4 00276104 41 82 00 1C */ beq lbl_802791C0
/* 802791A8 00276108 C0 04 00 24 */ lfs f0, 0x24(r4)
/* 802791AC 0027610C D0 05 00 00 */ stfs f0, 0(r5)
/* 802791B0 00276110 C0 04 00 28 */ lfs f0, 0x28(r4)
/* 802791B4 00276114 D0 05 00 04 */ stfs f0, 4(r5)
/* 802791B8 00276118 C0 04 00 2C */ lfs f0, 0x2c(r4)
/* 802791BC 0027611C D0 05 00 08 */ stfs f0, 8(r5)
lbl_802791C0:
/* 802791C0 00276120 A0 04 00 34 */ lhz r0, 0x34(r4)
/* 802791C4 00276124 B0 03 00 34 */ sth r0, 0x34(r3)
/* 802791C8 00276128 88 04 00 36 */ lbz r0, 0x36(r4)
/* 802791CC 0027612C 98 03 00 36 */ stb r0, 0x36(r3)
/* 802791D0 00276130 4E 80 00 20 */ blr
.global sub_802791d4
sub_802791d4:
/* 802791D4 00276134 94 21 FD D0 */ stwu r1, -0x230(r1)
/* 802791D8 00276138 7C 08 02 A6 */ mflr r0
/* 802791DC 0027613C 90 01 02 34 */ stw r0, 0x234(r1)
/* 802791E0 00276140 38 00 00 00 */ li r0, 0
/* 802791E4 00276144 BF 21 02 14 */ stmw r25, 0x214(r1)
/* 802791E8 00276148 7C 7D 1B 78 */ mr r29, r3
/* 802791EC 0027614C 7C 9E 23 78 */ mr r30, r4
/* 802791F0 00276150 38 61 00 D4 */ addi r3, r1, 0xd4
/* 802791F4 00276154 38 80 00 1A */ li r4, 0x1a
/* 802791F8 00276158 90 01 00 D8 */ stw r0, 0xd8(r1)
/* 802791FC 0027615C 90 01 00 DC */ stw r0, 0xdc(r1)
/* 80279200 00276160 90 01 00 E0 */ stw r0, 0xe0(r1)
/* 80279204 00276164 4B ED D5 B5 */ bl "reserve__Q24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>Fi"
/* 80279208 00276168 80 9D 00 64 */ lwz r4, 0x64(r29)
/* 8027920C 0027616C 3C 60 80 3F */ lis r3, lbl_803EAAA8@ha
/* 80279210 00276170 3B 83 AA A8 */ addi r28, r3, lbl_803EAAA8@l
/* 80279214 00276174 3B 61 01 70 */ addi r27, r1, 0x170
/* 80279218 00276178 83 E4 00 10 */ lwz r31, 0x10(r4)
/* 8027921C 0027617C 3B 41 01 F8 */ addi r26, r1, 0x1f8
/* 80279220 00276180 3B 20 00 00 */ li r25, 0
lbl_80279224:
/* 80279224 00276184 80 9C 00 00 */ lwz r4, 0(r28)
/* 80279228 00276188 38 61 00 C4 */ addi r3, r1, 0xc4
/* 8027922C 0027618C 4B D8 BA 8D */ bl string_l__4rstlFPCc
/* 80279230 00276190 80 9C 00 04 */ lwz r4, 4(r28)
/* 80279234 00276194 38 61 00 B4 */ addi r3, r1, 0xb4
/* 80279238 00276198 4B D8 BA 81 */ bl string_l__4rstlFPCc
/* 8027923C 0027619C 80 9C 00 00 */ lwz r4, 0(r28)
/* 80279240 002761A0 38 61 00 98 */ addi r3, r1, 0x98
/* 80279244 002761A4 4B D8 BA 75 */ bl string_l__4rstlFPCc
/* 80279248 002761A8 80 9C 00 04 */ lwz r4, 4(r28)
/* 8027924C 002761AC 38 61 00 88 */ addi r3, r1, 0x88
/* 80279250 002761B0 4B D8 BA 69 */ bl string_l__4rstlFPCc
/* 80279254 002761B4 38 61 00 78 */ addi r3, r1, 0x78
/* 80279258 002761B8 38 81 00 98 */ addi r4, r1, 0x98
/* 8027925C 002761BC 38 A1 00 88 */ addi r5, r1, 0x88
/* 80279260 002761C0 4B D8 B9 FD */ bl "__pl__4rstlFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80279264 002761C4 C0 5C 00 10 */ lfs f2, 0x10(r28)
/* 80279268 002761C8 7F E4 FB 78 */ mr r4, r31
/* 8027926C 002761CC C0 3C 00 0C */ lfs f1, 0xc(r28)
/* 80279270 002761D0 38 61 00 10 */ addi r3, r1, 0x10
/* 80279274 002761D4 C0 1C 00 08 */ lfs f0, 8(r28)
/* 80279278 002761D8 38 A1 00 B4 */ addi r5, r1, 0xb4
/* 8027927C 002761DC D0 21 00 AC */ stfs f1, 0xac(r1)
/* 80279280 002761E0 D0 01 00 A8 */ stfs f0, 0xa8(r1)
/* 80279284 002761E4 D0 41 00 B0 */ stfs f2, 0xb0(r1)
/* 80279288 002761E8 4B DB 55 B1 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8027928C 002761EC 88 01 00 10 */ lbz r0, 0x10(r1)
/* 80279290 002761F0 7F E4 FB 78 */ mr r4, r31
/* 80279294 002761F4 38 61 00 18 */ addi r3, r1, 0x18
/* 80279298 002761F8 38 A1 00 C4 */ addi r5, r1, 0xc4
/* 8027929C 002761FC 98 01 00 14 */ stb r0, 0x14(r1)
/* 802792A0 00276200 4B DB 55 99 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802792A4 00276204 88 01 00 18 */ lbz r0, 0x18(r1)
/* 802792A8 00276208 38 61 01 44 */ addi r3, r1, 0x144
/* 802792AC 0027620C C0 22 BC D4 */ lfs f1, lbl_805AD9F4@sda21(r2)
/* 802792B0 00276210 38 81 00 1C */ addi r4, r1, 0x1c
/* 802792B4 00276214 98 01 00 1C */ stb r0, 0x1c(r1)
/* 802792B8 00276218 38 A1 00 14 */ addi r5, r1, 0x14
/* 802792BC 0027621C 38 C1 00 A8 */ addi r6, r1, 0xa8
/* 802792C0 00276220 39 01 00 78 */ addi r8, r1, 0x78
/* 802792C4 00276224 38 E0 00 01 */ li r7, 1
/* 802792C8 00276228 4B F2 F3 0D */ bl "OBBAutoSizeCollision__26CJointCollisionDescriptionF6CSegId6CSegIdRC9CVector3fQ226CJointCollisionDescription16EOrientationTypeRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>f"
/* 802792CC 0027622C 80 E1 01 44 */ lwz r7, 0x144(r1)
/* 802792D0 00276230 7F 43 D3 78 */ mr r3, r26
/* 802792D4 00276234 80 C1 01 48 */ lwz r6, 0x148(r1)
/* 802792D8 00276238 7F 64 DB 78 */ mr r4, r27
/* 802792DC 0027623C 88 A1 01 4C */ lbz r5, 0x14c(r1)
/* 802792E0 00276240 88 01 01 4D */ lbz r0, 0x14d(r1)
/* 802792E4 00276244 C0 E1 01 50 */ lfs f7, 0x150(r1)
/* 802792E8 00276248 C0 C1 01 54 */ lfs f6, 0x154(r1)
/* 802792EC 0027624C C0 A1 01 58 */ lfs f5, 0x158(r1)
/* 802792F0 00276250 C0 81 01 5C */ lfs f4, 0x15c(r1)
/* 802792F4 00276254 C0 61 01 60 */ lfs f3, 0x160(r1)
/* 802792F8 00276258 C0 41 01 64 */ lfs f2, 0x164(r1)
/* 802792FC 0027625C C0 21 01 68 */ lfs f1, 0x168(r1)
/* 80279300 00276260 C0 01 01 6C */ lfs f0, 0x16c(r1)
/* 80279304 00276264 90 E1 01 CC */ stw r7, 0x1cc(r1)
/* 80279308 00276268 90 C1 01 D0 */ stw r6, 0x1d0(r1)
/* 8027930C 0027626C 98 A1 01 D4 */ stb r5, 0x1d4(r1)
/* 80279310 00276270 98 01 01 D5 */ stb r0, 0x1d5(r1)
/* 80279314 00276274 D0 E1 01 D8 */ stfs f7, 0x1d8(r1)
/* 80279318 00276278 D0 C1 01 DC */ stfs f6, 0x1dc(r1)
/* 8027931C 0027627C D0 A1 01 E0 */ stfs f5, 0x1e0(r1)
/* 80279320 00276280 D0 81 01 E4 */ stfs f4, 0x1e4(r1)
/* 80279324 00276284 D0 61 01 E8 */ stfs f3, 0x1e8(r1)
/* 80279328 00276288 D0 41 01 EC */ stfs f2, 0x1ec(r1)
/* 8027932C 0027628C D0 21 01 F0 */ stfs f1, 0x1f0(r1)
/* 80279330 00276290 D0 01 01 F4 */ stfs f0, 0x1f4(r1)
/* 80279334 00276294 48 0C 4E 2D */ bl "__ct__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80279338 00276298 A0 01 01 80 */ lhz r0, 0x180(r1)
/* 8027933C 0027629C 28 1B 00 00 */ cmplwi r27, 0
/* 80279340 002762A0 C0 01 01 84 */ lfs f0, 0x184(r1)
/* 80279344 002762A4 B0 01 02 08 */ sth r0, 0x208(r1)
/* 80279348 002762A8 D0 01 02 0C */ stfs f0, 0x20c(r1)
/* 8027934C 002762AC 41 82 00 0C */ beq lbl_80279358
/* 80279350 002762B0 7F 63 DB 78 */ mr r3, r27
/* 80279354 002762B4 48 0C 47 8D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_80279358:
/* 80279358 002762B8 38 61 00 78 */ addi r3, r1, 0x78
/* 8027935C 002762BC 48 0C 47 85 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80279360 002762C0 38 61 00 88 */ addi r3, r1, 0x88
/* 80279364 002762C4 48 0C 47 7D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80279368 002762C8 38 61 00 98 */ addi r3, r1, 0x98
/* 8027936C 002762CC 48 0C 47 75 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80279370 002762D0 38 61 00 B4 */ addi r3, r1, 0xb4
/* 80279374 002762D4 48 0C 47 6D */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80279378 002762D8 38 61 00 C4 */ addi r3, r1, 0xc4
/* 8027937C 002762DC 48 0C 47 65 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80279380 002762E0 38 61 00 D4 */ addi r3, r1, 0xd4
/* 80279384 002762E4 38 81 01 CC */ addi r4, r1, 0x1cc
/* 80279388 002762E8 4B ED CE A9 */ bl sub_80156230
/* 8027938C 002762EC 28 1A 00 00 */ cmplwi r26, 0
/* 80279390 002762F0 41 82 00 0C */ beq lbl_8027939C
/* 80279394 002762F4 7F 43 D3 78 */ mr r3, r26
/* 80279398 002762F8 48 0C 47 49 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_8027939C:
/* 8027939C 002762FC 3B 39 00 01 */ addi r25, r25, 1
/* 802793A0 00276300 3B 9C 00 14 */ addi r28, r28, 0x14
/* 802793A4 00276304 28 19 00 17 */ cmplwi r25, 0x17
/* 802793A8 00276308 41 80 FE 7C */ blt lbl_80279224
/* 802793AC 0027630C 3C 60 80 3F */ lis r3, lbl_803EAA90@ha
/* 802793B0 00276310 3B 61 01 2C */ addi r27, r1, 0x12c
/* 802793B4 00276314 3B 43 AA 90 */ addi r26, r3, lbl_803EAA90@l
/* 802793B8 00276318 3B 81 01 B4 */ addi r28, r1, 0x1b4
/* 802793BC 0027631C 3B 20 00 00 */ li r25, 0
lbl_802793C0:
/* 802793C0 00276320 80 9A 00 00 */ lwz r4, 0(r26)
/* 802793C4 00276324 38 61 00 68 */ addi r3, r1, 0x68
/* 802793C8 00276328 4B D8 B8 F1 */ bl string_l__4rstlFPCc
/* 802793CC 0027632C 80 9A 00 00 */ lwz r4, 0(r26)
/* 802793D0 00276330 38 61 00 58 */ addi r3, r1, 0x58
/* 802793D4 00276334 4B D8 B8 E5 */ bl string_l__4rstlFPCc
/* 802793D8 00276338 7F E4 FB 78 */ mr r4, r31
/* 802793DC 0027633C 38 61 00 08 */ addi r3, r1, 8
/* 802793E0 00276340 38 A1 00 68 */ addi r5, r1, 0x68
/* 802793E4 00276344 4B DB 54 55 */ bl "GetLocatorSegId__9CAnimDataCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802793E8 00276348 88 01 00 08 */ lbz r0, 8(r1)
/* 802793EC 0027634C 38 61 01 00 */ addi r3, r1, 0x100
/* 802793F0 00276350 C0 3A 00 04 */ lfs f1, 4(r26)
/* 802793F4 00276354 38 81 00 0C */ addi r4, r1, 0xc
/* 802793F8 00276358 98 01 00 0C */ stb r0, 0xc(r1)
/* 802793FC 0027635C 38 A1 00 58 */ addi r5, r1, 0x58
/* 80279400 00276360 C0 42 BC D4 */ lfs f2, lbl_805AD9F4@sda21(r2)
/* 80279404 00276364 4B F2 F4 09 */ bl "SphereCollision__26CJointCollisionDescriptionF6CSegIdfRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>f"
/* 80279408 00276368 80 E1 01 00 */ lwz r7, 0x100(r1)
/* 8027940C 0027636C 7F 83 E3 78 */ mr r3, r28
/* 80279410 00276370 80 C1 01 04 */ lwz r6, 0x104(r1)
/* 80279414 00276374 7F 64 DB 78 */ mr r4, r27
/* 80279418 00276378 88 A1 01 08 */ lbz r5, 0x108(r1)
/* 8027941C 0027637C 88 01 01 09 */ lbz r0, 0x109(r1)
/* 80279420 00276380 C0 E1 01 0C */ lfs f7, 0x10c(r1)
/* 80279424 00276384 C0 C1 01 10 */ lfs f6, 0x110(r1)
/* 80279428 00276388 C0 A1 01 14 */ lfs f5, 0x114(r1)
/* 8027942C 0027638C C0 81 01 18 */ lfs f4, 0x118(r1)
/* 80279430 00276390 C0 61 01 1C */ lfs f3, 0x11c(r1)
/* 80279434 00276394 C0 41 01 20 */ lfs f2, 0x120(r1)
/* 80279438 00276398 C0 21 01 24 */ lfs f1, 0x124(r1)
/* 8027943C 0027639C C0 01 01 28 */ lfs f0, 0x128(r1)
/* 80279440 002763A0 90 E1 01 88 */ stw r7, 0x188(r1)
/* 80279444 002763A4 90 C1 01 8C */ stw r6, 0x18c(r1)
/* 80279448 002763A8 98 A1 01 90 */ stb r5, 0x190(r1)
/* 8027944C 002763AC 98 01 01 91 */ stb r0, 0x191(r1)
/* 80279450 002763B0 D0 E1 01 94 */ stfs f7, 0x194(r1)
/* 80279454 002763B4 D0 C1 01 98 */ stfs f6, 0x198(r1)
/* 80279458 002763B8 D0 A1 01 9C */ stfs f5, 0x19c(r1)
/* 8027945C 002763BC D0 81 01 A0 */ stfs f4, 0x1a0(r1)
/* 80279460 002763C0 D0 61 01 A4 */ stfs f3, 0x1a4(r1)
/* 80279464 002763C4 D0 41 01 A8 */ stfs f2, 0x1a8(r1)
/* 80279468 002763C8 D0 21 01 AC */ stfs f1, 0x1ac(r1)
/* 8027946C 002763CC D0 01 01 B0 */ stfs f0, 0x1b0(r1)
/* 80279470 002763D0 48 0C 4C F1 */ bl "__ct__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80279474 002763D4 A0 01 01 3C */ lhz r0, 0x13c(r1)
/* 80279478 002763D8 28 1B 00 00 */ cmplwi r27, 0
/* 8027947C 002763DC C0 01 01 40 */ lfs f0, 0x140(r1)
/* 80279480 002763E0 B0 01 01 C4 */ sth r0, 0x1c4(r1)
/* 80279484 002763E4 D0 01 01 C8 */ stfs f0, 0x1c8(r1)
/* 80279488 002763E8 41 82 00 0C */ beq lbl_80279494
/* 8027948C 002763EC 7F 63 DB 78 */ mr r3, r27
/* 80279490 002763F0 48 0C 46 51 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_80279494:
/* 80279494 002763F4 38 61 00 58 */ addi r3, r1, 0x58
/* 80279498 002763F8 48 0C 46 49 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8027949C 002763FC 38 61 00 68 */ addi r3, r1, 0x68
/* 802794A0 00276400 48 0C 46 41 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802794A4 00276404 38 61 00 D4 */ addi r3, r1, 0xd4
/* 802794A8 00276408 38 81 01 88 */ addi r4, r1, 0x188
/* 802794AC 0027640C 4B ED CD 85 */ bl sub_80156230
/* 802794B0 00276410 28 1C 00 00 */ cmplwi r28, 0
/* 802794B4 00276414 41 82 00 0C */ beq lbl_802794C0
/* 802794B8 00276418 7F 83 E3 78 */ mr r3, r28
/* 802794BC 0027641C 48 0C 46 25 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_802794C0:
/* 802794C0 00276420 3B 39 00 01 */ addi r25, r25, 1
/* 802794C4 00276424 3B 5A 00 08 */ addi r26, r26, 8
/* 802794C8 00276428 28 19 00 03 */ cmplwi r25, 3
/* 802794CC 0027642C 41 80 FE F4 */ blt lbl_802793C0
/* 802794D0 00276430 3C 80 80 3D */ lis r4, lbl_803D5618@ha
/* 802794D4 00276434 38 60 00 18 */ li r3, 0x18
/* 802794D8 00276438 38 84 56 18 */ addi r4, r4, lbl_803D5618@l
/* 802794DC 0027643C 38 A0 00 00 */ li r5, 0
/* 802794E0 00276440 38 84 02 20 */ addi r4, r4, 0x220
/* 802794E4 00276444 48 09 C3 89 */ bl __nw__FUlPCcPCc
/* 802794E8 00276448 7C 7C 1B 79 */ or. r28, r3, r3
/* 802794EC 0027644C 41 82 00 3C */ beq lbl_80279528
/* 802794F0 00276450 88 1D 00 30 */ lbz r0, 0x30(r29)
/* 802794F4 00276454 7F C4 F3 78 */ mr r4, r30
/* 802794F8 00276458 81 3D 00 04 */ lwz r9, 4(r29)
/* 802794FC 0027645C 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80279500 00276460 54 08 CF FE */ rlwinm r8, r0, 0x19, 0x1f, 0x1f
/* 80279504 00276464 38 C1 00 34 */ addi r6, r1, 0x34
/* 80279508 00276468 91 21 00 34 */ stw r9, 0x34(r1)
/* 8027950C 0027646C 38 E1 00 D4 */ addi r7, r1, 0xd4
/* 80279510 00276470 A0 1D 00 08 */ lhz r0, 8(r29)
/* 80279514 00276474 91 21 00 30 */ stw r9, 0x30(r1)
/* 80279518 00276478 B0 01 00 28 */ sth r0, 0x28(r1)
/* 8027951C 0027647C B0 01 00 2C */ sth r0, 0x2c(r1)
/* 80279520 00276480 4B F2 E4 11 */ bl "__ct__22CCollisionActorManagerFR13CStateManager9TUniqueId7TAreaIdRCQ24rstl63vector<26CJointCollisionDescription,Q24rstl17rmemory_allocator>b"
/* 80279524 00276484 7C 7C 1B 78 */ mr r28, r3
lbl_80279528:
/* 80279528 00276488 80 7D 05 6C */ lwz r3, 0x56c(r29)
/* 8027952C 0027648C 38 80 00 01 */ li r4, 1
/* 80279530 00276490 4B F2 E3 AD */ bl sub_801a78dc
/* 80279534 00276494 93 9D 05 6C */ stw r28, 0x56c(r29)
/* 80279538 00276498 3B 20 00 00 */ li r25, 0
/* 8027953C 0027649C 48 00 00 AC */ b lbl_802795E8
lbl_80279540:
/* 80279540 002764A0 80 7D 05 6C */ lwz r3, 0x56c(r29)
/* 80279544 002764A4 7F 24 CB 78 */ mr r4, r25
/* 80279548 002764A8 4B F2 DC F1 */ bl GetCollisionDescFromIndex__22CCollisionActorManagerCFUi
/* 8027954C 002764AC 80 82 BB E4 */ lwz r4, lbl_805AD904@sda21(r2)
/* 80279550 002764B0 7C 7C 1B 78 */ mr r28, r3
/* 80279554 002764B4 38 61 00 48 */ addi r3, r1, 0x48
/* 80279558 002764B8 4B D8 B7 61 */ bl string_l__4rstlFPCc
/* 8027955C 002764BC 38 7C 00 2C */ addi r3, r28, 0x2c
/* 80279560 002764C0 38 81 00 48 */ addi r4, r1, 0x48
/* 80279564 002764C4 4B DD 90 7D */ bl "find__Q24rstl418red_black_tree<Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>,Q24rstl83pair<Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>,s>,0,Q24rstl103select1st<Q24rstl83pair<Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>,s>>,Q24rstl81less<Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>>,Q24rstl17rmemory_allocator>CFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocat"
/* 80279568 002764C8 7C 7F 1B 78 */ mr r31, r3
/* 8027956C 002764CC 38 61 00 48 */ addi r3, r1, 0x48
/* 80279570 002764D0 48 0C 45 71 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 80279574 002764D4 57 E0 06 3F */ clrlwi. r0, r31, 0x18
/* 80279578 002764D8 41 82 00 0C */ beq lbl_80279584
/* 8027957C 002764DC A0 1C 00 3C */ lhz r0, 0x3c(r28)
/* 80279580 002764E0 B0 1D 08 CC */ sth r0, 0x8cc(r29)
lbl_80279584:
/* 80279584 002764E4 A0 1C 00 3C */ lhz r0, 0x3c(r28)
/* 80279588 002764E8 7F C3 F3 78 */ mr r3, r30
/* 8027958C 002764EC 38 81 00 24 */ addi r4, r1, 0x24
/* 80279590 002764F0 B0 01 00 20 */ sth r0, 0x20(r1)
/* 80279594 002764F4 B0 01 00 24 */ sth r0, 0x24(r1)
/* 80279598 002764F8 4B DD 2F DD */ bl ObjectById__13CStateManagerF9TUniqueId
/* 8027959C 002764FC 7C 64 1B 78 */ mr r4, r3
/* 802795A0 00276500 38 61 00 40 */ addi r3, r1, 0x40
/* 802795A4 00276504 4B E3 5D A9 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 802795A8 00276508 83 43 00 04 */ lwz r26, 4(r3)
/* 802795AC 0027650C 28 1A 00 00 */ cmplwi r26, 0
/* 802795B0 00276510 41 82 00 34 */ beq lbl_802795E4
/* 802795B4 00276514 A0 7C 00 3C */ lhz r3, 0x3c(r28)
/* 802795B8 00276518 A0 1D 10 46 */ lhz r0, 0x1046(r29)
/* 802795BC 0027651C 7C 03 00 40 */ cmplw r3, r0
/* 802795C0 00276520 41 82 00 24 */ beq lbl_802795E4
/* 802795C4 00276524 7F A3 EB 78 */ mr r3, r29
/* 802795C8 00276528 81 9D 00 00 */ lwz r12, 0(r29)
/* 802795CC 0027652C 81 8C 00 38 */ lwz r12, 0x38(r12)
/* 802795D0 00276530 7D 89 03 A6 */ mtctr r12
/* 802795D4 00276534 4E 80 04 21 */ bctrl
/* 802795D8 00276538 7C 64 1B 78 */ mr r4, r3
/* 802795DC 0027653C 7F 43 D3 78 */ mr r3, r26
/* 802795E0 00276540 4B F2 F5 B9 */ bl SetDamageVulnerability__15CCollisionActorFRC20CDamageVulnerability
lbl_802795E4:
/* 802795E4 00276544 3B 39 00 01 */ addi r25, r25, 1
lbl_802795E8:
/* 802795E8 00276548 80 7D 05 6C */ lwz r3, 0x56c(r29)
/* 802795EC 0027654C 4B F2 DC 5D */ bl GetNumCollisionActors__22CCollisionActorManagerCFv
/* 802795F0 00276550 7C 19 18 40 */ cmplw r25, r3
/* 802795F4 00276554 41 80 FF 4C */ blt lbl_80279540
/* 802795F8 00276558 38 00 00 00 */ li r0, 0
/* 802795FC 0027655C 80 AD 98 68 */ lwz r5, lbl_805A8428@sda21(r13)
/* 80279600 00276560 90 01 00 3C */ stw r0, 0x3c(r1)
/* 80279604 00276564 38 60 00 00 */ li r3, 0
/* 80279608 00276568 38 80 00 01 */ li r4, 1
/* 8027960C 0027656C 90 01 00 38 */ stw r0, 0x38(r1)
/* 80279610 00276570 48 11 08 E5 */ bl __shl2i
/* 80279614 00276574 80 01 00 38 */ lwz r0, 0x38(r1)
/* 80279618 00276578 80 C1 00 3C */ lwz r6, 0x3c(r1)
/* 8027961C 0027657C 7C 00 1B 78 */ or r0, r0, r3
/* 80279620 00276580 80 AD 98 6C */ lwz r5, lbl_805A842C@sda21(r13)
/* 80279624 00276584 7C C4 23 78 */ or r4, r6, r4
/* 80279628 00276588 90 01 00 38 */ stw r0, 0x38(r1)
/* 8027962C 0027658C 38 60 00 00 */ li r3, 0
/* 80279630 00276590 90 81 00 3C */ stw r4, 0x3c(r1)
/* 80279634 00276594 38 80 00 01 */ li r4, 1
/* 80279638 00276598 48 11 08 BD */ bl __shl2i
/* 8027963C 0027659C 80 01 00 38 */ lwz r0, 0x38(r1)
/* 80279640 002765A0 38 A1 00 38 */ addi r5, r1, 0x38
/* 80279644 002765A4 80 C1 00 3C */ lwz r6, 0x3c(r1)
/* 80279648 002765A8 7C 00 1B 78 */ or r0, r0, r3
/* 8027964C 002765AC 7C C3 23 78 */ or r3, r6, r4
/* 80279650 002765B0 90 01 00 38 */ stw r0, 0x38(r1)
/* 80279654 002765B4 7F C4 F3 78 */ mr r4, r30
/* 80279658 002765B8 90 61 00 3C */ stw r3, 0x3c(r1)
/* 8027965C 002765BC 80 7D 05 6C */ lwz r3, 0x56c(r29)
/* 80279660 002765C0 4B F2 DB F1 */ bl AddMaterial__22CCollisionActorManagerFR13CStateManagerRC13CMaterialList
/* 80279664 002765C4 80 AD 98 74 */ lwz r5, lbl_805A8434@sda21(r13)
/* 80279668 002765C8 38 60 00 00 */ li r3, 0
/* 8027966C 002765CC 38 80 00 01 */ li r4, 1
/* 80279670 002765D0 48 11 08 85 */ bl __shl2i
/* 80279674 002765D4 80 AD 98 78 */ lwz r5, lbl_805A8438@sda21(r13)
/* 80279678 002765D8 7C 9F 23 78 */ mr r31, r4
/* 8027967C 002765DC 7C 7C 1B 78 */ mr r28, r3
/* 80279680 002765E0 38 60 00 00 */ li r3, 0
/* 80279684 002765E4 38 80 00 01 */ li r4, 1
/* 80279688 002765E8 48 11 08 6D */ bl __shl2i
/* 8027968C 002765EC 80 AD 98 7C */ lwz r5, lbl_805A843C@sda21(r13)
/* 80279690 002765F0 7F FF 23 78 */ or r31, r31, r4
/* 80279694 002765F4 7F 9C 1B 78 */ or r28, r28, r3
/* 80279698 002765F8 38 60 00 00 */ li r3, 0
/* 8027969C 002765FC 38 80 00 01 */ li r4, 1
/* 802796A0 00276600 48 11 08 55 */ bl __shl2i
/* 802796A4 00276604 80 AD 98 70 */ lwz r5, lbl_805A8430@sda21(r13)
/* 802796A8 00276608 7F FF 23 78 */ or r31, r31, r4
/* 802796AC 0027660C 7F 9C 1B 78 */ or r28, r28, r3
/* 802796B0 00276610 38 60 00 00 */ li r3, 0
/* 802796B4 00276614 38 80 00 01 */ li r4, 1
/* 802796B8 00276618 48 11 08 3D */ bl __shl2i
/* 802796BC 0027661C 38 00 00 03 */ li r0, 3
/* 802796C0 00276620 90 81 00 EC */ stw r4, 0xec(r1)
/* 802796C4 00276624 38 81 00 E8 */ addi r4, r1, 0xe8
/* 802796C8 00276628 90 61 00 E8 */ stw r3, 0xe8(r1)
/* 802796CC 0027662C 7F A3 EB 78 */ mr r3, r29
/* 802796D0 00276630 93 E1 00 F4 */ stw r31, 0xf4(r1)
/* 802796D4 00276634 93 81 00 F0 */ stw r28, 0xf0(r1)
/* 802796D8 00276638 90 01 00 F8 */ stw r0, 0xf8(r1)
/* 802796DC 0027663C 4B DD A1 C5 */ bl SetMaterialFilter__6CActorFRC15CMaterialFilter
/* 802796E0 00276640 7F A3 EB 78 */ mr r3, r29
/* 802796E4 00276644 7F C5 F3 78 */ mr r5, r30
/* 802796E8 00276648 38 80 00 12 */ li r4, 0x12
/* 802796EC 0027664C 4B DD AC 65 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager
/* 802796F0 00276650 7F A3 EB 78 */ mr r3, r29
/* 802796F4 00276654 7F C7 F3 78 */ mr r7, r30
/* 802796F8 00276658 38 80 00 13 */ li r4, 0x13
/* 802796FC 0027665C 38 A0 00 29 */ li r5, 0x29
/* 80279700 00276660 38 C0 00 28 */ li r6, 0x28
/* 80279704 00276664 4B DD A6 E9 */ bl RemoveMaterial__6CActorF14EMaterialTypes14EMaterialTypes14EMaterialTypesR13CStateManager
/* 80279708 00276668 7F A3 EB 78 */ mr r3, r29
/* 8027970C 0027666C 7F C4 F3 78 */ mr r4, r30
/* 80279710 00276670 4B FF F1 B9 */ bl sub_802788c8
/* 80279714 00276674 38 61 00 D4 */ addi r3, r1, 0xd4
/* 80279718 00276678 38 80 FF FF */ li r4, -1
/* 8027971C 0027667C 4B ED CC 11 */ bl sub_8015632c
/* 80279720 00276680 BB 21 02 14 */ lmw r25, 0x214(r1)
/* 80279724 00276684 80 01 02 34 */ lwz r0, 0x234(r1)
/* 80279728 00276688 7C 08 03 A6 */ mtlr r0
/* 8027972C 0027668C 38 21 02 30 */ addi r1, r1, 0x230
/* 80279730 00276690 4E 80 00 20 */ blr
.global ProjectileInfo__16CMetroidPrimeExoFv
ProjectileInfo__16CMetroidPrimeExoFv:
/* 80279734 00276694 80 03 09 2C */ lwz r0, 0x92c(r3)
/* 80279738 00276698 2C 00 00 05 */ cmpwi r0, 5
/* 8027973C 0027669C 41 82 00 1C */ beq lbl_80279758
/* 80279740 002766A0 40 80 00 20 */ bge lbl_80279760
/* 80279744 002766A4 2C 00 00 02 */ cmpwi r0, 2
/* 80279748 002766A8 40 80 00 08 */ bge lbl_80279750
/* 8027974C 002766AC 48 00 00 14 */ b lbl_80279760
lbl_80279750:
/* 80279750 002766B0 38 63 0C 78 */ addi r3, r3, 0xc78
/* 80279754 002766B4 4E 80 00 20 */ blr
lbl_80279758:
/* 80279758 002766B8 38 63 0D 74 */ addi r3, r3, 0xd74
/* 8027975C 002766BC 4E 80 00 20 */ blr
lbl_80279760:
/* 80279760 002766C0 38 60 00 00 */ li r3, 0
/* 80279764 002766C4 4E 80 00 20 */ blr
.global Think__16CMetroidPrimeExoFfR13CStateManager
Think__16CMetroidPrimeExoFfR13CStateManager:
/* 80279768 002766C8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8027976C 002766CC 7C 08 02 A6 */ mflr r0
/* 80279770 002766D0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80279774 002766D4 DB E1 00 18 */ stfd f31, 0x18(r1)
/* 80279778 002766D8 FF E0 08 90 */ fmr f31, f1
/* 8027977C 002766DC 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80279780 002766E0 7C 9F 23 78 */ mr r31, r4
/* 80279784 002766E4 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80279788 002766E8 7C 7E 1B 78 */ mr r30, r3
/* 8027978C 002766EC 4B E0 03 8D */ bl Think__10CPatternedFfR13CStateManager
/* 80279790 002766F0 88 1E 00 30 */ lbz r0, 0x30(r30)
/* 80279794 002766F4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80279798 002766F8 41 82 00 D0 */ beq lbl_80279868
/* 8027979C 002766FC 7F C3 F3 78 */ mr r3, r30
/* 802797A0 00276700 7F E4 FB 78 */ mr r4, r31
/* 802797A4 00276704 4B FF CD 85 */ bl sub_80276528
/* 802797A8 00276708 FC 20 F8 90 */ fmr f1, f31
/* 802797AC 0027670C 7F C3 F3 78 */ mr r3, r30
/* 802797B0 00276710 7F E4 FB 78 */ mr r4, r31
/* 802797B4 00276714 4B FF F4 25 */ bl sub_80278bd8
/* 802797B8 00276718 FC 20 F8 90 */ fmr f1, f31
/* 802797BC 0027671C 7F C3 F3 78 */ mr r3, r30
/* 802797C0 00276720 7F E4 FB 78 */ mr r4, r31
/* 802797C4 00276724 4B FF F7 51 */ bl sub_80278f14
/* 802797C8 00276728 7F C3 F3 78 */ mr r3, r30
/* 802797CC 0027672C 7F E4 FB 78 */ mr r4, r31
/* 802797D0 00276730 4B FF F1 7D */ bl sub_8027894c
/* 802797D4 00276734 FC 20 F8 90 */ fmr f1, f31
/* 802797D8 00276738 7F C3 F3 78 */ mr r3, r30
/* 802797DC 0027673C 7F E4 FB 78 */ mr r4, r31
/* 802797E0 00276740 4B FF E8 65 */ bl sub_80278044
/* 802797E4 00276744 FC 20 F8 90 */ fmr f1, f31
/* 802797E8 00276748 7F C3 F3 78 */ mr r3, r30
/* 802797EC 0027674C 4B FF E9 71 */ bl sub_8027815c
/* 802797F0 00276750 FC 20 F8 90 */ fmr f1, f31
/* 802797F4 00276754 7F C3 F3 78 */ mr r3, r30
/* 802797F8 00276758 7F E4 FB 78 */ mr r4, r31
/* 802797FC 0027675C 4B FF DD 75 */ bl sub_80277570
/* 80279800 00276760 FC 20 F8 90 */ fmr f1, f31
/* 80279804 00276764 7F C3 F3 78 */ mr r3, r30
/* 80279808 00276768 7F E4 FB 78 */ mr r4, r31
/* 8027980C 0027676C 4B FF B6 61 */ bl sub_80274e6c
/* 80279810 00276770 FC 20 F8 90 */ fmr f1, f31
/* 80279814 00276774 7F C3 F3 78 */ mr r3, r30
/* 80279818 00276778 7F E4 FB 78 */ mr r4, r31
/* 8027981C 0027677C 4B FF A0 F5 */ bl sub_80273910
/* 80279820 00276780 FC 20 F8 90 */ fmr f1, f31
/* 80279824 00276784 7F C3 F3 78 */ mr r3, r30
/* 80279828 00276788 7F E4 FB 78 */ mr r4, r31
/* 8027982C 0027678C 4B FF A6 E5 */ bl sub_80273f10
/* 80279830 00276790 7F C3 F3 78 */ mr r3, r30
/* 80279834 00276794 7F E4 FB 78 */ mr r4, r31
/* 80279838 00276798 4B FF E5 F9 */ bl sub_80277e30
/* 8027983C 0027679C FC 20 F8 90 */ fmr f1, f31
/* 80279840 002767A0 7F C3 F3 78 */ mr r3, r30
/* 80279844 002767A4 4B FF BF 3D */ bl sub_80275780
/* 80279848 002767A8 FC 20 F8 90 */ fmr f1, f31
/* 8027984C 002767AC 7F C3 F3 78 */ mr r3, r30
/* 80279850 002767B0 7F E4 FB 78 */ mr r4, r31
/* 80279854 002767B4 4B FF C9 11 */ bl sub_80276164
/* 80279858 002767B8 FC 20 F8 90 */ fmr f1, f31
/* 8027985C 002767BC 7F C3 F3 78 */ mr r3, r30
/* 80279860 002767C0 7F E4 FB 78 */ mr r4, r31
/* 80279864 002767C4 4B FF C5 F1 */ bl sub_80275e54
lbl_80279868:
/* 80279868 002767C8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8027986C 002767CC CB E1 00 18 */ lfd f31, 0x18(r1)
/* 80279870 002767D0 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80279874 002767D4 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80279878 002767D8 7C 08 03 A6 */ mtlr r0
/* 8027987C 002767DC 38 21 00 20 */ addi r1, r1, 0x20
/* 80279880 002767E0 4E 80 00 20 */ blr
.global PreThink__16CMetroidPrimeExoFfR13CStateManager
PreThink__16CMetroidPrimeExoFfR13CStateManager:
/* 80279884 002767E4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80279888 002767E8 7C 08 02 A6 */ mflr r0
/* 8027988C 002767EC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80279890 002767F0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80279894 002767F4 7C 9F 23 78 */ mr r31, r4
/* 80279898 002767F8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8027989C 002767FC 7C 7E 1B 78 */ mr r30, r3
/* 802798A0 00276800 4B DF E0 F1 */ bl PreThink__10CPatternedFfR13CStateManager
/* 802798A4 00276804 88 1E 00 30 */ lbz r0, 0x30(r30)
/* 802798A8 00276808 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802798AC 0027680C 41 82 00 54 */ beq lbl_80279900
/* 802798B0 00276810 A0 1E 08 CC */ lhz r0, 0x8cc(r30)
/* 802798B4 00276814 7F E3 FB 78 */ mr r3, r31
/* 802798B8 00276818 38 81 00 08 */ addi r4, r1, 8
/* 802798BC 0027681C B0 01 00 08 */ sth r0, 8(r1)
/* 802798C0 00276820 4B DD 2C E5 */ bl GetObjectById__13CStateManagerCF9TUniqueId
/* 802798C4 00276824 7C 64 1B 78 */ mr r4, r3
/* 802798C8 00276828 38 61 00 0C */ addi r3, r1, 0xc
/* 802798CC 0027682C 4B E3 5A 81 */ bl "__ct__29TCastToPtr<15CCollisionActor>FP7CEntity"
/* 802798D0 00276830 80 63 00 04 */ lwz r3, 4(r3)
/* 802798D4 00276834 28 03 00 00 */ cmplwi r3, 0
/* 802798D8 00276838 41 82 00 28 */ beq lbl_80279900
/* 802798DC 0027683C 81 83 00 00 */ lwz r12, 0(r3)
/* 802798E0 00276840 7F E4 FB 78 */ mr r4, r31
/* 802798E4 00276844 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 802798E8 00276848 7D 89 03 A6 */ mtctr r12
/* 802798EC 0027684C 4E 80 04 21 */ bctrl
/* 802798F0 00276850 28 03 00 00 */ cmplwi r3, 0
/* 802798F4 00276854 41 82 00 0C */ beq lbl_80279900
/* 802798F8 00276858 C0 03 00 00 */ lfs f0, 0(r3)
/* 802798FC 0027685C D0 1E 08 C8 */ stfs f0, 0x8c8(r30)
lbl_80279900:
/* 80279900 00276860 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80279904 00276864 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80279908 00276868 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8027990C 0027686C 7C 08 03 A6 */ mtlr r0
/* 80279910 00276870 38 21 00 20 */ addi r1, r1, 0x20
/* 80279914 00276874 4E 80 00 20 */ blr
.global DoUserAnimEvent__16CMetroidPrimeExoFR13CStateManagerRC13CInt32POINode14EUserEventType
DoUserAnimEvent__16CMetroidPrimeExoFR13CStateManagerRC13CInt32POINode14EUserEventType:
/* 80279918 00276878 94 21 F9 60 */ stwu r1, -0x6a0(r1)
/* 8027991C 0027687C 7C 08 02 A6 */ mflr r0
/* 80279920 00276880 90 01 06 A4 */ stw r0, 0x6a4(r1)
/* 80279924 00276884 DB E1 06 90 */ stfd f31, 0x690(r1)
/* 80279928 00276888 F3 E1 06 98 */ psq_st f31, 1688(r1), 0, qr0
/* 8027992C 0027688C DB C1 06 80 */ stfd f30, 0x680(r1)
/* 80279930 00276890 F3 C1 06 88 */ psq_st f30, 1672(r1), 0, qr0
/* 80279934 00276894 DB A1 06 70 */ stfd f29, 0x670(r1)
/* 80279938 00276898 F3 A1 06 78 */ psq_st f29, 1656(r1), 0, qr0
/* 8027993C 0027689C DB 81 06 60 */ stfd f28, 0x660(r1)
/* 80279940 002768A0 F3 81 06 68 */ psq_st f28, 1640(r1), 0, qr0
/* 80279944 002768A4 BE A1 06 34 */ stmw r21, 0x634(r1)
/* 80279948 002768A8 7C DD 33 78 */ mr r29, r6
/* 8027994C 002768AC FF E0 08 90 */ fmr f31, f1
/* 80279950 002768B0 2C 1D 00 10 */ cmpwi r29, 0x10
/* 80279954 002768B4 7C 7F 1B 78 */ mr r31, r3
/* 80279958 002768B8 7C 9E 23 78 */ mr r30, r4
/* 8027995C 002768BC 7C BC 2B 78 */ mr r28, r5
/* 80279960 002768C0 3B 40 00 00 */ li r26, 0
/* 80279964 002768C4 41 82 09 D4 */ beq lbl_8027A338
/* 80279968 002768C8 40 80 00 28 */ bge lbl_80279990
/* 8027996C 002768CC 2C 1D 00 08 */ cmpwi r29, 8
/* 80279970 002768D0 41 82 09 4C */ beq lbl_8027A2BC
/* 80279974 002768D4 40 80 00 10 */ bge lbl_80279984
/* 80279978 002768D8 2C 1D 00 00 */ cmpwi r29, 0
/* 8027997C 002768DC 41 82 00 2C */ beq lbl_802799A8
/* 80279980 002768E0 48 00 12 C8 */ b lbl_8027AC48
lbl_80279984:
/* 80279984 002768E4 2C 1D 00 0A */ cmpwi r29, 0xa
/* 80279988 002768E8 40 80 12 C0 */ bge lbl_8027AC48
/* 8027998C 002768EC 48 00 09 78 */ b lbl_8027A304
lbl_80279990:
/* 80279990 002768F0 2C 1D 00 22 */ cmpwi r29, 0x22
/* 80279994 002768F4 41 82 12 9C */ beq lbl_8027AC30
/* 80279998 002768F8 40 80 12 B0 */ bge lbl_8027AC48
/* 8027999C 002768FC 2C 1D 00 21 */ cmpwi r29, 0x21
/* 802799A0 00276900 40 80 12 10 */ bge lbl_8027ABB0
/* 802799A4 00276904 48 00 12 A4 */ b lbl_8027AC48
lbl_802799A8:
/* 802799A8 00276908 80 1F 09 2C */ lwz r0, 0x92c(r31)
/* 802799AC 0027690C 2C 00 00 06 */ cmpwi r0, 6
/* 802799B0 00276910 41 82 00 28 */ beq lbl_802799D8
/* 802799B4 00276914 40 80 00 18 */ bge lbl_802799CC
/* 802799B8 00276918 2C 00 00 05 */ cmpwi r0, 5
/* 802799BC 0027691C 40 80 03 38 */ bge lbl_80279CF4
/* 802799C0 00276920 2C 00 00 02 */ cmpwi r0, 2
/* 802799C4 00276924 40 80 06 1C */ bge lbl_80279FE0
/* 802799C8 00276928 48 00 08 EC */ b lbl_8027A2B4
lbl_802799CC:
/* 802799CC 0027692C 2C 00 00 0C */ cmpwi r0, 0xc
/* 802799D0 00276930 41 82 08 E0 */ beq lbl_8027A2B0
/* 802799D4 00276934 48 00 08 E0 */ b lbl_8027A2B4
lbl_802799D8:
/* 802799D8 00276938 7F E4 FB 78 */ mr r4, r31
/* 802799DC 0027693C 38 61 04 04 */ addi r3, r1, 0x404
/* 802799E0 00276940 38 BC 00 3C */ addi r5, r28, 0x3c
/* 802799E4 00276944 4B DF EF 95 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802799E8 00276948 38 61 05 24 */ addi r3, r1, 0x524
/* 802799EC 0027694C 38 81 04 04 */ addi r4, r1, 0x404
/* 802799F0 00276950 48 09 91 85 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802799F4 00276954 C0 81 05 30 */ lfs f4, 0x530(r1)
/* 802799F8 00276958 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 802799FC 0027695C 80 BE 08 4C */ lwz r5, 0x84c(r30)
/* 80279A00 00276960 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l
/* 80279A04 00276964 C0 61 05 40 */ lfs f3, 0x540(r1)
/* 80279A08 00276968 38 61 03 D4 */ addi r3, r1, 0x3d4
/* 80279A0C 0027696C C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 80279A10 00276970 38 81 02 5C */ addi r4, r1, 0x25c
/* 80279A14 00276974 C0 41 05 50 */ lfs f2, 0x550(r1)
/* 80279A18 00276978 C0 22 BC 9C */ lfs f1, lbl_805AD9BC@sda21(r2)
/* 80279A1C 0027697C EC C3 00 2A */ fadds f6, f3, f0
/* 80279A20 00276980 EC 04 00 2A */ fadds f0, f4, f0
/* 80279A24 00276984 C1 05 00 60 */ lfs f8, 0x60(r5)
/* 80279A28 00276988 EC A2 08 2A */ fadds f5, f2, f1
/* 80279A2C 0027698C C0 E5 00 50 */ lfs f7, 0x50(r5)
/* 80279A30 00276990 C0 25 00 40 */ lfs f1, 0x40(r5)
/* 80279A34 00276994 D0 81 02 50 */ stfs f4, 0x250(r1)
/* 80279A38 00276998 38 A1 02 44 */ addi r5, r1, 0x244
/* 80279A3C 0027699C D0 21 02 44 */ stfs f1, 0x244(r1)
/* 80279A40 002769A0 D0 E1 02 48 */ stfs f7, 0x248(r1)
/* 80279A44 002769A4 D1 01 02 4C */ stfs f8, 0x24c(r1)
/* 80279A48 002769A8 D0 61 02 54 */ stfs f3, 0x254(r1)
/* 80279A4C 002769AC D0 41 02 58 */ stfs f2, 0x258(r1)
/* 80279A50 002769B0 D0 01 02 5C */ stfs f0, 0x25c(r1)
/* 80279A54 002769B4 D0 C1 02 60 */ stfs f6, 0x260(r1)
/* 80279A58 002769B8 D0 A1 02 64 */ stfs f5, 0x264(r1)
/* 80279A5C 002769BC 48 09 A0 B5 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
/* 80279A60 002769C0 38 61 04 F4 */ addi r3, r1, 0x4f4
/* 80279A64 002769C4 38 81 03 D4 */ addi r4, r1, 0x3d4
/* 80279A68 002769C8 48 09 91 0D */ bl __ct__12CTransform4fFRC12CTransform4f
/* 80279A6C 002769CC 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 80279A70 002769D0 C0 22 BC D8 */ lfs f1, lbl_805AD9F8@sda21(r2)
/* 80279A74 002769D4 C0 42 BC DC */ lfs f2, lbl_805AD9FC@sda21(r2)
/* 80279A78 002769D8 48 09 8A CD */ bl Range__9CRandom16Fff
/* 80279A7C 002769DC C0 02 BC E0 */ lfs f0, lbl_805ADA00@sda21(r2)
/* 80279A80 002769E0 38 61 04 F4 */ addi r3, r1, 0x4f4
/* 80279A84 002769E4 38 81 00 A8 */ addi r4, r1, 0xa8
/* 80279A88 002769E8 EC 00 00 72 */ fmuls f0, f0, f1
/* 80279A8C 002769EC D0 01 00 A8 */ stfs f0, 0xa8(r1)
/* 80279A90 002769F0 48 09 9A 2D */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle
/* 80279A94 002769F4 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 80279A98 002769F8 3B 40 00 00 */ li r26, 0
/* 80279A9C 002769FC 38 63 56 18 */ addi r3, r3, lbl_803D5618@l
/* 80279AA0 00276A00 3B 20 00 00 */ li r25, 0
/* 80279AA4 00276A04 38 83 02 20 */ addi r4, r3, 0x220
/* 80279AA8 00276A08 3B 00 00 00 */ li r24, 0
/* 80279AAC 00276A0C 3A E0 00 00 */ li r23, 0
/* 80279AB0 00276A10 3A C0 00 00 */ li r22, 0
/* 80279AB4 00276A14 3A A0 00 00 */ li r21, 0
/* 80279AB8 00276A18 38 60 01 98 */ li r3, 0x198
/* 80279ABC 00276A1C 38 A0 00 00 */ li r5, 0
/* 80279AC0 00276A20 48 09 BD AD */ bl __nw__FUlPCcPCc
/* 80279AC4 00276A24 7C 7B 1B 79 */ or. r27, r3, r3
/* 80279AC8 00276A28 41 82 01 9C */ beq lbl_80279C64
/* 80279ACC 00276A2C 80 DF 09 34 */ lwz r6, 0x934(r31)
/* 80279AD0 00276A30 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 80279AD4 00276A34 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 80279AD8 00276A38 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 80279ADC 00276A3C 90 01 00 C0 */ stw r0, 0xc0(r1)
/* 80279AE0 00276A40 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80279AE4 00276A44 38 A1 00 C0 */ addi r5, r1, 0xc0
/* 80279AE8 00276A48 90 C1 00 C4 */ stw r6, 0xc4(r1)
/* 80279AEC 00276A4C 81 84 00 00 */ lwz r12, 0(r4)
/* 80279AF0 00276A50 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80279AF4 00276A54 7D 89 03 A6 */ mtctr r12
/* 80279AF8 00276A58 4E 80 04 21 */ bctrl
/* 80279AFC 00276A5C 38 61 00 B0 */ addi r3, r1, 0xb0
/* 80279B00 00276A60 38 81 00 B8 */ addi r4, r1, 0xb8
/* 80279B04 00276A64 3A C0 00 01 */ li r22, 1
/* 80279B08 00276A68 48 0C 73 A1 */ bl __ct__6CTokenFRC6CToken
/* 80279B0C 00276A6C 80 DF 09 38 */ lwz r6, 0x938(r31)
/* 80279B10 00276A70 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 80279B14 00276A74 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 80279B18 00276A78 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 80279B1C 00276A7C 90 01 00 D8 */ stw r0, 0xd8(r1)
/* 80279B20 00276A80 38 61 00 D0 */ addi r3, r1, 0xd0
/* 80279B24 00276A84 38 A1 00 D8 */ addi r5, r1, 0xd8
/* 80279B28 00276A88 3A A0 00 01 */ li r21, 1
/* 80279B2C 00276A8C 90 C1 00 DC */ stw r6, 0xdc(r1)
/* 80279B30 00276A90 81 84 00 00 */ lwz r12, 0(r4)
/* 80279B34 00276A94 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80279B38 00276A98 7D 89 03 A6 */ mtctr r12
/* 80279B3C 00276A9C 4E 80 04 21 */ bctrl
/* 80279B40 00276AA0 38 61 00 C8 */ addi r3, r1, 0xc8
/* 80279B44 00276AA4 38 81 00 D0 */ addi r4, r1, 0xd0
/* 80279B48 00276AA8 3B 00 00 01 */ li r24, 1
/* 80279B4C 00276AAC 48 0C 73 5D */ bl __ct__6CTokenFRC6CToken
/* 80279B50 00276AB0 80 DF 09 3C */ lwz r6, 0x93c(r31)
/* 80279B54 00276AB4 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 80279B58 00276AB8 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 80279B5C 00276ABC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 80279B60 00276AC0 90 01 00 F0 */ stw r0, 0xf0(r1)
/* 80279B64 00276AC4 38 61 00 E8 */ addi r3, r1, 0xe8
/* 80279B68 00276AC8 38 A1 00 F0 */ addi r5, r1, 0xf0
/* 80279B6C 00276ACC 3A E0 00 01 */ li r23, 1
/* 80279B70 00276AD0 90 C1 00 F4 */ stw r6, 0xf4(r1)
/* 80279B74 00276AD4 81 84 00 00 */ lwz r12, 0(r4)
/* 80279B78 00276AD8 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80279B7C 00276ADC 7D 89 03 A6 */ mtctr r12
/* 80279B80 00276AE0 4E 80 04 21 */ bctrl
/* 80279B84 00276AE4 38 61 00 E0 */ addi r3, r1, 0xe0
/* 80279B88 00276AE8 38 81 00 E8 */ addi r4, r1, 0xe8
/* 80279B8C 00276AEC 3B 40 00 01 */ li r26, 1
/* 80279B90 00276AF0 48 0C 73 19 */ bl __ct__6CTokenFRC6CToken
/* 80279B94 00276AF4 7F C4 F3 78 */ mr r4, r30
/* 80279B98 00276AF8 38 61 00 78 */ addi r3, r1, 0x78
/* 80279B9C 00276AFC 3B 20 00 01 */ li r25, 1
/* 80279BA0 00276B00 4B DD 35 3D */ bl AllocateUniqueId__13CStateManagerFv
/* 80279BA4 00276B04 A0 01 00 78 */ lhz r0, 0x78(r1)
/* 80279BA8 00276B08 38 61 02 80 */ addi r3, r1, 0x280
/* 80279BAC 00276B0C C0 22 BC 64 */ lfs f1, lbl_805AD984@sda21(r2)
/* 80279BB0 00276B10 38 81 02 2C */ addi r4, r1, 0x22c
/* 80279BB4 00276B14 B0 01 00 7C */ sth r0, 0x7c(r1)
/* 80279BB8 00276B18 38 A1 02 38 */ addi r5, r1, 0x238
/* 80279BBC 00276B1C C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80279BC0 00276B20 80 1F 00 04 */ lwz r0, 4(r31)
/* 80279BC4 00276B24 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 80279BC8 00276B28 80 DE 08 4C */ lwz r6, 0x84c(r30)
/* 80279BCC 00276B2C 90 01 00 A0 */ stw r0, 0xa0(r1)
/* 80279BD0 00276B30 A0 06 00 08 */ lhz r0, 8(r6)
/* 80279BD4 00276B34 B0 01 00 80 */ sth r0, 0x80(r1)
/* 80279BD8 00276B38 B0 01 00 84 */ sth r0, 0x84(r1)
/* 80279BDC 00276B3C D0 21 02 2C */ stfs f1, 0x22c(r1)
/* 80279BE0 00276B40 D0 21 02 30 */ stfs f1, 0x230(r1)
/* 80279BE4 00276B44 D0 21 02 34 */ stfs f1, 0x234(r1)
/* 80279BE8 00276B48 D0 01 02 38 */ stfs f0, 0x238(r1)
/* 80279BEC 00276B4C D0 01 02 3C */ stfs f0, 0x23c(r1)
/* 80279BF0 00276B50 D0 01 02 40 */ stfs f0, 0x240(r1)
/* 80279BF4 00276B54 48 0B E9 15 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f
/* 80279BF8 00276B58 38 01 04 F4 */ addi r0, r1, 0x4f4
/* 80279BFC 00276B5C 38 BF 09 40 */ addi r5, r31, 0x940
/* 80279C00 00276B60 90 01 00 08 */ stw r0, 8(r1)
/* 80279C04 00276B64 38 00 FF FF */ li r0, -1
/* 80279C08 00276B68 C0 42 BC E0 */ lfs f2, lbl_805ADA00@sda21(r2)
/* 80279C0C 00276B6C 38 81 00 B0 */ addi r4, r1, 0xb0
/* 80279C10 00276B70 90 A1 00 0C */ stw r5, 0xc(r1)
/* 80279C14 00276B74 38 A1 00 C8 */ addi r5, r1, 0xc8
/* 80279C18 00276B78 38 C1 00 E0 */ addi r6, r1, 0xe0
/* 80279C1C 00276B7C 38 E1 00 7C */ addi r7, r1, 0x7c
/* 80279C20 00276B80 90 61 00 10 */ stw r3, 0x10(r1)
/* 80279C24 00276B84 7F 63 DB 78 */ mr r3, r27
/* 80279C28 00276B88 39 01 00 A4 */ addi r8, r1, 0xa4
/* 80279C2C 00276B8C 39 21 00 84 */ addi r9, r1, 0x84
/* 80279C30 00276B90 81 7F 09 64 */ lwz r11, 0x964(r31)
/* 80279C34 00276B94 39 40 00 01 */ li r10, 1
/* 80279C38 00276B98 91 61 00 14 */ stw r11, 0x14(r1)
/* 80279C3C 00276B9C A1 7F 09 68 */ lhz r11, 0x968(r31)
/* 80279C40 00276BA0 91 61 00 18 */ stw r11, 0x18(r1)
/* 80279C44 00276BA4 A1 7F 09 6A */ lhz r11, 0x96a(r31)
/* 80279C48 00276BA8 91 61 00 1C */ stw r11, 0x1c(r1)
/* 80279C4C 00276BAC 90 01 00 20 */ stw r0, 0x20(r1)
/* 80279C50 00276BB0 C0 1F 09 60 */ lfs f0, 0x960(r31)
/* 80279C54 00276BB4 C0 3F 09 5C */ lfs f1, 0x95c(r31)
/* 80279C58 00276BB8 EC 42 00 32 */ fmuls f2, f2, f0
/* 80279C5C 00276BBC 4B F7 9D 9D */ bl "__ct__20CIceAttackProjectileF25TToken<15CGenDescription>25TToken<15CGenDescription>9TUniqueId9TUniqueIdbRC12CTransform4fRC11CDamageInfoRC6CAABoxff"
/* 80279C60 00276BC0 7C 7B 1B 78 */ mr r27, r3
lbl_80279C64:
/* 80279C64 00276BC4 7E A0 07 75 */ extsb. r0, r21
/* 80279C68 00276BC8 41 82 00 10 */ beq lbl_80279C78
/* 80279C6C 00276BCC 38 61 00 B0 */ addi r3, r1, 0xb0
/* 80279C70 00276BD0 38 80 00 00 */ li r4, 0
/* 80279C74 00276BD4 48 0C 71 CD */ bl __dt__6CTokenFv
lbl_80279C78:
/* 80279C78 00276BD8 7E C0 07 75 */ extsb. r0, r22
/* 80279C7C 00276BDC 41 82 00 10 */ beq lbl_80279C8C
/* 80279C80 00276BE0 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80279C84 00276BE4 38 80 FF FF */ li r4, -1
/* 80279C88 00276BE8 48 0C 71 B9 */ bl __dt__6CTokenFv
lbl_80279C8C:
/* 80279C8C 00276BEC 7E E0 07 75 */ extsb. r0, r23
/* 80279C90 00276BF0 41 82 00 10 */ beq lbl_80279CA0
/* 80279C94 00276BF4 38 61 00 C8 */ addi r3, r1, 0xc8
/* 80279C98 00276BF8 38 80 00 00 */ li r4, 0
/* 80279C9C 00276BFC 48 0C 71 A5 */ bl __dt__6CTokenFv
lbl_80279CA0:
/* 80279CA0 00276C00 7F 00 07 75 */ extsb. r0, r24
/* 80279CA4 00276C04 41 82 00 10 */ beq lbl_80279CB4
/* 80279CA8 00276C08 38 61 00 D0 */ addi r3, r1, 0xd0
/* 80279CAC 00276C0C 38 80 FF FF */ li r4, -1
/* 80279CB0 00276C10 48 0C 71 91 */ bl __dt__6CTokenFv
lbl_80279CB4:
/* 80279CB4 00276C14 7F 20 07 75 */ extsb. r0, r25
/* 80279CB8 00276C18 41 82 00 10 */ beq lbl_80279CC8
/* 80279CBC 00276C1C 38 61 00 E0 */ addi r3, r1, 0xe0
/* 80279CC0 00276C20 38 80 00 00 */ li r4, 0
/* 80279CC4 00276C24 48 0C 71 7D */ bl __dt__6CTokenFv
lbl_80279CC8:
/* 80279CC8 00276C28 7F 40 07 75 */ extsb. r0, r26
/* 80279CCC 00276C2C 41 82 00 10 */ beq lbl_80279CDC
/* 80279CD0 00276C30 38 61 00 E8 */ addi r3, r1, 0xe8
/* 80279CD4 00276C34 38 80 FF FF */ li r4, -1
/* 80279CD8 00276C38 48 0C 71 69 */ bl __dt__6CTokenFv
lbl_80279CDC:
/* 80279CDC 00276C3C 38 00 00 01 */ li r0, 1
/* 80279CE0 00276C40 7F C3 F3 78 */ mr r3, r30
/* 80279CE4 00276C44 98 1B 01 92 */ stb r0, 0x192(r27)
/* 80279CE8 00276C48 7F 64 DB 78 */ mr r4, r27
/* 80279CEC 00276C4C 4B DD 30 09 */ bl AddObject__13CStateManagerFP7CEntity
/* 80279CF0 00276C50 48 00 05 C4 */ b lbl_8027A2B4
lbl_80279CF4:
/* 80279CF4 00276C54 80 7F 0E B0 */ lwz r3, 0xeb0(r31)
/* 80279CF8 00276C58 54 60 07 BF */ clrlwi. r0, r3, 0x1e
/* 80279CFC 00276C5C 38 63 00 01 */ addi r3, r3, 1
/* 80279D00 00276C60 90 7F 0E B0 */ stw r3, 0xeb0(r31)
/* 80279D04 00276C64 40 82 02 DC */ bne lbl_80279FE0
/* 80279D08 00276C68 7F E4 FB 78 */ mr r4, r31
/* 80279D0C 00276C6C 38 61 03 A4 */ addi r3, r1, 0x3a4
/* 80279D10 00276C70 38 BC 00 3C */ addi r5, r28, 0x3c
/* 80279D14 00276C74 4B DF EC 65 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80279D18 00276C78 38 61 04 C4 */ addi r3, r1, 0x4c4
/* 80279D1C 00276C7C 38 81 03 A4 */ addi r4, r1, 0x3a4
/* 80279D20 00276C80 48 09 8E 55 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 80279D24 00276C84 C1 BF 00 58 */ lfs f13, 0x58(r31)
/* 80279D28 00276C88 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 80279D2C 00276C8C C1 9F 00 48 */ lfs f12, 0x48(r31)
/* 80279D30 00276C90 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l
/* 80279D34 00276C94 C0 02 BC 9C */ lfs f0, lbl_805AD9BC@sda21(r2)
/* 80279D38 00276C98 38 61 03 74 */ addi r3, r1, 0x374
/* 80279D3C 00276C9C C0 DF 00 38 */ lfs f6, 0x38(r31)
/* 80279D40 00276CA0 38 81 02 20 */ addi r4, r1, 0x220
/* 80279D44 00276CA4 ED 20 03 32 */ fmuls f9, f0, f12
/* 80279D48 00276CA8 C0 62 BC 80 */ lfs f3, lbl_805AD9A0@sda21(r2)
/* 80279D4C 00276CAC EC A0 01 B2 */ fmuls f5, f0, f6
/* 80279D50 00276CB0 C0 21 04 E8 */ lfs f1, 0x4e8(r1)
/* 80279D54 00276CB4 ED 00 03 72 */ fmuls f8, f0, f13
/* 80279D58 00276CB8 C0 01 04 C8 */ lfs f0, 0x4c8(r1)
/* 80279D5C 00276CBC C3 C1 04 D0 */ lfs f30, 0x4d0(r1)
/* 80279D60 00276CC0 EC 43 00 32 */ fmuls f2, f3, f0
/* 80279D64 00276CC4 C3 A1 04 E0 */ lfs f29, 0x4e0(r1)
/* 80279D68 00276CC8 EC E3 00 72 */ fmuls f7, f3, f1
/* 80279D6C 00276CCC C3 81 04 F0 */ lfs f28, 0x4f0(r1)
/* 80279D70 00276CD0 EC 9E 28 2A */ fadds f4, f30, f5
/* 80279D74 00276CD4 C0 01 04 D8 */ lfs f0, 0x4d8(r1)
/* 80279D78 00276CD8 ED 7D 48 2A */ fadds f11, f29, f9
/* 80279D7C 00276CDC D0 C1 01 D8 */ stfs f6, 0x1d8(r1)
/* 80279D80 00276CE0 EC 23 00 32 */ fmuls f1, f3, f0
/* 80279D84 00276CE4 38 A1 01 FC */ addi r5, r1, 0x1fc
/* 80279D88 00276CE8 ED 5C 40 2A */ fadds f10, f28, f8
/* 80279D8C 00276CEC D1 81 01 DC */ stfs f12, 0x1dc(r1)
/* 80279D90 00276CF0 EC 7C 38 2A */ fadds f3, f28, f7
/* 80279D94 00276CF4 D1 A1 01 E0 */ stfs f13, 0x1e0(r1)
/* 80279D98 00276CF8 EC 1E 10 2A */ fadds f0, f30, f2
/* 80279D9C 00276CFC EC DD 08 2A */ fadds f6, f29, f1
/* 80279DA0 00276D00 D0 A1 01 E4 */ stfs f5, 0x1e4(r1)
/* 80279DA4 00276D04 D1 21 01 E8 */ stfs f9, 0x1e8(r1)
/* 80279DA8 00276D08 D1 01 01 EC */ stfs f8, 0x1ec(r1)
/* 80279DAC 00276D0C D3 C1 01 F0 */ stfs f30, 0x1f0(r1)
/* 80279DB0 00276D10 D3 A1 01 F4 */ stfs f29, 0x1f4(r1)
/* 80279DB4 00276D14 D3 81 01 F8 */ stfs f28, 0x1f8(r1)
/* 80279DB8 00276D18 D0 81 01 FC */ stfs f4, 0x1fc(r1)
/* 80279DBC 00276D1C D1 61 02 00 */ stfs f11, 0x200(r1)
/* 80279DC0 00276D20 D1 41 02 04 */ stfs f10, 0x204(r1)
/* 80279DC4 00276D24 D0 41 02 08 */ stfs f2, 0x208(r1)
/* 80279DC8 00276D28 D0 21 02 0C */ stfs f1, 0x20c(r1)
/* 80279DCC 00276D2C D0 E1 02 10 */ stfs f7, 0x210(r1)
/* 80279DD0 00276D30 D3 C1 02 14 */ stfs f30, 0x214(r1)
/* 80279DD4 00276D34 D3 A1 02 18 */ stfs f29, 0x218(r1)
/* 80279DD8 00276D38 D3 81 02 1C */ stfs f28, 0x21c(r1)
/* 80279DDC 00276D3C D0 01 02 20 */ stfs f0, 0x220(r1)
/* 80279DE0 00276D40 D0 C1 02 24 */ stfs f6, 0x224(r1)
/* 80279DE4 00276D44 D0 61 02 28 */ stfs f3, 0x228(r1)
/* 80279DE8 00276D48 48 09 9D 29 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
/* 80279DEC 00276D4C 38 61 04 94 */ addi r3, r1, 0x494
/* 80279DF0 00276D50 38 81 03 74 */ addi r4, r1, 0x374
/* 80279DF4 00276D54 48 09 8D 81 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 80279DF8 00276D58 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 80279DFC 00276D5C C0 22 BC E4 */ lfs f1, lbl_805ADA04@sda21(r2)
/* 80279E00 00276D60 C0 42 BC A8 */ lfs f2, lbl_805AD9C8@sda21(r2)
/* 80279E04 00276D64 48 09 87 41 */ bl Range__9CRandom16Fff
/* 80279E08 00276D68 C0 02 BC E0 */ lfs f0, lbl_805ADA00@sda21(r2)
/* 80279E0C 00276D6C 38 61 04 94 */ addi r3, r1, 0x494
/* 80279E10 00276D70 38 81 00 9C */ addi r4, r1, 0x9c
/* 80279E14 00276D74 EC 00 00 72 */ fmuls f0, f0, f1
/* 80279E18 00276D78 D0 01 00 9C */ stfs f0, 0x9c(r1)
/* 80279E1C 00276D7C 48 09 96 A1 */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle
/* 80279E20 00276D80 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 80279E24 00276D84 3A A0 00 00 */ li r21, 0
/* 80279E28 00276D88 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 80279E2C 00276D8C 38 60 04 18 */ li r3, 0x418
/* 80279E30 00276D90 38 84 02 20 */ addi r4, r4, 0x220
/* 80279E34 00276D94 38 A0 00 00 */ li r5, 0
/* 80279E38 00276D98 48 09 BA 35 */ bl __nw__FUlPCcPCc
/* 80279E3C 00276D9C 7C 7A 1B 79 */ or. r26, r3, r3
/* 80279E40 00276DA0 41 82 00 F4 */ beq lbl_80279F34
/* 80279E44 00276DA4 C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 80279E48 00276DA8 38 00 00 00 */ li r0, 0
/* 80279E4C 00276DAC 98 01 01 D4 */ stb r0, 0x1d4(r1)
/* 80279E50 00276DB0 7F C4 F3 78 */ mr r4, r30
/* 80279E54 00276DB4 38 61 00 64 */ addi r3, r1, 0x64
/* 80279E58 00276DB8 3A A0 00 01 */ li r21, 1
/* 80279E5C 00276DBC D0 01 01 BC */ stfs f0, 0x1bc(r1)
/* 80279E60 00276DC0 D0 01 01 C0 */ stfs f0, 0x1c0(r1)
/* 80279E64 00276DC4 D0 01 01 C4 */ stfs f0, 0x1c4(r1)
/* 80279E68 00276DC8 A0 1F 0E AC */ lhz r0, 0xeac(r31)
/* 80279E6C 00276DCC B0 01 00 74 */ sth r0, 0x74(r1)
/* 80279E70 00276DD0 A0 BF 00 08 */ lhz r5, 8(r31)
/* 80279E74 00276DD4 B0 A1 00 70 */ sth r5, 0x70(r1)
/* 80279E78 00276DD8 80 1F 00 04 */ lwz r0, 4(r31)
/* 80279E7C 00276DDC B0 A1 00 6C */ sth r5, 0x6c(r1)
/* 80279E80 00276DE0 90 01 00 94 */ stw r0, 0x94(r1)
/* 80279E84 00276DE4 90 01 00 98 */ stw r0, 0x98(r1)
/* 80279E88 00276DE8 4B DD 32 55 */ bl AllocateUniqueId__13CStateManagerFv
/* 80279E8C 00276DEC A0 01 00 64 */ lhz r0, 0x64(r1)
/* 80279E90 00276DF0 7F E3 FB 78 */ mr r3, r31
/* 80279E94 00276DF4 B0 01 00 68 */ sth r0, 0x68(r1)
/* 80279E98 00276DF8 81 9F 00 00 */ lwz r12, 0(r31)
/* 80279E9C 00276DFC 81 8C 02 C0 */ lwz r12, 0x2c0(r12)
/* 80279EA0 00276E00 7D 89 03 A6 */ mtctr r12
/* 80279EA4 00276E04 4E 80 04 21 */ bctrl
/* 80279EA8 00276E08 7C 7B 1B 78 */ mr r27, r3
/* 80279EAC 00276E0C 7F E3 FB 78 */ mr r3, r31
/* 80279EB0 00276E10 81 9F 00 00 */ lwz r12, 0(r31)
/* 80279EB4 00276E14 81 8C 02 C0 */ lwz r12, 0x2c0(r12)
/* 80279EB8 00276E18 7D 89 03 A6 */ mtctr r12
/* 80279EBC 00276E1C 4E 80 04 21 */ bctrl
/* 80279EC0 00276E20 38 01 00 98 */ addi r0, r1, 0x98
/* 80279EC4 00276E24 7C 65 1B 78 */ mr r5, r3
/* 80279EC8 00276E28 90 01 00 08 */ stw r0, 8(r1)
/* 80279ECC 00276E2C 38 01 00 70 */ addi r0, r1, 0x70
/* 80279ED0 00276E30 3C 80 00 01 */ lis r4, 0x00008400@ha
/* 80279ED4 00276E34 38 7F 0E 70 */ addi r3, r31, 0xe70
/* 80279ED8 00276E38 90 01 00 0C */ stw r0, 0xc(r1)
/* 80279EDC 00276E3C 38 C4 84 00 */ addi r6, r4, 0x00008400@l
/* 80279EE0 00276E40 38 01 00 74 */ addi r0, r1, 0x74
/* 80279EE4 00276E44 38 81 01 BC */ addi r4, r1, 0x1bc
/* 80279EE8 00276E48 90 61 00 10 */ stw r3, 0x10(r1)
/* 80279EEC 00276E4C 39 81 01 C8 */ addi r12, r1, 0x1c8
/* 80279EF0 00276E50 A1 62 C5 FC */ lhz r11, kInternalInvalidSfxId__11CSfxManager@sda21(r2)
/* 80279EF4 00276E54 7F 43 D3 78 */ mr r3, r26
/* 80279EF8 00276E58 90 01 00 14 */ stw r0, 0x14(r1)
/* 80279EFC 00276E5C 38 00 00 00 */ li r0, 0
/* 80279F00 00276E60 38 E1 04 94 */ addi r7, r1, 0x494
/* 80279F04 00276E64 39 3B 00 0C */ addi r9, r27, 0xc
/* 80279F08 00276E68 90 C1 00 18 */ stw r6, 0x18(r1)
/* 80279F0C 00276E6C 39 41 00 68 */ addi r10, r1, 0x68
/* 80279F10 00276E70 38 C0 00 09 */ li r6, 9
/* 80279F14 00276E74 39 00 00 21 */ li r8, 0x21
/* 80279F18 00276E78 90 81 00 1C */ stw r4, 0x1c(r1)
/* 80279F1C 00276E7C 38 80 00 01 */ li r4, 1
/* 80279F20 00276E80 91 81 00 20 */ stw r12, 0x20(r1)
/* 80279F24 00276E84 91 61 00 24 */ stw r11, 0x24(r1)
/* 80279F28 00276E88 90 01 00 28 */ stw r0, 0x28(r1)
/* 80279F2C 00276E8C 48 02 67 99 */ bl "__ct__23CMetroidPrimeProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueIdUi9TUniqueIdUiRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb"
/* 80279F30 00276E90 7C 7A 1B 78 */ mr r26, r3
lbl_80279F34:
/* 80279F34 00276E94 7E A0 07 75 */ extsb. r0, r21
/* 80279F38 00276E98 7F 56 D3 78 */ mr r22, r26
/* 80279F3C 00276E9C 41 82 00 30 */ beq lbl_80279F6C
/* 80279F40 00276EA0 88 01 01 D4 */ lbz r0, 0x1d4(r1)
/* 80279F44 00276EA4 28 00 00 00 */ cmplwi r0, 0
/* 80279F48 00276EA8 41 82 00 1C */ beq lbl_80279F64
/* 80279F4C 00276EAC 34 61 01 C8 */ addic. r3, r1, 0x1c8
/* 80279F50 00276EB0 41 82 00 14 */ beq lbl_80279F64
/* 80279F54 00276EB4 28 03 00 00 */ cmplwi r3, 0
/* 80279F58 00276EB8 41 82 00 0C */ beq lbl_80279F64
/* 80279F5C 00276EBC 38 80 00 00 */ li r4, 0
/* 80279F60 00276EC0 48 0C 6E E1 */ bl __dt__6CTokenFv
lbl_80279F64:
/* 80279F64 00276EC4 38 00 00 00 */ li r0, 0
/* 80279F68 00276EC8 98 01 01 D4 */ stb r0, 0x1d4(r1)
lbl_80279F6C:
/* 80279F6C 00276ECC 28 16 00 00 */ cmplwi r22, 0
/* 80279F70 00276ED0 41 82 03 44 */ beq lbl_8027A2B4
/* 80279F74 00276ED4 7F C3 F3 78 */ mr r3, r30
/* 80279F78 00276ED8 7E C4 B3 78 */ mr r4, r22
/* 80279F7C 00276EDC 4B DD 2D 79 */ bl AddObject__13CStateManagerFP7CEntity
/* 80279F80 00276EE0 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 80279F84 00276EE4 3A B6 01 70 */ addi r21, r22, 0x170
/* 80279F88 00276EE8 C0 22 BC E8 */ lfs f1, lbl_805ADA08@sda21(r2)
/* 80279F8C 00276EEC C0 42 BC EC */ lfs f2, lbl_805ADA0C@sda21(r2)
/* 80279F90 00276EF0 48 09 85 B5 */ bl Range__9CRandom16Fff
/* 80279F94 00276EF4 FF C0 08 90 */ fmr f30, f1
/* 80279F98 00276EF8 7E A3 AB 78 */ mr r3, r21
/* 80279F9C 00276EFC 48 03 51 99 */ bl GetVelocity__17CProjectileWeaponCFv
/* 80279FA0 00276F00 C0 43 00 04 */ lfs f2, 4(r3)
/* 80279FA4 00276F04 38 81 01 B0 */ addi r4, r1, 0x1b0
/* 80279FA8 00276F08 C0 23 00 08 */ lfs f1, 8(r3)
/* 80279FAC 00276F0C C0 03 00 00 */ lfs f0, 0(r3)
/* 80279FB0 00276F10 EC 5E 00 B2 */ fmuls f2, f30, f2
/* 80279FB4 00276F14 EC 3E 00 72 */ fmuls f1, f30, f1
/* 80279FB8 00276F18 7E A3 AB 78 */ mr r3, r21
/* 80279FBC 00276F1C EC 1E 00 32 */ fmuls f0, f30, f0
/* 80279FC0 00276F20 D0 41 01 B4 */ stfs f2, 0x1b4(r1)
/* 80279FC4 00276F24 D0 01 01 B0 */ stfs f0, 0x1b0(r1)
/* 80279FC8 00276F28 D0 21 01 B8 */ stfs f1, 0x1b8(r1)
/* 80279FCC 00276F2C 48 03 51 71 */ bl SetVelocity__17CProjectileWeaponFRC9CVector3f
/* 80279FD0 00276F30 7E C3 B3 78 */ mr r3, r22
/* 80279FD4 00276F34 38 9F 0C A0 */ addi r4, r31, 0xca0
/* 80279FD8 00276F38 4B F9 9A F5 */ bl SetCameraShake__17CEnergyProjectileFRC16CCameraShakeData
/* 80279FDC 00276F3C 48 00 02 D8 */ b lbl_8027A2B4
lbl_80279FE0:
/* 80279FE0 00276F40 7F E4 FB 78 */ mr r4, r31
/* 80279FE4 00276F44 38 61 03 44 */ addi r3, r1, 0x344
/* 80279FE8 00276F48 38 BC 00 3C */ addi r5, r28, 0x3c
/* 80279FEC 00276F4C 4B DF E9 8D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 80279FF0 00276F50 38 61 04 64 */ addi r3, r1, 0x464
/* 80279FF4 00276F54 38 81 03 44 */ addi r4, r1, 0x344
/* 80279FF8 00276F58 48 09 8B 7D */ bl __ct__12CTransform4fFRC12CTransform4f
/* 80279FFC 00276F5C C1 BF 00 58 */ lfs f13, 0x58(r31)
/* 8027A000 00276F60 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha
/* 8027A004 00276F64 C1 9F 00 48 */ lfs f12, 0x48(r31)
/* 8027A008 00276F68 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l
/* 8027A00C 00276F6C C0 02 BC 9C */ lfs f0, lbl_805AD9BC@sda21(r2)
/* 8027A010 00276F70 38 61 03 14 */ addi r3, r1, 0x314
/* 8027A014 00276F74 C0 DF 00 38 */ lfs f6, 0x38(r31)
/* 8027A018 00276F78 38 81 01 A4 */ addi r4, r1, 0x1a4
/* 8027A01C 00276F7C ED 20 03 32 */ fmuls f9, f0, f12
/* 8027A020 00276F80 C0 62 BC 80 */ lfs f3, lbl_805AD9A0@sda21(r2)
/* 8027A024 00276F84 EC A0 01 B2 */ fmuls f5, f0, f6
/* 8027A028 00276F88 C0 21 04 88 */ lfs f1, 0x488(r1)
/* 8027A02C 00276F8C ED 00 03 72 */ fmuls f8, f0, f13
/* 8027A030 00276F90 C0 01 04 68 */ lfs f0, 0x468(r1)
/* 8027A034 00276F94 C3 81 04 70 */ lfs f28, 0x470(r1)
/* 8027A038 00276F98 EC 43 00 32 */ fmuls f2, f3, f0
/* 8027A03C 00276F9C C3 A1 04 80 */ lfs f29, 0x480(r1)
/* 8027A040 00276FA0 EC E3 00 72 */ fmuls f7, f3, f1
/* 8027A044 00276FA4 C3 C1 04 90 */ lfs f30, 0x490(r1)
/* 8027A048 00276FA8 EC 9C 28 2A */ fadds f4, f28, f5
/* 8027A04C 00276FAC C0 01 04 78 */ lfs f0, 0x478(r1)
/* 8027A050 00276FB0 ED 7D 48 2A */ fadds f11, f29, f9
/* 8027A054 00276FB4 D0 C1 01 5C */ stfs f6, 0x15c(r1)
/* 8027A058 00276FB8 EC 23 00 32 */ fmuls f1, f3, f0
/* 8027A05C 00276FBC 38 A1 01 80 */ addi r5, r1, 0x180
/* 8027A060 00276FC0 ED 5E 40 2A */ fadds f10, f30, f8
/* 8027A064 00276FC4 D1 81 01 60 */ stfs f12, 0x160(r1)
/* 8027A068 00276FC8 EC 7E 38 2A */ fadds f3, f30, f7
/* 8027A06C 00276FCC D1 A1 01 64 */ stfs f13, 0x164(r1)
/* 8027A070 00276FD0 EC 1C 10 2A */ fadds f0, f28, f2
/* 8027A074 00276FD4 EC DD 08 2A */ fadds f6, f29, f1
/* 8027A078 00276FD8 D0 A1 01 68 */ stfs f5, 0x168(r1)
/* 8027A07C 00276FDC D1 21 01 6C */ stfs f9, 0x16c(r1)
/* 8027A080 00276FE0 D1 01 01 70 */ stfs f8, 0x170(r1)
/* 8027A084 00276FE4 D3 81 01 74 */ stfs f28, 0x174(r1)
/* 8027A088 00276FE8 D3 A1 01 78 */ stfs f29, 0x178(r1)
/* 8027A08C 00276FEC D3 C1 01 7C */ stfs f30, 0x17c(r1)
/* 8027A090 00276FF0 D0 81 01 80 */ stfs f4, 0x180(r1)
/* 8027A094 00276FF4 D1 61 01 84 */ stfs f11, 0x184(r1)
/* 8027A098 00276FF8 D1 41 01 88 */ stfs f10, 0x188(r1)
/* 8027A09C 00276FFC D0 41 01 8C */ stfs f2, 0x18c(r1)
/* 8027A0A0 00277000 D0 21 01 90 */ stfs f1, 0x190(r1)
/* 8027A0A4 00277004 D0 E1 01 94 */ stfs f7, 0x194(r1)
/* 8027A0A8 00277008 D3 81 01 98 */ stfs f28, 0x198(r1)
/* 8027A0AC 0027700C D3 A1 01 9C */ stfs f29, 0x19c(r1)
/* 8027A0B0 00277010 D3 C1 01 A0 */ stfs f30, 0x1a0(r1)
/* 8027A0B4 00277014 D0 01 01 A4 */ stfs f0, 0x1a4(r1)
/* 8027A0B8 00277018 D0 C1 01 A8 */ stfs f6, 0x1a8(r1)
/* 8027A0BC 0027701C D0 61 01 AC */ stfs f3, 0x1ac(r1)
/* 8027A0C0 00277020 48 09 9A 51 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f
/* 8027A0C4 00277024 38 61 04 34 */ addi r3, r1, 0x434
/* 8027A0C8 00277028 38 81 03 14 */ addi r4, r1, 0x314
/* 8027A0CC 0027702C 48 09 8A A9 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 8027A0D0 00277030 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 8027A0D4 00277034 C0 22 BC E4 */ lfs f1, lbl_805ADA04@sda21(r2)
/* 8027A0D8 00277038 C0 42 BC A8 */ lfs f2, lbl_805AD9C8@sda21(r2)
/* 8027A0DC 0027703C 48 09 84 69 */ bl Range__9CRandom16Fff
/* 8027A0E0 00277040 C0 02 BC E0 */ lfs f0, lbl_805ADA00@sda21(r2)
/* 8027A0E4 00277044 38 61 04 34 */ addi r3, r1, 0x434
/* 8027A0E8 00277048 38 81 00 90 */ addi r4, r1, 0x90
/* 8027A0EC 0027704C EC 00 00 72 */ fmuls f0, f0, f1
/* 8027A0F0 00277050 D0 01 00 90 */ stfs f0, 0x90(r1)
/* 8027A0F4 00277054 48 09 93 C9 */ bl RotateLocalZ__12CTransform4fFRC9CRelAngle
/* 8027A0F8 00277058 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027A0FC 0027705C 3A A0 00 00 */ li r21, 0
/* 8027A100 00277060 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027A104 00277064 38 60 03 D8 */ li r3, 0x3d8
/* 8027A108 00277068 38 84 02 20 */ addi r4, r4, 0x220
/* 8027A10C 0027706C 38 A0 00 00 */ li r5, 0
/* 8027A110 00277070 48 09 B7 5D */ bl __nw__FUlPCcPCc
/* 8027A114 00277074 7C 7A 1B 79 */ or. r26, r3, r3
/* 8027A118 00277078 41 82 00 F0 */ beq lbl_8027A208
/* 8027A11C 0027707C C0 02 BC 30 */ lfs f0, lbl_805AD950@sda21(r2)
/* 8027A120 00277080 38 00 00 00 */ li r0, 0
/* 8027A124 00277084 98 01 01 58 */ stb r0, 0x158(r1)
/* 8027A128 00277088 7F C4 F3 78 */ mr r4, r30
/* 8027A12C 0027708C 38 61 00 50 */ addi r3, r1, 0x50
/* 8027A130 00277090 3A A0 00 01 */ li r21, 1
/* 8027A134 00277094 D0 01 01 40 */ stfs f0, 0x140(r1)
/* 8027A138 00277098 D0 01 01 44 */ stfs f0, 0x144(r1)
/* 8027A13C 0027709C D0 01 01 48 */ stfs f0, 0x148(r1)
/* 8027A140 002770A0 A0 1F 0E AC */ lhz r0, 0xeac(r31)
/* 8027A144 002770A4 B0 01 00 60 */ sth r0, 0x60(r1)
/* 8027A148 002770A8 A0 BF 00 08 */ lhz r5, 8(r31)
/* 8027A14C 002770AC B0 A1 00 5C */ sth r5, 0x5c(r1)
/* 8027A150 002770B0 80 1F 00 04 */ lwz r0, 4(r31)
/* 8027A154 002770B4 B0 A1 00 58 */ sth r5, 0x58(r1)
/* 8027A158 002770B8 90 01 00 88 */ stw r0, 0x88(r1)
/* 8027A15C 002770BC 90 01 00 8C */ stw r0, 0x8c(r1)
/* 8027A160 002770C0 4B DD 2F 7D */ bl AllocateUniqueId__13CStateManagerFv
/* 8027A164 002770C4 A0 01 00 50 */ lhz r0, 0x50(r1)
/* 8027A168 002770C8 7F E3 FB 78 */ mr r3, r31
/* 8027A16C 002770CC B0 01 00 54 */ sth r0, 0x54(r1)
/* 8027A170 002770D0 81 9F 00 00 */ lwz r12, 0(r31)
/* 8027A174 002770D4 81 8C 02 C0 */ lwz r12, 0x2c0(r12)
/* 8027A178 002770D8 7D 89 03 A6 */ mtctr r12
/* 8027A17C 002770DC 4E 80 04 21 */ bctrl
/* 8027A180 002770E0 7C 7B 1B 78 */ mr r27, r3
/* 8027A184 002770E4 7F E3 FB 78 */ mr r3, r31
/* 8027A188 002770E8 81 9F 00 00 */ lwz r12, 0(r31)
/* 8027A18C 002770EC 81 8C 02 C0 */ lwz r12, 0x2c0(r12)
/* 8027A190 002770F0 7D 89 03 A6 */ mtctr r12
/* 8027A194 002770F4 4E 80 04 21 */ bctrl
/* 8027A198 002770F8 38 01 00 8C */ addi r0, r1, 0x8c
/* 8027A19C 002770FC 3C 80 00 01 */ lis r4, 0x00008400@ha
/* 8027A1A0 00277100 90 01 00 08 */ stw r0, 8(r1)
/* 8027A1A4 00277104 38 01 00 5C */ addi r0, r1, 0x5c
/* 8027A1A8 00277108 7C 65 1B 78 */ mr r5, r3
/* 8027A1AC 0027710C 38 64 84 00 */ addi r3, r4, 0x00008400@l
/* 8027A1B0 00277110 90 01 00 0C */ stw r0, 0xc(r1)
/* 8027A1B4 00277114 38 01 00 60 */ addi r0, r1, 0x60
/* 8027A1B8 00277118 39 80 00 00 */ li r12, 0
/* 8027A1BC 0027711C 38 C1 01 40 */ addi r6, r1, 0x140
/* 8027A1C0 00277120 90 01 00 10 */ stw r0, 0x10(r1)
/* 8027A1C4 00277124 39 61 01 4C */ addi r11, r1, 0x14c
/* 8027A1C8 00277128 A0 02 C5 FC */ lhz r0, kInternalInvalidSfxId__11CSfxManager@sda21(r2)
/* 8027A1CC 0027712C 38 E1 04 34 */ addi r7, r1, 0x434
/* 8027A1D0 00277130 90 61 00 14 */ stw r3, 0x14(r1)
/* 8027A1D4 00277134 7F 43 D3 78 */ mr r3, r26
/* 8027A1D8 00277138 39 3B 00 0C */ addi r9, r27, 0xc
/* 8027A1DC 0027713C 39 41 00 54 */ addi r10, r1, 0x54
/* 8027A1E0 00277140 91 81 00 18 */ stw r12, 0x18(r1)
/* 8027A1E4 00277144 38 80 00 01 */ li r4, 1
/* 8027A1E8 00277148 39 00 00 21 */ li r8, 0x21
/* 8027A1EC 0027714C 90 C1 00 1C */ stw r6, 0x1c(r1)
/* 8027A1F0 00277150 38 C0 00 09 */ li r6, 9
/* 8027A1F4 00277154 91 61 00 20 */ stw r11, 0x20(r1)
/* 8027A1F8 00277158 90 01 00 24 */ stw r0, 0x24(r1)
/* 8027A1FC 0027715C 91 81 00 28 */ stw r12, 0x28(r1)
/* 8027A200 00277160 4B F9 B4 99 */ bl "__ct__17CEnergyProjectileFbRC28TToken<18CWeaponDescription>11EWeaponTypeRC12CTransform4f14EMaterialTypesRC11CDamageInfo9TUniqueId7TAreaId9TUniqueId9TUniqueIdUibRC9CVector3fRCQ24rstl50optional_object<31TLockedToken<15CGenDescription>>sb"
/* 8027A204 00277164 7C 7A 1B 78 */ mr r26, r3
lbl_8027A208:
/* 8027A208 00277168 7E A0 07 75 */ extsb. r0, r21
/* 8027A20C 0027716C 41 82 00 30 */ beq lbl_8027A23C
/* 8027A210 00277170 88 01 01 58 */ lbz r0, 0x158(r1)
/* 8027A214 00277174 28 00 00 00 */ cmplwi r0, 0
/* 8027A218 00277178 41 82 00 1C */ beq lbl_8027A234
/* 8027A21C 0027717C 34 61 01 4C */ addic. r3, r1, 0x14c
/* 8027A220 00277180 41 82 00 14 */ beq lbl_8027A234
/* 8027A224 00277184 28 03 00 00 */ cmplwi r3, 0
/* 8027A228 00277188 41 82 00 0C */ beq lbl_8027A234
/* 8027A22C 0027718C 38 80 00 00 */ li r4, 0
/* 8027A230 00277190 48 0C 6C 11 */ bl __dt__6CTokenFv
lbl_8027A234:
/* 8027A234 00277194 38 00 00 00 */ li r0, 0
/* 8027A238 00277198 98 01 01 58 */ stb r0, 0x158(r1)
lbl_8027A23C:
/* 8027A23C 0027719C 28 1A 00 00 */ cmplwi r26, 0
/* 8027A240 002771A0 41 82 00 74 */ beq lbl_8027A2B4
/* 8027A244 002771A4 7F C3 F3 78 */ mr r3, r30
/* 8027A248 002771A8 7F 44 D3 78 */ mr r4, r26
/* 8027A24C 002771AC 4B DD 2A A9 */ bl AddObject__13CStateManagerFP7CEntity
/* 8027A250 002771B0 80 7E 09 00 */ lwz r3, 0x900(r30)
/* 8027A254 002771B4 3A BA 01 70 */ addi r21, r26, 0x170
/* 8027A258 002771B8 C0 22 BC E8 */ lfs f1, lbl_805ADA08@sda21(r2)
/* 8027A25C 002771BC C0 42 BC F0 */ lfs f2, lbl_805ADA10@sda21(r2)
/* 8027A260 002771C0 48 09 82 E5 */ bl Range__9CRandom16Fff
/* 8027A264 002771C4 FF C0 08 90 */ fmr f30, f1
/* 8027A268 002771C8 7E A3 AB 78 */ mr r3, r21
/* 8027A26C 002771CC 48 03 4E C9 */ bl GetVelocity__17CProjectileWeaponCFv
/* 8027A270 002771D0 C0 43 00 04 */ lfs f2, 4(r3)
/* 8027A274 002771D4 38 81 01 34 */ addi r4, r1, 0x134
/* 8027A278 002771D8 C0 23 00 08 */ lfs f1, 8(r3)
/* 8027A27C 002771DC C0 03 00 00 */ lfs f0, 0(r3)
/* 8027A280 002771E0 EC 5E 00 B2 */ fmuls f2, f30, f2
/* 8027A284 002771E4 EC 3E 00 72 */ fmuls f1, f30, f1
/* 8027A288 002771E8 7E A3 AB 78 */ mr r3, r21
/* 8027A28C 002771EC EC 1E 00 32 */ fmuls f0, f30, f0
/* 8027A290 002771F0 D0 41 01 38 */ stfs f2, 0x138(r1)
/* 8027A294 002771F4 D0 01 01 34 */ stfs f0, 0x134(r1)
/* 8027A298 002771F8 D0 21 01 3C */ stfs f1, 0x13c(r1)
/* 8027A29C 002771FC 48 03 4E A1 */ bl SetVelocity__17CProjectileWeaponFRC9CVector3f
/* 8027A2A0 00277200 7F 43 D3 78 */ mr r3, r26
/* 8027A2A4 00277204 38 9F 0C A0 */ addi r4, r31, 0xca0
/* 8027A2A8 00277208 4B F9 98 25 */ bl SetCameraShake__17CEnergyProjectileFRC16CCameraShakeData
/* 8027A2AC 0027720C 48 00 00 08 */ b lbl_8027A2B4
lbl_8027A2B0:
/* 8027A2B0 00277210 4B FF 97 B5 */ bl sub_80273a64
lbl_8027A2B4:
/* 8027A2B4 00277214 3B 40 00 01 */ li r26, 1
/* 8027A2B8 00277218 48 00 09 90 */ b lbl_8027AC48
lbl_8027A2BC:
/* 8027A2BC 0027721C 80 1F 09 2C */ lwz r0, 0x92c(r31)
/* 8027A2C0 00277220 2C 00 00 0B */ cmpwi r0, 0xb
/* 8027A2C4 00277224 41 82 00 20 */ beq lbl_8027A2E4
/* 8027A2C8 00277228 40 80 00 34 */ bge lbl_8027A2FC
/* 8027A2CC 0027722C 2C 00 00 07 */ cmpwi r0, 7
/* 8027A2D0 00277230 41 82 00 08 */ beq lbl_8027A2D8
/* 8027A2D4 00277234 48 00 00 28 */ b lbl_8027A2FC
lbl_8027A2D8:
/* 8027A2D8 00277238 38 A0 00 01 */ li r5, 1
/* 8027A2DC 0027723C 4B FF D0 A5 */ bl sub_80277380
/* 8027A2E0 00277240 48 00 00 1C */ b lbl_8027A2FC
lbl_8027A2E4:
/* 8027A2E4 00277244 38 A0 00 01 */ li r5, 1
/* 8027A2E8 00277248 4B FF B2 C5 */ bl sub_802755ac
/* 8027A2EC 0027724C 88 1F 10 54 */ lbz r0, 0x1054(r31)
/* 8027A2F0 00277250 38 60 00 01 */ li r3, 1
/* 8027A2F4 00277254 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 8027A2F8 00277258 98 1F 10 54 */ stb r0, 0x1054(r31)
lbl_8027A2FC:
/* 8027A2FC 0027725C 3B 40 00 01 */ li r26, 1
/* 8027A300 00277260 48 00 09 48 */ b lbl_8027AC48
lbl_8027A304:
/* 8027A304 00277264 80 1F 09 2C */ lwz r0, 0x92c(r31)
/* 8027A308 00277268 2C 00 00 0B */ cmpwi r0, 0xb
/* 8027A30C 0027726C 41 82 00 20 */ beq lbl_8027A32C
/* 8027A310 00277270 40 80 09 38 */ bge lbl_8027AC48
/* 8027A314 00277274 2C 00 00 07 */ cmpwi r0, 7
/* 8027A318 00277278 41 82 00 08 */ beq lbl_8027A320
/* 8027A31C 0027727C 48 00 09 2C */ b lbl_8027AC48
lbl_8027A320:
/* 8027A320 00277280 38 A0 00 00 */ li r5, 0
/* 8027A324 00277284 4B FF D0 5D */ bl sub_80277380
/* 8027A328 00277288 48 00 09 20 */ b lbl_8027AC48
lbl_8027A32C:
/* 8027A32C 0027728C 38 A0 00 00 */ li r5, 0
/* 8027A330 00277290 4B FF B2 7D */ bl sub_802755ac
/* 8027A334 00277294 48 00 09 14 */ b lbl_8027AC48
lbl_8027A338:
/* 8027A338 00277298 38 61 05 54 */ addi r3, r1, 0x554
/* 8027A33C 0027729C 38 9F 10 8C */ addi r4, r31, 0x108c
/* 8027A340 002772A0 4B D9 0A 69 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027A344 002772A4 80 1F 09 2C */ lwz r0, 0x92c(r31)
/* 8027A348 002772A8 2C 00 00 09 */ cmpwi r0, 9
/* 8027A34C 002772AC 41 82 01 C0 */ beq lbl_8027A50C
/* 8027A350 002772B0 40 80 00 1C */ bge lbl_8027A36C
/* 8027A354 002772B4 2C 00 00 01 */ cmpwi r0, 1
/* 8027A358 002772B8 41 82 04 DC */ beq lbl_8027A834
/* 8027A35C 002772BC 40 80 07 F4 */ bge lbl_8027AB50
/* 8027A360 002772C0 2C 00 00 00 */ cmpwi r0, 0
/* 8027A364 002772C4 40 80 00 14 */ bge lbl_8027A378
/* 8027A368 002772C8 48 00 07 E8 */ b lbl_8027AB50
lbl_8027A36C:
/* 8027A36C 002772CC 2C 00 00 0B */ cmpwi r0, 0xb
/* 8027A370 002772D0 40 80 07 E0 */ bge lbl_8027AB50
/* 8027A374 002772D4 48 00 03 2C */ b lbl_8027A6A0
lbl_8027A378:
/* 8027A378 002772D8 C0 1F 10 8C */ lfs f0, 0x108c(r31)
/* 8027A37C 002772DC D0 01 05 54 */ stfs f0, 0x554(r1)
/* 8027A380 002772E0 C0 1F 10 90 */ lfs f0, 0x1090(r31)
/* 8027A384 002772E4 D0 01 05 58 */ stfs f0, 0x558(r1)
/* 8027A388 002772E8 80 1F 10 98 */ lwz r0, 0x1098(r31)
/* 8027A38C 002772EC 90 01 05 60 */ stw r0, 0x560(r1)
/* 8027A390 002772F0 80 7F 10 9C */ lwz r3, 0x109c(r31)
/* 8027A394 002772F4 80 1F 10 A0 */ lwz r0, 0x10a0(r31)
/* 8027A398 002772F8 90 61 05 64 */ stw r3, 0x564(r1)
/* 8027A39C 002772FC 90 01 05 68 */ stw r0, 0x568(r1)
/* 8027A3A0 00277300 80 7F 10 A4 */ lwz r3, 0x10a4(r31)
/* 8027A3A4 00277304 80 1F 10 A8 */ lwz r0, 0x10a8(r31)
/* 8027A3A8 00277308 90 61 05 6C */ stw r3, 0x56c(r1)
/* 8027A3AC 0027730C 90 01 05 70 */ stw r0, 0x570(r1)
/* 8027A3B0 00277310 80 7F 10 AC */ lwz r3, 0x10ac(r31)
/* 8027A3B4 00277314 80 1F 10 B0 */ lwz r0, 0x10b0(r31)
/* 8027A3B8 00277318 90 61 05 74 */ stw r3, 0x574(r1)
/* 8027A3BC 0027731C 90 01 05 78 */ stw r0, 0x578(r1)
/* 8027A3C0 00277320 80 7F 10 B4 */ lwz r3, 0x10b4(r31)
/* 8027A3C4 00277324 80 1F 10 B8 */ lwz r0, 0x10b8(r31)
/* 8027A3C8 00277328 90 61 05 7C */ stw r3, 0x57c(r1)
/* 8027A3CC 0027732C 90 01 05 80 */ stw r0, 0x580(r1)
/* 8027A3D0 00277330 80 7F 10 BC */ lwz r3, 0x10bc(r31)
/* 8027A3D4 00277334 80 1F 10 C0 */ lwz r0, 0x10c0(r31)
/* 8027A3D8 00277338 90 61 05 84 */ stw r3, 0x584(r1)
/* 8027A3DC 0027733C 90 01 05 88 */ stw r0, 0x588(r1)
/* 8027A3E0 00277340 80 7F 10 C4 */ lwz r3, 0x10c4(r31)
/* 8027A3E4 00277344 80 1F 10 C8 */ lwz r0, 0x10c8(r31)
/* 8027A3E8 00277348 90 61 05 8C */ stw r3, 0x58c(r1)
/* 8027A3EC 0027734C 90 01 05 90 */ stw r0, 0x590(r1)
/* 8027A3F0 00277350 C0 1F 10 CC */ lfs f0, 0x10cc(r31)
/* 8027A3F4 00277354 D0 01 05 94 */ stfs f0, 0x594(r1)
/* 8027A3F8 00277358 80 1F 10 D4 */ lwz r0, 0x10d4(r31)
/* 8027A3FC 0027735C 90 01 05 9C */ stw r0, 0x59c(r1)
/* 8027A400 00277360 80 7F 10 D8 */ lwz r3, 0x10d8(r31)
/* 8027A404 00277364 80 1F 10 DC */ lwz r0, 0x10dc(r31)
/* 8027A408 00277368 90 61 05 A0 */ stw r3, 0x5a0(r1)
/* 8027A40C 0027736C 90 01 05 A4 */ stw r0, 0x5a4(r1)
/* 8027A410 00277370 80 7F 10 E0 */ lwz r3, 0x10e0(r31)
/* 8027A414 00277374 80 1F 10 E4 */ lwz r0, 0x10e4(r31)
/* 8027A418 00277378 90 61 05 A8 */ stw r3, 0x5a8(r1)
/* 8027A41C 0027737C 90 01 05 AC */ stw r0, 0x5ac(r1)
/* 8027A420 00277380 80 7F 10 E8 */ lwz r3, 0x10e8(r31)
/* 8027A424 00277384 80 1F 10 EC */ lwz r0, 0x10ec(r31)
/* 8027A428 00277388 90 61 05 B0 */ stw r3, 0x5b0(r1)
/* 8027A42C 0027738C 90 01 05 B4 */ stw r0, 0x5b4(r1)
/* 8027A430 00277390 80 7F 10 F0 */ lwz r3, 0x10f0(r31)
/* 8027A434 00277394 80 1F 10 F4 */ lwz r0, 0x10f4(r31)
/* 8027A438 00277398 90 61 05 B8 */ stw r3, 0x5b8(r1)
/* 8027A43C 0027739C 90 01 05 BC */ stw r0, 0x5bc(r1)
/* 8027A440 002773A0 80 7F 10 F8 */ lwz r3, 0x10f8(r31)
/* 8027A444 002773A4 80 1F 10 FC */ lwz r0, 0x10fc(r31)
/* 8027A448 002773A8 90 61 05 C0 */ stw r3, 0x5c0(r1)
/* 8027A44C 002773AC 90 01 05 C4 */ stw r0, 0x5c4(r1)
/* 8027A450 002773B0 80 7F 11 00 */ lwz r3, 0x1100(r31)
/* 8027A454 002773B4 80 1F 11 04 */ lwz r0, 0x1104(r31)
/* 8027A458 002773B8 90 61 05 C8 */ stw r3, 0x5c8(r1)
/* 8027A45C 002773BC 90 01 05 CC */ stw r0, 0x5cc(r1)
/* 8027A460 002773C0 C0 1F 11 08 */ lfs f0, 0x1108(r31)
/* 8027A464 002773C4 D0 01 05 D0 */ stfs f0, 0x5d0(r1)
/* 8027A468 002773C8 80 1F 11 10 */ lwz r0, 0x1110(r31)
/* 8027A46C 002773CC 90 01 05 D8 */ stw r0, 0x5d8(r1)
/* 8027A470 002773D0 80 7F 11 14 */ lwz r3, 0x1114(r31)
/* 8027A474 002773D4 80 1F 11 18 */ lwz r0, 0x1118(r31)
/* 8027A478 002773D8 90 61 05 DC */ stw r3, 0x5dc(r1)
/* 8027A47C 002773DC 90 01 05 E0 */ stw r0, 0x5e0(r1)
/* 8027A480 002773E0 80 7F 11 1C */ lwz r3, 0x111c(r31)
/* 8027A484 002773E4 80 1F 11 20 */ lwz r0, 0x1120(r31)
/* 8027A488 002773E8 90 61 05 E4 */ stw r3, 0x5e4(r1)
/* 8027A48C 002773EC 90 01 05 E8 */ stw r0, 0x5e8(r1)
/* 8027A490 002773F0 80 7F 11 24 */ lwz r3, 0x1124(r31)
/* 8027A494 002773F4 80 1F 11 28 */ lwz r0, 0x1128(r31)
/* 8027A498 002773F8 90 61 05 EC */ stw r3, 0x5ec(r1)
/* 8027A49C 002773FC 90 01 05 F0 */ stw r0, 0x5f0(r1)
/* 8027A4A0 00277400 80 7F 11 2C */ lwz r3, 0x112c(r31)
/* 8027A4A4 00277404 80 1F 11 30 */ lwz r0, 0x1130(r31)
/* 8027A4A8 00277408 90 61 05 F4 */ stw r3, 0x5f4(r1)
/* 8027A4AC 0027740C 90 01 05 F8 */ stw r0, 0x5f8(r1)
/* 8027A4B0 00277410 80 7F 11 34 */ lwz r3, 0x1134(r31)
/* 8027A4B4 00277414 80 1F 11 38 */ lwz r0, 0x1138(r31)
/* 8027A4B8 00277418 90 61 05 FC */ stw r3, 0x5fc(r1)
/* 8027A4BC 0027741C 90 01 06 00 */ stw r0, 0x600(r1)
/* 8027A4C0 00277420 80 7F 11 3C */ lwz r3, 0x113c(r31)
/* 8027A4C4 00277424 80 1F 11 40 */ lwz r0, 0x1140(r31)
/* 8027A4C8 00277428 90 61 06 04 */ stw r3, 0x604(r1)
/* 8027A4CC 0027742C 90 01 06 08 */ stw r0, 0x608(r1)
/* 8027A4D0 00277430 C0 1F 11 44 */ lfs f0, 0x1144(r31)
/* 8027A4D4 00277434 D0 01 06 0C */ stfs f0, 0x60c(r1)
/* 8027A4D8 00277438 80 1F 11 48 */ lwz r0, 0x1148(r31)
/* 8027A4DC 0027743C 90 01 06 10 */ stw r0, 0x610(r1)
/* 8027A4E0 00277440 80 1F 11 4C */ lwz r0, 0x114c(r31)
/* 8027A4E4 00277444 90 01 06 14 */ stw r0, 0x614(r1)
/* 8027A4E8 00277448 80 7F 11 50 */ lwz r3, 0x1150(r31)
/* 8027A4EC 0027744C 80 1F 11 54 */ lwz r0, 0x1154(r31)
/* 8027A4F0 00277450 90 61 06 18 */ stw r3, 0x618(r1)
/* 8027A4F4 00277454 90 01 06 1C */ stw r0, 0x61c(r1)
/* 8027A4F8 00277458 80 1F 11 58 */ lwz r0, 0x1158(r31)
/* 8027A4FC 0027745C 90 01 06 20 */ stw r0, 0x620(r1)
/* 8027A500 00277460 C0 1F 11 5C */ lfs f0, 0x115c(r31)
/* 8027A504 00277464 D0 01 06 24 */ stfs f0, 0x624(r1)
/* 8027A508 00277468 48 00 06 48 */ b lbl_8027AB50
lbl_8027A50C:
/* 8027A50C 0027746C C0 1F 13 68 */ lfs f0, 0x1368(r31)
/* 8027A510 00277470 D0 01 05 54 */ stfs f0, 0x554(r1)
/* 8027A514 00277474 C0 1F 13 6C */ lfs f0, 0x136c(r31)
/* 8027A518 00277478 D0 01 05 58 */ stfs f0, 0x558(r1)
/* 8027A51C 0027747C 80 1F 13 74 */ lwz r0, 0x1374(r31)
/* 8027A520 00277480 90 01 05 60 */ stw r0, 0x560(r1)
/* 8027A524 00277484 80 7F 13 78 */ lwz r3, 0x1378(r31)
/* 8027A528 00277488 80 1F 13 7C */ lwz r0, 0x137c(r31)
/* 8027A52C 0027748C 90 61 05 64 */ stw r3, 0x564(r1)
/* 8027A530 00277490 90 01 05 68 */ stw r0, 0x568(r1)
/* 8027A534 00277494 80 7F 13 80 */ lwz r3, 0x1380(r31)
/* 8027A538 00277498 80 1F 13 84 */ lwz r0, 0x1384(r31)
/* 8027A53C 0027749C 90 61 05 6C */ stw r3, 0x56c(r1)
/* 8027A540 002774A0 90 01 05 70 */ stw r0, 0x570(r1)
/* 8027A544 002774A4 80 7F 13 88 */ lwz r3, 0x1388(r31)
/* 8027A548 002774A8 80 1F 13 8C */ lwz r0, 0x138c(r31)
/* 8027A54C 002774AC 90 61 05 74 */ stw r3, 0x574(r1)
/* 8027A550 002774B0 90 01 05 78 */ stw r0, 0x578(r1)
/* 8027A554 002774B4 80 7F 13 90 */ lwz r3, 0x1390(r31)
/* 8027A558 002774B8 80 1F 13 94 */ lwz r0, 0x1394(r31)
/* 8027A55C 002774BC 90 61 05 7C */ stw r3, 0x57c(r1)
/* 8027A560 002774C0 90 01 05 80 */ stw r0, 0x580(r1)
/* 8027A564 002774C4 80 7F 13 98 */ lwz r3, 0x1398(r31)
/* 8027A568 002774C8 80 1F 13 9C */ lwz r0, 0x139c(r31)
/* 8027A56C 002774CC 90 61 05 84 */ stw r3, 0x584(r1)
/* 8027A570 002774D0 90 01 05 88 */ stw r0, 0x588(r1)
/* 8027A574 002774D4 80 7F 13 A0 */ lwz r3, 0x13a0(r31)
/* 8027A578 002774D8 80 1F 13 A4 */ lwz r0, 0x13a4(r31)
/* 8027A57C 002774DC 90 61 05 8C */ stw r3, 0x58c(r1)
/* 8027A580 002774E0 90 01 05 90 */ stw r0, 0x590(r1)
/* 8027A584 002774E4 C0 1F 13 A8 */ lfs f0, 0x13a8(r31)
/* 8027A588 002774E8 D0 01 05 94 */ stfs f0, 0x594(r1)
/* 8027A58C 002774EC 80 1F 13 B0 */ lwz r0, 0x13b0(r31)
/* 8027A590 002774F0 90 01 05 9C */ stw r0, 0x59c(r1)
/* 8027A594 002774F4 80 7F 13 B4 */ lwz r3, 0x13b4(r31)
/* 8027A598 002774F8 80 1F 13 B8 */ lwz r0, 0x13b8(r31)
/* 8027A59C 002774FC 90 61 05 A0 */ stw r3, 0x5a0(r1)
/* 8027A5A0 00277500 90 01 05 A4 */ stw r0, 0x5a4(r1)
/* 8027A5A4 00277504 80 7F 13 BC */ lwz r3, 0x13bc(r31)
/* 8027A5A8 00277508 80 1F 13 C0 */ lwz r0, 0x13c0(r31)
/* 8027A5AC 0027750C 90 61 05 A8 */ stw r3, 0x5a8(r1)
/* 8027A5B0 00277510 90 01 05 AC */ stw r0, 0x5ac(r1)
/* 8027A5B4 00277514 80 7F 13 C4 */ lwz r3, 0x13c4(r31)
/* 8027A5B8 00277518 80 1F 13 C8 */ lwz r0, 0x13c8(r31)
/* 8027A5BC 0027751C 90 61 05 B0 */ stw r3, 0x5b0(r1)
/* 8027A5C0 00277520 90 01 05 B4 */ stw r0, 0x5b4(r1)
/* 8027A5C4 00277524 80 7F 13 CC */ lwz r3, 0x13cc(r31)
/* 8027A5C8 00277528 80 1F 13 D0 */ lwz r0, 0x13d0(r31)
/* 8027A5CC 0027752C 90 61 05 B8 */ stw r3, 0x5b8(r1)
/* 8027A5D0 00277530 90 01 05 BC */ stw r0, 0x5bc(r1)
/* 8027A5D4 00277534 80 7F 13 D4 */ lwz r3, 0x13d4(r31)
/* 8027A5D8 00277538 80 1F 13 D8 */ lwz r0, 0x13d8(r31)
/* 8027A5DC 0027753C 90 61 05 C0 */ stw r3, 0x5c0(r1)
/* 8027A5E0 00277540 90 01 05 C4 */ stw r0, 0x5c4(r1)
/* 8027A5E4 00277544 80 7F 13 DC */ lwz r3, 0x13dc(r31)
/* 8027A5E8 00277548 80 1F 13 E0 */ lwz r0, 0x13e0(r31)
/* 8027A5EC 0027754C 90 61 05 C8 */ stw r3, 0x5c8(r1)
/* 8027A5F0 00277550 90 01 05 CC */ stw r0, 0x5cc(r1)
/* 8027A5F4 00277554 C0 1F 13 E4 */ lfs f0, 0x13e4(r31)
/* 8027A5F8 00277558 D0 01 05 D0 */ stfs f0, 0x5d0(r1)
/* 8027A5FC 0027755C 80 1F 13 EC */ lwz r0, 0x13ec(r31)
/* 8027A600 00277560 90 01 05 D8 */ stw r0, 0x5d8(r1)
/* 8027A604 00277564 80 7F 13 F0 */ lwz r3, 0x13f0(r31)
/* 8027A608 00277568 80 1F 13 F4 */ lwz r0, 0x13f4(r31)
/* 8027A60C 0027756C 90 61 05 DC */ stw r3, 0x5dc(r1)
/* 8027A610 00277570 90 01 05 E0 */ stw r0, 0x5e0(r1)
/* 8027A614 00277574 80 7F 13 F8 */ lwz r3, 0x13f8(r31)
/* 8027A618 00277578 80 1F 13 FC */ lwz r0, 0x13fc(r31)
/* 8027A61C 0027757C 90 61 05 E4 */ stw r3, 0x5e4(r1)
/* 8027A620 00277580 90 01 05 E8 */ stw r0, 0x5e8(r1)
/* 8027A624 00277584 80 7F 14 00 */ lwz r3, 0x1400(r31)
/* 8027A628 00277588 80 1F 14 04 */ lwz r0, 0x1404(r31)
/* 8027A62C 0027758C 90 61 05 EC */ stw r3, 0x5ec(r1)
/* 8027A630 00277590 90 01 05 F0 */ stw r0, 0x5f0(r1)
/* 8027A634 00277594 80 7F 14 08 */ lwz r3, 0x1408(r31)
/* 8027A638 00277598 80 1F 14 0C */ lwz r0, 0x140c(r31)
/* 8027A63C 0027759C 90 61 05 F4 */ stw r3, 0x5f4(r1)
/* 8027A640 002775A0 90 01 05 F8 */ stw r0, 0x5f8(r1)
/* 8027A644 002775A4 80 7F 14 10 */ lwz r3, 0x1410(r31)
/* 8027A648 002775A8 80 1F 14 14 */ lwz r0, 0x1414(r31)
/* 8027A64C 002775AC 90 61 05 FC */ stw r3, 0x5fc(r1)
/* 8027A650 002775B0 90 01 06 00 */ stw r0, 0x600(r1)
/* 8027A654 002775B4 80 7F 14 18 */ lwz r3, 0x1418(r31)
/* 8027A658 002775B8 80 1F 14 1C */ lwz r0, 0x141c(r31)
/* 8027A65C 002775BC 90 61 06 04 */ stw r3, 0x604(r1)
/* 8027A660 002775C0 90 01 06 08 */ stw r0, 0x608(r1)
/* 8027A664 002775C4 C0 1F 14 20 */ lfs f0, 0x1420(r31)
/* 8027A668 002775C8 D0 01 06 0C */ stfs f0, 0x60c(r1)
/* 8027A66C 002775CC 80 1F 14 24 */ lwz r0, 0x1424(r31)
/* 8027A670 002775D0 90 01 06 10 */ stw r0, 0x610(r1)
/* 8027A674 002775D4 80 1F 14 28 */ lwz r0, 0x1428(r31)
/* 8027A678 002775D8 90 01 06 14 */ stw r0, 0x614(r1)
/* 8027A67C 002775DC 80 7F 14 2C */ lwz r3, 0x142c(r31)
/* 8027A680 002775E0 80 1F 14 30 */ lwz r0, 0x1430(r31)
/* 8027A684 002775E4 90 61 06 18 */ stw r3, 0x618(r1)
/* 8027A688 002775E8 90 01 06 1C */ stw r0, 0x61c(r1)
/* 8027A68C 002775EC 80 1F 14 34 */ lwz r0, 0x1434(r31)
/* 8027A690 002775F0 90 01 06 20 */ stw r0, 0x620(r1)
/* 8027A694 002775F4 C0 1F 14 38 */ lfs f0, 0x1438(r31)
/* 8027A698 002775F8 D0 01 06 24 */ stfs f0, 0x624(r1)
/* 8027A69C 002775FC 48 00 04 B4 */ b lbl_8027AB50
lbl_8027A6A0:
/* 8027A6A0 00277600 C0 1F 12 94 */ lfs f0, 0x1294(r31)
/* 8027A6A4 00277604 D0 01 05 54 */ stfs f0, 0x554(r1)
/* 8027A6A8 00277608 C0 1F 12 98 */ lfs f0, 0x1298(r31)
/* 8027A6AC 0027760C D0 01 05 58 */ stfs f0, 0x558(r1)
/* 8027A6B0 00277610 80 1F 12 A0 */ lwz r0, 0x12a0(r31)
/* 8027A6B4 00277614 90 01 05 60 */ stw r0, 0x560(r1)
/* 8027A6B8 00277618 80 7F 12 A4 */ lwz r3, 0x12a4(r31)
/* 8027A6BC 0027761C 80 1F 12 A8 */ lwz r0, 0x12a8(r31)
/* 8027A6C0 00277620 90 61 05 64 */ stw r3, 0x564(r1)
/* 8027A6C4 00277624 90 01 05 68 */ stw r0, 0x568(r1)
/* 8027A6C8 00277628 80 7F 12 AC */ lwz r3, 0x12ac(r31)
/* 8027A6CC 0027762C 80 1F 12 B0 */ lwz r0, 0x12b0(r31)
/* 8027A6D0 00277630 90 61 05 6C */ stw r3, 0x56c(r1)
/* 8027A6D4 00277634 90 01 05 70 */ stw r0, 0x570(r1)
/* 8027A6D8 00277638 80 7F 12 B4 */ lwz r3, 0x12b4(r31)
/* 8027A6DC 0027763C 80 1F 12 B8 */ lwz r0, 0x12b8(r31)
/* 8027A6E0 00277640 90 61 05 74 */ stw r3, 0x574(r1)
/* 8027A6E4 00277644 90 01 05 78 */ stw r0, 0x578(r1)
/* 8027A6E8 00277648 80 7F 12 BC */ lwz r3, 0x12bc(r31)
/* 8027A6EC 0027764C 80 1F 12 C0 */ lwz r0, 0x12c0(r31)
/* 8027A6F0 00277650 90 61 05 7C */ stw r3, 0x57c(r1)
/* 8027A6F4 00277654 90 01 05 80 */ stw r0, 0x580(r1)
/* 8027A6F8 00277658 80 7F 12 C4 */ lwz r3, 0x12c4(r31)
/* 8027A6FC 0027765C 80 1F 12 C8 */ lwz r0, 0x12c8(r31)
/* 8027A700 00277660 90 61 05 84 */ stw r3, 0x584(r1)
/* 8027A704 00277664 90 01 05 88 */ stw r0, 0x588(r1)
/* 8027A708 00277668 80 7F 12 CC */ lwz r3, 0x12cc(r31)
/* 8027A70C 0027766C 80 1F 12 D0 */ lwz r0, 0x12d0(r31)
/* 8027A710 00277670 90 61 05 8C */ stw r3, 0x58c(r1)
/* 8027A714 00277674 90 01 05 90 */ stw r0, 0x590(r1)
/* 8027A718 00277678 C0 1F 12 D4 */ lfs f0, 0x12d4(r31)
/* 8027A71C 0027767C D0 01 05 94 */ stfs f0, 0x594(r1)
/* 8027A720 00277680 80 1F 12 DC */ lwz r0, 0x12dc(r31)
/* 8027A724 00277684 90 01 05 9C */ stw r0, 0x59c(r1)
/* 8027A728 00277688 80 7F 12 E0 */ lwz r3, 0x12e0(r31)
/* 8027A72C 0027768C 80 1F 12 E4 */ lwz r0, 0x12e4(r31)
/* 8027A730 00277690 90 61 05 A0 */ stw r3, 0x5a0(r1)
/* 8027A734 00277694 90 01 05 A4 */ stw r0, 0x5a4(r1)
/* 8027A738 00277698 80 7F 12 E8 */ lwz r3, 0x12e8(r31)
/* 8027A73C 0027769C 80 1F 12 EC */ lwz r0, 0x12ec(r31)
/* 8027A740 002776A0 90 61 05 A8 */ stw r3, 0x5a8(r1)
/* 8027A744 002776A4 90 01 05 AC */ stw r0, 0x5ac(r1)
/* 8027A748 002776A8 80 7F 12 F0 */ lwz r3, 0x12f0(r31)
/* 8027A74C 002776AC 80 1F 12 F4 */ lwz r0, 0x12f4(r31)
/* 8027A750 002776B0 90 61 05 B0 */ stw r3, 0x5b0(r1)
/* 8027A754 002776B4 90 01 05 B4 */ stw r0, 0x5b4(r1)
/* 8027A758 002776B8 80 7F 12 F8 */ lwz r3, 0x12f8(r31)
/* 8027A75C 002776BC 80 1F 12 FC */ lwz r0, 0x12fc(r31)
/* 8027A760 002776C0 90 61 05 B8 */ stw r3, 0x5b8(r1)
/* 8027A764 002776C4 90 01 05 BC */ stw r0, 0x5bc(r1)
/* 8027A768 002776C8 80 7F 13 00 */ lwz r3, 0x1300(r31)
/* 8027A76C 002776CC 80 1F 13 04 */ lwz r0, 0x1304(r31)
/* 8027A770 002776D0 90 61 05 C0 */ stw r3, 0x5c0(r1)
/* 8027A774 002776D4 90 01 05 C4 */ stw r0, 0x5c4(r1)
/* 8027A778 002776D8 80 7F 13 08 */ lwz r3, 0x1308(r31)
/* 8027A77C 002776DC 80 1F 13 0C */ lwz r0, 0x130c(r31)
/* 8027A780 002776E0 90 61 05 C8 */ stw r3, 0x5c8(r1)
/* 8027A784 002776E4 90 01 05 CC */ stw r0, 0x5cc(r1)
/* 8027A788 002776E8 C0 1F 13 10 */ lfs f0, 0x1310(r31)
/* 8027A78C 002776EC D0 01 05 D0 */ stfs f0, 0x5d0(r1)
/* 8027A790 002776F0 80 1F 13 18 */ lwz r0, 0x1318(r31)
/* 8027A794 002776F4 90 01 05 D8 */ stw r0, 0x5d8(r1)
/* 8027A798 002776F8 80 7F 13 1C */ lwz r3, 0x131c(r31)
/* 8027A79C 002776FC 80 1F 13 20 */ lwz r0, 0x1320(r31)
/* 8027A7A0 00277700 90 61 05 DC */ stw r3, 0x5dc(r1)
/* 8027A7A4 00277704 90 01 05 E0 */ stw r0, 0x5e0(r1)
/* 8027A7A8 00277708 80 7F 13 24 */ lwz r3, 0x1324(r31)
/* 8027A7AC 0027770C 80 1F 13 28 */ lwz r0, 0x1328(r31)
/* 8027A7B0 00277710 90 61 05 E4 */ stw r3, 0x5e4(r1)
/* 8027A7B4 00277714 90 01 05 E8 */ stw r0, 0x5e8(r1)
/* 8027A7B8 00277718 80 7F 13 2C */ lwz r3, 0x132c(r31)
/* 8027A7BC 0027771C 80 1F 13 30 */ lwz r0, 0x1330(r31)
/* 8027A7C0 00277720 90 61 05 EC */ stw r3, 0x5ec(r1)
/* 8027A7C4 00277724 90 01 05 F0 */ stw r0, 0x5f0(r1)
/* 8027A7C8 00277728 80 7F 13 34 */ lwz r3, 0x1334(r31)
/* 8027A7CC 0027772C 80 1F 13 38 */ lwz r0, 0x1338(r31)
/* 8027A7D0 00277730 90 61 05 F4 */ stw r3, 0x5f4(r1)
/* 8027A7D4 00277734 90 01 05 F8 */ stw r0, 0x5f8(r1)
/* 8027A7D8 00277738 80 7F 13 3C */ lwz r3, 0x133c(r31)
/* 8027A7DC 0027773C 80 1F 13 40 */ lwz r0, 0x1340(r31)
/* 8027A7E0 00277740 90 61 05 FC */ stw r3, 0x5fc(r1)
/* 8027A7E4 00277744 90 01 06 00 */ stw r0, 0x600(r1)
/* 8027A7E8 00277748 80 7F 13 44 */ lwz r3, 0x1344(r31)
/* 8027A7EC 0027774C 80 1F 13 48 */ lwz r0, 0x1348(r31)
/* 8027A7F0 00277750 90 61 06 04 */ stw r3, 0x604(r1)
/* 8027A7F4 00277754 90 01 06 08 */ stw r0, 0x608(r1)
/* 8027A7F8 00277758 C0 1F 13 4C */ lfs f0, 0x134c(r31)
/* 8027A7FC 0027775C D0 01 06 0C */ stfs f0, 0x60c(r1)
/* 8027A800 00277760 80 1F 13 50 */ lwz r0, 0x1350(r31)
/* 8027A804 00277764 90 01 06 10 */ stw r0, 0x610(r1)
/* 8027A808 00277768 80 1F 13 54 */ lwz r0, 0x1354(r31)
/* 8027A80C 0027776C 90 01 06 14 */ stw r0, 0x614(r1)
/* 8027A810 00277770 80 7F 13 58 */ lwz r3, 0x1358(r31)
/* 8027A814 00277774 80 1F 13 5C */ lwz r0, 0x135c(r31)
/* 8027A818 00277778 90 61 06 18 */ stw r3, 0x618(r1)
/* 8027A81C 0027777C 90 01 06 1C */ stw r0, 0x61c(r1)
/* 8027A820 00277780 80 1F 13 60 */ lwz r0, 0x1360(r31)
/* 8027A824 00277784 90 01 06 20 */ stw r0, 0x620(r1)
/* 8027A828 00277788 C0 1F 13 64 */ lfs f0, 0x1364(r31)
/* 8027A82C 0027778C D0 01 06 24 */ stfs f0, 0x624(r1)
/* 8027A830 00277790 48 00 03 20 */ b lbl_8027AB50
lbl_8027A834:
/* 8027A834 00277794 7F E4 FB 78 */ mr r4, r31
/* 8027A838 00277798 38 61 02 E4 */ addi r3, r1, 0x2e4
/* 8027A83C 0027779C 38 BC 00 3C */ addi r5, r28, 0x3c
/* 8027A840 002777A0 4B DF E1 39 */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8027A844 002777A4 80 9E 08 4C */ lwz r4, 0x84c(r30)
/* 8027A848 002777A8 38 61 01 28 */ addi r3, r1, 0x128
/* 8027A84C 002777AC C0 A1 03 10 */ lfs f5, 0x310(r1)
/* 8027A850 002777B0 C0 E4 00 60 */ lfs f7, 0x60(r4)
/* 8027A854 002777B4 C0 01 03 00 */ lfs f0, 0x300(r1)
/* 8027A858 002777B8 C0 C4 00 50 */ lfs f6, 0x50(r4)
/* 8027A85C 002777BC EC 67 28 28 */ fsubs f3, f7, f5
/* 8027A860 002777C0 C0 24 00 40 */ lfs f1, 0x40(r4)
/* 8027A864 002777C4 C0 41 02 F0 */ lfs f2, 0x2f0(r1)
/* 8027A868 002777C8 EC 86 00 28 */ fsubs f4, f6, f0
/* 8027A86C 002777CC D0 01 01 14 */ stfs f0, 0x114(r1)
/* 8027A870 002777D0 EC 01 10 28 */ fsubs f0, f1, f2
/* 8027A874 002777D4 D0 41 01 10 */ stfs f2, 0x110(r1)
/* 8027A878 002777D8 D0 A1 01 18 */ stfs f5, 0x118(r1)
/* 8027A87C 002777DC D0 21 01 1C */ stfs f1, 0x11c(r1)
/* 8027A880 002777E0 D0 C1 01 20 */ stfs f6, 0x120(r1)
/* 8027A884 002777E4 D0 E1 01 24 */ stfs f7, 0x124(r1)
/* 8027A888 002777E8 D0 01 01 28 */ stfs f0, 0x128(r1)
/* 8027A88C 002777EC D0 81 01 2C */ stfs f4, 0x12c(r1)
/* 8027A890 002777F0 D0 61 01 30 */ stfs f3, 0x130(r1)
/* 8027A894 002777F4 48 09 A0 25 */ bl Magnitude__9CVector3fCFv
/* 8027A898 002777F8 C0 1F 0E C4 */ lfs f0, 0xec4(r31)
/* 8027A89C 002777FC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8027A8A0 00277800 40 80 00 D0 */ bge lbl_8027A970
/* 8027A8A4 00277804 EC 01 00 24 */ fdivs f0, f1, f0
/* 8027A8A8 00277808 C0 22 BC 30 */ lfs f1, lbl_805AD950@sda21(r2)
/* 8027A8AC 0027780C C0 5F 0E C8 */ lfs f2, 0xec8(r31)
/* 8027A8B0 00277810 38 60 00 00 */ li r3, 0
/* 8027A8B4 00277814 88 01 02 B0 */ lbz r0, 0x2b0(r1)
/* 8027A8B8 00277818 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 8027A8BC 0027781C EC 61 00 28 */ fsubs f3, f1, f0
/* 8027A8C0 00277820 C0 3F 0E C0 */ lfs f1, 0xec0(r31)
/* 8027A8C4 00277824 C0 1F 0E BC */ lfs f0, 0xebc(r31)
/* 8027A8C8 00277828 38 60 00 00 */ li r3, 0
/* 8027A8CC 0027782C 80 DF 0E B4 */ lwz r6, 0xeb4(r31)
/* 8027A8D0 00277830 38 80 00 01 */ li r4, 1
/* 8027A8D4 00277834 90 C1 02 98 */ stw r6, 0x298(r1)
/* 8027A8D8 00277838 EC 43 00 B2 */ fmuls f2, f3, f2
/* 8027A8DC 0027783C EC 23 00 72 */ fmuls f1, f3, f1
/* 8027A8E0 00277840 80 AD 98 58 */ lwz r5, lbl_805A8418@sda21(r13)
/* 8027A8E4 00277844 88 DF 0E B8 */ lbz r6, 0xeb8(r31)
/* 8027A8E8 00277848 EC 03 00 32 */ fmuls f0, f3, f0
/* 8027A8EC 0027784C 98 C1 02 9C */ stb r6, 0x29c(r1)
/* 8027A8F0 00277850 D0 01 02 A0 */ stfs f0, 0x2a0(r1)
/* 8027A8F4 00277854 D0 01 02 A4 */ stfs f0, 0x2a4(r1)
/* 8027A8F8 00277858 D0 21 02 A8 */ stfs f1, 0x2a8(r1)
/* 8027A8FC 0027785C D0 41 02 AC */ stfs f2, 0x2ac(r1)
/* 8027A900 00277860 98 01 02 B0 */ stb r0, 0x2b0(r1)
/* 8027A904 00277864 48 10 F5 F1 */ bl __shl2i
/* 8027A908 00277868 39 40 00 00 */ li r10, 0
/* 8027A90C 0027786C 38 00 00 03 */ li r0, 3
/* 8027A910 00277870 90 81 02 6C */ stw r4, 0x26c(r1)
/* 8027A914 00277874 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 8027A918 00277878 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l
/* 8027A91C 0027787C 38 A1 00 44 */ addi r5, r1, 0x44
/* 8027A920 00277880 90 61 02 68 */ stw r3, 0x268(r1)
/* 8027A924 00277884 38 81 00 4C */ addi r4, r1, 0x4c
/* 8027A928 00277888 7F C3 F3 78 */ mr r3, r30
/* 8027A92C 0027788C 38 C1 00 3C */ addi r6, r1, 0x3c
/* 8027A930 00277890 91 41 02 74 */ stw r10, 0x274(r1)
/* 8027A934 00277894 38 E1 02 98 */ addi r7, r1, 0x298
/* 8027A938 00277898 39 01 02 68 */ addi r8, r1, 0x268
/* 8027A93C 0027789C 91 41 02 70 */ stw r10, 0x270(r1)
/* 8027A940 002778A0 90 01 02 78 */ stw r0, 0x278(r1)
/* 8027A944 002778A4 A0 1F 00 08 */ lhz r0, 8(r31)
/* 8027A948 002778A8 B0 01 00 3C */ sth r0, 0x3c(r1)
/* 8027A94C 002778AC 81 5E 08 4C */ lwz r10, 0x84c(r30)
/* 8027A950 002778B0 B0 01 00 38 */ sth r0, 0x38(r1)
/* 8027A954 002778B4 A1 4A 00 08 */ lhz r10, 8(r10)
/* 8027A958 002778B8 B1 41 00 44 */ sth r10, 0x44(r1)
/* 8027A95C 002778BC A0 1F 00 08 */ lhz r0, 8(r31)
/* 8027A960 002778C0 B1 41 00 40 */ sth r10, 0x40(r1)
/* 8027A964 002778C4 B0 01 00 48 */ sth r0, 0x48(r1)
/* 8027A968 002778C8 B0 01 00 4C */ sth r0, 0x4c(r1)
/* 8027A96C 002778CC 4B DC F7 35 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f
lbl_8027A970:
/* 8027A970 002778D0 C0 1F 0E D0 */ lfs f0, 0xed0(r31)
/* 8027A974 002778D4 7F E4 FB 78 */ mr r4, r31
/* 8027A978 002778D8 38 61 02 B4 */ addi r3, r1, 0x2b4
/* 8027A97C 002778DC 38 BC 00 3C */ addi r5, r28, 0x3c
/* 8027A980 002778E0 D0 01 05 54 */ stfs f0, 0x554(r1)
/* 8027A984 002778E4 C0 1F 0E D4 */ lfs f0, 0xed4(r31)
/* 8027A988 002778E8 D0 01 05 58 */ stfs f0, 0x558(r1)
/* 8027A98C 002778EC 80 1F 0E DC */ lwz r0, 0xedc(r31)
/* 8027A990 002778F0 90 01 05 60 */ stw r0, 0x560(r1)
/* 8027A994 002778F4 80 DF 0E E0 */ lwz r6, 0xee0(r31)
/* 8027A998 002778F8 80 1F 0E E4 */ lwz r0, 0xee4(r31)
/* 8027A99C 002778FC 90 C1 05 64 */ stw r6, 0x564(r1)
/* 8027A9A0 00277900 90 01 05 68 */ stw r0, 0x568(r1)
/* 8027A9A4 00277904 80 DF 0E E8 */ lwz r6, 0xee8(r31)
/* 8027A9A8 00277908 80 1F 0E EC */ lwz r0, 0xeec(r31)
/* 8027A9AC 0027790C 90 C1 05 6C */ stw r6, 0x56c(r1)
/* 8027A9B0 00277910 90 01 05 70 */ stw r0, 0x570(r1)
/* 8027A9B4 00277914 80 DF 0E F0 */ lwz r6, 0xef0(r31)
/* 8027A9B8 00277918 80 1F 0E F4 */ lwz r0, 0xef4(r31)
/* 8027A9BC 0027791C 90 C1 05 74 */ stw r6, 0x574(r1)
/* 8027A9C0 00277920 90 01 05 78 */ stw r0, 0x578(r1)
/* 8027A9C4 00277924 80 DF 0E F8 */ lwz r6, 0xef8(r31)
/* 8027A9C8 00277928 80 1F 0E FC */ lwz r0, 0xefc(r31)
/* 8027A9CC 0027792C 90 C1 05 7C */ stw r6, 0x57c(r1)
/* 8027A9D0 00277930 90 01 05 80 */ stw r0, 0x580(r1)
/* 8027A9D4 00277934 80 DF 0F 00 */ lwz r6, 0xf00(r31)
/* 8027A9D8 00277938 80 1F 0F 04 */ lwz r0, 0xf04(r31)
/* 8027A9DC 0027793C 90 C1 05 84 */ stw r6, 0x584(r1)
/* 8027A9E0 00277940 90 01 05 88 */ stw r0, 0x588(r1)
/* 8027A9E4 00277944 80 DF 0F 08 */ lwz r6, 0xf08(r31)
/* 8027A9E8 00277948 80 1F 0F 0C */ lwz r0, 0xf0c(r31)
/* 8027A9EC 0027794C 90 C1 05 8C */ stw r6, 0x58c(r1)
/* 8027A9F0 00277950 90 01 05 90 */ stw r0, 0x590(r1)
/* 8027A9F4 00277954 C0 1F 0F 10 */ lfs f0, 0xf10(r31)
/* 8027A9F8 00277958 D0 01 05 94 */ stfs f0, 0x594(r1)
/* 8027A9FC 0027795C 80 1F 0F 18 */ lwz r0, 0xf18(r31)
/* 8027AA00 00277960 90 01 05 9C */ stw r0, 0x59c(r1)
/* 8027AA04 00277964 80 DF 0F 1C */ lwz r6, 0xf1c(r31)
/* 8027AA08 00277968 80 1F 0F 20 */ lwz r0, 0xf20(r31)
/* 8027AA0C 0027796C 90 C1 05 A0 */ stw r6, 0x5a0(r1)
/* 8027AA10 00277970 90 01 05 A4 */ stw r0, 0x5a4(r1)
/* 8027AA14 00277974 80 DF 0F 24 */ lwz r6, 0xf24(r31)
/* 8027AA18 00277978 80 1F 0F 28 */ lwz r0, 0xf28(r31)
/* 8027AA1C 0027797C 90 C1 05 A8 */ stw r6, 0x5a8(r1)
/* 8027AA20 00277980 90 01 05 AC */ stw r0, 0x5ac(r1)
/* 8027AA24 00277984 80 DF 0F 2C */ lwz r6, 0xf2c(r31)
/* 8027AA28 00277988 80 1F 0F 30 */ lwz r0, 0xf30(r31)
/* 8027AA2C 0027798C 90 C1 05 B0 */ stw r6, 0x5b0(r1)
/* 8027AA30 00277990 90 01 05 B4 */ stw r0, 0x5b4(r1)
/* 8027AA34 00277994 80 DF 0F 34 */ lwz r6, 0xf34(r31)
/* 8027AA38 00277998 80 1F 0F 38 */ lwz r0, 0xf38(r31)
/* 8027AA3C 0027799C 90 C1 05 B8 */ stw r6, 0x5b8(r1)
/* 8027AA40 002779A0 90 01 05 BC */ stw r0, 0x5bc(r1)
/* 8027AA44 002779A4 80 DF 0F 3C */ lwz r6, 0xf3c(r31)
/* 8027AA48 002779A8 80 1F 0F 40 */ lwz r0, 0xf40(r31)
/* 8027AA4C 002779AC 90 C1 05 C0 */ stw r6, 0x5c0(r1)
/* 8027AA50 002779B0 90 01 05 C4 */ stw r0, 0x5c4(r1)
/* 8027AA54 002779B4 80 DF 0F 44 */ lwz r6, 0xf44(r31)
/* 8027AA58 002779B8 80 1F 0F 48 */ lwz r0, 0xf48(r31)
/* 8027AA5C 002779BC 90 C1 05 C8 */ stw r6, 0x5c8(r1)
/* 8027AA60 002779C0 90 01 05 CC */ stw r0, 0x5cc(r1)
/* 8027AA64 002779C4 C0 1F 0F 4C */ lfs f0, 0xf4c(r31)
/* 8027AA68 002779C8 D0 01 05 D0 */ stfs f0, 0x5d0(r1)
/* 8027AA6C 002779CC 80 1F 0F 54 */ lwz r0, 0xf54(r31)
/* 8027AA70 002779D0 90 01 05 D8 */ stw r0, 0x5d8(r1)
/* 8027AA74 002779D4 80 DF 0F 58 */ lwz r6, 0xf58(r31)
/* 8027AA78 002779D8 80 1F 0F 5C */ lwz r0, 0xf5c(r31)
/* 8027AA7C 002779DC 90 C1 05 DC */ stw r6, 0x5dc(r1)
/* 8027AA80 002779E0 90 01 05 E0 */ stw r0, 0x5e0(r1)
/* 8027AA84 002779E4 80 DF 0F 60 */ lwz r6, 0xf60(r31)
/* 8027AA88 002779E8 80 1F 0F 64 */ lwz r0, 0xf64(r31)
/* 8027AA8C 002779EC 90 C1 05 E4 */ stw r6, 0x5e4(r1)
/* 8027AA90 002779F0 90 01 05 E8 */ stw r0, 0x5e8(r1)
/* 8027AA94 002779F4 80 DF 0F 68 */ lwz r6, 0xf68(r31)
/* 8027AA98 002779F8 80 1F 0F 6C */ lwz r0, 0xf6c(r31)
/* 8027AA9C 002779FC 90 C1 05 EC */ stw r6, 0x5ec(r1)
/* 8027AAA0 00277A00 90 01 05 F0 */ stw r0, 0x5f0(r1)
/* 8027AAA4 00277A04 80 DF 0F 70 */ lwz r6, 0xf70(r31)
/* 8027AAA8 00277A08 80 1F 0F 74 */ lwz r0, 0xf74(r31)
/* 8027AAAC 00277A0C 90 C1 05 F4 */ stw r6, 0x5f4(r1)
/* 8027AAB0 00277A10 90 01 05 F8 */ stw r0, 0x5f8(r1)
/* 8027AAB4 00277A14 80 DF 0F 78 */ lwz r6, 0xf78(r31)
/* 8027AAB8 00277A18 80 1F 0F 7C */ lwz r0, 0xf7c(r31)
/* 8027AABC 00277A1C 90 C1 05 FC */ stw r6, 0x5fc(r1)
/* 8027AAC0 00277A20 90 01 06 00 */ stw r0, 0x600(r1)
/* 8027AAC4 00277A24 80 DF 0F 80 */ lwz r6, 0xf80(r31)
/* 8027AAC8 00277A28 80 1F 0F 84 */ lwz r0, 0xf84(r31)
/* 8027AACC 00277A2C 90 C1 06 04 */ stw r6, 0x604(r1)
/* 8027AAD0 00277A30 90 01 06 08 */ stw r0, 0x608(r1)
/* 8027AAD4 00277A34 C0 1F 0F 88 */ lfs f0, 0xf88(r31)
/* 8027AAD8 00277A38 D0 01 06 0C */ stfs f0, 0x60c(r1)
/* 8027AADC 00277A3C 80 1F 0F 8C */ lwz r0, 0xf8c(r31)
/* 8027AAE0 00277A40 90 01 06 10 */ stw r0, 0x610(r1)
/* 8027AAE4 00277A44 80 1F 0F 90 */ lwz r0, 0xf90(r31)
/* 8027AAE8 00277A48 90 01 06 14 */ stw r0, 0x614(r1)
/* 8027AAEC 00277A4C 80 DF 0F 94 */ lwz r6, 0xf94(r31)
/* 8027AAF0 00277A50 80 1F 0F 98 */ lwz r0, 0xf98(r31)
/* 8027AAF4 00277A54 90 C1 06 18 */ stw r6, 0x618(r1)
/* 8027AAF8 00277A58 90 01 06 1C */ stw r0, 0x61c(r1)
/* 8027AAFC 00277A5C 80 1F 0F 9C */ lwz r0, 0xf9c(r31)
/* 8027AB00 00277A60 90 01 06 20 */ stw r0, 0x620(r1)
/* 8027AB04 00277A64 C0 1F 0F A0 */ lfs f0, 0xfa0(r31)
/* 8027AB08 00277A68 D0 01 06 24 */ stfs f0, 0x624(r1)
/* 8027AB0C 00277A6C 4B DF DE 6D */ bl "GetLctrTransform__10CPatternedCFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8027AB10 00277A70 C0 41 02 C0 */ lfs f2, 0x2c0(r1)
/* 8027AB14 00277A74 38 61 05 54 */ addi r3, r1, 0x554
/* 8027AB18 00277A78 C0 21 02 D0 */ lfs f1, 0x2d0(r1)
/* 8027AB1C 00277A7C 38 81 01 04 */ addi r4, r1, 0x104
/* 8027AB20 00277A80 C0 01 02 E0 */ lfs f0, 0x2e0(r1)
/* 8027AB24 00277A84 D0 41 00 F8 */ stfs f2, 0xf8(r1)
/* 8027AB28 00277A88 D0 21 00 FC */ stfs f1, 0xfc(r1)
/* 8027AB2C 00277A8C 80 C1 00 F8 */ lwz r6, 0xf8(r1)
/* 8027AB30 00277A90 D0 01 01 00 */ stfs f0, 0x100(r1)
/* 8027AB34 00277A94 80 A1 00 FC */ lwz r5, 0xfc(r1)
/* 8027AB38 00277A98 80 01 01 00 */ lwz r0, 0x100(r1)
/* 8027AB3C 00277A9C 90 C1 01 04 */ stw r6, 0x104(r1)
/* 8027AB40 00277AA0 90 A1 01 08 */ stw r5, 0x108(r1)
/* 8027AB44 00277AA4 90 01 01 0C */ stw r0, 0x10c(r1)
/* 8027AB48 00277AA8 C0 3F 0E C4 */ lfs f1, 0xec4(r31)
/* 8027AB4C 00277AAC 4B EE 23 21 */ bl SetSfxPositionAndDistance__16CCameraShakeDataFRC9CVector3ff
lbl_8027AB50:
/* 8027AB50 00277AB0 80 7E 08 70 */ lwz r3, 0x870(r30)
/* 8027AB54 00277AB4 4B D8 FD AD */ bl IsInCinematicCamera__14CCameraManagerCFv
/* 8027AB58 00277AB8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8027AB5C 00277ABC 40 82 00 14 */ bne lbl_8027AB70
/* 8027AB60 00277AC0 80 7E 08 70 */ lwz r3, 0x870(r30)
/* 8027AB64 00277AC4 38 81 05 54 */ addi r4, r1, 0x554
/* 8027AB68 00277AC8 38 A0 00 01 */ li r5, 1
/* 8027AB6C 00277ACC 4B D8 FE B5 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab
lbl_8027AB70:
/* 8027AB70 00277AD0 34 81 05 D4 */ addic. r4, r1, 0x5d4
/* 8027AB74 00277AD4 41 82 00 10 */ beq lbl_8027AB84
/* 8027AB78 00277AD8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027AB7C 00277ADC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027AB80 00277AE0 90 04 00 00 */ stw r0, 0(r4)
lbl_8027AB84:
/* 8027AB84 00277AE4 34 81 05 98 */ addic. r4, r1, 0x598
/* 8027AB88 00277AE8 41 82 00 10 */ beq lbl_8027AB98
/* 8027AB8C 00277AEC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027AB90 00277AF0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027AB94 00277AF4 90 04 00 00 */ stw r0, 0(r4)
lbl_8027AB98:
/* 8027AB98 00277AF8 34 81 05 5C */ addic. r4, r1, 0x55c
/* 8027AB9C 00277AFC 41 82 00 AC */ beq lbl_8027AC48
/* 8027ABA0 00277B00 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027ABA4 00277B04 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027ABA8 00277B08 90 04 00 00 */ stw r0, 0(r4)
/* 8027ABAC 00277B0C 48 00 00 9C */ b lbl_8027AC48
lbl_8027ABB0:
/* 8027ABB0 00277B10 80 1F 09 2C */ lwz r0, 0x92c(r31)
/* 8027ABB4 00277B14 2C 00 00 07 */ cmpwi r0, 7
/* 8027ABB8 00277B18 40 82 00 90 */ bne lbl_8027AC48
/* 8027ABBC 00277B1C 80 7F 0C 54 */ lwz r3, 0xc54(r31)
/* 8027ABC0 00277B20 38 80 00 01 */ li r4, 1
/* 8027ABC4 00277B24 81 83 00 00 */ lwz r12, 0(r3)
/* 8027ABC8 00277B28 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 8027ABCC 00277B2C 7D 89 03 A6 */ mtctr r12
/* 8027ABD0 00277B30 4E 80 04 21 */ bctrl
/* 8027ABD4 00277B34 80 1F 05 70 */ lwz r0, 0x570(r31)
/* 8027ABD8 00277B38 7F C3 F3 78 */ mr r3, r30
/* 8027ABDC 00277B3C 38 81 00 34 */ addi r4, r1, 0x34
/* 8027ABE0 00277B40 54 00 08 3C */ slwi r0, r0, 1
/* 8027ABE4 00277B44 7C BF 02 14 */ add r5, r31, r0
/* 8027ABE8 00277B48 A0 05 0B 28 */ lhz r0, 0xb28(r5)
/* 8027ABEC 00277B4C B0 01 00 34 */ sth r0, 0x34(r1)
/* 8027ABF0 00277B50 4B DD 19 85 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 8027ABF4 00277B54 28 03 00 00 */ cmplwi r3, 0
/* 8027ABF8 00277B58 41 82 00 50 */ beq lbl_8027AC48
/* 8027ABFC 00277B5C 80 03 04 90 */ lwz r0, 0x490(r3)
/* 8027AC00 00277B60 C3 C2 BC F4 */ lfs f30, lbl_805ADA14@sda21(r2)
/* 8027AC04 00277B64 90 01 00 AC */ stw r0, 0xac(r1)
/* 8027AC08 00277B68 F3 C1 A0 30 */ psq_st f30, 48(r1), 1, qr2
/* 8027AC0C 00277B6C 38 81 00 AC */ addi r4, r1, 0xac
/* 8027AC10 00277B70 88 01 00 30 */ lbz r0, 0x30(r1)
/* 8027AC14 00277B74 98 01 00 AF */ stb r0, 0xaf(r1)
/* 8027AC18 00277B78 80 7F 0C 54 */ lwz r3, 0xc54(r31)
/* 8027AC1C 00277B7C 81 83 00 00 */ lwz r12, 0(r3)
/* 8027AC20 00277B80 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 8027AC24 00277B84 7D 89 03 A6 */ mtctr r12
/* 8027AC28 00277B88 4E 80 04 21 */ bctrl
/* 8027AC2C 00277B8C 48 00 00 1C */ b lbl_8027AC48
lbl_8027AC30:
/* 8027AC30 00277B90 80 7F 0C 54 */ lwz r3, 0xc54(r31)
/* 8027AC34 00277B94 38 80 00 00 */ li r4, 0
/* 8027AC38 00277B98 81 83 00 00 */ lwz r12, 0(r3)
/* 8027AC3C 00277B9C 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 8027AC40 00277BA0 7D 89 03 A6 */ mtctr r12
/* 8027AC44 00277BA4 4E 80 04 21 */ bctrl
lbl_8027AC48:
/* 8027AC48 00277BA8 57 40 06 3F */ clrlwi. r0, r26, 0x18
/* 8027AC4C 00277BAC 40 82 00 1C */ bne lbl_8027AC68
/* 8027AC50 00277BB0 FC 20 F8 90 */ fmr f1, f31
/* 8027AC54 00277BB4 7F E3 FB 78 */ mr r3, r31
/* 8027AC58 00277BB8 7F C4 F3 78 */ mr r4, r30
/* 8027AC5C 00277BBC 7F 85 E3 78 */ mr r5, r28
/* 8027AC60 00277BC0 7F A6 EB 78 */ mr r6, r29
/* 8027AC64 00277BC4 4B DF E2 4D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType
lbl_8027AC68:
/* 8027AC68 00277BC8 E3 E1 06 98 */ psq_l f31, 1688(r1), 0, qr0
/* 8027AC6C 00277BCC CB E1 06 90 */ lfd f31, 0x690(r1)
/* 8027AC70 00277BD0 E3 C1 06 88 */ psq_l f30, 1672(r1), 0, qr0
/* 8027AC74 00277BD4 CB C1 06 80 */ lfd f30, 0x680(r1)
/* 8027AC78 00277BD8 E3 A1 06 78 */ psq_l f29, 1656(r1), 0, qr0
/* 8027AC7C 00277BDC CB A1 06 70 */ lfd f29, 0x670(r1)
/* 8027AC80 00277BE0 E3 81 06 68 */ psq_l f28, 1640(r1), 0, qr0
/* 8027AC84 00277BE4 CB 81 06 60 */ lfd f28, 0x660(r1)
/* 8027AC88 00277BE8 BA A1 06 34 */ lmw r21, 0x634(r1)
/* 8027AC8C 00277BEC 80 01 06 A4 */ lwz r0, 0x6a4(r1)
/* 8027AC90 00277BF0 7C 08 03 A6 */ mtlr r0
/* 8027AC94 00277BF4 38 21 06 A0 */ addi r1, r1, 0x6a0
/* 8027AC98 00277BF8 4E 80 00 20 */ blr
.global AcceptScriptMsg__16CMetroidPrimeExoF20EScriptObjectMessage9TUniqueIdR13CStateManager
AcceptScriptMsg__16CMetroidPrimeExoF20EScriptObjectMessage9TUniqueIdR13CStateManager:
/* 8027AC9C 00277BFC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8027ACA0 00277C00 7C 08 02 A6 */ mflr r0
/* 8027ACA4 00277C04 90 01 00 34 */ stw r0, 0x34(r1)
/* 8027ACA8 00277C08 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 8027ACAC 00277C0C 7C 9C 23 78 */ mr r28, r4
/* 8027ACB0 00277C10 28 1C 00 2A */ cmplwi r28, 0x2a
/* 8027ACB4 00277C14 7C 7B 1B 78 */ mr r27, r3
/* 8027ACB8 00277C18 7C BD 2B 78 */ mr r29, r5
/* 8027ACBC 00277C1C 7C DE 33 78 */ mr r30, r6
/* 8027ACC0 00277C20 3B E0 00 00 */ li r31, 0
/* 8027ACC4 00277C24 41 81 01 DC */ bgt lbl_8027AEA0
/* 8027ACC8 00277C28 3C 80 80 3F */ lis r4, lbl_803EB020@ha
/* 8027ACCC 00277C2C 57 80 10 3A */ slwi r0, r28, 2
/* 8027ACD0 00277C30 38 84 B0 20 */ addi r4, r4, lbl_803EB020@l
/* 8027ACD4 00277C34 7C 04 00 2E */ lwzx r0, r4, r0
/* 8027ACD8 00277C38 7C 09 03 A6 */ mtctr r0
/* 8027ACDC 00277C3C 4E 80 04 20 */ bctr
.global lbl_8027ACE0
lbl_8027ACE0:
/* 8027ACE0 00277C40 80 7B 05 6C */ lwz r3, 0x56c(r27)
/* 8027ACE4 00277C44 7F C4 F3 78 */ mr r4, r30
/* 8027ACE8 00277C48 38 A0 00 01 */ li r5, 1
/* 8027ACEC 00277C4C 4B F2 C6 0D */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb
/* 8027ACF0 00277C50 48 00 01 B0 */ b lbl_8027AEA0
.global lbl_8027ACF4
lbl_8027ACF4:
/* 8027ACF4 00277C54 80 7B 05 6C */ lwz r3, 0x56c(r27)
/* 8027ACF8 00277C58 7F C4 F3 78 */ mr r4, r30
/* 8027ACFC 00277C5C 38 A0 00 00 */ li r5, 0
/* 8027AD00 00277C60 4B F2 C5 F9 */ bl SetActive__22CCollisionActorManagerFR13CStateManagerb
/* 8027AD04 00277C64 48 00 01 9C */ b lbl_8027AEA0
.global lbl_8027AD08
lbl_8027AD08:
/* 8027AD08 00277C68 38 80 00 00 */ li r4, 0
/* 8027AD0C 00277C6C 4B DD 80 61 */ bl CreateShadow__6CActorFb
/* 8027AD10 00277C70 80 7B 04 50 */ lwz r3, 0x450(r27)
/* 8027AD14 00277C74 7F C4 F3 78 */ mr r4, r30
/* 8027AD18 00277C78 4B EB FF D9 */ bl Activate__15CBodyControllerFR13CStateManager
/* 8027AD1C 00277C7C 3C 80 80 3D */ lis r4, lbl_803D546C@ha
/* 8027AD20 00277C80 80 7B 04 50 */ lwz r3, 0x450(r27)
/* 8027AD24 00277C84 38 84 54 6C */ addi r4, r4, lbl_803D546C@l
/* 8027AD28 00277C88 80 84 00 04 */ lwz r4, 4(r4)
/* 8027AD2C 00277C8C 4B EB FC AD */ bl SetLocomotionType__15CBodyControllerFQ23pas15ELocomotionType
/* 8027AD30 00277C90 7F 63 DB 78 */ mr r3, r27
/* 8027AD34 00277C94 4B FF E3 09 */ bl sub_8027903c
/* 8027AD38 00277C98 7F 63 DB 78 */ mr r3, r27
/* 8027AD3C 00277C9C 7F C4 F3 78 */ mr r4, r30
/* 8027AD40 00277CA0 4B FF E4 95 */ bl sub_802791d4
/* 8027AD44 00277CA4 7F 63 DB 78 */ mr r3, r27
/* 8027AD48 00277CA8 7F C4 F3 78 */ mr r4, r30
/* 8027AD4C 00277CAC 38 A0 00 01 */ li r5, 1
/* 8027AD50 00277CB0 4B FF DA B1 */ bl sub_80278800
/* 8027AD54 00277CB4 7F 63 DB 78 */ mr r3, r27
/* 8027AD58 00277CB8 7F C4 F3 78 */ mr r4, r30
/* 8027AD5C 00277CBC 38 A0 00 01 */ li r5, 1
/* 8027AD60 00277CC0 4B FF DE 01 */ bl sub_80278b60
/* 8027AD64 00277CC4 7F 63 DB 78 */ mr r3, r27
/* 8027AD68 00277CC8 7F C4 F3 78 */ mr r4, r30
/* 8027AD6C 00277CCC 4B FF CE 99 */ bl sub_80277c04
/* 8027AD70 00277CD0 7F 63 DB 78 */ mr r3, r27
/* 8027AD74 00277CD4 7F C4 F3 78 */ mr r4, r30
/* 8027AD78 00277CD8 4B FF 93 85 */ bl sub_802740fc
/* 8027AD7C 00277CDC 7F 63 DB 78 */ mr r3, r27
/* 8027AD80 00277CE0 7F C4 F3 78 */ mr r4, r30
/* 8027AD84 00277CE4 38 A0 00 00 */ li r5, 0
/* 8027AD88 00277CE8 4B FF A8 25 */ bl sub_802755ac
/* 8027AD8C 00277CEC 7F 63 DB 78 */ mr r3, r27
/* 8027AD90 00277CF0 7F C4 F3 78 */ mr r4, r30
/* 8027AD94 00277CF4 4B FF 96 E9 */ bl sub_8027447c
/* 8027AD98 00277CF8 C0 02 BC 44 */ lfs f0, lbl_805AD964@sda21(r2)
/* 8027AD9C 00277CFC 80 7E 08 4C */ lwz r3, 0x84c(r30)
/* 8027ADA0 00277D00 D0 03 07 58 */ stfs f0, 0x758(r3)
/* 8027ADA4 00277D04 48 00 00 FC */ b lbl_8027AEA0
.global lbl_8027ADA8
lbl_8027ADA8:
/* 8027ADA8 00277D08 7F C5 F3 78 */ mr r5, r30
/* 8027ADAC 00277D0C 38 80 00 30 */ li r4, 0x30
/* 8027ADB0 00277D10 4B DD 91 D1 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager
/* 8027ADB4 00277D14 80 1B 00 04 */ lwz r0, 4(r27)
/* 8027ADB8 00277D18 7F 63 DB 78 */ mr r3, r27
/* 8027ADBC 00277D1C 7F C4 F3 78 */ mr r4, r30
/* 8027ADC0 00277D20 38 A1 00 14 */ addi r5, r1, 0x14
/* 8027ADC4 00277D24 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027ADC8 00277D28 4B FF BF 69 */ bl sub_80276d30
/* 8027ADCC 00277D2C 80 7E 08 50 */ lwz r3, 0x850(r30)
/* 8027ADD0 00277D30 80 9B 00 04 */ lwz r4, 4(r27)
/* 8027ADD4 00277D34 80 03 00 68 */ lwz r0, 0x68(r3)
/* 8027ADD8 00277D38 7C 04 00 00 */ cmpw r4, r0
/* 8027ADDC 00277D3C 40 82 00 14 */ bne lbl_8027ADF0
/* 8027ADE0 00277D40 7F 63 DB 78 */ mr r3, r27
/* 8027ADE4 00277D44 7F C5 F3 78 */ mr r5, r30
/* 8027ADE8 00277D48 38 80 00 07 */ li r4, 7
/* 8027ADEC 00277D4C 4B FF B8 F9 */ bl sub_802766e4
lbl_8027ADF0:
/* 8027ADF0 00277D50 80 7B 0F B0 */ lwz r3, 0xfb0(r27)
/* 8027ADF4 00277D54 28 03 00 00 */ cmplwi r3, 0
/* 8027ADF8 00277D58 41 82 00 A8 */ beq lbl_8027AEA0
/* 8027ADFC 00277D5C 81 83 00 00 */ lwz r12, 0(r3)
/* 8027AE00 00277D60 38 80 00 00 */ li r4, 0
/* 8027AE04 00277D64 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 8027AE08 00277D68 7D 89 03 A6 */ mtctr r12
/* 8027AE0C 00277D6C 4E 80 04 21 */ bctrl
/* 8027AE10 00277D70 48 00 00 90 */ b lbl_8027AEA0
.global lbl_8027AE14
lbl_8027AE14:
/* 8027AE14 00277D74 80 7B 05 6C */ lwz r3, 0x56c(r27)
/* 8027AE18 00277D78 7F C4 F3 78 */ mr r4, r30
/* 8027AE1C 00277D7C 4B F2 C5 A9 */ bl Destroy__22CCollisionActorManagerCFR13CStateManager
/* 8027AE20 00277D80 7F 63 DB 78 */ mr r3, r27
/* 8027AE24 00277D84 7F C4 F3 78 */ mr r4, r30
/* 8027AE28 00277D88 4B FF CD 4D */ bl sub_80277b74
/* 8027AE2C 00277D8C 7F 63 DB 78 */ mr r3, r27
/* 8027AE30 00277D90 7F C4 F3 78 */ mr r4, r30
/* 8027AE34 00277D94 4B FF 92 99 */ bl sub_802740cc
/* 8027AE38 00277D98 7F 63 DB 78 */ mr r3, r27
/* 8027AE3C 00277D9C 7F C4 F3 78 */ mr r4, r30
/* 8027AE40 00277DA0 4B FF 96 0D */ bl sub_8027444c
/* 8027AE44 00277DA4 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027AE48 00277DA8 80 7E 08 4C */ lwz r3, 0x84c(r30)
/* 8027AE4C 00277DAC D0 03 07 58 */ stfs f0, 0x758(r3)
/* 8027AE50 00277DB0 48 00 00 50 */ b lbl_8027AEA0
.global lbl_8027AE54
lbl_8027AE54:
/* 8027AE54 00277DB4 88 1B 14 44 */ lbz r0, 0x1444(r27)
/* 8027AE58 00277DB8 38 60 00 01 */ li r3, 1
/* 8027AE5C 00277DBC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 8027AE60 00277DC0 98 1B 14 44 */ stb r0, 0x1444(r27)
/* 8027AE64 00277DC4 48 00 00 3C */ b lbl_8027AEA0
.global lbl_8027AE68
lbl_8027AE68:
/* 8027AE68 00277DC8 A0 1D 00 00 */ lhz r0, 0(r29)
/* 8027AE6C 00277DCC 7F C5 F3 78 */ mr r5, r30
/* 8027AE70 00277DD0 38 81 00 10 */ addi r4, r1, 0x10
/* 8027AE74 00277DD4 B0 01 00 10 */ sth r0, 0x10(r1)
/* 8027AE78 00277DD8 4B FF DE 51 */ bl sub_80278cc8
/* 8027AE7C 00277DDC 48 00 00 24 */ b lbl_8027AEA0
.global lbl_8027AE80
lbl_8027AE80:
/* 8027AE80 00277DE0 A0 1D 00 00 */ lhz r0, 0(r29)
/* 8027AE84 00277DE4 7F C5 F3 78 */ mr r5, r30
/* 8027AE88 00277DE8 38 81 00 0C */ addi r4, r1, 0xc
/* 8027AE8C 00277DEC B0 01 00 0C */ sth r0, 0xc(r1)
/* 8027AE90 00277DF0 4B FF D3 ED */ bl sub_8027827c
/* 8027AE94 00277DF4 3B E0 00 01 */ li r31, 1
/* 8027AE98 00277DF8 48 00 00 08 */ b lbl_8027AEA0
.global lbl_8027AE9C
lbl_8027AE9C:
/* 8027AE9C 00277DFC 3B E0 00 01 */ li r31, 1
.global lbl_8027AEA0
lbl_8027AEA0:
/* 8027AEA0 00277E00 57 E0 06 3F */ clrlwi. r0, r31, 0x18
/* 8027AEA4 00277E04 40 82 00 20 */ bne lbl_8027AEC4
/* 8027AEA8 00277E08 A0 1D 00 00 */ lhz r0, 0(r29)
/* 8027AEAC 00277E0C 7F 63 DB 78 */ mr r3, r27
/* 8027AEB0 00277E10 7F 84 E3 78 */ mr r4, r28
/* 8027AEB4 00277E14 7F C6 F3 78 */ mr r6, r30
/* 8027AEB8 00277E18 B0 01 00 08 */ sth r0, 8(r1)
/* 8027AEBC 00277E1C 38 A1 00 08 */ addi r5, r1, 8
/* 8027AEC0 00277E20 4B E0 1C B9 */ bl AcceptScriptMsg__10CPatternedF20EScriptObjectMessage9TUniqueIdR13CStateManager
lbl_8027AEC4:
/* 8027AEC4 00277E24 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 8027AEC8 00277E28 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8027AECC 00277E2C 7C 08 03 A6 */ mtlr r0
/* 8027AED0 00277E30 38 21 00 30 */ addi r1, r1, 0x30
/* 8027AED4 00277E34 4E 80 00 20 */ blr
.global Accept__16CMetroidPrimeExoFR8IVisitor
Accept__16CMetroidPrimeExoFR8IVisitor:
/* 8027AED8 00277E38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8027AEDC 00277E3C 7C 08 02 A6 */ mflr r0
/* 8027AEE0 00277E40 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027AEE4 00277E44 7C 60 1B 78 */ mr r0, r3
/* 8027AEE8 00277E48 7C 83 23 78 */ mr r3, r4
/* 8027AEEC 00277E4C 81 84 00 00 */ lwz r12, 0(r4)
/* 8027AEF0 00277E50 7C 04 03 78 */ mr r4, r0
/* 8027AEF4 00277E54 81 8C 00 4C */ lwz r12, 0x4c(r12)
/* 8027AEF8 00277E58 7D 89 03 A6 */ mtctr r12
/* 8027AEFC 00277E5C 4E 80 04 21 */ bctrl
/* 8027AF00 00277E60 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8027AF04 00277E64 7C 08 03 A6 */ mtlr r0
/* 8027AF08 00277E68 38 21 00 10 */ addi r1, r1, 0x10
/* 8027AF0C 00277E6C 4E 80 00 20 */ blr
.global __ct__16CMetroidPrimeExo
__ct__16CMetroidPrimeExo:
/* 8027AF10 00277E70 94 21 FE 40 */ stwu r1, -0x1c0(r1)
/* 8027AF14 00277E74 7C 08 02 A6 */ mflr r0
/* 8027AF18 00277E78 39 80 00 01 */ li r12, 1
/* 8027AF1C 00277E7C 39 60 00 02 */ li r11, 2
/* 8027AF20 00277E80 90 01 01 C4 */ stw r0, 0x1c4(r1)
/* 8027AF24 00277E84 BD C1 01 78 */ stmw r14, 0x178(r1)
/* 8027AF28 00277E88 7C CF 33 78 */ mr r15, r6
/* 8027AF2C 00277E8C 7D 0E 43 78 */ mr r14, r8
/* 8027AF30 00277E90 7C A6 2B 78 */ mr r6, r5
/* 8027AF34 00277E94 7D E8 7B 78 */ mr r8, r15
/* 8027AF38 00277E98 82 21 01 C8 */ lwz r17, 0x1c8(r1)
/* 8027AF3C 00277E9C 82 41 01 D8 */ lwz r18, 0x1d8(r1)
/* 8027AF40 00277EA0 7C 70 1B 78 */ mr r16, r3
/* 8027AF44 00277EA4 82 61 01 DC */ lwz r19, 0x1dc(r1)
/* 8027AF48 00277EA8 38 A1 00 20 */ addi r5, r1, 0x20
/* 8027AF4C 00277EAC 82 81 01 E0 */ lwz r20, 0x1e0(r1)
/* 8027AF50 00277EB0 82 A1 01 E4 */ lwz r21, 0x1e4(r1)
/* 8027AF54 00277EB4 82 C1 01 E8 */ lwz r22, 0x1e8(r1)
/* 8027AF58 00277EB8 82 E1 01 EC */ lwz r23, 0x1ec(r1)
/* 8027AF5C 00277EBC 83 01 01 F0 */ lwz r24, 0x1f0(r1)
/* 8027AF60 00277EC0 83 21 01 F4 */ lwz r25, 0x1f4(r1)
/* 8027AF64 00277EC4 83 41 01 F8 */ lwz r26, 0x1f8(r1)
/* 8027AF68 00277EC8 83 61 01 FC */ lwz r27, 0x1fc(r1)
/* 8027AF6C 00277ECC 83 81 02 00 */ lwz r28, 0x200(r1)
/* 8027AF70 00277ED0 83 A1 02 04 */ lwz r29, 0x204(r1)
/* 8027AF74 00277ED4 83 C1 02 08 */ lwz r30, 0x208(r1)
/* 8027AF78 00277ED8 83 E1 02 0C */ lwz r31, 0x20c(r1)
/* 8027AF7C 00277EDC 81 E1 02 18 */ lwz r15, 0x218(r1)
/* 8027AF80 00277EE0 A0 04 00 00 */ lhz r0, 0(r4)
/* 8027AF84 00277EE4 38 80 00 03 */ li r4, 3
/* 8027AF88 00277EE8 B0 01 00 20 */ sth r0, 0x20(r1)
/* 8027AF8C 00277EEC 80 01 01 CC */ lwz r0, 0x1cc(r1)
/* 8027AF90 00277EF0 91 21 00 08 */ stw r9, 8(r1)
/* 8027AF94 00277EF4 7C E9 3B 78 */ mr r9, r7
/* 8027AF98 00277EF8 80 01 01 D0 */ lwz r0, 0x1d0(r1)
/* 8027AF9C 00277EFC 38 E0 00 00 */ li r7, 0
/* 8027AFA0 00277F00 91 81 00 0C */ stw r12, 0xc(r1)
/* 8027AFA4 00277F04 80 01 01 D4 */ lwz r0, 0x1d4(r1)
/* 8027AFA8 00277F08 91 81 00 10 */ stw r12, 0x10(r1)
/* 8027AFAC 00277F0C 80 01 02 14 */ lwz r0, 0x214(r1)
/* 8027AFB0 00277F10 90 81 00 14 */ stw r4, 0x14(r1)
/* 8027AFB4 00277F14 38 80 00 15 */ li r4, 0x15
/* 8027AFB8 00277F18 91 41 00 18 */ stw r10, 0x18(r1)
/* 8027AFBC 00277F1C 7D CA 73 78 */ mr r10, r14
/* 8027AFC0 00277F20 81 C1 02 10 */ lwz r14, 0x210(r1)
/* 8027AFC4 00277F24 91 61 00 1C */ stw r11, 0x1c(r1)
/* 8027AFC8 00277F28 4B E0 24 89 */ bl "__ct__10CPatternedFUi9TUniqueIdRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Q210CPatterned11EFlavorTypeRC11CEntityInfoRC12CTransform4fRC10CModelDataRC14CPatternedInfoQ210CPatterned13EMovementTypeQ210CPatterned13EColliderType9EBodyTypeRC16CActorParametersUi"
/* 8027AFCC 00277F2C 3C 60 80 3F */ lis r3, lbl_803EAD54@ha
/* 8027AFD0 00277F30 38 A0 00 00 */ li r5, 0
/* 8027AFD4 00277F34 38 03 AD 54 */ addi r0, r3, lbl_803EAD54@l
/* 8027AFD8 00277F38 38 90 05 8C */ addi r4, r16, 0x58c
/* 8027AFDC 00277F3C 90 10 00 00 */ stw r0, 0(r16)
/* 8027AFE0 00277F40 38 00 00 01 */ li r0, 1
/* 8027AFE4 00277F44 38 6F 00 04 */ addi r3, r15, 4
/* 8027AFE8 00277F48 A0 CD A3 8C */ lhz r6, kInvalidUniqueId@sda21(r13)
/* 8027AFEC 00277F4C B0 D0 05 68 */ sth r6, 0x568(r16)
/* 8027AFF0 00277F50 90 B0 05 6C */ stw r5, 0x56c(r16)
/* 8027AFF4 00277F54 90 10 05 70 */ stw r0, 0x570(r16)
/* 8027AFF8 00277F58 90 10 05 74 */ stw r0, 0x574(r16)
/* 8027AFFC 00277F5C 90 B0 05 78 */ stw r5, 0x578(r16)
/* 8027B000 00277F60 90 B0 05 7C */ stw r5, 0x57c(r16)
/* 8027B004 00277F64 90 B0 05 80 */ stw r5, 0x580(r16)
/* 8027B008 00277F68 98 B0 05 84 */ stb r5, 0x584(r16)
/* 8027B00C 00277F6C 80 0F 00 00 */ lwz r0, 0(r15)
/* 8027B010 00277F70 90 10 05 88 */ stw r0, 0x588(r16)
/* 8027B014 00277F74 80 10 05 88 */ lwz r0, 0x588(r16)
/* 8027B018 00277F78 7C 09 03 A6 */ mtctr r0
/* 8027B01C 00277F7C 2C 00 00 00 */ cmpwi r0, 0
/* 8027B020 00277F80 40 81 01 08 */ ble lbl_8027B128
lbl_8027B024:
/* 8027B024 00277F84 28 04 00 00 */ cmplwi r4, 0
/* 8027B028 00277F88 41 82 00 F4 */ beq lbl_8027B11C
/* 8027B02C 00277F8C 80 03 00 00 */ lwz r0, 0(r3)
/* 8027B030 00277F90 90 04 00 00 */ stw r0, 0(r4)
/* 8027B034 00277F94 80 A3 00 04 */ lwz r5, 4(r3)
/* 8027B038 00277F98 80 03 00 08 */ lwz r0, 8(r3)
/* 8027B03C 00277F9C 90 A4 00 04 */ stw r5, 4(r4)
/* 8027B040 00277FA0 90 04 00 08 */ stw r0, 8(r4)
/* 8027B044 00277FA4 80 A3 00 0C */ lwz r5, 0xc(r3)
/* 8027B048 00277FA8 80 03 00 10 */ lwz r0, 0x10(r3)
/* 8027B04C 00277FAC 90 A4 00 0C */ stw r5, 0xc(r4)
/* 8027B050 00277FB0 90 04 00 10 */ stw r0, 0x10(r4)
/* 8027B054 00277FB4 80 A3 00 14 */ lwz r5, 0x14(r3)
/* 8027B058 00277FB8 80 03 00 18 */ lwz r0, 0x18(r3)
/* 8027B05C 00277FBC 90 A4 00 14 */ stw r5, 0x14(r4)
/* 8027B060 00277FC0 90 04 00 18 */ stw r0, 0x18(r4)
/* 8027B064 00277FC4 80 A3 00 1C */ lwz r5, 0x1c(r3)
/* 8027B068 00277FC8 80 03 00 20 */ lwz r0, 0x20(r3)
/* 8027B06C 00277FCC 90 A4 00 1C */ stw r5, 0x1c(r4)
/* 8027B070 00277FD0 90 04 00 20 */ stw r0, 0x20(r4)
/* 8027B074 00277FD4 80 A3 00 24 */ lwz r5, 0x24(r3)
/* 8027B078 00277FD8 80 03 00 28 */ lwz r0, 0x28(r3)
/* 8027B07C 00277FDC 90 A4 00 24 */ stw r5, 0x24(r4)
/* 8027B080 00277FE0 90 04 00 28 */ stw r0, 0x28(r4)
/* 8027B084 00277FE4 80 A3 00 2C */ lwz r5, 0x2c(r3)
/* 8027B088 00277FE8 80 03 00 30 */ lwz r0, 0x30(r3)
/* 8027B08C 00277FEC 90 A4 00 2C */ stw r5, 0x2c(r4)
/* 8027B090 00277FF0 90 04 00 30 */ stw r0, 0x30(r4)
/* 8027B094 00277FF4 80 A3 00 34 */ lwz r5, 0x34(r3)
/* 8027B098 00277FF8 80 03 00 38 */ lwz r0, 0x38(r3)
/* 8027B09C 00277FFC 90 A4 00 34 */ stw r5, 0x34(r4)
/* 8027B0A0 00278000 90 04 00 38 */ stw r0, 0x38(r4)
/* 8027B0A4 00278004 80 03 00 3C */ lwz r0, 0x3c(r3)
/* 8027B0A8 00278008 90 04 00 3C */ stw r0, 0x3c(r4)
/* 8027B0AC 0027800C 80 A3 00 40 */ lwz r5, 0x40(r3)
/* 8027B0B0 00278010 80 03 00 44 */ lwz r0, 0x44(r3)
/* 8027B0B4 00278014 90 A4 00 40 */ stw r5, 0x40(r4)
/* 8027B0B8 00278018 90 04 00 44 */ stw r0, 0x44(r4)
/* 8027B0BC 0027801C 80 A3 00 48 */ lwz r5, 0x48(r3)
/* 8027B0C0 00278020 80 03 00 4C */ lwz r0, 0x4c(r3)
/* 8027B0C4 00278024 90 A4 00 48 */ stw r5, 0x48(r4)
/* 8027B0C8 00278028 90 04 00 4C */ stw r0, 0x4c(r4)
/* 8027B0CC 0027802C 80 A3 00 50 */ lwz r5, 0x50(r3)
/* 8027B0D0 00278030 80 03 00 54 */ lwz r0, 0x54(r3)
/* 8027B0D4 00278034 90 A4 00 50 */ stw r5, 0x50(r4)
/* 8027B0D8 00278038 90 04 00 54 */ stw r0, 0x54(r4)
/* 8027B0DC 0027803C 80 A3 00 58 */ lwz r5, 0x58(r3)
/* 8027B0E0 00278040 80 03 00 5C */ lwz r0, 0x5c(r3)
/* 8027B0E4 00278044 90 A4 00 58 */ stw r5, 0x58(r4)
/* 8027B0E8 00278048 90 04 00 5C */ stw r0, 0x5c(r4)
/* 8027B0EC 0027804C 80 03 00 60 */ lwz r0, 0x60(r3)
/* 8027B0F0 00278050 90 04 00 60 */ stw r0, 0x60(r4)
/* 8027B0F4 00278054 80 03 00 64 */ lwz r0, 0x64(r3)
/* 8027B0F8 00278058 90 04 00 64 */ stw r0, 0x64(r4)
/* 8027B0FC 0027805C 80 03 00 68 */ lwz r0, 0x68(r3)
/* 8027B100 00278060 90 04 00 68 */ stw r0, 0x68(r4)
/* 8027B104 00278064 80 03 00 6C */ lwz r0, 0x6c(r3)
/* 8027B108 00278068 90 04 00 6C */ stw r0, 0x6c(r4)
/* 8027B10C 0027806C 80 A3 00 70 */ lwz r5, 0x70(r3)
/* 8027B110 00278070 80 03 00 74 */ lwz r0, 0x74(r3)
/* 8027B114 00278074 90 A4 00 70 */ stw r5, 0x70(r4)
/* 8027B118 00278078 90 04 00 74 */ stw r0, 0x74(r4)
lbl_8027B11C:
/* 8027B11C 0027807C 38 84 00 78 */ addi r4, r4, 0x78
/* 8027B120 00278080 38 63 00 78 */ addi r3, r3, 0x78
/* 8027B124 00278084 42 00 FF 00 */ bdnz lbl_8027B024
lbl_8027B128:
/* 8027B128 00278088 38 00 00 00 */ li r0, 0
/* 8027B12C 0027808C C0 22 BC B8 */ lfs f1, lbl_805AD9D8@sda21(r2)
/* 8027B130 00278090 90 10 07 6C */ stw r0, 0x76c(r16)
/* 8027B134 00278094 38 00 00 03 */ li r0, 3
/* 8027B138 00278098 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027B13C 0027809C D0 30 08 C0 */ stfs f1, 0x8c0(r16)
/* 8027B140 002780A0 D0 10 08 C4 */ stfs f0, 0x8c4(r16)
/* 8027B144 002780A4 D0 10 08 C8 */ stfs f0, 0x8c8(r16)
/* 8027B148 002780A8 A0 6D A3 8C */ lhz r3, kInvalidUniqueId@sda21(r13)
/* 8027B14C 002780AC B0 70 08 CC */ sth r3, 0x8cc(r16)
/* 8027B150 002780B0 90 10 08 D0 */ stw r0, 0x8d0(r16)
/* 8027B154 002780B4 90 10 08 D4 */ stw r0, 0x8d4(r16)
/* 8027B158 002780B8 48 0C EE 5D */ bl Black__6CColorFv
/* 8027B15C 002780BC 80 03 00 00 */ lwz r0, 0(r3)
/* 8027B160 002780C0 90 10 08 D8 */ stw r0, 0x8d8(r16)
/* 8027B164 002780C4 48 0C EE 51 */ bl Black__6CColorFv
/* 8027B168 002780C8 80 03 00 00 */ lwz r0, 0(r3)
/* 8027B16C 002780CC 90 10 08 DC */ stw r0, 0x8dc(r16)
/* 8027B170 002780D0 48 0C EE 45 */ bl Black__6CColorFv
/* 8027B174 002780D4 80 03 00 00 */ lwz r0, 0(r3)
/* 8027B178 002780D8 38 61 01 14 */ addi r3, r1, 0x114
/* 8027B17C 002780DC C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027B180 002780E0 90 10 08 E0 */ stw r0, 0x8e0(r16)
/* 8027B184 002780E4 80 82 BB F0 */ lwz r4, lbl_805AD910@sda21(r2)
/* 8027B188 002780E8 D0 10 08 E4 */ stfs f0, 0x8e4(r16)
/* 8027B18C 002780EC 4B D8 9B 2D */ bl string_l__4rstlFPCc
/* 8027B190 002780F0 80 70 00 64 */ lwz r3, 0x64(r16)
/* 8027B194 002780F4 38 81 01 14 */ addi r4, r1, 0x114
/* 8027B198 002780F8 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8027B19C 002780FC 38 63 00 0C */ addi r3, r3, 0xc
/* 8027B1A0 00278100 48 06 26 FD */ bl sub_802dd89c
/* 8027B1A4 00278104 90 70 08 E8 */ stw r3, 0x8e8(r16)
/* 8027B1A8 00278108 38 61 01 14 */ addi r3, r1, 0x114
/* 8027B1AC 0027810C 48 0C 29 35 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8027B1B0 00278110 C0 62 BC 08 */ lfs f3, lbl_805AD928@sda21(r2)
/* 8027B1B4 00278114 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 8027B1B8 00278118 39 E4 66 A0 */ addi r15, r4, sZeroVector__9CVector3f@l
/* 8027B1BC 0027811C 38 00 00 00 */ li r0, 0
/* 8027B1C0 00278120 D0 70 08 EC */ stfs f3, 0x8ec(r16)
/* 8027B1C4 00278124 38 A0 FF FF */ li r5, -1
/* 8027B1C8 00278128 C0 22 BC 40 */ lfs f1, lbl_805AD960@sda21(r2)
/* 8027B1CC 0027812C 34 70 0B 28 */ addic. r3, r16, 0xb28
/* 8027B1D0 00278130 D0 70 08 F0 */ stfs f3, 0x8f0(r16)
/* 8027B1D4 00278134 38 80 00 04 */ li r4, 4
/* 8027B1D8 00278138 C0 02 BC F8 */ lfs f0, lbl_805ADA18@sda21(r2)
/* 8027B1DC 0027813C 88 D0 08 F4 */ lbz r6, 0x8f4(r16)
/* 8027B1E0 00278140 50 06 3E 30 */ rlwimi r6, r0, 7, 0x18, 0x18
/* 8027B1E4 00278144 98 D0 08 F4 */ stb r6, 0x8f4(r16)
/* 8027B1E8 00278148 88 D0 08 F4 */ lbz r6, 0x8f4(r16)
/* 8027B1EC 0027814C 50 06 36 72 */ rlwimi r6, r0, 6, 0x19, 0x19
/* 8027B1F0 00278150 98 D0 08 F4 */ stb r6, 0x8f4(r16)
/* 8027B1F4 00278154 88 D0 08 F4 */ lbz r6, 0x8f4(r16)
/* 8027B1F8 00278158 50 06 2E B4 */ rlwimi r6, r0, 5, 0x1a, 0x1a
/* 8027B1FC 0027815C 98 D0 08 F4 */ stb r6, 0x8f4(r16)
/* 8027B200 00278160 88 D0 08 F4 */ lbz r6, 0x8f4(r16)
/* 8027B204 00278164 50 06 26 F6 */ rlwimi r6, r0, 4, 0x1b, 0x1b
/* 8027B208 00278168 98 D0 08 F4 */ stb r6, 0x8f4(r16)
/* 8027B20C 0027816C 88 D0 08 F4 */ lbz r6, 0x8f4(r16)
/* 8027B210 00278170 50 06 1F 38 */ rlwimi r6, r0, 3, 0x1c, 0x1c
/* 8027B214 00278174 98 D0 08 F4 */ stb r6, 0x8f4(r16)
/* 8027B218 00278178 C0 4F 00 00 */ lfs f2, 0(r15)
/* 8027B21C 0027817C D0 50 08 F8 */ stfs f2, 0x8f8(r16)
/* 8027B220 00278180 C0 4F 00 04 */ lfs f2, 4(r15)
/* 8027B224 00278184 D0 50 08 FC */ stfs f2, 0x8fc(r16)
/* 8027B228 00278188 C0 4F 00 08 */ lfs f2, 8(r15)
/* 8027B22C 0027818C D0 50 09 00 */ stfs f2, 0x900(r16)
/* 8027B230 00278190 C0 4F 00 00 */ lfs f2, 0(r15)
/* 8027B234 00278194 D0 50 09 04 */ stfs f2, 0x904(r16)
/* 8027B238 00278198 C0 4F 00 04 */ lfs f2, 4(r15)
/* 8027B23C 0027819C D0 50 09 08 */ stfs f2, 0x908(r16)
/* 8027B240 002781A0 C0 4F 00 08 */ lfs f2, 8(r15)
/* 8027B244 002781A4 D0 50 09 0C */ stfs f2, 0x90c(r16)
/* 8027B248 002781A8 D0 30 09 10 */ stfs f1, 0x910(r16)
/* 8027B24C 002781AC 88 D0 09 14 */ lbz r6, 0x914(r16)
/* 8027B250 002781B0 50 06 3E 30 */ rlwimi r6, r0, 7, 0x18, 0x18
/* 8027B254 002781B4 98 D0 09 14 */ stb r6, 0x914(r16)
/* 8027B258 002781B8 90 B0 09 18 */ stw r5, 0x918(r16)
/* 8027B25C 002781BC 92 30 09 1C */ stw r17, 0x91c(r16)
/* 8027B260 002781C0 D0 70 09 20 */ stfs f3, 0x920(r16)
/* 8027B264 002781C4 D0 10 09 24 */ stfs f0, 0x924(r16)
/* 8027B268 002781C8 D0 30 09 28 */ stfs f1, 0x928(r16)
/* 8027B26C 002781CC 90 10 09 2C */ stw r0, 0x92c(r16)
/* 8027B270 002781D0 80 B2 00 00 */ lwz r5, 0(r18)
/* 8027B274 002781D4 90 B0 09 30 */ stw r5, 0x930(r16)
/* 8027B278 002781D8 80 B2 00 04 */ lwz r5, 4(r18)
/* 8027B27C 002781DC 90 B0 09 34 */ stw r5, 0x934(r16)
/* 8027B280 002781E0 80 B2 00 08 */ lwz r5, 8(r18)
/* 8027B284 002781E4 90 B0 09 38 */ stw r5, 0x938(r16)
/* 8027B288 002781E8 80 B2 00 0C */ lwz r5, 0xc(r18)
/* 8027B28C 002781EC 90 B0 09 3C */ stw r5, 0x93c(r16)
/* 8027B290 002781F0 80 B2 00 10 */ lwz r5, 0x10(r18)
/* 8027B294 002781F4 90 B0 09 40 */ stw r5, 0x940(r16)
/* 8027B298 002781F8 88 B2 00 14 */ lbz r5, 0x14(r18)
/* 8027B29C 002781FC 98 B0 09 44 */ stb r5, 0x944(r16)
/* 8027B2A0 00278200 C0 12 00 18 */ lfs f0, 0x18(r18)
/* 8027B2A4 00278204 D0 10 09 48 */ stfs f0, 0x948(r16)
/* 8027B2A8 00278208 C0 12 00 1C */ lfs f0, 0x1c(r18)
/* 8027B2AC 0027820C D0 10 09 4C */ stfs f0, 0x94c(r16)
/* 8027B2B0 00278210 C0 12 00 20 */ lfs f0, 0x20(r18)
/* 8027B2B4 00278214 D0 10 09 50 */ stfs f0, 0x950(r16)
/* 8027B2B8 00278218 C0 12 00 24 */ lfs f0, 0x24(r18)
/* 8027B2BC 0027821C D0 10 09 54 */ stfs f0, 0x954(r16)
/* 8027B2C0 00278220 88 B2 00 28 */ lbz r5, 0x28(r18)
/* 8027B2C4 00278224 98 B0 09 58 */ stb r5, 0x958(r16)
/* 8027B2C8 00278228 C0 12 00 2C */ lfs f0, 0x2c(r18)
/* 8027B2CC 0027822C D0 10 09 5C */ stfs f0, 0x95c(r16)
/* 8027B2D0 00278230 C0 12 00 30 */ lfs f0, 0x30(r18)
/* 8027B2D4 00278234 D0 10 09 60 */ stfs f0, 0x960(r16)
/* 8027B2D8 00278238 80 B2 00 34 */ lwz r5, 0x34(r18)
/* 8027B2DC 0027823C 90 B0 09 64 */ stw r5, 0x964(r16)
/* 8027B2E0 00278240 A0 B2 00 38 */ lhz r5, 0x38(r18)
/* 8027B2E4 00278244 B0 B0 09 68 */ sth r5, 0x968(r16)
/* 8027B2E8 00278248 A0 B2 00 3A */ lhz r5, 0x3a(r18)
/* 8027B2EC 0027824C B0 B0 09 6A */ sth r5, 0x96a(r16)
/* 8027B2F0 00278250 90 10 09 6C */ stw r0, 0x96c(r16)
/* 8027B2F4 00278254 90 10 0A 80 */ stw r0, 0xa80(r16)
/* 8027B2F8 00278258 90 90 0B 24 */ stw r4, 0xb24(r16)
/* 8027B2FC 0027825C 41 82 00 0C */ beq lbl_8027B308
/* 8027B300 00278260 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 8027B304 00278264 B0 03 00 00 */ sth r0, 0(r3)
lbl_8027B308:
/* 8027B308 00278268 34 63 00 02 */ addic. r3, r3, 2
/* 8027B30C 0027826C 41 82 00 0C */ beq lbl_8027B318
/* 8027B310 00278270 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 8027B314 00278274 B0 03 00 00 */ sth r0, 0(r3)
lbl_8027B318:
/* 8027B318 00278278 34 63 00 02 */ addic. r3, r3, 2
/* 8027B31C 0027827C 41 82 00 0C */ beq lbl_8027B328
/* 8027B320 00278280 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 8027B324 00278284 B0 03 00 00 */ sth r0, 0(r3)
lbl_8027B328:
/* 8027B328 00278288 34 63 00 02 */ addic. r3, r3, 2
/* 8027B32C 0027828C 41 82 00 0C */ beq lbl_8027B338
/* 8027B330 00278290 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 8027B334 00278294 B0 03 00 00 */ sth r0, 0(r3)
lbl_8027B338:
/* 8027B338 00278298 38 80 00 00 */ li r4, 0
/* 8027B33C 0027829C 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 8027B340 002782A0 90 90 0B 30 */ stw r4, 0xb30(r16)
/* 8027B344 002782A4 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 8027B348 002782A8 38 61 01 04 */ addi r3, r1, 0x104
/* 8027B34C 002782AC 38 A1 01 0C */ addi r5, r1, 0x10c
/* 8027B350 002782B0 90 90 0B C4 */ stw r4, 0xbc4(r16)
/* 8027B354 002782B4 90 01 01 0C */ stw r0, 0x10c(r1)
/* 8027B358 002782B8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027B35C 002782BC 92 61 01 10 */ stw r19, 0x110(r1)
/* 8027B360 002782C0 81 84 00 00 */ lwz r12, 0(r4)
/* 8027B364 002782C4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027B368 002782C8 7D 89 03 A6 */ mtctr r12
/* 8027B36C 002782CC 4E 80 04 21 */ bctrl
/* 8027B370 002782D0 38 70 0C 48 */ addi r3, r16, 0xc48
/* 8027B374 002782D4 38 81 01 04 */ addi r4, r1, 0x104
/* 8027B378 002782D8 48 0C 5B 31 */ bl __ct__6CTokenFRC6CToken
/* 8027B37C 002782DC 38 61 01 04 */ addi r3, r1, 0x104
/* 8027B380 002782E0 38 80 FF FF */ li r4, -1
/* 8027B384 002782E4 48 0C 5A BD */ bl __dt__6CTokenFv
/* 8027B388 002782E8 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027B38C 002782EC 3A 40 00 00 */ li r18, 0
/* 8027B390 002782F0 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027B394 002782F4 38 60 03 40 */ li r3, 0x340
/* 8027B398 002782F8 38 84 02 20 */ addi r4, r4, 0x220
/* 8027B39C 002782FC 38 A0 00 00 */ li r5, 0
/* 8027B3A0 00278300 48 09 A4 CD */ bl __nw__FUlPCcPCc
/* 8027B3A4 00278304 7C 71 1B 79 */ or. r17, r3, r3
/* 8027B3A8 00278308 41 82 00 2C */ beq lbl_8027B3D4
/* 8027B3AC 0027830C 38 61 00 FC */ addi r3, r1, 0xfc
/* 8027B3B0 00278310 38 90 0C 48 */ addi r4, r16, 0xc48
/* 8027B3B4 00278314 48 0C 5A F5 */ bl __ct__6CTokenFRC6CToken
/* 8027B3B8 00278318 7E 23 8B 78 */ mr r3, r17
/* 8027B3BC 0027831C 38 81 00 FC */ addi r4, r1, 0xfc
/* 8027B3C0 00278320 3A 40 00 01 */ li r18, 1
/* 8027B3C4 00278324 38 A0 00 00 */ li r5, 0
/* 8027B3C8 00278328 38 C0 00 01 */ li r6, 1
/* 8027B3CC 0027832C 48 0A 40 15 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags"
/* 8027B3D0 00278330 7C 71 1B 78 */ mr r17, r3
lbl_8027B3D4:
/* 8027B3D4 00278334 7C 71 00 D0 */ neg r3, r17
/* 8027B3D8 00278338 7E 40 07 75 */ extsb. r0, r18
/* 8027B3DC 0027833C 7C 60 8B 78 */ or r0, r3, r17
/* 8027B3E0 00278340 54 00 0F FE */ srwi r0, r0, 0x1f
/* 8027B3E4 00278344 98 10 0C 50 */ stb r0, 0xc50(r16)
/* 8027B3E8 00278348 92 30 0C 54 */ stw r17, 0xc54(r16)
/* 8027B3EC 0027834C 41 82 00 10 */ beq lbl_8027B3FC
/* 8027B3F0 00278350 38 61 00 FC */ addi r3, r1, 0xfc
/* 8027B3F4 00278354 38 80 00 00 */ li r4, 0
/* 8027B3F8 00278358 48 0C 5A 49 */ bl __dt__6CTokenFv
lbl_8027B3FC:
/* 8027B3FC 0027835C 38 00 FF FF */ li r0, -1
/* 8027B400 00278360 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8027B404 00278364 90 10 0C 58 */ stw r0, 0xc58(r16)
/* 8027B408 00278368 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l
/* 8027B40C 0027836C C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027B410 00278370 7E A4 AB 78 */ mr r4, r21
/* 8027B414 00278374 7E C5 B3 78 */ mr r5, r22
/* 8027B418 00278378 38 70 0C 78 */ addi r3, r16, 0xc78
/* 8027B41C 0027837C D0 10 0C 5C */ stfs f0, 0xc5c(r16)
/* 8027B420 00278380 C0 06 00 00 */ lfs f0, 0(r6)
/* 8027B424 00278384 D0 10 0C 60 */ stfs f0, 0xc60(r16)
/* 8027B428 00278388 C0 0F 00 04 */ lfs f0, 4(r15)
/* 8027B42C 0027838C D0 10 0C 64 */ stfs f0, 0xc64(r16)
/* 8027B430 00278390 C0 0F 00 08 */ lfs f0, 8(r15)
/* 8027B434 00278394 D0 10 0C 68 */ stfs f0, 0xc68(r16)
/* 8027B438 00278398 C0 06 00 00 */ lfs f0, 0(r6)
/* 8027B43C 0027839C D0 10 0C 6C */ stfs f0, 0xc6c(r16)
/* 8027B440 002783A0 C0 0F 00 04 */ lfs f0, 4(r15)
/* 8027B444 002783A4 D0 10 0C 70 */ stfs f0, 0xc70(r16)
/* 8027B448 002783A8 C0 0F 00 08 */ lfs f0, 8(r15)
/* 8027B44C 002783AC D0 10 0C 74 */ stfs f0, 0xc74(r16)
/* 8027B450 002783B0 4B FA 0C 59 */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo
/* 8027B454 002783B4 7E E4 BB 78 */ mr r4, r23
/* 8027B458 002783B8 38 70 0C A0 */ addi r3, r16, 0xca0
/* 8027B45C 002783BC 4B D8 F9 4D */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027B460 002783C0 7F 04 C3 78 */ mr r4, r24
/* 8027B464 002783C4 7F 25 CB 78 */ mr r5, r25
/* 8027B468 002783C8 38 70 0D 74 */ addi r3, r16, 0xd74
/* 8027B46C 002783CC 4B FA 0C 3D */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo
/* 8027B470 002783D0 7F 44 D3 78 */ mr r4, r26
/* 8027B474 002783D4 38 70 0D 9C */ addi r3, r16, 0xd9c
/* 8027B478 002783D8 4B D8 F9 31 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027B47C 002783DC 80 1B 00 00 */ lwz r0, 0(r27)
/* 8027B480 002783E0 38 70 0E 74 */ addi r3, r16, 0xe74
/* 8027B484 002783E4 38 9B 00 04 */ addi r4, r27, 4
/* 8027B488 002783E8 90 10 0E 70 */ stw r0, 0xe70(r16)
/* 8027B48C 002783EC 48 0C 5A 1D */ bl __ct__6CTokenFRC6CToken
/* 8027B490 002783F0 80 BB 00 0C */ lwz r5, 0xc(r27)
/* 8027B494 002783F4 38 00 00 00 */ li r0, 0
/* 8027B498 002783F8 7F A4 EB 78 */ mr r4, r29
/* 8027B49C 002783FC 38 70 0E D0 */ addi r3, r16, 0xed0
/* 8027B4A0 00278400 90 B0 0E 7C */ stw r5, 0xe7c(r16)
/* 8027B4A4 00278404 88 BB 00 10 */ lbz r5, 0x10(r27)
/* 8027B4A8 00278408 98 B0 0E 80 */ stb r5, 0xe80(r16)
/* 8027B4AC 0027840C C0 1B 00 14 */ lfs f0, 0x14(r27)
/* 8027B4B0 00278410 D0 10 0E 84 */ stfs f0, 0xe84(r16)
/* 8027B4B4 00278414 C0 1B 00 18 */ lfs f0, 0x18(r27)
/* 8027B4B8 00278418 D0 10 0E 88 */ stfs f0, 0xe88(r16)
/* 8027B4BC 0027841C C0 1B 00 1C */ lfs f0, 0x1c(r27)
/* 8027B4C0 00278420 D0 10 0E 8C */ stfs f0, 0xe8c(r16)
/* 8027B4C4 00278424 C0 1B 00 20 */ lfs f0, 0x20(r27)
/* 8027B4C8 00278428 D0 10 0E 90 */ stfs f0, 0xe90(r16)
/* 8027B4CC 0027842C 88 BB 00 24 */ lbz r5, 0x24(r27)
/* 8027B4D0 00278430 98 B0 0E 94 */ stb r5, 0xe94(r16)
/* 8027B4D4 00278434 C0 1B 00 28 */ lfs f0, 0x28(r27)
/* 8027B4D8 00278438 D0 10 0E 98 */ stfs f0, 0xe98(r16)
/* 8027B4DC 0027843C C0 1B 00 2C */ lfs f0, 0x2c(r27)
/* 8027B4E0 00278440 D0 10 0E 9C */ stfs f0, 0xe9c(r16)
/* 8027B4E4 00278444 C0 1B 00 30 */ lfs f0, 0x30(r27)
/* 8027B4E8 00278448 D0 10 0E A0 */ stfs f0, 0xea0(r16)
/* 8027B4EC 0027844C 80 BB 00 34 */ lwz r5, 0x34(r27)
/* 8027B4F0 00278450 90 B0 0E A4 */ stw r5, 0xea4(r16)
/* 8027B4F4 00278454 88 BB 00 38 */ lbz r5, 0x38(r27)
/* 8027B4F8 00278458 98 B0 0E A8 */ stb r5, 0xea8(r16)
/* 8027B4FC 0027845C A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13)
/* 8027B500 00278460 B0 B0 0E AC */ sth r5, 0xeac(r16)
/* 8027B504 00278464 90 10 0E B0 */ stw r0, 0xeb0(r16)
/* 8027B508 00278468 80 1C 00 00 */ lwz r0, 0(r28)
/* 8027B50C 0027846C 90 10 0E B4 */ stw r0, 0xeb4(r16)
/* 8027B510 00278470 88 1C 00 04 */ lbz r0, 4(r28)
/* 8027B514 00278474 98 10 0E B8 */ stb r0, 0xeb8(r16)
/* 8027B518 00278478 C0 1C 00 08 */ lfs f0, 8(r28)
/* 8027B51C 0027847C D0 10 0E BC */ stfs f0, 0xebc(r16)
/* 8027B520 00278480 C0 1C 00 0C */ lfs f0, 0xc(r28)
/* 8027B524 00278484 D0 10 0E C0 */ stfs f0, 0xec0(r16)
/* 8027B528 00278488 C0 1C 00 10 */ lfs f0, 0x10(r28)
/* 8027B52C 0027848C D0 10 0E C4 */ stfs f0, 0xec4(r16)
/* 8027B530 00278490 C0 1C 00 14 */ lfs f0, 0x14(r28)
/* 8027B534 00278494 D0 10 0E C8 */ stfs f0, 0xec8(r16)
/* 8027B538 00278498 88 1C 00 18 */ lbz r0, 0x18(r28)
/* 8027B53C 0027849C 98 10 0E CC */ stb r0, 0xecc(r16)
/* 8027B540 002784A0 4B D8 F8 69 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027B544 002784A4 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13)
/* 8027B548 002784A8 3C 80 80 3D */ lis r4, lbl_803D5618@ha
/* 8027B54C 002784AC 38 84 56 18 */ addi r4, r4, lbl_803D5618@l
/* 8027B550 002784B0 81 83 00 00 */ lwz r12, 0(r3)
/* 8027B554 002784B4 38 84 02 39 */ addi r4, r4, 0x239
/* 8027B558 002784B8 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 8027B55C 002784BC 7D 89 03 A6 */ mtctr r12
/* 8027B560 002784C0 4E 80 04 21 */ bctrl
/* 8027B564 002784C4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027B568 002784C8 7C 65 1B 78 */ mr r5, r3
/* 8027B56C 002784CC 38 61 00 F4 */ addi r3, r1, 0xf4
/* 8027B570 002784D0 81 84 00 00 */ lwz r12, 0(r4)
/* 8027B574 002784D4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027B578 002784D8 7D 89 03 A6 */ mtctr r12
/* 8027B57C 002784DC 4E 80 04 21 */ bctrl
/* 8027B580 002784E0 38 70 0F A4 */ addi r3, r16, 0xfa4
/* 8027B584 002784E4 38 81 00 F4 */ addi r4, r1, 0xf4
/* 8027B588 002784E8 48 0C 59 21 */ bl __ct__6CTokenFRC6CToken
/* 8027B58C 002784EC 38 61 00 F4 */ addi r3, r1, 0xf4
/* 8027B590 002784F0 38 80 FF FF */ li r4, -1
/* 8027B594 002784F4 48 0C 58 AD */ bl __dt__6CTokenFv
/* 8027B598 002784F8 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027B59C 002784FC 3A 20 00 00 */ li r17, 0
/* 8027B5A0 00278500 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027B5A4 00278504 38 60 04 58 */ li r3, 0x458
/* 8027B5A8 00278508 38 84 02 20 */ addi r4, r4, 0x220
/* 8027B5AC 0027850C 38 A0 00 00 */ li r5, 0
/* 8027B5B0 00278510 48 09 A2 BD */ bl __nw__FUlPCcPCc
/* 8027B5B4 00278514 7C 6F 1B 79 */ or. r15, r3, r3
/* 8027B5B8 00278518 41 82 00 24 */ beq lbl_8027B5DC
/* 8027B5BC 0027851C 38 61 00 EC */ addi r3, r1, 0xec
/* 8027B5C0 00278520 38 90 0F A4 */ addi r4, r16, 0xfa4
/* 8027B5C4 00278524 48 0C 58 E5 */ bl __ct__6CTokenFRC6CToken
/* 8027B5C8 00278528 7D E3 7B 78 */ mr r3, r15
/* 8027B5CC 0027852C 38 81 00 EC */ addi r4, r1, 0xec
/* 8027B5D0 00278530 3A 20 00 01 */ li r17, 1
/* 8027B5D4 00278534 48 0E 6B 9D */ bl "__ct__17CParticleElectricF30TToken<20CElectricDescription>"
/* 8027B5D8 00278538 7C 6F 1B 78 */ mr r15, r3
lbl_8027B5DC:
/* 8027B5DC 0027853C 7C 6F 00 D0 */ neg r3, r15
/* 8027B5E0 00278540 7E 20 07 75 */ extsb. r0, r17
/* 8027B5E4 00278544 7C 60 7B 78 */ or r0, r3, r15
/* 8027B5E8 00278548 54 00 0F FE */ srwi r0, r0, 0x1f
/* 8027B5EC 0027854C 98 10 0F AC */ stb r0, 0xfac(r16)
/* 8027B5F0 00278550 91 F0 0F B0 */ stw r15, 0xfb0(r16)
/* 8027B5F4 00278554 41 82 00 10 */ beq lbl_8027B604
/* 8027B5F8 00278558 38 61 00 EC */ addi r3, r1, 0xec
/* 8027B5FC 0027855C 38 80 00 00 */ li r4, 0
/* 8027B600 00278560 48 0C 58 41 */ bl __dt__6CTokenFv
lbl_8027B604:
/* 8027B604 00278564 C0 02 BC 08 */ lfs f0, lbl_805AD928@sda21(r2)
/* 8027B608 00278568 3C 80 50 41 */ lis r4, 0x50415254@ha
/* 8027B60C 0027856C 38 C0 00 00 */ li r6, 0
/* 8027B610 00278570 38 61 00 DC */ addi r3, r1, 0xdc
/* 8027B614 00278574 D0 10 0F B4 */ stfs f0, 0xfb4(r16)
/* 8027B618 00278578 38 04 52 54 */ addi r0, r4, 0x50415254@l
/* 8027B61C 0027857C 38 A1 00 E4 */ addi r5, r1, 0xe4
/* 8027B620 00278580 D0 10 0F B8 */ stfs f0, 0xfb8(r16)
/* 8027B624 00278584 90 D0 0F BC */ stw r6, 0xfbc(r16)
/* 8027B628 00278588 98 D0 0F C0 */ stb r6, 0xfc0(r16)
/* 8027B62C 0027858C 98 D0 0F C1 */ stb r6, 0xfc1(r16)
/* 8027B630 00278590 90 D0 0F C4 */ stw r6, 0xfc4(r16)
/* 8027B634 00278594 90 D0 0F D8 */ stw r6, 0xfd8(r16)
/* 8027B638 00278598 90 D0 0F EC */ stw r6, 0xfec(r16)
/* 8027B63C 0027859C 90 D0 10 00 */ stw r6, 0x1000(r16)
/* 8027B640 002785A0 90 01 00 E4 */ stw r0, 0xe4(r1)
/* 8027B644 002785A4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027B648 002785A8 91 C1 00 E8 */ stw r14, 0xe8(r1)
/* 8027B64C 002785AC 81 84 00 00 */ lwz r12, 0(r4)
/* 8027B650 002785B0 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027B654 002785B4 7D 89 03 A6 */ mtctr r12
/* 8027B658 002785B8 4E 80 04 21 */ bctrl
/* 8027B65C 002785BC 38 70 10 14 */ addi r3, r16, 0x1014
/* 8027B660 002785C0 38 81 00 DC */ addi r4, r1, 0xdc
/* 8027B664 002785C4 48 0C 58 45 */ bl __ct__6CTokenFRC6CToken
/* 8027B668 002785C8 38 61 00 DC */ addi r3, r1, 0xdc
/* 8027B66C 002785CC 38 80 FF FF */ li r4, -1
/* 8027B670 002785D0 48 0C 57 D1 */ bl __dt__6CTokenFv
/* 8027B674 002785D4 80 01 02 14 */ lwz r0, 0x214(r1)
/* 8027B678 002785D8 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 8027B67C 002785DC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027B680 002785E0 38 A1 00 D4 */ addi r5, r1, 0xd4
/* 8027B684 002785E4 90 01 00 D8 */ stw r0, 0xd8(r1)
/* 8027B688 002785E8 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 8027B68C 002785EC 38 61 00 CC */ addi r3, r1, 0xcc
/* 8027B690 002785F0 90 01 00 D4 */ stw r0, 0xd4(r1)
/* 8027B694 002785F4 81 84 00 00 */ lwz r12, 0(r4)
/* 8027B698 002785F8 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027B69C 002785FC 7D 89 03 A6 */ mtctr r12
/* 8027B6A0 00278600 4E 80 04 21 */ bctrl
/* 8027B6A4 00278604 38 70 10 1C */ addi r3, r16, 0x101c
/* 8027B6A8 00278608 38 81 00 CC */ addi r4, r1, 0xcc
/* 8027B6AC 0027860C 48 0C 57 FD */ bl __ct__6CTokenFRC6CToken
/* 8027B6B0 00278610 38 61 00 CC */ addi r3, r1, 0xcc
/* 8027B6B4 00278614 38 80 FF FF */ li r4, -1
/* 8027B6B8 00278618 48 0C 57 89 */ bl __dt__6CTokenFv
/* 8027B6BC 0027861C 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027B6C0 00278620 39 E0 00 00 */ li r15, 0
/* 8027B6C4 00278624 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027B6C8 00278628 38 60 03 40 */ li r3, 0x340
/* 8027B6CC 0027862C 38 84 02 20 */ addi r4, r4, 0x220
/* 8027B6D0 00278630 38 A0 00 00 */ li r5, 0
/* 8027B6D4 00278634 48 09 A1 99 */ bl __nw__FUlPCcPCc
/* 8027B6D8 00278638 7C 6E 1B 79 */ or. r14, r3, r3
/* 8027B6DC 0027863C 41 82 00 2C */ beq lbl_8027B708
/* 8027B6E0 00278640 38 61 00 C4 */ addi r3, r1, 0xc4
/* 8027B6E4 00278644 38 90 10 14 */ addi r4, r16, 0x1014
/* 8027B6E8 00278648 48 0C 57 C1 */ bl __ct__6CTokenFRC6CToken
/* 8027B6EC 0027864C 7D C3 73 78 */ mr r3, r14
/* 8027B6F0 00278650 38 81 00 C4 */ addi r4, r1, 0xc4
/* 8027B6F4 00278654 39 E0 00 01 */ li r15, 1
/* 8027B6F8 00278658 38 A0 00 00 */ li r5, 0
/* 8027B6FC 0027865C 38 C0 00 01 */ li r6, 1
/* 8027B700 00278660 48 0A 3C E1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags"
/* 8027B704 00278664 7C 6E 1B 78 */ mr r14, r3
lbl_8027B708:
/* 8027B708 00278668 7C 6E 00 D0 */ neg r3, r14
/* 8027B70C 0027866C 7D E0 07 75 */ extsb. r0, r15
/* 8027B710 00278670 7C 60 73 78 */ or r0, r3, r14
/* 8027B714 00278674 54 00 0F FE */ srwi r0, r0, 0x1f
/* 8027B718 00278678 98 10 10 24 */ stb r0, 0x1024(r16)
/* 8027B71C 0027867C 91 D0 10 28 */ stw r14, 0x1028(r16)
/* 8027B720 00278680 41 82 00 10 */ beq lbl_8027B730
/* 8027B724 00278684 38 61 00 C4 */ addi r3, r1, 0xc4
/* 8027B728 00278688 38 80 00 00 */ li r4, 0
/* 8027B72C 0027868C 48 0C 57 15 */ bl __dt__6CTokenFv
lbl_8027B730:
/* 8027B730 00278690 38 C0 00 00 */ li r6, 0
/* 8027B734 00278694 C0 22 BC 08 */ lfs f1, lbl_805AD928@sda21(r2)
/* 8027B738 00278698 90 D0 10 2C */ stw r6, 0x102c(r16)
/* 8027B73C 0027869C 38 00 FF FF */ li r0, -1
/* 8027B740 002786A0 C0 02 BC FC */ lfs f0, lbl_805ADA1C@sda21(r2)
/* 8027B744 002786A4 38 70 10 8C */ addi r3, r16, 0x108c
/* 8027B748 002786A8 90 D0 10 38 */ stw r6, 0x1038(r16)
/* 8027B74C 002786AC 80 81 01 CC */ lwz r4, 0x1cc(r1)
/* 8027B750 002786B0 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13)
/* 8027B754 002786B4 B0 B0 10 44 */ sth r5, 0x1044(r16)
/* 8027B758 002786B8 A0 AD A3 8C */ lhz r5, kInvalidUniqueId@sda21(r13)
/* 8027B75C 002786BC B0 B0 10 46 */ sth r5, 0x1046(r16)
/* 8027B760 002786C0 D0 30 10 48 */ stfs f1, 0x1048(r16)
/* 8027B764 002786C4 D0 10 10 4C */ stfs f0, 0x104c(r16)
/* 8027B768 002786C8 D0 30 10 50 */ stfs f1, 0x1050(r16)
/* 8027B76C 002786CC 88 B0 10 54 */ lbz r5, 0x1054(r16)
/* 8027B770 002786D0 50 C5 3E 30 */ rlwimi r5, r6, 7, 0x18, 0x18
/* 8027B774 002786D4 98 B0 10 54 */ stb r5, 0x1054(r16)
/* 8027B778 002786D8 88 B0 10 54 */ lbz r5, 0x1054(r16)
/* 8027B77C 002786DC 50 C5 36 72 */ rlwimi r5, r6, 6, 0x19, 0x19
/* 8027B780 002786E0 98 B0 10 54 */ stb r5, 0x1054(r16)
/* 8027B784 002786E4 88 B0 10 54 */ lbz r5, 0x1054(r16)
/* 8027B788 002786E8 50 C5 2E B4 */ rlwimi r5, r6, 5, 0x1a, 0x1a
/* 8027B78C 002786EC 98 B0 10 54 */ stb r5, 0x1054(r16)
/* 8027B790 002786F0 88 B0 10 54 */ lbz r5, 0x1054(r16)
/* 8027B794 002786F4 50 C5 26 F6 */ rlwimi r5, r6, 4, 0x1b, 0x1b
/* 8027B798 002786F8 98 B0 10 54 */ stb r5, 0x1054(r16)
/* 8027B79C 002786FC 90 D0 10 58 */ stw r6, 0x1058(r16)
/* 8027B7A0 00278700 90 D0 10 6C */ stw r6, 0x106c(r16)
/* 8027B7A4 00278704 D0 30 10 74 */ stfs f1, 0x1074(r16)
/* 8027B7A8 00278708 90 10 10 78 */ stw r0, 0x1078(r16)
/* 8027B7AC 0027870C D0 30 10 7C */ stfs f1, 0x107c(r16)
/* 8027B7B0 00278710 D0 30 10 84 */ stfs f1, 0x1084(r16)
/* 8027B7B4 00278714 D0 30 10 88 */ stfs f1, 0x1088(r16)
/* 8027B7B8 00278718 4B D8 F5 F1 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027B7BC 0027871C 38 00 00 00 */ li r0, 0
/* 8027B7C0 00278720 80 81 01 D0 */ lwz r4, 0x1d0(r1)
/* 8027B7C4 00278724 90 10 11 60 */ stw r0, 0x1160(r16)
/* 8027B7C8 00278728 38 70 12 94 */ addi r3, r16, 0x1294
/* 8027B7CC 0027872C 90 10 12 58 */ stw r0, 0x1258(r16)
/* 8027B7D0 00278730 4B D8 F5 D9 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027B7D4 00278734 80 81 01 D4 */ lwz r4, 0x1d4(r1)
/* 8027B7D8 00278738 38 70 13 68 */ addi r3, r16, 0x1368
/* 8027B7DC 0027873C 4B D8 F5 CD */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData
/* 8027B7E0 00278740 3C 80 80 3D */ lis r4, lbl_803D5618@ha
/* 8027B7E4 00278744 38 60 00 9C */ li r3, 0x9c
/* 8027B7E8 00278748 38 84 56 18 */ addi r4, r4, lbl_803D5618@l
/* 8027B7EC 0027874C 38 A0 00 00 */ li r5, 0
/* 8027B7F0 00278750 38 84 02 20 */ addi r4, r4, 0x220
/* 8027B7F4 00278754 48 09 A0 79 */ bl __nw__FUlPCcPCc
/* 8027B7F8 00278758 28 03 00 00 */ cmplwi r3, 0
/* 8027B7FC 0027875C 41 82 00 14 */ beq lbl_8027B810
/* 8027B800 00278760 38 80 00 80 */ li r4, 0x80
/* 8027B804 00278764 38 A0 00 80 */ li r5, 0x80
/* 8027B808 00278768 38 C0 00 01 */ li r6, 1
/* 8027B80C 0027876C 48 02 2B D1 */ bl __ct__16CProjectedShadowFv
lbl_8027B810:
/* 8027B810 00278770 90 70 14 3C */ stw r3, 0x143c(r16)
/* 8027B814 00278774 38 00 FF FF */ li r0, -1
/* 8027B818 00278778 39 E0 00 00 */ li r15, 0
/* 8027B81C 0027877C 39 D4 00 04 */ addi r14, r20, 4
/* 8027B820 00278780 90 10 14 40 */ stw r0, 0x1440(r16)
/* 8027B824 00278784 3A 30 0B 30 */ addi r17, r16, 0xb30
/* 8027B828 00278788 3A 50 0B C4 */ addi r18, r16, 0xbc4
/* 8027B82C 0027878C 3A 70 0A 80 */ addi r19, r16, 0xa80
/* 8027B830 00278790 88 10 14 44 */ lbz r0, 0x1444(r16)
/* 8027B834 00278794 51 E0 3E 30 */ rlwimi r0, r15, 7, 0x18, 0x18
/* 8027B838 00278798 3A A0 00 00 */ li r21, 0
/* 8027B83C 0027879C 98 10 14 44 */ stb r0, 0x1444(r16)
/* 8027B840 002787A0 88 10 14 44 */ lbz r0, 0x1444(r16)
/* 8027B844 002787A4 51 E0 36 72 */ rlwimi r0, r15, 6, 0x19, 0x19
/* 8027B848 002787A8 98 10 14 44 */ stb r0, 0x1444(r16)
/* 8027B84C 002787AC 48 00 01 94 */ b lbl_8027B9E0
lbl_8027B850:
/* 8027B850 002787B0 7D C4 73 78 */ mr r4, r14
/* 8027B854 002787B4 38 70 09 6C */ addi r3, r16, 0x96c
/* 8027B858 002787B8 48 00 07 CD */ bl sub_8027c024
/* 8027B85C 002787BC 80 11 00 00 */ lwz r0, 0(r17)
/* 8027B860 002787C0 1C 00 00 24 */ mulli r0, r0, 0x24
/* 8027B864 002787C4 7C 71 02 14 */ add r3, r17, r0
/* 8027B868 002787C8 34 63 00 04 */ addic. r3, r3, 4
/* 8027B86C 002787CC 41 82 00 4C */ beq lbl_8027B8B8
/* 8027B870 002787D0 80 0E 00 64 */ lwz r0, 0x64(r14)
/* 8027B874 002787D4 90 03 00 00 */ stw r0, 0(r3)
/* 8027B878 002787D8 80 0E 00 68 */ lwz r0, 0x68(r14)
/* 8027B87C 002787DC 90 03 00 04 */ stw r0, 4(r3)
/* 8027B880 002787E0 80 0E 00 6C */ lwz r0, 0x6c(r14)
/* 8027B884 002787E4 90 03 00 08 */ stw r0, 8(r3)
/* 8027B888 002787E8 80 0E 00 70 */ lwz r0, 0x70(r14)
/* 8027B88C 002787EC 90 03 00 0C */ stw r0, 0xc(r3)
/* 8027B890 002787F0 80 0E 00 74 */ lwz r0, 0x74(r14)
/* 8027B894 002787F4 90 03 00 10 */ stw r0, 0x10(r3)
/* 8027B898 002787F8 80 0E 00 78 */ lwz r0, 0x78(r14)
/* 8027B89C 002787FC 90 03 00 14 */ stw r0, 0x14(r3)
/* 8027B8A0 00278800 80 0E 00 7C */ lwz r0, 0x7c(r14)
/* 8027B8A4 00278804 90 03 00 18 */ stw r0, 0x18(r3)
/* 8027B8A8 00278808 80 0E 00 80 */ lwz r0, 0x80(r14)
/* 8027B8AC 0027880C 90 03 00 1C */ stw r0, 0x1c(r3)
/* 8027B8B0 00278810 80 0E 00 84 */ lwz r0, 0x84(r14)
/* 8027B8B4 00278814 90 03 00 20 */ stw r0, 0x20(r3)
lbl_8027B8B8:
/* 8027B8B8 00278818 80 70 0B 30 */ lwz r3, 0xb30(r16)
/* 8027B8BC 0027881C 38 03 00 01 */ addi r0, r3, 1
/* 8027B8C0 00278820 90 10 0B 30 */ stw r0, 0xb30(r16)
/* 8027B8C4 00278824 80 12 00 00 */ lwz r0, 0(r18)
/* 8027B8C8 00278828 80 8E 00 8C */ lwz r4, 0x8c(r14)
/* 8027B8CC 0027882C 54 00 28 34 */ slwi r0, r0, 5
/* 8027B8D0 00278830 88 6E 00 90 */ lbz r3, 0x90(r14)
/* 8027B8D4 00278834 7C B2 02 14 */ add r5, r18, r0
/* 8027B8D8 00278838 C0 6E 00 94 */ lfs f3, 0x94(r14)
/* 8027B8DC 0027883C C0 4E 00 98 */ lfs f2, 0x98(r14)
/* 8027B8E0 00278840 34 A5 00 04 */ addic. r5, r5, 4
/* 8027B8E4 00278844 C0 2E 00 9C */ lfs f1, 0x9c(r14)
/* 8027B8E8 00278848 C0 0E 00 A0 */ lfs f0, 0xa0(r14)
/* 8027B8EC 0027884C 88 0E 00 A4 */ lbz r0, 0xa4(r14)
/* 8027B8F0 00278850 90 81 01 28 */ stw r4, 0x128(r1)
/* 8027B8F4 00278854 C0 8E 00 88 */ lfs f4, 0x88(r14)
/* 8027B8F8 00278858 98 61 01 2C */ stb r3, 0x12c(r1)
/* 8027B8FC 0027885C D0 61 01 30 */ stfs f3, 0x130(r1)
/* 8027B900 00278860 D0 41 01 34 */ stfs f2, 0x134(r1)
/* 8027B904 00278864 D0 21 01 38 */ stfs f1, 0x138(r1)
/* 8027B908 00278868 D0 01 01 3C */ stfs f0, 0x13c(r1)
/* 8027B90C 0027886C 98 01 01 40 */ stb r0, 0x140(r1)
/* 8027B910 00278870 41 82 00 24 */ beq lbl_8027B934
/* 8027B914 00278874 D0 85 00 00 */ stfs f4, 0(r5)
/* 8027B918 00278878 90 85 00 04 */ stw r4, 4(r5)
/* 8027B91C 0027887C 98 65 00 08 */ stb r3, 8(r5)
/* 8027B920 00278880 D0 65 00 0C */ stfs f3, 0xc(r5)
/* 8027B924 00278884 D0 45 00 10 */ stfs f2, 0x10(r5)
/* 8027B928 00278888 D0 25 00 14 */ stfs f1, 0x14(r5)
/* 8027B92C 0027888C D0 05 00 18 */ stfs f0, 0x18(r5)
/* 8027B930 00278890 98 05 00 1C */ stb r0, 0x1c(r5)
lbl_8027B934:
/* 8027B934 00278894 80 90 0B C4 */ lwz r4, 0xbc4(r16)
/* 8027B938 00278898 38 61 01 44 */ addi r3, r1, 0x144
/* 8027B93C 0027889C 38 AE 00 48 */ addi r5, r14, 0x48
/* 8027B940 002788A0 38 04 00 01 */ addi r0, r4, 1
/* 8027B944 002788A4 90 10 0B C4 */ stw r0, 0xbc4(r16)
/* 8027B948 002788A8 80 8E 00 44 */ lwz r4, 0x44(r14)
/* 8027B94C 002788AC 4B FA 07 5D */ bl __ct__15CProjectileInfoFUiRC11CDamageInfo
/* 8027B950 002788B0 80 13 00 00 */ lwz r0, 0(r19)
/* 8027B954 002788B4 1C 00 00 28 */ mulli r0, r0, 0x28
/* 8027B958 002788B8 7E D3 02 14 */ add r22, r19, r0
/* 8027B95C 002788BC 36 D6 00 04 */ addic. r22, r22, 4
/* 8027B960 002788C0 41 82 00 50 */ beq lbl_8027B9B0
/* 8027B964 002788C4 7E C3 B3 78 */ mr r3, r22
/* 8027B968 002788C8 38 81 01 44 */ addi r4, r1, 0x144
/* 8027B96C 002788CC 48 0C 55 3D */ bl __ct__6CTokenFRC6CToken
/* 8027B970 002788D0 80 01 01 4C */ lwz r0, 0x14c(r1)
/* 8027B974 002788D4 90 16 00 08 */ stw r0, 8(r22)
/* 8027B978 002788D8 80 01 01 50 */ lwz r0, 0x150(r1)
/* 8027B97C 002788DC 90 16 00 0C */ stw r0, 0xc(r22)
/* 8027B980 002788E0 88 01 01 54 */ lbz r0, 0x154(r1)
/* 8027B984 002788E4 98 16 00 10 */ stb r0, 0x10(r22)
/* 8027B988 002788E8 C0 01 01 58 */ lfs f0, 0x158(r1)
/* 8027B98C 002788EC D0 16 00 14 */ stfs f0, 0x14(r22)
/* 8027B990 002788F0 C0 01 01 5C */ lfs f0, 0x15c(r1)
/* 8027B994 002788F4 D0 16 00 18 */ stfs f0, 0x18(r22)
/* 8027B998 002788F8 C0 01 01 60 */ lfs f0, 0x160(r1)
/* 8027B99C 002788FC D0 16 00 1C */ stfs f0, 0x1c(r22)
/* 8027B9A0 00278900 C0 01 01 64 */ lfs f0, 0x164(r1)
/* 8027B9A4 00278904 D0 16 00 20 */ stfs f0, 0x20(r22)
/* 8027B9A8 00278908 88 01 01 68 */ lbz r0, 0x168(r1)
/* 8027B9AC 0027890C 98 16 00 24 */ stb r0, 0x24(r22)
lbl_8027B9B0:
/* 8027B9B0 00278910 80 B0 0A 80 */ lwz r5, 0xa80(r16)
/* 8027B9B4 00278914 38 61 01 44 */ addi r3, r1, 0x144
/* 8027B9B8 00278918 38 80 00 00 */ li r4, 0
/* 8027B9BC 0027891C 38 05 00 01 */ addi r0, r5, 1
/* 8027B9C0 00278920 90 10 0A 80 */ stw r0, 0xa80(r16)
/* 8027B9C4 00278924 48 0C 54 7D */ bl __dt__6CTokenFv
/* 8027B9C8 00278928 7C 70 7A 14 */ add r3, r16, r15
/* 8027B9CC 0027892C 38 63 0A 84 */ addi r3, r3, 0xa84
/* 8027B9D0 00278930 48 0C 53 B5 */ bl Lock__6CTokenFv
/* 8027B9D4 00278934 39 CE 00 A8 */ addi r14, r14, 0xa8
/* 8027B9D8 00278938 39 EF 00 28 */ addi r15, r15, 0x28
/* 8027B9DC 0027893C 3A B5 00 01 */ addi r21, r21, 1
lbl_8027B9E0:
/* 8027B9E0 00278940 80 14 00 00 */ lwz r0, 0(r20)
/* 8027B9E4 00278944 7C 15 00 00 */ cmpw r21, r0
/* 8027B9E8 00278948 41 80 FE 68 */ blt lbl_8027B850
/* 8027B9EC 0027894C 38 70 04 60 */ addi r3, r16, 0x460
/* 8027B9F0 00278950 38 80 00 00 */ li r4, 0
/* 8027B9F4 00278954 4B FB 83 71 */ bl SetAutoResetImpulse__20CKnockBackControllerFb
/* 8027B9F8 00278958 88 10 04 E1 */ lbz r0, 0x4e1(r16)
/* 8027B9FC 0027895C 38 80 00 00 */ li r4, 0
/* 8027BA00 00278960 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b
/* 8027BA04 00278964 38 70 0C 78 */ addi r3, r16, 0xc78
/* 8027BA08 00278968 98 10 04 E1 */ stb r0, 0x4e1(r16)
/* 8027BA0C 0027896C 88 10 04 E1 */ lbz r0, 0x4e1(r16)
/* 8027BA10 00278970 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19
/* 8027BA14 00278974 98 10 04 E1 */ stb r0, 0x4e1(r16)
/* 8027BA18 00278978 48 0C 53 6D */ bl Lock__6CTokenFv
/* 8027BA1C 0027897C 38 70 0D 74 */ addi r3, r16, 0xd74
/* 8027BA20 00278980 48 0C 53 65 */ bl Lock__6CTokenFv
/* 8027BA24 00278984 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 8027BA28 00278988 93 C1 00 C0 */ stw r30, 0xc0(r1)
/* 8027BA2C 0027898C 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 8027BA30 00278990 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027BA34 00278994 90 01 00 BC */ stw r0, 0xbc(r1)
/* 8027BA38 00278998 38 61 00 B4 */ addi r3, r1, 0xb4
/* 8027BA3C 0027899C 38 A1 00 BC */ addi r5, r1, 0xbc
/* 8027BA40 002789A0 81 84 00 00 */ lwz r12, 0(r4)
/* 8027BA44 002789A4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027BA48 002789A8 7D 89 03 A6 */ mtctr r12
/* 8027BA4C 002789AC 4E 80 04 21 */ bctrl
/* 8027BA50 002789B0 38 61 00 AC */ addi r3, r1, 0xac
/* 8027BA54 002789B4 38 81 00 B4 */ addi r4, r1, 0xb4
/* 8027BA58 002789B8 48 0C 54 51 */ bl __ct__6CTokenFRC6CToken
/* 8027BA5C 002789BC 38 70 0F C4 */ addi r3, r16, 0xfc4
/* 8027BA60 002789C0 80 10 0F C4 */ lwz r0, 0xfc4(r16)
/* 8027BA64 002789C4 54 00 18 38 */ slwi r0, r0, 3
/* 8027BA68 002789C8 7C 63 02 14 */ add r3, r3, r0
/* 8027BA6C 002789CC 34 63 00 04 */ addic. r3, r3, 4
/* 8027BA70 002789D0 41 82 00 0C */ beq lbl_8027BA7C
/* 8027BA74 002789D4 38 81 00 AC */ addi r4, r1, 0xac
/* 8027BA78 002789D8 48 0C 54 31 */ bl __ct__6CTokenFRC6CToken
lbl_8027BA7C:
/* 8027BA7C 002789DC 80 B0 0F C4 */ lwz r5, 0xfc4(r16)
/* 8027BA80 002789E0 38 61 00 AC */ addi r3, r1, 0xac
/* 8027BA84 002789E4 38 80 00 00 */ li r4, 0
/* 8027BA88 002789E8 38 05 00 01 */ addi r0, r5, 1
/* 8027BA8C 002789EC 90 10 0F C4 */ stw r0, 0xfc4(r16)
/* 8027BA90 002789F0 48 0C 53 B1 */ bl __dt__6CTokenFv
/* 8027BA94 002789F4 38 61 00 B4 */ addi r3, r1, 0xb4
/* 8027BA98 002789F8 38 80 FF FF */ li r4, -1
/* 8027BA9C 002789FC 48 0C 53 A5 */ bl __dt__6CTokenFv
/* 8027BAA0 00278A00 3C 60 50 41 */ lis r3, 0x50415254@ha
/* 8027BAA4 00278A04 93 C1 00 A8 */ stw r30, 0xa8(r1)
/* 8027BAA8 00278A08 38 03 52 54 */ addi r0, r3, 0x50415254@l
/* 8027BAAC 00278A0C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027BAB0 00278A10 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 8027BAB4 00278A14 38 61 00 9C */ addi r3, r1, 0x9c
/* 8027BAB8 00278A18 38 A1 00 A4 */ addi r5, r1, 0xa4
/* 8027BABC 00278A1C 81 84 00 00 */ lwz r12, 0(r4)
/* 8027BAC0 00278A20 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027BAC4 00278A24 7D 89 03 A6 */ mtctr r12
/* 8027BAC8 00278A28 4E 80 04 21 */ bctrl
/* 8027BACC 00278A2C 38 61 00 94 */ addi r3, r1, 0x94
/* 8027BAD0 00278A30 38 81 00 9C */ addi r4, r1, 0x9c
/* 8027BAD4 00278A34 48 0C 53 D5 */ bl __ct__6CTokenFRC6CToken
/* 8027BAD8 00278A38 38 70 0F C4 */ addi r3, r16, 0xfc4
/* 8027BADC 00278A3C 80 10 0F C4 */ lwz r0, 0xfc4(r16)
/* 8027BAE0 00278A40 54 00 18 38 */ slwi r0, r0, 3
/* 8027BAE4 00278A44 7C 63 02 14 */ add r3, r3, r0
/* 8027BAE8 00278A48 34 63 00 04 */ addic. r3, r3, 4
/* 8027BAEC 00278A4C 41 82 00 0C */ beq lbl_8027BAF8
/* 8027BAF0 00278A50 38 81 00 94 */ addi r4, r1, 0x94
/* 8027BAF4 00278A54 48 0C 53 B5 */ bl __ct__6CTokenFRC6CToken
lbl_8027BAF8:
/* 8027BAF8 00278A58 80 B0 0F C4 */ lwz r5, 0xfc4(r16)
/* 8027BAFC 00278A5C 38 61 00 94 */ addi r3, r1, 0x94
/* 8027BB00 00278A60 38 80 00 00 */ li r4, 0
/* 8027BB04 00278A64 38 05 00 01 */ addi r0, r5, 1
/* 8027BB08 00278A68 90 10 0F C4 */ stw r0, 0xfc4(r16)
/* 8027BB0C 00278A6C 48 0C 53 35 */ bl __dt__6CTokenFv
/* 8027BB10 00278A70 38 61 00 9C */ addi r3, r1, 0x9c
/* 8027BB14 00278A74 38 80 FF FF */ li r4, -1
/* 8027BB18 00278A78 48 0C 53 29 */ bl __dt__6CTokenFv
/* 8027BB1C 00278A7C 3C 60 53 57 */ lis r3, 0x53574843@ha
/* 8027BB20 00278A80 93 E1 00 90 */ stw r31, 0x90(r1)
/* 8027BB24 00278A84 38 03 48 43 */ addi r0, r3, 0x53574843@l
/* 8027BB28 00278A88 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027BB2C 00278A8C 90 01 00 8C */ stw r0, 0x8c(r1)
/* 8027BB30 00278A90 38 61 00 84 */ addi r3, r1, 0x84
/* 8027BB34 00278A94 38 A1 00 8C */ addi r5, r1, 0x8c
/* 8027BB38 00278A98 81 84 00 00 */ lwz r12, 0(r4)
/* 8027BB3C 00278A9C 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027BB40 00278AA0 7D 89 03 A6 */ mtctr r12
/* 8027BB44 00278AA4 4E 80 04 21 */ bctrl
/* 8027BB48 00278AA8 38 61 00 7C */ addi r3, r1, 0x7c
/* 8027BB4C 00278AAC 38 81 00 84 */ addi r4, r1, 0x84
/* 8027BB50 00278AB0 48 0C 53 59 */ bl __ct__6CTokenFRC6CToken
/* 8027BB54 00278AB4 38 70 0F D8 */ addi r3, r16, 0xfd8
/* 8027BB58 00278AB8 80 10 0F D8 */ lwz r0, 0xfd8(r16)
/* 8027BB5C 00278ABC 54 00 18 38 */ slwi r0, r0, 3
/* 8027BB60 00278AC0 7C 63 02 14 */ add r3, r3, r0
/* 8027BB64 00278AC4 34 63 00 04 */ addic. r3, r3, 4
/* 8027BB68 00278AC8 41 82 00 0C */ beq lbl_8027BB74
/* 8027BB6C 00278ACC 38 81 00 7C */ addi r4, r1, 0x7c
/* 8027BB70 00278AD0 48 0C 53 39 */ bl __ct__6CTokenFRC6CToken
lbl_8027BB74:
/* 8027BB74 00278AD4 80 B0 0F D8 */ lwz r5, 0xfd8(r16)
/* 8027BB78 00278AD8 38 61 00 7C */ addi r3, r1, 0x7c
/* 8027BB7C 00278ADC 38 80 00 00 */ li r4, 0
/* 8027BB80 00278AE0 38 05 00 01 */ addi r0, r5, 1
/* 8027BB84 00278AE4 90 10 0F D8 */ stw r0, 0xfd8(r16)
/* 8027BB88 00278AE8 48 0C 52 B9 */ bl __dt__6CTokenFv
/* 8027BB8C 00278AEC 38 61 00 84 */ addi r3, r1, 0x84
/* 8027BB90 00278AF0 38 80 FF FF */ li r4, -1
/* 8027BB94 00278AF4 48 0C 52 AD */ bl __dt__6CTokenFv
/* 8027BB98 00278AF8 3C 60 53 57 */ lis r3, 0x53574843@ha
/* 8027BB9C 00278AFC 93 E1 00 78 */ stw r31, 0x78(r1)
/* 8027BBA0 00278B00 38 03 48 43 */ addi r0, r3, 0x53574843@l
/* 8027BBA4 00278B04 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 8027BBA8 00278B08 90 01 00 74 */ stw r0, 0x74(r1)
/* 8027BBAC 00278B0C 38 61 00 6C */ addi r3, r1, 0x6c
/* 8027BBB0 00278B10 38 A1 00 74 */ addi r5, r1, 0x74
/* 8027BBB4 00278B14 81 84 00 00 */ lwz r12, 0(r4)
/* 8027BBB8 00278B18 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8027BBBC 00278B1C 7D 89 03 A6 */ mtctr r12
/* 8027BBC0 00278B20 4E 80 04 21 */ bctrl
/* 8027BBC4 00278B24 38 61 00 64 */ addi r3, r1, 0x64
/* 8027BBC8 00278B28 38 81 00 6C */ addi r4, r1, 0x6c
/* 8027BBCC 00278B2C 48 0C 52 DD */ bl __ct__6CTokenFRC6CToken
/* 8027BBD0 00278B30 38 70 0F D8 */ addi r3, r16, 0xfd8
/* 8027BBD4 00278B34 80 10 0F D8 */ lwz r0, 0xfd8(r16)
/* 8027BBD8 00278B38 54 00 18 38 */ slwi r0, r0, 3
/* 8027BBDC 00278B3C 7C 63 02 14 */ add r3, r3, r0
/* 8027BBE0 00278B40 34 63 00 04 */ addic. r3, r3, 4
/* 8027BBE4 00278B44 41 82 00 0C */ beq lbl_8027BBF0
/* 8027BBE8 00278B48 38 81 00 64 */ addi r4, r1, 0x64
/* 8027BBEC 00278B4C 48 0C 52 BD */ bl __ct__6CTokenFRC6CToken
lbl_8027BBF0:
/* 8027BBF0 00278B50 80 B0 0F D8 */ lwz r5, 0xfd8(r16)
/* 8027BBF4 00278B54 38 61 00 64 */ addi r3, r1, 0x64
/* 8027BBF8 00278B58 38 80 00 00 */ li r4, 0
/* 8027BBFC 00278B5C 38 05 00 01 */ addi r0, r5, 1
/* 8027BC00 00278B60 90 10 0F D8 */ stw r0, 0xfd8(r16)
/* 8027BC04 00278B64 48 0C 52 3D */ bl __dt__6CTokenFv
/* 8027BC08 00278B68 38 61 00 6C */ addi r3, r1, 0x6c
/* 8027BC0C 00278B6C 38 80 FF FF */ li r4, -1
/* 8027BC10 00278B70 48 0C 52 31 */ bl __dt__6CTokenFv
/* 8027BC14 00278B74 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027BC18 00278B78 39 E0 00 00 */ li r15, 0
/* 8027BC1C 00278B7C 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027BC20 00278B80 38 60 03 40 */ li r3, 0x340
/* 8027BC24 00278B84 38 84 02 20 */ addi r4, r4, 0x220
/* 8027BC28 00278B88 38 A0 00 00 */ li r5, 0
/* 8027BC2C 00278B8C 48 09 9C 41 */ bl __nw__FUlPCcPCc
/* 8027BC30 00278B90 7C 6E 1B 79 */ or. r14, r3, r3
/* 8027BC34 00278B94 41 82 00 2C */ beq lbl_8027BC60
/* 8027BC38 00278B98 38 61 00 5C */ addi r3, r1, 0x5c
/* 8027BC3C 00278B9C 38 90 0F C8 */ addi r4, r16, 0xfc8
/* 8027BC40 00278BA0 48 0C 52 69 */ bl __ct__6CTokenFRC6CToken
/* 8027BC44 00278BA4 7D C3 73 78 */ mr r3, r14
/* 8027BC48 00278BA8 38 81 00 5C */ addi r4, r1, 0x5c
/* 8027BC4C 00278BAC 39 E0 00 01 */ li r15, 1
/* 8027BC50 00278BB0 38 A0 00 00 */ li r5, 0
/* 8027BC54 00278BB4 38 C0 00 01 */ li r6, 1
/* 8027BC58 00278BB8 48 0A 37 89 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags"
/* 8027BC5C 00278BBC 7C 6E 1B 78 */ mr r14, r3
lbl_8027BC60:
/* 8027BC60 00278BC0 38 90 0F EC */ addi r4, r16, 0xfec
/* 8027BC64 00278BC4 7C 6E 00 D0 */ neg r3, r14
/* 8027BC68 00278BC8 80 10 0F EC */ lwz r0, 0xfec(r16)
/* 8027BC6C 00278BCC 7C 63 73 78 */ or r3, r3, r14
/* 8027BC70 00278BD0 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8027BC74 00278BD4 91 C1 00 58 */ stw r14, 0x58(r1)
/* 8027BC78 00278BD8 54 00 18 38 */ slwi r0, r0, 3
/* 8027BC7C 00278BDC 7C 84 02 14 */ add r4, r4, r0
/* 8027BC80 00278BE0 98 61 00 54 */ stb r3, 0x54(r1)
/* 8027BC84 00278BE4 34 84 00 04 */ addic. r4, r4, 4
/* 8027BC88 00278BE8 41 82 00 14 */ beq lbl_8027BC9C
/* 8027BC8C 00278BEC 98 64 00 00 */ stb r3, 0(r4)
/* 8027BC90 00278BF0 38 00 00 00 */ li r0, 0
/* 8027BC94 00278BF4 91 C4 00 04 */ stw r14, 4(r4)
/* 8027BC98 00278BF8 98 01 00 54 */ stb r0, 0x54(r1)
lbl_8027BC9C:
/* 8027BC9C 00278BFC 80 70 0F EC */ lwz r3, 0xfec(r16)
/* 8027BCA0 00278C00 88 01 00 54 */ lbz r0, 0x54(r1)
/* 8027BCA4 00278C04 38 63 00 01 */ addi r3, r3, 1
/* 8027BCA8 00278C08 28 00 00 00 */ cmplwi r0, 0
/* 8027BCAC 00278C0C 90 70 0F EC */ stw r3, 0xfec(r16)
/* 8027BCB0 00278C10 41 82 00 24 */ beq lbl_8027BCD4
/* 8027BCB4 00278C14 80 61 00 58 */ lwz r3, 0x58(r1)
/* 8027BCB8 00278C18 28 03 00 00 */ cmplwi r3, 0
/* 8027BCBC 00278C1C 41 82 00 18 */ beq lbl_8027BCD4
/* 8027BCC0 00278C20 81 83 00 00 */ lwz r12, 0(r3)
/* 8027BCC4 00278C24 38 80 00 01 */ li r4, 1
/* 8027BCC8 00278C28 81 8C 00 08 */ lwz r12, 8(r12)
/* 8027BCCC 00278C2C 7D 89 03 A6 */ mtctr r12
/* 8027BCD0 00278C30 4E 80 04 21 */ bctrl
lbl_8027BCD4:
/* 8027BCD4 00278C34 7D E0 07 75 */ extsb. r0, r15
/* 8027BCD8 00278C38 41 82 00 10 */ beq lbl_8027BCE8
/* 8027BCDC 00278C3C 38 61 00 5C */ addi r3, r1, 0x5c
/* 8027BCE0 00278C40 38 80 00 00 */ li r4, 0
/* 8027BCE4 00278C44 48 0C 51 5D */ bl __dt__6CTokenFv
lbl_8027BCE8:
/* 8027BCE8 00278C48 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027BCEC 00278C4C 39 E0 00 00 */ li r15, 0
/* 8027BCF0 00278C50 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027BCF4 00278C54 38 60 03 40 */ li r3, 0x340
/* 8027BCF8 00278C58 38 84 02 20 */ addi r4, r4, 0x220
/* 8027BCFC 00278C5C 38 A0 00 00 */ li r5, 0
/* 8027BD00 00278C60 48 09 9B 6D */ bl __nw__FUlPCcPCc
/* 8027BD04 00278C64 7C 6E 1B 79 */ or. r14, r3, r3
/* 8027BD08 00278C68 41 82 00 2C */ beq lbl_8027BD34
/* 8027BD0C 00278C6C 38 61 00 4C */ addi r3, r1, 0x4c
/* 8027BD10 00278C70 38 90 0F D0 */ addi r4, r16, 0xfd0
/* 8027BD14 00278C74 48 0C 51 95 */ bl __ct__6CTokenFRC6CToken
/* 8027BD18 00278C78 7D C3 73 78 */ mr r3, r14
/* 8027BD1C 00278C7C 38 81 00 4C */ addi r4, r1, 0x4c
/* 8027BD20 00278C80 39 E0 00 01 */ li r15, 1
/* 8027BD24 00278C84 38 A0 00 00 */ li r5, 0
/* 8027BD28 00278C88 38 C0 00 01 */ li r6, 1
/* 8027BD2C 00278C8C 48 0A 36 B5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags"
/* 8027BD30 00278C90 7C 6E 1B 78 */ mr r14, r3
lbl_8027BD34:
/* 8027BD34 00278C94 38 90 0F EC */ addi r4, r16, 0xfec
/* 8027BD38 00278C98 7C 6E 00 D0 */ neg r3, r14
/* 8027BD3C 00278C9C 80 10 0F EC */ lwz r0, 0xfec(r16)
/* 8027BD40 00278CA0 7C 63 73 78 */ or r3, r3, r14
/* 8027BD44 00278CA4 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8027BD48 00278CA8 91 C1 00 48 */ stw r14, 0x48(r1)
/* 8027BD4C 00278CAC 54 00 18 38 */ slwi r0, r0, 3
/* 8027BD50 00278CB0 7C 84 02 14 */ add r4, r4, r0
/* 8027BD54 00278CB4 98 61 00 44 */ stb r3, 0x44(r1)
/* 8027BD58 00278CB8 34 84 00 04 */ addic. r4, r4, 4
/* 8027BD5C 00278CBC 41 82 00 14 */ beq lbl_8027BD70
/* 8027BD60 00278CC0 98 64 00 00 */ stb r3, 0(r4)
/* 8027BD64 00278CC4 38 00 00 00 */ li r0, 0
/* 8027BD68 00278CC8 91 C4 00 04 */ stw r14, 4(r4)
/* 8027BD6C 00278CCC 98 01 00 44 */ stb r0, 0x44(r1)
lbl_8027BD70:
/* 8027BD70 00278CD0 80 70 0F EC */ lwz r3, 0xfec(r16)
/* 8027BD74 00278CD4 88 01 00 44 */ lbz r0, 0x44(r1)
/* 8027BD78 00278CD8 38 63 00 01 */ addi r3, r3, 1
/* 8027BD7C 00278CDC 28 00 00 00 */ cmplwi r0, 0
/* 8027BD80 00278CE0 90 70 0F EC */ stw r3, 0xfec(r16)
/* 8027BD84 00278CE4 41 82 00 24 */ beq lbl_8027BDA8
/* 8027BD88 00278CE8 80 61 00 48 */ lwz r3, 0x48(r1)
/* 8027BD8C 00278CEC 28 03 00 00 */ cmplwi r3, 0
/* 8027BD90 00278CF0 41 82 00 18 */ beq lbl_8027BDA8
/* 8027BD94 00278CF4 81 83 00 00 */ lwz r12, 0(r3)
/* 8027BD98 00278CF8 38 80 00 01 */ li r4, 1
/* 8027BD9C 00278CFC 81 8C 00 08 */ lwz r12, 8(r12)
/* 8027BDA0 00278D00 7D 89 03 A6 */ mtctr r12
/* 8027BDA4 00278D04 4E 80 04 21 */ bctrl
lbl_8027BDA8:
/* 8027BDA8 00278D08 7D E0 07 75 */ extsb. r0, r15
/* 8027BDAC 00278D0C 41 82 00 10 */ beq lbl_8027BDBC
/* 8027BDB0 00278D10 38 61 00 4C */ addi r3, r1, 0x4c
/* 8027BDB4 00278D14 38 80 00 00 */ li r4, 0
/* 8027BDB8 00278D18 48 0C 50 89 */ bl __dt__6CTokenFv
lbl_8027BDBC:
/* 8027BDBC 00278D1C 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027BDC0 00278D20 39 E0 00 00 */ li r15, 0
/* 8027BDC4 00278D24 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027BDC8 00278D28 38 60 02 10 */ li r3, 0x210
/* 8027BDCC 00278D2C 38 84 02 20 */ addi r4, r4, 0x220
/* 8027BDD0 00278D30 38 A0 00 00 */ li r5, 0
/* 8027BDD4 00278D34 48 09 9A 99 */ bl __nw__FUlPCcPCc
/* 8027BDD8 00278D38 7C 6E 1B 79 */ or. r14, r3, r3
/* 8027BDDC 00278D3C 41 82 00 28 */ beq lbl_8027BE04
/* 8027BDE0 00278D40 38 61 00 3C */ addi r3, r1, 0x3c
/* 8027BDE4 00278D44 38 90 0F DC */ addi r4, r16, 0xfdc
/* 8027BDE8 00278D48 48 0C 50 C1 */ bl __ct__6CTokenFRC6CToken
/* 8027BDEC 00278D4C 7D C3 73 78 */ mr r3, r14
/* 8027BDF0 00278D50 38 81 00 3C */ addi r4, r1, 0x3c
/* 8027BDF4 00278D54 39 E0 00 01 */ li r15, 1
/* 8027BDF8 00278D58 38 A0 00 00 */ li r5, 0
/* 8027BDFC 00278D5C 48 0B 2F E9 */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i"
/* 8027BE00 00278D60 7C 6E 1B 78 */ mr r14, r3
lbl_8027BE04:
/* 8027BE04 00278D64 38 90 10 00 */ addi r4, r16, 0x1000
/* 8027BE08 00278D68 7C 6E 00 D0 */ neg r3, r14
/* 8027BE0C 00278D6C 80 10 10 00 */ lwz r0, 0x1000(r16)
/* 8027BE10 00278D70 7C 63 73 78 */ or r3, r3, r14
/* 8027BE14 00278D74 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8027BE18 00278D78 91 C1 00 38 */ stw r14, 0x38(r1)
/* 8027BE1C 00278D7C 54 00 18 38 */ slwi r0, r0, 3
/* 8027BE20 00278D80 7C 84 02 14 */ add r4, r4, r0
/* 8027BE24 00278D84 98 61 00 34 */ stb r3, 0x34(r1)
/* 8027BE28 00278D88 34 84 00 04 */ addic. r4, r4, 4
/* 8027BE2C 00278D8C 41 82 00 14 */ beq lbl_8027BE40
/* 8027BE30 00278D90 98 64 00 00 */ stb r3, 0(r4)
/* 8027BE34 00278D94 38 00 00 00 */ li r0, 0
/* 8027BE38 00278D98 91 C4 00 04 */ stw r14, 4(r4)
/* 8027BE3C 00278D9C 98 01 00 34 */ stb r0, 0x34(r1)
lbl_8027BE40:
/* 8027BE40 00278DA0 80 70 10 00 */ lwz r3, 0x1000(r16)
/* 8027BE44 00278DA4 88 01 00 34 */ lbz r0, 0x34(r1)
/* 8027BE48 00278DA8 38 63 00 01 */ addi r3, r3, 1
/* 8027BE4C 00278DAC 28 00 00 00 */ cmplwi r0, 0
/* 8027BE50 00278DB0 90 70 10 00 */ stw r3, 0x1000(r16)
/* 8027BE54 00278DB4 41 82 00 24 */ beq lbl_8027BE78
/* 8027BE58 00278DB8 80 61 00 38 */ lwz r3, 0x38(r1)
/* 8027BE5C 00278DBC 28 03 00 00 */ cmplwi r3, 0
/* 8027BE60 00278DC0 41 82 00 18 */ beq lbl_8027BE78
/* 8027BE64 00278DC4 81 83 00 00 */ lwz r12, 0(r3)
/* 8027BE68 00278DC8 38 80 00 01 */ li r4, 1
/* 8027BE6C 00278DCC 81 8C 00 08 */ lwz r12, 8(r12)
/* 8027BE70 00278DD0 7D 89 03 A6 */ mtctr r12
/* 8027BE74 00278DD4 4E 80 04 21 */ bctrl
lbl_8027BE78:
/* 8027BE78 00278DD8 7D E0 07 75 */ extsb. r0, r15
/* 8027BE7C 00278DDC 41 82 00 10 */ beq lbl_8027BE8C
/* 8027BE80 00278DE0 38 61 00 3C */ addi r3, r1, 0x3c
/* 8027BE84 00278DE4 38 80 00 00 */ li r4, 0
/* 8027BE88 00278DE8 48 0C 4F B9 */ bl __dt__6CTokenFv
lbl_8027BE8C:
/* 8027BE8C 00278DEC 3C 60 80 3D */ lis r3, lbl_803D5618@ha
/* 8027BE90 00278DF0 39 E0 00 00 */ li r15, 0
/* 8027BE94 00278DF4 38 83 56 18 */ addi r4, r3, lbl_803D5618@l
/* 8027BE98 00278DF8 38 60 02 10 */ li r3, 0x210
/* 8027BE9C 00278DFC 38 84 02 20 */ addi r4, r4, 0x220
/* 8027BEA0 00278E00 38 A0 00 00 */ li r5, 0
/* 8027BEA4 00278E04 48 09 99 C9 */ bl __nw__FUlPCcPCc
/* 8027BEA8 00278E08 7C 6E 1B 79 */ or. r14, r3, r3
/* 8027BEAC 00278E0C 41 82 00 28 */ beq lbl_8027BED4
/* 8027BEB0 00278E10 38 61 00 2C */ addi r3, r1, 0x2c
/* 8027BEB4 00278E14 38 90 0F E4 */ addi r4, r16, 0xfe4
/* 8027BEB8 00278E18 48 0C 4F F1 */ bl __ct__6CTokenFRC6CToken
/* 8027BEBC 00278E1C 7D C3 73 78 */ mr r3, r14
/* 8027BEC0 00278E20 38 81 00 2C */ addi r4, r1, 0x2c
/* 8027BEC4 00278E24 39 E0 00 01 */ li r15, 1
/* 8027BEC8 00278E28 38 A0 00 00 */ li r5, 0
/* 8027BECC 00278E2C 48 0B 2F 19 */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i"
/* 8027BED0 00278E30 7C 6E 1B 78 */ mr r14, r3
lbl_8027BED4:
/* 8027BED4 00278E34 38 90 10 00 */ addi r4, r16, 0x1000
/* 8027BED8 00278E38 7C 6E 00 D0 */ neg r3, r14
/* 8027BEDC 00278E3C 80 10 10 00 */ lwz r0, 0x1000(r16)
/* 8027BEE0 00278E40 7C 63 73 78 */ or r3, r3, r14
/* 8027BEE4 00278E44 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8027BEE8 00278E48 91 C1 00 28 */ stw r14, 0x28(r1)
/* 8027BEEC 00278E4C 54 00 18 38 */ slwi r0, r0, 3
/* 8027BEF0 00278E50 7C 84 02 14 */ add r4, r4, r0
/* 8027BEF4 00278E54 98 61 00 24 */ stb r3, 0x24(r1)
/* 8027BEF8 00278E58 34 84 00 04 */ addic. r4, r4, 4
/* 8027BEFC 00278E5C 41 82 00 14 */ beq lbl_8027BF10
/* 8027BF00 00278E60 98 64 00 00 */ stb r3, 0(r4)
/* 8027BF04 00278E64 38 00 00 00 */ li r0, 0
/* 8027BF08 00278E68 91 C4 00 04 */ stw r14, 4(r4)
/* 8027BF0C 00278E6C 98 01 00 24 */ stb r0, 0x24(r1)
lbl_8027BF10:
/* 8027BF10 00278E70 80 70 10 00 */ lwz r3, 0x1000(r16)
/* 8027BF14 00278E74 88 01 00 24 */ lbz r0, 0x24(r1)
/* 8027BF18 00278E78 38 63 00 01 */ addi r3, r3, 1
/* 8027BF1C 00278E7C 28 00 00 00 */ cmplwi r0, 0
/* 8027BF20 00278E80 90 70 10 00 */ stw r3, 0x1000(r16)
/* 8027BF24 00278E84 41 82 00 24 */ beq lbl_8027BF48
/* 8027BF28 00278E88 80 61 00 28 */ lwz r3, 0x28(r1)
/* 8027BF2C 00278E8C 28 03 00 00 */ cmplwi r3, 0
/* 8027BF30 00278E90 41 82 00 18 */ beq lbl_8027BF48
/* 8027BF34 00278E94 81 83 00 00 */ lwz r12, 0(r3)
/* 8027BF38 00278E98 38 80 00 01 */ li r4, 1
/* 8027BF3C 00278E9C 81 8C 00 08 */ lwz r12, 8(r12)
/* 8027BF40 00278EA0 7D 89 03 A6 */ mtctr r12
/* 8027BF44 00278EA4 4E 80 04 21 */ bctrl
lbl_8027BF48:
/* 8027BF48 00278EA8 7D E0 07 75 */ extsb. r0, r15
/* 8027BF4C 00278EAC 41 82 00 10 */ beq lbl_8027BF5C
/* 8027BF50 00278EB0 38 61 00 2C */ addi r3, r1, 0x2c
/* 8027BF54 00278EB4 38 80 00 00 */ li r4, 0
/* 8027BF58 00278EB8 48 0C 4E E9 */ bl __dt__6CTokenFv
lbl_8027BF5C:
/* 8027BF5C 00278EBC 38 70 10 2C */ addi r3, r16, 0x102c
/* 8027BF60 00278EC0 80 10 10 2C */ lwz r0, 0x102c(r16)
/* 8027BF64 00278EC4 54 00 10 3A */ slwi r0, r0, 2
/* 8027BF68 00278EC8 7C 63 02 14 */ add r3, r3, r0
/* 8027BF6C 00278ECC 34 63 00 04 */ addic. r3, r3, 4
/* 8027BF70 00278ED0 41 82 00 0C */ beq lbl_8027BF7C
/* 8027BF74 00278ED4 C0 02 BB D0 */ lfs f0, lbl_805AD8F0@sda21(r2)
/* 8027BF78 00278ED8 D0 03 00 00 */ stfs f0, 0(r3)
lbl_8027BF7C:
/* 8027BF7C 00278EDC 80 70 10 2C */ lwz r3, 0x102c(r16)
/* 8027BF80 00278EE0 38 90 10 2C */ addi r4, r16, 0x102c
/* 8027BF84 00278EE4 38 03 00 01 */ addi r0, r3, 1
/* 8027BF88 00278EE8 90 10 10 2C */ stw r0, 0x102c(r16)
/* 8027BF8C 00278EEC 80 10 10 2C */ lwz r0, 0x102c(r16)
/* 8027BF90 00278EF0 54 00 10 3A */ slwi r0, r0, 2
/* 8027BF94 00278EF4 7C 64 02 14 */ add r3, r4, r0
/* 8027BF98 00278EF8 34 63 00 04 */ addic. r3, r3, 4
/* 8027BF9C 00278EFC 41 82 00 0C */ beq lbl_8027BFA8
/* 8027BFA0 00278F00 C0 02 BB D0 */ lfs f0, lbl_805AD8F0@sda21(r2)
/* 8027BFA4 00278F04 D0 03 00 00 */ stfs f0, 0(r3)
lbl_8027BFA8:
/* 8027BFA8 00278F08 80 70 10 2C */ lwz r3, 0x102c(r16)
/* 8027BFAC 00278F0C 38 90 10 38 */ addi r4, r16, 0x1038
/* 8027BFB0 00278F10 38 03 00 01 */ addi r0, r3, 1
/* 8027BFB4 00278F14 90 10 10 2C */ stw r0, 0x102c(r16)
/* 8027BFB8 00278F18 80 10 10 38 */ lwz r0, 0x1038(r16)
/* 8027BFBC 00278F1C 54 00 10 3A */ slwi r0, r0, 2
/* 8027BFC0 00278F20 7C 64 02 14 */ add r3, r4, r0
/* 8027BFC4 00278F24 34 63 00 04 */ addic. r3, r3, 4
/* 8027BFC8 00278F28 41 82 00 0C */ beq lbl_8027BFD4
/* 8027BFCC 00278F2C C0 0D 98 60 */ lfs f0, lbl_805A8420@sda21(r13)
/* 8027BFD0 00278F30 D0 03 00 00 */ stfs f0, 0(r3)
lbl_8027BFD4:
/* 8027BFD4 00278F34 80 70 10 38 */ lwz r3, 0x1038(r16)
/* 8027BFD8 00278F38 38 90 10 38 */ addi r4, r16, 0x1038
/* 8027BFDC 00278F3C 38 03 00 01 */ addi r0, r3, 1
/* 8027BFE0 00278F40 90 10 10 38 */ stw r0, 0x1038(r16)
/* 8027BFE4 00278F44 80 10 10 38 */ lwz r0, 0x1038(r16)
/* 8027BFE8 00278F48 54 00 10 3A */ slwi r0, r0, 2
/* 8027BFEC 00278F4C 7C 64 02 14 */ add r3, r4, r0
/* 8027BFF0 00278F50 34 63 00 04 */ addic. r3, r3, 4
/* 8027BFF4 00278F54 41 82 00 0C */ beq lbl_8027C000
/* 8027BFF8 00278F58 C0 0D 98 64 */ lfs f0, lbl_805A8424@sda21(r13)
/* 8027BFFC 00278F5C D0 03 00 00 */ stfs f0, 0(r3)
lbl_8027C000:
/* 8027C000 00278F60 80 90 10 38 */ lwz r4, 0x1038(r16)
/* 8027C004 00278F64 7E 03 83 78 */ mr r3, r16
/* 8027C008 00278F68 38 04 00 01 */ addi r0, r4, 1
/* 8027C00C 00278F6C 90 10 10 38 */ stw r0, 0x1038(r16)
/* 8027C010 00278F70 B9 C1 01 78 */ lmw r14, 0x178(r1)
/* 8027C014 00278F74 80 01 01 C4 */ lwz r0, 0x1c4(r1)
/* 8027C018 00278F78 7C 08 03 A6 */ mtlr r0
/* 8027C01C 00278F7C 38 21 01 C0 */ addi r1, r1, 0x1c0
/* 8027C020 00278F80 4E 80 00 20 */ blr
.global sub_8027c024
sub_8027c024:
/* 8027C024 00278F84 80 03 00 00 */ lwz r0, 0(r3)
/* 8027C028 00278F88 1C 00 00 44 */ mulli r0, r0, 0x44
/* 8027C02C 00278F8C 7C A3 02 14 */ add r5, r3, r0
/* 8027C030 00278F90 34 A5 00 04 */ addic. r5, r5, 4
/* 8027C034 00278F94 41 82 00 8C */ beq lbl_8027C0C0
/* 8027C038 00278F98 80 04 00 00 */ lwz r0, 0(r4)
/* 8027C03C 00278F9C 90 05 00 00 */ stw r0, 0(r5)
/* 8027C040 00278FA0 80 04 00 04 */ lwz r0, 4(r4)
/* 8027C044 00278FA4 90 05 00 04 */ stw r0, 4(r5)
/* 8027C048 00278FA8 80 04 00 08 */ lwz r0, 8(r4)
/* 8027C04C 00278FAC 90 05 00 08 */ stw r0, 8(r5)
/* 8027C050 00278FB0 80 04 00 0C */ lwz r0, 0xc(r4)
/* 8027C054 00278FB4 90 05 00 0C */ stw r0, 0xc(r5)
/* 8027C058 00278FB8 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8027C05C 00278FBC 90 05 00 10 */ stw r0, 0x10(r5)
/* 8027C060 00278FC0 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8027C064 00278FC4 90 05 00 14 */ stw r0, 0x14(r5)
/* 8027C068 00278FC8 80 04 00 18 */ lwz r0, 0x18(r4)
/* 8027C06C 00278FCC 90 05 00 18 */ stw r0, 0x18(r5)
/* 8027C070 00278FD0 C0 04 00 1C */ lfs f0, 0x1c(r4)
/* 8027C074 00278FD4 D0 05 00 1C */ stfs f0, 0x1c(r5)
/* 8027C078 00278FD8 C0 04 00 20 */ lfs f0, 0x20(r4)
/* 8027C07C 00278FDC D0 05 00 20 */ stfs f0, 0x20(r5)
/* 8027C080 00278FE0 C0 04 00 24 */ lfs f0, 0x24(r4)
/* 8027C084 00278FE4 D0 05 00 24 */ stfs f0, 0x24(r5)
/* 8027C088 00278FE8 C0 04 00 28 */ lfs f0, 0x28(r4)
/* 8027C08C 00278FEC D0 05 00 28 */ stfs f0, 0x28(r5)
/* 8027C090 00278FF0 C0 04 00 2C */ lfs f0, 0x2c(r4)
/* 8027C094 00278FF4 D0 05 00 2C */ stfs f0, 0x2c(r5)
/* 8027C098 00278FF8 C0 04 00 30 */ lfs f0, 0x30(r4)
/* 8027C09C 00278FFC D0 05 00 30 */ stfs f0, 0x30(r5)
/* 8027C0A0 00279000 C0 04 00 34 */ lfs f0, 0x34(r4)
/* 8027C0A4 00279004 D0 05 00 34 */ stfs f0, 0x34(r5)
/* 8027C0A8 00279008 C0 04 00 38 */ lfs f0, 0x38(r4)
/* 8027C0AC 0027900C D0 05 00 38 */ stfs f0, 0x38(r5)
/* 8027C0B0 00279010 80 04 00 3C */ lwz r0, 0x3c(r4)
/* 8027C0B4 00279014 90 05 00 3C */ stw r0, 0x3c(r5)
/* 8027C0B8 00279018 80 04 00 40 */ lwz r0, 0x40(r4)
/* 8027C0BC 0027901C 90 05 00 40 */ stw r0, 0x40(r5)
lbl_8027C0C0:
/* 8027C0C0 00279020 80 83 00 00 */ lwz r4, 0(r3)
/* 8027C0C4 00279024 38 04 00 01 */ addi r0, r4, 1
/* 8027C0C8 00279028 90 03 00 00 */ stw r0, 0(r3)
/* 8027C0CC 0027902C 4E 80 00 20 */ blr
.global sub_8027c0d0
sub_8027c0d0:
/* 8027C0D0 00279030 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8027C0D4 00279034 7C 08 02 A6 */ mflr r0
/* 8027C0D8 00279038 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027C0DC 0027903C 7C 60 1B 78 */ mr r0, r3
/* 8027C0E0 00279040 7C 83 23 78 */ mr r3, r4
/* 8027C0E4 00279044 81 84 00 00 */ lwz r12, 0(r4)
/* 8027C0E8 00279048 7C 04 03 78 */ mr r4, r0
/* 8027C0EC 0027904C 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 8027C0F0 00279050 7D 89 03 A6 */ mtctr r12
/* 8027C0F4 00279054 4E 80 04 21 */ bctrl
/* 8027C0F8 00279058 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8027C0FC 0027905C 7C 08 03 A6 */ mtlr r0
/* 8027C100 00279060 38 21 00 10 */ addi r1, r1, 0x10
/* 8027C104 00279064 4E 80 00 20 */ blr
.global sub_8027c108
sub_8027c108:
/* 8027C108 00279068 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8027C10C 0027906C 7C 08 02 A6 */ mflr r0
/* 8027C110 00279070 90 01 00 64 */ stw r0, 0x64(r1)
/* 8027C114 00279074 BF 61 00 4C */ stmw r27, 0x4c(r1)
/* 8027C118 00279078 7C 9C 23 78 */ mr r28, r4
/* 8027C11C 0027907C 7C 7B 1B 78 */ mr r27, r3
/* 8027C120 00279080 7F 83 E3 78 */ mr r3, r28
/* 8027C124 00279084 48 0C 2B 61 */ bl ReadLong__12CInputStreamFv
/* 8027C128 00279088 80 0D 98 5C */ lwz r0, lbl_805A841C@sda21(r13)
/* 8027C12C 0027908C 38 81 00 08 */ addi r4, r1, 8
/* 8027C130 00279090 90 61 00 08 */ stw r3, 8(r1)
/* 8027C134 00279094 7C 00 18 00 */ cmpw r0, r3
/* 8027C138 00279098 40 80 00 08 */ bge lbl_8027C140
/* 8027C13C 0027909C 38 8D 98 5C */ addi r4, r13, lbl_805A841C@sda21
lbl_8027C140:
/* 8027C140 002790A0 38 00 00 00 */ li r0, 0
/* 8027C144 002790A4 83 C4 00 00 */ lwz r30, 0(r4)
/* 8027C148 002790A8 90 01 00 0C */ stw r0, 0xc(r1)
/* 8027C14C 002790AC 3B E1 00 10 */ addi r31, r1, 0x10
/* 8027C150 002790B0 3B A0 00 00 */ li r29, 0
/* 8027C154 002790B4 48 00 00 30 */ b lbl_8027C184
lbl_8027C158:
/* 8027C158 002790B8 7F 83 E3 78 */ mr r3, r28
/* 8027C15C 002790BC 48 0C 2A CD */ bl ReadFloat__12CInputStreamFv
/* 8027C160 002790C0 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8027C164 002790C4 54 00 10 3A */ slwi r0, r0, 2
/* 8027C168 002790C8 7C 7F 02 15 */ add. r3, r31, r0
/* 8027C16C 002790CC 41 82 00 08 */ beq lbl_8027C174
/* 8027C170 002790D0 D0 23 00 00 */ stfs f1, 0(r3)
lbl_8027C174:
/* 8027C174 002790D4 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8027C178 002790D8 3B BD 00 01 */ addi r29, r29, 1
/* 8027C17C 002790DC 38 03 00 01 */ addi r0, r3, 1
/* 8027C180 002790E0 90 01 00 0C */ stw r0, 0xc(r1)
lbl_8027C184:
/* 8027C184 002790E4 7C 1D F0 00 */ cmpw r29, r30
/* 8027C188 002790E8 41 80 FF D0 */ blt lbl_8027C158
/* 8027C18C 002790EC 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8027C190 002790F0 38 7B 00 04 */ addi r3, r27, 4
/* 8027C194 002790F4 90 1B 00 00 */ stw r0, 0(r27)
/* 8027C198 002790F8 80 1B 00 00 */ lwz r0, 0(r27)
/* 8027C19C 002790FC 7C 09 03 A6 */ mtctr r0
/* 8027C1A0 00279100 2C 00 00 00 */ cmpwi r0, 0
/* 8027C1A4 00279104 40 81 00 20 */ ble lbl_8027C1C4
lbl_8027C1A8:
/* 8027C1A8 00279108 28 03 00 00 */ cmplwi r3, 0
/* 8027C1AC 0027910C 41 82 00 0C */ beq lbl_8027C1B8
/* 8027C1B0 00279110 C0 1F 00 00 */ lfs f0, 0(r31)
/* 8027C1B4 00279114 D0 03 00 00 */ stfs f0, 0(r3)
lbl_8027C1B8:
/* 8027C1B8 00279118 38 63 00 04 */ addi r3, r3, 4
/* 8027C1BC 0027911C 3B FF 00 04 */ addi r31, r31, 4
/* 8027C1C0 00279120 42 00 FF E8 */ bdnz lbl_8027C1A8
lbl_8027C1C4:
/* 8027C1C4 00279124 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 8027C1C8 00279128 38 60 00 00 */ li r3, 0
/* 8027C1CC 0027912C 2C 05 00 00 */ cmpwi r5, 0
/* 8027C1D0 00279130 40 81 00 40 */ ble lbl_8027C210
/* 8027C1D4 00279134 2C 05 00 08 */ cmpwi r5, 8
/* 8027C1D8 00279138 38 85 FF F8 */ addi r4, r5, -8
/* 8027C1DC 0027913C 40 81 00 20 */ ble lbl_8027C1FC
/* 8027C1E0 00279140 38 04 00 07 */ addi r0, r4, 7
/* 8027C1E4 00279144 54 00 E8 FE */ srwi r0, r0, 3
/* 8027C1E8 00279148 7C 09 03 A6 */ mtctr r0
/* 8027C1EC 0027914C 2C 04 00 00 */ cmpwi r4, 0
/* 8027C1F0 00279150 40 81 00 0C */ ble lbl_8027C1FC
lbl_8027C1F4:
/* 8027C1F4 00279154 38 63 00 08 */ addi r3, r3, 8
/* 8027C1F8 00279158 42 00 FF FC */ bdnz lbl_8027C1F4
lbl_8027C1FC:
/* 8027C1FC 0027915C 7C 03 28 50 */ subf r0, r3, r5
/* 8027C200 00279160 7C 09 03 A6 */ mtctr r0
/* 8027C204 00279164 7C 03 28 00 */ cmpw r3, r5
/* 8027C208 00279168 40 80 00 08 */ bge lbl_8027C210
lbl_8027C20C:
/* 8027C20C 0027916C 42 00 00 00 */ bdnz lbl_8027C20C
lbl_8027C210:
/* 8027C210 00279170 BB 61 00 4C */ lmw r27, 0x4c(r1)
/* 8027C214 00279174 38 00 00 00 */ li r0, 0
/* 8027C218 00279178 90 01 00 0C */ stw r0, 0xc(r1)
/* 8027C21C 0027917C 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8027C220 00279180 7C 08 03 A6 */ mtlr r0
/* 8027C224 00279184 38 21 00 60 */ addi r1, r1, 0x60
/* 8027C228 00279188 4E 80 00 20 */ blr
.global sub_8027c22c
sub_8027c22c:
/* 8027C22C 0027918C 54 80 10 3A */ slwi r0, r4, 2
/* 8027C230 00279190 7C 63 02 14 */ add r3, r3, r0
/* 8027C234 00279194 C0 23 00 04 */ lfs f1, 4(r3)
/* 8027C238 00279198 4E 80 00 20 */ blr
.global __ct__18SPrimeExoRoomParmsFR12CInputStream
__ct__18SPrimeExoRoomParmsFR12CInputStream:
/* 8027C23C 0027919C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8027C240 002791A0 7C 08 02 A6 */ mflr r0
/* 8027C244 002791A4 90 01 00 54 */ stw r0, 0x54(r1)
/* 8027C248 002791A8 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8027C24C 002791AC 7C 7F 1B 78 */ mr r31, r3
/* 8027C250 002791B0 38 61 00 08 */ addi r3, r1, 8
/* 8027C254 002791B4 4B FF FE B5 */ bl sub_8027c108
/* 8027C258 002791B8 80 01 00 08 */ lwz r0, 8(r1)
/* 8027C25C 002791BC 38 81 00 0C */ addi r4, r1, 0xc
/* 8027C260 002791C0 38 7F 00 04 */ addi r3, r31, 4
/* 8027C264 002791C4 90 1F 00 00 */ stw r0, 0(r31)
/* 8027C268 002791C8 80 1F 00 00 */ lwz r0, 0(r31)
/* 8027C26C 002791CC 7C 09 03 A6 */ mtctr r0
/* 8027C270 002791D0 2C 00 00 00 */ cmpwi r0, 0
/* 8027C274 002791D4 40 81 00 20 */ ble lbl_8027C294
lbl_8027C278:
/* 8027C278 002791D8 28 03 00 00 */ cmplwi r3, 0
/* 8027C27C 002791DC 41 82 00 0C */ beq lbl_8027C288
/* 8027C280 002791E0 C0 04 00 00 */ lfs f0, 0(r4)
/* 8027C284 002791E4 D0 03 00 00 */ stfs f0, 0(r3)
lbl_8027C288:
/* 8027C288 002791E8 38 63 00 04 */ addi r3, r3, 4
/* 8027C28C 002791EC 38 84 00 04 */ addi r4, r4, 4
/* 8027C290 002791F0 42 00 FF E8 */ bdnz lbl_8027C278
lbl_8027C294:
/* 8027C294 002791F4 80 A1 00 08 */ lwz r5, 8(r1)
/* 8027C298 002791F8 38 60 00 00 */ li r3, 0
/* 8027C29C 002791FC 2C 05 00 00 */ cmpwi r5, 0
/* 8027C2A0 00279200 40 81 00 40 */ ble lbl_8027C2E0
/* 8027C2A4 00279204 2C 05 00 08 */ cmpwi r5, 8
/* 8027C2A8 00279208 38 85 FF F8 */ addi r4, r5, -8
/* 8027C2AC 0027920C 40 81 00 20 */ ble lbl_8027C2CC
/* 8027C2B0 00279210 38 04 00 07 */ addi r0, r4, 7
/* 8027C2B4 00279214 54 00 E8 FE */ srwi r0, r0, 3
/* 8027C2B8 00279218 7C 09 03 A6 */ mtctr r0
/* 8027C2BC 0027921C 2C 04 00 00 */ cmpwi r4, 0
/* 8027C2C0 00279220 40 81 00 0C */ ble lbl_8027C2CC
lbl_8027C2C4:
/* 8027C2C4 00279224 38 63 00 08 */ addi r3, r3, 8
/* 8027C2C8 00279228 42 00 FF FC */ bdnz lbl_8027C2C4
lbl_8027C2CC:
/* 8027C2CC 0027922C 7C 03 28 50 */ subf r0, r3, r5
/* 8027C2D0 00279230 7C 09 03 A6 */ mtctr r0
/* 8027C2D4 00279234 7C 03 28 00 */ cmpw r3, r5
/* 8027C2D8 00279238 40 80 00 08 */ bge lbl_8027C2E0
lbl_8027C2DC:
/* 8027C2DC 0027923C 42 00 00 00 */ bdnz lbl_8027C2DC
lbl_8027C2E0:
/* 8027C2E0 00279240 38 00 00 00 */ li r0, 0
/* 8027C2E4 00279244 7F E3 FB 78 */ mr r3, r31
/* 8027C2E8 00279248 90 01 00 08 */ stw r0, 8(r1)
/* 8027C2EC 0027924C 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8027C2F0 00279250 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8027C2F4 00279254 7C 08 03 A6 */ mtlr r0
/* 8027C2F8 00279258 38 21 00 50 */ addi r1, r1, 0x50
/* 8027C2FC 0027925C 4E 80 00 20 */ blr
.global __ct__13SPrimeStruct6FR12CInputStream
__ct__13SPrimeStruct6FR12CInputStream:
/* 8027C300 00279260 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8027C304 00279264 7C 08 02 A6 */ mflr r0
/* 8027C308 00279268 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027C30C 0027926C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8027C310 00279270 7C 9F 23 78 */ mr r31, r4
/* 8027C314 00279274 93 C1 00 08 */ stw r30, 8(r1)
/* 8027C318 00279278 7C 7E 1B 78 */ mr r30, r3
/* 8027C31C 0027927C 7F E3 FB 78 */ mr r3, r31
/* 8027C320 00279280 48 0C 29 65 */ bl ReadLong__12CInputStreamFv
/* 8027C324 00279284 90 7E 00 00 */ stw r3, 0(r30)
/* 8027C328 00279288 7F E4 FB 78 */ mr r4, r31
/* 8027C32C 0027928C 38 7E 00 04 */ addi r3, r30, 4
/* 8027C330 00279290 4B E8 68 29 */ bl __ct__20CDamageVulnerabilityFR12CInputStream
/* 8027C334 00279294 7F E4 FB 78 */ mr r4, r31
/* 8027C338 00279298 38 7E 00 6C */ addi r3, r30, 0x6c
/* 8027C33C 0027929C 48 0E 71 11 */ bl __ct__6CColorFR12CInputStream
/* 8027C340 002792A0 7F E3 FB 78 */ mr r3, r31
/* 8027C344 002792A4 48 0C 29 41 */ bl ReadLong__12CInputStreamFv
/* 8027C348 002792A8 90 7E 00 70 */ stw r3, 0x70(r30)
/* 8027C34C 002792AC 7F E3 FB 78 */ mr r3, r31
/* 8027C350 002792B0 48 0C 29 35 */ bl ReadLong__12CInputStreamFv
/* 8027C354 002792B4 90 7E 00 74 */ stw r3, 0x74(r30)
/* 8027C358 002792B8 7F C3 F3 78 */ mr r3, r30
/* 8027C35C 002792BC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8027C360 002792C0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8027C364 002792C4 83 C1 00 08 */ lwz r30, 8(r1)
/* 8027C368 002792C8 7C 08 03 A6 */ mtlr r0
/* 8027C36C 002792CC 38 21 00 10 */ addi r1, r1, 0x10
/* 8027C370 002792D0 4E 80 00 20 */ blr
.global BuildCameraShakeData__FRC21SPrimeCameraShakeData
BuildCameraShakeData__FRC21SPrimeCameraShakeData:
/* 8027C374 002792D4 94 21 FF 30 */ stwu r1, -0xd0(r1)
/* 8027C378 002792D8 7C 08 02 A6 */ mflr r0
/* 8027C37C 002792DC 90 01 00 D4 */ stw r0, 0xd4(r1)
/* 8027C380 002792E0 93 E1 00 CC */ stw r31, 0xcc(r1)
/* 8027C384 002792E4 7C 9F 23 78 */ mr r31, r4
/* 8027C388 002792E8 38 9F 00 0C */ addi r4, r31, 0xc
/* 8027C38C 002792EC 93 C1 00 C8 */ stw r30, 0xc8(r1)
/* 8027C390 002792F0 7C 7E 1B 78 */ mr r30, r3
/* 8027C394 002792F4 38 61 00 80 */ addi r3, r1, 0x80
/* 8027C398 002792F8 48 00 00 A5 */ bl BuildCameraShakerComponent__FRC27SPrimeCameraShakerComponent
/* 8027C39C 002792FC 38 61 00 44 */ addi r3, r1, 0x44
/* 8027C3A0 00279300 38 9F 00 30 */ addi r4, r31, 0x30
/* 8027C3A4 00279304 48 00 00 99 */ bl BuildCameraShakerComponent__FRC27SPrimeCameraShakerComponent
/* 8027C3A8 00279308 38 61 00 08 */ addi r3, r1, 8
/* 8027C3AC 0027930C 38 9F 00 54 */ addi r4, r31, 0x54
/* 8027C3B0 00279310 48 00 00 8D */ bl BuildCameraShakerComponent__FRC27SPrimeCameraShakerComponent
/* 8027C3B4 00279314 88 9F 00 00 */ lbz r4, 0(r31)
/* 8027C3B8 00279318 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8027C3BC 0027931C 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l
/* 8027C3C0 00279320 C0 3F 00 04 */ lfs f1, 4(r31)
/* 8027C3C4 00279324 7C 04 00 D0 */ neg r0, r4
/* 8027C3C8 00279328 C0 5F 00 08 */ lfs f2, 8(r31)
/* 8027C3CC 0027932C 7C 00 23 78 */ or r0, r0, r4
/* 8027C3D0 00279330 7F C3 F3 78 */ mr r3, r30
/* 8027C3D4 00279334 38 C1 00 80 */ addi r6, r1, 0x80
/* 8027C3D8 00279338 38 E1 00 44 */ addi r7, r1, 0x44
/* 8027C3DC 0027933C 54 04 0F FE */ srwi r4, r0, 0x1f
/* 8027C3E0 00279340 39 01 00 08 */ addi r8, r1, 8
/* 8027C3E4 00279344 4B EE 0A B5 */ bl __ct__16CCameraShakeDataFffiRC9CVector3fRC22CCameraShakerComponentRC22CCameraShakerComponentRC22CCameraShakerComponent
/* 8027C3E8 00279348 34 01 00 08 */ addic. r0, r1, 8
/* 8027C3EC 0027934C 41 82 00 10 */ beq lbl_8027C3FC
/* 8027C3F0 00279350 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027C3F4 00279354 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027C3F8 00279358 90 01 00 08 */ stw r0, 8(r1)
lbl_8027C3FC:
/* 8027C3FC 0027935C 34 01 00 44 */ addic. r0, r1, 0x44
/* 8027C400 00279360 41 82 00 10 */ beq lbl_8027C410
/* 8027C404 00279364 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027C408 00279368 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027C40C 0027936C 90 01 00 44 */ stw r0, 0x44(r1)
lbl_8027C410:
/* 8027C410 00279370 34 01 00 80 */ addic. r0, r1, 0x80
/* 8027C414 00279374 41 82 00 10 */ beq lbl_8027C424
/* 8027C418 00279378 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha
/* 8027C41C 0027937C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l
/* 8027C420 00279380 90 01 00 80 */ stw r0, 0x80(r1)
lbl_8027C424:
/* 8027C424 00279384 80 01 00 D4 */ lwz r0, 0xd4(r1)
/* 8027C428 00279388 83 E1 00 CC */ lwz r31, 0xcc(r1)
/* 8027C42C 0027938C 83 C1 00 C8 */ lwz r30, 0xc8(r1)
/* 8027C430 00279390 7C 08 03 A6 */ mtlr r0
/* 8027C434 00279394 38 21 00 D0 */ addi r1, r1, 0xd0
/* 8027C438 00279398 4E 80 00 20 */ blr
.global BuildCameraShakerComponent__FRC27SPrimeCameraShakerComponent
BuildCameraShakerComponent__FRC27SPrimeCameraShakerComponent:
/* 8027C43C 0027939C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8027C440 002793A0 7C 08 02 A6 */ mflr r0
/* 8027C444 002793A4 90 01 00 54 */ stw r0, 0x54(r1)
/* 8027C448 002793A8 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8027C44C 002793AC 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8027C450 002793B0 7C 9E 23 78 */ mr r30, r4
/* 8027C454 002793B4 93 A1 00 44 */ stw r29, 0x44(r1)
/* 8027C458 002793B8 7C 7D 1B 78 */ mr r29, r3
/* 8027C45C 002793BC 38 61 00 08 */ addi r3, r1, 8
/* 8027C460 002793C0 88 A4 00 00 */ lbz r5, 0(r4)
/* 8027C464 002793C4 38 9E 00 14 */ addi r4, r30, 0x14
/* 8027C468 002793C8 7C 05 00 D0 */ neg r0, r5
/* 8027C46C 002793CC 7C 00 2B 78 */ or r0, r0, r5
/* 8027C470 002793D0 54 1F 0F FE */ srwi r31, r0, 0x1f
/* 8027C474 002793D4 48 00 00 41 */ bl BuildCameraShakePoint__FRC22SPrimeCameraShakePoint
/* 8027C478 002793D8 38 61 00 20 */ addi r3, r1, 0x20
/* 8027C47C 002793DC 38 9E 00 04 */ addi r4, r30, 4
/* 8027C480 002793E0 48 00 00 35 */ bl BuildCameraShakePoint__FRC22SPrimeCameraShakePoint
/* 8027C484 002793E4 7F A3 EB 78 */ mr r3, r29
/* 8027C488 002793E8 7F E4 FB 78 */ mr r4, r31
/* 8027C48C 002793EC 38 A1 00 20 */ addi r5, r1, 0x20
/* 8027C490 002793F0 38 C1 00 08 */ addi r6, r1, 8
/* 8027C494 002793F4 4B EE 0D BD */ bl __ct__22CCameraShakerComponentFiRC17SCameraShakePointRC17SCameraShakePoint
/* 8027C498 002793F8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8027C49C 002793FC 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8027C4A0 00279400 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8027C4A4 00279404 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 8027C4A8 00279408 7C 08 03 A6 */ mtlr r0
/* 8027C4AC 0027940C 38 21 00 50 */ addi r1, r1, 0x50
/* 8027C4B0 00279410 4E 80 00 20 */ blr
.global BuildCameraShakePoint__FRC22SPrimeCameraShakePoint
BuildCameraShakePoint__FRC22SPrimeCameraShakePoint:
/* 8027C4B4 00279414 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8027C4B8 00279418 7C 08 02 A6 */ mflr r0
/* 8027C4BC 0027941C 7C 85 23 78 */ mr r5, r4
/* 8027C4C0 00279420 38 80 00 00 */ li r4, 0
/* 8027C4C4 00279424 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027C4C8 00279428 C0 25 00 00 */ lfs f1, 0(r5)
/* 8027C4CC 0027942C C0 45 00 04 */ lfs f2, 4(r5)
/* 8027C4D0 00279430 C0 65 00 08 */ lfs f3, 8(r5)
/* 8027C4D4 00279434 C0 85 00 0C */ lfs f4, 0xc(r5)
/* 8027C4D8 00279438 4B EE 0F CD */ bl __ct__17SCameraShakePointFiffff
/* 8027C4DC 0027943C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8027C4E0 00279440 7C 08 03 A6 */ mtlr r0
/* 8027C4E4 00279444 38 21 00 10 */ addi r1, r1, 0x10
/* 8027C4E8 00279448 4E 80 00 20 */ blr
.global sub_8027c4ec
sub_8027c4ec:
/* 8027C4EC 0027944C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8027C4F0 00279450 7C 08 02 A6 */ mflr r0
/* 8027C4F4 00279454 90 01 00 14 */ stw r0, 0x14(r1)
/* 8027C4F8 00279458 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8027C4FC 0027945C 7C 9F 23 78 */ mr r31, r4
/* 8027C500 00279460 93 C1 00 08 */ stw r30, 8(r1)
/* 8027C504 00279464 7C 7E 1B 79 */ or. r30, r3, r3
/* 8027C508 00279468 41 82 00 28 */ beq lbl_8027C530
/* 8027C50C 0027946C 3C A0 80 3F */ lis r5, lbl_803EB0FC@ha
/* 8027C510 00279470 38 80 00 00 */ li r4, 0
/* 8027C514 00279474 38 05 B0 FC */ addi r0, r5, lbl_803EB0FC@l
/* 8027C518 00279478 90 1E 00 00 */ stw r0, 0(r30)
/* 8027C51C 0027947C 4B E9 FE F9 */ bl __dt__13CPhysicsActorFv
/* 8027C520 00279480 7F E0 07 35 */ extsh. r0, r31
/* 8027C524 00279484 40 81 00 0C */ ble lbl_8027C530
/* 8027C528 00279488 7F C3 F3 78 */ mr r3, r30
/* 8027C52C 0027948C 48 09 94 05 */ bl Free__7CMemoryFPCv
lbl_8027C530:
/* 8027C530 00279490 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8027C534 00279494 7F C3 F3 78 */ mr r3, r30
/* 8027C538 00279498 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8027C53C 0027949C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8027C540 002794A0 7C 08 03 A6 */ mtlr r0
/* 8027C544 002794A4 38 21 00 10 */ addi r1, r1, 0x10
/* 8027C548 002794A8 4E 80 00 20 */ blr
.global __sinit_CMetroidPrimeExo_cpp
__sinit_CMetroidPrimeExo_cpp:
/* 8027C54C 002794AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8027C550 002794B0 3C 60 80 3D */ lis r3, lbl_803D5454@ha
/* 8027C554 002794B4 39 23 54 54 */ addi r9, r3, lbl_803D5454@l
/* 8027C558 002794B8 3C 80 80 3F */ lis r4, lbl_803EAA90@ha
/* 8027C55C 002794BC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8027C560 002794C0 38 64 AA 90 */ addi r3, r4, lbl_803EAA90@l
/* 8027C564 002794C4 81 82 BB E8 */ lwz r12, lbl_805AD908@sda21(r2)
/* 8027C568 002794C8 39 63 00 18 */ addi r11, r3, 0x18
/* 8027C56C 002794CC 93 C1 00 08 */ stw r30, 8(r1)
/* 8027C570 002794D0 3B E3 00 00 */ addi r31, r3, 0
/* 8027C574 002794D4 83 C2 BB E4 */ lwz r30, lbl_805AD904@sda21(r2)
/* 8027C578 002794D8 38 E3 01 E4 */ addi r7, r3, 0x1e4
/* 8027C57C 002794DC 81 42 BB EC */ lwz r10, lbl_805AD90C@sda21(r2)
/* 8027C580 002794E0 81 09 00 08 */ lwz r8, 8(r9)
/* 8027C584 002794E4 80 C9 00 0C */ lwz r6, 0xc(r9)
/* 8027C588 002794E8 80 A9 00 00 */ lwz r5, 0(r9)
/* 8027C58C 002794EC 80 89 00 04 */ lwz r4, 4(r9)
/* 8027C590 002794F0 80 69 00 10 */ lwz r3, 0x10(r9)
/* 8027C594 002794F4 80 09 00 14 */ lwz r0, 0x14(r9)
/* 8027C598 002794F8 93 DF 00 10 */ stw r30, 0x10(r31)
/* 8027C59C 002794FC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8027C5A0 00279500 91 8B 01 B8 */ stw r12, 0x1b8(r11)
/* 8027C5A4 00279504 83 C1 00 08 */ lwz r30, 8(r1)
/* 8027C5A8 00279508 91 4B 01 BC */ stw r10, 0x1bc(r11)
/* 8027C5AC 0027950C 91 07 00 10 */ stw r8, 0x10(r7)
/* 8027C5B0 00279510 90 C7 00 14 */ stw r6, 0x14(r7)
/* 8027C5B4 00279514 90 A7 00 20 */ stw r5, 0x20(r7)
/* 8027C5B8 00279518 90 87 00 24 */ stw r4, 0x24(r7)
/* 8027C5BC 0027951C 90 67 00 30 */ stw r3, 0x30(r7)
/* 8027C5C0 00279520 90 07 00 34 */ stw r0, 0x34(r7)
/* 8027C5C4 00279524 38 21 00 10 */ addi r1, r1, 0x10
/* 8027C5C8 00279528 4E 80 00 20 */ blr
.section .sdata2, "a"
.balign 8
.global lbl_805AD8F0
lbl_805AD8F0:
# ROM: 0x3FA190
.float 0.3
.global lbl_805AD8F4
lbl_805AD8F4:
# ROM: 0x3FA194
.4byte lbl_803D5618
.4byte lbl_803D5626
.global lbl_805AD8FC
lbl_805AD8FC:
# ROM: 0x3FA19C
.4byte lbl_803D5634
.4byte lbl_803D563C
.global lbl_805AD904
lbl_805AD904:
# ROM: 0x3FA1A4
.4byte lbl_803D5680
.global lbl_805AD908
lbl_805AD908:
# ROM: 0x3FA1A8
.4byte lbl_803D5690
.global lbl_805AD90C
lbl_805AD90C:
# ROM: 0x3FA1AC
.4byte lbl_803D5696
.global lbl_805AD910
lbl_805AD910:
# ROM: 0x3FA1B0
.4byte lbl_803D56A4
.global lbl_805AD914
lbl_805AD914:
# ROM: 0x3FA1B4
.4byte 0x3FB33333
.global lbl_805AD918
lbl_805AD918:
# ROM: 0x3FA1B8
.float 0.25
.global lbl_805AD91C
lbl_805AD91C:
# ROM: 0x3FA1BC
.4byte 0x3F4CCCCD
.global lbl_805AD920
lbl_805AD920:
# ROM: 0x3FA1C0
.float 0.6
.global lbl_805AD924
lbl_805AD924:
# ROM: 0x3FA1C4
.float 0.35
.global lbl_805AD928
lbl_805AD928:
# ROM: 0x3FA1C8
.4byte 0
.global lbl_805AD92C
lbl_805AD92C:
# ROM: 0x3FA1CC
.4byte 0x42700000
.global lbl_805AD930
lbl_805AD930:
# ROM: 0x3FA1D0
.4byte 0x3FFBBBBB
.global lbl_805AD934
lbl_805AD934:
# ROM: 0x3FA1D4
.float 15.0
.global lbl_805AD938
lbl_805AD938:
# ROM: 0x3FA1D8
.4byte 0x41800000
.global lbl_805AD93C
lbl_805AD93C:
# ROM: 0x3FA1DC
.4byte 0x3FA22222
.global lbl_805AD940
lbl_805AD940:
# ROM: 0x3FA1E0
.float 0.2
.global lbl_805AD944
lbl_805AD944:
# ROM: 0x3FA1E4
.4byte 0x3F8CCCCC
.global lbl_805AD948
lbl_805AD948:
# ROM: 0x3FA1E8
.4byte 0x3F9BBBBC
.global lbl_805AD94C
lbl_805AD94C:
# ROM: 0x3FA1EC
.float 0.4
.global lbl_805AD950
lbl_805AD950:
# ROM: 0x3FA1F0
.float 1.0
.global lbl_805AD954
lbl_805AD954:
# ROM: 0x3FA1F4
.4byte 0x3F666667
.global lbl_805AD958
lbl_805AD958:
# ROM: 0x3FA1F8
.4byte 0x4532C000
.global lbl_805AD95C
lbl_805AD95C:
# ROM: 0x3FA1FC
.4byte 0x3F13CD3A
.global lbl_805AD960
lbl_805AD960:
# ROM: 0x3FA200
.float 5.0
.global lbl_805AD964
lbl_805AD964:
# ROM: 0x3FA204
.float 2.0
.global lbl_805AD968
lbl_805AD968:
# ROM: 0x3FA208
.4byte 0xC1000000
.global lbl_805AD96C
lbl_805AD96C:
# ROM: 0x3FA20C
.4byte 0x43A20000
.global lbl_805AD970
lbl_805AD970:
# ROM: 0x3FA210
.float 0.75
.global lbl_805AD974
lbl_805AD974:
# ROM: 0x3FA214
.4byte 0x41300000
.global lbl_805AD978
lbl_805AD978:
# ROM: 0x3FA218
.float 0.7
.global lbl_805AD97C
lbl_805AD97C:
# ROM: 0x3FA21C
.float 1.0E-4
.global lbl_805AD980
lbl_805AD980:
# ROM: 0x3FA220
.4byte 0x40F00000
.global lbl_805AD984
lbl_805AD984:
# ROM: 0x3FA224
.float -1.0
.global lbl_805AD988
lbl_805AD988:
# ROM: 0x3FA228
.float 0.3
.global lbl_805AD98C
lbl_805AD98C:
# ROM: 0x3FA22C
.float 0.1
.global lbl_805AD990
lbl_805AD990:
# ROM: 0x3FA230
.4byte 0x41200000
.global lbl_805AD994
lbl_805AD994:
# ROM: 0x3FA234
.4byte 0x42F00000
.global lbl_805AD998
lbl_805AD998:
# ROM: 0x3FA238
.double 4.503601774854144E15
.global lbl_805AD9A0
lbl_805AD9A0:
# ROM: 0x3FA240
.float 0.5
.global lbl_805AD9A4
lbl_805AD9A4:
# ROM: 0x3FA244
.4byte 0x40400000
.global lbl_805AD9A8
lbl_805AD9A8:
# ROM: 0x3FA248
.float 0.9
.global lbl_805AD9AC
lbl_805AD9AC:
# ROM: 0x3FA24C
.4byte 0x3727C5AC
.global lbl_805AD9B0
lbl_805AD9B0:
# ROM: 0x3FA250
.4byte 0x41FBFFFF
.global lbl_805AD9B4
lbl_805AD9B4:
# ROM: 0x3FA254
.4byte 0x43088000
.global lbl_805AD9B8
lbl_805AD9B8:
# ROM: 0x3FA258
.4byte 0x41A3CCCC
.global lbl_805AD9BC
lbl_805AD9BC:
# ROM: 0x3FA25C
.float 1.5
.global lbl_805AD9C0
lbl_805AD9C0:
# ROM: 0x3FA260
.4byte 0
.4byte 0
.global lbl_805AD9C8
lbl_805AD9C8:
# ROM: 0x3FA268
.4byte 0x41F00000
.global lbl_805AD9CC
lbl_805AD9CC:
# ROM: 0x3FA26C
.4byte 0x46EA6000
.global lbl_805AD9D0
lbl_805AD9D0:
# ROM: 0x3FA270
.4byte 0x3F3504F2
.global lbl_805AD9D4
lbl_805AD9D4:
# ROM: 0x3FA274
.float 0.7853982
.global lbl_805AD9D8
lbl_805AD9D8:
# ROM: 0x3FA278
.float 150.0
.global lbl_805AD9DC
lbl_805AD9DC:
# ROM: 0x3FA27C
.4byte 0x40C00000
.global lbl_805AD9E0
lbl_805AD9E0:
# ROM: 0x3FA280
.4byte 0x40B00000
.global lbl_805AD9E4
lbl_805AD9E4:
# ROM: 0x3FA284
.4byte 0xC0C00000
.global lbl_805AD9E8
lbl_805AD9E8:
# ROM: 0x3FA288
.4byte 0x447A0000
.global lbl_805AD9EC
lbl_805AD9EC:
# ROM: 0x3FA28C
.4byte 0x3FB2B8C3
.global lbl_805AD9F0
lbl_805AD9F0:
# ROM: 0x3FA290
.4byte 0x40490FDB
.global lbl_805AD9F4
lbl_805AD9F4:
# ROM: 0x3FA294
.4byte 0x43480000
.global lbl_805AD9F8
lbl_805AD9F8:
# ROM: 0x3FA298
.4byte 0xC1A00000
.global lbl_805AD9FC
lbl_805AD9FC:
# ROM: 0x3FA29C
.4byte 0x41A00000
.global lbl_805ADA00
lbl_805ADA00:
# ROM: 0x3FA2A0
.float 0.017453292
.global lbl_805ADA04
lbl_805ADA04:
# ROM: 0x3FA2A4
.4byte 0xC1F00000
.global lbl_805ADA08
lbl_805ADA08:
# ROM: 0x3FA2A8
.4byte 0x3F733333
.global lbl_805ADA0C
lbl_805ADA0C:
# ROM: 0x3FA2AC
.4byte 0x3F99999A
.global lbl_805ADA10
lbl_805ADA10:
# ROM: 0x3FA2B0
.4byte 0x3FC66666
.global lbl_805ADA14
lbl_805ADA14:
# ROM: 0x3FA2B4
.float 255.0
.global lbl_805ADA18
lbl_805ADA18:
# ROM: 0x3FA2B8
.float 4.0
.global lbl_805ADA1C
lbl_805ADA1C:
# ROM: 0x3FA2BC
.4byte 0x42960000
.section .rodata
.balign 8
.global lbl_803D5428
lbl_803D5428:
# ROM: 0x3D2428
.4byte 0x40400000
.4byte 0x40E00000
.float 15.0
.global lbl_803D5434
lbl_803D5434:
# ROM: 0x3D2434
.4byte 0x45174000
.4byte 0x44DC0000
.4byte 0x445C0000
.4byte 0
.global lbl_803D5444
lbl_803D5444:
# ROM: 0x3D2444
.4byte lbl_803D5644
.4byte lbl_803D564F
.4byte lbl_803D5660
.4byte lbl_803D5670
.global lbl_803D5454
lbl_803D5454:
# ROM: 0x3D2454
.4byte lbl_803D56BB
.4byte lbl_803D56C3
.4byte lbl_803D5634
.4byte lbl_803D56CB
.4byte lbl_803D56D3
.4byte lbl_803D563C
.global lbl_803D546C
lbl_803D546C:
# ROM: 0x3D246C
.4byte 0x0000000A
.4byte 0x0000000B
.4byte 0x0000000C
.global lbl_803D5478
lbl_803D5478:
# ROM: 0x3D2478
.4byte 0x00000001
.4byte 0x00000002
.4byte 0
.4byte 0x00000007
.4byte 0x00000005
.4byte 0x00000012
.4byte 0x00000012
.4byte 0x00000012
.4byte 0x00000012
.4byte 0x00000012
.4byte 0x00000012
.4byte 0x00000012
.4byte 0x00000007
.4byte 0x00000005
.4byte 0x00000007
.4byte 0x00000011
.4byte 0x00000012
.4byte 0x00000009
.4byte 0x00000002
.4byte 0x0000000B
.global lbl_803D54C8
lbl_803D54C8:
# ROM: 0x3D24C8
.4byte 0x00000003
.4byte 0x00000003
.4byte 0x00000003
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000005
.4byte 0x00000005
.4byte 0x00000005
.4byte 0x00000008
.4byte 0x00000008
.4byte 0x00000008
.4byte 0x0000000B
.4byte 0x0000000B
.4byte 0x0000000B
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000004
.4byte 0x00000004
.4byte 0x00000004
.4byte 0x00000007
.4byte 0x00000007
.4byte 0x00000007
.4byte 0x00000004
.4byte 0x00000007
.4byte 0x00000001
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0x00000002
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0
.4byte 0
.4byte 0
.global lbl_803D5570
lbl_803D5570:
# ROM: 0x3D2570
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0x0000000A
.4byte 0x0000000B
.4byte 0x0000000C
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0x00000008
.4byte 0x00000008
.4byte 0x00000008
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.global lbl_803D5618
lbl_803D5618:
# ROM: 0x3D2618
.asciz "driller_LCTR1"
.global lbl_803D5626
lbl_803D5626:
# ROM: 0x3D2626
.byte 0x64, 0x72
.asciz "iller_LCTR2"
.global lbl_803D5634
lbl_803D5634:
# ROM: 0x3D2634
.asciz "L_eye_3"
.global lbl_803D563C
lbl_803D563C:
# ROM: 0x3D263C
.asciz "R_eye_3"
.global lbl_803D5644
lbl_803D5644:
# ROM: 0x3D2644
.asciz "Flame_Head"
.global lbl_803D564F
lbl_803D564F:
# ROM: 0x3D264F
.byte 0x46
.asciz "lame_HeadLockOn"
.global lbl_803D5660
lbl_803D5660:
# ROM: 0x3D2660
.asciz "Flame_Lshoulder"
.global lbl_803D5670
lbl_803D5670:
# ROM: 0x3D2670
.asciz "Flame_Rshoulder"
.global lbl_803D5680
lbl_803D5680:
# ROM: 0x3D2680
.asciz "Head_LockON_SDK"
.global lbl_803D5690
lbl_803D5690:
# ROM: 0x3D2690
.asciz "Jaw_1"
.global lbl_803D5696
lbl_803D5696:
# ROM: 0x3D2696
.byte 0x43, 0x5F
.asciz "bottomtooth"
.global lbl_803D56A4
lbl_803D56A4:
# ROM: 0x3D26A4
.asciz "B_headup_additive_body"
.global lbl_803D56BB
lbl_803D56BB:
# ROM: 0x3D26BB
.byte 0x4C
.asciz "_eye_1"
.global lbl_803D56C3
lbl_803D56C3:
# ROM: 0x3D26C3
.byte 0x4C
.asciz "_eye_2"
.global lbl_803D56CB
lbl_803D56CB:
# ROM: 0x3D26CB
.byte 0x52
.asciz "_eye_1"
.global lbl_803D56D3
lbl_803D56D3:
# ROM: 0x3D26D3
.byte 0x52
.asciz "_eye_2"
.global lbl_803D56DB
lbl_803D56DB:
# ROM: 0x3D26DB
.byte 0x53
.asciz "phere_LCTR"
.global lbl_803D56E7
lbl_803D56E7:
# ROM: 0x3D26E7
.byte 0x53
.asciz "keleton_Root"
.global lbl_803D56F5
lbl_803D56F5:
# ROM: 0x3D26F5
.byte 0x52, 0x5F, 0x73
.asciz "houlder"
.global lbl_803D5700
lbl_803D5700:
# ROM: 0x3D2700
.asciz "R_elbow"
.global lbl_803D5708
lbl_803D5708:
# ROM: 0x3D2708
.asciz "R_wrist"
.global lbl_803D5710
lbl_803D5710:
# ROM: 0x3D2710
.asciz "R_hand_LCTR"
.global lbl_803D571C
lbl_803D571C:
# ROM: 0x3D271C
.asciz "R_leg_LCTR"
.global lbl_803D5727
lbl_803D5727:
# ROM: 0x3D2727
.byte 0x52
.asciz "_front_1"
.global lbl_803D5731
lbl_803D5731:
# ROM: 0x3D2731
.byte 0x52, 0x5F, 0x66
.asciz "ront_2"
.global lbl_803D573B
lbl_803D573B:
# ROM: 0x3D273B
.byte 0x52
.asciz "_front_3"
.global lbl_803D5745
lbl_803D5745:
# ROM: 0x3D2745
.byte 0x46, 0x5F, 0x52
.asciz "_leg_LCTR"
.global lbl_803D5752
lbl_803D5752:
# ROM: 0x3D2752
.byte 0x52, 0x5F
.asciz "stinger_1"
.global lbl_803D575E
lbl_803D575E:
# ROM: 0x3D275E
.byte 0x52, 0x5F
.asciz "stinger_2"
.global lbl_803D576A
lbl_803D576A:
# ROM: 0x3D276A
.byte 0x52, 0x5F
.asciz "spike_LCTR"
.global lbl_803D5777
lbl_803D5777:
# ROM: 0x3D2777
.byte 0x4C
.asciz "_shoulder"
.global lbl_803D5782
lbl_803D5782:
# ROM: 0x3D2782
.byte 0x4C, 0x5F
.asciz "elbow"
.global lbl_803D578A
lbl_803D578A:
# ROM: 0x3D278A
.byte 0x4C, 0x5F
.asciz "wrist"
.global lbl_803D5792
lbl_803D5792:
# ROM: 0x3D2792
.byte 0x4C, 0x5F
.asciz "hand_LCTR"
.global lbl_803D579E
lbl_803D579E:
# ROM: 0x3D279E
.byte 0x4C, 0x5F
.asciz "leg_LCTR"
.global lbl_803D57A9
lbl_803D57A9:
# ROM: 0x3D27A9
.byte 0x4C, 0x5F, 0x66
.asciz "ront_1"
.global lbl_803D57B3
lbl_803D57B3:
# ROM: 0x3D27B3
.byte 0x4C
.asciz "_front_2"
.global lbl_803D57BD
lbl_803D57BD:
# ROM: 0x3D27BD
.byte 0x4C, 0x5F, 0x66
.asciz "ront_3"
.global lbl_803D57C7
lbl_803D57C7:
# ROM: 0x3D27C7
.byte 0x46
.asciz "_L_leg_LCTR"
.global lbl_803D57D4
lbl_803D57D4:
# ROM: 0x3D27D4
.asciz "L_stinger_1"
.global lbl_803D57E0
lbl_803D57E0:
# ROM: 0x3D27E0
.asciz "L_stinger_2"
.global lbl_803D57EC
lbl_803D57EC:
# ROM: 0x3D27EC
.asciz "L_spike_LCTR"
.global lbl_803D57F9
lbl_803D57F9:
# ROM: 0x3D27F9
.byte 0x42, 0x5F, 0x73
.asciz "houlder"
.global lbl_803D5804
lbl_803D5804:
# ROM: 0x3D2804
.asciz "B_elbow"
.global lbl_803D580C
lbl_803D580C:
# ROM: 0x3D280C
.asciz "B_wrist"
.global lbl_803D5814
lbl_803D5814:
# ROM: 0x3D2814
.asciz "B_leg_LCTR"
.global lbl_803D581F
lbl_803D581F:
# ROM: 0x3D281F
.byte 0x48
.asciz "ead_LCTR"
.global lbl_803D5829
lbl_803D5829:
# ROM: 0x3D2829
.byte 0x48, 0x6F, 0x72
.asciz "n_LCTR"
.global lbl_803D5833
lbl_803D5833:
# ROM: 0x3D2833
.byte 0x48
.4byte 0x65616400
.asciz "??(??)"
.balign 4
.asciz "ColorChange"
.asciz "Eyes"
.byte 0x45, 0x66, 0x66
.asciz "ect_Electric"
.balign 4
.4byte 0