.include "macros.inc"

.section .data
.balign 8

.global __vt__23CCollidableOBBTreeGroup
__vt__23CCollidableOBBTreeGroup:
	# ROM: 0x3E9470
	.4byte 0
	.4byte 0
	.4byte GetTableIndex__23CCollidableOBBTreeGroupCFv
	.4byte SetMaterial__19CCollisionPrimitiveFRC13CMaterialList
	.4byte GetMaterial__19CCollisionPrimitiveCFv
	.4byte CalculateAABox__23CCollidableOBBTreeGroupCFRC12CTransform4f
	.4byte CalculateLocalAABox__23CCollidableOBBTreeGroupCFv
	.4byte GetPrimType__23CCollidableOBBTreeGroupCFv
	.4byte __dt__23CCollidableOBBTreeGroupFv
	.4byte CastRayInternal__23CCollidableOBBTreeGroupCFRC25CInternalRayCastStructure

.global lbl_803EC498
lbl_803EC498:
	# ROM: 0x3E9498
	.4byte 0
	.4byte 0
	.4byte "__dt__51TObjOwnerDerivedFromIObj<23CCollidableOBBTreeGroup>Fv"
	.4byte 0

.section .sdata
.balign 8

.global lbl_805A8638
lbl_805A8638:
	# ROM: 0x3F5FD8
	.4byte 0xFFFFFFFF
	.4byte 0

.section .text, "ax"

.global GetTableIndex__23CCollidableOBBTreeGroupCFv
GetTableIndex__23CCollidableOBBTreeGroupCFv:
/* 802AC744 002A96A4  80 6D 9A 78 */	lwz r3, lbl_805A8638@sda21(r13)
/* 802AC748 002A96A8  4E 80 00 20 */	blr

.global GetPrimType__23CCollidableOBBTreeGroupCFv
GetPrimType__23CCollidableOBBTreeGroupCFv:
/* 802AC74C 002A96AC  3C 60 4F 42 */	lis r3, 0x4F425447@ha
/* 802AC750 002A96B0  38 63 54 47 */	addi r3, r3, 0x4F425447@l
/* 802AC754 002A96B4  4E 80 00 20 */	blr

.global CalculateLocalAABox__23CCollidableOBBTreeGroupCFv
CalculateLocalAABox__23CCollidableOBBTreeGroupCFv:
/* 802AC758 002A96B8  80 84 00 10 */	lwz r4, 0x10(r4)
/* 802AC75C 002A96BC  C0 04 00 20 */	lfs f0, 0x20(r4)
/* 802AC760 002A96C0  D0 03 00 00 */	stfs f0, 0(r3)
/* 802AC764 002A96C4  C0 04 00 24 */	lfs f0, 0x24(r4)
/* 802AC768 002A96C8  D0 03 00 04 */	stfs f0, 4(r3)
/* 802AC76C 002A96CC  C0 04 00 28 */	lfs f0, 0x28(r4)
/* 802AC770 002A96D0  D0 03 00 08 */	stfs f0, 8(r3)
/* 802AC774 002A96D4  C0 04 00 2C */	lfs f0, 0x2c(r4)
/* 802AC778 002A96D8  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 802AC77C 002A96DC  C0 04 00 30 */	lfs f0, 0x30(r4)
/* 802AC780 002A96E0  D0 03 00 10 */	stfs f0, 0x10(r3)
/* 802AC784 002A96E4  C0 04 00 34 */	lfs f0, 0x34(r4)
/* 802AC788 002A96E8  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 802AC78C 002A96EC  4E 80 00 20 */	blr

.global CalculateAABox__23CCollidableOBBTreeGroupCFRC12CTransform4f
CalculateAABox__23CCollidableOBBTreeGroupCFRC12CTransform4f:
/* 802AC790 002A96F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802AC794 002A96F4  7C 08 02 A6 */	mflr r0
/* 802AC798 002A96F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 802AC79C 002A96FC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AC7A0 002A9700  7C 7F 1B 78 */	mr r31, r3
/* 802AC7A4 002A9704  80 84 00 10 */	lwz r4, 0x10(r4)
/* 802AC7A8 002A9708  38 84 00 20 */	addi r4, r4, 0x20
/* 802AC7AC 002A970C  48 08 B1 51 */	bl GetTransformedAABox__6CAABoxCFRC12CTransform4f
/* 802AC7B0 002A9710  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802AC7B4 002A9714  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802AC7B8 002A9718  7C 08 03 A6 */	mtlr r0
/* 802AC7BC 002A971C  38 21 00 10 */	addi r1, r1, 0x10
/* 802AC7C0 002A9720  4E 80 00 20 */	blr

.global CollideMovingSphere__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo
CollideMovingSphere__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo:
/* 802AC7C4 002A9724  94 21 FD D0 */	stwu r1, -0x230(r1)
/* 802AC7C8 002A9728  7C 08 02 A6 */	mflr r0
/* 802AC7CC 002A972C  90 01 02 34 */	stw r0, 0x234(r1)
/* 802AC7D0 002A9730  DB E1 02 20 */	stfd f31, 0x220(r1)
/* 802AC7D4 002A9734  F3 E1 02 28 */	psq_st f31, 552(r1), 0, qr0
/* 802AC7D8 002A9738  DB C1 02 10 */	stfd f30, 0x210(r1)
/* 802AC7DC 002A973C  F3 C1 02 18 */	psq_st f30, 536(r1), 0, qr0
/* 802AC7E0 002A9740  DB A1 02 00 */	stfd f29, 0x200(r1)
/* 802AC7E4 002A9744  F3 A1 02 08 */	psq_st f29, 520(r1), 0, qr0
/* 802AC7E8 002A9748  BE C1 01 D8 */	stmw r22, 0x1d8(r1)
/* 802AC7EC 002A974C  7C 7C 1B 78 */	mr r28, r3
/* 802AC7F0 002A9750  7C 9D 23 78 */	mr r29, r4
/* 802AC7F4 002A9754  83 03 00 38 */	lwz r24, 0x38(r3)
/* 802AC7F8 002A9758  7C BE 2B 78 */	mr r30, r5
/* 802AC7FC 002A975C  80 83 00 00 */	lwz r4, 0(r3)
/* 802AC800 002A9760  7C DF 33 78 */	mr r31, r6
/* 802AC804 002A9764  38 61 00 28 */	addi r3, r1, 0x28
/* 802AC808 002A9768  38 BC 00 08 */	addi r5, r28, 8
/* 802AC80C 002A976C  48 02 7B 49 */	bl Transform__17CCollidableSphereCFRC12CTransform4f
/* 802AC810 002A9770  C0 61 00 28 */	lfs f3, 0x28(r1)
/* 802AC814 002A9774  38 61 01 A0 */	addi r3, r1, 0x1a0
/* 802AC818 002A9778  C0 41 00 2C */	lfs f2, 0x2c(r1)
/* 802AC81C 002A977C  38 9C 00 40 */	addi r4, r28, 0x40
/* 802AC820 002A9780  C0 21 00 30 */	lfs f1, 0x30(r1)
/* 802AC824 002A9784  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 802AC828 002A9788  D0 61 00 38 */	stfs f3, 0x38(r1)
/* 802AC82C 002A978C  D0 41 00 3C */	stfs f2, 0x3c(r1)
/* 802AC830 002A9790  D0 21 00 40 */	stfs f1, 0x40(r1)
/* 802AC834 002A9794  D0 01 00 44 */	stfs f0, 0x44(r1)
/* 802AC838 002A9798  48 06 63 3D */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AC83C 002A979C  38 61 00 D4 */	addi r3, r1, 0xd4
/* 802AC840 002A97A0  38 81 01 A0 */	addi r4, r1, 0x1a0
/* 802AC844 002A97A4  48 06 64 59 */	bl GetQuickInverse__12CTransform4fCFv
/* 802AC848 002A97A8  38 61 01 04 */	addi r3, r1, 0x104
/* 802AC84C 002A97AC  38 81 00 D4 */	addi r4, r1, 0xd4
/* 802AC850 002A97B0  38 BC 00 08 */	addi r5, r28, 8
/* 802AC854 002A97B4  48 06 60 FD */	bl __ml__12CTransform4fCFRC12CTransform4f
/* 802AC858 002A97B8  38 61 01 70 */	addi r3, r1, 0x170
/* 802AC85C 002A97BC  38 81 01 04 */	addi r4, r1, 0x104
/* 802AC860 002A97C0  48 06 63 15 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AC864 002A97C4  80 9C 00 00 */	lwz r4, 0(r28)
/* 802AC868 002A97C8  38 61 00 48 */	addi r3, r1, 0x48
/* 802AC86C 002A97CC  81 84 00 00 */	lwz r12, 0(r4)
/* 802AC870 002A97D0  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 802AC874 002A97D4  7D 89 03 A6 */	mtctr r12
/* 802AC878 002A97D8  4E 80 04 21 */	bctrl
/* 802AC87C 002A97DC  C0 41 00 48 */	lfs f2, 0x48(r1)
/* 802AC880 002A97E0  38 61 00 80 */	addi r3, r1, 0x80
/* 802AC884 002A97E4  C0 21 00 4C */	lfs f1, 0x4c(r1)
/* 802AC888 002A97E8  38 81 00 1C */	addi r4, r1, 0x1c
/* 802AC88C 002A97EC  C0 01 00 50 */	lfs f0, 0x50(r1)
/* 802AC890 002A97F0  C0 A1 00 54 */	lfs f5, 0x54(r1)
/* 802AC894 002A97F4  C0 81 00 58 */	lfs f4, 0x58(r1)
/* 802AC898 002A97F8  C0 61 00 5C */	lfs f3, 0x5c(r1)
/* 802AC89C 002A97FC  D0 41 00 80 */	stfs f2, 0x80(r1)
/* 802AC8A0 002A9800  C0 5D 00 00 */	lfs f2, 0(r29)
/* 802AC8A4 002A9804  D0 21 00 84 */	stfs f1, 0x84(r1)
/* 802AC8A8 002A9808  C0 3D 00 04 */	lfs f1, 4(r29)
/* 802AC8AC 002A980C  D0 01 00 88 */	stfs f0, 0x88(r1)
/* 802AC8B0 002A9810  C0 1D 00 08 */	lfs f0, 8(r29)
/* 802AC8B4 002A9814  D0 A1 00 8C */	stfs f5, 0x8c(r1)
/* 802AC8B8 002A9818  D0 81 00 90 */	stfs f4, 0x90(r1)
/* 802AC8BC 002A981C  D0 61 00 94 */	stfs f3, 0x94(r1)
/* 802AC8C0 002A9820  C8 DE 00 00 */	lfd f6, 0(r30)
/* 802AC8C4 002A9824  FC C0 30 18 */	frsp f6, f6
/* 802AC8C8 002A9828  EF A6 00 B2 */	fmuls f29, f6, f2
/* 802AC8CC 002A982C  EF C6 00 72 */	fmuls f30, f6, f1
/* 802AC8D0 002A9830  EF E6 00 32 */	fmuls f31, f6, f0
/* 802AC8D4 002A9834  EC 05 E8 2A */	fadds f0, f5, f29
/* 802AC8D8 002A9838  EC 44 F0 2A */	fadds f2, f4, f30
/* 802AC8DC 002A983C  EC 23 F8 2A */	fadds f1, f3, f31
/* 802AC8E0 002A9840  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 802AC8E4 002A9844  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 802AC8E8 002A9848  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 802AC8EC 002A984C  48 08 B2 1D */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802AC8F0 002A9850  C0 41 00 84 */	lfs f2, 0x84(r1)
/* 802AC8F4 002A9854  38 61 00 80 */	addi r3, r1, 0x80
/* 802AC8F8 002A9858  C0 21 00 88 */	lfs f1, 0x88(r1)
/* 802AC8FC 002A985C  38 81 00 10 */	addi r4, r1, 0x10
/* 802AC900 002A9860  C0 01 00 80 */	lfs f0, 0x80(r1)
/* 802AC904 002A9864  EC 42 F0 2A */	fadds f2, f2, f30
/* 802AC908 002A9868  EC 21 F8 2A */	fadds f1, f1, f31
/* 802AC90C 002A986C  EC 00 E8 2A */	fadds f0, f0, f29
/* 802AC910 002A9870  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 802AC914 002A9874  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 802AC918 002A9878  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 802AC91C 002A987C  48 08 B1 ED */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802AC920 002A9880  38 61 00 98 */	addi r3, r1, 0x98
/* 802AC924 002A9884  38 81 00 80 */	addi r4, r1, 0x80
/* 802AC928 002A9888  38 A1 01 70 */	addi r5, r1, 0x170
/* 802AC92C 002A988C  48 02 93 F1 */	bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802AC930 002A9890  38 61 01 34 */	addi r3, r1, 0x134
/* 802AC934 002A9894  38 81 00 98 */	addi r4, r1, 0x98
/* 802AC938 002A9898  48 06 62 3D */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AC93C 002A989C  C0 41 00 C8 */	lfs f2, 0xc8(r1)
/* 802AC940 002A98A0  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802AC944 002A98A4  C0 21 00 CC */	lfs f1, 0xcc(r1)
/* 802AC948 002A98A8  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802AC94C 002A98AC  C0 01 00 D0 */	lfs f0, 0xd0(r1)
/* 802AC950 002A98B0  3B 44 C4 48 */	addi r26, r4, lbl_803EC448@l
/* 802AC954 002A98B4  D0 41 01 64 */	stfs f2, 0x164(r1)
/* 802AC958 002A98B8  3B 63 97 E4 */	addi r27, r3, __vt__19CCollisionPrimitive@l
/* 802AC95C 002A98BC  3A E0 00 00 */	li r23, 0
/* 802AC960 002A98C0  3A C0 00 00 */	li r22, 0
/* 802AC964 002A98C4  D0 21 01 68 */	stfs f1, 0x168(r1)
/* 802AC968 002A98C8  D0 01 01 6C */	stfs f0, 0x16c(r1)
/* 802AC96C 002A98CC  48 00 00 9C */	b lbl_802ACA08
lbl_802AC970:
/* 802AC970 002A98D0  7F 03 C3 78 */	mr r3, r24
/* 802AC974 002A98D4  81 98 00 00 */	lwz r12, 0(r24)
/* 802AC978 002A98D8  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AC97C 002A98DC  7D 89 03 A6 */	mtctr r12
/* 802AC980 002A98E0  4E 80 04 21 */	bctrl
/* 802AC984 002A98E4  7C 79 1B 78 */	mr r25, r3
/* 802AC988 002A98E8  7F 03 C3 78 */	mr r3, r24
/* 802AC98C 002A98EC  7E C4 B3 78 */	mr r4, r22
/* 802AC990 002A98F0  48 00 0F BD */	bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
/* 802AC994 002A98F4  7C 64 1B 78 */	mr r4, r3
/* 802AC998 002A98F8  7F 25 CB 78 */	mr r5, r25
/* 802AC99C 002A98FC  38 61 00 60 */	addi r3, r1, 0x60
/* 802AC9A0 002A9900  4B FF FD 45 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802AC9A4 002A9904  4B FF A6 9D */	bl ResetInternalCounters__20CMetroidAreaColliderFv
/* 802AC9A8 002A9908  80 7C 00 00 */	lwz r3, 0(r28)
/* 802AC9AC 002A990C  80 81 00 70 */	lwz r4, 0x70(r1)
/* 802AC9B0 002A9910  81 83 00 00 */	lwz r12, 0(r3)
/* 802AC9B4 002A9914  83 24 00 88 */	lwz r25, 0x88(r4)
/* 802AC9B8 002A9918  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AC9BC 002A991C  7D 89 03 A6 */	mtctr r12
/* 802AC9C0 002A9920  4E 80 04 21 */	bctrl
/* 802AC9C4 002A9924  93 C1 00 08 */	stw r30, 8(r1)
/* 802AC9C8 002A9928  7C 68 1B 78 */	mr r8, r3
/* 802AC9CC 002A992C  7F 24 CB 78 */	mr r4, r25
/* 802AC9D0 002A9930  7F AA EB 78 */	mr r10, r29
/* 802AC9D4 002A9934  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AC9D8 002A9938  38 61 00 60 */	addi r3, r1, 0x60
/* 802AC9DC 002A993C  38 A1 01 A0 */	addi r5, r1, 0x1a0
/* 802AC9E0 002A9940  38 C1 00 38 */	addi r6, r1, 0x38
/* 802AC9E4 002A9944  81 3C 00 04 */	lwz r9, 4(r28)
/* 802AC9E8 002A9948  38 E1 01 34 */	addi r7, r1, 0x134
/* 802AC9EC 002A994C  4B FF E7 59 */	bl SphereCollisionMoving__18CCollidableOBBTreeCFRCQ28COBBTree5CNodeRC12CTransform4fRC7CSphereRC6COBBoxRC13CMaterialListRC15CMaterialFilterRC9CVector3fRdR14CCollisionInfo
/* 802AC9F0 002A9950  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802AC9F4 002A9954  41 82 00 08 */	beq lbl_802AC9FC
/* 802AC9F8 002A9958  3A E0 00 01 */	li r23, 1
lbl_802AC9FC:
/* 802AC9FC 002A995C  93 41 00 60 */	stw r26, 0x60(r1)
/* 802ACA00 002A9960  3A D6 00 01 */	addi r22, r22, 1
/* 802ACA04 002A9964  93 61 00 60 */	stw r27, 0x60(r1)
lbl_802ACA08:
/* 802ACA08 002A9968  80 78 00 10 */	lwz r3, 0x10(r24)
/* 802ACA0C 002A996C  80 03 00 04 */	lwz r0, 4(r3)
/* 802ACA10 002A9970  7C 16 00 00 */	cmpw r22, r0
/* 802ACA14 002A9974  41 80 FF 5C */	blt lbl_802AC970
/* 802ACA18 002A9978  7E E3 BB 78 */	mr r3, r23
/* 802ACA1C 002A997C  E3 E1 02 28 */	psq_l f31, 552(r1), 0, qr0
/* 802ACA20 002A9980  CB E1 02 20 */	lfd f31, 0x220(r1)
/* 802ACA24 002A9984  E3 C1 02 18 */	psq_l f30, 536(r1), 0, qr0
/* 802ACA28 002A9988  CB C1 02 10 */	lfd f30, 0x210(r1)
/* 802ACA2C 002A998C  E3 A1 02 08 */	psq_l f29, 520(r1), 0, qr0
/* 802ACA30 002A9990  CB A1 02 00 */	lfd f29, 0x200(r1)
/* 802ACA34 002A9994  BA C1 01 D8 */	lmw r22, 0x1d8(r1)
/* 802ACA38 002A9998  80 01 02 34 */	lwz r0, 0x234(r1)
/* 802ACA3C 002A999C  7C 08 03 A6 */	mtlr r0
/* 802ACA40 002A99A0  38 21 02 30 */	addi r1, r1, 0x230
/* 802ACA44 002A99A4  4E 80 00 20 */	blr

