donut-decomp/asm/libnw4r_ef/ef_particlemanager.s

2615 lines
129 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global __ct__Q34nw4r2ef15ParticleManagerFv
__ct__Q34nw4r2ef15ParticleManagerFv:
/* 800B0260 000AC0A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800B0264 000AC0A4 7C 08 02 A6 */ mflr r0
/* 800B0268 000AC0A8 3C 80 80 44 */ lis r4, __vt__Q34nw4r2ef15ParticleManager@ha
/* 800B026C 000AC0AC 90 01 00 14 */ stw r0, 0x14(r1)
/* 800B0270 000AC0B0 38 84 03 48 */ addi r4, r4, __vt__Q34nw4r2ef15ParticleManager@l
/* 800B0274 000AC0B4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 800B0278 000AC0B8 7C 7F 1B 78 */ mr r31, r3
/* 800B027C 000AC0BC 90 83 00 1C */ stw r4, 0x1c(r3)
/* 800B0280 000AC0C0 38 80 00 14 */ li r4, 0x14
/* 800B0284 000AC0C4 38 63 00 38 */ addi r3, r3, 0x38
/* 800B0288 000AC0C8 4B FF 35 A9 */ bl MEMInitList
/* 800B028C 000AC0CC 38 7F 00 44 */ addi r3, r31, 0x44
/* 800B0290 000AC0D0 38 80 00 14 */ li r4, 0x14
/* 800B0294 000AC0D4 4B FF 35 9D */ bl MEMInitList
/* 800B0298 000AC0D8 38 00 00 00 */ li r0, 0x0
/* 800B029C 000AC0DC B0 1F 00 50 */ sth r0, 0x50(r31)
/* 800B02A0 000AC0E0 7F E3 FB 78 */ mr r3, r31
/* 800B02A4 000AC0E4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800B02A8 000AC0E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800B02AC 000AC0EC 7C 08 03 A6 */ mtlr r0
/* 800B02B0 000AC0F0 38 21 00 10 */ addi r1, r1, 0x10
/* 800B02B4 000AC0F4 4E 80 00 20 */ blr
/* 800B02B8 000AC0F8 00 00 00 00 */ .4byte 0x00000000
/* 800B02BC 000AC0FC 00 00 00 00 */ .4byte 0x00000000
.global SendClosing__Q34nw4r2ef15ParticleManagerFv
SendClosing__Q34nw4r2ef15ParticleManagerFv:
/* 800B02C0 000AC100 7C 64 1B 78 */ mr r4, r3
/* 800B02C4 000AC104 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B02C8 000AC108 4B FF 4C B8 */ b Closing__Q34nw4r2ef7EmitterFPQ34nw4r2ef15ParticleManager
/* 800B02CC 000AC10C 00 00 00 00 */ .4byte 0x00000000
.global DestroyFunc__Q34nw4r2ef15ParticleManagerFv
DestroyFunc__Q34nw4r2ef15ParticleManagerFv:
/* 800B02D0 000AC110 4E 80 00 20 */ blr
/* 800B02D4 000AC114 00 00 00 00 */ .4byte 0x00000000
/* 800B02D8 000AC118 00 00 00 00 */ .4byte 0x00000000
/* 800B02DC 000AC11C 00 00 00 00 */ .4byte 0x00000000
.global Closing__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef8Particle
Closing__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef8Particle:
/* 800B02E0 000AC120 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800B02E4 000AC124 7C 08 02 A6 */ mflr r0
/* 800B02E8 000AC128 90 01 00 14 */ stw r0, 0x14(r1)
/* 800B02EC 000AC12C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 800B02F0 000AC130 7C 9F 23 78 */ mr r31, r4
/* 800B02F4 000AC134 93 C1 00 08 */ stw r30, 0x8(r1)
/* 800B02F8 000AC138 7C 7E 1B 78 */ mr r30, r3
/* 800B02FC 000AC13C 80 03 00 54 */ lwz r0, 0x54(r3)
/* 800B0300 000AC140 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0304 000AC144 41 82 00 14 */ beq lbl_800B0318
/* 800B0308 000AC148 7C 04 03 78 */ mr r4, r0
/* 800B030C 000AC14C 38 63 00 38 */ addi r3, r3, 0x38
/* 800B0310 000AC150 48 06 F9 51 */ bl List_GetPrev__Q24nw4r2utFPCQ34nw4r2ut4ListPCv
/* 800B0314 000AC154 90 7E 00 54 */ stw r3, 0x54(r30)
.global lbl_800B0318
lbl_800B0318:
/* 800B0318 000AC158 80 7F 00 C8 */ lwz r3, 0xc8(r31)
/* 800B031C 000AC15C 80 03 00 10 */ lwz r0, 0x10(r3)
/* 800B0320 000AC160 34 00 FF FF */ addic. r0, r0, -0x1
/* 800B0324 000AC164 90 03 00 10 */ stw r0, 0x10(r3)
/* 800B0328 000AC168 40 82 00 20 */ bne lbl_800B0348
/* 800B032C 000AC16C 80 03 00 0C */ lwz r0, 0xc(r3)
/* 800B0330 000AC170 2C 00 00 02 */ cmpwi r0, 0x2
/* 800B0334 000AC174 40 82 00 14 */ bne lbl_800B0348
/* 800B0338 000AC178 81 83 00 1C */ lwz r12, 0x1c(r3)
/* 800B033C 000AC17C 81 8C 00 08 */ lwz r12, 0x8(r12)
/* 800B0340 000AC180 7D 89 03 A6 */ mtctr r12
/* 800B0344 000AC184 4E 80 04 21 */ bctrl
.global lbl_800B0348
lbl_800B0348:
/* 800B0348 000AC188 7F E4 FB 78 */ mr r4, r31
/* 800B034C 000AC18C 38 7E 00 38 */ addi r3, r30, 0x38
/* 800B0350 000AC190 4B FF 35 71 */ bl MEMRemoveListObject
/* 800B0354 000AC194 7F E4 FB 78 */ mr r4, r31
/* 800B0358 000AC198 38 7E 00 44 */ addi r3, r30, 0x44
/* 800B035C 000AC19C 4B FF 34 F5 */ bl MEMAppendListObject
/* 800B0360 000AC1A0 38 00 00 03 */ li r0, 0x3
/* 800B0364 000AC1A4 90 1F 00 0C */ stw r0, 0xc(r31)
/* 800B0368 000AC1A8 38 60 00 01 */ li r3, 0x1
/* 800B036C 000AC1AC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800B0370 000AC1B0 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 800B0374 000AC1B4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800B0378 000AC1B8 7C 08 03 A6 */ mtlr r0
/* 800B037C 000AC1BC 38 21 00 10 */ addi r1, r1, 0x10
/* 800B0380 000AC1C0 4E 80 00 20 */ blr
/* 800B0384 000AC1C4 00 00 00 00 */ .4byte 0x00000000
/* 800B0388 000AC1C8 00 00 00 00 */ .4byte 0x00000000
/* 800B038C 000AC1CC 00 00 00 00 */ .4byte 0x00000000
.global RetireParticleAll__Q34nw4r2ef15ParticleManagerFv
RetireParticleAll__Q34nw4r2ef15ParticleManagerFv:
/* 800B0390 000AC1D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800B0394 000AC1D4 7C 08 02 A6 */ mflr r0
/* 800B0398 000AC1D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 800B039C 000AC1DC 39 61 00 20 */ addi r11, r1, 0x20
/* 800B03A0 000AC1E0 4B F5 6F 9D */ bl lbl_8000733C
/* 800B03A4 000AC1E4 83 A3 00 38 */ lwz r29, 0x38(r3)
/* 800B03A8 000AC1E8 7C 7B 1B 78 */ mr r27, r3
/* 800B03AC 000AC1EC 3B C0 00 00 */ li r30, 0x0
/* 800B03B0 000AC1F0 3B E0 00 02 */ li r31, 0x2
/* 800B03B4 000AC1F4 48 00 00 68 */ b lbl_800B041C
.global lbl_800B03B8
lbl_800B03B8:
/* 800B03B8 000AC1F8 A0 7B 00 42 */ lhz r3, 0x42(r27)
/* 800B03BC 000AC1FC 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 800B03C0 000AC200 7C 7D 1A 14 */ add r3, r29, r3
/* 800B03C4 000AC204 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B03C8 000AC208 83 83 00 04 */ lwz r28, 0x4(r3)
/* 800B03CC 000AC20C 40 82 00 4C */ bne lbl_800B0418
/* 800B03D0 000AC210 A0 9B 00 50 */ lhz r4, 0x50(r27)
/* 800B03D4 000AC214 7F A3 EB 78 */ mr r3, r29
/* 800B03D8 000AC218 38 04 FF FF */ addi r0, r4, -0x1
/* 800B03DC 000AC21C B0 1B 00 50 */ sth r0, 0x50(r27)
/* 800B03E0 000AC220 81 9D 00 1C */ lwz r12, 0x1c(r29)
/* 800B03E4 000AC224 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 800B03E8 000AC228 7D 89 03 A6 */ mtctr r12
/* 800B03EC 000AC22C 4E 80 04 21 */ bctrl
/* 800B03F0 000AC230 93 FD 00 0C */ stw r31, 0xc(r29)
/* 800B03F4 000AC234 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 800B03F8 000AC238 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B03FC 000AC23C 40 82 00 18 */ bne lbl_800B0414
/* 800B0400 000AC240 81 9D 00 1C */ lwz r12, 0x1c(r29)
/* 800B0404 000AC244 7F A3 EB 78 */ mr r3, r29
/* 800B0408 000AC248 81 8C 00 08 */ lwz r12, 0x8(r12)
/* 800B040C 000AC24C 7D 89 03 A6 */ mtctr r12
/* 800B0410 000AC250 4E 80 04 21 */ bctrl
.global lbl_800B0414
lbl_800B0414:
/* 800B0414 000AC254 3B DE 00 01 */ addi r30, r30, 0x1
.global lbl_800B0418
lbl_800B0418:
/* 800B0418 000AC258 7F 9D E3 78 */ mr r29, r28
.global lbl_800B041C
lbl_800B041C:
/* 800B041C 000AC25C 2C 1D 00 00 */ cmpwi r29, 0x0
/* 800B0420 000AC260 40 82 FF 98 */ bne lbl_800B03B8
/* 800B0424 000AC264 39 61 00 20 */ addi r11, r1, 0x20
/* 800B0428 000AC268 7F C3 F3 78 */ mr r3, r30
/* 800B042C 000AC26C 4B F5 6F 5D */ bl lbl_80007388
/* 800B0430 000AC270 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800B0434 000AC274 7C 08 03 A6 */ mtlr r0
/* 800B0438 000AC278 38 21 00 20 */ addi r1, r1, 0x20
/* 800B043C 000AC27C 4E 80 00 20 */ blr
.global Initialize__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef7EmitterPQ34nw4r2ef15EmitterResource
Initialize__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef7EmitterPQ34nw4r2ef15EmitterResource:
/* 800B0440 000AC280 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800B0444 000AC284 7C 08 02 A6 */ mflr r0
/* 800B0448 000AC288 C0 02 8A FC */ lfs f0, "@10378"@sda21(r2)
/* 800B044C 000AC28C 39 00 00 00 */ li r8, 0x0
/* 800B0450 000AC290 90 01 00 14 */ stw r0, 0x14(r1)
/* 800B0454 000AC294 38 E0 00 01 */ li r7, 0x1
/* 800B0458 000AC298 C0 22 8A F8 */ lfs f1, "@10377"@sda21(r2)
/* 800B045C 000AC29C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 800B0460 000AC2A0 7C 7F 1B 78 */ mr r31, r3
/* 800B0464 000AC2A4 93 C1 00 08 */ stw r30, 0x8(r1)
/* 800B0468 000AC2A8 91 03 00 10 */ stw r8, 0x10(r3)
/* 800B046C 000AC2AC 90 E3 00 0C */ stw r7, 0xc(r3)
/* 800B0470 000AC2B0 91 03 00 38 */ stw r8, 0x38(r3)
/* 800B0474 000AC2B4 B1 03 00 40 */ sth r8, 0x40(r3)
/* 800B0478 000AC2B8 91 03 00 3C */ stw r8, 0x3c(r3)
/* 800B047C 000AC2BC 91 03 00 44 */ stw r8, 0x44(r3)
/* 800B0480 000AC2C0 B1 03 00 4C */ sth r8, 0x4c(r3)
/* 800B0484 000AC2C4 91 03 00 48 */ stw r8, 0x48(r3)
/* 800B0488 000AC2C8 B1 03 00 50 */ sth r8, 0x50(r3)
/* 800B048C 000AC2CC D0 23 00 58 */ stfs f1, 0x58(r3)
/* 800B0490 000AC2D0 D0 23 00 5C */ stfs f1, 0x5c(r3)
/* 800B0494 000AC2D4 D0 03 00 60 */ stfs f0, 0x60(r3)
/* 800B0498 000AC2D8 D0 03 00 64 */ stfs f0, 0x64(r3)
/* 800B049C 000AC2DC D0 03 00 68 */ stfs f0, 0x68(r3)
/* 800B04A0 000AC2E0 90 83 00 20 */ stw r4, 0x20(r3)
/* 800B04A4 000AC2E4 80 C4 00 10 */ lwz r6, 0x10(r4)
/* 800B04A8 000AC2E8 38 06 00 01 */ addi r0, r6, 0x1
/* 800B04AC 000AC2EC 90 04 00 10 */ stw r0, 0x10(r4)
/* 800B04B0 000AC2F0 80 03 00 08 */ lwz r0, 0x8(r3)
/* 800B04B4 000AC2F4 90 A3 00 24 */ stw r5, 0x24(r3)
/* 800B04B8 000AC2F8 54 00 04 3E */ clrlwi r0, r0, 16
/* 800B04BC 000AC2FC 91 03 00 28 */ stw r8, 0x28(r3)
/* 800B04C0 000AC300 98 E3 00 8A */ stb r7, 0x8a(r3)
/* 800B04C4 000AC304 80 8D EB 10 */ lwz r4, smMtxInvId__Q34nw4r2ef15ParticleManager@sda21(r13)
/* 800B04C8 000AC308 7C 04 00 00 */ cmpw r4, r0
/* 800B04CC 000AC30C 40 82 00 0C */ bne lbl_800B04D8
/* 800B04D0 000AC310 38 00 FF FF */ li r0, -0x1
/* 800B04D4 000AC314 90 0D EB 10 */ stw r0, smMtxInvId__Q34nw4r2ef15ParticleManager@sda21(r13)
.global lbl_800B04D8
lbl_800B04D8:
/* 800B04D8 000AC318 80 83 00 20 */ lwz r4, 0x20(r3)
/* 800B04DC 000AC31C 83 C3 00 24 */ lwz r30, 0x24(r3)
/* 800B04E0 000AC320 80 64 00 BC */ lwz r3, 0xbc(r4)
/* 800B04E4 000AC324 88 9E 01 48 */ lbz r4, 0x148(r30)
/* 800B04E8 000AC328 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B04EC 000AC32C 80 63 00 08 */ lwz r3, 0x8(r3)
/* 800B04F0 000AC330 81 83 00 00 */ lwz r12, 0x0(r3)
/* 800B04F4 000AC334 81 8C 00 08 */ lwz r12, 0x8(r12)
/* 800B04F8 000AC338 7D 89 03 A6 */ mtctr r12
/* 800B04FC 000AC33C 4E 80 04 21 */ bctrl
/* 800B0500 000AC340 90 7F 00 2C */ stw r3, 0x2c(r31)
/* 800B0504 000AC344 38 00 00 00 */ li r0, 0x0
/* 800B0508 000AC348 38 60 00 01 */ li r3, 0x1
/* 800B050C 000AC34C 90 1F 00 54 */ stw r0, 0x54(r31)
/* 800B0510 000AC350 C0 1E 01 1C */ lfs f0, 0x11c(r30)
/* 800B0514 000AC354 88 1E 01 13 */ lbz r0, 0x113(r30)
/* 800B0518 000AC358 98 1F 00 6C */ stb r0, 0x6c(r31)
/* 800B051C 000AC35C 88 1E 01 14 */ lbz r0, 0x114(r30)
/* 800B0520 000AC360 98 1F 00 6D */ stb r0, 0x6d(r31)
/* 800B0524 000AC364 88 1E 01 15 */ lbz r0, 0x115(r30)
/* 800B0528 000AC368 98 1F 00 6E */ stb r0, 0x6e(r31)
/* 800B052C 000AC36C 88 1E 01 16 */ lbz r0, 0x116(r30)
/* 800B0530 000AC370 98 1F 00 6F */ stb r0, 0x6f(r31)
/* 800B0534 000AC374 88 1E 01 17 */ lbz r0, 0x117(r30)
/* 800B0538 000AC378 98 1F 00 70 */ stb r0, 0x70(r31)
/* 800B053C 000AC37C 88 1E 01 18 */ lbz r0, 0x118(r30)
/* 800B0540 000AC380 98 1F 00 71 */ stb r0, 0x71(r31)
/* 800B0544 000AC384 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 800B0548 000AC388 98 1F 00 72 */ stb r0, 0x72(r31)
/* 800B054C 000AC38C 88 1E 01 1A */ lbz r0, 0x11a(r30)
/* 800B0550 000AC390 98 1F 00 73 */ stb r0, 0x73(r31)
/* 800B0554 000AC394 88 1E 01 1B */ lbz r0, 0x11b(r30)
/* 800B0558 000AC398 98 1F 00 74 */ stb r0, 0x74(r31)
/* 800B055C 000AC39C D0 1F 00 78 */ stfs f0, 0x78(r31)
/* 800B0560 000AC3A0 C0 1E 01 20 */ lfs f0, 0x120(r30)
/* 800B0564 000AC3A4 D0 1F 00 7C */ stfs f0, 0x7c(r31)
/* 800B0568 000AC3A8 C0 1E 01 24 */ lfs f0, 0x124(r30)
/* 800B056C 000AC3AC D0 1F 00 80 */ stfs f0, 0x80(r31)
/* 800B0570 000AC3B0 C0 1E 01 28 */ lfs f0, 0x128(r30)
/* 800B0574 000AC3B4 D0 1F 00 84 */ stfs f0, 0x84(r31)
/* 800B0578 000AC3B8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800B057C 000AC3BC 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 800B0580 000AC3C0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800B0584 000AC3C4 7C 08 03 A6 */ mtlr r0
/* 800B0588 000AC3C8 38 21 00 10 */ addi r1, r1, 0x10
/* 800B058C 000AC3CC 4E 80 00 20 */ blr
.global __dt__Q34nw4r2ef15ParticleManagerFv
__dt__Q34nw4r2ef15ParticleManagerFv:
/* 800B0590 000AC3D0 4B FF 48 20 */ b __dt__Q34nw4r2ef7EmitterFv
/* 800B0594 000AC3D4 00 00 00 00 */ .4byte 0x00000000
/* 800B0598 000AC3D8 00 00 00 00 */ .4byte 0x00000000
/* 800B059C 000AC3DC 00 00 00 00 */ .4byte 0x00000000
.global CreateParticle__Q34nw4r2ef15ParticleManagerFUsQ34nw4r4math4VEC3Q34nw4r4math4VEC3PCQ34nw4r4math5MTX34fPCQ34nw4r2ef21EmitterInheritSettingPQ34nw4r2ef8ParticleUs
CreateParticle__Q34nw4r2ef15ParticleManagerFUsQ34nw4r4math4VEC3Q34nw4r4math4VEC3PCQ34nw4r4math5MTX34fPCQ34nw4r2ef21EmitterInheritSettingPQ34nw4r2ef8ParticleUs:
/* 800B05A0 000AC3E0 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 800B05A4 000AC3E4 7C 08 02 A6 */ mflr r0
/* 800B05A8 000AC3E8 90 01 00 54 */ stw r0, 0x54(r1)
/* 800B05AC 000AC3EC 39 61 00 48 */ addi r11, r1, 0x48
/* 800B05B0 000AC3F0 DB E1 00 48 */ stfd f31, 0x48(r1)
/* 800B05B4 000AC3F4 4B F5 6D 79 */ bl lbl_8000732C
/* 800B05B8 000AC3F8 81 63 00 20 */ lwz r11, 0x20(r3)
/* 800B05BC 000AC3FC 7C 7F 1B 78 */ mr r31, r3
/* 800B05C0 000AC400 FF E0 08 90 */ fmr f31, f1
/* 800B05C4 000AC404 7C 97 23 78 */ mr r23, r4
/* 800B05C8 000AC408 80 6B 00 BC */ lwz r3, 0xbc(r11)
/* 800B05CC 000AC40C 7C B8 2B 78 */ mr r24, r5
/* 800B05D0 000AC410 7C D9 33 78 */ mr r25, r6
/* 800B05D4 000AC414 7C FA 3B 78 */ mr r26, r7
/* 800B05D8 000AC418 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B05DC 000AC41C 7D 1B 43 78 */ mr r27, r8
/* 800B05E0 000AC420 7D 3C 4B 78 */ mr r28, r9
/* 800B05E4 000AC424 7D 5D 53 78 */ mr r29, r10
/* 800B05E8 000AC428 80 63 00 00 */ lwz r3, 0x0(r3)
/* 800B05EC 000AC42C 81 83 00 00 */ lwz r12, 0x0(r3)
/* 800B05F0 000AC430 81 8C 00 4C */ lwz r12, 0x4c(r12)
/* 800B05F4 000AC434 7D 89 03 A6 */ mtctr r12
/* 800B05F8 000AC438 4E 80 04 21 */ bctrl
/* 800B05FC 000AC43C 2C 03 00 00 */ cmpwi r3, 0x0
/* 800B0600 000AC440 7C 7E 1B 78 */ mr r30, r3
/* 800B0604 000AC444 40 82 00 0C */ bne lbl_800B0610
/* 800B0608 000AC448 38 60 00 00 */ li r3, 0x0
/* 800B060C 000AC44C 48 00 00 A4 */ b lbl_800B06B0
.global lbl_800B0610
lbl_800B0610:
/* 800B0610 000AC450 80 B9 00 00 */ lwz r5, 0x0(r25)
/* 800B0614 000AC454 FC 20 F8 90 */ fmr f1, f31
/* 800B0618 000AC458 80 19 00 04 */ lwz r0, 0x4(r25)
/* 800B061C 000AC45C 7E E4 BB 78 */ mr r4, r23
/* 800B0620 000AC460 90 01 00 0C */ stw r0, 0xc(r1)
/* 800B0624 000AC464 7F E7 FB 78 */ mr r7, r31
/* 800B0628 000AC468 7F 48 D3 78 */ mr r8, r26
/* 800B062C 000AC46C 90 A1 00 08 */ stw r5, 0x8(r1)
/* 800B0630 000AC470 7F 69 DB 78 */ mr r9, r27
/* 800B0634 000AC474 7F 8A E3 78 */ mr r10, r28
/* 800B0638 000AC478 38 A1 00 14 */ addi r5, r1, 0x14
/* 800B063C 000AC47C 80 19 00 08 */ lwz r0, 0x8(r25)
/* 800B0640 000AC480 38 C1 00 08 */ addi r6, r1, 0x8
/* 800B0644 000AC484 90 01 00 10 */ stw r0, 0x10(r1)
/* 800B0648 000AC488 81 78 00 00 */ lwz r11, 0x0(r24)
/* 800B064C 000AC48C 80 18 00 04 */ lwz r0, 0x4(r24)
/* 800B0650 000AC490 90 01 00 18 */ stw r0, 0x18(r1)
/* 800B0654 000AC494 91 61 00 14 */ stw r11, 0x14(r1)
/* 800B0658 000AC498 80 18 00 08 */ lwz r0, 0x8(r24)
/* 800B065C 000AC49C 90 01 00 1C */ stw r0, 0x1c(r1)
/* 800B0660 000AC4A0 81 83 00 1C */ lwz r12, 0x1c(r3)
/* 800B0664 000AC4A4 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 800B0668 000AC4A8 7D 89 03 A6 */ mtctr r12
/* 800B066C 000AC4AC 4E 80 04 21 */ bctrl
/* 800B0670 000AC4B0 2C 03 00 00 */ cmpwi r3, 0x0
/* 800B0674 000AC4B4 40 82 00 0C */ bne lbl_800B0680
/* 800B0678 000AC4B8 38 60 00 00 */ li r3, 0x0
/* 800B067C 000AC4BC 48 00 00 34 */ b lbl_800B06B0
.global lbl_800B0680
lbl_800B0680:
/* 800B0680 000AC4C0 A0 1E 00 E2 */ lhz r0, 0xe2(r30)
/* 800B0684 000AC4C4 7F C4 F3 78 */ mr r4, r30
/* 800B0688 000AC4C8 38 7F 00 38 */ addi r3, r31, 0x38
/* 800B068C 000AC4CC 7C 00 EA 14 */ add r0, r0, r29
/* 800B0690 000AC4D0 B0 1E 00 E2 */ sth r0, 0xe2(r30)
/* 800B0694 000AC4D4 4B FF 31 BD */ bl MEMAppendListObject
/* 800B0698 000AC4D8 A0 9F 00 50 */ lhz r4, 0x50(r31)
/* 800B069C 000AC4DC 38 00 00 01 */ li r0, 0x1
/* 800B06A0 000AC4E0 7F C3 F3 78 */ mr r3, r30
/* 800B06A4 000AC4E4 38 84 00 01 */ addi r4, r4, 0x1
/* 800B06A8 000AC4E8 B0 9F 00 50 */ sth r4, 0x50(r31)
/* 800B06AC 000AC4EC 90 1E 00 0C */ stw r0, 0xc(r30)
.global lbl_800B06B0
lbl_800B06B0:
/* 800B06B0 000AC4F0 39 61 00 48 */ addi r11, r1, 0x48
/* 800B06B4 000AC4F4 CB E1 00 48 */ lfd f31, 0x48(r1)
/* 800B06B8 000AC4F8 4B F5 6C C1 */ bl lbl_80007378
/* 800B06BC 000AC4FC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 800B06C0 000AC500 7C 08 03 A6 */ mtlr r0
/* 800B06C4 000AC504 38 21 00 50 */ addi r1, r1, 0x50
/* 800B06C8 000AC508 4E 80 00 20 */ blr
/* 800B06CC 000AC50C 00 00 00 00 */ .4byte 0x00000000
.global Calc__Q34nw4r2ef15ParticleManagerFv
Calc__Q34nw4r2ef15ParticleManagerFv:
/* 800B06D0 000AC510 94 21 FA 40 */ stwu r1, -0x5c0(r1)
/* 800B06D4 000AC514 7C 08 02 A6 */ mflr r0
/* 800B06D8 000AC518 90 01 05 C4 */ stw r0, 0x5c4(r1)
/* 800B06DC 000AC51C 39 61 05 00 */ addi r11, r1, 0x500
/* 800B06E0 000AC520 DB E1 05 B0 */ stfd f31, 0x5b0(r1)
/* 800B06E4 000AC524 F3 E1 05 B8 */ psq_st f31, 0x5b8(r1), 0, qr0
/* 800B06E8 000AC528 DB C1 05 A0 */ stfd f30, 0x5a0(r1)
/* 800B06EC 000AC52C F3 C1 05 A8 */ psq_st f30, 0x5a8(r1), 0, qr0
/* 800B06F0 000AC530 DB A1 05 90 */ stfd f29, 0x590(r1)
/* 800B06F4 000AC534 F3 A1 05 98 */ psq_st f29, 0x598(r1), 0, qr0
/* 800B06F8 000AC538 DB 81 05 80 */ stfd f28, 0x580(r1)
/* 800B06FC 000AC53C F3 81 05 88 */ psq_st f28, 0x588(r1), 0, qr0
/* 800B0700 000AC540 DB 61 05 70 */ stfd f27, 0x570(r1)
/* 800B0704 000AC544 F3 61 05 78 */ psq_st f27, 0x578(r1), 0, qr0
/* 800B0708 000AC548 DB 41 05 60 */ stfd f26, 0x560(r1)
/* 800B070C 000AC54C F3 41 05 68 */ psq_st f26, 0x568(r1), 0, qr0
/* 800B0710 000AC550 DB 21 05 50 */ stfd f25, 0x550(r1)
/* 800B0714 000AC554 F3 21 05 58 */ psq_st f25, 0x558(r1), 0, qr0
/* 800B0718 000AC558 DB 01 05 40 */ stfd f24, 0x540(r1)
/* 800B071C 000AC55C F3 01 05 48 */ psq_st f24, 0x548(r1), 0, qr0
/* 800B0720 000AC560 DA E1 05 30 */ stfd f23, 0x530(r1)
/* 800B0724 000AC564 F2 E1 05 38 */ psq_st f23, 0x538(r1), 0, qr0
/* 800B0728 000AC568 DA C1 05 20 */ stfd f22, 0x520(r1)
/* 800B072C 000AC56C F2 C1 05 28 */ psq_st f22, 0x528(r1), 0, qr0
/* 800B0730 000AC570 DA A1 05 10 */ stfd f21, 0x510(r1)
/* 800B0734 000AC574 F2 A1 05 18 */ psq_st f21, 0x518(r1), 0, qr0
/* 800B0738 000AC578 DA 81 05 00 */ stfd f20, 0x500(r1)
/* 800B073C 000AC57C F2 81 05 08 */ psq_st f20, 0x508(r1), 0, qr0
/* 800B0740 000AC580 4B F5 6B C9 */ bl __save_gpr
/* 800B0744 000AC584 3C 00 43 30 */ lis r0, 0x4330
/* 800B0748 000AC588 90 01 04 90 */ stw r0, 0x490(r1)
/* 800B074C 000AC58C 80 83 00 54 */ lwz r4, 0x54(r3)
/* 800B0750 000AC590 7C 6F 1B 78 */ mr r15, r3
/* 800B0754 000AC594 90 01 04 98 */ stw r0, 0x498(r1)
/* 800B0758 000AC598 38 63 00 38 */ addi r3, r3, 0x38
/* 800B075C 000AC59C 4B FF 31 D5 */ bl MEMGetNextListObject
/* 800B0760 000AC5A0 2C 03 00 00 */ cmpwi r3, 0x0
/* 800B0764 000AC5A4 90 61 04 A8 */ stw r3, 0x4a8(r1)
/* 800B0768 000AC5A8 41 82 14 40 */ beq lbl_800B1BA8
/* 800B076C 000AC5AC 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B0770 000AC5B0 82 A1 04 A8 */ lwz r21, 0x4a8(r1)
/* 800B0774 000AC5B4 80 63 00 BC */ lwz r3, 0xbc(r3)
/* 800B0778 000AC5B8 81 83 00 48 */ lwz r12, 0x48(r3)
/* 800B077C 000AC5BC 2C 0C 00 00 */ cmpwi r12, 0x0
/* 800B0780 000AC5C0 41 82 00 18 */ beq lbl_800B0798
/* 800B0784 000AC5C4 7D E3 7B 78 */ mr r3, r15
/* 800B0788 000AC5C8 7E A5 AB 78 */ mr r5, r21
/* 800B078C 000AC5CC 38 8F 00 38 */ addi r4, r15, 0x38
/* 800B0790 000AC5D0 7D 89 03 A6 */ mtctr r12
/* 800B0794 000AC5D4 4E 80 04 21 */ bctrl
.global lbl_800B0798
lbl_800B0798:
/* 800B0798 000AC5D8 88 0F 00 8A */ lbz r0, 0x8a(r15)
/* 800B079C 000AC5DC 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B07A0 000AC5E0 41 82 00 3C */ beq lbl_800B07DC
/* 800B07A4 000AC5E4 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B07A8 000AC5E8 38 81 01 C8 */ addi r4, r1, 0x1c8
/* 800B07AC 000AC5EC 4B FF 64 E5 */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B07B0 000AC5F0 81 0F 00 28 */ lwz r8, 0x28(r15)
/* 800B07B4 000AC5F4 38 6F 00 8C */ addi r3, r15, 0x8c
/* 800B07B8 000AC5F8 88 0F 00 88 */ lbz r0, 0x88(r15)
/* 800B07BC 000AC5FC 38 81 01 C8 */ addi r4, r1, 0x1c8
/* 800B07C0 000AC600 55 05 07 FE */ clrlwi r5, r8, 31
/* 800B07C4 000AC604 55 06 FF FE */ extrwi r6, r8, 1, 30
/* 800B07C8 000AC608 7C 07 07 74 */ extsb r7, r0
/* 800B07CC 000AC60C 55 08 F7 FE */ extrwi r8, r8, 1, 29
/* 800B07D0 000AC610 4B FF 62 81 */ bl RestructMatrix__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34PQ34nw4r4math5MTX34bbScb
/* 800B07D4 000AC614 38 00 00 00 */ li r0, 0x0
/* 800B07D8 000AC618 98 0F 00 8A */ stb r0, 0x8a(r15)
.global lbl_800B07DC
lbl_800B07DC:
/* 800B07DC 000AC61C 80 AF 00 8C */ lwz r5, 0x8c(r15)
/* 800B07E0 000AC620 38 61 04 60 */ addi r3, r1, 0x460
/* 800B07E4 000AC624 80 0F 00 90 */ lwz r0, 0x90(r15)
/* 800B07E8 000AC628 38 81 04 30 */ addi r4, r1, 0x430
/* 800B07EC 000AC62C 90 01 04 64 */ stw r0, 0x464(r1)
/* 800B07F0 000AC630 90 A1 04 60 */ stw r5, 0x460(r1)
/* 800B07F4 000AC634 80 AF 00 94 */ lwz r5, 0x94(r15)
/* 800B07F8 000AC638 80 0F 00 98 */ lwz r0, 0x98(r15)
/* 800B07FC 000AC63C 90 01 04 6C */ stw r0, 0x46c(r1)
/* 800B0800 000AC640 90 A1 04 68 */ stw r5, 0x468(r1)
/* 800B0804 000AC644 80 AF 00 9C */ lwz r5, 0x9c(r15)
/* 800B0808 000AC648 80 0F 00 A0 */ lwz r0, 0xa0(r15)
/* 800B080C 000AC64C 90 01 04 74 */ stw r0, 0x474(r1)
/* 800B0810 000AC650 90 A1 04 70 */ stw r5, 0x470(r1)
/* 800B0814 000AC654 80 AF 00 A4 */ lwz r5, 0xa4(r15)
/* 800B0818 000AC658 80 0F 00 A8 */ lwz r0, 0xa8(r15)
/* 800B081C 000AC65C 90 01 04 7C */ stw r0, 0x47c(r1)
/* 800B0820 000AC660 90 A1 04 78 */ stw r5, 0x478(r1)
/* 800B0824 000AC664 80 AF 00 AC */ lwz r5, 0xac(r15)
/* 800B0828 000AC668 80 0F 00 B0 */ lwz r0, 0xb0(r15)
/* 800B082C 000AC66C 90 01 04 84 */ stw r0, 0x484(r1)
/* 800B0830 000AC670 90 A1 04 80 */ stw r5, 0x480(r1)
/* 800B0834 000AC674 80 AF 00 B4 */ lwz r5, 0xb4(r15)
/* 800B0838 000AC678 80 0F 00 B8 */ lwz r0, 0xb8(r15)
/* 800B083C 000AC67C 90 01 04 8C */ stw r0, 0x48c(r1)
/* 800B0840 000AC680 90 A1 04 88 */ stw r5, 0x488(r1)
/* 800B0844 000AC684 4B F7 FF BD */ bl PSMTXInverse
/* 800B0848 000AC688 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B084C 000AC68C 38 81 04 00 */ addi r4, r1, 0x400
/* 800B0850 000AC690 4B FF 64 41 */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B0854 000AC694 C0 61 04 20 */ lfs f3, 0x420(r1)
/* 800B0858 000AC698 38 61 01 40 */ addi r3, r1, 0x140
/* 800B085C 000AC69C C0 21 04 24 */ lfs f1, 0x424(r1)
/* 800B0860 000AC6A0 C0 41 04 10 */ lfs f2, 0x410(r1)
/* 800B0864 000AC6A4 EC A3 08 2A */ fadds f5, f3, f1
/* 800B0868 000AC6A8 C0 01 04 14 */ lfs f0, 0x414(r1)
/* 800B086C 000AC6AC C0 21 04 00 */ lfs f1, 0x400(r1)
/* 800B0870 000AC6B0 EC 62 00 2A */ fadds f3, f2, f0
/* 800B0874 000AC6B4 C0 01 04 04 */ lfs f0, 0x404(r1)
/* 800B0878 000AC6B8 C0 81 04 28 */ lfs f4, 0x428(r1)
/* 800B087C 000AC6BC EC 21 00 2A */ fadds f1, f1, f0
/* 800B0880 000AC6C0 C0 41 04 18 */ lfs f2, 0x418(r1)
/* 800B0884 000AC6C4 C0 01 04 08 */ lfs f0, 0x408(r1)
/* 800B0888 000AC6C8 EC 84 28 2A */ fadds f4, f4, f5
/* 800B088C 000AC6CC EC 42 18 2A */ fadds f2, f2, f3
/* 800B0890 000AC6D0 EC 00 08 2A */ fadds f0, f0, f1
/* 800B0894 000AC6D4 D0 81 01 48 */ stfs f4, 0x148(r1)
/* 800B0898 000AC6D8 D0 41 01 44 */ stfs f2, 0x144(r1)
/* 800B089C 000AC6DC D0 01 01 40 */ stfs f0, 0x140(r1)
/* 800B08A0 000AC6E0 4B F8 0D 51 */ bl PSVECMag
/* 800B08A4 000AC6E4 C0 02 8B 00 */ lfs f0, "@11032_8055EA80"@sda21(r2)
/* 800B08A8 000AC6E8 38 61 04 30 */ addi r3, r1, 0x430
/* 800B08AC 000AC6EC 38 81 04 00 */ addi r4, r1, 0x400
/* 800B08B0 000AC6F0 38 A1 03 D0 */ addi r5, r1, 0x3d0
/* 800B08B4 000AC6F4 EE A0 00 72 */ fmuls f21, f0, f1
/* 800B08B8 000AC6F8 4B F7 FC 99 */ bl PSMTXConcat
/* 800B08BC 000AC6FC 38 61 03 D0 */ addi r3, r1, 0x3d0
/* 800B08C0 000AC700 38 81 03 A0 */ addi r4, r1, 0x3a0
/* 800B08C4 000AC704 4B F7 FF 3D */ bl PSMTXInverse
/* 800B08C8 000AC708 81 81 04 3C */ lwz r12, 0x43c(r1)
/* 800B08CC 000AC70C 38 61 03 70 */ addi r3, r1, 0x370
/* 800B08D0 000AC710 81 01 04 4C */ lwz r8, 0x44c(r1)
/* 800B08D4 000AC714 38 81 03 40 */ addi r4, r1, 0x340
/* 800B08D8 000AC718 80 01 04 5C */ lwz r0, 0x45c(r1)
/* 800B08DC 000AC71C 82 21 04 30 */ lwz r17, 0x430(r1)
/* 800B08E0 000AC720 82 01 04 34 */ lwz r16, 0x434(r1)
/* 800B08E4 000AC724 81 C1 04 38 */ lwz r14, 0x438(r1)
/* 800B08E8 000AC728 81 61 04 40 */ lwz r11, 0x440(r1)
/* 800B08EC 000AC72C 81 41 04 44 */ lwz r10, 0x444(r1)
/* 800B08F0 000AC730 81 21 04 48 */ lwz r9, 0x448(r1)
/* 800B08F4 000AC734 80 E1 04 50 */ lwz r7, 0x450(r1)
/* 800B08F8 000AC738 80 C1 04 54 */ lwz r6, 0x454(r1)
/* 800B08FC 000AC73C 80 A1 04 58 */ lwz r5, 0x458(r1)
/* 800B0900 000AC740 91 81 03 7C */ stw r12, 0x37c(r1)
/* 800B0904 000AC744 C0 02 8A FC */ lfs f0, "@10378"@sda21(r2)
/* 800B0908 000AC748 91 01 03 8C */ stw r8, 0x38c(r1)
/* 800B090C 000AC74C 90 01 03 9C */ stw r0, 0x39c(r1)
/* 800B0910 000AC750 92 21 03 70 */ stw r17, 0x370(r1)
/* 800B0914 000AC754 92 01 03 74 */ stw r16, 0x374(r1)
/* 800B0918 000AC758 91 C1 03 78 */ stw r14, 0x378(r1)
/* 800B091C 000AC75C 91 61 03 80 */ stw r11, 0x380(r1)
/* 800B0920 000AC760 91 41 03 84 */ stw r10, 0x384(r1)
/* 800B0924 000AC764 91 21 03 88 */ stw r9, 0x388(r1)
/* 800B0928 000AC768 90 E1 03 90 */ stw r7, 0x390(r1)
/* 800B092C 000AC76C 90 C1 03 94 */ stw r6, 0x394(r1)
/* 800B0930 000AC770 90 A1 03 98 */ stw r5, 0x398(r1)
/* 800B0934 000AC774 D0 01 03 7C */ stfs f0, 0x37c(r1)
/* 800B0938 000AC778 D0 01 03 8C */ stfs f0, 0x38c(r1)
/* 800B093C 000AC77C D0 01 03 9C */ stfs f0, 0x39c(r1)
/* 800B0940 000AC780 4B F7 FE C1 */ bl PSMTXInverse
/* 800B0944 000AC784 83 41 03 AC */ lwz r26, 0x3ac(r1)
/* 800B0948 000AC788 3B C1 00 B0 */ addi r30, r1, 0xb0
/* 800B094C 000AC78C 82 C1 03 BC */ lwz r22, 0x3bc(r1)
/* 800B0950 000AC790 82 01 03 CC */ lwz r16, 0x3cc(r1)
/* 800B0954 000AC794 81 41 03 DC */ lwz r10, 0x3dc(r1)
/* 800B0958 000AC798 80 C1 03 EC */ lwz r6, 0x3ec(r1)
/* 800B095C 000AC79C 80 01 03 FC */ lwz r0, 0x3fc(r1)
/* 800B0960 000AC7A0 93 41 03 1C */ stw r26, 0x31c(r1)
/* 800B0964 000AC7A4 3B 41 00 EC */ addi r26, r1, 0xec
/* 800B0968 000AC7A8 83 A1 03 A0 */ lwz r29, 0x3a0(r1)
/* 800B096C 000AC7AC 83 81 03 A4 */ lwz r28, 0x3a4(r1)
/* 800B0970 000AC7B0 83 61 03 A8 */ lwz r27, 0x3a8(r1)
/* 800B0974 000AC7B4 83 21 03 B0 */ lwz r25, 0x3b0(r1)
/* 800B0978 000AC7B8 83 01 03 B4 */ lwz r24, 0x3b4(r1)
/* 800B097C 000AC7BC 82 E1 03 B8 */ lwz r23, 0x3b8(r1)
/* 800B0980 000AC7C0 82 81 03 C0 */ lwz r20, 0x3c0(r1)
/* 800B0984 000AC7C4 82 41 03 C4 */ lwz r18, 0x3c4(r1)
/* 800B0988 000AC7C8 82 21 03 C8 */ lwz r17, 0x3c8(r1)
/* 800B098C 000AC7CC 81 C1 03 D0 */ lwz r14, 0x3d0(r1)
/* 800B0990 000AC7D0 81 81 03 D4 */ lwz r12, 0x3d4(r1)
/* 800B0994 000AC7D4 81 61 03 D8 */ lwz r11, 0x3d8(r1)
/* 800B0998 000AC7D8 81 21 03 E0 */ lwz r9, 0x3e0(r1)
/* 800B099C 000AC7DC 81 01 03 E4 */ lwz r8, 0x3e4(r1)
/* 800B09A0 000AC7E0 80 E1 03 E8 */ lwz r7, 0x3e8(r1)
/* 800B09A4 000AC7E4 80 A1 03 F0 */ lwz r5, 0x3f0(r1)
/* 800B09A8 000AC7E8 80 81 03 F4 */ lwz r4, 0x3f4(r1)
/* 800B09AC 000AC7EC 80 61 03 F8 */ lwz r3, 0x3f8(r1)
/* 800B09B0 000AC7F0 C2 C2 8A FC */ lfs f22, "@10378"@sda21(r2)
/* 800B09B4 000AC7F4 92 C1 03 2C */ stw r22, 0x32c(r1)
/* 800B09B8 000AC7F8 C3 22 8A F8 */ lfs f25, "@10377"@sda21(r2)
/* 800B09BC 000AC7FC 92 01 03 3C */ stw r16, 0x33c(r1)
/* 800B09C0 000AC800 CA E2 8B 28 */ lfd f23, "@11044"@sda21(r2)
/* 800B09C4 000AC804 91 41 02 EC */ stw r10, 0x2ec(r1)
/* 800B09C8 000AC808 C3 02 8B 04 */ lfs f24, "@11033"@sda21(r2)
/* 800B09CC 000AC80C 90 C1 02 FC */ stw r6, 0x2fc(r1)
/* 800B09D0 000AC810 CB 42 8B 30 */ lfd f26, "@11045"@sda21(r2)
/* 800B09D4 000AC814 90 01 03 0C */ stw r0, 0x30c(r1)
/* 800B09D8 000AC818 C3 62 8B 08 */ lfs f27, "@11034"@sda21(r2)
/* 800B09DC 000AC81C 93 A1 03 10 */ stw r29, 0x310(r1)
/* 800B09E0 000AC820 3B A1 00 F8 */ addi r29, r1, 0xf8
/* 800B09E4 000AC824 C3 82 8B 10 */ lfs f28, "@11036"@sda21(r2)
/* 800B09E8 000AC828 93 81 03 14 */ stw r28, 0x314(r1)
/* 800B09EC 000AC82C 3B 81 00 2C */ addi r28, r1, 0x2c
/* 800B09F0 000AC830 C3 A2 8B 0C */ lfs f29, "@11035"@sda21(r2)
/* 800B09F4 000AC834 93 61 03 18 */ stw r27, 0x318(r1)
/* 800B09F8 000AC838 3B 61 00 20 */ addi r27, r1, 0x20
/* 800B09FC 000AC83C C3 C2 8B 14 */ lfs f30, "@11037"@sda21(r2)
/* 800B0A00 000AC840 93 21 03 20 */ stw r25, 0x320(r1)
/* 800B0A04 000AC844 3B 21 01 10 */ addi r25, r1, 0x110
/* 800B0A08 000AC848 C3 E2 8B 20 */ lfs f31, "@11039"@sda21(r2)
/* 800B0A0C 000AC84C 93 01 03 24 */ stw r24, 0x324(r1)
/* 800B0A10 000AC850 3B 01 01 04 */ addi r24, r1, 0x104
/* 800B0A14 000AC854 91 C1 02 E0 */ stw r14, 0x2e0(r1)
/* 800B0A18 000AC858 39 C1 00 E0 */ addi r14, r1, 0xe0
/* 800B0A1C 000AC85C 92 E1 03 28 */ stw r23, 0x328(r1)
/* 800B0A20 000AC860 92 81 03 30 */ stw r20, 0x330(r1)
/* 800B0A24 000AC864 92 41 03 34 */ stw r18, 0x334(r1)
/* 800B0A28 000AC868 92 21 03 38 */ stw r17, 0x338(r1)
/* 800B0A2C 000AC86C D2 C1 03 1C */ stfs f22, 0x31c(r1)
/* 800B0A30 000AC870 D2 C1 03 2C */ stfs f22, 0x32c(r1)
/* 800B0A34 000AC874 D2 C1 03 3C */ stfs f22, 0x33c(r1)
/* 800B0A38 000AC878 91 81 02 E4 */ stw r12, 0x2e4(r1)
/* 800B0A3C 000AC87C 91 61 02 E8 */ stw r11, 0x2e8(r1)
/* 800B0A40 000AC880 91 21 02 F0 */ stw r9, 0x2f0(r1)
/* 800B0A44 000AC884 91 01 02 F4 */ stw r8, 0x2f4(r1)
/* 800B0A48 000AC888 90 E1 02 F8 */ stw r7, 0x2f8(r1)
/* 800B0A4C 000AC88C 90 A1 03 00 */ stw r5, 0x300(r1)
/* 800B0A50 000AC890 90 81 03 04 */ stw r4, 0x304(r1)
/* 800B0A54 000AC894 90 61 03 08 */ stw r3, 0x308(r1)
/* 800B0A58 000AC898 D2 C1 02 EC */ stfs f22, 0x2ec(r1)
/* 800B0A5C 000AC89C D2 C1 02 FC */ stfs f22, 0x2fc(r1)
/* 800B0A60 000AC8A0 D2 C1 03 0C */ stfs f22, 0x30c(r1)
/* 800B0A64 000AC8A4 48 00 11 04 */ b lbl_800B1B68
.global lbl_800B0A68
lbl_800B0A68:
/* 800B0A68 000AC8A8 A0 6F 00 42 */ lhz r3, 0x42(r15)
/* 800B0A6C 000AC8AC 80 15 00 0C */ lwz r0, 0xc(r21)
/* 800B0A70 000AC8B0 7C 75 1A 14 */ add r3, r21, r3
/* 800B0A74 000AC8B4 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B0A78 000AC8B8 80 03 00 04 */ lwz r0, 0x4(r3)
/* 800B0A7C 000AC8BC 90 01 04 A4 */ stw r0, 0x4a4(r1)
/* 800B0A80 000AC8C0 40 82 10 E4 */ bne lbl_800B1B64
/* 800B0A84 000AC8C4 80 15 00 D8 */ lwz r0, 0xd8(r21)
/* 800B0A88 000AC8C8 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0A8C 000AC8CC 40 82 10 D8 */ bne lbl_800B1B64
/* 800B0A90 000AC8D0 38 00 00 01 */ li r0, 0x1
/* 800B0A94 000AC8D4 90 15 00 D8 */ stw r0, 0xd8(r21)
/* 800B0A98 000AC8D8 A0 15 00 E2 */ lhz r0, 0xe2(r21)
/* 800B0A9C 000AC8DC 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0AA0 000AC8E0 41 82 00 18 */ beq lbl_800B0AB8
/* 800B0AA4 000AC8E4 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B0AA8 000AC8E8 80 63 00 BC */ lwz r3, 0xbc(r3)
/* 800B0AAC 000AC8EC 80 03 00 50 */ lwz r0, 0x50(r3)
/* 800B0AB0 000AC8F0 64 00 00 01 */ oris r0, r0, 0x1
/* 800B0AB4 000AC8F4 90 03 00 50 */ stw r0, 0x50(r3)
.global lbl_800B0AB8
lbl_800B0AB8:
/* 800B0AB8 000AC8F8 80 75 00 AC */ lwz r3, 0xac(r21)
/* 800B0ABC 000AC8FC 80 15 00 B0 */ lwz r0, 0xb0(r21)
/* 800B0AC0 000AC900 90 01 01 38 */ stw r0, 0x138(r1)
/* 800B0AC4 000AC904 90 61 01 34 */ stw r3, 0x134(r1)
/* 800B0AC8 000AC908 38 61 00 98 */ addi r3, r1, 0x98
/* 800B0ACC 000AC90C 80 15 00 B4 */ lwz r0, 0xb4(r21)
/* 800B0AD0 000AC910 90 01 01 3C */ stw r0, 0x13c(r1)
/* 800B0AD4 000AC914 80 D5 00 A0 */ lwz r6, 0xa0(r21)
/* 800B0AD8 000AC918 80 B5 00 A4 */ lwz r5, 0xa4(r21)
/* 800B0ADC 000AC91C 80 95 00 A8 */ lwz r4, 0xa8(r21)
/* 800B0AE0 000AC920 E0 55 00 AC */ psq_l f2, 0xac(r21), 0, qr0
/* 800B0AE4 000AC924 E0 35 00 B8 */ psq_l f1, 0xb8(r21), 0, qr0
/* 800B0AE8 000AC928 C0 15 00 AC */ lfs f0, 0xac(r21)
/* 800B0AEC 000AC92C 10 62 08 28 */ ps_sub f3, f2, f1
/* 800B0AF0 000AC930 E0 55 80 B4 */ psq_l f2, 0xb4(r21), 1, qr0
/* 800B0AF4 000AC934 E0 35 80 C0 */ psq_l f1, 0xc0(r21), 1, qr0
/* 800B0AF8 000AC938 F0 63 00 00 */ psq_st f3, 0x0(r3), 0, qr0
/* 800B0AFC 000AC93C 10 62 08 28 */ ps_sub f3, f2, f1
/* 800B0B00 000AC940 D0 15 00 B8 */ stfs f0, 0xb8(r21)
/* 800B0B04 000AC944 C0 41 00 98 */ lfs f2, 0x98(r1)
/* 800B0B08 000AC948 C0 15 00 B0 */ lfs f0, 0xb0(r21)
/* 800B0B0C 000AC94C D0 15 00 BC */ stfs f0, 0xbc(r21)
/* 800B0B10 000AC950 C0 21 00 9C */ lfs f1, 0x9c(r1)
/* 800B0B14 000AC954 C0 15 00 B4 */ lfs f0, 0xb4(r21)
/* 800B0B18 000AC958 D0 15 00 C0 */ stfs f0, 0xc0(r21)
/* 800B0B1C 000AC95C F0 63 80 08 */ psq_st f3, 0x8(r3), 1, qr0
/* 800B0B20 000AC960 A0 75 00 E0 */ lhz r3, 0xe0(r21)
/* 800B0B24 000AC964 A0 15 00 DC */ lhz r0, 0xdc(r21)
/* 800B0B28 000AC968 C0 01 00 A0 */ lfs f0, 0xa0(r1)
/* 800B0B2C 000AC96C 7C 03 00 40 */ cmplw r3, r0
/* 800B0B30 000AC970 90 C1 01 28 */ stw r6, 0x128(r1)
/* 800B0B34 000AC974 90 A1 01 2C */ stw r5, 0x12c(r1)
/* 800B0B38 000AC978 90 81 01 30 */ stw r4, 0x130(r1)
/* 800B0B3C 000AC97C D0 41 01 1C */ stfs f2, 0x11c(r1)
/* 800B0B40 000AC980 D0 21 01 20 */ stfs f1, 0x120(r1)
/* 800B0B44 000AC984 D0 01 01 24 */ stfs f0, 0x124(r1)
/* 800B0B48 000AC988 41 81 00 5C */ bgt lbl_800B0BA4
/* 800B0B4C 000AC98C 80 15 00 0C */ lwz r0, 0xc(r21)
/* 800B0B50 000AC990 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B0B54 000AC994 40 82 10 10 */ bne lbl_800B1B64
/* 800B0B58 000AC998 A0 8F 00 50 */ lhz r4, 0x50(r15)
/* 800B0B5C 000AC99C 7E A3 AB 78 */ mr r3, r21
/* 800B0B60 000AC9A0 38 04 FF FF */ addi r0, r4, -0x1
/* 800B0B64 000AC9A4 B0 0F 00 50 */ sth r0, 0x50(r15)
/* 800B0B68 000AC9A8 81 95 00 1C */ lwz r12, 0x1c(r21)
/* 800B0B6C 000AC9AC 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 800B0B70 000AC9B0 7D 89 03 A6 */ mtctr r12
/* 800B0B74 000AC9B4 4E 80 04 21 */ bctrl
/* 800B0B78 000AC9B8 38 00 00 02 */ li r0, 0x2
/* 800B0B7C 000AC9BC 90 15 00 0C */ stw r0, 0xc(r21)
/* 800B0B80 000AC9C0 80 15 00 10 */ lwz r0, 0x10(r21)
/* 800B0B84 000AC9C4 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0B88 000AC9C8 40 82 0F DC */ bne lbl_800B1B64
/* 800B0B8C 000AC9CC 81 95 00 1C */ lwz r12, 0x1c(r21)
/* 800B0B90 000AC9D0 7E A3 AB 78 */ mr r3, r21
/* 800B0B94 000AC9D4 81 8C 00 08 */ lwz r12, 0x8(r12)
/* 800B0B98 000AC9D8 7D 89 03 A6 */ mtctr r12
/* 800B0B9C 000AC9DC 4E 80 04 21 */ bctrl
/* 800B0BA0 000AC9E0 48 00 0F C4 */ b lbl_800B1B64
.global lbl_800B0BA4
lbl_800B0BA4:
/* 800B0BA4 000AC9E4 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0BA8 000AC9E8 38 00 00 00 */ li r0, 0x0
/* 800B0BAC 000AC9EC D2 C1 01 10 */ stfs f22, 0x110(r1)
/* 800B0BB0 000AC9F0 3A C0 00 00 */ li r22, 0x0
/* 800B0BB4 000AC9F4 90 01 04 A0 */ stw r0, 0x4a0(r1)
/* 800B0BB8 000AC9F8 D2 C1 01 14 */ stfs f22, 0x114(r1)
/* 800B0BBC 000AC9FC D2 C1 01 18 */ stfs f22, 0x118(r1)
/* 800B0BC0 000ACA00 D2 C1 01 04 */ stfs f22, 0x104(r1)
/* 800B0BC4 000ACA04 D2 C1 01 08 */ stfs f22, 0x108(r1)
/* 800B0BC8 000ACA08 D2 C1 01 0C */ stfs f22, 0x10c(r1)
/* 800B0BCC 000ACA0C 40 82 00 0C */ bne lbl_800B0BD8
/* 800B0BD0 000ACA10 3A 80 00 00 */ li r20, 0x0
/* 800B0BD4 000ACA14 48 00 0B 74 */ b lbl_800B1748
.global lbl_800B0BD8
lbl_800B0BD8:
/* 800B0BD8 000ACA18 80 6F 00 24 */ lwz r3, 0x24(r15)
/* 800B0BDC 000ACA1C 80 03 00 04 */ lwz r0, 0x4(r3)
/* 800B0BE0 000ACA20 7C 60 1A 14 */ add r3, r0, r3
/* 800B0BE4 000ACA24 84 03 00 08 */ lwzu r0, 0x8(r3)
/* 800B0BE8 000ACA28 7C 60 1A 14 */ add r3, r0, r3
/* 800B0BEC 000ACA2C A2 83 00 06 */ lhz r20, 0x6(r3)
/* 800B0BF0 000ACA30 48 00 0B 58 */ b lbl_800B1748
.global lbl_800B0BF4
lbl_800B0BF4:
/* 800B0BF4 000ACA34 7C 65 30 2E */ lwzx r3, r5, r6
/* 800B0BF8 000ACA38 7C 85 32 14 */ add r4, r5, r6
/* 800B0BFC 000ACA3C 56 80 13 BA */ rlwinm r0, r20, 2, 14, 29
/* 800B0C00 000ACA40 7C 63 22 14 */ add r3, r3, r4
/* 800B0C04 000ACA44 38 63 00 04 */ addi r3, r3, 0x4
/* 800B0C08 000ACA48 7C 63 02 14 */ add r3, r3, r0
/* 800B0C0C 000ACA4C 82 E3 00 04 */ lwz r23, 0x4(r3)
/* 800B0C10 000ACA50 88 77 00 04 */ lbz r3, 0x4(r23)
/* 800B0C14 000ACA54 54 60 07 39 */ rlwinm. r0, r3, 0, 28, 28
/* 800B0C18 000ACA58 40 82 0B 2C */ bne lbl_800B1744
/* 800B0C1C 000ACA5C 54 60 06 F7 */ rlwinm. r0, r3, 0, 27, 27
/* 800B0C20 000ACA60 41 82 00 30 */ beq lbl_800B0C50
/* 800B0C24 000ACA64 80 75 00 C8 */ lwz r3, 0xc8(r21)
/* 800B0C28 000ACA68 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B0C2C 000ACA6C 80 03 00 20 */ lwz r0, 0x20(r3)
/* 800B0C30 000ACA70 82 43 00 E4 */ lwz r18, 0xe4(r3)
/* 800B0C34 000ACA74 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29
/* 800B0C38 000ACA78 41 82 00 0C */ beq lbl_800B0C44
/* 800B0C3C 000ACA7C 3A 20 FF FF */ li r17, -0x1
/* 800B0C40 000ACA80 48 00 00 08 */ b lbl_800B0C48
.global lbl_800B0C44
lbl_800B0C44:
/* 800B0C44 000ACA84 A2 23 00 3C */ lhz r17, 0x3c(r3)
.global lbl_800B0C48
lbl_800B0C48:
/* 800B0C48 000ACA88 A2 03 00 EA */ lhz r16, 0xea(r3)
/* 800B0C4C 000ACA8C 48 00 00 10 */ b lbl_800B0C5C
.global lbl_800B0C50
lbl_800B0C50:
/* 800B0C50 000ACA90 A2 55 00 DC */ lhz r18, 0xdc(r21)
/* 800B0C54 000ACA94 A2 35 00 E0 */ lhz r17, 0xe0(r21)
/* 800B0C58 000ACA98 A2 15 00 DE */ lhz r16, 0xde(r21)
.global lbl_800B0C5C
lbl_800B0C5C:
/* 800B0C5C 000ACA9C 88 77 00 00 */ lbz r3, 0x0(r23)
/* 800B0C60 000ACAA0 38 03 00 55 */ addi r0, r3, 0x55
/* 800B0C64 000ACAA4 54 00 06 3E */ clrlwi r0, r0, 24
/* 800B0C68 000ACAA8 28 00 00 01 */ cmplwi r0, 0x1
/* 800B0C6C 000ACAAC 41 81 0A D8 */ bgt lbl_800B1744
/* 800B0C70 000ACAB0 88 17 00 02 */ lbz r0, 0x2(r23)
/* 800B0C74 000ACAB4 8B F7 00 01 */ lbz r31, 0x1(r23)
/* 800B0C78 000ACAB8 2C 00 00 04 */ cmpwi r0, 0x4
/* 800B0C7C 000ACABC 41 82 00 38 */ beq lbl_800B0CB4
/* 800B0C80 000ACAC0 2C 00 00 05 */ cmpwi r0, 0x5
/* 800B0C84 000ACAC4 41 82 00 4C */ beq lbl_800B0CD0
/* 800B0C88 000ACAC8 2C 00 00 06 */ cmpwi r0, 0x6
/* 800B0C8C 000ACACC 41 82 00 60 */ beq lbl_800B0CEC
/* 800B0C90 000ACAD0 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0C94 000ACAD4 41 82 00 74 */ beq lbl_800B0D08
/* 800B0C98 000ACAD8 2C 00 00 03 */ cmpwi r0, 0x3
/* 800B0C9C 000ACADC 41 82 00 8C */ beq lbl_800B0D28
/* 800B0CA0 000ACAE0 2C 00 00 07 */ cmpwi r0, 0x7
/* 800B0CA4 000ACAE4 41 82 00 A4 */ beq lbl_800B0D48
/* 800B0CA8 000ACAE8 2C 00 00 02 */ cmpwi r0, 0x2
/* 800B0CAC 000ACAEC 41 82 0A 0C */ beq lbl_800B16B8
/* 800B0CB0 000ACAF0 48 00 0A 94 */ b lbl_800B1744
.global lbl_800B0CB4
lbl_800B0CB4:
/* 800B0CB4 000ACAF4 7E E3 BB 78 */ mr r3, r23
/* 800B0CB8 000ACAF8 7E A4 AB 78 */ mr r4, r21
/* 800B0CBC 000ACAFC 7E 45 93 78 */ mr r5, r18
/* 800B0CC0 000ACB00 7E 06 83 78 */ mr r6, r16
/* 800B0CC4 000ACB04 7E 27 8B 78 */ mr r7, r17
/* 800B0CC8 000ACB08 4B FF 95 B9 */ bl AnimCurveExecuteTexture__Q24nw4r2efFPUcPQ34nw4r2ef8ParticleUlUsUl
/* 800B0CCC 000ACB0C 48 00 0A 78 */ b lbl_800B1744
.global lbl_800B0CD0
lbl_800B0CD0:
/* 800B0CD0 000ACB10 7E E3 BB 78 */ mr r3, r23
/* 800B0CD4 000ACB14 7E A4 AB 78 */ mr r4, r21
/* 800B0CD8 000ACB18 7E 45 93 78 */ mr r5, r18
/* 800B0CDC 000ACB1C 7E 06 83 78 */ mr r6, r16
/* 800B0CE0 000ACB20 7E 27 8B 78 */ mr r7, r17
/* 800B0CE4 000ACB24 4B FF 9C ED */ bl AnimCurveExecuteChild__Q24nw4r2efFPUcPQ34nw4r2ef8ParticleUlUsUl
/* 800B0CE8 000ACB28 48 00 0A 5C */ b lbl_800B1744
.global lbl_800B0CEC
lbl_800B0CEC:
/* 800B0CEC 000ACB2C 7E E3 BB 78 */ mr r3, r23
/* 800B0CF0 000ACB30 7E 45 93 78 */ mr r5, r18
/* 800B0CF4 000ACB34 7E 06 83 78 */ mr r6, r16
/* 800B0CF8 000ACB38 7E 27 8B 78 */ mr r7, r17
/* 800B0CFC 000ACB3C 38 95 00 40 */ addi r4, r21, 0x40
/* 800B0D00 000ACB40 4B FF 84 A1 */ bl AnimCurveExecuteRotate__Q24nw4r2efFPUcPfUlUsUl
/* 800B0D04 000ACB44 48 00 0A 40 */ b lbl_800B1744
.global lbl_800B0D08
lbl_800B0D08:
/* 800B0D08 000ACB48 7C 95 FA 14 */ add r4, r21, r31
/* 800B0D0C 000ACB4C 7E E3 BB 78 */ mr r3, r23
/* 800B0D10 000ACB50 7E 45 93 78 */ mr r5, r18
/* 800B0D14 000ACB54 7E 06 83 78 */ mr r6, r16
/* 800B0D18 000ACB58 7E 27 8B 78 */ mr r7, r17
/* 800B0D1C 000ACB5C 38 84 00 20 */ addi r4, r4, 0x20
/* 800B0D20 000ACB60 4B FF 61 D1 */ bl AnimCurveExecuteU8__Q24nw4r2efFPUcPUcUlUsUl
/* 800B0D24 000ACB64 48 00 0A 20 */ b lbl_800B1744
.global lbl_800B0D28
lbl_800B0D28:
/* 800B0D28 000ACB68 7C 95 FA 14 */ add r4, r21, r31
/* 800B0D2C 000ACB6C 7E E3 BB 78 */ mr r3, r23
/* 800B0D30 000ACB70 7E 45 93 78 */ mr r5, r18
/* 800B0D34 000ACB74 7E 06 83 78 */ mr r6, r16
/* 800B0D38 000ACB78 7E 27 8B 78 */ mr r7, r17
/* 800B0D3C 000ACB7C 38 84 00 20 */ addi r4, r4, 0x20
/* 800B0D40 000ACB80 4B FF 74 91 */ bl AnimCurveExecuteF32__Q24nw4r2efFPUcPfUlUsUl
/* 800B0D44 000ACB84 48 00 0A 00 */ b lbl_800B1744
.global lbl_800B0D48
lbl_800B0D48:
/* 800B0D48 000ACB88 80 17 00 0C */ lwz r0, 0xc(r23)
/* 800B0D4C 000ACB8C 38 61 01 4C */ addi r3, r1, 0x14c
/* 800B0D50 000ACB90 80 D7 00 10 */ lwz r6, 0x10(r23)
/* 800B0D54 000ACB94 38 A0 00 1C */ li r5, 0x1c
/* 800B0D58 000ACB98 7C 97 02 14 */ add r4, r23, r0
/* 800B0D5C 000ACB9C 80 F7 00 14 */ lwz r7, 0x14(r23)
/* 800B0D60 000ACBA0 38 04 00 20 */ addi r0, r4, 0x20
/* 800B0D64 000ACBA4 80 97 00 18 */ lwz r4, 0x18(r23)
/* 800B0D68 000ACBA8 7C 00 32 14 */ add r0, r0, r6
/* 800B0D6C 000ACBAC 7C 00 3A 14 */ add r0, r0, r7
/* 800B0D70 000ACBB0 7C 80 22 14 */ add r4, r0, r4
/* 800B0D74 000ACBB4 4B F5 32 8D */ bl memcpy
/* 800B0D78 000ACBB8 80 17 00 0C */ lwz r0, 0xc(r23)
/* 800B0D7C 000ACBBC 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0D80 000ACBC0 41 82 00 1C */ beq lbl_800B0D9C
/* 800B0D84 000ACBC4 7E E3 BB 78 */ mr r3, r23
/* 800B0D88 000ACBC8 7E 45 93 78 */ mr r5, r18
/* 800B0D8C 000ACBCC 7E 06 83 78 */ mr r6, r16
/* 800B0D90 000ACBD0 7E 27 8B 78 */ mr r7, r17
/* 800B0D94 000ACBD4 38 81 01 50 */ addi r4, r1, 0x150
/* 800B0D98 000ACBD8 4B FF 74 39 */ bl AnimCurveExecuteF32__Q24nw4r2efFPUcPfUlUsUl
.global lbl_800B0D9C
lbl_800B0D9C:
/* 800B0D9C 000ACBDC 28 1F 00 06 */ cmplwi r31, 0x6
/* 800B0DA0 000ACBE0 41 82 00 14 */ beq lbl_800B0DB4
/* 800B0DA4 000ACBE4 38 1F 00 FE */ addi r0, r31, 0xfe
/* 800B0DA8 000ACBE8 54 00 06 3E */ clrlwi r0, r0, 24
/* 800B0DAC 000ACBEC 28 00 00 02 */ cmplwi r0, 0x2
/* 800B0DB0 000ACBF0 41 81 00 8C */ bgt lbl_800B0E3C
.global lbl_800B0DB4
lbl_800B0DB4:
/* 800B0DB4 000ACBF4 88 01 01 4C */ lbz r0, 0x14c(r1)
/* 800B0DB8 000ACBF8 28 00 00 01 */ cmplwi r0, 0x1
/* 800B0DBC 000ACBFC 40 82 00 18 */ bne lbl_800B0DD4
/* 800B0DC0 000ACC00 38 61 03 A0 */ addi r3, r1, 0x3a0
/* 800B0DC4 000ACC04 38 81 01 34 */ addi r4, r1, 0x134
/* 800B0DC8 000ACC08 7F C5 F3 78 */ mr r5, r30
/* 800B0DCC 000ACC0C 4B F8 03 25 */ bl PSMTXMultVec
/* 800B0DD0 000ACC10 48 00 00 54 */ b lbl_800B0E24
.global lbl_800B0DD4
lbl_800B0DD4:
/* 800B0DD4 000ACC14 38 61 04 60 */ addi r3, r1, 0x460
/* 800B0DD8 000ACC18 38 81 01 34 */ addi r4, r1, 0x134
/* 800B0DDC 000ACC1C 7F C5 F3 78 */ mr r5, r30
/* 800B0DE0 000ACC20 4B F8 03 11 */ bl PSMTXMultVec
/* 800B0DE4 000ACC24 38 81 00 8C */ addi r4, r1, 0x8c
/* 800B0DE8 000ACC28 D2 C1 00 8C */ stfs f22, 0x8c(r1)
/* 800B0DEC 000ACC2C 38 61 04 00 */ addi r3, r1, 0x400
/* 800B0DF0 000ACC30 D2 C1 00 90 */ stfs f22, 0x90(r1)
/* 800B0DF4 000ACC34 7C 85 23 78 */ mr r5, r4
/* 800B0DF8 000ACC38 D2 C1 00 94 */ stfs f22, 0x94(r1)
/* 800B0DFC 000ACC3C 4B F8 02 F5 */ bl PSMTXMultVec
/* 800B0E00 000ACC40 38 61 00 8C */ addi r3, r1, 0x8c
/* 800B0E04 000ACC44 E0 1E 00 00 */ psq_l f0, 0x0(r30), 0, qr0
/* 800B0E08 000ACC48 E0 23 00 00 */ psq_l f1, 0x0(r3), 0, qr0
/* 800B0E0C 000ACC4C 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B0E10 000ACC50 E0 1E 80 08 */ psq_l f0, 0x8(r30), 1, qr0
/* 800B0E14 000ACC54 E0 23 80 08 */ psq_l f1, 0x8(r3), 1, qr0
/* 800B0E18 000ACC58 F0 5E 00 00 */ psq_st f2, 0x0(r30), 0, qr0
/* 800B0E1C 000ACC5C 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B0E20 000ACC60 F0 5E 80 08 */ psq_st f2, 0x8(r30), 1, qr0
.global lbl_800B0E24
lbl_800B0E24:
/* 800B0E24 000ACC64 C0 41 00 B0 */ lfs f2, 0xb0(r1)
/* 800B0E28 000ACC68 C0 21 00 B4 */ lfs f1, 0xb4(r1)
/* 800B0E2C 000ACC6C C0 01 00 B8 */ lfs f0, 0xb8(r1)
/* 800B0E30 000ACC70 D0 41 00 F8 */ stfs f2, 0xf8(r1)
/* 800B0E34 000ACC74 D0 21 00 FC */ stfs f1, 0xfc(r1)
/* 800B0E38 000ACC78 D0 01 01 00 */ stfs f0, 0x100(r1)
.global lbl_800B0E3C
lbl_800B0E3C:
/* 800B0E3C 000ACC7C 28 1F 00 08 */ cmplwi r31, 0x8
/* 800B0E40 000ACC80 D2 C1 00 EC */ stfs f22, 0xec(r1)
/* 800B0E44 000ACC84 D2 C1 00 F0 */ stfs f22, 0xf0(r1)
/* 800B0E48 000ACC88 D2 C1 00 F4 */ stfs f22, 0xf4(r1)
/* 800B0E4C 000ACC8C 41 81 07 9C */ bgt lbl_800B15E8
/* 800B0E50 000ACC90 3C 60 80 44 */ lis r3, "@11043"@ha
/* 800B0E54 000ACC94 57 E0 10 3A */ slwi r0, r31, 2
/* 800B0E58 000ACC98 38 63 03 20 */ addi r3, r3, "@11043"@l
/* 800B0E5C 000ACC9C 7C 63 00 2E */ lwzx r3, r3, r0
/* 800B0E60 000ACCA0 7C 69 03 A6 */ mtctr r3
/* 800B0E64 000ACCA4 4E 80 04 20 */ bctr
.global lbl_800B0E68
lbl_800B0E68:
/* 800B0E68 000ACCA8 C0 01 01 50 */ lfs f0, 0x150(r1)
/* 800B0E6C 000ACCAC 38 61 01 28 */ addi r3, r1, 0x128
/* 800B0E70 000ACCB0 E0 23 00 00 */ psq_l f1, 0x0(r3), 0, qr0
/* 800B0E74 000ACCB4 EC 40 C8 28 */ fsubs f2, f0, f25
/* 800B0E78 000ACCB8 10 01 00 98 */ ps_muls0 f0, f1, f2
/* 800B0E7C 000ACCBC E0 23 80 08 */ psq_l f1, 0x8(r3), 1, qr0
/* 800B0E80 000ACCC0 F0 1A 00 00 */ psq_st f0, 0x0(r26), 0, qr0
/* 800B0E84 000ACCC4 10 01 00 98 */ ps_muls0 f0, f1, f2
/* 800B0E88 000ACCC8 F0 1A 80 08 */ psq_st f0, 0x8(r26), 1, qr0
/* 800B0E8C 000ACCCC 48 00 07 5C */ b lbl_800B15E8
.global lbl_800B0E90
lbl_800B0E90:
/* 800B0E90 000ACCD0 C0 41 01 54 */ lfs f2, 0x154(r1)
/* 800B0E94 000ACCD4 38 61 00 80 */ addi r3, r1, 0x80
/* 800B0E98 000ACCD8 C0 21 01 58 */ lfs f1, 0x158(r1)
/* 800B0E9C 000ACCDC 38 81 00 EC */ addi r4, r1, 0xec
/* 800B0EA0 000ACCE0 C0 01 01 5C */ lfs f0, 0x15c(r1)
/* 800B0EA4 000ACCE4 D0 41 00 80 */ stfs f2, 0x80(r1)
/* 800B0EA8 000ACCE8 D0 21 00 84 */ stfs f1, 0x84(r1)
/* 800B0EAC 000ACCEC D0 01 00 88 */ stfs f0, 0x88(r1)
/* 800B0EB0 000ACCF0 48 00 2C 91 */ bl Rotation2VecY__Q24nw4r2efFRCQ34nw4r4math4VEC3PQ34nw4r4math4VEC3
/* 800B0EB4 000ACCF4 C0 41 01 50 */ lfs f2, 0x150(r1)
/* 800B0EB8 000ACCF8 E0 3A 00 00 */ psq_l f1, 0x0(r26), 0, qr0
/* 800B0EBC 000ACCFC 10 01 00 98 */ ps_muls0 f0, f1, f2
/* 800B0EC0 000ACD00 E0 3A 80 08 */ psq_l f1, 0x8(r26), 1, qr0
/* 800B0EC4 000ACD04 F0 1A 00 00 */ psq_st f0, 0x0(r26), 0, qr0
/* 800B0EC8 000ACD08 10 01 00 98 */ ps_muls0 f0, f1, f2
/* 800B0ECC 000ACD0C F0 1A 80 08 */ psq_st f0, 0x8(r26), 1, qr0
/* 800B0ED0 000ACD10 48 00 07 18 */ b lbl_800B15E8
.global lbl_800B0ED4
lbl_800B0ED4:
/* 800B0ED4 000ACD14 3C 60 3F 82 */ lis r3, 0x3f82
/* 800B0ED8 000ACD18 A0 17 00 06 */ lhz r0, 0x6(r23)
/* 800B0EDC 000ACD1C 38 E3 F6 35 */ addi r7, r3, -0x9cb
/* 800B0EE0 000ACD20 56 45 04 3E */ clrlwi r5, r18, 16
/* 800B0EE4 000ACD24 3C 60 30 A7 */ lis r3, 0x30a7
/* 800B0EE8 000ACD28 38 C3 41 93 */ addi r6, r3, 0x4193
/* 800B0EEC 000ACD2C 3C 60 37 11 */ lis r3, 0x3711
/* 800B0EF0 000ACD30 38 83 97 E7 */ addi r4, r3, -0x6819
/* 800B0EF4 000ACD34 88 77 00 04 */ lbz r3, 0x4(r23)
/* 800B0EF8 000ACD38 7C 85 21 D6 */ mullw r4, r5, r4
/* 800B0EFC 000ACD3C 54 63 06 F7 */ rlwinm. r3, r3, 0, 27, 27
/* 800B0F00 000ACD40 7C B0 39 D6 */ mullw r5, r16, r7
/* 800B0F04 000ACD44 3C 64 00 05 */ addis r3, r4, 0x5
/* 800B0F08 000ACD48 7C 00 31 D6 */ mullw r0, r0, r6
/* 800B0F0C 000ACD4C 7C 05 02 14 */ add r0, r5, r0
/* 800B0F10 000ACD50 7C 60 1A 14 */ add r3, r0, r3
/* 800B0F14 000ACD54 38 03 BF 53 */ addi r0, r3, -0x40ad
/* 800B0F18 000ACD58 90 01 00 1C */ stw r0, 0x1c(r1)
/* 800B0F1C 000ACD5C 88 81 00 1E */ lbz r4, 0x1e(r1)
/* 800B0F20 000ACD60 88 01 00 1F */ lbz r0, 0x1f(r1)
/* 800B0F24 000ACD64 88 61 00 1D */ lbz r3, 0x1d(r1)
/* 800B0F28 000ACD68 7C 84 02 78 */ xor r4, r4, r0
/* 800B0F2C 000ACD6C 88 01 00 1C */ lbz r0, 0x1c(r1)
/* 800B0F30 000ACD70 7C 63 22 78 */ xor r3, r3, r4
/* 800B0F34 000ACD74 98 81 00 1E */ stb r4, 0x1e(r1)
/* 800B0F38 000ACD78 7C 00 1A 78 */ xor r0, r0, r3
/* 800B0F3C 000ACD7C 98 61 00 1D */ stb r3, 0x1d(r1)
/* 800B0F40 000ACD80 98 01 00 1C */ stb r0, 0x1c(r1)
/* 800B0F44 000ACD84 82 01 00 1C */ lwz r16, 0x1c(r1)
/* 800B0F48 000ACD88 40 82 00 28 */ bne lbl_800B0F70
/* 800B0F4C 000ACD8C 2C 12 00 00 */ cmpwi r18, 0x0
/* 800B0F50 000ACD90 41 82 06 98 */ beq lbl_800B15E8
/* 800B0F54 000ACD94 A0 61 01 58 */ lhz r3, 0x158(r1)
/* 800B0F58 000ACD98 38 63 00 01 */ addi r3, r3, 0x1
/* 800B0F5C 000ACD9C 7C 12 1B 96 */ divwu r0, r18, r3
/* 800B0F60 000ACDA0 7C 00 19 D6 */ mullw r0, r0, r3
/* 800B0F64 000ACDA4 7C 00 90 51 */ subf. r0, r0, r18
/* 800B0F68 000ACDA8 41 82 00 2C */ beq lbl_800B0F94
/* 800B0F6C 000ACDAC 48 00 06 7C */ b lbl_800B15E8
.global lbl_800B0F70
lbl_800B0F70:
/* 800B0F70 000ACDB0 A0 15 00 DC */ lhz r0, 0xdc(r21)
/* 800B0F74 000ACDB4 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0F78 000ACDB8 41 82 00 1C */ beq lbl_800B0F94
/* 800B0F7C 000ACDBC A0 61 01 58 */ lhz r3, 0x158(r1)
/* 800B0F80 000ACDC0 38 63 00 01 */ addi r3, r3, 0x1
/* 800B0F84 000ACDC4 7C 12 1B 96 */ divwu r0, r18, r3
/* 800B0F88 000ACDC8 7C 00 19 D6 */ mullw r0, r0, r3
/* 800B0F8C 000ACDCC 7C 00 90 51 */ subf. r0, r0, r18
/* 800B0F90 000ACDD0 40 82 06 58 */ bne lbl_800B15E8
.global lbl_800B0F94
lbl_800B0F94:
/* 800B0F94 000ACDD4 88 01 01 4F */ lbz r0, 0x14f(r1)
/* 800B0F98 000ACDD8 54 00 07 FF */ clrlwi. r0, r0, 31
/* 800B0F9C 000ACDDC 41 82 00 BC */ beq lbl_800B1058
/* 800B0FA0 000ACDE0 88 01 01 4D */ lbz r0, 0x14d(r1)
/* 800B0FA4 000ACDE4 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0FA8 000ACDE8 41 82 00 10 */ beq lbl_800B0FB8
/* 800B0FAC 000ACDEC 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B0FB0 000ACDF0 41 82 00 24 */ beq lbl_800B0FD4
/* 800B0FB4 000ACDF4 48 00 00 88 */ b lbl_800B103C
.global lbl_800B0FB8
lbl_800B0FB8:
/* 800B0FB8 000ACDF8 C0 41 01 28 */ lfs f2, 0x128(r1)
/* 800B0FBC 000ACDFC C0 21 01 2C */ lfs f1, 0x12c(r1)
/* 800B0FC0 000ACE00 C0 01 01 30 */ lfs f0, 0x130(r1)
/* 800B0FC4 000ACE04 D0 41 00 5C */ stfs f2, 0x5c(r1)
/* 800B0FC8 000ACE08 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 800B0FCC 000ACE0C D0 01 00 64 */ stfs f0, 0x64(r1)
/* 800B0FD0 000ACE10 48 00 00 6C */ b lbl_800B103C
.global lbl_800B0FD4
lbl_800B0FD4:
/* 800B0FD4 000ACE14 A0 15 00 DC */ lhz r0, 0xdc(r21)
/* 800B0FD8 000ACE18 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B0FDC 000ACE1C 40 82 00 20 */ bne lbl_800B0FFC
/* 800B0FE0 000ACE20 C0 41 01 28 */ lfs f2, 0x128(r1)
/* 800B0FE4 000ACE24 C0 21 01 2C */ lfs f1, 0x12c(r1)
/* 800B0FE8 000ACE28 C0 01 01 30 */ lfs f0, 0x130(r1)
/* 800B0FEC 000ACE2C D0 41 00 5C */ stfs f2, 0x5c(r1)
/* 800B0FF0 000ACE30 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 800B0FF4 000ACE34 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 800B0FF8 000ACE38 48 00 00 44 */ b lbl_800B103C
.global lbl_800B0FFC
lbl_800B0FFC:
/* 800B0FFC 000ACE3C C0 15 00 C4 */ lfs f0, 0xc4(r21)
/* 800B1000 000ACE40 38 61 01 1C */ addi r3, r1, 0x11c
/* 800B1004 000ACE44 E0 23 00 00 */ psq_l f1, 0x0(r3), 0, qr0
/* 800B1008 000ACE48 EC 19 00 24 */ fdivs f0, f25, f0
/* 800B100C 000ACE4C 10 41 00 18 */ ps_muls0 f2, f1, f0
/* 800B1010 000ACE50 E0 23 80 08 */ psq_l f1, 0x8(r3), 1, qr0
/* 800B1014 000ACE54 38 61 00 74 */ addi r3, r1, 0x74
/* 800B1018 000ACE58 F0 43 00 00 */ psq_st f2, 0x0(r3), 0, qr0
/* 800B101C 000ACE5C 10 41 00 18 */ ps_muls0 f2, f1, f0
/* 800B1020 000ACE60 F0 43 80 08 */ psq_st f2, 0x8(r3), 1, qr0
/* 800B1024 000ACE64 C0 41 00 74 */ lfs f2, 0x74(r1)
/* 800B1028 000ACE68 C0 21 00 78 */ lfs f1, 0x78(r1)
/* 800B102C 000ACE6C C0 01 00 7C */ lfs f0, 0x7c(r1)
/* 800B1030 000ACE70 D0 41 00 5C */ stfs f2, 0x5c(r1)
/* 800B1034 000ACE74 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 800B1038 000ACE78 D0 01 00 64 */ stfs f0, 0x64(r1)
.global lbl_800B103C
lbl_800B103C:
/* 800B103C 000ACE7C 38 81 00 5C */ addi r4, r1, 0x5c
/* 800B1040 000ACE80 38 61 03 10 */ addi r3, r1, 0x310
/* 800B1044 000ACE84 7C 85 23 78 */ mr r5, r4
/* 800B1048 000ACE88 4B F8 00 A9 */ bl PSMTXMultVec
/* 800B104C 000ACE8C 38 61 00 5C */ addi r3, r1, 0x5c
/* 800B1050 000ACE90 4B F8 05 A1 */ bl PSVECMag
/* 800B1054 000ACE94 D0 21 01 50 */ stfs f1, 0x150(r1)
.global lbl_800B1058
lbl_800B1058:
/* 800B1058 000ACE98 88 C1 01 4F */ lbz r6, 0x14f(r1)
/* 800B105C 000ACE9C 54 C0 07 BD */ rlwinm. r0, r6, 0, 30, 30
/* 800B1060 000ACEA0 41 82 00 C4 */ beq lbl_800B1124
/* 800B1064 000ACEA4 3C 60 00 03 */ lis r3, 0x3
/* 800B1068 000ACEA8 56 05 84 3E */ srwi r5, r16, 16
/* 800B106C 000ACEAC 38 83 43 FD */ addi r4, r3, 0x43fd
/* 800B1070 000ACEB0 54 C0 07 FF */ clrlwi. r0, r6, 31
/* 800B1074 000ACEB4 7C 70 21 D6 */ mullw r3, r16, r4
/* 800B1078 000ACEB8 7C A0 07 34 */ extsh r0, r5
/* 800B107C 000ACEBC 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 800B1080 000ACEC0 90 01 04 94 */ stw r0, 0x494(r1)
/* 800B1084 000ACEC4 3C A3 00 27 */ addis r5, r3, 0x27
/* 800B1088 000ACEC8 C8 01 04 90 */ lfd f0, 0x490(r1)
/* 800B108C 000ACECC 38 A5 9E C3 */ addi r5, r5, -0x613d
/* 800B1090 000ACED0 7C 65 21 D6 */ mullw r3, r5, r4
/* 800B1094 000ACED4 EC 00 B8 28 */ fsubs f0, f0, f23
/* 800B1098 000ACED8 54 A0 84 3E */ srwi r0, r5, 16
/* 800B109C 000ACEDC EC 40 C0 24 */ fdivs f2, f0, f24
/* 800B10A0 000ACEE0 7C 00 07 34 */ extsh r0, r0
/* 800B10A4 000ACEE4 3C 83 00 27 */ addis r4, r3, 0x27
/* 800B10A8 000ACEE8 38 84 9E C3 */ addi r4, r4, -0x613d
/* 800B10AC 000ACEEC 6C 03 80 00 */ xoris r3, r0, 0x8000
/* 800B10B0 000ACEF0 54 80 84 3E */ srwi r0, r4, 16
/* 800B10B4 000ACEF4 90 61 04 9C */ stw r3, 0x49c(r1)
/* 800B10B8 000ACEF8 7C 00 07 34 */ extsh r0, r0
/* 800B10BC 000ACEFC 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 800B10C0 000ACF00 C8 01 04 98 */ lfd f0, 0x498(r1)
/* 800B10C4 000ACF04 90 01 04 94 */ stw r0, 0x494(r1)
/* 800B10C8 000ACF08 EC 20 B8 28 */ fsubs f1, f0, f23
/* 800B10CC 000ACF0C C8 01 04 90 */ lfd f0, 0x490(r1)
/* 800B10D0 000ACF10 D0 41 00 EC */ stfs f2, 0xec(r1)
/* 800B10D4 000ACF14 EC 00 B8 28 */ fsubs f0, f0, f23
/* 800B10D8 000ACF18 EC 21 C0 24 */ fdivs f1, f1, f24
/* 800B10DC 000ACF1C D0 21 00 F0 */ stfs f1, 0xf0(r1)
/* 800B10E0 000ACF20 EC 00 C0 24 */ fdivs f0, f0, f24
/* 800B10E4 000ACF24 D0 01 00 F4 */ stfs f0, 0xf4(r1)
/* 800B10E8 000ACF28 41 82 00 1C */ beq lbl_800B1104
/* 800B10EC 000ACF2C 7F 43 D3 78 */ mr r3, r26
/* 800B10F0 000ACF30 7F 44 D3 78 */ mr r4, r26
/* 800B10F4 000ACF34 48 00 28 DD */ bl Normalize__Q24nw4r2efFPQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3
/* 800B10F8 000ACF38 2C 03 00 00 */ cmpwi r3, 0x0
/* 800B10FC 000ACF3C 40 82 00 08 */ bne lbl_800B1104
/* 800B1100 000ACF40 D3 21 00 F0 */ stfs f25, 0xf0(r1)
.global lbl_800B1104
lbl_800B1104:
/* 800B1104 000ACF44 C0 41 01 50 */ lfs f2, 0x150(r1)
/* 800B1108 000ACF48 E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B110C 000ACF4C 10 20 00 98 */ ps_muls0 f1, f0, f2
/* 800B1110 000ACF50 E0 1A 80 08 */ psq_l f0, 0x8(r26), 1, qr0
/* 800B1114 000ACF54 F0 3A 00 00 */ psq_st f1, 0x0(r26), 0, qr0
/* 800B1118 000ACF58 10 20 00 98 */ ps_muls0 f1, f0, f2
/* 800B111C 000ACF5C F0 3A 80 08 */ psq_st f1, 0x8(r26), 1, qr0
/* 800B1120 000ACF60 48 00 01 D4 */ b lbl_800B12F4
.global lbl_800B1124
lbl_800B1124:
/* 800B1124 000ACF64 A0 15 00 DC */ lhz r0, 0xdc(r21)
/* 800B1128 000ACF68 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B112C 000ACF6C 40 82 00 20 */ bne lbl_800B114C
/* 800B1130 000ACF70 C0 41 01 28 */ lfs f2, 0x128(r1)
/* 800B1134 000ACF74 C0 21 01 2C */ lfs f1, 0x12c(r1)
/* 800B1138 000ACF78 C0 01 01 30 */ lfs f0, 0x130(r1)
/* 800B113C 000ACF7C D0 41 00 68 */ stfs f2, 0x68(r1)
/* 800B1140 000ACF80 D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 800B1144 000ACF84 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 800B1148 000ACF88 48 00 00 1C */ b lbl_800B1164
.global lbl_800B114C
lbl_800B114C:
/* 800B114C 000ACF8C C0 41 01 1C */ lfs f2, 0x11c(r1)
/* 800B1150 000ACF90 C0 21 01 20 */ lfs f1, 0x120(r1)
/* 800B1154 000ACF94 C0 01 01 24 */ lfs f0, 0x124(r1)
/* 800B1158 000ACF98 D0 41 00 68 */ stfs f2, 0x68(r1)
/* 800B115C 000ACF9C D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 800B1160 000ACFA0 D0 01 00 70 */ stfs f0, 0x70(r1)
.global lbl_800B1164
lbl_800B1164:
/* 800B1164 000ACFA4 38 81 00 68 */ addi r4, r1, 0x68
/* 800B1168 000ACFA8 38 61 03 10 */ addi r3, r1, 0x310
/* 800B116C 000ACFAC 7C 85 23 78 */ mr r5, r4
/* 800B1170 000ACFB0 4B F7 FF 81 */ bl PSMTXMultVec
/* 800B1174 000ACFB4 38 61 00 68 */ addi r3, r1, 0x68
/* 800B1178 000ACFB8 7C 64 1B 78 */ mr r4, r3
/* 800B117C 000ACFBC 48 00 28 55 */ bl Normalize__Q24nw4r2efFPQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3
/* 800B1180 000ACFC0 2C 03 00 00 */ cmpwi r3, 0x0
/* 800B1184 000ACFC4 40 82 00 08 */ bne lbl_800B118C
/* 800B1188 000ACFC8 D3 21 00 6C */ stfs f25, 0x6c(r1)
.global lbl_800B118C
lbl_800B118C:
/* 800B118C 000ACFCC 38 61 01 98 */ addi r3, r1, 0x198
/* 800B1190 000ACFD0 38 81 00 68 */ addi r4, r1, 0x68
/* 800B1194 000ACFD4 48 00 1F AD */ bl GetDirMtxY__Q24nw4r2efFPQ34nw4r4math5MTX34RCQ34nw4r4math4VEC3
/* 800B1198 000ACFD8 C0 41 01 54 */ lfs f2, 0x154(r1)
/* 800B119C 000ACFDC FC 16 10 00 */ fcmpu cr0, f22, f2
/* 800B11A0 000ACFE0 41 82 00 FC */ beq lbl_800B129C
/* 800B11A4 000ACFE4 3C 60 00 03 */ lis r3, 0x3
/* 800B11A8 000ACFE8 56 00 84 3E */ srwi r0, r16, 16
/* 800B11AC 000ACFEC 38 A3 43 FD */ addi r5, r3, 0x43fd
/* 800B11B0 000ACFF0 90 01 04 9C */ stw r0, 0x49c(r1)
/* 800B11B4 000ACFF4 7C 90 29 D6 */ mullw r4, r16, r5
/* 800B11B8 000ACFF8 7F 43 D3 78 */ mr r3, r26
/* 800B11BC 000ACFFC C8 01 04 98 */ lfd f0, 0x498(r1)
/* 800B11C0 000AD000 EC 00 D0 28 */ fsubs f0, f0, f26
/* 800B11C4 000AD004 3C 84 00 27 */ addis r4, r4, 0x27
/* 800B11C8 000AD008 38 84 9E C3 */ addi r4, r4, -0x613d
/* 800B11CC 000AD00C EC 20 D8 24 */ fdivs f1, f0, f27
/* 800B11D0 000AD010 54 80 84 3E */ srwi r0, r4, 16
/* 800B11D4 000AD014 90 01 04 94 */ stw r0, 0x494(r1)
/* 800B11D8 000AD018 7C 84 29 D6 */ mullw r4, r4, r5
/* 800B11DC 000AD01C C8 01 04 90 */ lfd f0, 0x490(r1)
/* 800B11E0 000AD020 3E 04 00 27 */ addis r16, r4, 0x27
/* 800B11E4 000AD024 EC 00 D0 28 */ fsubs f0, f0, f26
/* 800B11E8 000AD028 3A 10 9E C3 */ addi r16, r16, -0x613d
/* 800B11EC 000AD02C EC 21 00 B2 */ fmuls f1, f1, f2
/* 800B11F0 000AD030 EC 00 D8 24 */ fdivs f0, f0, f27
/* 800B11F4 000AD034 EC 1C 00 32 */ fmuls f0, f28, f0
/* 800B11F8 000AD038 EE 9D 00 32 */ fmuls f20, f29, f0
/* 800B11FC 000AD03C 48 00 28 45 */ bl _PSSinCosRad__Q24nw4r2efFPff
/* 800B1200 000AD040 C0 01 00 EC */ lfs f0, 0xec(r1)
/* 800B1204 000AD044 FC 20 A0 90 */ fmr f1, f20
/* 800B1208 000AD048 D0 01 00 F4 */ stfs f0, 0xf4(r1)
/* 800B120C 000AD04C 38 61 00 14 */ addi r3, r1, 0x14
/* 800B1210 000AD050 38 81 00 18 */ addi r4, r1, 0x18
/* 800B1214 000AD054 48 00 28 AD */ bl PSSinCosRad__Q24nw4r2efFPfPff
/* 800B1218 000AD058 C0 61 00 EC */ lfs f3, 0xec(r1)
/* 800B121C 000AD05C C0 41 00 14 */ lfs f2, 0x14(r1)
/* 800B1220 000AD060 88 01 01 4F */ lbz r0, 0x14f(r1)
/* 800B1224 000AD064 EC 43 00 B2 */ fmuls f2, f3, f2
/* 800B1228 000AD068 C0 21 00 F4 */ lfs f1, 0xf4(r1)
/* 800B122C 000AD06C C0 01 00 18 */ lfs f0, 0x18(r1)
/* 800B1230 000AD070 54 00 07 FF */ clrlwi. r0, r0, 31
/* 800B1234 000AD074 D0 41 00 EC */ stfs f2, 0xec(r1)
/* 800B1238 000AD078 EC 01 00 32 */ fmuls f0, f1, f0
/* 800B123C 000AD07C D0 01 00 F4 */ stfs f0, 0xf4(r1)
/* 800B1240 000AD080 41 82 00 24 */ beq lbl_800B1264
/* 800B1244 000AD084 C0 41 01 50 */ lfs f2, 0x150(r1)
/* 800B1248 000AD088 E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B124C 000AD08C 10 20 00 98 */ ps_muls0 f1, f0, f2
/* 800B1250 000AD090 E0 1A 80 08 */ psq_l f0, 0x8(r26), 1, qr0
/* 800B1254 000AD094 F0 3A 00 00 */ psq_st f1, 0x0(r26), 0, qr0
/* 800B1258 000AD098 10 20 00 98 */ ps_muls0 f1, f0, f2
/* 800B125C 000AD09C F0 3A 80 08 */ psq_st f1, 0x8(r26), 1, qr0
/* 800B1260 000AD0A0 48 00 00 84 */ b lbl_800B12E4
.global lbl_800B1264
lbl_800B1264:
/* 800B1264 000AD0A4 56 00 84 3E */ srwi r0, r16, 16
/* 800B1268 000AD0A8 90 01 04 9C */ stw r0, 0x49c(r1)
/* 800B126C 000AD0AC C0 01 01 50 */ lfs f0, 0x150(r1)
/* 800B1270 000AD0B0 C8 21 04 98 */ lfd f1, 0x498(r1)
/* 800B1274 000AD0B4 E0 5A 00 00 */ psq_l f2, 0x0(r26), 0, qr0
/* 800B1278 000AD0B8 EC 21 D0 28 */ fsubs f1, f1, f26
/* 800B127C 000AD0BC EC 21 D8 24 */ fdivs f1, f1, f27
/* 800B1280 000AD0C0 EC 21 00 32 */ fmuls f1, f1, f0
/* 800B1284 000AD0C4 10 02 00 58 */ ps_muls0 f0, f2, f1
/* 800B1288 000AD0C8 E0 5A 80 08 */ psq_l f2, 0x8(r26), 1, qr0
/* 800B128C 000AD0CC F0 1A 00 00 */ psq_st f0, 0x0(r26), 0, qr0
/* 800B1290 000AD0D0 10 02 00 58 */ ps_muls0 f0, f2, f1
/* 800B1294 000AD0D4 F0 1A 80 08 */ psq_st f0, 0x8(r26), 1, qr0
/* 800B1298 000AD0D8 48 00 00 4C */ b lbl_800B12E4
.global lbl_800B129C
lbl_800B129C:
/* 800B129C 000AD0DC 88 01 01 4F */ lbz r0, 0x14f(r1)
/* 800B12A0 000AD0E0 D2 C1 00 EC */ stfs f22, 0xec(r1)
/* 800B12A4 000AD0E4 54 00 07 FF */ clrlwi. r0, r0, 31
/* 800B12A8 000AD0E8 41 82 00 10 */ beq lbl_800B12B8
/* 800B12AC 000AD0EC C0 01 01 50 */ lfs f0, 0x150(r1)
/* 800B12B0 000AD0F0 D0 01 00 F0 */ stfs f0, 0xf0(r1)
/* 800B12B4 000AD0F4 48 00 00 2C */ b lbl_800B12E0
.global lbl_800B12B8
lbl_800B12B8:
/* 800B12B8 000AD0F8 56 00 84 3E */ srwi r0, r16, 16
/* 800B12BC 000AD0FC C0 01 01 50 */ lfs f0, 0x150(r1)
/* 800B12C0 000AD100 7C 00 07 34 */ extsh r0, r0
/* 800B12C4 000AD104 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 800B12C8 000AD108 90 01 04 94 */ stw r0, 0x494(r1)
/* 800B12CC 000AD10C C8 21 04 90 */ lfd f1, 0x490(r1)
/* 800B12D0 000AD110 EC 21 B8 28 */ fsubs f1, f1, f23
/* 800B12D4 000AD114 EC 21 C0 24 */ fdivs f1, f1, f24
/* 800B12D8 000AD118 EC 01 00 32 */ fmuls f0, f1, f0
/* 800B12DC 000AD11C D0 01 00 F0 */ stfs f0, 0xf0(r1)
.global lbl_800B12E0
lbl_800B12E0:
/* 800B12E0 000AD120 D2 C1 00 F4 */ stfs f22, 0xf4(r1)
.global lbl_800B12E4
lbl_800B12E4:
/* 800B12E4 000AD124 7F 44 D3 78 */ mr r4, r26
/* 800B12E8 000AD128 7F 45 D3 78 */ mr r5, r26
/* 800B12EC 000AD12C 38 61 01 98 */ addi r3, r1, 0x198
/* 800B12F0 000AD130 4B F7 FE 01 */ bl PSMTXMultVec
.global lbl_800B12F4
lbl_800B12F4:
/* 800B12F4 000AD134 88 01 01 4F */ lbz r0, 0x14f(r1)
/* 800B12F8 000AD138 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29
/* 800B12FC 000AD13C 40 82 00 08 */ bne lbl_800B1304
/* 800B1300 000AD140 D2 C1 00 EC */ stfs f22, 0xec(r1)
.global lbl_800B1304
lbl_800B1304:
/* 800B1304 000AD144 88 01 01 4F */ lbz r0, 0x14f(r1)
/* 800B1308 000AD148 54 00 07 39 */ rlwinm. r0, r0, 0, 28, 28
/* 800B130C 000AD14C 40 82 00 08 */ bne lbl_800B1314
/* 800B1310 000AD150 D2 C1 00 F0 */ stfs f22, 0xf0(r1)
.global lbl_800B1314
lbl_800B1314:
/* 800B1314 000AD154 88 01 01 4F */ lbz r0, 0x14f(r1)
/* 800B1318 000AD158 54 00 06 F7 */ rlwinm. r0, r0, 0, 27, 27
/* 800B131C 000AD15C 40 82 02 CC */ bne lbl_800B15E8
/* 800B1320 000AD160 D2 C1 00 F4 */ stfs f22, 0xf4(r1)
/* 800B1324 000AD164 48 00 02 C4 */ b lbl_800B15E8
.global lbl_800B1328
lbl_800B1328:
/* 800B1328 000AD168 C0 41 01 54 */ lfs f2, 0x154(r1)
/* 800B132C 000AD16C 38 61 00 50 */ addi r3, r1, 0x50
/* 800B1330 000AD170 C0 21 01 58 */ lfs f1, 0x158(r1)
/* 800B1334 000AD174 38 81 00 44 */ addi r4, r1, 0x44
/* 800B1338 000AD178 C0 01 01 5C */ lfs f0, 0x15c(r1)
/* 800B133C 000AD17C D0 41 00 50 */ stfs f2, 0x50(r1)
/* 800B1340 000AD180 D0 21 00 54 */ stfs f1, 0x54(r1)
/* 800B1344 000AD184 D0 01 00 58 */ stfs f0, 0x58(r1)
/* 800B1348 000AD188 48 00 27 F9 */ bl Rotation2VecY__Q24nw4r2efFRCQ34nw4r4math4VEC3PQ34nw4r4math4VEC3
/* 800B134C 000AD18C C0 01 01 50 */ lfs f0, 0x150(r1)
/* 800B1350 000AD190 38 61 01 68 */ addi r3, r1, 0x168
/* 800B1354 000AD194 38 81 00 44 */ addi r4, r1, 0x44
/* 800B1358 000AD198 EC 3E 00 32 */ fmuls f1, f30, f0
/* 800B135C 000AD19C 48 04 DB C5 */ bl MTX34RotAxisFIdx__Q24nw4r4mathFPQ34nw4r4math5MTX34PCQ34nw4r4math4VEC3f
/* 800B1360 000AD1A0 7F A4 EB 78 */ mr r4, r29
/* 800B1364 000AD1A4 7F 45 D3 78 */ mr r5, r26
/* 800B1368 000AD1A8 38 61 01 68 */ addi r3, r1, 0x168
/* 800B136C 000AD1AC 4B F7 FD 85 */ bl PSMTXMultVec
/* 800B1370 000AD1B0 E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B1374 000AD1B4 E0 3D 00 00 */ psq_l f1, 0x0(r29), 0, qr0
/* 800B1378 000AD1B8 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B137C 000AD1BC E0 1A 80 08 */ psq_l f0, 0x8(r26), 1, qr0
/* 800B1380 000AD1C0 E0 3D 80 08 */ psq_l f1, 0x8(r29), 1, qr0
/* 800B1384 000AD1C4 F0 5A 00 00 */ psq_st f2, 0x0(r26), 0, qr0
/* 800B1388 000AD1C8 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B138C 000AD1CC F0 5A 80 08 */ psq_st f2, 0x8(r26), 1, qr0
/* 800B1390 000AD1D0 48 00 02 58 */ b lbl_800B15E8
.global lbl_800B1394
lbl_800B1394:
/* 800B1394 000AD1D4 38 61 01 54 */ addi r3, r1, 0x154
/* 800B1398 000AD1D8 E0 3D 00 00 */ psq_l f1, 0x0(r29), 0, qr0
/* 800B139C 000AD1DC E0 03 00 00 */ psq_l f0, 0x0(r3), 0, qr0
/* 800B13A0 000AD1E0 38 A1 01 54 */ addi r5, r1, 0x154
/* 800B13A4 000AD1E4 7F 43 D3 78 */ mr r3, r26
/* 800B13A8 000AD1E8 7F 44 D3 78 */ mr r4, r26
/* 800B13AC 000AD1EC 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B13B0 000AD1F0 E0 05 80 08 */ psq_l f0, 0x8(r5), 1, qr0
/* 800B13B4 000AD1F4 E0 3D 80 08 */ psq_l f1, 0x8(r29), 1, qr0
/* 800B13B8 000AD1F8 F0 5A 00 00 */ psq_st f2, 0x0(r26), 0, qr0
/* 800B13BC 000AD1FC 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B13C0 000AD200 F0 5A 80 08 */ psq_st f2, 0x8(r26), 1, qr0
/* 800B13C4 000AD204 48 00 26 0D */ bl Normalize__Q24nw4r2efFPQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3
/* 800B13C8 000AD208 C0 41 01 50 */ lfs f2, 0x150(r1)
/* 800B13CC 000AD20C E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B13D0 000AD210 10 20 00 98 */ ps_muls0 f1, f0, f2
/* 800B13D4 000AD214 E0 1A 80 08 */ psq_l f0, 0x8(r26), 1, qr0
/* 800B13D8 000AD218 F0 3A 00 00 */ psq_st f1, 0x0(r26), 0, qr0
/* 800B13DC 000AD21C 10 20 00 98 */ ps_muls0 f1, f0, f2
/* 800B13E0 000AD220 F0 3A 80 08 */ psq_st f1, 0x8(r26), 1, qr0
/* 800B13E4 000AD224 48 00 02 04 */ b lbl_800B15E8
.global lbl_800B13E8
lbl_800B13E8:
/* 800B13E8 000AD228 38 61 01 58 */ addi r3, r1, 0x158
/* 800B13EC 000AD22C E0 3D 00 00 */ psq_l f1, 0x0(r29), 0, qr0
/* 800B13F0 000AD230 E0 03 00 00 */ psq_l f0, 0x0(r3), 0, qr0
/* 800B13F4 000AD234 38 A1 01 58 */ addi r5, r1, 0x158
/* 800B13F8 000AD238 7F 43 D3 78 */ mr r3, r26
/* 800B13FC 000AD23C 7F 44 D3 78 */ mr r4, r26
/* 800B1400 000AD240 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B1404 000AD244 E0 05 80 08 */ psq_l f0, 0x8(r5), 1, qr0
/* 800B1408 000AD248 E0 3D 80 08 */ psq_l f1, 0x8(r29), 1, qr0
/* 800B140C 000AD24C F0 5A 00 00 */ psq_st f2, 0x0(r26), 0, qr0
/* 800B1410 000AD250 10 40 08 28 */ ps_sub f2, f0, f1
/* 800B1414 000AD254 E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B1418 000AD258 F0 5A 80 08 */ psq_st f2, 0x8(r26), 1, qr0
/* 800B141C 000AD25C 10 00 00 32 */ ps_mul f0, f0, f0
/* 800B1420 000AD260 C0 21 00 F4 */ lfs f1, 0xf4(r1)
/* 800B1424 000AD264 12 81 00 7A */ ps_madd f20, f1, f1, f0
/* 800B1428 000AD268 12 94 00 14 */ ps_sum0 f20, f20, f0, f0
/* 800B142C 000AD26C 48 00 25 A5 */ bl Normalize__Q24nw4r2efFPQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3
/* 800B1430 000AD270 C0 01 01 54 */ lfs f0, 0x154(r1)
/* 800B1434 000AD274 C0 61 01 50 */ lfs f3, 0x150(r1)
/* 800B1438 000AD278 E0 3A 00 00 */ psq_l f1, 0x0(r26), 0, qr0
/* 800B143C 000AD27C EC 00 00 32 */ fmuls f0, f0, f0
/* 800B1440 000AD280 10 41 00 D8 */ ps_muls0 f2, f1, f3
/* 800B1444 000AD284 E0 3A 80 08 */ psq_l f1, 0x8(r26), 1, qr0
/* 800B1448 000AD288 FC 14 00 40 */ fcmpo cr0, f20, f0
/* 800B144C 000AD28C F0 5A 00 00 */ psq_st f2, 0x0(r26), 0, qr0
/* 800B1450 000AD290 10 41 00 D8 */ ps_muls0 f2, f1, f3
/* 800B1454 000AD294 F0 5A 80 08 */ psq_st f2, 0x8(r26), 1, qr0
/* 800B1458 000AD298 40 81 01 90 */ ble lbl_800B15E8
/* 800B145C 000AD29C EC 20 A0 24 */ fdivs f1, f0, f20
/* 800B1460 000AD2A0 E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B1464 000AD2A4 10 00 00 58 */ ps_muls0 f0, f0, f1
/* 800B1468 000AD2A8 F0 1A 00 00 */ psq_st f0, 0x0(r26), 0, qr0
/* 800B146C 000AD2AC 10 02 00 58 */ ps_muls0 f0, f2, f1
/* 800B1470 000AD2B0 F0 1A 80 08 */ psq_st f0, 0x8(r26), 1, qr0
/* 800B1474 000AD2B4 48 00 01 74 */ b lbl_800B15E8
.global lbl_800B1478
lbl_800B1478:
/* 800B1478 000AD2B8 C0 41 01 5C */ lfs f2, 0x15c(r1)
/* 800B147C 000AD2BC 38 61 00 38 */ addi r3, r1, 0x38
/* 800B1480 000AD2C0 C0 21 01 60 */ lfs f1, 0x160(r1)
/* 800B1484 000AD2C4 38 81 00 20 */ addi r4, r1, 0x20
/* 800B1488 000AD2C8 C0 01 01 64 */ lfs f0, 0x164(r1)
/* 800B148C 000AD2CC D0 41 00 38 */ stfs f2, 0x38(r1)
/* 800B1490 000AD2D0 D0 21 00 3C */ stfs f1, 0x3c(r1)
/* 800B1494 000AD2D4 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 800B1498 000AD2D8 48 00 26 A9 */ bl Rotation2VecY__Q24nw4r2efFRCQ34nw4r4math4VEC3PQ34nw4r4math4VEC3
/* 800B149C 000AD2DC E0 7B 00 04 */ psq_l f3, 0x4(r27), 0, qr0
/* 800B14A0 000AD2E0 E0 9D 00 04 */ psq_l f4, 0x4(r29), 0, qr0
/* 800B14A4 000AD2E4 C0 01 01 58 */ lfs f0, 0x158(r1)
/* 800B14A8 000AD2E8 10 63 01 32 */ ps_mul f3, f3, f4
/* 800B14AC 000AD2EC E0 9B 80 00 */ psq_l f4, 0x0(r27), 1, qr0
/* 800B14B0 000AD2F0 E0 3D 80 00 */ psq_l f1, 0x0(r29), 1, qr0
/* 800B14B4 000AD2F4 EC 00 00 32 */ fmuls f0, f0, f0
/* 800B14B8 000AD2F8 E0 5B 00 00 */ psq_l f2, 0x0(r27), 0, qr0
/* 800B14BC 000AD2FC 10 84 18 7A */ ps_madd f4, f4, f1, f3
/* 800B14C0 000AD300 E0 3D 00 00 */ psq_l f1, 0x0(r29), 0, qr0
/* 800B14C4 000AD304 D0 01 01 58 */ stfs f0, 0x158(r1)
/* 800B14C8 000AD308 10 84 18 D4 */ ps_sum0 f4, f4, f3, f3
/* 800B14CC 000AD30C 10 62 01 18 */ ps_muls0 f3, f2, f4
/* 800B14D0 000AD310 E0 5B 80 08 */ psq_l f2, 0x8(r27), 1, qr0
/* 800B14D4 000AD314 F0 7C 00 00 */ psq_st f3, 0x0(r28), 0, qr0
/* 800B14D8 000AD318 10 62 01 18 */ ps_muls0 f3, f2, f4
/* 800B14DC 000AD31C E0 5C 00 00 */ psq_l f2, 0x0(r28), 0, qr0
/* 800B14E0 000AD320 10 41 10 28 */ ps_sub f2, f1, f2
/* 800B14E4 000AD324 E0 3D 80 08 */ psq_l f1, 0x8(r29), 1, qr0
/* 800B14E8 000AD328 F0 5C 00 00 */ psq_st f2, 0x0(r28), 0, qr0
/* 800B14EC 000AD32C 10 41 18 28 */ ps_sub f2, f1, f3
/* 800B14F0 000AD330 E0 3C 00 00 */ psq_l f1, 0x0(r28), 0, qr0
/* 800B14F4 000AD334 F0 5C 80 08 */ psq_st f2, 0x8(r28), 1, qr0
/* 800B14F8 000AD338 10 21 00 72 */ ps_mul f1, f1, f1
/* 800B14FC 000AD33C C0 41 00 34 */ lfs f2, 0x34(r1)
/* 800B1500 000AD340 10 42 08 BA */ ps_madd f2, f2, f2, f1
/* 800B1504 000AD344 10 42 08 54 */ ps_sum0 f2, f2, f1, f1
/* 800B1508 000AD348 FC 16 10 00 */ fcmpu cr0, f22, f2
/* 800B150C 000AD34C 41 82 00 DC */ beq lbl_800B15E8
/* 800B1510 000AD350 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 800B1514 000AD354 4C 41 13 82 */ cror eq, gt, eq
/* 800B1518 000AD358 40 82 00 0C */ bne lbl_800B1524
/* 800B151C 000AD35C C2 81 01 54 */ lfs f20, 0x154(r1)
/* 800B1520 000AD360 48 00 00 20 */ b lbl_800B1540
.global lbl_800B1524
lbl_800B1524:
/* 800B1524 000AD364 EC 62 00 24 */ fdivs f3, f2, f0
/* 800B1528 000AD368 C0 01 01 54 */ lfs f0, 0x154(r1)
/* 800B152C 000AD36C C0 21 01 50 */ lfs f1, 0x150(r1)
/* 800B1530 000AD370 EC 59 18 28 */ fsubs f2, f25, f3
/* 800B1534 000AD374 EC 03 00 32 */ fmuls f0, f3, f0
/* 800B1538 000AD378 EC 22 00 72 */ fmuls f1, f2, f1
/* 800B153C 000AD37C EE 81 00 2A */ fadds f20, f1, f0
.global lbl_800B1540
lbl_800B1540:
/* 800B1540 000AD380 38 61 00 2C */ addi r3, r1, 0x2c
/* 800B1544 000AD384 7C 64 1B 78 */ mr r4, r3
/* 800B1548 000AD388 48 00 24 89 */ bl Normalize__Q24nw4r2efFPQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3
/* 800B154C 000AD38C 7F 45 D3 78 */ mr r5, r26
/* 800B1550 000AD390 38 61 00 2C */ addi r3, r1, 0x2c
/* 800B1554 000AD394 38 81 00 20 */ addi r4, r1, 0x20
/* 800B1558 000AD398 4B F8 01 09 */ bl PSVECCrossProduct
/* 800B155C 000AD39C E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B1560 000AD3A0 10 20 05 18 */ ps_muls0 f1, f0, f20
/* 800B1564 000AD3A4 E0 1A 80 08 */ psq_l f0, 0x8(r26), 1, qr0
/* 800B1568 000AD3A8 F0 3A 00 00 */ psq_st f1, 0x0(r26), 0, qr0
/* 800B156C 000AD3AC 10 20 05 18 */ ps_muls0 f1, f0, f20
/* 800B1570 000AD3B0 F0 3A 80 08 */ psq_st f1, 0x8(r26), 1, qr0
/* 800B1574 000AD3B4 48 00 00 74 */ b lbl_800B15E8
.global lbl_800B1578
lbl_800B1578:
/* 800B1578 000AD3B8 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B157C 000AD3BC C0 23 01 14 */ lfs f1, 0x114(r3)
/* 800B1580 000AD3C0 4B F5 9C 0D */ bl __fpclassifyf
/* 800B1584 000AD3C4 2C 03 00 01 */ cmpwi r3, 0x1
/* 800B1588 000AD3C8 41 82 00 60 */ beq lbl_800B15E8
/* 800B158C 000AD3CC 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B1590 000AD3D0 38 81 02 88 */ addi r4, r1, 0x288
/* 800B1594 000AD3D4 4B FF 56 FD */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B1598 000AD3D8 C0 21 02 A4 */ lfs f1, 0x2a4(r1)
/* 800B159C 000AD3DC C0 01 02 94 */ lfs f0, 0x294(r1)
/* 800B15A0 000AD3E0 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B15A4 000AD3E4 D0 01 00 E0 */ stfs f0, 0xe0(r1)
/* 800B15A8 000AD3E8 C0 01 02 B4 */ lfs f0, 0x2b4(r1)
/* 800B15AC 000AD3EC D0 21 00 E4 */ stfs f1, 0xe4(r1)
/* 800B15B0 000AD3F0 E0 43 01 14 */ psq_l f2, 0x114(r3), 0, qr0
/* 800B15B4 000AD3F4 E0 2E 00 00 */ psq_l f1, 0x0(r14), 0, qr0
/* 800B15B8 000AD3F8 D0 01 00 E8 */ stfs f0, 0xe8(r1)
/* 800B15BC 000AD3FC 10 01 10 28 */ ps_sub f0, f1, f2
/* 800B15C0 000AD400 C0 61 01 50 */ lfs f3, 0x150(r1)
/* 800B15C4 000AD404 E0 2E 80 08 */ psq_l f1, 0x8(r14), 1, qr0
/* 800B15C8 000AD408 F0 1A 00 00 */ psq_st f0, 0x0(r26), 0, qr0
/* 800B15CC 000AD40C 10 80 00 90 */ ps_mr f4, f0
/* 800B15D0 000AD410 E0 43 81 1C */ psq_l f2, 0x11c(r3), 1, qr0
/* 800B15D4 000AD414 10 01 10 28 */ ps_sub f0, f1, f2
/* 800B15D8 000AD418 10 24 00 D8 */ ps_muls0 f1, f4, f3
/* 800B15DC 000AD41C F0 3A 00 00 */ psq_st f1, 0x0(r26), 0, qr0
/* 800B15E0 000AD420 10 20 00 D8 */ ps_muls0 f1, f0, f3
/* 800B15E4 000AD424 F0 3A 80 08 */ psq_st f1, 0x8(r26), 1, qr0
.global lbl_800B15E8
lbl_800B15E8:
/* 800B15E8 000AD428 88 01 01 4C */ lbz r0, 0x14c(r1)
/* 800B15EC 000AD42C 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B15F0 000AD430 41 82 00 18 */ beq lbl_800B1608
/* 800B15F4 000AD434 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B15F8 000AD438 41 82 00 24 */ beq lbl_800B161C
/* 800B15FC 000AD43C 2C 00 00 03 */ cmpwi r0, 0x3
/* 800B1600 000AD440 41 82 00 30 */ beq lbl_800B1630
/* 800B1604 000AD444 48 00 00 54 */ b lbl_800B1658
.global lbl_800B1608
lbl_800B1608:
/* 800B1608 000AD448 38 81 00 EC */ addi r4, r1, 0xec
/* 800B160C 000AD44C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 800B1610 000AD450 7C 85 23 78 */ mr r5, r4
/* 800B1614 000AD454 4B F7 FA DD */ bl PSMTXMultVec
/* 800B1618 000AD458 48 00 00 40 */ b lbl_800B1658
.global lbl_800B161C
lbl_800B161C:
/* 800B161C 000AD45C 38 81 00 EC */ addi r4, r1, 0xec
/* 800B1620 000AD460 38 61 03 70 */ addi r3, r1, 0x370
/* 800B1624 000AD464 7C 85 23 78 */ mr r5, r4
/* 800B1628 000AD468 4B F7 FA C9 */ bl PSMTXMultVec
/* 800B162C 000AD46C 48 00 00 2C */ b lbl_800B1658
.global lbl_800B1630
lbl_800B1630:
/* 800B1630 000AD470 E0 1A 00 00 */ psq_l f0, 0x0(r26), 0, qr0
/* 800B1634 000AD474 7F 44 D3 78 */ mr r4, r26
/* 800B1638 000AD478 7F 45 D3 78 */ mr r5, r26
/* 800B163C 000AD47C 38 61 03 70 */ addi r3, r1, 0x370
/* 800B1640 000AD480 10 20 05 58 */ ps_muls0 f1, f0, f21
/* 800B1644 000AD484 E0 1A 80 08 */ psq_l f0, 0x8(r26), 1, qr0
/* 800B1648 000AD488 F0 3A 00 00 */ psq_st f1, 0x0(r26), 0, qr0
/* 800B164C 000AD48C 10 20 05 58 */ ps_muls0 f1, f0, f21
/* 800B1650 000AD490 F0 3A 80 08 */ psq_st f1, 0x8(r26), 1, qr0
/* 800B1654 000AD494 4B F7 FA 9D */ bl PSMTXMultVec
.global lbl_800B1658
lbl_800B1658:
/* 800B1658 000AD498 88 01 01 4D */ lbz r0, 0x14d(r1)
/* 800B165C 000AD49C 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1660 000AD4A0 41 82 00 10 */ beq lbl_800B1670
/* 800B1664 000AD4A4 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B1668 000AD4A8 41 82 00 2C */ beq lbl_800B1694
/* 800B166C 000AD4AC 48 00 00 D8 */ b lbl_800B1744
.global lbl_800B1670
lbl_800B1670:
/* 800B1670 000AD4B0 E0 19 00 00 */ psq_l f0, 0x0(r25), 0, qr0
/* 800B1674 000AD4B4 E0 3A 00 00 */ psq_l f1, 0x0(r26), 0, qr0
/* 800B1678 000AD4B8 10 40 08 2A */ ps_add f2, f0, f1
/* 800B167C 000AD4BC E0 19 80 08 */ psq_l f0, 0x8(r25), 1, qr0
/* 800B1680 000AD4C0 E0 3A 80 08 */ psq_l f1, 0x8(r26), 1, qr0
/* 800B1684 000AD4C4 F0 59 00 00 */ psq_st f2, 0x0(r25), 0, qr0
/* 800B1688 000AD4C8 10 40 08 2A */ ps_add f2, f0, f1
/* 800B168C 000AD4CC F0 59 80 08 */ psq_st f2, 0x8(r25), 1, qr0
/* 800B1690 000AD4D0 48 00 00 B4 */ b lbl_800B1744
.global lbl_800B1694
lbl_800B1694:
/* 800B1694 000AD4D4 E0 18 00 00 */ psq_l f0, 0x0(r24), 0, qr0
/* 800B1698 000AD4D8 E0 3A 00 00 */ psq_l f1, 0x0(r26), 0, qr0
/* 800B169C 000AD4DC 10 40 08 2A */ ps_add f2, f0, f1
/* 800B16A0 000AD4E0 E0 18 80 08 */ psq_l f0, 0x8(r24), 1, qr0
/* 800B16A4 000AD4E4 E0 3A 80 08 */ psq_l f1, 0x8(r26), 1, qr0
/* 800B16A8 000AD4E8 F0 58 00 00 */ psq_st f2, 0x0(r24), 0, qr0
/* 800B16AC 000AD4EC 10 40 08 2A */ ps_add f2, f0, f1
/* 800B16B0 000AD4F0 F0 58 80 08 */ psq_st f2, 0x8(r24), 1, qr0
/* 800B16B4 000AD4F4 48 00 00 90 */ b lbl_800B1744
.global lbl_800B16B8
lbl_800B16B8:
/* 800B16B8 000AD4F8 80 17 00 1C */ lwz r0, 0x1c(r23)
/* 800B16BC 000AD4FC 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B16C0 000AD500 41 82 00 58 */ beq lbl_800B1718
/* 800B16C4 000AD504 80 17 00 0C */ lwz r0, 0xc(r23)
/* 800B16C8 000AD508 38 61 02 B8 */ addi r3, r1, 0x2b8
/* 800B16CC 000AD50C 80 D7 00 10 */ lwz r6, 0x10(r23)
/* 800B16D0 000AD510 38 A0 00 24 */ li r5, 0x24
/* 800B16D4 000AD514 7C 97 02 14 */ add r4, r23, r0
/* 800B16D8 000AD518 80 F7 00 14 */ lwz r7, 0x14(r23)
/* 800B16DC 000AD51C 38 04 00 20 */ addi r0, r4, 0x20
/* 800B16E0 000AD520 80 97 00 18 */ lwz r4, 0x18(r23)
/* 800B16E4 000AD524 7C 00 32 14 */ add r0, r0, r6
/* 800B16E8 000AD528 7E C0 3A 14 */ add r22, r0, r7
/* 800B16EC 000AD52C 7E 76 22 14 */ add r19, r22, r4
/* 800B16F0 000AD530 7E 64 9B 78 */ mr r4, r19
/* 800B16F4 000AD534 4B F5 29 0D */ bl memcpy
/* 800B16F8 000AD538 80 17 00 18 */ lwz r0, 0x18(r23)
/* 800B16FC 000AD53C 28 00 00 04 */ cmplwi r0, 0x4
/* 800B1700 000AD540 40 81 00 18 */ ble lbl_800B1718
/* 800B1704 000AD544 A0 13 00 46 */ lhz r0, 0x46(r19)
/* 800B1708 000AD548 54 00 10 3A */ slwi r0, r0, 2
/* 800B170C 000AD54C 7C 76 02 14 */ add r3, r22, r0
/* 800B1710 000AD550 80 03 00 04 */ lwz r0, 0x4(r3)
/* 800B1714 000AD554 90 01 04 A0 */ stw r0, 0x4a0(r1)
.global lbl_800B1718
lbl_800B1718:
/* 800B1718 000AD558 80 17 00 0C */ lwz r0, 0xc(r23)
/* 800B171C 000AD55C 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1720 000AD560 41 82 00 20 */ beq lbl_800B1740
/* 800B1724 000AD564 38 01 02 B8 */ addi r0, r1, 0x2b8
/* 800B1728 000AD568 7E E3 BB 78 */ mr r3, r23
/* 800B172C 000AD56C 7E 45 93 78 */ mr r5, r18
/* 800B1730 000AD570 7E 06 83 78 */ mr r6, r16
/* 800B1734 000AD574 7E 27 8B 78 */ mr r7, r17
/* 800B1738 000AD578 7C 80 FA 14 */ add r4, r0, r31
/* 800B173C 000AD57C 4B FF 6A 95 */ bl AnimCurveExecuteF32__Q24nw4r2efFPUcPfUlUsUl
.global lbl_800B1740
lbl_800B1740:
/* 800B1740 000AD580 3A C0 00 01 */ li r22, 0x1
.global lbl_800B1744
lbl_800B1744:
/* 800B1744 000AD584 3A 94 00 01 */ addi r20, r20, 0x1
.global lbl_800B1748
lbl_800B1748:
/* 800B1748 000AD588 80 AF 00 24 */ lwz r5, 0x24(r15)
/* 800B174C 000AD58C 56 80 04 3E */ clrlwi r0, r20, 16
/* 800B1750 000AD590 80 65 00 04 */ lwz r3, 0x4(r5)
/* 800B1754 000AD594 38 C3 00 08 */ addi r6, r3, 0x8
/* 800B1758 000AD598 7C 65 30 2E */ lwzx r3, r5, r6
/* 800B175C 000AD59C 7C 85 32 14 */ add r4, r5, r6
/* 800B1760 000AD5A0 7C 63 22 14 */ add r3, r3, r4
/* 800B1764 000AD5A4 A0 63 00 04 */ lhz r3, 0x4(r3)
/* 800B1768 000AD5A8 7C 00 18 40 */ cmplw r0, r3
/* 800B176C 000AD5AC 41 80 F4 88 */ blt lbl_800B0BF4
/* 800B1770 000AD5B0 2C 16 00 00 */ cmpwi r22, 0x0
/* 800B1774 000AD5B4 41 82 03 50 */ beq lbl_800B1AC4
/* 800B1778 000AD5B8 80 F5 00 A0 */ lwz r7, 0xa0(r21)
/* 800B177C 000AD5BC 39 41 00 D4 */ addi r10, r1, 0xd4
/* 800B1780 000AD5C0 80 15 00 A4 */ lwz r0, 0xa4(r21)
/* 800B1784 000AD5C4 39 61 00 D4 */ addi r11, r1, 0xd4
/* 800B1788 000AD5C8 90 01 00 D8 */ stw r0, 0xd8(r1)
/* 800B178C 000AD5CC 7E A3 AB 78 */ mr r3, r21
/* 800B1790 000AD5D0 E0 39 00 00 */ psq_l f1, 0x0(r25), 0, qr0
/* 800B1794 000AD5D4 7E 65 9B 78 */ mr r5, r19
/* 800B1798 000AD5D8 90 E1 00 D4 */ stw r7, 0xd4(r1)
/* 800B179C 000AD5DC 38 81 02 B8 */ addi r4, r1, 0x2b8
/* 800B17A0 000AD5E0 82 21 01 04 */ lwz r17, 0x104(r1)
/* 800B17A4 000AD5E4 38 E1 04 00 */ addi r7, r1, 0x400
/* 800B17A8 000AD5E8 80 15 00 A8 */ lwz r0, 0xa8(r21)
/* 800B17AC 000AD5EC 39 01 04 30 */ addi r8, r1, 0x430
/* 800B17B0 000AD5F0 E0 0A 00 00 */ psq_l f0, 0x0(r10), 0, qr0
/* 800B17B4 000AD5F4 39 21 01 34 */ addi r9, r1, 0x134
/* 800B17B8 000AD5F8 90 01 00 DC */ stw r0, 0xdc(r1)
/* 800B17BC 000AD5FC 38 00 00 00 */ li r0, 0x0
/* 800B17C0 000AD600 10 40 08 2A */ ps_add f2, f0, f1
/* 800B17C4 000AD604 E0 39 80 08 */ psq_l f1, 0x8(r25), 1, qr0
/* 800B17C8 000AD608 82 01 01 08 */ lwz r16, 0x108(r1)
/* 800B17CC 000AD60C 39 41 00 A4 */ addi r10, r1, 0xa4
/* 800B17D0 000AD610 81 81 01 0C */ lwz r12, 0x10c(r1)
/* 800B17D4 000AD614 98 01 00 10 */ stb r0, 0x10(r1)
/* 800B17D8 000AD618 E0 0B 80 08 */ psq_l f0, 0x8(r11), 1, qr0
/* 800B17DC 000AD61C 7D 60 5B 78 */ mr r0, r11
/* 800B17E0 000AD620 F0 4B 00 00 */ psq_st f2, 0x0(r11), 0, qr0
/* 800B17E4 000AD624 10 40 08 2A */ ps_add f2, f0, f1
/* 800B17E8 000AD628 80 C1 04 A0 */ lwz r6, 0x4a0(r1)
/* 800B17EC 000AD62C 92 21 00 A4 */ stw r17, 0xa4(r1)
/* 800B17F0 000AD630 F0 4B 80 08 */ psq_st f2, 0x8(r11), 1, qr0
/* 800B17F4 000AD634 92 01 00 A8 */ stw r16, 0xa8(r1)
/* 800B17F8 000AD638 91 81 00 AC */ stw r12, 0xac(r1)
/* 800B17FC 000AD63C 90 01 00 08 */ stw r0, 0x8(r1)
/* 800B1800 000AD640 38 01 00 10 */ addi r0, r1, 0x10
/* 800B1804 000AD644 90 01 00 0C */ stw r0, 0xc(r1)
/* 800B1808 000AD648 4B FF D3 E9 */ bl calcPostField__Q24nw4r2efFPQ34nw4r2ef8ParticleRQ44nw4r2ef13PostFieldInfo16AnimatableParamsPQ34nw4r2ef13PostFieldInfoPQ34nw4r2ef15EmitterResourceRCQ34nw4r4math5MTX34RCQ34nw4r4math5MTX34RCQ34nw4r4math4VEC3Q34nw4r4math4VEC3PQ34nw4r4math4VEC3Pb
/* 800B180C 000AD64C 88 01 00 10 */ lbz r0, 0x10(r1)
/* 800B1810 000AD650 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1814 000AD654 41 82 00 5C */ beq lbl_800B1870
/* 800B1818 000AD658 80 15 00 0C */ lwz r0, 0xc(r21)
/* 800B181C 000AD65C 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B1820 000AD660 40 82 03 44 */ bne lbl_800B1B64
/* 800B1824 000AD664 A0 8F 00 50 */ lhz r4, 0x50(r15)
/* 800B1828 000AD668 7E A3 AB 78 */ mr r3, r21
/* 800B182C 000AD66C 38 04 FF FF */ addi r0, r4, -0x1
/* 800B1830 000AD670 B0 0F 00 50 */ sth r0, 0x50(r15)
/* 800B1834 000AD674 81 95 00 1C */ lwz r12, 0x1c(r21)
/* 800B1838 000AD678 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 800B183C 000AD67C 7D 89 03 A6 */ mtctr r12
/* 800B1840 000AD680 4E 80 04 21 */ bctrl
/* 800B1844 000AD684 38 00 00 02 */ li r0, 0x2
/* 800B1848 000AD688 90 15 00 0C */ stw r0, 0xc(r21)
/* 800B184C 000AD68C 80 15 00 10 */ lwz r0, 0x10(r21)
/* 800B1850 000AD690 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1854 000AD694 40 82 03 10 */ bne lbl_800B1B64
/* 800B1858 000AD698 81 95 00 1C */ lwz r12, 0x1c(r21)
/* 800B185C 000AD69C 7E A3 AB 78 */ mr r3, r21
/* 800B1860 000AD6A0 81 8C 00 08 */ lwz r12, 0x8(r12)
/* 800B1864 000AD6A4 7D 89 03 A6 */ mtctr r12
/* 800B1868 000AD6A8 4E 80 04 21 */ bctrl
/* 800B186C 000AD6AC 48 00 02 F8 */ b lbl_800B1B64
.global lbl_800B1870
lbl_800B1870:
/* 800B1870 000AD6B0 2C 03 00 00 */ cmpwi r3, 0x0
/* 800B1874 000AD6B4 41 82 00 84 */ beq lbl_800B18F8
/* 800B1878 000AD6B8 C1 01 00 D4 */ lfs f8, 0xd4(r1)
/* 800B187C 000AD6BC D1 15 00 A0 */ stfs f8, 0xa0(r21)
/* 800B1880 000AD6C0 C0 A1 01 04 */ lfs f5, 0x104(r1)
/* 800B1884 000AD6C4 C0 E1 00 D8 */ lfs f7, 0xd8(r1)
/* 800B1888 000AD6C8 D0 F5 00 A4 */ stfs f7, 0xa4(r21)
/* 800B188C 000AD6CC C0 61 01 08 */ lfs f3, 0x108(r1)
/* 800B1890 000AD6D0 C0 01 00 DC */ lfs f0, 0xdc(r1)
/* 800B1894 000AD6D4 D0 15 00 A8 */ stfs f0, 0xa8(r21)
/* 800B1898 000AD6D8 C0 81 01 0C */ lfs f4, 0x10c(r1)
/* 800B189C 000AD6DC C0 55 00 C4 */ lfs f2, 0xc4(r21)
/* 800B18A0 000AD6E0 C0 35 00 AC */ lfs f1, 0xac(r21)
/* 800B18A4 000AD6E4 EC 45 00 B2 */ fmuls f2, f5, f2
/* 800B18A8 000AD6E8 EC C1 10 2A */ fadds f6, f1, f2
/* 800B18AC 000AD6EC C0 55 00 C4 */ lfs f2, 0xc4(r21)
/* 800B18B0 000AD6F0 C0 35 00 B0 */ lfs f1, 0xb0(r21)
/* 800B18B4 000AD6F4 EC 43 00 B2 */ fmuls f2, f3, f2
/* 800B18B8 000AD6F8 C0 75 00 C4 */ lfs f3, 0xc4(r21)
/* 800B18BC 000AD6FC EC A1 10 2A */ fadds f5, f1, f2
/* 800B18C0 000AD700 C0 55 00 B4 */ lfs f2, 0xb4(r21)
/* 800B18C4 000AD704 EC 28 00 F2 */ fmuls f1, f8, f3
/* 800B18C8 000AD708 EC 64 00 F2 */ fmuls f3, f4, f3
/* 800B18CC 000AD70C EC 26 08 2A */ fadds f1, f6, f1
/* 800B18D0 000AD710 EC 42 18 2A */ fadds f2, f2, f3
/* 800B18D4 000AD714 D0 35 00 AC */ stfs f1, 0xac(r21)
/* 800B18D8 000AD718 C0 35 00 C4 */ lfs f1, 0xc4(r21)
/* 800B18DC 000AD71C EC 27 00 72 */ fmuls f1, f7, f1
/* 800B18E0 000AD720 EC 25 08 2A */ fadds f1, f5, f1
/* 800B18E4 000AD724 D0 35 00 B0 */ stfs f1, 0xb0(r21)
/* 800B18E8 000AD728 C0 35 00 C4 */ lfs f1, 0xc4(r21)
/* 800B18EC 000AD72C EC 00 00 72 */ fmuls f0, f0, f1
/* 800B18F0 000AD730 EC 02 00 2A */ fadds f0, f2, f0
/* 800B18F4 000AD734 D0 15 00 B4 */ stfs f0, 0xb4(r21)
.global lbl_800B18F8
lbl_800B18F8:
/* 800B18F8 000AD738 88 13 00 48 */ lbz r0, 0x48(r19)
/* 800B18FC 000AD73C 54 00 07 FF */ clrlwi. r0, r0, 31
/* 800B1900 000AD740 41 82 02 58 */ beq lbl_800B1B58
/* 800B1904 000AD744 38 61 02 58 */ addi r3, r1, 0x258
/* 800B1908 000AD748 4B F7 EB D9 */ bl PSMTXIdentity
/* 800B190C 000AD74C 38 61 02 58 */ addi r3, r1, 0x258
/* 800B1910 000AD750 38 93 00 4C */ addi r4, r19, 0x4c
/* 800B1914 000AD754 7C 65 1B 78 */ mr r5, r3
/* 800B1918 000AD758 48 00 25 79 */ bl MTX34ScaleNonZero__Q24nw4r2efFPQ34nw4r4math5MTX34PCQ34nw4r4math4VEC3PCQ34nw4r4math5MTX34
/* 800B191C 000AD75C C0 33 00 58 */ lfs f1, 0x58(r19)
/* 800B1920 000AD760 38 61 02 28 */ addi r3, r1, 0x228
/* 800B1924 000AD764 C0 53 00 5C */ lfs f2, 0x5c(r19)
/* 800B1928 000AD768 C0 73 00 60 */ lfs f3, 0x60(r19)
/* 800B192C 000AD76C 48 00 23 65 */ bl PSMTX34RotXYZRad__Q24nw4r2efFPQ34nw4r4math5MTX34fff
/* 800B1930 000AD770 38 81 02 58 */ addi r4, r1, 0x258
/* 800B1934 000AD774 38 61 02 28 */ addi r3, r1, 0x228
/* 800B1938 000AD778 7C 85 23 78 */ mr r5, r4
/* 800B193C 000AD77C 4B F7 EC 15 */ bl PSMTXConcat
/* 800B1940 000AD780 38 61 02 58 */ addi r3, r1, 0x258
/* 800B1944 000AD784 C0 33 00 64 */ lfs f1, 0x64(r19)
/* 800B1948 000AD788 C0 53 00 68 */ lfs f2, 0x68(r19)
/* 800B194C 000AD78C 7C 64 1B 78 */ mr r4, r3
/* 800B1950 000AD790 C0 73 00 6C */ lfs f3, 0x6c(r19)
/* 800B1954 000AD794 4B F7 F2 4D */ bl PSMTXTransApply
/* 800B1958 000AD798 88 13 00 48 */ lbz r0, 0x48(r19)
/* 800B195C 000AD79C 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30
/* 800B1960 000AD7A0 41 82 00 28 */ beq lbl_800B1988
/* 800B1964 000AD7A4 C0 61 04 2C */ lfs f3, 0x42c(r1)
/* 800B1968 000AD7A8 38 61 02 58 */ addi r3, r1, 0x258
/* 800B196C 000AD7AC C0 41 04 1C */ lfs f2, 0x41c(r1)
/* 800B1970 000AD7B0 7C 64 1B 78 */ mr r4, r3
/* 800B1974 000AD7B4 C0 21 04 0C */ lfs f1, 0x40c(r1)
/* 800B1978 000AD7B8 D0 21 00 C8 */ stfs f1, 0xc8(r1)
/* 800B197C 000AD7BC D0 41 00 CC */ stfs f2, 0xcc(r1)
/* 800B1980 000AD7C0 D0 61 00 D0 */ stfs f3, 0xd0(r1)
/* 800B1984 000AD7C4 4B F7 F2 1D */ bl PSMTXTransApply
.global lbl_800B1988
lbl_800B1988:
/* 800B1988 000AD7C8 38 81 02 58 */ addi r4, r1, 0x258
/* 800B198C 000AD7CC 38 61 04 30 */ addi r3, r1, 0x430
/* 800B1990 000AD7D0 7C 85 23 78 */ mr r5, r4
/* 800B1994 000AD7D4 4B F7 EB BD */ bl PSMTXConcat
/* 800B1998 000AD7D8 38 61 02 58 */ addi r3, r1, 0x258
/* 800B199C 000AD7DC 38 81 01 F8 */ addi r4, r1, 0x1f8
/* 800B19A0 000AD7E0 4B F7 EE 61 */ bl PSMTXInverse
/* 800B19A4 000AD7E4 38 61 01 F8 */ addi r3, r1, 0x1f8
/* 800B19A8 000AD7E8 38 95 00 AC */ addi r4, r21, 0xac
/* 800B19AC 000AD7EC 38 A1 00 BC */ addi r5, r1, 0xbc
/* 800B19B0 000AD7F0 4B F7 F7 41 */ bl PSMTXMultVec
/* 800B19B4 000AD7F4 C0 01 00 BC */ lfs f0, 0xbc(r1)
/* 800B19B8 000AD7F8 38 00 00 00 */ li r0, 0x0
/* 800B19BC 000AD7FC FC 00 C8 40 */ fcmpo cr0, f0, f25
/* 800B19C0 000AD800 40 81 00 24 */ ble lbl_800B19E4
/* 800B19C4 000AD804 EC 39 00 2A */ fadds f1, f25, f0
/* 800B19C8 000AD808 C8 42 8B 18 */ lfd f2, "@11038"@sda21(r2)
/* 800B19CC 000AD80C 4B F6 2B C9 */ bl fmod
/* 800B19D0 000AD810 FC 00 08 18 */ frsp f0, f1
/* 800B19D4 000AD814 38 00 00 01 */ li r0, 0x1
/* 800B19D8 000AD818 EC 00 C8 28 */ fsubs f0, f0, f25
/* 800B19DC 000AD81C D0 01 00 BC */ stfs f0, 0xbc(r1)
/* 800B19E0 000AD820 48 00 00 28 */ b lbl_800B1A08
.global lbl_800B19E4
lbl_800B19E4:
/* 800B19E4 000AD824 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 800B19E8 000AD828 40 80 00 20 */ bge lbl_800B1A08
/* 800B19EC 000AD82C EC 20 C8 28 */ fsubs f1, f0, f25
/* 800B19F0 000AD830 C8 42 8B 18 */ lfd f2, "@11038"@sda21(r2)
/* 800B19F4 000AD834 4B F6 2B A1 */ bl fmod
/* 800B19F8 000AD838 FC 00 08 18 */ frsp f0, f1
/* 800B19FC 000AD83C 38 00 00 01 */ li r0, 0x1
/* 800B1A00 000AD840 EC 19 00 2A */ fadds f0, f25, f0
/* 800B1A04 000AD844 D0 01 00 BC */ stfs f0, 0xbc(r1)
.global lbl_800B1A08
lbl_800B1A08:
/* 800B1A08 000AD848 C0 01 00 C0 */ lfs f0, 0xc0(r1)
/* 800B1A0C 000AD84C FC 00 C8 40 */ fcmpo cr0, f0, f25
/* 800B1A10 000AD850 40 81 00 24 */ ble lbl_800B1A34
/* 800B1A14 000AD854 EC 39 00 2A */ fadds f1, f25, f0
/* 800B1A18 000AD858 C8 42 8B 18 */ lfd f2, "@11038"@sda21(r2)
/* 800B1A1C 000AD85C 4B F6 2B 79 */ bl fmod
/* 800B1A20 000AD860 FC 00 08 18 */ frsp f0, f1
/* 800B1A24 000AD864 38 00 00 01 */ li r0, 0x1
/* 800B1A28 000AD868 EC 00 C8 28 */ fsubs f0, f0, f25
/* 800B1A2C 000AD86C D0 01 00 C0 */ stfs f0, 0xc0(r1)
/* 800B1A30 000AD870 48 00 00 28 */ b lbl_800B1A58
.global lbl_800B1A34
lbl_800B1A34:
/* 800B1A34 000AD874 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 800B1A38 000AD878 40 80 00 20 */ bge lbl_800B1A58
/* 800B1A3C 000AD87C EC 20 C8 28 */ fsubs f1, f0, f25
/* 800B1A40 000AD880 C8 42 8B 18 */ lfd f2, "@11038"@sda21(r2)
/* 800B1A44 000AD884 4B F6 2B 51 */ bl fmod
/* 800B1A48 000AD888 FC 00 08 18 */ frsp f0, f1
/* 800B1A4C 000AD88C 38 00 00 01 */ li r0, 0x1
/* 800B1A50 000AD890 EC 19 00 2A */ fadds f0, f25, f0
/* 800B1A54 000AD894 D0 01 00 C0 */ stfs f0, 0xc0(r1)
.global lbl_800B1A58
lbl_800B1A58:
/* 800B1A58 000AD898 C0 01 00 C4 */ lfs f0, 0xc4(r1)
/* 800B1A5C 000AD89C FC 00 C8 40 */ fcmpo cr0, f0, f25
/* 800B1A60 000AD8A0 40 81 00 24 */ ble lbl_800B1A84
/* 800B1A64 000AD8A4 EC 39 00 2A */ fadds f1, f25, f0
/* 800B1A68 000AD8A8 C8 42 8B 18 */ lfd f2, "@11038"@sda21(r2)
/* 800B1A6C 000AD8AC 4B F6 2B 29 */ bl fmod
/* 800B1A70 000AD8B0 FC 00 08 18 */ frsp f0, f1
/* 800B1A74 000AD8B4 38 00 00 01 */ li r0, 0x1
/* 800B1A78 000AD8B8 EC 00 C8 28 */ fsubs f0, f0, f25
/* 800B1A7C 000AD8BC D0 01 00 C4 */ stfs f0, 0xc4(r1)
/* 800B1A80 000AD8C0 48 00 00 28 */ b lbl_800B1AA8
.global lbl_800B1A84
lbl_800B1A84:
/* 800B1A84 000AD8C4 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 800B1A88 000AD8C8 40 80 00 20 */ bge lbl_800B1AA8
/* 800B1A8C 000AD8CC EC 20 C8 28 */ fsubs f1, f0, f25
/* 800B1A90 000AD8D0 C8 42 8B 18 */ lfd f2, "@11038"@sda21(r2)
/* 800B1A94 000AD8D4 4B F6 2B 01 */ bl fmod
/* 800B1A98 000AD8D8 FC 00 08 18 */ frsp f0, f1
/* 800B1A9C 000AD8DC 38 00 00 01 */ li r0, 0x1
/* 800B1AA0 000AD8E0 EC 19 00 2A */ fadds f0, f25, f0
/* 800B1AA4 000AD8E4 D0 01 00 C4 */ stfs f0, 0xc4(r1)
.global lbl_800B1AA8
lbl_800B1AA8:
/* 800B1AA8 000AD8E8 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1AAC 000AD8EC 41 82 00 AC */ beq lbl_800B1B58
/* 800B1AB0 000AD8F0 38 61 02 58 */ addi r3, r1, 0x258
/* 800B1AB4 000AD8F4 38 81 00 BC */ addi r4, r1, 0xbc
/* 800B1AB8 000AD8F8 38 B5 00 AC */ addi r5, r21, 0xac
/* 800B1ABC 000AD8FC 4B F7 F6 35 */ bl PSMTXMultVec
/* 800B1AC0 000AD900 48 00 00 98 */ b lbl_800B1B58
.global lbl_800B1AC4
lbl_800B1AC4:
/* 800B1AC4 000AD904 E0 15 00 A0 */ psq_l f0, 0xa0(r21), 0, qr0
/* 800B1AC8 000AD908 E0 39 00 00 */ psq_l f1, 0x0(r25), 0, qr0
/* 800B1ACC 000AD90C C0 81 01 04 */ lfs f4, 0x104(r1)
/* 800B1AD0 000AD910 10 00 08 2A */ ps_add f0, f0, f1
/* 800B1AD4 000AD914 E0 39 80 08 */ psq_l f1, 0x8(r25), 1, qr0
/* 800B1AD8 000AD918 C0 61 01 08 */ lfs f3, 0x108(r1)
/* 800B1ADC 000AD91C F0 15 00 A0 */ psq_st f0, 0xa0(r21), 0, qr0
/* 800B1AE0 000AD920 C0 41 01 0C */ lfs f2, 0x10c(r1)
/* 800B1AE4 000AD924 E0 15 80 A8 */ psq_l f0, 0xa8(r21), 1, qr0
/* 800B1AE8 000AD928 10 00 08 2A */ ps_add f0, f0, f1
/* 800B1AEC 000AD92C F0 15 80 A8 */ psq_st f0, 0xa8(r21), 1, qr0
/* 800B1AF0 000AD930 C0 35 00 C4 */ lfs f1, 0xc4(r21)
/* 800B1AF4 000AD934 C0 15 00 AC */ lfs f0, 0xac(r21)
/* 800B1AF8 000AD938 EC 24 00 72 */ fmuls f1, f4, f1
/* 800B1AFC 000AD93C EC A0 08 2A */ fadds f5, f0, f1
/* 800B1B00 000AD940 C0 35 00 C4 */ lfs f1, 0xc4(r21)
/* 800B1B04 000AD944 C0 15 00 B0 */ lfs f0, 0xb0(r21)
/* 800B1B08 000AD948 EC 23 00 72 */ fmuls f1, f3, f1
/* 800B1B0C 000AD94C C0 75 00 C4 */ lfs f3, 0xc4(r21)
/* 800B1B10 000AD950 EC 42 00 F2 */ fmuls f2, f2, f3
/* 800B1B14 000AD954 EC 80 08 2A */ fadds f4, f0, f1
/* 800B1B18 000AD958 C0 15 00 A0 */ lfs f0, 0xa0(r21)
/* 800B1B1C 000AD95C C0 35 00 B4 */ lfs f1, 0xb4(r21)
/* 800B1B20 000AD960 EC 00 00 F2 */ fmuls f0, f0, f3
/* 800B1B24 000AD964 EC 41 10 2A */ fadds f2, f1, f2
/* 800B1B28 000AD968 EC 05 00 2A */ fadds f0, f5, f0
/* 800B1B2C 000AD96C D0 15 00 AC */ stfs f0, 0xac(r21)
/* 800B1B30 000AD970 C0 35 00 A4 */ lfs f1, 0xa4(r21)
/* 800B1B34 000AD974 C0 15 00 C4 */ lfs f0, 0xc4(r21)
/* 800B1B38 000AD978 EC 01 00 32 */ fmuls f0, f1, f0
/* 800B1B3C 000AD97C EC 04 00 2A */ fadds f0, f4, f0
/* 800B1B40 000AD980 D0 15 00 B0 */ stfs f0, 0xb0(r21)
/* 800B1B44 000AD984 C0 35 00 A8 */ lfs f1, 0xa8(r21)
/* 800B1B48 000AD988 C0 15 00 C4 */ lfs f0, 0xc4(r21)
/* 800B1B4C 000AD98C EC 01 00 32 */ fmuls f0, f1, f0
/* 800B1B50 000AD990 EC 02 00 2A */ fadds f0, f2, f0
/* 800B1B54 000AD994 D0 15 00 B4 */ stfs f0, 0xb4(r21)
.global lbl_800B1B58
lbl_800B1B58:
/* 800B1B58 000AD998 A0 75 00 DC */ lhz r3, 0xdc(r21)
/* 800B1B5C 000AD99C 38 03 00 01 */ addi r0, r3, 0x1
/* 800B1B60 000AD9A0 B0 15 00 DC */ sth r0, 0xdc(r21)
.global lbl_800B1B64
lbl_800B1B64:
/* 800B1B64 000AD9A4 82 A1 04 A4 */ lwz r21, 0x4a4(r1)
.global lbl_800B1B68
lbl_800B1B68:
/* 800B1B68 000AD9A8 2C 15 00 00 */ cmpwi r21, 0x0
/* 800B1B6C 000AD9AC 40 82 EE FC */ bne lbl_800B0A68
/* 800B1B70 000AD9B0 38 6F 00 38 */ addi r3, r15, 0x38
/* 800B1B74 000AD9B4 38 80 00 00 */ li r4, 0x0
/* 800B1B78 000AD9B8 48 06 E0 E9 */ bl List_GetPrev__Q24nw4r2utFPCQ34nw4r2ut4ListPCv
/* 800B1B7C 000AD9BC 90 6F 00 54 */ stw r3, 0x54(r15)
/* 800B1B80 000AD9C0 80 6F 00 20 */ lwz r3, 0x20(r15)
/* 800B1B84 000AD9C4 80 63 00 BC */ lwz r3, 0xbc(r3)
/* 800B1B88 000AD9C8 81 83 00 4C */ lwz r12, 0x4c(r3)
/* 800B1B8C 000AD9CC 2C 0C 00 00 */ cmpwi r12, 0x0
/* 800B1B90 000AD9D0 41 82 00 18 */ beq lbl_800B1BA8
/* 800B1B94 000AD9D4 7D E3 7B 78 */ mr r3, r15
/* 800B1B98 000AD9D8 80 A1 04 A8 */ lwz r5, 0x4a8(r1)
/* 800B1B9C 000AD9DC 38 8F 00 38 */ addi r4, r15, 0x38
/* 800B1BA0 000AD9E0 7D 89 03 A6 */ mtctr r12
/* 800B1BA4 000AD9E4 4E 80 04 21 */ bctrl
.global lbl_800B1BA8
lbl_800B1BA8:
/* 800B1BA8 000AD9E8 39 61 05 00 */ addi r11, r1, 0x500
/* 800B1BAC 000AD9EC E3 E1 05 B8 */ psq_l f31, 0x5b8(r1), 0, qr0
/* 800B1BB0 000AD9F0 CB E1 05 B0 */ lfd f31, 0x5b0(r1)
/* 800B1BB4 000AD9F4 E3 C1 05 A8 */ psq_l f30, 0x5a8(r1), 0, qr0
/* 800B1BB8 000AD9F8 CB C1 05 A0 */ lfd f30, 0x5a0(r1)
/* 800B1BBC 000AD9FC E3 A1 05 98 */ psq_l f29, 0x598(r1), 0, qr0
/* 800B1BC0 000ADA00 CB A1 05 90 */ lfd f29, 0x590(r1)
/* 800B1BC4 000ADA04 E3 81 05 88 */ psq_l f28, 0x588(r1), 0, qr0
/* 800B1BC8 000ADA08 CB 81 05 80 */ lfd f28, 0x580(r1)
/* 800B1BCC 000ADA0C E3 61 05 78 */ psq_l f27, 0x578(r1), 0, qr0
/* 800B1BD0 000ADA10 CB 61 05 70 */ lfd f27, 0x570(r1)
/* 800B1BD4 000ADA14 E3 41 05 68 */ psq_l f26, 0x568(r1), 0, qr0
/* 800B1BD8 000ADA18 CB 41 05 60 */ lfd f26, 0x560(r1)
/* 800B1BDC 000ADA1C E3 21 05 58 */ psq_l f25, 0x558(r1), 0, qr0
/* 800B1BE0 000ADA20 CB 21 05 50 */ lfd f25, 0x550(r1)
/* 800B1BE4 000ADA24 E3 01 05 48 */ psq_l f24, 0x548(r1), 0, qr0
/* 800B1BE8 000ADA28 CB 01 05 40 */ lfd f24, 0x540(r1)
/* 800B1BEC 000ADA2C E2 E1 05 38 */ psq_l f23, 0x538(r1), 0, qr0
/* 800B1BF0 000ADA30 CA E1 05 30 */ lfd f23, 0x530(r1)
/* 800B1BF4 000ADA34 E2 C1 05 28 */ psq_l f22, 0x528(r1), 0, qr0
/* 800B1BF8 000ADA38 CA C1 05 20 */ lfd f22, 0x520(r1)
/* 800B1BFC 000ADA3C E2 A1 05 18 */ psq_l f21, 0x518(r1), 0, qr0
/* 800B1C00 000ADA40 CA A1 05 10 */ lfd f21, 0x510(r1)
/* 800B1C04 000ADA44 E2 81 05 08 */ psq_l f20, 0x508(r1), 0, qr0
/* 800B1C08 000ADA48 CA 81 05 00 */ lfd f20, 0x500(r1)
/* 800B1C0C 000ADA4C 4B F5 57 49 */ bl __restore_gpr
/* 800B1C10 000ADA50 80 01 05 C4 */ lwz r0, 0x5c4(r1)
/* 800B1C14 000ADA54 7C 08 03 A6 */ mtlr r0
/* 800B1C18 000ADA58 38 21 05 C0 */ addi r1, r1, 0x5c0
/* 800B1C1C 000ADA5C 4E 80 00 20 */ blr
.global Draw__Q34nw4r2ef15ParticleManagerFRCQ34nw4r2ef8DrawInfo
Draw__Q34nw4r2ef15ParticleManagerFRCQ34nw4r2ef8DrawInfo:
/* 800B1C20 000ADA60 94 21 FE 90 */ stwu r1, -0x170(r1)
/* 800B1C24 000ADA64 7C 08 02 A6 */ mflr r0
/* 800B1C28 000ADA68 90 01 01 74 */ stw r0, 0x174(r1)
/* 800B1C2C 000ADA6C 39 61 01 60 */ addi r11, r1, 0x160
/* 800B1C30 000ADA70 DB E1 01 60 */ stfd f31, 0x160(r1)
/* 800B1C34 000ADA74 F3 E1 01 68 */ psq_st f31, 0x168(r1), 0, qr0
/* 800B1C38 000ADA78 4B F5 56 D1 */ bl __save_gpr
/* 800B1C3C 000ADA7C 82 03 00 24 */ lwz r16, 0x24(r3)
/* 800B1C40 000ADA80 7C 7F 1B 78 */ mr r31, r3
/* 800B1C44 000ADA84 A0 10 00 9C */ lhz r0, 0x9c(r16)
/* 800B1C48 000ADA88 54 00 05 6B */ rlwinm. r0, r0, 0, 21, 21
/* 800B1C4C 000ADA8C 40 82 02 04 */ bne lbl_800B1E50
/* 800B1C50 000ADA90 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B1C54 000ADA94 80 03 00 20 */ lwz r0, 0x20(r3)
/* 800B1C58 000ADA98 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30
/* 800B1C5C 000ADA9C 41 82 00 08 */ beq lbl_800B1C64
/* 800B1C60 000ADAA0 48 00 01 F0 */ b lbl_800B1E50
.global lbl_800B1C64
lbl_800B1C64:
/* 800B1C64 000ADAA4 89 E4 00 60 */ lbz r15, 0x60(r4)
/* 800B1C68 000ADAA8 91 E1 01 0C */ stw r15, 0x10c(r1)
/* 800B1C6C 000ADAAC 81 E4 00 64 */ lwz r15, 0x64(r4)
/* 800B1C70 000ADAB0 80 04 00 58 */ lwz r0, 0x58(r4)
/* 800B1C74 000ADAB4 91 E1 00 E8 */ stw r15, 0xe8(r1)
/* 800B1C78 000ADAB8 81 E4 00 68 */ lwz r15, 0x68(r4)
/* 800B1C7C 000ADABC 91 E1 00 EC */ stw r15, 0xec(r1)
/* 800B1C80 000ADAC0 89 E4 00 6C */ lbz r15, 0x6c(r4)
/* 800B1C84 000ADAC4 90 01 00 A0 */ stw r0, 0xa0(r1)
/* 800B1C88 000ADAC8 80 01 01 0C */ lwz r0, 0x10c(r1)
/* 800B1C8C 000ADACC 91 E1 00 F0 */ stw r15, 0xf0(r1)
/* 800B1C90 000ADAD0 81 E4 00 70 */ lwz r15, 0x70(r4)
/* 800B1C94 000ADAD4 98 01 00 A8 */ stb r0, 0xa8(r1)
/* 800B1C98 000ADAD8 80 01 00 E8 */ lwz r0, 0xe8(r1)
/* 800B1C9C 000ADADC 91 E1 00 F4 */ stw r15, 0xf4(r1)
/* 800B1CA0 000ADAE0 81 E4 00 84 */ lwz r15, 0x84(r4)
/* 800B1CA4 000ADAE4 90 01 00 AC */ stw r0, 0xac(r1)
/* 800B1CA8 000ADAE8 80 01 00 EC */ lwz r0, 0xec(r1)
/* 800B1CAC 000ADAEC 91 E1 00 F8 */ stw r15, 0xf8(r1)
/* 800B1CB0 000ADAF0 81 E4 00 8C */ lwz r15, 0x8c(r4)
/* 800B1CB4 000ADAF4 90 01 00 B0 */ stw r0, 0xb0(r1)
/* 800B1CB8 000ADAF8 80 01 00 F0 */ lwz r0, 0xf0(r1)
/* 800B1CBC 000ADAFC 91 E1 00 FC */ stw r15, 0xfc(r1)
/* 800B1CC0 000ADB00 81 E4 00 90 */ lwz r15, 0x90(r4)
/* 800B1CC4 000ADB04 98 01 00 B4 */ stb r0, 0xb4(r1)
/* 800B1CC8 000ADB08 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 800B1CCC 000ADB0C 91 E1 01 00 */ stw r15, 0x100(r1)
/* 800B1CD0 000ADB10 81 E4 00 94 */ lwz r15, 0x94(r4)
/* 800B1CD4 000ADB14 90 01 00 B8 */ stw r0, 0xb8(r1)
/* 800B1CD8 000ADB18 80 01 00 F8 */ lwz r0, 0xf8(r1)
/* 800B1CDC 000ADB1C 91 E1 01 04 */ stw r15, 0x104(r1)
/* 800B1CE0 000ADB20 81 E4 00 98 */ lwz r15, 0x98(r4)
/* 800B1CE4 000ADB24 90 01 00 CC */ stw r0, 0xcc(r1)
/* 800B1CE8 000ADB28 80 01 00 FC */ lwz r0, 0xfc(r1)
/* 800B1CEC 000ADB2C 90 01 00 D4 */ stw r0, 0xd4(r1)
/* 800B1CF0 000ADB30 80 01 01 00 */ lwz r0, 0x100(r1)
/* 800B1CF4 000ADB34 82 24 00 00 */ lwz r17, 0x0(r4)
/* 800B1CF8 000ADB38 82 44 00 04 */ lwz r18, 0x4(r4)
/* 800B1CFC 000ADB3C 82 64 00 08 */ lwz r19, 0x8(r4)
/* 800B1D00 000ADB40 82 84 00 0C */ lwz r20, 0xc(r4)
/* 800B1D04 000ADB44 82 A4 00 10 */ lwz r21, 0x10(r4)
/* 800B1D08 000ADB48 82 C4 00 14 */ lwz r22, 0x14(r4)
/* 800B1D0C 000ADB4C 82 E4 00 18 */ lwz r23, 0x18(r4)
/* 800B1D10 000ADB50 83 04 00 1C */ lwz r24, 0x1c(r4)
/* 800B1D14 000ADB54 83 24 00 20 */ lwz r25, 0x20(r4)
/* 800B1D18 000ADB58 83 44 00 24 */ lwz r26, 0x24(r4)
/* 800B1D1C 000ADB5C 83 64 00 28 */ lwz r27, 0x28(r4)
/* 800B1D20 000ADB60 83 84 00 2C */ lwz r28, 0x2c(r4)
/* 800B1D24 000ADB64 83 A4 00 30 */ lwz r29, 0x30(r4)
/* 800B1D28 000ADB68 83 C4 00 34 */ lwz r30, 0x34(r4)
/* 800B1D2C 000ADB6C 81 84 00 38 */ lwz r12, 0x38(r4)
/* 800B1D30 000ADB70 81 64 00 3C */ lwz r11, 0x3c(r4)
/* 800B1D34 000ADB74 81 44 00 40 */ lwz r10, 0x40(r4)
/* 800B1D38 000ADB78 81 24 00 44 */ lwz r9, 0x44(r4)
/* 800B1D3C 000ADB7C 81 04 00 48 */ lwz r8, 0x48(r4)
/* 800B1D40 000ADB80 80 E4 00 4C */ lwz r7, 0x4c(r4)
/* 800B1D44 000ADB84 80 C4 00 50 */ lwz r6, 0x50(r4)
/* 800B1D48 000ADB88 80 A4 00 54 */ lwz r5, 0x54(r4)
/* 800B1D4C 000ADB8C 81 C4 00 5C */ lwz r14, 0x5c(r4)
/* 800B1D50 000ADB90 C0 A4 00 74 */ lfs f5, 0x74(r4)
/* 800B1D54 000ADB94 C0 84 00 78 */ lfs f4, 0x78(r4)
/* 800B1D58 000ADB98 C0 64 00 7C */ lfs f3, 0x7c(r4)
/* 800B1D5C 000ADB9C C0 44 00 80 */ lfs f2, 0x80(r4)
/* 800B1D60 000ADBA0 C0 24 00 88 */ lfs f1, 0x88(r4)
/* 800B1D64 000ADBA4 80 84 00 9C */ lwz r4, 0x9c(r4)
/* 800B1D68 000ADBA8 90 01 00 D8 */ stw r0, 0xd8(r1)
/* 800B1D6C 000ADBAC 80 01 01 04 */ lwz r0, 0x104(r1)
/* 800B1D70 000ADBB0 90 01 00 DC */ stw r0, 0xdc(r1)
/* 800B1D74 000ADBB4 7D E0 7B 78 */ mr r0, r15
/* 800B1D78 000ADBB8 C0 02 8A FC */ lfs f0, "@10378"@sda21(r2)
/* 800B1D7C 000ADBBC 92 21 00 48 */ stw r17, 0x48(r1)
/* 800B1D80 000ADBC0 92 41 00 4C */ stw r18, 0x4c(r1)
/* 800B1D84 000ADBC4 92 61 00 50 */ stw r19, 0x50(r1)
/* 800B1D88 000ADBC8 92 81 00 54 */ stw r20, 0x54(r1)
/* 800B1D8C 000ADBCC 92 A1 00 58 */ stw r21, 0x58(r1)
/* 800B1D90 000ADBD0 92 C1 00 5C */ stw r22, 0x5c(r1)
/* 800B1D94 000ADBD4 92 E1 00 60 */ stw r23, 0x60(r1)
/* 800B1D98 000ADBD8 93 01 00 64 */ stw r24, 0x64(r1)
/* 800B1D9C 000ADBDC 93 21 00 68 */ stw r25, 0x68(r1)
/* 800B1DA0 000ADBE0 93 41 00 6C */ stw r26, 0x6c(r1)
/* 800B1DA4 000ADBE4 93 61 00 70 */ stw r27, 0x70(r1)
/* 800B1DA8 000ADBE8 93 81 00 74 */ stw r28, 0x74(r1)
/* 800B1DAC 000ADBEC 93 A1 00 78 */ stw r29, 0x78(r1)
/* 800B1DB0 000ADBF0 93 C1 00 7C */ stw r30, 0x7c(r1)
/* 800B1DB4 000ADBF4 91 81 00 80 */ stw r12, 0x80(r1)
/* 800B1DB8 000ADBF8 91 61 00 84 */ stw r11, 0x84(r1)
/* 800B1DBC 000ADBFC 91 41 00 88 */ stw r10, 0x88(r1)
/* 800B1DC0 000ADC00 91 21 00 8C */ stw r9, 0x8c(r1)
/* 800B1DC4 000ADC04 91 01 00 90 */ stw r8, 0x90(r1)
/* 800B1DC8 000ADC08 90 E1 00 94 */ stw r7, 0x94(r1)
/* 800B1DCC 000ADC0C 90 C1 00 98 */ stw r6, 0x98(r1)
/* 800B1DD0 000ADC10 90 A1 00 9C */ stw r5, 0x9c(r1)
/* 800B1DD4 000ADC14 91 C1 00 A4 */ stw r14, 0xa4(r1)
/* 800B1DD8 000ADC18 D0 A1 00 BC */ stfs f5, 0xbc(r1)
/* 800B1DDC 000ADC1C D0 81 00 C0 */ stfs f4, 0xc0(r1)
/* 800B1DE0 000ADC20 D0 61 00 C4 */ stfs f3, 0xc4(r1)
/* 800B1DE4 000ADC24 D0 41 00 C8 */ stfs f2, 0xc8(r1)
/* 800B1DE8 000ADC28 D0 21 00 D0 */ stfs f1, 0xd0(r1)
/* 800B1DEC 000ADC2C 90 01 00 E0 */ stw r0, 0xe0(r1)
/* 800B1DF0 000ADC30 90 81 00 E4 */ stw r4, 0xe4(r1)
/* 800B1DF4 000ADC34 C3 F0 01 50 */ lfs f31, 0x150(r16)
/* 800B1DF8 000ADC38 91 E1 01 08 */ stw r15, 0x108(r1)
/* 800B1DFC 000ADC3C FC 00 F8 00 */ fcmpu cr0, f0, f31
/* 800B1E00 000ADC40 41 82 00 34 */ beq lbl_800B1E34
/* 800B1E04 000ADC44 38 81 00 18 */ addi r4, r1, 0x18
/* 800B1E08 000ADC48 4B FF 4E 89 */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B1E0C 000ADC4C C0 41 00 44 */ lfs f2, 0x44(r1)
/* 800B1E10 000ADC50 C0 21 00 34 */ lfs f1, 0x34(r1)
/* 800B1E14 000ADC54 C0 01 00 24 */ lfs f0, 0x24(r1)
/* 800B1E18 000ADC58 D0 01 00 08 */ stfs f0, 0x8(r1)
/* 800B1E1C 000ADC5C D0 21 00 0C */ stfs f1, 0xc(r1)
/* 800B1E20 000ADC60 D0 41 00 10 */ stfs f2, 0x10(r1)
/* 800B1E24 000ADC64 D3 E1 00 D0 */ stfs f31, 0xd0(r1)
/* 800B1E28 000ADC68 D0 01 00 D4 */ stfs f0, 0xd4(r1)
/* 800B1E2C 000ADC6C D0 21 00 D8 */ stfs f1, 0xd8(r1)
/* 800B1E30 000ADC70 D0 41 00 DC */ stfs f2, 0xdc(r1)
.global lbl_800B1E34
lbl_800B1E34:
/* 800B1E34 000ADC74 80 7F 00 2C */ lwz r3, 0x2c(r31)
/* 800B1E38 000ADC78 7F E5 FB 78 */ mr r5, r31
/* 800B1E3C 000ADC7C 38 81 00 48 */ addi r4, r1, 0x48
/* 800B1E40 000ADC80 81 83 00 00 */ lwz r12, 0x0(r3)
/* 800B1E44 000ADC84 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 800B1E48 000ADC88 7D 89 03 A6 */ mtctr r12
/* 800B1E4C 000ADC8C 4E 80 04 21 */ bctrl
.global lbl_800B1E50
lbl_800B1E50:
/* 800B1E50 000ADC90 39 61 01 60 */ addi r11, r1, 0x160
/* 800B1E54 000ADC94 E3 E1 01 68 */ psq_l f31, 0x168(r1), 0, qr0
/* 800B1E58 000ADC98 CB E1 01 60 */ lfd f31, 0x160(r1)
/* 800B1E5C 000ADC9C 4B F5 54 F9 */ bl __restore_gpr
/* 800B1E60 000ADCA0 80 01 01 74 */ lwz r0, 0x174(r1)
/* 800B1E64 000ADCA4 7C 08 03 A6 */ mtlr r0
/* 800B1E68 000ADCA8 38 21 01 70 */ addi r1, r1, 0x170
/* 800B1E6C 000ADCAC 4E 80 00 20 */ blr
.global CalcGlobalMtx__Q34nw4r2ef15ParticleManagerFPQ34nw4r4math5MTX34
CalcGlobalMtx__Q34nw4r2ef15ParticleManagerFPQ34nw4r4math5MTX34:
/* 800B1E70 000ADCB0 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 800B1E74 000ADCB4 7C 08 02 A6 */ mflr r0
/* 800B1E78 000ADCB8 90 01 00 44 */ stw r0, 0x44(r1)
/* 800B1E7C 000ADCBC 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 800B1E80 000ADCC0 7C 9F 23 78 */ mr r31, r4
/* 800B1E84 000ADCC4 93 C1 00 38 */ stw r30, 0x38(r1)
/* 800B1E88 000ADCC8 7C 7E 1B 78 */ mr r30, r3
/* 800B1E8C 000ADCCC 88 03 00 8A */ lbz r0, 0x8a(r3)
/* 800B1E90 000ADCD0 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1E94 000ADCD4 41 82 00 3C */ beq lbl_800B1ED0
/* 800B1E98 000ADCD8 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B1E9C 000ADCDC 38 81 00 08 */ addi r4, r1, 0x8
/* 800B1EA0 000ADCE0 4B FF 4D F1 */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B1EA4 000ADCE4 81 1E 00 28 */ lwz r8, 0x28(r30)
/* 800B1EA8 000ADCE8 38 7E 00 8C */ addi r3, r30, 0x8c
/* 800B1EAC 000ADCEC 88 1E 00 88 */ lbz r0, 0x88(r30)
/* 800B1EB0 000ADCF0 38 81 00 08 */ addi r4, r1, 0x8
/* 800B1EB4 000ADCF4 55 05 07 FE */ clrlwi r5, r8, 31
/* 800B1EB8 000ADCF8 55 06 FF FE */ extrwi r6, r8, 1, 30
/* 800B1EBC 000ADCFC 7C 07 07 74 */ extsb r7, r0
/* 800B1EC0 000ADD00 55 08 F7 FE */ extrwi r8, r8, 1, 29
/* 800B1EC4 000ADD04 4B FF 4B 8D */ bl RestructMatrix__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34PQ34nw4r4math5MTX34bbScb
/* 800B1EC8 000ADD08 38 00 00 00 */ li r0, 0x0
/* 800B1ECC 000ADD0C 98 1E 00 8A */ stb r0, 0x8a(r30)
.global lbl_800B1ED0
lbl_800B1ED0:
/* 800B1ED0 000ADD10 80 9E 00 8C */ lwz r4, 0x8c(r30)
/* 800B1ED4 000ADD14 7F E3 FB 78 */ mr r3, r31
/* 800B1ED8 000ADD18 80 1E 00 90 */ lwz r0, 0x90(r30)
/* 800B1EDC 000ADD1C 90 1F 00 04 */ stw r0, 0x4(r31)
/* 800B1EE0 000ADD20 90 9F 00 00 */ stw r4, 0x0(r31)
/* 800B1EE4 000ADD24 80 9E 00 94 */ lwz r4, 0x94(r30)
/* 800B1EE8 000ADD28 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 800B1EEC 000ADD2C 90 1F 00 0C */ stw r0, 0xc(r31)
/* 800B1EF0 000ADD30 90 9F 00 08 */ stw r4, 0x8(r31)
/* 800B1EF4 000ADD34 80 9E 00 9C */ lwz r4, 0x9c(r30)
/* 800B1EF8 000ADD38 80 1E 00 A0 */ lwz r0, 0xa0(r30)
/* 800B1EFC 000ADD3C 90 1F 00 14 */ stw r0, 0x14(r31)
/* 800B1F00 000ADD40 90 9F 00 10 */ stw r4, 0x10(r31)
/* 800B1F04 000ADD44 80 9E 00 A4 */ lwz r4, 0xa4(r30)
/* 800B1F08 000ADD48 80 1E 00 A8 */ lwz r0, 0xa8(r30)
/* 800B1F0C 000ADD4C 90 1F 00 1C */ stw r0, 0x1c(r31)
/* 800B1F10 000ADD50 90 9F 00 18 */ stw r4, 0x18(r31)
/* 800B1F14 000ADD54 80 9E 00 AC */ lwz r4, 0xac(r30)
/* 800B1F18 000ADD58 80 1E 00 B0 */ lwz r0, 0xb0(r30)
/* 800B1F1C 000ADD5C 90 1F 00 24 */ stw r0, 0x24(r31)
/* 800B1F20 000ADD60 90 9F 00 20 */ stw r4, 0x20(r31)
/* 800B1F24 000ADD64 80 9E 00 B4 */ lwz r4, 0xb4(r30)
/* 800B1F28 000ADD68 80 1E 00 B8 */ lwz r0, 0xb8(r30)
/* 800B1F2C 000ADD6C 90 1F 00 2C */ stw r0, 0x2c(r31)
/* 800B1F30 000ADD70 90 9F 00 28 */ stw r4, 0x28(r31)
/* 800B1F34 000ADD74 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 800B1F38 000ADD78 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 800B1F3C 000ADD7C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 800B1F40 000ADD80 7C 08 03 A6 */ mtlr r0
/* 800B1F44 000ADD84 38 21 00 40 */ addi r1, r1, 0x40
/* 800B1F48 000ADD88 4E 80 00 20 */ blr
/* 800B1F4C 000ADD8C 00 00 00 00 */ .4byte 0x00000000
.global BeginCalc__Q34nw4r2ef15ParticleManagerFb
BeginCalc__Q34nw4r2ef15ParticleManagerFb:
/* 800B1F50 000ADD90 38 C0 00 00 */ li r6, 0x0
/* 800B1F54 000ADD94 90 C3 00 54 */ stw r6, 0x54(r3)
/* 800B1F58 000ADD98 80 E3 00 38 */ lwz r7, 0x38(r3)
/* 800B1F5C 000ADD9C 48 00 00 54 */ b lbl_800B1FB0
.global lbl_800B1F60
lbl_800B1F60:
/* 800B1F60 000ADDA0 2C 04 00 00 */ cmpwi r4, 0x0
/* 800B1F64 000ADDA4 41 82 00 10 */ beq lbl_800B1F74
/* 800B1F68 000ADDA8 A0 07 00 E2 */ lhz r0, 0xe2(r7)
/* 800B1F6C 000ADDAC 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B1F70 000ADDB0 41 82 00 34 */ beq lbl_800B1FA4
.global lbl_800B1F74
lbl_800B1F74:
/* 800B1F74 000ADDB4 A0 A7 00 E2 */ lhz r5, 0xe2(r7)
/* 800B1F78 000ADDB8 2C 05 00 00 */ cmpwi r5, 0x0
/* 800B1F7C 000ADDBC 41 82 00 0C */ beq lbl_800B1F88
/* 800B1F80 000ADDC0 38 05 FF FF */ addi r0, r5, -0x1
/* 800B1F84 000ADDC4 B0 07 00 E2 */ sth r0, 0xe2(r7)
.global lbl_800B1F88
lbl_800B1F88:
/* 800B1F88 000ADDC8 80 07 00 0C */ lwz r0, 0xc(r7)
/* 800B1F8C 000ADDCC 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B1F90 000ADDD0 40 82 00 14 */ bne lbl_800B1FA4
/* 800B1F94 000ADDD4 80 07 00 D8 */ lwz r0, 0xd8(r7)
/* 800B1F98 000ADDD8 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B1F9C 000ADDDC 40 82 00 08 */ bne lbl_800B1FA4
/* 800B1FA0 000ADDE0 90 C7 00 D8 */ stw r6, 0xd8(r7)
.global lbl_800B1FA4
lbl_800B1FA4:
/* 800B1FA4 000ADDE4 A0 03 00 42 */ lhz r0, 0x42(r3)
/* 800B1FA8 000ADDE8 7C A7 02 14 */ add r5, r7, r0
/* 800B1FAC 000ADDEC 80 E5 00 04 */ lwz r7, 0x4(r5)
.global lbl_800B1FB0
lbl_800B1FB0:
/* 800B1FB0 000ADDF0 2C 07 00 00 */ cmpwi r7, 0x0
/* 800B1FB4 000ADDF4 40 82 FF AC */ bne lbl_800B1F60
/* 800B1FB8 000ADDF8 4E 80 00 20 */ blr
/* 800B1FBC 000ADDFC 00 00 00 00 */ .4byte 0x00000000
.global EndCalc__Q34nw4r2ef15ParticleManagerFv
EndCalc__Q34nw4r2ef15ParticleManagerFv:
/* 800B1FC0 000ADE00 80 83 00 38 */ lwz r4, 0x38(r3)
/* 800B1FC4 000ADE04 38 A0 00 01 */ li r5, 0x1
/* 800B1FC8 000ADE08 48 00 00 30 */ b lbl_800B1FF8
/* 800B1FCC 000ADE0C 60 00 00 00 */ nop
.global lbl_800B1FD0
lbl_800B1FD0:
/* 800B1FD0 000ADE10 80 04 00 0C */ lwz r0, 0xc(r4)
/* 800B1FD4 000ADE14 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B1FD8 000ADE18 40 82 00 14 */ bne lbl_800B1FEC
/* 800B1FDC 000ADE1C 80 04 00 D8 */ lwz r0, 0xd8(r4)
/* 800B1FE0 000ADE20 2C 00 00 03 */ cmpwi r0, 0x3
/* 800B1FE4 000ADE24 40 82 00 08 */ bne lbl_800B1FEC
/* 800B1FE8 000ADE28 90 A4 00 D8 */ stw r5, 0xd8(r4)
.global lbl_800B1FEC
lbl_800B1FEC:
/* 800B1FEC 000ADE2C A0 03 00 42 */ lhz r0, 0x42(r3)
/* 800B1FF0 000ADE30 7C 84 02 14 */ add r4, r4, r0
/* 800B1FF4 000ADE34 80 84 00 04 */ lwz r4, 0x4(r4)
.global lbl_800B1FF8
lbl_800B1FF8:
/* 800B1FF8 000ADE38 2C 04 00 00 */ cmpwi r4, 0x0
/* 800B1FFC 000ADE3C 40 82 FF D4 */ bne lbl_800B1FD0
/* 800B2000 000ADE40 4E 80 00 20 */ blr
/* 800B2004 000ADE44 00 00 00 00 */ .4byte 0x00000000
/* 800B2008 000ADE48 00 00 00 00 */ .4byte 0x00000000
/* 800B200C 000ADE4C 00 00 00 00 */ .4byte 0x00000000
.global BeginDraw__Q34nw4r2ef15ParticleManagerFv
BeginDraw__Q34nw4r2ef15ParticleManagerFv:
/* 800B2010 000ADE50 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 800B2014 000ADE54 7C 08 02 A6 */ mflr r0
/* 800B2018 000ADE58 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 800B201C 000ADE5C 38 81 00 68 */ addi r4, r1, 0x68
/* 800B2020 000ADE60 93 E1 00 9C */ stw r31, 0x9c(r1)
/* 800B2024 000ADE64 7C 7F 1B 78 */ mr r31, r3
/* 800B2028 000ADE68 80 63 00 20 */ lwz r3, 0x20(r3)
/* 800B202C 000ADE6C 4B FF 4C 65 */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B2030 000ADE70 88 1F 00 8A */ lbz r0, 0x8a(r31)
/* 800B2034 000ADE74 2C 00 00 00 */ cmpwi r0, 0x0
/* 800B2038 000ADE78 41 82 00 3C */ beq lbl_800B2074
/* 800B203C 000ADE7C 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 800B2040 000ADE80 38 81 00 08 */ addi r4, r1, 0x8
/* 800B2044 000ADE84 4B FF 4C 4D */ bl CalcGlobalMtx__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34
/* 800B2048 000ADE88 81 1F 00 28 */ lwz r8, 0x28(r31)
/* 800B204C 000ADE8C 38 7F 00 8C */ addi r3, r31, 0x8c
/* 800B2050 000ADE90 88 1F 00 88 */ lbz r0, 0x88(r31)
/* 800B2054 000ADE94 38 81 00 08 */ addi r4, r1, 0x8
/* 800B2058 000ADE98 55 05 07 FE */ clrlwi r5, r8, 31
/* 800B205C 000ADE9C 55 06 FF FE */ extrwi r6, r8, 1, 30
/* 800B2060 000ADEA0 7C 07 07 74 */ extsb r7, r0
/* 800B2064 000ADEA4 55 08 F7 FE */ extrwi r8, r8, 1, 29
/* 800B2068 000ADEA8 4B FF 49 E9 */ bl RestructMatrix__Q34nw4r2ef7EmitterFPQ34nw4r4math5MTX34PQ34nw4r4math5MTX34bbScb
/* 800B206C 000ADEAC 38 00 00 00 */ li r0, 0x0
/* 800B2070 000ADEB0 98 1F 00 8A */ stb r0, 0x8a(r31)
.global lbl_800B2074
lbl_800B2074:
/* 800B2074 000ADEB4 80 BF 00 8C */ lwz r5, 0x8c(r31)
/* 800B2078 000ADEB8 38 61 00 68 */ addi r3, r1, 0x68
/* 800B207C 000ADEBC 80 1F 00 90 */ lwz r0, 0x90(r31)
/* 800B2080 000ADEC0 7C 64 1B 78 */ mr r4, r3
/* 800B2084 000ADEC4 90 01 00 3C */ stw r0, 0x3c(r1)
/* 800B2088 000ADEC8 90 A1 00 38 */ stw r5, 0x38(r1)
/* 800B208C 000ADECC 80 BF 00 94 */ lwz r5, 0x94(r31)
/* 800B2090 000ADED0 80 1F 00 98 */ lwz r0, 0x98(r31)
/* 800B2094 000ADED4 90 01 00 44 */ stw r0, 0x44(r1)
/* 800B2098 000ADED8 90 A1 00 40 */ stw r5, 0x40(r1)
/* 800B209C 000ADEDC 80 BF 00 9C */ lwz r5, 0x9c(r31)
/* 800B20A0 000ADEE0 80 1F 00 A0 */ lwz r0, 0xa0(r31)
/* 800B20A4 000ADEE4 90 01 00 4C */ stw r0, 0x4c(r1)
/* 800B20A8 000ADEE8 90 A1 00 48 */ stw r5, 0x48(r1)
/* 800B20AC 000ADEEC 80 BF 00 A4 */ lwz r5, 0xa4(r31)
/* 800B20B0 000ADEF0 80 1F 00 A8 */ lwz r0, 0xa8(r31)
/* 800B20B4 000ADEF4 90 01 00 54 */ stw r0, 0x54(r1)
/* 800B20B8 000ADEF8 90 A1 00 50 */ stw r5, 0x50(r1)
/* 800B20BC 000ADEFC 80 BF 00 AC */ lwz r5, 0xac(r31)
/* 800B20C0 000ADF00 80 1F 00 B0 */ lwz r0, 0xb0(r31)
/* 800B20C4 000ADF04 90 01 00 5C */ stw r0, 0x5c(r1)
/* 800B20C8 000ADF08 90 A1 00 58 */ stw r5, 0x58(r1)
/* 800B20CC 000ADF0C 80 BF 00 B4 */ lwz r5, 0xb4(r31)
/* 800B20D0 000ADF10 80 1F 00 B8 */ lwz r0, 0xb8(r31)
/* 800B20D4 000ADF14 90 01 00 64 */ stw r0, 0x64(r1)
/* 800B20D8 000ADF18 90 A1 00 60 */ stw r5, 0x60(r1)
/* 800B20DC 000ADF1C 4B F7 E7 25 */ bl PSMTXInverse
/* 800B20E0 000ADF20 3C A0 80 51 */ lis r5, smDrawMtxPMtoEM__Q34nw4r2ef15ParticleManager@ha
/* 800B20E4 000ADF24 38 61 00 68 */ addi r3, r1, 0x68
/* 800B20E8 000ADF28 38 81 00 38 */ addi r4, r1, 0x38
/* 800B20EC 000ADF2C 38 A5 A3 98 */ addi r5, r5, smDrawMtxPMtoEM__Q34nw4r2ef15ParticleManager@l
/* 800B20F0 000ADF30 4B F7 E4 61 */ bl PSMTXConcat
/* 800B20F4 000ADF34 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 800B20F8 000ADF38 83 E1 00 9C */ lwz r31, 0x9c(r1)
/* 800B20FC 000ADF3C 7C 08 03 A6 */ mtlr r0
/* 800B2100 000ADF40 38 21 00 A0 */ addi r1, r1, 0xa0
/* 800B2104 000ADF44 4E 80 00 20 */ blr
/* 800B2108 000ADF48 00 00 00 00 */ .4byte 0x00000000
/* 800B210C 000ADF4C 00 00 00 00 */ .4byte 0x00000000
.global Draw_ModifyColor__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef8ParticleP8_GXColorP8_GXColor
Draw_ModifyColor__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef8ParticleP8_GXColorP8_GXColor:
/* 800B2110 000ADF50 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 800B2114 000ADF54 7C 08 02 A6 */ mflr r0
/* 800B2118 000ADF58 90 01 00 44 */ stw r0, 0x44(r1)
/* 800B211C 000ADF5C 39 61 00 40 */ addi r11, r1, 0x40
/* 800B2120 000ADF60 4B F5 52 1D */ bl lbl_8000733C
/* 800B2124 000ADF64 88 03 00 6C */ lbz r0, 0x6c(r3)
/* 800B2128 000ADF68 7C 7D 1B 78 */ mr r29, r3
/* 800B212C 000ADF6C 7C BE 2B 78 */ mr r30, r5
/* 800B2130 000ADF70 7C DF 33 78 */ mr r31, r6
/* 800B2134 000ADF74 2C 00 00 01 */ cmpwi r0, 0x1
/* 800B2138 000ADF78 41 82 00 10 */ beq lbl_800B2148
/* 800B213C 000ADF7C 2C 00 00 02 */ cmpwi r0, 0x2
/* 800B2140 000ADF80 41 82 00 CC */ beq lbl_800B220C
/* 800B2144 000ADF84 48 00 03 D0 */ b lbl_800B2514
.global lbl_800B2148
lbl_800B2148:
/* 800B2148 000ADF88 88 85 00 00 */ lbz r4, 0x0(r5)
/* 800B214C 000ADF8C 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 800B2150 000ADF90 89 05 00 01 */ lbz r8, 0x1(r5)
/* 800B2154 000ADF94 7D 24 01 D6 */ mullw r9, r4, r0
/* 800B2158 000ADF98 88 E5 00 02 */ lbz r7, 0x2(r5)
/* 800B215C 000ADF9C 88 85 00 03 */ lbz r4, 0x3(r5)
/* 800B2160 000ADFA0 38 09 00 80 */ addi r0, r9, 0x80
/* 800B2164 000ADFA4 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2168 000ADFA8 98 05 00 00 */ stb r0, 0x0(r5)
/* 800B216C 000ADFAC 88 03 00 6E */ lbz r0, 0x6e(r3)
/* 800B2170 000ADFB0 7D 08 01 D6 */ mullw r8, r8, r0
/* 800B2174 000ADFB4 38 08 00 80 */ addi r0, r8, 0x80
/* 800B2178 000ADFB8 7C 00 46 70 */ srawi r0, r0, 8
/* 800B217C 000ADFBC 98 05 00 01 */ stb r0, 0x1(r5)
/* 800B2180 000ADFC0 88 03 00 6F */ lbz r0, 0x6f(r3)
/* 800B2184 000ADFC4 7C E7 01 D6 */ mullw r7, r7, r0
/* 800B2188 000ADFC8 38 07 00 80 */ addi r0, r7, 0x80
/* 800B218C 000ADFCC 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2190 000ADFD0 98 05 00 02 */ stb r0, 0x2(r5)
/* 800B2194 000ADFD4 88 03 00 70 */ lbz r0, 0x70(r3)
/* 800B2198 000ADFD8 7C 84 01 D6 */ mullw r4, r4, r0
/* 800B219C 000ADFDC 38 04 00 80 */ addi r0, r4, 0x80
/* 800B21A0 000ADFE0 7C 00 46 70 */ srawi r0, r0, 8
/* 800B21A4 000ADFE4 98 05 00 03 */ stb r0, 0x3(r5)
/* 800B21A8 000ADFE8 88 86 00 00 */ lbz r4, 0x0(r6)
/* 800B21AC 000ADFEC 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 800B21B0 000ADFF0 88 E6 00 01 */ lbz r7, 0x1(r6)
/* 800B21B4 000ADFF4 7D 04 01 D6 */ mullw r8, r4, r0
/* 800B21B8 000ADFF8 88 A6 00 02 */ lbz r5, 0x2(r6)
/* 800B21BC 000ADFFC 88 86 00 03 */ lbz r4, 0x3(r6)
/* 800B21C0 000AE000 38 08 00 80 */ addi r0, r8, 0x80
/* 800B21C4 000AE004 7C 00 46 70 */ srawi r0, r0, 8
/* 800B21C8 000AE008 98 06 00 00 */ stb r0, 0x0(r6)
/* 800B21CC 000AE00C 88 03 00 6E */ lbz r0, 0x6e(r3)
/* 800B21D0 000AE010 7C E7 01 D6 */ mullw r7, r7, r0
/* 800B21D4 000AE014 38 07 00 80 */ addi r0, r7, 0x80
/* 800B21D8 000AE018 7C 00 46 70 */ srawi r0, r0, 8
/* 800B21DC 000AE01C 98 06 00 01 */ stb r0, 0x1(r6)
/* 800B21E0 000AE020 88 03 00 6F */ lbz r0, 0x6f(r3)
/* 800B21E4 000AE024 7C A5 01 D6 */ mullw r5, r5, r0
/* 800B21E8 000AE028 38 05 00 80 */ addi r0, r5, 0x80
/* 800B21EC 000AE02C 7C 00 46 70 */ srawi r0, r0, 8
/* 800B21F0 000AE030 98 06 00 02 */ stb r0, 0x2(r6)
/* 800B21F4 000AE034 88 03 00 70 */ lbz r0, 0x70(r3)
/* 800B21F8 000AE038 7C 64 01 D6 */ mullw r3, r4, r0
/* 800B21FC 000AE03C 38 03 00 80 */ addi r0, r3, 0x80
/* 800B2200 000AE040 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2204 000AE044 98 06 00 03 */ stb r0, 0x3(r6)
/* 800B2208 000AE048 48 00 03 0C */ b lbl_800B2514
.global lbl_800B220C
lbl_800B220C:
/* 800B220C 000AE04C C0 23 00 78 */ lfs f1, 0x78(r3)
/* 800B2210 000AE050 C0 02 8B 38 */ lfs f0, "@11202"@sda21(r2)
/* 800B2214 000AE054 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800B2218 000AE058 40 80 00 C8 */ bge lbl_800B22E0
/* 800B221C 000AE05C 88 85 00 00 */ lbz r4, 0x0(r5)
/* 800B2220 000AE060 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 800B2224 000AE064 89 05 00 01 */ lbz r8, 0x1(r5)
/* 800B2228 000AE068 7D 24 01 D6 */ mullw r9, r4, r0
/* 800B222C 000AE06C 88 E5 00 02 */ lbz r7, 0x2(r5)
/* 800B2230 000AE070 88 85 00 03 */ lbz r4, 0x3(r5)
/* 800B2234 000AE074 38 09 00 80 */ addi r0, r9, 0x80
/* 800B2238 000AE078 7C 00 46 70 */ srawi r0, r0, 8
/* 800B223C 000AE07C 98 05 00 00 */ stb r0, 0x0(r5)
/* 800B2240 000AE080 88 03 00 6E */ lbz r0, 0x6e(r3)
/* 800B2244 000AE084 7D 08 01 D6 */ mullw r8, r8, r0
/* 800B2248 000AE088 38 08 00 80 */ addi r0, r8, 0x80
/* 800B224C 000AE08C 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2250 000AE090 98 05 00 01 */ stb r0, 0x1(r5)
/* 800B2254 000AE094 88 03 00 6F */ lbz r0, 0x6f(r3)
/* 800B2258 000AE098 7C E7 01 D6 */ mullw r7, r7, r0
/* 800B225C 000AE09C 38 07 00 80 */ addi r0, r7, 0x80
/* 800B2260 000AE0A0 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2264 000AE0A4 98 05 00 02 */ stb r0, 0x2(r5)
/* 800B2268 000AE0A8 88 03 00 70 */ lbz r0, 0x70(r3)
/* 800B226C 000AE0AC 7C 84 01 D6 */ mullw r4, r4, r0
/* 800B2270 000AE0B0 38 04 00 80 */ addi r0, r4, 0x80
/* 800B2274 000AE0B4 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2278 000AE0B8 98 05 00 03 */ stb r0, 0x3(r5)
/* 800B227C 000AE0BC 88 86 00 00 */ lbz r4, 0x0(r6)
/* 800B2280 000AE0C0 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 800B2284 000AE0C4 88 E6 00 01 */ lbz r7, 0x1(r6)
/* 800B2288 000AE0C8 7D 04 01 D6 */ mullw r8, r4, r0
/* 800B228C 000AE0CC 88 A6 00 02 */ lbz r5, 0x2(r6)
/* 800B2290 000AE0D0 88 86 00 03 */ lbz r4, 0x3(r6)
/* 800B2294 000AE0D4 38 08 00 80 */ addi r0, r8, 0x80
/* 800B2298 000AE0D8 7C 00 46 70 */ srawi r0, r0, 8
/* 800B229C 000AE0DC 98 06 00 00 */ stb r0, 0x0(r6)
/* 800B22A0 000AE0E0 88 03 00 6E */ lbz r0, 0x6e(r3)
/* 800B22A4 000AE0E4 7C E7 01 D6 */ mullw r7, r7, r0
/* 800B22A8 000AE0E8 38 07 00 80 */ addi r0, r7, 0x80
/* 800B22AC 000AE0EC 7C 00 46 70 */ srawi r0, r0, 8
/* 800B22B0 000AE0F0 98 06 00 01 */ stb r0, 0x1(r6)
/* 800B22B4 000AE0F4 88 03 00 6F */ lbz r0, 0x6f(r3)
/* 800B22B8 000AE0F8 7C A5 01 D6 */ mullw r5, r5, r0
/* 800B22BC 000AE0FC 38 05 00 80 */ addi r0, r5, 0x80
/* 800B22C0 000AE100 7C 00 46 70 */ srawi r0, r0, 8
/* 800B22C4 000AE104 98 06 00 02 */ stb r0, 0x2(r6)
/* 800B22C8 000AE108 88 03 00 70 */ lbz r0, 0x70(r3)
/* 800B22CC 000AE10C 7C 64 01 D6 */ mullw r3, r4, r0
/* 800B22D0 000AE110 38 03 00 80 */ addi r0, r3, 0x80
/* 800B22D4 000AE114 7C 00 46 70 */ srawi r0, r0, 8
/* 800B22D8 000AE118 98 06 00 03 */ stb r0, 0x3(r6)
/* 800B22DC 000AE11C 48 00 02 38 */ b lbl_800B2514
.global lbl_800B22E0
lbl_800B22E0:
/* 800B22E0 000AE120 3C 60 80 51 */ lis r3, smDrawMtxPMtoEM__Q34nw4r2ef15ParticleManager@ha
/* 800B22E4 000AE124 38 84 00 AC */ addi r4, r4, 0xac
/* 800B22E8 000AE128 38 63 A3 98 */ addi r3, r3, smDrawMtxPMtoEM__Q34nw4r2ef15ParticleManager@l
/* 800B22EC 000AE12C 38 A1 00 08 */ addi r5, r1, 0x8
/* 800B22F0 000AE130 4B F7 EE 01 */ bl PSMTXMultVec
/* 800B22F4 000AE134 38 61 00 08 */ addi r3, r1, 0x8
/* 800B22F8 000AE138 E0 1D 00 7C */ psq_l f0, 0x7c(r29), 0, qr0
/* 800B22FC 000AE13C E0 23 00 00 */ psq_l f1, 0x0(r3), 0, qr0
/* 800B2300 000AE140 10 01 00 28 */ ps_sub f0, f1, f0
/* 800B2304 000AE144 E0 23 80 08 */ psq_l f1, 0x8(r3), 1, qr0
/* 800B2308 000AE148 F0 03 00 00 */ psq_st f0, 0x0(r3), 0, qr0
/* 800B230C 000AE14C E0 1D 80 84 */ psq_l f0, 0x84(r29), 1, qr0
/* 800B2310 000AE150 10 01 00 28 */ ps_sub f0, f1, f0
/* 800B2314 000AE154 F0 03 80 08 */ psq_st f0, 0x8(r3), 1, qr0
/* 800B2318 000AE158 4B F7 F2 D9 */ bl PSVECMag
/* 800B231C 000AE15C C0 5D 00 78 */ lfs f2, 0x78(r29)
/* 800B2320 000AE160 FC 01 10 40 */ fcmpo cr0, f1, f2
/* 800B2324 000AE164 40 81 00 C8 */ ble lbl_800B23EC
/* 800B2328 000AE168 88 7E 00 00 */ lbz r3, 0x0(r30)
/* 800B232C 000AE16C 88 1D 00 6D */ lbz r0, 0x6d(r29)
/* 800B2330 000AE170 88 BE 00 01 */ lbz r5, 0x1(r30)
/* 800B2334 000AE174 7C C3 01 D6 */ mullw r6, r3, r0
/* 800B2338 000AE178 88 9E 00 02 */ lbz r4, 0x2(r30)
/* 800B233C 000AE17C 88 7E 00 03 */ lbz r3, 0x3(r30)
/* 800B2340 000AE180 38 06 00 80 */ addi r0, r6, 0x80
/* 800B2344 000AE184 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2348 000AE188 98 1E 00 00 */ stb r0, 0x0(r30)
/* 800B234C 000AE18C 88 1D 00 6E */ lbz r0, 0x6e(r29)
/* 800B2350 000AE190 7C A5 01 D6 */ mullw r5, r5, r0
/* 800B2354 000AE194 38 05 00 80 */ addi r0, r5, 0x80
/* 800B2358 000AE198 7C 00 46 70 */ srawi r0, r0, 8
/* 800B235C 000AE19C 98 1E 00 01 */ stb r0, 0x1(r30)
/* 800B2360 000AE1A0 88 1D 00 6F */ lbz r0, 0x6f(r29)
/* 800B2364 000AE1A4 7C 84 01 D6 */ mullw r4, r4, r0
/* 800B2368 000AE1A8 38 04 00 80 */ addi r0, r4, 0x80
/* 800B236C 000AE1AC 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2370 000AE1B0 98 1E 00 02 */ stb r0, 0x2(r30)
/* 800B2374 000AE1B4 88 1D 00 70 */ lbz r0, 0x70(r29)
/* 800B2378 000AE1B8 7C 63 01 D6 */ mullw r3, r3, r0
/* 800B237C 000AE1BC 38 03 00 80 */ addi r0, r3, 0x80
/* 800B2380 000AE1C0 7C 00 46 70 */ srawi r0, r0, 8
/* 800B2384 000AE1C4 98 1E 00 03 */ stb r0, 0x3(r30)
/* 800B2388 000AE1C8 88 7F 00 00 */ lbz r3, 0x0(r31)
/* 800B238C 000AE1CC 88 1D 00 6D */ lbz r0, 0x6d(r29)
/* 800B2390 000AE1D0 88 BF 00 01 */ lbz r5, 0x1(r31)
/* 800B2394 000AE1D4 7C C3 01 D6 */ mullw r6, r3, r0
/* 800B2398 000AE1D8 88 9F 00 02 */ lbz r4, 0x2(r31)
/* 800B239C 000AE1DC 88 7F 00 03 */ lbz r3, 0x3(r31)
/* 800B23A0 000AE1E0 38 06 00 80 */ addi r0, r6, 0x80
/* 800B23A4 000AE1E4 7C 00 46 70 */ srawi r0, r0, 8
/* 800B23A8 000AE1E8 98 1F 00 00 */ stb r0, 0x0(r31)
/* 800B23AC 000AE1EC 88 1D 00 6E */ lbz r0, 0x6e(r29)
/* 800B23B0 000AE1F0 7C A5 01 D6 */ mullw r5, r5, r0
/* 800B23B4 000AE1F4 38 05 00 80 */ addi r0, r5, 0x80
/* 800B23B8 000AE1F8 7C 00 46 70 */ srawi r0, r0, 8
/* 800B23BC 000AE1FC 98 1F 00 01 */ stb r0, 0x1(r31)
/* 800B23C0 000AE200 88 1D 00 6F */ lbz r0, 0x6f(r29)
/* 800B23C4 000AE204 7C 84 01 D6 */ mullw r4, r4, r0
/* 800B23C8 000AE208 38 04 00 80 */ addi r0, r4, 0x80
/* 800B23CC 000AE20C 7C 00 46 70 */ srawi r0, r0, 8
/* 800B23D0 000AE210 98 1F 00 02 */ stb r0, 0x2(r31)
/* 800B23D4 000AE214 88 1D 00 70 */ lbz r0, 0x70(r29)
/* 800B23D8 000AE218 7C 63 01 D6 */ mullw r3, r3, r0
/* 800B23DC 000AE21C 38 03 00 80 */ addi r0, r3, 0x80
/* 800B23E0 000AE220 7C 00 46 70 */ srawi r0, r0, 8
/* 800B23E4 000AE224 98 1F 00 03 */ stb r0, 0x3(r31)
/* 800B23E8 000AE228 48 00 01 2C */ b lbl_800B2514
.global lbl_800B23EC
lbl_800B23EC:
/* 800B23EC 000AE22C C0 02 8B 3C */ lfs f0, "@11203_8055EABC"@sda21(r2)
/* 800B23F0 000AE230 88 9D 00 71 */ lbz r4, 0x71(r29)
/* 800B23F4 000AE234 EC 00 00 72 */ fmuls f0, f0, f1
/* 800B23F8 000AE238 88 7D 00 6D */ lbz r3, 0x6d(r29)
/* 800B23FC 000AE23C 88 BD 00 72 */ lbz r5, 0x72(r29)
/* 800B2400 000AE240 54 9B 40 2E */ slwi r27, r4, 8
/* 800B2404 000AE244 88 1D 00 6E */ lbz r0, 0x6e(r29)
/* 800B2408 000AE248 7C C4 18 50 */ subf r6, r4, r3
/* 800B240C 000AE24C EC 00 10 24 */ fdivs f0, f0, f2
/* 800B2410 000AE250 88 FD 00 73 */ lbz r7, 0x73(r29)
/* 800B2414 000AE254 88 7D 00 6F */ lbz r3, 0x6f(r29)
/* 800B2418 000AE258 7D 25 00 50 */ subf r9, r5, r0
/* 800B241C 000AE25C 89 5D 00 74 */ lbz r10, 0x74(r29)
/* 800B2420 000AE260 54 BC 40 2E */ slwi r28, r5, 8
/* 800B2424 000AE264 FC 00 00 1E */ fctiwz f0, f0
/* 800B2428 000AE268 88 1D 00 70 */ lbz r0, 0x70(r29)
/* 800B242C 000AE26C 55 4B 40 2E */ slwi r11, r10, 8
/* 800B2430 000AE270 7C 67 18 50 */ subf r3, r7, r3
/* 800B2434 000AE274 D8 01 00 18 */ stfd f0, 0x18(r1)
/* 800B2438 000AE278 54 EC 40 2E */ slwi r12, r7, 8
/* 800B243C 000AE27C 83 A1 00 1C */ lwz r29, 0x1c(r1)
/* 800B2440 000AE280 7C 8A 00 50 */ subf r4, r10, r0
/* 800B2444 000AE284 88 BE 00 00 */ lbz r5, 0x0(r30)
/* 800B2448 000AE288 7C 1D 31 D6 */ mullw r0, r29, r6
/* 800B244C 000AE28C 89 1E 00 01 */ lbz r8, 0x1(r30)
/* 800B2450 000AE290 88 FE 00 02 */ lbz r7, 0x2(r30)
/* 800B2454 000AE294 88 DE 00 03 */ lbz r6, 0x3(r30)
/* 800B2458 000AE298 7D 5D 49 D6 */ mullw r10, r29, r9
/* 800B245C 000AE29C 7C 1B 02 14 */ add r0, r27, r0
/* 800B2460 000AE2A0 54 00 04 3E */ clrlwi r0, r0, 16
/* 800B2464 000AE2A4 7D 3D 19 D6 */ mullw r9, r29, r3
/* 800B2468 000AE2A8 7C 7C 52 14 */ add r3, r28, r10
/* 800B246C 000AE2AC 54 63 04 3E */ clrlwi r3, r3, 16
/* 800B2470 000AE2B0 7D 5D 21 D6 */ mullw r10, r29, r4
/* 800B2474 000AE2B4 7C 8C 4A 14 */ add r4, r12, r9
/* 800B2478 000AE2B8 54 84 04 3E */ clrlwi r4, r4, 16
/* 800B247C 000AE2BC 7D 25 01 D6 */ mullw r9, r5, r0
/* 800B2480 000AE2C0 7C AB 52 14 */ add r5, r11, r10
/* 800B2484 000AE2C4 54 A5 04 3E */ clrlwi r5, r5, 16
/* 800B2488 000AE2C8 7D 08 19 D6 */ mullw r8, r8, r3
/* 800B248C 000AE2CC 39 29 00 80 */ addi r9, r9, 0x80
/* 800B2490 000AE2D0 7D 29 86 70 */ srawi r9, r9, 16
/* 800B2494 000AE2D4 99 3E 00 00 */ stb r9, 0x0(r30)
/* 800B2498 000AE2D8 7C E7 21 D6 */ mullw r7, r7, r4
/* 800B249C 000AE2DC 39 08 00 80 */ addi r8, r8, 0x80
/* 800B24A0 000AE2E0 7D 08 86 70 */ srawi r8, r8, 16
/* 800B24A4 000AE2E4 99 1E 00 01 */ stb r8, 0x1(r30)
/* 800B24A8 000AE2E8 7C C6 29 D6 */ mullw r6, r6, r5
/* 800B24AC 000AE2EC 38 E7 00 80 */ addi r7, r7, 0x80
/* 800B24B0 000AE2F0 7C E7 86 70 */ srawi r7, r7, 16
/* 800B24B4 000AE2F4 98 FE 00 02 */ stb r7, 0x2(r30)
/* 800B24B8 000AE2F8 38 C6 00 80 */ addi r6, r6, 0x80
/* 800B24BC 000AE2FC 7C C6 86 70 */ srawi r6, r6, 16
/* 800B24C0 000AE300 98 DE 00 03 */ stb r6, 0x3(r30)
/* 800B24C4 000AE304 88 DF 00 00 */ lbz r6, 0x0(r31)
/* 800B24C8 000AE308 88 FF 00 01 */ lbz r7, 0x1(r31)
/* 800B24CC 000AE30C 7D 06 01 D6 */ mullw r8, r6, r0
/* 800B24D0 000AE310 88 DF 00 02 */ lbz r6, 0x2(r31)
/* 800B24D4 000AE314 88 1F 00 03 */ lbz r0, 0x3(r31)
/* 800B24D8 000AE318 7C 67 19 D6 */ mullw r3, r7, r3
/* 800B24DC 000AE31C 38 E8 00 80 */ addi r7, r8, 0x80
/* 800B24E0 000AE320 7C E7 86 70 */ srawi r7, r7, 16
/* 800B24E4 000AE324 98 FF 00 00 */ stb r7, 0x0(r31)
/* 800B24E8 000AE328 38 63 00 80 */ addi r3, r3, 0x80
/* 800B24EC 000AE32C 7C 63 86 70 */ srawi r3, r3, 16
/* 800B24F0 000AE330 98 7F 00 01 */ stb r3, 0x1(r31)
/* 800B24F4 000AE334 7C 86 21 D6 */ mullw r4, r6, r4
/* 800B24F8 000AE338 7C 60 29 D6 */ mullw r3, r0, r5
/* 800B24FC 000AE33C 38 04 00 80 */ addi r0, r4, 0x80
/* 800B2500 000AE340 7C 00 86 70 */ srawi r0, r0, 16
/* 800B2504 000AE344 98 1F 00 02 */ stb r0, 0x2(r31)
/* 800B2508 000AE348 38 03 00 80 */ addi r0, r3, 0x80
/* 800B250C 000AE34C 7C 00 86 70 */ srawi r0, r0, 16
/* 800B2510 000AE350 98 1F 00 03 */ stb r0, 0x3(r31)
.global lbl_800B2514
lbl_800B2514:
/* 800B2514 000AE354 39 61 00 40 */ addi r11, r1, 0x40
/* 800B2518 000AE358 4B F5 4E 71 */ bl lbl_80007388
/* 800B251C 000AE35C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 800B2520 000AE360 7C 08 03 A6 */ mtlr r0
/* 800B2524 000AE364 38 21 00 40 */ addi r1, r1, 0x40
/* 800B2528 000AE368 4E 80 00 20 */ blr
/* 800B252C 000AE36C 00 00 00 00 */ .4byte 0x00000000
.global "__sinit_@@1ef_particlemanager_cpp"
"__sinit_@@1ef_particlemanager_cpp":
/* 800B2530 000AE370 4E 80 00 20 */ blr
/* 800B2534 000AE374 00 00 00 00 */ .4byte 0x00000000
/* 800B2538 000AE378 00 00 00 00 */ .4byte 0x00000000
/* 800B253C 000AE37C 00 00 00 00 */ .4byte 0x00000000
.include "macros.inc"
.section .ctors, "wa" # 0x80406260 - 0x80406540 ; 0x000002E0
.4byte "__sinit_@@1ef_particlemanager_cpp"
.include "macros.inc"
.section .data, "wa" # 0x80421040 - 0x80496700 ; 0x000756C0
.global "@11043"
"@11043":
.4byte lbl_800B0E90
.4byte lbl_800B0E68
.4byte lbl_800B1394
.4byte lbl_800B13E8
.4byte lbl_800B1478
.4byte lbl_800B15E8
.4byte lbl_800B1328
.4byte lbl_800B0ED4
.4byte lbl_800B1578
.4byte 0
.global __vt__Q34nw4r2ef15ParticleManager
__vt__Q34nw4r2ef15ParticleManager:
.4byte 0
.4byte 0
.4byte SendClosing__Q34nw4r2ef15ParticleManagerFv
.4byte DestroyFunc__Q34nw4r2ef15ParticleManagerFv
.4byte Initialize__Q34nw4r2ef15ParticleManagerFPQ34nw4r2ef7EmitterPQ34nw4r2ef15EmitterResource
.4byte CreateParticle__Q34nw4r2ef15ParticleManagerFUsQ34nw4r4math4VEC3Q34nw4r4math4VEC3PCQ34nw4r4math5MTX34fPCQ34nw4r2ef21EmitterInheritSettingPQ34nw4r2ef8ParticleUs
.4byte Calc__Q34nw4r2ef15ParticleManagerFv
.4byte Draw__Q34nw4r2ef15ParticleManagerFRCQ34nw4r2ef8DrawInfo
.include "macros.inc"
.section .bss, "", @nobits # 0x80496700 - 0x80556420 ; 0x000BFD20
.global smDrawMtxPMtoEM__Q34nw4r2ef15ParticleManager
smDrawMtxPMtoEM__Q34nw4r2ef15ParticleManager:
.skip 0x30
.include "macros.inc"
.section .sbss, "", @nobits # 0x8055C6E0 - 0x8055DF80 ; 0x000018A0
.global smMtxInvId__Q34nw4r2ef15ParticleManager
smMtxInvId__Q34nw4r2ef15ParticleManager:
.skip 0x8
.include "macros.inc"
.section .sdata2, "wa" # 0x8055DF80 - 0x805643C0 ; 0x00006440
.global "@10377"
"@10377":
.4byte 0x3F800000
.global "@10378"
"@10378":
.4byte 0
.global "@11032_8055EA80"
"@11032_8055EA80":
.4byte 0x3F13CD3A
.global "@11033"
"@11033":
.4byte 0x47000000
.global "@11034"
"@11034":
.4byte 0x477FFF00
.global "@11035"
"@11035":
.4byte 0x40000000
.global "@11036"
"@11036":
.4byte 0x40490FDB
.global "@11037"
"@11037":
.4byte 0x4222F983
.global "@11038"
"@11038":
.4byte 0x40000000
.4byte 0
.global "@11039"
"@11039":
.4byte 0xBF800000
.4byte 0
.global "@11044"
"@11044":
.4byte 0x43300000
.4byte 0x80000000
.global "@11045"
"@11045":
.4byte 0x43300000
.4byte 0
.global "@11202"
"@11202":
.4byte 0x34000000
.global "@11203_8055EABC"
"@11203_8055EABC":
.4byte 0x43800000