pikmin2/asm/plugProjectKandoU/cellPyramid.s
EpochFlame 75c3292df0 reduce label emissions
linkmap goes faster now
2022-11-03 17:02:42 -04:00

3451 lines
160 KiB
ArmAsm

.include "macros.inc"
.section .rodata # 0x804732E0 - 0x8049E220
.balign 8
lbl_8047CFE0:
.4byte 0x63656C6C
.4byte 0x50797261
.4byte 0x6D696400
lbl_8047CFEC:
.4byte 0x63656C6C
.4byte 0x50797261
.4byte 0x6D69642E
.4byte 0x63707000
lbl_8047CFFC:
.asciz "P2Assert"
.skip 3
.4byte 0x6C656720
.4byte 0x656E7472
.4byte 0x79206661
.4byte 0x696C6564
.4byte 0x20210A00
lbl_8047D01C:
.4byte 0x696C6C65
.4byte 0x67616C20
.4byte 0x6C617965
.4byte 0x724C6576
.4byte 0x656C2025
.4byte 0x64203A20
.4byte 0x6F757420
.4byte 0x6F662062
.4byte 0x6F756E64
.4byte 0x73203081
.4byte 0x6025640A
.4byte 0x00000000
.4byte 0x43656C6C
.4byte 0x20496E66
.4byte 0x2D4C6F6F
.4byte 0x702082A9
.4byte 0x82E082B5
.4byte 0x82EA82C8
.4byte 0x82A20A00
.4byte 0x6C656720
.4byte 0x656E7472
.4byte 0x79206661
.4byte 0x696C6564
.4byte 0x20212121
.4byte 0x21212121
.4byte 0x2121210A
.4byte 0x00000000
.section .data, "wa" # 0x8049E220 - 0x804EFC20
.balign 8
.global __vt__13SweepCallback
__vt__13SweepCallback:
.4byte 0
.4byte 0
.4byte invoke__13SweepCallbackFPQ210SweepPrune6ObjectPQ210SweepPrune6Object
.global __vt__Q310SweepPrune5World8Callback
__vt__Q310SweepPrune5World8Callback:
.4byte 0
.4byte 0
.4byte 0
.section .sdata, "wa" # 0x80514680 - 0x80514D80
.balign 8
.global sOptResolveColl__Q24Game11CellPyramid
sOptResolveColl__Q24Game11CellPyramid:
.4byte 0x02000000
.global sCellBugName__Q24Game11CellPyramid
sCellBugName__Q24Game11CellPyramid:
.4byte lbl_80518640
.section .sbss # 0x80514D80 - 0x80516360
.balign 8
.global cellMgr__4Game
cellMgr__4Game:
.skip 0x4
.global platCellMgr__4Game
platCellMgr__4Game:
.skip 0x4
.global mapRoomCellMgr__4Game
mapRoomCellMgr__4Game:
.skip 0x4
.global disableAICulling__Q24Game11CellPyramid
disableAICulling__Q24Game11CellPyramid:
.skip 0x1
.global sSpeedUpResolveColl__Q24Game11CellPyramid
sSpeedUpResolveColl__Q24Game11CellPyramid:
.skip 0x3
.global sCurrCellMgr__Q24Game4Cell
sCurrCellMgr__Q24Game4Cell:
.skip 0x4
.global sCellBugID__Q24Game11CellPyramid
sCellBugID__Q24Game11CellPyramid:
.skip 0x4
.section .sdata2, "a" # 0x80516360 - 0x80520E40
.balign 8
lbl_80518628:
.float 0.0
lbl_8051862C:
.4byte 0x47C35000
lbl_80518630:
.float 0.5
.4byte 0x00000000
lbl_80518638:
.4byte 0x43300000
.4byte 0x00000000
lbl_80518640:
.asciz "none"
.skip 3
lbl_80518648:
.float 2.0
.4byte 0x00000000
lbl_80518650:
.double 2.0
lbl_80518658:
.float 1.0
lbl_8051865C:
.float 1.5
lbl_80518660:
.4byte 0x43300000
.4byte 0x80000000
.section .text, "ax" # 0x800056C0 - 0x80472F00
.global "mapSearch__Q24Game11CellPyramidFRQ23Sys6SphereP32IDelegate1<PQ24Game10CellObject>"
"mapSearch__Q24Game11CellPyramidFRQ23Sys6SphereP32IDelegate1<PQ24Game10CellObject>":
/* 801565C8 00153508 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 801565CC 0015350C 7C 08 02 A6 */ mflr r0
/* 801565D0 00153510 90 01 00 44 */ stw r0, 0x44(r1)
/* 801565D4 00153514 38 C1 00 0C */ addi r6, r1, 0xc
/* 801565D8 00153518 BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 801565DC 0015351C 7C BB 2B 78 */ mr r27, r5
/* 801565E0 00153520 7C 7C 1B 78 */ mr r28, r3
/* 801565E4 00153524 38 A1 00 08 */ addi r5, r1, 8
/* 801565E8 00153528 48 00 1D A9 */ bl "calcExtent__Q24Game11CellPyramidFRQ23Sys6SphereRiR7Rect<i>"
/* 801565EC 0015352C 80 7C 00 44 */ lwz r3, 0x44(r28)
/* 801565F0 00153530 3C 00 04 00 */ lis r0, 0x400
/* 801565F4 00153534 38 63 00 01 */ addi r3, r3, 1
/* 801565F8 00153538 90 7C 00 44 */ stw r3, 0x44(r28)
/* 801565FC 0015353C 80 7C 00 44 */ lwz r3, 0x44(r28)
/* 80156600 00153540 7C 03 00 40 */ cmplw r3, r0
/* 80156604 00153544 41 80 00 0C */ blt .L_80156610
/* 80156608 00153548 38 00 00 00 */ li r0, 0
/* 8015660C 0015354C 90 1C 00 44 */ stw r0, 0x44(r28)
.L_80156610:
/* 80156610 00153550 80 01 00 08 */ lwz r0, 8(r1)
/* 80156614 00153554 80 7C 00 30 */ lwz r3, 0x30(r28)
/* 80156618 00153558 1C 00 00 38 */ mulli r0, r0, 0x38
/* 8015661C 0015355C 83 FC 00 44 */ lwz r31, 0x44(r28)
/* 80156620 00153560 83 A1 00 0C */ lwz r29, 0xc(r1)
/* 80156624 00153564 7F C3 02 14 */ add r30, r3, r0
/* 80156628 00153568 48 00 00 44 */ b .L_8015666C
.L_8015662C:
/* 8015662C 0015356C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80156630 00153570 48 00 00 2C */ b .L_8015665C
.L_80156634:
/* 80156634 00153574 7F C3 F3 78 */ mr r3, r30
/* 80156638 00153578 7F A4 EB 78 */ mr r4, r29
/* 8015663C 0015357C 7F 85 E3 78 */ mr r5, r28
/* 80156640 00153580 48 00 16 BD */ bl __cl__Q24Game9CellLayerFii
/* 80156644 00153584 28 03 00 00 */ cmplwi r3, 0
/* 80156648 00153588 41 82 00 10 */ beq .L_80156658
/* 8015664C 0015358C 7F 64 DB 78 */ mr r4, r27
/* 80156650 00153590 7F E5 FB 78 */ mr r5, r31
/* 80156654 00153594 48 00 01 29 */ bl "mapSearch__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
.L_80156658:
/* 80156658 00153598 3B 9C 00 01 */ addi r28, r28, 1
.L_8015665C:
/* 8015665C 0015359C 80 01 00 18 */ lwz r0, 0x18(r1)
/* 80156660 001535A0 7C 1C 00 00 */ cmpw r28, r0
/* 80156664 001535A4 40 81 FF D0 */ ble .L_80156634
/* 80156668 001535A8 3B BD 00 01 */ addi r29, r29, 1
.L_8015666C:
/* 8015666C 001535AC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80156670 001535B0 7C 1D 00 00 */ cmpw r29, r0
/* 80156674 001535B4 40 81 FF B8 */ ble .L_8015662C
/* 80156678 001535B8 BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 8015667C 001535BC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80156680 001535C0 7C 08 03 A6 */ mtlr r0
/* 80156684 001535C4 38 21 00 40 */ addi r1, r1, 0x40
/* 80156688 001535C8 4E 80 00 20 */ blr
.global exitCell__Q24Game10CellObjectFv
exitCell__Q24Game10CellObjectFv:
/* 8015668C 001535CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80156690 001535D0 7C 08 02 A6 */ mflr r0
/* 80156694 001535D4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80156698 001535D8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8015669C 001535DC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801566A0 001535E0 3B C0 00 01 */ li r30, 1
/* 801566A4 001535E4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801566A8 001535E8 93 81 00 10 */ stw r28, 0x10(r1)
/* 801566AC 001535EC 7C 7C 1B 78 */ mr r28, r3
/* 801566B0 001535F0 81 83 00 00 */ lwz r12, 0(r3)
/* 801566B4 001535F4 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 801566B8 001535F8 7D 89 03 A6 */ mtctr r12
/* 801566BC 001535FC 4E 80 04 21 */ bctrl
/* 801566C0 00153600 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 801566C4 00153604 40 82 00 24 */ bne .L_801566E8
/* 801566C8 00153608 7F 83 E3 78 */ mr r3, r28
/* 801566CC 0015360C 81 9C 00 00 */ lwz r12, 0(r28)
/* 801566D0 00153610 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 801566D4 00153614 7D 89 03 A6 */ mtctr r12
/* 801566D8 00153618 4E 80 04 21 */ bctrl
/* 801566DC 0015361C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 801566E0 00153620 40 82 00 08 */ bne .L_801566E8
/* 801566E4 00153624 3B C0 00 00 */ li r30, 0
.L_801566E8:
/* 801566E8 00153628 7F 9D E3 78 */ mr r29, r28
/* 801566EC 0015362C 3B 80 00 00 */ li r28, 0
/* 801566F0 00153630 3B E0 00 00 */ li r31, 0
.L_801566F4:
/* 801566F4 00153634 80 7D 00 5C */ lwz r3, 0x5c(r29)
/* 801566F8 00153638 28 03 00 00 */ cmplwi r3, 0
/* 801566FC 0015363C 41 82 00 14 */ beq .L_80156710
/* 80156700 00153640 7F C5 F3 78 */ mr r5, r30
/* 80156704 00153644 38 9D 00 54 */ addi r4, r29, 0x54
/* 80156708 00153648 48 00 11 B1 */ bl exit__Q24Game4CellFPQ24Game7CellLegb
/* 8015670C 0015364C 93 FD 00 5C */ stw r31, 0x5c(r29)
.L_80156710:
/* 80156710 00153650 3B 9C 00 01 */ addi r28, r28, 1
/* 80156714 00153654 3B BD 00 14 */ addi r29, r29, 0x14
/* 80156718 00153658 2C 1C 00 04 */ cmpwi r28, 4
/* 8015671C 0015365C 41 80 FF D8 */ blt .L_801566F4
/* 80156720 00153660 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80156724 00153664 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80156728 00153668 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8015672C 0015366C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80156730 00153670 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80156734 00153674 7C 08 03 A6 */ mtlr r0
/* 80156738 00153678 38 21 00 20 */ addi r1, r1, 0x20
/* 8015673C 0015367C 4E 80 00 20 */ blr
.global __ct__Q24Game4CellFv
__ct__Q24Game4CellFv:
/* 80156740 00153680 38 80 00 00 */ li r4, 0
/* 80156744 00153684 38 00 FF FF */ li r0, -1
/* 80156748 00153688 90 83 00 0C */ stw r4, 0xc(r3)
/* 8015674C 0015368C 90 83 00 08 */ stw r4, 8(r3)
/* 80156750 00153690 90 83 00 04 */ stw r4, 4(r3)
/* 80156754 00153694 90 83 00 00 */ stw r4, 0(r3)
/* 80156758 00153698 90 83 00 1C */ stw r4, 0x1c(r3)
/* 8015675C 0015369C 90 83 00 10 */ stw r4, 0x10(r3)
/* 80156760 001536A0 B0 83 00 14 */ sth r4, 0x14(r3)
/* 80156764 001536A4 B0 83 00 16 */ sth r4, 0x16(r3)
/* 80156768 001536A8 B0 83 00 18 */ sth r4, 0x18(r3)
/* 8015676C 001536AC 90 83 00 24 */ stw r4, 0x24(r3)
/* 80156770 001536B0 90 83 00 20 */ stw r4, 0x20(r3)
/* 80156774 001536B4 B0 03 00 28 */ sth r0, 0x28(r3)
/* 80156778 001536B8 4E 80 00 20 */ blr
.global "mapSearch__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
"mapSearch__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul":
/* 8015677C 001536BC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80156780 001536C0 7C 08 02 A6 */ mflr r0
/* 80156784 001536C4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80156788 001536C8 BF 61 00 0C */ stmw r27, 0xc(r1)
/* 8015678C 001536CC 7C 7B 1B 78 */ mr r27, r3
/* 80156790 001536D0 7C 9C 23 78 */ mr r28, r4
/* 80156794 001536D4 7C BD 2B 78 */ mr r29, r5
/* 80156798 001536D8 83 E3 00 1C */ lwz r31, 0x1c(r3)
/* 8015679C 001536DC 48 00 00 34 */ b .L_801567D0
.L_801567A0:
/* 801567A0 001536E0 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 801567A4 001536E4 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 801567A8 001536E8 7C 00 E8 40 */ cmplw r0, r29
/* 801567AC 001536EC 41 82 00 20 */ beq .L_801567CC
/* 801567B0 001536F0 93 A3 00 A4 */ stw r29, 0xa4(r3)
/* 801567B4 001536F4 7F 83 E3 78 */ mr r3, r28
/* 801567B8 001536F8 81 9C 00 00 */ lwz r12, 0(r28)
/* 801567BC 001536FC 80 9F 00 0C */ lwz r4, 0xc(r31)
/* 801567C0 00153700 81 8C 00 08 */ lwz r12, 8(r12)
/* 801567C4 00153704 7D 89 03 A6 */ mtctr r12
/* 801567C8 00153708 4E 80 04 21 */ bctrl
.L_801567CC:
/* 801567CC 0015370C 83 FF 00 00 */ lwz r31, 0(r31)
.L_801567D0:
/* 801567D0 00153710 28 1F 00 00 */ cmplwi r31, 0
/* 801567D4 00153714 40 82 FF CC */ bne .L_801567A0
/* 801567D8 00153718 83 FB 00 10 */ lwz r31, 0x10(r27)
/* 801567DC 0015371C 48 00 00 18 */ b .L_801567F4
.L_801567E0:
/* 801567E0 00153720 7F E3 FB 78 */ mr r3, r31
/* 801567E4 00153724 7F 84 E3 78 */ mr r4, r28
/* 801567E8 00153728 7F A5 EB 78 */ mr r5, r29
/* 801567EC 0015372C 48 00 00 55 */ bl "mapSearchUp__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
/* 801567F0 00153730 83 FF 00 10 */ lwz r31, 0x10(r31)
.L_801567F4:
/* 801567F4 00153734 28 1F 00 00 */ cmplwi r31, 0
/* 801567F8 00153738 40 82 FF E8 */ bne .L_801567E0
/* 801567FC 0015373C 3B C0 00 00 */ li r30, 0
/* 80156800 00153740 7F 7F DB 78 */ mr r31, r27
.L_80156804:
/* 80156804 00153744 80 7F 00 00 */ lwz r3, 0(r31)
/* 80156808 00153748 28 03 00 00 */ cmplwi r3, 0
/* 8015680C 0015374C 41 82 00 10 */ beq .L_8015681C
/* 80156810 00153750 7F 84 E3 78 */ mr r4, r28
/* 80156814 00153754 7F A5 EB 78 */ mr r5, r29
/* 80156818 00153758 48 00 02 61 */ bl "mapSearchDown__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
.L_8015681C:
/* 8015681C 0015375C 3B DE 00 01 */ addi r30, r30, 1
/* 80156820 00153760 3B FF 00 04 */ addi r31, r31, 4
/* 80156824 00153764 2C 1E 00 04 */ cmpwi r30, 4
/* 80156828 00153768 41 80 FF DC */ blt .L_80156804
/* 8015682C 0015376C BB 61 00 0C */ lmw r27, 0xc(r1)
/* 80156830 00153770 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80156834 00153774 7C 08 03 A6 */ mtlr r0
/* 80156838 00153778 38 21 00 20 */ addi r1, r1, 0x20
/* 8015683C 0015377C 4E 80 00 20 */ blr
.global "mapSearchUp__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
"mapSearchUp__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul":
/* 80156840 00153780 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80156844 00153784 7C 08 02 A6 */ mflr r0
/* 80156848 00153788 90 01 00 34 */ stw r0, 0x34(r1)
/* 8015684C 0015378C BF 01 00 10 */ stmw r24, 0x10(r1)
/* 80156850 00153790 7C 79 1B 78 */ mr r25, r3
/* 80156854 00153794 7C 9D 23 78 */ mr r29, r4
/* 80156858 00153798 7C BE 2B 78 */ mr r30, r5
/* 8015685C 0015379C 83 03 00 1C */ lwz r24, 0x1c(r3)
/* 80156860 001537A0 48 00 00 34 */ b .L_80156894
.L_80156864:
/* 80156864 001537A4 80 78 00 0C */ lwz r3, 0xc(r24)
/* 80156868 001537A8 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 8015686C 001537AC 7C 00 F0 40 */ cmplw r0, r30
/* 80156870 001537B0 41 82 00 20 */ beq .L_80156890
/* 80156874 001537B4 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156878 001537B8 7F A3 EB 78 */ mr r3, r29
/* 8015687C 001537BC 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156880 001537C0 80 98 00 0C */ lwz r4, 0xc(r24)
/* 80156884 001537C4 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156888 001537C8 7D 89 03 A6 */ mtctr r12
/* 8015688C 001537CC 4E 80 04 21 */ bctrl
.L_80156890:
/* 80156890 001537D0 83 18 00 00 */ lwz r24, 0(r24)
.L_80156894:
/* 80156894 001537D4 28 18 00 00 */ cmplwi r24, 0
/* 80156898 001537D8 40 82 FF CC */ bne .L_80156864
/* 8015689C 001537DC 83 F9 00 10 */ lwz r31, 0x10(r25)
/* 801568A0 001537E0 48 00 01 BC */ b .L_80156A5C
.L_801568A4:
/* 801568A4 001537E4 83 9F 00 1C */ lwz r28, 0x1c(r31)
/* 801568A8 001537E8 48 00 00 34 */ b .L_801568DC
.L_801568AC:
/* 801568AC 001537EC 80 7C 00 0C */ lwz r3, 0xc(r28)
/* 801568B0 001537F0 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 801568B4 001537F4 7C 00 F0 40 */ cmplw r0, r30
/* 801568B8 001537F8 41 82 00 20 */ beq .L_801568D8
/* 801568BC 001537FC 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 801568C0 00153800 7F A3 EB 78 */ mr r3, r29
/* 801568C4 00153804 81 9D 00 00 */ lwz r12, 0(r29)
/* 801568C8 00153808 80 9C 00 0C */ lwz r4, 0xc(r28)
/* 801568CC 0015380C 81 8C 00 08 */ lwz r12, 8(r12)
/* 801568D0 00153810 7D 89 03 A6 */ mtctr r12
/* 801568D4 00153814 4E 80 04 21 */ bctrl
.L_801568D8:
/* 801568D8 00153818 83 9C 00 00 */ lwz r28, 0(r28)
.L_801568DC:
/* 801568DC 0015381C 28 1C 00 00 */ cmplwi r28, 0
/* 801568E0 00153820 40 82 FF CC */ bne .L_801568AC
/* 801568E4 00153824 83 9F 00 10 */ lwz r28, 0x10(r31)
/* 801568E8 00153828 48 00 01 68 */ b .L_80156A50
.L_801568EC:
/* 801568EC 0015382C 83 7C 00 1C */ lwz r27, 0x1c(r28)
/* 801568F0 00153830 48 00 00 34 */ b .L_80156924
.L_801568F4:
/* 801568F4 00153834 80 7B 00 0C */ lwz r3, 0xc(r27)
/* 801568F8 00153838 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 801568FC 0015383C 7C 00 F0 40 */ cmplw r0, r30
/* 80156900 00153840 41 82 00 20 */ beq .L_80156920
/* 80156904 00153844 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156908 00153848 7F A3 EB 78 */ mr r3, r29
/* 8015690C 0015384C 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156910 00153850 80 9B 00 0C */ lwz r4, 0xc(r27)
/* 80156914 00153854 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156918 00153858 7D 89 03 A6 */ mtctr r12
/* 8015691C 0015385C 4E 80 04 21 */ bctrl
.L_80156920:
/* 80156920 00153860 83 7B 00 00 */ lwz r27, 0(r27)
.L_80156924:
/* 80156924 00153864 28 1B 00 00 */ cmplwi r27, 0
/* 80156928 00153868 40 82 FF CC */ bne .L_801568F4
/* 8015692C 0015386C 83 7C 00 10 */ lwz r27, 0x10(r28)
/* 80156930 00153870 48 00 01 14 */ b .L_80156A44
.L_80156934:
/* 80156934 00153874 83 5B 00 1C */ lwz r26, 0x1c(r27)
/* 80156938 00153878 48 00 00 34 */ b .L_8015696C
.L_8015693C:
/* 8015693C 0015387C 80 7A 00 0C */ lwz r3, 0xc(r26)
/* 80156940 00153880 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156944 00153884 7C 00 F0 40 */ cmplw r0, r30
/* 80156948 00153888 41 82 00 20 */ beq .L_80156968
/* 8015694C 0015388C 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156950 00153890 7F A3 EB 78 */ mr r3, r29
/* 80156954 00153894 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156958 00153898 80 9A 00 0C */ lwz r4, 0xc(r26)
/* 8015695C 0015389C 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156960 001538A0 7D 89 03 A6 */ mtctr r12
/* 80156964 001538A4 4E 80 04 21 */ bctrl
.L_80156968:
/* 80156968 001538A8 83 5A 00 00 */ lwz r26, 0(r26)
.L_8015696C:
/* 8015696C 001538AC 28 1A 00 00 */ cmplwi r26, 0
/* 80156970 001538B0 40 82 FF CC */ bne .L_8015693C
/* 80156974 001538B4 83 5B 00 10 */ lwz r26, 0x10(r27)
/* 80156978 001538B8 48 00 00 C0 */ b .L_80156A38
.L_8015697C:
/* 8015697C 001538BC 83 3A 00 1C */ lwz r25, 0x1c(r26)
/* 80156980 001538C0 48 00 00 34 */ b .L_801569B4
.L_80156984:
/* 80156984 001538C4 80 79 00 0C */ lwz r3, 0xc(r25)
/* 80156988 001538C8 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 8015698C 001538CC 7C 00 F0 40 */ cmplw r0, r30
/* 80156990 001538D0 41 82 00 20 */ beq .L_801569B0
/* 80156994 001538D4 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156998 001538D8 7F A3 EB 78 */ mr r3, r29
/* 8015699C 001538DC 81 9D 00 00 */ lwz r12, 0(r29)
/* 801569A0 001538E0 80 99 00 0C */ lwz r4, 0xc(r25)
/* 801569A4 001538E4 81 8C 00 08 */ lwz r12, 8(r12)
/* 801569A8 001538E8 7D 89 03 A6 */ mtctr r12
/* 801569AC 001538EC 4E 80 04 21 */ bctrl
.L_801569B0:
/* 801569B0 001538F0 83 39 00 00 */ lwz r25, 0(r25)
.L_801569B4:
/* 801569B4 001538F4 28 19 00 00 */ cmplwi r25, 0
/* 801569B8 001538F8 40 82 FF CC */ bne .L_80156984
/* 801569BC 001538FC 83 3A 00 10 */ lwz r25, 0x10(r26)
/* 801569C0 00153900 48 00 00 6C */ b .L_80156A2C
.L_801569C4:
/* 801569C4 00153904 83 19 00 1C */ lwz r24, 0x1c(r25)
/* 801569C8 00153908 48 00 00 34 */ b .L_801569FC
.L_801569CC:
/* 801569CC 0015390C 80 78 00 0C */ lwz r3, 0xc(r24)
/* 801569D0 00153910 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 801569D4 00153914 7C 00 F0 40 */ cmplw r0, r30
/* 801569D8 00153918 41 82 00 20 */ beq .L_801569F8
/* 801569DC 0015391C 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 801569E0 00153920 7F A3 EB 78 */ mr r3, r29
/* 801569E4 00153924 81 9D 00 00 */ lwz r12, 0(r29)
/* 801569E8 00153928 80 98 00 0C */ lwz r4, 0xc(r24)
/* 801569EC 0015392C 81 8C 00 08 */ lwz r12, 8(r12)
/* 801569F0 00153930 7D 89 03 A6 */ mtctr r12
/* 801569F4 00153934 4E 80 04 21 */ bctrl
.L_801569F8:
/* 801569F8 00153938 83 18 00 00 */ lwz r24, 0(r24)
.L_801569FC:
/* 801569FC 0015393C 28 18 00 00 */ cmplwi r24, 0
/* 80156A00 00153940 40 82 FF CC */ bne .L_801569CC
/* 80156A04 00153944 83 19 00 10 */ lwz r24, 0x10(r25)
/* 80156A08 00153948 48 00 00 18 */ b .L_80156A20
.L_80156A0C:
/* 80156A0C 0015394C 7F 03 C3 78 */ mr r3, r24
/* 80156A10 00153950 7F A4 EB 78 */ mr r4, r29
/* 80156A14 00153954 7F C5 F3 78 */ mr r5, r30
/* 80156A18 00153958 4B FF FE 29 */ bl "mapSearchUp__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
/* 80156A1C 0015395C 83 18 00 10 */ lwz r24, 0x10(r24)
.L_80156A20:
/* 80156A20 00153960 28 18 00 00 */ cmplwi r24, 0
/* 80156A24 00153964 40 82 FF E8 */ bne .L_80156A0C
/* 80156A28 00153968 83 39 00 10 */ lwz r25, 0x10(r25)
.L_80156A2C:
/* 80156A2C 0015396C 28 19 00 00 */ cmplwi r25, 0
/* 80156A30 00153970 40 82 FF 94 */ bne .L_801569C4
/* 80156A34 00153974 83 5A 00 10 */ lwz r26, 0x10(r26)
.L_80156A38:
/* 80156A38 00153978 28 1A 00 00 */ cmplwi r26, 0
/* 80156A3C 0015397C 40 82 FF 40 */ bne .L_8015697C
/* 80156A40 00153980 83 7B 00 10 */ lwz r27, 0x10(r27)
.L_80156A44:
/* 80156A44 00153984 28 1B 00 00 */ cmplwi r27, 0
/* 80156A48 00153988 40 82 FE EC */ bne .L_80156934
/* 80156A4C 0015398C 83 9C 00 10 */ lwz r28, 0x10(r28)
.L_80156A50:
/* 80156A50 00153990 28 1C 00 00 */ cmplwi r28, 0
/* 80156A54 00153994 40 82 FE 98 */ bne .L_801568EC
/* 80156A58 00153998 83 FF 00 10 */ lwz r31, 0x10(r31)
.L_80156A5C:
/* 80156A5C 0015399C 28 1F 00 00 */ cmplwi r31, 0
/* 80156A60 001539A0 40 82 FE 44 */ bne .L_801568A4
/* 80156A64 001539A4 BB 01 00 10 */ lmw r24, 0x10(r1)
/* 80156A68 001539A8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80156A6C 001539AC 7C 08 03 A6 */ mtlr r0
/* 80156A70 001539B0 38 21 00 30 */ addi r1, r1, 0x30
/* 80156A74 001539B4 4E 80 00 20 */ blr
.global "mapSearchDown__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
"mapSearchDown__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul":
/* 80156A78 001539B8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80156A7C 001539BC 7C 08 02 A6 */ mflr r0
/* 80156A80 001539C0 90 01 00 44 */ stw r0, 0x44(r1)
/* 80156A84 001539C4 BE 41 00 08 */ stmw r18, 8(r1)
/* 80156A88 001539C8 7C 73 1B 78 */ mr r19, r3
/* 80156A8C 001539CC 7C 9D 23 78 */ mr r29, r4
/* 80156A90 001539D0 7C BE 2B 78 */ mr r30, r5
/* 80156A94 001539D4 82 43 00 1C */ lwz r18, 0x1c(r3)
/* 80156A98 001539D8 48 00 00 34 */ b .L_80156ACC
.L_80156A9C:
/* 80156A9C 001539DC 80 72 00 0C */ lwz r3, 0xc(r18)
/* 80156AA0 001539E0 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156AA4 001539E4 7C 00 F0 40 */ cmplw r0, r30
/* 80156AA8 001539E8 41 82 00 20 */ beq .L_80156AC8
/* 80156AAC 001539EC 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156AB0 001539F0 7F A3 EB 78 */ mr r3, r29
/* 80156AB4 001539F4 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156AB8 001539F8 80 92 00 0C */ lwz r4, 0xc(r18)
/* 80156ABC 001539FC 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156AC0 00153A00 7D 89 03 A6 */ mtctr r12
/* 80156AC4 00153A04 4E 80 04 21 */ bctrl
.L_80156AC8:
/* 80156AC8 00153A08 82 52 00 00 */ lwz r18, 0(r18)
.L_80156ACC:
/* 80156ACC 00153A0C 28 12 00 00 */ cmplwi r18, 0
/* 80156AD0 00153A10 40 82 FF CC */ bne .L_80156A9C
/* 80156AD4 00153A14 3B E0 00 00 */ li r31, 0
/* 80156AD8 00153A18 7E 72 9B 78 */ mr r18, r19
.L_80156ADC:
/* 80156ADC 00153A1C 82 F2 00 00 */ lwz r23, 0(r18)
/* 80156AE0 00153A20 28 17 00 00 */ cmplwi r23, 0
/* 80156AE4 00153A24 41 82 01 F0 */ beq .L_80156CD4
/* 80156AE8 00153A28 82 77 00 1C */ lwz r19, 0x1c(r23)
/* 80156AEC 00153A2C 48 00 00 34 */ b .L_80156B20
.L_80156AF0:
/* 80156AF0 00153A30 80 73 00 0C */ lwz r3, 0xc(r19)
/* 80156AF4 00153A34 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156AF8 00153A38 7C 00 F0 40 */ cmplw r0, r30
/* 80156AFC 00153A3C 41 82 00 20 */ beq .L_80156B1C
/* 80156B00 00153A40 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156B04 00153A44 7F A3 EB 78 */ mr r3, r29
/* 80156B08 00153A48 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156B0C 00153A4C 80 93 00 0C */ lwz r4, 0xc(r19)
/* 80156B10 00153A50 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156B14 00153A54 7D 89 03 A6 */ mtctr r12
/* 80156B18 00153A58 4E 80 04 21 */ bctrl
.L_80156B1C:
/* 80156B1C 00153A5C 82 73 00 00 */ lwz r19, 0(r19)
.L_80156B20:
/* 80156B20 00153A60 28 13 00 00 */ cmplwi r19, 0
/* 80156B24 00153A64 40 82 FF CC */ bne .L_80156AF0
/* 80156B28 00153A68 3B 80 00 00 */ li r28, 0
.L_80156B2C:
/* 80156B2C 00153A6C 82 D7 00 00 */ lwz r22, 0(r23)
/* 80156B30 00153A70 28 16 00 00 */ cmplwi r22, 0
/* 80156B34 00153A74 41 82 01 90 */ beq .L_80156CC4
/* 80156B38 00153A78 82 76 00 1C */ lwz r19, 0x1c(r22)
/* 80156B3C 00153A7C 48 00 00 34 */ b .L_80156B70
.L_80156B40:
/* 80156B40 00153A80 80 73 00 0C */ lwz r3, 0xc(r19)
/* 80156B44 00153A84 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156B48 00153A88 7C 00 F0 40 */ cmplw r0, r30
/* 80156B4C 00153A8C 41 82 00 20 */ beq .L_80156B6C
/* 80156B50 00153A90 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156B54 00153A94 7F A3 EB 78 */ mr r3, r29
/* 80156B58 00153A98 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156B5C 00153A9C 80 93 00 0C */ lwz r4, 0xc(r19)
/* 80156B60 00153AA0 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156B64 00153AA4 7D 89 03 A6 */ mtctr r12
/* 80156B68 00153AA8 4E 80 04 21 */ bctrl
.L_80156B6C:
/* 80156B6C 00153AAC 82 73 00 00 */ lwz r19, 0(r19)
.L_80156B70:
/* 80156B70 00153AB0 28 13 00 00 */ cmplwi r19, 0
/* 80156B74 00153AB4 40 82 FF CC */ bne .L_80156B40
/* 80156B78 00153AB8 3B 60 00 00 */ li r27, 0
.L_80156B7C:
/* 80156B7C 00153ABC 82 B6 00 00 */ lwz r21, 0(r22)
/* 80156B80 00153AC0 28 15 00 00 */ cmplwi r21, 0
/* 80156B84 00153AC4 41 82 01 30 */ beq .L_80156CB4
/* 80156B88 00153AC8 82 75 00 1C */ lwz r19, 0x1c(r21)
/* 80156B8C 00153ACC 48 00 00 34 */ b .L_80156BC0
.L_80156B90:
/* 80156B90 00153AD0 80 73 00 0C */ lwz r3, 0xc(r19)
/* 80156B94 00153AD4 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156B98 00153AD8 7C 00 F0 40 */ cmplw r0, r30
/* 80156B9C 00153ADC 41 82 00 20 */ beq .L_80156BBC
/* 80156BA0 00153AE0 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156BA4 00153AE4 7F A3 EB 78 */ mr r3, r29
/* 80156BA8 00153AE8 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156BAC 00153AEC 80 93 00 0C */ lwz r4, 0xc(r19)
/* 80156BB0 00153AF0 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156BB4 00153AF4 7D 89 03 A6 */ mtctr r12
/* 80156BB8 00153AF8 4E 80 04 21 */ bctrl
.L_80156BBC:
/* 80156BBC 00153AFC 82 73 00 00 */ lwz r19, 0(r19)
.L_80156BC0:
/* 80156BC0 00153B00 28 13 00 00 */ cmplwi r19, 0
/* 80156BC4 00153B04 40 82 FF CC */ bne .L_80156B90
/* 80156BC8 00153B08 3B 40 00 00 */ li r26, 0
.L_80156BCC:
/* 80156BCC 00153B0C 82 95 00 00 */ lwz r20, 0(r21)
/* 80156BD0 00153B10 28 14 00 00 */ cmplwi r20, 0
/* 80156BD4 00153B14 41 82 00 D0 */ beq .L_80156CA4
/* 80156BD8 00153B18 82 74 00 1C */ lwz r19, 0x1c(r20)
/* 80156BDC 00153B1C 48 00 00 34 */ b .L_80156C10
.L_80156BE0:
/* 80156BE0 00153B20 80 73 00 0C */ lwz r3, 0xc(r19)
/* 80156BE4 00153B24 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156BE8 00153B28 7C 00 F0 40 */ cmplw r0, r30
/* 80156BEC 00153B2C 41 82 00 20 */ beq .L_80156C0C
/* 80156BF0 00153B30 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156BF4 00153B34 7F A3 EB 78 */ mr r3, r29
/* 80156BF8 00153B38 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156BFC 00153B3C 80 93 00 0C */ lwz r4, 0xc(r19)
/* 80156C00 00153B40 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156C04 00153B44 7D 89 03 A6 */ mtctr r12
/* 80156C08 00153B48 4E 80 04 21 */ bctrl
.L_80156C0C:
/* 80156C0C 00153B4C 82 73 00 00 */ lwz r19, 0(r19)
.L_80156C10:
/* 80156C10 00153B50 28 13 00 00 */ cmplwi r19, 0
/* 80156C14 00153B54 40 82 FF CC */ bne .L_80156BE0
/* 80156C18 00153B58 3B 20 00 00 */ li r25, 0
.L_80156C1C:
/* 80156C1C 00153B5C 82 74 00 00 */ lwz r19, 0(r20)
/* 80156C20 00153B60 28 13 00 00 */ cmplwi r19, 0
/* 80156C24 00153B64 41 82 00 70 */ beq .L_80156C94
/* 80156C28 00153B68 83 13 00 1C */ lwz r24, 0x1c(r19)
/* 80156C2C 00153B6C 48 00 00 34 */ b .L_80156C60
.L_80156C30:
/* 80156C30 00153B70 80 78 00 0C */ lwz r3, 0xc(r24)
/* 80156C34 00153B74 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80156C38 00153B78 7C 00 F0 40 */ cmplw r0, r30
/* 80156C3C 00153B7C 41 82 00 20 */ beq .L_80156C5C
/* 80156C40 00153B80 93 C3 00 A4 */ stw r30, 0xa4(r3)
/* 80156C44 00153B84 7F A3 EB 78 */ mr r3, r29
/* 80156C48 00153B88 81 9D 00 00 */ lwz r12, 0(r29)
/* 80156C4C 00153B8C 80 98 00 0C */ lwz r4, 0xc(r24)
/* 80156C50 00153B90 81 8C 00 08 */ lwz r12, 8(r12)
/* 80156C54 00153B94 7D 89 03 A6 */ mtctr r12
/* 80156C58 00153B98 4E 80 04 21 */ bctrl
.L_80156C5C:
/* 80156C5C 00153B9C 83 18 00 00 */ lwz r24, 0(r24)
.L_80156C60:
/* 80156C60 00153BA0 28 18 00 00 */ cmplwi r24, 0
/* 80156C64 00153BA4 40 82 FF CC */ bne .L_80156C30
/* 80156C68 00153BA8 3B 00 00 00 */ li r24, 0
.L_80156C6C:
/* 80156C6C 00153BAC 80 73 00 00 */ lwz r3, 0(r19)
/* 80156C70 00153BB0 28 03 00 00 */ cmplwi r3, 0
/* 80156C74 00153BB4 41 82 00 10 */ beq .L_80156C84
/* 80156C78 00153BB8 7F A4 EB 78 */ mr r4, r29
/* 80156C7C 00153BBC 7F C5 F3 78 */ mr r5, r30
/* 80156C80 00153BC0 4B FF FD F9 */ bl "mapSearchDown__Q24Game4CellFP32IDelegate1<PQ24Game10CellObject>Ul"
.L_80156C84:
/* 80156C84 00153BC4 3B 18 00 01 */ addi r24, r24, 1
/* 80156C88 00153BC8 3A 73 00 04 */ addi r19, r19, 4
/* 80156C8C 00153BCC 2C 18 00 04 */ cmpwi r24, 4
/* 80156C90 00153BD0 41 80 FF DC */ blt .L_80156C6C
.L_80156C94:
/* 80156C94 00153BD4 3B 39 00 01 */ addi r25, r25, 1
/* 80156C98 00153BD8 3A 94 00 04 */ addi r20, r20, 4
/* 80156C9C 00153BDC 2C 19 00 04 */ cmpwi r25, 4
/* 80156CA0 00153BE0 41 80 FF 7C */ blt .L_80156C1C
.L_80156CA4:
/* 80156CA4 00153BE4 3B 5A 00 01 */ addi r26, r26, 1
/* 80156CA8 00153BE8 3A B5 00 04 */ addi r21, r21, 4
/* 80156CAC 00153BEC 2C 1A 00 04 */ cmpwi r26, 4
/* 80156CB0 00153BF0 41 80 FF 1C */ blt .L_80156BCC
.L_80156CB4:
/* 80156CB4 00153BF4 3B 7B 00 01 */ addi r27, r27, 1
/* 80156CB8 00153BF8 3A D6 00 04 */ addi r22, r22, 4
/* 80156CBC 00153BFC 2C 1B 00 04 */ cmpwi r27, 4
/* 80156CC0 00153C00 41 80 FE BC */ blt .L_80156B7C
.L_80156CC4:
/* 80156CC4 00153C04 3B 9C 00 01 */ addi r28, r28, 1
/* 80156CC8 00153C08 3A F7 00 04 */ addi r23, r23, 4
/* 80156CCC 00153C0C 2C 1C 00 04 */ cmpwi r28, 4
/* 80156CD0 00153C10 41 80 FE 5C */ blt .L_80156B2C
.L_80156CD4:
/* 80156CD4 00153C14 3B FF 00 01 */ addi r31, r31, 1
/* 80156CD8 00153C18 3A 52 00 04 */ addi r18, r18, 4
/* 80156CDC 00153C1C 2C 1F 00 04 */ cmpwi r31, 4
/* 80156CE0 00153C20 41 80 FD FC */ blt .L_80156ADC
/* 80156CE4 00153C24 BA 41 00 08 */ lmw r18, 8(r1)
/* 80156CE8 00153C28 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80156CEC 00153C2C 7C 08 03 A6 */ mtlr r0
/* 80156CF0 00153C30 38 21 00 40 */ addi r1, r1, 0x40
/* 80156CF4 00153C34 4E 80 00 20 */ blr
.global resolveCollision__Q24Game4CellFv
resolveCollision__Q24Game4CellFv:
/* 80156CF8 00153C38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80156CFC 00153C3C 7C 08 02 A6 */ mflr r0
/* 80156D00 00153C40 90 01 00 14 */ stw r0, 0x14(r1)
/* 80156D04 00153C44 80 8D 96 08 */ lwz r4, mInstance__12CellMgrParms@sda21(r13)
/* 80156D08 00153C48 88 04 00 3C */ lbz r0, 0x3c(r4)
/* 80156D0C 00153C4C 28 00 00 00 */ cmplwi r0, 0
/* 80156D10 00153C50 41 82 00 0C */ beq .L_80156D1C
/* 80156D14 00153C54 48 00 23 4D */ bl resolveCollision_3__Q24Game4CellFv
/* 80156D18 00153C58 48 00 00 1C */ b .L_80156D34
.L_80156D1C:
/* 80156D1C 00153C5C 88 04 00 58 */ lbz r0, 0x58(r4)
/* 80156D20 00153C60 28 00 00 00 */ cmplwi r0, 0
/* 80156D24 00153C64 41 82 00 0C */ beq .L_80156D30
/* 80156D28 00153C68 48 00 22 39 */ bl resolveCollision_1__Q24Game4CellFv
/* 80156D2C 00153C6C 48 00 00 08 */ b .L_80156D34
.L_80156D30:
/* 80156D30 00153C70 48 00 21 39 */ bl resolveCollision_2__Q24Game4CellFv
.L_80156D34:
/* 80156D34 00153C74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80156D38 00153C78 7C 08 03 A6 */ mtlr r0
/* 80156D3C 00153C7C 38 21 00 10 */ addi r1, r1, 0x10
/* 80156D40 00153C80 4E 80 00 20 */ blr
.global initFrame__Q24Game11CellPyramidFv
initFrame__Q24Game11CellPyramidFv:
/* 80156D44 00153C84 4E 80 00 20 */ blr
.global updateCollisionBuffer__Q24Game10CellObjectFPQ24Game10CellObject
updateCollisionBuffer__Q24Game10CellObjectFPQ24Game10CellObject:
/* 80156D48 00153C88 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80156D4C 00153C8C 7C 08 02 A6 */ mflr r0
/* 80156D50 00153C90 90 01 00 34 */ stw r0, 0x34(r1)
/* 80156D54 00153C94 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80156D58 00153C98 7C 9F 23 78 */ mr r31, r4
/* 80156D5C 00153C9C 38 81 00 08 */ addi r4, r1, 8
/* 80156D60 00153CA0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80156D64 00153CA4 7C 7E 1B 78 */ mr r30, r3
/* 80156D68 00153CA8 81 83 00 00 */ lwz r12, 0(r3)
/* 80156D6C 00153CAC 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80156D70 00153CB0 7D 89 03 A6 */ mtctr r12
/* 80156D74 00153CB4 4E 80 04 21 */ bctrl
/* 80156D78 00153CB8 7F E3 FB 78 */ mr r3, r31
/* 80156D7C 00153CBC 38 81 00 18 */ addi r4, r1, 0x18
/* 80156D80 00153CC0 81 9F 00 00 */ lwz r12, 0(r31)
/* 80156D84 00153CC4 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80156D88 00153CC8 7D 89 03 A6 */ mtctr r12
/* 80156D8C 00153CCC 4E 80 04 21 */ bctrl
/* 80156D90 00153CD0 C0 21 00 0C */ lfs f1, 0xc(r1)
/* 80156D94 00153CD4 C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 80156D98 00153CD8 C0 61 00 10 */ lfs f3, 0x10(r1)
/* 80156D9C 00153CDC EC 81 00 28 */ fsubs f4, f1, f0
/* 80156DA0 00153CE0 C0 41 00 20 */ lfs f2, 0x20(r1)
/* 80156DA4 00153CE4 C0 21 00 08 */ lfs f1, 8(r1)
/* 80156DA8 00153CE8 C0 01 00 18 */ lfs f0, 0x18(r1)
/* 80156DAC 00153CEC EC 43 10 28 */ fsubs f2, f3, f2
/* 80156DB0 00153CF0 EC 64 01 32 */ fmuls f3, f4, f4
/* 80156DB4 00153CF4 EC 21 00 28 */ fsubs f1, f1, f0
/* 80156DB8 00153CF8 C0 02 A2 C8 */ lfs f0, lbl_80518628@sda21(r2)
/* 80156DBC 00153CFC EC 42 00 B2 */ fmuls f2, f2, f2
/* 80156DC0 00153D00 EC 21 18 7A */ fmadds f1, f1, f1, f3
/* 80156DC4 00153D04 EC 42 08 2A */ fadds f2, f2, f1
/* 80156DC8 00153D08 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80156DCC 00153D0C 40 81 00 14 */ ble .L_80156DE0
/* 80156DD0 00153D10 40 81 00 14 */ ble .L_80156DE4
/* 80156DD4 00153D14 FC 00 10 34 */ frsqrte f0, f2
/* 80156DD8 00153D18 EC 40 00 B2 */ fmuls f2, f0, f2
/* 80156DDC 00153D1C 48 00 00 08 */ b .L_80156DE4
.L_80156DE0:
/* 80156DE0 00153D20 FC 40 00 90 */ fmr f2, f0
.L_80156DE4:
/* 80156DE4 00153D24 C0 21 00 14 */ lfs f1, 0x14(r1)
/* 80156DE8 00153D28 7F E4 FB 78 */ mr r4, r31
/* 80156DEC 00153D2C C0 01 00 24 */ lfs f0, 0x24(r1)
/* 80156DF0 00153D30 38 7E 00 A8 */ addi r3, r30, 0xa8
/* 80156DF4 00153D34 EC 01 00 2A */ fadds f0, f1, f0
/* 80156DF8 00153D38 EC 22 00 28 */ fsubs f1, f2, f0
/* 80156DFC 00153D3C 48 00 00 B5 */ bl insert__Q24Game15CollisionBufferFPQ24Game10CellObjectf
/* 80156E00 00153D40 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80156E04 00153D44 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80156E08 00153D48 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80156E0C 00153D4C 7C 08 03 A6 */ mtlr r0
/* 80156E10 00153D50 38 21 00 30 */ addi r1, r1, 0x30
/* 80156E14 00153D54 4E 80 00 20 */ blr
.global __ct__Q24Game15CollisionBufferFv
__ct__Q24Game15CollisionBufferFv:
/* 80156E18 00153D58 38 00 00 00 */ li r0, 0
/* 80156E1C 00153D5C 90 03 00 0C */ stw r0, 0xc(r3)
/* 80156E20 00153D60 90 03 00 08 */ stw r0, 8(r3)
/* 80156E24 00153D64 90 03 00 04 */ stw r0, 4(r3)
/* 80156E28 00153D68 90 03 00 00 */ stw r0, 0(r3)
/* 80156E2C 00153D6C 4E 80 00 20 */ blr
.global alloc__Q24Game15CollisionBufferFPQ24Game10CellObjecti
alloc__Q24Game15CollisionBufferFPQ24Game10CellObjecti:
/* 80156E30 00153D70 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80156E34 00153D74 7C 08 02 A6 */ mflr r0
/* 80156E38 00153D78 90 01 00 14 */ stw r0, 0x14(r1)
/* 80156E3C 00153D7C 38 00 00 00 */ li r0, 0
/* 80156E40 00153D80 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80156E44 00153D84 93 C1 00 08 */ stw r30, 8(r1)
/* 80156E48 00153D88 7C 7E 1B 78 */ mr r30, r3
/* 80156E4C 00153D8C 90 83 00 0C */ stw r4, 0xc(r3)
/* 80156E50 00153D90 90 A3 00 00 */ stw r5, 0(r3)
/* 80156E54 00153D94 90 03 00 04 */ stw r0, 4(r3)
/* 80156E58 00153D98 83 E3 00 00 */ lwz r31, 0(r3)
/* 80156E5C 00153D9C 57 E3 18 38 */ slwi r3, r31, 3
/* 80156E60 00153DA0 38 63 00 10 */ addi r3, r3, 0x10
/* 80156E64 00153DA4 4B EC D1 49 */ bl __nwa__FUl
/* 80156E68 00153DA8 3C 80 80 15 */ lis r4, __ct__Q24Game8CollNodeFv@ha
/* 80156E6C 00153DAC 7F E7 FB 78 */ mr r7, r31
/* 80156E70 00153DB0 38 84 6E 9C */ addi r4, r4, __ct__Q24Game8CollNodeFv@l
/* 80156E74 00153DB4 38 A0 00 00 */ li r5, 0
/* 80156E78 00153DB8 38 C0 00 08 */ li r6, 8
/* 80156E7C 00153DBC 4B F6 AB 75 */ bl __construct_new_array
/* 80156E80 00153DC0 90 7E 00 08 */ stw r3, 8(r30)
/* 80156E84 00153DC4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80156E88 00153DC8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80156E8C 00153DCC 83 C1 00 08 */ lwz r30, 8(r1)
/* 80156E90 00153DD0 7C 08 03 A6 */ mtlr r0
/* 80156E94 00153DD4 38 21 00 10 */ addi r1, r1, 0x10
/* 80156E98 00153DD8 4E 80 00 20 */ blr
.global __ct__Q24Game8CollNodeFv
__ct__Q24Game8CollNodeFv:
/* 80156E9C 00153DDC 38 00 00 00 */ li r0, 0
/* 80156EA0 00153DE0 C0 02 A2 C8 */ lfs f0, lbl_80518628@sda21(r2)
/* 80156EA4 00153DE4 90 03 00 00 */ stw r0, 0(r3)
/* 80156EA8 00153DE8 D0 03 00 04 */ stfs f0, 4(r3)
/* 80156EAC 00153DEC 4E 80 00 20 */ blr
.global insert__Q24Game15CollisionBufferFPQ24Game10CellObjectf
insert__Q24Game15CollisionBufferFPQ24Game10CellObjectf:
/* 80156EB0 00153DF0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80156EB4 00153DF4 7C 08 02 A6 */ mflr r0
/* 80156EB8 00153DF8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80156EBC 00153DFC DB E1 00 18 */ stfd f31, 0x18(r1)
/* 80156EC0 00153E00 FF E0 08 90 */ fmr f31, f1
/* 80156EC4 00153E04 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80156EC8 00153E08 7C 9F 23 78 */ mr r31, r4
/* 80156ECC 00153E0C 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80156ED0 00153E10 7C 7E 1B 78 */ mr r30, r3
/* 80156ED4 00153E14 80 63 00 0C */ lwz r3, 0xc(r3)
/* 80156ED8 00153E18 28 03 00 00 */ cmplwi r3, 0
/* 80156EDC 00153E1C 41 82 00 70 */ beq .L_80156F4C
/* 80156EE0 00153E20 81 83 00 00 */ lwz r12, 0(r3)
/* 80156EE4 00153E24 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 80156EE8 00153E28 7D 89 03 A6 */ mtctr r12
/* 80156EEC 00153E2C 4E 80 04 21 */ bctrl
/* 80156EF0 00153E30 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80156EF4 00153E34 41 82 00 48 */ beq .L_80156F3C
/* 80156EF8 00153E38 7F E3 FB 78 */ mr r3, r31
/* 80156EFC 00153E3C 81 9F 00 00 */ lwz r12, 0(r31)
/* 80156F00 00153E40 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80156F04 00153E44 7D 89 03 A6 */ mtctr r12
/* 80156F08 00153E48 4E 80 04 21 */ bctrl
/* 80156F0C 00153E4C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80156F10 00153E50 41 82 00 18 */ beq .L_80156F28
/* 80156F14 00153E54 FC 20 F8 90 */ fmr f1, f31
/* 80156F18 00153E58 7F C3 F3 78 */ mr r3, r30
/* 80156F1C 00153E5C 7F E4 FB 78 */ mr r4, r31
/* 80156F20 00153E60 48 00 00 49 */ bl pikiInsertPiki__Q24Game15CollisionBufferFPQ24Game10CellObjectf
/* 80156F24 00153E64 48 00 00 28 */ b .L_80156F4C
.L_80156F28:
/* 80156F28 00153E68 FC 20 F8 90 */ fmr f1, f31
/* 80156F2C 00153E6C 7F C3 F3 78 */ mr r3, r30
/* 80156F30 00153E70 7F E4 FB 78 */ mr r4, r31
/* 80156F34 00153E74 48 00 01 5D */ bl pikiInsertOther__Q24Game15CollisionBufferFPQ24Game10CellObjectf
/* 80156F38 00153E78 48 00 00 14 */ b .L_80156F4C
.L_80156F3C:
/* 80156F3C 00153E7C FC 20 F8 90 */ fmr f1, f31
/* 80156F40 00153E80 7F C3 F3 78 */ mr r3, r30
/* 80156F44 00153E84 7F E4 FB 78 */ mr r4, r31
/* 80156F48 00153E88 48 00 02 71 */ bl insertSort__Q24Game15CollisionBufferFPQ24Game10CellObjectf
.L_80156F4C:
/* 80156F4C 00153E8C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80156F50 00153E90 CB E1 00 18 */ lfd f31, 0x18(r1)
/* 80156F54 00153E94 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80156F58 00153E98 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80156F5C 00153E9C 7C 08 03 A6 */ mtlr r0
/* 80156F60 00153EA0 38 21 00 20 */ addi r1, r1, 0x20
/* 80156F64 00153EA4 4E 80 00 20 */ blr
.global pikiInsertPiki__Q24Game15CollisionBufferFPQ24Game10CellObjectf
pikiInsertPiki__Q24Game15CollisionBufferFPQ24Game10CellObjectf:
/* 80156F68 00153EA8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80156F6C 00153EAC 7C 08 02 A6 */ mflr r0
/* 80156F70 00153EB0 90 01 00 34 */ stw r0, 0x34(r1)
/* 80156F74 00153EB4 DB E1 00 20 */ stfd f31, 0x20(r1)
/* 80156F78 00153EB8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0
/* 80156F7C 00153EBC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80156F80 00153EC0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80156F84 00153EC4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80156F88 00153EC8 93 81 00 10 */ stw r28, 0x10(r1)
/* 80156F8C 00153ECC FF E0 08 90 */ fmr f31, f1
/* 80156F90 00153ED0 7C 7E 1B 78 */ mr r30, r3
/* 80156F94 00153ED4 7C 9F 23 78 */ mr r31, r4
/* 80156F98 00153ED8 48 00 03 19 */ bl findIndex__Q24Game15CollisionBufferFPQ24Game10CellObject
/* 80156F9C 00153EDC 2C 03 FF FF */ cmpwi r3, -1
/* 80156FA0 00153EE0 40 82 00 C8 */ bne .L_80157068
/* 80156FA4 00153EE4 80 7E 00 04 */ lwz r3, 4(r30)
/* 80156FA8 00153EE8 3B 83 FF FF */ addi r28, r3, -1
/* 80156FAC 00153EEC 57 9D 18 38 */ slwi r29, r28, 3
/* 80156FB0 00153EF0 48 00 00 6C */ b .L_8015701C
.L_80156FB4:
/* 80156FB4 00153EF4 80 1E 00 08 */ lwz r0, 8(r30)
/* 80156FB8 00153EF8 7C 60 EA 14 */ add r3, r0, r29
/* 80156FBC 00153EFC C0 03 00 04 */ lfs f0, 4(r3)
/* 80156FC0 00153F00 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80156FC4 00153F04 40 81 00 60 */ ble .L_80157024
/* 80156FC8 00153F08 80 63 00 00 */ lwz r3, 0(r3)
/* 80156FCC 00153F0C 81 83 00 00 */ lwz r12, 0(r3)
/* 80156FD0 00153F10 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80156FD4 00153F14 7D 89 03 A6 */ mtctr r12
/* 80156FD8 00153F18 4E 80 04 21 */ bctrl
/* 80156FDC 00153F1C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80156FE0 00153F20 41 82 00 44 */ beq .L_80157024
/* 80156FE4 00153F24 80 1E 00 00 */ lwz r0, 0(r30)
/* 80156FE8 00153F28 38 7C 00 01 */ addi r3, r28, 1
/* 80156FEC 00153F2C 7C 03 00 00 */ cmpw r3, r0
/* 80156FF0 00153F30 40 80 00 24 */ bge .L_80157014
/* 80156FF4 00153F34 80 1E 00 08 */ lwz r0, 8(r30)
/* 80156FF8 00153F38 7C 60 EA 14 */ add r3, r0, r29
/* 80156FFC 00153F3C 80 03 00 00 */ lwz r0, 0(r3)
/* 80157000 00153F40 90 03 00 08 */ stw r0, 8(r3)
/* 80157004 00153F44 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157008 00153F48 7C 60 EA 14 */ add r3, r0, r29
/* 8015700C 00153F4C C0 03 00 04 */ lfs f0, 4(r3)
/* 80157010 00153F50 D0 03 00 0C */ stfs f0, 0xc(r3)
.L_80157014:
/* 80157014 00153F54 3B BD FF F8 */ addi r29, r29, -8
/* 80157018 00153F58 3B 9C FF FF */ addi r28, r28, -1
.L_8015701C:
/* 8015701C 00153F5C 2C 1C 00 00 */ cmpwi r28, 0
/* 80157020 00153F60 40 80 FF 94 */ bge .L_80156FB4
.L_80157024:
/* 80157024 00153F64 80 1E 00 00 */ lwz r0, 0(r30)
/* 80157028 00153F68 38 7C 00 01 */ addi r3, r28, 1
/* 8015702C 00153F6C 7C 03 00 00 */ cmpw r3, r0
/* 80157030 00153F70 40 80 00 38 */ bge .L_80157068
/* 80157034 00153F74 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157038 00153F78 57 84 18 38 */ slwi r4, r28, 3
/* 8015703C 00153F7C 7C 60 22 14 */ add r3, r0, r4
/* 80157040 00153F80 93 E3 00 08 */ stw r31, 8(r3)
/* 80157044 00153F84 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157048 00153F88 7C 60 22 14 */ add r3, r0, r4
/* 8015704C 00153F8C D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 80157050 00153F90 80 7E 00 04 */ lwz r3, 4(r30)
/* 80157054 00153F94 80 1E 00 00 */ lwz r0, 0(r30)
/* 80157058 00153F98 7C 03 00 00 */ cmpw r3, r0
/* 8015705C 00153F9C 40 80 00 0C */ bge .L_80157068
/* 80157060 00153FA0 38 03 00 01 */ addi r0, r3, 1
/* 80157064 00153FA4 90 1E 00 04 */ stw r0, 4(r30)
.L_80157068:
/* 80157068 00153FA8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 8015706C 00153FAC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80157070 00153FB0 CB E1 00 20 */ lfd f31, 0x20(r1)
/* 80157074 00153FB4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80157078 00153FB8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8015707C 00153FBC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80157080 00153FC0 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80157084 00153FC4 7C 08 03 A6 */ mtlr r0
/* 80157088 00153FC8 38 21 00 30 */ addi r1, r1, 0x30
/* 8015708C 00153FCC 4E 80 00 20 */ blr
.global pikiInsertOther__Q24Game15CollisionBufferFPQ24Game10CellObjectf
pikiInsertOther__Q24Game15CollisionBufferFPQ24Game10CellObjectf:
/* 80157090 00153FD0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80157094 00153FD4 7C 08 02 A6 */ mflr r0
/* 80157098 00153FD8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8015709C 00153FDC DB E1 00 20 */ stfd f31, 0x20(r1)
/* 801570A0 00153FE0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0
/* 801570A4 00153FE4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801570A8 00153FE8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801570AC 00153FEC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801570B0 00153FF0 93 81 00 10 */ stw r28, 0x10(r1)
/* 801570B4 00153FF4 FF E0 08 90 */ fmr f31, f1
/* 801570B8 00153FF8 7C 7E 1B 78 */ mr r30, r3
/* 801570BC 00153FFC 7C 9F 23 78 */ mr r31, r4
/* 801570C0 00154000 48 00 01 F1 */ bl findIndex__Q24Game15CollisionBufferFPQ24Game10CellObject
/* 801570C4 00154004 2C 03 FF FF */ cmpwi r3, -1
/* 801570C8 00154008 40 82 00 C8 */ bne .L_80157190
/* 801570CC 0015400C 80 7E 00 04 */ lwz r3, 4(r30)
/* 801570D0 00154010 3B 83 FF FF */ addi r28, r3, -1
/* 801570D4 00154014 57 9D 18 38 */ slwi r29, r28, 3
/* 801570D8 00154018 48 00 00 6C */ b .L_80157144
.L_801570DC:
/* 801570DC 0015401C 80 1E 00 08 */ lwz r0, 8(r30)
/* 801570E0 00154020 7C 60 EA 14 */ add r3, r0, r29
/* 801570E4 00154024 C0 03 00 04 */ lfs f0, 4(r3)
/* 801570E8 00154028 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 801570EC 0015402C 41 81 00 20 */ bgt .L_8015710C
/* 801570F0 00154030 80 63 00 00 */ lwz r3, 0(r3)
/* 801570F4 00154034 81 83 00 00 */ lwz r12, 0(r3)
/* 801570F8 00154038 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 801570FC 0015403C 7D 89 03 A6 */ mtctr r12
/* 80157100 00154040 4E 80 04 21 */ bctrl
/* 80157104 00154044 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80157108 00154048 41 82 00 44 */ beq .L_8015714C
.L_8015710C:
/* 8015710C 0015404C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80157110 00154050 38 7C 00 01 */ addi r3, r28, 1
/* 80157114 00154054 7C 03 00 00 */ cmpw r3, r0
/* 80157118 00154058 40 80 00 24 */ bge .L_8015713C
/* 8015711C 0015405C 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157120 00154060 7C 60 EA 14 */ add r3, r0, r29
/* 80157124 00154064 80 03 00 00 */ lwz r0, 0(r3)
/* 80157128 00154068 90 03 00 08 */ stw r0, 8(r3)
/* 8015712C 0015406C 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157130 00154070 7C 60 EA 14 */ add r3, r0, r29
/* 80157134 00154074 C0 03 00 04 */ lfs f0, 4(r3)
/* 80157138 00154078 D0 03 00 0C */ stfs f0, 0xc(r3)
.L_8015713C:
/* 8015713C 0015407C 3B BD FF F8 */ addi r29, r29, -8
/* 80157140 00154080 3B 9C FF FF */ addi r28, r28, -1
.L_80157144:
/* 80157144 00154084 2C 1C 00 00 */ cmpwi r28, 0
/* 80157148 00154088 40 80 FF 94 */ bge .L_801570DC
.L_8015714C:
/* 8015714C 0015408C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80157150 00154090 38 7C 00 01 */ addi r3, r28, 1
/* 80157154 00154094 7C 03 00 00 */ cmpw r3, r0
/* 80157158 00154098 40 80 00 38 */ bge .L_80157190
/* 8015715C 0015409C 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157160 001540A0 57 84 18 38 */ slwi r4, r28, 3
/* 80157164 001540A4 7C 60 22 14 */ add r3, r0, r4
/* 80157168 001540A8 93 E3 00 08 */ stw r31, 8(r3)
/* 8015716C 001540AC 80 1E 00 08 */ lwz r0, 8(r30)
/* 80157170 001540B0 7C 60 22 14 */ add r3, r0, r4
/* 80157174 001540B4 D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 80157178 001540B8 80 7E 00 04 */ lwz r3, 4(r30)
/* 8015717C 001540BC 80 1E 00 00 */ lwz r0, 0(r30)
/* 80157180 001540C0 7C 03 00 00 */ cmpw r3, r0
/* 80157184 001540C4 40 80 00 0C */ bge .L_80157190
/* 80157188 001540C8 38 03 00 01 */ addi r0, r3, 1
/* 8015718C 001540CC 90 1E 00 04 */ stw r0, 4(r30)
.L_80157190:
/* 80157190 001540D0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 80157194 001540D4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80157198 001540D8 CB E1 00 20 */ lfd f31, 0x20(r1)
/* 8015719C 001540DC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 801571A0 001540E0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 801571A4 001540E4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 801571A8 001540E8 83 81 00 10 */ lwz r28, 0x10(r1)
/* 801571AC 001540EC 7C 08 03 A6 */ mtlr r0
/* 801571B0 001540F0 38 21 00 30 */ addi r1, r1, 0x30
/* 801571B4 001540F4 4E 80 00 20 */ blr
.global insertSort__Q24Game15CollisionBufferFPQ24Game10CellObjectf
insertSort__Q24Game15CollisionBufferFPQ24Game10CellObjectf:
/* 801571B8 001540F8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801571BC 001540FC 7C 08 02 A6 */ mflr r0
/* 801571C0 00154100 90 01 00 24 */ stw r0, 0x24(r1)
/* 801571C4 00154104 DB E1 00 10 */ stfd f31, 0x10(r1)
/* 801571C8 00154108 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0
/* 801571CC 0015410C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801571D0 00154110 93 C1 00 08 */ stw r30, 8(r1)
/* 801571D4 00154114 FF E0 08 90 */ fmr f31, f1
/* 801571D8 00154118 7C 7F 1B 78 */ mr r31, r3
/* 801571DC 0015411C 7C 9E 23 78 */ mr r30, r4
/* 801571E0 00154120 48 00 00 D1 */ bl findIndex__Q24Game15CollisionBufferFPQ24Game10CellObject
/* 801571E4 00154124 2C 03 FF FF */ cmpwi r3, -1
/* 801571E8 00154128 40 82 00 A8 */ bne .L_80157290
/* 801571EC 0015412C 80 7F 00 04 */ lwz r3, 4(r31)
/* 801571F0 00154130 34 C3 FF FF */ addic. r6, r3, -1
/* 801571F4 00154134 38 06 00 01 */ addi r0, r6, 1
/* 801571F8 00154138 54 C4 18 38 */ slwi r4, r6, 3
/* 801571FC 0015413C 7C 09 03 A6 */ mtctr r0
/* 80157200 00154140 41 80 00 4C */ blt .L_8015724C
.L_80157204:
/* 80157204 00154144 80 1F 00 08 */ lwz r0, 8(r31)
/* 80157208 00154148 7C A0 22 14 */ add r5, r0, r4
/* 8015720C 0015414C C0 05 00 04 */ lfs f0, 4(r5)
/* 80157210 00154150 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80157214 00154154 40 81 00 38 */ ble .L_8015724C
/* 80157218 00154158 80 1F 00 00 */ lwz r0, 0(r31)
/* 8015721C 0015415C 38 66 00 01 */ addi r3, r6, 1
/* 80157220 00154160 7C 03 00 00 */ cmpw r3, r0
/* 80157224 00154164 40 80 00 1C */ bge .L_80157240
/* 80157228 00154168 80 05 00 00 */ lwz r0, 0(r5)
/* 8015722C 0015416C 90 05 00 08 */ stw r0, 8(r5)
/* 80157230 00154170 80 1F 00 08 */ lwz r0, 8(r31)
/* 80157234 00154174 7C 60 22 14 */ add r3, r0, r4
/* 80157238 00154178 C0 03 00 04 */ lfs f0, 4(r3)
/* 8015723C 0015417C D0 03 00 0C */ stfs f0, 0xc(r3)
.L_80157240:
/* 80157240 00154180 38 84 FF F8 */ addi r4, r4, -8
/* 80157244 00154184 38 C6 FF FF */ addi r6, r6, -1
/* 80157248 00154188 42 00 FF BC */ bdnz .L_80157204
.L_8015724C:
/* 8015724C 0015418C 80 1F 00 00 */ lwz r0, 0(r31)
/* 80157250 00154190 38 66 00 01 */ addi r3, r6, 1
/* 80157254 00154194 7C 03 00 00 */ cmpw r3, r0
/* 80157258 00154198 40 80 00 38 */ bge .L_80157290
/* 8015725C 0015419C 80 1F 00 08 */ lwz r0, 8(r31)
/* 80157260 001541A0 54 C4 18 38 */ slwi r4, r6, 3
/* 80157264 001541A4 7C 60 22 14 */ add r3, r0, r4
/* 80157268 001541A8 93 C3 00 08 */ stw r30, 8(r3)
/* 8015726C 001541AC 80 1F 00 08 */ lwz r0, 8(r31)
/* 80157270 001541B0 7C 60 22 14 */ add r3, r0, r4
/* 80157274 001541B4 D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 80157278 001541B8 80 7F 00 04 */ lwz r3, 4(r31)
/* 8015727C 001541BC 80 1F 00 00 */ lwz r0, 0(r31)
/* 80157280 001541C0 7C 03 00 00 */ cmpw r3, r0
/* 80157284 001541C4 40 80 00 0C */ bge .L_80157290
/* 80157288 001541C8 38 03 00 01 */ addi r0, r3, 1
/* 8015728C 001541CC 90 1F 00 04 */ stw r0, 4(r31)
.L_80157290:
/* 80157290 001541D0 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0
/* 80157294 001541D4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80157298 001541D8 CB E1 00 10 */ lfd f31, 0x10(r1)
/* 8015729C 001541DC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801572A0 001541E0 83 C1 00 08 */ lwz r30, 8(r1)
/* 801572A4 001541E4 7C 08 03 A6 */ mtlr r0
/* 801572A8 001541E8 38 21 00 20 */ addi r1, r1, 0x20
/* 801572AC 001541EC 4E 80 00 20 */ blr
.global findIndex__Q24Game15CollisionBufferFPQ24Game10CellObject
findIndex__Q24Game15CollisionBufferFPQ24Game10CellObject:
/* 801572B0 001541F0 80 03 00 04 */ lwz r0, 4(r3)
/* 801572B4 001541F4 38 E0 00 00 */ li r7, 0
/* 801572B8 001541F8 38 C0 00 00 */ li r6, 0
/* 801572BC 001541FC 7C 09 03 A6 */ mtctr r0
/* 801572C0 00154200 2C 00 00 00 */ cmpwi r0, 0
/* 801572C4 00154204 40 81 00 28 */ ble .L_801572EC
.L_801572C8:
/* 801572C8 00154208 80 A3 00 08 */ lwz r5, 8(r3)
/* 801572CC 0015420C 7C 05 30 2E */ lwzx r0, r5, r6
/* 801572D0 00154210 7C 00 20 40 */ cmplw r0, r4
/* 801572D4 00154214 40 82 00 0C */ bne .L_801572E0
/* 801572D8 00154218 7C E3 3B 78 */ mr r3, r7
/* 801572DC 0015421C 4E 80 00 20 */ blr
.L_801572E0:
/* 801572E0 00154220 38 C6 00 08 */ addi r6, r6, 8
/* 801572E4 00154224 38 E7 00 01 */ addi r7, r7, 1
/* 801572E8 00154228 42 00 FF E0 */ bdnz .L_801572C8
.L_801572EC:
/* 801572EC 0015422C 38 60 FF FF */ li r3, -1
/* 801572F0 00154230 4E 80 00 20 */ blr
.global resolveCollision__Q24Game11CellPyramidFv
resolveCollision__Q24Game11CellPyramidFv:
/* 801572F4 00154234 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 801572F8 00154238 7C 08 02 A6 */ mflr r0
/* 801572FC 0015423C 90 01 00 34 */ stw r0, 0x34(r1)
/* 80157300 00154240 3C 00 04 00 */ lis r0, 0x400
/* 80157304 00154244 BF 41 00 18 */ stmw r26, 0x18(r1)
/* 80157308 00154248 7C 7F 1B 78 */ mr r31, r3
/* 8015730C 0015424C 80 63 00 44 */ lwz r3, 0x44(r3)
/* 80157310 00154250 38 63 00 01 */ addi r3, r3, 1
/* 80157314 00154254 90 7F 00 44 */ stw r3, 0x44(r31)
/* 80157318 00154258 80 7F 00 44 */ lwz r3, 0x44(r31)
/* 8015731C 0015425C 7C 03 00 40 */ cmplw r3, r0
/* 80157320 00154260 41 80 00 0C */ blt .L_8015732C
/* 80157324 00154264 38 00 00 00 */ li r0, 0
/* 80157328 00154268 90 1F 00 44 */ stw r0, 0x44(r31)
.L_8015732C:
/* 8015732C 0015426C 88 0D 84 18 */ lbz r0, sOptResolveColl__Q24Game11CellPyramid@sda21(r13)
/* 80157330 00154270 2C 00 00 02 */ cmpwi r0, 2
/* 80157334 00154274 41 82 01 40 */ beq .L_80157474
/* 80157338 00154278 40 80 00 14 */ bge .L_8015734C
/* 8015733C 0015427C 2C 00 00 00 */ cmpwi r0, 0
/* 80157340 00154280 41 82 00 44 */ beq .L_80157384
/* 80157344 00154284 40 80 00 D8 */ bge .L_8015741C
/* 80157348 00154288 48 00 01 DC */ b .L_80157524
.L_8015734C:
/* 8015734C 0015428C 2C 00 00 04 */ cmpwi r0, 4
/* 80157350 00154290 40 80 01 D4 */ bge .L_80157524
/* 80157354 00154294 3C 80 80 4B */ lis r4, __vt__Q310SweepPrune5World8Callback@ha
/* 80157358 00154298 3C 60 80 4B */ lis r3, __vt__13SweepCallback@ha
/* 8015735C 0015429C 38 84 14 94 */ addi r4, r4, __vt__Q310SweepPrune5World8Callback@l
/* 80157360 001542A0 38 01 00 08 */ addi r0, r1, 8
/* 80157364 001542A4 90 81 00 08 */ stw r4, 8(r1)
/* 80157368 001542A8 38 A3 14 88 */ addi r5, r3, __vt__13SweepCallback@l
/* 8015736C 001542AC 7F E3 FB 78 */ mr r3, r31
/* 80157370 001542B0 38 81 00 0C */ addi r4, r1, 0xc
/* 80157374 001542B4 90 A1 00 08 */ stw r5, 8(r1)
/* 80157378 001542B8 90 01 00 0C */ stw r0, 0xc(r1)
/* 8015737C 001542BC 48 0E 54 99 */ bl resolve__Q210SweepPrune5WorldFRQ310SweepPrune5World10ResolveArg
/* 80157380 001542C0 48 00 01 A4 */ b .L_80157524
.L_80157384:
/* 80157384 001542C4 3B 40 00 00 */ li r26, 0
/* 80157388 001542C8 3B 60 00 00 */ li r27, 0
/* 8015738C 001542CC 48 00 00 80 */ b .L_8015740C
.L_80157390:
/* 80157390 001542D0 80 1F 00 30 */ lwz r0, 0x30(r31)
/* 80157394 001542D4 3B C0 00 00 */ li r30, 0
/* 80157398 001542D8 7F DC F3 78 */ mr r28, r30
/* 8015739C 001542DC 7F A0 DA 14 */ add r29, r0, r27
/* 801573A0 001542E0 48 00 00 50 */ b .L_801573F0
.L_801573A4:
/* 801573A4 001542E4 80 1D 00 08 */ lwz r0, 8(r29)
/* 801573A8 001542E8 7C 60 E2 14 */ add r3, r0, r28
/* 801573AC 001542EC 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 801573B0 001542F0 28 00 00 00 */ cmplwi r0, 0
/* 801573B4 001542F4 41 82 00 34 */ beq .L_801573E8
/* 801573B8 001542F8 80 8D 96 08 */ lwz r4, mInstance__12CellMgrParms@sda21(r13)
/* 801573BC 001542FC 88 04 00 3C */ lbz r0, 0x3c(r4)
/* 801573C0 00154300 28 00 00 00 */ cmplwi r0, 0
/* 801573C4 00154304 41 82 00 0C */ beq .L_801573D0
/* 801573C8 00154308 48 00 1C 99 */ bl resolveCollision_3__Q24Game4CellFv
/* 801573CC 0015430C 48 00 00 1C */ b .L_801573E8
.L_801573D0:
/* 801573D0 00154310 88 04 00 58 */ lbz r0, 0x58(r4)
/* 801573D4 00154314 28 00 00 00 */ cmplwi r0, 0
/* 801573D8 00154318 41 82 00 0C */ beq .L_801573E4
/* 801573DC 0015431C 48 00 1B 85 */ bl resolveCollision_1__Q24Game4CellFv
/* 801573E0 00154320 48 00 00 08 */ b .L_801573E8
.L_801573E4:
/* 801573E4 00154324 48 00 1A 85 */ bl resolveCollision_2__Q24Game4CellFv
.L_801573E8:
/* 801573E8 00154328 3B 9C 00 2C */ addi r28, r28, 0x2c
/* 801573EC 0015432C 3B DE 00 01 */ addi r30, r30, 1
.L_801573F0:
/* 801573F0 00154330 A0 7D 00 00 */ lhz r3, 0(r29)
/* 801573F4 00154334 A0 1D 00 02 */ lhz r0, 2(r29)
/* 801573F8 00154338 7C 03 01 D6 */ mullw r0, r3, r0
/* 801573FC 0015433C 7C 1E 00 00 */ cmpw r30, r0
/* 80157400 00154340 41 80 FF A4 */ blt .L_801573A4
/* 80157404 00154344 3B 7B 00 38 */ addi r27, r27, 0x38
/* 80157408 00154348 3B 5A 00 01 */ addi r26, r26, 1
.L_8015740C:
/* 8015740C 0015434C 80 1F 00 2C */ lwz r0, 0x2c(r31)
/* 80157410 00154350 7C 1A 00 00 */ cmpw r26, r0
/* 80157414 00154354 41 80 FF 7C */ blt .L_80157390
/* 80157418 00154358 48 00 01 0C */ b .L_80157524
.L_8015741C:
/* 8015741C 0015435C 80 7F 00 2C */ lwz r3, 0x2c(r31)
/* 80157420 00154360 3B 80 00 00 */ li r28, 0
/* 80157424 00154364 80 9F 00 30 */ lwz r4, 0x30(r31)
/* 80157428 00154368 3B 60 00 00 */ li r27, 0
/* 8015742C 0015436C 38 03 FF FF */ addi r0, r3, -1
/* 80157430 00154370 1C 00 00 38 */ mulli r0, r0, 0x38
/* 80157434 00154374 7F 44 02 14 */ add r26, r4, r0
/* 80157438 00154378 48 00 00 24 */ b .L_8015745C
.L_8015743C:
/* 8015743C 0015437C 80 1A 00 08 */ lwz r0, 8(r26)
/* 80157440 00154380 7C 60 DA 14 */ add r3, r0, r27
/* 80157444 00154384 A0 03 00 18 */ lhz r0, 0x18(r3)
/* 80157448 00154388 28 00 00 00 */ cmplwi r0, 0
/* 8015744C 0015438C 41 82 00 08 */ beq .L_80157454
/* 80157450 00154390 48 00 00 E9 */ bl rec_resolveColl__Q24Game4CellFv
.L_80157454:
/* 80157454 00154394 3B 7B 00 2C */ addi r27, r27, 0x2c
/* 80157458 00154398 3B 9C 00 01 */ addi r28, r28, 1
.L_8015745C:
/* 8015745C 0015439C A0 7A 00 00 */ lhz r3, 0(r26)
/* 80157460 001543A0 A0 1A 00 02 */ lhz r0, 2(r26)
/* 80157464 001543A4 7C 03 01 D6 */ mullw r0, r3, r0
/* 80157468 001543A8 7C 1C 00 00 */ cmpw r28, r0
/* 8015746C 001543AC 41 80 FF D0 */ blt .L_8015743C
/* 80157470 001543B0 48 00 00 B4 */ b .L_80157524
.L_80157474:
/* 80157474 001543B4 88 0D 92 D5 */ lbz r0, sSpeedUpResolveColl__Q24Game11CellPyramid@sda21(r13)
/* 80157478 001543B8 28 00 00 00 */ cmplwi r0, 0
/* 8015747C 001543BC 41 82 00 58 */ beq .L_801574D4
/* 80157480 001543C0 3B 40 00 00 */ li r26, 0
/* 80157484 001543C4 3B 60 00 00 */ li r27, 0
/* 80157488 001543C8 48 00 00 3C */ b .L_801574C4
.L_8015748C:
/* 8015748C 001543CC 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 80157490 001543D0 38 1B 00 2C */ addi r0, r27, 0x2c
/* 80157494 001543D4 7F 83 00 2E */ lwzx r28, r3, r0
/* 80157498 001543D8 48 00 00 1C */ b .L_801574B4
.L_8015749C:
/* 8015749C 001543DC A0 1C 00 18 */ lhz r0, 0x18(r28)
/* 801574A0 001543E0 28 00 00 00 */ cmplwi r0, 0
/* 801574A4 001543E4 41 82 00 0C */ beq .L_801574B0
/* 801574A8 001543E8 7F 83 E3 78 */ mr r3, r28
/* 801574AC 001543EC 48 00 1B B5 */ bl resolveCollision_3__Q24Game4CellFv
.L_801574B0:
/* 801574B0 001543F0 83 9C 00 20 */ lwz r28, 0x20(r28)
.L_801574B4:
/* 801574B4 001543F4 28 1C 00 00 */ cmplwi r28, 0
/* 801574B8 001543F8 40 82 FF E4 */ bne .L_8015749C
/* 801574BC 001543FC 3B 7B 00 38 */ addi r27, r27, 0x38
/* 801574C0 00154400 3B 5A 00 01 */ addi r26, r26, 1
.L_801574C4:
/* 801574C4 00154404 80 1F 00 2C */ lwz r0, 0x2c(r31)
/* 801574C8 00154408 7C 1A 00 00 */ cmpw r26, r0
/* 801574CC 0015440C 41 80 FF C0 */ blt .L_8015748C
/* 801574D0 00154410 48 00 00 54 */ b .L_80157524
.L_801574D4:
/* 801574D4 00154414 3B 40 00 00 */ li r26, 0
/* 801574D8 00154418 3B 60 00 00 */ li r27, 0
/* 801574DC 0015441C 48 00 00 3C */ b .L_80157518
.L_801574E0:
/* 801574E0 00154420 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 801574E4 00154424 38 1B 00 2C */ addi r0, r27, 0x2c
/* 801574E8 00154428 7F 83 00 2E */ lwzx r28, r3, r0
/* 801574EC 0015442C 48 00 00 1C */ b .L_80157508
.L_801574F0:
/* 801574F0 00154430 A0 1C 00 18 */ lhz r0, 0x18(r28)
/* 801574F4 00154434 28 00 00 00 */ cmplwi r0, 0
/* 801574F8 00154438 41 82 00 0C */ beq .L_80157504
/* 801574FC 0015443C 7F 83 E3 78 */ mr r3, r28
/* 80157500 00154440 48 00 1A 61 */ bl resolveCollision_1__Q24Game4CellFv
.L_80157504:
/* 80157504 00154444 83 9C 00 20 */ lwz r28, 0x20(r28)
.L_80157508:
/* 80157508 00154448 28 1C 00 00 */ cmplwi r28, 0
/* 8015750C 0015444C 40 82 FF E4 */ bne .L_801574F0
/* 80157510 00154450 3B 7B 00 38 */ addi r27, r27, 0x38
/* 80157514 00154454 3B 5A 00 01 */ addi r26, r26, 1
.L_80157518:
/* 80157518 00154458 80 1F 00 2C */ lwz r0, 0x2c(r31)
/* 8015751C 0015445C 7C 1A 00 00 */ cmpw r26, r0
/* 80157520 00154460 41 80 FF C0 */ blt .L_801574E0
.L_80157524:
/* 80157524 00154464 BB 41 00 18 */ lmw r26, 0x18(r1)
/* 80157528 00154468 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8015752C 0015446C 7C 08 03 A6 */ mtlr r0
/* 80157530 00154470 38 21 00 30 */ addi r1, r1, 0x30
/* 80157534 00154474 4E 80 00 20 */ blr
.global rec_resolveColl__Q24Game4CellFv
rec_resolveColl__Q24Game4CellFv:
/* 80157538 00154478 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8015753C 0015447C 7C 08 02 A6 */ mflr r0
/* 80157540 00154480 90 01 00 54 */ stw r0, 0x54(r1)
/* 80157544 00154484 BD C1 00 08 */ stmw r14, 8(r1)
/* 80157548 00154488 7C 6E 1B 78 */ mr r14, r3
/* 8015754C 0015448C 39 E0 00 00 */ li r15, 0
/* 80157550 00154490 7D D5 73 78 */ mr r21, r14
.L_80157554:
/* 80157554 00154494 82 95 00 00 */ lwz r20, 0(r21)
/* 80157558 00154498 28 14 00 00 */ cmplwi r20, 0
/* 8015755C 0015449C 41 82 02 10 */ beq .L_8015776C
/* 80157560 001544A0 A0 14 00 18 */ lhz r0, 0x18(r20)
/* 80157564 001544A4 28 00 00 01 */ cmplwi r0, 1
/* 80157568 001544A8 40 81 02 04 */ ble .L_8015776C
/* 8015756C 001544AC 3B E0 00 00 */ li r31, 0
/* 80157570 001544B0 7E 96 A3 78 */ mr r22, r20
.L_80157574:
/* 80157574 001544B4 82 76 00 00 */ lwz r19, 0(r22)
/* 80157578 001544B8 28 13 00 00 */ cmplwi r19, 0
/* 8015757C 001544BC 41 82 01 A4 */ beq .L_80157720
/* 80157580 001544C0 A0 13 00 18 */ lhz r0, 0x18(r19)
/* 80157584 001544C4 28 00 00 01 */ cmplwi r0, 1
/* 80157588 001544C8 40 81 01 98 */ ble .L_80157720
/* 8015758C 001544CC 3B C0 00 00 */ li r30, 0
/* 80157590 001544D0 7E 77 9B 78 */ mr r23, r19
.L_80157594:
/* 80157594 001544D4 82 57 00 00 */ lwz r18, 0(r23)
/* 80157598 001544D8 28 12 00 00 */ cmplwi r18, 0
/* 8015759C 001544DC 41 82 01 38 */ beq .L_801576D4
/* 801575A0 001544E0 A0 12 00 18 */ lhz r0, 0x18(r18)
/* 801575A4 001544E4 28 00 00 01 */ cmplwi r0, 1
/* 801575A8 001544E8 40 81 01 2C */ ble .L_801576D4
/* 801575AC 001544EC 3B A0 00 00 */ li r29, 0
/* 801575B0 001544F0 7E 58 93 78 */ mr r24, r18
.L_801575B4:
/* 801575B4 001544F4 82 38 00 00 */ lwz r17, 0(r24)
/* 801575B8 001544F8 28 11 00 00 */ cmplwi r17, 0
/* 801575BC 001544FC 41 82 00 CC */ beq .L_80157688
/* 801575C0 00154500 A0 11 00 18 */ lhz r0, 0x18(r17)
/* 801575C4 00154504 28 00 00 01 */ cmplwi r0, 1
/* 801575C8 00154508 40 81 00 C0 */ ble .L_80157688
/* 801575CC 0015450C 3B 80 00 00 */ li r28, 0
/* 801575D0 00154510 7E 39 8B 78 */ mr r25, r17
.L_801575D4:
/* 801575D4 00154514 82 19 00 00 */ lwz r16, 0(r25)
/* 801575D8 00154518 28 10 00 00 */ cmplwi r16, 0
/* 801575DC 0015451C 41 82 00 4C */ beq .L_80157628
/* 801575E0 00154520 A0 10 00 18 */ lhz r0, 0x18(r16)
/* 801575E4 00154524 28 00 00 01 */ cmplwi r0, 1
/* 801575E8 00154528 40 81 00 40 */ ble .L_80157628
/* 801575EC 0015452C 3B 60 00 00 */ li r27, 0
/* 801575F0 00154530 7E 1A 83 78 */ mr r26, r16
.L_801575F4:
/* 801575F4 00154534 80 7A 00 00 */ lwz r3, 0(r26)
/* 801575F8 00154538 28 03 00 00 */ cmplwi r3, 0
/* 801575FC 0015453C 41 82 00 14 */ beq .L_80157610
/* 80157600 00154540 A0 03 00 18 */ lhz r0, 0x18(r3)
/* 80157604 00154544 28 00 00 01 */ cmplwi r0, 1
/* 80157608 00154548 40 81 00 08 */ ble .L_80157610
/* 8015760C 0015454C 4B FF FF 2D */ bl rec_resolveColl__Q24Game4CellFv
.L_80157610:
/* 80157610 00154550 3B 7B 00 01 */ addi r27, r27, 1
/* 80157614 00154554 3B 5A 00 04 */ addi r26, r26, 4
/* 80157618 00154558 2C 1B 00 04 */ cmpwi r27, 4
/* 8015761C 0015455C 41 80 FF D8 */ blt .L_801575F4
/* 80157620 00154560 7E 03 83 78 */ mr r3, r16
/* 80157624 00154564 4B FF F6 D5 */ bl resolveCollision__Q24Game4CellFv
.L_80157628:
/* 80157628 00154568 3B 9C 00 01 */ addi r28, r28, 1
/* 8015762C 0015456C 3B 39 00 04 */ addi r25, r25, 4
/* 80157630 00154570 2C 1C 00 04 */ cmpwi r28, 4
/* 80157634 00154574 41 80 FF A0 */ blt .L_801575D4
/* 80157638 00154578 48 00 01 9D */ bl getInstance__12CellMgrParmsFv
/* 8015763C 0015457C 38 63 00 24 */ addi r3, r3, 0x24
/* 80157640 00154580 48 00 01 8D */ bl "__cl__7Parm<b>Fv"
/* 80157644 00154584 88 03 00 00 */ lbz r0, 0(r3)
/* 80157648 00154588 28 00 00 00 */ cmplwi r0, 0
/* 8015764C 0015458C 41 82 00 10 */ beq .L_8015765C
/* 80157650 00154590 7E 23 8B 78 */ mr r3, r17
/* 80157654 00154594 48 00 1A 0D */ bl resolveCollision_3__Q24Game4CellFv
/* 80157658 00154598 48 00 00 30 */ b .L_80157688
.L_8015765C:
/* 8015765C 0015459C 48 00 01 79 */ bl getInstance__12CellMgrParmsFv
/* 80157660 001545A0 38 63 00 40 */ addi r3, r3, 0x40
/* 80157664 001545A4 48 00 01 69 */ bl "__cl__7Parm<b>Fv"
/* 80157668 001545A8 88 03 00 00 */ lbz r0, 0(r3)
/* 8015766C 001545AC 28 00 00 00 */ cmplwi r0, 0
/* 80157670 001545B0 41 82 00 10 */ beq .L_80157680
/* 80157674 001545B4 7E 23 8B 78 */ mr r3, r17
/* 80157678 001545B8 48 00 18 E9 */ bl resolveCollision_1__Q24Game4CellFv
/* 8015767C 001545BC 48 00 00 0C */ b .L_80157688
.L_80157680:
/* 80157680 001545C0 7E 23 8B 78 */ mr r3, r17
/* 80157684 001545C4 48 00 17 E5 */ bl resolveCollision_2__Q24Game4CellFv
.L_80157688:
/* 80157688 001545C8 3B BD 00 01 */ addi r29, r29, 1
/* 8015768C 001545CC 3B 18 00 04 */ addi r24, r24, 4
/* 80157690 001545D0 2C 1D 00 04 */ cmpwi r29, 4
/* 80157694 001545D4 41 80 FF 20 */ blt .L_801575B4
/* 80157698 001545D8 80 6D 96 08 */ lwz r3, mInstance__12CellMgrParms@sda21(r13)
/* 8015769C 001545DC 88 03 00 3C */ lbz r0, 0x3c(r3)
/* 801576A0 001545E0 28 00 00 00 */ cmplwi r0, 0
/* 801576A4 001545E4 41 82 00 10 */ beq .L_801576B4
/* 801576A8 001545E8 7E 43 93 78 */ mr r3, r18
/* 801576AC 001545EC 48 00 19 B5 */ bl resolveCollision_3__Q24Game4CellFv
/* 801576B0 001545F0 48 00 00 24 */ b .L_801576D4
.L_801576B4:
/* 801576B4 001545F4 88 03 00 58 */ lbz r0, 0x58(r3)
/* 801576B8 001545F8 28 00 00 00 */ cmplwi r0, 0
/* 801576BC 001545FC 41 82 00 10 */ beq .L_801576CC
/* 801576C0 00154600 7E 43 93 78 */ mr r3, r18
/* 801576C4 00154604 48 00 18 9D */ bl resolveCollision_1__Q24Game4CellFv
/* 801576C8 00154608 48 00 00 0C */ b .L_801576D4
.L_801576CC:
/* 801576CC 0015460C 7E 43 93 78 */ mr r3, r18
/* 801576D0 00154610 48 00 17 99 */ bl resolveCollision_2__Q24Game4CellFv
.L_801576D4:
/* 801576D4 00154614 3B DE 00 01 */ addi r30, r30, 1
/* 801576D8 00154618 3A F7 00 04 */ addi r23, r23, 4
/* 801576DC 0015461C 2C 1E 00 04 */ cmpwi r30, 4
/* 801576E0 00154620 41 80 FE B4 */ blt .L_80157594
/* 801576E4 00154624 80 6D 96 08 */ lwz r3, mInstance__12CellMgrParms@sda21(r13)
/* 801576E8 00154628 88 03 00 3C */ lbz r0, 0x3c(r3)
/* 801576EC 0015462C 28 00 00 00 */ cmplwi r0, 0
/* 801576F0 00154630 41 82 00 10 */ beq .L_80157700
/* 801576F4 00154634 7E 63 9B 78 */ mr r3, r19
/* 801576F8 00154638 48 00 19 69 */ bl resolveCollision_3__Q24Game4CellFv
/* 801576FC 0015463C 48 00 00 24 */ b .L_80157720
.L_80157700:
/* 80157700 00154640 88 03 00 58 */ lbz r0, 0x58(r3)
/* 80157704 00154644 28 00 00 00 */ cmplwi r0, 0
/* 80157708 00154648 41 82 00 10 */ beq .L_80157718
/* 8015770C 0015464C 7E 63 9B 78 */ mr r3, r19
/* 80157710 00154650 48 00 18 51 */ bl resolveCollision_1__Q24Game4CellFv
/* 80157714 00154654 48 00 00 0C */ b .L_80157720
.L_80157718:
/* 80157718 00154658 7E 63 9B 78 */ mr r3, r19
/* 8015771C 0015465C 48 00 17 4D */ bl resolveCollision_2__Q24Game4CellFv
.L_80157720:
/* 80157720 00154660 3B FF 00 01 */ addi r31, r31, 1
/* 80157724 00154664 3A D6 00 04 */ addi r22, r22, 4
/* 80157728 00154668 2C 1F 00 04 */ cmpwi r31, 4
/* 8015772C 0015466C 41 80 FE 48 */ blt .L_80157574
/* 80157730 00154670 80 6D 96 08 */ lwz r3, mInstance__12CellMgrParms@sda21(r13)
/* 80157734 00154674 88 03 00 3C */ lbz r0, 0x3c(r3)
/* 80157738 00154678 28 00 00 00 */ cmplwi r0, 0
/* 8015773C 0015467C 41 82 00 10 */ beq .L_8015774C
/* 80157740 00154680 7E 83 A3 78 */ mr r3, r20
/* 80157744 00154684 48 00 19 1D */ bl resolveCollision_3__Q24Game4CellFv
/* 80157748 00154688 48 00 00 24 */ b .L_8015776C
.L_8015774C:
/* 8015774C 0015468C 88 03 00 58 */ lbz r0, 0x58(r3)
/* 80157750 00154690 28 00 00 00 */ cmplwi r0, 0
/* 80157754 00154694 41 82 00 10 */ beq .L_80157764
/* 80157758 00154698 7E 83 A3 78 */ mr r3, r20
/* 8015775C 0015469C 48 00 18 05 */ bl resolveCollision_1__Q24Game4CellFv
/* 80157760 001546A0 48 00 00 0C */ b .L_8015776C
.L_80157764:
/* 80157764 001546A4 7E 83 A3 78 */ mr r3, r20
/* 80157768 001546A8 48 00 17 01 */ bl resolveCollision_2__Q24Game4CellFv
.L_8015776C:
/* 8015776C 001546AC 39 EF 00 01 */ addi r15, r15, 1
/* 80157770 001546B0 3A B5 00 04 */ addi r21, r21, 4
/* 80157774 001546B4 2C 0F 00 04 */ cmpwi r15, 4
/* 80157778 001546B8 41 80 FD DC */ blt .L_80157554
/* 8015777C 001546BC 80 6D 96 08 */ lwz r3, mInstance__12CellMgrParms@sda21(r13)
/* 80157780 001546C0 88 03 00 3C */ lbz r0, 0x3c(r3)
/* 80157784 001546C4 28 00 00 00 */ cmplwi r0, 0
/* 80157788 001546C8 41 82 00 10 */ beq .L_80157798
/* 8015778C 001546CC 7D C3 73 78 */ mr r3, r14
/* 80157790 001546D0 48 00 18 D1 */ bl resolveCollision_3__Q24Game4CellFv
/* 80157794 001546D4 48 00 00 24 */ b .L_801577B8
.L_80157798:
/* 80157798 001546D8 88 03 00 58 */ lbz r0, 0x58(r3)
/* 8015779C 001546DC 28 00 00 00 */ cmplwi r0, 0
/* 801577A0 001546E0 41 82 00 10 */ beq .L_801577B0
/* 801577A4 001546E4 7D C3 73 78 */ mr r3, r14
/* 801577A8 001546E8 48 00 17 B9 */ bl resolveCollision_1__Q24Game4CellFv
/* 801577AC 001546EC 48 00 00 0C */ b .L_801577B8
.L_801577B0:
/* 801577B0 001546F0 7D C3 73 78 */ mr r3, r14
/* 801577B4 001546F4 48 00 16 B5 */ bl resolveCollision_2__Q24Game4CellFv
.L_801577B8:
/* 801577B8 001546F8 B9 C1 00 08 */ lmw r14, 8(r1)
/* 801577BC 001546FC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 801577C0 00154700 7C 08 03 A6 */ mtlr r0
/* 801577C4 00154704 38 21 00 50 */ addi r1, r1, 0x50
/* 801577C8 00154708 4E 80 00 20 */ blr
.global "__cl__7Parm<b>Fv"
"__cl__7Parm<b>Fv":
/* 801577CC 0015470C 38 63 00 18 */ addi r3, r3, 0x18
/* 801577D0 00154710 4E 80 00 20 */ blr
.global getInstance__12CellMgrParmsFv
getInstance__12CellMgrParmsFv:
/* 801577D4 00154714 80 6D 96 08 */ lwz r3, mInstance__12CellMgrParms@sda21(r13)
/* 801577D8 00154718 4E 80 00 20 */ blr
.global clearAllCollBuffer__Q24Game11CellPyramidFv
clearAllCollBuffer__Q24Game11CellPyramidFv:
/* 801577DC 0015471C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801577E0 00154720 39 80 00 00 */ li r12, 0
/* 801577E4 00154724 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801577E8 00154728 93 C1 00 08 */ stw r30, 8(r1)
/* 801577EC 0015472C 3B C0 00 00 */ li r30, 0
/* 801577F0 00154730 48 00 00 AC */ b .L_8015789C
.L_801577F4:
/* 801577F4 00154734 80 03 00 30 */ lwz r0, 0x30(r3)
/* 801577F8 00154738 38 C0 00 00 */ li r6, 0
/* 801577FC 0015473C 7C CB 33 78 */ mr r11, r6
/* 80157800 00154740 7C E0 62 14 */ add r7, r0, r12
/* 80157804 00154744 48 00 00 7C */ b .L_80157880
.L_80157808:
/* 80157808 00154748 80 07 00 08 */ lwz r0, 8(r7)
/* 8015780C 0015474C 7C 80 5A 14 */ add r4, r0, r11
/* 80157810 00154750 81 04 00 1C */ lwz r8, 0x1c(r4)
/* 80157814 00154754 28 08 00 00 */ cmplwi r8, 0
/* 80157818 00154758 41 82 00 60 */ beq .L_80157878
/* 8015781C 0015475C C0 02 A2 CC */ lfs f0, lbl_8051862C@sda21(r2)
/* 80157820 00154760 38 A0 00 00 */ li r5, 0
/* 80157824 00154764 48 00 00 4C */ b .L_80157870
.L_80157828:
/* 80157828 00154768 83 E8 00 0C */ lwz r31, 0xc(r8)
/* 8015782C 0015476C 28 1F 00 00 */ cmplwi r31, 0
/* 80157830 00154770 41 82 00 3C */ beq .L_8015786C
/* 80157834 00154774 39 20 00 00 */ li r9, 0
/* 80157838 00154778 90 BF 00 AC */ stw r5, 0xac(r31)
/* 8015783C 0015477C 7D 2A 4B 78 */ mr r10, r9
/* 80157840 00154780 48 00 00 20 */ b .L_80157860
.L_80157844:
/* 80157844 00154784 80 9F 00 B0 */ lwz r4, 0xb0(r31)
/* 80157848 00154788 38 0A 00 04 */ addi r0, r10, 4
/* 8015784C 0015478C 39 29 00 01 */ addi r9, r9, 1
/* 80157850 00154790 7C A4 51 2E */ stwx r5, r4, r10
/* 80157854 00154794 39 4A 00 08 */ addi r10, r10, 8
/* 80157858 00154798 80 9F 00 B0 */ lwz r4, 0xb0(r31)
/* 8015785C 0015479C 7C 04 05 2E */ stfsx f0, r4, r0
.L_80157860:
/* 80157860 001547A0 80 1F 00 A8 */ lwz r0, 0xa8(r31)
/* 80157864 001547A4 7C 09 00 00 */ cmpw r9, r0
/* 80157868 001547A8 41 80 FF DC */ blt .L_80157844
.L_8015786C:
/* 8015786C 001547AC 81 08 00 00 */ lwz r8, 0(r8)
.L_80157870:
/* 80157870 001547B0 28 08 00 00 */ cmplwi r8, 0
/* 80157874 001547B4 40 82 FF B4 */ bne .L_80157828
.L_80157878:
/* 80157878 001547B8 39 6B 00 2C */ addi r11, r11, 0x2c
/* 8015787C 001547BC 38 C6 00 01 */ addi r6, r6, 1
.L_80157880:
/* 80157880 001547C0 A0 87 00 00 */ lhz r4, 0(r7)
/* 80157884 001547C4 A0 07 00 02 */ lhz r0, 2(r7)
/* 80157888 001547C8 7C 04 01 D6 */ mullw r0, r4, r0
/* 8015788C 001547CC 7C 06 00 00 */ cmpw r6, r0
/* 80157890 001547D0 41 80 FF 78 */ blt .L_80157808
/* 80157894 001547D4 39 8C 00 38 */ addi r12, r12, 0x38
/* 80157898 001547D8 3B DE 00 01 */ addi r30, r30, 1
.L_8015789C:
/* 8015789C 001547DC 80 03 00 2C */ lwz r0, 0x2c(r3)
/* 801578A0 001547E0 7C 1E 00 00 */ cmpw r30, r0
/* 801578A4 001547E4 41 80 FF 50 */ blt .L_801577F4
/* 801578A8 001547E8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801578AC 001547EC 83 C1 00 08 */ lwz r30, 8(r1)
/* 801578B0 001547F0 38 21 00 10 */ addi r1, r1, 0x10
/* 801578B4 001547F4 4E 80 00 20 */ blr
.global exit__Q24Game4CellFPQ24Game7CellLegb
exit__Q24Game4CellFPQ24Game7CellLegb:
/* 801578B8 001547F8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801578BC 001547FC 7C 08 02 A6 */ mflr r0
/* 801578C0 00154800 90 01 00 14 */ stw r0, 0x14(r1)
/* 801578C4 00154804 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801578C8 00154808 7C 7F 1B 78 */ mr r31, r3
/* 801578CC 0015480C 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 801578D0 00154810 7C 00 20 40 */ cmplw r0, r4
/* 801578D4 00154814 40 82 00 20 */ bne .L_801578F4
/* 801578D8 00154818 80 04 00 00 */ lwz r0, 0(r4)
/* 801578DC 0015481C 90 1F 00 1C */ stw r0, 0x1c(r31)
/* 801578E0 00154820 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 801578E4 00154824 28 03 00 00 */ cmplwi r3, 0
/* 801578E8 00154828 41 82 00 0C */ beq .L_801578F4
/* 801578EC 0015482C 38 00 00 00 */ li r0, 0
/* 801578F0 00154830 90 03 00 04 */ stw r0, 4(r3)
.L_801578F4:
/* 801578F4 00154834 54 A0 06 3F */ clrlwi. r0, r5, 0x18
/* 801578F8 00154838 41 82 00 38 */ beq .L_80157930
/* 801578FC 0015483C A0 7F 00 14 */ lhz r3, 0x14(r31)
/* 80157900 00154840 28 03 00 00 */ cmplwi r3, 0
/* 80157904 00154844 41 82 00 2C */ beq .L_80157930
/* 80157908 00154848 38 03 FF FF */ addi r0, r3, -1
/* 8015790C 0015484C B0 1F 00 14 */ sth r0, 0x14(r31)
/* 80157910 00154850 80 BF 00 10 */ lwz r5, 0x10(r31)
/* 80157914 00154854 48 00 00 14 */ b .L_80157928
.L_80157918:
/* 80157918 00154858 A0 65 00 16 */ lhz r3, 0x16(r5)
/* 8015791C 0015485C 38 03 FF FF */ addi r0, r3, -1
/* 80157920 00154860 B0 05 00 16 */ sth r0, 0x16(r5)
/* 80157924 00154864 80 A5 00 10 */ lwz r5, 0x10(r5)
.L_80157928:
/* 80157928 00154868 28 05 00 00 */ cmplwi r5, 0
/* 8015792C 0015486C 40 82 FF EC */ bne .L_80157918
.L_80157930:
/* 80157930 00154870 A0 7F 00 18 */ lhz r3, 0x18(r31)
/* 80157934 00154874 38 03 FF FF */ addi r0, r3, -1
/* 80157938 00154878 B0 1F 00 18 */ sth r0, 0x18(r31)
/* 8015793C 0015487C 80 BF 00 10 */ lwz r5, 0x10(r31)
/* 80157940 00154880 48 00 00 14 */ b .L_80157954
.L_80157944:
/* 80157944 00154884 A0 65 00 18 */ lhz r3, 0x18(r5)
/* 80157948 00154888 38 03 FF FF */ addi r0, r3, -1
/* 8015794C 0015488C B0 05 00 18 */ sth r0, 0x18(r5)
/* 80157950 00154890 80 A5 00 10 */ lwz r5, 0x10(r5)
.L_80157954:
/* 80157954 00154894 28 05 00 00 */ cmplwi r5, 0
/* 80157958 00154898 40 82 FF EC */ bne .L_80157944
/* 8015795C 0015489C 80 64 00 04 */ lwz r3, 4(r4)
/* 80157960 001548A0 28 03 00 00 */ cmplwi r3, 0
/* 80157964 001548A4 41 82 00 0C */ beq .L_80157970
/* 80157968 001548A8 80 04 00 00 */ lwz r0, 0(r4)
/* 8015796C 001548AC 90 03 00 00 */ stw r0, 0(r3)
.L_80157970:
/* 80157970 001548B0 80 64 00 00 */ lwz r3, 0(r4)
/* 80157974 001548B4 28 03 00 00 */ cmplwi r3, 0
/* 80157978 001548B8 41 82 00 0C */ beq .L_80157984
/* 8015797C 001548BC 80 04 00 04 */ lwz r0, 4(r4)
/* 80157980 001548C0 90 03 00 04 */ stw r0, 4(r3)
.L_80157984:
/* 80157984 001548C4 38 00 00 00 */ li r0, 0
/* 80157988 001548C8 90 04 00 04 */ stw r0, 4(r4)
/* 8015798C 001548CC 90 04 00 00 */ stw r0, 0(r4)
/* 80157990 001548D0 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 80157994 001548D4 28 00 00 00 */ cmplwi r0, 0
/* 80157998 001548D8 40 82 00 64 */ bne .L_801579FC
/* 8015799C 001548DC 80 0D 92 D8 */ lwz r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 801579A0 001548E0 28 00 00 00 */ cmplwi r0, 0
/* 801579A4 001548E4 41 82 00 58 */ beq .L_801579FC
/* 801579A8 001548E8 40 82 00 20 */ bne .L_801579C8
/* 801579AC 001548EC 3C 60 80 48 */ lis r3, lbl_8047CFEC@ha
/* 801579B0 001548F0 3C A0 80 48 */ lis r5, lbl_8047CFFC@ha
/* 801579B4 001548F4 38 63 CF EC */ addi r3, r3, lbl_8047CFEC@l
/* 801579B8 001548F8 38 80 03 12 */ li r4, 0x312
/* 801579BC 001548FC 38 A5 CF FC */ addi r5, r5, lbl_8047CFFC@l
/* 801579C0 00154900 4C C6 31 82 */ crclr 6
/* 801579C4 00154904 4B ED 2C 7D */ bl panic_f__12JUTExceptionFPCciPCce
.L_801579C8:
/* 801579C8 00154908 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 801579CC 0015490C 28 03 00 00 */ cmplwi r3, 0
/* 801579D0 00154910 41 82 00 20 */ beq .L_801579F0
/* 801579D4 00154914 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 801579D8 00154918 90 03 00 20 */ stw r0, 0x20(r3)
/* 801579DC 0015491C 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 801579E0 00154920 28 03 00 00 */ cmplwi r3, 0
/* 801579E4 00154924 41 82 00 0C */ beq .L_801579F0
/* 801579E8 00154928 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 801579EC 0015492C 90 03 00 24 */ stw r0, 0x24(r3)
.L_801579F0:
/* 801579F0 00154930 38 00 00 00 */ li r0, 0
/* 801579F4 00154934 90 1F 00 24 */ stw r0, 0x24(r31)
/* 801579F8 00154938 90 1F 00 20 */ stw r0, 0x20(r31)
.L_801579FC:
/* 801579FC 0015493C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80157A00 00154940 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80157A04 00154944 7C 08 03 A6 */ mtlr r0
/* 80157A08 00154948 38 21 00 10 */ addi r1, r1, 0x10
/* 80157A0C 0015494C 4E 80 00 20 */ blr
.global entry__Q24Game4CellFPQ24Game7CellLegb
entry__Q24Game4CellFPQ24Game7CellLegb:
/* 80157A10 00154950 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80157A14 00154954 7C 08 02 A6 */ mflr r0
/* 80157A18 00154958 90 01 00 24 */ stw r0, 0x24(r1)
/* 80157A1C 0015495C BF 61 00 0C */ stmw r27, 0xc(r1)
/* 80157A20 00154960 7C 9C 23 79 */ or. r28, r4, r4
/* 80157A24 00154964 3C 80 80 48 */ lis r4, lbl_8047CFE0@ha
/* 80157A28 00154968 7C 7B 1B 78 */ mr r27, r3
/* 80157A2C 0015496C 7C BD 2B 78 */ mr r29, r5
/* 80157A30 00154970 3B E4 CF E0 */ addi r31, r4, lbl_8047CFE0@l
/* 80157A34 00154974 40 82 00 18 */ bne .L_80157A4C
/* 80157A38 00154978 38 7F 00 0C */ addi r3, r31, 0xc
/* 80157A3C 0015497C 38 BF 00 1C */ addi r5, r31, 0x1c
/* 80157A40 00154980 38 80 03 44 */ li r4, 0x344
/* 80157A44 00154984 4C C6 31 82 */ crclr 6
/* 80157A48 00154988 4B ED 2B F9 */ bl panic_f__12JUTExceptionFPCciPCce
.L_80157A4C:
/* 80157A4C 0015498C 83 DC 00 08 */ lwz r30, 8(r28)
/* 80157A50 00154990 28 1E 00 00 */ cmplwi r30, 0
/* 80157A54 00154994 41 82 01 2C */ beq .L_80157B80
/* 80157A58 00154998 80 1E 00 1C */ lwz r0, 0x1c(r30)
/* 80157A5C 0015499C 7C 00 E0 40 */ cmplw r0, r28
/* 80157A60 001549A0 40 82 00 20 */ bne .L_80157A80
/* 80157A64 001549A4 80 1C 00 00 */ lwz r0, 0(r28)
/* 80157A68 001549A8 90 1E 00 1C */ stw r0, 0x1c(r30)
/* 80157A6C 001549AC 80 7E 00 1C */ lwz r3, 0x1c(r30)
/* 80157A70 001549B0 28 03 00 00 */ cmplwi r3, 0
/* 80157A74 001549B4 41 82 00 0C */ beq .L_80157A80
/* 80157A78 001549B8 38 00 00 00 */ li r0, 0
/* 80157A7C 001549BC 90 03 00 04 */ stw r0, 4(r3)
.L_80157A80:
/* 80157A80 001549C0 57 A0 06 3F */ clrlwi. r0, r29, 0x18
/* 80157A84 001549C4 41 82 00 38 */ beq .L_80157ABC
/* 80157A88 001549C8 A0 7E 00 14 */ lhz r3, 0x14(r30)
/* 80157A8C 001549CC 28 03 00 00 */ cmplwi r3, 0
/* 80157A90 001549D0 41 82 00 2C */ beq .L_80157ABC
/* 80157A94 001549D4 38 03 FF FF */ addi r0, r3, -1
/* 80157A98 001549D8 B0 1E 00 14 */ sth r0, 0x14(r30)
/* 80157A9C 001549DC 80 9E 00 10 */ lwz r4, 0x10(r30)
/* 80157AA0 001549E0 48 00 00 14 */ b .L_80157AB4
.L_80157AA4:
/* 80157AA4 001549E4 A0 64 00 16 */ lhz r3, 0x16(r4)
/* 80157AA8 001549E8 38 03 FF FF */ addi r0, r3, -1
/* 80157AAC 001549EC B0 04 00 16 */ sth r0, 0x16(r4)
/* 80157AB0 001549F0 80 84 00 10 */ lwz r4, 0x10(r4)
.L_80157AB4:
/* 80157AB4 001549F4 28 04 00 00 */ cmplwi r4, 0
/* 80157AB8 001549F8 40 82 FF EC */ bne .L_80157AA4
.L_80157ABC:
/* 80157ABC 001549FC A0 7E 00 18 */ lhz r3, 0x18(r30)
/* 80157AC0 00154A00 38 03 FF FF */ addi r0, r3, -1
/* 80157AC4 00154A04 B0 1E 00 18 */ sth r0, 0x18(r30)
/* 80157AC8 00154A08 80 9E 00 10 */ lwz r4, 0x10(r30)
/* 80157ACC 00154A0C 48 00 00 14 */ b .L_80157AE0
.L_80157AD0:
/* 80157AD0 00154A10 A0 64 00 18 */ lhz r3, 0x18(r4)
/* 80157AD4 00154A14 38 03 FF FF */ addi r0, r3, -1
/* 80157AD8 00154A18 B0 04 00 18 */ sth r0, 0x18(r4)
/* 80157ADC 00154A1C 80 84 00 10 */ lwz r4, 0x10(r4)
.L_80157AE0:
/* 80157AE0 00154A20 28 04 00 00 */ cmplwi r4, 0
/* 80157AE4 00154A24 40 82 FF EC */ bne .L_80157AD0
/* 80157AE8 00154A28 80 7C 00 04 */ lwz r3, 4(r28)
/* 80157AEC 00154A2C 28 03 00 00 */ cmplwi r3, 0
/* 80157AF0 00154A30 41 82 00 0C */ beq .L_80157AFC
/* 80157AF4 00154A34 80 1C 00 00 */ lwz r0, 0(r28)
/* 80157AF8 00154A38 90 03 00 00 */ stw r0, 0(r3)
.L_80157AFC:
/* 80157AFC 00154A3C 80 7C 00 00 */ lwz r3, 0(r28)
/* 80157B00 00154A40 28 03 00 00 */ cmplwi r3, 0
/* 80157B04 00154A44 41 82 00 0C */ beq .L_80157B10
/* 80157B08 00154A48 80 1C 00 04 */ lwz r0, 4(r28)
/* 80157B0C 00154A4C 90 03 00 04 */ stw r0, 4(r3)
.L_80157B10:
/* 80157B10 00154A50 38 00 00 00 */ li r0, 0
/* 80157B14 00154A54 90 1C 00 04 */ stw r0, 4(r28)
/* 80157B18 00154A58 90 1C 00 00 */ stw r0, 0(r28)
/* 80157B1C 00154A5C 80 1E 00 1C */ lwz r0, 0x1c(r30)
/* 80157B20 00154A60 28 00 00 00 */ cmplwi r0, 0
/* 80157B24 00154A64 40 82 00 5C */ bne .L_80157B80
/* 80157B28 00154A68 80 0D 92 D8 */ lwz r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80157B2C 00154A6C 28 00 00 00 */ cmplwi r0, 0
/* 80157B30 00154A70 41 82 00 50 */ beq .L_80157B80
/* 80157B34 00154A74 40 82 00 18 */ bne .L_80157B4C
/* 80157B38 00154A78 38 7F 00 0C */ addi r3, r31, 0xc
/* 80157B3C 00154A7C 38 BF 00 1C */ addi r5, r31, 0x1c
/* 80157B40 00154A80 38 80 03 12 */ li r4, 0x312
/* 80157B44 00154A84 4C C6 31 82 */ crclr 6
/* 80157B48 00154A88 4B ED 2A F9 */ bl panic_f__12JUTExceptionFPCciPCce
.L_80157B4C:
/* 80157B4C 00154A8C 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 80157B50 00154A90 28 03 00 00 */ cmplwi r3, 0
/* 80157B54 00154A94 41 82 00 20 */ beq .L_80157B74
/* 80157B58 00154A98 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 80157B5C 00154A9C 90 03 00 20 */ stw r0, 0x20(r3)
/* 80157B60 00154AA0 80 7E 00 20 */ lwz r3, 0x20(r30)
/* 80157B64 00154AA4 28 03 00 00 */ cmplwi r3, 0
/* 80157B68 00154AA8 41 82 00 0C */ beq .L_80157B74
/* 80157B6C 00154AAC 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 80157B70 00154AB0 90 03 00 24 */ stw r0, 0x24(r3)
.L_80157B74:
/* 80157B74 00154AB4 38 00 00 00 */ li r0, 0
/* 80157B78 00154AB8 90 1E 00 24 */ stw r0, 0x24(r30)
/* 80157B7C 00154ABC 90 1E 00 20 */ stw r0, 0x20(r30)
.L_80157B80:
/* 80157B80 00154AC0 80 9B 00 1C */ lwz r4, 0x1c(r27)
/* 80157B84 00154AC4 28 04 00 00 */ cmplwi r4, 0
/* 80157B88 00154AC8 41 82 00 2C */ beq .L_80157BB4
/* 80157B8C 00154ACC 7C 04 E0 40 */ cmplw r4, r28
/* 80157B90 00154AD0 41 82 00 3C */ beq .L_80157BCC
/* 80157B94 00154AD4 80 64 00 00 */ lwz r3, 0(r4)
/* 80157B98 00154AD8 93 84 00 00 */ stw r28, 0(r4)
/* 80157B9C 00154ADC 28 03 00 00 */ cmplwi r3, 0
/* 80157BA0 00154AE0 90 7C 00 00 */ stw r3, 0(r28)
/* 80157BA4 00154AE4 90 9C 00 04 */ stw r4, 4(r28)
/* 80157BA8 00154AE8 41 82 00 24 */ beq .L_80157BCC
/* 80157BAC 00154AEC 93 83 00 04 */ stw r28, 4(r3)
/* 80157BB0 00154AF0 48 00 00 1C */ b .L_80157BCC
.L_80157BB4:
/* 80157BB4 00154AF4 93 9B 00 1C */ stw r28, 0x1c(r27)
/* 80157BB8 00154AF8 38 00 00 00 */ li r0, 0
/* 80157BBC 00154AFC 80 7B 00 1C */ lwz r3, 0x1c(r27)
/* 80157BC0 00154B00 90 03 00 00 */ stw r0, 0(r3)
/* 80157BC4 00154B04 80 7B 00 1C */ lwz r3, 0x1c(r27)
/* 80157BC8 00154B08 90 03 00 04 */ stw r0, 4(r3)
.L_80157BCC:
/* 80157BCC 00154B0C 93 7C 00 08 */ stw r27, 8(r28)
/* 80157BD0 00154B10 80 7B 00 1C */ lwz r3, 0x1c(r27)
/* 80157BD4 00154B14 48 00 00 18 */ b .L_80157BEC
.L_80157BD8:
/* 80157BD8 00154B18 7C 03 E0 40 */ cmplw r3, r28
/* 80157BDC 00154B1C 40 82 00 0C */ bne .L_80157BE8
/* 80157BE0 00154B20 38 00 00 01 */ li r0, 1
/* 80157BE4 00154B24 48 00 00 14 */ b .L_80157BF8
.L_80157BE8:
/* 80157BE8 00154B28 80 63 00 00 */ lwz r3, 0(r3)
.L_80157BEC:
/* 80157BEC 00154B2C 28 03 00 00 */ cmplwi r3, 0
/* 80157BF0 00154B30 40 82 FF E8 */ bne .L_80157BD8
/* 80157BF4 00154B34 38 00 00 00 */ li r0, 0
.L_80157BF8:
/* 80157BF8 00154B38 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 80157BFC 00154B3C 40 82 00 18 */ bne .L_80157C14
/* 80157C00 00154B40 38 7F 00 0C */ addi r3, r31, 0xc
/* 80157C04 00154B44 38 BF 00 28 */ addi r5, r31, 0x28
/* 80157C08 00154B48 38 80 03 57 */ li r4, 0x357
/* 80157C0C 00154B4C 4C C6 31 82 */ crclr 6
/* 80157C10 00154B50 4B ED 2A 31 */ bl panic_f__12JUTExceptionFPCciPCce
.L_80157C14:
/* 80157C14 00154B54 57 A0 06 3F */ clrlwi. r0, r29, 0x18
/* 80157C18 00154B58 41 82 00 30 */ beq .L_80157C48
/* 80157C1C 00154B5C A0 7B 00 14 */ lhz r3, 0x14(r27)
/* 80157C20 00154B60 38 03 00 01 */ addi r0, r3, 1
/* 80157C24 00154B64 B0 1B 00 14 */ sth r0, 0x14(r27)
/* 80157C28 00154B68 80 9B 00 10 */ lwz r4, 0x10(r27)
/* 80157C2C 00154B6C 48 00 00 14 */ b .L_80157C40
.L_80157C30:
/* 80157C30 00154B70 A0 64 00 16 */ lhz r3, 0x16(r4)
/* 80157C34 00154B74 38 03 00 01 */ addi r0, r3, 1
/* 80157C38 00154B78 B0 04 00 16 */ sth r0, 0x16(r4)
/* 80157C3C 00154B7C 80 84 00 10 */ lwz r4, 0x10(r4)
.L_80157C40:
/* 80157C40 00154B80 28 04 00 00 */ cmplwi r4, 0
/* 80157C44 00154B84 40 82 FF EC */ bne .L_80157C30
.L_80157C48:
/* 80157C48 00154B88 A0 7B 00 18 */ lhz r3, 0x18(r27)
/* 80157C4C 00154B8C 38 03 00 01 */ addi r0, r3, 1
/* 80157C50 00154B90 B0 1B 00 18 */ sth r0, 0x18(r27)
/* 80157C54 00154B94 80 9B 00 10 */ lwz r4, 0x10(r27)
/* 80157C58 00154B98 48 00 00 14 */ b .L_80157C6C
.L_80157C5C:
/* 80157C5C 00154B9C A0 64 00 18 */ lhz r3, 0x18(r4)
/* 80157C60 00154BA0 38 03 00 01 */ addi r0, r3, 1
/* 80157C64 00154BA4 B0 04 00 18 */ sth r0, 0x18(r4)
/* 80157C68 00154BA8 80 84 00 10 */ lwz r4, 0x10(r4)
.L_80157C6C:
/* 80157C6C 00154BAC 28 04 00 00 */ cmplwi r4, 0
/* 80157C70 00154BB0 40 82 FF EC */ bne .L_80157C5C
/* 80157C74 00154BB4 80 1B 00 24 */ lwz r0, 0x24(r27)
/* 80157C78 00154BB8 28 00 00 00 */ cmplwi r0, 0
/* 80157C7C 00154BBC 40 82 00 6C */ bne .L_80157CE8
/* 80157C80 00154BC0 80 0D 92 D8 */ lwz r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80157C84 00154BC4 28 00 00 00 */ cmplwi r0, 0
/* 80157C88 00154BC8 41 82 00 60 */ beq .L_80157CE8
/* 80157C8C 00154BCC 40 82 00 18 */ bne .L_80157CA4
/* 80157C90 00154BD0 38 7F 00 0C */ addi r3, r31, 0xc
/* 80157C94 00154BD4 38 BF 00 1C */ addi r5, r31, 0x1c
/* 80157C98 00154BD8 38 80 02 FB */ li r4, 0x2fb
/* 80157C9C 00154BDC 4C C6 31 82 */ crclr 6
/* 80157CA0 00154BE0 4B ED 29 A1 */ bl panic_f__12JUTExceptionFPCciPCce
.L_80157CA4:
/* 80157CA4 00154BE4 A8 1B 00 28 */ lha r0, 0x28(r27)
/* 80157CA8 00154BE8 80 8D 92 D8 */ lwz r4, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80157CAC 00154BEC 1C 60 00 38 */ mulli r3, r0, 0x38
/* 80157CB0 00154BF0 80 04 00 30 */ lwz r0, 0x30(r4)
/* 80157CB4 00154BF4 38 83 00 0C */ addi r4, r3, 0xc
/* 80157CB8 00154BF8 7C 80 22 14 */ add r4, r0, r4
/* 80157CBC 00154BFC 80 04 00 20 */ lwz r0, 0x20(r4)
/* 80157CC0 00154C00 28 00 00 00 */ cmplwi r0, 0
/* 80157CC4 00154C04 41 82 00 1C */ beq .L_80157CE0
/* 80157CC8 00154C08 90 1B 00 20 */ stw r0, 0x20(r27)
/* 80157CCC 00154C0C 80 7B 00 20 */ lwz r3, 0x20(r27)
/* 80157CD0 00154C10 93 63 00 24 */ stw r27, 0x24(r3)
/* 80157CD4 00154C14 90 9B 00 24 */ stw r4, 0x24(r27)
/* 80157CD8 00154C18 93 64 00 20 */ stw r27, 0x20(r4)
/* 80157CDC 00154C1C 48 00 00 0C */ b .L_80157CE8
.L_80157CE0:
/* 80157CE0 00154C20 93 64 00 20 */ stw r27, 0x20(r4)
/* 80157CE4 00154C24 90 9B 00 24 */ stw r4, 0x24(r27)
.L_80157CE8:
/* 80157CE8 00154C28 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 80157CEC 00154C2C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80157CF0 00154C30 7C 08 03 A6 */ mtlr r0
/* 80157CF4 00154C34 38 21 00 20 */ addi r1, r1, 0x20
/* 80157CF8 00154C38 4E 80 00 20 */ blr
.global __cl__Q24Game9CellLayerFii
__cl__Q24Game9CellLayerFii:
/* 80157CFC 00154C3C 2C 04 00 00 */ cmpwi r4, 0
/* 80157D00 00154C40 41 80 00 24 */ blt .L_80157D24
/* 80157D04 00154C44 2C 05 00 00 */ cmpwi r5, 0
/* 80157D08 00154C48 41 80 00 1C */ blt .L_80157D24
/* 80157D0C 00154C4C A0 C3 00 00 */ lhz r6, 0(r3)
/* 80157D10 00154C50 7C 04 30 00 */ cmpw r4, r6
/* 80157D14 00154C54 40 80 00 10 */ bge .L_80157D24
/* 80157D18 00154C58 A0 03 00 02 */ lhz r0, 2(r3)
/* 80157D1C 00154C5C 7C 05 00 00 */ cmpw r5, r0
/* 80157D20 00154C60 41 80 00 0C */ blt .L_80157D2C
.L_80157D24:
/* 80157D24 00154C64 38 60 00 00 */ li r3, 0
/* 80157D28 00154C68 4E 80 00 20 */ blr
.L_80157D2C:
/* 80157D2C 00154C6C 7C 05 31 D6 */ mullw r0, r5, r6
/* 80157D30 00154C70 80 63 00 08 */ lwz r3, 8(r3)
/* 80157D34 00154C74 7C 04 02 14 */ add r0, r4, r0
/* 80157D38 00154C78 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80157D3C 00154C7C 7C 63 02 14 */ add r3, r3, r0
/* 80157D40 00154C80 4E 80 00 20 */ blr
.global pileup__Q24Game9CellLayerFRQ24Game9CellLayer
pileup__Q24Game9CellLayerFRQ24Game9CellLayer:
/* 80157D44 00154C84 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80157D48 00154C88 7C 08 02 A6 */ mflr r0
/* 80157D4C 00154C8C C8 42 A2 D8 */ lfd f2, lbl_80518638@sda21(r2)
/* 80157D50 00154C90 90 01 00 44 */ stw r0, 0x44(r1)
/* 80157D54 00154C94 3C 00 43 30 */ lis r0, 0x4330
/* 80157D58 00154C98 C0 02 A2 D0 */ lfs f0, lbl_80518630@sda21(r2)
/* 80157D5C 00154C9C 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80157D60 00154CA0 7C 9F 23 78 */ mr r31, r4
/* 80157D64 00154CA4 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80157D68 00154CA8 7C 7E 1B 78 */ mr r30, r3
/* 80157D6C 00154CAC 93 A1 00 34 */ stw r29, 0x34(r1)
/* 80157D70 00154CB0 A0 84 00 04 */ lhz r4, 4(r4)
/* 80157D74 00154CB4 90 01 00 08 */ stw r0, 8(r1)
/* 80157D78 00154CB8 54 80 0C 3C */ rlwinm r0, r4, 1, 0x10, 0x1e
/* 80157D7C 00154CBC B0 03 00 04 */ sth r0, 4(r3)
/* 80157D80 00154CC0 A0 7F 00 06 */ lhz r3, 6(r31)
/* 80157D84 00154CC4 38 03 00 01 */ addi r0, r3, 1
/* 80157D88 00154CC8 B0 1E 00 06 */ sth r0, 6(r30)
/* 80157D8C 00154CCC A0 1F 00 00 */ lhz r0, 0(r31)
/* 80157D90 00154CD0 90 01 00 0C */ stw r0, 0xc(r1)
/* 80157D94 00154CD4 C8 21 00 08 */ lfd f1, 8(r1)
/* 80157D98 00154CD8 EC 21 10 28 */ fsubs f1, f1, f2
/* 80157D9C 00154CDC EC 21 00 32 */ fmuls f1, f1, f0
/* 80157DA0 00154CE0 4B F7 73 A9 */ bl ceil
/* 80157DA4 00154CE4 FC 00 08 18 */ frsp f0, f1
/* 80157DA8 00154CE8 3C 00 43 30 */ lis r0, 0x4330
/* 80157DAC 00154CEC 90 01 00 18 */ stw r0, 0x18(r1)
/* 80157DB0 00154CF0 C8 42 A2 D8 */ lfd f2, lbl_80518638@sda21(r2)
/* 80157DB4 00154CF4 FC 20 00 1E */ fctiwz f1, f0
/* 80157DB8 00154CF8 C0 02 A2 D0 */ lfs f0, lbl_80518630@sda21(r2)
/* 80157DBC 00154CFC D8 21 00 10 */ stfd f1, 0x10(r1)
/* 80157DC0 00154D00 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80157DC4 00154D04 B0 1E 00 00 */ sth r0, 0(r30)
/* 80157DC8 00154D08 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80157DCC 00154D0C 90 01 00 1C */ stw r0, 0x1c(r1)
/* 80157DD0 00154D10 C8 21 00 18 */ lfd f1, 0x18(r1)
/* 80157DD4 00154D14 EC 21 10 28 */ fsubs f1, f1, f2
/* 80157DD8 00154D18 EC 21 00 32 */ fmuls f1, f1, f0
/* 80157DDC 00154D1C 4B F7 73 6D */ bl ceil
/* 80157DE0 00154D20 FC 00 08 18 */ frsp f0, f1
/* 80157DE4 00154D24 FC 00 00 1E */ fctiwz f0, f0
/* 80157DE8 00154D28 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 80157DEC 00154D2C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80157DF0 00154D30 B0 1E 00 02 */ sth r0, 2(r30)
/* 80157DF4 00154D34 A0 7E 00 00 */ lhz r3, 0(r30)
/* 80157DF8 00154D38 A0 1E 00 02 */ lhz r0, 2(r30)
/* 80157DFC 00154D3C 7F A3 01 D6 */ mullw r29, r3, r0
/* 80157E00 00154D40 1C 7D 00 2C */ mulli r3, r29, 0x2c
/* 80157E04 00154D44 38 63 00 10 */ addi r3, r3, 0x10
/* 80157E08 00154D48 4B EC C1 A5 */ bl __nwa__FUl
/* 80157E0C 00154D4C 3C 80 80 15 */ lis r4, __ct__Q24Game4CellFv@ha
/* 80157E10 00154D50 7F A7 EB 78 */ mr r7, r29
/* 80157E14 00154D54 38 84 67 40 */ addi r4, r4, __ct__Q24Game4CellFv@l
/* 80157E18 00154D58 38 A0 00 00 */ li r5, 0
/* 80157E1C 00154D5C 38 C0 00 2C */ li r6, 0x2c
/* 80157E20 00154D60 4B F6 9B D1 */ bl __construct_new_array
/* 80157E24 00154D64 90 7E 00 08 */ stw r3, 8(r30)
/* 80157E28 00154D68 38 A0 00 00 */ li r5, 0
/* 80157E2C 00154D6C 38 C0 00 00 */ li r6, 0
/* 80157E30 00154D70 90 BE 00 2C */ stw r5, 0x2c(r30)
/* 80157E34 00154D74 90 BE 00 30 */ stw r5, 0x30(r30)
/* 80157E38 00154D78 48 00 00 1C */ b .L_80157E54
.L_80157E3C:
/* 80157E3C 00154D7C A0 9E 00 06 */ lhz r4, 6(r30)
/* 80157E40 00154D80 38 05 00 28 */ addi r0, r5, 0x28
/* 80157E44 00154D84 80 7E 00 08 */ lwz r3, 8(r30)
/* 80157E48 00154D88 38 A5 00 2C */ addi r5, r5, 0x2c
/* 80157E4C 00154D8C 38 C6 00 01 */ addi r6, r6, 1
/* 80157E50 00154D90 7C 83 03 2E */ sthx r4, r3, r0
.L_80157E54:
/* 80157E54 00154D94 A0 7E 00 00 */ lhz r3, 0(r30)
/* 80157E58 00154D98 A0 1E 00 02 */ lhz r0, 2(r30)
/* 80157E5C 00154D9C 7C 03 01 D6 */ mullw r0, r3, r0
/* 80157E60 00154DA0 7C 06 00 00 */ cmpw r6, r0
/* 80157E64 00154DA4 41 80 FF D8 */ blt .L_80157E3C
/* 80157E68 00154DA8 38 C0 00 00 */ li r6, 0
/* 80157E6C 00154DAC 38 A0 00 00 */ li r5, 0
/* 80157E70 00154DB0 48 00 04 24 */ b .L_80158294
.L_80157E74:
/* 80157E74 00154DB4 38 E0 00 00 */ li r7, 0
/* 80157E78 00154DB8 38 80 00 00 */ li r4, 0
/* 80157E7C 00154DBC 48 00 04 04 */ b .L_80158280
.L_80157E80:
/* 80157E80 00154DC0 2C 06 00 00 */ cmpwi r6, 0
/* 80157E84 00154DC4 41 80 00 20 */ blt .L_80157EA4
/* 80157E88 00154DC8 2C 07 00 00 */ cmpwi r7, 0
/* 80157E8C 00154DCC 41 80 00 18 */ blt .L_80157EA4
/* 80157E90 00154DD0 A0 7E 00 00 */ lhz r3, 0(r30)
/* 80157E94 00154DD4 7C 06 18 00 */ cmpw r6, r3
/* 80157E98 00154DD8 40 80 00 0C */ bge .L_80157EA4
/* 80157E9C 00154DDC 7C 07 00 00 */ cmpw r7, r0
/* 80157EA0 00154DE0 41 80 00 0C */ blt .L_80157EAC
.L_80157EA4:
/* 80157EA4 00154DE4 38 60 00 00 */ li r3, 0
/* 80157EA8 00154DE8 48 00 00 18 */ b .L_80157EC0
.L_80157EAC:
/* 80157EAC 00154DEC 7C 07 19 D6 */ mullw r0, r7, r3
/* 80157EB0 00154DF0 80 7E 00 08 */ lwz r3, 8(r30)
/* 80157EB4 00154DF4 7C 06 02 14 */ add r0, r6, r0
/* 80157EB8 00154DF8 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80157EBC 00154DFC 7C 63 02 14 */ add r3, r3, r0
.L_80157EC0:
/* 80157EC0 00154E00 2C 05 00 00 */ cmpwi r5, 0
/* 80157EC4 00154E04 41 80 00 24 */ blt .L_80157EE8
/* 80157EC8 00154E08 2C 04 00 00 */ cmpwi r4, 0
/* 80157ECC 00154E0C 41 80 00 1C */ blt .L_80157EE8
/* 80157ED0 00154E10 A1 1F 00 00 */ lhz r8, 0(r31)
/* 80157ED4 00154E14 7C 05 40 00 */ cmpw r5, r8
/* 80157ED8 00154E18 40 80 00 10 */ bge .L_80157EE8
/* 80157EDC 00154E1C A0 1F 00 02 */ lhz r0, 2(r31)
/* 80157EE0 00154E20 7C 04 00 00 */ cmpw r4, r0
/* 80157EE4 00154E24 41 80 00 0C */ blt .L_80157EF0
.L_80157EE8:
/* 80157EE8 00154E28 39 00 00 00 */ li r8, 0
/* 80157EEC 00154E2C 48 00 00 18 */ b .L_80157F04
.L_80157EF0:
/* 80157EF0 00154E30 7C 04 41 D6 */ mullw r0, r4, r8
/* 80157EF4 00154E34 81 1F 00 08 */ lwz r8, 8(r31)
/* 80157EF8 00154E38 7C 05 02 14 */ add r0, r5, r0
/* 80157EFC 00154E3C 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80157F00 00154E40 7D 08 02 14 */ add r8, r8, r0
.L_80157F04:
/* 80157F04 00154E44 34 05 00 01 */ addic. r0, r5, 1
/* 80157F08 00154E48 91 03 00 00 */ stw r8, 0(r3)
/* 80157F0C 00154E4C 41 80 00 28 */ blt .L_80157F34
/* 80157F10 00154E50 2C 04 00 00 */ cmpwi r4, 0
/* 80157F14 00154E54 41 80 00 20 */ blt .L_80157F34
/* 80157F18 00154E58 A1 1F 00 00 */ lhz r8, 0(r31)
/* 80157F1C 00154E5C 38 05 00 01 */ addi r0, r5, 1
/* 80157F20 00154E60 7C 00 40 00 */ cmpw r0, r8
/* 80157F24 00154E64 40 80 00 10 */ bge .L_80157F34
/* 80157F28 00154E68 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80157F2C 00154E6C 7C 04 00 00 */ cmpw r4, r0
/* 80157F30 00154E70 41 80 00 0C */ blt .L_80157F3C
.L_80157F34:
/* 80157F34 00154E74 38 00 00 00 */ li r0, 0
/* 80157F38 00154E78 48 00 00 1C */ b .L_80157F54
.L_80157F3C:
/* 80157F3C 00154E7C 7C 04 41 D6 */ mullw r0, r4, r8
/* 80157F40 00154E80 81 3F 00 08 */ lwz r9, 8(r31)
/* 80157F44 00154E84 7D 05 02 14 */ add r8, r5, r0
/* 80157F48 00154E88 38 08 00 01 */ addi r0, r8, 1
/* 80157F4C 00154E8C 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80157F50 00154E90 7C 09 02 14 */ add r0, r9, r0
.L_80157F54:
/* 80157F54 00154E94 2C 05 00 00 */ cmpwi r5, 0
/* 80157F58 00154E98 90 03 00 04 */ stw r0, 4(r3)
/* 80157F5C 00154E9C 41 80 00 28 */ blt .L_80157F84
/* 80157F60 00154EA0 34 04 00 01 */ addic. r0, r4, 1
/* 80157F64 00154EA4 41 80 00 20 */ blt .L_80157F84
/* 80157F68 00154EA8 A1 3F 00 00 */ lhz r9, 0(r31)
/* 80157F6C 00154EAC 7C 05 48 00 */ cmpw r5, r9
/* 80157F70 00154EB0 40 80 00 14 */ bge .L_80157F84
/* 80157F74 00154EB4 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80157F78 00154EB8 39 04 00 01 */ addi r8, r4, 1
/* 80157F7C 00154EBC 7C 08 00 00 */ cmpw r8, r0
/* 80157F80 00154EC0 41 80 00 0C */ blt .L_80157F8C
.L_80157F84:
/* 80157F84 00154EC4 39 00 00 00 */ li r8, 0
/* 80157F88 00154EC8 48 00 00 18 */ b .L_80157FA0
.L_80157F8C:
/* 80157F8C 00154ECC 7C 08 49 D6 */ mullw r0, r8, r9
/* 80157F90 00154ED0 81 1F 00 08 */ lwz r8, 8(r31)
/* 80157F94 00154ED4 7C 05 02 14 */ add r0, r5, r0
/* 80157F98 00154ED8 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80157F9C 00154EDC 7D 08 02 14 */ add r8, r8, r0
.L_80157FA0:
/* 80157FA0 00154EE0 34 05 00 01 */ addic. r0, r5, 1
/* 80157FA4 00154EE4 91 03 00 08 */ stw r8, 8(r3)
/* 80157FA8 00154EE8 41 80 00 2C */ blt .L_80157FD4
/* 80157FAC 00154EEC 34 04 00 01 */ addic. r0, r4, 1
/* 80157FB0 00154EF0 41 80 00 24 */ blt .L_80157FD4
/* 80157FB4 00154EF4 A1 3F 00 00 */ lhz r9, 0(r31)
/* 80157FB8 00154EF8 38 05 00 01 */ addi r0, r5, 1
/* 80157FBC 00154EFC 7C 00 48 00 */ cmpw r0, r9
/* 80157FC0 00154F00 40 80 00 14 */ bge .L_80157FD4
/* 80157FC4 00154F04 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80157FC8 00154F08 39 04 00 01 */ addi r8, r4, 1
/* 80157FCC 00154F0C 7C 08 00 00 */ cmpw r8, r0
/* 80157FD0 00154F10 41 80 00 0C */ blt .L_80157FDC
.L_80157FD4:
/* 80157FD4 00154F14 38 00 00 00 */ li r0, 0
/* 80157FD8 00154F18 48 00 00 1C */ b .L_80157FF4
.L_80157FDC:
/* 80157FDC 00154F1C 7C 08 49 D6 */ mullw r0, r8, r9
/* 80157FE0 00154F20 81 3F 00 08 */ lwz r9, 8(r31)
/* 80157FE4 00154F24 7D 05 02 14 */ add r8, r5, r0
/* 80157FE8 00154F28 38 08 00 01 */ addi r0, r8, 1
/* 80157FEC 00154F2C 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80157FF0 00154F30 7C 09 02 14 */ add r0, r9, r0
.L_80157FF4:
/* 80157FF4 00154F34 2C 05 00 00 */ cmpwi r5, 0
/* 80157FF8 00154F38 90 03 00 0C */ stw r0, 0xc(r3)
/* 80157FFC 00154F3C 41 80 00 24 */ blt .L_80158020
/* 80158000 00154F40 2C 04 00 00 */ cmpwi r4, 0
/* 80158004 00154F44 41 80 00 1C */ blt .L_80158020
/* 80158008 00154F48 A1 1F 00 00 */ lhz r8, 0(r31)
/* 8015800C 00154F4C 7C 05 40 00 */ cmpw r5, r8
/* 80158010 00154F50 40 80 00 10 */ bge .L_80158020
/* 80158014 00154F54 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80158018 00154F58 7C 04 00 00 */ cmpw r4, r0
/* 8015801C 00154F5C 41 80 00 0C */ blt .L_80158028
.L_80158020:
/* 80158020 00154F60 38 00 00 00 */ li r0, 0
/* 80158024 00154F64 48 00 00 18 */ b .L_8015803C
.L_80158028:
/* 80158028 00154F68 7C 04 41 D6 */ mullw r0, r4, r8
/* 8015802C 00154F6C 81 1F 00 08 */ lwz r8, 8(r31)
/* 80158030 00154F70 7C 05 02 14 */ add r0, r5, r0
/* 80158034 00154F74 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158038 00154F78 7C 08 02 14 */ add r0, r8, r0
.L_8015803C:
/* 8015803C 00154F7C 28 00 00 00 */ cmplwi r0, 0
/* 80158040 00154F80 41 82 00 4C */ beq .L_8015808C
/* 80158044 00154F84 2C 05 00 00 */ cmpwi r5, 0
/* 80158048 00154F88 41 80 00 24 */ blt .L_8015806C
/* 8015804C 00154F8C 2C 04 00 00 */ cmpwi r4, 0
/* 80158050 00154F90 41 80 00 1C */ blt .L_8015806C
/* 80158054 00154F94 A1 1F 00 00 */ lhz r8, 0(r31)
/* 80158058 00154F98 7C 05 40 00 */ cmpw r5, r8
/* 8015805C 00154F9C 40 80 00 10 */ bge .L_8015806C
/* 80158060 00154FA0 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80158064 00154FA4 7C 04 00 00 */ cmpw r4, r0
/* 80158068 00154FA8 41 80 00 0C */ blt .L_80158074
.L_8015806C:
/* 8015806C 00154FAC 39 00 00 00 */ li r8, 0
/* 80158070 00154FB0 48 00 00 18 */ b .L_80158088
.L_80158074:
/* 80158074 00154FB4 7C 04 41 D6 */ mullw r0, r4, r8
/* 80158078 00154FB8 81 1F 00 08 */ lwz r8, 8(r31)
/* 8015807C 00154FBC 7C 05 02 14 */ add r0, r5, r0
/* 80158080 00154FC0 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158084 00154FC4 7D 08 02 14 */ add r8, r8, r0
.L_80158088:
/* 80158088 00154FC8 90 68 00 10 */ stw r3, 0x10(r8)
.L_8015808C:
/* 8015808C 00154FCC 34 05 00 01 */ addic. r0, r5, 1
/* 80158090 00154FD0 41 80 00 28 */ blt .L_801580B8
/* 80158094 00154FD4 2C 04 00 00 */ cmpwi r4, 0
/* 80158098 00154FD8 41 80 00 20 */ blt .L_801580B8
/* 8015809C 00154FDC A1 1F 00 00 */ lhz r8, 0(r31)
/* 801580A0 00154FE0 38 05 00 01 */ addi r0, r5, 1
/* 801580A4 00154FE4 7C 00 40 00 */ cmpw r0, r8
/* 801580A8 00154FE8 40 80 00 10 */ bge .L_801580B8
/* 801580AC 00154FEC A0 1F 00 02 */ lhz r0, 2(r31)
/* 801580B0 00154FF0 7C 04 00 00 */ cmpw r4, r0
/* 801580B4 00154FF4 41 80 00 0C */ blt .L_801580C0
.L_801580B8:
/* 801580B8 00154FF8 38 00 00 00 */ li r0, 0
/* 801580BC 00154FFC 48 00 00 1C */ b .L_801580D8
.L_801580C0:
/* 801580C0 00155000 7C 04 41 D6 */ mullw r0, r4, r8
/* 801580C4 00155004 81 3F 00 08 */ lwz r9, 8(r31)
/* 801580C8 00155008 7D 05 02 14 */ add r8, r5, r0
/* 801580CC 0015500C 38 08 00 01 */ addi r0, r8, 1
/* 801580D0 00155010 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 801580D4 00155014 7C 09 02 14 */ add r0, r9, r0
.L_801580D8:
/* 801580D8 00155018 28 00 00 00 */ cmplwi r0, 0
/* 801580DC 0015501C 41 82 00 54 */ beq .L_80158130
/* 801580E0 00155020 34 05 00 01 */ addic. r0, r5, 1
/* 801580E4 00155024 41 80 00 28 */ blt .L_8015810C
/* 801580E8 00155028 2C 04 00 00 */ cmpwi r4, 0
/* 801580EC 0015502C 41 80 00 20 */ blt .L_8015810C
/* 801580F0 00155030 A1 1F 00 00 */ lhz r8, 0(r31)
/* 801580F4 00155034 38 05 00 01 */ addi r0, r5, 1
/* 801580F8 00155038 7C 00 40 00 */ cmpw r0, r8
/* 801580FC 0015503C 40 80 00 10 */ bge .L_8015810C
/* 80158100 00155040 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80158104 00155044 7C 04 00 00 */ cmpw r4, r0
/* 80158108 00155048 41 80 00 0C */ blt .L_80158114
.L_8015810C:
/* 8015810C 0015504C 39 00 00 00 */ li r8, 0
/* 80158110 00155050 48 00 00 1C */ b .L_8015812C
.L_80158114:
/* 80158114 00155054 7C 04 41 D6 */ mullw r0, r4, r8
/* 80158118 00155058 81 3F 00 08 */ lwz r9, 8(r31)
/* 8015811C 0015505C 7D 05 02 14 */ add r8, r5, r0
/* 80158120 00155060 38 08 00 01 */ addi r0, r8, 1
/* 80158124 00155064 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158128 00155068 7D 09 02 14 */ add r8, r9, r0
.L_8015812C:
/* 8015812C 0015506C 90 68 00 10 */ stw r3, 0x10(r8)
.L_80158130:
/* 80158130 00155070 2C 05 00 00 */ cmpwi r5, 0
/* 80158134 00155074 41 80 00 28 */ blt .L_8015815C
/* 80158138 00155078 34 04 00 01 */ addic. r0, r4, 1
/* 8015813C 0015507C 41 80 00 20 */ blt .L_8015815C
/* 80158140 00155080 A1 3F 00 00 */ lhz r9, 0(r31)
/* 80158144 00155084 7C 05 48 00 */ cmpw r5, r9
/* 80158148 00155088 40 80 00 14 */ bge .L_8015815C
/* 8015814C 0015508C A0 1F 00 02 */ lhz r0, 2(r31)
/* 80158150 00155090 39 04 00 01 */ addi r8, r4, 1
/* 80158154 00155094 7C 08 00 00 */ cmpw r8, r0
/* 80158158 00155098 41 80 00 0C */ blt .L_80158164
.L_8015815C:
/* 8015815C 0015509C 38 00 00 00 */ li r0, 0
/* 80158160 001550A0 48 00 00 18 */ b .L_80158178
.L_80158164:
/* 80158164 001550A4 7C 08 49 D6 */ mullw r0, r8, r9
/* 80158168 001550A8 81 1F 00 08 */ lwz r8, 8(r31)
/* 8015816C 001550AC 7C 05 02 14 */ add r0, r5, r0
/* 80158170 001550B0 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158174 001550B4 7C 08 02 14 */ add r0, r8, r0
.L_80158178:
/* 80158178 001550B8 28 00 00 00 */ cmplwi r0, 0
/* 8015817C 001550BC 41 82 00 50 */ beq .L_801581CC
/* 80158180 001550C0 2C 05 00 00 */ cmpwi r5, 0
/* 80158184 001550C4 41 80 00 28 */ blt .L_801581AC
/* 80158188 001550C8 34 04 00 01 */ addic. r0, r4, 1
/* 8015818C 001550CC 41 80 00 20 */ blt .L_801581AC
/* 80158190 001550D0 A1 3F 00 00 */ lhz r9, 0(r31)
/* 80158194 001550D4 7C 05 48 00 */ cmpw r5, r9
/* 80158198 001550D8 40 80 00 14 */ bge .L_801581AC
/* 8015819C 001550DC A0 1F 00 02 */ lhz r0, 2(r31)
/* 801581A0 001550E0 39 04 00 01 */ addi r8, r4, 1
/* 801581A4 001550E4 7C 08 00 00 */ cmpw r8, r0
/* 801581A8 001550E8 41 80 00 0C */ blt .L_801581B4
.L_801581AC:
/* 801581AC 001550EC 39 00 00 00 */ li r8, 0
/* 801581B0 001550F0 48 00 00 18 */ b .L_801581C8
.L_801581B4:
/* 801581B4 001550F4 7C 08 49 D6 */ mullw r0, r8, r9
/* 801581B8 001550F8 81 1F 00 08 */ lwz r8, 8(r31)
/* 801581BC 001550FC 7C 05 02 14 */ add r0, r5, r0
/* 801581C0 00155100 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 801581C4 00155104 7D 08 02 14 */ add r8, r8, r0
.L_801581C8:
/* 801581C8 00155108 90 68 00 10 */ stw r3, 0x10(r8)
.L_801581CC:
/* 801581CC 0015510C 34 05 00 01 */ addic. r0, r5, 1
/* 801581D0 00155110 41 80 00 2C */ blt .L_801581FC
/* 801581D4 00155114 34 04 00 01 */ addic. r0, r4, 1
/* 801581D8 00155118 41 80 00 24 */ blt .L_801581FC
/* 801581DC 0015511C A1 3F 00 00 */ lhz r9, 0(r31)
/* 801581E0 00155120 38 05 00 01 */ addi r0, r5, 1
/* 801581E4 00155124 7C 00 48 00 */ cmpw r0, r9
/* 801581E8 00155128 40 80 00 14 */ bge .L_801581FC
/* 801581EC 0015512C A0 1F 00 02 */ lhz r0, 2(r31)
/* 801581F0 00155130 39 04 00 01 */ addi r8, r4, 1
/* 801581F4 00155134 7C 08 00 00 */ cmpw r8, r0
/* 801581F8 00155138 41 80 00 0C */ blt .L_80158204
.L_801581FC:
/* 801581FC 0015513C 38 00 00 00 */ li r0, 0
/* 80158200 00155140 48 00 00 1C */ b .L_8015821C
.L_80158204:
/* 80158204 00155144 7C 08 49 D6 */ mullw r0, r8, r9
/* 80158208 00155148 81 3F 00 08 */ lwz r9, 8(r31)
/* 8015820C 0015514C 7D 05 02 14 */ add r8, r5, r0
/* 80158210 00155150 38 08 00 01 */ addi r0, r8, 1
/* 80158214 00155154 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158218 00155158 7C 09 02 14 */ add r0, r9, r0
.L_8015821C:
/* 8015821C 0015515C 28 00 00 00 */ cmplwi r0, 0
/* 80158220 00155160 41 82 00 58 */ beq .L_80158278
/* 80158224 00155164 34 05 00 01 */ addic. r0, r5, 1
/* 80158228 00155168 41 80 00 2C */ blt .L_80158254
/* 8015822C 0015516C 34 04 00 01 */ addic. r0, r4, 1
/* 80158230 00155170 41 80 00 24 */ blt .L_80158254
/* 80158234 00155174 A1 3F 00 00 */ lhz r9, 0(r31)
/* 80158238 00155178 38 05 00 01 */ addi r0, r5, 1
/* 8015823C 0015517C 7C 00 48 00 */ cmpw r0, r9
/* 80158240 00155180 40 80 00 14 */ bge .L_80158254
/* 80158244 00155184 A0 1F 00 02 */ lhz r0, 2(r31)
/* 80158248 00155188 39 04 00 01 */ addi r8, r4, 1
/* 8015824C 0015518C 7C 08 00 00 */ cmpw r8, r0
/* 80158250 00155190 41 80 00 0C */ blt .L_8015825C
.L_80158254:
/* 80158254 00155194 39 00 00 00 */ li r8, 0
/* 80158258 00155198 48 00 00 1C */ b .L_80158274
.L_8015825C:
/* 8015825C 0015519C 7C 08 49 D6 */ mullw r0, r8, r9
/* 80158260 001551A0 81 3F 00 08 */ lwz r9, 8(r31)
/* 80158264 001551A4 7D 05 02 14 */ add r8, r5, r0
/* 80158268 001551A8 38 08 00 01 */ addi r0, r8, 1
/* 8015826C 001551AC 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158270 001551B0 7D 09 02 14 */ add r8, r9, r0
.L_80158274:
/* 80158274 001551B4 90 68 00 10 */ stw r3, 0x10(r8)
.L_80158278:
/* 80158278 001551B8 38 84 00 02 */ addi r4, r4, 2
/* 8015827C 001551BC 38 E7 00 01 */ addi r7, r7, 1
.L_80158280:
/* 80158280 001551C0 A0 1E 00 02 */ lhz r0, 2(r30)
/* 80158284 001551C4 7C 07 00 00 */ cmpw r7, r0
/* 80158288 001551C8 41 80 FB F8 */ blt .L_80157E80
/* 8015828C 001551CC 38 A5 00 02 */ addi r5, r5, 2
/* 80158290 001551D0 38 C6 00 01 */ addi r6, r6, 1
.L_80158294:
/* 80158294 001551D4 A0 1E 00 00 */ lhz r0, 0(r30)
/* 80158298 001551D8 7C 06 00 00 */ cmpw r6, r0
/* 8015829C 001551DC 41 80 FB D8 */ blt .L_80157E74
/* 801582A0 001551E0 80 01 00 44 */ lwz r0, 0x44(r1)
/* 801582A4 001551E4 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 801582A8 001551E8 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 801582AC 001551EC 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 801582B0 001551F0 7C 08 03 A6 */ mtlr r0
/* 801582B4 001551F4 38 21 00 40 */ addi r1, r1, 0x40
/* 801582B8 001551F8 4E 80 00 20 */ blr
.global __ct__Q24Game11CellPyramidFv
__ct__Q24Game11CellPyramidFv:
/* 801582BC 001551FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801582C0 00155200 7C 08 02 A6 */ mflr r0
/* 801582C4 00155204 90 01 00 14 */ stw r0, 0x14(r1)
/* 801582C8 00155208 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801582CC 0015520C 7C 7F 1B 78 */ mr r31, r3
/* 801582D0 00155210 48 0E 45 19 */ bl __ct__Q210SweepPrune5WorldFv
/* 801582D4 00155214 38 00 00 00 */ li r0, 0
/* 801582D8 00155218 7F E3 FB 78 */ mr r3, r31
/* 801582DC 0015521C 90 1F 00 2C */ stw r0, 0x2c(r31)
/* 801582E0 00155220 90 1F 00 28 */ stw r0, 0x28(r31)
/* 801582E4 00155224 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801582E8 00155228 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801582EC 0015522C 7C 08 03 A6 */ mtlr r0
/* 801582F0 00155230 38 21 00 10 */ addi r1, r1, 0x10
/* 801582F4 00155234 4E 80 00 20 */ blr
.global clear__Q24Game11CellPyramidFv
clear__Q24Game11CellPyramidFv:
/* 801582F8 00155238 39 60 00 00 */ li r11, 0
/* 801582FC 0015523C 39 40 00 00 */ li r10, 0
/* 80158300 00155240 48 00 00 68 */ b .L_80158368
.L_80158304:
/* 80158304 00155244 80 03 00 30 */ lwz r0, 0x30(r3)
/* 80158308 00155248 38 C0 00 00 */ li r6, 0
/* 8015830C 0015524C 7C C7 33 78 */ mr r7, r6
/* 80158310 00155250 7D 00 52 14 */ add r8, r0, r10
/* 80158314 00155254 7C C9 33 78 */ mr r9, r6
/* 80158318 00155258 90 C8 00 2C */ stw r6, 0x2c(r8)
/* 8015831C 0015525C 90 C8 00 30 */ stw r6, 0x30(r8)
/* 80158320 00155260 48 00 00 2C */ b .L_8015834C
.L_80158324:
/* 80158324 00155264 80 88 00 08 */ lwz r4, 8(r8)
/* 80158328 00155268 38 09 00 28 */ addi r0, r9, 0x28
/* 8015832C 0015526C 38 E7 00 01 */ addi r7, r7, 1
/* 80158330 00155270 7C 84 4A 14 */ add r4, r4, r9
/* 80158334 00155274 39 29 00 2C */ addi r9, r9, 0x2c
/* 80158338 00155278 90 C4 00 1C */ stw r6, 0x1c(r4)
/* 8015833C 0015527C B0 C4 00 18 */ sth r6, 0x18(r4)
/* 80158340 00155280 A0 A8 00 06 */ lhz r5, 6(r8)
/* 80158344 00155284 80 88 00 08 */ lwz r4, 8(r8)
/* 80158348 00155288 7C A4 03 2E */ sthx r5, r4, r0
.L_8015834C:
/* 8015834C 0015528C A0 88 00 00 */ lhz r4, 0(r8)
/* 80158350 00155290 A0 08 00 02 */ lhz r0, 2(r8)
/* 80158354 00155294 7C 04 01 D6 */ mullw r0, r4, r0
/* 80158358 00155298 7C 07 00 00 */ cmpw r7, r0
/* 8015835C 0015529C 41 80 FF C8 */ blt .L_80158324
/* 80158360 001552A0 39 4A 00 38 */ addi r10, r10, 0x38
/* 80158364 001552A4 39 6B 00 01 */ addi r11, r11, 1
.L_80158368:
/* 80158368 001552A8 80 03 00 2C */ lwz r0, 0x2c(r3)
/* 8015836C 001552AC 7C 0B 00 00 */ cmpw r11, r0
/* 80158370 001552B0 41 80 FF 94 */ blt .L_80158304
/* 80158374 001552B4 38 00 00 00 */ li r0, 0
/* 80158378 001552B8 90 03 00 44 */ stw r0, 0x44(r3)
/* 8015837C 001552BC 90 03 00 08 */ stw r0, 8(r3)
/* 80158380 001552C0 90 03 00 04 */ stw r0, 4(r3)
/* 80158384 001552C4 90 03 00 1C */ stw r0, 0x1c(r3)
/* 80158388 001552C8 90 03 00 18 */ stw r0, 0x18(r3)
/* 8015838C 001552CC 4E 80 00 20 */ blr
.global "calcExtent__Q24Game11CellPyramidFRQ23Sys6SphereRiR7Rect<i>"
"calcExtent__Q24Game11CellPyramidFRQ23Sys6SphereRiR7Rect<i>":
/* 80158390 001552D0 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80158394 001552D4 7C 08 02 A6 */ mflr r0
/* 80158398 001552D8 90 01 00 74 */ stw r0, 0x74(r1)
/* 8015839C 001552DC DB E1 00 60 */ stfd f31, 0x60(r1)
/* 801583A0 001552E0 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0
/* 801583A4 001552E4 DB C1 00 50 */ stfd f30, 0x50(r1)
/* 801583A8 001552E8 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0
/* 801583AC 001552EC 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 801583B0 001552F0 93 C1 00 48 */ stw r30, 0x48(r1)
/* 801583B4 001552F4 93 A1 00 44 */ stw r29, 0x44(r1)
/* 801583B8 001552F8 93 81 00 40 */ stw r28, 0x40(r1)
/* 801583BC 001552FC 7C 9D 23 78 */ mr r29, r4
/* 801583C0 00155300 7C 7C 1B 78 */ mr r28, r3
/* 801583C4 00155304 C0 42 A2 E8 */ lfs f2, lbl_80518648@sda21(r2)
/* 801583C8 00155308 7C BE 2B 78 */ mr r30, r5
/* 801583CC 0015530C C0 24 00 0C */ lfs f1, 0xc(r4)
/* 801583D0 00155310 7C DF 33 78 */ mr r31, r6
/* 801583D4 00155314 C0 03 00 38 */ lfs f0, 0x38(r3)
/* 801583D8 00155318 EC 42 00 72 */ fmuls f2, f2, f1
/* 801583DC 0015531C C8 22 A2 F0 */ lfd f1, lbl_80518650@sda21(r2)
/* 801583E0 00155320 EF C2 00 32 */ fmuls f30, f2, f0
/* 801583E4 00155324 4B F7 76 09 */ bl log10
/* 801583E8 00155328 FF E0 08 18 */ frsp f31, f1
/* 801583EC 0015532C FC 20 F0 90 */ fmr f1, f30
/* 801583F0 00155330 4B F7 75 FD */ bl log10
/* 801583F4 00155334 FC 20 08 18 */ frsp f1, f1
/* 801583F8 00155338 C0 02 A2 C8 */ lfs f0, lbl_80518628@sda21(r2)
/* 801583FC 0015533C EC 21 F8 24 */ fdivs f1, f1, f31
/* 80158400 00155340 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80158404 00155344 40 80 00 08 */ bge .L_8015840C
/* 80158408 00155348 FC 20 00 90 */ fmr f1, f0
.L_8015840C:
/* 8015840C 0015534C 4B F7 6D 3D */ bl ceil
/* 80158410 00155350 FC 00 08 18 */ frsp f0, f1
/* 80158414 00155354 80 7C 00 2C */ lwz r3, 0x2c(r28)
/* 80158418 00155358 FC 00 00 1E */ fctiwz f0, f0
/* 8015841C 0015535C D8 01 00 08 */ stfd f0, 8(r1)
/* 80158420 00155360 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80158424 00155364 7C 05 18 00 */ cmpw r5, r3
/* 80158428 00155368 41 80 00 08 */ blt .L_80158430
/* 8015842C 0015536C 38 A3 FF FF */ addi r5, r3, -1
.L_80158430:
/* 80158430 00155370 1C 65 00 38 */ mulli r3, r5, 0x38
/* 80158434 00155374 3C 00 43 30 */ lis r0, 0x4330
/* 80158438 00155378 80 9C 00 30 */ lwz r4, 0x30(r28)
/* 8015843C 0015537C 90 01 00 10 */ stw r0, 0x10(r1)
/* 80158440 00155380 38 03 00 04 */ addi r0, r3, 4
/* 80158444 00155384 C8 42 A2 D8 */ lfd f2, lbl_80518638@sda21(r2)
/* 80158448 00155388 7C 04 02 2E */ lhzx r0, r4, r0
/* 8015844C 0015538C C0 3C 00 34 */ lfs f1, 0x34(r28)
/* 80158450 00155390 90 01 00 14 */ stw r0, 0x14(r1)
/* 80158454 00155394 C0 62 A2 F8 */ lfs f3, lbl_80518658@sda21(r2)
/* 80158458 00155398 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 8015845C 0015539C C0 BD 00 0C */ lfs f5, 0xc(r29)
/* 80158460 001553A0 EC 40 10 28 */ fsubs f2, f0, f2
/* 80158464 001553A4 C0 9D 00 00 */ lfs f4, 0(r29)
/* 80158468 001553A8 C0 DD 00 08 */ lfs f6, 8(r29)
/* 8015846C 001553AC EC 04 28 28 */ fsubs f0, f4, f5
/* 80158470 001553B0 C1 1C 00 40 */ lfs f8, 0x40(r28)
/* 80158474 001553B4 EC 22 00 72 */ fmuls f1, f2, f1
/* 80158478 001553B8 EC 44 28 2A */ fadds f2, f4, f5
/* 8015847C 001553BC C0 FC 00 3C */ lfs f7, 0x3c(r28)
/* 80158480 001553C0 EC 86 28 28 */ fsubs f4, f6, f5
/* 80158484 001553C4 ED 23 08 24 */ fdivs f9, f3, f1
/* 80158488 001553C8 EC 20 40 28 */ fsubs f1, f0, f8
/* 8015848C 001553CC EC 64 38 28 */ fsubs f3, f4, f7
/* 80158490 001553D0 EC 06 28 2A */ fadds f0, f6, f5
/* 80158494 001553D4 EC 21 02 72 */ fmuls f1, f1, f9
/* 80158498 001553D8 EC 82 40 28 */ fsubs f4, f2, f8
/* 8015849C 001553DC EC 43 02 72 */ fmuls f2, f3, f9
/* 801584A0 001553E0 FC 60 08 1E */ fctiwz f3, f1
/* 801584A4 001553E4 EC 00 38 28 */ fsubs f0, f0, f7
/* 801584A8 001553E8 EC 24 02 72 */ fmuls f1, f4, f9
/* 801584AC 001553EC FC 40 10 1E */ fctiwz f2, f2
/* 801584B0 001553F0 D8 61 00 18 */ stfd f3, 0x18(r1)
/* 801584B4 001553F4 EC 00 02 72 */ fmuls f0, f0, f9
/* 801584B8 001553F8 FC 20 08 1E */ fctiwz f1, f1
/* 801584BC 001553FC 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 801584C0 00155400 D8 41 00 20 */ stfd f2, 0x20(r1)
/* 801584C4 00155404 FC 00 00 1E */ fctiwz f0, f0
/* 801584C8 00155408 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 801584CC 0015540C 80 61 00 24 */ lwz r3, 0x24(r1)
/* 801584D0 00155410 90 1F 00 00 */ stw r0, 0(r31)
/* 801584D4 00155414 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 801584D8 00155418 90 7F 00 04 */ stw r3, 4(r31)
/* 801584DC 0015541C D8 01 00 30 */ stfd f0, 0x30(r1)
/* 801584E0 00155420 90 1F 00 08 */ stw r0, 8(r31)
/* 801584E4 00155424 80 01 00 34 */ lwz r0, 0x34(r1)
/* 801584E8 00155428 90 1F 00 0C */ stw r0, 0xc(r31)
/* 801584EC 0015542C 90 BE 00 00 */ stw r5, 0(r30)
/* 801584F0 00155430 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0
/* 801584F4 00155434 CB E1 00 60 */ lfd f31, 0x60(r1)
/* 801584F8 00155438 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0
/* 801584FC 0015543C CB C1 00 50 */ lfd f30, 0x50(r1)
/* 80158500 00155440 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 80158504 00155444 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 80158508 00155448 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 8015850C 0015544C 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80158510 00155450 83 81 00 40 */ lwz r28, 0x40(r1)
/* 80158514 00155454 7C 08 03 A6 */ mtlr r0
/* 80158518 00155458 38 21 00 70 */ addi r1, r1, 0x70
/* 8015851C 0015545C 4E 80 00 20 */ blr
.global entry__Q24Game11CellPyramidFPQ24Game10CellObjectRQ23Sys6Sphere
entry__Q24Game11CellPyramidFPQ24Game10CellObjectRQ23Sys6Sphere:
/* 80158520 00155460 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80158524 00155464 7C 08 02 A6 */ mflr r0
/* 80158528 00155468 90 01 00 24 */ stw r0, 0x24(r1)
/* 8015852C 0015546C 38 C1 00 08 */ addi r6, r1, 8
/* 80158530 00155470 38 E1 00 0C */ addi r7, r1, 0xc
/* 80158534 00155474 90 6D 92 D8 */ stw r3, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80158538 00155478 48 00 00 1D */ bl "entry__Q24Game11CellPyramidFPQ24Game10CellObjectRQ23Sys6SphereRiR7Rect<i>"
/* 8015853C 0015547C 38 00 00 00 */ li r0, 0
/* 80158540 00155480 90 0D 92 D8 */ stw r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80158544 00155484 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80158548 00155488 7C 08 03 A6 */ mtlr r0
/* 8015854C 0015548C 38 21 00 20 */ addi r1, r1, 0x20
/* 80158550 00155490 4E 80 00 20 */ blr
.global "entry__Q24Game11CellPyramidFPQ24Game10CellObjectRQ23Sys6SphereRiR7Rect<i>"
"entry__Q24Game11CellPyramidFPQ24Game10CellObjectRQ23Sys6SphereRiR7Rect<i>":
/* 80158554 00155494 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 80158558 00155498 7C 08 02 A6 */ mflr r0
/* 8015855C 0015549C 90 01 00 84 */ stw r0, 0x84(r1)
/* 80158560 001554A0 DB E1 00 70 */ stfd f31, 0x70(r1)
/* 80158564 001554A4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0
/* 80158568 001554A8 DB C1 00 60 */ stfd f30, 0x60(r1)
/* 8015856C 001554AC F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0
/* 80158570 001554B0 BE C1 00 38 */ stmw r22, 0x38(r1)
/* 80158574 001554B4 7C 79 1B 78 */ mr r25, r3
/* 80158578 001554B8 3C 60 80 48 */ lis r3, lbl_8047CFE0@ha
/* 8015857C 001554BC 93 2D 92 D8 */ stw r25, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80158580 001554C0 7C BA 2B 78 */ mr r26, r5
/* 80158584 001554C4 C0 42 A2 E8 */ lfs f2, lbl_80518648@sda21(r2)
/* 80158588 001554C8 7C 98 23 78 */ mr r24, r4
/* 8015858C 001554CC C0 25 00 0C */ lfs f1, 0xc(r5)
/* 80158590 001554D0 7C D6 33 78 */ mr r22, r6
/* 80158594 001554D4 C0 19 00 38 */ lfs f0, 0x38(r25)
/* 80158598 001554D8 7C F7 3B 78 */ mr r23, r7
/* 8015859C 001554DC EC 42 00 72 */ fmuls f2, f2, f1
/* 801585A0 001554E0 C8 22 A2 F0 */ lfd f1, lbl_80518650@sda21(r2)
/* 801585A4 001554E4 3B E3 CF E0 */ addi r31, r3, lbl_8047CFE0@l
/* 801585A8 001554E8 EF E2 00 32 */ fmuls f31, f2, f0
/* 801585AC 001554EC 4B F7 74 41 */ bl log10
/* 801585B0 001554F0 FF C0 08 18 */ frsp f30, f1
/* 801585B4 001554F4 FC 20 F8 90 */ fmr f1, f31
/* 801585B8 001554F8 4B F7 74 35 */ bl log10
/* 801585BC 001554FC FC 20 08 18 */ frsp f1, f1
/* 801585C0 00155500 C0 02 A2 C8 */ lfs f0, lbl_80518628@sda21(r2)
/* 801585C4 00155504 EC 21 F0 24 */ fdivs f1, f1, f30
/* 801585C8 00155508 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801585CC 0015550C 40 80 00 08 */ bge .L_801585D4
/* 801585D0 00155510 FC 20 00 90 */ fmr f1, f0
.L_801585D4:
/* 801585D4 00155514 4B F7 6B 75 */ bl ceil
/* 801585D8 00155518 FC 00 08 18 */ frsp f0, f1
/* 801585DC 0015551C 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801585E0 00155520 FC 00 00 1E */ fctiwz f0, f0
/* 801585E4 00155524 D8 01 00 08 */ stfd f0, 8(r1)
/* 801585E8 00155528 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 801585EC 0015552C 7C 05 18 00 */ cmpw r5, r3
/* 801585F0 00155530 41 80 00 08 */ blt .L_801585F8
/* 801585F4 00155534 38 A3 FF FF */ addi r5, r3, -1
.L_801585F8:
/* 801585F8 00155538 1C 65 00 38 */ mulli r3, r5, 0x38
/* 801585FC 0015553C 3C 00 43 30 */ lis r0, 0x4330
/* 80158600 00155540 80 99 00 30 */ lwz r4, 0x30(r25)
/* 80158604 00155544 90 01 00 10 */ stw r0, 0x10(r1)
/* 80158608 00155548 38 03 00 04 */ addi r0, r3, 4
/* 8015860C 0015554C C8 42 A2 D8 */ lfd f2, lbl_80518638@sda21(r2)
/* 80158610 00155550 7C 04 02 2E */ lhzx r0, r4, r0
/* 80158614 00155554 C0 39 00 34 */ lfs f1, 0x34(r25)
/* 80158618 00155558 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015861C 0015555C C0 62 A2 F8 */ lfs f3, lbl_80518658@sda21(r2)
/* 80158620 00155560 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80158624 00155564 C0 DA 00 0C */ lfs f6, 0xc(r26)
/* 80158628 00155568 EC 40 10 28 */ fsubs f2, f0, f2
/* 8015862C 0015556C C0 9A 00 00 */ lfs f4, 0(r26)
/* 80158630 00155570 C0 FA 00 08 */ lfs f7, 8(r26)
/* 80158634 00155574 EC 04 30 28 */ fsubs f0, f4, f6
/* 80158638 00155578 C1 39 00 40 */ lfs f9, 0x40(r25)
/* 8015863C 0015557C EC 22 00 72 */ fmuls f1, f2, f1
/* 80158640 00155580 EC 44 30 2A */ fadds f2, f4, f6
/* 80158644 00155584 C1 19 00 3C */ lfs f8, 0x3c(r25)
/* 80158648 00155588 EC 87 30 28 */ fsubs f4, f7, f6
/* 8015864C 0015558C EC A3 08 24 */ fdivs f5, f3, f1
/* 80158650 00155590 EC 20 48 28 */ fsubs f1, f0, f9
/* 80158654 00155594 EC 64 40 28 */ fsubs f3, f4, f8
/* 80158658 00155598 EC 07 30 2A */ fadds f0, f7, f6
/* 8015865C 0015559C EC 21 01 72 */ fmuls f1, f1, f5
/* 80158660 001555A0 EC 82 48 28 */ fsubs f4, f2, f9
/* 80158664 001555A4 EC 43 01 72 */ fmuls f2, f3, f5
/* 80158668 001555A8 FC 60 08 1E */ fctiwz f3, f1
/* 8015866C 001555AC EC 00 40 28 */ fsubs f0, f0, f8
/* 80158670 001555B0 EC 24 01 72 */ fmuls f1, f4, f5
/* 80158674 001555B4 FC 40 10 1E */ fctiwz f2, f2
/* 80158678 001555B8 D8 61 00 18 */ stfd f3, 0x18(r1)
/* 8015867C 001555BC EC 00 01 72 */ fmuls f0, f0, f5
/* 80158680 001555C0 FC 20 08 1E */ fctiwz f1, f1
/* 80158684 001555C4 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80158688 001555C8 D8 41 00 20 */ stfd f2, 0x20(r1)
/* 8015868C 001555CC FC 00 00 1E */ fctiwz f0, f0
/* 80158690 001555D0 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 80158694 001555D4 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80158698 001555D8 90 17 00 00 */ stw r0, 0(r23)
/* 8015869C 001555DC 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 801586A0 001555E0 90 77 00 04 */ stw r3, 4(r23)
/* 801586A4 001555E4 D8 01 00 30 */ stfd f0, 0x30(r1)
/* 801586A8 001555E8 90 17 00 08 */ stw r0, 8(r23)
/* 801586AC 001555EC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 801586B0 001555F0 90 17 00 0C */ stw r0, 0xc(r23)
/* 801586B4 001555F4 90 B6 00 00 */ stw r5, 0(r22)
/* 801586B8 001555F8 80 D6 00 00 */ lwz r6, 0(r22)
/* 801586BC 001555FC 2C 06 00 00 */ cmpwi r6, 0
/* 801586C0 00155600 41 80 00 10 */ blt .L_801586D0
/* 801586C4 00155604 80 19 00 2C */ lwz r0, 0x2c(r25)
/* 801586C8 00155608 7C 06 00 00 */ cmpw r6, r0
/* 801586CC 0015560C 41 80 00 20 */ blt .L_801586EC
.L_801586D0:
/* 801586D0 00155610 80 F9 00 2C */ lwz r7, 0x2c(r25)
/* 801586D4 00155614 38 7F 00 0C */ addi r3, r31, 0xc
/* 801586D8 00155618 38 BF 00 3C */ addi r5, r31, 0x3c
/* 801586DC 0015561C 38 80 04 B6 */ li r4, 0x4b6
/* 801586E0 00155620 4C C6 31 82 */ crclr 6
/* 801586E4 00155624 4B ED 1F 5D */ bl panic_f__12JUTExceptionFPCciPCce
/* 801586E8 00155628 48 00 03 00 */ b .L_801589E8
.L_801586EC:
/* 801586EC 0015562C 7F 03 C3 78 */ mr r3, r24
/* 801586F0 00155630 80 99 00 30 */ lwz r4, 0x30(r25)
/* 801586F4 00155634 81 98 00 00 */ lwz r12, 0(r24)
/* 801586F8 00155638 1C 06 00 38 */ mulli r0, r6, 0x38
/* 801586FC 0015563C 3B 20 00 00 */ li r25, 0
/* 80158700 00155640 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 80158704 00155644 7F 64 02 14 */ add r27, r4, r0
/* 80158708 00155648 7D 89 03 A6 */ mtctr r12
/* 8015870C 0015564C 4E 80 04 21 */ bctrl
/* 80158710 00155650 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80158714 00155654 40 82 00 20 */ bne .L_80158734
/* 80158718 00155658 7F 03 C3 78 */ mr r3, r24
/* 8015871C 0015565C 81 98 00 00 */ lwz r12, 0(r24)
/* 80158720 00155660 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 80158724 00155664 7D 89 03 A6 */ mtctr r12
/* 80158728 00155668 4E 80 04 21 */ bctrl
/* 8015872C 0015566C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80158730 00155670 41 82 00 08 */ beq .L_80158738
.L_80158734:
/* 80158734 00155674 3B 20 00 01 */ li r25, 1
.L_80158738:
/* 80158738 00155678 57 23 06 3E */ clrlwi r3, r25, 0x18
/* 8015873C 0015567C 7F 1D C3 78 */ mr r29, r24
/* 80158740 00155680 7C 03 00 D0 */ neg r0, r3
/* 80158744 00155684 3B 40 00 00 */ li r26, 0
/* 80158748 00155688 7C 00 1B 78 */ or r0, r0, r3
/* 8015874C 0015568C 54 1E 0F FE */ srwi r30, r0, 0x1f
.L_80158750:
/* 80158750 00155690 83 9D 00 5C */ lwz r28, 0x5c(r29)
/* 80158754 00155694 28 1C 00 00 */ cmplwi r28, 0
/* 80158758 00155698 41 82 01 38 */ beq .L_80158890
/* 8015875C 0015569C 80 7C 00 1C */ lwz r3, 0x1c(r28)
/* 80158760 001556A0 38 1D 00 54 */ addi r0, r29, 0x54
/* 80158764 001556A4 7C 03 00 40 */ cmplw r3, r0
/* 80158768 001556A8 40 82 00 20 */ bne .L_80158788
/* 8015876C 001556AC 80 1D 00 54 */ lwz r0, 0x54(r29)
/* 80158770 001556B0 90 1C 00 1C */ stw r0, 0x1c(r28)
/* 80158774 001556B4 80 7C 00 1C */ lwz r3, 0x1c(r28)
/* 80158778 001556B8 28 03 00 00 */ cmplwi r3, 0
/* 8015877C 001556BC 41 82 00 0C */ beq .L_80158788
/* 80158780 001556C0 38 00 00 00 */ li r0, 0
/* 80158784 001556C4 90 03 00 04 */ stw r0, 4(r3)
.L_80158788:
/* 80158788 001556C8 28 1E 00 00 */ cmplwi r30, 0
/* 8015878C 001556CC 41 82 00 38 */ beq .L_801587C4
/* 80158790 001556D0 A0 7C 00 14 */ lhz r3, 0x14(r28)
/* 80158794 001556D4 28 03 00 00 */ cmplwi r3, 0
/* 80158798 001556D8 41 82 00 2C */ beq .L_801587C4
/* 8015879C 001556DC 38 03 FF FF */ addi r0, r3, -1
/* 801587A0 001556E0 B0 1C 00 14 */ sth r0, 0x14(r28)
/* 801587A4 001556E4 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 801587A8 001556E8 48 00 00 14 */ b .L_801587BC
.L_801587AC:
/* 801587AC 001556EC A0 64 00 16 */ lhz r3, 0x16(r4)
/* 801587B0 001556F0 38 03 FF FF */ addi r0, r3, -1
/* 801587B4 001556F4 B0 04 00 16 */ sth r0, 0x16(r4)
/* 801587B8 001556F8 80 84 00 10 */ lwz r4, 0x10(r4)
.L_801587BC:
/* 801587BC 001556FC 28 04 00 00 */ cmplwi r4, 0
/* 801587C0 00155700 40 82 FF EC */ bne .L_801587AC
.L_801587C4:
/* 801587C4 00155704 A0 7C 00 18 */ lhz r3, 0x18(r28)
/* 801587C8 00155708 38 03 FF FF */ addi r0, r3, -1
/* 801587CC 0015570C B0 1C 00 18 */ sth r0, 0x18(r28)
/* 801587D0 00155710 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 801587D4 00155714 48 00 00 14 */ b .L_801587E8
.L_801587D8:
/* 801587D8 00155718 A0 64 00 18 */ lhz r3, 0x18(r4)
/* 801587DC 0015571C 38 03 FF FF */ addi r0, r3, -1
/* 801587E0 00155720 B0 04 00 18 */ sth r0, 0x18(r4)
/* 801587E4 00155724 80 84 00 10 */ lwz r4, 0x10(r4)
.L_801587E8:
/* 801587E8 00155728 28 04 00 00 */ cmplwi r4, 0
/* 801587EC 0015572C 40 82 FF EC */ bne .L_801587D8
/* 801587F0 00155730 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 801587F4 00155734 28 03 00 00 */ cmplwi r3, 0
/* 801587F8 00155738 41 82 00 0C */ beq .L_80158804
/* 801587FC 0015573C 80 1D 00 54 */ lwz r0, 0x54(r29)
/* 80158800 00155740 90 03 00 00 */ stw r0, 0(r3)
.L_80158804:
/* 80158804 00155744 80 7D 00 54 */ lwz r3, 0x54(r29)
/* 80158808 00155748 28 03 00 00 */ cmplwi r3, 0
/* 8015880C 0015574C 41 82 00 0C */ beq .L_80158818
/* 80158810 00155750 80 1D 00 58 */ lwz r0, 0x58(r29)
/* 80158814 00155754 90 03 00 04 */ stw r0, 4(r3)
.L_80158818:
/* 80158818 00155758 38 00 00 00 */ li r0, 0
/* 8015881C 0015575C 90 1D 00 58 */ stw r0, 0x58(r29)
/* 80158820 00155760 90 1D 00 54 */ stw r0, 0x54(r29)
/* 80158824 00155764 80 1C 00 1C */ lwz r0, 0x1c(r28)
/* 80158828 00155768 28 00 00 00 */ cmplwi r0, 0
/* 8015882C 0015576C 40 82 00 5C */ bne .L_80158888
/* 80158830 00155770 80 0D 92 D8 */ lwz r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80158834 00155774 28 00 00 00 */ cmplwi r0, 0
/* 80158838 00155778 41 82 00 50 */ beq .L_80158888
/* 8015883C 0015577C 40 82 00 18 */ bne .L_80158854
/* 80158840 00155780 38 7F 00 0C */ addi r3, r31, 0xc
/* 80158844 00155784 38 BF 00 1C */ addi r5, r31, 0x1c
/* 80158848 00155788 38 80 03 12 */ li r4, 0x312
/* 8015884C 0015578C 4C C6 31 82 */ crclr 6
/* 80158850 00155790 4B ED 1D F1 */ bl panic_f__12JUTExceptionFPCciPCce
.L_80158854:
/* 80158854 00155794 80 7C 00 24 */ lwz r3, 0x24(r28)
/* 80158858 00155798 28 03 00 00 */ cmplwi r3, 0
/* 8015885C 0015579C 41 82 00 20 */ beq .L_8015887C
/* 80158860 001557A0 80 1C 00 20 */ lwz r0, 0x20(r28)
/* 80158864 001557A4 90 03 00 20 */ stw r0, 0x20(r3)
/* 80158868 001557A8 80 7C 00 20 */ lwz r3, 0x20(r28)
/* 8015886C 001557AC 28 03 00 00 */ cmplwi r3, 0
/* 80158870 001557B0 41 82 00 0C */ beq .L_8015887C
/* 80158874 001557B4 80 1C 00 24 */ lwz r0, 0x24(r28)
/* 80158878 001557B8 90 03 00 24 */ stw r0, 0x24(r3)
.L_8015887C:
/* 8015887C 001557BC 38 00 00 00 */ li r0, 0
/* 80158880 001557C0 90 1C 00 24 */ stw r0, 0x24(r28)
/* 80158884 001557C4 90 1C 00 20 */ stw r0, 0x20(r28)
.L_80158888:
/* 80158888 001557C8 38 00 00 00 */ li r0, 0
/* 8015888C 001557CC 90 1D 00 5C */ stw r0, 0x5c(r29)
.L_80158890:
/* 80158890 001557D0 3B 5A 00 01 */ addi r26, r26, 1
/* 80158894 001557D4 3B BD 00 14 */ addi r29, r29, 0x14
/* 80158898 001557D8 2C 1A 00 04 */ cmpwi r26, 4
/* 8015889C 001557DC 41 80 FE B4 */ blt .L_80158750
/* 801588A0 001557E0 80 B7 00 00 */ lwz r5, 0(r23)
/* 801588A4 001557E4 3B 40 00 00 */ li r26, 0
/* 801588A8 001557E8 80 97 00 08 */ lwz r4, 8(r23)
/* 801588AC 001557EC 80 77 00 04 */ lwz r3, 4(r23)
/* 801588B0 001557F0 80 17 00 0C */ lwz r0, 0xc(r23)
/* 801588B4 001557F4 7C 85 20 50 */ subf r4, r5, r4
/* 801588B8 001557F8 7C 03 00 50 */ subf r0, r3, r0
/* 801588BC 001557FC 7C 04 01 D6 */ mullw r0, r4, r0
/* 801588C0 00155800 2C 00 00 0A */ cmpwi r0, 0xa
/* 801588C4 00155804 40 81 00 1C */ ble .L_801588E0
/* 801588C8 00155808 38 7F 00 0C */ addi r3, r31, 0xc
/* 801588CC 0015580C 38 BF 00 6C */ addi r5, r31, 0x6c
/* 801588D0 00155810 38 80 05 7D */ li r4, 0x57d
/* 801588D4 00155814 4C C6 31 82 */ crclr 6
/* 801588D8 00155818 4B ED 1D 69 */ bl panic_f__12JUTExceptionFPCciPCce
/* 801588DC 0015581C 48 00 01 0C */ b .L_801589E8
.L_801588E0:
/* 801588E0 00155820 7C B9 2B 78 */ mr r25, r5
/* 801588E4 00155824 7F 1C C3 78 */ mr r28, r24
/* 801588E8 00155828 48 00 00 EC */ b .L_801589D4
.L_801588EC:
/* 801588EC 0015582C 83 17 00 04 */ lwz r24, 4(r23)
/* 801588F0 00155830 7F 9D E3 78 */ mr r29, r28
/* 801588F4 00155834 48 00 00 D0 */ b .L_801589C4
.L_801588F8:
/* 801588F8 00155838 2C 19 00 00 */ cmpwi r25, 0
/* 801588FC 0015583C 41 80 00 24 */ blt .L_80158920
/* 80158900 00155840 2C 18 00 00 */ cmpwi r24, 0
/* 80158904 00155844 41 80 00 1C */ blt .L_80158920
/* 80158908 00155848 A0 7B 00 00 */ lhz r3, 0(r27)
/* 8015890C 0015584C 7C 19 18 00 */ cmpw r25, r3
/* 80158910 00155850 40 80 00 10 */ bge .L_80158920
/* 80158914 00155854 A0 1B 00 02 */ lhz r0, 2(r27)
/* 80158918 00155858 7C 18 00 00 */ cmpw r24, r0
/* 8015891C 0015585C 41 80 00 0C */ blt .L_80158928
.L_80158920:
/* 80158920 00155860 3A C0 00 00 */ li r22, 0
/* 80158924 00155864 48 00 00 18 */ b .L_8015893C
.L_80158928:
/* 80158928 00155868 7C 18 19 D6 */ mullw r0, r24, r3
/* 8015892C 0015586C 80 7B 00 08 */ lwz r3, 8(r27)
/* 80158930 00155870 7C 19 02 14 */ add r0, r25, r0
/* 80158934 00155874 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158938 00155878 7E C3 02 14 */ add r22, r3, r0
.L_8015893C:
/* 8015893C 0015587C 28 16 00 00 */ cmplwi r22, 0
/* 80158940 00155880 41 82 00 74 */ beq .L_801589B4
/* 80158944 00155884 2C 1A 00 04 */ cmpwi r26, 4
/* 80158948 00155888 41 80 00 10 */ blt .L_80158958
/* 8015894C 0015588C 38 00 00 00 */ li r0, 0
/* 80158950 00155890 90 0D 92 D8 */ stw r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
/* 80158954 00155894 48 00 00 94 */ b .L_801589E8
.L_80158958:
/* 80158958 00155898 7E C3 B3 78 */ mr r3, r22
/* 8015895C 0015589C 7F C5 F3 78 */ mr r5, r30
/* 80158960 001558A0 38 9D 00 54 */ addi r4, r29, 0x54
/* 80158964 001558A4 4B FF F0 AD */ bl entry__Q24Game4CellFPQ24Game7CellLegb
/* 80158968 001558A8 80 76 00 1C */ lwz r3, 0x1c(r22)
/* 8015896C 001558AC 38 1D 00 54 */ addi r0, r29, 0x54
/* 80158970 001558B0 48 00 00 18 */ b .L_80158988
.L_80158974:
/* 80158974 001558B4 7C 03 00 40 */ cmplw r3, r0
/* 80158978 001558B8 40 82 00 0C */ bne .L_80158984
/* 8015897C 001558BC 38 00 00 01 */ li r0, 1
/* 80158980 001558C0 48 00 00 14 */ b .L_80158994
.L_80158984:
/* 80158984 001558C4 80 63 00 00 */ lwz r3, 0(r3)
.L_80158988:
/* 80158988 001558C8 28 03 00 00 */ cmplwi r3, 0
/* 8015898C 001558CC 40 82 FF E8 */ bne .L_80158974
/* 80158990 001558D0 38 00 00 00 */ li r0, 0
.L_80158994:
/* 80158994 001558D4 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 80158998 001558D8 40 82 00 1C */ bne .L_801589B4
/* 8015899C 001558DC 38 7F 00 0C */ addi r3, r31, 0xc
/* 801589A0 001558E0 38 BF 00 88 */ addi r5, r31, 0x88
/* 801589A4 001558E4 38 80 05 9F */ li r4, 0x59f
/* 801589A8 001558E8 4C C6 31 82 */ crclr 6
/* 801589AC 001558EC 4B ED 1C 95 */ bl panic_f__12JUTExceptionFPCciPCce
/* 801589B0 001558F0 48 00 00 38 */ b .L_801589E8
.L_801589B4:
/* 801589B4 001558F4 3B BD 00 14 */ addi r29, r29, 0x14
/* 801589B8 001558F8 3B 9C 00 14 */ addi r28, r28, 0x14
/* 801589BC 001558FC 3B 5A 00 01 */ addi r26, r26, 1
/* 801589C0 00155900 3B 18 00 01 */ addi r24, r24, 1
.L_801589C4:
/* 801589C4 00155904 80 17 00 0C */ lwz r0, 0xc(r23)
/* 801589C8 00155908 7C 18 00 00 */ cmpw r24, r0
/* 801589CC 0015590C 40 81 FF 2C */ ble .L_801588F8
/* 801589D0 00155910 3B 39 00 01 */ addi r25, r25, 1
.L_801589D4:
/* 801589D4 00155914 80 17 00 08 */ lwz r0, 8(r23)
/* 801589D8 00155918 7C 19 00 00 */ cmpw r25, r0
/* 801589DC 0015591C 40 81 FF 10 */ ble .L_801588EC
/* 801589E0 00155920 38 00 00 00 */ li r0, 0
/* 801589E4 00155924 90 0D 92 D8 */ stw r0, sCurrCellMgr__Q24Game4Cell@sda21(r13)
.L_801589E8:
/* 801589E8 00155928 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0
/* 801589EC 0015592C CB E1 00 70 */ lfd f31, 0x70(r1)
/* 801589F0 00155930 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0
/* 801589F4 00155934 CB C1 00 60 */ lfd f30, 0x60(r1)
/* 801589F8 00155938 BA C1 00 38 */ lmw r22, 0x38(r1)
/* 801589FC 0015593C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80158A00 00155940 7C 08 03 A6 */ mtlr r0
/* 80158A04 00155944 38 21 00 80 */ addi r1, r1, 0x80
/* 80158A08 00155948 4E 80 00 20 */ blr
.global create__Q24Game11CellPyramidFR10BoundBox2df
create__Q24Game11CellPyramidFR10BoundBox2df:
/* 80158A0C 0015594C 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80158A10 00155950 7C 08 02 A6 */ mflr r0
/* 80158A14 00155954 90 01 00 74 */ stw r0, 0x74(r1)
/* 80158A18 00155958 DB E1 00 60 */ stfd f31, 0x60(r1)
/* 80158A1C 0015595C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0
/* 80158A20 00155960 DB C1 00 50 */ stfd f30, 0x50(r1)
/* 80158A24 00155964 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0
/* 80158A28 00155968 DB A1 00 40 */ stfd f29, 0x40(r1)
/* 80158A2C 0015596C F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0
/* 80158A30 00155970 BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 80158A34 00155974 FF E0 08 90 */ fmr f31, f1
/* 80158A38 00155978 7C 7F 1B 78 */ mr r31, r3
/* 80158A3C 0015597C 80 6D 88 2C */ lwz r3, sCurrentHeap__7JKRHeap@sda21(r13)
/* 80158A40 00155980 7C 9B 23 78 */ mr r27, r4
/* 80158A44 00155984 4B EC AD 71 */ bl getFreeSize__7JKRHeapFv
/* 80158A48 00155988 C0 02 A2 F8 */ lfs f0, lbl_80518658@sda21(r2)
/* 80158A4C 0015598C 90 7F 00 28 */ stw r3, 0x28(r31)
/* 80158A50 00155990 EC 00 F8 24 */ fdivs f0, f0, f31
/* 80158A54 00155994 C0 5B 00 00 */ lfs f2, 0(r27)
/* 80158A58 00155998 C0 3B 00 04 */ lfs f1, 4(r27)
/* 80158A5C 0015599C D0 3F 00 3C */ stfs f1, 0x3c(r31)
/* 80158A60 001559A0 D0 5F 00 40 */ stfs f2, 0x40(r31)
/* 80158A64 001559A4 C0 9B 00 08 */ lfs f4, 8(r27)
/* 80158A68 001559A8 C0 7B 00 00 */ lfs f3, 0(r27)
/* 80158A6C 001559AC C0 5B 00 0C */ lfs f2, 0xc(r27)
/* 80158A70 001559B0 C0 3B 00 04 */ lfs f1, 4(r27)
/* 80158A74 001559B4 EC 64 18 28 */ fsubs f3, f4, f3
/* 80158A78 001559B8 D3 FF 00 34 */ stfs f31, 0x34(r31)
/* 80158A7C 001559BC EC 22 08 28 */ fsubs f1, f2, f1
/* 80158A80 001559C0 FC 40 1A 10 */ fabs f2, f3
/* 80158A84 001559C4 D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80158A88 001559C8 FC 20 0A 10 */ fabs f1, f1
/* 80158A8C 001559CC FF C0 10 18 */ frsp f30, f2
/* 80158A90 001559D0 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80158A94 001559D4 FF A0 08 18 */ frsp f29, f1
/* 80158A98 001559D8 EC 3E 00 32 */ fmuls f1, f30, f0
/* 80158A9C 001559DC 4B F7 66 AD */ bl ceil
/* 80158AA0 001559E0 FC 40 08 18 */ frsp f2, f1
/* 80158AA4 001559E4 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80158AA8 001559E8 EC 3D 00 32 */ fmuls f1, f29, f0
/* 80158AAC 001559EC FC 00 10 1E */ fctiwz f0, f2
/* 80158AB0 001559F0 D8 01 00 08 */ stfd f0, 8(r1)
/* 80158AB4 001559F4 83 81 00 0C */ lwz r28, 0xc(r1)
/* 80158AB8 001559F8 4B F7 66 91 */ bl ceil
/* 80158ABC 001559FC FC 00 08 18 */ frsp f0, f1
/* 80158AC0 00155A00 2C 1C 00 C8 */ cmpwi r28, 0xc8
/* 80158AC4 00155A04 FC 00 00 1E */ fctiwz f0, f0
/* 80158AC8 00155A08 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80158ACC 00155A0C 83 61 00 14 */ lwz r27, 0x14(r1)
/* 80158AD0 00155A10 41 81 00 0C */ bgt .L_80158ADC
/* 80158AD4 00155A14 2C 1B 00 C8 */ cmpwi r27, 0xc8
/* 80158AD8 00155A18 40 81 00 54 */ ble .L_80158B2C
.L_80158ADC:
/* 80158ADC 00155A1C C0 22 A2 FC */ lfs f1, lbl_8051865C@sda21(r2)
/* 80158AE0 00155A20 C0 02 A2 F8 */ lfs f0, lbl_80518658@sda21(r2)
/* 80158AE4 00155A24 EF FF 00 72 */ fmuls f31, f31, f1
/* 80158AE8 00155A28 EC 00 F8 24 */ fdivs f0, f0, f31
/* 80158AEC 00155A2C D3 FF 00 34 */ stfs f31, 0x34(r31)
/* 80158AF0 00155A30 D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80158AF4 00155A34 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80158AF8 00155A38 EC 3E 00 32 */ fmuls f1, f30, f0
/* 80158AFC 00155A3C 4B F7 66 4D */ bl ceil
/* 80158B00 00155A40 FC 40 08 18 */ frsp f2, f1
/* 80158B04 00155A44 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80158B08 00155A48 EC 3D 00 32 */ fmuls f1, f29, f0
/* 80158B0C 00155A4C FC 00 10 1E */ fctiwz f0, f2
/* 80158B10 00155A50 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80158B14 00155A54 83 81 00 14 */ lwz r28, 0x14(r1)
/* 80158B18 00155A58 4B F7 66 31 */ bl ceil
/* 80158B1C 00155A5C FC 00 08 18 */ frsp f0, f1
/* 80158B20 00155A60 FC 00 00 1E */ fctiwz f0, f0
/* 80158B24 00155A64 D8 01 00 08 */ stfd f0, 8(r1)
/* 80158B28 00155A68 83 61 00 0C */ lwz r27, 0xc(r1)
.L_80158B2C:
/* 80158B2C 00155A6C 7C 1C D8 00 */ cmpw r28, r27
/* 80158B30 00155A70 7F 7E DB 78 */ mr r30, r27
/* 80158B34 00155A74 40 81 00 08 */ ble .L_80158B3C
/* 80158B38 00155A78 7F 9E E3 78 */ mr r30, r28
.L_80158B3C:
/* 80158B3C 00155A7C C8 22 A2 F0 */ lfd f1, lbl_80518650@sda21(r2)
/* 80158B40 00155A80 4B F7 6E AD */ bl log10
/* 80158B44 00155A84 6F C3 80 00 */ xoris r3, r30, 0x8000
/* 80158B48 00155A88 3C 00 43 30 */ lis r0, 0x4330
/* 80158B4C 00155A8C 90 61 00 14 */ stw r3, 0x14(r1)
/* 80158B50 00155A90 FF A0 08 18 */ frsp f29, f1
/* 80158B54 00155A94 C8 22 A3 00 */ lfd f1, lbl_80518660@sda21(r2)
/* 80158B58 00155A98 90 01 00 10 */ stw r0, 0x10(r1)
/* 80158B5C 00155A9C C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80158B60 00155AA0 EC 20 08 28 */ fsubs f1, f0, f1
/* 80158B64 00155AA4 4B F7 6E 89 */ bl log10
/* 80158B68 00155AA8 FC 00 08 18 */ frsp f0, f1
/* 80158B6C 00155AAC EC 20 E8 24 */ fdivs f1, f0, f29
/* 80158B70 00155AB0 4B F7 65 D9 */ bl ceil
/* 80158B74 00155AB4 FC 00 08 18 */ frsp f0, f1
/* 80158B78 00155AB8 3C 00 43 30 */ lis r0, 0x4330
/* 80158B7C 00155ABC 90 01 00 18 */ stw r0, 0x18(r1)
/* 80158B80 00155AC0 C8 42 A3 00 */ lfd f2, lbl_80518660@sda21(r2)
/* 80158B84 00155AC4 FC 00 00 1E */ fctiwz f0, f0
/* 80158B88 00155AC8 C8 22 A2 F0 */ lfd f1, lbl_80518650@sda21(r2)
/* 80158B8C 00155ACC D8 01 00 08 */ stfd f0, 8(r1)
/* 80158B90 00155AD0 83 A1 00 0C */ lwz r29, 0xc(r1)
/* 80158B94 00155AD4 6F A0 80 00 */ xoris r0, r29, 0x8000
/* 80158B98 00155AD8 90 01 00 1C */ stw r0, 0x1c(r1)
/* 80158B9C 00155ADC C8 01 00 18 */ lfd f0, 0x18(r1)
/* 80158BA0 00155AE0 FC 40 10 28 */ fsub f2, f0, f2
/* 80158BA4 00155AE4 4B F7 6E 69 */ bl pow
/* 80158BA8 00155AE8 38 1D 00 01 */ addi r0, r29, 1
/* 80158BAC 00155AEC 90 1F 00 2C */ stw r0, 0x2c(r31)
/* 80158BB0 00155AF0 83 DF 00 2C */ lwz r30, 0x2c(r31)
/* 80158BB4 00155AF4 1C 7E 00 38 */ mulli r3, r30, 0x38
/* 80158BB8 00155AF8 38 63 00 10 */ addi r3, r3, 0x10
/* 80158BBC 00155AFC 4B EC B3 F1 */ bl __nwa__FUl
/* 80158BC0 00155B00 3C 80 80 16 */ lis r4, __ct__Q24Game9CellLayerFv@ha
/* 80158BC4 00155B04 7F C7 F3 78 */ mr r7, r30
/* 80158BC8 00155B08 38 84 8C F8 */ addi r4, r4, __ct__Q24Game9CellLayerFv@l
/* 80158BCC 00155B0C 38 A0 00 00 */ li r5, 0
/* 80158BD0 00155B10 38 C0 00 38 */ li r6, 0x38
/* 80158BD4 00155B14 4B F6 8E 1D */ bl __construct_new_array
/* 80158BD8 00155B18 90 7F 00 30 */ stw r3, 0x30(r31)
/* 80158BDC 00155B1C 38 60 00 01 */ li r3, 1
/* 80158BE0 00155B20 38 00 00 00 */ li r0, 0
/* 80158BE4 00155B24 83 BF 00 30 */ lwz r29, 0x30(r31)
/* 80158BE8 00155B28 B3 9D 00 00 */ sth r28, 0(r29)
/* 80158BEC 00155B2C B3 7D 00 02 */ sth r27, 2(r29)
/* 80158BF0 00155B30 B0 7D 00 04 */ sth r3, 4(r29)
/* 80158BF4 00155B34 B0 1D 00 06 */ sth r0, 6(r29)
/* 80158BF8 00155B38 A0 7D 00 00 */ lhz r3, 0(r29)
/* 80158BFC 00155B3C A0 1D 00 02 */ lhz r0, 2(r29)
/* 80158C00 00155B40 7F C3 01 D6 */ mullw r30, r3, r0
/* 80158C04 00155B44 1C 7E 00 2C */ mulli r3, r30, 0x2c
/* 80158C08 00155B48 38 63 00 10 */ addi r3, r3, 0x10
/* 80158C0C 00155B4C 4B EC B3 A1 */ bl __nwa__FUl
/* 80158C10 00155B50 3C 80 80 15 */ lis r4, __ct__Q24Game4CellFv@ha
/* 80158C14 00155B54 7F C7 F3 78 */ mr r7, r30
/* 80158C18 00155B58 38 84 67 40 */ addi r4, r4, __ct__Q24Game4CellFv@l
/* 80158C1C 00155B5C 38 A0 00 00 */ li r5, 0
/* 80158C20 00155B60 38 C0 00 2C */ li r6, 0x2c
/* 80158C24 00155B64 4B F6 8D CD */ bl __construct_new_array
/* 80158C28 00155B68 90 7D 00 08 */ stw r3, 8(r29)
/* 80158C2C 00155B6C 38 A0 00 00 */ li r5, 0
/* 80158C30 00155B70 7C A6 2B 78 */ mr r6, r5
/* 80158C34 00155B74 90 BD 00 2C */ stw r5, 0x2c(r29)
/* 80158C38 00155B78 7C A7 2B 78 */ mr r7, r5
/* 80158C3C 00155B7C 90 BD 00 30 */ stw r5, 0x30(r29)
/* 80158C40 00155B80 48 00 00 2C */ b .L_80158C6C
.L_80158C44:
/* 80158C44 00155B84 80 7D 00 08 */ lwz r3, 8(r29)
/* 80158C48 00155B88 38 07 00 28 */ addi r0, r7, 0x28
/* 80158C4C 00155B8C 38 C6 00 01 */ addi r6, r6, 1
/* 80158C50 00155B90 7C 63 3A 14 */ add r3, r3, r7
/* 80158C54 00155B94 38 E7 00 2C */ addi r7, r7, 0x2c
/* 80158C58 00155B98 90 A3 00 1C */ stw r5, 0x1c(r3)
/* 80158C5C 00155B9C B0 A3 00 18 */ sth r5, 0x18(r3)
/* 80158C60 00155BA0 A0 9D 00 06 */ lhz r4, 6(r29)
/* 80158C64 00155BA4 80 7D 00 08 */ lwz r3, 8(r29)
/* 80158C68 00155BA8 7C 83 03 2E */ sthx r4, r3, r0
.L_80158C6C:
/* 80158C6C 00155BAC A0 7D 00 00 */ lhz r3, 0(r29)
/* 80158C70 00155BB0 A0 1D 00 02 */ lhz r0, 2(r29)
/* 80158C74 00155BB4 7C 03 01 D6 */ mullw r0, r3, r0
/* 80158C78 00155BB8 7C 06 00 00 */ cmpw r6, r0
/* 80158C7C 00155BBC 41 80 FF C8 */ blt .L_80158C44
/* 80158C80 00155BC0 3B 60 00 01 */ li r27, 1
/* 80158C84 00155BC4 3B A0 00 38 */ li r29, 0x38
/* 80158C88 00155BC8 48 00 00 24 */ b .L_80158CAC
.L_80158C8C:
/* 80158C8C 00155BCC 38 1B FF FF */ addi r0, r27, -1
/* 80158C90 00155BD0 80 9F 00 30 */ lwz r4, 0x30(r31)
/* 80158C94 00155BD4 1C 00 00 38 */ mulli r0, r0, 0x38
/* 80158C98 00155BD8 7C 64 EA 14 */ add r3, r4, r29
/* 80158C9C 00155BDC 7C 84 02 14 */ add r4, r4, r0
/* 80158CA0 00155BE0 4B FF F0 A5 */ bl pileup__Q24Game9CellLayerFRQ24Game9CellLayer
/* 80158CA4 00155BE4 3B BD 00 38 */ addi r29, r29, 0x38
/* 80158CA8 00155BE8 3B 7B 00 01 */ addi r27, r27, 1
.L_80158CAC:
/* 80158CAC 00155BEC 80 1F 00 2C */ lwz r0, 0x2c(r31)
/* 80158CB0 00155BF0 7C 1B 00 00 */ cmpw r27, r0
/* 80158CB4 00155BF4 41 80 FF D8 */ blt .L_80158C8C
/* 80158CB8 00155BF8 80 6D 88 2C */ lwz r3, sCurrentHeap__7JKRHeap@sda21(r13)
/* 80158CBC 00155BFC 4B EC AA F9 */ bl getFreeSize__7JKRHeapFv
/* 80158CC0 00155C00 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80158CC4 00155C04 7C 03 00 50 */ subf r0, r3, r0
/* 80158CC8 00155C08 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80158CCC 00155C0C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0
/* 80158CD0 00155C10 CB E1 00 60 */ lfd f31, 0x60(r1)
/* 80158CD4 00155C14 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0
/* 80158CD8 00155C18 CB C1 00 50 */ lfd f30, 0x50(r1)
/* 80158CDC 00155C1C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0
/* 80158CE0 00155C20 CB A1 00 40 */ lfd f29, 0x40(r1)
/* 80158CE4 00155C24 BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 80158CE8 00155C28 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80158CEC 00155C2C 7C 08 03 A6 */ mtlr r0
/* 80158CF0 00155C30 38 21 00 70 */ addi r1, r1, 0x70
/* 80158CF4 00155C34 4E 80 00 20 */ blr
.global __ct__Q24Game9CellLayerFv
__ct__Q24Game9CellLayerFv:
/* 80158CF8 00155C38 38 80 00 00 */ li r4, 0
/* 80158CFC 00155C3C 38 00 FF FF */ li r0, -1
/* 80158D00 00155C40 90 83 00 18 */ stw r4, 0x18(r3)
/* 80158D04 00155C44 90 83 00 14 */ stw r4, 0x14(r3)
/* 80158D08 00155C48 90 83 00 10 */ stw r4, 0x10(r3)
/* 80158D0C 00155C4C 90 83 00 0C */ stw r4, 0xc(r3)
/* 80158D10 00155C50 90 83 00 28 */ stw r4, 0x28(r3)
/* 80158D14 00155C54 90 83 00 1C */ stw r4, 0x1c(r3)
/* 80158D18 00155C58 B0 83 00 20 */ sth r4, 0x20(r3)
/* 80158D1C 00155C5C B0 83 00 22 */ sth r4, 0x22(r3)
/* 80158D20 00155C60 B0 83 00 24 */ sth r4, 0x24(r3)
/* 80158D24 00155C64 90 83 00 30 */ stw r4, 0x30(r3)
/* 80158D28 00155C68 90 83 00 2C */ stw r4, 0x2c(r3)
/* 80158D2C 00155C6C B0 03 00 34 */ sth r0, 0x34(r3)
/* 80158D30 00155C70 4E 80 00 20 */ blr
.global "getPikiCount__Q24Game11CellPyramidFiR7Rect<i>"
"getPikiCount__Q24Game11CellPyramidFiR7Rect<i>":
/* 80158D34 00155C74 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80158D38 00155C78 7C 08 02 A6 */ mflr r0
/* 80158D3C 00155C7C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80158D40 00155C80 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80158D44 00155C84 7C BF 2B 78 */ mr r31, r5
/* 80158D48 00155C88 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80158D4C 00155C8C 7C 9E 23 78 */ mr r30, r4
/* 80158D50 00155C90 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80158D54 00155C94 7C 7D 1B 78 */ mr r29, r3
/* 80158D58 00155C98 88 0D 92 D4 */ lbz r0, disableAICulling__Q24Game11CellPyramid@sda21(r13)
/* 80158D5C 00155C9C 28 00 00 00 */ cmplwi r0, 0
/* 80158D60 00155CA0 41 82 00 0C */ beq .L_80158D6C
/* 80158D64 00155CA4 38 60 00 01 */ li r3, 1
/* 80158D68 00155CA8 48 00 00 E4 */ b .L_80158E4C
.L_80158D6C:
/* 80158D6C 00155CAC 2C 1E 00 00 */ cmpwi r30, 0
/* 80158D70 00155CB0 41 80 00 10 */ blt .L_80158D80
/* 80158D74 00155CB4 80 1D 00 2C */ lwz r0, 0x2c(r29)
/* 80158D78 00155CB8 7C 1E 00 00 */ cmpw r30, r0
/* 80158D7C 00155CBC 41 80 00 28 */ blt .L_80158DA4
.L_80158D80:
/* 80158D80 00155CC0 3C 60 80 48 */ lis r3, lbl_8047CFEC@ha
/* 80158D84 00155CC4 3C 80 80 48 */ lis r4, lbl_8047D01C@ha
/* 80158D88 00155CC8 38 A4 D0 1C */ addi r5, r4, lbl_8047D01C@l
/* 80158D8C 00155CCC 80 FD 00 2C */ lwz r7, 0x2c(r29)
/* 80158D90 00155CD0 38 63 CF EC */ addi r3, r3, lbl_8047CFEC@l
/* 80158D94 00155CD4 7F C6 F3 78 */ mr r6, r30
/* 80158D98 00155CD8 38 80 06 1D */ li r4, 0x61d
/* 80158D9C 00155CDC 4C C6 31 82 */ crclr 6
/* 80158DA0 00155CE0 4B ED 18 A1 */ bl panic_f__12JUTExceptionFPCciPCce
.L_80158DA4:
/* 80158DA4 00155CE4 1C 1E 00 38 */ mulli r0, r30, 0x38
/* 80158DA8 00155CE8 80 9D 00 30 */ lwz r4, 0x30(r29)
/* 80158DAC 00155CEC 80 FF 00 00 */ lwz r7, 0(r31)
/* 80158DB0 00155CF0 38 60 00 00 */ li r3, 0
/* 80158DB4 00155CF4 80 BF 00 08 */ lwz r5, 8(r31)
/* 80158DB8 00155CF8 7C C4 02 14 */ add r6, r4, r0
/* 80158DBC 00155CFC 48 00 00 88 */ b .L_80158E44
.L_80158DC0:
/* 80158DC0 00155D00 80 9F 00 0C */ lwz r4, 0xc(r31)
/* 80158DC4 00155D04 81 1F 00 04 */ lwz r8, 4(r31)
/* 80158DC8 00155D08 38 04 00 01 */ addi r0, r4, 1
/* 80158DCC 00155D0C 7C 08 00 50 */ subf r0, r8, r0
/* 80158DD0 00155D10 7C 09 03 A6 */ mtctr r0
/* 80158DD4 00155D14 7C 08 20 00 */ cmpw r8, r4
/* 80158DD8 00155D18 41 81 00 68 */ bgt .L_80158E40
.L_80158DDC:
/* 80158DDC 00155D1C 2C 07 00 00 */ cmpwi r7, 0
/* 80158DE0 00155D20 41 80 00 24 */ blt .L_80158E04
/* 80158DE4 00155D24 2C 08 00 00 */ cmpwi r8, 0
/* 80158DE8 00155D28 41 80 00 1C */ blt .L_80158E04
/* 80158DEC 00155D2C A0 86 00 00 */ lhz r4, 0(r6)
/* 80158DF0 00155D30 7C 07 20 00 */ cmpw r7, r4
/* 80158DF4 00155D34 40 80 00 10 */ bge .L_80158E04
/* 80158DF8 00155D38 A0 06 00 02 */ lhz r0, 2(r6)
/* 80158DFC 00155D3C 7C 08 00 00 */ cmpw r8, r0
/* 80158E00 00155D40 41 80 00 0C */ blt .L_80158E0C
.L_80158E04:
/* 80158E04 00155D44 38 80 00 00 */ li r4, 0
/* 80158E08 00155D48 48 00 00 18 */ b .L_80158E20
.L_80158E0C:
/* 80158E0C 00155D4C 7C 08 21 D6 */ mullw r0, r8, r4
/* 80158E10 00155D50 80 86 00 08 */ lwz r4, 8(r6)
/* 80158E14 00155D54 7C 07 02 14 */ add r0, r7, r0
/* 80158E18 00155D58 1C 00 00 2C */ mulli r0, r0, 0x2c
/* 80158E1C 00155D5C 7C 84 02 14 */ add r4, r4, r0
.L_80158E20:
/* 80158E20 00155D60 28 04 00 00 */ cmplwi r4, 0
/* 80158E24 00155D64 41 82 00 14 */ beq .L_80158E38
/* 80158E28 00155D68 A0 04 00 16 */ lhz r0, 0x16(r4)
/* 80158E2C 00155D6C A0 84 00 14 */ lhz r4, 0x14(r4)
/* 80158E30 00155D70 7C 60 1A 14 */ add r3, r0, r3
/* 80158E34 00155D74 7C 64 1A 14 */ add r3, r4, r3
.L_80158E38:
/* 80158E38 00155D78 39 08 00 01 */ addi r8, r8, 1
/* 80158E3C 00155D7C 42 00 FF A0 */ bdnz .L_80158DDC
.L_80158E40:
/* 80158E40 00155D80 38 E7 00 01 */ addi r7, r7, 1
.L_80158E44:
/* 80158E44 00155D84 7C 07 28 00 */ cmpw r7, r5
/* 80158E48 00155D88 40 81 FF 78 */ ble .L_80158DC0
.L_80158E4C:
/* 80158E4C 00155D8C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80158E50 00155D90 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80158E54 00155D94 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80158E58 00155D98 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80158E5C 00155D9C 7C 08 03 A6 */ mtlr r0
/* 80158E60 00155DA0 38 21 00 20 */ addi r1, r1, 0x20
/* 80158E64 00155DA4 4E 80 00 20 */ blr
.global resolveCollision_2__Q24Game4CellFv
resolveCollision_2__Q24Game4CellFv:
/* 80158E68 00155DA8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80158E6C 00155DAC 7C 08 02 A6 */ mflr r0
/* 80158E70 00155DB0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80158E74 00155DB4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80158E78 00155DB8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80158E7C 00155DBC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80158E80 00155DC0 93 81 00 10 */ stw r28, 0x10(r1)
/* 80158E84 00155DC4 7C 7C 1B 78 */ mr r28, r3
/* 80158E88 00155DC8 83 E3 00 1C */ lwz r31, 0x1c(r3)
/* 80158E8C 00155DCC 48 00 00 AC */ b .L_80158F38
.L_80158E90:
/* 80158E90 00155DD0 83 DF 00 00 */ lwz r30, 0(r31)
/* 80158E94 00155DD4 48 00 00 3C */ b .L_80158ED0
.L_80158E98:
/* 80158E98 00155DD8 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158E9C 00155DDC 81 83 00 00 */ lwz r12, 0(r3)
/* 80158EA0 00155DE0 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 80158EA4 00155DE4 7D 89 03 A6 */ mtctr r12
/* 80158EA8 00155DE8 4E 80 04 21 */ bctrl
/* 80158EAC 00155DEC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80158EB0 00155DF0 41 82 00 1C */ beq .L_80158ECC
/* 80158EB4 00155DF4 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158EB8 00155DF8 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 80158EBC 00155DFC 81 83 00 00 */ lwz r12, 0(r3)
/* 80158EC0 00155E00 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80158EC4 00155E04 7D 89 03 A6 */ mtctr r12
/* 80158EC8 00155E08 4E 80 04 21 */ bctrl
.L_80158ECC:
/* 80158ECC 00155E0C 83 DE 00 00 */ lwz r30, 0(r30)
.L_80158ED0:
/* 80158ED0 00155E10 28 1E 00 00 */ cmplwi r30, 0
/* 80158ED4 00155E14 40 82 FF C4 */ bne .L_80158E98
/* 80158ED8 00155E18 83 DC 00 10 */ lwz r30, 0x10(r28)
/* 80158EDC 00155E1C 48 00 00 50 */ b .L_80158F2C
.L_80158EE0:
/* 80158EE0 00155E20 83 BE 00 1C */ lwz r29, 0x1c(r30)
/* 80158EE4 00155E24 48 00 00 3C */ b .L_80158F20
.L_80158EE8:
/* 80158EE8 00155E28 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158EEC 00155E2C 81 83 00 00 */ lwz r12, 0(r3)
/* 80158EF0 00155E30 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 80158EF4 00155E34 7D 89 03 A6 */ mtctr r12
/* 80158EF8 00155E38 4E 80 04 21 */ bctrl
/* 80158EFC 00155E3C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80158F00 00155E40 41 82 00 1C */ beq .L_80158F1C
/* 80158F04 00155E44 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158F08 00155E48 80 9D 00 0C */ lwz r4, 0xc(r29)
/* 80158F0C 00155E4C 81 83 00 00 */ lwz r12, 0(r3)
/* 80158F10 00155E50 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80158F14 00155E54 7D 89 03 A6 */ mtctr r12
/* 80158F18 00155E58 4E 80 04 21 */ bctrl
.L_80158F1C:
/* 80158F1C 00155E5C 83 BD 00 00 */ lwz r29, 0(r29)
.L_80158F20:
/* 80158F20 00155E60 28 1D 00 00 */ cmplwi r29, 0
/* 80158F24 00155E64 40 82 FF C4 */ bne .L_80158EE8
/* 80158F28 00155E68 83 DE 00 10 */ lwz r30, 0x10(r30)
.L_80158F2C:
/* 80158F2C 00155E6C 28 1E 00 00 */ cmplwi r30, 0
/* 80158F30 00155E70 40 82 FF B0 */ bne .L_80158EE0
/* 80158F34 00155E74 83 FF 00 00 */ lwz r31, 0(r31)
.L_80158F38:
/* 80158F38 00155E78 28 1F 00 00 */ cmplwi r31, 0
/* 80158F3C 00155E7C 40 82 FF 54 */ bne .L_80158E90
/* 80158F40 00155E80 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80158F44 00155E84 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80158F48 00155E88 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80158F4C 00155E8C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80158F50 00155E90 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80158F54 00155E94 7C 08 03 A6 */ mtlr r0
/* 80158F58 00155E98 38 21 00 20 */ addi r1, r1, 0x20
/* 80158F5C 00155E9C 4E 80 00 20 */ blr
.global resolveCollision_1__Q24Game4CellFv
resolveCollision_1__Q24Game4CellFv:
/* 80158F60 00155EA0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80158F64 00155EA4 7C 08 02 A6 */ mflr r0
/* 80158F68 00155EA8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80158F6C 00155EAC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80158F70 00155EB0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80158F74 00155EB4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80158F78 00155EB8 93 81 00 10 */ stw r28, 0x10(r1)
/* 80158F7C 00155EBC 7C 7C 1B 78 */ mr r28, r3
/* 80158F80 00155EC0 83 E3 00 1C */ lwz r31, 0x1c(r3)
/* 80158F84 00155EC4 48 00 00 B4 */ b .L_80159038
.L_80158F88:
/* 80158F88 00155EC8 83 DF 00 00 */ lwz r30, 0(r31)
/* 80158F8C 00155ECC 48 00 00 40 */ b .L_80158FCC
.L_80158F90:
/* 80158F90 00155ED0 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158F94 00155ED4 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 80158F98 00155ED8 7C 03 20 40 */ cmplw r3, r4
/* 80158F9C 00155EDC 41 82 00 2C */ beq .L_80158FC8
/* 80158FA0 00155EE0 80 04 00 A4 */ lwz r0, 0xa4(r4)
/* 80158FA4 00155EE4 7C 00 18 40 */ cmplw r0, r3
/* 80158FA8 00155EE8 41 82 00 20 */ beq .L_80158FC8
/* 80158FAC 00155EEC 90 64 00 A4 */ stw r3, 0xa4(r4)
/* 80158FB0 00155EF0 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158FB4 00155EF4 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 80158FB8 00155EF8 81 83 00 00 */ lwz r12, 0(r3)
/* 80158FBC 00155EFC 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80158FC0 00155F00 7D 89 03 A6 */ mtctr r12
/* 80158FC4 00155F04 4E 80 04 21 */ bctrl
.L_80158FC8:
/* 80158FC8 00155F08 83 DE 00 00 */ lwz r30, 0(r30)
.L_80158FCC:
/* 80158FCC 00155F0C 28 1E 00 00 */ cmplwi r30, 0
/* 80158FD0 00155F10 40 82 FF C0 */ bne .L_80158F90
/* 80158FD4 00155F14 83 DC 00 10 */ lwz r30, 0x10(r28)
/* 80158FD8 00155F18 48 00 00 54 */ b .L_8015902C
.L_80158FDC:
/* 80158FDC 00155F1C 83 BE 00 1C */ lwz r29, 0x1c(r30)
/* 80158FE0 00155F20 48 00 00 40 */ b .L_80159020
.L_80158FE4:
/* 80158FE4 00155F24 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80158FE8 00155F28 80 9D 00 0C */ lwz r4, 0xc(r29)
/* 80158FEC 00155F2C 7C 03 20 40 */ cmplw r3, r4
/* 80158FF0 00155F30 41 82 00 2C */ beq .L_8015901C
/* 80158FF4 00155F34 80 04 00 A4 */ lwz r0, 0xa4(r4)
/* 80158FF8 00155F38 7C 00 18 40 */ cmplw r0, r3
/* 80158FFC 00155F3C 41 82 00 20 */ beq .L_8015901C
/* 80159000 00155F40 90 64 00 A4 */ stw r3, 0xa4(r4)
/* 80159004 00155F44 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159008 00155F48 80 9D 00 0C */ lwz r4, 0xc(r29)
/* 8015900C 00155F4C 81 83 00 00 */ lwz r12, 0(r3)
/* 80159010 00155F50 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80159014 00155F54 7D 89 03 A6 */ mtctr r12
/* 80159018 00155F58 4E 80 04 21 */ bctrl
.L_8015901C:
/* 8015901C 00155F5C 83 BD 00 00 */ lwz r29, 0(r29)
.L_80159020:
/* 80159020 00155F60 28 1D 00 00 */ cmplwi r29, 0
/* 80159024 00155F64 40 82 FF C0 */ bne .L_80158FE4
/* 80159028 00155F68 83 DE 00 10 */ lwz r30, 0x10(r30)
.L_8015902C:
/* 8015902C 00155F6C 28 1E 00 00 */ cmplwi r30, 0
/* 80159030 00155F70 40 82 FF AC */ bne .L_80158FDC
/* 80159034 00155F74 83 FF 00 00 */ lwz r31, 0(r31)
.L_80159038:
/* 80159038 00155F78 28 1F 00 00 */ cmplwi r31, 0
/* 8015903C 00155F7C 40 82 FF 4C */ bne .L_80158F88
/* 80159040 00155F80 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80159044 00155F84 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80159048 00155F88 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8015904C 00155F8C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80159050 00155F90 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80159054 00155F94 7C 08 03 A6 */ mtlr r0
/* 80159058 00155F98 38 21 00 20 */ addi r1, r1, 0x20
/* 8015905C 00155F9C 4E 80 00 20 */ blr
.global resolveCollision_3__Q24Game4CellFv
resolveCollision_3__Q24Game4CellFv:
/* 80159060 00155FA0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80159064 00155FA4 7C 08 02 A6 */ mflr r0
/* 80159068 00155FA8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8015906C 00155FAC BF 61 00 0C */ stmw r27, 0xc(r1)
/* 80159070 00155FB0 7C 7E 1B 78 */ mr r30, r3
/* 80159074 00155FB4 83 E3 00 1C */ lwz r31, 0x1c(r3)
/* 80159078 00155FB8 48 00 01 AC */ b .L_80159224
.L_8015907C:
/* 8015907C 00155FBC 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159080 00155FC0 81 83 00 00 */ lwz r12, 0(r3)
/* 80159084 00155FC4 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 80159088 00155FC8 7D 89 03 A6 */ mtctr r12
/* 8015908C 00155FCC 4E 80 04 21 */ bctrl
/* 80159090 00155FD0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80159094 00155FD4 40 82 00 68 */ bne .L_801590FC
/* 80159098 00155FD8 83 7F 00 0C */ lwz r27, 0xc(r31)
/* 8015909C 00155FDC 80 6D 92 C8 */ lwz r3, cellMgr__4Game@sda21(r13)
/* 801590A0 00155FE0 80 9B 00 A4 */ lwz r4, 0xa4(r27)
/* 801590A4 00155FE4 80 03 00 44 */ lwz r0, 0x44(r3)
/* 801590A8 00155FE8 7C 04 00 40 */ cmplw r4, r0
/* 801590AC 00155FEC 41 82 01 74 */ beq .L_80159220
/* 801590B0 00155FF0 3B A0 00 00 */ li r29, 0
/* 801590B4 00155FF4 7F BC EB 78 */ mr r28, r29
/* 801590B8 00155FF8 48 00 00 28 */ b .L_801590E0
.L_801590BC:
/* 801590BC 00155FFC 7F 63 DB 78 */ mr r3, r27
/* 801590C0 00156000 80 9B 00 B0 */ lwz r4, 0xb0(r27)
/* 801590C4 00156004 81 9B 00 00 */ lwz r12, 0(r27)
/* 801590C8 00156008 7C 84 E0 2E */ lwzx r4, r4, r28
/* 801590CC 0015600C 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 801590D0 00156010 7D 89 03 A6 */ mtctr r12
/* 801590D4 00156014 4E 80 04 21 */ bctrl
/* 801590D8 00156018 3B 9C 00 08 */ addi r28, r28, 8
/* 801590DC 0015601C 3B BD 00 01 */ addi r29, r29, 1
.L_801590E0:
/* 801590E0 00156020 80 1B 00 AC */ lwz r0, 0xac(r27)
/* 801590E4 00156024 7C 1D 00 00 */ cmpw r29, r0
/* 801590E8 00156028 41 80 FF D4 */ blt .L_801590BC
/* 801590EC 0015602C 80 6D 92 C8 */ lwz r3, cellMgr__4Game@sda21(r13)
/* 801590F0 00156030 80 03 00 44 */ lwz r0, 0x44(r3)
/* 801590F4 00156034 90 1B 00 A4 */ stw r0, 0xa4(r27)
/* 801590F8 00156038 48 00 01 28 */ b .L_80159220
.L_801590FC:
/* 801590FC 0015603C 83 7F 00 00 */ lwz r27, 0(r31)
/* 80159100 00156040 48 00 00 7C */ b .L_8015917C
.L_80159104:
/* 80159104 00156044 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159108 00156048 80 9B 00 0C */ lwz r4, 0xc(r27)
/* 8015910C 0015604C 7C 03 20 40 */ cmplw r3, r4
/* 80159110 00156050 41 82 00 68 */ beq .L_80159178
/* 80159114 00156054 80 AD 96 08 */ lwz r5, mInstance__12CellMgrParms@sda21(r13)
/* 80159118 00156058 88 05 00 58 */ lbz r0, 0x58(r5)
/* 8015911C 0015605C 28 00 00 00 */ cmplwi r0, 0
/* 80159120 00156060 41 82 00 3C */ beq .L_8015915C
/* 80159124 00156064 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 80159128 00156068 7C 04 00 40 */ cmplw r4, r0
/* 8015912C 0015606C 41 82 00 4C */ beq .L_80159178
/* 80159130 00156070 90 83 00 A4 */ stw r4, 0xa4(r3)
/* 80159134 00156074 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159138 00156078 80 9B 00 0C */ lwz r4, 0xc(r27)
/* 8015913C 0015607C 81 83 00 00 */ lwz r12, 0(r3)
/* 80159140 00156080 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80159144 00156084 7D 89 03 A6 */ mtctr r12
/* 80159148 00156088 4E 80 04 21 */ bctrl
/* 8015914C 0015608C 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159150 00156090 80 9B 00 0C */ lwz r4, 0xc(r27)
/* 80159154 00156094 4B FF DB F5 */ bl updateCollisionBuffer__Q24Game10CellObjectFPQ24Game10CellObject
/* 80159158 00156098 48 00 00 20 */ b .L_80159178
.L_8015915C:
/* 8015915C 0015609C 81 83 00 00 */ lwz r12, 0(r3)
/* 80159160 001560A0 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80159164 001560A4 7D 89 03 A6 */ mtctr r12
/* 80159168 001560A8 4E 80 04 21 */ bctrl
/* 8015916C 001560AC 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159170 001560B0 80 9B 00 0C */ lwz r4, 0xc(r27)
/* 80159174 001560B4 4B FF DB D5 */ bl updateCollisionBuffer__Q24Game10CellObjectFPQ24Game10CellObject
.L_80159178:
/* 80159178 001560B8 83 7B 00 00 */ lwz r27, 0(r27)
.L_8015917C:
/* 8015917C 001560BC 28 1B 00 00 */ cmplwi r27, 0
/* 80159180 001560C0 40 82 FF 84 */ bne .L_80159104
/* 80159184 001560C4 83 7E 00 10 */ lwz r27, 0x10(r30)
/* 80159188 001560C8 48 00 00 90 */ b .L_80159218
.L_8015918C:
/* 8015918C 001560CC 83 9B 00 1C */ lwz r28, 0x1c(r27)
/* 80159190 001560D0 48 00 00 7C */ b .L_8015920C
.L_80159194:
/* 80159194 001560D4 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159198 001560D8 80 9C 00 0C */ lwz r4, 0xc(r28)
/* 8015919C 001560DC 7C 03 20 40 */ cmplw r3, r4
/* 801591A0 001560E0 41 82 00 68 */ beq .L_80159208
/* 801591A4 001560E4 80 AD 96 08 */ lwz r5, mInstance__12CellMgrParms@sda21(r13)
/* 801591A8 001560E8 88 05 00 58 */ lbz r0, 0x58(r5)
/* 801591AC 001560EC 28 00 00 00 */ cmplwi r0, 0
/* 801591B0 001560F0 41 82 00 3C */ beq .L_801591EC
/* 801591B4 001560F4 80 03 00 A4 */ lwz r0, 0xa4(r3)
/* 801591B8 001560F8 7C 00 20 40 */ cmplw r0, r4
/* 801591BC 001560FC 41 82 00 4C */ beq .L_80159208
/* 801591C0 00156100 90 83 00 A4 */ stw r4, 0xa4(r3)
/* 801591C4 00156104 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 801591C8 00156108 80 9C 00 0C */ lwz r4, 0xc(r28)
/* 801591CC 0015610C 81 83 00 00 */ lwz r12, 0(r3)
/* 801591D0 00156110 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 801591D4 00156114 7D 89 03 A6 */ mtctr r12
/* 801591D8 00156118 4E 80 04 21 */ bctrl
/* 801591DC 0015611C 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 801591E0 00156120 80 9C 00 0C */ lwz r4, 0xc(r28)
/* 801591E4 00156124 4B FF DB 65 */ bl updateCollisionBuffer__Q24Game10CellObjectFPQ24Game10CellObject
/* 801591E8 00156128 48 00 00 20 */ b .L_80159208
.L_801591EC:
/* 801591EC 0015612C 81 83 00 00 */ lwz r12, 0(r3)
/* 801591F0 00156130 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 801591F4 00156134 7D 89 03 A6 */ mtctr r12
/* 801591F8 00156138 4E 80 04 21 */ bctrl
/* 801591FC 0015613C 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 80159200 00156140 80 9C 00 0C */ lwz r4, 0xc(r28)
/* 80159204 00156144 4B FF DB 45 */ bl updateCollisionBuffer__Q24Game10CellObjectFPQ24Game10CellObject
.L_80159208:
/* 80159208 00156148 83 9C 00 00 */ lwz r28, 0(r28)
.L_8015920C:
/* 8015920C 0015614C 28 1C 00 00 */ cmplwi r28, 0
/* 80159210 00156150 40 82 FF 84 */ bne .L_80159194
/* 80159214 00156154 83 7B 00 10 */ lwz r27, 0x10(r27)
.L_80159218:
/* 80159218 00156158 28 1B 00 00 */ cmplwi r27, 0
/* 8015921C 0015615C 40 82 FF 70 */ bne .L_8015918C
.L_80159220:
/* 80159220 00156160 83 FF 00 00 */ lwz r31, 0(r31)
.L_80159224:
/* 80159224 00156164 28 1F 00 00 */ cmplwi r31, 0
/* 80159228 00156168 40 82 FE 54 */ bne .L_8015907C
/* 8015922C 0015616C BB 61 00 0C */ lmw r27, 0xc(r1)
/* 80159230 00156170 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80159234 00156174 7C 08 03 A6 */ mtlr r0
/* 80159238 00156178 38 21 00 20 */ addi r1, r1, 0x20
/* 8015923C 0015617C 4E 80 00 20 */ blr
.global invoke__13SweepCallbackFPQ210SweepPrune6ObjectPQ210SweepPrune6Object
invoke__13SweepCallbackFPQ210SweepPrune6ObjectPQ210SweepPrune6Object:
/* 80159240 00156180 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80159244 00156184 7C 08 02 A6 */ mflr r0
/* 80159248 00156188 28 04 00 00 */ cmplwi r4, 0
/* 8015924C 0015618C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80159250 00156190 41 82 00 08 */ beq .L_80159258
/* 80159254 00156194 38 84 FF FC */ addi r4, r4, -4
.L_80159258:
/* 80159258 00156198 28 05 00 00 */ cmplwi r5, 0
/* 8015925C 0015619C 41 82 00 08 */ beq .L_80159264
/* 80159260 001561A0 38 A5 FF FC */ addi r5, r5, -4
.L_80159264:
/* 80159264 001561A4 7C 83 23 78 */ mr r3, r4
/* 80159268 001561A8 7C A4 2B 78 */ mr r4, r5
/* 8015926C 001561AC 81 83 00 00 */ lwz r12, 0(r3)
/* 80159270 001561B0 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80159274 001561B4 7D 89 03 A6 */ mtctr r12
/* 80159278 001561B8 4E 80 04 21 */ bctrl
/* 8015927C 001561BC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80159280 001561C0 7C 08 03 A6 */ mtlr r0
/* 80159284 001561C4 38 21 00 10 */ addi r1, r1, 0x10
/* 80159288 001561C8 4E 80 00 20 */ blr