.global CollideMovingAABox__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo
CollideMovingAABox__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureRC9CVector3fRdR14CCollisionInfo:
/* 802ACA48 002A99A8  94 21 F6 C0 */	stwu r1, -0x940(r1)
/* 802ACA4C 002A99AC  7C 08 02 A6 */	mflr r0
/* 802ACA50 002A99B0  90 01 09 44 */	stw r0, 0x944(r1)
/* 802ACA54 002A99B4  DB E1 09 30 */	stfd f31, 0x930(r1)
/* 802ACA58 002A99B8  F3 E1 09 38 */	psq_st f31, -1736(r1), 0, qr0
/* 802ACA5C 002A99BC  DB C1 09 20 */	stfd f30, 0x920(r1)
/* 802ACA60 002A99C0  F3 C1 09 28 */	psq_st f30, -1752(r1), 0, qr0
/* 802ACA64 002A99C4  DB A1 09 10 */	stfd f29, 0x910(r1)
/* 802ACA68 002A99C8  F3 A1 09 18 */	psq_st f29, -1768(r1), 0, qr0
/* 802ACA6C 002A99CC  BE C1 08 E8 */	stmw r22, 0x8e8(r1)
/* 802ACA70 002A99D0  7C 7A 1B 78 */	mr r26, r3
/* 802ACA74 002A99D4  7C 9B 23 78 */	mr r27, r4
/* 802ACA78 002A99D8  80 83 00 00 */	lwz r4, 0(r3)
/* 802ACA7C 002A99DC  7C BC 2B 78 */	mr r28, r5
/* 802ACA80 002A99E0  7C DD 33 78 */	mr r29, r6
/* 802ACA84 002A99E4  38 61 00 48 */	addi r3, r1, 0x48
/* 802ACA88 002A99E8  81 84 00 00 */	lwz r12, 0(r4)
/* 802ACA8C 002A99EC  38 BA 00 08 */	addi r5, r26, 8
/* 802ACA90 002A99F0  83 FA 00 38 */	lwz r31, 0x38(r26)
/* 802ACA94 002A99F4  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 802ACA98 002A99F8  7D 89 03 A6 */	mtctr r12
/* 802ACA9C 002A99FC  4E 80 04 21 */	bctrl
/* 802ACAA0 002A9A00  C0 A1 00 48 */	lfs f5, 0x48(r1)
/* 802ACAA4 002A9A04  38 61 01 B8 */	addi r3, r1, 0x1b8
/* 802ACAA8 002A9A08  C0 81 00 4C */	lfs f4, 0x4c(r1)
/* 802ACAAC 002A9A0C  38 9A 00 40 */	addi r4, r26, 0x40
/* 802ACAB0 002A9A10  C0 61 00 50 */	lfs f3, 0x50(r1)
/* 802ACAB4 002A9A14  C0 41 00 54 */	lfs f2, 0x54(r1)
/* 802ACAB8 002A9A18  C0 21 00 58 */	lfs f1, 0x58(r1)
/* 802ACABC 002A9A1C  C0 01 00 5C */	lfs f0, 0x5c(r1)
/* 802ACAC0 002A9A20  D0 A1 00 98 */	stfs f5, 0x98(r1)
/* 802ACAC4 002A9A24  D0 81 00 9C */	stfs f4, 0x9c(r1)
/* 802ACAC8 002A9A28  D0 61 00 A0 */	stfs f3, 0xa0(r1)
/* 802ACACC 002A9A2C  D0 41 00 A4 */	stfs f2, 0xa4(r1)
/* 802ACAD0 002A9A30  D0 21 00 A8 */	stfs f1, 0xa8(r1)
/* 802ACAD4 002A9A34  D0 01 00 AC */	stfs f0, 0xac(r1)
/* 802ACAD8 002A9A38  48 06 60 9D */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACADC 002A9A3C  38 61 00 EC */	addi r3, r1, 0xec
/* 802ACAE0 002A9A40  38 81 01 B8 */	addi r4, r1, 0x1b8
/* 802ACAE4 002A9A44  48 06 61 B9 */	bl GetQuickInverse__12CTransform4fCFv
/* 802ACAE8 002A9A48  38 61 01 1C */	addi r3, r1, 0x11c
/* 802ACAEC 002A9A4C  38 81 00 EC */	addi r4, r1, 0xec
/* 802ACAF0 002A9A50  38 BA 00 08 */	addi r5, r26, 8
/* 802ACAF4 002A9A54  48 06 5E 5D */	bl __ml__12CTransform4fCFRC12CTransform4f
/* 802ACAF8 002A9A58  38 61 01 88 */	addi r3, r1, 0x188
/* 802ACAFC 002A9A5C  38 81 01 1C */	addi r4, r1, 0x11c
/* 802ACB00 002A9A60  48 06 60 75 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACB04 002A9A64  7F 65 DB 78 */	mr r5, r27
/* 802ACB08 002A9A68  38 61 01 E8 */	addi r3, r1, 0x1e8
/* 802ACB0C 002A9A6C  38 81 00 98 */	addi r4, r1, 0x98
/* 802ACB10 002A9A70  4B FF 65 8D */	bl __ct__Q220CMetroidAreaCollider22CMovingAABoxComponentsFRC6CAABoxRC9CVector3f
/* 802ACB14 002A9A74  80 9A 00 00 */	lwz r4, 0(r26)
/* 802ACB18 002A9A78  38 61 00 30 */	addi r3, r1, 0x30
/* 802ACB1C 002A9A7C  81 84 00 00 */	lwz r12, 0(r4)
/* 802ACB20 002A9A80  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 802ACB24 002A9A84  7D 89 03 A6 */	mtctr r12
/* 802ACB28 002A9A88  4E 80 04 21 */	bctrl
/* 802ACB2C 002A9A8C  C0 41 00 30 */	lfs f2, 0x30(r1)
/* 802ACB30 002A9A90  38 61 00 80 */	addi r3, r1, 0x80
/* 802ACB34 002A9A94  C0 21 00 34 */	lfs f1, 0x34(r1)
/* 802ACB38 002A9A98  38 81 00 24 */	addi r4, r1, 0x24
/* 802ACB3C 002A9A9C  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 802ACB40 002A9AA0  C0 A1 00 3C */	lfs f5, 0x3c(r1)
/* 802ACB44 002A9AA4  C0 81 00 40 */	lfs f4, 0x40(r1)
/* 802ACB48 002A9AA8  C0 61 00 44 */	lfs f3, 0x44(r1)
/* 802ACB4C 002A9AAC  D0 41 00 80 */	stfs f2, 0x80(r1)
/* 802ACB50 002A9AB0  C0 5B 00 00 */	lfs f2, 0(r27)
/* 802ACB54 002A9AB4  D0 21 00 84 */	stfs f1, 0x84(r1)
/* 802ACB58 002A9AB8  C0 3B 00 04 */	lfs f1, 4(r27)
/* 802ACB5C 002A9ABC  D0 01 00 88 */	stfs f0, 0x88(r1)
/* 802ACB60 002A9AC0  C0 1B 00 08 */	lfs f0, 8(r27)
/* 802ACB64 002A9AC4  D0 A1 00 8C */	stfs f5, 0x8c(r1)
/* 802ACB68 002A9AC8  D0 81 00 90 */	stfs f4, 0x90(r1)
/* 802ACB6C 002A9ACC  D0 61 00 94 */	stfs f3, 0x94(r1)
/* 802ACB70 002A9AD0  C8 DC 00 00 */	lfd f6, 0(r28)
/* 802ACB74 002A9AD4  FC C0 30 18 */	frsp f6, f6
/* 802ACB78 002A9AD8  EF A6 00 B2 */	fmuls f29, f6, f2
/* 802ACB7C 002A9ADC  EF C6 00 72 */	fmuls f30, f6, f1
/* 802ACB80 002A9AE0  EF E6 00 32 */	fmuls f31, f6, f0
/* 802ACB84 002A9AE4  EC 05 E8 2A */	fadds f0, f5, f29
/* 802ACB88 002A9AE8  EC 44 F0 2A */	fadds f2, f4, f30
/* 802ACB8C 002A9AEC  EC 23 F8 2A */	fadds f1, f3, f31
/* 802ACB90 002A9AF0  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 802ACB94 002A9AF4  D0 41 00 28 */	stfs f2, 0x28(r1)
/* 802ACB98 002A9AF8  D0 21 00 2C */	stfs f1, 0x2c(r1)
/* 802ACB9C 002A9AFC  48 08 AF 6D */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802ACBA0 002A9B00  C0 41 00 84 */	lfs f2, 0x84(r1)
/* 802ACBA4 002A9B04  38 61 00 80 */	addi r3, r1, 0x80
/* 802ACBA8 002A9B08  C0 21 00 88 */	lfs f1, 0x88(r1)
/* 802ACBAC 002A9B0C  38 81 00 18 */	addi r4, r1, 0x18
/* 802ACBB0 002A9B10  C0 01 00 80 */	lfs f0, 0x80(r1)
/* 802ACBB4 002A9B14  EC 42 F0 2A */	fadds f2, f2, f30
/* 802ACBB8 002A9B18  EC 21 F8 2A */	fadds f1, f1, f31
/* 802ACBBC 002A9B1C  EC 00 E8 2A */	fadds f0, f0, f29
/* 802ACBC0 002A9B20  D0 41 00 1C */	stfs f2, 0x1c(r1)
/* 802ACBC4 002A9B24  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 802ACBC8 002A9B28  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 802ACBCC 002A9B2C  48 08 AF 3D */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802ACBD0 002A9B30  38 61 00 B0 */	addi r3, r1, 0xb0
/* 802ACBD4 002A9B34  38 81 00 80 */	addi r4, r1, 0x80
/* 802ACBD8 002A9B38  38 A1 01 88 */	addi r5, r1, 0x188
/* 802ACBDC 002A9B3C  48 02 91 41 */	bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802ACBE0 002A9B40  38 61 01 4C */	addi r3, r1, 0x14c
/* 802ACBE4 002A9B44  38 81 00 B0 */	addi r4, r1, 0xb0
/* 802ACBE8 002A9B48  48 06 5F 8D */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACBEC 002A9B4C  C0 41 00 E0 */	lfs f2, 0xe0(r1)
/* 802ACBF0 002A9B50  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802ACBF4 002A9B54  C0 21 00 E4 */	lfs f1, 0xe4(r1)
/* 802ACBF8 002A9B58  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802ACBFC 002A9B5C  C0 01 00 E8 */	lfs f0, 0xe8(r1)
/* 802ACC00 002A9B60  3B 04 C4 48 */	addi r24, r4, lbl_803EC448@l
/* 802ACC04 002A9B64  D0 41 01 7C */	stfs f2, 0x17c(r1)
/* 802ACC08 002A9B68  3B 23 97 E4 */	addi r25, r3, __vt__19CCollisionPrimitive@l
/* 802ACC0C 002A9B6C  3B C0 00 00 */	li r30, 0
/* 802ACC10 002A9B70  3A C0 00 00 */	li r22, 0
/* 802ACC14 002A9B74  D0 21 01 80 */	stfs f1, 0x180(r1)
/* 802ACC18 002A9B78  D0 01 01 84 */	stfs f0, 0x184(r1)
/* 802ACC1C 002A9B7C  48 00 00 A0 */	b lbl_802ACCBC
lbl_802ACC20:
/* 802ACC20 002A9B80  7F E3 FB 78 */	mr r3, r31
/* 802ACC24 002A9B84  81 9F 00 00 */	lwz r12, 0(r31)
/* 802ACC28 002A9B88  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802ACC2C 002A9B8C  7D 89 03 A6 */	mtctr r12
/* 802ACC30 002A9B90  4E 80 04 21 */	bctrl
/* 802ACC34 002A9B94  7C 77 1B 78 */	mr r23, r3
/* 802ACC38 002A9B98  7F E3 FB 78 */	mr r3, r31
/* 802ACC3C 002A9B9C  7E C4 B3 78 */	mr r4, r22
/* 802ACC40 002A9BA0  48 00 0D 0D */	bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
/* 802ACC44 002A9BA4  7C 64 1B 78 */	mr r4, r3
/* 802ACC48 002A9BA8  7E E5 BB 78 */	mr r5, r23
/* 802ACC4C 002A9BAC  38 61 00 60 */	addi r3, r1, 0x60
/* 802ACC50 002A9BB0  4B FF FA 95 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802ACC54 002A9BB4  4B FF A3 ED */	bl ResetInternalCounters__20CMetroidAreaColliderFv
/* 802ACC58 002A9BB8  80 7A 00 00 */	lwz r3, 0(r26)
/* 802ACC5C 002A9BBC  80 81 00 70 */	lwz r4, 0x70(r1)
/* 802ACC60 002A9BC0  81 83 00 00 */	lwz r12, 0(r3)
/* 802ACC64 002A9BC4  82 E4 00 88 */	lwz r23, 0x88(r4)
/* 802ACC68 002A9BC8  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802ACC6C 002A9BCC  7D 89 03 A6 */	mtctr r12
/* 802ACC70 002A9BD0  4E 80 04 21 */	bctrl
/* 802ACC74 002A9BD4  93 61 00 08 */	stw r27, 8(r1)
/* 802ACC78 002A9BD8  7C 68 1B 78 */	mr r8, r3
/* 802ACC7C 002A9BDC  7E E4 BB 78 */	mr r4, r23
/* 802ACC80 002A9BE0  38 61 00 60 */	addi r3, r1, 0x60
/* 802ACC84 002A9BE4  93 81 00 0C */	stw r28, 0xc(r1)
/* 802ACC88 002A9BE8  38 A1 01 B8 */	addi r5, r1, 0x1b8
/* 802ACC8C 002A9BEC  38 C1 00 98 */	addi r6, r1, 0x98
/* 802ACC90 002A9BF0  38 E1 01 4C */	addi r7, r1, 0x14c
/* 802ACC94 002A9BF4  93 A1 00 10 */	stw r29, 0x10(r1)
/* 802ACC98 002A9BF8  39 41 01 E8 */	addi r10, r1, 0x1e8
/* 802ACC9C 002A9BFC  81 3A 00 04 */	lwz r9, 4(r26)
/* 802ACCA0 002A9C00  4B FF ED CD */	bl AABoxCollisionMoving__18CCollidableOBBTreeCFRCQ28COBBTree5CNodeRC12CTransform4fRC6CAABoxRC6COBBoxRC13CMaterialListRC15CMaterialFilterRCQ220CMetroidAreaCollider22CMovingAABoxComponentsRC9CVector3fRdR14CCollisionInfo
/* 802ACCA4 002A9C04  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802ACCA8 002A9C08  41 82 00 08 */	beq lbl_802ACCB0
/* 802ACCAC 002A9C0C  3B C0 00 01 */	li r30, 1
lbl_802ACCB0:
/* 802ACCB0 002A9C10  93 01 00 60 */	stw r24, 0x60(r1)
/* 802ACCB4 002A9C14  3A D6 00 01 */	addi r22, r22, 1
/* 802ACCB8 002A9C18  93 21 00 60 */	stw r25, 0x60(r1)
lbl_802ACCBC:
/* 802ACCBC 002A9C1C  80 7F 00 10 */	lwz r3, 0x10(r31)
/* 802ACCC0 002A9C20  80 03 00 04 */	lwz r0, 4(r3)
/* 802ACCC4 002A9C24  7C 16 00 00 */	cmpw r22, r0
/* 802ACCC8 002A9C28  41 80 FF 58 */	blt lbl_802ACC20
/* 802ACCCC 002A9C2C  34 A1 08 AC */	addic. r5, r1, 0x8ac
/* 802ACCD0 002A9C30  41 82 00 58 */	beq lbl_802ACD28
/* 802ACCD4 002A9C34  80 C5 00 00 */	lwz r6, 0(r5)
/* 802ACCD8 002A9C38  38 60 00 00 */	li r3, 0
/* 802ACCDC 002A9C3C  2C 06 00 00 */	cmpwi r6, 0
/* 802ACCE0 002A9C40  40 81 00 40 */	ble lbl_802ACD20
/* 802ACCE4 002A9C44  2C 06 00 08 */	cmpwi r6, 8
/* 802ACCE8 002A9C48  38 86 FF F8 */	addi r4, r6, -8
/* 802ACCEC 002A9C4C  40 81 00 20 */	ble lbl_802ACD0C
/* 802ACCF0 002A9C50  38 04 00 07 */	addi r0, r4, 7
/* 802ACCF4 002A9C54  54 00 E8 FE */	srwi r0, r0, 3
/* 802ACCF8 002A9C58  7C 09 03 A6 */	mtctr r0
/* 802ACCFC 002A9C5C  2C 04 00 00 */	cmpwi r4, 0
/* 802ACD00 002A9C60  40 81 00 0C */	ble lbl_802ACD0C
lbl_802ACD04:
/* 802ACD04 002A9C64  38 63 00 08 */	addi r3, r3, 8
/* 802ACD08 002A9C68  42 00 FF FC */	bdnz lbl_802ACD04
lbl_802ACD0C:
/* 802ACD0C 002A9C6C  7C 03 30 50 */	subf r0, r3, r6
/* 802ACD10 002A9C70  7C 09 03 A6 */	mtctr r0
/* 802ACD14 002A9C74  7C 03 30 00 */	cmpw r3, r6
/* 802ACD18 002A9C78  40 80 00 08 */	bge lbl_802ACD20
lbl_802ACD1C:
/* 802ACD1C 002A9C7C  42 00 00 00 */	bdnz lbl_802ACD1C
lbl_802ACD20:
/* 802ACD20 002A9C80  38 00 00 00 */	li r0, 0
/* 802ACD24 002A9C84  90 05 00 00 */	stw r0, 0(r5)
lbl_802ACD28:
/* 802ACD28 002A9C88  80 A1 01 E8 */	lwz r5, 0x1e8(r1)
/* 802ACD2C 002A9C8C  38 60 00 00 */	li r3, 0
/* 802ACD30 002A9C90  2C 05 00 00 */	cmpwi r5, 0
/* 802ACD34 002A9C94  40 81 00 40 */	ble lbl_802ACD74
/* 802ACD38 002A9C98  2C 05 00 08 */	cmpwi r5, 8
/* 802ACD3C 002A9C9C  38 85 FF F8 */	addi r4, r5, -8
/* 802ACD40 002A9CA0  40 81 00 20 */	ble lbl_802ACD60
/* 802ACD44 002A9CA4  38 04 00 07 */	addi r0, r4, 7
/* 802ACD48 002A9CA8  54 00 E8 FE */	srwi r0, r0, 3
/* 802ACD4C 002A9CAC  7C 09 03 A6 */	mtctr r0
/* 802ACD50 002A9CB0  2C 04 00 00 */	cmpwi r4, 0
/* 802ACD54 002A9CB4  40 81 00 0C */	ble lbl_802ACD60
lbl_802ACD58:
/* 802ACD58 002A9CB8  38 63 00 08 */	addi r3, r3, 8
/* 802ACD5C 002A9CBC  42 00 FF FC */	bdnz lbl_802ACD58
lbl_802ACD60:
/* 802ACD60 002A9CC0  7C 03 28 50 */	subf r0, r3, r5
/* 802ACD64 002A9CC4  7C 09 03 A6 */	mtctr r0
/* 802ACD68 002A9CC8  7C 03 28 00 */	cmpw r3, r5
/* 802ACD6C 002A9CCC  40 80 00 08 */	bge lbl_802ACD74
lbl_802ACD70:
/* 802ACD70 002A9CD0  42 00 00 00 */	bdnz lbl_802ACD70
lbl_802ACD74:
/* 802ACD74 002A9CD4  38 00 00 00 */	li r0, 0
/* 802ACD78 002A9CD8  7F C3 F3 78 */	mr r3, r30
/* 802ACD7C 002A9CDC  90 01 01 E8 */	stw r0, 0x1e8(r1)
/* 802ACD80 002A9CE0  E3 E1 09 38 */	psq_l f31, -1736(r1), 0, qr0
/* 802ACD84 002A9CE4  CB E1 09 30 */	lfd f31, 0x930(r1)
/* 802ACD88 002A9CE8  E3 C1 09 28 */	psq_l f30, -1752(r1), 0, qr0
/* 802ACD8C 002A9CEC  CB C1 09 20 */	lfd f30, 0x920(r1)
/* 802ACD90 002A9CF0  E3 A1 09 18 */	psq_l f29, -1768(r1), 0, qr0
/* 802ACD94 002A9CF4  CB A1 09 10 */	lfd f29, 0x910(r1)
/* 802ACD98 002A9CF8  BA C1 08 E8 */	lmw r22, 0x8e8(r1)
/* 802ACD9C 002A9CFC  80 01 09 44 */	lwz r0, 0x944(r1)
/* 802ACDA0 002A9D00  7C 08 03 A6 */	mtlr r0
/* 802ACDA4 002A9D04  38 21 09 40 */	addi r1, r1, 0x940
/* 802ACDA8 002A9D08  4E 80 00 20 */	blr

