.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_8020B4F8 func_8020B4F8: /* 8020B4F8 00207158 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8020B4FC 0020715C 7C 08 02 A6 */ mflr r0 /* 8020B500 00207160 90 01 00 54 */ stw r0, 0x54(r1) /* 8020B504 00207164 39 61 00 50 */ addi r11, r1, 0x50 /* 8020B508 00207168 4B FB BC 1D */ bl _savegpr_26 /* 8020B50C 0020716C 3C 00 43 30 */ lis r0, 0x4330 /* 8020B510 00207170 83 E5 00 00 */ lwz r31, 0(r5) /* 8020B514 00207174 90 01 00 20 */ stw r0, 0x20(r1) /* 8020B518 00207178 7C BE 2B 78 */ mr r30, r5 /* 8020B51C 0020717C 7C 7D 1B 78 */ mr r29, r3 /* 8020B520 00207180 7C 9A 23 78 */ mr r26, r4 /* 8020B524 00207184 90 01 00 28 */ stw r0, 0x28(r1) /* 8020B528 00207188 7C C5 33 78 */ mr r5, r6 /* 8020B52C 0020718C 48 00 15 0D */ bl func_8020CA38 /* 8020B530 00207190 3B 60 00 00 */ li r27, 0 /* 8020B534 00207194 9B 7D 00 5A */ stb r27, 0x5a(r29) /* 8020B538 00207198 48 01 82 F9 */ bl func_80223830 /* 8020B53C 0020719C 3F 80 00 03 */ lis r28, 0x000343FD@ha /* 8020B540 002071A0 80 83 00 00 */ lwz r4, 0(r3) /* 8020B544 002071A4 38 1C 43 FD */ addi r0, r28, 0x000343FD@l /* 8020B548 002071A8 C8 42 99 E0 */ lfd f2, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B54C 002071AC 7C A4 01 D6 */ mullw r5, r4, r0 /* 8020B550 002071B0 C0 02 99 C8 */ lfs f0, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B554 002071B4 38 81 00 08 */ addi r4, r1, 8 /* 8020B558 002071B8 3C A5 00 27 */ addis r5, r5, 0x27 /* 8020B55C 002071BC 38 A5 9E C3 */ addi r5, r5, -24893 /* 8020B560 002071C0 54 A0 84 3E */ srwi r0, r5, 0x10 /* 8020B564 002071C4 90 A3 00 00 */ stw r5, 0(r3) /* 8020B568 002071C8 38 7E 00 28 */ addi r3, r30, 0x28 /* 8020B56C 002071CC 90 01 00 24 */ stw r0, 0x24(r1) /* 8020B570 002071D0 C8 21 00 20 */ lfd f1, 0x20(r1) /* 8020B574 002071D4 EC 21 10 28 */ fsubs f1, f1, f2 /* 8020B578 002071D8 EC 21 00 24 */ fdivs f1, f1, f0 /* 8020B57C 002071DC 48 07 17 91 */ bl PSVECScale /* 8020B580 002071E0 C0 01 00 08 */ lfs f0, 8(r1) /* 8020B584 002071E4 38 7D 00 80 */ addi r3, r29, 0x80 /* 8020B588 002071E8 7C 65 1B 78 */ mr r5, r3 /* 8020B58C 002071EC 38 9E 00 1C */ addi r4, r30, 0x1c /* 8020B590 002071F0 D0 1D 00 80 */ stfs f0, 0x80(r29) /* 8020B594 002071F4 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8020B598 002071F8 D0 1D 00 84 */ stfs f0, 0x84(r29) /* 8020B59C 002071FC C0 01 00 10 */ lfs f0, 0x10(r1) /* 8020B5A0 00207200 D0 1D 00 88 */ stfs f0, 0x88(r29) /* 8020B5A4 00207204 48 07 17 21 */ bl PSVECAdd /* 8020B5A8 00207208 C0 22 99 CC */ lfs f1, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020B5AC 0020720C 3C 80 80 49 */ lis r4, lbl_80493638@ha /* 8020B5B0 00207210 C0 02 99 D0 */ lfs f0, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020B5B4 00207214 38 64 36 38 */ addi r3, r4, lbl_80493638@l /* 8020B5B8 00207218 D0 3D 00 60 */ stfs f1, 0x60(r29) /* 8020B5BC 0020721C D0 3D 00 64 */ stfs f1, 0x64(r29) /* 8020B5C0 00207220 D0 3D 00 68 */ stfs f1, 0x68(r29) /* 8020B5C4 00207224 D0 1D 00 6C */ stfs f0, 0x6c(r29) /* 8020B5C8 00207228 D0 3D 00 30 */ stfs f1, 0x30(r29) /* 8020B5CC 0020722C D0 3D 00 34 */ stfs f1, 0x34(r29) /* 8020B5D0 00207230 D0 3D 00 38 */ stfs f1, 0x38(r29) /* 8020B5D4 00207234 D0 3D 00 3C */ stfs f1, 0x3c(r29) /* 8020B5D8 00207238 D0 3D 00 40 */ stfs f1, 0x40(r29) /* 8020B5DC 0020723C D0 3D 00 44 */ stfs f1, 0x44(r29) /* 8020B5E0 00207240 D0 1D 00 48 */ stfs f0, 0x48(r29) /* 8020B5E4 00207244 C0 04 36 38 */ lfs f0, 0x3638(r4) /* 8020B5E8 00207248 D0 1D 00 4C */ stfs f0, 0x4c(r29) /* 8020B5EC 0020724C C0 03 00 04 */ lfs f0, 4(r3) /* 8020B5F0 00207250 D0 1D 00 50 */ stfs f0, 0x50(r29) /* 8020B5F4 00207254 C0 03 00 08 */ lfs f0, 8(r3) /* 8020B5F8 00207258 D0 1D 00 54 */ stfs f0, 0x54(r29) /* 8020B5FC 0020725C 9B 7D 00 5C */ stb r27, 0x5c(r29) /* 8020B600 00207260 9B 7D 00 5D */ stb r27, 0x5d(r29) /* 8020B604 00207264 9B 7D 00 5E */ stb r27, 0x5e(r29) /* 8020B608 00207268 9B 7D 00 5F */ stb r27, 0x5f(r29) /* 8020B60C 0020726C 9B 7D 00 5B */ stb r27, 0x5b(r29) /* 8020B610 00207270 80 7A 00 FC */ lwz r3, 0xfc(r26) /* 8020B614 00207274 80 03 00 00 */ lwz r0, 0(r3) /* 8020B618 00207278 54 00 05 6B */ rlwinm. r0, r0, 0, 0x15, 0x15 /* 8020B61C 0020727C 40 82 02 48 */ bne lbl_8020B864 /* 8020B620 00207280 38 7D 00 70 */ addi r3, r29, 0x70 /* 8020B624 00207284 38 9E 00 04 */ addi r4, r30, 4 /* 8020B628 00207288 48 01 80 99 */ bl func_802236C0 /* 8020B62C 0020728C 73 E0 E3 80 */ andi. r0, r31, 0xe380 /* 8020B630 00207290 41 82 02 34 */ beq lbl_8020B864 /* 8020B634 00207294 57 E0 06 31 */ rlwinm. r0, r31, 0, 0x18, 0x18 /* 8020B638 00207298 41 82 00 4C */ beq lbl_8020B684 /* 8020B63C 0020729C 48 01 81 F5 */ bl func_80223830 /* 8020B640 002072A0 80 83 00 00 */ lwz r4, 0(r3) /* 8020B644 002072A4 38 1C 43 FD */ addi r0, r28, 0x43fd /* 8020B648 002072A8 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B64C 002072AC 7C 84 01 D6 */ mullw r4, r4, r0 /* 8020B650 002072B0 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B654 002072B4 C0 02 99 D4 */ lfs f0, lbl_80641FD4-_SDA2_BASE_(r2) /* 8020B658 002072B8 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B65C 002072BC 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B660 002072C0 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B664 002072C4 90 83 00 00 */ stw r4, 0(r3) /* 8020B668 002072C8 90 01 00 2C */ stw r0, 0x2c(r1) /* 8020B66C 002072CC C8 41 00 28 */ lfd f2, 0x28(r1) /* 8020B670 002072D0 EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B674 002072D4 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B678 002072D8 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020B67C 002072DC D0 01 00 14 */ stfs f0, 0x14(r1) /* 8020B680 002072E0 48 00 00 0C */ b lbl_8020B68C lbl_8020B684: /* 8020B684 002072E4 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020B688 002072E8 D0 01 00 14 */ stfs f0, 0x14(r1) lbl_8020B68C: /* 8020B68C 002072EC 57 E0 05 EF */ rlwinm. r0, r31, 0, 0x17, 0x17 /* 8020B690 002072F0 41 82 00 50 */ beq lbl_8020B6E0 /* 8020B694 002072F4 48 01 81 9D */ bl func_80223830 /* 8020B698 002072F8 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B69C 002072FC 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B6A0 00207300 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B6A4 00207304 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B6A8 00207308 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B6AC 0020730C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B6B0 00207310 C0 02 99 D4 */ lfs f0, lbl_80641FD4-_SDA2_BASE_(r2) /* 8020B6B4 00207314 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B6B8 00207318 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B6BC 0020731C 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B6C0 00207320 90 83 00 00 */ stw r4, 0(r3) /* 8020B6C4 00207324 90 01 00 24 */ stw r0, 0x24(r1) /* 8020B6C8 00207328 C8 41 00 20 */ lfd f2, 0x20(r1) /* 8020B6CC 0020732C EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B6D0 00207330 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B6D4 00207334 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020B6D8 00207338 D0 01 00 18 */ stfs f0, 0x18(r1) /* 8020B6DC 0020733C 48 00 00 0C */ b lbl_8020B6E8 lbl_8020B6E0: /* 8020B6E0 00207340 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020B6E4 00207344 D0 01 00 18 */ stfs f0, 0x18(r1) lbl_8020B6E8: /* 8020B6E8 00207348 57 E0 05 AD */ rlwinm. r0, r31, 0, 0x16, 0x16 /* 8020B6EC 0020734C 41 82 00 50 */ beq lbl_8020B73C /* 8020B6F0 00207350 48 01 81 41 */ bl func_80223830 /* 8020B6F4 00207354 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B6F8 00207358 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B6FC 0020735C 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B700 00207360 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B704 00207364 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B708 00207368 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B70C 0020736C C0 02 99 D4 */ lfs f0, lbl_80641FD4-_SDA2_BASE_(r2) /* 8020B710 00207370 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B714 00207374 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B718 00207378 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B71C 0020737C 90 83 00 00 */ stw r4, 0(r3) /* 8020B720 00207380 90 01 00 2C */ stw r0, 0x2c(r1) /* 8020B724 00207384 C8 41 00 28 */ lfd f2, 0x28(r1) /* 8020B728 00207388 EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B72C 0020738C EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B730 00207390 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020B734 00207394 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8020B738 00207398 48 00 00 0C */ b lbl_8020B744 lbl_8020B73C: /* 8020B73C 0020739C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020B740 002073A0 D0 01 00 1C */ stfs f0, 0x1c(r1) lbl_8020B744: /* 8020B744 002073A4 57 E0 04 A5 */ rlwinm. r0, r31, 0, 0x12, 0x12 /* 8020B748 002073A8 41 82 00 58 */ beq lbl_8020B7A0 /* 8020B74C 002073AC 48 01 80 E5 */ bl func_80223830 /* 8020B750 002073B0 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B754 002073B4 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B758 002073B8 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B75C 002073BC C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B760 002073C0 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B764 002073C4 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B768 002073C8 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2) /* 8020B76C 002073CC 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B770 002073D0 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B774 002073D4 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B778 002073D8 90 83 00 00 */ stw r4, 0(r3) /* 8020B77C 002073DC 90 01 00 24 */ stw r0, 0x24(r1) /* 8020B780 002073E0 C8 41 00 20 */ lfd f2, 0x20(r1) /* 8020B784 002073E4 EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B788 002073E8 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B78C 002073EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020B790 002073F0 40 80 00 10 */ bge lbl_8020B7A0 /* 8020B794 002073F4 88 1D 00 5A */ lbz r0, 0x5a(r29) /* 8020B798 002073F8 60 00 00 01 */ ori r0, r0, 1 /* 8020B79C 002073FC 98 1D 00 5A */ stb r0, 0x5a(r29) lbl_8020B7A0: /* 8020B7A0 00207400 57 E0 04 63 */ rlwinm. r0, r31, 0, 0x11, 0x11 /* 8020B7A4 00207404 41 82 00 58 */ beq lbl_8020B7FC /* 8020B7A8 00207408 48 01 80 89 */ bl func_80223830 /* 8020B7AC 0020740C 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B7B0 00207410 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B7B4 00207414 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B7B8 00207418 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B7BC 0020741C 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B7C0 00207420 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B7C4 00207424 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2) /* 8020B7C8 00207428 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B7CC 0020742C 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B7D0 00207430 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B7D4 00207434 90 83 00 00 */ stw r4, 0(r3) /* 8020B7D8 00207438 90 01 00 2C */ stw r0, 0x2c(r1) /* 8020B7DC 0020743C C8 41 00 28 */ lfd f2, 0x28(r1) /* 8020B7E0 00207440 EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B7E4 00207444 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B7E8 00207448 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020B7EC 0020744C 40 80 00 10 */ bge lbl_8020B7FC /* 8020B7F0 00207450 88 1D 00 5A */ lbz r0, 0x5a(r29) /* 8020B7F4 00207454 60 00 00 02 */ ori r0, r0, 2 /* 8020B7F8 00207458 98 1D 00 5A */ stb r0, 0x5a(r29) lbl_8020B7FC: /* 8020B7FC 0020745C 57 E0 04 21 */ rlwinm. r0, r31, 0, 0x10, 0x10 /* 8020B800 00207460 41 82 00 58 */ beq lbl_8020B858 /* 8020B804 00207464 48 01 80 2D */ bl func_80223830 /* 8020B808 00207468 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B80C 0020746C 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B810 00207470 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B814 00207474 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B818 00207478 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B81C 0020747C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B820 00207480 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2) /* 8020B824 00207484 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B828 00207488 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B82C 0020748C 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B830 00207490 90 83 00 00 */ stw r4, 0(r3) /* 8020B834 00207494 90 01 00 24 */ stw r0, 0x24(r1) /* 8020B838 00207498 C8 41 00 20 */ lfd f2, 0x20(r1) /* 8020B83C 0020749C EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B840 002074A0 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B844 002074A4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020B848 002074A8 40 80 00 10 */ bge lbl_8020B858 /* 8020B84C 002074AC 88 1D 00 5A */ lbz r0, 0x5a(r29) /* 8020B850 002074B0 60 00 00 04 */ ori r0, r0, 4 /* 8020B854 002074B4 98 1D 00 5A */ stb r0, 0x5a(r29) lbl_8020B858: /* 8020B858 002074B8 38 7D 00 60 */ addi r3, r29, 0x60 /* 8020B85C 002074BC 38 81 00 14 */ addi r4, r1, 0x14 /* 8020B860 002074C0 48 01 7E 61 */ bl func_802236C0 lbl_8020B864: /* 8020B864 002074C4 C0 1E 00 10 */ lfs f0, 0x10(r30) /* 8020B868 002074C8 57 E0 05 6B */ rlwinm. r0, r31, 0, 0x15, 0x15 /* 8020B86C 002074CC D0 1D 00 8C */ stfs f0, 0x8c(r29) /* 8020B870 002074D0 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 8020B874 002074D4 D0 1D 00 90 */ stfs f0, 0x90(r29) /* 8020B878 002074D8 C0 1E 00 18 */ lfs f0, 0x18(r30) /* 8020B87C 002074DC D0 1D 00 94 */ stfs f0, 0x94(r29) /* 8020B880 002074E0 41 82 00 4C */ beq lbl_8020B8CC /* 8020B884 002074E4 48 01 7F AD */ bl func_80223830 /* 8020B888 002074E8 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B88C 002074EC 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B890 002074F0 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B894 002074F4 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B898 002074F8 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B89C 002074FC C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B8A0 00207500 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B8A4 00207504 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B8A8 00207508 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B8AC 0020750C 90 83 00 00 */ stw r4, 0(r3) /* 8020B8B0 00207510 90 01 00 2C */ stw r0, 0x2c(r1) /* 8020B8B4 00207514 C0 1D 00 8C */ lfs f0, 0x8c(r29) /* 8020B8B8 00207518 C8 41 00 28 */ lfd f2, 0x28(r1) /* 8020B8BC 0020751C EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B8C0 00207520 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B8C4 00207524 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020B8C8 00207528 D0 1D 00 8C */ stfs f0, 0x8c(r29) lbl_8020B8CC: /* 8020B8CC 0020752C 57 E0 05 29 */ rlwinm. r0, r31, 0, 0x14, 0x14 /* 8020B8D0 00207530 41 82 00 4C */ beq lbl_8020B91C /* 8020B8D4 00207534 48 01 7F 5D */ bl func_80223830 /* 8020B8D8 00207538 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B8DC 0020753C 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B8E0 00207540 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B8E4 00207544 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B8E8 00207548 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B8EC 0020754C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B8F0 00207550 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B8F4 00207554 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B8F8 00207558 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B8FC 0020755C 90 83 00 00 */ stw r4, 0(r3) /* 8020B900 00207560 90 01 00 24 */ stw r0, 0x24(r1) /* 8020B904 00207564 C0 1D 00 90 */ lfs f0, 0x90(r29) /* 8020B908 00207568 C8 41 00 20 */ lfd f2, 0x20(r1) /* 8020B90C 0020756C EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B910 00207570 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B914 00207574 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020B918 00207578 D0 1D 00 90 */ stfs f0, 0x90(r29) lbl_8020B91C: /* 8020B91C 0020757C 57 E0 04 E7 */ rlwinm. r0, r31, 0, 0x13, 0x13 /* 8020B920 00207580 41 82 00 4C */ beq lbl_8020B96C /* 8020B924 00207584 48 01 7F 0D */ bl func_80223830 /* 8020B928 00207588 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8020B92C 0020758C 80 A3 00 00 */ lwz r5, 0(r3) /* 8020B930 00207590 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 8020B934 00207594 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2) /* 8020B938 00207598 7C 85 01 D6 */ mullw r4, r5, r0 /* 8020B93C 0020759C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2) /* 8020B940 002075A0 3C 84 00 27 */ addis r4, r4, 0x27 /* 8020B944 002075A4 38 84 9E C3 */ addi r4, r4, -24893 /* 8020B948 002075A8 54 80 84 3E */ srwi r0, r4, 0x10 /* 8020B94C 002075AC 90 83 00 00 */ stw r4, 0(r3) /* 8020B950 002075B0 90 01 00 2C */ stw r0, 0x2c(r1) /* 8020B954 002075B4 C0 1D 00 94 */ lfs f0, 0x94(r29) /* 8020B958 002075B8 C8 41 00 28 */ lfd f2, 0x28(r1) /* 8020B95C 002075BC EC 42 18 28 */ fsubs f2, f2, f3 /* 8020B960 002075C0 EC 22 08 24 */ fdivs f1, f2, f1 /* 8020B964 002075C4 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020B968 002075C8 D0 1D 00 94 */ stfs f0, 0x94(r29) lbl_8020B96C: /* 8020B96C 002075CC 80 1E 00 00 */ lwz r0, 0(r30) /* 8020B970 002075D0 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8020B974 002075D4 41 82 00 18 */ beq lbl_8020B98C /* 8020B978 002075D8 80 7E 00 58 */ lwz r3, 0x58(r30) /* 8020B97C 002075DC 38 03 FF FF */ addi r0, r3, -1 /* 8020B980 002075E0 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 8020B984 002075E4 48 01 0B A9 */ bl func_8021C52C /* 8020B988 002075E8 B0 7D 00 58 */ sth r3, 0x58(r29) lbl_8020B98C: /* 8020B98C 002075EC 39 61 00 50 */ addi r11, r1, 0x50 /* 8020B990 002075F0 4B FB B7 E1 */ bl _restgpr_26 /* 8020B994 002075F4 80 01 00 54 */ lwz r0, 0x54(r1) /* 8020B998 002075F8 7C 08 03 A6 */ mtlr r0 /* 8020B99C 002075FC 38 21 00 50 */ addi r1, r1, 0x50 /* 8020B9A0 00207600 4E 80 00 20 */ blr .global func_8020B9A4 func_8020B9A4: /* 8020B9A4 00207604 94 21 FF 10 */ stwu r1, -0xf0(r1) /* 8020B9A8 00207608 7C 08 02 A6 */ mflr r0 /* 8020B9AC 0020760C 90 01 00 F4 */ stw r0, 0xf4(r1) /* 8020B9B0 00207610 DB E1 00 E0 */ stfd f31, 0xe0(r1) /* 8020B9B4 00207614 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 /* 8020B9B8 00207618 DB C1 00 D0 */ stfd f30, 0xd0(r1) /* 8020B9BC 0020761C F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0 /* 8020B9C0 00207620 FF C0 08 90 */ fmr f30, f1 /* 8020B9C4 00207624 93 E1 00 CC */ stw r31, 0xcc(r1) /* 8020B9C8 00207628 7C BF 2B 78 */ mr r31, r5 /* 8020B9CC 0020762C 93 C1 00 C8 */ stw r30, 0xc8(r1) /* 8020B9D0 00207630 7C 9E 23 78 */ mr r30, r4 /* 8020B9D4 00207634 93 A1 00 C4 */ stw r29, 0xc4(r1) /* 8020B9D8 00207638 7C 7D 1B 78 */ mr r29, r3 /* 8020B9DC 0020763C 93 81 00 C0 */ stw r28, 0xc0(r1) /* 8020B9E0 00207640 83 85 00 00 */ lwz r28, 0(r5) /* 8020B9E4 00207644 48 00 11 45 */ bl func_8020CB28 /* 8020B9E8 00207648 2C 03 00 00 */ cmpwi r3, 0 /* 8020B9EC 0020764C 41 81 00 0C */ bgt lbl_8020B9F8 /* 8020B9F0 00207650 38 60 00 00 */ li r3, 0 /* 8020B9F4 00207654 48 00 06 90 */ b lbl_8020C084 lbl_8020B9F8: /* 8020B9F8 00207658 57 80 07 39 */ rlwinm. r0, r28, 0, 0x1c, 0x1c /* 8020B9FC 0020765C 41 82 00 28 */ beq lbl_8020BA24 /* 8020BA00 00207660 C0 5D 00 00 */ lfs f2, 0(r29) /* 8020BA04 00207664 C0 3D 00 04 */ lfs f1, 4(r29) /* 8020BA08 00207668 C0 1F 00 5C */ lfs f0, 0x5c(r31) /* 8020BA0C 0020766C EC 22 08 28 */ fsubs f1, f2, f1 /* 8020BA10 00207670 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BA14 00207674 4C 41 13 82 */ cror 2, 1, 2 /* 8020BA18 00207678 40 82 00 0C */ bne lbl_8020BA24 /* 8020BA1C 0020767C 38 60 00 00 */ li r3, 0 /* 8020BA20 00207680 48 00 06 64 */ b lbl_8020C084 lbl_8020BA24: /* 8020BA24 00207684 C0 3D 00 04 */ lfs f1, 4(r29) /* 8020BA28 00207688 C0 1D 00 00 */ lfs f0, 0(r29) /* 8020BA2C 0020768C 80 7E 00 FC */ lwz r3, 0xfc(r30) /* 8020BA30 00207690 EC 21 00 24 */ fdivs f1, f1, f0 /* 8020BA34 00207694 C0 02 99 D0 */ lfs f0, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BA38 00207698 80 03 00 00 */ lwz r0, 0(r3) /* 8020BA3C 0020769C 54 00 05 6B */ rlwinm. r0, r0, 0, 0x15, 0x15 /* 8020BA40 002076A0 EF E0 08 28 */ fsubs f31, f0, f1 /* 8020BA44 002076A4 41 82 00 E0 */ beq lbl_8020BB24 /* 8020BA48 002076A8 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8020BA4C 002076AC D0 01 00 60 */ stfs f0, 0x60(r1) /* 8020BA50 002076B0 C0 1D 00 18 */ lfs f0, 0x18(r29) /* 8020BA54 002076B4 D0 01 00 64 */ stfs f0, 0x64(r1) /* 8020BA58 002076B8 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8020BA5C 002076BC D0 01 00 68 */ stfs f0, 0x68(r1) /* 8020BA60 002076C0 80 7E 00 FC */ lwz r3, 0xfc(r30) /* 8020BA64 002076C4 80 03 00 00 */ lwz r0, 0(r3) /* 8020BA68 002076C8 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 8020BA6C 002076CC 41 82 00 48 */ beq lbl_8020BAB4 /* 8020BA70 002076D0 80 7D 00 20 */ lwz r3, 0x20(r29) /* 8020BA74 002076D4 38 A1 00 40 */ addi r5, r1, 0x40 /* 8020BA78 002076D8 80 8D A1 F0 */ lwz r4, lbl_8063F4B0-_SDA_BASE_(r13) /* 8020BA7C 002076DC 38 63 00 0C */ addi r3, r3, 0xc /* 8020BA80 002076E0 38 84 01 20 */ addi r4, r4, 0x120 /* 8020BA84 002076E4 48 07 16 51 */ bl PSQUATDivide /* 8020BA88 002076E8 C0 61 00 40 */ lfs f3, 0x40(r1) /* 8020BA8C 002076EC 38 61 00 60 */ addi r3, r1, 0x60 /* 8020BA90 002076F0 C0 41 00 44 */ lfs f2, 0x44(r1) /* 8020BA94 002076F4 38 81 00 70 */ addi r4, r1, 0x70 /* 8020BA98 002076F8 C0 21 00 48 */ lfs f1, 0x48(r1) /* 8020BA9C 002076FC C0 01 00 4C */ lfs f0, 0x4c(r1) /* 8020BAA0 00207700 D0 61 00 70 */ stfs f3, 0x70(r1) /* 8020BAA4 00207704 D0 41 00 74 */ stfs f2, 0x74(r1) /* 8020BAA8 00207708 D0 21 00 78 */ stfs f1, 0x78(r1) /* 8020BAAC 0020770C D0 01 00 7C */ stfs f0, 0x7c(r1) /* 8020BAB0 00207710 48 01 7F 5D */ bl func_80223A0C lbl_8020BAB4: /* 8020BAB4 00207714 C0 21 00 60 */ lfs f1, 0x60(r1) /* 8020BAB8 00207718 C0 01 00 68 */ lfs f0, 0x68(r1) /* 8020BABC 0020771C EC 21 00 72 */ fmuls f1, f1, f1 /* 8020BAC0 00207720 C0 42 99 CC */ lfs f2, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BAC4 00207724 EC 00 00 32 */ fmuls f0, f0, f0 /* 8020BAC8 00207728 EC 21 00 2A */ fadds f1, f1, f0 /* 8020BACC 0020772C FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8020BAD0 00207730 4C 40 13 82 */ cror 2, 0, 2 /* 8020BAD4 00207734 40 82 00 08 */ bne lbl_8020BADC /* 8020BAD8 00207738 48 00 00 0C */ b lbl_8020BAE4 lbl_8020BADC: /* 8020BADC 0020773C 4B FC 8D 59 */ bl sqrt /* 8020BAE0 00207740 FC 40 08 18 */ frsp f2, f1 lbl_8020BAE4: /* 8020BAE4 00207744 C0 01 00 64 */ lfs f0, 0x64(r1) /* 8020BAE8 00207748 FC 20 00 50 */ fneg f1, f0 /* 8020BAEC 0020774C 4B FC 8A F1 */ bl atan2 /* 8020BAF0 00207750 FC 00 08 18 */ frsp f0, f1 /* 8020BAF4 00207754 C0 41 00 68 */ lfs f2, 0x68(r1) /* 8020BAF8 00207758 C0 21 00 60 */ lfs f1, 0x60(r1) /* 8020BAFC 0020775C D0 01 00 80 */ stfs f0, 0x80(r1) /* 8020BB00 00207760 4B FC 8A DD */ bl atan2 /* 8020BB04 00207764 FC 20 08 18 */ frsp f1, f1 /* 8020BB08 00207768 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BB0C 0020776C 38 7D 00 70 */ addi r3, r29, 0x70 /* 8020BB10 00207770 38 81 00 80 */ addi r4, r1, 0x80 /* 8020BB14 00207774 D0 01 00 88 */ stfs f0, 0x88(r1) /* 8020BB18 00207778 D0 21 00 84 */ stfs f1, 0x84(r1) /* 8020BB1C 0020777C 48 01 7B A5 */ bl func_802236C0 /* 8020BB20 00207780 48 00 01 98 */ b lbl_8020BCB8 lbl_8020BB24: /* 8020BB24 00207784 57 80 06 B5 */ rlwinm. r0, r28, 0, 0x1a, 0x1a /* 8020BB28 00207788 41 82 01 4C */ beq lbl_8020BC74 /* 8020BB2C 0020778C 80 7F 00 34 */ lwz r3, 0x34(r31) /* 8020BB30 00207790 2C 03 00 00 */ cmpwi r3, 0 /* 8020BB34 00207794 41 82 00 10 */ beq lbl_8020BB44 /* 8020BB38 00207798 88 03 00 00 */ lbz r0, 0(r3) /* 8020BB3C 0020779C 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BB40 002077A0 40 82 00 0C */ bne lbl_8020BB4C lbl_8020BB44: /* 8020BB44 002077A4 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BB48 002077A8 48 00 00 40 */ b lbl_8020BB88 lbl_8020BB4C: /* 8020BB4C 002077AC C0 23 00 08 */ lfs f1, 8(r3) /* 8020BB50 002077B0 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BB54 002077B4 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BB58 002077B8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BB5C 002077BC 40 81 00 08 */ ble lbl_8020BB64 /* 8020BB60 002077C0 48 00 00 08 */ b lbl_8020BB68 lbl_8020BB64: /* 8020BB64 002077C4 FC 20 08 50 */ fneg f1, f1 lbl_8020BB68: /* 8020BB68 002077C8 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BB6C 002077CC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BB70 002077D0 4C 40 13 82 */ cror 2, 0, 2 /* 8020BB74 002077D4 40 82 00 0C */ bne lbl_8020BB80 /* 8020BB78 002077D8 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BB7C 002077DC 48 00 00 0C */ b lbl_8020BB88 lbl_8020BB80: /* 8020BB80 002077E0 FC 20 F8 90 */ fmr f1, f31 /* 8020BB84 002077E4 48 00 59 E1 */ bl func_80211564 lbl_8020BB88: /* 8020BB88 002077E8 C0 1F 00 04 */ lfs f0, 4(r31) /* 8020BB8C 002077EC EC 00 00 72 */ fmuls f0, f0, f1 /* 8020BB90 002077F0 D0 01 00 80 */ stfs f0, 0x80(r1) /* 8020BB94 002077F4 80 7F 00 38 */ lwz r3, 0x38(r31) /* 8020BB98 002077F8 2C 03 00 00 */ cmpwi r3, 0 /* 8020BB9C 002077FC 41 82 00 10 */ beq lbl_8020BBAC /* 8020BBA0 00207800 88 03 00 00 */ lbz r0, 0(r3) /* 8020BBA4 00207804 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BBA8 00207808 40 82 00 0C */ bne lbl_8020BBB4 lbl_8020BBAC: /* 8020BBAC 0020780C C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BBB0 00207810 48 00 00 40 */ b lbl_8020BBF0 lbl_8020BBB4: /* 8020BBB4 00207814 C0 23 00 08 */ lfs f1, 8(r3) /* 8020BBB8 00207818 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BBBC 0020781C EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BBC0 00207820 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BBC4 00207824 40 81 00 08 */ ble lbl_8020BBCC /* 8020BBC8 00207828 48 00 00 08 */ b lbl_8020BBD0 lbl_8020BBCC: /* 8020BBCC 0020782C FC 20 08 50 */ fneg f1, f1 lbl_8020BBD0: /* 8020BBD0 00207830 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BBD4 00207834 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BBD8 00207838 4C 40 13 82 */ cror 2, 0, 2 /* 8020BBDC 0020783C 40 82 00 0C */ bne lbl_8020BBE8 /* 8020BBE0 00207840 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BBE4 00207844 48 00 00 0C */ b lbl_8020BBF0 lbl_8020BBE8: /* 8020BBE8 00207848 FC 20 F8 90 */ fmr f1, f31 /* 8020BBEC 0020784C 48 00 59 79 */ bl func_80211564 lbl_8020BBF0: /* 8020BBF0 00207850 C0 1F 00 08 */ lfs f0, 8(r31) /* 8020BBF4 00207854 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020BBF8 00207858 D0 01 00 84 */ stfs f0, 0x84(r1) /* 8020BBFC 0020785C 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 8020BC00 00207860 2C 03 00 00 */ cmpwi r3, 0 /* 8020BC04 00207864 41 82 00 10 */ beq lbl_8020BC14 /* 8020BC08 00207868 88 03 00 00 */ lbz r0, 0(r3) /* 8020BC0C 0020786C 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BC10 00207870 40 82 00 0C */ bne lbl_8020BC1C lbl_8020BC14: /* 8020BC14 00207874 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BC18 00207878 48 00 00 40 */ b lbl_8020BC58 lbl_8020BC1C: /* 8020BC1C 0020787C C0 23 00 08 */ lfs f1, 8(r3) /* 8020BC20 00207880 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BC24 00207884 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BC28 00207888 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BC2C 0020788C 40 81 00 08 */ ble lbl_8020BC34 /* 8020BC30 00207890 48 00 00 08 */ b lbl_8020BC38 lbl_8020BC34: /* 8020BC34 00207894 FC 20 08 50 */ fneg f1, f1 lbl_8020BC38: /* 8020BC38 00207898 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BC3C 0020789C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BC40 002078A0 4C 40 13 82 */ cror 2, 0, 2 /* 8020BC44 002078A4 40 82 00 0C */ bne lbl_8020BC50 /* 8020BC48 002078A8 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BC4C 002078AC 48 00 00 0C */ b lbl_8020BC58 lbl_8020BC50: /* 8020BC50 002078B0 FC 20 F8 90 */ fmr f1, f31 /* 8020BC54 002078B4 48 00 59 11 */ bl func_80211564 lbl_8020BC58: /* 8020BC58 002078B8 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 8020BC5C 002078BC 38 7D 00 70 */ addi r3, r29, 0x70 /* 8020BC60 002078C0 38 81 00 80 */ addi r4, r1, 0x80 /* 8020BC64 002078C4 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020BC68 002078C8 D0 01 00 88 */ stfs f0, 0x88(r1) /* 8020BC6C 002078CC 48 01 7A 55 */ bl func_802236C0 /* 8020BC70 002078D0 48 00 00 48 */ b lbl_8020BCB8 lbl_8020BC74: /* 8020BC74 002078D4 FC 20 F0 90 */ fmr f1, f30 /* 8020BC78 002078D8 38 7D 00 8C */ addi r3, r29, 0x8c /* 8020BC7C 002078DC 38 81 00 30 */ addi r4, r1, 0x30 /* 8020BC80 002078E0 48 07 10 8D */ bl PSVECScale /* 8020BC84 002078E4 C0 41 00 30 */ lfs f2, 0x30(r1) /* 8020BC88 002078E8 38 61 00 50 */ addi r3, r1, 0x50 /* 8020BC8C 002078EC C0 21 00 34 */ lfs f1, 0x34(r1) /* 8020BC90 002078F0 38 81 00 80 */ addi r4, r1, 0x80 /* 8020BC94 002078F4 C0 01 00 38 */ lfs f0, 0x38(r1) /* 8020BC98 002078F8 D0 41 00 80 */ stfs f2, 0x80(r1) /* 8020BC9C 002078FC D0 21 00 84 */ stfs f1, 0x84(r1) /* 8020BCA0 00207900 D0 01 00 88 */ stfs f0, 0x88(r1) /* 8020BCA4 00207904 48 01 7A 1D */ bl func_802236C0 /* 8020BCA8 00207908 38 7D 00 70 */ addi r3, r29, 0x70 /* 8020BCAC 0020790C 38 81 00 50 */ addi r4, r1, 0x50 /* 8020BCB0 00207910 7C 65 1B 78 */ mr r5, r3 /* 8020BCB4 00207914 48 07 13 71 */ bl PSQUATMultiply lbl_8020BCB8: /* 8020BCB8 00207918 88 1D 00 5A */ lbz r0, 0x5a(r29) /* 8020BCBC 0020791C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8020BCC0 00207920 41 82 00 10 */ beq lbl_8020BCD0 /* 8020BCC4 00207924 C0 1D 00 70 */ lfs f0, 0x70(r29) /* 8020BCC8 00207928 FC 00 00 50 */ fneg f0, f0 /* 8020BCCC 0020792C 48 00 00 08 */ b lbl_8020BCD4 lbl_8020BCD0: /* 8020BCD0 00207930 C0 1D 00 70 */ lfs f0, 0x70(r29) lbl_8020BCD4: /* 8020BCD4 00207934 D0 01 00 70 */ stfs f0, 0x70(r1) /* 8020BCD8 00207938 88 1D 00 5A */ lbz r0, 0x5a(r29) /* 8020BCDC 0020793C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8020BCE0 00207940 41 82 00 14 */ beq lbl_8020BCF4 /* 8020BCE4 00207944 C0 1D 00 74 */ lfs f0, 0x74(r29) /* 8020BCE8 00207948 FC 00 00 50 */ fneg f0, f0 /* 8020BCEC 0020794C D0 01 00 74 */ stfs f0, 0x74(r1) /* 8020BCF0 00207950 48 00 00 0C */ b lbl_8020BCFC lbl_8020BCF4: /* 8020BCF4 00207954 C0 1D 00 74 */ lfs f0, 0x74(r29) /* 8020BCF8 00207958 D0 01 00 74 */ stfs f0, 0x74(r1) lbl_8020BCFC: /* 8020BCFC 0020795C 88 1D 00 5A */ lbz r0, 0x5a(r29) /* 8020BD00 00207960 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8020BD04 00207964 41 82 00 14 */ beq lbl_8020BD18 /* 8020BD08 00207968 C0 1D 00 78 */ lfs f0, 0x78(r29) /* 8020BD0C 0020796C FC 00 00 50 */ fneg f0, f0 /* 8020BD10 00207970 D0 01 00 78 */ stfs f0, 0x78(r1) /* 8020BD14 00207974 48 00 00 0C */ b lbl_8020BD20 lbl_8020BD18: /* 8020BD18 00207978 C0 1D 00 78 */ lfs f0, 0x78(r29) /* 8020BD1C 0020797C D0 01 00 78 */ stfs f0, 0x78(r1) lbl_8020BD20: /* 8020BD20 00207980 C0 1D 00 7C */ lfs f0, 0x7c(r29) /* 8020BD24 00207984 D0 01 00 7C */ stfs f0, 0x7c(r1) /* 8020BD28 00207988 80 1F 00 00 */ lwz r0, 0(r31) /* 8020BD2C 0020798C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8020BD30 00207990 40 82 01 A8 */ bne lbl_8020BED8 /* 8020BD34 00207994 FC 20 F8 90 */ fmr f1, f31 /* 8020BD38 00207998 80 9F 00 4C */ lwz r4, 0x4c(r31) /* 8020BD3C 0020799C 38 7D 00 5C */ addi r3, r29, 0x5c /* 8020BD40 002079A0 48 00 5A 21 */ bl func_80211760 /* 8020BD44 002079A4 88 1D 00 5C */ lbz r0, 0x5c(r29) /* 8020BD48 002079A8 20 00 00 FF */ subfic r0, r0, 0xff /* 8020BD4C 002079AC 98 01 00 0A */ stb r0, 0xa(r1) /* 8020BD50 002079B0 E0 41 A0 0A */ psq_l f2, 10(r1), 1, qr2 /* 8020BD54 002079B4 C0 1E 00 3C */ lfs f0, 0x3c(r30) /* 8020BD58 002079B8 C0 22 99 D8 */ lfs f1, lbl_80641FD8-_SDA2_BASE_(r2) /* 8020BD5C 002079BC EC 02 00 32 */ fmuls f0, f2, f0 /* 8020BD60 002079C0 EC 01 00 2A */ fadds f0, f1, f0 /* 8020BD64 002079C4 F0 01 A0 1C */ psq_st f0, 28(r1), 1, qr2 /* 8020BD68 002079C8 88 81 00 1C */ lbz r4, 0x1c(r1) /* 8020BD6C 002079CC 88 7D 00 5C */ lbz r3, 0x5c(r29) /* 8020BD70 002079D0 88 1D 00 5D */ lbz r0, 0x5d(r29) /* 8020BD74 002079D4 7C 63 22 14 */ add r3, r3, r4 /* 8020BD78 002079D8 98 7D 00 5C */ stb r3, 0x5c(r29) /* 8020BD7C 002079DC 20 00 00 FF */ subfic r0, r0, 0xff /* 8020BD80 002079E0 98 01 00 09 */ stb r0, 9(r1) /* 8020BD84 002079E4 E0 41 A0 09 */ psq_l f2, 9(r1), 1, qr2 /* 8020BD88 002079E8 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8020BD8C 002079EC EC 02 00 32 */ fmuls f0, f2, f0 /* 8020BD90 002079F0 EC 01 00 2A */ fadds f0, f1, f0 /* 8020BD94 002079F4 F0 01 A0 18 */ psq_st f0, 24(r1), 1, qr2 /* 8020BD98 002079F8 88 1D 00 5E */ lbz r0, 0x5e(r29) /* 8020BD9C 002079FC 88 81 00 18 */ lbz r4, 0x18(r1) /* 8020BDA0 00207A00 88 7D 00 5D */ lbz r3, 0x5d(r29) /* 8020BDA4 00207A04 20 00 00 FF */ subfic r0, r0, 0xff /* 8020BDA8 00207A08 7C 63 22 14 */ add r3, r3, r4 /* 8020BDAC 00207A0C 98 7D 00 5D */ stb r3, 0x5d(r29) /* 8020BDB0 00207A10 98 01 00 08 */ stb r0, 8(r1) /* 8020BDB4 00207A14 E0 41 A0 08 */ psq_l f2, 8(r1), 1, qr2 /* 8020BDB8 00207A18 C0 1E 00 44 */ lfs f0, 0x44(r30) /* 8020BDBC 00207A1C EC 02 00 32 */ fmuls f0, f2, f0 /* 8020BDC0 00207A20 EC 01 00 2A */ fadds f0, f1, f0 /* 8020BDC4 00207A24 F0 01 A0 14 */ psq_st f0, 20(r1), 1, qr2 /* 8020BDC8 00207A28 88 61 00 14 */ lbz r3, 0x14(r1) /* 8020BDCC 00207A2C 88 1D 00 5E */ lbz r0, 0x5e(r29) /* 8020BDD0 00207A30 7C 00 1A 14 */ add r0, r0, r3 /* 8020BDD4 00207A34 98 1D 00 5E */ stb r0, 0x5e(r29) /* 8020BDD8 00207A38 80 7F 00 50 */ lwz r3, 0x50(r31) /* 8020BDDC 00207A3C 2C 03 00 00 */ cmpwi r3, 0 /* 8020BDE0 00207A40 41 82 00 10 */ beq lbl_8020BDF0 /* 8020BDE4 00207A44 88 03 00 00 */ lbz r0, 0(r3) /* 8020BDE8 00207A48 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BDEC 00207A4C 40 82 00 0C */ bne lbl_8020BDF8 lbl_8020BDF0: /* 8020BDF0 00207A50 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BDF4 00207A54 48 00 00 40 */ b lbl_8020BE34 lbl_8020BDF8: /* 8020BDF8 00207A58 C0 23 00 08 */ lfs f1, 8(r3) /* 8020BDFC 00207A5C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BE00 00207A60 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BE04 00207A64 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BE08 00207A68 40 81 00 08 */ ble lbl_8020BE10 /* 8020BE0C 00207A6C 48 00 00 08 */ b lbl_8020BE14 lbl_8020BE10: /* 8020BE10 00207A70 FC 20 08 50 */ fneg f1, f1 lbl_8020BE14: /* 8020BE14 00207A74 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BE18 00207A78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BE1C 00207A7C 4C 40 13 82 */ cror 2, 0, 2 /* 8020BE20 00207A80 40 82 00 0C */ bne lbl_8020BE2C /* 8020BE24 00207A84 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BE28 00207A88 48 00 00 0C */ b lbl_8020BE34 lbl_8020BE2C: /* 8020BE2C 00207A8C FC 20 F8 90 */ fmr f1, f31 /* 8020BE30 00207A90 48 00 57 35 */ bl func_80211564 lbl_8020BE34: /* 8020BE34 00207A94 C0 1E 00 48 */ lfs f0, 0x48(r30) /* 8020BE38 00207A98 C0 42 99 EC */ lfs f2, lbl_80641FEC-_SDA2_BASE_(r2) /* 8020BE3C 00207A9C EC 21 00 32 */ fmuls f1, f1, f0 /* 8020BE40 00207AA0 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2) /* 8020BE44 00207AA4 EC 22 00 72 */ fmuls f1, f2, f1 /* 8020BE48 00207AA8 EC 00 08 2A */ fadds f0, f0, f1 /* 8020BE4C 00207AAC F0 01 A0 10 */ psq_st f0, 16(r1), 1, qr2 /* 8020BE50 00207AB0 88 01 00 10 */ lbz r0, 0x10(r1) /* 8020BE54 00207AB4 98 1D 00 5F */ stb r0, 0x5f(r29) /* 8020BE58 00207AB8 80 7F 00 54 */ lwz r3, 0x54(r31) /* 8020BE5C 00207ABC 2C 03 00 00 */ cmpwi r3, 0 /* 8020BE60 00207AC0 41 82 00 10 */ beq lbl_8020BE70 /* 8020BE64 00207AC4 88 03 00 00 */ lbz r0, 0(r3) /* 8020BE68 00207AC8 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BE6C 00207ACC 40 82 00 0C */ bne lbl_8020BE78 lbl_8020BE70: /* 8020BE70 00207AD0 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BE74 00207AD4 48 00 00 40 */ b lbl_8020BEB4 lbl_8020BE78: /* 8020BE78 00207AD8 C0 23 00 08 */ lfs f1, 8(r3) /* 8020BE7C 00207ADC C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BE80 00207AE0 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BE84 00207AE4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BE88 00207AE8 40 81 00 08 */ ble lbl_8020BE90 /* 8020BE8C 00207AEC 48 00 00 08 */ b lbl_8020BE94 lbl_8020BE90: /* 8020BE90 00207AF0 FC 20 08 50 */ fneg f1, f1 lbl_8020BE94: /* 8020BE94 00207AF4 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BE98 00207AF8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BE9C 00207AFC 4C 40 13 82 */ cror 2, 0, 2 /* 8020BEA0 00207B00 40 82 00 0C */ bne lbl_8020BEAC /* 8020BEA4 00207B04 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BEA8 00207B08 48 00 00 0C */ b lbl_8020BEB4 lbl_8020BEAC: /* 8020BEAC 00207B0C FC 20 F8 90 */ fmr f1, f31 /* 8020BEB0 00207B10 48 00 56 B5 */ bl func_80211564 lbl_8020BEB4: /* 8020BEB4 00207B14 C0 1E 00 48 */ lfs f0, 0x48(r30) /* 8020BEB8 00207B18 C0 42 99 EC */ lfs f2, lbl_80641FEC-_SDA2_BASE_(r2) /* 8020BEBC 00207B1C EC 21 00 32 */ fmuls f1, f1, f0 /* 8020BEC0 00207B20 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2) /* 8020BEC4 00207B24 EC 22 00 72 */ fmuls f1, f2, f1 /* 8020BEC8 00207B28 EC 00 08 2A */ fadds f0, f0, f1 /* 8020BECC 00207B2C F0 01 A0 0C */ psq_st f0, 12(r1), 1, qr2 /* 8020BED0 00207B30 88 01 00 0C */ lbz r0, 0xc(r1) /* 8020BED4 00207B34 98 1D 00 5B */ stb r0, 0x5b(r29) lbl_8020BED8: /* 8020BED8 00207B38 80 7F 00 40 */ lwz r3, 0x40(r31) /* 8020BEDC 00207B3C 2C 03 00 00 */ cmpwi r3, 0 /* 8020BEE0 00207B40 41 82 00 10 */ beq lbl_8020BEF0 /* 8020BEE4 00207B44 88 03 00 00 */ lbz r0, 0(r3) /* 8020BEE8 00207B48 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BEEC 00207B4C 40 82 00 0C */ bne lbl_8020BEF8 lbl_8020BEF0: /* 8020BEF0 00207B50 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BEF4 00207B54 48 00 00 40 */ b lbl_8020BF34 lbl_8020BEF8: /* 8020BEF8 00207B58 C0 23 00 08 */ lfs f1, 8(r3) /* 8020BEFC 00207B5C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BF00 00207B60 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BF04 00207B64 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BF08 00207B68 40 81 00 08 */ ble lbl_8020BF10 /* 8020BF0C 00207B6C 48 00 00 08 */ b lbl_8020BF14 lbl_8020BF10: /* 8020BF10 00207B70 FC 20 08 50 */ fneg f1, f1 lbl_8020BF14: /* 8020BF14 00207B74 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BF18 00207B78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BF1C 00207B7C 4C 40 13 82 */ cror 2, 0, 2 /* 8020BF20 00207B80 40 82 00 0C */ bne lbl_8020BF2C /* 8020BF24 00207B84 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BF28 00207B88 48 00 00 0C */ b lbl_8020BF34 lbl_8020BF2C: /* 8020BF2C 00207B8C FC 20 F8 90 */ fmr f1, f31 /* 8020BF30 00207B90 48 00 56 35 */ bl func_80211564 lbl_8020BF34: /* 8020BF34 00207B94 C0 1D 00 80 */ lfs f0, 0x80(r29) /* 8020BF38 00207B98 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020BF3C 00207B9C D0 01 00 80 */ stfs f0, 0x80(r1) /* 8020BF40 00207BA0 80 7F 00 44 */ lwz r3, 0x44(r31) /* 8020BF44 00207BA4 2C 03 00 00 */ cmpwi r3, 0 /* 8020BF48 00207BA8 41 82 00 10 */ beq lbl_8020BF58 /* 8020BF4C 00207BAC 88 03 00 00 */ lbz r0, 0(r3) /* 8020BF50 00207BB0 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BF54 00207BB4 40 82 00 0C */ bne lbl_8020BF60 lbl_8020BF58: /* 8020BF58 00207BB8 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BF5C 00207BBC 48 00 00 40 */ b lbl_8020BF9C lbl_8020BF60: /* 8020BF60 00207BC0 C0 23 00 08 */ lfs f1, 8(r3) /* 8020BF64 00207BC4 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BF68 00207BC8 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BF6C 00207BCC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BF70 00207BD0 40 81 00 08 */ ble lbl_8020BF78 /* 8020BF74 00207BD4 48 00 00 08 */ b lbl_8020BF7C lbl_8020BF78: /* 8020BF78 00207BD8 FC 20 08 50 */ fneg f1, f1 lbl_8020BF7C: /* 8020BF7C 00207BDC C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BF80 00207BE0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BF84 00207BE4 4C 40 13 82 */ cror 2, 0, 2 /* 8020BF88 00207BE8 40 82 00 0C */ bne lbl_8020BF94 /* 8020BF8C 00207BEC C0 23 00 04 */ lfs f1, 4(r3) /* 8020BF90 00207BF0 48 00 00 0C */ b lbl_8020BF9C lbl_8020BF94: /* 8020BF94 00207BF4 FC 20 F8 90 */ fmr f1, f31 /* 8020BF98 00207BF8 48 00 55 CD */ bl func_80211564 lbl_8020BF9C: /* 8020BF9C 00207BFC C0 1D 00 84 */ lfs f0, 0x84(r29) /* 8020BFA0 00207C00 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020BFA4 00207C04 D0 01 00 84 */ stfs f0, 0x84(r1) /* 8020BFA8 00207C08 80 7F 00 48 */ lwz r3, 0x48(r31) /* 8020BFAC 00207C0C 2C 03 00 00 */ cmpwi r3, 0 /* 8020BFB0 00207C10 41 82 00 10 */ beq lbl_8020BFC0 /* 8020BFB4 00207C14 88 03 00 00 */ lbz r0, 0(r3) /* 8020BFB8 00207C18 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 8020BFBC 00207C1C 40 82 00 0C */ bne lbl_8020BFC8 lbl_8020BFC0: /* 8020BFC0 00207C20 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2) /* 8020BFC4 00207C24 48 00 00 40 */ b lbl_8020C004 lbl_8020BFC8: /* 8020BFC8 00207C28 C0 23 00 08 */ lfs f1, 8(r3) /* 8020BFCC 00207C2C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020BFD0 00207C30 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8020BFD4 00207C34 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BFD8 00207C38 40 81 00 08 */ ble lbl_8020BFE0 /* 8020BFDC 00207C3C 48 00 00 08 */ b lbl_8020BFE4 lbl_8020BFE0: /* 8020BFE0 00207C40 FC 20 08 50 */ fneg f1, f1 lbl_8020BFE4: /* 8020BFE4 00207C44 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020BFE8 00207C48 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020BFEC 00207C4C 4C 40 13 82 */ cror 2, 0, 2 /* 8020BFF0 00207C50 40 82 00 0C */ bne lbl_8020BFFC /* 8020BFF4 00207C54 C0 23 00 04 */ lfs f1, 4(r3) /* 8020BFF8 00207C58 48 00 00 0C */ b lbl_8020C004 lbl_8020BFFC: /* 8020BFFC 00207C5C FC 20 F8 90 */ fmr f1, f31 /* 8020C000 00207C60 48 00 55 65 */ bl func_80211564 lbl_8020C004: /* 8020C004 00207C64 C0 1D 00 88 */ lfs f0, 0x88(r29) /* 8020C008 00207C68 38 7D 00 60 */ addi r3, r29, 0x60 /* 8020C00C 00207C6C 38 81 00 70 */ addi r4, r1, 0x70 /* 8020C010 00207C70 38 A1 00 20 */ addi r5, r1, 0x20 /* 8020C014 00207C74 EC 00 00 72 */ fmuls f0, f0, f1 /* 8020C018 00207C78 D0 01 00 88 */ stfs f0, 0x88(r1) /* 8020C01C 00207C7C C0 1D 00 08 */ lfs f0, 8(r29) /* 8020C020 00207C80 D0 01 00 90 */ stfs f0, 0x90(r1) /* 8020C024 00207C84 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8020C028 00207C88 D0 01 00 94 */ stfs f0, 0x94(r1) /* 8020C02C 00207C8C C0 1D 00 10 */ lfs f0, 0x10(r29) /* 8020C030 00207C90 D0 01 00 98 */ stfs f0, 0x98(r1) /* 8020C034 00207C94 48 07 0F F1 */ bl PSQUATMultiply /* 8020C038 00207C98 C0 C1 00 20 */ lfs f6, 0x20(r1) /* 8020C03C 00207C9C 38 7D 00 30 */ addi r3, r29, 0x30 /* 8020C040 00207CA0 C0 A1 00 24 */ lfs f5, 0x24(r1) /* 8020C044 00207CA4 38 A1 00 90 */ addi r5, r1, 0x90 /* 8020C048 00207CA8 C0 81 00 28 */ lfs f4, 0x28(r1) /* 8020C04C 00207CAC C0 61 00 2C */ lfs f3, 0x2c(r1) /* 8020C050 00207CB0 C0 41 00 80 */ lfs f2, 0x80(r1) /* 8020C054 00207CB4 C0 21 00 84 */ lfs f1, 0x84(r1) /* 8020C058 00207CB8 C0 01 00 88 */ lfs f0, 0x88(r1) /* 8020C05C 00207CBC D0 C1 00 9C */ stfs f6, 0x9c(r1) /* 8020C060 00207CC0 D0 A1 00 A0 */ stfs f5, 0xa0(r1) /* 8020C064 00207CC4 D0 81 00 A4 */ stfs f4, 0xa4(r1) /* 8020C068 00207CC8 D0 61 00 A8 */ stfs f3, 0xa8(r1) /* 8020C06C 00207CCC D0 41 00 AC */ stfs f2, 0xac(r1) /* 8020C070 00207CD0 D0 21 00 B0 */ stfs f1, 0xb0(r1) /* 8020C074 00207CD4 D0 01 00 B4 */ stfs f0, 0xb4(r1) /* 8020C078 00207CD8 80 9D 00 20 */ lwz r4, 0x20(r29) /* 8020C07C 00207CDC 48 00 10 B5 */ bl func_8020D130 /* 8020C080 00207CE0 38 60 00 01 */ li r3, 1 lbl_8020C084: /* 8020C084 00207CE4 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 /* 8020C088 00207CE8 CB E1 00 E0 */ lfd f31, 0xe0(r1) /* 8020C08C 00207CEC E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0 /* 8020C090 00207CF0 CB C1 00 D0 */ lfd f30, 0xd0(r1) /* 8020C094 00207CF4 83 E1 00 CC */ lwz r31, 0xcc(r1) /* 8020C098 00207CF8 83 C1 00 C8 */ lwz r30, 0xc8(r1) /* 8020C09C 00207CFC 83 A1 00 C4 */ lwz r29, 0xc4(r1) /* 8020C0A0 00207D00 80 01 00 F4 */ lwz r0, 0xf4(r1) /* 8020C0A4 00207D04 83 81 00 C0 */ lwz r28, 0xc0(r1) /* 8020C0A8 00207D08 7C 08 03 A6 */ mtlr r0 /* 8020C0AC 00207D0C 38 21 00 F0 */ addi r1, r1, 0xf0 /* 8020C0B0 00207D10 4E 80 00 20 */ blr .global func_8020C0B4 func_8020C0B4: /* 8020C0B4 00207D14 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8020C0B8 00207D18 7C 08 02 A6 */ mflr r0 /* 8020C0BC 00207D1C 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8020C0C0 00207D20 DB E1 00 90 */ stfd f31, 0x90(r1) /* 8020C0C4 00207D24 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8020C0C8 00207D28 39 61 00 90 */ addi r11, r1, 0x90 /* 8020C0CC 00207D2C 4B FB B0 55 */ bl _savegpr_25 /* 8020C0D0 00207D30 C0 23 00 4C */ lfs f1, 0x4c(r3) /* 8020C0D4 00207D34 7C 7B 1B 78 */ mr r27, r3 /* 8020C0D8 00207D38 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020C0DC 00207D3C 7C 9C 23 78 */ mr r28, r4 /* 8020C0E0 00207D40 7C BD 2B 78 */ mr r29, r5 /* 8020C0E4 00207D44 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C0E8 00207D48 40 80 00 10 */ bge lbl_8020C0F8 /* 8020C0EC 00207D4C C0 02 99 F0 */ lfs f0, lbl_80641FF0-_SDA2_BASE_(r2) /* 8020C0F0 00207D50 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C0F4 00207D54 41 81 04 EC */ bgt lbl_8020C5E0 lbl_8020C0F8: /* 8020C0F8 00207D58 C0 23 00 50 */ lfs f1, 0x50(r3) /* 8020C0FC 00207D5C C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020C100 00207D60 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C104 00207D64 40 80 00 10 */ bge lbl_8020C114 /* 8020C108 00207D68 C0 02 99 F0 */ lfs f0, lbl_80641FF0-_SDA2_BASE_(r2) /* 8020C10C 00207D6C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C110 00207D70 41 81 04 D0 */ bgt lbl_8020C5E0 lbl_8020C114: /* 8020C114 00207D74 C0 23 00 54 */ lfs f1, 0x54(r3) /* 8020C118 00207D78 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020C11C 00207D7C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C120 00207D80 40 80 00 14 */ bge lbl_8020C134 /* 8020C124 00207D84 C0 02 99 F0 */ lfs f0, lbl_80641FF0-_SDA2_BASE_(r2) /* 8020C128 00207D88 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C12C 00207D8C 40 81 00 08 */ ble lbl_8020C134 /* 8020C130 00207D90 48 00 04 B0 */ b lbl_8020C5E0 lbl_8020C134: /* 8020C134 00207D94 80 05 00 00 */ lwz r0, 0(r5) /* 8020C138 00207D98 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8020C13C 00207D9C 41 82 01 20 */ beq lbl_8020C25C /* 8020C140 00207DA0 38 61 00 08 */ addi r3, r1, 8 /* 8020C144 00207DA4 38 9B 00 3C */ addi r4, r27, 0x3c /* 8020C148 00207DA8 48 07 04 79 */ bl PSMTXQuat /* 8020C14C 00207DAC C0 3B 00 4C */ lfs f1, 0x4c(r27) /* 8020C150 00207DB0 38 61 00 38 */ addi r3, r1, 0x38 /* 8020C154 00207DB4 C0 5B 00 50 */ lfs f2, 0x50(r27) /* 8020C158 00207DB8 C0 7B 00 54 */ lfs f3, 0x54(r27) /* 8020C15C 00207DBC 48 07 03 E5 */ bl PSMTXScale /* 8020C160 00207DC0 38 81 00 38 */ addi r4, r1, 0x38 /* 8020C164 00207DC4 38 61 00 08 */ addi r3, r1, 8 /* 8020C168 00207DC8 7C 85 23 78 */ mr r5, r4 /* 8020C16C 00207DCC 48 06 FE 21 */ bl PSMTXConcat /* 8020C170 00207DD0 38 61 00 38 */ addi r3, r1, 0x38 /* 8020C174 00207DD4 C0 3B 00 30 */ lfs f1, 0x30(r27) /* 8020C178 00207DD8 C0 5B 00 34 */ lfs f2, 0x34(r27) /* 8020C17C 00207DDC 7C 64 1B 78 */ mr r4, r3 /* 8020C180 00207DE0 C0 7B 00 38 */ lfs f3, 0x38(r27) /* 8020C184 00207DE4 48 07 03 71 */ bl PSMTXTransApply /* 8020C188 00207DE8 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13) /* 8020C18C 00207DEC 38 00 00 00 */ li r0, 0 /* 8020C190 00207DF0 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8020C194 00207DF4 90 03 01 88 */ stw r0, 0x188(r3) /* 8020C198 00207DF8 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8020C19C 00207DFC 80 03 00 10 */ lwz r0, 0x10(r3) /* 8020C1A0 00207E00 60 00 00 04 */ ori r0, r0, 4 /* 8020C1A4 00207E04 90 03 00 10 */ stw r0, 0x10(r3) /* 8020C1A8 00207E08 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8020C1AC 00207E0C 80 03 00 00 */ lwz r0, 0(r3) /* 8020C1B0 00207E10 60 00 00 02 */ ori r0, r0, 2 /* 8020C1B4 00207E14 90 03 00 00 */ stw r0, 0(r3) /* 8020C1B8 00207E18 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C1BC 00207E1C C0 3B 00 00 */ lfs f1, 0(r27) /* 8020C1C0 00207E20 C0 1B 00 04 */ lfs f0, 4(r27) /* 8020C1C4 00207E24 38 03 FF FF */ addi r0, r3, -1 /* 8020C1C8 00207E28 54 19 04 3E */ clrlwi r25, r0, 0x10 /* 8020C1CC 00207E2C A8 9B 00 58 */ lha r4, 0x58(r27) /* 8020C1D0 00207E30 EC 21 00 28 */ fsubs f1, f1, f0 /* 8020C1D4 00207E34 7F 23 CB 78 */ mr r3, r25 /* 8020C1D8 00207E38 48 01 02 51 */ bl func_8021C428 /* 8020C1DC 00207E3C 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8020C1E0 00207E40 38 81 00 38 */ addi r4, r1, 0x38 /* 8020C1E4 00207E44 80 63 16 E8 */ lwz r3, 0x16e8(r3) /* 8020C1E8 00207E48 48 02 A6 91 */ bl func_80236878 /* 8020C1EC 00207E4C 80 8D A4 70 */ lwz r4, lbl_8063F730-_SDA_BASE_(r13) /* 8020C1F0 00207E50 2C 04 00 00 */ cmpwi r4, 0 /* 8020C1F4 00207E54 40 82 00 0C */ bne lbl_8020C200 /* 8020C1F8 00207E58 38 A0 00 00 */ li r5, 0 /* 8020C1FC 00207E5C 48 00 00 3C */ b lbl_8020C238 lbl_8020C200: /* 8020C200 00207E60 80 A4 00 14 */ lwz r5, 0x14(r4) /* 8020C204 00207E64 2C 05 00 00 */ cmpwi r5, 0 /* 8020C208 00207E68 41 82 00 2C */ beq lbl_8020C234 /* 8020C20C 00207E6C 80 65 00 00 */ lwz r3, 0(r5) /* 8020C210 00207E70 80 04 00 00 */ lwz r0, 0(r4) /* 8020C214 00207E74 80 83 00 00 */ lwz r4, 0(r3) /* 8020C218 00207E78 80 65 00 04 */ lwz r3, 4(r5) /* 8020C21C 00207E7C 54 05 80 1E */ slwi r5, r0, 0x10 /* 8020C220 00207E80 54 84 40 2E */ slwi r4, r4, 8 /* 8020C224 00207E84 88 03 00 04 */ lbz r0, 4(r3) /* 8020C228 00207E88 7C A3 23 78 */ or r3, r5, r4 /* 8020C22C 00207E8C 7C 65 03 78 */ or r5, r3, r0 /* 8020C230 00207E90 48 00 00 08 */ b lbl_8020C238 lbl_8020C234: /* 8020C234 00207E94 38 A0 00 00 */ li r5, 0 lbl_8020C238: /* 8020C238 00207E98 A8 9B 00 58 */ lha r4, 0x58(r27) /* 8020C23C 00207E9C 7F 23 CB 78 */ mr r3, r25 /* 8020C240 00207EA0 48 01 02 11 */ bl func_8021C450 /* 8020C244 00207EA4 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13) /* 8020C248 00207EA8 80 83 16 E8 */ lwz r4, 0x16e8(r3) /* 8020C24C 00207EAC 80 64 00 04 */ lwz r3, 4(r4) /* 8020C250 00207EB0 38 03 FF 6C */ addi r0, r3, -148 /* 8020C254 00207EB4 90 04 00 04 */ stw r0, 4(r4) /* 8020C258 00207EB8 48 00 03 88 */ b lbl_8020C5E0 lbl_8020C25C: /* 8020C25C 00207EBC 8B E3 00 5B */ lbz r31, 0x5b(r3) /* 8020C260 00207EC0 80 65 00 58 */ lwz r3, 0x58(r5) /* 8020C264 00207EC4 4B FE 40 BD */ bl func_801F0320 /* 8020C268 00207EC8 C3 E2 99 CC */ lfs f31, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C26C 00207ECC 54 7A 04 3E */ clrlwi r26, r3, 0x10 /* 8020C270 00207ED0 3B C0 00 00 */ li r30, 0 /* 8020C274 00207ED4 3B 20 00 80 */ li r25, 0x80 /* 8020C278 00207ED8 48 00 01 24 */ b lbl_8020C39C lbl_8020C27C: /* 8020C27C 00207EDC 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C280 00207EE0 57 C4 04 3E */ clrlwi r4, r30, 0x10 /* 8020C284 00207EE4 4B FE 40 6D */ bl func_801F02F0 /* 8020C288 00207EE8 2C 03 00 00 */ cmpwi r3, 0 /* 8020C28C 00207EEC 41 82 01 0C */ beq lbl_8020C398 /* 8020C290 00207EF0 80 63 00 14 */ lwz r3, 0x14(r3) /* 8020C294 00207EF4 2C 03 00 00 */ cmpwi r3, 0 /* 8020C298 00207EF8 41 82 01 00 */ beq lbl_8020C398 /* 8020C29C 00207EFC 9B 23 00 30 */ stb r25, 0x30(r3) /* 8020C2A0 00207F00 9B 23 00 31 */ stb r25, 0x31(r3) /* 8020C2A4 00207F04 9B 23 00 32 */ stb r25, 0x32(r3) /* 8020C2A8 00207F08 9B E3 00 33 */ stb r31, 0x33(r3) /* 8020C2AC 00207F0C 88 1B 00 5C */ lbz r0, 0x5c(r27) /* 8020C2B0 00207F10 98 03 00 2C */ stb r0, 0x2c(r3) /* 8020C2B4 00207F14 88 1B 00 5D */ lbz r0, 0x5d(r27) /* 8020C2B8 00207F18 98 03 00 2D */ stb r0, 0x2d(r3) /* 8020C2BC 00207F1C 88 1B 00 5E */ lbz r0, 0x5e(r27) /* 8020C2C0 00207F20 98 03 00 2E */ stb r0, 0x2e(r3) /* 8020C2C4 00207F24 88 1B 00 5F */ lbz r0, 0x5f(r27) /* 8020C2C8 00207F28 98 03 00 2F */ stb r0, 0x2f(r3) /* 8020C2CC 00207F2C 80 63 00 04 */ lwz r3, 4(r3) /* 8020C2D0 00207F30 2C 03 00 00 */ cmpwi r3, 0 /* 8020C2D4 00207F34 41 82 00 C4 */ beq lbl_8020C398 /* 8020C2D8 00207F38 A0 03 00 06 */ lhz r0, 6(r3) /* 8020C2DC 00207F3C 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b /* 8020C2E0 00207F40 2F 00 00 00 */ cmpwi cr6, r0, 0 /* 8020C2E4 00207F44 40 9A 00 B4 */ bne cr6, lbl_8020C398 /* 8020C2E8 00207F48 80 83 00 00 */ lwz r4, 0(r3) /* 8020C2EC 00207F4C 2C 84 00 00 */ cmpwi cr1, r4, 0 /* 8020C2F0 00207F50 40 86 00 0C */ bne cr1, lbl_8020C2FC /* 8020C2F4 00207F54 D3 E3 00 0C */ stfs f31, 0xc(r3) /* 8020C2F8 00207F58 48 00 00 A0 */ b lbl_8020C398 lbl_8020C2FC: /* 8020C2FC 00207F5C C0 03 00 08 */ lfs f0, 8(r3) /* 8020C300 00207F60 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 8020C304 00207F64 40 80 00 50 */ bge lbl_8020C354 /* 8020C308 00207F68 C0 24 00 08 */ lfs f1, 8(r4) /* 8020C30C 00207F6C C0 03 00 0C */ lfs f0, 0xc(r3) /* 8020C310 00207F70 EC 01 00 28 */ fsubs f0, f1, f0 /* 8020C314 00207F74 40 9A 00 84 */ bne cr6, lbl_8020C398 /* 8020C318 00207F78 40 86 00 0C */ bne cr1, lbl_8020C324 /* 8020C31C 00207F7C D3 E3 00 0C */ stfs f31, 0xc(r3) /* 8020C320 00207F80 48 00 00 78 */ b lbl_8020C398 lbl_8020C324: /* 8020C324 00207F84 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 8020C328 00207F88 40 80 00 0C */ bge lbl_8020C334 /* 8020C32C 00207F8C D3 E3 00 0C */ stfs f31, 0xc(r3) /* 8020C330 00207F90 48 00 00 14 */ b lbl_8020C344 lbl_8020C334: /* 8020C334 00207F94 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8020C338 00207F98 40 81 00 08 */ ble lbl_8020C340 /* 8020C33C 00207F9C 48 00 00 08 */ b lbl_8020C344 lbl_8020C340: /* 8020C340 00207FA0 D0 03 00 0C */ stfs f0, 0xc(r3) lbl_8020C344: /* 8020C344 00207FA4 A0 03 00 06 */ lhz r0, 6(r3) /* 8020C348 00207FA8 60 00 00 02 */ ori r0, r0, 2 /* 8020C34C 00207FAC B0 03 00 06 */ sth r0, 6(r3) /* 8020C350 00207FB0 48 00 00 48 */ b lbl_8020C398 lbl_8020C354: /* 8020C354 00207FB4 C0 23 00 0C */ lfs f1, 0xc(r3) /* 8020C358 00207FB8 40 9A 00 40 */ bne cr6, lbl_8020C398 /* 8020C35C 00207FBC 40 86 00 0C */ bne cr1, lbl_8020C368 /* 8020C360 00207FC0 D3 E3 00 0C */ stfs f31, 0xc(r3) /* 8020C364 00207FC4 48 00 00 34 */ b lbl_8020C398 lbl_8020C368: /* 8020C368 00207FC8 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 8020C36C 00207FCC 40 80 00 0C */ bge lbl_8020C378 /* 8020C370 00207FD0 D3 E3 00 0C */ stfs f31, 0xc(r3) /* 8020C374 00207FD4 48 00 00 18 */ b lbl_8020C38C lbl_8020C378: /* 8020C378 00207FD8 C0 04 00 08 */ lfs f0, 8(r4) /* 8020C37C 00207FDC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C380 00207FE0 40 81 00 08 */ ble lbl_8020C388 /* 8020C384 00207FE4 48 00 00 08 */ b lbl_8020C38C lbl_8020C388: /* 8020C388 00207FE8 D0 23 00 0C */ stfs f1, 0xc(r3) lbl_8020C38C: /* 8020C38C 00207FEC A0 03 00 06 */ lhz r0, 6(r3) /* 8020C390 00207FF0 60 00 00 02 */ ori r0, r0, 2 /* 8020C394 00207FF4 B0 03 00 06 */ sth r0, 6(r3) lbl_8020C398: /* 8020C398 00207FF8 3B DE 00 01 */ addi r30, r30, 1 lbl_8020C39C: /* 8020C39C 00207FFC 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 8020C3A0 00208000 7C 00 D0 40 */ cmplw r0, r26 /* 8020C3A4 00208004 41 80 FE D8 */ blt lbl_8020C27C /* 8020C3A8 00208008 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C3AC 0020800C C0 1B 00 4C */ lfs f0, 0x4c(r27) /* 8020C3B0 00208010 C0 42 99 E8 */ lfs f2, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020C3B4 00208014 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8020C3B8 00208018 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8020C3BC 0020801C C0 1B 00 50 */ lfs f0, 0x50(r27) /* 8020C3C0 00208020 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8020C3C4 00208024 C0 1B 00 54 */ lfs f0, 0x54(r27) /* 8020C3C8 00208028 D0 03 00 50 */ stfs f0, 0x50(r3) /* 8020C3CC 0020802C 40 80 00 2C */ bge lbl_8020C3F8 /* 8020C3D0 00208030 C0 23 00 48 */ lfs f1, 0x48(r3) /* 8020C3D4 00208034 C0 62 99 F0 */ lfs f3, lbl_80641FF0-_SDA2_BASE_(r2) /* 8020C3D8 00208038 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8020C3DC 0020803C 40 81 00 1C */ ble lbl_8020C3F8 /* 8020C3E0 00208040 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C3E4 00208044 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C3E8 00208048 40 80 00 08 */ bge lbl_8020C3F0 /* 8020C3EC 0020804C 48 00 00 08 */ b lbl_8020C3F4 lbl_8020C3F0: /* 8020C3F0 00208050 FC 60 10 90 */ fmr f3, f2 lbl_8020C3F4: /* 8020C3F4 00208054 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_8020C3F8: /* 8020C3F8 00208058 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 8020C3FC 0020805C C0 22 99 E8 */ lfs f1, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020C400 00208060 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8020C404 00208064 40 80 00 28 */ bge lbl_8020C42C /* 8020C408 00208068 C0 62 99 F0 */ lfs f3, lbl_80641FF0-_SDA2_BASE_(r2) /* 8020C40C 0020806C FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8020C410 00208070 40 81 00 1C */ ble lbl_8020C42C /* 8020C414 00208074 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C418 00208078 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8020C41C 0020807C 40 80 00 08 */ bge lbl_8020C424 /* 8020C420 00208080 48 00 00 08 */ b lbl_8020C428 lbl_8020C424: /* 8020C424 00208084 FC 60 08 90 */ fmr f3, f1 lbl_8020C428: /* 8020C428 00208088 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8020C42C: /* 8020C42C 0020808C C0 43 00 50 */ lfs f2, 0x50(r3) /* 8020C430 00208090 C0 22 99 E8 */ lfs f1, lbl_80641FE8-_SDA2_BASE_(r2) /* 8020C434 00208094 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8020C438 00208098 40 80 00 28 */ bge lbl_8020C460 /* 8020C43C 0020809C C0 62 99 F0 */ lfs f3, lbl_80641FF0-_SDA2_BASE_(r2) /* 8020C440 002080A0 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8020C444 002080A4 40 81 00 1C */ ble lbl_8020C460 /* 8020C448 002080A8 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C44C 002080AC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8020C450 002080B0 40 80 00 08 */ bge lbl_8020C458 /* 8020C454 002080B4 48 00 00 08 */ b lbl_8020C45C lbl_8020C458: /* 8020C458 002080B8 FC 60 08 90 */ fmr f3, f1 lbl_8020C45C: /* 8020C45C 002080BC D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8020C460: /* 8020C460 002080C0 38 80 00 01 */ li r4, 1 /* 8020C464 002080C4 4B FE 62 55 */ bl func_801F26B8 /* 8020C468 002080C8 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C46C 002080CC 38 80 00 01 */ li r4, 1 /* 8020C470 002080D0 C0 1B 00 3C */ lfs f0, 0x3c(r27) /* 8020C474 002080D4 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 8020C478 002080D8 C0 1B 00 40 */ lfs f0, 0x40(r27) /* 8020C47C 002080DC D0 03 00 30 */ stfs f0, 0x30(r3) /* 8020C480 002080E0 C0 1B 00 44 */ lfs f0, 0x44(r27) /* 8020C484 002080E4 D0 03 00 34 */ stfs f0, 0x34(r3) /* 8020C488 002080E8 C0 1B 00 48 */ lfs f0, 0x48(r27) /* 8020C48C 002080EC D0 03 00 38 */ stfs f0, 0x38(r3) /* 8020C490 002080F0 A0 03 00 10 */ lhz r0, 0x10(r3) /* 8020C494 002080F4 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 8020C498 002080F8 B0 03 00 10 */ sth r0, 0x10(r3) /* 8020C49C 002080FC 4B FE 62 1D */ bl func_801F26B8 /* 8020C4A0 00208100 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C4A4 00208104 38 80 00 01 */ li r4, 1 /* 8020C4A8 00208108 C0 1B 00 30 */ lfs f0, 0x30(r27) /* 8020C4AC 0020810C D0 03 00 20 */ stfs f0, 0x20(r3) /* 8020C4B0 00208110 C0 1B 00 34 */ lfs f0, 0x34(r27) /* 8020C4B4 00208114 D0 03 00 24 */ stfs f0, 0x24(r3) /* 8020C4B8 00208118 C0 1B 00 38 */ lfs f0, 0x38(r27) /* 8020C4BC 0020811C D0 03 00 28 */ stfs f0, 0x28(r3) /* 8020C4C0 00208120 4B FE 61 F9 */ bl func_801F26B8 /* 8020C4C4 00208124 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C4C8 00208128 80 63 00 04 */ lwz r3, 4(r3) /* 8020C4CC 0020812C 2C 03 00 00 */ cmpwi r3, 0 /* 8020C4D0 00208130 41 82 00 CC */ beq lbl_8020C59C /* 8020C4D4 00208134 A0 03 00 06 */ lhz r0, 6(r3) /* 8020C4D8 00208138 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b /* 8020C4DC 0020813C 2F 00 00 00 */ cmpwi cr6, r0, 0 /* 8020C4E0 00208140 40 9A 00 BC */ bne cr6, lbl_8020C59C /* 8020C4E4 00208144 80 83 00 00 */ lwz r4, 0(r3) /* 8020C4E8 00208148 2C 84 00 00 */ cmpwi cr1, r4, 0 /* 8020C4EC 0020814C 40 86 00 10 */ bne cr1, lbl_8020C4FC /* 8020C4F0 00208150 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C4F4 00208154 D0 03 00 0C */ stfs f0, 0xc(r3) /* 8020C4F8 00208158 48 00 00 A4 */ b lbl_8020C59C lbl_8020C4FC: /* 8020C4FC 0020815C C0 03 00 08 */ lfs f0, 8(r3) /* 8020C500 00208160 C0 42 99 CC */ lfs f2, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C504 00208164 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8020C508 00208168 40 80 00 50 */ bge lbl_8020C558 /* 8020C50C 0020816C C0 24 00 08 */ lfs f1, 8(r4) /* 8020C510 00208170 C0 03 00 0C */ lfs f0, 0xc(r3) /* 8020C514 00208174 EC 01 00 28 */ fsubs f0, f1, f0 /* 8020C518 00208178 40 9A 00 84 */ bne cr6, lbl_8020C59C /* 8020C51C 0020817C 40 86 00 0C */ bne cr1, lbl_8020C528 /* 8020C520 00208180 D0 43 00 0C */ stfs f2, 0xc(r3) /* 8020C524 00208184 48 00 00 78 */ b lbl_8020C59C lbl_8020C528: /* 8020C528 00208188 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8020C52C 0020818C 40 80 00 0C */ bge lbl_8020C538 /* 8020C530 00208190 D0 43 00 0C */ stfs f2, 0xc(r3) /* 8020C534 00208194 48 00 00 14 */ b lbl_8020C548 lbl_8020C538: /* 8020C538 00208198 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8020C53C 0020819C 40 81 00 08 */ ble lbl_8020C544 /* 8020C540 002081A0 48 00 00 08 */ b lbl_8020C548 lbl_8020C544: /* 8020C544 002081A4 D0 03 00 0C */ stfs f0, 0xc(r3) lbl_8020C548: /* 8020C548 002081A8 A0 03 00 06 */ lhz r0, 6(r3) /* 8020C54C 002081AC 60 00 00 02 */ ori r0, r0, 2 /* 8020C550 002081B0 B0 03 00 06 */ sth r0, 6(r3) /* 8020C554 002081B4 48 00 00 48 */ b lbl_8020C59C lbl_8020C558: /* 8020C558 002081B8 C0 23 00 0C */ lfs f1, 0xc(r3) /* 8020C55C 002081BC 40 9A 00 40 */ bne cr6, lbl_8020C59C /* 8020C560 002081C0 40 86 00 0C */ bne cr1, lbl_8020C56C /* 8020C564 002081C4 D0 43 00 0C */ stfs f2, 0xc(r3) /* 8020C568 002081C8 48 00 00 34 */ b lbl_8020C59C lbl_8020C56C: /* 8020C56C 002081CC FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8020C570 002081D0 40 80 00 0C */ bge lbl_8020C57C /* 8020C574 002081D4 D0 43 00 0C */ stfs f2, 0xc(r3) /* 8020C578 002081D8 48 00 00 18 */ b lbl_8020C590 lbl_8020C57C: /* 8020C57C 002081DC C0 04 00 08 */ lfs f0, 8(r4) /* 8020C580 002081E0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8020C584 002081E4 40 81 00 08 */ ble lbl_8020C58C /* 8020C588 002081E8 48 00 00 08 */ b lbl_8020C590 lbl_8020C58C: /* 8020C58C 002081EC D0 23 00 0C */ stfs f1, 0xc(r3) lbl_8020C590: /* 8020C590 002081F0 A0 03 00 06 */ lhz r0, 6(r3) /* 8020C594 002081F4 60 00 00 02 */ ori r0, r0, 2 /* 8020C598 002081F8 B0 03 00 06 */ sth r0, 6(r3) lbl_8020C59C: /* 8020C59C 002081FC 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C5A0 00208200 C0 22 99 CC */ lfs f1, lbl_80641FCC-_SDA2_BASE_(r2) /* 8020C5A4 00208204 81 83 01 00 */ lwz r12, 0x100(r3) /* 8020C5A8 00208208 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8020C5AC 0020820C 7D 89 03 A6 */ mtctr r12 /* 8020C5B0 00208210 4E 80 04 21 */ bctrl /* 8020C5B4 00208214 88 1B 00 5B */ lbz r0, 0x5b(r27) /* 8020C5B8 00208218 28 00 00 FF */ cmplwi r0, 0xff /* 8020C5BC 0020821C 40 82 00 14 */ bne lbl_8020C5D0 /* 8020C5C0 00208220 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C5C4 00208224 7F 84 E3 78 */ mr r4, r28 /* 8020C5C8 00208228 38 A0 00 01 */ li r5, 1 /* 8020C5CC 0020822C 4B FE 45 B1 */ bl func_801F0B7C lbl_8020C5D0: /* 8020C5D0 00208230 80 7D 00 58 */ lwz r3, 0x58(r29) /* 8020C5D4 00208234 7F 84 E3 78 */ mr r4, r28 /* 8020C5D8 00208238 38 A0 00 00 */ li r5, 0 /* 8020C5DC 0020823C 4B FE 45 A1 */ bl func_801F0B7C lbl_8020C5E0: /* 8020C5E0 00208240 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8020C5E4 00208244 39 61 00 90 */ addi r11, r1, 0x90 /* 8020C5E8 00208248 CB E1 00 90 */ lfd f31, 0x90(r1) /* 8020C5EC 0020824C 4B FB AB 81 */ bl _restgpr_25 /* 8020C5F0 00208250 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8020C5F4 00208254 7C 08 03 A6 */ mtlr r0 /* 8020C5F8 00208258 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8020C5FC 0020825C 4E 80 00 20 */ blr .global func_8020C600 func_8020C600: /* 8020C600 00208260 80 04 00 00 */ lwz r0, 0(r4) /* 8020C604 00208264 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8020C608 00208268 4D 82 00 20 */ beqlr /* 8020C60C 0020826C 80 A4 00 58 */ lwz r5, 0x58(r4) /* 8020C610 00208270 A8 83 00 58 */ lha r4, 0x58(r3) /* 8020C614 00208274 38 05 FF FF */ addi r0, r5, -1 /* 8020C618 00208278 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 8020C61C 0020827C 48 00 FF 48 */ b lbl_8021C564 /* 8020C620 00208280 4E 80 00 20 */ blr /* 8020C624 00208284 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8020C628 00208288 7C 08 02 A6 */ mflr r0 /* 8020C62C 0020828C 90 01 00 24 */ stw r0, 0x24(r1) /* 8020C630 00208290 39 61 00 20 */ addi r11, r1, 0x20 /* 8020C634 00208294 4B FB AA F5 */ bl _savegpr_27 /* 8020C638 00208298 88 03 00 18 */ lbz r0, 0x18(r3) /* 8020C63C 0020829C 7C 7B 1B 78 */ mr r27, r3 /* 8020C640 002082A0 2C 00 00 00 */ cmpwi r0, 0 /* 8020C644 002082A4 40 82 00 0C */ bne lbl_8020C650 /* 8020C648 002082A8 38 60 00 00 */ li r3, 0 /* 8020C64C 002082AC 48 00 00 48 */ b lbl_8020C694 lbl_8020C650: /* 8020C650 002082B0 4B FF B4 59 */ bl func_80207AA8 /* 8020C654 002082B4 7C 7F 1B 78 */ mr r31, r3 /* 8020C658 002082B8 83 CD A1 F8 */ lwz r30, lbl_8063F4B8-_SDA_BASE_(r13) /* 8020C65C 002082BC 80 7B 00 10 */ lwz r3, 0x10(r27) /* 8020C660 002082C0 7F FC FB 78 */ mr r28, r31 /* 8020C664 002082C4 48 00 00 24 */ b lbl_8020C688 lbl_8020C668: /* 8020C668 002082C8 83 A3 00 28 */ lwz r29, 0x28(r3) /* 8020C66C 002082CC 7F C6 F3 78 */ mr r6, r30 /* 8020C670 002082D0 80 9B 00 00 */ lwz r4, 0(r27) /* 8020C674 002082D4 80 BB 00 20 */ lwz r5, 0x20(r27) /* 8020C678 002082D8 4B FF EE 81 */ bl func_8020B4F8 /* 8020C67C 002082DC 7F A3 EB 78 */ mr r3, r29 /* 8020C680 002082E0 3B FF FF FF */ addi r31, r31, -1 /* 8020C684 002082E4 3B DE 00 48 */ addi r30, r30, 0x48 lbl_8020C688: /* 8020C688 002082E8 57 E0 04 3F */ clrlwi. r0, r31, 0x10 /* 8020C68C 002082EC 40 82 FF DC */ bne lbl_8020C668 /* 8020C690 002082F0 7F 83 E3 78 */ mr r3, r28 lbl_8020C694: /* 8020C694 002082F4 39 61 00 20 */ addi r11, r1, 0x20 /* 8020C698 002082F8 4B FB AA DD */ bl _restgpr_27 /* 8020C69C 002082FC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8020C6A0 00208300 7C 08 03 A6 */ mtlr r0 /* 8020C6A4 00208304 38 21 00 20 */ addi r1, r1, 0x20 /* 8020C6A8 00208308 4E 80 00 20 */ blr /* 8020C6AC 0020830C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8020C6B0 00208310 7C 08 02 A6 */ mflr r0 /* 8020C6B4 00208314 90 01 00 24 */ stw r0, 0x24(r1) /* 8020C6B8 00208318 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8020C6BC 0020831C FF E0 08 90 */ fmr f31, f1 /* 8020C6C0 00208320 93 E1 00 14 */ stw r31, 0x14(r1) /* 8020C6C4 00208324 93 C1 00 10 */ stw r30, 0x10(r1) /* 8020C6C8 00208328 93 A1 00 0C */ stw r29, 0xc(r1) /* 8020C6CC 0020832C 7C 7D 1B 78 */ mr r29, r3 /* 8020C6D0 00208330 88 03 00 18 */ lbz r0, 0x18(r3) /* 8020C6D4 00208334 2C 00 00 00 */ cmpwi r0, 0 /* 8020C6D8 00208338 41 82 00 58 */ beq lbl_8020C730 /* 8020C6DC 0020833C 83 E3 00 10 */ lwz r31, 0x10(r3) /* 8020C6E0 00208340 48 00 00 40 */ b lbl_8020C720 lbl_8020C6E4: /* 8020C6E4 00208344 FC 20 F8 90 */ fmr f1, f31 /* 8020C6E8 00208348 83 DF 00 28 */ lwz r30, 0x28(r31) /* 8020C6EC 0020834C 80 9D 00 00 */ lwz r4, 0(r29) /* 8020C6F0 00208350 7F E3 FB 78 */ mr r3, r31 /* 8020C6F4 00208354 80 BD 00 20 */ lwz r5, 0x20(r29) /* 8020C6F8 00208358 4B FF F2 AD */ bl func_8020B9A4 /* 8020C6FC 0020835C 2C 03 00 00 */ cmpwi r3, 0 /* 8020C700 00208360 40 82 00 1C */ bne lbl_8020C71C /* 8020C704 00208364 80 9D 00 20 */ lwz r4, 0x20(r29) /* 8020C708 00208368 7F E3 FB 78 */ mr r3, r31 /* 8020C70C 0020836C 4B FF FE F5 */ bl func_8020C600 /* 8020C710 00208370 7F A3 EB 78 */ mr r3, r29 /* 8020C714 00208374 7F E4 FB 78 */ mr r4, r31 /* 8020C718 00208378 4B FF B4 1D */ bl func_80207B34 lbl_8020C71C: /* 8020C71C 0020837C 7F DF F3 78 */ mr r31, r30 lbl_8020C720: /* 8020C720 00208380 2C 1F 00 00 */ cmpwi r31, 0 /* 8020C724 00208384 40 82 FF C0 */ bne lbl_8020C6E4 /* 8020C728 00208388 7F A3 EB 78 */ mr r3, r29 /* 8020C72C 0020838C 48 00 01 8D */ bl func_8020C8B8 lbl_8020C730: /* 8020C730 00208390 80 01 00 24 */ lwz r0, 0x24(r1) /* 8020C734 00208394 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8020C738 00208398 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8020C73C 0020839C 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8020C740 002083A0 83 A1 00 0C */ lwz r29, 0xc(r1) /* 8020C744 002083A4 7C 08 03 A6 */ mtlr r0 /* 8020C748 002083A8 38 21 00 20 */ addi r1, r1, 0x20 /* 8020C74C 002083AC 4E 80 00 20 */ blr .global func_8020C750 func_8020C750: /* 8020C750 002083B0 88 03 00 18 */ lbz r0, 0x18(r3) /* 8020C754 002083B4 2C 00 00 00 */ cmpwi r0, 0 /* 8020C758 002083B8 40 82 00 0C */ bne lbl_8020C764 /* 8020C75C 002083BC 38 60 00 00 */ li r3, 0 /* 8020C760 002083C0 4E 80 00 20 */ blr lbl_8020C764: /* 8020C764 002083C4 A0 03 00 14 */ lhz r0, 0x14(r3) /* 8020C768 002083C8 2C 00 00 00 */ cmpwi r0, 0 /* 8020C76C 002083CC 40 82 00 0C */ bne lbl_8020C778 /* 8020C770 002083D0 38 60 00 00 */ li r3, 0 /* 8020C774 002083D4 4E 80 00 20 */ blr lbl_8020C778: /* 8020C778 002083D8 80 63 00 20 */ lwz r3, 0x20(r3) /* 8020C77C 002083DC 80 63 00 00 */ lwz r3, 0(r3) /* 8020C780 002083E0 54 60 03 9D */ rlwinm. r0, r3, 0, 0xe, 0xe /* 8020C784 002083E4 41 82 00 18 */ beq lbl_8020C79C /* 8020C788 002083E8 80 6D A1 D8 */ lwz r3, lbl_8063F498-_SDA_BASE_(r13) /* 8020C78C 002083EC 38 03 FF F6 */ addi r0, r3, -10 /* 8020C790 002083F0 7C 00 00 34 */ cntlzw r0, r0 /* 8020C794 002083F4 54 03 D9 7E */ srwi r3, r0, 5 /* 8020C798 002083F8 4E 80 00 20 */ blr lbl_8020C79C: /* 8020C79C 002083FC 54 60 03 5B */ rlwinm. r0, r3, 0, 0xd, 0xd /* 8020C7A0 00208400 41 82 00 18 */ beq lbl_8020C7B8 /* 8020C7A4 00208404 80 6D A1 D8 */ lwz r3, lbl_8063F498-_SDA_BASE_(r13) /* 8020C7A8 00208408 38 03 FF FB */ addi r0, r3, -5 /* 8020C7AC 0020840C 7C 00 00 34 */ cntlzw r0, r0 /* 8020C7B0 00208410 54 03 D9 7E */ srwi r3, r0, 5 /* 8020C7B4 00208414 4E 80 00 20 */ blr lbl_8020C7B8: /* 8020C7B8 00208418 80 6D A1 D8 */ lwz r3, lbl_8063F498-_SDA_BASE_(r13) /* 8020C7BC 0020841C 38 03 FF F8 */ addi r0, r3, -8 /* 8020C7C0 00208420 7C 00 00 34 */ cntlzw r0, r0 /* 8020C7C4 00208424 54 03 D9 7E */ srwi r3, r0, 5 /* 8020C7C8 00208428 4E 80 00 20 */ blr /* 8020C7CC 0020842C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8020C7D0 00208430 7C 08 02 A6 */ mflr r0 /* 8020C7D4 00208434 90 01 00 24 */ stw r0, 0x24(r1) /* 8020C7D8 00208438 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8020C7DC 0020843C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8020C7E0 00208440 7C 9E 23 78 */ mr r30, r4 /* 8020C7E4 00208444 93 A1 00 14 */ stw r29, 0x14(r1) /* 8020C7E8 00208448 7C 7D 1B 78 */ mr r29, r3 /* 8020C7EC 0020844C 4B FF FF 65 */ bl func_8020C750 /* 8020C7F0 00208450 2C 03 00 00 */ cmpwi r3, 0 /* 8020C7F4 00208454 41 82 00 38 */ beq lbl_8020C82C /* 8020C7F8 00208458 83 FD 00 10 */ lwz r31, 0x10(r29) /* 8020C7FC 0020845C 48 00 00 18 */ b lbl_8020C814 lbl_8020C800: /* 8020C800 00208460 80 BD 00 20 */ lwz r5, 0x20(r29) /* 8020C804 00208464 7F E3 FB 78 */ mr r3, r31 /* 8020C808 00208468 7F C4 F3 78 */ mr r4, r30 /* 8020C80C 0020846C 4B FF F8 A9 */ bl func_8020C0B4 /* 8020C810 00208470 83 FF 00 28 */ lwz r31, 0x28(r31) lbl_8020C814: /* 8020C814 00208474 2C 1F 00 00 */ cmpwi r31, 0 /* 8020C818 00208478 40 82 FF E8 */ bne lbl_8020C800 /* 8020C81C 0020847C 38 60 00 01 */ li r3, 1 /* 8020C820 00208480 4B FF 8A 59 */ bl func_80205278 /* 8020C824 00208484 38 00 00 01 */ li r0, 1 /* 8020C828 00208488 98 0D A1 F4 */ stb r0, lbl_8063F4B4-_SDA_BASE_(r13) lbl_8020C82C: /* 8020C82C 0020848C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8020C830 00208490 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8020C834 00208494 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8020C838 00208498 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8020C83C 0020849C 7C 08 03 A6 */ mtlr r0 /* 8020C840 002084A0 38 21 00 20 */ addi r1, r1, 0x20 /* 8020C844 002084A4 4E 80 00 20 */ blr /* 8020C848 002084A8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8020C84C 002084AC 7C 08 02 A6 */ mflr r0 /* 8020C850 002084B0 90 01 00 14 */ stw r0, 0x14(r1) /* 8020C854 002084B4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8020C858 002084B8 93 C1 00 08 */ stw r30, 8(r1) /* 8020C85C 002084BC 7C 7E 1B 78 */ mr r30, r3 /* 8020C860 002084C0 88 03 00 18 */ lbz r0, 0x18(r3) /* 8020C864 002084C4 2C 00 00 00 */ cmpwi r0, 0 /* 8020C868 002084C8 41 82 00 38 */ beq lbl_8020C8A0 /* 8020C86C 002084CC 38 00 00 00 */ li r0, 0 /* 8020C870 002084D0 80 83 00 10 */ lwz r4, 0x10(r3) /* 8020C874 002084D4 98 03 00 18 */ stb r0, 0x18(r3) /* 8020C878 002084D8 48 00 00 18 */ b lbl_8020C890 lbl_8020C87C: /* 8020C87C 002084DC 83 E4 00 28 */ lwz r31, 0x28(r4) /* 8020C880 002084E0 7C 83 23 78 */ mr r3, r4 /* 8020C884 002084E4 80 9E 00 20 */ lwz r4, 0x20(r30) /* 8020C888 002084E8 4B FF FD 79 */ bl func_8020C600 /* 8020C88C 002084EC 7F E4 FB 78 */ mr r4, r31 lbl_8020C890: /* 8020C890 002084F0 2C 04 00 00 */ cmpwi r4, 0 /* 8020C894 002084F4 40 82 FF E8 */ bne lbl_8020C87C /* 8020C898 002084F8 7F C3 F3 78 */ mr r3, r30 /* 8020C89C 002084FC 4B FF B2 F1 */ bl func_80207B8C lbl_8020C8A0: /* 8020C8A0 00208500 80 01 00 14 */ lwz r0, 0x14(r1) /* 8020C8A4 00208504 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8020C8A8 00208508 83 C1 00 08 */ lwz r30, 8(r1) /* 8020C8AC 0020850C 7C 08 03 A6 */ mtlr r0 /* 8020C8B0 00208510 38 21 00 10 */ addi r1, r1, 0x10 /* 8020C8B4 00208514 4E 80 00 20 */ blr .global func_8020C8B8 func_8020C8B8: /* 8020C8B8 00208518 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8020C8BC 0020851C 7C 08 02 A6 */ mflr r0 /* 8020C8C0 00208520 90 01 00 44 */ stw r0, 0x44(r1) /* 8020C8C4 00208524 39 61 00 38 */ addi r11, r1, 0x38 /* 8020C8C8 00208528 DB E1 00 38 */ stfd f31, 0x38(r1) /* 8020C8CC 0020852C 4B FB A8 59 */ bl _savegpr_26 /* 8020C8D0 00208530 88 03 00 18 */ lbz r0, 0x18(r3) /* 8020C8D4 00208534 7C 7A 1B 78 */ mr r26, r3 /* 8020C8D8 00208538 2C 00 00 00 */ cmpwi r0, 0 /* 8020C8DC 0020853C 41 82 00 C4 */ beq lbl_8020C9A0 /* 8020C8E0 00208540 A0 03 00 14 */ lhz r0, 0x14(r3) /* 8020C8E4 00208544 28 00 00 02 */ cmplwi r0, 2 /* 8020C8E8 00208548 41 80 00 B8 */ blt lbl_8020C9A0 /* 8020C8EC 0020854C 80 83 00 20 */ lwz r4, 0x20(r3) /* 8020C8F0 00208550 80 04 00 00 */ lwz r0, 0(r4) /* 8020C8F4 00208554 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf /* 8020C8F8 00208558 40 82 00 08 */ bne lbl_8020C900 /* 8020C8FC 0020855C 48 00 00 A4 */ b lbl_8020C9A0 lbl_8020C900: /* 8020C900 00208560 80 63 00 10 */ lwz r3, 0x10(r3) /* 8020C904 00208564 3F C0 80 49 */ lis r30, 0x8049 /* 8020C908 00208568 3F E0 80 49 */ lis r31, 0x8049 /* 8020C90C 0020856C 83 A3 00 28 */ lwz r29, 0x28(r3) /* 8020C910 00208570 48 00 00 88 */ b lbl_8020C998 lbl_8020C914: /* 8020C914 00208574 38 7D 00 30 */ addi r3, r29, 0x30 /* 8020C918 00208578 38 9E 22 30 */ addi r4, r30, 0x2230 /* 8020C91C 0020857C 38 A1 00 14 */ addi r5, r1, 0x14 /* 8020C920 00208580 48 07 03 C9 */ bl PSVECSubtract /* 8020C924 00208584 38 7F 22 3C */ addi r3, r31, 0x223c /* 8020C928 00208588 38 81 00 14 */ addi r4, r1, 0x14 /* 8020C92C 0020858C 48 07 04 9D */ bl PSVECDotProduct /* 8020C930 00208590 FF E0 08 90 */ fmr f31, f1 /* 8020C934 00208594 83 9D 00 2C */ lwz r28, 0x2c(r29) /* 8020C938 00208598 7F BB EB 78 */ mr r27, r29 /* 8020C93C 0020859C 48 00 00 34 */ b lbl_8020C970 lbl_8020C940: /* 8020C940 002085A0 38 7C 00 30 */ addi r3, r28, 0x30 /* 8020C944 002085A4 38 9E 22 30 */ addi r4, r30, 0x2230 /* 8020C948 002085A8 38 A1 00 08 */ addi r5, r1, 8 /* 8020C94C 002085AC 48 07 03 9D */ bl PSVECSubtract /* 8020C950 002085B0 38 7F 22 3C */ addi r3, r31, 0x223c /* 8020C954 002085B4 38 81 00 08 */ addi r4, r1, 8 /* 8020C958 002085B8 48 07 04 71 */ bl PSVECDotProduct /* 8020C95C 002085BC FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 8020C960 002085C0 4C 41 13 82 */ cror 2, 1, 2 /* 8020C964 002085C4 41 82 00 14 */ beq lbl_8020C978 /* 8020C968 002085C8 7F 9B E3 78 */ mr r27, r28 /* 8020C96C 002085CC 83 9C 00 2C */ lwz r28, 0x2c(r28) lbl_8020C970: /* 8020C970 002085D0 2C 1C 00 00 */ cmpwi r28, 0 /* 8020C974 002085D4 40 82 FF CC */ bne lbl_8020C940 lbl_8020C978: /* 8020C978 002085D8 7C 1B E8 40 */ cmplw r27, r29 /* 8020C97C 002085DC 83 9D 00 28 */ lwz r28, 0x28(r29) /* 8020C980 002085E0 41 82 00 14 */ beq lbl_8020C994 /* 8020C984 002085E4 7F 43 D3 78 */ mr r3, r26 /* 8020C988 002085E8 7F A4 EB 78 */ mr r4, r29 /* 8020C98C 002085EC 7F 65 DB 78 */ mr r5, r27 /* 8020C990 002085F0 4B FF B2 4D */ bl func_80207BDC lbl_8020C994: /* 8020C994 002085F4 7F 9D E3 78 */ mr r29, r28 lbl_8020C998: /* 8020C998 002085F8 2C 1D 00 00 */ cmpwi r29, 0 /* 8020C99C 002085FC 40 82 FF 78 */ bne lbl_8020C914 lbl_8020C9A0: /* 8020C9A0 00208600 39 61 00 38 */ addi r11, r1, 0x38 /* 8020C9A4 00208604 CB E1 00 38 */ lfd f31, 0x38(r1) /* 8020C9A8 00208608 4B FB A7 C9 */ bl _restgpr_26 /* 8020C9AC 0020860C 80 01 00 44 */ lwz r0, 0x44(r1) /* 8020C9B0 00208610 7C 08 03 A6 */ mtlr r0 /* 8020C9B4 00208614 38 21 00 40 */ addi r1, r1, 0x40 /* 8020C9B8 00208618 4E 80 00 20 */ blr /* 8020C9BC 0020861C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8020C9C0 00208620 7C 08 02 A6 */ mflr r0 /* 8020C9C4 00208624 2C 03 00 00 */ cmpwi r3, 0 /* 8020C9C8 00208628 90 01 00 14 */ stw r0, 0x14(r1) /* 8020C9CC 0020862C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8020C9D0 00208630 7C 9F 23 78 */ mr r31, r4 /* 8020C9D4 00208634 93 C1 00 08 */ stw r30, 8(r1) /* 8020C9D8 00208638 7C 7E 1B 78 */ mr r30, r3 /* 8020C9DC 0020863C 41 82 00 20 */ beq lbl_8020C9FC /* 8020C9E0 00208640 38 80 00 00 */ li r4, 0 /* 8020C9E4 00208644 4B FF AF D1 */ bl func_802079B4 /* 8020C9E8 00208648 2C 1F 00 00 */ cmpwi r31, 0 /* 8020C9EC 0020864C 40 81 00 10 */ ble lbl_8020C9FC /* 8020C9F0 00208650 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8020C9F4 00208654 7F C4 F3 78 */ mr r4, r30 /* 8020C9F8 00208658 4B FC E3 51 */ bl func_801DAD48 lbl_8020C9FC: /* 8020C9FC 0020865C 7F C3 F3 78 */ mr r3, r30 /* 8020CA00 00208660 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8020CA04 00208664 83 C1 00 08 */ lwz r30, 8(r1) /* 8020CA08 00208668 80 01 00 14 */ lwz r0, 0x14(r1) /* 8020CA0C 0020866C 7C 08 03 A6 */ mtlr r0 /* 8020CA10 00208670 38 21 00 10 */ addi r1, r1, 0x10 /* 8020CA14 00208674 4E 80 00 20 */ blr .global func_8020CA18 func_8020CA18: /* 8020CA18 00208678 38 A0 00 01 */ li r5, 1 /* 8020CA1C 0020867C 38 6D A2 18 */ addi r3, r13, lbl_8063F4D8-_SDA_BASE_ /* 8020CA20 00208680 38 80 00 04 */ li r4, 4 /* 8020CA24 00208684 38 00 00 00 */ li r0, 0 /* 8020CA28 00208688 98 AD A2 18 */ stb r5, lbl_8063F4D8-_SDA_BASE_(r13) /* 8020CA2C 0020868C B0 83 00 02 */ sth r4, 2(r3) /* 8020CA30 00208690 98 03 00 04 */ stb r0, 4(r3) /* 8020CA34 00208694 4E 80 00 20 */ blr