prime/asm/MetroidPrime/Weapons/CBomb.s

1273 lines
62 KiB
ArmAsm

.include "macros.inc"
.section .data
.balign 8
.global lbl_803DACC0
lbl_803DACC0:
# ROM: 0x3D7CC0
.4byte 0
.4byte 0
.4byte __dt__5CBombFv
.4byte Accept__5CBombFR8IVisitor
.4byte PreThink__7CEntityFfR13CStateManager
.4byte Think__5CBombFfR13CStateManager
.4byte AcceptScriptMsg__5CBombF20EScriptObjectMessage9TUniqueIdR13CStateManager
.4byte SetActive__6CActorFb
.4byte PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes
.4byte AddToRenderer__5CBombCFRC14CFrustumPlanesRC13CStateManager
.4byte nullsub_99
.4byte CanRenderUnsorted__6CActorCFRC13CStateManager
.4byte CalculateRenderBounds__6CActorFv
.4byte HealthInfo__6CActorFR13CStateManager
.4byte GetDamageVulnerability__6CActorCFv
.4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo
.4byte GetTouchBounds__5CBombCFv
.4byte Touch__5CBombFR6CActorR13CStateManager
.4byte GetOrbitPosition__6CActorCFRC13CStateManager
.4byte GetAimPosition__6CActorCFRC13CStateManagerf
.4byte GetHomingPosition__6CActorCFRC13CStateManagerf
.4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager
.4byte GetCollisionResponseType__7CWeaponCFRC9CVector3fRC9CVector3fRC11CWeaponModei
.4byte FluidFXThink__7CWeaponFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager
.4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager
.4byte GetSortingBounds__6CActorCFRC13CStateManager
.4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef
.4byte 0
.section .sdata
.balign 8
.global lbl_805A7120
lbl_805A7120:
# ROM: 0x3F4AC0
.float 0.2
.global lbl_805A7124
lbl_805A7124:
# ROM: 0x3F4AC4
.4byte 0x00000013
.global lbl_805A7128
lbl_805A7128:
# ROM: 0x3F4AC8
.4byte 0x00000022
.global lbl_805A712C
lbl_805A712C:
# ROM: 0x3F4ACC
.4byte 0x00000032
.global lbl_805A7130
lbl_805A7130:
# ROM: 0x3F4AD0
.4byte 0x00000023
.global lbl_805A7134
lbl_805A7134:
# ROM: 0x3F4AD4
.4byte 0x00000024
.global lbl_805A7138
lbl_805A7138:
# ROM: 0x3F4AD8
.4byte 0x00000023
.global lbl_805A713C
lbl_805A713C:
# ROM: 0x3F4ADC
.4byte 0x00000024
.global lbl_805A7140
lbl_805A7140:
# ROM: 0x3F4AE0
.4byte 0x00000013
.global lbl_805A7144
lbl_805A7144:
# ROM: 0x3F4AE4
.4byte 0x00000021
.global lbl_805A7148
lbl_805A7148:
# ROM: 0x3F4AE8
.4byte 0x00000020
.global lbl_805A714C
lbl_805A714C:
# ROM: 0x3F4AEC
.4byte 0x00000012
.section .bss
.balign 8
.lcomm lbl_8046C420, 0x18, 4
.section .sbss
.balign 8
# CBomb
.global lbl_805A8E60
lbl_805A8E60:
.skip 0x8
.section .sdata2, "a"
.balign 8
.global lbl_805AA800
lbl_805AA800:
# ROM: 0x3F70A0
.4byte 0
.global lbl_805AA804
lbl_805AA804:
# ROM: 0x3F70A4
.float 0.5
.global lbl_805AA808
lbl_805AA808:
# ROM: 0x3F70A8
.float 1.0
.global lbl_805AA80C
lbl_805AA80C:
# ROM: 0x3F70AC
.float 0.9
.section .text, "ax"
.global sub_8008faf0
sub_8008faf0:
/* 8008FAF0 0008CA50 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 8008FAF4 0008CA54 7C 08 02 A6 */ mflr r0
/* 8008FAF8 0008CA58 90 01 00 74 */ stw r0, 0x74(r1)
/* 8008FAFC 0008CA5C 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8008FB00 0008CA60 7C 9F 23 78 */ mr r31, r4
/* 8008FB04 0008CA64 93 C1 00 68 */ stw r30, 0x68(r1)
/* 8008FB08 0008CA68 7C 7E 1B 78 */ mr r30, r3
/* 8008FB0C 0008CA6C 80 63 01 84 */ lwz r3, 0x184(r3)
/* 8008FB10 0008CA70 81 83 00 00 */ lwz r12, 0(r3)
/* 8008FB14 0008CA74 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8008FB18 0008CA78 7D 89 03 A6 */ mtctr r12
/* 8008FB1C 0008CA7C 4E 80 04 21 */ bctrl
/* 8008FB20 0008CA80 A0 7E 01 88 */ lhz r3, 0x188(r30)
/* 8008FB24 0008CA84 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 8008FB28 0008CA88 7C 03 00 40 */ cmplw r3, r0
/* 8008FB2C 0008CA8C 41 82 00 60 */ beq lbl_8008FB8C
/* 8008FB30 0008CA90 A0 1E 01 88 */ lhz r0, 0x188(r30)
/* 8008FB34 0008CA94 7F E3 FB 78 */ mr r3, r31
/* 8008FB38 0008CA98 38 81 00 08 */ addi r4, r1, 8
/* 8008FB3C 0008CA9C B0 01 00 08 */ sth r0, 8(r1)
/* 8008FB40 0008CAA0 4B FB CA 35 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 8008FB44 0008CAA4 7C 64 1B 78 */ mr r4, r3
/* 8008FB48 0008CAA8 38 61 00 0C */ addi r3, r1, 0xc
/* 8008FB4C 0008CAAC 48 01 DF 39 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity"
/* 8008FB50 0008CAB0 83 E3 00 04 */ lwz r31, 4(r3)
/* 8008FB54 0008CAB4 28 1F 00 00 */ cmplwi r31, 0
/* 8008FB58 0008CAB8 41 82 00 34 */ beq lbl_8008FB8C
/* 8008FB5C 0008CABC 88 1E 00 30 */ lbz r0, 0x30(r30)
/* 8008FB60 0008CAC0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 8008FB64 0008CAC4 41 82 00 28 */ beq lbl_8008FB8C
/* 8008FB68 0008CAC8 80 9E 01 84 */ lwz r4, 0x184(r30)
/* 8008FB6C 0008CACC 38 61 00 14 */ addi r3, r1, 0x14
/* 8008FB70 0008CAD0 81 84 00 00 */ lwz r12, 0(r4)
/* 8008FB74 0008CAD4 81 8C 00 68 */ lwz r12, 0x68(r12)
/* 8008FB78 0008CAD8 7D 89 03 A6 */ mtctr r12
/* 8008FB7C 0008CADC 4E 80 04 21 */ bctrl
/* 8008FB80 0008CAE0 7F E3 FB 78 */ mr r3, r31
/* 8008FB84 0008CAE4 38 81 00 14 */ addi r4, r1, 0x14
/* 8008FB88 0008CAE8 48 02 5B BD */ bl SetLight__10CGameLightFRC6CLight
lbl_8008FB8C:
/* 8008FB8C 0008CAEC 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8008FB90 0008CAF0 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 8008FB94 0008CAF4 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 8008FB98 0008CAF8 7C 08 03 A6 */ mtlr r0
/* 8008FB9C 0008CAFC 38 21 00 70 */ addi r1, r1, 0x70
/* 8008FBA0 0008CB00 4E 80 00 20 */ blr
.global GetTouchBounds__5CBombCFv
GetTouchBounds__5CBombCFv:
/* 8008FBA4 0008CB04 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 8008FBA8 0008CB08 88 04 01 90 */ lbz r0, 0x190(r4)
/* 8008FBAC 0008CB0C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 8008FBB0 0008CB10 41 82 00 0C */ beq lbl_8008FBBC
/* 8008FBB4 0008CB14 C0 ED 85 60 */ lfs f7, lbl_805A7120@sda21(r13)
/* 8008FBB8 0008CB18 48 00 00 08 */ b lbl_8008FBC0
lbl_8008FBBC:
/* 8008FBBC 0008CB1C C0 E4 01 3C */ lfs f7, 0x13c(r4)
lbl_8008FBC0:
/* 8008FBC0 0008CB20 C0 44 00 60 */ lfs f2, 0x60(r4)
/* 8008FBC4 0008CB24 C0 64 01 78 */ lfs f3, 0x178(r4)
/* 8008FBC8 0008CB28 C0 24 00 50 */ lfs f1, 0x50(r4)
/* 8008FBCC 0008CB2C C0 04 00 40 */ lfs f0, 0x40(r4)
/* 8008FBD0 0008CB30 FC 03 10 40 */ fcmpo cr0, f3, f2
/* 8008FBD4 0008CB34 D0 21 00 3C */ stfs f1, 0x3c(r1)
/* 8008FBD8 0008CB38 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 8008FBDC 0008CB3C D0 41 00 40 */ stfs f2, 0x40(r1)
/* 8008FBE0 0008CB40 D0 41 00 08 */ stfs f2, 8(r1)
/* 8008FBE4 0008CB44 D0 61 00 0C */ stfs f3, 0xc(r1)
/* 8008FBE8 0008CB48 40 80 00 0C */ bge lbl_8008FBF4
/* 8008FBEC 0008CB4C 38 A1 00 08 */ addi r5, r1, 8
/* 8008FBF0 0008CB50 48 00 00 08 */ b lbl_8008FBF8
lbl_8008FBF4:
/* 8008FBF4 0008CB54 38 A1 00 0C */ addi r5, r1, 0xc
lbl_8008FBF8:
/* 8008FBF8 0008CB58 C0 05 00 00 */ lfs f0, 0(r5)
/* 8008FBFC 0008CB5C C0 24 00 50 */ lfs f1, 0x50(r4)
/* 8008FC00 0008CB60 C0 64 01 74 */ lfs f3, 0x174(r4)
/* 8008FC04 0008CB64 EC A7 00 2A */ fadds f5, f7, f0
/* 8008FC08 0008CB68 C0 44 00 60 */ lfs f2, 0x60(r4)
/* 8008FC0C 0008CB6C C0 04 00 40 */ lfs f0, 0x40(r4)
/* 8008FC10 0008CB70 FC 03 08 40 */ fcmpo cr0, f3, f1
/* 8008FC14 0008CB74 D0 21 00 48 */ stfs f1, 0x48(r1)
/* 8008FC18 0008CB78 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 8008FC1C 0008CB7C D0 41 00 4C */ stfs f2, 0x4c(r1)
/* 8008FC20 0008CB80 D0 21 00 10 */ stfs f1, 0x10(r1)
/* 8008FC24 0008CB84 D0 61 00 14 */ stfs f3, 0x14(r1)
/* 8008FC28 0008CB88 40 80 00 0C */ bge lbl_8008FC34
/* 8008FC2C 0008CB8C 38 A1 00 10 */ addi r5, r1, 0x10
/* 8008FC30 0008CB90 48 00 00 08 */ b lbl_8008FC38
lbl_8008FC34:
/* 8008FC34 0008CB94 38 A1 00 14 */ addi r5, r1, 0x14
lbl_8008FC38:
/* 8008FC38 0008CB98 C0 05 00 00 */ lfs f0, 0(r5)
/* 8008FC3C 0008CB9C C0 24 00 40 */ lfs f1, 0x40(r4)
/* 8008FC40 0008CBA0 C0 44 01 70 */ lfs f2, 0x170(r4)
/* 8008FC44 0008CBA4 EC 87 00 2A */ fadds f4, f7, f0
/* 8008FC48 0008CBA8 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 8008FC4C 0008CBAC FC 02 08 40 */ fcmpo cr0, f2, f1
/* 8008FC50 0008CBB0 D0 41 00 1C */ stfs f2, 0x1c(r1)
/* 8008FC54 0008CBB4 40 80 00 0C */ bge lbl_8008FC60
/* 8008FC58 0008CBB8 38 A1 00 18 */ addi r5, r1, 0x18
/* 8008FC5C 0008CBBC 48 00 00 08 */ b lbl_8008FC64
lbl_8008FC60:
/* 8008FC60 0008CBC0 38 A1 00 1C */ addi r5, r1, 0x1c
lbl_8008FC64:
/* 8008FC64 0008CBC4 C0 05 00 00 */ lfs f0, 0(r5)
/* 8008FC68 0008CBC8 C0 44 00 60 */ lfs f2, 0x60(r4)
/* 8008FC6C 0008CBCC C0 C4 01 78 */ lfs f6, 0x178(r4)
/* 8008FC70 0008CBD0 EC 67 00 2A */ fadds f3, f7, f0
/* 8008FC74 0008CBD4 C0 24 00 50 */ lfs f1, 0x50(r4)
/* 8008FC78 0008CBD8 C0 04 00 40 */ lfs f0, 0x40(r4)
/* 8008FC7C 0008CBDC FC 02 30 40 */ fcmpo cr0, f2, f6
/* 8008FC80 0008CBE0 D0 21 00 54 */ stfs f1, 0x54(r1)
/* 8008FC84 0008CBE4 D0 01 00 50 */ stfs f0, 0x50(r1)
/* 8008FC88 0008CBE8 D0 41 00 58 */ stfs f2, 0x58(r1)
/* 8008FC8C 0008CBEC D0 41 00 20 */ stfs f2, 0x20(r1)
/* 8008FC90 0008CBF0 D0 C1 00 24 */ stfs f6, 0x24(r1)
/* 8008FC94 0008CBF4 40 80 00 0C */ bge lbl_8008FCA0
/* 8008FC98 0008CBF8 38 A1 00 20 */ addi r5, r1, 0x20
/* 8008FC9C 0008CBFC 48 00 00 08 */ b lbl_8008FCA4
lbl_8008FCA0:
/* 8008FCA0 0008CC00 38 A1 00 24 */ addi r5, r1, 0x24
lbl_8008FCA4:
/* 8008FCA4 0008CC04 C0 05 00 00 */ lfs f0, 0(r5)
/* 8008FCA8 0008CC08 C0 24 00 50 */ lfs f1, 0x50(r4)
/* 8008FCAC 0008CC0C C1 04 01 74 */ lfs f8, 0x174(r4)
/* 8008FCB0 0008CC10 EC 40 38 28 */ fsubs f2, f0, f7
/* 8008FCB4 0008CC14 C0 C4 00 60 */ lfs f6, 0x60(r4)
/* 8008FCB8 0008CC18 C0 04 00 40 */ lfs f0, 0x40(r4)
/* 8008FCBC 0008CC1C FC 01 40 40 */ fcmpo cr0, f1, f8
/* 8008FCC0 0008CC20 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 8008FCC4 0008CC24 D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 8008FCC8 0008CC28 D0 C1 00 64 */ stfs f6, 0x64(r1)
/* 8008FCCC 0008CC2C D0 21 00 28 */ stfs f1, 0x28(r1)
/* 8008FCD0 0008CC30 D1 01 00 2C */ stfs f8, 0x2c(r1)
/* 8008FCD4 0008CC34 40 80 00 0C */ bge lbl_8008FCE0
/* 8008FCD8 0008CC38 38 A1 00 28 */ addi r5, r1, 0x28
/* 8008FCDC 0008CC3C 48 00 00 08 */ b lbl_8008FCE4
lbl_8008FCE0:
/* 8008FCE0 0008CC40 38 A1 00 2C */ addi r5, r1, 0x2c
lbl_8008FCE4:
/* 8008FCE4 0008CC44 C0 05 00 00 */ lfs f0, 0(r5)
/* 8008FCE8 0008CC48 C0 C4 00 40 */ lfs f6, 0x40(r4)
/* 8008FCEC 0008CC4C C1 04 01 70 */ lfs f8, 0x170(r4)
/* 8008FCF0 0008CC50 EC 20 38 28 */ fsubs f1, f0, f7
/* 8008FCF4 0008CC54 D0 C1 00 30 */ stfs f6, 0x30(r1)
/* 8008FCF8 0008CC58 FC 06 40 40 */ fcmpo cr0, f6, f8
/* 8008FCFC 0008CC5C D1 01 00 34 */ stfs f8, 0x34(r1)
/* 8008FD00 0008CC60 40 80 00 0C */ bge lbl_8008FD0C
/* 8008FD04 0008CC64 38 81 00 30 */ addi r4, r1, 0x30
/* 8008FD08 0008CC68 48 00 00 08 */ b lbl_8008FD10
lbl_8008FD0C:
/* 8008FD0C 0008CC6C 38 81 00 34 */ addi r4, r1, 0x34
lbl_8008FD10:
/* 8008FD10 0008CC70 C0 04 00 00 */ lfs f0, 0(r4)
/* 8008FD14 0008CC74 38 00 00 01 */ li r0, 1
/* 8008FD18 0008CC78 28 03 00 00 */ cmplwi r3, 0
/* 8008FD1C 0008CC7C D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 8008FD20 0008CC80 EC 00 38 28 */ fsubs f0, f0, f7
/* 8008FD24 0008CC84 D0 41 00 70 */ stfs f2, 0x70(r1)
/* 8008FD28 0008CC88 D0 01 00 68 */ stfs f0, 0x68(r1)
/* 8008FD2C 0008CC8C D0 61 00 74 */ stfs f3, 0x74(r1)
/* 8008FD30 0008CC90 D0 81 00 78 */ stfs f4, 0x78(r1)
/* 8008FD34 0008CC94 D0 A1 00 7C */ stfs f5, 0x7c(r1)
/* 8008FD38 0008CC98 98 03 00 18 */ stb r0, 0x18(r3)
/* 8008FD3C 0008CC9C 41 82 00 1C */ beq lbl_8008FD58
/* 8008FD40 0008CCA0 D0 03 00 00 */ stfs f0, 0(r3)
/* 8008FD44 0008CCA4 D0 23 00 04 */ stfs f1, 4(r3)
/* 8008FD48 0008CCA8 D0 43 00 08 */ stfs f2, 8(r3)
/* 8008FD4C 0008CCAC D0 63 00 0C */ stfs f3, 0xc(r3)
/* 8008FD50 0008CCB0 D0 83 00 10 */ stfs f4, 0x10(r3)
/* 8008FD54 0008CCB4 D0 A3 00 14 */ stfs f5, 0x14(r3)
lbl_8008FD58:
/* 8008FD58 0008CCB8 38 21 00 80 */ addi r1, r1, 0x80
/* 8008FD5C 0008CCBC 4E 80 00 20 */ blr
.global AcceptScriptMsg__5CBombF20EScriptObjectMessage9TUniqueIdR13CStateManager
AcceptScriptMsg__5CBombF20EScriptObjectMessage9TUniqueIdR13CStateManager:
/* 8008FD60 0008CCC0 94 21 FF 10 */ stwu r1, -0xf0(r1)
/* 8008FD64 0008CCC4 7C 08 02 A6 */ mflr r0
/* 8008FD68 0008CCC8 90 01 00 F4 */ stw r0, 0xf4(r1)
/* 8008FD6C 0008CCCC BF 01 00 D0 */ stmw r24, 0xd0(r1)
/* 8008FD70 0008CCD0 7C 9D 23 78 */ mr r29, r4
/* 8008FD74 0008CCD4 2C 1D 00 22 */ cmpwi r29, 0x22
/* 8008FD78 0008CCD8 7C 7C 1B 78 */ mr r28, r3
/* 8008FD7C 0008CCDC 7C BE 2B 78 */ mr r30, r5
/* 8008FD80 0008CCE0 7C DF 33 78 */ mr r31, r6
/* 8008FD84 0008CCE4 41 82 01 C0 */ beq lbl_8008FF44
/* 8008FD88 0008CCE8 40 80 02 08 */ bge lbl_8008FF90
/* 8008FD8C 0008CCEC 2C 1D 00 21 */ cmpwi r29, 0x21
/* 8008FD90 0008CCF0 40 80 00 08 */ bge lbl_8008FD98
/* 8008FD94 0008CCF4 48 00 01 FC */ b lbl_8008FF90
lbl_8008FD98:
/* 8008FD98 0008CCF8 80 7C 01 84 */ lwz r3, 0x184(r28)
/* 8008FD9C 0008CCFC 81 83 00 00 */ lwz r12, 0(r3)
/* 8008FDA0 0008CD00 81 8C 00 64 */ lwz r12, 0x64(r12)
/* 8008FDA4 0008CD04 7D 89 03 A6 */ mtctr r12
/* 8008FDA8 0008CD08 4E 80 04 21 */ bctrl
/* 8008FDAC 0008CD0C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8008FDB0 0008CD10 41 82 01 0C */ beq lbl_8008FEBC
/* 8008FDB4 0008CD14 7F E4 FB 78 */ mr r4, r31
/* 8008FDB8 0008CD18 38 61 00 34 */ addi r3, r1, 0x34
/* 8008FDBC 0008CD1C 4B FB D3 21 */ bl AllocateUniqueId__13CStateManagerFv
/* 8008FDC0 0008CD20 A0 01 00 34 */ lhz r0, 0x34(r1)
/* 8008FDC4 0008CD24 3C 60 80 3D */ lis r3, lbl_803CD6A8@ha
/* 8008FDC8 0008CD28 38 83 D6 A8 */ addi r4, r3, lbl_803CD6A8@l
/* 8008FDCC 0008CD2C 3B 00 00 00 */ li r24, 0
/* 8008FDD0 0008CD30 B0 1C 01 88 */ sth r0, 0x188(r28)
/* 8008FDD4 0008CD34 3B 40 00 00 */ li r26, 0
/* 8008FDD8 0008CD38 38 60 01 48 */ li r3, 0x148
/* 8008FDDC 0008CD3C 38 A0 00 00 */ li r5, 0
/* 8008FDE0 0008CD40 83 3C 01 8C */ lwz r25, 0x18c(r28)
/* 8008FDE4 0008CD44 48 28 5A 89 */ bl __nw__FUlPCcPCc
/* 8008FDE8 0008CD48 7C 7B 1B 79 */ or. r27, r3, r3
/* 8008FDEC 0008CD4C 41 82 00 A4 */ beq lbl_8008FE90
/* 8008FDF0 0008CD50 A0 1C 00 08 */ lhz r0, 8(r28)
/* 8008FDF4 0008CD54 3C 60 80 3D */ lis r3, lbl_803CD6A8@ha
/* 8008FDF8 0008CD58 83 5C 01 84 */ lwz r26, 0x184(r28)
/* 8008FDFC 0008CD5C 38 83 D6 A8 */ addi r4, r3, lbl_803CD6A8@l
/* 8008FE00 0008CD60 B0 01 00 2C */ sth r0, 0x2c(r1)
/* 8008FE04 0008CD64 38 61 00 6C */ addi r3, r1, 0x6c
/* 8008FE08 0008CD68 38 84 00 07 */ addi r4, r4, 7
/* 8008FE0C 0008CD6C B0 01 00 30 */ sth r0, 0x30(r1)
/* 8008FE10 0008CD70 4B F7 4E A9 */ bl string_l__4rstlFPCc
/* 8008FE14 0008CD74 38 61 00 5C */ addi r3, r1, 0x5c
/* 8008FE18 0008CD78 38 81 00 6C */ addi r4, r1, 0x6c
/* 8008FE1C 0008CD7C 38 BC 00 10 */ addi r5, r28, 0x10
/* 8008FE20 0008CD80 3B 00 00 01 */ li r24, 1
/* 8008FE24 0008CD84 4B F7 4E 39 */ bl "__pl__4rstlFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 8008FE28 0008CD88 80 BC 00 04 */ lwz r5, 4(r28)
/* 8008FE2C 0008CD8C 7F 44 D3 78 */ mr r4, r26
/* 8008FE30 0008CD90 38 61 00 7C */ addi r3, r1, 0x7c
/* 8008FE34 0008CD94 3B 40 00 01 */ li r26, 1
/* 8008FE38 0008CD98 90 A1 00 40 */ stw r5, 0x40(r1)
/* 8008FE3C 0008CD9C A0 1C 01 88 */ lhz r0, 0x188(r28)
/* 8008FE40 0008CDA0 90 A1 00 3C */ stw r5, 0x3c(r1)
/* 8008FE44 0008CDA4 B0 01 00 28 */ sth r0, 0x28(r1)
/* 8008FE48 0008CDA8 81 84 00 00 */ lwz r12, 0(r4)
/* 8008FE4C 0008CDAC 81 8C 00 68 */ lwz r12, 0x68(r12)
/* 8008FE50 0008CDB0 7D 89 03 A6 */ mtctr r12
/* 8008FE54 0008CDB4 4E 80 04 21 */ bctrl
/* 8008FE58 0008CDB8 93 21 00 08 */ stw r25, 8(r1)
/* 8008FE5C 0008CDBC 38 00 00 01 */ li r0, 1
/* 8008FE60 0008CDC0 C0 22 8A E0 */ lfs f1, lbl_805AA800@sda21(r2)
/* 8008FE64 0008CDC4 7F 63 DB 78 */ mr r3, r27
/* 8008FE68 0008CDC8 90 01 00 0C */ stw r0, 0xc(r1)
/* 8008FE6C 0008CDCC 38 81 00 28 */ addi r4, r1, 0x28
/* 8008FE70 0008CDD0 38 A1 00 40 */ addi r5, r1, 0x40
/* 8008FE74 0008CDD4 38 E1 00 5C */ addi r7, r1, 0x5c
/* 8008FE78 0008CDD8 39 1C 00 34 */ addi r8, r28, 0x34
/* 8008FE7C 0008CDDC 39 21 00 30 */ addi r9, r1, 0x30
/* 8008FE80 0008CDE0 39 41 00 7C */ addi r10, r1, 0x7c
/* 8008FE84 0008CDE4 38 C0 00 00 */ li r6, 0
/* 8008FE88 0008CDE8 48 02 59 9D */ bl "__ct__10CGameLightF9TUniqueId7TAreaIdbRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif"
/* 8008FE8C 0008CDEC 7C 7B 1B 78 */ mr r27, r3
lbl_8008FE90:
/* 8008FE90 0008CDF0 7F E3 FB 78 */ mr r3, r31
/* 8008FE94 0008CDF4 7F 64 DB 78 */ mr r4, r27
/* 8008FE98 0008CDF8 4B FB CE 5D */ bl AddObject__13CStateManagerFP7CEntity
/* 8008FE9C 0008CDFC 7F 40 07 75 */ extsb. r0, r26
/* 8008FEA0 0008CE00 41 82 00 0C */ beq lbl_8008FEAC
/* 8008FEA4 0008CE04 38 61 00 5C */ addi r3, r1, 0x5c
/* 8008FEA8 0008CE08 48 2A DC 39 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_8008FEAC:
/* 8008FEAC 0008CE0C 7F 00 07 75 */ extsb. r0, r24
/* 8008FEB0 0008CE10 41 82 00 0C */ beq lbl_8008FEBC
/* 8008FEB4 0008CE14 38 61 00 6C */ addi r3, r1, 0x6c
/* 8008FEB8 0008CE18 48 2A DC 29 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
lbl_8008FEBC:
/* 8008FEBC 0008CE1C A0 1C 00 EC */ lhz r0, 0xec(r28)
/* 8008FEC0 0008CE20 7F E3 FB 78 */ mr r3, r31
/* 8008FEC4 0008CE24 80 BC 00 F0 */ lwz r5, 0xf0(r28)
/* 8008FEC8 0008CE28 38 81 00 24 */ addi r4, r1, 0x24
/* 8008FECC 0008CE2C B0 01 00 20 */ sth r0, 0x20(r1)
/* 8008FED0 0008CE30 B0 01 00 24 */ sth r0, 0x24(r1)
/* 8008FED4 0008CE34 4B FB 4E 35 */ bl AddWeaponId__13CStateManagerF9TUniqueId11EWeaponType
/* 8008FED8 0008CE38 C0 5C 00 60 */ lfs f2, 0x60(r28)
/* 8008FEDC 0008CE3C 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 8008FEE0 0008CE40 C0 3C 00 50 */ lfs f1, 0x50(r28)
/* 8008FEE4 0008CE44 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l
/* 8008FEE8 0008CE48 C0 1C 00 40 */ lfs f0, 0x40(r28)
/* 8008FEEC 0008CE4C 38 61 00 38 */ addi r3, r1, 0x38
/* 8008FEF0 0008CE50 A9 22 C5 FA */ lha r9, kMedPriority__11CSfxManager@sda21(r2)
/* 8008FEF4 0008CE54 38 A1 00 50 */ addi r5, r1, 0x50
/* 8008FEF8 0008CE58 D0 01 00 50 */ stfs f0, 0x50(r1)
/* 8008FEFC 0008CE5C 38 80 06 DC */ li r4, 0x6dc
/* 8008FF00 0008CE60 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2)
/* 8008FF04 0008CE64 38 E0 00 01 */ li r7, 1
/* 8008FF08 0008CE68 D0 21 00 54 */ stfs f1, 0x54(r1)
/* 8008FF0C 0008CE6C 39 00 00 00 */ li r8, 0
/* 8008FF10 0008CE70 D0 41 00 58 */ stfs f2, 0x58(r1)
/* 8008FF14 0008CE74 48 25 A3 9D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi
/* 8008FF18 0008CE78 C0 5C 00 60 */ lfs f2, 0x60(r28)
/* 8008FF1C 0008CE7C 7F E3 FB 78 */ mr r3, r31
/* 8008FF20 0008CE80 C0 3C 00 50 */ lfs f1, 0x50(r28)
/* 8008FF24 0008CE84 38 81 00 44 */ addi r4, r1, 0x44
/* 8008FF28 0008CE88 C0 1C 00 40 */ lfs f0, 0x40(r28)
/* 8008FF2C 0008CE8C 38 A0 00 01 */ li r5, 1
/* 8008FF30 0008CE90 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 8008FF34 0008CE94 D0 21 00 48 */ stfs f1, 0x48(r1)
/* 8008FF38 0008CE98 D0 41 00 4C */ stfs f2, 0x4c(r1)
/* 8008FF3C 0008CE9C 4B FB 88 49 */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType
/* 8008FF40 0008CEA0 48 00 00 50 */ b lbl_8008FF90
lbl_8008FF44:
/* 8008FF44 0008CEA4 A0 7C 01 88 */ lhz r3, 0x188(r28)
/* 8008FF48 0008CEA8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 8008FF4C 0008CEAC 7C 03 00 40 */ cmplw r3, r0
/* 8008FF50 0008CEB0 41 82 00 18 */ beq lbl_8008FF68
/* 8008FF54 0008CEB4 A0 1C 01 88 */ lhz r0, 0x188(r28)
/* 8008FF58 0008CEB8 7F E3 FB 78 */ mr r3, r31
/* 8008FF5C 0008CEBC 38 81 00 1C */ addi r4, r1, 0x1c
/* 8008FF60 0008CEC0 B0 01 00 1C */ sth r0, 0x1c(r1)
/* 8008FF64 0008CEC4 4B FB C3 09 */ bl FreeScriptObject__13CStateManagerF9TUniqueId
lbl_8008FF68:
/* 8008FF68 0008CEC8 88 1C 01 90 */ lbz r0, 0x190(r28)
/* 8008FF6C 0008CECC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 8008FF70 0008CED0 41 82 00 20 */ beq lbl_8008FF90
/* 8008FF74 0008CED4 A0 1C 00 EC */ lhz r0, 0xec(r28)
/* 8008FF78 0008CED8 7F E3 FB 78 */ mr r3, r31
/* 8008FF7C 0008CEDC 80 BC 00 F0 */ lwz r5, 0xf0(r28)
/* 8008FF80 0008CEE0 38 81 00 18 */ addi r4, r1, 0x18
/* 8008FF84 0008CEE4 B0 01 00 14 */ sth r0, 0x14(r1)
/* 8008FF88 0008CEE8 B0 01 00 18 */ sth r0, 0x18(r1)
/* 8008FF8C 0008CEEC 4B FB 4D 4D */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType
lbl_8008FF90:
/* 8008FF90 0008CEF0 A0 1E 00 00 */ lhz r0, 0(r30)
/* 8008FF94 0008CEF4 7F 83 E3 78 */ mr r3, r28
/* 8008FF98 0008CEF8 7F A4 EB 78 */ mr r4, r29
/* 8008FF9C 0008CEFC 7F E6 FB 78 */ mr r6, r31
/* 8008FFA0 0008CF00 B0 01 00 10 */ sth r0, 0x10(r1)
/* 8008FFA4 0008CF04 38 A1 00 10 */ addi r5, r1, 0x10
/* 8008FFA8 0008CF08 4B FC 36 6D */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager
/* 8008FFAC 0008CF0C BB 01 00 D0 */ lmw r24, 0xd0(r1)
/* 8008FFB0 0008CF10 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 8008FFB4 0008CF14 7C 08 03 A6 */ mtlr r0
/* 8008FFB8 0008CF18 38 21 00 F0 */ addi r1, r1, 0xf0
/* 8008FFBC 0008CF1C 4E 80 00 20 */ blr
.global Accept__5CBombFR8IVisitor
Accept__5CBombFR8IVisitor:
/* 8008FFC0 0008CF20 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8008FFC4 0008CF24 7C 08 02 A6 */ mflr r0
/* 8008FFC8 0008CF28 90 01 00 14 */ stw r0, 0x14(r1)
/* 8008FFCC 0008CF2C 7C 60 1B 78 */ mr r0, r3
/* 8008FFD0 0008CF30 7C 83 23 78 */ mr r3, r4
/* 8008FFD4 0008CF34 81 84 00 00 */ lwz r12, 0(r4)
/* 8008FFD8 0008CF38 7C 04 03 78 */ mr r4, r0
/* 8008FFDC 0008CF3C 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 8008FFE0 0008CF40 7D 89 03 A6 */ mtctr r12
/* 8008FFE4 0008CF44 4E 80 04 21 */ bctrl
/* 8008FFE8 0008CF48 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8008FFEC 0008CF4C 7C 08 03 A6 */ mtlr r0
/* 8008FFF0 0008CF50 38 21 00 10 */ addi r1, r1, 0x10
/* 8008FFF4 0008CF54 4E 80 00 20 */ blr
.global Think__5CBombFfR13CStateManager
Think__5CBombFfR13CStateManager:
/* 8008FFF8 0008CF58 94 21 FF 10 */ stwu r1, -0xf0(r1)
/* 8008FFFC 0008CF5C 7C 08 02 A6 */ mflr r0
/* 80090000 0008CF60 90 01 00 F4 */ stw r0, 0xf4(r1)
/* 80090004 0008CF64 DB E1 00 E0 */ stfd f31, 0xe0(r1)
/* 80090008 0008CF68 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0
/* 8009000C 0008CF6C 93 E1 00 DC */ stw r31, 0xdc(r1)
/* 80090010 0008CF70 93 C1 00 D8 */ stw r30, 0xd8(r1)
/* 80090014 0008CF74 93 A1 00 D4 */ stw r29, 0xd4(r1)
/* 80090018 0008CF78 93 81 00 D0 */ stw r28, 0xd0(r1)
/* 8009001C 0008CF7C FF E0 08 90 */ fmr f31, f1
/* 80090020 0008CF80 7C 7E 1B 78 */ mr r30, r3
/* 80090024 0008CF84 7C 9F 23 78 */ mr r31, r4
/* 80090028 0008CF88 48 07 20 B1 */ bl Think__7CWeaponFfR13CStateManager
/* 8009002C 0008CF8C 88 1E 01 90 */ lbz r0, 0x190(r30)
/* 80090030 0008CF90 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80090034 0008CF94 41 82 00 D8 */ beq lbl_8009010C
/* 80090038 0008CF98 C0 3E 01 7C */ lfs f1, 0x17c(r30)
/* 8009003C 0008CF9C C0 02 8A E0 */ lfs f0, lbl_805AA800@sda21(r2)
/* 80090040 0008CFA0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80090044 0008CFA4 4C 40 13 82 */ cror 2, 0, 2
/* 80090048 0008CFA8 40 82 00 6C */ bne lbl_800900B4
/* 8009004C 0008CFAC C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 80090050 0008CFB0 7F C3 F3 78 */ mr r3, r30
/* 80090054 0008CFB4 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 80090058 0008CFB8 7F E5 FB 78 */ mr r5, r31
/* 8009005C 0008CFBC C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 80090060 0008CFC0 38 81 00 64 */ addi r4, r1, 0x64
/* 80090064 0008CFC4 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 80090068 0008CFC8 D0 21 00 68 */ stfs f1, 0x68(r1)
/* 8009006C 0008CFCC D0 41 00 6C */ stfs f2, 0x6c(r1)
/* 80090070 0008CFD0 48 00 05 75 */ bl Explode__5CBombFRC9CVector3fR13CStateManager
/* 80090074 0008CFD4 A0 1E 01 88 */ lhz r0, 0x188(r30)
/* 80090078 0008CFD8 7F E3 FB 78 */ mr r3, r31
/* 8009007C 0008CFDC 38 81 00 10 */ addi r4, r1, 0x10
/* 80090080 0008CFE0 B0 01 00 10 */ sth r0, 0x10(r1)
/* 80090084 0008CFE4 4B FB C4 F1 */ bl ObjectById__13CStateManagerF9TUniqueId
/* 80090088 0008CFE8 7C 64 1B 78 */ mr r4, r3
/* 8009008C 0008CFEC 38 61 00 14 */ addi r3, r1, 0x14
/* 80090090 0008CFF0 48 01 D9 F5 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity"
/* 80090094 0008CFF4 80 63 00 04 */ lwz r3, 4(r3)
/* 80090098 0008CFF8 28 03 00 00 */ cmplwi r3, 0
/* 8009009C 0008CFFC 41 82 00 18 */ beq lbl_800900B4
/* 800900A0 0008D000 81 83 00 00 */ lwz r12, 0(r3)
/* 800900A4 0008D004 38 80 00 01 */ li r4, 1
/* 800900A8 0008D008 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 800900AC 0008D00C 7D 89 03 A6 */ mtctr r12
/* 800900B0 0008D010 4E 80 04 21 */ bctrl
lbl_800900B4:
/* 800900B4 0008D014 C0 3E 01 7C */ lfs f1, 0x17c(r30)
/* 800900B8 0008D018 C0 02 8A E4 */ lfs f0, lbl_805AA804@sda21(r2)
/* 800900BC 0008D01C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800900C0 0008D020 40 81 00 20 */ ble lbl_800900E0
/* 800900C4 0008D024 80 7E 01 80 */ lwz r3, 0x180(r30)
/* 800900C8 0008D028 FC 20 F8 90 */ fmr f1, f31
/* 800900CC 0008D02C 81 83 00 00 */ lwz r12, 0(r3)
/* 800900D0 0008D030 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 800900D4 0008D034 7D 89 03 A6 */ mtctr r12
/* 800900D8 0008D038 4E 80 04 21 */ bctrl
/* 800900DC 0008D03C 48 00 00 14 */ b lbl_800900F0
lbl_800900E0:
/* 800900E0 0008D040 FC 20 F8 90 */ fmr f1, f31
/* 800900E4 0008D044 7F C3 F3 78 */ mr r3, r30
/* 800900E8 0008D048 7F E4 FB 78 */ mr r4, r31
/* 800900EC 0008D04C 4B FF FA 05 */ bl sub_8008faf0
lbl_800900F0:
/* 800900F0 0008D050 88 1E 01 90 */ lbz r0, 0x190(r30)
/* 800900F4 0008D054 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 800900F8 0008D058 40 82 00 58 */ bne lbl_80090150
/* 800900FC 0008D05C C0 1E 01 7C */ lfs f0, 0x17c(r30)
/* 80090100 0008D060 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80090104 0008D064 D0 1E 01 7C */ stfs f0, 0x17c(r30)
/* 80090108 0008D068 48 00 00 48 */ b lbl_80090150
lbl_8009010C:
/* 8009010C 0008D06C FC 20 F8 90 */ fmr f1, f31
/* 80090110 0008D070 7F C3 F3 78 */ mr r3, r30
/* 80090114 0008D074 7F E4 FB 78 */ mr r4, r31
/* 80090118 0008D078 4B FF F9 D9 */ bl sub_8008faf0
/* 8009011C 0008D07C 80 7E 01 84 */ lwz r3, 0x184(r30)
/* 80090120 0008D080 81 83 00 00 */ lwz r12, 0(r3)
/* 80090124 0008D084 81 8C 00 58 */ lwz r12, 0x58(r12)
/* 80090128 0008D088 7D 89 03 A6 */ mtctr r12
/* 8009012C 0008D08C 4E 80 04 21 */ bctrl
/* 80090130 0008D090 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80090134 0008D094 41 82 00 1C */ beq lbl_80090150
/* 80090138 0008D098 A0 1E 00 08 */ lhz r0, 8(r30)
/* 8009013C 0008D09C 7F E3 FB 78 */ mr r3, r31
/* 80090140 0008D0A0 38 81 00 0C */ addi r4, r1, 0xc
/* 80090144 0008D0A4 B0 01 00 08 */ sth r0, 8(r1)
/* 80090148 0008D0A8 B0 01 00 0C */ sth r0, 0xc(r1)
/* 8009014C 0008D0AC 4B FB C1 21 */ bl FreeScriptObject__13CStateManagerF9TUniqueId
lbl_80090150:
/* 80090150 0008D0B0 88 1E 01 90 */ lbz r0, 0x190(r30)
/* 80090154 0008D0B4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80090158 0008D0B8 41 82 02 70 */ beq lbl_800903C8
/* 8009015C 0008D0BC C0 BE 01 64 */ lfs f5, 0x164(r30)
/* 80090160 0008D0C0 C0 9E 01 68 */ lfs f4, 0x168(r30)
/* 80090164 0008D0C4 EC 45 01 72 */ fmuls f2, f5, f5
/* 80090168 0008D0C8 C0 DE 01 6C */ lfs f6, 0x16c(r30)
/* 8009016C 0008D0CC EC 24 01 32 */ fmuls f1, f4, f4
/* 80090170 0008D0D0 C0 02 8A E0 */ lfs f0, lbl_805AA800@sda21(r2)
/* 80090174 0008D0D4 EC 66 01 B2 */ fmuls f3, f6, f6
/* 80090178 0008D0D8 EC 22 08 2A */ fadds f1, f2, f1
/* 8009017C 0008D0DC EC 23 08 2A */ fadds f1, f3, f1
/* 80090180 0008D0E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80090184 0008D0E4 40 81 00 34 */ ble lbl_800901B8
/* 80090188 0008D0E8 EC 5F 01 72 */ fmuls f2, f31, f5
/* 8009018C 0008D0EC C0 7E 01 58 */ lfs f3, 0x158(r30)
/* 80090190 0008D0F0 EC 3F 01 32 */ fmuls f1, f31, f4
/* 80090194 0008D0F4 EC 1F 01 B2 */ fmuls f0, f31, f6
/* 80090198 0008D0F8 EC 43 10 2A */ fadds f2, f3, f2
/* 8009019C 0008D0FC D0 5E 01 58 */ stfs f2, 0x158(r30)
/* 800901A0 0008D100 C0 5E 01 5C */ lfs f2, 0x15c(r30)
/* 800901A4 0008D104 EC 22 08 2A */ fadds f1, f2, f1
/* 800901A8 0008D108 D0 3E 01 5C */ stfs f1, 0x15c(r30)
/* 800901AC 0008D10C C0 3E 01 60 */ lfs f1, 0x160(r30)
/* 800901B0 0008D110 EC 01 00 2A */ fadds f0, f1, f0
/* 800901B4 0008D114 D0 1E 01 60 */ stfs f0, 0x160(r30)
lbl_800901B8:
/* 800901B8 0008D118 C0 3E 01 58 */ lfs f1, 0x158(r30)
/* 800901BC 0008D11C C0 1E 01 5C */ lfs f0, 0x15c(r30)
/* 800901C0 0008D120 EC 41 00 72 */ fmuls f2, f1, f1
/* 800901C4 0008D124 C0 7E 01 60 */ lfs f3, 0x160(r30)
/* 800901C8 0008D128 EC 20 00 32 */ fmuls f1, f0, f0
/* 800901CC 0008D12C C0 02 8A E0 */ lfs f0, lbl_805AA800@sda21(r2)
/* 800901D0 0008D130 EC 63 00 F2 */ fmuls f3, f3, f3
/* 800901D4 0008D134 EC 22 08 2A */ fadds f1, f2, f1
/* 800901D8 0008D138 EC 23 08 2A */ fadds f1, f3, f1
/* 800901DC 0008D13C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800901E0 0008D140 40 81 01 E8 */ ble lbl_800903C8
/* 800901E4 0008D144 C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 800901E8 0008D148 7F C3 F3 78 */ mr r3, r30
/* 800901EC 0008D14C C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 800901F0 0008D150 38 81 00 1C */ addi r4, r1, 0x1c
/* 800901F4 0008D154 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 800901F8 0008D158 D0 1E 01 70 */ stfs f0, 0x170(r30)
/* 800901FC 0008D15C D0 3E 01 74 */ stfs f1, 0x174(r30)
/* 80090200 0008D160 D0 5E 01 78 */ stfs f2, 0x178(r30)
/* 80090204 0008D164 C0 5E 01 5C */ lfs f2, 0x15c(r30)
/* 80090208 0008D168 C0 3E 01 60 */ lfs f1, 0x160(r30)
/* 8009020C 0008D16C C0 1E 01 58 */ lfs f0, 0x158(r30)
/* 80090210 0008D170 EC 9F 00 B2 */ fmuls f4, f31, f2
/* 80090214 0008D174 C0 BE 00 50 */ lfs f5, 0x50(r30)
/* 80090218 0008D178 EC 5F 00 72 */ fmuls f2, f31, f1
/* 8009021C 0008D17C C0 7E 00 60 */ lfs f3, 0x60(r30)
/* 80090220 0008D180 EC 1F 00 32 */ fmuls f0, f31, f0
/* 80090224 0008D184 C0 3E 00 40 */ lfs f1, 0x40(r30)
/* 80090228 0008D188 EC 85 20 2A */ fadds f4, f5, f4
/* 8009022C 0008D18C EC 43 10 2A */ fadds f2, f3, f2
/* 80090230 0008D190 EC 01 00 2A */ fadds f0, f1, f0
/* 80090234 0008D194 D0 81 00 20 */ stfs f4, 0x20(r1)
/* 80090238 0008D198 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 8009023C 0008D19C D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80090240 0008D1A0 4B FC 2C 4D */ bl SetTranslation__6CActorFRC9CVector3f
/* 80090244 0008D1A4 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 80090248 0008D1A8 38 61 00 70 */ addi r3, r1, 0x70
/* 8009024C 0008D1AC C0 1E 01 74 */ lfs f0, 0x174(r30)
/* 80090250 0008D1B0 C0 7E 00 60 */ lfs f3, 0x60(r30)
/* 80090254 0008D1B4 C0 5E 01 78 */ lfs f2, 0x178(r30)
/* 80090258 0008D1B8 EC 81 00 28 */ fsubs f4, f1, f0
/* 8009025C 0008D1BC C0 3E 00 40 */ lfs f1, 0x40(r30)
/* 80090260 0008D1C0 C0 1E 01 70 */ lfs f0, 0x170(r30)
/* 80090264 0008D1C4 EC 43 10 28 */ fsubs f2, f3, f2
/* 80090268 0008D1C8 EC 01 00 28 */ fsubs f0, f1, f0
/* 8009026C 0008D1CC D0 81 00 74 */ stfs f4, 0x74(r1)
/* 80090270 0008D1D0 D0 41 00 78 */ stfs f2, 0x78(r1)
/* 80090274 0008D1D4 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80090278 0008D1D8 48 28 46 41 */ bl Magnitude__9CVector3fCFv
/* 8009027C 0008D1DC FF E0 08 90 */ fmr f31, f1
/* 80090280 0008D1E0 C0 02 8A E0 */ lfs f0, lbl_805AA800@sda21(r2)
/* 80090284 0008D1E4 FC 00 F8 00 */ fcmpu cr0, f0, f31
/* 80090288 0008D1E8 40 82 00 30 */ bne lbl_800902B8
/* 8009028C 0008D1EC C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 80090290 0008D1F0 7F C3 F3 78 */ mr r3, r30
/* 80090294 0008D1F4 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 80090298 0008D1F8 7F E5 FB 78 */ mr r5, r31
/* 8009029C 0008D1FC C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 800902A0 0008D200 38 81 00 58 */ addi r4, r1, 0x58
/* 800902A4 0008D204 D0 01 00 58 */ stfs f0, 0x58(r1)
/* 800902A8 0008D208 D0 21 00 5C */ stfs f1, 0x5c(r1)
/* 800902AC 0008D20C D0 41 00 60 */ stfs f2, 0x60(r1)
/* 800902B0 0008D210 48 00 03 35 */ bl Explode__5CBombFRC9CVector3fR13CStateManager
/* 800902B4 0008D214 48 00 01 14 */ b lbl_800903C8
lbl_800902B8:
/* 800902B8 0008D218 88 0D A2 A0 */ lbz r0, lbl_805A8E60@sda21(r13)
/* 800902BC 0008D21C 7C 00 07 75 */ extsb. r0, r0
/* 800902C0 0008D220 40 82 00 88 */ bne lbl_80090348
/* 800902C4 0008D224 80 AD 85 84 */ lwz r5, lbl_805A7144@sda21(r13)
/* 800902C8 0008D228 38 60 00 00 */ li r3, 0
/* 800902CC 0008D22C 38 80 00 01 */ li r4, 1
/* 800902D0 0008D230 48 2F 9C 25 */ bl __shl2i
/* 800902D4 0008D234 80 AD 85 88 */ lwz r5, lbl_805A7148@sda21(r13)
/* 800902D8 0008D238 7C 9C 23 78 */ mr r28, r4
/* 800902DC 0008D23C 7C 7D 1B 78 */ mr r29, r3
/* 800902E0 0008D240 38 60 00 00 */ li r3, 0
/* 800902E4 0008D244 38 80 00 01 */ li r4, 1
/* 800902E8 0008D248 48 2F 9C 0D */ bl __shl2i
/* 800902EC 0008D24C 80 AD 85 8C */ lwz r5, lbl_805A714C@sda21(r13)
/* 800902F0 0008D250 7F 9C 23 78 */ or r28, r28, r4
/* 800902F4 0008D254 7F BD 1B 78 */ or r29, r29, r3
/* 800902F8 0008D258 38 60 00 00 */ li r3, 0
/* 800902FC 0008D25C 38 80 00 01 */ li r4, 1
/* 80090300 0008D260 48 2F 9B F5 */ bl __shl2i
/* 80090304 0008D264 80 AD 85 80 */ lwz r5, lbl_805A7140@sda21(r13)
/* 80090308 0008D268 7F 9C 23 78 */ or r28, r28, r4
/* 8009030C 0008D26C 7F BD 1B 78 */ or r29, r29, r3
/* 80090310 0008D270 38 60 00 00 */ li r3, 0
/* 80090314 0008D274 38 80 00 01 */ li r4, 1
/* 80090318 0008D278 48 2F 9B DD */ bl __shl2i
/* 8009031C 0008D27C 3C A0 80 47 */ lis r5, lbl_8046C420@ha
/* 80090320 0008D280 38 C0 00 03 */ li r6, 3
/* 80090324 0008D284 38 A5 C4 20 */ addi r5, r5, lbl_8046C420@l
/* 80090328 0008D288 38 00 00 01 */ li r0, 1
/* 8009032C 0008D28C 90 C1 00 90 */ stw r6, 0x90(r1)
/* 80090330 0008D290 90 85 00 04 */ stw r4, 4(r5)
/* 80090334 0008D294 90 65 00 00 */ stw r3, 0(r5)
/* 80090338 0008D298 93 85 00 0C */ stw r28, 0xc(r5)
/* 8009033C 0008D29C 93 A5 00 08 */ stw r29, 8(r5)
/* 80090340 0008D2A0 90 C5 00 10 */ stw r6, 0x10(r5)
/* 80090344 0008D2A4 98 0D A2 A0 */ stb r0, lbl_805A8E60@sda21(r13)
lbl_80090348:
/* 80090348 0008D2A8 C0 02 8A E8 */ lfs f0, lbl_805AA808@sda21(r2)
/* 8009034C 0008D2AC 3C 60 80 47 */ lis r3, lbl_8046C420@ha
/* 80090350 0008D2B0 38 E3 C4 20 */ addi r7, r3, lbl_8046C420@l
/* 80090354 0008D2B4 C0 41 00 74 */ lfs f2, 0x74(r1)
/* 80090358 0008D2B8 EC 80 F8 24 */ fdivs f4, f0, f31
/* 8009035C 0008D2BC C0 01 00 70 */ lfs f0, 0x70(r1)
/* 80090360 0008D2C0 C0 21 00 78 */ lfs f1, 0x78(r1)
/* 80090364 0008D2C4 7F E4 FB 78 */ mr r4, r31
/* 80090368 0008D2C8 38 61 00 98 */ addi r3, r1, 0x98
/* 8009036C 0008D2CC 38 BE 01 70 */ addi r5, r30, 0x170
/* 80090370 0008D2D0 EC 64 00 B2 */ fmuls f3, f4, f2
/* 80090374 0008D2D4 38 C1 00 4C */ addi r6, r1, 0x4c
/* 80090378 0008D2D8 EC 44 00 72 */ fmuls f2, f4, f1
/* 8009037C 0008D2DC EC 04 00 32 */ fmuls f0, f4, f0
/* 80090380 0008D2E0 FC 20 F8 90 */ fmr f1, f31
/* 80090384 0008D2E4 D0 61 00 50 */ stfs f3, 0x50(r1)
/* 80090388 0008D2E8 D0 01 00 4C */ stfs f0, 0x4c(r1)
/* 8009038C 0008D2EC D0 41 00 54 */ stfs f2, 0x54(r1)
/* 80090390 0008D2F0 4B FB CC 09 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter
/* 80090394 0008D2F4 88 01 00 B8 */ lbz r0, 0xb8(r1)
/* 80090398 0008D2F8 28 00 00 00 */ cmplwi r0, 0
/* 8009039C 0008D2FC 41 82 00 2C */ beq lbl_800903C8
/* 800903A0 0008D300 C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 800903A4 0008D304 7F C3 F3 78 */ mr r3, r30
/* 800903A8 0008D308 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 800903AC 0008D30C 7F E5 FB 78 */ mr r5, r31
/* 800903B0 0008D310 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 800903B4 0008D314 38 81 00 40 */ addi r4, r1, 0x40
/* 800903B8 0008D318 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 800903BC 0008D31C D0 21 00 44 */ stfs f1, 0x44(r1)
/* 800903C0 0008D320 D0 41 00 48 */ stfs f2, 0x48(r1)
/* 800903C4 0008D324 48 00 02 21 */ bl Explode__5CBombFRC9CVector3fR13CStateManager
lbl_800903C8:
/* 800903C8 0008D328 C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 800903CC 0008D32C 38 81 00 34 */ addi r4, r1, 0x34
/* 800903D0 0008D330 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 800903D4 0008D334 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 800903D8 0008D338 D0 01 00 34 */ stfs f0, 0x34(r1)
/* 800903DC 0008D33C D0 21 00 38 */ stfs f1, 0x38(r1)
/* 800903E0 0008D340 D0 41 00 3C */ stfs f2, 0x3c(r1)
/* 800903E4 0008D344 80 7E 01 80 */ lwz r3, 0x180(r30)
/* 800903E8 0008D348 81 83 00 00 */ lwz r12, 0(r3)
/* 800903EC 0008D34C 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 800903F0 0008D350 7D 89 03 A6 */ mtctr r12
/* 800903F4 0008D354 4E 80 04 21 */ bctrl
/* 800903F8 0008D358 C0 5E 00 60 */ lfs f2, 0x60(r30)
/* 800903FC 0008D35C 38 81 00 28 */ addi r4, r1, 0x28
/* 80090400 0008D360 C0 3E 00 50 */ lfs f1, 0x50(r30)
/* 80090404 0008D364 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 80090408 0008D368 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 8009040C 0008D36C D0 21 00 2C */ stfs f1, 0x2c(r1)
/* 80090410 0008D370 D0 41 00 30 */ stfs f2, 0x30(r1)
/* 80090414 0008D374 80 7E 01 84 */ lwz r3, 0x184(r30)
/* 80090418 0008D378 81 83 00 00 */ lwz r12, 0(r3)
/* 8009041C 0008D37C 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 80090420 0008D380 7D 89 03 A6 */ mtctr r12
/* 80090424 0008D384 4E 80 04 21 */ bctrl
/* 80090428 0008D388 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0
/* 8009042C 0008D38C 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 80090430 0008D390 CB E1 00 E0 */ lfd f31, 0xe0(r1)
/* 80090434 0008D394 83 E1 00 DC */ lwz r31, 0xdc(r1)
/* 80090438 0008D398 83 C1 00 D8 */ lwz r30, 0xd8(r1)
/* 8009043C 0008D39C 83 A1 00 D4 */ lwz r29, 0xd4(r1)
/* 80090440 0008D3A0 83 81 00 D0 */ lwz r28, 0xd0(r1)
/* 80090444 0008D3A4 7C 08 03 A6 */ mtlr r0
/* 80090448 0008D3A8 38 21 00 F0 */ addi r1, r1, 0xf0
/* 8009044C 0008D3AC 4E 80 00 20 */ blr
.global nullsub_99
nullsub_99:
/* 80090450 0008D3B0 4E 80 00 20 */ blr
.global AddToRenderer__5CBombCFRC14CFrustumPlanesRC13CStateManager
AddToRenderer__5CBombCFRC14CFrustumPlanesRC13CStateManager:
/* 80090454 0008D3B4 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 80090458 0008D3B8 7C 08 02 A6 */ mflr r0
/* 8009045C 0008D3BC 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 80090460 0008D3C0 DB E1 00 90 */ stfd f31, 0x90(r1)
/* 80090464 0008D3C4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0
/* 80090468 0008D3C8 DB C1 00 80 */ stfd f30, 0x80(r1)
/* 8009046C 0008D3CC F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0
/* 80090470 0008D3D0 DB A1 00 70 */ stfd f29, 0x70(r1)
/* 80090474 0008D3D4 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0
/* 80090478 0008D3D8 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8009047C 0008D3DC 80 85 08 4C */ lwz r4, 0x84c(r5)
/* 80090480 0008D3E0 7C 7F 1B 78 */ mr r31, r3
/* 80090484 0008D3E4 C3 A3 00 60 */ lfs f29, 0x60(r3)
/* 80090488 0008D3E8 C3 C3 00 50 */ lfs f30, 0x50(r3)
/* 8009048C 0008D3EC C3 E3 00 40 */ lfs f31, 0x40(r3)
/* 80090490 0008D3F0 80 64 07 68 */ lwz r3, 0x768(r4)
/* 80090494 0008D3F4 48 06 89 71 */ bl GetBallRadius__10CMorphBallCFv
/* 80090498 0008D3F8 C0 02 8A EC */ lfs f0, lbl_805AA80C@sda21(r2)
/* 8009049C 0008D3FC 38 61 00 44 */ addi r3, r1, 0x44
/* 800904A0 0008D400 38 81 00 20 */ addi r4, r1, 0x20
/* 800904A4 0008D404 38 A1 00 14 */ addi r5, r1, 0x14
/* 800904A8 0008D408 EC A0 00 72 */ fmuls f5, f0, f1
/* 800904AC 0008D40C EC 1F 28 2A */ fadds f0, f31, f5
/* 800904B0 0008D410 EC 9E 28 2A */ fadds f4, f30, f5
/* 800904B4 0008D414 EC 7D 28 2A */ fadds f3, f29, f5
/* 800904B8 0008D418 EC 5F 28 28 */ fsubs f2, f31, f5
/* 800904BC 0008D41C D0 01 00 14 */ stfs f0, 0x14(r1)
/* 800904C0 0008D420 EC 3E 28 28 */ fsubs f1, f30, f5
/* 800904C4 0008D424 EC 1D 28 28 */ fsubs f0, f29, f5
/* 800904C8 0008D428 D0 81 00 18 */ stfs f4, 0x18(r1)
/* 800904CC 0008D42C D0 61 00 1C */ stfs f3, 0x1c(r1)
/* 800904D0 0008D430 D0 41 00 20 */ stfs f2, 0x20(r1)
/* 800904D4 0008D434 D0 21 00 24 */ stfs f1, 0x24(r1)
/* 800904D8 0008D438 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 800904DC 0008D43C 48 2A 80 2D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f
/* 800904E0 0008D440 3C 80 80 5A */ lis r4, mViewMatrix__9CGraphics@ha
/* 800904E4 0008D444 38 61 00 08 */ addi r3, r1, 8
/* 800904E8 0008D448 38 C4 61 D4 */ addi r6, r4, mViewMatrix__9CGraphics@l
/* 800904EC 0008D44C 38 81 00 44 */ addi r4, r1, 0x44
/* 800904F0 0008D450 C0 46 00 04 */ lfs f2, 4(r6)
/* 800904F4 0008D454 38 A1 00 38 */ addi r5, r1, 0x38
/* 800904F8 0008D458 C0 26 00 14 */ lfs f1, 0x14(r6)
/* 800904FC 0008D45C C0 06 00 24 */ lfs f0, 0x24(r6)
/* 80090500 0008D460 D0 41 00 38 */ stfs f2, 0x38(r1)
/* 80090504 0008D464 D0 21 00 3C */ stfs f1, 0x3c(r1)
/* 80090508 0008D468 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 8009050C 0008D46C 48 2A 6C D1 */ bl ClosestPointAlongVector__6CAABoxCFRC9CVector3f
/* 80090510 0008D470 88 1F 01 90 */ lbz r0, 0x190(r31)
/* 80090514 0008D474 C0 41 00 08 */ lfs f2, 8(r1)
/* 80090518 0008D478 C0 21 00 0C */ lfs f1, 0xc(r1)
/* 8009051C 0008D47C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80090520 0008D480 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80090524 0008D484 D0 41 00 2C */ stfs f2, 0x2c(r1)
/* 80090528 0008D488 D0 21 00 30 */ stfs f1, 0x30(r1)
/* 8009052C 0008D48C D0 01 00 34 */ stfs f0, 0x34(r1)
/* 80090530 0008D490 41 82 00 5C */ beq lbl_8009058C
/* 80090534 0008D494 C0 3F 01 7C */ lfs f1, 0x17c(r31)
/* 80090538 0008D498 C0 02 8A E4 */ lfs f0, lbl_805AA804@sda21(r2)
/* 8009053C 0008D49C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80090540 0008D4A0 40 81 00 28 */ ble lbl_80090568
/* 80090544 0008D4A4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80090548 0008D4A8 38 A1 00 2C */ addi r5, r1, 0x2c
/* 8009054C 0008D4AC 38 C1 00 44 */ addi r6, r1, 0x44
/* 80090550 0008D4B0 80 9F 01 80 */ lwz r4, 0x180(r31)
/* 80090554 0008D4B4 81 83 00 00 */ lwz r12, 0(r3)
/* 80090558 0008D4B8 81 8C 00 38 */ lwz r12, 0x38(r12)
/* 8009055C 0008D4BC 7D 89 03 A6 */ mtctr r12
/* 80090560 0008D4C0 4E 80 04 21 */ bctrl
/* 80090564 0008D4C4 48 00 00 48 */ b lbl_800905AC
lbl_80090568:
/* 80090568 0008D4C8 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 8009056C 0008D4CC 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80090570 0008D4D0 38 C1 00 44 */ addi r6, r1, 0x44
/* 80090574 0008D4D4 80 9F 01 84 */ lwz r4, 0x184(r31)
/* 80090578 0008D4D8 81 83 00 00 */ lwz r12, 0(r3)
/* 8009057C 0008D4DC 81 8C 00 38 */ lwz r12, 0x38(r12)
/* 80090580 0008D4E0 7D 89 03 A6 */ mtctr r12
/* 80090584 0008D4E4 4E 80 04 21 */ bctrl
/* 80090588 0008D4E8 48 00 00 24 */ b lbl_800905AC
lbl_8009058C:
/* 8009058C 0008D4EC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13)
/* 80090590 0008D4F0 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80090594 0008D4F4 38 C1 00 44 */ addi r6, r1, 0x44
/* 80090598 0008D4F8 80 9F 01 84 */ lwz r4, 0x184(r31)
/* 8009059C 0008D4FC 81 83 00 00 */ lwz r12, 0(r3)
/* 800905A0 0008D500 81 8C 00 38 */ lwz r12, 0x38(r12)
/* 800905A4 0008D504 7D 89 03 A6 */ mtctr r12
/* 800905A8 0008D508 4E 80 04 21 */ bctrl
lbl_800905AC:
/* 800905AC 0008D50C E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0
/* 800905B0 0008D510 CB E1 00 90 */ lfd f31, 0x90(r1)
/* 800905B4 0008D514 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0
/* 800905B8 0008D518 CB C1 00 80 */ lfd f30, 0x80(r1)
/* 800905BC 0008D51C E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0
/* 800905C0 0008D520 CB A1 00 70 */ lfd f29, 0x70(r1)
/* 800905C4 0008D524 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 800905C8 0008D528 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 800905CC 0008D52C 7C 08 03 A6 */ mtlr r0
/* 800905D0 0008D530 38 21 00 A0 */ addi r1, r1, 0xa0
/* 800905D4 0008D534 4E 80 00 20 */ blr
.global Touch__5CBombFR6CActorR13CStateManager
Touch__5CBombFR6CActorR13CStateManager:
/* 800905D8 0008D538 88 03 01 90 */ lbz r0, 0x190(r3)
/* 800905DC 0008D53C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 800905E0 0008D540 4E 80 00 20 */ blr
.global Explode__5CBombFRC9CVector3fR13CStateManager
Explode__5CBombFRC9CVector3fR13CStateManager:
/* 800905E4 0008D544 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 800905E8 0008D548 7C 08 02 A6 */ mflr r0
/* 800905EC 0008D54C 90 01 00 54 */ stw r0, 0x54(r1)
/* 800905F0 0008D550 39 01 00 28 */ addi r8, r1, 0x28
/* 800905F4 0008D554 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 800905F8 0008D558 7C BF 2B 78 */ mr r31, r5
/* 800905FC 0008D55C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 80090600 0008D560 7C 9E 23 78 */ mr r30, r4
/* 80090604 0008D564 7F C6 F3 78 */ mr r6, r30
/* 80090608 0008D568 93 A1 00 44 */ stw r29, 0x44(r1)
/* 8009060C 0008D56C 7C 7D 1B 78 */ mr r29, r3
/* 80090610 0008D570 7F A5 EB 78 */ mr r5, r29
/* 80090614 0008D574 80 03 00 F8 */ lwz r0, 0xf8(r3)
/* 80090618 0008D578 38 FD 01 2C */ addi r7, r29, 0x12c
/* 8009061C 0008D57C 80 83 00 FC */ lwz r4, 0xfc(r3)
/* 80090620 0008D580 7F E3 FB 78 */ mr r3, r31
/* 80090624 0008D584 90 81 00 2C */ stw r4, 0x2c(r1)
/* 80090628 0008D588 38 81 00 14 */ addi r4, r1, 0x14
/* 8009062C 0008D58C 90 01 00 28 */ stw r0, 0x28(r1)
/* 80090630 0008D590 80 1D 01 00 */ lwz r0, 0x100(r29)
/* 80090634 0008D594 81 3D 01 04 */ lwz r9, 0x104(r29)
/* 80090638 0008D598 91 21 00 34 */ stw r9, 0x34(r1)
/* 8009063C 0008D59C 90 01 00 30 */ stw r0, 0x30(r1)
/* 80090640 0008D5A0 80 1D 01 08 */ lwz r0, 0x108(r29)
/* 80090644 0008D5A4 90 01 00 38 */ stw r0, 0x38(r1)
/* 80090648 0008D5A8 A0 1D 00 EC */ lhz r0, 0xec(r29)
/* 8009064C 0008D5AC B0 01 00 10 */ sth r0, 0x10(r1)
/* 80090650 0008D5B0 B0 01 00 14 */ sth r0, 0x14(r1)
/* 80090654 0008D5B4 4B FB 86 59 */ bl ApplyDamageToWorld__13CStateManagerF9TUniqueIdRC6CActorRC9CVector3fRC11CDamageInfoRC15CMaterialFilter
/* 80090658 0008D5B8 C0 5D 00 60 */ lfs f2, 0x60(r29)
/* 8009065C 0008D5BC 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 80090660 0008D5C0 C0 3D 00 50 */ lfs f1, 0x50(r29)
/* 80090664 0008D5C4 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l
/* 80090668 0008D5C8 C0 1D 00 40 */ lfs f0, 0x40(r29)
/* 8009066C 0008D5CC 38 61 00 18 */ addi r3, r1, 0x18
/* 80090670 0008D5D0 A9 22 C5 FA */ lha r9, kMedPriority__11CSfxManager@sda21(r2)
/* 80090674 0008D5D4 38 A1 00 1C */ addi r5, r1, 0x1c
/* 80090678 0008D5D8 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 8009067C 0008D5DC 38 80 06 DE */ li r4, 0x6de
/* 80090680 0008D5E0 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2)
/* 80090684 0008D5E4 38 E0 00 01 */ li r7, 1
/* 80090688 0008D5E8 D0 21 00 20 */ stfs f1, 0x20(r1)
/* 8009068C 0008D5EC 39 00 00 00 */ li r8, 0
/* 80090690 0008D5F0 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 80090694 0008D5F4 48 25 9C 1D */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi
/* 80090698 0008D5F8 7F E3 FB 78 */ mr r3, r31
/* 8009069C 0008D5FC 7F C4 F3 78 */ mr r4, r30
/* 800906A0 0008D600 38 A0 00 01 */ li r5, 1
/* 800906A4 0008D604 4B FB 80 E1 */ bl InformListeners__13CStateManagerFRC9CVector3f16EListenNoiseType
/* 800906A8 0008D608 A0 1D 00 EC */ lhz r0, 0xec(r29)
/* 800906AC 0008D60C 7F E3 FB 78 */ mr r3, r31
/* 800906B0 0008D610 80 BD 00 F0 */ lwz r5, 0xf0(r29)
/* 800906B4 0008D614 38 81 00 0C */ addi r4, r1, 0xc
/* 800906B8 0008D618 B0 01 00 08 */ sth r0, 8(r1)
/* 800906BC 0008D61C B0 01 00 0C */ sth r0, 0xc(r1)
/* 800906C0 0008D620 4B FB 46 19 */ bl RemoveWeaponId__13CStateManagerF9TUniqueId11EWeaponType
/* 800906C4 0008D624 88 1D 01 90 */ lbz r0, 0x190(r29)
/* 800906C8 0008D628 38 60 00 00 */ li r3, 0
/* 800906CC 0008D62C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 800906D0 0008D630 98 1D 01 90 */ stb r0, 0x190(r29)
/* 800906D4 0008D634 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 800906D8 0008D638 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 800906DC 0008D63C 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 800906E0 0008D640 80 01 00 54 */ lwz r0, 0x54(r1)
/* 800906E4 0008D644 7C 08 03 A6 */ mtlr r0
/* 800906E8 0008D648 38 21 00 50 */ addi r1, r1, 0x50
/* 800906EC 0008D64C 4E 80 00 20 */ blr
.global __dt__5CBombFv
__dt__5CBombFv:
/* 800906F0 0008D650 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800906F4 0008D654 7C 08 02 A6 */ mflr r0
/* 800906F8 0008D658 90 01 00 14 */ stw r0, 0x14(r1)
/* 800906FC 0008D65C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80090700 0008D660 7C 9F 23 78 */ mr r31, r4
/* 80090704 0008D664 93 C1 00 08 */ stw r30, 8(r1)
/* 80090708 0008D668 7C 7E 1B 79 */ or. r30, r3, r3
/* 8009070C 0008D66C 41 82 00 7C */ beq lbl_80090788
/* 80090710 0008D670 3C 60 80 3E */ lis r3, lbl_803DACC0@ha
/* 80090714 0008D674 34 1E 01 84 */ addic. r0, r30, 0x184
/* 80090718 0008D678 38 03 AC C0 */ addi r0, r3, lbl_803DACC0@l
/* 8009071C 0008D67C 90 1E 00 00 */ stw r0, 0(r30)
/* 80090720 0008D680 41 82 00 24 */ beq lbl_80090744
/* 80090724 0008D684 80 7E 01 84 */ lwz r3, 0x184(r30)
/* 80090728 0008D688 28 03 00 00 */ cmplwi r3, 0
/* 8009072C 0008D68C 41 82 00 18 */ beq lbl_80090744
/* 80090730 0008D690 81 83 00 00 */ lwz r12, 0(r3)
/* 80090734 0008D694 38 80 00 01 */ li r4, 1
/* 80090738 0008D698 81 8C 00 08 */ lwz r12, 8(r12)
/* 8009073C 0008D69C 7D 89 03 A6 */ mtctr r12
/* 80090740 0008D6A0 4E 80 04 21 */ bctrl
lbl_80090744:
/* 80090744 0008D6A4 34 1E 01 80 */ addic. r0, r30, 0x180
/* 80090748 0008D6A8 41 82 00 24 */ beq lbl_8009076C
/* 8009074C 0008D6AC 80 7E 01 80 */ lwz r3, 0x180(r30)
/* 80090750 0008D6B0 28 03 00 00 */ cmplwi r3, 0
/* 80090754 0008D6B4 41 82 00 18 */ beq lbl_8009076C
/* 80090758 0008D6B8 81 83 00 00 */ lwz r12, 0(r3)
/* 8009075C 0008D6BC 38 80 00 01 */ li r4, 1
/* 80090760 0008D6C0 81 8C 00 08 */ lwz r12, 8(r12)
/* 80090764 0008D6C4 7D 89 03 A6 */ mtctr r12
/* 80090768 0008D6C8 4E 80 04 21 */ bctrl
lbl_8009076C:
/* 8009076C 0008D6CC 7F C3 F3 78 */ mr r3, r30
/* 80090770 0008D6D0 38 80 00 00 */ li r4, 0
/* 80090774 0008D6D4 48 07 1A C1 */ bl __dt__7CWeaponFv
/* 80090778 0008D6D8 7F E0 07 35 */ extsh. r0, r31
/* 8009077C 0008D6DC 40 81 00 0C */ ble lbl_80090788
/* 80090780 0008D6E0 7F C3 F3 78 */ mr r3, r30
/* 80090784 0008D6E4 48 28 51 AD */ bl Free__7CMemoryFPCv
lbl_80090788:
/* 80090788 0008D6E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8009078C 0008D6EC 7F C3 F3 78 */ mr r3, r30
/* 80090790 0008D6F0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80090794 0008D6F4 83 C1 00 08 */ lwz r30, 8(r1)
/* 80090798 0008D6F8 7C 08 03 A6 */ mtlr r0
/* 8009079C 0008D6FC 38 21 00 10 */ addi r1, r1, 0x10
/* 800907A0 0008D700 4E 80 00 20 */ blr
.global "__ct__5CBombF25TToken<15CGenDescription>25TToken<15CGenDescription>9TUniqueId7TAreaId9TUniqueIdfRC12CTransform4fRC11CDamageInfo"
"__ct__5CBombF25TToken<15CGenDescription>25TToken<15CGenDescription>9TUniqueId7TAreaId9TUniqueIdfRC12CTransform4fRC11CDamageInfo":
/* 800907A4 0008D704 94 21 FE D0 */ stwu r1, -0x130(r1)
/* 800907A8 0008D708 7C 08 02 A6 */ mflr r0
/* 800907AC 0008D70C 90 01 01 34 */ stw r0, 0x134(r1)
/* 800907B0 0008D710 DB E1 01 20 */ stfd f31, 0x120(r1)
/* 800907B4 0008D714 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0
/* 800907B8 0008D718 BE 61 00 EC */ stmw r19, 0xec(r1)
/* 800907BC 0008D71C 3D 60 80 3D */ lis r11, lbl_803CD6A8@ha
/* 800907C0 0008D720 FF E0 08 90 */ fmr f31, f1
/* 800907C4 0008D724 39 6B D6 A8 */ addi r11, r11, lbl_803CD6A8@l
/* 800907C8 0008D728 7C 7E 1B 78 */ mr r30, r3
/* 800907CC 0008D72C 7C 98 23 78 */ mr r24, r4
/* 800907D0 0008D730 7C BF 2B 78 */ mr r31, r5
/* 800907D4 0008D734 7C D9 33 78 */ mr r25, r6
/* 800907D8 0008D738 7C FA 3B 78 */ mr r26, r7
/* 800907DC 0008D73C 7D 1B 43 78 */ mr r27, r8
/* 800907E0 0008D740 7D 3C 4B 78 */ mr r28, r9
/* 800907E4 0008D744 7D 5D 53 78 */ mr r29, r10
/* 800907E8 0008D748 38 61 00 68 */ addi r3, r1, 0x68
/* 800907EC 0008D74C 38 8B 00 13 */ addi r4, r11, 0x13
/* 800907F0 0008D750 4B F7 44 C9 */ bl string_l__4rstlFPCc
/* 800907F4 0008D754 38 61 00 90 */ addi r3, r1, 0x90
/* 800907F8 0008D758 4B FA 9F AD */ bl CModelDataNull__10CModelDataFv
/* 800907FC 0008D75C 38 00 00 00 */ li r0, 0
/* 80090800 0008D760 80 AD 85 78 */ lwz r5, lbl_805A7138@sda21(r13)
/* 80090804 0008D764 90 01 00 4C */ stw r0, 0x4c(r1)
/* 80090808 0008D768 38 60 00 00 */ li r3, 0
/* 8009080C 0008D76C 38 80 00 01 */ li r4, 1
/* 80090810 0008D770 90 01 00 48 */ stw r0, 0x48(r1)
/* 80090814 0008D774 48 2F 96 E1 */ bl __shl2i
/* 80090818 0008D778 80 01 00 48 */ lwz r0, 0x48(r1)
/* 8009081C 0008D77C 80 C1 00 4C */ lwz r6, 0x4c(r1)
/* 80090820 0008D780 7C 00 1B 78 */ or r0, r0, r3
/* 80090824 0008D784 80 AD 85 7C */ lwz r5, lbl_805A713C@sda21(r13)
/* 80090828 0008D788 7C C4 23 78 */ or r4, r6, r4
/* 8009082C 0008D78C 90 01 00 48 */ stw r0, 0x48(r1)
/* 80090830 0008D790 38 60 00 00 */ li r3, 0
/* 80090834 0008D794 90 81 00 4C */ stw r4, 0x4c(r1)
/* 80090838 0008D798 38 80 00 01 */ li r4, 1
/* 8009083C 0008D79C 48 2F 96 B9 */ bl __shl2i
/* 80090840 0008D7A0 80 01 00 48 */ lwz r0, 0x48(r1)
/* 80090844 0008D7A4 80 C1 00 4C */ lwz r6, 0x4c(r1)
/* 80090848 0008D7A8 7C 00 1B 78 */ or r0, r0, r3
/* 8009084C 0008D7AC 80 AD 85 70 */ lwz r5, lbl_805A7130@sda21(r13)
/* 80090850 0008D7B0 7C C4 23 78 */ or r4, r6, r4
/* 80090854 0008D7B4 90 01 00 48 */ stw r0, 0x48(r1)
/* 80090858 0008D7B8 38 60 00 00 */ li r3, 0
/* 8009085C 0008D7BC 90 81 00 4C */ stw r4, 0x4c(r1)
/* 80090860 0008D7C0 38 80 00 01 */ li r4, 1
/* 80090864 0008D7C4 48 2F 96 91 */ bl __shl2i
/* 80090868 0008D7C8 80 AD 85 74 */ lwz r5, lbl_805A7134@sda21(r13)
/* 8009086C 0008D7CC 7C 96 23 78 */ mr r22, r4
/* 80090870 0008D7D0 7C 77 1B 78 */ mr r23, r3
/* 80090874 0008D7D4 38 60 00 00 */ li r3, 0
/* 80090878 0008D7D8 38 80 00 01 */ li r4, 1
/* 8009087C 0008D7DC 48 2F 96 79 */ bl __shl2i
/* 80090880 0008D7E0 80 AD 85 64 */ lwz r5, lbl_805A7124@sda21(r13)
/* 80090884 0008D7E4 7E D6 23 78 */ or r22, r22, r4
/* 80090888 0008D7E8 7E F7 1B 78 */ or r23, r23, r3
/* 8009088C 0008D7EC 38 60 00 00 */ li r3, 0
/* 80090890 0008D7F0 38 80 00 01 */ li r4, 1
/* 80090894 0008D7F4 48 2F 96 61 */ bl __shl2i
/* 80090898 0008D7F8 80 AD 85 68 */ lwz r5, lbl_805A7128@sda21(r13)
/* 8009089C 0008D7FC 7C 94 23 78 */ mr r20, r4
/* 800908A0 0008D800 7C 75 1B 78 */ mr r21, r3
/* 800908A4 0008D804 38 60 00 00 */ li r3, 0
/* 800908A8 0008D808 38 80 00 01 */ li r4, 1
/* 800908AC 0008D80C 48 2F 96 49 */ bl __shl2i
/* 800908B0 0008D810 80 AD 85 6C */ lwz r5, lbl_805A712C@sda21(r13)
/* 800908B4 0008D814 7E 94 23 78 */ or r20, r20, r4
/* 800908B8 0008D818 7E B5 1B 78 */ or r21, r21, r3
/* 800908BC 0008D81C 38 60 00 00 */ li r3, 0
/* 800908C0 0008D820 38 80 00 01 */ li r4, 1
/* 800908C4 0008D824 48 2F 96 31 */ bl __shl2i
/* 800908C8 0008D828 A3 7B 00 00 */ lhz r27, 0(r27)
/* 800908CC 0008D82C 7E 94 23 78 */ or r20, r20, r4
/* 800908D0 0008D830 7E B5 1B 78 */ or r21, r21, r3
/* 800908D4 0008D834 83 5A 00 00 */ lwz r26, 0(r26)
/* 800908D8 0008D838 A3 39 00 00 */ lhz r25, 0(r25)
/* 800908DC 0008D83C 3A 60 00 03 */ li r19, 3
/* 800908E0 0008D840 92 81 00 7C */ stw r20, 0x7c(r1)
/* 800908E4 0008D844 3A 81 00 78 */ addi r20, r1, 0x78
/* 800908E8 0008D848 39 81 00 48 */ addi r12, r1, 0x48
/* 800908EC 0008D84C 39 60 01 00 */ li r11, 0x100
/* 800908F0 0008D850 92 A1 00 78 */ stw r21, 0x78(r1)
/* 800908F4 0008D854 38 01 00 90 */ addi r0, r1, 0x90
/* 800908F8 0008D858 7F C3 F3 78 */ mr r3, r30
/* 800908FC 0008D85C 7F 8A E3 78 */ mr r10, r28
/* 80090900 0008D860 92 C1 00 84 */ stw r22, 0x84(r1)
/* 80090904 0008D864 38 81 00 24 */ addi r4, r1, 0x24
/* 80090908 0008D868 38 A1 00 28 */ addi r5, r1, 0x28
/* 8009090C 0008D86C 38 E1 00 20 */ addi r7, r1, 0x20
/* 80090910 0008D870 92 E1 00 80 */ stw r23, 0x80(r1)
/* 80090914 0008D874 39 21 00 68 */ addi r9, r1, 0x68
/* 80090918 0008D878 38 C0 00 01 */ li r6, 1
/* 8009091C 0008D87C 39 00 00 04 */ li r8, 4
/* 80090920 0008D880 92 61 00 88 */ stw r19, 0x88(r1)
/* 80090924 0008D884 B3 61 00 20 */ sth r27, 0x20(r1)
/* 80090928 0008D888 93 41 00 28 */ stw r26, 0x28(r1)
/* 8009092C 0008D88C B3 21 00 24 */ sth r25, 0x24(r1)
/* 80090930 0008D890 92 81 00 08 */ stw r20, 8(r1)
/* 80090934 0008D894 91 81 00 0C */ stw r12, 0xc(r1)
/* 80090938 0008D898 93 A1 00 10 */ stw r29, 0x10(r1)
/* 8009093C 0008D89C 91 61 00 14 */ stw r11, 0x14(r1)
/* 80090940 0008D8A0 90 01 00 18 */ stw r0, 0x18(r1)
/* 80090944 0008D8A4 48 07 19 51 */ bl "__ct__7CWeaponF9TUniqueId7TAreaIdb9TUniqueId11EWeaponTypeRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RC12CTransform4fRC15CMaterialFilterRC13CMaterialListRC11CDamageInfo17EProjectileAttribRC10CModelData"
/* 80090948 0008D8A8 38 61 00 90 */ addi r3, r1, 0x90
/* 8009094C 0008D8AC 38 80 FF FF */ li r4, -1
/* 80090950 0008D8B0 48 08 60 FD */ bl __dt__10CModelDataFv
/* 80090954 0008D8B4 38 61 00 68 */ addi r3, r1, 0x68
/* 80090958 0008D8B8 48 2A D1 89 */ bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 8009095C 0008D8BC 3C 60 80 3E */ lis r3, lbl_803DACC0@ha
/* 80090960 0008D8C0 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 80090964 0008D8C4 38 03 AC C0 */ addi r0, r3, lbl_803DACC0@l
/* 80090968 0008D8C8 3A 80 00 00 */ li r20, 0
/* 8009096C 0008D8CC 90 1E 00 00 */ stw r0, 0(r30)
/* 80090970 0008D8D0 38 C4 66 A0 */ addi r6, r4, sZeroVector__9CVector3f@l
/* 80090974 0008D8D4 3C 60 80 3D */ lis r3, lbl_803CD6A8@ha
/* 80090978 0008D8D8 38 A0 00 00 */ li r5, 0
/* 8009097C 0008D8DC C0 06 00 00 */ lfs f0, 0(r6)
/* 80090980 0008D8E0 38 83 D6 A8 */ addi r4, r3, lbl_803CD6A8@l
/* 80090984 0008D8E4 38 60 03 40 */ li r3, 0x340
/* 80090988 0008D8E8 D0 1E 01 58 */ stfs f0, 0x158(r30)
/* 8009098C 0008D8EC C0 06 00 04 */ lfs f0, 4(r6)
/* 80090990 0008D8F0 D0 1E 01 5C */ stfs f0, 0x15c(r30)
/* 80090994 0008D8F4 C0 06 00 08 */ lfs f0, 8(r6)
/* 80090998 0008D8F8 D0 1E 01 60 */ stfs f0, 0x160(r30)
/* 8009099C 0008D8FC C0 06 00 00 */ lfs f0, 0(r6)
/* 800909A0 0008D900 D0 1E 01 64 */ stfs f0, 0x164(r30)
/* 800909A4 0008D904 C0 06 00 04 */ lfs f0, 4(r6)
/* 800909A8 0008D908 D0 1E 01 68 */ stfs f0, 0x168(r30)
/* 800909AC 0008D90C C0 06 00 08 */ lfs f0, 8(r6)
/* 800909B0 0008D910 D0 1E 01 6C */ stfs f0, 0x16c(r30)
/* 800909B4 0008D914 C0 5C 00 2C */ lfs f2, 0x2c(r28)
/* 800909B8 0008D918 C0 3C 00 1C */ lfs f1, 0x1c(r28)
/* 800909BC 0008D91C C0 1C 00 0C */ lfs f0, 0xc(r28)
/* 800909C0 0008D920 D0 1E 01 70 */ stfs f0, 0x170(r30)
/* 800909C4 0008D924 D0 3E 01 74 */ stfs f1, 0x174(r30)
/* 800909C8 0008D928 D0 5E 01 78 */ stfs f2, 0x178(r30)
/* 800909CC 0008D92C D3 FE 01 7C */ stfs f31, 0x17c(r30)
/* 800909D0 0008D930 48 28 4E 9D */ bl __nw__FUlPCcPCc
/* 800909D4 0008D934 7C 73 1B 79 */ or. r19, r3, r3
/* 800909D8 0008D938 41 82 00 2C */ beq lbl_80090A04
/* 800909DC 0008D93C 7F 04 C3 78 */ mr r4, r24
/* 800909E0 0008D940 38 61 00 3C */ addi r3, r1, 0x3c
/* 800909E4 0008D944 48 2B 04 C5 */ bl __ct__6CTokenFRC6CToken
/* 800909E8 0008D948 7E 63 9B 78 */ mr r3, r19
/* 800909EC 0008D94C 38 81 00 3C */ addi r4, r1, 0x3c
/* 800909F0 0008D950 3A 80 00 01 */ li r20, 1
/* 800909F4 0008D954 38 A0 00 00 */ li r5, 0
/* 800909F8 0008D958 38 C0 00 01 */ li r6, 1
/* 800909FC 0008D95C 48 28 E9 E5 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags"
/* 80090A00 0008D960 7C 73 1B 78 */ mr r19, r3
lbl_80090A04:
/* 80090A04 0008D964 7E 80 07 75 */ extsb. r0, r20
/* 80090A08 0008D968 92 7E 01 80 */ stw r19, 0x180(r30)
/* 80090A0C 0008D96C 41 82 00 10 */ beq lbl_80090A1C
/* 80090A10 0008D970 38 61 00 3C */ addi r3, r1, 0x3c
/* 80090A14 0008D974 38 80 00 00 */ li r4, 0
/* 80090A18 0008D978 48 2B 04 29 */ bl __dt__6CTokenFv
lbl_80090A1C:
/* 80090A1C 0008D97C 3C 60 80 3D */ lis r3, lbl_803CD6A8@ha
/* 80090A20 0008D980 3A 80 00 00 */ li r20, 0
/* 80090A24 0008D984 38 83 D6 A8 */ addi r4, r3, lbl_803CD6A8@l
/* 80090A28 0008D988 38 A0 00 00 */ li r5, 0
/* 80090A2C 0008D98C 38 60 03 40 */ li r3, 0x340
/* 80090A30 0008D990 48 28 4E 3D */ bl __nw__FUlPCcPCc
/* 80090A34 0008D994 7C 73 1B 79 */ or. r19, r3, r3
/* 80090A38 0008D998 41 82 00 2C */ beq lbl_80090A64
/* 80090A3C 0008D99C 7F E4 FB 78 */ mr r4, r31
/* 80090A40 0008D9A0 38 61 00 34 */ addi r3, r1, 0x34
/* 80090A44 0008D9A4 48 2B 04 65 */ bl __ct__6CTokenFRC6CToken
/* 80090A48 0008D9A8 7E 63 9B 78 */ mr r3, r19
/* 80090A4C 0008D9AC 38 81 00 34 */ addi r4, r1, 0x34
/* 80090A50 0008D9B0 3A 80 00 01 */ li r20, 1
/* 80090A54 0008D9B4 38 A0 00 00 */ li r5, 0
/* 80090A58 0008D9B8 38 C0 00 01 */ li r6, 1
/* 80090A5C 0008D9BC 48 28 E9 85 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags"
/* 80090A60 0008D9C0 7C 73 1B 78 */ mr r19, r3
lbl_80090A64:
/* 80090A64 0008D9C4 7E 80 07 75 */ extsb. r0, r20
/* 80090A68 0008D9C8 92 7E 01 84 */ stw r19, 0x184(r30)
/* 80090A6C 0008D9CC 41 82 00 10 */ beq lbl_80090A7C
/* 80090A70 0008D9D0 38 61 00 34 */ addi r3, r1, 0x34
/* 80090A74 0008D9D4 38 80 00 00 */ li r4, 0
/* 80090A78 0008D9D8 48 2B 03 C9 */ bl __dt__6CTokenFv
lbl_80090A7C:
/* 80090A7C 0008D9DC A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13)
/* 80090A80 0008D9E0 7F E4 FB 78 */ mr r4, r31
/* 80090A84 0008D9E4 38 61 00 2C */ addi r3, r1, 0x2c
/* 80090A88 0008D9E8 B0 1E 01 88 */ sth r0, 0x188(r30)
/* 80090A8C 0008D9EC 48 2B 04 1D */ bl __ct__6CTokenFRC6CToken
/* 80090A90 0008D9F0 80 A1 00 2C */ lwz r5, 0x2c(r1)
/* 80090A94 0008D9F4 38 61 00 2C */ addi r3, r1, 0x2c
/* 80090A98 0008D9F8 38 80 FF FF */ li r4, -1
/* 80090A9C 0008D9FC 80 05 00 08 */ lwz r0, 8(r5)
/* 80090AA0 0008DA00 90 1E 01 8C */ stw r0, 0x18c(r30)
/* 80090AA4 0008DA04 48 2B 03 9D */ bl __dt__6CTokenFv
/* 80090AA8 0008DA08 88 1E 01 90 */ lbz r0, 0x190(r30)
/* 80090AAC 0008DA0C 38 60 00 01 */ li r3, 1
/* 80090AB0 0008DA10 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 80090AB4 0008DA14 38 60 00 00 */ li r3, 0
/* 80090AB8 0008DA18 98 1E 01 90 */ stb r0, 0x190(r30)
/* 80090ABC 0008DA1C 38 81 00 5C */ addi r4, r1, 0x5c
/* 80090AC0 0008DA20 88 1E 01 90 */ lbz r0, 0x190(r30)
/* 80090AC4 0008DA24 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 80090AC8 0008DA28 98 1E 01 90 */ stb r0, 0x190(r30)
/* 80090ACC 0008DA2C 88 1E 01 90 */ lbz r0, 0x190(r30)
/* 80090AD0 0008DA30 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80090AD4 0008DA34 98 1E 01 90 */ stb r0, 0x190(r30)
/* 80090AD8 0008DA38 C0 5C 00 2C */ lfs f2, 0x2c(r28)
/* 80090ADC 0008DA3C C0 3C 00 1C */ lfs f1, 0x1c(r28)
/* 80090AE0 0008DA40 C0 1C 00 0C */ lfs f0, 0xc(r28)
/* 80090AE4 0008DA44 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 80090AE8 0008DA48 D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 80090AEC 0008DA4C D0 41 00 64 */ stfs f2, 0x64(r1)
/* 80090AF0 0008DA50 80 7E 01 80 */ lwz r3, 0x180(r30)
/* 80090AF4 0008DA54 81 83 00 00 */ lwz r12, 0(r3)
/* 80090AF8 0008DA58 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 80090AFC 0008DA5C 7D 89 03 A6 */ mtctr r12
/* 80090B00 0008DA60 4E 80 04 21 */ bctrl
/* 80090B04 0008DA64 C0 5C 00 2C */ lfs f2, 0x2c(r28)
/* 80090B08 0008DA68 38 81 00 50 */ addi r4, r1, 0x50
/* 80090B0C 0008DA6C C0 3C 00 1C */ lfs f1, 0x1c(r28)
/* 80090B10 0008DA70 C0 1C 00 0C */ lfs f0, 0xc(r28)
/* 80090B14 0008DA74 D0 21 00 54 */ stfs f1, 0x54(r1)
/* 80090B18 0008DA78 D0 01 00 50 */ stfs f0, 0x50(r1)
/* 80090B1C 0008DA7C D0 41 00 58 */ stfs f2, 0x58(r1)
/* 80090B20 0008DA80 80 7E 01 84 */ lwz r3, 0x184(r30)
/* 80090B24 0008DA84 81 83 00 00 */ lwz r12, 0(r3)
/* 80090B28 0008DA88 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 80090B2C 0008DA8C 7D 89 03 A6 */ mtctr r12
/* 80090B30 0008DA90 4E 80 04 21 */ bctrl
/* 80090B34 0008DA94 7F C3 F3 78 */ mr r3, r30
/* 80090B38 0008DA98 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0
/* 80090B3C 0008DA9C CB E1 01 20 */ lfd f31, 0x120(r1)
/* 80090B40 0008DAA0 BA 61 00 EC */ lmw r19, 0xec(r1)
/* 80090B44 0008DAA4 80 01 01 34 */ lwz r0, 0x134(r1)
/* 80090B48 0008DAA8 7C 08 03 A6 */ mtlr r0
/* 80090B4C 0008DAAC 38 21 01 30 */ addi r1, r1, 0x130
/* 80090B50 0008DAB0 4E 80 00 20 */ blr
.section .rodata
.balign 8
.global lbl_803CD6A8
lbl_803CD6A8:
# ROM: 0x3CA6A8
.asciz "??(??)"
.byte 0x42
.asciz "ombPLight_"
.byte 0x42
.4byte 0x6F6D6200