.global SphereCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure
SphereCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure:
/* 802ACDAC 002A9D0C  94 21 FE 50 */	stwu r1, -0x1b0(r1)
/* 802ACDB0 002A9D10  7C 08 02 A6 */	mflr r0
/* 802ACDB4 002A9D14  90 01 01 B4 */	stw r0, 0x1b4(r1)
/* 802ACDB8 002A9D18  BF 41 01 98 */	stmw r26, 0x198(r1)
/* 802ACDBC 002A9D1C  7C 7A 1B 78 */	mr r26, r3
/* 802ACDC0 002A9D20  38 61 00 08 */	addi r3, r1, 8
/* 802ACDC4 002A9D24  38 BA 00 08 */	addi r5, r26, 8
/* 802ACDC8 002A9D28  83 BA 00 00 */	lwz r29, 0(r26)
/* 802ACDCC 002A9D2C  83 9A 00 38 */	lwz r28, 0x38(r26)
/* 802ACDD0 002A9D30  7F A4 EB 78 */	mr r4, r29
/* 802ACDD4 002A9D34  48 02 75 81 */	bl Transform__17CCollidableSphereCFRC12CTransform4f
/* 802ACDD8 002A9D38  C0 61 00 08 */	lfs f3, 8(r1)
/* 802ACDDC 002A9D3C  38 61 01 68 */	addi r3, r1, 0x168
/* 802ACDE0 002A9D40  C0 41 00 0C */	lfs f2, 0xc(r1)
/* 802ACDE4 002A9D44  38 9A 00 40 */	addi r4, r26, 0x40
/* 802ACDE8 002A9D48  C0 21 00 10 */	lfs f1, 0x10(r1)
/* 802ACDEC 002A9D4C  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 802ACDF0 002A9D50  D0 61 00 18 */	stfs f3, 0x18(r1)
/* 802ACDF4 002A9D54  D0 41 00 1C */	stfs f2, 0x1c(r1)
/* 802ACDF8 002A9D58  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 802ACDFC 002A9D5C  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 802ACE00 002A9D60  48 06 5D 75 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACE04 002A9D64  38 61 00 9C */	addi r3, r1, 0x9c
/* 802ACE08 002A9D68  38 81 01 68 */	addi r4, r1, 0x168
/* 802ACE0C 002A9D6C  48 06 5E 91 */	bl GetQuickInverse__12CTransform4fCFv
/* 802ACE10 002A9D70  38 61 00 CC */	addi r3, r1, 0xcc
/* 802ACE14 002A9D74  38 81 00 9C */	addi r4, r1, 0x9c
/* 802ACE18 002A9D78  38 BA 00 08 */	addi r5, r26, 8
/* 802ACE1C 002A9D7C  48 06 5B 35 */	bl __ml__12CTransform4fCFRC12CTransform4f
/* 802ACE20 002A9D80  38 61 01 38 */	addi r3, r1, 0x138
/* 802ACE24 002A9D84  38 81 00 CC */	addi r4, r1, 0xcc
/* 802ACE28 002A9D88  48 06 5D 4D */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACE2C 002A9D8C  7F A4 EB 78 */	mr r4, r29
/* 802ACE30 002A9D90  38 61 00 28 */	addi r3, r1, 0x28
/* 802ACE34 002A9D94  81 9D 00 00 */	lwz r12, 0(r29)
/* 802ACE38 002A9D98  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 802ACE3C 002A9D9C  7D 89 03 A6 */	mtctr r12
/* 802ACE40 002A9DA0  4E 80 04 21 */	bctrl
/* 802ACE44 002A9DA4  38 61 00 60 */	addi r3, r1, 0x60
/* 802ACE48 002A9DA8  38 81 00 28 */	addi r4, r1, 0x28
/* 802ACE4C 002A9DAC  38 A1 01 38 */	addi r5, r1, 0x138
/* 802ACE50 002A9DB0  48 02 8E CD */	bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802ACE54 002A9DB4  38 61 00 FC */	addi r3, r1, 0xfc
/* 802ACE58 002A9DB8  38 81 00 60 */	addi r4, r1, 0x60
/* 802ACE5C 002A9DBC  48 06 5D 19 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACE60 002A9DC0  C0 41 00 90 */	lfs f2, 0x90(r1)
/* 802ACE64 002A9DC4  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802ACE68 002A9DC8  C0 21 00 94 */	lfs f1, 0x94(r1)
/* 802ACE6C 002A9DCC  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802ACE70 002A9DD0  C0 01 00 98 */	lfs f0, 0x98(r1)
/* 802ACE74 002A9DD4  3B C4 C4 48 */	addi r30, r4, lbl_803EC448@l
/* 802ACE78 002A9DD8  D0 41 01 2C */	stfs f2, 0x12c(r1)
/* 802ACE7C 002A9DDC  3B E3 97 E4 */	addi r31, r3, __vt__19CCollisionPrimitive@l
/* 802ACE80 002A9DE0  3B 60 00 00 */	li r27, 0
/* 802ACE84 002A9DE4  D0 21 01 30 */	stfs f1, 0x130(r1)
/* 802ACE88 002A9DE8  D0 01 01 34 */	stfs f0, 0x134(r1)
/* 802ACE8C 002A9DEC  48 00 00 8C */	b lbl_802ACF18
lbl_802ACE90:
/* 802ACE90 002A9DF0  7F 83 E3 78 */	mr r3, r28
/* 802ACE94 002A9DF4  81 9C 00 00 */	lwz r12, 0(r28)
/* 802ACE98 002A9DF8  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802ACE9C 002A9DFC  7D 89 03 A6 */	mtctr r12
/* 802ACEA0 002A9E00  4E 80 04 21 */	bctrl
/* 802ACEA4 002A9E04  7C 7D 1B 78 */	mr r29, r3
/* 802ACEA8 002A9E08  7F 83 E3 78 */	mr r3, r28
/* 802ACEAC 002A9E0C  7F 64 DB 78 */	mr r4, r27
/* 802ACEB0 002A9E10  48 00 0A 9D */	bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
/* 802ACEB4 002A9E14  7C 64 1B 78 */	mr r4, r3
/* 802ACEB8 002A9E18  7F A5 EB 78 */	mr r5, r29
/* 802ACEBC 002A9E1C  38 61 00 40 */	addi r3, r1, 0x40
/* 802ACEC0 002A9E20  4B FF F8 25 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802ACEC4 002A9E24  80 81 00 50 */	lwz r4, 0x50(r1)
/* 802ACEC8 002A9E28  38 61 00 40 */	addi r3, r1, 0x40
/* 802ACECC 002A9E2C  81 1A 00 04 */	lwz r8, 4(r26)
/* 802ACED0 002A9E30  38 A1 01 68 */	addi r5, r1, 0x168
/* 802ACED4 002A9E34  80 84 00 88 */	lwz r4, 0x88(r4)
/* 802ACED8 002A9E38  38 C1 00 18 */	addi r6, r1, 0x18
/* 802ACEDC 002A9E3C  38 E1 00 FC */	addi r7, r1, 0xfc
/* 802ACEE0 002A9E40  4B FF EC D9 */	bl SphereCollisionBoolean__18CCollidableOBBTreeCFRCQ28COBBTree5CNodeRC12CTransform4fRC7CSphereRC6COBBoxRC15CMaterialFilter
/* 802ACEE4 002A9E44  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802ACEE8 002A9E48  41 82 00 24 */	beq lbl_802ACF0C
/* 802ACEEC 002A9E4C  3C 60 80 3F */	lis r3, lbl_803EC448@ha
/* 802ACEF0 002A9E50  3C 80 80 3E */	lis r4, __vt__19CCollisionPrimitive@ha
/* 802ACEF4 002A9E54  38 03 C4 48 */	addi r0, r3, lbl_803EC448@l
/* 802ACEF8 002A9E58  38 60 00 01 */	li r3, 1
/* 802ACEFC 002A9E5C  90 01 00 40 */	stw r0, 0x40(r1)
/* 802ACF00 002A9E60  38 04 97 E4 */	addi r0, r4, __vt__19CCollisionPrimitive@l
/* 802ACF04 002A9E64  90 01 00 40 */	stw r0, 0x40(r1)
/* 802ACF08 002A9E68  48 00 00 24 */	b lbl_802ACF2C
lbl_802ACF0C:
/* 802ACF0C 002A9E6C  93 C1 00 40 */	stw r30, 0x40(r1)
/* 802ACF10 002A9E70  3B 7B 00 01 */	addi r27, r27, 1
/* 802ACF14 002A9E74  93 E1 00 40 */	stw r31, 0x40(r1)
lbl_802ACF18:
/* 802ACF18 002A9E78  80 7C 00 10 */	lwz r3, 0x10(r28)
/* 802ACF1C 002A9E7C  80 03 00 04 */	lwz r0, 4(r3)
/* 802ACF20 002A9E80  7C 1B 00 00 */	cmpw r27, r0
/* 802ACF24 002A9E84  41 80 FF 6C */	blt lbl_802ACE90
/* 802ACF28 002A9E88  38 60 00 00 */	li r3, 0
lbl_802ACF2C:
/* 802ACF2C 002A9E8C  BB 41 01 98 */	lmw r26, 0x198(r1)
/* 802ACF30 002A9E90  80 01 01 B4 */	lwz r0, 0x1b4(r1)
/* 802ACF34 002A9E94  7C 08 03 A6 */	mtlr r0
/* 802ACF38 002A9E98  38 21 01 B0 */	addi r1, r1, 0x1b0
/* 802ACF3C 002A9E9C  4E 80 00 20 */	blr

.global SphereCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList
SphereCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList:
/* 802ACF40 002A9EA0  94 21 FE 40 */	stwu r1, -0x1c0(r1)
/* 802ACF44 002A9EA4  7C 08 02 A6 */	mflr r0
/* 802ACF48 002A9EA8  90 01 01 C4 */	stw r0, 0x1c4(r1)
/* 802ACF4C 002A9EAC  BE E1 01 9C */	stmw r23, 0x19c(r1)
/* 802ACF50 002A9EB0  7C 7E 1B 78 */	mr r30, r3
/* 802ACF54 002A9EB4  7C 9F 23 78 */	mr r31, r4
/* 802ACF58 002A9EB8  38 BE 00 08 */	addi r5, r30, 8
/* 802ACF5C 002A9EBC  83 23 00 00 */	lwz r25, 0(r3)
/* 802ACF60 002A9EC0  38 61 00 08 */	addi r3, r1, 8
/* 802ACF64 002A9EC4  83 5E 00 38 */	lwz r26, 0x38(r30)
/* 802ACF68 002A9EC8  7F 24 CB 78 */	mr r4, r25
/* 802ACF6C 002A9ECC  48 02 73 E9 */	bl Transform__17CCollidableSphereCFRC12CTransform4f
/* 802ACF70 002A9ED0  C0 61 00 08 */	lfs f3, 8(r1)
/* 802ACF74 002A9ED4  38 61 01 68 */	addi r3, r1, 0x168
/* 802ACF78 002A9ED8  C0 41 00 0C */	lfs f2, 0xc(r1)
/* 802ACF7C 002A9EDC  38 9E 00 40 */	addi r4, r30, 0x40
/* 802ACF80 002A9EE0  C0 21 00 10 */	lfs f1, 0x10(r1)
/* 802ACF84 002A9EE4  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 802ACF88 002A9EE8  D0 61 00 18 */	stfs f3, 0x18(r1)
/* 802ACF8C 002A9EEC  D0 41 00 1C */	stfs f2, 0x1c(r1)
/* 802ACF90 002A9EF0  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 802ACF94 002A9EF4  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 802ACF98 002A9EF8  48 06 5B DD */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACF9C 002A9EFC  38 61 00 9C */	addi r3, r1, 0x9c
/* 802ACFA0 002A9F00  38 81 01 68 */	addi r4, r1, 0x168
/* 802ACFA4 002A9F04  48 06 5C F9 */	bl GetQuickInverse__12CTransform4fCFv
/* 802ACFA8 002A9F08  38 61 00 CC */	addi r3, r1, 0xcc
/* 802ACFAC 002A9F0C  38 81 00 9C */	addi r4, r1, 0x9c
/* 802ACFB0 002A9F10  38 BE 00 08 */	addi r5, r30, 8
/* 802ACFB4 002A9F14  48 06 59 9D */	bl __ml__12CTransform4fCFRC12CTransform4f
/* 802ACFB8 002A9F18  38 61 01 38 */	addi r3, r1, 0x138
/* 802ACFBC 002A9F1C  38 81 00 CC */	addi r4, r1, 0xcc
/* 802ACFC0 002A9F20  48 06 5B B5 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACFC4 002A9F24  7F 24 CB 78 */	mr r4, r25
/* 802ACFC8 002A9F28  38 61 00 28 */	addi r3, r1, 0x28
/* 802ACFCC 002A9F2C  81 99 00 00 */	lwz r12, 0(r25)
/* 802ACFD0 002A9F30  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 802ACFD4 002A9F34  7D 89 03 A6 */	mtctr r12
/* 802ACFD8 002A9F38  4E 80 04 21 */	bctrl
/* 802ACFDC 002A9F3C  38 61 00 60 */	addi r3, r1, 0x60
/* 802ACFE0 002A9F40  38 81 00 28 */	addi r4, r1, 0x28
/* 802ACFE4 002A9F44  38 A1 01 38 */	addi r5, r1, 0x138
/* 802ACFE8 002A9F48  48 02 8D 35 */	bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802ACFEC 002A9F4C  38 61 00 FC */	addi r3, r1, 0xfc
/* 802ACFF0 002A9F50  38 81 00 60 */	addi r4, r1, 0x60
/* 802ACFF4 002A9F54  48 06 5B 81 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802ACFF8 002A9F58  C0 41 00 90 */	lfs f2, 0x90(r1)
/* 802ACFFC 002A9F5C  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802AD000 002A9F60  C0 21 00 94 */	lfs f1, 0x94(r1)
/* 802AD004 002A9F64  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802AD008 002A9F68  C0 01 00 98 */	lfs f0, 0x98(r1)
/* 802AD00C 002A9F6C  3B 84 C4 48 */	addi r28, r4, lbl_803EC448@l
/* 802AD010 002A9F70  D0 41 01 2C */	stfs f2, 0x12c(r1)
/* 802AD014 002A9F74  3B A3 97 E4 */	addi r29, r3, __vt__19CCollisionPrimitive@l
/* 802AD018 002A9F78  3B 00 00 00 */	li r24, 0
/* 802AD01C 002A9F7C  3A E0 00 00 */	li r23, 0
/* 802AD020 002A9F80  D0 21 01 30 */	stfs f1, 0x130(r1)
/* 802AD024 002A9F84  D0 01 01 34 */	stfs f0, 0x134(r1)
/* 802AD028 002A9F88  48 00 00 90 */	b lbl_802AD0B8
lbl_802AD02C:
/* 802AD02C 002A9F8C  7F 43 D3 78 */	mr r3, r26
/* 802AD030 002A9F90  81 9A 00 00 */	lwz r12, 0(r26)
/* 802AD034 002A9F94  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AD038 002A9F98  7D 89 03 A6 */	mtctr r12
/* 802AD03C 002A9F9C  4E 80 04 21 */	bctrl
/* 802AD040 002A9FA0  7C 7B 1B 78 */	mr r27, r3
/* 802AD044 002A9FA4  7F 43 D3 78 */	mr r3, r26
/* 802AD048 002A9FA8  7E E4 BB 78 */	mr r4, r23
/* 802AD04C 002A9FAC  48 00 09 01 */	bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
/* 802AD050 002A9FB0  7C 64 1B 78 */	mr r4, r3
/* 802AD054 002A9FB4  7F 65 DB 78 */	mr r5, r27
/* 802AD058 002A9FB8  38 61 00 40 */	addi r3, r1, 0x40
/* 802AD05C 002A9FBC  4B FF F6 89 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802AD060 002A9FC0  7F 23 CB 78 */	mr r3, r25
/* 802AD064 002A9FC4  80 81 00 50 */	lwz r4, 0x50(r1)
/* 802AD068 002A9FC8  81 99 00 00 */	lwz r12, 0(r25)
/* 802AD06C 002A9FCC  83 64 00 88 */	lwz r27, 0x88(r4)
/* 802AD070 002A9FD0  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AD074 002A9FD4  7D 89 03 A6 */	mtctr r12
/* 802AD078 002A9FD8  4E 80 04 21 */	bctrl
/* 802AD07C 002A9FDC  81 3E 00 04 */	lwz r9, 4(r30)
/* 802AD080 002A9FE0  7C 68 1B 78 */	mr r8, r3
/* 802AD084 002A9FE4  7F 64 DB 78 */	mr r4, r27
/* 802AD088 002A9FE8  7F EA FB 78 */	mr r10, r31
/* 802AD08C 002A9FEC  38 61 00 40 */	addi r3, r1, 0x40
/* 802AD090 002A9FF0  38 A1 01 68 */	addi r5, r1, 0x168
/* 802AD094 002A9FF4  38 C1 00 18 */	addi r6, r1, 0x18
/* 802AD098 002A9FF8  38 E1 00 FC */	addi r7, r1, 0xfc
/* 802AD09C 002A9FFC  4B FF F0 C9 */	bl SphereCollision__18CCollidableOBBTreeCFRCQ28COBBTree5CNodeRC12CTransform4fRC7CSphereRC6COBBoxRC13CMaterialListRC15CMaterialFilterR18CCollisionInfoList
/* 802AD0A0 002AA000  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802AD0A4 002AA004  41 82 00 08 */	beq lbl_802AD0AC
/* 802AD0A8 002AA008  3B 00 00 01 */	li r24, 1
lbl_802AD0AC:
/* 802AD0AC 002AA00C  93 81 00 40 */	stw r28, 0x40(r1)
/* 802AD0B0 002AA010  3A F7 00 01 */	addi r23, r23, 1
/* 802AD0B4 002AA014  93 A1 00 40 */	stw r29, 0x40(r1)
lbl_802AD0B8:
/* 802AD0B8 002AA018  80 7A 00 10 */	lwz r3, 0x10(r26)
/* 802AD0BC 002AA01C  80 03 00 04 */	lwz r0, 4(r3)
/* 802AD0C0 002AA020  7C 17 00 00 */	cmpw r23, r0
/* 802AD0C4 002AA024  41 80 FF 68 */	blt lbl_802AD02C
/* 802AD0C8 002AA028  7F 03 C3 78 */	mr r3, r24
/* 802AD0CC 002AA02C  BA E1 01 9C */	lmw r23, 0x19c(r1)
/* 802AD0D0 002AA030  80 01 01 C4 */	lwz r0, 0x1c4(r1)
/* 802AD0D4 002AA034  7C 08 03 A6 */	mtlr r0
/* 802AD0D8 002AA038  38 21 01 C0 */	addi r1, r1, 0x1c0
/* 802AD0DC 002AA03C  4E 80 00 20 */	blr

.global AABoxCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure
AABoxCollideBoolean__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructure:
/* 802AD0E0 002AA040  94 21 FE 40 */	stwu r1, -0x1c0(r1)
/* 802AD0E4 002AA044  7C 08 02 A6 */	mflr r0
/* 802AD0E8 002AA048  90 01 01 C4 */	stw r0, 0x1c4(r1)
/* 802AD0EC 002AA04C  BF 41 01 A8 */	stmw r26, 0x1a8(r1)
/* 802AD0F0 002AA050  7C 7A 1B 78 */	mr r26, r3
/* 802AD0F4 002AA054  38 61 00 20 */	addi r3, r1, 0x20
/* 802AD0F8 002AA058  38 BA 00 08 */	addi r5, r26, 8
/* 802AD0FC 002AA05C  80 9A 00 00 */	lwz r4, 0(r26)
/* 802AD100 002AA060  83 9A 00 38 */	lwz r28, 0x38(r26)
/* 802AD104 002AA064  81 84 00 00 */	lwz r12, 0(r4)
/* 802AD108 002AA068  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 802AD10C 002AA06C  7D 89 03 A6 */	mtctr r12
/* 802AD110 002AA070  4E 80 04 21 */	bctrl
/* 802AD114 002AA074  C0 A1 00 20 */	lfs f5, 0x20(r1)
/* 802AD118 002AA078  38 61 01 78 */	addi r3, r1, 0x178
/* 802AD11C 002AA07C  C0 81 00 24 */	lfs f4, 0x24(r1)
/* 802AD120 002AA080  38 9A 00 40 */	addi r4, r26, 0x40
/* 802AD124 002AA084  C0 61 00 28 */	lfs f3, 0x28(r1)
/* 802AD128 002AA088  C0 41 00 2C */	lfs f2, 0x2c(r1)
/* 802AD12C 002AA08C  C0 21 00 30 */	lfs f1, 0x30(r1)
/* 802AD130 002AA090  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 802AD134 002AA094  D0 A1 00 58 */	stfs f5, 0x58(r1)
/* 802AD138 002AA098  D0 81 00 5C */	stfs f4, 0x5c(r1)
/* 802AD13C 002AA09C  D0 61 00 60 */	stfs f3, 0x60(r1)
/* 802AD140 002AA0A0  D0 41 00 64 */	stfs f2, 0x64(r1)
/* 802AD144 002AA0A4  D0 21 00 68 */	stfs f1, 0x68(r1)
/* 802AD148 002AA0A8  D0 01 00 6C */	stfs f0, 0x6c(r1)
/* 802AD14C 002AA0AC  48 06 5A 29 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD150 002AA0B0  38 61 00 AC */	addi r3, r1, 0xac
/* 802AD154 002AA0B4  38 81 01 78 */	addi r4, r1, 0x178
/* 802AD158 002AA0B8  48 06 5B 45 */	bl GetQuickInverse__12CTransform4fCFv
/* 802AD15C 002AA0BC  38 61 00 DC */	addi r3, r1, 0xdc
/* 802AD160 002AA0C0  38 81 00 AC */	addi r4, r1, 0xac
/* 802AD164 002AA0C4  38 BA 00 08 */	addi r5, r26, 8
/* 802AD168 002AA0C8  48 06 57 E9 */	bl __ml__12CTransform4fCFRC12CTransform4f
/* 802AD16C 002AA0CC  38 61 01 48 */	addi r3, r1, 0x148
/* 802AD170 002AA0D0  38 81 00 DC */	addi r4, r1, 0xdc
/* 802AD174 002AA0D4  48 06 5A 01 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD178 002AA0D8  80 9A 00 00 */	lwz r4, 0(r26)
/* 802AD17C 002AA0DC  38 61 00 08 */	addi r3, r1, 8
/* 802AD180 002AA0E0  81 84 00 00 */	lwz r12, 0(r4)
/* 802AD184 002AA0E4  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 802AD188 002AA0E8  7D 89 03 A6 */	mtctr r12
/* 802AD18C 002AA0EC  4E 80 04 21 */	bctrl
/* 802AD190 002AA0F0  38 61 00 70 */	addi r3, r1, 0x70
/* 802AD194 002AA0F4  38 81 00 08 */	addi r4, r1, 8
/* 802AD198 002AA0F8  38 A1 01 48 */	addi r5, r1, 0x148
/* 802AD19C 002AA0FC  48 02 8B 81 */	bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802AD1A0 002AA100  38 61 01 0C */	addi r3, r1, 0x10c
/* 802AD1A4 002AA104  38 81 00 70 */	addi r4, r1, 0x70
/* 802AD1A8 002AA108  48 06 59 CD */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD1AC 002AA10C  C0 41 00 A0 */	lfs f2, 0xa0(r1)
/* 802AD1B0 002AA110  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802AD1B4 002AA114  C0 21 00 A4 */	lfs f1, 0xa4(r1)
/* 802AD1B8 002AA118  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802AD1BC 002AA11C  C0 01 00 A8 */	lfs f0, 0xa8(r1)
/* 802AD1C0 002AA120  3B C4 C4 48 */	addi r30, r4, lbl_803EC448@l
/* 802AD1C4 002AA124  D0 41 01 3C */	stfs f2, 0x13c(r1)
/* 802AD1C8 002AA128  3B E3 97 E4 */	addi r31, r3, __vt__19CCollisionPrimitive@l
/* 802AD1CC 002AA12C  3B 60 00 00 */	li r27, 0
/* 802AD1D0 002AA130  D0 21 01 40 */	stfs f1, 0x140(r1)
/* 802AD1D4 002AA134  D0 01 01 44 */	stfs f0, 0x144(r1)
/* 802AD1D8 002AA138  48 00 00 8C */	b lbl_802AD264
lbl_802AD1DC:
/* 802AD1DC 002AA13C  7F 83 E3 78 */	mr r3, r28
/* 802AD1E0 002AA140  81 9C 00 00 */	lwz r12, 0(r28)
/* 802AD1E4 002AA144  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AD1E8 002AA148  7D 89 03 A6 */	mtctr r12
/* 802AD1EC 002AA14C  4E 80 04 21 */	bctrl
/* 802AD1F0 002AA150  7C 7D 1B 78 */	mr r29, r3
/* 802AD1F4 002AA154  7F 83 E3 78 */	mr r3, r28
/* 802AD1F8 002AA158  7F 64 DB 78 */	mr r4, r27
/* 802AD1FC 002AA15C  48 00 07 51 */	bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
/* 802AD200 002AA160  7C 64 1B 78 */	mr r4, r3
/* 802AD204 002AA164  7F A5 EB 78 */	mr r5, r29
/* 802AD208 002AA168  38 61 00 38 */	addi r3, r1, 0x38
/* 802AD20C 002AA16C  4B FF F4 D9 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802AD210 002AA170  80 81 00 48 */	lwz r4, 0x48(r1)
/* 802AD214 002AA174  38 61 00 38 */	addi r3, r1, 0x38
/* 802AD218 002AA178  81 1A 00 04 */	lwz r8, 4(r26)
/* 802AD21C 002AA17C  38 A1 01 78 */	addi r5, r1, 0x178
/* 802AD220 002AA180  80 84 00 88 */	lwz r4, 0x88(r4)
/* 802AD224 002AA184  38 C1 00 58 */	addi r6, r1, 0x58
/* 802AD228 002AA188  38 E1 01 0C */	addi r7, r1, 0x10c
/* 802AD22C 002AA18C  4B FF EB 5D */	bl AABoxCollisionBoolean__18CCollidableOBBTreeCFRCQ28COBBTree5CNodeRC12CTransform4fRC6CAABoxRC6COBBoxRC15CMaterialFilter
/* 802AD230 002AA190  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802AD234 002AA194  41 82 00 24 */	beq lbl_802AD258
/* 802AD238 002AA198  3C 60 80 3F */	lis r3, lbl_803EC448@ha
/* 802AD23C 002AA19C  3C 80 80 3E */	lis r4, __vt__19CCollisionPrimitive@ha
/* 802AD240 002AA1A0  38 03 C4 48 */	addi r0, r3, lbl_803EC448@l
/* 802AD244 002AA1A4  38 60 00 01 */	li r3, 1
/* 802AD248 002AA1A8  90 01 00 38 */	stw r0, 0x38(r1)
/* 802AD24C 002AA1AC  38 04 97 E4 */	addi r0, r4, __vt__19CCollisionPrimitive@l
/* 802AD250 002AA1B0  90 01 00 38 */	stw r0, 0x38(r1)
/* 802AD254 002AA1B4  48 00 00 24 */	b lbl_802AD278
lbl_802AD258:
/* 802AD258 002AA1B8  93 C1 00 38 */	stw r30, 0x38(r1)
/* 802AD25C 002AA1BC  3B 7B 00 01 */	addi r27, r27, 1
/* 802AD260 002AA1C0  93 E1 00 38 */	stw r31, 0x38(r1)
lbl_802AD264:
/* 802AD264 002AA1C4  80 7C 00 10 */	lwz r3, 0x10(r28)
/* 802AD268 002AA1C8  80 03 00 04 */	lwz r0, 4(r3)
/* 802AD26C 002AA1CC  7C 1B 00 00 */	cmpw r27, r0
/* 802AD270 002AA1D0  41 80 FF 6C */	blt lbl_802AD1DC
/* 802AD274 002AA1D4  38 60 00 00 */	li r3, 0
lbl_802AD278:
/* 802AD278 002AA1D8  BB 41 01 A8 */	lmw r26, 0x1a8(r1)
/* 802AD27C 002AA1DC  80 01 01 C4 */	lwz r0, 0x1c4(r1)
/* 802AD280 002AA1E0  7C 08 03 A6 */	mtlr r0
/* 802AD284 002AA1E4  38 21 01 C0 */	addi r1, r1, 0x1c0
/* 802AD288 002AA1E8  4E 80 00 20 */	blr

