.include "macros.inc" .section .data .balign 8 .global lbl_803E5758 lbl_803E5758: # ROM: 0x3E2758 .4byte 0 .4byte 0 .4byte __dt__10CFishCloudFv .4byte Accept__10CFishCloudFR8IVisitor .4byte PreThink__7CEntityFfR13CStateManager .4byte Think__10CFishCloudFfR13CStateManager .4byte AcceptScriptMsg__10CFishCloudF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFb .4byte PreRender__10CFishCloudFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager .4byte Render__10CFishCloudCFRC13CStateManager .4byte CanRenderUnsorted__6CActorCFRC13CStateManager .4byte CalculateRenderBounds__10CFishCloudFv .4byte HealthInfo__6CActorFR13CStateManager .4byte GetDamageVulnerability__6CActorCFv .4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo .4byte GetTouchBounds__10CFishCloudCFv .4byte Touch__10CFishCloudFR6CActorR13CStateManager .4byte GetOrbitPosition__6CActorCFRC13CStateManager .4byte GetAimPosition__6CActorCFRC13CStateManagerf .4byte GetHomingPosition__6CActorCFRC13CStateManagerf .4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager .4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei .4byte FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager .4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef .global lbl_803E57C4 lbl_803E57C4: # ROM: 0x3E27C4 .4byte 0 .4byte 0 .4byte __dt__18CFishCloudModifierFv .4byte Accept__18CFishCloudModifierFR8IVisitor .4byte PreThink__7CEntityFfR13CStateManager .4byte Think__7CEntityFfR13CStateManager .4byte AcceptScriptMsg__18CFishCloudModifierF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFb .4byte PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager .4byte Render__6CActorCFRC13CStateManager .4byte CanRenderUnsorted__6CActorCFRC13CStateManager .4byte CalculateRenderBounds__6CActorFv .4byte HealthInfo__6CActorFR13CStateManager .4byte GetDamageVulnerability__6CActorCFv .4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo .4byte GetTouchBounds__6CActorCFv .4byte Touch__6CActorFR6CActorR13CStateManager .4byte GetOrbitPosition__6CActorCFRC13CStateManager .4byte GetAimPosition__6CActorCFRC13CStateManagerf .4byte GetHomingPosition__6CActorCFRC13CStateManagerf .4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager .4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei .4byte FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager .4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef .section .sdata .balign 8 .global lbl_805A7D48 lbl_805A7D48: # ROM: 0x3F56E8 .4byte 0 .global lbl_805A7D4C lbl_805A7D4C: # ROM: 0x3F56EC .4byte 0 .global lbl_805A7D50 lbl_805A7D50: # ROM: 0x3F56F0 .4byte 0 .global lbl_805A7D54 lbl_805A7D54: # ROM: 0x3F56F4 .4byte 0 .section .text, "ax" .global __dt__10CFishCloudFv __dt__10CFishCloudFv: /* 801CE1B4 001CB114 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801CE1B8 001CB118 7C 08 02 A6 */ mflr r0 /* 801CE1BC 001CB11C 90 01 00 54 */ stw r0, 0x54(r1) /* 801CE1C0 001CB120 93 E1 00 4C */ stw r31, 0x4c(r1) /* 801CE1C4 001CB124 7C 9F 23 78 */ mr r31, r4 /* 801CE1C8 001CB128 93 C1 00 48 */ stw r30, 0x48(r1) /* 801CE1CC 001CB12C 7C 7E 1B 79 */ or. r30, r3, r3 /* 801CE1D0 001CB130 93 A1 00 44 */ stw r29, 0x44(r1) /* 801CE1D4 001CB134 93 81 00 40 */ stw r28, 0x40(r1) /* 801CE1D8 001CB138 41 82 02 F8 */ beq lbl_801CE4D0 /* 801CE1DC 001CB13C 3C 60 80 3E */ lis r3, lbl_803E5758@ha /* 801CE1E0 001CB140 34 1E 02 1C */ addic. r0, r30, 0x21c /* 801CE1E4 001CB144 38 03 57 58 */ addi r0, r3, lbl_803E5758@l /* 801CE1E8 001CB148 90 1E 00 00 */ stw r0, 0(r30) /* 801CE1EC 001CB14C 41 82 00 58 */ beq lbl_801CE244 /* 801CE1F0 001CB150 80 BE 02 1C */ lwz r5, 0x21c(r30) /* 801CE1F4 001CB154 38 60 00 00 */ li r3, 0 /* 801CE1F8 001CB158 2C 05 00 00 */ cmpwi r5, 0 /* 801CE1FC 001CB15C 40 81 00 40 */ ble lbl_801CE23C /* 801CE200 001CB160 2C 05 00 08 */ cmpwi r5, 8 /* 801CE204 001CB164 38 85 FF F8 */ addi r4, r5, -8 /* 801CE208 001CB168 40 81 00 20 */ ble lbl_801CE228 /* 801CE20C 001CB16C 38 04 00 07 */ addi r0, r4, 7 /* 801CE210 001CB170 54 00 E8 FE */ srwi r0, r0, 3 /* 801CE214 001CB174 7C 09 03 A6 */ mtctr r0 /* 801CE218 001CB178 2C 04 00 00 */ cmpwi r4, 0 /* 801CE21C 001CB17C 40 81 00 0C */ ble lbl_801CE228 lbl_801CE220: /* 801CE220 001CB180 38 63 00 08 */ addi r3, r3, 8 /* 801CE224 001CB184 42 00 FF FC */ bdnz lbl_801CE220 lbl_801CE228: /* 801CE228 001CB188 7C 03 28 50 */ subf r0, r3, r5 /* 801CE22C 001CB18C 7C 09 03 A6 */ mtctr r0 /* 801CE230 001CB190 7C 03 28 00 */ cmpw r3, r5 /* 801CE234 001CB194 40 80 00 08 */ bge lbl_801CE23C lbl_801CE238: /* 801CE238 001CB198 42 00 00 00 */ bdnz lbl_801CE238 lbl_801CE23C: /* 801CE23C 001CB19C 38 00 00 00 */ li r0, 0 /* 801CE240 001CB1A0 90 1E 02 1C */ stw r0, 0x21c(r30) lbl_801CE244: /* 801CE244 001CB1A4 34 1E 01 F8 */ addic. r0, r30, 0x1f8 /* 801CE248 001CB1A8 41 82 00 60 */ beq lbl_801CE2A8 /* 801CE24C 001CB1AC 3B 9E 01 FC */ addi r28, r30, 0x1fc /* 801CE250 001CB1B0 3B A0 00 00 */ li r29, 0 /* 801CE254 001CB1B4 48 00 00 40 */ b lbl_801CE294 lbl_801CE258: /* 801CE258 001CB1B8 28 1C 00 00 */ cmplwi r28, 0 /* 801CE25C 001CB1BC 41 82 00 30 */ beq lbl_801CE28C /* 801CE260 001CB1C0 88 1C 00 00 */ lbz r0, 0(r28) /* 801CE264 001CB1C4 28 00 00 00 */ cmplwi r0, 0 /* 801CE268 001CB1C8 41 82 00 24 */ beq lbl_801CE28C /* 801CE26C 001CB1CC 80 7C 00 04 */ lwz r3, 4(r28) /* 801CE270 001CB1D0 28 03 00 00 */ cmplwi r3, 0 /* 801CE274 001CB1D4 41 82 00 18 */ beq lbl_801CE28C /* 801CE278 001CB1D8 81 83 00 00 */ lwz r12, 0(r3) /* 801CE27C 001CB1DC 38 80 00 01 */ li r4, 1 /* 801CE280 001CB1E0 81 8C 00 08 */ lwz r12, 8(r12) /* 801CE284 001CB1E4 7D 89 03 A6 */ mtctr r12 /* 801CE288 001CB1E8 4E 80 04 21 */ bctrl lbl_801CE28C: /* 801CE28C 001CB1EC 3B 9C 00 08 */ addi r28, r28, 8 /* 801CE290 001CB1F0 3B BD 00 01 */ addi r29, r29, 1 lbl_801CE294: /* 801CE294 001CB1F4 80 1E 01 F8 */ lwz r0, 0x1f8(r30) /* 801CE298 001CB1F8 7C 1D 00 00 */ cmpw r29, r0 /* 801CE29C 001CB1FC 41 80 FF BC */ blt lbl_801CE258 /* 801CE2A0 001CB200 38 00 00 00 */ li r0, 0 /* 801CE2A4 001CB204 90 1E 01 F8 */ stw r0, 0x1f8(r30) lbl_801CE2A8: /* 801CE2A8 001CB208 34 1E 01 C4 */ addic. r0, r30, 0x1c4 /* 801CE2AC 001CB20C 41 82 00 44 */ beq lbl_801CE2F0 /* 801CE2B0 001CB210 3B 9E 01 C8 */ addi r28, r30, 0x1c8 /* 801CE2B4 001CB214 3B A0 00 00 */ li r29, 0 /* 801CE2B8 001CB218 48 00 00 24 */ b lbl_801CE2DC lbl_801CE2BC: /* 801CE2BC 001CB21C 28 1C 00 00 */ cmplwi r28, 0 /* 801CE2C0 001CB220 41 82 00 14 */ beq lbl_801CE2D4 /* 801CE2C4 001CB224 41 82 00 10 */ beq lbl_801CE2D4 /* 801CE2C8 001CB228 7F 83 E3 78 */ mr r3, r28 /* 801CE2CC 001CB22C 38 80 00 00 */ li r4, 0 /* 801CE2D0 001CB230 48 17 2B 71 */ bl __dt__6CTokenFv lbl_801CE2D4: /* 801CE2D4 001CB234 3B 9C 00 0C */ addi r28, r28, 0xc /* 801CE2D8 001CB238 3B BD 00 01 */ addi r29, r29, 1 lbl_801CE2DC: /* 801CE2DC 001CB23C 80 1E 01 C4 */ lwz r0, 0x1c4(r30) /* 801CE2E0 001CB240 7C 1D 00 00 */ cmpw r29, r0 /* 801CE2E4 001CB244 41 80 FF D8 */ blt lbl_801CE2BC /* 801CE2E8 001CB248 38 00 00 00 */ li r0, 0 /* 801CE2EC 001CB24C 90 1E 01 C4 */ stw r0, 0x1c4(r30) lbl_801CE2F0: /* 801CE2F0 001CB250 34 1E 01 B0 */ addic. r0, r30, 0x1b0 /* 801CE2F4 001CB254 41 82 00 40 */ beq lbl_801CE334 /* 801CE2F8 001CB258 3B 9E 01 B4 */ addi r28, r30, 0x1b4 /* 801CE2FC 001CB25C 3B A0 00 00 */ li r29, 0 /* 801CE300 001CB260 48 00 00 20 */ b lbl_801CE320 lbl_801CE304: /* 801CE304 001CB264 28 1C 00 00 */ cmplwi r28, 0 /* 801CE308 001CB268 41 82 00 10 */ beq lbl_801CE318 /* 801CE30C 001CB26C 41 82 00 0C */ beq lbl_801CE318 /* 801CE310 001CB270 7F 83 E3 78 */ mr r3, r28 /* 801CE314 001CB274 48 00 50 4D */ bl sub_801d3360 lbl_801CE318: /* 801CE318 001CB278 3B 9C 00 04 */ addi r28, r28, 4 /* 801CE31C 001CB27C 3B BD 00 01 */ addi r29, r29, 1 lbl_801CE320: /* 801CE320 001CB280 80 1E 01 B0 */ lwz r0, 0x1b0(r30) /* 801CE324 001CB284 7C 1D 00 00 */ cmpw r29, r0 /* 801CE328 001CB288 41 80 FF DC */ blt lbl_801CE304 /* 801CE32C 001CB28C 38 00 00 00 */ li r0, 0 /* 801CE330 001CB290 90 1E 01 B0 */ stw r0, 0x1b0(r30) lbl_801CE334: /* 801CE334 001CB294 34 1E 01 9C */ addic. r0, r30, 0x19c /* 801CE338 001CB298 41 82 00 58 */ beq lbl_801CE390 /* 801CE33C 001CB29C 80 BE 01 9C */ lwz r5, 0x19c(r30) /* 801CE340 001CB2A0 38 60 00 00 */ li r3, 0 /* 801CE344 001CB2A4 2C 05 00 00 */ cmpwi r5, 0 /* 801CE348 001CB2A8 40 81 00 40 */ ble lbl_801CE388 /* 801CE34C 001CB2AC 2C 05 00 08 */ cmpwi r5, 8 /* 801CE350 001CB2B0 38 85 FF F8 */ addi r4, r5, -8 /* 801CE354 001CB2B4 40 81 00 20 */ ble lbl_801CE374 /* 801CE358 001CB2B8 38 04 00 07 */ addi r0, r4, 7 /* 801CE35C 001CB2BC 54 00 E8 FE */ srwi r0, r0, 3 /* 801CE360 001CB2C0 7C 09 03 A6 */ mtctr r0 /* 801CE364 001CB2C4 2C 04 00 00 */ cmpwi r4, 0 /* 801CE368 001CB2C8 40 81 00 0C */ ble lbl_801CE374 lbl_801CE36C: /* 801CE36C 001CB2CC 38 63 00 08 */ addi r3, r3, 8 /* 801CE370 001CB2D0 42 00 FF FC */ bdnz lbl_801CE36C lbl_801CE374: /* 801CE374 001CB2D4 7C 03 28 50 */ subf r0, r3, r5 /* 801CE378 001CB2D8 7C 09 03 A6 */ mtctr r0 /* 801CE37C 001CB2DC 7C 03 28 00 */ cmpw r3, r5 /* 801CE380 001CB2E0 40 80 00 08 */ bge lbl_801CE388 lbl_801CE384: /* 801CE384 001CB2E4 42 00 00 00 */ bdnz lbl_801CE384 lbl_801CE388: /* 801CE388 001CB2E8 38 00 00 00 */ li r0, 0 /* 801CE38C 001CB2EC 90 1E 01 9C */ stw r0, 0x19c(r30) lbl_801CE390: /* 801CE390 001CB2F0 34 1E 01 78 */ addic. r0, r30, 0x178 /* 801CE394 001CB2F4 41 82 00 48 */ beq lbl_801CE3DC /* 801CE398 001CB2F8 3B 9E 01 7C */ addi r28, r30, 0x17c /* 801CE39C 001CB2FC 3B A0 00 00 */ li r29, 0 /* 801CE3A0 001CB300 48 00 00 28 */ b lbl_801CE3C8 lbl_801CE3A4: /* 801CE3A4 001CB304 28 1C 00 00 */ cmplwi r28, 0 /* 801CE3A8 001CB308 41 82 00 18 */ beq lbl_801CE3C0 /* 801CE3AC 001CB30C 88 1C 00 00 */ lbz r0, 0(r28) /* 801CE3B0 001CB310 28 00 00 00 */ cmplwi r0, 0 /* 801CE3B4 001CB314 41 82 00 0C */ beq lbl_801CE3C0 /* 801CE3B8 001CB318 80 7C 00 04 */ lwz r3, 4(r28) /* 801CE3BC 001CB31C 48 14 75 75 */ bl Free__7CMemoryFPCv lbl_801CE3C0: /* 801CE3C0 001CB320 3B 9C 00 08 */ addi r28, r28, 8 /* 801CE3C4 001CB324 3B BD 00 01 */ addi r29, r29, 1 lbl_801CE3C8: /* 801CE3C8 001CB328 80 1E 01 78 */ lwz r0, 0x178(r30) /* 801CE3CC 001CB32C 7C 1D 00 00 */ cmpw r29, r0 /* 801CE3D0 001CB330 41 80 FF D4 */ blt lbl_801CE3A4 /* 801CE3D4 001CB334 38 00 00 00 */ li r0, 0 /* 801CE3D8 001CB338 90 1E 01 78 */ stw r0, 0x178(r30) lbl_801CE3DC: /* 801CE3DC 001CB33C 34 1E 01 08 */ addic. r0, r30, 0x108 /* 801CE3E0 001CB340 41 82 00 44 */ beq lbl_801CE424 /* 801CE3E4 001CB344 80 1E 01 0C */ lwz r0, 0x10c(r30) /* 801CE3E8 001CB348 80 7E 01 14 */ lwz r3, 0x114(r30) /* 801CE3EC 001CB34C 54 00 20 36 */ slwi r0, r0, 4 /* 801CE3F0 001CB350 7C 03 02 14 */ add r0, r3, r0 /* 801CE3F4 001CB354 90 61 00 2C */ stw r3, 0x2c(r1) /* 801CE3F8 001CB358 7C 64 1B 78 */ mr r4, r3 /* 801CE3FC 001CB35C 90 01 00 34 */ stw r0, 0x34(r1) /* 801CE400 001CB360 90 01 00 30 */ stw r0, 0x30(r1) /* 801CE404 001CB364 90 61 00 28 */ stw r3, 0x28(r1) /* 801CE408 001CB368 48 00 00 08 */ b lbl_801CE410 lbl_801CE40C: /* 801CE40C 001CB36C 38 84 00 10 */ addi r4, r4, 0x10 lbl_801CE410: /* 801CE410 001CB370 7C 04 00 40 */ cmplw r4, r0 /* 801CE414 001CB374 40 82 FF F8 */ bne lbl_801CE40C /* 801CE418 001CB378 28 03 00 00 */ cmplwi r3, 0 /* 801CE41C 001CB37C 41 82 00 08 */ beq lbl_801CE424 /* 801CE420 001CB380 48 14 75 11 */ bl Free__7CMemoryFPCv lbl_801CE424: /* 801CE424 001CB384 34 1E 00 F8 */ addic. r0, r30, 0xf8 /* 801CE428 001CB388 41 82 00 44 */ beq lbl_801CE46C /* 801CE42C 001CB38C 80 1E 00 FC */ lwz r0, 0xfc(r30) /* 801CE430 001CB390 80 7E 01 04 */ lwz r3, 0x104(r30) /* 801CE434 001CB394 54 00 10 3A */ slwi r0, r0, 2 /* 801CE438 001CB398 7C 03 02 14 */ add r0, r3, r0 /* 801CE43C 001CB39C 90 61 00 1C */ stw r3, 0x1c(r1) /* 801CE440 001CB3A0 7C 64 1B 78 */ mr r4, r3 /* 801CE444 001CB3A4 90 01 00 24 */ stw r0, 0x24(r1) /* 801CE448 001CB3A8 90 01 00 20 */ stw r0, 0x20(r1) /* 801CE44C 001CB3AC 90 61 00 18 */ stw r3, 0x18(r1) /* 801CE450 001CB3B0 48 00 00 08 */ b lbl_801CE458 lbl_801CE454: /* 801CE454 001CB3B4 38 84 00 04 */ addi r4, r4, 4 lbl_801CE458: /* 801CE458 001CB3B8 7C 04 00 40 */ cmplw r4, r0 /* 801CE45C 001CB3BC 40 82 FF F8 */ bne lbl_801CE454 /* 801CE460 001CB3C0 28 03 00 00 */ cmplwi r3, 0 /* 801CE464 001CB3C4 41 82 00 08 */ beq lbl_801CE46C /* 801CE468 001CB3C8 48 14 74 C9 */ bl Free__7CMemoryFPCv lbl_801CE46C: /* 801CE46C 001CB3CC 34 1E 00 E8 */ addic. r0, r30, 0xe8 /* 801CE470 001CB3D0 41 82 00 44 */ beq lbl_801CE4B4 /* 801CE474 001CB3D4 80 1E 00 EC */ lwz r0, 0xec(r30) /* 801CE478 001CB3D8 80 7E 00 F4 */ lwz r3, 0xf4(r30) /* 801CE47C 001CB3DC 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CE480 001CB3E0 90 61 00 0C */ stw r3, 0xc(r1) /* 801CE484 001CB3E4 7C 64 1B 78 */ mr r4, r3 /* 801CE488 001CB3E8 7C 03 02 14 */ add r0, r3, r0 /* 801CE48C 001CB3EC 90 61 00 08 */ stw r3, 8(r1) /* 801CE490 001CB3F0 90 01 00 14 */ stw r0, 0x14(r1) /* 801CE494 001CB3F4 90 01 00 10 */ stw r0, 0x10(r1) /* 801CE498 001CB3F8 48 00 00 08 */ b lbl_801CE4A0 lbl_801CE49C: /* 801CE49C 001CB3FC 38 84 00 24 */ addi r4, r4, 0x24 lbl_801CE4A0: /* 801CE4A0 001CB400 7C 04 00 40 */ cmplw r4, r0 /* 801CE4A4 001CB404 40 82 FF F8 */ bne lbl_801CE49C /* 801CE4A8 001CB408 28 03 00 00 */ cmplwi r3, 0 /* 801CE4AC 001CB40C 41 82 00 08 */ beq lbl_801CE4B4 /* 801CE4B0 001CB410 48 14 74 81 */ bl Free__7CMemoryFPCv lbl_801CE4B4: /* 801CE4B4 001CB414 7F C3 F3 78 */ mr r3, r30 /* 801CE4B8 001CB418 38 80 00 00 */ li r4, 0 /* 801CE4BC 001CB41C 4B E8 72 35 */ bl __dt__6CActorFv /* 801CE4C0 001CB420 7F E0 07 35 */ extsh. r0, r31 /* 801CE4C4 001CB424 40 81 00 0C */ ble lbl_801CE4D0 /* 801CE4C8 001CB428 7F C3 F3 78 */ mr r3, r30 /* 801CE4CC 001CB42C 48 14 74 65 */ bl Free__7CMemoryFPCv lbl_801CE4D0: /* 801CE4D0 001CB430 80 01 00 54 */ lwz r0, 0x54(r1) /* 801CE4D4 001CB434 7F C3 F3 78 */ mr r3, r30 /* 801CE4D8 001CB438 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 801CE4DC 001CB43C 83 C1 00 48 */ lwz r30, 0x48(r1) /* 801CE4E0 001CB440 83 A1 00 44 */ lwz r29, 0x44(r1) /* 801CE4E4 001CB444 83 81 00 40 */ lwz r28, 0x40(r1) /* 801CE4E8 001CB448 7C 08 03 A6 */ mtlr r0 /* 801CE4EC 001CB44C 38 21 00 50 */ addi r1, r1, 0x50 /* 801CE4F0 001CB450 4E 80 00 20 */ blr .global sub_801ce4f4 sub_801ce4f4: /* 801CE4F4 001CB454 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801CE4F8 001CB458 7C 08 02 A6 */ mflr r0 /* 801CE4FC 001CB45C 90 01 00 24 */ stw r0, 0x24(r1) /* 801CE500 001CB460 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801CE504 001CB464 93 C1 00 18 */ stw r30, 0x18(r1) /* 801CE508 001CB468 3B C0 00 00 */ li r30, 0 /* 801CE50C 001CB46C 93 A1 00 14 */ stw r29, 0x14(r1) /* 801CE510 001CB470 7C 7D 1B 78 */ mr r29, r3 /* 801CE514 001CB474 3B FD 01 FC */ addi r31, r29, 0x1fc /* 801CE518 001CB478 48 00 00 24 */ b lbl_801CE53C lbl_801CE51C: /* 801CE51C 001CB47C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 801CE520 001CB480 80 9F 00 04 */ lwz r4, 4(r31) /* 801CE524 001CB484 81 83 00 00 */ lwz r12, 0(r3) /* 801CE528 001CB488 81 8C 00 34 */ lwz r12, 0x34(r12) /* 801CE52C 001CB48C 7D 89 03 A6 */ mtctr r12 /* 801CE530 001CB490 4E 80 04 21 */ bctrl /* 801CE534 001CB494 3B FF 00 08 */ addi r31, r31, 8 /* 801CE538 001CB498 3B DE 00 01 */ addi r30, r30, 1 lbl_801CE53C: /* 801CE53C 001CB49C 80 1D 01 F8 */ lwz r0, 0x1f8(r29) /* 801CE540 001CB4A0 7C 1E 00 00 */ cmpw r30, r0 /* 801CE544 001CB4A4 41 80 FF D8 */ blt lbl_801CE51C /* 801CE548 001CB4A8 80 01 00 24 */ lwz r0, 0x24(r1) /* 801CE54C 001CB4AC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801CE550 001CB4B0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801CE554 001CB4B4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801CE558 001CB4B8 7C 08 03 A6 */ mtlr r0 /* 801CE55C 001CB4BC 38 21 00 20 */ addi r1, r1, 0x20 /* 801CE560 001CB4C0 4E 80 00 20 */ blr .global sub_801ce564 sub_801ce564: /* 801CE564 001CB4C4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801CE568 001CB4C8 7C 08 02 A6 */ mflr r0 /* 801CE56C 001CB4CC 90 01 00 24 */ stw r0, 0x24(r1) /* 801CE570 001CB4D0 DB E1 00 18 */ stfd f31, 0x18(r1) /* 801CE574 001CB4D4 FF E0 08 90 */ fmr f31, f1 /* 801CE578 001CB4D8 93 E1 00 14 */ stw r31, 0x14(r1) /* 801CE57C 001CB4DC 93 C1 00 10 */ stw r30, 0x10(r1) /* 801CE580 001CB4E0 3B C0 00 00 */ li r30, 0 /* 801CE584 001CB4E4 93 A1 00 0C */ stw r29, 0xc(r1) /* 801CE588 001CB4E8 7C 7D 1B 78 */ mr r29, r3 /* 801CE58C 001CB4EC 3B FD 01 FC */ addi r31, r29, 0x1fc /* 801CE590 001CB4F0 48 00 00 24 */ b lbl_801CE5B4 lbl_801CE594: /* 801CE594 001CB4F4 80 7F 00 04 */ lwz r3, 4(r31) /* 801CE598 001CB4F8 FC 20 F8 90 */ fmr f1, f31 /* 801CE59C 001CB4FC 81 83 00 00 */ lwz r12, 0(r3) /* 801CE5A0 001CB500 81 8C 00 0C */ lwz r12, 0xc(r12) /* 801CE5A4 001CB504 7D 89 03 A6 */ mtctr r12 /* 801CE5A8 001CB508 4E 80 04 21 */ bctrl /* 801CE5AC 001CB50C 3B FF 00 08 */ addi r31, r31, 8 /* 801CE5B0 001CB510 3B DE 00 01 */ addi r30, r30, 1 lbl_801CE5B4: /* 801CE5B4 001CB514 80 1D 01 F8 */ lwz r0, 0x1f8(r29) /* 801CE5B8 001CB518 7C 1E 00 00 */ cmpw r30, r0 /* 801CE5BC 001CB51C 41 80 FF D8 */ blt lbl_801CE594 /* 801CE5C0 001CB520 80 01 00 24 */ lwz r0, 0x24(r1) /* 801CE5C4 001CB524 CB E1 00 18 */ lfd f31, 0x18(r1) /* 801CE5C8 001CB528 83 E1 00 14 */ lwz r31, 0x14(r1) /* 801CE5CC 001CB52C 83 C1 00 10 */ lwz r30, 0x10(r1) /* 801CE5D0 001CB530 83 A1 00 0C */ lwz r29, 0xc(r1) /* 801CE5D4 001CB534 7C 08 03 A6 */ mtlr r0 /* 801CE5D8 001CB538 38 21 00 20 */ addi r1, r1, 0x20 /* 801CE5DC 001CB53C 4E 80 00 20 */ blr .global sub_801ce5e0 sub_801ce5e0: /* 801CE5E0 001CB540 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801CE5E4 001CB544 7C 08 02 A6 */ mflr r0 /* 801CE5E8 001CB548 90 01 00 24 */ stw r0, 0x24(r1) /* 801CE5EC 001CB54C BF 61 00 0C */ stmw r27, 0xc(r1) /* 801CE5F0 001CB550 7C 7B 1B 78 */ mr r27, r3 /* 801CE5F4 001CB554 7C 9C 23 78 */ mr r28, r4 /* 801CE5F8 001CB558 3B A0 00 00 */ li r29, 0 /* 801CE5FC 001CB55C 3B FB 01 FC */ addi r31, r27, 0x1fc /* 801CE600 001CB560 3B DB 02 20 */ addi r30, r27, 0x220 /* 801CE604 001CB564 48 00 00 64 */ b lbl_801CE668 lbl_801CE608: /* 801CE608 001CB568 80 7F 00 04 */ lwz r3, 4(r31) /* 801CE60C 001CB56C 38 80 00 01 */ li r4, 1 /* 801CE610 001CB570 81 83 00 00 */ lwz r12, 0(r3) /* 801CE614 001CB574 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 801CE618 001CB578 7D 89 03 A6 */ mtctr r12 /* 801CE61C 001CB57C 4E 80 04 21 */ bctrl /* 801CE620 001CB580 80 7F 00 04 */ lwz r3, 4(r31) /* 801CE624 001CB584 7F 84 E3 78 */ mr r4, r28 /* 801CE628 001CB588 81 83 00 00 */ lwz r12, 0(r3) /* 801CE62C 001CB58C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 801CE630 001CB590 7D 89 03 A6 */ mtctr r12 /* 801CE634 001CB594 4E 80 04 21 */ bctrl /* 801CE638 001CB598 80 7F 00 04 */ lwz r3, 4(r31) /* 801CE63C 001CB59C 80 9E 00 00 */ lwz r4, 0(r30) /* 801CE640 001CB5A0 48 14 E2 81 */ bl ForceParticleCreation__11CElementGenFi /* 801CE644 001CB5A4 80 7F 00 04 */ lwz r3, 4(r31) /* 801CE648 001CB5A8 38 80 00 00 */ li r4, 0 /* 801CE64C 001CB5AC 81 83 00 00 */ lwz r12, 0(r3) /* 801CE650 001CB5B0 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 801CE654 001CB5B4 7D 89 03 A6 */ mtctr r12 /* 801CE658 001CB5B8 4E 80 04 21 */ bctrl /* 801CE65C 001CB5BC 3B FF 00 08 */ addi r31, r31, 8 /* 801CE660 001CB5C0 3B DE 00 04 */ addi r30, r30, 4 /* 801CE664 001CB5C4 3B BD 00 01 */ addi r29, r29, 1 lbl_801CE668: /* 801CE668 001CB5C8 80 1B 01 F8 */ lwz r0, 0x1f8(r27) /* 801CE66C 001CB5CC 7C 1D 00 00 */ cmpw r29, r0 /* 801CE670 001CB5D0 41 80 FF 98 */ blt lbl_801CE608 /* 801CE674 001CB5D4 BB 61 00 0C */ lmw r27, 0xc(r1) /* 801CE678 001CB5D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 801CE67C 001CB5DC 7C 08 03 A6 */ mtlr r0 /* 801CE680 001CB5E0 38 21 00 20 */ addi r1, r1, 0x20 /* 801CE684 001CB5E4 4E 80 00 20 */ blr .global ApplyContainment__10CFishCloudFRQ210CFishCloud5CBoidRC6CAABox ApplyContainment__10CFishCloudFRQ210CFishCloud5CBoidRC6CAABox: /* 801CE688 001CB5E8 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801CE68C 001CB5EC 7C 08 02 A6 */ mflr r0 /* 801CE690 001CB5F0 90 01 00 54 */ stw r0, 0x54(r1) /* 801CE694 001CB5F4 DB E1 00 40 */ stfd f31, 0x40(r1) /* 801CE698 001CB5F8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 801CE69C 001CB5FC 93 E1 00 3C */ stw r31, 0x3c(r1) /* 801CE6A0 001CB600 93 C1 00 38 */ stw r30, 0x38(r1) /* 801CE6A4 001CB604 93 A1 00 34 */ stw r29, 0x34(r1) /* 801CE6A8 001CB608 7C 7D 1B 78 */ mr r29, r3 /* 801CE6AC 001CB60C 7C 9E 23 78 */ mr r30, r4 /* 801CE6B0 001CB610 C3 E3 01 74 */ lfs f31, 0x174(r3) /* 801CE6B4 001CB614 7C BF 2B 78 */ mr r31, r5 /* 801CE6B8 001CB618 38 7E 00 0C */ addi r3, r30, 0xc /* 801CE6BC 001CB61C 48 14 60 3D */ bl CanBeNormalized__9CVector3fCFv /* 801CE6C0 001CB620 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801CE6C4 001CB624 41 82 00 98 */ beq lbl_801CE75C /* 801CE6C8 001CB628 38 61 00 14 */ addi r3, r1, 0x14 /* 801CE6CC 001CB62C 38 9E 00 0C */ addi r4, r30, 0xc /* 801CE6D0 001CB630 48 14 61 81 */ bl AsNormalized__9CVector3fCFv /* 801CE6D4 001CB634 C0 7D 01 30 */ lfs f3, 0x130(r29) /* 801CE6D8 001CB638 7F A3 EB 78 */ mr r3, r29 /* 801CE6DC 001CB63C C0 41 00 18 */ lfs f2, 0x18(r1) /* 801CE6E0 001CB640 7F E4 FB 78 */ mr r4, r31 /* 801CE6E4 001CB644 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 801CE6E8 001CB648 38 A1 00 20 */ addi r5, r1, 0x20 /* 801CE6EC 001CB64C C0 01 00 14 */ lfs f0, 0x14(r1) /* 801CE6F0 001CB650 EC 43 00 B2 */ fmuls f2, f3, f2 /* 801CE6F4 001CB654 EC 23 00 72 */ fmuls f1, f3, f1 /* 801CE6F8 001CB658 C0 BE 00 04 */ lfs f5, 4(r30) /* 801CE6FC 001CB65C EC 03 00 32 */ fmuls f0, f3, f0 /* 801CE700 001CB660 C0 7E 00 08 */ lfs f3, 8(r30) /* 801CE704 001CB664 EC 9F 00 B2 */ fmuls f4, f31, f2 /* 801CE708 001CB668 EC 5F 00 72 */ fmuls f2, f31, f1 /* 801CE70C 001CB66C EC 1F 00 32 */ fmuls f0, f31, f0 /* 801CE710 001CB670 C0 3E 00 00 */ lfs f1, 0(r30) /* 801CE714 001CB674 EC 85 20 2A */ fadds f4, f5, f4 /* 801CE718 001CB678 EC 43 10 2A */ fadds f2, f3, f2 /* 801CE71C 001CB67C EC 01 00 2A */ fadds f0, f1, f0 /* 801CE720 001CB680 D0 81 00 24 */ stfs f4, 0x24(r1) /* 801CE724 001CB684 D0 01 00 20 */ stfs f0, 0x20(r1) /* 801CE728 001CB688 D0 41 00 28 */ stfs f2, 0x28(r1) /* 801CE72C 001CB68C 48 00 35 95 */ bl PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f /* 801CE730 001CB690 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801CE734 001CB694 40 82 00 28 */ bne lbl_801CE75C /* 801CE738 001CB698 7F E4 FB 78 */ mr r4, r31 /* 801CE73C 001CB69C 38 61 00 08 */ addi r3, r1, 8 /* 801CE740 001CB6A0 48 16 8E CD */ bl GetCenterPoint__6CAABoxCFv /* 801CE744 001CB6A4 C0 22 AB B0 */ lfs f1, lbl_805AC8D0@sda21(r2) /* 801CE748 001CB6A8 7F A3 EB 78 */ mr r3, r29 /* 801CE74C 001CB6AC C0 5D 01 58 */ lfs f2, 0x158(r29) /* 801CE750 001CB6B0 7F C4 F3 78 */ mr r4, r30 /* 801CE754 001CB6B4 38 A1 00 08 */ addi r5, r1, 8 /* 801CE758 001CB6B8 48 00 00 49 */ bl ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff lbl_801CE75C: /* 801CE75C 001CB6BC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 801CE760 001CB6C0 80 01 00 54 */ lwz r0, 0x54(r1) /* 801CE764 001CB6C4 CB E1 00 40 */ lfd f31, 0x40(r1) /* 801CE768 001CB6C8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 801CE76C 001CB6CC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 801CE770 001CB6D0 83 A1 00 34 */ lwz r29, 0x34(r1) /* 801CE774 001CB6D4 7C 08 03 A6 */ mtlr r0 /* 801CE778 001CB6D8 38 21 00 50 */ addi r1, r1, 0x50 /* 801CE77C 001CB6DC 4E 80 00 20 */ blr .global ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: /* 801CE780 001CB6E0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801CE784 001CB6E4 7C 08 02 A6 */ mflr r0 /* 801CE788 001CB6E8 90 01 00 14 */ stw r0, 0x14(r1) /* 801CE78C 001CB6EC 48 00 01 31 */ bl ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff /* 801CE790 001CB6F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 801CE794 001CB6F4 7C 08 03 A6 */ mtlr r0 /* 801CE798 001CB6F8 38 21 00 10 */ addi r1, r1, 0x10 /* 801CE79C 001CB6FC 4E 80 00 20 */ blr .global ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: /* 801CE7A0 001CB700 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801CE7A4 001CB704 7C 08 02 A6 */ mflr r0 /* 801CE7A8 001CB708 90 01 00 54 */ stw r0, 0x54(r1) /* 801CE7AC 001CB70C DB E1 00 40 */ stfd f31, 0x40(r1) /* 801CE7B0 001CB710 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 801CE7B4 001CB714 DB C1 00 30 */ stfd f30, 0x30(r1) /* 801CE7B8 001CB718 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 801CE7BC 001CB71C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801CE7C0 001CB720 7C 9F 23 78 */ mr r31, r4 /* 801CE7C4 001CB724 C0 85 00 04 */ lfs f4, 4(r5) /* 801CE7C8 001CB728 C0 04 00 04 */ lfs f0, 4(r4) /* 801CE7CC 001CB72C FF C0 08 90 */ fmr f30, f1 /* 801CE7D0 001CB730 C0 65 00 08 */ lfs f3, 8(r5) /* 801CE7D4 001CB734 FF E0 10 90 */ fmr f31, f2 /* 801CE7D8 001CB738 C0 44 00 08 */ lfs f2, 8(r4) /* 801CE7DC 001CB73C EC 84 00 28 */ fsubs f4, f4, f0 /* 801CE7E0 001CB740 C0 04 00 00 */ lfs f0, 0(r4) /* 801CE7E4 001CB744 C0 25 00 00 */ lfs f1, 0(r5) /* 801CE7E8 001CB748 EC 43 10 28 */ fsubs f2, f3, f2 /* 801CE7EC 001CB74C D0 81 00 18 */ stfs f4, 0x18(r1) /* 801CE7F0 001CB750 38 61 00 14 */ addi r3, r1, 0x14 /* 801CE7F4 001CB754 EC 01 00 28 */ fsubs f0, f1, f0 /* 801CE7F8 001CB758 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 801CE7FC 001CB75C D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CE800 001CB760 48 14 5E F9 */ bl CanBeNormalized__9CVector3fCFv /* 801CE804 001CB764 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801CE808 001CB768 41 82 00 90 */ beq lbl_801CE898 /* 801CE80C 001CB76C C0 21 00 14 */ lfs f1, 0x14(r1) /* 801CE810 001CB770 EC 7E 07 B2 */ fmuls f3, f30, f30 /* 801CE814 001CB774 C0 01 00 18 */ lfs f0, 0x18(r1) /* 801CE818 001CB778 EC 21 00 72 */ fmuls f1, f1, f1 /* 801CE81C 001CB77C C0 41 00 1C */ lfs f2, 0x1c(r1) /* 801CE820 001CB780 EC 00 00 32 */ fmuls f0, f0, f0 /* 801CE824 001CB784 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801CE828 001CB788 EC 01 00 2A */ fadds f0, f1, f0 /* 801CE82C 001CB78C EC 02 00 2A */ fadds f0, f2, f0 /* 801CE830 001CB790 FC 00 18 40 */ fcmpo cr0, f0, f3 /* 801CE834 001CB794 40 80 00 64 */ bge lbl_801CE898 /* 801CE838 001CB798 EC 00 18 24 */ fdivs f0, f0, f3 /* 801CE83C 001CB79C C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801CE840 001CB7A0 38 61 00 08 */ addi r3, r1, 8 /* 801CE844 001CB7A4 38 81 00 14 */ addi r4, r1, 0x14 /* 801CE848 001CB7A8 EF C1 00 28 */ fsubs f30, f1, f0 /* 801CE84C 001CB7AC 48 14 60 05 */ bl AsNormalized__9CVector3fCFv /* 801CE850 001CB7B0 C0 01 00 08 */ lfs f0, 8(r1) /* 801CE854 001CB7B4 C0 21 00 0C */ lfs f1, 0xc(r1) /* 801CE858 001CB7B8 EC 1E 00 32 */ fmuls f0, f30, f0 /* 801CE85C 001CB7BC C0 41 00 10 */ lfs f2, 0x10(r1) /* 801CE860 001CB7C0 EC 7E 00 72 */ fmuls f3, f30, f1 /* 801CE864 001CB7C4 C0 3F 00 0C */ lfs f1, 0xc(r31) /* 801CE868 001CB7C8 EC 5E 00 B2 */ fmuls f2, f30, f2 /* 801CE86C 001CB7CC EC 1F 00 32 */ fmuls f0, f31, f0 /* 801CE870 001CB7D0 EC 7F 00 F2 */ fmuls f3, f31, f3 /* 801CE874 001CB7D4 EC 5F 00 B2 */ fmuls f2, f31, f2 /* 801CE878 001CB7D8 EC 01 00 2A */ fadds f0, f1, f0 /* 801CE87C 001CB7DC D0 1F 00 0C */ stfs f0, 0xc(r31) /* 801CE880 001CB7E0 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 801CE884 001CB7E4 EC 00 18 2A */ fadds f0, f0, f3 /* 801CE888 001CB7E8 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 801CE88C 001CB7EC C0 1F 00 14 */ lfs f0, 0x14(r31) /* 801CE890 001CB7F0 EC 00 10 2A */ fadds f0, f0, f2 /* 801CE894 001CB7F4 D0 1F 00 14 */ stfs f0, 0x14(r31) lbl_801CE898: /* 801CE898 001CB7F8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 801CE89C 001CB7FC CB E1 00 40 */ lfd f31, 0x40(r1) /* 801CE8A0 001CB800 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 801CE8A4 001CB804 CB C1 00 30 */ lfd f30, 0x30(r1) /* 801CE8A8 001CB808 80 01 00 54 */ lwz r0, 0x54(r1) /* 801CE8AC 001CB80C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801CE8B0 001CB810 7C 08 03 A6 */ mtlr r0 /* 801CE8B4 001CB814 38 21 00 50 */ addi r1, r1, 0x50 /* 801CE8B8 001CB818 4E 80 00 20 */ blr .global ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: /* 801CE8BC 001CB81C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801CE8C0 001CB820 7C 08 02 A6 */ mflr r0 /* 801CE8C4 001CB824 90 01 00 54 */ stw r0, 0x54(r1) /* 801CE8C8 001CB828 DB E1 00 40 */ stfd f31, 0x40(r1) /* 801CE8CC 001CB82C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 801CE8D0 001CB830 DB C1 00 30 */ stfd f30, 0x30(r1) /* 801CE8D4 001CB834 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 801CE8D8 001CB838 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801CE8DC 001CB83C 7C 9F 23 78 */ mr r31, r4 /* 801CE8E0 001CB840 C0 05 00 04 */ lfs f0, 4(r5) /* 801CE8E4 001CB844 C0 84 00 04 */ lfs f4, 4(r4) /* 801CE8E8 001CB848 FF C0 08 90 */ fmr f30, f1 /* 801CE8EC 001CB84C C0 64 00 08 */ lfs f3, 8(r4) /* 801CE8F0 001CB850 FF E0 10 90 */ fmr f31, f2 /* 801CE8F4 001CB854 C0 45 00 08 */ lfs f2, 8(r5) /* 801CE8F8 001CB858 EC 84 00 28 */ fsubs f4, f4, f0 /* 801CE8FC 001CB85C C0 24 00 00 */ lfs f1, 0(r4) /* 801CE900 001CB860 C0 05 00 00 */ lfs f0, 0(r5) /* 801CE904 001CB864 EC 43 10 28 */ fsubs f2, f3, f2 /* 801CE908 001CB868 D0 81 00 18 */ stfs f4, 0x18(r1) /* 801CE90C 001CB86C 38 61 00 14 */ addi r3, r1, 0x14 /* 801CE910 001CB870 EC 01 00 28 */ fsubs f0, f1, f0 /* 801CE914 001CB874 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 801CE918 001CB878 D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CE91C 001CB87C 48 14 5D DD */ bl CanBeNormalized__9CVector3fCFv /* 801CE920 001CB880 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801CE924 001CB884 41 82 00 90 */ beq lbl_801CE9B4 /* 801CE928 001CB888 C0 21 00 14 */ lfs f1, 0x14(r1) /* 801CE92C 001CB88C EC 7E 07 B2 */ fmuls f3, f30, f30 /* 801CE930 001CB890 C0 01 00 18 */ lfs f0, 0x18(r1) /* 801CE934 001CB894 EC 21 00 72 */ fmuls f1, f1, f1 /* 801CE938 001CB898 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 801CE93C 001CB89C EC 00 00 32 */ fmuls f0, f0, f0 /* 801CE940 001CB8A0 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801CE944 001CB8A4 EC 01 00 2A */ fadds f0, f1, f0 /* 801CE948 001CB8A8 EC 02 00 2A */ fadds f0, f2, f0 /* 801CE94C 001CB8AC FC 00 18 40 */ fcmpo cr0, f0, f3 /* 801CE950 001CB8B0 40 80 00 64 */ bge lbl_801CE9B4 /* 801CE954 001CB8B4 EC 00 18 24 */ fdivs f0, f0, f3 /* 801CE958 001CB8B8 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801CE95C 001CB8BC 38 61 00 08 */ addi r3, r1, 8 /* 801CE960 001CB8C0 38 81 00 14 */ addi r4, r1, 0x14 /* 801CE964 001CB8C4 EF C1 00 28 */ fsubs f30, f1, f0 /* 801CE968 001CB8C8 48 14 5E E9 */ bl AsNormalized__9CVector3fCFv /* 801CE96C 001CB8CC C0 01 00 08 */ lfs f0, 8(r1) /* 801CE970 001CB8D0 C0 21 00 0C */ lfs f1, 0xc(r1) /* 801CE974 001CB8D4 EC 1E 00 32 */ fmuls f0, f30, f0 /* 801CE978 001CB8D8 C0 41 00 10 */ lfs f2, 0x10(r1) /* 801CE97C 001CB8DC EC 7E 00 72 */ fmuls f3, f30, f1 /* 801CE980 001CB8E0 C0 3F 00 0C */ lfs f1, 0xc(r31) /* 801CE984 001CB8E4 EC 5E 00 B2 */ fmuls f2, f30, f2 /* 801CE988 001CB8E8 EC 1F 00 32 */ fmuls f0, f31, f0 /* 801CE98C 001CB8EC EC 7F 00 F2 */ fmuls f3, f31, f3 /* 801CE990 001CB8F0 EC 5F 00 B2 */ fmuls f2, f31, f2 /* 801CE994 001CB8F4 EC 01 00 2A */ fadds f0, f1, f0 /* 801CE998 001CB8F8 D0 1F 00 0C */ stfs f0, 0xc(r31) /* 801CE99C 001CB8FC C0 1F 00 10 */ lfs f0, 0x10(r31) /* 801CE9A0 001CB900 EC 00 18 2A */ fadds f0, f0, f3 /* 801CE9A4 001CB904 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 801CE9A8 001CB908 C0 1F 00 14 */ lfs f0, 0x14(r31) /* 801CE9AC 001CB90C EC 00 10 2A */ fadds f0, f0, f2 /* 801CE9B0 001CB910 D0 1F 00 14 */ stfs f0, 0x14(r31) lbl_801CE9B4: /* 801CE9B4 001CB914 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 801CE9B8 001CB918 CB E1 00 40 */ lfd f31, 0x40(r1) /* 801CE9BC 001CB91C E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 801CE9C0 001CB920 CB C1 00 30 */ lfd f30, 0x30(r1) /* 801CE9C4 001CB924 80 01 00 54 */ lwz r0, 0x54(r1) /* 801CE9C8 001CB928 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801CE9CC 001CB92C 7C 08 03 A6 */ mtlr r0 /* 801CE9D0 001CB930 38 21 00 50 */ addi r1, r1, 0x50 /* 801CE9D4 001CB934 4E 80 00 20 */ blr .global "ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" "ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector": /* 801CE9D8 001CB938 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801CE9DC 001CB93C 7C 08 02 A6 */ mflr r0 /* 801CE9E0 001CB940 90 01 00 24 */ stw r0, 0x24(r1) /* 801CE9E4 001CB944 80 05 00 00 */ lwz r0, 0(r5) /* 801CE9E8 001CB948 2C 00 00 00 */ cmpwi r0, 0 /* 801CE9EC 001CB94C 40 81 00 98 */ ble lbl_801CEA84 /* 801CE9F0 001CB950 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801CE9F4 001CB954 38 E5 00 04 */ addi r7, r5, 4 /* 801CE9F8 001CB958 C0 C2 AB BC */ lfs f6, lbl_805AC8DC@sda21(r2) /* 801CE9FC 001CB95C D0 01 00 08 */ stfs f0, 8(r1) /* 801CEA00 001CB960 D0 01 00 0C */ stfs f0, 0xc(r1) /* 801CEA04 001CB964 D0 01 00 10 */ stfs f0, 0x10(r1) /* 801CEA08 001CB968 48 00 00 54 */ b lbl_801CEA5C lbl_801CEA0C: /* 801CEA0C 001CB96C 80 C7 00 00 */ lwz r6, 0(r7) /* 801CEA10 001CB970 C0 04 00 04 */ lfs f0, 4(r4) /* 801CEA14 001CB974 C0 66 00 04 */ lfs f3, 4(r6) /* 801CEA18 001CB978 C0 A4 00 00 */ lfs f5, 0(r4) /* 801CEA1C 001CB97C EC 00 18 28 */ fsubs f0, f0, f3 /* 801CEA20 001CB980 C0 86 00 00 */ lfs f4, 0(r6) /* 801CEA24 001CB984 C0 44 00 08 */ lfs f2, 8(r4) /* 801CEA28 001CB988 C0 26 00 08 */ lfs f1, 8(r6) /* 801CEA2C 001CB98C EC A5 20 28 */ fsubs f5, f5, f4 /* 801CEA30 001CB990 EC 00 00 32 */ fmuls f0, f0, f0 /* 801CEA34 001CB994 EC 42 08 28 */ fsubs f2, f2, f1 /* 801CEA38 001CB998 EC 05 01 7A */ fmadds f0, f5, f5, f0 /* 801CEA3C 001CB99C EC 02 00 BA */ fmadds f0, f2, f2, f0 /* 801CEA40 001CB9A0 FC 00 30 40 */ fcmpo cr0, f0, f6 /* 801CEA44 001CB9A4 40 80 00 14 */ bge lbl_801CEA58 /* 801CEA48 001CB9A8 FC C0 00 90 */ fmr f6, f0 /* 801CEA4C 001CB9AC D0 81 00 08 */ stfs f4, 8(r1) /* 801CEA50 001CB9B0 D0 61 00 0C */ stfs f3, 0xc(r1) /* 801CEA54 001CB9B4 D0 21 00 10 */ stfs f1, 0x10(r1) lbl_801CEA58: /* 801CEA58 001CB9B8 38 E7 00 04 */ addi r7, r7, 4 lbl_801CEA5C: /* 801CEA5C 001CB9BC 80 05 00 00 */ lwz r0, 0(r5) /* 801CEA60 001CB9C0 54 00 10 3A */ slwi r0, r0, 2 /* 801CEA64 001CB9C4 7C C5 02 14 */ add r6, r5, r0 /* 801CEA68 001CB9C8 38 06 00 04 */ addi r0, r6, 4 /* 801CEA6C 001CB9CC 7C 07 00 40 */ cmplw r7, r0 /* 801CEA70 001CB9D0 40 82 FF 9C */ bne lbl_801CEA0C /* 801CEA74 001CB9D4 C0 23 01 38 */ lfs f1, 0x138(r3) /* 801CEA78 001CB9D8 38 A1 00 08 */ addi r5, r1, 8 /* 801CEA7C 001CB9DC C0 43 01 44 */ lfs f2, 0x144(r3) /* 801CEA80 001CB9E0 4B FF FE 3D */ bl ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff lbl_801CEA84: /* 801CEA84 001CB9E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 801CEA88 001CB9E8 7C 08 03 A6 */ mtlr r0 /* 801CEA8C 001CB9EC 38 21 00 20 */ addi r1, r1, 0x20 /* 801CEA90 001CB9F0 4E 80 00 20 */ blr .global ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff: /* 801CEA94 001CB9F4 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801CEA98 001CB9F8 7C 08 02 A6 */ mflr r0 /* 801CEA9C 001CB9FC 90 01 00 54 */ stw r0, 0x54(r1) /* 801CEAA0 001CBA00 DB E1 00 40 */ stfd f31, 0x40(r1) /* 801CEAA4 001CBA04 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 801CEAA8 001CBA08 DB C1 00 30 */ stfd f30, 0x30(r1) /* 801CEAAC 001CBA0C F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 801CEAB0 001CBA10 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801CEAB4 001CBA14 7C 9F 23 78 */ mr r31, r4 /* 801CEAB8 001CBA18 C0 85 00 04 */ lfs f4, 4(r5) /* 801CEABC 001CBA1C C0 04 00 04 */ lfs f0, 4(r4) /* 801CEAC0 001CBA20 FF C0 08 90 */ fmr f30, f1 /* 801CEAC4 001CBA24 C0 65 00 08 */ lfs f3, 8(r5) /* 801CEAC8 001CBA28 FF E0 10 90 */ fmr f31, f2 /* 801CEACC 001CBA2C C0 44 00 08 */ lfs f2, 8(r4) /* 801CEAD0 001CBA30 EC 84 00 28 */ fsubs f4, f4, f0 /* 801CEAD4 001CBA34 C0 04 00 00 */ lfs f0, 0(r4) /* 801CEAD8 001CBA38 C0 25 00 00 */ lfs f1, 0(r5) /* 801CEADC 001CBA3C EC 43 10 28 */ fsubs f2, f3, f2 /* 801CEAE0 001CBA40 D0 81 00 18 */ stfs f4, 0x18(r1) /* 801CEAE4 001CBA44 38 61 00 14 */ addi r3, r1, 0x14 /* 801CEAE8 001CBA48 EC 01 00 28 */ fsubs f0, f1, f0 /* 801CEAEC 001CBA4C D0 41 00 1C */ stfs f2, 0x1c(r1) /* 801CEAF0 001CBA50 D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CEAF4 001CBA54 48 14 5C 05 */ bl CanBeNormalized__9CVector3fCFv /* 801CEAF8 001CBA58 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801CEAFC 001CBA5C 41 82 00 8C */ beq lbl_801CEB88 /* 801CEB00 001CBA60 C0 21 00 14 */ lfs f1, 0x14(r1) /* 801CEB04 001CBA64 C0 01 00 18 */ lfs f0, 0x18(r1) /* 801CEB08 001CBA68 EC 21 00 72 */ fmuls f1, f1, f1 /* 801CEB0C 001CBA6C C0 41 00 1C */ lfs f2, 0x1c(r1) /* 801CEB10 001CBA70 EC 00 00 32 */ fmuls f0, f0, f0 /* 801CEB14 001CBA74 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801CEB18 001CBA78 EC 01 00 2A */ fadds f0, f1, f0 /* 801CEB1C 001CBA7C EC 02 00 2A */ fadds f0, f2, f0 /* 801CEB20 001CBA80 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 801CEB24 001CBA84 40 81 00 0C */ ble lbl_801CEB30 /* 801CEB28 001CBA88 C3 C2 AB B4 */ lfs f30, lbl_805AC8D4@sda21(r2) /* 801CEB2C 001CBA8C 48 00 00 08 */ b lbl_801CEB34 lbl_801CEB30: /* 801CEB30 001CBA90 EF C0 F0 24 */ fdivs f30, f0, f30 lbl_801CEB34: /* 801CEB34 001CBA94 38 61 00 08 */ addi r3, r1, 8 /* 801CEB38 001CBA98 38 81 00 14 */ addi r4, r1, 0x14 /* 801CEB3C 001CBA9C 48 14 5D 15 */ bl AsNormalized__9CVector3fCFv /* 801CEB40 001CBAA0 C0 01 00 08 */ lfs f0, 8(r1) /* 801CEB44 001CBAA4 C0 21 00 0C */ lfs f1, 0xc(r1) /* 801CEB48 001CBAA8 EC 1E 00 32 */ fmuls f0, f30, f0 /* 801CEB4C 001CBAAC C0 41 00 10 */ lfs f2, 0x10(r1) /* 801CEB50 001CBAB0 EC 7E 00 72 */ fmuls f3, f30, f1 /* 801CEB54 001CBAB4 C0 3F 00 0C */ lfs f1, 0xc(r31) /* 801CEB58 001CBAB8 EC 5E 00 B2 */ fmuls f2, f30, f2 /* 801CEB5C 001CBABC EC 1F 00 32 */ fmuls f0, f31, f0 /* 801CEB60 001CBAC0 EC 7F 00 F2 */ fmuls f3, f31, f3 /* 801CEB64 001CBAC4 EC 5F 00 B2 */ fmuls f2, f31, f2 /* 801CEB68 001CBAC8 EC 01 00 2A */ fadds f0, f1, f0 /* 801CEB6C 001CBACC D0 1F 00 0C */ stfs f0, 0xc(r31) /* 801CEB70 001CBAD0 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 801CEB74 001CBAD4 EC 00 18 2A */ fadds f0, f0, f3 /* 801CEB78 001CBAD8 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 801CEB7C 001CBADC C0 1F 00 14 */ lfs f0, 0x14(r31) /* 801CEB80 001CBAE0 EC 00 10 2A */ fadds f0, f0, f2 /* 801CEB84 001CBAE4 D0 1F 00 14 */ stfs f0, 0x14(r31) lbl_801CEB88: /* 801CEB88 001CBAE8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 801CEB8C 001CBAEC CB E1 00 40 */ lfd f31, 0x40(r1) /* 801CEB90 001CBAF0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 801CEB94 001CBAF4 CB C1 00 30 */ lfd f30, 0x30(r1) /* 801CEB98 001CBAF8 80 01 00 54 */ lwz r0, 0x54(r1) /* 801CEB9C 001CBAFC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801CEBA0 001CBB00 7C 08 03 A6 */ mtlr r0 /* 801CEBA4 001CBB04 38 21 00 50 */ addi r1, r1, 0x50 /* 801CEBA8 001CBB08 4E 80 00 20 */ blr .global "ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" "ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector": /* 801CEBAC 001CBB0C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801CEBB0 001CBB10 7C 08 02 A6 */ mflr r0 /* 801CEBB4 001CBB14 90 01 00 24 */ stw r0, 0x24(r1) /* 801CEBB8 001CBB18 80 05 00 00 */ lwz r0, 0(r5) /* 801CEBBC 001CBB1C 2C 00 00 00 */ cmpwi r0, 0 /* 801CEBC0 001CBB20 40 81 00 C4 */ ble lbl_801CEC84 /* 801CEBC4 001CBB24 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801CEBC8 001CBB28 39 05 00 04 */ addi r8, r5, 4 /* 801CEBCC 001CBB2C D0 01 00 08 */ stfs f0, 8(r1) /* 801CEBD0 001CBB30 D0 01 00 0C */ stfs f0, 0xc(r1) /* 801CEBD4 001CBB34 D0 01 00 10 */ stfs f0, 0x10(r1) /* 801CEBD8 001CBB38 48 00 00 3C */ b lbl_801CEC14 lbl_801CEBDC: /* 801CEBDC 001CBB3C 80 C8 00 00 */ lwz r6, 0(r8) /* 801CEBE0 001CBB40 39 08 00 04 */ addi r8, r8, 4 /* 801CEBE4 001CBB44 C0 21 00 08 */ lfs f1, 8(r1) /* 801CEBE8 001CBB48 C0 06 00 00 */ lfs f0, 0(r6) /* 801CEBEC 001CBB4C C0 41 00 0C */ lfs f2, 0xc(r1) /* 801CEBF0 001CBB50 EC 01 00 2A */ fadds f0, f1, f0 /* 801CEBF4 001CBB54 C0 21 00 10 */ lfs f1, 0x10(r1) /* 801CEBF8 001CBB58 D0 01 00 08 */ stfs f0, 8(r1) /* 801CEBFC 001CBB5C C0 06 00 04 */ lfs f0, 4(r6) /* 801CEC00 001CBB60 EC 02 00 2A */ fadds f0, f2, f0 /* 801CEC04 001CBB64 D0 01 00 0C */ stfs f0, 0xc(r1) /* 801CEC08 001CBB68 C0 06 00 08 */ lfs f0, 8(r6) /* 801CEC0C 001CBB6C EC 01 00 2A */ fadds f0, f1, f0 /* 801CEC10 001CBB70 D0 01 00 10 */ stfs f0, 0x10(r1) lbl_801CEC14: /* 801CEC14 001CBB74 80 E5 00 00 */ lwz r7, 0(r5) /* 801CEC18 001CBB78 54 E0 10 3A */ slwi r0, r7, 2 /* 801CEC1C 001CBB7C 7C C5 02 14 */ add r6, r5, r0 /* 801CEC20 001CBB80 38 06 00 04 */ addi r0, r6, 4 /* 801CEC24 001CBB84 7C 08 00 40 */ cmplw r8, r0 /* 801CEC28 001CBB88 40 82 FF B4 */ bne lbl_801CEBDC /* 801CEC2C 001CBB8C 6C E5 80 00 */ xoris r5, r7, 0x8000 /* 801CEC30 001CBB90 3C 00 43 30 */ lis r0, 0x4330 /* 801CEC34 001CBB94 90 A1 00 1C */ stw r5, 0x1c(r1) /* 801CEC38 001CBB98 38 A1 00 08 */ addi r5, r1, 8 /* 801CEC3C 001CBB9C C8 22 AB C0 */ lfd f1, lbl_805AC8E0@sda21(r2) /* 801CEC40 001CBBA0 90 01 00 18 */ stw r0, 0x18(r1) /* 801CEC44 001CBBA4 C0 82 AB B4 */ lfs f4, lbl_805AC8D4@sda21(r2) /* 801CEC48 001CBBA8 C8 01 00 18 */ lfd f0, 0x18(r1) /* 801CEC4C 001CBBAC C0 41 00 0C */ lfs f2, 0xc(r1) /* 801CEC50 001CBBB0 EC 60 08 28 */ fsubs f3, f0, f1 /* 801CEC54 001CBBB4 C0 21 00 10 */ lfs f1, 0x10(r1) /* 801CEC58 001CBBB8 C0 01 00 08 */ lfs f0, 8(r1) /* 801CEC5C 001CBBBC EC 64 18 24 */ fdivs f3, f4, f3 /* 801CEC60 001CBBC0 EC 43 00 B2 */ fmuls f2, f3, f2 /* 801CEC64 001CBBC4 EC 23 00 72 */ fmuls f1, f3, f1 /* 801CEC68 001CBBC8 EC 03 00 32 */ fmuls f0, f3, f0 /* 801CEC6C 001CBBCC D0 41 00 0C */ stfs f2, 0xc(r1) /* 801CEC70 001CBBD0 D0 01 00 08 */ stfs f0, 8(r1) /* 801CEC74 001CBBD4 D0 21 00 10 */ stfs f1, 0x10(r1) /* 801CEC78 001CBBD8 C0 23 01 38 */ lfs f1, 0x138(r3) /* 801CEC7C 001CBBDC C0 43 01 3C */ lfs f2, 0x13c(r3) /* 801CEC80 001CBBE0 4B FF FE 15 */ bl ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff lbl_801CEC84: /* 801CEC84 001CBBE4 80 01 00 24 */ lwz r0, 0x24(r1) /* 801CEC88 001CBBE8 7C 08 03 A6 */ mtlr r0 /* 801CEC8C 001CBBEC 38 21 00 20 */ addi r1, r1, 0x20 /* 801CEC90 001CBBF0 4E 80 00 20 */ blr .global sub_801cec94 sub_801cec94: /* 801CEC94 001CBBF4 94 21 FF A0 */ stwu r1, -0x60(r1) /* 801CEC98 001CBBF8 7C 08 02 A6 */ mflr r0 /* 801CEC9C 001CBBFC 90 01 00 64 */ stw r0, 0x64(r1) /* 801CECA0 001CBC00 DB E1 00 50 */ stfd f31, 0x50(r1) /* 801CECA4 001CBC04 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 801CECA8 001CBC08 DB C1 00 40 */ stfd f30, 0x40(r1) /* 801CECAC 001CBC0C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 801CECB0 001CBC10 DB A1 00 30 */ stfd f29, 0x30(r1) /* 801CECB4 001CBC14 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 801CECB8 001CBC18 DB 81 00 20 */ stfd f28, 0x20(r1) /* 801CECBC 001CBC1C F3 81 00 28 */ psq_st f28, 40(r1), 0, qr0 /* 801CECC0 001CBC20 DB 61 00 10 */ stfd f27, 0x10(r1) /* 801CECC4 001CBC24 F3 61 00 18 */ psq_st f27, 24(r1), 0, qr0 /* 801CECC8 001CBC28 93 E1 00 0C */ stw r31, 0xc(r1) /* 801CECCC 001CBC2C 93 C1 00 08 */ stw r30, 8(r1) /* 801CECD0 001CBC30 7C BF 2B 78 */ mr r31, r5 /* 801CECD4 001CBC34 7C 7E 1B 78 */ mr r30, r3 /* 801CECD8 001CBC38 C3 A5 00 0C */ lfs f29, 0xc(r5) /* 801CECDC 001CBC3C C3 85 00 10 */ lfs f28, 0x10(r5) /* 801CECE0 001CBC40 80 64 09 00 */ lwz r3, 0x900(r4) /* 801CECE4 001CBC44 48 14 37 F9 */ bl Float__9CRandom16Fv /* 801CECE8 001CBC48 C0 02 AB CC */ lfs f0, lbl_805AC8EC@sda21(r2) /* 801CECEC 001CBC4C C0 42 AB C8 */ lfs f2, lbl_805AC8E8@sda21(r2) /* 801CECF0 001CBC50 EC 21 00 28 */ fsubs f1, f1, f0 /* 801CECF4 001CBC54 C0 1E 01 54 */ lfs f0, 0x154(r30) /* 801CECF8 001CBC58 EC 22 00 72 */ fmuls f1, f2, f1 /* 801CECFC 001CBC5C EF 60 00 72 */ fmuls f27, f0, f1 /* 801CED00 001CBC60 FC 20 D8 90 */ fmr f1, f27 /* 801CED04 001CBC64 48 14 60 41 */ bl FastCosR__5CMathFf /* 801CED08 001CBC68 EF FC 00 72 */ fmuls f31, f28, f1 /* 801CED0C 001CBC6C FC 20 D8 90 */ fmr f1, f27 /* 801CED10 001CBC70 48 14 60 E1 */ bl FastSinR__5CMathFf /* 801CED14 001CBC74 EF DD F8 7A */ fmadds f30, f29, f1, f31 /* 801CED18 001CBC78 FC 20 D8 90 */ fmr f1, f27 /* 801CED1C 001CBC7C 48 14 60 D5 */ bl FastSinR__5CMathFf /* 801CED20 001CBC80 EF FC 00 72 */ fmuls f31, f28, f1 /* 801CED24 001CBC84 FC 20 D8 90 */ fmr f1, f27 /* 801CED28 001CBC88 48 14 60 1D */ bl FastCosR__5CMathFf /* 801CED2C 001CBC8C EC 5D F8 78 */ fmsubs f2, f29, f1, f31 /* 801CED30 001CBC90 C0 9E 01 50 */ lfs f4, 0x150(r30) /* 801CED34 001CBC94 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801CED38 001CBC98 C0 7F 00 0C */ lfs f3, 0xc(r31) /* 801CED3C 001CBC9C EC 24 07 B2 */ fmuls f1, f4, f30 /* 801CED40 001CBCA0 EC 44 00 B2 */ fmuls f2, f4, f2 /* 801CED44 001CBCA4 EC 04 00 32 */ fmuls f0, f4, f0 /* 801CED48 001CBCA8 EC 43 10 2A */ fadds f2, f3, f2 /* 801CED4C 001CBCAC D0 5F 00 0C */ stfs f2, 0xc(r31) /* 801CED50 001CBCB0 C0 5F 00 10 */ lfs f2, 0x10(r31) /* 801CED54 001CBCB4 EC 22 08 2A */ fadds f1, f2, f1 /* 801CED58 001CBCB8 D0 3F 00 10 */ stfs f1, 0x10(r31) /* 801CED5C 001CBCBC C0 3F 00 14 */ lfs f1, 0x14(r31) /* 801CED60 001CBCC0 EC 01 00 2A */ fadds f0, f1, f0 /* 801CED64 001CBCC4 D0 1F 00 14 */ stfs f0, 0x14(r31) /* 801CED68 001CBCC8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 801CED6C 001CBCCC CB E1 00 50 */ lfd f31, 0x50(r1) /* 801CED70 001CBCD0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 801CED74 001CBCD4 CB C1 00 40 */ lfd f30, 0x40(r1) /* 801CED78 001CBCD8 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 801CED7C 001CBCDC CB A1 00 30 */ lfd f29, 0x30(r1) /* 801CED80 001CBCE0 E3 81 00 28 */ psq_l f28, 40(r1), 0, qr0 /* 801CED84 001CBCE4 CB 81 00 20 */ lfd f28, 0x20(r1) /* 801CED88 001CBCE8 E3 61 00 18 */ psq_l f27, 24(r1), 0, qr0 /* 801CED8C 001CBCEC CB 61 00 10 */ lfd f27, 0x10(r1) /* 801CED90 001CBCF0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801CED94 001CBCF4 80 01 00 64 */ lwz r0, 0x64(r1) /* 801CED98 001CBCF8 83 C1 00 08 */ lwz r30, 8(r1) /* 801CED9C 001CBCFC 7C 08 03 A6 */ mtlr r0 /* 801CEDA0 001CBD00 38 21 00 60 */ addi r1, r1, 0x60 /* 801CEDA4 001CBD04 4E 80 00 20 */ blr .global "ApplyAlignment__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" "ApplyAlignment__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector": /* 801CEDA8 001CBD08 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801CEDAC 001CBD0C 7C 08 02 A6 */ mflr r0 /* 801CEDB0 001CBD10 90 01 00 34 */ stw r0, 0x34(r1) /* 801CEDB4 001CBD14 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801CEDB8 001CBD18 7C 9F 23 78 */ mr r31, r4 /* 801CEDBC 001CBD1C 93 C1 00 28 */ stw r30, 0x28(r1) /* 801CEDC0 001CBD20 7C 7E 1B 78 */ mr r30, r3 /* 801CEDC4 001CBD24 80 05 00 00 */ lwz r0, 0(r5) /* 801CEDC8 001CBD28 2C 00 00 00 */ cmpwi r0, 0 /* 801CEDCC 001CBD2C 40 81 01 2C */ ble lbl_801CEEF8 /* 801CEDD0 001CBD30 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801CEDD4 001CBD34 38 C5 00 04 */ addi r6, r5, 4 /* 801CEDD8 001CBD38 D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CEDDC 001CBD3C D0 01 00 18 */ stfs f0, 0x18(r1) /* 801CEDE0 001CBD40 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 801CEDE4 001CBD44 48 00 00 3C */ b lbl_801CEE20 lbl_801CEDE8: /* 801CEDE8 001CBD48 80 66 00 00 */ lwz r3, 0(r6) /* 801CEDEC 001CBD4C 38 C6 00 04 */ addi r6, r6, 4 /* 801CEDF0 001CBD50 C0 21 00 14 */ lfs f1, 0x14(r1) /* 801CEDF4 001CBD54 C0 03 00 0C */ lfs f0, 0xc(r3) /* 801CEDF8 001CBD58 C0 41 00 18 */ lfs f2, 0x18(r1) /* 801CEDFC 001CBD5C EC 01 00 2A */ fadds f0, f1, f0 /* 801CEE00 001CBD60 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 801CEE04 001CBD64 D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CEE08 001CBD68 C0 03 00 10 */ lfs f0, 0x10(r3) /* 801CEE0C 001CBD6C EC 02 00 2A */ fadds f0, f2, f0 /* 801CEE10 001CBD70 D0 01 00 18 */ stfs f0, 0x18(r1) /* 801CEE14 001CBD74 C0 03 00 14 */ lfs f0, 0x14(r3) /* 801CEE18 001CBD78 EC 01 00 2A */ fadds f0, f1, f0 /* 801CEE1C 001CBD7C D0 01 00 1C */ stfs f0, 0x1c(r1) lbl_801CEE20: /* 801CEE20 001CBD80 80 85 00 00 */ lwz r4, 0(r5) /* 801CEE24 001CBD84 54 80 10 3A */ slwi r0, r4, 2 /* 801CEE28 001CBD88 7C 65 02 14 */ add r3, r5, r0 /* 801CEE2C 001CBD8C 38 03 00 04 */ addi r0, r3, 4 /* 801CEE30 001CBD90 7C 06 00 40 */ cmplw r6, r0 /* 801CEE34 001CBD94 40 82 FF B4 */ bne lbl_801CEDE8 /* 801CEE38 001CBD98 6C 83 80 00 */ xoris r3, r4, 0x8000 /* 801CEE3C 001CBD9C 3C 00 43 30 */ lis r0, 0x4330 /* 801CEE40 001CBDA0 90 61 00 24 */ stw r3, 0x24(r1) /* 801CEE44 001CBDA4 38 61 00 08 */ addi r3, r1, 8 /* 801CEE48 001CBDA8 C8 22 AB C0 */ lfd f1, lbl_805AC8E0@sda21(r2) /* 801CEE4C 001CBDAC 38 81 00 14 */ addi r4, r1, 0x14 /* 801CEE50 001CBDB0 90 01 00 20 */ stw r0, 0x20(r1) /* 801CEE54 001CBDB4 C0 82 AB B4 */ lfs f4, lbl_805AC8D4@sda21(r2) /* 801CEE58 001CBDB8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 801CEE5C 001CBDBC C0 41 00 18 */ lfs f2, 0x18(r1) /* 801CEE60 001CBDC0 EC 60 08 28 */ fsubs f3, f0, f1 /* 801CEE64 001CBDC4 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 801CEE68 001CBDC8 C0 01 00 14 */ lfs f0, 0x14(r1) /* 801CEE6C 001CBDCC EC 64 18 24 */ fdivs f3, f4, f3 /* 801CEE70 001CBDD0 EC 43 00 B2 */ fmuls f2, f3, f2 /* 801CEE74 001CBDD4 EC 23 00 72 */ fmuls f1, f3, f1 /* 801CEE78 001CBDD8 EC 03 00 32 */ fmuls f0, f3, f0 /* 801CEE7C 001CBDDC D0 41 00 18 */ stfs f2, 0x18(r1) /* 801CEE80 001CBDE0 D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CEE84 001CBDE4 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 801CEE88 001CBDE8 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 801CEE8C 001CBDEC D0 01 00 08 */ stfs f0, 8(r1) /* 801CEE90 001CBDF0 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 801CEE94 001CBDF4 D0 01 00 0C */ stfs f0, 0xc(r1) /* 801CEE98 001CBDF8 C0 1F 00 14 */ lfs f0, 0x14(r31) /* 801CEE9C 001CBDFC D0 01 00 10 */ stfs f0, 0x10(r1) /* 801CEEA0 001CBE00 48 14 57 91 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f /* 801CEEA4 001CBE04 C0 02 AB C8 */ lfs f0, lbl_805AC8E8@sda21(r2) /* 801CEEA8 001CBE08 C0 9E 01 40 */ lfs f4, 0x140(r30) /* 801CEEAC 001CBE0C EC A1 00 24 */ fdivs f5, f1, f0 /* 801CEEB0 001CBE10 C0 01 00 14 */ lfs f0, 0x14(r1) /* 801CEEB4 001CBE14 C0 61 00 18 */ lfs f3, 0x18(r1) /* 801CEEB8 001CBE18 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 801CEEBC 001CBE1C C0 3F 00 0C */ lfs f1, 0xc(r31) /* 801CEEC0 001CBE20 EC 04 00 32 */ fmuls f0, f4, f0 /* 801CEEC4 001CBE24 EC 64 00 F2 */ fmuls f3, f4, f3 /* 801CEEC8 001CBE28 EC 44 00 B2 */ fmuls f2, f4, f2 /* 801CEECC 001CBE2C EC 05 00 32 */ fmuls f0, f5, f0 /* 801CEED0 001CBE30 EC 65 00 F2 */ fmuls f3, f5, f3 /* 801CEED4 001CBE34 EC 45 00 B2 */ fmuls f2, f5, f2 /* 801CEED8 001CBE38 EC 01 00 2A */ fadds f0, f1, f0 /* 801CEEDC 001CBE3C D0 1F 00 0C */ stfs f0, 0xc(r31) /* 801CEEE0 001CBE40 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 801CEEE4 001CBE44 EC 00 18 2A */ fadds f0, f0, f3 /* 801CEEE8 001CBE48 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 801CEEEC 001CBE4C C0 1F 00 14 */ lfs f0, 0x14(r31) /* 801CEEF0 001CBE50 EC 00 10 2A */ fadds f0, f0, f2 /* 801CEEF4 001CBE54 D0 1F 00 14 */ stfs f0, 0x14(r31) lbl_801CEEF8: /* 801CEEF8 001CBE58 80 01 00 34 */ lwz r0, 0x34(r1) /* 801CEEFC 001CBE5C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801CEF00 001CBE60 83 C1 00 28 */ lwz r30, 0x28(r1) /* 801CEF04 001CBE64 7C 08 03 A6 */ mtlr r0 /* 801CEF08 001CBE68 38 21 00 30 */ addi r1, r1, 0x30 /* 801CEF0C 001CBE6C 4E 80 00 20 */ blr .global sub_801cef10 sub_801cef10: /* 801CEF10 001CBE70 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 801CEF14 001CBE74 7C 08 02 A6 */ mflr r0 /* 801CEF18 001CBE78 90 01 00 A4 */ stw r0, 0xa4(r1) /* 801CEF1C 001CBE7C DB E1 00 90 */ stfd f31, 0x90(r1) /* 801CEF20 001CBE80 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 801CEF24 001CBE84 DB C1 00 80 */ stfd f30, 0x80(r1) /* 801CEF28 001CBE88 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 801CEF2C 001CBE8C DB A1 00 70 */ stfd f29, 0x70(r1) /* 801CEF30 001CBE90 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 801CEF34 001CBE94 93 E1 00 6C */ stw r31, 0x6c(r1) /* 801CEF38 001CBE98 93 C1 00 68 */ stw r30, 0x68(r1) /* 801CEF3C 001CBE9C 7C 9E 23 78 */ mr r30, r4 /* 801CEF40 001CBEA0 C0 05 00 08 */ lfs f0, 8(r5) /* 801CEF44 001CBEA4 C0 64 00 08 */ lfs f3, 8(r4) /* 801CEF48 001CBEA8 FF A0 08 90 */ fmr f29, f1 /* 801CEF4C 001CBEAC C0 84 00 04 */ lfs f4, 4(r4) /* 801CEF50 001CBEB0 FF C0 10 90 */ fmr f30, f2 /* 801CEF54 001CBEB4 C0 45 00 04 */ lfs f2, 4(r5) /* 801CEF58 001CBEB8 EC 63 00 28 */ fsubs f3, f3, f0 /* 801CEF5C 001CBEBC C0 24 00 00 */ lfs f1, 0(r4) /* 801CEF60 001CBEC0 C0 05 00 00 */ lfs f0, 0(r5) /* 801CEF64 001CBEC4 EC 44 10 28 */ fsubs f2, f4, f2 /* 801CEF68 001CBEC8 D0 61 00 58 */ stfs f3, 0x58(r1) /* 801CEF6C 001CBECC 7C DF 33 78 */ mr r31, r6 /* 801CEF70 001CBED0 EC 21 00 28 */ fsubs f1, f1, f0 /* 801CEF74 001CBED4 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801CEF78 001CBED8 D0 41 00 54 */ stfs f2, 0x54(r1) /* 801CEF7C 001CBEDC 38 61 00 50 */ addi r3, r1, 0x50 /* 801CEF80 001CBEE0 D0 21 00 50 */ stfs f1, 0x50(r1) /* 801CEF84 001CBEE4 D0 01 00 58 */ stfs f0, 0x58(r1) /* 801CEF88 001CBEE8 48 14 59 31 */ bl Magnitude__9CVector3fCFv /* 801CEF8C 001CBEEC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 801CEF90 001CBEF0 FF E0 08 90 */ fmr f31, f1 /* 801CEF94 001CBEF4 41 82 00 5C */ beq lbl_801CEFF0 /* 801CEF98 001CBEF8 38 61 00 2C */ addi r3, r1, 0x2c /* 801CEF9C 001CBEFC 38 81 00 50 */ addi r4, r1, 0x50 /* 801CEFA0 001CBF00 48 14 58 B1 */ bl AsNormalized__9CVector3fCFv /* 801CEFA4 001CBF04 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 801CEFA8 001CBF08 C0 61 00 30 */ lfs f3, 0x30(r1) /* 801CEFAC 001CBF0C 38 63 66 F4 */ addi r3, r3, sUpVector__9CVector3f@l /* 801CEFB0 001CBF10 C0 81 00 34 */ lfs f4, 0x34(r1) /* 801CEFB4 001CBF14 C0 A3 00 04 */ lfs f5, 4(r3) /* 801CEFB8 001CBF18 38 81 00 20 */ addi r4, r1, 0x20 /* 801CEFBC 001CBF1C C0 E3 00 00 */ lfs f7, 0(r3) /* 801CEFC0 001CBF20 C0 C3 00 08 */ lfs f6, 8(r3) /* 801CEFC4 001CBF24 EC 45 01 32 */ fmuls f2, f5, f4 /* 801CEFC8 001CBF28 C1 01 00 2C */ lfs f8, 0x2c(r1) /* 801CEFCC 001CBF2C EC 07 00 F2 */ fmuls f0, f7, f3 /* 801CEFD0 001CBF30 EC 26 02 32 */ fmuls f1, f6, f8 /* 801CEFD4 001CBF34 EC 43 11 B8 */ fmsubs f2, f3, f6, f2 /* 801CEFD8 001CBF38 EC 08 01 78 */ fmsubs f0, f8, f5, f0 /* 801CEFDC 001CBF3C EC 24 09 F8 */ fmsubs f1, f4, f7, f1 /* 801CEFE0 001CBF40 D0 41 00 20 */ stfs f2, 0x20(r1) /* 801CEFE4 001CBF44 D0 21 00 24 */ stfs f1, 0x24(r1) /* 801CEFE8 001CBF48 D0 01 00 28 */ stfs f0, 0x28(r1) /* 801CEFEC 001CBF4C 48 00 00 6C */ b lbl_801CF058 lbl_801CEFF0: /* 801CEFF0 001CBF50 C0 02 AB B4 */ lfs f0, lbl_805AC8D4@sda21(r2) /* 801CEFF4 001CBF54 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 801CEFF8 001CBF58 38 63 66 F4 */ addi r3, r3, sUpVector__9CVector3f@l /* 801CEFFC 001CBF5C C0 41 00 54 */ lfs f2, 0x54(r1) /* 801CF000 001CBF60 EC 60 F8 24 */ fdivs f3, f0, f31 /* 801CF004 001CBF64 C0 21 00 58 */ lfs f1, 0x58(r1) /* 801CF008 001CBF68 C0 01 00 50 */ lfs f0, 0x50(r1) /* 801CF00C 001CBF6C 38 81 00 08 */ addi r4, r1, 8 /* 801CF010 001CBF70 C0 C3 00 04 */ lfs f6, 4(r3) /* 801CF014 001CBF74 C0 E3 00 08 */ lfs f7, 8(r3) /* 801CF018 001CBF78 EC A3 00 B2 */ fmuls f5, f3, f2 /* 801CF01C 001CBF7C C1 03 00 00 */ lfs f8, 0(r3) /* 801CF020 001CBF80 EC 83 00 72 */ fmuls f4, f3, f1 /* 801CF024 001CBF84 EC 63 00 32 */ fmuls f3, f3, f0 /* 801CF028 001CBF88 EC 45 01 F2 */ fmuls f2, f5, f7 /* 801CF02C 001CBF8C D0 A1 00 18 */ stfs f5, 0x18(r1) /* 801CF030 001CBF90 EC 24 02 32 */ fmuls f1, f4, f8 /* 801CF034 001CBF94 EC 03 01 B2 */ fmuls f0, f3, f6 /* 801CF038 001CBF98 D0 61 00 14 */ stfs f3, 0x14(r1) /* 801CF03C 001CBF9C EC 46 11 38 */ fmsubs f2, f6, f4, f2 /* 801CF040 001CBFA0 EC 27 08 F8 */ fmsubs f1, f7, f3, f1 /* 801CF044 001CBFA4 D0 81 00 1C */ stfs f4, 0x1c(r1) /* 801CF048 001CBFA8 EC 08 01 78 */ fmsubs f0, f8, f5, f0 /* 801CF04C 001CBFAC D0 41 00 08 */ stfs f2, 8(r1) /* 801CF050 001CBFB0 D0 21 00 0C */ stfs f1, 0xc(r1) /* 801CF054 001CBFB4 D0 01 00 10 */ stfs f0, 0x10(r1) lbl_801CF058: /* 801CF058 001CBFB8 C0 04 00 00 */ lfs f0, 0(r4) /* 801CF05C 001CBFBC FC 1F F0 40 */ fcmpo cr0, f31, f30 /* 801CF060 001CBFC0 D0 01 00 44 */ stfs f0, 0x44(r1) /* 801CF064 001CBFC4 C0 04 00 04 */ lfs f0, 4(r4) /* 801CF068 001CBFC8 D0 01 00 48 */ stfs f0, 0x48(r1) /* 801CF06C 001CBFCC C0 04 00 08 */ lfs f0, 8(r4) /* 801CF070 001CBFD0 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 801CF074 001CBFD4 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 801CF078 001CBFD8 D0 01 00 38 */ stfs f0, 0x38(r1) /* 801CF07C 001CBFDC C0 1E 00 10 */ lfs f0, 0x10(r30) /* 801CF080 001CBFE0 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 801CF084 001CBFE4 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 801CF088 001CBFE8 D0 01 00 40 */ stfs f0, 0x40(r1) /* 801CF08C 001CBFEC 40 81 00 0C */ ble lbl_801CF098 /* 801CF090 001CBFF0 C3 C2 AB B8 */ lfs f30, lbl_805AC8D8@sda21(r2) /* 801CF094 001CBFF4 48 00 00 10 */ b lbl_801CF0A4 lbl_801CF098: /* 801CF098 001CBFF8 EC 1F F0 24 */ fdivs f0, f31, f30 /* 801CF09C 001CBFFC C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801CF0A0 001CC000 EF C1 00 28 */ fsubs f30, f1, f0 lbl_801CF0A4: /* 801CF0A4 001CC004 38 61 00 38 */ addi r3, r1, 0x38 /* 801CF0A8 001CC008 38 81 00 44 */ addi r4, r1, 0x44 /* 801CF0AC 001CC00C 48 14 55 85 */ bl GetAngleDiff__9CVector3fFRC9CVector3fRC9CVector3f /* 801CF0B0 001CC010 C0 42 AB C8 */ lfs f2, lbl_805AC8E8@sda21(r2) /* 801CF0B4 001CC014 C0 01 00 44 */ lfs f0, 0x44(r1) /* 801CF0B8 001CC018 EC 81 10 24 */ fdivs f4, f1, f2 /* 801CF0BC 001CC01C C0 61 00 48 */ lfs f3, 0x48(r1) /* 801CF0C0 001CC020 C0 41 00 4C */ lfs f2, 0x4c(r1) /* 801CF0C4 001CC024 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 801CF0C8 001CC028 EC 84 07 B2 */ fmuls f4, f4, f30 /* 801CF0CC 001CC02C EC 1D 00 32 */ fmuls f0, f29, f0 /* 801CF0D0 001CC030 EC 7D 00 F2 */ fmuls f3, f29, f3 /* 801CF0D4 001CC034 EC 5D 00 B2 */ fmuls f2, f29, f2 /* 801CF0D8 001CC038 EC 04 00 32 */ fmuls f0, f4, f0 /* 801CF0DC 001CC03C EC 64 00 F2 */ fmuls f3, f4, f3 /* 801CF0E0 001CC040 EC 44 00 B2 */ fmuls f2, f4, f2 /* 801CF0E4 001CC044 EC 01 00 2A */ fadds f0, f1, f0 /* 801CF0E8 001CC048 D0 1E 00 0C */ stfs f0, 0xc(r30) /* 801CF0EC 001CC04C C0 1E 00 10 */ lfs f0, 0x10(r30) /* 801CF0F0 001CC050 EC 00 18 2A */ fadds f0, f0, f3 /* 801CF0F4 001CC054 D0 1E 00 10 */ stfs f0, 0x10(r30) /* 801CF0F8 001CC058 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 801CF0FC 001CC05C EC 00 10 2A */ fadds f0, f0, f2 /* 801CF100 001CC060 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 801CF104 001CC064 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 801CF108 001CC068 CB E1 00 90 */ lfd f31, 0x90(r1) /* 801CF10C 001CC06C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 801CF110 001CC070 CB C1 00 80 */ lfd f30, 0x80(r1) /* 801CF114 001CC074 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 801CF118 001CC078 CB A1 00 70 */ lfd f29, 0x70(r1) /* 801CF11C 001CC07C 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 801CF120 001CC080 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 801CF124 001CC084 83 C1 00 68 */ lwz r30, 0x68(r1) /* 801CF128 001CC088 7C 08 03 A6 */ mtlr r0 /* 801CF12C 001CC08C 38 21 00 A0 */ addi r1, r1, 0xa0 /* 801CF130 001CC090 4E 80 00 20 */ blr .global "BuildBoidNearList__10CFishCloudFRC9CVector3ffRQ24rstl41reserved_vector" "BuildBoidNearList__10CFishCloudFRC9CVector3ffRQ24rstl41reserved_vector": /* 801CF134 001CC094 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801CF138 001CC098 7C 08 02 A6 */ mflr r0 /* 801CF13C 001CC09C 90 01 00 34 */ stw r0, 0x34(r1) /* 801CF140 001CC0A0 DB E1 00 20 */ stfd f31, 0x20(r1) /* 801CF144 001CC0A4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 801CF148 001CC0A8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801CF14C 001CC0AC 93 C1 00 18 */ stw r30, 0x18(r1) /* 801CF150 001CC0B0 93 A1 00 14 */ stw r29, 0x14(r1) /* 801CF154 001CC0B4 EF E1 00 72 */ fmuls f31, f1, f1 /* 801CF158 001CC0B8 7C 9D 23 78 */ mr r29, r4 /* 801CF15C 001CC0BC 7C BE 2B 78 */ mr r30, r5 /* 801CF160 001CC0C0 3B E0 00 19 */ li r31, 0x19 /* 801CF164 001CC0C4 48 00 03 E9 */ bl GetListAt__10CFishCloudFRC9CVector3f /* 801CF168 001CC0C8 48 00 00 80 */ b lbl_801CF1E8 lbl_801CF16C: /* 801CF16C 001CC0CC 88 03 00 20 */ lbz r0, 0x20(r3) /* 801CF170 001CC0D0 28 00 00 00 */ cmplwi r0, 0 /* 801CF174 001CC0D4 41 82 00 70 */ beq lbl_801CF1E4 /* 801CF178 001CC0D8 C0 23 00 04 */ lfs f1, 4(r3) /* 801CF17C 001CC0DC C0 1D 00 04 */ lfs f0, 4(r29) /* 801CF180 001CC0E0 C0 63 00 00 */ lfs f3, 0(r3) /* 801CF184 001CC0E4 EC 21 00 28 */ fsubs f1, f1, f0 /* 801CF188 001CC0E8 C0 1D 00 00 */ lfs f0, 0(r29) /* 801CF18C 001CC0EC C0 43 00 08 */ lfs f2, 8(r3) /* 801CF190 001CC0F0 EC 63 00 28 */ fsubs f3, f3, f0 /* 801CF194 001CC0F4 C0 1D 00 08 */ lfs f0, 8(r29) /* 801CF198 001CC0F8 EC 21 00 72 */ fmuls f1, f1, f1 /* 801CF19C 001CC0FC EC 42 00 28 */ fsubs f2, f2, f0 /* 801CF1A0 001CC100 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801CF1A4 001CC104 EC 23 08 FA */ fmadds f1, f3, f3, f1 /* 801CF1A8 001CC108 EC 22 08 BA */ fmadds f1, f2, f2, f1 /* 801CF1AC 001CC10C FC 00 08 00 */ fcmpu cr0, f0, f1 /* 801CF1B0 001CC110 41 82 00 34 */ beq lbl_801CF1E4 /* 801CF1B4 001CC114 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 801CF1B8 001CC118 40 80 00 2C */ bge lbl_801CF1E4 /* 801CF1BC 001CC11C 80 1E 00 00 */ lwz r0, 0(r30) /* 801CF1C0 001CC120 54 00 10 3A */ slwi r0, r0, 2 /* 801CF1C4 001CC124 7C 9E 02 14 */ add r4, r30, r0 /* 801CF1C8 001CC128 34 84 00 04 */ addic. r4, r4, 4 /* 801CF1CC 001CC12C 41 82 00 08 */ beq lbl_801CF1D4 /* 801CF1D0 001CC130 90 64 00 00 */ stw r3, 0(r4) lbl_801CF1D4: /* 801CF1D4 001CC134 80 9E 00 00 */ lwz r4, 0(r30) /* 801CF1D8 001CC138 3B FF FF FF */ addi r31, r31, -1 /* 801CF1DC 001CC13C 38 04 00 01 */ addi r0, r4, 1 /* 801CF1E0 001CC140 90 1E 00 00 */ stw r0, 0(r30) lbl_801CF1E4: /* 801CF1E4 001CC144 80 63 00 1C */ lwz r3, 0x1c(r3) lbl_801CF1E8: /* 801CF1E8 001CC148 28 03 00 00 */ cmplwi r3, 0 /* 801CF1EC 001CC14C 41 82 00 0C */ beq lbl_801CF1F8 /* 801CF1F0 001CC150 2C 1F 00 00 */ cmpwi r31, 0 /* 801CF1F4 001CC154 40 82 FF 78 */ bne lbl_801CF16C lbl_801CF1F8: /* 801CF1F8 001CC158 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 801CF1FC 001CC15C 80 01 00 34 */ lwz r0, 0x34(r1) /* 801CF200 001CC160 CB E1 00 20 */ lfd f31, 0x20(r1) /* 801CF204 001CC164 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801CF208 001CC168 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801CF20C 001CC16C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801CF210 001CC170 7C 08 03 A6 */ mtlr r0 /* 801CF214 001CC174 38 21 00 30 */ addi r1, r1, 0x30 /* 801CF218 001CC178 4E 80 00 20 */ blr .global sub_801cf21c sub_801cf21c: /* 801CF21C 001CC17C 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 801CF220 001CC180 7C 08 02 A6 */ mflr r0 /* 801CF224 001CC184 90 01 00 E4 */ stw r0, 0xe4(r1) /* 801CF228 001CC188 DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 801CF22C 001CC18C F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 801CF230 001CC190 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 801CF234 001CC194 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 801CF238 001CC198 DB A1 00 B0 */ stfd f29, 0xb0(r1) /* 801CF23C 001CC19C F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 /* 801CF240 001CC1A0 DB 81 00 A0 */ stfd f28, 0xa0(r1) /* 801CF244 001CC1A4 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 /* 801CF248 001CC1A8 DB 61 00 90 */ stfd f27, 0x90(r1) /* 801CF24C 001CC1AC F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 /* 801CF250 001CC1B0 DB 41 00 80 */ stfd f26, 0x80(r1) /* 801CF254 001CC1B4 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 /* 801CF258 001CC1B8 93 E1 00 7C */ stw r31, 0x7c(r1) /* 801CF25C 001CC1BC 93 C1 00 78 */ stw r30, 0x78(r1) /* 801CF260 001CC1C0 93 A1 00 74 */ stw r29, 0x74(r1) /* 801CF264 001CC1C4 FF 40 08 90 */ fmr f26, f1 /* 801CF268 001CC1C8 7C 7D 1B 78 */ mr r29, r3 /* 801CF26C 001CC1CC 7C 9E 23 78 */ mr r30, r4 /* 801CF270 001CC1D0 7C BF 2B 78 */ mr r31, r5 /* 801CF274 001CC1D4 7F A4 EB 78 */ mr r4, r29 /* 801CF278 001CC1D8 38 61 00 20 */ addi r3, r1, 0x20 /* 801CF27C 001CC1DC EF FA 06 B2 */ fmuls f31, f26, f26 /* 801CF280 001CC1E0 48 00 2B 61 */ bl GetBoundingBox__10CFishCloudCFv /* 801CF284 001CC1E4 C0 FD 02 38 */ lfs f7, 0x238(r29) /* 801CF288 001CC1E8 C0 C1 00 20 */ lfs f6, 0x20(r1) /* 801CF28C 001CC1EC D0 E1 00 18 */ stfs f7, 0x18(r1) /* 801CF290 001CC1F0 C0 A1 00 24 */ lfs f5, 0x24(r1) /* 801CF294 001CC1F4 C0 1D 02 44 */ lfs f0, 0x244(r29) /* 801CF298 001CC1F8 C0 81 00 28 */ lfs f4, 0x28(r1) /* 801CF29C 001CC1FC EC 1A 00 32 */ fmuls f0, f26, f0 /* 801CF2A0 001CC200 C0 61 00 2C */ lfs f3, 0x2c(r1) /* 801CF2A4 001CC204 C0 41 00 30 */ lfs f2, 0x30(r1) /* 801CF2A8 001CC208 C0 21 00 34 */ lfs f1, 0x34(r1) /* 801CF2AC 001CC20C FC 00 38 40 */ fcmpo cr0, f0, f7 /* 801CF2B0 001CC210 D0 C1 00 38 */ stfs f6, 0x38(r1) /* 801CF2B4 001CC214 D0 A1 00 3C */ stfs f5, 0x3c(r1) /* 801CF2B8 001CC218 D0 81 00 40 */ stfs f4, 0x40(r1) /* 801CF2BC 001CC21C D0 61 00 44 */ stfs f3, 0x44(r1) /* 801CF2C0 001CC220 D0 41 00 48 */ stfs f2, 0x48(r1) /* 801CF2C4 001CC224 D0 21 00 4C */ stfs f1, 0x4c(r1) /* 801CF2C8 001CC228 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 801CF2CC 001CC22C 40 80 00 0C */ bge lbl_801CF2D8 /* 801CF2D0 001CC230 38 61 00 18 */ addi r3, r1, 0x18 /* 801CF2D4 001CC234 48 00 00 08 */ b lbl_801CF2DC lbl_801CF2D8: /* 801CF2D8 001CC238 38 61 00 1C */ addi r3, r1, 0x1c lbl_801CF2DC: /* 801CF2DC 001CC23C C0 A3 00 00 */ lfs f5, 0(r3) /* 801CF2E0 001CC240 C0 3D 02 3C */ lfs f1, 0x23c(r29) /* 801CF2E4 001CC244 D0 21 00 10 */ stfs f1, 0x10(r1) /* 801CF2E8 001CC248 C0 1D 02 48 */ lfs f0, 0x248(r29) /* 801CF2EC 001CC24C EC 1A 00 32 */ fmuls f0, f26, f0 /* 801CF2F0 001CC250 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 801CF2F4 001CC254 D0 01 00 14 */ stfs f0, 0x14(r1) /* 801CF2F8 001CC258 40 80 00 0C */ bge lbl_801CF304 /* 801CF2FC 001CC25C 38 61 00 10 */ addi r3, r1, 0x10 /* 801CF300 001CC260 48 00 00 08 */ b lbl_801CF308 lbl_801CF304: /* 801CF304 001CC264 38 61 00 14 */ addi r3, r1, 0x14 lbl_801CF308: /* 801CF308 001CC268 C0 C3 00 00 */ lfs f6, 0(r3) /* 801CF30C 001CC26C C0 3D 02 40 */ lfs f1, 0x240(r29) /* 801CF310 001CC270 D0 21 00 08 */ stfs f1, 8(r1) /* 801CF314 001CC274 C0 1D 02 4C */ lfs f0, 0x24c(r29) /* 801CF318 001CC278 EC 1A 00 32 */ fmuls f0, f26, f0 /* 801CF31C 001CC27C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 801CF320 001CC280 D0 01 00 0C */ stfs f0, 0xc(r1) /* 801CF324 001CC284 40 80 00 0C */ bge lbl_801CF330 /* 801CF328 001CC288 38 61 00 08 */ addi r3, r1, 8 /* 801CF32C 001CC28C 48 00 00 08 */ b lbl_801CF334 lbl_801CF330: /* 801CF330 001CC290 38 61 00 0C */ addi r3, r1, 0xc lbl_801CF334: /* 801CF334 001CC294 C0 02 AB D0 */ lfs f0, lbl_805AC8F0@sda21(r2) /* 801CF338 001CC298 38 A0 00 19 */ li r5, 0x19 /* 801CF33C 001CC29C C0 E3 00 00 */ lfs f7, 0(r3) /* 801CF340 001CC2A0 ED 00 28 28 */ fsubs f8, f0, f5 /* 801CF344 001CC2A4 C0 21 00 38 */ lfs f1, 0x38(r1) /* 801CF348 001CC2A8 EC 40 30 28 */ fsubs f2, f0, f6 /* 801CF34C 001CC2AC EC 60 38 28 */ fsubs f3, f0, f7 /* 801CF350 001CC2B0 48 00 01 A8 */ b lbl_801CF4F8 lbl_801CF354: /* 801CF354 001CC2B4 C0 1E 00 00 */ lfs f0, 0(r30) /* 801CF358 001CC2B8 ED 28 00 2A */ fadds f9, f8, f0 /* 801CF35C 001CC2BC FC 09 08 40 */ fcmpo cr0, f9, f1 /* 801CF360 001CC2C0 41 80 01 90 */ blt lbl_801CF4F0 /* 801CF364 001CC2C4 C0 01 00 44 */ lfs f0, 0x44(r1) /* 801CF368 001CC2C8 FC 09 00 40 */ fcmpo cr0, f9, f0 /* 801CF36C 001CC2CC 4C 41 13 82 */ cror 2, 1, 2 /* 801CF370 001CC2D0 41 82 01 90 */ beq lbl_801CF500 /* 801CF374 001CC2D4 FD 40 10 90 */ fmr f10, f2 /* 801CF378 001CC2D8 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 801CF37C 001CC2DC 48 00 01 6C */ b lbl_801CF4E8 lbl_801CF380: /* 801CF380 001CC2E0 C0 9E 00 04 */ lfs f4, 4(r30) /* 801CF384 001CC2E4 ED 6A 20 2A */ fadds f11, f10, f4 /* 801CF388 001CC2E8 FC 0B 00 40 */ fcmpo cr0, f11, f0 /* 801CF38C 001CC2EC 41 80 01 54 */ blt lbl_801CF4E0 /* 801CF390 001CC2F0 C0 81 00 48 */ lfs f4, 0x48(r1) /* 801CF394 001CC2F4 FC 0B 20 40 */ fcmpo cr0, f11, f4 /* 801CF398 001CC2F8 4C 41 13 82 */ cror 2, 1, 2 /* 801CF39C 001CC2FC 41 82 01 54 */ beq lbl_801CF4F0 /* 801CF3A0 001CC300 FD 80 18 90 */ fmr f12, f3 /* 801CF3A4 001CC304 C0 81 00 40 */ lfs f4, 0x40(r1) /* 801CF3A8 001CC308 48 00 01 30 */ b lbl_801CF4D8 lbl_801CF3AC: /* 801CF3AC 001CC30C C1 BE 00 08 */ lfs f13, 8(r30) /* 801CF3B0 001CC310 EF 4C 68 2A */ fadds f26, f12, f13 /* 801CF3B4 001CC314 FC 1A 20 40 */ fcmpo cr0, f26, f4 /* 801CF3B8 001CC318 41 80 01 18 */ blt lbl_801CF4D0 /* 801CF3BC 001CC31C C1 A1 00 4C */ lfs f13, 0x4c(r1) /* 801CF3C0 001CC320 FC 1A 68 40 */ fcmpo cr0, f26, f13 /* 801CF3C4 001CC324 4C 41 13 82 */ cror 2, 1, 2 /* 801CF3C8 001CC328 41 82 01 18 */ beq lbl_801CF4E0 /* 801CF3CC 001CC32C C3 C1 00 3C */ lfs f30, 0x3c(r1) /* 801CF3D0 001CC330 ED BA 20 28 */ fsubs f13, f26, f4 /* 801CF3D4 001CC334 C3 BD 02 4C */ lfs f29, 0x24c(r29) /* 801CF3D8 001CC338 EF CB F0 28 */ fsubs f30, f11, f30 /* 801CF3DC 001CC33C C3 9D 02 48 */ lfs f28, 0x248(r29) /* 801CF3E0 001CC340 C3 61 00 38 */ lfs f27, 0x38(r1) /* 801CF3E4 001CC344 ED BD 03 72 */ fmuls f13, f29, f13 /* 801CF3E8 001CC348 C3 5D 02 44 */ lfs f26, 0x244(r29) /* 801CF3EC 001CC34C EF BC 07 B2 */ fmuls f29, f28, f30 /* 801CF3F0 001CC350 EF 89 D8 28 */ fsubs f28, f9, f27 /* 801CF3F4 001CC354 FD A0 68 1E */ fctiwz f13, f13 /* 801CF3F8 001CC358 FF A0 E8 1E */ fctiwz f29, f29 /* 801CF3FC 001CC35C EF 9A 07 32 */ fmuls f28, f26, f28 /* 801CF400 001CC360 D9 A1 00 60 */ stfd f13, 0x60(r1) /* 801CF404 001CC364 DB A1 00 58 */ stfd f29, 0x58(r1) /* 801CF408 001CC368 FD A0 E0 1E */ fctiwz f13, f28 /* 801CF40C 001CC36C 80 01 00 64 */ lwz r0, 0x64(r1) /* 801CF410 001CC370 80 61 00 5C */ lwz r3, 0x5c(r1) /* 801CF414 001CC374 D9 A1 00 50 */ stfd f13, 0x50(r1) /* 801CF418 001CC378 1C 00 00 31 */ mulli r0, r0, 0x31 /* 801CF41C 001CC37C 80 81 00 54 */ lwz r4, 0x54(r1) /* 801CF420 001CC380 1C 63 00 07 */ mulli r3, r3, 7 /* 801CF424 001CC384 7C 03 02 14 */ add r0, r3, r0 /* 801CF428 001CC388 7C 04 02 15 */ add. r0, r4, r0 /* 801CF42C 001CC38C 41 80 00 A4 */ blt lbl_801CF4D0 /* 801CF430 001CC390 2C 00 01 57 */ cmpwi r0, 0x157 /* 801CF434 001CC394 40 80 00 AC */ bge lbl_801CF4E0 /* 801CF438 001CC398 80 7D 01 04 */ lwz r3, 0x104(r29) /* 801CF43C 001CC39C 54 00 10 3A */ slwi r0, r0, 2 /* 801CF440 001CC3A0 7C 83 00 2E */ lwzx r4, r3, r0 /* 801CF444 001CC3A4 48 00 00 84 */ b lbl_801CF4C8 lbl_801CF448: /* 801CF448 001CC3A8 88 04 00 20 */ lbz r0, 0x20(r4) /* 801CF44C 001CC3AC 28 00 00 00 */ cmplwi r0, 0 /* 801CF450 001CC3B0 41 82 00 74 */ beq lbl_801CF4C4 /* 801CF454 001CC3B4 C3 A4 00 04 */ lfs f29, 4(r4) /* 801CF458 001CC3B8 C1 BE 00 04 */ lfs f13, 4(r30) /* 801CF45C 001CC3BC C3 C4 00 00 */ lfs f30, 0(r4) /* 801CF460 001CC3C0 EF 5D 68 28 */ fsubs f26, f29, f13 /* 801CF464 001CC3C4 C1 BE 00 00 */ lfs f13, 0(r30) /* 801CF468 001CC3C8 C3 A4 00 08 */ lfs f29, 8(r4) /* 801CF46C 001CC3CC EF 7E 68 28 */ fsubs f27, f30, f13 /* 801CF470 001CC3D0 C1 BE 00 08 */ lfs f13, 8(r30) /* 801CF474 001CC3D4 EF DA 06 B2 */ fmuls f30, f26, f26 /* 801CF478 001CC3D8 EF 5D 68 28 */ fsubs f26, f29, f13 /* 801CF47C 001CC3DC C1 A2 AB B8 */ lfs f13, lbl_805AC8D8@sda21(r2) /* 801CF480 001CC3E0 EF DB F6 FA */ fmadds f30, f27, f27, f30 /* 801CF484 001CC3E4 EF 5A F6 BA */ fmadds f26, f26, f26, f30 /* 801CF488 001CC3E8 FC 0D D0 00 */ fcmpu cr0, f13, f26 /* 801CF48C 001CC3EC 41 82 00 38 */ beq lbl_801CF4C4 /* 801CF490 001CC3F0 FC 1A F8 40 */ fcmpo cr0, f26, f31 /* 801CF494 001CC3F4 40 80 00 30 */ bge lbl_801CF4C4 /* 801CF498 001CC3F8 80 1F 00 00 */ lwz r0, 0(r31) /* 801CF49C 001CC3FC 54 00 10 3A */ slwi r0, r0, 2 /* 801CF4A0 001CC400 7C 7F 02 14 */ add r3, r31, r0 /* 801CF4A4 001CC404 34 63 00 04 */ addic. r3, r3, 4 /* 801CF4A8 001CC408 41 82 00 08 */ beq lbl_801CF4B0 /* 801CF4AC 001CC40C 90 83 00 00 */ stw r4, 0(r3) lbl_801CF4B0: /* 801CF4B0 001CC410 80 7F 00 00 */ lwz r3, 0(r31) /* 801CF4B4 001CC414 34 A5 FF FF */ addic. r5, r5, -1 /* 801CF4B8 001CC418 38 03 00 01 */ addi r0, r3, 1 /* 801CF4BC 001CC41C 90 1F 00 00 */ stw r0, 0(r31) /* 801CF4C0 001CC420 41 82 00 40 */ beq lbl_801CF500 lbl_801CF4C4: /* 801CF4C4 001CC424 80 84 00 1C */ lwz r4, 0x1c(r4) lbl_801CF4C8: /* 801CF4C8 001CC428 28 04 00 00 */ cmplwi r4, 0 /* 801CF4CC 001CC42C 40 82 FF 7C */ bne lbl_801CF448 lbl_801CF4D0: /* 801CF4D0 001CC430 C1 BD 02 40 */ lfs f13, 0x240(r29) /* 801CF4D4 001CC434 ED 8C 68 2A */ fadds f12, f12, f13 lbl_801CF4D8: /* 801CF4D8 001CC438 FC 0C 38 40 */ fcmpo cr0, f12, f7 /* 801CF4DC 001CC43C 41 80 FE D0 */ blt lbl_801CF3AC lbl_801CF4E0: /* 801CF4E0 001CC440 C0 9D 02 3C */ lfs f4, 0x23c(r29) /* 801CF4E4 001CC444 ED 4A 20 2A */ fadds f10, f10, f4 lbl_801CF4E8: /* 801CF4E8 001CC448 FC 0A 30 40 */ fcmpo cr0, f10, f6 /* 801CF4EC 001CC44C 41 80 FE 94 */ blt lbl_801CF380 lbl_801CF4F0: /* 801CF4F0 001CC450 C0 1D 02 38 */ lfs f0, 0x238(r29) /* 801CF4F4 001CC454 ED 08 00 2A */ fadds f8, f8, f0 lbl_801CF4F8: /* 801CF4F8 001CC458 FC 08 28 40 */ fcmpo cr0, f8, f5 /* 801CF4FC 001CC45C 41 80 FE 58 */ blt lbl_801CF354 lbl_801CF500: /* 801CF500 001CC460 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 801CF504 001CC464 CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 801CF508 001CC468 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 801CF50C 001CC46C CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 801CF510 001CC470 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 /* 801CF514 001CC474 CB A1 00 B0 */ lfd f29, 0xb0(r1) /* 801CF518 001CC478 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 /* 801CF51C 001CC47C CB 81 00 A0 */ lfd f28, 0xa0(r1) /* 801CF520 001CC480 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 /* 801CF524 001CC484 CB 61 00 90 */ lfd f27, 0x90(r1) /* 801CF528 001CC488 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 /* 801CF52C 001CC48C CB 41 00 80 */ lfd f26, 0x80(r1) /* 801CF530 001CC490 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 801CF534 001CC494 83 C1 00 78 */ lwz r30, 0x78(r1) /* 801CF538 001CC498 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 801CF53C 001CC49C 83 A1 00 74 */ lwz r29, 0x74(r1) /* 801CF540 001CC4A0 7C 08 03 A6 */ mtlr r0 /* 801CF544 001CC4A4 38 21 00 E0 */ addi r1, r1, 0xe0 /* 801CF548 001CC4A8 4E 80 00 20 */ blr .global GetListAt__10CFishCloudFRC9CVector3f GetListAt__10CFishCloudFRC9CVector3f: /* 801CF54C 001CC4AC 94 21 FF A0 */ stwu r1, -0x60(r1) /* 801CF550 001CC4B0 7C 08 02 A6 */ mflr r0 /* 801CF554 001CC4B4 90 01 00 64 */ stw r0, 0x64(r1) /* 801CF558 001CC4B8 93 E1 00 5C */ stw r31, 0x5c(r1) /* 801CF55C 001CC4BC 7C 9F 23 78 */ mr r31, r4 /* 801CF560 001CC4C0 93 C1 00 58 */ stw r30, 0x58(r1) /* 801CF564 001CC4C4 7C 7E 1B 78 */ mr r30, r3 /* 801CF568 001CC4C8 7F C4 F3 78 */ mr r4, r30 /* 801CF56C 001CC4CC 38 61 00 08 */ addi r3, r1, 8 /* 801CF570 001CC4D0 48 00 28 71 */ bl GetBoundingBox__10CFishCloudCFv /* 801CF574 001CC4D4 C0 E1 00 0C */ lfs f7, 0xc(r1) /* 801CF578 001CC4D8 C0 C1 00 10 */ lfs f6, 0x10(r1) /* 801CF57C 001CC4DC C0 3F 00 04 */ lfs f1, 4(r31) /* 801CF580 001CC4E0 C0 1F 00 08 */ lfs f0, 8(r31) /* 801CF584 001CC4E4 C1 01 00 08 */ lfs f8, 8(r1) /* 801CF588 001CC4E8 EC 41 38 28 */ fsubs f2, f1, f7 /* 801CF58C 001CC4EC C0 7E 02 48 */ lfs f3, 0x248(r30) /* 801CF590 001CC4F0 EC 00 30 28 */ fsubs f0, f0, f6 /* 801CF594 001CC4F4 C0 3E 02 4C */ lfs f1, 0x24c(r30) /* 801CF598 001CC4F8 C0 9F 00 00 */ lfs f4, 0(r31) /* 801CF59C 001CC4FC EC 43 00 B2 */ fmuls f2, f3, f2 /* 801CF5A0 001CC500 EC 01 00 32 */ fmuls f0, f1, f0 /* 801CF5A4 001CC504 C0 BE 02 44 */ lfs f5, 0x244(r30) /* 801CF5A8 001CC508 EC 64 40 28 */ fsubs f3, f4, f8 /* 801CF5AC 001CC50C C0 81 00 14 */ lfs f4, 0x14(r1) /* 801CF5B0 001CC510 FC 20 10 1E */ fctiwz f1, f2 /* 801CF5B4 001CC514 FC 00 00 1E */ fctiwz f0, f0 /* 801CF5B8 001CC518 EC 45 00 F2 */ fmuls f2, f5, f3 /* 801CF5BC 001CC51C C0 61 00 18 */ lfs f3, 0x18(r1) /* 801CF5C0 001CC520 D8 21 00 40 */ stfd f1, 0x40(r1) /* 801CF5C4 001CC524 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 801CF5C8 001CC528 D8 01 00 48 */ stfd f0, 0x48(r1) /* 801CF5CC 001CC52C FC 00 10 1E */ fctiwz f0, f2 /* 801CF5D0 001CC530 80 61 00 44 */ lwz r3, 0x44(r1) /* 801CF5D4 001CC534 80 01 00 4C */ lwz r0, 0x4c(r1) /* 801CF5D8 001CC538 D8 01 00 38 */ stfd f0, 0x38(r1) /* 801CF5DC 001CC53C 1C 63 00 07 */ mulli r3, r3, 7 /* 801CF5E0 001CC540 80 81 00 3C */ lwz r4, 0x3c(r1) /* 801CF5E4 001CC544 1C 00 00 31 */ mulli r0, r0, 0x31 /* 801CF5E8 001CC548 D1 01 00 20 */ stfs f8, 0x20(r1) /* 801CF5EC 001CC54C D0 E1 00 24 */ stfs f7, 0x24(r1) /* 801CF5F0 001CC550 7C 03 02 14 */ add r0, r3, r0 /* 801CF5F4 001CC554 7C 04 02 15 */ add. r0, r4, r0 /* 801CF5F8 001CC558 D0 C1 00 28 */ stfs f6, 0x28(r1) /* 801CF5FC 001CC55C D0 81 00 2C */ stfs f4, 0x2c(r1) /* 801CF600 001CC560 D0 61 00 30 */ stfs f3, 0x30(r1) /* 801CF604 001CC564 D0 21 00 34 */ stfs f1, 0x34(r1) /* 801CF608 001CC568 41 80 00 0C */ blt lbl_801CF614 /* 801CF60C 001CC56C 2C 00 01 57 */ cmpwi r0, 0x157 /* 801CF610 001CC570 41 80 00 0C */ blt lbl_801CF61C lbl_801CF614: /* 801CF614 001CC574 38 60 00 00 */ li r3, 0 /* 801CF618 001CC578 48 00 00 10 */ b lbl_801CF628 lbl_801CF61C: /* 801CF61C 001CC57C 80 7E 01 04 */ lwz r3, 0x104(r30) /* 801CF620 001CC580 54 00 10 3A */ slwi r0, r0, 2 /* 801CF624 001CC584 7C 63 00 2E */ lwzx r3, r3, r0 lbl_801CF628: /* 801CF628 001CC588 80 01 00 64 */ lwz r0, 0x64(r1) /* 801CF62C 001CC58C 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 801CF630 001CC590 83 C1 00 58 */ lwz r30, 0x58(r1) /* 801CF634 001CC594 7C 08 03 A6 */ mtlr r0 /* 801CF638 001CC598 38 21 00 60 */ addi r1, r1, 0x60 /* 801CF63C 001CC59C 4E 80 00 20 */ blr .global UpdatePartitionList__10CFishCloudFv UpdatePartitionList__10CFishCloudFv: /* 801CF640 001CC5A0 94 21 FF 90 */ stwu r1, -0x70(r1) /* 801CF644 001CC5A4 7C 08 02 A6 */ mflr r0 /* 801CF648 001CC5A8 90 01 00 74 */ stw r0, 0x74(r1) /* 801CF64C 001CC5AC 93 E1 00 6C */ stw r31, 0x6c(r1) /* 801CF650 001CC5B0 7C 7F 1B 78 */ mr r31, r3 /* 801CF654 001CC5B4 93 C1 00 68 */ stw r30, 0x68(r1) /* 801CF658 001CC5B8 93 A1 00 64 */ stw r29, 0x64(r1) /* 801CF65C 001CC5BC 80 03 00 FC */ lwz r0, 0xfc(r3) /* 801CF660 001CC5C0 80 63 01 04 */ lwz r3, 0x104(r3) /* 801CF664 001CC5C4 54 00 10 3A */ slwi r0, r0, 2 /* 801CF668 001CC5C8 7C 03 02 14 */ add r0, r3, r0 /* 801CF66C 001CC5CC 90 61 00 0C */ stw r3, 0xc(r1) /* 801CF670 001CC5D0 90 01 00 14 */ stw r0, 0x14(r1) /* 801CF674 001CC5D4 90 01 00 10 */ stw r0, 0x10(r1) /* 801CF678 001CC5D8 90 61 00 08 */ stw r3, 8(r1) /* 801CF67C 001CC5DC 48 00 00 08 */ b lbl_801CF684 lbl_801CF680: /* 801CF680 001CC5E0 38 63 00 04 */ addi r3, r3, 4 lbl_801CF684: /* 801CF684 001CC5E4 7C 03 00 40 */ cmplw r3, r0 /* 801CF688 001CC5E8 40 82 FF F8 */ bne lbl_801CF680 /* 801CF68C 001CC5EC 3B C0 00 00 */ li r30, 0 /* 801CF690 001CC5F0 3B A0 00 00 */ li r29, 0 /* 801CF694 001CC5F4 93 DF 00 FC */ stw r30, 0xfc(r31) /* 801CF698 001CC5F8 48 00 00 50 */ b lbl_801CF6E8 lbl_801CF69C: /* 801CF69C 001CC5FC 80 1F 00 FC */ lwz r0, 0xfc(r31) /* 801CF6A0 001CC600 7C 00 28 00 */ cmpw r0, r5 /* 801CF6A4 001CC604 41 80 00 1C */ blt lbl_801CF6C0 /* 801CF6A8 001CC608 2C 05 00 00 */ cmpwi r5, 0 /* 801CF6AC 001CC60C 38 7F 00 F8 */ addi r3, r31, 0xf8 /* 801CF6B0 001CC610 38 80 00 04 */ li r4, 4 /* 801CF6B4 001CC614 41 82 00 08 */ beq lbl_801CF6BC /* 801CF6B8 001CC618 54 A4 08 3C */ slwi r4, r5, 1 lbl_801CF6BC: /* 801CF6BC 001CC61C 48 00 3E D1 */ bl "reserve__Q24rstl56vectorFi" lbl_801CF6C0: /* 801CF6C0 001CC620 80 1F 00 FC */ lwz r0, 0xfc(r31) /* 801CF6C4 001CC624 80 7F 01 04 */ lwz r3, 0x104(r31) /* 801CF6C8 001CC628 54 00 10 3A */ slwi r0, r0, 2 /* 801CF6CC 001CC62C 7C 63 02 15 */ add. r3, r3, r0 /* 801CF6D0 001CC630 41 82 00 08 */ beq lbl_801CF6D8 /* 801CF6D4 001CC634 93 C3 00 00 */ stw r30, 0(r3) lbl_801CF6D8: /* 801CF6D8 001CC638 80 7F 00 FC */ lwz r3, 0xfc(r31) /* 801CF6DC 001CC63C 3B BD 00 01 */ addi r29, r29, 1 /* 801CF6E0 001CC640 38 03 00 01 */ addi r0, r3, 1 /* 801CF6E4 001CC644 90 1F 00 FC */ stw r0, 0xfc(r31) lbl_801CF6E8: /* 801CF6E8 001CC648 80 BF 01 00 */ lwz r5, 0x100(r31) /* 801CF6EC 001CC64C 7C 1D 28 00 */ cmpw r29, r5 /* 801CF6F0 001CC650 41 80 FF AC */ blt lbl_801CF69C /* 801CF6F4 001CC654 7F E4 FB 78 */ mr r4, r31 /* 801CF6F8 001CC658 38 61 00 18 */ addi r3, r1, 0x18 /* 801CF6FC 001CC65C 48 00 26 E5 */ bl GetBoundingBox__10CFishCloudCFv /* 801CF700 001CC660 C1 01 00 18 */ lfs f8, 0x18(r1) /* 801CF704 001CC664 C0 E1 00 1C */ lfs f7, 0x1c(r1) /* 801CF708 001CC668 C0 A1 00 20 */ lfs f5, 0x20(r1) /* 801CF70C 001CC66C FC C0 40 18 */ frsp f6, f8 /* 801CF710 001CC670 C0 61 00 24 */ lfs f3, 0x24(r1) /* 801CF714 001CC674 FC 80 38 18 */ frsp f4, f7 /* 801CF718 001CC678 C0 41 00 28 */ lfs f2, 0x28(r1) /* 801CF71C 001CC67C FC 20 28 18 */ frsp f1, f5 /* 801CF720 001CC680 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 801CF724 001CC684 D1 01 00 30 */ stfs f8, 0x30(r1) /* 801CF728 001CC688 80 BF 00 F4 */ lwz r5, 0xf4(r31) /* 801CF72C 001CC68C D0 E1 00 34 */ stfs f7, 0x34(r1) /* 801CF730 001CC690 D0 A1 00 38 */ stfs f5, 0x38(r1) /* 801CF734 001CC694 D0 61 00 3C */ stfs f3, 0x3c(r1) /* 801CF738 001CC698 D0 41 00 40 */ stfs f2, 0x40(r1) /* 801CF73C 001CC69C D0 01 00 44 */ stfs f0, 0x44(r1) /* 801CF740 001CC6A0 48 00 00 90 */ b lbl_801CF7D0 lbl_801CF744: /* 801CF744 001CC6A4 C0 45 00 04 */ lfs f2, 4(r5) /* 801CF748 001CC6A8 C0 05 00 08 */ lfs f0, 8(r5) /* 801CF74C 001CC6AC EC 62 20 28 */ fsubs f3, f2, f4 /* 801CF750 001CC6B0 C0 BF 02 48 */ lfs f5, 0x248(r31) /* 801CF754 001CC6B4 EC 00 08 28 */ fsubs f0, f0, f1 /* 801CF758 001CC6B8 C0 5F 02 4C */ lfs f2, 0x24c(r31) /* 801CF75C 001CC6BC C0 E5 00 00 */ lfs f7, 0(r5) /* 801CF760 001CC6C0 EC 65 00 F2 */ fmuls f3, f5, f3 /* 801CF764 001CC6C4 EC 02 00 32 */ fmuls f0, f2, f0 /* 801CF768 001CC6C8 C1 1F 02 44 */ lfs f8, 0x244(r31) /* 801CF76C 001CC6CC EC A7 30 28 */ fsubs f5, f7, f6 /* 801CF770 001CC6D0 FC 40 18 1E */ fctiwz f2, f3 /* 801CF774 001CC6D4 FC 00 00 1E */ fctiwz f0, f0 /* 801CF778 001CC6D8 EC 68 01 72 */ fmuls f3, f8, f5 /* 801CF77C 001CC6DC D8 41 00 50 */ stfd f2, 0x50(r1) /* 801CF780 001CC6E0 D8 01 00 58 */ stfd f0, 0x58(r1) /* 801CF784 001CC6E4 FC 00 18 1E */ fctiwz f0, f3 /* 801CF788 001CC6E8 80 61 00 54 */ lwz r3, 0x54(r1) /* 801CF78C 001CC6EC 80 01 00 5C */ lwz r0, 0x5c(r1) /* 801CF790 001CC6F0 D8 01 00 48 */ stfd f0, 0x48(r1) /* 801CF794 001CC6F4 1C 63 00 07 */ mulli r3, r3, 7 /* 801CF798 001CC6F8 80 81 00 4C */ lwz r4, 0x4c(r1) /* 801CF79C 001CC6FC 1C 00 00 31 */ mulli r0, r0, 0x31 /* 801CF7A0 001CC700 7C 03 02 14 */ add r0, r3, r0 /* 801CF7A4 001CC704 7C 04 02 15 */ add. r0, r4, r0 /* 801CF7A8 001CC708 41 80 00 24 */ blt lbl_801CF7CC /* 801CF7AC 001CC70C 2C 00 01 57 */ cmpwi r0, 0x157 /* 801CF7B0 001CC710 40 80 00 1C */ bge lbl_801CF7CC /* 801CF7B4 001CC714 80 7F 01 04 */ lwz r3, 0x104(r31) /* 801CF7B8 001CC718 54 04 10 3A */ slwi r4, r0, 2 /* 801CF7BC 001CC71C 7C 03 20 2E */ lwzx r0, r3, r4 /* 801CF7C0 001CC720 90 05 00 1C */ stw r0, 0x1c(r5) /* 801CF7C4 001CC724 80 7F 01 04 */ lwz r3, 0x104(r31) /* 801CF7C8 001CC728 7C A3 21 2E */ stwx r5, r3, r4 lbl_801CF7CC: /* 801CF7CC 001CC72C 38 A5 00 24 */ addi r5, r5, 0x24 lbl_801CF7D0: /* 801CF7D0 001CC730 80 1F 00 EC */ lwz r0, 0xec(r31) /* 801CF7D4 001CC734 80 7F 00 F4 */ lwz r3, 0xf4(r31) /* 801CF7D8 001CC738 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CF7DC 001CC73C 7C 03 02 14 */ add r0, r3, r0 /* 801CF7E0 001CC740 7C 05 00 40 */ cmplw r5, r0 /* 801CF7E4 001CC744 40 82 FF 60 */ bne lbl_801CF744 /* 801CF7E8 001CC748 80 01 00 74 */ lwz r0, 0x74(r1) /* 801CF7EC 001CC74C 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 801CF7F0 001CC750 83 C1 00 68 */ lwz r30, 0x68(r1) /* 801CF7F4 001CC754 83 A1 00 64 */ lwz r29, 0x64(r1) /* 801CF7F8 001CC758 7C 08 03 A6 */ mtlr r0 /* 801CF7FC 001CC75C 38 21 00 70 */ addi r1, r1, 0x70 /* 801CF800 001CC760 4E 80 00 20 */ blr .global CreatePartitionList__10CFishCloudFv CreatePartitionList__10CFishCloudFv: /* 801CF804 001CC764 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801CF808 001CC768 7C 08 02 A6 */ mflr r0 /* 801CF80C 001CC76C 90 01 00 34 */ stw r0, 0x34(r1) /* 801CF810 001CC770 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801CF814 001CC774 7C 7F 1B 78 */ mr r31, r3 /* 801CF818 001CC778 38 61 00 08 */ addi r3, r1, 8 /* 801CF81C 001CC77C 7F E4 FB 78 */ mr r4, r31 /* 801CF820 001CC780 48 00 25 C1 */ bl GetBoundingBox__10CFishCloudCFv /* 801CF824 001CC784 38 7F 00 F8 */ addi r3, r31, 0xf8 /* 801CF828 001CC788 38 80 01 57 */ li r4, 0x157 /* 801CF82C 001CC78C 48 00 3D 61 */ bl "reserve__Q24rstl56vectorFi" /* 801CF830 001CC790 80 01 00 34 */ lwz r0, 0x34(r1) /* 801CF834 001CC794 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801CF838 001CC798 7C 08 03 A6 */ mtlr r0 /* 801CF83C 001CC79C 38 21 00 30 */ addi r1, r1, 0x30 /* 801CF840 001CC7A0 4E 80 00 20 */ blr .global Touch__10CFishCloudFR6CActorR13CStateManager Touch__10CFishCloudFR6CActorR13CStateManager: /* 801CF844 001CC7A4 94 21 FE D0 */ stwu r1, -0x130(r1) /* 801CF848 001CC7A8 7C 08 02 A6 */ mflr r0 /* 801CF84C 001CC7AC 90 01 01 34 */ stw r0, 0x134(r1) /* 801CF850 001CC7B0 DB E1 01 20 */ stfd f31, 0x120(r1) /* 801CF854 001CC7B4 F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 /* 801CF858 001CC7B8 DB C1 01 10 */ stfd f30, 0x110(r1) /* 801CF85C 001CC7BC F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 /* 801CF860 001CC7C0 DB A1 01 00 */ stfd f29, 0x100(r1) /* 801CF864 001CC7C4 F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 /* 801CF868 001CC7C8 DB 81 00 F0 */ stfd f28, 0xf0(r1) /* 801CF86C 001CC7CC F3 81 00 F8 */ psq_st f28, 248(r1), 0, qr0 /* 801CF870 001CC7D0 DB 61 00 E0 */ stfd f27, 0xe0(r1) /* 801CF874 001CC7D4 F3 61 00 E8 */ psq_st f27, 232(r1), 0, qr0 /* 801CF878 001CC7D8 DB 41 00 D0 */ stfd f26, 0xd0(r1) /* 801CF87C 001CC7DC F3 41 00 D8 */ psq_st f26, 216(r1), 0, qr0 /* 801CF880 001CC7E0 BF 41 00 B8 */ stmw r26, 0xb8(r1) /* 801CF884 001CC7E4 7C 7C 1B 78 */ mr r28, r3 /* 801CF888 001CC7E8 7C 9D 23 78 */ mr r29, r4 /* 801CF88C 001CC7EC 7C BE 2B 78 */ mr r30, r5 /* 801CF890 001CC7F0 4B E8 4B 79 */ bl Touch__6CActorFR6CActorR13CStateManager /* 801CF894 001CC7F4 7F A4 EB 78 */ mr r4, r29 /* 801CF898 001CC7F8 38 61 00 10 */ addi r3, r1, 0x10 /* 801CF89C 001CC7FC 4B ED 60 69 */ bl "__ct__20TCastToPtr<7CWeapon>FR7CEntity" /* 801CF8A0 001CC800 83 E3 00 04 */ lwz r31, 4(r3) /* 801CF8A4 001CC804 28 1F 00 00 */ cmplwi r31, 0 /* 801CF8A8 001CC808 41 82 01 F8 */ beq lbl_801CFAA0 /* 801CF8AC 001CC80C 88 7C 02 50 */ lbz r3, 0x250(r28) /* 801CF8B0 001CC810 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f /* 801CF8B4 001CC814 40 82 00 84 */ bne lbl_801CF938 /* 801CF8B8 001CC818 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f /* 801CF8BC 001CC81C 41 82 00 7C */ beq lbl_801CF938 /* 801CF8C0 001CC820 83 7C 00 F4 */ lwz r27, 0xf4(r28) /* 801CF8C4 001CC824 3B 40 00 00 */ li r26, 0 /* 801CF8C8 001CC828 48 00 00 58 */ b lbl_801CF920 lbl_801CF8CC: /* 801CF8CC 001CC82C 80 1C 01 18 */ lwz r0, 0x118(r28) /* 801CF8D0 001CC830 57 43 07 BE */ clrlwi r3, r26, 0x1e /* 801CF8D4 001CC834 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 801CF8D8 001CC838 7C 03 00 00 */ cmpw r3, r0 /* 801CF8DC 001CC83C 40 82 00 3C */ bne lbl_801CF918 /* 801CF8E0 001CC840 C0 7F 00 60 */ lfs f3, 0x60(r31) /* 801CF8E4 001CC844 7F 83 E3 78 */ mr r3, r28 /* 801CF8E8 001CC848 C0 5F 00 50 */ lfs f2, 0x50(r31) /* 801CF8EC 001CC84C 7F 64 DB 78 */ mr r4, r27 /* 801CF8F0 001CC850 C0 1F 00 40 */ lfs f0, 0x40(r31) /* 801CF8F4 001CC854 38 A1 00 30 */ addi r5, r1, 0x30 /* 801CF8F8 001CC858 C0 22 AB D4 */ lfs f1, lbl_805AC8F4@sda21(r2) /* 801CF8FC 001CC85C D0 01 00 30 */ stfs f0, 0x30(r1) /* 801CF900 001CC860 D0 41 00 34 */ stfs f2, 0x34(r1) /* 801CF904 001CC864 D0 61 00 38 */ stfs f3, 0x38(r1) /* 801CF908 001CC868 C0 5C 01 48 */ lfs f2, 0x148(r28) /* 801CF90C 001CC86C C0 1C 01 68 */ lfs f0, 0x168(r28) /* 801CF910 001CC870 EC 42 00 28 */ fsubs f2, f2, f0 /* 801CF914 001CC874 4B FF EE 6D */ bl ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff lbl_801CF918: /* 801CF918 001CC878 3B 7B 00 24 */ addi r27, r27, 0x24 /* 801CF91C 001CC87C 3B 5A 00 01 */ addi r26, r26, 1 lbl_801CF920: /* 801CF920 001CC880 80 1C 00 EC */ lwz r0, 0xec(r28) /* 801CF924 001CC884 80 7C 00 F4 */ lwz r3, 0xf4(r28) /* 801CF928 001CC888 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CF92C 001CC88C 7C 03 02 14 */ add r0, r3, r0 /* 801CF930 001CC890 7C 1B 00 40 */ cmplw r27, r0 /* 801CF934 001CC894 40 82 FF 98 */ bne lbl_801CF8CC lbl_801CF938: /* 801CF938 001CC898 88 1C 02 50 */ lbz r0, 0x250(r28) /* 801CF93C 001CC89C 38 60 00 01 */ li r3, 1 /* 801CF940 001CC8A0 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 801CF944 001CC8A4 98 1C 02 50 */ stb r0, 0x250(r28) /* 801CF948 001CC8A8 88 1C 02 50 */ lbz r0, 0x250(r28) /* 801CF94C 001CC8AC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f /* 801CF950 001CC8B0 41 82 01 50 */ beq lbl_801CFAA0 /* 801CF954 001CC8B4 7F E4 FB 78 */ mr r4, r31 /* 801CF958 001CC8B8 38 61 00 48 */ addi r3, r1, 0x48 /* 801CF95C 001CC8BC 81 9F 00 00 */ lwz r12, 0(r31) /* 801CF960 001CC8C0 81 8C 00 40 */ lwz r12, 0x40(r12) /* 801CF964 001CC8C4 7D 89 03 A6 */ mtctr r12 /* 801CF968 001CC8C8 4E 80 04 21 */ bctrl /* 801CF96C 001CC8CC 88 01 00 60 */ lbz r0, 0x60(r1) /* 801CF970 001CC8D0 28 00 00 00 */ cmplwi r0, 0 /* 801CF974 001CC8D4 98 01 00 AC */ stb r0, 0xac(r1) /* 801CF978 001CC8D8 41 82 00 3C */ beq lbl_801CF9B4 /* 801CF97C 001CC8DC 34 61 00 94 */ addic. r3, r1, 0x94 /* 801CF980 001CC8E0 41 82 00 34 */ beq lbl_801CF9B4 /* 801CF984 001CC8E4 C0 01 00 48 */ lfs f0, 0x48(r1) /* 801CF988 001CC8E8 D0 03 00 00 */ stfs f0, 0(r3) /* 801CF98C 001CC8EC C0 01 00 4C */ lfs f0, 0x4c(r1) /* 801CF990 001CC8F0 D0 03 00 04 */ stfs f0, 4(r3) /* 801CF994 001CC8F4 C0 01 00 50 */ lfs f0, 0x50(r1) /* 801CF998 001CC8F8 D0 03 00 08 */ stfs f0, 8(r3) /* 801CF99C 001CC8FC C0 01 00 54 */ lfs f0, 0x54(r1) /* 801CF9A0 001CC900 D0 03 00 0C */ stfs f0, 0xc(r3) /* 801CF9A4 001CC904 C0 01 00 58 */ lfs f0, 0x58(r1) /* 801CF9A8 001CC908 D0 03 00 10 */ stfs f0, 0x10(r3) /* 801CF9AC 001CC90C C0 01 00 5C */ lfs f0, 0x5c(r1) /* 801CF9B0 001CC910 D0 03 00 14 */ stfs f0, 0x14(r3) lbl_801CF9B4: /* 801CF9B4 001CC914 88 01 00 AC */ lbz r0, 0xac(r1) /* 801CF9B8 001CC918 38 60 00 00 */ li r3, 0 /* 801CF9BC 001CC91C 98 61 00 60 */ stb r3, 0x60(r1) /* 801CF9C0 001CC920 28 00 00 00 */ cmplwi r0, 0 /* 801CF9C4 001CC924 41 82 00 D4 */ beq lbl_801CFA98 /* 801CF9C8 001CC928 C0 A1 00 94 */ lfs f5, 0x94(r1) /* 801CF9CC 001CC92C C0 81 00 98 */ lfs f4, 0x98(r1) /* 801CF9D0 001CC930 C0 61 00 9C */ lfs f3, 0x9c(r1) /* 801CF9D4 001CC934 C0 41 00 A0 */ lfs f2, 0xa0(r1) /* 801CF9D8 001CC938 C0 21 00 A4 */ lfs f1, 0xa4(r1) /* 801CF9DC 001CC93C C0 01 00 A8 */ lfs f0, 0xa8(r1) /* 801CF9E0 001CC940 D0 A1 00 7C */ stfs f5, 0x7c(r1) /* 801CF9E4 001CC944 D0 81 00 80 */ stfs f4, 0x80(r1) /* 801CF9E8 001CC948 D0 61 00 84 */ stfs f3, 0x84(r1) /* 801CF9EC 001CC94C D0 41 00 88 */ stfs f2, 0x88(r1) /* 801CF9F0 001CC950 D0 21 00 8C */ stfs f1, 0x8c(r1) /* 801CF9F4 001CC954 D0 01 00 90 */ stfs f0, 0x90(r1) /* 801CF9F8 001CC958 C3 5C 01 70 */ lfs f26, 0x170(r28) /* 801CF9FC 001CC95C 83 7C 00 F4 */ lwz r27, 0xf4(r28) /* 801CFA00 001CC960 48 00 00 80 */ b lbl_801CFA80 lbl_801CFA04: /* 801CFA04 001CC964 88 1B 00 20 */ lbz r0, 0x20(r27) /* 801CFA08 001CC968 28 00 00 00 */ cmplwi r0, 0 /* 801CFA0C 001CC96C 41 82 00 70 */ beq lbl_801CFA7C /* 801CFA10 001CC970 C0 7B 00 04 */ lfs f3, 4(r27) /* 801CFA14 001CC974 38 61 00 64 */ addi r3, r1, 0x64 /* 801CFA18 001CC978 C0 5B 00 08 */ lfs f2, 8(r27) /* 801CFA1C 001CC97C 38 81 00 24 */ addi r4, r1, 0x24 /* 801CFA20 001CC980 C0 1B 00 00 */ lfs f0, 0(r27) /* 801CFA24 001CC984 EC A3 D0 2A */ fadds f5, f3, f26 /* 801CFA28 001CC988 EC 82 D0 2A */ fadds f4, f2, f26 /* 801CFA2C 001CC98C 38 A1 00 18 */ addi r5, r1, 0x18 /* 801CFA30 001CC990 EC 20 D0 2A */ fadds f1, f0, f26 /* 801CFA34 001CC994 EC 63 D0 28 */ fsubs f3, f3, f26 /* 801CFA38 001CC998 D0 A1 00 1C */ stfs f5, 0x1c(r1) /* 801CFA3C 001CC99C EC 42 D0 28 */ fsubs f2, f2, f26 /* 801CFA40 001CC9A0 EC 00 D0 28 */ fsubs f0, f0, f26 /* 801CFA44 001CC9A4 D0 21 00 18 */ stfs f1, 0x18(r1) /* 801CFA48 001CC9A8 D0 81 00 20 */ stfs f4, 0x20(r1) /* 801CFA4C 001CC9AC D0 01 00 24 */ stfs f0, 0x24(r1) /* 801CFA50 001CC9B0 D0 61 00 28 */ stfs f3, 0x28(r1) /* 801CFA54 001CC9B4 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 801CFA58 001CC9B8 48 16 8A B1 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 801CFA5C 001CC9BC 38 61 00 7C */ addi r3, r1, 0x7c /* 801CFA60 001CC9C0 38 81 00 64 */ addi r4, r1, 0x64 /* 801CFA64 001CC9C4 48 16 81 21 */ bl DoBoundsOverlap__6CAABoxCFRC6CAABox /* 801CFA68 001CC9C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801CFA6C 001CC9CC 41 82 00 10 */ beq lbl_801CFA7C /* 801CFA70 001CC9D0 7F 83 E3 78 */ mr r3, r28 /* 801CFA74 001CC9D4 7F 64 DB 78 */ mr r4, r27 /* 801CFA78 001CC9D8 48 00 01 5D */ bl sub_801cfbd4 lbl_801CFA7C: /* 801CFA7C 001CC9DC 3B 7B 00 24 */ addi r27, r27, 0x24 lbl_801CFA80: /* 801CFA80 001CC9E0 80 1C 00 EC */ lwz r0, 0xec(r28) /* 801CFA84 001CC9E4 80 7C 00 F4 */ lwz r3, 0xf4(r28) /* 801CFA88 001CC9E8 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CFA8C 001CC9EC 7C 03 02 14 */ add r0, r3, r0 /* 801CFA90 001CC9F0 7C 1B 00 40 */ cmplw r27, r0 /* 801CFA94 001CC9F4 40 82 FF 70 */ bne lbl_801CFA04 lbl_801CFA98: /* 801CFA98 001CC9F8 38 00 00 00 */ li r0, 0 /* 801CFA9C 001CC9FC 98 01 00 AC */ stb r0, 0xac(r1) lbl_801CFAA0: /* 801CFAA0 001CCA00 88 1C 02 50 */ lbz r0, 0x250(r28) /* 801CFAA4 001CCA04 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 801CFAA8 001CCA08 41 82 00 E8 */ beq lbl_801CFB90 /* 801CFAAC 001CCA0C 7F A4 EB 78 */ mr r4, r29 /* 801CFAB0 001CCA10 38 61 00 08 */ addi r3, r1, 8 /* 801CFAB4 001CCA14 4B ED C9 4D */ bl "__ct__20TCastToPtr<7CPlayer>FR7CEntity" /* 801CFAB8 001CCA18 80 63 00 04 */ lwz r3, 4(r3) /* 801CFABC 001CCA1C 28 03 00 00 */ cmplwi r3, 0 /* 801CFAC0 001CCA20 41 82 00 C0 */ beq lbl_801CFB80 /* 801CFAC4 001CCA24 83 BE 09 00 */ lwz r29, 0x900(r30) /* 801CFAC8 001CCA28 C3 83 00 40 */ lfs f28, 0x40(r3) /* 801CFACC 001CCA2C C3 63 00 50 */ lfs f27, 0x50(r3) /* 801CFAD0 001CCA30 C3 43 00 60 */ lfs f26, 0x60(r3) /* 801CFAD4 001CCA34 83 7C 00 F4 */ lwz r27, 0xf4(r28) /* 801CFAD8 001CCA38 C3 A2 AB B8 */ lfs f29, lbl_805AC8D8@sda21(r2) /* 801CFADC 001CCA3C C3 C2 AB E0 */ lfs f30, lbl_805AC900@sda21(r2) /* 801CFAE0 001CCA40 C3 E2 AB E4 */ lfs f31, lbl_805AC904@sda21(r2) /* 801CFAE4 001CCA44 48 00 00 84 */ b lbl_801CFB68 lbl_801CFAE8: /* 801CFAE8 001CCA48 D3 81 00 3C */ stfs f28, 0x3c(r1) /* 801CFAEC 001CCA4C D3 61 00 40 */ stfs f27, 0x40(r1) /* 801CFAF0 001CCA50 D3 41 00 44 */ stfs f26, 0x44(r1) /* 801CFAF4 001CCA54 C0 5B 00 08 */ lfs f2, 8(r27) /* 801CFAF8 001CCA58 EC 22 D0 28 */ fsubs f1, f2, f26 /* 801CFAFC 001CCA5C FC 01 E8 40 */ fcmpo cr0, f1, f29 /* 801CFB00 001CCA60 40 81 00 14 */ ble lbl_801CFB14 /* 801CFB04 001CCA64 C8 02 AB D8 */ lfd f0, lbl_805AC8F8@sda21(r2) /* 801CFB08 001CCA68 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801CFB0C 001CCA6C 40 80 00 08 */ bge lbl_801CFB14 /* 801CFB10 001CCA70 D0 41 00 44 */ stfs f2, 0x44(r1) lbl_801CFB14: /* 801CFB14 001CCA74 7F A3 EB 78 */ mr r3, r29 /* 801CFB18 001CCA78 48 14 29 C5 */ bl Float__9CRandom16Fv /* 801CFB1C 001CCA7C EC 3E F8 78 */ fmsubs f1, f30, f1, f31 /* 801CFB20 001CCA80 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 801CFB24 001CCA84 7F A3 EB 78 */ mr r3, r29 /* 801CFB28 001CCA88 EC 00 08 2A */ fadds f0, f0, f1 /* 801CFB2C 001CCA8C D0 01 00 3C */ stfs f0, 0x3c(r1) /* 801CFB30 001CCA90 48 14 29 AD */ bl Float__9CRandom16Fv /* 801CFB34 001CCA94 EC 5E F8 78 */ fmsubs f2, f30, f1, f31 /* 801CFB38 001CCA98 C0 01 00 40 */ lfs f0, 0x40(r1) /* 801CFB3C 001CCA9C C0 22 AB D4 */ lfs f1, lbl_805AC8F4@sda21(r2) /* 801CFB40 001CCAA0 7F 83 E3 78 */ mr r3, r28 /* 801CFB44 001CCAA4 7F 64 DB 78 */ mr r4, r27 /* 801CFB48 001CCAA8 38 A1 00 3C */ addi r5, r1, 0x3c /* 801CFB4C 001CCAAC EC 00 10 2A */ fadds f0, f0, f2 /* 801CFB50 001CCAB0 D0 01 00 40 */ stfs f0, 0x40(r1) /* 801CFB54 001CCAB4 C0 5C 01 4C */ lfs f2, 0x14c(r28) /* 801CFB58 001CCAB8 C0 1C 01 64 */ lfs f0, 0x164(r28) /* 801CFB5C 001CCABC EC 42 00 28 */ fsubs f2, f2, f0 /* 801CFB60 001CCAC0 4B FF EC 21 */ bl ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff /* 801CFB64 001CCAC4 3B 7B 00 24 */ addi r27, r27, 0x24 lbl_801CFB68: /* 801CFB68 001CCAC8 80 1C 00 EC */ lwz r0, 0xec(r28) /* 801CFB6C 001CCACC 80 7C 00 F4 */ lwz r3, 0xf4(r28) /* 801CFB70 001CCAD0 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CFB74 001CCAD4 7C 03 02 14 */ add r0, r3, r0 /* 801CFB78 001CCAD8 7C 1B 00 40 */ cmplw r27, r0 /* 801CFB7C 001CCADC 40 82 FF 6C */ bne lbl_801CFAE8 lbl_801CFB80: /* 801CFB80 001CCAE0 88 1C 02 50 */ lbz r0, 0x250(r28) /* 801CFB84 001CCAE4 38 60 00 01 */ li r3, 1 /* 801CFB88 001CCAE8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 801CFB8C 001CCAEC 98 1C 02 50 */ stb r0, 0x250(r28) lbl_801CFB90: /* 801CFB90 001CCAF0 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 /* 801CFB94 001CCAF4 CB E1 01 20 */ lfd f31, 0x120(r1) /* 801CFB98 001CCAF8 E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 /* 801CFB9C 001CCAFC CB C1 01 10 */ lfd f30, 0x110(r1) /* 801CFBA0 001CCB00 E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 /* 801CFBA4 001CCB04 CB A1 01 00 */ lfd f29, 0x100(r1) /* 801CFBA8 001CCB08 E3 81 00 F8 */ psq_l f28, 248(r1), 0, qr0 /* 801CFBAC 001CCB0C CB 81 00 F0 */ lfd f28, 0xf0(r1) /* 801CFBB0 001CCB10 E3 61 00 E8 */ psq_l f27, 232(r1), 0, qr0 /* 801CFBB4 001CCB14 CB 61 00 E0 */ lfd f27, 0xe0(r1) /* 801CFBB8 001CCB18 E3 41 00 D8 */ psq_l f26, 216(r1), 0, qr0 /* 801CFBBC 001CCB1C CB 41 00 D0 */ lfd f26, 0xd0(r1) /* 801CFBC0 001CCB20 BB 41 00 B8 */ lmw r26, 0xb8(r1) /* 801CFBC4 001CCB24 80 01 01 34 */ lwz r0, 0x134(r1) /* 801CFBC8 001CCB28 7C 08 03 A6 */ mtlr r0 /* 801CFBCC 001CCB2C 38 21 01 30 */ addi r1, r1, 0x130 /* 801CFBD0 001CCB30 4E 80 00 20 */ blr .global sub_801cfbd4 sub_801cfbd4: /* 801CFBD4 001CCB34 94 21 FF C0 */ stwu r1, -0x40(r1) /* 801CFBD8 001CCB38 7C 08 02 A6 */ mflr r0 /* 801CFBDC 001CCB3C 90 01 00 44 */ stw r0, 0x44(r1) /* 801CFBE0 001CCB40 38 00 00 00 */ li r0, 0 /* 801CFBE4 001CCB44 93 E1 00 3C */ stw r31, 0x3c(r1) /* 801CFBE8 001CCB48 7C 9F 23 78 */ mr r31, r4 /* 801CFBEC 001CCB4C 93 C1 00 38 */ stw r30, 0x38(r1) /* 801CFBF0 001CCB50 7C 7E 1B 78 */ mr r30, r3 /* 801CFBF4 001CCB54 98 04 00 20 */ stb r0, 0x20(r4) /* 801CFBF8 001CCB58 4B FF E9 E9 */ bl sub_801ce5e0 /* 801CFBFC 001CCB5C 81 1E 00 04 */ lwz r8, 4(r30) /* 801CFC00 001CCB60 39 60 00 00 */ li r11, 0 /* 801CFC04 001CCB64 C0 A2 AB B8 */ lfs f5, lbl_805AC8D8@sda21(r2) /* 801CFC08 001CCB68 39 80 00 01 */ li r12, 1 /* 801CFC0C 001CCB6C C0 82 AB E8 */ lfs f4, lbl_805AC908@sda21(r2) /* 801CFC10 001CCB70 39 40 00 7F */ li r10, 0x7f /* 801CFC14 001CCB74 C0 62 AB E4 */ lfs f3, lbl_805AC904@sda21(r2) /* 801CFC18 001CCB78 39 20 00 14 */ li r9, 0x14 /* 801CFC1C 001CCB7C 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) /* 801CFC20 001CCB80 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 801CFC24 001CCB84 D0 A1 00 0C */ stfs f5, 0xc(r1) /* 801CFC28 001CCB88 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 801CFC2C 001CCB8C C0 46 00 00 */ lfs f2, 0(r6) /* 801CFC30 001CCB90 38 61 00 08 */ addi r3, r1, 8 /* 801CFC34 001CCB94 D0 A1 00 10 */ stfs f5, 0x10(r1) /* 801CFC38 001CCB98 38 81 00 0C */ addi r4, r1, 0xc /* 801CFC3C 001CCB9C C0 26 00 04 */ lfs f1, 4(r6) /* 801CFC40 001CCBA0 38 A0 00 01 */ li r5, 1 /* 801CFC44 001CCBA4 D0 A1 00 14 */ stfs f5, 0x14(r1) /* 801CFC48 001CCBA8 38 E0 00 00 */ li r7, 0 /* 801CFC4C 001CCBAC C0 06 00 08 */ lfs f0, 8(r6) /* 801CFC50 001CCBB0 D0 A1 00 18 */ stfs f5, 0x18(r1) /* 801CFC54 001CCBB4 A8 C2 C5 FA */ lha r6, lbl_805AE31A@sda21(r2) /* 801CFC58 001CCBB8 D0 A1 00 1C */ stfs f5, 0x1c(r1) /* 801CFC5C 001CCBBC D0 A1 00 20 */ stfs f5, 0x20(r1) /* 801CFC60 001CCBC0 D0 81 00 24 */ stfs f4, 0x24(r1) /* 801CFC64 001CCBC4 D0 61 00 28 */ stfs f3, 0x28(r1) /* 801CFC68 001CCBC8 91 81 00 2C */ stw r12, 0x2c(r1) /* 801CFC6C 001CCBCC B1 61 00 30 */ sth r11, 0x30(r1) /* 801CFC70 001CCBD0 99 41 00 32 */ stb r10, 0x32(r1) /* 801CFC74 001CCBD4 99 21 00 33 */ stb r9, 0x33(r1) /* 801CFC78 001CCBD8 99 61 00 34 */ stb r11, 0x34(r1) /* 801CFC7C 001CCBDC 98 01 00 35 */ stb r0, 0x35(r1) /* 801CFC80 001CCBE0 C0 7F 00 00 */ lfs f3, 0(r31) /* 801CFC84 001CCBE4 D0 61 00 0C */ stfs f3, 0xc(r1) /* 801CFC88 001CCBE8 C0 7F 00 04 */ lfs f3, 4(r31) /* 801CFC8C 001CCBEC D0 61 00 10 */ stfs f3, 0x10(r1) /* 801CFC90 001CCBF0 C0 7F 00 08 */ lfs f3, 8(r31) /* 801CFC94 001CCBF4 D0 61 00 14 */ stfs f3, 0x14(r1) /* 801CFC98 001CCBF8 D0 41 00 18 */ stfs f2, 0x18(r1) /* 801CFC9C 001CCBFC D0 21 00 1C */ stfs f1, 0x1c(r1) /* 801CFCA0 001CCC00 D0 01 00 20 */ stfs f0, 0x20(r1) /* 801CFCA4 001CCC04 A0 1E 02 34 */ lhz r0, 0x234(r30) /* 801CFCA8 001CCC08 B0 01 00 30 */ sth r0, 0x30(r1) /* 801CFCAC 001CCC0C 48 11 A3 35 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi /* 801CFCB0 001CCC10 80 01 00 44 */ lwz r0, 0x44(r1) /* 801CFCB4 001CCC14 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 801CFCB8 001CCC18 83 C1 00 38 */ lwz r30, 0x38(r1) /* 801CFCBC 001CCC1C 7C 08 03 A6 */ mtlr r0 /* 801CFCC0 001CCC20 38 21 00 40 */ addi r1, r1, 0x40 /* 801CFCC4 001CCC24 4E 80 00 20 */ blr .global Render__10CFishCloudCFRC13CStateManager Render__10CFishCloudCFRC13CStateManager: /* 801CFCC8 001CCC28 94 21 FF 90 */ stwu r1, -0x70(r1) /* 801CFCCC 001CCC2C 7C 08 02 A6 */ mflr r0 /* 801CFCD0 001CCC30 90 01 00 74 */ stw r0, 0x74(r1) /* 801CFCD4 001CCC34 93 E1 00 6C */ stw r31, 0x6c(r1) /* 801CFCD8 001CCC38 93 C1 00 68 */ stw r30, 0x68(r1) /* 801CFCDC 001CCC3C 7C 9E 23 78 */ mr r30, r4 /* 801CFCE0 001CCC40 93 A1 00 64 */ stw r29, 0x64(r1) /* 801CFCE4 001CCC44 7C 7D 1B 78 */ mr r29, r3 /* 801CFCE8 001CCC48 93 81 00 60 */ stw r28, 0x60(r1) /* 801CFCEC 001CCC4C 88 03 00 30 */ lbz r0, 0x30(r3) /* 801CFCF0 001CCC50 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801CFCF4 001CCC54 41 82 02 3C */ beq lbl_801CFF30 /* 801CFCF8 001CCC58 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801CFCFC 001CCC5C 38 80 00 00 */ li r4, 0 /* 801CFD00 001CCC60 80 BE 0F 34 */ lwz r5, 0xf34(r30) /* 801CFD04 001CCC64 38 00 00 03 */ li r0, 3 /* 801CFD08 001CCC68 FC 40 08 90 */ fmr f2, f1 /* 801CFD0C 001CCC6C 98 81 00 10 */ stb r4, 0x10(r1) /* 801CFD10 001CCC70 7C A5 00 34 */ cntlzw r5, r5 /* 801CFD14 001CCC74 FC 60 08 90 */ fmr f3, f1 /* 801CFD18 001CCC78 FC 80 08 90 */ fmr f4, f1 /* 801CFD1C 001CCC7C 98 81 00 11 */ stb r4, 0x11(r1) /* 801CFD20 001CCC80 B0 01 00 12 */ sth r0, 0x12(r1) /* 801CFD24 001CCC84 38 61 00 14 */ addi r3, r1, 0x14 /* 801CFD28 001CCC88 54 BF D9 7E */ srwi r31, r5, 5 /* 801CFD2C 001CCC8C 48 19 36 C1 */ bl __ct__6CColorFffff /* 801CFD30 001CCC90 88 61 00 10 */ lbz r3, 0x10(r1) /* 801CFD34 001CCC94 7F C4 F3 78 */ mr r4, r30 /* 801CFD38 001CCC98 88 C1 00 11 */ lbz r6, 0x11(r1) /* 801CFD3C 001CCC9C A0 A1 00 12 */ lhz r5, 0x12(r1) /* 801CFD40 001CCCA0 80 01 00 14 */ lwz r0, 0x14(r1) /* 801CFD44 001CCCA4 98 61 00 18 */ stb r3, 0x18(r1) /* 801CFD48 001CCCA8 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 801CFD4C 001CCCAC 98 C1 00 19 */ stb r6, 0x19(r1) /* 801CFD50 001CCCB0 B0 A1 00 1A */ sth r5, 0x1a(r1) /* 801CFD54 001CCCB4 90 01 00 1C */ stw r0, 0x1c(r1) /* 801CFD58 001CCCB8 80 63 00 00 */ lwz r3, 0(r3) /* 801CFD5C 001CCCBC 4B EC 17 FD */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager /* 801CFD60 001CCCC0 2C 03 00 01 */ cmpwi r3, 1 /* 801CFD64 001CCCC4 40 82 00 38 */ bne lbl_801CFD9C /* 801CFD68 001CCCC8 80 1D 01 6C */ lwz r0, 0x16c(r29) /* 801CFD6C 001CCCCC 38 A0 00 05 */ li r5, 5 /* 801CFD70 001CCCD0 38 80 00 00 */ li r4, 0 /* 801CFD74 001CCCD4 38 60 00 03 */ li r3, 3 /* 801CFD78 001CCCD8 90 01 00 0C */ stw r0, 0xc(r1) /* 801CFD7C 001CCCDC 38 00 00 4C */ li r0, 0x4c /* 801CFD80 001CCCE0 98 01 00 0F */ stb r0, 0xf(r1) /* 801CFD84 001CCCE4 80 01 00 0C */ lwz r0, 0xc(r1) /* 801CFD88 001CCCE8 98 A1 00 18 */ stb r5, 0x18(r1) /* 801CFD8C 001CCCEC 98 81 00 19 */ stb r4, 0x19(r1) /* 801CFD90 001CCCF0 B0 61 00 1A */ sth r3, 0x1a(r1) /* 801CFD94 001CCCF4 90 01 00 1C */ stw r0, 0x1c(r1) /* 801CFD98 001CCCF8 48 00 00 24 */ b lbl_801CFDBC lbl_801CFD9C: /* 801CFD9C 001CCCFC 80 BD 01 6C */ lwz r5, 0x16c(r29) /* 801CFDA0 001CCD00 38 80 00 01 */ li r4, 1 /* 801CFDA4 001CCD04 38 60 00 00 */ li r3, 0 /* 801CFDA8 001CCD08 38 00 00 03 */ li r0, 3 /* 801CFDAC 001CCD0C 98 81 00 18 */ stb r4, 0x18(r1) /* 801CFDB0 001CCD10 98 61 00 19 */ stb r3, 0x19(r1) /* 801CFDB4 001CCD14 B0 01 00 1A */ sth r0, 0x1a(r1) /* 801CFDB8 001CCD18 90 A1 00 1C */ stw r5, 0x1c(r1) lbl_801CFDBC: /* 801CFDBC 001CCD1C 7F A3 EB 78 */ mr r3, r29 /* 801CFDC0 001CCD20 4B FF E7 35 */ bl sub_801ce4f4 /* 801CFDC4 001CCD24 88 1D 02 50 */ lbz r0, 0x250(r29) /* 801CFDC8 001CCD28 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 801CFDCC 001CCD2C 41 82 00 84 */ beq lbl_801CFE50 /* 801CFDD0 001CCD30 48 17 A1 DD */ bl White__6CColorFv /* 801CFDD4 001CCD34 7C 64 1B 78 */ mr r4, r3 /* 801CFDD8 001CCD38 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 801CFDDC 001CCD3C 81 83 00 00 */ lwz r12, 0(r3) /* 801CFDE0 001CCD40 81 8C 00 BC */ lwz r12, 0xbc(r12) /* 801CFDE4 001CCD44 7D 89 03 A6 */ mtctr r12 /* 801CFDE8 001CCD48 4E 80 04 21 */ bctrl /* 801CFDEC 001CCD4C 48 13 CB 91 */ bl DisableAllLights__9CGraphicsFv /* 801CFDF0 001CCD50 38 00 FF FF */ li r0, -1 /* 801CFDF4 001CCD54 83 DD 00 F4 */ lwz r30, 0xf4(r29) /* 801CFDF8 001CCD58 90 01 00 08 */ stw r0, 8(r1) /* 801CFDFC 001CCD5C 3B 80 00 00 */ li r28, 0 /* 801CFE00 001CCD60 48 00 00 34 */ b lbl_801CFE34 lbl_801CFE04: /* 801CFE04 001CCD64 88 1E 00 20 */ lbz r0, 0x20(r30) /* 801CFE08 001CCD68 28 00 00 00 */ cmplwi r0, 0 /* 801CFE0C 001CCD6C 41 82 00 20 */ beq lbl_801CFE2C /* 801CFE10 001CCD70 7F A3 EB 78 */ mr r3, r29 /* 801CFE14 001CCD74 7F 84 E3 78 */ mr r4, r28 /* 801CFE18 001CCD78 7F C5 F3 78 */ mr r5, r30 /* 801CFE1C 001CCD7C 7F E7 FB 78 */ mr r7, r31 /* 801CFE20 001CCD80 38 C1 00 08 */ addi r6, r1, 8 /* 801CFE24 001CCD84 39 01 00 18 */ addi r8, r1, 0x18 /* 801CFE28 001CCD88 48 00 01 29 */ bl sub_801cff50 lbl_801CFE2C: /* 801CFE2C 001CCD8C 3B DE 00 24 */ addi r30, r30, 0x24 /* 801CFE30 001CCD90 3B 9C 00 01 */ addi r28, r28, 1 lbl_801CFE34: /* 801CFE34 001CCD94 80 1D 00 EC */ lwz r0, 0xec(r29) /* 801CFE38 001CCD98 80 7D 00 F4 */ lwz r3, 0xf4(r29) /* 801CFE3C 001CCD9C 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CFE40 001CCDA0 7C 03 02 14 */ add r0, r3, r0 /* 801CFE44 001CCDA4 7C 1E 00 40 */ cmplw r30, r0 /* 801CFE48 001CCDA8 40 82 FF BC */ bne lbl_801CFE04 /* 801CFE4C 001CCDAC 48 00 00 E4 */ b lbl_801CFF30 lbl_801CFE50: /* 801CFE50 001CCDB0 83 FD 00 64 */ lwz r31, 0x64(r29) /* 801CFE54 001CCDB4 48 17 A1 59 */ bl White__6CColorFv /* 801CFE58 001CCDB8 7C 64 1B 78 */ mr r4, r3 /* 801CFE5C 001CCDBC 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 801CFE60 001CCDC0 81 83 00 00 */ lwz r12, 0(r3) /* 801CFE64 001CCDC4 81 8C 00 BC */ lwz r12, 0xbc(r12) /* 801CFE68 001CCDC8 7D 89 03 A6 */ mtctr r12 /* 801CFE6C 001CCDCC 4E 80 04 21 */ bctrl /* 801CFE70 001CCDD0 48 13 CB 0D */ bl DisableAllLights__9CGraphicsFv /* 801CFE74 001CCDD4 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 801CFE78 001CCDD8 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha /* 801CFE7C 001CCDDC 38 84 66 70 */ addi r4, r4, sIdentity__12CTransform4f@l /* 801CFE80 001CCDE0 81 83 00 00 */ lwz r12, 0(r3) /* 801CFE84 001CCDE4 81 8C 00 30 */ lwz r12, 0x30(r12) /* 801CFE88 001CCDE8 7D 89 03 A6 */ mtctr r12 /* 801CFE8C 001CCDEC 4E 80 04 21 */ bctrl /* 801CFE90 001CCDF0 83 9D 00 F4 */ lwz r28, 0xf4(r29) /* 801CFE94 001CCDF4 48 00 00 84 */ b lbl_801CFF18 lbl_801CFE98: /* 801CFE98 001CCDF8 88 1C 00 20 */ lbz r0, 0x20(r28) /* 801CFE9C 001CCDFC 28 00 00 00 */ cmplwi r0, 0 /* 801CFEA0 001CCE00 41 82 00 74 */ beq lbl_801CFF14 /* 801CFEA4 001CCE04 C0 1C 00 18 */ lfs f0, 0x18(r28) /* 801CFEA8 001CCE08 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 801CFEAC 001CCE0C 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 801CFEB0 001CCE10 7F 84 E3 78 */ mr r4, r28 /* 801CFEB4 001CCE14 D0 1F 00 00 */ stfs f0, 0(r31) /* 801CFEB8 001CCE18 38 61 00 2C */ addi r3, r1, 0x2c /* 801CFEBC 001CCE1C 38 A1 00 20 */ addi r5, r1, 0x20 /* 801CFEC0 001CCE20 D0 1F 00 04 */ stfs f0, 4(r31) /* 801CFEC4 001CCE24 D0 1F 00 08 */ stfs f0, 8(r31) /* 801CFEC8 001CCE28 C0 3C 00 04 */ lfs f1, 4(r28) /* 801CFECC 001CCE2C C0 1C 00 10 */ lfs f0, 0x10(r28) /* 801CFED0 001CCE30 C0 7C 00 08 */ lfs f3, 8(r28) /* 801CFED4 001CCE34 EC 81 00 2A */ fadds f4, f1, f0 /* 801CFED8 001CCE38 C0 5C 00 14 */ lfs f2, 0x14(r28) /* 801CFEDC 001CCE3C C0 3C 00 00 */ lfs f1, 0(r28) /* 801CFEE0 001CCE40 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 801CFEE4 001CCE44 EC 43 10 2A */ fadds f2, f3, f2 /* 801CFEE8 001CCE48 EC 01 00 2A */ fadds f0, f1, f0 /* 801CFEEC 001CCE4C D0 81 00 24 */ stfs f4, 0x24(r1) /* 801CFEF0 001CCE50 D0 41 00 28 */ stfs f2, 0x28(r1) /* 801CFEF4 001CCE54 D0 01 00 20 */ stfs f0, 0x20(r1) /* 801CFEF8 001CCE58 48 14 3C 19 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 801CFEFC 001CCE5C 7F E3 FB 78 */ mr r3, r31 /* 801CFF00 001CCE60 7F C4 F3 78 */ mr r4, r30 /* 801CFF04 001CCE64 38 A1 00 2C */ addi r5, r1, 0x2c /* 801CFF08 001CCE68 38 E1 00 18 */ addi r7, r1, 0x18 /* 801CFF0C 001CCE6C 38 C0 00 00 */ li r6, 0 /* 801CFF10 001CCE70 4B F4 4E AD */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_801CFF14: /* 801CFF14 001CCE74 3B 9C 00 24 */ addi r28, r28, 0x24 lbl_801CFF18: /* 801CFF18 001CCE78 80 1D 00 EC */ lwz r0, 0xec(r29) /* 801CFF1C 001CCE7C 80 7D 00 F4 */ lwz r3, 0xf4(r29) /* 801CFF20 001CCE80 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801CFF24 001CCE84 7C 03 02 14 */ add r0, r3, r0 /* 801CFF28 001CCE88 7C 1C 00 40 */ cmplw r28, r0 /* 801CFF2C 001CCE8C 40 82 FF 6C */ bne lbl_801CFE98 lbl_801CFF30: /* 801CFF30 001CCE90 80 01 00 74 */ lwz r0, 0x74(r1) /* 801CFF34 001CCE94 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 801CFF38 001CCE98 83 C1 00 68 */ lwz r30, 0x68(r1) /* 801CFF3C 001CCE9C 83 A1 00 64 */ lwz r29, 0x64(r1) /* 801CFF40 001CCEA0 83 81 00 60 */ lwz r28, 0x60(r1) /* 801CFF44 001CCEA4 7C 08 03 A6 */ mtlr r0 /* 801CFF48 001CCEA8 38 21 00 70 */ addi r1, r1, 0x70 /* 801CFF4C 001CCEAC 4E 80 00 20 */ blr .global sub_801cff50 sub_801cff50: /* 801CFF50 001CCEB0 94 21 FF 30 */ stwu r1, -0xd0(r1) /* 801CFF54 001CCEB4 7C 08 02 A6 */ mflr r0 /* 801CFF58 001CCEB8 90 01 00 D4 */ stw r0, 0xd4(r1) /* 801CFF5C 001CCEBC BE C1 00 A8 */ stmw r22, 0xa8(r1) /* 801CFF60 001CCEC0 7C 77 1B 78 */ mr r23, r3 /* 801CFF64 001CCEC4 54 9F 17 3A */ rlwinm r31, r4, 2, 0x1c, 0x1d /* 801CFF68 001CCEC8 54 9E 07 BE */ clrlwi r30, r4, 0x1e /* 801CFF6C 001CCECC 7C 77 FA 14 */ add r3, r23, r31 /* 801CFF70 001CCED0 7C D9 33 78 */ mr r25, r6 /* 801CFF74 001CCED4 7C B8 2B 78 */ mr r24, r5 /* 801CFF78 001CCED8 7C FA 3B 78 */ mr r26, r7 /* 801CFF7C 001CCEDC 7D 1B 43 78 */ mr r27, r8 /* 801CFF80 001CCEE0 38 80 00 00 */ li r4, 0 /* 801CFF84 001CCEE4 80 63 01 B4 */ lwz r3, 0x1b4(r3) /* 801CFF88 001CCEE8 83 A6 00 00 */ lwz r29, 0(r6) /* 801CFF8C 001CCEEC 80 63 00 00 */ lwz r3, 0(r3) /* 801CFF90 001CCEF0 82 C3 00 10 */ lwz r22, 0x10(r3) /* 801CFF94 001CCEF4 4B F4 4F C9 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel /* 801CFF98 001CCEF8 38 00 00 01 */ li r0, 1 /* 801CFF9C 001CCEFC 7C 7C 1B 78 */ mr r28, r3 /* 801CFFA0 001CCF00 7C 04 F0 30 */ slw r4, r0, r30 /* 801CFFA4 001CCF04 7F A0 20 39 */ and. r0, r29, r4 /* 801CFFA8 001CCF08 41 82 00 44 */ beq lbl_801CFFEC /* 801CFFAC 001CCF0C 7E C3 B3 78 */ mr r3, r22 /* 801CFFB0 001CCF10 7F BD 20 78 */ andc r29, r29, r4 /* 801CFFB4 001CCF14 4B E5 CA AD */ bl BuildPose__9CAnimDataFv /* 801CFFB8 001CCF18 57 C0 18 38 */ slwi r0, r30, 3 /* 801CFFBC 001CCF1C 38 80 00 00 */ li r4, 0 /* 801CFFC0 001CCF20 7C 77 02 14 */ add r3, r23, r0 /* 801CFFC4 001CCF24 98 81 00 A4 */ stb r4, 0xa4(r1) /* 801CFFC8 001CCF28 80 E3 01 80 */ lwz r7, 0x180(r3) /* 801CFFCC 001CCF2C 7F 83 E3 78 */ mr r3, r28 /* 801CFFD0 001CCF30 38 96 02 24 */ addi r4, r22, 0x224 /* 801CFFD4 001CCF34 38 A1 00 5C */ addi r5, r1, 0x5c /* 801CFFD8 001CCF38 38 C0 00 00 */ li r6, 0 /* 801CFFDC 001CCF3C 48 18 2D 1D */ bl "Calculate__13CSkinnedModelFRC17CPoseAsTransformsRCQ24rstl37optional_object<18CVertexMorphEffect>PCfPf" /* 801CFFE0 001CCF40 38 61 00 5C */ addi r3, r1, 0x5c /* 801CFFE4 001CCF44 38 80 FF FF */ li r4, -1 /* 801CFFE8 001CCF48 4B EA 7C A5 */ bl sub_80077c8c lbl_801CFFEC: /* 801CFFEC 001CCF4C C0 38 00 04 */ lfs f1, 4(r24) /* 801CFFF0 001CCF50 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 801CFFF4 001CCF54 C0 18 00 10 */ lfs f0, 0x10(r24) /* 801CFFF8 001CCF58 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 801CFFFC 001CCF5C C0 78 00 08 */ lfs f3, 8(r24) /* 801D0000 001CCF60 7F 04 C3 78 */ mr r4, r24 /* 801D0004 001CCF64 EC 81 00 2A */ fadds f4, f1, f0 /* 801D0008 001CCF68 C0 58 00 14 */ lfs f2, 0x14(r24) /* 801D000C 001CCF6C C0 38 00 00 */ lfs f1, 0(r24) /* 801D0010 001CCF70 38 61 00 2C */ addi r3, r1, 0x2c /* 801D0014 001CCF74 C0 18 00 0C */ lfs f0, 0xc(r24) /* 801D0018 001CCF78 EC 43 10 2A */ fadds f2, f3, f2 /* 801D001C 001CCF7C EC 01 00 2A */ fadds f0, f1, f0 /* 801D0020 001CCF80 D0 81 00 24 */ stfs f4, 0x24(r1) /* 801D0024 001CCF84 38 A1 00 20 */ addi r5, r1, 0x20 /* 801D0028 001CCF88 D0 41 00 28 */ stfs f2, 0x28(r1) /* 801D002C 001CCF8C D0 01 00 20 */ stfs f0, 0x20(r1) /* 801D0030 001CCF90 48 14 3A E1 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 801D0034 001CCF94 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) /* 801D0038 001CCF98 38 81 00 2C */ addi r4, r1, 0x2c /* 801D003C 001CCF9C 81 83 00 00 */ lwz r12, 0(r3) /* 801D0040 001CCFA0 81 8C 00 30 */ lwz r12, 0x30(r12) /* 801D0044 001CCFA4 7D 89 03 A6 */ mtctr r12 /* 801D0048 001CCFA8 4E 80 04 21 */ bctrl /* 801D004C 001CCFAC 57 C3 18 38 */ slwi r3, r30, 3 /* 801D0050 001CCFB0 57 40 06 3F */ clrlwi. r0, r26, 0x18 /* 801D0054 001CCFB4 7C 97 1A 14 */ add r4, r23, r3 /* 801D0058 001CCFB8 7C 77 FA 14 */ add r3, r23, r31 /* 801D005C 001CCFBC 83 C4 01 80 */ lwz r30, 0x180(r4) /* 801D0060 001CCFC0 83 E3 01 A0 */ lwz r31, 0x1a0(r3) /* 801D0064 001CCFC4 41 82 00 98 */ beq lbl_801D00FC /* 801D0068 001CCFC8 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801D006C 001CCFCC 38 80 00 00 */ li r4, 0 /* 801D0070 001CCFD0 38 00 00 03 */ li r0, 3 /* 801D0074 001CCFD4 98 81 00 10 */ stb r4, 0x10(r1) /* 801D0078 001CCFD8 FC 40 08 90 */ fmr f2, f1 /* 801D007C 001CCFDC 38 61 00 14 */ addi r3, r1, 0x14 /* 801D0080 001CCFE0 FC 60 08 90 */ fmr f3, f1 /* 801D0084 001CCFE4 98 81 00 11 */ stb r4, 0x11(r1) /* 801D0088 001CCFE8 FC 80 08 90 */ fmr f4, f1 /* 801D008C 001CCFEC B0 01 00 12 */ sth r0, 0x12(r1) /* 801D0090 001CCFF0 48 19 33 5D */ bl __ct__6CColorFffff /* 801D0094 001CCFF4 A0 01 00 12 */ lhz r0, 0x12(r1) /* 801D0098 001CCFF8 39 40 00 00 */ li r10, 0 /* 801D009C 001CCFFC 88 61 00 10 */ lbz r3, 0x10(r1) /* 801D00A0 001CD000 39 20 00 40 */ li r9, 0x40 /* 801D00A4 001CD004 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 801D00A8 001CD008 88 A1 00 11 */ lbz r5, 0x11(r1) /* 801D00AC 001CD00C 60 07 00 01 */ ori r7, r0, 1 /* 801D00B0 001CD010 81 61 00 14 */ lwz r11, 0x14(r1) /* 801D00B4 001CD014 38 00 FF FF */ li r0, -1 /* 801D00B8 001CD018 98 61 00 18 */ stb r3, 0x18(r1) /* 801D00BC 001CD01C 7F 83 E3 78 */ mr r3, r28 /* 801D00C0 001CD020 7F C4 F3 78 */ mr r4, r30 /* 801D00C4 001CD024 98 A1 00 19 */ stb r5, 0x19(r1) /* 801D00C8 001CD028 7F E5 FB 78 */ mr r5, r31 /* 801D00CC 001CD02C 38 C1 00 0C */ addi r6, r1, 0xc /* 801D00D0 001CD030 39 01 00 18 */ addi r8, r1, 0x18 /* 801D00D4 001CD034 B0 E1 00 1A */ sth r7, 0x1a(r1) /* 801D00D8 001CD038 38 E1 00 08 */ addi r7, r1, 8 /* 801D00DC 001CD03C 91 61 00 1C */ stw r11, 0x1c(r1) /* 801D00E0 001CD040 99 41 00 08 */ stb r10, 8(r1) /* 801D00E4 001CD044 99 41 00 09 */ stb r10, 9(r1) /* 801D00E8 001CD048 99 41 00 0A */ stb r10, 0xa(r1) /* 801D00EC 001CD04C 99 21 00 0B */ stb r9, 0xb(r1) /* 801D00F0 001CD050 90 01 00 0C */ stw r0, 0xc(r1) /* 801D00F4 001CD054 4B F4 62 C1 */ bl RenderThermal__10CModelDataCFPCfPCfRC6CColorRC6CColorRC11CModelFlags /* 801D00F8 001CD058 48 00 00 18 */ b lbl_801D0110 lbl_801D00FC: /* 801D00FC 001CD05C 7F 83 E3 78 */ mr r3, r28 /* 801D0100 001CD060 7F C4 F3 78 */ mr r4, r30 /* 801D0104 001CD064 7F E5 FB 78 */ mr r5, r31 /* 801D0108 001CD068 7F 66 DB 78 */ mr r6, r27 /* 801D010C 001CD06C 48 18 2D DD */ bl sub_80352ee8 lbl_801D0110: /* 801D0110 001CD070 93 B9 00 00 */ stw r29, 0(r25) /* 801D0114 001CD074 BA C1 00 A8 */ lmw r22, 0xa8(r1) /* 801D0118 001CD078 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 801D011C 001CD07C 7C 08 03 A6 */ mtlr r0 /* 801D0120 001CD080 38 21 00 D0 */ addi r1, r1, 0xd0 /* 801D0124 001CD084 4E 80 00 20 */ blr .global PreRender__10CFishCloudFR13CStateManagerRC14CFrustumPlanes PreRender__10CFishCloudFR13CStateManagerRC14CFrustumPlanes: /* 801D0128 001CD088 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801D012C 001CD08C 7C 08 02 A6 */ mflr r0 /* 801D0130 001CD090 90 01 00 24 */ stw r0, 0x24(r1) /* 801D0134 001CD094 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801D0138 001CD098 93 C1 00 18 */ stw r30, 0x18(r1) /* 801D013C 001CD09C 93 A1 00 14 */ stw r29, 0x14(r1) /* 801D0140 001CD0A0 7C 7D 1B 78 */ mr r29, r3 /* 801D0144 001CD0A4 4B E8 4B 9D */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes /* 801D0148 001CD0A8 88 1D 02 50 */ lbz r0, 0x250(r29) /* 801D014C 001CD0AC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 801D0150 001CD0B0 41 82 00 2C */ beq lbl_801D017C /* 801D0154 001CD0B4 3B C0 00 00 */ li r30, 0 /* 801D0158 001CD0B8 3B FD 01 B4 */ addi r31, r29, 0x1b4 lbl_801D015C: /* 801D015C 001CD0BC 80 7F 00 00 */ lwz r3, 0(r31) /* 801D0160 001CD0C0 80 63 00 00 */ lwz r3, 0(r3) /* 801D0164 001CD0C4 80 63 00 10 */ lwz r3, 0x10(r3) /* 801D0168 001CD0C8 4B E5 C8 9D */ bl PreRender__9CAnimDataFv /* 801D016C 001CD0CC 3B DE 00 01 */ addi r30, r30, 1 /* 801D0170 001CD0D0 3B FF 00 04 */ addi r31, r31, 4 /* 801D0174 001CD0D4 2C 1E 00 04 */ cmpwi r30, 4 /* 801D0178 001CD0D8 41 80 FF E4 */ blt lbl_801D015C lbl_801D017C: /* 801D017C 001CD0DC 88 1D 00 E4 */ lbz r0, 0xe4(r29) /* 801D0180 001CD0E0 38 60 00 00 */ li r3, 0 /* 801D0184 001CD0E4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 801D0188 001CD0E8 98 1D 00 E4 */ stb r0, 0xe4(r29) /* 801D018C 001CD0EC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801D0190 001CD0F0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801D0194 001CD0F4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801D0198 001CD0F8 80 01 00 24 */ lwz r0, 0x24(r1) /* 801D019C 001CD0FC 7C 08 03 A6 */ mtlr r0 /* 801D01A0 001CD100 38 21 00 20 */ addi r1, r1, 0x20 .global sub_801d01a4 sub_801d01a4: /* 801D01A4 001CD104 4E 80 00 20 */ blr .global Think__10CFishCloudFfR13CStateManager Think__10CFishCloudFfR13CStateManager: /* 801D01A8 001CD108 94 21 FE B0 */ stwu r1, -0x150(r1) /* 801D01AC 001CD10C 7C 08 02 A6 */ mflr r0 /* 801D01B0 001CD110 90 01 01 54 */ stw r0, 0x154(r1) /* 801D01B4 001CD114 DB E1 01 40 */ stfd f31, 0x140(r1) /* 801D01B8 001CD118 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 /* 801D01BC 001CD11C DB C1 01 30 */ stfd f30, 0x130(r1) /* 801D01C0 001CD120 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 /* 801D01C4 001CD124 BF 41 01 18 */ stmw r26, 0x118(r1) /* 801D01C8 001CD128 88 03 00 30 */ lbz r0, 0x30(r3) /* 801D01CC 001CD12C FF E0 08 90 */ fmr f31, f1 /* 801D01D0 001CD130 7C 7B 1B 78 */ mr r27, r3 /* 801D01D4 001CD134 7C 9C 23 78 */ mr r28, r4 /* 801D01D8 001CD138 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801D01DC 001CD13C 41 82 07 2C */ beq lbl_801D0908 /* 801D01E0 001CD140 80 BB 00 04 */ lwz r5, 4(r27) /* 801D01E4 001CD144 80 9C 08 50 */ lwz r4, 0x850(r28) /* 801D01E8 001CD148 54 A3 18 38 */ slwi r3, r5, 3 /* 801D01EC 001CD14C 90 A1 00 2C */ stw r5, 0x2c(r1) /* 801D01F0 001CD150 80 84 00 20 */ lwz r4, 0x20(r4) /* 801D01F4 001CD154 38 03 00 04 */ addi r0, r3, 4 /* 801D01F8 001CD158 90 A1 00 30 */ stw r5, 0x30(r1) /* 801D01FC 001CD15C 7C 64 00 2E */ lwzx r3, r4, r0 /* 801D0200 001CD160 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 801D0204 001CD164 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801D0208 001CD168 41 82 00 10 */ beq lbl_801D0218 /* 801D020C 001CD16C 80 63 01 2C */ lwz r3, 0x12c(r3) /* 801D0210 001CD170 80 03 10 DC */ lwz r0, 0x10dc(r3) /* 801D0214 001CD174 48 00 00 08 */ b lbl_801D021C lbl_801D0218: /* 801D0218 001CD178 38 00 00 00 */ li r0, 0 lbl_801D021C: /* 801D021C 001CD17C 2C 00 00 01 */ cmpwi r0, 1 /* 801D0220 001CD180 40 82 06 E8 */ bne lbl_801D0908 /* 801D0224 001CD184 C0 1B 01 60 */ lfs f0, 0x160(r27) /* 801D0228 001CD188 C0 62 AB E4 */ lfs f3, lbl_805AC904@sda21(r2) /* 801D022C 001CD18C EC 40 07 F2 */ fmuls f2, f0, f31 /* 801D0230 001CD190 C0 3B 01 68 */ lfs f1, 0x168(r27) /* 801D0234 001CD194 C0 0D 91 90 */ lfs f0, lbl_805A7D50@sda21(r13) /* 801D0238 001CD198 EC 23 08 BC */ fnmsubs f1, f3, f2, f1 /* 801D023C 001CD19C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 801D0240 001CD1A0 D0 21 00 28 */ stfs f1, 0x28(r1) /* 801D0244 001CD1A4 40 80 00 0C */ bge lbl_801D0250 /* 801D0248 001CD1A8 38 61 00 28 */ addi r3, r1, 0x28 /* 801D024C 001CD1AC 48 00 00 08 */ b lbl_801D0254 lbl_801D0250: /* 801D0250 001CD1B0 38 6D 91 90 */ addi r3, r13, lbl_805A7D50@sda21 lbl_801D0254: /* 801D0254 001CD1B4 C0 03 00 00 */ lfs f0, 0(r3) /* 801D0258 001CD1B8 D0 1B 01 68 */ stfs f0, 0x168(r27) /* 801D025C 001CD1BC 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D0260 001CD1C0 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 801D0264 001CD1C4 41 82 00 34 */ beq lbl_801D0298 /* 801D0268 001CD1C8 C0 3B 01 60 */ lfs f1, 0x160(r27) /* 801D026C 001CD1CC C0 1B 01 68 */ lfs f0, 0x168(r27) /* 801D0270 001CD1D0 EC 21 07 FA */ fmadds f1, f1, f31, f0 /* 801D0274 001CD1D4 D0 21 00 24 */ stfs f1, 0x24(r1) /* 801D0278 001CD1D8 C0 1B 01 48 */ lfs f0, 0x148(r27) /* 801D027C 001CD1DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D0280 001CD1E0 40 80 00 0C */ bge lbl_801D028C /* 801D0284 001CD1E4 38 61 00 24 */ addi r3, r1, 0x24 /* 801D0288 001CD1E8 48 00 00 08 */ b lbl_801D0290 lbl_801D028C: /* 801D028C 001CD1EC 38 7B 01 48 */ addi r3, r27, 0x148 lbl_801D0290: /* 801D0290 001CD1F0 C0 03 00 00 */ lfs f0, 0(r3) /* 801D0294 001CD1F4 D0 1B 01 68 */ stfs f0, 0x168(r27) lbl_801D0298: /* 801D0298 001CD1F8 C0 1B 01 5C */ lfs f0, 0x15c(r27) /* 801D029C 001CD1FC C0 62 AB E4 */ lfs f3, lbl_805AC904@sda21(r2) /* 801D02A0 001CD200 EC 40 07 F2 */ fmuls f2, f0, f31 /* 801D02A4 001CD204 C0 3B 01 64 */ lfs f1, 0x164(r27) /* 801D02A8 001CD208 C0 0D 91 94 */ lfs f0, lbl_805A7D54@sda21(r13) /* 801D02AC 001CD20C EC 23 08 BC */ fnmsubs f1, f3, f2, f1 /* 801D02B0 001CD210 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 801D02B4 001CD214 D0 21 00 20 */ stfs f1, 0x20(r1) /* 801D02B8 001CD218 40 80 00 0C */ bge lbl_801D02C4 /* 801D02BC 001CD21C 38 61 00 20 */ addi r3, r1, 0x20 /* 801D02C0 001CD220 48 00 00 08 */ b lbl_801D02C8 lbl_801D02C4: /* 801D02C4 001CD224 38 6D 91 94 */ addi r3, r13, lbl_805A7D54@sda21 lbl_801D02C8: /* 801D02C8 001CD228 C0 03 00 00 */ lfs f0, 0(r3) /* 801D02CC 001CD22C D0 1B 01 64 */ stfs f0, 0x164(r27) /* 801D02D0 001CD230 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D02D4 001CD234 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 801D02D8 001CD238 41 82 00 34 */ beq lbl_801D030C /* 801D02DC 001CD23C C0 3B 01 5C */ lfs f1, 0x15c(r27) /* 801D02E0 001CD240 C0 1B 01 64 */ lfs f0, 0x164(r27) /* 801D02E4 001CD244 EC 21 07 FA */ fmadds f1, f1, f31, f0 /* 801D02E8 001CD248 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 801D02EC 001CD24C C0 1B 01 4C */ lfs f0, 0x14c(r27) /* 801D02F0 001CD250 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D02F4 001CD254 40 80 00 0C */ bge lbl_801D0300 /* 801D02F8 001CD258 38 61 00 1C */ addi r3, r1, 0x1c /* 801D02FC 001CD25C 48 00 00 08 */ b lbl_801D0304 lbl_801D0300: /* 801D0300 001CD260 38 7B 01 4C */ addi r3, r27, 0x14c lbl_801D0304: /* 801D0304 001CD264 C0 03 00 00 */ lfs f0, 0(r3) /* 801D0308 001CD268 D0 1B 01 64 */ stfs f0, 0x164(r27) lbl_801D030C: /* 801D030C 001CD26C 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D0310 001CD270 38 80 00 00 */ li r4, 0 /* 801D0314 001CD274 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 801D0318 001CD278 FC 20 F8 90 */ fmr f1, f31 /* 801D031C 001CD27C 98 1B 02 50 */ stb r0, 0x250(r27) /* 801D0320 001CD280 7F 63 DB 78 */ mr r3, r27 /* 801D0324 001CD284 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D0328 001CD288 50 80 0F BC */ rlwimi r0, r4, 1, 0x1e, 0x1e /* 801D032C 001CD28C 98 1B 02 50 */ stb r0, 0x250(r27) /* 801D0330 001CD290 80 9B 01 18 */ lwz r4, 0x118(r27) /* 801D0334 001CD294 38 04 00 01 */ addi r0, r4, 1 /* 801D0338 001CD298 90 1B 01 18 */ stw r0, 0x118(r27) /* 801D033C 001CD29C 4B FF E2 29 */ bl sub_801ce564 /* 801D0340 001CD2A0 38 00 00 00 */ li r0, 0 /* 801D0344 001CD2A4 7F 63 DB 78 */ mr r3, r27 /* 801D0348 001CD2A8 90 01 00 AC */ stw r0, 0xac(r1) /* 801D034C 001CD2AC 4B FF F2 F5 */ bl UpdatePartitionList__10CFishCloudFv /* 801D0350 001CD2B0 83 FC 09 00 */ lwz r31, 0x900(r28) /* 801D0354 001CD2B4 7F 64 DB 78 */ mr r4, r27 /* 801D0358 001CD2B8 38 61 00 7C */ addi r3, r1, 0x7c /* 801D035C 001CD2BC 48 00 1A 85 */ bl GetBoundingBox__10CFishCloudCFv /* 801D0360 001CD2C0 C0 A1 00 7C */ lfs f5, 0x7c(r1) /* 801D0364 001CD2C4 3B A0 00 00 */ li r29, 0 /* 801D0368 001CD2C8 C0 81 00 80 */ lfs f4, 0x80(r1) /* 801D036C 001CD2CC C0 61 00 84 */ lfs f3, 0x84(r1) /* 801D0370 001CD2D0 C0 41 00 88 */ lfs f2, 0x88(r1) /* 801D0374 001CD2D4 C0 21 00 8C */ lfs f1, 0x8c(r1) /* 801D0378 001CD2D8 C0 01 00 90 */ lfs f0, 0x90(r1) /* 801D037C 001CD2DC D0 A1 00 94 */ stfs f5, 0x94(r1) /* 801D0380 001CD2E0 D0 81 00 98 */ stfs f4, 0x98(r1) /* 801D0384 001CD2E4 D0 61 00 9C */ stfs f3, 0x9c(r1) /* 801D0388 001CD2E8 D0 41 00 A0 */ stfs f2, 0xa0(r1) /* 801D038C 001CD2EC D0 21 00 A4 */ stfs f1, 0xa4(r1) /* 801D0390 001CD2F0 D0 01 00 A8 */ stfs f0, 0xa8(r1) /* 801D0394 001CD2F4 83 DB 00 F4 */ lwz r30, 0xf4(r27) /* 801D0398 001CD2F8 48 00 03 2C */ b lbl_801D06C4 lbl_801D039C: /* 801D039C 001CD2FC 88 1E 00 20 */ lbz r0, 0x20(r30) /* 801D03A0 001CD300 28 00 00 00 */ cmplwi r0, 0 /* 801D03A4 001CD304 41 82 03 18 */ beq lbl_801D06BC /* 801D03A8 001CD308 80 9B 01 1C */ lwz r4, 0x11c(r27) /* 801D03AC 001CD30C 80 1B 01 18 */ lwz r0, 0x118(r27) /* 801D03B0 001CD310 7F A3 20 38 */ and r3, r29, r4 /* 801D03B4 001CD314 7C 00 20 38 */ and r0, r0, r4 /* 801D03B8 001CD318 7C 03 00 00 */ cmpw r3, r0 /* 801D03BC 001CD31C 40 82 03 00 */ bne lbl_801D06BC /* 801D03C0 001CD320 80 A1 00 AC */ lwz r5, 0xac(r1) /* 801D03C4 001CD324 38 60 00 00 */ li r3, 0 /* 801D03C8 001CD328 2C 05 00 00 */ cmpwi r5, 0 /* 801D03CC 001CD32C 40 81 00 44 */ ble lbl_801D0410 /* 801D03D0 001CD330 2C 05 00 08 */ cmpwi r5, 8 /* 801D03D4 001CD334 38 85 FF F8 */ addi r4, r5, -8 /* 801D03D8 001CD338 40 81 00 20 */ ble lbl_801D03F8 /* 801D03DC 001CD33C 38 04 00 07 */ addi r0, r4, 7 /* 801D03E0 001CD340 54 00 E8 FE */ srwi r0, r0, 3 /* 801D03E4 001CD344 7C 09 03 A6 */ mtctr r0 /* 801D03E8 001CD348 2C 04 00 00 */ cmpwi r4, 0 /* 801D03EC 001CD34C 40 81 00 0C */ ble lbl_801D03F8 lbl_801D03F0: /* 801D03F0 001CD350 38 63 00 08 */ addi r3, r3, 8 /* 801D03F4 001CD354 42 00 FF FC */ bdnz lbl_801D03F0 lbl_801D03F8: /* 801D03F8 001CD358 7C 03 28 50 */ subf r0, r3, r5 /* 801D03FC 001CD35C 7C 09 03 A6 */ mtctr r0 /* 801D0400 001CD360 7C 03 28 00 */ cmpw r3, r5 /* 801D0404 001CD364 40 80 00 0C */ bge lbl_801D0410 lbl_801D0408: /* 801D0408 001CD368 38 63 00 01 */ addi r3, r3, 1 /* 801D040C 001CD36C 42 00 FF FC */ bdnz lbl_801D0408 lbl_801D0410: /* 801D0410 001CD370 38 00 00 00 */ li r0, 0 /* 801D0414 001CD374 90 01 00 AC */ stw r0, 0xac(r1) /* 801D0418 001CD378 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D041C 001CD37C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 801D0420 001CD380 41 82 00 1C */ beq lbl_801D043C /* 801D0424 001CD384 C0 3B 01 38 */ lfs f1, 0x138(r27) /* 801D0428 001CD388 7F 63 DB 78 */ mr r3, r27 /* 801D042C 001CD38C 7F C4 F3 78 */ mr r4, r30 /* 801D0430 001CD390 38 A1 00 AC */ addi r5, r1, 0xac /* 801D0434 001CD394 4B FF ED 01 */ bl "BuildBoidNearList__10CFishCloudFRC9CVector3ffRQ24rstl41reserved_vector" /* 801D0438 001CD398 48 00 00 18 */ b lbl_801D0450 lbl_801D043C: /* 801D043C 001CD39C C0 3B 01 38 */ lfs f1, 0x138(r27) /* 801D0440 001CD3A0 7F 63 DB 78 */ mr r3, r27 /* 801D0444 001CD3A4 7F C4 F3 78 */ mr r4, r30 /* 801D0448 001CD3A8 38 A1 00 AC */ addi r5, r1, 0xac /* 801D044C 001CD3AC 4B FF ED D1 */ bl sub_801cf21c lbl_801D0450: /* 801D0450 001CD3B0 3B 40 00 00 */ li r26, 0 /* 801D0454 001CD3B4 C3 C2 AB EC */ lfs f30, lbl_805AC90C@sda21(r2) lbl_801D0458: /* 801D0458 001CD3B8 2C 1A 00 03 */ cmpwi r26, 3 /* 801D045C 001CD3BC 41 82 00 6C */ beq lbl_801D04C8 /* 801D0460 001CD3C0 40 80 00 14 */ bge lbl_801D0474 /* 801D0464 001CD3C4 2C 1A 00 01 */ cmpwi r26, 1 /* 801D0468 001CD3C8 41 82 00 18 */ beq lbl_801D0480 /* 801D046C 001CD3CC 40 80 00 28 */ bge lbl_801D0494 /* 801D0470 001CD3D0 48 00 00 9C */ b lbl_801D050C lbl_801D0474: /* 801D0474 001CD3D4 2C 1A 00 05 */ cmpwi r26, 5 /* 801D0478 001CD3D8 40 80 00 94 */ bge lbl_801D050C /* 801D047C 001CD3DC 48 00 00 80 */ b lbl_801D04FC lbl_801D0480: /* 801D0480 001CD3E0 7F 63 DB 78 */ mr r3, r27 /* 801D0484 001CD3E4 7F C4 F3 78 */ mr r4, r30 /* 801D0488 001CD3E8 38 A1 00 AC */ addi r5, r1, 0xac /* 801D048C 001CD3EC 4B FF E5 4D */ bl "ApplySeparation__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" /* 801D0490 001CD3F0 48 00 00 7C */ b lbl_801D050C lbl_801D0494: /* 801D0494 001CD3F4 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D0498 001CD3F8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801D049C 001CD3FC 41 82 00 18 */ beq lbl_801D04B4 /* 801D04A0 001CD400 7F E3 FB 78 */ mr r3, r31 /* 801D04A4 001CD404 48 14 20 39 */ bl Float__9CRandom16Fv /* 801D04A8 001CD408 C0 1B 01 2C */ lfs f0, 0x12c(r27) /* 801D04AC 001CD40C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D04B0 001CD410 40 81 00 5C */ ble lbl_801D050C lbl_801D04B4: /* 801D04B4 001CD414 7F 63 DB 78 */ mr r3, r27 /* 801D04B8 001CD418 7F C4 F3 78 */ mr r4, r30 /* 801D04BC 001CD41C 38 A1 00 AC */ addi r5, r1, 0xac /* 801D04C0 001CD420 4B FF E6 ED */ bl "ApplyCohesion__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" /* 801D04C4 001CD424 48 00 00 48 */ b lbl_801D050C lbl_801D04C8: /* 801D04C8 001CD428 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D04CC 001CD42C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801D04D0 001CD430 41 82 00 18 */ beq lbl_801D04E8 /* 801D04D4 001CD434 7F E3 FB 78 */ mr r3, r31 /* 801D04D8 001CD438 48 14 20 05 */ bl Float__9CRandom16Fv /* 801D04DC 001CD43C C0 1B 01 2C */ lfs f0, 0x12c(r27) /* 801D04E0 001CD440 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D04E4 001CD444 40 81 00 28 */ ble lbl_801D050C lbl_801D04E8: /* 801D04E8 001CD448 7F 63 DB 78 */ mr r3, r27 /* 801D04EC 001CD44C 7F C4 F3 78 */ mr r4, r30 /* 801D04F0 001CD450 38 A1 00 AC */ addi r5, r1, 0xac /* 801D04F4 001CD454 4B FF E8 B5 */ bl "ApplyAlignment__10CFishCloudFRQ210CFishCloud5CBoidRCQ24rstl41reserved_vector" /* 801D04F8 001CD458 48 00 00 14 */ b lbl_801D050C lbl_801D04FC: /* 801D04FC 001CD45C 7F 63 DB 78 */ mr r3, r27 /* 801D0500 001CD460 7F 84 E3 78 */ mr r4, r28 /* 801D0504 001CD464 7F C5 F3 78 */ mr r5, r30 /* 801D0508 001CD468 4B FF E7 8D */ bl sub_801cec94 lbl_801D050C: /* 801D050C 001CD46C C0 3E 00 0C */ lfs f1, 0xc(r30) /* 801D0510 001CD470 C0 1E 00 10 */ lfs f0, 0x10(r30) /* 801D0514 001CD474 EC 21 00 72 */ fmuls f1, f1, f1 /* 801D0518 001CD478 C0 5E 00 14 */ lfs f2, 0x14(r30) /* 801D051C 001CD47C EC 00 00 32 */ fmuls f0, f0, f0 /* 801D0520 001CD480 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801D0524 001CD484 EC 01 00 2A */ fadds f0, f1, f0 /* 801D0528 001CD488 EC 02 00 2A */ fadds f0, f2, f0 /* 801D052C 001CD48C FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 801D0530 001CD490 41 81 00 10 */ bgt lbl_801D0540 /* 801D0534 001CD494 3B 5A 00 01 */ addi r26, r26, 1 /* 801D0538 001CD498 2C 1A 00 05 */ cmpwi r26, 5 /* 801D053C 001CD49C 40 82 FF 1C */ bne lbl_801D0458 lbl_801D0540: /* 801D0540 001CD4A0 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D0544 001CD4A4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801D0548 001CD4A8 40 82 01 74 */ bne lbl_801D06BC /* 801D054C 001CD4AC C0 3E 00 0C */ lfs f1, 0xc(r30) /* 801D0550 001CD4B0 C0 1E 00 10 */ lfs f0, 0x10(r30) /* 801D0554 001CD4B4 EC 41 00 72 */ fmuls f2, f1, f1 /* 801D0558 001CD4B8 C0 7E 00 14 */ lfs f3, 0x14(r30) /* 801D055C 001CD4BC EC 20 00 32 */ fmuls f1, f0, f0 /* 801D0560 001CD4C0 C0 02 AB EC */ lfs f0, lbl_805AC90C@sda21(r2) /* 801D0564 001CD4C4 EC 63 00 F2 */ fmuls f3, f3, f3 /* 801D0568 001CD4C8 EC 22 08 2A */ fadds f1, f2, f1 /* 801D056C 001CD4CC EC 23 08 2A */ fadds f1, f3, f1 /* 801D0570 001CD4D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D0574 001CD4D4 40 80 01 48 */ bge lbl_801D06BC /* 801D0578 001CD4D8 83 5B 01 14 */ lwz r26, 0x114(r27) /* 801D057C 001CD4DC 48 00 01 28 */ b lbl_801D06A4 lbl_801D0580: /* 801D0580 001CD4E0 A0 1A 00 00 */ lhz r0, 0(r26) /* 801D0584 001CD4E4 7F 83 E3 78 */ mr r3, r28 /* 801D0588 001CD4E8 38 81 00 10 */ addi r4, r1, 0x10 /* 801D058C 001CD4EC B0 01 00 10 */ sth r0, 0x10(r1) /* 801D0590 001CD4F0 4B E7 BF E5 */ bl ObjectById__13CStateManagerF9TUniqueId /* 801D0594 001CD4F4 7C 64 1B 78 */ mr r4, r3 /* 801D0598 001CD4F8 38 61 00 34 */ addi r3, r1, 0x34 /* 801D059C 001CD4FC 4B ED F6 F5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" /* 801D05A0 001CD500 80 A3 00 04 */ lwz r5, 4(r3) /* 801D05A4 001CD504 28 05 00 00 */ cmplwi r5, 0 /* 801D05A8 001CD508 41 82 00 BC */ beq lbl_801D0664 /* 801D05AC 001CD50C 88 1A 00 0D */ lbz r0, 0xd(r26) /* 801D05B0 001CD510 28 00 00 00 */ cmplwi r0, 0 /* 801D05B4 001CD514 41 82 00 3C */ beq lbl_801D05F0 /* 801D05B8 001CD518 88 DA 00 0C */ lbz r6, 0xc(r26) /* 801D05BC 001CD51C 7F 63 DB 78 */ mr r3, r27 /* 801D05C0 001CD520 C0 5A 00 04 */ lfs f2, 4(r26) /* 801D05C4 001CD524 7F C4 F3 78 */ mr r4, r30 /* 801D05C8 001CD528 C0 65 00 60 */ lfs f3, 0x60(r5) /* 801D05CC 001CD52C C0 25 00 50 */ lfs f1, 0x50(r5) /* 801D05D0 001CD530 C0 05 00 40 */ lfs f0, 0x40(r5) /* 801D05D4 001CD534 38 A1 00 54 */ addi r5, r1, 0x54 /* 801D05D8 001CD538 D0 01 00 54 */ stfs f0, 0x54(r1) /* 801D05DC 001CD53C D0 21 00 58 */ stfs f1, 0x58(r1) /* 801D05E0 001CD540 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 801D05E4 001CD544 C0 3A 00 08 */ lfs f1, 8(r26) /* 801D05E8 001CD548 4B FF E9 29 */ bl sub_801cef10 /* 801D05EC 001CD54C 48 00 00 B4 */ b lbl_801D06A0 lbl_801D05F0: /* 801D05F0 001CD550 88 1A 00 0C */ lbz r0, 0xc(r26) /* 801D05F4 001CD554 28 00 00 00 */ cmplwi r0, 0 /* 801D05F8 001CD558 41 82 00 38 */ beq lbl_801D0630 /* 801D05FC 001CD55C C0 5A 00 08 */ lfs f2, 8(r26) /* 801D0600 001CD560 7F 63 DB 78 */ mr r3, r27 /* 801D0604 001CD564 C0 3A 00 04 */ lfs f1, 4(r26) /* 801D0608 001CD568 7F C4 F3 78 */ mr r4, r30 /* 801D060C 001CD56C C0 85 00 60 */ lfs f4, 0x60(r5) /* 801D0610 001CD570 C0 65 00 50 */ lfs f3, 0x50(r5) /* 801D0614 001CD574 C0 05 00 40 */ lfs f0, 0x40(r5) /* 801D0618 001CD578 38 A1 00 48 */ addi r5, r1, 0x48 /* 801D061C 001CD57C D0 01 00 48 */ stfs f0, 0x48(r1) /* 801D0620 001CD580 D0 61 00 4C */ stfs f3, 0x4c(r1) /* 801D0624 001CD584 D0 81 00 50 */ stfs f4, 0x50(r1) /* 801D0628 001CD588 4B FF E1 59 */ bl ApplyRepulsion__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff /* 801D062C 001CD58C 48 00 00 74 */ b lbl_801D06A0 lbl_801D0630: /* 801D0630 001CD590 C0 5A 00 08 */ lfs f2, 8(r26) /* 801D0634 001CD594 7F 63 DB 78 */ mr r3, r27 /* 801D0638 001CD598 C0 3A 00 04 */ lfs f1, 4(r26) /* 801D063C 001CD59C 7F C4 F3 78 */ mr r4, r30 /* 801D0640 001CD5A0 C0 85 00 60 */ lfs f4, 0x60(r5) /* 801D0644 001CD5A4 C0 65 00 50 */ lfs f3, 0x50(r5) /* 801D0648 001CD5A8 C0 05 00 40 */ lfs f0, 0x40(r5) /* 801D064C 001CD5AC 38 A1 00 3C */ addi r5, r1, 0x3c /* 801D0650 001CD5B0 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 801D0654 001CD5B4 D0 61 00 40 */ stfs f3, 0x40(r1) /* 801D0658 001CD5B8 D0 81 00 44 */ stfs f4, 0x44(r1) /* 801D065C 001CD5BC 4B FF E1 45 */ bl ApplyAttraction__10CFishCloudFRQ210CFishCloud5CBoidRC9CVector3fff /* 801D0660 001CD5C0 48 00 00 40 */ b lbl_801D06A0 lbl_801D0664: /* 801D0664 001CD5C4 88 1A 00 0C */ lbz r0, 0xc(r26) /* 801D0668 001CD5C8 28 00 00 00 */ cmplwi r0, 0 /* 801D066C 001CD5CC 41 82 00 1C */ beq lbl_801D0688 /* 801D0670 001CD5D0 A0 1A 00 00 */ lhz r0, 0(r26) /* 801D0674 001CD5D4 7F 63 DB 78 */ mr r3, r27 /* 801D0678 001CD5D8 38 81 00 0C */ addi r4, r1, 0xc /* 801D067C 001CD5DC B0 01 00 0C */ sth r0, 0xc(r1) /* 801D0680 001CD5E0 48 00 03 1D */ bl sub_801d099c /* 801D0684 001CD5E4 48 00 00 38 */ b lbl_801D06BC lbl_801D0688: /* 801D0688 001CD5E8 A0 1A 00 00 */ lhz r0, 0(r26) /* 801D068C 001CD5EC 7F 63 DB 78 */ mr r3, r27 /* 801D0690 001CD5F0 38 81 00 08 */ addi r4, r1, 8 /* 801D0694 001CD5F4 B0 01 00 08 */ sth r0, 8(r1) /* 801D0698 001CD5F8 48 00 04 F9 */ bl sub_801d0b90 /* 801D069C 001CD5FC 48 00 00 20 */ b lbl_801D06BC lbl_801D06A0: /* 801D06A0 001CD600 3B 5A 00 10 */ addi r26, r26, 0x10 lbl_801D06A4: /* 801D06A4 001CD604 80 1B 01 0C */ lwz r0, 0x10c(r27) /* 801D06A8 001CD608 80 7B 01 14 */ lwz r3, 0x114(r27) /* 801D06AC 001CD60C 54 00 20 36 */ slwi r0, r0, 4 /* 801D06B0 001CD610 7C 03 02 14 */ add r0, r3, r0 /* 801D06B4 001CD614 7C 1A 00 40 */ cmplw r26, r0 /* 801D06B8 001CD618 40 82 FE C8 */ bne lbl_801D0580 lbl_801D06BC: /* 801D06BC 001CD61C 3B DE 00 24 */ addi r30, r30, 0x24 /* 801D06C0 001CD620 3B BD 00 01 */ addi r29, r29, 1 lbl_801D06C4: /* 801D06C4 001CD624 80 1B 00 EC */ lwz r0, 0xec(r27) /* 801D06C8 001CD628 83 5B 00 F4 */ lwz r26, 0xf4(r27) /* 801D06CC 001CD62C 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801D06D0 001CD630 7C 1A 02 14 */ add r0, r26, r0 /* 801D06D4 001CD634 7C 1E 00 40 */ cmplw r30, r0 /* 801D06D8 001CD638 40 82 FC C4 */ bne lbl_801D039C /* 801D06DC 001CD63C 48 00 00 84 */ b lbl_801D0760 lbl_801D06E0: /* 801D06E0 001CD640 88 1A 00 20 */ lbz r0, 0x20(r26) /* 801D06E4 001CD644 28 00 00 00 */ cmplwi r0, 0 /* 801D06E8 001CD648 41 82 00 74 */ beq lbl_801D075C /* 801D06EC 001CD64C 7F 63 DB 78 */ mr r3, r27 /* 801D06F0 001CD650 7F 44 D3 78 */ mr r4, r26 /* 801D06F4 001CD654 38 A1 00 94 */ addi r5, r1, 0x94 /* 801D06F8 001CD658 4B FF DF 91 */ bl ApplyContainment__10CFishCloudFRQ210CFishCloud5CBoidRC6CAABox /* 801D06FC 001CD65C 3B BA 00 0C */ addi r29, r26, 0xc /* 801D0700 001CD660 7F A3 EB 78 */ mr r3, r29 /* 801D0704 001CD664 48 14 41 B5 */ bl Magnitude__9CVector3fCFv /* 801D0708 001CD668 C0 42 AB B8 */ lfs f2, lbl_805AC8D8@sda21(r2) /* 801D070C 001CD66C C0 02 AB F0 */ lfs f0, lbl_805AC910@sda21(r2) /* 801D0710 001CD670 EC 41 10 28 */ fsubs f2, f1, f2 /* 801D0714 001CD674 FC 40 12 10 */ fabs f2, f2 /* 801D0718 001CD678 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801D071C 001CD67C 41 80 00 30 */ blt lbl_801D074C /* 801D0720 001CD680 C0 42 AB B4 */ lfs f2, lbl_805AC8D4@sda21(r2) /* 801D0724 001CD684 C0 1D 00 00 */ lfs f0, 0(r29) /* 801D0728 001CD688 EC 22 08 24 */ fdivs f1, f2, f1 /* 801D072C 001CD68C EC 00 00 72 */ fmuls f0, f0, f1 /* 801D0730 001CD690 D0 1D 00 00 */ stfs f0, 0(r29) /* 801D0734 001CD694 C0 1D 00 04 */ lfs f0, 4(r29) /* 801D0738 001CD698 EC 00 00 72 */ fmuls f0, f0, f1 /* 801D073C 001CD69C D0 1D 00 04 */ stfs f0, 4(r29) /* 801D0740 001CD6A0 C0 1D 00 08 */ lfs f0, 8(r29) /* 801D0744 001CD6A4 EC 00 00 72 */ fmuls f0, f0, f1 /* 801D0748 001CD6A8 D0 1D 00 08 */ stfs f0, 8(r29) lbl_801D074C: /* 801D074C 001CD6AC C0 22 AB F4 */ lfs f1, lbl_805AC914@sda21(r2) /* 801D0750 001CD6B0 C0 1D 00 08 */ lfs f0, 8(r29) /* 801D0754 001CD6B4 EC 01 00 32 */ fmuls f0, f1, f0 /* 801D0758 001CD6B8 D0 1D 00 08 */ stfs f0, 8(r29) lbl_801D075C: /* 801D075C 001CD6BC 3B 5A 00 24 */ addi r26, r26, 0x24 lbl_801D0760: /* 801D0760 001CD6C0 80 1B 00 EC */ lwz r0, 0xec(r27) /* 801D0764 001CD6C4 80 7B 00 F4 */ lwz r3, 0xf4(r27) /* 801D0768 001CD6C8 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801D076C 001CD6CC 7C 03 02 14 */ add r0, r3, r0 /* 801D0770 001CD6D0 7C 1A 00 40 */ cmplw r26, r0 /* 801D0774 001CD6D4 40 82 FF 6C */ bne lbl_801D06E0 /* 801D0778 001CD6D8 C0 3B 01 2C */ lfs f1, 0x12c(r27) /* 801D077C 001CD6DC C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801D0780 001CD6E0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D0784 001CD6E4 40 81 00 10 */ ble lbl_801D0794 /* 801D0788 001CD6E8 EC 01 F8 28 */ fsubs f0, f1, f31 /* 801D078C 001CD6EC D0 1B 01 2C */ stfs f0, 0x12c(r27) /* 801D0790 001CD6F0 48 00 00 18 */ b lbl_801D07A8 lbl_801D0794: /* 801D0794 001CD6F4 D0 1B 01 2C */ stfs f0, 0x12c(r27) /* 801D0798 001CD6F8 38 60 00 00 */ li r3, 0 /* 801D079C 001CD6FC 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D07A0 001CD700 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 801D07A4 001CD704 98 1B 02 50 */ stb r0, 0x250(r27) lbl_801D07A8: /* 801D07A8 001CD708 83 5B 00 F4 */ lwz r26, 0xf4(r27) /* 801D07AC 001CD70C 48 00 00 8C */ b lbl_801D0838 lbl_801D07B0: /* 801D07B0 001CD710 88 1A 00 20 */ lbz r0, 0x20(r26) /* 801D07B4 001CD714 28 00 00 00 */ cmplwi r0, 0 /* 801D07B8 001CD718 41 82 00 7C */ beq lbl_801D0834 /* 801D07BC 001CD71C C0 1A 00 0C */ lfs f0, 0xc(r26) /* 801D07C0 001CD720 7F 63 DB 78 */ mr r3, r27 /* 801D07C4 001CD724 C0 3A 00 10 */ lfs f1, 0x10(r26) /* 801D07C8 001CD728 7F 45 D3 78 */ mr r5, r26 /* 801D07CC 001CD72C EC 1F 00 32 */ fmuls f0, f31, f0 /* 801D07D0 001CD730 C0 9B 01 30 */ lfs f4, 0x130(r27) /* 801D07D4 001CD734 EC 7F 00 72 */ fmuls f3, f31, f1 /* 801D07D8 001CD738 C0 5A 00 14 */ lfs f2, 0x14(r26) /* 801D07DC 001CD73C C0 3A 00 00 */ lfs f1, 0(r26) /* 801D07E0 001CD740 38 81 00 94 */ addi r4, r1, 0x94 /* 801D07E4 001CD744 EC 04 00 32 */ fmuls f0, f4, f0 /* 801D07E8 001CD748 EC 5F 00 B2 */ fmuls f2, f31, f2 /* 801D07EC 001CD74C EC 64 00 F2 */ fmuls f3, f4, f3 /* 801D07F0 001CD750 EC 01 00 2A */ fadds f0, f1, f0 /* 801D07F4 001CD754 EC 24 00 B2 */ fmuls f1, f4, f2 /* 801D07F8 001CD758 D0 1A 00 00 */ stfs f0, 0(r26) /* 801D07FC 001CD75C C0 1A 00 04 */ lfs f0, 4(r26) /* 801D0800 001CD760 EC 00 18 2A */ fadds f0, f0, f3 /* 801D0804 001CD764 D0 1A 00 04 */ stfs f0, 4(r26) /* 801D0808 001CD768 C0 1A 00 08 */ lfs f0, 8(r26) /* 801D080C 001CD76C EC 00 08 2A */ fadds f0, f0, f1 /* 801D0810 001CD770 D0 1A 00 08 */ stfs f0, 8(r26) /* 801D0814 001CD774 48 00 14 AD */ bl PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f /* 801D0818 001CD778 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801D081C 001CD77C 40 82 00 18 */ bne lbl_801D0834 /* 801D0820 001CD780 7F 63 DB 78 */ mr r3, r27 /* 801D0824 001CD784 7F 84 E3 78 */ mr r4, r28 /* 801D0828 001CD788 7F 45 D3 78 */ mr r5, r26 /* 801D082C 001CD78C 38 C1 00 94 */ addi r6, r1, 0x94 /* 801D0830 001CD790 48 00 0D 91 */ bl PlaceBoid__10CFishCloudFR13CStateManagerRQ210CFishCloud5CBoidRC6CAABox lbl_801D0834: /* 801D0834 001CD794 3B 5A 00 24 */ addi r26, r26, 0x24 lbl_801D0838: /* 801D0838 001CD798 80 1B 00 EC */ lwz r0, 0xec(r27) /* 801D083C 001CD79C 80 7B 00 F4 */ lwz r3, 0xf4(r27) /* 801D0840 001CD7A0 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801D0844 001CD7A4 7C 03 02 14 */ add r0, r3, r0 /* 801D0848 001CD7A8 7C 1A 00 40 */ cmplw r26, r0 /* 801D084C 001CD7AC 40 82 FF 64 */ bne lbl_801D07B0 /* 801D0850 001CD7B0 88 1B 02 50 */ lbz r0, 0x250(r27) /* 801D0854 001CD7B4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 801D0858 001CD7B8 41 82 00 5C */ beq lbl_801D08B4 /* 801D085C 001CD7BC 3B A0 00 00 */ li r29, 0 /* 801D0860 001CD7C0 3B 5B 01 B4 */ addi r26, r27, 0x1b4 lbl_801D0864: /* 801D0864 001CD7C4 80 7A 00 00 */ lwz r3, 0(r26) /* 801D0868 001CD7C8 C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801D086C 001CD7CC 80 63 00 00 */ lwz r3, 0(r3) /* 801D0870 001CD7D0 80 63 00 10 */ lwz r3, 0x10(r3) /* 801D0874 001CD7D4 4B E5 AB F5 */ bl SetPlaybackRate__9CAnimDataFf /* 801D0878 001CD7D8 80 1B 00 04 */ lwz r0, 4(r27) /* 801D087C 001CD7DC FC 20 F8 90 */ fmr f1, f31 /* 801D0880 001CD7E0 7F 85 E3 78 */ mr r5, r28 /* 801D0884 001CD7E4 38 61 00 60 */ addi r3, r1, 0x60 /* 801D0888 001CD7E8 90 01 00 18 */ stw r0, 0x18(r1) /* 801D088C 001CD7EC 38 C1 00 18 */ addi r6, r1, 0x18 /* 801D0890 001CD7F0 38 E0 00 01 */ li r7, 1 /* 801D0894 001CD7F4 80 9A 00 00 */ lwz r4, 0(r26) /* 801D0898 001CD7F8 90 01 00 14 */ stw r0, 0x14(r1) /* 801D089C 001CD7FC 80 84 00 00 */ lwz r4, 0(r4) /* 801D08A0 001CD800 4B F4 52 95 */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb /* 801D08A4 001CD804 3B BD 00 01 */ addi r29, r29, 1 /* 801D08A8 001CD808 3B 5A 00 04 */ addi r26, r26, 4 /* 801D08AC 001CD80C 2C 1D 00 04 */ cmpwi r29, 4 /* 801D08B0 001CD810 41 80 FF B4 */ blt lbl_801D0864 lbl_801D08B4: /* 801D08B4 001CD814 80 A1 00 AC */ lwz r5, 0xac(r1) /* 801D08B8 001CD818 38 60 00 00 */ li r3, 0 /* 801D08BC 001CD81C 2C 05 00 00 */ cmpwi r5, 0 /* 801D08C0 001CD820 40 81 00 40 */ ble lbl_801D0900 /* 801D08C4 001CD824 2C 05 00 08 */ cmpwi r5, 8 /* 801D08C8 001CD828 38 85 FF F8 */ addi r4, r5, -8 /* 801D08CC 001CD82C 40 81 00 20 */ ble lbl_801D08EC /* 801D08D0 001CD830 38 04 00 07 */ addi r0, r4, 7 /* 801D08D4 001CD834 54 00 E8 FE */ srwi r0, r0, 3 /* 801D08D8 001CD838 7C 09 03 A6 */ mtctr r0 /* 801D08DC 001CD83C 2C 04 00 00 */ cmpwi r4, 0 /* 801D08E0 001CD840 40 81 00 0C */ ble lbl_801D08EC lbl_801D08E4: /* 801D08E4 001CD844 38 63 00 08 */ addi r3, r3, 8 /* 801D08E8 001CD848 42 00 FF FC */ bdnz lbl_801D08E4 lbl_801D08EC: /* 801D08EC 001CD84C 7C 03 28 50 */ subf r0, r3, r5 /* 801D08F0 001CD850 7C 09 03 A6 */ mtctr r0 /* 801D08F4 001CD854 7C 03 28 00 */ cmpw r3, r5 /* 801D08F8 001CD858 40 80 00 08 */ bge lbl_801D0900 lbl_801D08FC: /* 801D08FC 001CD85C 42 00 00 00 */ bdnz lbl_801D08FC lbl_801D0900: /* 801D0900 001CD860 38 00 00 00 */ li r0, 0 /* 801D0904 001CD864 90 01 00 AC */ stw r0, 0xac(r1) lbl_801D0908: /* 801D0908 001CD868 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 801D090C 001CD86C CB E1 01 40 */ lfd f31, 0x140(r1) /* 801D0910 001CD870 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 /* 801D0914 001CD874 CB C1 01 30 */ lfd f30, 0x130(r1) /* 801D0918 001CD878 BB 41 01 18 */ lmw r26, 0x118(r1) /* 801D091C 001CD87C 80 01 01 54 */ lwz r0, 0x154(r1) /* 801D0920 001CD880 7C 08 03 A6 */ mtlr r0 /* 801D0924 001CD884 38 21 01 50 */ addi r1, r1, 0x150 /* 801D0928 001CD888 4E 80 00 20 */ blr .global GetTouchBounds__10CFishCloudCFv GetTouchBounds__10CFishCloudCFv: /* 801D092C 001CD88C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D0930 001CD890 7C 08 02 A6 */ mflr r0 /* 801D0934 001CD894 90 01 00 34 */ stw r0, 0x34(r1) /* 801D0938 001CD898 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801D093C 001CD89C 7C 7F 1B 78 */ mr r31, r3 /* 801D0940 001CD8A0 38 61 00 08 */ addi r3, r1, 8 /* 801D0944 001CD8A4 48 00 14 9D */ bl GetBoundingBox__10CFishCloudCFv /* 801D0948 001CD8A8 38 00 00 01 */ li r0, 1 /* 801D094C 001CD8AC 28 1F 00 00 */ cmplwi r31, 0 /* 801D0950 001CD8B0 98 1F 00 18 */ stb r0, 0x18(r31) /* 801D0954 001CD8B4 41 82 00 34 */ beq lbl_801D0988 /* 801D0958 001CD8B8 C0 01 00 08 */ lfs f0, 8(r1) /* 801D095C 001CD8BC D0 1F 00 00 */ stfs f0, 0(r31) /* 801D0960 001CD8C0 C0 01 00 0C */ lfs f0, 0xc(r1) /* 801D0964 001CD8C4 D0 1F 00 04 */ stfs f0, 4(r31) /* 801D0968 001CD8C8 C0 01 00 10 */ lfs f0, 0x10(r1) /* 801D096C 001CD8CC D0 1F 00 08 */ stfs f0, 8(r31) /* 801D0970 001CD8D0 C0 01 00 14 */ lfs f0, 0x14(r1) /* 801D0974 001CD8D4 D0 1F 00 0C */ stfs f0, 0xc(r31) /* 801D0978 001CD8D8 C0 01 00 18 */ lfs f0, 0x18(r1) /* 801D097C 001CD8DC D0 1F 00 10 */ stfs f0, 0x10(r31) /* 801D0980 001CD8E0 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 801D0984 001CD8E4 D0 1F 00 14 */ stfs f0, 0x14(r31) lbl_801D0988: /* 801D0988 001CD8E8 80 01 00 34 */ lwz r0, 0x34(r1) /* 801D098C 001CD8EC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801D0990 001CD8F0 7C 08 03 A6 */ mtlr r0 /* 801D0994 001CD8F4 38 21 00 30 */ addi r1, r1, 0x30 /* 801D0998 001CD8F8 4E 80 00 20 */ blr .global sub_801d099c sub_801d099c: /* 801D099C 001CD8FC 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801D09A0 001CD900 7C 08 02 A6 */ mflr r0 /* 801D09A4 001CD904 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) /* 801D09A8 001CD908 38 A0 00 01 */ li r5, 1 /* 801D09AC 001CD90C 90 01 00 54 */ stw r0, 0x54(r1) /* 801D09B0 001CD910 38 C0 00 00 */ li r6, 0 /* 801D09B4 001CD914 FC 40 08 90 */ fmr f2, f1 /* 801D09B8 001CD918 93 E1 00 4C */ stw r31, 0x4c(r1) /* 801D09BC 001CD91C 93 C1 00 48 */ stw r30, 0x48(r1) /* 801D09C0 001CD920 7C 7E 1B 78 */ mr r30, r3 /* 801D09C4 001CD924 38 61 00 30 */ addi r3, r1, 0x30 /* 801D09C8 001CD928 48 00 24 F5 */ bl __ct__Q210CFishCloud15CModifierSourceFRC9TUniqueIdbff /* 801D09CC 001CD92C 80 1E 01 0C */ lwz r0, 0x10c(r30) /* 801D09D0 001CD930 38 61 00 0C */ addi r3, r1, 0xc /* 801D09D4 001CD934 80 DE 01 14 */ lwz r6, 0x114(r30) /* 801D09D8 001CD938 38 81 00 10 */ addi r4, r1, 0x10 /* 801D09DC 001CD93C 54 00 20 36 */ slwi r0, r0, 4 /* 801D09E0 001CD940 38 A1 00 14 */ addi r5, r1, 0x14 /* 801D09E4 001CD944 7C E6 02 14 */ add r7, r6, r0 /* 801D09E8 001CD948 38 C1 00 30 */ addi r6, r1, 0x30 /* 801D09EC 001CD94C 90 E1 00 24 */ stw r7, 0x24(r1) /* 801D09F0 001CD950 80 1E 01 14 */ lwz r0, 0x114(r30) /* 801D09F4 001CD954 90 E1 00 20 */ stw r7, 0x20(r1) /* 801D09F8 001CD958 90 01 00 28 */ stw r0, 0x28(r1) /* 801D09FC 001CD95C 90 E1 00 14 */ stw r7, 0x14(r1) /* 801D0A00 001CD960 90 01 00 10 */ stw r0, 0x10(r1) /* 801D0A04 001CD964 48 00 29 B9 */ bl "lower_bound,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iteratorFi" /* 801D1374 001CE2D4 7F C4 F3 78 */ mr r4, r30 /* 801D1378 001CE2D8 38 61 00 30 */ addi r3, r1, 0x30 /* 801D137C 001CE2DC 48 00 09 FD */ bl GetUntransformedBoundingBox__10CFishCloudCFv /* 801D1380 001CE2E0 C0 01 00 30 */ lfs f0, 0x30(r1) /* 801D1384 001CE2E4 3B 80 00 00 */ li r28, 0 /* 801D1388 001CE2E8 C0 E1 00 34 */ lfs f7, 0x34(r1) /* 801D138C 001CE2EC C0 C1 00 38 */ lfs f6, 0x38(r1) /* 801D1390 001CE2F0 FE A0 00 18 */ frsp f21, f0 /* 801D1394 001CE2F4 C0 A1 00 3C */ lfs f5, 0x3c(r1) /* 801D1398 001CE2F8 FF C0 38 18 */ frsp f30, f7 /* 801D139C 001CE2FC C0 81 00 40 */ lfs f4, 0x40(r1) /* 801D13A0 001CE300 FF 80 30 18 */ frsp f28, f6 /* 801D13A4 001CE304 C0 61 00 44 */ lfs f3, 0x44(r1) /* 801D13A8 001CE308 FC 20 20 18 */ frsp f1, f4 /* 801D13AC 001CE30C D0 01 00 48 */ stfs f0, 0x48(r1) /* 801D13B0 001CE310 FC 40 18 18 */ frsp f2, f3 /* 801D13B4 001CE314 83 BF 09 00 */ lwz r29, 0x900(r31) /* 801D13B8 001CE318 FC 00 28 18 */ frsp f0, f5 /* 801D13BC 001CE31C D0 E1 00 4C */ stfs f7, 0x4c(r1) /* 801D13C0 001CE320 EF A2 E0 28 */ fsubs f29, f2, f28 /* 801D13C4 001CE324 D0 C1 00 50 */ stfs f6, 0x50(r1) /* 801D13C8 001CE328 EF E1 F0 28 */ fsubs f31, f1, f30 /* 801D13CC 001CE32C C2 C2 AB CC */ lfs f22, lbl_805AC8EC@sda21(r2) /* 801D13D0 001CE330 EF 60 A8 28 */ fsubs f27, f0, f21 /* 801D13D4 001CE334 D0 A1 00 54 */ stfs f5, 0x54(r1) /* 801D13D8 001CE338 D0 81 00 58 */ stfs f4, 0x58(r1) /* 801D13DC 001CE33C C2 E2 AB B8 */ lfs f23, lbl_805AC8D8@sda21(r2) /* 801D13E0 001CE340 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 801D13E4 001CE344 C3 02 AB E0 */ lfs f24, lbl_805AC900@sda21(r2) /* 801D13E8 001CE348 C3 22 AB F8 */ lfs f25, lbl_805AC918@sda21(r2) /* 801D13EC 001CE34C 48 00 01 24 */ b lbl_801D1510 lbl_801D13F0: /* 801D13F0 001CE350 7F A3 EB 78 */ mr r3, r29 /* 801D13F4 001CE354 48 14 10 E9 */ bl Float__9CRandom16Fv /* 801D13F8 001CE358 EE 81 E7 7A */ fmadds f20, f1, f29, f28 /* 801D13FC 001CE35C 7F A3 EB 78 */ mr r3, r29 /* 801D1400 001CE360 48 14 10 DD */ bl Float__9CRandom16Fv /* 801D1404 001CE364 EF 41 F7 FA */ fmadds f26, f1, f31, f30 /* 801D1408 001CE368 7F A3 EB 78 */ mr r3, r29 /* 801D140C 001CE36C 48 14 10 D1 */ bl Float__9CRandom16Fv /* 801D1410 001CE370 EC 01 AE FA */ fmadds f0, f1, f27, f21 /* 801D1414 001CE374 D3 41 00 28 */ stfs f26, 0x28(r1) /* 801D1418 001CE378 7F A3 EB 78 */ mr r3, r29 /* 801D141C 001CE37C D2 81 00 2C */ stfs f20, 0x2c(r1) /* 801D1420 001CE380 D0 01 00 24 */ stfs f0, 0x24(r1) /* 801D1424 001CE384 48 14 10 B9 */ bl Float__9CRandom16Fv /* 801D1428 001CE388 EE 81 B0 28 */ fsubs f20, f1, f22 /* 801D142C 001CE38C 7F A3 EB 78 */ mr r3, r29 /* 801D1430 001CE390 48 14 10 AD */ bl Float__9CRandom16Fv /* 801D1434 001CE394 EC 01 B0 28 */ fsubs f0, f1, f22 /* 801D1438 001CE398 D2 81 00 10 */ stfs f20, 0x10(r1) /* 801D143C 001CE39C 7F A3 EB 78 */ mr r3, r29 /* 801D1440 001CE3A0 D2 E1 00 14 */ stfs f23, 0x14(r1) /* 801D1444 001CE3A4 D0 01 00 0C */ stfs f0, 0xc(r1) /* 801D1448 001CE3A8 48 14 10 95 */ bl Float__9CRandom16Fv /* 801D144C 001CE3AC C0 42 AB FC */ lfs f2, lbl_805AC91C@sda21(r2) /* 801D1450 001CE3B0 48 14 3E DD */ bl PowF__5CMathFff /* 801D1454 001CE3B4 EF 58 C8 7A */ fmadds f26, f24, f1, f25 /* 801D1458 001CE3B8 38 61 00 18 */ addi r3, r1, 0x18 /* 801D145C 001CE3BC 38 9E 00 34 */ addi r4, r30, 0x34 /* 801D1460 001CE3C0 38 A1 00 24 */ addi r5, r1, 0x24 /* 801D1464 001CE3C4 48 14 16 85 */ bl __ml__12CTransform4fCFRC9CVector3f /* 801D1468 001CE3C8 FC 20 D0 90 */ fmr f1, f26 /* 801D146C 001CE3CC 38 61 00 60 */ addi r3, r1, 0x60 /* 801D1470 001CE3D0 38 81 00 18 */ addi r4, r1, 0x18 /* 801D1474 001CE3D4 38 A1 00 0C */ addi r5, r1, 0xc /* 801D1478 001CE3D8 48 00 19 CD */ bl __ct__Q210CFishCloud5CBoidFRC9CVector3fRC9CVector3ff /* 801D147C 001CE3DC 80 1E 00 EC */ lwz r0, 0xec(r30) /* 801D1480 001CE3E0 80 BE 00 F0 */ lwz r5, 0xf0(r30) /* 801D1484 001CE3E4 7C 00 28 00 */ cmpw r0, r5 /* 801D1488 001CE3E8 41 80 00 1C */ blt lbl_801D14A4 /* 801D148C 001CE3EC 2C 05 00 00 */ cmpwi r5, 0 /* 801D1490 001CE3F0 38 7E 00 E8 */ addi r3, r30, 0xe8 /* 801D1494 001CE3F4 38 80 00 04 */ li r4, 4 /* 801D1498 001CE3F8 41 82 00 08 */ beq lbl_801D14A0 /* 801D149C 001CE3FC 54 A4 08 3C */ slwi r4, r5, 1 lbl_801D14A0: /* 801D14A0 001CE400 48 00 21 D9 */ bl "reserve__Q24rstl55vectorFi" lbl_801D14A4: /* 801D14A4 001CE404 80 1E 00 EC */ lwz r0, 0xec(r30) /* 801D14A8 001CE408 80 7E 00 F4 */ lwz r3, 0xf4(r30) /* 801D14AC 001CE40C 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801D14B0 001CE410 7C 63 02 15 */ add. r3, r3, r0 /* 801D14B4 001CE414 41 82 00 4C */ beq lbl_801D1500 /* 801D14B8 001CE418 C0 01 00 60 */ lfs f0, 0x60(r1) /* 801D14BC 001CE41C D0 03 00 00 */ stfs f0, 0(r3) /* 801D14C0 001CE420 C0 01 00 64 */ lfs f0, 0x64(r1) /* 801D14C4 001CE424 D0 03 00 04 */ stfs f0, 4(r3) /* 801D14C8 001CE428 C0 01 00 68 */ lfs f0, 0x68(r1) /* 801D14CC 001CE42C D0 03 00 08 */ stfs f0, 8(r3) /* 801D14D0 001CE430 C0 01 00 6C */ lfs f0, 0x6c(r1) /* 801D14D4 001CE434 D0 03 00 0C */ stfs f0, 0xc(r3) /* 801D14D8 001CE438 C0 01 00 70 */ lfs f0, 0x70(r1) /* 801D14DC 001CE43C D0 03 00 10 */ stfs f0, 0x10(r3) /* 801D14E0 001CE440 C0 01 00 74 */ lfs f0, 0x74(r1) /* 801D14E4 001CE444 D0 03 00 14 */ stfs f0, 0x14(r3) /* 801D14E8 001CE448 C0 01 00 78 */ lfs f0, 0x78(r1) /* 801D14EC 001CE44C D0 03 00 18 */ stfs f0, 0x18(r3) /* 801D14F0 001CE450 80 01 00 7C */ lwz r0, 0x7c(r1) /* 801D14F4 001CE454 90 03 00 1C */ stw r0, 0x1c(r3) /* 801D14F8 001CE458 88 01 00 80 */ lbz r0, 0x80(r1) /* 801D14FC 001CE45C 98 03 00 20 */ stb r0, 0x20(r3) lbl_801D1500: /* 801D1500 001CE460 80 7E 00 EC */ lwz r3, 0xec(r30) /* 801D1504 001CE464 3B 9C 00 01 */ addi r28, r28, 1 /* 801D1508 001CE468 38 03 00 01 */ addi r0, r3, 1 /* 801D150C 001CE46C 90 1E 00 EC */ stw r0, 0xec(r30) lbl_801D1510: /* 801D1510 001CE470 80 1E 00 F0 */ lwz r0, 0xf0(r30) /* 801D1514 001CE474 7C 1C 00 00 */ cmpw r28, r0 /* 801D1518 001CE478 41 80 FE D8 */ blt lbl_801D13F0 /* 801D151C 001CE47C 7F C3 F3 78 */ mr r3, r30 /* 801D1520 001CE480 4B FF E2 E5 */ bl CreatePartitionList__10CFishCloudFv /* 801D1524 001CE484 88 1E 02 50 */ lbz r0, 0x250(r30) /* 801D1528 001CE488 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 801D152C 001CE48C 41 82 00 14 */ beq lbl_801D1540 /* 801D1530 001CE490 7F C3 F3 78 */ mr r3, r30 /* 801D1534 001CE494 7F E4 FB 78 */ mr r4, r31 /* 801D1538 001CE498 38 A0 00 00 */ li r5, 0 /* 801D153C 001CE49C 48 00 09 ED */ bl sub_801d1f28 lbl_801D1540: /* 801D1540 001CE4A0 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 /* 801D1544 001CE4A4 CB E1 01 50 */ lfd f31, 0x150(r1) /* 801D1548 001CE4A8 E3 C1 01 48 */ psq_l f30, 328(r1), 0, qr0 /* 801D154C 001CE4AC CB C1 01 40 */ lfd f30, 0x140(r1) /* 801D1550 001CE4B0 E3 A1 01 38 */ psq_l f29, 312(r1), 0, qr0 /* 801D1554 001CE4B4 CB A1 01 30 */ lfd f29, 0x130(r1) /* 801D1558 001CE4B8 E3 81 01 28 */ psq_l f28, 296(r1), 0, qr0 /* 801D155C 001CE4BC CB 81 01 20 */ lfd f28, 0x120(r1) /* 801D1560 001CE4C0 E3 61 01 18 */ psq_l f27, 280(r1), 0, qr0 /* 801D1564 001CE4C4 CB 61 01 10 */ lfd f27, 0x110(r1) /* 801D1568 001CE4C8 E3 41 01 08 */ psq_l f26, 264(r1), 0, qr0 /* 801D156C 001CE4CC CB 41 01 00 */ lfd f26, 0x100(r1) /* 801D1570 001CE4D0 E3 21 00 F8 */ psq_l f25, 248(r1), 0, qr0 /* 801D1574 001CE4D4 CB 21 00 F0 */ lfd f25, 0xf0(r1) /* 801D1578 001CE4D8 E3 01 00 E8 */ psq_l f24, 232(r1), 0, qr0 /* 801D157C 001CE4DC CB 01 00 E0 */ lfd f24, 0xe0(r1) /* 801D1580 001CE4E0 E2 E1 00 D8 */ psq_l f23, 216(r1), 0, qr0 /* 801D1584 001CE4E4 CA E1 00 D0 */ lfd f23, 0xd0(r1) /* 801D1588 001CE4E8 E2 C1 00 C8 */ psq_l f22, 200(r1), 0, qr0 /* 801D158C 001CE4EC CA C1 00 C0 */ lfd f22, 0xc0(r1) /* 801D1590 001CE4F0 E2 A1 00 B8 */ psq_l f21, 184(r1), 0, qr0 /* 801D1594 001CE4F4 CA A1 00 B0 */ lfd f21, 0xb0(r1) /* 801D1598 001CE4F8 E2 81 00 A8 */ psq_l f20, 168(r1), 0, qr0 /* 801D159C 001CE4FC CA 81 00 A0 */ lfd f20, 0xa0(r1) /* 801D15A0 001CE500 83 E1 00 9C */ lwz r31, 0x9c(r1) /* 801D15A4 001CE504 83 C1 00 98 */ lwz r30, 0x98(r1) /* 801D15A8 001CE508 83 A1 00 94 */ lwz r29, 0x94(r1) /* 801D15AC 001CE50C 80 01 01 64 */ lwz r0, 0x164(r1) /* 801D15B0 001CE510 83 81 00 90 */ lwz r28, 0x90(r1) /* 801D15B4 001CE514 7C 08 03 A6 */ mtlr r0 /* 801D15B8 001CE518 38 21 01 60 */ addi r1, r1, 0x160 /* 801D15BC 001CE51C 4E 80 00 20 */ blr .global PlaceBoid__10CFishCloudFR13CStateManagerRQ210CFishCloud5CBoidRC6CAABox PlaceBoid__10CFishCloudFR13CStateManagerRQ210CFishCloud5CBoidRC6CAABox: /* 801D15C0 001CE520 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 801D15C4 001CE524 7C 08 02 A6 */ mflr r0 /* 801D15C8 001CE528 90 01 00 B4 */ stw r0, 0xb4(r1) /* 801D15CC 001CE52C DB E1 00 A0 */ stfd f31, 0xa0(r1) /* 801D15D0 001CE530 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 /* 801D15D4 001CE534 DB C1 00 90 */ stfd f30, 0x90(r1) /* 801D15D8 001CE538 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 /* 801D15DC 001CE53C DB A1 00 80 */ stfd f29, 0x80(r1) /* 801D15E0 001CE540 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 /* 801D15E4 001CE544 93 E1 00 7C */ stw r31, 0x7c(r1) /* 801D15E8 001CE548 93 C1 00 78 */ stw r30, 0x78(r1) /* 801D15EC 001CE54C 93 A1 00 74 */ stw r29, 0x74(r1) /* 801D15F0 001CE550 93 81 00 70 */ stw r28, 0x70(r1) /* 801D15F4 001CE554 7C 7C 1B 78 */ mr r28, r3 /* 801D15F8 001CE558 83 E4 09 00 */ lwz r31, 0x900(r4) /* 801D15FC 001CE55C 7C BD 2B 78 */ mr r29, r5 /* 801D1600 001CE560 7C DE 33 78 */ mr r30, r6 /* 801D1604 001CE564 7F 84 E3 78 */ mr r4, r28 /* 801D1608 001CE568 38 61 00 14 */ addi r3, r1, 0x14 /* 801D160C 001CE56C 7F C5 F3 78 */ mr r5, r30 /* 801D1610 001CE570 7F A6 EB 78 */ mr r6, r29 /* 801D1614 001CE574 48 00 02 41 */ bl FindClosestPlane__10CFishCloudCFRC6CAABoxRC9CVector3f /* 801D1618 001CE578 C0 E1 00 18 */ lfs f7, 0x18(r1) /* 801D161C 001CE57C 7F E3 FB 78 */ mr r3, r31 /* 801D1620 001CE580 C0 1D 00 04 */ lfs f0, 4(r29) /* 801D1624 001CE584 C1 01 00 14 */ lfs f8, 0x14(r1) /* 801D1628 001CE588 EC 07 00 32 */ fmuls f0, f7, f0 /* 801D162C 001CE58C C0 3D 00 00 */ lfs f1, 0(r29) /* 801D1630 001CE590 C0 62 AC 00 */ lfs f3, lbl_805AC920@sda21(r2) /* 801D1634 001CE594 C0 C1 00 1C */ lfs f6, 0x1c(r1) /* 801D1638 001CE598 EC 08 00 7A */ fmadds f0, f8, f1, f0 /* 801D163C 001CE59C C0 3D 00 08 */ lfs f1, 8(r29) /* 801D1640 001CE5A0 C0 A1 00 20 */ lfs f5, 0x20(r1) /* 801D1644 001CE5A4 EC 43 02 32 */ fmuls f2, f3, f8 /* 801D1648 001CE5A8 C0 9D 00 00 */ lfs f4, 0(r29) /* 801D164C 001CE5AC ED 43 01 F2 */ fmuls f10, f3, f7 /* 801D1650 001CE5B0 EC 06 00 7A */ fmadds f0, f6, f1, f0 /* 801D1654 001CE5B4 D1 01 00 30 */ stfs f8, 0x30(r1) /* 801D1658 001CE5B8 ED 23 01 B2 */ fmuls f9, f3, f6 /* 801D165C 001CE5BC D0 E1 00 34 */ stfs f7, 0x34(r1) /* 801D1660 001CE5C0 EC 00 28 28 */ fsubs f0, f0, f5 /* 801D1664 001CE5C4 D0 C1 00 38 */ stfs f6, 0x38(r1) /* 801D1668 001CE5C8 EC 60 02 32 */ fmuls f3, f0, f8 /* 801D166C 001CE5CC D0 A1 00 3C */ stfs f5, 0x3c(r1) /* 801D1670 001CE5D0 EC 20 01 F2 */ fmuls f1, f0, f7 /* 801D1674 001CE5D4 EC 00 01 B2 */ fmuls f0, f0, f6 /* 801D1678 001CE5D8 EC 43 10 2A */ fadds f2, f3, f2 /* 801D167C 001CE5DC EC 21 50 2A */ fadds f1, f1, f10 /* 801D1680 001CE5E0 EC 00 48 2A */ fadds f0, f0, f9 /* 801D1684 001CE5E4 EC 44 10 28 */ fsubs f2, f4, f2 /* 801D1688 001CE5E8 D0 5D 00 00 */ stfs f2, 0(r29) /* 801D168C 001CE5EC C0 5D 00 04 */ lfs f2, 4(r29) /* 801D1690 001CE5F0 EC 22 08 28 */ fsubs f1, f2, f1 /* 801D1694 001CE5F4 D0 3D 00 04 */ stfs f1, 4(r29) /* 801D1698 001CE5F8 C0 3D 00 08 */ lfs f1, 8(r29) /* 801D169C 001CE5FC EC 01 00 28 */ fsubs f0, f1, f0 /* 801D16A0 001CE600 D0 1D 00 08 */ stfs f0, 8(r29) /* 801D16A4 001CE604 48 14 0E 39 */ bl Float__9CRandom16Fv /* 801D16A8 001CE608 C0 02 AB CC */ lfs f0, lbl_805AC8EC@sda21(r2) /* 801D16AC 001CE60C 7F E3 FB 78 */ mr r3, r31 /* 801D16B0 001CE610 EF C1 00 28 */ fsubs f30, f1, f0 /* 801D16B4 001CE614 48 14 0E 29 */ bl Float__9CRandom16Fv /* 801D16B8 001CE618 C0 42 AB CC */ lfs f2, lbl_805AC8EC@sda21(r2) /* 801D16BC 001CE61C C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801D16C0 001CE620 EC 21 10 28 */ fsubs f1, f1, f2 /* 801D16C4 001CE624 D0 3D 00 0C */ stfs f1, 0xc(r29) /* 801D16C8 001CE628 D3 DD 00 10 */ stfs f30, 0x10(r29) /* 801D16CC 001CE62C D0 1D 00 14 */ stfs f0, 0x14(r29) /* 801D16D0 001CE630 88 1C 02 50 */ lbz r0, 0x250(r28) /* 801D16D4 001CE634 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 801D16D8 001CE638 40 82 00 78 */ bne lbl_801D1750 /* 801D16DC 001CE63C 7F C3 F3 78 */ mr r3, r30 /* 801D16E0 001CE640 7F A4 EB 78 */ mr r4, r29 /* 801D16E4 001CE644 48 16 5E 51 */ bl PointInside__6CAABoxCFRC9CVector3f /* 801D16E8 001CE648 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801D16EC 001CE64C 40 82 01 30 */ bne lbl_801D181C /* 801D16F0 001CE650 C3 BE 00 00 */ lfs f29, 0(r30) /* 801D16F4 001CE654 7F E3 FB 78 */ mr r3, r31 /* 801D16F8 001CE658 C3 DE 00 04 */ lfs f30, 4(r30) /* 801D16FC 001CE65C C3 FE 00 08 */ lfs f31, 8(r30) /* 801D1700 001CE660 48 14 0D DD */ bl Float__9CRandom16Fv /* 801D1704 001CE664 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 801D1708 001CE668 7F E3 FB 78 */ mr r3, r31 /* 801D170C 001CE66C EC 00 F8 28 */ fsubs f0, f0, f31 /* 801D1710 001CE670 EF E1 F8 3A */ fmadds f31, f1, f0, f31 /* 801D1714 001CE674 48 14 0D C9 */ bl Float__9CRandom16Fv /* 801D1718 001CE678 C0 5E 00 10 */ lfs f2, 0x10(r30) /* 801D171C 001CE67C 7F E3 FB 78 */ mr r3, r31 /* 801D1720 001CE680 C0 1E 00 04 */ lfs f0, 4(r30) /* 801D1724 001CE684 EC 02 00 28 */ fsubs f0, f2, f0 /* 801D1728 001CE688 EF C1 F0 3A */ fmadds f30, f1, f0, f30 /* 801D172C 001CE68C 48 14 0D B1 */ bl Float__9CRandom16Fv /* 801D1730 001CE690 C0 5E 00 0C */ lfs f2, 0xc(r30) /* 801D1734 001CE694 C0 1E 00 00 */ lfs f0, 0(r30) /* 801D1738 001CE698 EC 02 00 28 */ fsubs f0, f2, f0 /* 801D173C 001CE69C EC 01 E8 3A */ fmadds f0, f1, f0, f29 /* 801D1740 001CE6A0 D0 1D 00 00 */ stfs f0, 0(r29) /* 801D1744 001CE6A4 D3 DD 00 04 */ stfs f30, 4(r29) /* 801D1748 001CE6A8 D3 FD 00 08 */ stfs f31, 8(r29) /* 801D174C 001CE6AC 48 00 00 D0 */ b lbl_801D181C lbl_801D1750: /* 801D1750 001CE6B0 7F 83 E3 78 */ mr r3, r28 /* 801D1754 001CE6B4 7F C4 F3 78 */ mr r4, r30 /* 801D1758 001CE6B8 7F A5 EB 78 */ mr r5, r29 /* 801D175C 001CE6BC 48 00 05 65 */ bl PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f /* 801D1760 001CE6C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801D1764 001CE6C4 40 82 00 B8 */ bne lbl_801D181C /* 801D1768 001CE6C8 7F 84 E3 78 */ mr r4, r28 /* 801D176C 001CE6CC 38 61 00 40 */ addi r3, r1, 0x40 /* 801D1770 001CE6D0 48 00 06 09 */ bl GetUntransformedBoundingBox__10CFishCloudCFv /* 801D1774 001CE6D4 C0 61 00 40 */ lfs f3, 0x40(r1) /* 801D1778 001CE6D8 7F E3 FB 78 */ mr r3, r31 /* 801D177C 001CE6DC C3 C1 00 44 */ lfs f30, 0x44(r1) /* 801D1780 001CE6E0 C3 E1 00 48 */ lfs f31, 0x48(r1) /* 801D1784 001CE6E4 C0 41 00 4C */ lfs f2, 0x4c(r1) /* 801D1788 001CE6E8 C0 21 00 50 */ lfs f1, 0x50(r1) /* 801D178C 001CE6EC C0 01 00 54 */ lfs f0, 0x54(r1) /* 801D1790 001CE6F0 D0 61 00 58 */ stfs f3, 0x58(r1) /* 801D1794 001CE6F4 D3 C1 00 5C */ stfs f30, 0x5c(r1) /* 801D1798 001CE6F8 D3 E1 00 60 */ stfs f31, 0x60(r1) /* 801D179C 001CE6FC D0 41 00 64 */ stfs f2, 0x64(r1) /* 801D17A0 001CE700 D0 21 00 68 */ stfs f1, 0x68(r1) /* 801D17A4 001CE704 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 801D17A8 001CE708 48 14 0D 35 */ bl Float__9CRandom16Fv /* 801D17AC 001CE70C C0 01 00 6C */ lfs f0, 0x6c(r1) /* 801D17B0 001CE710 7F E3 FB 78 */ mr r3, r31 /* 801D17B4 001CE714 EC 00 F8 28 */ fsubs f0, f0, f31 /* 801D17B8 001CE718 EF E1 F8 3A */ fmadds f31, f1, f0, f31 /* 801D17BC 001CE71C 48 14 0D 21 */ bl Float__9CRandom16Fv /* 801D17C0 001CE720 C0 01 00 68 */ lfs f0, 0x68(r1) /* 801D17C4 001CE724 7F E3 FB 78 */ mr r3, r31 /* 801D17C8 001CE728 C0 41 00 64 */ lfs f2, 0x64(r1) /* 801D17CC 001CE72C EC 60 F0 28 */ fsubs f3, f0, f30 /* 801D17D0 001CE730 C0 01 00 58 */ lfs f0, 0x58(r1) /* 801D17D4 001CE734 EF A2 00 28 */ fsubs f29, f2, f0 /* 801D17D8 001CE738 EF C1 F0 FA */ fmadds f30, f1, f3, f30 /* 801D17DC 001CE73C 48 14 0D 01 */ bl Float__9CRandom16Fv /* 801D17E0 001CE740 C0 01 00 58 */ lfs f0, 0x58(r1) /* 801D17E4 001CE744 38 61 00 08 */ addi r3, r1, 8 /* 801D17E8 001CE748 D3 C1 00 28 */ stfs f30, 0x28(r1) /* 801D17EC 001CE74C 38 9C 00 34 */ addi r4, r28, 0x34 /* 801D17F0 001CE750 EC 01 07 7A */ fmadds f0, f1, f29, f0 /* 801D17F4 001CE754 38 A1 00 24 */ addi r5, r1, 0x24 /* 801D17F8 001CE758 D3 E1 00 2C */ stfs f31, 0x2c(r1) /* 801D17FC 001CE75C D0 01 00 24 */ stfs f0, 0x24(r1) /* 801D1800 001CE760 48 14 12 E9 */ bl __ml__12CTransform4fCFRC9CVector3f /* 801D1804 001CE764 C0 01 00 08 */ lfs f0, 8(r1) /* 801D1808 001CE768 D0 1D 00 00 */ stfs f0, 0(r29) /* 801D180C 001CE76C C0 01 00 0C */ lfs f0, 0xc(r1) /* 801D1810 001CE770 D0 1D 00 04 */ stfs f0, 4(r29) /* 801D1814 001CE774 C0 01 00 10 */ lfs f0, 0x10(r1) /* 801D1818 001CE778 D0 1D 00 08 */ stfs f0, 8(r29) lbl_801D181C: /* 801D181C 001CE77C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 /* 801D1820 001CE780 CB E1 00 A0 */ lfd f31, 0xa0(r1) /* 801D1824 001CE784 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 /* 801D1828 001CE788 CB C1 00 90 */ lfd f30, 0x90(r1) /* 801D182C 001CE78C E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 /* 801D1830 001CE790 CB A1 00 80 */ lfd f29, 0x80(r1) /* 801D1834 001CE794 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 801D1838 001CE798 83 C1 00 78 */ lwz r30, 0x78(r1) /* 801D183C 001CE79C 83 A1 00 74 */ lwz r29, 0x74(r1) /* 801D1840 001CE7A0 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 801D1844 001CE7A4 83 81 00 70 */ lwz r28, 0x70(r1) /* 801D1848 001CE7A8 7C 08 03 A6 */ mtlr r0 /* 801D184C 001CE7AC 38 21 00 B0 */ addi r1, r1, 0xb0 /* 801D1850 001CE7B0 4E 80 00 20 */ blr .global FindClosestPlane__10CFishCloudCFRC6CAABoxRC9CVector3f FindClosestPlane__10CFishCloudCFRC6CAABoxRC9CVector3f: /* 801D1854 001CE7B4 94 21 FD 50 */ stwu r1, -0x2b0(r1) /* 801D1858 001CE7B8 7C 08 02 A6 */ mflr r0 /* 801D185C 001CE7BC 90 01 02 B4 */ stw r0, 0x2b4(r1) /* 801D1860 001CE7C0 DB E1 02 A0 */ stfd f31, 0x2a0(r1) /* 801D1864 001CE7C4 F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 /* 801D1868 001CE7C8 DB C1 02 90 */ stfd f30, 0x290(r1) /* 801D186C 001CE7CC F3 C1 02 98 */ psq_st f30, 664(r1), 0, qr0 /* 801D1870 001CE7D0 DB A1 02 80 */ stfd f29, 0x280(r1) /* 801D1874 001CE7D4 F3 A1 02 88 */ psq_st f29, 648(r1), 0, qr0 /* 801D1878 001CE7D8 DB 81 02 70 */ stfd f28, 0x270(r1) /* 801D187C 001CE7DC F3 81 02 78 */ psq_st f28, 632(r1), 0, qr0 /* 801D1880 001CE7E0 DB 61 02 60 */ stfd f27, 0x260(r1) /* 801D1884 001CE7E4 F3 61 02 68 */ psq_st f27, 616(r1), 0, qr0 /* 801D1888 001CE7E8 BF 01 02 40 */ stmw r24, 0x240(r1) /* 801D188C 001CE7EC 88 04 02 50 */ lbz r0, 0x250(r4) /* 801D1890 001CE7F0 7C 9A 23 78 */ mr r26, r4 /* 801D1894 001CE7F4 7C 7F 1B 78 */ mr r31, r3 /* 801D1898 001CE7F8 7C B8 2B 78 */ mr r24, r5 /* 801D189C 001CE7FC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 801D18A0 001CE800 7C D9 33 78 */ mr r25, r6 /* 801D18A4 001CE804 40 82 01 98 */ bne lbl_801D1A3C /* 801D18A8 001CE808 C3 A2 AB BC */ lfs f29, lbl_805AC8DC@sda21(r2) /* 801D18AC 001CE80C 3B C1 02 10 */ addi r30, r1, 0x210 /* 801D18B0 001CE810 C3 62 AB B8 */ lfs f27, lbl_805AC8D8@sda21(r2) /* 801D18B4 001CE814 3B A1 02 1C */ addi r29, r1, 0x21c /* 801D18B8 001CE818 3B 81 02 28 */ addi r28, r1, 0x228 /* 801D18BC 001CE81C 3B 60 00 00 */ li r27, 0 /* 801D18C0 001CE820 3B 40 00 00 */ li r26, 0 lbl_801D18C4: /* 801D18C4 001CE824 7F 04 C3 78 */ mr r4, r24 /* 801D18C8 001CE828 7F 45 D3 78 */ mr r5, r26 /* 801D18CC 001CE82C 38 61 01 30 */ addi r3, r1, 0x130 /* 801D18D0 001CE830 38 C0 00 00 */ li r6, 0 /* 801D18D4 001CE834 48 16 63 21 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi /* 801D18D8 001CE838 C1 81 01 30 */ lfs f12, 0x130(r1) /* 801D18DC 001CE83C 7F C4 F3 78 */ mr r4, r30 /* 801D18E0 001CE840 C1 61 01 34 */ lfs f11, 0x134(r1) /* 801D18E4 001CE844 7F 85 E3 78 */ mr r5, r28 /* 801D18E8 001CE848 C1 41 01 38 */ lfs f10, 0x138(r1) /* 801D18EC 001CE84C 7F A6 EB 78 */ mr r6, r29 /* 801D18F0 001CE850 C1 21 01 3C */ lfs f9, 0x13c(r1) /* 801D18F4 001CE854 38 61 00 54 */ addi r3, r1, 0x54 /* 801D18F8 001CE858 C1 01 01 40 */ lfs f8, 0x140(r1) /* 801D18FC 001CE85C C0 E1 01 44 */ lfs f7, 0x144(r1) /* 801D1900 001CE860 C0 C1 01 48 */ lfs f6, 0x148(r1) /* 801D1904 001CE864 C0 A1 01 4C */ lfs f5, 0x14c(r1) /* 801D1908 001CE868 C0 81 01 50 */ lfs f4, 0x150(r1) /* 801D190C 001CE86C C0 61 01 54 */ lfs f3, 0x154(r1) /* 801D1910 001CE870 C0 41 01 58 */ lfs f2, 0x158(r1) /* 801D1914 001CE874 C0 21 01 5C */ lfs f1, 0x15c(r1) /* 801D1918 001CE878 C0 01 01 60 */ lfs f0, 0x160(r1) /* 801D191C 001CE87C D1 81 02 00 */ stfs f12, 0x200(r1) /* 801D1920 001CE880 D1 61 02 04 */ stfs f11, 0x204(r1) /* 801D1924 001CE884 D1 41 02 08 */ stfs f10, 0x208(r1) /* 801D1928 001CE888 D1 21 02 0C */ stfs f9, 0x20c(r1) /* 801D192C 001CE88C D1 01 02 10 */ stfs f8, 0x210(r1) /* 801D1930 001CE890 D0 E1 02 14 */ stfs f7, 0x214(r1) /* 801D1934 001CE894 D0 C1 02 18 */ stfs f6, 0x218(r1) /* 801D1938 001CE898 D0 A1 02 1C */ stfs f5, 0x21c(r1) /* 801D193C 001CE89C D0 81 02 20 */ stfs f4, 0x220(r1) /* 801D1940 001CE8A0 D0 61 02 24 */ stfs f3, 0x224(r1) /* 801D1944 001CE8A4 D0 41 02 28 */ stfs f2, 0x228(r1) /* 801D1948 001CE8A8 D0 21 02 2C */ stfs f1, 0x22c(r1) /* 801D194C 001CE8AC D0 01 02 30 */ stfs f0, 0x230(r1) /* 801D1950 001CE8B0 48 16 57 59 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f /* 801D1954 001CE8B4 C0 21 00 58 */ lfs f1, 0x58(r1) /* 801D1958 001CE8B8 C0 19 00 04 */ lfs f0, 4(r25) /* 801D195C 001CE8BC C0 41 00 54 */ lfs f2, 0x54(r1) /* 801D1960 001CE8C0 EC 01 00 32 */ fmuls f0, f1, f0 /* 801D1964 001CE8C4 C0 39 00 00 */ lfs f1, 0(r25) /* 801D1968 001CE8C8 C0 81 00 5C */ lfs f4, 0x5c(r1) /* 801D196C 001CE8CC C0 79 00 08 */ lfs f3, 8(r25) /* 801D1970 001CE8D0 EC 22 00 7A */ fmadds f1, f2, f1, f0 /* 801D1974 001CE8D4 C0 01 00 60 */ lfs f0, 0x60(r1) /* 801D1978 001CE8D8 EC 24 08 FA */ fmadds f1, f4, f3, f1 /* 801D197C 001CE8DC EC 01 00 28 */ fsubs f0, f1, f0 /* 801D1980 001CE8E0 FC 00 D8 40 */ fcmpo cr0, f0, f27 /* 801D1984 001CE8E4 4C 41 13 82 */ cror 2, 1, 2 /* 801D1988 001CE8E8 40 82 00 14 */ bne lbl_801D199C /* 801D198C 001CE8EC FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 801D1990 001CE8F0 40 80 00 0C */ bge lbl_801D199C /* 801D1994 001CE8F4 7F 5B D3 78 */ mr r27, r26 /* 801D1998 001CE8F8 FF A0 00 90 */ fmr f29, f0 lbl_801D199C: /* 801D199C 001CE8FC 3B 5A 00 01 */ addi r26, r26, 1 /* 801D19A0 001CE900 2C 1A 00 06 */ cmpwi r26, 6 /* 801D19A4 001CE904 41 80 FF 20 */ blt lbl_801D18C4 /* 801D19A8 001CE908 7F 04 C3 78 */ mr r4, r24 /* 801D19AC 001CE90C 7F 65 DB 78 */ mr r5, r27 /* 801D19B0 001CE910 38 61 00 FC */ addi r3, r1, 0xfc /* 801D19B4 001CE914 38 C0 00 00 */ li r6, 0 /* 801D19B8 001CE918 48 16 62 3D */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi /* 801D19BC 001CE91C C1 81 00 FC */ lfs f12, 0xfc(r1) /* 801D19C0 001CE920 38 81 01 DC */ addi r4, r1, 0x1dc /* 801D19C4 001CE924 C1 61 01 00 */ lfs f11, 0x100(r1) /* 801D19C8 001CE928 38 C1 01 E8 */ addi r6, r1, 0x1e8 /* 801D19CC 001CE92C C1 41 01 04 */ lfs f10, 0x104(r1) /* 801D19D0 001CE930 38 A1 01 F4 */ addi r5, r1, 0x1f4 /* 801D19D4 001CE934 C1 21 01 08 */ lfs f9, 0x108(r1) /* 801D19D8 001CE938 7F E3 FB 78 */ mr r3, r31 /* 801D19DC 001CE93C C1 01 01 0C */ lfs f8, 0x10c(r1) /* 801D19E0 001CE940 C0 E1 01 10 */ lfs f7, 0x110(r1) /* 801D19E4 001CE944 C0 C1 01 14 */ lfs f6, 0x114(r1) /* 801D19E8 001CE948 C0 A1 01 18 */ lfs f5, 0x118(r1) /* 801D19EC 001CE94C C0 81 01 1C */ lfs f4, 0x11c(r1) /* 801D19F0 001CE950 C0 61 01 20 */ lfs f3, 0x120(r1) /* 801D19F4 001CE954 C0 41 01 24 */ lfs f2, 0x124(r1) /* 801D19F8 001CE958 C0 21 01 28 */ lfs f1, 0x128(r1) /* 801D19FC 001CE95C C0 01 01 2C */ lfs f0, 0x12c(r1) /* 801D1A00 001CE960 D1 81 01 CC */ stfs f12, 0x1cc(r1) /* 801D1A04 001CE964 D1 61 01 D0 */ stfs f11, 0x1d0(r1) /* 801D1A08 001CE968 D1 41 01 D4 */ stfs f10, 0x1d4(r1) /* 801D1A0C 001CE96C D1 21 01 D8 */ stfs f9, 0x1d8(r1) /* 801D1A10 001CE970 D1 01 01 DC */ stfs f8, 0x1dc(r1) /* 801D1A14 001CE974 D0 E1 01 E0 */ stfs f7, 0x1e0(r1) /* 801D1A18 001CE978 D0 C1 01 E4 */ stfs f6, 0x1e4(r1) /* 801D1A1C 001CE97C D0 A1 01 E8 */ stfs f5, 0x1e8(r1) /* 801D1A20 001CE980 D0 81 01 EC */ stfs f4, 0x1ec(r1) /* 801D1A24 001CE984 D0 61 01 F0 */ stfs f3, 0x1f0(r1) /* 801D1A28 001CE988 D0 41 01 F4 */ stfs f2, 0x1f4(r1) /* 801D1A2C 001CE98C D0 21 01 F8 */ stfs f1, 0x1f8(r1) /* 801D1A30 001CE990 D0 01 01 FC */ stfs f0, 0x1fc(r1) /* 801D1A34 001CE994 48 16 56 75 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f /* 801D1A38 001CE998 48 00 02 4C */ b lbl_801D1C84 lbl_801D1A3C: /* 801D1A3C 001CE99C C0 39 00 04 */ lfs f1, 4(r25) /* 801D1A40 001CE9A0 3B DA 00 34 */ addi r30, r26, 0x34 /* 801D1A44 001CE9A4 C0 1A 00 50 */ lfs f0, 0x50(r26) /* 801D1A48 001CE9A8 7F C4 F3 78 */ mr r4, r30 /* 801D1A4C 001CE9AC C0 79 00 08 */ lfs f3, 8(r25) /* 801D1A50 001CE9B0 38 61 00 38 */ addi r3, r1, 0x38 /* 801D1A54 001CE9B4 C0 5A 00 60 */ lfs f2, 0x60(r26) /* 801D1A58 001CE9B8 EC 81 00 28 */ fsubs f4, f1, f0 /* 801D1A5C 001CE9BC C0 39 00 00 */ lfs f1, 0(r25) /* 801D1A60 001CE9C0 38 A1 00 2C */ addi r5, r1, 0x2c /* 801D1A64 001CE9C4 C0 1A 00 40 */ lfs f0, 0x40(r26) /* 801D1A68 001CE9C8 EC 43 10 28 */ fsubs f2, f3, f2 /* 801D1A6C 001CE9CC D0 81 00 30 */ stfs f4, 0x30(r1) /* 801D1A70 001CE9D0 EC 01 00 28 */ fsubs f0, f1, f0 /* 801D1A74 001CE9D4 D0 41 00 34 */ stfs f2, 0x34(r1) /* 801D1A78 001CE9D8 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 801D1A7C 001CE9DC 48 14 0F A9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 801D1A80 001CE9E0 C3 E1 00 38 */ lfs f31, 0x38(r1) /* 801D1A84 001CE9E4 7F 44 D3 78 */ mr r4, r26 /* 801D1A88 001CE9E8 C3 C1 00 3C */ lfs f30, 0x3c(r1) /* 801D1A8C 001CE9EC 38 61 00 64 */ addi r3, r1, 0x64 /* 801D1A90 001CE9F0 C3 A1 00 40 */ lfs f29, 0x40(r1) /* 801D1A94 001CE9F4 48 00 02 E5 */ bl GetUntransformedBoundingBox__10CFishCloudCFv /* 801D1A98 001CE9F8 C0 A1 00 64 */ lfs f5, 0x64(r1) /* 801D1A9C 001CE9FC 3B 81 01 A8 */ addi r28, r1, 0x1a8 /* 801D1AA0 001CEA00 C0 81 00 68 */ lfs f4, 0x68(r1) /* 801D1AA4 001CEA04 3B A1 01 B4 */ addi r29, r1, 0x1b4 /* 801D1AA8 001CEA08 C0 61 00 6C */ lfs f3, 0x6c(r1) /* 801D1AAC 001CEA0C 3B 61 01 C0 */ addi r27, r1, 0x1c0 /* 801D1AB0 001CEA10 C0 41 00 70 */ lfs f2, 0x70(r1) /* 801D1AB4 001CEA14 3B 40 00 00 */ li r26, 0 /* 801D1AB8 001CEA18 C0 21 00 74 */ lfs f1, 0x74(r1) /* 801D1ABC 001CEA1C 3B 20 00 00 */ li r25, 0 /* 801D1AC0 001CEA20 C0 01 00 78 */ lfs f0, 0x78(r1) /* 801D1AC4 001CEA24 D0 A1 00 7C */ stfs f5, 0x7c(r1) /* 801D1AC8 001CEA28 C3 82 AB BC */ lfs f28, lbl_805AC8DC@sda21(r2) /* 801D1ACC 001CEA2C D0 81 00 80 */ stfs f4, 0x80(r1) /* 801D1AD0 001CEA30 C3 62 AB B8 */ lfs f27, lbl_805AC8D8@sda21(r2) /* 801D1AD4 001CEA34 D0 61 00 84 */ stfs f3, 0x84(r1) /* 801D1AD8 001CEA38 D0 41 00 88 */ stfs f2, 0x88(r1) /* 801D1ADC 001CEA3C D0 21 00 8C */ stfs f1, 0x8c(r1) /* 801D1AE0 001CEA40 D0 01 00 90 */ stfs f0, 0x90(r1) lbl_801D1AE4: /* 801D1AE4 001CEA44 7F 25 CB 78 */ mr r5, r25 /* 801D1AE8 001CEA48 38 61 00 C8 */ addi r3, r1, 0xc8 /* 801D1AEC 001CEA4C 38 81 00 7C */ addi r4, r1, 0x7c /* 801D1AF0 001CEA50 38 C0 00 00 */ li r6, 0 /* 801D1AF4 001CEA54 48 16 61 01 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi /* 801D1AF8 001CEA58 C1 81 00 C8 */ lfs f12, 0xc8(r1) /* 801D1AFC 001CEA5C 7F 84 E3 78 */ mr r4, r28 /* 801D1B00 001CEA60 C1 61 00 CC */ lfs f11, 0xcc(r1) /* 801D1B04 001CEA64 7F 65 DB 78 */ mr r5, r27 /* 801D1B08 001CEA68 C1 41 00 D0 */ lfs f10, 0xd0(r1) /* 801D1B0C 001CEA6C 7F A6 EB 78 */ mr r6, r29 /* 801D1B10 001CEA70 C1 21 00 D4 */ lfs f9, 0xd4(r1) /* 801D1B14 001CEA74 38 61 00 44 */ addi r3, r1, 0x44 /* 801D1B18 001CEA78 C1 01 00 D8 */ lfs f8, 0xd8(r1) /* 801D1B1C 001CEA7C C0 E1 00 DC */ lfs f7, 0xdc(r1) /* 801D1B20 001CEA80 C0 C1 00 E0 */ lfs f6, 0xe0(r1) /* 801D1B24 001CEA84 C0 A1 00 E4 */ lfs f5, 0xe4(r1) /* 801D1B28 001CEA88 C0 81 00 E8 */ lfs f4, 0xe8(r1) /* 801D1B2C 001CEA8C C0 61 00 EC */ lfs f3, 0xec(r1) /* 801D1B30 001CEA90 C0 41 00 F0 */ lfs f2, 0xf0(r1) /* 801D1B34 001CEA94 C0 21 00 F4 */ lfs f1, 0xf4(r1) /* 801D1B38 001CEA98 C0 01 00 F8 */ lfs f0, 0xf8(r1) /* 801D1B3C 001CEA9C D1 81 01 98 */ stfs f12, 0x198(r1) /* 801D1B40 001CEAA0 D1 61 01 9C */ stfs f11, 0x19c(r1) /* 801D1B44 001CEAA4 D1 41 01 A0 */ stfs f10, 0x1a0(r1) /* 801D1B48 001CEAA8 D1 21 01 A4 */ stfs f9, 0x1a4(r1) /* 801D1B4C 001CEAAC D1 01 01 A8 */ stfs f8, 0x1a8(r1) /* 801D1B50 001CEAB0 D0 E1 01 AC */ stfs f7, 0x1ac(r1) /* 801D1B54 001CEAB4 D0 C1 01 B0 */ stfs f6, 0x1b0(r1) /* 801D1B58 001CEAB8 D0 A1 01 B4 */ stfs f5, 0x1b4(r1) /* 801D1B5C 001CEABC D0 81 01 B8 */ stfs f4, 0x1b8(r1) /* 801D1B60 001CEAC0 D0 61 01 BC */ stfs f3, 0x1bc(r1) /* 801D1B64 001CEAC4 D0 41 01 C0 */ stfs f2, 0x1c0(r1) /* 801D1B68 001CEAC8 D0 21 01 C4 */ stfs f1, 0x1c4(r1) /* 801D1B6C 001CEACC D0 01 01 C8 */ stfs f0, 0x1c8(r1) /* 801D1B70 001CEAD0 48 16 55 39 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f /* 801D1B74 001CEAD4 C0 01 00 48 */ lfs f0, 0x48(r1) /* 801D1B78 001CEAD8 C0 41 00 44 */ lfs f2, 0x44(r1) /* 801D1B7C 001CEADC EC 20 07 B2 */ fmuls f1, f0, f30 /* 801D1B80 001CEAE0 C0 61 00 4C */ lfs f3, 0x4c(r1) /* 801D1B84 001CEAE4 C0 01 00 50 */ lfs f0, 0x50(r1) /* 801D1B88 001CEAE8 EC 22 0F FA */ fmadds f1, f2, f31, f1 /* 801D1B8C 001CEAEC EC 23 0F 7A */ fmadds f1, f3, f29, f1 /* 801D1B90 001CEAF0 EC 01 00 28 */ fsubs f0, f1, f0 /* 801D1B94 001CEAF4 FC 00 D8 40 */ fcmpo cr0, f0, f27 /* 801D1B98 001CEAF8 4C 41 13 82 */ cror 2, 1, 2 /* 801D1B9C 001CEAFC 40 82 00 14 */ bne lbl_801D1BB0 /* 801D1BA0 001CEB00 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 801D1BA4 001CEB04 40 80 00 0C */ bge lbl_801D1BB0 /* 801D1BA8 001CEB08 7F 3A CB 78 */ mr r26, r25 /* 801D1BAC 001CEB0C FF 80 00 90 */ fmr f28, f0 lbl_801D1BB0: /* 801D1BB0 001CEB10 3B 39 00 01 */ addi r25, r25, 1 /* 801D1BB4 001CEB14 2C 19 00 06 */ cmpwi r25, 6 /* 801D1BB8 001CEB18 41 80 FF 2C */ blt lbl_801D1AE4 /* 801D1BBC 001CEB1C 7F 45 D3 78 */ mr r5, r26 /* 801D1BC0 001CEB20 38 61 00 94 */ addi r3, r1, 0x94 /* 801D1BC4 001CEB24 38 81 00 7C */ addi r4, r1, 0x7c /* 801D1BC8 001CEB28 38 C0 00 00 */ li r6, 0 /* 801D1BCC 001CEB2C 48 16 60 29 */ bl GetTri__6CAABoxCFQ26CAABox10EBoxFaceIdi /* 801D1BD0 001CEB30 C1 81 00 94 */ lfs f12, 0x94(r1) /* 801D1BD4 001CEB34 38 A1 01 80 */ addi r5, r1, 0x180 /* 801D1BD8 001CEB38 C1 61 00 98 */ lfs f11, 0x98(r1) /* 801D1BDC 001CEB3C 7F C4 F3 78 */ mr r4, r30 /* 801D1BE0 001CEB40 C1 41 00 9C */ lfs f10, 0x9c(r1) /* 801D1BE4 001CEB44 3B 81 01 74 */ addi r28, r1, 0x174 /* 801D1BE8 001CEB48 C1 21 00 A0 */ lfs f9, 0xa0(r1) /* 801D1BEC 001CEB4C 3B 61 01 8C */ addi r27, r1, 0x18c /* 801D1BF0 001CEB50 C1 01 00 A4 */ lfs f8, 0xa4(r1) /* 801D1BF4 001CEB54 38 61 00 08 */ addi r3, r1, 8 /* 801D1BF8 001CEB58 C0 E1 00 A8 */ lfs f7, 0xa8(r1) /* 801D1BFC 001CEB5C C0 C1 00 AC */ lfs f6, 0xac(r1) /* 801D1C00 001CEB60 C0 A1 00 B0 */ lfs f5, 0xb0(r1) /* 801D1C04 001CEB64 C0 81 00 B4 */ lfs f4, 0xb4(r1) /* 801D1C08 001CEB68 C0 61 00 B8 */ lfs f3, 0xb8(r1) /* 801D1C0C 001CEB6C C0 41 00 BC */ lfs f2, 0xbc(r1) /* 801D1C10 001CEB70 C0 21 00 C0 */ lfs f1, 0xc0(r1) /* 801D1C14 001CEB74 C0 01 00 C4 */ lfs f0, 0xc4(r1) /* 801D1C18 001CEB78 D1 81 01 64 */ stfs f12, 0x164(r1) /* 801D1C1C 001CEB7C D1 61 01 68 */ stfs f11, 0x168(r1) /* 801D1C20 001CEB80 D1 41 01 6C */ stfs f10, 0x16c(r1) /* 801D1C24 001CEB84 D1 21 01 70 */ stfs f9, 0x170(r1) /* 801D1C28 001CEB88 D1 01 01 74 */ stfs f8, 0x174(r1) /* 801D1C2C 001CEB8C D0 E1 01 78 */ stfs f7, 0x178(r1) /* 801D1C30 001CEB90 D0 C1 01 7C */ stfs f6, 0x17c(r1) /* 801D1C34 001CEB94 D0 A1 01 80 */ stfs f5, 0x180(r1) /* 801D1C38 001CEB98 D0 81 01 84 */ stfs f4, 0x184(r1) /* 801D1C3C 001CEB9C D0 61 01 88 */ stfs f3, 0x188(r1) /* 801D1C40 001CEBA0 D0 41 01 8C */ stfs f2, 0x18c(r1) /* 801D1C44 001CEBA4 D0 21 01 90 */ stfs f1, 0x190(r1) /* 801D1C48 001CEBA8 D0 01 01 94 */ stfs f0, 0x194(r1) /* 801D1C4C 001CEBAC 48 14 0E 9D */ bl __ml__12CTransform4fCFRC9CVector3f /* 801D1C50 001CEBB0 7F C4 F3 78 */ mr r4, r30 /* 801D1C54 001CEBB4 7F 65 DB 78 */ mr r5, r27 /* 801D1C58 001CEBB8 38 61 00 14 */ addi r3, r1, 0x14 /* 801D1C5C 001CEBBC 48 14 0E 8D */ bl __ml__12CTransform4fCFRC9CVector3f /* 801D1C60 001CEBC0 7F C4 F3 78 */ mr r4, r30 /* 801D1C64 001CEBC4 7F 85 E3 78 */ mr r5, r28 /* 801D1C68 001CEBC8 38 61 00 20 */ addi r3, r1, 0x20 /* 801D1C6C 001CEBCC 48 14 0E 7D */ bl __ml__12CTransform4fCFRC9CVector3f /* 801D1C70 001CEBD0 7F E3 FB 78 */ mr r3, r31 /* 801D1C74 001CEBD4 38 81 00 20 */ addi r4, r1, 0x20 /* 801D1C78 001CEBD8 38 A1 00 14 */ addi r5, r1, 0x14 /* 801D1C7C 001CEBDC 38 C1 00 08 */ addi r6, r1, 8 /* 801D1C80 001CEBE0 48 16 54 29 */ bl __ct__6CPlaneFRC9CVector3fRC9CVector3fRC9CVector3f lbl_801D1C84: /* 801D1C84 001CEBE4 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 /* 801D1C88 001CEBE8 CB E1 02 A0 */ lfd f31, 0x2a0(r1) /* 801D1C8C 001CEBEC E3 C1 02 98 */ psq_l f30, 664(r1), 0, qr0 /* 801D1C90 001CEBF0 CB C1 02 90 */ lfd f30, 0x290(r1) /* 801D1C94 001CEBF4 E3 A1 02 88 */ psq_l f29, 648(r1), 0, qr0 /* 801D1C98 001CEBF8 CB A1 02 80 */ lfd f29, 0x280(r1) /* 801D1C9C 001CEBFC E3 81 02 78 */ psq_l f28, 632(r1), 0, qr0 /* 801D1CA0 001CEC00 CB 81 02 70 */ lfd f28, 0x270(r1) /* 801D1CA4 001CEC04 E3 61 02 68 */ psq_l f27, 616(r1), 0, qr0 /* 801D1CA8 001CEC08 CB 61 02 60 */ lfd f27, 0x260(r1) /* 801D1CAC 001CEC0C BB 01 02 40 */ lmw r24, 0x240(r1) /* 801D1CB0 001CEC10 80 01 02 B4 */ lwz r0, 0x2b4(r1) /* 801D1CB4 001CEC14 7C 08 03 A6 */ mtlr r0 /* 801D1CB8 001CEC18 38 21 02 B0 */ addi r1, r1, 0x2b0 /* 801D1CBC 001CEC1C 4E 80 00 20 */ blr .global PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f PointInBox__10CFishCloudCFRC6CAABoxRC9CVector3f: /* 801D1CC0 001CEC20 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801D1CC4 001CEC24 7C 08 02 A6 */ mflr r0 /* 801D1CC8 001CEC28 7C A6 2B 78 */ mr r6, r5 /* 801D1CCC 001CEC2C 90 01 00 54 */ stw r0, 0x54(r1) /* 801D1CD0 001CEC30 93 E1 00 4C */ stw r31, 0x4c(r1) /* 801D1CD4 001CEC34 7C 7F 1B 78 */ mr r31, r3 /* 801D1CD8 001CEC38 88 03 02 50 */ lbz r0, 0x250(r3) /* 801D1CDC 001CEC3C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 801D1CE0 001CEC40 40 82 00 14 */ bne lbl_801D1CF4 /* 801D1CE4 001CEC44 7C 83 23 78 */ mr r3, r4 /* 801D1CE8 001CEC48 7C C4 33 78 */ mr r4, r6 /* 801D1CEC 001CEC4C 48 16 58 49 */ bl PointInside__6CAABoxCFRC9CVector3f /* 801D1CF0 001CEC50 48 00 00 74 */ b lbl_801D1D64 lbl_801D1CF4: /* 801D1CF4 001CEC54 C0 26 00 04 */ lfs f1, 4(r6) /* 801D1CF8 001CEC58 38 61 00 14 */ addi r3, r1, 0x14 /* 801D1CFC 001CEC5C C0 1F 00 50 */ lfs f0, 0x50(r31) /* 801D1D00 001CEC60 38 9F 00 34 */ addi r4, r31, 0x34 /* 801D1D04 001CEC64 C0 66 00 08 */ lfs f3, 8(r6) /* 801D1D08 001CEC68 38 A1 00 08 */ addi r5, r1, 8 /* 801D1D0C 001CEC6C C0 5F 00 60 */ lfs f2, 0x60(r31) /* 801D1D10 001CEC70 EC 81 00 28 */ fsubs f4, f1, f0 /* 801D1D14 001CEC74 C0 26 00 00 */ lfs f1, 0(r6) /* 801D1D18 001CEC78 C0 1F 00 40 */ lfs f0, 0x40(r31) /* 801D1D1C 001CEC7C EC 43 10 28 */ fsubs f2, f3, f2 /* 801D1D20 001CEC80 D0 81 00 0C */ stfs f4, 0xc(r1) /* 801D1D24 001CEC84 EC 01 00 28 */ fsubs f0, f1, f0 /* 801D1D28 001CEC88 D0 41 00 10 */ stfs f2, 0x10(r1) /* 801D1D2C 001CEC8C D0 01 00 08 */ stfs f0, 8(r1) /* 801D1D30 001CEC90 48 14 0C F5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 801D1D34 001CEC94 C0 41 00 14 */ lfs f2, 0x14(r1) /* 801D1D38 001CEC98 7F E4 FB 78 */ mr r4, r31 /* 801D1D3C 001CEC9C C0 21 00 18 */ lfs f1, 0x18(r1) /* 801D1D40 001CECA0 38 61 00 2C */ addi r3, r1, 0x2c /* 801D1D44 001CECA4 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 801D1D48 001CECA8 D0 41 00 20 */ stfs f2, 0x20(r1) /* 801D1D4C 001CECAC D0 21 00 24 */ stfs f1, 0x24(r1) /* 801D1D50 001CECB0 D0 01 00 28 */ stfs f0, 0x28(r1) /* 801D1D54 001CECB4 48 00 00 25 */ bl GetUntransformedBoundingBox__10CFishCloudCFv /* 801D1D58 001CECB8 38 61 00 2C */ addi r3, r1, 0x2c /* 801D1D5C 001CECBC 38 81 00 20 */ addi r4, r1, 0x20 /* 801D1D60 001CECC0 48 16 57 D5 */ bl PointInside__6CAABoxCFRC9CVector3f lbl_801D1D64: /* 801D1D64 001CECC4 80 01 00 54 */ lwz r0, 0x54(r1) /* 801D1D68 001CECC8 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 801D1D6C 001CECCC 7C 08 03 A6 */ mtlr r0 /* 801D1D70 001CECD0 38 21 00 50 */ addi r1, r1, 0x50 /* 801D1D74 001CECD4 4E 80 00 20 */ blr .global GetUntransformedBoundingBox__10CFishCloudCFv GetUntransformedBoundingBox__10CFishCloudCFv: /* 801D1D78 001CECD8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801D1D7C 001CECDC 7C 08 02 A6 */ mflr r0 /* 801D1D80 001CECE0 C0 62 AC 04 */ lfs f3, lbl_805AC924@sda21(r2) /* 801D1D84 001CECE4 90 01 00 24 */ stw r0, 0x24(r1) /* 801D1D88 001CECE8 38 A1 00 14 */ addi r5, r1, 0x14 /* 801D1D8C 001CECEC C0 44 01 28 */ lfs f2, 0x128(r4) /* 801D1D90 001CECF0 C0 24 01 24 */ lfs f1, 0x124(r4) /* 801D1D94 001CECF4 C0 04 01 20 */ lfs f0, 0x120(r4) /* 801D1D98 001CECF8 EC 43 00 B2 */ fmuls f2, f3, f2 /* 801D1D9C 001CECFC EC 83 00 72 */ fmuls f4, f3, f1 /* 801D1DA0 001CED00 38 81 00 08 */ addi r4, r1, 8 /* 801D1DA4 001CED04 EC 63 00 32 */ fmuls f3, f3, f0 /* 801D1DA8 001CED08 FC 00 10 50 */ fneg f0, f2 /* 801D1DAC 001CED0C D0 41 00 1C */ stfs f2, 0x1c(r1) /* 801D1DB0 001CED10 FC 20 20 50 */ fneg f1, f4 /* 801D1DB4 001CED14 FC 40 18 50 */ fneg f2, f3 /* 801D1DB8 001CED18 D0 61 00 14 */ stfs f3, 0x14(r1) /* 801D1DBC 001CED1C D0 81 00 18 */ stfs f4, 0x18(r1) /* 801D1DC0 001CED20 D0 41 00 08 */ stfs f2, 8(r1) /* 801D1DC4 001CED24 D0 21 00 0C */ stfs f1, 0xc(r1) /* 801D1DC8 001CED28 D0 01 00 10 */ stfs f0, 0x10(r1) /* 801D1DCC 001CED2C 48 16 67 3D */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 801D1DD0 001CED30 80 01 00 24 */ lwz r0, 0x24(r1) /* 801D1DD4 001CED34 7C 08 03 A6 */ mtlr r0 /* 801D1DD8 001CED38 38 21 00 20 */ addi r1, r1, 0x20 /* 801D1DDC 001CED3C 4E 80 00 20 */ blr .global GetBoundingBox__10CFishCloudCFv GetBoundingBox__10CFishCloudCFv: /* 801D1DE0 001CED40 94 21 FF C0 */ stwu r1, -0x40(r1) /* 801D1DE4 001CED44 7C 08 02 A6 */ mflr r0 /* 801D1DE8 001CED48 90 01 00 44 */ stw r0, 0x44(r1) /* 801D1DEC 001CED4C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 801D1DF0 001CED50 7C 9F 23 78 */ mr r31, r4 /* 801D1DF4 001CED54 93 C1 00 38 */ stw r30, 0x38(r1) /* 801D1DF8 001CED58 7C 7E 1B 78 */ mr r30, r3 /* 801D1DFC 001CED5C 38 61 00 08 */ addi r3, r1, 8 /* 801D1E00 001CED60 4B FF FF 79 */ bl GetUntransformedBoundingBox__10CFishCloudCFv /* 801D1E04 001CED64 C0 A1 00 08 */ lfs f5, 8(r1) /* 801D1E08 001CED68 7F C3 F3 78 */ mr r3, r30 /* 801D1E0C 001CED6C C0 81 00 0C */ lfs f4, 0xc(r1) /* 801D1E10 001CED70 38 81 00 20 */ addi r4, r1, 0x20 /* 801D1E14 001CED74 C0 61 00 10 */ lfs f3, 0x10(r1) /* 801D1E18 001CED78 38 BF 00 34 */ addi r5, r31, 0x34 /* 801D1E1C 001CED7C C0 41 00 14 */ lfs f2, 0x14(r1) /* 801D1E20 001CED80 C0 21 00 18 */ lfs f1, 0x18(r1) /* 801D1E24 001CED84 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 801D1E28 001CED88 D0 A1 00 20 */ stfs f5, 0x20(r1) /* 801D1E2C 001CED8C D0 81 00 24 */ stfs f4, 0x24(r1) /* 801D1E30 001CED90 D0 61 00 28 */ stfs f3, 0x28(r1) /* 801D1E34 001CED94 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 801D1E38 001CED98 D0 21 00 30 */ stfs f1, 0x30(r1) /* 801D1E3C 001CED9C D0 01 00 34 */ stfs f0, 0x34(r1) /* 801D1E40 001CEDA0 48 16 5A BD */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f /* 801D1E44 001CEDA4 80 01 00 44 */ lwz r0, 0x44(r1) /* 801D1E48 001CEDA8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 801D1E4C 001CEDAC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 801D1E50 001CEDB0 7C 08 03 A6 */ mtlr r0 /* 801D1E54 001CEDB4 38 21 00 40 */ addi r1, r1, 0x40 /* 801D1E58 001CEDB8 4E 80 00 20 */ blr .global CalculateRenderBounds__10CFishCloudFv CalculateRenderBounds__10CFishCloudFv: /* 801D1E5C 001CEDBC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 801D1E60 001CEDC0 7C 08 02 A6 */ mflr r0 /* 801D1E64 001CEDC4 90 01 00 44 */ stw r0, 0x44(r1) /* 801D1E68 001CEDC8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 801D1E6C 001CEDCC 7C 7F 1B 78 */ mr r31, r3 /* 801D1E70 001CEDD0 38 61 00 08 */ addi r3, r1, 8 /* 801D1E74 001CEDD4 7F E4 FB 78 */ mr r4, r31 /* 801D1E78 001CEDD8 4B FF FF 69 */ bl GetBoundingBox__10CFishCloudCFv /* 801D1E7C 001CEDDC C0 21 00 08 */ lfs f1, 8(r1) /* 801D1E80 001CEDE0 C0 01 00 0C */ lfs f0, 0xc(r1) /* 801D1E84 001CEDE4 D0 21 00 20 */ stfs f1, 0x20(r1) /* 801D1E88 001CEDE8 C0 61 00 10 */ lfs f3, 0x10(r1) /* 801D1E8C 001CEDEC D0 01 00 24 */ stfs f0, 0x24(r1) /* 801D1E90 001CEDF0 C0 41 00 14 */ lfs f2, 0x14(r1) /* 801D1E94 001CEDF4 C0 21 00 18 */ lfs f1, 0x18(r1) /* 801D1E98 001CEDF8 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 801D1E9C 001CEDFC 80 61 00 20 */ lwz r3, 0x20(r1) /* 801D1EA0 001CEE00 D0 61 00 28 */ stfs f3, 0x28(r1) /* 801D1EA4 001CEE04 80 01 00 24 */ lwz r0, 0x24(r1) /* 801D1EA8 001CEE08 90 7F 00 9C */ stw r3, 0x9c(r31) /* 801D1EAC 001CEE0C 80 61 00 28 */ lwz r3, 0x28(r1) /* 801D1EB0 001CEE10 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 801D1EB4 001CEE14 90 1F 00 A0 */ stw r0, 0xa0(r31) /* 801D1EB8 001CEE18 80 01 00 2C */ lwz r0, 0x2c(r1) /* 801D1EBC 001CEE1C D0 21 00 30 */ stfs f1, 0x30(r1) /* 801D1EC0 001CEE20 90 7F 00 A4 */ stw r3, 0xa4(r31) /* 801D1EC4 001CEE24 80 61 00 30 */ lwz r3, 0x30(r1) /* 801D1EC8 001CEE28 D0 01 00 34 */ stfs f0, 0x34(r1) /* 801D1ECC 001CEE2C 90 1F 00 A8 */ stw r0, 0xa8(r31) /* 801D1ED0 001CEE30 80 01 00 34 */ lwz r0, 0x34(r1) /* 801D1ED4 001CEE34 90 7F 00 AC */ stw r3, 0xac(r31) /* 801D1ED8 001CEE38 90 1F 00 B0 */ stw r0, 0xb0(r31) /* 801D1EDC 001CEE3C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 801D1EE0 001CEE40 80 01 00 44 */ lwz r0, 0x44(r1) /* 801D1EE4 001CEE44 7C 08 03 A6 */ mtlr r0 /* 801D1EE8 001CEE48 38 21 00 40 */ addi r1, r1, 0x40 /* 801D1EEC 001CEE4C 4E 80 00 20 */ blr .global Accept__10CFishCloudFR8IVisitor Accept__10CFishCloudFR8IVisitor: /* 801D1EF0 001CEE50 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801D1EF4 001CEE54 7C 08 02 A6 */ mflr r0 /* 801D1EF8 001CEE58 90 01 00 14 */ stw r0, 0x14(r1) /* 801D1EFC 001CEE5C 7C 60 1B 78 */ mr r0, r3 /* 801D1F00 001CEE60 7C 83 23 78 */ mr r3, r4 /* 801D1F04 001CEE64 81 84 00 00 */ lwz r12, 0(r4) /* 801D1F08 001CEE68 7C 04 03 78 */ mr r4, r0 /* 801D1F0C 001CEE6C 81 8C 00 30 */ lwz r12, 0x30(r12) /* 801D1F10 001CEE70 7D 89 03 A6 */ mtctr r12 /* 801D1F14 001CEE74 4E 80 04 21 */ bctrl /* 801D1F18 001CEE78 80 01 00 14 */ lwz r0, 0x14(r1) /* 801D1F1C 001CEE7C 7C 08 03 A6 */ mtlr r0 /* 801D1F20 001CEE80 38 21 00 10 */ addi r1, r1, 0x10 /* 801D1F24 001CEE84 4E 80 00 20 */ blr .global sub_801d1f28 sub_801d1f28: /* 801D1F28 001CEE88 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 801D1F2C 001CEE8C 7C 08 02 A6 */ mflr r0 /* 801D1F30 001CEE90 90 01 00 A4 */ stw r0, 0xa4(r1) /* 801D1F34 001CEE94 DB E1 00 90 */ stfd f31, 0x90(r1) /* 801D1F38 001CEE98 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 801D1F3C 001CEE9C DB C1 00 80 */ stfd f30, 0x80(r1) /* 801D1F40 001CEEA0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 801D1F44 001CEEA4 BE C1 00 58 */ stmw r22, 0x58(r1) /* 801D1F48 001CEEA8 7C 79 1B 78 */ mr r25, r3 /* 801D1F4C 001CEEAC 7C 9A 23 78 */ mr r26, r4 /* 801D1F50 001CEEB0 3B D9 01 7C */ addi r30, r25, 0x17c /* 801D1F54 001CEEB4 7C BB 2B 78 */ mr r27, r5 /* 801D1F58 001CEEB8 7F D8 F3 78 */ mr r24, r30 /* 801D1F5C 001CEEBC 3A E0 00 00 */ li r23, 0 /* 801D1F60 001CEEC0 48 00 00 28 */ b lbl_801D1F88 lbl_801D1F64: /* 801D1F64 001CEEC4 28 18 00 00 */ cmplwi r24, 0 /* 801D1F68 001CEEC8 41 82 00 18 */ beq lbl_801D1F80 /* 801D1F6C 001CEECC 88 18 00 00 */ lbz r0, 0(r24) /* 801D1F70 001CEED0 28 00 00 00 */ cmplwi r0, 0 /* 801D1F74 001CEED4 41 82 00 0C */ beq lbl_801D1F80 /* 801D1F78 001CEED8 80 78 00 04 */ lwz r3, 4(r24) /* 801D1F7C 001CEEDC 48 14 39 B5 */ bl Free__7CMemoryFPCv lbl_801D1F80: /* 801D1F80 001CEEE0 3B 18 00 08 */ addi r24, r24, 8 /* 801D1F84 001CEEE4 3A F7 00 01 */ addi r23, r23, 1 lbl_801D1F88: /* 801D1F88 001CEEE8 80 19 01 78 */ lwz r0, 0x178(r25) /* 801D1F8C 001CEEEC 7C 17 00 00 */ cmpw r23, r0 /* 801D1F90 001CEEF0 41 80 FF D4 */ blt lbl_801D1F64 /* 801D1F94 001CEEF4 38 60 00 00 */ li r3, 0 /* 801D1F98 001CEEF8 3B B9 01 A0 */ addi r29, r25, 0x1a0 /* 801D1F9C 001CEEFC 90 79 01 78 */ stw r3, 0x178(r25) /* 801D1FA0 001CEF00 80 B9 01 9C */ lwz r5, 0x19c(r25) /* 801D1FA4 001CEF04 2C 05 00 00 */ cmpwi r5, 0 /* 801D1FA8 001CEF08 40 81 00 40 */ ble lbl_801D1FE8 /* 801D1FAC 001CEF0C 2C 05 00 08 */ cmpwi r5, 8 /* 801D1FB0 001CEF10 38 85 FF F8 */ addi r4, r5, -8 /* 801D1FB4 001CEF14 40 81 00 20 */ ble lbl_801D1FD4 /* 801D1FB8 001CEF18 38 04 00 07 */ addi r0, r4, 7 /* 801D1FBC 001CEF1C 54 00 E8 FE */ srwi r0, r0, 3 /* 801D1FC0 001CEF20 7C 09 03 A6 */ mtctr r0 /* 801D1FC4 001CEF24 2C 04 00 00 */ cmpwi r4, 0 /* 801D1FC8 001CEF28 40 81 00 0C */ ble lbl_801D1FD4 lbl_801D1FCC: /* 801D1FCC 001CEF2C 38 63 00 08 */ addi r3, r3, 8 /* 801D1FD0 001CEF30 42 00 FF FC */ bdnz lbl_801D1FCC lbl_801D1FD4: /* 801D1FD4 001CEF34 7C 03 28 50 */ subf r0, r3, r5 /* 801D1FD8 001CEF38 7C 09 03 A6 */ mtctr r0 /* 801D1FDC 001CEF3C 7C 03 28 00 */ cmpw r3, r5 /* 801D1FE0 001CEF40 40 80 00 08 */ bge lbl_801D1FE8 lbl_801D1FE4: /* 801D1FE4 001CEF44 42 00 00 00 */ bdnz lbl_801D1FE4 lbl_801D1FE8: /* 801D1FE8 001CEF48 38 00 00 00 */ li r0, 0 /* 801D1FEC 001CEF4C 3C 60 80 3D */ lis r3, lbl_803D1B70@ha /* 801D1FF0 001CEF50 90 19 01 9C */ stw r0, 0x19c(r25) /* 801D1FF4 001CEF54 3B F9 01 B4 */ addi r31, r25, 0x1b4 /* 801D1FF8 001CEF58 CB C2 AB C0 */ lfd f30, lbl_805AC8E0@sda21(r2) /* 801D1FFC 001CEF5C 3A E3 1B 70 */ addi r23, r3, lbl_803D1B70@l /* 801D2000 001CEF60 C3 E2 AC 08 */ lfs f31, lbl_805AC928@sda21(r2) /* 801D2004 001CEF64 3B 80 00 00 */ li r28, 0 /* 801D2008 001CEF68 3F 00 43 30 */ lis r24, 0x4330 lbl_801D200C: /* 801D200C 001CEF6C 80 7F 00 00 */ lwz r3, 0(r31) /* 801D2010 001CEF70 7F 64 DB 78 */ mr r4, r27 /* 801D2014 001CEF74 80 63 00 00 */ lwz r3, 0(r3) /* 801D2018 001CEF78 4B F4 2F 45 */ bl PickAnimatedModel__10CModelDataCFQ210CModelData11EWhichModel /* 801D201C 001CEF7C 38 81 00 10 */ addi r4, r1, 0x10 /* 801D2020 001CEF80 48 18 06 49 */ bl sub_80352668 /* 801D2024 001CEF84 80 19 01 78 */ lwz r0, 0x178(r25) /* 801D2028 001CEF88 7C 83 00 D0 */ neg r4, r3 /* 801D202C 001CEF8C 7C 84 1B 78 */ or r4, r4, r3 /* 801D2030 001CEF90 90 61 00 18 */ stw r3, 0x18(r1) /* 801D2034 001CEF94 54 00 18 38 */ slwi r0, r0, 3 /* 801D2038 001CEF98 54 84 0F FE */ srwi r4, r4, 0x1f /* 801D203C 001CEF9C 7C BE 02 15 */ add. r5, r30, r0 /* 801D2040 001CEFA0 98 81 00 14 */ stb r4, 0x14(r1) /* 801D2044 001CEFA4 41 82 00 14 */ beq lbl_801D2058 /* 801D2048 001CEFA8 98 85 00 00 */ stb r4, 0(r5) /* 801D204C 001CEFAC 38 00 00 00 */ li r0, 0 /* 801D2050 001CEFB0 90 65 00 04 */ stw r3, 4(r5) /* 801D2054 001CEFB4 98 01 00 14 */ stb r0, 0x14(r1) lbl_801D2058: /* 801D2058 001CEFB8 80 79 01 78 */ lwz r3, 0x178(r25) /* 801D205C 001CEFBC 88 01 00 14 */ lbz r0, 0x14(r1) /* 801D2060 001CEFC0 38 63 00 01 */ addi r3, r3, 1 /* 801D2064 001CEFC4 28 00 00 00 */ cmplwi r0, 0 /* 801D2068 001CEFC8 90 79 01 78 */ stw r3, 0x178(r25) /* 801D206C 001CEFCC 41 82 00 0C */ beq lbl_801D2078 /* 801D2070 001CEFD0 80 61 00 18 */ lwz r3, 0x18(r1) /* 801D2074 001CEFD4 48 14 38 BD */ bl Free__7CMemoryFPCv lbl_801D2078: /* 801D2078 001CEFD8 80 19 01 9C */ lwz r0, 0x19c(r25) /* 801D207C 001CEFDC 54 00 10 3A */ slwi r0, r0, 2 /* 801D2080 001CEFE0 7C 7D 02 15 */ add. r3, r29, r0 /* 801D2084 001CEFE4 41 82 00 0C */ beq lbl_801D2090 /* 801D2088 001CEFE8 80 01 00 10 */ lwz r0, 0x10(r1) /* 801D208C 001CEFEC 90 03 00 00 */ stw r0, 0(r3) lbl_801D2090: /* 801D2090 001CEFF0 80 79 01 9C */ lwz r3, 0x19c(r25) /* 801D2094 001CEFF4 38 80 00 01 */ li r4, 1 /* 801D2098 001CEFF8 38 03 00 01 */ addi r0, r3, 1 /* 801D209C 001CEFFC 90 19 01 9C */ stw r0, 0x19c(r25) /* 801D20A0 001CF000 80 7F 00 00 */ lwz r3, 0(r31) /* 801D20A4 001CF004 80 63 00 00 */ lwz r3, 0(r3) /* 801D20A8 001CF008 4B F4 34 B9 */ bl EnableLooping__10CModelDataFb /* 801D20AC 001CF00C 38 61 00 1C */ addi r3, r1, 0x1c /* 801D20B0 001CF010 38 97 00 07 */ addi r4, r23, 7 /* 801D20B4 001CF014 4B E3 2C 05 */ bl string_l__4rstlFPCc /* 801D20B8 001CF018 80 19 00 04 */ lwz r0, 4(r25) /* 801D20BC 001CF01C 38 81 00 1C */ addi r4, r1, 0x1c /* 801D20C0 001CF020 90 01 00 0C */ stw r0, 0xc(r1) /* 801D20C4 001CF024 80 7F 00 00 */ lwz r3, 0(r31) /* 801D20C8 001CF028 90 01 00 08 */ stw r0, 8(r1) /* 801D20CC 001CF02C 82 C3 00 00 */ lwz r22, 0(r3) /* 801D20D0 001CF030 80 76 00 10 */ lwz r3, 0x10(r22) /* 801D20D4 001CF034 4B E5 A3 99 */ bl "GetAnimTimeRemaining__9CAnimDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 801D20D8 001CF038 6F 80 80 00 */ xoris r0, r28, 0x8000 /* 801D20DC 001CF03C 93 01 00 48 */ stw r24, 0x48(r1) /* 801D20E0 001CF040 7E C4 B3 78 */ mr r4, r22 /* 801D20E4 001CF044 7F 45 D3 78 */ mr r5, r26 /* 801D20E8 001CF048 90 01 00 4C */ stw r0, 0x4c(r1) /* 801D20EC 001CF04C 38 61 00 2C */ addi r3, r1, 0x2c /* 801D20F0 001CF050 38 C1 00 0C */ addi r6, r1, 0xc /* 801D20F4 001CF054 38 E0 00 01 */ li r7, 1 /* 801D20F8 001CF058 C8 01 00 48 */ lfd f0, 0x48(r1) /* 801D20FC 001CF05C EC 00 F0 28 */ fsubs f0, f0, f30 /* 801D2100 001CF060 EC 00 07 F2 */ fmuls f0, f0, f31 /* 801D2104 001CF064 EC 20 00 72 */ fmuls f1, f0, f1 /* 801D2108 001CF068 4B F4 3A 2D */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb /* 801D210C 001CF06C 38 61 00 1C */ addi r3, r1, 0x1c /* 801D2110 001CF070 48 16 B9 D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 801D2114 001CF074 3B 9C 00 01 */ addi r28, r28, 1 /* 801D2118 001CF078 3B FF 00 04 */ addi r31, r31, 4 /* 801D211C 001CF07C 2C 1C 00 04 */ cmpwi r28, 4 /* 801D2120 001CF080 41 80 FE EC */ blt lbl_801D200C /* 801D2124 001CF084 93 79 02 30 */ stw r27, 0x230(r25) /* 801D2128 001CF088 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 801D212C 001CF08C CB E1 00 90 */ lfd f31, 0x90(r1) /* 801D2130 001CF090 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 801D2134 001CF094 CB C1 00 80 */ lfd f30, 0x80(r1) /* 801D2138 001CF098 BA C1 00 58 */ lmw r22, 0x58(r1) /* 801D213C 001CF09C 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 801D2140 001CF0A0 7C 08 03 A6 */ mtlr r0 /* 801D2144 001CF0A4 38 21 00 A0 */ addi r1, r1, 0xa0 /* 801D2148 001CF0A8 4E 80 00 20 */ blr .global "__ct__10CFishCloudF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC10CModelDatafffff" "__ct__10CFishCloudF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fRC12CTransform4fRC10CModelDatafffff": /* 801D214C 001CF0AC 94 21 FD 10 */ stwu r1, -0x2f0(r1) /* 801D2150 001CF0B0 7C 08 02 A6 */ mflr r0 /* 801D2154 001CF0B4 90 01 02 F4 */ stw r0, 0x2f4(r1) /* 801D2158 001CF0B8 DB E1 02 E0 */ stfd f31, 0x2e0(r1) /* 801D215C 001CF0BC F3 E1 02 E8 */ psq_st f31, 744(r1), 0, qr0 /* 801D2160 001CF0C0 DB C1 02 D0 */ stfd f30, 0x2d0(r1) /* 801D2164 001CF0C4 F3 C1 02 D8 */ psq_st f30, 728(r1), 0, qr0 /* 801D2168 001CF0C8 DB A1 02 C0 */ stfd f29, 0x2c0(r1) /* 801D216C 001CF0CC F3 A1 02 C8 */ psq_st f29, 712(r1), 0, qr0 /* 801D2170 001CF0D0 DB 81 02 B0 */ stfd f28, 0x2b0(r1) /* 801D2174 001CF0D4 F3 81 02 B8 */ psq_st f28, 696(r1), 0, qr0 /* 801D2178 001CF0D8 DB 61 02 A0 */ stfd f27, 0x2a0(r1) /* 801D217C 001CF0DC F3 61 02 A8 */ psq_st f27, 680(r1), 0, qr0 /* 801D2180 001CF0E0 DB 41 02 90 */ stfd f26, 0x290(r1) /* 801D2184 001CF0E4 F3 41 02 98 */ psq_st f26, 664(r1), 0, qr0 /* 801D2188 001CF0E8 DB 21 02 80 */ stfd f25, 0x280(r1) /* 801D218C 001CF0EC F3 21 02 88 */ psq_st f25, 648(r1), 0, qr0 /* 801D2190 001CF0F0 DB 01 02 70 */ stfd f24, 0x270(r1) /* 801D2194 001CF0F4 F3 01 02 78 */ psq_st f24, 632(r1), 0, qr0 /* 801D2198 001CF0F8 DA E1 02 60 */ stfd f23, 0x260(r1) /* 801D219C 001CF0FC F2 E1 02 68 */ psq_st f23, 616(r1), 0, qr0 /* 801D21A0 001CF100 DA C1 02 50 */ stfd f22, 0x250(r1) /* 801D21A4 001CF104 F2 C1 02 58 */ psq_st f22, 600(r1), 0, qr0 /* 801D21A8 001CF108 DA A1 02 40 */ stfd f21, 0x240(r1) /* 801D21AC 001CF10C F2 A1 02 48 */ psq_st f21, 584(r1), 0, qr0 /* 801D21B0 001CF110 DA 81 02 30 */ stfd f20, 0x230(r1) /* 801D21B4 001CF114 F2 81 02 38 */ psq_st f20, 568(r1), 0, qr0 /* 801D21B8 001CF118 DA 61 02 20 */ stfd f19, 0x220(r1) /* 801D21BC 001CF11C F2 61 02 28 */ psq_st f19, 552(r1), 0, qr0 /* 801D21C0 001CF120 DA 41 02 10 */ stfd f18, 0x210(r1) /* 801D21C4 001CF124 F2 41 02 18 */ psq_st f18, 536(r1), 0, qr0 /* 801D21C8 001CF128 BD C1 01 C8 */ stmw r14, 0x1c8(r1) /* 801D21CC 001CF12C FE 40 08 90 */ fmr f18, f1 /* 801D21D0 001CF130 7C 6F 1B 78 */ mr r15, r3 /* 801D21D4 001CF134 FE 60 10 90 */ fmr f19, f2 /* 801D21D8 001CF138 82 E1 02 F8 */ lwz r23, 0x2f8(r1) /* 801D21DC 001CF13C FE 80 18 90 */ fmr f20, f3 /* 801D21E0 001CF140 83 01 02 FC */ lwz r24, 0x2fc(r1) /* 801D21E4 001CF144 FE A0 20 90 */ fmr f21, f4 /* 801D21E8 001CF148 C3 41 03 00 */ lfs f26, 0x300(r1) /* 801D21EC 001CF14C FE C0 28 90 */ fmr f22, f5 /* 801D21F0 001CF150 C3 61 03 04 */ lfs f27, 0x304(r1) /* 801D21F4 001CF154 FE E0 30 90 */ fmr f23, f6 /* 801D21F8 001CF158 C3 81 03 08 */ lfs f28, 0x308(r1) /* 801D21FC 001CF15C FF 00 38 90 */ fmr f24, f7 /* 801D2200 001CF160 C3 A1 03 0C */ lfs f29, 0x30c(r1) /* 801D2204 001CF164 FF 20 40 90 */ fmr f25, f8 /* 801D2208 001CF168 C3 C1 03 10 */ lfs f30, 0x310(r1) /* 801D220C 001CF16C 83 21 03 14 */ lwz r25, 0x314(r1) /* 801D2210 001CF170 7C 90 23 78 */ mr r16, r4 /* 801D2214 001CF174 83 41 03 18 */ lwz r26, 0x318(r1) /* 801D2218 001CF178 7C B1 2B 78 */ mr r17, r5 /* 801D221C 001CF17C C3 E1 03 20 */ lfs f31, 0x320(r1) /* 801D2220 001CF180 7C D2 33 78 */ mr r18, r6 /* 801D2224 001CF184 83 61 03 24 */ lwz r27, 0x324(r1) /* 801D2228 001CF188 7C F3 3B 78 */ mr r19, r7 /* 801D222C 001CF18C 83 81 03 2C */ lwz r28, 0x32c(r1) /* 801D2230 001CF190 7D 14 43 78 */ mr r20, r8 /* 801D2234 001CF194 83 A1 03 34 */ lwz r29, 0x334(r1) /* 801D2238 001CF198 7D 35 4B 78 */ mr r21, r9 /* 801D223C 001CF19C 83 C1 03 3C */ lwz r30, 0x33c(r1) /* 801D2240 001CF1A0 7D 56 53 78 */ mr r22, r10 /* 801D2244 001CF1A4 83 E1 03 44 */ lwz r31, 0x344(r1) /* 801D2248 001CF1A8 38 61 01 54 */ addi r3, r1, 0x154 /* 801D224C 001CF1AC 89 C1 03 4F */ lbz r14, 0x34f(r1) /* 801D2250 001CF1B0 4B E4 8B E9 */ bl None__16CActorParametersFv /* 801D2254 001CF1B4 7D C5 73 78 */ mr r5, r14 /* 801D2258 001CF1B8 38 61 00 EC */ addi r3, r1, 0xec /* 801D225C 001CF1BC 38 81 01 54 */ addi r4, r1, 0x154 /* 801D2260 001CF1C0 4B F3 45 AD */ bl sub_8010680c /* 801D2264 001CF1C4 A0 8D A3 8C */ lhz r4, kInvalidUniqueId@sda21(r13) /* 801D2268 001CF1C8 38 00 00 00 */ li r0, 0 /* 801D226C 001CF1CC 80 AD 91 8C */ lwz r5, lbl_805A7D4C@sda21(r13) /* 801D2270 001CF1D0 38 60 00 00 */ li r3, 0 /* 801D2274 001CF1D4 B0 81 00 10 */ sth r4, 0x10(r1) /* 801D2278 001CF1D8 38 80 00 01 */ li r4, 1 /* 801D227C 001CF1DC 90 01 00 7C */ stw r0, 0x7c(r1) /* 801D2280 001CF1E0 90 01 00 78 */ stw r0, 0x78(r1) /* 801D2284 001CF1E4 48 1B 7C 71 */ bl __shl2i /* 801D2288 001CF1E8 80 A1 00 78 */ lwz r5, 0x78(r1) /* 801D228C 001CF1EC 39 61 00 EC */ addi r11, r1, 0xec /* 801D2290 001CF1F0 80 C1 00 7C */ lwz r6, 0x7c(r1) /* 801D2294 001CF1F4 38 01 00 10 */ addi r0, r1, 0x10 /* 801D2298 001CF1F8 7C A3 1B 78 */ or r3, r5, r3 /* 801D229C 001CF1FC A1 30 00 00 */ lhz r9, 0(r16) /* 801D22A0 001CF200 7C C4 23 78 */ or r4, r6, r4 /* 801D22A4 001CF204 90 61 00 78 */ stw r3, 0x78(r1) /* 801D22A8 001CF208 7D E3 7B 78 */ mr r3, r15 /* 801D22AC 001CF20C 7E 25 8B 78 */ mr r5, r17 /* 801D22B0 001CF210 90 81 00 7C */ stw r4, 0x7c(r1) /* 801D22B4 001CF214 7E 46 93 78 */ mr r6, r18 /* 801D22B8 001CF218 7E 67 9B 78 */ mr r7, r19 /* 801D22BC 001CF21C 7E A8 AB 78 */ mr r8, r21 /* 801D22C0 001CF220 B1 21 00 14 */ sth r9, 0x14(r1) /* 801D22C4 001CF224 7E C9 B3 78 */ mr r9, r22 /* 801D22C8 001CF228 38 81 00 14 */ addi r4, r1, 0x14 /* 801D22CC 001CF22C 39 41 00 78 */ addi r10, r1, 0x78 /* 801D22D0 001CF230 91 61 00 08 */ stw r11, 8(r1) /* 801D22D4 001CF234 90 01 00 0C */ stw r0, 0xc(r1) /* 801D22D8 001CF238 4B E8 35 49 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" /* 801D22DC 001CF23C 38 61 00 EC */ addi r3, r1, 0xec /* 801D22E0 001CF240 38 80 FF FF */ li r4, -1 /* 801D22E4 001CF244 4B F3 43 25 */ bl __dt__16CLightParametersFv /* 801D22E8 001CF248 38 61 01 54 */ addi r3, r1, 0x154 /* 801D22EC 001CF24C 38 80 FF FF */ li r4, -1 /* 801D22F0 001CF250 4B F3 43 19 */ bl __dt__16CLightParametersFv /* 801D22F4 001CF254 3C 60 80 3E */ lis r3, lbl_803E5758@ha /* 801D22F8 001CF258 38 00 00 01 */ li r0, 1 /* 801D22FC 001CF25C 38 63 57 58 */ addi r3, r3, lbl_803E5758@l /* 801D2300 001CF260 38 80 00 00 */ li r4, 0 /* 801D2304 001CF264 90 6F 00 00 */ stw r3, 0(r15) /* 801D2308 001CF268 7C 03 C8 30 */ slw r3, r0, r25 /* 801D230C 001CF26C 38 63 FF FF */ addi r3, r3, -1 /* 801D2310 001CF270 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801D2314 001CF274 90 8F 00 EC */ stw r4, 0xec(r15) /* 801D2318 001CF278 2C 1F FF FF */ cmpwi r31, -1 /* 801D231C 001CF27C 7F E0 FB 78 */ mr r0, r31 /* 801D2320 001CF280 90 8F 00 F0 */ stw r4, 0xf0(r15) /* 801D2324 001CF284 90 8F 00 F4 */ stw r4, 0xf4(r15) /* 801D2328 001CF288 90 8F 00 FC */ stw r4, 0xfc(r15) /* 801D232C 001CF28C 90 8F 01 00 */ stw r4, 0x100(r15) /* 801D2330 001CF290 90 8F 01 04 */ stw r4, 0x104(r15) /* 801D2334 001CF294 90 8F 01 0C */ stw r4, 0x10c(r15) /* 801D2338 001CF298 90 8F 01 10 */ stw r4, 0x110(r15) /* 801D233C 001CF29C 90 8F 01 14 */ stw r4, 0x114(r15) /* 801D2340 001CF2A0 90 6F 01 1C */ stw r3, 0x11c(r15) /* 801D2344 001CF2A4 C0 34 00 00 */ lfs f1, 0(r20) /* 801D2348 001CF2A8 D0 2F 01 20 */ stfs f1, 0x120(r15) /* 801D234C 001CF2AC C0 34 00 04 */ lfs f1, 4(r20) /* 801D2350 001CF2B0 D0 2F 01 24 */ stfs f1, 0x124(r15) /* 801D2354 001CF2B4 C0 34 00 08 */ lfs f1, 8(r20) /* 801D2358 001CF2B8 D0 2F 01 28 */ stfs f1, 0x128(r15) /* 801D235C 001CF2BC D0 0F 01 2C */ stfs f0, 0x12c(r15) /* 801D2360 001CF2C0 D2 4F 01 30 */ stfs f18, 0x130(r15) /* 801D2364 001CF2C4 93 0F 01 34 */ stw r24, 0x134(r15) /* 801D2368 001CF2C8 D2 6F 01 38 */ stfs f19, 0x138(r15) /* 801D236C 001CF2CC D2 8F 01 3C */ stfs f20, 0x13c(r15) /* 801D2370 001CF2D0 D2 AF 01 40 */ stfs f21, 0x140(r15) /* 801D2374 001CF2D4 D2 CF 01 44 */ stfs f22, 0x144(r15) /* 801D2378 001CF2D8 D2 EF 01 48 */ stfs f23, 0x148(r15) /* 801D237C 001CF2DC D3 0F 01 4C */ stfs f24, 0x14c(r15) /* 801D2380 001CF2E0 D3 4F 01 50 */ stfs f26, 0x150(r15) /* 801D2384 001CF2E4 D3 6F 01 54 */ stfs f27, 0x154(r15) /* 801D2388 001CF2E8 D3 2F 01 58 */ stfs f25, 0x158(r15) /* 801D238C 001CF2EC D3 AF 01 5C */ stfs f29, 0x15c(r15) /* 801D2390 001CF2F0 D3 8F 01 60 */ stfs f28, 0x160(r15) /* 801D2394 001CF2F4 D3 AF 01 64 */ stfs f29, 0x164(r15) /* 801D2398 001CF2F8 D3 8F 01 68 */ stfs f28, 0x168(r15) /* 801D239C 001CF2FC 80 7A 00 00 */ lwz r3, 0(r26) /* 801D23A0 001CF300 90 6F 01 6C */ stw r3, 0x16c(r15) /* 801D23A4 001CF304 D3 EF 01 70 */ stfs f31, 0x170(r15) /* 801D23A8 001CF308 D3 CF 01 74 */ stfs f30, 0x174(r15) /* 801D23AC 001CF30C 90 8F 01 78 */ stw r4, 0x178(r15) /* 801D23B0 001CF310 90 8F 01 9C */ stw r4, 0x19c(r15) /* 801D23B4 001CF314 90 8F 01 B0 */ stw r4, 0x1b0(r15) /* 801D23B8 001CF318 90 8F 01 C4 */ stw r4, 0x1c4(r15) /* 801D23BC 001CF31C 90 8F 01 F8 */ stw r4, 0x1f8(r15) /* 801D23C0 001CF320 90 8F 02 1C */ stw r4, 0x21c(r15) /* 801D23C4 001CF324 40 82 00 08 */ bne lbl_801D23CC /* 801D23C8 001CF328 A0 02 C5 FC */ lhz r0, lbl_805AE31C@sda21(r2) lbl_801D23CC: /* 801D23CC 001CF32C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 801D23D0 001CF330 48 11 65 E1 */ bl TranslateSFXID__11CSfxManagerFUs /* 801D23D4 001CF334 B0 6F 02 34 */ sth r3, 0x234(r15) /* 801D23D8 001CF338 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 801D23DC 001CF33C 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l /* 801D23E0 001CF340 38 C0 00 00 */ li r6, 0 /* 801D23E4 001CF344 C0 05 00 00 */ lfs f0, 0(r5) /* 801D23E8 001CF348 38 6F 01 08 */ addi r3, r15, 0x108 /* 801D23EC 001CF34C 38 80 00 0A */ li r4, 0xa /* 801D23F0 001CF350 D0 0F 02 38 */ stfs f0, 0x238(r15) /* 801D23F4 001CF354 C0 05 00 04 */ lfs f0, 4(r5) /* 801D23F8 001CF358 D0 0F 02 3C */ stfs f0, 0x23c(r15) /* 801D23FC 001CF35C C0 05 00 08 */ lfs f0, 8(r5) /* 801D2400 001CF360 D0 0F 02 40 */ stfs f0, 0x240(r15) /* 801D2404 001CF364 C0 05 00 00 */ lfs f0, 0(r5) /* 801D2408 001CF368 D0 0F 02 44 */ stfs f0, 0x244(r15) /* 801D240C 001CF36C C0 05 00 04 */ lfs f0, 4(r5) /* 801D2410 001CF370 D0 0F 02 48 */ stfs f0, 0x248(r15) /* 801D2414 001CF374 C0 05 00 08 */ lfs f0, 8(r5) /* 801D2418 001CF378 D0 0F 02 4C */ stfs f0, 0x24c(r15) /* 801D241C 001CF37C 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D2420 001CF380 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 /* 801D2424 001CF384 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D2428 001CF388 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D242C 001CF38C 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 /* 801D2430 001CF390 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D2434 001CF394 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D2438 001CF398 50 C0 2E B4 */ rlwimi r0, r6, 5, 0x1a, 0x1a /* 801D243C 001CF39C 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D2440 001CF3A0 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D2444 001CF3A4 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b /* 801D2448 001CF3A8 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D244C 001CF3AC 88 01 03 1F */ lbz r0, 0x31f(r1) /* 801D2450 001CF3B0 88 AF 02 50 */ lbz r5, 0x250(r15) /* 801D2454 001CF3B4 50 05 1F 38 */ rlwimi r5, r0, 3, 0x1c, 0x1c /* 801D2458 001CF3B8 88 01 03 4B */ lbz r0, 0x34b(r1) /* 801D245C 001CF3BC 98 AF 02 50 */ stb r5, 0x250(r15) /* 801D2460 001CF3C0 88 AF 02 50 */ lbz r5, 0x250(r15) /* 801D2464 001CF3C4 50 05 17 7A */ rlwimi r5, r0, 2, 0x1d, 0x1d /* 801D2468 001CF3C8 98 AF 02 50 */ stb r5, 0x250(r15) /* 801D246C 001CF3CC 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D2470 001CF3D0 50 C0 0F BC */ rlwimi r0, r6, 1, 0x1e, 0x1e /* 801D2474 001CF3D4 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D2478 001CF3D8 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D247C 001CF3DC 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f /* 801D2480 001CF3E0 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D2484 001CF3E4 48 00 0F FD */ bl "reserve__Q24rstl66vectorFi" /* 801D2488 001CF3E8 C0 4F 00 34 */ lfs f2, 0x34(r15) /* 801D248C 001CF3EC 38 60 00 00 */ li r3, 0 /* 801D2490 001CF3F0 C0 02 AB B4 */ lfs f0, lbl_805AC8D4@sda21(r2) /* 801D2494 001CF3F4 7C 64 1B 78 */ mr r4, r3 /* 801D2498 001CF3F8 C0 AF 00 58 */ lfs f5, 0x58(r15) /* 801D249C 001CF3FC 7C 65 1B 78 */ mr r5, r3 /* 801D24A0 001CF400 EC 02 00 28 */ fsubs f0, f2, f0 /* 801D24A4 001CF404 C0 8F 00 48 */ lfs f4, 0x48(r15) /* 801D24A8 001CF408 C0 6F 00 38 */ lfs f3, 0x38(r15) /* 801D24AC 001CF40C 7C 66 1B 78 */ mr r6, r3 /* 801D24B0 001CF410 C0 EF 00 5C */ lfs f7, 0x5c(r15) /* 801D24B4 001CF414 7C 67 1B 78 */ mr r7, r3 /* 801D24B8 001CF418 C0 CF 00 4C */ lfs f6, 0x4c(r15) /* 801D24BC 001CF41C FD 40 02 10 */ fabs f10, f0 /* 801D24C0 001CF420 C8 22 AC 10 */ lfd f1, lbl_805AC930@sda21(r2) /* 801D24C4 001CF424 7C 68 1B 78 */ mr r8, r3 /* 801D24C8 001CF428 C0 0F 00 3C */ lfs f0, 0x3c(r15) /* 801D24CC 001CF42C 7C 69 1B 78 */ mr r9, r3 /* 801D24D0 001CF430 C1 2F 00 54 */ lfs f9, 0x54(r15) /* 801D24D4 001CF434 C1 0F 00 44 */ lfs f8, 0x44(r15) /* 801D24D8 001CF438 FC 0A 08 40 */ fcmpo cr0, f10, f1 /* 801D24DC 001CF43C D0 61 00 C8 */ stfs f3, 0xc8(r1) /* 801D24E0 001CF440 7C 60 1B 78 */ mr r0, r3 /* 801D24E4 001CF444 D0 81 00 CC */ stfs f4, 0xcc(r1) /* 801D24E8 001CF448 D0 A1 00 D0 */ stfs f5, 0xd0(r1) /* 801D24EC 001CF44C D0 01 00 BC */ stfs f0, 0xbc(r1) /* 801D24F0 001CF450 D0 C1 00 C0 */ stfs f6, 0xc0(r1) /* 801D24F4 001CF454 D0 E1 00 C4 */ stfs f7, 0xc4(r1) /* 801D24F8 001CF458 D0 41 00 B0 */ stfs f2, 0xb0(r1) /* 801D24FC 001CF45C D1 01 00 B4 */ stfs f8, 0xb4(r1) /* 801D2500 001CF460 D1 21 00 B8 */ stfs f9, 0xb8(r1) /* 801D2504 001CF464 40 80 00 1C */ bge lbl_801D2520 /* 801D2508 001CF468 C0 02 AB B8 */ lfs f0, lbl_805AC8D8@sda21(r2) /* 801D250C 001CF46C EC 02 00 28 */ fsubs f0, f2, f0 /* 801D2510 001CF470 FC 00 02 10 */ fabs f0, f0 /* 801D2514 001CF474 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 801D2518 001CF478 40 80 00 08 */ bge lbl_801D2520 /* 801D251C 001CF47C 38 00 00 01 */ li r0, 1 lbl_801D2520: /* 801D2520 001CF480 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 801D2524 001CF484 41 82 00 24 */ beq lbl_801D2548 /* 801D2528 001CF488 C0 41 00 B0 */ lfs f2, 0xb0(r1) /* 801D252C 001CF48C C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) /* 801D2530 001CF490 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D2534 001CF494 EC 22 08 28 */ fsubs f1, f2, f1 /* 801D2538 001CF498 FC 20 0A 10 */ fabs f1, f1 /* 801D253C 001CF49C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D2540 001CF4A0 40 80 00 08 */ bge lbl_801D2548 /* 801D2544 001CF4A4 39 20 00 01 */ li r9, 1 lbl_801D2548: /* 801D2548 001CF4A8 55 20 06 3F */ clrlwi. r0, r9, 0x18 /* 801D254C 001CF4AC 41 82 00 24 */ beq lbl_801D2570 /* 801D2550 001CF4B0 C0 41 00 C8 */ lfs f2, 0xc8(r1) /* 801D2554 001CF4B4 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) /* 801D2558 001CF4B8 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D255C 001CF4BC EC 22 08 28 */ fsubs f1, f2, f1 /* 801D2560 001CF4C0 FC 20 0A 10 */ fabs f1, f1 /* 801D2564 001CF4C4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D2568 001CF4C8 40 80 00 08 */ bge lbl_801D2570 /* 801D256C 001CF4CC 39 00 00 01 */ li r8, 1 lbl_801D2570: /* 801D2570 001CF4D0 55 00 06 3F */ clrlwi. r0, r8, 0x18 /* 801D2574 001CF4D4 41 82 00 24 */ beq lbl_801D2598 /* 801D2578 001CF4D8 C0 41 00 C8 */ lfs f2, 0xc8(r1) /* 801D257C 001CF4DC C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801D2580 001CF4E0 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D2584 001CF4E4 EC 22 08 28 */ fsubs f1, f2, f1 /* 801D2588 001CF4E8 FC 20 0A 10 */ fabs f1, f1 /* 801D258C 001CF4EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D2590 001CF4F0 40 80 00 08 */ bge lbl_801D2598 /* 801D2594 001CF4F4 38 E0 00 01 */ li r7, 1 lbl_801D2598: /* 801D2598 001CF4F8 54 E0 06 3F */ clrlwi. r0, r7, 0x18 /* 801D259C 001CF4FC 41 82 00 24 */ beq lbl_801D25C0 /* 801D25A0 001CF500 C0 41 00 C8 */ lfs f2, 0xc8(r1) /* 801D25A4 001CF504 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) /* 801D25A8 001CF508 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D25AC 001CF50C EC 22 08 28 */ fsubs f1, f2, f1 /* 801D25B0 001CF510 FC 20 0A 10 */ fabs f1, f1 /* 801D25B4 001CF514 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D25B8 001CF518 40 80 00 08 */ bge lbl_801D25C0 /* 801D25BC 001CF51C 38 C0 00 01 */ li r6, 1 lbl_801D25C0: /* 801D25C0 001CF520 54 C0 06 3F */ clrlwi. r0, r6, 0x18 /* 801D25C4 001CF524 41 82 00 24 */ beq lbl_801D25E8 /* 801D25C8 001CF528 C0 41 00 BC */ lfs f2, 0xbc(r1) /* 801D25CC 001CF52C C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) /* 801D25D0 001CF530 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D25D4 001CF534 EC 22 08 28 */ fsubs f1, f2, f1 /* 801D25D8 001CF538 FC 20 0A 10 */ fabs f1, f1 /* 801D25DC 001CF53C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D25E0 001CF540 40 80 00 08 */ bge lbl_801D25E8 /* 801D25E4 001CF544 38 A0 00 01 */ li r5, 1 lbl_801D25E8: /* 801D25E8 001CF548 54 A0 06 3F */ clrlwi. r0, r5, 0x18 /* 801D25EC 001CF54C 41 82 00 24 */ beq lbl_801D2610 /* 801D25F0 001CF550 C0 41 00 BC */ lfs f2, 0xbc(r1) /* 801D25F4 001CF554 C0 22 AB B8 */ lfs f1, lbl_805AC8D8@sda21(r2) /* 801D25F8 001CF558 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D25FC 001CF55C EC 22 08 28 */ fsubs f1, f2, f1 /* 801D2600 001CF560 FC 20 0A 10 */ fabs f1, f1 /* 801D2604 001CF564 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D2608 001CF568 40 80 00 08 */ bge lbl_801D2610 /* 801D260C 001CF56C 38 80 00 01 */ li r4, 1 lbl_801D2610: /* 801D2610 001CF570 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 801D2614 001CF574 41 82 00 24 */ beq lbl_801D2638 /* 801D2618 001CF578 C0 41 00 BC */ lfs f2, 0xbc(r1) /* 801D261C 001CF57C C0 22 AB B4 */ lfs f1, lbl_805AC8D4@sda21(r2) /* 801D2620 001CF580 C8 02 AC 10 */ lfd f0, lbl_805AC930@sda21(r2) /* 801D2624 001CF584 EC 22 08 28 */ fsubs f1, f2, f1 /* 801D2628 001CF588 FC 20 0A 10 */ fabs f1, f1 /* 801D262C 001CF58C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801D2630 001CF590 40 80 00 08 */ bge lbl_801D2638 /* 801D2634 001CF594 38 60 00 01 */ li r3, 1 lbl_801D2638: /* 801D2638 001CF598 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 801D263C 001CF59C 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D2640 001CF5A0 7C 63 00 34 */ cntlzw r3, r3 /* 801D2644 001CF5A4 50 60 0E 72 */ rlwimi r0, r3, 1, 0x19, 0x19 /* 801D2648 001CF5A8 98 0F 02 50 */ stb r0, 0x250(r15) /* 801D264C 001CF5AC 80 77 00 00 */ lwz r3, 0(r23) /* 801D2650 001CF5B0 3C 03 00 01 */ addis r0, r3, 1 /* 801D2654 001CF5B4 28 00 FF FF */ cmplwi r0, 0xffff /* 801D2658 001CF5B8 41 82 02 64 */ beq lbl_801D28BC /* 801D265C 001CF5BC 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D2660 001CF5C0 38 60 00 4C */ li r3, 0x4c /* 801D2664 001CF5C4 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D2668 001CF5C8 38 A0 00 00 */ li r5, 0 /* 801D266C 001CF5CC 48 14 32 01 */ bl __nw__FUlPCcPCc /* 801D2670 001CF5D0 7C 6E 1B 79 */ or. r14, r3, r3 /* 801D2674 001CF5D4 41 82 00 10 */ beq lbl_801D2684 /* 801D2678 001CF5D8 7E E4 BB 78 */ mr r4, r23 /* 801D267C 001CF5DC 4B F4 44 D9 */ bl __ct__10CModelDataFRC8CAnimRes /* 801D2680 001CF5E0 7C 6E 1B 78 */ mr r14, r3 lbl_801D2684: /* 801D2684 001CF5E4 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D2688 001CF5E8 38 60 00 08 */ li r3, 8 /* 801D268C 001CF5EC 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D2690 001CF5F0 38 A0 00 00 */ li r5, 0 /* 801D2694 001CF5F4 48 14 31 D9 */ bl __nw__FUlPCcPCc /* 801D2698 001CF5F8 28 03 00 00 */ cmplwi r3, 0 /* 801D269C 001CF5FC 41 82 00 10 */ beq lbl_801D26AC /* 801D26A0 001CF600 91 C3 00 00 */ stw r14, 0(r3) /* 801D26A4 001CF604 38 00 00 01 */ li r0, 1 /* 801D26A8 001CF608 90 03 00 04 */ stw r0, 4(r3) lbl_801D26AC: /* 801D26AC 001CF60C 90 61 00 24 */ stw r3, 0x24(r1) /* 801D26B0 001CF610 38 8F 01 B0 */ addi r4, r15, 0x1b0 /* 801D26B4 001CF614 80 0F 01 B0 */ lwz r0, 0x1b0(r15) /* 801D26B8 001CF618 54 00 10 3A */ slwi r0, r0, 2 /* 801D26BC 001CF61C 7C 84 02 14 */ add r4, r4, r0 /* 801D26C0 001CF620 34 84 00 04 */ addic. r4, r4, 4 /* 801D26C4 001CF624 41 82 00 18 */ beq lbl_801D26DC /* 801D26C8 001CF628 90 64 00 00 */ stw r3, 0(r4) /* 801D26CC 001CF62C 80 84 00 00 */ lwz r4, 0(r4) /* 801D26D0 001CF630 80 64 00 04 */ lwz r3, 4(r4) /* 801D26D4 001CF634 38 03 00 01 */ addi r0, r3, 1 /* 801D26D8 001CF638 90 04 00 04 */ stw r0, 4(r4) lbl_801D26DC: /* 801D26DC 001CF63C 80 8F 01 B0 */ lwz r4, 0x1b0(r15) /* 801D26E0 001CF640 38 61 00 24 */ addi r3, r1, 0x24 /* 801D26E4 001CF644 38 04 00 01 */ addi r0, r4, 1 /* 801D26E8 001CF648 90 0F 01 B0 */ stw r0, 0x1b0(r15) /* 801D26EC 001CF64C 48 00 0C 75 */ bl sub_801d3360 /* 801D26F0 001CF650 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D26F4 001CF654 38 60 00 4C */ li r3, 0x4c /* 801D26F8 001CF658 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D26FC 001CF65C 38 A0 00 00 */ li r5, 0 /* 801D2700 001CF660 48 14 31 6D */ bl __nw__FUlPCcPCc /* 801D2704 001CF664 7C 6E 1B 79 */ or. r14, r3, r3 /* 801D2708 001CF668 41 82 00 10 */ beq lbl_801D2718 /* 801D270C 001CF66C 7E E4 BB 78 */ mr r4, r23 /* 801D2710 001CF670 4B F4 44 45 */ bl __ct__10CModelDataFRC8CAnimRes /* 801D2714 001CF674 7C 6E 1B 78 */ mr r14, r3 lbl_801D2718: /* 801D2718 001CF678 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D271C 001CF67C 38 60 00 08 */ li r3, 8 /* 801D2720 001CF680 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D2724 001CF684 38 A0 00 00 */ li r5, 0 /* 801D2728 001CF688 48 14 31 45 */ bl __nw__FUlPCcPCc /* 801D272C 001CF68C 28 03 00 00 */ cmplwi r3, 0 /* 801D2730 001CF690 41 82 00 10 */ beq lbl_801D2740 /* 801D2734 001CF694 91 C3 00 00 */ stw r14, 0(r3) /* 801D2738 001CF698 38 00 00 01 */ li r0, 1 /* 801D273C 001CF69C 90 03 00 04 */ stw r0, 4(r3) lbl_801D2740: /* 801D2740 001CF6A0 90 61 00 20 */ stw r3, 0x20(r1) /* 801D2744 001CF6A4 38 8F 01 B0 */ addi r4, r15, 0x1b0 /* 801D2748 001CF6A8 80 0F 01 B0 */ lwz r0, 0x1b0(r15) /* 801D274C 001CF6AC 54 00 10 3A */ slwi r0, r0, 2 /* 801D2750 001CF6B0 7C 84 02 14 */ add r4, r4, r0 /* 801D2754 001CF6B4 34 84 00 04 */ addic. r4, r4, 4 /* 801D2758 001CF6B8 41 82 00 18 */ beq lbl_801D2770 /* 801D275C 001CF6BC 90 64 00 00 */ stw r3, 0(r4) /* 801D2760 001CF6C0 80 84 00 00 */ lwz r4, 0(r4) /* 801D2764 001CF6C4 80 64 00 04 */ lwz r3, 4(r4) /* 801D2768 001CF6C8 38 03 00 01 */ addi r0, r3, 1 /* 801D276C 001CF6CC 90 04 00 04 */ stw r0, 4(r4) lbl_801D2770: /* 801D2770 001CF6D0 80 8F 01 B0 */ lwz r4, 0x1b0(r15) /* 801D2774 001CF6D4 38 61 00 20 */ addi r3, r1, 0x20 /* 801D2778 001CF6D8 38 04 00 01 */ addi r0, r4, 1 /* 801D277C 001CF6DC 90 0F 01 B0 */ stw r0, 0x1b0(r15) /* 801D2780 001CF6E0 48 00 0B E1 */ bl sub_801d3360 /* 801D2784 001CF6E4 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D2788 001CF6E8 38 60 00 4C */ li r3, 0x4c /* 801D278C 001CF6EC 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D2790 001CF6F0 38 A0 00 00 */ li r5, 0 /* 801D2794 001CF6F4 48 14 30 D9 */ bl __nw__FUlPCcPCc /* 801D2798 001CF6F8 7C 6E 1B 79 */ or. r14, r3, r3 /* 801D279C 001CF6FC 41 82 00 10 */ beq lbl_801D27AC /* 801D27A0 001CF700 7E E4 BB 78 */ mr r4, r23 /* 801D27A4 001CF704 4B F4 43 B1 */ bl __ct__10CModelDataFRC8CAnimRes /* 801D27A8 001CF708 7C 6E 1B 78 */ mr r14, r3 lbl_801D27AC: /* 801D27AC 001CF70C 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D27B0 001CF710 38 60 00 08 */ li r3, 8 /* 801D27B4 001CF714 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D27B8 001CF718 38 A0 00 00 */ li r5, 0 /* 801D27BC 001CF71C 48 14 30 B1 */ bl __nw__FUlPCcPCc /* 801D27C0 001CF720 28 03 00 00 */ cmplwi r3, 0 /* 801D27C4 001CF724 41 82 00 10 */ beq lbl_801D27D4 /* 801D27C8 001CF728 91 C3 00 00 */ stw r14, 0(r3) /* 801D27CC 001CF72C 38 00 00 01 */ li r0, 1 /* 801D27D0 001CF730 90 03 00 04 */ stw r0, 4(r3) lbl_801D27D4: /* 801D27D4 001CF734 90 61 00 1C */ stw r3, 0x1c(r1) /* 801D27D8 001CF738 38 8F 01 B0 */ addi r4, r15, 0x1b0 /* 801D27DC 001CF73C 80 0F 01 B0 */ lwz r0, 0x1b0(r15) /* 801D27E0 001CF740 54 00 10 3A */ slwi r0, r0, 2 /* 801D27E4 001CF744 7C 84 02 14 */ add r4, r4, r0 /* 801D27E8 001CF748 34 84 00 04 */ addic. r4, r4, 4 /* 801D27EC 001CF74C 41 82 00 18 */ beq lbl_801D2804 /* 801D27F0 001CF750 90 64 00 00 */ stw r3, 0(r4) /* 801D27F4 001CF754 80 84 00 00 */ lwz r4, 0(r4) /* 801D27F8 001CF758 80 64 00 04 */ lwz r3, 4(r4) /* 801D27FC 001CF75C 38 03 00 01 */ addi r0, r3, 1 /* 801D2800 001CF760 90 04 00 04 */ stw r0, 4(r4) lbl_801D2804: /* 801D2804 001CF764 80 8F 01 B0 */ lwz r4, 0x1b0(r15) /* 801D2808 001CF768 38 61 00 1C */ addi r3, r1, 0x1c /* 801D280C 001CF76C 38 04 00 01 */ addi r0, r4, 1 /* 801D2810 001CF770 90 0F 01 B0 */ stw r0, 0x1b0(r15) /* 801D2814 001CF774 48 00 0B 4D */ bl sub_801d3360 /* 801D2818 001CF778 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D281C 001CF77C 38 60 00 4C */ li r3, 0x4c /* 801D2820 001CF780 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D2824 001CF784 38 A0 00 00 */ li r5, 0 /* 801D2828 001CF788 48 14 30 45 */ bl __nw__FUlPCcPCc /* 801D282C 001CF78C 7C 6E 1B 79 */ or. r14, r3, r3 /* 801D2830 001CF790 41 82 00 10 */ beq lbl_801D2840 /* 801D2834 001CF794 7E E4 BB 78 */ mr r4, r23 /* 801D2838 001CF798 4B F4 43 1D */ bl __ct__10CModelDataFRC8CAnimRes /* 801D283C 001CF79C 7C 6E 1B 78 */ mr r14, r3 lbl_801D2840: /* 801D2840 001CF7A0 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D2844 001CF7A4 38 60 00 08 */ li r3, 8 /* 801D2848 001CF7A8 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D284C 001CF7AC 38 A0 00 00 */ li r5, 0 /* 801D2850 001CF7B0 48 14 30 1D */ bl __nw__FUlPCcPCc /* 801D2854 001CF7B4 28 03 00 00 */ cmplwi r3, 0 /* 801D2858 001CF7B8 41 82 00 10 */ beq lbl_801D2868 /* 801D285C 001CF7BC 91 C3 00 00 */ stw r14, 0(r3) /* 801D2860 001CF7C0 38 00 00 01 */ li r0, 1 /* 801D2864 001CF7C4 90 03 00 04 */ stw r0, 4(r3) lbl_801D2868: /* 801D2868 001CF7C8 90 61 00 18 */ stw r3, 0x18(r1) /* 801D286C 001CF7CC 38 8F 01 B0 */ addi r4, r15, 0x1b0 /* 801D2870 001CF7D0 80 0F 01 B0 */ lwz r0, 0x1b0(r15) /* 801D2874 001CF7D4 54 00 10 3A */ slwi r0, r0, 2 /* 801D2878 001CF7D8 7C 84 02 14 */ add r4, r4, r0 /* 801D287C 001CF7DC 34 84 00 04 */ addic. r4, r4, 4 /* 801D2880 001CF7E0 41 82 00 18 */ beq lbl_801D2898 /* 801D2884 001CF7E4 90 64 00 00 */ stw r3, 0(r4) /* 801D2888 001CF7E8 80 84 00 00 */ lwz r4, 0(r4) /* 801D288C 001CF7EC 80 64 00 04 */ lwz r3, 4(r4) /* 801D2890 001CF7F0 38 03 00 01 */ addi r0, r3, 1 /* 801D2894 001CF7F4 90 04 00 04 */ stw r0, 4(r4) lbl_801D2898: /* 801D2898 001CF7F8 80 8F 01 B0 */ lwz r4, 0x1b0(r15) /* 801D289C 001CF7FC 38 61 00 18 */ addi r3, r1, 0x18 /* 801D28A0 001CF800 38 04 00 01 */ addi r0, r4, 1 /* 801D28A4 001CF804 90 0F 01 B0 */ stw r0, 0x1b0(r15) /* 801D28A8 001CF808 48 00 0A B9 */ bl sub_801d3360 /* 801D28AC 001CF80C 88 0F 02 50 */ lbz r0, 0x250(r15) /* 801D28B0 001CF810 38 60 00 01 */ li r3, 1 /* 801D28B4 001CF814 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 801D28B8 001CF818 98 0F 02 50 */ stb r0, 0x250(r15) lbl_801D28BC: /* 801D28BC 001CF81C 3C 1B 00 01 */ addis r0, r27, 1 /* 801D28C0 001CF820 28 00 FF FF */ cmplwi r0, 0xffff /* 801D28C4 001CF824 41 82 00 A8 */ beq lbl_801D296C /* 801D28C8 001CF828 3C 60 50 41 */ lis r3, 0x50415254@ha /* 801D28CC 001CF82C 93 61 00 74 */ stw r27, 0x74(r1) /* 801D28D0 001CF830 38 03 52 54 */ addi r0, r3, 0x50415254@l /* 801D28D4 001CF834 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 801D28D8 001CF838 90 01 00 70 */ stw r0, 0x70(r1) /* 801D28DC 001CF83C 38 61 00 68 */ addi r3, r1, 0x68 /* 801D28E0 001CF840 38 A1 00 70 */ addi r5, r1, 0x70 /* 801D28E4 001CF844 81 84 00 00 */ lwz r12, 0(r4) /* 801D28E8 001CF848 81 8C 00 0C */ lwz r12, 0xc(r12) /* 801D28EC 001CF84C 7D 89 03 A6 */ mtctr r12 /* 801D28F0 001CF850 4E 80 04 21 */ bctrl /* 801D28F4 001CF854 39 C1 00 A4 */ addi r14, r1, 0xa4 /* 801D28F8 001CF858 38 81 00 68 */ addi r4, r1, 0x68 /* 801D28FC 001CF85C 7D C3 73 78 */ mr r3, r14 /* 801D2900 001CF860 48 16 E5 A9 */ bl __ct__6CTokenFRC6CToken /* 801D2904 001CF864 7D C3 73 78 */ mr r3, r14 /* 801D2908 001CF868 48 16 E5 05 */ bl GetObj__6CTokenFv /* 801D290C 001CF86C 80 03 00 04 */ lwz r0, 4(r3) /* 801D2910 001CF870 38 6F 01 C4 */ addi r3, r15, 0x1c4 /* 801D2914 001CF874 90 01 00 AC */ stw r0, 0xac(r1) /* 801D2918 001CF878 80 0F 01 C4 */ lwz r0, 0x1c4(r15) /* 801D291C 001CF87C 1C 00 00 0C */ mulli r0, r0, 0xc /* 801D2920 001CF880 7D C3 02 14 */ add r14, r3, r0 /* 801D2924 001CF884 35 CE 00 04 */ addic. r14, r14, 4 /* 801D2928 001CF888 41 82 00 20 */ beq lbl_801D2948 /* 801D292C 001CF88C 7D C3 73 78 */ mr r3, r14 /* 801D2930 001CF890 38 81 00 A4 */ addi r4, r1, 0xa4 /* 801D2934 001CF894 48 16 E5 75 */ bl __ct__6CTokenFRC6CToken /* 801D2938 001CF898 80 01 00 AC */ lwz r0, 0xac(r1) /* 801D293C 001CF89C 7D C3 73 78 */ mr r3, r14 /* 801D2940 001CF8A0 90 0E 00 08 */ stw r0, 8(r14) /* 801D2944 001CF8A4 48 16 E4 41 */ bl Lock__6CTokenFv lbl_801D2948: /* 801D2948 001CF8A8 80 AF 01 C4 */ lwz r5, 0x1c4(r15) /* 801D294C 001CF8AC 38 61 00 A4 */ addi r3, r1, 0xa4 /* 801D2950 001CF8B0 38 80 00 00 */ li r4, 0 /* 801D2954 001CF8B4 38 05 00 01 */ addi r0, r5, 1 /* 801D2958 001CF8B8 90 0F 01 C4 */ stw r0, 0x1c4(r15) /* 801D295C 001CF8BC 48 16 E4 E5 */ bl __dt__6CTokenFv /* 801D2960 001CF8C0 38 61 00 68 */ addi r3, r1, 0x68 /* 801D2964 001CF8C4 38 80 FF FF */ li r4, -1 /* 801D2968 001CF8C8 48 16 E4 D9 */ bl __dt__6CTokenFv lbl_801D296C: /* 801D296C 001CF8CC 3C 1C 00 01 */ addis r0, r28, 1 /* 801D2970 001CF8D0 28 00 FF FF */ cmplwi r0, 0xffff /* 801D2974 001CF8D4 41 82 00 A8 */ beq lbl_801D2A1C /* 801D2978 001CF8D8 3C 60 50 41 */ lis r3, 0x50415254@ha /* 801D297C 001CF8DC 93 81 00 64 */ stw r28, 0x64(r1) /* 801D2980 001CF8E0 38 03 52 54 */ addi r0, r3, 0x50415254@l /* 801D2984 001CF8E4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 801D2988 001CF8E8 90 01 00 60 */ stw r0, 0x60(r1) /* 801D298C 001CF8EC 38 61 00 58 */ addi r3, r1, 0x58 /* 801D2990 001CF8F0 38 A1 00 60 */ addi r5, r1, 0x60 /* 801D2994 001CF8F4 81 84 00 00 */ lwz r12, 0(r4) /* 801D2998 001CF8F8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 801D299C 001CF8FC 7D 89 03 A6 */ mtctr r12 /* 801D29A0 001CF900 4E 80 04 21 */ bctrl /* 801D29A4 001CF904 39 C1 00 98 */ addi r14, r1, 0x98 /* 801D29A8 001CF908 38 81 00 58 */ addi r4, r1, 0x58 /* 801D29AC 001CF90C 7D C3 73 78 */ mr r3, r14 /* 801D29B0 001CF910 48 16 E4 F9 */ bl __ct__6CTokenFRC6CToken /* 801D29B4 001CF914 7D C3 73 78 */ mr r3, r14 /* 801D29B8 001CF918 48 16 E4 55 */ bl GetObj__6CTokenFv /* 801D29BC 001CF91C 80 03 00 04 */ lwz r0, 4(r3) /* 801D29C0 001CF920 38 6F 01 C4 */ addi r3, r15, 0x1c4 /* 801D29C4 001CF924 90 01 00 A0 */ stw r0, 0xa0(r1) /* 801D29C8 001CF928 80 0F 01 C4 */ lwz r0, 0x1c4(r15) /* 801D29CC 001CF92C 1C 00 00 0C */ mulli r0, r0, 0xc /* 801D29D0 001CF930 7D C3 02 14 */ add r14, r3, r0 /* 801D29D4 001CF934 35 CE 00 04 */ addic. r14, r14, 4 /* 801D29D8 001CF938 41 82 00 20 */ beq lbl_801D29F8 /* 801D29DC 001CF93C 7D C3 73 78 */ mr r3, r14 /* 801D29E0 001CF940 38 81 00 98 */ addi r4, r1, 0x98 /* 801D29E4 001CF944 48 16 E4 C5 */ bl __ct__6CTokenFRC6CToken /* 801D29E8 001CF948 80 01 00 A0 */ lwz r0, 0xa0(r1) /* 801D29EC 001CF94C 7D C3 73 78 */ mr r3, r14 /* 801D29F0 001CF950 90 0E 00 08 */ stw r0, 8(r14) /* 801D29F4 001CF954 48 16 E3 91 */ bl Lock__6CTokenFv lbl_801D29F8: /* 801D29F8 001CF958 80 AF 01 C4 */ lwz r5, 0x1c4(r15) /* 801D29FC 001CF95C 38 61 00 98 */ addi r3, r1, 0x98 /* 801D2A00 001CF960 38 80 00 00 */ li r4, 0 /* 801D2A04 001CF964 38 05 00 01 */ addi r0, r5, 1 /* 801D2A08 001CF968 90 0F 01 C4 */ stw r0, 0x1c4(r15) /* 801D2A0C 001CF96C 48 16 E4 35 */ bl __dt__6CTokenFv /* 801D2A10 001CF970 38 61 00 58 */ addi r3, r1, 0x58 /* 801D2A14 001CF974 38 80 FF FF */ li r4, -1 /* 801D2A18 001CF978 48 16 E4 29 */ bl __dt__6CTokenFv lbl_801D2A1C: /* 801D2A1C 001CF97C 3C 1D 00 01 */ addis r0, r29, 1 /* 801D2A20 001CF980 28 00 FF FF */ cmplwi r0, 0xffff /* 801D2A24 001CF984 41 82 00 A8 */ beq lbl_801D2ACC /* 801D2A28 001CF988 3C 60 50 41 */ lis r3, 0x50415254@ha /* 801D2A2C 001CF98C 93 A1 00 54 */ stw r29, 0x54(r1) /* 801D2A30 001CF990 38 03 52 54 */ addi r0, r3, 0x50415254@l /* 801D2A34 001CF994 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 801D2A38 001CF998 90 01 00 50 */ stw r0, 0x50(r1) /* 801D2A3C 001CF99C 38 61 00 48 */ addi r3, r1, 0x48 /* 801D2A40 001CF9A0 38 A1 00 50 */ addi r5, r1, 0x50 /* 801D2A44 001CF9A4 81 84 00 00 */ lwz r12, 0(r4) /* 801D2A48 001CF9A8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 801D2A4C 001CF9AC 7D 89 03 A6 */ mtctr r12 /* 801D2A50 001CF9B0 4E 80 04 21 */ bctrl /* 801D2A54 001CF9B4 39 C1 00 8C */ addi r14, r1, 0x8c /* 801D2A58 001CF9B8 38 81 00 48 */ addi r4, r1, 0x48 /* 801D2A5C 001CF9BC 7D C3 73 78 */ mr r3, r14 /* 801D2A60 001CF9C0 48 16 E4 49 */ bl __ct__6CTokenFRC6CToken /* 801D2A64 001CF9C4 7D C3 73 78 */ mr r3, r14 /* 801D2A68 001CF9C8 48 16 E3 A5 */ bl GetObj__6CTokenFv /* 801D2A6C 001CF9CC 80 03 00 04 */ lwz r0, 4(r3) /* 801D2A70 001CF9D0 38 6F 01 C4 */ addi r3, r15, 0x1c4 /* 801D2A74 001CF9D4 90 01 00 94 */ stw r0, 0x94(r1) /* 801D2A78 001CF9D8 80 0F 01 C4 */ lwz r0, 0x1c4(r15) /* 801D2A7C 001CF9DC 1C 00 00 0C */ mulli r0, r0, 0xc /* 801D2A80 001CF9E0 7D C3 02 14 */ add r14, r3, r0 /* 801D2A84 001CF9E4 35 CE 00 04 */ addic. r14, r14, 4 /* 801D2A88 001CF9E8 41 82 00 20 */ beq lbl_801D2AA8 /* 801D2A8C 001CF9EC 7D C3 73 78 */ mr r3, r14 /* 801D2A90 001CF9F0 38 81 00 8C */ addi r4, r1, 0x8c /* 801D2A94 001CF9F4 48 16 E4 15 */ bl __ct__6CTokenFRC6CToken /* 801D2A98 001CF9F8 80 01 00 94 */ lwz r0, 0x94(r1) /* 801D2A9C 001CF9FC 7D C3 73 78 */ mr r3, r14 /* 801D2AA0 001CFA00 90 0E 00 08 */ stw r0, 8(r14) /* 801D2AA4 001CFA04 48 16 E2 E1 */ bl Lock__6CTokenFv lbl_801D2AA8: /* 801D2AA8 001CFA08 80 AF 01 C4 */ lwz r5, 0x1c4(r15) /* 801D2AAC 001CFA0C 38 61 00 8C */ addi r3, r1, 0x8c /* 801D2AB0 001CFA10 38 80 00 00 */ li r4, 0 /* 801D2AB4 001CFA14 38 05 00 01 */ addi r0, r5, 1 /* 801D2AB8 001CFA18 90 0F 01 C4 */ stw r0, 0x1c4(r15) /* 801D2ABC 001CFA1C 48 16 E3 85 */ bl __dt__6CTokenFv /* 801D2AC0 001CFA20 38 61 00 48 */ addi r3, r1, 0x48 /* 801D2AC4 001CFA24 38 80 FF FF */ li r4, -1 /* 801D2AC8 001CFA28 48 16 E3 79 */ bl __dt__6CTokenFv lbl_801D2ACC: /* 801D2ACC 001CFA2C 3C 1E 00 01 */ addis r0, r30, 1 /* 801D2AD0 001CFA30 28 00 FF FF */ cmplwi r0, 0xffff /* 801D2AD4 001CFA34 41 82 00 A8 */ beq lbl_801D2B7C /* 801D2AD8 001CFA38 3C 60 50 41 */ lis r3, 0x50415254@ha /* 801D2ADC 001CFA3C 93 C1 00 44 */ stw r30, 0x44(r1) /* 801D2AE0 001CFA40 38 03 52 54 */ addi r0, r3, 0x50415254@l /* 801D2AE4 001CFA44 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 801D2AE8 001CFA48 90 01 00 40 */ stw r0, 0x40(r1) /* 801D2AEC 001CFA4C 38 61 00 38 */ addi r3, r1, 0x38 /* 801D2AF0 001CFA50 38 A1 00 40 */ addi r5, r1, 0x40 /* 801D2AF4 001CFA54 81 84 00 00 */ lwz r12, 0(r4) /* 801D2AF8 001CFA58 81 8C 00 0C */ lwz r12, 0xc(r12) /* 801D2AFC 001CFA5C 7D 89 03 A6 */ mtctr r12 /* 801D2B00 001CFA60 4E 80 04 21 */ bctrl /* 801D2B04 001CFA64 39 C1 00 80 */ addi r14, r1, 0x80 /* 801D2B08 001CFA68 38 81 00 38 */ addi r4, r1, 0x38 /* 801D2B0C 001CFA6C 7D C3 73 78 */ mr r3, r14 /* 801D2B10 001CFA70 48 16 E3 99 */ bl __ct__6CTokenFRC6CToken /* 801D2B14 001CFA74 7D C3 73 78 */ mr r3, r14 /* 801D2B18 001CFA78 48 16 E2 F5 */ bl GetObj__6CTokenFv /* 801D2B1C 001CFA7C 80 03 00 04 */ lwz r0, 4(r3) /* 801D2B20 001CFA80 38 6F 01 C4 */ addi r3, r15, 0x1c4 /* 801D2B24 001CFA84 90 01 00 88 */ stw r0, 0x88(r1) /* 801D2B28 001CFA88 80 0F 01 C4 */ lwz r0, 0x1c4(r15) /* 801D2B2C 001CFA8C 1C 00 00 0C */ mulli r0, r0, 0xc /* 801D2B30 001CFA90 7D C3 02 14 */ add r14, r3, r0 /* 801D2B34 001CFA94 35 CE 00 04 */ addic. r14, r14, 4 /* 801D2B38 001CFA98 41 82 00 20 */ beq lbl_801D2B58 /* 801D2B3C 001CFA9C 7D C3 73 78 */ mr r3, r14 /* 801D2B40 001CFAA0 38 81 00 80 */ addi r4, r1, 0x80 /* 801D2B44 001CFAA4 48 16 E3 65 */ bl __ct__6CTokenFRC6CToken /* 801D2B48 001CFAA8 80 01 00 88 */ lwz r0, 0x88(r1) /* 801D2B4C 001CFAAC 7D C3 73 78 */ mr r3, r14 /* 801D2B50 001CFAB0 90 0E 00 08 */ stw r0, 8(r14) /* 801D2B54 001CFAB4 48 16 E2 31 */ bl Lock__6CTokenFv lbl_801D2B58: /* 801D2B58 001CFAB8 80 AF 01 C4 */ lwz r5, 0x1c4(r15) /* 801D2B5C 001CFABC 38 61 00 80 */ addi r3, r1, 0x80 /* 801D2B60 001CFAC0 38 80 00 00 */ li r4, 0 /* 801D2B64 001CFAC4 38 05 00 01 */ addi r0, r5, 1 /* 801D2B68 001CFAC8 90 0F 01 C4 */ stw r0, 0x1c4(r15) /* 801D2B6C 001CFACC 48 16 E2 D5 */ bl __dt__6CTokenFv /* 801D2B70 001CFAD0 38 61 00 38 */ addi r3, r1, 0x38 /* 801D2B74 001CFAD4 38 80 FF FF */ li r4, -1 /* 801D2B78 001CFAD8 48 16 E2 C9 */ bl __dt__6CTokenFv lbl_801D2B7C: /* 801D2B7C 001CFADC 3A 00 00 00 */ li r16, 0 /* 801D2B80 001CFAE0 3C 60 80 3D */ lis r3, lbl_803D1B70@ha /* 801D2B84 001CFAE4 7E 11 83 78 */ mr r17, r16 /* 801D2B88 001CFAE8 3A 4F 01 F8 */ addi r18, r15, 0x1f8 /* 801D2B8C 001CFAEC 39 C3 1B 70 */ addi r14, r3, lbl_803D1B70@l /* 801D2B90 001CFAF0 3A 60 00 00 */ li r19, 0 /* 801D2B94 001CFAF4 48 00 00 F8 */ b lbl_801D2C8C lbl_801D2B98: /* 801D2B98 001CFAF8 7D C4 73 78 */ mr r4, r14 /* 801D2B9C 001CFAFC 3A 80 00 00 */ li r20, 0 /* 801D2BA0 001CFB00 38 60 03 40 */ li r3, 0x340 /* 801D2BA4 001CFB04 38 A0 00 00 */ li r5, 0 /* 801D2BA8 001CFB08 48 14 2C C5 */ bl __nw__FUlPCcPCc /* 801D2BAC 001CFB0C 7C 75 1B 79 */ or. r21, r3, r3 /* 801D2BB0 001CFB10 41 82 00 30 */ beq lbl_801D2BE0 /* 801D2BB4 001CFB14 7C 8F 82 14 */ add r4, r15, r16 /* 801D2BB8 001CFB18 38 61 00 30 */ addi r3, r1, 0x30 /* 801D2BBC 001CFB1C 38 84 01 C8 */ addi r4, r4, 0x1c8 /* 801D2BC0 001CFB20 48 16 E2 E9 */ bl __ct__6CTokenFRC6CToken /* 801D2BC4 001CFB24 7E A3 AB 78 */ mr r3, r21 /* 801D2BC8 001CFB28 38 81 00 30 */ addi r4, r1, 0x30 /* 801D2BCC 001CFB2C 3A 80 00 01 */ li r20, 1 /* 801D2BD0 001CFB30 38 A0 00 00 */ li r5, 0 /* 801D2BD4 001CFB34 38 C0 00 01 */ li r6, 1 /* 801D2BD8 001CFB38 48 14 C8 09 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 801D2BDC 001CFB3C 7C 75 1B 78 */ mr r21, r3 lbl_801D2BE0: /* 801D2BE0 001CFB40 80 12 00 00 */ lwz r0, 0(r18) /* 801D2BE4 001CFB44 7C 75 00 D0 */ neg r3, r21 /* 801D2BE8 001CFB48 7C 63 AB 78 */ or r3, r3, r21 /* 801D2BEC 001CFB4C 92 A1 00 2C */ stw r21, 0x2c(r1) /* 801D2BF0 001CFB50 54 00 18 38 */ slwi r0, r0, 3 /* 801D2BF4 001CFB54 7C 92 02 14 */ add r4, r18, r0 /* 801D2BF8 001CFB58 54 60 0F FE */ srwi r0, r3, 0x1f /* 801D2BFC 001CFB5C 34 84 00 04 */ addic. r4, r4, 4 /* 801D2C00 001CFB60 98 01 00 28 */ stb r0, 0x28(r1) /* 801D2C04 001CFB64 41 82 00 14 */ beq lbl_801D2C18 /* 801D2C08 001CFB68 98 04 00 00 */ stb r0, 0(r4) /* 801D2C0C 001CFB6C 38 00 00 00 */ li r0, 0 /* 801D2C10 001CFB70 92 A4 00 04 */ stw r21, 4(r4) /* 801D2C14 001CFB74 98 01 00 28 */ stb r0, 0x28(r1) lbl_801D2C18: /* 801D2C18 001CFB78 80 6F 01 F8 */ lwz r3, 0x1f8(r15) /* 801D2C1C 001CFB7C 88 01 00 28 */ lbz r0, 0x28(r1) /* 801D2C20 001CFB80 38 63 00 01 */ addi r3, r3, 1 /* 801D2C24 001CFB84 28 00 00 00 */ cmplwi r0, 0 /* 801D2C28 001CFB88 90 6F 01 F8 */ stw r3, 0x1f8(r15) /* 801D2C2C 001CFB8C 41 82 00 24 */ beq lbl_801D2C50 /* 801D2C30 001CFB90 80 61 00 2C */ lwz r3, 0x2c(r1) /* 801D2C34 001CFB94 28 03 00 00 */ cmplwi r3, 0 /* 801D2C38 001CFB98 41 82 00 18 */ beq lbl_801D2C50 /* 801D2C3C 001CFB9C 81 83 00 00 */ lwz r12, 0(r3) /* 801D2C40 001CFBA0 38 80 00 01 */ li r4, 1 /* 801D2C44 001CFBA4 81 8C 00 08 */ lwz r12, 8(r12) /* 801D2C48 001CFBA8 7D 89 03 A6 */ mtctr r12 /* 801D2C4C 001CFBAC 4E 80 04 21 */ bctrl lbl_801D2C50: /* 801D2C50 001CFBB0 7E 80 07 75 */ extsb. r0, r20 /* 801D2C54 001CFBB4 41 82 00 10 */ beq lbl_801D2C64 /* 801D2C58 001CFBB8 38 61 00 30 */ addi r3, r1, 0x30 /* 801D2C5C 001CFBBC 38 80 00 00 */ li r4, 0 /* 801D2C60 001CFBC0 48 16 E1 E1 */ bl __dt__6CTokenFv lbl_801D2C64: /* 801D2C64 001CFBC4 7C 6F 8A 14 */ add r3, r15, r17 /* 801D2C68 001CFBC8 38 80 00 00 */ li r4, 0 /* 801D2C6C 001CFBCC 80 63 02 00 */ lwz r3, 0x200(r3) /* 801D2C70 001CFBD0 81 83 00 00 */ lwz r12, 0(r3) /* 801D2C74 001CFBD4 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 801D2C78 001CFBD8 7D 89 03 A6 */ mtctr r12 /* 801D2C7C 001CFBDC 4E 80 04 21 */ bctrl /* 801D2C80 001CFBE0 3A 10 00 0C */ addi r16, r16, 0xc /* 801D2C84 001CFBE4 3A 31 00 08 */ addi r17, r17, 8 /* 801D2C88 001CFBE8 3A 73 00 01 */ addi r19, r19, 1 lbl_801D2C8C: /* 801D2C8C 001CFBEC 80 0F 01 C4 */ lwz r0, 0x1c4(r15) /* 801D2C90 001CFBF0 7C 13 00 00 */ cmpw r19, r0 /* 801D2C94 001CFBF4 41 80 FF 04 */ blt lbl_801D2B98 /* 801D2C98 001CFBF8 38 6F 02 1C */ addi r3, r15, 0x21c /* 801D2C9C 001CFBFC 80 0F 02 1C */ lwz r0, 0x21c(r15) /* 801D2CA0 001CFC00 54 00 10 3A */ slwi r0, r0, 2 /* 801D2CA4 001CFC04 7C 63 02 14 */ add r3, r3, r0 /* 801D2CA8 001CFC08 34 63 00 04 */ addic. r3, r3, 4 /* 801D2CAC 001CFC0C 41 82 00 0C */ beq lbl_801D2CB8 /* 801D2CB0 001CFC10 80 01 03 28 */ lwz r0, 0x328(r1) /* 801D2CB4 001CFC14 90 03 00 00 */ stw r0, 0(r3) lbl_801D2CB8: /* 801D2CB8 001CFC18 80 6F 02 1C */ lwz r3, 0x21c(r15) /* 801D2CBC 001CFC1C 38 8F 02 1C */ addi r4, r15, 0x21c /* 801D2CC0 001CFC20 38 03 00 01 */ addi r0, r3, 1 /* 801D2CC4 001CFC24 90 0F 02 1C */ stw r0, 0x21c(r15) /* 801D2CC8 001CFC28 80 0F 02 1C */ lwz r0, 0x21c(r15) /* 801D2CCC 001CFC2C 54 00 10 3A */ slwi r0, r0, 2 /* 801D2CD0 001CFC30 7C 64 02 14 */ add r3, r4, r0 /* 801D2CD4 001CFC34 34 63 00 04 */ addic. r3, r3, 4 /* 801D2CD8 001CFC38 41 82 00 0C */ beq lbl_801D2CE4 /* 801D2CDC 001CFC3C 80 01 03 30 */ lwz r0, 0x330(r1) /* 801D2CE0 001CFC40 90 03 00 00 */ stw r0, 0(r3) lbl_801D2CE4: /* 801D2CE4 001CFC44 80 6F 02 1C */ lwz r3, 0x21c(r15) /* 801D2CE8 001CFC48 38 8F 02 1C */ addi r4, r15, 0x21c /* 801D2CEC 001CFC4C 38 03 00 01 */ addi r0, r3, 1 /* 801D2CF0 001CFC50 90 0F 02 1C */ stw r0, 0x21c(r15) /* 801D2CF4 001CFC54 80 0F 02 1C */ lwz r0, 0x21c(r15) /* 801D2CF8 001CFC58 54 00 10 3A */ slwi r0, r0, 2 /* 801D2CFC 001CFC5C 7C 64 02 14 */ add r3, r4, r0 /* 801D2D00 001CFC60 34 63 00 04 */ addic. r3, r3, 4 /* 801D2D04 001CFC64 41 82 00 0C */ beq lbl_801D2D10 /* 801D2D08 001CFC68 80 01 03 38 */ lwz r0, 0x338(r1) /* 801D2D0C 001CFC6C 90 03 00 00 */ stw r0, 0(r3) lbl_801D2D10: /* 801D2D10 001CFC70 80 6F 02 1C */ lwz r3, 0x21c(r15) /* 801D2D14 001CFC74 38 8F 02 1C */ addi r4, r15, 0x21c /* 801D2D18 001CFC78 38 03 00 01 */ addi r0, r3, 1 /* 801D2D1C 001CFC7C 90 0F 02 1C */ stw r0, 0x21c(r15) /* 801D2D20 001CFC80 80 0F 02 1C */ lwz r0, 0x21c(r15) /* 801D2D24 001CFC84 54 00 10 3A */ slwi r0, r0, 2 /* 801D2D28 001CFC88 7C 64 02 14 */ add r3, r4, r0 /* 801D2D2C 001CFC8C 34 63 00 04 */ addic. r3, r3, 4 /* 801D2D30 001CFC90 41 82 00 0C */ beq lbl_801D2D3C /* 801D2D34 001CFC94 80 01 03 40 */ lwz r0, 0x340(r1) /* 801D2D38 001CFC98 90 03 00 00 */ stw r0, 0(r3) lbl_801D2D3C: /* 801D2D3C 001CFC9C 80 AF 02 1C */ lwz r5, 0x21c(r15) /* 801D2D40 001CFCA0 7D E4 7B 78 */ mr r4, r15 /* 801D2D44 001CFCA4 38 61 00 D4 */ addi r3, r1, 0xd4 /* 801D2D48 001CFCA8 38 05 00 01 */ addi r0, r5, 1 /* 801D2D4C 001CFCAC 90 0F 02 1C */ stw r0, 0x21c(r15) /* 801D2D50 001CFCB0 4B FF F0 91 */ bl GetBoundingBox__10CFishCloudCFv /* 801D2D54 001CFCB4 C0 21 00 E0 */ lfs f1, 0xe0(r1) /* 801D2D58 001CFCB8 7D E3 7B 78 */ mr r3, r15 /* 801D2D5C 001CFCBC C0 01 00 D4 */ lfs f0, 0xd4(r1) /* 801D2D60 001CFCC0 C0 61 00 E4 */ lfs f3, 0xe4(r1) /* 801D2D64 001CFCC4 C0 41 00 D8 */ lfs f2, 0xd8(r1) /* 801D2D68 001CFCC8 EC 01 00 28 */ fsubs f0, f1, f0 /* 801D2D6C 001CFCCC C0 A2 AC 18 */ lfs f5, lbl_805AC938@sda21(r2) /* 801D2D70 001CFCD0 EC 83 10 28 */ fsubs f4, f3, f2 /* 801D2D74 001CFCD4 C0 41 00 E8 */ lfs f2, 0xe8(r1) /* 801D2D78 001CFCD8 C0 21 00 DC */ lfs f1, 0xdc(r1) /* 801D2D7C 001CFCDC EC 05 00 32 */ fmuls f0, f5, f0 /* 801D2D80 001CFCE0 C0 62 AB B4 */ lfs f3, lbl_805AC8D4@sda21(r2) /* 801D2D84 001CFCE4 EC 22 08 28 */ fsubs f1, f2, f1 /* 801D2D88 001CFCE8 EC 45 01 32 */ fmuls f2, f5, f4 /* 801D2D8C 001CFCEC D0 0F 02 38 */ stfs f0, 0x238(r15) /* 801D2D90 001CFCF0 EC 05 00 72 */ fmuls f0, f5, f1 /* 801D2D94 001CFCF4 D0 4F 02 3C */ stfs f2, 0x23c(r15) /* 801D2D98 001CFCF8 D0 0F 02 40 */ stfs f0, 0x240(r15) /* 801D2D9C 001CFCFC C0 0F 02 38 */ lfs f0, 0x238(r15) /* 801D2DA0 001CFD00 C0 2F 02 3C */ lfs f1, 0x23c(r15) /* 801D2DA4 001CFD04 C0 4F 02 40 */ lfs f2, 0x240(r15) /* 801D2DA8 001CFD08 EC 03 00 24 */ fdivs f0, f3, f0 /* 801D2DAC 001CFD0C EC 23 08 24 */ fdivs f1, f3, f1 /* 801D2DB0 001CFD10 D0 0F 02 44 */ stfs f0, 0x244(r15) /* 801D2DB4 001CFD14 EC 03 10 24 */ fdivs f0, f3, f2 /* 801D2DB8 001CFD18 D0 2F 02 48 */ stfs f1, 0x248(r15) /* 801D2DBC 001CFD1C D0 0F 02 4C */ stfs f0, 0x24c(r15) /* 801D2DC0 001CFD20 E3 E1 02 E8 */ psq_l f31, 744(r1), 0, qr0 /* 801D2DC4 001CFD24 CB E1 02 E0 */ lfd f31, 0x2e0(r1) /* 801D2DC8 001CFD28 E3 C1 02 D8 */ psq_l f30, 728(r1), 0, qr0 /* 801D2DCC 001CFD2C CB C1 02 D0 */ lfd f30, 0x2d0(r1) /* 801D2DD0 001CFD30 E3 A1 02 C8 */ psq_l f29, 712(r1), 0, qr0 /* 801D2DD4 001CFD34 CB A1 02 C0 */ lfd f29, 0x2c0(r1) /* 801D2DD8 001CFD38 E3 81 02 B8 */ psq_l f28, 696(r1), 0, qr0 /* 801D2DDC 001CFD3C CB 81 02 B0 */ lfd f28, 0x2b0(r1) /* 801D2DE0 001CFD40 E3 61 02 A8 */ psq_l f27, 680(r1), 0, qr0 /* 801D2DE4 001CFD44 CB 61 02 A0 */ lfd f27, 0x2a0(r1) /* 801D2DE8 001CFD48 E3 41 02 98 */ psq_l f26, 664(r1), 0, qr0 /* 801D2DEC 001CFD4C CB 41 02 90 */ lfd f26, 0x290(r1) /* 801D2DF0 001CFD50 E3 21 02 88 */ psq_l f25, 648(r1), 0, qr0 /* 801D2DF4 001CFD54 CB 21 02 80 */ lfd f25, 0x280(r1) /* 801D2DF8 001CFD58 E3 01 02 78 */ psq_l f24, 632(r1), 0, qr0 /* 801D2DFC 001CFD5C CB 01 02 70 */ lfd f24, 0x270(r1) /* 801D2E00 001CFD60 E2 E1 02 68 */ psq_l f23, 616(r1), 0, qr0 /* 801D2E04 001CFD64 CA E1 02 60 */ lfd f23, 0x260(r1) /* 801D2E08 001CFD68 E2 C1 02 58 */ psq_l f22, 600(r1), 0, qr0 /* 801D2E0C 001CFD6C CA C1 02 50 */ lfd f22, 0x250(r1) /* 801D2E10 001CFD70 E2 A1 02 48 */ psq_l f21, 584(r1), 0, qr0 /* 801D2E14 001CFD74 CA A1 02 40 */ lfd f21, 0x240(r1) /* 801D2E18 001CFD78 E2 81 02 38 */ psq_l f20, 568(r1), 0, qr0 /* 801D2E1C 001CFD7C CA 81 02 30 */ lfd f20, 0x230(r1) /* 801D2E20 001CFD80 E2 61 02 28 */ psq_l f19, 552(r1), 0, qr0 /* 801D2E24 001CFD84 CA 61 02 20 */ lfd f19, 0x220(r1) /* 801D2E28 001CFD88 E2 41 02 18 */ psq_l f18, 536(r1), 0, qr0 /* 801D2E2C 001CFD8C CA 41 02 10 */ lfd f18, 0x210(r1) /* 801D2E30 001CFD90 B9 C1 01 C8 */ lmw r14, 0x1c8(r1) /* 801D2E34 001CFD94 80 01 02 F4 */ lwz r0, 0x2f4(r1) /* 801D2E38 001CFD98 7C 08 03 A6 */ mtlr r0 /* 801D2E3C 001CFD9C 38 21 02 F0 */ addi r1, r1, 0x2f0 /* 801D2E40 001CFDA0 4E 80 00 20 */ blr .global __ct__Q210CFishCloud5CBoidFRC9CVector3fRC9CVector3ff __ct__Q210CFishCloud5CBoidFRC9CVector3fRC9CVector3ff: /* 801D2E44 001CFDA4 C0 04 00 00 */ lfs f0, 0(r4) /* 801D2E48 001CFDA8 38 C0 00 00 */ li r6, 0 /* 801D2E4C 001CFDAC 38 00 00 01 */ li r0, 1 /* 801D2E50 001CFDB0 D0 03 00 00 */ stfs f0, 0(r3) /* 801D2E54 001CFDB4 C0 04 00 04 */ lfs f0, 4(r4) /* 801D2E58 001CFDB8 D0 03 00 04 */ stfs f0, 4(r3) /* 801D2E5C 001CFDBC C0 04 00 08 */ lfs f0, 8(r4) /* 801D2E60 001CFDC0 D0 03 00 08 */ stfs f0, 8(r3) /* 801D2E64 001CFDC4 C0 05 00 00 */ lfs f0, 0(r5) /* 801D2E68 001CFDC8 D0 03 00 0C */ stfs f0, 0xc(r3) /* 801D2E6C 001CFDCC C0 05 00 04 */ lfs f0, 4(r5) /* 801D2E70 001CFDD0 D0 03 00 10 */ stfs f0, 0x10(r3) /* 801D2E74 001CFDD4 C0 05 00 08 */ lfs f0, 8(r5) /* 801D2E78 001CFDD8 D0 03 00 14 */ stfs f0, 0x14(r3) /* 801D2E7C 001CFDDC D0 23 00 18 */ stfs f1, 0x18(r3) /* 801D2E80 001CFDE0 90 C3 00 1C */ stw r6, 0x1c(r3) /* 801D2E84 001CFDE4 98 03 00 20 */ stb r0, 0x20(r3) /* 801D2E88 001CFDE8 4E 80 00 20 */ blr .global __lt__Q210CFishCloud15CModifierSourceCFRCQ210CFishCloud15CModifierSource __lt__Q210CFishCloud15CModifierSourceCFRCQ210CFishCloud15CModifierSource: /* 801D2E8C 001CFDEC A0 A3 00 00 */ lhz r5, 0(r3) /* 801D2E90 001CFDF0 A0 04 00 00 */ lhz r0, 0(r4) /* 801D2E94 001CFDF4 7C 05 00 40 */ cmplw r5, r0 /* 801D2E98 001CFDF8 40 82 00 18 */ bne lbl_801D2EB0 /* 801D2E9C 001CFDFC 88 63 00 0C */ lbz r3, 0xc(r3) /* 801D2EA0 001CFE00 88 04 00 0C */ lbz r0, 0xc(r4) /* 801D2EA4 001CFE04 7C 00 18 50 */ subf r0, r0, r3 /* 801D2EA8 001CFE08 54 03 0F FE */ srwi r3, r0, 0x1f /* 801D2EAC 001CFE0C 4E 80 00 20 */ blr lbl_801D2EB0: /* 801D2EB0 001CFE10 7C 00 28 50 */ subf r0, r0, r5 /* 801D2EB4 001CFE14 54 03 0F FE */ srwi r3, r0, 0x1f /* 801D2EB8 001CFE18 4E 80 00 20 */ blr .global __ct__Q210CFishCloud15CModifierSourceFRC9TUniqueIdbff __ct__Q210CFishCloud15CModifierSourceFRC9TUniqueIdbff: /* 801D2EBC 001CFE1C A0 04 00 00 */ lhz r0, 0(r4) /* 801D2EC0 001CFE20 B0 03 00 00 */ sth r0, 0(r3) /* 801D2EC4 001CFE24 D0 23 00 04 */ stfs f1, 4(r3) /* 801D2EC8 001CFE28 D0 43 00 08 */ stfs f2, 8(r3) /* 801D2ECC 001CFE2C 98 A3 00 0C */ stb r5, 0xc(r3) /* 801D2ED0 001CFE30 98 C3 00 0D */ stb r6, 0xd(r3) /* 801D2ED4 001CFE34 4E 80 00 20 */ blr .global RemoveSelf__18CFishCloudModifierFR13CStateManager RemoveSelf__18CFishCloudModifierFR13CStateManager: /* 801D2ED8 001CFE38 94 21 FF C0 */ stwu r1, -0x40(r1) /* 801D2EDC 001CFE3C 7C 08 02 A6 */ mflr r0 /* 801D2EE0 001CFE40 90 01 00 44 */ stw r0, 0x44(r1) /* 801D2EE4 001CFE44 93 E1 00 3C */ stw r31, 0x3c(r1) /* 801D2EE8 001CFE48 93 C1 00 38 */ stw r30, 0x38(r1) /* 801D2EEC 001CFE4C 7C 9E 23 78 */ mr r30, r4 /* 801D2EF0 001CFE50 93 A1 00 34 */ stw r29, 0x34(r1) /* 801D2EF4 001CFE54 7C 7D 1B 78 */ mr r29, r3 /* 801D2EF8 001CFE58 83 E3 00 2C */ lwz r31, 0x2c(r3) /* 801D2EFC 001CFE5C 48 00 00 AC */ b lbl_801D2FA8 lbl_801D2F00: /* 801D2F00 001CFE60 80 1F 00 00 */ lwz r0, 0(r31) /* 801D2F04 001CFE64 2C 00 00 19 */ cmpwi r0, 0x19 /* 801D2F08 001CFE68 40 82 00 9C */ bne lbl_801D2FA4 /* 801D2F0C 001CFE6C 80 1F 00 04 */ lwz r0, 4(r31) /* 801D2F10 001CFE70 2C 00 00 06 */ cmpwi r0, 6 /* 801D2F14 001CFE74 40 82 00 90 */ bne lbl_801D2FA4 /* 801D2F18 001CFE78 80 1F 00 08 */ lwz r0, 8(r31) /* 801D2F1C 001CFE7C 7F C4 F3 78 */ mr r4, r30 /* 801D2F20 001CFE80 38 61 00 1C */ addi r3, r1, 0x1c /* 801D2F24 001CFE84 38 A1 00 24 */ addi r5, r1, 0x24 /* 801D2F28 001CFE88 90 01 00 24 */ stw r0, 0x24(r1) /* 801D2F2C 001CFE8C 4B E7 4F F1 */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 801D2F30 001CFE90 A0 61 00 1C */ lhz r3, 0x1c(r1) /* 801D2F34 001CFE94 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 801D2F38 001CFE98 B0 61 00 20 */ sth r3, 0x20(r1) /* 801D2F3C 001CFE9C 7C 03 00 40 */ cmplw r3, r0 /* 801D2F40 001CFEA0 41 82 00 64 */ beq lbl_801D2FA4 /* 801D2F44 001CFEA4 B0 61 00 18 */ sth r3, 0x18(r1) /* 801D2F48 001CFEA8 7F C3 F3 78 */ mr r3, r30 /* 801D2F4C 001CFEAC 38 81 00 18 */ addi r4, r1, 0x18 /* 801D2F50 001CFEB0 4B E7 96 25 */ bl ObjectById__13CStateManagerF9TUniqueId /* 801D2F54 001CFEB4 7C 64 1B 78 */ mr r4, r3 /* 801D2F58 001CFEB8 38 61 00 28 */ addi r3, r1, 0x28 /* 801D2F5C 001CFEBC 4B ED B2 05 */ bl "__ct__24TCastToPtr<10CFishCloud>FP7CEntity" /* 801D2F60 001CFEC0 80 63 00 04 */ lwz r3, 4(r3) /* 801D2F64 001CFEC4 28 03 00 00 */ cmplwi r3, 0 /* 801D2F68 001CFEC8 41 82 00 3C */ beq lbl_801D2FA4 /* 801D2F6C 001CFECC 88 1D 00 F0 */ lbz r0, 0xf0(r29) /* 801D2F70 001CFED0 28 00 00 00 */ cmplwi r0, 0 /* 801D2F74 001CFED4 41 82 00 1C */ beq lbl_801D2F90 /* 801D2F78 001CFED8 A0 1D 00 08 */ lhz r0, 8(r29) /* 801D2F7C 001CFEDC 38 81 00 14 */ addi r4, r1, 0x14 /* 801D2F80 001CFEE0 B0 01 00 10 */ sth r0, 0x10(r1) /* 801D2F84 001CFEE4 B0 01 00 14 */ sth r0, 0x14(r1) /* 801D2F88 001CFEE8 4B FF DA 15 */ bl sub_801d099c /* 801D2F8C 001CFEEC 48 00 00 18 */ b lbl_801D2FA4 lbl_801D2F90: /* 801D2F90 001CFEF0 A0 1D 00 08 */ lhz r0, 8(r29) /* 801D2F94 001CFEF4 38 81 00 0C */ addi r4, r1, 0xc /* 801D2F98 001CFEF8 B0 01 00 08 */ sth r0, 8(r1) /* 801D2F9C 001CFEFC B0 01 00 0C */ sth r0, 0xc(r1) /* 801D2FA0 001CFF00 4B FF DB F1 */ bl sub_801d0b90 lbl_801D2FA4: /* 801D2FA4 001CFF04 3B FF 00 0C */ addi r31, r31, 0xc lbl_801D2FA8: /* 801D2FA8 001CFF08 80 1D 00 24 */ lwz r0, 0x24(r29) /* 801D2FAC 001CFF0C 80 7D 00 2C */ lwz r3, 0x2c(r29) /* 801D2FB0 001CFF10 1C 00 00 0C */ mulli r0, r0, 0xc /* 801D2FB4 001CFF14 7C 03 02 14 */ add r0, r3, r0 /* 801D2FB8 001CFF18 7C 1F 00 40 */ cmplw r31, r0 /* 801D2FBC 001CFF1C 40 82 FF 44 */ bne lbl_801D2F00 /* 801D2FC0 001CFF20 80 01 00 44 */ lwz r0, 0x44(r1) /* 801D2FC4 001CFF24 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 801D2FC8 001CFF28 83 C1 00 38 */ lwz r30, 0x38(r1) /* 801D2FCC 001CFF2C 83 A1 00 34 */ lwz r29, 0x34(r1) /* 801D2FD0 001CFF30 7C 08 03 A6 */ mtlr r0 /* 801D2FD4 001CFF34 38 21 00 40 */ addi r1, r1, 0x40 /* 801D2FD8 001CFF38 4E 80 00 20 */ blr .global AddSelf__18CFishCloudModifierFR13CStateManager AddSelf__18CFishCloudModifierFR13CStateManager: /* 801D2FDC 001CFF3C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 801D2FE0 001CFF40 7C 08 02 A6 */ mflr r0 /* 801D2FE4 001CFF44 90 01 00 44 */ stw r0, 0x44(r1) /* 801D2FE8 001CFF48 93 E1 00 3C */ stw r31, 0x3c(r1) /* 801D2FEC 001CFF4C 93 C1 00 38 */ stw r30, 0x38(r1) /* 801D2FF0 001CFF50 7C 9E 23 78 */ mr r30, r4 /* 801D2FF4 001CFF54 93 A1 00 34 */ stw r29, 0x34(r1) /* 801D2FF8 001CFF58 7C 7D 1B 78 */ mr r29, r3 /* 801D2FFC 001CFF5C 83 E3 00 2C */ lwz r31, 0x2c(r3) /* 801D3000 001CFF60 48 00 00 C4 */ b lbl_801D30C4 lbl_801D3004: /* 801D3004 001CFF64 80 1F 00 00 */ lwz r0, 0(r31) /* 801D3008 001CFF68 2C 00 00 19 */ cmpwi r0, 0x19 /* 801D300C 001CFF6C 40 82 00 B4 */ bne lbl_801D30C0 /* 801D3010 001CFF70 80 1F 00 04 */ lwz r0, 4(r31) /* 801D3014 001CFF74 2C 00 00 06 */ cmpwi r0, 6 /* 801D3018 001CFF78 40 82 00 A8 */ bne lbl_801D30C0 /* 801D301C 001CFF7C 80 1F 00 08 */ lwz r0, 8(r31) /* 801D3020 001CFF80 7F C4 F3 78 */ mr r4, r30 /* 801D3024 001CFF84 38 61 00 1C */ addi r3, r1, 0x1c /* 801D3028 001CFF88 38 A1 00 24 */ addi r5, r1, 0x24 /* 801D302C 001CFF8C 90 01 00 24 */ stw r0, 0x24(r1) /* 801D3030 001CFF90 4B E7 4E ED */ bl GetIdForScript__13CStateManagerCF9TEditorId /* 801D3034 001CFF94 A0 61 00 1C */ lhz r3, 0x1c(r1) /* 801D3038 001CFF98 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 801D303C 001CFF9C B0 61 00 20 */ sth r3, 0x20(r1) /* 801D3040 001CFFA0 7C 03 00 40 */ cmplw r3, r0 /* 801D3044 001CFFA4 41 82 00 7C */ beq lbl_801D30C0 /* 801D3048 001CFFA8 B0 61 00 18 */ sth r3, 0x18(r1) /* 801D304C 001CFFAC 7F C3 F3 78 */ mr r3, r30 /* 801D3050 001CFFB0 38 81 00 18 */ addi r4, r1, 0x18 /* 801D3054 001CFFB4 4B E7 95 21 */ bl ObjectById__13CStateManagerF9TUniqueId /* 801D3058 001CFFB8 7C 64 1B 78 */ mr r4, r3 /* 801D305C 001CFFBC 38 61 00 28 */ addi r3, r1, 0x28 /* 801D3060 001CFFC0 4B ED B1 01 */ bl "__ct__24TCastToPtr<10CFishCloud>FP7CEntity" /* 801D3064 001CFFC4 80 63 00 04 */ lwz r3, 4(r3) /* 801D3068 001CFFC8 28 03 00 00 */ cmplwi r3, 0 /* 801D306C 001CFFCC 41 82 00 54 */ beq lbl_801D30C0 /* 801D3070 001CFFD0 88 1D 00 F0 */ lbz r0, 0xf0(r29) /* 801D3074 001CFFD4 28 00 00 00 */ cmplwi r0, 0 /* 801D3078 001CFFD8 41 82 00 28 */ beq lbl_801D30A0 /* 801D307C 001CFFDC A0 1D 00 08 */ lhz r0, 8(r29) /* 801D3080 001CFFE0 38 81 00 14 */ addi r4, r1, 0x14 /* 801D3084 001CFFE4 B0 01 00 14 */ sth r0, 0x14(r1) /* 801D3088 001CFFE8 88 BD 00 F1 */ lbz r5, 0xf1(r29) /* 801D308C 001CFFEC B0 01 00 10 */ sth r0, 0x10(r1) /* 801D3090 001CFFF0 C0 3D 00 E8 */ lfs f1, 0xe8(r29) /* 801D3094 001CFFF4 C0 5D 00 EC */ lfs f2, 0xec(r29) /* 801D3098 001CFFF8 4B FF DB ED */ bl sub_801d0c84 /* 801D309C 001CFFFC 48 00 00 24 */ b lbl_801D30C0 lbl_801D30A0: /* 801D30A0 001D0000 A0 1D 00 08 */ lhz r0, 8(r29) /* 801D30A4 001D0004 38 81 00 0C */ addi r4, r1, 0xc /* 801D30A8 001D0008 B0 01 00 0C */ sth r0, 0xc(r1) /* 801D30AC 001D000C 88 BD 00 F1 */ lbz r5, 0xf1(r29) /* 801D30B0 001D0010 B0 01 00 08 */ sth r0, 8(r1) /* 801D30B4 001D0014 C0 3D 00 E8 */ lfs f1, 0xe8(r29) /* 801D30B8 001D0018 C0 5D 00 EC */ lfs f2, 0xec(r29) /* 801D30BC 001D001C 4B FF E0 89 */ bl sub_801d1144 lbl_801D30C0: /* 801D30C0 001D0020 3B FF 00 0C */ addi r31, r31, 0xc lbl_801D30C4: /* 801D30C4 001D0024 80 1D 00 24 */ lwz r0, 0x24(r29) /* 801D30C8 001D0028 80 7D 00 2C */ lwz r3, 0x2c(r29) /* 801D30CC 001D002C 1C 00 00 0C */ mulli r0, r0, 0xc /* 801D30D0 001D0030 7C 03 02 14 */ add r0, r3, r0 /* 801D30D4 001D0034 7C 1F 00 40 */ cmplw r31, r0 /* 801D30D8 001D0038 40 82 FF 2C */ bne lbl_801D3004 /* 801D30DC 001D003C 80 01 00 44 */ lwz r0, 0x44(r1) /* 801D30E0 001D0040 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 801D30E4 001D0044 83 C1 00 38 */ lwz r30, 0x38(r1) /* 801D30E8 001D0048 83 A1 00 34 */ lwz r29, 0x34(r1) /* 801D30EC 001D004C 7C 08 03 A6 */ mtlr r0 /* 801D30F0 001D0050 38 21 00 40 */ addi r1, r1, 0x40 /* 801D30F4 001D0054 4E 80 00 20 */ blr .global AcceptScriptMsg__18CFishCloudModifierF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__18CFishCloudModifierF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 801D30F8 001D0058 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801D30FC 001D005C 7C 08 02 A6 */ mflr r0 /* 801D3100 001D0060 90 01 00 24 */ stw r0, 0x24(r1) /* 801D3104 001D0064 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801D3108 001D0068 7C DF 33 78 */ mr r31, r6 /* 801D310C 001D006C 93 C1 00 18 */ stw r30, 0x18(r1) /* 801D3110 001D0070 7C 9E 23 78 */ mr r30, r4 /* 801D3114 001D0074 93 A1 00 14 */ stw r29, 0x14(r1) /* 801D3118 001D0078 7C 7D 1B 78 */ mr r29, r3 /* 801D311C 001D007C A0 05 00 00 */ lhz r0, 0(r5) /* 801D3120 001D0080 38 A1 00 08 */ addi r5, r1, 8 /* 801D3124 001D0084 B0 01 00 08 */ sth r0, 8(r1) /* 801D3128 001D0088 4B E8 04 ED */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 801D312C 001D008C 2C 1E 00 04 */ cmpwi r30, 4 /* 801D3130 001D0090 41 82 00 48 */ beq lbl_801D3178 /* 801D3134 001D0094 40 80 00 10 */ bge lbl_801D3144 /* 801D3138 001D0098 2C 1E 00 01 */ cmpwi r30, 1 /* 801D313C 001D009C 41 82 00 20 */ beq lbl_801D315C /* 801D3140 001D00A0 48 00 00 44 */ b lbl_801D3184 lbl_801D3144: /* 801D3144 001D00A4 2C 1E 00 23 */ cmpwi r30, 0x23 /* 801D3148 001D00A8 41 82 00 14 */ beq lbl_801D315C /* 801D314C 001D00AC 40 80 00 38 */ bge lbl_801D3184 /* 801D3150 001D00B0 2C 1E 00 22 */ cmpwi r30, 0x22 /* 801D3154 001D00B4 40 80 00 24 */ bge lbl_801D3178 /* 801D3158 001D00B8 48 00 00 2C */ b lbl_801D3184 lbl_801D315C: /* 801D315C 001D00BC 88 1D 00 30 */ lbz r0, 0x30(r29) /* 801D3160 001D00C0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 801D3164 001D00C4 41 82 00 20 */ beq lbl_801D3184 /* 801D3168 001D00C8 7F A3 EB 78 */ mr r3, r29 /* 801D316C 001D00CC 7F E4 FB 78 */ mr r4, r31 /* 801D3170 001D00D0 4B FF FE 6D */ bl AddSelf__18CFishCloudModifierFR13CStateManager /* 801D3174 001D00D4 48 00 00 10 */ b lbl_801D3184 lbl_801D3178: /* 801D3178 001D00D8 7F A3 EB 78 */ mr r3, r29 /* 801D317C 001D00DC 7F E4 FB 78 */ mr r4, r31 /* 801D3180 001D00E0 4B FF FD 59 */ bl RemoveSelf__18CFishCloudModifierFR13CStateManager lbl_801D3184: /* 801D3184 001D00E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 801D3188 001D00E8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801D318C 001D00EC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801D3190 001D00F0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801D3194 001D00F4 7C 08 03 A6 */ mtlr r0 /* 801D3198 001D00F8 38 21 00 20 */ addi r1, r1, 0x20 /* 801D319C 001D00FC 4E 80 00 20 */ blr .global Accept__18CFishCloudModifierFR8IVisitor Accept__18CFishCloudModifierFR8IVisitor: /* 801D31A0 001D0100 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801D31A4 001D0104 7C 08 02 A6 */ mflr r0 /* 801D31A8 001D0108 90 01 00 14 */ stw r0, 0x14(r1) /* 801D31AC 001D010C 7C 60 1B 78 */ mr r0, r3 /* 801D31B0 001D0110 7C 83 23 78 */ mr r3, r4 /* 801D31B4 001D0114 81 84 00 00 */ lwz r12, 0(r4) /* 801D31B8 001D0118 7C 04 03 78 */ mr r4, r0 /* 801D31BC 001D011C 81 8C 00 08 */ lwz r12, 8(r12) /* 801D31C0 001D0120 7D 89 03 A6 */ mtctr r12 /* 801D31C4 001D0124 4E 80 04 21 */ bctrl /* 801D31C8 001D0128 80 01 00 14 */ lwz r0, 0x14(r1) /* 801D31CC 001D012C 7C 08 03 A6 */ mtlr r0 /* 801D31D0 001D0130 38 21 00 10 */ addi r1, r1, 0x10 /* 801D31D4 001D0134 4E 80 00 20 */ blr .global "__ct__18CFishCloudModifierF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbff" "__ct__18CFishCloudModifierF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC9CVector3fbff": /* 801D31D8 001D0138 94 21 FE C0 */ stwu r1, -0x140(r1) /* 801D31DC 001D013C 7C 08 02 A6 */ mflr r0 /* 801D31E0 001D0140 90 01 01 44 */ stw r0, 0x144(r1) /* 801D31E4 001D0144 DB E1 01 38 */ stfd f31, 0x138(r1) /* 801D31E8 001D0148 FF E0 10 90 */ fmr f31, f2 /* 801D31EC 001D014C DB C1 01 30 */ stfd f30, 0x130(r1) /* 801D31F0 001D0150 FF C0 08 90 */ fmr f30, f1 /* 801D31F4 001D0154 BF 01 01 10 */ stmw r24, 0x110(r1) /* 801D31F8 001D0158 7C 7F 1B 78 */ mr r31, r3 /* 801D31FC 001D015C 7C 98 23 78 */ mr r24, r4 /* 801D3200 001D0160 7C B9 2B 78 */ mr r25, r5 /* 801D3204 001D0164 7C DA 33 78 */ mr r26, r6 /* 801D3208 001D0168 7C FB 3B 78 */ mr r27, r7 /* 801D320C 001D016C 7D 1C 43 78 */ mr r28, r8 /* 801D3210 001D0170 7D 3D 4B 78 */ mr r29, r9 /* 801D3214 001D0174 7D 5E 53 78 */ mr r30, r10 /* 801D3218 001D0178 38 61 00 B8 */ addi r3, r1, 0xb8 /* 801D321C 001D017C 4B E6 75 89 */ bl CModelDataNull__10CModelDataFv /* 801D3220 001D0180 38 61 00 50 */ addi r3, r1, 0x50 /* 801D3224 001D0184 4B E4 7C 15 */ bl None__16CActorParametersFv /* 801D3228 001D0188 A0 8D A3 8C */ lhz r4, kInvalidUniqueId@sda21(r13) /* 801D322C 001D018C 38 00 00 00 */ li r0, 0 /* 801D3230 001D0190 80 AD 91 88 */ lwz r5, lbl_805A7D48@sda21(r13) /* 801D3234 001D0194 38 60 00 00 */ li r3, 0 /* 801D3238 001D0198 B0 81 00 10 */ sth r4, 0x10(r1) /* 801D323C 001D019C 38 80 00 01 */ li r4, 1 /* 801D3240 001D01A0 90 01 00 1C */ stw r0, 0x1c(r1) /* 801D3244 001D01A4 90 01 00 18 */ stw r0, 0x18(r1) /* 801D3248 001D01A8 48 1B 6C AD */ bl __shl2i /* 801D324C 001D01AC 80 01 00 18 */ lwz r0, 0x18(r1) /* 801D3250 001D01B0 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 801D3254 001D01B4 7C 03 1B 78 */ or r3, r0, r3 /* 801D3258 001D01B8 A0 18 00 00 */ lhz r0, 0(r24) /* 801D325C 001D01BC 7C A5 23 78 */ or r5, r5, r4 /* 801D3260 001D01C0 90 61 00 18 */ stw r3, 0x18(r1) /* 801D3264 001D01C4 7F 84 E3 78 */ mr r4, r28 /* 801D3268 001D01C8 38 61 00 20 */ addi r3, r1, 0x20 /* 801D326C 001D01CC 90 A1 00 1C */ stw r5, 0x1c(r1) /* 801D3270 001D01D0 B0 01 00 14 */ sth r0, 0x14(r1) /* 801D3274 001D01D4 48 13 FE CD */ bl Translate__12CTransform4fFRC9CVector3f /* 801D3278 001D01D8 38 61 00 50 */ addi r3, r1, 0x50 /* 801D327C 001D01DC 38 01 00 10 */ addi r0, r1, 0x10 /* 801D3280 001D01E0 90 61 00 08 */ stw r3, 8(r1) /* 801D3284 001D01E4 7F E3 FB 78 */ mr r3, r31 /* 801D3288 001D01E8 7F 25 CB 78 */ mr r5, r25 /* 801D328C 001D01EC 7F 46 D3 78 */ mr r6, r26 /* 801D3290 001D01F0 90 01 00 0C */ stw r0, 0xc(r1) /* 801D3294 001D01F4 7F 67 DB 78 */ mr r7, r27 /* 801D3298 001D01F8 38 81 00 14 */ addi r4, r1, 0x14 /* 801D329C 001D01FC 39 01 00 20 */ addi r8, r1, 0x20 /* 801D32A0 001D0200 39 21 00 B8 */ addi r9, r1, 0xb8 /* 801D32A4 001D0204 39 41 00 18 */ addi r10, r1, 0x18 /* 801D32A8 001D0208 4B E8 25 79 */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" /* 801D32AC 001D020C 38 61 00 50 */ addi r3, r1, 0x50 /* 801D32B0 001D0210 38 80 FF FF */ li r4, -1 /* 801D32B4 001D0214 4B F3 33 55 */ bl __dt__16CLightParametersFv /* 801D32B8 001D0218 38 61 00 B8 */ addi r3, r1, 0xb8 /* 801D32BC 001D021C 38 80 FF FF */ li r4, -1 /* 801D32C0 001D0220 4B F4 37 8D */ bl __dt__10CModelDataFv /* 801D32C4 001D0224 3C 80 80 3E */ lis r4, lbl_803E57C4@ha /* 801D32C8 001D0228 7F E3 FB 78 */ mr r3, r31 /* 801D32CC 001D022C 38 04 57 C4 */ addi r0, r4, lbl_803E57C4@l /* 801D32D0 001D0230 90 1F 00 00 */ stw r0, 0(r31) /* 801D32D4 001D0234 D3 DF 00 E8 */ stfs f30, 0xe8(r31) /* 801D32D8 001D0238 D3 FF 00 EC */ stfs f31, 0xec(r31) /* 801D32DC 001D023C 9B BF 00 F0 */ stb r29, 0xf0(r31) /* 801D32E0 001D0240 9B DF 00 F1 */ stb r30, 0xf1(r31) /* 801D32E4 001D0244 CB E1 01 38 */ lfd f31, 0x138(r1) /* 801D32E8 001D0248 CB C1 01 30 */ lfd f30, 0x130(r1) /* 801D32EC 001D024C BB 01 01 10 */ lmw r24, 0x110(r1) /* 801D32F0 001D0250 80 01 01 44 */ lwz r0, 0x144(r1) /* 801D32F4 001D0254 7C 08 03 A6 */ mtlr r0 /* 801D32F8 001D0258 38 21 01 40 */ addi r1, r1, 0x140 /* 801D32FC 001D025C 4E 80 00 20 */ blr .global __dt__18CFishCloudModifierFv __dt__18CFishCloudModifierFv: /* 801D3300 001D0260 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801D3304 001D0264 7C 08 02 A6 */ mflr r0 /* 801D3308 001D0268 90 01 00 14 */ stw r0, 0x14(r1) /* 801D330C 001D026C 93 E1 00 0C */ stw r31, 0xc(r1) /* 801D3310 001D0270 7C 9F 23 78 */ mr r31, r4 /* 801D3314 001D0274 93 C1 00 08 */ stw r30, 8(r1) /* 801D3318 001D0278 7C 7E 1B 79 */ or. r30, r3, r3 /* 801D331C 001D027C 41 82 00 28 */ beq lbl_801D3344 /* 801D3320 001D0280 3C A0 80 3E */ lis r5, lbl_803E57C4@ha /* 801D3324 001D0284 38 80 00 00 */ li r4, 0 /* 801D3328 001D0288 38 05 57 C4 */ addi r0, r5, lbl_803E57C4@l /* 801D332C 001D028C 90 1E 00 00 */ stw r0, 0(r30) /* 801D3330 001D0290 4B E8 23 C1 */ bl __dt__6CActorFv /* 801D3334 001D0294 7F E0 07 35 */ extsh. r0, r31 /* 801D3338 001D0298 40 81 00 0C */ ble lbl_801D3344 /* 801D333C 001D029C 7F C3 F3 78 */ mr r3, r30 /* 801D3340 001D02A0 48 14 25 F1 */ bl Free__7CMemoryFPCv lbl_801D3344: /* 801D3344 001D02A4 80 01 00 14 */ lwz r0, 0x14(r1) /* 801D3348 001D02A8 7F C3 F3 78 */ mr r3, r30 /* 801D334C 001D02AC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801D3350 001D02B0 83 C1 00 08 */ lwz r30, 8(r1) /* 801D3354 001D02B4 7C 08 03 A6 */ mtlr r0 /* 801D3358 001D02B8 38 21 00 10 */ addi r1, r1, 0x10 /* 801D335C 001D02BC 4E 80 00 20 */ blr .global sub_801d3360 sub_801d3360: /* 801D3360 001D02C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801D3364 001D02C4 7C 08 02 A6 */ mflr r0 /* 801D3368 001D02C8 90 01 00 14 */ stw r0, 0x14(r1) /* 801D336C 001D02CC 93 E1 00 0C */ stw r31, 0xc(r1) /* 801D3370 001D02D0 7C 7F 1B 78 */ mr r31, r3 /* 801D3374 001D02D4 80 83 00 00 */ lwz r4, 0(r3) /* 801D3378 001D02D8 80 64 00 04 */ lwz r3, 4(r4) /* 801D337C 001D02DC 34 03 FF FF */ addic. r0, r3, -1 /* 801D3380 001D02E0 90 04 00 04 */ stw r0, 4(r4) /* 801D3384 001D02E4 41 81 00 24 */ bgt lbl_801D33A8 /* 801D3388 001D02E8 80 7F 00 00 */ lwz r3, 0(r31) /* 801D338C 001D02EC 38 80 00 01 */ li r4, 1 /* 801D3390 001D02F0 80 63 00 00 */ lwz r3, 0(r3) /* 801D3394 001D02F4 4B F4 36 B9 */ bl __dt__10CModelDataFv /* 801D3398 001D02F8 80 7F 00 00 */ lwz r3, 0(r31) /* 801D339C 001D02FC 28 03 00 00 */ cmplwi r3, 0 /* 801D33A0 001D0300 41 82 00 08 */ beq lbl_801D33A8 /* 801D33A4 001D0304 48 14 25 8D */ bl Free__7CMemoryFPCv lbl_801D33A8: /* 801D33A8 001D0308 80 01 00 14 */ lwz r0, 0x14(r1) /* 801D33AC 001D030C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801D33B0 001D0310 7C 08 03 A6 */ mtlr r0 /* 801D33B4 001D0314 38 21 00 10 */ addi r1, r1, 0x10 /* 801D33B8 001D0318 4E 80 00 20 */ blr .global "lower_bound,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>,Q210CFishCloud15CModifierSource>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>" /* 801D33F4 001D0354 80 1B 00 00 */ lwz r0, 0(r27) /* 801D33F8 001D0358 7C 7E 1B 78 */ mr r30, r3 /* 801D33FC 001D035C 90 01 00 10 */ stw r0, 0x10(r1) /* 801D3400 001D0360 48 00 00 5C */ b lbl_801D345C lbl_801D3404: /* 801D3404 001D0364 57 C3 0F FE */ srwi r3, r30, 0x1f /* 801D3408 001D0368 80 1B 00 00 */ lwz r0, 0(r27) /* 801D340C 001D036C 7C 83 F2 14 */ add r4, r3, r30 /* 801D3410 001D0370 38 61 00 10 */ addi r3, r1, 0x10 /* 801D3414 001D0374 7C 9D 0E 70 */ srawi r29, r4, 1 /* 801D3418 001D0378 90 01 00 10 */ stw r0, 0x10(r1) /* 801D341C 001D037C 7F A4 EB 78 */ mr r4, r29 /* 801D3420 001D0380 48 00 03 89 */ bl "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>i" /* 801D3424 001D0384 80 61 00 10 */ lwz r3, 0x10(r1) /* 801D3428 001D0388 7F 84 E3 78 */ mr r4, r28 /* 801D342C 001D038C 4B FF FA 61 */ bl __lt__Q210CFishCloud15CModifierSourceCFRCQ210CFishCloud15CModifierSource /* 801D3430 001D0390 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801D3434 001D0394 41 82 00 24 */ beq lbl_801D3458 /* 801D3438 001D0398 80 01 00 10 */ lwz r0, 0x10(r1) /* 801D343C 001D039C 7C 7D F0 50 */ subf r3, r29, r30 /* 801D3440 001D03A0 3B C3 FF FF */ addi r30, r3, -1 /* 801D3444 001D03A4 90 1B 00 00 */ stw r0, 0(r27) /* 801D3448 001D03A8 80 7B 00 00 */ lwz r3, 0(r27) /* 801D344C 001D03AC 38 03 00 10 */ addi r0, r3, 0x10 /* 801D3450 001D03B0 90 1B 00 00 */ stw r0, 0(r27) /* 801D3454 001D03B4 48 00 00 08 */ b lbl_801D345C lbl_801D3458: /* 801D3458 001D03B8 7F BE EB 78 */ mr r30, r29 lbl_801D345C: /* 801D345C 001D03BC 2C 1E 00 00 */ cmpwi r30, 0 /* 801D3460 001D03C0 41 81 FF A4 */ bgt lbl_801D3404 /* 801D3464 001D03C4 80 1B 00 00 */ lwz r0, 0(r27) /* 801D3468 001D03C8 90 1F 00 00 */ stw r0, 0(r31) /* 801D346C 001D03CC BB 61 00 1C */ lmw r27, 0x1c(r1) /* 801D3470 001D03D0 80 01 00 34 */ lwz r0, 0x34(r1) /* 801D3474 001D03D4 7C 08 03 A6 */ mtlr r0 /* 801D3478 001D03D8 38 21 00 30 */ addi r1, r1, 0x30 /* 801D347C 001D03DC 4E 80 00 20 */ blr .global "reserve__Q24rstl66vectorFi" "reserve__Q24rstl66vectorFi": /* 801D3480 001D03E0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D3484 001D03E4 7C 08 02 A6 */ mflr r0 /* 801D3488 001D03E8 90 01 00 34 */ stw r0, 0x34(r1) /* 801D348C 001D03EC 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801D3490 001D03F0 7C 9F 23 78 */ mr r31, r4 /* 801D3494 001D03F4 93 C1 00 28 */ stw r30, 0x28(r1) /* 801D3498 001D03F8 7C 7E 1B 78 */ mr r30, r3 /* 801D349C 001D03FC 93 A1 00 24 */ stw r29, 0x24(r1) /* 801D34A0 001D0400 80 03 00 08 */ lwz r0, 8(r3) /* 801D34A4 001D0404 7C 1F 00 00 */ cmpw r31, r0 /* 801D34A8 001D0408 40 81 00 C8 */ ble lbl_801D3570 /* 801D34AC 001D040C 57 E3 20 37 */ rlwinm. r3, r31, 4, 0, 0x1b /* 801D34B0 001D0410 40 82 00 0C */ bne lbl_801D34BC /* 801D34B4 001D0414 3B A0 00 00 */ li r29, 0 /* 801D34B8 001D0418 48 00 00 18 */ b lbl_801D34D0 lbl_801D34BC: /* 801D34BC 001D041C 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D34C0 001D0420 38 A0 00 00 */ li r5, 0 /* 801D34C4 001D0424 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D34C8 001D0428 48 14 23 51 */ bl __nwa__FUlPCcPCc /* 801D34CC 001D042C 7C 7D 1B 78 */ mr r29, r3 lbl_801D34D0: /* 801D34D0 001D0430 80 1E 00 04 */ lwz r0, 4(r30) /* 801D34D4 001D0434 7F A4 EB 78 */ mr r4, r29 /* 801D34D8 001D0438 80 BE 00 0C */ lwz r5, 0xc(r30) /* 801D34DC 001D043C 54 00 20 36 */ slwi r0, r0, 4 /* 801D34E0 001D0440 7C 65 02 14 */ add r3, r5, r0 /* 801D34E4 001D0444 90 A1 00 10 */ stw r5, 0x10(r1) /* 801D34E8 001D0448 90 61 00 08 */ stw r3, 8(r1) /* 801D34EC 001D044C 90 61 00 0C */ stw r3, 0xc(r1) /* 801D34F0 001D0450 90 A1 00 14 */ stw r5, 0x14(r1) /* 801D34F4 001D0454 48 00 00 3C */ b lbl_801D3530 lbl_801D34F8: /* 801D34F8 001D0458 28 04 00 00 */ cmplwi r4, 0 /* 801D34FC 001D045C 41 82 00 2C */ beq lbl_801D3528 /* 801D3500 001D0460 A0 05 00 00 */ lhz r0, 0(r5) /* 801D3504 001D0464 B0 04 00 00 */ sth r0, 0(r4) /* 801D3508 001D0468 C0 05 00 04 */ lfs f0, 4(r5) /* 801D350C 001D046C D0 04 00 04 */ stfs f0, 4(r4) /* 801D3510 001D0470 C0 05 00 08 */ lfs f0, 8(r5) /* 801D3514 001D0474 D0 04 00 08 */ stfs f0, 8(r4) /* 801D3518 001D0478 88 05 00 0C */ lbz r0, 0xc(r5) /* 801D351C 001D047C 98 04 00 0C */ stb r0, 0xc(r4) /* 801D3520 001D0480 88 05 00 0D */ lbz r0, 0xd(r5) /* 801D3524 001D0484 98 04 00 0D */ stb r0, 0xd(r4) lbl_801D3528: /* 801D3528 001D0488 38 84 00 10 */ addi r4, r4, 0x10 /* 801D352C 001D048C 38 A5 00 10 */ addi r5, r5, 0x10 lbl_801D3530: /* 801D3530 001D0490 7C 05 18 40 */ cmplw r5, r3 /* 801D3534 001D0494 40 82 FF C4 */ bne lbl_801D34F8 /* 801D3538 001D0498 80 1E 00 04 */ lwz r0, 4(r30) /* 801D353C 001D049C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 801D3540 001D04A0 54 00 20 36 */ slwi r0, r0, 4 /* 801D3544 001D04A4 7C 64 1B 78 */ mr r4, r3 /* 801D3548 001D04A8 7C 03 02 14 */ add r0, r3, r0 /* 801D354C 001D04AC 48 00 00 08 */ b lbl_801D3554 lbl_801D3550: /* 801D3550 001D04B0 38 84 00 10 */ addi r4, r4, 0x10 lbl_801D3554: /* 801D3554 001D04B4 7C 04 00 40 */ cmplw r4, r0 /* 801D3558 001D04B8 40 82 FF F8 */ bne lbl_801D3550 /* 801D355C 001D04BC 28 03 00 00 */ cmplwi r3, 0 /* 801D3560 001D04C0 41 82 00 08 */ beq lbl_801D3568 /* 801D3564 001D04C4 48 14 23 CD */ bl Free__7CMemoryFPCv lbl_801D3568: /* 801D3568 001D04C8 93 BE 00 0C */ stw r29, 0xc(r30) /* 801D356C 001D04CC 93 FE 00 08 */ stw r31, 8(r30) lbl_801D3570: /* 801D3570 001D04D0 80 01 00 34 */ lwz r0, 0x34(r1) /* 801D3574 001D04D4 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801D3578 001D04D8 83 C1 00 28 */ lwz r30, 0x28(r1) /* 801D357C 001D04DC 83 A1 00 24 */ lwz r29, 0x24(r1) /* 801D3580 001D04E0 7C 08 03 A6 */ mtlr r0 /* 801D3584 001D04E4 38 21 00 30 */ addi r1, r1, 0x30 /* 801D3588 001D04E8 4E 80 00 20 */ blr .global "reserve__Q24rstl56vectorFi" "reserve__Q24rstl56vectorFi": /* 801D358C 001D04EC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D3590 001D04F0 7C 08 02 A6 */ mflr r0 /* 801D3594 001D04F4 90 01 00 34 */ stw r0, 0x34(r1) /* 801D3598 001D04F8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801D359C 001D04FC 7C 9F 23 78 */ mr r31, r4 /* 801D35A0 001D0500 93 C1 00 28 */ stw r30, 0x28(r1) /* 801D35A4 001D0504 7C 7E 1B 78 */ mr r30, r3 /* 801D35A8 001D0508 93 A1 00 24 */ stw r29, 0x24(r1) /* 801D35AC 001D050C 80 03 00 08 */ lwz r0, 8(r3) /* 801D35B0 001D0510 7C 1F 00 00 */ cmpw r31, r0 /* 801D35B4 001D0514 40 81 00 A8 */ ble lbl_801D365C /* 801D35B8 001D0518 57 E3 10 3B */ rlwinm. r3, r31, 2, 0, 0x1d /* 801D35BC 001D051C 40 82 00 0C */ bne lbl_801D35C8 /* 801D35C0 001D0520 3B A0 00 00 */ li r29, 0 /* 801D35C4 001D0524 48 00 00 18 */ b lbl_801D35DC lbl_801D35C8: /* 801D35C8 001D0528 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D35CC 001D052C 38 A0 00 00 */ li r5, 0 /* 801D35D0 001D0530 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D35D4 001D0534 48 14 22 45 */ bl __nwa__FUlPCcPCc /* 801D35D8 001D0538 7C 7D 1B 78 */ mr r29, r3 lbl_801D35DC: /* 801D35DC 001D053C 80 1E 00 04 */ lwz r0, 4(r30) /* 801D35E0 001D0540 7F A4 EB 78 */ mr r4, r29 /* 801D35E4 001D0544 80 BE 00 0C */ lwz r5, 0xc(r30) /* 801D35E8 001D0548 54 00 10 3A */ slwi r0, r0, 2 /* 801D35EC 001D054C 7C 65 02 14 */ add r3, r5, r0 /* 801D35F0 001D0550 90 A1 00 10 */ stw r5, 0x10(r1) /* 801D35F4 001D0554 90 61 00 08 */ stw r3, 8(r1) /* 801D35F8 001D0558 90 61 00 0C */ stw r3, 0xc(r1) /* 801D35FC 001D055C 90 A1 00 14 */ stw r5, 0x14(r1) /* 801D3600 001D0560 48 00 00 1C */ b lbl_801D361C lbl_801D3604: /* 801D3604 001D0564 28 04 00 00 */ cmplwi r4, 0 /* 801D3608 001D0568 41 82 00 0C */ beq lbl_801D3614 /* 801D360C 001D056C 80 05 00 00 */ lwz r0, 0(r5) /* 801D3610 001D0570 90 04 00 00 */ stw r0, 0(r4) lbl_801D3614: /* 801D3614 001D0574 38 84 00 04 */ addi r4, r4, 4 /* 801D3618 001D0578 38 A5 00 04 */ addi r5, r5, 4 lbl_801D361C: /* 801D361C 001D057C 7C 05 18 40 */ cmplw r5, r3 /* 801D3620 001D0580 40 82 FF E4 */ bne lbl_801D3604 /* 801D3624 001D0584 80 1E 00 04 */ lwz r0, 4(r30) /* 801D3628 001D0588 80 7E 00 0C */ lwz r3, 0xc(r30) /* 801D362C 001D058C 54 00 10 3A */ slwi r0, r0, 2 /* 801D3630 001D0590 7C 64 1B 78 */ mr r4, r3 /* 801D3634 001D0594 7C 03 02 14 */ add r0, r3, r0 /* 801D3638 001D0598 48 00 00 08 */ b lbl_801D3640 lbl_801D363C: /* 801D363C 001D059C 38 84 00 04 */ addi r4, r4, 4 lbl_801D3640: /* 801D3640 001D05A0 7C 04 00 40 */ cmplw r4, r0 /* 801D3644 001D05A4 40 82 FF F8 */ bne lbl_801D363C /* 801D3648 001D05A8 28 03 00 00 */ cmplwi r3, 0 /* 801D364C 001D05AC 41 82 00 08 */ beq lbl_801D3654 /* 801D3650 001D05B0 48 14 22 E1 */ bl Free__7CMemoryFPCv lbl_801D3654: /* 801D3654 001D05B4 93 BE 00 0C */ stw r29, 0xc(r30) /* 801D3658 001D05B8 93 FE 00 08 */ stw r31, 8(r30) lbl_801D365C: /* 801D365C 001D05BC 80 01 00 34 */ lwz r0, 0x34(r1) /* 801D3660 001D05C0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801D3664 001D05C4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 801D3668 001D05C8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 801D366C 001D05CC 7C 08 03 A6 */ mtlr r0 /* 801D3670 001D05D0 38 21 00 30 */ addi r1, r1, 0x30 /* 801D3674 001D05D4 4E 80 00 20 */ blr .global "reserve__Q24rstl55vectorFi" "reserve__Q24rstl55vectorFi": /* 801D3678 001D05D8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D367C 001D05DC 7C 08 02 A6 */ mflr r0 /* 801D3680 001D05E0 90 01 00 34 */ stw r0, 0x34(r1) /* 801D3684 001D05E4 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801D3688 001D05E8 7C 9F 23 78 */ mr r31, r4 /* 801D368C 001D05EC 93 C1 00 28 */ stw r30, 0x28(r1) /* 801D3690 001D05F0 7C 7E 1B 78 */ mr r30, r3 /* 801D3694 001D05F4 93 A1 00 24 */ stw r29, 0x24(r1) /* 801D3698 001D05F8 80 03 00 08 */ lwz r0, 8(r3) /* 801D369C 001D05FC 7C 1F 00 00 */ cmpw r31, r0 /* 801D36A0 001D0600 40 81 00 EC */ ble lbl_801D378C /* 801D36A4 001D0604 1C 7F 00 24 */ mulli r3, r31, 0x24 /* 801D36A8 001D0608 2C 03 00 00 */ cmpwi r3, 0 /* 801D36AC 001D060C 40 82 00 0C */ bne lbl_801D36B8 /* 801D36B0 001D0610 3B A0 00 00 */ li r29, 0 /* 801D36B4 001D0614 48 00 00 18 */ b lbl_801D36CC lbl_801D36B8: /* 801D36B8 001D0618 3C 80 80 3D */ lis r4, lbl_803D1B70@ha /* 801D36BC 001D061C 38 A0 00 00 */ li r5, 0 /* 801D36C0 001D0620 38 84 1B 70 */ addi r4, r4, lbl_803D1B70@l /* 801D36C4 001D0624 48 14 21 55 */ bl __nwa__FUlPCcPCc /* 801D36C8 001D0628 7C 7D 1B 78 */ mr r29, r3 lbl_801D36CC: /* 801D36CC 001D062C 80 1E 00 04 */ lwz r0, 4(r30) /* 801D36D0 001D0630 7F A4 EB 78 */ mr r4, r29 /* 801D36D4 001D0634 80 BE 00 0C */ lwz r5, 0xc(r30) /* 801D36D8 001D0638 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801D36DC 001D063C 90 A1 00 10 */ stw r5, 0x10(r1) /* 801D36E0 001D0640 7C 65 02 14 */ add r3, r5, r0 /* 801D36E4 001D0644 90 A1 00 14 */ stw r5, 0x14(r1) /* 801D36E8 001D0648 90 61 00 08 */ stw r3, 8(r1) /* 801D36EC 001D064C 90 61 00 0C */ stw r3, 0xc(r1) /* 801D36F0 001D0650 48 00 00 5C */ b lbl_801D374C lbl_801D36F4: /* 801D36F4 001D0654 28 04 00 00 */ cmplwi r4, 0 /* 801D36F8 001D0658 41 82 00 4C */ beq lbl_801D3744 /* 801D36FC 001D065C C0 05 00 00 */ lfs f0, 0(r5) /* 801D3700 001D0660 D0 04 00 00 */ stfs f0, 0(r4) /* 801D3704 001D0664 C0 05 00 04 */ lfs f0, 4(r5) /* 801D3708 001D0668 D0 04 00 04 */ stfs f0, 4(r4) /* 801D370C 001D066C C0 05 00 08 */ lfs f0, 8(r5) /* 801D3710 001D0670 D0 04 00 08 */ stfs f0, 8(r4) /* 801D3714 001D0674 C0 05 00 0C */ lfs f0, 0xc(r5) /* 801D3718 001D0678 D0 04 00 0C */ stfs f0, 0xc(r4) /* 801D371C 001D067C C0 05 00 10 */ lfs f0, 0x10(r5) /* 801D3720 001D0680 D0 04 00 10 */ stfs f0, 0x10(r4) /* 801D3724 001D0684 C0 05 00 14 */ lfs f0, 0x14(r5) /* 801D3728 001D0688 D0 04 00 14 */ stfs f0, 0x14(r4) /* 801D372C 001D068C C0 05 00 18 */ lfs f0, 0x18(r5) /* 801D3730 001D0690 D0 04 00 18 */ stfs f0, 0x18(r4) /* 801D3734 001D0694 80 05 00 1C */ lwz r0, 0x1c(r5) /* 801D3738 001D0698 90 04 00 1C */ stw r0, 0x1c(r4) /* 801D373C 001D069C 88 05 00 20 */ lbz r0, 0x20(r5) /* 801D3740 001D06A0 98 04 00 20 */ stb r0, 0x20(r4) lbl_801D3744: /* 801D3744 001D06A4 38 84 00 24 */ addi r4, r4, 0x24 /* 801D3748 001D06A8 38 A5 00 24 */ addi r5, r5, 0x24 lbl_801D374C: /* 801D374C 001D06AC 7C 05 18 40 */ cmplw r5, r3 /* 801D3750 001D06B0 40 82 FF A4 */ bne lbl_801D36F4 /* 801D3754 001D06B4 80 1E 00 04 */ lwz r0, 4(r30) /* 801D3758 001D06B8 80 7E 00 0C */ lwz r3, 0xc(r30) /* 801D375C 001D06BC 1C 00 00 24 */ mulli r0, r0, 0x24 /* 801D3760 001D06C0 7C 64 1B 78 */ mr r4, r3 /* 801D3764 001D06C4 7C 03 02 14 */ add r0, r3, r0 /* 801D3768 001D06C8 48 00 00 08 */ b lbl_801D3770 lbl_801D376C: /* 801D376C 001D06CC 38 84 00 24 */ addi r4, r4, 0x24 lbl_801D3770: /* 801D3770 001D06D0 7C 04 00 40 */ cmplw r4, r0 /* 801D3774 001D06D4 40 82 FF F8 */ bne lbl_801D376C /* 801D3778 001D06D8 28 03 00 00 */ cmplwi r3, 0 /* 801D377C 001D06DC 41 82 00 08 */ beq lbl_801D3784 /* 801D3780 001D06E0 48 14 21 B1 */ bl Free__7CMemoryFPCv lbl_801D3784: /* 801D3784 001D06E4 93 BE 00 0C */ stw r29, 0xc(r30) /* 801D3788 001D06E8 93 FE 00 08 */ stw r31, 8(r30) lbl_801D378C: /* 801D378C 001D06EC 80 01 00 34 */ lwz r0, 0x34(r1) /* 801D3790 001D06F0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 801D3794 001D06F4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 801D3798 001D06F8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 801D379C 001D06FC 7C 08 03 A6 */ mtlr r0 /* 801D37A0 001D0700 38 21 00 30 */ addi r1, r1, 0x30 /* 801D37A4 001D0704 4E 80 00 20 */ blr .global "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>i" "advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>i": /* 801D37A8 001D0708 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801D37AC 001D070C 7C 08 02 A6 */ mflr r0 /* 801D37B0 001D0710 90 01 00 14 */ stw r0, 0x14(r1) /* 801D37B4 001D0714 38 A1 00 0C */ addi r5, r1, 0xc /* 801D37B8 001D0718 88 01 00 08 */ lbz r0, 8(r1) /* 801D37BC 001D071C 98 01 00 0C */ stb r0, 0xc(r1) /* 801D37C0 001D0720 48 00 00 15 */ bl "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag" /* 801D37C4 001D0724 80 01 00 14 */ lwz r0, 0x14(r1) /* 801D37C8 001D0728 7C 08 03 A6 */ mtlr r0 /* 801D37CC 001D072C 38 21 00 10 */ addi r1, r1, 0x10 /* 801D37D0 001D0730 4E 80 00 20 */ blr .global "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag" "__advance,Q24rstl17rmemory_allocator>,i>__4rstlFRQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>iQ24rstl26random_access_iterator_tag": /* 801D37D4 001D0734 80 A3 00 00 */ lwz r5, 0(r3) /* 801D37D8 001D0738 54 80 20 36 */ slwi r0, r4, 4 /* 801D37DC 001D073C 7C 05 02 14 */ add r0, r5, r0 /* 801D37E0 001D0740 90 03 00 00 */ stw r0, 0(r3) /* 801D37E4 001D0744 4E 80 00 20 */ blr .global "distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>" "distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>": /* 801D37E8 001D0748 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801D37EC 001D074C 7C 08 02 A6 */ mflr r0 /* 801D37F0 001D0750 90 01 00 24 */ stw r0, 0x24(r1) /* 801D37F4 001D0754 38 A1 00 0C */ addi r5, r1, 0xc /* 801D37F8 001D0758 88 E1 00 08 */ lbz r7, 8(r1) /* 801D37FC 001D075C 80 C4 00 00 */ lwz r6, 0(r4) /* 801D3800 001D0760 38 81 00 10 */ addi r4, r1, 0x10 /* 801D3804 001D0764 80 03 00 00 */ lwz r0, 0(r3) /* 801D3808 001D0768 38 61 00 14 */ addi r3, r1, 0x14 /* 801D380C 001D076C 90 C1 00 10 */ stw r6, 0x10(r1) /* 801D3810 001D0770 98 E1 00 0C */ stb r7, 0xc(r1) /* 801D3814 001D0774 90 01 00 14 */ stw r0, 0x14(r1) /* 801D3818 001D0778 48 00 00 15 */ bl "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24r" /* 801D381C 001D077C 80 01 00 24 */ lwz r0, 0x24(r1) /* 801D3820 001D0780 7C 08 03 A6 */ mtlr r0 /* 801D3824 001D0784 38 21 00 20 */ addi r1, r1, 0x20 /* 801D3828 001D0788 4E 80 00 20 */ blr .global "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24r" "__distance,Q24rstl17rmemory_allocator>>__4rstlFQ24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24rstl152pointer_iterator,Q24rstl17rmemory_allocator>Q24r": /* 801D382C 001D078C 80 63 00 00 */ lwz r3, 0(r3) /* 801D3830 001D0790 80 04 00 00 */ lwz r0, 0(r4) /* 801D3834 001D0794 7C 03 00 50 */ subf r0, r3, r0 /* 801D3838 001D0798 7C 00 26 70 */ srawi r0, r0, 4 /* 801D383C 001D079C 7C 60 01 94 */ addze r3, r0 /* 801D3840 001D07A0 4E 80 00 20 */ blr .section .sdata2, "a" .balign 8 .global lbl_805AC8D0 lbl_805AC8D0: # ROM: 0x3F9170 .4byte 0x47C35000 .global lbl_805AC8D4 lbl_805AC8D4: # ROM: 0x3F9174 .float 1.0 .global lbl_805AC8D8 lbl_805AC8D8: # ROM: 0x3F9178 .4byte 0 .global lbl_805AC8DC lbl_805AC8DC: # ROM: 0x3F917C .4byte 0x7F7FFFFF .global lbl_805AC8E0 lbl_805AC8E0: # ROM: 0x3F9180 .double 4.503601774854144E15 .global lbl_805AC8E8 lbl_805AC8E8: # ROM: 0x3F9188 .4byte 0x40490FDB .global lbl_805AC8EC lbl_805AC8EC: # ROM: 0x3F918C .float 0.5 .global lbl_805AC8F0 lbl_805AC8F0: # ROM: 0x3F9190 .float 0.01 .global lbl_805AC8F4 lbl_805AC8F4: # ROM: 0x3F9194 .float 8.0 .global lbl_805AC8F8 lbl_805AC8F8: # ROM: 0x3F9198 .4byte 0x40026666 .4byte 0x66666666 .global lbl_805AC900 lbl_805AC900: # ROM: 0x3F91A0 .float 0.2 .global lbl_805AC904 lbl_805AC904: # ROM: 0x3F91A4 .float 0.1 .global lbl_805AC908 lbl_805AC908: # ROM: 0x3F91A8 .4byte 0x437A0000 .global lbl_805AC90C lbl_805AC90C: # ROM: 0x3F91AC .4byte 0x404CCCCD .global lbl_805AC910 lbl_805AC910: # ROM: 0x3F91B0 .4byte 0x3727C5AC .global lbl_805AC914 lbl_805AC914: # ROM: 0x3F91B4 .4byte 0x3F7D70A4 .global lbl_805AC918 lbl_805AC918: # ROM: 0x3F91B8 .float 0.9 .global lbl_805AC91C lbl_805AC91C: # ROM: 0x3F91BC .4byte 0x40E00000 .global lbl_805AC920 lbl_805AC920: # ROM: 0x3F91C0 .float 1.0E-4 .global lbl_805AC924 lbl_805AC924: # ROM: 0x3F91C4 .float 0.75 .global lbl_805AC928 lbl_805AC928: # ROM: 0x3F91C8 .float 0.25 .4byte 0 .global lbl_805AC930 lbl_805AC930: # ROM: 0x3F91D0 .double 9.999999747378752E-6 .global lbl_805AC938 lbl_805AC938: # ROM: 0x3F91D8 .4byte 0x3E124925 .4byte 0 .section .rodata .balign 8 .global lbl_803D1B70 lbl_803D1B70: # ROM: 0x3CEB70 .asciz "??(??)" .byte 0x57 .asciz "hole Body" .balign 4 .4byte 0