donut-decomp/asm/kpad/KZMplsTestSub.s
2022-10-17 09:33:28 +01:00

709 lines
36 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global __KMPLS_f2i
__KMPLS_f2i:
/* 800724C0 0006E300 C0 02 89 7C */ lfs f0, "@2973_8055E8FC"@sda21(r2)
/* 800724C4 0006E304 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800724C8 0006E308 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800724CC 0006E30C 40 80 00 1C */ bge lbl_800724E8
/* 800724D0 0006E310 C0 02 89 78 */ lfs f0, "@2972_8055E8F8"@sda21(r2)
/* 800724D4 0006E314 EC 01 00 28 */ fsubs f0, f1, f0
/* 800724D8 0006E318 FC 00 00 1E */ fctiwz f0, f0
/* 800724DC 0006E31C D8 01 00 08 */ stfd f0, 0x8(r1)
/* 800724E0 0006E320 80 61 00 0C */ lwz r3, 0xc(r1)
/* 800724E4 0006E324 48 00 00 18 */ b lbl_800724FC
.global lbl_800724E8
lbl_800724E8:
/* 800724E8 0006E328 C0 02 89 78 */ lfs f0, "@2972_8055E8F8"@sda21(r2)
/* 800724EC 0006E32C EC 00 08 2A */ fadds f0, f0, f1
/* 800724F0 0006E330 FC 00 00 1E */ fctiwz f0, f0
/* 800724F4 0006E334 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 800724F8 0006E338 80 61 00 14 */ lwz r3, 0x14(r1)
.global lbl_800724FC
lbl_800724FC:
/* 800724FC 0006E33C 38 21 00 20 */ addi r1, r1, 0x20
/* 80072500 0006E340 4E 80 00 20 */ blr
/* 80072504 0006E344 00 00 00 00 */ .4byte 0x00000000
/* 80072508 0006E348 00 00 00 00 */ .4byte 0x00000000
/* 8007250C 0006E34C 00 00 00 00 */ .4byte 0x00000000
.global __KMPLS_normalize_Fxyz
__KMPLS_normalize_Fxyz:
/* 80072510 0006E350 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80072514 0006E354 7C 08 02 A6 */ mflr r0
/* 80072518 0006E358 90 01 00 14 */ stw r0, 0x14(r1)
/* 8007251C 0006E35C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80072520 0006E360 7C 7F 1B 78 */ mr r31, r3
/* 80072524 0006E364 C0 23 00 00 */ lfs f1, 0x0(r3)
/* 80072528 0006E368 C0 03 00 04 */ lfs f0, 0x4(r3)
/* 8007252C 0006E36C EC 21 00 72 */ fmuls f1, f1, f1
/* 80072530 0006E370 C0 43 00 08 */ lfs f2, 0x8(r3)
/* 80072534 0006E374 EC 00 00 32 */ fmuls f0, f0, f0
/* 80072538 0006E378 EC 42 00 B2 */ fmuls f2, f2, f2
/* 8007253C 0006E37C EC 01 00 2A */ fadds f0, f1, f0
/* 80072540 0006E380 EC 22 00 2A */ fadds f1, f2, f0
/* 80072544 0006E384 4B FA 22 A5 */ bl sqrt
/* 80072548 0006E388 FC 20 08 18 */ frsp f1, f1
/* 8007254C 0006E38C C0 02 89 7C */ lfs f0, "@2973_8055E8FC"@sda21(r2)
/* 80072550 0006E390 FC 00 08 00 */ fcmpu cr0, f0, f1
/* 80072554 0006E394 41 82 00 30 */ beq lbl_80072584
/* 80072558 0006E398 C0 02 89 80 */ lfs f0, "@2982_8055E900"@sda21(r2)
/* 8007255C 0006E39C C0 7F 00 00 */ lfs f3, 0x0(r31)
/* 80072560 0006E3A0 EC 80 08 24 */ fdivs f4, f0, f1
/* 80072564 0006E3A4 C0 5F 00 04 */ lfs f2, 0x4(r31)
/* 80072568 0006E3A8 C0 1F 00 08 */ lfs f0, 0x8(r31)
/* 8007256C 0006E3AC EC 63 01 32 */ fmuls f3, f3, f4
/* 80072570 0006E3B0 EC 42 01 32 */ fmuls f2, f2, f4
/* 80072574 0006E3B4 EC 00 01 32 */ fmuls f0, f0, f4
/* 80072578 0006E3B8 D0 7F 00 00 */ stfs f3, 0x0(r31)
/* 8007257C 0006E3BC D0 5F 00 04 */ stfs f2, 0x4(r31)
/* 80072580 0006E3C0 D0 1F 00 08 */ stfs f0, 0x8(r31)
.global lbl_80072584
lbl_80072584:
/* 80072584 0006E3C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80072588 0006E3C8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8007258C 0006E3CC 7C 08 03 A6 */ mtlr r0
/* 80072590 0006E3D0 38 21 00 10 */ addi r1, r1, 0x10
/* 80072594 0006E3D4 4E 80 00 20 */ blr
/* 80072598 0006E3D8 00 00 00 00 */ .4byte 0x00000000
/* 8007259C 0006E3DC 00 00 00 00 */ .4byte 0x00000000
.global __KMPLS_normalize_directionXYZ
__KMPLS_normalize_directionXYZ:
/* 800725A0 0006E3E0 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 800725A4 0006E3E4 7C 08 02 A6 */ mflr r0
/* 800725A8 0006E3E8 90 01 00 84 */ stw r0, 0x84(r1)
/* 800725AC 0006E3EC DB E1 00 70 */ stfd f31, 0x70(r1)
/* 800725B0 0006E3F0 F3 E1 00 78 */ psq_st f31, 0x78(r1), 0, qr0
/* 800725B4 0006E3F4 C3 E2 89 78 */ lfs f31, "@2972_8055E8F8"@sda21(r2)
/* 800725B8 0006E3F8 DB C1 00 60 */ stfd f30, 0x60(r1)
/* 800725BC 0006E3FC F3 C1 00 68 */ psq_st f30, 0x68(r1), 0, qr0
/* 800725C0 0006E400 C3 C2 89 80 */ lfs f30, "@2982_8055E900"@sda21(r2)
/* 800725C4 0006E404 DB A1 00 50 */ stfd f29, 0x50(r1)
/* 800725C8 0006E408 F3 A1 00 58 */ psq_st f29, 0x58(r1), 0, qr0
/* 800725CC 0006E40C DB 81 00 40 */ stfd f28, 0x40(r1)
/* 800725D0 0006E410 F3 81 00 48 */ psq_st f28, 0x48(r1), 0, qr0
/* 800725D4 0006E414 FF 80 08 90 */ fmr f28, f1
/* 800725D8 0006E418 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 800725DC 0006E41C 7C 7F 1B 78 */ mr r31, r3
.global lbl_800725E0
lbl_800725E0:
/* 800725E0 0006E420 C0 3F 00 00 */ lfs f1, 0x0(r31)
/* 800725E4 0006E424 C0 1F 00 04 */ lfs f0, 0x4(r31)
/* 800725E8 0006E428 EC 21 00 72 */ fmuls f1, f1, f1
/* 800725EC 0006E42C C0 5F 00 08 */ lfs f2, 0x8(r31)
/* 800725F0 0006E430 EC 00 00 32 */ fmuls f0, f0, f0
/* 800725F4 0006E434 EC 42 00 B2 */ fmuls f2, f2, f2
/* 800725F8 0006E438 EC 01 00 2A */ fadds f0, f1, f0
/* 800725FC 0006E43C EC 22 00 2A */ fadds f1, f2, f0
/* 80072600 0006E440 4B FA 21 E9 */ bl sqrt
/* 80072604 0006E444 FC 60 08 18 */ frsp f3, f1
/* 80072608 0006E448 C0 3F 00 0C */ lfs f1, 0xc(r31)
/* 8007260C 0006E44C C0 1F 00 10 */ lfs f0, 0x10(r31)
/* 80072610 0006E450 C0 5F 00 14 */ lfs f2, 0x14(r31)
/* 80072614 0006E454 EC 21 00 72 */ fmuls f1, f1, f1
/* 80072618 0006E458 EC DE 18 24 */ fdivs f6, f30, f3
/* 8007261C 0006E45C C0 BF 00 00 */ lfs f5, 0x0(r31)
/* 80072620 0006E460 C0 9F 00 04 */ lfs f4, 0x4(r31)
/* 80072624 0006E464 C0 7F 00 08 */ lfs f3, 0x8(r31)
/* 80072628 0006E468 EC 00 00 32 */ fmuls f0, f0, f0
/* 8007262C 0006E46C EC A5 01 B2 */ fmuls f5, f5, f6
/* 80072630 0006E470 EC 84 01 B2 */ fmuls f4, f4, f6
/* 80072634 0006E474 EC 63 01 B2 */ fmuls f3, f3, f6
/* 80072638 0006E478 D0 BF 00 00 */ stfs f5, 0x0(r31)
/* 8007263C 0006E47C EC 42 00 B2 */ fmuls f2, f2, f2
/* 80072640 0006E480 EC 01 00 2A */ fadds f0, f1, f0
/* 80072644 0006E484 D0 9F 00 04 */ stfs f4, 0x4(r31)
/* 80072648 0006E488 D0 7F 00 08 */ stfs f3, 0x8(r31)
/* 8007264C 0006E48C EC 22 00 2A */ fadds f1, f2, f0
/* 80072650 0006E490 4B FA 21 99 */ bl sqrt
/* 80072654 0006E494 FC 60 08 18 */ frsp f3, f1
/* 80072658 0006E498 C0 3F 00 18 */ lfs f1, 0x18(r31)
/* 8007265C 0006E49C C0 1F 00 1C */ lfs f0, 0x1c(r31)
/* 80072660 0006E4A0 C0 5F 00 20 */ lfs f2, 0x20(r31)
/* 80072664 0006E4A4 EC 21 00 72 */ fmuls f1, f1, f1
/* 80072668 0006E4A8 EC DE 18 24 */ fdivs f6, f30, f3
/* 8007266C 0006E4AC C0 BF 00 0C */ lfs f5, 0xc(r31)
/* 80072670 0006E4B0 C0 9F 00 10 */ lfs f4, 0x10(r31)
/* 80072674 0006E4B4 C0 7F 00 14 */ lfs f3, 0x14(r31)
/* 80072678 0006E4B8 EC 00 00 32 */ fmuls f0, f0, f0
/* 8007267C 0006E4BC EC A5 01 B2 */ fmuls f5, f5, f6
/* 80072680 0006E4C0 EC 84 01 B2 */ fmuls f4, f4, f6
/* 80072684 0006E4C4 EC 63 01 B2 */ fmuls f3, f3, f6
/* 80072688 0006E4C8 D0 BF 00 0C */ stfs f5, 0xc(r31)
/* 8007268C 0006E4CC EC 42 00 B2 */ fmuls f2, f2, f2
/* 80072690 0006E4D0 EC 01 00 2A */ fadds f0, f1, f0
/* 80072694 0006E4D4 D0 9F 00 10 */ stfs f4, 0x10(r31)
/* 80072698 0006E4D8 D0 7F 00 14 */ stfs f3, 0x14(r31)
/* 8007269C 0006E4DC EC 22 00 2A */ fadds f1, f2, f0
/* 800726A0 0006E4E0 4B FA 21 49 */ bl sqrt
/* 800726A4 0006E4E4 FC 00 08 18 */ frsp f0, f1
/* 800726A8 0006E4E8 C0 BF 00 18 */ lfs f5, 0x18(r31)
/* 800726AC 0006E4EC C0 9F 00 1C */ lfs f4, 0x1c(r31)
/* 800726B0 0006E4F0 C0 3F 00 20 */ lfs f1, 0x20(r31)
/* 800726B4 0006E4F4 EC DE 00 24 */ fdivs f6, f30, f0
/* 800726B8 0006E4F8 C0 7F 00 10 */ lfs f3, 0x10(r31)
/* 800726BC 0006E4FC C0 1F 00 0C */ lfs f0, 0xc(r31)
/* 800726C0 0006E500 C0 5F 00 14 */ lfs f2, 0x14(r31)
/* 800726C4 0006E504 C1 9F 00 08 */ lfs f12, 0x8(r31)
/* 800726C8 0006E508 C1 7F 00 04 */ lfs f11, 0x4(r31)
/* 800726CC 0006E50C EC 84 01 B2 */ fmuls f4, f4, f6
/* 800726D0 0006E510 C1 3F 00 00 */ lfs f9, 0x0(r31)
/* 800726D4 0006E514 EF A1 01 B2 */ fmuls f29, f1, f6
/* 800726D8 0006E518 EC A5 01 B2 */ fmuls f5, f5, f6
/* 800726DC 0006E51C D0 9F 00 1C */ stfs f4, 0x1c(r31)
/* 800726E0 0006E520 EC E2 01 32 */ fmuls f7, f2, f4
/* 800726E4 0006E524 ED 43 07 72 */ fmuls f10, f3, f29
/* 800726E8 0006E528 D0 BF 00 18 */ stfs f5, 0x18(r31)
/* 800726EC 0006E52C EC C2 01 72 */ fmuls f6, f2, f5
/* 800726F0 0006E530 EC 20 07 72 */ fmuls f1, f0, f29
/* 800726F4 0006E534 D3 BF 00 20 */ stfs f29, 0x20(r31)
/* 800726F8 0006E538 ED AA 38 28 */ fsubs f13, f10, f7
/* 800726FC 0006E53C ED 00 01 32 */ fmuls f8, f0, f4
/* 80072700 0006E540 ED 46 08 28 */ fsubs f10, f6, f1
/* 80072704 0006E544 D1 A1 00 08 */ stfs f13, 0x8(r1)
/* 80072708 0006E548 EC E3 01 72 */ fmuls f7, f3, f5
/* 8007270C 0006E54C EC CD 03 72 */ fmuls f6, f13, f13
/* 80072710 0006E550 D1 41 00 0C */ stfs f10, 0xc(r1)
/* 80072714 0006E554 EC 2A 02 B2 */ fmuls f1, f10, f10
/* 80072718 0006E558 EC E8 38 28 */ fsubs f7, f8, f7
/* 8007271C 0006E55C ED 44 03 32 */ fmuls f10, f4, f12
/* 80072720 0006E560 ED 1D 02 F2 */ fmuls f8, f29, f11
/* 80072724 0006E564 D0 E1 00 10 */ stfs f7, 0x10(r1)
/* 80072728 0006E568 EC 26 08 2A */ fadds f1, f6, f1
/* 8007272C 0006E56C EC C5 03 32 */ fmuls f6, f5, f12
/* 80072730 0006E570 ED 4A 40 28 */ fsubs f10, f10, f8
/* 80072734 0006E574 ED 1D 02 72 */ fmuls f8, f29, f9
/* 80072738 0006E578 EC E7 01 F2 */ fmuls f7, f7, f7
/* 8007273C 0006E57C D1 41 00 14 */ stfs f10, 0x14(r1)
/* 80072740 0006E580 EC A5 02 F2 */ fmuls f5, f5, f11
/* 80072744 0006E584 ED 08 30 28 */ fsubs f8, f8, f6
/* 80072748 0006E588 EC 27 08 2A */ fadds f1, f7, f1
/* 8007274C 0006E58C EC 84 02 72 */ fmuls f4, f4, f9
/* 80072750 0006E590 D1 01 00 18 */ stfs f8, 0x18(r1)
/* 80072754 0006E594 EC EB 00 B2 */ fmuls f7, f11, f2
/* 80072758 0006E598 EC CC 00 F2 */ fmuls f6, f12, f3
/* 8007275C 0006E59C ED 05 20 28 */ fsubs f8, f5, f4
/* 80072760 0006E5A0 EC AC 00 32 */ fmuls f5, f12, f0
/* 80072764 0006E5A4 EC 89 00 B2 */ fmuls f4, f9, f2
/* 80072768 0006E5A8 D1 01 00 1C */ stfs f8, 0x1c(r1)
/* 8007276C 0006E5AC EC 49 00 F2 */ fmuls f2, f9, f3
/* 80072770 0006E5B0 EC 0B 00 32 */ fmuls f0, f11, f0
/* 80072774 0006E5B4 EC C7 30 28 */ fsubs f6, f7, f6
/* 80072778 0006E5B8 EC 65 20 28 */ fsubs f3, f5, f4
/* 8007277C 0006E5BC EC 02 00 28 */ fsubs f0, f2, f0
/* 80072780 0006E5C0 D0 C1 00 20 */ stfs f6, 0x20(r1)
/* 80072784 0006E5C4 D0 61 00 24 */ stfs f3, 0x24(r1)
/* 80072788 0006E5C8 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 8007278C 0006E5CC 4B FA 20 5D */ bl sqrt
/* 80072790 0006E5D0 FF A0 08 18 */ frsp f29, f1
/* 80072794 0006E5D4 C0 21 00 14 */ lfs f1, 0x14(r1)
/* 80072798 0006E5D8 C0 01 00 18 */ lfs f0, 0x18(r1)
/* 8007279C 0006E5DC C0 41 00 1C */ lfs f2, 0x1c(r1)
/* 800727A0 0006E5E0 EC 21 00 72 */ fmuls f1, f1, f1
/* 800727A4 0006E5E4 ED 3E E8 24 */ fdivs f9, f30, f29
/* 800727A8 0006E5E8 C1 01 00 08 */ lfs f8, 0x8(r1)
/* 800727AC 0006E5EC C0 C1 00 0C */ lfs f6, 0xc(r1)
/* 800727B0 0006E5F0 C0 81 00 10 */ lfs f4, 0x10(r1)
/* 800727B4 0006E5F4 C0 FF 00 00 */ lfs f7, 0x0(r31)
/* 800727B8 0006E5F8 C0 BF 00 04 */ lfs f5, 0x4(r31)
/* 800727BC 0006E5FC ED 09 02 32 */ fmuls f8, f9, f8
/* 800727C0 0006E600 C0 7F 00 08 */ lfs f3, 0x8(r31)
/* 800727C4 0006E604 EC C9 01 B2 */ fmuls f6, f9, f6
/* 800727C8 0006E608 EC 89 01 32 */ fmuls f4, f9, f4
/* 800727CC 0006E60C EC 00 00 32 */ fmuls f0, f0, f0
/* 800727D0 0006E610 EC E7 40 2A */ fadds f7, f7, f8
/* 800727D4 0006E614 EC A5 30 2A */ fadds f5, f5, f6
/* 800727D8 0006E618 EC 63 20 2A */ fadds f3, f3, f4
/* 800727DC 0006E61C EC DF 01 F2 */ fmuls f6, f31, f7
/* 800727E0 0006E620 EC 9F 01 72 */ fmuls f4, f31, f5
/* 800727E4 0006E624 EC 7F 00 F2 */ fmuls f3, f31, f3
/* 800727E8 0006E628 D0 DF 00 00 */ stfs f6, 0x0(r31)
/* 800727EC 0006E62C EC 42 00 B2 */ fmuls f2, f2, f2
/* 800727F0 0006E630 EC 01 00 2A */ fadds f0, f1, f0
/* 800727F4 0006E634 D0 9F 00 04 */ stfs f4, 0x4(r31)
/* 800727F8 0006E638 D0 7F 00 08 */ stfs f3, 0x8(r31)
/* 800727FC 0006E63C EC 22 00 2A */ fadds f1, f2, f0
/* 80072800 0006E640 4B FA 1F E9 */ bl sqrt
/* 80072804 0006E644 FD 20 08 18 */ frsp f9, f1
/* 80072808 0006E648 C0 21 00 20 */ lfs f1, 0x20(r1)
/* 8007280C 0006E64C C0 01 00 24 */ lfs f0, 0x24(r1)
/* 80072810 0006E650 C0 41 00 28 */ lfs f2, 0x28(r1)
/* 80072814 0006E654 EC 21 00 72 */ fmuls f1, f1, f1
/* 80072818 0006E658 ED 5E 48 24 */ fdivs f10, f30, f9
/* 8007281C 0006E65C C1 01 00 14 */ lfs f8, 0x14(r1)
/* 80072820 0006E660 C0 C1 00 18 */ lfs f6, 0x18(r1)
/* 80072824 0006E664 C0 81 00 1C */ lfs f4, 0x1c(r1)
/* 80072828 0006E668 C0 FF 00 0C */ lfs f7, 0xc(r31)
/* 8007282C 0006E66C C0 BF 00 10 */ lfs f5, 0x10(r31)
/* 80072830 0006E670 ED 0A 02 32 */ fmuls f8, f10, f8
/* 80072834 0006E674 C0 7F 00 14 */ lfs f3, 0x14(r31)
/* 80072838 0006E678 EC CA 01 B2 */ fmuls f6, f10, f6
/* 8007283C 0006E67C EC 8A 01 32 */ fmuls f4, f10, f4
/* 80072840 0006E680 EC 00 00 32 */ fmuls f0, f0, f0
/* 80072844 0006E684 EC E7 40 2A */ fadds f7, f7, f8
/* 80072848 0006E688 EC A5 30 2A */ fadds f5, f5, f6
/* 8007284C 0006E68C EC 63 20 2A */ fadds f3, f3, f4
/* 80072850 0006E690 EC DF 01 F2 */ fmuls f6, f31, f7
/* 80072854 0006E694 EC 9F 01 72 */ fmuls f4, f31, f5
/* 80072858 0006E698 EC 7F 00 F2 */ fmuls f3, f31, f3
/* 8007285C 0006E69C D0 DF 00 0C */ stfs f6, 0xc(r31)
/* 80072860 0006E6A0 EC 42 00 B2 */ fmuls f2, f2, f2
/* 80072864 0006E6A4 EC 01 00 2A */ fadds f0, f1, f0
/* 80072868 0006E6A8 D0 9F 00 10 */ stfs f4, 0x10(r31)
/* 8007286C 0006E6AC EF BD 48 2A */ fadds f29, f29, f9
/* 80072870 0006E6B0 D0 7F 00 14 */ stfs f3, 0x14(r31)
/* 80072874 0006E6B4 EC 22 00 2A */ fadds f1, f2, f0
/* 80072878 0006E6B8 4B FA 1F 71 */ bl sqrt
/* 8007287C 0006E6BC FC C0 08 18 */ frsp f6, f1
/* 80072880 0006E6C0 C0 A1 00 20 */ lfs f5, 0x20(r1)
/* 80072884 0006E6C4 C0 61 00 24 */ lfs f3, 0x24(r1)
/* 80072888 0006E6C8 C0 21 00 28 */ lfs f1, 0x28(r1)
/* 8007288C 0006E6CC EC FE 30 24 */ fdivs f7, f30, f6
/* 80072890 0006E6D0 C0 9F 00 18 */ lfs f4, 0x18(r31)
/* 80072894 0006E6D4 C0 5F 00 1C */ lfs f2, 0x1c(r31)
/* 80072898 0006E6D8 C0 1F 00 20 */ lfs f0, 0x20(r31)
/* 8007289C 0006E6DC EC A7 01 72 */ fmuls f5, f7, f5
/* 800728A0 0006E6E0 EC 67 00 F2 */ fmuls f3, f7, f3
/* 800728A4 0006E6E4 EC 27 00 72 */ fmuls f1, f7, f1
/* 800728A8 0006E6E8 EC 84 28 2A */ fadds f4, f4, f5
/* 800728AC 0006E6EC EC 42 18 2A */ fadds f2, f2, f3
/* 800728B0 0006E6F0 EC 00 08 2A */ fadds f0, f0, f1
/* 800728B4 0006E6F4 EF BD 30 2A */ fadds f29, f29, f6
/* 800728B8 0006E6F8 EC 7F 01 32 */ fmuls f3, f31, f4
/* 800728BC 0006E6FC EC 3F 00 B2 */ fmuls f1, f31, f2
/* 800728C0 0006E700 EC 1F 00 32 */ fmuls f0, f31, f0
/* 800728C4 0006E704 D0 7F 00 18 */ stfs f3, 0x18(r31)
/* 800728C8 0006E708 FC 1D E0 40 */ fcmpo cr0, f29, f28
/* 800728CC 0006E70C D0 3F 00 1C */ stfs f1, 0x1c(r31)
/* 800728D0 0006E710 D0 1F 00 20 */ stfs f0, 0x20(r31)
/* 800728D4 0006E714 41 80 FD 0C */ blt lbl_800725E0
/* 800728D8 0006E718 80 01 00 84 */ lwz r0, 0x84(r1)
/* 800728DC 0006E71C E3 E1 00 78 */ psq_l f31, 0x78(r1), 0, qr0
/* 800728E0 0006E720 CB E1 00 70 */ lfd f31, 0x70(r1)
/* 800728E4 0006E724 E3 C1 00 68 */ psq_l f30, 0x68(r1), 0, qr0
/* 800728E8 0006E728 CB C1 00 60 */ lfd f30, 0x60(r1)
/* 800728EC 0006E72C E3 A1 00 58 */ psq_l f29, 0x58(r1), 0, qr0
/* 800728F0 0006E730 CB A1 00 50 */ lfd f29, 0x50(r1)
/* 800728F4 0006E734 E3 81 00 48 */ psq_l f28, 0x48(r1), 0, qr0
/* 800728F8 0006E738 CB 81 00 40 */ lfd f28, 0x40(r1)
/* 800728FC 0006E73C 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80072900 0006E740 7C 08 03 A6 */ mtlr r0
/* 80072904 0006E744 38 21 00 80 */ addi r1, r1, 0x80
/* 80072908 0006E748 4E 80 00 20 */ blr
/* 8007290C 0006E74C 00 00 00 00 */ .4byte 0x00000000
.global __KMPLS_make_vec_dir
__KMPLS_make_vec_dir:
/* 80072910 0006E750 94 21 FF 20 */ stwu r1, -0xe0(r1)
/* 80072914 0006E754 7C 08 02 A6 */ mflr r0
/* 80072918 0006E758 90 01 00 E4 */ stw r0, 0xe4(r1)
/* 8007291C 0006E75C DB E1 00 D0 */ stfd f31, 0xd0(r1)
/* 80072920 0006E760 F3 E1 00 D8 */ psq_st f31, 0xd8(r1), 0, qr0
/* 80072924 0006E764 DB C1 00 C0 */ stfd f30, 0xc0(r1)
/* 80072928 0006E768 F3 C1 00 C8 */ psq_st f30, 0xc8(r1), 0, qr0
/* 8007292C 0006E76C DB A1 00 B0 */ stfd f29, 0xb0(r1)
/* 80072930 0006E770 F3 A1 00 B8 */ psq_st f29, 0xb8(r1), 0, qr0
/* 80072934 0006E774 DB 81 00 A0 */ stfd f28, 0xa0(r1)
/* 80072938 0006E778 F3 81 00 A8 */ psq_st f28, 0xa8(r1), 0, qr0
/* 8007293C 0006E77C DB 61 00 90 */ stfd f27, 0x90(r1)
/* 80072940 0006E780 F3 61 00 98 */ psq_st f27, 0x98(r1), 0, qr0
/* 80072944 0006E784 DB 41 00 80 */ stfd f26, 0x80(r1)
/* 80072948 0006E788 F3 41 00 88 */ psq_st f26, 0x88(r1), 0, qr0
/* 8007294C 0006E78C DB 21 00 70 */ stfd f25, 0x70(r1)
/* 80072950 0006E790 F3 21 00 78 */ psq_st f25, 0x78(r1), 0, qr0
/* 80072954 0006E794 DB 01 00 60 */ stfd f24, 0x60(r1)
/* 80072958 0006E798 F3 01 00 68 */ psq_st f24, 0x68(r1), 0, qr0
/* 8007295C 0006E79C DA E1 00 50 */ stfd f23, 0x50(r1)
/* 80072960 0006E7A0 F2 E1 00 58 */ psq_st f23, 0x58(r1), 0, qr0
/* 80072964 0006E7A4 DA C1 00 40 */ stfd f22, 0x40(r1)
/* 80072968 0006E7A8 F2 C1 00 48 */ psq_st f22, 0x48(r1), 0, qr0
/* 8007296C 0006E7AC 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80072970 0006E7B0 7C BF 2B 78 */ mr r31, r5
/* 80072974 0006E7B4 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80072978 0006E7B8 7C 9E 23 78 */ mr r30, r4
/* 8007297C 0006E7BC 93 A1 00 34 */ stw r29, 0x34(r1)
/* 80072980 0006E7C0 7C 7D 1B 78 */ mr r29, r3
/* 80072984 0006E7C4 C0 04 00 04 */ lfs f0, 0x4(r4)
/* 80072988 0006E7C8 C0 85 00 08 */ lfs f4, 0x8(r5)
/* 8007298C 0006E7CC C0 25 00 00 */ lfs f1, 0x0(r5)
/* 80072990 0006E7D0 C0 64 00 08 */ lfs f3, 0x8(r4)
/* 80072994 0006E7D4 EF E0 01 32 */ fmuls f31, f0, f4
/* 80072998 0006E7D8 C0 45 00 04 */ lfs f2, 0x4(r5)
/* 8007299C 0006E7DC EF 40 00 72 */ fmuls f26, f0, f1
/* 800729A0 0006E7E0 C0 04 00 00 */ lfs f0, 0x0(r4)
/* 800729A4 0006E7E4 EF C3 00 72 */ fmuls f30, f3, f1
/* 800729A8 0006E7E8 EF 83 00 B2 */ fmuls f28, f3, f2
/* 800729AC 0006E7EC EF A0 00 B2 */ fmuls f29, f0, f2
/* 800729B0 0006E7F0 EF 60 01 32 */ fmuls f27, f0, f4
/* 800729B4 0006E7F4 EC 1F E0 28 */ fsubs f0, f31, f28
/* 800729B8 0006E7F8 EC 7D D0 28 */ fsubs f3, f29, f26
/* 800729BC 0006E7FC EC 5E D8 28 */ fsubs f2, f30, f27
/* 800729C0 0006E800 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 800729C4 0006E804 EC 20 00 32 */ fmuls f1, f0, f0
/* 800729C8 0006E808 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 800729CC 0006E80C EC 02 00 B2 */ fmuls f0, f2, f2
/* 800729D0 0006E810 EC 43 00 F2 */ fmuls f2, f3, f3
/* 800729D4 0006E814 D0 61 00 28 */ stfs f3, 0x28(r1)
/* 800729D8 0006E818 EC 01 00 2A */ fadds f0, f1, f0
/* 800729DC 0006E81C EC 22 00 2A */ fadds f1, f2, f0
/* 800729E0 0006E820 4B FA 1E 09 */ bl sqrt
/* 800729E4 0006E824 FC 20 08 18 */ frsp f1, f1
/* 800729E8 0006E828 C0 02 89 7C */ lfs f0, "@2973_8055E8FC"@sda21(r2)
/* 800729EC 0006E82C FC 00 08 00 */ fcmpu cr0, f0, f1
/* 800729F0 0006E830 40 82 00 54 */ bne lbl_80072A44
/* 800729F4 0006E834 3C 80 80 44 */ lis r4, e_dir@ha
/* 800729F8 0006E838 84 64 A0 10 */ lwzu r3, e_dir@l(r4)
/* 800729FC 0006E83C 80 04 00 04 */ lwz r0, 0x4(r4)
/* 80072A00 0006E840 90 1D 00 04 */ stw r0, 0x4(r29)
/* 80072A04 0006E844 90 7D 00 00 */ stw r3, 0x0(r29)
/* 80072A08 0006E848 80 64 00 08 */ lwz r3, 0x8(r4)
/* 80072A0C 0006E84C 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80072A10 0006E850 90 1D 00 0C */ stw r0, 0xc(r29)
/* 80072A14 0006E854 90 7D 00 08 */ stw r3, 0x8(r29)
/* 80072A18 0006E858 80 64 00 10 */ lwz r3, 0x10(r4)
/* 80072A1C 0006E85C 80 04 00 14 */ lwz r0, 0x14(r4)
/* 80072A20 0006E860 90 1D 00 14 */ stw r0, 0x14(r29)
/* 80072A24 0006E864 90 7D 00 10 */ stw r3, 0x10(r29)
/* 80072A28 0006E868 80 64 00 18 */ lwz r3, 0x18(r4)
/* 80072A2C 0006E86C 80 04 00 1C */ lwz r0, 0x1c(r4)
/* 80072A30 0006E870 90 1D 00 1C */ stw r0, 0x1c(r29)
/* 80072A34 0006E874 90 7D 00 18 */ stw r3, 0x18(r29)
/* 80072A38 0006E878 80 04 00 20 */ lwz r0, 0x20(r4)
/* 80072A3C 0006E87C 90 1D 00 20 */ stw r0, 0x20(r29)
/* 80072A40 0006E880 48 00 01 6C */ b lbl_80072BAC
.global lbl_80072A44
lbl_80072A44:
/* 80072A44 0006E884 C0 02 89 80 */ lfs f0, "@2982_8055E900"@sda21(r2)
/* 80072A48 0006E888 C0 61 00 20 */ lfs f3, 0x20(r1)
/* 80072A4C 0006E88C EC E0 08 24 */ fdivs f7, f0, f1
/* 80072A50 0006E890 C0 01 00 28 */ lfs f0, 0x28(r1)
/* 80072A54 0006E894 C0 21 00 24 */ lfs f1, 0x24(r1)
/* 80072A58 0006E898 C0 BE 00 04 */ lfs f5, 0x4(r30)
/* 80072A5C 0006E89C C0 5E 00 08 */ lfs f2, 0x8(r30)
/* 80072A60 0006E8A0 C0 9E 00 00 */ lfs f4, 0x0(r30)
/* 80072A64 0006E8A4 ED 03 01 F2 */ fmuls f8, f3, f7
/* 80072A68 0006E8A8 C1 7F 00 04 */ lfs f11, 0x4(r31)
/* 80072A6C 0006E8AC EC C0 01 F2 */ fmuls f6, f0, f7
/* 80072A70 0006E8B0 C3 1F 00 00 */ lfs f24, 0x0(r31)
/* 80072A74 0006E8B4 EC E1 01 F2 */ fmuls f7, f1, f7
/* 80072A78 0006E8B8 C0 3F 00 08 */ lfs f1, 0x8(r31)
/* 80072A7C 0006E8BC ED 45 01 B2 */ fmuls f10, f5, f6
/* 80072A80 0006E8C0 D1 01 00 20 */ stfs f8, 0x20(r1)
/* 80072A84 0006E8C4 EC 02 01 F2 */ fmuls f0, f2, f7
/* 80072A88 0006E8C8 ED 22 02 32 */ fmuls f9, f2, f8
/* 80072A8C 0006E8CC D0 E1 00 24 */ stfs f7, 0x24(r1)
/* 80072A90 0006E8D0 EC 64 01 B2 */ fmuls f3, f4, f6
/* 80072A94 0006E8D4 EE EA 00 28 */ fsubs f23, f10, f0
/* 80072A98 0006E8D8 D0 C1 00 28 */ stfs f6, 0x28(r1)
/* 80072A9C 0006E8DC EC 4B 01 B2 */ fmuls f2, f11, f6
/* 80072AA0 0006E8E0 EC 69 18 28 */ fsubs f3, f9, f3
/* 80072AA4 0006E8E4 D2 E1 00 14 */ stfs f23, 0x14(r1)
/* 80072AA8 0006E8E8 EC 01 01 F2 */ fmuls f0, f1, f7
/* 80072AAC 0006E8EC ED 41 02 32 */ fmuls f10, f1, f8
/* 80072AB0 0006E8F0 D0 61 00 18 */ stfs f3, 0x18(r1)
/* 80072AB4 0006E8F4 EC 38 01 B2 */ fmuls f1, f24, f6
/* 80072AB8 0006E8F8 EC 42 00 28 */ fsubs f2, f2, f0
/* 80072ABC 0006E8FC ED 38 01 F2 */ fmuls f9, f24, f7
/* 80072AC0 0006E900 EC 2A 08 28 */ fsubs f1, f10, f1
/* 80072AC4 0006E904 D0 41 00 08 */ stfs f2, 0x8(r1)
/* 80072AC8 0006E908 EC 0B 02 32 */ fmuls f0, f11, f8
/* 80072ACC 0006E90C EE C7 02 32 */ fmuls f22, f7, f8
/* 80072AD0 0006E910 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80072AD4 0006E914 ED 81 05 F2 */ fmuls f12, f1, f23
/* 80072AD8 0006E918 EC 09 00 28 */ fsubs f0, f9, f0
/* 80072ADC 0006E91C ED 42 00 F2 */ fmuls f10, f2, f3
/* 80072AE0 0006E920 ED 96 60 2A */ fadds f12, f22, f12
/* 80072AE4 0006E924 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80072AE8 0006E928 ED 26 02 32 */ fmuls f9, f6, f8
/* 80072AEC 0006E92C ED 60 05 F2 */ fmuls f11, f0, f23
/* 80072AF0 0006E930 ED 9D 60 2A */ fadds f12, f29, f12
/* 80072AF4 0006E934 EF 28 02 32 */ fmuls f25, f8, f8
/* 80072AF8 0006E938 ED 69 58 2A */ fadds f11, f9, f11
/* 80072AFC 0006E93C D1 9D 00 04 */ stfs f12, 0x4(r29)
/* 80072B00 0006E940 ED 05 02 32 */ fmuls f8, f5, f8
/* 80072B04 0006E944 ED 56 50 2A */ fadds f10, f22, f10
/* 80072B08 0006E948 ED 7B 58 2A */ fadds f11, f27, f11
/* 80072B0C 0006E94C ED 84 01 F2 */ fmuls f12, f4, f7
/* 80072B10 0006E950 D1 7D 00 08 */ stfs f11, 0x8(r29)
/* 80072B14 0006E954 ED 5A 50 2A */ fadds f10, f26, f10
/* 80072B18 0006E958 ED A2 05 F2 */ fmuls f13, f2, f23
/* 80072B1C 0006E95C ED 6C 40 28 */ fsubs f11, f12, f8
/* 80072B20 0006E960 D1 5D 00 0C */ stfs f10, 0xc(r29)
/* 80072B24 0006E964 EC B8 01 32 */ fmuls f5, f24, f4
/* 80072B28 0006E968 EC 99 68 2A */ fadds f4, f25, f13
/* 80072B2C 0006E96C D1 61 00 1C */ stfs f11, 0x1c(r1)
/* 80072B30 0006E970 EC 42 02 F2 */ fmuls f2, f2, f11
/* 80072B34 0006E974 ED 86 01 F2 */ fmuls f12, f6, f7
/* 80072B38 0006E978 EC 85 20 2A */ fadds f4, f5, f4
/* 80072B3C 0006E97C EC A1 00 F2 */ fmuls f5, f1, f3
/* 80072B40 0006E980 EC 60 00 F2 */ fmuls f3, f0, f3
/* 80072B44 0006E984 D0 9D 00 00 */ stfs f4, 0x0(r29)
/* 80072B48 0006E988 EC 21 02 F2 */ fmuls f1, f1, f11
/* 80072B4C 0006E98C ED 07 01 F2 */ fmuls f8, f7, f7
/* 80072B50 0006E990 C1 5F 00 04 */ lfs f10, 0x4(r31)
/* 80072B54 0006E994 C0 FE 00 04 */ lfs f7, 0x4(r30)
/* 80072B58 0006E998 EC 8C 18 2A */ fadds f4, f12, f3
/* 80072B5C 0006E99C EC 49 10 2A */ fadds f2, f9, f2
/* 80072B60 0006E9A0 EC 2C 08 2A */ fadds f1, f12, f1
/* 80072B64 0006E9A4 EC 9F 20 2A */ fadds f4, f31, f4
/* 80072B68 0006E9A8 EC 7E 10 2A */ fadds f3, f30, f2
/* 80072B6C 0006E9AC EC 5C 08 2A */ fadds f2, f28, f1
/* 80072B70 0006E9B0 D0 9D 00 14 */ stfs f4, 0x14(r29)
/* 80072B74 0006E9B4 EC EA 01 F2 */ fmuls f7, f10, f7
/* 80072B78 0006E9B8 D0 7D 00 18 */ stfs f3, 0x18(r29)
/* 80072B7C 0006E9BC EC 68 28 2A */ fadds f3, f8, f5
/* 80072B80 0006E9C0 EC 26 01 B2 */ fmuls f1, f6, f6
/* 80072B84 0006E9C4 D0 5D 00 1C */ stfs f2, 0x1c(r29)
/* 80072B88 0006E9C8 EC 00 02 F2 */ fmuls f0, f0, f11
/* 80072B8C 0006E9CC EC 47 18 2A */ fadds f2, f7, f3
/* 80072B90 0006E9D0 D0 5D 00 10 */ stfs f2, 0x10(r29)
/* 80072B94 0006E9D4 EC 01 00 2A */ fadds f0, f1, f0
/* 80072B98 0006E9D8 C0 5F 00 08 */ lfs f2, 0x8(r31)
/* 80072B9C 0006E9DC C0 3E 00 08 */ lfs f1, 0x8(r30)
/* 80072BA0 0006E9E0 EC 22 00 72 */ fmuls f1, f2, f1
/* 80072BA4 0006E9E4 EC 01 00 2A */ fadds f0, f1, f0
/* 80072BA8 0006E9E8 D0 1D 00 20 */ stfs f0, 0x20(r29)
.global lbl_80072BAC
lbl_80072BAC:
/* 80072BAC 0006E9EC 80 01 00 E4 */ lwz r0, 0xe4(r1)
/* 80072BB0 0006E9F0 E3 E1 00 D8 */ psq_l f31, 0xd8(r1), 0, qr0
/* 80072BB4 0006E9F4 CB E1 00 D0 */ lfd f31, 0xd0(r1)
/* 80072BB8 0006E9F8 E3 C1 00 C8 */ psq_l f30, 0xc8(r1), 0, qr0
/* 80072BBC 0006E9FC CB C1 00 C0 */ lfd f30, 0xc0(r1)
/* 80072BC0 0006EA00 E3 A1 00 B8 */ psq_l f29, 0xb8(r1), 0, qr0
/* 80072BC4 0006EA04 CB A1 00 B0 */ lfd f29, 0xb0(r1)
/* 80072BC8 0006EA08 E3 81 00 A8 */ psq_l f28, 0xa8(r1), 0, qr0
/* 80072BCC 0006EA0C CB 81 00 A0 */ lfd f28, 0xa0(r1)
/* 80072BD0 0006EA10 E3 61 00 98 */ psq_l f27, 0x98(r1), 0, qr0
/* 80072BD4 0006EA14 CB 61 00 90 */ lfd f27, 0x90(r1)
/* 80072BD8 0006EA18 E3 41 00 88 */ psq_l f26, 0x88(r1), 0, qr0
/* 80072BDC 0006EA1C CB 41 00 80 */ lfd f26, 0x80(r1)
/* 80072BE0 0006EA20 E3 21 00 78 */ psq_l f25, 0x78(r1), 0, qr0
/* 80072BE4 0006EA24 CB 21 00 70 */ lfd f25, 0x70(r1)
/* 80072BE8 0006EA28 E3 01 00 68 */ psq_l f24, 0x68(r1), 0, qr0
/* 80072BEC 0006EA2C CB 01 00 60 */ lfd f24, 0x60(r1)
/* 80072BF0 0006EA30 E2 E1 00 58 */ psq_l f23, 0x58(r1), 0, qr0
/* 80072BF4 0006EA34 CA E1 00 50 */ lfd f23, 0x50(r1)
/* 80072BF8 0006EA38 E2 C1 00 48 */ psq_l f22, 0x48(r1), 0, qr0
/* 80072BFC 0006EA3C CA C1 00 40 */ lfd f22, 0x40(r1)
/* 80072C00 0006EA40 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80072C04 0006EA44 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80072C08 0006EA48 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 80072C0C 0006EA4C 7C 08 03 A6 */ mtlr r0
/* 80072C10 0006EA50 38 21 00 E0 */ addi r1, r1, 0xe0
/* 80072C14 0006EA54 4E 80 00 20 */ blr
/* 80072C18 0006EA58 00 00 00 00 */ .4byte 0x00000000
/* 80072C1C 0006EA5C 00 00 00 00 */ .4byte 0x00000000
.global __KMPLS_mult_dir
__KMPLS_mult_dir:
/* 80072C20 0006EA60 C0 64 00 00 */ lfs f3, 0x0(r4)
/* 80072C24 0006EA64 C0 43 00 00 */ lfs f2, 0x0(r3)
/* 80072C28 0006EA68 C0 24 00 04 */ lfs f1, 0x4(r4)
/* 80072C2C 0006EA6C C0 03 00 0C */ lfs f0, 0xc(r3)
/* 80072C30 0006EA70 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072C34 0006EA74 C0 64 00 08 */ lfs f3, 0x8(r4)
/* 80072C38 0006EA78 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072C3C 0006EA7C C0 23 00 18 */ lfs f1, 0x18(r3)
/* 80072C40 0006EA80 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072C44 0006EA84 EC 02 00 2A */ fadds f0, f2, f0
/* 80072C48 0006EA88 EC 01 00 2A */ fadds f0, f1, f0
/* 80072C4C 0006EA8C D0 05 00 00 */ stfs f0, 0x0(r5)
/* 80072C50 0006EA90 C0 64 00 00 */ lfs f3, 0x0(r4)
/* 80072C54 0006EA94 C0 43 00 04 */ lfs f2, 0x4(r3)
/* 80072C58 0006EA98 C0 24 00 04 */ lfs f1, 0x4(r4)
/* 80072C5C 0006EA9C C0 03 00 10 */ lfs f0, 0x10(r3)
/* 80072C60 0006EAA0 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072C64 0006EAA4 C0 64 00 08 */ lfs f3, 0x8(r4)
/* 80072C68 0006EAA8 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072C6C 0006EAAC C0 23 00 1C */ lfs f1, 0x1c(r3)
/* 80072C70 0006EAB0 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072C74 0006EAB4 EC 02 00 2A */ fadds f0, f2, f0
/* 80072C78 0006EAB8 EC 01 00 2A */ fadds f0, f1, f0
/* 80072C7C 0006EABC D0 05 00 04 */ stfs f0, 0x4(r5)
/* 80072C80 0006EAC0 C0 64 00 00 */ lfs f3, 0x0(r4)
/* 80072C84 0006EAC4 C0 43 00 08 */ lfs f2, 0x8(r3)
/* 80072C88 0006EAC8 C0 24 00 04 */ lfs f1, 0x4(r4)
/* 80072C8C 0006EACC C0 03 00 14 */ lfs f0, 0x14(r3)
/* 80072C90 0006EAD0 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072C94 0006EAD4 C0 64 00 08 */ lfs f3, 0x8(r4)
/* 80072C98 0006EAD8 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072C9C 0006EADC C0 23 00 20 */ lfs f1, 0x20(r3)
/* 80072CA0 0006EAE0 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072CA4 0006EAE4 EC 02 00 2A */ fadds f0, f2, f0
/* 80072CA8 0006EAE8 EC 01 00 2A */ fadds f0, f1, f0
/* 80072CAC 0006EAEC D0 05 00 08 */ stfs f0, 0x8(r5)
/* 80072CB0 0006EAF0 C0 64 00 0C */ lfs f3, 0xc(r4)
/* 80072CB4 0006EAF4 C0 43 00 00 */ lfs f2, 0x0(r3)
/* 80072CB8 0006EAF8 C0 24 00 10 */ lfs f1, 0x10(r4)
/* 80072CBC 0006EAFC C0 03 00 0C */ lfs f0, 0xc(r3)
/* 80072CC0 0006EB00 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072CC4 0006EB04 C0 64 00 14 */ lfs f3, 0x14(r4)
/* 80072CC8 0006EB08 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072CCC 0006EB0C C0 23 00 18 */ lfs f1, 0x18(r3)
/* 80072CD0 0006EB10 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072CD4 0006EB14 EC 02 00 2A */ fadds f0, f2, f0
/* 80072CD8 0006EB18 EC 01 00 2A */ fadds f0, f1, f0
/* 80072CDC 0006EB1C D0 05 00 0C */ stfs f0, 0xc(r5)
/* 80072CE0 0006EB20 C0 64 00 0C */ lfs f3, 0xc(r4)
/* 80072CE4 0006EB24 C0 43 00 04 */ lfs f2, 0x4(r3)
/* 80072CE8 0006EB28 C0 24 00 10 */ lfs f1, 0x10(r4)
/* 80072CEC 0006EB2C C0 03 00 10 */ lfs f0, 0x10(r3)
/* 80072CF0 0006EB30 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072CF4 0006EB34 C0 64 00 14 */ lfs f3, 0x14(r4)
/* 80072CF8 0006EB38 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072CFC 0006EB3C C0 23 00 1C */ lfs f1, 0x1c(r3)
/* 80072D00 0006EB40 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072D04 0006EB44 EC 02 00 2A */ fadds f0, f2, f0
/* 80072D08 0006EB48 EC 01 00 2A */ fadds f0, f1, f0
/* 80072D0C 0006EB4C D0 05 00 10 */ stfs f0, 0x10(r5)
/* 80072D10 0006EB50 C0 64 00 0C */ lfs f3, 0xc(r4)
/* 80072D14 0006EB54 C0 43 00 08 */ lfs f2, 0x8(r3)
/* 80072D18 0006EB58 C0 24 00 10 */ lfs f1, 0x10(r4)
/* 80072D1C 0006EB5C C0 03 00 14 */ lfs f0, 0x14(r3)
/* 80072D20 0006EB60 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072D24 0006EB64 C0 64 00 14 */ lfs f3, 0x14(r4)
/* 80072D28 0006EB68 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072D2C 0006EB6C C0 23 00 20 */ lfs f1, 0x20(r3)
/* 80072D30 0006EB70 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072D34 0006EB74 EC 02 00 2A */ fadds f0, f2, f0
/* 80072D38 0006EB78 EC 01 00 2A */ fadds f0, f1, f0
/* 80072D3C 0006EB7C D0 05 00 14 */ stfs f0, 0x14(r5)
/* 80072D40 0006EB80 C0 64 00 18 */ lfs f3, 0x18(r4)
/* 80072D44 0006EB84 C0 43 00 00 */ lfs f2, 0x0(r3)
/* 80072D48 0006EB88 C0 24 00 1C */ lfs f1, 0x1c(r4)
/* 80072D4C 0006EB8C C0 03 00 0C */ lfs f0, 0xc(r3)
/* 80072D50 0006EB90 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072D54 0006EB94 C0 64 00 20 */ lfs f3, 0x20(r4)
/* 80072D58 0006EB98 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072D5C 0006EB9C C0 23 00 18 */ lfs f1, 0x18(r3)
/* 80072D60 0006EBA0 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072D64 0006EBA4 EC 02 00 2A */ fadds f0, f2, f0
/* 80072D68 0006EBA8 EC 01 00 2A */ fadds f0, f1, f0
/* 80072D6C 0006EBAC D0 05 00 18 */ stfs f0, 0x18(r5)
/* 80072D70 0006EBB0 C0 64 00 18 */ lfs f3, 0x18(r4)
/* 80072D74 0006EBB4 C0 43 00 04 */ lfs f2, 0x4(r3)
/* 80072D78 0006EBB8 C0 24 00 1C */ lfs f1, 0x1c(r4)
/* 80072D7C 0006EBBC C0 03 00 10 */ lfs f0, 0x10(r3)
/* 80072D80 0006EBC0 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072D84 0006EBC4 C0 64 00 20 */ lfs f3, 0x20(r4)
/* 80072D88 0006EBC8 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072D8C 0006EBCC C0 23 00 1C */ lfs f1, 0x1c(r3)
/* 80072D90 0006EBD0 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072D94 0006EBD4 EC 02 00 2A */ fadds f0, f2, f0
/* 80072D98 0006EBD8 EC 01 00 2A */ fadds f0, f1, f0
/* 80072D9C 0006EBDC D0 05 00 1C */ stfs f0, 0x1c(r5)
/* 80072DA0 0006EBE0 C0 64 00 18 */ lfs f3, 0x18(r4)
/* 80072DA4 0006EBE4 C0 43 00 08 */ lfs f2, 0x8(r3)
/* 80072DA8 0006EBE8 C0 24 00 1C */ lfs f1, 0x1c(r4)
/* 80072DAC 0006EBEC C0 03 00 14 */ lfs f0, 0x14(r3)
/* 80072DB0 0006EBF0 EC 43 00 B2 */ fmuls f2, f3, f2
/* 80072DB4 0006EBF4 C0 64 00 20 */ lfs f3, 0x20(r4)
/* 80072DB8 0006EBF8 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072DBC 0006EBFC C0 23 00 20 */ lfs f1, 0x20(r3)
/* 80072DC0 0006EC00 EC 23 00 72 */ fmuls f1, f3, f1
/* 80072DC4 0006EC04 EC 02 00 2A */ fadds f0, f2, f0
/* 80072DC8 0006EC08 EC 01 00 2A */ fadds f0, f1, f0
/* 80072DCC 0006EC0C D0 05 00 20 */ stfs f0, 0x20(r5)
/* 80072DD0 0006EC10 4E 80 00 20 */ blr
/* 80072DD4 0006EC14 00 00 00 00 */ .4byte 0x00000000
/* 80072DD8 0006EC18 00 00 00 00 */ .4byte 0x00000000
/* 80072DDC 0006EC1C 00 00 00 00 */ .4byte 0x00000000
.global __KMPLS_linear_Direction
__KMPLS_linear_Direction:
/* 80072DE0 0006EC20 C0 04 00 00 */ lfs f0, 0x0(r4)
/* 80072DE4 0006EC24 C0 43 00 00 */ lfs f2, 0x0(r3)
/* 80072DE8 0006EC28 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072DEC 0006EC2C EC 01 00 32 */ fmuls f0, f1, f0
/* 80072DF0 0006EC30 EC 02 00 2A */ fadds f0, f2, f0
/* 80072DF4 0006EC34 D0 05 00 00 */ stfs f0, 0x0(r5)
/* 80072DF8 0006EC38 C0 04 00 04 */ lfs f0, 0x4(r4)
/* 80072DFC 0006EC3C C0 43 00 04 */ lfs f2, 0x4(r3)
/* 80072E00 0006EC40 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E04 0006EC44 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E08 0006EC48 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E0C 0006EC4C D0 05 00 04 */ stfs f0, 0x4(r5)
/* 80072E10 0006EC50 C0 04 00 08 */ lfs f0, 0x8(r4)
/* 80072E14 0006EC54 C0 43 00 08 */ lfs f2, 0x8(r3)
/* 80072E18 0006EC58 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E1C 0006EC5C EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E20 0006EC60 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E24 0006EC64 D0 05 00 08 */ stfs f0, 0x8(r5)
/* 80072E28 0006EC68 C0 04 00 0C */ lfs f0, 0xc(r4)
/* 80072E2C 0006EC6C C0 43 00 0C */ lfs f2, 0xc(r3)
/* 80072E30 0006EC70 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E34 0006EC74 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E38 0006EC78 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E3C 0006EC7C D0 05 00 0C */ stfs f0, 0xc(r5)
/* 80072E40 0006EC80 C0 04 00 10 */ lfs f0, 0x10(r4)
/* 80072E44 0006EC84 C0 43 00 10 */ lfs f2, 0x10(r3)
/* 80072E48 0006EC88 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E4C 0006EC8C EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E50 0006EC90 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E54 0006EC94 D0 05 00 10 */ stfs f0, 0x10(r5)
/* 80072E58 0006EC98 C0 04 00 14 */ lfs f0, 0x14(r4)
/* 80072E5C 0006EC9C C0 43 00 14 */ lfs f2, 0x14(r3)
/* 80072E60 0006ECA0 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E64 0006ECA4 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E68 0006ECA8 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E6C 0006ECAC D0 05 00 14 */ stfs f0, 0x14(r5)
/* 80072E70 0006ECB0 C0 04 00 18 */ lfs f0, 0x18(r4)
/* 80072E74 0006ECB4 C0 43 00 18 */ lfs f2, 0x18(r3)
/* 80072E78 0006ECB8 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E7C 0006ECBC EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E80 0006ECC0 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E84 0006ECC4 D0 05 00 18 */ stfs f0, 0x18(r5)
/* 80072E88 0006ECC8 C0 04 00 1C */ lfs f0, 0x1c(r4)
/* 80072E8C 0006ECCC C0 43 00 1C */ lfs f2, 0x1c(r3)
/* 80072E90 0006ECD0 EC 00 10 28 */ fsubs f0, f0, f2
/* 80072E94 0006ECD4 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072E98 0006ECD8 EC 02 00 2A */ fadds f0, f2, f0
/* 80072E9C 0006ECDC D0 05 00 1C */ stfs f0, 0x1c(r5)
/* 80072EA0 0006ECE0 C0 43 00 20 */ lfs f2, 0x20(r3)
/* 80072EA4 0006ECE4 7C A3 2B 78 */ mr r3, r5
/* 80072EA8 0006ECE8 C0 04 00 20 */ lfs f0, 0x20(r4)
/* 80072EAC 0006ECEC EC 00 10 28 */ fsubs f0, f0, f2
/* 80072EB0 0006ECF0 EC 01 00 32 */ fmuls f0, f1, f0
/* 80072EB4 0006ECF4 C0 22 89 84 */ lfs f1, "@3054"@sda21(r2)
/* 80072EB8 0006ECF8 EC 02 00 2A */ fadds f0, f2, f0
/* 80072EBC 0006ECFC D0 05 00 20 */ stfs f0, 0x20(r5)
/* 80072EC0 0006ED00 4B FF F6 E0 */ b __KMPLS_normalize_directionXYZ
/* 80072EC4 0006ED04 00 00 00 00 */ .4byte 0x00000000
/* 80072EC8 0006ED08 00 00 00 00 */ .4byte 0x00000000
/* 80072ECC 0006ED0C 00 00 00 00 */ .4byte 0x00000000
.include "macros.inc"
.section .data, "wa" # 0x80421040 - 0x80496700 ; 0x000756C0
.global e_dir
e_dir:
.4byte 0x3F800000
.4byte 0
.4byte 0
.4byte 0
.4byte 0x3F800000
.4byte 0
.4byte 0
.4byte 0
.4byte 0x3F800000
.4byte 0
.include "macros.inc"
.section .sdata2, "wa" # 0x8055DF80 - 0x805643C0 ; 0x00006440
.global "@2972_8055E8F8"
"@2972_8055E8F8":
.4byte 0x3F000000
.global "@2973_8055E8FC"
"@2973_8055E8FC":
.4byte 0
.global "@2982_8055E900"
"@2982_8055E900":
.4byte 0x3F800000
.global "@3054"
"@3054":
.4byte 0x403FEF9E