.global AABoxCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList
AABoxCollide__23CCollidableOBBTreeGroupFRC27CInternalCollisionStructureR18CCollisionInfoList:
/* 802AD28C 002AA1EC  94 21 FD 80 */	stwu r1, -0x280(r1)
/* 802AD290 002AA1F0  7C 08 02 A6 */	mflr r0
/* 802AD294 002AA1F4  90 01 02 84 */	stw r0, 0x284(r1)
/* 802AD298 002AA1F8  DB E1 02 70 */	stfd f31, 0x270(r1)
/* 802AD29C 002AA1FC  F3 E1 02 78 */	psq_st f31, 632(r1), 0, qr0
/* 802AD2A0 002AA200  DB C1 02 60 */	stfd f30, 0x260(r1)
/* 802AD2A4 002AA204  F3 C1 02 68 */	psq_st f30, 616(r1), 0, qr0
/* 802AD2A8 002AA208  DB A1 02 50 */	stfd f29, 0x250(r1)
/* 802AD2AC 002AA20C  F3 A1 02 58 */	psq_st f29, 600(r1), 0, qr0
/* 802AD2B0 002AA210  DB 81 02 40 */	stfd f28, 0x240(r1)
/* 802AD2B4 002AA214  F3 81 02 48 */	psq_st f28, 584(r1), 0, qr0
/* 802AD2B8 002AA218  DB 61 02 30 */	stfd f27, 0x230(r1)
/* 802AD2BC 002AA21C  F3 61 02 38 */	psq_st f27, 568(r1), 0, qr0
/* 802AD2C0 002AA220  BF 01 02 10 */	stmw r24, 0x210(r1)
/* 802AD2C4 002AA224  7C 78 1B 78 */	mr r24, r3
/* 802AD2C8 002AA228  7C 99 23 78 */	mr r25, r4
/* 802AD2CC 002AA22C  80 83 00 00 */	lwz r4, 0(r3)
/* 802AD2D0 002AA230  38 61 00 28 */	addi r3, r1, 0x28
/* 802AD2D4 002AA234  38 B8 00 08 */	addi r5, r24, 8
/* 802AD2D8 002AA238  83 98 00 38 */	lwz r28, 0x38(r24)
/* 802AD2DC 002AA23C  81 84 00 00 */	lwz r12, 0(r4)
/* 802AD2E0 002AA240  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 802AD2E4 002AA244  7D 89 03 A6 */	mtctr r12
/* 802AD2E8 002AA248  4E 80 04 21 */	bctrl
/* 802AD2EC 002AA24C  C0 A1 00 28 */	lfs f5, 0x28(r1)
/* 802AD2F0 002AA250  38 61 01 80 */	addi r3, r1, 0x180
/* 802AD2F4 002AA254  C0 81 00 2C */	lfs f4, 0x2c(r1)
/* 802AD2F8 002AA258  38 98 00 40 */	addi r4, r24, 0x40
/* 802AD2FC 002AA25C  C0 61 00 30 */	lfs f3, 0x30(r1)
/* 802AD300 002AA260  C0 41 00 34 */	lfs f2, 0x34(r1)
/* 802AD304 002AA264  C0 21 00 38 */	lfs f1, 0x38(r1)
/* 802AD308 002AA268  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 802AD30C 002AA26C  D0 A1 00 60 */	stfs f5, 0x60(r1)
/* 802AD310 002AA270  D0 81 00 64 */	stfs f4, 0x64(r1)
/* 802AD314 002AA274  D0 61 00 68 */	stfs f3, 0x68(r1)
/* 802AD318 002AA278  D0 41 00 6C */	stfs f2, 0x6c(r1)
/* 802AD31C 002AA27C  D0 21 00 70 */	stfs f1, 0x70(r1)
/* 802AD320 002AA280  D0 01 00 74 */	stfs f0, 0x74(r1)
/* 802AD324 002AA284  48 06 58 51 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD328 002AA288  38 61 00 B4 */	addi r3, r1, 0xb4
/* 802AD32C 002AA28C  38 81 01 80 */	addi r4, r1, 0x180
/* 802AD330 002AA290  48 06 59 6D */	bl GetQuickInverse__12CTransform4fCFv
/* 802AD334 002AA294  38 61 00 E4 */	addi r3, r1, 0xe4
/* 802AD338 002AA298  38 81 00 B4 */	addi r4, r1, 0xb4
/* 802AD33C 002AA29C  38 B8 00 08 */	addi r5, r24, 8
/* 802AD340 002AA2A0  48 06 56 11 */	bl __ml__12CTransform4fCFRC12CTransform4f
/* 802AD344 002AA2A4  38 61 01 50 */	addi r3, r1, 0x150
/* 802AD348 002AA2A8  38 81 00 E4 */	addi r4, r1, 0xe4
/* 802AD34C 002AA2AC  48 06 58 29 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD350 002AA2B0  80 98 00 00 */	lwz r4, 0(r24)
/* 802AD354 002AA2B4  38 61 00 10 */	addi r3, r1, 0x10
/* 802AD358 002AA2B8  81 84 00 00 */	lwz r12, 0(r4)
/* 802AD35C 002AA2BC  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 802AD360 002AA2C0  7D 89 03 A6 */	mtctr r12
/* 802AD364 002AA2C4  4E 80 04 21 */	bctrl
/* 802AD368 002AA2C8  38 61 00 78 */	addi r3, r1, 0x78
/* 802AD36C 002AA2CC  38 81 00 10 */	addi r4, r1, 0x10
/* 802AD370 002AA2D0  38 A1 01 50 */	addi r5, r1, 0x150
/* 802AD374 002AA2D4  48 02 89 A9 */	bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802AD378 002AA2D8  38 61 01 14 */	addi r3, r1, 0x114
/* 802AD37C 002AA2DC  38 81 00 78 */	addi r4, r1, 0x78
/* 802AD380 002AA2E0  48 06 57 F5 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD384 002AA2E4  C0 E2 C1 E0 */	lfs f7, lbl_805ADF00@sda21(r2)
/* 802AD388 002AA2E8  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802AD38C 002AA2EC  C0 C2 C1 E4 */	lfs f6, lbl_805ADF04@sda21(r2)
/* 802AD390 002AA2F0  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802AD394 002AA2F4  FF E0 38 50 */	fneg f31, f7
/* 802AD398 002AA2F8  C1 41 00 64 */	lfs f10, 0x64(r1)
/* 802AD39C 002AA2FC  FF A0 30 50 */	fneg f29, f6
/* 802AD3A0 002AA300  C0 01 00 70 */	lfs f0, 0x70(r1)
/* 802AD3A4 002AA304  C3 C1 00 60 */	lfs f30, 0x60(r1)
/* 802AD3A8 002AA308  EF 8A 01 F2 */	fmuls f28, f10, f7
/* 802AD3AC 002AA30C  EF 7E 01 F2 */	fmuls f27, f30, f7
/* 802AD3B0 002AA310  C1 61 00 68 */	lfs f11, 0x68(r1)
/* 802AD3B4 002AA314  EC 80 07 F2 */	fmuls f4, f0, f31
/* 802AD3B8 002AA318  C1 81 00 6C */	lfs f12, 0x6c(r1)
/* 802AD3BC 002AA31C  EC 00 07 72 */	fmuls f0, f0, f29
/* 802AD3C0 002AA320  C1 21 00 A8 */	lfs f9, 0xa8(r1)
/* 802AD3C4 002AA324  EC 3B E0 2A */	fadds f1, f27, f28
/* 802AD3C8 002AA328  C1 A1 00 74 */	lfs f13, 0x74(r1)
/* 802AD3CC 002AA32C  EC 6C 27 7A */	fmadds f3, f12, f29, f4
/* 802AD3D0 002AA330  C1 01 00 AC */	lfs f8, 0xac(r1)
/* 802AD3D4 002AA334  EC 4C 07 FA */	fmadds f2, f12, f31, f0
/* 802AD3D8 002AA338  C0 A1 00 B0 */	lfs f5, 0xb0(r1)
/* 802AD3DC 002AA33C  EC 0C 27 FA */	fmadds f0, f12, f31, f4
/* 802AD3E0 002AA340  D1 21 01 44 */	stfs f9, 0x144(r1)
/* 802AD3E4 002AA344  EC 8D 1F FA */	fmadds f4, f13, f31, f3
/* 802AD3E8 002AA348  3B C4 C4 48 */	addi r30, r4, lbl_803EC448@l
/* 802AD3EC 002AA34C  EC 4D 17 FA */	fmadds f2, f13, f31, f2
/* 802AD3F0 002AA350  D1 01 01 48 */	stfs f8, 0x148(r1)
/* 802AD3F4 002AA354  EC 2B 09 BA */	fmadds f1, f11, f6, f1
/* 802AD3F8 002AA358  D0 A1 01 4C */	stfs f5, 0x14c(r1)
/* 802AD3FC 002AA35C  EC 0D 07 7A */	fmadds f0, f13, f29, f0
/* 802AD400 002AA360  3B E3 97 E4 */	addi r31, r3, __vt__19CCollisionPrimitive@l
/* 802AD404 002AA364  ED 0B 01 F2 */	fmuls f8, f11, f7
/* 802AD408 002AA368  D0 C1 01 B0 */	stfs f6, 0x1b0(r1)
/* 802AD40C 002AA36C  EC BE E1 BA */	fmadds f5, f30, f6, f28
/* 802AD410 002AA370  D0 E1 01 B4 */	stfs f7, 0x1b4(r1)
/* 802AD414 002AA374  EC 6A D9 BA */	fmadds f3, f10, f6, f27
/* 802AD418 002AA378  3B 60 00 00 */	li r27, 0
/* 802AD41C 002AA37C  D0 E1 01 B8 */	stfs f7, 0x1b8(r1)
/* 802AD420 002AA380  3B 40 00 00 */	li r26, 0
/* 802AD424 002AA384  EC A8 28 2A */	fadds f5, f8, f5
/* 802AD428 002AA388  D3 A1 01 C0 */	stfs f29, 0x1c0(r1)
/* 802AD42C 002AA38C  EC 68 18 2A */	fadds f3, f8, f3
/* 802AD430 002AA390  D3 E1 01 C4 */	stfs f31, 0x1c4(r1)
/* 802AD434 002AA394  D0 A1 01 BC */	stfs f5, 0x1bc(r1)
/* 802AD438 002AA398  D3 E1 01 C8 */	stfs f31, 0x1c8(r1)
/* 802AD43C 002AA39C  D0 81 01 CC */	stfs f4, 0x1cc(r1)
/* 802AD440 002AA3A0  D0 E1 01 D0 */	stfs f7, 0x1d0(r1)
/* 802AD444 002AA3A4  D0 C1 01 D4 */	stfs f6, 0x1d4(r1)
/* 802AD448 002AA3A8  D0 E1 01 D8 */	stfs f7, 0x1d8(r1)
/* 802AD44C 002AA3AC  D0 61 01 DC */	stfs f3, 0x1dc(r1)
/* 802AD450 002AA3B0  D3 E1 01 E0 */	stfs f31, 0x1e0(r1)
/* 802AD454 002AA3B4  D3 A1 01 E4 */	stfs f29, 0x1e4(r1)
/* 802AD458 002AA3B8  D3 E1 01 E8 */	stfs f31, 0x1e8(r1)
/* 802AD45C 002AA3BC  D0 41 01 EC */	stfs f2, 0x1ec(r1)
/* 802AD460 002AA3C0  D0 E1 01 F0 */	stfs f7, 0x1f0(r1)
/* 802AD464 002AA3C4  D0 E1 01 F4 */	stfs f7, 0x1f4(r1)
/* 802AD468 002AA3C8  D0 C1 01 F8 */	stfs f6, 0x1f8(r1)
/* 802AD46C 002AA3CC  D0 21 01 FC */	stfs f1, 0x1fc(r1)
/* 802AD470 002AA3D0  D3 E1 02 00 */	stfs f31, 0x200(r1)
/* 802AD474 002AA3D4  D3 E1 02 04 */	stfs f31, 0x204(r1)
/* 802AD478 002AA3D8  D3 A1 02 08 */	stfs f29, 0x208(r1)
/* 802AD47C 002AA3DC  D0 01 02 0C */	stfs f0, 0x20c(r1)
/* 802AD480 002AA3E0  48 00 00 94 */	b lbl_802AD514
lbl_802AD484:
/* 802AD484 002AA3E4  7F 83 E3 78 */	mr r3, r28
/* 802AD488 002AA3E8  81 9C 00 00 */	lwz r12, 0(r28)
/* 802AD48C 002AA3EC  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AD490 002AA3F0  7D 89 03 A6 */	mtctr r12
/* 802AD494 002AA3F4  4E 80 04 21 */	bctrl
/* 802AD498 002AA3F8  7C 7D 1B 78 */	mr r29, r3
/* 802AD49C 002AA3FC  7F 83 E3 78 */	mr r3, r28
/* 802AD4A0 002AA400  7F 44 D3 78 */	mr r4, r26
/* 802AD4A4 002AA404  48 00 04 A9 */	bl GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
/* 802AD4A8 002AA408  7C 64 1B 78 */	mr r4, r3
/* 802AD4AC 002AA40C  7F A5 EB 78 */	mr r5, r29
/* 802AD4B0 002AA410  38 61 00 40 */	addi r3, r1, 0x40
/* 802AD4B4 002AA414  4B FF F2 31 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802AD4B8 002AA418  80 78 00 00 */	lwz r3, 0(r24)
/* 802AD4BC 002AA41C  80 81 00 50 */	lwz r4, 0x50(r1)
/* 802AD4C0 002AA420  81 83 00 00 */	lwz r12, 0(r3)
/* 802AD4C4 002AA424  83 A4 00 88 */	lwz r29, 0x88(r4)
/* 802AD4C8 002AA428  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AD4CC 002AA42C  7D 89 03 A6 */	mtctr r12
/* 802AD4D0 002AA430  4E 80 04 21 */	bctrl
/* 802AD4D4 002AA434  93 21 00 08 */	stw r25, 8(r1)
/* 802AD4D8 002AA438  7C 68 1B 78 */	mr r8, r3
/* 802AD4DC 002AA43C  7F A4 EB 78 */	mr r4, r29
/* 802AD4E0 002AA440  38 61 00 40 */	addi r3, r1, 0x40
/* 802AD4E4 002AA444  81 38 00 04 */	lwz r9, 4(r24)
/* 802AD4E8 002AA448  38 A1 01 80 */	addi r5, r1, 0x180
/* 802AD4EC 002AA44C  38 C1 00 60 */	addi r6, r1, 0x60
/* 802AD4F0 002AA450  38 E1 01 14 */	addi r7, r1, 0x114
/* 802AD4F4 002AA454  39 41 01 B0 */	addi r10, r1, 0x1b0
/* 802AD4F8 002AA458  4B FF EF FD */	bl AABoxCollision__18CCollidableOBBTreeCFRCQ28COBBTree5CNodeRC12CTransform4fRC6CAABoxRC6COBBoxRC13CMaterialListRC15CMaterialFilterPC6CPlaneR18CCollisionInfoList
/* 802AD4FC 002AA45C  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802AD500 002AA460  41 82 00 08 */	beq lbl_802AD508
/* 802AD504 002AA464  3B 60 00 01 */	li r27, 1
lbl_802AD508:
/* 802AD508 002AA468  93 C1 00 40 */	stw r30, 0x40(r1)
/* 802AD50C 002AA46C  3B 5A 00 01 */	addi r26, r26, 1
/* 802AD510 002AA470  93 E1 00 40 */	stw r31, 0x40(r1)
lbl_802AD514:
/* 802AD514 002AA474  80 7C 00 10 */	lwz r3, 0x10(r28)
/* 802AD518 002AA478  80 03 00 04 */	lwz r0, 4(r3)
/* 802AD51C 002AA47C  7C 1A 00 00 */	cmpw r26, r0
/* 802AD520 002AA480  41 80 FF 64 */	blt lbl_802AD484
/* 802AD524 002AA484  7F 63 DB 78 */	mr r3, r27
/* 802AD528 002AA488  E3 E1 02 78 */	psq_l f31, 632(r1), 0, qr0
/* 802AD52C 002AA48C  CB E1 02 70 */	lfd f31, 0x270(r1)
/* 802AD530 002AA490  E3 C1 02 68 */	psq_l f30, 616(r1), 0, qr0
/* 802AD534 002AA494  CB C1 02 60 */	lfd f30, 0x260(r1)
/* 802AD538 002AA498  E3 A1 02 58 */	psq_l f29, 600(r1), 0, qr0
/* 802AD53C 002AA49C  CB A1 02 50 */	lfd f29, 0x250(r1)
/* 802AD540 002AA4A0  E3 81 02 48 */	psq_l f28, 584(r1), 0, qr0
/* 802AD544 002AA4A4  CB 81 02 40 */	lfd f28, 0x240(r1)
/* 802AD548 002AA4A8  E3 61 02 38 */	psq_l f27, 568(r1), 0, qr0
/* 802AD54C 002AA4AC  CB 61 02 30 */	lfd f27, 0x230(r1)
/* 802AD550 002AA4B0  BB 01 02 10 */	lmw r24, 0x210(r1)
/* 802AD554 002AA4B4  80 01 02 84 */	lwz r0, 0x284(r1)
/* 802AD558 002AA4B8  7C 08 03 A6 */	mtlr r0
/* 802AD55C 002AA4BC  38 21 02 80 */	addi r1, r1, 0x280
/* 802AD560 002AA4C0  4E 80 00 20 */	blr

