prime/asm/Collision/COBBox.s

788 lines
40 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax"
.global OBBIntersectsBox__6COBBoxCFRC6COBBox
OBBIntersectsBox__6COBBoxCFRC6COBBox:
/* 802D5494 002D23F4 94 21 FE 60 */ stwu r1, -0x1a0(r1)
/* 802D5498 002D23F8 DB E1 01 90 */ stfd f31, 0x190(r1)
/* 802D549C 002D23FC F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0
/* 802D54A0 002D2400 DB C1 01 80 */ stfd f30, 0x180(r1)
/* 802D54A4 002D2404 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0
/* 802D54A8 002D2408 DB A1 01 70 */ stfd f29, 0x170(r1)
/* 802D54AC 002D240C F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0
/* 802D54B0 002D2410 DB 81 01 60 */ stfd f28, 0x160(r1)
/* 802D54B4 002D2414 F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0
/* 802D54B8 002D2418 DB 61 01 50 */ stfd f27, 0x150(r1)
/* 802D54BC 002D241C F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0
/* 802D54C0 002D2420 DB 41 01 40 */ stfd f26, 0x140(r1)
/* 802D54C4 002D2424 F3 41 01 48 */ psq_st f26, 328(r1), 0, qr0
/* 802D54C8 002D2428 DB 21 01 30 */ stfd f25, 0x130(r1)
/* 802D54CC 002D242C F3 21 01 38 */ psq_st f25, 312(r1), 0, qr0
/* 802D54D0 002D2430 DB 01 01 20 */ stfd f24, 0x120(r1)
/* 802D54D4 002D2434 F3 01 01 28 */ psq_st f24, 296(r1), 0, qr0
/* 802D54D8 002D2438 DA E1 01 10 */ stfd f23, 0x110(r1)
/* 802D54DC 002D243C F2 E1 01 18 */ psq_st f23, 280(r1), 0, qr0
/* 802D54E0 002D2440 DA C1 01 00 */ stfd f22, 0x100(r1)
/* 802D54E4 002D2444 F2 C1 01 08 */ psq_st f22, 264(r1), 0, qr0
/* 802D54E8 002D2448 DA A1 00 F0 */ stfd f21, 0xf0(r1)
/* 802D54EC 002D244C F2 A1 00 F8 */ psq_st f21, 248(r1), 0, qr0
/* 802D54F0 002D2450 DA 81 00 E0 */ stfd f20, 0xe0(r1)
/* 802D54F4 002D2454 F2 81 00 E8 */ psq_st f20, 232(r1), 0, qr0
/* 802D54F8 002D2458 DA 61 00 D0 */ stfd f19, 0xd0(r1)
/* 802D54FC 002D245C F2 61 00 D8 */ psq_st f19, 216(r1), 0, qr0
/* 802D5500 002D2460 DA 41 00 C0 */ stfd f18, 0xc0(r1)
/* 802D5504 002D2464 F2 41 00 C8 */ psq_st f18, 200(r1), 0, qr0
/* 802D5508 002D2468 DA 21 00 B0 */ stfd f17, 0xb0(r1)
/* 802D550C 002D246C F2 21 00 B8 */ psq_st f17, 184(r1), 0, qr0
/* 802D5510 002D2470 DA 01 00 A0 */ stfd f16, 0xa0(r1)
/* 802D5514 002D2474 F2 01 00 A8 */ psq_st f16, 168(r1), 0, qr0
/* 802D5518 002D2478 D9 E1 00 90 */ stfd f15, 0x90(r1)
/* 802D551C 002D247C F1 E1 00 98 */ psq_st f15, 152(r1), 0, qr0
/* 802D5520 002D2480 D9 C1 00 80 */ stfd f14, 0x80(r1)
/* 802D5524 002D2484 F1 C1 00 88 */ psq_st f14, 136(r1), 0, qr0
/* 802D5528 002D2488 C0 A3 00 10 */ lfs f5, 0x10(r3)
/* 802D552C 002D248C 38 E1 00 14 */ addi r7, r1, 0x14
/* 802D5530 002D2490 C1 64 00 10 */ lfs f11, 0x10(r4)
/* 802D5534 002D2494 39 03 00 30 */ addi r8, r3, 0x30
/* 802D5538 002D2498 FE C0 28 18 */ frsp f22, f5
/* 802D553C 002D249C C3 63 00 00 */ lfs f27, 0(r3)
/* 802D5540 002D24A0 C0 44 00 00 */ lfs f2, 0(r4)
/* 802D5544 002D24A4 FE A0 58 18 */ frsp f21, f11
/* 802D5548 002D24A8 C1 A4 00 14 */ lfs f13, 0x14(r4)
/* 802D554C 002D24AC FF 00 D8 18 */ frsp f24, f27
/* 802D5550 002D24B0 C0 C3 00 20 */ lfs f6, 0x20(r3)
/* 802D5554 002D24B4 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D5558 002D24B8 C1 84 00 20 */ lfs f12, 0x20(r4)
/* 802D555C 002D24BC FE E0 10 18 */ frsp f23, f2
/* 802D5560 002D24C0 C0 24 00 04 */ lfs f1, 4(r4)
/* 802D5564 002D24C4 FE A0 68 18 */ frsp f21, f13
/* 802D5568 002D24C8 C2 64 00 18 */ lfs f19, 0x18(r4)
/* 802D556C 002D24CC EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D5570 002D24D0 C0 E3 00 14 */ lfs f7, 0x14(r3)
/* 802D5574 002D24D4 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D5578 002D24D8 C1 23 00 18 */ lfs f9, 0x18(r3)
/* 802D557C 002D24DC C2 44 00 24 */ lfs f18, 0x24(r4)
/* 802D5580 002D24E0 FF 40 30 18 */ frsp f26, f6
/* 802D5584 002D24E4 FF 20 60 18 */ frsp f25, f12
/* 802D5588 002D24E8 C0 04 00 08 */ lfs f0, 8(r4)
/* 802D558C 002D24EC C0 83 00 04 */ lfs f4, 4(r3)
/* 802D5590 002D24F0 FE E0 08 18 */ frsp f23, f1
/* 802D5594 002D24F4 C0 63 00 08 */ lfs f3, 8(r3)
/* 802D5598 002D24F8 FE A0 98 18 */ frsp f21, f19
/* 802D559C 002D24FC ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D55A0 002D2500 C2 84 00 28 */ lfs f20, 0x28(r4)
/* 802D55A4 002D2504 EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D55A8 002D2508 C1 03 00 24 */ lfs f8, 0x24(r3)
/* 802D55AC 002D250C C1 43 00 28 */ lfs f10, 0x28(r3)
/* 802D55B0 002D2510 FF 20 90 18 */ frsp f25, f18
/* 802D55B4 002D2514 D1 E1 00 14 */ stfs f15, 0x14(r1)
/* 802D55B8 002D2518 FE E0 00 18 */ frsp f23, f0
/* 802D55BC 002D251C ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D55C0 002D2520 C2 03 00 1C */ lfs f16, 0x1c(r3)
/* 802D55C4 002D2524 C3 24 00 1C */ lfs f25, 0x1c(r4)
/* 802D55C8 002D2528 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D55CC 002D252C C2 A3 00 0C */ lfs f21, 0xc(r3)
/* 802D55D0 002D2530 EF 99 80 28 */ fsubs f28, f25, f16
/* 802D55D4 002D2534 C2 C4 00 0C */ lfs f22, 0xc(r4)
/* 802D55D8 002D2538 FF 20 A0 18 */ frsp f25, f20
/* 802D55DC 002D253C C3 A3 00 2C */ lfs f29, 0x2c(r3)
/* 802D55E0 002D2540 EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D55E4 002D2544 C2 E4 00 2C */ lfs f23, 0x2c(r4)
/* 802D55E8 002D2548 D1 E1 00 18 */ stfs f15, 0x18(r1)
/* 802D55EC 002D254C EF 16 A8 28 */ fsubs f24, f22, f21
/* 802D55F0 002D2550 EE DC 01 72 */ fmuls f22, f28, f5
/* 802D55F4 002D2554 38 64 00 30 */ addi r3, r4, 0x30
/* 802D55F8 002D2558 EE BC 01 F2 */ fmuls f21, f28, f7
/* 802D55FC 002D255C D3 61 00 5C */ stfs f27, 0x5c(r1)
/* 802D5600 002D2560 EE 3C 02 72 */ fmuls f17, f28, f9
/* 802D5604 002D2564 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D5608 002D2568 EE F7 E8 28 */ fsubs f23, f23, f29
/* 802D560C 002D256C D0 A1 00 60 */ stfs f5, 0x60(r1)
/* 802D5610 002D2570 EE D8 B6 FA */ fmadds f22, f24, f27, f22
/* 802D5614 002D2574 EE 18 A9 3A */ fmadds f16, f24, f4, f21
/* 802D5618 002D2578 D0 C1 00 64 */ stfs f6, 0x64(r1)
/* 802D561C 002D257C EC B8 88 FA */ fmadds f5, f24, f3, f17
/* 802D5620 002D2580 EE 37 B1 BA */ fmadds f17, f23, f6, f22
/* 802D5624 002D2584 D0 81 00 68 */ stfs f4, 0x68(r1)
/* 802D5628 002D2588 EC D7 82 3A */ fmadds f6, f23, f8, f16
/* 802D562C 002D258C EC B7 2A BA */ fmadds f5, f23, f10, f5
/* 802D5630 002D2590 D0 E1 00 6C */ stfs f7, 0x6c(r1)
/* 802D5634 002D2594 D1 01 00 70 */ stfs f8, 0x70(r1)
/* 802D5638 002D2598 D0 61 00 74 */ stfs f3, 0x74(r1)
/* 802D563C 002D259C D1 21 00 78 */ stfs f9, 0x78(r1)
/* 802D5640 002D25A0 D1 41 00 7C */ stfs f10, 0x7c(r1)
/* 802D5644 002D25A4 D0 41 00 38 */ stfs f2, 0x38(r1)
/* 802D5648 002D25A8 D1 61 00 3C */ stfs f11, 0x3c(r1)
/* 802D564C 002D25AC D1 81 00 40 */ stfs f12, 0x40(r1)
/* 802D5650 002D25B0 D0 21 00 44 */ stfs f1, 0x44(r1)
/* 802D5654 002D25B4 D1 A1 00 48 */ stfs f13, 0x48(r1)
/* 802D5658 002D25B8 D2 41 00 4C */ stfs f18, 0x4c(r1)
/* 802D565C 002D25BC D0 01 00 50 */ stfs f0, 0x50(r1)
/* 802D5660 002D25C0 D2 61 00 54 */ stfs f19, 0x54(r1)
/* 802D5664 002D25C4 D2 81 00 58 */ stfs f20, 0x58(r1)
/* 802D5668 002D25C8 D2 21 00 08 */ stfs f17, 8(r1)
/* 802D566C 002D25CC D0 C1 00 0C */ stfs f6, 0xc(r1)
/* 802D5670 002D25D0 D0 A1 00 10 */ stfs f5, 0x10(r1)
/* 802D5674 002D25D4 D1 E1 00 1C */ stfs f15, 0x1c(r1)
/* 802D5678 002D25D8 FE C0 38 18 */ frsp f22, f7
/* 802D567C 002D25DC FE A0 58 18 */ frsp f21, f11
/* 802D5680 002D25E0 FF 00 20 18 */ frsp f24, f4
/* 802D5684 002D25E4 FE E0 10 18 */ frsp f23, f2
/* 802D5688 002D25E8 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D568C 002D25EC FE A0 68 18 */ frsp f21, f13
/* 802D5690 002D25F0 FF 40 40 18 */ frsp f26, f8
/* 802D5694 002D25F4 EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D5698 002D25F8 FF 20 60 18 */ frsp f25, f12
/* 802D569C 002D25FC EE 36 05 72 */ fmuls f17, f22, f21
/* 802D56A0 002D2600 FE E0 08 18 */ frsp f23, f1
/* 802D56A4 002D2604 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D56A8 002D2608 FE A0 98 18 */ frsp f21, f19
/* 802D56AC 002D260C EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D56B0 002D2610 FF 20 90 18 */ frsp f25, f18
/* 802D56B4 002D2614 D1 E7 00 0C */ stfs f15, 0xc(r7)
/* 802D56B8 002D2618 FE E0 00 18 */ frsp f23, f0
/* 802D56BC 002D261C EE 36 05 72 */ fmuls f17, f22, f21
/* 802D56C0 002D2620 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D56C4 002D2624 FF 20 A0 18 */ frsp f25, f20
/* 802D56C8 002D2628 EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D56CC 002D262C D1 E7 00 10 */ stfs f15, 0x10(r7)
/* 802D56D0 002D2630 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D56D4 002D2634 D1 E7 00 14 */ stfs f15, 0x14(r7)
/* 802D56D8 002D2638 FE C0 48 18 */ frsp f22, f9
/* 802D56DC 002D263C 38 00 00 03 */ li r0, 3
/* 802D56E0 002D2640 FE A0 58 18 */ frsp f21, f11
/* 802D56E4 002D2644 7D 04 43 78 */ mr r4, r8
/* 802D56E8 002D2648 FF 00 18 18 */ frsp f24, f3
/* 802D56EC 002D264C 7C E5 3B 78 */ mr r5, r7
/* 802D56F0 002D2650 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D56F4 002D2654 38 C1 00 08 */ addi r6, r1, 8
/* 802D56F8 002D2658 FE E0 10 18 */ frsp f23, f2
/* 802D56FC 002D265C C0 42 C5 40 */ lfs f2, lbl_805AE260@sda21(r2)
/* 802D5700 002D2660 FE A0 68 18 */ frsp f21, f13
/* 802D5704 002D2664 FF 40 50 18 */ frsp f26, f10
/* 802D5708 002D2668 EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D570C 002D266C FF 20 60 18 */ frsp f25, f12
/* 802D5710 002D2670 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D5714 002D2674 FE E0 08 18 */ frsp f23, f1
/* 802D5718 002D2678 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D571C 002D267C FE A0 98 18 */ frsp f21, f19
/* 802D5720 002D2680 EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D5724 002D2684 FF 20 90 18 */ frsp f25, f18
/* 802D5728 002D2688 D1 E7 00 18 */ stfs f15, 0x18(r7)
/* 802D572C 002D268C FE E0 00 18 */ frsp f23, f0
/* 802D5730 002D2690 EE 36 05 72 */ fmuls f17, f22, f21
/* 802D5734 002D2694 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D5738 002D2698 FF 20 A0 18 */ frsp f25, f20
/* 802D573C 002D269C EE 18 8D FA */ fmadds f16, f24, f23, f17
/* 802D5740 002D26A0 D1 E7 00 1C */ stfs f15, 0x1c(r7)
/* 802D5744 002D26A4 ED FA 86 7A */ fmadds f15, f26, f25, f16
/* 802D5748 002D26A8 D1 E7 00 20 */ stfs f15, 0x20(r7)
/* 802D574C 002D26AC 7C 09 03 A6 */ mtctr r0
lbl_802D5750:
/* 802D5750 002D26B0 C0 25 00 04 */ lfs f1, 4(r5)
/* 802D5754 002D26B4 C0 05 00 00 */ lfs f0, 0(r5)
/* 802D5758 002D26B8 FC 80 0A 10 */ fabs f4, f1
/* 802D575C 002D26BC C0 25 00 08 */ lfs f1, 8(r5)
/* 802D5760 002D26C0 FC E0 02 10 */ fabs f7, f0
/* 802D5764 002D26C4 C0 06 00 00 */ lfs f0, 0(r6)
/* 802D5768 002D26C8 FD 00 0A 10 */ fabs f8, f1
/* 802D576C 002D26CC C0 63 00 04 */ lfs f3, 4(r3)
/* 802D5770 002D26D0 FC 20 20 18 */ frsp f1, f4
/* 802D5774 002D26D4 C0 A3 00 00 */ lfs f5, 0(r3)
/* 802D5778 002D26D8 FD 20 02 10 */ fabs f9, f0
/* 802D577C 002D26DC C0 C3 00 08 */ lfs f6, 8(r3)
/* 802D5780 002D26E0 FC 80 38 18 */ frsp f4, f7
/* 802D5784 002D26E4 C0 E4 00 00 */ lfs f7, 0(r4)
/* 802D5788 002D26E8 EC 03 00 72 */ fmuls f0, f3, f1
/* 802D578C 002D26EC FC 60 40 18 */ frsp f3, f8
/* 802D5790 002D26F0 FC 20 48 18 */ frsp f1, f9
/* 802D5794 002D26F4 EC 05 01 3A */ fmadds f0, f5, f4, f0
/* 802D5798 002D26F8 EC 06 00 FA */ fmadds f0, f6, f3, f0
/* 802D579C 002D26FC EC 07 00 2A */ fadds f0, f7, f0
/* 802D57A0 002D2700 EC 02 00 2A */ fadds f0, f2, f0
/* 802D57A4 002D2704 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802D57A8 002D2708 40 81 00 0C */ ble lbl_802D57B4
/* 802D57AC 002D270C 38 60 00 00 */ li r3, 0
/* 802D57B0 002D2710 48 00 03 2C */ b lbl_802D5ADC
lbl_802D57B4:
/* 802D57B4 002D2714 38 84 00 04 */ addi r4, r4, 4
/* 802D57B8 002D2718 38 A5 00 0C */ addi r5, r5, 0xc
/* 802D57BC 002D271C 38 C6 00 04 */ addi r6, r6, 4
/* 802D57C0 002D2720 42 00 FF 90 */ bdnz lbl_802D5750
/* 802D57C4 002D2724 38 00 00 03 */ li r0, 3
/* 802D57C8 002D2728 7C 64 1B 78 */ mr r4, r3
/* 802D57CC 002D272C C0 A1 00 10 */ lfs f5, 0x10(r1)
/* 802D57D0 002D2730 C0 81 00 08 */ lfs f4, 8(r1)
/* 802D57D4 002D2734 C0 61 00 0C */ lfs f3, 0xc(r1)
/* 802D57D8 002D2738 C0 22 C5 40 */ lfs f1, lbl_805AE260@sda21(r2)
/* 802D57DC 002D273C 7C 09 03 A6 */ mtctr r0
lbl_802D57E0:
/* 802D57E0 002D2740 C0 07 00 0C */ lfs f0, 0xc(r7)
/* 802D57E4 002D2744 C0 E7 00 00 */ lfs f7, 0(r7)
/* 802D57E8 002D2748 FC 40 02 10 */ fabs f2, f0
/* 802D57EC 002D274C C1 07 00 18 */ lfs f8, 0x18(r7)
/* 802D57F0 002D2750 FC C0 3A 10 */ fabs f6, f7
/* 802D57F4 002D2754 C2 88 00 04 */ lfs f20, 4(r8)
/* 802D57F8 002D2758 FD 20 42 10 */ fabs f9, f8
/* 802D57FC 002D275C C2 68 00 00 */ lfs f19, 0(r8)
/* 802D5800 002D2760 FC 40 10 18 */ frsp f2, f2
/* 802D5804 002D2764 C2 48 00 08 */ lfs f18, 8(r8)
/* 802D5808 002D2768 EC 00 00 F2 */ fmuls f0, f0, f3
/* 802D580C 002D276C C1 44 00 00 */ lfs f10, 0(r4)
/* 802D5810 002D2770 FC C0 30 18 */ frsp f6, f6
/* 802D5814 002D2774 EC 54 00 B2 */ fmuls f2, f20, f2
/* 802D5818 002D2778 EC 07 01 3A */ fmadds f0, f7, f4, f0
/* 802D581C 002D277C FC E0 48 18 */ frsp f7, f9
/* 802D5820 002D2780 EC 53 11 BA */ fmadds f2, f19, f6, f2
/* 802D5824 002D2784 EC 08 01 7A */ fmadds f0, f8, f5, f0
/* 802D5828 002D2788 EC D2 11 FA */ fmadds f6, f18, f7, f2
/* 802D582C 002D278C FC 40 02 10 */ fabs f2, f0
/* 802D5830 002D2790 EC 06 50 2A */ fadds f0, f6, f10
/* 802D5834 002D2794 FC 40 10 18 */ frsp f2, f2
/* 802D5838 002D2798 EC 01 00 2A */ fadds f0, f1, f0
/* 802D583C 002D279C FC 02 00 40 */ fcmpo cr0, f2, f0
/* 802D5840 002D27A0 40 81 00 0C */ ble lbl_802D584C
/* 802D5844 002D27A4 38 60 00 00 */ li r3, 0
/* 802D5848 002D27A8 48 00 02 94 */ b lbl_802D5ADC
lbl_802D584C:
/* 802D584C 002D27AC 38 E7 00 04 */ addi r7, r7, 4
/* 802D5850 002D27B0 38 84 00 04 */ addi r4, r4, 4
/* 802D5854 002D27B4 42 00 FF 8C */ bdnz lbl_802D57E0
/* 802D5858 002D27B8 C2 A1 00 20 */ lfs f21, 0x20(r1)
/* 802D585C 002D27BC C3 21 00 18 */ lfs f25, 0x18(r1)
/* 802D5860 002D27C0 FC 00 AA 10 */ fabs f0, f21
/* 802D5864 002D27C4 C2 C1 00 2C */ lfs f22, 0x2c(r1)
/* 802D5868 002D27C8 FC 40 CA 10 */ fabs f2, f25
/* 802D586C 002D27CC C3 41 00 1C */ lfs f26, 0x1c(r1)
/* 802D5870 002D27D0 FC 20 B2 10 */ fabs f1, f22
/* 802D5874 002D27D4 C1 A1 00 0C */ lfs f13, 0xc(r1)
/* 802D5878 002D27D8 FF 00 00 18 */ frsp f24, f0
/* 802D587C 002D27DC C3 A3 00 08 */ lfs f29, 8(r3)
/* 802D5880 002D27E0 FC 60 D2 10 */ fabs f3, f26
/* 802D5884 002D27E4 C3 63 00 04 */ lfs f27, 4(r3)
/* 802D5888 002D27E8 FF C0 10 18 */ frsp f30, f2
/* 802D588C 002D27EC C3 E1 00 10 */ lfs f31, 0x10(r1)
/* 802D5890 002D27F0 EC 16 03 72 */ fmuls f0, f22, f13
/* 802D5894 002D27F4 C1 82 C5 40 */ lfs f12, lbl_805AE260@sda21(r2)
/* 802D5898 002D27F8 FE E0 08 18 */ frsp f23, f1
/* 802D589C 002D27FC EC 52 06 32 */ fmuls f2, f18, f24
/* 802D58A0 002D2800 EC 15 07 F8 */ fmsubs f0, f21, f31, f0
/* 802D58A4 002D2804 FF 80 18 18 */ frsp f28, f3
/* 802D58A8 002D2808 EC 3D 07 B2 */ fmuls f1, f29, f30
/* 802D58AC 002D280C FC 00 02 10 */ fabs f0, f0
/* 802D58B0 002D2810 EC 54 15 FA */ fmadds f2, f20, f23, f2
/* 802D58B4 002D2814 EC 7B 0F 3A */ fmadds f3, f27, f28, f1
/* 802D58B8 002D2818 FC 20 00 18 */ frsp f1, f0
/* 802D58BC 002D281C EC 02 18 2A */ fadds f0, f2, f3
/* 802D58C0 002D2820 EC 0C 00 2A */ fadds f0, f12, f0
/* 802D58C4 002D2824 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802D58C8 002D2828 40 81 00 0C */ ble lbl_802D58D4
/* 802D58CC 002D282C 38 60 00 00 */ li r3, 0
/* 802D58D0 002D2830 48 00 02 0C */ b lbl_802D5ADC
lbl_802D58D4:
/* 802D58D4 002D2834 C1 61 00 24 */ lfs f11, 0x24(r1)
/* 802D58D8 002D2838 C0 E1 00 14 */ lfs f7, 0x14(r1)
/* 802D58DC 002D283C FC 00 5A 10 */ fabs f0, f11
/* 802D58E0 002D2840 C1 41 00 30 */ lfs f10, 0x30(r1)
/* 802D58E4 002D2844 FC 40 3A 10 */ fabs f2, f7
/* 802D58E8 002D2848 C0 C3 00 00 */ lfs f6, 0(r3)
/* 802D58EC 002D284C FC 20 52 10 */ fabs f1, f10
/* 802D58F0 002D2850 FD 00 00 18 */ frsp f8, f0
/* 802D58F4 002D2854 FC A0 10 18 */ frsp f5, f2
/* 802D58F8 002D2858 EC 0A 03 72 */ fmuls f0, f10, f13
/* 802D58FC 002D285C FD 20 08 18 */ frsp f9, f1
/* 802D5900 002D2860 EC 52 02 32 */ fmuls f2, f18, f8
/* 802D5904 002D2864 EC 3D 01 72 */ fmuls f1, f29, f5
/* 802D5908 002D2868 EC 0B 07 F8 */ fmsubs f0, f11, f31, f0
/* 802D590C 002D286C EC 54 12 7A */ fmadds f2, f20, f9, f2
/* 802D5910 002D2870 EC 66 0F 3A */ fmadds f3, f6, f28, f1
/* 802D5914 002D2874 FC 20 02 10 */ fabs f1, f0
/* 802D5918 002D2878 EC 02 18 2A */ fadds f0, f2, f3
/* 802D591C 002D287C FC 20 08 18 */ frsp f1, f1
/* 802D5920 002D2880 EC 0C 00 2A */ fadds f0, f12, f0
/* 802D5924 002D2884 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802D5928 002D2888 40 81 00 0C */ ble lbl_802D5934
/* 802D592C 002D288C 38 60 00 00 */ li r3, 0
/* 802D5930 002D2890 48 00 01 AC */ b lbl_802D5ADC
lbl_802D5934:
/* 802D5934 002D2894 C0 81 00 28 */ lfs f4, 0x28(r1)
/* 802D5938 002D2898 EE 1B 01 72 */ fmuls f16, f27, f5
/* 802D593C 002D289C C0 61 00 34 */ lfs f3, 0x34(r1)
/* 802D5940 002D28A0 FC 20 22 10 */ fabs f1, f4
/* 802D5944 002D28A4 FC 40 1A 10 */ fabs f2, f3
/* 802D5948 002D28A8 EC 03 03 72 */ fmuls f0, f3, f13
/* 802D594C 002D28AC FC 20 08 18 */ frsp f1, f1
/* 802D5950 002D28B0 FC 40 10 18 */ frsp f2, f2
/* 802D5954 002D28B4 ED E4 07 F8 */ fmsubs f15, f4, f31, f0
/* 802D5958 002D28B8 EE 32 00 72 */ fmuls f17, f18, f1
/* 802D595C 002D28BC EC 06 87 BA */ fmadds f0, f6, f30, f16
/* 802D5960 002D28C0 FD E0 7A 10 */ fabs f15, f15
/* 802D5964 002D28C4 EE 14 88 BA */ fmadds f16, f20, f2, f17
/* 802D5968 002D28C8 FD E0 78 18 */ frsp f15, f15
/* 802D596C 002D28CC EC 10 00 2A */ fadds f0, f16, f0
/* 802D5970 002D28D0 EC 0C 00 2A */ fadds f0, f12, f0
/* 802D5974 002D28D4 FC 0F 00 40 */ fcmpo cr0, f15, f0
/* 802D5978 002D28D8 40 81 00 0C */ ble lbl_802D5984
/* 802D597C 002D28DC 38 60 00 00 */ li r3, 0
/* 802D5980 002D28E0 48 00 01 5C */ b lbl_802D5ADC
lbl_802D5984:
/* 802D5984 002D28E4 ED F2 01 72 */ fmuls f15, f18, f5
/* 802D5988 002D28E8 C0 01 00 08 */ lfs f0, 8(r1)
/* 802D598C 002D28EC EE 3D 02 32 */ fmuls f17, f29, f8
/* 802D5990 002D28F0 EE 07 07 F2 */ fmuls f16, f7, f31
/* 802D5994 002D28F4 ED F3 7D FA */ fmadds f15, f19, f23, f15
/* 802D5998 002D28F8 ED DB 88 7A */ fmadds f14, f27, f1, f17
/* 802D599C 002D28FC EE 36 80 38 */ fmsubs f17, f22, f0, f16
/* 802D59A0 002D2900 EE 0F 70 2A */ fadds f16, f15, f14
/* 802D59A4 002D2904 FD E0 8A 10 */ fabs f15, f17
/* 802D59A8 002D2908 EE 0C 80 2A */ fadds f16, f12, f16
/* 802D59AC 002D290C FE 20 78 18 */ frsp f17, f15
/* 802D59B0 002D2910 FC 11 80 40 */ fcmpo cr0, f17, f16
/* 802D59B4 002D2914 40 81 00 0C */ ble lbl_802D59C0
/* 802D59B8 002D2918 38 60 00 00 */ li r3, 0
/* 802D59BC 002D291C 48 00 01 20 */ b lbl_802D5ADC
lbl_802D59C0:
/* 802D59C0 002D2920 EE 12 07 B2 */ fmuls f16, f18, f30
/* 802D59C4 002D2924 EE 3D 06 32 */ fmuls f17, f29, f24
/* 802D59C8 002D2928 EE D9 07 F2 */ fmuls f22, f25, f31
/* 802D59CC 002D292C ED F3 82 7A */ fmadds f15, f19, f9, f16
/* 802D59D0 002D2930 EE 06 88 7A */ fmadds f16, f6, f1, f17
/* 802D59D4 002D2934 EE CA B0 38 */ fmsubs f22, f10, f0, f22
/* 802D59D8 002D2938 ED 4F 80 2A */ fadds f10, f15, f16
/* 802D59DC 002D293C FD E0 B2 10 */ fabs f15, f22
/* 802D59E0 002D2940 ED 4C 50 2A */ fadds f10, f12, f10
/* 802D59E4 002D2944 FE C0 78 18 */ frsp f22, f15
/* 802D59E8 002D2948 FC 16 50 40 */ fcmpo cr0, f22, f10
/* 802D59EC 002D294C 40 81 00 0C */ ble lbl_802D59F8
/* 802D59F0 002D2950 38 60 00 00 */ li r3, 0
/* 802D59F4 002D2954 48 00 00 E8 */ b lbl_802D5ADC
lbl_802D59F8:
/* 802D59F8 002D2958 EE D2 07 32 */ fmuls f22, f18, f28
/* 802D59FC 002D295C EE 5B 06 32 */ fmuls f18, f27, f24
/* 802D5A00 002D2960 ED 5A 07 F2 */ fmuls f10, f26, f31
/* 802D5A04 002D2964 ED F3 B0 BA */ fmadds f15, f19, f2, f22
/* 802D5A08 002D2968 EE 06 92 3A */ fmadds f16, f6, f8, f18
/* 802D5A0C 002D296C ED 43 50 38 */ fmsubs f10, f3, f0, f10
/* 802D5A10 002D2970 EC 6F 80 2A */ fadds f3, f15, f16
/* 802D5A14 002D2974 FD 40 52 10 */ fabs f10, f10
/* 802D5A18 002D2978 EC 6C 18 2A */ fadds f3, f12, f3
/* 802D5A1C 002D297C FD 40 50 18 */ frsp f10, f10
/* 802D5A20 002D2980 FC 0A 18 40 */ fcmpo cr0, f10, f3
/* 802D5A24 002D2984 40 81 00 0C */ ble lbl_802D5A30
/* 802D5A28 002D2988 38 60 00 00 */ li r3, 0
/* 802D5A2C 002D298C 48 00 00 B0 */ b lbl_802D5ADC
lbl_802D5A30:
/* 802D5A30 002D2990 ED 54 01 72 */ fmuls f10, f20, f5
/* 802D5A34 002D2994 EC BD 02 72 */ fmuls f5, f29, f9
/* 802D5A38 002D2998 EC 75 00 32 */ fmuls f3, f21, f0
/* 802D5A3C 002D299C ED 53 56 3A */ fmadds f10, f19, f24, f10
/* 802D5A40 002D29A0 ED FB 28 BA */ fmadds f15, f27, f2, f5
/* 802D5A44 002D29A4 EC A7 1B 78 */ fmsubs f5, f7, f13, f3
/* 802D5A48 002D29A8 EC 6A 78 2A */ fadds f3, f10, f15
/* 802D5A4C 002D29AC FC A0 2A 10 */ fabs f5, f5
/* 802D5A50 002D29B0 EC 6C 18 2A */ fadds f3, f12, f3
/* 802D5A54 002D29B4 FC A0 28 18 */ frsp f5, f5
/* 802D5A58 002D29B8 FC 05 18 40 */ fcmpo cr0, f5, f3
/* 802D5A5C 002D29BC 40 81 00 0C */ ble lbl_802D5A68
/* 802D5A60 002D29C0 38 60 00 00 */ li r3, 0
/* 802D5A64 002D29C4 48 00 00 78 */ b lbl_802D5ADC
lbl_802D5A68:
/* 802D5A68 002D29C8 EC F4 07 B2 */ fmuls f7, f20, f30
/* 802D5A6C 002D29CC EC BD 05 F2 */ fmuls f5, f29, f23
/* 802D5A70 002D29D0 EC 6B 00 32 */ fmuls f3, f11, f0
/* 802D5A74 002D29D4 EC F3 3A 3A */ fmadds f7, f19, f8, f7
/* 802D5A78 002D29D8 EC 46 28 BA */ fmadds f2, f6, f2, f5
/* 802D5A7C 002D29DC EC 79 1B 78 */ fmsubs f3, f25, f13, f3
/* 802D5A80 002D29E0 EC 47 10 2A */ fadds f2, f7, f2
/* 802D5A84 002D29E4 FC 60 1A 10 */ fabs f3, f3
/* 802D5A88 002D29E8 EC 4C 10 2A */ fadds f2, f12, f2
/* 802D5A8C 002D29EC FC 60 18 18 */ frsp f3, f3
/* 802D5A90 002D29F0 FC 03 10 40 */ fcmpo cr0, f3, f2
/* 802D5A94 002D29F4 40 81 00 0C */ ble lbl_802D5AA0
/* 802D5A98 002D29F8 38 60 00 00 */ li r3, 0
/* 802D5A9C 002D29FC 48 00 00 40 */ b lbl_802D5ADC
lbl_802D5AA0:
/* 802D5AA0 002D2A00 EC 74 07 32 */ fmuls f3, f20, f28
/* 802D5AA4 002D2A04 EC 5B 05 F2 */ fmuls f2, f27, f23
/* 802D5AA8 002D2A08 EC 04 00 32 */ fmuls f0, f4, f0
/* 802D5AAC 002D2A0C EC 73 18 7A */ fmadds f3, f19, f1, f3
/* 802D5AB0 002D2A10 EC 46 12 7A */ fmadds f2, f6, f9, f2
/* 802D5AB4 002D2A14 EC 3A 03 78 */ fmsubs f1, f26, f13, f0
/* 802D5AB8 002D2A18 EC 03 10 2A */ fadds f0, f3, f2
/* 802D5ABC 002D2A1C FC 20 0A 10 */ fabs f1, f1
/* 802D5AC0 002D2A20 EC 0C 00 2A */ fadds f0, f12, f0
/* 802D5AC4 002D2A24 FC 20 08 18 */ frsp f1, f1
/* 802D5AC8 002D2A28 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802D5ACC 002D2A2C 7C 00 00 26 */ mfcr r0
/* 802D5AD0 002D2A30 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f
/* 802D5AD4 002D2A34 7C 00 00 34 */ cntlzw r0, r0
/* 802D5AD8 002D2A38 54 03 D9 7E */ srwi r3, r0, 5
lbl_802D5ADC:
/* 802D5ADC 002D2A3C E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0
/* 802D5AE0 002D2A40 CB E1 01 90 */ lfd f31, 0x190(r1)
/* 802D5AE4 002D2A44 E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0
/* 802D5AE8 002D2A48 CB C1 01 80 */ lfd f30, 0x180(r1)
/* 802D5AEC 002D2A4C E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0
/* 802D5AF0 002D2A50 CB A1 01 70 */ lfd f29, 0x170(r1)
/* 802D5AF4 002D2A54 E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0
/* 802D5AF8 002D2A58 CB 81 01 60 */ lfd f28, 0x160(r1)
/* 802D5AFC 002D2A5C E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0
/* 802D5B00 002D2A60 CB 61 01 50 */ lfd f27, 0x150(r1)
/* 802D5B04 002D2A64 E3 41 01 48 */ psq_l f26, 328(r1), 0, qr0
/* 802D5B08 002D2A68 CB 41 01 40 */ lfd f26, 0x140(r1)
/* 802D5B0C 002D2A6C E3 21 01 38 */ psq_l f25, 312(r1), 0, qr0
/* 802D5B10 002D2A70 CB 21 01 30 */ lfd f25, 0x130(r1)
/* 802D5B14 002D2A74 E3 01 01 28 */ psq_l f24, 296(r1), 0, qr0
/* 802D5B18 002D2A78 CB 01 01 20 */ lfd f24, 0x120(r1)
/* 802D5B1C 002D2A7C E2 E1 01 18 */ psq_l f23, 280(r1), 0, qr0
/* 802D5B20 002D2A80 CA E1 01 10 */ lfd f23, 0x110(r1)
/* 802D5B24 002D2A84 E2 C1 01 08 */ psq_l f22, 264(r1), 0, qr0
/* 802D5B28 002D2A88 CA C1 01 00 */ lfd f22, 0x100(r1)
/* 802D5B2C 002D2A8C E2 A1 00 F8 */ psq_l f21, 248(r1), 0, qr0
/* 802D5B30 002D2A90 CA A1 00 F0 */ lfd f21, 0xf0(r1)
/* 802D5B34 002D2A94 E2 81 00 E8 */ psq_l f20, 232(r1), 0, qr0
/* 802D5B38 002D2A98 CA 81 00 E0 */ lfd f20, 0xe0(r1)
/* 802D5B3C 002D2A9C E2 61 00 D8 */ psq_l f19, 216(r1), 0, qr0
/* 802D5B40 002D2AA0 CA 61 00 D0 */ lfd f19, 0xd0(r1)
/* 802D5B44 002D2AA4 E2 41 00 C8 */ psq_l f18, 200(r1), 0, qr0
/* 802D5B48 002D2AA8 CA 41 00 C0 */ lfd f18, 0xc0(r1)
/* 802D5B4C 002D2AAC E2 21 00 B8 */ psq_l f17, 184(r1), 0, qr0
/* 802D5B50 002D2AB0 CA 21 00 B0 */ lfd f17, 0xb0(r1)
/* 802D5B54 002D2AB4 E2 01 00 A8 */ psq_l f16, 168(r1), 0, qr0
/* 802D5B58 002D2AB8 CA 01 00 A0 */ lfd f16, 0xa0(r1)
/* 802D5B5C 002D2ABC E1 E1 00 98 */ psq_l f15, 152(r1), 0, qr0
/* 802D5B60 002D2AC0 C9 E1 00 90 */ lfd f15, 0x90(r1)
/* 802D5B64 002D2AC4 E1 C1 00 88 */ psq_l f14, 136(r1), 0, qr0
/* 802D5B68 002D2AC8 C9 C1 00 80 */ lfd f14, 0x80(r1)
/* 802D5B6C 002D2ACC 38 21 01 A0 */ addi r1, r1, 0x1a0
/* 802D5B70 002D2AD0 4E 80 00 20 */ blr
.global AABoxIntersectsBox__6COBBoxCFRC6CAABox
AABoxIntersectsBox__6COBBoxCFRC6CAABox:
/* 802D5B74 002D2AD4 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 802D5B78 002D2AD8 7C 08 02 A6 */ mflr r0
/* 802D5B7C 002D2ADC 3C A0 80 5A */ lis r5, sIdentity__12CTransform4f@ha
/* 802D5B80 002D2AE0 90 01 00 54 */ stw r0, 0x54(r1)
/* 802D5B84 002D2AE4 38 A5 66 70 */ addi r5, r5, sIdentity__12CTransform4f@l
/* 802D5B88 002D2AE8 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 802D5B8C 002D2AEC 7C 7F 1B 78 */ mr r31, r3
/* 802D5B90 002D2AF0 38 61 00 08 */ addi r3, r1, 8
/* 802D5B94 002D2AF4 48 00 01 89 */ bl FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
/* 802D5B98 002D2AF8 7F E3 FB 78 */ mr r3, r31
/* 802D5B9C 002D2AFC 38 81 00 08 */ addi r4, r1, 8
/* 802D5BA0 002D2B00 4B FF F8 F5 */ bl OBBIntersectsBox__6COBBoxCFRC6COBBox
/* 802D5BA4 002D2B04 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802D5BA8 002D2B08 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 802D5BAC 002D2B0C 7C 08 03 A6 */ mtlr r0
/* 802D5BB0 002D2B10 38 21 00 50 */ addi r1, r1, 0x50
/* 802D5BB4 002D2B14 4E 80 00 20 */ blr
.global LineIntersectsBox__6COBBoxCFRC5CMRayRf
LineIntersectsBox__6COBBoxCFRC5CMRayRf:
/* 802D5BB8 002D2B18 94 21 FF 10 */ stwu r1, -0xf0(r1)
/* 802D5BBC 002D2B1C 7C 08 02 A6 */ mflr r0
/* 802D5BC0 002D2B20 90 01 00 F4 */ stw r0, 0xf4(r1)
/* 802D5BC4 002D2B24 DB E1 00 E0 */ stfd f31, 0xe0(r1)
/* 802D5BC8 002D2B28 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0
/* 802D5BCC 002D2B2C DB C1 00 D0 */ stfd f30, 0xd0(r1)
/* 802D5BD0 002D2B30 F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0
/* 802D5BD4 002D2B34 DB A1 00 C0 */ stfd f29, 0xc0(r1)
/* 802D5BD8 002D2B38 F3 A1 00 C8 */ psq_st f29, 200(r1), 0, qr0
/* 802D5BDC 002D2B3C 93 E1 00 BC */ stw r31, 0xbc(r1)
/* 802D5BE0 002D2B40 93 C1 00 B8 */ stw r30, 0xb8(r1)
/* 802D5BE4 002D2B44 93 A1 00 B4 */ stw r29, 0xb4(r1)
/* 802D5BE8 002D2B48 7C 7D 1B 78 */ mr r29, r3
/* 802D5BEC 002D2B4C 7C 9E 23 78 */ mr r30, r4
/* 802D5BF0 002D2B50 C0 43 00 38 */ lfs f2, 0x38(r3)
/* 802D5BF4 002D2B54 7C BF 2B 78 */ mr r31, r5
/* 802D5BF8 002D2B58 C0 23 00 34 */ lfs f1, 0x34(r3)
/* 802D5BFC 002D2B5C 38 61 00 20 */ addi r3, r1, 0x20
/* 802D5C00 002D2B60 C0 1D 00 30 */ lfs f0, 0x30(r29)
/* 802D5C04 002D2B64 FC 40 10 50 */ fneg f2, f2
/* 802D5C08 002D2B68 FC 20 08 50 */ fneg f1, f1
/* 802D5C0C 002D2B6C 38 81 00 08 */ addi r4, r1, 8
/* 802D5C10 002D2B70 FC 00 00 50 */ fneg f0, f0
/* 802D5C14 002D2B74 38 BD 00 30 */ addi r5, r29, 0x30
/* 802D5C18 002D2B78 D0 41 00 10 */ stfs f2, 0x10(r1)
/* 802D5C1C 002D2B7C D0 01 00 08 */ stfs f0, 8(r1)
/* 802D5C20 002D2B80 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 802D5C24 002D2B84 48 06 28 E5 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f
/* 802D5C28 002D2B88 7F C4 F3 78 */ mr r4, r30
/* 802D5C2C 002D2B8C 7F A5 EB 78 */ mr r5, r29
/* 802D5C30 002D2B90 38 61 00 38 */ addi r3, r1, 0x38
/* 802D5C34 002D2B94 48 00 03 B5 */ bl GetInvUnscaledTransformRay__5CMRayCFRC12CTransform4f
/* 802D5C38 002D2B98 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 802D5C3C 002D2B9C C3 A1 00 38 */ lfs f29, 0x38(r1)
/* 802D5C40 002D2BA0 38 E3 66 A0 */ addi r7, r3, sZeroVector__9CVector3f@l
/* 802D5C44 002D2BA4 C3 C1 00 3C */ lfs f30, 0x3c(r1)
/* 802D5C48 002D2BA8 C3 E1 00 40 */ lfs f31, 0x40(r1)
/* 802D5C4C 002D2BAC 7F E6 FB 78 */ mr r6, r31
/* 802D5C50 002D2BB0 C1 A1 00 44 */ lfs f13, 0x44(r1)
/* 802D5C54 002D2BB4 38 61 00 70 */ addi r3, r1, 0x70
/* 802D5C58 002D2BB8 C1 81 00 48 */ lfs f12, 0x48(r1)
/* 802D5C5C 002D2BBC 38 81 00 20 */ addi r4, r1, 0x20
/* 802D5C60 002D2BC0 C1 61 00 4C */ lfs f11, 0x4c(r1)
/* 802D5C64 002D2BC4 38 A1 00 14 */ addi r5, r1, 0x14
/* 802D5C68 002D2BC8 C1 41 00 50 */ lfs f10, 0x50(r1)
/* 802D5C6C 002D2BCC C1 21 00 54 */ lfs f9, 0x54(r1)
/* 802D5C70 002D2BD0 C1 01 00 58 */ lfs f8, 0x58(r1)
/* 802D5C74 002D2BD4 C0 E1 00 5C */ lfs f7, 0x5c(r1)
/* 802D5C78 002D2BD8 C0 C1 00 60 */ lfs f6, 0x60(r1)
/* 802D5C7C 002D2BDC C0 A1 00 64 */ lfs f5, 0x64(r1)
/* 802D5C80 002D2BE0 C0 81 00 68 */ lfs f4, 0x68(r1)
/* 802D5C84 002D2BE4 C0 61 00 6C */ lfs f3, 0x6c(r1)
/* 802D5C88 002D2BE8 C0 47 00 00 */ lfs f2, 0(r7)
/* 802D5C8C 002D2BEC C0 27 00 04 */ lfs f1, 4(r7)
/* 802D5C90 002D2BF0 C0 07 00 08 */ lfs f0, 8(r7)
/* 802D5C94 002D2BF4 D3 A1 00 70 */ stfs f29, 0x70(r1)
/* 802D5C98 002D2BF8 D3 C1 00 74 */ stfs f30, 0x74(r1)
/* 802D5C9C 002D2BFC D3 E1 00 78 */ stfs f31, 0x78(r1)
/* 802D5CA0 002D2C00 D1 A1 00 7C */ stfs f13, 0x7c(r1)
/* 802D5CA4 002D2C04 D1 81 00 80 */ stfs f12, 0x80(r1)
/* 802D5CA8 002D2C08 D1 61 00 84 */ stfs f11, 0x84(r1)
/* 802D5CAC 002D2C0C D1 41 00 88 */ stfs f10, 0x88(r1)
/* 802D5CB0 002D2C10 D1 21 00 8C */ stfs f9, 0x8c(r1)
/* 802D5CB4 002D2C14 D1 01 00 90 */ stfs f8, 0x90(r1)
/* 802D5CB8 002D2C18 D0 E1 00 94 */ stfs f7, 0x94(r1)
/* 802D5CBC 002D2C1C D0 C1 00 98 */ stfs f6, 0x98(r1)
/* 802D5CC0 002D2C20 D0 A1 00 9C */ stfs f5, 0x9c(r1)
/* 802D5CC4 002D2C24 D0 81 00 A0 */ stfs f4, 0xa0(r1)
/* 802D5CC8 002D2C28 D0 61 00 A4 */ stfs f3, 0xa4(r1)
/* 802D5CCC 002D2C2C D0 41 00 14 */ stfs f2, 0x14(r1)
/* 802D5CD0 002D2C30 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 802D5CD4 002D2C34 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 802D5CD8 002D2C38 4B FF D8 B9 */ bl RayAABoxIntersection__13CollisionUtilFRC5CMRayRC6CAABoxR9CVector3fRf
/* 802D5CDC 002D2C3C 7C 03 00 D0 */ neg r0, r3
/* 802D5CE0 002D2C40 7C 00 1B 78 */ or r0, r0, r3
/* 802D5CE4 002D2C44 54 03 0F FE */ srwi r3, r0, 0x1f
/* 802D5CE8 002D2C48 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0
/* 802D5CEC 002D2C4C CB E1 00 E0 */ lfd f31, 0xe0(r1)
/* 802D5CF0 002D2C50 E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0
/* 802D5CF4 002D2C54 CB C1 00 D0 */ lfd f30, 0xd0(r1)
/* 802D5CF8 002D2C58 E3 A1 00 C8 */ psq_l f29, 200(r1), 0, qr0
/* 802D5CFC 002D2C5C CB A1 00 C0 */ lfd f29, 0xc0(r1)
/* 802D5D00 002D2C60 83 E1 00 BC */ lwz r31, 0xbc(r1)
/* 802D5D04 002D2C64 83 C1 00 B8 */ lwz r30, 0xb8(r1)
/* 802D5D08 002D2C68 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 802D5D0C 002D2C6C 83 A1 00 B4 */ lwz r29, 0xb4(r1)
/* 802D5D10 002D2C70 7C 08 03 A6 */ mtlr r0
/* 802D5D14 002D2C74 38 21 00 F0 */ addi r1, r1, 0xf0
/* 802D5D18 002D2C78 4E 80 00 20 */ blr
.global FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f
FromAABox__6COBBoxFRC6CAABoxRC12CTransform4f:
/* 802D5D1C 002D2C7C 94 21 FF 30 */ stwu r1, -0xd0(r1)
/* 802D5D20 002D2C80 7C 08 02 A6 */ mflr r0
/* 802D5D24 002D2C84 90 01 00 D4 */ stw r0, 0xd4(r1)
/* 802D5D28 002D2C88 93 E1 00 CC */ stw r31, 0xcc(r1)
/* 802D5D2C 002D2C8C 7C BF 2B 78 */ mr r31, r5
/* 802D5D30 002D2C90 93 C1 00 C8 */ stw r30, 0xc8(r1)
/* 802D5D34 002D2C94 7C 9E 23 78 */ mr r30, r4
/* 802D5D38 002D2C98 93 A1 00 C4 */ stw r29, 0xc4(r1)
/* 802D5D3C 002D2C9C 7C 7D 1B 78 */ mr r29, r3
/* 802D5D40 002D2CA0 38 61 00 08 */ addi r3, r1, 8
/* 802D5D44 002D2CA4 48 06 18 C9 */ bl GetCenterPoint__6CAABoxCFv
/* 802D5D48 002D2CA8 C0 A1 00 08 */ lfs f5, 8(r1)
/* 802D5D4C 002D2CAC 38 61 00 2C */ addi r3, r1, 0x2c
/* 802D5D50 002D2CB0 C0 81 00 0C */ lfs f4, 0xc(r1)
/* 802D5D54 002D2CB4 38 81 00 20 */ addi r4, r1, 0x20
/* 802D5D58 002D2CB8 C0 61 00 10 */ lfs f3, 0x10(r1)
/* 802D5D5C 002D2CBC C0 5E 00 10 */ lfs f2, 0x10(r30)
/* 802D5D60 002D2CC0 C0 3E 00 14 */ lfs f1, 0x14(r30)
/* 802D5D64 002D2CC4 C0 1E 00 0C */ lfs f0, 0xc(r30)
/* 802D5D68 002D2CC8 EC 42 20 28 */ fsubs f2, f2, f4
/* 802D5D6C 002D2CCC EC 21 18 28 */ fsubs f1, f1, f3
/* 802D5D70 002D2CD0 D0 A1 00 20 */ stfs f5, 0x20(r1)
/* 802D5D74 002D2CD4 EC 00 28 28 */ fsubs f0, f0, f5
/* 802D5D78 002D2CD8 D0 81 00 24 */ stfs f4, 0x24(r1)
/* 802D5D7C 002D2CDC D0 61 00 28 */ stfs f3, 0x28(r1)
/* 802D5D80 002D2CE0 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 802D5D84 002D2CE4 D0 41 00 18 */ stfs f2, 0x18(r1)
/* 802D5D88 002D2CE8 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 802D5D8C 002D2CEC 48 03 D3 B5 */ bl Translate__12CTransform4fFRC9CVector3f
/* 802D5D90 002D2CF0 7F E4 FB 78 */ mr r4, r31
/* 802D5D94 002D2CF4 38 61 00 5C */ addi r3, r1, 0x5c
/* 802D5D98 002D2CF8 38 A1 00 2C */ addi r5, r1, 0x2c
/* 802D5D9C 002D2CFC 48 03 CB B5 */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 802D5DA0 002D2D00 38 61 00 8C */ addi r3, r1, 0x8c
/* 802D5DA4 002D2D04 38 81 00 5C */ addi r4, r1, 0x5c
/* 802D5DA8 002D2D08 48 03 CD CD */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802D5DAC 002D2D0C 7F A3 EB 78 */ mr r3, r29
/* 802D5DB0 002D2D10 38 81 00 8C */ addi r4, r1, 0x8c
/* 802D5DB4 002D2D14 38 A1 00 14 */ addi r5, r1, 0x14
/* 802D5DB8 002D2D18 48 00 01 DD */ bl __ct__6COBBoxFRC12CTransform4fRC9CVector3f
/* 802D5DBC 002D2D1C 80 01 00 D4 */ lwz r0, 0xd4(r1)
/* 802D5DC0 002D2D20 83 E1 00 CC */ lwz r31, 0xcc(r1)
/* 802D5DC4 002D2D24 83 C1 00 C8 */ lwz r30, 0xc8(r1)
/* 802D5DC8 002D2D28 83 A1 00 C4 */ lwz r29, 0xc4(r1)
/* 802D5DCC 002D2D2C 7C 08 03 A6 */ mtlr r0
/* 802D5DD0 002D2D30 38 21 00 D0 */ addi r1, r1, 0xd0
/* 802D5DD4 002D2D34 4E 80 00 20 */ blr
.global CalculateAABox__6COBBoxCFRC12CTransform4f
CalculateAABox__6COBBoxCFRC12CTransform4f:
/* 802D5DD8 002D2D38 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 802D5DDC 002D2D3C 7C 08 02 A6 */ mflr r0
/* 802D5DE0 002D2D40 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 802D5DE4 002D2D44 93 E1 00 BC */ stw r31, 0xbc(r1)
/* 802D5DE8 002D2D48 93 C1 00 B8 */ stw r30, 0xb8(r1)
/* 802D5DEC 002D2D4C 7C 9E 23 78 */ mr r30, r4
/* 802D5DF0 002D2D50 7C A4 2B 78 */ mr r4, r5
/* 802D5DF4 002D2D54 93 A1 00 B4 */ stw r29, 0xb4(r1)
/* 802D5DF8 002D2D58 7C 7D 1B 78 */ mr r29, r3
/* 802D5DFC 002D2D5C 38 61 00 50 */ addi r3, r1, 0x50
/* 802D5E00 002D2D60 7F C5 F3 78 */ mr r5, r30
/* 802D5E04 002D2D64 48 03 CB 4D */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 802D5E08 002D2D68 38 61 00 80 */ addi r3, r1, 0x80
/* 802D5E0C 002D2D6C 38 81 00 50 */ addi r4, r1, 0x50
/* 802D5E10 002D2D70 48 03 CD 65 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802D5E14 002D2D74 C0 82 C5 44 */ lfs f4, lbl_805AE264@sda21(r2)
/* 802D5E18 002D2D78 3C 60 80 5A */ lis r3, mskInvertedBox__6CAABox@ha
/* 802D5E1C 002D2D7C C4 E3 67 54 */ lfsu f7, mskInvertedBox__6CAABox@l(r3)
/* 802D5E20 002D2D80 3B E0 00 00 */ li r31, 0
/* 802D5E24 002D2D84 C0 3E 00 34 */ lfs f1, 0x34(r30)
/* 802D5E28 002D2D88 C0 7E 00 38 */ lfs f3, 0x38(r30)
/* 802D5E2C 002D2D8C C0 02 C5 48 */ lfs f0, lbl_805AE268@sda21(r2)
/* 802D5E30 002D2D90 ED 24 00 72 */ fmuls f9, f4, f1
/* 802D5E34 002D2D94 ED 04 00 F2 */ fmuls f8, f4, f3
/* 802D5E38 002D2D98 C0 C3 00 04 */ lfs f6, 4(r3)
/* 802D5E3C 002D2D9C ED 40 00 F2 */ fmuls f10, f0, f3
/* 802D5E40 002D2DA0 C0 A3 00 08 */ lfs f5, 8(r3)
/* 802D5E44 002D2DA4 ED 60 00 72 */ fmuls f11, f0, f1
/* 802D5E48 002D2DA8 C0 5E 00 30 */ lfs f2, 0x30(r30)
/* 802D5E4C 002D2DAC C0 63 00 10 */ lfs f3, 0x10(r3)
/* 802D5E50 002D2DB0 EC 24 00 B2 */ fmuls f1, f4, f2
/* 802D5E54 002D2DB4 C0 83 00 0C */ lfs f4, 0xc(r3)
/* 802D5E58 002D2DB8 EC 00 00 B2 */ fmuls f0, f0, f2
/* 802D5E5C 002D2DBC C0 43 00 14 */ lfs f2, 0x14(r3)
/* 802D5E60 002D2DC0 D0 E1 00 38 */ stfs f7, 0x38(r1)
/* 802D5E64 002D2DC4 D0 C1 00 3C */ stfs f6, 0x3c(r1)
/* 802D5E68 002D2DC8 D0 A1 00 40 */ stfs f5, 0x40(r1)
/* 802D5E6C 002D2DCC D0 81 00 44 */ stfs f4, 0x44(r1)
/* 802D5E70 002D2DD0 D0 61 00 48 */ stfs f3, 0x48(r1)
/* 802D5E74 002D2DD4 D0 41 00 4C */ stfs f2, 0x4c(r1)
/* 802D5E78 002D2DD8 D0 21 00 2C */ stfs f1, 0x2c(r1)
/* 802D5E7C 002D2DDC D1 21 00 30 */ stfs f9, 0x30(r1)
/* 802D5E80 002D2DE0 D1 01 00 34 */ stfs f8, 0x34(r1)
/* 802D5E84 002D2DE4 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 802D5E88 002D2DE8 D1 61 00 24 */ stfs f11, 0x24(r1)
/* 802D5E8C 002D2DEC D1 41 00 28 */ stfs f10, 0x28(r1)
lbl_802D5E90:
/* 802D5E90 002D2DF0 57 E0 07 7B */ rlwinm. r0, r31, 0, 0x1d, 0x1d
/* 802D5E94 002D2DF4 41 82 00 0C */ beq lbl_802D5EA0
/* 802D5E98 002D2DF8 C0 21 00 34 */ lfs f1, 0x34(r1)
/* 802D5E9C 002D2DFC 48 00 00 08 */ b lbl_802D5EA4
lbl_802D5EA0:
/* 802D5EA0 002D2E00 C0 21 00 28 */ lfs f1, 0x28(r1)
lbl_802D5EA4:
/* 802D5EA4 002D2E04 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 802D5EA8 002D2E08 41 82 00 0C */ beq lbl_802D5EB4
/* 802D5EAC 002D2E0C C0 41 00 30 */ lfs f2, 0x30(r1)
/* 802D5EB0 002D2E10 48 00 00 08 */ b lbl_802D5EB8
lbl_802D5EB4:
/* 802D5EB4 002D2E14 C0 41 00 24 */ lfs f2, 0x24(r1)
lbl_802D5EB8:
/* 802D5EB8 002D2E18 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
/* 802D5EBC 002D2E1C 41 82 00 0C */ beq lbl_802D5EC8
/* 802D5EC0 002D2E20 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 802D5EC4 002D2E24 48 00 00 08 */ b lbl_802D5ECC
lbl_802D5EC8:
/* 802D5EC8 002D2E28 C0 01 00 20 */ lfs f0, 0x20(r1)
lbl_802D5ECC:
/* 802D5ECC 002D2E2C D0 01 00 14 */ stfs f0, 0x14(r1)
/* 802D5ED0 002D2E30 38 61 00 08 */ addi r3, r1, 8
/* 802D5ED4 002D2E34 38 81 00 80 */ addi r4, r1, 0x80
/* 802D5ED8 002D2E38 38 A1 00 14 */ addi r5, r1, 0x14
/* 802D5EDC 002D2E3C D0 41 00 18 */ stfs f2, 0x18(r1)
/* 802D5EE0 002D2E40 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 802D5EE4 002D2E44 48 03 CC 05 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 802D5EE8 002D2E48 38 61 00 38 */ addi r3, r1, 0x38
/* 802D5EEC 002D2E4C 38 81 00 08 */ addi r4, r1, 8
/* 802D5EF0 002D2E50 48 06 1C 19 */ bl AccumulateBounds__6CAABoxFRC9CVector3f
/* 802D5EF4 002D2E54 3B FF 00 01 */ addi r31, r31, 1
/* 802D5EF8 002D2E58 2C 1F 00 08 */ cmpwi r31, 8
/* 802D5EFC 002D2E5C 41 80 FF 94 */ blt lbl_802D5E90
/* 802D5F00 002D2E60 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 802D5F04 002D2E64 D0 1D 00 00 */ stfs f0, 0(r29)
/* 802D5F08 002D2E68 C0 01 00 3C */ lfs f0, 0x3c(r1)
/* 802D5F0C 002D2E6C D0 1D 00 04 */ stfs f0, 4(r29)
/* 802D5F10 002D2E70 C0 01 00 40 */ lfs f0, 0x40(r1)
/* 802D5F14 002D2E74 D0 1D 00 08 */ stfs f0, 8(r29)
/* 802D5F18 002D2E78 C0 01 00 44 */ lfs f0, 0x44(r1)
/* 802D5F1C 002D2E7C D0 1D 00 0C */ stfs f0, 0xc(r29)
/* 802D5F20 002D2E80 C0 01 00 48 */ lfs f0, 0x48(r1)
/* 802D5F24 002D2E84 D0 1D 00 10 */ stfs f0, 0x10(r29)
/* 802D5F28 002D2E88 C0 01 00 4C */ lfs f0, 0x4c(r1)
/* 802D5F2C 002D2E8C D0 1D 00 14 */ stfs f0, 0x14(r29)
/* 802D5F30 002D2E90 83 E1 00 BC */ lwz r31, 0xbc(r1)
/* 802D5F34 002D2E94 83 C1 00 B8 */ lwz r30, 0xb8(r1)
/* 802D5F38 002D2E98 83 A1 00 B4 */ lwz r29, 0xb4(r1)
/* 802D5F3C 002D2E9C 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 802D5F40 002D2EA0 7C 08 03 A6 */ mtlr r0
/* 802D5F44 002D2EA4 38 21 00 C0 */ addi r1, r1, 0xc0
/* 802D5F48 002D2EA8 4E 80 00 20 */ blr
.global __ct__6COBBoxFR12CInputStream
__ct__6COBBoxFR12CInputStream:
/* 802D5F4C 002D2EAC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D5F50 002D2EB0 7C 08 02 A6 */ mflr r0
/* 802D5F54 002D2EB4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D5F58 002D2EB8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D5F5C 002D2EBC 7C 9F 23 78 */ mr r31, r4
/* 802D5F60 002D2EC0 93 C1 00 08 */ stw r30, 8(r1)
/* 802D5F64 002D2EC4 7C 7E 1B 78 */ mr r30, r3
/* 802D5F68 002D2EC8 48 03 D3 75 */ bl __ct__12CTransform4fFR12CInputStream
/* 802D5F6C 002D2ECC 7F E4 FB 78 */ mr r4, r31
/* 802D5F70 002D2ED0 38 7E 00 30 */ addi r3, r30, 0x30
/* 802D5F74 002D2ED4 48 03 EC 19 */ bl __ct__9CVector3fFR12CInputStream
/* 802D5F78 002D2ED8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D5F7C 002D2EDC 7F C3 F3 78 */ mr r3, r30
/* 802D5F80 002D2EE0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D5F84 002D2EE4 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D5F88 002D2EE8 7C 08 03 A6 */ mtlr r0
/* 802D5F8C 002D2EEC 38 21 00 10 */ addi r1, r1, 0x10
/* 802D5F90 002D2EF0 4E 80 00 20 */ blr
.global __ct__6COBBoxFRC12CTransform4fRC9CVector3f
__ct__6COBBoxFRC12CTransform4fRC9CVector3f:
/* 802D5F94 002D2EF4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D5F98 002D2EF8 7C 08 02 A6 */ mflr r0
/* 802D5F9C 002D2EFC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D5FA0 002D2F00 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D5FA4 002D2F04 7C BF 2B 78 */ mr r31, r5
/* 802D5FA8 002D2F08 93 C1 00 08 */ stw r30, 8(r1)
/* 802D5FAC 002D2F0C 7C 7E 1B 78 */ mr r30, r3
/* 802D5FB0 002D2F10 48 03 CB C5 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 802D5FB4 002D2F14 C0 1F 00 00 */ lfs f0, 0(r31)
/* 802D5FB8 002D2F18 7F C3 F3 78 */ mr r3, r30
/* 802D5FBC 002D2F1C D0 1E 00 30 */ stfs f0, 0x30(r30)
/* 802D5FC0 002D2F20 C0 1F 00 04 */ lfs f0, 4(r31)
/* 802D5FC4 002D2F24 D0 1E 00 34 */ stfs f0, 0x34(r30)
/* 802D5FC8 002D2F28 C0 1F 00 08 */ lfs f0, 8(r31)
/* 802D5FCC 002D2F2C D0 1E 00 38 */ stfs f0, 0x38(r30)
/* 802D5FD0 002D2F30 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D5FD4 002D2F34 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D5FD8 002D2F38 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D5FDC 002D2F3C 7C 08 03 A6 */ mtlr r0
/* 802D5FE0 002D2F40 38 21 00 10 */ addi r1, r1, 0x10
/* 802D5FE4 002D2F44 4E 80 00 20 */ blr
.section .sdata2, "a"
.balign 8
.global lbl_805AE260
lbl_805AE260:
# ROM: 0x3FAB00
.float 1.1920929E-7
.global lbl_805AE264
lbl_805AE264:
# ROM: 0x3FAB04
.float 1.0
.global lbl_805AE268
lbl_805AE268:
# ROM: 0x3FAB08
.float -1.0
.4byte 0