.global CastRayInternal__23CCollidableOBBTreeGroupCFRC25CInternalRayCastStructure
CastRayInternal__23CCollidableOBBTreeGroupCFRC25CInternalRayCastStructure:
/* 802AD564 002AA4C4  94 21 FE 30 */	stwu r1, -0x1d0(r1)
/* 802AD568 002AA4C8  7C 08 02 A6 */	mflr r0
/* 802AD56C 002AA4CC  90 01 01 D4 */	stw r0, 0x1d4(r1)
/* 802AD570 002AA4D0  DB E1 01 C0 */	stfd f31, 0x1c0(r1)
/* 802AD574 002AA4D4  F3 E1 01 C8 */	psq_st f31, 456(r1), 0, qr0
/* 802AD578 002AA4D8  DB C1 01 B0 */	stfd f30, 0x1b0(r1)
/* 802AD57C 002AA4DC  F3 C1 01 B8 */	psq_st f30, 440(r1), 0, qr0
/* 802AD580 002AA4E0  BE C1 01 88 */	stmw r22, 0x188(r1)
/* 802AD584 002AA4E4  C0 22 C1 E0 */	lfs f1, lbl_805ADF00@sda21(r2)
/* 802AD588 002AA4E8  7C 79 1B 78 */	mr r25, r3
/* 802AD58C 002AA4EC  C0 02 C1 E4 */	lfs f0, lbl_805ADF04@sda21(r2)
/* 802AD590 002AA4F0  7C 9A 23 78 */	mr r26, r4
/* 802AD594 002AA4F4  D0 21 00 E0 */	stfs f1, 0xe0(r1)
/* 802AD598 002AA4F8  7C BB 2B 78 */	mr r27, r5
/* 802AD59C 002AA4FC  38 61 00 10 */	addi r3, r1, 0x10
/* 802AD5A0 002AA500  D0 21 00 E4 */	stfs f1, 0xe4(r1)
/* 802AD5A4 002AA504  D0 21 00 E8 */	stfs f1, 0xe8(r1)
/* 802AD5A8 002AA508  D0 21 00 EC */	stfs f1, 0xec(r1)
/* 802AD5AC 002AA50C  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 802AD5B0 002AA510  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 802AD5B4 002AA514  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 802AD5B8 002AA518  48 06 73 41 */	bl Normalize__9CVector3fFv
/* 802AD5BC 002AA51C  C0 61 00 10 */	lfs f3, 0x10(r1)
/* 802AD5C0 002AA520  38 00 00 00 */	li r0, 0
/* 802AD5C4 002AA524  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 802AD5C8 002AA528  7F 64 DB 78 */	mr r4, r27
/* 802AD5CC 002AA52C  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 802AD5D0 002AA530  38 61 00 70 */	addi r3, r1, 0x70
/* 802AD5D4 002AA534  C0 02 C1 E0 */	lfs f0, lbl_805ADF00@sda21(r2)
/* 802AD5D8 002AA538  38 BB 00 3C */	addi r5, r27, 0x3c
/* 802AD5DC 002AA53C  D0 61 00 F0 */	stfs f3, 0xf0(r1)
/* 802AD5E0 002AA540  80 DA 00 10 */	lwz r6, 0x10(r26)
/* 802AD5E4 002AA544  D0 41 00 F4 */	stfs f2, 0xf4(r1)
/* 802AD5E8 002AA548  C3 FB 00 38 */	lfs f31, 0x38(r27)
/* 802AD5EC 002AA54C  D0 21 00 F8 */	stfs f1, 0xf8(r1)
/* 802AD5F0 002AA550  D0 01 00 FC */	stfs f0, 0xfc(r1)
/* 802AD5F4 002AA554  98 01 01 00 */	stb r0, 0x100(r1)
/* 802AD5F8 002AA558  90 01 01 0C */	stw r0, 0x10c(r1)
/* 802AD5FC 002AA55C  90 01 01 08 */	stw r0, 0x108(r1)
/* 802AD600 002AA560  83 E6 00 0C */	lwz r31, 0xc(r6)
/* 802AD604 002AA564  83 C6 00 1C */	lwz r30, 0x1c(r6)
/* 802AD608 002AA568  48 02 89 E1 */	bl GetInvUnscaledTransformRay__5CMRayCFRC12CTransform4f
/* 802AD60C 002AA56C  C1 A1 00 70 */	lfs f13, 0x70(r1)
/* 802AD610 002AA570  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802AD614 002AA574  C1 81 00 74 */	lfs f12, 0x74(r1)
/* 802AD618 002AA578  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802AD61C 002AA57C  C1 61 00 78 */	lfs f11, 0x78(r1)
/* 802AD620 002AA580  3B 81 00 D4 */	addi r28, r1, 0xd4
/* 802AD624 002AA584  C1 41 00 7C */	lfs f10, 0x7c(r1)
/* 802AD628 002AA588  3B A1 01 4C */	addi r29, r1, 0x14c
/* 802AD62C 002AA58C  C1 21 00 80 */	lfs f9, 0x80(r1)
/* 802AD630 002AA590  3A E4 C4 48 */	addi r23, r4, lbl_803EC448@l
/* 802AD634 002AA594  C1 01 00 84 */	lfs f8, 0x84(r1)
/* 802AD638 002AA598  3B 03 97 E4 */	addi r24, r3, __vt__19CCollisionPrimitive@l
/* 802AD63C 002AA59C  C0 E1 00 88 */	lfs f7, 0x88(r1)
/* 802AD640 002AA5A0  C0 C1 00 8C */	lfs f6, 0x8c(r1)
/* 802AD644 002AA5A4  C0 A1 00 90 */	lfs f5, 0x90(r1)
/* 802AD648 002AA5A8  C0 81 00 94 */	lfs f4, 0x94(r1)
/* 802AD64C 002AA5AC  C0 61 00 98 */	lfs f3, 0x98(r1)
/* 802AD650 002AA5B0  C0 41 00 9C */	lfs f2, 0x9c(r1)
/* 802AD654 002AA5B4  C0 21 00 A0 */	lfs f1, 0xa0(r1)
/* 802AD658 002AA5B8  C0 01 00 A4 */	lfs f0, 0xa4(r1)
/* 802AD65C 002AA5BC  D1 A1 00 A8 */	stfs f13, 0xa8(r1)
/* 802AD660 002AA5C0  C3 C2 C1 E0 */	lfs f30, lbl_805ADF00@sda21(r2)
/* 802AD664 002AA5C4  D1 81 00 AC */	stfs f12, 0xac(r1)
/* 802AD668 002AA5C8  D1 61 00 B0 */	stfs f11, 0xb0(r1)
/* 802AD66C 002AA5CC  D1 41 00 B4 */	stfs f10, 0xb4(r1)
/* 802AD670 002AA5D0  D1 21 00 B8 */	stfs f9, 0xb8(r1)
/* 802AD674 002AA5D4  D1 01 00 BC */	stfs f8, 0xbc(r1)
/* 802AD678 002AA5D8  D0 E1 00 C0 */	stfs f7, 0xc0(r1)
/* 802AD67C 002AA5DC  D0 C1 00 C4 */	stfs f6, 0xc4(r1)
/* 802AD680 002AA5E0  D0 A1 00 C8 */	stfs f5, 0xc8(r1)
/* 802AD684 002AA5E4  D0 81 00 CC */	stfs f4, 0xcc(r1)
/* 802AD688 002AA5E8  D0 61 00 D0 */	stfs f3, 0xd0(r1)
/* 802AD68C 002AA5EC  D0 41 00 D4 */	stfs f2, 0xd4(r1)
/* 802AD690 002AA5F0  D0 21 00 D8 */	stfs f1, 0xd8(r1)
/* 802AD694 002AA5F4  D0 01 00 DC */	stfs f0, 0xdc(r1)
/* 802AD698 002AA5F8  48 00 01 74 */	b lbl_802AD80C
lbl_802AD69C:
/* 802AD69C 002AA5FC  7F 43 D3 78 */	mr r3, r26
/* 802AD6A0 002AA600  82 DF 00 04 */	lwz r22, 4(r31)
/* 802AD6A4 002AA604  81 9A 00 00 */	lwz r12, 0(r26)
/* 802AD6A8 002AA608  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 802AD6AC 002AA60C  7D 89 03 A6 */	mtctr r12
/* 802AD6B0 002AA610  4E 80 04 21 */	bctrl
/* 802AD6B4 002AA614  7C 65 1B 78 */	mr r5, r3
/* 802AD6B8 002AA618  7E C4 B3 78 */	mr r4, r22
/* 802AD6BC 002AA61C  38 61 00 20 */	addi r3, r1, 0x20
/* 802AD6C0 002AA620  4B FF F0 25 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802AD6C4 002AA624  D3 C1 00 0C */	stfs f30, 0xc(r1)
/* 802AD6C8 002AA628  7F C4 F3 78 */	mr r4, r30
/* 802AD6CC 002AA62C  38 61 00 A8 */	addi r3, r1, 0xa8
/* 802AD6D0 002AA630  38 A1 00 0C */	addi r5, r1, 0xc
/* 802AD6D4 002AA634  D3 C1 00 08 */	stfs f30, 8(r1)
/* 802AD6D8 002AA638  38 C1 00 08 */	addi r6, r1, 8
/* 802AD6DC 002AA63C  48 02 58 A5 */	bl RayAABoxIntersection__13CollisionUtilFRC5CMRayRC6CAABoxRfRf
/* 802AD6E0 002AA640  2C 03 00 00 */	cmpwi r3, 0
/* 802AD6E4 002AA644  41 82 01 18 */	beq lbl_802AD7FC
/* 802AD6E8 002AA648  FC 20 F8 90 */	fmr f1, f31
/* 802AD6EC 002AA64C  82 DB 00 6C */	lwz r22, 0x6c(r27)
/* 802AD6F0 002AA650  7F 85 E3 78 */	mr r5, r28
/* 802AD6F4 002AA654  38 61 01 10 */	addi r3, r1, 0x110
/* 802AD6F8 002AA658  38 81 00 A8 */	addi r4, r1, 0xa8
/* 802AD6FC 002AA65C  48 02 89 71 */	bl __ct__5CMRayFRC9CVector3fRC9CVector3ff
/* 802AD700 002AA660  3C 60 80 5A */	lis r3, sIdentity__12CTransform4f@ha
/* 802AD704 002AA664  D3 E1 01 48 */	stfs f31, 0x148(r1)
/* 802AD708 002AA668  38 83 66 70 */	addi r4, r3, sIdentity__12CTransform4f@l
/* 802AD70C 002AA66C  7F A3 EB 78 */	mr r3, r29
/* 802AD710 002AA670  48 06 54 65 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802AD714 002AA674  92 C1 01 7C */	stw r22, 0x17c(r1)
/* 802AD718 002AA678  38 61 00 40 */	addi r3, r1, 0x40
/* 802AD71C 002AA67C  81 81 00 20 */	lwz r12, 0x20(r1)
/* 802AD720 002AA680  38 81 00 20 */	addi r4, r1, 0x20
/* 802AD724 002AA684  38 A1 01 10 */	addi r5, r1, 0x110
/* 802AD728 002AA688  81 8C 00 24 */	lwz r12, 0x24(r12)
/* 802AD72C 002AA68C  7D 89 03 A6 */	mtctr r12
/* 802AD730 002AA690  4E 80 04 21 */	bctrl
/* 802AD734 002AA694  88 A1 00 60 */	lbz r5, 0x60(r1)
/* 802AD738 002AA698  28 05 00 00 */	cmplwi r5, 0
/* 802AD73C 002AA69C  41 82 00 C0 */	beq lbl_802AD7FC
/* 802AD740 002AA6A0  88 01 01 00 */	lbz r0, 0x100(r1)
/* 802AD744 002AA6A4  28 00 00 00 */	cmplwi r0, 0
/* 802AD748 002AA6A8  41 82 00 64 */	beq lbl_802AD7AC
/* 802AD74C 002AA6AC  C0 A1 00 40 */	lfs f5, 0x40(r1)
/* 802AD750 002AA6B0  C0 01 00 E0 */	lfs f0, 0xe0(r1)
/* 802AD754 002AA6B4  FC 05 00 40 */	fcmpo cr0, f5, f0
/* 802AD758 002AA6B8  40 80 00 A4 */	bge lbl_802AD7FC
/* 802AD75C 002AA6BC  80 81 00 44 */	lwz r4, 0x44(r1)
/* 802AD760 002AA6C0  FF E0 28 90 */	fmr f31, f5
/* 802AD764 002AA6C4  80 61 00 48 */	lwz r3, 0x48(r1)
/* 802AD768 002AA6C8  80 01 00 4C */	lwz r0, 0x4c(r1)
/* 802AD76C 002AA6CC  C0 81 00 50 */	lfs f4, 0x50(r1)
/* 802AD770 002AA6D0  C0 61 00 54 */	lfs f3, 0x54(r1)
/* 802AD774 002AA6D4  C0 41 00 58 */	lfs f2, 0x58(r1)
/* 802AD778 002AA6D8  C0 21 00 5C */	lfs f1, 0x5c(r1)
/* 802AD77C 002AA6DC  C8 01 00 68 */	lfd f0, 0x68(r1)
/* 802AD780 002AA6E0  D0 A1 00 E0 */	stfs f5, 0xe0(r1)
/* 802AD784 002AA6E4  90 81 00 E4 */	stw r4, 0xe4(r1)
/* 802AD788 002AA6E8  90 61 00 E8 */	stw r3, 0xe8(r1)
/* 802AD78C 002AA6EC  90 01 00 EC */	stw r0, 0xec(r1)
/* 802AD790 002AA6F0  D0 81 00 F0 */	stfs f4, 0xf0(r1)
/* 802AD794 002AA6F4  D0 61 00 F4 */	stfs f3, 0xf4(r1)
/* 802AD798 002AA6F8  D0 41 00 F8 */	stfs f2, 0xf8(r1)
/* 802AD79C 002AA6FC  D0 21 00 FC */	stfs f1, 0xfc(r1)
/* 802AD7A0 002AA700  98 A1 01 00 */	stb r5, 0x100(r1)
/* 802AD7A4 002AA704  D8 01 01 08 */	stfd f0, 0x108(r1)
/* 802AD7A8 002AA708  48 00 00 54 */	b lbl_802AD7FC
lbl_802AD7AC:
/* 802AD7AC 002AA70C  C0 A1 00 40 */	lfs f5, 0x40(r1)
/* 802AD7B0 002AA710  80 81 00 44 */	lwz r4, 0x44(r1)
/* 802AD7B4 002AA714  80 61 00 48 */	lwz r3, 0x48(r1)
/* 802AD7B8 002AA718  FF E0 28 90 */	fmr f31, f5
/* 802AD7BC 002AA71C  80 01 00 4C */	lwz r0, 0x4c(r1)
/* 802AD7C0 002AA720  C0 81 00 50 */	lfs f4, 0x50(r1)
/* 802AD7C4 002AA724  C0 61 00 54 */	lfs f3, 0x54(r1)
/* 802AD7C8 002AA728  C0 41 00 58 */	lfs f2, 0x58(r1)
/* 802AD7CC 002AA72C  C0 21 00 5C */	lfs f1, 0x5c(r1)
/* 802AD7D0 002AA730  C8 01 00 68 */	lfd f0, 0x68(r1)
/* 802AD7D4 002AA734  D0 A1 00 E0 */	stfs f5, 0xe0(r1)
/* 802AD7D8 002AA738  90 81 00 E4 */	stw r4, 0xe4(r1)
/* 802AD7DC 002AA73C  90 61 00 E8 */	stw r3, 0xe8(r1)
/* 802AD7E0 002AA740  90 01 00 EC */	stw r0, 0xec(r1)
/* 802AD7E4 002AA744  D0 81 00 F0 */	stfs f4, 0xf0(r1)
/* 802AD7E8 002AA748  D0 61 00 F4 */	stfs f3, 0xf4(r1)
/* 802AD7EC 002AA74C  D0 41 00 F8 */	stfs f2, 0xf8(r1)
/* 802AD7F0 002AA750  D0 21 00 FC */	stfs f1, 0xfc(r1)
/* 802AD7F4 002AA754  98 A1 01 00 */	stb r5, 0x100(r1)
/* 802AD7F8 002AA758  D8 01 01 08 */	stfd f0, 0x108(r1)
lbl_802AD7FC:
/* 802AD7FC 002AA75C  92 E1 00 20 */	stw r23, 0x20(r1)
/* 802AD800 002AA760  3B FF 00 08 */	addi r31, r31, 8
/* 802AD804 002AA764  3B DE 00 18 */	addi r30, r30, 0x18
/* 802AD808 002AA768  93 01 00 20 */	stw r24, 0x20(r1)
lbl_802AD80C:
/* 802AD80C 002AA76C  80 7A 00 10 */	lwz r3, 0x10(r26)
/* 802AD810 002AA770  80 03 00 04 */	lwz r0, 4(r3)
/* 802AD814 002AA774  80 63 00 0C */	lwz r3, 0xc(r3)
/* 802AD818 002AA778  54 00 18 38 */	slwi r0, r0, 3
/* 802AD81C 002AA77C  7C 03 02 14 */	add r0, r3, r0
/* 802AD820 002AA780  7C 1F 00 40 */	cmplw r31, r0
/* 802AD824 002AA784  40 82 FE 78 */	bne lbl_802AD69C
/* 802AD828 002AA788  38 61 00 E0 */	addi r3, r1, 0xe0
/* 802AD82C 002AA78C  38 9B 00 3C */	addi r4, r27, 0x3c
/* 802AD830 002AA790  48 00 00 81 */	bl Transform__14CRayCastResultFRC12CTransform4f
/* 802AD834 002AA794  C0 01 00 E0 */	lfs f0, 0xe0(r1)
/* 802AD838 002AA798  D0 19 00 00 */	stfs f0, 0(r25)
/* 802AD83C 002AA79C  C0 01 00 E4 */	lfs f0, 0xe4(r1)
/* 802AD840 002AA7A0  D0 19 00 04 */	stfs f0, 4(r25)
/* 802AD844 002AA7A4  C0 01 00 E8 */	lfs f0, 0xe8(r1)
/* 802AD848 002AA7A8  D0 19 00 08 */	stfs f0, 8(r25)
/* 802AD84C 002AA7AC  C0 01 00 EC */	lfs f0, 0xec(r1)
/* 802AD850 002AA7B0  D0 19 00 0C */	stfs f0, 0xc(r25)
/* 802AD854 002AA7B4  C0 01 00 F0 */	lfs f0, 0xf0(r1)
/* 802AD858 002AA7B8  D0 19 00 10 */	stfs f0, 0x10(r25)
/* 802AD85C 002AA7BC  C0 01 00 F4 */	lfs f0, 0xf4(r1)
/* 802AD860 002AA7C0  D0 19 00 14 */	stfs f0, 0x14(r25)
/* 802AD864 002AA7C4  C0 01 00 F8 */	lfs f0, 0xf8(r1)
/* 802AD868 002AA7C8  D0 19 00 18 */	stfs f0, 0x18(r25)
/* 802AD86C 002AA7CC  C0 01 00 FC */	lfs f0, 0xfc(r1)
/* 802AD870 002AA7D0  D0 19 00 1C */	stfs f0, 0x1c(r25)
/* 802AD874 002AA7D4  88 01 01 00 */	lbz r0, 0x100(r1)
/* 802AD878 002AA7D8  98 19 00 20 */	stb r0, 0x20(r25)
/* 802AD87C 002AA7DC  80 01 01 08 */	lwz r0, 0x108(r1)
/* 802AD880 002AA7E0  80 61 01 0C */	lwz r3, 0x10c(r1)
/* 802AD884 002AA7E4  90 79 00 2C */	stw r3, 0x2c(r25)
/* 802AD888 002AA7E8  90 19 00 28 */	stw r0, 0x28(r25)
/* 802AD88C 002AA7EC  E3 E1 01 C8 */	psq_l f31, 456(r1), 0, qr0
/* 802AD890 002AA7F0  CB E1 01 C0 */	lfd f31, 0x1c0(r1)
/* 802AD894 002AA7F4  E3 C1 01 B8 */	psq_l f30, 440(r1), 0, qr0
/* 802AD898 002AA7F8  CB C1 01 B0 */	lfd f30, 0x1b0(r1)
/* 802AD89C 002AA7FC  BA C1 01 88 */	lmw r22, 0x188(r1)
/* 802AD8A0 002AA800  80 01 01 D4 */	lwz r0, 0x1d4(r1)
/* 802AD8A4 002AA804  7C 08 03 A6 */	mtlr r0
/* 802AD8A8 002AA808  38 21 01 D0 */	addi r1, r1, 0x1d0
/* 802AD8AC 002AA80C  4E 80 00 20 */	blr

.global Transform__14CRayCastResultFRC12CTransform4f
Transform__14CRayCastResultFRC12CTransform4f:
/* 802AD8B0 002AA810  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 802AD8B4 002AA814  7C 08 02 A6 */	mflr r0
/* 802AD8B8 002AA818  90 01 00 34 */	stw r0, 0x34(r1)
/* 802AD8BC 002AA81C  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 802AD8C0 002AA820  7C 9F 23 78 */	mr r31, r4
/* 802AD8C4 002AA824  93 C1 00 28 */	stw r30, 0x28(r1)
/* 802AD8C8 002AA828  7C 7E 1B 78 */	mr r30, r3
/* 802AD8CC 002AA82C  38 61 00 14 */	addi r3, r1, 0x14
/* 802AD8D0 002AA830  38 BE 00 04 */	addi r5, r30, 4
/* 802AD8D4 002AA834  48 06 52 15 */	bl __ml__12CTransform4fCFRC9CVector3f
/* 802AD8D8 002AA838  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 802AD8DC 002AA83C  7F E4 FB 78 */	mr r4, r31
/* 802AD8E0 002AA840  38 61 00 08 */	addi r3, r1, 8
/* 802AD8E4 002AA844  38 BE 00 10 */	addi r5, r30, 0x10
/* 802AD8E8 002AA848  D0 1E 00 04 */	stfs f0, 4(r30)
/* 802AD8EC 002AA84C  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 802AD8F0 002AA850  D0 1E 00 08 */	stfs f0, 8(r30)
/* 802AD8F4 002AA854  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 802AD8F8 002AA858  D0 1E 00 0C */	stfs f0, 0xc(r30)
/* 802AD8FC 002AA85C  48 06 51 85 */	bl Rotate__12CTransform4fCFRC9CVector3f
/* 802AD900 002AA860  C0 81 00 0C */	lfs f4, 0xc(r1)
/* 802AD904 002AA864  C0 1E 00 08 */	lfs f0, 8(r30)
/* 802AD908 002AA868  C0 61 00 08 */	lfs f3, 8(r1)
/* 802AD90C 002AA86C  EC 00 01 32 */	fmuls f0, f0, f4
/* 802AD910 002AA870  C0 3E 00 04 */	lfs f1, 4(r30)
/* 802AD914 002AA874  C0 A1 00 10 */	lfs f5, 0x10(r1)
/* 802AD918 002AA878  C0 5E 00 0C */	lfs f2, 0xc(r30)
/* 802AD91C 002AA87C  EC 01 00 FA */	fmadds f0, f1, f3, f0
/* 802AD920 002AA880  D0 7E 00 10 */	stfs f3, 0x10(r30)
/* 802AD924 002AA884  D0 9E 00 14 */	stfs f4, 0x14(r30)
/* 802AD928 002AA888  EC 02 01 7A */	fmadds f0, f2, f5, f0
/* 802AD92C 002AA88C  D0 BE 00 18 */	stfs f5, 0x18(r30)
/* 802AD930 002AA890  D0 1E 00 1C */	stfs f0, 0x1c(r30)
/* 802AD934 002AA894  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 802AD938 002AA898  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 802AD93C 002AA89C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 802AD940 002AA8A0  7C 08 03 A6 */	mtlr r0
/* 802AD944 002AA8A4  38 21 00 30 */	addi r1, r1, 0x30
/* 802AD948 002AA8A8  4E 80 00 20 */	blr

.global GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi
GetOBBTreeAABox__23CCollidableOBBTreeGroupCFi:
/* 802AD94C 002AA8AC  80 A3 00 10 */	lwz r5, 0x10(r3)
/* 802AD950 002AA8B0  54 83 18 38 */	slwi r3, r4, 3
/* 802AD954 002AA8B4  38 03 00 04 */	addi r0, r3, 4
/* 802AD958 002AA8B8  80 65 00 0C */	lwz r3, 0xc(r5)
/* 802AD95C 002AA8BC  7C 63 00 2E */	lwzx r3, r3, r0
/* 802AD960 002AA8C0  4E 80 00 20 */	blr

.global "__ct__23CCollidableOBBTreeGroupFP32CCollidableOBBTreeGroupContainerRC13CMaterialList"
"__ct__23CCollidableOBBTreeGroupFP32CCollidableOBBTreeGroupContainerRC13CMaterialList":
/* 802AD964 002AA8C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802AD968 002AA8C8  7C 08 02 A6 */	mflr r0
/* 802AD96C 002AA8CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 802AD970 002AA8D0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AD974 002AA8D4  7C 9F 23 78 */	mr r31, r4
/* 802AD978 002AA8D8  7C A4 2B 78 */	mr r4, r5
/* 802AD97C 002AA8DC  93 C1 00 08 */	stw r30, 8(r1)
/* 802AD980 002AA8E0  7C 7E 1B 78 */	mr r30, r3
/* 802AD984 002AA8E4  48 02 1F 31 */	bl __ct__19CCollisionPrimitiveFRC13CMaterialList
/* 802AD988 002AA8E8  3C 80 80 3F */	lis r4, __vt__23CCollidableOBBTreeGroup@ha
/* 802AD98C 002AA8EC  7F C3 F3 78 */	mr r3, r30
/* 802AD990 002AA8F0  38 04 C4 70 */	addi r0, r4, __vt__23CCollidableOBBTreeGroup@l
/* 802AD994 002AA8F4  90 1E 00 00 */	stw r0, 0(r30)
/* 802AD998 002AA8F8  93 FE 00 10 */	stw r31, 0x10(r30)
/* 802AD99C 002AA8FC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802AD9A0 002AA900  83 C1 00 08 */	lwz r30, 8(r1)
/* 802AD9A4 002AA904  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802AD9A8 002AA908  7C 08 03 A6 */	mtlr r0
/* 802AD9AC 002AA90C  38 21 00 10 */	addi r1, r1, 0x10
/* 802AD9B0 002AA910  4E 80 00 20 */	blr

.global GetType__23CCollidableOBBTreeGroupFv
GetType__23CCollidableOBBTreeGroupFv:
/* 802AD9B4 002AA914  3C A0 80 2B */	lis r5, SetStaticTableIndex__23CCollidableOBBTreeGroupFUi@ha
/* 802AD9B8 002AA918  3C 80 80 3D */	lis r4, lbl_803D60F0@ha
/* 802AD9BC 002AA91C  38 05 D9 D0 */	addi r0, r5, SetStaticTableIndex__23CCollidableOBBTreeGroupFUi@l
/* 802AD9C0 002AA920  90 03 00 00 */	stw r0, 0(r3)
/* 802AD9C4 002AA924  38 04 60 F0 */	addi r0, r4, lbl_803D60F0@l
/* 802AD9C8 002AA928  90 03 00 04 */	stw r0, 4(r3)
/* 802AD9CC 002AA92C  4E 80 00 20 */	blr

.global SetStaticTableIndex__23CCollidableOBBTreeGroupFUi
SetStaticTableIndex__23CCollidableOBBTreeGroupFUi:
/* 802AD9D0 002AA930  90 6D 9A 78 */	stw r3, lbl_805A8638@sda21(r13)
/* 802AD9D4 002AA934  4E 80 00 20 */	blr

.global __ct__23CCollidableOBBTreeGroupFRC9CVector3fRC9CVector3f
__ct__23CCollidableOBBTreeGroupFRC9CVector3fRC9CVector3f:
/* 802AD9D8 002AA938  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 802AD9DC 002AA93C  7C 08 02 A6 */	mflr r0
/* 802AD9E0 002AA940  3C C0 80 5A */	lis r6, mskInvertedBox__6CAABox@ha
/* 802AD9E4 002AA944  90 01 00 94 */	stw r0, 0x94(r1)
/* 802AD9E8 002AA948  38 00 00 00 */	li r0, 0
/* 802AD9EC 002AA94C  BF 61 00 7C */	stmw r27, 0x7c(r1)
/* 802AD9F0 002AA950  7C BB 2B 78 */	mr r27, r5
/* 802AD9F4 002AA954  7C 9C 23 78 */	mr r28, r4
/* 802AD9F8 002AA958  38 A6 67 54 */	addi r5, r6, mskInvertedBox__6CAABox@l
/* 802AD9FC 002AA95C  7C 7D 1B 78 */	mr r29, r3
/* 802ADA00 002AA960  38 80 00 01 */	li r4, 1
/* 802ADA04 002AA964  90 03 00 04 */	stw r0, 4(r3)
/* 802ADA08 002AA968  90 03 00 08 */	stw r0, 8(r3)
/* 802ADA0C 002AA96C  90 03 00 0C */	stw r0, 0xc(r3)
/* 802ADA10 002AA970  90 03 00 14 */	stw r0, 0x14(r3)
/* 802ADA14 002AA974  90 03 00 18 */	stw r0, 0x18(r3)
/* 802ADA18 002AA978  90 03 00 1C */	stw r0, 0x1c(r3)
/* 802ADA1C 002AA97C  C0 05 00 00 */	lfs f0, 0(r5)
/* 802ADA20 002AA980  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 802ADA24 002AA984  C0 05 00 04 */	lfs f0, 4(r5)
/* 802ADA28 002AA988  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 802ADA2C 002AA98C  C0 05 00 08 */	lfs f0, 8(r5)
/* 802ADA30 002AA990  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 802ADA34 002AA994  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 802ADA38 002AA998  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 802ADA3C 002AA99C  C0 05 00 10 */	lfs f0, 0x10(r5)
/* 802ADA40 002AA9A0  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 802ADA44 002AA9A4  C0 05 00 14 */	lfs f0, 0x14(r5)
/* 802ADA48 002AA9A8  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 802ADA4C 002AA9AC  48 00 07 6D */	bl "reserve__Q24rstl44vector<8COBBTree,Q24rstl17rmemory_allocator>Fi"
/* 802ADA50 002AA9B0  7F 84 E3 78 */	mr r4, r28
/* 802ADA54 002AA9B4  7F 65 DB 78 */	mr r5, r27
/* 802ADA58 002AA9B8  38 61 00 18 */	addi r3, r1, 0x18
/* 802ADA5C 002AA9BC  4B FF A5 B5 */	bl BuildOrientedBoundingBoxTree__8COBBTreeFRC9CVector3fRC9CVector3f
/* 802ADA60 002AA9C0  88 81 00 18 */	lbz r4, 0x18(r1)
/* 802ADA64 002AA9C4  38 00 00 00 */	li r0, 0
/* 802ADA68 002AA9C8  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 802ADA6C 002AA9CC  98 01 00 18 */	stb r0, 0x18(r1)
/* 802ADA70 002AA9D0  80 1D 00 04 */	lwz r0, 4(r29)
/* 802ADA74 002AA9D4  80 BD 00 08 */	lwz r5, 8(r29)
/* 802ADA78 002AA9D8  98 81 00 10 */	stb r4, 0x10(r1)
/* 802ADA7C 002AA9DC  7C 00 28 00 */	cmpw r0, r5
/* 802ADA80 002AA9E0  90 61 00 14 */	stw r3, 0x14(r1)
/* 802ADA84 002AA9E4  41 80 00 1C */	blt lbl_802ADAA0
/* 802ADA88 002AA9E8  2C 05 00 00 */	cmpwi r5, 0
/* 802ADA8C 002AA9EC  7F A3 EB 78 */	mr r3, r29
/* 802ADA90 002AA9F0  38 80 00 04 */	li r4, 4
/* 802ADA94 002AA9F4  41 82 00 08 */	beq lbl_802ADA9C
/* 802ADA98 002AA9F8  54 A4 08 3C */	slwi r4, r5, 1
lbl_802ADA9C:
/* 802ADA9C 002AA9FC  48 00 07 1D */	bl "reserve__Q24rstl44vector<8COBBTree,Q24rstl17rmemory_allocator>Fi"
lbl_802ADAA0:
/* 802ADAA0 002AAA00  80 1D 00 04 */	lwz r0, 4(r29)
/* 802ADAA4 002AAA04  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 802ADAA8 002AAA08  54 00 18 38 */	slwi r0, r0, 3
/* 802ADAAC 002AAA0C  7C A3 02 15 */	add. r5, r3, r0
/* 802ADAB0 002AAA10  41 82 00 1C */	beq lbl_802ADACC
/* 802ADAB4 002AAA14  88 81 00 10 */	lbz r4, 0x10(r1)
/* 802ADAB8 002AAA18  38 00 00 00 */	li r0, 0
/* 802ADABC 002AAA1C  80 61 00 14 */	lwz r3, 0x14(r1)
/* 802ADAC0 002AAA20  98 85 00 00 */	stb r4, 0(r5)
/* 802ADAC4 002AAA24  90 65 00 04 */	stw r3, 4(r5)
/* 802ADAC8 002AAA28  98 01 00 10 */	stb r0, 0x10(r1)
lbl_802ADACC:
/* 802ADACC 002AAA2C  80 7D 00 04 */	lwz r3, 4(r29)
/* 802ADAD0 002AAA30  88 01 00 10 */	lbz r0, 0x10(r1)
/* 802ADAD4 002AAA34  38 63 00 01 */	addi r3, r3, 1
/* 802ADAD8 002AAA38  28 00 00 00 */	cmplwi r0, 0
/* 802ADADC 002AAA3C  90 7D 00 04 */	stw r3, 4(r29)
/* 802ADAE0 002AAA40  41 82 00 10 */	beq lbl_802ADAF0
/* 802ADAE4 002AAA44  80 61 00 14 */	lwz r3, 0x14(r1)
/* 802ADAE8 002AAA48  38 80 00 01 */	li r4, 1
/* 802ADAEC 002AAA4C  4B FF B2 25 */	bl __dt__8COBBTreeFv
lbl_802ADAF0:
/* 802ADAF0 002AAA50  88 01 00 18 */	lbz r0, 0x18(r1)
/* 802ADAF4 002AAA54  28 00 00 00 */	cmplwi r0, 0
/* 802ADAF8 002AAA58  41 82 00 10 */	beq lbl_802ADB08
/* 802ADAFC 002AAA5C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 802ADB00 002AAA60  38 80 00 01 */	li r4, 1
/* 802ADB04 002AAA64  4B FF B2 0D */	bl __dt__8COBBTreeFv
lbl_802ADB08:
/* 802ADB08 002AAA68  38 7D 00 10 */	addi r3, r29, 0x10
/* 802ADB0C 002AAA6C  38 80 00 01 */	li r4, 1
/* 802ADB10 002AAA70  48 00 07 B9 */	bl "reserve__Q24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>Fi"
/* 802ADB14 002AAA74  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802ADB18 002AAA78  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802ADB1C 002AAA7C  83 FD 00 0C */	lwz r31, 0xc(r29)
/* 802ADB20 002AAA80  3B C1 00 44 */	addi r30, r1, 0x44
/* 802ADB24 002AAA84  3B 64 C4 48 */	addi r27, r4, lbl_803EC448@l
/* 802ADB28 002AAA88  3B 83 97 E4 */	addi r28, r3, __vt__19CCollisionPrimitive@l
/* 802ADB2C 002AAA8C  48 00 00 F8 */	b lbl_802ADC24
lbl_802ADB30:
/* 802ADB30 002AAA90  38 00 00 00 */	li r0, 0
/* 802ADB34 002AAA94  38 61 00 50 */	addi r3, r1, 0x50
/* 802ADB38 002AAA98  90 01 00 0C */	stw r0, 0xc(r1)
/* 802ADB3C 002AAA9C  38 A1 00 08 */	addi r5, r1, 8
/* 802ADB40 002AAAA0  90 01 00 08 */	stw r0, 8(r1)
/* 802ADB44 002AAAA4  80 9F 00 04 */	lwz r4, 4(r31)
/* 802ADB48 002AAAA8  4B FF EB 9D */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802ADB4C 002AAAAC  38 61 00 20 */	addi r3, r1, 0x20
/* 802ADB50 002AAAB0  38 81 00 50 */	addi r4, r1, 0x50
/* 802ADB54 002AAAB4  4B FF EA D9 */	bl CalculateLocalAABox__18CCollidableOBBTreeCFv
/* 802ADB58 002AAAB8  C0 A1 00 20 */	lfs f5, 0x20(r1)
/* 802ADB5C 002AAABC  C0 81 00 24 */	lfs f4, 0x24(r1)
/* 802ADB60 002AAAC0  C0 61 00 28 */	lfs f3, 0x28(r1)
/* 802ADB64 002AAAC4  C0 41 00 2C */	lfs f2, 0x2c(r1)
/* 802ADB68 002AAAC8  C0 21 00 30 */	lfs f1, 0x30(r1)
/* 802ADB6C 002AAACC  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 802ADB70 002AAAD0  D0 A1 00 38 */	stfs f5, 0x38(r1)
/* 802ADB74 002AAAD4  D0 81 00 3C */	stfs f4, 0x3c(r1)
/* 802ADB78 002AAAD8  D0 61 00 40 */	stfs f3, 0x40(r1)
/* 802ADB7C 002AAADC  D0 41 00 44 */	stfs f2, 0x44(r1)
/* 802ADB80 002AAAE0  D0 21 00 48 */	stfs f1, 0x48(r1)
/* 802ADB84 002AAAE4  D0 01 00 4C */	stfs f0, 0x4c(r1)
/* 802ADB88 002AAAE8  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 802ADB8C 002AAAEC  80 BD 00 18 */	lwz r5, 0x18(r29)
/* 802ADB90 002AAAF0  7C 00 28 00 */	cmpw r0, r5
/* 802ADB94 002AAAF4  41 80 00 1C */	blt lbl_802ADBB0
/* 802ADB98 002AAAF8  2C 05 00 00 */	cmpwi r5, 0
/* 802ADB9C 002AAAFC  38 7D 00 10 */	addi r3, r29, 0x10
/* 802ADBA0 002AAB00  38 80 00 04 */	li r4, 4
/* 802ADBA4 002AAB04  41 82 00 08 */	beq lbl_802ADBAC
/* 802ADBA8 002AAB08  54 A4 08 3C */	slwi r4, r5, 1
lbl_802ADBAC:
/* 802ADBAC 002AAB0C  48 00 07 1D */	bl "reserve__Q24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>Fi"
lbl_802ADBB0:
/* 802ADBB0 002AAB10  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 802ADBB4 002AAB14  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 802ADBB8 002AAB18  1C 00 00 18 */	mulli r0, r0, 0x18
/* 802ADBBC 002AAB1C  7C 63 02 15 */	add. r3, r3, r0
/* 802ADBC0 002AAB20  41 82 00 34 */	beq lbl_802ADBF4
/* 802ADBC4 002AAB24  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 802ADBC8 002AAB28  D0 03 00 00 */	stfs f0, 0(r3)
/* 802ADBCC 002AAB2C  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 802ADBD0 002AAB30  D0 03 00 04 */	stfs f0, 4(r3)
/* 802ADBD4 002AAB34  C0 01 00 40 */	lfs f0, 0x40(r1)
/* 802ADBD8 002AAB38  D0 03 00 08 */	stfs f0, 8(r3)
/* 802ADBDC 002AAB3C  C0 01 00 44 */	lfs f0, 0x44(r1)
/* 802ADBE0 002AAB40  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 802ADBE4 002AAB44  C0 01 00 48 */	lfs f0, 0x48(r1)
/* 802ADBE8 002AAB48  D0 03 00 10 */	stfs f0, 0x10(r3)
/* 802ADBEC 002AAB4C  C0 01 00 4C */	lfs f0, 0x4c(r1)
/* 802ADBF0 002AAB50  D0 03 00 14 */	stfs f0, 0x14(r3)
lbl_802ADBF4:
/* 802ADBF4 002AAB54  80 BD 00 14 */	lwz r5, 0x14(r29)
/* 802ADBF8 002AAB58  38 7D 00 20 */	addi r3, r29, 0x20
/* 802ADBFC 002AAB5C  38 81 00 38 */	addi r4, r1, 0x38
/* 802ADC00 002AAB60  38 05 00 01 */	addi r0, r5, 1
/* 802ADC04 002AAB64  90 1D 00 14 */	stw r0, 0x14(r29)
/* 802ADC08 002AAB68  48 08 9F 01 */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802ADC0C 002AAB6C  7F C4 F3 78 */	mr r4, r30
/* 802ADC10 002AAB70  38 7D 00 20 */	addi r3, r29, 0x20
/* 802ADC14 002AAB74  48 08 9E F5 */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802ADC18 002AAB78  93 61 00 50 */	stw r27, 0x50(r1)
/* 802ADC1C 002AAB7C  3B FF 00 08 */	addi r31, r31, 8
/* 802ADC20 002AAB80  93 81 00 50 */	stw r28, 0x50(r1)
lbl_802ADC24:
/* 802ADC24 002AAB84  80 1D 00 04 */	lwz r0, 4(r29)
/* 802ADC28 002AAB88  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 802ADC2C 002AAB8C  54 00 18 38 */	slwi r0, r0, 3
/* 802ADC30 002AAB90  7C 03 02 14 */	add r0, r3, r0
/* 802ADC34 002AAB94  7C 1F 00 40 */	cmplw r31, r0
/* 802ADC38 002AAB98  40 82 FE F8 */	bne lbl_802ADB30
/* 802ADC3C 002AAB9C  7F A3 EB 78 */	mr r3, r29
/* 802ADC40 002AABA0  BB 61 00 7C */	lmw r27, 0x7c(r1)
/* 802ADC44 002AABA4  80 01 00 94 */	lwz r0, 0x94(r1)
/* 802ADC48 002AABA8  7C 08 03 A6 */	mtlr r0
/* 802ADC4C 002AABAC  38 21 00 90 */	addi r1, r1, 0x90
/* 802ADC50 002AABB0  4E 80 00 20 */	blr

.global __ct__23CCollidableOBBTreeGroupFR12CInputStream
__ct__23CCollidableOBBTreeGroupFR12CInputStream:
/* 802ADC54 002AABB4  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 802ADC58 002AABB8  7C 08 02 A6 */	mflr r0
/* 802ADC5C 002AABBC  90 01 00 84 */	stw r0, 0x84(r1)
/* 802ADC60 002AABC0  38 00 00 00 */	li r0, 0
/* 802ADC64 002AABC4  BF 61 00 6C */	stmw r27, 0x6c(r1)
/* 802ADC68 002AABC8  7C 7B 1B 78 */	mr r27, r3
/* 802ADC6C 002AABCC  7C 9C 23 78 */	mr r28, r4
/* 802ADC70 002AABD0  90 03 00 04 */	stw r0, 4(r3)
/* 802ADC74 002AABD4  3C 60 80 5A */	lis r3, mskInvertedBox__6CAABox@ha
/* 802ADC78 002AABD8  38 83 67 54 */	addi r4, r3, mskInvertedBox__6CAABox@l
/* 802ADC7C 002AABDC  90 1B 00 08 */	stw r0, 8(r27)
/* 802ADC80 002AABE0  7F 83 E3 78 */	mr r3, r28
/* 802ADC84 002AABE4  90 1B 00 0C */	stw r0, 0xc(r27)
/* 802ADC88 002AABE8  90 1B 00 14 */	stw r0, 0x14(r27)
/* 802ADC8C 002AABEC  90 1B 00 18 */	stw r0, 0x18(r27)
/* 802ADC90 002AABF0  90 1B 00 1C */	stw r0, 0x1c(r27)
/* 802ADC94 002AABF4  C0 04 00 00 */	lfs f0, 0(r4)
/* 802ADC98 002AABF8  D0 1B 00 20 */	stfs f0, 0x20(r27)
/* 802ADC9C 002AABFC  C0 04 00 04 */	lfs f0, 4(r4)
/* 802ADCA0 002AAC00  D0 1B 00 24 */	stfs f0, 0x24(r27)
/* 802ADCA4 002AAC04  C0 04 00 08 */	lfs f0, 8(r4)
/* 802ADCA8 002AAC08  D0 1B 00 28 */	stfs f0, 0x28(r27)
/* 802ADCAC 002AAC0C  C0 04 00 0C */	lfs f0, 0xc(r4)
/* 802ADCB0 002AAC10  D0 1B 00 2C */	stfs f0, 0x2c(r27)
/* 802ADCB4 002AAC14  C0 04 00 10 */	lfs f0, 0x10(r4)
/* 802ADCB8 002AAC18  D0 1B 00 30 */	stfs f0, 0x30(r27)
/* 802ADCBC 002AAC1C  C0 04 00 14 */	lfs f0, 0x14(r4)
/* 802ADCC0 002AAC20  D0 1B 00 34 */	stfs f0, 0x34(r27)
/* 802ADCC4 002AAC24  48 09 0F C1 */	bl ReadLong__12CInputStreamFv
/* 802ADCC8 002AAC28  7C 7E 1B 78 */	mr r30, r3
/* 802ADCCC 002AAC2C  7F 63 DB 78 */	mr r3, r27
/* 802ADCD0 002AAC30  7F C4 F3 78 */	mr r4, r30
/* 802ADCD4 002AAC34  48 00 04 E5 */	bl "reserve__Q24rstl44vector<8COBBTree,Q24rstl17rmemory_allocator>Fi"
/* 802ADCD8 002AAC38  3C 60 80 3D */	lis r3, lbl_803D60F0@ha
/* 802ADCDC 002AAC3C  3B A0 00 00 */	li r29, 0
/* 802ADCE0 002AAC40  3B E3 60 F0 */	addi r31, r3, lbl_803D60F0@l
/* 802ADCE4 002AAC44  48 00 00 B8 */	b lbl_802ADD9C
lbl_802ADCE8:
/* 802ADCE8 002AAC48  38 9F 00 18 */	addi r4, r31, 0x18
/* 802ADCEC 002AAC4C  38 60 00 8C */	li r3, 0x8c
/* 802ADCF0 002AAC50  38 A0 00 00 */	li r5, 0
/* 802ADCF4 002AAC54  48 06 7B 79 */	bl __nw__FUlPCcPCc
/* 802ADCF8 002AAC58  7C 64 1B 79 */	or. r4, r3, r3
/* 802ADCFC 002AAC5C  41 82 00 10 */	beq lbl_802ADD0C
/* 802ADD00 002AAC60  7F 84 E3 78 */	mr r4, r28
/* 802ADD04 002AAC64  4B FF B0 9D */	bl __ct__8COBBTreeFR12CInputStream
/* 802ADD08 002AAC68  7C 64 1B 78 */	mr r4, r3
lbl_802ADD0C:
/* 802ADD0C 002AAC6C  7C 64 00 D0 */	neg r3, r4
/* 802ADD10 002AAC70  80 1B 00 04 */	lwz r0, 4(r27)
/* 802ADD14 002AAC74  80 BB 00 08 */	lwz r5, 8(r27)
/* 802ADD18 002AAC78  7C 63 23 78 */	or r3, r3, r4
/* 802ADD1C 002AAC7C  54 63 0F FE */	srwi r3, r3, 0x1f
/* 802ADD20 002AAC80  90 81 00 14 */	stw r4, 0x14(r1)
/* 802ADD24 002AAC84  7C 00 28 00 */	cmpw r0, r5
/* 802ADD28 002AAC88  98 61 00 10 */	stb r3, 0x10(r1)
/* 802ADD2C 002AAC8C  41 80 00 1C */	blt lbl_802ADD48
/* 802ADD30 002AAC90  2C 05 00 00 */	cmpwi r5, 0
/* 802ADD34 002AAC94  7F 63 DB 78 */	mr r3, r27
/* 802ADD38 002AAC98  38 80 00 04 */	li r4, 4
/* 802ADD3C 002AAC9C  41 82 00 08 */	beq lbl_802ADD44
/* 802ADD40 002AACA0  54 A4 08 3C */	slwi r4, r5, 1
lbl_802ADD44:
/* 802ADD44 002AACA4  48 00 04 75 */	bl "reserve__Q24rstl44vector<8COBBTree,Q24rstl17rmemory_allocator>Fi"
lbl_802ADD48:
/* 802ADD48 002AACA8  80 1B 00 04 */	lwz r0, 4(r27)
/* 802ADD4C 002AACAC  80 7B 00 0C */	lwz r3, 0xc(r27)
/* 802ADD50 002AACB0  54 00 18 38 */	slwi r0, r0, 3
/* 802ADD54 002AACB4  7C A3 02 15 */	add. r5, r3, r0
/* 802ADD58 002AACB8  41 82 00 1C */	beq lbl_802ADD74
/* 802ADD5C 002AACBC  88 81 00 10 */	lbz r4, 0x10(r1)
/* 802ADD60 002AACC0  38 00 00 00 */	li r0, 0
/* 802ADD64 002AACC4  80 61 00 14 */	lwz r3, 0x14(r1)
/* 802ADD68 002AACC8  98 85 00 00 */	stb r4, 0(r5)
/* 802ADD6C 002AACCC  90 65 00 04 */	stw r3, 4(r5)
/* 802ADD70 002AACD0  98 01 00 10 */	stb r0, 0x10(r1)
lbl_802ADD74:
/* 802ADD74 002AACD4  80 7B 00 04 */	lwz r3, 4(r27)
/* 802ADD78 002AACD8  88 01 00 10 */	lbz r0, 0x10(r1)
/* 802ADD7C 002AACDC  38 63 00 01 */	addi r3, r3, 1
/* 802ADD80 002AACE0  28 00 00 00 */	cmplwi r0, 0
/* 802ADD84 002AACE4  90 7B 00 04 */	stw r3, 4(r27)
/* 802ADD88 002AACE8  41 82 00 10 */	beq lbl_802ADD98
/* 802ADD8C 002AACEC  80 61 00 14 */	lwz r3, 0x14(r1)
/* 802ADD90 002AACF0  38 80 00 01 */	li r4, 1
/* 802ADD94 002AACF4  4B FF AF 7D */	bl __dt__8COBBTreeFv
lbl_802ADD98:
/* 802ADD98 002AACF8  3B BD 00 01 */	addi r29, r29, 1
lbl_802ADD9C:
/* 802ADD9C 002AACFC  7C 1D F0 40 */	cmplw r29, r30
/* 802ADDA0 002AAD00  41 80 FF 48 */	blt lbl_802ADCE8
/* 802ADDA4 002AAD04  80 9B 00 04 */	lwz r4, 4(r27)
/* 802ADDA8 002AAD08  38 7B 00 10 */	addi r3, r27, 0x10
/* 802ADDAC 002AAD0C  48 00 05 1D */	bl "reserve__Q24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>Fi"
/* 802ADDB0 002AAD10  3C 80 80 3F */	lis r4, lbl_803EC448@ha
/* 802ADDB4 002AAD14  3C 60 80 3E */	lis r3, __vt__19CCollisionPrimitive@ha
/* 802ADDB8 002AAD18  83 DB 00 0C */	lwz r30, 0xc(r27)
/* 802ADDBC 002AAD1C  3B E1 00 3C */	addi r31, r1, 0x3c
/* 802ADDC0 002AAD20  3B A4 C4 48 */	addi r29, r4, lbl_803EC448@l
/* 802ADDC4 002AAD24  3B 83 97 E4 */	addi r28, r3, __vt__19CCollisionPrimitive@l
/* 802ADDC8 002AAD28  48 00 00 F8 */	b lbl_802ADEC0
lbl_802ADDCC:
/* 802ADDCC 002AAD2C  38 00 00 00 */	li r0, 0
/* 802ADDD0 002AAD30  38 61 00 48 */	addi r3, r1, 0x48
/* 802ADDD4 002AAD34  90 01 00 0C */	stw r0, 0xc(r1)
/* 802ADDD8 002AAD38  38 A1 00 08 */	addi r5, r1, 8
/* 802ADDDC 002AAD3C  90 01 00 08 */	stw r0, 8(r1)
/* 802ADDE0 002AAD40  80 9E 00 04 */	lwz r4, 4(r30)
/* 802ADDE4 002AAD44  4B FF E9 01 */	bl __ct__18CCollidableOBBTreeFP8COBBTreeRC13CMaterialList
/* 802ADDE8 002AAD48  38 61 00 18 */	addi r3, r1, 0x18
/* 802ADDEC 002AAD4C  38 81 00 48 */	addi r4, r1, 0x48
/* 802ADDF0 002AAD50  4B FF E8 3D */	bl CalculateLocalAABox__18CCollidableOBBTreeCFv
/* 802ADDF4 002AAD54  C0 A1 00 18 */	lfs f5, 0x18(r1)
/* 802ADDF8 002AAD58  C0 81 00 1C */	lfs f4, 0x1c(r1)
/* 802ADDFC 002AAD5C  C0 61 00 20 */	lfs f3, 0x20(r1)
/* 802ADE00 002AAD60  C0 41 00 24 */	lfs f2, 0x24(r1)
/* 802ADE04 002AAD64  C0 21 00 28 */	lfs f1, 0x28(r1)
/* 802ADE08 002AAD68  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 802ADE0C 002AAD6C  D0 A1 00 30 */	stfs f5, 0x30(r1)
/* 802ADE10 002AAD70  D0 81 00 34 */	stfs f4, 0x34(r1)
/* 802ADE14 002AAD74  D0 61 00 38 */	stfs f3, 0x38(r1)
/* 802ADE18 002AAD78  D0 41 00 3C */	stfs f2, 0x3c(r1)
/* 802ADE1C 002AAD7C  D0 21 00 40 */	stfs f1, 0x40(r1)
/* 802ADE20 002AAD80  D0 01 00 44 */	stfs f0, 0x44(r1)
/* 802ADE24 002AAD84  80 1B 00 14 */	lwz r0, 0x14(r27)
/* 802ADE28 002AAD88  80 BB 00 18 */	lwz r5, 0x18(r27)
/* 802ADE2C 002AAD8C  7C 00 28 00 */	cmpw r0, r5
/* 802ADE30 002AAD90  41 80 00 1C */	blt lbl_802ADE4C
/* 802ADE34 002AAD94  2C 05 00 00 */	cmpwi r5, 0
/* 802ADE38 002AAD98  38 7B 00 10 */	addi r3, r27, 0x10
/* 802ADE3C 002AAD9C  38 80 00 04 */	li r4, 4
/* 802ADE40 002AADA0  41 82 00 08 */	beq lbl_802ADE48
/* 802ADE44 002AADA4  54 A4 08 3C */	slwi r4, r5, 1
lbl_802ADE48:
/* 802ADE48 002AADA8  48 00 04 81 */	bl "reserve__Q24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>Fi"
lbl_802ADE4C:
/* 802ADE4C 002AADAC  80 1B 00 14 */	lwz r0, 0x14(r27)
/* 802ADE50 002AADB0  80 7B 00 1C */	lwz r3, 0x1c(r27)
/* 802ADE54 002AADB4  1C 00 00 18 */	mulli r0, r0, 0x18
/* 802ADE58 002AADB8  7C 63 02 15 */	add. r3, r3, r0
/* 802ADE5C 002AADBC  41 82 00 34 */	beq lbl_802ADE90
/* 802ADE60 002AADC0  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 802ADE64 002AADC4  D0 03 00 00 */	stfs f0, 0(r3)
/* 802ADE68 002AADC8  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 802ADE6C 002AADCC  D0 03 00 04 */	stfs f0, 4(r3)
/* 802ADE70 002AADD0  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 802ADE74 002AADD4  D0 03 00 08 */	stfs f0, 8(r3)
/* 802ADE78 002AADD8  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 802ADE7C 002AADDC  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 802ADE80 002AADE0  C0 01 00 40 */	lfs f0, 0x40(r1)
/* 802ADE84 002AADE4  D0 03 00 10 */	stfs f0, 0x10(r3)
/* 802ADE88 002AADE8  C0 01 00 44 */	lfs f0, 0x44(r1)
/* 802ADE8C 002AADEC  D0 03 00 14 */	stfs f0, 0x14(r3)
lbl_802ADE90:
/* 802ADE90 002AADF0  80 BB 00 14 */	lwz r5, 0x14(r27)
/* 802ADE94 002AADF4  38 7B 00 20 */	addi r3, r27, 0x20
/* 802ADE98 002AADF8  38 81 00 30 */	addi r4, r1, 0x30
/* 802ADE9C 002AADFC  38 05 00 01 */	addi r0, r5, 1
/* 802ADEA0 002AAE00  90 1B 00 14 */	stw r0, 0x14(r27)
/* 802ADEA4 002AAE04  48 08 9C 65 */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802ADEA8 002AAE08  7F E4 FB 78 */	mr r4, r31
/* 802ADEAC 002AAE0C  38 7B 00 20 */	addi r3, r27, 0x20
/* 802ADEB0 002AAE10  48 08 9C 59 */	bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802ADEB4 002AAE14  93 A1 00 48 */	stw r29, 0x48(r1)
/* 802ADEB8 002AAE18  3B DE 00 08 */	addi r30, r30, 8
/* 802ADEBC 002AAE1C  93 81 00 48 */	stw r28, 0x48(r1)
lbl_802ADEC0:
/* 802ADEC0 002AAE20  80 1B 00 04 */	lwz r0, 4(r27)
/* 802ADEC4 002AAE24  80 7B 00 0C */	lwz r3, 0xc(r27)
/* 802ADEC8 002AAE28  54 00 18 38 */	slwi r0, r0, 3
/* 802ADECC 002AAE2C  7C 03 02 14 */	add r0, r3, r0
/* 802ADED0 002AAE30  7C 1E 00 40 */	cmplw r30, r0
/* 802ADED4 002AAE34  40 82 FE F8 */	bne lbl_802ADDCC
/* 802ADED8 002AAE38  7F 63 DB 78 */	mr r3, r27
/* 802ADEDC 002AAE3C  BB 61 00 6C */	lmw r27, 0x6c(r1)
/* 802ADEE0 002AAE40  80 01 00 84 */	lwz r0, 0x84(r1)
/* 802ADEE4 002AAE44  7C 08 03 A6 */	mtlr r0
/* 802ADEE8 002AAE48  38 21 00 80 */	addi r1, r1, 0x80
/* 802ADEEC 002AAE4C  4E 80 00 20 */	blr

.global FCollidableOBBTreeGroupFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer
FCollidableOBBTreeGroupFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer:
/* 802ADEF0 002AAE50  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802ADEF4 002AAE54  7C 08 02 A6 */	mflr r0
/* 802ADEF8 002AAE58  3C 80 80 3D */	lis r4, lbl_803D60F0@ha
/* 802ADEFC 002AAE5C  90 01 00 14 */	stw r0, 0x14(r1)
/* 802ADF00 002AAE60  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802ADF04 002AAE64  7C BF 2B 78 */	mr r31, r5
/* 802ADF08 002AAE68  38 A0 00 00 */	li r5, 0
/* 802ADF0C 002AAE6C  93 C1 00 08 */	stw r30, 8(r1)
/* 802ADF10 002AAE70  7C 7E 1B 78 */	mr r30, r3
/* 802ADF14 002AAE74  38 64 60 F0 */	addi r3, r4, lbl_803D60F0@l
/* 802ADF18 002AAE78  38 83 00 18 */	addi r4, r3, 0x18
/* 802ADF1C 002AAE7C  38 60 00 38 */	li r3, 0x38
/* 802ADF20 002AAE80  48 06 79 4D */	bl __nw__FUlPCcPCc
/* 802ADF24 002AAE84  7C 64 1B 79 */	or. r4, r3, r3
/* 802ADF28 002AAE88  41 82 00 10 */	beq lbl_802ADF38
/* 802ADF2C 002AAE8C  7F E4 FB 78 */	mr r4, r31
/* 802ADF30 002AAE90  4B FF FD 25 */	bl __ct__23CCollidableOBBTreeGroupFR12CInputStream
/* 802ADF34 002AAE94  7C 64 1B 78 */	mr r4, r3
lbl_802ADF38:
/* 802ADF38 002AAE98  7F C3 F3 78 */	mr r3, r30
/* 802ADF3C 002AAE9C  48 00 00 1D */	bl "__ct<23CCollidableOBBTreeGroup>__16CFactoryFnReturnFP23CCollidableOBBTreeGroup"
/* 802ADF40 002AAEA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802ADF44 002AAEA4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802ADF48 002AAEA8  83 C1 00 08 */	lwz r30, 8(r1)
/* 802ADF4C 002AAEAC  7C 08 03 A6 */	mtlr r0
/* 802ADF50 002AAEB0  38 21 00 10 */	addi r1, r1, 0x10
/* 802ADF54 002AAEB4  4E 80 00 20 */	blr

.global "__ct<23CCollidableOBBTreeGroup>__16CFactoryFnReturnFP23CCollidableOBBTreeGroup"
"__ct<23CCollidableOBBTreeGroup>__16CFactoryFnReturnFP23CCollidableOBBTreeGroup":
/* 802ADF58 002AAEB8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802ADF5C 002AAEBC  7C 08 02 A6 */	mflr r0
/* 802ADF60 002AAEC0  90 01 00 24 */	stw r0, 0x24(r1)
/* 802ADF64 002AAEC4  7C 04 00 D0 */	neg r0, r4
/* 802ADF68 002AAEC8  7C 00 23 78 */	or r0, r0, r4
/* 802ADF6C 002AAECC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802ADF70 002AAED0  54 00 0F FE */	srwi r0, r0, 0x1f
/* 802ADF74 002AAED4  7C 7F 1B 78 */	mr r31, r3
/* 802ADF78 002AAED8  38 61 00 08 */	addi r3, r1, 8
/* 802ADF7C 002AAEDC  90 81 00 14 */	stw r4, 0x14(r1)
/* 802ADF80 002AAEE0  38 81 00 10 */	addi r4, r1, 0x10
/* 802ADF84 002AAEE4  98 01 00 10 */	stb r0, 0x10(r1)
/* 802ADF88 002AAEE8  48 00 01 05 */	bl "GetIObjObjectFor__33TToken<23CCollidableOBBTreeGroup>FRCQ24rstl35auto_ptr<23CCollidableOBBTreeGroup>"
/* 802ADF8C 002AAEEC  80 61 00 0C */	lwz r3, 0xc(r1)
/* 802ADF90 002AAEF0  38 00 00 00 */	li r0, 0
/* 802ADF94 002AAEF4  98 01 00 08 */	stb r0, 8(r1)
/* 802ADF98 002AAEF8  7C 03 00 D0 */	neg r0, r3
/* 802ADF9C 002AAEFC  7C 00 1B 78 */	or r0, r0, r3
/* 802ADFA0 002AAF00  54 00 0F FE */	srwi r0, r0, 0x1f
/* 802ADFA4 002AAF04  98 1F 00 00 */	stb r0, 0(r31)
/* 802ADFA8 002AAF08  90 7F 00 04 */	stw r3, 4(r31)
/* 802ADFAC 002AAF0C  88 01 00 08 */	lbz r0, 8(r1)
/* 802ADFB0 002AAF10  28 00 00 00 */	cmplwi r0, 0
/* 802ADFB4 002AAF14  41 82 00 24 */	beq lbl_802ADFD8
/* 802ADFB8 002AAF18  80 61 00 0C */	lwz r3, 0xc(r1)
/* 802ADFBC 002AAF1C  28 03 00 00 */	cmplwi r3, 0
/* 802ADFC0 002AAF20  41 82 00 18 */	beq lbl_802ADFD8
/* 802ADFC4 002AAF24  81 83 00 00 */	lwz r12, 0(r3)
/* 802ADFC8 002AAF28  38 80 00 01 */	li r4, 1
/* 802ADFCC 002AAF2C  81 8C 00 08 */	lwz r12, 8(r12)
/* 802ADFD0 002AAF30  7D 89 03 A6 */	mtctr r12
/* 802ADFD4 002AAF34  4E 80 04 21 */	bctrl
lbl_802ADFD8:
/* 802ADFD8 002AAF38  38 61 00 10 */	addi r3, r1, 0x10
/* 802ADFDC 002AAF3C  38 80 FF FF */	li r4, -1
/* 802ADFE0 002AAF40  48 00 01 75 */	bl sub_802ae154
/* 802ADFE4 002AAF44  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802ADFE8 002AAF48  7F E3 FB 78 */	mr r3, r31
/* 802ADFEC 002AAF4C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802ADFF0 002AAF50  7C 08 03 A6 */	mtlr r0
/* 802ADFF4 002AAF54  38 21 00 20 */	addi r1, r1, 0x20
/* 802ADFF8 002AAF58  4E 80 00 20 */	blr

.global "__dt__51TObjOwnerDerivedFromIObj<23CCollidableOBBTreeGroup>Fv"
"__dt__51TObjOwnerDerivedFromIObj<23CCollidableOBBTreeGroup>Fv":
/* 802ADFFC 002AAF5C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802AE000 002AAF60  7C 08 02 A6 */	mflr r0
/* 802AE004 002AAF64  90 01 00 14 */	stw r0, 0x14(r1)
/* 802AE008 002AAF68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AE00C 002AAF6C  7C 9F 23 78 */	mr r31, r4
/* 802AE010 002AAF70  93 C1 00 08 */	stw r30, 8(r1)
/* 802AE014 002AAF74  7C 7E 1B 79 */	or. r30, r3, r3
/* 802AE018 002AAF78  41 82 00 58 */	beq lbl_802AE070
/* 802AE01C 002AAF7C  3C 60 80 3F */	lis r3, lbl_803EC498@ha
/* 802AE020 002AAF80  38 03 C4 98 */	addi r0, r3, lbl_803EC498@l
/* 802AE024 002AAF84  90 1E 00 00 */	stw r0, 0(r30)
/* 802AE028 002AAF88  80 7E 00 04 */	lwz r3, 4(r30)
/* 802AE02C 002AAF8C  28 03 00 00 */	cmplwi r3, 0
/* 802AE030 002AAF90  41 82 00 0C */	beq lbl_802AE03C
/* 802AE034 002AAF94  38 80 00 01 */	li r4, 1
/* 802AE038 002AAF98  4B EF A9 D5 */	bl sub_801a8a0c
lbl_802AE03C:
/* 802AE03C 002AAF9C  28 1E 00 00 */	cmplwi r30, 0
/* 802AE040 002AAFA0  41 82 00 20 */	beq lbl_802AE060
/* 802AE044 002AAFA4  3C 60 80 3E */	lis r3, __vt__31CObjOwnerDerivedFromIObjUntyped@ha
/* 802AE048 002AAFA8  38 03 8D 78 */	addi r0, r3, __vt__31CObjOwnerDerivedFromIObjUntyped@l
/* 802AE04C 002AAFAC  90 1E 00 00 */	stw r0, 0(r30)
/* 802AE050 002AAFB0  41 82 00 10 */	beq lbl_802AE060
/* 802AE054 002AAFB4  3C 60 80 3E */	lis r3, __vt__4IObj@ha
/* 802AE058 002AAFB8  38 03 8D 6C */	addi r0, r3, __vt__4IObj@l
/* 802AE05C 002AAFBC  90 1E 00 00 */	stw r0, 0(r30)
lbl_802AE060:
/* 802AE060 002AAFC0  7F E0 07 35 */	extsh. r0, r31
/* 802AE064 002AAFC4  40 81 00 0C */	ble lbl_802AE070
/* 802AE068 002AAFC8  7F C3 F3 78 */	mr r3, r30
/* 802AE06C 002AAFCC  48 06 78 C5 */	bl Free__7CMemoryFPCv
lbl_802AE070:
/* 802AE070 002AAFD0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802AE074 002AAFD4  7F C3 F3 78 */	mr r3, r30
/* 802AE078 002AAFD8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802AE07C 002AAFDC  83 C1 00 08 */	lwz r30, 8(r1)
/* 802AE080 002AAFE0  7C 08 03 A6 */	mtlr r0
/* 802AE084 002AAFE4  38 21 00 10 */	addi r1, r1, 0x10
/* 802AE088 002AAFE8  4E 80 00 20 */	blr

.global "GetIObjObjectFor__33TToken<23CCollidableOBBTreeGroup>FRCQ24rstl35auto_ptr<23CCollidableOBBTreeGroup>"
"GetIObjObjectFor__33TToken<23CCollidableOBBTreeGroup>FRCQ24rstl35auto_ptr<23CCollidableOBBTreeGroup>":
/* 802AE08C 002AAFEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802AE090 002AAFF0  7C 08 02 A6 */	mflr r0
/* 802AE094 002AAFF4  90 01 00 14 */	stw r0, 0x14(r1)
/* 802AE098 002AAFF8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AE09C 002AAFFC  7C 7F 1B 78 */	mr r31, r3
/* 802AE0A0 002AB000  48 00 00 19 */	bl "GetNewDerivedObject__51TObjOwnerDerivedFromIObj<23CCollidableOBBTreeGroup>FRCQ24rstl35auto_ptr<23CCollidableOBBTreeGroup>"
/* 802AE0A4 002AB004  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802AE0A8 002AB008  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802AE0AC 002AB00C  7C 08 03 A6 */	mtlr r0
/* 802AE0B0 002AB010  38 21 00 10 */	addi r1, r1, 0x10
/* 802AE0B4 002AB014  4E 80 00 20 */	blr

.global "GetNewDerivedObject__51TObjOwnerDerivedFromIObj<23CCollidableOBBTreeGroup>FRCQ24rstl35auto_ptr<23CCollidableOBBTreeGroup>"
"GetNewDerivedObject__51TObjOwnerDerivedFromIObj<23CCollidableOBBTreeGroup>FRCQ24rstl35auto_ptr<23CCollidableOBBTreeGroup>":
/* 802AE0B8 002AB018  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802AE0BC 002AB01C  7C 08 02 A6 */	mflr r0
/* 802AE0C0 002AB020  3C A0 80 3D */	lis r5, lbl_803D60F0@ha
/* 802AE0C4 002AB024  90 01 00 14 */	stw r0, 0x14(r1)
/* 802AE0C8 002AB028  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AE0CC 002AB02C  7C 9F 23 78 */	mr r31, r4
/* 802AE0D0 002AB030  93 C1 00 08 */	stw r30, 8(r1)
/* 802AE0D4 002AB034  7C 7E 1B 78 */	mr r30, r3
/* 802AE0D8 002AB038  38 65 60 F0 */	addi r3, r5, lbl_803D60F0@l
/* 802AE0DC 002AB03C  38 A0 00 00 */	li r5, 0
/* 802AE0E0 002AB040  38 83 00 18 */	addi r4, r3, 0x18
/* 802AE0E4 002AB044  38 60 00 08 */	li r3, 8
/* 802AE0E8 002AB048  48 06 77 85 */	bl __nw__FUlPCcPCc
/* 802AE0EC 002AB04C  28 03 00 00 */	cmplwi r3, 0
/* 802AE0F0 002AB050  41 82 00 38 */	beq lbl_802AE128
/* 802AE0F4 002AB054  3C 80 80 3E */	lis r4, __vt__4IObj@ha
/* 802AE0F8 002AB058  3C A0 80 3E */	lis r5, __vt__31CObjOwnerDerivedFromIObjUntyped@ha
/* 802AE0FC 002AB05C  38 04 8D 6C */	addi r0, r4, __vt__4IObj@l
/* 802AE100 002AB060  3C 80 80 3F */	lis r4, lbl_803EC498@ha
/* 802AE104 002AB064  90 03 00 00 */	stw r0, 0(r3)
/* 802AE108 002AB068  38 C5 8D 78 */	addi r6, r5, __vt__31CObjOwnerDerivedFromIObjUntyped@l
/* 802AE10C 002AB06C  38 A0 00 00 */	li r5, 0
/* 802AE110 002AB070  38 04 C4 98 */	addi r0, r4, lbl_803EC498@l
/* 802AE114 002AB074  90 C3 00 00 */	stw r6, 0(r3)
/* 802AE118 002AB078  98 BF 00 00 */	stb r5, 0(r31)
/* 802AE11C 002AB07C  80 9F 00 04 */	lwz r4, 4(r31)
/* 802AE120 002AB080  90 83 00 04 */	stw r4, 4(r3)
/* 802AE124 002AB084  90 03 00 00 */	stw r0, 0(r3)
lbl_802AE128:
/* 802AE128 002AB088  7C 03 00 D0 */	neg r0, r3
/* 802AE12C 002AB08C  7C 00 1B 78 */	or r0, r0, r3
/* 802AE130 002AB090  54 00 0F FE */	srwi r0, r0, 0x1f
/* 802AE134 002AB094  98 1E 00 00 */	stb r0, 0(r30)
/* 802AE138 002AB098  90 7E 00 04 */	stw r3, 4(r30)
/* 802AE13C 002AB09C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802AE140 002AB0A0  83 C1 00 08 */	lwz r30, 8(r1)
/* 802AE144 002AB0A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802AE148 002AB0A8  7C 08 03 A6 */	mtlr r0
/* 802AE14C 002AB0AC  38 21 00 10 */	addi r1, r1, 0x10
/* 802AE150 002AB0B0  4E 80 00 20 */	blr

.global sub_802ae154
sub_802ae154:
/* 802AE154 002AB0B4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802AE158 002AB0B8  7C 08 02 A6 */	mflr r0
/* 802AE15C 002AB0BC  90 01 00 14 */	stw r0, 0x14(r1)
/* 802AE160 002AB0C0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802AE164 002AB0C4  7C 9F 23 78 */	mr r31, r4
/* 802AE168 002AB0C8  93 C1 00 08 */	stw r30, 8(r1)
/* 802AE16C 002AB0CC  7C 7E 1B 79 */	or. r30, r3, r3
/* 802AE170 002AB0D0  41 82 00 2C */	beq lbl_802AE19C
/* 802AE174 002AB0D4  88 1E 00 00 */	lbz r0, 0(r30)
/* 802AE178 002AB0D8  28 00 00 00 */	cmplwi r0, 0
/* 802AE17C 002AB0DC  41 82 00 10 */	beq lbl_802AE18C
/* 802AE180 002AB0E0  80 7E 00 04 */	lwz r3, 4(r30)
/* 802AE184 002AB0E4  38 80 00 01 */	li r4, 1
/* 802AE188 002AB0E8  4B EF A8 85 */	bl sub_801a8a0c
lbl_802AE18C:
/* 802AE18C 002AB0EC  7F E0 07 35 */	extsh. r0, r31
/* 802AE190 002AB0F0  40 81 00 0C */	ble lbl_802AE19C
/* 802AE194 002AB0F4  7F C3 F3 78 */	mr r3, r30
/* 802AE198 002AB0F8  48 06 77 99 */	bl Free__7CMemoryFPCv
lbl_802AE19C:
/* 802AE19C 002AB0FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802AE1A0 002AB100  7F C3 F3 78 */	mr r3, r30
/* 802AE1A4 002AB104  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802AE1A8 002AB108  83 C1 00 08 */	lwz r30, 8(r1)
/* 802AE1AC 002AB10C  7C 08 03 A6 */	mtlr r0
/* 802AE1B0 002AB110  38 21 00 10 */	addi r1, r1, 0x10
/* 802AE1B4 002AB114  4E 80 00 20 */	blr

.global "reserve__Q24rstl44vector<8COBBTree,Q24rstl17rmemory_allocator>Fi"
"reserve__Q24rstl44vector<8COBBTree,Q24rstl17rmemory_allocator>Fi":
/* 802AE1B8 002AB118  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 802AE1BC 002AB11C  7C 08 02 A6 */	mflr r0
/* 802AE1C0 002AB120  90 01 00 34 */	stw r0, 0x34(r1)
/* 802AE1C4 002AB124  BF 61 00 1C */	stmw r27, 0x1c(r1)
/* 802AE1C8 002AB128  7C 9F 23 78 */	mr r31, r4
/* 802AE1CC 002AB12C  7C 7E 1B 78 */	mr r30, r3
/* 802AE1D0 002AB130  80 03 00 08 */	lwz r0, 8(r3)
/* 802AE1D4 002AB134  7C 1F 00 00 */	cmpw r31, r0
/* 802AE1D8 002AB138  40 81 00 DC */	ble lbl_802AE2B4
/* 802AE1DC 002AB13C  57 E3 18 39 */	rlwinm. r3, r31, 3, 0, 0x1c
/* 802AE1E0 002AB140  40 82 00 0C */	bne lbl_802AE1EC
/* 802AE1E4 002AB144  3B A0 00 00 */	li r29, 0
/* 802AE1E8 002AB148  48 00 00 1C */	b lbl_802AE204
lbl_802AE1EC:
/* 802AE1EC 002AB14C  3C 80 80 3D */	lis r4, lbl_803D60F0@ha
/* 802AE1F0 002AB150  38 A0 00 00 */	li r5, 0
/* 802AE1F4 002AB154  38 84 60 F0 */	addi r4, r4, lbl_803D60F0@l
/* 802AE1F8 002AB158  38 84 00 18 */	addi r4, r4, 0x18
/* 802AE1FC 002AB15C  48 06 76 1D */	bl __nwa__FUlPCcPCc
/* 802AE200 002AB160  7C 7D 1B 78 */	mr r29, r3
lbl_802AE204:
/* 802AE204 002AB164  80 7E 00 04 */	lwz r3, 4(r30)
/* 802AE208 002AB168  7F A5 EB 78 */	mr r5, r29
/* 802AE20C 002AB16C  80 DE 00 0C */	lwz r6, 0xc(r30)
/* 802AE210 002AB170  38 00 00 00 */	li r0, 0
/* 802AE214 002AB174  54 63 18 38 */	slwi r3, r3, 3
/* 802AE218 002AB178  7C 86 1A 14 */	add r4, r6, r3
/* 802AE21C 002AB17C  90 C1 00 10 */	stw r6, 0x10(r1)
/* 802AE220 002AB180  90 81 00 08 */	stw r4, 8(r1)
/* 802AE224 002AB184  90 81 00 0C */	stw r4, 0xc(r1)
/* 802AE228 002AB188  90 C1 00 14 */	stw r6, 0x14(r1)
/* 802AE22C 002AB18C  48 00 00 28 */	b lbl_802AE254
lbl_802AE230:
/* 802AE230 002AB190  28 05 00 00 */	cmplwi r5, 0
/* 802AE234 002AB194  41 82 00 18 */	beq lbl_802AE24C
/* 802AE238 002AB198  88 66 00 00 */	lbz r3, 0(r6)
/* 802AE23C 002AB19C  98 65 00 00 */	stb r3, 0(r5)
/* 802AE240 002AB1A0  80 66 00 04 */	lwz r3, 4(r6)
/* 802AE244 002AB1A4  90 65 00 04 */	stw r3, 4(r5)
/* 802AE248 002AB1A8  98 06 00 00 */	stb r0, 0(r6)
lbl_802AE24C:
/* 802AE24C 002AB1AC  38 A5 00 08 */	addi r5, r5, 8
/* 802AE250 002AB1B0  38 C6 00 08 */	addi r6, r6, 8
lbl_802AE254:
/* 802AE254 002AB1B4  7C 06 20 40 */	cmplw r6, r4
/* 802AE258 002AB1B8  40 82 FF D8 */	bne lbl_802AE230
/* 802AE25C 002AB1BC  80 1E 00 04 */	lwz r0, 4(r30)
/* 802AE260 002AB1C0  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 802AE264 002AB1C4  54 00 18 38 */	slwi r0, r0, 3
/* 802AE268 002AB1C8  7F 9B 02 14 */	add r28, r27, r0
/* 802AE26C 002AB1CC  48 00 00 28 */	b lbl_802AE294
lbl_802AE270:
/* 802AE270 002AB1D0  28 1B 00 00 */	cmplwi r27, 0
/* 802AE274 002AB1D4  41 82 00 1C */	beq lbl_802AE290
/* 802AE278 002AB1D8  88 1B 00 00 */	lbz r0, 0(r27)
/* 802AE27C 002AB1DC  28 00 00 00 */	cmplwi r0, 0
/* 802AE280 002AB1E0  41 82 00 10 */	beq lbl_802AE290
/* 802AE284 002AB1E4  80 7B 00 04 */	lwz r3, 4(r27)
/* 802AE288 002AB1E8  38 80 00 01 */	li r4, 1
/* 802AE28C 002AB1EC  4B FF AA 85 */	bl __dt__8COBBTreeFv
lbl_802AE290:
/* 802AE290 002AB1F0  3B 7B 00 08 */	addi r27, r27, 8
lbl_802AE294:
/* 802AE294 002AB1F4  7C 1B E0 40 */	cmplw r27, r28
/* 802AE298 002AB1F8  40 82 FF D8 */	bne lbl_802AE270
/* 802AE29C 002AB1FC  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 802AE2A0 002AB200  28 03 00 00 */	cmplwi r3, 0
/* 802AE2A4 002AB204  41 82 00 08 */	beq lbl_802AE2AC
/* 802AE2A8 002AB208  48 06 76 89 */	bl Free__7CMemoryFPCv
lbl_802AE2AC:
/* 802AE2AC 002AB20C  93 BE 00 0C */	stw r29, 0xc(r30)
/* 802AE2B0 002AB210  93 FE 00 08 */	stw r31, 8(r30)
lbl_802AE2B4:
/* 802AE2B4 002AB214  BB 61 00 1C */	lmw r27, 0x1c(r1)
/* 802AE2B8 002AB218  80 01 00 34 */	lwz r0, 0x34(r1)
/* 802AE2BC 002AB21C  7C 08 03 A6 */	mtlr r0
/* 802AE2C0 002AB220  38 21 00 30 */	addi r1, r1, 0x30
/* 802AE2C4 002AB224  4E 80 00 20 */	blr

.global "reserve__Q24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>Fi"
"reserve__Q24rstl42vector<6CAABox,Q24rstl17rmemory_allocator>Fi":
/* 802AE2C8 002AB228  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 802AE2CC 002AB22C  7C 08 02 A6 */	mflr r0
/* 802AE2D0 002AB230  90 01 00 34 */	stw r0, 0x34(r1)
/* 802AE2D4 002AB234  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 802AE2D8 002AB238  7C 9F 23 78 */	mr r31, r4
/* 802AE2DC 002AB23C  93 C1 00 28 */	stw r30, 0x28(r1)
/* 802AE2E0 002AB240  7C 7E 1B 78 */	mr r30, r3
/* 802AE2E4 002AB244  93 A1 00 24 */	stw r29, 0x24(r1)
/* 802AE2E8 002AB248  80 03 00 08 */	lwz r0, 8(r3)
/* 802AE2EC 002AB24C  7C 1F 00 00 */	cmpw r31, r0
/* 802AE2F0 002AB250  40 81 00 D8 */	ble lbl_802AE3C8
/* 802AE2F4 002AB254  1C 7F 00 18 */	mulli r3, r31, 0x18
/* 802AE2F8 002AB258  2C 03 00 00 */	cmpwi r3, 0
/* 802AE2FC 002AB25C  40 82 00 0C */	bne lbl_802AE308
/* 802AE300 002AB260  3B A0 00 00 */	li r29, 0
/* 802AE304 002AB264  48 00 00 1C */	b lbl_802AE320
lbl_802AE308:
/* 802AE308 002AB268  3C 80 80 3D */	lis r4, lbl_803D60F0@ha
/* 802AE30C 002AB26C  38 A0 00 00 */	li r5, 0
/* 802AE310 002AB270  38 84 60 F0 */	addi r4, r4, lbl_803D60F0@l
/* 802AE314 002AB274  38 84 00 18 */	addi r4, r4, 0x18
/* 802AE318 002AB278  48 06 75 01 */	bl __nwa__FUlPCcPCc
/* 802AE31C 002AB27C  7C 7D 1B 78 */	mr r29, r3
lbl_802AE320:
/* 802AE320 002AB280  80 1E 00 04 */	lwz r0, 4(r30)
/* 802AE324 002AB284  7F A3 EB 78 */	mr r3, r29
/* 802AE328 002AB288  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 802AE32C 002AB28C  1C 00 00 18 */	mulli r0, r0, 0x18
/* 802AE330 002AB290  90 81 00 10 */	stw r4, 0x10(r1)
/* 802AE334 002AB294  7C 04 02 14 */	add r0, r4, r0
/* 802AE338 002AB298  90 81 00 14 */	stw r4, 0x14(r1)
/* 802AE33C 002AB29C  90 01 00 08 */	stw r0, 8(r1)
/* 802AE340 002AB2A0  90 01 00 0C */	stw r0, 0xc(r1)
/* 802AE344 002AB2A4  48 00 00 44 */	b lbl_802AE388
lbl_802AE348:
/* 802AE348 002AB2A8  28 03 00 00 */	cmplwi r3, 0
/* 802AE34C 002AB2AC  41 82 00 34 */	beq lbl_802AE380
/* 802AE350 002AB2B0  C0 04 00 00 */	lfs f0, 0(r4)
/* 802AE354 002AB2B4  D0 03 00 00 */	stfs f0, 0(r3)
/* 802AE358 002AB2B8  C0 04 00 04 */	lfs f0, 4(r4)
/* 802AE35C 002AB2BC  D0 03 00 04 */	stfs f0, 4(r3)
/* 802AE360 002AB2C0  C0 04 00 08 */	lfs f0, 8(r4)
/* 802AE364 002AB2C4  D0 03 00 08 */	stfs f0, 8(r3)
/* 802AE368 002AB2C8  C0 04 00 0C */	lfs f0, 0xc(r4)
/* 802AE36C 002AB2CC  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 802AE370 002AB2D0  C0 04 00 10 */	lfs f0, 0x10(r4)
/* 802AE374 002AB2D4  D0 03 00 10 */	stfs f0, 0x10(r3)
/* 802AE378 002AB2D8  C0 04 00 14 */	lfs f0, 0x14(r4)
/* 802AE37C 002AB2DC  D0 03 00 14 */	stfs f0, 0x14(r3)
lbl_802AE380:
/* 802AE380 002AB2E0  38 63 00 18 */	addi r3, r3, 0x18
/* 802AE384 002AB2E4  38 84 00 18 */	addi r4, r4, 0x18
lbl_802AE388:
/* 802AE388 002AB2E8  7C 04 00 40 */	cmplw r4, r0
/* 802AE38C 002AB2EC  40 82 FF BC */	bne lbl_802AE348
/* 802AE390 002AB2F0  80 1E 00 04 */	lwz r0, 4(r30)
/* 802AE394 002AB2F4  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 802AE398 002AB2F8  1C 00 00 18 */	mulli r0, r0, 0x18
/* 802AE39C 002AB2FC  7C 64 1B 78 */	mr r4, r3
/* 802AE3A0 002AB300  7C 03 02 14 */	add r0, r3, r0
/* 802AE3A4 002AB304  48 00 00 08 */	b lbl_802AE3AC
lbl_802AE3A8:
/* 802AE3A8 002AB308  38 84 00 18 */	addi r4, r4, 0x18
lbl_802AE3AC:
/* 802AE3AC 002AB30C  7C 04 00 40 */	cmplw r4, r0
/* 802AE3B0 002AB310  40 82 FF F8 */	bne lbl_802AE3A8
/* 802AE3B4 002AB314  28 03 00 00 */	cmplwi r3, 0
/* 802AE3B8 002AB318  41 82 00 08 */	beq lbl_802AE3C0
/* 802AE3BC 002AB31C  48 06 75 75 */	bl Free__7CMemoryFPCv
lbl_802AE3C0:
/* 802AE3C0 002AB320  93 BE 00 0C */	stw r29, 0xc(r30)
/* 802AE3C4 002AB324  93 FE 00 08 */	stw r31, 8(r30)
lbl_802AE3C8:
/* 802AE3C8 002AB328  80 01 00 34 */	lwz r0, 0x34(r1)
/* 802AE3CC 002AB32C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 802AE3D0 002AB330  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 802AE3D4 002AB334  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 802AE3D8 002AB338  7C 08 03 A6 */	mtlr r0
/* 802AE3DC 002AB33C  38 21 00 30 */	addi r1, r1, 0x30
/* 802AE3E0 002AB340  4E 80 00 20 */	blr

.section .sdata2, "a"
.balign 8
.global lbl_805ADF00
lbl_805ADF00:
	# ROM: 0x3FA7A0
	.4byte 0

.global lbl_805ADF04
lbl_805ADF04:
	# ROM: 0x3FA7A4
	.float 1.0


.section .rodata
.balign 8
.global lbl_803D60F0
lbl_803D60F0:
	# ROM: 0x3D30F0
	.asciz "CCollidableOBBTreeGroup"
	.asciz "??(??)"
	.balign 4