diff --git a/asm/Dolphin/GBA.s b/asm/Dolphin/GBA.s new file mode 100644 index 00000000..0b43ae56 --- /dev/null +++ b/asm/Dolphin/GBA.s @@ -0,0 +1,1370 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global ShortCommandProc +ShortCommandProc: +/* 803C95F8 003C6558 3C 80 80 57 */ lis r4, __GBA@ha +/* 803C95FC 003C655C 54 63 40 2E */ slwi r3, r3, 8 +/* 803C9600 003C6560 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803C9604 003C6564 7C 60 1A 14 */ add r3, r0, r3 +/* 803C9608 003C6568 80 03 00 20 */ lwz r0, 0x20(r3) +/* 803C960C 003C656C 2C 00 00 00 */ cmpwi r0, 0 +/* 803C9610 003C6570 4C 82 00 20 */ bnelr +/* 803C9614 003C6574 88 03 00 05 */ lbz r0, 5(r3) +/* 803C9618 003C6578 28 00 00 00 */ cmplwi r0, 0 +/* 803C961C 003C657C 40 82 00 10 */ bne lbl_803C962C +/* 803C9620 003C6580 88 03 00 06 */ lbz r0, 6(r3) +/* 803C9624 003C6584 28 00 00 04 */ cmplwi r0, 4 +/* 803C9628 003C6588 41 82 00 10 */ beq lbl_803C9638 +lbl_803C962C: +/* 803C962C 003C658C 38 00 00 01 */ li r0, 1 +/* 803C9630 003C6590 90 03 00 20 */ stw r0, 0x20(r3) +/* 803C9634 003C6594 4E 80 00 20 */ blr +lbl_803C9638: +/* 803C9638 003C6598 88 03 00 07 */ lbz r0, 7(r3) +/* 803C963C 003C659C 80 63 00 14 */ lwz r3, 0x14(r3) +/* 803C9640 003C65A0 70 00 00 3A */ andi. r0, r0, 0x3a +/* 803C9644 003C65A4 98 03 00 00 */ stb r0, 0(r3) +/* 803C9648 003C65A8 4E 80 00 20 */ blr + +.global GBAInit +GBAInit: +/* 803C964C 003C65AC 7C 08 02 A6 */ mflr r0 +/* 803C9650 003C65B0 3C 60 80 00 */ lis r3, 0x800000F8@ha +/* 803C9654 003C65B4 90 01 00 04 */ stw r0, 4(r1) +/* 803C9658 003C65B8 3C 80 80 57 */ lis r4, __GBA@ha +/* 803C965C 003C65BC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C9660 003C65C0 BF 61 00 0C */ stmw r27, 0xc(r1) +/* 803C9664 003C65C4 3B A4 A1 A0 */ addi r29, r4, __GBA@l +/* 803C9668 003C65C8 3B 60 00 00 */ li r27, 0 +/* 803C966C 003C65CC 3B E0 00 00 */ li r31, 0 +/* 803C9670 003C65D0 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3) +/* 803C9674 003C65D4 3C 60 43 1C */ lis r3, 0x431BDE83@ha +/* 803C9678 003C65D8 38 63 DE 83 */ addi r3, r3, 0x431BDE83@l +/* 803C967C 003C65DC 54 00 F0 BE */ srwi r0, r0, 2 +/* 803C9680 003C65E0 7C 03 00 16 */ mulhwu r0, r3, r0 +/* 803C9684 003C65E4 54 00 8B FE */ srwi r0, r0, 0xf +/* 803C9688 003C65E8 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 803C968C 003C65EC 3C 60 80 57 */ lis r3, lbl_8056A0A0@ha +/* 803C9690 003C65F0 3B 83 A0 A0 */ addi r28, r3, lbl_8056A0A0@l +/* 803C9694 003C65F4 54 1E E8 FE */ srwi r30, r0, 3 +lbl_803C9698: +/* 803C9698 003C65F8 93 DD 00 34 */ stw r30, 0x34(r29) +/* 803C969C 003C65FC 38 7D 00 24 */ addi r3, r29, 0x24 +/* 803C96A0 003C6600 93 FD 00 30 */ stw r31, 0x30(r29) +/* 803C96A4 003C6604 4B FB AF 21 */ bl OSInitThreadQueue +/* 803C96A8 003C6608 3B 7B 00 01 */ addi r27, r27, 1 +/* 803C96AC 003C660C 93 9D 00 F8 */ stw r28, 0xf8(r29) +/* 803C96B0 003C6610 2C 1B 00 04 */ cmpwi r27, 4 +/* 803C96B4 003C6614 3B BD 01 00 */ addi r29, r29, 0x100 +/* 803C96B8 003C6618 3B 9C 00 40 */ addi r28, r28, 0x40 +/* 803C96BC 003C661C 41 80 FF DC */ blt lbl_803C9698 +/* 803C96C0 003C6620 4B FB 49 A5 */ bl OSInitAlarm +/* 803C96C4 003C6624 4B FA 63 41 */ bl DSPInit +/* 803C96C8 003C6628 38 00 00 00 */ li r0, 0 +/* 803C96CC 003C662C 3C 60 80 3F */ lis r3, lbl_803F7160@ha +/* 803C96D0 003C6630 90 0D B1 58 */ stw r0, __GBAReset@sda21(r13) +/* 803C96D4 003C6634 38 63 71 60 */ addi r3, r3, lbl_803F7160@l +/* 803C96D8 003C6638 4B FB 99 55 */ bl OSRegisterResetFunction +/* 803C96DC 003C663C BB 61 00 0C */ lmw r27, 0xc(r1) +/* 803C96E0 003C6640 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803C96E4 003C6644 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C96E8 003C6648 7C 08 03 A6 */ mtlr r0 +/* 803C96EC 003C664C 4E 80 00 20 */ blr + +.global GBAGetStatusAsync +GBAGetStatusAsync: +/* 803C96F0 003C6650 7C 08 02 A6 */ mflr r0 +/* 803C96F4 003C6654 3C C0 80 57 */ lis r6, __GBA@ha +/* 803C96F8 003C6658 90 01 00 04 */ stw r0, 4(r1) +/* 803C96FC 003C665C 54 67 40 2E */ slwi r7, r3, 8 +/* 803C9700 003C6660 38 06 A1 A0 */ addi r0, r6, __GBA@l +/* 803C9704 003C6664 94 21 FF F8 */ stwu r1, -8(r1) +/* 803C9708 003C6668 7C E0 3A 14 */ add r7, r0, r7 +/* 803C970C 003C666C 80 07 00 1C */ lwz r0, 0x1c(r7) +/* 803C9710 003C6670 28 00 00 00 */ cmplwi r0, 0 +/* 803C9714 003C6674 41 82 00 0C */ beq lbl_803C9720 +/* 803C9718 003C6678 38 60 00 02 */ li r3, 2 +/* 803C971C 003C667C 48 00 00 28 */ b lbl_803C9744 +lbl_803C9720: +/* 803C9720 003C6680 38 00 00 00 */ li r0, 0 +/* 803C9724 003C6684 98 07 00 00 */ stb r0, 0(r7) +/* 803C9728 003C6688 3C C0 80 3D */ lis r6, ShortCommandProc@ha +/* 803C972C 003C668C 38 C6 95 F8 */ addi r6, r6, ShortCommandProc@l +/* 803C9730 003C6690 90 87 00 14 */ stw r4, 0x14(r7) +/* 803C9734 003C6694 38 80 00 01 */ li r4, 1 +/* 803C9738 003C6698 90 A7 00 1C */ stw r5, 0x1c(r7) +/* 803C973C 003C669C 38 A0 00 03 */ li r5, 3 +/* 803C9740 003C66A0 48 00 17 69 */ bl __GBATransfer +lbl_803C9744: +/* 803C9744 003C66A4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 803C9748 003C66A8 38 21 00 08 */ addi r1, r1, 8 +/* 803C974C 003C66AC 7C 08 03 A6 */ mtlr r0 +/* 803C9750 003C66B0 4E 80 00 20 */ blr + +.global GBAGetStatus +GBAGetStatus: +/* 803C9754 003C66B4 7C 08 02 A6 */ mflr r0 +/* 803C9758 003C66B8 90 01 00 04 */ stw r0, 4(r1) +/* 803C975C 003C66BC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C9760 003C66C0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803C9764 003C66C4 3B E3 00 00 */ addi r31, r3, 0 +/* 803C9768 003C66C8 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C976C 003C66CC 57 E5 40 2E */ slwi r5, r31, 8 +/* 803C9770 003C66D0 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9774 003C66D4 7C E0 2A 14 */ add r7, r0, r5 +/* 803C9778 003C66D8 80 07 00 1C */ lwz r0, 0x1c(r7) +/* 803C977C 003C66DC 28 00 00 00 */ cmplwi r0, 0 +/* 803C9780 003C66E0 41 82 00 0C */ beq lbl_803C978C +/* 803C9784 003C66E4 38 60 00 02 */ li r3, 2 +/* 803C9788 003C66E8 48 00 00 34 */ b lbl_803C97BC +lbl_803C978C: +/* 803C978C 003C66EC 38 00 00 00 */ li r0, 0 +/* 803C9790 003C66F0 98 07 00 00 */ stb r0, 0(r7) +/* 803C9794 003C66F4 3C A0 80 3D */ lis r5, __GBASyncCallback@ha +/* 803C9798 003C66F8 38 05 AC E4 */ addi r0, r5, __GBASyncCallback@l +/* 803C979C 003C66FC 90 87 00 14 */ stw r4, 0x14(r7) +/* 803C97A0 003C6700 3C 60 80 3D */ lis r3, ShortCommandProc@ha +/* 803C97A4 003C6704 38 C3 95 F8 */ addi r6, r3, ShortCommandProc@l +/* 803C97A8 003C6708 90 07 00 1C */ stw r0, 0x1c(r7) +/* 803C97AC 003C670C 38 7F 00 00 */ addi r3, r31, 0 +/* 803C97B0 003C6710 38 80 00 01 */ li r4, 1 +/* 803C97B4 003C6714 38 A0 00 03 */ li r5, 3 +/* 803C97B8 003C6718 48 00 16 F1 */ bl __GBATransfer +lbl_803C97BC: +/* 803C97BC 003C671C 2C 03 00 00 */ cmpwi r3, 0 +/* 803C97C0 003C6720 41 82 00 08 */ beq lbl_803C97C8 +/* 803C97C4 003C6724 48 00 00 0C */ b lbl_803C97D0 +lbl_803C97C8: +/* 803C97C8 003C6728 7F E3 FB 78 */ mr r3, r31 +/* 803C97CC 003C672C 48 00 15 4D */ bl __GBASync +lbl_803C97D0: +/* 803C97D0 003C6730 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803C97D4 003C6734 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803C97D8 003C6738 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C97DC 003C673C 7C 08 03 A6 */ mtlr r0 +/* 803C97E0 003C6740 4E 80 00 20 */ blr + +.global GBAResetAsync +GBAResetAsync: +/* 803C97E4 003C6744 7C 08 02 A6 */ mflr r0 +/* 803C97E8 003C6748 3C C0 80 57 */ lis r6, __GBA@ha +/* 803C97EC 003C674C 90 01 00 04 */ stw r0, 4(r1) +/* 803C97F0 003C6750 54 67 40 2E */ slwi r7, r3, 8 +/* 803C97F4 003C6754 38 06 A1 A0 */ addi r0, r6, __GBA@l +/* 803C97F8 003C6758 94 21 FF F8 */ stwu r1, -8(r1) +/* 803C97FC 003C675C 7C E0 3A 14 */ add r7, r0, r7 +/* 803C9800 003C6760 80 07 00 1C */ lwz r0, 0x1c(r7) +/* 803C9804 003C6764 28 00 00 00 */ cmplwi r0, 0 +/* 803C9808 003C6768 41 82 00 0C */ beq lbl_803C9814 +/* 803C980C 003C676C 38 60 00 02 */ li r3, 2 +/* 803C9810 003C6770 48 00 00 28 */ b lbl_803C9838 +lbl_803C9814: +/* 803C9814 003C6774 38 00 00 FF */ li r0, 0xff +/* 803C9818 003C6778 98 07 00 00 */ stb r0, 0(r7) +/* 803C981C 003C677C 3C C0 80 3D */ lis r6, ShortCommandProc@ha +/* 803C9820 003C6780 38 C6 95 F8 */ addi r6, r6, ShortCommandProc@l +/* 803C9824 003C6784 90 87 00 14 */ stw r4, 0x14(r7) +/* 803C9828 003C6788 38 80 00 01 */ li r4, 1 +/* 803C982C 003C678C 90 A7 00 1C */ stw r5, 0x1c(r7) +/* 803C9830 003C6790 38 A0 00 03 */ li r5, 3 +/* 803C9834 003C6794 48 00 16 75 */ bl __GBATransfer +lbl_803C9838: +/* 803C9838 003C6798 80 01 00 0C */ lwz r0, 0xc(r1) +/* 803C983C 003C679C 38 21 00 08 */ addi r1, r1, 8 +/* 803C9840 003C67A0 7C 08 03 A6 */ mtlr r0 +/* 803C9844 003C67A4 4E 80 00 20 */ blr + +.global GBAReset +GBAReset: +/* 803C9848 003C67A8 7C 08 02 A6 */ mflr r0 +/* 803C984C 003C67AC 90 01 00 04 */ stw r0, 4(r1) +/* 803C9850 003C67B0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C9854 003C67B4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803C9858 003C67B8 3B E3 00 00 */ addi r31, r3, 0 +/* 803C985C 003C67BC 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C9860 003C67C0 57 E5 40 2E */ slwi r5, r31, 8 +/* 803C9864 003C67C4 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9868 003C67C8 7C E0 2A 14 */ add r7, r0, r5 +/* 803C986C 003C67CC 80 07 00 1C */ lwz r0, 0x1c(r7) +/* 803C9870 003C67D0 28 00 00 00 */ cmplwi r0, 0 +/* 803C9874 003C67D4 41 82 00 0C */ beq lbl_803C9880 +/* 803C9878 003C67D8 38 60 00 02 */ li r3, 2 +/* 803C987C 003C67DC 48 00 00 34 */ b lbl_803C98B0 +lbl_803C9880: +/* 803C9880 003C67E0 38 00 00 FF */ li r0, 0xff +/* 803C9884 003C67E4 98 07 00 00 */ stb r0, 0(r7) +/* 803C9888 003C67E8 3C A0 80 3D */ lis r5, __GBASyncCallback@ha +/* 803C988C 003C67EC 38 05 AC E4 */ addi r0, r5, __GBASyncCallback@l +/* 803C9890 003C67F0 90 87 00 14 */ stw r4, 0x14(r7) +/* 803C9894 003C67F4 3C 60 80 3D */ lis r3, ShortCommandProc@ha +/* 803C9898 003C67F8 38 C3 95 F8 */ addi r6, r3, ShortCommandProc@l +/* 803C989C 003C67FC 90 07 00 1C */ stw r0, 0x1c(r7) +/* 803C98A0 003C6800 38 7F 00 00 */ addi r3, r31, 0 +/* 803C98A4 003C6804 38 80 00 01 */ li r4, 1 +/* 803C98A8 003C6808 38 A0 00 03 */ li r5, 3 +/* 803C98AC 003C680C 48 00 15 FD */ bl __GBATransfer +lbl_803C98B0: +/* 803C98B0 003C6810 2C 03 00 00 */ cmpwi r3, 0 +/* 803C98B4 003C6814 41 82 00 08 */ beq lbl_803C98BC +/* 803C98B8 003C6818 48 00 00 0C */ b lbl_803C98C4 +lbl_803C98BC: +/* 803C98BC 003C681C 7F E3 FB 78 */ mr r3, r31 +/* 803C98C0 003C6820 48 00 14 59 */ bl __GBASync +lbl_803C98C4: +/* 803C98C4 003C6824 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803C98C8 003C6828 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803C98CC 003C682C 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C98D0 003C6830 7C 08 03 A6 */ mtlr r0 +/* 803C98D4 003C6834 4E 80 00 20 */ blr + +.global OnReset_0 +OnReset_0: +/* 803C98D8 003C6838 38 00 00 01 */ li r0, 1 +/* 803C98DC 003C683C 90 0D B1 58 */ stw r0, __GBAReset@sda21(r13) +/* 803C98E0 003C6840 38 60 00 01 */ li r3, 1 +/* 803C98E4 003C6844 4E 80 00 20 */ blr + +.global GBAGetProcessStatus +GBAGetProcessStatus: +/* 803C98E8 003C6848 7C 08 02 A6 */ mflr r0 +/* 803C98EC 003C684C 3C A0 80 57 */ lis r5, __GBA@ha +/* 803C98F0 003C6850 90 01 00 04 */ stw r0, 4(r1) +/* 803C98F4 003C6854 54 63 40 2E */ slwi r3, r3, 8 +/* 803C98F8 003C6858 38 05 A1 A0 */ addi r0, r5, __GBA@l +/* 803C98FC 003C685C 94 21 FF C8 */ stwu r1, -0x38(r1) +/* 803C9900 003C6860 BE E1 00 14 */ stmw r23, 0x14(r1) +/* 803C9904 003C6864 7E E0 1A 14 */ add r23, r0, r3 +/* 803C9908 003C6868 3B 04 00 00 */ addi r24, r4, 0 +/* 803C990C 003C686C 3B F7 00 40 */ addi r31, r23, 0x40 +/* 803C9910 003C6870 4B FB 7D 51 */ bl OSDisableInterrupts +/* 803C9914 003C6874 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 803C9918 003C6878 3B A3 00 00 */ addi r29, r3, 0 +/* 803C991C 003C687C 28 00 00 00 */ cmplwi r0, 0 +/* 803C9920 003C6880 41 82 01 04 */ beq lbl_803C9A24 +/* 803C9924 003C6884 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 803C9928 003C6888 3B C0 00 00 */ li r30, 0 +/* 803C992C 003C688C 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 803C9930 003C6890 3B 80 00 02 */ li r28, 2 +/* 803C9934 003C6894 1C A3 00 64 */ mulli r5, r3, 0x64 +/* 803C9938 003C6898 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 803C993C 003C689C 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 803C9940 003C68A0 7C 85 23 D6 */ divw r4, r5, r4 +/* 803C9944 003C68A4 7C 63 F2 78 */ xor r3, r3, r30 +/* 803C9948 003C68A8 7C 00 F2 78 */ xor r0, r0, r30 +/* 803C994C 003C68AC 7C 60 03 79 */ or. r0, r3, r0 +/* 803C9950 003C68B0 54 9B 06 3E */ clrlwi r27, r4, 0x18 +/* 803C9954 003C68B4 41 82 00 C0 */ beq lbl_803C9A14 +/* 803C9958 003C68B8 4B FB BA 51 */ bl OSGetTime +/* 803C995C 003C68BC 3E E0 80 00 */ lis r23, 0x800000F8@ha +/* 803C9960 003C68C0 80 DF 00 2C */ lwz r6, 0x2c(r31) +/* 803C9964 003C68C4 80 17 00 F8 */ lwz r0, 0x800000F8@l(r23) +/* 803C9968 003C68C8 3C A0 10 62 */ lis r5, 0x10624DD3@ha +/* 803C996C 003C68CC 7F 26 20 10 */ subfc r25, r6, r4 +/* 803C9970 003C68D0 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 803C9974 003C68D4 3B E5 4D D3 */ addi r31, r5, 0x10624DD3@l +/* 803C9978 003C68D8 54 00 F0 BE */ srwi r0, r0, 2 +/* 803C997C 003C68DC 7C 1F 00 16 */ mulhwu r0, r31, r0 +/* 803C9980 003C68E0 7F 44 19 10 */ subfe r26, r4, r3 +/* 803C9984 003C68E4 54 06 D1 BE */ srwi r6, r0, 6 +/* 803C9988 003C68E8 38 7A 00 00 */ addi r3, r26, 0 +/* 803C998C 003C68EC 38 99 00 00 */ addi r4, r25, 0 +/* 803C9990 003C68F0 38 A0 00 00 */ li r5, 0 +/* 803C9994 003C68F4 4B FC 02 39 */ bl __div2i +/* 803C9998 003C68F8 38 E0 15 7C */ li r7, 0x157c +/* 803C999C 003C68FC 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 803C99A0 003C6900 6F C3 80 00 */ xoris r3, r30, 0x8000 +/* 803C99A4 003C6904 7C 07 20 10 */ subfc r0, r7, r4 +/* 803C99A8 003C6908 7C 63 29 10 */ subfe r3, r3, r5 +/* 803C99AC 003C690C 7C 65 29 10 */ subfe r3, r5, r5 +/* 803C99B0 003C6910 7C 63 00 D1 */ neg. r3, r3 +/* 803C99B4 003C6914 41 82 00 50 */ beq lbl_803C9A04 +/* 803C99B8 003C6918 80 77 00 F8 */ lwz r3, 0xf8(r23) +/* 803C99BC 003C691C 7C BE 39 D6 */ mullw r5, r30, r7 +/* 803C99C0 003C6920 54 63 F0 BE */ srwi r3, r3, 2 +/* 803C99C4 003C6924 7C 7F 18 16 */ mulhwu r3, r31, r3 +/* 803C99C8 003C6928 54 66 D1 BE */ srwi r6, r3, 6 +/* 803C99CC 003C692C 7C 66 38 16 */ mulhwu r3, r6, r7 +/* 803C99D0 003C6930 7C A5 1A 14 */ add r5, r5, r3 +/* 803C99D4 003C6934 7C 66 F1 D6 */ mullw r3, r6, r30 +/* 803C99D8 003C6938 7F 60 FE 70 */ srawi r0, r27, 0x1f +/* 803C99DC 003C693C 7C A5 1A 14 */ add r5, r5, r3 +/* 803C99E0 003C6940 7C 60 C9 D6 */ mullw r3, r0, r25 +/* 803C99E4 003C6944 7C 1B C8 16 */ mulhwu r0, r27, r25 +/* 803C99E8 003C6948 7C 63 02 14 */ add r3, r3, r0 +/* 803C99EC 003C694C 7C 1B D1 D6 */ mullw r0, r27, r26 +/* 803C99F0 003C6950 7C 9B C9 D6 */ mullw r4, r27, r25 +/* 803C99F4 003C6954 7C C6 39 D6 */ mullw r6, r6, r7 +/* 803C99F8 003C6958 7C 63 02 14 */ add r3, r3, r0 +/* 803C99FC 003C695C 4B FC 01 D1 */ bl __div2i +/* 803C9A00 003C6960 7C 9B 23 78 */ mr r27, r4 +lbl_803C9A04: +/* 803C9A04 003C6964 57 60 06 3E */ clrlwi r0, r27, 0x18 +/* 803C9A08 003C6968 28 00 00 64 */ cmplwi r0, 0x64 +/* 803C9A0C 003C696C 41 80 00 08 */ blt lbl_803C9A14 +/* 803C9A10 003C6970 3B 60 00 64 */ li r27, 0x64 +lbl_803C9A14: +/* 803C9A14 003C6974 28 18 00 00 */ cmplwi r24, 0 +/* 803C9A18 003C6978 41 82 00 24 */ beq lbl_803C9A3C +/* 803C9A1C 003C697C 9B 78 00 00 */ stb r27, 0(r24) +/* 803C9A20 003C6980 48 00 00 1C */ b lbl_803C9A3C +lbl_803C9A24: +/* 803C9A24 003C6984 80 17 00 1C */ lwz r0, 0x1c(r23) +/* 803C9A28 003C6988 28 00 00 00 */ cmplwi r0, 0 +/* 803C9A2C 003C698C 41 82 00 0C */ beq lbl_803C9A38 +/* 803C9A30 003C6990 3B 80 00 02 */ li r28, 2 +/* 803C9A34 003C6994 48 00 00 08 */ b lbl_803C9A3C +lbl_803C9A38: +/* 803C9A38 003C6998 3B 80 00 00 */ li r28, 0 +lbl_803C9A3C: +/* 803C9A3C 003C699C 7F A3 EB 78 */ mr r3, r29 +/* 803C9A40 003C69A0 4B FB 7C 49 */ bl OSRestoreInterrupts +/* 803C9A44 003C69A4 7F 83 E3 78 */ mr r3, r28 +/* 803C9A48 003C69A8 BA E1 00 14 */ lmw r23, 0x14(r1) +/* 803C9A4C 003C69AC 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 803C9A50 003C69B0 38 21 00 38 */ addi r1, r1, 0x38 +/* 803C9A54 003C69B4 7C 08 03 A6 */ mtlr r0 +/* 803C9A58 003C69B8 4E 80 00 20 */ blr + +.global GBAJoyBootAsync +GBAJoyBootAsync: +/* 803C9A5C 003C69BC 7C 08 02 A6 */ mflr r0 +/* 803C9A60 003C69C0 90 01 00 04 */ stw r0, 4(r1) +/* 803C9A64 003C69C4 54 60 00 3B */ rlwinm. r0, r3, 0, 0, 0x1d +/* 803C9A68 003C69C8 94 21 FF B8 */ stwu r1, -0x48(r1) +/* 803C9A6C 003C69CC BF 01 00 28 */ stmw r24, 0x28(r1) +/* 803C9A70 003C69D0 3B 03 00 00 */ addi r24, r3, 0 +/* 803C9A74 003C69D4 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C9A78 003C69D8 57 0A 40 2E */ slwi r10, r24, 8 +/* 803C9A7C 003C69DC 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9A80 003C69E0 7C 60 52 14 */ add r3, r0, r10 +/* 803C9A84 003C69E4 3B 24 00 00 */ addi r25, r4, 0 +/* 803C9A88 003C69E8 3B 45 00 00 */ addi r26, r5, 0 +/* 803C9A8C 003C69EC 3B 66 00 00 */ addi r27, r6, 0 +/* 803C9A90 003C69F0 3B 87 00 00 */ addi r28, r7, 0 +/* 803C9A94 003C69F4 3B A8 00 00 */ addi r29, r8, 0 +/* 803C9A98 003C69F8 3B C9 00 00 */ addi r30, r9, 0 +/* 803C9A9C 003C69FC 3B E3 00 40 */ addi r31, r3, 0x40 +/* 803C9AA0 003C6A00 41 82 00 0C */ beq lbl_803C9AAC +/* 803C9AA4 003C6A04 38 60 00 04 */ li r3, 4 +/* 803C9AA8 003C6A08 48 00 00 DC */ b lbl_803C9B84 +lbl_803C9AAC: +/* 803C9AAC 003C6A0C 2C 1C 00 00 */ cmpwi r28, 0 +/* 803C9AB0 003C6A10 41 82 00 10 */ beq lbl_803C9AC0 +/* 803C9AB4 003C6A14 3C 00 00 04 */ lis r0, 4 +/* 803C9AB8 003C6A18 7C 00 E0 00 */ cmpw r0, r28 +/* 803C9ABC 003C6A1C 40 80 00 0C */ bge lbl_803C9AC8 +lbl_803C9AC0: +/* 803C9AC0 003C6A20 38 60 00 04 */ li r3, 4 +/* 803C9AC4 003C6A24 48 00 00 C0 */ b lbl_803C9B84 +lbl_803C9AC8: +/* 803C9AC8 003C6A28 2C 1A FF FC */ cmpwi r26, -4 +/* 803C9ACC 003C6A2C 41 80 00 0C */ blt lbl_803C9AD8 +/* 803C9AD0 003C6A30 2C 1A 00 04 */ cmpwi r26, 4 +/* 803C9AD4 003C6A34 40 81 00 0C */ ble lbl_803C9AE0 +lbl_803C9AD8: +/* 803C9AD8 003C6A38 38 60 00 04 */ li r3, 4 +/* 803C9ADC 003C6A3C 48 00 00 A8 */ b lbl_803C9B84 +lbl_803C9AE0: +/* 803C9AE0 003C6A40 2C 19 00 00 */ cmpwi r25, 0 +/* 803C9AE4 003C6A44 41 80 00 0C */ blt lbl_803C9AF0 +/* 803C9AE8 003C6A48 2C 19 00 06 */ cmpwi r25, 6 +/* 803C9AEC 003C6A4C 40 81 00 0C */ ble lbl_803C9AF8 +lbl_803C9AF0: +/* 803C9AF0 003C6A50 38 60 00 04 */ li r3, 4 +/* 803C9AF4 003C6A54 48 00 00 90 */ b lbl_803C9B84 +lbl_803C9AF8: +/* 803C9AF8 003C6A58 88 7B 00 AC */ lbz r3, 0xac(r27) +/* 803C9AFC 003C6A5C 88 1B 00 AD */ lbz r0, 0xad(r27) +/* 803C9B00 003C6A60 88 9B 00 AE */ lbz r4, 0xae(r27) +/* 803C9B04 003C6A64 7C 03 01 D6 */ mullw r0, r3, r0 +/* 803C9B08 003C6A68 88 7B 00 AF */ lbz r3, 0xaf(r27) +/* 803C9B0C 003C6A6C 7C 04 01 D6 */ mullw r0, r4, r0 +/* 803C9B10 003C6A70 7C 03 01 D7 */ mullw. r0, r3, r0 +/* 803C9B14 003C6A74 40 82 00 0C */ bne lbl_803C9B20 +/* 803C9B18 003C6A78 38 60 00 04 */ li r3, 4 +/* 803C9B1C 003C6A7C 48 00 00 68 */ b lbl_803C9B84 +lbl_803C9B20: +/* 803C9B20 003C6A80 38 78 00 00 */ addi r3, r24, 0 +/* 803C9B24 003C6A84 38 81 00 24 */ addi r4, r1, 0x24 +/* 803C9B28 003C6A88 4B FF FD C1 */ bl GBAGetProcessStatus +/* 803C9B2C 003C6A8C 2C 03 00 00 */ cmpwi r3, 0 +/* 803C9B30 003C6A90 41 82 00 08 */ beq lbl_803C9B38 +/* 803C9B34 003C6A94 48 00 00 50 */ b lbl_803C9B84 +lbl_803C9B38: +/* 803C9B38 003C6A98 93 3F 00 00 */ stw r25, 0(r31) +/* 803C9B3C 003C6A9C 3C 80 80 3F */ lis r4, lbl_803F7170@ha +/* 803C9B40 003C6AA0 3C 60 80 3D */ lis r3, _F23@ha +/* 803C9B44 003C6AA4 93 5F 00 04 */ stw r26, 4(r31) +/* 803C9B48 003C6AA8 38 A3 9B 98 */ addi r5, r3, _F23@l +/* 803C9B4C 003C6AAC 38 84 71 70 */ addi r4, r4, lbl_803F7170@l +/* 803C9B50 003C6AB0 93 7F 00 08 */ stw r27, 8(r31) +/* 803C9B54 003C6AB4 7F 03 C3 78 */ mr r3, r24 +/* 803C9B58 003C6AB8 93 9F 00 0C */ stw r28, 0xc(r31) +/* 803C9B5C 003C6ABC 93 BF 00 10 */ stw r29, 0x10(r31) +/* 803C9B60 003C6AC0 93 DF 00 14 */ stw r30, 0x14(r31) +/* 803C9B64 003C6AC4 88 04 00 08 */ lbz r0, 8(r4) +/* 803C9B68 003C6AC8 90 1F 00 34 */ stw r0, 0x34(r31) +/* 803C9B6C 003C6ACC 80 9F 00 10 */ lwz r4, 0x10(r31) +/* 803C9B70 003C6AD0 4B FF FB 81 */ bl GBAGetStatusAsync +/* 803C9B74 003C6AD4 2C 03 00 00 */ cmpwi r3, 0 +/* 803C9B78 003C6AD8 41 82 00 0C */ beq lbl_803C9B84 +/* 803C9B7C 003C6ADC 38 00 00 00 */ li r0, 0 +/* 803C9B80 003C6AE0 90 1F 00 14 */ stw r0, 0x14(r31) +lbl_803C9B84: +/* 803C9B84 003C6AE4 BB 01 00 28 */ lmw r24, 0x28(r1) +/* 803C9B88 003C6AE8 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 803C9B8C 003C6AEC 38 21 00 48 */ addi r1, r1, 0x48 +/* 803C9B90 003C6AF0 7C 08 03 A6 */ mtlr r0 +/* 803C9B94 003C6AF4 4E 80 00 20 */ blr + +.global _F23 +_F23: +/* 803C9B98 003C6AF8 7C 08 02 A6 */ mflr r0 +/* 803C9B9C 003C6AFC 90 01 00 04 */ stw r0, 4(r1) +/* 803C9BA0 003C6B00 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803C9BA4 003C6B04 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803C9BA8 003C6B08 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803C9BAC 003C6B0C 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803C9BB0 003C6B10 7C 9D 23 79 */ or. r29, r4, r4 +/* 803C9BB4 003C6B14 93 81 00 18 */ stw r28, 0x18(r1) +/* 803C9BB8 003C6B18 3B 83 00 00 */ addi r28, r3, 0 +/* 803C9BBC 003C6B1C 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C9BC0 003C6B20 57 84 40 2E */ slwi r4, r28, 8 +/* 803C9BC4 003C6B24 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9BC8 003C6B28 7F E0 22 14 */ add r31, r0, r4 +/* 803C9BCC 003C6B2C 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803C9BD0 003C6B30 40 82 00 20 */ bne lbl_803C9BF0 +/* 803C9BD4 003C6B34 3C 60 80 3D */ lis r3, _F25@ha +/* 803C9BD8 003C6B38 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803C9BDC 003C6B3C 38 A3 9C 40 */ addi r5, r3, _F25@l +/* 803C9BE0 003C6B40 38 7C 00 00 */ addi r3, r28, 0 +/* 803C9BE4 003C6B44 4B FF FC 01 */ bl GBAResetAsync +/* 803C9BE8 003C6B48 7C 7D 1B 79 */ or. r29, r3, r3 +/* 803C9BEC 003C6B4C 41 82 00 30 */ beq lbl_803C9C1C +lbl_803C9BF0: +/* 803C9BF0 003C6B50 38 00 00 00 */ li r0, 0 +/* 803C9BF4 003C6B54 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803C9BF8 003C6B58 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803C9BFC 003C6B5C 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803C9C00 003C6B60 28 0C 00 00 */ cmplwi r12, 0 +/* 803C9C04 003C6B64 41 82 00 18 */ beq lbl_803C9C1C +/* 803C9C08 003C6B68 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803C9C0C 003C6B6C 7D 88 03 A6 */ mtlr r12 +/* 803C9C10 003C6B70 38 7C 00 00 */ addi r3, r28, 0 +/* 803C9C14 003C6B74 38 9D 00 00 */ addi r4, r29, 0 +/* 803C9C18 003C6B78 4E 80 00 21 */ blrl +lbl_803C9C1C: +/* 803C9C1C 003C6B7C 93 BF 00 20 */ stw r29, 0x20(r31) +/* 803C9C20 003C6B80 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803C9C24 003C6B84 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803C9C28 003C6B88 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803C9C2C 003C6B8C 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803C9C30 003C6B90 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803C9C34 003C6B94 38 21 00 28 */ addi r1, r1, 0x28 +/* 803C9C38 003C6B98 7C 08 03 A6 */ mtlr r0 +/* 803C9C3C 003C6B9C 4E 80 00 20 */ blr + +.global _F25 +_F25: +/* 803C9C40 003C6BA0 7C 08 02 A6 */ mflr r0 +/* 803C9C44 003C6BA4 90 01 00 04 */ stw r0, 4(r1) +/* 803C9C48 003C6BA8 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803C9C4C 003C6BAC 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803C9C50 003C6BB0 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803C9C54 003C6BB4 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803C9C58 003C6BB8 7C 9D 23 79 */ or. r29, r4, r4 +/* 803C9C5C 003C6BBC 93 81 00 18 */ stw r28, 0x18(r1) +/* 803C9C60 003C6BC0 3B 83 00 00 */ addi r28, r3, 0 +/* 803C9C64 003C6BC4 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C9C68 003C6BC8 57 84 40 2E */ slwi r4, r28, 8 +/* 803C9C6C 003C6BCC 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9C70 003C6BD0 7F E0 22 14 */ add r31, r0, r4 +/* 803C9C74 003C6BD4 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803C9C78 003C6BD8 40 82 00 24 */ bne lbl_803C9C9C +/* 803C9C7C 003C6BDC 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803C9C80 003C6BE0 3C 60 80 3F */ lis r3, lbl_803F7170@ha +/* 803C9C84 003C6BE4 38 63 71 70 */ addi r3, r3, lbl_803F7170@l +/* 803C9C88 003C6BE8 88 84 00 00 */ lbz r4, 0(r4) +/* 803C9C8C 003C6BEC 88 03 00 25 */ lbz r0, 0x25(r3) +/* 803C9C90 003C6BF0 7C 04 00 40 */ cmplw r4, r0 +/* 803C9C94 003C6BF4 41 82 00 08 */ beq lbl_803C9C9C +/* 803C9C98 003C6BF8 3B A0 00 03 */ li r29, 3 +lbl_803C9C9C: +/* 803C9C9C 003C6BFC 2C 1D 00 00 */ cmpwi r29, 0 +/* 803C9CA0 003C6C00 40 82 00 20 */ bne lbl_803C9CC0 +/* 803C9CA4 003C6C04 3C 60 80 3D */ lis r3, _F27@ha +/* 803C9CA8 003C6C08 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803C9CAC 003C6C0C 38 A3 9D 10 */ addi r5, r3, _F27@l +/* 803C9CB0 003C6C10 38 7C 00 00 */ addi r3, r28, 0 +/* 803C9CB4 003C6C14 4B FF FA 3D */ bl GBAGetStatusAsync +/* 803C9CB8 003C6C18 7C 7D 1B 79 */ or. r29, r3, r3 +/* 803C9CBC 003C6C1C 41 82 00 30 */ beq lbl_803C9CEC +lbl_803C9CC0: +/* 803C9CC0 003C6C20 38 00 00 00 */ li r0, 0 +/* 803C9CC4 003C6C24 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803C9CC8 003C6C28 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803C9CCC 003C6C2C 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803C9CD0 003C6C30 28 0C 00 00 */ cmplwi r12, 0 +/* 803C9CD4 003C6C34 41 82 00 18 */ beq lbl_803C9CEC +/* 803C9CD8 003C6C38 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803C9CDC 003C6C3C 7D 88 03 A6 */ mtlr r12 +/* 803C9CE0 003C6C40 38 7C 00 00 */ addi r3, r28, 0 +/* 803C9CE4 003C6C44 38 9D 00 00 */ addi r4, r29, 0 +/* 803C9CE8 003C6C48 4E 80 00 21 */ blrl +lbl_803C9CEC: +/* 803C9CEC 003C6C4C 93 BF 00 20 */ stw r29, 0x20(r31) +/* 803C9CF0 003C6C50 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803C9CF4 003C6C54 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803C9CF8 003C6C58 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803C9CFC 003C6C5C 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803C9D00 003C6C60 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803C9D04 003C6C64 38 21 00 28 */ addi r1, r1, 0x28 +/* 803C9D08 003C6C68 7C 08 03 A6 */ mtlr r0 +/* 803C9D0C 003C6C6C 4E 80 00 20 */ blr + +.global _F27 +_F27: +/* 803C9D10 003C6C70 7C 08 02 A6 */ mflr r0 +/* 803C9D14 003C6C74 90 01 00 04 */ stw r0, 4(r1) +/* 803C9D18 003C6C78 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803C9D1C 003C6C7C 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803C9D20 003C6C80 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803C9D24 003C6C84 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803C9D28 003C6C88 7C 9D 23 79 */ or. r29, r4, r4 +/* 803C9D2C 003C6C8C 93 81 00 18 */ stw r28, 0x18(r1) +/* 803C9D30 003C6C90 3B 83 00 00 */ addi r28, r3, 0 +/* 803C9D34 003C6C94 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C9D38 003C6C98 57 84 40 2E */ slwi r4, r28, 8 +/* 803C9D3C 003C6C9C 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9D40 003C6CA0 7F E0 22 14 */ add r31, r0, r4 +/* 803C9D44 003C6CA4 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803C9D48 003C6CA8 40 82 00 20 */ bne lbl_803C9D68 +/* 803C9D4C 003C6CAC 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803C9D50 003C6CB0 3C 60 80 3F */ lis r3, lbl_803F7170@ha +/* 803C9D54 003C6CB4 88 03 71 70 */ lbz r0, lbl_803F7170@l(r3) +/* 803C9D58 003C6CB8 88 84 00 00 */ lbz r4, 0(r4) +/* 803C9D5C 003C6CBC 7C 04 00 40 */ cmplw r4, r0 +/* 803C9D60 003C6CC0 41 82 00 08 */ beq lbl_803C9D68 +/* 803C9D64 003C6CC4 3B A0 00 03 */ li r29, 3 +lbl_803C9D68: +/* 803C9D68 003C6CC8 2C 1D 00 00 */ cmpwi r29, 0 +/* 803C9D6C 003C6CCC 40 82 00 24 */ bne lbl_803C9D90 +/* 803C9D70 003C6CD0 3C 60 80 3D */ lis r3, _F29@ha +/* 803C9D74 003C6CD4 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 803C9D78 003C6CD8 38 C3 9D E0 */ addi r6, r3, _F29@l +/* 803C9D7C 003C6CDC 38 7C 00 00 */ addi r3, r28, 0 +/* 803C9D80 003C6CE0 38 9E 00 18 */ addi r4, r30, 0x18 +/* 803C9D84 003C6CE4 48 00 0B FD */ bl GBAReadAsync +/* 803C9D88 003C6CE8 7C 7D 1B 79 */ or. r29, r3, r3 +/* 803C9D8C 003C6CEC 41 82 00 30 */ beq lbl_803C9DBC +lbl_803C9D90: +/* 803C9D90 003C6CF0 38 00 00 00 */ li r0, 0 +/* 803C9D94 003C6CF4 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803C9D98 003C6CF8 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803C9D9C 003C6CFC 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803C9DA0 003C6D00 28 0C 00 00 */ cmplwi r12, 0 +/* 803C9DA4 003C6D04 41 82 00 18 */ beq lbl_803C9DBC +/* 803C9DA8 003C6D08 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803C9DAC 003C6D0C 7D 88 03 A6 */ mtlr r12 +/* 803C9DB0 003C6D10 38 7C 00 00 */ addi r3, r28, 0 +/* 803C9DB4 003C6D14 38 9D 00 00 */ addi r4, r29, 0 +/* 803C9DB8 003C6D18 4E 80 00 21 */ blrl +lbl_803C9DBC: +/* 803C9DBC 003C6D1C 93 BF 00 20 */ stw r29, 0x20(r31) +/* 803C9DC0 003C6D20 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803C9DC4 003C6D24 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803C9DC8 003C6D28 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803C9DCC 003C6D2C 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803C9DD0 003C6D30 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803C9DD4 003C6D34 38 21 00 28 */ addi r1, r1, 0x28 +/* 803C9DD8 003C6D38 7C 08 03 A6 */ mtlr r0 +/* 803C9DDC 003C6D3C 4E 80 00 20 */ blr + +.global _F29 +_F29: +/* 803C9DE0 003C6D40 7C 08 02 A6 */ mflr r0 +/* 803C9DE4 003C6D44 54 65 40 2E */ slwi r5, r3, 8 +/* 803C9DE8 003C6D48 90 01 00 04 */ stw r0, 4(r1) +/* 803C9DEC 003C6D4C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C9DF0 003C6D50 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803C9DF4 003C6D54 93 C1 00 18 */ stw r30, 0x18(r1) +/* 803C9DF8 003C6D58 7C 9E 23 79 */ or. r30, r4, r4 +/* 803C9DFC 003C6D5C 3C 80 80 57 */ lis r4, __GBA@ha +/* 803C9E00 003C6D60 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803C9E04 003C6D64 7F E0 2A 14 */ add r31, r0, r5 +/* 803C9E08 003C6D68 38 9F 00 40 */ addi r4, r31, 0x40 +/* 803C9E0C 003C6D6C 40 82 00 10 */ bne lbl_803C9E1C +/* 803C9E10 003C6D70 38 84 00 18 */ addi r4, r4, 0x18 +/* 803C9E14 003C6D74 48 00 12 B1 */ bl __GBAX02 +/* 803C9E18 003C6D78 48 00 00 2C */ b lbl_803C9E44 +lbl_803C9E1C: +/* 803C9E1C 003C6D7C 38 00 00 00 */ li r0, 0 +/* 803C9E20 003C6D80 90 04 00 2C */ stw r0, 0x2c(r4) +/* 803C9E24 003C6D84 90 04 00 28 */ stw r0, 0x28(r4) +/* 803C9E28 003C6D88 81 84 00 14 */ lwz r12, 0x14(r4) +/* 803C9E2C 003C6D8C 28 0C 00 00 */ cmplwi r12, 0 +/* 803C9E30 003C6D90 41 82 00 14 */ beq lbl_803C9E44 +/* 803C9E34 003C6D94 90 04 00 14 */ stw r0, 0x14(r4) +/* 803C9E38 003C6D98 7D 88 03 A6 */ mtlr r12 +/* 803C9E3C 003C6D9C 38 9E 00 00 */ addi r4, r30, 0 +/* 803C9E40 003C6DA0 4E 80 00 21 */ blrl +lbl_803C9E44: +/* 803C9E44 003C6DA4 93 DF 00 20 */ stw r30, 0x20(r31) +/* 803C9E48 003C6DA8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803C9E4C 003C6DAC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803C9E50 003C6DB0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 803C9E54 003C6DB4 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C9E58 003C6DB8 7C 08 03 A6 */ mtlr r0 +/* 803C9E5C 003C6DBC 4E 80 00 20 */ blr + +.global __GBAX01 +__GBAX01: +/* 803C9E60 003C6DC0 7C 08 02 A6 */ mflr r0 +/* 803C9E64 003C6DC4 3C A0 80 3F */ lis r5, lbl_803F7170@ha +/* 803C9E68 003C6DC8 90 01 00 04 */ stw r0, 4(r1) +/* 803C9E6C 003C6DCC 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803C9E70 003C6DD0 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803C9E74 003C6DD4 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803C9E78 003C6DD8 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803C9E7C 003C6DDC 3B A3 00 00 */ addi r29, r3, 0 +/* 803C9E80 003C6DE0 3C 60 80 57 */ lis r3, __GBA@ha +/* 803C9E84 003C6DE4 93 81 00 18 */ stw r28, 0x18(r1) +/* 803C9E88 003C6DE8 7C 9C 23 79 */ or. r28, r4, r4 +/* 803C9E8C 003C6DEC 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803C9E90 003C6DF0 57 A4 40 2E */ slwi r4, r29, 8 +/* 803C9E94 003C6DF4 7F E0 22 14 */ add r31, r0, r4 +/* 803C9E98 003C6DF8 38 65 71 70 */ addi r3, r5, lbl_803F7170@l +/* 803C9E9C 003C6DFC 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803C9EA0 003C6E00 40 82 01 44 */ bne lbl_803C9FE4 +/* 803C9EA4 003C6E04 80 9F 00 F8 */ lwz r4, 0xf8(r31) +/* 803C9EA8 003C6E08 80 04 00 20 */ lwz r0, 0x20(r4) +/* 803C9EAC 003C6E0C 90 1E 00 58 */ stw r0, 0x58(r30) +/* 803C9EB0 003C6E10 80 9F 00 F8 */ lwz r4, 0xf8(r31) +/* 803C9EB4 003C6E14 80 04 00 24 */ lwz r0, 0x24(r4) +/* 803C9EB8 003C6E18 90 1E 00 5C */ stw r0, 0x5c(r30) +/* 803C9EBC 003C6E1C 88 1E 00 1B */ lbz r0, 0x1b(r30) +/* 803C9EC0 003C6E20 28 00 00 00 */ cmplwi r0, 0 +/* 803C9EC4 003C6E24 41 82 00 44 */ beq lbl_803C9F08 +/* 803C9EC8 003C6E28 88 1E 00 1A */ lbz r0, 0x1a(r30) +/* 803C9ECC 003C6E2C 28 00 00 00 */ cmplwi r0, 0 +/* 803C9ED0 003C6E30 41 82 00 38 */ beq lbl_803C9F08 +/* 803C9ED4 003C6E34 88 03 00 05 */ lbz r0, 5(r3) +/* 803C9ED8 003C6E38 80 9E 00 58 */ lwz r4, 0x58(r30) +/* 803C9EDC 003C6E3C 54 00 48 2C */ slwi r0, r0, 9 +/* 803C9EE0 003C6E40 7C 80 00 39 */ and. r0, r4, r0 +/* 803C9EE4 003C6E44 41 82 00 24 */ beq lbl_803C9F08 +/* 803C9EE8 003C6E48 88 1E 00 19 */ lbz r0, 0x19(r30) +/* 803C9EEC 003C6E4C 28 00 00 00 */ cmplwi r0, 0 +/* 803C9EF0 003C6E50 41 82 00 18 */ beq lbl_803C9F08 +/* 803C9EF4 003C6E54 54 80 8B FF */ rlwinm. r0, r4, 0x11, 0xf, 0x1f +/* 803C9EF8 003C6E58 41 82 00 10 */ beq lbl_803C9F08 +/* 803C9EFC 003C6E5C 88 1E 00 18 */ lbz r0, 0x18(r30) +/* 803C9F00 003C6E60 28 00 00 00 */ cmplwi r0, 0 +/* 803C9F04 003C6E64 40 82 00 0C */ bne lbl_803C9F10 +lbl_803C9F08: +/* 803C9F08 003C6E68 3B 80 00 03 */ li r28, 3 +/* 803C9F0C 003C6E6C 48 00 00 D8 */ b lbl_803C9FE4 +lbl_803C9F10: +/* 803C9F10 003C6E70 88 A3 00 24 */ lbz r5, 0x24(r3) +/* 803C9F14 003C6E74 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 803C9F18 003C6E78 88 03 00 24 */ lbz r0, 0x24(r3) +/* 803C9F1C 003C6E7C 7C A5 28 F8 */ nor r5, r5, r5 +/* 803C9F20 003C6E80 7C 04 02 14 */ add r0, r4, r0 +/* 803C9F24 003C6E84 7C A0 00 38 */ and r0, r5, r0 +/* 803C9F28 003C6E88 90 1E 00 20 */ stw r0, 0x20(r30) +/* 803C9F2C 003C6E8C 88 A3 00 14 */ lbz r5, 0x14(r3) +/* 803C9F30 003C6E90 88 83 00 21 */ lbz r4, 0x21(r3) +/* 803C9F34 003C6E94 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 803C9F38 003C6E98 7C A4 20 30 */ slw r4, r5, r4 +/* 803C9F3C 003C6E9C 7C 00 20 00 */ cmpw r0, r4 +/* 803C9F40 003C6EA0 40 80 00 08 */ bge lbl_803C9F48 +/* 803C9F44 003C6EA4 90 9E 00 20 */ stw r4, 0x20(r30) +lbl_803C9F48: +/* 803C9F48 003C6EA8 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 803C9F4C 003C6EAC 90 1E 00 64 */ stw r0, 0x64(r30) +/* 803C9F50 003C6EB0 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 803C9F54 003C6EB4 7C 04 00 50 */ subf r0, r4, r0 +/* 803C9F58 003C6EB8 90 1E 00 20 */ stw r0, 0x20(r30) +/* 803C9F5C 003C6EBC 80 9E 00 20 */ lwz r4, 0x20(r30) +/* 803C9F60 003C6EC0 88 03 00 20 */ lbz r0, 0x20(r3) +/* 803C9F64 003C6EC4 7C 80 06 30 */ sraw r0, r4, r0 +/* 803C9F68 003C6EC8 90 1E 00 20 */ stw r0, 0x20(r30) +/* 803C9F6C 003C6ECC 80 1E 00 5C */ lwz r0, 0x5c(r30) +/* 803C9F70 003C6ED0 98 1E 00 1C */ stb r0, 0x1c(r30) +/* 803C9F74 003C6ED4 80 1E 00 5C */ lwz r0, 0x5c(r30) +/* 803C9F78 003C6ED8 7C 00 46 70 */ srawi r0, r0, 8 +/* 803C9F7C 003C6EDC 98 1E 00 1D */ stb r0, 0x1d(r30) +/* 803C9F80 003C6EE0 80 1E 00 5C */ lwz r0, 0x5c(r30) +/* 803C9F84 003C6EE4 7C 00 C6 70 */ srawi r0, r0, 0x18 +/* 803C9F88 003C6EE8 98 1E 00 1F */ stb r0, 0x1f(r30) +/* 803C9F8C 003C6EEC 80 1E 00 5C */ lwz r0, 0x5c(r30) +/* 803C9F90 003C6EF0 7C 00 86 70 */ srawi r0, r0, 0x10 +/* 803C9F94 003C6EF4 98 1E 00 1E */ stb r0, 0x1e(r30) +/* 803C9F98 003C6EF8 88 83 00 26 */ lbz r4, 0x26(r3) +/* 803C9F9C 003C6EFC 88 03 00 22 */ lbz r0, 0x22(r3) +/* 803C9FA0 003C6F00 38 84 00 01 */ addi r4, r4, 1 +/* 803C9FA4 003C6F04 7C 80 00 30 */ slw r0, r4, r0 +/* 803C9FA8 003C6F08 90 1E 00 38 */ stw r0, 0x38(r30) +/* 803C9FAC 003C6F0C 88 03 00 08 */ lbz r0, 8(r3) +/* 803C9FB0 003C6F10 90 1E 00 34 */ stw r0, 0x34(r30) +/* 803C9FB4 003C6F14 4B FB B3 F5 */ bl OSGetTime +/* 803C9FB8 003C6F18 90 9E 00 2C */ stw r4, 0x2c(r30) +/* 803C9FBC 003C6F1C 3C 80 80 3D */ lis r4, _F31@ha +/* 803C9FC0 003C6F20 38 C4 A0 3C */ addi r6, r4, _F31@l +/* 803C9FC4 003C6F24 90 7E 00 28 */ stw r3, 0x28(r30) +/* 803C9FC8 003C6F28 38 00 00 01 */ li r0, 1 +/* 803C9FCC 003C6F2C 38 7D 00 00 */ addi r3, r29, 0 +/* 803C9FD0 003C6F30 90 1E 00 30 */ stw r0, 0x30(r30) +/* 803C9FD4 003C6F34 38 9E 00 1C */ addi r4, r30, 0x1c +/* 803C9FD8 003C6F38 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 803C9FDC 003C6F3C 48 00 0A D5 */ bl GBAWriteAsync +/* 803C9FE0 003C6F40 7C 7C 1B 78 */ mr r28, r3 +lbl_803C9FE4: +/* 803C9FE4 003C6F44 2C 1C 00 00 */ cmpwi r28, 0 +/* 803C9FE8 003C6F48 41 82 00 30 */ beq lbl_803CA018 +/* 803C9FEC 003C6F4C 38 00 00 00 */ li r0, 0 +/* 803C9FF0 003C6F50 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803C9FF4 003C6F54 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803C9FF8 003C6F58 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803C9FFC 003C6F5C 28 0C 00 00 */ cmplwi r12, 0 +/* 803CA000 003C6F60 41 82 00 18 */ beq lbl_803CA018 +/* 803CA004 003C6F64 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803CA008 003C6F68 7D 88 03 A6 */ mtlr r12 +/* 803CA00C 003C6F6C 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA010 003C6F70 38 9C 00 00 */ addi r4, r28, 0 +/* 803CA014 003C6F74 4E 80 00 21 */ blrl +lbl_803CA018: +/* 803CA018 003C6F78 93 9F 00 20 */ stw r28, 0x20(r31) +/* 803CA01C 003C6F7C 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803CA020 003C6F80 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803CA024 003C6F84 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803CA028 003C6F88 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803CA02C 003C6F8C 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803CA030 003C6F90 38 21 00 28 */ addi r1, r1, 0x28 +/* 803CA034 003C6F94 7C 08 03 A6 */ mtlr r0 +/* 803CA038 003C6F98 4E 80 00 20 */ blr + +.global _F31 +_F31: +/* 803CA03C 003C6F9C 7C 08 02 A6 */ mflr r0 +/* 803CA040 003C6FA0 3C A0 80 3F */ lis r5, lbl_803F7170@ha +/* 803CA044 003C6FA4 90 01 00 04 */ stw r0, 4(r1) +/* 803CA048 003C6FA8 94 21 FF C8 */ stwu r1, -0x38(r1) +/* 803CA04C 003C6FAC 93 E1 00 34 */ stw r31, 0x34(r1) +/* 803CA050 003C6FB0 93 C1 00 30 */ stw r30, 0x30(r1) +/* 803CA054 003C6FB4 93 A1 00 2C */ stw r29, 0x2c(r1) +/* 803CA058 003C6FB8 3B A3 00 00 */ addi r29, r3, 0 +/* 803CA05C 003C6FBC 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CA060 003C6FC0 93 81 00 28 */ stw r28, 0x28(r1) +/* 803CA064 003C6FC4 7C 9C 23 79 */ or. r28, r4, r4 +/* 803CA068 003C6FC8 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CA06C 003C6FCC 57 A4 40 2E */ slwi r4, r29, 8 +/* 803CA070 003C6FD0 7F E0 22 14 */ add r31, r0, r4 +/* 803CA074 003C6FD4 38 65 71 70 */ addi r3, r5, lbl_803F7170@l +/* 803CA078 003C6FD8 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803CA07C 003C6FDC 40 82 04 00 */ bne lbl_803CA47C +/* 803CA080 003C6FE0 80 1E 00 30 */ lwz r0, 0x30(r30) +/* 803CA084 003C6FE4 2C 00 00 00 */ cmpwi r0, 0 +/* 803CA088 003C6FE8 41 82 00 10 */ beq lbl_803CA098 +/* 803CA08C 003C6FEC 38 00 00 00 */ li r0, 0 +/* 803CA090 003C6FF0 90 1E 00 30 */ stw r0, 0x30(r30) +/* 803CA094 003C6FF4 48 00 00 60 */ b lbl_803CA0F4 +lbl_803CA098: +/* 803CA098 003C6FF8 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803CA09C 003C6FFC 88 03 00 14 */ lbz r0, 0x14(r3) +/* 803CA0A0 003C7000 88 A4 00 00 */ lbz r5, 0(r4) +/* 803CA0A4 003C7004 7C A0 00 39 */ and. r0, r5, r0 +/* 803CA0A8 003C7008 41 82 00 30 */ beq lbl_803CA0D8 +/* 803CA0AC 003C700C 88 83 00 2A */ lbz r4, 0x2a(r3) +/* 803CA0B0 003C7010 88 03 00 21 */ lbz r0, 0x21(r3) +/* 803CA0B4 003C7014 7C A6 20 38 */ and r6, r5, r4 +/* 803CA0B8 003C7018 80 BE 00 34 */ lwz r5, 0x34(r30) +/* 803CA0BC 003C701C 88 83 00 21 */ lbz r4, 0x21(r3) +/* 803CA0C0 003C7020 7C C6 06 30 */ sraw r6, r6, r0 +/* 803CA0C4 003C7024 88 03 00 1F */ lbz r0, 0x1f(r3) +/* 803CA0C8 003C7028 7C A4 20 38 */ and r4, r5, r4 +/* 803CA0CC 003C702C 7C 80 06 30 */ sraw r0, r4, r0 +/* 803CA0D0 003C7030 7C 06 00 00 */ cmpw r6, r0 +/* 803CA0D4 003C7034 41 82 00 0C */ beq lbl_803CA0E0 +lbl_803CA0D8: +/* 803CA0D8 003C7038 3B 80 00 03 */ li r28, 3 +/* 803CA0DC 003C703C 48 00 03 A0 */ b lbl_803CA47C +lbl_803CA0E0: +/* 803CA0E0 003C7040 88 83 00 17 */ lbz r4, 0x17(r3) +/* 803CA0E4 003C7044 88 03 00 19 */ lbz r0, 0x19(r3) +/* 803CA0E8 003C7048 7C 04 00 50 */ subf r0, r4, r0 +/* 803CA0EC 003C704C 7C 00 28 50 */ subf r0, r0, r5 +/* 803CA0F0 003C7050 90 1E 00 34 */ stw r0, 0x34(r30) +lbl_803CA0F4: +/* 803CA0F4 003C7054 80 BE 00 34 */ lwz r5, 0x34(r30) +/* 803CA0F8 003C7058 80 1E 00 64 */ lwz r0, 0x64(r30) +/* 803CA0FC 003C705C 7C 05 00 00 */ cmpw r5, r0 +/* 803CA100 003C7060 41 81 03 58 */ bgt lbl_803CA458 +/* 803CA104 003C7064 40 80 01 68 */ bge lbl_803CA26C +/* 803CA108 003C7068 38 83 00 1D */ addi r4, r3, 0x1d +/* 803CA10C 003C706C 88 03 00 1D */ lbz r0, 0x1d(r3) +/* 803CA110 003C7070 88 84 00 00 */ lbz r4, 0(r4) +/* 803CA114 003C7074 90 9E 00 20 */ stw r4, 0x20(r30) +/* 803CA118 003C7078 48 00 00 48 */ b lbl_803CA160 +lbl_803CA11C: +/* 803CA11C 003C707C 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 803CA120 003C7080 2C 04 00 00 */ cmpwi r4, 0 +/* 803CA124 003C7084 41 82 00 30 */ beq lbl_803CA154 +/* 803CA128 003C7088 80 DE 00 08 */ lwz r6, 8(r30) +/* 803CA12C 003C708C 38 86 00 01 */ addi r4, r6, 1 +/* 803CA130 003C7090 90 9E 00 08 */ stw r4, 8(r30) +/* 803CA134 003C7094 88 A3 00 25 */ lbz r5, 0x25(r3) +/* 803CA138 003C7098 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 803CA13C 003C709C 7C A7 29 D6 */ mullw r5, r7, r5 +/* 803CA140 003C70A0 88 C6 00 00 */ lbz r6, 0(r6) +/* 803CA144 003C70A4 38 84 FF FF */ addi r4, r4, -1 +/* 803CA148 003C70A8 7C C5 28 30 */ slw r5, r6, r5 +/* 803CA14C 003C70AC 90 9E 00 0C */ stw r4, 0xc(r30) +/* 803CA150 003C70B0 7C 00 2B 78 */ or r0, r0, r5 +lbl_803CA154: +/* 803CA154 003C70B4 80 9E 00 20 */ lwz r4, 0x20(r30) +/* 803CA158 003C70B8 38 84 00 01 */ addi r4, r4, 1 +/* 803CA15C 003C70BC 90 9E 00 20 */ stw r4, 0x20(r30) +lbl_803CA160: +/* 803CA160 003C70C0 80 FE 00 20 */ lwz r7, 0x20(r30) +/* 803CA164 003C70C4 88 83 00 21 */ lbz r4, 0x21(r3) +/* 803CA168 003C70C8 7C 07 20 00 */ cmpw r7, r4 +/* 803CA16C 003C70CC 41 80 FF B0 */ blt lbl_803CA11C +/* 803CA170 003C70D0 38 C3 00 26 */ addi r6, r3, 0x26 +/* 803CA174 003C70D4 80 BE 00 34 */ lwz r5, 0x34(r30) +/* 803CA178 003C70D8 88 83 00 26 */ lbz r4, 0x26(r3) +/* 803CA17C 003C70DC 7C 05 20 00 */ cmpw r5, r4 +/* 803CA180 003C70E0 40 82 00 0C */ bne lbl_803CA18C +/* 803CA184 003C70E4 90 1E 00 60 */ stw r0, 0x60(r30) +/* 803CA188 003C70E8 48 00 00 18 */ b lbl_803CA1A0 +lbl_803CA18C: +/* 803CA18C 003C70EC 88 83 00 27 */ lbz r4, 0x27(r3) +/* 803CA190 003C70F0 7C 05 20 00 */ cmpw r5, r4 +/* 803CA194 003C70F4 40 82 00 0C */ bne lbl_803CA1A0 +/* 803CA198 003C70F8 88 03 00 25 */ lbz r0, 0x25(r3) +/* 803CA19C 003C70FC 7F A0 00 30 */ slw r0, r29, r0 +lbl_803CA1A0: +/* 803CA1A0 003C7100 80 BE 00 34 */ lwz r5, 0x34(r30) +/* 803CA1A4 003C7104 88 83 00 02 */ lbz r4, 2(r3) +/* 803CA1A8 003C7108 7C 05 20 00 */ cmpw r5, r4 +/* 803CA1AC 003C710C 41 80 00 78 */ blt lbl_803CA224 +/* 803CA1B0 003C7110 38 83 00 2B */ addi r4, r3, 0x2b +/* 803CA1B4 003C7114 88 C6 00 00 */ lbz r6, 0(r6) +/* 803CA1B8 003C7118 88 A3 00 2B */ lbz r5, 0x2b(r3) +/* 803CA1BC 003C711C 7C 09 03 78 */ mr r9, r0 +/* 803CA1C0 003C7120 88 84 00 00 */ lbz r4, 0(r4) +/* 803CA1C4 003C7124 54 C7 40 2E */ slwi r7, r6, 8 +/* 803CA1C8 003C7128 54 A5 20 36 */ slwi r5, r5, 4 +/* 803CA1CC 003C712C 88 C3 00 28 */ lbz r6, 0x28(r3) +/* 803CA1D0 003C7130 7C 85 20 50 */ subf r4, r5, r4 +/* 803CA1D4 003C7134 88 A3 00 23 */ lbz r5, 0x23(r3) +/* 803CA1D8 003C7138 7C 86 22 14 */ add r4, r6, r4 +/* 803CA1DC 003C713C 81 1E 00 38 */ lwz r8, 0x38(r30) +/* 803CA1E0 003C7140 7C 85 20 50 */ subf r4, r5, r4 +/* 803CA1E4 003C7144 88 C3 00 14 */ lbz r6, 0x14(r3) +/* 803CA1E8 003C7148 7C A7 22 14 */ add r5, r7, r4 +/* 803CA1EC 003C714C 48 00 00 28 */ b lbl_803CA214 +lbl_803CA1F0: +/* 803CA1F0 003C7150 7D 24 42 78 */ xor r4, r9, r8 +/* 803CA1F4 003C7154 54 84 07 FF */ clrlwi. r4, r4, 0x1f +/* 803CA1F8 003C7158 41 82 00 10 */ beq lbl_803CA208 +/* 803CA1FC 003C715C 55 08 F8 7E */ srwi r8, r8, 1 +/* 803CA200 003C7160 7D 08 2A 78 */ xor r8, r8, r5 +/* 803CA204 003C7164 48 00 00 08 */ b lbl_803CA20C +lbl_803CA208: +/* 803CA208 003C7168 55 08 F8 7E */ srwi r8, r8, 1 +lbl_803CA20C: +/* 803CA20C 003C716C 55 29 F8 7E */ srwi r9, r9, 1 +/* 803CA210 003C7170 38 C6 FF FF */ addi r6, r6, -1 +lbl_803CA214: +/* 803CA214 003C7174 88 83 00 1E */ lbz r4, 0x1e(r3) +/* 803CA218 003C7178 7C 06 20 00 */ cmpw r6, r4 +/* 803CA21C 003C717C 41 81 FF D4 */ bgt lbl_803CA1F0 +/* 803CA220 003C7180 91 1E 00 38 */ stw r8, 0x38(r30) +lbl_803CA224: +/* 803CA224 003C7184 88 83 00 28 */ lbz r4, 0x28(r3) +/* 803CA228 003C7188 80 BE 00 34 */ lwz r5, 0x34(r30) +/* 803CA22C 003C718C 38 84 01 00 */ addi r4, r4, 0x100 +/* 803CA230 003C7190 7C 05 20 00 */ cmpw r5, r4 +/* 803CA234 003C7194 40 82 00 0C */ bne lbl_803CA240 +/* 803CA238 003C7198 90 1E 00 3C */ stw r0, 0x3c(r30) +/* 803CA23C 003C719C 48 00 00 3C */ b lbl_803CA278 +lbl_803CA240: +/* 803CA240 003C71A0 88 83 00 01 */ lbz r4, 1(r3) +/* 803CA244 003C71A4 38 84 01 00 */ addi r4, r4, 0x100 +/* 803CA248 003C71A8 7C 05 20 00 */ cmpw r5, r4 +/* 803CA24C 003C71AC 40 82 00 2C */ bne lbl_803CA278 +/* 803CA250 003C71B0 88 83 00 07 */ lbz r4, 7(r3) +/* 803CA254 003C71B4 90 9E 00 20 */ stw r4, 0x20(r30) +/* 803CA258 003C71B8 80 9E 00 20 */ lwz r4, 0x20(r30) +/* 803CA25C 003C71BC 54 84 10 3A */ slwi r4, r4, 2 +/* 803CA260 003C71C0 7C 9E 22 14 */ add r4, r30, r4 +/* 803CA264 003C71C4 90 04 00 3C */ stw r0, 0x3c(r4) +/* 803CA268 003C71C8 48 00 00 10 */ b lbl_803CA278 +lbl_803CA26C: +/* 803CA26C 003C71CC 80 9E 00 38 */ lwz r4, 0x38(r30) +/* 803CA270 003C71D0 54 A0 80 1E */ slwi r0, r5, 0x10 +/* 803CA274 003C71D4 7C 80 03 78 */ or r0, r4, r0 +lbl_803CA278: +/* 803CA278 003C71D8 80 BE 00 34 */ lwz r5, 0x34(r30) +/* 803CA27C 003C71DC 88 83 00 2B */ lbz r4, 0x2b(r3) +/* 803CA280 003C71E0 7C 05 20 00 */ cmpw r5, r4 +/* 803CA284 003C71E4 40 81 00 98 */ ble lbl_803CA31C +/* 803CA288 003C71E8 88 A3 00 25 */ lbz r5, 0x25(r3) +/* 803CA28C 003C71EC 38 83 00 0B */ addi r4, r3, 0xb +/* 803CA290 003C71F0 88 C3 00 18 */ lbz r6, 0x18(r3) +/* 803CA294 003C71F4 89 03 00 15 */ lbz r8, 0x15(r3) +/* 803CA298 003C71F8 7C C7 28 30 */ slw r7, r6, r5 +/* 803CA29C 003C71FC 88 C3 00 18 */ lbz r6, 0x18(r3) +/* 803CA2A0 003C7200 88 A3 00 2C */ lbz r5, 0x2c(r3) +/* 803CA2A4 003C7204 7D 07 3B 78 */ or r7, r8, r7 +/* 803CA2A8 003C7208 89 23 00 17 */ lbz r9, 0x17(r3) +/* 803CA2AC 003C720C 7C C5 28 30 */ slw r5, r6, r5 +/* 803CA2B0 003C7210 89 03 00 2A */ lbz r8, 0x2a(r3) +/* 803CA2B4 003C7214 7C E5 2B 78 */ or r5, r7, r5 +/* 803CA2B8 003C7218 81 5E 00 58 */ lwz r10, 0x58(r30) +/* 803CA2BC 003C721C 7D 26 40 30 */ slw r6, r9, r8 +/* 803CA2C0 003C7220 88 E3 00 1A */ lbz r7, 0x1a(r3) +/* 803CA2C4 003C7224 7C C5 2B 78 */ or r5, r6, r5 +/* 803CA2C8 003C7228 88 C3 00 1B */ lbz r6, 0x1b(r3) +/* 803CA2CC 003C722C 7C AA 29 D6 */ mullw r5, r10, r5 +/* 803CA2D0 003C7230 7C C7 30 50 */ subf r6, r7, r6 +/* 803CA2D4 003C7234 7C A6 28 50 */ subf r5, r6, r5 +/* 803CA2D8 003C7238 90 BE 00 58 */ stw r5, 0x58(r30) +/* 803CA2DC 003C723C 88 E3 00 0B */ lbz r7, 0xb(r3) +/* 803CA2E0 003C7240 81 3E 00 58 */ lwz r9, 0x58(r30) +/* 803CA2E4 003C7244 81 1E 00 34 */ lwz r8, 0x34(r30) +/* 803CA2E8 003C7248 54 E7 A0 16 */ slwi r7, r7, 0x14 +/* 803CA2EC 003C724C 88 A3 00 0B */ lbz r5, 0xb(r3) +/* 803CA2F0 003C7250 7C 00 4A 78 */ xor r0, r0, r9 +/* 803CA2F4 003C7254 7D 08 3A 14 */ add r8, r8, r7 +/* 803CA2F8 003C7258 88 84 00 00 */ lbz r4, 0(r4) +/* 803CA2FC 003C725C 50 A4 C0 0E */ rlwimi r4, r5, 0x18, 0, 7 +/* 803CA300 003C7260 88 C3 00 13 */ lbz r6, 0x13(r3) +/* 803CA304 003C7264 7C A8 00 D0 */ neg r5, r8 +/* 803CA308 003C7268 88 E3 00 12 */ lbz r7, 0x12(r3) +/* 803CA30C 003C726C 50 C4 82 1E */ rlwimi r4, r6, 0x10, 8, 0xf +/* 803CA310 003C7270 7C 00 2A 78 */ xor r0, r0, r5 +/* 803CA314 003C7274 50 E4 44 2E */ rlwimi r4, r7, 8, 0x10, 0x17 +/* 803CA318 003C7278 7C 00 22 78 */ xor r0, r0, r4 +lbl_803CA31C: +/* 803CA31C 003C727C 88 83 00 00 */ lbz r4, 0(r3) +/* 803CA320 003C7280 7C 04 24 30 */ srw r4, r0, r4 +/* 803CA324 003C7284 98 9E 00 1F */ stb r4, 0x1f(r30) +/* 803CA328 003C7288 88 83 00 1E */ lbz r4, 0x1e(r3) +/* 803CA32C 003C728C 7C 04 24 30 */ srw r4, r0, r4 +/* 803CA330 003C7290 98 9E 00 1C */ stb r4, 0x1c(r30) +/* 803CA334 003C7294 88 83 00 29 */ lbz r4, 0x29(r3) +/* 803CA338 003C7298 7C 04 24 30 */ srw r4, r0, r4 +/* 803CA33C 003C729C 98 9E 00 1D */ stb r4, 0x1d(r30) +/* 803CA340 003C72A0 88 83 00 2A */ lbz r4, 0x2a(r3) +/* 803CA344 003C72A4 7C 04 24 30 */ srw r4, r0, r4 +/* 803CA348 003C72A8 98 9E 00 1E */ stb r4, 0x1e(r30) +/* 803CA34C 003C72AC 88 A3 00 01 */ lbz r5, 1(r3) +/* 803CA350 003C72B0 88 83 00 01 */ lbz r4, 1(r3) +/* 803CA354 003C72B4 80 DE 00 34 */ lwz r6, 0x34(r30) +/* 803CA358 003C72B8 7C 85 22 14 */ add r4, r5, r4 +/* 803CA35C 003C72BC 7C 06 20 00 */ cmpw r6, r4 +/* 803CA360 003C72C0 40 82 00 08 */ bne lbl_803CA368 +/* 803CA364 003C72C4 90 1E 00 44 */ stw r0, 0x44(r30) +lbl_803CA368: +/* 803CA368 003C72C8 80 9E 00 20 */ lwz r4, 0x20(r30) +/* 803CA36C 003C72CC 88 63 00 21 */ lbz r3, 0x21(r3) +/* 803CA370 003C72D0 7C 04 18 00 */ cmpw r4, r3 +/* 803CA374 003C72D4 40 80 00 C4 */ bge lbl_803CA438 +/* 803CA378 003C72D8 20 64 00 01 */ subfic r3, r4, 1 +/* 803CA37C 003C72DC 20 63 00 03 */ subfic r3, r3, 3 +/* 803CA380 003C72E0 54 63 10 3A */ slwi r3, r3, 2 +/* 803CA384 003C72E4 7C 7E 1A 14 */ add r3, r30, r3 +/* 803CA388 003C72E8 90 03 00 3C */ stw r0, 0x3c(r3) +/* 803CA38C 003C72EC 80 BE 00 20 */ lwz r5, 0x20(r30) +/* 803CA390 003C72F0 20 05 00 01 */ subfic r0, r5, 1 +/* 803CA394 003C72F4 20 60 00 02 */ subfic r3, r0, 2 +/* 803CA398 003C72F8 20 05 00 04 */ subfic r0, r5, 4 +/* 803CA39C 003C72FC 54 63 10 3A */ slwi r3, r3, 2 +/* 803CA3A0 003C7300 54 00 10 3A */ slwi r0, r0, 2 +/* 803CA3A4 003C7304 7C 9E 1A 14 */ add r4, r30, r3 +/* 803CA3A8 003C7308 7C 7E 02 14 */ add r3, r30, r0 +/* 803CA3AC 003C730C 80 84 00 3C */ lwz r4, 0x3c(r4) +/* 803CA3B0 003C7310 80 63 00 3C */ lwz r3, 0x3c(r3) +/* 803CA3B4 003C7314 20 05 00 05 */ subfic r0, r5, 5 +/* 803CA3B8 003C7318 54 00 10 3A */ slwi r0, r0, 2 +/* 803CA3BC 003C731C 7C 84 19 D6 */ mullw r4, r4, r3 +/* 803CA3C0 003C7320 7C 7E 02 14 */ add r3, r30, r0 +/* 803CA3C4 003C7324 90 83 00 3C */ stw r4, 0x3c(r3) +/* 803CA3C8 003C7328 80 1E 00 20 */ lwz r0, 0x20(r30) +/* 803CA3CC 003C732C 20 A0 00 01 */ subfic r5, r0, 1 +/* 803CA3D0 003C7330 54 A3 10 3A */ slwi r3, r5, 2 +/* 803CA3D4 003C7334 54 00 10 3A */ slwi r0, r0, 2 +/* 803CA3D8 003C7338 7C 9E 1A 14 */ add r4, r30, r3 +/* 803CA3DC 003C733C 7C 7E 02 14 */ add r3, r30, r0 +/* 803CA3E0 003C7340 80 84 00 3C */ lwz r4, 0x3c(r4) +/* 803CA3E4 003C7344 80 63 00 3C */ lwz r3, 0x3c(r3) +/* 803CA3E8 003C7348 20 05 00 05 */ subfic r0, r5, 5 +/* 803CA3EC 003C734C 54 00 10 3A */ slwi r0, r0, 2 +/* 803CA3F0 003C7350 7C 84 19 D6 */ mullw r4, r4, r3 +/* 803CA3F4 003C7354 7C 7E 02 14 */ add r3, r30, r0 +/* 803CA3F8 003C7358 90 83 00 3C */ stw r4, 0x3c(r3) +/* 803CA3FC 003C735C 80 BE 00 20 */ lwz r5, 0x20(r30) +/* 803CA400 003C7360 20 65 00 01 */ subfic r3, r5, 1 +/* 803CA404 003C7364 20 05 00 04 */ subfic r0, r5, 4 +/* 803CA408 003C7368 7C 63 00 D0 */ neg r3, r3 +/* 803CA40C 003C736C 54 63 10 3A */ slwi r3, r3, 2 +/* 803CA410 003C7370 54 00 10 3A */ slwi r0, r0, 2 +/* 803CA414 003C7374 7C 9E 1A 14 */ add r4, r30, r3 +/* 803CA418 003C7378 7C 7E 02 14 */ add r3, r30, r0 +/* 803CA41C 003C737C 80 84 00 3C */ lwz r4, 0x3c(r4) +/* 803CA420 003C7380 80 63 00 3C */ lwz r3, 0x3c(r3) +/* 803CA424 003C7384 20 05 00 07 */ subfic r0, r5, 7 +/* 803CA428 003C7388 54 00 10 3A */ slwi r0, r0, 2 +/* 803CA42C 003C738C 7C 84 19 D6 */ mullw r4, r4, r3 +/* 803CA430 003C7390 7C 7E 02 14 */ add r3, r30, r0 +/* 803CA434 003C7394 90 83 00 3C */ stw r4, 0x3c(r3) +lbl_803CA438: +/* 803CA438 003C7398 3C 60 80 3D */ lis r3, _F31@ha +/* 803CA43C 003C739C 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 803CA440 003C73A0 38 C3 A0 3C */ addi r6, r3, _F31@l +/* 803CA444 003C73A4 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA448 003C73A8 38 9E 00 1C */ addi r4, r30, 0x1c +/* 803CA44C 003C73AC 48 00 06 65 */ bl GBAWriteAsync +/* 803CA450 003C73B0 7C 7C 1B 78 */ mr r28, r3 +/* 803CA454 003C73B4 48 00 00 28 */ b lbl_803CA47C +lbl_803CA458: +/* 803CA458 003C73B8 4B FB AF 69 */ bl OSGetTick +/* 803CA45C 003C73BC 90 7E 00 24 */ stw r3, 0x24(r30) +/* 803CA460 003C73C0 3C 60 80 3D */ lis r3, _F33@ha +/* 803CA464 003C73C4 38 C3 A4 D4 */ addi r6, r3, _F33@l +/* 803CA468 003C73C8 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 803CA46C 003C73CC 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA470 003C73D0 38 9E 00 18 */ addi r4, r30, 0x18 +/* 803CA474 003C73D4 48 00 05 0D */ bl GBAReadAsync +/* 803CA478 003C73D8 7C 7C 1B 78 */ mr r28, r3 +lbl_803CA47C: +/* 803CA47C 003C73DC 2C 1C 00 00 */ cmpwi r28, 0 +/* 803CA480 003C73E0 41 82 00 30 */ beq lbl_803CA4B0 +/* 803CA484 003C73E4 38 00 00 00 */ li r0, 0 +/* 803CA488 003C73E8 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803CA48C 003C73EC 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803CA490 003C73F0 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803CA494 003C73F4 28 0C 00 00 */ cmplwi r12, 0 +/* 803CA498 003C73F8 41 82 00 18 */ beq lbl_803CA4B0 +/* 803CA49C 003C73FC 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803CA4A0 003C7400 7D 88 03 A6 */ mtlr r12 +/* 803CA4A4 003C7404 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA4A8 003C7408 38 9C 00 00 */ addi r4, r28, 0 +/* 803CA4AC 003C740C 4E 80 00 21 */ blrl +lbl_803CA4B0: +/* 803CA4B0 003C7410 93 9F 00 20 */ stw r28, 0x20(r31) +/* 803CA4B4 003C7414 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 803CA4B8 003C7418 83 E1 00 34 */ lwz r31, 0x34(r1) +/* 803CA4BC 003C741C 83 C1 00 30 */ lwz r30, 0x30(r1) +/* 803CA4C0 003C7420 83 A1 00 2C */ lwz r29, 0x2c(r1) +/* 803CA4C4 003C7424 83 81 00 28 */ lwz r28, 0x28(r1) +/* 803CA4C8 003C7428 38 21 00 38 */ addi r1, r1, 0x38 +/* 803CA4CC 003C742C 7C 08 03 A6 */ mtlr r0 +/* 803CA4D0 003C7430 4E 80 00 20 */ blr + +.global _F33 +_F33: +/* 803CA4D4 003C7434 7C 08 02 A6 */ mflr r0 +/* 803CA4D8 003C7438 90 01 00 04 */ stw r0, 4(r1) +/* 803CA4DC 003C743C 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803CA4E0 003C7440 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803CA4E4 003C7444 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803CA4E8 003C7448 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803CA4EC 003C744C 3B A3 00 00 */ addi r29, r3, 0 +/* 803CA4F0 003C7450 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CA4F4 003C7454 93 81 00 18 */ stw r28, 0x18(r1) +/* 803CA4F8 003C7458 7C 9C 23 79 */ or. r28, r4, r4 +/* 803CA4FC 003C745C 57 A4 40 2E */ slwi r4, r29, 8 +/* 803CA500 003C7460 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CA504 003C7464 7F E0 22 14 */ add r31, r0, r4 +/* 803CA508 003C7468 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803CA50C 003C746C 40 82 00 E4 */ bne lbl_803CA5F0 +/* 803CA510 003C7470 38 00 00 21 */ li r0, 0x21 +/* 803CA514 003C7474 3C 60 80 3F */ lis r3, lbl_803F7170@ha +/* 803CA518 003C7478 90 1E 00 20 */ stw r0, 0x20(r30) +/* 803CA51C 003C747C 38 03 71 70 */ addi r0, r3, lbl_803F7170@l +/* 803CA520 003C7480 48 00 00 94 */ b lbl_803CA5B4 +lbl_803CA524: +/* 803CA524 003C7484 7C E0 1A 14 */ add r7, r0, r3 +/* 803CA528 003C7488 88 DE 00 1B */ lbz r6, 0x1b(r30) +/* 803CA52C 003C748C 88 87 00 00 */ lbz r4, 0(r7) +/* 803CA530 003C7490 88 67 00 00 */ lbz r3, 0(r7) +/* 803CA534 003C7494 88 A7 00 00 */ lbz r5, 0(r7) +/* 803CA538 003C7498 54 84 10 3A */ slwi r4, r4, 2 +/* 803CA53C 003C749C 89 07 00 00 */ lbz r8, 0(r7) +/* 803CA540 003C74A0 54 63 10 3A */ slwi r3, r3, 2 +/* 803CA544 003C74A4 54 A7 10 3A */ slwi r7, r5, 2 +/* 803CA548 003C74A8 38 A4 00 3C */ addi r5, r4, 0x3c +/* 803CA54C 003C74AC 88 9E 00 1A */ lbz r4, 0x1a(r30) +/* 803CA550 003C74B0 38 63 00 3C */ addi r3, r3, 0x3c +/* 803CA554 003C74B4 7C BE 28 2E */ lwzx r5, r30, r5 +/* 803CA558 003C74B8 38 E7 00 3C */ addi r7, r7, 0x3c +/* 803CA55C 003C74BC 7C 7E 18 2E */ lwzx r3, r30, r3 +/* 803CA560 003C74C0 55 08 10 3A */ slwi r8, r8, 2 +/* 803CA564 003C74C4 7C FE 38 2E */ lwzx r7, r30, r7 +/* 803CA568 003C74C8 39 28 00 3C */ addi r9, r8, 0x3c +/* 803CA56C 003C74CC 89 1E 00 19 */ lbz r8, 0x19(r30) +/* 803CA570 003C74D0 54 A5 46 3E */ srwi r5, r5, 0x18 +/* 803CA574 003C74D4 89 5E 00 18 */ lbz r10, 0x18(r30) +/* 803CA578 003C74D8 54 63 84 3E */ srwi r3, r3, 0x10 +/* 803CA57C 003C74DC 7D 3E 48 2E */ lwzx r9, r30, r9 +/* 803CA580 003C74E0 54 E7 C2 3E */ srwi r7, r7, 8 +/* 803CA584 003C74E4 7C 83 1A 78 */ xor r3, r4, r3 +/* 803CA588 003C74E8 7C C5 2A 78 */ xor r5, r6, r5 +/* 803CA58C 003C74EC 7C A3 1B 78 */ or r3, r5, r3 +/* 803CA590 003C74F0 7D 04 3A 78 */ xor r4, r8, r7 +/* 803CA594 003C74F4 7D 45 4A 78 */ xor r5, r10, r9 +/* 803CA598 003C74F8 7C 83 1B 78 */ or r3, r4, r3 +/* 803CA59C 003C74FC 7C A3 1B 78 */ or r3, r5, r3 +/* 803CA5A0 003C7500 54 7C C0 0F */ rlwinm. r28, r3, 0x18, 0, 7 +/* 803CA5A4 003C7504 41 82 00 1C */ beq lbl_803CA5C0 +/* 803CA5A8 003C7508 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 803CA5AC 003C750C 38 63 00 01 */ addi r3, r3, 1 +/* 803CA5B0 003C7510 90 7E 00 20 */ stw r3, 0x20(r30) +lbl_803CA5B4: +/* 803CA5B4 003C7514 80 7E 00 20 */ lwz r3, 0x20(r30) +/* 803CA5B8 003C7518 2C 03 00 24 */ cmpwi r3, 0x24 +/* 803CA5BC 003C751C 41 80 FF 68 */ blt lbl_803CA524 +lbl_803CA5C0: +/* 803CA5C0 003C7520 2C 1C 00 00 */ cmpwi r28, 0 +/* 803CA5C4 003C7524 41 82 00 0C */ beq lbl_803CA5D0 +/* 803CA5C8 003C7528 3B 80 00 03 */ li r28, 3 +/* 803CA5CC 003C752C 48 00 00 24 */ b lbl_803CA5F0 +lbl_803CA5D0: +/* 803CA5D0 003C7530 4B FB AD F1 */ bl OSGetTick +/* 803CA5D4 003C7534 90 7E 00 24 */ stw r3, 0x24(r30) +/* 803CA5D8 003C7538 3C 60 80 3D */ lis r3, _F35@ha +/* 803CA5DC 003C753C 38 A3 A6 48 */ addi r5, r3, _F35@l +/* 803CA5E0 003C7540 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803CA5E4 003C7544 7F A3 EB 78 */ mr r3, r29 +/* 803CA5E8 003C7548 4B FF F1 09 */ bl GBAGetStatusAsync +/* 803CA5EC 003C754C 7C 7C 1B 78 */ mr r28, r3 +lbl_803CA5F0: +/* 803CA5F0 003C7550 2C 1C 00 00 */ cmpwi r28, 0 +/* 803CA5F4 003C7554 41 82 00 30 */ beq lbl_803CA624 +/* 803CA5F8 003C7558 38 00 00 00 */ li r0, 0 +/* 803CA5FC 003C755C 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803CA600 003C7560 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803CA604 003C7564 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803CA608 003C7568 28 0C 00 00 */ cmplwi r12, 0 +/* 803CA60C 003C756C 41 82 00 18 */ beq lbl_803CA624 +/* 803CA610 003C7570 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803CA614 003C7574 7D 88 03 A6 */ mtlr r12 +/* 803CA618 003C7578 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA61C 003C757C 38 9C 00 00 */ addi r4, r28, 0 +/* 803CA620 003C7580 4E 80 00 21 */ blrl +lbl_803CA624: +/* 803CA624 003C7584 93 9F 00 20 */ stw r28, 0x20(r31) +/* 803CA628 003C7588 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803CA62C 003C758C 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803CA630 003C7590 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803CA634 003C7594 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803CA638 003C7598 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803CA63C 003C759C 38 21 00 28 */ addi r1, r1, 0x28 +/* 803CA640 003C75A0 7C 08 03 A6 */ mtlr r0 +/* 803CA644 003C75A4 4E 80 00 20 */ blr + +.global _F35 +_F35: +/* 803CA648 003C75A8 7C 08 02 A6 */ mflr r0 +/* 803CA64C 003C75AC 90 01 00 04 */ stw r0, 4(r1) +/* 803CA650 003C75B0 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803CA654 003C75B4 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803CA658 003C75B8 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803CA65C 003C75BC 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803CA660 003C75C0 3B A3 00 00 */ addi r29, r3, 0 +/* 803CA664 003C75C4 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CA668 003C75C8 93 81 00 18 */ stw r28, 0x18(r1) +/* 803CA66C 003C75CC 7C 9C 23 79 */ or. r28, r4, r4 +/* 803CA670 003C75D0 57 A4 40 2E */ slwi r4, r29, 8 +/* 803CA674 003C75D4 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CA678 003C75D8 7F E0 22 14 */ add r31, r0, r4 +/* 803CA67C 003C75DC 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803CA680 003C75E0 40 82 00 CC */ bne lbl_803CA74C +/* 803CA684 003C75E4 4B FB AD 3D */ bl OSGetTick +/* 803CA688 003C75E8 3F 80 80 00 */ lis r28, 0x800000F8@ha +/* 803CA68C 003C75EC 80 9E 00 24 */ lwz r4, 0x24(r30) +/* 803CA690 003C75F0 80 1C 00 F8 */ lwz r0, 0x800000F8@l(r28) +/* 803CA694 003C75F4 7C 64 18 50 */ subf r3, r4, r3 +/* 803CA698 003C75F8 54 05 F0 BE */ srwi r5, r0, 2 +/* 803CA69C 003C75FC 1C 05 00 0A */ mulli r0, r5, 0xa +/* 803CA6A0 003C7600 7C 00 18 40 */ cmplw r0, r3 +/* 803CA6A4 003C7604 41 81 00 0C */ bgt lbl_803CA6B0 +/* 803CA6A8 003C7608 3B 80 00 03 */ li r28, 3 +/* 803CA6AC 003C760C 48 00 00 A0 */ b lbl_803CA74C +lbl_803CA6B0: +/* 803CA6B0 003C7610 80 9E 00 10 */ lwz r4, 0x10(r30) +/* 803CA6B4 003C7614 88 64 00 00 */ lbz r3, 0(r4) +/* 803CA6B8 003C7618 70 60 00 32 */ andi. r0, r3, 0x32 +/* 803CA6BC 003C761C 41 82 00 0C */ beq lbl_803CA6C8 +/* 803CA6C0 003C7620 3B 80 00 03 */ li r28, 3 +/* 803CA6C4 003C7624 48 00 00 88 */ b lbl_803CA74C +lbl_803CA6C8: +/* 803CA6C8 003C7628 28 03 00 08 */ cmplwi r3, 8 +/* 803CA6CC 003C762C 41 82 00 1C */ beq lbl_803CA6E8 +/* 803CA6D0 003C7630 3C 60 80 3D */ lis r3, _F35@ha +/* 803CA6D4 003C7634 38 A3 A6 48 */ addi r5, r3, _F35@l +/* 803CA6D8 003C7638 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA6DC 003C763C 4B FF F0 15 */ bl GBAGetStatusAsync +/* 803CA6E0 003C7640 7C 7C 1B 78 */ mr r28, r3 +/* 803CA6E4 003C7644 48 00 00 68 */ b lbl_803CA74C +lbl_803CA6E8: +/* 803CA6E8 003C7648 3C 60 10 62 */ lis r3, 0x10624DD3@ha +/* 803CA6EC 003C764C 38 03 4D D3 */ addi r0, r3, 0x10624DD3@l +/* 803CA6F0 003C7650 7C 00 28 16 */ mulhwu r0, r0, r5 +/* 803CA6F4 003C7654 54 06 E8 F8 */ rlwinm r6, r0, 0x1d, 3, 0x1c +/* 803CA6F8 003C7658 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA6FC 003C765C 38 A0 00 00 */ li r5, 0 +/* 803CA700 003C7660 48 00 08 1D */ bl __GBASetDelay +/* 803CA704 003C7664 3C 60 80 3D */ lis r3, _F37@ha +/* 803CA708 003C7668 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 803CA70C 003C766C 38 C3 A7 A4 */ addi r6, r3, _F37@l +/* 803CA710 003C7670 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA714 003C7674 38 9E 00 18 */ addi r4, r30, 0x18 +/* 803CA718 003C7678 48 00 02 69 */ bl GBAReadAsync +/* 803CA71C 003C767C 80 1C 00 F8 */ lwz r0, 0xf8(r28) +/* 803CA720 003C7680 3C 80 43 1C */ lis r4, 0x431BDE83@ha +/* 803CA724 003C7684 3B 83 00 00 */ addi r28, r3, 0 +/* 803CA728 003C7688 54 00 F0 BE */ srwi r0, r0, 2 +/* 803CA72C 003C768C 38 84 DE 83 */ addi r4, r4, 0x431BDE83@l +/* 803CA730 003C7690 7C 04 00 16 */ mulhwu r0, r4, r0 +/* 803CA734 003C7694 54 00 8B FE */ srwi r0, r0, 0xf +/* 803CA738 003C7698 1C 00 00 3C */ mulli r0, r0, 0x3c +/* 803CA73C 003C769C 54 06 E8 FE */ srwi r6, r0, 3 +/* 803CA740 003C76A0 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA744 003C76A4 38 A0 00 00 */ li r5, 0 +/* 803CA748 003C76A8 48 00 07 D5 */ bl __GBASetDelay +lbl_803CA74C: +/* 803CA74C 003C76AC 2C 1C 00 00 */ cmpwi r28, 0 +/* 803CA750 003C76B0 41 82 00 30 */ beq lbl_803CA780 +/* 803CA754 003C76B4 38 00 00 00 */ li r0, 0 +/* 803CA758 003C76B8 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803CA75C 003C76BC 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803CA760 003C76C0 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803CA764 003C76C4 28 0C 00 00 */ cmplwi r12, 0 +/* 803CA768 003C76C8 41 82 00 18 */ beq lbl_803CA780 +/* 803CA76C 003C76CC 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803CA770 003C76D0 7D 88 03 A6 */ mtlr r12 +/* 803CA774 003C76D4 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA778 003C76D8 38 9C 00 00 */ addi r4, r28, 0 +/* 803CA77C 003C76DC 4E 80 00 21 */ blrl +lbl_803CA780: +/* 803CA780 003C76E0 93 9F 00 20 */ stw r28, 0x20(r31) +/* 803CA784 003C76E4 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803CA788 003C76E8 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803CA78C 003C76EC 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803CA790 003C76F0 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803CA794 003C76F4 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803CA798 003C76F8 38 21 00 28 */ addi r1, r1, 0x28 +/* 803CA79C 003C76FC 7C 08 03 A6 */ mtlr r0 +/* 803CA7A0 003C7700 4E 80 00 20 */ blr + +.global _F37 +_F37: +/* 803CA7A4 003C7704 7C 08 02 A6 */ mflr r0 +/* 803CA7A8 003C7708 90 01 00 04 */ stw r0, 4(r1) +/* 803CA7AC 003C770C 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803CA7B0 003C7710 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803CA7B4 003C7714 93 C1 00 20 */ stw r30, 0x20(r1) +/* 803CA7B8 003C7718 93 A1 00 1C */ stw r29, 0x1c(r1) +/* 803CA7BC 003C771C 3B A3 00 00 */ addi r29, r3, 0 +/* 803CA7C0 003C7720 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CA7C4 003C7724 93 81 00 18 */ stw r28, 0x18(r1) +/* 803CA7C8 003C7728 7C 9C 23 79 */ or. r28, r4, r4 +/* 803CA7CC 003C772C 57 A4 40 2E */ slwi r4, r29, 8 +/* 803CA7D0 003C7730 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CA7D4 003C7734 7F E0 22 14 */ add r31, r0, r4 +/* 803CA7D8 003C7738 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803CA7DC 003C773C 40 82 00 6C */ bne lbl_803CA848 +/* 803CA7E0 003C7740 81 3E 00 60 */ lwz r9, 0x60(r30) +/* 803CA7E4 003C7744 88 BE 00 1B */ lbz r5, 0x1b(r30) +/* 803CA7E8 003C7748 55 24 46 3E */ srwi r4, r9, 0x18 +/* 803CA7EC 003C774C 88 7E 00 1A */ lbz r3, 0x1a(r30) +/* 803CA7F0 003C7750 55 20 84 3E */ srwi r0, r9, 0x10 +/* 803CA7F4 003C7754 88 FE 00 19 */ lbz r7, 0x19(r30) +/* 803CA7F8 003C7758 89 1E 00 18 */ lbz r8, 0x18(r30) +/* 803CA7FC 003C775C 55 26 C2 3E */ srwi r6, r9, 8 +/* 803CA800 003C7760 7C 60 02 78 */ xor r0, r3, r0 +/* 803CA804 003C7764 7C A4 22 78 */ xor r4, r5, r4 +/* 803CA808 003C7768 7C 80 03 78 */ or r0, r4, r0 +/* 803CA80C 003C776C 7C E3 32 78 */ xor r3, r7, r6 +/* 803CA810 003C7770 7D 04 4A 78 */ xor r4, r8, r9 +/* 803CA814 003C7774 7C 60 03 78 */ or r0, r3, r0 +/* 803CA818 003C7778 7C 80 03 78 */ or r0, r4, r0 +/* 803CA81C 003C777C 54 00 C0 0F */ rlwinm. r0, r0, 0x18, 0, 7 +/* 803CA820 003C7780 41 82 00 0C */ beq lbl_803CA82C +/* 803CA824 003C7784 3B 80 00 03 */ li r28, 3 +/* 803CA828 003C7788 48 00 00 20 */ b lbl_803CA848 +lbl_803CA82C: +/* 803CA82C 003C778C 3C 60 80 3D */ lis r3, _F39@ha +/* 803CA830 003C7790 80 BE 00 10 */ lwz r5, 0x10(r30) +/* 803CA834 003C7794 38 C3 A8 A0 */ addi r6, r3, _F39@l +/* 803CA838 003C7798 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA83C 003C779C 38 9E 00 18 */ addi r4, r30, 0x18 +/* 803CA840 003C77A0 48 00 02 71 */ bl GBAWriteAsync +/* 803CA844 003C77A4 7C 7C 1B 78 */ mr r28, r3 +lbl_803CA848: +/* 803CA848 003C77A8 2C 1C 00 00 */ cmpwi r28, 0 +/* 803CA84C 003C77AC 41 82 00 30 */ beq lbl_803CA87C +/* 803CA850 003C77B0 38 00 00 00 */ li r0, 0 +/* 803CA854 003C77B4 90 1E 00 2C */ stw r0, 0x2c(r30) +/* 803CA858 003C77B8 90 1E 00 28 */ stw r0, 0x28(r30) +/* 803CA85C 003C77BC 81 9E 00 14 */ lwz r12, 0x14(r30) +/* 803CA860 003C77C0 28 0C 00 00 */ cmplwi r12, 0 +/* 803CA864 003C77C4 41 82 00 18 */ beq lbl_803CA87C +/* 803CA868 003C77C8 90 1E 00 14 */ stw r0, 0x14(r30) +/* 803CA86C 003C77CC 7D 88 03 A6 */ mtlr r12 +/* 803CA870 003C77D0 38 7D 00 00 */ addi r3, r29, 0 +/* 803CA874 003C77D4 38 9C 00 00 */ addi r4, r28, 0 +/* 803CA878 003C77D8 4E 80 00 21 */ blrl +lbl_803CA87C: +/* 803CA87C 003C77DC 93 9F 00 20 */ stw r28, 0x20(r31) +/* 803CA880 003C77E0 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803CA884 003C77E4 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803CA888 003C77E8 83 C1 00 20 */ lwz r30, 0x20(r1) +/* 803CA88C 003C77EC 83 A1 00 1C */ lwz r29, 0x1c(r1) +/* 803CA890 003C77F0 83 81 00 18 */ lwz r28, 0x18(r1) +/* 803CA894 003C77F4 38 21 00 28 */ addi r1, r1, 0x28 +/* 803CA898 003C77F8 7C 08 03 A6 */ mtlr r0 +/* 803CA89C 003C77FC 4E 80 00 20 */ blr + +.global _F39 +_F39: +/* 803CA8A0 003C7800 7C 08 02 A6 */ mflr r0 +/* 803CA8A4 003C7804 54 65 40 2E */ slwi r5, r3, 8 +/* 803CA8A8 003C7808 90 01 00 04 */ stw r0, 4(r1) +/* 803CA8AC 003C780C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803CA8B0 003C7810 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803CA8B4 003C7814 93 C1 00 18 */ stw r30, 0x18(r1) +/* 803CA8B8 003C7818 7C 9E 23 79 */ or. r30, r4, r4 +/* 803CA8BC 003C781C 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CA8C0 003C7820 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803CA8C4 003C7824 7F E0 2A 14 */ add r31, r0, r5 +/* 803CA8C8 003C7828 38 BF 00 40 */ addi r5, r31, 0x40 +/* 803CA8CC 003C782C 40 82 00 10 */ bne lbl_803CA8DC +/* 803CA8D0 003C7830 80 85 00 10 */ lwz r4, 0x10(r5) +/* 803CA8D4 003C7834 38 00 00 00 */ li r0, 0 +/* 803CA8D8 003C7838 98 04 00 00 */ stb r0, 0(r4) +lbl_803CA8DC: +/* 803CA8DC 003C783C 38 00 00 00 */ li r0, 0 +/* 803CA8E0 003C7840 90 05 00 2C */ stw r0, 0x2c(r5) +/* 803CA8E4 003C7844 90 05 00 28 */ stw r0, 0x28(r5) +/* 803CA8E8 003C7848 81 85 00 14 */ lwz r12, 0x14(r5) +/* 803CA8EC 003C784C 28 0C 00 00 */ cmplwi r12, 0 +/* 803CA8F0 003C7850 41 82 00 14 */ beq lbl_803CA904 +/* 803CA8F4 003C7854 90 05 00 14 */ stw r0, 0x14(r5) +/* 803CA8F8 003C7858 7D 88 03 A6 */ mtlr r12 +/* 803CA8FC 003C785C 38 9E 00 00 */ addi r4, r30, 0 +/* 803CA900 003C7860 4E 80 00 21 */ blrl +lbl_803CA904: +/* 803CA904 003C7864 93 DF 00 20 */ stw r30, 0x20(r31) +/* 803CA908 003C7868 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803CA90C 003C786C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803CA910 003C7870 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 803CA914 003C7874 38 21 00 20 */ addi r1, r1, 0x20 +/* 803CA918 003C7878 7C 08 03 A6 */ mtlr r0 +/* 803CA91C 003C787C 4E 80 00 20 */ blr diff --git a/asm/Dolphin/GBARead.s b/asm/Dolphin/GBARead.s new file mode 100644 index 00000000..c82103d7 --- /dev/null +++ b/asm/Dolphin/GBARead.s @@ -0,0 +1,107 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global ReadProc +ReadProc: +/* 803CA920 003C7880 7C 08 02 A6 */ mflr r0 +/* 803CA924 003C7884 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CA928 003C7888 90 01 00 04 */ stw r0, 4(r1) +/* 803CA92C 003C788C 54 63 40 2E */ slwi r3, r3, 8 +/* 803CA930 003C7890 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803CA934 003C7894 94 21 FF E8 */ stwu r1, -0x18(r1) +/* 803CA938 003C7898 93 E1 00 14 */ stw r31, 0x14(r1) +/* 803CA93C 003C789C 7F E0 1A 14 */ add r31, r0, r3 +/* 803CA940 003C78A0 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 803CA944 003C78A4 2C 00 00 00 */ cmpwi r0, 0 +/* 803CA948 003C78A8 40 82 00 24 */ bne lbl_803CA96C +/* 803CA94C 003C78AC 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 803CA950 003C78B0 38 9F 00 05 */ addi r4, r31, 5 +/* 803CA954 003C78B4 38 A0 00 04 */ li r5, 4 +/* 803CA958 003C78B8 4B C3 8B 39 */ bl memcpy +/* 803CA95C 003C78BC 88 1F 00 09 */ lbz r0, 9(r31) +/* 803CA960 003C78C0 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 803CA964 003C78C4 70 00 00 3A */ andi. r0, r0, 0x3a +/* 803CA968 003C78C8 98 03 00 00 */ stb r0, 0(r3) +lbl_803CA96C: +/* 803CA96C 003C78CC 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 803CA970 003C78D0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 803CA974 003C78D4 38 21 00 18 */ addi r1, r1, 0x18 +/* 803CA978 003C78D8 7C 08 03 A6 */ mtlr r0 +/* 803CA97C 003C78DC 4E 80 00 20 */ blr + +.global GBAReadAsync +GBAReadAsync: +/* 803CA980 003C78E0 7C 08 02 A6 */ mflr r0 +/* 803CA984 003C78E4 3C E0 80 57 */ lis r7, __GBA@ha +/* 803CA988 003C78E8 90 01 00 04 */ stw r0, 4(r1) +/* 803CA98C 003C78EC 54 68 40 2E */ slwi r8, r3, 8 +/* 803CA990 003C78F0 38 07 A1 A0 */ addi r0, r7, __GBA@l +/* 803CA994 003C78F4 94 21 FF F8 */ stwu r1, -8(r1) +/* 803CA998 003C78F8 7D 00 42 14 */ add r8, r0, r8 +/* 803CA99C 003C78FC 80 08 00 1C */ lwz r0, 0x1c(r8) +/* 803CA9A0 003C7900 28 00 00 00 */ cmplwi r0, 0 +/* 803CA9A4 003C7904 41 82 00 0C */ beq lbl_803CA9B0 +/* 803CA9A8 003C7908 38 60 00 02 */ li r3, 2 +/* 803CA9AC 003C790C 48 00 00 30 */ b lbl_803CA9DC +lbl_803CA9B0: +/* 803CA9B0 003C7910 38 00 00 14 */ li r0, 0x14 +/* 803CA9B4 003C7914 98 08 00 00 */ stb r0, 0(r8) +/* 803CA9B8 003C7918 3C E0 80 3D */ lis r7, ReadProc@ha +/* 803CA9BC 003C791C 38 07 A9 20 */ addi r0, r7, ReadProc@l +/* 803CA9C0 003C7920 90 88 00 18 */ stw r4, 0x18(r8) +/* 803CA9C4 003C7924 38 80 00 01 */ li r4, 1 +/* 803CA9C8 003C7928 90 A8 00 14 */ stw r5, 0x14(r8) +/* 803CA9CC 003C792C 38 A0 00 05 */ li r5, 5 +/* 803CA9D0 003C7930 90 C8 00 1C */ stw r6, 0x1c(r8) +/* 803CA9D4 003C7934 7C 06 03 78 */ mr r6, r0 +/* 803CA9D8 003C7938 48 00 04 D1 */ bl __GBATransfer +lbl_803CA9DC: +/* 803CA9DC 003C793C 80 01 00 0C */ lwz r0, 0xc(r1) +/* 803CA9E0 003C7940 38 21 00 08 */ addi r1, r1, 8 +/* 803CA9E4 003C7944 7C 08 03 A6 */ mtlr r0 +/* 803CA9E8 003C7948 4E 80 00 20 */ blr + +.global GBARead +GBARead: +/* 803CA9EC 003C794C 7C 08 02 A6 */ mflr r0 +/* 803CA9F0 003C7950 90 01 00 04 */ stw r0, 4(r1) +/* 803CA9F4 003C7954 94 21 FF D8 */ stwu r1, -0x28(r1) +/* 803CA9F8 003C7958 93 E1 00 24 */ stw r31, 0x24(r1) +/* 803CA9FC 003C795C 3B E3 00 00 */ addi r31, r3, 0 +/* 803CAA00 003C7960 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAA04 003C7964 57 E6 40 2E */ slwi r6, r31, 8 +/* 803CAA08 003C7968 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CAA0C 003C796C 7D 00 32 14 */ add r8, r0, r6 +/* 803CAA10 003C7970 80 08 00 1C */ lwz r0, 0x1c(r8) +/* 803CAA14 003C7974 28 00 00 00 */ cmplwi r0, 0 +/* 803CAA18 003C7978 41 82 00 0C */ beq lbl_803CAA24 +/* 803CAA1C 003C797C 38 60 00 02 */ li r3, 2 +/* 803CAA20 003C7980 48 00 00 38 */ b lbl_803CAA58 +lbl_803CAA24: +/* 803CAA24 003C7984 38 00 00 14 */ li r0, 0x14 +/* 803CAA28 003C7988 98 08 00 00 */ stb r0, 0(r8) +/* 803CAA2C 003C798C 3C E0 80 3D */ lis r7, __GBASyncCallback@ha +/* 803CAA30 003C7990 3C 60 80 3D */ lis r3, ReadProc@ha +/* 803CAA34 003C7994 90 88 00 18 */ stw r4, 0x18(r8) +/* 803CAA38 003C7998 38 C3 A9 20 */ addi r6, r3, ReadProc@l +/* 803CAA3C 003C799C 38 07 AC E4 */ addi r0, r7, __GBASyncCallback@l +/* 803CAA40 003C79A0 90 A8 00 14 */ stw r5, 0x14(r8) +/* 803CAA44 003C79A4 7F E3 FB 78 */ mr r3, r31 +/* 803CAA48 003C79A8 38 80 00 01 */ li r4, 1 +/* 803CAA4C 003C79AC 90 08 00 1C */ stw r0, 0x1c(r8) +/* 803CAA50 003C79B0 38 A0 00 05 */ li r5, 5 +/* 803CAA54 003C79B4 48 00 04 55 */ bl __GBATransfer +lbl_803CAA58: +/* 803CAA58 003C79B8 2C 03 00 00 */ cmpwi r3, 0 +/* 803CAA5C 003C79BC 41 82 00 08 */ beq lbl_803CAA64 +/* 803CAA60 003C79C0 48 00 00 0C */ b lbl_803CAA6C +lbl_803CAA64: +/* 803CAA64 003C79C4 7F E3 FB 78 */ mr r3, r31 +/* 803CAA68 003C79C8 48 00 02 B1 */ bl __GBASync +lbl_803CAA6C: +/* 803CAA6C 003C79CC 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 803CAA70 003C79D0 83 E1 00 24 */ lwz r31, 0x24(r1) +/* 803CAA74 003C79D4 38 21 00 28 */ addi r1, r1, 0x28 +/* 803CAA78 003C79D8 7C 08 03 A6 */ mtlr r0 +/* 803CAA7C 003C79DC 4E 80 00 20 */ blr diff --git a/asm/Dolphin/GBAWrite.s b/asm/Dolphin/GBAWrite.s new file mode 100644 index 00000000..4315920d --- /dev/null +++ b/asm/Dolphin/GBAWrite.s @@ -0,0 +1,116 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global WriteProc +WriteProc: +/* 803CAA80 003C79E0 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CAA84 003C79E4 54 63 40 2E */ slwi r3, r3, 8 +/* 803CAA88 003C79E8 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803CAA8C 003C79EC 7C 60 1A 14 */ add r3, r0, r3 +/* 803CAA90 003C79F0 80 03 00 20 */ lwz r0, 0x20(r3) +/* 803CAA94 003C79F4 2C 00 00 00 */ cmpwi r0, 0 +/* 803CAA98 003C79F8 4C 82 00 20 */ bnelr +/* 803CAA9C 003C79FC 88 03 00 05 */ lbz r0, 5(r3) +/* 803CAAA0 003C7A00 80 63 00 14 */ lwz r3, 0x14(r3) +/* 803CAAA4 003C7A04 70 00 00 3A */ andi. r0, r0, 0x3a +/* 803CAAA8 003C7A08 98 03 00 00 */ stb r0, 0(r3) +/* 803CAAAC 003C7A0C 4E 80 00 20 */ blr + +.global GBAWriteAsync +GBAWriteAsync: +/* 803CAAB0 003C7A10 7C 08 02 A6 */ mflr r0 +/* 803CAAB4 003C7A14 90 01 00 04 */ stw r0, 4(r1) +/* 803CAAB8 003C7A18 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 803CAABC 003C7A1C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 803CAAC0 003C7A20 3B 63 00 00 */ addi r27, r3, 0 +/* 803CAAC4 003C7A24 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAAC8 003C7A28 57 67 40 2E */ slwi r7, r27, 8 +/* 803CAACC 003C7A2C 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CAAD0 003C7A30 7F E0 3A 14 */ add r31, r0, r7 +/* 803CAAD4 003C7A34 3B 84 00 00 */ addi r28, r4, 0 +/* 803CAAD8 003C7A38 3B A5 00 00 */ addi r29, r5, 0 +/* 803CAADC 003C7A3C 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 803CAAE0 003C7A40 3B C6 00 00 */ addi r30, r6, 0 +/* 803CAAE4 003C7A44 28 00 00 00 */ cmplwi r0, 0 +/* 803CAAE8 003C7A48 41 82 00 0C */ beq lbl_803CAAF4 +/* 803CAAEC 003C7A4C 38 60 00 02 */ li r3, 2 +/* 803CAAF0 003C7A50 48 00 00 40 */ b lbl_803CAB30 +lbl_803CAAF4: +/* 803CAAF4 003C7A54 38 00 00 15 */ li r0, 0x15 +/* 803CAAF8 003C7A58 98 1F 00 00 */ stb r0, 0(r31) +/* 803CAAFC 003C7A5C 38 9C 00 00 */ addi r4, r28, 0 +/* 803CAB00 003C7A60 38 7F 00 01 */ addi r3, r31, 1 +/* 803CAB04 003C7A64 38 A0 00 04 */ li r5, 4 +/* 803CAB08 003C7A68 4B C3 89 89 */ bl memcpy +/* 803CAB0C 003C7A6C 93 9F 00 18 */ stw r28, 0x18(r31) +/* 803CAB10 003C7A70 3C 60 80 3D */ lis r3, WriteProc@ha +/* 803CAB14 003C7A74 38 C3 AA 80 */ addi r6, r3, WriteProc@l +/* 803CAB18 003C7A78 93 BF 00 14 */ stw r29, 0x14(r31) +/* 803CAB1C 003C7A7C 7F 63 DB 78 */ mr r3, r27 +/* 803CAB20 003C7A80 38 80 00 05 */ li r4, 5 +/* 803CAB24 003C7A84 93 DF 00 1C */ stw r30, 0x1c(r31) +/* 803CAB28 003C7A88 38 A0 00 01 */ li r5, 1 +/* 803CAB2C 003C7A8C 48 00 03 7D */ bl __GBATransfer +lbl_803CAB30: +/* 803CAB30 003C7A90 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 803CAB34 003C7A94 80 01 00 34 */ lwz r0, 0x34(r1) +/* 803CAB38 003C7A98 38 21 00 30 */ addi r1, r1, 0x30 +/* 803CAB3C 003C7A9C 7C 08 03 A6 */ mtlr r0 +/* 803CAB40 003C7AA0 4E 80 00 20 */ blr + +.global GBAWrite +GBAWrite: +/* 803CAB44 003C7AA4 7C 08 02 A6 */ mflr r0 +/* 803CAB48 003C7AA8 90 01 00 04 */ stw r0, 4(r1) +/* 803CAB4C 003C7AAC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 803CAB50 003C7AB0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 803CAB54 003C7AB4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 803CAB58 003C7AB8 3B C5 00 00 */ addi r30, r5, 0 +/* 803CAB5C 003C7ABC 93 A1 00 24 */ stw r29, 0x24(r1) +/* 803CAB60 003C7AC0 3B A4 00 00 */ addi r29, r4, 0 +/* 803CAB64 003C7AC4 93 81 00 20 */ stw r28, 0x20(r1) +/* 803CAB68 003C7AC8 3B 83 00 00 */ addi r28, r3, 0 +/* 803CAB6C 003C7ACC 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAB70 003C7AD0 57 86 40 2E */ slwi r6, r28, 8 +/* 803CAB74 003C7AD4 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CAB78 003C7AD8 7F E0 32 14 */ add r31, r0, r6 +/* 803CAB7C 003C7ADC 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 803CAB80 003C7AE0 28 00 00 00 */ cmplwi r0, 0 +/* 803CAB84 003C7AE4 41 82 00 0C */ beq lbl_803CAB90 +/* 803CAB88 003C7AE8 38 60 00 02 */ li r3, 2 +/* 803CAB8C 003C7AEC 48 00 00 48 */ b lbl_803CABD4 +lbl_803CAB90: +/* 803CAB90 003C7AF0 38 00 00 15 */ li r0, 0x15 +/* 803CAB94 003C7AF4 98 1F 00 00 */ stb r0, 0(r31) +/* 803CAB98 003C7AF8 38 9D 00 00 */ addi r4, r29, 0 +/* 803CAB9C 003C7AFC 38 7F 00 01 */ addi r3, r31, 1 +/* 803CABA0 003C7B00 38 A0 00 04 */ li r5, 4 +/* 803CABA4 003C7B04 4B C3 88 ED */ bl memcpy +/* 803CABA8 003C7B08 93 BF 00 18 */ stw r29, 0x18(r31) +/* 803CABAC 003C7B0C 3C 80 80 3D */ lis r4, __GBASyncCallback@ha +/* 803CABB0 003C7B10 38 04 AC E4 */ addi r0, r4, __GBASyncCallback@l +/* 803CABB4 003C7B14 93 DF 00 14 */ stw r30, 0x14(r31) +/* 803CABB8 003C7B18 3C 60 80 3D */ lis r3, WriteProc@ha +/* 803CABBC 003C7B1C 38 C3 AA 80 */ addi r6, r3, WriteProc@l +/* 803CABC0 003C7B20 90 1F 00 1C */ stw r0, 0x1c(r31) +/* 803CABC4 003C7B24 38 7C 00 00 */ addi r3, r28, 0 +/* 803CABC8 003C7B28 38 80 00 05 */ li r4, 5 +/* 803CABCC 003C7B2C 38 A0 00 01 */ li r5, 1 +/* 803CABD0 003C7B30 48 00 02 D9 */ bl __GBATransfer +lbl_803CABD4: +/* 803CABD4 003C7B34 2C 03 00 00 */ cmpwi r3, 0 +/* 803CABD8 003C7B38 41 82 00 08 */ beq lbl_803CABE0 +/* 803CABDC 003C7B3C 48 00 00 0C */ b lbl_803CABE8 +lbl_803CABE0: +/* 803CABE0 003C7B40 7F 83 E3 78 */ mr r3, r28 +/* 803CABE4 003C7B44 48 00 01 35 */ bl __GBASync +lbl_803CABE8: +/* 803CABE8 003C7B48 80 01 00 34 */ lwz r0, 0x34(r1) +/* 803CABEC 003C7B4C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 803CABF0 003C7B50 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 803CABF4 003C7B54 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 803CABF8 003C7B58 83 81 00 20 */ lwz r28, 0x20(r1) +/* 803CABFC 003C7B5C 38 21 00 30 */ addi r1, r1, 0x30 +/* 803CAC00 003C7B60 7C 08 03 A6 */ mtlr r0 +/* 803CAC04 003C7B64 4E 80 00 20 */ blr diff --git a/asm/Dolphin/GBAXfer.s b/asm/Dolphin/GBAXfer.s new file mode 100644 index 00000000..b6c0a5df --- /dev/null +++ b/asm/Dolphin/GBAXfer.s @@ -0,0 +1,413 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global __GBAHandler +__GBAHandler: +/* 803CAC08 003C7B68 7C 08 02 A6 */ mflr r0 +/* 803CAC0C 003C7B6C 90 01 00 04 */ stw r0, 4(r1) +/* 803CAC10 003C7B70 94 21 FD 08 */ stwu r1, -0x2f8(r1) +/* 803CAC14 003C7B74 93 E1 02 F4 */ stw r31, 0x2f4(r1) +/* 803CAC18 003C7B78 93 C1 02 F0 */ stw r30, 0x2f0(r1) +/* 803CAC1C 003C7B7C 3B C5 00 00 */ addi r30, r5, 0 +/* 803CAC20 003C7B80 93 A1 02 EC */ stw r29, 0x2ec(r1) +/* 803CAC24 003C7B84 3B A3 00 00 */ addi r29, r3, 0 +/* 803CAC28 003C7B88 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAC2C 003C7B8C 80 0D B1 58 */ lwz r0, __GBAReset@sda21(r13) +/* 803CAC30 003C7B90 57 A6 40 2E */ slwi r6, r29, 8 +/* 803CAC34 003C7B94 2C 00 00 00 */ cmpwi r0, 0 +/* 803CAC38 003C7B98 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CAC3C 003C7B9C 7F E0 32 14 */ add r31, r0, r6 +/* 803CAC40 003C7BA0 40 82 00 88 */ bne lbl_803CACC8 +/* 803CAC44 003C7BA4 54 80 07 3F */ clrlwi. r0, r4, 0x1c +/* 803CAC48 003C7BA8 41 82 00 10 */ beq lbl_803CAC58 +/* 803CAC4C 003C7BAC 38 00 00 01 */ li r0, 1 +/* 803CAC50 003C7BB0 90 1F 00 20 */ stw r0, 0x20(r31) +/* 803CAC54 003C7BB4 48 00 00 0C */ b lbl_803CAC60 +lbl_803CAC58: +/* 803CAC58 003C7BB8 38 00 00 00 */ li r0, 0 +/* 803CAC5C 003C7BBC 90 1F 00 20 */ stw r0, 0x20(r31) +lbl_803CAC60: +/* 803CAC60 003C7BC0 81 9F 00 38 */ lwz r12, 0x38(r31) +/* 803CAC64 003C7BC4 28 0C 00 00 */ cmplwi r12, 0 +/* 803CAC68 003C7BC8 41 82 00 18 */ beq lbl_803CAC80 +/* 803CAC6C 003C7BCC 38 00 00 00 */ li r0, 0 +/* 803CAC70 003C7BD0 7D 88 03 A6 */ mtlr r12 +/* 803CAC74 003C7BD4 90 1F 00 38 */ stw r0, 0x38(r31) +/* 803CAC78 003C7BD8 7F A3 EB 78 */ mr r3, r29 +/* 803CAC7C 003C7BDC 4E 80 00 21 */ blrl +lbl_803CAC80: +/* 803CAC80 003C7BE0 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 803CAC84 003C7BE4 28 00 00 00 */ cmplwi r0, 0 +/* 803CAC88 003C7BE8 41 82 00 40 */ beq lbl_803CACC8 +/* 803CAC8C 003C7BEC 38 61 00 18 */ addi r3, r1, 0x18 +/* 803CAC90 003C7BF0 4B FB 49 85 */ bl OSClearContext +/* 803CAC94 003C7BF4 38 61 00 18 */ addi r3, r1, 0x18 +/* 803CAC98 003C7BF8 4B FB 47 85 */ bl OSSetCurrentContext +/* 803CAC9C 003C7BFC 81 9F 00 1C */ lwz r12, 0x1c(r31) +/* 803CACA0 003C7C00 38 00 00 00 */ li r0, 0 +/* 803CACA4 003C7C04 38 7D 00 00 */ addi r3, r29, 0 +/* 803CACA8 003C7C08 90 1F 00 1C */ stw r0, 0x1c(r31) +/* 803CACAC 003C7C0C 7D 88 03 A6 */ mtlr r12 +/* 803CACB0 003C7C10 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 803CACB4 003C7C14 4E 80 00 21 */ blrl +/* 803CACB8 003C7C18 38 61 00 18 */ addi r3, r1, 0x18 +/* 803CACBC 003C7C1C 4B FB 49 59 */ bl OSClearContext +/* 803CACC0 003C7C20 7F C3 F3 78 */ mr r3, r30 +/* 803CACC4 003C7C24 4B FB 47 59 */ bl OSSetCurrentContext +lbl_803CACC8: +/* 803CACC8 003C7C28 80 01 02 FC */ lwz r0, 0x2fc(r1) +/* 803CACCC 003C7C2C 83 E1 02 F4 */ lwz r31, 0x2f4(r1) +/* 803CACD0 003C7C30 83 C1 02 F0 */ lwz r30, 0x2f0(r1) +/* 803CACD4 003C7C34 83 A1 02 EC */ lwz r29, 0x2ec(r1) +/* 803CACD8 003C7C38 38 21 02 F8 */ addi r1, r1, 0x2f8 +/* 803CACDC 003C7C3C 7C 08 03 A6 */ mtlr r0 +/* 803CACE0 003C7C40 4E 80 00 20 */ blr + +.global __GBASyncCallback +__GBASyncCallback: +/* 803CACE4 003C7C44 7C 08 02 A6 */ mflr r0 +/* 803CACE8 003C7C48 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CACEC 003C7C4C 90 01 00 04 */ stw r0, 4(r1) +/* 803CACF0 003C7C50 54 63 40 2E */ slwi r3, r3, 8 +/* 803CACF4 003C7C54 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803CACF8 003C7C58 7C 60 1A 14 */ add r3, r0, r3 +/* 803CACFC 003C7C5C 94 21 FF F8 */ stwu r1, -8(r1) +/* 803CAD00 003C7C60 38 63 00 24 */ addi r3, r3, 0x24 +/* 803CAD04 003C7C64 4B FB A4 F5 */ bl OSWakeupThread +/* 803CAD08 003C7C68 80 01 00 0C */ lwz r0, 0xc(r1) +/* 803CAD0C 003C7C6C 38 21 00 08 */ addi r1, r1, 8 +/* 803CAD10 003C7C70 7C 08 03 A6 */ mtlr r0 +/* 803CAD14 003C7C74 4E 80 00 20 */ blr + +.global __GBASync +__GBASync: +/* 803CAD18 003C7C78 7C 08 02 A6 */ mflr r0 +/* 803CAD1C 003C7C7C 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CAD20 003C7C80 90 01 00 04 */ stw r0, 4(r1) +/* 803CAD24 003C7C84 54 63 40 2E */ slwi r3, r3, 8 +/* 803CAD28 003C7C88 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803CAD2C 003C7C8C 94 21 FF E8 */ stwu r1, -0x18(r1) +/* 803CAD30 003C7C90 93 E1 00 14 */ stw r31, 0x14(r1) +/* 803CAD34 003C7C94 7F E0 1A 14 */ add r31, r0, r3 +/* 803CAD38 003C7C98 93 C1 00 10 */ stw r30, 0x10(r1) +/* 803CAD3C 003C7C9C 4B FB 69 25 */ bl OSDisableInterrupts +/* 803CAD40 003C7CA0 7C 7E 1B 78 */ mr r30, r3 +/* 803CAD44 003C7CA4 48 00 00 0C */ b lbl_803CAD50 +lbl_803CAD48: +/* 803CAD48 003C7CA8 38 7F 00 24 */ addi r3, r31, 0x24 +/* 803CAD4C 003C7CAC 4B FB A3 C1 */ bl OSSleepThread +lbl_803CAD50: +/* 803CAD50 003C7CB0 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 803CAD54 003C7CB4 28 00 00 00 */ cmplwi r0, 0 +/* 803CAD58 003C7CB8 40 82 FF F0 */ bne lbl_803CAD48 +/* 803CAD5C 003C7CBC 83 FF 00 20 */ lwz r31, 0x20(r31) +/* 803CAD60 003C7CC0 7F C3 F3 78 */ mr r3, r30 +/* 803CAD64 003C7CC4 4B FB 69 25 */ bl OSRestoreInterrupts +/* 803CAD68 003C7CC8 7F E3 FB 78 */ mr r3, r31 +/* 803CAD6C 003C7CCC 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 803CAD70 003C7CD0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 803CAD74 003C7CD4 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 803CAD78 003C7CD8 38 21 00 18 */ addi r1, r1, 0x18 +/* 803CAD7C 003C7CDC 7C 08 03 A6 */ mtlr r0 +/* 803CAD80 003C7CE0 4E 80 00 20 */ blr + +.global TypeAndStatusCallback +TypeAndStatusCallback: +/* 803CAD84 003C7CE4 7C 08 02 A6 */ mflr r0 +/* 803CAD88 003C7CE8 90 01 00 04 */ stw r0, 4(r1) +/* 803CAD8C 003C7CEC 94 21 FD 10 */ stwu r1, -0x2f0(r1) +/* 803CAD90 003C7CF0 93 E1 02 EC */ stw r31, 0x2ec(r1) +/* 803CAD94 003C7CF4 3B E3 00 00 */ addi r31, r3, 0 +/* 803CAD98 003C7CF8 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAD9C 003C7CFC 93 C1 02 E8 */ stw r30, 0x2e8(r1) +/* 803CADA0 003C7D00 57 E5 40 2E */ slwi r5, r31, 8 +/* 803CADA4 003C7D04 93 A1 02 E4 */ stw r29, 0x2e4(r1) +/* 803CADA8 003C7D08 80 0D B1 58 */ lwz r0, __GBAReset@sda21(r13) +/* 803CADAC 003C7D0C 2C 00 00 00 */ cmpwi r0, 0 +/* 803CADB0 003C7D10 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CADB4 003C7D14 7F C0 2A 14 */ add r30, r0, r5 +/* 803CADB8 003C7D18 40 82 00 D4 */ bne lbl_803CAE8C +/* 803CADBC 003C7D1C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 803CADC0 003C7D20 40 82 00 14 */ bne lbl_803CADD4 +/* 803CADC4 003C7D24 54 83 00 1E */ rlwinm r3, r4, 0, 0, 0xf +/* 803CADC8 003C7D28 3C 03 FF FC */ addis r0, r3, 0xfffc +/* 803CADCC 003C7D2C 28 00 00 00 */ cmplwi r0, 0 +/* 803CADD0 003C7D30 41 82 00 10 */ beq lbl_803CADE0 +lbl_803CADD4: +/* 803CADD4 003C7D34 38 00 00 01 */ li r0, 1 +/* 803CADD8 003C7D38 90 1E 00 20 */ stw r0, 0x20(r30) +/* 803CADDC 003C7D3C 48 00 00 3C */ b lbl_803CAE18 +lbl_803CADE0: +/* 803CADE0 003C7D40 3C 60 80 3D */ lis r3, __GBAHandler@ha +/* 803CADE4 003C7D44 80 BE 00 0C */ lwz r5, 0xc(r30) +/* 803CADE8 003C7D48 39 03 AC 08 */ addi r8, r3, __GBAHandler@l +/* 803CADEC 003C7D4C 80 FE 00 10 */ lwz r7, 0x10(r30) +/* 803CADF0 003C7D50 81 3E 00 30 */ lwz r9, 0x30(r30) +/* 803CADF4 003C7D54 7F E3 FB 78 */ mr r3, r31 +/* 803CADF8 003C7D58 81 5E 00 34 */ lwz r10, 0x34(r30) +/* 803CADFC 003C7D5C 38 9E 00 00 */ addi r4, r30, 0 +/* 803CAE00 003C7D60 38 DE 00 05 */ addi r6, r30, 5 +/* 803CAE04 003C7D64 4B FF 48 95 */ bl SITransfer +/* 803CAE08 003C7D68 2C 03 00 00 */ cmpwi r3, 0 +/* 803CAE0C 003C7D6C 40 82 00 80 */ bne lbl_803CAE8C +/* 803CAE10 003C7D70 38 00 00 02 */ li r0, 2 +/* 803CAE14 003C7D74 90 1E 00 20 */ stw r0, 0x20(r30) +lbl_803CAE18: +/* 803CAE18 003C7D78 81 9E 00 38 */ lwz r12, 0x38(r30) +/* 803CAE1C 003C7D7C 28 0C 00 00 */ cmplwi r12, 0 +/* 803CAE20 003C7D80 41 82 00 18 */ beq lbl_803CAE38 +/* 803CAE24 003C7D84 38 00 00 00 */ li r0, 0 +/* 803CAE28 003C7D88 7D 88 03 A6 */ mtlr r12 +/* 803CAE2C 003C7D8C 90 1E 00 38 */ stw r0, 0x38(r30) +/* 803CAE30 003C7D90 7F E3 FB 78 */ mr r3, r31 +/* 803CAE34 003C7D94 4E 80 00 21 */ blrl +lbl_803CAE38: +/* 803CAE38 003C7D98 80 1E 00 1C */ lwz r0, 0x1c(r30) +/* 803CAE3C 003C7D9C 28 00 00 00 */ cmplwi r0, 0 +/* 803CAE40 003C7DA0 41 82 00 4C */ beq lbl_803CAE8C +/* 803CAE44 003C7DA4 4B FB 46 35 */ bl OSGetCurrentContext +/* 803CAE48 003C7DA8 3B A3 00 00 */ addi r29, r3, 0 +/* 803CAE4C 003C7DAC 38 61 00 10 */ addi r3, r1, 0x10 +/* 803CAE50 003C7DB0 4B FB 47 C5 */ bl OSClearContext +/* 803CAE54 003C7DB4 38 61 00 10 */ addi r3, r1, 0x10 +/* 803CAE58 003C7DB8 4B FB 45 C5 */ bl OSSetCurrentContext +/* 803CAE5C 003C7DBC 81 9E 00 1C */ lwz r12, 0x1c(r30) +/* 803CAE60 003C7DC0 38 00 00 00 */ li r0, 0 +/* 803CAE64 003C7DC4 38 7F 00 00 */ addi r3, r31, 0 +/* 803CAE68 003C7DC8 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 803CAE6C 003C7DCC 7D 88 03 A6 */ mtlr r12 +/* 803CAE70 003C7DD0 80 9E 00 20 */ lwz r4, 0x20(r30) +/* 803CAE74 003C7DD4 4E 80 00 21 */ blrl +/* 803CAE78 003C7DD8 38 61 00 10 */ addi r3, r1, 0x10 +/* 803CAE7C 003C7DDC 4B FB 47 99 */ bl OSClearContext +/* 803CAE80 003C7DE0 7F A3 EB 78 */ mr r3, r29 +/* 803CAE84 003C7DE4 4B FB 45 99 */ bl OSSetCurrentContext +/* 803CAE88 003C7DE8 4B FB 9C 65 */ bl __OSReschedule +lbl_803CAE8C: +/* 803CAE8C 003C7DEC 80 01 02 F4 */ lwz r0, 0x2f4(r1) +/* 803CAE90 003C7DF0 83 E1 02 EC */ lwz r31, 0x2ec(r1) +/* 803CAE94 003C7DF4 83 C1 02 E8 */ lwz r30, 0x2e8(r1) +/* 803CAE98 003C7DF8 83 A1 02 E4 */ lwz r29, 0x2e4(r1) +/* 803CAE9C 003C7DFC 38 21 02 F0 */ addi r1, r1, 0x2f0 +/* 803CAEA0 003C7E00 7C 08 03 A6 */ mtlr r0 +/* 803CAEA4 003C7E04 4E 80 00 20 */ blr + +.global __GBATransfer +__GBATransfer: +/* 803CAEA8 003C7E08 7C 08 02 A6 */ mflr r0 +/* 803CAEAC 003C7E0C 90 01 00 04 */ stw r0, 4(r1) +/* 803CAEB0 003C7E10 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 803CAEB4 003C7E14 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 803CAEB8 003C7E18 3B 63 00 00 */ addi r27, r3, 0 +/* 803CAEBC 003C7E1C 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAEC0 003C7E20 57 67 40 2E */ slwi r7, r27, 8 +/* 803CAEC4 003C7E24 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CAEC8 003C7E28 3B 84 00 00 */ addi r28, r4, 0 +/* 803CAECC 003C7E2C 3B A5 00 00 */ addi r29, r5, 0 +/* 803CAED0 003C7E30 3B E6 00 00 */ addi r31, r6, 0 +/* 803CAED4 003C7E34 7F C0 3A 14 */ add r30, r0, r7 +/* 803CAED8 003C7E38 4B FB 67 89 */ bl OSDisableInterrupts +/* 803CAEDC 003C7E3C 93 FE 00 38 */ stw r31, 0x38(r30) +/* 803CAEE0 003C7E40 3C 80 80 3D */ lis r4, TypeAndStatusCallback@ha +/* 803CAEE4 003C7E44 3B E3 00 00 */ addi r31, r3, 0 +/* 803CAEE8 003C7E48 93 9E 00 0C */ stw r28, 0xc(r30) +/* 803CAEEC 003C7E4C 38 84 AD 84 */ addi r4, r4, TypeAndStatusCallback@l +/* 803CAEF0 003C7E50 7F 63 DB 78 */ mr r3, r27 +/* 803CAEF4 003C7E54 93 BE 00 10 */ stw r29, 0x10(r30) +/* 803CAEF8 003C7E58 4B FF 4D 69 */ bl SIGetTypeAsync +/* 803CAEFC 003C7E5C 7F E3 FB 78 */ mr r3, r31 +/* 803CAF00 003C7E60 4B FB 67 89 */ bl OSRestoreInterrupts +/* 803CAF04 003C7E64 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 803CAF08 003C7E68 38 60 00 00 */ li r3, 0 +/* 803CAF0C 003C7E6C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 803CAF10 003C7E70 38 21 00 30 */ addi r1, r1, 0x30 +/* 803CAF14 003C7E74 7C 08 03 A6 */ mtlr r0 +/* 803CAF18 003C7E78 4E 80 00 20 */ blr + +.global __GBASetDelay +__GBASetDelay: +/* 803CAF1C 003C7E7C 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CAF20 003C7E80 54 63 40 2E */ slwi r3, r3, 8 +/* 803CAF24 003C7E84 38 04 A1 A0 */ addi r0, r4, __GBA@l +/* 803CAF28 003C7E88 7C E0 1A 14 */ add r7, r0, r3 +/* 803CAF2C 003C7E8C 80 67 00 30 */ lwz r3, 0x30(r7) +/* 803CAF30 003C7E90 80 87 00 34 */ lwz r4, 0x34(r7) +/* 803CAF34 003C7E94 90 C7 00 34 */ stw r6, 0x34(r7) +/* 803CAF38 003C7E98 90 A7 00 30 */ stw r5, 0x30(r7) +/* 803CAF3C 003C7E9C 4E 80 00 20 */ blr + +.global __GBADSPTaskInit +__GBADSPTaskInit: +/* 803CAF40 003C7EA0 7C 08 02 A6 */ mflr r0 +/* 803CAF44 003C7EA4 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CAF48 003C7EA8 90 01 00 04 */ stw r0, 4(r1) +/* 803CAF4C 003C7EAC 38 84 A1 A0 */ addi r4, r4, __GBA@l +/* 803CAF50 003C7EB0 38 04 00 A8 */ addi r0, r4, 0xa8 +/* 803CAF54 003C7EB4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803CAF58 003C7EB8 7C 00 18 40 */ cmplw r0, r3 +/* 803CAF5C 003C7EBC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803CAF60 003C7EC0 40 82 00 0C */ bne lbl_803CAF6C +/* 803CAF64 003C7EC4 38 00 00 00 */ li r0, 0 +/* 803CAF68 003C7EC8 48 00 00 68 */ b lbl_803CAFD0 +lbl_803CAF6C: +/* 803CAF6C 003C7ECC 38 84 01 00 */ addi r4, r4, 0x100 +/* 803CAF70 003C7ED0 38 04 00 A8 */ addi r0, r4, 0xa8 +/* 803CAF74 003C7ED4 7C 00 18 40 */ cmplw r0, r3 +/* 803CAF78 003C7ED8 40 82 00 0C */ bne lbl_803CAF84 +/* 803CAF7C 003C7EDC 38 00 00 01 */ li r0, 1 +/* 803CAF80 003C7EE0 48 00 00 50 */ b lbl_803CAFD0 +lbl_803CAF84: +/* 803CAF84 003C7EE4 38 04 01 A8 */ addi r0, r4, 0x1a8 +/* 803CAF88 003C7EE8 7C 00 18 40 */ cmplw r0, r3 +/* 803CAF8C 003C7EEC 38 84 01 00 */ addi r4, r4, 0x100 +/* 803CAF90 003C7EF0 40 82 00 0C */ bne lbl_803CAF9C +/* 803CAF94 003C7EF4 38 00 00 02 */ li r0, 2 +/* 803CAF98 003C7EF8 48 00 00 38 */ b lbl_803CAFD0 +lbl_803CAF9C: +/* 803CAF9C 003C7EFC 38 04 01 A8 */ addi r0, r4, 0x1a8 +/* 803CAFA0 003C7F00 7C 00 18 40 */ cmplw r0, r3 +/* 803CAFA4 003C7F04 40 82 00 0C */ bne lbl_803CAFB0 +/* 803CAFA8 003C7F08 38 00 00 03 */ li r0, 3 +/* 803CAFAC 003C7F0C 48 00 00 24 */ b lbl_803CAFD0 +lbl_803CAFB0: +/* 803CAFB0 003C7F10 3C 60 80 3F */ lis r3, lbl_803F7520@ha +/* 803CAFB4 003C7F14 4C C6 31 82 */ crclr 6 +/* 803CAFB8 003C7F18 3C 80 80 3F */ lis r4, lbl_803F752C@ha +/* 803CAFBC 003C7F1C 38 A4 75 2C */ addi r5, r4, lbl_803F752C@l +/* 803CAFC0 003C7F20 38 63 75 20 */ addi r3, r3, lbl_803F7520@l +/* 803CAFC4 003C7F24 38 80 00 A9 */ li r4, 0xa9 +/* 803CAFC8 003C7F28 4B FB 4A 65 */ bl OSPanic +/* 803CAFCC 003C7F2C 38 00 FF FF */ li r0, -1 +lbl_803CAFD0: +/* 803CAFD0 003C7F30 3C 60 80 57 */ lis r3, __GBA@ha +/* 803CAFD4 003C7F34 54 04 40 2E */ slwi r4, r0, 8 +/* 803CAFD8 003C7F38 38 03 A1 A0 */ addi r0, r3, __GBA@l +/* 803CAFDC 003C7F3C 7F E0 22 14 */ add r31, r0, r4 +/* 803CAFE0 003C7F40 3C 60 AB BA */ lis r3, 0xabba +/* 803CAFE4 003C7F44 4B FA 4A 0D */ bl DSPSendMailToDSP +lbl_803CAFE8: +/* 803CAFE8 003C7F48 4B FA 49 D1 */ bl DSPCheckMailToDSP +/* 803CAFEC 003C7F4C 28 03 00 00 */ cmplwi r3, 0 +/* 803CAFF0 003C7F50 40 82 FF F8 */ bne lbl_803CAFE8 +/* 803CAFF4 003C7F54 80 7F 00 F8 */ lwz r3, 0xf8(r31) +/* 803CAFF8 003C7F58 4B FA 49 F9 */ bl DSPSendMailToDSP +lbl_803CAFFC: +/* 803CAFFC 003C7F5C 4B FA 49 BD */ bl DSPCheckMailToDSP +/* 803CB000 003C7F60 28 03 00 00 */ cmplwi r3, 0 +/* 803CB004 003C7F64 40 82 FF F8 */ bne lbl_803CAFFC +/* 803CB008 003C7F68 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803CB00C 003C7F6C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803CB010 003C7F70 38 21 00 20 */ addi r1, r1, 0x20 +/* 803CB014 003C7F74 7C 08 03 A6 */ mtlr r0 +/* 803CB018 003C7F78 4E 80 00 20 */ blr + +.global __GBADSPTaskDone +__GBADSPTaskDone: +/* 803CB01C 003C7F7C 3C 80 80 57 */ lis r4, __GBA@ha +/* 803CB020 003C7F80 7C 08 02 A6 */ mflr r0 +/* 803CB024 003C7F84 38 84 A1 A0 */ addi r4, r4, __GBA@l +/* 803CB028 003C7F88 90 01 00 04 */ stw r0, 4(r1) +/* 803CB02C 003C7F8C 38 04 00 A8 */ addi r0, r4, 0xa8 +/* 803CB030 003C7F90 7C 00 18 40 */ cmplw r0, r3 +/* 803CB034 003C7F94 94 21 FF F8 */ stwu r1, -8(r1) +/* 803CB038 003C7F98 40 82 00 0C */ bne lbl_803CB044 +/* 803CB03C 003C7F9C 38 00 00 00 */ li r0, 0 +/* 803CB040 003C7FA0 48 00 00 68 */ b lbl_803CB0A8 +lbl_803CB044: +/* 803CB044 003C7FA4 38 84 01 00 */ addi r4, r4, 0x100 +/* 803CB048 003C7FA8 38 04 00 A8 */ addi r0, r4, 0xa8 +/* 803CB04C 003C7FAC 7C 00 18 40 */ cmplw r0, r3 +/* 803CB050 003C7FB0 40 82 00 0C */ bne lbl_803CB05C +/* 803CB054 003C7FB4 38 00 00 01 */ li r0, 1 +/* 803CB058 003C7FB8 48 00 00 50 */ b lbl_803CB0A8 +lbl_803CB05C: +/* 803CB05C 003C7FBC 38 04 01 A8 */ addi r0, r4, 0x1a8 +/* 803CB060 003C7FC0 7C 00 18 40 */ cmplw r0, r3 +/* 803CB064 003C7FC4 38 84 01 00 */ addi r4, r4, 0x100 +/* 803CB068 003C7FC8 40 82 00 0C */ bne lbl_803CB074 +/* 803CB06C 003C7FCC 38 00 00 02 */ li r0, 2 +/* 803CB070 003C7FD0 48 00 00 38 */ b lbl_803CB0A8 +lbl_803CB074: +/* 803CB074 003C7FD4 38 04 01 A8 */ addi r0, r4, 0x1a8 +/* 803CB078 003C7FD8 7C 00 18 40 */ cmplw r0, r3 +/* 803CB07C 003C7FDC 40 82 00 0C */ bne lbl_803CB088 +/* 803CB080 003C7FE0 38 00 00 03 */ li r0, 3 +/* 803CB084 003C7FE4 48 00 00 24 */ b lbl_803CB0A8 +lbl_803CB088: +/* 803CB088 003C7FE8 3C 60 80 3F */ lis r3, lbl_803F7520@ha +/* 803CB08C 003C7FEC 4C C6 31 82 */ crclr 6 +/* 803CB090 003C7FF0 3C 80 80 3F */ lis r4, lbl_803F752C@ha +/* 803CB094 003C7FF4 38 A4 75 2C */ addi r5, r4, lbl_803F752C@l +/* 803CB098 003C7FF8 38 63 75 20 */ addi r3, r3, lbl_803F7520@l +/* 803CB09C 003C7FFC 38 80 00 A9 */ li r4, 0xa9 +/* 803CB0A0 003C8000 4B FB 49 8D */ bl OSPanic +/* 803CB0A4 003C8004 38 00 FF FF */ li r0, -1 +lbl_803CB0A8: +/* 803CB0A8 003C8008 7C 03 03 78 */ mr r3, r0 +/* 803CB0AC 003C800C 38 80 00 00 */ li r4, 0 +/* 803CB0B0 003C8010 4B FF ED B1 */ bl __GBAX01 +/* 803CB0B4 003C8014 80 01 00 0C */ lwz r0, 0xc(r1) +/* 803CB0B8 003C8018 38 21 00 08 */ addi r1, r1, 8 +/* 803CB0BC 003C801C 7C 08 03 A6 */ mtlr r0 +/* 803CB0C0 003C8020 4E 80 00 20 */ blr + +.global __GBAX02 +__GBAX02: +/* 803CB0C4 003C8024 7C 08 02 A6 */ mflr r0 +/* 803CB0C8 003C8028 3C A0 80 57 */ lis r5, __GBA@ha +/* 803CB0CC 003C802C 90 01 00 04 */ stw r0, 4(r1) +/* 803CB0D0 003C8030 38 05 A1 A0 */ addi r0, r5, __GBA@l +/* 803CB0D4 003C8034 54 63 40 2E */ slwi r3, r3, 8 +/* 803CB0D8 003C8038 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803CB0DC 003C803C 38 A0 00 04 */ li r5, 4 +/* 803CB0E0 003C8040 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803CB0E4 003C8044 7F E0 1A 14 */ add r31, r0, r3 +/* 803CB0E8 003C8048 93 C1 00 18 */ stw r30, 0x18(r1) +/* 803CB0EC 003C804C 3B DF 00 40 */ addi r30, r31, 0x40 +/* 803CB0F0 003C8050 93 A1 00 14 */ stw r29, 0x14(r1) +/* 803CB0F4 003C8054 83 BF 00 F8 */ lwz r29, 0xf8(r31) +/* 803CB0F8 003C8058 38 7D 00 00 */ addi r3, r29, 0 +/* 803CB0FC 003C805C 4B C3 83 95 */ bl memcpy +/* 803CB100 003C8060 80 1E 00 00 */ lwz r0, 0(r30) +/* 803CB104 003C8064 38 7D 00 20 */ addi r3, r29, 0x20 +/* 803CB108 003C8068 38 80 00 20 */ li r4, 0x20 +/* 803CB10C 003C806C 90 1D 00 04 */ stw r0, 4(r29) +/* 803CB110 003C8070 80 1E 00 04 */ lwz r0, 4(r30) +/* 803CB114 003C8074 90 1D 00 08 */ stw r0, 8(r29) +/* 803CB118 003C8078 80 1E 00 0C */ lwz r0, 0xc(r30) +/* 803CB11C 003C807C 90 1D 00 0C */ stw r0, 0xc(r29) +/* 803CB120 003C8080 90 7D 00 10 */ stw r3, 0x10(r29) +/* 803CB124 003C8084 4B FB 39 61 */ bl DCInvalidateRange +/* 803CB128 003C8088 38 7D 00 00 */ addi r3, r29, 0 +/* 803CB12C 003C808C 38 80 00 20 */ li r4, 0x20 +/* 803CB130 003C8090 4B FB 39 81 */ bl DCFlushRange +/* 803CB134 003C8094 38 00 00 FF */ li r0, 0xff +/* 803CB138 003C8098 3C 80 80 3F */ lis r4, lbl_803F71A0@ha +/* 803CB13C 003C809C 90 1F 00 AC */ stw r0, 0xac(r31) +/* 803CB140 003C80A0 38 84 71 A0 */ addi r4, r4, lbl_803F71A0@l +/* 803CB144 003C80A4 3C 04 80 00 */ addis r0, r4, 0x8000 +/* 803CB148 003C80A8 90 1F 00 B4 */ stw r0, 0xb4(r31) +/* 803CB14C 003C80AC 38 00 03 80 */ li r0, 0x380 +/* 803CB150 003C80B0 3C A0 80 3D */ lis r5, __GBADSPTaskInit@ha +/* 803CB154 003C80B4 90 1F 00 B8 */ stw r0, 0xb8(r31) +/* 803CB158 003C80B8 38 C0 00 00 */ li r6, 0 +/* 803CB15C 003C80BC 38 00 00 10 */ li r0, 0x10 +/* 803CB160 003C80C0 90 DF 00 BC */ stw r6, 0xbc(r31) +/* 803CB164 003C80C4 38 A5 AF 40 */ addi r5, r5, __GBADSPTaskInit@l +/* 803CB168 003C80C8 3C 80 80 3D */ lis r4, __GBADSPTaskDone@ha +/* 803CB16C 003C80CC B0 1F 00 CC */ sth r0, 0xcc(r31) +/* 803CB170 003C80D0 38 04 B0 1C */ addi r0, r4, __GBADSPTaskDone@l +/* 803CB174 003C80D4 38 7F 00 A8 */ addi r3, r31, 0xa8 +/* 803CB178 003C80D8 90 BF 00 D0 */ stw r5, 0xd0(r31) +/* 803CB17C 003C80DC 90 DF 00 D4 */ stw r6, 0xd4(r31) +/* 803CB180 003C80E0 90 1F 00 D8 */ stw r0, 0xd8(r31) +/* 803CB184 003C80E4 90 DF 00 DC */ stw r6, 0xdc(r31) +/* 803CB188 003C80E8 4B FA 49 D9 */ bl DSPAddTask +/* 803CB18C 003C80EC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803CB190 003C80F0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803CB194 003C80F4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 803CB198 003C80F8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 803CB19C 003C80FC 38 21 00 20 */ addi r1, r1, 0x20 +/* 803CB1A0 003C8100 7C 08 03 A6 */ mtlr r0 +/* 803CB1A4 003C8104 4E 80 00 20 */ blr diff --git a/asm/Dolphin/THPAudio.s b/asm/Dolphin/THPAudio.s new file mode 100644 index 00000000..50007e0c --- /dev/null +++ b/asm/Dolphin/THPAudio.s @@ -0,0 +1,372 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global THPAudioDecode +THPAudioDecode: +/* 803C90C8 003C6028 7C 08 02 A6 */ mflr r0 +/* 803C90CC 003C602C 28 03 00 00 */ cmplwi r3, 0 +/* 803C90D0 003C6030 90 01 00 04 */ stw r0, 4(r1) +/* 803C90D4 003C6034 94 21 FF A8 */ stwu r1, -0x58(r1) +/* 803C90D8 003C6038 BE 81 00 28 */ stmw r20, 0x28(r1) +/* 803C90DC 003C603C 3B E4 00 00 */ addi r31, r4, 0 +/* 803C90E0 003C6040 41 82 00 0C */ beq lbl_803C90EC +/* 803C90E4 003C6044 28 1F 00 00 */ cmplwi r31, 0 +/* 803C90E8 003C6048 40 82 00 0C */ bne lbl_803C90F4 +lbl_803C90EC: +/* 803C90EC 003C604C 38 60 00 00 */ li r3, 0 +/* 803C90F0 003C6050 48 00 04 28 */ b lbl_803C9518 +lbl_803C90F4: +/* 803C90F4 003C6054 80 1F 00 00 */ lwz r0, 0(r31) +/* 803C90F8 003C6058 2C 05 00 01 */ cmpwi r5, 1 +/* 803C90FC 003C605C 38 9F 00 50 */ addi r4, r31, 0x50 +/* 803C9100 003C6060 7F 7F 02 14 */ add r27, r31, r0 +/* 803C9104 003C6064 3B 7B 00 50 */ addi r27, r27, 0x50 +/* 803C9108 003C6068 40 82 00 1C */ bne lbl_803C9124 +/* 803C910C 003C606C 80 1F 00 04 */ lwz r0, 4(r31) +/* 803C9110 003C6070 3B C3 00 00 */ addi r30, r3, 0 +/* 803C9114 003C6074 3B 40 00 01 */ li r26, 1 +/* 803C9118 003C6078 54 00 08 3C */ slwi r0, r0, 1 +/* 803C911C 003C607C 7F A3 02 14 */ add r29, r3, r0 +/* 803C9120 003C6080 48 00 00 10 */ b lbl_803C9130 +lbl_803C9124: +/* 803C9124 003C6084 3B C3 00 00 */ addi r30, r3, 0 +/* 803C9128 003C6088 3B A3 00 02 */ addi r29, r3, 2 +/* 803C912C 003C608C 3B 40 00 02 */ li r26, 2 +lbl_803C9130: +/* 803C9130 003C6090 80 1F 00 00 */ lwz r0, 0(r31) +/* 803C9134 003C6094 28 00 00 00 */ cmplwi r0, 0 +/* 803C9138 003C6098 40 82 01 54 */ bne lbl_803C928C +/* 803C913C 003C609C 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C9140 003C60A0 48 00 04 7D */ bl __THPAudioInitialize +/* 803C9144 003C60A4 3F 20 00 01 */ lis r25, 0x0000FFFF@ha +/* 803C9148 003C60A8 AA BF 00 48 */ lha r21, 0x48(r31) +/* 803C914C 003C60AC 3E E0 80 00 */ lis r23, 0x7FFFFFFF@ha +/* 803C9150 003C60B0 AA 9F 00 4A */ lha r20, 0x4a(r31) +/* 803C9154 003C60B4 57 5B 08 3C */ slwi r27, r26, 1 +/* 803C9158 003C60B8 3B 59 FF FF */ addi r26, r25, 0x0000FFFF@l +/* 803C915C 003C60BC 3B 17 FF FF */ addi r24, r23, 0x7FFFFFFF@l +/* 803C9160 003C60C0 3A C0 00 00 */ li r22, 0 +/* 803C9164 003C60C4 48 00 01 18 */ b lbl_803C927C +lbl_803C9168: +/* 803C9168 003C60C8 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C916C 003C60CC 48 00 03 C1 */ bl __THPAudioGetNewSample +/* 803C9170 003C60D0 88 A1 00 1C */ lbz r5, 0x1c(r1) +/* 803C9174 003C60D4 7E 86 07 34 */ extsh r6, r20 +/* 803C9178 003C60D8 88 01 00 1D */ lbz r0, 0x1d(r1) +/* 803C917C 003C60DC 7E A4 07 34 */ extsh r4, r21 +/* 803C9180 003C60E0 54 A5 10 3A */ slwi r5, r5, 2 +/* 803C9184 003C60E4 7C BF 2A 14 */ add r5, r31, r5 +/* 803C9188 003C60E8 A8 E5 00 0A */ lha r7, 0xa(r5) +/* 803C918C 003C60EC 7C 60 00 30 */ slw r0, r3, r0 +/* 803C9190 003C60F0 A8 65 00 08 */ lha r3, 8(r5) +/* 803C9194 003C60F4 54 05 58 28 */ slwi r5, r0, 0xb +/* 803C9198 003C60F8 7C C7 31 D6 */ mullw r6, r7, r6 +/* 803C919C 003C60FC 7C 83 21 D6 */ mullw r4, r3, r4 +/* 803C91A0 003C6100 7C C3 FE 70 */ srawi r3, r6, 0x1f +/* 803C91A4 003C6104 7C 80 FE 70 */ srawi r0, r4, 0x1f +/* 803C91A8 003C6108 7C 86 20 14 */ addc r4, r6, r4 +/* 803C91AC 003C610C 7C 63 01 14 */ adde r3, r3, r0 +/* 803C91B0 003C6110 7C A0 FE 70 */ srawi r0, r5, 0x1f +/* 803C91B4 003C6114 7C 84 28 14 */ addc r4, r4, r5 +/* 803C91B8 003C6118 7C 63 01 14 */ adde r3, r3, r0 +/* 803C91BC 003C611C 38 A0 00 05 */ li r5, 5 +/* 803C91C0 003C6120 4B FC 0D 35 */ bl __shl2i +/* 803C91C4 003C6124 7C 80 D0 38 */ and r0, r4, r26 +/* 803C91C8 003C6128 54 00 04 3E */ clrlwi r0, r0, 0x10 +/* 803C91CC 003C612C 28 00 80 00 */ cmplwi r0, 0x8000 +/* 803C91D0 003C6130 38 C0 00 00 */ li r6, 0 +/* 803C91D4 003C6134 7C 67 30 38 */ and r7, r3, r6 +/* 803C91D8 003C6138 40 81 00 10 */ ble lbl_803C91E8 +/* 803C91DC 003C613C 7C 84 C8 14 */ addc r4, r4, r25 +/* 803C91E0 003C6140 7C 63 31 14 */ adde r3, r3, r6 +/* 803C91E4 003C6144 48 00 00 24 */ b lbl_803C9208 +lbl_803C91E8: +/* 803C91E8 003C6148 40 82 00 20 */ bne lbl_803C9208 +/* 803C91EC 003C614C 7C 80 C8 38 */ and r0, r4, r25 +/* 803C91F0 003C6150 7C 05 32 78 */ xor r5, r0, r6 +/* 803C91F4 003C6154 7C E0 32 78 */ xor r0, r7, r6 +/* 803C91F8 003C6158 7C A0 03 79 */ or. r0, r5, r0 +/* 803C91FC 003C615C 41 82 00 0C */ beq lbl_803C9208 +/* 803C9200 003C6160 7C 84 C8 14 */ addc r4, r4, r25 +/* 803C9204 003C6164 7C 63 31 14 */ adde r3, r3, r6 +lbl_803C9208: +/* 803C9208 003C6168 38 00 00 00 */ li r0, 0 +/* 803C920C 003C616C 6C 06 80 00 */ xoris r6, r0, 0x8000 +/* 803C9210 003C6170 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 803C9214 003C6174 7C 04 C0 10 */ subfc r0, r4, r24 +/* 803C9218 003C6178 7C A5 31 10 */ subfe r5, r5, r6 +/* 803C921C 003C617C 7C A6 31 10 */ subfe r5, r6, r6 +/* 803C9220 003C6180 7C A5 00 D1 */ neg. r5, r5 +/* 803C9224 003C6184 41 82 00 0C */ beq lbl_803C9230 +/* 803C9228 003C6188 38 97 FF FF */ addi r4, r23, -1 +/* 803C922C 003C618C 38 60 00 00 */ li r3, 0 +lbl_803C9230: +/* 803C9230 003C6190 38 00 FF FF */ li r0, -1 +/* 803C9234 003C6194 6C 05 80 00 */ xoris r5, r0, 0x8000 +/* 803C9238 003C6198 6C 66 80 00 */ xoris r6, r3, 0x8000 +/* 803C923C 003C619C 7C 17 20 10 */ subfc r0, r23, r4 +/* 803C9240 003C61A0 7C A5 31 10 */ subfe r5, r5, r6 +/* 803C9244 003C61A4 7C A6 31 10 */ subfe r5, r6, r6 +/* 803C9248 003C61A8 7C A5 00 D1 */ neg. r5, r5 +/* 803C924C 003C61AC 41 82 00 0C */ beq lbl_803C9258 +/* 803C9250 003C61B0 3C 80 80 00 */ lis r4, 0x8000 +/* 803C9254 003C61B4 38 60 FF FF */ li r3, -1 +lbl_803C9258: +/* 803C9258 003C61B8 38 A0 00 10 */ li r5, 0x10 +/* 803C925C 003C61BC 4B FC 0C E1 */ bl __shr2i +/* 803C9260 003C61C0 B0 9D 00 00 */ sth r4, 0(r29) +/* 803C9264 003C61C4 7E B4 AB 78 */ mr r20, r21 +/* 803C9268 003C61C8 3A A4 00 00 */ addi r21, r4, 0 +/* 803C926C 003C61CC B0 9E 00 00 */ sth r4, 0(r30) +/* 803C9270 003C61D0 7F BD DA 14 */ add r29, r29, r27 +/* 803C9274 003C61D4 7F DE DA 14 */ add r30, r30, r27 +/* 803C9278 003C61D8 3A D6 00 01 */ addi r22, r22, 1 +lbl_803C927C: +/* 803C927C 003C61DC 80 1F 00 04 */ lwz r0, 4(r31) +/* 803C9280 003C61E0 7C 16 00 40 */ cmplw r22, r0 +/* 803C9284 003C61E4 41 80 FE E4 */ blt lbl_803C9168 +/* 803C9288 003C61E8 48 00 02 8C */ b lbl_803C9514 +lbl_803C928C: +/* 803C928C 003C61EC 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C9290 003C61F0 48 00 03 2D */ bl __THPAudioInitialize +/* 803C9294 003C61F4 3F 00 00 01 */ lis r24, 0x0000FFFF@ha +/* 803C9298 003C61F8 AA DF 00 48 */ lha r22, 0x48(r31) +/* 803C929C 003C61FC 3F 20 80 00 */ lis r25, 0x7FFFFFFF@ha +/* 803C92A0 003C6200 AA 9F 00 4A */ lha r20, 0x4a(r31) +/* 803C92A4 003C6204 57 5C 08 3C */ slwi r28, r26, 1 +/* 803C92A8 003C6208 3A F8 FF FF */ addi r23, r24, 0x0000FFFF@l +/* 803C92AC 003C620C 3B 59 FF FF */ addi r26, r25, 0x7FFFFFFF@l +/* 803C92B0 003C6210 3A A0 00 00 */ li r21, 0 +/* 803C92B4 003C6214 48 00 01 10 */ b lbl_803C93C4 +lbl_803C92B8: +/* 803C92B8 003C6218 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C92BC 003C621C 48 00 02 71 */ bl __THPAudioGetNewSample +/* 803C92C0 003C6220 88 A1 00 1C */ lbz r5, 0x1c(r1) +/* 803C92C4 003C6224 7E 86 07 34 */ extsh r6, r20 +/* 803C92C8 003C6228 88 01 00 1D */ lbz r0, 0x1d(r1) +/* 803C92CC 003C622C 7E C4 07 34 */ extsh r4, r22 +/* 803C92D0 003C6230 54 A5 10 3A */ slwi r5, r5, 2 +/* 803C92D4 003C6234 7C BF 2A 14 */ add r5, r31, r5 +/* 803C92D8 003C6238 A8 E5 00 0A */ lha r7, 0xa(r5) +/* 803C92DC 003C623C 7C 60 00 30 */ slw r0, r3, r0 +/* 803C92E0 003C6240 A8 65 00 08 */ lha r3, 8(r5) +/* 803C92E4 003C6244 54 05 58 28 */ slwi r5, r0, 0xb +/* 803C92E8 003C6248 7C C7 31 D6 */ mullw r6, r7, r6 +/* 803C92EC 003C624C 7C 83 21 D6 */ mullw r4, r3, r4 +/* 803C92F0 003C6250 7C C3 FE 70 */ srawi r3, r6, 0x1f +/* 803C92F4 003C6254 7C 80 FE 70 */ srawi r0, r4, 0x1f +/* 803C92F8 003C6258 7C 86 20 14 */ addc r4, r6, r4 +/* 803C92FC 003C625C 7C 63 01 14 */ adde r3, r3, r0 +/* 803C9300 003C6260 7C A0 FE 70 */ srawi r0, r5, 0x1f +/* 803C9304 003C6264 7C 84 28 14 */ addc r4, r4, r5 +/* 803C9308 003C6268 7C 63 01 14 */ adde r3, r3, r0 +/* 803C930C 003C626C 38 A0 00 05 */ li r5, 5 +/* 803C9310 003C6270 4B FC 0B E5 */ bl __shl2i +/* 803C9314 003C6274 7C 80 B8 38 */ and r0, r4, r23 +/* 803C9318 003C6278 54 00 04 3E */ clrlwi r0, r0, 0x10 +/* 803C931C 003C627C 28 00 80 00 */ cmplwi r0, 0x8000 +/* 803C9320 003C6280 38 C0 00 00 */ li r6, 0 +/* 803C9324 003C6284 7C 67 30 38 */ and r7, r3, r6 +/* 803C9328 003C6288 40 81 00 10 */ ble lbl_803C9338 +/* 803C932C 003C628C 7C 84 C0 14 */ addc r4, r4, r24 +/* 803C9330 003C6290 7C 63 31 14 */ adde r3, r3, r6 +/* 803C9334 003C6294 48 00 00 24 */ b lbl_803C9358 +lbl_803C9338: +/* 803C9338 003C6298 40 82 00 20 */ bne lbl_803C9358 +/* 803C933C 003C629C 7C 80 C0 38 */ and r0, r4, r24 +/* 803C9340 003C62A0 7C 05 32 78 */ xor r5, r0, r6 +/* 803C9344 003C62A4 7C E0 32 78 */ xor r0, r7, r6 +/* 803C9348 003C62A8 7C A0 03 79 */ or. r0, r5, r0 +/* 803C934C 003C62AC 41 82 00 0C */ beq lbl_803C9358 +/* 803C9350 003C62B0 7C 84 C0 14 */ addc r4, r4, r24 +/* 803C9354 003C62B4 7C 63 31 14 */ adde r3, r3, r6 +lbl_803C9358: +/* 803C9358 003C62B8 38 E0 00 00 */ li r7, 0 +/* 803C935C 003C62BC 6C E6 80 00 */ xoris r6, r7, 0x8000 +/* 803C9360 003C62C0 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 803C9364 003C62C4 7C 04 D0 10 */ subfc r0, r4, r26 +/* 803C9368 003C62C8 7C A5 31 10 */ subfe r5, r5, r6 +/* 803C936C 003C62CC 7C A6 31 10 */ subfe r5, r6, r6 +/* 803C9370 003C62D0 7C A5 00 D1 */ neg. r5, r5 +/* 803C9374 003C62D4 41 82 00 0C */ beq lbl_803C9380 +/* 803C9378 003C62D8 38 99 FF FF */ addi r4, r25, -1 +/* 803C937C 003C62DC 38 67 00 00 */ addi r3, r7, 0 +lbl_803C9380: +/* 803C9380 003C62E0 38 E0 FF FF */ li r7, -1 +/* 803C9384 003C62E4 6C 66 80 00 */ xoris r6, r3, 0x8000 +/* 803C9388 003C62E8 6C E5 80 00 */ xoris r5, r7, 0x8000 +/* 803C938C 003C62EC 7C 19 20 10 */ subfc r0, r25, r4 +/* 803C9390 003C62F0 7C A5 31 10 */ subfe r5, r5, r6 +/* 803C9394 003C62F4 7C A6 31 10 */ subfe r5, r6, r6 +/* 803C9398 003C62F8 7C A5 00 D1 */ neg. r5, r5 +/* 803C939C 003C62FC 41 82 00 0C */ beq lbl_803C93A8 +/* 803C93A0 003C6300 3C 80 80 00 */ lis r4, 0x8000 +/* 803C93A4 003C6304 38 67 00 00 */ addi r3, r7, 0 +lbl_803C93A8: +/* 803C93A8 003C6308 38 A0 00 10 */ li r5, 0x10 +/* 803C93AC 003C630C 4B FC 0B 91 */ bl __shr2i +/* 803C93B0 003C6310 B0 9D 00 00 */ sth r4, 0(r29) +/* 803C93B4 003C6314 3A 96 00 00 */ addi r20, r22, 0 +/* 803C93B8 003C6318 3A C4 00 00 */ addi r22, r4, 0 +/* 803C93BC 003C631C 7F BD E2 14 */ add r29, r29, r28 +/* 803C93C0 003C6320 3A B5 00 01 */ addi r21, r21, 1 +lbl_803C93C4: +/* 803C93C4 003C6324 80 1F 00 04 */ lwz r0, 4(r31) +/* 803C93C8 003C6328 7C 15 00 40 */ cmplw r21, r0 +/* 803C93CC 003C632C 41 80 FE EC */ blt lbl_803C92B8 +/* 803C93D0 003C6330 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C93D4 003C6334 38 9B 00 00 */ addi r4, r27, 0 +/* 803C93D8 003C6338 48 00 01 E5 */ bl __THPAudioInitialize +/* 803C93DC 003C633C 3F 40 00 01 */ lis r26, 0x0000FFFF@ha +/* 803C93E0 003C6340 AA FF 00 4C */ lha r23, 0x4c(r31) +/* 803C93E4 003C6344 3F 60 80 00 */ lis r27, 0x7FFFFFFF@ha +/* 803C93E8 003C6348 AA BF 00 4E */ lha r21, 0x4e(r31) +/* 803C93EC 003C634C 3B 3A FF FF */ addi r25, r26, 0x0000FFFF@l +/* 803C93F0 003C6350 3B BB FF FF */ addi r29, r27, 0x7FFFFFFF@l +/* 803C93F4 003C6354 3A C0 00 00 */ li r22, 0 +/* 803C93F8 003C6358 48 00 01 10 */ b lbl_803C9508 +lbl_803C93FC: +/* 803C93FC 003C635C 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C9400 003C6360 48 00 01 2D */ bl __THPAudioGetNewSample +/* 803C9404 003C6364 88 A1 00 1C */ lbz r5, 0x1c(r1) +/* 803C9408 003C6368 7E A6 07 34 */ extsh r6, r21 +/* 803C940C 003C636C 88 01 00 1D */ lbz r0, 0x1d(r1) +/* 803C9410 003C6370 7E E4 07 34 */ extsh r4, r23 +/* 803C9414 003C6374 54 A5 10 3A */ slwi r5, r5, 2 +/* 803C9418 003C6378 7C BF 2A 14 */ add r5, r31, r5 +/* 803C941C 003C637C A8 E5 00 2A */ lha r7, 0x2a(r5) +/* 803C9420 003C6380 7C 60 00 30 */ slw r0, r3, r0 +/* 803C9424 003C6384 A8 65 00 28 */ lha r3, 0x28(r5) +/* 803C9428 003C6388 54 05 58 28 */ slwi r5, r0, 0xb +/* 803C942C 003C638C 7C C7 31 D6 */ mullw r6, r7, r6 +/* 803C9430 003C6390 7C 83 21 D6 */ mullw r4, r3, r4 +/* 803C9434 003C6394 7C C3 FE 70 */ srawi r3, r6, 0x1f +/* 803C9438 003C6398 7C 80 FE 70 */ srawi r0, r4, 0x1f +/* 803C943C 003C639C 7C 86 20 14 */ addc r4, r6, r4 +/* 803C9440 003C63A0 7C 63 01 14 */ adde r3, r3, r0 +/* 803C9444 003C63A4 7C A0 FE 70 */ srawi r0, r5, 0x1f +/* 803C9448 003C63A8 7C 84 28 14 */ addc r4, r4, r5 +/* 803C944C 003C63AC 7C 63 01 14 */ adde r3, r3, r0 +/* 803C9450 003C63B0 38 A0 00 05 */ li r5, 5 +/* 803C9454 003C63B4 4B FC 0A A1 */ bl __shl2i +/* 803C9458 003C63B8 7C 80 C8 38 */ and r0, r4, r25 +/* 803C945C 003C63BC 54 00 04 3E */ clrlwi r0, r0, 0x10 +/* 803C9460 003C63C0 28 00 80 00 */ cmplwi r0, 0x8000 +/* 803C9464 003C63C4 38 C0 00 00 */ li r6, 0 +/* 803C9468 003C63C8 7C 67 30 38 */ and r7, r3, r6 +/* 803C946C 003C63CC 40 81 00 10 */ ble lbl_803C947C +/* 803C9470 003C63D0 7C 84 D0 14 */ addc r4, r4, r26 +/* 803C9474 003C63D4 7C 63 31 14 */ adde r3, r3, r6 +/* 803C9478 003C63D8 48 00 00 24 */ b lbl_803C949C +lbl_803C947C: +/* 803C947C 003C63DC 40 82 00 20 */ bne lbl_803C949C +/* 803C9480 003C63E0 7C 80 D0 38 */ and r0, r4, r26 +/* 803C9484 003C63E4 7C 05 32 78 */ xor r5, r0, r6 +/* 803C9488 003C63E8 7C E0 32 78 */ xor r0, r7, r6 +/* 803C948C 003C63EC 7C A0 03 79 */ or. r0, r5, r0 +/* 803C9490 003C63F0 41 82 00 0C */ beq lbl_803C949C +/* 803C9494 003C63F4 7C 84 D0 14 */ addc r4, r4, r26 +/* 803C9498 003C63F8 7C 63 31 14 */ adde r3, r3, r6 +lbl_803C949C: +/* 803C949C 003C63FC 38 E0 00 00 */ li r7, 0 +/* 803C94A0 003C6400 6C E6 80 00 */ xoris r6, r7, 0x8000 +/* 803C94A4 003C6404 6C 65 80 00 */ xoris r5, r3, 0x8000 +/* 803C94A8 003C6408 7C 04 E8 10 */ subfc r0, r4, r29 +/* 803C94AC 003C640C 7C A5 31 10 */ subfe r5, r5, r6 +/* 803C94B0 003C6410 7C A6 31 10 */ subfe r5, r6, r6 +/* 803C94B4 003C6414 7C A5 00 D1 */ neg. r5, r5 +/* 803C94B8 003C6418 41 82 00 0C */ beq lbl_803C94C4 +/* 803C94BC 003C641C 38 9B FF FF */ addi r4, r27, -1 +/* 803C94C0 003C6420 38 67 00 00 */ addi r3, r7, 0 +lbl_803C94C4: +/* 803C94C4 003C6424 38 E0 FF FF */ li r7, -1 +/* 803C94C8 003C6428 6C 66 80 00 */ xoris r6, r3, 0x8000 +/* 803C94CC 003C642C 6C E5 80 00 */ xoris r5, r7, 0x8000 +/* 803C94D0 003C6430 7C 1B 20 10 */ subfc r0, r27, r4 +/* 803C94D4 003C6434 7C A5 31 10 */ subfe r5, r5, r6 +/* 803C94D8 003C6438 7C A6 31 10 */ subfe r5, r6, r6 +/* 803C94DC 003C643C 7C A5 00 D1 */ neg. r5, r5 +/* 803C94E0 003C6440 41 82 00 0C */ beq lbl_803C94EC +/* 803C94E4 003C6444 3C 80 80 00 */ lis r4, 0x8000 +/* 803C94E8 003C6448 38 67 00 00 */ addi r3, r7, 0 +lbl_803C94EC: +/* 803C94EC 003C644C 38 A0 00 10 */ li r5, 0x10 +/* 803C94F0 003C6450 4B FC 0A 4D */ bl __shr2i +/* 803C94F4 003C6454 B0 9E 00 00 */ sth r4, 0(r30) +/* 803C94F8 003C6458 3A B7 00 00 */ addi r21, r23, 0 +/* 803C94FC 003C645C 3A E4 00 00 */ addi r23, r4, 0 +/* 803C9500 003C6460 7F DE E2 14 */ add r30, r30, r28 +/* 803C9504 003C6464 3A D6 00 01 */ addi r22, r22, 1 +lbl_803C9508: +/* 803C9508 003C6468 80 1F 00 04 */ lwz r0, 4(r31) +/* 803C950C 003C646C 7C 16 00 40 */ cmplw r22, r0 +/* 803C9510 003C6470 41 80 FE EC */ blt lbl_803C93FC +lbl_803C9514: +/* 803C9514 003C6474 80 7F 00 04 */ lwz r3, 4(r31) +lbl_803C9518: +/* 803C9518 003C6478 BA 81 00 28 */ lmw r20, 0x28(r1) +/* 803C951C 003C647C 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 803C9520 003C6480 38 21 00 58 */ addi r1, r1, 0x58 +/* 803C9524 003C6484 7C 08 03 A6 */ mtlr r0 +/* 803C9528 003C6488 4E 80 00 20 */ blr + +.global __THPAudioGetNewSample +__THPAudioGetNewSample: +/* 803C952C 003C648C 80 03 00 04 */ lwz r0, 4(r3) +/* 803C9530 003C6490 54 00 07 3F */ clrlwi. r0, r0, 0x1c +/* 803C9534 003C6494 40 82 00 3C */ bne lbl_803C9570 +/* 803C9538 003C6498 80 83 00 00 */ lwz r4, 0(r3) +/* 803C953C 003C649C 88 04 00 00 */ lbz r0, 0(r4) +/* 803C9540 003C64A0 54 00 E7 7E */ rlwinm r0, r0, 0x1c, 0x1d, 0x1f +/* 803C9544 003C64A4 98 03 00 08 */ stb r0, 8(r3) +/* 803C9548 003C64A8 80 83 00 00 */ lwz r4, 0(r3) +/* 803C954C 003C64AC 88 04 00 00 */ lbz r0, 0(r4) +/* 803C9550 003C64B0 54 00 07 3E */ clrlwi r0, r0, 0x1c +/* 803C9554 003C64B4 98 03 00 09 */ stb r0, 9(r3) +/* 803C9558 003C64B8 80 83 00 00 */ lwz r4, 0(r3) +/* 803C955C 003C64BC 38 04 00 01 */ addi r0, r4, 1 +/* 803C9560 003C64C0 90 03 00 00 */ stw r0, 0(r3) +/* 803C9564 003C64C4 80 83 00 04 */ lwz r4, 4(r3) +/* 803C9568 003C64C8 38 04 00 02 */ addi r0, r4, 2 +/* 803C956C 003C64CC 90 03 00 04 */ stw r0, 4(r3) +lbl_803C9570: +/* 803C9570 003C64D0 80 03 00 04 */ lwz r0, 4(r3) +/* 803C9574 003C64D4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 803C9578 003C64D8 41 82 00 20 */ beq lbl_803C9598 +/* 803C957C 003C64DC 80 A3 00 00 */ lwz r5, 0(r3) +/* 803C9580 003C64E0 88 85 00 00 */ lbz r4, 0(r5) +/* 803C9584 003C64E4 38 05 00 01 */ addi r0, r5, 1 +/* 803C9588 003C64E8 90 03 00 00 */ stw r0, 0(r3) +/* 803C958C 003C64EC 54 80 E0 06 */ slwi r0, r4, 0x1c +/* 803C9590 003C64F0 7C 05 E6 70 */ srawi r5, r0, 0x1c +/* 803C9594 003C64F4 48 00 00 14 */ b lbl_803C95A8 +lbl_803C9598: +/* 803C9598 003C64F8 80 83 00 00 */ lwz r4, 0(r3) +/* 803C959C 003C64FC 88 04 00 00 */ lbz r0, 0(r4) +/* 803C95A0 003C6500 54 00 C0 06 */ rlwinm r0, r0, 0x18, 0, 3 +/* 803C95A4 003C6504 7C 05 E6 70 */ srawi r5, r0, 0x1c +lbl_803C95A8: +/* 803C95A8 003C6508 80 83 00 04 */ lwz r4, 4(r3) +/* 803C95AC 003C650C 38 04 00 01 */ addi r0, r4, 1 +/* 803C95B0 003C6510 90 03 00 04 */ stw r0, 4(r3) +/* 803C95B4 003C6514 7C A3 2B 78 */ mr r3, r5 +/* 803C95B8 003C6518 4E 80 00 20 */ blr + +.global __THPAudioInitialize +__THPAudioInitialize: +/* 803C95BC 003C651C 90 83 00 00 */ stw r4, 0(r3) +/* 803C95C0 003C6520 38 00 00 02 */ li r0, 2 +/* 803C95C4 003C6524 90 03 00 04 */ stw r0, 4(r3) +/* 803C95C8 003C6528 80 83 00 00 */ lwz r4, 0(r3) +/* 803C95CC 003C652C 88 04 00 00 */ lbz r0, 0(r4) +/* 803C95D0 003C6530 54 00 E7 7E */ rlwinm r0, r0, 0x1c, 0x1d, 0x1f +/* 803C95D4 003C6534 98 03 00 08 */ stb r0, 8(r3) +/* 803C95D8 003C6538 80 83 00 00 */ lwz r4, 0(r3) +/* 803C95DC 003C653C 88 04 00 00 */ lbz r0, 0(r4) +/* 803C95E0 003C6540 54 00 07 3E */ clrlwi r0, r0, 0x1c +/* 803C95E4 003C6544 98 03 00 09 */ stb r0, 9(r3) +/* 803C95E8 003C6548 80 83 00 00 */ lwz r4, 0(r3) +/* 803C95EC 003C654C 38 04 00 01 */ addi r0, r4, 1 +/* 803C95F0 003C6550 90 03 00 00 */ stw r0, 0(r3) +/* 803C95F4 003C6554 4E 80 00 20 */ blr diff --git a/asm/Dolphin/THPDec.s b/asm/Dolphin/THPDec.s new file mode 100644 index 00000000..a6da5379 --- /dev/null +++ b/asm/Dolphin/THPDec.s @@ -0,0 +1,7933 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80003640 - 0x803CB1C0 + +.global THPVideoDecode +THPVideoDecode: +/* 803C1B60 003BEAC0 7C 08 02 A6 */ mflr r0 +/* 803C1B64 003BEAC4 90 01 00 04 */ stw r0, 4(r1) +/* 803C1B68 003BEAC8 94 21 FF C8 */ stwu r1, -0x38(r1) +/* 803C1B6C 003BEACC BF 61 00 24 */ stmw r27, 0x24(r1) +/* 803C1B70 003BEAD0 7C 7B 1B 79 */ or. r27, r3, r3 +/* 803C1B74 003BEAD4 3B 84 00 00 */ addi r28, r4, 0 +/* 803C1B78 003BEAD8 3B A5 00 00 */ addi r29, r5, 0 +/* 803C1B7C 003BEADC 3B C6 00 00 */ addi r30, r6, 0 +/* 803C1B80 003BEAE0 3B E7 00 00 */ addi r31, r7, 0 +/* 803C1B84 003BEAE4 41 82 01 D0 */ beq lbl_803C1D54 +/* 803C1B88 003BEAE8 28 1C 00 00 */ cmplwi r28, 0 +/* 803C1B8C 003BEAEC 41 82 01 D0 */ beq lbl_803C1D5C +/* 803C1B90 003BEAF0 28 1D 00 00 */ cmplwi r29, 0 +/* 803C1B94 003BEAF4 41 82 01 C8 */ beq lbl_803C1D5C +/* 803C1B98 003BEAF8 28 1E 00 00 */ cmplwi r30, 0 +/* 803C1B9C 003BEAFC 41 82 01 C0 */ beq lbl_803C1D5C +/* 803C1BA0 003BEB00 28 1F 00 00 */ cmplwi r31, 0 +/* 803C1BA4 003BEB04 41 82 01 C0 */ beq lbl_803C1D64 +/* 803C1BA8 003BEB08 4B FA DC C9 */ bl PPCMfhid2 +/* 803C1BAC 003BEB0C 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 +/* 803C1BB0 003BEB10 41 82 01 D4 */ beq lbl_803C1D84 +/* 803C1BB4 003BEB14 80 0D B1 54 */ lwz r0, __THPInitFlag@sda21(r13) +/* 803C1BB8 003BEB18 2C 00 00 00 */ cmpwi r0, 0 +/* 803C1BBC 003BEB1C 41 82 01 D0 */ beq lbl_803C1D8C +/* 803C1BC0 003BEB20 93 ED B1 4C */ stw r31, __THPWorkArea@sda21(r13) +/* 803C1BC4 003BEB24 38 80 06 BC */ li r4, 0x6bc +/* 803C1BC8 003BEB28 80 6D B1 4C */ lwz r3, __THPWorkArea@sda21(r13) +/* 803C1BCC 003BEB2C 38 03 00 1F */ addi r0, r3, 0x1f +/* 803C1BD0 003BEB30 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a +/* 803C1BD4 003BEB34 90 6D B1 50 */ stw r3, __THPInfo@sda21(r13) +/* 803C1BD8 003BEB38 38 03 06 BC */ addi r0, r3, 0x6bc +/* 803C1BDC 003BEB3C 90 0D B1 4C */ stw r0, __THPWorkArea@sda21(r13) +/* 803C1BE0 003BEB40 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1BE4 003BEB44 4B FB CF 85 */ bl DCZeroRange +/* 803C1BE8 003BEB48 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1BEC 003BEB4C 38 80 00 21 */ li r4, 0x21 +/* 803C1BF0 003BEB50 38 00 00 00 */ li r0, 0 +/* 803C1BF4 003BEB54 90 83 06 A4 */ stw r4, 0x6a4(r3) +/* 803C1BF8 003BEB58 3B E0 00 00 */ li r31, 0 +/* 803C1BFC 003BEB5C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1C00 003BEB60 B0 03 06 98 */ sth r0, 0x698(r3) +/* 803C1C04 003BEB64 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1C08 003BEB68 93 63 06 9C */ stw r27, 0x69c(r3) +lbl_803C1C0C: +/* 803C1C0C 003BEB6C 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1C10 003BEB70 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1C14 003BEB74 38 03 00 01 */ addi r0, r3, 1 +/* 803C1C18 003BEB78 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1C1C 003BEB7C 88 03 00 00 */ lbz r0, 0(r3) +/* 803C1C20 003BEB80 28 00 00 FF */ cmplwi r0, 0xff +/* 803C1C24 003BEB84 40 82 01 50 */ bne lbl_803C1D74 +/* 803C1C28 003BEB88 48 00 00 10 */ b lbl_803C1C38 +lbl_803C1C2C: +/* 803C1C2C 003BEB8C 80 64 00 00 */ lwz r3, 0(r4) +/* 803C1C30 003BEB90 38 03 00 01 */ addi r0, r3, 1 +/* 803C1C34 003BEB94 90 04 00 00 */ stw r0, 0(r4) +lbl_803C1C38: +/* 803C1C38 003BEB98 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1C3C 003BEB9C 38 83 06 9C */ addi r4, r3, 0x69c +/* 803C1C40 003BEBA0 80 63 06 9C */ lwz r3, 0x69c(r3) +/* 803C1C44 003BEBA4 88 03 00 00 */ lbz r0, 0(r3) +/* 803C1C48 003BEBA8 28 00 00 FF */ cmplwi r0, 0xff +/* 803C1C4C 003BEBAC 41 82 FF E0 */ beq lbl_803C1C2C +/* 803C1C50 003BEBB0 38 03 00 01 */ addi r0, r3, 1 +/* 803C1C54 003BEBB4 90 04 00 00 */ stw r0, 0(r4) +/* 803C1C58 003BEBB8 88 03 00 00 */ lbz r0, 0(r3) +/* 803C1C5C 003BEBBC 28 00 00 D7 */ cmplwi r0, 0xd7 +/* 803C1C60 003BEBC0 41 81 00 34 */ bgt lbl_803C1C94 +/* 803C1C64 003BEBC4 28 00 00 C4 */ cmplwi r0, 0xc4 +/* 803C1C68 003BEBC8 40 82 00 14 */ bne lbl_803C1C7C +/* 803C1C6C 003BEBCC 48 00 07 91 */ bl __THPReadHuffmanTableSpecification +/* 803C1C70 003BEBD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 803C1C74 003BEBD4 40 82 01 08 */ bne lbl_803C1D7C +/* 803C1C78 003BEBD8 48 00 00 B8 */ b lbl_803C1D30 +lbl_803C1C7C: +/* 803C1C7C 003BEBDC 28 00 00 C0 */ cmplwi r0, 0xc0 +/* 803C1C80 003BEBE0 40 82 00 EC */ bne lbl_803C1D6C +/* 803C1C84 003BEBE4 48 00 01 65 */ bl __THPReadFrameHeader +/* 803C1C88 003BEBE8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 803C1C8C 003BEBEC 40 82 00 F0 */ bne lbl_803C1D7C +/* 803C1C90 003BEBF0 48 00 00 A0 */ b lbl_803C1D30 +lbl_803C1C94: +/* 803C1C94 003BEBF4 28 00 00 D8 */ cmplwi r0, 0xd8 +/* 803C1C98 003BEBF8 41 80 00 5C */ blt lbl_803C1CF4 +/* 803C1C9C 003BEBFC 28 00 00 DF */ cmplwi r0, 0xdf +/* 803C1CA0 003BEC00 41 81 00 54 */ bgt lbl_803C1CF4 +/* 803C1CA4 003BEC04 28 00 00 DD */ cmplwi r0, 0xdd +/* 803C1CA8 003BEC08 40 82 00 0C */ bne lbl_803C1CB4 +/* 803C1CAC 003BEC0C 48 00 0C 45 */ bl __THPRestartDefinition +/* 803C1CB0 003BEC10 48 00 00 80 */ b lbl_803C1D30 +lbl_803C1CB4: +/* 803C1CB4 003BEC14 28 00 00 DB */ cmplwi r0, 0xdb +/* 803C1CB8 003BEC18 40 82 00 14 */ bne lbl_803C1CCC +/* 803C1CBC 003BEC1C 48 00 03 85 */ bl __THPReadQuantizationTable +/* 803C1CC0 003BEC20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 803C1CC4 003BEC24 40 82 00 B8 */ bne lbl_803C1D7C +/* 803C1CC8 003BEC28 48 00 00 68 */ b lbl_803C1D30 +lbl_803C1CCC: +/* 803C1CCC 003BEC2C 28 00 00 DA */ cmplwi r0, 0xda +/* 803C1CD0 003BEC30 40 82 00 18 */ bne lbl_803C1CE8 +/* 803C1CD4 003BEC34 48 00 02 51 */ bl __THPReadScaneHeader +/* 803C1CD8 003BEC38 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 803C1CDC 003BEC3C 40 82 00 A0 */ bne lbl_803C1D7C +/* 803C1CE0 003BEC40 3B E0 00 01 */ li r31, 1 +/* 803C1CE4 003BEC44 48 00 00 4C */ b lbl_803C1D30 +lbl_803C1CE8: +/* 803C1CE8 003BEC48 28 00 00 D8 */ cmplwi r0, 0xd8 +/* 803C1CEC 003BEC4C 41 82 00 44 */ beq lbl_803C1D30 +/* 803C1CF0 003BEC50 48 00 00 7C */ b lbl_803C1D6C +lbl_803C1CF4: +/* 803C1CF4 003BEC54 28 00 00 E0 */ cmplwi r0, 0xe0 +/* 803C1CF8 003BEC58 41 80 00 38 */ blt lbl_803C1D30 +/* 803C1CFC 003BEC5C 41 80 00 0C */ blt lbl_803C1D08 +/* 803C1D00 003BEC60 28 00 00 EF */ cmplwi r0, 0xef +/* 803C1D04 003BEC64 40 81 00 0C */ ble lbl_803C1D10 +lbl_803C1D08: +/* 803C1D08 003BEC68 28 00 00 FE */ cmplwi r0, 0xfe +/* 803C1D0C 003BEC6C 40 82 00 60 */ bne lbl_803C1D6C +lbl_803C1D10: +/* 803C1D10 003BEC70 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1D14 003BEC74 80 83 06 9C */ lwz r4, 0x69c(r3) +/* 803C1D18 003BEC78 38 A3 06 9C */ addi r5, r3, 0x69c +/* 803C1D1C 003BEC7C 88 64 00 00 */ lbz r3, 0(r4) +/* 803C1D20 003BEC80 88 04 00 01 */ lbz r0, 1(r4) +/* 803C1D24 003BEC84 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 +/* 803C1D28 003BEC88 7C 04 02 14 */ add r0, r4, r0 +/* 803C1D2C 003BEC8C 90 05 00 00 */ stw r0, 0(r5) +lbl_803C1D30: +/* 803C1D30 003BEC90 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 803C1D34 003BEC94 41 82 FE D8 */ beq lbl_803C1C0C +/* 803C1D38 003BEC98 48 00 00 6D */ bl __THPSetupBuffers +/* 803C1D3C 003BEC9C 38 7C 00 00 */ addi r3, r28, 0 +/* 803C1D40 003BECA0 38 9D 00 00 */ addi r4, r29, 0 +/* 803C1D44 003BECA4 38 BE 00 00 */ addi r5, r30, 0 +/* 803C1D48 003BECA8 48 00 0E 49 */ bl __THPDecompressYUV +/* 803C1D4C 003BECAC 38 60 00 00 */ li r3, 0 +/* 803C1D50 003BECB0 48 00 00 40 */ b lbl_803C1D90 +lbl_803C1D54: +/* 803C1D54 003BECB4 38 60 00 19 */ li r3, 0x19 +/* 803C1D58 003BECB8 48 00 00 38 */ b lbl_803C1D90 +lbl_803C1D5C: +/* 803C1D5C 003BECBC 38 60 00 1B */ li r3, 0x1b +/* 803C1D60 003BECC0 48 00 00 30 */ b lbl_803C1D90 +lbl_803C1D64: +/* 803C1D64 003BECC4 38 60 00 1A */ li r3, 0x1a +/* 803C1D68 003BECC8 48 00 00 28 */ b lbl_803C1D90 +lbl_803C1D6C: +/* 803C1D6C 003BECCC 38 60 00 0B */ li r3, 0xb +/* 803C1D70 003BECD0 48 00 00 20 */ b lbl_803C1D90 +lbl_803C1D74: +/* 803C1D74 003BECD4 38 60 00 03 */ li r3, 3 +/* 803C1D78 003BECD8 48 00 00 18 */ b lbl_803C1D90 +lbl_803C1D7C: +/* 803C1D7C 003BECDC 54 63 06 3E */ clrlwi r3, r3, 0x18 +/* 803C1D80 003BECE0 48 00 00 10 */ b lbl_803C1D90 +lbl_803C1D84: +/* 803C1D84 003BECE4 38 60 00 1C */ li r3, 0x1c +/* 803C1D88 003BECE8 48 00 00 08 */ b lbl_803C1D90 +lbl_803C1D8C: +/* 803C1D8C 003BECEC 38 60 00 1D */ li r3, 0x1d +lbl_803C1D90: +/* 803C1D90 003BECF0 BB 61 00 24 */ lmw r27, 0x24(r1) +/* 803C1D94 003BECF4 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 803C1D98 003BECF8 38 21 00 38 */ addi r1, r1, 0x38 +/* 803C1D9C 003BECFC 7C 08 03 A6 */ mtlr r0 +/* 803C1DA0 003BED00 4E 80 00 20 */ blr + +__THPSetupBuffers: # local func +/* 803C1DA4 003BED04 80 8D B1 4C */ lwz r4, __THPWorkArea@sda21(r13) +/* 803C1DA8 003BED08 3C 60 80 57 */ lis r3, __THPMCUBuffer@ha +/* 803C1DAC 003BED0C 38 A3 A0 78 */ addi r5, r3, __THPMCUBuffer@l +/* 803C1DB0 003BED10 38 04 00 1F */ addi r0, r4, 0x1f +/* 803C1DB4 003BED14 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a +/* 803C1DB8 003BED18 90 C5 00 00 */ stw r6, 0(r5) +/* 803C1DBC 003BED1C 38 66 00 80 */ addi r3, r6, 0x80 +/* 803C1DC0 003BED20 38 06 01 00 */ addi r0, r6, 0x100 +/* 803C1DC4 003BED24 90 65 00 04 */ stw r3, 4(r5) +/* 803C1DC8 003BED28 38 86 01 80 */ addi r4, r6, 0x180 +/* 803C1DCC 003BED2C 38 66 02 00 */ addi r3, r6, 0x200 +/* 803C1DD0 003BED30 90 05 00 08 */ stw r0, 8(r5) +/* 803C1DD4 003BED34 38 06 02 80 */ addi r0, r6, 0x280 +/* 803C1DD8 003BED38 90 85 00 0C */ stw r4, 0xc(r5) +/* 803C1DDC 003BED3C 90 65 00 10 */ stw r3, 0x10(r5) +/* 803C1DE0 003BED40 90 05 00 14 */ stw r0, 0x14(r5) +/* 803C1DE4 003BED44 4E 80 00 20 */ blr + +__THPReadFrameHeader: # local func +/* 803C1DE8 003BED48 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1DEC 003BED4C 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1DF0 003BED50 38 03 00 02 */ addi r0, r3, 2 +/* 803C1DF4 003BED54 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1DF8 003BED58 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1DFC 003BED5C 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1E00 003BED60 38 03 00 01 */ addi r0, r3, 1 +/* 803C1E04 003BED64 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1E08 003BED68 88 03 00 00 */ lbz r0, 0(r3) +/* 803C1E0C 003BED6C 28 00 00 08 */ cmplwi r0, 8 +/* 803C1E10 003BED70 41 82 00 0C */ beq lbl_803C1E1C +/* 803C1E14 003BED74 38 60 00 0A */ li r3, 0xa +/* 803C1E18 003BED78 4E 80 00 20 */ blr +lbl_803C1E1C: +/* 803C1E1C 003BED7C 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C1E20 003BED80 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C1E24 003BED84 88 64 00 00 */ lbz r3, 0(r4) +/* 803C1E28 003BED88 88 04 00 01 */ lbz r0, 1(r4) +/* 803C1E2C 003BED8C 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 +/* 803C1E30 003BED90 B0 05 06 94 */ sth r0, 0x694(r5) +/* 803C1E34 003BED94 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1E38 003BED98 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1E3C 003BED9C 38 03 00 02 */ addi r0, r3, 2 +/* 803C1E40 003BEDA0 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1E44 003BEDA4 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C1E48 003BEDA8 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C1E4C 003BEDAC 88 64 00 00 */ lbz r3, 0(r4) +/* 803C1E50 003BEDB0 88 04 00 01 */ lbz r0, 1(r4) +/* 803C1E54 003BEDB4 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 +/* 803C1E58 003BEDB8 B0 05 06 92 */ sth r0, 0x692(r5) +/* 803C1E5C 003BEDBC 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1E60 003BEDC0 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1E64 003BEDC4 38 03 00 02 */ addi r0, r3, 2 +/* 803C1E68 003BEDC8 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1E6C 003BEDCC 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1E70 003BEDD0 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1E74 003BEDD4 38 03 00 01 */ addi r0, r3, 1 +/* 803C1E78 003BEDD8 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1E7C 003BEDDC 88 03 00 00 */ lbz r0, 0(r3) +/* 803C1E80 003BEDE0 28 00 00 03 */ cmplwi r0, 3 +/* 803C1E84 003BEDE4 41 82 00 0C */ beq lbl_803C1E90 +/* 803C1E88 003BEDE8 38 60 00 0C */ li r3, 0xc +/* 803C1E8C 003BEDEC 4E 80 00 20 */ blr +lbl_803C1E90: +/* 803C1E90 003BEDF0 38 E0 00 00 */ li r7, 0 +/* 803C1E94 003BEDF4 38 C0 00 00 */ li r6, 0 +/* 803C1E98 003BEDF8 48 00 00 78 */ b lbl_803C1F10 +lbl_803C1E9C: +/* 803C1E9C 003BEDFC 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1EA0 003BEE00 54 E0 06 3F */ clrlwi. r0, r7, 0x18 +/* 803C1EA4 003BEE04 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1EA8 003BEE08 38 03 00 01 */ addi r0, r3, 1 +/* 803C1EAC 003BEE0C 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1EB0 003BEE10 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1EB4 003BEE14 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1EB8 003BEE18 38 03 00 01 */ addi r0, r3, 1 +/* 803C1EBC 003BEE1C 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1EC0 003BEE20 88 63 00 00 */ lbz r3, 0(r3) +/* 803C1EC4 003BEE24 40 82 00 0C */ bne lbl_803C1ED0 +/* 803C1EC8 003BEE28 28 03 00 22 */ cmplwi r3, 0x22 +/* 803C1ECC 003BEE2C 40 82 00 14 */ bne lbl_803C1EE0 +lbl_803C1ED0: +/* 803C1ED0 003BEE30 54 E0 06 3F */ clrlwi. r0, r7, 0x18 +/* 803C1ED4 003BEE34 41 82 00 14 */ beq lbl_803C1EE8 +/* 803C1ED8 003BEE38 28 03 00 11 */ cmplwi r3, 0x11 +/* 803C1EDC 003BEE3C 41 82 00 0C */ beq lbl_803C1EE8 +lbl_803C1EE0: +/* 803C1EE0 003BEE40 38 60 00 13 */ li r3, 0x13 +/* 803C1EE4 003BEE44 4E 80 00 20 */ blr +lbl_803C1EE8: +/* 803C1EE8 003BEE48 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C1EEC 003BEE4C 38 06 06 80 */ addi r0, r6, 0x680 +/* 803C1EF0 003BEE50 38 C6 00 06 */ addi r6, r6, 6 +/* 803C1EF4 003BEE54 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C1EF8 003BEE58 38 E7 00 01 */ addi r7, r7, 1 +/* 803C1EFC 003BEE5C 38 64 00 01 */ addi r3, r4, 1 +/* 803C1F00 003BEE60 90 65 06 9C */ stw r3, 0x69c(r5) +/* 803C1F04 003BEE64 88 84 00 00 */ lbz r4, 0(r4) +/* 803C1F08 003BEE68 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C1F0C 003BEE6C 7C 83 01 AE */ stbx r4, r3, r0 +lbl_803C1F10: +/* 803C1F10 003BEE70 54 E0 06 3E */ clrlwi r0, r7, 0x18 +/* 803C1F14 003BEE74 28 00 00 03 */ cmplwi r0, 3 +/* 803C1F18 003BEE78 41 80 FF 84 */ blt lbl_803C1E9C +/* 803C1F1C 003BEE7C 38 60 00 00 */ li r3, 0 +/* 803C1F20 003BEE80 4E 80 00 20 */ blr + +__THPReadScaneHeader: # local func +/* 803C1F24 003BEE84 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1F28 003BEE88 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1F2C 003BEE8C 38 03 00 02 */ addi r0, r3, 2 +/* 803C1F30 003BEE90 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1F34 003BEE94 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1F38 003BEE98 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C1F3C 003BEE9C 38 03 00 01 */ addi r0, r3, 1 +/* 803C1F40 003BEEA0 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C1F44 003BEEA4 88 03 00 00 */ lbz r0, 0(r3) +/* 803C1F48 003BEEA8 28 00 00 03 */ cmplwi r0, 3 +/* 803C1F4C 003BEEAC 41 82 00 0C */ beq lbl_803C1F58 +/* 803C1F50 003BEEB0 38 60 00 0C */ li r3, 0xc +/* 803C1F54 003BEEB4 4E 80 00 20 */ blr +lbl_803C1F58: +/* 803C1F58 003BEEB8 39 20 00 00 */ li r9, 0 +/* 803C1F5C 003BEEBC 39 00 00 00 */ li r8, 0 +/* 803C1F60 003BEEC0 48 00 00 88 */ b lbl_803C1FE8 +lbl_803C1F64: +/* 803C1F64 003BEEC4 80 CD B1 50 */ lwz r6, __THPInfo@sda21(r13) +/* 803C1F68 003BEEC8 38 08 06 81 */ addi r0, r8, 0x681 +/* 803C1F6C 003BEECC 38 88 06 82 */ addi r4, r8, 0x682 +/* 803C1F70 003BEED0 80 A6 06 9C */ lwz r5, 0x69c(r6) +/* 803C1F74 003BEED4 38 60 00 01 */ li r3, 1 +/* 803C1F78 003BEED8 38 A5 00 01 */ addi r5, r5, 1 +/* 803C1F7C 003BEEDC 90 A6 06 9C */ stw r5, 0x69c(r6) +/* 803C1F80 003BEEE0 80 ED B1 50 */ lwz r7, __THPInfo@sda21(r13) +/* 803C1F84 003BEEE4 80 C7 06 9C */ lwz r6, 0x69c(r7) +/* 803C1F88 003BEEE8 38 A6 00 01 */ addi r5, r6, 1 +/* 803C1F8C 003BEEEC 90 A7 06 9C */ stw r5, 0x69c(r7) +/* 803C1F90 003BEEF0 88 E6 00 00 */ lbz r7, 0(r6) +/* 803C1F94 003BEEF4 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C1F98 003BEEF8 7C E6 26 70 */ srawi r6, r7, 4 +/* 803C1F9C 003BEEFC 7C C5 01 AE */ stbx r6, r5, r0 +/* 803C1FA0 003BEF00 54 E7 07 3E */ clrlwi r7, r7, 0x1c +/* 803C1FA4 003BEF04 7C 60 30 30 */ slw r0, r3, r6 +/* 803C1FA8 003BEF08 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C1FAC 003BEF0C 7C E5 21 AE */ stbx r7, r5, r4 +/* 803C1FB0 003BEF10 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C1FB4 003BEF14 88 84 06 A8 */ lbz r4, 0x6a8(r4) +/* 803C1FB8 003BEF18 7C 80 00 39 */ and. r0, r4, r0 +/* 803C1FBC 003BEF1C 40 82 00 0C */ bne lbl_803C1FC8 +/* 803C1FC0 003BEF20 38 60 00 0F */ li r3, 0xf +/* 803C1FC4 003BEF24 4E 80 00 20 */ blr +lbl_803C1FC8: +/* 803C1FC8 003BEF28 38 07 00 01 */ addi r0, r7, 1 +/* 803C1FCC 003BEF2C 7C 60 00 30 */ slw r0, r3, r0 +/* 803C1FD0 003BEF30 7C 80 00 39 */ and. r0, r4, r0 +/* 803C1FD4 003BEF34 40 82 00 0C */ bne lbl_803C1FE0 +/* 803C1FD8 003BEF38 38 60 00 0F */ li r3, 0xf +/* 803C1FDC 003BEF3C 4E 80 00 20 */ blr +lbl_803C1FE0: +/* 803C1FE0 003BEF40 39 08 00 06 */ addi r8, r8, 6 +/* 803C1FE4 003BEF44 39 29 00 01 */ addi r9, r9, 1 +lbl_803C1FE8: +/* 803C1FE8 003BEF48 55 20 06 3E */ clrlwi r0, r9, 0x18 +/* 803C1FEC 003BEF4C 28 00 00 03 */ cmplwi r0, 3 +/* 803C1FF0 003BEF50 41 80 FF 74 */ blt lbl_803C1F64 +/* 803C1FF4 003BEF54 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C1FF8 003BEF58 38 00 00 00 */ li r0, 0 +/* 803C1FFC 003BEF5C 38 60 00 00 */ li r3, 0 +/* 803C2000 003BEF60 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C2004 003BEF64 38 84 00 03 */ addi r4, r4, 3 +/* 803C2008 003BEF68 90 85 06 9C */ stw r4, 0x69c(r5) +/* 803C200C 003BEF6C 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2010 003BEF70 A0 85 06 92 */ lhz r4, 0x692(r5) +/* 803C2014 003BEF74 38 84 00 0F */ addi r4, r4, 0xf +/* 803C2018 003BEF78 7C 84 26 70 */ srawi r4, r4, 4 +/* 803C201C 003BEF7C 7C 84 01 94 */ addze r4, r4 +/* 803C2020 003BEF80 B0 85 06 96 */ sth r4, 0x696(r5) +/* 803C2024 003BEF84 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2028 003BEF88 B0 04 06 84 */ sth r0, 0x684(r4) +/* 803C202C 003BEF8C 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2030 003BEF90 B0 04 06 8A */ sth r0, 0x68a(r4) +/* 803C2034 003BEF94 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2038 003BEF98 B0 04 06 90 */ sth r0, 0x690(r4) +/* 803C203C 003BEF9C 4E 80 00 20 */ blr + +.global __THPReadQuantizationTable +__THPReadQuantizationTable: +/* 803C2040 003BEFA0 94 21 FE 78 */ stwu r1, -0x188(r1) +/* 803C2044 003BEFA4 3C 80 80 3E */ lis r4, __THPJpegNaturalOrder@ha +/* 803C2048 003BEFA8 38 84 8C D0 */ addi r4, r4, __THPJpegNaturalOrder@l +/* 803C204C 003BEFAC BE A1 01 5C */ stmw r21, 0x15c(r1) +/* 803C2050 003BEFB0 38 C4 00 50 */ addi r6, r4, 0x50 +/* 803C2054 003BEFB4 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2058 003BEFB8 80 A3 06 9C */ lwz r5, 0x69c(r3) +/* 803C205C 003BEFBC 39 03 06 9C */ addi r8, r3, 0x69c +/* 803C2060 003BEFC0 38 61 00 14 */ addi r3, r1, 0x14 +/* 803C2064 003BEFC4 88 E5 00 00 */ lbz r7, 0(r5) +/* 803C2068 003BEFC8 38 05 00 02 */ addi r0, r5, 2 +/* 803C206C 003BEFCC 88 A5 00 01 */ lbz r5, 1(r5) +/* 803C2070 003BEFD0 50 E5 44 2E */ rlwimi r5, r7, 8, 0x10, 0x17 +/* 803C2074 003BEFD4 90 08 00 00 */ stw r0, 0(r8) +/* 803C2078 003BEFD8 54 A7 04 3E */ clrlwi r7, r5, 0x10 +/* 803C207C 003BEFDC 3C 00 43 30 */ lis r0, 0x4330 +/* 803C2080 003BEFE0 C8 02 D7 20 */ lfd f0, lbl_805AF440@sda21(r2) +/* 803C2084 003BEFE4 38 E7 FF FE */ addi r7, r7, -2 +lbl_803C2088: +/* 803C2088 003BEFE8 81 6D B1 50 */ lwz r11, __THPInfo@sda21(r13) +/* 803C208C 003BEFEC 38 A4 00 00 */ addi r5, r4, 0 +/* 803C2090 003BEFF0 39 20 00 00 */ li r9, 0 +/* 803C2094 003BEFF4 81 4B 06 9C */ lwz r10, 0x69c(r11) +/* 803C2098 003BEFF8 39 0A 00 01 */ addi r8, r10, 1 +/* 803C209C 003BEFFC 91 0B 06 9C */ stw r8, 0x69c(r11) +/* 803C20A0 003BF000 89 0A 00 00 */ lbz r8, 0(r10) +/* 803C20A4 003BF004 48 00 01 C4 */ b lbl_803C2268 +lbl_803C20A8: +/* 803C20A8 003BF008 83 CD B1 50 */ lwz r30, __THPInfo@sda21(r13) +/* 803C20AC 003BF00C 3B 89 00 01 */ addi r28, r9, 1 +/* 803C20B0 003BF010 3B A9 00 02 */ addi r29, r9, 2 +/* 803C20B4 003BF014 83 7E 06 9C */ lwz r27, 0x69c(r30) +/* 803C20B8 003BF018 39 89 00 03 */ addi r12, r9, 3 +/* 803C20BC 003BF01C 39 69 00 04 */ addi r11, r9, 4 +/* 803C20C0 003BF020 39 5B 00 01 */ addi r10, r27, 1 +/* 803C20C4 003BF024 91 5E 06 9C */ stw r10, 0x69c(r30) +/* 803C20C8 003BF028 39 49 00 05 */ addi r10, r9, 5 +/* 803C20CC 003BF02C 57 9C 04 3E */ clrlwi r28, r28, 0x10 +/* 803C20D0 003BF030 8B DB 00 00 */ lbz r30, 0(r27) +/* 803C20D4 003BF034 57 BD 04 3E */ clrlwi r29, r29, 0x10 +/* 803C20D8 003BF038 8B 65 00 00 */ lbz r27, 0(r5) +/* 803C20DC 003BF03C 55 8C 04 3E */ clrlwi r12, r12, 0x10 +/* 803C20E0 003BF040 93 C1 01 54 */ stw r30, 0x154(r1) +/* 803C20E4 003BF044 57 7B 10 3A */ slwi r27, r27, 2 +/* 803C20E8 003BF048 90 01 01 50 */ stw r0, 0x150(r1) +/* 803C20EC 003BF04C 55 6B 04 3E */ clrlwi r11, r11, 0x10 +/* 803C20F0 003BF050 55 4A 04 3E */ clrlwi r10, r10, 0x10 +/* 803C20F4 003BF054 C8 21 01 50 */ lfd f1, 0x150(r1) +/* 803C20F8 003BF058 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C20FC 003BF05C 7C 23 DD 2E */ stfsx f1, r3, r27 +/* 803C2100 003BF060 83 6D B1 50 */ lwz r27, __THPInfo@sda21(r13) +/* 803C2104 003BF064 83 FB 06 9C */ lwz r31, 0x69c(r27) +/* 803C2108 003BF068 3B DF 00 01 */ addi r30, r31, 1 +/* 803C210C 003BF06C 93 DB 06 9C */ stw r30, 0x69c(r27) +/* 803C2110 003BF070 8B DF 00 00 */ lbz r30, 0(r31) +/* 803C2114 003BF074 7F 84 E0 AE */ lbzx r28, r4, r28 +/* 803C2118 003BF078 93 C1 01 4C */ stw r30, 0x14c(r1) +/* 803C211C 003BF07C 57 9C 10 3A */ slwi r28, r28, 2 +/* 803C2120 003BF080 90 01 01 48 */ stw r0, 0x148(r1) +/* 803C2124 003BF084 C8 21 01 48 */ lfd f1, 0x148(r1) +/* 803C2128 003BF088 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C212C 003BF08C 7C 23 E5 2E */ stfsx f1, r3, r28 +/* 803C2130 003BF090 83 8D B1 50 */ lwz r28, __THPInfo@sda21(r13) +/* 803C2134 003BF094 83 FC 06 9C */ lwz r31, 0x69c(r28) +/* 803C2138 003BF098 3B DF 00 01 */ addi r30, r31, 1 +/* 803C213C 003BF09C 93 DC 06 9C */ stw r30, 0x69c(r28) +/* 803C2140 003BF0A0 8B DF 00 00 */ lbz r30, 0(r31) +/* 803C2144 003BF0A4 7F A4 E8 AE */ lbzx r29, r4, r29 +/* 803C2148 003BF0A8 93 C1 01 44 */ stw r30, 0x144(r1) +/* 803C214C 003BF0AC 57 BD 10 3A */ slwi r29, r29, 2 +/* 803C2150 003BF0B0 90 01 01 40 */ stw r0, 0x140(r1) +/* 803C2154 003BF0B4 C8 21 01 40 */ lfd f1, 0x140(r1) +/* 803C2158 003BF0B8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C215C 003BF0BC 7C 23 ED 2E */ stfsx f1, r3, r29 +/* 803C2160 003BF0C0 83 ED B1 50 */ lwz r31, __THPInfo@sda21(r13) +/* 803C2164 003BF0C4 83 DF 06 9C */ lwz r30, 0x69c(r31) +/* 803C2168 003BF0C8 3B BE 00 01 */ addi r29, r30, 1 +/* 803C216C 003BF0CC 93 BF 06 9C */ stw r29, 0x69c(r31) +/* 803C2170 003BF0D0 8B BE 00 00 */ lbz r29, 0(r30) +/* 803C2174 003BF0D4 7D 84 60 AE */ lbzx r12, r4, r12 +/* 803C2178 003BF0D8 93 A1 01 3C */ stw r29, 0x13c(r1) +/* 803C217C 003BF0DC 55 8C 10 3A */ slwi r12, r12, 2 +/* 803C2180 003BF0E0 90 01 01 38 */ stw r0, 0x138(r1) +/* 803C2184 003BF0E4 C8 21 01 38 */ lfd f1, 0x138(r1) +/* 803C2188 003BF0E8 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C218C 003BF0EC 7C 23 65 2E */ stfsx f1, r3, r12 +/* 803C2190 003BF0F0 83 CD B1 50 */ lwz r30, __THPInfo@sda21(r13) +/* 803C2194 003BF0F4 83 BE 06 9C */ lwz r29, 0x69c(r30) +/* 803C2198 003BF0F8 39 9D 00 01 */ addi r12, r29, 1 +/* 803C219C 003BF0FC 91 9E 06 9C */ stw r12, 0x69c(r30) +/* 803C21A0 003BF100 89 9D 00 00 */ lbz r12, 0(r29) +/* 803C21A4 003BF104 7D 64 58 AE */ lbzx r11, r4, r11 +/* 803C21A8 003BF108 91 81 01 34 */ stw r12, 0x134(r1) +/* 803C21AC 003BF10C 55 6B 10 3A */ slwi r11, r11, 2 +/* 803C21B0 003BF110 90 01 01 30 */ stw r0, 0x130(r1) +/* 803C21B4 003BF114 C8 21 01 30 */ lfd f1, 0x130(r1) +/* 803C21B8 003BF118 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C21BC 003BF11C 7C 23 5D 2E */ stfsx f1, r3, r11 +/* 803C21C0 003BF120 83 AD B1 50 */ lwz r29, __THPInfo@sda21(r13) +/* 803C21C4 003BF124 81 9D 06 9C */ lwz r12, 0x69c(r29) +/* 803C21C8 003BF128 39 6C 00 01 */ addi r11, r12, 1 +/* 803C21CC 003BF12C 91 7D 06 9C */ stw r11, 0x69c(r29) +/* 803C21D0 003BF130 89 6C 00 00 */ lbz r11, 0(r12) +/* 803C21D4 003BF134 7D 44 50 AE */ lbzx r10, r4, r10 +/* 803C21D8 003BF138 91 61 01 2C */ stw r11, 0x12c(r1) +/* 803C21DC 003BF13C 55 4A 10 3A */ slwi r10, r10, 2 +/* 803C21E0 003BF140 90 01 01 28 */ stw r0, 0x128(r1) +/* 803C21E4 003BF144 C8 21 01 28 */ lfd f1, 0x128(r1) +/* 803C21E8 003BF148 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C21EC 003BF14C 7C 23 55 2E */ stfsx f1, r3, r10 +/* 803C21F0 003BF150 83 CD B1 50 */ lwz r30, __THPInfo@sda21(r13) +/* 803C21F4 003BF154 39 69 00 06 */ addi r11, r9, 6 +/* 803C21F8 003BF158 39 49 00 07 */ addi r10, r9, 7 +/* 803C21FC 003BF15C 83 BE 06 9C */ lwz r29, 0x69c(r30) +/* 803C2200 003BF160 55 6B 04 3E */ clrlwi r11, r11, 0x10 +/* 803C2204 003BF164 55 4A 04 3E */ clrlwi r10, r10, 0x10 +/* 803C2208 003BF168 39 9D 00 01 */ addi r12, r29, 1 +/* 803C220C 003BF16C 91 9E 06 9C */ stw r12, 0x69c(r30) +/* 803C2210 003BF170 38 A5 00 08 */ addi r5, r5, 8 +/* 803C2214 003BF174 39 29 00 08 */ addi r9, r9, 8 +/* 803C2218 003BF178 89 9D 00 00 */ lbz r12, 0(r29) +/* 803C221C 003BF17C 7D 64 58 AE */ lbzx r11, r4, r11 +/* 803C2220 003BF180 91 81 01 24 */ stw r12, 0x124(r1) +/* 803C2224 003BF184 55 6B 10 3A */ slwi r11, r11, 2 +/* 803C2228 003BF188 90 01 01 20 */ stw r0, 0x120(r1) +/* 803C222C 003BF18C C8 21 01 20 */ lfd f1, 0x120(r1) +/* 803C2230 003BF190 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C2234 003BF194 7C 23 5D 2E */ stfsx f1, r3, r11 +/* 803C2238 003BF198 83 AD B1 50 */ lwz r29, __THPInfo@sda21(r13) +/* 803C223C 003BF19C 81 9D 06 9C */ lwz r12, 0x69c(r29) +/* 803C2240 003BF1A0 39 6C 00 01 */ addi r11, r12, 1 +/* 803C2244 003BF1A4 91 7D 06 9C */ stw r11, 0x69c(r29) +/* 803C2248 003BF1A8 89 6C 00 00 */ lbz r11, 0(r12) +/* 803C224C 003BF1AC 7D 44 50 AE */ lbzx r10, r4, r10 +/* 803C2250 003BF1B0 91 61 01 1C */ stw r11, 0x11c(r1) +/* 803C2254 003BF1B4 55 4A 10 3A */ slwi r10, r10, 2 +/* 803C2258 003BF1B8 90 01 01 18 */ stw r0, 0x118(r1) +/* 803C225C 003BF1BC C8 21 01 18 */ lfd f1, 0x118(r1) +/* 803C2260 003BF1C0 EC 21 00 28 */ fsubs f1, f1, f0 +/* 803C2264 003BF1C4 7C 23 55 2E */ stfsx f1, r3, r10 +lbl_803C2268: +/* 803C2268 003BF1C8 55 2A 04 3E */ clrlwi r10, r9, 0x10 +/* 803C226C 003BF1CC 28 0A 00 40 */ cmplwi r10, 0x40 +/* 803C2270 003BF1D0 41 80 FE 38 */ blt lbl_803C20A8 +/* 803C2274 003BF1D4 83 AD B1 50 */ lwz r29, __THPInfo@sda21(r13) +/* 803C2278 003BF1D8 3B 66 00 00 */ addi r27, r6, 0 +/* 803C227C 003BF1DC 55 1C 40 2E */ slwi r28, r8, 8 +/* 803C2280 003BF1E0 38 A0 00 00 */ li r5, 0 +/* 803C2284 003BF1E4 39 00 00 00 */ li r8, 0 +/* 803C2288 003BF1E8 48 00 01 4C */ b lbl_803C23D4 +lbl_803C228C: +/* 803C228C 003BF1EC 54 AB 13 BA */ rlwinm r11, r5, 2, 0xe, 0x1d +/* 803C2290 003BF1F0 C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C2294 003BF1F4 7C 43 5C 2E */ lfsx f2, r3, r11 +/* 803C2298 003BF1F8 39 25 00 01 */ addi r9, r5, 1 +/* 803C229C 003BF1FC 55 2C 13 BA */ rlwinm r12, r9, 2, 0xe, 0x1d +/* 803C22A0 003BF200 C8 66 00 00 */ lfd f3, 0(r6) +/* 803C22A4 003BF204 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C22A8 003BF208 39 25 00 02 */ addi r9, r5, 2 +/* 803C22AC 003BF20C 55 3A 13 BA */ rlwinm r26, r9, 2, 0xe, 0x1d +/* 803C22B0 003BF210 39 25 00 03 */ addi r9, r5, 3 +/* 803C22B4 003BF214 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C22B8 003BF218 55 39 13 BA */ rlwinm r25, r9, 2, 0xe, 0x1d +/* 803C22BC 003BF21C 39 45 00 04 */ addi r10, r5, 4 +/* 803C22C0 003BF220 55 58 13 BA */ rlwinm r24, r10, 2, 0xe, 0x1d +/* 803C22C4 003BF224 FC 20 08 18 */ frsp f1, f1 +/* 803C22C8 003BF228 7D 3D 5A 14 */ add r9, r29, r11 +/* 803C22CC 003BF22C 39 45 00 07 */ addi r10, r5, 7 +/* 803C22D0 003BF230 7C 3C 4D 2E */ stfsx f1, r28, r9 +/* 803C22D4 003BF234 39 25 00 05 */ addi r9, r5, 5 +/* 803C22D8 003BF238 55 37 13 BA */ rlwinm r23, r9, 2, 0xe, 0x1d +/* 803C22DC 003BF23C 7C 43 64 2E */ lfsx f2, r3, r12 +/* 803C22E0 003BF240 39 25 00 06 */ addi r9, r5, 6 +/* 803C22E4 003BF244 C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C22E8 003BF248 55 36 13 BA */ rlwinm r22, r9, 2, 0xe, 0x1d +/* 803C22EC 003BF24C 7D 3D 62 14 */ add r9, r29, r12 +/* 803C22F0 003BF250 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C22F4 003BF254 C8 66 00 08 */ lfd f3, 8(r6) +/* 803C22F8 003BF258 55 55 13 BA */ rlwinm r21, r10, 2, 0xe, 0x1d +/* 803C22FC 003BF25C 7F DD D2 14 */ add r30, r29, r26 +/* 803C2300 003BF260 7F FD CA 14 */ add r31, r29, r25 +/* 803C2304 003BF264 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C2308 003BF268 7D 9D C2 14 */ add r12, r29, r24 +/* 803C230C 003BF26C 7D 7D BA 14 */ add r11, r29, r23 +/* 803C2310 003BF270 7D 5D B2 14 */ add r10, r29, r22 +/* 803C2314 003BF274 38 A5 00 08 */ addi r5, r5, 8 +/* 803C2318 003BF278 FC 20 08 18 */ frsp f1, f1 +/* 803C231C 003BF27C 39 08 00 01 */ addi r8, r8, 1 +/* 803C2320 003BF280 7C 3C 4D 2E */ stfsx f1, r28, r9 +/* 803C2324 003BF284 7D 3D AA 14 */ add r9, r29, r21 +/* 803C2328 003BF288 7C 43 D4 2E */ lfsx f2, r3, r26 +/* 803C232C 003BF28C C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C2330 003BF290 C8 66 00 10 */ lfd f3, 0x10(r6) +/* 803C2334 003BF294 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C2338 003BF298 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C233C 003BF29C FC 20 08 18 */ frsp f1, f1 +/* 803C2340 003BF2A0 7C 3C F5 2E */ stfsx f1, r28, r30 +/* 803C2344 003BF2A4 7C 43 CC 2E */ lfsx f2, r3, r25 +/* 803C2348 003BF2A8 C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C234C 003BF2AC C8 66 00 18 */ lfd f3, 0x18(r6) +/* 803C2350 003BF2B0 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C2354 003BF2B4 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C2358 003BF2B8 FC 20 08 18 */ frsp f1, f1 +/* 803C235C 003BF2BC 7C 3C FD 2E */ stfsx f1, r28, r31 +/* 803C2360 003BF2C0 7C 43 C4 2E */ lfsx f2, r3, r24 +/* 803C2364 003BF2C4 C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C2368 003BF2C8 C8 66 00 20 */ lfd f3, 0x20(r6) +/* 803C236C 003BF2CC FC 22 00 72 */ fmul f1, f2, f1 +/* 803C2370 003BF2D0 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C2374 003BF2D4 FC 20 08 18 */ frsp f1, f1 +/* 803C2378 003BF2D8 7C 3C 65 2E */ stfsx f1, r28, r12 +/* 803C237C 003BF2DC 7C 43 BC 2E */ lfsx f2, r3, r23 +/* 803C2380 003BF2E0 C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C2384 003BF2E4 C8 66 00 28 */ lfd f3, 0x28(r6) +/* 803C2388 003BF2E8 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C238C 003BF2EC FC 23 00 72 */ fmul f1, f3, f1 +/* 803C2390 003BF2F0 FC 20 08 18 */ frsp f1, f1 +/* 803C2394 003BF2F4 7C 3C 5D 2E */ stfsx f1, r28, r11 +/* 803C2398 003BF2F8 7C 43 B4 2E */ lfsx f2, r3, r22 +/* 803C239C 003BF2FC C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C23A0 003BF300 C8 66 00 30 */ lfd f3, 0x30(r6) +/* 803C23A4 003BF304 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C23A8 003BF308 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C23AC 003BF30C FC 20 08 18 */ frsp f1, f1 +/* 803C23B0 003BF310 7C 3C 55 2E */ stfsx f1, r28, r10 +/* 803C23B4 003BF314 C8 3B 00 00 */ lfd f1, 0(r27) +/* 803C23B8 003BF318 3B 7B 00 08 */ addi r27, r27, 8 +/* 803C23BC 003BF31C 7C 43 AC 2E */ lfsx f2, r3, r21 +/* 803C23C0 003BF320 C8 66 00 38 */ lfd f3, 0x38(r6) +/* 803C23C4 003BF324 FC 22 00 72 */ fmul f1, f2, f1 +/* 803C23C8 003BF328 FC 23 00 72 */ fmul f1, f3, f1 +/* 803C23CC 003BF32C FC 20 08 18 */ frsp f1, f1 +/* 803C23D0 003BF330 7C 3C 4D 2E */ stfsx f1, r28, r9 +lbl_803C23D4: +/* 803C23D4 003BF334 55 09 04 3E */ clrlwi r9, r8, 0x10 +/* 803C23D8 003BF338 28 09 00 08 */ cmplwi r9, 8 +/* 803C23DC 003BF33C 41 80 FE B0 */ blt lbl_803C228C +/* 803C23E0 003BF340 38 E7 FF BF */ addi r7, r7, -65 +/* 803C23E4 003BF344 54 E5 04 3F */ clrlwi. r5, r7, 0x10 +/* 803C23E8 003BF348 40 82 FC A0 */ bne lbl_803C2088 +/* 803C23EC 003BF34C 38 60 00 00 */ li r3, 0 +/* 803C23F0 003BF350 BA A1 01 5C */ lmw r21, 0x15c(r1) +/* 803C23F4 003BF354 38 21 01 88 */ addi r1, r1, 0x188 +/* 803C23F8 003BF358 4E 80 00 20 */ blr + +.global __THPReadHuffmanTableSpecification +__THPReadHuffmanTableSpecification: +/* 803C23FC 003BF35C 7C 08 02 A6 */ mflr r0 +/* 803C2400 003BF360 90 01 00 04 */ stw r0, 4(r1) +/* 803C2404 003BF364 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C2408 003BF368 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803C240C 003BF36C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 803C2410 003BF370 93 A1 00 14 */ stw r29, 0x14(r1) +/* 803C2414 003BF374 80 8D B1 4C */ lwz r4, __THPWorkArea@sda21(r13) +/* 803C2418 003BF378 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C241C 003BF37C 38 04 01 01 */ addi r0, r4, 0x101 +/* 803C2420 003BF380 90 8D B0 E8 */ stw r4, lbl_805A9CA8@sda21(r13) +/* 803C2424 003BF384 38 A3 06 9C */ addi r5, r3, 0x69c +/* 803C2428 003BF388 90 0D B0 EC */ stw r0, lbl_805A9CAC@sda21(r13) +/* 803C242C 003BF38C 80 63 06 9C */ lwz r3, 0x69c(r3) +/* 803C2430 003BF390 88 83 00 00 */ lbz r4, 0(r3) +/* 803C2434 003BF394 38 03 00 02 */ addi r0, r3, 2 +/* 803C2438 003BF398 88 63 00 01 */ lbz r3, 1(r3) +/* 803C243C 003BF39C 50 83 44 2E */ rlwimi r3, r4, 8, 0x10, 0x17 +/* 803C2440 003BF3A0 54 7E 04 3E */ clrlwi r30, r3, 0x10 +/* 803C2444 003BF3A4 90 05 00 00 */ stw r0, 0(r5) +/* 803C2448 003BF3A8 3B DE FF FE */ addi r30, r30, -2 +lbl_803C244C: +/* 803C244C 003BF3AC 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2450 003BF3B0 3B A0 00 00 */ li r29, 0 +/* 803C2454 003BF3B4 38 60 00 00 */ li r3, 0 +/* 803C2458 003BF3B8 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C245C 003BF3BC 38 04 00 01 */ addi r0, r4, 1 +/* 803C2460 003BF3C0 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C2464 003BF3C4 88 C4 00 00 */ lbz r6, 0(r4) +/* 803C2468 003BF3C8 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C246C 003BF3CC 7C C0 26 70 */ srawi r0, r6, 4 +/* 803C2470 003BF3D0 80 A4 06 9C */ lwz r5, 0x69c(r4) +/* 803C2474 003BF3D4 54 C4 0E FC */ rlwinm r4, r6, 1, 0x1b, 0x1e +/* 803C2478 003BF3D8 54 00 06 3E */ clrlwi r0, r0, 0x18 +/* 803C247C 003BF3DC 7C 04 02 14 */ add r0, r4, r0 +/* 803C2480 003BF3E0 90 AD B0 E4 */ stw r5, lbl_805A9CA4@sda21(r13) +/* 803C2484 003BF3E4 54 1F 06 3E */ clrlwi r31, r0, 0x18 +/* 803C2488 003BF3E8 48 00 00 C8 */ b lbl_803C2550 +lbl_803C248C: +/* 803C248C 003BF3EC 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2490 003BF3F0 38 63 00 08 */ addi r3, r3, 8 +/* 803C2494 003BF3F4 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C2498 003BF3F8 38 04 00 01 */ addi r0, r4, 1 +/* 803C249C 003BF3FC 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C24A0 003BF400 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C24A4 003BF404 88 04 00 00 */ lbz r0, 0(r4) +/* 803C24A8 003BF408 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C24AC 003BF40C 7F BD 02 14 */ add r29, r29, r0 +/* 803C24B0 003BF410 38 04 00 01 */ addi r0, r4, 1 +/* 803C24B4 003BF414 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C24B8 003BF418 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C24BC 003BF41C 88 04 00 00 */ lbz r0, 0(r4) +/* 803C24C0 003BF420 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C24C4 003BF424 7F BD 02 14 */ add r29, r29, r0 +/* 803C24C8 003BF428 38 04 00 01 */ addi r0, r4, 1 +/* 803C24CC 003BF42C 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C24D0 003BF430 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C24D4 003BF434 88 04 00 00 */ lbz r0, 0(r4) +/* 803C24D8 003BF438 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C24DC 003BF43C 7F BD 02 14 */ add r29, r29, r0 +/* 803C24E0 003BF440 38 04 00 01 */ addi r0, r4, 1 +/* 803C24E4 003BF444 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C24E8 003BF448 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C24EC 003BF44C 88 04 00 00 */ lbz r0, 0(r4) +/* 803C24F0 003BF450 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C24F4 003BF454 7F BD 02 14 */ add r29, r29, r0 +/* 803C24F8 003BF458 38 04 00 01 */ addi r0, r4, 1 +/* 803C24FC 003BF45C 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C2500 003BF460 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2504 003BF464 88 04 00 00 */ lbz r0, 0(r4) +/* 803C2508 003BF468 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C250C 003BF46C 7F BD 02 14 */ add r29, r29, r0 +/* 803C2510 003BF470 38 04 00 01 */ addi r0, r4, 1 +/* 803C2514 003BF474 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C2518 003BF478 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C251C 003BF47C 88 04 00 00 */ lbz r0, 0(r4) +/* 803C2520 003BF480 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C2524 003BF484 7F BD 02 14 */ add r29, r29, r0 +/* 803C2528 003BF488 38 04 00 01 */ addi r0, r4, 1 +/* 803C252C 003BF48C 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C2530 003BF490 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2534 003BF494 88 04 00 00 */ lbz r0, 0(r4) +/* 803C2538 003BF498 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C253C 003BF49C 7F BD 02 14 */ add r29, r29, r0 +/* 803C2540 003BF4A0 38 04 00 01 */ addi r0, r4, 1 +/* 803C2544 003BF4A4 90 05 06 9C */ stw r0, 0x69c(r5) +/* 803C2548 003BF4A8 88 04 00 00 */ lbz r0, 0(r4) +/* 803C254C 003BF4AC 7F BD 02 14 */ add r29, r29, r0 +lbl_803C2550: +/* 803C2550 003BF4B0 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 803C2554 003BF4B4 28 00 00 10 */ cmplwi r0, 0x10 +/* 803C2558 003BF4B8 41 80 FF 34 */ blt lbl_803C248C +/* 803C255C 003BF4BC 1C 7F 00 E0 */ mulli r3, r31, 0xe0 +/* 803C2560 003BF4C0 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2564 003BF4C4 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C2568 003BF4C8 38 03 03 40 */ addi r0, r3, 0x340 +/* 803C256C 003BF4CC 7C 85 01 2E */ stwx r4, r5, r0 +/* 803C2570 003BF4D0 57 A0 04 3E */ clrlwi r0, r29, 0x10 +/* 803C2574 003BF4D4 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2578 003BF4D8 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C257C 003BF4DC 7C 03 02 14 */ add r0, r3, r0 +/* 803C2580 003BF4E0 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C2584 003BF4E4 48 00 00 59 */ bl __THPHuffGenerateSizeTable +/* 803C2588 003BF4E8 48 00 01 45 */ bl __THPHuffGenerateCodeTable +/* 803C258C 003BF4EC 7F E3 FB 78 */ mr r3, r31 +/* 803C2590 003BF4F0 48 00 01 A5 */ bl __THPHuffGenerateDecoderTables +/* 803C2594 003BF4F4 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2598 003BF4F8 38 1D 00 11 */ addi r0, r29, 0x11 +/* 803C259C 003BF4FC 7F C0 F0 50 */ subf r30, r0, r30 +/* 803C25A0 003BF500 38 00 00 01 */ li r0, 1 +/* 803C25A4 003BF504 88 85 06 A8 */ lbz r4, 0x6a8(r5) +/* 803C25A8 003BF508 7C 03 F8 30 */ slw r3, r0, r31 +/* 803C25AC 003BF50C 7C 83 1B 78 */ or r3, r4, r3 +/* 803C25B0 003BF510 57 C0 04 3F */ clrlwi. r0, r30, 0x10 +/* 803C25B4 003BF514 98 65 06 A8 */ stb r3, 0x6a8(r5) +/* 803C25B8 003BF518 40 82 FE 94 */ bne lbl_803C244C +/* 803C25BC 003BF51C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803C25C0 003BF520 38 60 00 00 */ li r3, 0 +/* 803C25C4 003BF524 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803C25C8 003BF528 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 803C25CC 003BF52C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 803C25D0 003BF530 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C25D4 003BF534 7C 08 03 A6 */ mtlr r0 +/* 803C25D8 003BF538 4E 80 00 20 */ blr + +.global __THPHuffGenerateSizeTable +__THPHuffGenerateSizeTable: +/* 803C25DC 003BF53C 38 C0 00 00 */ li r6, 0 +/* 803C25E0 003BF540 38 E0 00 01 */ li r7, 1 +lbl_803C25E4: +/* 803C25E4 003BF544 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C25E8 003BF548 38 07 FF FF */ addi r0, r7, -1 +/* 803C25EC 003BF54C 54 E5 06 3E */ clrlwi r5, r7, 0x18 +/* 803C25F0 003BF550 7D 03 00 AE */ lbzx r8, r3, r0 +/* 803C25F4 003BF554 2C 08 00 00 */ cmpwi r8, 0 +/* 803C25F8 003BF558 38 68 00 00 */ addi r3, r8, 0 +/* 803C25FC 003BF55C 41 82 00 B4 */ beq lbl_803C26B0 +/* 803C2600 003BF560 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f +/* 803C2604 003BF564 7C 09 03 A6 */ mtctr r0 +/* 803C2608 003BF568 41 82 00 90 */ beq lbl_803C2698 +lbl_803C260C: +/* 803C260C 003BF56C 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2610 003BF570 7C C0 33 78 */ mr r0, r6 +/* 803C2614 003BF574 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2618 003BF578 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C261C 003BF57C 38 06 00 00 */ addi r0, r6, 0 +/* 803C2620 003BF580 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2624 003BF584 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2628 003BF588 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C262C 003BF58C 38 06 00 00 */ addi r0, r6, 0 +/* 803C2630 003BF590 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2634 003BF594 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2638 003BF598 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C263C 003BF59C 38 06 00 00 */ addi r0, r6, 0 +/* 803C2640 003BF5A0 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2644 003BF5A4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2648 003BF5A8 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C264C 003BF5AC 38 06 00 00 */ addi r0, r6, 0 +/* 803C2650 003BF5B0 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2654 003BF5B4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2658 003BF5B8 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C265C 003BF5BC 38 06 00 00 */ addi r0, r6, 0 +/* 803C2660 003BF5C0 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2664 003BF5C4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2668 003BF5C8 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C266C 003BF5CC 38 06 00 00 */ addi r0, r6, 0 +/* 803C2670 003BF5D0 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2674 003BF5D4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2678 003BF5D8 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C267C 003BF5DC 38 06 00 00 */ addi r0, r6, 0 +/* 803C2680 003BF5E0 38 C6 00 01 */ addi r6, r6, 1 +/* 803C2684 003BF5E4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C2688 003BF5E8 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C268C 003BF5EC 42 00 FF 80 */ bdnz lbl_803C260C +/* 803C2690 003BF5F0 70 63 00 07 */ andi. r3, r3, 7 +/* 803C2694 003BF5F4 41 82 00 1C */ beq lbl_803C26B0 +lbl_803C2698: +/* 803C2698 003BF5F8 7C 69 03 A6 */ mtctr r3 +lbl_803C269C: +/* 803C269C 003BF5FC 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) +/* 803C26A0 003BF600 7C C0 33 78 */ mr r0, r6 +/* 803C26A4 003BF604 38 C6 00 01 */ addi r6, r6, 1 +/* 803C26A8 003BF608 7C A4 01 AE */ stbx r5, r4, r0 +/* 803C26AC 003BF60C 42 00 FF F0 */ bdnz lbl_803C269C +lbl_803C26B0: +/* 803C26B0 003BF610 38 E7 00 01 */ addi r7, r7, 1 +/* 803C26B4 003BF614 2C 07 00 10 */ cmpwi r7, 0x10 +/* 803C26B8 003BF618 40 81 FF 2C */ ble lbl_803C25E4 +/* 803C26BC 003BF61C 80 6D B0 E8 */ lwz r3, lbl_805A9CA8@sda21(r13) +/* 803C26C0 003BF620 38 00 00 00 */ li r0, 0 +/* 803C26C4 003BF624 7C 03 31 AE */ stbx r0, r3, r6 +/* 803C26C8 003BF628 4E 80 00 20 */ blr + +.global __THPHuffGenerateCodeTable +__THPHuffGenerateCodeTable: +/* 803C26CC 003BF62C 80 CD B0 E8 */ lwz r6, lbl_805A9CA8@sda21(r13) +/* 803C26D0 003BF630 39 00 00 00 */ li r8, 0 +/* 803C26D4 003BF634 80 AD B0 EC */ lwz r5, lbl_805A9CAC@sda21(r13) +/* 803C26D8 003BF638 39 20 00 00 */ li r9, 0 +/* 803C26DC 003BF63C 88 E6 00 00 */ lbz r7, 0(r6) +/* 803C26E0 003BF640 38 60 00 01 */ li r3, 1 +/* 803C26E4 003BF644 48 00 00 3C */ b lbl_803C2720 +lbl_803C26E8: +/* 803C26E8 003BF648 54 E4 06 3E */ clrlwi r4, r7, 0x18 +/* 803C26EC 003BF64C 48 00 00 14 */ b lbl_803C2700 +lbl_803C26F0: +/* 803C26F0 003BF650 55 00 0B FC */ rlwinm r0, r8, 1, 0xf, 0x1e +/* 803C26F4 003BF654 7D 25 03 2E */ sthx r9, r5, r0 +/* 803C26F8 003BF658 39 08 00 01 */ addi r8, r8, 1 +/* 803C26FC 003BF65C 39 29 00 01 */ addi r9, r9, 1 +lbl_803C2700: +/* 803C2700 003BF660 55 00 04 3E */ clrlwi r0, r8, 0x10 +/* 803C2704 003BF664 7C 06 00 AE */ lbzx r0, r6, r0 +/* 803C2708 003BF668 7C 04 00 40 */ cmplw r4, r0 +/* 803C270C 003BF66C 41 82 FF E4 */ beq lbl_803C26F0 +/* 803C2710 003BF670 55 20 04 3E */ clrlwi r0, r9, 0x10 +/* 803C2714 003BF674 7C 00 18 30 */ slw r0, r0, r3 +/* 803C2718 003BF678 54 09 04 3E */ clrlwi r9, r0, 0x10 +/* 803C271C 003BF67C 38 E7 00 01 */ addi r7, r7, 1 +lbl_803C2720: +/* 803C2720 003BF680 55 00 04 3E */ clrlwi r0, r8, 0x10 +/* 803C2724 003BF684 7C 06 00 AE */ lbzx r0, r6, r0 +/* 803C2728 003BF688 28 00 00 00 */ cmplwi r0, 0 +/* 803C272C 003BF68C 40 82 FF BC */ bne lbl_803C26E8 + +.global sub_803c2730 +sub_803c2730: +/* 803C2730 003BF690 4E 80 00 20 */ blr + +.global __THPHuffGenerateDecoderTables +__THPHuffGenerateDecoderTables: +/* 803C2734 003BF694 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 803C2738 003BF698 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C273C 003BF69C 1C 60 00 E0 */ mulli r3, r0, 0xe0 +/* 803C2740 003BF6A0 38 E3 03 00 */ addi r7, r3, 0x300 +/* 803C2744 003BF6A4 38 00 00 04 */ li r0, 4 +/* 803C2748 003BF6A8 7C E4 3A 14 */ add r7, r4, r7 +/* 803C274C 003BF6AC 7C 09 03 A6 */ mtctr r0 +/* 803C2750 003BF6B0 38 C7 00 04 */ addi r6, r7, 4 +/* 803C2754 003BF6B4 39 00 00 00 */ li r8, 0 +/* 803C2758 003BF6B8 39 20 00 01 */ li r9, 1 +lbl_803C275C: +/* 803C275C 003BF6BC 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C2760 003BF6C0 38 A9 FF FF */ addi r5, r9, -1 +/* 803C2764 003BF6C4 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C2768 003BF6C8 28 00 00 00 */ cmplwi r0, 0 +/* 803C276C 003BF6CC 41 82 00 3C */ beq lbl_803C27A8 +/* 803C2770 003BF6D0 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) +/* 803C2774 003BF6D4 55 00 08 3C */ slwi r0, r8, 1 +/* 803C2778 003BF6D8 7C 03 02 2E */ lhzx r0, r3, r0 +/* 803C277C 003BF6DC 7C 00 40 50 */ subf r0, r0, r8 +/* 803C2780 003BF6E0 90 06 00 8C */ stw r0, 0x8c(r6) +/* 803C2784 003BF6E4 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C2788 003BF6E8 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) +/* 803C278C 003BF6EC 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C2790 003BF6F0 7D 08 02 14 */ add r8, r8, r0 +/* 803C2794 003BF6F4 55 03 08 3C */ slwi r3, r8, 1 +/* 803C2798 003BF6F8 38 03 FF FE */ addi r0, r3, -2 +/* 803C279C 003BF6FC 7C 04 02 2E */ lhzx r0, r4, r0 +/* 803C27A0 003BF700 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C27A4 003BF704 48 00 00 10 */ b lbl_803C27B4 +lbl_803C27A8: +/* 803C27A8 003BF708 38 00 FF FF */ li r0, -1 +/* 803C27AC 003BF70C 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C27B0 003BF710 90 06 00 8C */ stw r0, 0x8c(r6) +lbl_803C27B4: +/* 803C27B4 003BF714 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C27B8 003BF718 38 A9 00 00 */ addi r5, r9, 0 +/* 803C27BC 003BF71C 39 29 00 01 */ addi r9, r9, 1 +/* 803C27C0 003BF720 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C27C4 003BF724 38 C6 00 04 */ addi r6, r6, 4 +/* 803C27C8 003BF728 28 00 00 00 */ cmplwi r0, 0 +/* 803C27CC 003BF72C 41 82 00 3C */ beq lbl_803C2808 +/* 803C27D0 003BF730 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) +/* 803C27D4 003BF734 55 00 08 3C */ slwi r0, r8, 1 +/* 803C27D8 003BF738 7C 03 02 2E */ lhzx r0, r3, r0 +/* 803C27DC 003BF73C 7C 00 40 50 */ subf r0, r0, r8 +/* 803C27E0 003BF740 90 06 00 8C */ stw r0, 0x8c(r6) +/* 803C27E4 003BF744 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C27E8 003BF748 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) +/* 803C27EC 003BF74C 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C27F0 003BF750 7D 08 02 14 */ add r8, r8, r0 +/* 803C27F4 003BF754 55 03 08 3C */ slwi r3, r8, 1 +/* 803C27F8 003BF758 38 03 FF FE */ addi r0, r3, -2 +/* 803C27FC 003BF75C 7C 04 02 2E */ lhzx r0, r4, r0 +/* 803C2800 003BF760 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C2804 003BF764 48 00 00 10 */ b lbl_803C2814 +lbl_803C2808: +/* 803C2808 003BF768 38 00 FF FF */ li r0, -1 +/* 803C280C 003BF76C 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C2810 003BF770 90 06 00 8C */ stw r0, 0x8c(r6) +lbl_803C2814: +/* 803C2814 003BF774 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C2818 003BF778 38 A9 00 00 */ addi r5, r9, 0 +/* 803C281C 003BF77C 39 29 00 01 */ addi r9, r9, 1 +/* 803C2820 003BF780 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C2824 003BF784 38 C6 00 04 */ addi r6, r6, 4 +/* 803C2828 003BF788 28 00 00 00 */ cmplwi r0, 0 +/* 803C282C 003BF78C 41 82 00 3C */ beq lbl_803C2868 +/* 803C2830 003BF790 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) +/* 803C2834 003BF794 55 00 08 3C */ slwi r0, r8, 1 +/* 803C2838 003BF798 7C 03 02 2E */ lhzx r0, r3, r0 +/* 803C283C 003BF79C 7C 00 40 50 */ subf r0, r0, r8 +/* 803C2840 003BF7A0 90 06 00 8C */ stw r0, 0x8c(r6) +/* 803C2844 003BF7A4 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C2848 003BF7A8 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) +/* 803C284C 003BF7AC 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C2850 003BF7B0 7D 08 02 14 */ add r8, r8, r0 +/* 803C2854 003BF7B4 55 03 08 3C */ slwi r3, r8, 1 +/* 803C2858 003BF7B8 38 03 FF FE */ addi r0, r3, -2 +/* 803C285C 003BF7BC 7C 04 02 2E */ lhzx r0, r4, r0 +/* 803C2860 003BF7C0 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C2864 003BF7C4 48 00 00 10 */ b lbl_803C2874 +lbl_803C2868: +/* 803C2868 003BF7C8 38 00 FF FF */ li r0, -1 +/* 803C286C 003BF7CC 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C2870 003BF7D0 90 06 00 8C */ stw r0, 0x8c(r6) +lbl_803C2874: +/* 803C2874 003BF7D4 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C2878 003BF7D8 38 A9 00 00 */ addi r5, r9, 0 +/* 803C287C 003BF7DC 39 29 00 01 */ addi r9, r9, 1 +/* 803C2880 003BF7E0 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C2884 003BF7E4 38 C6 00 04 */ addi r6, r6, 4 +/* 803C2888 003BF7E8 28 00 00 00 */ cmplwi r0, 0 +/* 803C288C 003BF7EC 41 82 00 3C */ beq lbl_803C28C8 +/* 803C2890 003BF7F0 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) +/* 803C2894 003BF7F4 55 00 08 3C */ slwi r0, r8, 1 +/* 803C2898 003BF7F8 7C 03 02 2E */ lhzx r0, r3, r0 +/* 803C289C 003BF7FC 7C 00 40 50 */ subf r0, r0, r8 +/* 803C28A0 003BF800 90 06 00 8C */ stw r0, 0x8c(r6) +/* 803C28A4 003BF804 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) +/* 803C28A8 003BF808 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) +/* 803C28AC 003BF80C 7C 03 28 AE */ lbzx r0, r3, r5 +/* 803C28B0 003BF810 7D 08 02 14 */ add r8, r8, r0 +/* 803C28B4 003BF814 55 03 08 3C */ slwi r3, r8, 1 +/* 803C28B8 003BF818 38 03 FF FE */ addi r0, r3, -2 +/* 803C28BC 003BF81C 7C 04 02 2E */ lhzx r0, r4, r0 +/* 803C28C0 003BF820 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C28C4 003BF824 48 00 00 10 */ b lbl_803C28D4 +lbl_803C28C8: +/* 803C28C8 003BF828 38 00 FF FF */ li r0, -1 +/* 803C28CC 003BF82C 90 06 00 44 */ stw r0, 0x44(r6) +/* 803C28D0 003BF830 90 06 00 8C */ stw r0, 0x8c(r6) +lbl_803C28D4: +/* 803C28D4 003BF834 38 C6 00 04 */ addi r6, r6, 4 +/* 803C28D8 003BF838 39 29 00 01 */ addi r9, r9, 1 +/* 803C28DC 003BF83C 42 00 FE 80 */ bdnz lbl_803C275C +/* 803C28E0 003BF840 3C 60 00 10 */ lis r3, 0x000FFFFF@ha +/* 803C28E4 003BF844 38 03 FF FF */ addi r0, r3, 0x000FFFFF@l +/* 803C28E8 003BF848 90 07 00 88 */ stw r0, 0x88(r7) +/* 803C28EC 003BF84C 4E 80 00 20 */ blr + +.global __THPRestartDefinition +__THPRestartDefinition: +/* 803C28F0 003BF850 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C28F4 003BF854 38 00 00 01 */ li r0, 1 +/* 803C28F8 003BF858 98 03 06 A9 */ stb r0, 0x6a9(r3) +/* 803C28FC 003BF85C 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2900 003BF860 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C2904 003BF864 38 03 00 02 */ addi r0, r3, 2 +/* 803C2908 003BF868 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C290C 003BF86C 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C2910 003BF870 80 85 06 9C */ lwz r4, 0x69c(r5) +/* 803C2914 003BF874 88 64 00 00 */ lbz r3, 0(r4) +/* 803C2918 003BF878 88 04 00 01 */ lbz r0, 1(r4) +/* 803C291C 003BF87C 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 +/* 803C2920 003BF880 B0 05 06 AA */ sth r0, 0x6aa(r5) +/* 803C2924 003BF884 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2928 003BF888 80 64 06 9C */ lwz r3, 0x69c(r4) +/* 803C292C 003BF88C 38 03 00 02 */ addi r0, r3, 2 +/* 803C2930 003BF890 90 04 06 9C */ stw r0, 0x69c(r4) +/* 803C2934 003BF894 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2938 003BF898 A0 03 06 AA */ lhz r0, 0x6aa(r3) +/* 803C293C 003BF89C B0 03 06 AC */ sth r0, 0x6ac(r3) +/* 803C2940 003BF8A0 4E 80 00 20 */ blr + +.global __THPPrepBitStream +__THPPrepBitStream: +/* 803C2944 003BF8A4 94 21 FF E8 */ stwu r1, -0x18(r1) +/* 803C2948 003BF8A8 93 E1 00 14 */ stw r31, 0x14(r1) +/* 803C294C 003BF8AC 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2950 003BF8B0 80 03 06 9C */ lwz r0, 0x69c(r3) +/* 803C2954 003BF8B4 38 83 06 A4 */ addi r4, r3, 0x6a4 +/* 803C2958 003BF8B8 80 63 06 A4 */ lwz r3, 0x6a4(r3) +/* 803C295C 003BF8BC 54 05 00 3A */ rlwinm r5, r0, 0, 0, 0x1d +/* 803C2960 003BF8C0 28 03 00 21 */ cmplwi r3, 0x21 +/* 803C2964 003BF8C4 54 00 07 BE */ clrlwi r0, r0, 0x1e +/* 803C2968 003BF8C8 41 82 00 18 */ beq lbl_803C2980 +/* 803C296C 003BF8CC 20 00 00 03 */ subfic r0, r0, 3 +/* 803C2970 003BF8D0 54 00 18 38 */ slwi r0, r0, 3 +/* 803C2974 003BF8D4 7C 00 18 50 */ subf r0, r0, r3 +/* 803C2978 003BF8D8 90 04 00 00 */ stw r0, 0(r4) +/* 803C297C 003BF8DC 48 00 00 10 */ b lbl_803C298C +lbl_803C2980: +/* 803C2980 003BF8E0 54 03 18 38 */ slwi r3, r0, 3 +/* 803C2984 003BF8E4 38 03 00 01 */ addi r0, r3, 1 +/* 803C2988 003BF8E8 90 04 00 00 */ stw r0, 0(r4) +lbl_803C298C: +/* 803C298C 003BF8EC 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2990 003BF8F0 38 60 00 00 */ li r3, 0 +/* 803C2994 003BF8F4 39 00 00 00 */ li r8, 0 +/* 803C2998 003BF8F8 90 A4 06 9C */ stw r5, 0x69c(r4) +/* 803C299C 003BF8FC 80 05 00 00 */ lwz r0, 0(r5) +/* 803C29A0 003BF900 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C29A4 003BF904 90 04 06 A0 */ stw r0, 0x6a0(r4) +lbl_803C29A8: +/* 803C29A8 003BF908 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C29AC 003BF90C 38 00 00 01 */ li r0, 1 +/* 803C29B0 003BF910 7C 00 18 30 */ slw r0, r0, r3 +/* 803C29B4 003BF914 88 84 06 A8 */ lbz r4, 0x6a8(r4) +/* 803C29B8 003BF918 7C 80 00 39 */ and. r0, r4, r0 +/* 803C29BC 003BF91C 41 82 01 18 */ beq lbl_803C2AD4 +/* 803C29C0 003BF920 38 00 00 10 */ li r0, 0x10 +/* 803C29C4 003BF924 7C 09 03 A6 */ mtctr r0 +/* 803C29C8 003BF928 38 E8 00 00 */ addi r7, r8, 0 +/* 803C29CC 003BF92C 39 80 00 00 */ li r12, 0 +lbl_803C29D0: +/* 803C29D0 003BF930 80 0D B1 50 */ lwz r0, __THPInfo@sda21(r13) +/* 803C29D4 003BF934 38 A0 00 FF */ li r5, 0xff +/* 803C29D8 003BF938 3B E0 00 00 */ li r31, 0 +/* 803C29DC 003BF93C 7C 80 62 14 */ add r4, r0, r12 +/* 803C29E0 003BF940 38 04 03 00 */ addi r0, r4, 0x300 +/* 803C29E4 003BF944 7C A8 01 AE */ stbx r5, r8, r0 +/* 803C29E8 003BF948 48 00 00 58 */ b lbl_803C2A40 +lbl_803C29EC: +/* 803C29EC 003BF94C 81 6D B1 50 */ lwz r11, __THPInfo@sda21(r13) +/* 803C29F0 003BF950 20 9F 00 04 */ subfic r4, r31, 4 +/* 803C29F4 003BF954 57 E0 10 3A */ slwi r0, r31, 2 +/* 803C29F8 003BF958 7C A8 5A 14 */ add r5, r8, r11 +/* 803C29FC 003BF95C 7D 45 02 14 */ add r10, r5, r0 +/* 803C2A00 003BF960 80 0A 03 48 */ lwz r0, 0x348(r10) +/* 803C2A04 003BF964 7D 89 24 30 */ srw r9, r12, r4 +/* 803C2A08 003BF968 7C 09 00 00 */ cmpw r9, r0 +/* 803C2A0C 003BF96C 41 81 00 30 */ bgt lbl_803C2A3C +/* 803C2A10 003BF970 80 C5 03 40 */ lwz r6, 0x340(r5) +/* 803C2A14 003BF974 38 BF 00 01 */ addi r5, r31, 1 +/* 803C2A18 003BF978 80 8A 03 90 */ lwz r4, 0x390(r10) +/* 803C2A1C 003BF97C 38 0B 03 00 */ addi r0, r11, 0x300 +/* 803C2A20 003BF980 3B E0 00 63 */ li r31, 0x63 +/* 803C2A24 003BF984 7C 84 32 14 */ add r4, r4, r6 +/* 803C2A28 003BF988 7C 89 20 AE */ lbzx r4, r9, r4 +/* 803C2A2C 003BF98C 7C 87 01 AE */ stbx r4, r7, r0 +/* 803C2A30 003BF990 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2A34 003BF994 38 04 03 20 */ addi r0, r4, 0x320 +/* 803C2A38 003BF998 7C A7 01 AE */ stbx r5, r7, r0 +lbl_803C2A3C: +/* 803C2A3C 003BF99C 3B FF 00 01 */ addi r31, r31, 1 +lbl_803C2A40: +/* 803C2A40 003BF9A0 28 1F 00 05 */ cmplwi r31, 5 +/* 803C2A44 003BF9A4 41 80 FF A8 */ blt lbl_803C29EC +/* 803C2A48 003BF9A8 80 0D B1 50 */ lwz r0, __THPInfo@sda21(r13) +/* 803C2A4C 003BF9AC 39 8C 00 01 */ addi r12, r12, 1 +/* 803C2A50 003BF9B0 38 A0 00 FF */ li r5, 0xff +/* 803C2A54 003BF9B4 7C 80 62 14 */ add r4, r0, r12 +/* 803C2A58 003BF9B8 38 04 03 00 */ addi r0, r4, 0x300 +/* 803C2A5C 003BF9BC 7C A8 01 AE */ stbx r5, r8, r0 +/* 803C2A60 003BF9C0 3B E0 00 00 */ li r31, 0 +/* 803C2A64 003BF9C4 38 E7 00 01 */ addi r7, r7, 1 +/* 803C2A68 003BF9C8 48 00 00 58 */ b lbl_803C2AC0 +lbl_803C2A6C: +/* 803C2A6C 003BF9CC 81 6D B1 50 */ lwz r11, __THPInfo@sda21(r13) +/* 803C2A70 003BF9D0 20 9F 00 04 */ subfic r4, r31, 4 +/* 803C2A74 003BF9D4 57 E0 10 3A */ slwi r0, r31, 2 +/* 803C2A78 003BF9D8 7C A8 5A 14 */ add r5, r8, r11 +/* 803C2A7C 003BF9DC 7D 45 02 14 */ add r10, r5, r0 +/* 803C2A80 003BF9E0 80 0A 03 48 */ lwz r0, 0x348(r10) +/* 803C2A84 003BF9E4 7D 89 24 30 */ srw r9, r12, r4 +/* 803C2A88 003BF9E8 7C 09 00 00 */ cmpw r9, r0 +/* 803C2A8C 003BF9EC 41 81 00 30 */ bgt lbl_803C2ABC +/* 803C2A90 003BF9F0 80 C5 03 40 */ lwz r6, 0x340(r5) +/* 803C2A94 003BF9F4 38 BF 00 01 */ addi r5, r31, 1 +/* 803C2A98 003BF9F8 80 8A 03 90 */ lwz r4, 0x390(r10) +/* 803C2A9C 003BF9FC 38 0B 03 00 */ addi r0, r11, 0x300 +/* 803C2AA0 003BFA00 3B E0 00 63 */ li r31, 0x63 +/* 803C2AA4 003BFA04 7C 84 32 14 */ add r4, r4, r6 +/* 803C2AA8 003BFA08 7C 89 20 AE */ lbzx r4, r9, r4 +/* 803C2AAC 003BFA0C 7C 87 01 AE */ stbx r4, r7, r0 +/* 803C2AB0 003BFA10 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2AB4 003BFA14 38 04 03 20 */ addi r0, r4, 0x320 +/* 803C2AB8 003BFA18 7C A7 01 AE */ stbx r5, r7, r0 +lbl_803C2ABC: +/* 803C2ABC 003BFA1C 3B FF 00 01 */ addi r31, r31, 1 +lbl_803C2AC0: +/* 803C2AC0 003BFA20 28 1F 00 05 */ cmplwi r31, 5 +/* 803C2AC4 003BFA24 41 80 FF A8 */ blt lbl_803C2A6C +/* 803C2AC8 003BFA28 38 E7 00 01 */ addi r7, r7, 1 +/* 803C2ACC 003BFA2C 39 8C 00 01 */ addi r12, r12, 1 +/* 803C2AD0 003BFA30 42 00 FF 00 */ bdnz lbl_803C29D0 +lbl_803C2AD4: +/* 803C2AD4 003BFA34 38 63 00 01 */ addi r3, r3, 1 +/* 803C2AD8 003BFA38 28 03 00 04 */ cmplwi r3, 4 +/* 803C2ADC 003BFA3C 39 08 00 E0 */ addi r8, r8, 0xe0 +/* 803C2AE0 003BFA40 41 80 FE C8 */ blt lbl_803C29A8 +/* 803C2AE4 003BFA44 81 2D B1 50 */ lwz r9, __THPInfo@sda21(r13) +/* 803C2AE8 003BFA48 88 89 06 82 */ lbz r4, 0x682(r9) +/* 803C2AEC 003BFA4C 88 09 06 88 */ lbz r0, 0x688(r9) +/* 803C2AF0 003BFA50 88 69 06 8E */ lbz r3, 0x68e(r9) +/* 803C2AF4 003BFA54 54 85 08 3C */ slwi r5, r4, 1 +/* 803C2AF8 003BFA58 88 E9 06 87 */ lbz r7, 0x687(r9) +/* 803C2AFC 003BFA5C 54 04 08 3C */ slwi r4, r0, 1 +/* 803C2B00 003BFA60 88 C9 06 8D */ lbz r6, 0x68d(r9) +/* 803C2B04 003BFA64 88 09 06 81 */ lbz r0, 0x681(r9) +/* 803C2B08 003BFA68 54 63 08 3C */ slwi r3, r3, 1 +/* 803C2B0C 003BFA6C 54 E7 08 3C */ slwi r7, r7, 1 +/* 803C2B10 003BFA70 54 C6 08 3C */ slwi r6, r6, 1 +/* 803C2B14 003BFA74 38 A5 00 01 */ addi r5, r5, 1 +/* 803C2B18 003BFA78 38 84 00 01 */ addi r4, r4, 1 +/* 803C2B1C 003BFA7C 38 63 00 01 */ addi r3, r3, 1 +/* 803C2B20 003BFA80 54 00 08 3C */ slwi r0, r0, 1 +/* 803C2B24 003BFA84 1D 00 00 E0 */ mulli r8, r0, 0xe0 +/* 803C2B28 003BFA88 1C E7 00 E0 */ mulli r7, r7, 0xe0 +/* 803C2B2C 003BFA8C 1C C6 00 E0 */ mulli r6, r6, 0xe0 +/* 803C2B30 003BFA90 1C A5 00 E0 */ mulli r5, r5, 0xe0 +/* 803C2B34 003BFA94 1C 84 00 E0 */ mulli r4, r4, 0xe0 +/* 803C2B38 003BFA98 1C 63 00 E0 */ mulli r3, r3, 0xe0 +/* 803C2B3C 003BFA9C 39 08 03 00 */ addi r8, r8, 0x300 +/* 803C2B40 003BFAA0 38 E7 03 00 */ addi r7, r7, 0x300 +/* 803C2B44 003BFAA4 38 C6 03 00 */ addi r6, r6, 0x300 +/* 803C2B48 003BFAA8 38 A5 03 00 */ addi r5, r5, 0x300 +/* 803C2B4C 003BFAAC 38 84 03 00 */ addi r4, r4, 0x300 +/* 803C2B50 003BFAB0 38 03 03 00 */ addi r0, r3, 0x300 +/* 803C2B54 003BFAB4 7D 09 42 14 */ add r8, r9, r8 +/* 803C2B58 003BFAB8 7C 69 3A 14 */ add r3, r9, r7 +/* 803C2B5C 003BFABC 91 0D B0 40 */ stw r8, Ydchuff@sda21(r13) +/* 803C2B60 003BFAC0 7C C9 32 14 */ add r6, r9, r6 +/* 803C2B64 003BFAC4 7C A9 2A 14 */ add r5, r9, r5 +/* 803C2B68 003BFAC8 90 6D B0 60 */ stw r3, Udchuff@sda21(r13) +/* 803C2B6C 003BFACC 7C 69 22 14 */ add r3, r9, r4 +/* 803C2B70 003BFAD0 7C 09 02 14 */ add r0, r9, r0 +/* 803C2B74 003BFAD4 90 CD B0 80 */ stw r6, Vdchuff@sda21(r13) +/* 803C2B78 003BFAD8 90 AD B0 A0 */ stw r5, Yachuff@sda21(r13) +/* 803C2B7C 003BFADC 90 6D B0 C0 */ stw r3, Uachuff@sda21(r13) +/* 803C2B80 003BFAE0 90 0D B0 E0 */ stw r0, Vachuff@sda21(r13) +/* 803C2B84 003BFAE4 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 803C2B88 003BFAE8 38 21 00 18 */ addi r1, r1, 0x18 +/* 803C2B8C 003BFAEC 4E 80 00 20 */ blr + +.global __THPDecompressYUV +__THPDecompressYUV: +/* 803C2B90 003BFAF0 7C 08 02 A6 */ mflr r0 +/* 803C2B94 003BFAF4 90 01 00 04 */ stw r0, 4(r1) +/* 803C2B98 003BFAF8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C2B9C 003BFAFC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803C2BA0 003BFB00 93 C1 00 18 */ stw r30, 0x18(r1) +/* 803C2BA4 003BFB04 80 CD B1 50 */ lwz r6, __THPInfo@sda21(r13) +/* 803C2BA8 003BFB08 90 66 06 B0 */ stw r3, 0x6b0(r6) +/* 803C2BAC 003BFB0C 80 CD B1 50 */ lwz r6, __THPInfo@sda21(r13) +/* 803C2BB0 003BFB10 90 86 06 B4 */ stw r4, 0x6b4(r6) +/* 803C2BB4 003BFB14 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2BB8 003BFB18 90 A4 06 B8 */ stw r5, 0x6b8(r4) +/* 803C2BBC 003BFB1C 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2BC0 003BFB20 A3 E4 06 98 */ lhz r31, 0x698(r4) +/* 803C2BC4 003BFB24 A3 C4 06 94 */ lhz r30, 0x694(r4) +/* 803C2BC8 003BFB28 7C 95 E2 A6 */ mfspr r4, 0x395 +/* 803C2BCC 003BFB2C 7C 16 E2 A6 */ mfspr r0, 0x396 +/* 803C2BD0 003BFB30 90 8D B1 44 */ stw r4, lbl_805A9D04@sda21(r13) +/* 803C2BD4 003BFB34 90 0D B1 48 */ stw r0, lbl_805A9D08@sda21(r13) +/* 803C2BD8 003BFB38 38 60 00 07 */ li r3, 7 +/* 803C2BDC 003BFB3C 64 63 00 07 */ oris r3, r3, 7 +/* 803C2BE0 003BFB40 7C 75 E3 A6 */ mtspr 0x395, r3 +/* 803C2BE4 003BFB44 38 60 3D 04 */ li r3, 0x3d04 +/* 803C2BE8 003BFB48 64 63 3D 04 */ oris r3, r3, 0x3d04 +/* 803C2BEC 003BFB4C 7C 76 E3 A6 */ mtspr 0x396, r3 +/* 803C2BF0 003BFB50 4B FF FD 55 */ bl __THPPrepBitStream +/* 803C2BF4 003BFB54 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2BF8 003BFB58 A0 04 06 92 */ lhz r0, 0x692(r4) +/* 803C2BFC 003BFB5C 28 00 02 00 */ cmplwi r0, 0x200 +/* 803C2C00 003BFB60 40 82 00 28 */ bne lbl_803C2C28 +/* 803C2C04 003BFB64 28 1E 01 C0 */ cmplwi r30, 0x1c0 +/* 803C2C08 003BFB68 40 82 00 20 */ bne lbl_803C2C28 +/* 803C2C0C 003BFB6C 48 00 00 0C */ b lbl_803C2C18 +lbl_803C2C10: +/* 803C2C10 003BFB70 48 00 00 8D */ bl __THPDecompressiMCURow512x448 +/* 803C2C14 003BFB74 3B FF 00 10 */ addi r31, r31, 0x10 +lbl_803C2C18: +/* 803C2C18 003BFB78 57 E0 04 3E */ clrlwi r0, r31, 0x10 +/* 803C2C1C 003BFB7C 7C 00 F0 40 */ cmplw r0, r30 +/* 803C2C20 003BFB80 41 80 FF F0 */ blt lbl_803C2C10 +/* 803C2C24 003BFB84 48 00 00 50 */ b lbl_803C2C74 +lbl_803C2C28: +/* 803C2C28 003BFB88 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2C2C 003BFB8C A0 04 06 92 */ lhz r0, 0x692(r4) +/* 803C2C30 003BFB90 28 00 02 80 */ cmplwi r0, 0x280 +/* 803C2C34 003BFB94 40 82 00 34 */ bne lbl_803C2C68 +/* 803C2C38 003BFB98 28 1E 01 E0 */ cmplwi r30, 0x1e0 +/* 803C2C3C 003BFB9C 40 82 00 2C */ bne lbl_803C2C68 +/* 803C2C40 003BFBA0 48 00 00 0C */ b lbl_803C2C4C +lbl_803C2C44: +/* 803C2C44 003BFBA4 48 00 1A E1 */ bl __THPDecompressiMCURow640x480 +/* 803C2C48 003BFBA8 3B FF 00 10 */ addi r31, r31, 0x10 +lbl_803C2C4C: +/* 803C2C4C 003BFBAC 57 E0 04 3E */ clrlwi r0, r31, 0x10 +/* 803C2C50 003BFBB0 7C 00 F0 40 */ cmplw r0, r30 +/* 803C2C54 003BFBB4 41 80 FF F0 */ blt lbl_803C2C44 +/* 803C2C58 003BFBB8 48 00 00 1C */ b lbl_803C2C74 +/* 803C2C5C 003BFBBC 48 00 00 0C */ b lbl_803C2C68 +lbl_803C2C60: +/* 803C2C60 003BFBC0 48 00 35 51 */ bl __THPDecompressiMCURowNxN +/* 803C2C64 003BFBC4 3B FF 00 10 */ addi r31, r31, 0x10 +lbl_803C2C68: +/* 803C2C68 003BFBC8 57 E0 04 3E */ clrlwi r0, r31, 0x10 +/* 803C2C6C 003BFBCC 7C 00 F0 40 */ cmplw r0, r30 +/* 803C2C70 003BFBD0 41 80 FF F0 */ blt lbl_803C2C60 +lbl_803C2C74: +/* 803C2C74 003BFBD4 80 8D B1 44 */ lwz r4, lbl_805A9D04@sda21(r13) +/* 803C2C78 003BFBD8 80 0D B1 48 */ lwz r0, lbl_805A9D08@sda21(r13) +/* 803C2C7C 003BFBDC 7C 95 E3 A6 */ mtspr 0x395, r4 +/* 803C2C80 003BFBE0 7C 16 E3 A6 */ mtspr 0x396, r0 +/* 803C2C84 003BFBE4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 803C2C88 003BFBE8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803C2C8C 003BFBEC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 803C2C90 003BFBF0 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C2C94 003BFBF4 7C 08 03 A6 */ mtlr r0 +/* 803C2C98 003BFBF8 4E 80 00 20 */ blr + +.global __THPDecompressiMCURow512x448 +__THPDecompressiMCURow512x448: +/* 803C2C9C 003BFBFC 7C 08 02 A6 */ mflr r0 +/* 803C2CA0 003BFC00 3C 60 80 57 */ lis r3, lbl_80569F60@ha +/* 803C2CA4 003BFC04 90 01 00 04 */ stw r0, 4(r1) +/* 803C2CA8 003BFC08 94 21 FF C8 */ stwu r1, -0x38(r1) +/* 803C2CAC 003BFC0C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 803C2CB0 003BFC10 DB C1 00 28 */ stfd f30, 0x28(r1) +/* 803C2CB4 003BFC14 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 803C2CB8 003BFC18 DB 81 00 18 */ stfd f28, 0x18(r1) +/* 803C2CBC 003BFC1C DB 61 00 10 */ stfd f27, 0x10(r1) +/* 803C2CC0 003BFC20 93 E1 00 0C */ stw r31, 0xc(r1) +/* 803C2CC4 003BFC24 3B E3 9F 60 */ addi r31, r3, lbl_80569F60@l +/* 803C2CC8 003BFC28 38 60 00 03 */ li r3, 3 +/* 803C2CCC 003BFC2C 93 C1 00 08 */ stw r30, 8(r1) +/* 803C2CD0 003BFC30 4B FB C1 F5 */ bl LCQueueWait +/* 803C2CD4 003BFC34 C3 62 D7 28 */ lfs f27, lbl_805AF448@sda21(r2) +/* 803C2CD8 003BFC38 3B C0 00 00 */ li r30, 0 +/* 803C2CDC 003BFC3C C3 82 D7 2C */ lfs f28, lbl_805AF44C@sda21(r2) +/* 803C2CE0 003BFC40 C3 A2 D7 30 */ lfs f29, lbl_805AF450@sda21(r2) +/* 803C2CE4 003BFC44 C3 C2 D7 34 */ lfs f30, lbl_805AF454@sda21(r2) +/* 803C2CE8 003BFC48 C3 E2 D7 38 */ lfs f31, lbl_805AF458@sda21(r2) +/* 803C2CEC 003BFC4C 48 00 19 90 */ b lbl_803C467C +lbl_803C2CF0: +/* 803C2CF0 003BFC50 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2CF4 003BFC54 80 9F 01 18 */ lwz r4, 0x118(r31) +/* 803C2CF8 003BFC58 48 00 4F 65 */ bl __THPHuffDecodeDCTCompY +/* 803C2CFC 003BFC5C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2D00 003BFC60 80 9F 01 1C */ lwz r4, 0x11c(r31) +/* 803C2D04 003BFC64 48 00 4F 59 */ bl __THPHuffDecodeDCTCompY +/* 803C2D08 003BFC68 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2D0C 003BFC6C 80 9F 01 20 */ lwz r4, 0x120(r31) +/* 803C2D10 003BFC70 48 00 4F 4D */ bl __THPHuffDecodeDCTCompY +/* 803C2D14 003BFC74 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2D18 003BFC78 80 9F 01 24 */ lwz r4, 0x124(r31) +/* 803C2D1C 003BFC7C 48 00 4F 41 */ bl __THPHuffDecodeDCTCompY +/* 803C2D20 003BFC80 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2D24 003BFC84 80 9F 01 28 */ lwz r4, 0x128(r31) +/* 803C2D28 003BFC88 48 00 55 B1 */ bl __THPHuffDecodeDCTCompU +/* 803C2D2C 003BFC8C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C2D30 003BFC90 80 9F 01 2C */ lwz r4, 0x12c(r31) +/* 803C2D34 003BFC94 48 00 5C 4D */ bl __THPHuffDecodeDCTCompV +/* 803C2D38 003BFC98 80 7F 01 00 */ lwz r3, 0x100(r31) +/* 803C2D3C 003BFC9C 38 00 02 00 */ li r0, 0x200 +/* 803C2D40 003BFCA0 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C2D44 003BFCA4 39 3F FF F8 */ addi r9, r31, -8 +/* 803C2D48 003BFCA8 90 6D B1 00 */ stw r3, lbl_805A9CC0@sda21(r13) +/* 803C2D4C 003BFCAC 57 C3 25 36 */ rlwinm r3, r30, 4, 0x14, 0x1b +/* 803C2D50 003BFCB0 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) +/* 803C2D54 003BFCB4 88 04 06 80 */ lbz r0, 0x680(r4) +/* 803C2D58 003BFCB8 54 00 40 2E */ slwi r0, r0, 8 +/* 803C2D5C 003BFCBC 7C 04 02 14 */ add r0, r4, r0 +/* 803C2D60 003BFCC0 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C2D64 003BFCC4 81 1F 01 18 */ lwz r8, 0x118(r31) +/* 803C2D68 003BFCC8 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C2D6C 003BFCCC 38 80 00 08 */ li r4, 8 +/* 803C2D70 003BFCD0 7C 89 03 A6 */ mtctr r4 +lbl_803C2D74: +/* 803C2D74 003BFCD4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C2D78 003BFCD8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C2D7C 003BFCDC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C2D80 003BFCE0 80 08 00 08 */ lwz r0, 8(r8) +/* 803C2D84 003BFCE4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C2D88 003BFCE8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C2D8C 003BFCEC A0 88 00 02 */ lhz r4, 2(r8) +/* 803C2D90 003BFCF0 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C2D94: +/* 803C2D94 003BFCF4 2C 06 00 00 */ cmpwi r6, 0 +/* 803C2D98 003BFCF8 40 82 01 48 */ bne lbl_803C2EE0 +/* 803C2D9C 003BFCFC 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C2DA0 003BFD00 2C 05 00 00 */ cmpwi r5, 0 +/* 803C2DA4 003BFD04 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C2DA8 003BFD08 40 82 00 9C */ bne lbl_803C2E44 +/* 803C2DAC 003BFD0C F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C2DB0 003BFD10 2C 04 00 00 */ cmpwi r4, 0 +/* 803C2DB4 003BFD14 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C2DB8 003BFD18 40 82 00 18 */ bne lbl_803C2DD0 +/* 803C2DBC 003BFD1C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C2DC0 003BFD20 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C2DC4 003BFD24 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C2DC8 003BFD28 42 00 FF AC */ bdnz lbl_803C2D74 +/* 803C2DCC 003BFD2C 48 00 01 DC */ b lbl_803C2FA8 +lbl_803C2DD0: +/* 803C2DD0 003BFD30 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C2DD4 003BFD34 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C2DD8 003BFD38 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C2DDC 003BFD3C 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C2DE0 003BFD40 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C2DE4 003BFD44 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C2DE8 003BFD48 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C2DEC 003BFD4C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C2DF0 003BFD50 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C2DF4 003BFD54 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C2DF8 003BFD58 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C2DFC 003BFD5C 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C2E00 003BFD60 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C2E04 003BFD64 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C2E08 003BFD68 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C2E0C 003BFD6C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C2E10 003BFD70 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C2E14 003BFD74 80 08 00 08 */ lwz r0, 8(r8) +/* 803C2E18 003BFD78 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C2E1C 003BFD7C F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C2E20 003BFD80 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C2E24 003BFD84 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C2E28 003BFD88 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C2E2C 003BFD8C 7C C6 03 78 */ or r6, r6, r0 +/* 803C2E30 003BFD90 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C2E34 003BFD94 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C2E38 003BFD98 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C2E3C 003BFD9C 42 00 FF 58 */ bdnz lbl_803C2D94 +/* 803C2E40 003BFDA0 48 00 01 68 */ b lbl_803C2FA8 +lbl_803C2E44: +/* 803C2E44 003BFDA4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C2E48 003BFDA8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C2E4C 003BFDAC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C2E50 003BFDB0 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C2E54 003BFDB4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C2E58 003BFDB8 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C2E5C 003BFDBC 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C2E60 003BFDC0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C2E64 003BFDC4 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C2E68 003BFDC8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C2E6C 003BFDCC 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C2E70 003BFDD0 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C2E74 003BFDD4 80 08 00 08 */ lwz r0, 8(r8) +/* 803C2E78 003BFDD8 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C2E7C 003BFDDC 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C2E80 003BFDE0 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C2E84 003BFDE4 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C2E88 003BFDE8 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C2E8C 003BFDEC A0 88 00 02 */ lhz r4, 2(r8) +/* 803C2E90 003BFDF0 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C2E94 003BFDF4 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C2E98 003BFDF8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C2E9C 003BFDFC 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C2EA0 003BFE00 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C2EA4 003BFE04 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C2EA8 003BFE08 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C2EAC 003BFE0C 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C2EB0 003BFE10 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C2EB4 003BFE14 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C2EB8 003BFE18 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C2EBC 003BFE1C 7C C6 03 78 */ or r6, r6, r0 +/* 803C2EC0 003BFE20 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C2EC4 003BFE24 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C2EC8 003BFE28 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C2ECC 003BFE2C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C2ED0 003BFE30 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C2ED4 003BFE34 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C2ED8 003BFE38 42 00 FE BC */ bdnz lbl_803C2D94 +/* 803C2EDC 003BFE3C 48 00 00 CC */ b lbl_803C2FA8 +lbl_803C2EE0: +/* 803C2EE0 003BFE40 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C2EE4 003BFE44 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C2EE8 003BFE48 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C2EEC 003BFE4C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C2EF0 003BFE50 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C2EF4 003BFE54 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C2EF8 003BFE58 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C2EFC 003BFE5C 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C2F00 003BFE60 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C2F04 003BFE64 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C2F08 003BFE68 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C2F0C 003BFE6C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C2F10 003BFE70 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C2F14 003BFE74 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C2F18 003BFE78 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C2F1C 003BFE7C 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C2F20 003BFE80 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C2F24 003BFE84 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C2F28 003BFE88 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C2F2C 003BFE8C 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C2F30 003BFE90 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C2F34 003BFE94 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C2F38 003BFE98 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C2F3C 003BFE9C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C2F40 003BFEA0 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C2F44 003BFEA4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C2F48 003BFEA8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C2F4C 003BFEAC 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C2F50 003BFEB0 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C2F54 003BFEB4 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C2F58 003BFEB8 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C2F5C 003BFEBC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C2F60 003BFEC0 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C2F64 003BFEC4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C2F68 003BFEC8 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C2F6C 003BFECC 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C2F70 003BFED0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C2F74 003BFED4 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C2F78 003BFED8 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C2F7C 003BFEDC 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C2F80 003BFEE0 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C2F84 003BFEE4 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C2F88 003BFEE8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C2F8C 003BFEEC F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C2F90 003BFEF0 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C2F94 003BFEF4 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C2F98 003BFEF8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C2F9C 003BFEFC 7C C6 03 78 */ or r6, r6, r0 +/* 803C2FA0 003BFF00 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C2FA4 003BFF04 42 00 FD F0 */ bdnz lbl_803C2D94 +lbl_803C2FA8: +/* 803C2FA8 003BFF08 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C2FAC 003BFF0C 7F E9 FB 78 */ mr r9, r31 +/* 803C2FB0 003BFF10 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C2FB4 003BFF14 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C2FB8 003BFF18 54 64 10 3A */ slwi r4, r3, 2 +/* 803C2FBC 003BFF1C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C2FC0 003BFF20 54 06 10 3A */ slwi r6, r0, 2 +/* 803C2FC4 003BFF24 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C2FC8 003BFF28 7C 87 23 78 */ mr r7, r4 +/* 803C2FCC 003BFF2C 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C2FD0 003BFF30 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C2FD4 003BFF34 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C2FD8 003BFF38 7C C7 32 14 */ add r6, r7, r6 +/* 803C2FDC 003BFF3C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C2FE0 003BFF40 38 00 00 03 */ li r0, 3 +/* 803C2FE4 003BFF44 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C2FE8 003BFF48 7C A8 3A 14 */ add r5, r8, r7 +/* 803C2FEC 003BFF4C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C2FF0 003BFF50 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C2FF4 003BFF54 7C 88 32 14 */ add r4, r8, r6 +/* 803C2FF8 003BFF58 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C2FFC 003BFF5C 7C 09 03 A6 */ mtctr r0 +lbl_803C3000: +/* 803C3000 003BFF60 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C3004 003BFF64 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C3008 003BFF68 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C300C 003BFF6C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C3010 003BFF70 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C3014 003BFF74 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C3018 003BFF78 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C301C 003BFF7C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C3020 003BFF80 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C3024 003BFF84 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3028 003BFF88 39 29 00 08 */ addi r9, r9, 8 +/* 803C302C 003BFF8C 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3030 003BFF90 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3034 003BFF94 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C3038 003BFF98 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C303C 003BFF9C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3040 003BFFA0 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3044 003BFFA4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C3048 003BFFA8 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C304C 003BFFAC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3050 003BFFB0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C3054 003BFFB4 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3058 003BFFB8 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C305C 003BFFBC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C3060 003BFFC0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C3064 003BFFC4 38 E7 00 02 */ addi r7, r7, 2 +/* 803C3068 003BFFC8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C306C 003BFFCC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3070 003BFFD0 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3074 003BFFD4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C3078 003BFFD8 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C307C 003BFFDC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3080 003BFFE0 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3084 003BFFE4 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C3088 003BFFE8 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C308C 003BFFEC 38 C6 00 02 */ addi r6, r6, 2 +/* 803C3090 003BFFF0 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C3094 003BFFF4 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C3098 003BFFF8 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C309C 003BFFFC 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C30A0 003C0000 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C30A4 003C0004 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C30A8 003C0008 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C30AC 003C000C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C30B0 003C0010 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C30B4 003C0014 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C30B8 003C0018 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C30BC 003C001C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C30C0 003C0020 7C A8 3A 14 */ add r5, r8, r7 +/* 803C30C4 003C0024 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C30C8 003C0028 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C30CC 003C002C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C30D0 003C0030 7C 88 32 14 */ add r4, r8, r6 +/* 803C30D4 003C0034 42 00 FF 2C */ bdnz lbl_803C3000 +/* 803C30D8 003C0038 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C30DC 003C003C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C30E0 003C0040 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C30E4 003C0044 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C30E8 003C0048 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C30EC 003C004C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C30F0 003C0050 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C30F4 003C0054 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C30F8 003C0058 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C30FC 003C005C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3100 003C0060 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3104 003C0064 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3108 003C0068 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C310C 003C006C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3110 003C0070 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3114 003C0074 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C3118 003C0078 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C311C 003C007C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3120 003C0080 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C3124 003C0084 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C3128 003C0088 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C312C 003C008C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3130 003C0090 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C3134 003C0094 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3138 003C0098 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C313C 003C009C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C3140 003C00A0 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3144 003C00A4 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3148 003C00A8 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C314C 003C00AC F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C3150 003C00B0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C3154 003C00B4 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C3158 003C00B8 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C315C 003C00BC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C3160 003C00C0 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C3164 003C00C4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C3168 003C00C8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C316C 003C00CC 81 1F 01 1C */ lwz r8, 0x11c(r31) +/* 803C3170 003C00D0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C3174 003C00D4 39 43 00 08 */ addi r10, r3, 8 +/* 803C3178 003C00D8 39 3F FF F8 */ addi r9, r31, -8 +/* 803C317C 003C00DC 38 80 00 08 */ li r4, 8 +/* 803C3180 003C00E0 7C 89 03 A6 */ mtctr r4 +lbl_803C3184: +/* 803C3184 003C00E4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3188 003C00E8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C318C 003C00EC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3190 003C00F0 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3194 003C00F4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3198 003C00F8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C319C 003C00FC A0 88 00 02 */ lhz r4, 2(r8) +/* 803C31A0 003C0100 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C31A4: +/* 803C31A4 003C0104 2C 06 00 00 */ cmpwi r6, 0 +/* 803C31A8 003C0108 40 82 01 48 */ bne lbl_803C32F0 +/* 803C31AC 003C010C 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C31B0 003C0110 2C 05 00 00 */ cmpwi r5, 0 +/* 803C31B4 003C0114 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C31B8 003C0118 40 82 00 9C */ bne lbl_803C3254 +/* 803C31BC 003C011C F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C31C0 003C0120 2C 04 00 00 */ cmpwi r4, 0 +/* 803C31C4 003C0124 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C31C8 003C0128 40 82 00 18 */ bne lbl_803C31E0 +/* 803C31CC 003C012C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C31D0 003C0130 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C31D4 003C0134 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C31D8 003C0138 42 00 FF AC */ bdnz lbl_803C3184 +/* 803C31DC 003C013C 48 00 01 DC */ b lbl_803C33B8 +lbl_803C31E0: +/* 803C31E0 003C0140 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C31E4 003C0144 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C31E8 003C0148 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C31EC 003C014C 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C31F0 003C0150 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C31F4 003C0154 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C31F8 003C0158 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C31FC 003C015C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3200 003C0160 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C3204 003C0164 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3208 003C0168 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C320C 003C016C 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C3210 003C0170 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3214 003C0174 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C3218 003C0178 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C321C 003C017C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3220 003C0180 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C3224 003C0184 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3228 003C0188 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C322C 003C018C F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C3230 003C0190 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C3234 003C0194 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C3238 003C0198 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C323C 003C019C 7C C6 03 78 */ or r6, r6, r0 +/* 803C3240 003C01A0 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C3244 003C01A4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3248 003C01A8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C324C 003C01AC 42 00 FF 58 */ bdnz lbl_803C31A4 +/* 803C3250 003C01B0 48 00 01 68 */ b lbl_803C33B8 +lbl_803C3254: +/* 803C3254 003C01B4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C3258 003C01B8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C325C 003C01BC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3260 003C01C0 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C3264 003C01C4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3268 003C01C8 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C326C 003C01CC 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C3270 003C01D0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3274 003C01D4 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C3278 003C01D8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C327C 003C01DC 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C3280 003C01E0 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C3284 003C01E4 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3288 003C01E8 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C328C 003C01EC 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C3290 003C01F0 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3294 003C01F4 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C3298 003C01F8 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C329C 003C01FC A0 88 00 02 */ lhz r4, 2(r8) +/* 803C32A0 003C0200 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C32A4 003C0204 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C32A8 003C0208 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C32AC 003C020C 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C32B0 003C0210 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C32B4 003C0214 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C32B8 003C0218 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C32BC 003C021C 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C32C0 003C0220 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C32C4 003C0224 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C32C8 003C0228 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C32CC 003C022C 7C C6 03 78 */ or r6, r6, r0 +/* 803C32D0 003C0230 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C32D4 003C0234 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C32D8 003C0238 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C32DC 003C023C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C32E0 003C0240 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C32E4 003C0244 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C32E8 003C0248 42 00 FE BC */ bdnz lbl_803C31A4 +/* 803C32EC 003C024C 48 00 00 CC */ b lbl_803C33B8 +lbl_803C32F0: +/* 803C32F0 003C0250 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C32F4 003C0254 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C32F8 003C0258 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C32FC 003C025C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C3300 003C0260 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C3304 003C0264 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C3308 003C0268 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C330C 003C026C 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C3310 003C0270 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C3314 003C0274 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3318 003C0278 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C331C 003C027C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C3320 003C0280 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C3324 003C0284 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C3328 003C0288 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C332C 003C028C 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C3330 003C0290 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C3334 003C0294 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C3338 003C0298 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C333C 003C029C 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C3340 003C02A0 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C3344 003C02A4 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C3348 003C02A8 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C334C 003C02AC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3350 003C02B0 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C3354 003C02B4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C3358 003C02B8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C335C 003C02BC 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3360 003C02C0 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C3364 003C02C4 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C3368 003C02C8 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C336C 003C02CC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C3370 003C02D0 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C3374 003C02D4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3378 003C02D8 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C337C 003C02DC 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C3380 003C02E0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3384 003C02E4 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C3388 003C02E8 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C338C 003C02EC 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3390 003C02F0 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C3394 003C02F4 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C3398 003C02F8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C339C 003C02FC F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C33A0 003C0300 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C33A4 003C0304 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C33A8 003C0308 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C33AC 003C030C 7C C6 03 78 */ or r6, r6, r0 +/* 803C33B0 003C0310 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C33B4 003C0314 42 00 FD F0 */ bdnz lbl_803C31A4 +lbl_803C33B8: +/* 803C33B8 003C0318 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C33BC 003C031C 7F E9 FB 78 */ mr r9, r31 +/* 803C33C0 003C0320 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C33C4 003C0324 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C33C8 003C0328 55 4A 10 3A */ slwi r10, r10, 2 +/* 803C33CC 003C032C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C33D0 003C0330 54 06 10 3A */ slwi r6, r0, 2 +/* 803C33D4 003C0334 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C33D8 003C0338 7D 47 53 78 */ mr r7, r10 +/* 803C33DC 003C033C 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C33E0 003C0340 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C33E4 003C0344 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C33E8 003C0348 7C C7 32 14 */ add r6, r7, r6 +/* 803C33EC 003C034C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C33F0 003C0350 38 00 00 03 */ li r0, 3 +/* 803C33F4 003C0354 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C33F8 003C0358 7C A8 3A 14 */ add r5, r8, r7 +/* 803C33FC 003C035C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C3400 003C0360 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C3404 003C0364 7C 88 32 14 */ add r4, r8, r6 +/* 803C3408 003C0368 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C340C 003C036C 7C 09 03 A6 */ mtctr r0 +lbl_803C3410: +/* 803C3410 003C0370 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C3414 003C0374 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C3418 003C0378 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C341C 003C037C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C3420 003C0380 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C3424 003C0384 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C3428 003C0388 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C342C 003C038C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C3430 003C0390 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C3434 003C0394 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3438 003C0398 39 29 00 08 */ addi r9, r9, 8 +/* 803C343C 003C039C 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3440 003C03A0 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3444 003C03A4 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C3448 003C03A8 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C344C 003C03AC 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3450 003C03B0 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3454 003C03B4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C3458 003C03B8 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C345C 003C03BC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3460 003C03C0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C3464 003C03C4 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3468 003C03C8 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C346C 003C03CC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C3470 003C03D0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C3474 003C03D4 38 E7 00 02 */ addi r7, r7, 2 +/* 803C3478 003C03D8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C347C 003C03DC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3480 003C03E0 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3484 003C03E4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C3488 003C03E8 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C348C 003C03EC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3490 003C03F0 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3494 003C03F4 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C3498 003C03F8 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C349C 003C03FC 38 C6 00 02 */ addi r6, r6, 2 +/* 803C34A0 003C0400 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C34A4 003C0404 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C34A8 003C0408 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C34AC 003C040C 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C34B0 003C0410 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C34B4 003C0414 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C34B8 003C0418 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C34BC 003C041C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C34C0 003C0420 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C34C4 003C0424 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C34C8 003C0428 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C34CC 003C042C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C34D0 003C0430 7C A8 3A 14 */ add r5, r8, r7 +/* 803C34D4 003C0434 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C34D8 003C0438 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C34DC 003C043C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C34E0 003C0440 7C 88 32 14 */ add r4, r8, r6 +/* 803C34E4 003C0444 42 00 FF 2C */ bdnz lbl_803C3410 +/* 803C34E8 003C0448 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C34EC 003C044C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C34F0 003C0450 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C34F4 003C0454 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C34F8 003C0458 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C34FC 003C045C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C3500 003C0460 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C3504 003C0464 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C3508 003C0468 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C350C 003C046C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3510 003C0470 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3514 003C0474 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3518 003C0478 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C351C 003C047C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3520 003C0480 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3524 003C0484 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C3528 003C0488 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C352C 003C048C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3530 003C0490 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C3534 003C0494 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C3538 003C0498 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C353C 003C049C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3540 003C04A0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C3544 003C04A4 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3548 003C04A8 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C354C 003C04AC 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C3550 003C04B0 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3554 003C04B4 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3558 003C04B8 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C355C 003C04BC F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C3560 003C04C0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C3564 003C04C4 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C3568 003C04C8 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C356C 003C04CC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C3570 003C04D0 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C3574 003C04D4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C3578 003C04D8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C357C 003C04DC 81 1F 01 20 */ lwz r8, 0x120(r31) +/* 803C3580 003C04E0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C3584 003C04E4 39 3F FF F8 */ addi r9, r31, -8 +/* 803C3588 003C04E8 38 80 00 08 */ li r4, 8 +/* 803C358C 003C04EC 7C 89 03 A6 */ mtctr r4 +lbl_803C3590: +/* 803C3590 003C04F0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3594 003C04F4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3598 003C04F8 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C359C 003C04FC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C35A0 003C0500 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C35A4 003C0504 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C35A8 003C0508 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C35AC 003C050C 7C C6 03 78 */ or r6, r6, r0 +lbl_803C35B0: +/* 803C35B0 003C0510 2C 06 00 00 */ cmpwi r6, 0 +/* 803C35B4 003C0514 40 82 01 48 */ bne lbl_803C36FC +/* 803C35B8 003C0518 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C35BC 003C051C 2C 05 00 00 */ cmpwi r5, 0 +/* 803C35C0 003C0520 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C35C4 003C0524 40 82 00 9C */ bne lbl_803C3660 +/* 803C35C8 003C0528 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C35CC 003C052C 2C 04 00 00 */ cmpwi r4, 0 +/* 803C35D0 003C0530 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C35D4 003C0534 40 82 00 18 */ bne lbl_803C35EC +/* 803C35D8 003C0538 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C35DC 003C053C F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C35E0 003C0540 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C35E4 003C0544 42 00 FF AC */ bdnz lbl_803C3590 +/* 803C35E8 003C0548 48 00 01 DC */ b lbl_803C37C4 +lbl_803C35EC: +/* 803C35EC 003C054C 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C35F0 003C0550 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C35F4 003C0554 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C35F8 003C0558 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C35FC 003C055C 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C3600 003C0560 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3604 003C0564 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C3608 003C0568 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C360C 003C056C 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C3610 003C0570 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3614 003C0574 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C3618 003C0578 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C361C 003C057C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3620 003C0580 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C3624 003C0584 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C3628 003C0588 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C362C 003C058C 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C3630 003C0590 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3634 003C0594 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C3638 003C0598 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C363C 003C059C 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C3640 003C05A0 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C3644 003C05A4 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C3648 003C05A8 7C C6 03 78 */ or r6, r6, r0 +/* 803C364C 003C05AC F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C3650 003C05B0 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3654 003C05B4 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C3658 003C05B8 42 00 FF 58 */ bdnz lbl_803C35B0 +/* 803C365C 003C05BC 48 00 01 68 */ b lbl_803C37C4 +lbl_803C3660: +/* 803C3660 003C05C0 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C3664 003C05C4 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C3668 003C05C8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C366C 003C05CC 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C3670 003C05D0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3674 003C05D4 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C3678 003C05D8 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C367C 003C05DC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3680 003C05E0 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C3684 003C05E4 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C3688 003C05E8 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C368C 003C05EC 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C3690 003C05F0 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3694 003C05F4 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C3698 003C05F8 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C369C 003C05FC 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C36A0 003C0600 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C36A4 003C0604 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C36A8 003C0608 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C36AC 003C060C 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C36B0 003C0610 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C36B4 003C0614 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C36B8 003C0618 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C36BC 003C061C 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C36C0 003C0620 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C36C4 003C0624 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C36C8 003C0628 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C36CC 003C062C F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C36D0 003C0630 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C36D4 003C0634 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C36D8 003C0638 7C C6 03 78 */ or r6, r6, r0 +/* 803C36DC 003C063C F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C36E0 003C0640 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C36E4 003C0644 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C36E8 003C0648 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C36EC 003C064C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C36F0 003C0650 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C36F4 003C0654 42 00 FE BC */ bdnz lbl_803C35B0 +/* 803C36F8 003C0658 48 00 00 CC */ b lbl_803C37C4 +lbl_803C36FC: +/* 803C36FC 003C065C E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C3700 003C0660 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C3704 003C0664 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C3708 003C0668 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C370C 003C066C E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C3710 003C0670 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C3714 003C0674 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C3718 003C0678 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C371C 003C067C E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C3720 003C0680 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3724 003C0684 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C3728 003C0688 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C372C 003C068C 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C3730 003C0690 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C3734 003C0694 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3738 003C0698 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C373C 003C069C 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C3740 003C06A0 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C3744 003C06A4 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3748 003C06A8 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C374C 003C06AC 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C3750 003C06B0 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C3754 003C06B4 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3758 003C06B8 80 08 00 08 */ lwz r0, 8(r8) +/* 803C375C 003C06BC 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C3760 003C06C0 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C3764 003C06C4 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C3768 003C06C8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C376C 003C06CC 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C3770 003C06D0 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C3774 003C06D4 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3778 003C06D8 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C377C 003C06DC 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C3780 003C06E0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3784 003C06E4 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C3788 003C06E8 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C378C 003C06EC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3790 003C06F0 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C3794 003C06F4 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C3798 003C06F8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C379C 003C06FC 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C37A0 003C0700 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C37A4 003C0704 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C37A8 003C0708 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C37AC 003C070C 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C37B0 003C0710 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C37B4 003C0714 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C37B8 003C0718 7C C6 03 78 */ or r6, r6, r0 +/* 803C37BC 003C071C F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C37C0 003C0720 42 00 FD F0 */ bdnz lbl_803C35B0 +lbl_803C37C4: +/* 803C37C4 003C0724 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C37C8 003C0728 7F E9 FB 78 */ mr r9, r31 +/* 803C37CC 003C072C 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C37D0 003C0730 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C37D4 003C0734 54 07 18 38 */ slwi r7, r0, 3 +/* 803C37D8 003C0738 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C37DC 003C073C 54 64 10 3A */ slwi r4, r3, 2 +/* 803C37E0 003C0740 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C37E4 003C0744 54 06 10 3A */ slwi r6, r0, 2 +/* 803C37E8 003C0748 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C37EC 003C074C 7C E7 22 14 */ add r7, r7, r4 +/* 803C37F0 003C0750 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C37F4 003C0754 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C37F8 003C0758 7C C7 32 14 */ add r6, r7, r6 +/* 803C37FC 003C075C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C3800 003C0760 38 00 00 03 */ li r0, 3 +/* 803C3804 003C0764 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C3808 003C0768 7C A8 3A 14 */ add r5, r8, r7 +/* 803C380C 003C076C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C3810 003C0770 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C3814 003C0774 7C 88 32 14 */ add r4, r8, r6 +/* 803C3818 003C0778 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C381C 003C077C 7C 09 03 A6 */ mtctr r0 +lbl_803C3820: +/* 803C3820 003C0780 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C3824 003C0784 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C3828 003C0788 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C382C 003C078C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C3830 003C0790 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C3834 003C0794 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C3838 003C0798 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C383C 003C079C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C3840 003C07A0 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C3844 003C07A4 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3848 003C07A8 39 29 00 08 */ addi r9, r9, 8 +/* 803C384C 003C07AC 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3850 003C07B0 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3854 003C07B4 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C3858 003C07B8 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C385C 003C07BC 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3860 003C07C0 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3864 003C07C4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C3868 003C07C8 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C386C 003C07CC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3870 003C07D0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C3874 003C07D4 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3878 003C07D8 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C387C 003C07DC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C3880 003C07E0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C3884 003C07E4 38 E7 00 02 */ addi r7, r7, 2 +/* 803C3888 003C07E8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C388C 003C07EC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3890 003C07F0 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3894 003C07F4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C3898 003C07F8 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C389C 003C07FC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C38A0 003C0800 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C38A4 003C0804 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C38A8 003C0808 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C38AC 003C080C 38 C6 00 02 */ addi r6, r6, 2 +/* 803C38B0 003C0810 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C38B4 003C0814 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C38B8 003C0818 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C38BC 003C081C 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C38C0 003C0820 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C38C4 003C0824 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C38C8 003C0828 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C38CC 003C082C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C38D0 003C0830 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C38D4 003C0834 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C38D8 003C0838 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C38DC 003C083C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C38E0 003C0840 7C A8 3A 14 */ add r5, r8, r7 +/* 803C38E4 003C0844 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C38E8 003C0848 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C38EC 003C084C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C38F0 003C0850 7C 88 32 14 */ add r4, r8, r6 +/* 803C38F4 003C0854 42 00 FF 2C */ bdnz lbl_803C3820 +/* 803C38F8 003C0858 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C38FC 003C085C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C3900 003C0860 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C3904 003C0864 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C3908 003C0868 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C390C 003C086C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C3910 003C0870 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C3914 003C0874 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C3918 003C0878 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C391C 003C087C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3920 003C0880 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3924 003C0884 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3928 003C0888 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C392C 003C088C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3930 003C0890 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3934 003C0894 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C3938 003C0898 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C393C 003C089C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3940 003C08A0 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C3944 003C08A4 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C3948 003C08A8 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C394C 003C08AC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3950 003C08B0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C3954 003C08B4 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3958 003C08B8 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C395C 003C08BC 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C3960 003C08C0 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3964 003C08C4 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3968 003C08C8 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C396C 003C08CC F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C3970 003C08D0 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C3974 003C08D4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C3978 003C08D8 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C397C 003C08DC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C3980 003C08E0 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C3984 003C08E4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C3988 003C08E8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C398C 003C08EC 81 1F 01 24 */ lwz r8, 0x124(r31) +/* 803C3990 003C08F0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C3994 003C08F4 39 23 00 08 */ addi r9, r3, 8 +/* 803C3998 003C08F8 39 5F FF F8 */ addi r10, r31, -8 +/* 803C399C 003C08FC 38 80 00 08 */ li r4, 8 +/* 803C39A0 003C0900 7C 89 03 A6 */ mtctr r4 +lbl_803C39A4: +/* 803C39A4 003C0904 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C39A8 003C0908 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C39AC 003C090C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C39B0 003C0910 80 08 00 08 */ lwz r0, 8(r8) +/* 803C39B4 003C0914 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C39B8 003C0918 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C39BC 003C091C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C39C0 003C0920 7C C6 03 78 */ or r6, r6, r0 +lbl_803C39C4: +/* 803C39C4 003C0924 2C 06 00 00 */ cmpwi r6, 0 +/* 803C39C8 003C0928 40 82 01 48 */ bne lbl_803C3B10 +/* 803C39CC 003C092C 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C39D0 003C0930 2C 05 00 00 */ cmpwi r5, 0 +/* 803C39D4 003C0934 F0 8A 00 08 */ psq_st f4, 8(r10), 0, qr0 +/* 803C39D8 003C0938 40 82 00 9C */ bne lbl_803C3A74 +/* 803C39DC 003C093C F0 8A 00 10 */ psq_st f4, 16(r10), 0, qr0 +/* 803C39E0 003C0940 2C 04 00 00 */ cmpwi r4, 0 +/* 803C39E4 003C0944 F0 8A 00 18 */ psq_st f4, 24(r10), 0, qr0 +/* 803C39E8 003C0948 40 82 00 18 */ bne lbl_803C3A00 +/* 803C39EC 003C094C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C39F0 003C0950 F4 8A 00 20 */ psq_stu f4, 32(r10), 0, qr0 +/* 803C39F4 003C0954 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C39F8 003C0958 42 00 FF AC */ bdnz lbl_803C39A4 +/* 803C39FC 003C095C 48 00 01 DC */ b lbl_803C3BD8 +lbl_803C3A00: +/* 803C3A00 003C0960 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C3A04 003C0964 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3A08 003C0968 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C3A0C 003C096C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3A10 003C0970 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C3A14 003C0974 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3A18 003C0978 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C3A1C 003C097C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3A20 003C0980 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C3A24 003C0984 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3A28 003C0988 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C3A2C 003C098C 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C3A30 003C0990 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3A34 003C0994 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C3A38 003C0998 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C3A3C 003C099C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3A40 003C09A0 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C3A44 003C09A4 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3A48 003C09A8 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C3A4C 003C09AC F5 0A 00 08 */ psq_stu f8, 8(r10), 0, qr0 +/* 803C3A50 003C09B0 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C3A54 003C09B4 F4 6A 00 08 */ psq_stu f3, 8(r10), 0, qr0 +/* 803C3A58 003C09B8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C3A5C 003C09BC 7C C6 03 78 */ or r6, r6, r0 +/* 803C3A60 003C09C0 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 +/* 803C3A64 003C09C4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3A68 003C09C8 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 +/* 803C3A6C 003C09CC 42 00 FF 58 */ bdnz lbl_803C39C4 +/* 803C3A70 003C09D0 48 00 01 68 */ b lbl_803C3BD8 +lbl_803C3A74: +/* 803C3A74 003C09D4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C3A78 003C09D8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C3A7C 003C09DC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3A80 003C09E0 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C3A84 003C09E4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3A88 003C09E8 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C3A8C 003C09EC 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C3A90 003C09F0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3A94 003C09F4 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C3A98 003C09F8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C3A9C 003C09FC 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C3AA0 003C0A00 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C3AA4 003C0A04 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3AA8 003C0A08 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C3AAC 003C0A0C 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C3AB0 003C0A10 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3AB4 003C0A14 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C3AB8 003C0A18 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C3ABC 003C0A1C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3AC0 003C0A20 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C3AC4 003C0A24 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C3AC8 003C0A28 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3ACC 003C0A2C 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C3AD0 003C0A30 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C3AD4 003C0A34 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3AD8 003C0A38 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C3ADC 003C0A3C 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C3AE0 003C0A40 F4 4A 00 08 */ psq_stu f2, 8(r10), 0, qr0 +/* 803C3AE4 003C0A44 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C3AE8 003C0A48 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C3AEC 003C0A4C 7C C6 03 78 */ or r6, r6, r0 +/* 803C3AF0 003C0A50 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 +/* 803C3AF4 003C0A54 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C3AF8 003C0A58 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C3AFC 003C0A5C F4 2A 00 08 */ psq_stu f1, 8(r10), 0, qr0 +/* 803C3B00 003C0A60 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3B04 003C0A64 F5 6A 00 08 */ psq_stu f11, 8(r10), 0, qr0 +/* 803C3B08 003C0A68 42 00 FE BC */ bdnz lbl_803C39C4 +/* 803C3B0C 003C0A6C 48 00 00 CC */ b lbl_803C3BD8 +lbl_803C3B10: +/* 803C3B10 003C0A70 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C3B14 003C0A74 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C3B18 003C0A78 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C3B1C 003C0A7C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C3B20 003C0A80 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C3B24 003C0A84 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C3B28 003C0A88 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C3B2C 003C0A8C 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C3B30 003C0A90 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C3B34 003C0A94 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3B38 003C0A98 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C3B3C 003C0A9C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C3B40 003C0AA0 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C3B44 003C0AA4 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C3B48 003C0AA8 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3B4C 003C0AAC 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C3B50 003C0AB0 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C3B54 003C0AB4 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C3B58 003C0AB8 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3B5C 003C0ABC 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C3B60 003C0AC0 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C3B64 003C0AC4 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C3B68 003C0AC8 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3B6C 003C0ACC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3B70 003C0AD0 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C3B74 003C0AD4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C3B78 003C0AD8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C3B7C 003C0ADC 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3B80 003C0AE0 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C3B84 003C0AE4 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C3B88 003C0AE8 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3B8C 003C0AEC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C3B90 003C0AF0 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C3B94 003C0AF4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3B98 003C0AF8 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C3B9C 003C0AFC 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C3BA0 003C0B00 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3BA4 003C0B04 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C3BA8 003C0B08 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C3BAC 003C0B0C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3BB0 003C0B10 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C3BB4 003C0B14 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C3BB8 003C0B18 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C3BBC 003C0B1C F5 8A 00 08 */ psq_stu f12, 8(r10), 0, qr0 +/* 803C3BC0 003C0B20 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C3BC4 003C0B24 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 +/* 803C3BC8 003C0B28 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 +/* 803C3BCC 003C0B2C 7C C6 03 78 */ or r6, r6, r0 +/* 803C3BD0 003C0B30 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 +/* 803C3BD4 003C0B34 42 00 FD F0 */ bdnz lbl_803C39C4 +lbl_803C3BD8: +/* 803C3BD8 003C0B38 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C3BDC 003C0B3C 7F EA FB 78 */ mr r10, r31 +/* 803C3BE0 003C0B40 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C3BE4 003C0B44 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 +/* 803C3BE8 003C0B48 54 07 18 38 */ slwi r7, r0, 3 +/* 803C3BEC 003C0B4C E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 +/* 803C3BF0 003C0B50 55 29 10 3A */ slwi r9, r9, 2 +/* 803C3BF4 003C0B54 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 +/* 803C3BF8 003C0B58 54 06 10 3A */ slwi r6, r0, 2 +/* 803C3BFC 003C0B5C 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C3C00 003C0B60 7C E7 4A 14 */ add r7, r7, r9 +/* 803C3C04 003C0B64 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 +/* 803C3C08 003C0B68 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C3C0C 003C0B6C 7C C7 32 14 */ add r6, r7, r6 +/* 803C3C10 003C0B70 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C3C14 003C0B74 38 00 00 03 */ li r0, 3 +/* 803C3C18 003C0B78 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C3C1C 003C0B7C 7C A8 3A 14 */ add r5, r8, r7 +/* 803C3C20 003C0B80 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C3C24 003C0B84 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C3C28 003C0B88 7C 88 32 14 */ add r4, r8, r6 +/* 803C3C2C 003C0B8C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C3C30 003C0B90 7C 09 03 A6 */ mtctr r0 +lbl_803C3C34: +/* 803C3C34 003C0B94 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 +/* 803C3C38 003C0B98 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C3C3C 003C0B9C E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 +/* 803C3C40 003C0BA0 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C3C44 003C0BA4 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C3C48 003C0BA8 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 +/* 803C3C4C 003C0BAC 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C3C50 003C0BB0 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 +/* 803C3C54 003C0BB4 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C3C58 003C0BB8 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3C5C 003C0BBC 39 4A 00 08 */ addi r10, r10, 8 +/* 803C3C60 003C0BC0 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3C64 003C0BC4 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3C68 003C0BC8 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 +/* 803C3C6C 003C0BCC 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C3C70 003C0BD0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3C74 003C0BD4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3C78 003C0BD8 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 +/* 803C3C7C 003C0BDC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C3C80 003C0BE0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3C84 003C0BE4 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 +/* 803C3C88 003C0BE8 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3C8C 003C0BEC 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C3C90 003C0BF0 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 +/* 803C3C94 003C0BF4 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C3C98 003C0BF8 38 E7 00 02 */ addi r7, r7, 2 +/* 803C3C9C 003C0BFC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C3CA0 003C0C00 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3CA4 003C0C04 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3CA8 003C0C08 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C3CAC 003C0C0C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C3CB0 003C0C10 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3CB4 003C0C14 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3CB8 003C0C18 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C3CBC 003C0C1C F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C3CC0 003C0C20 38 C6 00 02 */ addi r6, r6, 2 +/* 803C3CC4 003C0C24 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C3CC8 003C0C28 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C3CCC 003C0C2C F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C3CD0 003C0C30 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C3CD4 003C0C34 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C3CD8 003C0C38 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C3CDC 003C0C3C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C3CE0 003C0C40 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C3CE4 003C0C44 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C3CE8 003C0C48 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C3CEC 003C0C4C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C3CF0 003C0C50 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C3CF4 003C0C54 7C A8 3A 14 */ add r5, r8, r7 +/* 803C3CF8 003C0C58 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C3CFC 003C0C5C F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C3D00 003C0C60 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C3D04 003C0C64 7C 88 32 14 */ add r4, r8, r6 +/* 803C3D08 003C0C68 42 00 FF 2C */ bdnz lbl_803C3C34 +/* 803C3D0C 003C0C6C E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 +/* 803C3D10 003C0C70 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C3D14 003C0C74 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 +/* 803C3D18 003C0C78 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C3D1C 003C0C7C 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C3D20 003C0C80 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 +/* 803C3D24 003C0C84 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C3D28 003C0C88 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 +/* 803C3D2C 003C0C8C 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C3D30 003C0C90 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C3D34 003C0C94 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C3D38 003C0C98 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C3D3C 003C0C9C 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C3D40 003C0CA0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C3D44 003C0CA4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C3D48 003C0CA8 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C3D4C 003C0CAC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3D50 003C0CB0 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C3D54 003C0CB4 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C3D58 003C0CB8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C3D5C 003C0CBC 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C3D60 003C0CC0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C3D64 003C0CC4 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C3D68 003C0CC8 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C3D6C 003C0CCC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C3D70 003C0CD0 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C3D74 003C0CD4 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C3D78 003C0CD8 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C3D7C 003C0CDC 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C3D80 003C0CE0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C3D84 003C0CE4 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C3D88 003C0CE8 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C3D8C 003C0CEC 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C3D90 003C0CF0 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C3D94 003C0CF4 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C3D98 003C0CF8 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C3D9C 003C0CFC F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C3DA0 003C0D00 80 9F 01 04 */ lwz r4, 0x104(r31) +/* 803C3DA4 003C0D04 38 00 01 00 */ li r0, 0x100 +/* 803C3DA8 003C0D08 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C3DAC 003C0D0C 90 8D B1 00 */ stw r4, lbl_805A9CC0@sda21(r13) +/* 803C3DB0 003C0D10 54 63 F8 7E */ srwi r3, r3, 1 +/* 803C3DB4 003C0D14 39 3F FF F8 */ addi r9, r31, -8 +/* 803C3DB8 003C0D18 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) +/* 803C3DBC 003C0D1C 88 05 06 86 */ lbz r0, 0x686(r5) +/* 803C3DC0 003C0D20 54 00 40 2E */ slwi r0, r0, 8 +/* 803C3DC4 003C0D24 7C 05 02 14 */ add r0, r5, r0 +/* 803C3DC8 003C0D28 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C3DCC 003C0D2C 81 1F 01 28 */ lwz r8, 0x128(r31) +/* 803C3DD0 003C0D30 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C3DD4 003C0D34 38 80 00 08 */ li r4, 8 +/* 803C3DD8 003C0D38 7C 89 03 A6 */ mtctr r4 +lbl_803C3DDC: +/* 803C3DDC 003C0D3C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3DE0 003C0D40 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3DE4 003C0D44 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3DE8 003C0D48 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3DEC 003C0D4C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3DF0 003C0D50 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3DF4 003C0D54 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3DF8 003C0D58 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C3DFC: +/* 803C3DFC 003C0D5C 2C 06 00 00 */ cmpwi r6, 0 +/* 803C3E00 003C0D60 40 82 01 48 */ bne lbl_803C3F48 +/* 803C3E04 003C0D64 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C3E08 003C0D68 2C 05 00 00 */ cmpwi r5, 0 +/* 803C3E0C 003C0D6C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C3E10 003C0D70 40 82 00 9C */ bne lbl_803C3EAC +/* 803C3E14 003C0D74 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C3E18 003C0D78 2C 04 00 00 */ cmpwi r4, 0 +/* 803C3E1C 003C0D7C F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C3E20 003C0D80 40 82 00 18 */ bne lbl_803C3E38 +/* 803C3E24 003C0D84 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3E28 003C0D88 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C3E2C 003C0D8C 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3E30 003C0D90 42 00 FF AC */ bdnz lbl_803C3DDC +/* 803C3E34 003C0D94 48 00 01 DC */ b lbl_803C4010 +lbl_803C3E38: +/* 803C3E38 003C0D98 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3E3C 003C0D9C 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C3E40 003C0DA0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3E44 003C0DA4 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C3E48 003C0DA8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3E4C 003C0DAC 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C3E50 003C0DB0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C3E54 003C0DB4 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3E58 003C0DB8 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C3E5C 003C0DBC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3E60 003C0DC0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C3E64 003C0DC4 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C3E68 003C0DC8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3E6C 003C0DCC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C3E70 003C0DD0 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C3E74 003C0DD4 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3E78 003C0DD8 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C3E7C 003C0DDC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3E80 003C0DE0 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C3E84 003C0DE4 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C3E88 003C0DE8 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C3E8C 003C0DEC F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C3E90 003C0DF0 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C3E94 003C0DF4 7C C6 03 78 */ or r6, r6, r0 +/* 803C3E98 003C0DF8 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C3E9C 003C0DFC 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3EA0 003C0E00 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C3EA4 003C0E04 42 00 FF 58 */ bdnz lbl_803C3DFC +/* 803C3EA8 003C0E08 48 00 01 68 */ b lbl_803C4010 +lbl_803C3EAC: +/* 803C3EAC 003C0E0C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C3EB0 003C0E10 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C3EB4 003C0E14 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3EB8 003C0E18 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C3EBC 003C0E1C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3EC0 003C0E20 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C3EC4 003C0E24 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C3EC8 003C0E28 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3ECC 003C0E2C 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C3ED0 003C0E30 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C3ED4 003C0E34 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C3ED8 003C0E38 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C3EDC 003C0E3C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3EE0 003C0E40 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C3EE4 003C0E44 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C3EE8 003C0E48 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3EEC 003C0E4C 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C3EF0 003C0E50 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C3EF4 003C0E54 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3EF8 003C0E58 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C3EFC 003C0E5C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C3F00 003C0E60 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3F04 003C0E64 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C3F08 003C0E68 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C3F0C 003C0E6C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3F10 003C0E70 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C3F14 003C0E74 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C3F18 003C0E78 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C3F1C 003C0E7C 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C3F20 003C0E80 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C3F24 003C0E84 7C C6 03 78 */ or r6, r6, r0 +/* 803C3F28 003C0E88 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C3F2C 003C0E8C 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C3F30 003C0E90 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C3F34 003C0E94 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C3F38 003C0E98 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3F3C 003C0E9C F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C3F40 003C0EA0 42 00 FE BC */ bdnz lbl_803C3DFC +/* 803C3F44 003C0EA4 48 00 00 CC */ b lbl_803C4010 +lbl_803C3F48: +/* 803C3F48 003C0EA8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C3F4C 003C0EAC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C3F50 003C0EB0 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C3F54 003C0EB4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C3F58 003C0EB8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C3F5C 003C0EBC 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C3F60 003C0EC0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C3F64 003C0EC4 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C3F68 003C0EC8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C3F6C 003C0ECC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C3F70 003C0ED0 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C3F74 003C0ED4 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C3F78 003C0ED8 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C3F7C 003C0EDC 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C3F80 003C0EE0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C3F84 003C0EE4 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C3F88 003C0EE8 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C3F8C 003C0EEC 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C3F90 003C0EF0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C3F94 003C0EF4 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C3F98 003C0EF8 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C3F9C 003C0EFC 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C3FA0 003C0F00 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C3FA4 003C0F04 80 08 00 08 */ lwz r0, 8(r8) +/* 803C3FA8 003C0F08 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C3FAC 003C0F0C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C3FB0 003C0F10 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C3FB4 003C0F14 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C3FB8 003C0F18 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C3FBC 003C0F1C 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C3FC0 003C0F20 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C3FC4 003C0F24 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C3FC8 003C0F28 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C3FCC 003C0F2C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C3FD0 003C0F30 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C3FD4 003C0F34 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C3FD8 003C0F38 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C3FDC 003C0F3C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C3FE0 003C0F40 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C3FE4 003C0F44 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C3FE8 003C0F48 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C3FEC 003C0F4C 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C3FF0 003C0F50 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C3FF4 003C0F54 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C3FF8 003C0F58 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C3FFC 003C0F5C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C4000 003C0F60 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C4004 003C0F64 7C C6 03 78 */ or r6, r6, r0 +/* 803C4008 003C0F68 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C400C 003C0F6C 42 00 FD F0 */ bdnz lbl_803C3DFC +lbl_803C4010: +/* 803C4010 003C0F70 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C4014 003C0F74 7F E9 FB 78 */ mr r9, r31 +/* 803C4018 003C0F78 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C401C 003C0F7C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C4020 003C0F80 54 64 10 3A */ slwi r4, r3, 2 +/* 803C4024 003C0F84 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C4028 003C0F88 54 06 10 3A */ slwi r6, r0, 2 +/* 803C402C 003C0F8C E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C4030 003C0F90 7C 87 23 78 */ mr r7, r4 +/* 803C4034 003C0F94 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4038 003C0F98 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C403C 003C0F9C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4040 003C0FA0 7C C7 32 14 */ add r6, r7, r6 +/* 803C4044 003C0FA4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4048 003C0FA8 38 00 00 03 */ li r0, 3 +/* 803C404C 003C0FAC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4050 003C0FB0 7C A8 3A 14 */ add r5, r8, r7 +/* 803C4054 003C0FB4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4058 003C0FB8 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C405C 003C0FBC 7C 88 32 14 */ add r4, r8, r6 +/* 803C4060 003C0FC0 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4064 003C0FC4 7C 09 03 A6 */ mtctr r0 +lbl_803C4068: +/* 803C4068 003C0FC8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C406C 003C0FCC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4070 003C0FD0 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C4074 003C0FD4 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4078 003C0FD8 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C407C 003C0FDC E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C4080 003C0FE0 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C4084 003C0FE4 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C4088 003C0FE8 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C408C 003C0FEC 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4090 003C0FF0 39 29 00 08 */ addi r9, r9, 8 +/* 803C4094 003C0FF4 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C4098 003C0FF8 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C409C 003C0FFC E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C40A0 003C1000 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C40A4 003C1004 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C40A8 003C1008 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C40AC 003C100C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C40B0 003C1010 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C40B4 003C1014 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C40B8 003C1018 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C40BC 003C101C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C40C0 003C1020 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C40C4 003C1024 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C40C8 003C1028 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C40CC 003C102C 38 E7 00 02 */ addi r7, r7, 2 +/* 803C40D0 003C1030 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C40D4 003C1034 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C40D8 003C1038 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C40DC 003C103C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C40E0 003C1040 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C40E4 003C1044 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C40E8 003C1048 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C40EC 003C104C 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C40F0 003C1050 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C40F4 003C1054 38 C6 00 02 */ addi r6, r6, 2 +/* 803C40F8 003C1058 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C40FC 003C105C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C4100 003C1060 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C4104 003C1064 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C4108 003C1068 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C410C 003C106C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C4110 003C1070 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4114 003C1074 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4118 003C1078 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C411C 003C107C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4120 003C1080 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4124 003C1084 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C4128 003C1088 7C A8 3A 14 */ add r5, r8, r7 +/* 803C412C 003C108C 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4130 003C1090 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C4134 003C1094 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4138 003C1098 7C 88 32 14 */ add r4, r8, r6 +/* 803C413C 003C109C 42 00 FF 2C */ bdnz lbl_803C4068 +/* 803C4140 003C10A0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C4144 003C10A4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4148 003C10A8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C414C 003C10AC 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4150 003C10B0 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C4154 003C10B4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C4158 003C10B8 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C415C 003C10BC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C4160 003C10C0 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C4164 003C10C4 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4168 003C10C8 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C416C 003C10CC 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C4170 003C10D0 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C4174 003C10D4 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C4178 003C10D8 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C417C 003C10DC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C4180 003C10E0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C4184 003C10E4 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C4188 003C10E8 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C418C 003C10EC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C4190 003C10F0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C4194 003C10F4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C4198 003C10F8 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C419C 003C10FC 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C41A0 003C1100 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C41A4 003C1104 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C41A8 003C1108 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C41AC 003C110C 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C41B0 003C1110 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C41B4 003C1114 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C41B8 003C1118 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C41BC 003C111C 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C41C0 003C1120 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C41C4 003C1124 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C41C8 003C1128 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C41CC 003C112C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C41D0 003C1130 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C41D4 003C1134 80 1F 01 08 */ lwz r0, 0x108(r31) +/* 803C41D8 003C1138 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C41DC 003C113C 39 1F FF F8 */ addi r8, r31, -8 +/* 803C41E0 003C1140 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) +/* 803C41E4 003C1144 88 04 06 8C */ lbz r0, 0x68c(r4) +/* 803C41E8 003C1148 54 00 40 2E */ slwi r0, r0, 8 +/* 803C41EC 003C114C 7C 04 02 14 */ add r0, r4, r0 +/* 803C41F0 003C1150 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C41F4 003C1154 81 3F 01 2C */ lwz r9, 0x12c(r31) +/* 803C41F8 003C1158 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C41FC 003C115C 38 80 00 08 */ li r4, 8 +/* 803C4200 003C1160 7C 89 03 A6 */ mtctr r4 +lbl_803C4204: +/* 803C4204 003C1164 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C4208 003C1168 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C420C 003C116C 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C4210 003C1170 80 09 00 08 */ lwz r0, 8(r9) +/* 803C4214 003C1174 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4218 003C1178 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C421C 003C117C A0 89 00 02 */ lhz r4, 2(r9) +/* 803C4220 003C1180 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C4224: +/* 803C4224 003C1184 2C 06 00 00 */ cmpwi r6, 0 +/* 803C4228 003C1188 40 82 01 48 */ bne lbl_803C4370 +/* 803C422C 003C118C 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C4230 003C1190 2C 05 00 00 */ cmpwi r5, 0 +/* 803C4234 003C1194 F0 88 00 08 */ psq_st f4, 8(r8), 0, qr0 +/* 803C4238 003C1198 40 82 00 9C */ bne lbl_803C42D4 +/* 803C423C 003C119C F0 88 00 10 */ psq_st f4, 16(r8), 0, qr0 +/* 803C4240 003C11A0 2C 04 00 00 */ cmpwi r4, 0 +/* 803C4244 003C11A4 F0 88 00 18 */ psq_st f4, 24(r8), 0, qr0 +/* 803C4248 003C11A8 40 82 00 18 */ bne lbl_803C4260 +/* 803C424C 003C11AC 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4250 003C11B0 F4 88 00 20 */ psq_stu f4, 32(r8), 0, qr0 +/* 803C4254 003C11B4 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C4258 003C11B8 42 00 FF AC */ bdnz lbl_803C4204 +/* 803C425C 003C11BC 48 00 01 DC */ b lbl_803C4438 +lbl_803C4260: +/* 803C4260 003C11C0 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C4264 003C11C4 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C4268 003C11C8 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C426C 003C11CC 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C4270 003C11D0 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C4274 003C11D4 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C4278 003C11D8 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C427C 003C11DC A0 89 00 02 */ lhz r4, 2(r9) +/* 803C4280 003C11E0 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C4284 003C11E4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4288 003C11E8 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C428C 003C11EC 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C4290 003C11F0 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C4294 003C11F4 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C4298 003C11F8 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C429C 003C11FC 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C42A0 003C1200 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C42A4 003C1204 80 09 00 08 */ lwz r0, 8(r9) +/* 803C42A8 003C1208 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C42AC 003C120C F5 08 00 08 */ psq_stu f8, 8(r8), 0, qr0 +/* 803C42B0 003C1210 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C42B4 003C1214 F4 68 00 08 */ psq_stu f3, 8(r8), 0, qr0 +/* 803C42B8 003C1218 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C42BC 003C121C 7C C6 03 78 */ or r6, r6, r0 +/* 803C42C0 003C1220 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 +/* 803C42C4 003C1224 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C42C8 003C1228 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 +/* 803C42CC 003C122C 42 00 FF 58 */ bdnz lbl_803C4224 +/* 803C42D0 003C1230 48 00 01 68 */ b lbl_803C4438 +lbl_803C42D4: +/* 803C42D4 003C1234 E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 +/* 803C42D8 003C1238 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C42DC 003C123C 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C42E0 003C1240 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C42E4 003C1244 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C42E8 003C1248 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C42EC 003C124C 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C42F0 003C1250 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C42F4 003C1254 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C42F8 003C1258 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C42FC 003C125C 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C4300 003C1260 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C4304 003C1264 80 09 00 08 */ lwz r0, 8(r9) +/* 803C4308 003C1268 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C430C 003C126C 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C4310 003C1270 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C4314 003C1274 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C4318 003C1278 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C431C 003C127C A0 89 00 02 */ lhz r4, 2(r9) +/* 803C4320 003C1280 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C4324 003C1284 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C4328 003C1288 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C432C 003C128C 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C4330 003C1290 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C4334 003C1294 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4338 003C1298 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C433C 003C129C 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C4340 003C12A0 F4 48 00 08 */ psq_stu f2, 8(r8), 0, qr0 +/* 803C4344 003C12A4 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C4348 003C12A8 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C434C 003C12AC 7C C6 03 78 */ or r6, r6, r0 +/* 803C4350 003C12B0 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 +/* 803C4354 003C12B4 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C4358 003C12B8 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C435C 003C12BC F4 28 00 08 */ psq_stu f1, 8(r8), 0, qr0 +/* 803C4360 003C12C0 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4364 003C12C4 F5 68 00 08 */ psq_stu f11, 8(r8), 0, qr0 +/* 803C4368 003C12C8 42 00 FE BC */ bdnz lbl_803C4224 +/* 803C436C 003C12CC 48 00 00 CC */ b lbl_803C4438 +lbl_803C4370: +/* 803C4370 003C12D0 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 +/* 803C4374 003C12D4 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C4378 003C12D8 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C437C 003C12DC E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 +/* 803C4380 003C12E0 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C4384 003C12E4 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C4388 003C12E8 E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 +/* 803C438C 003C12EC 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C4390 003C12F0 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C4394 003C12F4 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C4398 003C12F8 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C439C 003C12FC 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C43A0 003C1300 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C43A4 003C1304 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C43A8 003C1308 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C43AC 003C130C 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C43B0 003C1310 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C43B4 003C1314 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C43B8 003C1318 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C43BC 003C131C 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C43C0 003C1320 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C43C4 003C1324 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C43C8 003C1328 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C43CC 003C132C 80 09 00 08 */ lwz r0, 8(r9) +/* 803C43D0 003C1330 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C43D4 003C1334 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C43D8 003C1338 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C43DC 003C133C 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C43E0 003C1340 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C43E4 003C1344 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C43E8 003C1348 A0 89 00 02 */ lhz r4, 2(r9) +/* 803C43EC 003C134C 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C43F0 003C1350 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C43F4 003C1354 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C43F8 003C1358 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C43FC 003C135C 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C4400 003C1360 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4404 003C1364 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C4408 003C1368 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C440C 003C136C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4410 003C1370 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C4414 003C1374 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C4418 003C1378 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C441C 003C137C F5 88 00 08 */ psq_stu f12, 8(r8), 0, qr0 +/* 803C4420 003C1380 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C4424 003C1384 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 +/* 803C4428 003C1388 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 +/* 803C442C 003C138C 7C C6 03 78 */ or r6, r6, r0 +/* 803C4430 003C1390 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 +/* 803C4434 003C1394 42 00 FD F0 */ bdnz lbl_803C4224 +lbl_803C4438: +/* 803C4438 003C1398 80 ED B1 00 */ lwz r7, lbl_805A9CC0@sda21(r13) +/* 803C443C 003C139C 7F E8 FB 78 */ mr r8, r31 +/* 803C4440 003C13A0 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C4444 003C13A4 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 +/* 803C4448 003C13A8 54 63 10 3A */ slwi r3, r3, 2 +/* 803C444C 003C13AC E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 +/* 803C4450 003C13B0 54 05 10 3A */ slwi r5, r0, 2 +/* 803C4454 003C13B4 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 +/* 803C4458 003C13B8 7C 66 1B 78 */ mr r6, r3 +/* 803C445C 003C13BC 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4460 003C13C0 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 +/* 803C4464 003C13C4 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4468 003C13C8 7C A6 2A 14 */ add r5, r6, r5 +/* 803C446C 003C13CC 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4470 003C13D0 38 00 00 03 */ li r0, 3 +/* 803C4474 003C13D4 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4478 003C13D8 7C 87 32 14 */ add r4, r7, r6 +/* 803C447C 003C13DC 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4480 003C13E0 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4484 003C13E4 7C 67 2A 14 */ add r3, r7, r5 +/* 803C4488 003C13E8 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C448C 003C13EC 7C 09 03 A6 */ mtctr r0 +lbl_803C4490: +/* 803C4490 003C13F0 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 +/* 803C4494 003C13F4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4498 003C13F8 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 +/* 803C449C 003C13FC 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C44A0 003C1400 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C44A4 003C1404 E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 +/* 803C44A8 003C1408 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C44AC 003C140C E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 +/* 803C44B0 003C1410 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C44B4 003C1414 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C44B8 003C1418 39 08 00 08 */ addi r8, r8, 8 +/* 803C44BC 003C141C 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C44C0 003C1420 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C44C4 003C1424 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 +/* 803C44C8 003C1428 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C44CC 003C142C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C44D0 003C1430 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C44D4 003C1434 E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 +/* 803C44D8 003C1438 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C44DC 003C143C 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C44E0 003C1440 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 +/* 803C44E4 003C1444 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C44E8 003C1448 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C44EC 003C144C E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 +/* 803C44F0 003C1450 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C44F4 003C1454 38 C6 00 02 */ addi r6, r6, 2 +/* 803C44F8 003C1458 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 +/* 803C44FC 003C145C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C4500 003C1460 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C4504 003C1464 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C4508 003C1468 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C450C 003C146C F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C4510 003C1470 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C4514 003C1474 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C4518 003C1478 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 +/* 803C451C 003C147C 38 A5 00 02 */ addi r5, r5, 2 +/* 803C4520 003C1480 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C4524 003C1484 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C4528 003C1488 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 +/* 803C452C 003C148C 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C4530 003C1490 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4534 003C1494 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C4538 003C1498 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C453C 003C149C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4540 003C14A0 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C4544 003C14A4 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4548 003C14A8 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C454C 003C14AC F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C4550 003C14B0 7C 87 32 14 */ add r4, r7, r6 +/* 803C4554 003C14B4 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4558 003C14B8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C455C 003C14BC 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4560 003C14C0 7C 67 2A 14 */ add r3, r7, r5 +/* 803C4564 003C14C4 42 00 FF 2C */ bdnz lbl_803C4490 +/* 803C4568 003C14C8 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 +/* 803C456C 003C14CC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4570 003C14D0 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 +/* 803C4574 003C14D4 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4578 003C14D8 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C457C 003C14DC E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 +/* 803C4580 003C14E0 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C4584 003C14E4 E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 +/* 803C4588 003C14E8 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C458C 003C14EC 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4590 003C14F0 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C4594 003C14F4 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C4598 003C14F8 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C459C 003C14FC 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C45A0 003C1500 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C45A4 003C1504 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C45A8 003C1508 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C45AC 003C150C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C45B0 003C1510 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C45B4 003C1514 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 +/* 803C45B8 003C1518 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C45BC 003C151C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C45C0 003C1520 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C45C4 003C1524 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C45C8 003C1528 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C45CC 003C152C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C45D0 003C1530 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C45D4 003C1534 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C45D8 003C1538 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C45DC 003C153C F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C45E0 003C1540 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 +/* 803C45E4 003C1544 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C45E8 003C1548 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C45EC 003C154C F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 +/* 803C45F0 003C1550 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C45F4 003C1554 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C45F8 003C1558 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C45FC 003C155C 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C4600 003C1560 88 04 06 A9 */ lbz r0, 0x6a9(r4) +/* 803C4604 003C1564 28 00 00 00 */ cmplwi r0, 0 +/* 803C4608 003C1568 41 82 00 70 */ beq lbl_803C4678 +/* 803C460C 003C156C A0 64 06 AC */ lhz r3, 0x6ac(r4) +/* 803C4610 003C1570 38 63 FF FF */ addi r3, r3, -1 +/* 803C4614 003C1574 54 60 04 3F */ clrlwi. r0, r3, 0x10 +/* 803C4618 003C1578 B0 64 06 AC */ sth r3, 0x6ac(r4) +/* 803C461C 003C157C 40 82 00 5C */ bne lbl_803C4678 +/* 803C4620 003C1580 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4624 003C1584 A0 03 06 AA */ lhz r0, 0x6aa(r3) +/* 803C4628 003C1588 B0 03 06 AC */ sth r0, 0x6ac(r3) +/* 803C462C 003C158C 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C4630 003C1590 80 64 06 A4 */ lwz r3, 0x6a4(r4) +/* 803C4634 003C1594 38 03 00 06 */ addi r0, r3, 6 +/* 803C4638 003C1598 54 03 00 38 */ rlwinm r3, r0, 0, 0, 0x1c +/* 803C463C 003C159C 38 03 00 01 */ addi r0, r3, 1 +/* 803C4640 003C15A0 90 04 06 A4 */ stw r0, 0x6a4(r4) +/* 803C4644 003C15A4 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4648 003C15A8 80 03 06 A4 */ lwz r0, 0x6a4(r3) +/* 803C464C 003C15AC 28 00 00 21 */ cmplwi r0, 0x21 +/* 803C4650 003C15B0 40 81 00 0C */ ble lbl_803C465C +/* 803C4654 003C15B4 38 00 00 21 */ li r0, 0x21 +/* 803C4658 003C15B8 90 03 06 A4 */ stw r0, 0x6a4(r3) +lbl_803C465C: +/* 803C465C 003C15BC 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4660 003C15C0 38 00 00 00 */ li r0, 0 +/* 803C4664 003C15C4 B0 03 06 84 */ sth r0, 0x684(r3) +/* 803C4668 003C15C8 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C466C 003C15CC B0 03 06 8A */ sth r0, 0x68a(r3) +/* 803C4670 003C15D0 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4674 003C15D4 B0 03 06 90 */ sth r0, 0x690(r3) +lbl_803C4678: +/* 803C4678 003C15D8 3B DE 00 01 */ addi r30, r30, 1 +lbl_803C467C: +/* 803C467C 003C15DC 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4680 003C15E0 57 C4 06 3E */ clrlwi r4, r30, 0x18 +/* 803C4684 003C15E4 A0 03 06 96 */ lhz r0, 0x696(r3) +/* 803C4688 003C15E8 7C 04 00 00 */ cmpw r4, r0 +/* 803C468C 003C15EC 41 80 E6 64 */ blt lbl_803C2CF0 +/* 803C4690 003C15F0 80 63 06 B0 */ lwz r3, 0x6b0(r3) +/* 803C4694 003C15F4 38 A0 20 00 */ li r5, 0x2000 +/* 803C4698 003C15F8 80 9F 01 00 */ lwz r4, 0x100(r31) +/* 803C469C 003C15FC 4B FB A7 71 */ bl LCStoreData +/* 803C46A0 003C1600 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C46A4 003C1604 38 A0 08 00 */ li r5, 0x800 +/* 803C46A8 003C1608 80 9F 01 04 */ lwz r4, 0x104(r31) +/* 803C46AC 003C160C 80 63 06 B4 */ lwz r3, 0x6b4(r3) +/* 803C46B0 003C1610 4B FB A7 5D */ bl LCStoreData +/* 803C46B4 003C1614 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C46B8 003C1618 38 A0 08 00 */ li r5, 0x800 +/* 803C46BC 003C161C 80 9F 01 08 */ lwz r4, 0x108(r31) +/* 803C46C0 003C1620 80 63 06 B8 */ lwz r3, 0x6b8(r3) +/* 803C46C4 003C1624 4B FB A7 49 */ bl LCStoreData +/* 803C46C8 003C1628 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C46CC 003C162C 80 64 06 B0 */ lwz r3, 0x6b0(r4) +/* 803C46D0 003C1630 38 03 20 00 */ addi r0, r3, 0x2000 +/* 803C46D4 003C1634 90 04 06 B0 */ stw r0, 0x6b0(r4) +/* 803C46D8 003C1638 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C46DC 003C163C 80 64 06 B4 */ lwz r3, 0x6b4(r4) +/* 803C46E0 003C1640 38 03 08 00 */ addi r0, r3, 0x800 +/* 803C46E4 003C1644 90 04 06 B4 */ stw r0, 0x6b4(r4) +/* 803C46E8 003C1648 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C46EC 003C164C 80 64 06 B8 */ lwz r3, 0x6b8(r4) +/* 803C46F0 003C1650 38 03 08 00 */ addi r0, r3, 0x800 +/* 803C46F4 003C1654 90 04 06 B8 */ stw r0, 0x6b8(r4) +/* 803C46F8 003C1658 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 803C46FC 003C165C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 803C4700 003C1660 CB C1 00 28 */ lfd f30, 0x28(r1) +/* 803C4704 003C1664 CB A1 00 20 */ lfd f29, 0x20(r1) +/* 803C4708 003C1668 CB 81 00 18 */ lfd f28, 0x18(r1) +/* 803C470C 003C166C CB 61 00 10 */ lfd f27, 0x10(r1) +/* 803C4710 003C1670 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 803C4714 003C1674 83 C1 00 08 */ lwz r30, 8(r1) +/* 803C4718 003C1678 38 21 00 38 */ addi r1, r1, 0x38 +/* 803C471C 003C167C 7C 08 03 A6 */ mtlr r0 +/* 803C4720 003C1680 4E 80 00 20 */ blr + +.global __THPDecompressiMCURow640x480 +__THPDecompressiMCURow640x480: +/* 803C4724 003C1684 7C 08 02 A6 */ mflr r0 +/* 803C4728 003C1688 3C 60 80 57 */ lis r3, lbl_80569F60@ha +/* 803C472C 003C168C 90 01 00 04 */ stw r0, 4(r1) +/* 803C4730 003C1690 94 21 FF C8 */ stwu r1, -0x38(r1) +/* 803C4734 003C1694 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 803C4738 003C1698 DB C1 00 28 */ stfd f30, 0x28(r1) +/* 803C473C 003C169C DB A1 00 20 */ stfd f29, 0x20(r1) +/* 803C4740 003C16A0 DB 81 00 18 */ stfd f28, 0x18(r1) +/* 803C4744 003C16A4 DB 61 00 10 */ stfd f27, 0x10(r1) +/* 803C4748 003C16A8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 803C474C 003C16AC 3B E3 9F 60 */ addi r31, r3, lbl_80569F60@l +/* 803C4750 003C16B0 38 60 00 03 */ li r3, 3 +/* 803C4754 003C16B4 93 C1 00 08 */ stw r30, 8(r1) +/* 803C4758 003C16B8 4B FB A7 6D */ bl LCQueueWait +/* 803C475C 003C16BC C3 62 D7 28 */ lfs f27, lbl_805AF448@sda21(r2) +/* 803C4760 003C16C0 3B C0 00 00 */ li r30, 0 +/* 803C4764 003C16C4 C3 82 D7 2C */ lfs f28, lbl_805AF44C@sda21(r2) +/* 803C4768 003C16C8 C3 A2 D7 30 */ lfs f29, lbl_805AF450@sda21(r2) +/* 803C476C 003C16CC C3 C2 D7 34 */ lfs f30, lbl_805AF454@sda21(r2) +/* 803C4770 003C16D0 C3 E2 D7 38 */ lfs f31, lbl_805AF458@sda21(r2) +/* 803C4774 003C16D4 48 00 19 94 */ b lbl_803C6108 +lbl_803C4778: +/* 803C4778 003C16D8 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C477C 003C16DC 80 9F 01 18 */ lwz r4, 0x118(r31) +/* 803C4780 003C16E0 48 00 34 DD */ bl __THPHuffDecodeDCTCompY +/* 803C4784 003C16E4 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4788 003C16E8 80 9F 01 1C */ lwz r4, 0x11c(r31) +/* 803C478C 003C16EC 48 00 34 D1 */ bl __THPHuffDecodeDCTCompY +/* 803C4790 003C16F0 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C4794 003C16F4 80 9F 01 20 */ lwz r4, 0x120(r31) +/* 803C4798 003C16F8 48 00 34 C5 */ bl __THPHuffDecodeDCTCompY +/* 803C479C 003C16FC 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C47A0 003C1700 80 9F 01 24 */ lwz r4, 0x124(r31) +/* 803C47A4 003C1704 48 00 34 B9 */ bl __THPHuffDecodeDCTCompY +/* 803C47A8 003C1708 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C47AC 003C170C 80 9F 01 28 */ lwz r4, 0x128(r31) +/* 803C47B0 003C1710 48 00 3B 29 */ bl __THPHuffDecodeDCTCompU +/* 803C47B4 003C1714 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C47B8 003C1718 80 9F 01 2C */ lwz r4, 0x12c(r31) +/* 803C47BC 003C171C 48 00 41 C5 */ bl __THPHuffDecodeDCTCompV +/* 803C47C0 003C1720 80 7F 01 0C */ lwz r3, 0x10c(r31) +/* 803C47C4 003C1724 38 00 02 80 */ li r0, 0x280 +/* 803C47C8 003C1728 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C47CC 003C172C 39 3F FF F8 */ addi r9, r31, -8 +/* 803C47D0 003C1730 90 6D B1 00 */ stw r3, lbl_805A9CC0@sda21(r13) +/* 803C47D4 003C1734 57 C3 25 36 */ rlwinm r3, r30, 4, 0x14, 0x1b +/* 803C47D8 003C1738 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) +/* 803C47DC 003C173C 88 04 06 80 */ lbz r0, 0x680(r4) +/* 803C47E0 003C1740 54 00 40 2E */ slwi r0, r0, 8 +/* 803C47E4 003C1744 7C 04 02 14 */ add r0, r4, r0 +/* 803C47E8 003C1748 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C47EC 003C174C 81 1F 01 18 */ lwz r8, 0x118(r31) +/* 803C47F0 003C1750 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C47F4 003C1754 38 80 00 08 */ li r4, 8 +/* 803C47F8 003C1758 7C 89 03 A6 */ mtctr r4 +lbl_803C47FC: +/* 803C47FC 003C175C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C4800 003C1760 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4804 003C1764 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C4808 003C1768 80 08 00 08 */ lwz r0, 8(r8) +/* 803C480C 003C176C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4810 003C1770 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C4814 003C1774 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4818 003C1778 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C481C: +/* 803C481C 003C177C 2C 06 00 00 */ cmpwi r6, 0 +/* 803C4820 003C1780 40 82 01 48 */ bne lbl_803C4968 +/* 803C4824 003C1784 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C4828 003C1788 2C 05 00 00 */ cmpwi r5, 0 +/* 803C482C 003C178C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C4830 003C1790 40 82 00 9C */ bne lbl_803C48CC +/* 803C4834 003C1794 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C4838 003C1798 2C 04 00 00 */ cmpwi r4, 0 +/* 803C483C 003C179C F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C4840 003C17A0 40 82 00 18 */ bne lbl_803C4858 +/* 803C4844 003C17A4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4848 003C17A8 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C484C 003C17AC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C4850 003C17B0 42 00 FF AC */ bdnz lbl_803C47FC +/* 803C4854 003C17B4 48 00 01 DC */ b lbl_803C4A30 +lbl_803C4858: +/* 803C4858 003C17B8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C485C 003C17BC 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C4860 003C17C0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4864 003C17C4 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C4868 003C17C8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C486C 003C17CC 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C4870 003C17D0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C4874 003C17D4 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4878 003C17D8 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C487C 003C17DC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4880 003C17E0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C4884 003C17E4 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C4888 003C17E8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C488C 003C17EC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C4890 003C17F0 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C4894 003C17F4 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C4898 003C17F8 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C489C 003C17FC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C48A0 003C1800 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C48A4 003C1804 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C48A8 003C1808 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C48AC 003C180C F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C48B0 003C1810 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C48B4 003C1814 7C C6 03 78 */ or r6, r6, r0 +/* 803C48B8 003C1818 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C48BC 003C181C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C48C0 003C1820 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C48C4 003C1824 42 00 FF 58 */ bdnz lbl_803C481C +/* 803C48C8 003C1828 48 00 01 68 */ b lbl_803C4A30 +lbl_803C48CC: +/* 803C48CC 003C182C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C48D0 003C1830 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C48D4 003C1834 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C48D8 003C1838 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C48DC 003C183C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C48E0 003C1840 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C48E4 003C1844 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C48E8 003C1848 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C48EC 003C184C 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C48F0 003C1850 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C48F4 003C1854 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C48F8 003C1858 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C48FC 003C185C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C4900 003C1860 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C4904 003C1864 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C4908 003C1868 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C490C 003C186C 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C4910 003C1870 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C4914 003C1874 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4918 003C1878 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C491C 003C187C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C4920 003C1880 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C4924 003C1884 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C4928 003C1888 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C492C 003C188C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4930 003C1890 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C4934 003C1894 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C4938 003C1898 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C493C 003C189C 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C4940 003C18A0 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C4944 003C18A4 7C C6 03 78 */ or r6, r6, r0 +/* 803C4948 003C18A8 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C494C 003C18AC 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C4950 003C18B0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C4954 003C18B4 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C4958 003C18B8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C495C 003C18BC F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C4960 003C18C0 42 00 FE BC */ bdnz lbl_803C481C +/* 803C4964 003C18C4 48 00 00 CC */ b lbl_803C4A30 +lbl_803C4968: +/* 803C4968 003C18C8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C496C 003C18CC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C4970 003C18D0 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C4974 003C18D4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C4978 003C18D8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C497C 003C18DC 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C4980 003C18E0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C4984 003C18E4 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C4988 003C18E8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C498C 003C18EC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C4990 003C18F0 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C4994 003C18F4 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C4998 003C18F8 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C499C 003C18FC 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C49A0 003C1900 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C49A4 003C1904 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C49A8 003C1908 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C49AC 003C190C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C49B0 003C1910 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C49B4 003C1914 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C49B8 003C1918 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C49BC 003C191C 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C49C0 003C1920 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C49C4 003C1924 80 08 00 08 */ lwz r0, 8(r8) +/* 803C49C8 003C1928 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C49CC 003C192C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C49D0 003C1930 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C49D4 003C1934 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C49D8 003C1938 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C49DC 003C193C 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C49E0 003C1940 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C49E4 003C1944 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C49E8 003C1948 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C49EC 003C194C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C49F0 003C1950 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C49F4 003C1954 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C49F8 003C1958 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C49FC 003C195C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C4A00 003C1960 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C4A04 003C1964 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4A08 003C1968 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C4A0C 003C196C 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C4A10 003C1970 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C4A14 003C1974 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C4A18 003C1978 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C4A1C 003C197C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C4A20 003C1980 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C4A24 003C1984 7C C6 03 78 */ or r6, r6, r0 +/* 803C4A28 003C1988 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C4A2C 003C198C 42 00 FD F0 */ bdnz lbl_803C481C +lbl_803C4A30: +/* 803C4A30 003C1990 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C4A34 003C1994 7F E9 FB 78 */ mr r9, r31 +/* 803C4A38 003C1998 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C4A3C 003C199C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C4A40 003C19A0 54 64 10 3A */ slwi r4, r3, 2 +/* 803C4A44 003C19A4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C4A48 003C19A8 54 06 10 3A */ slwi r6, r0, 2 +/* 803C4A4C 003C19AC E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C4A50 003C19B0 7C 87 23 78 */ mr r7, r4 +/* 803C4A54 003C19B4 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4A58 003C19B8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C4A5C 003C19BC 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4A60 003C19C0 7C C7 32 14 */ add r6, r7, r6 +/* 803C4A64 003C19C4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4A68 003C19C8 38 00 00 03 */ li r0, 3 +/* 803C4A6C 003C19CC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4A70 003C19D0 7C A8 3A 14 */ add r5, r8, r7 +/* 803C4A74 003C19D4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4A78 003C19D8 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4A7C 003C19DC 7C 88 32 14 */ add r4, r8, r6 +/* 803C4A80 003C19E0 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4A84 003C19E4 7C 09 03 A6 */ mtctr r0 +lbl_803C4A88: +/* 803C4A88 003C19E8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C4A8C 003C19EC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4A90 003C19F0 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C4A94 003C19F4 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4A98 003C19F8 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C4A9C 003C19FC E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C4AA0 003C1A00 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C4AA4 003C1A04 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C4AA8 003C1A08 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C4AAC 003C1A0C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4AB0 003C1A10 39 29 00 08 */ addi r9, r9, 8 +/* 803C4AB4 003C1A14 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C4AB8 003C1A18 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C4ABC 003C1A1C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C4AC0 003C1A20 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C4AC4 003C1A24 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C4AC8 003C1A28 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C4ACC 003C1A2C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C4AD0 003C1A30 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C4AD4 003C1A34 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C4AD8 003C1A38 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C4ADC 003C1A3C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C4AE0 003C1A40 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C4AE4 003C1A44 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C4AE8 003C1A48 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C4AEC 003C1A4C 38 E7 00 02 */ addi r7, r7, 2 +/* 803C4AF0 003C1A50 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C4AF4 003C1A54 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C4AF8 003C1A58 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C4AFC 003C1A5C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C4B00 003C1A60 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C4B04 003C1A64 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C4B08 003C1A68 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C4B0C 003C1A6C 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C4B10 003C1A70 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C4B14 003C1A74 38 C6 00 02 */ addi r6, r6, 2 +/* 803C4B18 003C1A78 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C4B1C 003C1A7C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C4B20 003C1A80 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C4B24 003C1A84 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C4B28 003C1A88 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4B2C 003C1A8C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C4B30 003C1A90 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4B34 003C1A94 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4B38 003C1A98 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C4B3C 003C1A9C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4B40 003C1AA0 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4B44 003C1AA4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C4B48 003C1AA8 7C A8 3A 14 */ add r5, r8, r7 +/* 803C4B4C 003C1AAC 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4B50 003C1AB0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C4B54 003C1AB4 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4B58 003C1AB8 7C 88 32 14 */ add r4, r8, r6 +/* 803C4B5C 003C1ABC 42 00 FF 2C */ bdnz lbl_803C4A88 +/* 803C4B60 003C1AC0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C4B64 003C1AC4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4B68 003C1AC8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C4B6C 003C1ACC 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4B70 003C1AD0 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C4B74 003C1AD4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C4B78 003C1AD8 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C4B7C 003C1ADC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C4B80 003C1AE0 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C4B84 003C1AE4 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4B88 003C1AE8 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C4B8C 003C1AEC 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C4B90 003C1AF0 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C4B94 003C1AF4 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C4B98 003C1AF8 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C4B9C 003C1AFC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C4BA0 003C1B00 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C4BA4 003C1B04 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C4BA8 003C1B08 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C4BAC 003C1B0C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C4BB0 003C1B10 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C4BB4 003C1B14 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C4BB8 003C1B18 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C4BBC 003C1B1C 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C4BC0 003C1B20 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C4BC4 003C1B24 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C4BC8 003C1B28 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C4BCC 003C1B2C 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C4BD0 003C1B30 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C4BD4 003C1B34 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C4BD8 003C1B38 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C4BDC 003C1B3C 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C4BE0 003C1B40 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C4BE4 003C1B44 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C4BE8 003C1B48 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C4BEC 003C1B4C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C4BF0 003C1B50 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C4BF4 003C1B54 81 1F 01 1C */ lwz r8, 0x11c(r31) +/* 803C4BF8 003C1B58 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C4BFC 003C1B5C 39 43 00 08 */ addi r10, r3, 8 +/* 803C4C00 003C1B60 39 3F FF F8 */ addi r9, r31, -8 +/* 803C4C04 003C1B64 38 80 00 08 */ li r4, 8 +/* 803C4C08 003C1B68 7C 89 03 A6 */ mtctr r4 +lbl_803C4C0C: +/* 803C4C0C 003C1B6C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C4C10 003C1B70 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4C14 003C1B74 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C4C18 003C1B78 80 08 00 08 */ lwz r0, 8(r8) +/* 803C4C1C 003C1B7C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4C20 003C1B80 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C4C24 003C1B84 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4C28 003C1B88 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C4C2C: +/* 803C4C2C 003C1B8C 2C 06 00 00 */ cmpwi r6, 0 +/* 803C4C30 003C1B90 40 82 01 48 */ bne lbl_803C4D78 +/* 803C4C34 003C1B94 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C4C38 003C1B98 2C 05 00 00 */ cmpwi r5, 0 +/* 803C4C3C 003C1B9C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C4C40 003C1BA0 40 82 00 9C */ bne lbl_803C4CDC +/* 803C4C44 003C1BA4 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C4C48 003C1BA8 2C 04 00 00 */ cmpwi r4, 0 +/* 803C4C4C 003C1BAC F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C4C50 003C1BB0 40 82 00 18 */ bne lbl_803C4C68 +/* 803C4C54 003C1BB4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4C58 003C1BB8 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C4C5C 003C1BBC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C4C60 003C1BC0 42 00 FF AC */ bdnz lbl_803C4C0C +/* 803C4C64 003C1BC4 48 00 01 DC */ b lbl_803C4E40 +lbl_803C4C68: +/* 803C4C68 003C1BC8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C4C6C 003C1BCC 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C4C70 003C1BD0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4C74 003C1BD4 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C4C78 003C1BD8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C4C7C 003C1BDC 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C4C80 003C1BE0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C4C84 003C1BE4 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4C88 003C1BE8 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C4C8C 003C1BEC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4C90 003C1BF0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C4C94 003C1BF4 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C4C98 003C1BF8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C4C9C 003C1BFC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C4CA0 003C1C00 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C4CA4 003C1C04 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C4CA8 003C1C08 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C4CAC 003C1C0C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C4CB0 003C1C10 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C4CB4 003C1C14 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C4CB8 003C1C18 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C4CBC 003C1C1C F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C4CC0 003C1C20 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C4CC4 003C1C24 7C C6 03 78 */ or r6, r6, r0 +/* 803C4CC8 003C1C28 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C4CCC 003C1C2C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4CD0 003C1C30 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C4CD4 003C1C34 42 00 FF 58 */ bdnz lbl_803C4C2C +/* 803C4CD8 003C1C38 48 00 01 68 */ b lbl_803C4E40 +lbl_803C4CDC: +/* 803C4CDC 003C1C3C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C4CE0 003C1C40 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C4CE4 003C1C44 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C4CE8 003C1C48 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C4CEC 003C1C4C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4CF0 003C1C50 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C4CF4 003C1C54 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C4CF8 003C1C58 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C4CFC 003C1C5C 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C4D00 003C1C60 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C4D04 003C1C64 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C4D08 003C1C68 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C4D0C 003C1C6C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C4D10 003C1C70 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C4D14 003C1C74 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C4D18 003C1C78 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C4D1C 003C1C7C 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C4D20 003C1C80 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C4D24 003C1C84 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4D28 003C1C88 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C4D2C 003C1C8C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C4D30 003C1C90 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C4D34 003C1C94 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C4D38 003C1C98 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C4D3C 003C1C9C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4D40 003C1CA0 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C4D44 003C1CA4 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C4D48 003C1CA8 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C4D4C 003C1CAC 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C4D50 003C1CB0 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C4D54 003C1CB4 7C C6 03 78 */ or r6, r6, r0 +/* 803C4D58 003C1CB8 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C4D5C 003C1CBC 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C4D60 003C1CC0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C4D64 003C1CC4 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C4D68 003C1CC8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4D6C 003C1CCC F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C4D70 003C1CD0 42 00 FE BC */ bdnz lbl_803C4C2C +/* 803C4D74 003C1CD4 48 00 00 CC */ b lbl_803C4E40 +lbl_803C4D78: +/* 803C4D78 003C1CD8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C4D7C 003C1CDC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C4D80 003C1CE0 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C4D84 003C1CE4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C4D88 003C1CE8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C4D8C 003C1CEC 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C4D90 003C1CF0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C4D94 003C1CF4 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C4D98 003C1CF8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C4D9C 003C1CFC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C4DA0 003C1D00 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C4DA4 003C1D04 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C4DA8 003C1D08 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C4DAC 003C1D0C 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C4DB0 003C1D10 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C4DB4 003C1D14 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C4DB8 003C1D18 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C4DBC 003C1D1C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C4DC0 003C1D20 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C4DC4 003C1D24 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C4DC8 003C1D28 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C4DCC 003C1D2C 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C4DD0 003C1D30 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C4DD4 003C1D34 80 08 00 08 */ lwz r0, 8(r8) +/* 803C4DD8 003C1D38 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C4DDC 003C1D3C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C4DE0 003C1D40 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C4DE4 003C1D44 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C4DE8 003C1D48 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C4DEC 003C1D4C 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C4DF0 003C1D50 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C4DF4 003C1D54 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C4DF8 003C1D58 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C4DFC 003C1D5C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C4E00 003C1D60 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C4E04 003C1D64 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C4E08 003C1D68 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C4E0C 003C1D6C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C4E10 003C1D70 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C4E14 003C1D74 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C4E18 003C1D78 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C4E1C 003C1D7C 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C4E20 003C1D80 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C4E24 003C1D84 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C4E28 003C1D88 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C4E2C 003C1D8C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C4E30 003C1D90 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C4E34 003C1D94 7C C6 03 78 */ or r6, r6, r0 +/* 803C4E38 003C1D98 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C4E3C 003C1D9C 42 00 FD F0 */ bdnz lbl_803C4C2C +lbl_803C4E40: +/* 803C4E40 003C1DA0 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C4E44 003C1DA4 7F E9 FB 78 */ mr r9, r31 +/* 803C4E48 003C1DA8 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C4E4C 003C1DAC E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C4E50 003C1DB0 55 4A 10 3A */ slwi r10, r10, 2 +/* 803C4E54 003C1DB4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C4E58 003C1DB8 54 06 10 3A */ slwi r6, r0, 2 +/* 803C4E5C 003C1DBC E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C4E60 003C1DC0 7D 47 53 78 */ mr r7, r10 +/* 803C4E64 003C1DC4 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4E68 003C1DC8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C4E6C 003C1DCC 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4E70 003C1DD0 7C C7 32 14 */ add r6, r7, r6 +/* 803C4E74 003C1DD4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4E78 003C1DD8 38 00 00 03 */ li r0, 3 +/* 803C4E7C 003C1DDC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4E80 003C1DE0 7C A8 3A 14 */ add r5, r8, r7 +/* 803C4E84 003C1DE4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4E88 003C1DE8 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4E8C 003C1DEC 7C 88 32 14 */ add r4, r8, r6 +/* 803C4E90 003C1DF0 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4E94 003C1DF4 7C 09 03 A6 */ mtctr r0 +lbl_803C4E98: +/* 803C4E98 003C1DF8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C4E9C 003C1DFC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4EA0 003C1E00 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C4EA4 003C1E04 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4EA8 003C1E08 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C4EAC 003C1E0C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C4EB0 003C1E10 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C4EB4 003C1E14 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C4EB8 003C1E18 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C4EBC 003C1E1C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4EC0 003C1E20 39 29 00 08 */ addi r9, r9, 8 +/* 803C4EC4 003C1E24 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C4EC8 003C1E28 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C4ECC 003C1E2C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C4ED0 003C1E30 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C4ED4 003C1E34 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C4ED8 003C1E38 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C4EDC 003C1E3C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C4EE0 003C1E40 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C4EE4 003C1E44 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C4EE8 003C1E48 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C4EEC 003C1E4C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C4EF0 003C1E50 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C4EF4 003C1E54 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C4EF8 003C1E58 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C4EFC 003C1E5C 38 E7 00 02 */ addi r7, r7, 2 +/* 803C4F00 003C1E60 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C4F04 003C1E64 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C4F08 003C1E68 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C4F0C 003C1E6C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C4F10 003C1E70 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C4F14 003C1E74 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C4F18 003C1E78 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C4F1C 003C1E7C 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C4F20 003C1E80 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C4F24 003C1E84 38 C6 00 02 */ addi r6, r6, 2 +/* 803C4F28 003C1E88 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C4F2C 003C1E8C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C4F30 003C1E90 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C4F34 003C1E94 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C4F38 003C1E98 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C4F3C 003C1E9C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C4F40 003C1EA0 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C4F44 003C1EA4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C4F48 003C1EA8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C4F4C 003C1EAC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C4F50 003C1EB0 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C4F54 003C1EB4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C4F58 003C1EB8 7C A8 3A 14 */ add r5, r8, r7 +/* 803C4F5C 003C1EBC 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C4F60 003C1EC0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C4F64 003C1EC4 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C4F68 003C1EC8 7C 88 32 14 */ add r4, r8, r6 +/* 803C4F6C 003C1ECC 42 00 FF 2C */ bdnz lbl_803C4E98 +/* 803C4F70 003C1ED0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C4F74 003C1ED4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C4F78 003C1ED8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C4F7C 003C1EDC 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C4F80 003C1EE0 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C4F84 003C1EE4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C4F88 003C1EE8 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C4F8C 003C1EEC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C4F90 003C1EF0 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C4F94 003C1EF4 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C4F98 003C1EF8 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C4F9C 003C1EFC 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C4FA0 003C1F00 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C4FA4 003C1F04 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C4FA8 003C1F08 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C4FAC 003C1F0C 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C4FB0 003C1F10 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C4FB4 003C1F14 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C4FB8 003C1F18 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C4FBC 003C1F1C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C4FC0 003C1F20 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C4FC4 003C1F24 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C4FC8 003C1F28 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C4FCC 003C1F2C 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C4FD0 003C1F30 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C4FD4 003C1F34 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C4FD8 003C1F38 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C4FDC 003C1F3C 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C4FE0 003C1F40 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C4FE4 003C1F44 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C4FE8 003C1F48 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C4FEC 003C1F4C 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C4FF0 003C1F50 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C4FF4 003C1F54 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C4FF8 003C1F58 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C4FFC 003C1F5C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5000 003C1F60 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5004 003C1F64 81 1F 01 20 */ lwz r8, 0x120(r31) +/* 803C5008 003C1F68 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C500C 003C1F6C 39 3F FF F8 */ addi r9, r31, -8 +/* 803C5010 003C1F70 38 80 00 08 */ li r4, 8 +/* 803C5014 003C1F74 7C 89 03 A6 */ mtctr r4 +lbl_803C5018: +/* 803C5018 003C1F78 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C501C 003C1F7C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5020 003C1F80 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5024 003C1F84 80 08 00 08 */ lwz r0, 8(r8) +/* 803C5028 003C1F88 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C502C 003C1F8C 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C5030 003C1F90 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5034 003C1F94 7C C6 03 78 */ or r6, r6, r0 +lbl_803C5038: +/* 803C5038 003C1F98 2C 06 00 00 */ cmpwi r6, 0 +/* 803C503C 003C1F9C 40 82 01 48 */ bne lbl_803C5184 +/* 803C5040 003C1FA0 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C5044 003C1FA4 2C 05 00 00 */ cmpwi r5, 0 +/* 803C5048 003C1FA8 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C504C 003C1FAC 40 82 00 9C */ bne lbl_803C50E8 +/* 803C5050 003C1FB0 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C5054 003C1FB4 2C 04 00 00 */ cmpwi r4, 0 +/* 803C5058 003C1FB8 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C505C 003C1FBC 40 82 00 18 */ bne lbl_803C5074 +/* 803C5060 003C1FC0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5064 003C1FC4 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C5068 003C1FC8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C506C 003C1FCC 42 00 FF AC */ bdnz lbl_803C5018 +/* 803C5070 003C1FD0 48 00 01 DC */ b lbl_803C524C +lbl_803C5074: +/* 803C5074 003C1FD4 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C5078 003C1FD8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C507C 003C1FDC 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C5080 003C1FE0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5084 003C1FE4 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C5088 003C1FE8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C508C 003C1FEC 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C5090 003C1FF0 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5094 003C1FF4 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C5098 003C1FF8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C509C 003C1FFC 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C50A0 003C2000 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C50A4 003C2004 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C50A8 003C2008 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C50AC 003C200C 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C50B0 003C2010 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C50B4 003C2014 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C50B8 003C2018 80 08 00 08 */ lwz r0, 8(r8) +/* 803C50BC 003C201C 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C50C0 003C2020 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C50C4 003C2024 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C50C8 003C2028 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C50CC 003C202C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C50D0 003C2030 7C C6 03 78 */ or r6, r6, r0 +/* 803C50D4 003C2034 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C50D8 003C2038 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C50DC 003C203C F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C50E0 003C2040 42 00 FF 58 */ bdnz lbl_803C5038 +/* 803C50E4 003C2044 48 00 01 68 */ b lbl_803C524C +lbl_803C50E8: +/* 803C50E8 003C2048 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C50EC 003C204C E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C50F0 003C2050 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C50F4 003C2054 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C50F8 003C2058 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C50FC 003C205C 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C5100 003C2060 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C5104 003C2064 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5108 003C2068 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C510C 003C206C 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C5110 003C2070 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C5114 003C2074 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C5118 003C2078 80 08 00 08 */ lwz r0, 8(r8) +/* 803C511C 003C207C 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C5120 003C2080 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C5124 003C2084 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C5128 003C2088 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C512C 003C208C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C5130 003C2090 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5134 003C2094 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C5138 003C2098 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C513C 003C209C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C5140 003C20A0 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C5144 003C20A4 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C5148 003C20A8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C514C 003C20AC 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C5150 003C20B0 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C5154 003C20B4 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C5158 003C20B8 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C515C 003C20BC 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C5160 003C20C0 7C C6 03 78 */ or r6, r6, r0 +/* 803C5164 003C20C4 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C5168 003C20C8 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C516C 003C20CC 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C5170 003C20D0 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C5174 003C20D4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5178 003C20D8 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C517C 003C20DC 42 00 FE BC */ bdnz lbl_803C5038 +/* 803C5180 003C20E0 48 00 00 CC */ b lbl_803C524C +lbl_803C5184: +/* 803C5184 003C20E4 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C5188 003C20E8 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C518C 003C20EC 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C5190 003C20F0 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C5194 003C20F4 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C5198 003C20F8 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C519C 003C20FC E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C51A0 003C2100 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C51A4 003C2104 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C51A8 003C2108 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C51AC 003C210C 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C51B0 003C2110 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C51B4 003C2114 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C51B8 003C2118 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C51BC 003C211C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C51C0 003C2120 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C51C4 003C2124 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C51C8 003C2128 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C51CC 003C212C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C51D0 003C2130 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C51D4 003C2134 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C51D8 003C2138 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C51DC 003C213C 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C51E0 003C2140 80 08 00 08 */ lwz r0, 8(r8) +/* 803C51E4 003C2144 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C51E8 003C2148 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C51EC 003C214C 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C51F0 003C2150 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C51F4 003C2154 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C51F8 003C2158 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C51FC 003C215C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5200 003C2160 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C5204 003C2164 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C5208 003C2168 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C520C 003C216C 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C5210 003C2170 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C5214 003C2174 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5218 003C2178 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C521C 003C217C 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C5220 003C2180 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5224 003C2184 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C5228 003C2188 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C522C 003C218C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C5230 003C2190 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C5234 003C2194 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C5238 003C2198 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C523C 003C219C F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C5240 003C21A0 7C C6 03 78 */ or r6, r6, r0 +/* 803C5244 003C21A4 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C5248 003C21A8 42 00 FD F0 */ bdnz lbl_803C5038 +lbl_803C524C: +/* 803C524C 003C21AC 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C5250 003C21B0 7F E9 FB 78 */ mr r9, r31 +/* 803C5254 003C21B4 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C5258 003C21B8 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C525C 003C21BC 54 07 18 38 */ slwi r7, r0, 3 +/* 803C5260 003C21C0 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C5264 003C21C4 54 64 10 3A */ slwi r4, r3, 2 +/* 803C5268 003C21C8 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C526C 003C21CC 54 06 10 3A */ slwi r6, r0, 2 +/* 803C5270 003C21D0 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5274 003C21D4 7C E7 22 14 */ add r7, r7, r4 +/* 803C5278 003C21D8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C527C 003C21DC 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5280 003C21E0 7C C7 32 14 */ add r6, r7, r6 +/* 803C5284 003C21E4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C5288 003C21E8 38 00 00 03 */ li r0, 3 +/* 803C528C 003C21EC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5290 003C21F0 7C A8 3A 14 */ add r5, r8, r7 +/* 803C5294 003C21F4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5298 003C21F8 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C529C 003C21FC 7C 88 32 14 */ add r4, r8, r6 +/* 803C52A0 003C2200 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C52A4 003C2204 7C 09 03 A6 */ mtctr r0 +lbl_803C52A8: +/* 803C52A8 003C2208 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C52AC 003C220C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C52B0 003C2210 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C52B4 003C2214 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C52B8 003C2218 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C52BC 003C221C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C52C0 003C2220 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C52C4 003C2224 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C52C8 003C2228 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C52CC 003C222C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C52D0 003C2230 39 29 00 08 */ addi r9, r9, 8 +/* 803C52D4 003C2234 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C52D8 003C2238 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C52DC 003C223C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C52E0 003C2240 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C52E4 003C2244 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C52E8 003C2248 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C52EC 003C224C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C52F0 003C2250 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C52F4 003C2254 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C52F8 003C2258 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C52FC 003C225C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C5300 003C2260 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C5304 003C2264 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C5308 003C2268 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C530C 003C226C 38 E7 00 02 */ addi r7, r7, 2 +/* 803C5310 003C2270 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C5314 003C2274 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C5318 003C2278 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C531C 003C227C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C5320 003C2280 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C5324 003C2284 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C5328 003C2288 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C532C 003C228C 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C5330 003C2290 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C5334 003C2294 38 C6 00 02 */ addi r6, r6, 2 +/* 803C5338 003C2298 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C533C 003C229C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5340 003C22A0 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C5344 003C22A4 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C5348 003C22A8 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C534C 003C22AC F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5350 003C22B0 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5354 003C22B4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C5358 003C22B8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C535C 003C22BC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5360 003C22C0 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5364 003C22C4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C5368 003C22C8 7C A8 3A 14 */ add r5, r8, r7 +/* 803C536C 003C22CC 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C5370 003C22D0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C5374 003C22D4 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C5378 003C22D8 7C 88 32 14 */ add r4, r8, r6 +/* 803C537C 003C22DC 42 00 FF 2C */ bdnz lbl_803C52A8 +/* 803C5380 003C22E0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C5384 003C22E4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C5388 003C22E8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C538C 003C22EC 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C5390 003C22F0 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C5394 003C22F4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C5398 003C22F8 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C539C 003C22FC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C53A0 003C2300 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C53A4 003C2304 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C53A8 003C2308 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C53AC 003C230C 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C53B0 003C2310 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C53B4 003C2314 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C53B8 003C2318 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C53BC 003C231C 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C53C0 003C2320 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C53C4 003C2324 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C53C8 003C2328 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C53CC 003C232C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C53D0 003C2330 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C53D4 003C2334 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C53D8 003C2338 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C53DC 003C233C 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C53E0 003C2340 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C53E4 003C2344 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C53E8 003C2348 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C53EC 003C234C 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C53F0 003C2350 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C53F4 003C2354 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C53F8 003C2358 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C53FC 003C235C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C5400 003C2360 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5404 003C2364 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C5408 003C2368 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C540C 003C236C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5410 003C2370 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5414 003C2374 81 1F 01 24 */ lwz r8, 0x124(r31) +/* 803C5418 003C2378 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C541C 003C237C 39 23 00 08 */ addi r9, r3, 8 +/* 803C5420 003C2380 39 5F FF F8 */ addi r10, r31, -8 +/* 803C5424 003C2384 38 80 00 08 */ li r4, 8 +/* 803C5428 003C2388 7C 89 03 A6 */ mtctr r4 +lbl_803C542C: +/* 803C542C 003C238C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C5430 003C2390 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5434 003C2394 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5438 003C2398 80 08 00 08 */ lwz r0, 8(r8) +/* 803C543C 003C239C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5440 003C23A0 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C5444 003C23A4 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5448 003C23A8 7C C6 03 78 */ or r6, r6, r0 +lbl_803C544C: +/* 803C544C 003C23AC 2C 06 00 00 */ cmpwi r6, 0 +/* 803C5450 003C23B0 40 82 01 48 */ bne lbl_803C5598 +/* 803C5454 003C23B4 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C5458 003C23B8 2C 05 00 00 */ cmpwi r5, 0 +/* 803C545C 003C23BC F0 8A 00 08 */ psq_st f4, 8(r10), 0, qr0 +/* 803C5460 003C23C0 40 82 00 9C */ bne lbl_803C54FC +/* 803C5464 003C23C4 F0 8A 00 10 */ psq_st f4, 16(r10), 0, qr0 +/* 803C5468 003C23C8 2C 04 00 00 */ cmpwi r4, 0 +/* 803C546C 003C23CC F0 8A 00 18 */ psq_st f4, 24(r10), 0, qr0 +/* 803C5470 003C23D0 40 82 00 18 */ bne lbl_803C5488 +/* 803C5474 003C23D4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5478 003C23D8 F4 8A 00 20 */ psq_stu f4, 32(r10), 0, qr0 +/* 803C547C 003C23DC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C5480 003C23E0 42 00 FF AC */ bdnz lbl_803C542C +/* 803C5484 003C23E4 48 00 01 DC */ b lbl_803C5660 +lbl_803C5488: +/* 803C5488 003C23E8 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C548C 003C23EC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C5490 003C23F0 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C5494 003C23F4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5498 003C23F8 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C549C 003C23FC 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C54A0 003C2400 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C54A4 003C2404 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C54A8 003C2408 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C54AC 003C240C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C54B0 003C2410 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C54B4 003C2414 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C54B8 003C2418 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C54BC 003C241C 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C54C0 003C2420 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C54C4 003C2424 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C54C8 003C2428 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C54CC 003C242C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C54D0 003C2430 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C54D4 003C2434 F5 0A 00 08 */ psq_stu f8, 8(r10), 0, qr0 +/* 803C54D8 003C2438 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C54DC 003C243C F4 6A 00 08 */ psq_stu f3, 8(r10), 0, qr0 +/* 803C54E0 003C2440 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C54E4 003C2444 7C C6 03 78 */ or r6, r6, r0 +/* 803C54E8 003C2448 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 +/* 803C54EC 003C244C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C54F0 003C2450 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 +/* 803C54F4 003C2454 42 00 FF 58 */ bdnz lbl_803C544C +/* 803C54F8 003C2458 48 00 01 68 */ b lbl_803C5660 +lbl_803C54FC: +/* 803C54FC 003C245C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C5500 003C2460 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C5504 003C2464 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C5508 003C2468 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C550C 003C246C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5510 003C2470 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C5514 003C2474 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C5518 003C2478 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C551C 003C247C 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C5520 003C2480 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C5524 003C2484 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C5528 003C2488 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C552C 003C248C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C5530 003C2490 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C5534 003C2494 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C5538 003C2498 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C553C 003C249C 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C5540 003C24A0 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C5544 003C24A4 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5548 003C24A8 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C554C 003C24AC 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C5550 003C24B0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C5554 003C24B4 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C5558 003C24B8 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C555C 003C24BC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5560 003C24C0 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C5564 003C24C4 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C5568 003C24C8 F4 4A 00 08 */ psq_stu f2, 8(r10), 0, qr0 +/* 803C556C 003C24CC 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C5570 003C24D0 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C5574 003C24D4 7C C6 03 78 */ or r6, r6, r0 +/* 803C5578 003C24D8 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 +/* 803C557C 003C24DC 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C5580 003C24E0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C5584 003C24E4 F4 2A 00 08 */ psq_stu f1, 8(r10), 0, qr0 +/* 803C5588 003C24E8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C558C 003C24EC F5 6A 00 08 */ psq_stu f11, 8(r10), 0, qr0 +/* 803C5590 003C24F0 42 00 FE BC */ bdnz lbl_803C544C +/* 803C5594 003C24F4 48 00 00 CC */ b lbl_803C5660 +lbl_803C5598: +/* 803C5598 003C24F8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C559C 003C24FC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C55A0 003C2500 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C55A4 003C2504 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C55A8 003C2508 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C55AC 003C250C 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C55B0 003C2510 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C55B4 003C2514 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C55B8 003C2518 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C55BC 003C251C 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C55C0 003C2520 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C55C4 003C2524 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C55C8 003C2528 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C55CC 003C252C 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C55D0 003C2530 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C55D4 003C2534 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C55D8 003C2538 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C55DC 003C253C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C55E0 003C2540 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C55E4 003C2544 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C55E8 003C2548 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C55EC 003C254C 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C55F0 003C2550 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C55F4 003C2554 80 08 00 08 */ lwz r0, 8(r8) +/* 803C55F8 003C2558 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C55FC 003C255C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C5600 003C2560 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C5604 003C2564 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C5608 003C2568 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C560C 003C256C 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C5610 003C2570 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5614 003C2574 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C5618 003C2578 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C561C 003C257C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C5620 003C2580 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C5624 003C2584 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C5628 003C2588 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C562C 003C258C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C5630 003C2590 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C5634 003C2594 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5638 003C2598 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C563C 003C259C 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C5640 003C25A0 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C5644 003C25A4 F5 8A 00 08 */ psq_stu f12, 8(r10), 0, qr0 +/* 803C5648 003C25A8 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C564C 003C25AC F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 +/* 803C5650 003C25B0 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 +/* 803C5654 003C25B4 7C C6 03 78 */ or r6, r6, r0 +/* 803C5658 003C25B8 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 +/* 803C565C 003C25BC 42 00 FD F0 */ bdnz lbl_803C544C +lbl_803C5660: +/* 803C5660 003C25C0 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C5664 003C25C4 7F EA FB 78 */ mr r10, r31 +/* 803C5668 003C25C8 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C566C 003C25CC E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 +/* 803C5670 003C25D0 54 07 18 38 */ slwi r7, r0, 3 +/* 803C5674 003C25D4 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 +/* 803C5678 003C25D8 55 29 10 3A */ slwi r9, r9, 2 +/* 803C567C 003C25DC E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 +/* 803C5680 003C25E0 54 06 10 3A */ slwi r6, r0, 2 +/* 803C5684 003C25E4 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5688 003C25E8 7C E7 4A 14 */ add r7, r7, r9 +/* 803C568C 003C25EC E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 +/* 803C5690 003C25F0 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5694 003C25F4 7C C7 32 14 */ add r6, r7, r6 +/* 803C5698 003C25F8 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C569C 003C25FC 38 00 00 03 */ li r0, 3 +/* 803C56A0 003C2600 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C56A4 003C2604 7C A8 3A 14 */ add r5, r8, r7 +/* 803C56A8 003C2608 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C56AC 003C260C 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C56B0 003C2610 7C 88 32 14 */ add r4, r8, r6 +/* 803C56B4 003C2614 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C56B8 003C2618 7C 09 03 A6 */ mtctr r0 +lbl_803C56BC: +/* 803C56BC 003C261C E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 +/* 803C56C0 003C2620 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C56C4 003C2624 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 +/* 803C56C8 003C2628 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C56CC 003C262C 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C56D0 003C2630 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 +/* 803C56D4 003C2634 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C56D8 003C2638 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 +/* 803C56DC 003C263C 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C56E0 003C2640 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C56E4 003C2644 39 4A 00 08 */ addi r10, r10, 8 +/* 803C56E8 003C2648 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C56EC 003C264C 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C56F0 003C2650 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 +/* 803C56F4 003C2654 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C56F8 003C2658 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C56FC 003C265C 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C5700 003C2660 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 +/* 803C5704 003C2664 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C5708 003C2668 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C570C 003C266C E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 +/* 803C5710 003C2670 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C5714 003C2674 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C5718 003C2678 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 +/* 803C571C 003C267C 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C5720 003C2680 38 E7 00 02 */ addi r7, r7, 2 +/* 803C5724 003C2684 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C5728 003C2688 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C572C 003C268C 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C5730 003C2690 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C5734 003C2694 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C5738 003C2698 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C573C 003C269C 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C5740 003C26A0 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C5744 003C26A4 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C5748 003C26A8 38 C6 00 02 */ addi r6, r6, 2 +/* 803C574C 003C26AC 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C5750 003C26B0 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5754 003C26B4 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C5758 003C26B8 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C575C 003C26BC 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5760 003C26C0 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5764 003C26C4 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5768 003C26C8 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C576C 003C26CC F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5770 003C26D0 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5774 003C26D4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5778 003C26D8 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C577C 003C26DC 7C A8 3A 14 */ add r5, r8, r7 +/* 803C5780 003C26E0 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C5784 003C26E4 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C5788 003C26E8 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C578C 003C26EC 7C 88 32 14 */ add r4, r8, r6 +/* 803C5790 003C26F0 42 00 FF 2C */ bdnz lbl_803C56BC +/* 803C5794 003C26F4 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 +/* 803C5798 003C26F8 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C579C 003C26FC E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 +/* 803C57A0 003C2700 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C57A4 003C2704 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C57A8 003C2708 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 +/* 803C57AC 003C270C 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C57B0 003C2710 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 +/* 803C57B4 003C2714 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C57B8 003C2718 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C57BC 003C271C 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C57C0 003C2720 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C57C4 003C2724 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C57C8 003C2728 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C57CC 003C272C 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C57D0 003C2730 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C57D4 003C2734 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C57D8 003C2738 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C57DC 003C273C 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C57E0 003C2740 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C57E4 003C2744 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C57E8 003C2748 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C57EC 003C274C F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C57F0 003C2750 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C57F4 003C2754 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C57F8 003C2758 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C57FC 003C275C F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C5800 003C2760 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C5804 003C2764 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C5808 003C2768 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C580C 003C276C 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C5810 003C2770 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C5814 003C2774 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5818 003C2778 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C581C 003C277C 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C5820 003C2780 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5824 003C2784 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5828 003C2788 80 9F 01 10 */ lwz r4, 0x110(r31) +/* 803C582C 003C278C 38 00 01 40 */ li r0, 0x140 +/* 803C5830 003C2790 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C5834 003C2794 90 8D B1 00 */ stw r4, lbl_805A9CC0@sda21(r13) +/* 803C5838 003C2798 54 63 F8 7E */ srwi r3, r3, 1 +/* 803C583C 003C279C 39 3F FF F8 */ addi r9, r31, -8 +/* 803C5840 003C27A0 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) +/* 803C5844 003C27A4 88 05 06 86 */ lbz r0, 0x686(r5) +/* 803C5848 003C27A8 54 00 40 2E */ slwi r0, r0, 8 +/* 803C584C 003C27AC 7C 05 02 14 */ add r0, r5, r0 +/* 803C5850 003C27B0 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C5854 003C27B4 81 1F 01 28 */ lwz r8, 0x128(r31) +/* 803C5858 003C27B8 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C585C 003C27BC 38 80 00 08 */ li r4, 8 +/* 803C5860 003C27C0 7C 89 03 A6 */ mtctr r4 +lbl_803C5864: +/* 803C5864 003C27C4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C5868 003C27C8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C586C 003C27CC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5870 003C27D0 80 08 00 08 */ lwz r0, 8(r8) +/* 803C5874 003C27D4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5878 003C27D8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C587C 003C27DC A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5880 003C27E0 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C5884: +/* 803C5884 003C27E4 2C 06 00 00 */ cmpwi r6, 0 +/* 803C5888 003C27E8 40 82 01 48 */ bne lbl_803C59D0 +/* 803C588C 003C27EC 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C5890 003C27F0 2C 05 00 00 */ cmpwi r5, 0 +/* 803C5894 003C27F4 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C5898 003C27F8 40 82 00 9C */ bne lbl_803C5934 +/* 803C589C 003C27FC F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C58A0 003C2800 2C 04 00 00 */ cmpwi r4, 0 +/* 803C58A4 003C2804 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C58A8 003C2808 40 82 00 18 */ bne lbl_803C58C0 +/* 803C58AC 003C280C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C58B0 003C2810 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C58B4 003C2814 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C58B8 003C2818 42 00 FF AC */ bdnz lbl_803C5864 +/* 803C58BC 003C281C 48 00 01 DC */ b lbl_803C5A98 +lbl_803C58C0: +/* 803C58C0 003C2820 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C58C4 003C2824 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C58C8 003C2828 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C58CC 003C282C 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C58D0 003C2830 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C58D4 003C2834 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C58D8 003C2838 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C58DC 003C283C A0 88 00 02 */ lhz r4, 2(r8) +/* 803C58E0 003C2840 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C58E4 003C2844 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C58E8 003C2848 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C58EC 003C284C 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C58F0 003C2850 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C58F4 003C2854 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C58F8 003C2858 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C58FC 003C285C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5900 003C2860 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C5904 003C2864 80 08 00 08 */ lwz r0, 8(r8) +/* 803C5908 003C2868 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C590C 003C286C F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C5910 003C2870 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C5914 003C2874 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C5918 003C2878 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C591C 003C287C 7C C6 03 78 */ or r6, r6, r0 +/* 803C5920 003C2880 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C5924 003C2884 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5928 003C2888 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C592C 003C288C 42 00 FF 58 */ bdnz lbl_803C5884 +/* 803C5930 003C2890 48 00 01 68 */ b lbl_803C5A98 +lbl_803C5934: +/* 803C5934 003C2894 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C5938 003C2898 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C593C 003C289C 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C5940 003C28A0 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C5944 003C28A4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5948 003C28A8 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C594C 003C28AC 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C5950 003C28B0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5954 003C28B4 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C5958 003C28B8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C595C 003C28BC 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C5960 003C28C0 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C5964 003C28C4 80 08 00 08 */ lwz r0, 8(r8) +/* 803C5968 003C28C8 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C596C 003C28CC 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C5970 003C28D0 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C5974 003C28D4 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C5978 003C28D8 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C597C 003C28DC A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5980 003C28E0 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C5984 003C28E4 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C5988 003C28E8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C598C 003C28EC 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C5990 003C28F0 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C5994 003C28F4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5998 003C28F8 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C599C 003C28FC 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C59A0 003C2900 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C59A4 003C2904 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C59A8 003C2908 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C59AC 003C290C 7C C6 03 78 */ or r6, r6, r0 +/* 803C59B0 003C2910 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C59B4 003C2914 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C59B8 003C2918 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C59BC 003C291C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C59C0 003C2920 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C59C4 003C2924 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C59C8 003C2928 42 00 FE BC */ bdnz lbl_803C5884 +/* 803C59CC 003C292C 48 00 00 CC */ b lbl_803C5A98 +lbl_803C59D0: +/* 803C59D0 003C2930 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C59D4 003C2934 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C59D8 003C2938 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C59DC 003C293C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C59E0 003C2940 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C59E4 003C2944 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C59E8 003C2948 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C59EC 003C294C 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C59F0 003C2950 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C59F4 003C2954 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C59F8 003C2958 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C59FC 003C295C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C5A00 003C2960 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C5A04 003C2964 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C5A08 003C2968 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5A0C 003C296C 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C5A10 003C2970 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C5A14 003C2974 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C5A18 003C2978 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C5A1C 003C297C 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C5A20 003C2980 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C5A24 003C2984 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C5A28 003C2988 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C5A2C 003C298C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C5A30 003C2990 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C5A34 003C2994 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C5A38 003C2998 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C5A3C 003C299C 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C5A40 003C29A0 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C5A44 003C29A4 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C5A48 003C29A8 A0 88 00 02 */ lhz r4, 2(r8) +/* 803C5A4C 003C29AC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C5A50 003C29B0 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C5A54 003C29B4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C5A58 003C29B8 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C5A5C 003C29BC 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C5A60 003C29C0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5A64 003C29C4 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C5A68 003C29C8 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C5A6C 003C29CC 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5A70 003C29D0 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C5A74 003C29D4 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C5A78 003C29D8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C5A7C 003C29DC F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C5A80 003C29E0 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C5A84 003C29E4 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C5A88 003C29E8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C5A8C 003C29EC 7C C6 03 78 */ or r6, r6, r0 +/* 803C5A90 003C29F0 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C5A94 003C29F4 42 00 FD F0 */ bdnz lbl_803C5884 +lbl_803C5A98: +/* 803C5A98 003C29F8 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C5A9C 003C29FC 7F E9 FB 78 */ mr r9, r31 +/* 803C5AA0 003C2A00 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C5AA4 003C2A04 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C5AA8 003C2A08 54 64 10 3A */ slwi r4, r3, 2 +/* 803C5AAC 003C2A0C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C5AB0 003C2A10 54 06 10 3A */ slwi r6, r0, 2 +/* 803C5AB4 003C2A14 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C5AB8 003C2A18 7C 87 23 78 */ mr r7, r4 +/* 803C5ABC 003C2A1C 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5AC0 003C2A20 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C5AC4 003C2A24 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5AC8 003C2A28 7C C7 32 14 */ add r6, r7, r6 +/* 803C5ACC 003C2A2C 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C5AD0 003C2A30 38 00 00 03 */ li r0, 3 +/* 803C5AD4 003C2A34 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5AD8 003C2A38 7C A8 3A 14 */ add r5, r8, r7 +/* 803C5ADC 003C2A3C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5AE0 003C2A40 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C5AE4 003C2A44 7C 88 32 14 */ add r4, r8, r6 +/* 803C5AE8 003C2A48 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C5AEC 003C2A4C 7C 09 03 A6 */ mtctr r0 +lbl_803C5AF0: +/* 803C5AF0 003C2A50 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C5AF4 003C2A54 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C5AF8 003C2A58 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C5AFC 003C2A5C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C5B00 003C2A60 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C5B04 003C2A64 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C5B08 003C2A68 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C5B0C 003C2A6C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C5B10 003C2A70 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C5B14 003C2A74 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C5B18 003C2A78 39 29 00 08 */ addi r9, r9, 8 +/* 803C5B1C 003C2A7C 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C5B20 003C2A80 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C5B24 003C2A84 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C5B28 003C2A88 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C5B2C 003C2A8C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C5B30 003C2A90 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C5B34 003C2A94 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C5B38 003C2A98 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C5B3C 003C2A9C 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C5B40 003C2AA0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C5B44 003C2AA4 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C5B48 003C2AA8 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C5B4C 003C2AAC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C5B50 003C2AB0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C5B54 003C2AB4 38 E7 00 02 */ addi r7, r7, 2 +/* 803C5B58 003C2AB8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C5B5C 003C2ABC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C5B60 003C2AC0 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C5B64 003C2AC4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C5B68 003C2AC8 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C5B6C 003C2ACC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C5B70 003C2AD0 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C5B74 003C2AD4 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C5B78 003C2AD8 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C5B7C 003C2ADC 38 C6 00 02 */ addi r6, r6, 2 +/* 803C5B80 003C2AE0 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C5B84 003C2AE4 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5B88 003C2AE8 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C5B8C 003C2AEC 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C5B90 003C2AF0 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5B94 003C2AF4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5B98 003C2AF8 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5B9C 003C2AFC 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C5BA0 003C2B00 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5BA4 003C2B04 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5BA8 003C2B08 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5BAC 003C2B0C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C5BB0 003C2B10 7C A8 3A 14 */ add r5, r8, r7 +/* 803C5BB4 003C2B14 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C5BB8 003C2B18 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C5BBC 003C2B1C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C5BC0 003C2B20 7C 88 32 14 */ add r4, r8, r6 +/* 803C5BC4 003C2B24 42 00 FF 2C */ bdnz lbl_803C5AF0 +/* 803C5BC8 003C2B28 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C5BCC 003C2B2C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C5BD0 003C2B30 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C5BD4 003C2B34 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C5BD8 003C2B38 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C5BDC 003C2B3C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C5BE0 003C2B40 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C5BE4 003C2B44 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C5BE8 003C2B48 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C5BEC 003C2B4C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C5BF0 003C2B50 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C5BF4 003C2B54 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C5BF8 003C2B58 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C5BFC 003C2B5C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C5C00 003C2B60 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C5C04 003C2B64 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C5C08 003C2B68 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C5C0C 003C2B6C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C5C10 003C2B70 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C5C14 003C2B74 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C5C18 003C2B78 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C5C1C 003C2B7C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C5C20 003C2B80 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 +/* 803C5C24 003C2B84 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C5C28 003C2B88 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C5C2C 003C2B8C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C5C30 003C2B90 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C5C34 003C2B94 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C5C38 003C2B98 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C5C3C 003C2B9C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 +/* 803C5C40 003C2BA0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C5C44 003C2BA4 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C5C48 003C2BA8 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5C4C 003C2BAC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C5C50 003C2BB0 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C5C54 003C2BB4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 +/* 803C5C58 003C2BB8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5C5C 003C2BBC 80 1F 01 14 */ lwz r0, 0x114(r31) +/* 803C5C60 003C2BC0 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C5C64 003C2BC4 39 1F FF F8 */ addi r8, r31, -8 +/* 803C5C68 003C2BC8 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) +/* 803C5C6C 003C2BCC 88 04 06 8C */ lbz r0, 0x68c(r4) +/* 803C5C70 003C2BD0 54 00 40 2E */ slwi r0, r0, 8 +/* 803C5C74 003C2BD4 7C 04 02 14 */ add r0, r4, r0 +/* 803C5C78 003C2BD8 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C5C7C 003C2BDC 81 3F 01 2C */ lwz r9, 0x12c(r31) +/* 803C5C80 003C2BE0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C5C84 003C2BE4 38 80 00 08 */ li r4, 8 +/* 803C5C88 003C2BE8 7C 89 03 A6 */ mtctr r4 +lbl_803C5C8C: +/* 803C5C8C 003C2BEC E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C5C90 003C2BF0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5C94 003C2BF4 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C5C98 003C2BF8 80 09 00 08 */ lwz r0, 8(r9) +/* 803C5C9C 003C2BFC 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5CA0 003C2C00 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C5CA4 003C2C04 A0 89 00 02 */ lhz r4, 2(r9) +/* 803C5CA8 003C2C08 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C5CAC: +/* 803C5CAC 003C2C0C 2C 06 00 00 */ cmpwi r6, 0 +/* 803C5CB0 003C2C10 40 82 01 48 */ bne lbl_803C5DF8 +/* 803C5CB4 003C2C14 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C5CB8 003C2C18 2C 05 00 00 */ cmpwi r5, 0 +/* 803C5CBC 003C2C1C F0 88 00 08 */ psq_st f4, 8(r8), 0, qr0 +/* 803C5CC0 003C2C20 40 82 00 9C */ bne lbl_803C5D5C +/* 803C5CC4 003C2C24 F0 88 00 10 */ psq_st f4, 16(r8), 0, qr0 +/* 803C5CC8 003C2C28 2C 04 00 00 */ cmpwi r4, 0 +/* 803C5CCC 003C2C2C F0 88 00 18 */ psq_st f4, 24(r8), 0, qr0 +/* 803C5CD0 003C2C30 40 82 00 18 */ bne lbl_803C5CE8 +/* 803C5CD4 003C2C34 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5CD8 003C2C38 F4 88 00 20 */ psq_stu f4, 32(r8), 0, qr0 +/* 803C5CDC 003C2C3C 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C5CE0 003C2C40 42 00 FF AC */ bdnz lbl_803C5C8C +/* 803C5CE4 003C2C44 48 00 01 DC */ b lbl_803C5EC0 +lbl_803C5CE8: +/* 803C5CE8 003C2C48 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C5CEC 003C2C4C 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C5CF0 003C2C50 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5CF4 003C2C54 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C5CF8 003C2C58 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C5CFC 003C2C5C 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C5D00 003C2C60 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C5D04 003C2C64 A0 89 00 02 */ lhz r4, 2(r9) +/* 803C5D08 003C2C68 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C5D0C 003C2C6C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5D10 003C2C70 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C5D14 003C2C74 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C5D18 003C2C78 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C5D1C 003C2C7C 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C5D20 003C2C80 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C5D24 003C2C84 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C5D28 003C2C88 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C5D2C 003C2C8C 80 09 00 08 */ lwz r0, 8(r9) +/* 803C5D30 003C2C90 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C5D34 003C2C94 F5 08 00 08 */ psq_stu f8, 8(r8), 0, qr0 +/* 803C5D38 003C2C98 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C5D3C 003C2C9C F4 68 00 08 */ psq_stu f3, 8(r8), 0, qr0 +/* 803C5D40 003C2CA0 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C5D44 003C2CA4 7C C6 03 78 */ or r6, r6, r0 +/* 803C5D48 003C2CA8 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 +/* 803C5D4C 003C2CAC 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5D50 003C2CB0 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 +/* 803C5D54 003C2CB4 42 00 FF 58 */ bdnz lbl_803C5CAC +/* 803C5D58 003C2CB8 48 00 01 68 */ b lbl_803C5EC0 +lbl_803C5D5C: +/* 803C5D5C 003C2CBC E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 +/* 803C5D60 003C2CC0 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C5D64 003C2CC4 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C5D68 003C2CC8 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C5D6C 003C2CCC 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5D70 003C2CD0 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C5D74 003C2CD4 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C5D78 003C2CD8 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C5D7C 003C2CDC 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C5D80 003C2CE0 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C5D84 003C2CE4 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C5D88 003C2CE8 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C5D8C 003C2CEC 80 09 00 08 */ lwz r0, 8(r9) +/* 803C5D90 003C2CF0 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C5D94 003C2CF4 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C5D98 003C2CF8 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C5D9C 003C2CFC 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C5DA0 003C2D00 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C5DA4 003C2D04 A0 89 00 02 */ lhz r4, 2(r9) +/* 803C5DA8 003C2D08 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C5DAC 003C2D0C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C5DB0 003C2D10 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C5DB4 003C2D14 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C5DB8 003C2D18 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C5DBC 003C2D1C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5DC0 003C2D20 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C5DC4 003C2D24 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C5DC8 003C2D28 F4 48 00 08 */ psq_stu f2, 8(r8), 0, qr0 +/* 803C5DCC 003C2D2C 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C5DD0 003C2D30 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C5DD4 003C2D34 7C C6 03 78 */ or r6, r6, r0 +/* 803C5DD8 003C2D38 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 +/* 803C5DDC 003C2D3C 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C5DE0 003C2D40 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C5DE4 003C2D44 F4 28 00 08 */ psq_stu f1, 8(r8), 0, qr0 +/* 803C5DE8 003C2D48 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5DEC 003C2D4C F5 68 00 08 */ psq_stu f11, 8(r8), 0, qr0 +/* 803C5DF0 003C2D50 42 00 FE BC */ bdnz lbl_803C5CAC +/* 803C5DF4 003C2D54 48 00 00 CC */ b lbl_803C5EC0 +lbl_803C5DF8: +/* 803C5DF8 003C2D58 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 +/* 803C5DFC 003C2D5C E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C5E00 003C2D60 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C5E04 003C2D64 E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 +/* 803C5E08 003C2D68 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C5E0C 003C2D6C 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C5E10 003C2D70 E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 +/* 803C5E14 003C2D74 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C5E18 003C2D78 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C5E1C 003C2D7C 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C5E20 003C2D80 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C5E24 003C2D84 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C5E28 003C2D88 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C5E2C 003C2D8C 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C5E30 003C2D90 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C5E34 003C2D94 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C5E38 003C2D98 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C5E3C 003C2D9C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C5E40 003C2DA0 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C5E44 003C2DA4 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C5E48 003C2DA8 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C5E4C 003C2DAC 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C5E50 003C2DB0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C5E54 003C2DB4 80 09 00 08 */ lwz r0, 8(r9) +/* 803C5E58 003C2DB8 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C5E5C 003C2DBC 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C5E60 003C2DC0 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C5E64 003C2DC4 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C5E68 003C2DC8 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C5E6C 003C2DCC 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C5E70 003C2DD0 A0 89 00 02 */ lhz r4, 2(r9) +/* 803C5E74 003C2DD4 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C5E78 003C2DD8 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C5E7C 003C2DDC E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C5E80 003C2DE0 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C5E84 003C2DE4 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C5E88 003C2DE8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C5E8C 003C2DEC 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C5E90 003C2DF0 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C5E94 003C2DF4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C5E98 003C2DF8 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C5E9C 003C2DFC 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C5EA0 003C2E00 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C5EA4 003C2E04 F5 88 00 08 */ psq_stu f12, 8(r8), 0, qr0 +/* 803C5EA8 003C2E08 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C5EAC 003C2E0C F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 +/* 803C5EB0 003C2E10 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 +/* 803C5EB4 003C2E14 7C C6 03 78 */ or r6, r6, r0 +/* 803C5EB8 003C2E18 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 +/* 803C5EBC 003C2E1C 42 00 FD F0 */ bdnz lbl_803C5CAC +lbl_803C5EC0: +/* 803C5EC0 003C2E20 80 ED B1 00 */ lwz r7, lbl_805A9CC0@sda21(r13) +/* 803C5EC4 003C2E24 7F E8 FB 78 */ mr r8, r31 +/* 803C5EC8 003C2E28 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C5ECC 003C2E2C E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 +/* 803C5ED0 003C2E30 54 63 10 3A */ slwi r3, r3, 2 +/* 803C5ED4 003C2E34 E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 +/* 803C5ED8 003C2E38 54 05 10 3A */ slwi r5, r0, 2 +/* 803C5EDC 003C2E3C E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 +/* 803C5EE0 003C2E40 7C 66 1B 78 */ mr r6, r3 +/* 803C5EE4 003C2E44 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5EE8 003C2E48 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 +/* 803C5EEC 003C2E4C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5EF0 003C2E50 7C A6 2A 14 */ add r5, r6, r5 +/* 803C5EF4 003C2E54 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C5EF8 003C2E58 38 00 00 03 */ li r0, 3 +/* 803C5EFC 003C2E5C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5F00 003C2E60 7C 87 32 14 */ add r4, r7, r6 +/* 803C5F04 003C2E64 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5F08 003C2E68 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C5F0C 003C2E6C 7C 67 2A 14 */ add r3, r7, r5 +/* 803C5F10 003C2E70 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C5F14 003C2E74 7C 09 03 A6 */ mtctr r0 +lbl_803C5F18: +/* 803C5F18 003C2E78 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 +/* 803C5F1C 003C2E7C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C5F20 003C2E80 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 +/* 803C5F24 003C2E84 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C5F28 003C2E88 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C5F2C 003C2E8C E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 +/* 803C5F30 003C2E90 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C5F34 003C2E94 E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 +/* 803C5F38 003C2E98 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C5F3C 003C2E9C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C5F40 003C2EA0 39 08 00 08 */ addi r8, r8, 8 +/* 803C5F44 003C2EA4 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C5F48 003C2EA8 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C5F4C 003C2EAC E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 +/* 803C5F50 003C2EB0 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C5F54 003C2EB4 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C5F58 003C2EB8 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C5F5C 003C2EBC E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 +/* 803C5F60 003C2EC0 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C5F64 003C2EC4 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C5F68 003C2EC8 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 +/* 803C5F6C 003C2ECC 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C5F70 003C2ED0 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C5F74 003C2ED4 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 +/* 803C5F78 003C2ED8 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C5F7C 003C2EDC 38 C6 00 02 */ addi r6, r6, 2 +/* 803C5F80 003C2EE0 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 +/* 803C5F84 003C2EE4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C5F88 003C2EE8 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C5F8C 003C2EEC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C5F90 003C2EF0 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C5F94 003C2EF4 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C5F98 003C2EF8 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C5F9C 003C2EFC 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C5FA0 003C2F00 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 +/* 803C5FA4 003C2F04 38 A5 00 02 */ addi r5, r5, 2 +/* 803C5FA8 003C2F08 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C5FAC 003C2F0C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C5FB0 003C2F10 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 +/* 803C5FB4 003C2F14 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C5FB8 003C2F18 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C5FBC 003C2F1C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C5FC0 003C2F20 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C5FC4 003C2F24 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C5FC8 003C2F28 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C5FCC 003C2F2C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C5FD0 003C2F30 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C5FD4 003C2F34 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C5FD8 003C2F38 7C 87 32 14 */ add r4, r7, r6 +/* 803C5FDC 003C2F3C 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C5FE0 003C2F40 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C5FE4 003C2F44 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C5FE8 003C2F48 7C 67 2A 14 */ add r3, r7, r5 +/* 803C5FEC 003C2F4C 42 00 FF 2C */ bdnz lbl_803C5F18 +/* 803C5FF0 003C2F50 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 +/* 803C5FF4 003C2F54 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C5FF8 003C2F58 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 +/* 803C5FFC 003C2F5C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C6000 003C2F60 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6004 003C2F64 E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 +/* 803C6008 003C2F68 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C600C 003C2F6C E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 +/* 803C6010 003C2F70 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6014 003C2F74 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C6018 003C2F78 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C601C 003C2F7C 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C6020 003C2F80 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6024 003C2F84 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6028 003C2F88 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C602C 003C2F8C 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C6030 003C2F90 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6034 003C2F94 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C6038 003C2F98 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C603C 003C2F9C F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 +/* 803C6040 003C2FA0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6044 003C2FA4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C6048 003C2FA8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C604C 003C2FAC 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C6050 003C2FB0 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C6054 003C2FB4 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C6058 003C2FB8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C605C 003C2FBC 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C6060 003C2FC0 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C6064 003C2FC4 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C6068 003C2FC8 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 +/* 803C606C 003C2FCC 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C6070 003C2FD0 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C6074 003C2FD4 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 +/* 803C6078 003C2FD8 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C607C 003C2FDC F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C6080 003C2FE0 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C6084 003C2FE4 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C6088 003C2FE8 88 04 06 A9 */ lbz r0, 0x6a9(r4) +/* 803C608C 003C2FEC 28 00 00 00 */ cmplwi r0, 0 +/* 803C6090 003C2FF0 41 82 00 74 */ beq lbl_803C6104 +/* 803C6094 003C2FF4 A0 64 06 AC */ lhz r3, 0x6ac(r4) +/* 803C6098 003C2FF8 38 03 FF FF */ addi r0, r3, -1 +/* 803C609C 003C2FFC B0 04 06 AC */ sth r0, 0x6ac(r4) +/* 803C60A0 003C3000 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C60A4 003C3004 A0 03 06 AC */ lhz r0, 0x6ac(r3) +/* 803C60A8 003C3008 28 00 00 00 */ cmplwi r0, 0 +/* 803C60AC 003C300C 40 82 00 58 */ bne lbl_803C6104 +/* 803C60B0 003C3010 A0 03 06 AA */ lhz r0, 0x6aa(r3) +/* 803C60B4 003C3014 B0 03 06 AC */ sth r0, 0x6ac(r3) +/* 803C60B8 003C3018 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C60BC 003C301C 80 64 06 A4 */ lwz r3, 0x6a4(r4) +/* 803C60C0 003C3020 38 03 00 06 */ addi r0, r3, 6 +/* 803C60C4 003C3024 54 03 00 38 */ rlwinm r3, r0, 0, 0, 0x1c +/* 803C60C8 003C3028 38 03 00 01 */ addi r0, r3, 1 +/* 803C60CC 003C302C 90 04 06 A4 */ stw r0, 0x6a4(r4) +/* 803C60D0 003C3030 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C60D4 003C3034 80 03 06 A4 */ lwz r0, 0x6a4(r3) +/* 803C60D8 003C3038 28 00 00 20 */ cmplwi r0, 0x20 +/* 803C60DC 003C303C 40 81 00 0C */ ble lbl_803C60E8 +/* 803C60E0 003C3040 38 00 00 21 */ li r0, 0x21 +/* 803C60E4 003C3044 90 03 06 A4 */ stw r0, 0x6a4(r3) +lbl_803C60E8: +/* 803C60E8 003C3048 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C60EC 003C304C 38 00 00 00 */ li r0, 0 +/* 803C60F0 003C3050 B0 03 06 84 */ sth r0, 0x684(r3) +/* 803C60F4 003C3054 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C60F8 003C3058 B0 03 06 8A */ sth r0, 0x68a(r3) +/* 803C60FC 003C305C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6100 003C3060 B0 03 06 90 */ sth r0, 0x690(r3) +lbl_803C6104: +/* 803C6104 003C3064 3B DE 00 01 */ addi r30, r30, 1 +lbl_803C6108: +/* 803C6108 003C3068 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C610C 003C306C 57 C4 06 3E */ clrlwi r4, r30, 0x18 +/* 803C6110 003C3070 A0 03 06 96 */ lhz r0, 0x696(r3) +/* 803C6114 003C3074 7C 04 00 00 */ cmpw r4, r0 +/* 803C6118 003C3078 41 80 E6 60 */ blt lbl_803C4778 +/* 803C611C 003C307C 80 63 06 B0 */ lwz r3, 0x6b0(r3) +/* 803C6120 003C3080 38 A0 28 00 */ li r5, 0x2800 +/* 803C6124 003C3084 80 9F 01 0C */ lwz r4, 0x10c(r31) +/* 803C6128 003C3088 4B FB 8C E5 */ bl LCStoreData +/* 803C612C 003C308C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6130 003C3090 38 A0 0A 00 */ li r5, 0xa00 +/* 803C6134 003C3094 80 9F 01 10 */ lwz r4, 0x110(r31) +/* 803C6138 003C3098 80 63 06 B4 */ lwz r3, 0x6b4(r3) +/* 803C613C 003C309C 4B FB 8C D1 */ bl LCStoreData +/* 803C6140 003C30A0 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6144 003C30A4 38 A0 0A 00 */ li r5, 0xa00 +/* 803C6148 003C30A8 80 9F 01 14 */ lwz r4, 0x114(r31) +/* 803C614C 003C30AC 80 63 06 B8 */ lwz r3, 0x6b8(r3) +/* 803C6150 003C30B0 4B FB 8C BD */ bl LCStoreData +/* 803C6154 003C30B4 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C6158 003C30B8 80 64 06 B0 */ lwz r3, 0x6b0(r4) +/* 803C615C 003C30BC 38 03 28 00 */ addi r0, r3, 0x2800 +/* 803C6160 003C30C0 90 04 06 B0 */ stw r0, 0x6b0(r4) +/* 803C6164 003C30C4 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C6168 003C30C8 80 64 06 B4 */ lwz r3, 0x6b4(r4) +/* 803C616C 003C30CC 38 03 0A 00 */ addi r0, r3, 0xa00 +/* 803C6170 003C30D0 90 04 06 B4 */ stw r0, 0x6b4(r4) +/* 803C6174 003C30D4 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C6178 003C30D8 80 64 06 B8 */ lwz r3, 0x6b8(r4) +/* 803C617C 003C30DC 38 03 0A 00 */ addi r0, r3, 0xa00 +/* 803C6180 003C30E0 90 04 06 B8 */ stw r0, 0x6b8(r4) +/* 803C6184 003C30E4 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 803C6188 003C30E8 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 803C618C 003C30EC CB C1 00 28 */ lfd f30, 0x28(r1) +/* 803C6190 003C30F0 CB A1 00 20 */ lfd f29, 0x20(r1) +/* 803C6194 003C30F4 CB 81 00 18 */ lfd f28, 0x18(r1) +/* 803C6198 003C30F8 CB 61 00 10 */ lfd f27, 0x10(r1) +/* 803C619C 003C30FC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 803C61A0 003C3100 83 C1 00 08 */ lwz r30, 8(r1) +/* 803C61A4 003C3104 38 21 00 38 */ addi r1, r1, 0x38 +/* 803C61A8 003C3108 7C 08 03 A6 */ mtlr r0 +/* 803C61AC 003C310C 4E 80 00 20 */ blr + +.global __THPDecompressiMCURowNxN +__THPDecompressiMCURowNxN: +/* 803C61B0 003C3110 7C 08 02 A6 */ mflr r0 +/* 803C61B4 003C3114 3C 80 80 57 */ lis r4, lbl_80569F60@ha +/* 803C61B8 003C3118 90 01 00 04 */ stw r0, 4(r1) +/* 803C61BC 003C311C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 803C61C0 003C3120 DB E1 00 38 */ stfd f31, 0x38(r1) +/* 803C61C4 003C3124 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 803C61C8 003C3128 DB A1 00 28 */ stfd f29, 0x28(r1) +/* 803C61CC 003C312C DB 81 00 20 */ stfd f28, 0x20(r1) +/* 803C61D0 003C3130 DB 61 00 18 */ stfd f27, 0x18(r1) +/* 803C61D4 003C3134 93 E1 00 14 */ stw r31, 0x14(r1) +/* 803C61D8 003C3138 93 C1 00 10 */ stw r30, 0x10(r1) +/* 803C61DC 003C313C 3B C4 9F 60 */ addi r30, r4, lbl_80569F60@l +/* 803C61E0 003C3140 93 A1 00 0C */ stw r29, 0xc(r1) +/* 803C61E4 003C3144 93 81 00 08 */ stw r28, 8(r1) +/* 803C61E8 003C3148 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C61EC 003C314C A3 83 06 92 */ lhz r28, 0x692(r3) +/* 803C61F0 003C3150 38 60 00 03 */ li r3, 3 +/* 803C61F4 003C3154 4B FB 8C D1 */ bl LCQueueWait +/* 803C61F8 003C3158 C3 62 D7 28 */ lfs f27, lbl_805AF448@sda21(r2) +/* 803C61FC 003C315C 57 9F F8 7E */ srwi r31, r28, 1 +/* 803C6200 003C3160 C3 82 D7 2C */ lfs f28, lbl_805AF44C@sda21(r2) +/* 803C6204 003C3164 3B A0 00 00 */ li r29, 0 +/* 803C6208 003C3168 C3 A2 D7 30 */ lfs f29, lbl_805AF450@sda21(r2) +/* 803C620C 003C316C C3 C2 D7 34 */ lfs f30, lbl_805AF454@sda21(r2) +/* 803C6210 003C3170 C3 E2 D7 38 */ lfs f31, lbl_805AF458@sda21(r2) +/* 803C6214 003C3174 48 00 19 8C */ b lbl_803C7BA0 +lbl_803C6218: +/* 803C6218 003C3178 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C621C 003C317C 80 9E 01 18 */ lwz r4, 0x118(r30) +/* 803C6220 003C3180 48 00 1A 3D */ bl __THPHuffDecodeDCTCompY +/* 803C6224 003C3184 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6228 003C3188 80 9E 01 1C */ lwz r4, 0x11c(r30) +/* 803C622C 003C318C 48 00 1A 31 */ bl __THPHuffDecodeDCTCompY +/* 803C6230 003C3190 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6234 003C3194 80 9E 01 20 */ lwz r4, 0x120(r30) +/* 803C6238 003C3198 48 00 1A 25 */ bl __THPHuffDecodeDCTCompY +/* 803C623C 003C319C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6240 003C31A0 80 9E 01 24 */ lwz r4, 0x124(r30) +/* 803C6244 003C31A4 48 00 1A 19 */ bl __THPHuffDecodeDCTCompY +/* 803C6248 003C31A8 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C624C 003C31AC 80 9E 01 28 */ lwz r4, 0x128(r30) +/* 803C6250 003C31B0 48 00 20 89 */ bl __THPHuffDecodeDCTCompU +/* 803C6254 003C31B4 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C6258 003C31B8 80 9E 01 2C */ lwz r4, 0x12c(r30) +/* 803C625C 003C31BC 48 00 27 25 */ bl __THPHuffDecodeDCTCompV +/* 803C6260 003C31C0 80 1E 01 0C */ lwz r0, 0x10c(r30) +/* 803C6264 003C31C4 57 A4 25 36 */ rlwinm r4, r29, 4, 0x14, 0x1b +/* 803C6268 003C31C8 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C626C 003C31CC 38 7E FF F8 */ addi r3, r30, -8 +/* 803C6270 003C31D0 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) +/* 803C6274 003C31D4 93 8D B1 20 */ stw r28, lbl_805A9CE0@sda21(r13) +/* 803C6278 003C31D8 88 05 06 80 */ lbz r0, 0x680(r5) +/* 803C627C 003C31DC 54 00 40 2E */ slwi r0, r0, 8 +/* 803C6280 003C31E0 7C 05 02 14 */ add r0, r5, r0 +/* 803C6284 003C31E4 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C6288 003C31E8 81 3E 01 18 */ lwz r9, 0x118(r30) +/* 803C628C 003C31EC 81 0D B1 40 */ lwz r8, lbl_805A9D00@sda21(r13) +/* 803C6290 003C31F0 38 A0 00 08 */ li r5, 8 +/* 803C6294 003C31F4 7C A9 03 A6 */ mtctr r5 +lbl_803C6298: +/* 803C6298 003C31F8 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C629C 003C31FC E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 +/* 803C62A0 003C3200 80 E9 00 0C */ lwz r7, 0xc(r9) +/* 803C62A4 003C3204 80 09 00 08 */ lwz r0, 8(r9) +/* 803C62A8 003C3208 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C62AC 003C320C 80 C9 00 04 */ lwz r6, 4(r9) +/* 803C62B0 003C3210 A0 A9 00 02 */ lhz r5, 2(r9) +/* 803C62B4 003C3214 7C E7 03 79 */ or. r7, r7, r0 +lbl_803C62B8: +/* 803C62B8 003C3218 2C 07 00 00 */ cmpwi r7, 0 +/* 803C62BC 003C321C 40 82 01 48 */ bne lbl_803C6404 +/* 803C62C0 003C3220 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C62C4 003C3224 2C 06 00 00 */ cmpwi r6, 0 +/* 803C62C8 003C3228 F0 83 00 08 */ psq_st f4, 8(r3), 0, qr0 +/* 803C62CC 003C322C 40 82 00 9C */ bne lbl_803C6368 +/* 803C62D0 003C3230 F0 83 00 10 */ psq_st f4, 16(r3), 0, qr0 +/* 803C62D4 003C3234 2C 05 00 00 */ cmpwi r5, 0 +/* 803C62D8 003C3238 F0 83 00 18 */ psq_st f4, 24(r3), 0, qr0 +/* 803C62DC 003C323C 40 82 00 18 */ bne lbl_803C62F4 +/* 803C62E0 003C3240 39 08 00 20 */ addi r8, r8, 0x20 +/* 803C62E4 003C3244 F4 83 00 20 */ psq_stu f4, 32(r3), 0, qr0 +/* 803C62E8 003C3248 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C62EC 003C324C 42 00 FF AC */ bdnz lbl_803C6298 +/* 803C62F0 003C3250 48 00 01 DC */ b lbl_803C64CC +lbl_803C62F4: +/* 803C62F4 003C3254 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C62F8 003C3258 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C62FC 003C325C 39 08 00 20 */ addi r8, r8, 0x20 +/* 803C6300 003C3260 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C6304 003C3264 80 C9 00 04 */ lwz r6, 4(r9) +/* 803C6308 003C3268 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C630C 003C326C 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C6310 003C3270 A0 A9 00 02 */ lhz r5, 2(r9) +/* 803C6314 003C3274 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C6318 003C3278 E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 +/* 803C631C 003C327C 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C6320 003C3280 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C6324 003C3284 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C6328 003C3288 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C632C 003C328C 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C6330 003C3290 80 E9 00 0C */ lwz r7, 0xc(r9) +/* 803C6334 003C3294 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C6338 003C3298 80 09 00 08 */ lwz r0, 8(r9) +/* 803C633C 003C329C 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C6340 003C32A0 F5 03 00 08 */ psq_stu f8, 8(r3), 0, qr0 +/* 803C6344 003C32A4 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C6348 003C32A8 F4 63 00 08 */ psq_stu f3, 8(r3), 0, qr0 +/* 803C634C 003C32AC 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C6350 003C32B0 7C E7 03 78 */ or r7, r7, r0 +/* 803C6354 003C32B4 F5 23 00 08 */ psq_stu f9, 8(r3), 0, qr0 +/* 803C6358 003C32B8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C635C 003C32BC F5 43 00 08 */ psq_stu f10, 8(r3), 0, qr0 +/* 803C6360 003C32C0 42 00 FF 58 */ bdnz lbl_803C62B8 +/* 803C6364 003C32C4 48 00 01 68 */ b lbl_803C64CC +lbl_803C6368: +/* 803C6368 003C32C8 E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 +/* 803C636C 003C32CC E0 48 00 08 */ psq_l f2, 8(r8), 0, qr0 +/* 803C6370 003C32D0 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C6374 003C32D4 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C6378 003C32D8 39 08 00 20 */ addi r8, r8, 0x20 +/* 803C637C 003C32DC 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C6380 003C32E0 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C6384 003C32E4 80 E9 00 0C */ lwz r7, 0xc(r9) +/* 803C6388 003C32E8 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C638C 003C32EC 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C6390 003C32F0 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C6394 003C32F4 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C6398 003C32F8 80 09 00 08 */ lwz r0, 8(r9) +/* 803C639C 003C32FC 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C63A0 003C3300 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C63A4 003C3304 80 C9 00 04 */ lwz r6, 4(r9) +/* 803C63A8 003C3308 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C63AC 003C330C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C63B0 003C3310 A0 A9 00 02 */ lhz r5, 2(r9) +/* 803C63B4 003C3314 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C63B8 003C3318 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C63BC 003C331C E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C63C0 003C3320 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C63C4 003C3324 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C63C8 003C3328 E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 +/* 803C63CC 003C332C 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C63D0 003C3330 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C63D4 003C3334 F4 43 00 08 */ psq_stu f2, 8(r3), 0, qr0 +/* 803C63D8 003C3338 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C63DC 003C333C 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C63E0 003C3340 7C E7 03 78 */ or r7, r7, r0 +/* 803C63E4 003C3344 F4 83 00 08 */ psq_stu f4, 8(r3), 0, qr0 +/* 803C63E8 003C3348 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C63EC 003C334C 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C63F0 003C3350 F4 23 00 08 */ psq_stu f1, 8(r3), 0, qr0 +/* 803C63F4 003C3354 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C63F8 003C3358 F5 63 00 08 */ psq_stu f11, 8(r3), 0, qr0 +/* 803C63FC 003C335C 42 00 FE BC */ bdnz lbl_803C62B8 +/* 803C6400 003C3360 48 00 00 CC */ b lbl_803C64CC +lbl_803C6404: +/* 803C6404 003C3364 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 +/* 803C6408 003C3368 E1 48 00 08 */ psq_l f10, 8(r8), 0, qr0 +/* 803C640C 003C336C 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C6410 003C3370 E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 +/* 803C6414 003C3374 E1 28 00 10 */ psq_l f9, 16(r8), 0, qr0 +/* 803C6418 003C3378 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C641C 003C337C E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 +/* 803C6420 003C3380 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C6424 003C3384 E1 08 00 18 */ psq_l f8, 24(r8), 0, qr0 +/* 803C6428 003C3388 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C642C 003C338C 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C6430 003C3390 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C6434 003C3394 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C6438 003C3398 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C643C 003C339C 39 08 00 20 */ addi r8, r8, 0x20 +/* 803C6440 003C33A0 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C6444 003C33A4 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C6448 003C33A8 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C644C 003C33AC 80 E9 00 0C */ lwz r7, 0xc(r9) +/* 803C6450 003C33B0 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C6454 003C33B4 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C6458 003C33B8 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C645C 003C33BC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6460 003C33C0 80 09 00 08 */ lwz r0, 8(r9) +/* 803C6464 003C33C4 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C6468 003C33C8 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C646C 003C33CC 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C6470 003C33D0 80 C9 00 04 */ lwz r6, 4(r9) +/* 803C6474 003C33D4 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C6478 003C33D8 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C647C 003C33DC A0 A9 00 02 */ lhz r5, 2(r9) +/* 803C6480 003C33E0 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C6484 003C33E4 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C6488 003C33E8 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C648C 003C33EC 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C6490 003C33F0 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C6494 003C33F4 E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 +/* 803C6498 003C33F8 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C649C 003C33FC 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C64A0 003C3400 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C64A4 003C3404 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C64A8 003C3408 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C64AC 003C340C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C64B0 003C3410 F5 83 00 08 */ psq_stu f12, 8(r3), 0, qr0 +/* 803C64B4 003C3414 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C64B8 003C3418 F5 23 00 08 */ psq_stu f9, 8(r3), 0, qr0 +/* 803C64BC 003C341C F5 43 00 08 */ psq_stu f10, 8(r3), 0, qr0 +/* 803C64C0 003C3420 7C E7 03 78 */ or r7, r7, r0 +/* 803C64C4 003C3424 F4 83 00 08 */ psq_stu f4, 8(r3), 0, qr0 +/* 803C64C8 003C3428 42 00 FD F0 */ bdnz lbl_803C62B8 +lbl_803C64CC: +/* 803C64CC 003C342C 81 2D B1 00 */ lwz r9, lbl_805A9CC0@sda21(r13) +/* 803C64D0 003C3430 7F C3 F3 78 */ mr r3, r30 +/* 803C64D4 003C3434 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C64D8 003C3438 E0 E3 00 00 */ psq_l f7, 0(r3), 0, qr0 +/* 803C64DC 003C343C 54 85 10 3A */ slwi r5, r4, 2 +/* 803C64E0 003C3440 E0 C3 00 80 */ psq_l f6, 128(r3), 0, qr0 +/* 803C64E4 003C3444 54 07 10 3A */ slwi r7, r0, 2 +/* 803C64E8 003C3448 E0 A3 00 40 */ psq_l f5, 64(r3), 0, qr0 +/* 803C64EC 003C344C 7C A8 2B 78 */ mr r8, r5 +/* 803C64F0 003C3450 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C64F4 003C3454 E0 83 00 C0 */ psq_l f4, 192(r3), 0, qr0 +/* 803C64F8 003C3458 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C64FC 003C345C 7C E8 3A 14 */ add r7, r8, r7 +/* 803C6500 003C3460 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C6504 003C3464 38 00 00 03 */ li r0, 3 +/* 803C6508 003C3468 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C650C 003C346C 7C C9 42 14 */ add r6, r9, r8 +/* 803C6510 003C3470 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C6514 003C3474 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C6518 003C3478 7C A9 3A 14 */ add r5, r9, r7 +/* 803C651C 003C347C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C6520 003C3480 7C 09 03 A6 */ mtctr r0 +lbl_803C6524: +/* 803C6524 003C3484 E1 63 00 20 */ psq_l f11, 32(r3), 0, qr0 +/* 803C6528 003C3488 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C652C 003C348C E1 43 00 60 */ psq_l f10, 96(r3), 0, qr0 +/* 803C6530 003C3490 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C6534 003C3494 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6538 003C3498 E1 23 00 A0 */ psq_l f9, 160(r3), 0, qr0 +/* 803C653C 003C349C 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C6540 003C34A0 E1 03 00 E0 */ psq_l f8, 224(r3), 0, qr0 +/* 803C6544 003C34A4 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6548 003C34A8 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C654C 003C34AC 38 63 00 08 */ addi r3, r3, 8 +/* 803C6550 003C34B0 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C6554 003C34B4 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C6558 003C34B8 E0 E3 00 00 */ psq_l f7, 0(r3), 0, qr0 +/* 803C655C 003C34BC 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6560 003C34C0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6564 003C34C4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C6568 003C34C8 E0 C3 00 80 */ psq_l f6, 128(r3), 0, qr0 +/* 803C656C 003C34CC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C6570 003C34D0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6574 003C34D4 E0 A3 00 40 */ psq_l f5, 64(r3), 0, qr0 +/* 803C6578 003C34D8 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C657C 003C34DC 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C6580 003C34E0 E0 83 00 C0 */ psq_l f4, 192(r3), 0, qr0 +/* 803C6584 003C34E4 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6588 003C34E8 39 08 00 02 */ addi r8, r8, 2 +/* 803C658C 003C34EC F0 46 60 00 */ psq_st f2, 0(r6), 0, qr6 +/* 803C6590 003C34F0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C6594 003C34F4 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C6598 003C34F8 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C659C 003C34FC 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C65A0 003C3500 F0 46 60 08 */ psq_st f2, 8(r6), 0, qr6 +/* 803C65A4 003C3504 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C65A8 003C3508 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C65AC 003C350C F0 66 60 10 */ psq_st f3, 16(r6), 0, qr6 +/* 803C65B0 003C3510 38 E7 00 02 */ addi r7, r7, 2 +/* 803C65B4 003C3514 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C65B8 003C3518 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C65BC 003C351C F0 46 60 18 */ psq_st f2, 24(r6), 0, qr6 +/* 803C65C0 003C3520 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C65C4 003C3524 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C65C8 003C3528 F0 65 60 00 */ psq_st f3, 0(r5), 0, qr6 +/* 803C65CC 003C352C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C65D0 003C3530 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C65D4 003C3534 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C65D8 003C3538 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C65DC 003C353C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C65E0 003C3540 F0 25 60 10 */ psq_st f1, 16(r5), 0, qr6 +/* 803C65E4 003C3544 7C C9 42 14 */ add r6, r9, r8 +/* 803C65E8 003C3548 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C65EC 003C354C F0 05 60 18 */ psq_st f0, 24(r5), 0, qr6 +/* 803C65F0 003C3550 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C65F4 003C3554 7C A9 3A 14 */ add r5, r9, r7 +/* 803C65F8 003C3558 42 00 FF 2C */ bdnz lbl_803C6524 +/* 803C65FC 003C355C E1 63 00 20 */ psq_l f11, 32(r3), 0, qr0 +/* 803C6600 003C3560 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C6604 003C3564 E1 43 00 60 */ psq_l f10, 96(r3), 0, qr0 +/* 803C6608 003C3568 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C660C 003C356C 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6610 003C3570 E1 23 00 A0 */ psq_l f9, 160(r3), 0, qr0 +/* 803C6614 003C3574 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C6618 003C3578 E1 03 00 E0 */ psq_l f8, 224(r3), 0, qr0 +/* 803C661C 003C357C 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6620 003C3580 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C6624 003C3584 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C6628 003C3588 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C662C 003C358C 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6630 003C3590 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6634 003C3594 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C6638 003C3598 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C663C 003C359C 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6640 003C35A0 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C6644 003C35A4 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C6648 003C35A8 F0 46 60 00 */ psq_st f2, 0(r6), 0, qr6 +/* 803C664C 003C35AC 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6650 003C35B0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C6654 003C35B4 F0 05 60 18 */ psq_st f0, 24(r5), 0, qr6 +/* 803C6658 003C35B8 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C665C 003C35BC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C6660 003C35C0 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C6664 003C35C4 F0 46 60 08 */ psq_st f2, 8(r6), 0, qr6 +/* 803C6668 003C35C8 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C666C 003C35CC 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C6670 003C35D0 F0 25 60 10 */ psq_st f1, 16(r5), 0, qr6 +/* 803C6674 003C35D4 F0 66 60 10 */ psq_st f3, 16(r6), 0, qr6 +/* 803C6678 003C35D8 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C667C 003C35DC 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C6680 003C35E0 F0 46 60 18 */ psq_st f2, 24(r6), 0, qr6 +/* 803C6684 003C35E4 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C6688 003C35E8 F0 65 60 00 */ psq_st f3, 0(r5), 0, qr6 +/* 803C668C 003C35EC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C6690 003C35F0 81 1E 01 1C */ lwz r8, 0x11c(r30) +/* 803C6694 003C35F4 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C6698 003C35F8 39 44 00 08 */ addi r10, r4, 8 +/* 803C669C 003C35FC 39 3E FF F8 */ addi r9, r30, -8 +/* 803C66A0 003C3600 38 60 00 08 */ li r3, 8 +/* 803C66A4 003C3604 7C 69 03 A6 */ mtctr r3 +lbl_803C66A8: +/* 803C66A8 003C3608 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C66AC 003C360C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C66B0 003C3610 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C66B4 003C3614 80 08 00 08 */ lwz r0, 8(r8) +/* 803C66B8 003C3618 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C66BC 003C361C 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C66C0 003C3620 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C66C4 003C3624 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C66C8: +/* 803C66C8 003C3628 2C 06 00 00 */ cmpwi r6, 0 +/* 803C66CC 003C362C 40 82 01 48 */ bne lbl_803C6814 +/* 803C66D0 003C3630 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C66D4 003C3634 2C 05 00 00 */ cmpwi r5, 0 +/* 803C66D8 003C3638 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C66DC 003C363C 40 82 00 9C */ bne lbl_803C6778 +/* 803C66E0 003C3640 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C66E4 003C3644 2C 03 00 00 */ cmpwi r3, 0 +/* 803C66E8 003C3648 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C66EC 003C364C 40 82 00 18 */ bne lbl_803C6704 +/* 803C66F0 003C3650 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C66F4 003C3654 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C66F8 003C3658 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C66FC 003C365C 42 00 FF AC */ bdnz lbl_803C66A8 +/* 803C6700 003C3660 48 00 01 DC */ b lbl_803C68DC +lbl_803C6704: +/* 803C6704 003C3664 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6708 003C3668 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C670C 003C366C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6710 003C3670 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C6714 003C3674 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6718 003C3678 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C671C 003C367C 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C6720 003C3680 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6724 003C3684 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C6728 003C3688 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C672C 003C368C 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C6730 003C3690 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C6734 003C3694 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6738 003C3698 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C673C 003C369C 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C6740 003C36A0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6744 003C36A4 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C6748 003C36A8 80 08 00 08 */ lwz r0, 8(r8) +/* 803C674C 003C36AC 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C6750 003C36B0 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C6754 003C36B4 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C6758 003C36B8 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C675C 003C36BC 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C6760 003C36C0 7C C6 03 78 */ or r6, r6, r0 +/* 803C6764 003C36C4 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C6768 003C36C8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C676C 003C36CC F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C6770 003C36D0 42 00 FF 58 */ bdnz lbl_803C66C8 +/* 803C6774 003C36D4 48 00 01 68 */ b lbl_803C68DC +lbl_803C6778: +/* 803C6778 003C36D8 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C677C 003C36DC E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C6780 003C36E0 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6784 003C36E4 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C6788 003C36E8 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C678C 003C36EC 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C6790 003C36F0 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C6794 003C36F4 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6798 003C36F8 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C679C 003C36FC 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C67A0 003C3700 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C67A4 003C3704 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C67A8 003C3708 80 08 00 08 */ lwz r0, 8(r8) +/* 803C67AC 003C370C 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C67B0 003C3710 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C67B4 003C3714 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C67B8 003C3718 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C67BC 003C371C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C67C0 003C3720 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C67C4 003C3724 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C67C8 003C3728 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C67CC 003C372C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C67D0 003C3730 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C67D4 003C3734 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C67D8 003C3738 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C67DC 003C373C 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C67E0 003C3740 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C67E4 003C3744 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C67E8 003C3748 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C67EC 003C374C 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C67F0 003C3750 7C C6 03 78 */ or r6, r6, r0 +/* 803C67F4 003C3754 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C67F8 003C3758 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C67FC 003C375C 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C6800 003C3760 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C6804 003C3764 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6808 003C3768 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C680C 003C376C 42 00 FE BC */ bdnz lbl_803C66C8 +/* 803C6810 003C3770 48 00 00 CC */ b lbl_803C68DC +lbl_803C6814: +/* 803C6814 003C3774 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C6818 003C3778 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C681C 003C377C 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C6820 003C3780 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C6824 003C3784 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C6828 003C3788 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C682C 003C378C E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C6830 003C3790 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C6834 003C3794 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C6838 003C3798 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C683C 003C379C 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C6840 003C37A0 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C6844 003C37A4 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C6848 003C37A8 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C684C 003C37AC 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6850 003C37B0 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C6854 003C37B4 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C6858 003C37B8 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C685C 003C37BC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6860 003C37C0 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C6864 003C37C4 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C6868 003C37C8 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C686C 003C37CC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6870 003C37D0 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6874 003C37D4 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C6878 003C37D8 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C687C 003C37DC 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C6880 003C37E0 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6884 003C37E4 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C6888 003C37E8 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C688C 003C37EC A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6890 003C37F0 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C6894 003C37F4 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C6898 003C37F8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C689C 003C37FC 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C68A0 003C3800 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C68A4 003C3804 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C68A8 003C3808 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C68AC 003C380C 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C68B0 003C3810 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C68B4 003C3814 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C68B8 003C3818 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C68BC 003C381C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C68C0 003C3820 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C68C4 003C3824 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C68C8 003C3828 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C68CC 003C382C F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C68D0 003C3830 7C C6 03 78 */ or r6, r6, r0 +/* 803C68D4 003C3834 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C68D8 003C3838 42 00 FD F0 */ bdnz lbl_803C66C8 +lbl_803C68DC: +/* 803C68DC 003C383C 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C68E0 003C3840 7F C9 F3 78 */ mr r9, r30 +/* 803C68E4 003C3844 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C68E8 003C3848 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C68EC 003C384C 55 4A 10 3A */ slwi r10, r10, 2 +/* 803C68F0 003C3850 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C68F4 003C3854 54 06 10 3A */ slwi r6, r0, 2 +/* 803C68F8 003C3858 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C68FC 003C385C 7D 47 53 78 */ mr r7, r10 +/* 803C6900 003C3860 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C6904 003C3864 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C6908 003C3868 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C690C 003C386C 7C C7 32 14 */ add r6, r7, r6 +/* 803C6910 003C3870 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C6914 003C3874 38 00 00 03 */ li r0, 3 +/* 803C6918 003C3878 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C691C 003C387C 7C A8 3A 14 */ add r5, r8, r7 +/* 803C6920 003C3880 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C6924 003C3884 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C6928 003C3888 7C 68 32 14 */ add r3, r8, r6 +/* 803C692C 003C388C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C6930 003C3890 7C 09 03 A6 */ mtctr r0 +lbl_803C6934: +/* 803C6934 003C3894 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C6938 003C3898 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C693C 003C389C E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C6940 003C38A0 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C6944 003C38A4 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6948 003C38A8 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C694C 003C38AC 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C6950 003C38B0 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C6954 003C38B4 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6958 003C38B8 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C695C 003C38BC 39 29 00 08 */ addi r9, r9, 8 +/* 803C6960 003C38C0 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C6964 003C38C4 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C6968 003C38C8 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C696C 003C38CC 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6970 003C38D0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6974 003C38D4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C6978 003C38D8 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C697C 003C38DC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C6980 003C38E0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6984 003C38E4 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C6988 003C38E8 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C698C 003C38EC 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C6990 003C38F0 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C6994 003C38F4 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6998 003C38F8 38 E7 00 02 */ addi r7, r7, 2 +/* 803C699C 003C38FC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C69A0 003C3900 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C69A4 003C3904 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C69A8 003C3908 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C69AC 003C390C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C69B0 003C3910 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C69B4 003C3914 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C69B8 003C3918 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C69BC 003C391C F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C69C0 003C3920 38 C6 00 02 */ addi r6, r6, 2 +/* 803C69C4 003C3924 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C69C8 003C3928 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C69CC 003C392C F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C69D0 003C3930 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C69D4 003C3934 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C69D8 003C3938 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C69DC 003C393C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C69E0 003C3940 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C69E4 003C3944 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C69E8 003C3948 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C69EC 003C394C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C69F0 003C3950 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C69F4 003C3954 7C A8 3A 14 */ add r5, r8, r7 +/* 803C69F8 003C3958 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C69FC 003C395C F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C6A00 003C3960 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C6A04 003C3964 7C 68 32 14 */ add r3, r8, r6 +/* 803C6A08 003C3968 42 00 FF 2C */ bdnz lbl_803C6934 +/* 803C6A0C 003C396C E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C6A10 003C3970 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C6A14 003C3974 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C6A18 003C3978 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C6A1C 003C397C 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6A20 003C3980 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C6A24 003C3984 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C6A28 003C3988 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C6A2C 003C398C 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6A30 003C3990 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C6A34 003C3994 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C6A38 003C3998 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C6A3C 003C399C 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6A40 003C39A0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6A44 003C39A4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C6A48 003C39A8 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C6A4C 003C39AC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6A50 003C39B0 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C6A54 003C39B4 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C6A58 003C39B8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C6A5C 003C39BC 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6A60 003C39C0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C6A64 003C39C4 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C6A68 003C39C8 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C6A6C 003C39CC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C6A70 003C39D0 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C6A74 003C39D4 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C6A78 003C39D8 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C6A7C 003C39DC 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C6A80 003C39E0 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C6A84 003C39E4 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C6A88 003C39E8 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C6A8C 003C39EC 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C6A90 003C39F0 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C6A94 003C39F4 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C6A98 003C39F8 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C6A9C 003C39FC F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C6AA0 003C3A00 81 1E 01 20 */ lwz r8, 0x120(r30) +/* 803C6AA4 003C3A04 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C6AA8 003C3A08 39 3E FF F8 */ addi r9, r30, -8 +/* 803C6AAC 003C3A0C 38 60 00 08 */ li r3, 8 +/* 803C6AB0 003C3A10 7C 69 03 A6 */ mtctr r3 +lbl_803C6AB4: +/* 803C6AB4 003C3A14 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6AB8 003C3A18 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6ABC 003C3A1C 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6AC0 003C3A20 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6AC4 003C3A24 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6AC8 003C3A28 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6ACC 003C3A2C A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6AD0 003C3A30 7C C6 03 78 */ or r6, r6, r0 +lbl_803C6AD4: +/* 803C6AD4 003C3A34 2C 06 00 00 */ cmpwi r6, 0 +/* 803C6AD8 003C3A38 40 82 01 48 */ bne lbl_803C6C20 +/* 803C6ADC 003C3A3C 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C6AE0 003C3A40 2C 05 00 00 */ cmpwi r5, 0 +/* 803C6AE4 003C3A44 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C6AE8 003C3A48 40 82 00 9C */ bne lbl_803C6B84 +/* 803C6AEC 003C3A4C F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C6AF0 003C3A50 2C 03 00 00 */ cmpwi r3, 0 +/* 803C6AF4 003C3A54 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C6AF8 003C3A58 40 82 00 18 */ bne lbl_803C6B10 +/* 803C6AFC 003C3A5C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6B00 003C3A60 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C6B04 003C3A64 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6B08 003C3A68 42 00 FF AC */ bdnz lbl_803C6AB4 +/* 803C6B0C 003C3A6C 48 00 01 DC */ b lbl_803C6CE8 +lbl_803C6B10: +/* 803C6B10 003C3A70 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C6B14 003C3A74 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6B18 003C3A78 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C6B1C 003C3A7C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6B20 003C3A80 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C6B24 003C3A84 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6B28 003C3A88 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C6B2C 003C3A8C A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6B30 003C3A90 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C6B34 003C3A94 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6B38 003C3A98 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C6B3C 003C3A9C 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C6B40 003C3AA0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6B44 003C3AA4 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C6B48 003C3AA8 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C6B4C 003C3AAC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6B50 003C3AB0 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C6B54 003C3AB4 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6B58 003C3AB8 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C6B5C 003C3ABC F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C6B60 003C3AC0 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C6B64 003C3AC4 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C6B68 003C3AC8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C6B6C 003C3ACC 7C C6 03 78 */ or r6, r6, r0 +/* 803C6B70 003C3AD0 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C6B74 003C3AD4 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6B78 003C3AD8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C6B7C 003C3ADC 42 00 FF 58 */ bdnz lbl_803C6AD4 +/* 803C6B80 003C3AE0 48 00 01 68 */ b lbl_803C6CE8 +lbl_803C6B84: +/* 803C6B84 003C3AE4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C6B88 003C3AE8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C6B8C 003C3AEC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6B90 003C3AF0 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C6B94 003C3AF4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6B98 003C3AF8 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C6B9C 003C3AFC 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C6BA0 003C3B00 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6BA4 003C3B04 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C6BA8 003C3B08 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C6BAC 003C3B0C 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C6BB0 003C3B10 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C6BB4 003C3B14 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6BB8 003C3B18 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C6BBC 003C3B1C 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C6BC0 003C3B20 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6BC4 003C3B24 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C6BC8 003C3B28 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C6BCC 003C3B2C A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6BD0 003C3B30 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C6BD4 003C3B34 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C6BD8 003C3B38 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6BDC 003C3B3C 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C6BE0 003C3B40 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C6BE4 003C3B44 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6BE8 003C3B48 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C6BEC 003C3B4C 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C6BF0 003C3B50 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C6BF4 003C3B54 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C6BF8 003C3B58 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C6BFC 003C3B5C 7C C6 03 78 */ or r6, r6, r0 +/* 803C6C00 003C3B60 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C6C04 003C3B64 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C6C08 003C3B68 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C6C0C 003C3B6C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C6C10 003C3B70 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6C14 003C3B74 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C6C18 003C3B78 42 00 FE BC */ bdnz lbl_803C6AD4 +/* 803C6C1C 003C3B7C 48 00 00 CC */ b lbl_803C6CE8 +lbl_803C6C20: +/* 803C6C20 003C3B80 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C6C24 003C3B84 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C6C28 003C3B88 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C6C2C 003C3B8C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C6C30 003C3B90 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C6C34 003C3B94 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C6C38 003C3B98 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C6C3C 003C3B9C 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C6C40 003C3BA0 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C6C44 003C3BA4 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6C48 003C3BA8 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C6C4C 003C3BAC 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C6C50 003C3BB0 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C6C54 003C3BB4 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C6C58 003C3BB8 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6C5C 003C3BBC 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C6C60 003C3BC0 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C6C64 003C3BC4 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C6C68 003C3BC8 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6C6C 003C3BCC 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C6C70 003C3BD0 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C6C74 003C3BD4 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C6C78 003C3BD8 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6C7C 003C3BDC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6C80 003C3BE0 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C6C84 003C3BE4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C6C88 003C3BE8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C6C8C 003C3BEC 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6C90 003C3BF0 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C6C94 003C3BF4 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C6C98 003C3BF8 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6C9C 003C3BFC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C6CA0 003C3C00 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C6CA4 003C3C04 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6CA8 003C3C08 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C6CAC 003C3C0C 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C6CB0 003C3C10 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6CB4 003C3C14 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C6CB8 003C3C18 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C6CBC 003C3C1C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6CC0 003C3C20 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C6CC4 003C3C24 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C6CC8 003C3C28 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C6CCC 003C3C2C F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C6CD0 003C3C30 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C6CD4 003C3C34 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C6CD8 003C3C38 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C6CDC 003C3C3C 7C C6 03 78 */ or r6, r6, r0 +/* 803C6CE0 003C3C40 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C6CE4 003C3C44 42 00 FD F0 */ bdnz lbl_803C6AD4 +lbl_803C6CE8: +/* 803C6CE8 003C3C48 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C6CEC 003C3C4C 7F C9 F3 78 */ mr r9, r30 +/* 803C6CF0 003C3C50 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C6CF4 003C3C54 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C6CF8 003C3C58 54 07 18 38 */ slwi r7, r0, 3 +/* 803C6CFC 003C3C5C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C6D00 003C3C60 54 83 10 3A */ slwi r3, r4, 2 +/* 803C6D04 003C3C64 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C6D08 003C3C68 54 06 10 3A */ slwi r6, r0, 2 +/* 803C6D0C 003C3C6C 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C6D10 003C3C70 7C E7 1A 14 */ add r7, r7, r3 +/* 803C6D14 003C3C74 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C6D18 003C3C78 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C6D1C 003C3C7C 7C C7 32 14 */ add r6, r7, r6 +/* 803C6D20 003C3C80 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C6D24 003C3C84 38 00 00 03 */ li r0, 3 +/* 803C6D28 003C3C88 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C6D2C 003C3C8C 7C A8 3A 14 */ add r5, r8, r7 +/* 803C6D30 003C3C90 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C6D34 003C3C94 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C6D38 003C3C98 7C 68 32 14 */ add r3, r8, r6 +/* 803C6D3C 003C3C9C 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C6D40 003C3CA0 7C 09 03 A6 */ mtctr r0 +lbl_803C6D44: +/* 803C6D44 003C3CA4 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C6D48 003C3CA8 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C6D4C 003C3CAC E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C6D50 003C3CB0 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C6D54 003C3CB4 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6D58 003C3CB8 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C6D5C 003C3CBC 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C6D60 003C3CC0 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C6D64 003C3CC4 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6D68 003C3CC8 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C6D6C 003C3CCC 39 29 00 08 */ addi r9, r9, 8 +/* 803C6D70 003C3CD0 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C6D74 003C3CD4 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C6D78 003C3CD8 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C6D7C 003C3CDC 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6D80 003C3CE0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6D84 003C3CE4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C6D88 003C3CE8 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C6D8C 003C3CEC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C6D90 003C3CF0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6D94 003C3CF4 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C6D98 003C3CF8 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C6D9C 003C3CFC 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C6DA0 003C3D00 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C6DA4 003C3D04 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6DA8 003C3D08 38 E7 00 02 */ addi r7, r7, 2 +/* 803C6DAC 003C3D0C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C6DB0 003C3D10 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C6DB4 003C3D14 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C6DB8 003C3D18 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C6DBC 003C3D1C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C6DC0 003C3D20 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C6DC4 003C3D24 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C6DC8 003C3D28 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C6DCC 003C3D2C F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C6DD0 003C3D30 38 C6 00 02 */ addi r6, r6, 2 +/* 803C6DD4 003C3D34 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C6DD8 003C3D38 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C6DDC 003C3D3C F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C6DE0 003C3D40 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C6DE4 003C3D44 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C6DE8 003C3D48 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C6DEC 003C3D4C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C6DF0 003C3D50 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C6DF4 003C3D54 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C6DF8 003C3D58 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C6DFC 003C3D5C 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C6E00 003C3D60 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C6E04 003C3D64 7C A8 3A 14 */ add r5, r8, r7 +/* 803C6E08 003C3D68 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C6E0C 003C3D6C F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C6E10 003C3D70 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C6E14 003C3D74 7C 68 32 14 */ add r3, r8, r6 +/* 803C6E18 003C3D78 42 00 FF 2C */ bdnz lbl_803C6D44 +/* 803C6E1C 003C3D7C E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C6E20 003C3D80 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C6E24 003C3D84 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C6E28 003C3D88 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C6E2C 003C3D8C 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C6E30 003C3D90 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C6E34 003C3D94 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C6E38 003C3D98 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C6E3C 003C3D9C 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C6E40 003C3DA0 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C6E44 003C3DA4 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C6E48 003C3DA8 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C6E4C 003C3DAC 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C6E50 003C3DB0 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C6E54 003C3DB4 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C6E58 003C3DB8 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C6E5C 003C3DBC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C6E60 003C3DC0 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C6E64 003C3DC4 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C6E68 003C3DC8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C6E6C 003C3DCC 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C6E70 003C3DD0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C6E74 003C3DD4 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C6E78 003C3DD8 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C6E7C 003C3DDC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C6E80 003C3DE0 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C6E84 003C3DE4 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C6E88 003C3DE8 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C6E8C 003C3DEC 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C6E90 003C3DF0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C6E94 003C3DF4 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C6E98 003C3DF8 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C6E9C 003C3DFC 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C6EA0 003C3E00 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C6EA4 003C3E04 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C6EA8 003C3E08 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C6EAC 003C3E0C F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C6EB0 003C3E10 81 1E 01 24 */ lwz r8, 0x124(r30) +/* 803C6EB4 003C3E14 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C6EB8 003C3E18 39 24 00 08 */ addi r9, r4, 8 +/* 803C6EBC 003C3E1C 39 5E FF F8 */ addi r10, r30, -8 +/* 803C6EC0 003C3E20 38 60 00 08 */ li r3, 8 +/* 803C6EC4 003C3E24 7C 69 03 A6 */ mtctr r3 +lbl_803C6EC8: +/* 803C6EC8 003C3E28 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6ECC 003C3E2C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6ED0 003C3E30 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6ED4 003C3E34 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6ED8 003C3E38 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6EDC 003C3E3C 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6EE0 003C3E40 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6EE4 003C3E44 7C C6 03 78 */ or r6, r6, r0 +lbl_803C6EE8: +/* 803C6EE8 003C3E48 2C 06 00 00 */ cmpwi r6, 0 +/* 803C6EEC 003C3E4C 40 82 01 48 */ bne lbl_803C7034 +/* 803C6EF0 003C3E50 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C6EF4 003C3E54 2C 05 00 00 */ cmpwi r5, 0 +/* 803C6EF8 003C3E58 F0 8A 00 08 */ psq_st f4, 8(r10), 0, qr0 +/* 803C6EFC 003C3E5C 40 82 00 9C */ bne lbl_803C6F98 +/* 803C6F00 003C3E60 F0 8A 00 10 */ psq_st f4, 16(r10), 0, qr0 +/* 803C6F04 003C3E64 2C 03 00 00 */ cmpwi r3, 0 +/* 803C6F08 003C3E68 F0 8A 00 18 */ psq_st f4, 24(r10), 0, qr0 +/* 803C6F0C 003C3E6C 40 82 00 18 */ bne lbl_803C6F24 +/* 803C6F10 003C3E70 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6F14 003C3E74 F4 8A 00 20 */ psq_stu f4, 32(r10), 0, qr0 +/* 803C6F18 003C3E78 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6F1C 003C3E7C 42 00 FF AC */ bdnz lbl_803C6EC8 +/* 803C6F20 003C3E80 48 00 01 DC */ b lbl_803C70FC +lbl_803C6F24: +/* 803C6F24 003C3E84 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C6F28 003C3E88 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6F2C 003C3E8C 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C6F30 003C3E90 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6F34 003C3E94 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C6F38 003C3E98 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6F3C 003C3E9C 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C6F40 003C3EA0 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6F44 003C3EA4 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C6F48 003C3EA8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6F4C 003C3EAC 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C6F50 003C3EB0 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C6F54 003C3EB4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6F58 003C3EB8 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C6F5C 003C3EBC 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C6F60 003C3EC0 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6F64 003C3EC4 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C6F68 003C3EC8 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6F6C 003C3ECC 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C6F70 003C3ED0 F5 0A 00 08 */ psq_stu f8, 8(r10), 0, qr0 +/* 803C6F74 003C3ED4 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C6F78 003C3ED8 F4 6A 00 08 */ psq_stu f3, 8(r10), 0, qr0 +/* 803C6F7C 003C3EDC 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C6F80 003C3EE0 7C C6 03 78 */ or r6, r6, r0 +/* 803C6F84 003C3EE4 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 +/* 803C6F88 003C3EE8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C6F8C 003C3EEC F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 +/* 803C6F90 003C3EF0 42 00 FF 58 */ bdnz lbl_803C6EE8 +/* 803C6F94 003C3EF4 48 00 01 68 */ b lbl_803C70FC +lbl_803C6F98: +/* 803C6F98 003C3EF8 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C6F9C 003C3EFC E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C6FA0 003C3F00 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C6FA4 003C3F04 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C6FA8 003C3F08 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C6FAC 003C3F0C 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C6FB0 003C3F10 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C6FB4 003C3F14 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C6FB8 003C3F18 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C6FBC 003C3F1C 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C6FC0 003C3F20 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C6FC4 003C3F24 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C6FC8 003C3F28 80 08 00 08 */ lwz r0, 8(r8) +/* 803C6FCC 003C3F2C 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C6FD0 003C3F30 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C6FD4 003C3F34 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C6FD8 003C3F38 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C6FDC 003C3F3C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C6FE0 003C3F40 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C6FE4 003C3F44 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C6FE8 003C3F48 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C6FEC 003C3F4C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C6FF0 003C3F50 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C6FF4 003C3F54 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C6FF8 003C3F58 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C6FFC 003C3F5C 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C7000 003C3F60 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C7004 003C3F64 F4 4A 00 08 */ psq_stu f2, 8(r10), 0, qr0 +/* 803C7008 003C3F68 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C700C 003C3F6C 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C7010 003C3F70 7C C6 03 78 */ or r6, r6, r0 +/* 803C7014 003C3F74 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 +/* 803C7018 003C3F78 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C701C 003C3F7C 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C7020 003C3F80 F4 2A 00 08 */ psq_stu f1, 8(r10), 0, qr0 +/* 803C7024 003C3F84 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C7028 003C3F88 F5 6A 00 08 */ psq_stu f11, 8(r10), 0, qr0 +/* 803C702C 003C3F8C 42 00 FE BC */ bdnz lbl_803C6EE8 +/* 803C7030 003C3F90 48 00 00 CC */ b lbl_803C70FC +lbl_803C7034: +/* 803C7034 003C3F94 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C7038 003C3F98 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C703C 003C3F9C 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C7040 003C3FA0 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C7044 003C3FA4 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C7048 003C3FA8 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C704C 003C3FAC E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C7050 003C3FB0 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C7054 003C3FB4 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C7058 003C3FB8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C705C 003C3FBC 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C7060 003C3FC0 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C7064 003C3FC4 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C7068 003C3FC8 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C706C 003C3FCC 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C7070 003C3FD0 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C7074 003C3FD4 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C7078 003C3FD8 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C707C 003C3FDC 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C7080 003C3FE0 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C7084 003C3FE4 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C7088 003C3FE8 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C708C 003C3FEC 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C7090 003C3FF0 80 08 00 08 */ lwz r0, 8(r8) +/* 803C7094 003C3FF4 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C7098 003C3FF8 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C709C 003C3FFC 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C70A0 003C4000 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C70A4 003C4004 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C70A8 003C4008 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C70AC 003C400C A0 68 00 02 */ lhz r3, 2(r8) +/* 803C70B0 003C4010 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C70B4 003C4014 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C70B8 003C4018 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C70BC 003C401C 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C70C0 003C4020 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C70C4 003C4024 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C70C8 003C4028 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C70CC 003C402C 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C70D0 003C4030 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C70D4 003C4034 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C70D8 003C4038 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C70DC 003C403C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C70E0 003C4040 F5 8A 00 08 */ psq_stu f12, 8(r10), 0, qr0 +/* 803C70E4 003C4044 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C70E8 003C4048 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 +/* 803C70EC 003C404C F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 +/* 803C70F0 003C4050 7C C6 03 78 */ or r6, r6, r0 +/* 803C70F4 003C4054 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 +/* 803C70F8 003C4058 42 00 FD F0 */ bdnz lbl_803C6EE8 +lbl_803C70FC: +/* 803C70FC 003C405C 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C7100 003C4060 7F CA F3 78 */ mr r10, r30 +/* 803C7104 003C4064 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C7108 003C4068 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 +/* 803C710C 003C406C 54 07 18 38 */ slwi r7, r0, 3 +/* 803C7110 003C4070 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 +/* 803C7114 003C4074 55 29 10 3A */ slwi r9, r9, 2 +/* 803C7118 003C4078 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 +/* 803C711C 003C407C 54 06 10 3A */ slwi r6, r0, 2 +/* 803C7120 003C4080 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C7124 003C4084 7C E7 4A 14 */ add r7, r7, r9 +/* 803C7128 003C4088 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 +/* 803C712C 003C408C 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C7130 003C4090 7C C7 32 14 */ add r6, r7, r6 +/* 803C7134 003C4094 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C7138 003C4098 38 00 00 03 */ li r0, 3 +/* 803C713C 003C409C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C7140 003C40A0 7C A8 3A 14 */ add r5, r8, r7 +/* 803C7144 003C40A4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C7148 003C40A8 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C714C 003C40AC 7C 68 32 14 */ add r3, r8, r6 +/* 803C7150 003C40B0 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C7154 003C40B4 7C 09 03 A6 */ mtctr r0 +lbl_803C7158: +/* 803C7158 003C40B8 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 +/* 803C715C 003C40BC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C7160 003C40C0 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 +/* 803C7164 003C40C4 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C7168 003C40C8 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C716C 003C40CC E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 +/* 803C7170 003C40D0 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C7174 003C40D4 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 +/* 803C7178 003C40D8 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C717C 003C40DC 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C7180 003C40E0 39 4A 00 08 */ addi r10, r10, 8 +/* 803C7184 003C40E4 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C7188 003C40E8 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C718C 003C40EC E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 +/* 803C7190 003C40F0 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C7194 003C40F4 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C7198 003C40F8 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C719C 003C40FC E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 +/* 803C71A0 003C4100 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C71A4 003C4104 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C71A8 003C4108 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 +/* 803C71AC 003C410C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C71B0 003C4110 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C71B4 003C4114 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 +/* 803C71B8 003C4118 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C71BC 003C411C 38 E7 00 02 */ addi r7, r7, 2 +/* 803C71C0 003C4120 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C71C4 003C4124 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C71C8 003C4128 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C71CC 003C412C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C71D0 003C4130 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C71D4 003C4134 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C71D8 003C4138 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C71DC 003C413C 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C71E0 003C4140 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C71E4 003C4144 38 C6 00 02 */ addi r6, r6, 2 +/* 803C71E8 003C4148 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C71EC 003C414C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C71F0 003C4150 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C71F4 003C4154 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C71F8 003C4158 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C71FC 003C415C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C7200 003C4160 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C7204 003C4164 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C7208 003C4168 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C720C 003C416C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C7210 003C4170 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C7214 003C4174 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C7218 003C4178 7C A8 3A 14 */ add r5, r8, r7 +/* 803C721C 003C417C 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C7220 003C4180 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C7224 003C4184 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C7228 003C4188 7C 68 32 14 */ add r3, r8, r6 +/* 803C722C 003C418C 42 00 FF 2C */ bdnz lbl_803C7158 +/* 803C7230 003C4190 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 +/* 803C7234 003C4194 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C7238 003C4198 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 +/* 803C723C 003C419C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C7240 003C41A0 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C7244 003C41A4 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 +/* 803C7248 003C41A8 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C724C 003C41AC E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 +/* 803C7250 003C41B0 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C7254 003C41B4 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C7258 003C41B8 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C725C 003C41BC 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C7260 003C41C0 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C7264 003C41C4 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C7268 003C41C8 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C726C 003C41CC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C7270 003C41D0 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C7274 003C41D4 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C7278 003C41D8 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C727C 003C41DC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C7280 003C41E0 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C7284 003C41E4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C7288 003C41E8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C728C 003C41EC 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C7290 003C41F0 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C7294 003C41F4 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C7298 003C41F8 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C729C 003C41FC 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C72A0 003C4200 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C72A4 003C4204 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C72A8 003C4208 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C72AC 003C420C F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C72B0 003C4210 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C72B4 003C4214 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C72B8 003C4218 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C72BC 003C421C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C72C0 003C4220 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C72C4 003C4224 80 1E 01 10 */ lwz r0, 0x110(r30) +/* 803C72C8 003C4228 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C72CC 003C422C 54 84 F8 7E */ srwi r4, r4, 1 +/* 803C72D0 003C4230 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) +/* 803C72D4 003C4234 39 3E FF F8 */ addi r9, r30, -8 +/* 803C72D8 003C4238 93 ED B1 20 */ stw r31, lbl_805A9CE0@sda21(r13) +/* 803C72DC 003C423C 88 03 06 86 */ lbz r0, 0x686(r3) +/* 803C72E0 003C4240 54 00 40 2E */ slwi r0, r0, 8 +/* 803C72E4 003C4244 7C 03 02 14 */ add r0, r3, r0 +/* 803C72E8 003C4248 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C72EC 003C424C 81 1E 01 28 */ lwz r8, 0x128(r30) +/* 803C72F0 003C4250 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C72F4 003C4254 38 60 00 08 */ li r3, 8 +/* 803C72F8 003C4258 7C 69 03 A6 */ mtctr r3 +lbl_803C72FC: +/* 803C72FC 003C425C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C7300 003C4260 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C7304 003C4264 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C7308 003C4268 80 08 00 08 */ lwz r0, 8(r8) +/* 803C730C 003C426C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C7310 003C4270 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C7314 003C4274 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C7318 003C4278 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C731C: +/* 803C731C 003C427C 2C 06 00 00 */ cmpwi r6, 0 +/* 803C7320 003C4280 40 82 01 48 */ bne lbl_803C7468 +/* 803C7324 003C4284 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C7328 003C4288 2C 05 00 00 */ cmpwi r5, 0 +/* 803C732C 003C428C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 +/* 803C7330 003C4290 40 82 00 9C */ bne lbl_803C73CC +/* 803C7334 003C4294 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 +/* 803C7338 003C4298 2C 03 00 00 */ cmpwi r3, 0 +/* 803C733C 003C429C F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 +/* 803C7340 003C42A0 40 82 00 18 */ bne lbl_803C7358 +/* 803C7344 003C42A4 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C7348 003C42A8 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 +/* 803C734C 003C42AC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C7350 003C42B0 42 00 FF AC */ bdnz lbl_803C72FC +/* 803C7354 003C42B4 48 00 01 DC */ b lbl_803C7530 +lbl_803C7358: +/* 803C7358 003C42B8 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C735C 003C42BC 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C7360 003C42C0 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C7364 003C42C4 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C7368 003C42C8 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C736C 003C42CC 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C7370 003C42D0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C7374 003C42D4 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C7378 003C42D8 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C737C 003C42DC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C7380 003C42E0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C7384 003C42E4 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C7388 003C42E8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C738C 003C42EC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C7390 003C42F0 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C7394 003C42F4 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C7398 003C42F8 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C739C 003C42FC 80 08 00 08 */ lwz r0, 8(r8) +/* 803C73A0 003C4300 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C73A4 003C4304 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 +/* 803C73A8 003C4308 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C73AC 003C430C F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 +/* 803C73B0 003C4310 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C73B4 003C4314 7C C6 03 78 */ or r6, r6, r0 +/* 803C73B8 003C4318 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C73BC 003C431C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C73C0 003C4320 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C73C4 003C4324 42 00 FF 58 */ bdnz lbl_803C731C +/* 803C73C8 003C4328 48 00 01 68 */ b lbl_803C7530 +lbl_803C73CC: +/* 803C73CC 003C432C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 +/* 803C73D0 003C4330 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C73D4 003C4334 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C73D8 003C4338 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C73DC 003C433C 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C73E0 003C4340 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C73E4 003C4344 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C73E8 003C4348 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C73EC 003C434C 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C73F0 003C4350 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C73F4 003C4354 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C73F8 003C4358 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C73FC 003C435C 80 08 00 08 */ lwz r0, 8(r8) +/* 803C7400 003C4360 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C7404 003C4364 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C7408 003C4368 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C740C 003C436C 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C7410 003C4370 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C7414 003C4374 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C7418 003C4378 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C741C 003C437C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C7420 003C4380 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C7424 003C4384 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C7428 003C4388 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C742C 003C438C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C7430 003C4390 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C7434 003C4394 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C7438 003C4398 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 +/* 803C743C 003C439C 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C7440 003C43A0 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C7444 003C43A4 7C C6 03 78 */ or r6, r6, r0 +/* 803C7448 003C43A8 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C744C 003C43AC 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C7450 003C43B0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C7454 003C43B4 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 +/* 803C7458 003C43B8 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C745C 003C43BC F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 +/* 803C7460 003C43C0 42 00 FE BC */ bdnz lbl_803C731C +/* 803C7464 003C43C4 48 00 00 CC */ b lbl_803C7530 +lbl_803C7468: +/* 803C7468 003C43C8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 +/* 803C746C 003C43CC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C7470 003C43D0 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C7474 003C43D4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 +/* 803C7478 003C43D8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C747C 003C43DC 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C7480 003C43E0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 +/* 803C7484 003C43E4 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C7488 003C43E8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C748C 003C43EC 39 08 00 10 */ addi r8, r8, 0x10 +/* 803C7490 003C43F0 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C7494 003C43F4 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C7498 003C43F8 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C749C 003C43FC 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C74A0 003C4400 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C74A4 003C4404 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C74A8 003C4408 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C74AC 003C440C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C74B0 003C4410 80 C8 00 0C */ lwz r6, 0xc(r8) +/* 803C74B4 003C4414 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C74B8 003C4418 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C74BC 003C441C 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C74C0 003C4420 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C74C4 003C4424 80 08 00 08 */ lwz r0, 8(r8) +/* 803C74C8 003C4428 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C74CC 003C442C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C74D0 003C4430 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C74D4 003C4434 80 A8 00 04 */ lwz r5, 4(r8) +/* 803C74D8 003C4438 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C74DC 003C443C 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C74E0 003C4440 A0 68 00 02 */ lhz r3, 2(r8) +/* 803C74E4 003C4444 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C74E8 003C4448 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C74EC 003C444C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 +/* 803C74F0 003C4450 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C74F4 003C4454 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C74F8 003C4458 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C74FC 003C445C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C7500 003C4460 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C7504 003C4464 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C7508 003C4468 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C750C 003C446C 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C7510 003C4470 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C7514 003C4474 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 +/* 803C7518 003C4478 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C751C 003C447C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 +/* 803C7520 003C4480 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 +/* 803C7524 003C4484 7C C6 03 78 */ or r6, r6, r0 +/* 803C7528 003C4488 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 +/* 803C752C 003C448C 42 00 FD F0 */ bdnz lbl_803C731C +lbl_803C7530: +/* 803C7530 003C4490 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) +/* 803C7534 003C4494 7F C9 F3 78 */ mr r9, r30 +/* 803C7538 003C4498 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C753C 003C449C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C7540 003C44A0 54 83 10 3A */ slwi r3, r4, 2 +/* 803C7544 003C44A4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C7548 003C44A8 54 06 10 3A */ slwi r6, r0, 2 +/* 803C754C 003C44AC E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C7550 003C44B0 7C 67 1B 78 */ mr r7, r3 +/* 803C7554 003C44B4 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C7558 003C44B8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C755C 003C44BC 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C7560 003C44C0 7C C7 32 14 */ add r6, r7, r6 +/* 803C7564 003C44C4 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C7568 003C44C8 38 00 00 03 */ li r0, 3 +/* 803C756C 003C44CC 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C7570 003C44D0 7C A8 3A 14 */ add r5, r8, r7 +/* 803C7574 003C44D4 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C7578 003C44D8 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C757C 003C44DC 7C 68 32 14 */ add r3, r8, r6 +/* 803C7580 003C44E0 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C7584 003C44E4 7C 09 03 A6 */ mtctr r0 +lbl_803C7588: +/* 803C7588 003C44E8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C758C 003C44EC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C7590 003C44F0 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C7594 003C44F4 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C7598 003C44F8 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C759C 003C44FC E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C75A0 003C4500 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C75A4 003C4504 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C75A8 003C4508 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C75AC 003C450C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C75B0 003C4510 39 29 00 08 */ addi r9, r9, 8 +/* 803C75B4 003C4514 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C75B8 003C4518 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C75BC 003C451C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 +/* 803C75C0 003C4520 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C75C4 003C4524 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C75C8 003C4528 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C75CC 003C452C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 +/* 803C75D0 003C4530 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C75D4 003C4534 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C75D8 003C4538 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 +/* 803C75DC 003C453C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C75E0 003C4540 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C75E4 003C4544 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 +/* 803C75E8 003C4548 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C75EC 003C454C 38 E7 00 02 */ addi r7, r7, 2 +/* 803C75F0 003C4550 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C75F4 003C4554 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C75F8 003C4558 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C75FC 003C455C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C7600 003C4560 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C7604 003C4564 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C7608 003C4568 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C760C 003C456C 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C7610 003C4570 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C7614 003C4574 38 C6 00 02 */ addi r6, r6, 2 +/* 803C7618 003C4578 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C761C 003C457C 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C7620 003C4580 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C7624 003C4584 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C7628 003C4588 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C762C 003C458C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C7630 003C4590 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C7634 003C4594 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C7638 003C4598 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C763C 003C459C 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C7640 003C45A0 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C7644 003C45A4 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C7648 003C45A8 7C A8 3A 14 */ add r5, r8, r7 +/* 803C764C 003C45AC 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C7650 003C45B0 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C7654 003C45B4 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C7658 003C45B8 7C 68 32 14 */ add r3, r8, r6 +/* 803C765C 003C45BC 42 00 FF 2C */ bdnz lbl_803C7588 +/* 803C7660 003C45C0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 +/* 803C7664 003C45C4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C7668 003C45C8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 +/* 803C766C 003C45CC 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C7670 003C45D0 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C7674 003C45D4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 +/* 803C7678 003C45D8 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C767C 003C45DC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 +/* 803C7680 003C45E0 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C7684 003C45E4 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C7688 003C45E8 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C768C 003C45EC 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C7690 003C45F0 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C7694 003C45F4 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C7698 003C45F8 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C769C 003C45FC 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C76A0 003C4600 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C76A4 003C4604 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C76A8 003C4608 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C76AC 003C460C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 +/* 803C76B0 003C4610 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C76B4 003C4614 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C76B8 003C4618 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C76BC 003C461C 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C76C0 003C4620 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C76C4 003C4624 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C76C8 003C4628 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 +/* 803C76CC 003C462C 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C76D0 003C4630 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C76D4 003C4634 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C76D8 003C4638 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 +/* 803C76DC 003C463C 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C76E0 003C4640 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C76E4 003C4644 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 +/* 803C76E8 003C4648 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C76EC 003C464C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C76F0 003C4650 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C76F4 003C4654 80 1E 01 14 */ lwz r0, 0x114(r30) +/* 803C76F8 003C4658 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C76FC 003C465C 39 1E FF F8 */ addi r8, r30, -8 +/* 803C7700 003C4660 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) +/* 803C7704 003C4664 88 03 06 8C */ lbz r0, 0x68c(r3) +/* 803C7708 003C4668 54 00 40 2E */ slwi r0, r0, 8 +/* 803C770C 003C466C 7C 03 02 14 */ add r0, r3, r0 +/* 803C7710 003C4670 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) +/* 803C7714 003C4674 81 3E 01 2C */ lwz r9, 0x12c(r30) +/* 803C7718 003C4678 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) +/* 803C771C 003C467C 38 60 00 08 */ li r3, 8 +/* 803C7720 003C4680 7C 69 03 A6 */ mtctr r3 +lbl_803C7724: +/* 803C7724 003C4684 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C7728 003C4688 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C772C 003C468C 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C7730 003C4690 80 09 00 08 */ lwz r0, 8(r9) +/* 803C7734 003C4694 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C7738 003C4698 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C773C 003C469C A0 69 00 02 */ lhz r3, 2(r9) +/* 803C7740 003C46A0 7C C6 03 79 */ or. r6, r6, r0 +lbl_803C7744: +/* 803C7744 003C46A4 2C 06 00 00 */ cmpwi r6, 0 +/* 803C7748 003C46A8 40 82 01 48 */ bne lbl_803C7890 +/* 803C774C 003C46AC 10 87 3C 20 */ ps_merge00 f4, f7, f7 +/* 803C7750 003C46B0 2C 05 00 00 */ cmpwi r5, 0 +/* 803C7754 003C46B4 F0 88 00 08 */ psq_st f4, 8(r8), 0, qr0 +/* 803C7758 003C46B8 40 82 00 9C */ bne lbl_803C77F4 +/* 803C775C 003C46BC F0 88 00 10 */ psq_st f4, 16(r8), 0, qr0 +/* 803C7760 003C46C0 2C 03 00 00 */ cmpwi r3, 0 +/* 803C7764 003C46C4 F0 88 00 18 */ psq_st f4, 24(r8), 0, qr0 +/* 803C7768 003C46C8 40 82 00 18 */ bne lbl_803C7780 +/* 803C776C 003C46CC 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C7770 003C46D0 F4 88 00 20 */ psq_stu f4, 32(r8), 0, qr0 +/* 803C7774 003C46D4 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C7778 003C46D8 42 00 FF AC */ bdnz lbl_803C7724 +/* 803C777C 003C46DC 48 00 01 DC */ b lbl_803C7958 +lbl_803C7780: +/* 803C7780 003C46E0 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C7784 003C46E4 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 +/* 803C7788 003C46E8 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C778C 003C46EC 10 47 3C 20 */ ps_merge00 f2, f7, f7 +/* 803C7790 003C46F0 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C7794 003C46F4 10 3C E8 28 */ ps_sub f1, f28, f29 +/* 803C7798 003C46F8 11 87 6E F8 */ ps_msub f12, f7, f27, f13 +/* 803C779C 003C46FC A0 69 00 02 */ lhz r3, 2(r9) +/* 803C77A0 003C4700 11 47 6C E0 */ ps_merge11 f10, f7, f13 +/* 803C77A4 003C4704 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C77A8 003C4708 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 +/* 803C77AC 003C470C 11 02 50 2A */ ps_add f8, f2, f10 +/* 803C77B0 003C4710 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C77B4 003C4714 11 2C 5C E0 */ ps_merge11 f9, f12, f11 +/* 803C77B8 003C4718 11 42 50 28 */ ps_sub f10, f2, f10 +/* 803C77BC 003C471C 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C77C0 003C4720 10 62 48 2A */ ps_add f3, f2, f9 +/* 803C77C4 003C4724 80 09 00 08 */ lwz r0, 8(r9) +/* 803C77C8 003C4728 11 22 48 28 */ ps_sub f9, f2, f9 +/* 803C77CC 003C472C F5 08 00 08 */ psq_stu f8, 8(r8), 0, qr0 +/* 803C77D0 003C4730 11 29 4C A0 */ ps_merge10 f9, f9, f9 +/* 803C77D4 003C4734 F4 68 00 08 */ psq_stu f3, 8(r8), 0, qr0 +/* 803C77D8 003C4738 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C77DC 003C473C 7C C6 03 78 */ or r6, r6, r0 +/* 803C77E0 003C4740 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 +/* 803C77E4 003C4744 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C77E8 003C4748 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 +/* 803C77EC 003C474C 42 00 FF 58 */ bdnz lbl_803C7744 +/* 803C77F0 003C4750 48 00 01 68 */ b lbl_803C7958 +lbl_803C77F4: +/* 803C77F4 003C4754 E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 +/* 803C77F8 003C4758 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 +/* 803C77FC 003C475C 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C7800 003C4760 10 21 00 B2 */ ps_mul f1, f1, f2 +/* 803C7804 003C4764 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C7808 003C4768 11 87 08 28 */ ps_sub f12, f7, f1 +/* 803C780C 003C476C 11 A7 08 2A */ ps_add f13, f7, f1 +/* 803C7810 003C4770 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C7814 003C4774 11 61 66 FA */ ps_madd f11, f1, f27, f12 +/* 803C7818 003C4778 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 +/* 803C781C 003C477C 10 6C 07 32 */ ps_mul f3, f12, f28 +/* 803C7820 003C4780 11 6D 5C 20 */ ps_merge00 f11, f13, f11 +/* 803C7824 003C4784 80 09 00 08 */ lwz r0, 8(r9) +/* 803C7828 003C4788 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 +/* 803C782C 003C478C 11 4A 64 20 */ ps_merge00 f10, f10, f12 +/* 803C7830 003C4790 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C7834 003C4794 11 29 68 28 */ ps_sub f9, f9, f13 +/* 803C7838 003C4798 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 +/* 803C783C 003C479C A0 69 00 02 */ lhz r3, 2(r9) +/* 803C7840 003C47A0 11 AD 4C E0 */ ps_merge11 f13, f13, f9 +/* 803C7844 003C47A4 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 +/* 803C7848 003C47A8 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C784C 003C47AC 10 4B 68 2A */ ps_add f2, f11, f13 +/* 803C7850 003C47B0 11 08 18 28 */ ps_sub f8, f8, f3 +/* 803C7854 003C47B4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C7858 003C47B8 11 83 44 E0 */ ps_merge11 f12, f3, f8 +/* 803C785C 003C47BC 11 6B 68 28 */ ps_sub f11, f11, f13 +/* 803C7860 003C47C0 F4 48 00 08 */ psq_stu f2, 8(r8), 0, qr0 +/* 803C7864 003C47C4 10 8A 60 2A */ ps_add f4, f10, f12 +/* 803C7868 003C47C8 10 2A 60 28 */ ps_sub f1, f10, f12 +/* 803C786C 003C47CC 7C C6 03 78 */ or r6, r6, r0 +/* 803C7870 003C47D0 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 +/* 803C7874 003C47D4 10 21 0C A0 */ ps_merge10 f1, f1, f1 +/* 803C7878 003C47D8 11 6B 5C A0 */ ps_merge10 f11, f11, f11 +/* 803C787C 003C47DC F4 28 00 08 */ psq_stu f1, 8(r8), 0, qr0 +/* 803C7880 003C47E0 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C7884 003C47E4 F5 68 00 08 */ psq_stu f11, 8(r8), 0, qr0 +/* 803C7888 003C47E8 42 00 FE BC */ bdnz lbl_803C7744 +/* 803C788C 003C47EC 48 00 00 CC */ b lbl_803C7958 +lbl_803C7890: +/* 803C7890 003C47F0 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 +/* 803C7894 003C47F4 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 +/* 803C7898 003C47F8 10 42 02 B2 */ ps_mul f2, f2, f10 +/* 803C789C 003C47FC E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 +/* 803C78A0 003C4800 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 +/* 803C78A4 003C4804 10 87 14 60 */ ps_merge01 f4, f7, f2 +/* 803C78A8 003C4808 E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 +/* 803C78AC 003C480C 10 22 3C 60 */ ps_merge01 f1, f2, f7 +/* 803C78B0 003C4810 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 +/* 803C78B4 003C4814 39 29 00 10 */ addi r9, r9, 0x10 +/* 803C78B8 003C4818 11 6D 22 7A */ ps_madd f11, f13, f9, f4 +/* 803C78BC 003C481C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 +/* 803C78C0 003C4820 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 +/* 803C78C4 003C4824 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 +/* 803C78C8 003C4828 38 E7 00 20 */ addi r7, r7, 0x20 +/* 803C78CC 003C482C 10 8B 48 2A */ ps_add f4, f11, f9 +/* 803C78D0 003C4830 11 8B 48 28 */ ps_sub f12, f11, f9 +/* 803C78D4 003C4834 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 +/* 803C78D8 003C4838 80 C9 00 0C */ lwz r6, 0xc(r9) +/* 803C78DC 003C483C 10 68 50 28 */ ps_sub f3, f8, f10 +/* 803C78E0 003C4840 10 2A 68 2A */ ps_add f1, f10, f13 +/* 803C78E4 003C4844 11 AA 68 28 */ ps_sub f13, f10, f13 +/* 803C78E8 003C4848 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C78EC 003C484C 80 09 00 08 */ lwz r0, 8(r9) +/* 803C78F0 003C4850 10 24 0C 20 */ ps_merge00 f1, f4, f1 +/* 803C78F4 003C4854 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 +/* 803C78F8 003C4858 11 68 1F 78 */ ps_msub f11, f8, f29, f3 +/* 803C78FC 003C485C 80 A9 00 04 */ lwz r5, 4(r9) +/* 803C7900 003C4860 11 29 20 28 */ ps_sub f9, f9, f4 +/* 803C7904 003C4864 11 AD 64 20 */ ps_merge00 f13, f13, f12 +/* 803C7908 003C4868 A0 69 00 02 */ lhz r3, 2(r9) +/* 803C790C 003C486C 11 4C 4E FA */ ps_madd f10, f12, f27, f9 +/* 803C7910 003C4870 11 04 4C E0 */ ps_merge11 f8, f4, f9 +/* 803C7914 003C4874 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 +/* 803C7918 003C4878 11 6B 50 28 */ ps_sub f11, f11, f10 +/* 803C791C 003C487C 11 81 40 2A */ ps_add f12, f1, f8 +/* 803C7920 003C4880 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 +/* 803C7924 003C4884 11 6A 5C E0 */ ps_merge11 f11, f10, f11 +/* 803C7928 003C4888 10 81 40 28 */ ps_sub f4, f1, f8 +/* 803C792C 003C488C 10 E7 01 B2 */ ps_mul f7, f7, f6 +/* 803C7930 003C4890 11 4D 58 2A */ ps_add f10, f13, f11 +/* 803C7934 003C4894 11 2D 58 28 */ ps_sub f9, f13, f11 +/* 803C7938 003C4898 11 4A 54 A0 */ ps_merge10 f10, f10, f10 +/* 803C793C 003C489C F5 88 00 08 */ psq_stu f12, 8(r8), 0, qr0 +/* 803C7940 003C48A0 10 84 24 A0 */ ps_merge10 f4, f4, f4 +/* 803C7944 003C48A4 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 +/* 803C7948 003C48A8 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 +/* 803C794C 003C48AC 7C C6 03 78 */ or r6, r6, r0 +/* 803C7950 003C48B0 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 +/* 803C7954 003C48B4 42 00 FD F0 */ bdnz lbl_803C7744 +lbl_803C7958: +/* 803C7958 003C48B8 80 ED B1 00 */ lwz r7, lbl_805A9CC0@sda21(r13) +/* 803C795C 003C48BC 7F C8 F3 78 */ mr r8, r30 +/* 803C7960 003C48C0 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) +/* 803C7964 003C48C4 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 +/* 803C7968 003C48C8 54 83 10 3A */ slwi r3, r4, 2 +/* 803C796C 003C48CC E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 +/* 803C7970 003C48D0 54 05 10 3A */ slwi r5, r0, 2 +/* 803C7974 003C48D4 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 +/* 803C7978 003C48D8 7C 66 1B 78 */ mr r6, r3 +/* 803C797C 003C48DC 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C7980 003C48E0 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 +/* 803C7984 003C48E4 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C7988 003C48E8 7C A6 2A 14 */ add r5, r6, r5 +/* 803C798C 003C48EC 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C7990 003C48F0 38 00 00 03 */ li r0, 3 +/* 803C7994 003C48F4 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C7998 003C48F8 7C 87 32 14 */ add r4, r7, r6 +/* 803C799C 003C48FC 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C79A0 003C4900 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C79A4 003C4904 7C 67 2A 14 */ add r3, r7, r5 +/* 803C79A8 003C4908 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C79AC 003C490C 7C 09 03 A6 */ mtctr r0 +lbl_803C79B0: +/* 803C79B0 003C4910 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 +/* 803C79B4 003C4914 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C79B8 003C4918 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 +/* 803C79BC 003C491C 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C79C0 003C4920 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C79C4 003C4924 E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 +/* 803C79C8 003C4928 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C79CC 003C492C E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 +/* 803C79D0 003C4930 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C79D4 003C4934 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C79D8 003C4938 39 08 00 08 */ addi r8, r8, 8 +/* 803C79DC 003C493C 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C79E0 003C4940 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C79E4 003C4944 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 +/* 803C79E8 003C4948 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C79EC 003C494C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C79F0 003C4950 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C79F4 003C4954 E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 +/* 803C79F8 003C4958 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C79FC 003C495C 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C7A00 003C4960 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 +/* 803C7A04 003C4964 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C7A08 003C4968 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C7A0C 003C496C E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 +/* 803C7A10 003C4970 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C7A14 003C4974 38 C6 00 02 */ addi r6, r6, 2 +/* 803C7A18 003C4978 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 +/* 803C7A1C 003C497C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C7A20 003C4980 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C7A24 003C4984 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C7A28 003C4988 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C7A2C 003C498C F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C7A30 003C4990 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C7A34 003C4994 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C7A38 003C4998 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 +/* 803C7A3C 003C499C 38 A5 00 02 */ addi r5, r5, 2 +/* 803C7A40 003C49A0 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C7A44 003C49A4 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C7A48 003C49A8 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 +/* 803C7A4C 003C49AC 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C7A50 003C49B0 11 27 30 2A */ ps_add f9, f7, f6 +/* 803C7A54 003C49B4 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C7A58 003C49B8 10 67 30 28 */ ps_sub f3, f7, f6 +/* 803C7A5C 003C49BC 11 29 F8 2A */ ps_add f9, f9, f31 +/* 803C7A60 003C49C0 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C7A64 003C49C4 11 05 20 2A */ ps_add f8, f5, f4 +/* 803C7A68 003C49C8 10 45 20 28 */ ps_sub f2, f5, f4 +/* 803C7A6C 003C49CC F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C7A70 003C49D0 7C 87 32 14 */ add r4, r7, r6 +/* 803C7A74 003C49D4 10 89 40 2A */ ps_add f4, f9, f8 +/* 803C7A78 003C49D8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C7A7C 003C49DC 10 63 F8 2A */ ps_add f3, f3, f31 +/* 803C7A80 003C49E0 7C 67 2A 14 */ add r3, r7, r5 +/* 803C7A84 003C49E4 42 00 FF 2C */ bdnz lbl_803C79B0 +/* 803C7A88 003C49E8 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 +/* 803C7A8C 003C49EC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 +/* 803C7A90 003C49F0 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 +/* 803C7A94 003C49F4 11 89 40 28 */ ps_sub f12, f9, f8 +/* 803C7A98 003C49F8 10 23 10 2A */ ps_add f1, f3, f2 +/* 803C7A9C 003C49FC E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 +/* 803C7AA0 003C4A00 11 A3 10 28 */ ps_sub f13, f3, f2 +/* 803C7AA4 003C4A04 E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 +/* 803C7AA8 003C4A08 10 69 50 2A */ ps_add f3, f9, f10 +/* 803C7AAC 003C4A0C 11 29 50 28 */ ps_sub f9, f9, f10 +/* 803C7AB0 003C4A10 10 4B 40 2A */ ps_add f2, f11, f8 +/* 803C7AB4 003C4A14 11 6B 40 28 */ ps_sub f11, f11, f8 +/* 803C7AB8 003C4A18 11 02 18 2A */ ps_add f8, f2, f3 +/* 803C7ABC 003C4A1C 11 42 18 28 */ ps_sub f10, f2, f3 +/* 803C7AC0 003C4A20 10 69 58 2A */ ps_add f3, f9, f11 +/* 803C7AC4 003C4A24 10 44 40 2A */ ps_add f2, f4, f8 +/* 803C7AC8 003C4A28 10 63 07 32 */ ps_mul f3, f3, f28 +/* 803C7ACC 003C4A2C 10 04 40 28 */ ps_sub f0, f4, f8 +/* 803C7AD0 003C4A30 11 29 1F BA */ ps_madd f9, f9, f30, f3 +/* 803C7AD4 003C4A34 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 +/* 803C7AD8 003C4A38 11 29 40 28 */ ps_sub f9, f9, f8 +/* 803C7ADC 003C4A3C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 +/* 803C7AE0 003C4A40 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 +/* 803C7AE4 003C4A44 10 41 48 2A */ ps_add f2, f1, f9 +/* 803C7AE8 003C4A48 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 +/* 803C7AEC 003C4A4C 10 21 48 28 */ ps_sub f1, f1, f9 +/* 803C7AF0 003C4A50 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 +/* 803C7AF4 003C4A54 10 6D 50 2A */ ps_add f3, f13, f10 +/* 803C7AF8 003C4A58 11 6B 50 2A */ ps_add f11, f11, f10 +/* 803C7AFC 003C4A5C F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 +/* 803C7B00 003C4A60 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 +/* 803C7B04 003C4A64 10 4C 58 28 */ ps_sub f2, f12, f11 +/* 803C7B08 003C4A68 10 6C 58 2A */ ps_add f3, f12, f11 +/* 803C7B0C 003C4A6C F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 +/* 803C7B10 003C4A70 10 4D 50 28 */ ps_sub f2, f13, f10 +/* 803C7B14 003C4A74 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 +/* 803C7B18 003C4A78 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 +/* 803C7B1C 003C4A7C 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C7B20 003C4A80 88 05 06 A9 */ lbz r0, 0x6a9(r5) +/* 803C7B24 003C4A84 28 00 00 00 */ cmplwi r0, 0 +/* 803C7B28 003C4A88 41 82 00 74 */ beq lbl_803C7B9C +/* 803C7B2C 003C4A8C A0 85 06 AC */ lhz r4, 0x6ac(r5) +/* 803C7B30 003C4A90 38 04 FF FF */ addi r0, r4, -1 +/* 803C7B34 003C4A94 B0 05 06 AC */ sth r0, 0x6ac(r5) +/* 803C7B38 003C4A98 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C7B3C 003C4A9C A0 04 06 AC */ lhz r0, 0x6ac(r4) +/* 803C7B40 003C4AA0 28 00 00 00 */ cmplwi r0, 0 +/* 803C7B44 003C4AA4 40 82 00 58 */ bne lbl_803C7B9C +/* 803C7B48 003C4AA8 A0 04 06 AA */ lhz r0, 0x6aa(r4) +/* 803C7B4C 003C4AAC B0 04 06 AC */ sth r0, 0x6ac(r4) +/* 803C7B50 003C4AB0 80 8D B1 50 */ lwz r4, __THPInfo@sda21(r13) +/* 803C7B54 003C4AB4 80 64 06 A4 */ lwz r3, 0x6a4(r4) +/* 803C7B58 003C4AB8 38 03 00 06 */ addi r0, r3, 6 +/* 803C7B5C 003C4ABC 54 03 00 38 */ rlwinm r3, r0, 0, 0, 0x1c +/* 803C7B60 003C4AC0 38 03 00 01 */ addi r0, r3, 1 +/* 803C7B64 003C4AC4 90 04 06 A4 */ stw r0, 0x6a4(r4) +/* 803C7B68 003C4AC8 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7B6C 003C4ACC 80 03 06 A4 */ lwz r0, 0x6a4(r3) +/* 803C7B70 003C4AD0 28 00 00 20 */ cmplwi r0, 0x20 +/* 803C7B74 003C4AD4 40 81 00 0C */ ble lbl_803C7B80 +/* 803C7B78 003C4AD8 38 00 00 21 */ li r0, 0x21 +/* 803C7B7C 003C4ADC 90 03 06 A4 */ stw r0, 0x6a4(r3) +lbl_803C7B80: +/* 803C7B80 003C4AE0 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7B84 003C4AE4 38 00 00 00 */ li r0, 0 +/* 803C7B88 003C4AE8 B0 03 06 84 */ sth r0, 0x684(r3) +/* 803C7B8C 003C4AEC 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7B90 003C4AF0 B0 03 06 8A */ sth r0, 0x68a(r3) +/* 803C7B94 003C4AF4 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7B98 003C4AF8 B0 03 06 90 */ sth r0, 0x690(r3) +lbl_803C7B9C: +/* 803C7B9C 003C4AFC 3B BD 00 01 */ addi r29, r29, 1 +lbl_803C7BA0: +/* 803C7BA0 003C4B00 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7BA4 003C4B04 57 A4 06 3E */ clrlwi r4, r29, 0x18 +/* 803C7BA8 003C4B08 A0 03 06 96 */ lhz r0, 0x696(r3) +/* 803C7BAC 003C4B0C 7C 04 00 00 */ cmpw r4, r0 +/* 803C7BB0 003C4B10 41 80 E6 68 */ blt lbl_803C6218 +/* 803C7BB4 003C4B14 57 9D E1 3E */ srwi r29, r28, 4 +/* 803C7BB8 003C4B18 80 63 06 B0 */ lwz r3, 0x6b0(r3) +/* 803C7BBC 003C4B1C 80 9E 01 0C */ lwz r4, 0x10c(r30) +/* 803C7BC0 003C4B20 57 85 20 2E */ rlwinm r5, r28, 4, 0, 0x17 +/* 803C7BC4 003C4B24 4B FB 72 49 */ bl LCStoreData +/* 803C7BC8 003C4B28 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7BCC 003C4B2C 57 A5 30 32 */ slwi r5, r29, 6 +/* 803C7BD0 003C4B30 80 9E 01 10 */ lwz r4, 0x110(r30) +/* 803C7BD4 003C4B34 80 63 06 B4 */ lwz r3, 0x6b4(r3) +/* 803C7BD8 003C4B38 4B FB 72 35 */ bl LCStoreData +/* 803C7BDC 003C4B3C 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7BE0 003C4B40 57 A5 30 32 */ slwi r5, r29, 6 +/* 803C7BE4 003C4B44 80 9E 01 14 */ lwz r4, 0x114(r30) +/* 803C7BE8 003C4B48 80 63 06 B8 */ lwz r3, 0x6b8(r3) +/* 803C7BEC 003C4B4C 4B FB 72 21 */ bl LCStoreData +/* 803C7BF0 003C4B50 80 AD B1 50 */ lwz r5, __THPInfo@sda21(r13) +/* 803C7BF4 003C4B54 57 A0 40 2E */ slwi r0, r29, 8 +/* 803C7BF8 003C4B58 57 A4 30 32 */ slwi r4, r29, 6 +/* 803C7BFC 003C4B5C 80 65 06 B0 */ lwz r3, 0x6b0(r5) +/* 803C7C00 003C4B60 7C 03 02 14 */ add r0, r3, r0 +/* 803C7C04 003C4B64 90 05 06 B0 */ stw r0, 0x6b0(r5) +/* 803C7C08 003C4B68 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7C0C 003C4B6C 80 03 06 B4 */ lwz r0, 0x6b4(r3) +/* 803C7C10 003C4B70 7C 00 22 14 */ add r0, r0, r4 +/* 803C7C14 003C4B74 90 03 06 B4 */ stw r0, 0x6b4(r3) +/* 803C7C18 003C4B78 80 6D B1 50 */ lwz r3, __THPInfo@sda21(r13) +/* 803C7C1C 003C4B7C 80 03 06 B8 */ lwz r0, 0x6b8(r3) +/* 803C7C20 003C4B80 7C 00 22 14 */ add r0, r0, r4 +/* 803C7C24 003C4B84 90 03 06 B8 */ stw r0, 0x6b8(r3) +/* 803C7C28 003C4B88 80 01 00 44 */ lwz r0, 0x44(r1) +/* 803C7C2C 003C4B8C CB E1 00 38 */ lfd f31, 0x38(r1) +/* 803C7C30 003C4B90 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 803C7C34 003C4B94 CB A1 00 28 */ lfd f29, 0x28(r1) +/* 803C7C38 003C4B98 CB 81 00 20 */ lfd f28, 0x20(r1) +/* 803C7C3C 003C4B9C CB 61 00 18 */ lfd f27, 0x18(r1) +/* 803C7C40 003C4BA0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 803C7C44 003C4BA4 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 803C7C48 003C4BA8 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 803C7C4C 003C4BAC 83 81 00 08 */ lwz r28, 8(r1) +/* 803C7C50 003C4BB0 38 21 00 40 */ addi r1, r1, 0x40 +/* 803C7C54 003C4BB4 7C 08 03 A6 */ mtlr r0 +/* 803C7C58 003C4BB8 4E 80 00 20 */ blr + +__THPHuffDecodeDCTCompY: #local func +/* 803C7C5C 003C4BBC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 803C7C60 003C4BC0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 803C7C64 003C4BC4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 803C7C68 003C4BC8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 803C7C6C 003C4BCC 7C 00 27 EC */ dcbz 0, r4 +/* 803C7C70 003C4BD0 81 8D B0 40 */ lwz r12, Ydchuff@sda21(r13) +/* 803C7C74 003C4BD4 81 63 06 A4 */ lwz r11, 0x6a4(r3) +/* 803C7C78 003C4BD8 39 2C 00 20 */ addi r9, r12, 0x20 +/* 803C7C7C 003C4BDC 81 43 06 A0 */ lwz r10, 0x6a0(r3) +/* 803C7C80 003C4BE0 38 AB 00 04 */ addi r5, r11, 4 +/* 803C7C84 003C4BE4 2C 0B 00 1C */ cmpwi r11, 0x1c +/* 803C7C88 003C4BE8 5D 48 2E FE */ rlwnm r8, r10, r5, 0x1b, 0x1f +/* 803C7C8C 003C4BEC 41 81 00 C4 */ bgt lbl_803C7D50 +/* 803C7C90 003C4BF0 7C AC 40 AE */ lbzx r5, r12, r8 +/* 803C7C94 003C4BF4 7D 29 40 AE */ lbzx r9, r9, r8 +/* 803C7C98 003C4BF8 2C 05 00 FF */ cmpwi r5, 0xff +/* 803C7C9C 003C4BFC 41 82 00 10 */ beq lbl_803C7CAC +/* 803C7CA0 003C4C00 7D 6B 4A 14 */ add r11, r11, r9 +/* 803C7CA4 003C4C04 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C7CA8 003C4C08 48 00 02 4C */ b lbl_803C7EF4 +lbl_803C7CAC: +/* 803C7CAC 003C4C0C 38 CC 00 44 */ addi r6, r12, 0x44 +/* 803C7CB0 003C4C10 39 6B 00 05 */ addi r11, r11, 5 +/* 803C7CB4 003C4C14 38 00 00 14 */ li r0, 0x14 +/* 803C7CB8 003C4C18 38 A0 00 05 */ li r5, 5 +/* 803C7CBC 003C4C1C 38 C6 00 14 */ addi r6, r6, 0x14 +lbl_803C7CC0: +/* 803C7CC0 003C4C20 2C 0B 00 21 */ cmpwi r11, 0x21 +/* 803C7CC4 003C4C24 55 08 08 3C */ slwi r8, r8, 1 +/* 803C7CC8 003C4C28 41 82 00 18 */ beq lbl_803C7CE0 +/* 803C7CCC 003C4C2C 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f +/* 803C7CD0 003C4C30 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C7CD4 003C4C34 7D 08 4B 78 */ or r8, r8, r9 +/* 803C7CD8 003C4C38 39 6B 00 01 */ addi r11, r11, 1 +/* 803C7CDC 003C4C3C 48 00 00 48 */ b lbl_803C7D24 +lbl_803C7CE0: +/* 803C7CE0 003C4C40 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C7CE4 003C4C44 39 60 00 01 */ li r11, 1 +/* 803C7CE8 003C4C48 85 49 00 04 */ lwzu r10, 4(r9) +/* 803C7CEC 003C4C4C 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C7CF0 003C4C50 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C7CF4 003C4C54 51 48 0F FE */ rlwimi r8, r10, 1, 0x1f, 0x1f +/* 803C7CF8 003C4C58 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C7CFC 003C4C5C 48 00 00 14 */ b lbl_803C7D10 +lbl_803C7D00: +/* 803C7D00 003C4C60 55 08 08 3C */ slwi r8, r8, 1 +/* 803C7D04 003C4C64 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f +/* 803C7D08 003C4C68 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C7D0C 003C4C6C 7D 08 4B 78 */ or r8, r8, r9 +lbl_803C7D10: +/* 803C7D10 003C4C70 7C 08 00 00 */ cmpw r8, r0 +/* 803C7D14 003C4C74 39 6B 00 01 */ addi r11, r11, 1 +/* 803C7D18 003C4C78 38 A5 00 01 */ addi r5, r5, 1 +/* 803C7D1C 003C4C7C 41 81 FF E4 */ bgt lbl_803C7D00 +/* 803C7D20 003C4C80 48 00 00 10 */ b lbl_803C7D30 +lbl_803C7D24: +/* 803C7D24 003C4C84 7C 08 00 00 */ cmpw r8, r0 +/* 803C7D28 003C4C88 38 A5 00 01 */ addi r5, r5, 1 +/* 803C7D2C 003C4C8C 41 81 FF 94 */ bgt lbl_803C7CC0 +lbl_803C7D30: +/* 803C7D30 003C4C90 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C7D34 003C4C94 54 A0 10 3A */ slwi r0, r5, 2 +/* 803C7D38 003C4C98 7C AC 02 14 */ add r5, r12, r0 +/* 803C7D3C 003C4C9C 80 CC 00 40 */ lwz r6, 0x40(r12) +/* 803C7D40 003C4CA0 80 05 00 8C */ lwz r0, 0x8c(r5) +/* 803C7D44 003C4CA4 7C 00 32 14 */ add r0, r0, r6 +/* 803C7D48 003C4CA8 7C A8 00 AE */ lbzx r5, r8, r0 +/* 803C7D4C 003C4CAC 48 00 01 A8 */ b lbl_803C7EF4 +lbl_803C7D50: +/* 803C7D50 003C4CB0 2C 0B 00 21 */ cmpwi r11, 0x21 +/* 803C7D54 003C4CB4 81 03 06 9C */ lwz r8, 0x69c(r3) +/* 803C7D58 003C4CB8 41 82 00 B4 */ beq lbl_803C7E0C +/* 803C7D5C 003C4CBC 2C 0B 00 20 */ cmpwi r11, 0x20 +/* 803C7D60 003C4CC0 5D 45 2E FE */ rlwnm r5, r10, r5, 0x1b, 0x1f +/* 803C7D64 003C4CC4 41 82 00 2C */ beq lbl_803C7D90 +/* 803C7D68 003C4CC8 7D 0C 28 AE */ lbzx r8, r12, r5 +/* 803C7D6C 003C4CCC 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C7D70 003C4CD0 2C 08 00 FF */ cmpwi r8, 0xff +/* 803C7D74 003C4CD4 7C AB 4A 14 */ add r5, r11, r9 +/* 803C7D78 003C4CD8 41 82 00 F8 */ beq lbl_803C7E70 +/* 803C7D7C 003C4CDC 2C 05 00 21 */ cmpwi r5, 0x21 +/* 803C7D80 003C4CE0 90 A3 06 A4 */ stw r5, 0x6a4(r3) +/* 803C7D84 003C4CE4 41 81 00 EC */ bgt lbl_803C7E70 +/* 803C7D88 003C4CE8 7D 05 43 78 */ mr r5, r8 +/* 803C7D8C 003C4CEC 48 00 01 68 */ b lbl_803C7EF4 +lbl_803C7D90: +/* 803C7D90 003C4CF0 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C7D94 003C4CF4 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C7D98 003C4CF8 51 45 27 3E */ rlwimi r5, r10, 4, 0x1c, 0x1f +/* 803C7D9C 003C4CFC 7D 0C 28 AE */ lbzx r8, r12, r5 +/* 803C7DA0 003C4D00 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C7DA4 003C4D04 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C7DA8 003C4D08 2C 08 00 FF */ cmpwi r8, 0xff +/* 803C7DAC 003C4D0C 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C7DB0 003C4D10 41 82 00 0C */ beq lbl_803C7DBC +/* 803C7DB4 003C4D14 7D 05 43 78 */ mr r5, r8 +/* 803C7DB8 003C4D18 48 00 01 3C */ b lbl_803C7EF4 +lbl_803C7DBC: +/* 803C7DBC 003C4D1C 38 CC 00 44 */ addi r6, r12, 0x44 +/* 803C7DC0 003C4D20 39 60 00 14 */ li r11, 0x14 +/* 803C7DC4 003C4D24 38 C6 00 14 */ addi r6, r6, 0x14 +/* 803C7DC8 003C4D28 54 A8 D8 08 */ slwi r8, r5, 0x1b +/* 803C7DCC 003C4D2C 39 60 00 05 */ li r11, 5 +/* 803C7DD0 003C4D30 51 48 F8 7E */ rlwimi r8, r10, 0x1f, 1, 0x1f +lbl_803C7DD4: +/* 803C7DD4 003C4D34 21 4B 00 1F */ subfic r10, r11, 0x1f +/* 803C7DD8 003C4D38 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C7DDC 003C4D3C 7D 05 54 30 */ srw r5, r8, r10 +/* 803C7DE0 003C4D40 7C 05 00 00 */ cmpw r5, r0 +/* 803C7DE4 003C4D44 39 6B 00 01 */ addi r11, r11, 1 +/* 803C7DE8 003C4D48 41 81 FF EC */ bgt lbl_803C7DD4 +/* 803C7DEC 003C4D4C 91 63 06 A4 */ stw r11, 0x6a4(r3) +lbl_803C7DF0: +/* 803C7DF0 003C4D50 55 60 10 3A */ slwi r0, r11, 2 +/* 803C7DF4 003C4D54 80 EC 00 40 */ lwz r7, 0x40(r12) +/* 803C7DF8 003C4D58 7C CC 02 14 */ add r6, r12, r0 +/* 803C7DFC 003C4D5C 80 06 00 8C */ lwz r0, 0x8c(r6) +/* 803C7E00 003C4D60 7C 00 3A 14 */ add r0, r0, r7 +/* 803C7E04 003C4D64 7C A5 00 AE */ lbzx r5, r5, r0 +/* 803C7E08 003C4D68 48 00 00 EC */ b lbl_803C7EF4 +lbl_803C7E0C: +/* 803C7E0C 003C4D6C 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C7E10 003C4D70 55 45 2E FE */ srwi r5, r10, 0x1b +/* 803C7E14 003C4D74 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C7E18 003C4D78 7D 6C 28 AE */ lbzx r11, r12, r5 +/* 803C7E1C 003C4D7C 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C7E20 003C4D80 2C 0B 00 FF */ cmpwi r11, 0xff +/* 803C7E24 003C4D84 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C7E28 003C4D88 39 29 00 01 */ addi r9, r9, 1 +/* 803C7E2C 003C4D8C 41 82 00 10 */ beq lbl_803C7E3C +/* 803C7E30 003C4D90 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C7E34 003C4D94 7D 65 5B 78 */ mr r5, r11 +/* 803C7E38 003C4D98 48 00 00 BC */ b lbl_803C7EF4 +lbl_803C7E3C: +/* 803C7E3C 003C4D9C 39 60 00 05 */ li r11, 5 +/* 803C7E40 003C4DA0 38 C0 00 14 */ li r6, 0x14 +lbl_803C7E44: +/* 803C7E44 003C4DA4 21 0B 00 1F */ subfic r8, r11, 0x1f +/* 803C7E48 003C4DA8 39 6B 00 01 */ addi r11, r11, 1 +/* 803C7E4C 003C4DAC 38 C6 00 04 */ addi r6, r6, 4 +/* 803C7E50 003C4DB0 7D 45 44 30 */ srw r5, r10, r8 +/* 803C7E54 003C4DB4 7C EC 32 14 */ add r7, r12, r6 +/* 803C7E58 003C4DB8 80 07 00 44 */ lwz r0, 0x44(r7) +/* 803C7E5C 003C4DBC 7C 05 00 00 */ cmpw r5, r0 +/* 803C7E60 003C4DC0 41 81 FF E4 */ bgt lbl_803C7E44 +/* 803C7E64 003C4DC4 38 0B 00 01 */ addi r0, r11, 1 +/* 803C7E68 003C4DC8 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C7E6C 003C4DCC 4B FF FF 84 */ b lbl_803C7DF0 +lbl_803C7E70: +/* 803C7E70 003C4DD0 20 0B 00 21 */ subfic r0, r11, 0x21 +/* 803C7E74 003C4DD4 38 A0 FF FF */ li r5, -1 +/* 803C7E78 003C4DD8 7C A7 00 30 */ slw r7, r5, r0 +/* 803C7E7C 003C4DDC 7D 45 38 78 */ andc r5, r10, r7 +/* 803C7E80 003C4DE0 38 EC 00 44 */ addi r7, r12, 0x44 +/* 803C7E84 003C4DE4 81 03 06 9C */ lwz r8, 0x69c(r3) +/* 803C7E88 003C4DE8 20 CB 00 21 */ subfic r6, r11, 0x21 +/* 803C7E8C 003C4DEC 39 66 00 01 */ addi r11, r6, 1 +/* 803C7E90 003C4DF0 54 C6 10 3A */ slwi r6, r6, 2 +/* 803C7E94 003C4DF4 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C7E98 003C4DF8 7C E7 32 14 */ add r7, r7, r6 +/* 803C7E9C 003C4DFC 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C7EA0 003C4E00 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C7EA4 003C4E04 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C7EA8 003C4E08 51 45 0F FE */ rlwimi r5, r10, 1, 0x1f, 0x1f +/* 803C7EAC 003C4E0C 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C7EB0 003C4E10 39 00 00 02 */ li r8, 2 +/* 803C7EB4 003C4E14 48 00 00 18 */ b lbl_803C7ECC +lbl_803C7EB8: +/* 803C7EB8 003C4E18 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C7EBC 003C4E1C 39 6B 00 01 */ addi r11, r11, 1 +/* 803C7EC0 003C4E20 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C7EC4 003C4E24 7C A5 4A 14 */ add r5, r5, r9 +/* 803C7EC8 003C4E28 39 08 00 01 */ addi r8, r8, 1 +lbl_803C7ECC: +/* 803C7ECC 003C4E2C 7C 05 30 00 */ cmpw r5, r6 +/* 803C7ED0 003C4E30 5D 49 47 FE */ rlwnm r9, r10, r8, 0x1f, 0x1f +/* 803C7ED4 003C4E34 41 81 FF E4 */ bgt lbl_803C7EB8 +/* 803C7ED8 003C4E38 91 03 06 A4 */ stw r8, 0x6a4(r3) +/* 803C7EDC 003C4E3C 55 60 10 3A */ slwi r0, r11, 2 +/* 803C7EE0 003C4E40 7C CC 02 14 */ add r6, r12, r0 +/* 803C7EE4 003C4E44 80 EC 00 40 */ lwz r7, 0x40(r12) +/* 803C7EE8 003C4E48 80 06 00 8C */ lwz r0, 0x8c(r6) +/* 803C7EEC 003C4E4C 7C 00 3A 14 */ add r0, r0, r7 +/* 803C7EF0 003C4E50 7C A5 00 AE */ lbzx r5, r5, r0 +lbl_803C7EF4: +/* 803C7EF4 003C4E54 38 00 00 20 */ li r0, 0x20 +/* 803C7EF8 003C4E58 7C 04 07 EC */ dcbz r4, r0 +/* 803C7EFC 003C4E5C 38 E0 00 00 */ li r7, 0 +/* 803C7F00 003C4E60 38 00 00 40 */ li r0, 0x40 +/* 803C7F04 003C4E64 7C 04 07 EC */ dcbz r4, r0 +/* 803C7F08 003C4E68 2C 05 00 00 */ cmpwi r5, 0 +/* 803C7F0C 003C4E6C 41 82 00 84 */ beq lbl_803C7F90 +/* 803C7F10 003C4E70 80 E3 06 A4 */ lwz r7, 0x6a4(r3) +/* 803C7F14 003C4E74 21 07 00 21 */ subfic r8, r7, 0x21 +/* 803C7F18 003C4E78 80 C3 06 A0 */ lwz r6, 0x6a0(r3) +/* 803C7F1C 003C4E7C 7D 28 28 11 */ subfc. r9, r8, r5 +/* 803C7F20 003C4E80 39 47 FF FF */ addi r10, r7, -1 +/* 803C7F24 003C4E84 41 81 00 1C */ bgt lbl_803C7F40 +/* 803C7F28 003C4E88 7C 07 2A 14 */ add r0, r7, r5 +/* 803C7F2C 003C4E8C 7C C7 50 30 */ slw r7, r6, r10 +/* 803C7F30 003C4E90 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C7F34 003C4E94 20 05 00 20 */ subfic r0, r5, 0x20 +/* 803C7F38 003C4E98 7C E7 04 30 */ srw r7, r7, r0 +/* 803C7F3C 003C4E9C 48 00 00 30 */ b lbl_803C7F6C +lbl_803C7F40: +/* 803C7F40 003C4EA0 80 E3 06 9C */ lwz r7, 0x69c(r3) +/* 803C7F44 003C4EA4 7C C0 50 30 */ slw r0, r6, r10 +/* 803C7F48 003C4EA8 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C7F4C 003C4EAC 39 29 00 01 */ addi r9, r9, 1 +/* 803C7F50 003C4EB0 90 C3 06 A0 */ stw r6, 0x6a0(r3) +/* 803C7F54 003C4EB4 7C C6 44 30 */ srw r6, r6, r8 +/* 803C7F58 003C4EB8 90 E3 06 9C */ stw r7, 0x69c(r3) +/* 803C7F5C 003C4EBC 7C 06 02 14 */ add r0, r6, r0 +/* 803C7F60 003C4EC0 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C7F64 003C4EC4 21 25 00 20 */ subfic r9, r5, 0x20 +/* 803C7F68 003C4EC8 7C 07 4C 30 */ srw r7, r0, r9 +lbl_803C7F6C: +/* 803C7F6C 003C4ECC 7C E0 07 34 */ extsh r0, r7 +/* 803C7F70 003C4ED0 7C 06 00 34 */ cntlzw r6, r0 +/* 803C7F74 003C4ED4 20 05 00 20 */ subfic r0, r5, 0x20 +/* 803C7F78 003C4ED8 7C 06 00 00 */ cmpw r6, r0 +/* 803C7F7C 003C4EDC 40 81 00 14 */ ble lbl_803C7F90 +/* 803C7F80 003C4EE0 38 00 FF FF */ li r0, -1 +/* 803C7F84 003C4EE4 7C 00 28 30 */ slw r0, r0, r5 +/* 803C7F88 003C4EE8 7C E0 3A 14 */ add r7, r0, r7 +/* 803C7F8C 003C4EEC 38 E7 00 01 */ addi r7, r7, 1 +lbl_803C7F90: +/* 803C7F90 003C4EF0 38 00 00 60 */ li r0, 0x60 +/* 803C7F94 003C4EF4 7C 04 07 EC */ dcbz r4, r0 +/* 803C7F98 003C4EF8 A8 03 06 84 */ lha r0, 0x684(r3) +/* 803C7F9C 003C4EFC 7C 00 3A 14 */ add r0, r0, r7 +/* 803C7FA0 003C4F00 B0 03 06 84 */ sth r0, 0x684(r3) +/* 803C7FA4 003C4F04 B0 04 00 00 */ sth r0, 0(r4) +/* 803C7FA8 003C4F08 81 0D B0 A0 */ lwz r8, Yachuff@sda21(r13) +/* 803C7FAC 003C4F0C 80 C3 06 A4 */ lwz r6, 0x6a4(r3) +/* 803C7FB0 003C4F10 38 E8 00 20 */ addi r7, r8, 0x20 +/* 803C7FB4 003C4F14 80 03 06 A0 */ lwz r0, 0x6a0(r3) +/* 803C7FB8 003C4F18 38 A0 00 01 */ li r5, 1 +/* 803C7FBC 003C4F1C 3D 20 80 3E */ lis r9, __THPJpegNaturalOrder@ha +/* 803C7FC0 003C4F20 39 49 8C D0 */ addi r10, r9, __THPJpegNaturalOrder@l +/* 803C7FC4 003C4F24 48 00 02 F0 */ b lbl_803C82B4 +lbl_803C7FC8: +/* 803C7FC8 003C4F28 3B E6 00 04 */ addi r31, r6, 4 +/* 803C7FCC 003C4F2C 2C 06 00 1C */ cmpwi r6, 0x1c +/* 803C7FD0 003C4F30 5C 0C FE FE */ rlwnm r12, r0, r31, 0x1b, 0x1f +/* 803C7FD4 003C4F34 41 81 00 B8 */ bgt lbl_803C808C +/* 803C7FD8 003C4F38 7F C8 60 AE */ lbzx r30, r8, r12 +/* 803C7FDC 003C4F3C 7F E7 60 AE */ lbzx r31, r7, r12 +/* 803C7FE0 003C4F40 2C 1E 00 FF */ cmpwi r30, 0xff +/* 803C7FE4 003C4F44 41 82 00 0C */ beq lbl_803C7FF0 +/* 803C7FE8 003C4F48 7C C6 FA 14 */ add r6, r6, r31 +/* 803C7FEC 003C4F4C 48 00 02 28 */ b lbl_803C8214 +lbl_803C7FF0: +/* 803C7FF0 003C4F50 38 C6 00 05 */ addi r6, r6, 5 +/* 803C7FF4 003C4F54 39 28 00 44 */ addi r9, r8, 0x44 +/* 803C7FF8 003C4F58 39 60 00 14 */ li r11, 0x14 +/* 803C7FFC 003C4F5C 3B E0 00 05 */ li r31, 5 +/* 803C8000 003C4F60 39 29 00 14 */ addi r9, r9, 0x14 +lbl_803C8004: +/* 803C8004 003C4F64 2C 06 00 21 */ cmpwi r6, 0x21 +/* 803C8008 003C4F68 55 8C 08 3C */ slwi r12, r12, 1 +/* 803C800C 003C4F6C 41 82 00 18 */ beq lbl_803C8024 +/* 803C8010 003C4F70 5C 1E 37 FE */ rlwnm r30, r0, r6, 0x1f, 0x1f +/* 803C8014 003C4F74 85 69 00 04 */ lwzu r11, 4(r9) +/* 803C8018 003C4F78 7D 8C F3 78 */ or r12, r12, r30 +/* 803C801C 003C4F7C 38 C6 00 01 */ addi r6, r6, 1 +/* 803C8020 003C4F80 48 00 00 44 */ b lbl_803C8064 +lbl_803C8024: +/* 803C8024 003C4F84 83 C3 06 9C */ lwz r30, 0x69c(r3) +/* 803C8028 003C4F88 38 C0 00 01 */ li r6, 1 +/* 803C802C 003C4F8C 84 1E 00 04 */ lwzu r0, 4(r30) +/* 803C8030 003C4F90 85 69 00 04 */ lwzu r11, 4(r9) +/* 803C8034 003C4F94 93 C3 06 9C */ stw r30, 0x69c(r3) +/* 803C8038 003C4F98 50 0C 0F FE */ rlwimi r12, r0, 1, 0x1f, 0x1f +/* 803C803C 003C4F9C 48 00 00 14 */ b lbl_803C8050 +lbl_803C8040: +/* 803C8040 003C4FA0 55 8C 08 3C */ slwi r12, r12, 1 +/* 803C8044 003C4FA4 5C 1E 37 FE */ rlwnm r30, r0, r6, 0x1f, 0x1f +/* 803C8048 003C4FA8 85 69 00 04 */ lwzu r11, 4(r9) +/* 803C804C 003C4FAC 7D 8C F3 78 */ or r12, r12, r30 +lbl_803C8050: +/* 803C8050 003C4FB0 7C 0C 58 00 */ cmpw r12, r11 +/* 803C8054 003C4FB4 38 C6 00 01 */ addi r6, r6, 1 +/* 803C8058 003C4FB8 3B FF 00 01 */ addi r31, r31, 1 +/* 803C805C 003C4FBC 41 81 FF E4 */ bgt lbl_803C8040 +/* 803C8060 003C4FC0 48 00 00 10 */ b lbl_803C8070 +lbl_803C8064: +/* 803C8064 003C4FC4 7C 0C 58 00 */ cmpw r12, r11 +/* 803C8068 003C4FC8 3B FF 00 01 */ addi r31, r31, 1 +/* 803C806C 003C4FCC 41 81 FF 98 */ bgt lbl_803C8004 +lbl_803C8070: +/* 803C8070 003C4FD0 57 E9 10 3A */ slwi r9, r31, 2 +/* 803C8074 003C4FD4 81 68 00 40 */ lwz r11, 0x40(r8) +/* 803C8078 003C4FD8 7D 28 4A 14 */ add r9, r8, r9 +/* 803C807C 003C4FDC 81 29 00 8C */ lwz r9, 0x8c(r9) +/* 803C8080 003C4FE0 7D 29 5A 14 */ add r9, r9, r11 +/* 803C8084 003C4FE4 7F CC 48 AE */ lbzx r30, r12, r9 +/* 803C8088 003C4FE8 48 00 01 8C */ b lbl_803C8214 +lbl_803C808C: +/* 803C808C 003C4FEC 2C 06 00 21 */ cmpwi r6, 0x21 +/* 803C8090 003C4FF0 81 83 06 9C */ lwz r12, 0x69c(r3) +/* 803C8094 003C4FF4 41 82 00 34 */ beq lbl_803C80C8 +/* 803C8098 003C4FF8 2C 06 00 20 */ cmpwi r6, 0x20 +/* 803C809C 003C4FFC 5C 1F FE FE */ rlwnm r31, r0, r31, 0x1b, 0x1f +/* 803C80A0 003C5000 41 82 00 8C */ beq lbl_803C812C +/* 803C80A4 003C5004 7F C8 F8 AE */ lbzx r30, r8, r31 +/* 803C80A8 003C5008 7F A7 F8 AE */ lbzx r29, r7, r31 +/* 803C80AC 003C500C 2C 1E 00 FF */ cmpwi r30, 0xff +/* 803C80B0 003C5010 7F E6 EA 14 */ add r31, r6, r29 +/* 803C80B4 003C5014 41 82 00 E4 */ beq lbl_803C8198 +/* 803C80B8 003C5018 2C 1F 00 21 */ cmpwi r31, 0x21 +/* 803C80BC 003C501C 41 81 00 DC */ bgt lbl_803C8198 +/* 803C80C0 003C5020 7F E6 FB 78 */ mr r6, r31 +/* 803C80C4 003C5024 48 00 01 50 */ b lbl_803C8214 +lbl_803C80C8: +/* 803C80C8 003C5028 84 0C 00 04 */ lwzu r0, 4(r12) +/* 803C80CC 003C502C 54 1F 2E FE */ srwi r31, r0, 0x1b +/* 803C80D0 003C5030 91 83 06 9C */ stw r12, 0x69c(r3) +/* 803C80D4 003C5034 7F C8 F8 AE */ lbzx r30, r8, r31 +/* 803C80D8 003C5038 7D 87 F8 AE */ lbzx r12, r7, r31 +/* 803C80DC 003C503C 2C 1E 00 FF */ cmpwi r30, 0xff +/* 803C80E0 003C5040 38 CC 00 01 */ addi r6, r12, 1 +/* 803C80E4 003C5044 41 82 00 08 */ beq lbl_803C80EC +/* 803C80E8 003C5048 48 00 01 2C */ b lbl_803C8214 +lbl_803C80EC: +/* 803C80EC 003C504C 3B C0 00 05 */ li r30, 5 +/* 803C80F0 003C5050 38 C0 00 14 */ li r6, 0x14 +lbl_803C80F4: +/* 803C80F4 003C5054 21 9E 00 1F */ subfic r12, r30, 0x1f +/* 803C80F8 003C5058 3B DE 00 01 */ addi r30, r30, 1 +/* 803C80FC 003C505C 38 C6 00 04 */ addi r6, r6, 4 +/* 803C8100 003C5060 7C 1F 64 30 */ srw r31, r0, r12 +/* 803C8104 003C5064 7D 88 32 14 */ add r12, r8, r6 +/* 803C8108 003C5068 81 2C 00 44 */ lwz r9, 0x44(r12) +/* 803C810C 003C506C 7C 1F 48 00 */ cmpw r31, r9 +/* 803C8110 003C5070 41 81 FF E4 */ bgt lbl_803C80F4 +/* 803C8114 003C5074 81 68 00 40 */ lwz r11, 0x40(r8) +/* 803C8118 003C5078 38 DE 00 01 */ addi r6, r30, 1 +/* 803C811C 003C507C 81 2C 00 8C */ lwz r9, 0x8c(r12) +/* 803C8120 003C5080 7D 29 5A 14 */ add r9, r9, r11 +/* 803C8124 003C5084 7F DF 48 AE */ lbzx r30, r31, r9 +/* 803C8128 003C5088 48 00 00 EC */ b lbl_803C8214 +lbl_803C812C: +/* 803C812C 003C508C 84 0C 00 04 */ lwzu r0, 4(r12) +/* 803C8130 003C5090 91 83 06 9C */ stw r12, 0x69c(r3) +/* 803C8134 003C5094 50 1F 27 3E */ rlwimi r31, r0, 4, 0x1c, 0x1f +/* 803C8138 003C5098 7F C8 F8 AE */ lbzx r30, r8, r31 +/* 803C813C 003C509C 7C C7 F8 AE */ lbzx r6, r7, r31 +/* 803C8140 003C50A0 2C 1E 00 FF */ cmpwi r30, 0xff +/* 803C8144 003C50A4 41 82 00 08 */ beq lbl_803C814C +/* 803C8148 003C50A8 48 00 00 CC */ b lbl_803C8214 +lbl_803C814C: +/* 803C814C 003C50AC 39 28 00 44 */ addi r9, r8, 0x44 +/* 803C8150 003C50B0 38 C0 00 14 */ li r6, 0x14 +/* 803C8154 003C50B4 39 29 00 14 */ addi r9, r9, 0x14 +/* 803C8158 003C50B8 57 EC D8 08 */ slwi r12, r31, 0x1b +/* 803C815C 003C50BC 38 C0 00 05 */ li r6, 5 +/* 803C8160 003C50C0 50 0C F8 7E */ rlwimi r12, r0, 0x1f, 1, 0x1f +lbl_803C8164: +/* 803C8164 003C50C4 23 C6 00 1F */ subfic r30, r6, 0x1f +/* 803C8168 003C50C8 85 69 00 04 */ lwzu r11, 4(r9) +/* 803C816C 003C50CC 7D 9F F4 30 */ srw r31, r12, r30 +/* 803C8170 003C50D0 7C 1F 58 00 */ cmpw r31, r11 +/* 803C8174 003C50D4 38 C6 00 01 */ addi r6, r6, 1 +/* 803C8178 003C50D8 41 81 FF EC */ bgt lbl_803C8164 +/* 803C817C 003C50DC 54 C9 10 3A */ slwi r9, r6, 2 +/* 803C8180 003C50E0 81 68 00 40 */ lwz r11, 0x40(r8) +/* 803C8184 003C50E4 7D 28 4A 14 */ add r9, r8, r9 +/* 803C8188 003C50E8 81 29 00 8C */ lwz r9, 0x8c(r9) +/* 803C818C 003C50EC 7D 29 5A 14 */ add r9, r9, r11 +/* 803C8190 003C50F0 7F DF 48 AE */ lbzx r30, r31, r9 +/* 803C8194 003C50F4 48 00 00 80 */ b lbl_803C8214 +lbl_803C8198: +/* 803C8198 003C50F8 21 26 00 21 */ subfic r9, r6, 0x21 +/* 803C819C 003C50FC 39 60 FF FF */ li r11, -1 +/* 803C81A0 003C5100 7D 69 48 30 */ slw r9, r11, r9 +/* 803C81A4 003C5104 7C 1F 48 78 */ andc r31, r0, r9 +/* 803C81A8 003C5108 39 28 00 44 */ addi r9, r8, 0x44 +/* 803C81AC 003C510C 81 83 06 9C */ lwz r12, 0x69c(r3) +/* 803C81B0 003C5110 21 66 00 21 */ subfic r11, r6, 0x21 +/* 803C81B4 003C5114 3B CB 00 01 */ addi r30, r11, 1 +/* 803C81B8 003C5118 55 6B 10 3A */ slwi r11, r11, 2 +/* 803C81BC 003C511C 84 0C 00 04 */ lwzu r0, 4(r12) +/* 803C81C0 003C5120 7D 29 5A 14 */ add r9, r9, r11 +/* 803C81C4 003C5124 91 83 06 9C */ stw r12, 0x69c(r3) +/* 803C81C8 003C5128 57 FF 08 3C */ slwi r31, r31, 1 +/* 803C81CC 003C512C 50 1F 0F FE */ rlwimi r31, r0, 1, 0x1f, 0x1f +/* 803C81D0 003C5130 85 69 00 04 */ lwzu r11, 4(r9) +/* 803C81D4 003C5134 38 C0 00 02 */ li r6, 2 +/* 803C81D8 003C5138 48 00 00 18 */ b lbl_803C81F0 +lbl_803C81DC: +/* 803C81DC 003C513C 57 FF 08 3C */ slwi r31, r31, 1 +/* 803C81E0 003C5140 3B DE 00 01 */ addi r30, r30, 1 +/* 803C81E4 003C5144 85 69 00 04 */ lwzu r11, 4(r9) +/* 803C81E8 003C5148 7F FF EA 14 */ add r31, r31, r29 +/* 803C81EC 003C514C 38 C6 00 01 */ addi r6, r6, 1 +lbl_803C81F0: +/* 803C81F0 003C5150 7C 1F 58 00 */ cmpw r31, r11 +/* 803C81F4 003C5154 5C 1D 37 FE */ rlwnm r29, r0, r6, 0x1f, 0x1f +/* 803C81F8 003C5158 41 81 FF E4 */ bgt lbl_803C81DC +/* 803C81FC 003C515C 57 C9 10 3A */ slwi r9, r30, 2 +/* 803C8200 003C5160 81 68 00 40 */ lwz r11, 0x40(r8) +/* 803C8204 003C5164 7D 28 4A 14 */ add r9, r8, r9 +/* 803C8208 003C5168 81 29 00 8C */ lwz r9, 0x8c(r9) +/* 803C820C 003C516C 7D 29 5A 14 */ add r9, r9, r11 +/* 803C8210 003C5170 7F DF 48 AE */ lbzx r30, r31, r9 +lbl_803C8214: +/* 803C8214 003C5174 73 DD 00 0F */ andi. r29, r30, 0xf +/* 803C8218 003C5178 7F DE 26 70 */ srawi r30, r30, 4 +/* 803C821C 003C517C 41 82 00 88 */ beq lbl_803C82A4 +/* 803C8220 003C5180 7C A5 F2 14 */ add r5, r5, r30 +/* 803C8224 003C5184 23 E6 00 21 */ subfic r31, r6, 0x21 +/* 803C8228 003C5188 7D 9F E8 11 */ subfc. r12, r31, r29 +/* 803C822C 003C518C 39 26 FF FF */ addi r9, r6, -1 +/* 803C8230 003C5190 41 81 00 18 */ bgt lbl_803C8248 +/* 803C8234 003C5194 7C C6 EA 14 */ add r6, r6, r29 +/* 803C8238 003C5198 7C 0B 48 30 */ slw r11, r0, r9 +/* 803C823C 003C519C 21 3D 00 20 */ subfic r9, r29, 0x20 +/* 803C8240 003C51A0 7D 7E 4C 30 */ srw r30, r11, r9 +/* 803C8244 003C51A4 48 00 00 28 */ b lbl_803C826C +lbl_803C8248: +/* 803C8248 003C51A8 81 63 06 9C */ lwz r11, 0x69c(r3) +/* 803C824C 003C51AC 7C 09 48 30 */ slw r9, r0, r9 +/* 803C8250 003C51B0 84 0B 00 04 */ lwzu r0, 4(r11) +/* 803C8254 003C51B4 38 CC 00 01 */ addi r6, r12, 1 +/* 803C8258 003C51B8 91 63 06 9C */ stw r11, 0x69c(r3) +/* 803C825C 003C51BC 7C 0B FC 30 */ srw r11, r0, r31 +/* 803C8260 003C51C0 7D 2B 4A 14 */ add r9, r11, r9 +/* 803C8264 003C51C4 21 9D 00 20 */ subfic r12, r29, 0x20 +/* 803C8268 003C51C8 7D 3E 64 30 */ srw r30, r9, r12 +lbl_803C826C: +/* 803C826C 003C51CC 7F CB 00 34 */ cntlzw r11, r30 +/* 803C8270 003C51D0 21 3D 00 20 */ subfic r9, r29, 0x20 +/* 803C8274 003C51D4 7C 0B 48 00 */ cmpw r11, r9 +/* 803C8278 003C51D8 40 81 00 14 */ ble lbl_803C828C +/* 803C827C 003C51DC 39 20 FF FF */ li r9, -1 +/* 803C8280 003C51E0 7D 29 E8 30 */ slw r9, r9, r29 +/* 803C8284 003C51E4 7F C9 F2 14 */ add r30, r9, r30 +/* 803C8288 003C51E8 3B DE 00 01 */ addi r30, r30, 1 +lbl_803C828C: +/* 803C828C 003C51EC 7D 2A 2A 14 */ add r9, r10, r5 +/* 803C8290 003C51F0 89 29 00 00 */ lbz r9, 0(r9) +/* 803C8294 003C51F4 7F CB 07 34 */ extsh r11, r30 +/* 803C8298 003C51F8 55 29 08 3C */ slwi r9, r9, 1 +/* 803C829C 003C51FC 7D 64 4B 2E */ sthx r11, r4, r9 +/* 803C82A0 003C5200 48 00 00 10 */ b lbl_803C82B0 +lbl_803C82A4: +/* 803C82A4 003C5204 2C 1E 00 0F */ cmpwi r30, 0xf +/* 803C82A8 003C5208 40 82 00 14 */ bne lbl_803C82BC +/* 803C82AC 003C520C 38 A5 00 0F */ addi r5, r5, 0xf +lbl_803C82B0: +/* 803C82B0 003C5210 38 A5 00 01 */ addi r5, r5, 1 +lbl_803C82B4: +/* 803C82B4 003C5214 2C 05 00 40 */ cmpwi r5, 0x40 +/* 803C82B8 003C5218 41 80 FD 10 */ blt lbl_803C7FC8 +lbl_803C82BC: +/* 803C82BC 003C521C 90 C3 06 A4 */ stw r6, 0x6a4(r3) +/* 803C82C0 003C5220 90 03 06 A0 */ stw r0, 0x6a0(r3) +/* 803C82C4 003C5224 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 803C82C8 003C5228 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 803C82CC 003C522C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 803C82D0 003C5230 38 21 00 20 */ addi r1, r1, 0x20 +/* 803C82D4 003C5234 4E 80 00 20 */ blr + +__THPHuffDecodeDCTCompU: # local func +/* 803C82D8 003C5238 94 21 FF E8 */ stwu r1, -0x18(r1) +/* 803C82DC 003C523C 93 E1 00 14 */ stw r31, 0x14(r1) +/* 803C82E0 003C5240 93 C1 00 10 */ stw r30, 0x10(r1) +/* 803C82E4 003C5244 7C 00 27 EC */ dcbz 0, r4 +/* 803C82E8 003C5248 81 8D B0 60 */ lwz r12, Udchuff@sda21(r13) +/* 803C82EC 003C524C 81 63 06 A4 */ lwz r11, 0x6a4(r3) +/* 803C82F0 003C5250 39 2C 00 20 */ addi r9, r12, 0x20 +/* 803C82F4 003C5254 81 43 06 A0 */ lwz r10, 0x6a0(r3) +/* 803C82F8 003C5258 38 AB 00 04 */ addi r5, r11, 4 +/* 803C82FC 003C525C 2C 0B 00 1C */ cmpwi r11, 0x1c +/* 803C8300 003C5260 5D 48 2E FE */ rlwnm r8, r10, r5, 0x1b, 0x1f +/* 803C8304 003C5264 41 81 00 C4 */ bgt lbl_803C83C8 +/* 803C8308 003C5268 7C AC 40 AE */ lbzx r5, r12, r8 +/* 803C830C 003C526C 7D 29 40 AE */ lbzx r9, r9, r8 +/* 803C8310 003C5270 2C 05 00 FF */ cmpwi r5, 0xff +/* 803C8314 003C5274 41 82 00 10 */ beq lbl_803C8324 +/* 803C8318 003C5278 7D 6B 4A 14 */ add r11, r11, r9 +/* 803C831C 003C527C 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8320 003C5280 48 00 02 4C */ b lbl_803C856C +lbl_803C8324: +/* 803C8324 003C5284 38 CC 00 44 */ addi r6, r12, 0x44 +/* 803C8328 003C5288 39 6B 00 05 */ addi r11, r11, 5 +/* 803C832C 003C528C 38 00 00 14 */ li r0, 0x14 +/* 803C8330 003C5290 38 A0 00 05 */ li r5, 5 +/* 803C8334 003C5294 38 C6 00 14 */ addi r6, r6, 0x14 +lbl_803C8338: +/* 803C8338 003C5298 2C 0B 00 21 */ cmpwi r11, 0x21 +/* 803C833C 003C529C 55 08 08 3C */ slwi r8, r8, 1 +/* 803C8340 003C52A0 41 82 00 18 */ beq lbl_803C8358 +/* 803C8344 003C52A4 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f +/* 803C8348 003C52A8 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C834C 003C52AC 7D 08 4B 78 */ or r8, r8, r9 +/* 803C8350 003C52B0 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8354 003C52B4 48 00 00 48 */ b lbl_803C839C +lbl_803C8358: +/* 803C8358 003C52B8 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C835C 003C52BC 39 60 00 01 */ li r11, 1 +/* 803C8360 003C52C0 85 49 00 04 */ lwzu r10, 4(r9) +/* 803C8364 003C52C4 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C8368 003C52C8 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C836C 003C52CC 51 48 0F FE */ rlwimi r8, r10, 1, 0x1f, 0x1f +/* 803C8370 003C52D0 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8374 003C52D4 48 00 00 14 */ b lbl_803C8388 +lbl_803C8378: +/* 803C8378 003C52D8 55 08 08 3C */ slwi r8, r8, 1 +/* 803C837C 003C52DC 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f +/* 803C8380 003C52E0 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C8384 003C52E4 7D 08 4B 78 */ or r8, r8, r9 +lbl_803C8388: +/* 803C8388 003C52E8 7C 08 00 00 */ cmpw r8, r0 +/* 803C838C 003C52EC 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8390 003C52F0 38 A5 00 01 */ addi r5, r5, 1 +/* 803C8394 003C52F4 41 81 FF E4 */ bgt lbl_803C8378 +/* 803C8398 003C52F8 48 00 00 10 */ b lbl_803C83A8 +lbl_803C839C: +/* 803C839C 003C52FC 7C 08 00 00 */ cmpw r8, r0 +/* 803C83A0 003C5300 38 A5 00 01 */ addi r5, r5, 1 +/* 803C83A4 003C5304 41 81 FF 94 */ bgt lbl_803C8338 +lbl_803C83A8: +/* 803C83A8 003C5308 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C83AC 003C530C 54 A0 10 3A */ slwi r0, r5, 2 +/* 803C83B0 003C5310 7C AC 02 14 */ add r5, r12, r0 +/* 803C83B4 003C5314 80 CC 00 40 */ lwz r6, 0x40(r12) +/* 803C83B8 003C5318 80 05 00 8C */ lwz r0, 0x8c(r5) +/* 803C83BC 003C531C 7C 00 32 14 */ add r0, r0, r6 +/* 803C83C0 003C5320 7C A8 00 AE */ lbzx r5, r8, r0 +/* 803C83C4 003C5324 48 00 01 A8 */ b lbl_803C856C +lbl_803C83C8: +/* 803C83C8 003C5328 2C 0B 00 21 */ cmpwi r11, 0x21 +/* 803C83CC 003C532C 81 03 06 9C */ lwz r8, 0x69c(r3) +/* 803C83D0 003C5330 41 82 00 B4 */ beq lbl_803C8484 +/* 803C83D4 003C5334 2C 0B 00 20 */ cmpwi r11, 0x20 +/* 803C83D8 003C5338 5D 45 2E FE */ rlwnm r5, r10, r5, 0x1b, 0x1f +/* 803C83DC 003C533C 41 82 00 2C */ beq lbl_803C8408 +/* 803C83E0 003C5340 7D 0C 28 AE */ lbzx r8, r12, r5 +/* 803C83E4 003C5344 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C83E8 003C5348 2C 08 00 FF */ cmpwi r8, 0xff +/* 803C83EC 003C534C 7C AB 4A 14 */ add r5, r11, r9 +/* 803C83F0 003C5350 41 82 00 F8 */ beq lbl_803C84E8 +/* 803C83F4 003C5354 2C 05 00 21 */ cmpwi r5, 0x21 +/* 803C83F8 003C5358 90 A3 06 A4 */ stw r5, 0x6a4(r3) +/* 803C83FC 003C535C 41 81 00 EC */ bgt lbl_803C84E8 +/* 803C8400 003C5360 7D 05 43 78 */ mr r5, r8 +/* 803C8404 003C5364 48 00 01 68 */ b lbl_803C856C +lbl_803C8408: +/* 803C8408 003C5368 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C840C 003C536C 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C8410 003C5370 51 45 27 3E */ rlwimi r5, r10, 4, 0x1c, 0x1f +/* 803C8414 003C5374 7D 0C 28 AE */ lbzx r8, r12, r5 +/* 803C8418 003C5378 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C841C 003C537C 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8420 003C5380 2C 08 00 FF */ cmpwi r8, 0xff +/* 803C8424 003C5384 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C8428 003C5388 41 82 00 0C */ beq lbl_803C8434 +/* 803C842C 003C538C 7D 05 43 78 */ mr r5, r8 +/* 803C8430 003C5390 48 00 01 3C */ b lbl_803C856C +lbl_803C8434: +/* 803C8434 003C5394 38 CC 00 44 */ addi r6, r12, 0x44 +/* 803C8438 003C5398 39 60 00 14 */ li r11, 0x14 +/* 803C843C 003C539C 38 C6 00 14 */ addi r6, r6, 0x14 +/* 803C8440 003C53A0 54 A8 D8 08 */ slwi r8, r5, 0x1b +/* 803C8444 003C53A4 39 60 00 05 */ li r11, 5 +/* 803C8448 003C53A8 51 48 F8 7E */ rlwimi r8, r10, 0x1f, 1, 0x1f +lbl_803C844C: +/* 803C844C 003C53AC 21 4B 00 1F */ subfic r10, r11, 0x1f +/* 803C8450 003C53B0 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C8454 003C53B4 7D 05 54 30 */ srw r5, r8, r10 +/* 803C8458 003C53B8 7C 05 00 00 */ cmpw r5, r0 +/* 803C845C 003C53BC 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8460 003C53C0 41 81 FF EC */ bgt lbl_803C844C +/* 803C8464 003C53C4 91 63 06 A4 */ stw r11, 0x6a4(r3) +lbl_803C8468: +/* 803C8468 003C53C8 55 60 10 3A */ slwi r0, r11, 2 +/* 803C846C 003C53CC 80 EC 00 40 */ lwz r7, 0x40(r12) +/* 803C8470 003C53D0 7C CC 02 14 */ add r6, r12, r0 +/* 803C8474 003C53D4 80 06 00 8C */ lwz r0, 0x8c(r6) +/* 803C8478 003C53D8 7C 00 3A 14 */ add r0, r0, r7 +/* 803C847C 003C53DC 7C A5 00 AE */ lbzx r5, r5, r0 +/* 803C8480 003C53E0 48 00 00 EC */ b lbl_803C856C +lbl_803C8484: +/* 803C8484 003C53E4 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C8488 003C53E8 55 45 2E FE */ srwi r5, r10, 0x1b +/* 803C848C 003C53EC 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C8490 003C53F0 7D 6C 28 AE */ lbzx r11, r12, r5 +/* 803C8494 003C53F4 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C8498 003C53F8 2C 0B 00 FF */ cmpwi r11, 0xff +/* 803C849C 003C53FC 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C84A0 003C5400 39 29 00 01 */ addi r9, r9, 1 +/* 803C84A4 003C5404 41 82 00 10 */ beq lbl_803C84B4 +/* 803C84A8 003C5408 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C84AC 003C540C 7D 65 5B 78 */ mr r5, r11 +/* 803C84B0 003C5410 48 00 00 BC */ b lbl_803C856C +lbl_803C84B4: +/* 803C84B4 003C5414 39 60 00 05 */ li r11, 5 +/* 803C84B8 003C5418 38 C0 00 14 */ li r6, 0x14 +lbl_803C84BC: +/* 803C84BC 003C541C 21 0B 00 1F */ subfic r8, r11, 0x1f +/* 803C84C0 003C5420 39 6B 00 01 */ addi r11, r11, 1 +/* 803C84C4 003C5424 38 C6 00 04 */ addi r6, r6, 4 +/* 803C84C8 003C5428 7D 45 44 30 */ srw r5, r10, r8 +/* 803C84CC 003C542C 7C EC 32 14 */ add r7, r12, r6 +/* 803C84D0 003C5430 80 07 00 44 */ lwz r0, 0x44(r7) +/* 803C84D4 003C5434 7C 05 00 00 */ cmpw r5, r0 +/* 803C84D8 003C5438 41 81 FF E4 */ bgt lbl_803C84BC +/* 803C84DC 003C543C 38 0B 00 01 */ addi r0, r11, 1 +/* 803C84E0 003C5440 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C84E4 003C5444 4B FF FF 84 */ b lbl_803C8468 +lbl_803C84E8: +/* 803C84E8 003C5448 20 0B 00 21 */ subfic r0, r11, 0x21 +/* 803C84EC 003C544C 38 A0 FF FF */ li r5, -1 +/* 803C84F0 003C5450 7C A7 00 30 */ slw r7, r5, r0 +/* 803C84F4 003C5454 7D 45 38 78 */ andc r5, r10, r7 +/* 803C84F8 003C5458 38 EC 00 44 */ addi r7, r12, 0x44 +/* 803C84FC 003C545C 81 03 06 9C */ lwz r8, 0x69c(r3) +/* 803C8500 003C5460 20 CB 00 21 */ subfic r6, r11, 0x21 +/* 803C8504 003C5464 39 66 00 01 */ addi r11, r6, 1 +/* 803C8508 003C5468 54 C6 10 3A */ slwi r6, r6, 2 +/* 803C850C 003C546C 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C8510 003C5470 7C E7 32 14 */ add r7, r7, r6 +/* 803C8514 003C5474 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C8518 003C5478 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C851C 003C547C 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8520 003C5480 51 45 0F FE */ rlwimi r5, r10, 1, 0x1f, 0x1f +/* 803C8524 003C5484 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C8528 003C5488 39 00 00 02 */ li r8, 2 +/* 803C852C 003C548C 48 00 00 18 */ b lbl_803C8544 +lbl_803C8530: +/* 803C8530 003C5490 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C8534 003C5494 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8538 003C5498 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C853C 003C549C 7C A5 4A 14 */ add r5, r5, r9 +/* 803C8540 003C54A0 39 08 00 01 */ addi r8, r8, 1 +lbl_803C8544: +/* 803C8544 003C54A4 7C 05 30 00 */ cmpw r5, r6 +/* 803C8548 003C54A8 5D 49 47 FE */ rlwnm r9, r10, r8, 0x1f, 0x1f +/* 803C854C 003C54AC 41 81 FF E4 */ bgt lbl_803C8530 +/* 803C8550 003C54B0 91 03 06 A4 */ stw r8, 0x6a4(r3) +/* 803C8554 003C54B4 55 60 10 3A */ slwi r0, r11, 2 +/* 803C8558 003C54B8 7C CC 02 14 */ add r6, r12, r0 +/* 803C855C 003C54BC 80 EC 00 40 */ lwz r7, 0x40(r12) +/* 803C8560 003C54C0 80 06 00 8C */ lwz r0, 0x8c(r6) +/* 803C8564 003C54C4 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8568 003C54C8 7C A5 00 AE */ lbzx r5, r5, r0 +lbl_803C856C: +/* 803C856C 003C54CC 38 00 00 20 */ li r0, 0x20 +/* 803C8570 003C54D0 7C 04 07 EC */ dcbz r4, r0 +/* 803C8574 003C54D4 38 E0 00 00 */ li r7, 0 +/* 803C8578 003C54D8 38 00 00 40 */ li r0, 0x40 +/* 803C857C 003C54DC 7C 04 07 EC */ dcbz r4, r0 +/* 803C8580 003C54E0 2C 05 00 00 */ cmpwi r5, 0 +/* 803C8584 003C54E4 41 82 00 84 */ beq lbl_803C8608 +/* 803C8588 003C54E8 81 23 06 A4 */ lwz r9, 0x6a4(r3) +/* 803C858C 003C54EC 21 49 00 21 */ subfic r10, r9, 0x21 +/* 803C8590 003C54F0 80 E3 06 A0 */ lwz r7, 0x6a0(r3) +/* 803C8594 003C54F4 7D 6A 28 11 */ subfc. r11, r10, r5 +/* 803C8598 003C54F8 39 89 FF FF */ addi r12, r9, -1 +/* 803C859C 003C54FC 41 81 00 1C */ bgt lbl_803C85B8 +/* 803C85A0 003C5500 7C 09 2A 14 */ add r0, r9, r5 +/* 803C85A4 003C5504 7C E9 60 30 */ slw r9, r7, r12 +/* 803C85A8 003C5508 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C85AC 003C550C 20 05 00 20 */ subfic r0, r5, 0x20 +/* 803C85B0 003C5510 7D 27 04 30 */ srw r7, r9, r0 +/* 803C85B4 003C5514 48 00 00 30 */ b lbl_803C85E4 +lbl_803C85B8: +/* 803C85B8 003C5518 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C85BC 003C551C 7C E0 60 30 */ slw r0, r7, r12 +/* 803C85C0 003C5520 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C85C4 003C5524 39 6B 00 01 */ addi r11, r11, 1 +/* 803C85C8 003C5528 90 E3 06 A0 */ stw r7, 0x6a0(r3) +/* 803C85CC 003C552C 7C E7 54 30 */ srw r7, r7, r10 +/* 803C85D0 003C5530 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C85D4 003C5534 7C 07 02 14 */ add r0, r7, r0 +/* 803C85D8 003C5538 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C85DC 003C553C 21 65 00 20 */ subfic r11, r5, 0x20 +/* 803C85E0 003C5540 7C 07 5C 30 */ srw r7, r0, r11 +lbl_803C85E4: +/* 803C85E4 003C5544 7C E0 07 34 */ extsh r0, r7 +/* 803C85E8 003C5548 7C 06 00 34 */ cntlzw r6, r0 +/* 803C85EC 003C554C 20 05 00 20 */ subfic r0, r5, 0x20 +/* 803C85F0 003C5550 7C 06 00 00 */ cmpw r6, r0 +/* 803C85F4 003C5554 40 81 00 14 */ ble lbl_803C8608 +/* 803C85F8 003C5558 38 00 FF FF */ li r0, -1 +/* 803C85FC 003C555C 7C 00 28 30 */ slw r0, r0, r5 +/* 803C8600 003C5560 7C E0 3A 14 */ add r7, r0, r7 +/* 803C8604 003C5564 38 E7 00 01 */ addi r7, r7, 1 +lbl_803C8608: +/* 803C8608 003C5568 38 00 00 60 */ li r0, 0x60 +/* 803C860C 003C556C 7C 04 07 EC */ dcbz r4, r0 +/* 803C8610 003C5570 A8 03 06 8A */ lha r0, 0x68a(r3) +/* 803C8614 003C5574 3C A0 80 3E */ lis r5, __THPJpegNaturalOrder@ha +/* 803C8618 003C5578 39 05 8C D0 */ addi r8, r5, __THPJpegNaturalOrder@l +/* 803C861C 003C557C 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8620 003C5580 B0 03 06 8A */ sth r0, 0x68a(r3) +/* 803C8624 003C5584 38 C0 00 01 */ li r6, 1 +/* 803C8628 003C5588 B0 04 00 00 */ sth r0, 0(r4) +/* 803C862C 003C558C 48 00 03 3C */ b lbl_803C8968 +lbl_803C8630: +/* 803C8630 003C5590 83 CD B0 C0 */ lwz r30, Uachuff@sda21(r13) +/* 803C8634 003C5594 83 E3 06 A4 */ lwz r31, 0x6a4(r3) +/* 803C8638 003C5598 39 7E 00 20 */ addi r11, r30, 0x20 +/* 803C863C 003C559C 81 83 06 A0 */ lwz r12, 0x6a0(r3) +/* 803C8640 003C55A0 38 BF 00 04 */ addi r5, r31, 4 +/* 803C8644 003C55A4 2C 1F 00 1C */ cmpwi r31, 0x1c +/* 803C8648 003C55A8 5D 8A 2E FE */ rlwnm r10, r12, r5, 0x1b, 0x1f +/* 803C864C 003C55AC 41 81 00 C4 */ bgt lbl_803C8710 +/* 803C8650 003C55B0 7C BE 50 AE */ lbzx r5, r30, r10 +/* 803C8654 003C55B4 7D 6B 50 AE */ lbzx r11, r11, r10 +/* 803C8658 003C55B8 2C 05 00 FF */ cmpwi r5, 0xff +/* 803C865C 003C55BC 41 82 00 10 */ beq lbl_803C866C +/* 803C8660 003C55C0 7F FF 5A 14 */ add r31, r31, r11 +/* 803C8664 003C55C4 93 E3 06 A4 */ stw r31, 0x6a4(r3) +/* 803C8668 003C55C8 48 00 02 4C */ b lbl_803C88B4 +lbl_803C866C: +/* 803C866C 003C55CC 38 FE 00 44 */ addi r7, r30, 0x44 +/* 803C8670 003C55D0 3B FF 00 05 */ addi r31, r31, 5 +/* 803C8674 003C55D4 38 00 00 14 */ li r0, 0x14 +/* 803C8678 003C55D8 38 A0 00 05 */ li r5, 5 +/* 803C867C 003C55DC 38 E7 00 14 */ addi r7, r7, 0x14 +lbl_803C8680: +/* 803C8680 003C55E0 2C 1F 00 21 */ cmpwi r31, 0x21 +/* 803C8684 003C55E4 55 4A 08 3C */ slwi r10, r10, 1 +/* 803C8688 003C55E8 41 82 00 18 */ beq lbl_803C86A0 +/* 803C868C 003C55EC 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f +/* 803C8690 003C55F0 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C8694 003C55F4 7D 4A 5B 78 */ or r10, r10, r11 +/* 803C8698 003C55F8 3B FF 00 01 */ addi r31, r31, 1 +/* 803C869C 003C55FC 48 00 00 48 */ b lbl_803C86E4 +lbl_803C86A0: +/* 803C86A0 003C5600 81 63 06 9C */ lwz r11, 0x69c(r3) +/* 803C86A4 003C5604 3B E0 00 01 */ li r31, 1 +/* 803C86A8 003C5608 85 8B 00 04 */ lwzu r12, 4(r11) +/* 803C86AC 003C560C 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C86B0 003C5610 91 63 06 9C */ stw r11, 0x69c(r3) +/* 803C86B4 003C5614 51 8A 0F FE */ rlwimi r10, r12, 1, 0x1f, 0x1f +/* 803C86B8 003C5618 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C86BC 003C561C 48 00 00 14 */ b lbl_803C86D0 +lbl_803C86C0: +/* 803C86C0 003C5620 55 4A 08 3C */ slwi r10, r10, 1 +/* 803C86C4 003C5624 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f +/* 803C86C8 003C5628 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C86CC 003C562C 7D 4A 5B 78 */ or r10, r10, r11 +lbl_803C86D0: +/* 803C86D0 003C5630 7C 0A 00 00 */ cmpw r10, r0 +/* 803C86D4 003C5634 3B FF 00 01 */ addi r31, r31, 1 +/* 803C86D8 003C5638 38 A5 00 01 */ addi r5, r5, 1 +/* 803C86DC 003C563C 41 81 FF E4 */ bgt lbl_803C86C0 +/* 803C86E0 003C5640 48 00 00 10 */ b lbl_803C86F0 +lbl_803C86E4: +/* 803C86E4 003C5644 7C 0A 00 00 */ cmpw r10, r0 +/* 803C86E8 003C5648 38 A5 00 01 */ addi r5, r5, 1 +/* 803C86EC 003C564C 41 81 FF 94 */ bgt lbl_803C8680 +lbl_803C86F0: +/* 803C86F0 003C5650 93 E3 06 A4 */ stw r31, 0x6a4(r3) +/* 803C86F4 003C5654 54 A0 10 3A */ slwi r0, r5, 2 +/* 803C86F8 003C5658 7C BE 02 14 */ add r5, r30, r0 +/* 803C86FC 003C565C 80 FE 00 40 */ lwz r7, 0x40(r30) +/* 803C8700 003C5660 80 05 00 8C */ lwz r0, 0x8c(r5) +/* 803C8704 003C5664 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8708 003C5668 7C AA 00 AE */ lbzx r5, r10, r0 +/* 803C870C 003C566C 48 00 01 A8 */ b lbl_803C88B4 +lbl_803C8710: +/* 803C8710 003C5670 2C 1F 00 21 */ cmpwi r31, 0x21 +/* 803C8714 003C5674 81 43 06 9C */ lwz r10, 0x69c(r3) +/* 803C8718 003C5678 41 82 00 B4 */ beq lbl_803C87CC +/* 803C871C 003C567C 2C 1F 00 20 */ cmpwi r31, 0x20 +/* 803C8720 003C5680 5D 85 2E FE */ rlwnm r5, r12, r5, 0x1b, 0x1f +/* 803C8724 003C5684 41 82 00 2C */ beq lbl_803C8750 +/* 803C8728 003C5688 7D 5E 28 AE */ lbzx r10, r30, r5 +/* 803C872C 003C568C 7D 6B 28 AE */ lbzx r11, r11, r5 +/* 803C8730 003C5690 2C 0A 00 FF */ cmpwi r10, 0xff +/* 803C8734 003C5694 7C BF 5A 14 */ add r5, r31, r11 +/* 803C8738 003C5698 41 82 00 F8 */ beq lbl_803C8830 +/* 803C873C 003C569C 2C 05 00 21 */ cmpwi r5, 0x21 +/* 803C8740 003C56A0 90 A3 06 A4 */ stw r5, 0x6a4(r3) +/* 803C8744 003C56A4 41 81 00 EC */ bgt lbl_803C8830 +/* 803C8748 003C56A8 7D 45 53 78 */ mr r5, r10 +/* 803C874C 003C56AC 48 00 01 68 */ b lbl_803C88B4 +lbl_803C8750: +/* 803C8750 003C56B0 85 8A 00 04 */ lwzu r12, 4(r10) +/* 803C8754 003C56B4 91 43 06 9C */ stw r10, 0x69c(r3) +/* 803C8758 003C56B8 51 85 27 3E */ rlwimi r5, r12, 4, 0x1c, 0x1f +/* 803C875C 003C56BC 7D 5E 28 AE */ lbzx r10, r30, r5 +/* 803C8760 003C56C0 7D 6B 28 AE */ lbzx r11, r11, r5 +/* 803C8764 003C56C4 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C8768 003C56C8 2C 0A 00 FF */ cmpwi r10, 0xff +/* 803C876C 003C56CC 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8770 003C56D0 41 82 00 0C */ beq lbl_803C877C +/* 803C8774 003C56D4 7D 45 53 78 */ mr r5, r10 +/* 803C8778 003C56D8 48 00 01 3C */ b lbl_803C88B4 +lbl_803C877C: +/* 803C877C 003C56DC 38 FE 00 44 */ addi r7, r30, 0x44 +/* 803C8780 003C56E0 3B E0 00 14 */ li r31, 0x14 +/* 803C8784 003C56E4 38 E7 00 14 */ addi r7, r7, 0x14 +/* 803C8788 003C56E8 54 AA D8 08 */ slwi r10, r5, 0x1b +/* 803C878C 003C56EC 3B E0 00 05 */ li r31, 5 +/* 803C8790 003C56F0 51 8A F8 7E */ rlwimi r10, r12, 0x1f, 1, 0x1f +lbl_803C8794: +/* 803C8794 003C56F4 21 9F 00 1F */ subfic r12, r31, 0x1f +/* 803C8798 003C56F8 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C879C 003C56FC 7D 45 64 30 */ srw r5, r10, r12 +/* 803C87A0 003C5700 7C 05 00 00 */ cmpw r5, r0 +/* 803C87A4 003C5704 3B FF 00 01 */ addi r31, r31, 1 +/* 803C87A8 003C5708 41 81 FF EC */ bgt lbl_803C8794 +/* 803C87AC 003C570C 93 E3 06 A4 */ stw r31, 0x6a4(r3) +lbl_803C87B0: +/* 803C87B0 003C5710 57 E0 10 3A */ slwi r0, r31, 2 +/* 803C87B4 003C5714 81 3E 00 40 */ lwz r9, 0x40(r30) +/* 803C87B8 003C5718 7C FE 02 14 */ add r7, r30, r0 +/* 803C87BC 003C571C 80 07 00 8C */ lwz r0, 0x8c(r7) +/* 803C87C0 003C5720 7C 00 4A 14 */ add r0, r0, r9 +/* 803C87C4 003C5724 7C A5 00 AE */ lbzx r5, r5, r0 +/* 803C87C8 003C5728 48 00 00 EC */ b lbl_803C88B4 +lbl_803C87CC: +/* 803C87CC 003C572C 85 8A 00 04 */ lwzu r12, 4(r10) +/* 803C87D0 003C5730 55 85 2E FE */ srwi r5, r12, 0x1b +/* 803C87D4 003C5734 91 43 06 9C */ stw r10, 0x69c(r3) +/* 803C87D8 003C5738 7F FE 28 AE */ lbzx r31, r30, r5 +/* 803C87DC 003C573C 7D 6B 28 AE */ lbzx r11, r11, r5 +/* 803C87E0 003C5740 2C 1F 00 FF */ cmpwi r31, 0xff +/* 803C87E4 003C5744 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C87E8 003C5748 39 6B 00 01 */ addi r11, r11, 1 +/* 803C87EC 003C574C 41 82 00 10 */ beq lbl_803C87FC +/* 803C87F0 003C5750 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C87F4 003C5754 7F E5 FB 78 */ mr r5, r31 +/* 803C87F8 003C5758 48 00 00 BC */ b lbl_803C88B4 +lbl_803C87FC: +/* 803C87FC 003C575C 3B E0 00 05 */ li r31, 5 +/* 803C8800 003C5760 38 E0 00 14 */ li r7, 0x14 +lbl_803C8804: +/* 803C8804 003C5764 21 5F 00 1F */ subfic r10, r31, 0x1f +/* 803C8808 003C5768 3B FF 00 01 */ addi r31, r31, 1 +/* 803C880C 003C576C 38 E7 00 04 */ addi r7, r7, 4 +/* 803C8810 003C5770 7D 85 54 30 */ srw r5, r12, r10 +/* 803C8814 003C5774 7D 3E 3A 14 */ add r9, r30, r7 +/* 803C8818 003C5778 80 09 00 44 */ lwz r0, 0x44(r9) +/* 803C881C 003C577C 7C 05 00 00 */ cmpw r5, r0 +/* 803C8820 003C5780 41 81 FF E4 */ bgt lbl_803C8804 +/* 803C8824 003C5784 38 1F 00 01 */ addi r0, r31, 1 +/* 803C8828 003C5788 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C882C 003C578C 4B FF FF 84 */ b lbl_803C87B0 +lbl_803C8830: +/* 803C8830 003C5790 20 1F 00 21 */ subfic r0, r31, 0x21 +/* 803C8834 003C5794 38 A0 FF FF */ li r5, -1 +/* 803C8838 003C5798 7C A9 00 30 */ slw r9, r5, r0 +/* 803C883C 003C579C 7D 85 48 78 */ andc r5, r12, r9 +/* 803C8840 003C57A0 39 3E 00 44 */ addi r9, r30, 0x44 +/* 803C8844 003C57A4 81 43 06 9C */ lwz r10, 0x69c(r3) +/* 803C8848 003C57A8 20 FF 00 21 */ subfic r7, r31, 0x21 +/* 803C884C 003C57AC 3B E7 00 01 */ addi r31, r7, 1 +/* 803C8850 003C57B0 54 E7 10 3A */ slwi r7, r7, 2 +/* 803C8854 003C57B4 85 8A 00 04 */ lwzu r12, 4(r10) +/* 803C8858 003C57B8 7D 29 3A 14 */ add r9, r9, r7 +/* 803C885C 003C57BC 91 43 06 9C */ stw r10, 0x69c(r3) +/* 803C8860 003C57C0 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C8864 003C57C4 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C8868 003C57C8 51 85 0F FE */ rlwimi r5, r12, 1, 0x1f, 0x1f +/* 803C886C 003C57CC 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8870 003C57D0 39 40 00 02 */ li r10, 2 +/* 803C8874 003C57D4 48 00 00 18 */ b lbl_803C888C +lbl_803C8878: +/* 803C8878 003C57D8 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C887C 003C57DC 3B FF 00 01 */ addi r31, r31, 1 +/* 803C8880 003C57E0 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8884 003C57E4 7C A5 5A 14 */ add r5, r5, r11 +/* 803C8888 003C57E8 39 4A 00 01 */ addi r10, r10, 1 +lbl_803C888C: +/* 803C888C 003C57EC 7C 05 38 00 */ cmpw r5, r7 +/* 803C8890 003C57F0 5D 8B 57 FE */ rlwnm r11, r12, r10, 0x1f, 0x1f +/* 803C8894 003C57F4 41 81 FF E4 */ bgt lbl_803C8878 +/* 803C8898 003C57F8 91 43 06 A4 */ stw r10, 0x6a4(r3) +/* 803C889C 003C57FC 57 E0 10 3A */ slwi r0, r31, 2 +/* 803C88A0 003C5800 7C FE 02 14 */ add r7, r30, r0 +/* 803C88A4 003C5804 81 3E 00 40 */ lwz r9, 0x40(r30) +/* 803C88A8 003C5808 80 07 00 8C */ lwz r0, 0x8c(r7) +/* 803C88AC 003C580C 7C 00 4A 14 */ add r0, r0, r9 +/* 803C88B0 003C5810 7C A5 00 AE */ lbzx r5, r5, r0 +lbl_803C88B4: +/* 803C88B4 003C5814 54 BE 07 3F */ clrlwi. r30, r5, 0x1c +/* 803C88B8 003C5818 7C A7 26 70 */ srawi r7, r5, 4 +/* 803C88BC 003C581C 41 82 00 9C */ beq lbl_803C8958 +/* 803C88C0 003C5820 7C C6 3A 14 */ add r6, r6, r7 +/* 803C88C4 003C5824 81 23 06 A4 */ lwz r9, 0x6a4(r3) +/* 803C88C8 003C5828 21 49 00 21 */ subfic r10, r9, 0x21 +/* 803C88CC 003C582C 80 E3 06 A0 */ lwz r7, 0x6a0(r3) +/* 803C88D0 003C5830 7D 6A F0 51 */ subf. r11, r10, r30 +/* 803C88D4 003C5834 39 89 FF FF */ addi r12, r9, -1 +/* 803C88D8 003C5838 41 81 00 1C */ bgt lbl_803C88F4 +/* 803C88DC 003C583C 7C 09 F2 14 */ add r0, r9, r30 +/* 803C88E0 003C5840 7C E9 60 30 */ slw r9, r7, r12 +/* 803C88E4 003C5844 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C88E8 003C5848 20 1E 00 20 */ subfic r0, r30, 0x20 +/* 803C88EC 003C584C 7D 27 04 30 */ srw r7, r9, r0 +/* 803C88F0 003C5850 48 00 00 30 */ b lbl_803C8920 +lbl_803C88F4: +/* 803C88F4 003C5854 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C88F8 003C5858 7C E0 60 30 */ slw r0, r7, r12 +/* 803C88FC 003C585C 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8900 003C5860 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8904 003C5864 90 E3 06 A0 */ stw r7, 0x6a0(r3) +/* 803C8908 003C5868 7C E7 54 30 */ srw r7, r7, r10 +/* 803C890C 003C586C 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C8910 003C5870 7C 07 02 14 */ add r0, r7, r0 +/* 803C8914 003C5874 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8918 003C5878 21 7E 00 20 */ subfic r11, r30, 0x20 +/* 803C891C 003C587C 7C 07 5C 30 */ srw r7, r0, r11 +lbl_803C8920: +/* 803C8920 003C5880 7C E5 00 34 */ cntlzw r5, r7 +/* 803C8924 003C5884 20 1E 00 20 */ subfic r0, r30, 0x20 +/* 803C8928 003C5888 7C 05 00 00 */ cmpw r5, r0 +/* 803C892C 003C588C 40 81 00 14 */ ble lbl_803C8940 +/* 803C8930 003C5890 38 00 FF FF */ li r0, -1 +/* 803C8934 003C5894 7C 00 F0 30 */ slw r0, r0, r30 +/* 803C8938 003C5898 7C E0 3A 14 */ add r7, r0, r7 +/* 803C893C 003C589C 38 E7 00 01 */ addi r7, r7, 1 +lbl_803C8940: +/* 803C8940 003C58A0 7C A8 32 14 */ add r5, r8, r6 +/* 803C8944 003C58A4 88 05 00 00 */ lbz r0, 0(r5) +/* 803C8948 003C58A8 7C E5 07 34 */ extsh r5, r7 +/* 803C894C 003C58AC 54 00 08 3C */ slwi r0, r0, 1 +/* 803C8950 003C58B0 7C A4 03 2E */ sthx r5, r4, r0 +/* 803C8954 003C58B4 48 00 00 10 */ b lbl_803C8964 +lbl_803C8958: +/* 803C8958 003C58B8 2C 07 00 0F */ cmpwi r7, 0xf +/* 803C895C 003C58BC 40 82 00 14 */ bne lbl_803C8970 +/* 803C8960 003C58C0 38 C6 00 0F */ addi r6, r6, 0xf +lbl_803C8964: +/* 803C8964 003C58C4 38 C6 00 01 */ addi r6, r6, 1 +lbl_803C8968: +/* 803C8968 003C58C8 2C 06 00 40 */ cmpwi r6, 0x40 +/* 803C896C 003C58CC 41 80 FC C4 */ blt lbl_803C8630 +lbl_803C8970: +/* 803C8970 003C58D0 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 803C8974 003C58D4 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 803C8978 003C58D8 38 21 00 18 */ addi r1, r1, 0x18 +/* 803C897C 003C58DC 4E 80 00 20 */ blr + +__THPHuffDecodeDCTCompV: # local func +/* 803C8980 003C58E0 94 21 FF E8 */ stwu r1, -0x18(r1) +/* 803C8984 003C58E4 93 E1 00 14 */ stw r31, 0x14(r1) +/* 803C8988 003C58E8 93 C1 00 10 */ stw r30, 0x10(r1) +/* 803C898C 003C58EC 7C 00 27 EC */ dcbz 0, r4 +/* 803C8990 003C58F0 81 8D B0 80 */ lwz r12, Vdchuff@sda21(r13) +/* 803C8994 003C58F4 81 63 06 A4 */ lwz r11, 0x6a4(r3) +/* 803C8998 003C58F8 39 2C 00 20 */ addi r9, r12, 0x20 +/* 803C899C 003C58FC 81 43 06 A0 */ lwz r10, 0x6a0(r3) +/* 803C89A0 003C5900 38 AB 00 04 */ addi r5, r11, 4 +/* 803C89A4 003C5904 2C 0B 00 1C */ cmpwi r11, 0x1c +/* 803C89A8 003C5908 5D 48 2E FE */ rlwnm r8, r10, r5, 0x1b, 0x1f +/* 803C89AC 003C590C 41 81 00 C4 */ bgt lbl_803C8A70 +/* 803C89B0 003C5910 7C AC 40 AE */ lbzx r5, r12, r8 +/* 803C89B4 003C5914 7D 29 40 AE */ lbzx r9, r9, r8 +/* 803C89B8 003C5918 2C 05 00 FF */ cmpwi r5, 0xff +/* 803C89BC 003C591C 41 82 00 10 */ beq lbl_803C89CC +/* 803C89C0 003C5920 7D 6B 4A 14 */ add r11, r11, r9 +/* 803C89C4 003C5924 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C89C8 003C5928 48 00 02 4C */ b lbl_803C8C14 +lbl_803C89CC: +/* 803C89CC 003C592C 38 CC 00 44 */ addi r6, r12, 0x44 +/* 803C89D0 003C5930 39 6B 00 05 */ addi r11, r11, 5 +/* 803C89D4 003C5934 38 00 00 14 */ li r0, 0x14 +/* 803C89D8 003C5938 38 A0 00 05 */ li r5, 5 +/* 803C89DC 003C593C 38 C6 00 14 */ addi r6, r6, 0x14 +lbl_803C89E0: +/* 803C89E0 003C5940 2C 0B 00 21 */ cmpwi r11, 0x21 +/* 803C89E4 003C5944 55 08 08 3C */ slwi r8, r8, 1 +/* 803C89E8 003C5948 41 82 00 18 */ beq lbl_803C8A00 +/* 803C89EC 003C594C 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f +/* 803C89F0 003C5950 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C89F4 003C5954 7D 08 4B 78 */ or r8, r8, r9 +/* 803C89F8 003C5958 39 6B 00 01 */ addi r11, r11, 1 +/* 803C89FC 003C595C 48 00 00 48 */ b lbl_803C8A44 +lbl_803C8A00: +/* 803C8A00 003C5960 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C8A04 003C5964 39 60 00 01 */ li r11, 1 +/* 803C8A08 003C5968 85 49 00 04 */ lwzu r10, 4(r9) +/* 803C8A0C 003C596C 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C8A10 003C5970 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C8A14 003C5974 51 48 0F FE */ rlwimi r8, r10, 1, 0x1f, 0x1f +/* 803C8A18 003C5978 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8A1C 003C597C 48 00 00 14 */ b lbl_803C8A30 +lbl_803C8A20: +/* 803C8A20 003C5980 55 08 08 3C */ slwi r8, r8, 1 +/* 803C8A24 003C5984 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f +/* 803C8A28 003C5988 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C8A2C 003C598C 7D 08 4B 78 */ or r8, r8, r9 +lbl_803C8A30: +/* 803C8A30 003C5990 7C 08 00 00 */ cmpw r8, r0 +/* 803C8A34 003C5994 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8A38 003C5998 38 A5 00 01 */ addi r5, r5, 1 +/* 803C8A3C 003C599C 41 81 FF E4 */ bgt lbl_803C8A20 +/* 803C8A40 003C59A0 48 00 00 10 */ b lbl_803C8A50 +lbl_803C8A44: +/* 803C8A44 003C59A4 7C 08 00 00 */ cmpw r8, r0 +/* 803C8A48 003C59A8 38 A5 00 01 */ addi r5, r5, 1 +/* 803C8A4C 003C59AC 41 81 FF 94 */ bgt lbl_803C89E0 +lbl_803C8A50: +/* 803C8A50 003C59B0 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8A54 003C59B4 54 A0 10 3A */ slwi r0, r5, 2 +/* 803C8A58 003C59B8 7C AC 02 14 */ add r5, r12, r0 +/* 803C8A5C 003C59BC 80 CC 00 40 */ lwz r6, 0x40(r12) +/* 803C8A60 003C59C0 80 05 00 8C */ lwz r0, 0x8c(r5) +/* 803C8A64 003C59C4 7C 00 32 14 */ add r0, r0, r6 +/* 803C8A68 003C59C8 7C A8 00 AE */ lbzx r5, r8, r0 +/* 803C8A6C 003C59CC 48 00 01 A8 */ b lbl_803C8C14 +lbl_803C8A70: +/* 803C8A70 003C59D0 2C 0B 00 21 */ cmpwi r11, 0x21 +/* 803C8A74 003C59D4 81 03 06 9C */ lwz r8, 0x69c(r3) +/* 803C8A78 003C59D8 41 82 00 B4 */ beq lbl_803C8B2C +/* 803C8A7C 003C59DC 2C 0B 00 20 */ cmpwi r11, 0x20 +/* 803C8A80 003C59E0 5D 45 2E FE */ rlwnm r5, r10, r5, 0x1b, 0x1f +/* 803C8A84 003C59E4 41 82 00 2C */ beq lbl_803C8AB0 +/* 803C8A88 003C59E8 7D 0C 28 AE */ lbzx r8, r12, r5 +/* 803C8A8C 003C59EC 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C8A90 003C59F0 2C 08 00 FF */ cmpwi r8, 0xff +/* 803C8A94 003C59F4 7C AB 4A 14 */ add r5, r11, r9 +/* 803C8A98 003C59F8 41 82 00 F8 */ beq lbl_803C8B90 +/* 803C8A9C 003C59FC 2C 05 00 21 */ cmpwi r5, 0x21 +/* 803C8AA0 003C5A00 90 A3 06 A4 */ stw r5, 0x6a4(r3) +/* 803C8AA4 003C5A04 41 81 00 EC */ bgt lbl_803C8B90 +/* 803C8AA8 003C5A08 7D 05 43 78 */ mr r5, r8 +/* 803C8AAC 003C5A0C 48 00 01 68 */ b lbl_803C8C14 +lbl_803C8AB0: +/* 803C8AB0 003C5A10 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C8AB4 003C5A14 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C8AB8 003C5A18 51 45 27 3E */ rlwimi r5, r10, 4, 0x1c, 0x1f +/* 803C8ABC 003C5A1C 7D 0C 28 AE */ lbzx r8, r12, r5 +/* 803C8AC0 003C5A20 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C8AC4 003C5A24 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8AC8 003C5A28 2C 08 00 FF */ cmpwi r8, 0xff +/* 803C8ACC 003C5A2C 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C8AD0 003C5A30 41 82 00 0C */ beq lbl_803C8ADC +/* 803C8AD4 003C5A34 7D 05 43 78 */ mr r5, r8 +/* 803C8AD8 003C5A38 48 00 01 3C */ b lbl_803C8C14 +lbl_803C8ADC: +/* 803C8ADC 003C5A3C 38 CC 00 44 */ addi r6, r12, 0x44 +/* 803C8AE0 003C5A40 39 60 00 14 */ li r11, 0x14 +/* 803C8AE4 003C5A44 38 C6 00 14 */ addi r6, r6, 0x14 +/* 803C8AE8 003C5A48 54 A8 D8 08 */ slwi r8, r5, 0x1b +/* 803C8AEC 003C5A4C 39 60 00 05 */ li r11, 5 +/* 803C8AF0 003C5A50 51 48 F8 7E */ rlwimi r8, r10, 0x1f, 1, 0x1f +lbl_803C8AF4: +/* 803C8AF4 003C5A54 21 4B 00 1F */ subfic r10, r11, 0x1f +/* 803C8AF8 003C5A58 84 06 00 04 */ lwzu r0, 4(r6) +/* 803C8AFC 003C5A5C 7D 05 54 30 */ srw r5, r8, r10 +/* 803C8B00 003C5A60 7C 05 00 00 */ cmpw r5, r0 +/* 803C8B04 003C5A64 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8B08 003C5A68 41 81 FF EC */ bgt lbl_803C8AF4 +/* 803C8B0C 003C5A6C 91 63 06 A4 */ stw r11, 0x6a4(r3) +lbl_803C8B10: +/* 803C8B10 003C5A70 55 60 10 3A */ slwi r0, r11, 2 +/* 803C8B14 003C5A74 80 EC 00 40 */ lwz r7, 0x40(r12) +/* 803C8B18 003C5A78 7C CC 02 14 */ add r6, r12, r0 +/* 803C8B1C 003C5A7C 80 06 00 8C */ lwz r0, 0x8c(r6) +/* 803C8B20 003C5A80 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8B24 003C5A84 7C A5 00 AE */ lbzx r5, r5, r0 +/* 803C8B28 003C5A88 48 00 00 EC */ b lbl_803C8C14 +lbl_803C8B2C: +/* 803C8B2C 003C5A8C 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C8B30 003C5A90 55 45 2E FE */ srwi r5, r10, 0x1b +/* 803C8B34 003C5A94 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C8B38 003C5A98 7D 6C 28 AE */ lbzx r11, r12, r5 +/* 803C8B3C 003C5A9C 7D 29 28 AE */ lbzx r9, r9, r5 +/* 803C8B40 003C5AA0 2C 0B 00 FF */ cmpwi r11, 0xff +/* 803C8B44 003C5AA4 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8B48 003C5AA8 39 29 00 01 */ addi r9, r9, 1 +/* 803C8B4C 003C5AAC 41 82 00 10 */ beq lbl_803C8B5C +/* 803C8B50 003C5AB0 91 23 06 A4 */ stw r9, 0x6a4(r3) +/* 803C8B54 003C5AB4 7D 65 5B 78 */ mr r5, r11 +/* 803C8B58 003C5AB8 48 00 00 BC */ b lbl_803C8C14 +lbl_803C8B5C: +/* 803C8B5C 003C5ABC 39 60 00 05 */ li r11, 5 +/* 803C8B60 003C5AC0 38 C0 00 14 */ li r6, 0x14 +lbl_803C8B64: +/* 803C8B64 003C5AC4 21 0B 00 1F */ subfic r8, r11, 0x1f +/* 803C8B68 003C5AC8 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8B6C 003C5ACC 38 C6 00 04 */ addi r6, r6, 4 +/* 803C8B70 003C5AD0 7D 45 44 30 */ srw r5, r10, r8 +/* 803C8B74 003C5AD4 7C EC 32 14 */ add r7, r12, r6 +/* 803C8B78 003C5AD8 80 07 00 44 */ lwz r0, 0x44(r7) +/* 803C8B7C 003C5ADC 7C 05 00 00 */ cmpw r5, r0 +/* 803C8B80 003C5AE0 41 81 FF E4 */ bgt lbl_803C8B64 +/* 803C8B84 003C5AE4 38 0B 00 01 */ addi r0, r11, 1 +/* 803C8B88 003C5AE8 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C8B8C 003C5AEC 4B FF FF 84 */ b lbl_803C8B10 +lbl_803C8B90: +/* 803C8B90 003C5AF0 20 0B 00 21 */ subfic r0, r11, 0x21 +/* 803C8B94 003C5AF4 38 A0 FF FF */ li r5, -1 +/* 803C8B98 003C5AF8 7C A7 00 30 */ slw r7, r5, r0 +/* 803C8B9C 003C5AFC 7D 45 38 78 */ andc r5, r10, r7 +/* 803C8BA0 003C5B00 38 EC 00 44 */ addi r7, r12, 0x44 +/* 803C8BA4 003C5B04 81 03 06 9C */ lwz r8, 0x69c(r3) +/* 803C8BA8 003C5B08 20 CB 00 21 */ subfic r6, r11, 0x21 +/* 803C8BAC 003C5B0C 39 66 00 01 */ addi r11, r6, 1 +/* 803C8BB0 003C5B10 54 C6 10 3A */ slwi r6, r6, 2 +/* 803C8BB4 003C5B14 85 48 00 04 */ lwzu r10, 4(r8) +/* 803C8BB8 003C5B18 7C E7 32 14 */ add r7, r7, r6 +/* 803C8BBC 003C5B1C 91 03 06 9C */ stw r8, 0x69c(r3) +/* 803C8BC0 003C5B20 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C8BC4 003C5B24 91 43 06 A0 */ stw r10, 0x6a0(r3) +/* 803C8BC8 003C5B28 51 45 0F FE */ rlwimi r5, r10, 1, 0x1f, 0x1f +/* 803C8BCC 003C5B2C 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C8BD0 003C5B30 39 00 00 02 */ li r8, 2 +/* 803C8BD4 003C5B34 48 00 00 18 */ b lbl_803C8BEC +lbl_803C8BD8: +/* 803C8BD8 003C5B38 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C8BDC 003C5B3C 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8BE0 003C5B40 84 C7 00 04 */ lwzu r6, 4(r7) +/* 803C8BE4 003C5B44 7C A5 4A 14 */ add r5, r5, r9 +/* 803C8BE8 003C5B48 39 08 00 01 */ addi r8, r8, 1 +lbl_803C8BEC: +/* 803C8BEC 003C5B4C 7C 05 30 00 */ cmpw r5, r6 +/* 803C8BF0 003C5B50 5D 49 47 FE */ rlwnm r9, r10, r8, 0x1f, 0x1f +/* 803C8BF4 003C5B54 41 81 FF E4 */ bgt lbl_803C8BD8 +/* 803C8BF8 003C5B58 91 03 06 A4 */ stw r8, 0x6a4(r3) +/* 803C8BFC 003C5B5C 55 60 10 3A */ slwi r0, r11, 2 +/* 803C8C00 003C5B60 7C CC 02 14 */ add r6, r12, r0 +/* 803C8C04 003C5B64 80 EC 00 40 */ lwz r7, 0x40(r12) +/* 803C8C08 003C5B68 80 06 00 8C */ lwz r0, 0x8c(r6) +/* 803C8C0C 003C5B6C 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8C10 003C5B70 7C A5 00 AE */ lbzx r5, r5, r0 +lbl_803C8C14: +/* 803C8C14 003C5B74 38 00 00 20 */ li r0, 0x20 +/* 803C8C18 003C5B78 7C 04 07 EC */ dcbz r4, r0 +/* 803C8C1C 003C5B7C 38 E0 00 00 */ li r7, 0 +/* 803C8C20 003C5B80 38 00 00 40 */ li r0, 0x40 +/* 803C8C24 003C5B84 7C 04 07 EC */ dcbz r4, r0 +/* 803C8C28 003C5B88 2C 05 00 00 */ cmpwi r5, 0 +/* 803C8C2C 003C5B8C 41 82 00 84 */ beq lbl_803C8CB0 +/* 803C8C30 003C5B90 81 23 06 A4 */ lwz r9, 0x6a4(r3) +/* 803C8C34 003C5B94 21 49 00 21 */ subfic r10, r9, 0x21 +/* 803C8C38 003C5B98 80 E3 06 A0 */ lwz r7, 0x6a0(r3) +/* 803C8C3C 003C5B9C 7D 6A 28 51 */ subf. r11, r10, r5 +/* 803C8C40 003C5BA0 39 89 FF FF */ addi r12, r9, -1 +/* 803C8C44 003C5BA4 41 81 00 1C */ bgt lbl_803C8C60 +/* 803C8C48 003C5BA8 7C 09 2A 14 */ add r0, r9, r5 +/* 803C8C4C 003C5BAC 7C E9 60 30 */ slw r9, r7, r12 +/* 803C8C50 003C5BB0 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C8C54 003C5BB4 20 05 00 20 */ subfic r0, r5, 0x20 +/* 803C8C58 003C5BB8 7D 27 04 30 */ srw r7, r9, r0 +/* 803C8C5C 003C5BBC 48 00 00 30 */ b lbl_803C8C8C +lbl_803C8C60: +/* 803C8C60 003C5BC0 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C8C64 003C5BC4 7C E0 60 30 */ slw r0, r7, r12 +/* 803C8C68 003C5BC8 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8C6C 003C5BCC 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8C70 003C5BD0 90 E3 06 A0 */ stw r7, 0x6a0(r3) +/* 803C8C74 003C5BD4 7C E7 54 30 */ srw r7, r7, r10 +/* 803C8C78 003C5BD8 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C8C7C 003C5BDC 7C 07 02 14 */ add r0, r7, r0 +/* 803C8C80 003C5BE0 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8C84 003C5BE4 21 65 00 20 */ subfic r11, r5, 0x20 +/* 803C8C88 003C5BE8 7C 07 5C 30 */ srw r7, r0, r11 +lbl_803C8C8C: +/* 803C8C8C 003C5BEC 7C E0 07 34 */ extsh r0, r7 +/* 803C8C90 003C5BF0 7C 06 00 34 */ cntlzw r6, r0 +/* 803C8C94 003C5BF4 20 05 00 20 */ subfic r0, r5, 0x20 +/* 803C8C98 003C5BF8 7C 06 00 00 */ cmpw r6, r0 +/* 803C8C9C 003C5BFC 40 81 00 14 */ ble lbl_803C8CB0 +/* 803C8CA0 003C5C00 38 00 FF FF */ li r0, -1 +/* 803C8CA4 003C5C04 7C 00 28 30 */ slw r0, r0, r5 +/* 803C8CA8 003C5C08 7C E0 3A 14 */ add r7, r0, r7 +/* 803C8CAC 003C5C0C 38 E7 00 01 */ addi r7, r7, 1 +lbl_803C8CB0: +/* 803C8CB0 003C5C10 38 00 00 60 */ li r0, 0x60 +/* 803C8CB4 003C5C14 7C 04 07 EC */ dcbz r4, r0 +/* 803C8CB8 003C5C18 A8 03 06 90 */ lha r0, 0x690(r3) +/* 803C8CBC 003C5C1C 3C A0 80 3E */ lis r5, __THPJpegNaturalOrder@ha +/* 803C8CC0 003C5C20 39 05 8C D0 */ addi r8, r5, __THPJpegNaturalOrder@l +/* 803C8CC4 003C5C24 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8CC8 003C5C28 B0 03 06 90 */ sth r0, 0x690(r3) +/* 803C8CCC 003C5C2C 38 C0 00 01 */ li r6, 1 +/* 803C8CD0 003C5C30 B0 04 00 00 */ sth r0, 0(r4) +/* 803C8CD4 003C5C34 48 00 03 3C */ b lbl_803C9010 +lbl_803C8CD8: +/* 803C8CD8 003C5C38 83 CD B0 E0 */ lwz r30, Vachuff@sda21(r13) +/* 803C8CDC 003C5C3C 83 E3 06 A4 */ lwz r31, 0x6a4(r3) +/* 803C8CE0 003C5C40 39 7E 00 20 */ addi r11, r30, 0x20 +/* 803C8CE4 003C5C44 81 83 06 A0 */ lwz r12, 0x6a0(r3) +/* 803C8CE8 003C5C48 38 BF 00 04 */ addi r5, r31, 4 +/* 803C8CEC 003C5C4C 2C 1F 00 1C */ cmpwi r31, 0x1c +/* 803C8CF0 003C5C50 5D 8A 2E FE */ rlwnm r10, r12, r5, 0x1b, 0x1f +/* 803C8CF4 003C5C54 41 81 00 C4 */ bgt lbl_803C8DB8 +/* 803C8CF8 003C5C58 7C BE 50 AE */ lbzx r5, r30, r10 +/* 803C8CFC 003C5C5C 7D 6B 50 AE */ lbzx r11, r11, r10 +/* 803C8D00 003C5C60 2C 05 00 FF */ cmpwi r5, 0xff +/* 803C8D04 003C5C64 41 82 00 10 */ beq lbl_803C8D14 +/* 803C8D08 003C5C68 7F FF 5A 14 */ add r31, r31, r11 +/* 803C8D0C 003C5C6C 93 E3 06 A4 */ stw r31, 0x6a4(r3) +/* 803C8D10 003C5C70 48 00 02 4C */ b lbl_803C8F5C +lbl_803C8D14: +/* 803C8D14 003C5C74 38 FE 00 44 */ addi r7, r30, 0x44 +/* 803C8D18 003C5C78 3B FF 00 05 */ addi r31, r31, 5 +/* 803C8D1C 003C5C7C 38 00 00 14 */ li r0, 0x14 +/* 803C8D20 003C5C80 38 A0 00 05 */ li r5, 5 +/* 803C8D24 003C5C84 38 E7 00 14 */ addi r7, r7, 0x14 +lbl_803C8D28: +/* 803C8D28 003C5C88 2C 1F 00 21 */ cmpwi r31, 0x21 +/* 803C8D2C 003C5C8C 55 4A 08 3C */ slwi r10, r10, 1 +/* 803C8D30 003C5C90 41 82 00 18 */ beq lbl_803C8D48 +/* 803C8D34 003C5C94 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f +/* 803C8D38 003C5C98 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C8D3C 003C5C9C 7D 4A 5B 78 */ or r10, r10, r11 +/* 803C8D40 003C5CA0 3B FF 00 01 */ addi r31, r31, 1 +/* 803C8D44 003C5CA4 48 00 00 48 */ b lbl_803C8D8C +lbl_803C8D48: +/* 803C8D48 003C5CA8 81 63 06 9C */ lwz r11, 0x69c(r3) +/* 803C8D4C 003C5CAC 3B E0 00 01 */ li r31, 1 +/* 803C8D50 003C5CB0 85 8B 00 04 */ lwzu r12, 4(r11) +/* 803C8D54 003C5CB4 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C8D58 003C5CB8 91 63 06 9C */ stw r11, 0x69c(r3) +/* 803C8D5C 003C5CBC 51 8A 0F FE */ rlwimi r10, r12, 1, 0x1f, 0x1f +/* 803C8D60 003C5CC0 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C8D64 003C5CC4 48 00 00 14 */ b lbl_803C8D78 +lbl_803C8D68: +/* 803C8D68 003C5CC8 55 4A 08 3C */ slwi r10, r10, 1 +/* 803C8D6C 003C5CCC 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f +/* 803C8D70 003C5CD0 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C8D74 003C5CD4 7D 4A 5B 78 */ or r10, r10, r11 +lbl_803C8D78: +/* 803C8D78 003C5CD8 7C 0A 00 00 */ cmpw r10, r0 +/* 803C8D7C 003C5CDC 3B FF 00 01 */ addi r31, r31, 1 +/* 803C8D80 003C5CE0 38 A5 00 01 */ addi r5, r5, 1 +/* 803C8D84 003C5CE4 41 81 FF E4 */ bgt lbl_803C8D68 +/* 803C8D88 003C5CE8 48 00 00 10 */ b lbl_803C8D98 +lbl_803C8D8C: +/* 803C8D8C 003C5CEC 7C 0A 00 00 */ cmpw r10, r0 +/* 803C8D90 003C5CF0 38 A5 00 01 */ addi r5, r5, 1 +/* 803C8D94 003C5CF4 41 81 FF 94 */ bgt lbl_803C8D28 +lbl_803C8D98: +/* 803C8D98 003C5CF8 93 E3 06 A4 */ stw r31, 0x6a4(r3) +/* 803C8D9C 003C5CFC 54 A0 10 3A */ slwi r0, r5, 2 +/* 803C8DA0 003C5D00 7C BE 02 14 */ add r5, r30, r0 +/* 803C8DA4 003C5D04 80 FE 00 40 */ lwz r7, 0x40(r30) +/* 803C8DA8 003C5D08 80 05 00 8C */ lwz r0, 0x8c(r5) +/* 803C8DAC 003C5D0C 7C 00 3A 14 */ add r0, r0, r7 +/* 803C8DB0 003C5D10 7C AA 00 AE */ lbzx r5, r10, r0 +/* 803C8DB4 003C5D14 48 00 01 A8 */ b lbl_803C8F5C +lbl_803C8DB8: +/* 803C8DB8 003C5D18 2C 1F 00 21 */ cmpwi r31, 0x21 +/* 803C8DBC 003C5D1C 81 43 06 9C */ lwz r10, 0x69c(r3) +/* 803C8DC0 003C5D20 41 82 00 B4 */ beq lbl_803C8E74 +/* 803C8DC4 003C5D24 2C 1F 00 20 */ cmpwi r31, 0x20 +/* 803C8DC8 003C5D28 5D 85 2E FE */ rlwnm r5, r12, r5, 0x1b, 0x1f +/* 803C8DCC 003C5D2C 41 82 00 2C */ beq lbl_803C8DF8 +/* 803C8DD0 003C5D30 7D 5E 28 AE */ lbzx r10, r30, r5 +/* 803C8DD4 003C5D34 7D 6B 28 AE */ lbzx r11, r11, r5 +/* 803C8DD8 003C5D38 2C 0A 00 FF */ cmpwi r10, 0xff +/* 803C8DDC 003C5D3C 7C BF 5A 14 */ add r5, r31, r11 +/* 803C8DE0 003C5D40 41 82 00 F8 */ beq lbl_803C8ED8 +/* 803C8DE4 003C5D44 2C 05 00 21 */ cmpwi r5, 0x21 +/* 803C8DE8 003C5D48 90 A3 06 A4 */ stw r5, 0x6a4(r3) +/* 803C8DEC 003C5D4C 41 81 00 EC */ bgt lbl_803C8ED8 +/* 803C8DF0 003C5D50 7D 45 53 78 */ mr r5, r10 +/* 803C8DF4 003C5D54 48 00 01 68 */ b lbl_803C8F5C +lbl_803C8DF8: +/* 803C8DF8 003C5D58 85 8A 00 04 */ lwzu r12, 4(r10) +/* 803C8DFC 003C5D5C 91 43 06 9C */ stw r10, 0x69c(r3) +/* 803C8E00 003C5D60 51 85 27 3E */ rlwimi r5, r12, 4, 0x1c, 0x1f +/* 803C8E04 003C5D64 7D 5E 28 AE */ lbzx r10, r30, r5 +/* 803C8E08 003C5D68 7D 6B 28 AE */ lbzx r11, r11, r5 +/* 803C8E0C 003C5D6C 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C8E10 003C5D70 2C 0A 00 FF */ cmpwi r10, 0xff +/* 803C8E14 003C5D74 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8E18 003C5D78 41 82 00 0C */ beq lbl_803C8E24 +/* 803C8E1C 003C5D7C 7D 45 53 78 */ mr r5, r10 +/* 803C8E20 003C5D80 48 00 01 3C */ b lbl_803C8F5C +lbl_803C8E24: +/* 803C8E24 003C5D84 38 FE 00 44 */ addi r7, r30, 0x44 +/* 803C8E28 003C5D88 3B E0 00 14 */ li r31, 0x14 +/* 803C8E2C 003C5D8C 38 E7 00 14 */ addi r7, r7, 0x14 +/* 803C8E30 003C5D90 54 AA D8 08 */ slwi r10, r5, 0x1b +/* 803C8E34 003C5D94 3B E0 00 05 */ li r31, 5 +/* 803C8E38 003C5D98 51 8A F8 7E */ rlwimi r10, r12, 0x1f, 1, 0x1f +lbl_803C8E3C: +/* 803C8E3C 003C5D9C 21 9F 00 1F */ subfic r12, r31, 0x1f +/* 803C8E40 003C5DA0 84 07 00 04 */ lwzu r0, 4(r7) +/* 803C8E44 003C5DA4 7D 45 64 30 */ srw r5, r10, r12 +/* 803C8E48 003C5DA8 7C 05 00 00 */ cmpw r5, r0 +/* 803C8E4C 003C5DAC 3B FF 00 01 */ addi r31, r31, 1 +/* 803C8E50 003C5DB0 41 81 FF EC */ bgt lbl_803C8E3C +/* 803C8E54 003C5DB4 93 E3 06 A4 */ stw r31, 0x6a4(r3) +lbl_803C8E58: +/* 803C8E58 003C5DB8 57 E0 10 3A */ slwi r0, r31, 2 +/* 803C8E5C 003C5DBC 81 3E 00 40 */ lwz r9, 0x40(r30) +/* 803C8E60 003C5DC0 7C FE 02 14 */ add r7, r30, r0 +/* 803C8E64 003C5DC4 80 07 00 8C */ lwz r0, 0x8c(r7) +/* 803C8E68 003C5DC8 7C 00 4A 14 */ add r0, r0, r9 +/* 803C8E6C 003C5DCC 7C A5 00 AE */ lbzx r5, r5, r0 +/* 803C8E70 003C5DD0 48 00 00 EC */ b lbl_803C8F5C +lbl_803C8E74: +/* 803C8E74 003C5DD4 85 8A 00 04 */ lwzu r12, 4(r10) +/* 803C8E78 003C5DD8 55 85 2E FE */ srwi r5, r12, 0x1b +/* 803C8E7C 003C5DDC 91 43 06 9C */ stw r10, 0x69c(r3) +/* 803C8E80 003C5DE0 7F FE 28 AE */ lbzx r31, r30, r5 +/* 803C8E84 003C5DE4 7D 6B 28 AE */ lbzx r11, r11, r5 +/* 803C8E88 003C5DE8 2C 1F 00 FF */ cmpwi r31, 0xff +/* 803C8E8C 003C5DEC 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C8E90 003C5DF0 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8E94 003C5DF4 41 82 00 10 */ beq lbl_803C8EA4 +/* 803C8E98 003C5DF8 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8E9C 003C5DFC 7F E5 FB 78 */ mr r5, r31 +/* 803C8EA0 003C5E00 48 00 00 BC */ b lbl_803C8F5C +lbl_803C8EA4: +/* 803C8EA4 003C5E04 3B E0 00 05 */ li r31, 5 +/* 803C8EA8 003C5E08 38 E0 00 14 */ li r7, 0x14 +lbl_803C8EAC: +/* 803C8EAC 003C5E0C 21 5F 00 1F */ subfic r10, r31, 0x1f +/* 803C8EB0 003C5E10 3B FF 00 01 */ addi r31, r31, 1 +/* 803C8EB4 003C5E14 38 E7 00 04 */ addi r7, r7, 4 +/* 803C8EB8 003C5E18 7D 85 54 30 */ srw r5, r12, r10 +/* 803C8EBC 003C5E1C 7D 3E 3A 14 */ add r9, r30, r7 +/* 803C8EC0 003C5E20 80 09 00 44 */ lwz r0, 0x44(r9) +/* 803C8EC4 003C5E24 7C 05 00 00 */ cmpw r5, r0 +/* 803C8EC8 003C5E28 41 81 FF E4 */ bgt lbl_803C8EAC +/* 803C8ECC 003C5E2C 38 1F 00 01 */ addi r0, r31, 1 +/* 803C8ED0 003C5E30 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C8ED4 003C5E34 4B FF FF 84 */ b lbl_803C8E58 +lbl_803C8ED8: +/* 803C8ED8 003C5E38 20 1F 00 21 */ subfic r0, r31, 0x21 +/* 803C8EDC 003C5E3C 38 A0 FF FF */ li r5, -1 +/* 803C8EE0 003C5E40 7C A9 00 30 */ slw r9, r5, r0 +/* 803C8EE4 003C5E44 7D 85 48 78 */ andc r5, r12, r9 +/* 803C8EE8 003C5E48 39 3E 00 44 */ addi r9, r30, 0x44 +/* 803C8EEC 003C5E4C 81 43 06 9C */ lwz r10, 0x69c(r3) +/* 803C8EF0 003C5E50 20 FF 00 21 */ subfic r7, r31, 0x21 +/* 803C8EF4 003C5E54 3B E7 00 01 */ addi r31, r7, 1 +/* 803C8EF8 003C5E58 54 E7 10 3A */ slwi r7, r7, 2 +/* 803C8EFC 003C5E5C 85 8A 00 04 */ lwzu r12, 4(r10) +/* 803C8F00 003C5E60 7D 29 3A 14 */ add r9, r9, r7 +/* 803C8F04 003C5E64 91 43 06 9C */ stw r10, 0x69c(r3) +/* 803C8F08 003C5E68 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C8F0C 003C5E6C 91 83 06 A0 */ stw r12, 0x6a0(r3) +/* 803C8F10 003C5E70 51 85 0F FE */ rlwimi r5, r12, 1, 0x1f, 0x1f +/* 803C8F14 003C5E74 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8F18 003C5E78 39 40 00 02 */ li r10, 2 +/* 803C8F1C 003C5E7C 48 00 00 18 */ b lbl_803C8F34 +lbl_803C8F20: +/* 803C8F20 003C5E80 54 A5 08 3C */ slwi r5, r5, 1 +/* 803C8F24 003C5E84 3B FF 00 01 */ addi r31, r31, 1 +/* 803C8F28 003C5E88 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8F2C 003C5E8C 7C A5 5A 14 */ add r5, r5, r11 +/* 803C8F30 003C5E90 39 4A 00 01 */ addi r10, r10, 1 +lbl_803C8F34: +/* 803C8F34 003C5E94 7C 05 38 00 */ cmpw r5, r7 +/* 803C8F38 003C5E98 5D 8B 57 FE */ rlwnm r11, r12, r10, 0x1f, 0x1f +/* 803C8F3C 003C5E9C 41 81 FF E4 */ bgt lbl_803C8F20 +/* 803C8F40 003C5EA0 91 43 06 A4 */ stw r10, 0x6a4(r3) +/* 803C8F44 003C5EA4 57 E0 10 3A */ slwi r0, r31, 2 +/* 803C8F48 003C5EA8 7C FE 02 14 */ add r7, r30, r0 +/* 803C8F4C 003C5EAC 81 3E 00 40 */ lwz r9, 0x40(r30) +/* 803C8F50 003C5EB0 80 07 00 8C */ lwz r0, 0x8c(r7) +/* 803C8F54 003C5EB4 7C 00 4A 14 */ add r0, r0, r9 +/* 803C8F58 003C5EB8 7C A5 00 AE */ lbzx r5, r5, r0 +lbl_803C8F5C: +/* 803C8F5C 003C5EBC 54 BE 07 3F */ clrlwi. r30, r5, 0x1c +/* 803C8F60 003C5EC0 7C A7 26 70 */ srawi r7, r5, 4 +/* 803C8F64 003C5EC4 41 82 00 9C */ beq lbl_803C9000 +/* 803C8F68 003C5EC8 7C C6 3A 14 */ add r6, r6, r7 +/* 803C8F6C 003C5ECC 81 23 06 A4 */ lwz r9, 0x6a4(r3) +/* 803C8F70 003C5ED0 21 49 00 21 */ subfic r10, r9, 0x21 +/* 803C8F74 003C5ED4 80 E3 06 A0 */ lwz r7, 0x6a0(r3) +/* 803C8F78 003C5ED8 7D 6A F0 51 */ subf. r11, r10, r30 +/* 803C8F7C 003C5EDC 39 89 FF FF */ addi r12, r9, -1 +/* 803C8F80 003C5EE0 41 81 00 1C */ bgt lbl_803C8F9C +/* 803C8F84 003C5EE4 7C 09 F2 14 */ add r0, r9, r30 +/* 803C8F88 003C5EE8 7C E9 60 30 */ slw r9, r7, r12 +/* 803C8F8C 003C5EEC 90 03 06 A4 */ stw r0, 0x6a4(r3) +/* 803C8F90 003C5EF0 20 1E 00 20 */ subfic r0, r30, 0x20 +/* 803C8F94 003C5EF4 7D 27 04 30 */ srw r7, r9, r0 +/* 803C8F98 003C5EF8 48 00 00 30 */ b lbl_803C8FC8 +lbl_803C8F9C: +/* 803C8F9C 003C5EFC 81 23 06 9C */ lwz r9, 0x69c(r3) +/* 803C8FA0 003C5F00 7C E0 60 30 */ slw r0, r7, r12 +/* 803C8FA4 003C5F04 84 E9 00 04 */ lwzu r7, 4(r9) +/* 803C8FA8 003C5F08 39 6B 00 01 */ addi r11, r11, 1 +/* 803C8FAC 003C5F0C 90 E3 06 A0 */ stw r7, 0x6a0(r3) +/* 803C8FB0 003C5F10 7C E7 54 30 */ srw r7, r7, r10 +/* 803C8FB4 003C5F14 91 23 06 9C */ stw r9, 0x69c(r3) +/* 803C8FB8 003C5F18 7C 07 02 14 */ add r0, r7, r0 +/* 803C8FBC 003C5F1C 91 63 06 A4 */ stw r11, 0x6a4(r3) +/* 803C8FC0 003C5F20 21 7E 00 20 */ subfic r11, r30, 0x20 +/* 803C8FC4 003C5F24 7C 07 5C 30 */ srw r7, r0, r11 +lbl_803C8FC8: +/* 803C8FC8 003C5F28 7C E5 00 34 */ cntlzw r5, r7 +/* 803C8FCC 003C5F2C 20 1E 00 20 */ subfic r0, r30, 0x20 +/* 803C8FD0 003C5F30 7C 05 00 00 */ cmpw r5, r0 +/* 803C8FD4 003C5F34 40 81 00 14 */ ble lbl_803C8FE8 +/* 803C8FD8 003C5F38 38 00 FF FF */ li r0, -1 +/* 803C8FDC 003C5F3C 7C 00 F0 30 */ slw r0, r0, r30 +/* 803C8FE0 003C5F40 7C E0 3A 14 */ add r7, r0, r7 +/* 803C8FE4 003C5F44 38 E7 00 01 */ addi r7, r7, 1 +lbl_803C8FE8: +/* 803C8FE8 003C5F48 7C A8 32 14 */ add r5, r8, r6 +/* 803C8FEC 003C5F4C 88 05 00 00 */ lbz r0, 0(r5) +/* 803C8FF0 003C5F50 7C E5 07 34 */ extsh r5, r7 +/* 803C8FF4 003C5F54 54 00 08 3C */ slwi r0, r0, 1 +/* 803C8FF8 003C5F58 7C A4 03 2E */ sthx r5, r4, r0 +/* 803C8FFC 003C5F5C 48 00 00 10 */ b lbl_803C900C +lbl_803C9000: +/* 803C9000 003C5F60 2C 07 00 0F */ cmpwi r7, 0xf +/* 803C9004 003C5F64 40 82 00 14 */ bne lbl_803C9018 +/* 803C9008 003C5F68 38 C6 00 0F */ addi r6, r6, 0xf +lbl_803C900C: +/* 803C900C 003C5F6C 38 C6 00 01 */ addi r6, r6, 1 +lbl_803C9010: +/* 803C9010 003C5F70 2C 06 00 40 */ cmpwi r6, 0x40 +/* 803C9014 003C5F74 41 80 FC C4 */ blt lbl_803C8CD8 +lbl_803C9018: +/* 803C9018 003C5F78 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 803C901C 003C5F7C 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 803C9020 003C5F80 38 21 00 18 */ addi r1, r1, 0x18 +/* 803C9024 003C5F84 4E 80 00 20 */ blr + +.global THPInit +THPInit: +/* 803C9028 003C5F88 7C 08 02 A6 */ mflr r0 +/* 803C902C 003C5F8C 3C 80 80 57 */ lis r4, lbl_80569F60@ha +/* 803C9030 003C5F90 90 01 00 04 */ stw r0, 4(r1) +/* 803C9034 003C5F94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 803C9038 003C5F98 93 E1 00 0C */ stw r31, 0xc(r1) +/* 803C903C 003C5F9C 3B E4 9F 60 */ addi r31, r4, lbl_80569F60@l +/* 803C9040 003C5FA0 80 6D A0 58 */ lwz r3, lbl_805A8C18@sda21(r13) +/* 803C9044 003C5FA4 4B FB 4F F5 */ bl OSRegisterVersion +/* 803C9048 003C5FA8 3C 80 E0 00 */ lis r4, 0xE0002000@ha +/* 803C904C 003C5FAC 90 9F 01 00 */ stw r4, 0x100(r31) +/* 803C9050 003C5FB0 38 84 20 00 */ addi r4, r4, 0xE0002000@l +/* 803C9054 003C5FB4 90 9F 01 04 */ stw r4, 0x104(r31) +/* 803C9058 003C5FB8 38 84 08 00 */ addi r4, r4, 0x800 +/* 803C905C 003C5FBC 90 9F 01 08 */ stw r4, 0x108(r31) +/* 803C9060 003C5FC0 3C 80 E0 00 */ lis r4, 0xE0002800@ha +/* 803C9064 003C5FC4 90 9F 01 0C */ stw r4, 0x10c(r31) +/* 803C9068 003C5FC8 38 84 28 00 */ addi r4, r4, 0xE0002800@l +/* 803C906C 003C5FCC 90 9F 01 10 */ stw r4, 0x110(r31) +/* 803C9070 003C5FD0 38 84 0A 00 */ addi r4, r4, 0xa00 +/* 803C9074 003C5FD4 90 9F 01 14 */ stw r4, 0x114(r31) +/* 803C9078 003C5FD8 38 60 00 04 */ li r3, 4 +/* 803C907C 003C5FDC 64 63 00 04 */ oris r3, r3, 4 +/* 803C9080 003C5FE0 7C 72 E3 A6 */ mtspr 0x392, r3 +/* 803C9084 003C5FE4 38 60 00 05 */ li r3, 5 +/* 803C9088 003C5FE8 64 63 00 05 */ oris r3, r3, 5 +/* 803C908C 003C5FEC 7C 73 E3 A6 */ mtspr 0x393, r3 +/* 803C9090 003C5FF0 38 60 00 06 */ li r3, 6 +/* 803C9094 003C5FF4 64 63 00 06 */ oris r3, r3, 6 +/* 803C9098 003C5FF8 7C 74 E3 A6 */ mtspr 0x394, r3 +/* 803C909C 003C5FFC 38 60 00 07 */ li r3, 7 +/* 803C90A0 003C6000 64 63 00 07 */ oris r3, r3, 7 +/* 803C90A4 003C6004 7C 75 E3 A6 */ mtspr 0x395, r3 +/* 803C90A8 003C6008 38 00 00 01 */ li r0, 1 +/* 803C90AC 003C600C 90 0D B1 54 */ stw r0, __THPInitFlag@sda21(r13) +/* 803C90B0 003C6010 38 60 00 01 */ li r3, 1 +/* 803C90B4 003C6014 80 01 00 14 */ lwz r0, 0x14(r1) +/* 803C90B8 003C6018 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 803C90BC 003C601C 38 21 00 10 */ addi r1, r1, 0x10 +/* 803C90C0 003C6020 7C 08 03 A6 */ mtlr r0 +/* 803C90C4 003C6024 4E 80 00 20 */ blr diff --git a/asm/bss.s b/asm/bss.s index 85cf4e1a..8e400d86 100644 --- a/asm/bss.s +++ b/asm/bss.s @@ -694,14 +694,14 @@ lbl_80569E98: .global lbl_80569F60 lbl_80569F60: .skip 0x118 -.global lbl_8056A078 -lbl_8056A078: +.global __THPMCUBuffer +__THPMCUBuffer: .skip 0x28 .global lbl_8056A0A0 lbl_8056A0A0: .skip 0x100 -.global lbl_8056A1A0 -lbl_8056A1A0: +.global __GBA +__GBA: .skip 0x400 .global lbl_8056A5A0 lbl_8056A5A0: diff --git a/asm/rodata.s b/asm/rodata.s index 75df7b35..2f12485c 100644 --- a/asm/rodata.s +++ b/asm/rodata.s @@ -1777,6 +1777,6 @@ lbl_803D8B48: .global lbl_803D8BD0 lbl_803D8BD0: .incbin "baserom.dol", 0x3D5BD0, 0x100 -.global lbl_803D8CD0 -lbl_803D8CD0: +.global __THPJpegNaturalOrder +__THPJpegNaturalOrder: .incbin "baserom.dol", 0x3D5CD0, 0x90 diff --git a/asm/sbss.s b/asm/sbss.s index c0e3b2ac..912cdd9e 100644 --- a/asm/sbss.s +++ b/asm/sbss.s @@ -2933,23 +2933,23 @@ lbl_805A9BF0: .global lbl_805A9BF4 lbl_805A9BF4: .skip 0xC -.global lbl_805A9C00 -lbl_805A9C00: +.global Ydchuff +Ydchuff: .skip 0x20 -.global lbl_805A9C20 -lbl_805A9C20: +.global Udchuff +Udchuff: .skip 0x20 -.global lbl_805A9C40 -lbl_805A9C40: +.global Vdchuff +Vdchuff: .skip 0x20 -.global lbl_805A9C60 -lbl_805A9C60: +.global Yachuff +Yachuff: .skip 0x20 -.global lbl_805A9C80 -lbl_805A9C80: +.global Uachuff +Uachuff: .skip 0x20 -.global lbl_805A9CA0 -lbl_805A9CA0: +.global Vachuff +Vachuff: .skip 0x4 .global lbl_805A9CA4 lbl_805A9CA4: @@ -2975,15 +2975,15 @@ lbl_805A9D04: .global lbl_805A9D08 lbl_805A9D08: .skip 0x4 -.global lbl_805A9D0C -lbl_805A9D0C: +.global __THPWorkArea +__THPWorkArea: .skip 0x4 -.global lbl_805A9D10 -lbl_805A9D10: +.global __THPInfo +__THPInfo: .skip 0x4 -.global lbl_805A9D14 -lbl_805A9D14: +.global __THPInitFlag +__THPInitFlag: .skip 0x4 -.global lbl_805A9D18 -lbl_805A9D18: +.global __GBAReset +__GBAReset: .skip 0x4 diff --git a/asm/text.s b/asm/text.s index 82faa4a1..f7514df3 100644 --- a/asm/text.s +++ b/asm/text.s @@ -1091337,10302 +1091337,3 @@ lbl_803C1B4C: /* 803C1B54 003BEAB4 38 21 00 30 */ addi r1, r1, 0x30 /* 803C1B58 003BEAB8 7C 08 03 A6 */ mtlr r0 /* 803C1B5C 003BEABC 4E 80 00 20 */ blr - -.global THPVideoDecode -THPVideoDecode: -/* 803C1B60 003BEAC0 7C 08 02 A6 */ mflr r0 -/* 803C1B64 003BEAC4 90 01 00 04 */ stw r0, 4(r1) -/* 803C1B68 003BEAC8 94 21 FF C8 */ stwu r1, -0x38(r1) -/* 803C1B6C 003BEACC BF 61 00 24 */ stmw r27, 0x24(r1) -/* 803C1B70 003BEAD0 7C 7B 1B 79 */ or. r27, r3, r3 -/* 803C1B74 003BEAD4 3B 84 00 00 */ addi r28, r4, 0 -/* 803C1B78 003BEAD8 3B A5 00 00 */ addi r29, r5, 0 -/* 803C1B7C 003BEADC 3B C6 00 00 */ addi r30, r6, 0 -/* 803C1B80 003BEAE0 3B E7 00 00 */ addi r31, r7, 0 -/* 803C1B84 003BEAE4 41 82 01 D0 */ beq lbl_803C1D54 -/* 803C1B88 003BEAE8 28 1C 00 00 */ cmplwi r28, 0 -/* 803C1B8C 003BEAEC 41 82 01 D0 */ beq lbl_803C1D5C -/* 803C1B90 003BEAF0 28 1D 00 00 */ cmplwi r29, 0 -/* 803C1B94 003BEAF4 41 82 01 C8 */ beq lbl_803C1D5C -/* 803C1B98 003BEAF8 28 1E 00 00 */ cmplwi r30, 0 -/* 803C1B9C 003BEAFC 41 82 01 C0 */ beq lbl_803C1D5C -/* 803C1BA0 003BEB00 28 1F 00 00 */ cmplwi r31, 0 -/* 803C1BA4 003BEB04 41 82 01 C0 */ beq lbl_803C1D64 -/* 803C1BA8 003BEB08 4B FA DC C9 */ bl PPCMfhid2 -/* 803C1BAC 003BEB0C 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 -/* 803C1BB0 003BEB10 41 82 01 D4 */ beq lbl_803C1D84 -/* 803C1BB4 003BEB14 80 0D B1 54 */ lwz r0, lbl_805A9D14@sda21(r13) -/* 803C1BB8 003BEB18 2C 00 00 00 */ cmpwi r0, 0 -/* 803C1BBC 003BEB1C 41 82 01 D0 */ beq lbl_803C1D8C -/* 803C1BC0 003BEB20 93 ED B1 4C */ stw r31, lbl_805A9D0C@sda21(r13) -/* 803C1BC4 003BEB24 38 80 06 BC */ li r4, 0x6bc -/* 803C1BC8 003BEB28 80 6D B1 4C */ lwz r3, lbl_805A9D0C@sda21(r13) -/* 803C1BCC 003BEB2C 38 03 00 1F */ addi r0, r3, 0x1f -/* 803C1BD0 003BEB30 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a -/* 803C1BD4 003BEB34 90 6D B1 50 */ stw r3, lbl_805A9D10@sda21(r13) -/* 803C1BD8 003BEB38 38 03 06 BC */ addi r0, r3, 0x6bc -/* 803C1BDC 003BEB3C 90 0D B1 4C */ stw r0, lbl_805A9D0C@sda21(r13) -/* 803C1BE0 003BEB40 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1BE4 003BEB44 4B FB CF 85 */ bl DCZeroRange -/* 803C1BE8 003BEB48 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1BEC 003BEB4C 38 80 00 21 */ li r4, 0x21 -/* 803C1BF0 003BEB50 38 00 00 00 */ li r0, 0 -/* 803C1BF4 003BEB54 90 83 06 A4 */ stw r4, 0x6a4(r3) -/* 803C1BF8 003BEB58 3B E0 00 00 */ li r31, 0 -/* 803C1BFC 003BEB5C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1C00 003BEB60 B0 03 06 98 */ sth r0, 0x698(r3) -/* 803C1C04 003BEB64 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1C08 003BEB68 93 63 06 9C */ stw r27, 0x69c(r3) -lbl_803C1C0C: -/* 803C1C0C 003BEB6C 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1C10 003BEB70 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1C14 003BEB74 38 03 00 01 */ addi r0, r3, 1 -/* 803C1C18 003BEB78 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1C1C 003BEB7C 88 03 00 00 */ lbz r0, 0(r3) -/* 803C1C20 003BEB80 28 00 00 FF */ cmplwi r0, 0xff -/* 803C1C24 003BEB84 40 82 01 50 */ bne lbl_803C1D74 -/* 803C1C28 003BEB88 48 00 00 10 */ b lbl_803C1C38 -lbl_803C1C2C: -/* 803C1C2C 003BEB8C 80 64 00 00 */ lwz r3, 0(r4) -/* 803C1C30 003BEB90 38 03 00 01 */ addi r0, r3, 1 -/* 803C1C34 003BEB94 90 04 00 00 */ stw r0, 0(r4) -lbl_803C1C38: -/* 803C1C38 003BEB98 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1C3C 003BEB9C 38 83 06 9C */ addi r4, r3, 0x69c -/* 803C1C40 003BEBA0 80 63 06 9C */ lwz r3, 0x69c(r3) -/* 803C1C44 003BEBA4 88 03 00 00 */ lbz r0, 0(r3) -/* 803C1C48 003BEBA8 28 00 00 FF */ cmplwi r0, 0xff -/* 803C1C4C 003BEBAC 41 82 FF E0 */ beq lbl_803C1C2C -/* 803C1C50 003BEBB0 38 03 00 01 */ addi r0, r3, 1 -/* 803C1C54 003BEBB4 90 04 00 00 */ stw r0, 0(r4) -/* 803C1C58 003BEBB8 88 03 00 00 */ lbz r0, 0(r3) -/* 803C1C5C 003BEBBC 28 00 00 D7 */ cmplwi r0, 0xd7 -/* 803C1C60 003BEBC0 41 81 00 34 */ bgt lbl_803C1C94 -/* 803C1C64 003BEBC4 28 00 00 C4 */ cmplwi r0, 0xc4 -/* 803C1C68 003BEBC8 40 82 00 14 */ bne lbl_803C1C7C -/* 803C1C6C 003BEBCC 48 00 07 91 */ bl __THPReadHuffmanTableSpecification -/* 803C1C70 003BEBD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 803C1C74 003BEBD4 40 82 01 08 */ bne lbl_803C1D7C -/* 803C1C78 003BEBD8 48 00 00 B8 */ b lbl_803C1D30 -lbl_803C1C7C: -/* 803C1C7C 003BEBDC 28 00 00 C0 */ cmplwi r0, 0xc0 -/* 803C1C80 003BEBE0 40 82 00 EC */ bne lbl_803C1D6C -/* 803C1C84 003BEBE4 48 00 01 65 */ bl __THPReadFrameHeader -/* 803C1C88 003BEBE8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 803C1C8C 003BEBEC 40 82 00 F0 */ bne lbl_803C1D7C -/* 803C1C90 003BEBF0 48 00 00 A0 */ b lbl_803C1D30 -lbl_803C1C94: -/* 803C1C94 003BEBF4 28 00 00 D8 */ cmplwi r0, 0xd8 -/* 803C1C98 003BEBF8 41 80 00 5C */ blt lbl_803C1CF4 -/* 803C1C9C 003BEBFC 28 00 00 DF */ cmplwi r0, 0xdf -/* 803C1CA0 003BEC00 41 81 00 54 */ bgt lbl_803C1CF4 -/* 803C1CA4 003BEC04 28 00 00 DD */ cmplwi r0, 0xdd -/* 803C1CA8 003BEC08 40 82 00 0C */ bne lbl_803C1CB4 -/* 803C1CAC 003BEC0C 48 00 0C 45 */ bl __THPRestartDefinition -/* 803C1CB0 003BEC10 48 00 00 80 */ b lbl_803C1D30 -lbl_803C1CB4: -/* 803C1CB4 003BEC14 28 00 00 DB */ cmplwi r0, 0xdb -/* 803C1CB8 003BEC18 40 82 00 14 */ bne lbl_803C1CCC -/* 803C1CBC 003BEC1C 48 00 03 85 */ bl __THPReadQuantizationTable -/* 803C1CC0 003BEC20 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 803C1CC4 003BEC24 40 82 00 B8 */ bne lbl_803C1D7C -/* 803C1CC8 003BEC28 48 00 00 68 */ b lbl_803C1D30 -lbl_803C1CCC: -/* 803C1CCC 003BEC2C 28 00 00 DA */ cmplwi r0, 0xda -/* 803C1CD0 003BEC30 40 82 00 18 */ bne lbl_803C1CE8 -/* 803C1CD4 003BEC34 48 00 02 51 */ bl __THPReadScaneHeader -/* 803C1CD8 003BEC38 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 803C1CDC 003BEC3C 40 82 00 A0 */ bne lbl_803C1D7C -/* 803C1CE0 003BEC40 3B E0 00 01 */ li r31, 1 -/* 803C1CE4 003BEC44 48 00 00 4C */ b lbl_803C1D30 -lbl_803C1CE8: -/* 803C1CE8 003BEC48 28 00 00 D8 */ cmplwi r0, 0xd8 -/* 803C1CEC 003BEC4C 41 82 00 44 */ beq lbl_803C1D30 -/* 803C1CF0 003BEC50 48 00 00 7C */ b lbl_803C1D6C -lbl_803C1CF4: -/* 803C1CF4 003BEC54 28 00 00 E0 */ cmplwi r0, 0xe0 -/* 803C1CF8 003BEC58 41 80 00 38 */ blt lbl_803C1D30 -/* 803C1CFC 003BEC5C 41 80 00 0C */ blt lbl_803C1D08 -/* 803C1D00 003BEC60 28 00 00 EF */ cmplwi r0, 0xef -/* 803C1D04 003BEC64 40 81 00 0C */ ble lbl_803C1D10 -lbl_803C1D08: -/* 803C1D08 003BEC68 28 00 00 FE */ cmplwi r0, 0xfe -/* 803C1D0C 003BEC6C 40 82 00 60 */ bne lbl_803C1D6C -lbl_803C1D10: -/* 803C1D10 003BEC70 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1D14 003BEC74 80 83 06 9C */ lwz r4, 0x69c(r3) -/* 803C1D18 003BEC78 38 A3 06 9C */ addi r5, r3, 0x69c -/* 803C1D1C 003BEC7C 88 64 00 00 */ lbz r3, 0(r4) -/* 803C1D20 003BEC80 88 04 00 01 */ lbz r0, 1(r4) -/* 803C1D24 003BEC84 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 -/* 803C1D28 003BEC88 7C 04 02 14 */ add r0, r4, r0 -/* 803C1D2C 003BEC8C 90 05 00 00 */ stw r0, 0(r5) -lbl_803C1D30: -/* 803C1D30 003BEC90 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 803C1D34 003BEC94 41 82 FE D8 */ beq lbl_803C1C0C -/* 803C1D38 003BEC98 48 00 00 6D */ bl __THPSetupBuffers -/* 803C1D3C 003BEC9C 38 7C 00 00 */ addi r3, r28, 0 -/* 803C1D40 003BECA0 38 9D 00 00 */ addi r4, r29, 0 -/* 803C1D44 003BECA4 38 BE 00 00 */ addi r5, r30, 0 -/* 803C1D48 003BECA8 48 00 0E 49 */ bl __THPDecompressYUV -/* 803C1D4C 003BECAC 38 60 00 00 */ li r3, 0 -/* 803C1D50 003BECB0 48 00 00 40 */ b lbl_803C1D90 -lbl_803C1D54: -/* 803C1D54 003BECB4 38 60 00 19 */ li r3, 0x19 -/* 803C1D58 003BECB8 48 00 00 38 */ b lbl_803C1D90 -lbl_803C1D5C: -/* 803C1D5C 003BECBC 38 60 00 1B */ li r3, 0x1b -/* 803C1D60 003BECC0 48 00 00 30 */ b lbl_803C1D90 -lbl_803C1D64: -/* 803C1D64 003BECC4 38 60 00 1A */ li r3, 0x1a -/* 803C1D68 003BECC8 48 00 00 28 */ b lbl_803C1D90 -lbl_803C1D6C: -/* 803C1D6C 003BECCC 38 60 00 0B */ li r3, 0xb -/* 803C1D70 003BECD0 48 00 00 20 */ b lbl_803C1D90 -lbl_803C1D74: -/* 803C1D74 003BECD4 38 60 00 03 */ li r3, 3 -/* 803C1D78 003BECD8 48 00 00 18 */ b lbl_803C1D90 -lbl_803C1D7C: -/* 803C1D7C 003BECDC 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 803C1D80 003BECE0 48 00 00 10 */ b lbl_803C1D90 -lbl_803C1D84: -/* 803C1D84 003BECE4 38 60 00 1C */ li r3, 0x1c -/* 803C1D88 003BECE8 48 00 00 08 */ b lbl_803C1D90 -lbl_803C1D8C: -/* 803C1D8C 003BECEC 38 60 00 1D */ li r3, 0x1d -lbl_803C1D90: -/* 803C1D90 003BECF0 BB 61 00 24 */ lmw r27, 0x24(r1) -/* 803C1D94 003BECF4 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 803C1D98 003BECF8 38 21 00 38 */ addi r1, r1, 0x38 -/* 803C1D9C 003BECFC 7C 08 03 A6 */ mtlr r0 -/* 803C1DA0 003BED00 4E 80 00 20 */ blr - -.global __THPSetupBuffers -__THPSetupBuffers: -/* 803C1DA4 003BED04 80 8D B1 4C */ lwz r4, lbl_805A9D0C@sda21(r13) -/* 803C1DA8 003BED08 3C 60 80 57 */ lis r3, lbl_8056A078@ha -/* 803C1DAC 003BED0C 38 A3 A0 78 */ addi r5, r3, lbl_8056A078@l -/* 803C1DB0 003BED10 38 04 00 1F */ addi r0, r4, 0x1f -/* 803C1DB4 003BED14 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a -/* 803C1DB8 003BED18 90 C5 00 00 */ stw r6, 0(r5) -/* 803C1DBC 003BED1C 38 66 00 80 */ addi r3, r6, 0x80 -/* 803C1DC0 003BED20 38 06 01 00 */ addi r0, r6, 0x100 -/* 803C1DC4 003BED24 90 65 00 04 */ stw r3, 4(r5) -/* 803C1DC8 003BED28 38 86 01 80 */ addi r4, r6, 0x180 -/* 803C1DCC 003BED2C 38 66 02 00 */ addi r3, r6, 0x200 -/* 803C1DD0 003BED30 90 05 00 08 */ stw r0, 8(r5) -/* 803C1DD4 003BED34 38 06 02 80 */ addi r0, r6, 0x280 -/* 803C1DD8 003BED38 90 85 00 0C */ stw r4, 0xc(r5) -/* 803C1DDC 003BED3C 90 65 00 10 */ stw r3, 0x10(r5) -/* 803C1DE0 003BED40 90 05 00 14 */ stw r0, 0x14(r5) -/* 803C1DE4 003BED44 4E 80 00 20 */ blr - -.global __THPReadFrameHeader -__THPReadFrameHeader: -/* 803C1DE8 003BED48 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1DEC 003BED4C 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1DF0 003BED50 38 03 00 02 */ addi r0, r3, 2 -/* 803C1DF4 003BED54 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1DF8 003BED58 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1DFC 003BED5C 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1E00 003BED60 38 03 00 01 */ addi r0, r3, 1 -/* 803C1E04 003BED64 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1E08 003BED68 88 03 00 00 */ lbz r0, 0(r3) -/* 803C1E0C 003BED6C 28 00 00 08 */ cmplwi r0, 8 -/* 803C1E10 003BED70 41 82 00 0C */ beq lbl_803C1E1C -/* 803C1E14 003BED74 38 60 00 0A */ li r3, 0xa -/* 803C1E18 003BED78 4E 80 00 20 */ blr -lbl_803C1E1C: -/* 803C1E1C 003BED7C 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C1E20 003BED80 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C1E24 003BED84 88 64 00 00 */ lbz r3, 0(r4) -/* 803C1E28 003BED88 88 04 00 01 */ lbz r0, 1(r4) -/* 803C1E2C 003BED8C 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 -/* 803C1E30 003BED90 B0 05 06 94 */ sth r0, 0x694(r5) -/* 803C1E34 003BED94 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1E38 003BED98 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1E3C 003BED9C 38 03 00 02 */ addi r0, r3, 2 -/* 803C1E40 003BEDA0 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1E44 003BEDA4 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C1E48 003BEDA8 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C1E4C 003BEDAC 88 64 00 00 */ lbz r3, 0(r4) -/* 803C1E50 003BEDB0 88 04 00 01 */ lbz r0, 1(r4) -/* 803C1E54 003BEDB4 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 -/* 803C1E58 003BEDB8 B0 05 06 92 */ sth r0, 0x692(r5) -/* 803C1E5C 003BEDBC 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1E60 003BEDC0 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1E64 003BEDC4 38 03 00 02 */ addi r0, r3, 2 -/* 803C1E68 003BEDC8 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1E6C 003BEDCC 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1E70 003BEDD0 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1E74 003BEDD4 38 03 00 01 */ addi r0, r3, 1 -/* 803C1E78 003BEDD8 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1E7C 003BEDDC 88 03 00 00 */ lbz r0, 0(r3) -/* 803C1E80 003BEDE0 28 00 00 03 */ cmplwi r0, 3 -/* 803C1E84 003BEDE4 41 82 00 0C */ beq lbl_803C1E90 -/* 803C1E88 003BEDE8 38 60 00 0C */ li r3, 0xc -/* 803C1E8C 003BEDEC 4E 80 00 20 */ blr -lbl_803C1E90: -/* 803C1E90 003BEDF0 38 E0 00 00 */ li r7, 0 -/* 803C1E94 003BEDF4 38 C0 00 00 */ li r6, 0 -/* 803C1E98 003BEDF8 48 00 00 78 */ b lbl_803C1F10 -lbl_803C1E9C: -/* 803C1E9C 003BEDFC 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1EA0 003BEE00 54 E0 06 3F */ clrlwi. r0, r7, 0x18 -/* 803C1EA4 003BEE04 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1EA8 003BEE08 38 03 00 01 */ addi r0, r3, 1 -/* 803C1EAC 003BEE0C 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1EB0 003BEE10 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1EB4 003BEE14 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1EB8 003BEE18 38 03 00 01 */ addi r0, r3, 1 -/* 803C1EBC 003BEE1C 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1EC0 003BEE20 88 63 00 00 */ lbz r3, 0(r3) -/* 803C1EC4 003BEE24 40 82 00 0C */ bne lbl_803C1ED0 -/* 803C1EC8 003BEE28 28 03 00 22 */ cmplwi r3, 0x22 -/* 803C1ECC 003BEE2C 40 82 00 14 */ bne lbl_803C1EE0 -lbl_803C1ED0: -/* 803C1ED0 003BEE30 54 E0 06 3F */ clrlwi. r0, r7, 0x18 -/* 803C1ED4 003BEE34 41 82 00 14 */ beq lbl_803C1EE8 -/* 803C1ED8 003BEE38 28 03 00 11 */ cmplwi r3, 0x11 -/* 803C1EDC 003BEE3C 41 82 00 0C */ beq lbl_803C1EE8 -lbl_803C1EE0: -/* 803C1EE0 003BEE40 38 60 00 13 */ li r3, 0x13 -/* 803C1EE4 003BEE44 4E 80 00 20 */ blr -lbl_803C1EE8: -/* 803C1EE8 003BEE48 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C1EEC 003BEE4C 38 06 06 80 */ addi r0, r6, 0x680 -/* 803C1EF0 003BEE50 38 C6 00 06 */ addi r6, r6, 6 -/* 803C1EF4 003BEE54 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C1EF8 003BEE58 38 E7 00 01 */ addi r7, r7, 1 -/* 803C1EFC 003BEE5C 38 64 00 01 */ addi r3, r4, 1 -/* 803C1F00 003BEE60 90 65 06 9C */ stw r3, 0x69c(r5) -/* 803C1F04 003BEE64 88 84 00 00 */ lbz r4, 0(r4) -/* 803C1F08 003BEE68 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C1F0C 003BEE6C 7C 83 01 AE */ stbx r4, r3, r0 -lbl_803C1F10: -/* 803C1F10 003BEE70 54 E0 06 3E */ clrlwi r0, r7, 0x18 -/* 803C1F14 003BEE74 28 00 00 03 */ cmplwi r0, 3 -/* 803C1F18 003BEE78 41 80 FF 84 */ blt lbl_803C1E9C -/* 803C1F1C 003BEE7C 38 60 00 00 */ li r3, 0 -/* 803C1F20 003BEE80 4E 80 00 20 */ blr - -.global __THPReadScaneHeader -__THPReadScaneHeader: -/* 803C1F24 003BEE84 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1F28 003BEE88 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1F2C 003BEE8C 38 03 00 02 */ addi r0, r3, 2 -/* 803C1F30 003BEE90 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1F34 003BEE94 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1F38 003BEE98 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C1F3C 003BEE9C 38 03 00 01 */ addi r0, r3, 1 -/* 803C1F40 003BEEA0 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C1F44 003BEEA4 88 03 00 00 */ lbz r0, 0(r3) -/* 803C1F48 003BEEA8 28 00 00 03 */ cmplwi r0, 3 -/* 803C1F4C 003BEEAC 41 82 00 0C */ beq lbl_803C1F58 -/* 803C1F50 003BEEB0 38 60 00 0C */ li r3, 0xc -/* 803C1F54 003BEEB4 4E 80 00 20 */ blr -lbl_803C1F58: -/* 803C1F58 003BEEB8 39 20 00 00 */ li r9, 0 -/* 803C1F5C 003BEEBC 39 00 00 00 */ li r8, 0 -/* 803C1F60 003BEEC0 48 00 00 88 */ b lbl_803C1FE8 -lbl_803C1F64: -/* 803C1F64 003BEEC4 80 CD B1 50 */ lwz r6, lbl_805A9D10@sda21(r13) -/* 803C1F68 003BEEC8 38 08 06 81 */ addi r0, r8, 0x681 -/* 803C1F6C 003BEECC 38 88 06 82 */ addi r4, r8, 0x682 -/* 803C1F70 003BEED0 80 A6 06 9C */ lwz r5, 0x69c(r6) -/* 803C1F74 003BEED4 38 60 00 01 */ li r3, 1 -/* 803C1F78 003BEED8 38 A5 00 01 */ addi r5, r5, 1 -/* 803C1F7C 003BEEDC 90 A6 06 9C */ stw r5, 0x69c(r6) -/* 803C1F80 003BEEE0 80 ED B1 50 */ lwz r7, lbl_805A9D10@sda21(r13) -/* 803C1F84 003BEEE4 80 C7 06 9C */ lwz r6, 0x69c(r7) -/* 803C1F88 003BEEE8 38 A6 00 01 */ addi r5, r6, 1 -/* 803C1F8C 003BEEEC 90 A7 06 9C */ stw r5, 0x69c(r7) -/* 803C1F90 003BEEF0 88 E6 00 00 */ lbz r7, 0(r6) -/* 803C1F94 003BEEF4 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C1F98 003BEEF8 7C E6 26 70 */ srawi r6, r7, 4 -/* 803C1F9C 003BEEFC 7C C5 01 AE */ stbx r6, r5, r0 -/* 803C1FA0 003BEF00 54 E7 07 3E */ clrlwi r7, r7, 0x1c -/* 803C1FA4 003BEF04 7C 60 30 30 */ slw r0, r3, r6 -/* 803C1FA8 003BEF08 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C1FAC 003BEF0C 7C E5 21 AE */ stbx r7, r5, r4 -/* 803C1FB0 003BEF10 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C1FB4 003BEF14 88 84 06 A8 */ lbz r4, 0x6a8(r4) -/* 803C1FB8 003BEF18 7C 80 00 39 */ and. r0, r4, r0 -/* 803C1FBC 003BEF1C 40 82 00 0C */ bne lbl_803C1FC8 -/* 803C1FC0 003BEF20 38 60 00 0F */ li r3, 0xf -/* 803C1FC4 003BEF24 4E 80 00 20 */ blr -lbl_803C1FC8: -/* 803C1FC8 003BEF28 38 07 00 01 */ addi r0, r7, 1 -/* 803C1FCC 003BEF2C 7C 60 00 30 */ slw r0, r3, r0 -/* 803C1FD0 003BEF30 7C 80 00 39 */ and. r0, r4, r0 -/* 803C1FD4 003BEF34 40 82 00 0C */ bne lbl_803C1FE0 -/* 803C1FD8 003BEF38 38 60 00 0F */ li r3, 0xf -/* 803C1FDC 003BEF3C 4E 80 00 20 */ blr -lbl_803C1FE0: -/* 803C1FE0 003BEF40 39 08 00 06 */ addi r8, r8, 6 -/* 803C1FE4 003BEF44 39 29 00 01 */ addi r9, r9, 1 -lbl_803C1FE8: -/* 803C1FE8 003BEF48 55 20 06 3E */ clrlwi r0, r9, 0x18 -/* 803C1FEC 003BEF4C 28 00 00 03 */ cmplwi r0, 3 -/* 803C1FF0 003BEF50 41 80 FF 74 */ blt lbl_803C1F64 -/* 803C1FF4 003BEF54 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C1FF8 003BEF58 38 00 00 00 */ li r0, 0 -/* 803C1FFC 003BEF5C 38 60 00 00 */ li r3, 0 -/* 803C2000 003BEF60 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C2004 003BEF64 38 84 00 03 */ addi r4, r4, 3 -/* 803C2008 003BEF68 90 85 06 9C */ stw r4, 0x69c(r5) -/* 803C200C 003BEF6C 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2010 003BEF70 A0 85 06 92 */ lhz r4, 0x692(r5) -/* 803C2014 003BEF74 38 84 00 0F */ addi r4, r4, 0xf -/* 803C2018 003BEF78 7C 84 26 70 */ srawi r4, r4, 4 -/* 803C201C 003BEF7C 7C 84 01 94 */ addze r4, r4 -/* 803C2020 003BEF80 B0 85 06 96 */ sth r4, 0x696(r5) -/* 803C2024 003BEF84 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2028 003BEF88 B0 04 06 84 */ sth r0, 0x684(r4) -/* 803C202C 003BEF8C 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2030 003BEF90 B0 04 06 8A */ sth r0, 0x68a(r4) -/* 803C2034 003BEF94 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2038 003BEF98 B0 04 06 90 */ sth r0, 0x690(r4) -/* 803C203C 003BEF9C 4E 80 00 20 */ blr - -.global __THPReadQuantizationTable -__THPReadQuantizationTable: -/* 803C2040 003BEFA0 94 21 FE 78 */ stwu r1, -0x188(r1) -/* 803C2044 003BEFA4 3C 80 80 3E */ lis r4, lbl_803D8CD0@ha -/* 803C2048 003BEFA8 38 84 8C D0 */ addi r4, r4, lbl_803D8CD0@l -/* 803C204C 003BEFAC BE A1 01 5C */ stmw r21, 0x15c(r1) -/* 803C2050 003BEFB0 38 C4 00 50 */ addi r6, r4, 0x50 -/* 803C2054 003BEFB4 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2058 003BEFB8 80 A3 06 9C */ lwz r5, 0x69c(r3) -/* 803C205C 003BEFBC 39 03 06 9C */ addi r8, r3, 0x69c -/* 803C2060 003BEFC0 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C2064 003BEFC4 88 E5 00 00 */ lbz r7, 0(r5) -/* 803C2068 003BEFC8 38 05 00 02 */ addi r0, r5, 2 -/* 803C206C 003BEFCC 88 A5 00 01 */ lbz r5, 1(r5) -/* 803C2070 003BEFD0 50 E5 44 2E */ rlwimi r5, r7, 8, 0x10, 0x17 -/* 803C2074 003BEFD4 90 08 00 00 */ stw r0, 0(r8) -/* 803C2078 003BEFD8 54 A7 04 3E */ clrlwi r7, r5, 0x10 -/* 803C207C 003BEFDC 3C 00 43 30 */ lis r0, 0x4330 -/* 803C2080 003BEFE0 C8 02 D7 20 */ lfd f0, lbl_805AF440@sda21(r2) -/* 803C2084 003BEFE4 38 E7 FF FE */ addi r7, r7, -2 -lbl_803C2088: -/* 803C2088 003BEFE8 81 6D B1 50 */ lwz r11, lbl_805A9D10@sda21(r13) -/* 803C208C 003BEFEC 38 A4 00 00 */ addi r5, r4, 0 -/* 803C2090 003BEFF0 39 20 00 00 */ li r9, 0 -/* 803C2094 003BEFF4 81 4B 06 9C */ lwz r10, 0x69c(r11) -/* 803C2098 003BEFF8 39 0A 00 01 */ addi r8, r10, 1 -/* 803C209C 003BEFFC 91 0B 06 9C */ stw r8, 0x69c(r11) -/* 803C20A0 003BF000 89 0A 00 00 */ lbz r8, 0(r10) -/* 803C20A4 003BF004 48 00 01 C4 */ b lbl_803C2268 -lbl_803C20A8: -/* 803C20A8 003BF008 83 CD B1 50 */ lwz r30, lbl_805A9D10@sda21(r13) -/* 803C20AC 003BF00C 3B 89 00 01 */ addi r28, r9, 1 -/* 803C20B0 003BF010 3B A9 00 02 */ addi r29, r9, 2 -/* 803C20B4 003BF014 83 7E 06 9C */ lwz r27, 0x69c(r30) -/* 803C20B8 003BF018 39 89 00 03 */ addi r12, r9, 3 -/* 803C20BC 003BF01C 39 69 00 04 */ addi r11, r9, 4 -/* 803C20C0 003BF020 39 5B 00 01 */ addi r10, r27, 1 -/* 803C20C4 003BF024 91 5E 06 9C */ stw r10, 0x69c(r30) -/* 803C20C8 003BF028 39 49 00 05 */ addi r10, r9, 5 -/* 803C20CC 003BF02C 57 9C 04 3E */ clrlwi r28, r28, 0x10 -/* 803C20D0 003BF030 8B DB 00 00 */ lbz r30, 0(r27) -/* 803C20D4 003BF034 57 BD 04 3E */ clrlwi r29, r29, 0x10 -/* 803C20D8 003BF038 8B 65 00 00 */ lbz r27, 0(r5) -/* 803C20DC 003BF03C 55 8C 04 3E */ clrlwi r12, r12, 0x10 -/* 803C20E0 003BF040 93 C1 01 54 */ stw r30, 0x154(r1) -/* 803C20E4 003BF044 57 7B 10 3A */ slwi r27, r27, 2 -/* 803C20E8 003BF048 90 01 01 50 */ stw r0, 0x150(r1) -/* 803C20EC 003BF04C 55 6B 04 3E */ clrlwi r11, r11, 0x10 -/* 803C20F0 003BF050 55 4A 04 3E */ clrlwi r10, r10, 0x10 -/* 803C20F4 003BF054 C8 21 01 50 */ lfd f1, 0x150(r1) -/* 803C20F8 003BF058 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C20FC 003BF05C 7C 23 DD 2E */ stfsx f1, r3, r27 -/* 803C2100 003BF060 83 6D B1 50 */ lwz r27, lbl_805A9D10@sda21(r13) -/* 803C2104 003BF064 83 FB 06 9C */ lwz r31, 0x69c(r27) -/* 803C2108 003BF068 3B DF 00 01 */ addi r30, r31, 1 -/* 803C210C 003BF06C 93 DB 06 9C */ stw r30, 0x69c(r27) -/* 803C2110 003BF070 8B DF 00 00 */ lbz r30, 0(r31) -/* 803C2114 003BF074 7F 84 E0 AE */ lbzx r28, r4, r28 -/* 803C2118 003BF078 93 C1 01 4C */ stw r30, 0x14c(r1) -/* 803C211C 003BF07C 57 9C 10 3A */ slwi r28, r28, 2 -/* 803C2120 003BF080 90 01 01 48 */ stw r0, 0x148(r1) -/* 803C2124 003BF084 C8 21 01 48 */ lfd f1, 0x148(r1) -/* 803C2128 003BF088 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C212C 003BF08C 7C 23 E5 2E */ stfsx f1, r3, r28 -/* 803C2130 003BF090 83 8D B1 50 */ lwz r28, lbl_805A9D10@sda21(r13) -/* 803C2134 003BF094 83 FC 06 9C */ lwz r31, 0x69c(r28) -/* 803C2138 003BF098 3B DF 00 01 */ addi r30, r31, 1 -/* 803C213C 003BF09C 93 DC 06 9C */ stw r30, 0x69c(r28) -/* 803C2140 003BF0A0 8B DF 00 00 */ lbz r30, 0(r31) -/* 803C2144 003BF0A4 7F A4 E8 AE */ lbzx r29, r4, r29 -/* 803C2148 003BF0A8 93 C1 01 44 */ stw r30, 0x144(r1) -/* 803C214C 003BF0AC 57 BD 10 3A */ slwi r29, r29, 2 -/* 803C2150 003BF0B0 90 01 01 40 */ stw r0, 0x140(r1) -/* 803C2154 003BF0B4 C8 21 01 40 */ lfd f1, 0x140(r1) -/* 803C2158 003BF0B8 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C215C 003BF0BC 7C 23 ED 2E */ stfsx f1, r3, r29 -/* 803C2160 003BF0C0 83 ED B1 50 */ lwz r31, lbl_805A9D10@sda21(r13) -/* 803C2164 003BF0C4 83 DF 06 9C */ lwz r30, 0x69c(r31) -/* 803C2168 003BF0C8 3B BE 00 01 */ addi r29, r30, 1 -/* 803C216C 003BF0CC 93 BF 06 9C */ stw r29, 0x69c(r31) -/* 803C2170 003BF0D0 8B BE 00 00 */ lbz r29, 0(r30) -/* 803C2174 003BF0D4 7D 84 60 AE */ lbzx r12, r4, r12 -/* 803C2178 003BF0D8 93 A1 01 3C */ stw r29, 0x13c(r1) -/* 803C217C 003BF0DC 55 8C 10 3A */ slwi r12, r12, 2 -/* 803C2180 003BF0E0 90 01 01 38 */ stw r0, 0x138(r1) -/* 803C2184 003BF0E4 C8 21 01 38 */ lfd f1, 0x138(r1) -/* 803C2188 003BF0E8 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C218C 003BF0EC 7C 23 65 2E */ stfsx f1, r3, r12 -/* 803C2190 003BF0F0 83 CD B1 50 */ lwz r30, lbl_805A9D10@sda21(r13) -/* 803C2194 003BF0F4 83 BE 06 9C */ lwz r29, 0x69c(r30) -/* 803C2198 003BF0F8 39 9D 00 01 */ addi r12, r29, 1 -/* 803C219C 003BF0FC 91 9E 06 9C */ stw r12, 0x69c(r30) -/* 803C21A0 003BF100 89 9D 00 00 */ lbz r12, 0(r29) -/* 803C21A4 003BF104 7D 64 58 AE */ lbzx r11, r4, r11 -/* 803C21A8 003BF108 91 81 01 34 */ stw r12, 0x134(r1) -/* 803C21AC 003BF10C 55 6B 10 3A */ slwi r11, r11, 2 -/* 803C21B0 003BF110 90 01 01 30 */ stw r0, 0x130(r1) -/* 803C21B4 003BF114 C8 21 01 30 */ lfd f1, 0x130(r1) -/* 803C21B8 003BF118 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C21BC 003BF11C 7C 23 5D 2E */ stfsx f1, r3, r11 -/* 803C21C0 003BF120 83 AD B1 50 */ lwz r29, lbl_805A9D10@sda21(r13) -/* 803C21C4 003BF124 81 9D 06 9C */ lwz r12, 0x69c(r29) -/* 803C21C8 003BF128 39 6C 00 01 */ addi r11, r12, 1 -/* 803C21CC 003BF12C 91 7D 06 9C */ stw r11, 0x69c(r29) -/* 803C21D0 003BF130 89 6C 00 00 */ lbz r11, 0(r12) -/* 803C21D4 003BF134 7D 44 50 AE */ lbzx r10, r4, r10 -/* 803C21D8 003BF138 91 61 01 2C */ stw r11, 0x12c(r1) -/* 803C21DC 003BF13C 55 4A 10 3A */ slwi r10, r10, 2 -/* 803C21E0 003BF140 90 01 01 28 */ stw r0, 0x128(r1) -/* 803C21E4 003BF144 C8 21 01 28 */ lfd f1, 0x128(r1) -/* 803C21E8 003BF148 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C21EC 003BF14C 7C 23 55 2E */ stfsx f1, r3, r10 -/* 803C21F0 003BF150 83 CD B1 50 */ lwz r30, lbl_805A9D10@sda21(r13) -/* 803C21F4 003BF154 39 69 00 06 */ addi r11, r9, 6 -/* 803C21F8 003BF158 39 49 00 07 */ addi r10, r9, 7 -/* 803C21FC 003BF15C 83 BE 06 9C */ lwz r29, 0x69c(r30) -/* 803C2200 003BF160 55 6B 04 3E */ clrlwi r11, r11, 0x10 -/* 803C2204 003BF164 55 4A 04 3E */ clrlwi r10, r10, 0x10 -/* 803C2208 003BF168 39 9D 00 01 */ addi r12, r29, 1 -/* 803C220C 003BF16C 91 9E 06 9C */ stw r12, 0x69c(r30) -/* 803C2210 003BF170 38 A5 00 08 */ addi r5, r5, 8 -/* 803C2214 003BF174 39 29 00 08 */ addi r9, r9, 8 -/* 803C2218 003BF178 89 9D 00 00 */ lbz r12, 0(r29) -/* 803C221C 003BF17C 7D 64 58 AE */ lbzx r11, r4, r11 -/* 803C2220 003BF180 91 81 01 24 */ stw r12, 0x124(r1) -/* 803C2224 003BF184 55 6B 10 3A */ slwi r11, r11, 2 -/* 803C2228 003BF188 90 01 01 20 */ stw r0, 0x120(r1) -/* 803C222C 003BF18C C8 21 01 20 */ lfd f1, 0x120(r1) -/* 803C2230 003BF190 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C2234 003BF194 7C 23 5D 2E */ stfsx f1, r3, r11 -/* 803C2238 003BF198 83 AD B1 50 */ lwz r29, lbl_805A9D10@sda21(r13) -/* 803C223C 003BF19C 81 9D 06 9C */ lwz r12, 0x69c(r29) -/* 803C2240 003BF1A0 39 6C 00 01 */ addi r11, r12, 1 -/* 803C2244 003BF1A4 91 7D 06 9C */ stw r11, 0x69c(r29) -/* 803C2248 003BF1A8 89 6C 00 00 */ lbz r11, 0(r12) -/* 803C224C 003BF1AC 7D 44 50 AE */ lbzx r10, r4, r10 -/* 803C2250 003BF1B0 91 61 01 1C */ stw r11, 0x11c(r1) -/* 803C2254 003BF1B4 55 4A 10 3A */ slwi r10, r10, 2 -/* 803C2258 003BF1B8 90 01 01 18 */ stw r0, 0x118(r1) -/* 803C225C 003BF1BC C8 21 01 18 */ lfd f1, 0x118(r1) -/* 803C2260 003BF1C0 EC 21 00 28 */ fsubs f1, f1, f0 -/* 803C2264 003BF1C4 7C 23 55 2E */ stfsx f1, r3, r10 -lbl_803C2268: -/* 803C2268 003BF1C8 55 2A 04 3E */ clrlwi r10, r9, 0x10 -/* 803C226C 003BF1CC 28 0A 00 40 */ cmplwi r10, 0x40 -/* 803C2270 003BF1D0 41 80 FE 38 */ blt lbl_803C20A8 -/* 803C2274 003BF1D4 83 AD B1 50 */ lwz r29, lbl_805A9D10@sda21(r13) -/* 803C2278 003BF1D8 3B 66 00 00 */ addi r27, r6, 0 -/* 803C227C 003BF1DC 55 1C 40 2E */ slwi r28, r8, 8 -/* 803C2280 003BF1E0 38 A0 00 00 */ li r5, 0 -/* 803C2284 003BF1E4 39 00 00 00 */ li r8, 0 -/* 803C2288 003BF1E8 48 00 01 4C */ b lbl_803C23D4 -lbl_803C228C: -/* 803C228C 003BF1EC 54 AB 13 BA */ rlwinm r11, r5, 2, 0xe, 0x1d -/* 803C2290 003BF1F0 C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C2294 003BF1F4 7C 43 5C 2E */ lfsx f2, r3, r11 -/* 803C2298 003BF1F8 39 25 00 01 */ addi r9, r5, 1 -/* 803C229C 003BF1FC 55 2C 13 BA */ rlwinm r12, r9, 2, 0xe, 0x1d -/* 803C22A0 003BF200 C8 66 00 00 */ lfd f3, 0(r6) -/* 803C22A4 003BF204 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C22A8 003BF208 39 25 00 02 */ addi r9, r5, 2 -/* 803C22AC 003BF20C 55 3A 13 BA */ rlwinm r26, r9, 2, 0xe, 0x1d -/* 803C22B0 003BF210 39 25 00 03 */ addi r9, r5, 3 -/* 803C22B4 003BF214 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C22B8 003BF218 55 39 13 BA */ rlwinm r25, r9, 2, 0xe, 0x1d -/* 803C22BC 003BF21C 39 45 00 04 */ addi r10, r5, 4 -/* 803C22C0 003BF220 55 58 13 BA */ rlwinm r24, r10, 2, 0xe, 0x1d -/* 803C22C4 003BF224 FC 20 08 18 */ frsp f1, f1 -/* 803C22C8 003BF228 7D 3D 5A 14 */ add r9, r29, r11 -/* 803C22CC 003BF22C 39 45 00 07 */ addi r10, r5, 7 -/* 803C22D0 003BF230 7C 3C 4D 2E */ stfsx f1, r28, r9 -/* 803C22D4 003BF234 39 25 00 05 */ addi r9, r5, 5 -/* 803C22D8 003BF238 55 37 13 BA */ rlwinm r23, r9, 2, 0xe, 0x1d -/* 803C22DC 003BF23C 7C 43 64 2E */ lfsx f2, r3, r12 -/* 803C22E0 003BF240 39 25 00 06 */ addi r9, r5, 6 -/* 803C22E4 003BF244 C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C22E8 003BF248 55 36 13 BA */ rlwinm r22, r9, 2, 0xe, 0x1d -/* 803C22EC 003BF24C 7D 3D 62 14 */ add r9, r29, r12 -/* 803C22F0 003BF250 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C22F4 003BF254 C8 66 00 08 */ lfd f3, 8(r6) -/* 803C22F8 003BF258 55 55 13 BA */ rlwinm r21, r10, 2, 0xe, 0x1d -/* 803C22FC 003BF25C 7F DD D2 14 */ add r30, r29, r26 -/* 803C2300 003BF260 7F FD CA 14 */ add r31, r29, r25 -/* 803C2304 003BF264 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C2308 003BF268 7D 9D C2 14 */ add r12, r29, r24 -/* 803C230C 003BF26C 7D 7D BA 14 */ add r11, r29, r23 -/* 803C2310 003BF270 7D 5D B2 14 */ add r10, r29, r22 -/* 803C2314 003BF274 38 A5 00 08 */ addi r5, r5, 8 -/* 803C2318 003BF278 FC 20 08 18 */ frsp f1, f1 -/* 803C231C 003BF27C 39 08 00 01 */ addi r8, r8, 1 -/* 803C2320 003BF280 7C 3C 4D 2E */ stfsx f1, r28, r9 -/* 803C2324 003BF284 7D 3D AA 14 */ add r9, r29, r21 -/* 803C2328 003BF288 7C 43 D4 2E */ lfsx f2, r3, r26 -/* 803C232C 003BF28C C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C2330 003BF290 C8 66 00 10 */ lfd f3, 0x10(r6) -/* 803C2334 003BF294 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C2338 003BF298 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C233C 003BF29C FC 20 08 18 */ frsp f1, f1 -/* 803C2340 003BF2A0 7C 3C F5 2E */ stfsx f1, r28, r30 -/* 803C2344 003BF2A4 7C 43 CC 2E */ lfsx f2, r3, r25 -/* 803C2348 003BF2A8 C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C234C 003BF2AC C8 66 00 18 */ lfd f3, 0x18(r6) -/* 803C2350 003BF2B0 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C2354 003BF2B4 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C2358 003BF2B8 FC 20 08 18 */ frsp f1, f1 -/* 803C235C 003BF2BC 7C 3C FD 2E */ stfsx f1, r28, r31 -/* 803C2360 003BF2C0 7C 43 C4 2E */ lfsx f2, r3, r24 -/* 803C2364 003BF2C4 C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C2368 003BF2C8 C8 66 00 20 */ lfd f3, 0x20(r6) -/* 803C236C 003BF2CC FC 22 00 72 */ fmul f1, f2, f1 -/* 803C2370 003BF2D0 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C2374 003BF2D4 FC 20 08 18 */ frsp f1, f1 -/* 803C2378 003BF2D8 7C 3C 65 2E */ stfsx f1, r28, r12 -/* 803C237C 003BF2DC 7C 43 BC 2E */ lfsx f2, r3, r23 -/* 803C2380 003BF2E0 C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C2384 003BF2E4 C8 66 00 28 */ lfd f3, 0x28(r6) -/* 803C2388 003BF2E8 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C238C 003BF2EC FC 23 00 72 */ fmul f1, f3, f1 -/* 803C2390 003BF2F0 FC 20 08 18 */ frsp f1, f1 -/* 803C2394 003BF2F4 7C 3C 5D 2E */ stfsx f1, r28, r11 -/* 803C2398 003BF2F8 7C 43 B4 2E */ lfsx f2, r3, r22 -/* 803C239C 003BF2FC C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C23A0 003BF300 C8 66 00 30 */ lfd f3, 0x30(r6) -/* 803C23A4 003BF304 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C23A8 003BF308 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C23AC 003BF30C FC 20 08 18 */ frsp f1, f1 -/* 803C23B0 003BF310 7C 3C 55 2E */ stfsx f1, r28, r10 -/* 803C23B4 003BF314 C8 3B 00 00 */ lfd f1, 0(r27) -/* 803C23B8 003BF318 3B 7B 00 08 */ addi r27, r27, 8 -/* 803C23BC 003BF31C 7C 43 AC 2E */ lfsx f2, r3, r21 -/* 803C23C0 003BF320 C8 66 00 38 */ lfd f3, 0x38(r6) -/* 803C23C4 003BF324 FC 22 00 72 */ fmul f1, f2, f1 -/* 803C23C8 003BF328 FC 23 00 72 */ fmul f1, f3, f1 -/* 803C23CC 003BF32C FC 20 08 18 */ frsp f1, f1 -/* 803C23D0 003BF330 7C 3C 4D 2E */ stfsx f1, r28, r9 -lbl_803C23D4: -/* 803C23D4 003BF334 55 09 04 3E */ clrlwi r9, r8, 0x10 -/* 803C23D8 003BF338 28 09 00 08 */ cmplwi r9, 8 -/* 803C23DC 003BF33C 41 80 FE B0 */ blt lbl_803C228C -/* 803C23E0 003BF340 38 E7 FF BF */ addi r7, r7, -65 -/* 803C23E4 003BF344 54 E5 04 3F */ clrlwi. r5, r7, 0x10 -/* 803C23E8 003BF348 40 82 FC A0 */ bne lbl_803C2088 -/* 803C23EC 003BF34C 38 60 00 00 */ li r3, 0 -/* 803C23F0 003BF350 BA A1 01 5C */ lmw r21, 0x15c(r1) -/* 803C23F4 003BF354 38 21 01 88 */ addi r1, r1, 0x188 -/* 803C23F8 003BF358 4E 80 00 20 */ blr - -.global __THPReadHuffmanTableSpecification -__THPReadHuffmanTableSpecification: -/* 803C23FC 003BF35C 7C 08 02 A6 */ mflr r0 -/* 803C2400 003BF360 90 01 00 04 */ stw r0, 4(r1) -/* 803C2404 003BF364 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C2408 003BF368 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803C240C 003BF36C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803C2410 003BF370 93 A1 00 14 */ stw r29, 0x14(r1) -/* 803C2414 003BF374 80 8D B1 4C */ lwz r4, lbl_805A9D0C@sda21(r13) -/* 803C2418 003BF378 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C241C 003BF37C 38 04 01 01 */ addi r0, r4, 0x101 -/* 803C2420 003BF380 90 8D B0 E8 */ stw r4, lbl_805A9CA8@sda21(r13) -/* 803C2424 003BF384 38 A3 06 9C */ addi r5, r3, 0x69c -/* 803C2428 003BF388 90 0D B0 EC */ stw r0, lbl_805A9CAC@sda21(r13) -/* 803C242C 003BF38C 80 63 06 9C */ lwz r3, 0x69c(r3) -/* 803C2430 003BF390 88 83 00 00 */ lbz r4, 0(r3) -/* 803C2434 003BF394 38 03 00 02 */ addi r0, r3, 2 -/* 803C2438 003BF398 88 63 00 01 */ lbz r3, 1(r3) -/* 803C243C 003BF39C 50 83 44 2E */ rlwimi r3, r4, 8, 0x10, 0x17 -/* 803C2440 003BF3A0 54 7E 04 3E */ clrlwi r30, r3, 0x10 -/* 803C2444 003BF3A4 90 05 00 00 */ stw r0, 0(r5) -/* 803C2448 003BF3A8 3B DE FF FE */ addi r30, r30, -2 -lbl_803C244C: -/* 803C244C 003BF3AC 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2450 003BF3B0 3B A0 00 00 */ li r29, 0 -/* 803C2454 003BF3B4 38 60 00 00 */ li r3, 0 -/* 803C2458 003BF3B8 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C245C 003BF3BC 38 04 00 01 */ addi r0, r4, 1 -/* 803C2460 003BF3C0 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C2464 003BF3C4 88 C4 00 00 */ lbz r6, 0(r4) -/* 803C2468 003BF3C8 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C246C 003BF3CC 7C C0 26 70 */ srawi r0, r6, 4 -/* 803C2470 003BF3D0 80 A4 06 9C */ lwz r5, 0x69c(r4) -/* 803C2474 003BF3D4 54 C4 0E FC */ rlwinm r4, r6, 1, 0x1b, 0x1e -/* 803C2478 003BF3D8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 803C247C 003BF3DC 7C 04 02 14 */ add r0, r4, r0 -/* 803C2480 003BF3E0 90 AD B0 E4 */ stw r5, lbl_805A9CA4@sda21(r13) -/* 803C2484 003BF3E4 54 1F 06 3E */ clrlwi r31, r0, 0x18 -/* 803C2488 003BF3E8 48 00 00 C8 */ b lbl_803C2550 -lbl_803C248C: -/* 803C248C 003BF3EC 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2490 003BF3F0 38 63 00 08 */ addi r3, r3, 8 -/* 803C2494 003BF3F4 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C2498 003BF3F8 38 04 00 01 */ addi r0, r4, 1 -/* 803C249C 003BF3FC 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C24A0 003BF400 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C24A4 003BF404 88 04 00 00 */ lbz r0, 0(r4) -/* 803C24A8 003BF408 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C24AC 003BF40C 7F BD 02 14 */ add r29, r29, r0 -/* 803C24B0 003BF410 38 04 00 01 */ addi r0, r4, 1 -/* 803C24B4 003BF414 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C24B8 003BF418 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C24BC 003BF41C 88 04 00 00 */ lbz r0, 0(r4) -/* 803C24C0 003BF420 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C24C4 003BF424 7F BD 02 14 */ add r29, r29, r0 -/* 803C24C8 003BF428 38 04 00 01 */ addi r0, r4, 1 -/* 803C24CC 003BF42C 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C24D0 003BF430 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C24D4 003BF434 88 04 00 00 */ lbz r0, 0(r4) -/* 803C24D8 003BF438 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C24DC 003BF43C 7F BD 02 14 */ add r29, r29, r0 -/* 803C24E0 003BF440 38 04 00 01 */ addi r0, r4, 1 -/* 803C24E4 003BF444 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C24E8 003BF448 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C24EC 003BF44C 88 04 00 00 */ lbz r0, 0(r4) -/* 803C24F0 003BF450 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C24F4 003BF454 7F BD 02 14 */ add r29, r29, r0 -/* 803C24F8 003BF458 38 04 00 01 */ addi r0, r4, 1 -/* 803C24FC 003BF45C 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C2500 003BF460 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2504 003BF464 88 04 00 00 */ lbz r0, 0(r4) -/* 803C2508 003BF468 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C250C 003BF46C 7F BD 02 14 */ add r29, r29, r0 -/* 803C2510 003BF470 38 04 00 01 */ addi r0, r4, 1 -/* 803C2514 003BF474 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C2518 003BF478 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C251C 003BF47C 88 04 00 00 */ lbz r0, 0(r4) -/* 803C2520 003BF480 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C2524 003BF484 7F BD 02 14 */ add r29, r29, r0 -/* 803C2528 003BF488 38 04 00 01 */ addi r0, r4, 1 -/* 803C252C 003BF48C 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C2530 003BF490 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2534 003BF494 88 04 00 00 */ lbz r0, 0(r4) -/* 803C2538 003BF498 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C253C 003BF49C 7F BD 02 14 */ add r29, r29, r0 -/* 803C2540 003BF4A0 38 04 00 01 */ addi r0, r4, 1 -/* 803C2544 003BF4A4 90 05 06 9C */ stw r0, 0x69c(r5) -/* 803C2548 003BF4A8 88 04 00 00 */ lbz r0, 0(r4) -/* 803C254C 003BF4AC 7F BD 02 14 */ add r29, r29, r0 -lbl_803C2550: -/* 803C2550 003BF4B0 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803C2554 003BF4B4 28 00 00 10 */ cmplwi r0, 0x10 -/* 803C2558 003BF4B8 41 80 FF 34 */ blt lbl_803C248C -/* 803C255C 003BF4BC 1C 7F 00 E0 */ mulli r3, r31, 0xe0 -/* 803C2560 003BF4C0 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2564 003BF4C4 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C2568 003BF4C8 38 03 03 40 */ addi r0, r3, 0x340 -/* 803C256C 003BF4CC 7C 85 01 2E */ stwx r4, r5, r0 -/* 803C2570 003BF4D0 57 A0 04 3E */ clrlwi r0, r29, 0x10 -/* 803C2574 003BF4D4 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2578 003BF4D8 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C257C 003BF4DC 7C 03 02 14 */ add r0, r3, r0 -/* 803C2580 003BF4E0 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C2584 003BF4E4 48 00 00 59 */ bl __THPHuffGenerateSizeTable -/* 803C2588 003BF4E8 48 00 01 45 */ bl __THPHuffGenerateCodeTable -/* 803C258C 003BF4EC 7F E3 FB 78 */ mr r3, r31 -/* 803C2590 003BF4F0 48 00 01 A5 */ bl __THPHuffGenerateDecoderTables -/* 803C2594 003BF4F4 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2598 003BF4F8 38 1D 00 11 */ addi r0, r29, 0x11 -/* 803C259C 003BF4FC 7F C0 F0 50 */ subf r30, r0, r30 -/* 803C25A0 003BF500 38 00 00 01 */ li r0, 1 -/* 803C25A4 003BF504 88 85 06 A8 */ lbz r4, 0x6a8(r5) -/* 803C25A8 003BF508 7C 03 F8 30 */ slw r3, r0, r31 -/* 803C25AC 003BF50C 7C 83 1B 78 */ or r3, r4, r3 -/* 803C25B0 003BF510 57 C0 04 3F */ clrlwi. r0, r30, 0x10 -/* 803C25B4 003BF514 98 65 06 A8 */ stb r3, 0x6a8(r5) -/* 803C25B8 003BF518 40 82 FE 94 */ bne lbl_803C244C -/* 803C25BC 003BF51C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803C25C0 003BF520 38 60 00 00 */ li r3, 0 -/* 803C25C4 003BF524 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803C25C8 003BF528 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 803C25CC 003BF52C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 803C25D0 003BF530 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C25D4 003BF534 7C 08 03 A6 */ mtlr r0 -/* 803C25D8 003BF538 4E 80 00 20 */ blr - -.global __THPHuffGenerateSizeTable -__THPHuffGenerateSizeTable: -/* 803C25DC 003BF53C 38 C0 00 00 */ li r6, 0 -/* 803C25E0 003BF540 38 E0 00 01 */ li r7, 1 -lbl_803C25E4: -/* 803C25E4 003BF544 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C25E8 003BF548 38 07 FF FF */ addi r0, r7, -1 -/* 803C25EC 003BF54C 54 E5 06 3E */ clrlwi r5, r7, 0x18 -/* 803C25F0 003BF550 7D 03 00 AE */ lbzx r8, r3, r0 -/* 803C25F4 003BF554 2C 08 00 00 */ cmpwi r8, 0 -/* 803C25F8 003BF558 38 68 00 00 */ addi r3, r8, 0 -/* 803C25FC 003BF55C 41 82 00 B4 */ beq lbl_803C26B0 -/* 803C2600 003BF560 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f -/* 803C2604 003BF564 7C 09 03 A6 */ mtctr r0 -/* 803C2608 003BF568 41 82 00 90 */ beq lbl_803C2698 -lbl_803C260C: -/* 803C260C 003BF56C 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2610 003BF570 7C C0 33 78 */ mr r0, r6 -/* 803C2614 003BF574 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2618 003BF578 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C261C 003BF57C 38 06 00 00 */ addi r0, r6, 0 -/* 803C2620 003BF580 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2624 003BF584 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2628 003BF588 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C262C 003BF58C 38 06 00 00 */ addi r0, r6, 0 -/* 803C2630 003BF590 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2634 003BF594 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2638 003BF598 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C263C 003BF59C 38 06 00 00 */ addi r0, r6, 0 -/* 803C2640 003BF5A0 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2644 003BF5A4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2648 003BF5A8 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C264C 003BF5AC 38 06 00 00 */ addi r0, r6, 0 -/* 803C2650 003BF5B0 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2654 003BF5B4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2658 003BF5B8 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C265C 003BF5BC 38 06 00 00 */ addi r0, r6, 0 -/* 803C2660 003BF5C0 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2664 003BF5C4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2668 003BF5C8 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C266C 003BF5CC 38 06 00 00 */ addi r0, r6, 0 -/* 803C2670 003BF5D0 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2674 003BF5D4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2678 003BF5D8 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C267C 003BF5DC 38 06 00 00 */ addi r0, r6, 0 -/* 803C2680 003BF5E0 38 C6 00 01 */ addi r6, r6, 1 -/* 803C2684 003BF5E4 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C2688 003BF5E8 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C268C 003BF5EC 42 00 FF 80 */ bdnz lbl_803C260C -/* 803C2690 003BF5F0 70 63 00 07 */ andi. r3, r3, 7 -/* 803C2694 003BF5F4 41 82 00 1C */ beq lbl_803C26B0 -lbl_803C2698: -/* 803C2698 003BF5F8 7C 69 03 A6 */ mtctr r3 -lbl_803C269C: -/* 803C269C 003BF5FC 80 8D B0 E8 */ lwz r4, lbl_805A9CA8@sda21(r13) -/* 803C26A0 003BF600 7C C0 33 78 */ mr r0, r6 -/* 803C26A4 003BF604 38 C6 00 01 */ addi r6, r6, 1 -/* 803C26A8 003BF608 7C A4 01 AE */ stbx r5, r4, r0 -/* 803C26AC 003BF60C 42 00 FF F0 */ bdnz lbl_803C269C -lbl_803C26B0: -/* 803C26B0 003BF610 38 E7 00 01 */ addi r7, r7, 1 -/* 803C26B4 003BF614 2C 07 00 10 */ cmpwi r7, 0x10 -/* 803C26B8 003BF618 40 81 FF 2C */ ble lbl_803C25E4 -/* 803C26BC 003BF61C 80 6D B0 E8 */ lwz r3, lbl_805A9CA8@sda21(r13) -/* 803C26C0 003BF620 38 00 00 00 */ li r0, 0 -/* 803C26C4 003BF624 7C 03 31 AE */ stbx r0, r3, r6 -/* 803C26C8 003BF628 4E 80 00 20 */ blr - -.global __THPHuffGenerateCodeTable -__THPHuffGenerateCodeTable: -/* 803C26CC 003BF62C 80 CD B0 E8 */ lwz r6, lbl_805A9CA8@sda21(r13) -/* 803C26D0 003BF630 39 00 00 00 */ li r8, 0 -/* 803C26D4 003BF634 80 AD B0 EC */ lwz r5, lbl_805A9CAC@sda21(r13) -/* 803C26D8 003BF638 39 20 00 00 */ li r9, 0 -/* 803C26DC 003BF63C 88 E6 00 00 */ lbz r7, 0(r6) -/* 803C26E0 003BF640 38 60 00 01 */ li r3, 1 -/* 803C26E4 003BF644 48 00 00 3C */ b lbl_803C2720 -lbl_803C26E8: -/* 803C26E8 003BF648 54 E4 06 3E */ clrlwi r4, r7, 0x18 -/* 803C26EC 003BF64C 48 00 00 14 */ b lbl_803C2700 -lbl_803C26F0: -/* 803C26F0 003BF650 55 00 0B FC */ rlwinm r0, r8, 1, 0xf, 0x1e -/* 803C26F4 003BF654 7D 25 03 2E */ sthx r9, r5, r0 -/* 803C26F8 003BF658 39 08 00 01 */ addi r8, r8, 1 -/* 803C26FC 003BF65C 39 29 00 01 */ addi r9, r9, 1 -lbl_803C2700: -/* 803C2700 003BF660 55 00 04 3E */ clrlwi r0, r8, 0x10 -/* 803C2704 003BF664 7C 06 00 AE */ lbzx r0, r6, r0 -/* 803C2708 003BF668 7C 04 00 40 */ cmplw r4, r0 -/* 803C270C 003BF66C 41 82 FF E4 */ beq lbl_803C26F0 -/* 803C2710 003BF670 55 20 04 3E */ clrlwi r0, r9, 0x10 -/* 803C2714 003BF674 7C 00 18 30 */ slw r0, r0, r3 -/* 803C2718 003BF678 54 09 04 3E */ clrlwi r9, r0, 0x10 -/* 803C271C 003BF67C 38 E7 00 01 */ addi r7, r7, 1 -lbl_803C2720: -/* 803C2720 003BF680 55 00 04 3E */ clrlwi r0, r8, 0x10 -/* 803C2724 003BF684 7C 06 00 AE */ lbzx r0, r6, r0 -/* 803C2728 003BF688 28 00 00 00 */ cmplwi r0, 0 -/* 803C272C 003BF68C 40 82 FF BC */ bne lbl_803C26E8 - -.global sub_803c2730 -sub_803c2730: -/* 803C2730 003BF690 4E 80 00 20 */ blr - -.global __THPHuffGenerateDecoderTables -__THPHuffGenerateDecoderTables: -/* 803C2734 003BF694 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 803C2738 003BF698 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C273C 003BF69C 1C 60 00 E0 */ mulli r3, r0, 0xe0 -/* 803C2740 003BF6A0 38 E3 03 00 */ addi r7, r3, 0x300 -/* 803C2744 003BF6A4 38 00 00 04 */ li r0, 4 -/* 803C2748 003BF6A8 7C E4 3A 14 */ add r7, r4, r7 -/* 803C274C 003BF6AC 7C 09 03 A6 */ mtctr r0 -/* 803C2750 003BF6B0 38 C7 00 04 */ addi r6, r7, 4 -/* 803C2754 003BF6B4 39 00 00 00 */ li r8, 0 -/* 803C2758 003BF6B8 39 20 00 01 */ li r9, 1 -lbl_803C275C: -/* 803C275C 003BF6BC 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C2760 003BF6C0 38 A9 FF FF */ addi r5, r9, -1 -/* 803C2764 003BF6C4 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C2768 003BF6C8 28 00 00 00 */ cmplwi r0, 0 -/* 803C276C 003BF6CC 41 82 00 3C */ beq lbl_803C27A8 -/* 803C2770 003BF6D0 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) -/* 803C2774 003BF6D4 55 00 08 3C */ slwi r0, r8, 1 -/* 803C2778 003BF6D8 7C 03 02 2E */ lhzx r0, r3, r0 -/* 803C277C 003BF6DC 7C 00 40 50 */ subf r0, r0, r8 -/* 803C2780 003BF6E0 90 06 00 8C */ stw r0, 0x8c(r6) -/* 803C2784 003BF6E4 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C2788 003BF6E8 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) -/* 803C278C 003BF6EC 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C2790 003BF6F0 7D 08 02 14 */ add r8, r8, r0 -/* 803C2794 003BF6F4 55 03 08 3C */ slwi r3, r8, 1 -/* 803C2798 003BF6F8 38 03 FF FE */ addi r0, r3, -2 -/* 803C279C 003BF6FC 7C 04 02 2E */ lhzx r0, r4, r0 -/* 803C27A0 003BF700 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C27A4 003BF704 48 00 00 10 */ b lbl_803C27B4 -lbl_803C27A8: -/* 803C27A8 003BF708 38 00 FF FF */ li r0, -1 -/* 803C27AC 003BF70C 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C27B0 003BF710 90 06 00 8C */ stw r0, 0x8c(r6) -lbl_803C27B4: -/* 803C27B4 003BF714 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C27B8 003BF718 38 A9 00 00 */ addi r5, r9, 0 -/* 803C27BC 003BF71C 39 29 00 01 */ addi r9, r9, 1 -/* 803C27C0 003BF720 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C27C4 003BF724 38 C6 00 04 */ addi r6, r6, 4 -/* 803C27C8 003BF728 28 00 00 00 */ cmplwi r0, 0 -/* 803C27CC 003BF72C 41 82 00 3C */ beq lbl_803C2808 -/* 803C27D0 003BF730 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) -/* 803C27D4 003BF734 55 00 08 3C */ slwi r0, r8, 1 -/* 803C27D8 003BF738 7C 03 02 2E */ lhzx r0, r3, r0 -/* 803C27DC 003BF73C 7C 00 40 50 */ subf r0, r0, r8 -/* 803C27E0 003BF740 90 06 00 8C */ stw r0, 0x8c(r6) -/* 803C27E4 003BF744 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C27E8 003BF748 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) -/* 803C27EC 003BF74C 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C27F0 003BF750 7D 08 02 14 */ add r8, r8, r0 -/* 803C27F4 003BF754 55 03 08 3C */ slwi r3, r8, 1 -/* 803C27F8 003BF758 38 03 FF FE */ addi r0, r3, -2 -/* 803C27FC 003BF75C 7C 04 02 2E */ lhzx r0, r4, r0 -/* 803C2800 003BF760 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C2804 003BF764 48 00 00 10 */ b lbl_803C2814 -lbl_803C2808: -/* 803C2808 003BF768 38 00 FF FF */ li r0, -1 -/* 803C280C 003BF76C 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C2810 003BF770 90 06 00 8C */ stw r0, 0x8c(r6) -lbl_803C2814: -/* 803C2814 003BF774 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C2818 003BF778 38 A9 00 00 */ addi r5, r9, 0 -/* 803C281C 003BF77C 39 29 00 01 */ addi r9, r9, 1 -/* 803C2820 003BF780 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C2824 003BF784 38 C6 00 04 */ addi r6, r6, 4 -/* 803C2828 003BF788 28 00 00 00 */ cmplwi r0, 0 -/* 803C282C 003BF78C 41 82 00 3C */ beq lbl_803C2868 -/* 803C2830 003BF790 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) -/* 803C2834 003BF794 55 00 08 3C */ slwi r0, r8, 1 -/* 803C2838 003BF798 7C 03 02 2E */ lhzx r0, r3, r0 -/* 803C283C 003BF79C 7C 00 40 50 */ subf r0, r0, r8 -/* 803C2840 003BF7A0 90 06 00 8C */ stw r0, 0x8c(r6) -/* 803C2844 003BF7A4 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C2848 003BF7A8 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) -/* 803C284C 003BF7AC 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C2850 003BF7B0 7D 08 02 14 */ add r8, r8, r0 -/* 803C2854 003BF7B4 55 03 08 3C */ slwi r3, r8, 1 -/* 803C2858 003BF7B8 38 03 FF FE */ addi r0, r3, -2 -/* 803C285C 003BF7BC 7C 04 02 2E */ lhzx r0, r4, r0 -/* 803C2860 003BF7C0 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C2864 003BF7C4 48 00 00 10 */ b lbl_803C2874 -lbl_803C2868: -/* 803C2868 003BF7C8 38 00 FF FF */ li r0, -1 -/* 803C286C 003BF7CC 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C2870 003BF7D0 90 06 00 8C */ stw r0, 0x8c(r6) -lbl_803C2874: -/* 803C2874 003BF7D4 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C2878 003BF7D8 38 A9 00 00 */ addi r5, r9, 0 -/* 803C287C 003BF7DC 39 29 00 01 */ addi r9, r9, 1 -/* 803C2880 003BF7E0 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C2884 003BF7E4 38 C6 00 04 */ addi r6, r6, 4 -/* 803C2888 003BF7E8 28 00 00 00 */ cmplwi r0, 0 -/* 803C288C 003BF7EC 41 82 00 3C */ beq lbl_803C28C8 -/* 803C2890 003BF7F0 80 6D B0 EC */ lwz r3, lbl_805A9CAC@sda21(r13) -/* 803C2894 003BF7F4 55 00 08 3C */ slwi r0, r8, 1 -/* 803C2898 003BF7F8 7C 03 02 2E */ lhzx r0, r3, r0 -/* 803C289C 003BF7FC 7C 00 40 50 */ subf r0, r0, r8 -/* 803C28A0 003BF800 90 06 00 8C */ stw r0, 0x8c(r6) -/* 803C28A4 003BF804 80 6D B0 E4 */ lwz r3, lbl_805A9CA4@sda21(r13) -/* 803C28A8 003BF808 80 8D B0 EC */ lwz r4, lbl_805A9CAC@sda21(r13) -/* 803C28AC 003BF80C 7C 03 28 AE */ lbzx r0, r3, r5 -/* 803C28B0 003BF810 7D 08 02 14 */ add r8, r8, r0 -/* 803C28B4 003BF814 55 03 08 3C */ slwi r3, r8, 1 -/* 803C28B8 003BF818 38 03 FF FE */ addi r0, r3, -2 -/* 803C28BC 003BF81C 7C 04 02 2E */ lhzx r0, r4, r0 -/* 803C28C0 003BF820 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C28C4 003BF824 48 00 00 10 */ b lbl_803C28D4 -lbl_803C28C8: -/* 803C28C8 003BF828 38 00 FF FF */ li r0, -1 -/* 803C28CC 003BF82C 90 06 00 44 */ stw r0, 0x44(r6) -/* 803C28D0 003BF830 90 06 00 8C */ stw r0, 0x8c(r6) -lbl_803C28D4: -/* 803C28D4 003BF834 38 C6 00 04 */ addi r6, r6, 4 -/* 803C28D8 003BF838 39 29 00 01 */ addi r9, r9, 1 -/* 803C28DC 003BF83C 42 00 FE 80 */ bdnz lbl_803C275C -/* 803C28E0 003BF840 3C 60 00 10 */ lis r3, 0x000FFFFF@ha -/* 803C28E4 003BF844 38 03 FF FF */ addi r0, r3, 0x000FFFFF@l -/* 803C28E8 003BF848 90 07 00 88 */ stw r0, 0x88(r7) -/* 803C28EC 003BF84C 4E 80 00 20 */ blr - -.global __THPRestartDefinition -__THPRestartDefinition: -/* 803C28F0 003BF850 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C28F4 003BF854 38 00 00 01 */ li r0, 1 -/* 803C28F8 003BF858 98 03 06 A9 */ stb r0, 0x6a9(r3) -/* 803C28FC 003BF85C 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2900 003BF860 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C2904 003BF864 38 03 00 02 */ addi r0, r3, 2 -/* 803C2908 003BF868 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C290C 003BF86C 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C2910 003BF870 80 85 06 9C */ lwz r4, 0x69c(r5) -/* 803C2914 003BF874 88 64 00 00 */ lbz r3, 0(r4) -/* 803C2918 003BF878 88 04 00 01 */ lbz r0, 1(r4) -/* 803C291C 003BF87C 50 60 44 2E */ rlwimi r0, r3, 8, 0x10, 0x17 -/* 803C2920 003BF880 B0 05 06 AA */ sth r0, 0x6aa(r5) -/* 803C2924 003BF884 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2928 003BF888 80 64 06 9C */ lwz r3, 0x69c(r4) -/* 803C292C 003BF88C 38 03 00 02 */ addi r0, r3, 2 -/* 803C2930 003BF890 90 04 06 9C */ stw r0, 0x69c(r4) -/* 803C2934 003BF894 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2938 003BF898 A0 03 06 AA */ lhz r0, 0x6aa(r3) -/* 803C293C 003BF89C B0 03 06 AC */ sth r0, 0x6ac(r3) -/* 803C2940 003BF8A0 4E 80 00 20 */ blr - -.global __THPPrepBitStream -__THPPrepBitStream: -/* 803C2944 003BF8A4 94 21 FF E8 */ stwu r1, -0x18(r1) -/* 803C2948 003BF8A8 93 E1 00 14 */ stw r31, 0x14(r1) -/* 803C294C 003BF8AC 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2950 003BF8B0 80 03 06 9C */ lwz r0, 0x69c(r3) -/* 803C2954 003BF8B4 38 83 06 A4 */ addi r4, r3, 0x6a4 -/* 803C2958 003BF8B8 80 63 06 A4 */ lwz r3, 0x6a4(r3) -/* 803C295C 003BF8BC 54 05 00 3A */ rlwinm r5, r0, 0, 0, 0x1d -/* 803C2960 003BF8C0 28 03 00 21 */ cmplwi r3, 0x21 -/* 803C2964 003BF8C4 54 00 07 BE */ clrlwi r0, r0, 0x1e -/* 803C2968 003BF8C8 41 82 00 18 */ beq lbl_803C2980 -/* 803C296C 003BF8CC 20 00 00 03 */ subfic r0, r0, 3 -/* 803C2970 003BF8D0 54 00 18 38 */ slwi r0, r0, 3 -/* 803C2974 003BF8D4 7C 00 18 50 */ subf r0, r0, r3 -/* 803C2978 003BF8D8 90 04 00 00 */ stw r0, 0(r4) -/* 803C297C 003BF8DC 48 00 00 10 */ b lbl_803C298C -lbl_803C2980: -/* 803C2980 003BF8E0 54 03 18 38 */ slwi r3, r0, 3 -/* 803C2984 003BF8E4 38 03 00 01 */ addi r0, r3, 1 -/* 803C2988 003BF8E8 90 04 00 00 */ stw r0, 0(r4) -lbl_803C298C: -/* 803C298C 003BF8EC 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2990 003BF8F0 38 60 00 00 */ li r3, 0 -/* 803C2994 003BF8F4 39 00 00 00 */ li r8, 0 -/* 803C2998 003BF8F8 90 A4 06 9C */ stw r5, 0x69c(r4) -/* 803C299C 003BF8FC 80 05 00 00 */ lwz r0, 0(r5) -/* 803C29A0 003BF900 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C29A4 003BF904 90 04 06 A0 */ stw r0, 0x6a0(r4) -lbl_803C29A8: -/* 803C29A8 003BF908 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C29AC 003BF90C 38 00 00 01 */ li r0, 1 -/* 803C29B0 003BF910 7C 00 18 30 */ slw r0, r0, r3 -/* 803C29B4 003BF914 88 84 06 A8 */ lbz r4, 0x6a8(r4) -/* 803C29B8 003BF918 7C 80 00 39 */ and. r0, r4, r0 -/* 803C29BC 003BF91C 41 82 01 18 */ beq lbl_803C2AD4 -/* 803C29C0 003BF920 38 00 00 10 */ li r0, 0x10 -/* 803C29C4 003BF924 7C 09 03 A6 */ mtctr r0 -/* 803C29C8 003BF928 38 E8 00 00 */ addi r7, r8, 0 -/* 803C29CC 003BF92C 39 80 00 00 */ li r12, 0 -lbl_803C29D0: -/* 803C29D0 003BF930 80 0D B1 50 */ lwz r0, lbl_805A9D10@sda21(r13) -/* 803C29D4 003BF934 38 A0 00 FF */ li r5, 0xff -/* 803C29D8 003BF938 3B E0 00 00 */ li r31, 0 -/* 803C29DC 003BF93C 7C 80 62 14 */ add r4, r0, r12 -/* 803C29E0 003BF940 38 04 03 00 */ addi r0, r4, 0x300 -/* 803C29E4 003BF944 7C A8 01 AE */ stbx r5, r8, r0 -/* 803C29E8 003BF948 48 00 00 58 */ b lbl_803C2A40 -lbl_803C29EC: -/* 803C29EC 003BF94C 81 6D B1 50 */ lwz r11, lbl_805A9D10@sda21(r13) -/* 803C29F0 003BF950 20 9F 00 04 */ subfic r4, r31, 4 -/* 803C29F4 003BF954 57 E0 10 3A */ slwi r0, r31, 2 -/* 803C29F8 003BF958 7C A8 5A 14 */ add r5, r8, r11 -/* 803C29FC 003BF95C 7D 45 02 14 */ add r10, r5, r0 -/* 803C2A00 003BF960 80 0A 03 48 */ lwz r0, 0x348(r10) -/* 803C2A04 003BF964 7D 89 24 30 */ srw r9, r12, r4 -/* 803C2A08 003BF968 7C 09 00 00 */ cmpw r9, r0 -/* 803C2A0C 003BF96C 41 81 00 30 */ bgt lbl_803C2A3C -/* 803C2A10 003BF970 80 C5 03 40 */ lwz r6, 0x340(r5) -/* 803C2A14 003BF974 38 BF 00 01 */ addi r5, r31, 1 -/* 803C2A18 003BF978 80 8A 03 90 */ lwz r4, 0x390(r10) -/* 803C2A1C 003BF97C 38 0B 03 00 */ addi r0, r11, 0x300 -/* 803C2A20 003BF980 3B E0 00 63 */ li r31, 0x63 -/* 803C2A24 003BF984 7C 84 32 14 */ add r4, r4, r6 -/* 803C2A28 003BF988 7C 89 20 AE */ lbzx r4, r9, r4 -/* 803C2A2C 003BF98C 7C 87 01 AE */ stbx r4, r7, r0 -/* 803C2A30 003BF990 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2A34 003BF994 38 04 03 20 */ addi r0, r4, 0x320 -/* 803C2A38 003BF998 7C A7 01 AE */ stbx r5, r7, r0 -lbl_803C2A3C: -/* 803C2A3C 003BF99C 3B FF 00 01 */ addi r31, r31, 1 -lbl_803C2A40: -/* 803C2A40 003BF9A0 28 1F 00 05 */ cmplwi r31, 5 -/* 803C2A44 003BF9A4 41 80 FF A8 */ blt lbl_803C29EC -/* 803C2A48 003BF9A8 80 0D B1 50 */ lwz r0, lbl_805A9D10@sda21(r13) -/* 803C2A4C 003BF9AC 39 8C 00 01 */ addi r12, r12, 1 -/* 803C2A50 003BF9B0 38 A0 00 FF */ li r5, 0xff -/* 803C2A54 003BF9B4 7C 80 62 14 */ add r4, r0, r12 -/* 803C2A58 003BF9B8 38 04 03 00 */ addi r0, r4, 0x300 -/* 803C2A5C 003BF9BC 7C A8 01 AE */ stbx r5, r8, r0 -/* 803C2A60 003BF9C0 3B E0 00 00 */ li r31, 0 -/* 803C2A64 003BF9C4 38 E7 00 01 */ addi r7, r7, 1 -/* 803C2A68 003BF9C8 48 00 00 58 */ b lbl_803C2AC0 -lbl_803C2A6C: -/* 803C2A6C 003BF9CC 81 6D B1 50 */ lwz r11, lbl_805A9D10@sda21(r13) -/* 803C2A70 003BF9D0 20 9F 00 04 */ subfic r4, r31, 4 -/* 803C2A74 003BF9D4 57 E0 10 3A */ slwi r0, r31, 2 -/* 803C2A78 003BF9D8 7C A8 5A 14 */ add r5, r8, r11 -/* 803C2A7C 003BF9DC 7D 45 02 14 */ add r10, r5, r0 -/* 803C2A80 003BF9E0 80 0A 03 48 */ lwz r0, 0x348(r10) -/* 803C2A84 003BF9E4 7D 89 24 30 */ srw r9, r12, r4 -/* 803C2A88 003BF9E8 7C 09 00 00 */ cmpw r9, r0 -/* 803C2A8C 003BF9EC 41 81 00 30 */ bgt lbl_803C2ABC -/* 803C2A90 003BF9F0 80 C5 03 40 */ lwz r6, 0x340(r5) -/* 803C2A94 003BF9F4 38 BF 00 01 */ addi r5, r31, 1 -/* 803C2A98 003BF9F8 80 8A 03 90 */ lwz r4, 0x390(r10) -/* 803C2A9C 003BF9FC 38 0B 03 00 */ addi r0, r11, 0x300 -/* 803C2AA0 003BFA00 3B E0 00 63 */ li r31, 0x63 -/* 803C2AA4 003BFA04 7C 84 32 14 */ add r4, r4, r6 -/* 803C2AA8 003BFA08 7C 89 20 AE */ lbzx r4, r9, r4 -/* 803C2AAC 003BFA0C 7C 87 01 AE */ stbx r4, r7, r0 -/* 803C2AB0 003BFA10 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2AB4 003BFA14 38 04 03 20 */ addi r0, r4, 0x320 -/* 803C2AB8 003BFA18 7C A7 01 AE */ stbx r5, r7, r0 -lbl_803C2ABC: -/* 803C2ABC 003BFA1C 3B FF 00 01 */ addi r31, r31, 1 -lbl_803C2AC0: -/* 803C2AC0 003BFA20 28 1F 00 05 */ cmplwi r31, 5 -/* 803C2AC4 003BFA24 41 80 FF A8 */ blt lbl_803C2A6C -/* 803C2AC8 003BFA28 38 E7 00 01 */ addi r7, r7, 1 -/* 803C2ACC 003BFA2C 39 8C 00 01 */ addi r12, r12, 1 -/* 803C2AD0 003BFA30 42 00 FF 00 */ bdnz lbl_803C29D0 -lbl_803C2AD4: -/* 803C2AD4 003BFA34 38 63 00 01 */ addi r3, r3, 1 -/* 803C2AD8 003BFA38 28 03 00 04 */ cmplwi r3, 4 -/* 803C2ADC 003BFA3C 39 08 00 E0 */ addi r8, r8, 0xe0 -/* 803C2AE0 003BFA40 41 80 FE C8 */ blt lbl_803C29A8 -/* 803C2AE4 003BFA44 81 2D B1 50 */ lwz r9, lbl_805A9D10@sda21(r13) -/* 803C2AE8 003BFA48 88 89 06 82 */ lbz r4, 0x682(r9) -/* 803C2AEC 003BFA4C 88 09 06 88 */ lbz r0, 0x688(r9) -/* 803C2AF0 003BFA50 88 69 06 8E */ lbz r3, 0x68e(r9) -/* 803C2AF4 003BFA54 54 85 08 3C */ slwi r5, r4, 1 -/* 803C2AF8 003BFA58 88 E9 06 87 */ lbz r7, 0x687(r9) -/* 803C2AFC 003BFA5C 54 04 08 3C */ slwi r4, r0, 1 -/* 803C2B00 003BFA60 88 C9 06 8D */ lbz r6, 0x68d(r9) -/* 803C2B04 003BFA64 88 09 06 81 */ lbz r0, 0x681(r9) -/* 803C2B08 003BFA68 54 63 08 3C */ slwi r3, r3, 1 -/* 803C2B0C 003BFA6C 54 E7 08 3C */ slwi r7, r7, 1 -/* 803C2B10 003BFA70 54 C6 08 3C */ slwi r6, r6, 1 -/* 803C2B14 003BFA74 38 A5 00 01 */ addi r5, r5, 1 -/* 803C2B18 003BFA78 38 84 00 01 */ addi r4, r4, 1 -/* 803C2B1C 003BFA7C 38 63 00 01 */ addi r3, r3, 1 -/* 803C2B20 003BFA80 54 00 08 3C */ slwi r0, r0, 1 -/* 803C2B24 003BFA84 1D 00 00 E0 */ mulli r8, r0, 0xe0 -/* 803C2B28 003BFA88 1C E7 00 E0 */ mulli r7, r7, 0xe0 -/* 803C2B2C 003BFA8C 1C C6 00 E0 */ mulli r6, r6, 0xe0 -/* 803C2B30 003BFA90 1C A5 00 E0 */ mulli r5, r5, 0xe0 -/* 803C2B34 003BFA94 1C 84 00 E0 */ mulli r4, r4, 0xe0 -/* 803C2B38 003BFA98 1C 63 00 E0 */ mulli r3, r3, 0xe0 -/* 803C2B3C 003BFA9C 39 08 03 00 */ addi r8, r8, 0x300 -/* 803C2B40 003BFAA0 38 E7 03 00 */ addi r7, r7, 0x300 -/* 803C2B44 003BFAA4 38 C6 03 00 */ addi r6, r6, 0x300 -/* 803C2B48 003BFAA8 38 A5 03 00 */ addi r5, r5, 0x300 -/* 803C2B4C 003BFAAC 38 84 03 00 */ addi r4, r4, 0x300 -/* 803C2B50 003BFAB0 38 03 03 00 */ addi r0, r3, 0x300 -/* 803C2B54 003BFAB4 7D 09 42 14 */ add r8, r9, r8 -/* 803C2B58 003BFAB8 7C 69 3A 14 */ add r3, r9, r7 -/* 803C2B5C 003BFABC 91 0D B0 40 */ stw r8, lbl_805A9C00@sda21(r13) -/* 803C2B60 003BFAC0 7C C9 32 14 */ add r6, r9, r6 -/* 803C2B64 003BFAC4 7C A9 2A 14 */ add r5, r9, r5 -/* 803C2B68 003BFAC8 90 6D B0 60 */ stw r3, lbl_805A9C20@sda21(r13) -/* 803C2B6C 003BFACC 7C 69 22 14 */ add r3, r9, r4 -/* 803C2B70 003BFAD0 7C 09 02 14 */ add r0, r9, r0 -/* 803C2B74 003BFAD4 90 CD B0 80 */ stw r6, lbl_805A9C40@sda21(r13) -/* 803C2B78 003BFAD8 90 AD B0 A0 */ stw r5, lbl_805A9C60@sda21(r13) -/* 803C2B7C 003BFADC 90 6D B0 C0 */ stw r3, lbl_805A9C80@sda21(r13) -/* 803C2B80 003BFAE0 90 0D B0 E0 */ stw r0, lbl_805A9CA0@sda21(r13) -/* 803C2B84 003BFAE4 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 803C2B88 003BFAE8 38 21 00 18 */ addi r1, r1, 0x18 -/* 803C2B8C 003BFAEC 4E 80 00 20 */ blr - -.global __THPDecompressYUV -__THPDecompressYUV: -/* 803C2B90 003BFAF0 7C 08 02 A6 */ mflr r0 -/* 803C2B94 003BFAF4 90 01 00 04 */ stw r0, 4(r1) -/* 803C2B98 003BFAF8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C2B9C 003BFAFC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803C2BA0 003BFB00 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803C2BA4 003BFB04 80 CD B1 50 */ lwz r6, lbl_805A9D10@sda21(r13) -/* 803C2BA8 003BFB08 90 66 06 B0 */ stw r3, 0x6b0(r6) -/* 803C2BAC 003BFB0C 80 CD B1 50 */ lwz r6, lbl_805A9D10@sda21(r13) -/* 803C2BB0 003BFB10 90 86 06 B4 */ stw r4, 0x6b4(r6) -/* 803C2BB4 003BFB14 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2BB8 003BFB18 90 A4 06 B8 */ stw r5, 0x6b8(r4) -/* 803C2BBC 003BFB1C 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2BC0 003BFB20 A3 E4 06 98 */ lhz r31, 0x698(r4) -/* 803C2BC4 003BFB24 A3 C4 06 94 */ lhz r30, 0x694(r4) -/* 803C2BC8 003BFB28 7C 95 E2 A6 */ mfspr r4, 0x395 -/* 803C2BCC 003BFB2C 7C 16 E2 A6 */ mfspr r0, 0x396 -/* 803C2BD0 003BFB30 90 8D B1 44 */ stw r4, lbl_805A9D04@sda21(r13) -/* 803C2BD4 003BFB34 90 0D B1 48 */ stw r0, lbl_805A9D08@sda21(r13) -/* 803C2BD8 003BFB38 38 60 00 07 */ li r3, 7 -/* 803C2BDC 003BFB3C 64 63 00 07 */ oris r3, r3, 7 -/* 803C2BE0 003BFB40 7C 75 E3 A6 */ mtspr 0x395, r3 -/* 803C2BE4 003BFB44 38 60 3D 04 */ li r3, 0x3d04 -/* 803C2BE8 003BFB48 64 63 3D 04 */ oris r3, r3, 0x3d04 -/* 803C2BEC 003BFB4C 7C 76 E3 A6 */ mtspr 0x396, r3 -/* 803C2BF0 003BFB50 4B FF FD 55 */ bl __THPPrepBitStream -/* 803C2BF4 003BFB54 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2BF8 003BFB58 A0 04 06 92 */ lhz r0, 0x692(r4) -/* 803C2BFC 003BFB5C 28 00 02 00 */ cmplwi r0, 0x200 -/* 803C2C00 003BFB60 40 82 00 28 */ bne lbl_803C2C28 -/* 803C2C04 003BFB64 28 1E 01 C0 */ cmplwi r30, 0x1c0 -/* 803C2C08 003BFB68 40 82 00 20 */ bne lbl_803C2C28 -/* 803C2C0C 003BFB6C 48 00 00 0C */ b lbl_803C2C18 -lbl_803C2C10: -/* 803C2C10 003BFB70 48 00 00 8D */ bl __THPDecompressiMCURow512x448 -/* 803C2C14 003BFB74 3B FF 00 10 */ addi r31, r31, 0x10 -lbl_803C2C18: -/* 803C2C18 003BFB78 57 E0 04 3E */ clrlwi r0, r31, 0x10 -/* 803C2C1C 003BFB7C 7C 00 F0 40 */ cmplw r0, r30 -/* 803C2C20 003BFB80 41 80 FF F0 */ blt lbl_803C2C10 -/* 803C2C24 003BFB84 48 00 00 50 */ b lbl_803C2C74 -lbl_803C2C28: -/* 803C2C28 003BFB88 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2C2C 003BFB8C A0 04 06 92 */ lhz r0, 0x692(r4) -/* 803C2C30 003BFB90 28 00 02 80 */ cmplwi r0, 0x280 -/* 803C2C34 003BFB94 40 82 00 34 */ bne lbl_803C2C68 -/* 803C2C38 003BFB98 28 1E 01 E0 */ cmplwi r30, 0x1e0 -/* 803C2C3C 003BFB9C 40 82 00 2C */ bne lbl_803C2C68 -/* 803C2C40 003BFBA0 48 00 00 0C */ b lbl_803C2C4C -lbl_803C2C44: -/* 803C2C44 003BFBA4 48 00 1A E1 */ bl __THPDecompressiMCURow640x480 -/* 803C2C48 003BFBA8 3B FF 00 10 */ addi r31, r31, 0x10 -lbl_803C2C4C: -/* 803C2C4C 003BFBAC 57 E0 04 3E */ clrlwi r0, r31, 0x10 -/* 803C2C50 003BFBB0 7C 00 F0 40 */ cmplw r0, r30 -/* 803C2C54 003BFBB4 41 80 FF F0 */ blt lbl_803C2C44 -/* 803C2C58 003BFBB8 48 00 00 1C */ b lbl_803C2C74 -/* 803C2C5C 003BFBBC 48 00 00 0C */ b lbl_803C2C68 -lbl_803C2C60: -/* 803C2C60 003BFBC0 48 00 35 51 */ bl __THPDecompressiMCURowNxN -/* 803C2C64 003BFBC4 3B FF 00 10 */ addi r31, r31, 0x10 -lbl_803C2C68: -/* 803C2C68 003BFBC8 57 E0 04 3E */ clrlwi r0, r31, 0x10 -/* 803C2C6C 003BFBCC 7C 00 F0 40 */ cmplw r0, r30 -/* 803C2C70 003BFBD0 41 80 FF F0 */ blt lbl_803C2C60 -lbl_803C2C74: -/* 803C2C74 003BFBD4 80 8D B1 44 */ lwz r4, lbl_805A9D04@sda21(r13) -/* 803C2C78 003BFBD8 80 0D B1 48 */ lwz r0, lbl_805A9D08@sda21(r13) -/* 803C2C7C 003BFBDC 7C 95 E3 A6 */ mtspr 0x395, r4 -/* 803C2C80 003BFBE0 7C 16 E3 A6 */ mtspr 0x396, r0 -/* 803C2C84 003BFBE4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803C2C88 003BFBE8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803C2C8C 003BFBEC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 803C2C90 003BFBF0 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C2C94 003BFBF4 7C 08 03 A6 */ mtlr r0 -/* 803C2C98 003BFBF8 4E 80 00 20 */ blr - -.global __THPDecompressiMCURow512x448 -__THPDecompressiMCURow512x448: -/* 803C2C9C 003BFBFC 7C 08 02 A6 */ mflr r0 -/* 803C2CA0 003BFC00 3C 60 80 57 */ lis r3, lbl_80569F60@ha -/* 803C2CA4 003BFC04 90 01 00 04 */ stw r0, 4(r1) -/* 803C2CA8 003BFC08 94 21 FF C8 */ stwu r1, -0x38(r1) -/* 803C2CAC 003BFC0C DB E1 00 30 */ stfd f31, 0x30(r1) -/* 803C2CB0 003BFC10 DB C1 00 28 */ stfd f30, 0x28(r1) -/* 803C2CB4 003BFC14 DB A1 00 20 */ stfd f29, 0x20(r1) -/* 803C2CB8 003BFC18 DB 81 00 18 */ stfd f28, 0x18(r1) -/* 803C2CBC 003BFC1C DB 61 00 10 */ stfd f27, 0x10(r1) -/* 803C2CC0 003BFC20 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803C2CC4 003BFC24 3B E3 9F 60 */ addi r31, r3, lbl_80569F60@l -/* 803C2CC8 003BFC28 38 60 00 03 */ li r3, 3 -/* 803C2CCC 003BFC2C 93 C1 00 08 */ stw r30, 8(r1) -/* 803C2CD0 003BFC30 4B FB C1 F5 */ bl LCQueueWait -/* 803C2CD4 003BFC34 C3 62 D7 28 */ lfs f27, lbl_805AF448@sda21(r2) -/* 803C2CD8 003BFC38 3B C0 00 00 */ li r30, 0 -/* 803C2CDC 003BFC3C C3 82 D7 2C */ lfs f28, lbl_805AF44C@sda21(r2) -/* 803C2CE0 003BFC40 C3 A2 D7 30 */ lfs f29, lbl_805AF450@sda21(r2) -/* 803C2CE4 003BFC44 C3 C2 D7 34 */ lfs f30, lbl_805AF454@sda21(r2) -/* 803C2CE8 003BFC48 C3 E2 D7 38 */ lfs f31, lbl_805AF458@sda21(r2) -/* 803C2CEC 003BFC4C 48 00 19 90 */ b lbl_803C467C -lbl_803C2CF0: -/* 803C2CF0 003BFC50 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2CF4 003BFC54 80 9F 01 18 */ lwz r4, 0x118(r31) -/* 803C2CF8 003BFC58 48 00 4F 65 */ bl __THPHuffDecodeDCTCompY -/* 803C2CFC 003BFC5C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2D00 003BFC60 80 9F 01 1C */ lwz r4, 0x11c(r31) -/* 803C2D04 003BFC64 48 00 4F 59 */ bl __THPHuffDecodeDCTCompY -/* 803C2D08 003BFC68 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2D0C 003BFC6C 80 9F 01 20 */ lwz r4, 0x120(r31) -/* 803C2D10 003BFC70 48 00 4F 4D */ bl __THPHuffDecodeDCTCompY -/* 803C2D14 003BFC74 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2D18 003BFC78 80 9F 01 24 */ lwz r4, 0x124(r31) -/* 803C2D1C 003BFC7C 48 00 4F 41 */ bl __THPHuffDecodeDCTCompY -/* 803C2D20 003BFC80 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2D24 003BFC84 80 9F 01 28 */ lwz r4, 0x128(r31) -/* 803C2D28 003BFC88 48 00 55 B1 */ bl __THPHuffDecodeDCTCompU -/* 803C2D2C 003BFC8C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C2D30 003BFC90 80 9F 01 2C */ lwz r4, 0x12c(r31) -/* 803C2D34 003BFC94 48 00 5C 4D */ bl __THPHuffDecodeDCTCompV -/* 803C2D38 003BFC98 80 7F 01 00 */ lwz r3, 0x100(r31) -/* 803C2D3C 003BFC9C 38 00 02 00 */ li r0, 0x200 -/* 803C2D40 003BFCA0 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C2D44 003BFCA4 39 3F FF F8 */ addi r9, r31, -8 -/* 803C2D48 003BFCA8 90 6D B1 00 */ stw r3, lbl_805A9CC0@sda21(r13) -/* 803C2D4C 003BFCAC 57 C3 25 36 */ rlwinm r3, r30, 4, 0x14, 0x1b -/* 803C2D50 003BFCB0 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) -/* 803C2D54 003BFCB4 88 04 06 80 */ lbz r0, 0x680(r4) -/* 803C2D58 003BFCB8 54 00 40 2E */ slwi r0, r0, 8 -/* 803C2D5C 003BFCBC 7C 04 02 14 */ add r0, r4, r0 -/* 803C2D60 003BFCC0 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C2D64 003BFCC4 81 1F 01 18 */ lwz r8, 0x118(r31) -/* 803C2D68 003BFCC8 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C2D6C 003BFCCC 38 80 00 08 */ li r4, 8 -/* 803C2D70 003BFCD0 7C 89 03 A6 */ mtctr r4 -lbl_803C2D74: -/* 803C2D74 003BFCD4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C2D78 003BFCD8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C2D7C 003BFCDC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C2D80 003BFCE0 80 08 00 08 */ lwz r0, 8(r8) -/* 803C2D84 003BFCE4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C2D88 003BFCE8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C2D8C 003BFCEC A0 88 00 02 */ lhz r4, 2(r8) -/* 803C2D90 003BFCF0 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C2D94: -/* 803C2D94 003BFCF4 2C 06 00 00 */ cmpwi r6, 0 -/* 803C2D98 003BFCF8 40 82 01 48 */ bne lbl_803C2EE0 -/* 803C2D9C 003BFCFC 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C2DA0 003BFD00 2C 05 00 00 */ cmpwi r5, 0 -/* 803C2DA4 003BFD04 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C2DA8 003BFD08 40 82 00 9C */ bne lbl_803C2E44 -/* 803C2DAC 003BFD0C F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C2DB0 003BFD10 2C 04 00 00 */ cmpwi r4, 0 -/* 803C2DB4 003BFD14 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C2DB8 003BFD18 40 82 00 18 */ bne lbl_803C2DD0 -/* 803C2DBC 003BFD1C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C2DC0 003BFD20 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C2DC4 003BFD24 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C2DC8 003BFD28 42 00 FF AC */ bdnz lbl_803C2D74 -/* 803C2DCC 003BFD2C 48 00 01 DC */ b lbl_803C2FA8 -lbl_803C2DD0: -/* 803C2DD0 003BFD30 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C2DD4 003BFD34 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C2DD8 003BFD38 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C2DDC 003BFD3C 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C2DE0 003BFD40 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C2DE4 003BFD44 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C2DE8 003BFD48 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C2DEC 003BFD4C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C2DF0 003BFD50 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C2DF4 003BFD54 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C2DF8 003BFD58 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C2DFC 003BFD5C 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C2E00 003BFD60 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C2E04 003BFD64 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C2E08 003BFD68 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C2E0C 003BFD6C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C2E10 003BFD70 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C2E14 003BFD74 80 08 00 08 */ lwz r0, 8(r8) -/* 803C2E18 003BFD78 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C2E1C 003BFD7C F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C2E20 003BFD80 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C2E24 003BFD84 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C2E28 003BFD88 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C2E2C 003BFD8C 7C C6 03 78 */ or r6, r6, r0 -/* 803C2E30 003BFD90 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C2E34 003BFD94 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C2E38 003BFD98 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C2E3C 003BFD9C 42 00 FF 58 */ bdnz lbl_803C2D94 -/* 803C2E40 003BFDA0 48 00 01 68 */ b lbl_803C2FA8 -lbl_803C2E44: -/* 803C2E44 003BFDA4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C2E48 003BFDA8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C2E4C 003BFDAC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C2E50 003BFDB0 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C2E54 003BFDB4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C2E58 003BFDB8 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C2E5C 003BFDBC 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C2E60 003BFDC0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C2E64 003BFDC4 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C2E68 003BFDC8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C2E6C 003BFDCC 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C2E70 003BFDD0 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C2E74 003BFDD4 80 08 00 08 */ lwz r0, 8(r8) -/* 803C2E78 003BFDD8 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C2E7C 003BFDDC 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C2E80 003BFDE0 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C2E84 003BFDE4 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C2E88 003BFDE8 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C2E8C 003BFDEC A0 88 00 02 */ lhz r4, 2(r8) -/* 803C2E90 003BFDF0 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C2E94 003BFDF4 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C2E98 003BFDF8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C2E9C 003BFDFC 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C2EA0 003BFE00 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C2EA4 003BFE04 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C2EA8 003BFE08 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C2EAC 003BFE0C 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C2EB0 003BFE10 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C2EB4 003BFE14 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C2EB8 003BFE18 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C2EBC 003BFE1C 7C C6 03 78 */ or r6, r6, r0 -/* 803C2EC0 003BFE20 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C2EC4 003BFE24 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C2EC8 003BFE28 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C2ECC 003BFE2C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C2ED0 003BFE30 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C2ED4 003BFE34 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C2ED8 003BFE38 42 00 FE BC */ bdnz lbl_803C2D94 -/* 803C2EDC 003BFE3C 48 00 00 CC */ b lbl_803C2FA8 -lbl_803C2EE0: -/* 803C2EE0 003BFE40 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C2EE4 003BFE44 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C2EE8 003BFE48 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C2EEC 003BFE4C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C2EF0 003BFE50 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C2EF4 003BFE54 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C2EF8 003BFE58 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C2EFC 003BFE5C 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C2F00 003BFE60 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C2F04 003BFE64 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C2F08 003BFE68 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C2F0C 003BFE6C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C2F10 003BFE70 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C2F14 003BFE74 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C2F18 003BFE78 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C2F1C 003BFE7C 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C2F20 003BFE80 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C2F24 003BFE84 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C2F28 003BFE88 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C2F2C 003BFE8C 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C2F30 003BFE90 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C2F34 003BFE94 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C2F38 003BFE98 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C2F3C 003BFE9C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C2F40 003BFEA0 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C2F44 003BFEA4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C2F48 003BFEA8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C2F4C 003BFEAC 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C2F50 003BFEB0 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C2F54 003BFEB4 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C2F58 003BFEB8 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C2F5C 003BFEBC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C2F60 003BFEC0 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C2F64 003BFEC4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C2F68 003BFEC8 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C2F6C 003BFECC 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C2F70 003BFED0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C2F74 003BFED4 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C2F78 003BFED8 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C2F7C 003BFEDC 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C2F80 003BFEE0 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C2F84 003BFEE4 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C2F88 003BFEE8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C2F8C 003BFEEC F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C2F90 003BFEF0 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C2F94 003BFEF4 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C2F98 003BFEF8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C2F9C 003BFEFC 7C C6 03 78 */ or r6, r6, r0 -/* 803C2FA0 003BFF00 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C2FA4 003BFF04 42 00 FD F0 */ bdnz lbl_803C2D94 -lbl_803C2FA8: -/* 803C2FA8 003BFF08 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C2FAC 003BFF0C 7F E9 FB 78 */ mr r9, r31 -/* 803C2FB0 003BFF10 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C2FB4 003BFF14 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C2FB8 003BFF18 54 64 10 3A */ slwi r4, r3, 2 -/* 803C2FBC 003BFF1C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C2FC0 003BFF20 54 06 10 3A */ slwi r6, r0, 2 -/* 803C2FC4 003BFF24 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C2FC8 003BFF28 7C 87 23 78 */ mr r7, r4 -/* 803C2FCC 003BFF2C 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C2FD0 003BFF30 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C2FD4 003BFF34 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C2FD8 003BFF38 7C C7 32 14 */ add r6, r7, r6 -/* 803C2FDC 003BFF3C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C2FE0 003BFF40 38 00 00 03 */ li r0, 3 -/* 803C2FE4 003BFF44 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C2FE8 003BFF48 7C A8 3A 14 */ add r5, r8, r7 -/* 803C2FEC 003BFF4C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C2FF0 003BFF50 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C2FF4 003BFF54 7C 88 32 14 */ add r4, r8, r6 -/* 803C2FF8 003BFF58 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C2FFC 003BFF5C 7C 09 03 A6 */ mtctr r0 -lbl_803C3000: -/* 803C3000 003BFF60 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C3004 003BFF64 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C3008 003BFF68 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C300C 003BFF6C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C3010 003BFF70 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C3014 003BFF74 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C3018 003BFF78 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C301C 003BFF7C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C3020 003BFF80 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C3024 003BFF84 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3028 003BFF88 39 29 00 08 */ addi r9, r9, 8 -/* 803C302C 003BFF8C 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3030 003BFF90 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3034 003BFF94 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C3038 003BFF98 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C303C 003BFF9C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3040 003BFFA0 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3044 003BFFA4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C3048 003BFFA8 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C304C 003BFFAC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3050 003BFFB0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C3054 003BFFB4 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3058 003BFFB8 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C305C 003BFFBC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C3060 003BFFC0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C3064 003BFFC4 38 E7 00 02 */ addi r7, r7, 2 -/* 803C3068 003BFFC8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C306C 003BFFCC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3070 003BFFD0 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3074 003BFFD4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C3078 003BFFD8 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C307C 003BFFDC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3080 003BFFE0 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3084 003BFFE4 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C3088 003BFFE8 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C308C 003BFFEC 38 C6 00 02 */ addi r6, r6, 2 -/* 803C3090 003BFFF0 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C3094 003BFFF4 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C3098 003BFFF8 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C309C 003BFFFC 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C30A0 003C0000 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C30A4 003C0004 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C30A8 003C0008 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C30AC 003C000C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C30B0 003C0010 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C30B4 003C0014 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C30B8 003C0018 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C30BC 003C001C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C30C0 003C0020 7C A8 3A 14 */ add r5, r8, r7 -/* 803C30C4 003C0024 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C30C8 003C0028 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C30CC 003C002C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C30D0 003C0030 7C 88 32 14 */ add r4, r8, r6 -/* 803C30D4 003C0034 42 00 FF 2C */ bdnz lbl_803C3000 -/* 803C30D8 003C0038 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C30DC 003C003C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C30E0 003C0040 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C30E4 003C0044 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C30E8 003C0048 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C30EC 003C004C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C30F0 003C0050 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C30F4 003C0054 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C30F8 003C0058 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C30FC 003C005C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3100 003C0060 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3104 003C0064 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3108 003C0068 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C310C 003C006C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3110 003C0070 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3114 003C0074 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C3118 003C0078 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C311C 003C007C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3120 003C0080 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C3124 003C0084 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C3128 003C0088 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C312C 003C008C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3130 003C0090 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C3134 003C0094 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3138 003C0098 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C313C 003C009C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C3140 003C00A0 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3144 003C00A4 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3148 003C00A8 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C314C 003C00AC F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C3150 003C00B0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C3154 003C00B4 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C3158 003C00B8 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C315C 003C00BC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C3160 003C00C0 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C3164 003C00C4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C3168 003C00C8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C316C 003C00CC 81 1F 01 1C */ lwz r8, 0x11c(r31) -/* 803C3170 003C00D0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C3174 003C00D4 39 43 00 08 */ addi r10, r3, 8 -/* 803C3178 003C00D8 39 3F FF F8 */ addi r9, r31, -8 -/* 803C317C 003C00DC 38 80 00 08 */ li r4, 8 -/* 803C3180 003C00E0 7C 89 03 A6 */ mtctr r4 -lbl_803C3184: -/* 803C3184 003C00E4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3188 003C00E8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C318C 003C00EC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3190 003C00F0 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3194 003C00F4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3198 003C00F8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C319C 003C00FC A0 88 00 02 */ lhz r4, 2(r8) -/* 803C31A0 003C0100 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C31A4: -/* 803C31A4 003C0104 2C 06 00 00 */ cmpwi r6, 0 -/* 803C31A8 003C0108 40 82 01 48 */ bne lbl_803C32F0 -/* 803C31AC 003C010C 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C31B0 003C0110 2C 05 00 00 */ cmpwi r5, 0 -/* 803C31B4 003C0114 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C31B8 003C0118 40 82 00 9C */ bne lbl_803C3254 -/* 803C31BC 003C011C F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C31C0 003C0120 2C 04 00 00 */ cmpwi r4, 0 -/* 803C31C4 003C0124 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C31C8 003C0128 40 82 00 18 */ bne lbl_803C31E0 -/* 803C31CC 003C012C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C31D0 003C0130 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C31D4 003C0134 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C31D8 003C0138 42 00 FF AC */ bdnz lbl_803C3184 -/* 803C31DC 003C013C 48 00 01 DC */ b lbl_803C33B8 -lbl_803C31E0: -/* 803C31E0 003C0140 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C31E4 003C0144 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C31E8 003C0148 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C31EC 003C014C 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C31F0 003C0150 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C31F4 003C0154 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C31F8 003C0158 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C31FC 003C015C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3200 003C0160 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C3204 003C0164 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3208 003C0168 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C320C 003C016C 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C3210 003C0170 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3214 003C0174 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C3218 003C0178 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C321C 003C017C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3220 003C0180 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C3224 003C0184 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3228 003C0188 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C322C 003C018C F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C3230 003C0190 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C3234 003C0194 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C3238 003C0198 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C323C 003C019C 7C C6 03 78 */ or r6, r6, r0 -/* 803C3240 003C01A0 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C3244 003C01A4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3248 003C01A8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C324C 003C01AC 42 00 FF 58 */ bdnz lbl_803C31A4 -/* 803C3250 003C01B0 48 00 01 68 */ b lbl_803C33B8 -lbl_803C3254: -/* 803C3254 003C01B4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C3258 003C01B8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C325C 003C01BC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3260 003C01C0 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C3264 003C01C4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3268 003C01C8 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C326C 003C01CC 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C3270 003C01D0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3274 003C01D4 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C3278 003C01D8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C327C 003C01DC 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C3280 003C01E0 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C3284 003C01E4 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3288 003C01E8 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C328C 003C01EC 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C3290 003C01F0 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3294 003C01F4 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C3298 003C01F8 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C329C 003C01FC A0 88 00 02 */ lhz r4, 2(r8) -/* 803C32A0 003C0200 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C32A4 003C0204 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C32A8 003C0208 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C32AC 003C020C 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C32B0 003C0210 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C32B4 003C0214 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C32B8 003C0218 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C32BC 003C021C 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C32C0 003C0220 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C32C4 003C0224 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C32C8 003C0228 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C32CC 003C022C 7C C6 03 78 */ or r6, r6, r0 -/* 803C32D0 003C0230 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C32D4 003C0234 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C32D8 003C0238 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C32DC 003C023C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C32E0 003C0240 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C32E4 003C0244 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C32E8 003C0248 42 00 FE BC */ bdnz lbl_803C31A4 -/* 803C32EC 003C024C 48 00 00 CC */ b lbl_803C33B8 -lbl_803C32F0: -/* 803C32F0 003C0250 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C32F4 003C0254 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C32F8 003C0258 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C32FC 003C025C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C3300 003C0260 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C3304 003C0264 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C3308 003C0268 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C330C 003C026C 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C3310 003C0270 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C3314 003C0274 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3318 003C0278 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C331C 003C027C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C3320 003C0280 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C3324 003C0284 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C3328 003C0288 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C332C 003C028C 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C3330 003C0290 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C3334 003C0294 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C3338 003C0298 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C333C 003C029C 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C3340 003C02A0 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C3344 003C02A4 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C3348 003C02A8 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C334C 003C02AC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3350 003C02B0 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C3354 003C02B4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C3358 003C02B8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C335C 003C02BC 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3360 003C02C0 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C3364 003C02C4 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C3368 003C02C8 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C336C 003C02CC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C3370 003C02D0 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C3374 003C02D4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3378 003C02D8 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C337C 003C02DC 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C3380 003C02E0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3384 003C02E4 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C3388 003C02E8 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C338C 003C02EC 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3390 003C02F0 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C3394 003C02F4 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C3398 003C02F8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C339C 003C02FC F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C33A0 003C0300 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C33A4 003C0304 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C33A8 003C0308 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C33AC 003C030C 7C C6 03 78 */ or r6, r6, r0 -/* 803C33B0 003C0310 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C33B4 003C0314 42 00 FD F0 */ bdnz lbl_803C31A4 -lbl_803C33B8: -/* 803C33B8 003C0318 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C33BC 003C031C 7F E9 FB 78 */ mr r9, r31 -/* 803C33C0 003C0320 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C33C4 003C0324 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C33C8 003C0328 55 4A 10 3A */ slwi r10, r10, 2 -/* 803C33CC 003C032C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C33D0 003C0330 54 06 10 3A */ slwi r6, r0, 2 -/* 803C33D4 003C0334 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C33D8 003C0338 7D 47 53 78 */ mr r7, r10 -/* 803C33DC 003C033C 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C33E0 003C0340 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C33E4 003C0344 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C33E8 003C0348 7C C7 32 14 */ add r6, r7, r6 -/* 803C33EC 003C034C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C33F0 003C0350 38 00 00 03 */ li r0, 3 -/* 803C33F4 003C0354 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C33F8 003C0358 7C A8 3A 14 */ add r5, r8, r7 -/* 803C33FC 003C035C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C3400 003C0360 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C3404 003C0364 7C 88 32 14 */ add r4, r8, r6 -/* 803C3408 003C0368 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C340C 003C036C 7C 09 03 A6 */ mtctr r0 -lbl_803C3410: -/* 803C3410 003C0370 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C3414 003C0374 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C3418 003C0378 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C341C 003C037C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C3420 003C0380 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C3424 003C0384 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C3428 003C0388 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C342C 003C038C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C3430 003C0390 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C3434 003C0394 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3438 003C0398 39 29 00 08 */ addi r9, r9, 8 -/* 803C343C 003C039C 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3440 003C03A0 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3444 003C03A4 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C3448 003C03A8 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C344C 003C03AC 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3450 003C03B0 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3454 003C03B4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C3458 003C03B8 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C345C 003C03BC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3460 003C03C0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C3464 003C03C4 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3468 003C03C8 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C346C 003C03CC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C3470 003C03D0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C3474 003C03D4 38 E7 00 02 */ addi r7, r7, 2 -/* 803C3478 003C03D8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C347C 003C03DC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3480 003C03E0 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3484 003C03E4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C3488 003C03E8 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C348C 003C03EC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3490 003C03F0 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3494 003C03F4 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C3498 003C03F8 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C349C 003C03FC 38 C6 00 02 */ addi r6, r6, 2 -/* 803C34A0 003C0400 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C34A4 003C0404 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C34A8 003C0408 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C34AC 003C040C 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C34B0 003C0410 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C34B4 003C0414 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C34B8 003C0418 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C34BC 003C041C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C34C0 003C0420 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C34C4 003C0424 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C34C8 003C0428 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C34CC 003C042C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C34D0 003C0430 7C A8 3A 14 */ add r5, r8, r7 -/* 803C34D4 003C0434 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C34D8 003C0438 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C34DC 003C043C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C34E0 003C0440 7C 88 32 14 */ add r4, r8, r6 -/* 803C34E4 003C0444 42 00 FF 2C */ bdnz lbl_803C3410 -/* 803C34E8 003C0448 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C34EC 003C044C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C34F0 003C0450 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C34F4 003C0454 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C34F8 003C0458 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C34FC 003C045C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C3500 003C0460 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C3504 003C0464 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C3508 003C0468 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C350C 003C046C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3510 003C0470 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3514 003C0474 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3518 003C0478 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C351C 003C047C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3520 003C0480 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3524 003C0484 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C3528 003C0488 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C352C 003C048C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3530 003C0490 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C3534 003C0494 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C3538 003C0498 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C353C 003C049C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3540 003C04A0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C3544 003C04A4 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3548 003C04A8 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C354C 003C04AC 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C3550 003C04B0 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3554 003C04B4 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3558 003C04B8 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C355C 003C04BC F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C3560 003C04C0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C3564 003C04C4 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C3568 003C04C8 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C356C 003C04CC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C3570 003C04D0 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C3574 003C04D4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C3578 003C04D8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C357C 003C04DC 81 1F 01 20 */ lwz r8, 0x120(r31) -/* 803C3580 003C04E0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C3584 003C04E4 39 3F FF F8 */ addi r9, r31, -8 -/* 803C3588 003C04E8 38 80 00 08 */ li r4, 8 -/* 803C358C 003C04EC 7C 89 03 A6 */ mtctr r4 -lbl_803C3590: -/* 803C3590 003C04F0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3594 003C04F4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3598 003C04F8 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C359C 003C04FC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C35A0 003C0500 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C35A4 003C0504 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C35A8 003C0508 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C35AC 003C050C 7C C6 03 78 */ or r6, r6, r0 -lbl_803C35B0: -/* 803C35B0 003C0510 2C 06 00 00 */ cmpwi r6, 0 -/* 803C35B4 003C0514 40 82 01 48 */ bne lbl_803C36FC -/* 803C35B8 003C0518 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C35BC 003C051C 2C 05 00 00 */ cmpwi r5, 0 -/* 803C35C0 003C0520 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C35C4 003C0524 40 82 00 9C */ bne lbl_803C3660 -/* 803C35C8 003C0528 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C35CC 003C052C 2C 04 00 00 */ cmpwi r4, 0 -/* 803C35D0 003C0530 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C35D4 003C0534 40 82 00 18 */ bne lbl_803C35EC -/* 803C35D8 003C0538 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C35DC 003C053C F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C35E0 003C0540 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C35E4 003C0544 42 00 FF AC */ bdnz lbl_803C3590 -/* 803C35E8 003C0548 48 00 01 DC */ b lbl_803C37C4 -lbl_803C35EC: -/* 803C35EC 003C054C 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C35F0 003C0550 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C35F4 003C0554 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C35F8 003C0558 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C35FC 003C055C 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C3600 003C0560 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3604 003C0564 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C3608 003C0568 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C360C 003C056C 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C3610 003C0570 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3614 003C0574 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C3618 003C0578 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C361C 003C057C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3620 003C0580 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C3624 003C0584 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C3628 003C0588 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C362C 003C058C 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C3630 003C0590 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3634 003C0594 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C3638 003C0598 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C363C 003C059C 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C3640 003C05A0 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C3644 003C05A4 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C3648 003C05A8 7C C6 03 78 */ or r6, r6, r0 -/* 803C364C 003C05AC F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C3650 003C05B0 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3654 003C05B4 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C3658 003C05B8 42 00 FF 58 */ bdnz lbl_803C35B0 -/* 803C365C 003C05BC 48 00 01 68 */ b lbl_803C37C4 -lbl_803C3660: -/* 803C3660 003C05C0 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C3664 003C05C4 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C3668 003C05C8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C366C 003C05CC 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C3670 003C05D0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3674 003C05D4 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C3678 003C05D8 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C367C 003C05DC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3680 003C05E0 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C3684 003C05E4 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C3688 003C05E8 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C368C 003C05EC 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C3690 003C05F0 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3694 003C05F4 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C3698 003C05F8 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C369C 003C05FC 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C36A0 003C0600 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C36A4 003C0604 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C36A8 003C0608 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C36AC 003C060C 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C36B0 003C0610 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C36B4 003C0614 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C36B8 003C0618 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C36BC 003C061C 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C36C0 003C0620 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C36C4 003C0624 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C36C8 003C0628 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C36CC 003C062C F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C36D0 003C0630 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C36D4 003C0634 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C36D8 003C0638 7C C6 03 78 */ or r6, r6, r0 -/* 803C36DC 003C063C F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C36E0 003C0640 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C36E4 003C0644 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C36E8 003C0648 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C36EC 003C064C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C36F0 003C0650 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C36F4 003C0654 42 00 FE BC */ bdnz lbl_803C35B0 -/* 803C36F8 003C0658 48 00 00 CC */ b lbl_803C37C4 -lbl_803C36FC: -/* 803C36FC 003C065C E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C3700 003C0660 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C3704 003C0664 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C3708 003C0668 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C370C 003C066C E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C3710 003C0670 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C3714 003C0674 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C3718 003C0678 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C371C 003C067C E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C3720 003C0680 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3724 003C0684 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C3728 003C0688 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C372C 003C068C 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C3730 003C0690 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C3734 003C0694 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3738 003C0698 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C373C 003C069C 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C3740 003C06A0 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C3744 003C06A4 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3748 003C06A8 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C374C 003C06AC 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C3750 003C06B0 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C3754 003C06B4 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3758 003C06B8 80 08 00 08 */ lwz r0, 8(r8) -/* 803C375C 003C06BC 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C3760 003C06C0 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C3764 003C06C4 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C3768 003C06C8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C376C 003C06CC 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C3770 003C06D0 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C3774 003C06D4 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3778 003C06D8 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C377C 003C06DC 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C3780 003C06E0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3784 003C06E4 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C3788 003C06E8 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C378C 003C06EC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3790 003C06F0 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C3794 003C06F4 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C3798 003C06F8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C379C 003C06FC 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C37A0 003C0700 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C37A4 003C0704 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C37A8 003C0708 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C37AC 003C070C 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C37B0 003C0710 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C37B4 003C0714 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C37B8 003C0718 7C C6 03 78 */ or r6, r6, r0 -/* 803C37BC 003C071C F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C37C0 003C0720 42 00 FD F0 */ bdnz lbl_803C35B0 -lbl_803C37C4: -/* 803C37C4 003C0724 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C37C8 003C0728 7F E9 FB 78 */ mr r9, r31 -/* 803C37CC 003C072C 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C37D0 003C0730 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C37D4 003C0734 54 07 18 38 */ slwi r7, r0, 3 -/* 803C37D8 003C0738 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C37DC 003C073C 54 64 10 3A */ slwi r4, r3, 2 -/* 803C37E0 003C0740 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C37E4 003C0744 54 06 10 3A */ slwi r6, r0, 2 -/* 803C37E8 003C0748 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C37EC 003C074C 7C E7 22 14 */ add r7, r7, r4 -/* 803C37F0 003C0750 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C37F4 003C0754 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C37F8 003C0758 7C C7 32 14 */ add r6, r7, r6 -/* 803C37FC 003C075C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C3800 003C0760 38 00 00 03 */ li r0, 3 -/* 803C3804 003C0764 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C3808 003C0768 7C A8 3A 14 */ add r5, r8, r7 -/* 803C380C 003C076C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C3810 003C0770 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C3814 003C0774 7C 88 32 14 */ add r4, r8, r6 -/* 803C3818 003C0778 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C381C 003C077C 7C 09 03 A6 */ mtctr r0 -lbl_803C3820: -/* 803C3820 003C0780 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C3824 003C0784 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C3828 003C0788 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C382C 003C078C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C3830 003C0790 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C3834 003C0794 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C3838 003C0798 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C383C 003C079C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C3840 003C07A0 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C3844 003C07A4 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3848 003C07A8 39 29 00 08 */ addi r9, r9, 8 -/* 803C384C 003C07AC 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3850 003C07B0 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3854 003C07B4 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C3858 003C07B8 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C385C 003C07BC 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3860 003C07C0 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3864 003C07C4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C3868 003C07C8 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C386C 003C07CC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3870 003C07D0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C3874 003C07D4 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3878 003C07D8 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C387C 003C07DC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C3880 003C07E0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C3884 003C07E4 38 E7 00 02 */ addi r7, r7, 2 -/* 803C3888 003C07E8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C388C 003C07EC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3890 003C07F0 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3894 003C07F4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C3898 003C07F8 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C389C 003C07FC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C38A0 003C0800 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C38A4 003C0804 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C38A8 003C0808 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C38AC 003C080C 38 C6 00 02 */ addi r6, r6, 2 -/* 803C38B0 003C0810 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C38B4 003C0814 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C38B8 003C0818 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C38BC 003C081C 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C38C0 003C0820 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C38C4 003C0824 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C38C8 003C0828 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C38CC 003C082C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C38D0 003C0830 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C38D4 003C0834 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C38D8 003C0838 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C38DC 003C083C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C38E0 003C0840 7C A8 3A 14 */ add r5, r8, r7 -/* 803C38E4 003C0844 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C38E8 003C0848 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C38EC 003C084C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C38F0 003C0850 7C 88 32 14 */ add r4, r8, r6 -/* 803C38F4 003C0854 42 00 FF 2C */ bdnz lbl_803C3820 -/* 803C38F8 003C0858 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C38FC 003C085C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C3900 003C0860 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C3904 003C0864 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C3908 003C0868 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C390C 003C086C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C3910 003C0870 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C3914 003C0874 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C3918 003C0878 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C391C 003C087C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3920 003C0880 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3924 003C0884 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3928 003C0888 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C392C 003C088C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3930 003C0890 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3934 003C0894 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C3938 003C0898 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C393C 003C089C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3940 003C08A0 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C3944 003C08A4 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C3948 003C08A8 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C394C 003C08AC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3950 003C08B0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C3954 003C08B4 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3958 003C08B8 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C395C 003C08BC 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C3960 003C08C0 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3964 003C08C4 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3968 003C08C8 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C396C 003C08CC F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C3970 003C08D0 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C3974 003C08D4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C3978 003C08D8 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C397C 003C08DC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C3980 003C08E0 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C3984 003C08E4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C3988 003C08E8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C398C 003C08EC 81 1F 01 24 */ lwz r8, 0x124(r31) -/* 803C3990 003C08F0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C3994 003C08F4 39 23 00 08 */ addi r9, r3, 8 -/* 803C3998 003C08F8 39 5F FF F8 */ addi r10, r31, -8 -/* 803C399C 003C08FC 38 80 00 08 */ li r4, 8 -/* 803C39A0 003C0900 7C 89 03 A6 */ mtctr r4 -lbl_803C39A4: -/* 803C39A4 003C0904 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C39A8 003C0908 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C39AC 003C090C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C39B0 003C0910 80 08 00 08 */ lwz r0, 8(r8) -/* 803C39B4 003C0914 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C39B8 003C0918 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C39BC 003C091C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C39C0 003C0920 7C C6 03 78 */ or r6, r6, r0 -lbl_803C39C4: -/* 803C39C4 003C0924 2C 06 00 00 */ cmpwi r6, 0 -/* 803C39C8 003C0928 40 82 01 48 */ bne lbl_803C3B10 -/* 803C39CC 003C092C 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C39D0 003C0930 2C 05 00 00 */ cmpwi r5, 0 -/* 803C39D4 003C0934 F0 8A 00 08 */ psq_st f4, 8(r10), 0, qr0 -/* 803C39D8 003C0938 40 82 00 9C */ bne lbl_803C3A74 -/* 803C39DC 003C093C F0 8A 00 10 */ psq_st f4, 16(r10), 0, qr0 -/* 803C39E0 003C0940 2C 04 00 00 */ cmpwi r4, 0 -/* 803C39E4 003C0944 F0 8A 00 18 */ psq_st f4, 24(r10), 0, qr0 -/* 803C39E8 003C0948 40 82 00 18 */ bne lbl_803C3A00 -/* 803C39EC 003C094C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C39F0 003C0950 F4 8A 00 20 */ psq_stu f4, 32(r10), 0, qr0 -/* 803C39F4 003C0954 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C39F8 003C0958 42 00 FF AC */ bdnz lbl_803C39A4 -/* 803C39FC 003C095C 48 00 01 DC */ b lbl_803C3BD8 -lbl_803C3A00: -/* 803C3A00 003C0960 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C3A04 003C0964 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3A08 003C0968 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C3A0C 003C096C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3A10 003C0970 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C3A14 003C0974 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3A18 003C0978 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C3A1C 003C097C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3A20 003C0980 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C3A24 003C0984 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3A28 003C0988 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C3A2C 003C098C 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C3A30 003C0990 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3A34 003C0994 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C3A38 003C0998 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C3A3C 003C099C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3A40 003C09A0 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C3A44 003C09A4 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3A48 003C09A8 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C3A4C 003C09AC F5 0A 00 08 */ psq_stu f8, 8(r10), 0, qr0 -/* 803C3A50 003C09B0 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C3A54 003C09B4 F4 6A 00 08 */ psq_stu f3, 8(r10), 0, qr0 -/* 803C3A58 003C09B8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C3A5C 003C09BC 7C C6 03 78 */ or r6, r6, r0 -/* 803C3A60 003C09C0 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 -/* 803C3A64 003C09C4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3A68 003C09C8 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 -/* 803C3A6C 003C09CC 42 00 FF 58 */ bdnz lbl_803C39C4 -/* 803C3A70 003C09D0 48 00 01 68 */ b lbl_803C3BD8 -lbl_803C3A74: -/* 803C3A74 003C09D4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C3A78 003C09D8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C3A7C 003C09DC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3A80 003C09E0 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C3A84 003C09E4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3A88 003C09E8 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C3A8C 003C09EC 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C3A90 003C09F0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3A94 003C09F4 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C3A98 003C09F8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C3A9C 003C09FC 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C3AA0 003C0A00 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C3AA4 003C0A04 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3AA8 003C0A08 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C3AAC 003C0A0C 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C3AB0 003C0A10 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3AB4 003C0A14 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C3AB8 003C0A18 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C3ABC 003C0A1C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3AC0 003C0A20 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C3AC4 003C0A24 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C3AC8 003C0A28 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3ACC 003C0A2C 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C3AD0 003C0A30 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C3AD4 003C0A34 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3AD8 003C0A38 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C3ADC 003C0A3C 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C3AE0 003C0A40 F4 4A 00 08 */ psq_stu f2, 8(r10), 0, qr0 -/* 803C3AE4 003C0A44 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C3AE8 003C0A48 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C3AEC 003C0A4C 7C C6 03 78 */ or r6, r6, r0 -/* 803C3AF0 003C0A50 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 -/* 803C3AF4 003C0A54 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C3AF8 003C0A58 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C3AFC 003C0A5C F4 2A 00 08 */ psq_stu f1, 8(r10), 0, qr0 -/* 803C3B00 003C0A60 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3B04 003C0A64 F5 6A 00 08 */ psq_stu f11, 8(r10), 0, qr0 -/* 803C3B08 003C0A68 42 00 FE BC */ bdnz lbl_803C39C4 -/* 803C3B0C 003C0A6C 48 00 00 CC */ b lbl_803C3BD8 -lbl_803C3B10: -/* 803C3B10 003C0A70 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C3B14 003C0A74 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C3B18 003C0A78 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C3B1C 003C0A7C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C3B20 003C0A80 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C3B24 003C0A84 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C3B28 003C0A88 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C3B2C 003C0A8C 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C3B30 003C0A90 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C3B34 003C0A94 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3B38 003C0A98 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C3B3C 003C0A9C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C3B40 003C0AA0 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C3B44 003C0AA4 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C3B48 003C0AA8 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3B4C 003C0AAC 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C3B50 003C0AB0 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C3B54 003C0AB4 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C3B58 003C0AB8 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3B5C 003C0ABC 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C3B60 003C0AC0 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C3B64 003C0AC4 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C3B68 003C0AC8 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3B6C 003C0ACC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3B70 003C0AD0 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C3B74 003C0AD4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C3B78 003C0AD8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C3B7C 003C0ADC 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3B80 003C0AE0 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C3B84 003C0AE4 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C3B88 003C0AE8 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3B8C 003C0AEC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C3B90 003C0AF0 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C3B94 003C0AF4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3B98 003C0AF8 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C3B9C 003C0AFC 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C3BA0 003C0B00 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3BA4 003C0B04 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C3BA8 003C0B08 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C3BAC 003C0B0C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3BB0 003C0B10 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C3BB4 003C0B14 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C3BB8 003C0B18 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C3BBC 003C0B1C F5 8A 00 08 */ psq_stu f12, 8(r10), 0, qr0 -/* 803C3BC0 003C0B20 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C3BC4 003C0B24 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 -/* 803C3BC8 003C0B28 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 -/* 803C3BCC 003C0B2C 7C C6 03 78 */ or r6, r6, r0 -/* 803C3BD0 003C0B30 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 -/* 803C3BD4 003C0B34 42 00 FD F0 */ bdnz lbl_803C39C4 -lbl_803C3BD8: -/* 803C3BD8 003C0B38 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C3BDC 003C0B3C 7F EA FB 78 */ mr r10, r31 -/* 803C3BE0 003C0B40 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C3BE4 003C0B44 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 -/* 803C3BE8 003C0B48 54 07 18 38 */ slwi r7, r0, 3 -/* 803C3BEC 003C0B4C E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 -/* 803C3BF0 003C0B50 55 29 10 3A */ slwi r9, r9, 2 -/* 803C3BF4 003C0B54 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 -/* 803C3BF8 003C0B58 54 06 10 3A */ slwi r6, r0, 2 -/* 803C3BFC 003C0B5C 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C3C00 003C0B60 7C E7 4A 14 */ add r7, r7, r9 -/* 803C3C04 003C0B64 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 -/* 803C3C08 003C0B68 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C3C0C 003C0B6C 7C C7 32 14 */ add r6, r7, r6 -/* 803C3C10 003C0B70 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C3C14 003C0B74 38 00 00 03 */ li r0, 3 -/* 803C3C18 003C0B78 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C3C1C 003C0B7C 7C A8 3A 14 */ add r5, r8, r7 -/* 803C3C20 003C0B80 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C3C24 003C0B84 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C3C28 003C0B88 7C 88 32 14 */ add r4, r8, r6 -/* 803C3C2C 003C0B8C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C3C30 003C0B90 7C 09 03 A6 */ mtctr r0 -lbl_803C3C34: -/* 803C3C34 003C0B94 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 -/* 803C3C38 003C0B98 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C3C3C 003C0B9C E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 -/* 803C3C40 003C0BA0 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C3C44 003C0BA4 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C3C48 003C0BA8 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 -/* 803C3C4C 003C0BAC 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C3C50 003C0BB0 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 -/* 803C3C54 003C0BB4 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C3C58 003C0BB8 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3C5C 003C0BBC 39 4A 00 08 */ addi r10, r10, 8 -/* 803C3C60 003C0BC0 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3C64 003C0BC4 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3C68 003C0BC8 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 -/* 803C3C6C 003C0BCC 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C3C70 003C0BD0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3C74 003C0BD4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3C78 003C0BD8 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 -/* 803C3C7C 003C0BDC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C3C80 003C0BE0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3C84 003C0BE4 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 -/* 803C3C88 003C0BE8 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3C8C 003C0BEC 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C3C90 003C0BF0 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 -/* 803C3C94 003C0BF4 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C3C98 003C0BF8 38 E7 00 02 */ addi r7, r7, 2 -/* 803C3C9C 003C0BFC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C3CA0 003C0C00 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3CA4 003C0C04 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3CA8 003C0C08 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C3CAC 003C0C0C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C3CB0 003C0C10 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3CB4 003C0C14 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3CB8 003C0C18 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C3CBC 003C0C1C F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C3CC0 003C0C20 38 C6 00 02 */ addi r6, r6, 2 -/* 803C3CC4 003C0C24 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C3CC8 003C0C28 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C3CCC 003C0C2C F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C3CD0 003C0C30 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C3CD4 003C0C34 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C3CD8 003C0C38 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C3CDC 003C0C3C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C3CE0 003C0C40 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C3CE4 003C0C44 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C3CE8 003C0C48 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C3CEC 003C0C4C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C3CF0 003C0C50 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C3CF4 003C0C54 7C A8 3A 14 */ add r5, r8, r7 -/* 803C3CF8 003C0C58 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C3CFC 003C0C5C F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C3D00 003C0C60 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C3D04 003C0C64 7C 88 32 14 */ add r4, r8, r6 -/* 803C3D08 003C0C68 42 00 FF 2C */ bdnz lbl_803C3C34 -/* 803C3D0C 003C0C6C E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 -/* 803C3D10 003C0C70 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C3D14 003C0C74 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 -/* 803C3D18 003C0C78 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C3D1C 003C0C7C 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C3D20 003C0C80 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 -/* 803C3D24 003C0C84 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C3D28 003C0C88 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 -/* 803C3D2C 003C0C8C 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C3D30 003C0C90 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C3D34 003C0C94 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C3D38 003C0C98 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C3D3C 003C0C9C 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C3D40 003C0CA0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C3D44 003C0CA4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C3D48 003C0CA8 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C3D4C 003C0CAC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3D50 003C0CB0 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C3D54 003C0CB4 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C3D58 003C0CB8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C3D5C 003C0CBC 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C3D60 003C0CC0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C3D64 003C0CC4 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C3D68 003C0CC8 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C3D6C 003C0CCC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C3D70 003C0CD0 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C3D74 003C0CD4 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C3D78 003C0CD8 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C3D7C 003C0CDC 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C3D80 003C0CE0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C3D84 003C0CE4 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C3D88 003C0CE8 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C3D8C 003C0CEC 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C3D90 003C0CF0 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C3D94 003C0CF4 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C3D98 003C0CF8 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C3D9C 003C0CFC F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C3DA0 003C0D00 80 9F 01 04 */ lwz r4, 0x104(r31) -/* 803C3DA4 003C0D04 38 00 01 00 */ li r0, 0x100 -/* 803C3DA8 003C0D08 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C3DAC 003C0D0C 90 8D B1 00 */ stw r4, lbl_805A9CC0@sda21(r13) -/* 803C3DB0 003C0D10 54 63 F8 7E */ srwi r3, r3, 1 -/* 803C3DB4 003C0D14 39 3F FF F8 */ addi r9, r31, -8 -/* 803C3DB8 003C0D18 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) -/* 803C3DBC 003C0D1C 88 05 06 86 */ lbz r0, 0x686(r5) -/* 803C3DC0 003C0D20 54 00 40 2E */ slwi r0, r0, 8 -/* 803C3DC4 003C0D24 7C 05 02 14 */ add r0, r5, r0 -/* 803C3DC8 003C0D28 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C3DCC 003C0D2C 81 1F 01 28 */ lwz r8, 0x128(r31) -/* 803C3DD0 003C0D30 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C3DD4 003C0D34 38 80 00 08 */ li r4, 8 -/* 803C3DD8 003C0D38 7C 89 03 A6 */ mtctr r4 -lbl_803C3DDC: -/* 803C3DDC 003C0D3C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3DE0 003C0D40 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3DE4 003C0D44 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3DE8 003C0D48 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3DEC 003C0D4C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3DF0 003C0D50 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3DF4 003C0D54 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3DF8 003C0D58 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C3DFC: -/* 803C3DFC 003C0D5C 2C 06 00 00 */ cmpwi r6, 0 -/* 803C3E00 003C0D60 40 82 01 48 */ bne lbl_803C3F48 -/* 803C3E04 003C0D64 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C3E08 003C0D68 2C 05 00 00 */ cmpwi r5, 0 -/* 803C3E0C 003C0D6C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C3E10 003C0D70 40 82 00 9C */ bne lbl_803C3EAC -/* 803C3E14 003C0D74 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C3E18 003C0D78 2C 04 00 00 */ cmpwi r4, 0 -/* 803C3E1C 003C0D7C F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C3E20 003C0D80 40 82 00 18 */ bne lbl_803C3E38 -/* 803C3E24 003C0D84 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3E28 003C0D88 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C3E2C 003C0D8C 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3E30 003C0D90 42 00 FF AC */ bdnz lbl_803C3DDC -/* 803C3E34 003C0D94 48 00 01 DC */ b lbl_803C4010 -lbl_803C3E38: -/* 803C3E38 003C0D98 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3E3C 003C0D9C 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C3E40 003C0DA0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3E44 003C0DA4 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C3E48 003C0DA8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3E4C 003C0DAC 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C3E50 003C0DB0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C3E54 003C0DB4 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3E58 003C0DB8 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C3E5C 003C0DBC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3E60 003C0DC0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C3E64 003C0DC4 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C3E68 003C0DC8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3E6C 003C0DCC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C3E70 003C0DD0 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C3E74 003C0DD4 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3E78 003C0DD8 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C3E7C 003C0DDC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3E80 003C0DE0 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C3E84 003C0DE4 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C3E88 003C0DE8 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C3E8C 003C0DEC F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C3E90 003C0DF0 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C3E94 003C0DF4 7C C6 03 78 */ or r6, r6, r0 -/* 803C3E98 003C0DF8 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C3E9C 003C0DFC 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3EA0 003C0E00 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C3EA4 003C0E04 42 00 FF 58 */ bdnz lbl_803C3DFC -/* 803C3EA8 003C0E08 48 00 01 68 */ b lbl_803C4010 -lbl_803C3EAC: -/* 803C3EAC 003C0E0C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C3EB0 003C0E10 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C3EB4 003C0E14 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3EB8 003C0E18 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C3EBC 003C0E1C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3EC0 003C0E20 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C3EC4 003C0E24 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C3EC8 003C0E28 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3ECC 003C0E2C 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C3ED0 003C0E30 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C3ED4 003C0E34 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C3ED8 003C0E38 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C3EDC 003C0E3C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3EE0 003C0E40 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C3EE4 003C0E44 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C3EE8 003C0E48 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3EEC 003C0E4C 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C3EF0 003C0E50 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C3EF4 003C0E54 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3EF8 003C0E58 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C3EFC 003C0E5C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C3F00 003C0E60 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3F04 003C0E64 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C3F08 003C0E68 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C3F0C 003C0E6C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3F10 003C0E70 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C3F14 003C0E74 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C3F18 003C0E78 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C3F1C 003C0E7C 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C3F20 003C0E80 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C3F24 003C0E84 7C C6 03 78 */ or r6, r6, r0 -/* 803C3F28 003C0E88 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C3F2C 003C0E8C 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C3F30 003C0E90 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C3F34 003C0E94 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C3F38 003C0E98 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3F3C 003C0E9C F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C3F40 003C0EA0 42 00 FE BC */ bdnz lbl_803C3DFC -/* 803C3F44 003C0EA4 48 00 00 CC */ b lbl_803C4010 -lbl_803C3F48: -/* 803C3F48 003C0EA8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C3F4C 003C0EAC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C3F50 003C0EB0 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C3F54 003C0EB4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C3F58 003C0EB8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C3F5C 003C0EBC 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C3F60 003C0EC0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C3F64 003C0EC4 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C3F68 003C0EC8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C3F6C 003C0ECC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C3F70 003C0ED0 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C3F74 003C0ED4 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C3F78 003C0ED8 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C3F7C 003C0EDC 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C3F80 003C0EE0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C3F84 003C0EE4 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C3F88 003C0EE8 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C3F8C 003C0EEC 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C3F90 003C0EF0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C3F94 003C0EF4 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C3F98 003C0EF8 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C3F9C 003C0EFC 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C3FA0 003C0F00 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C3FA4 003C0F04 80 08 00 08 */ lwz r0, 8(r8) -/* 803C3FA8 003C0F08 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C3FAC 003C0F0C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C3FB0 003C0F10 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C3FB4 003C0F14 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C3FB8 003C0F18 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C3FBC 003C0F1C 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C3FC0 003C0F20 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C3FC4 003C0F24 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C3FC8 003C0F28 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C3FCC 003C0F2C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C3FD0 003C0F30 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C3FD4 003C0F34 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C3FD8 003C0F38 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C3FDC 003C0F3C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C3FE0 003C0F40 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C3FE4 003C0F44 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C3FE8 003C0F48 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C3FEC 003C0F4C 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C3FF0 003C0F50 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C3FF4 003C0F54 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C3FF8 003C0F58 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C3FFC 003C0F5C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C4000 003C0F60 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C4004 003C0F64 7C C6 03 78 */ or r6, r6, r0 -/* 803C4008 003C0F68 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C400C 003C0F6C 42 00 FD F0 */ bdnz lbl_803C3DFC -lbl_803C4010: -/* 803C4010 003C0F70 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C4014 003C0F74 7F E9 FB 78 */ mr r9, r31 -/* 803C4018 003C0F78 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C401C 003C0F7C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C4020 003C0F80 54 64 10 3A */ slwi r4, r3, 2 -/* 803C4024 003C0F84 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C4028 003C0F88 54 06 10 3A */ slwi r6, r0, 2 -/* 803C402C 003C0F8C E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C4030 003C0F90 7C 87 23 78 */ mr r7, r4 -/* 803C4034 003C0F94 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4038 003C0F98 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C403C 003C0F9C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4040 003C0FA0 7C C7 32 14 */ add r6, r7, r6 -/* 803C4044 003C0FA4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4048 003C0FA8 38 00 00 03 */ li r0, 3 -/* 803C404C 003C0FAC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4050 003C0FB0 7C A8 3A 14 */ add r5, r8, r7 -/* 803C4054 003C0FB4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4058 003C0FB8 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C405C 003C0FBC 7C 88 32 14 */ add r4, r8, r6 -/* 803C4060 003C0FC0 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4064 003C0FC4 7C 09 03 A6 */ mtctr r0 -lbl_803C4068: -/* 803C4068 003C0FC8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C406C 003C0FCC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4070 003C0FD0 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C4074 003C0FD4 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4078 003C0FD8 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C407C 003C0FDC E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C4080 003C0FE0 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C4084 003C0FE4 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C4088 003C0FE8 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C408C 003C0FEC 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4090 003C0FF0 39 29 00 08 */ addi r9, r9, 8 -/* 803C4094 003C0FF4 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C4098 003C0FF8 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C409C 003C0FFC E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C40A0 003C1000 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C40A4 003C1004 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C40A8 003C1008 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C40AC 003C100C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C40B0 003C1010 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C40B4 003C1014 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C40B8 003C1018 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C40BC 003C101C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C40C0 003C1020 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C40C4 003C1024 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C40C8 003C1028 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C40CC 003C102C 38 E7 00 02 */ addi r7, r7, 2 -/* 803C40D0 003C1030 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C40D4 003C1034 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C40D8 003C1038 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C40DC 003C103C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C40E0 003C1040 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C40E4 003C1044 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C40E8 003C1048 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C40EC 003C104C 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C40F0 003C1050 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C40F4 003C1054 38 C6 00 02 */ addi r6, r6, 2 -/* 803C40F8 003C1058 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C40FC 003C105C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C4100 003C1060 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C4104 003C1064 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C4108 003C1068 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C410C 003C106C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C4110 003C1070 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4114 003C1074 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4118 003C1078 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C411C 003C107C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4120 003C1080 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4124 003C1084 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C4128 003C1088 7C A8 3A 14 */ add r5, r8, r7 -/* 803C412C 003C108C 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4130 003C1090 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C4134 003C1094 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4138 003C1098 7C 88 32 14 */ add r4, r8, r6 -/* 803C413C 003C109C 42 00 FF 2C */ bdnz lbl_803C4068 -/* 803C4140 003C10A0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C4144 003C10A4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4148 003C10A8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C414C 003C10AC 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4150 003C10B0 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C4154 003C10B4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C4158 003C10B8 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C415C 003C10BC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C4160 003C10C0 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C4164 003C10C4 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4168 003C10C8 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C416C 003C10CC 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C4170 003C10D0 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C4174 003C10D4 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C4178 003C10D8 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C417C 003C10DC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C4180 003C10E0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C4184 003C10E4 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C4188 003C10E8 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C418C 003C10EC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C4190 003C10F0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C4194 003C10F4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C4198 003C10F8 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C419C 003C10FC 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C41A0 003C1100 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C41A4 003C1104 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C41A8 003C1108 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C41AC 003C110C 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C41B0 003C1110 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C41B4 003C1114 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C41B8 003C1118 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C41BC 003C111C 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C41C0 003C1120 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C41C4 003C1124 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C41C8 003C1128 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C41CC 003C112C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C41D0 003C1130 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C41D4 003C1134 80 1F 01 08 */ lwz r0, 0x108(r31) -/* 803C41D8 003C1138 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C41DC 003C113C 39 1F FF F8 */ addi r8, r31, -8 -/* 803C41E0 003C1140 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) -/* 803C41E4 003C1144 88 04 06 8C */ lbz r0, 0x68c(r4) -/* 803C41E8 003C1148 54 00 40 2E */ slwi r0, r0, 8 -/* 803C41EC 003C114C 7C 04 02 14 */ add r0, r4, r0 -/* 803C41F0 003C1150 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C41F4 003C1154 81 3F 01 2C */ lwz r9, 0x12c(r31) -/* 803C41F8 003C1158 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C41FC 003C115C 38 80 00 08 */ li r4, 8 -/* 803C4200 003C1160 7C 89 03 A6 */ mtctr r4 -lbl_803C4204: -/* 803C4204 003C1164 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C4208 003C1168 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C420C 003C116C 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C4210 003C1170 80 09 00 08 */ lwz r0, 8(r9) -/* 803C4214 003C1174 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4218 003C1178 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C421C 003C117C A0 89 00 02 */ lhz r4, 2(r9) -/* 803C4220 003C1180 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C4224: -/* 803C4224 003C1184 2C 06 00 00 */ cmpwi r6, 0 -/* 803C4228 003C1188 40 82 01 48 */ bne lbl_803C4370 -/* 803C422C 003C118C 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C4230 003C1190 2C 05 00 00 */ cmpwi r5, 0 -/* 803C4234 003C1194 F0 88 00 08 */ psq_st f4, 8(r8), 0, qr0 -/* 803C4238 003C1198 40 82 00 9C */ bne lbl_803C42D4 -/* 803C423C 003C119C F0 88 00 10 */ psq_st f4, 16(r8), 0, qr0 -/* 803C4240 003C11A0 2C 04 00 00 */ cmpwi r4, 0 -/* 803C4244 003C11A4 F0 88 00 18 */ psq_st f4, 24(r8), 0, qr0 -/* 803C4248 003C11A8 40 82 00 18 */ bne lbl_803C4260 -/* 803C424C 003C11AC 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4250 003C11B0 F4 88 00 20 */ psq_stu f4, 32(r8), 0, qr0 -/* 803C4254 003C11B4 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C4258 003C11B8 42 00 FF AC */ bdnz lbl_803C4204 -/* 803C425C 003C11BC 48 00 01 DC */ b lbl_803C4438 -lbl_803C4260: -/* 803C4260 003C11C0 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C4264 003C11C4 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C4268 003C11C8 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C426C 003C11CC 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C4270 003C11D0 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C4274 003C11D4 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C4278 003C11D8 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C427C 003C11DC A0 89 00 02 */ lhz r4, 2(r9) -/* 803C4280 003C11E0 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C4284 003C11E4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4288 003C11E8 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C428C 003C11EC 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C4290 003C11F0 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C4294 003C11F4 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C4298 003C11F8 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C429C 003C11FC 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C42A0 003C1200 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C42A4 003C1204 80 09 00 08 */ lwz r0, 8(r9) -/* 803C42A8 003C1208 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C42AC 003C120C F5 08 00 08 */ psq_stu f8, 8(r8), 0, qr0 -/* 803C42B0 003C1210 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C42B4 003C1214 F4 68 00 08 */ psq_stu f3, 8(r8), 0, qr0 -/* 803C42B8 003C1218 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C42BC 003C121C 7C C6 03 78 */ or r6, r6, r0 -/* 803C42C0 003C1220 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 -/* 803C42C4 003C1224 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C42C8 003C1228 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 -/* 803C42CC 003C122C 42 00 FF 58 */ bdnz lbl_803C4224 -/* 803C42D0 003C1230 48 00 01 68 */ b lbl_803C4438 -lbl_803C42D4: -/* 803C42D4 003C1234 E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 -/* 803C42D8 003C1238 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C42DC 003C123C 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C42E0 003C1240 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C42E4 003C1244 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C42E8 003C1248 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C42EC 003C124C 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C42F0 003C1250 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C42F4 003C1254 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C42F8 003C1258 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C42FC 003C125C 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C4300 003C1260 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C4304 003C1264 80 09 00 08 */ lwz r0, 8(r9) -/* 803C4308 003C1268 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C430C 003C126C 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C4310 003C1270 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C4314 003C1274 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C4318 003C1278 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C431C 003C127C A0 89 00 02 */ lhz r4, 2(r9) -/* 803C4320 003C1280 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C4324 003C1284 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C4328 003C1288 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C432C 003C128C 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C4330 003C1290 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C4334 003C1294 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4338 003C1298 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C433C 003C129C 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C4340 003C12A0 F4 48 00 08 */ psq_stu f2, 8(r8), 0, qr0 -/* 803C4344 003C12A4 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C4348 003C12A8 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C434C 003C12AC 7C C6 03 78 */ or r6, r6, r0 -/* 803C4350 003C12B0 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 -/* 803C4354 003C12B4 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C4358 003C12B8 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C435C 003C12BC F4 28 00 08 */ psq_stu f1, 8(r8), 0, qr0 -/* 803C4360 003C12C0 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4364 003C12C4 F5 68 00 08 */ psq_stu f11, 8(r8), 0, qr0 -/* 803C4368 003C12C8 42 00 FE BC */ bdnz lbl_803C4224 -/* 803C436C 003C12CC 48 00 00 CC */ b lbl_803C4438 -lbl_803C4370: -/* 803C4370 003C12D0 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 -/* 803C4374 003C12D4 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C4378 003C12D8 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C437C 003C12DC E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 -/* 803C4380 003C12E0 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C4384 003C12E4 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C4388 003C12E8 E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 -/* 803C438C 003C12EC 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C4390 003C12F0 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C4394 003C12F4 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C4398 003C12F8 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C439C 003C12FC 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C43A0 003C1300 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C43A4 003C1304 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C43A8 003C1308 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C43AC 003C130C 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C43B0 003C1310 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C43B4 003C1314 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C43B8 003C1318 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C43BC 003C131C 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C43C0 003C1320 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C43C4 003C1324 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C43C8 003C1328 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C43CC 003C132C 80 09 00 08 */ lwz r0, 8(r9) -/* 803C43D0 003C1330 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C43D4 003C1334 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C43D8 003C1338 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C43DC 003C133C 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C43E0 003C1340 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C43E4 003C1344 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C43E8 003C1348 A0 89 00 02 */ lhz r4, 2(r9) -/* 803C43EC 003C134C 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C43F0 003C1350 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C43F4 003C1354 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C43F8 003C1358 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C43FC 003C135C 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C4400 003C1360 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4404 003C1364 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C4408 003C1368 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C440C 003C136C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4410 003C1370 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C4414 003C1374 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C4418 003C1378 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C441C 003C137C F5 88 00 08 */ psq_stu f12, 8(r8), 0, qr0 -/* 803C4420 003C1380 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C4424 003C1384 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 -/* 803C4428 003C1388 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 -/* 803C442C 003C138C 7C C6 03 78 */ or r6, r6, r0 -/* 803C4430 003C1390 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 -/* 803C4434 003C1394 42 00 FD F0 */ bdnz lbl_803C4224 -lbl_803C4438: -/* 803C4438 003C1398 80 ED B1 00 */ lwz r7, lbl_805A9CC0@sda21(r13) -/* 803C443C 003C139C 7F E8 FB 78 */ mr r8, r31 -/* 803C4440 003C13A0 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C4444 003C13A4 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 -/* 803C4448 003C13A8 54 63 10 3A */ slwi r3, r3, 2 -/* 803C444C 003C13AC E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 -/* 803C4450 003C13B0 54 05 10 3A */ slwi r5, r0, 2 -/* 803C4454 003C13B4 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 -/* 803C4458 003C13B8 7C 66 1B 78 */ mr r6, r3 -/* 803C445C 003C13BC 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4460 003C13C0 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 -/* 803C4464 003C13C4 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4468 003C13C8 7C A6 2A 14 */ add r5, r6, r5 -/* 803C446C 003C13CC 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4470 003C13D0 38 00 00 03 */ li r0, 3 -/* 803C4474 003C13D4 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4478 003C13D8 7C 87 32 14 */ add r4, r7, r6 -/* 803C447C 003C13DC 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4480 003C13E0 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4484 003C13E4 7C 67 2A 14 */ add r3, r7, r5 -/* 803C4488 003C13E8 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C448C 003C13EC 7C 09 03 A6 */ mtctr r0 -lbl_803C4490: -/* 803C4490 003C13F0 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 -/* 803C4494 003C13F4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4498 003C13F8 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 -/* 803C449C 003C13FC 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C44A0 003C1400 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C44A4 003C1404 E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 -/* 803C44A8 003C1408 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C44AC 003C140C E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 -/* 803C44B0 003C1410 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C44B4 003C1414 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C44B8 003C1418 39 08 00 08 */ addi r8, r8, 8 -/* 803C44BC 003C141C 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C44C0 003C1420 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C44C4 003C1424 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 -/* 803C44C8 003C1428 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C44CC 003C142C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C44D0 003C1430 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C44D4 003C1434 E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 -/* 803C44D8 003C1438 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C44DC 003C143C 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C44E0 003C1440 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 -/* 803C44E4 003C1444 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C44E8 003C1448 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C44EC 003C144C E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 -/* 803C44F0 003C1450 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C44F4 003C1454 38 C6 00 02 */ addi r6, r6, 2 -/* 803C44F8 003C1458 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 -/* 803C44FC 003C145C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C4500 003C1460 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C4504 003C1464 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C4508 003C1468 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C450C 003C146C F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C4510 003C1470 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C4514 003C1474 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C4518 003C1478 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 -/* 803C451C 003C147C 38 A5 00 02 */ addi r5, r5, 2 -/* 803C4520 003C1480 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C4524 003C1484 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C4528 003C1488 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 -/* 803C452C 003C148C 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C4530 003C1490 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4534 003C1494 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C4538 003C1498 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C453C 003C149C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4540 003C14A0 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C4544 003C14A4 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4548 003C14A8 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C454C 003C14AC F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C4550 003C14B0 7C 87 32 14 */ add r4, r7, r6 -/* 803C4554 003C14B4 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4558 003C14B8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C455C 003C14BC 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4560 003C14C0 7C 67 2A 14 */ add r3, r7, r5 -/* 803C4564 003C14C4 42 00 FF 2C */ bdnz lbl_803C4490 -/* 803C4568 003C14C8 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 -/* 803C456C 003C14CC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4570 003C14D0 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 -/* 803C4574 003C14D4 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4578 003C14D8 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C457C 003C14DC E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 -/* 803C4580 003C14E0 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C4584 003C14E4 E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 -/* 803C4588 003C14E8 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C458C 003C14EC 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4590 003C14F0 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C4594 003C14F4 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C4598 003C14F8 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C459C 003C14FC 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C45A0 003C1500 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C45A4 003C1504 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C45A8 003C1508 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C45AC 003C150C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C45B0 003C1510 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C45B4 003C1514 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 -/* 803C45B8 003C1518 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C45BC 003C151C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C45C0 003C1520 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C45C4 003C1524 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C45C8 003C1528 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C45CC 003C152C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C45D0 003C1530 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C45D4 003C1534 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C45D8 003C1538 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C45DC 003C153C F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C45E0 003C1540 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 -/* 803C45E4 003C1544 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C45E8 003C1548 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C45EC 003C154C F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 -/* 803C45F0 003C1550 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C45F4 003C1554 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C45F8 003C1558 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C45FC 003C155C 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C4600 003C1560 88 04 06 A9 */ lbz r0, 0x6a9(r4) -/* 803C4604 003C1564 28 00 00 00 */ cmplwi r0, 0 -/* 803C4608 003C1568 41 82 00 70 */ beq lbl_803C4678 -/* 803C460C 003C156C A0 64 06 AC */ lhz r3, 0x6ac(r4) -/* 803C4610 003C1570 38 63 FF FF */ addi r3, r3, -1 -/* 803C4614 003C1574 54 60 04 3F */ clrlwi. r0, r3, 0x10 -/* 803C4618 003C1578 B0 64 06 AC */ sth r3, 0x6ac(r4) -/* 803C461C 003C157C 40 82 00 5C */ bne lbl_803C4678 -/* 803C4620 003C1580 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4624 003C1584 A0 03 06 AA */ lhz r0, 0x6aa(r3) -/* 803C4628 003C1588 B0 03 06 AC */ sth r0, 0x6ac(r3) -/* 803C462C 003C158C 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C4630 003C1590 80 64 06 A4 */ lwz r3, 0x6a4(r4) -/* 803C4634 003C1594 38 03 00 06 */ addi r0, r3, 6 -/* 803C4638 003C1598 54 03 00 38 */ rlwinm r3, r0, 0, 0, 0x1c -/* 803C463C 003C159C 38 03 00 01 */ addi r0, r3, 1 -/* 803C4640 003C15A0 90 04 06 A4 */ stw r0, 0x6a4(r4) -/* 803C4644 003C15A4 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4648 003C15A8 80 03 06 A4 */ lwz r0, 0x6a4(r3) -/* 803C464C 003C15AC 28 00 00 21 */ cmplwi r0, 0x21 -/* 803C4650 003C15B0 40 81 00 0C */ ble lbl_803C465C -/* 803C4654 003C15B4 38 00 00 21 */ li r0, 0x21 -/* 803C4658 003C15B8 90 03 06 A4 */ stw r0, 0x6a4(r3) -lbl_803C465C: -/* 803C465C 003C15BC 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4660 003C15C0 38 00 00 00 */ li r0, 0 -/* 803C4664 003C15C4 B0 03 06 84 */ sth r0, 0x684(r3) -/* 803C4668 003C15C8 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C466C 003C15CC B0 03 06 8A */ sth r0, 0x68a(r3) -/* 803C4670 003C15D0 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4674 003C15D4 B0 03 06 90 */ sth r0, 0x690(r3) -lbl_803C4678: -/* 803C4678 003C15D8 3B DE 00 01 */ addi r30, r30, 1 -lbl_803C467C: -/* 803C467C 003C15DC 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4680 003C15E0 57 C4 06 3E */ clrlwi r4, r30, 0x18 -/* 803C4684 003C15E4 A0 03 06 96 */ lhz r0, 0x696(r3) -/* 803C4688 003C15E8 7C 04 00 00 */ cmpw r4, r0 -/* 803C468C 003C15EC 41 80 E6 64 */ blt lbl_803C2CF0 -/* 803C4690 003C15F0 80 63 06 B0 */ lwz r3, 0x6b0(r3) -/* 803C4694 003C15F4 38 A0 20 00 */ li r5, 0x2000 -/* 803C4698 003C15F8 80 9F 01 00 */ lwz r4, 0x100(r31) -/* 803C469C 003C15FC 4B FB A7 71 */ bl LCStoreData -/* 803C46A0 003C1600 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C46A4 003C1604 38 A0 08 00 */ li r5, 0x800 -/* 803C46A8 003C1608 80 9F 01 04 */ lwz r4, 0x104(r31) -/* 803C46AC 003C160C 80 63 06 B4 */ lwz r3, 0x6b4(r3) -/* 803C46B0 003C1610 4B FB A7 5D */ bl LCStoreData -/* 803C46B4 003C1614 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C46B8 003C1618 38 A0 08 00 */ li r5, 0x800 -/* 803C46BC 003C161C 80 9F 01 08 */ lwz r4, 0x108(r31) -/* 803C46C0 003C1620 80 63 06 B8 */ lwz r3, 0x6b8(r3) -/* 803C46C4 003C1624 4B FB A7 49 */ bl LCStoreData -/* 803C46C8 003C1628 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C46CC 003C162C 80 64 06 B0 */ lwz r3, 0x6b0(r4) -/* 803C46D0 003C1630 38 03 20 00 */ addi r0, r3, 0x2000 -/* 803C46D4 003C1634 90 04 06 B0 */ stw r0, 0x6b0(r4) -/* 803C46D8 003C1638 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C46DC 003C163C 80 64 06 B4 */ lwz r3, 0x6b4(r4) -/* 803C46E0 003C1640 38 03 08 00 */ addi r0, r3, 0x800 -/* 803C46E4 003C1644 90 04 06 B4 */ stw r0, 0x6b4(r4) -/* 803C46E8 003C1648 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C46EC 003C164C 80 64 06 B8 */ lwz r3, 0x6b8(r4) -/* 803C46F0 003C1650 38 03 08 00 */ addi r0, r3, 0x800 -/* 803C46F4 003C1654 90 04 06 B8 */ stw r0, 0x6b8(r4) -/* 803C46F8 003C1658 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 803C46FC 003C165C CB E1 00 30 */ lfd f31, 0x30(r1) -/* 803C4700 003C1660 CB C1 00 28 */ lfd f30, 0x28(r1) -/* 803C4704 003C1664 CB A1 00 20 */ lfd f29, 0x20(r1) -/* 803C4708 003C1668 CB 81 00 18 */ lfd f28, 0x18(r1) -/* 803C470C 003C166C CB 61 00 10 */ lfd f27, 0x10(r1) -/* 803C4710 003C1670 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803C4714 003C1674 83 C1 00 08 */ lwz r30, 8(r1) -/* 803C4718 003C1678 38 21 00 38 */ addi r1, r1, 0x38 -/* 803C471C 003C167C 7C 08 03 A6 */ mtlr r0 -/* 803C4720 003C1680 4E 80 00 20 */ blr - -.global __THPDecompressiMCURow640x480 -__THPDecompressiMCURow640x480: -/* 803C4724 003C1684 7C 08 02 A6 */ mflr r0 -/* 803C4728 003C1688 3C 60 80 57 */ lis r3, lbl_80569F60@ha -/* 803C472C 003C168C 90 01 00 04 */ stw r0, 4(r1) -/* 803C4730 003C1690 94 21 FF C8 */ stwu r1, -0x38(r1) -/* 803C4734 003C1694 DB E1 00 30 */ stfd f31, 0x30(r1) -/* 803C4738 003C1698 DB C1 00 28 */ stfd f30, 0x28(r1) -/* 803C473C 003C169C DB A1 00 20 */ stfd f29, 0x20(r1) -/* 803C4740 003C16A0 DB 81 00 18 */ stfd f28, 0x18(r1) -/* 803C4744 003C16A4 DB 61 00 10 */ stfd f27, 0x10(r1) -/* 803C4748 003C16A8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803C474C 003C16AC 3B E3 9F 60 */ addi r31, r3, lbl_80569F60@l -/* 803C4750 003C16B0 38 60 00 03 */ li r3, 3 -/* 803C4754 003C16B4 93 C1 00 08 */ stw r30, 8(r1) -/* 803C4758 003C16B8 4B FB A7 6D */ bl LCQueueWait -/* 803C475C 003C16BC C3 62 D7 28 */ lfs f27, lbl_805AF448@sda21(r2) -/* 803C4760 003C16C0 3B C0 00 00 */ li r30, 0 -/* 803C4764 003C16C4 C3 82 D7 2C */ lfs f28, lbl_805AF44C@sda21(r2) -/* 803C4768 003C16C8 C3 A2 D7 30 */ lfs f29, lbl_805AF450@sda21(r2) -/* 803C476C 003C16CC C3 C2 D7 34 */ lfs f30, lbl_805AF454@sda21(r2) -/* 803C4770 003C16D0 C3 E2 D7 38 */ lfs f31, lbl_805AF458@sda21(r2) -/* 803C4774 003C16D4 48 00 19 94 */ b lbl_803C6108 -lbl_803C4778: -/* 803C4778 003C16D8 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C477C 003C16DC 80 9F 01 18 */ lwz r4, 0x118(r31) -/* 803C4780 003C16E0 48 00 34 DD */ bl __THPHuffDecodeDCTCompY -/* 803C4784 003C16E4 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4788 003C16E8 80 9F 01 1C */ lwz r4, 0x11c(r31) -/* 803C478C 003C16EC 48 00 34 D1 */ bl __THPHuffDecodeDCTCompY -/* 803C4790 003C16F0 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C4794 003C16F4 80 9F 01 20 */ lwz r4, 0x120(r31) -/* 803C4798 003C16F8 48 00 34 C5 */ bl __THPHuffDecodeDCTCompY -/* 803C479C 003C16FC 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C47A0 003C1700 80 9F 01 24 */ lwz r4, 0x124(r31) -/* 803C47A4 003C1704 48 00 34 B9 */ bl __THPHuffDecodeDCTCompY -/* 803C47A8 003C1708 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C47AC 003C170C 80 9F 01 28 */ lwz r4, 0x128(r31) -/* 803C47B0 003C1710 48 00 3B 29 */ bl __THPHuffDecodeDCTCompU -/* 803C47B4 003C1714 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C47B8 003C1718 80 9F 01 2C */ lwz r4, 0x12c(r31) -/* 803C47BC 003C171C 48 00 41 C5 */ bl __THPHuffDecodeDCTCompV -/* 803C47C0 003C1720 80 7F 01 0C */ lwz r3, 0x10c(r31) -/* 803C47C4 003C1724 38 00 02 80 */ li r0, 0x280 -/* 803C47C8 003C1728 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C47CC 003C172C 39 3F FF F8 */ addi r9, r31, -8 -/* 803C47D0 003C1730 90 6D B1 00 */ stw r3, lbl_805A9CC0@sda21(r13) -/* 803C47D4 003C1734 57 C3 25 36 */ rlwinm r3, r30, 4, 0x14, 0x1b -/* 803C47D8 003C1738 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) -/* 803C47DC 003C173C 88 04 06 80 */ lbz r0, 0x680(r4) -/* 803C47E0 003C1740 54 00 40 2E */ slwi r0, r0, 8 -/* 803C47E4 003C1744 7C 04 02 14 */ add r0, r4, r0 -/* 803C47E8 003C1748 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C47EC 003C174C 81 1F 01 18 */ lwz r8, 0x118(r31) -/* 803C47F0 003C1750 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C47F4 003C1754 38 80 00 08 */ li r4, 8 -/* 803C47F8 003C1758 7C 89 03 A6 */ mtctr r4 -lbl_803C47FC: -/* 803C47FC 003C175C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C4800 003C1760 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4804 003C1764 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C4808 003C1768 80 08 00 08 */ lwz r0, 8(r8) -/* 803C480C 003C176C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4810 003C1770 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C4814 003C1774 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4818 003C1778 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C481C: -/* 803C481C 003C177C 2C 06 00 00 */ cmpwi r6, 0 -/* 803C4820 003C1780 40 82 01 48 */ bne lbl_803C4968 -/* 803C4824 003C1784 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C4828 003C1788 2C 05 00 00 */ cmpwi r5, 0 -/* 803C482C 003C178C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C4830 003C1790 40 82 00 9C */ bne lbl_803C48CC -/* 803C4834 003C1794 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C4838 003C1798 2C 04 00 00 */ cmpwi r4, 0 -/* 803C483C 003C179C F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C4840 003C17A0 40 82 00 18 */ bne lbl_803C4858 -/* 803C4844 003C17A4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4848 003C17A8 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C484C 003C17AC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C4850 003C17B0 42 00 FF AC */ bdnz lbl_803C47FC -/* 803C4854 003C17B4 48 00 01 DC */ b lbl_803C4A30 -lbl_803C4858: -/* 803C4858 003C17B8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C485C 003C17BC 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C4860 003C17C0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4864 003C17C4 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C4868 003C17C8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C486C 003C17CC 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C4870 003C17D0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C4874 003C17D4 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4878 003C17D8 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C487C 003C17DC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4880 003C17E0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C4884 003C17E4 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C4888 003C17E8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C488C 003C17EC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C4890 003C17F0 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C4894 003C17F4 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C4898 003C17F8 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C489C 003C17FC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C48A0 003C1800 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C48A4 003C1804 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C48A8 003C1808 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C48AC 003C180C F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C48B0 003C1810 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C48B4 003C1814 7C C6 03 78 */ or r6, r6, r0 -/* 803C48B8 003C1818 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C48BC 003C181C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C48C0 003C1820 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C48C4 003C1824 42 00 FF 58 */ bdnz lbl_803C481C -/* 803C48C8 003C1828 48 00 01 68 */ b lbl_803C4A30 -lbl_803C48CC: -/* 803C48CC 003C182C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C48D0 003C1830 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C48D4 003C1834 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C48D8 003C1838 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C48DC 003C183C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C48E0 003C1840 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C48E4 003C1844 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C48E8 003C1848 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C48EC 003C184C 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C48F0 003C1850 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C48F4 003C1854 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C48F8 003C1858 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C48FC 003C185C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C4900 003C1860 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C4904 003C1864 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C4908 003C1868 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C490C 003C186C 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C4910 003C1870 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C4914 003C1874 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4918 003C1878 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C491C 003C187C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C4920 003C1880 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C4924 003C1884 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C4928 003C1888 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C492C 003C188C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4930 003C1890 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C4934 003C1894 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C4938 003C1898 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C493C 003C189C 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C4940 003C18A0 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C4944 003C18A4 7C C6 03 78 */ or r6, r6, r0 -/* 803C4948 003C18A8 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C494C 003C18AC 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C4950 003C18B0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C4954 003C18B4 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C4958 003C18B8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C495C 003C18BC F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C4960 003C18C0 42 00 FE BC */ bdnz lbl_803C481C -/* 803C4964 003C18C4 48 00 00 CC */ b lbl_803C4A30 -lbl_803C4968: -/* 803C4968 003C18C8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C496C 003C18CC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C4970 003C18D0 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C4974 003C18D4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C4978 003C18D8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C497C 003C18DC 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C4980 003C18E0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C4984 003C18E4 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C4988 003C18E8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C498C 003C18EC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C4990 003C18F0 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C4994 003C18F4 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C4998 003C18F8 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C499C 003C18FC 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C49A0 003C1900 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C49A4 003C1904 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C49A8 003C1908 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C49AC 003C190C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C49B0 003C1910 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C49B4 003C1914 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C49B8 003C1918 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C49BC 003C191C 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C49C0 003C1920 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C49C4 003C1924 80 08 00 08 */ lwz r0, 8(r8) -/* 803C49C8 003C1928 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C49CC 003C192C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C49D0 003C1930 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C49D4 003C1934 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C49D8 003C1938 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C49DC 003C193C 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C49E0 003C1940 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C49E4 003C1944 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C49E8 003C1948 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C49EC 003C194C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C49F0 003C1950 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C49F4 003C1954 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C49F8 003C1958 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C49FC 003C195C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C4A00 003C1960 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C4A04 003C1964 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4A08 003C1968 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C4A0C 003C196C 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C4A10 003C1970 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C4A14 003C1974 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C4A18 003C1978 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C4A1C 003C197C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C4A20 003C1980 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C4A24 003C1984 7C C6 03 78 */ or r6, r6, r0 -/* 803C4A28 003C1988 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C4A2C 003C198C 42 00 FD F0 */ bdnz lbl_803C481C -lbl_803C4A30: -/* 803C4A30 003C1990 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C4A34 003C1994 7F E9 FB 78 */ mr r9, r31 -/* 803C4A38 003C1998 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C4A3C 003C199C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C4A40 003C19A0 54 64 10 3A */ slwi r4, r3, 2 -/* 803C4A44 003C19A4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C4A48 003C19A8 54 06 10 3A */ slwi r6, r0, 2 -/* 803C4A4C 003C19AC E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C4A50 003C19B0 7C 87 23 78 */ mr r7, r4 -/* 803C4A54 003C19B4 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4A58 003C19B8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C4A5C 003C19BC 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4A60 003C19C0 7C C7 32 14 */ add r6, r7, r6 -/* 803C4A64 003C19C4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4A68 003C19C8 38 00 00 03 */ li r0, 3 -/* 803C4A6C 003C19CC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4A70 003C19D0 7C A8 3A 14 */ add r5, r8, r7 -/* 803C4A74 003C19D4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4A78 003C19D8 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4A7C 003C19DC 7C 88 32 14 */ add r4, r8, r6 -/* 803C4A80 003C19E0 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4A84 003C19E4 7C 09 03 A6 */ mtctr r0 -lbl_803C4A88: -/* 803C4A88 003C19E8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C4A8C 003C19EC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4A90 003C19F0 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C4A94 003C19F4 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4A98 003C19F8 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C4A9C 003C19FC E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C4AA0 003C1A00 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C4AA4 003C1A04 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C4AA8 003C1A08 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C4AAC 003C1A0C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4AB0 003C1A10 39 29 00 08 */ addi r9, r9, 8 -/* 803C4AB4 003C1A14 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C4AB8 003C1A18 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C4ABC 003C1A1C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C4AC0 003C1A20 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C4AC4 003C1A24 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C4AC8 003C1A28 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C4ACC 003C1A2C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C4AD0 003C1A30 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C4AD4 003C1A34 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C4AD8 003C1A38 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C4ADC 003C1A3C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C4AE0 003C1A40 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C4AE4 003C1A44 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C4AE8 003C1A48 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C4AEC 003C1A4C 38 E7 00 02 */ addi r7, r7, 2 -/* 803C4AF0 003C1A50 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C4AF4 003C1A54 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C4AF8 003C1A58 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C4AFC 003C1A5C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C4B00 003C1A60 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C4B04 003C1A64 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C4B08 003C1A68 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C4B0C 003C1A6C 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C4B10 003C1A70 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C4B14 003C1A74 38 C6 00 02 */ addi r6, r6, 2 -/* 803C4B18 003C1A78 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C4B1C 003C1A7C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C4B20 003C1A80 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C4B24 003C1A84 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C4B28 003C1A88 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4B2C 003C1A8C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C4B30 003C1A90 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4B34 003C1A94 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4B38 003C1A98 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C4B3C 003C1A9C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4B40 003C1AA0 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4B44 003C1AA4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C4B48 003C1AA8 7C A8 3A 14 */ add r5, r8, r7 -/* 803C4B4C 003C1AAC 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4B50 003C1AB0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C4B54 003C1AB4 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4B58 003C1AB8 7C 88 32 14 */ add r4, r8, r6 -/* 803C4B5C 003C1ABC 42 00 FF 2C */ bdnz lbl_803C4A88 -/* 803C4B60 003C1AC0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C4B64 003C1AC4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4B68 003C1AC8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C4B6C 003C1ACC 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4B70 003C1AD0 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C4B74 003C1AD4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C4B78 003C1AD8 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C4B7C 003C1ADC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C4B80 003C1AE0 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C4B84 003C1AE4 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4B88 003C1AE8 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C4B8C 003C1AEC 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C4B90 003C1AF0 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C4B94 003C1AF4 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C4B98 003C1AF8 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C4B9C 003C1AFC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C4BA0 003C1B00 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C4BA4 003C1B04 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C4BA8 003C1B08 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C4BAC 003C1B0C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C4BB0 003C1B10 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C4BB4 003C1B14 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C4BB8 003C1B18 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C4BBC 003C1B1C 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C4BC0 003C1B20 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C4BC4 003C1B24 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C4BC8 003C1B28 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C4BCC 003C1B2C 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C4BD0 003C1B30 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C4BD4 003C1B34 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C4BD8 003C1B38 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C4BDC 003C1B3C 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C4BE0 003C1B40 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C4BE4 003C1B44 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C4BE8 003C1B48 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C4BEC 003C1B4C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C4BF0 003C1B50 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C4BF4 003C1B54 81 1F 01 1C */ lwz r8, 0x11c(r31) -/* 803C4BF8 003C1B58 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C4BFC 003C1B5C 39 43 00 08 */ addi r10, r3, 8 -/* 803C4C00 003C1B60 39 3F FF F8 */ addi r9, r31, -8 -/* 803C4C04 003C1B64 38 80 00 08 */ li r4, 8 -/* 803C4C08 003C1B68 7C 89 03 A6 */ mtctr r4 -lbl_803C4C0C: -/* 803C4C0C 003C1B6C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C4C10 003C1B70 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4C14 003C1B74 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C4C18 003C1B78 80 08 00 08 */ lwz r0, 8(r8) -/* 803C4C1C 003C1B7C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4C20 003C1B80 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C4C24 003C1B84 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4C28 003C1B88 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C4C2C: -/* 803C4C2C 003C1B8C 2C 06 00 00 */ cmpwi r6, 0 -/* 803C4C30 003C1B90 40 82 01 48 */ bne lbl_803C4D78 -/* 803C4C34 003C1B94 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C4C38 003C1B98 2C 05 00 00 */ cmpwi r5, 0 -/* 803C4C3C 003C1B9C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C4C40 003C1BA0 40 82 00 9C */ bne lbl_803C4CDC -/* 803C4C44 003C1BA4 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C4C48 003C1BA8 2C 04 00 00 */ cmpwi r4, 0 -/* 803C4C4C 003C1BAC F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C4C50 003C1BB0 40 82 00 18 */ bne lbl_803C4C68 -/* 803C4C54 003C1BB4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4C58 003C1BB8 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C4C5C 003C1BBC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C4C60 003C1BC0 42 00 FF AC */ bdnz lbl_803C4C0C -/* 803C4C64 003C1BC4 48 00 01 DC */ b lbl_803C4E40 -lbl_803C4C68: -/* 803C4C68 003C1BC8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C4C6C 003C1BCC 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C4C70 003C1BD0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4C74 003C1BD4 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C4C78 003C1BD8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C4C7C 003C1BDC 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C4C80 003C1BE0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C4C84 003C1BE4 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4C88 003C1BE8 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C4C8C 003C1BEC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4C90 003C1BF0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C4C94 003C1BF4 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C4C98 003C1BF8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C4C9C 003C1BFC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C4CA0 003C1C00 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C4CA4 003C1C04 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C4CA8 003C1C08 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C4CAC 003C1C0C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C4CB0 003C1C10 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C4CB4 003C1C14 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C4CB8 003C1C18 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C4CBC 003C1C1C F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C4CC0 003C1C20 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C4CC4 003C1C24 7C C6 03 78 */ or r6, r6, r0 -/* 803C4CC8 003C1C28 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C4CCC 003C1C2C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4CD0 003C1C30 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C4CD4 003C1C34 42 00 FF 58 */ bdnz lbl_803C4C2C -/* 803C4CD8 003C1C38 48 00 01 68 */ b lbl_803C4E40 -lbl_803C4CDC: -/* 803C4CDC 003C1C3C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C4CE0 003C1C40 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C4CE4 003C1C44 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C4CE8 003C1C48 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C4CEC 003C1C4C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4CF0 003C1C50 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C4CF4 003C1C54 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C4CF8 003C1C58 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C4CFC 003C1C5C 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C4D00 003C1C60 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C4D04 003C1C64 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C4D08 003C1C68 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C4D0C 003C1C6C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C4D10 003C1C70 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C4D14 003C1C74 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C4D18 003C1C78 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C4D1C 003C1C7C 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C4D20 003C1C80 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C4D24 003C1C84 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4D28 003C1C88 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C4D2C 003C1C8C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C4D30 003C1C90 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C4D34 003C1C94 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C4D38 003C1C98 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C4D3C 003C1C9C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4D40 003C1CA0 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C4D44 003C1CA4 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C4D48 003C1CA8 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C4D4C 003C1CAC 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C4D50 003C1CB0 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C4D54 003C1CB4 7C C6 03 78 */ or r6, r6, r0 -/* 803C4D58 003C1CB8 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C4D5C 003C1CBC 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C4D60 003C1CC0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C4D64 003C1CC4 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C4D68 003C1CC8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4D6C 003C1CCC F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C4D70 003C1CD0 42 00 FE BC */ bdnz lbl_803C4C2C -/* 803C4D74 003C1CD4 48 00 00 CC */ b lbl_803C4E40 -lbl_803C4D78: -/* 803C4D78 003C1CD8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C4D7C 003C1CDC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C4D80 003C1CE0 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C4D84 003C1CE4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C4D88 003C1CE8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C4D8C 003C1CEC 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C4D90 003C1CF0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C4D94 003C1CF4 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C4D98 003C1CF8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C4D9C 003C1CFC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C4DA0 003C1D00 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C4DA4 003C1D04 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C4DA8 003C1D08 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C4DAC 003C1D0C 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C4DB0 003C1D10 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C4DB4 003C1D14 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C4DB8 003C1D18 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C4DBC 003C1D1C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C4DC0 003C1D20 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C4DC4 003C1D24 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C4DC8 003C1D28 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C4DCC 003C1D2C 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C4DD0 003C1D30 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C4DD4 003C1D34 80 08 00 08 */ lwz r0, 8(r8) -/* 803C4DD8 003C1D38 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C4DDC 003C1D3C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C4DE0 003C1D40 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C4DE4 003C1D44 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C4DE8 003C1D48 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C4DEC 003C1D4C 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C4DF0 003C1D50 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C4DF4 003C1D54 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C4DF8 003C1D58 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C4DFC 003C1D5C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C4E00 003C1D60 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C4E04 003C1D64 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C4E08 003C1D68 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C4E0C 003C1D6C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C4E10 003C1D70 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C4E14 003C1D74 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C4E18 003C1D78 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C4E1C 003C1D7C 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C4E20 003C1D80 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C4E24 003C1D84 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C4E28 003C1D88 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C4E2C 003C1D8C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C4E30 003C1D90 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C4E34 003C1D94 7C C6 03 78 */ or r6, r6, r0 -/* 803C4E38 003C1D98 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C4E3C 003C1D9C 42 00 FD F0 */ bdnz lbl_803C4C2C -lbl_803C4E40: -/* 803C4E40 003C1DA0 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C4E44 003C1DA4 7F E9 FB 78 */ mr r9, r31 -/* 803C4E48 003C1DA8 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C4E4C 003C1DAC E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C4E50 003C1DB0 55 4A 10 3A */ slwi r10, r10, 2 -/* 803C4E54 003C1DB4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C4E58 003C1DB8 54 06 10 3A */ slwi r6, r0, 2 -/* 803C4E5C 003C1DBC E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C4E60 003C1DC0 7D 47 53 78 */ mr r7, r10 -/* 803C4E64 003C1DC4 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4E68 003C1DC8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C4E6C 003C1DCC 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4E70 003C1DD0 7C C7 32 14 */ add r6, r7, r6 -/* 803C4E74 003C1DD4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4E78 003C1DD8 38 00 00 03 */ li r0, 3 -/* 803C4E7C 003C1DDC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4E80 003C1DE0 7C A8 3A 14 */ add r5, r8, r7 -/* 803C4E84 003C1DE4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4E88 003C1DE8 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4E8C 003C1DEC 7C 88 32 14 */ add r4, r8, r6 -/* 803C4E90 003C1DF0 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4E94 003C1DF4 7C 09 03 A6 */ mtctr r0 -lbl_803C4E98: -/* 803C4E98 003C1DF8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C4E9C 003C1DFC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4EA0 003C1E00 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C4EA4 003C1E04 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4EA8 003C1E08 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C4EAC 003C1E0C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C4EB0 003C1E10 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C4EB4 003C1E14 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C4EB8 003C1E18 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C4EBC 003C1E1C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4EC0 003C1E20 39 29 00 08 */ addi r9, r9, 8 -/* 803C4EC4 003C1E24 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C4EC8 003C1E28 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C4ECC 003C1E2C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C4ED0 003C1E30 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C4ED4 003C1E34 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C4ED8 003C1E38 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C4EDC 003C1E3C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C4EE0 003C1E40 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C4EE4 003C1E44 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C4EE8 003C1E48 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C4EEC 003C1E4C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C4EF0 003C1E50 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C4EF4 003C1E54 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C4EF8 003C1E58 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C4EFC 003C1E5C 38 E7 00 02 */ addi r7, r7, 2 -/* 803C4F00 003C1E60 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C4F04 003C1E64 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C4F08 003C1E68 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C4F0C 003C1E6C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C4F10 003C1E70 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C4F14 003C1E74 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C4F18 003C1E78 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C4F1C 003C1E7C 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C4F20 003C1E80 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C4F24 003C1E84 38 C6 00 02 */ addi r6, r6, 2 -/* 803C4F28 003C1E88 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C4F2C 003C1E8C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C4F30 003C1E90 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C4F34 003C1E94 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C4F38 003C1E98 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C4F3C 003C1E9C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C4F40 003C1EA0 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C4F44 003C1EA4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C4F48 003C1EA8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C4F4C 003C1EAC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C4F50 003C1EB0 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C4F54 003C1EB4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C4F58 003C1EB8 7C A8 3A 14 */ add r5, r8, r7 -/* 803C4F5C 003C1EBC 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C4F60 003C1EC0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C4F64 003C1EC4 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C4F68 003C1EC8 7C 88 32 14 */ add r4, r8, r6 -/* 803C4F6C 003C1ECC 42 00 FF 2C */ bdnz lbl_803C4E98 -/* 803C4F70 003C1ED0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C4F74 003C1ED4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C4F78 003C1ED8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C4F7C 003C1EDC 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C4F80 003C1EE0 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C4F84 003C1EE4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C4F88 003C1EE8 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C4F8C 003C1EEC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C4F90 003C1EF0 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C4F94 003C1EF4 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C4F98 003C1EF8 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C4F9C 003C1EFC 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C4FA0 003C1F00 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C4FA4 003C1F04 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C4FA8 003C1F08 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C4FAC 003C1F0C 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C4FB0 003C1F10 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C4FB4 003C1F14 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C4FB8 003C1F18 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C4FBC 003C1F1C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C4FC0 003C1F20 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C4FC4 003C1F24 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C4FC8 003C1F28 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C4FCC 003C1F2C 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C4FD0 003C1F30 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C4FD4 003C1F34 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C4FD8 003C1F38 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C4FDC 003C1F3C 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C4FE0 003C1F40 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C4FE4 003C1F44 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C4FE8 003C1F48 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C4FEC 003C1F4C 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C4FF0 003C1F50 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C4FF4 003C1F54 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C4FF8 003C1F58 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C4FFC 003C1F5C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5000 003C1F60 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5004 003C1F64 81 1F 01 20 */ lwz r8, 0x120(r31) -/* 803C5008 003C1F68 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C500C 003C1F6C 39 3F FF F8 */ addi r9, r31, -8 -/* 803C5010 003C1F70 38 80 00 08 */ li r4, 8 -/* 803C5014 003C1F74 7C 89 03 A6 */ mtctr r4 -lbl_803C5018: -/* 803C5018 003C1F78 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C501C 003C1F7C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5020 003C1F80 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5024 003C1F84 80 08 00 08 */ lwz r0, 8(r8) -/* 803C5028 003C1F88 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C502C 003C1F8C 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C5030 003C1F90 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5034 003C1F94 7C C6 03 78 */ or r6, r6, r0 -lbl_803C5038: -/* 803C5038 003C1F98 2C 06 00 00 */ cmpwi r6, 0 -/* 803C503C 003C1F9C 40 82 01 48 */ bne lbl_803C5184 -/* 803C5040 003C1FA0 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C5044 003C1FA4 2C 05 00 00 */ cmpwi r5, 0 -/* 803C5048 003C1FA8 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C504C 003C1FAC 40 82 00 9C */ bne lbl_803C50E8 -/* 803C5050 003C1FB0 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C5054 003C1FB4 2C 04 00 00 */ cmpwi r4, 0 -/* 803C5058 003C1FB8 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C505C 003C1FBC 40 82 00 18 */ bne lbl_803C5074 -/* 803C5060 003C1FC0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5064 003C1FC4 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C5068 003C1FC8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C506C 003C1FCC 42 00 FF AC */ bdnz lbl_803C5018 -/* 803C5070 003C1FD0 48 00 01 DC */ b lbl_803C524C -lbl_803C5074: -/* 803C5074 003C1FD4 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C5078 003C1FD8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C507C 003C1FDC 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C5080 003C1FE0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5084 003C1FE4 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C5088 003C1FE8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C508C 003C1FEC 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C5090 003C1FF0 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5094 003C1FF4 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C5098 003C1FF8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C509C 003C1FFC 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C50A0 003C2000 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C50A4 003C2004 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C50A8 003C2008 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C50AC 003C200C 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C50B0 003C2010 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C50B4 003C2014 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C50B8 003C2018 80 08 00 08 */ lwz r0, 8(r8) -/* 803C50BC 003C201C 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C50C0 003C2020 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C50C4 003C2024 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C50C8 003C2028 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C50CC 003C202C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C50D0 003C2030 7C C6 03 78 */ or r6, r6, r0 -/* 803C50D4 003C2034 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C50D8 003C2038 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C50DC 003C203C F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C50E0 003C2040 42 00 FF 58 */ bdnz lbl_803C5038 -/* 803C50E4 003C2044 48 00 01 68 */ b lbl_803C524C -lbl_803C50E8: -/* 803C50E8 003C2048 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C50EC 003C204C E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C50F0 003C2050 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C50F4 003C2054 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C50F8 003C2058 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C50FC 003C205C 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C5100 003C2060 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C5104 003C2064 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5108 003C2068 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C510C 003C206C 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C5110 003C2070 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C5114 003C2074 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C5118 003C2078 80 08 00 08 */ lwz r0, 8(r8) -/* 803C511C 003C207C 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C5120 003C2080 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C5124 003C2084 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C5128 003C2088 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C512C 003C208C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C5130 003C2090 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5134 003C2094 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C5138 003C2098 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C513C 003C209C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C5140 003C20A0 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C5144 003C20A4 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C5148 003C20A8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C514C 003C20AC 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C5150 003C20B0 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C5154 003C20B4 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C5158 003C20B8 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C515C 003C20BC 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C5160 003C20C0 7C C6 03 78 */ or r6, r6, r0 -/* 803C5164 003C20C4 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C5168 003C20C8 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C516C 003C20CC 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C5170 003C20D0 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C5174 003C20D4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5178 003C20D8 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C517C 003C20DC 42 00 FE BC */ bdnz lbl_803C5038 -/* 803C5180 003C20E0 48 00 00 CC */ b lbl_803C524C -lbl_803C5184: -/* 803C5184 003C20E4 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C5188 003C20E8 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C518C 003C20EC 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C5190 003C20F0 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C5194 003C20F4 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C5198 003C20F8 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C519C 003C20FC E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C51A0 003C2100 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C51A4 003C2104 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C51A8 003C2108 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C51AC 003C210C 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C51B0 003C2110 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C51B4 003C2114 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C51B8 003C2118 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C51BC 003C211C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C51C0 003C2120 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C51C4 003C2124 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C51C8 003C2128 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C51CC 003C212C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C51D0 003C2130 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C51D4 003C2134 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C51D8 003C2138 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C51DC 003C213C 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C51E0 003C2140 80 08 00 08 */ lwz r0, 8(r8) -/* 803C51E4 003C2144 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C51E8 003C2148 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C51EC 003C214C 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C51F0 003C2150 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C51F4 003C2154 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C51F8 003C2158 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C51FC 003C215C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5200 003C2160 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C5204 003C2164 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C5208 003C2168 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C520C 003C216C 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C5210 003C2170 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C5214 003C2174 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5218 003C2178 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C521C 003C217C 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C5220 003C2180 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5224 003C2184 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C5228 003C2188 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C522C 003C218C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C5230 003C2190 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C5234 003C2194 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C5238 003C2198 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C523C 003C219C F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C5240 003C21A0 7C C6 03 78 */ or r6, r6, r0 -/* 803C5244 003C21A4 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C5248 003C21A8 42 00 FD F0 */ bdnz lbl_803C5038 -lbl_803C524C: -/* 803C524C 003C21AC 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C5250 003C21B0 7F E9 FB 78 */ mr r9, r31 -/* 803C5254 003C21B4 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C5258 003C21B8 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C525C 003C21BC 54 07 18 38 */ slwi r7, r0, 3 -/* 803C5260 003C21C0 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C5264 003C21C4 54 64 10 3A */ slwi r4, r3, 2 -/* 803C5268 003C21C8 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C526C 003C21CC 54 06 10 3A */ slwi r6, r0, 2 -/* 803C5270 003C21D0 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5274 003C21D4 7C E7 22 14 */ add r7, r7, r4 -/* 803C5278 003C21D8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C527C 003C21DC 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5280 003C21E0 7C C7 32 14 */ add r6, r7, r6 -/* 803C5284 003C21E4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C5288 003C21E8 38 00 00 03 */ li r0, 3 -/* 803C528C 003C21EC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5290 003C21F0 7C A8 3A 14 */ add r5, r8, r7 -/* 803C5294 003C21F4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5298 003C21F8 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C529C 003C21FC 7C 88 32 14 */ add r4, r8, r6 -/* 803C52A0 003C2200 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C52A4 003C2204 7C 09 03 A6 */ mtctr r0 -lbl_803C52A8: -/* 803C52A8 003C2208 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C52AC 003C220C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C52B0 003C2210 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C52B4 003C2214 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C52B8 003C2218 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C52BC 003C221C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C52C0 003C2220 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C52C4 003C2224 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C52C8 003C2228 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C52CC 003C222C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C52D0 003C2230 39 29 00 08 */ addi r9, r9, 8 -/* 803C52D4 003C2234 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C52D8 003C2238 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C52DC 003C223C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C52E0 003C2240 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C52E4 003C2244 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C52E8 003C2248 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C52EC 003C224C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C52F0 003C2250 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C52F4 003C2254 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C52F8 003C2258 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C52FC 003C225C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C5300 003C2260 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C5304 003C2264 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C5308 003C2268 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C530C 003C226C 38 E7 00 02 */ addi r7, r7, 2 -/* 803C5310 003C2270 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C5314 003C2274 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C5318 003C2278 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C531C 003C227C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C5320 003C2280 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C5324 003C2284 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C5328 003C2288 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C532C 003C228C 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C5330 003C2290 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C5334 003C2294 38 C6 00 02 */ addi r6, r6, 2 -/* 803C5338 003C2298 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C533C 003C229C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5340 003C22A0 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C5344 003C22A4 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C5348 003C22A8 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C534C 003C22AC F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5350 003C22B0 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5354 003C22B4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C5358 003C22B8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C535C 003C22BC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5360 003C22C0 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5364 003C22C4 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C5368 003C22C8 7C A8 3A 14 */ add r5, r8, r7 -/* 803C536C 003C22CC 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C5370 003C22D0 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C5374 003C22D4 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C5378 003C22D8 7C 88 32 14 */ add r4, r8, r6 -/* 803C537C 003C22DC 42 00 FF 2C */ bdnz lbl_803C52A8 -/* 803C5380 003C22E0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C5384 003C22E4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C5388 003C22E8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C538C 003C22EC 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C5390 003C22F0 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C5394 003C22F4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C5398 003C22F8 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C539C 003C22FC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C53A0 003C2300 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C53A4 003C2304 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C53A8 003C2308 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C53AC 003C230C 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C53B0 003C2310 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C53B4 003C2314 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C53B8 003C2318 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C53BC 003C231C 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C53C0 003C2320 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C53C4 003C2324 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C53C8 003C2328 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C53CC 003C232C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C53D0 003C2330 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C53D4 003C2334 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C53D8 003C2338 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C53DC 003C233C 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C53E0 003C2340 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C53E4 003C2344 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C53E8 003C2348 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C53EC 003C234C 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C53F0 003C2350 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C53F4 003C2354 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C53F8 003C2358 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C53FC 003C235C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C5400 003C2360 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5404 003C2364 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C5408 003C2368 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C540C 003C236C F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5410 003C2370 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5414 003C2374 81 1F 01 24 */ lwz r8, 0x124(r31) -/* 803C5418 003C2378 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C541C 003C237C 39 23 00 08 */ addi r9, r3, 8 -/* 803C5420 003C2380 39 5F FF F8 */ addi r10, r31, -8 -/* 803C5424 003C2384 38 80 00 08 */ li r4, 8 -/* 803C5428 003C2388 7C 89 03 A6 */ mtctr r4 -lbl_803C542C: -/* 803C542C 003C238C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C5430 003C2390 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5434 003C2394 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5438 003C2398 80 08 00 08 */ lwz r0, 8(r8) -/* 803C543C 003C239C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5440 003C23A0 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C5444 003C23A4 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5448 003C23A8 7C C6 03 78 */ or r6, r6, r0 -lbl_803C544C: -/* 803C544C 003C23AC 2C 06 00 00 */ cmpwi r6, 0 -/* 803C5450 003C23B0 40 82 01 48 */ bne lbl_803C5598 -/* 803C5454 003C23B4 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C5458 003C23B8 2C 05 00 00 */ cmpwi r5, 0 -/* 803C545C 003C23BC F0 8A 00 08 */ psq_st f4, 8(r10), 0, qr0 -/* 803C5460 003C23C0 40 82 00 9C */ bne lbl_803C54FC -/* 803C5464 003C23C4 F0 8A 00 10 */ psq_st f4, 16(r10), 0, qr0 -/* 803C5468 003C23C8 2C 04 00 00 */ cmpwi r4, 0 -/* 803C546C 003C23CC F0 8A 00 18 */ psq_st f4, 24(r10), 0, qr0 -/* 803C5470 003C23D0 40 82 00 18 */ bne lbl_803C5488 -/* 803C5474 003C23D4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5478 003C23D8 F4 8A 00 20 */ psq_stu f4, 32(r10), 0, qr0 -/* 803C547C 003C23DC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C5480 003C23E0 42 00 FF AC */ bdnz lbl_803C542C -/* 803C5484 003C23E4 48 00 01 DC */ b lbl_803C5660 -lbl_803C5488: -/* 803C5488 003C23E8 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C548C 003C23EC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C5490 003C23F0 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C5494 003C23F4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5498 003C23F8 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C549C 003C23FC 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C54A0 003C2400 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C54A4 003C2404 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C54A8 003C2408 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C54AC 003C240C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C54B0 003C2410 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C54B4 003C2414 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C54B8 003C2418 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C54BC 003C241C 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C54C0 003C2420 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C54C4 003C2424 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C54C8 003C2428 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C54CC 003C242C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C54D0 003C2430 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C54D4 003C2434 F5 0A 00 08 */ psq_stu f8, 8(r10), 0, qr0 -/* 803C54D8 003C2438 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C54DC 003C243C F4 6A 00 08 */ psq_stu f3, 8(r10), 0, qr0 -/* 803C54E0 003C2440 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C54E4 003C2444 7C C6 03 78 */ or r6, r6, r0 -/* 803C54E8 003C2448 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 -/* 803C54EC 003C244C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C54F0 003C2450 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 -/* 803C54F4 003C2454 42 00 FF 58 */ bdnz lbl_803C544C -/* 803C54F8 003C2458 48 00 01 68 */ b lbl_803C5660 -lbl_803C54FC: -/* 803C54FC 003C245C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C5500 003C2460 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C5504 003C2464 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C5508 003C2468 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C550C 003C246C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5510 003C2470 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C5514 003C2474 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C5518 003C2478 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C551C 003C247C 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C5520 003C2480 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C5524 003C2484 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C5528 003C2488 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C552C 003C248C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C5530 003C2490 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C5534 003C2494 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C5538 003C2498 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C553C 003C249C 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C5540 003C24A0 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C5544 003C24A4 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5548 003C24A8 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C554C 003C24AC 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C5550 003C24B0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C5554 003C24B4 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C5558 003C24B8 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C555C 003C24BC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5560 003C24C0 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C5564 003C24C4 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C5568 003C24C8 F4 4A 00 08 */ psq_stu f2, 8(r10), 0, qr0 -/* 803C556C 003C24CC 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C5570 003C24D0 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C5574 003C24D4 7C C6 03 78 */ or r6, r6, r0 -/* 803C5578 003C24D8 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 -/* 803C557C 003C24DC 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C5580 003C24E0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C5584 003C24E4 F4 2A 00 08 */ psq_stu f1, 8(r10), 0, qr0 -/* 803C5588 003C24E8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C558C 003C24EC F5 6A 00 08 */ psq_stu f11, 8(r10), 0, qr0 -/* 803C5590 003C24F0 42 00 FE BC */ bdnz lbl_803C544C -/* 803C5594 003C24F4 48 00 00 CC */ b lbl_803C5660 -lbl_803C5598: -/* 803C5598 003C24F8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C559C 003C24FC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C55A0 003C2500 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C55A4 003C2504 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C55A8 003C2508 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C55AC 003C250C 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C55B0 003C2510 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C55B4 003C2514 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C55B8 003C2518 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C55BC 003C251C 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C55C0 003C2520 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C55C4 003C2524 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C55C8 003C2528 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C55CC 003C252C 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C55D0 003C2530 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C55D4 003C2534 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C55D8 003C2538 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C55DC 003C253C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C55E0 003C2540 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C55E4 003C2544 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C55E8 003C2548 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C55EC 003C254C 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C55F0 003C2550 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C55F4 003C2554 80 08 00 08 */ lwz r0, 8(r8) -/* 803C55F8 003C2558 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C55FC 003C255C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C5600 003C2560 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C5604 003C2564 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C5608 003C2568 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C560C 003C256C 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C5610 003C2570 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5614 003C2574 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C5618 003C2578 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C561C 003C257C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C5620 003C2580 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C5624 003C2584 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C5628 003C2588 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C562C 003C258C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C5630 003C2590 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C5634 003C2594 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5638 003C2598 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C563C 003C259C 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C5640 003C25A0 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C5644 003C25A4 F5 8A 00 08 */ psq_stu f12, 8(r10), 0, qr0 -/* 803C5648 003C25A8 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C564C 003C25AC F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 -/* 803C5650 003C25B0 F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 -/* 803C5654 003C25B4 7C C6 03 78 */ or r6, r6, r0 -/* 803C5658 003C25B8 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 -/* 803C565C 003C25BC 42 00 FD F0 */ bdnz lbl_803C544C -lbl_803C5660: -/* 803C5660 003C25C0 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C5664 003C25C4 7F EA FB 78 */ mr r10, r31 -/* 803C5668 003C25C8 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C566C 003C25CC E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 -/* 803C5670 003C25D0 54 07 18 38 */ slwi r7, r0, 3 -/* 803C5674 003C25D4 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 -/* 803C5678 003C25D8 55 29 10 3A */ slwi r9, r9, 2 -/* 803C567C 003C25DC E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 -/* 803C5680 003C25E0 54 06 10 3A */ slwi r6, r0, 2 -/* 803C5684 003C25E4 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5688 003C25E8 7C E7 4A 14 */ add r7, r7, r9 -/* 803C568C 003C25EC E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 -/* 803C5690 003C25F0 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5694 003C25F4 7C C7 32 14 */ add r6, r7, r6 -/* 803C5698 003C25F8 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C569C 003C25FC 38 00 00 03 */ li r0, 3 -/* 803C56A0 003C2600 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C56A4 003C2604 7C A8 3A 14 */ add r5, r8, r7 -/* 803C56A8 003C2608 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C56AC 003C260C 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C56B0 003C2610 7C 88 32 14 */ add r4, r8, r6 -/* 803C56B4 003C2614 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C56B8 003C2618 7C 09 03 A6 */ mtctr r0 -lbl_803C56BC: -/* 803C56BC 003C261C E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 -/* 803C56C0 003C2620 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C56C4 003C2624 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 -/* 803C56C8 003C2628 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C56CC 003C262C 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C56D0 003C2630 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 -/* 803C56D4 003C2634 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C56D8 003C2638 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 -/* 803C56DC 003C263C 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C56E0 003C2640 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C56E4 003C2644 39 4A 00 08 */ addi r10, r10, 8 -/* 803C56E8 003C2648 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C56EC 003C264C 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C56F0 003C2650 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 -/* 803C56F4 003C2654 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C56F8 003C2658 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C56FC 003C265C 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C5700 003C2660 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 -/* 803C5704 003C2664 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C5708 003C2668 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C570C 003C266C E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 -/* 803C5710 003C2670 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C5714 003C2674 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C5718 003C2678 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 -/* 803C571C 003C267C 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C5720 003C2680 38 E7 00 02 */ addi r7, r7, 2 -/* 803C5724 003C2684 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C5728 003C2688 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C572C 003C268C 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C5730 003C2690 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C5734 003C2694 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C5738 003C2698 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C573C 003C269C 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C5740 003C26A0 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C5744 003C26A4 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C5748 003C26A8 38 C6 00 02 */ addi r6, r6, 2 -/* 803C574C 003C26AC 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C5750 003C26B0 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5754 003C26B4 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C5758 003C26B8 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C575C 003C26BC 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5760 003C26C0 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5764 003C26C4 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5768 003C26C8 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C576C 003C26CC F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5770 003C26D0 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5774 003C26D4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5778 003C26D8 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C577C 003C26DC 7C A8 3A 14 */ add r5, r8, r7 -/* 803C5780 003C26E0 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C5784 003C26E4 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C5788 003C26E8 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C578C 003C26EC 7C 88 32 14 */ add r4, r8, r6 -/* 803C5790 003C26F0 42 00 FF 2C */ bdnz lbl_803C56BC -/* 803C5794 003C26F4 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 -/* 803C5798 003C26F8 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C579C 003C26FC E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 -/* 803C57A0 003C2700 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C57A4 003C2704 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C57A8 003C2708 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 -/* 803C57AC 003C270C 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C57B0 003C2710 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 -/* 803C57B4 003C2714 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C57B8 003C2718 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C57BC 003C271C 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C57C0 003C2720 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C57C4 003C2724 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C57C8 003C2728 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C57CC 003C272C 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C57D0 003C2730 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C57D4 003C2734 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C57D8 003C2738 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C57DC 003C273C 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C57E0 003C2740 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C57E4 003C2744 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C57E8 003C2748 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C57EC 003C274C F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C57F0 003C2750 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C57F4 003C2754 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C57F8 003C2758 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C57FC 003C275C F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C5800 003C2760 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C5804 003C2764 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C5808 003C2768 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C580C 003C276C 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C5810 003C2770 F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C5814 003C2774 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5818 003C2778 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C581C 003C277C 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C5820 003C2780 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5824 003C2784 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5828 003C2788 80 9F 01 10 */ lwz r4, 0x110(r31) -/* 803C582C 003C278C 38 00 01 40 */ li r0, 0x140 -/* 803C5830 003C2790 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C5834 003C2794 90 8D B1 00 */ stw r4, lbl_805A9CC0@sda21(r13) -/* 803C5838 003C2798 54 63 F8 7E */ srwi r3, r3, 1 -/* 803C583C 003C279C 39 3F FF F8 */ addi r9, r31, -8 -/* 803C5840 003C27A0 90 0D B1 20 */ stw r0, lbl_805A9CE0@sda21(r13) -/* 803C5844 003C27A4 88 05 06 86 */ lbz r0, 0x686(r5) -/* 803C5848 003C27A8 54 00 40 2E */ slwi r0, r0, 8 -/* 803C584C 003C27AC 7C 05 02 14 */ add r0, r5, r0 -/* 803C5850 003C27B0 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C5854 003C27B4 81 1F 01 28 */ lwz r8, 0x128(r31) -/* 803C5858 003C27B8 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C585C 003C27BC 38 80 00 08 */ li r4, 8 -/* 803C5860 003C27C0 7C 89 03 A6 */ mtctr r4 -lbl_803C5864: -/* 803C5864 003C27C4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C5868 003C27C8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C586C 003C27CC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5870 003C27D0 80 08 00 08 */ lwz r0, 8(r8) -/* 803C5874 003C27D4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5878 003C27D8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C587C 003C27DC A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5880 003C27E0 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C5884: -/* 803C5884 003C27E4 2C 06 00 00 */ cmpwi r6, 0 -/* 803C5888 003C27E8 40 82 01 48 */ bne lbl_803C59D0 -/* 803C588C 003C27EC 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C5890 003C27F0 2C 05 00 00 */ cmpwi r5, 0 -/* 803C5894 003C27F4 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C5898 003C27F8 40 82 00 9C */ bne lbl_803C5934 -/* 803C589C 003C27FC F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C58A0 003C2800 2C 04 00 00 */ cmpwi r4, 0 -/* 803C58A4 003C2804 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C58A8 003C2808 40 82 00 18 */ bne lbl_803C58C0 -/* 803C58AC 003C280C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C58B0 003C2810 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C58B4 003C2814 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C58B8 003C2818 42 00 FF AC */ bdnz lbl_803C5864 -/* 803C58BC 003C281C 48 00 01 DC */ b lbl_803C5A98 -lbl_803C58C0: -/* 803C58C0 003C2820 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C58C4 003C2824 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C58C8 003C2828 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C58CC 003C282C 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C58D0 003C2830 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C58D4 003C2834 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C58D8 003C2838 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C58DC 003C283C A0 88 00 02 */ lhz r4, 2(r8) -/* 803C58E0 003C2840 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C58E4 003C2844 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C58E8 003C2848 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C58EC 003C284C 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C58F0 003C2850 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C58F4 003C2854 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C58F8 003C2858 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C58FC 003C285C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5900 003C2860 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C5904 003C2864 80 08 00 08 */ lwz r0, 8(r8) -/* 803C5908 003C2868 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C590C 003C286C F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C5910 003C2870 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C5914 003C2874 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C5918 003C2878 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C591C 003C287C 7C C6 03 78 */ or r6, r6, r0 -/* 803C5920 003C2880 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C5924 003C2884 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5928 003C2888 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C592C 003C288C 42 00 FF 58 */ bdnz lbl_803C5884 -/* 803C5930 003C2890 48 00 01 68 */ b lbl_803C5A98 -lbl_803C5934: -/* 803C5934 003C2894 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C5938 003C2898 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C593C 003C289C 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C5940 003C28A0 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C5944 003C28A4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5948 003C28A8 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C594C 003C28AC 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C5950 003C28B0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5954 003C28B4 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C5958 003C28B8 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C595C 003C28BC 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C5960 003C28C0 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C5964 003C28C4 80 08 00 08 */ lwz r0, 8(r8) -/* 803C5968 003C28C8 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C596C 003C28CC 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C5970 003C28D0 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C5974 003C28D4 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C5978 003C28D8 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C597C 003C28DC A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5980 003C28E0 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C5984 003C28E4 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C5988 003C28E8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C598C 003C28EC 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C5990 003C28F0 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C5994 003C28F4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5998 003C28F8 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C599C 003C28FC 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C59A0 003C2900 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C59A4 003C2904 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C59A8 003C2908 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C59AC 003C290C 7C C6 03 78 */ or r6, r6, r0 -/* 803C59B0 003C2910 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C59B4 003C2914 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C59B8 003C2918 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C59BC 003C291C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C59C0 003C2920 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C59C4 003C2924 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C59C8 003C2928 42 00 FE BC */ bdnz lbl_803C5884 -/* 803C59CC 003C292C 48 00 00 CC */ b lbl_803C5A98 -lbl_803C59D0: -/* 803C59D0 003C2930 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C59D4 003C2934 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C59D8 003C2938 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C59DC 003C293C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C59E0 003C2940 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C59E4 003C2944 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C59E8 003C2948 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C59EC 003C294C 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C59F0 003C2950 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C59F4 003C2954 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C59F8 003C2958 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C59FC 003C295C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C5A00 003C2960 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C5A04 003C2964 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C5A08 003C2968 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5A0C 003C296C 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C5A10 003C2970 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C5A14 003C2974 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C5A18 003C2978 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C5A1C 003C297C 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C5A20 003C2980 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C5A24 003C2984 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C5A28 003C2988 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C5A2C 003C298C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C5A30 003C2990 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C5A34 003C2994 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C5A38 003C2998 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C5A3C 003C299C 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C5A40 003C29A0 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C5A44 003C29A4 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C5A48 003C29A8 A0 88 00 02 */ lhz r4, 2(r8) -/* 803C5A4C 003C29AC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C5A50 003C29B0 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C5A54 003C29B4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C5A58 003C29B8 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C5A5C 003C29BC 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C5A60 003C29C0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5A64 003C29C4 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C5A68 003C29C8 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C5A6C 003C29CC 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5A70 003C29D0 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C5A74 003C29D4 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C5A78 003C29D8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C5A7C 003C29DC F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C5A80 003C29E0 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C5A84 003C29E4 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C5A88 003C29E8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C5A8C 003C29EC 7C C6 03 78 */ or r6, r6, r0 -/* 803C5A90 003C29F0 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C5A94 003C29F4 42 00 FD F0 */ bdnz lbl_803C5884 -lbl_803C5A98: -/* 803C5A98 003C29F8 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C5A9C 003C29FC 7F E9 FB 78 */ mr r9, r31 -/* 803C5AA0 003C2A00 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C5AA4 003C2A04 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C5AA8 003C2A08 54 64 10 3A */ slwi r4, r3, 2 -/* 803C5AAC 003C2A0C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C5AB0 003C2A10 54 06 10 3A */ slwi r6, r0, 2 -/* 803C5AB4 003C2A14 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C5AB8 003C2A18 7C 87 23 78 */ mr r7, r4 -/* 803C5ABC 003C2A1C 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5AC0 003C2A20 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C5AC4 003C2A24 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5AC8 003C2A28 7C C7 32 14 */ add r6, r7, r6 -/* 803C5ACC 003C2A2C 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C5AD0 003C2A30 38 00 00 03 */ li r0, 3 -/* 803C5AD4 003C2A34 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5AD8 003C2A38 7C A8 3A 14 */ add r5, r8, r7 -/* 803C5ADC 003C2A3C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5AE0 003C2A40 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C5AE4 003C2A44 7C 88 32 14 */ add r4, r8, r6 -/* 803C5AE8 003C2A48 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C5AEC 003C2A4C 7C 09 03 A6 */ mtctr r0 -lbl_803C5AF0: -/* 803C5AF0 003C2A50 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C5AF4 003C2A54 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C5AF8 003C2A58 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C5AFC 003C2A5C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C5B00 003C2A60 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C5B04 003C2A64 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C5B08 003C2A68 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C5B0C 003C2A6C E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C5B10 003C2A70 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C5B14 003C2A74 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C5B18 003C2A78 39 29 00 08 */ addi r9, r9, 8 -/* 803C5B1C 003C2A7C 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C5B20 003C2A80 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C5B24 003C2A84 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C5B28 003C2A88 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C5B2C 003C2A8C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C5B30 003C2A90 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C5B34 003C2A94 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C5B38 003C2A98 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C5B3C 003C2A9C 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C5B40 003C2AA0 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C5B44 003C2AA4 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C5B48 003C2AA8 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C5B4C 003C2AAC E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C5B50 003C2AB0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C5B54 003C2AB4 38 E7 00 02 */ addi r7, r7, 2 -/* 803C5B58 003C2AB8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C5B5C 003C2ABC 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C5B60 003C2AC0 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C5B64 003C2AC4 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C5B68 003C2AC8 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C5B6C 003C2ACC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C5B70 003C2AD0 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C5B74 003C2AD4 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C5B78 003C2AD8 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C5B7C 003C2ADC 38 C6 00 02 */ addi r6, r6, 2 -/* 803C5B80 003C2AE0 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C5B84 003C2AE4 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5B88 003C2AE8 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C5B8C 003C2AEC 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C5B90 003C2AF0 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5B94 003C2AF4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5B98 003C2AF8 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5B9C 003C2AFC 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C5BA0 003C2B00 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5BA4 003C2B04 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5BA8 003C2B08 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5BAC 003C2B0C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C5BB0 003C2B10 7C A8 3A 14 */ add r5, r8, r7 -/* 803C5BB4 003C2B14 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C5BB8 003C2B18 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C5BBC 003C2B1C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C5BC0 003C2B20 7C 88 32 14 */ add r4, r8, r6 -/* 803C5BC4 003C2B24 42 00 FF 2C */ bdnz lbl_803C5AF0 -/* 803C5BC8 003C2B28 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C5BCC 003C2B2C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C5BD0 003C2B30 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C5BD4 003C2B34 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C5BD8 003C2B38 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C5BDC 003C2B3C E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C5BE0 003C2B40 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C5BE4 003C2B44 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C5BE8 003C2B48 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C5BEC 003C2B4C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C5BF0 003C2B50 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C5BF4 003C2B54 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C5BF8 003C2B58 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C5BFC 003C2B5C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C5C00 003C2B60 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C5C04 003C2B64 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C5C08 003C2B68 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C5C0C 003C2B6C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C5C10 003C2B70 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C5C14 003C2B74 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C5C18 003C2B78 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C5C1C 003C2B7C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C5C20 003C2B80 F0 04 60 18 */ psq_st f0, 24(r4), 0, qr6 -/* 803C5C24 003C2B84 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C5C28 003C2B88 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C5C2C 003C2B8C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C5C30 003C2B90 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C5C34 003C2B94 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C5C38 003C2B98 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C5C3C 003C2B9C F0 24 60 10 */ psq_st f1, 16(r4), 0, qr6 -/* 803C5C40 003C2BA0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C5C44 003C2BA4 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C5C48 003C2BA8 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5C4C 003C2BAC F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C5C50 003C2BB0 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C5C54 003C2BB4 F0 64 60 00 */ psq_st f3, 0(r4), 0, qr6 -/* 803C5C58 003C2BB8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5C5C 003C2BBC 80 1F 01 14 */ lwz r0, 0x114(r31) -/* 803C5C60 003C2BC0 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C5C64 003C2BC4 39 1F FF F8 */ addi r8, r31, -8 -/* 803C5C68 003C2BC8 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) -/* 803C5C6C 003C2BCC 88 04 06 8C */ lbz r0, 0x68c(r4) -/* 803C5C70 003C2BD0 54 00 40 2E */ slwi r0, r0, 8 -/* 803C5C74 003C2BD4 7C 04 02 14 */ add r0, r4, r0 -/* 803C5C78 003C2BD8 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C5C7C 003C2BDC 81 3F 01 2C */ lwz r9, 0x12c(r31) -/* 803C5C80 003C2BE0 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C5C84 003C2BE4 38 80 00 08 */ li r4, 8 -/* 803C5C88 003C2BE8 7C 89 03 A6 */ mtctr r4 -lbl_803C5C8C: -/* 803C5C8C 003C2BEC E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C5C90 003C2BF0 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5C94 003C2BF4 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C5C98 003C2BF8 80 09 00 08 */ lwz r0, 8(r9) -/* 803C5C9C 003C2BFC 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5CA0 003C2C00 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C5CA4 003C2C04 A0 89 00 02 */ lhz r4, 2(r9) -/* 803C5CA8 003C2C08 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C5CAC: -/* 803C5CAC 003C2C0C 2C 06 00 00 */ cmpwi r6, 0 -/* 803C5CB0 003C2C10 40 82 01 48 */ bne lbl_803C5DF8 -/* 803C5CB4 003C2C14 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C5CB8 003C2C18 2C 05 00 00 */ cmpwi r5, 0 -/* 803C5CBC 003C2C1C F0 88 00 08 */ psq_st f4, 8(r8), 0, qr0 -/* 803C5CC0 003C2C20 40 82 00 9C */ bne lbl_803C5D5C -/* 803C5CC4 003C2C24 F0 88 00 10 */ psq_st f4, 16(r8), 0, qr0 -/* 803C5CC8 003C2C28 2C 04 00 00 */ cmpwi r4, 0 -/* 803C5CCC 003C2C2C F0 88 00 18 */ psq_st f4, 24(r8), 0, qr0 -/* 803C5CD0 003C2C30 40 82 00 18 */ bne lbl_803C5CE8 -/* 803C5CD4 003C2C34 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5CD8 003C2C38 F4 88 00 20 */ psq_stu f4, 32(r8), 0, qr0 -/* 803C5CDC 003C2C3C 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C5CE0 003C2C40 42 00 FF AC */ bdnz lbl_803C5C8C -/* 803C5CE4 003C2C44 48 00 01 DC */ b lbl_803C5EC0 -lbl_803C5CE8: -/* 803C5CE8 003C2C48 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C5CEC 003C2C4C 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C5CF0 003C2C50 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5CF4 003C2C54 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C5CF8 003C2C58 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C5CFC 003C2C5C 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C5D00 003C2C60 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C5D04 003C2C64 A0 89 00 02 */ lhz r4, 2(r9) -/* 803C5D08 003C2C68 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C5D0C 003C2C6C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5D10 003C2C70 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C5D14 003C2C74 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C5D18 003C2C78 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C5D1C 003C2C7C 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C5D20 003C2C80 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C5D24 003C2C84 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C5D28 003C2C88 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C5D2C 003C2C8C 80 09 00 08 */ lwz r0, 8(r9) -/* 803C5D30 003C2C90 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C5D34 003C2C94 F5 08 00 08 */ psq_stu f8, 8(r8), 0, qr0 -/* 803C5D38 003C2C98 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C5D3C 003C2C9C F4 68 00 08 */ psq_stu f3, 8(r8), 0, qr0 -/* 803C5D40 003C2CA0 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C5D44 003C2CA4 7C C6 03 78 */ or r6, r6, r0 -/* 803C5D48 003C2CA8 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 -/* 803C5D4C 003C2CAC 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5D50 003C2CB0 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 -/* 803C5D54 003C2CB4 42 00 FF 58 */ bdnz lbl_803C5CAC -/* 803C5D58 003C2CB8 48 00 01 68 */ b lbl_803C5EC0 -lbl_803C5D5C: -/* 803C5D5C 003C2CBC E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 -/* 803C5D60 003C2CC0 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C5D64 003C2CC4 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C5D68 003C2CC8 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C5D6C 003C2CCC 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5D70 003C2CD0 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C5D74 003C2CD4 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C5D78 003C2CD8 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C5D7C 003C2CDC 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C5D80 003C2CE0 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C5D84 003C2CE4 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C5D88 003C2CE8 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C5D8C 003C2CEC 80 09 00 08 */ lwz r0, 8(r9) -/* 803C5D90 003C2CF0 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C5D94 003C2CF4 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C5D98 003C2CF8 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C5D9C 003C2CFC 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C5DA0 003C2D00 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C5DA4 003C2D04 A0 89 00 02 */ lhz r4, 2(r9) -/* 803C5DA8 003C2D08 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C5DAC 003C2D0C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C5DB0 003C2D10 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C5DB4 003C2D14 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C5DB8 003C2D18 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C5DBC 003C2D1C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5DC0 003C2D20 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C5DC4 003C2D24 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C5DC8 003C2D28 F4 48 00 08 */ psq_stu f2, 8(r8), 0, qr0 -/* 803C5DCC 003C2D2C 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C5DD0 003C2D30 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C5DD4 003C2D34 7C C6 03 78 */ or r6, r6, r0 -/* 803C5DD8 003C2D38 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 -/* 803C5DDC 003C2D3C 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C5DE0 003C2D40 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C5DE4 003C2D44 F4 28 00 08 */ psq_stu f1, 8(r8), 0, qr0 -/* 803C5DE8 003C2D48 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5DEC 003C2D4C F5 68 00 08 */ psq_stu f11, 8(r8), 0, qr0 -/* 803C5DF0 003C2D50 42 00 FE BC */ bdnz lbl_803C5CAC -/* 803C5DF4 003C2D54 48 00 00 CC */ b lbl_803C5EC0 -lbl_803C5DF8: -/* 803C5DF8 003C2D58 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 -/* 803C5DFC 003C2D5C E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C5E00 003C2D60 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C5E04 003C2D64 E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 -/* 803C5E08 003C2D68 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C5E0C 003C2D6C 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C5E10 003C2D70 E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 -/* 803C5E14 003C2D74 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C5E18 003C2D78 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C5E1C 003C2D7C 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C5E20 003C2D80 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C5E24 003C2D84 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C5E28 003C2D88 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C5E2C 003C2D8C 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C5E30 003C2D90 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C5E34 003C2D94 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C5E38 003C2D98 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C5E3C 003C2D9C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C5E40 003C2DA0 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C5E44 003C2DA4 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C5E48 003C2DA8 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C5E4C 003C2DAC 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C5E50 003C2DB0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C5E54 003C2DB4 80 09 00 08 */ lwz r0, 8(r9) -/* 803C5E58 003C2DB8 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C5E5C 003C2DBC 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C5E60 003C2DC0 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C5E64 003C2DC4 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C5E68 003C2DC8 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C5E6C 003C2DCC 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C5E70 003C2DD0 A0 89 00 02 */ lhz r4, 2(r9) -/* 803C5E74 003C2DD4 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C5E78 003C2DD8 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C5E7C 003C2DDC E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C5E80 003C2DE0 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C5E84 003C2DE4 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C5E88 003C2DE8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C5E8C 003C2DEC 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C5E90 003C2DF0 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C5E94 003C2DF4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C5E98 003C2DF8 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C5E9C 003C2DFC 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C5EA0 003C2E00 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C5EA4 003C2E04 F5 88 00 08 */ psq_stu f12, 8(r8), 0, qr0 -/* 803C5EA8 003C2E08 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C5EAC 003C2E0C F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 -/* 803C5EB0 003C2E10 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 -/* 803C5EB4 003C2E14 7C C6 03 78 */ or r6, r6, r0 -/* 803C5EB8 003C2E18 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 -/* 803C5EBC 003C2E1C 42 00 FD F0 */ bdnz lbl_803C5CAC -lbl_803C5EC0: -/* 803C5EC0 003C2E20 80 ED B1 00 */ lwz r7, lbl_805A9CC0@sda21(r13) -/* 803C5EC4 003C2E24 7F E8 FB 78 */ mr r8, r31 -/* 803C5EC8 003C2E28 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C5ECC 003C2E2C E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 -/* 803C5ED0 003C2E30 54 63 10 3A */ slwi r3, r3, 2 -/* 803C5ED4 003C2E34 E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 -/* 803C5ED8 003C2E38 54 05 10 3A */ slwi r5, r0, 2 -/* 803C5EDC 003C2E3C E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 -/* 803C5EE0 003C2E40 7C 66 1B 78 */ mr r6, r3 -/* 803C5EE4 003C2E44 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5EE8 003C2E48 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 -/* 803C5EEC 003C2E4C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5EF0 003C2E50 7C A6 2A 14 */ add r5, r6, r5 -/* 803C5EF4 003C2E54 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C5EF8 003C2E58 38 00 00 03 */ li r0, 3 -/* 803C5EFC 003C2E5C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5F00 003C2E60 7C 87 32 14 */ add r4, r7, r6 -/* 803C5F04 003C2E64 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5F08 003C2E68 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C5F0C 003C2E6C 7C 67 2A 14 */ add r3, r7, r5 -/* 803C5F10 003C2E70 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C5F14 003C2E74 7C 09 03 A6 */ mtctr r0 -lbl_803C5F18: -/* 803C5F18 003C2E78 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 -/* 803C5F1C 003C2E7C 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C5F20 003C2E80 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 -/* 803C5F24 003C2E84 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C5F28 003C2E88 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C5F2C 003C2E8C E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 -/* 803C5F30 003C2E90 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C5F34 003C2E94 E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 -/* 803C5F38 003C2E98 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C5F3C 003C2E9C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C5F40 003C2EA0 39 08 00 08 */ addi r8, r8, 8 -/* 803C5F44 003C2EA4 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C5F48 003C2EA8 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C5F4C 003C2EAC E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 -/* 803C5F50 003C2EB0 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C5F54 003C2EB4 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C5F58 003C2EB8 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C5F5C 003C2EBC E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 -/* 803C5F60 003C2EC0 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C5F64 003C2EC4 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C5F68 003C2EC8 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 -/* 803C5F6C 003C2ECC 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C5F70 003C2ED0 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C5F74 003C2ED4 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 -/* 803C5F78 003C2ED8 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C5F7C 003C2EDC 38 C6 00 02 */ addi r6, r6, 2 -/* 803C5F80 003C2EE0 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 -/* 803C5F84 003C2EE4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C5F88 003C2EE8 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C5F8C 003C2EEC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C5F90 003C2EF0 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C5F94 003C2EF4 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C5F98 003C2EF8 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C5F9C 003C2EFC 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C5FA0 003C2F00 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 -/* 803C5FA4 003C2F04 38 A5 00 02 */ addi r5, r5, 2 -/* 803C5FA8 003C2F08 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C5FAC 003C2F0C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C5FB0 003C2F10 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 -/* 803C5FB4 003C2F14 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C5FB8 003C2F18 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C5FBC 003C2F1C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C5FC0 003C2F20 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C5FC4 003C2F24 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C5FC8 003C2F28 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C5FCC 003C2F2C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C5FD0 003C2F30 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C5FD4 003C2F34 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C5FD8 003C2F38 7C 87 32 14 */ add r4, r7, r6 -/* 803C5FDC 003C2F3C 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C5FE0 003C2F40 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C5FE4 003C2F44 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C5FE8 003C2F48 7C 67 2A 14 */ add r3, r7, r5 -/* 803C5FEC 003C2F4C 42 00 FF 2C */ bdnz lbl_803C5F18 -/* 803C5FF0 003C2F50 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 -/* 803C5FF4 003C2F54 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C5FF8 003C2F58 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 -/* 803C5FFC 003C2F5C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C6000 003C2F60 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6004 003C2F64 E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 -/* 803C6008 003C2F68 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C600C 003C2F6C E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 -/* 803C6010 003C2F70 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6014 003C2F74 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C6018 003C2F78 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C601C 003C2F7C 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C6020 003C2F80 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6024 003C2F84 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6028 003C2F88 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C602C 003C2F8C 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C6030 003C2F90 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6034 003C2F94 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C6038 003C2F98 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C603C 003C2F9C F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 -/* 803C6040 003C2FA0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6044 003C2FA4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C6048 003C2FA8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C604C 003C2FAC 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C6050 003C2FB0 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C6054 003C2FB4 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C6058 003C2FB8 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C605C 003C2FBC 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C6060 003C2FC0 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C6064 003C2FC4 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C6068 003C2FC8 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 -/* 803C606C 003C2FCC 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C6070 003C2FD0 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C6074 003C2FD4 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 -/* 803C6078 003C2FD8 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C607C 003C2FDC F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C6080 003C2FE0 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C6084 003C2FE4 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C6088 003C2FE8 88 04 06 A9 */ lbz r0, 0x6a9(r4) -/* 803C608C 003C2FEC 28 00 00 00 */ cmplwi r0, 0 -/* 803C6090 003C2FF0 41 82 00 74 */ beq lbl_803C6104 -/* 803C6094 003C2FF4 A0 64 06 AC */ lhz r3, 0x6ac(r4) -/* 803C6098 003C2FF8 38 03 FF FF */ addi r0, r3, -1 -/* 803C609C 003C2FFC B0 04 06 AC */ sth r0, 0x6ac(r4) -/* 803C60A0 003C3000 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C60A4 003C3004 A0 03 06 AC */ lhz r0, 0x6ac(r3) -/* 803C60A8 003C3008 28 00 00 00 */ cmplwi r0, 0 -/* 803C60AC 003C300C 40 82 00 58 */ bne lbl_803C6104 -/* 803C60B0 003C3010 A0 03 06 AA */ lhz r0, 0x6aa(r3) -/* 803C60B4 003C3014 B0 03 06 AC */ sth r0, 0x6ac(r3) -/* 803C60B8 003C3018 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C60BC 003C301C 80 64 06 A4 */ lwz r3, 0x6a4(r4) -/* 803C60C0 003C3020 38 03 00 06 */ addi r0, r3, 6 -/* 803C60C4 003C3024 54 03 00 38 */ rlwinm r3, r0, 0, 0, 0x1c -/* 803C60C8 003C3028 38 03 00 01 */ addi r0, r3, 1 -/* 803C60CC 003C302C 90 04 06 A4 */ stw r0, 0x6a4(r4) -/* 803C60D0 003C3030 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C60D4 003C3034 80 03 06 A4 */ lwz r0, 0x6a4(r3) -/* 803C60D8 003C3038 28 00 00 20 */ cmplwi r0, 0x20 -/* 803C60DC 003C303C 40 81 00 0C */ ble lbl_803C60E8 -/* 803C60E0 003C3040 38 00 00 21 */ li r0, 0x21 -/* 803C60E4 003C3044 90 03 06 A4 */ stw r0, 0x6a4(r3) -lbl_803C60E8: -/* 803C60E8 003C3048 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C60EC 003C304C 38 00 00 00 */ li r0, 0 -/* 803C60F0 003C3050 B0 03 06 84 */ sth r0, 0x684(r3) -/* 803C60F4 003C3054 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C60F8 003C3058 B0 03 06 8A */ sth r0, 0x68a(r3) -/* 803C60FC 003C305C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6100 003C3060 B0 03 06 90 */ sth r0, 0x690(r3) -lbl_803C6104: -/* 803C6104 003C3064 3B DE 00 01 */ addi r30, r30, 1 -lbl_803C6108: -/* 803C6108 003C3068 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C610C 003C306C 57 C4 06 3E */ clrlwi r4, r30, 0x18 -/* 803C6110 003C3070 A0 03 06 96 */ lhz r0, 0x696(r3) -/* 803C6114 003C3074 7C 04 00 00 */ cmpw r4, r0 -/* 803C6118 003C3078 41 80 E6 60 */ blt lbl_803C4778 -/* 803C611C 003C307C 80 63 06 B0 */ lwz r3, 0x6b0(r3) -/* 803C6120 003C3080 38 A0 28 00 */ li r5, 0x2800 -/* 803C6124 003C3084 80 9F 01 0C */ lwz r4, 0x10c(r31) -/* 803C6128 003C3088 4B FB 8C E5 */ bl LCStoreData -/* 803C612C 003C308C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6130 003C3090 38 A0 0A 00 */ li r5, 0xa00 -/* 803C6134 003C3094 80 9F 01 10 */ lwz r4, 0x110(r31) -/* 803C6138 003C3098 80 63 06 B4 */ lwz r3, 0x6b4(r3) -/* 803C613C 003C309C 4B FB 8C D1 */ bl LCStoreData -/* 803C6140 003C30A0 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6144 003C30A4 38 A0 0A 00 */ li r5, 0xa00 -/* 803C6148 003C30A8 80 9F 01 14 */ lwz r4, 0x114(r31) -/* 803C614C 003C30AC 80 63 06 B8 */ lwz r3, 0x6b8(r3) -/* 803C6150 003C30B0 4B FB 8C BD */ bl LCStoreData -/* 803C6154 003C30B4 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C6158 003C30B8 80 64 06 B0 */ lwz r3, 0x6b0(r4) -/* 803C615C 003C30BC 38 03 28 00 */ addi r0, r3, 0x2800 -/* 803C6160 003C30C0 90 04 06 B0 */ stw r0, 0x6b0(r4) -/* 803C6164 003C30C4 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C6168 003C30C8 80 64 06 B4 */ lwz r3, 0x6b4(r4) -/* 803C616C 003C30CC 38 03 0A 00 */ addi r0, r3, 0xa00 -/* 803C6170 003C30D0 90 04 06 B4 */ stw r0, 0x6b4(r4) -/* 803C6174 003C30D4 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C6178 003C30D8 80 64 06 B8 */ lwz r3, 0x6b8(r4) -/* 803C617C 003C30DC 38 03 0A 00 */ addi r0, r3, 0xa00 -/* 803C6180 003C30E0 90 04 06 B8 */ stw r0, 0x6b8(r4) -/* 803C6184 003C30E4 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 803C6188 003C30E8 CB E1 00 30 */ lfd f31, 0x30(r1) -/* 803C618C 003C30EC CB C1 00 28 */ lfd f30, 0x28(r1) -/* 803C6190 003C30F0 CB A1 00 20 */ lfd f29, 0x20(r1) -/* 803C6194 003C30F4 CB 81 00 18 */ lfd f28, 0x18(r1) -/* 803C6198 003C30F8 CB 61 00 10 */ lfd f27, 0x10(r1) -/* 803C619C 003C30FC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803C61A0 003C3100 83 C1 00 08 */ lwz r30, 8(r1) -/* 803C61A4 003C3104 38 21 00 38 */ addi r1, r1, 0x38 -/* 803C61A8 003C3108 7C 08 03 A6 */ mtlr r0 -/* 803C61AC 003C310C 4E 80 00 20 */ blr - -.global __THPDecompressiMCURowNxN -__THPDecompressiMCURowNxN: -/* 803C61B0 003C3110 7C 08 02 A6 */ mflr r0 -/* 803C61B4 003C3114 3C 80 80 57 */ lis r4, lbl_80569F60@ha -/* 803C61B8 003C3118 90 01 00 04 */ stw r0, 4(r1) -/* 803C61BC 003C311C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 803C61C0 003C3120 DB E1 00 38 */ stfd f31, 0x38(r1) -/* 803C61C4 003C3124 DB C1 00 30 */ stfd f30, 0x30(r1) -/* 803C61C8 003C3128 DB A1 00 28 */ stfd f29, 0x28(r1) -/* 803C61CC 003C312C DB 81 00 20 */ stfd f28, 0x20(r1) -/* 803C61D0 003C3130 DB 61 00 18 */ stfd f27, 0x18(r1) -/* 803C61D4 003C3134 93 E1 00 14 */ stw r31, 0x14(r1) -/* 803C61D8 003C3138 93 C1 00 10 */ stw r30, 0x10(r1) -/* 803C61DC 003C313C 3B C4 9F 60 */ addi r30, r4, lbl_80569F60@l -/* 803C61E0 003C3140 93 A1 00 0C */ stw r29, 0xc(r1) -/* 803C61E4 003C3144 93 81 00 08 */ stw r28, 8(r1) -/* 803C61E8 003C3148 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C61EC 003C314C A3 83 06 92 */ lhz r28, 0x692(r3) -/* 803C61F0 003C3150 38 60 00 03 */ li r3, 3 -/* 803C61F4 003C3154 4B FB 8C D1 */ bl LCQueueWait -/* 803C61F8 003C3158 C3 62 D7 28 */ lfs f27, lbl_805AF448@sda21(r2) -/* 803C61FC 003C315C 57 9F F8 7E */ srwi r31, r28, 1 -/* 803C6200 003C3160 C3 82 D7 2C */ lfs f28, lbl_805AF44C@sda21(r2) -/* 803C6204 003C3164 3B A0 00 00 */ li r29, 0 -/* 803C6208 003C3168 C3 A2 D7 30 */ lfs f29, lbl_805AF450@sda21(r2) -/* 803C620C 003C316C C3 C2 D7 34 */ lfs f30, lbl_805AF454@sda21(r2) -/* 803C6210 003C3170 C3 E2 D7 38 */ lfs f31, lbl_805AF458@sda21(r2) -/* 803C6214 003C3174 48 00 19 8C */ b lbl_803C7BA0 -lbl_803C6218: -/* 803C6218 003C3178 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C621C 003C317C 80 9E 01 18 */ lwz r4, 0x118(r30) -/* 803C6220 003C3180 48 00 1A 3D */ bl __THPHuffDecodeDCTCompY -/* 803C6224 003C3184 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6228 003C3188 80 9E 01 1C */ lwz r4, 0x11c(r30) -/* 803C622C 003C318C 48 00 1A 31 */ bl __THPHuffDecodeDCTCompY -/* 803C6230 003C3190 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6234 003C3194 80 9E 01 20 */ lwz r4, 0x120(r30) -/* 803C6238 003C3198 48 00 1A 25 */ bl __THPHuffDecodeDCTCompY -/* 803C623C 003C319C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6240 003C31A0 80 9E 01 24 */ lwz r4, 0x124(r30) -/* 803C6244 003C31A4 48 00 1A 19 */ bl __THPHuffDecodeDCTCompY -/* 803C6248 003C31A8 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C624C 003C31AC 80 9E 01 28 */ lwz r4, 0x128(r30) -/* 803C6250 003C31B0 48 00 20 89 */ bl __THPHuffDecodeDCTCompU -/* 803C6254 003C31B4 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C6258 003C31B8 80 9E 01 2C */ lwz r4, 0x12c(r30) -/* 803C625C 003C31BC 48 00 27 25 */ bl __THPHuffDecodeDCTCompV -/* 803C6260 003C31C0 80 1E 01 0C */ lwz r0, 0x10c(r30) -/* 803C6264 003C31C4 57 A4 25 36 */ rlwinm r4, r29, 4, 0x14, 0x1b -/* 803C6268 003C31C8 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C626C 003C31CC 38 7E FF F8 */ addi r3, r30, -8 -/* 803C6270 003C31D0 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) -/* 803C6274 003C31D4 93 8D B1 20 */ stw r28, lbl_805A9CE0@sda21(r13) -/* 803C6278 003C31D8 88 05 06 80 */ lbz r0, 0x680(r5) -/* 803C627C 003C31DC 54 00 40 2E */ slwi r0, r0, 8 -/* 803C6280 003C31E0 7C 05 02 14 */ add r0, r5, r0 -/* 803C6284 003C31E4 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C6288 003C31E8 81 3E 01 18 */ lwz r9, 0x118(r30) -/* 803C628C 003C31EC 81 0D B1 40 */ lwz r8, lbl_805A9D00@sda21(r13) -/* 803C6290 003C31F0 38 A0 00 08 */ li r5, 8 -/* 803C6294 003C31F4 7C A9 03 A6 */ mtctr r5 -lbl_803C6298: -/* 803C6298 003C31F8 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C629C 003C31FC E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 -/* 803C62A0 003C3200 80 E9 00 0C */ lwz r7, 0xc(r9) -/* 803C62A4 003C3204 80 09 00 08 */ lwz r0, 8(r9) -/* 803C62A8 003C3208 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C62AC 003C320C 80 C9 00 04 */ lwz r6, 4(r9) -/* 803C62B0 003C3210 A0 A9 00 02 */ lhz r5, 2(r9) -/* 803C62B4 003C3214 7C E7 03 79 */ or. r7, r7, r0 -lbl_803C62B8: -/* 803C62B8 003C3218 2C 07 00 00 */ cmpwi r7, 0 -/* 803C62BC 003C321C 40 82 01 48 */ bne lbl_803C6404 -/* 803C62C0 003C3220 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C62C4 003C3224 2C 06 00 00 */ cmpwi r6, 0 -/* 803C62C8 003C3228 F0 83 00 08 */ psq_st f4, 8(r3), 0, qr0 -/* 803C62CC 003C322C 40 82 00 9C */ bne lbl_803C6368 -/* 803C62D0 003C3230 F0 83 00 10 */ psq_st f4, 16(r3), 0, qr0 -/* 803C62D4 003C3234 2C 05 00 00 */ cmpwi r5, 0 -/* 803C62D8 003C3238 F0 83 00 18 */ psq_st f4, 24(r3), 0, qr0 -/* 803C62DC 003C323C 40 82 00 18 */ bne lbl_803C62F4 -/* 803C62E0 003C3240 39 08 00 20 */ addi r8, r8, 0x20 -/* 803C62E4 003C3244 F4 83 00 20 */ psq_stu f4, 32(r3), 0, qr0 -/* 803C62E8 003C3248 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C62EC 003C324C 42 00 FF AC */ bdnz lbl_803C6298 -/* 803C62F0 003C3250 48 00 01 DC */ b lbl_803C64CC -lbl_803C62F4: -/* 803C62F4 003C3254 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C62F8 003C3258 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C62FC 003C325C 39 08 00 20 */ addi r8, r8, 0x20 -/* 803C6300 003C3260 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C6304 003C3264 80 C9 00 04 */ lwz r6, 4(r9) -/* 803C6308 003C3268 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C630C 003C326C 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C6310 003C3270 A0 A9 00 02 */ lhz r5, 2(r9) -/* 803C6314 003C3274 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C6318 003C3278 E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 -/* 803C631C 003C327C 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C6320 003C3280 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C6324 003C3284 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C6328 003C3288 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C632C 003C328C 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C6330 003C3290 80 E9 00 0C */ lwz r7, 0xc(r9) -/* 803C6334 003C3294 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C6338 003C3298 80 09 00 08 */ lwz r0, 8(r9) -/* 803C633C 003C329C 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C6340 003C32A0 F5 03 00 08 */ psq_stu f8, 8(r3), 0, qr0 -/* 803C6344 003C32A4 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C6348 003C32A8 F4 63 00 08 */ psq_stu f3, 8(r3), 0, qr0 -/* 803C634C 003C32AC 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C6350 003C32B0 7C E7 03 78 */ or r7, r7, r0 -/* 803C6354 003C32B4 F5 23 00 08 */ psq_stu f9, 8(r3), 0, qr0 -/* 803C6358 003C32B8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C635C 003C32BC F5 43 00 08 */ psq_stu f10, 8(r3), 0, qr0 -/* 803C6360 003C32C0 42 00 FF 58 */ bdnz lbl_803C62B8 -/* 803C6364 003C32C4 48 00 01 68 */ b lbl_803C64CC -lbl_803C6368: -/* 803C6368 003C32C8 E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 -/* 803C636C 003C32CC E0 48 00 08 */ psq_l f2, 8(r8), 0, qr0 -/* 803C6370 003C32D0 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C6374 003C32D4 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C6378 003C32D8 39 08 00 20 */ addi r8, r8, 0x20 -/* 803C637C 003C32DC 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C6380 003C32E0 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C6384 003C32E4 80 E9 00 0C */ lwz r7, 0xc(r9) -/* 803C6388 003C32E8 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C638C 003C32EC 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C6390 003C32F0 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C6394 003C32F4 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C6398 003C32F8 80 09 00 08 */ lwz r0, 8(r9) -/* 803C639C 003C32FC 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C63A0 003C3300 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C63A4 003C3304 80 C9 00 04 */ lwz r6, 4(r9) -/* 803C63A8 003C3308 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C63AC 003C330C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C63B0 003C3310 A0 A9 00 02 */ lhz r5, 2(r9) -/* 803C63B4 003C3314 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C63B8 003C3318 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C63BC 003C331C E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C63C0 003C3320 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C63C4 003C3324 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C63C8 003C3328 E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 -/* 803C63CC 003C332C 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C63D0 003C3330 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C63D4 003C3334 F4 43 00 08 */ psq_stu f2, 8(r3), 0, qr0 -/* 803C63D8 003C3338 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C63DC 003C333C 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C63E0 003C3340 7C E7 03 78 */ or r7, r7, r0 -/* 803C63E4 003C3344 F4 83 00 08 */ psq_stu f4, 8(r3), 0, qr0 -/* 803C63E8 003C3348 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C63EC 003C334C 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C63F0 003C3350 F4 23 00 08 */ psq_stu f1, 8(r3), 0, qr0 -/* 803C63F4 003C3354 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C63F8 003C3358 F5 63 00 08 */ psq_stu f11, 8(r3), 0, qr0 -/* 803C63FC 003C335C 42 00 FE BC */ bdnz lbl_803C62B8 -/* 803C6400 003C3360 48 00 00 CC */ b lbl_803C64CC -lbl_803C6404: -/* 803C6404 003C3364 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 -/* 803C6408 003C3368 E1 48 00 08 */ psq_l f10, 8(r8), 0, qr0 -/* 803C640C 003C336C 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C6410 003C3370 E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 -/* 803C6414 003C3374 E1 28 00 10 */ psq_l f9, 16(r8), 0, qr0 -/* 803C6418 003C3378 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C641C 003C337C E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 -/* 803C6420 003C3380 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C6424 003C3384 E1 08 00 18 */ psq_l f8, 24(r8), 0, qr0 -/* 803C6428 003C3388 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C642C 003C338C 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C6430 003C3390 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C6434 003C3394 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C6438 003C3398 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C643C 003C339C 39 08 00 20 */ addi r8, r8, 0x20 -/* 803C6440 003C33A0 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C6444 003C33A4 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C6448 003C33A8 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C644C 003C33AC 80 E9 00 0C */ lwz r7, 0xc(r9) -/* 803C6450 003C33B0 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C6454 003C33B4 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C6458 003C33B8 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C645C 003C33BC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6460 003C33C0 80 09 00 08 */ lwz r0, 8(r9) -/* 803C6464 003C33C4 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C6468 003C33C8 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C646C 003C33CC 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C6470 003C33D0 80 C9 00 04 */ lwz r6, 4(r9) -/* 803C6474 003C33D4 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C6478 003C33D8 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C647C 003C33DC A0 A9 00 02 */ lhz r5, 2(r9) -/* 803C6480 003C33E0 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C6484 003C33E4 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C6488 003C33E8 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C648C 003C33EC 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C6490 003C33F0 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C6494 003C33F4 E0 C8 00 00 */ psq_l f6, 0(r8), 0, qr0 -/* 803C6498 003C33F8 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C649C 003C33FC 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C64A0 003C3400 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C64A4 003C3404 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C64A8 003C3408 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C64AC 003C340C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C64B0 003C3410 F5 83 00 08 */ psq_stu f12, 8(r3), 0, qr0 -/* 803C64B4 003C3414 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C64B8 003C3418 F5 23 00 08 */ psq_stu f9, 8(r3), 0, qr0 -/* 803C64BC 003C341C F5 43 00 08 */ psq_stu f10, 8(r3), 0, qr0 -/* 803C64C0 003C3420 7C E7 03 78 */ or r7, r7, r0 -/* 803C64C4 003C3424 F4 83 00 08 */ psq_stu f4, 8(r3), 0, qr0 -/* 803C64C8 003C3428 42 00 FD F0 */ bdnz lbl_803C62B8 -lbl_803C64CC: -/* 803C64CC 003C342C 81 2D B1 00 */ lwz r9, lbl_805A9CC0@sda21(r13) -/* 803C64D0 003C3430 7F C3 F3 78 */ mr r3, r30 -/* 803C64D4 003C3434 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C64D8 003C3438 E0 E3 00 00 */ psq_l f7, 0(r3), 0, qr0 -/* 803C64DC 003C343C 54 85 10 3A */ slwi r5, r4, 2 -/* 803C64E0 003C3440 E0 C3 00 80 */ psq_l f6, 128(r3), 0, qr0 -/* 803C64E4 003C3444 54 07 10 3A */ slwi r7, r0, 2 -/* 803C64E8 003C3448 E0 A3 00 40 */ psq_l f5, 64(r3), 0, qr0 -/* 803C64EC 003C344C 7C A8 2B 78 */ mr r8, r5 -/* 803C64F0 003C3450 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C64F4 003C3454 E0 83 00 C0 */ psq_l f4, 192(r3), 0, qr0 -/* 803C64F8 003C3458 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C64FC 003C345C 7C E8 3A 14 */ add r7, r8, r7 -/* 803C6500 003C3460 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C6504 003C3464 38 00 00 03 */ li r0, 3 -/* 803C6508 003C3468 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C650C 003C346C 7C C9 42 14 */ add r6, r9, r8 -/* 803C6510 003C3470 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C6514 003C3474 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C6518 003C3478 7C A9 3A 14 */ add r5, r9, r7 -/* 803C651C 003C347C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C6520 003C3480 7C 09 03 A6 */ mtctr r0 -lbl_803C6524: -/* 803C6524 003C3484 E1 63 00 20 */ psq_l f11, 32(r3), 0, qr0 -/* 803C6528 003C3488 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C652C 003C348C E1 43 00 60 */ psq_l f10, 96(r3), 0, qr0 -/* 803C6530 003C3490 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C6534 003C3494 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6538 003C3498 E1 23 00 A0 */ psq_l f9, 160(r3), 0, qr0 -/* 803C653C 003C349C 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C6540 003C34A0 E1 03 00 E0 */ psq_l f8, 224(r3), 0, qr0 -/* 803C6544 003C34A4 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6548 003C34A8 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C654C 003C34AC 38 63 00 08 */ addi r3, r3, 8 -/* 803C6550 003C34B0 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C6554 003C34B4 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C6558 003C34B8 E0 E3 00 00 */ psq_l f7, 0(r3), 0, qr0 -/* 803C655C 003C34BC 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6560 003C34C0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6564 003C34C4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C6568 003C34C8 E0 C3 00 80 */ psq_l f6, 128(r3), 0, qr0 -/* 803C656C 003C34CC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C6570 003C34D0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6574 003C34D4 E0 A3 00 40 */ psq_l f5, 64(r3), 0, qr0 -/* 803C6578 003C34D8 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C657C 003C34DC 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C6580 003C34E0 E0 83 00 C0 */ psq_l f4, 192(r3), 0, qr0 -/* 803C6584 003C34E4 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6588 003C34E8 39 08 00 02 */ addi r8, r8, 2 -/* 803C658C 003C34EC F0 46 60 00 */ psq_st f2, 0(r6), 0, qr6 -/* 803C6590 003C34F0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C6594 003C34F4 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C6598 003C34F8 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C659C 003C34FC 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C65A0 003C3500 F0 46 60 08 */ psq_st f2, 8(r6), 0, qr6 -/* 803C65A4 003C3504 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C65A8 003C3508 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C65AC 003C350C F0 66 60 10 */ psq_st f3, 16(r6), 0, qr6 -/* 803C65B0 003C3510 38 E7 00 02 */ addi r7, r7, 2 -/* 803C65B4 003C3514 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C65B8 003C3518 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C65BC 003C351C F0 46 60 18 */ psq_st f2, 24(r6), 0, qr6 -/* 803C65C0 003C3520 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C65C4 003C3524 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C65C8 003C3528 F0 65 60 00 */ psq_st f3, 0(r5), 0, qr6 -/* 803C65CC 003C352C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C65D0 003C3530 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C65D4 003C3534 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C65D8 003C3538 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C65DC 003C353C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C65E0 003C3540 F0 25 60 10 */ psq_st f1, 16(r5), 0, qr6 -/* 803C65E4 003C3544 7C C9 42 14 */ add r6, r9, r8 -/* 803C65E8 003C3548 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C65EC 003C354C F0 05 60 18 */ psq_st f0, 24(r5), 0, qr6 -/* 803C65F0 003C3550 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C65F4 003C3554 7C A9 3A 14 */ add r5, r9, r7 -/* 803C65F8 003C3558 42 00 FF 2C */ bdnz lbl_803C6524 -/* 803C65FC 003C355C E1 63 00 20 */ psq_l f11, 32(r3), 0, qr0 -/* 803C6600 003C3560 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C6604 003C3564 E1 43 00 60 */ psq_l f10, 96(r3), 0, qr0 -/* 803C6608 003C3568 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C660C 003C356C 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6610 003C3570 E1 23 00 A0 */ psq_l f9, 160(r3), 0, qr0 -/* 803C6614 003C3574 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C6618 003C3578 E1 03 00 E0 */ psq_l f8, 224(r3), 0, qr0 -/* 803C661C 003C357C 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6620 003C3580 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C6624 003C3584 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C6628 003C3588 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C662C 003C358C 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6630 003C3590 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6634 003C3594 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C6638 003C3598 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C663C 003C359C 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6640 003C35A0 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C6644 003C35A4 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C6648 003C35A8 F0 46 60 00 */ psq_st f2, 0(r6), 0, qr6 -/* 803C664C 003C35AC 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6650 003C35B0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C6654 003C35B4 F0 05 60 18 */ psq_st f0, 24(r5), 0, qr6 -/* 803C6658 003C35B8 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C665C 003C35BC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C6660 003C35C0 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C6664 003C35C4 F0 46 60 08 */ psq_st f2, 8(r6), 0, qr6 -/* 803C6668 003C35C8 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C666C 003C35CC 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C6670 003C35D0 F0 25 60 10 */ psq_st f1, 16(r5), 0, qr6 -/* 803C6674 003C35D4 F0 66 60 10 */ psq_st f3, 16(r6), 0, qr6 -/* 803C6678 003C35D8 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C667C 003C35DC 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C6680 003C35E0 F0 46 60 18 */ psq_st f2, 24(r6), 0, qr6 -/* 803C6684 003C35E4 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C6688 003C35E8 F0 65 60 00 */ psq_st f3, 0(r5), 0, qr6 -/* 803C668C 003C35EC F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C6690 003C35F0 81 1E 01 1C */ lwz r8, 0x11c(r30) -/* 803C6694 003C35F4 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C6698 003C35F8 39 44 00 08 */ addi r10, r4, 8 -/* 803C669C 003C35FC 39 3E FF F8 */ addi r9, r30, -8 -/* 803C66A0 003C3600 38 60 00 08 */ li r3, 8 -/* 803C66A4 003C3604 7C 69 03 A6 */ mtctr r3 -lbl_803C66A8: -/* 803C66A8 003C3608 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C66AC 003C360C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C66B0 003C3610 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C66B4 003C3614 80 08 00 08 */ lwz r0, 8(r8) -/* 803C66B8 003C3618 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C66BC 003C361C 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C66C0 003C3620 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C66C4 003C3624 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C66C8: -/* 803C66C8 003C3628 2C 06 00 00 */ cmpwi r6, 0 -/* 803C66CC 003C362C 40 82 01 48 */ bne lbl_803C6814 -/* 803C66D0 003C3630 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C66D4 003C3634 2C 05 00 00 */ cmpwi r5, 0 -/* 803C66D8 003C3638 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C66DC 003C363C 40 82 00 9C */ bne lbl_803C6778 -/* 803C66E0 003C3640 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C66E4 003C3644 2C 03 00 00 */ cmpwi r3, 0 -/* 803C66E8 003C3648 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C66EC 003C364C 40 82 00 18 */ bne lbl_803C6704 -/* 803C66F0 003C3650 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C66F4 003C3654 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C66F8 003C3658 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C66FC 003C365C 42 00 FF AC */ bdnz lbl_803C66A8 -/* 803C6700 003C3660 48 00 01 DC */ b lbl_803C68DC -lbl_803C6704: -/* 803C6704 003C3664 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6708 003C3668 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C670C 003C366C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6710 003C3670 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C6714 003C3674 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6718 003C3678 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C671C 003C367C 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C6720 003C3680 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6724 003C3684 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C6728 003C3688 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C672C 003C368C 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C6730 003C3690 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C6734 003C3694 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6738 003C3698 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C673C 003C369C 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C6740 003C36A0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6744 003C36A4 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C6748 003C36A8 80 08 00 08 */ lwz r0, 8(r8) -/* 803C674C 003C36AC 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C6750 003C36B0 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C6754 003C36B4 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C6758 003C36B8 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C675C 003C36BC 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C6760 003C36C0 7C C6 03 78 */ or r6, r6, r0 -/* 803C6764 003C36C4 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C6768 003C36C8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C676C 003C36CC F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C6770 003C36D0 42 00 FF 58 */ bdnz lbl_803C66C8 -/* 803C6774 003C36D4 48 00 01 68 */ b lbl_803C68DC -lbl_803C6778: -/* 803C6778 003C36D8 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C677C 003C36DC E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C6780 003C36E0 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6784 003C36E4 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C6788 003C36E8 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C678C 003C36EC 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C6790 003C36F0 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C6794 003C36F4 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6798 003C36F8 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C679C 003C36FC 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C67A0 003C3700 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C67A4 003C3704 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C67A8 003C3708 80 08 00 08 */ lwz r0, 8(r8) -/* 803C67AC 003C370C 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C67B0 003C3710 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C67B4 003C3714 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C67B8 003C3718 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C67BC 003C371C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C67C0 003C3720 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C67C4 003C3724 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C67C8 003C3728 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C67CC 003C372C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C67D0 003C3730 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C67D4 003C3734 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C67D8 003C3738 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C67DC 003C373C 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C67E0 003C3740 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C67E4 003C3744 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C67E8 003C3748 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C67EC 003C374C 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C67F0 003C3750 7C C6 03 78 */ or r6, r6, r0 -/* 803C67F4 003C3754 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C67F8 003C3758 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C67FC 003C375C 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C6800 003C3760 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C6804 003C3764 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6808 003C3768 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C680C 003C376C 42 00 FE BC */ bdnz lbl_803C66C8 -/* 803C6810 003C3770 48 00 00 CC */ b lbl_803C68DC -lbl_803C6814: -/* 803C6814 003C3774 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C6818 003C3778 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C681C 003C377C 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C6820 003C3780 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C6824 003C3784 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C6828 003C3788 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C682C 003C378C E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C6830 003C3790 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C6834 003C3794 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C6838 003C3798 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C683C 003C379C 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C6840 003C37A0 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C6844 003C37A4 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C6848 003C37A8 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C684C 003C37AC 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6850 003C37B0 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C6854 003C37B4 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C6858 003C37B8 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C685C 003C37BC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6860 003C37C0 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C6864 003C37C4 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C6868 003C37C8 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C686C 003C37CC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6870 003C37D0 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6874 003C37D4 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C6878 003C37D8 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C687C 003C37DC 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C6880 003C37E0 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6884 003C37E4 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C6888 003C37E8 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C688C 003C37EC A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6890 003C37F0 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C6894 003C37F4 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C6898 003C37F8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C689C 003C37FC 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C68A0 003C3800 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C68A4 003C3804 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C68A8 003C3808 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C68AC 003C380C 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C68B0 003C3810 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C68B4 003C3814 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C68B8 003C3818 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C68BC 003C381C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C68C0 003C3820 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C68C4 003C3824 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C68C8 003C3828 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C68CC 003C382C F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C68D0 003C3830 7C C6 03 78 */ or r6, r6, r0 -/* 803C68D4 003C3834 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C68D8 003C3838 42 00 FD F0 */ bdnz lbl_803C66C8 -lbl_803C68DC: -/* 803C68DC 003C383C 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C68E0 003C3840 7F C9 F3 78 */ mr r9, r30 -/* 803C68E4 003C3844 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C68E8 003C3848 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C68EC 003C384C 55 4A 10 3A */ slwi r10, r10, 2 -/* 803C68F0 003C3850 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C68F4 003C3854 54 06 10 3A */ slwi r6, r0, 2 -/* 803C68F8 003C3858 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C68FC 003C385C 7D 47 53 78 */ mr r7, r10 -/* 803C6900 003C3860 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C6904 003C3864 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C6908 003C3868 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C690C 003C386C 7C C7 32 14 */ add r6, r7, r6 -/* 803C6910 003C3870 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C6914 003C3874 38 00 00 03 */ li r0, 3 -/* 803C6918 003C3878 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C691C 003C387C 7C A8 3A 14 */ add r5, r8, r7 -/* 803C6920 003C3880 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C6924 003C3884 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C6928 003C3888 7C 68 32 14 */ add r3, r8, r6 -/* 803C692C 003C388C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C6930 003C3890 7C 09 03 A6 */ mtctr r0 -lbl_803C6934: -/* 803C6934 003C3894 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C6938 003C3898 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C693C 003C389C E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C6940 003C38A0 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C6944 003C38A4 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6948 003C38A8 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C694C 003C38AC 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C6950 003C38B0 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C6954 003C38B4 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6958 003C38B8 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C695C 003C38BC 39 29 00 08 */ addi r9, r9, 8 -/* 803C6960 003C38C0 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C6964 003C38C4 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C6968 003C38C8 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C696C 003C38CC 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6970 003C38D0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6974 003C38D4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C6978 003C38D8 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C697C 003C38DC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C6980 003C38E0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6984 003C38E4 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C6988 003C38E8 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C698C 003C38EC 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C6990 003C38F0 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C6994 003C38F4 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6998 003C38F8 38 E7 00 02 */ addi r7, r7, 2 -/* 803C699C 003C38FC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C69A0 003C3900 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C69A4 003C3904 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C69A8 003C3908 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C69AC 003C390C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C69B0 003C3910 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C69B4 003C3914 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C69B8 003C3918 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C69BC 003C391C F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C69C0 003C3920 38 C6 00 02 */ addi r6, r6, 2 -/* 803C69C4 003C3924 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C69C8 003C3928 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C69CC 003C392C F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C69D0 003C3930 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C69D4 003C3934 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C69D8 003C3938 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C69DC 003C393C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C69E0 003C3940 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C69E4 003C3944 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C69E8 003C3948 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C69EC 003C394C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C69F0 003C3950 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C69F4 003C3954 7C A8 3A 14 */ add r5, r8, r7 -/* 803C69F8 003C3958 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C69FC 003C395C F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C6A00 003C3960 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C6A04 003C3964 7C 68 32 14 */ add r3, r8, r6 -/* 803C6A08 003C3968 42 00 FF 2C */ bdnz lbl_803C6934 -/* 803C6A0C 003C396C E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C6A10 003C3970 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C6A14 003C3974 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C6A18 003C3978 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C6A1C 003C397C 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6A20 003C3980 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C6A24 003C3984 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C6A28 003C3988 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C6A2C 003C398C 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6A30 003C3990 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C6A34 003C3994 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C6A38 003C3998 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C6A3C 003C399C 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6A40 003C39A0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6A44 003C39A4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C6A48 003C39A8 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C6A4C 003C39AC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6A50 003C39B0 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C6A54 003C39B4 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C6A58 003C39B8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C6A5C 003C39BC 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6A60 003C39C0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C6A64 003C39C4 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C6A68 003C39C8 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C6A6C 003C39CC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C6A70 003C39D0 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C6A74 003C39D4 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C6A78 003C39D8 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C6A7C 003C39DC 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C6A80 003C39E0 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C6A84 003C39E4 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C6A88 003C39E8 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C6A8C 003C39EC 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C6A90 003C39F0 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C6A94 003C39F4 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C6A98 003C39F8 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C6A9C 003C39FC F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C6AA0 003C3A00 81 1E 01 20 */ lwz r8, 0x120(r30) -/* 803C6AA4 003C3A04 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C6AA8 003C3A08 39 3E FF F8 */ addi r9, r30, -8 -/* 803C6AAC 003C3A0C 38 60 00 08 */ li r3, 8 -/* 803C6AB0 003C3A10 7C 69 03 A6 */ mtctr r3 -lbl_803C6AB4: -/* 803C6AB4 003C3A14 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6AB8 003C3A18 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6ABC 003C3A1C 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6AC0 003C3A20 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6AC4 003C3A24 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6AC8 003C3A28 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6ACC 003C3A2C A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6AD0 003C3A30 7C C6 03 78 */ or r6, r6, r0 -lbl_803C6AD4: -/* 803C6AD4 003C3A34 2C 06 00 00 */ cmpwi r6, 0 -/* 803C6AD8 003C3A38 40 82 01 48 */ bne lbl_803C6C20 -/* 803C6ADC 003C3A3C 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C6AE0 003C3A40 2C 05 00 00 */ cmpwi r5, 0 -/* 803C6AE4 003C3A44 F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C6AE8 003C3A48 40 82 00 9C */ bne lbl_803C6B84 -/* 803C6AEC 003C3A4C F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C6AF0 003C3A50 2C 03 00 00 */ cmpwi r3, 0 -/* 803C6AF4 003C3A54 F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C6AF8 003C3A58 40 82 00 18 */ bne lbl_803C6B10 -/* 803C6AFC 003C3A5C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6B00 003C3A60 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C6B04 003C3A64 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6B08 003C3A68 42 00 FF AC */ bdnz lbl_803C6AB4 -/* 803C6B0C 003C3A6C 48 00 01 DC */ b lbl_803C6CE8 -lbl_803C6B10: -/* 803C6B10 003C3A70 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C6B14 003C3A74 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6B18 003C3A78 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C6B1C 003C3A7C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6B20 003C3A80 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C6B24 003C3A84 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6B28 003C3A88 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C6B2C 003C3A8C A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6B30 003C3A90 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C6B34 003C3A94 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6B38 003C3A98 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C6B3C 003C3A9C 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C6B40 003C3AA0 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6B44 003C3AA4 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C6B48 003C3AA8 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C6B4C 003C3AAC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6B50 003C3AB0 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C6B54 003C3AB4 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6B58 003C3AB8 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C6B5C 003C3ABC F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C6B60 003C3AC0 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C6B64 003C3AC4 F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C6B68 003C3AC8 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C6B6C 003C3ACC 7C C6 03 78 */ or r6, r6, r0 -/* 803C6B70 003C3AD0 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C6B74 003C3AD4 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6B78 003C3AD8 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C6B7C 003C3ADC 42 00 FF 58 */ bdnz lbl_803C6AD4 -/* 803C6B80 003C3AE0 48 00 01 68 */ b lbl_803C6CE8 -lbl_803C6B84: -/* 803C6B84 003C3AE4 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C6B88 003C3AE8 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C6B8C 003C3AEC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6B90 003C3AF0 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C6B94 003C3AF4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6B98 003C3AF8 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C6B9C 003C3AFC 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C6BA0 003C3B00 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6BA4 003C3B04 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C6BA8 003C3B08 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C6BAC 003C3B0C 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C6BB0 003C3B10 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C6BB4 003C3B14 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6BB8 003C3B18 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C6BBC 003C3B1C 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C6BC0 003C3B20 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6BC4 003C3B24 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C6BC8 003C3B28 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C6BCC 003C3B2C A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6BD0 003C3B30 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C6BD4 003C3B34 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C6BD8 003C3B38 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6BDC 003C3B3C 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C6BE0 003C3B40 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C6BE4 003C3B44 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6BE8 003C3B48 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C6BEC 003C3B4C 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C6BF0 003C3B50 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C6BF4 003C3B54 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C6BF8 003C3B58 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C6BFC 003C3B5C 7C C6 03 78 */ or r6, r6, r0 -/* 803C6C00 003C3B60 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C6C04 003C3B64 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C6C08 003C3B68 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C6C0C 003C3B6C F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C6C10 003C3B70 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6C14 003C3B74 F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C6C18 003C3B78 42 00 FE BC */ bdnz lbl_803C6AD4 -/* 803C6C1C 003C3B7C 48 00 00 CC */ b lbl_803C6CE8 -lbl_803C6C20: -/* 803C6C20 003C3B80 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C6C24 003C3B84 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C6C28 003C3B88 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C6C2C 003C3B8C E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C6C30 003C3B90 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C6C34 003C3B94 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C6C38 003C3B98 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C6C3C 003C3B9C 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C6C40 003C3BA0 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C6C44 003C3BA4 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6C48 003C3BA8 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C6C4C 003C3BAC 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C6C50 003C3BB0 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C6C54 003C3BB4 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C6C58 003C3BB8 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6C5C 003C3BBC 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C6C60 003C3BC0 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C6C64 003C3BC4 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C6C68 003C3BC8 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6C6C 003C3BCC 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C6C70 003C3BD0 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C6C74 003C3BD4 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C6C78 003C3BD8 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6C7C 003C3BDC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6C80 003C3BE0 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C6C84 003C3BE4 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C6C88 003C3BE8 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C6C8C 003C3BEC 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6C90 003C3BF0 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C6C94 003C3BF4 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C6C98 003C3BF8 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6C9C 003C3BFC 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C6CA0 003C3C00 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C6CA4 003C3C04 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6CA8 003C3C08 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C6CAC 003C3C0C 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C6CB0 003C3C10 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6CB4 003C3C14 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C6CB8 003C3C18 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C6CBC 003C3C1C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6CC0 003C3C20 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C6CC4 003C3C24 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C6CC8 003C3C28 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C6CCC 003C3C2C F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C6CD0 003C3C30 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C6CD4 003C3C34 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C6CD8 003C3C38 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C6CDC 003C3C3C 7C C6 03 78 */ or r6, r6, r0 -/* 803C6CE0 003C3C40 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C6CE4 003C3C44 42 00 FD F0 */ bdnz lbl_803C6AD4 -lbl_803C6CE8: -/* 803C6CE8 003C3C48 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C6CEC 003C3C4C 7F C9 F3 78 */ mr r9, r30 -/* 803C6CF0 003C3C50 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C6CF4 003C3C54 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C6CF8 003C3C58 54 07 18 38 */ slwi r7, r0, 3 -/* 803C6CFC 003C3C5C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C6D00 003C3C60 54 83 10 3A */ slwi r3, r4, 2 -/* 803C6D04 003C3C64 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C6D08 003C3C68 54 06 10 3A */ slwi r6, r0, 2 -/* 803C6D0C 003C3C6C 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C6D10 003C3C70 7C E7 1A 14 */ add r7, r7, r3 -/* 803C6D14 003C3C74 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C6D18 003C3C78 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C6D1C 003C3C7C 7C C7 32 14 */ add r6, r7, r6 -/* 803C6D20 003C3C80 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C6D24 003C3C84 38 00 00 03 */ li r0, 3 -/* 803C6D28 003C3C88 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C6D2C 003C3C8C 7C A8 3A 14 */ add r5, r8, r7 -/* 803C6D30 003C3C90 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C6D34 003C3C94 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C6D38 003C3C98 7C 68 32 14 */ add r3, r8, r6 -/* 803C6D3C 003C3C9C 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C6D40 003C3CA0 7C 09 03 A6 */ mtctr r0 -lbl_803C6D44: -/* 803C6D44 003C3CA4 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C6D48 003C3CA8 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C6D4C 003C3CAC E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C6D50 003C3CB0 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C6D54 003C3CB4 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6D58 003C3CB8 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C6D5C 003C3CBC 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C6D60 003C3CC0 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C6D64 003C3CC4 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6D68 003C3CC8 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C6D6C 003C3CCC 39 29 00 08 */ addi r9, r9, 8 -/* 803C6D70 003C3CD0 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C6D74 003C3CD4 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C6D78 003C3CD8 E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C6D7C 003C3CDC 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6D80 003C3CE0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6D84 003C3CE4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C6D88 003C3CE8 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C6D8C 003C3CEC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C6D90 003C3CF0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6D94 003C3CF4 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C6D98 003C3CF8 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C6D9C 003C3CFC 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C6DA0 003C3D00 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C6DA4 003C3D04 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6DA8 003C3D08 38 E7 00 02 */ addi r7, r7, 2 -/* 803C6DAC 003C3D0C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C6DB0 003C3D10 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C6DB4 003C3D14 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C6DB8 003C3D18 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C6DBC 003C3D1C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C6DC0 003C3D20 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C6DC4 003C3D24 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C6DC8 003C3D28 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C6DCC 003C3D2C F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C6DD0 003C3D30 38 C6 00 02 */ addi r6, r6, 2 -/* 803C6DD4 003C3D34 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C6DD8 003C3D38 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C6DDC 003C3D3C F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C6DE0 003C3D40 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C6DE4 003C3D44 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C6DE8 003C3D48 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C6DEC 003C3D4C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C6DF0 003C3D50 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C6DF4 003C3D54 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C6DF8 003C3D58 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C6DFC 003C3D5C 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C6E00 003C3D60 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C6E04 003C3D64 7C A8 3A 14 */ add r5, r8, r7 -/* 803C6E08 003C3D68 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C6E0C 003C3D6C F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C6E10 003C3D70 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C6E14 003C3D74 7C 68 32 14 */ add r3, r8, r6 -/* 803C6E18 003C3D78 42 00 FF 2C */ bdnz lbl_803C6D44 -/* 803C6E1C 003C3D7C E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C6E20 003C3D80 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C6E24 003C3D84 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C6E28 003C3D88 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C6E2C 003C3D8C 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C6E30 003C3D90 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C6E34 003C3D94 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C6E38 003C3D98 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C6E3C 003C3D9C 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C6E40 003C3DA0 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C6E44 003C3DA4 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C6E48 003C3DA8 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C6E4C 003C3DAC 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C6E50 003C3DB0 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C6E54 003C3DB4 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C6E58 003C3DB8 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C6E5C 003C3DBC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C6E60 003C3DC0 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C6E64 003C3DC4 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C6E68 003C3DC8 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C6E6C 003C3DCC 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C6E70 003C3DD0 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C6E74 003C3DD4 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C6E78 003C3DD8 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C6E7C 003C3DDC 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C6E80 003C3DE0 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C6E84 003C3DE4 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C6E88 003C3DE8 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C6E8C 003C3DEC 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C6E90 003C3DF0 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C6E94 003C3DF4 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C6E98 003C3DF8 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C6E9C 003C3DFC 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C6EA0 003C3E00 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C6EA4 003C3E04 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C6EA8 003C3E08 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C6EAC 003C3E0C F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C6EB0 003C3E10 81 1E 01 24 */ lwz r8, 0x124(r30) -/* 803C6EB4 003C3E14 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C6EB8 003C3E18 39 24 00 08 */ addi r9, r4, 8 -/* 803C6EBC 003C3E1C 39 5E FF F8 */ addi r10, r30, -8 -/* 803C6EC0 003C3E20 38 60 00 08 */ li r3, 8 -/* 803C6EC4 003C3E24 7C 69 03 A6 */ mtctr r3 -lbl_803C6EC8: -/* 803C6EC8 003C3E28 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6ECC 003C3E2C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6ED0 003C3E30 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6ED4 003C3E34 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6ED8 003C3E38 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6EDC 003C3E3C 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6EE0 003C3E40 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6EE4 003C3E44 7C C6 03 78 */ or r6, r6, r0 -lbl_803C6EE8: -/* 803C6EE8 003C3E48 2C 06 00 00 */ cmpwi r6, 0 -/* 803C6EEC 003C3E4C 40 82 01 48 */ bne lbl_803C7034 -/* 803C6EF0 003C3E50 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C6EF4 003C3E54 2C 05 00 00 */ cmpwi r5, 0 -/* 803C6EF8 003C3E58 F0 8A 00 08 */ psq_st f4, 8(r10), 0, qr0 -/* 803C6EFC 003C3E5C 40 82 00 9C */ bne lbl_803C6F98 -/* 803C6F00 003C3E60 F0 8A 00 10 */ psq_st f4, 16(r10), 0, qr0 -/* 803C6F04 003C3E64 2C 03 00 00 */ cmpwi r3, 0 -/* 803C6F08 003C3E68 F0 8A 00 18 */ psq_st f4, 24(r10), 0, qr0 -/* 803C6F0C 003C3E6C 40 82 00 18 */ bne lbl_803C6F24 -/* 803C6F10 003C3E70 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6F14 003C3E74 F4 8A 00 20 */ psq_stu f4, 32(r10), 0, qr0 -/* 803C6F18 003C3E78 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6F1C 003C3E7C 42 00 FF AC */ bdnz lbl_803C6EC8 -/* 803C6F20 003C3E80 48 00 01 DC */ b lbl_803C70FC -lbl_803C6F24: -/* 803C6F24 003C3E84 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C6F28 003C3E88 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6F2C 003C3E8C 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C6F30 003C3E90 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6F34 003C3E94 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C6F38 003C3E98 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6F3C 003C3E9C 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C6F40 003C3EA0 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6F44 003C3EA4 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C6F48 003C3EA8 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6F4C 003C3EAC 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C6F50 003C3EB0 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C6F54 003C3EB4 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6F58 003C3EB8 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C6F5C 003C3EBC 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C6F60 003C3EC0 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6F64 003C3EC4 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C6F68 003C3EC8 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6F6C 003C3ECC 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C6F70 003C3ED0 F5 0A 00 08 */ psq_stu f8, 8(r10), 0, qr0 -/* 803C6F74 003C3ED4 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C6F78 003C3ED8 F4 6A 00 08 */ psq_stu f3, 8(r10), 0, qr0 -/* 803C6F7C 003C3EDC 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C6F80 003C3EE0 7C C6 03 78 */ or r6, r6, r0 -/* 803C6F84 003C3EE4 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 -/* 803C6F88 003C3EE8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C6F8C 003C3EEC F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 -/* 803C6F90 003C3EF0 42 00 FF 58 */ bdnz lbl_803C6EE8 -/* 803C6F94 003C3EF4 48 00 01 68 */ b lbl_803C70FC -lbl_803C6F98: -/* 803C6F98 003C3EF8 E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C6F9C 003C3EFC E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C6FA0 003C3F00 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C6FA4 003C3F04 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C6FA8 003C3F08 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C6FAC 003C3F0C 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C6FB0 003C3F10 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C6FB4 003C3F14 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C6FB8 003C3F18 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C6FBC 003C3F1C 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C6FC0 003C3F20 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C6FC4 003C3F24 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C6FC8 003C3F28 80 08 00 08 */ lwz r0, 8(r8) -/* 803C6FCC 003C3F2C 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C6FD0 003C3F30 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C6FD4 003C3F34 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C6FD8 003C3F38 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C6FDC 003C3F3C 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C6FE0 003C3F40 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C6FE4 003C3F44 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C6FE8 003C3F48 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C6FEC 003C3F4C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C6FF0 003C3F50 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C6FF4 003C3F54 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C6FF8 003C3F58 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C6FFC 003C3F5C 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C7000 003C3F60 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C7004 003C3F64 F4 4A 00 08 */ psq_stu f2, 8(r10), 0, qr0 -/* 803C7008 003C3F68 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C700C 003C3F6C 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C7010 003C3F70 7C C6 03 78 */ or r6, r6, r0 -/* 803C7014 003C3F74 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 -/* 803C7018 003C3F78 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C701C 003C3F7C 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C7020 003C3F80 F4 2A 00 08 */ psq_stu f1, 8(r10), 0, qr0 -/* 803C7024 003C3F84 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C7028 003C3F88 F5 6A 00 08 */ psq_stu f11, 8(r10), 0, qr0 -/* 803C702C 003C3F8C 42 00 FE BC */ bdnz lbl_803C6EE8 -/* 803C7030 003C3F90 48 00 00 CC */ b lbl_803C70FC -lbl_803C7034: -/* 803C7034 003C3F94 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C7038 003C3F98 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C703C 003C3F9C 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C7040 003C3FA0 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C7044 003C3FA4 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C7048 003C3FA8 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C704C 003C3FAC E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C7050 003C3FB0 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C7054 003C3FB4 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C7058 003C3FB8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C705C 003C3FBC 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C7060 003C3FC0 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C7064 003C3FC4 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C7068 003C3FC8 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C706C 003C3FCC 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C7070 003C3FD0 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C7074 003C3FD4 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C7078 003C3FD8 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C707C 003C3FDC 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C7080 003C3FE0 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C7084 003C3FE4 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C7088 003C3FE8 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C708C 003C3FEC 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C7090 003C3FF0 80 08 00 08 */ lwz r0, 8(r8) -/* 803C7094 003C3FF4 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C7098 003C3FF8 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C709C 003C3FFC 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C70A0 003C4000 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C70A4 003C4004 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C70A8 003C4008 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C70AC 003C400C A0 68 00 02 */ lhz r3, 2(r8) -/* 803C70B0 003C4010 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C70B4 003C4014 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C70B8 003C4018 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C70BC 003C401C 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C70C0 003C4020 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C70C4 003C4024 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C70C8 003C4028 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C70CC 003C402C 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C70D0 003C4030 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C70D4 003C4034 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C70D8 003C4038 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C70DC 003C403C 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C70E0 003C4040 F5 8A 00 08 */ psq_stu f12, 8(r10), 0, qr0 -/* 803C70E4 003C4044 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C70E8 003C4048 F5 2A 00 08 */ psq_stu f9, 8(r10), 0, qr0 -/* 803C70EC 003C404C F5 4A 00 08 */ psq_stu f10, 8(r10), 0, qr0 -/* 803C70F0 003C4050 7C C6 03 78 */ or r6, r6, r0 -/* 803C70F4 003C4054 F4 8A 00 08 */ psq_stu f4, 8(r10), 0, qr0 -/* 803C70F8 003C4058 42 00 FD F0 */ bdnz lbl_803C6EE8 -lbl_803C70FC: -/* 803C70FC 003C405C 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C7100 003C4060 7F CA F3 78 */ mr r10, r30 -/* 803C7104 003C4064 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C7108 003C4068 E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 -/* 803C710C 003C406C 54 07 18 38 */ slwi r7, r0, 3 -/* 803C7110 003C4070 E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 -/* 803C7114 003C4074 55 29 10 3A */ slwi r9, r9, 2 -/* 803C7118 003C4078 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 -/* 803C711C 003C407C 54 06 10 3A */ slwi r6, r0, 2 -/* 803C7120 003C4080 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C7124 003C4084 7C E7 4A 14 */ add r7, r7, r9 -/* 803C7128 003C4088 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 -/* 803C712C 003C408C 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C7130 003C4090 7C C7 32 14 */ add r6, r7, r6 -/* 803C7134 003C4094 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C7138 003C4098 38 00 00 03 */ li r0, 3 -/* 803C713C 003C409C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C7140 003C40A0 7C A8 3A 14 */ add r5, r8, r7 -/* 803C7144 003C40A4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C7148 003C40A8 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C714C 003C40AC 7C 68 32 14 */ add r3, r8, r6 -/* 803C7150 003C40B0 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C7154 003C40B4 7C 09 03 A6 */ mtctr r0 -lbl_803C7158: -/* 803C7158 003C40B8 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 -/* 803C715C 003C40BC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C7160 003C40C0 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 -/* 803C7164 003C40C4 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C7168 003C40C8 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C716C 003C40CC E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 -/* 803C7170 003C40D0 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C7174 003C40D4 E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 -/* 803C7178 003C40D8 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C717C 003C40DC 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C7180 003C40E0 39 4A 00 08 */ addi r10, r10, 8 -/* 803C7184 003C40E4 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C7188 003C40E8 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C718C 003C40EC E0 EA 00 00 */ psq_l f7, 0(r10), 0, qr0 -/* 803C7190 003C40F0 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C7194 003C40F4 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C7198 003C40F8 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C719C 003C40FC E0 CA 00 80 */ psq_l f6, 128(r10), 0, qr0 -/* 803C71A0 003C4100 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C71A4 003C4104 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C71A8 003C4108 E0 AA 00 40 */ psq_l f5, 64(r10), 0, qr0 -/* 803C71AC 003C410C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C71B0 003C4110 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C71B4 003C4114 E0 8A 00 C0 */ psq_l f4, 192(r10), 0, qr0 -/* 803C71B8 003C4118 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C71BC 003C411C 38 E7 00 02 */ addi r7, r7, 2 -/* 803C71C0 003C4120 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C71C4 003C4124 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C71C8 003C4128 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C71CC 003C412C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C71D0 003C4130 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C71D4 003C4134 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C71D8 003C4138 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C71DC 003C413C 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C71E0 003C4140 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C71E4 003C4144 38 C6 00 02 */ addi r6, r6, 2 -/* 803C71E8 003C4148 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C71EC 003C414C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C71F0 003C4150 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C71F4 003C4154 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C71F8 003C4158 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C71FC 003C415C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C7200 003C4160 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C7204 003C4164 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C7208 003C4168 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C720C 003C416C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C7210 003C4170 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C7214 003C4174 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C7218 003C4178 7C A8 3A 14 */ add r5, r8, r7 -/* 803C721C 003C417C 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C7220 003C4180 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C7224 003C4184 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C7228 003C4188 7C 68 32 14 */ add r3, r8, r6 -/* 803C722C 003C418C 42 00 FF 2C */ bdnz lbl_803C7158 -/* 803C7230 003C4190 E1 6A 00 20 */ psq_l f11, 32(r10), 0, qr0 -/* 803C7234 003C4194 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C7238 003C4198 E1 4A 00 60 */ psq_l f10, 96(r10), 0, qr0 -/* 803C723C 003C419C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C7240 003C41A0 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C7244 003C41A4 E1 2A 00 A0 */ psq_l f9, 160(r10), 0, qr0 -/* 803C7248 003C41A8 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C724C 003C41AC E1 0A 00 E0 */ psq_l f8, 224(r10), 0, qr0 -/* 803C7250 003C41B0 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C7254 003C41B4 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C7258 003C41B8 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C725C 003C41BC 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C7260 003C41C0 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C7264 003C41C4 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C7268 003C41C8 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C726C 003C41CC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C7270 003C41D0 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C7274 003C41D4 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C7278 003C41D8 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C727C 003C41DC F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C7280 003C41E0 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C7284 003C41E4 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C7288 003C41E8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C728C 003C41EC 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C7290 003C41F0 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C7294 003C41F4 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C7298 003C41F8 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C729C 003C41FC 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C72A0 003C4200 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C72A4 003C4204 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C72A8 003C4208 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C72AC 003C420C F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C72B0 003C4210 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C72B4 003C4214 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C72B8 003C4218 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C72BC 003C421C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C72C0 003C4220 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C72C4 003C4224 80 1E 01 10 */ lwz r0, 0x110(r30) -/* 803C72C8 003C4228 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C72CC 003C422C 54 84 F8 7E */ srwi r4, r4, 1 -/* 803C72D0 003C4230 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) -/* 803C72D4 003C4234 39 3E FF F8 */ addi r9, r30, -8 -/* 803C72D8 003C4238 93 ED B1 20 */ stw r31, lbl_805A9CE0@sda21(r13) -/* 803C72DC 003C423C 88 03 06 86 */ lbz r0, 0x686(r3) -/* 803C72E0 003C4240 54 00 40 2E */ slwi r0, r0, 8 -/* 803C72E4 003C4244 7C 03 02 14 */ add r0, r3, r0 -/* 803C72E8 003C4248 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C72EC 003C424C 81 1E 01 28 */ lwz r8, 0x128(r30) -/* 803C72F0 003C4250 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C72F4 003C4254 38 60 00 08 */ li r3, 8 -/* 803C72F8 003C4258 7C 69 03 A6 */ mtctr r3 -lbl_803C72FC: -/* 803C72FC 003C425C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C7300 003C4260 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C7304 003C4264 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C7308 003C4268 80 08 00 08 */ lwz r0, 8(r8) -/* 803C730C 003C426C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C7310 003C4270 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C7314 003C4274 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C7318 003C4278 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C731C: -/* 803C731C 003C427C 2C 06 00 00 */ cmpwi r6, 0 -/* 803C7320 003C4280 40 82 01 48 */ bne lbl_803C7468 -/* 803C7324 003C4284 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C7328 003C4288 2C 05 00 00 */ cmpwi r5, 0 -/* 803C732C 003C428C F0 89 00 08 */ psq_st f4, 8(r9), 0, qr0 -/* 803C7330 003C4290 40 82 00 9C */ bne lbl_803C73CC -/* 803C7334 003C4294 F0 89 00 10 */ psq_st f4, 16(r9), 0, qr0 -/* 803C7338 003C4298 2C 03 00 00 */ cmpwi r3, 0 -/* 803C733C 003C429C F0 89 00 18 */ psq_st f4, 24(r9), 0, qr0 -/* 803C7340 003C42A0 40 82 00 18 */ bne lbl_803C7358 -/* 803C7344 003C42A4 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C7348 003C42A8 F4 89 00 20 */ psq_stu f4, 32(r9), 0, qr0 -/* 803C734C 003C42AC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C7350 003C42B0 42 00 FF AC */ bdnz lbl_803C72FC -/* 803C7354 003C42B4 48 00 01 DC */ b lbl_803C7530 -lbl_803C7358: -/* 803C7358 003C42B8 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C735C 003C42BC 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C7360 003C42C0 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C7364 003C42C4 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C7368 003C42C8 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C736C 003C42CC 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C7370 003C42D0 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C7374 003C42D4 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C7378 003C42D8 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C737C 003C42DC E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C7380 003C42E0 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C7384 003C42E4 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C7388 003C42E8 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C738C 003C42EC 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C7390 003C42F0 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C7394 003C42F4 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C7398 003C42F8 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C739C 003C42FC 80 08 00 08 */ lwz r0, 8(r8) -/* 803C73A0 003C4300 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C73A4 003C4304 F5 09 00 08 */ psq_stu f8, 8(r9), 0, qr0 -/* 803C73A8 003C4308 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C73AC 003C430C F4 69 00 08 */ psq_stu f3, 8(r9), 0, qr0 -/* 803C73B0 003C4310 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C73B4 003C4314 7C C6 03 78 */ or r6, r6, r0 -/* 803C73B8 003C4318 F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C73BC 003C431C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C73C0 003C4320 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C73C4 003C4324 42 00 FF 58 */ bdnz lbl_803C731C -/* 803C73C8 003C4328 48 00 01 68 */ b lbl_803C7530 -lbl_803C73CC: -/* 803C73CC 003C432C E0 28 50 04 */ psq_l f1, 4(r8), 0, qr5 -/* 803C73D0 003C4330 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C73D4 003C4334 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C73D8 003C4338 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C73DC 003C433C 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C73E0 003C4340 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C73E4 003C4344 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C73E8 003C4348 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C73EC 003C434C 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C73F0 003C4350 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C73F4 003C4354 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C73F8 003C4358 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C73FC 003C435C 80 08 00 08 */ lwz r0, 8(r8) -/* 803C7400 003C4360 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C7404 003C4364 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C7408 003C4368 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C740C 003C436C 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C7410 003C4370 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C7414 003C4374 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C7418 003C4378 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C741C 003C437C 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C7420 003C4380 E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C7424 003C4384 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C7428 003C4388 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C742C 003C438C E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C7430 003C4390 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C7434 003C4394 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C7438 003C4398 F4 49 00 08 */ psq_stu f2, 8(r9), 0, qr0 -/* 803C743C 003C439C 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C7440 003C43A0 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C7444 003C43A4 7C C6 03 78 */ or r6, r6, r0 -/* 803C7448 003C43A8 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C744C 003C43AC 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C7450 003C43B0 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C7454 003C43B4 F4 29 00 08 */ psq_stu f1, 8(r9), 0, qr0 -/* 803C7458 003C43B8 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C745C 003C43BC F5 69 00 08 */ psq_stu f11, 8(r9), 0, qr0 -/* 803C7460 003C43C0 42 00 FE BC */ bdnz lbl_803C731C -/* 803C7464 003C43C4 48 00 00 CC */ b lbl_803C7530 -lbl_803C7468: -/* 803C7468 003C43C8 E0 48 50 04 */ psq_l f2, 4(r8), 0, qr5 -/* 803C746C 003C43CC E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C7470 003C43D0 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C7474 003C43D4 E1 A8 50 08 */ psq_l f13, 8(r8), 0, qr5 -/* 803C7478 003C43D8 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C747C 003C43DC 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C7480 003C43E0 E1 88 50 0C */ psq_l f12, 12(r8), 0, qr5 -/* 803C7484 003C43E4 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C7488 003C43E8 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C748C 003C43EC 39 08 00 10 */ addi r8, r8, 0x10 -/* 803C7490 003C43F0 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C7494 003C43F4 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C7498 003C43F8 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C749C 003C43FC 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C74A0 003C4400 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C74A4 003C4404 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C74A8 003C4408 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C74AC 003C440C 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C74B0 003C4410 80 C8 00 0C */ lwz r6, 0xc(r8) -/* 803C74B4 003C4414 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C74B8 003C4418 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C74BC 003C441C 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C74C0 003C4420 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C74C4 003C4424 80 08 00 08 */ lwz r0, 8(r8) -/* 803C74C8 003C4428 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C74CC 003C442C 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C74D0 003C4430 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C74D4 003C4434 80 A8 00 04 */ lwz r5, 4(r8) -/* 803C74D8 003C4438 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C74DC 003C443C 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C74E0 003C4440 A0 68 00 02 */ lhz r3, 2(r8) -/* 803C74E4 003C4444 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C74E8 003C4448 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C74EC 003C444C E0 E8 50 00 */ psq_l f7, 0(r8), 0, qr5 -/* 803C74F0 003C4450 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C74F4 003C4454 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C74F8 003C4458 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C74FC 003C445C 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C7500 003C4460 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C7504 003C4464 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C7508 003C4468 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C750C 003C446C 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C7510 003C4470 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C7514 003C4474 F5 89 00 08 */ psq_stu f12, 8(r9), 0, qr0 -/* 803C7518 003C4478 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C751C 003C447C F5 29 00 08 */ psq_stu f9, 8(r9), 0, qr0 -/* 803C7520 003C4480 F5 49 00 08 */ psq_stu f10, 8(r9), 0, qr0 -/* 803C7524 003C4484 7C C6 03 78 */ or r6, r6, r0 -/* 803C7528 003C4488 F4 89 00 08 */ psq_stu f4, 8(r9), 0, qr0 -/* 803C752C 003C448C 42 00 FD F0 */ bdnz lbl_803C731C -lbl_803C7530: -/* 803C7530 003C4490 81 0D B1 00 */ lwz r8, lbl_805A9CC0@sda21(r13) -/* 803C7534 003C4494 7F C9 F3 78 */ mr r9, r30 -/* 803C7538 003C4498 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C753C 003C449C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C7540 003C44A0 54 83 10 3A */ slwi r3, r4, 2 -/* 803C7544 003C44A4 E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C7548 003C44A8 54 06 10 3A */ slwi r6, r0, 2 -/* 803C754C 003C44AC E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C7550 003C44B0 7C 67 1B 78 */ mr r7, r3 -/* 803C7554 003C44B4 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C7558 003C44B8 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C755C 003C44BC 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C7560 003C44C0 7C C7 32 14 */ add r6, r7, r6 -/* 803C7564 003C44C4 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C7568 003C44C8 38 00 00 03 */ li r0, 3 -/* 803C756C 003C44CC 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C7570 003C44D0 7C A8 3A 14 */ add r5, r8, r7 -/* 803C7574 003C44D4 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C7578 003C44D8 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C757C 003C44DC 7C 68 32 14 */ add r3, r8, r6 -/* 803C7580 003C44E0 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C7584 003C44E4 7C 09 03 A6 */ mtctr r0 -lbl_803C7588: -/* 803C7588 003C44E8 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C758C 003C44EC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C7590 003C44F0 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C7594 003C44F4 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C7598 003C44F8 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C759C 003C44FC E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C75A0 003C4500 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C75A4 003C4504 E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C75A8 003C4508 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C75AC 003C450C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C75B0 003C4510 39 29 00 08 */ addi r9, r9, 8 -/* 803C75B4 003C4514 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C75B8 003C4518 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C75BC 003C451C E0 E9 00 00 */ psq_l f7, 0(r9), 0, qr0 -/* 803C75C0 003C4520 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C75C4 003C4524 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C75C8 003C4528 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C75CC 003C452C E0 C9 00 80 */ psq_l f6, 128(r9), 0, qr0 -/* 803C75D0 003C4530 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C75D4 003C4534 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C75D8 003C4538 E0 A9 00 40 */ psq_l f5, 64(r9), 0, qr0 -/* 803C75DC 003C453C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C75E0 003C4540 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C75E4 003C4544 E0 89 00 C0 */ psq_l f4, 192(r9), 0, qr0 -/* 803C75E8 003C4548 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C75EC 003C454C 38 E7 00 02 */ addi r7, r7, 2 -/* 803C75F0 003C4550 F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C75F4 003C4554 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C75F8 003C4558 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C75FC 003C455C 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C7600 003C4560 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C7604 003C4564 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C7608 003C4568 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C760C 003C456C 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C7610 003C4570 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C7614 003C4574 38 C6 00 02 */ addi r6, r6, 2 -/* 803C7618 003C4578 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C761C 003C457C 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C7620 003C4580 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C7624 003C4584 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C7628 003C4588 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C762C 003C458C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C7630 003C4590 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C7634 003C4594 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C7638 003C4598 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C763C 003C459C 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C7640 003C45A0 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C7644 003C45A4 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C7648 003C45A8 7C A8 3A 14 */ add r5, r8, r7 -/* 803C764C 003C45AC 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C7650 003C45B0 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C7654 003C45B4 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C7658 003C45B8 7C 68 32 14 */ add r3, r8, r6 -/* 803C765C 003C45BC 42 00 FF 2C */ bdnz lbl_803C7588 -/* 803C7660 003C45C0 E1 69 00 20 */ psq_l f11, 32(r9), 0, qr0 -/* 803C7664 003C45C4 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C7668 003C45C8 E1 49 00 60 */ psq_l f10, 96(r9), 0, qr0 -/* 803C766C 003C45CC 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C7670 003C45D0 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C7674 003C45D4 E1 29 00 A0 */ psq_l f9, 160(r9), 0, qr0 -/* 803C7678 003C45D8 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C767C 003C45DC E1 09 00 E0 */ psq_l f8, 224(r9), 0, qr0 -/* 803C7680 003C45E0 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C7684 003C45E4 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C7688 003C45E8 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C768C 003C45EC 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C7690 003C45F0 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C7694 003C45F4 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C7698 003C45F8 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C769C 003C45FC 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C76A0 003C4600 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C76A4 003C4604 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C76A8 003C4608 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C76AC 003C460C F0 45 60 00 */ psq_st f2, 0(r5), 0, qr6 -/* 803C76B0 003C4610 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C76B4 003C4614 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C76B8 003C4618 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C76BC 003C461C 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C76C0 003C4620 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C76C4 003C4624 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C76C8 003C4628 F0 45 60 08 */ psq_st f2, 8(r5), 0, qr6 -/* 803C76CC 003C462C 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C76D0 003C4630 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C76D4 003C4634 F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C76D8 003C4638 F0 65 60 10 */ psq_st f3, 16(r5), 0, qr6 -/* 803C76DC 003C463C 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C76E0 003C4640 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C76E4 003C4644 F0 45 60 18 */ psq_st f2, 24(r5), 0, qr6 -/* 803C76E8 003C4648 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C76EC 003C464C F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C76F0 003C4650 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C76F4 003C4654 80 1E 01 14 */ lwz r0, 0x114(r30) -/* 803C76F8 003C4658 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C76FC 003C465C 39 1E FF F8 */ addi r8, r30, -8 -/* 803C7700 003C4660 90 0D B1 00 */ stw r0, lbl_805A9CC0@sda21(r13) -/* 803C7704 003C4664 88 03 06 8C */ lbz r0, 0x68c(r3) -/* 803C7708 003C4668 54 00 40 2E */ slwi r0, r0, 8 -/* 803C770C 003C466C 7C 03 02 14 */ add r0, r3, r0 -/* 803C7710 003C4670 90 0D B1 40 */ stw r0, lbl_805A9D00@sda21(r13) -/* 803C7714 003C4674 81 3E 01 2C */ lwz r9, 0x12c(r30) -/* 803C7718 003C4678 80 ED B1 40 */ lwz r7, lbl_805A9D00@sda21(r13) -/* 803C771C 003C467C 38 60 00 08 */ li r3, 8 -/* 803C7720 003C4680 7C 69 03 A6 */ mtctr r3 -lbl_803C7724: -/* 803C7724 003C4684 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C7728 003C4688 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C772C 003C468C 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C7730 003C4690 80 09 00 08 */ lwz r0, 8(r9) -/* 803C7734 003C4694 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C7738 003C4698 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C773C 003C469C A0 69 00 02 */ lhz r3, 2(r9) -/* 803C7740 003C46A0 7C C6 03 79 */ or. r6, r6, r0 -lbl_803C7744: -/* 803C7744 003C46A4 2C 06 00 00 */ cmpwi r6, 0 -/* 803C7748 003C46A8 40 82 01 48 */ bne lbl_803C7890 -/* 803C774C 003C46AC 10 87 3C 20 */ ps_merge00 f4, f7, f7 -/* 803C7750 003C46B0 2C 05 00 00 */ cmpwi r5, 0 -/* 803C7754 003C46B4 F0 88 00 08 */ psq_st f4, 8(r8), 0, qr0 -/* 803C7758 003C46B8 40 82 00 9C */ bne lbl_803C77F4 -/* 803C775C 003C46BC F0 88 00 10 */ psq_st f4, 16(r8), 0, qr0 -/* 803C7760 003C46C0 2C 03 00 00 */ cmpwi r3, 0 -/* 803C7764 003C46C4 F0 88 00 18 */ psq_st f4, 24(r8), 0, qr0 -/* 803C7768 003C46C8 40 82 00 18 */ bne lbl_803C7780 -/* 803C776C 003C46CC 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C7770 003C46D0 F4 88 00 20 */ psq_stu f4, 32(r8), 0, qr0 -/* 803C7774 003C46D4 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C7778 003C46D8 42 00 FF AC */ bdnz lbl_803C7724 -/* 803C777C 003C46DC 48 00 01 DC */ b lbl_803C7958 -lbl_803C7780: -/* 803C7780 003C46E0 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C7784 003C46E4 11 A7 3F 38 */ ps_msub f13, f7, f28, f7 -/* 803C7788 003C46E8 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C778C 003C46EC 10 47 3C 20 */ ps_merge00 f2, f7, f7 -/* 803C7790 003C46F0 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C7794 003C46F4 10 3C E8 28 */ ps_sub f1, f28, f29 -/* 803C7798 003C46F8 11 87 6E F8 */ ps_msub f12, f7, f27, f13 -/* 803C779C 003C46FC A0 69 00 02 */ lhz r3, 2(r9) -/* 803C77A0 003C4700 11 47 6C E0 */ ps_merge11 f10, f7, f13 -/* 803C77A4 003C4704 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C77A8 003C4708 11 67 60 7C */ ps_nmsub f11, f7, f1, f12 -/* 803C77AC 003C470C 11 02 50 2A */ ps_add f8, f2, f10 -/* 803C77B0 003C4710 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C77B4 003C4714 11 2C 5C E0 */ ps_merge11 f9, f12, f11 -/* 803C77B8 003C4718 11 42 50 28 */ ps_sub f10, f2, f10 -/* 803C77BC 003C471C 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C77C0 003C4720 10 62 48 2A */ ps_add f3, f2, f9 -/* 803C77C4 003C4724 80 09 00 08 */ lwz r0, 8(r9) -/* 803C77C8 003C4728 11 22 48 28 */ ps_sub f9, f2, f9 -/* 803C77CC 003C472C F5 08 00 08 */ psq_stu f8, 8(r8), 0, qr0 -/* 803C77D0 003C4730 11 29 4C A0 */ ps_merge10 f9, f9, f9 -/* 803C77D4 003C4734 F4 68 00 08 */ psq_stu f3, 8(r8), 0, qr0 -/* 803C77D8 003C4738 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C77DC 003C473C 7C C6 03 78 */ or r6, r6, r0 -/* 803C77E0 003C4740 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 -/* 803C77E4 003C4744 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C77E8 003C4748 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 -/* 803C77EC 003C474C 42 00 FF 58 */ bdnz lbl_803C7744 -/* 803C77F0 003C4750 48 00 01 68 */ b lbl_803C7958 -lbl_803C77F4: -/* 803C77F4 003C4754 E0 29 50 04 */ psq_l f1, 4(r9), 0, qr5 -/* 803C77F8 003C4758 E0 47 00 08 */ psq_l f2, 8(r7), 0, qr0 -/* 803C77FC 003C475C 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C7800 003C4760 10 21 00 B2 */ ps_mul f1, f1, f2 -/* 803C7804 003C4764 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C7808 003C4768 11 87 08 28 */ ps_sub f12, f7, f1 -/* 803C780C 003C476C 11 A7 08 2A */ ps_add f13, f7, f1 -/* 803C7810 003C4770 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C7814 003C4774 11 61 66 FA */ ps_madd f11, f1, f27, f12 -/* 803C7818 003C4778 11 41 6E FC */ ps_nmsub f10, f1, f27, f13 -/* 803C781C 003C477C 10 6C 07 32 */ ps_mul f3, f12, f28 -/* 803C7820 003C4780 11 6D 5C 20 */ ps_merge00 f11, f13, f11 -/* 803C7824 003C4784 80 09 00 08 */ lwz r0, 8(r9) -/* 803C7828 003C4788 11 21 1F BC */ ps_nmsub f9, f1, f30, f3 -/* 803C782C 003C478C 11 4A 64 20 */ ps_merge00 f10, f10, f12 -/* 803C7830 003C4790 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C7834 003C4794 11 29 68 28 */ ps_sub f9, f9, f13 -/* 803C7838 003C4798 11 07 1F 7C */ ps_nmsub f8, f7, f29, f3 -/* 803C783C 003C479C A0 69 00 02 */ lhz r3, 2(r9) -/* 803C7840 003C47A0 11 AD 4C E0 */ ps_merge11 f13, f13, f9 -/* 803C7844 003C47A4 10 6C 4E F8 */ ps_msub f3, f12, f27, f9 -/* 803C7848 003C47A8 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C784C 003C47AC 10 4B 68 2A */ ps_add f2, f11, f13 -/* 803C7850 003C47B0 11 08 18 28 */ ps_sub f8, f8, f3 -/* 803C7854 003C47B4 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C7858 003C47B8 11 83 44 E0 */ ps_merge11 f12, f3, f8 -/* 803C785C 003C47BC 11 6B 68 28 */ ps_sub f11, f11, f13 -/* 803C7860 003C47C0 F4 48 00 08 */ psq_stu f2, 8(r8), 0, qr0 -/* 803C7864 003C47C4 10 8A 60 2A */ ps_add f4, f10, f12 -/* 803C7868 003C47C8 10 2A 60 28 */ ps_sub f1, f10, f12 -/* 803C786C 003C47CC 7C C6 03 78 */ or r6, r6, r0 -/* 803C7870 003C47D0 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 -/* 803C7874 003C47D4 10 21 0C A0 */ ps_merge10 f1, f1, f1 -/* 803C7878 003C47D8 11 6B 5C A0 */ ps_merge10 f11, f11, f11 -/* 803C787C 003C47DC F4 28 00 08 */ psq_stu f1, 8(r8), 0, qr0 -/* 803C7880 003C47E0 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C7884 003C47E4 F5 68 00 08 */ psq_stu f11, 8(r8), 0, qr0 -/* 803C7888 003C47E8 42 00 FE BC */ bdnz lbl_803C7744 -/* 803C788C 003C47EC 48 00 00 CC */ b lbl_803C7958 -lbl_803C7890: -/* 803C7890 003C47F0 E0 49 50 04 */ psq_l f2, 4(r9), 0, qr5 -/* 803C7894 003C47F4 E1 47 00 08 */ psq_l f10, 8(r7), 0, qr0 -/* 803C7898 003C47F8 10 42 02 B2 */ ps_mul f2, f2, f10 -/* 803C789C 003C47FC E1 A9 50 08 */ psq_l f13, 8(r9), 0, qr5 -/* 803C78A0 003C4800 E1 27 00 10 */ psq_l f9, 16(r7), 0, qr0 -/* 803C78A4 003C4804 10 87 14 60 */ ps_merge01 f4, f7, f2 -/* 803C78A8 003C4808 E1 89 50 0C */ psq_l f12, 12(r9), 0, qr5 -/* 803C78AC 003C480C 10 22 3C 60 */ ps_merge01 f1, f2, f7 -/* 803C78B0 003C4810 E1 07 00 18 */ psq_l f8, 24(r7), 0, qr0 -/* 803C78B4 003C4814 39 29 00 10 */ addi r9, r9, 0x10 -/* 803C78B8 003C4818 11 6D 22 7A */ ps_madd f11, f13, f9, f4 -/* 803C78BC 003C481C 11 4D 22 7C */ ps_nmsub f10, f13, f9, f4 -/* 803C78C0 003C4820 11 2C 0A 3A */ ps_madd f9, f12, f8, f1 -/* 803C78C4 003C4824 11 0C 0A 3C */ ps_nmsub f8, f12, f8, f1 -/* 803C78C8 003C4828 38 E7 00 20 */ addi r7, r7, 0x20 -/* 803C78CC 003C482C 10 8B 48 2A */ ps_add f4, f11, f9 -/* 803C78D0 003C4830 11 8B 48 28 */ ps_sub f12, f11, f9 -/* 803C78D4 003C4834 11 A8 4E F8 */ ps_msub f13, f8, f27, f9 -/* 803C78D8 003C4838 80 C9 00 0C */ lwz r6, 0xc(r9) -/* 803C78DC 003C483C 10 68 50 28 */ ps_sub f3, f8, f10 -/* 803C78E0 003C4840 10 2A 68 2A */ ps_add f1, f10, f13 -/* 803C78E4 003C4844 11 AA 68 28 */ ps_sub f13, f10, f13 -/* 803C78E8 003C4848 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C78EC 003C484C 80 09 00 08 */ lwz r0, 8(r9) -/* 803C78F0 003C4850 10 24 0C 20 */ ps_merge00 f1, f4, f1 -/* 803C78F4 003C4854 11 2A 1F BC */ ps_nmsub f9, f10, f30, f3 -/* 803C78F8 003C4858 11 68 1F 78 */ ps_msub f11, f8, f29, f3 -/* 803C78FC 003C485C 80 A9 00 04 */ lwz r5, 4(r9) -/* 803C7900 003C4860 11 29 20 28 */ ps_sub f9, f9, f4 -/* 803C7904 003C4864 11 AD 64 20 */ ps_merge00 f13, f13, f12 -/* 803C7908 003C4868 A0 69 00 02 */ lhz r3, 2(r9) -/* 803C790C 003C486C 11 4C 4E FA */ ps_madd f10, f12, f27, f9 -/* 803C7910 003C4870 11 04 4C E0 */ ps_merge11 f8, f4, f9 -/* 803C7914 003C4874 E0 E9 50 00 */ psq_l f7, 0(r9), 0, qr5 -/* 803C7918 003C4878 11 6B 50 28 */ ps_sub f11, f11, f10 -/* 803C791C 003C487C 11 81 40 2A */ ps_add f12, f1, f8 -/* 803C7920 003C4880 E0 C7 00 00 */ psq_l f6, 0(r7), 0, qr0 -/* 803C7924 003C4884 11 6A 5C E0 */ ps_merge11 f11, f10, f11 -/* 803C7928 003C4888 10 81 40 28 */ ps_sub f4, f1, f8 -/* 803C792C 003C488C 10 E7 01 B2 */ ps_mul f7, f7, f6 -/* 803C7930 003C4890 11 4D 58 2A */ ps_add f10, f13, f11 -/* 803C7934 003C4894 11 2D 58 28 */ ps_sub f9, f13, f11 -/* 803C7938 003C4898 11 4A 54 A0 */ ps_merge10 f10, f10, f10 -/* 803C793C 003C489C F5 88 00 08 */ psq_stu f12, 8(r8), 0, qr0 -/* 803C7940 003C48A0 10 84 24 A0 */ ps_merge10 f4, f4, f4 -/* 803C7944 003C48A4 F5 28 00 08 */ psq_stu f9, 8(r8), 0, qr0 -/* 803C7948 003C48A8 F5 48 00 08 */ psq_stu f10, 8(r8), 0, qr0 -/* 803C794C 003C48AC 7C C6 03 78 */ or r6, r6, r0 -/* 803C7950 003C48B0 F4 88 00 08 */ psq_stu f4, 8(r8), 0, qr0 -/* 803C7954 003C48B4 42 00 FD F0 */ bdnz lbl_803C7744 -lbl_803C7958: -/* 803C7958 003C48B8 80 ED B1 00 */ lwz r7, lbl_805A9CC0@sda21(r13) -/* 803C795C 003C48BC 7F C8 F3 78 */ mr r8, r30 -/* 803C7960 003C48C0 80 0D B1 20 */ lwz r0, lbl_805A9CE0@sda21(r13) -/* 803C7964 003C48C4 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 -/* 803C7968 003C48C8 54 83 10 3A */ slwi r3, r4, 2 -/* 803C796C 003C48CC E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 -/* 803C7970 003C48D0 54 05 10 3A */ slwi r5, r0, 2 -/* 803C7974 003C48D4 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 -/* 803C7978 003C48D8 7C 66 1B 78 */ mr r6, r3 -/* 803C797C 003C48DC 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C7980 003C48E0 E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 -/* 803C7984 003C48E4 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C7988 003C48E8 7C A6 2A 14 */ add r5, r6, r5 -/* 803C798C 003C48EC 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C7990 003C48F0 38 00 00 03 */ li r0, 3 -/* 803C7994 003C48F4 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C7998 003C48F8 7C 87 32 14 */ add r4, r7, r6 -/* 803C799C 003C48FC 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C79A0 003C4900 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C79A4 003C4904 7C 67 2A 14 */ add r3, r7, r5 -/* 803C79A8 003C4908 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C79AC 003C490C 7C 09 03 A6 */ mtctr r0 -lbl_803C79B0: -/* 803C79B0 003C4910 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 -/* 803C79B4 003C4914 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C79B8 003C4918 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 -/* 803C79BC 003C491C 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C79C0 003C4920 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C79C4 003C4924 E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 -/* 803C79C8 003C4928 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C79CC 003C492C E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 -/* 803C79D0 003C4930 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C79D4 003C4934 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C79D8 003C4938 39 08 00 08 */ addi r8, r8, 8 -/* 803C79DC 003C493C 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C79E0 003C4940 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C79E4 003C4944 E0 E8 00 00 */ psq_l f7, 0(r8), 0, qr0 -/* 803C79E8 003C4948 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C79EC 003C494C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C79F0 003C4950 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C79F4 003C4954 E0 C8 00 80 */ psq_l f6, 128(r8), 0, qr0 -/* 803C79F8 003C4958 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C79FC 003C495C 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C7A00 003C4960 E0 A8 00 40 */ psq_l f5, 64(r8), 0, qr0 -/* 803C7A04 003C4964 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C7A08 003C4968 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C7A0C 003C496C E0 88 00 C0 */ psq_l f4, 192(r8), 0, qr0 -/* 803C7A10 003C4970 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C7A14 003C4974 38 C6 00 02 */ addi r6, r6, 2 -/* 803C7A18 003C4978 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 -/* 803C7A1C 003C497C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C7A20 003C4980 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C7A24 003C4984 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C7A28 003C4988 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C7A2C 003C498C F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C7A30 003C4990 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C7A34 003C4994 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C7A38 003C4998 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 -/* 803C7A3C 003C499C 38 A5 00 02 */ addi r5, r5, 2 -/* 803C7A40 003C49A0 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C7A44 003C49A4 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C7A48 003C49A8 F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 -/* 803C7A4C 003C49AC 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C7A50 003C49B0 11 27 30 2A */ ps_add f9, f7, f6 -/* 803C7A54 003C49B4 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C7A58 003C49B8 10 67 30 28 */ ps_sub f3, f7, f6 -/* 803C7A5C 003C49BC 11 29 F8 2A */ ps_add f9, f9, f31 -/* 803C7A60 003C49C0 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C7A64 003C49C4 11 05 20 2A */ ps_add f8, f5, f4 -/* 803C7A68 003C49C8 10 45 20 28 */ ps_sub f2, f5, f4 -/* 803C7A6C 003C49CC F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C7A70 003C49D0 7C 87 32 14 */ add r4, r7, r6 -/* 803C7A74 003C49D4 10 89 40 2A */ ps_add f4, f9, f8 -/* 803C7A78 003C49D8 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C7A7C 003C49DC 10 63 F8 2A */ ps_add f3, f3, f31 -/* 803C7A80 003C49E0 7C 67 2A 14 */ add r3, r7, r5 -/* 803C7A84 003C49E4 42 00 FF 2C */ bdnz lbl_803C79B0 -/* 803C7A88 003C49E8 E1 68 00 20 */ psq_l f11, 32(r8), 0, qr0 -/* 803C7A8C 003C49EC 10 42 46 F8 */ ps_msub f2, f2, f27, f8 -/* 803C7A90 003C49F0 E1 48 00 60 */ psq_l f10, 96(r8), 0, qr0 -/* 803C7A94 003C49F4 11 89 40 28 */ ps_sub f12, f9, f8 -/* 803C7A98 003C49F8 10 23 10 2A */ ps_add f1, f3, f2 -/* 803C7A9C 003C49FC E1 28 00 A0 */ psq_l f9, 160(r8), 0, qr0 -/* 803C7AA0 003C4A00 11 A3 10 28 */ ps_sub f13, f3, f2 -/* 803C7AA4 003C4A04 E1 08 00 E0 */ psq_l f8, 224(r8), 0, qr0 -/* 803C7AA8 003C4A08 10 69 50 2A */ ps_add f3, f9, f10 -/* 803C7AAC 003C4A0C 11 29 50 28 */ ps_sub f9, f9, f10 -/* 803C7AB0 003C4A10 10 4B 40 2A */ ps_add f2, f11, f8 -/* 803C7AB4 003C4A14 11 6B 40 28 */ ps_sub f11, f11, f8 -/* 803C7AB8 003C4A18 11 02 18 2A */ ps_add f8, f2, f3 -/* 803C7ABC 003C4A1C 11 42 18 28 */ ps_sub f10, f2, f3 -/* 803C7AC0 003C4A20 10 69 58 2A */ ps_add f3, f9, f11 -/* 803C7AC4 003C4A24 10 44 40 2A */ ps_add f2, f4, f8 -/* 803C7AC8 003C4A28 10 63 07 32 */ ps_mul f3, f3, f28 -/* 803C7ACC 003C4A2C 10 04 40 28 */ ps_sub f0, f4, f8 -/* 803C7AD0 003C4A30 11 29 1F BA */ ps_madd f9, f9, f30, f3 -/* 803C7AD4 003C4A34 F0 44 60 00 */ psq_st f2, 0(r4), 0, qr6 -/* 803C7AD8 003C4A38 11 29 40 28 */ ps_sub f9, f9, f8 -/* 803C7ADC 003C4A3C 11 6B 1F 78 */ ps_msub f11, f11, f29, f3 -/* 803C7AE0 003C4A40 F0 03 60 18 */ psq_st f0, 24(r3), 0, qr6 -/* 803C7AE4 003C4A44 10 41 48 2A */ ps_add f2, f1, f9 -/* 803C7AE8 003C4A48 11 4A 4E F8 */ ps_msub f10, f10, f27, f9 -/* 803C7AEC 003C4A4C 10 21 48 28 */ ps_sub f1, f1, f9 -/* 803C7AF0 003C4A50 F0 44 60 08 */ psq_st f2, 8(r4), 0, qr6 -/* 803C7AF4 003C4A54 10 6D 50 2A */ ps_add f3, f13, f10 -/* 803C7AF8 003C4A58 11 6B 50 2A */ ps_add f11, f11, f10 -/* 803C7AFC 003C4A5C F0 23 60 10 */ psq_st f1, 16(r3), 0, qr6 -/* 803C7B00 003C4A60 F0 64 60 10 */ psq_st f3, 16(r4), 0, qr6 -/* 803C7B04 003C4A64 10 4C 58 28 */ ps_sub f2, f12, f11 -/* 803C7B08 003C4A68 10 6C 58 2A */ ps_add f3, f12, f11 -/* 803C7B0C 003C4A6C F0 44 60 18 */ psq_st f2, 24(r4), 0, qr6 -/* 803C7B10 003C4A70 10 4D 50 28 */ ps_sub f2, f13, f10 -/* 803C7B14 003C4A74 F0 63 60 00 */ psq_st f3, 0(r3), 0, qr6 -/* 803C7B18 003C4A78 F0 43 60 08 */ psq_st f2, 8(r3), 0, qr6 -/* 803C7B1C 003C4A7C 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C7B20 003C4A80 88 05 06 A9 */ lbz r0, 0x6a9(r5) -/* 803C7B24 003C4A84 28 00 00 00 */ cmplwi r0, 0 -/* 803C7B28 003C4A88 41 82 00 74 */ beq lbl_803C7B9C -/* 803C7B2C 003C4A8C A0 85 06 AC */ lhz r4, 0x6ac(r5) -/* 803C7B30 003C4A90 38 04 FF FF */ addi r0, r4, -1 -/* 803C7B34 003C4A94 B0 05 06 AC */ sth r0, 0x6ac(r5) -/* 803C7B38 003C4A98 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C7B3C 003C4A9C A0 04 06 AC */ lhz r0, 0x6ac(r4) -/* 803C7B40 003C4AA0 28 00 00 00 */ cmplwi r0, 0 -/* 803C7B44 003C4AA4 40 82 00 58 */ bne lbl_803C7B9C -/* 803C7B48 003C4AA8 A0 04 06 AA */ lhz r0, 0x6aa(r4) -/* 803C7B4C 003C4AAC B0 04 06 AC */ sth r0, 0x6ac(r4) -/* 803C7B50 003C4AB0 80 8D B1 50 */ lwz r4, lbl_805A9D10@sda21(r13) -/* 803C7B54 003C4AB4 80 64 06 A4 */ lwz r3, 0x6a4(r4) -/* 803C7B58 003C4AB8 38 03 00 06 */ addi r0, r3, 6 -/* 803C7B5C 003C4ABC 54 03 00 38 */ rlwinm r3, r0, 0, 0, 0x1c -/* 803C7B60 003C4AC0 38 03 00 01 */ addi r0, r3, 1 -/* 803C7B64 003C4AC4 90 04 06 A4 */ stw r0, 0x6a4(r4) -/* 803C7B68 003C4AC8 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7B6C 003C4ACC 80 03 06 A4 */ lwz r0, 0x6a4(r3) -/* 803C7B70 003C4AD0 28 00 00 20 */ cmplwi r0, 0x20 -/* 803C7B74 003C4AD4 40 81 00 0C */ ble lbl_803C7B80 -/* 803C7B78 003C4AD8 38 00 00 21 */ li r0, 0x21 -/* 803C7B7C 003C4ADC 90 03 06 A4 */ stw r0, 0x6a4(r3) -lbl_803C7B80: -/* 803C7B80 003C4AE0 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7B84 003C4AE4 38 00 00 00 */ li r0, 0 -/* 803C7B88 003C4AE8 B0 03 06 84 */ sth r0, 0x684(r3) -/* 803C7B8C 003C4AEC 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7B90 003C4AF0 B0 03 06 8A */ sth r0, 0x68a(r3) -/* 803C7B94 003C4AF4 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7B98 003C4AF8 B0 03 06 90 */ sth r0, 0x690(r3) -lbl_803C7B9C: -/* 803C7B9C 003C4AFC 3B BD 00 01 */ addi r29, r29, 1 -lbl_803C7BA0: -/* 803C7BA0 003C4B00 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7BA4 003C4B04 57 A4 06 3E */ clrlwi r4, r29, 0x18 -/* 803C7BA8 003C4B08 A0 03 06 96 */ lhz r0, 0x696(r3) -/* 803C7BAC 003C4B0C 7C 04 00 00 */ cmpw r4, r0 -/* 803C7BB0 003C4B10 41 80 E6 68 */ blt lbl_803C6218 -/* 803C7BB4 003C4B14 57 9D E1 3E */ srwi r29, r28, 4 -/* 803C7BB8 003C4B18 80 63 06 B0 */ lwz r3, 0x6b0(r3) -/* 803C7BBC 003C4B1C 80 9E 01 0C */ lwz r4, 0x10c(r30) -/* 803C7BC0 003C4B20 57 85 20 2E */ rlwinm r5, r28, 4, 0, 0x17 -/* 803C7BC4 003C4B24 4B FB 72 49 */ bl LCStoreData -/* 803C7BC8 003C4B28 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7BCC 003C4B2C 57 A5 30 32 */ slwi r5, r29, 6 -/* 803C7BD0 003C4B30 80 9E 01 10 */ lwz r4, 0x110(r30) -/* 803C7BD4 003C4B34 80 63 06 B4 */ lwz r3, 0x6b4(r3) -/* 803C7BD8 003C4B38 4B FB 72 35 */ bl LCStoreData -/* 803C7BDC 003C4B3C 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7BE0 003C4B40 57 A5 30 32 */ slwi r5, r29, 6 -/* 803C7BE4 003C4B44 80 9E 01 14 */ lwz r4, 0x114(r30) -/* 803C7BE8 003C4B48 80 63 06 B8 */ lwz r3, 0x6b8(r3) -/* 803C7BEC 003C4B4C 4B FB 72 21 */ bl LCStoreData -/* 803C7BF0 003C4B50 80 AD B1 50 */ lwz r5, lbl_805A9D10@sda21(r13) -/* 803C7BF4 003C4B54 57 A0 40 2E */ slwi r0, r29, 8 -/* 803C7BF8 003C4B58 57 A4 30 32 */ slwi r4, r29, 6 -/* 803C7BFC 003C4B5C 80 65 06 B0 */ lwz r3, 0x6b0(r5) -/* 803C7C00 003C4B60 7C 03 02 14 */ add r0, r3, r0 -/* 803C7C04 003C4B64 90 05 06 B0 */ stw r0, 0x6b0(r5) -/* 803C7C08 003C4B68 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7C0C 003C4B6C 80 03 06 B4 */ lwz r0, 0x6b4(r3) -/* 803C7C10 003C4B70 7C 00 22 14 */ add r0, r0, r4 -/* 803C7C14 003C4B74 90 03 06 B4 */ stw r0, 0x6b4(r3) -/* 803C7C18 003C4B78 80 6D B1 50 */ lwz r3, lbl_805A9D10@sda21(r13) -/* 803C7C1C 003C4B7C 80 03 06 B8 */ lwz r0, 0x6b8(r3) -/* 803C7C20 003C4B80 7C 00 22 14 */ add r0, r0, r4 -/* 803C7C24 003C4B84 90 03 06 B8 */ stw r0, 0x6b8(r3) -/* 803C7C28 003C4B88 80 01 00 44 */ lwz r0, 0x44(r1) -/* 803C7C2C 003C4B8C CB E1 00 38 */ lfd f31, 0x38(r1) -/* 803C7C30 003C4B90 CB C1 00 30 */ lfd f30, 0x30(r1) -/* 803C7C34 003C4B94 CB A1 00 28 */ lfd f29, 0x28(r1) -/* 803C7C38 003C4B98 CB 81 00 20 */ lfd f28, 0x20(r1) -/* 803C7C3C 003C4B9C CB 61 00 18 */ lfd f27, 0x18(r1) -/* 803C7C40 003C4BA0 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 803C7C44 003C4BA4 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 803C7C48 003C4BA8 83 A1 00 0C */ lwz r29, 0xc(r1) -/* 803C7C4C 003C4BAC 83 81 00 08 */ lwz r28, 8(r1) -/* 803C7C50 003C4BB0 38 21 00 40 */ addi r1, r1, 0x40 -/* 803C7C54 003C4BB4 7C 08 03 A6 */ mtlr r0 -/* 803C7C58 003C4BB8 4E 80 00 20 */ blr - -.global __THPHuffDecodeDCTCompY -__THPHuffDecodeDCTCompY: -/* 803C7C5C 003C4BBC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C7C60 003C4BC0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803C7C64 003C4BC4 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803C7C68 003C4BC8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 803C7C6C 003C4BCC 7C 00 27 EC */ dcbz 0, r4 -/* 803C7C70 003C4BD0 81 8D B0 40 */ lwz r12, lbl_805A9C00@sda21(r13) -/* 803C7C74 003C4BD4 81 63 06 A4 */ lwz r11, 0x6a4(r3) -/* 803C7C78 003C4BD8 39 2C 00 20 */ addi r9, r12, 0x20 -/* 803C7C7C 003C4BDC 81 43 06 A0 */ lwz r10, 0x6a0(r3) -/* 803C7C80 003C4BE0 38 AB 00 04 */ addi r5, r11, 4 -/* 803C7C84 003C4BE4 2C 0B 00 1C */ cmpwi r11, 0x1c -/* 803C7C88 003C4BE8 5D 48 2E FE */ rlwnm r8, r10, r5, 0x1b, 0x1f -/* 803C7C8C 003C4BEC 41 81 00 C4 */ bgt lbl_803C7D50 -/* 803C7C90 003C4BF0 7C AC 40 AE */ lbzx r5, r12, r8 -/* 803C7C94 003C4BF4 7D 29 40 AE */ lbzx r9, r9, r8 -/* 803C7C98 003C4BF8 2C 05 00 FF */ cmpwi r5, 0xff -/* 803C7C9C 003C4BFC 41 82 00 10 */ beq lbl_803C7CAC -/* 803C7CA0 003C4C00 7D 6B 4A 14 */ add r11, r11, r9 -/* 803C7CA4 003C4C04 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C7CA8 003C4C08 48 00 02 4C */ b lbl_803C7EF4 -lbl_803C7CAC: -/* 803C7CAC 003C4C0C 38 CC 00 44 */ addi r6, r12, 0x44 -/* 803C7CB0 003C4C10 39 6B 00 05 */ addi r11, r11, 5 -/* 803C7CB4 003C4C14 38 00 00 14 */ li r0, 0x14 -/* 803C7CB8 003C4C18 38 A0 00 05 */ li r5, 5 -/* 803C7CBC 003C4C1C 38 C6 00 14 */ addi r6, r6, 0x14 -lbl_803C7CC0: -/* 803C7CC0 003C4C20 2C 0B 00 21 */ cmpwi r11, 0x21 -/* 803C7CC4 003C4C24 55 08 08 3C */ slwi r8, r8, 1 -/* 803C7CC8 003C4C28 41 82 00 18 */ beq lbl_803C7CE0 -/* 803C7CCC 003C4C2C 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f -/* 803C7CD0 003C4C30 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C7CD4 003C4C34 7D 08 4B 78 */ or r8, r8, r9 -/* 803C7CD8 003C4C38 39 6B 00 01 */ addi r11, r11, 1 -/* 803C7CDC 003C4C3C 48 00 00 48 */ b lbl_803C7D24 -lbl_803C7CE0: -/* 803C7CE0 003C4C40 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C7CE4 003C4C44 39 60 00 01 */ li r11, 1 -/* 803C7CE8 003C4C48 85 49 00 04 */ lwzu r10, 4(r9) -/* 803C7CEC 003C4C4C 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C7CF0 003C4C50 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C7CF4 003C4C54 51 48 0F FE */ rlwimi r8, r10, 1, 0x1f, 0x1f -/* 803C7CF8 003C4C58 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C7CFC 003C4C5C 48 00 00 14 */ b lbl_803C7D10 -lbl_803C7D00: -/* 803C7D00 003C4C60 55 08 08 3C */ slwi r8, r8, 1 -/* 803C7D04 003C4C64 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f -/* 803C7D08 003C4C68 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C7D0C 003C4C6C 7D 08 4B 78 */ or r8, r8, r9 -lbl_803C7D10: -/* 803C7D10 003C4C70 7C 08 00 00 */ cmpw r8, r0 -/* 803C7D14 003C4C74 39 6B 00 01 */ addi r11, r11, 1 -/* 803C7D18 003C4C78 38 A5 00 01 */ addi r5, r5, 1 -/* 803C7D1C 003C4C7C 41 81 FF E4 */ bgt lbl_803C7D00 -/* 803C7D20 003C4C80 48 00 00 10 */ b lbl_803C7D30 -lbl_803C7D24: -/* 803C7D24 003C4C84 7C 08 00 00 */ cmpw r8, r0 -/* 803C7D28 003C4C88 38 A5 00 01 */ addi r5, r5, 1 -/* 803C7D2C 003C4C8C 41 81 FF 94 */ bgt lbl_803C7CC0 -lbl_803C7D30: -/* 803C7D30 003C4C90 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C7D34 003C4C94 54 A0 10 3A */ slwi r0, r5, 2 -/* 803C7D38 003C4C98 7C AC 02 14 */ add r5, r12, r0 -/* 803C7D3C 003C4C9C 80 CC 00 40 */ lwz r6, 0x40(r12) -/* 803C7D40 003C4CA0 80 05 00 8C */ lwz r0, 0x8c(r5) -/* 803C7D44 003C4CA4 7C 00 32 14 */ add r0, r0, r6 -/* 803C7D48 003C4CA8 7C A8 00 AE */ lbzx r5, r8, r0 -/* 803C7D4C 003C4CAC 48 00 01 A8 */ b lbl_803C7EF4 -lbl_803C7D50: -/* 803C7D50 003C4CB0 2C 0B 00 21 */ cmpwi r11, 0x21 -/* 803C7D54 003C4CB4 81 03 06 9C */ lwz r8, 0x69c(r3) -/* 803C7D58 003C4CB8 41 82 00 B4 */ beq lbl_803C7E0C -/* 803C7D5C 003C4CBC 2C 0B 00 20 */ cmpwi r11, 0x20 -/* 803C7D60 003C4CC0 5D 45 2E FE */ rlwnm r5, r10, r5, 0x1b, 0x1f -/* 803C7D64 003C4CC4 41 82 00 2C */ beq lbl_803C7D90 -/* 803C7D68 003C4CC8 7D 0C 28 AE */ lbzx r8, r12, r5 -/* 803C7D6C 003C4CCC 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C7D70 003C4CD0 2C 08 00 FF */ cmpwi r8, 0xff -/* 803C7D74 003C4CD4 7C AB 4A 14 */ add r5, r11, r9 -/* 803C7D78 003C4CD8 41 82 00 F8 */ beq lbl_803C7E70 -/* 803C7D7C 003C4CDC 2C 05 00 21 */ cmpwi r5, 0x21 -/* 803C7D80 003C4CE0 90 A3 06 A4 */ stw r5, 0x6a4(r3) -/* 803C7D84 003C4CE4 41 81 00 EC */ bgt lbl_803C7E70 -/* 803C7D88 003C4CE8 7D 05 43 78 */ mr r5, r8 -/* 803C7D8C 003C4CEC 48 00 01 68 */ b lbl_803C7EF4 -lbl_803C7D90: -/* 803C7D90 003C4CF0 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C7D94 003C4CF4 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C7D98 003C4CF8 51 45 27 3E */ rlwimi r5, r10, 4, 0x1c, 0x1f -/* 803C7D9C 003C4CFC 7D 0C 28 AE */ lbzx r8, r12, r5 -/* 803C7DA0 003C4D00 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C7DA4 003C4D04 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C7DA8 003C4D08 2C 08 00 FF */ cmpwi r8, 0xff -/* 803C7DAC 003C4D0C 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C7DB0 003C4D10 41 82 00 0C */ beq lbl_803C7DBC -/* 803C7DB4 003C4D14 7D 05 43 78 */ mr r5, r8 -/* 803C7DB8 003C4D18 48 00 01 3C */ b lbl_803C7EF4 -lbl_803C7DBC: -/* 803C7DBC 003C4D1C 38 CC 00 44 */ addi r6, r12, 0x44 -/* 803C7DC0 003C4D20 39 60 00 14 */ li r11, 0x14 -/* 803C7DC4 003C4D24 38 C6 00 14 */ addi r6, r6, 0x14 -/* 803C7DC8 003C4D28 54 A8 D8 08 */ slwi r8, r5, 0x1b -/* 803C7DCC 003C4D2C 39 60 00 05 */ li r11, 5 -/* 803C7DD0 003C4D30 51 48 F8 7E */ rlwimi r8, r10, 0x1f, 1, 0x1f -lbl_803C7DD4: -/* 803C7DD4 003C4D34 21 4B 00 1F */ subfic r10, r11, 0x1f -/* 803C7DD8 003C4D38 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C7DDC 003C4D3C 7D 05 54 30 */ srw r5, r8, r10 -/* 803C7DE0 003C4D40 7C 05 00 00 */ cmpw r5, r0 -/* 803C7DE4 003C4D44 39 6B 00 01 */ addi r11, r11, 1 -/* 803C7DE8 003C4D48 41 81 FF EC */ bgt lbl_803C7DD4 -/* 803C7DEC 003C4D4C 91 63 06 A4 */ stw r11, 0x6a4(r3) -lbl_803C7DF0: -/* 803C7DF0 003C4D50 55 60 10 3A */ slwi r0, r11, 2 -/* 803C7DF4 003C4D54 80 EC 00 40 */ lwz r7, 0x40(r12) -/* 803C7DF8 003C4D58 7C CC 02 14 */ add r6, r12, r0 -/* 803C7DFC 003C4D5C 80 06 00 8C */ lwz r0, 0x8c(r6) -/* 803C7E00 003C4D60 7C 00 3A 14 */ add r0, r0, r7 -/* 803C7E04 003C4D64 7C A5 00 AE */ lbzx r5, r5, r0 -/* 803C7E08 003C4D68 48 00 00 EC */ b lbl_803C7EF4 -lbl_803C7E0C: -/* 803C7E0C 003C4D6C 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C7E10 003C4D70 55 45 2E FE */ srwi r5, r10, 0x1b -/* 803C7E14 003C4D74 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C7E18 003C4D78 7D 6C 28 AE */ lbzx r11, r12, r5 -/* 803C7E1C 003C4D7C 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C7E20 003C4D80 2C 0B 00 FF */ cmpwi r11, 0xff -/* 803C7E24 003C4D84 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C7E28 003C4D88 39 29 00 01 */ addi r9, r9, 1 -/* 803C7E2C 003C4D8C 41 82 00 10 */ beq lbl_803C7E3C -/* 803C7E30 003C4D90 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C7E34 003C4D94 7D 65 5B 78 */ mr r5, r11 -/* 803C7E38 003C4D98 48 00 00 BC */ b lbl_803C7EF4 -lbl_803C7E3C: -/* 803C7E3C 003C4D9C 39 60 00 05 */ li r11, 5 -/* 803C7E40 003C4DA0 38 C0 00 14 */ li r6, 0x14 -lbl_803C7E44: -/* 803C7E44 003C4DA4 21 0B 00 1F */ subfic r8, r11, 0x1f -/* 803C7E48 003C4DA8 39 6B 00 01 */ addi r11, r11, 1 -/* 803C7E4C 003C4DAC 38 C6 00 04 */ addi r6, r6, 4 -/* 803C7E50 003C4DB0 7D 45 44 30 */ srw r5, r10, r8 -/* 803C7E54 003C4DB4 7C EC 32 14 */ add r7, r12, r6 -/* 803C7E58 003C4DB8 80 07 00 44 */ lwz r0, 0x44(r7) -/* 803C7E5C 003C4DBC 7C 05 00 00 */ cmpw r5, r0 -/* 803C7E60 003C4DC0 41 81 FF E4 */ bgt lbl_803C7E44 -/* 803C7E64 003C4DC4 38 0B 00 01 */ addi r0, r11, 1 -/* 803C7E68 003C4DC8 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C7E6C 003C4DCC 4B FF FF 84 */ b lbl_803C7DF0 -lbl_803C7E70: -/* 803C7E70 003C4DD0 20 0B 00 21 */ subfic r0, r11, 0x21 -/* 803C7E74 003C4DD4 38 A0 FF FF */ li r5, -1 -/* 803C7E78 003C4DD8 7C A7 00 30 */ slw r7, r5, r0 -/* 803C7E7C 003C4DDC 7D 45 38 78 */ andc r5, r10, r7 -/* 803C7E80 003C4DE0 38 EC 00 44 */ addi r7, r12, 0x44 -/* 803C7E84 003C4DE4 81 03 06 9C */ lwz r8, 0x69c(r3) -/* 803C7E88 003C4DE8 20 CB 00 21 */ subfic r6, r11, 0x21 -/* 803C7E8C 003C4DEC 39 66 00 01 */ addi r11, r6, 1 -/* 803C7E90 003C4DF0 54 C6 10 3A */ slwi r6, r6, 2 -/* 803C7E94 003C4DF4 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C7E98 003C4DF8 7C E7 32 14 */ add r7, r7, r6 -/* 803C7E9C 003C4DFC 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C7EA0 003C4E00 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C7EA4 003C4E04 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C7EA8 003C4E08 51 45 0F FE */ rlwimi r5, r10, 1, 0x1f, 0x1f -/* 803C7EAC 003C4E0C 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C7EB0 003C4E10 39 00 00 02 */ li r8, 2 -/* 803C7EB4 003C4E14 48 00 00 18 */ b lbl_803C7ECC -lbl_803C7EB8: -/* 803C7EB8 003C4E18 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C7EBC 003C4E1C 39 6B 00 01 */ addi r11, r11, 1 -/* 803C7EC0 003C4E20 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C7EC4 003C4E24 7C A5 4A 14 */ add r5, r5, r9 -/* 803C7EC8 003C4E28 39 08 00 01 */ addi r8, r8, 1 -lbl_803C7ECC: -/* 803C7ECC 003C4E2C 7C 05 30 00 */ cmpw r5, r6 -/* 803C7ED0 003C4E30 5D 49 47 FE */ rlwnm r9, r10, r8, 0x1f, 0x1f -/* 803C7ED4 003C4E34 41 81 FF E4 */ bgt lbl_803C7EB8 -/* 803C7ED8 003C4E38 91 03 06 A4 */ stw r8, 0x6a4(r3) -/* 803C7EDC 003C4E3C 55 60 10 3A */ slwi r0, r11, 2 -/* 803C7EE0 003C4E40 7C CC 02 14 */ add r6, r12, r0 -/* 803C7EE4 003C4E44 80 EC 00 40 */ lwz r7, 0x40(r12) -/* 803C7EE8 003C4E48 80 06 00 8C */ lwz r0, 0x8c(r6) -/* 803C7EEC 003C4E4C 7C 00 3A 14 */ add r0, r0, r7 -/* 803C7EF0 003C4E50 7C A5 00 AE */ lbzx r5, r5, r0 -lbl_803C7EF4: -/* 803C7EF4 003C4E54 38 00 00 20 */ li r0, 0x20 -/* 803C7EF8 003C4E58 7C 04 07 EC */ dcbz r4, r0 -/* 803C7EFC 003C4E5C 38 E0 00 00 */ li r7, 0 -/* 803C7F00 003C4E60 38 00 00 40 */ li r0, 0x40 -/* 803C7F04 003C4E64 7C 04 07 EC */ dcbz r4, r0 -/* 803C7F08 003C4E68 2C 05 00 00 */ cmpwi r5, 0 -/* 803C7F0C 003C4E6C 41 82 00 84 */ beq lbl_803C7F90 -/* 803C7F10 003C4E70 80 E3 06 A4 */ lwz r7, 0x6a4(r3) -/* 803C7F14 003C4E74 21 07 00 21 */ subfic r8, r7, 0x21 -/* 803C7F18 003C4E78 80 C3 06 A0 */ lwz r6, 0x6a0(r3) -/* 803C7F1C 003C4E7C 7D 28 28 11 */ subfc. r9, r8, r5 -/* 803C7F20 003C4E80 39 47 FF FF */ addi r10, r7, -1 -/* 803C7F24 003C4E84 41 81 00 1C */ bgt lbl_803C7F40 -/* 803C7F28 003C4E88 7C 07 2A 14 */ add r0, r7, r5 -/* 803C7F2C 003C4E8C 7C C7 50 30 */ slw r7, r6, r10 -/* 803C7F30 003C4E90 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C7F34 003C4E94 20 05 00 20 */ subfic r0, r5, 0x20 -/* 803C7F38 003C4E98 7C E7 04 30 */ srw r7, r7, r0 -/* 803C7F3C 003C4E9C 48 00 00 30 */ b lbl_803C7F6C -lbl_803C7F40: -/* 803C7F40 003C4EA0 80 E3 06 9C */ lwz r7, 0x69c(r3) -/* 803C7F44 003C4EA4 7C C0 50 30 */ slw r0, r6, r10 -/* 803C7F48 003C4EA8 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C7F4C 003C4EAC 39 29 00 01 */ addi r9, r9, 1 -/* 803C7F50 003C4EB0 90 C3 06 A0 */ stw r6, 0x6a0(r3) -/* 803C7F54 003C4EB4 7C C6 44 30 */ srw r6, r6, r8 -/* 803C7F58 003C4EB8 90 E3 06 9C */ stw r7, 0x69c(r3) -/* 803C7F5C 003C4EBC 7C 06 02 14 */ add r0, r6, r0 -/* 803C7F60 003C4EC0 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C7F64 003C4EC4 21 25 00 20 */ subfic r9, r5, 0x20 -/* 803C7F68 003C4EC8 7C 07 4C 30 */ srw r7, r0, r9 -lbl_803C7F6C: -/* 803C7F6C 003C4ECC 7C E0 07 34 */ extsh r0, r7 -/* 803C7F70 003C4ED0 7C 06 00 34 */ cntlzw r6, r0 -/* 803C7F74 003C4ED4 20 05 00 20 */ subfic r0, r5, 0x20 -/* 803C7F78 003C4ED8 7C 06 00 00 */ cmpw r6, r0 -/* 803C7F7C 003C4EDC 40 81 00 14 */ ble lbl_803C7F90 -/* 803C7F80 003C4EE0 38 00 FF FF */ li r0, -1 -/* 803C7F84 003C4EE4 7C 00 28 30 */ slw r0, r0, r5 -/* 803C7F88 003C4EE8 7C E0 3A 14 */ add r7, r0, r7 -/* 803C7F8C 003C4EEC 38 E7 00 01 */ addi r7, r7, 1 -lbl_803C7F90: -/* 803C7F90 003C4EF0 38 00 00 60 */ li r0, 0x60 -/* 803C7F94 003C4EF4 7C 04 07 EC */ dcbz r4, r0 -/* 803C7F98 003C4EF8 A8 03 06 84 */ lha r0, 0x684(r3) -/* 803C7F9C 003C4EFC 7C 00 3A 14 */ add r0, r0, r7 -/* 803C7FA0 003C4F00 B0 03 06 84 */ sth r0, 0x684(r3) -/* 803C7FA4 003C4F04 B0 04 00 00 */ sth r0, 0(r4) -/* 803C7FA8 003C4F08 81 0D B0 A0 */ lwz r8, lbl_805A9C60@sda21(r13) -/* 803C7FAC 003C4F0C 80 C3 06 A4 */ lwz r6, 0x6a4(r3) -/* 803C7FB0 003C4F10 38 E8 00 20 */ addi r7, r8, 0x20 -/* 803C7FB4 003C4F14 80 03 06 A0 */ lwz r0, 0x6a0(r3) -/* 803C7FB8 003C4F18 38 A0 00 01 */ li r5, 1 -/* 803C7FBC 003C4F1C 3D 20 80 3E */ lis r9, lbl_803D8CD0@ha -/* 803C7FC0 003C4F20 39 49 8C D0 */ addi r10, r9, lbl_803D8CD0@l -/* 803C7FC4 003C4F24 48 00 02 F0 */ b lbl_803C82B4 -lbl_803C7FC8: -/* 803C7FC8 003C4F28 3B E6 00 04 */ addi r31, r6, 4 -/* 803C7FCC 003C4F2C 2C 06 00 1C */ cmpwi r6, 0x1c -/* 803C7FD0 003C4F30 5C 0C FE FE */ rlwnm r12, r0, r31, 0x1b, 0x1f -/* 803C7FD4 003C4F34 41 81 00 B8 */ bgt lbl_803C808C -/* 803C7FD8 003C4F38 7F C8 60 AE */ lbzx r30, r8, r12 -/* 803C7FDC 003C4F3C 7F E7 60 AE */ lbzx r31, r7, r12 -/* 803C7FE0 003C4F40 2C 1E 00 FF */ cmpwi r30, 0xff -/* 803C7FE4 003C4F44 41 82 00 0C */ beq lbl_803C7FF0 -/* 803C7FE8 003C4F48 7C C6 FA 14 */ add r6, r6, r31 -/* 803C7FEC 003C4F4C 48 00 02 28 */ b lbl_803C8214 -lbl_803C7FF0: -/* 803C7FF0 003C4F50 38 C6 00 05 */ addi r6, r6, 5 -/* 803C7FF4 003C4F54 39 28 00 44 */ addi r9, r8, 0x44 -/* 803C7FF8 003C4F58 39 60 00 14 */ li r11, 0x14 -/* 803C7FFC 003C4F5C 3B E0 00 05 */ li r31, 5 -/* 803C8000 003C4F60 39 29 00 14 */ addi r9, r9, 0x14 -lbl_803C8004: -/* 803C8004 003C4F64 2C 06 00 21 */ cmpwi r6, 0x21 -/* 803C8008 003C4F68 55 8C 08 3C */ slwi r12, r12, 1 -/* 803C800C 003C4F6C 41 82 00 18 */ beq lbl_803C8024 -/* 803C8010 003C4F70 5C 1E 37 FE */ rlwnm r30, r0, r6, 0x1f, 0x1f -/* 803C8014 003C4F74 85 69 00 04 */ lwzu r11, 4(r9) -/* 803C8018 003C4F78 7D 8C F3 78 */ or r12, r12, r30 -/* 803C801C 003C4F7C 38 C6 00 01 */ addi r6, r6, 1 -/* 803C8020 003C4F80 48 00 00 44 */ b lbl_803C8064 -lbl_803C8024: -/* 803C8024 003C4F84 83 C3 06 9C */ lwz r30, 0x69c(r3) -/* 803C8028 003C4F88 38 C0 00 01 */ li r6, 1 -/* 803C802C 003C4F8C 84 1E 00 04 */ lwzu r0, 4(r30) -/* 803C8030 003C4F90 85 69 00 04 */ lwzu r11, 4(r9) -/* 803C8034 003C4F94 93 C3 06 9C */ stw r30, 0x69c(r3) -/* 803C8038 003C4F98 50 0C 0F FE */ rlwimi r12, r0, 1, 0x1f, 0x1f -/* 803C803C 003C4F9C 48 00 00 14 */ b lbl_803C8050 -lbl_803C8040: -/* 803C8040 003C4FA0 55 8C 08 3C */ slwi r12, r12, 1 -/* 803C8044 003C4FA4 5C 1E 37 FE */ rlwnm r30, r0, r6, 0x1f, 0x1f -/* 803C8048 003C4FA8 85 69 00 04 */ lwzu r11, 4(r9) -/* 803C804C 003C4FAC 7D 8C F3 78 */ or r12, r12, r30 -lbl_803C8050: -/* 803C8050 003C4FB0 7C 0C 58 00 */ cmpw r12, r11 -/* 803C8054 003C4FB4 38 C6 00 01 */ addi r6, r6, 1 -/* 803C8058 003C4FB8 3B FF 00 01 */ addi r31, r31, 1 -/* 803C805C 003C4FBC 41 81 FF E4 */ bgt lbl_803C8040 -/* 803C8060 003C4FC0 48 00 00 10 */ b lbl_803C8070 -lbl_803C8064: -/* 803C8064 003C4FC4 7C 0C 58 00 */ cmpw r12, r11 -/* 803C8068 003C4FC8 3B FF 00 01 */ addi r31, r31, 1 -/* 803C806C 003C4FCC 41 81 FF 98 */ bgt lbl_803C8004 -lbl_803C8070: -/* 803C8070 003C4FD0 57 E9 10 3A */ slwi r9, r31, 2 -/* 803C8074 003C4FD4 81 68 00 40 */ lwz r11, 0x40(r8) -/* 803C8078 003C4FD8 7D 28 4A 14 */ add r9, r8, r9 -/* 803C807C 003C4FDC 81 29 00 8C */ lwz r9, 0x8c(r9) -/* 803C8080 003C4FE0 7D 29 5A 14 */ add r9, r9, r11 -/* 803C8084 003C4FE4 7F CC 48 AE */ lbzx r30, r12, r9 -/* 803C8088 003C4FE8 48 00 01 8C */ b lbl_803C8214 -lbl_803C808C: -/* 803C808C 003C4FEC 2C 06 00 21 */ cmpwi r6, 0x21 -/* 803C8090 003C4FF0 81 83 06 9C */ lwz r12, 0x69c(r3) -/* 803C8094 003C4FF4 41 82 00 34 */ beq lbl_803C80C8 -/* 803C8098 003C4FF8 2C 06 00 20 */ cmpwi r6, 0x20 -/* 803C809C 003C4FFC 5C 1F FE FE */ rlwnm r31, r0, r31, 0x1b, 0x1f -/* 803C80A0 003C5000 41 82 00 8C */ beq lbl_803C812C -/* 803C80A4 003C5004 7F C8 F8 AE */ lbzx r30, r8, r31 -/* 803C80A8 003C5008 7F A7 F8 AE */ lbzx r29, r7, r31 -/* 803C80AC 003C500C 2C 1E 00 FF */ cmpwi r30, 0xff -/* 803C80B0 003C5010 7F E6 EA 14 */ add r31, r6, r29 -/* 803C80B4 003C5014 41 82 00 E4 */ beq lbl_803C8198 -/* 803C80B8 003C5018 2C 1F 00 21 */ cmpwi r31, 0x21 -/* 803C80BC 003C501C 41 81 00 DC */ bgt lbl_803C8198 -/* 803C80C0 003C5020 7F E6 FB 78 */ mr r6, r31 -/* 803C80C4 003C5024 48 00 01 50 */ b lbl_803C8214 -lbl_803C80C8: -/* 803C80C8 003C5028 84 0C 00 04 */ lwzu r0, 4(r12) -/* 803C80CC 003C502C 54 1F 2E FE */ srwi r31, r0, 0x1b -/* 803C80D0 003C5030 91 83 06 9C */ stw r12, 0x69c(r3) -/* 803C80D4 003C5034 7F C8 F8 AE */ lbzx r30, r8, r31 -/* 803C80D8 003C5038 7D 87 F8 AE */ lbzx r12, r7, r31 -/* 803C80DC 003C503C 2C 1E 00 FF */ cmpwi r30, 0xff -/* 803C80E0 003C5040 38 CC 00 01 */ addi r6, r12, 1 -/* 803C80E4 003C5044 41 82 00 08 */ beq lbl_803C80EC -/* 803C80E8 003C5048 48 00 01 2C */ b lbl_803C8214 -lbl_803C80EC: -/* 803C80EC 003C504C 3B C0 00 05 */ li r30, 5 -/* 803C80F0 003C5050 38 C0 00 14 */ li r6, 0x14 -lbl_803C80F4: -/* 803C80F4 003C5054 21 9E 00 1F */ subfic r12, r30, 0x1f -/* 803C80F8 003C5058 3B DE 00 01 */ addi r30, r30, 1 -/* 803C80FC 003C505C 38 C6 00 04 */ addi r6, r6, 4 -/* 803C8100 003C5060 7C 1F 64 30 */ srw r31, r0, r12 -/* 803C8104 003C5064 7D 88 32 14 */ add r12, r8, r6 -/* 803C8108 003C5068 81 2C 00 44 */ lwz r9, 0x44(r12) -/* 803C810C 003C506C 7C 1F 48 00 */ cmpw r31, r9 -/* 803C8110 003C5070 41 81 FF E4 */ bgt lbl_803C80F4 -/* 803C8114 003C5074 81 68 00 40 */ lwz r11, 0x40(r8) -/* 803C8118 003C5078 38 DE 00 01 */ addi r6, r30, 1 -/* 803C811C 003C507C 81 2C 00 8C */ lwz r9, 0x8c(r12) -/* 803C8120 003C5080 7D 29 5A 14 */ add r9, r9, r11 -/* 803C8124 003C5084 7F DF 48 AE */ lbzx r30, r31, r9 -/* 803C8128 003C5088 48 00 00 EC */ b lbl_803C8214 -lbl_803C812C: -/* 803C812C 003C508C 84 0C 00 04 */ lwzu r0, 4(r12) -/* 803C8130 003C5090 91 83 06 9C */ stw r12, 0x69c(r3) -/* 803C8134 003C5094 50 1F 27 3E */ rlwimi r31, r0, 4, 0x1c, 0x1f -/* 803C8138 003C5098 7F C8 F8 AE */ lbzx r30, r8, r31 -/* 803C813C 003C509C 7C C7 F8 AE */ lbzx r6, r7, r31 -/* 803C8140 003C50A0 2C 1E 00 FF */ cmpwi r30, 0xff -/* 803C8144 003C50A4 41 82 00 08 */ beq lbl_803C814C -/* 803C8148 003C50A8 48 00 00 CC */ b lbl_803C8214 -lbl_803C814C: -/* 803C814C 003C50AC 39 28 00 44 */ addi r9, r8, 0x44 -/* 803C8150 003C50B0 38 C0 00 14 */ li r6, 0x14 -/* 803C8154 003C50B4 39 29 00 14 */ addi r9, r9, 0x14 -/* 803C8158 003C50B8 57 EC D8 08 */ slwi r12, r31, 0x1b -/* 803C815C 003C50BC 38 C0 00 05 */ li r6, 5 -/* 803C8160 003C50C0 50 0C F8 7E */ rlwimi r12, r0, 0x1f, 1, 0x1f -lbl_803C8164: -/* 803C8164 003C50C4 23 C6 00 1F */ subfic r30, r6, 0x1f -/* 803C8168 003C50C8 85 69 00 04 */ lwzu r11, 4(r9) -/* 803C816C 003C50CC 7D 9F F4 30 */ srw r31, r12, r30 -/* 803C8170 003C50D0 7C 1F 58 00 */ cmpw r31, r11 -/* 803C8174 003C50D4 38 C6 00 01 */ addi r6, r6, 1 -/* 803C8178 003C50D8 41 81 FF EC */ bgt lbl_803C8164 -/* 803C817C 003C50DC 54 C9 10 3A */ slwi r9, r6, 2 -/* 803C8180 003C50E0 81 68 00 40 */ lwz r11, 0x40(r8) -/* 803C8184 003C50E4 7D 28 4A 14 */ add r9, r8, r9 -/* 803C8188 003C50E8 81 29 00 8C */ lwz r9, 0x8c(r9) -/* 803C818C 003C50EC 7D 29 5A 14 */ add r9, r9, r11 -/* 803C8190 003C50F0 7F DF 48 AE */ lbzx r30, r31, r9 -/* 803C8194 003C50F4 48 00 00 80 */ b lbl_803C8214 -lbl_803C8198: -/* 803C8198 003C50F8 21 26 00 21 */ subfic r9, r6, 0x21 -/* 803C819C 003C50FC 39 60 FF FF */ li r11, -1 -/* 803C81A0 003C5100 7D 69 48 30 */ slw r9, r11, r9 -/* 803C81A4 003C5104 7C 1F 48 78 */ andc r31, r0, r9 -/* 803C81A8 003C5108 39 28 00 44 */ addi r9, r8, 0x44 -/* 803C81AC 003C510C 81 83 06 9C */ lwz r12, 0x69c(r3) -/* 803C81B0 003C5110 21 66 00 21 */ subfic r11, r6, 0x21 -/* 803C81B4 003C5114 3B CB 00 01 */ addi r30, r11, 1 -/* 803C81B8 003C5118 55 6B 10 3A */ slwi r11, r11, 2 -/* 803C81BC 003C511C 84 0C 00 04 */ lwzu r0, 4(r12) -/* 803C81C0 003C5120 7D 29 5A 14 */ add r9, r9, r11 -/* 803C81C4 003C5124 91 83 06 9C */ stw r12, 0x69c(r3) -/* 803C81C8 003C5128 57 FF 08 3C */ slwi r31, r31, 1 -/* 803C81CC 003C512C 50 1F 0F FE */ rlwimi r31, r0, 1, 0x1f, 0x1f -/* 803C81D0 003C5130 85 69 00 04 */ lwzu r11, 4(r9) -/* 803C81D4 003C5134 38 C0 00 02 */ li r6, 2 -/* 803C81D8 003C5138 48 00 00 18 */ b lbl_803C81F0 -lbl_803C81DC: -/* 803C81DC 003C513C 57 FF 08 3C */ slwi r31, r31, 1 -/* 803C81E0 003C5140 3B DE 00 01 */ addi r30, r30, 1 -/* 803C81E4 003C5144 85 69 00 04 */ lwzu r11, 4(r9) -/* 803C81E8 003C5148 7F FF EA 14 */ add r31, r31, r29 -/* 803C81EC 003C514C 38 C6 00 01 */ addi r6, r6, 1 -lbl_803C81F0: -/* 803C81F0 003C5150 7C 1F 58 00 */ cmpw r31, r11 -/* 803C81F4 003C5154 5C 1D 37 FE */ rlwnm r29, r0, r6, 0x1f, 0x1f -/* 803C81F8 003C5158 41 81 FF E4 */ bgt lbl_803C81DC -/* 803C81FC 003C515C 57 C9 10 3A */ slwi r9, r30, 2 -/* 803C8200 003C5160 81 68 00 40 */ lwz r11, 0x40(r8) -/* 803C8204 003C5164 7D 28 4A 14 */ add r9, r8, r9 -/* 803C8208 003C5168 81 29 00 8C */ lwz r9, 0x8c(r9) -/* 803C820C 003C516C 7D 29 5A 14 */ add r9, r9, r11 -/* 803C8210 003C5170 7F DF 48 AE */ lbzx r30, r31, r9 -lbl_803C8214: -/* 803C8214 003C5174 73 DD 00 0F */ andi. r29, r30, 0xf -/* 803C8218 003C5178 7F DE 26 70 */ srawi r30, r30, 4 -/* 803C821C 003C517C 41 82 00 88 */ beq lbl_803C82A4 -/* 803C8220 003C5180 7C A5 F2 14 */ add r5, r5, r30 -/* 803C8224 003C5184 23 E6 00 21 */ subfic r31, r6, 0x21 -/* 803C8228 003C5188 7D 9F E8 11 */ subfc. r12, r31, r29 -/* 803C822C 003C518C 39 26 FF FF */ addi r9, r6, -1 -/* 803C8230 003C5190 41 81 00 18 */ bgt lbl_803C8248 -/* 803C8234 003C5194 7C C6 EA 14 */ add r6, r6, r29 -/* 803C8238 003C5198 7C 0B 48 30 */ slw r11, r0, r9 -/* 803C823C 003C519C 21 3D 00 20 */ subfic r9, r29, 0x20 -/* 803C8240 003C51A0 7D 7E 4C 30 */ srw r30, r11, r9 -/* 803C8244 003C51A4 48 00 00 28 */ b lbl_803C826C -lbl_803C8248: -/* 803C8248 003C51A8 81 63 06 9C */ lwz r11, 0x69c(r3) -/* 803C824C 003C51AC 7C 09 48 30 */ slw r9, r0, r9 -/* 803C8250 003C51B0 84 0B 00 04 */ lwzu r0, 4(r11) -/* 803C8254 003C51B4 38 CC 00 01 */ addi r6, r12, 1 -/* 803C8258 003C51B8 91 63 06 9C */ stw r11, 0x69c(r3) -/* 803C825C 003C51BC 7C 0B FC 30 */ srw r11, r0, r31 -/* 803C8260 003C51C0 7D 2B 4A 14 */ add r9, r11, r9 -/* 803C8264 003C51C4 21 9D 00 20 */ subfic r12, r29, 0x20 -/* 803C8268 003C51C8 7D 3E 64 30 */ srw r30, r9, r12 -lbl_803C826C: -/* 803C826C 003C51CC 7F CB 00 34 */ cntlzw r11, r30 -/* 803C8270 003C51D0 21 3D 00 20 */ subfic r9, r29, 0x20 -/* 803C8274 003C51D4 7C 0B 48 00 */ cmpw r11, r9 -/* 803C8278 003C51D8 40 81 00 14 */ ble lbl_803C828C -/* 803C827C 003C51DC 39 20 FF FF */ li r9, -1 -/* 803C8280 003C51E0 7D 29 E8 30 */ slw r9, r9, r29 -/* 803C8284 003C51E4 7F C9 F2 14 */ add r30, r9, r30 -/* 803C8288 003C51E8 3B DE 00 01 */ addi r30, r30, 1 -lbl_803C828C: -/* 803C828C 003C51EC 7D 2A 2A 14 */ add r9, r10, r5 -/* 803C8290 003C51F0 89 29 00 00 */ lbz r9, 0(r9) -/* 803C8294 003C51F4 7F CB 07 34 */ extsh r11, r30 -/* 803C8298 003C51F8 55 29 08 3C */ slwi r9, r9, 1 -/* 803C829C 003C51FC 7D 64 4B 2E */ sthx r11, r4, r9 -/* 803C82A0 003C5200 48 00 00 10 */ b lbl_803C82B0 -lbl_803C82A4: -/* 803C82A4 003C5204 2C 1E 00 0F */ cmpwi r30, 0xf -/* 803C82A8 003C5208 40 82 00 14 */ bne lbl_803C82BC -/* 803C82AC 003C520C 38 A5 00 0F */ addi r5, r5, 0xf -lbl_803C82B0: -/* 803C82B0 003C5210 38 A5 00 01 */ addi r5, r5, 1 -lbl_803C82B4: -/* 803C82B4 003C5214 2C 05 00 40 */ cmpwi r5, 0x40 -/* 803C82B8 003C5218 41 80 FD 10 */ blt lbl_803C7FC8 -lbl_803C82BC: -/* 803C82BC 003C521C 90 C3 06 A4 */ stw r6, 0x6a4(r3) -/* 803C82C0 003C5220 90 03 06 A0 */ stw r0, 0x6a0(r3) -/* 803C82C4 003C5224 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803C82C8 003C5228 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 803C82CC 003C522C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 803C82D0 003C5230 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C82D4 003C5234 4E 80 00 20 */ blr - -.global __THPHuffDecodeDCTCompU -__THPHuffDecodeDCTCompU: -/* 803C82D8 003C5238 94 21 FF E8 */ stwu r1, -0x18(r1) -/* 803C82DC 003C523C 93 E1 00 14 */ stw r31, 0x14(r1) -/* 803C82E0 003C5240 93 C1 00 10 */ stw r30, 0x10(r1) -/* 803C82E4 003C5244 7C 00 27 EC */ dcbz 0, r4 -/* 803C82E8 003C5248 81 8D B0 60 */ lwz r12, lbl_805A9C20@sda21(r13) -/* 803C82EC 003C524C 81 63 06 A4 */ lwz r11, 0x6a4(r3) -/* 803C82F0 003C5250 39 2C 00 20 */ addi r9, r12, 0x20 -/* 803C82F4 003C5254 81 43 06 A0 */ lwz r10, 0x6a0(r3) -/* 803C82F8 003C5258 38 AB 00 04 */ addi r5, r11, 4 -/* 803C82FC 003C525C 2C 0B 00 1C */ cmpwi r11, 0x1c -/* 803C8300 003C5260 5D 48 2E FE */ rlwnm r8, r10, r5, 0x1b, 0x1f -/* 803C8304 003C5264 41 81 00 C4 */ bgt lbl_803C83C8 -/* 803C8308 003C5268 7C AC 40 AE */ lbzx r5, r12, r8 -/* 803C830C 003C526C 7D 29 40 AE */ lbzx r9, r9, r8 -/* 803C8310 003C5270 2C 05 00 FF */ cmpwi r5, 0xff -/* 803C8314 003C5274 41 82 00 10 */ beq lbl_803C8324 -/* 803C8318 003C5278 7D 6B 4A 14 */ add r11, r11, r9 -/* 803C831C 003C527C 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8320 003C5280 48 00 02 4C */ b lbl_803C856C -lbl_803C8324: -/* 803C8324 003C5284 38 CC 00 44 */ addi r6, r12, 0x44 -/* 803C8328 003C5288 39 6B 00 05 */ addi r11, r11, 5 -/* 803C832C 003C528C 38 00 00 14 */ li r0, 0x14 -/* 803C8330 003C5290 38 A0 00 05 */ li r5, 5 -/* 803C8334 003C5294 38 C6 00 14 */ addi r6, r6, 0x14 -lbl_803C8338: -/* 803C8338 003C5298 2C 0B 00 21 */ cmpwi r11, 0x21 -/* 803C833C 003C529C 55 08 08 3C */ slwi r8, r8, 1 -/* 803C8340 003C52A0 41 82 00 18 */ beq lbl_803C8358 -/* 803C8344 003C52A4 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f -/* 803C8348 003C52A8 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C834C 003C52AC 7D 08 4B 78 */ or r8, r8, r9 -/* 803C8350 003C52B0 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8354 003C52B4 48 00 00 48 */ b lbl_803C839C -lbl_803C8358: -/* 803C8358 003C52B8 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C835C 003C52BC 39 60 00 01 */ li r11, 1 -/* 803C8360 003C52C0 85 49 00 04 */ lwzu r10, 4(r9) -/* 803C8364 003C52C4 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C8368 003C52C8 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C836C 003C52CC 51 48 0F FE */ rlwimi r8, r10, 1, 0x1f, 0x1f -/* 803C8370 003C52D0 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8374 003C52D4 48 00 00 14 */ b lbl_803C8388 -lbl_803C8378: -/* 803C8378 003C52D8 55 08 08 3C */ slwi r8, r8, 1 -/* 803C837C 003C52DC 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f -/* 803C8380 003C52E0 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C8384 003C52E4 7D 08 4B 78 */ or r8, r8, r9 -lbl_803C8388: -/* 803C8388 003C52E8 7C 08 00 00 */ cmpw r8, r0 -/* 803C838C 003C52EC 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8390 003C52F0 38 A5 00 01 */ addi r5, r5, 1 -/* 803C8394 003C52F4 41 81 FF E4 */ bgt lbl_803C8378 -/* 803C8398 003C52F8 48 00 00 10 */ b lbl_803C83A8 -lbl_803C839C: -/* 803C839C 003C52FC 7C 08 00 00 */ cmpw r8, r0 -/* 803C83A0 003C5300 38 A5 00 01 */ addi r5, r5, 1 -/* 803C83A4 003C5304 41 81 FF 94 */ bgt lbl_803C8338 -lbl_803C83A8: -/* 803C83A8 003C5308 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C83AC 003C530C 54 A0 10 3A */ slwi r0, r5, 2 -/* 803C83B0 003C5310 7C AC 02 14 */ add r5, r12, r0 -/* 803C83B4 003C5314 80 CC 00 40 */ lwz r6, 0x40(r12) -/* 803C83B8 003C5318 80 05 00 8C */ lwz r0, 0x8c(r5) -/* 803C83BC 003C531C 7C 00 32 14 */ add r0, r0, r6 -/* 803C83C0 003C5320 7C A8 00 AE */ lbzx r5, r8, r0 -/* 803C83C4 003C5324 48 00 01 A8 */ b lbl_803C856C -lbl_803C83C8: -/* 803C83C8 003C5328 2C 0B 00 21 */ cmpwi r11, 0x21 -/* 803C83CC 003C532C 81 03 06 9C */ lwz r8, 0x69c(r3) -/* 803C83D0 003C5330 41 82 00 B4 */ beq lbl_803C8484 -/* 803C83D4 003C5334 2C 0B 00 20 */ cmpwi r11, 0x20 -/* 803C83D8 003C5338 5D 45 2E FE */ rlwnm r5, r10, r5, 0x1b, 0x1f -/* 803C83DC 003C533C 41 82 00 2C */ beq lbl_803C8408 -/* 803C83E0 003C5340 7D 0C 28 AE */ lbzx r8, r12, r5 -/* 803C83E4 003C5344 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C83E8 003C5348 2C 08 00 FF */ cmpwi r8, 0xff -/* 803C83EC 003C534C 7C AB 4A 14 */ add r5, r11, r9 -/* 803C83F0 003C5350 41 82 00 F8 */ beq lbl_803C84E8 -/* 803C83F4 003C5354 2C 05 00 21 */ cmpwi r5, 0x21 -/* 803C83F8 003C5358 90 A3 06 A4 */ stw r5, 0x6a4(r3) -/* 803C83FC 003C535C 41 81 00 EC */ bgt lbl_803C84E8 -/* 803C8400 003C5360 7D 05 43 78 */ mr r5, r8 -/* 803C8404 003C5364 48 00 01 68 */ b lbl_803C856C -lbl_803C8408: -/* 803C8408 003C5368 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C840C 003C536C 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C8410 003C5370 51 45 27 3E */ rlwimi r5, r10, 4, 0x1c, 0x1f -/* 803C8414 003C5374 7D 0C 28 AE */ lbzx r8, r12, r5 -/* 803C8418 003C5378 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C841C 003C537C 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8420 003C5380 2C 08 00 FF */ cmpwi r8, 0xff -/* 803C8424 003C5384 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C8428 003C5388 41 82 00 0C */ beq lbl_803C8434 -/* 803C842C 003C538C 7D 05 43 78 */ mr r5, r8 -/* 803C8430 003C5390 48 00 01 3C */ b lbl_803C856C -lbl_803C8434: -/* 803C8434 003C5394 38 CC 00 44 */ addi r6, r12, 0x44 -/* 803C8438 003C5398 39 60 00 14 */ li r11, 0x14 -/* 803C843C 003C539C 38 C6 00 14 */ addi r6, r6, 0x14 -/* 803C8440 003C53A0 54 A8 D8 08 */ slwi r8, r5, 0x1b -/* 803C8444 003C53A4 39 60 00 05 */ li r11, 5 -/* 803C8448 003C53A8 51 48 F8 7E */ rlwimi r8, r10, 0x1f, 1, 0x1f -lbl_803C844C: -/* 803C844C 003C53AC 21 4B 00 1F */ subfic r10, r11, 0x1f -/* 803C8450 003C53B0 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C8454 003C53B4 7D 05 54 30 */ srw r5, r8, r10 -/* 803C8458 003C53B8 7C 05 00 00 */ cmpw r5, r0 -/* 803C845C 003C53BC 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8460 003C53C0 41 81 FF EC */ bgt lbl_803C844C -/* 803C8464 003C53C4 91 63 06 A4 */ stw r11, 0x6a4(r3) -lbl_803C8468: -/* 803C8468 003C53C8 55 60 10 3A */ slwi r0, r11, 2 -/* 803C846C 003C53CC 80 EC 00 40 */ lwz r7, 0x40(r12) -/* 803C8470 003C53D0 7C CC 02 14 */ add r6, r12, r0 -/* 803C8474 003C53D4 80 06 00 8C */ lwz r0, 0x8c(r6) -/* 803C8478 003C53D8 7C 00 3A 14 */ add r0, r0, r7 -/* 803C847C 003C53DC 7C A5 00 AE */ lbzx r5, r5, r0 -/* 803C8480 003C53E0 48 00 00 EC */ b lbl_803C856C -lbl_803C8484: -/* 803C8484 003C53E4 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C8488 003C53E8 55 45 2E FE */ srwi r5, r10, 0x1b -/* 803C848C 003C53EC 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C8490 003C53F0 7D 6C 28 AE */ lbzx r11, r12, r5 -/* 803C8494 003C53F4 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C8498 003C53F8 2C 0B 00 FF */ cmpwi r11, 0xff -/* 803C849C 003C53FC 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C84A0 003C5400 39 29 00 01 */ addi r9, r9, 1 -/* 803C84A4 003C5404 41 82 00 10 */ beq lbl_803C84B4 -/* 803C84A8 003C5408 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C84AC 003C540C 7D 65 5B 78 */ mr r5, r11 -/* 803C84B0 003C5410 48 00 00 BC */ b lbl_803C856C -lbl_803C84B4: -/* 803C84B4 003C5414 39 60 00 05 */ li r11, 5 -/* 803C84B8 003C5418 38 C0 00 14 */ li r6, 0x14 -lbl_803C84BC: -/* 803C84BC 003C541C 21 0B 00 1F */ subfic r8, r11, 0x1f -/* 803C84C0 003C5420 39 6B 00 01 */ addi r11, r11, 1 -/* 803C84C4 003C5424 38 C6 00 04 */ addi r6, r6, 4 -/* 803C84C8 003C5428 7D 45 44 30 */ srw r5, r10, r8 -/* 803C84CC 003C542C 7C EC 32 14 */ add r7, r12, r6 -/* 803C84D0 003C5430 80 07 00 44 */ lwz r0, 0x44(r7) -/* 803C84D4 003C5434 7C 05 00 00 */ cmpw r5, r0 -/* 803C84D8 003C5438 41 81 FF E4 */ bgt lbl_803C84BC -/* 803C84DC 003C543C 38 0B 00 01 */ addi r0, r11, 1 -/* 803C84E0 003C5440 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C84E4 003C5444 4B FF FF 84 */ b lbl_803C8468 -lbl_803C84E8: -/* 803C84E8 003C5448 20 0B 00 21 */ subfic r0, r11, 0x21 -/* 803C84EC 003C544C 38 A0 FF FF */ li r5, -1 -/* 803C84F0 003C5450 7C A7 00 30 */ slw r7, r5, r0 -/* 803C84F4 003C5454 7D 45 38 78 */ andc r5, r10, r7 -/* 803C84F8 003C5458 38 EC 00 44 */ addi r7, r12, 0x44 -/* 803C84FC 003C545C 81 03 06 9C */ lwz r8, 0x69c(r3) -/* 803C8500 003C5460 20 CB 00 21 */ subfic r6, r11, 0x21 -/* 803C8504 003C5464 39 66 00 01 */ addi r11, r6, 1 -/* 803C8508 003C5468 54 C6 10 3A */ slwi r6, r6, 2 -/* 803C850C 003C546C 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C8510 003C5470 7C E7 32 14 */ add r7, r7, r6 -/* 803C8514 003C5474 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C8518 003C5478 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C851C 003C547C 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8520 003C5480 51 45 0F FE */ rlwimi r5, r10, 1, 0x1f, 0x1f -/* 803C8524 003C5484 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C8528 003C5488 39 00 00 02 */ li r8, 2 -/* 803C852C 003C548C 48 00 00 18 */ b lbl_803C8544 -lbl_803C8530: -/* 803C8530 003C5490 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C8534 003C5494 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8538 003C5498 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C853C 003C549C 7C A5 4A 14 */ add r5, r5, r9 -/* 803C8540 003C54A0 39 08 00 01 */ addi r8, r8, 1 -lbl_803C8544: -/* 803C8544 003C54A4 7C 05 30 00 */ cmpw r5, r6 -/* 803C8548 003C54A8 5D 49 47 FE */ rlwnm r9, r10, r8, 0x1f, 0x1f -/* 803C854C 003C54AC 41 81 FF E4 */ bgt lbl_803C8530 -/* 803C8550 003C54B0 91 03 06 A4 */ stw r8, 0x6a4(r3) -/* 803C8554 003C54B4 55 60 10 3A */ slwi r0, r11, 2 -/* 803C8558 003C54B8 7C CC 02 14 */ add r6, r12, r0 -/* 803C855C 003C54BC 80 EC 00 40 */ lwz r7, 0x40(r12) -/* 803C8560 003C54C0 80 06 00 8C */ lwz r0, 0x8c(r6) -/* 803C8564 003C54C4 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8568 003C54C8 7C A5 00 AE */ lbzx r5, r5, r0 -lbl_803C856C: -/* 803C856C 003C54CC 38 00 00 20 */ li r0, 0x20 -/* 803C8570 003C54D0 7C 04 07 EC */ dcbz r4, r0 -/* 803C8574 003C54D4 38 E0 00 00 */ li r7, 0 -/* 803C8578 003C54D8 38 00 00 40 */ li r0, 0x40 -/* 803C857C 003C54DC 7C 04 07 EC */ dcbz r4, r0 -/* 803C8580 003C54E0 2C 05 00 00 */ cmpwi r5, 0 -/* 803C8584 003C54E4 41 82 00 84 */ beq lbl_803C8608 -/* 803C8588 003C54E8 81 23 06 A4 */ lwz r9, 0x6a4(r3) -/* 803C858C 003C54EC 21 49 00 21 */ subfic r10, r9, 0x21 -/* 803C8590 003C54F0 80 E3 06 A0 */ lwz r7, 0x6a0(r3) -/* 803C8594 003C54F4 7D 6A 28 11 */ subfc. r11, r10, r5 -/* 803C8598 003C54F8 39 89 FF FF */ addi r12, r9, -1 -/* 803C859C 003C54FC 41 81 00 1C */ bgt lbl_803C85B8 -/* 803C85A0 003C5500 7C 09 2A 14 */ add r0, r9, r5 -/* 803C85A4 003C5504 7C E9 60 30 */ slw r9, r7, r12 -/* 803C85A8 003C5508 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C85AC 003C550C 20 05 00 20 */ subfic r0, r5, 0x20 -/* 803C85B0 003C5510 7D 27 04 30 */ srw r7, r9, r0 -/* 803C85B4 003C5514 48 00 00 30 */ b lbl_803C85E4 -lbl_803C85B8: -/* 803C85B8 003C5518 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C85BC 003C551C 7C E0 60 30 */ slw r0, r7, r12 -/* 803C85C0 003C5520 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C85C4 003C5524 39 6B 00 01 */ addi r11, r11, 1 -/* 803C85C8 003C5528 90 E3 06 A0 */ stw r7, 0x6a0(r3) -/* 803C85CC 003C552C 7C E7 54 30 */ srw r7, r7, r10 -/* 803C85D0 003C5530 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C85D4 003C5534 7C 07 02 14 */ add r0, r7, r0 -/* 803C85D8 003C5538 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C85DC 003C553C 21 65 00 20 */ subfic r11, r5, 0x20 -/* 803C85E0 003C5540 7C 07 5C 30 */ srw r7, r0, r11 -lbl_803C85E4: -/* 803C85E4 003C5544 7C E0 07 34 */ extsh r0, r7 -/* 803C85E8 003C5548 7C 06 00 34 */ cntlzw r6, r0 -/* 803C85EC 003C554C 20 05 00 20 */ subfic r0, r5, 0x20 -/* 803C85F0 003C5550 7C 06 00 00 */ cmpw r6, r0 -/* 803C85F4 003C5554 40 81 00 14 */ ble lbl_803C8608 -/* 803C85F8 003C5558 38 00 FF FF */ li r0, -1 -/* 803C85FC 003C555C 7C 00 28 30 */ slw r0, r0, r5 -/* 803C8600 003C5560 7C E0 3A 14 */ add r7, r0, r7 -/* 803C8604 003C5564 38 E7 00 01 */ addi r7, r7, 1 -lbl_803C8608: -/* 803C8608 003C5568 38 00 00 60 */ li r0, 0x60 -/* 803C860C 003C556C 7C 04 07 EC */ dcbz r4, r0 -/* 803C8610 003C5570 A8 03 06 8A */ lha r0, 0x68a(r3) -/* 803C8614 003C5574 3C A0 80 3E */ lis r5, lbl_803D8CD0@ha -/* 803C8618 003C5578 39 05 8C D0 */ addi r8, r5, lbl_803D8CD0@l -/* 803C861C 003C557C 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8620 003C5580 B0 03 06 8A */ sth r0, 0x68a(r3) -/* 803C8624 003C5584 38 C0 00 01 */ li r6, 1 -/* 803C8628 003C5588 B0 04 00 00 */ sth r0, 0(r4) -/* 803C862C 003C558C 48 00 03 3C */ b lbl_803C8968 -lbl_803C8630: -/* 803C8630 003C5590 83 CD B0 C0 */ lwz r30, lbl_805A9C80@sda21(r13) -/* 803C8634 003C5594 83 E3 06 A4 */ lwz r31, 0x6a4(r3) -/* 803C8638 003C5598 39 7E 00 20 */ addi r11, r30, 0x20 -/* 803C863C 003C559C 81 83 06 A0 */ lwz r12, 0x6a0(r3) -/* 803C8640 003C55A0 38 BF 00 04 */ addi r5, r31, 4 -/* 803C8644 003C55A4 2C 1F 00 1C */ cmpwi r31, 0x1c -/* 803C8648 003C55A8 5D 8A 2E FE */ rlwnm r10, r12, r5, 0x1b, 0x1f -/* 803C864C 003C55AC 41 81 00 C4 */ bgt lbl_803C8710 -/* 803C8650 003C55B0 7C BE 50 AE */ lbzx r5, r30, r10 -/* 803C8654 003C55B4 7D 6B 50 AE */ lbzx r11, r11, r10 -/* 803C8658 003C55B8 2C 05 00 FF */ cmpwi r5, 0xff -/* 803C865C 003C55BC 41 82 00 10 */ beq lbl_803C866C -/* 803C8660 003C55C0 7F FF 5A 14 */ add r31, r31, r11 -/* 803C8664 003C55C4 93 E3 06 A4 */ stw r31, 0x6a4(r3) -/* 803C8668 003C55C8 48 00 02 4C */ b lbl_803C88B4 -lbl_803C866C: -/* 803C866C 003C55CC 38 FE 00 44 */ addi r7, r30, 0x44 -/* 803C8670 003C55D0 3B FF 00 05 */ addi r31, r31, 5 -/* 803C8674 003C55D4 38 00 00 14 */ li r0, 0x14 -/* 803C8678 003C55D8 38 A0 00 05 */ li r5, 5 -/* 803C867C 003C55DC 38 E7 00 14 */ addi r7, r7, 0x14 -lbl_803C8680: -/* 803C8680 003C55E0 2C 1F 00 21 */ cmpwi r31, 0x21 -/* 803C8684 003C55E4 55 4A 08 3C */ slwi r10, r10, 1 -/* 803C8688 003C55E8 41 82 00 18 */ beq lbl_803C86A0 -/* 803C868C 003C55EC 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f -/* 803C8690 003C55F0 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C8694 003C55F4 7D 4A 5B 78 */ or r10, r10, r11 -/* 803C8698 003C55F8 3B FF 00 01 */ addi r31, r31, 1 -/* 803C869C 003C55FC 48 00 00 48 */ b lbl_803C86E4 -lbl_803C86A0: -/* 803C86A0 003C5600 81 63 06 9C */ lwz r11, 0x69c(r3) -/* 803C86A4 003C5604 3B E0 00 01 */ li r31, 1 -/* 803C86A8 003C5608 85 8B 00 04 */ lwzu r12, 4(r11) -/* 803C86AC 003C560C 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C86B0 003C5610 91 63 06 9C */ stw r11, 0x69c(r3) -/* 803C86B4 003C5614 51 8A 0F FE */ rlwimi r10, r12, 1, 0x1f, 0x1f -/* 803C86B8 003C5618 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C86BC 003C561C 48 00 00 14 */ b lbl_803C86D0 -lbl_803C86C0: -/* 803C86C0 003C5620 55 4A 08 3C */ slwi r10, r10, 1 -/* 803C86C4 003C5624 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f -/* 803C86C8 003C5628 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C86CC 003C562C 7D 4A 5B 78 */ or r10, r10, r11 -lbl_803C86D0: -/* 803C86D0 003C5630 7C 0A 00 00 */ cmpw r10, r0 -/* 803C86D4 003C5634 3B FF 00 01 */ addi r31, r31, 1 -/* 803C86D8 003C5638 38 A5 00 01 */ addi r5, r5, 1 -/* 803C86DC 003C563C 41 81 FF E4 */ bgt lbl_803C86C0 -/* 803C86E0 003C5640 48 00 00 10 */ b lbl_803C86F0 -lbl_803C86E4: -/* 803C86E4 003C5644 7C 0A 00 00 */ cmpw r10, r0 -/* 803C86E8 003C5648 38 A5 00 01 */ addi r5, r5, 1 -/* 803C86EC 003C564C 41 81 FF 94 */ bgt lbl_803C8680 -lbl_803C86F0: -/* 803C86F0 003C5650 93 E3 06 A4 */ stw r31, 0x6a4(r3) -/* 803C86F4 003C5654 54 A0 10 3A */ slwi r0, r5, 2 -/* 803C86F8 003C5658 7C BE 02 14 */ add r5, r30, r0 -/* 803C86FC 003C565C 80 FE 00 40 */ lwz r7, 0x40(r30) -/* 803C8700 003C5660 80 05 00 8C */ lwz r0, 0x8c(r5) -/* 803C8704 003C5664 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8708 003C5668 7C AA 00 AE */ lbzx r5, r10, r0 -/* 803C870C 003C566C 48 00 01 A8 */ b lbl_803C88B4 -lbl_803C8710: -/* 803C8710 003C5670 2C 1F 00 21 */ cmpwi r31, 0x21 -/* 803C8714 003C5674 81 43 06 9C */ lwz r10, 0x69c(r3) -/* 803C8718 003C5678 41 82 00 B4 */ beq lbl_803C87CC -/* 803C871C 003C567C 2C 1F 00 20 */ cmpwi r31, 0x20 -/* 803C8720 003C5680 5D 85 2E FE */ rlwnm r5, r12, r5, 0x1b, 0x1f -/* 803C8724 003C5684 41 82 00 2C */ beq lbl_803C8750 -/* 803C8728 003C5688 7D 5E 28 AE */ lbzx r10, r30, r5 -/* 803C872C 003C568C 7D 6B 28 AE */ lbzx r11, r11, r5 -/* 803C8730 003C5690 2C 0A 00 FF */ cmpwi r10, 0xff -/* 803C8734 003C5694 7C BF 5A 14 */ add r5, r31, r11 -/* 803C8738 003C5698 41 82 00 F8 */ beq lbl_803C8830 -/* 803C873C 003C569C 2C 05 00 21 */ cmpwi r5, 0x21 -/* 803C8740 003C56A0 90 A3 06 A4 */ stw r5, 0x6a4(r3) -/* 803C8744 003C56A4 41 81 00 EC */ bgt lbl_803C8830 -/* 803C8748 003C56A8 7D 45 53 78 */ mr r5, r10 -/* 803C874C 003C56AC 48 00 01 68 */ b lbl_803C88B4 -lbl_803C8750: -/* 803C8750 003C56B0 85 8A 00 04 */ lwzu r12, 4(r10) -/* 803C8754 003C56B4 91 43 06 9C */ stw r10, 0x69c(r3) -/* 803C8758 003C56B8 51 85 27 3E */ rlwimi r5, r12, 4, 0x1c, 0x1f -/* 803C875C 003C56BC 7D 5E 28 AE */ lbzx r10, r30, r5 -/* 803C8760 003C56C0 7D 6B 28 AE */ lbzx r11, r11, r5 -/* 803C8764 003C56C4 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C8768 003C56C8 2C 0A 00 FF */ cmpwi r10, 0xff -/* 803C876C 003C56CC 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8770 003C56D0 41 82 00 0C */ beq lbl_803C877C -/* 803C8774 003C56D4 7D 45 53 78 */ mr r5, r10 -/* 803C8778 003C56D8 48 00 01 3C */ b lbl_803C88B4 -lbl_803C877C: -/* 803C877C 003C56DC 38 FE 00 44 */ addi r7, r30, 0x44 -/* 803C8780 003C56E0 3B E0 00 14 */ li r31, 0x14 -/* 803C8784 003C56E4 38 E7 00 14 */ addi r7, r7, 0x14 -/* 803C8788 003C56E8 54 AA D8 08 */ slwi r10, r5, 0x1b -/* 803C878C 003C56EC 3B E0 00 05 */ li r31, 5 -/* 803C8790 003C56F0 51 8A F8 7E */ rlwimi r10, r12, 0x1f, 1, 0x1f -lbl_803C8794: -/* 803C8794 003C56F4 21 9F 00 1F */ subfic r12, r31, 0x1f -/* 803C8798 003C56F8 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C879C 003C56FC 7D 45 64 30 */ srw r5, r10, r12 -/* 803C87A0 003C5700 7C 05 00 00 */ cmpw r5, r0 -/* 803C87A4 003C5704 3B FF 00 01 */ addi r31, r31, 1 -/* 803C87A8 003C5708 41 81 FF EC */ bgt lbl_803C8794 -/* 803C87AC 003C570C 93 E3 06 A4 */ stw r31, 0x6a4(r3) -lbl_803C87B0: -/* 803C87B0 003C5710 57 E0 10 3A */ slwi r0, r31, 2 -/* 803C87B4 003C5714 81 3E 00 40 */ lwz r9, 0x40(r30) -/* 803C87B8 003C5718 7C FE 02 14 */ add r7, r30, r0 -/* 803C87BC 003C571C 80 07 00 8C */ lwz r0, 0x8c(r7) -/* 803C87C0 003C5720 7C 00 4A 14 */ add r0, r0, r9 -/* 803C87C4 003C5724 7C A5 00 AE */ lbzx r5, r5, r0 -/* 803C87C8 003C5728 48 00 00 EC */ b lbl_803C88B4 -lbl_803C87CC: -/* 803C87CC 003C572C 85 8A 00 04 */ lwzu r12, 4(r10) -/* 803C87D0 003C5730 55 85 2E FE */ srwi r5, r12, 0x1b -/* 803C87D4 003C5734 91 43 06 9C */ stw r10, 0x69c(r3) -/* 803C87D8 003C5738 7F FE 28 AE */ lbzx r31, r30, r5 -/* 803C87DC 003C573C 7D 6B 28 AE */ lbzx r11, r11, r5 -/* 803C87E0 003C5740 2C 1F 00 FF */ cmpwi r31, 0xff -/* 803C87E4 003C5744 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C87E8 003C5748 39 6B 00 01 */ addi r11, r11, 1 -/* 803C87EC 003C574C 41 82 00 10 */ beq lbl_803C87FC -/* 803C87F0 003C5750 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C87F4 003C5754 7F E5 FB 78 */ mr r5, r31 -/* 803C87F8 003C5758 48 00 00 BC */ b lbl_803C88B4 -lbl_803C87FC: -/* 803C87FC 003C575C 3B E0 00 05 */ li r31, 5 -/* 803C8800 003C5760 38 E0 00 14 */ li r7, 0x14 -lbl_803C8804: -/* 803C8804 003C5764 21 5F 00 1F */ subfic r10, r31, 0x1f -/* 803C8808 003C5768 3B FF 00 01 */ addi r31, r31, 1 -/* 803C880C 003C576C 38 E7 00 04 */ addi r7, r7, 4 -/* 803C8810 003C5770 7D 85 54 30 */ srw r5, r12, r10 -/* 803C8814 003C5774 7D 3E 3A 14 */ add r9, r30, r7 -/* 803C8818 003C5778 80 09 00 44 */ lwz r0, 0x44(r9) -/* 803C881C 003C577C 7C 05 00 00 */ cmpw r5, r0 -/* 803C8820 003C5780 41 81 FF E4 */ bgt lbl_803C8804 -/* 803C8824 003C5784 38 1F 00 01 */ addi r0, r31, 1 -/* 803C8828 003C5788 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C882C 003C578C 4B FF FF 84 */ b lbl_803C87B0 -lbl_803C8830: -/* 803C8830 003C5790 20 1F 00 21 */ subfic r0, r31, 0x21 -/* 803C8834 003C5794 38 A0 FF FF */ li r5, -1 -/* 803C8838 003C5798 7C A9 00 30 */ slw r9, r5, r0 -/* 803C883C 003C579C 7D 85 48 78 */ andc r5, r12, r9 -/* 803C8840 003C57A0 39 3E 00 44 */ addi r9, r30, 0x44 -/* 803C8844 003C57A4 81 43 06 9C */ lwz r10, 0x69c(r3) -/* 803C8848 003C57A8 20 FF 00 21 */ subfic r7, r31, 0x21 -/* 803C884C 003C57AC 3B E7 00 01 */ addi r31, r7, 1 -/* 803C8850 003C57B0 54 E7 10 3A */ slwi r7, r7, 2 -/* 803C8854 003C57B4 85 8A 00 04 */ lwzu r12, 4(r10) -/* 803C8858 003C57B8 7D 29 3A 14 */ add r9, r9, r7 -/* 803C885C 003C57BC 91 43 06 9C */ stw r10, 0x69c(r3) -/* 803C8860 003C57C0 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C8864 003C57C4 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C8868 003C57C8 51 85 0F FE */ rlwimi r5, r12, 1, 0x1f, 0x1f -/* 803C886C 003C57CC 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8870 003C57D0 39 40 00 02 */ li r10, 2 -/* 803C8874 003C57D4 48 00 00 18 */ b lbl_803C888C -lbl_803C8878: -/* 803C8878 003C57D8 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C887C 003C57DC 3B FF 00 01 */ addi r31, r31, 1 -/* 803C8880 003C57E0 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8884 003C57E4 7C A5 5A 14 */ add r5, r5, r11 -/* 803C8888 003C57E8 39 4A 00 01 */ addi r10, r10, 1 -lbl_803C888C: -/* 803C888C 003C57EC 7C 05 38 00 */ cmpw r5, r7 -/* 803C8890 003C57F0 5D 8B 57 FE */ rlwnm r11, r12, r10, 0x1f, 0x1f -/* 803C8894 003C57F4 41 81 FF E4 */ bgt lbl_803C8878 -/* 803C8898 003C57F8 91 43 06 A4 */ stw r10, 0x6a4(r3) -/* 803C889C 003C57FC 57 E0 10 3A */ slwi r0, r31, 2 -/* 803C88A0 003C5800 7C FE 02 14 */ add r7, r30, r0 -/* 803C88A4 003C5804 81 3E 00 40 */ lwz r9, 0x40(r30) -/* 803C88A8 003C5808 80 07 00 8C */ lwz r0, 0x8c(r7) -/* 803C88AC 003C580C 7C 00 4A 14 */ add r0, r0, r9 -/* 803C88B0 003C5810 7C A5 00 AE */ lbzx r5, r5, r0 -lbl_803C88B4: -/* 803C88B4 003C5814 54 BE 07 3F */ clrlwi. r30, r5, 0x1c -/* 803C88B8 003C5818 7C A7 26 70 */ srawi r7, r5, 4 -/* 803C88BC 003C581C 41 82 00 9C */ beq lbl_803C8958 -/* 803C88C0 003C5820 7C C6 3A 14 */ add r6, r6, r7 -/* 803C88C4 003C5824 81 23 06 A4 */ lwz r9, 0x6a4(r3) -/* 803C88C8 003C5828 21 49 00 21 */ subfic r10, r9, 0x21 -/* 803C88CC 003C582C 80 E3 06 A0 */ lwz r7, 0x6a0(r3) -/* 803C88D0 003C5830 7D 6A F0 51 */ subf. r11, r10, r30 -/* 803C88D4 003C5834 39 89 FF FF */ addi r12, r9, -1 -/* 803C88D8 003C5838 41 81 00 1C */ bgt lbl_803C88F4 -/* 803C88DC 003C583C 7C 09 F2 14 */ add r0, r9, r30 -/* 803C88E0 003C5840 7C E9 60 30 */ slw r9, r7, r12 -/* 803C88E4 003C5844 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C88E8 003C5848 20 1E 00 20 */ subfic r0, r30, 0x20 -/* 803C88EC 003C584C 7D 27 04 30 */ srw r7, r9, r0 -/* 803C88F0 003C5850 48 00 00 30 */ b lbl_803C8920 -lbl_803C88F4: -/* 803C88F4 003C5854 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C88F8 003C5858 7C E0 60 30 */ slw r0, r7, r12 -/* 803C88FC 003C585C 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8900 003C5860 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8904 003C5864 90 E3 06 A0 */ stw r7, 0x6a0(r3) -/* 803C8908 003C5868 7C E7 54 30 */ srw r7, r7, r10 -/* 803C890C 003C586C 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C8910 003C5870 7C 07 02 14 */ add r0, r7, r0 -/* 803C8914 003C5874 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8918 003C5878 21 7E 00 20 */ subfic r11, r30, 0x20 -/* 803C891C 003C587C 7C 07 5C 30 */ srw r7, r0, r11 -lbl_803C8920: -/* 803C8920 003C5880 7C E5 00 34 */ cntlzw r5, r7 -/* 803C8924 003C5884 20 1E 00 20 */ subfic r0, r30, 0x20 -/* 803C8928 003C5888 7C 05 00 00 */ cmpw r5, r0 -/* 803C892C 003C588C 40 81 00 14 */ ble lbl_803C8940 -/* 803C8930 003C5890 38 00 FF FF */ li r0, -1 -/* 803C8934 003C5894 7C 00 F0 30 */ slw r0, r0, r30 -/* 803C8938 003C5898 7C E0 3A 14 */ add r7, r0, r7 -/* 803C893C 003C589C 38 E7 00 01 */ addi r7, r7, 1 -lbl_803C8940: -/* 803C8940 003C58A0 7C A8 32 14 */ add r5, r8, r6 -/* 803C8944 003C58A4 88 05 00 00 */ lbz r0, 0(r5) -/* 803C8948 003C58A8 7C E5 07 34 */ extsh r5, r7 -/* 803C894C 003C58AC 54 00 08 3C */ slwi r0, r0, 1 -/* 803C8950 003C58B0 7C A4 03 2E */ sthx r5, r4, r0 -/* 803C8954 003C58B4 48 00 00 10 */ b lbl_803C8964 -lbl_803C8958: -/* 803C8958 003C58B8 2C 07 00 0F */ cmpwi r7, 0xf -/* 803C895C 003C58BC 40 82 00 14 */ bne lbl_803C8970 -/* 803C8960 003C58C0 38 C6 00 0F */ addi r6, r6, 0xf -lbl_803C8964: -/* 803C8964 003C58C4 38 C6 00 01 */ addi r6, r6, 1 -lbl_803C8968: -/* 803C8968 003C58C8 2C 06 00 40 */ cmpwi r6, 0x40 -/* 803C896C 003C58CC 41 80 FC C4 */ blt lbl_803C8630 -lbl_803C8970: -/* 803C8970 003C58D0 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 803C8974 003C58D4 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 803C8978 003C58D8 38 21 00 18 */ addi r1, r1, 0x18 -/* 803C897C 003C58DC 4E 80 00 20 */ blr - -.global __THPHuffDecodeDCTCompV -__THPHuffDecodeDCTCompV: -/* 803C8980 003C58E0 94 21 FF E8 */ stwu r1, -0x18(r1) -/* 803C8984 003C58E4 93 E1 00 14 */ stw r31, 0x14(r1) -/* 803C8988 003C58E8 93 C1 00 10 */ stw r30, 0x10(r1) -/* 803C898C 003C58EC 7C 00 27 EC */ dcbz 0, r4 -/* 803C8990 003C58F0 81 8D B0 80 */ lwz r12, lbl_805A9C40@sda21(r13) -/* 803C8994 003C58F4 81 63 06 A4 */ lwz r11, 0x6a4(r3) -/* 803C8998 003C58F8 39 2C 00 20 */ addi r9, r12, 0x20 -/* 803C899C 003C58FC 81 43 06 A0 */ lwz r10, 0x6a0(r3) -/* 803C89A0 003C5900 38 AB 00 04 */ addi r5, r11, 4 -/* 803C89A4 003C5904 2C 0B 00 1C */ cmpwi r11, 0x1c -/* 803C89A8 003C5908 5D 48 2E FE */ rlwnm r8, r10, r5, 0x1b, 0x1f -/* 803C89AC 003C590C 41 81 00 C4 */ bgt lbl_803C8A70 -/* 803C89B0 003C5910 7C AC 40 AE */ lbzx r5, r12, r8 -/* 803C89B4 003C5914 7D 29 40 AE */ lbzx r9, r9, r8 -/* 803C89B8 003C5918 2C 05 00 FF */ cmpwi r5, 0xff -/* 803C89BC 003C591C 41 82 00 10 */ beq lbl_803C89CC -/* 803C89C0 003C5920 7D 6B 4A 14 */ add r11, r11, r9 -/* 803C89C4 003C5924 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C89C8 003C5928 48 00 02 4C */ b lbl_803C8C14 -lbl_803C89CC: -/* 803C89CC 003C592C 38 CC 00 44 */ addi r6, r12, 0x44 -/* 803C89D0 003C5930 39 6B 00 05 */ addi r11, r11, 5 -/* 803C89D4 003C5934 38 00 00 14 */ li r0, 0x14 -/* 803C89D8 003C5938 38 A0 00 05 */ li r5, 5 -/* 803C89DC 003C593C 38 C6 00 14 */ addi r6, r6, 0x14 -lbl_803C89E0: -/* 803C89E0 003C5940 2C 0B 00 21 */ cmpwi r11, 0x21 -/* 803C89E4 003C5944 55 08 08 3C */ slwi r8, r8, 1 -/* 803C89E8 003C5948 41 82 00 18 */ beq lbl_803C8A00 -/* 803C89EC 003C594C 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f -/* 803C89F0 003C5950 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C89F4 003C5954 7D 08 4B 78 */ or r8, r8, r9 -/* 803C89F8 003C5958 39 6B 00 01 */ addi r11, r11, 1 -/* 803C89FC 003C595C 48 00 00 48 */ b lbl_803C8A44 -lbl_803C8A00: -/* 803C8A00 003C5960 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C8A04 003C5964 39 60 00 01 */ li r11, 1 -/* 803C8A08 003C5968 85 49 00 04 */ lwzu r10, 4(r9) -/* 803C8A0C 003C596C 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C8A10 003C5970 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C8A14 003C5974 51 48 0F FE */ rlwimi r8, r10, 1, 0x1f, 0x1f -/* 803C8A18 003C5978 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8A1C 003C597C 48 00 00 14 */ b lbl_803C8A30 -lbl_803C8A20: -/* 803C8A20 003C5980 55 08 08 3C */ slwi r8, r8, 1 -/* 803C8A24 003C5984 5D 49 5F FE */ rlwnm r9, r10, r11, 0x1f, 0x1f -/* 803C8A28 003C5988 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C8A2C 003C598C 7D 08 4B 78 */ or r8, r8, r9 -lbl_803C8A30: -/* 803C8A30 003C5990 7C 08 00 00 */ cmpw r8, r0 -/* 803C8A34 003C5994 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8A38 003C5998 38 A5 00 01 */ addi r5, r5, 1 -/* 803C8A3C 003C599C 41 81 FF E4 */ bgt lbl_803C8A20 -/* 803C8A40 003C59A0 48 00 00 10 */ b lbl_803C8A50 -lbl_803C8A44: -/* 803C8A44 003C59A4 7C 08 00 00 */ cmpw r8, r0 -/* 803C8A48 003C59A8 38 A5 00 01 */ addi r5, r5, 1 -/* 803C8A4C 003C59AC 41 81 FF 94 */ bgt lbl_803C89E0 -lbl_803C8A50: -/* 803C8A50 003C59B0 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8A54 003C59B4 54 A0 10 3A */ slwi r0, r5, 2 -/* 803C8A58 003C59B8 7C AC 02 14 */ add r5, r12, r0 -/* 803C8A5C 003C59BC 80 CC 00 40 */ lwz r6, 0x40(r12) -/* 803C8A60 003C59C0 80 05 00 8C */ lwz r0, 0x8c(r5) -/* 803C8A64 003C59C4 7C 00 32 14 */ add r0, r0, r6 -/* 803C8A68 003C59C8 7C A8 00 AE */ lbzx r5, r8, r0 -/* 803C8A6C 003C59CC 48 00 01 A8 */ b lbl_803C8C14 -lbl_803C8A70: -/* 803C8A70 003C59D0 2C 0B 00 21 */ cmpwi r11, 0x21 -/* 803C8A74 003C59D4 81 03 06 9C */ lwz r8, 0x69c(r3) -/* 803C8A78 003C59D8 41 82 00 B4 */ beq lbl_803C8B2C -/* 803C8A7C 003C59DC 2C 0B 00 20 */ cmpwi r11, 0x20 -/* 803C8A80 003C59E0 5D 45 2E FE */ rlwnm r5, r10, r5, 0x1b, 0x1f -/* 803C8A84 003C59E4 41 82 00 2C */ beq lbl_803C8AB0 -/* 803C8A88 003C59E8 7D 0C 28 AE */ lbzx r8, r12, r5 -/* 803C8A8C 003C59EC 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C8A90 003C59F0 2C 08 00 FF */ cmpwi r8, 0xff -/* 803C8A94 003C59F4 7C AB 4A 14 */ add r5, r11, r9 -/* 803C8A98 003C59F8 41 82 00 F8 */ beq lbl_803C8B90 -/* 803C8A9C 003C59FC 2C 05 00 21 */ cmpwi r5, 0x21 -/* 803C8AA0 003C5A00 90 A3 06 A4 */ stw r5, 0x6a4(r3) -/* 803C8AA4 003C5A04 41 81 00 EC */ bgt lbl_803C8B90 -/* 803C8AA8 003C5A08 7D 05 43 78 */ mr r5, r8 -/* 803C8AAC 003C5A0C 48 00 01 68 */ b lbl_803C8C14 -lbl_803C8AB0: -/* 803C8AB0 003C5A10 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C8AB4 003C5A14 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C8AB8 003C5A18 51 45 27 3E */ rlwimi r5, r10, 4, 0x1c, 0x1f -/* 803C8ABC 003C5A1C 7D 0C 28 AE */ lbzx r8, r12, r5 -/* 803C8AC0 003C5A20 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C8AC4 003C5A24 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8AC8 003C5A28 2C 08 00 FF */ cmpwi r8, 0xff -/* 803C8ACC 003C5A2C 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C8AD0 003C5A30 41 82 00 0C */ beq lbl_803C8ADC -/* 803C8AD4 003C5A34 7D 05 43 78 */ mr r5, r8 -/* 803C8AD8 003C5A38 48 00 01 3C */ b lbl_803C8C14 -lbl_803C8ADC: -/* 803C8ADC 003C5A3C 38 CC 00 44 */ addi r6, r12, 0x44 -/* 803C8AE0 003C5A40 39 60 00 14 */ li r11, 0x14 -/* 803C8AE4 003C5A44 38 C6 00 14 */ addi r6, r6, 0x14 -/* 803C8AE8 003C5A48 54 A8 D8 08 */ slwi r8, r5, 0x1b -/* 803C8AEC 003C5A4C 39 60 00 05 */ li r11, 5 -/* 803C8AF0 003C5A50 51 48 F8 7E */ rlwimi r8, r10, 0x1f, 1, 0x1f -lbl_803C8AF4: -/* 803C8AF4 003C5A54 21 4B 00 1F */ subfic r10, r11, 0x1f -/* 803C8AF8 003C5A58 84 06 00 04 */ lwzu r0, 4(r6) -/* 803C8AFC 003C5A5C 7D 05 54 30 */ srw r5, r8, r10 -/* 803C8B00 003C5A60 7C 05 00 00 */ cmpw r5, r0 -/* 803C8B04 003C5A64 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8B08 003C5A68 41 81 FF EC */ bgt lbl_803C8AF4 -/* 803C8B0C 003C5A6C 91 63 06 A4 */ stw r11, 0x6a4(r3) -lbl_803C8B10: -/* 803C8B10 003C5A70 55 60 10 3A */ slwi r0, r11, 2 -/* 803C8B14 003C5A74 80 EC 00 40 */ lwz r7, 0x40(r12) -/* 803C8B18 003C5A78 7C CC 02 14 */ add r6, r12, r0 -/* 803C8B1C 003C5A7C 80 06 00 8C */ lwz r0, 0x8c(r6) -/* 803C8B20 003C5A80 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8B24 003C5A84 7C A5 00 AE */ lbzx r5, r5, r0 -/* 803C8B28 003C5A88 48 00 00 EC */ b lbl_803C8C14 -lbl_803C8B2C: -/* 803C8B2C 003C5A8C 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C8B30 003C5A90 55 45 2E FE */ srwi r5, r10, 0x1b -/* 803C8B34 003C5A94 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C8B38 003C5A98 7D 6C 28 AE */ lbzx r11, r12, r5 -/* 803C8B3C 003C5A9C 7D 29 28 AE */ lbzx r9, r9, r5 -/* 803C8B40 003C5AA0 2C 0B 00 FF */ cmpwi r11, 0xff -/* 803C8B44 003C5AA4 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8B48 003C5AA8 39 29 00 01 */ addi r9, r9, 1 -/* 803C8B4C 003C5AAC 41 82 00 10 */ beq lbl_803C8B5C -/* 803C8B50 003C5AB0 91 23 06 A4 */ stw r9, 0x6a4(r3) -/* 803C8B54 003C5AB4 7D 65 5B 78 */ mr r5, r11 -/* 803C8B58 003C5AB8 48 00 00 BC */ b lbl_803C8C14 -lbl_803C8B5C: -/* 803C8B5C 003C5ABC 39 60 00 05 */ li r11, 5 -/* 803C8B60 003C5AC0 38 C0 00 14 */ li r6, 0x14 -lbl_803C8B64: -/* 803C8B64 003C5AC4 21 0B 00 1F */ subfic r8, r11, 0x1f -/* 803C8B68 003C5AC8 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8B6C 003C5ACC 38 C6 00 04 */ addi r6, r6, 4 -/* 803C8B70 003C5AD0 7D 45 44 30 */ srw r5, r10, r8 -/* 803C8B74 003C5AD4 7C EC 32 14 */ add r7, r12, r6 -/* 803C8B78 003C5AD8 80 07 00 44 */ lwz r0, 0x44(r7) -/* 803C8B7C 003C5ADC 7C 05 00 00 */ cmpw r5, r0 -/* 803C8B80 003C5AE0 41 81 FF E4 */ bgt lbl_803C8B64 -/* 803C8B84 003C5AE4 38 0B 00 01 */ addi r0, r11, 1 -/* 803C8B88 003C5AE8 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C8B8C 003C5AEC 4B FF FF 84 */ b lbl_803C8B10 -lbl_803C8B90: -/* 803C8B90 003C5AF0 20 0B 00 21 */ subfic r0, r11, 0x21 -/* 803C8B94 003C5AF4 38 A0 FF FF */ li r5, -1 -/* 803C8B98 003C5AF8 7C A7 00 30 */ slw r7, r5, r0 -/* 803C8B9C 003C5AFC 7D 45 38 78 */ andc r5, r10, r7 -/* 803C8BA0 003C5B00 38 EC 00 44 */ addi r7, r12, 0x44 -/* 803C8BA4 003C5B04 81 03 06 9C */ lwz r8, 0x69c(r3) -/* 803C8BA8 003C5B08 20 CB 00 21 */ subfic r6, r11, 0x21 -/* 803C8BAC 003C5B0C 39 66 00 01 */ addi r11, r6, 1 -/* 803C8BB0 003C5B10 54 C6 10 3A */ slwi r6, r6, 2 -/* 803C8BB4 003C5B14 85 48 00 04 */ lwzu r10, 4(r8) -/* 803C8BB8 003C5B18 7C E7 32 14 */ add r7, r7, r6 -/* 803C8BBC 003C5B1C 91 03 06 9C */ stw r8, 0x69c(r3) -/* 803C8BC0 003C5B20 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C8BC4 003C5B24 91 43 06 A0 */ stw r10, 0x6a0(r3) -/* 803C8BC8 003C5B28 51 45 0F FE */ rlwimi r5, r10, 1, 0x1f, 0x1f -/* 803C8BCC 003C5B2C 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C8BD0 003C5B30 39 00 00 02 */ li r8, 2 -/* 803C8BD4 003C5B34 48 00 00 18 */ b lbl_803C8BEC -lbl_803C8BD8: -/* 803C8BD8 003C5B38 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C8BDC 003C5B3C 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8BE0 003C5B40 84 C7 00 04 */ lwzu r6, 4(r7) -/* 803C8BE4 003C5B44 7C A5 4A 14 */ add r5, r5, r9 -/* 803C8BE8 003C5B48 39 08 00 01 */ addi r8, r8, 1 -lbl_803C8BEC: -/* 803C8BEC 003C5B4C 7C 05 30 00 */ cmpw r5, r6 -/* 803C8BF0 003C5B50 5D 49 47 FE */ rlwnm r9, r10, r8, 0x1f, 0x1f -/* 803C8BF4 003C5B54 41 81 FF E4 */ bgt lbl_803C8BD8 -/* 803C8BF8 003C5B58 91 03 06 A4 */ stw r8, 0x6a4(r3) -/* 803C8BFC 003C5B5C 55 60 10 3A */ slwi r0, r11, 2 -/* 803C8C00 003C5B60 7C CC 02 14 */ add r6, r12, r0 -/* 803C8C04 003C5B64 80 EC 00 40 */ lwz r7, 0x40(r12) -/* 803C8C08 003C5B68 80 06 00 8C */ lwz r0, 0x8c(r6) -/* 803C8C0C 003C5B6C 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8C10 003C5B70 7C A5 00 AE */ lbzx r5, r5, r0 -lbl_803C8C14: -/* 803C8C14 003C5B74 38 00 00 20 */ li r0, 0x20 -/* 803C8C18 003C5B78 7C 04 07 EC */ dcbz r4, r0 -/* 803C8C1C 003C5B7C 38 E0 00 00 */ li r7, 0 -/* 803C8C20 003C5B80 38 00 00 40 */ li r0, 0x40 -/* 803C8C24 003C5B84 7C 04 07 EC */ dcbz r4, r0 -/* 803C8C28 003C5B88 2C 05 00 00 */ cmpwi r5, 0 -/* 803C8C2C 003C5B8C 41 82 00 84 */ beq lbl_803C8CB0 -/* 803C8C30 003C5B90 81 23 06 A4 */ lwz r9, 0x6a4(r3) -/* 803C8C34 003C5B94 21 49 00 21 */ subfic r10, r9, 0x21 -/* 803C8C38 003C5B98 80 E3 06 A0 */ lwz r7, 0x6a0(r3) -/* 803C8C3C 003C5B9C 7D 6A 28 51 */ subf. r11, r10, r5 -/* 803C8C40 003C5BA0 39 89 FF FF */ addi r12, r9, -1 -/* 803C8C44 003C5BA4 41 81 00 1C */ bgt lbl_803C8C60 -/* 803C8C48 003C5BA8 7C 09 2A 14 */ add r0, r9, r5 -/* 803C8C4C 003C5BAC 7C E9 60 30 */ slw r9, r7, r12 -/* 803C8C50 003C5BB0 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C8C54 003C5BB4 20 05 00 20 */ subfic r0, r5, 0x20 -/* 803C8C58 003C5BB8 7D 27 04 30 */ srw r7, r9, r0 -/* 803C8C5C 003C5BBC 48 00 00 30 */ b lbl_803C8C8C -lbl_803C8C60: -/* 803C8C60 003C5BC0 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C8C64 003C5BC4 7C E0 60 30 */ slw r0, r7, r12 -/* 803C8C68 003C5BC8 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8C6C 003C5BCC 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8C70 003C5BD0 90 E3 06 A0 */ stw r7, 0x6a0(r3) -/* 803C8C74 003C5BD4 7C E7 54 30 */ srw r7, r7, r10 -/* 803C8C78 003C5BD8 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C8C7C 003C5BDC 7C 07 02 14 */ add r0, r7, r0 -/* 803C8C80 003C5BE0 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8C84 003C5BE4 21 65 00 20 */ subfic r11, r5, 0x20 -/* 803C8C88 003C5BE8 7C 07 5C 30 */ srw r7, r0, r11 -lbl_803C8C8C: -/* 803C8C8C 003C5BEC 7C E0 07 34 */ extsh r0, r7 -/* 803C8C90 003C5BF0 7C 06 00 34 */ cntlzw r6, r0 -/* 803C8C94 003C5BF4 20 05 00 20 */ subfic r0, r5, 0x20 -/* 803C8C98 003C5BF8 7C 06 00 00 */ cmpw r6, r0 -/* 803C8C9C 003C5BFC 40 81 00 14 */ ble lbl_803C8CB0 -/* 803C8CA0 003C5C00 38 00 FF FF */ li r0, -1 -/* 803C8CA4 003C5C04 7C 00 28 30 */ slw r0, r0, r5 -/* 803C8CA8 003C5C08 7C E0 3A 14 */ add r7, r0, r7 -/* 803C8CAC 003C5C0C 38 E7 00 01 */ addi r7, r7, 1 -lbl_803C8CB0: -/* 803C8CB0 003C5C10 38 00 00 60 */ li r0, 0x60 -/* 803C8CB4 003C5C14 7C 04 07 EC */ dcbz r4, r0 -/* 803C8CB8 003C5C18 A8 03 06 90 */ lha r0, 0x690(r3) -/* 803C8CBC 003C5C1C 3C A0 80 3E */ lis r5, lbl_803D8CD0@ha -/* 803C8CC0 003C5C20 39 05 8C D0 */ addi r8, r5, lbl_803D8CD0@l -/* 803C8CC4 003C5C24 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8CC8 003C5C28 B0 03 06 90 */ sth r0, 0x690(r3) -/* 803C8CCC 003C5C2C 38 C0 00 01 */ li r6, 1 -/* 803C8CD0 003C5C30 B0 04 00 00 */ sth r0, 0(r4) -/* 803C8CD4 003C5C34 48 00 03 3C */ b lbl_803C9010 -lbl_803C8CD8: -/* 803C8CD8 003C5C38 83 CD B0 E0 */ lwz r30, lbl_805A9CA0@sda21(r13) -/* 803C8CDC 003C5C3C 83 E3 06 A4 */ lwz r31, 0x6a4(r3) -/* 803C8CE0 003C5C40 39 7E 00 20 */ addi r11, r30, 0x20 -/* 803C8CE4 003C5C44 81 83 06 A0 */ lwz r12, 0x6a0(r3) -/* 803C8CE8 003C5C48 38 BF 00 04 */ addi r5, r31, 4 -/* 803C8CEC 003C5C4C 2C 1F 00 1C */ cmpwi r31, 0x1c -/* 803C8CF0 003C5C50 5D 8A 2E FE */ rlwnm r10, r12, r5, 0x1b, 0x1f -/* 803C8CF4 003C5C54 41 81 00 C4 */ bgt lbl_803C8DB8 -/* 803C8CF8 003C5C58 7C BE 50 AE */ lbzx r5, r30, r10 -/* 803C8CFC 003C5C5C 7D 6B 50 AE */ lbzx r11, r11, r10 -/* 803C8D00 003C5C60 2C 05 00 FF */ cmpwi r5, 0xff -/* 803C8D04 003C5C64 41 82 00 10 */ beq lbl_803C8D14 -/* 803C8D08 003C5C68 7F FF 5A 14 */ add r31, r31, r11 -/* 803C8D0C 003C5C6C 93 E3 06 A4 */ stw r31, 0x6a4(r3) -/* 803C8D10 003C5C70 48 00 02 4C */ b lbl_803C8F5C -lbl_803C8D14: -/* 803C8D14 003C5C74 38 FE 00 44 */ addi r7, r30, 0x44 -/* 803C8D18 003C5C78 3B FF 00 05 */ addi r31, r31, 5 -/* 803C8D1C 003C5C7C 38 00 00 14 */ li r0, 0x14 -/* 803C8D20 003C5C80 38 A0 00 05 */ li r5, 5 -/* 803C8D24 003C5C84 38 E7 00 14 */ addi r7, r7, 0x14 -lbl_803C8D28: -/* 803C8D28 003C5C88 2C 1F 00 21 */ cmpwi r31, 0x21 -/* 803C8D2C 003C5C8C 55 4A 08 3C */ slwi r10, r10, 1 -/* 803C8D30 003C5C90 41 82 00 18 */ beq lbl_803C8D48 -/* 803C8D34 003C5C94 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f -/* 803C8D38 003C5C98 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C8D3C 003C5C9C 7D 4A 5B 78 */ or r10, r10, r11 -/* 803C8D40 003C5CA0 3B FF 00 01 */ addi r31, r31, 1 -/* 803C8D44 003C5CA4 48 00 00 48 */ b lbl_803C8D8C -lbl_803C8D48: -/* 803C8D48 003C5CA8 81 63 06 9C */ lwz r11, 0x69c(r3) -/* 803C8D4C 003C5CAC 3B E0 00 01 */ li r31, 1 -/* 803C8D50 003C5CB0 85 8B 00 04 */ lwzu r12, 4(r11) -/* 803C8D54 003C5CB4 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C8D58 003C5CB8 91 63 06 9C */ stw r11, 0x69c(r3) -/* 803C8D5C 003C5CBC 51 8A 0F FE */ rlwimi r10, r12, 1, 0x1f, 0x1f -/* 803C8D60 003C5CC0 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C8D64 003C5CC4 48 00 00 14 */ b lbl_803C8D78 -lbl_803C8D68: -/* 803C8D68 003C5CC8 55 4A 08 3C */ slwi r10, r10, 1 -/* 803C8D6C 003C5CCC 5D 8B FF FE */ rlwnm r11, r12, r31, 0x1f, 0x1f -/* 803C8D70 003C5CD0 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C8D74 003C5CD4 7D 4A 5B 78 */ or r10, r10, r11 -lbl_803C8D78: -/* 803C8D78 003C5CD8 7C 0A 00 00 */ cmpw r10, r0 -/* 803C8D7C 003C5CDC 3B FF 00 01 */ addi r31, r31, 1 -/* 803C8D80 003C5CE0 38 A5 00 01 */ addi r5, r5, 1 -/* 803C8D84 003C5CE4 41 81 FF E4 */ bgt lbl_803C8D68 -/* 803C8D88 003C5CE8 48 00 00 10 */ b lbl_803C8D98 -lbl_803C8D8C: -/* 803C8D8C 003C5CEC 7C 0A 00 00 */ cmpw r10, r0 -/* 803C8D90 003C5CF0 38 A5 00 01 */ addi r5, r5, 1 -/* 803C8D94 003C5CF4 41 81 FF 94 */ bgt lbl_803C8D28 -lbl_803C8D98: -/* 803C8D98 003C5CF8 93 E3 06 A4 */ stw r31, 0x6a4(r3) -/* 803C8D9C 003C5CFC 54 A0 10 3A */ slwi r0, r5, 2 -/* 803C8DA0 003C5D00 7C BE 02 14 */ add r5, r30, r0 -/* 803C8DA4 003C5D04 80 FE 00 40 */ lwz r7, 0x40(r30) -/* 803C8DA8 003C5D08 80 05 00 8C */ lwz r0, 0x8c(r5) -/* 803C8DAC 003C5D0C 7C 00 3A 14 */ add r0, r0, r7 -/* 803C8DB0 003C5D10 7C AA 00 AE */ lbzx r5, r10, r0 -/* 803C8DB4 003C5D14 48 00 01 A8 */ b lbl_803C8F5C -lbl_803C8DB8: -/* 803C8DB8 003C5D18 2C 1F 00 21 */ cmpwi r31, 0x21 -/* 803C8DBC 003C5D1C 81 43 06 9C */ lwz r10, 0x69c(r3) -/* 803C8DC0 003C5D20 41 82 00 B4 */ beq lbl_803C8E74 -/* 803C8DC4 003C5D24 2C 1F 00 20 */ cmpwi r31, 0x20 -/* 803C8DC8 003C5D28 5D 85 2E FE */ rlwnm r5, r12, r5, 0x1b, 0x1f -/* 803C8DCC 003C5D2C 41 82 00 2C */ beq lbl_803C8DF8 -/* 803C8DD0 003C5D30 7D 5E 28 AE */ lbzx r10, r30, r5 -/* 803C8DD4 003C5D34 7D 6B 28 AE */ lbzx r11, r11, r5 -/* 803C8DD8 003C5D38 2C 0A 00 FF */ cmpwi r10, 0xff -/* 803C8DDC 003C5D3C 7C BF 5A 14 */ add r5, r31, r11 -/* 803C8DE0 003C5D40 41 82 00 F8 */ beq lbl_803C8ED8 -/* 803C8DE4 003C5D44 2C 05 00 21 */ cmpwi r5, 0x21 -/* 803C8DE8 003C5D48 90 A3 06 A4 */ stw r5, 0x6a4(r3) -/* 803C8DEC 003C5D4C 41 81 00 EC */ bgt lbl_803C8ED8 -/* 803C8DF0 003C5D50 7D 45 53 78 */ mr r5, r10 -/* 803C8DF4 003C5D54 48 00 01 68 */ b lbl_803C8F5C -lbl_803C8DF8: -/* 803C8DF8 003C5D58 85 8A 00 04 */ lwzu r12, 4(r10) -/* 803C8DFC 003C5D5C 91 43 06 9C */ stw r10, 0x69c(r3) -/* 803C8E00 003C5D60 51 85 27 3E */ rlwimi r5, r12, 4, 0x1c, 0x1f -/* 803C8E04 003C5D64 7D 5E 28 AE */ lbzx r10, r30, r5 -/* 803C8E08 003C5D68 7D 6B 28 AE */ lbzx r11, r11, r5 -/* 803C8E0C 003C5D6C 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C8E10 003C5D70 2C 0A 00 FF */ cmpwi r10, 0xff -/* 803C8E14 003C5D74 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8E18 003C5D78 41 82 00 0C */ beq lbl_803C8E24 -/* 803C8E1C 003C5D7C 7D 45 53 78 */ mr r5, r10 -/* 803C8E20 003C5D80 48 00 01 3C */ b lbl_803C8F5C -lbl_803C8E24: -/* 803C8E24 003C5D84 38 FE 00 44 */ addi r7, r30, 0x44 -/* 803C8E28 003C5D88 3B E0 00 14 */ li r31, 0x14 -/* 803C8E2C 003C5D8C 38 E7 00 14 */ addi r7, r7, 0x14 -/* 803C8E30 003C5D90 54 AA D8 08 */ slwi r10, r5, 0x1b -/* 803C8E34 003C5D94 3B E0 00 05 */ li r31, 5 -/* 803C8E38 003C5D98 51 8A F8 7E */ rlwimi r10, r12, 0x1f, 1, 0x1f -lbl_803C8E3C: -/* 803C8E3C 003C5D9C 21 9F 00 1F */ subfic r12, r31, 0x1f -/* 803C8E40 003C5DA0 84 07 00 04 */ lwzu r0, 4(r7) -/* 803C8E44 003C5DA4 7D 45 64 30 */ srw r5, r10, r12 -/* 803C8E48 003C5DA8 7C 05 00 00 */ cmpw r5, r0 -/* 803C8E4C 003C5DAC 3B FF 00 01 */ addi r31, r31, 1 -/* 803C8E50 003C5DB0 41 81 FF EC */ bgt lbl_803C8E3C -/* 803C8E54 003C5DB4 93 E3 06 A4 */ stw r31, 0x6a4(r3) -lbl_803C8E58: -/* 803C8E58 003C5DB8 57 E0 10 3A */ slwi r0, r31, 2 -/* 803C8E5C 003C5DBC 81 3E 00 40 */ lwz r9, 0x40(r30) -/* 803C8E60 003C5DC0 7C FE 02 14 */ add r7, r30, r0 -/* 803C8E64 003C5DC4 80 07 00 8C */ lwz r0, 0x8c(r7) -/* 803C8E68 003C5DC8 7C 00 4A 14 */ add r0, r0, r9 -/* 803C8E6C 003C5DCC 7C A5 00 AE */ lbzx r5, r5, r0 -/* 803C8E70 003C5DD0 48 00 00 EC */ b lbl_803C8F5C -lbl_803C8E74: -/* 803C8E74 003C5DD4 85 8A 00 04 */ lwzu r12, 4(r10) -/* 803C8E78 003C5DD8 55 85 2E FE */ srwi r5, r12, 0x1b -/* 803C8E7C 003C5DDC 91 43 06 9C */ stw r10, 0x69c(r3) -/* 803C8E80 003C5DE0 7F FE 28 AE */ lbzx r31, r30, r5 -/* 803C8E84 003C5DE4 7D 6B 28 AE */ lbzx r11, r11, r5 -/* 803C8E88 003C5DE8 2C 1F 00 FF */ cmpwi r31, 0xff -/* 803C8E8C 003C5DEC 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C8E90 003C5DF0 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8E94 003C5DF4 41 82 00 10 */ beq lbl_803C8EA4 -/* 803C8E98 003C5DF8 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8E9C 003C5DFC 7F E5 FB 78 */ mr r5, r31 -/* 803C8EA0 003C5E00 48 00 00 BC */ b lbl_803C8F5C -lbl_803C8EA4: -/* 803C8EA4 003C5E04 3B E0 00 05 */ li r31, 5 -/* 803C8EA8 003C5E08 38 E0 00 14 */ li r7, 0x14 -lbl_803C8EAC: -/* 803C8EAC 003C5E0C 21 5F 00 1F */ subfic r10, r31, 0x1f -/* 803C8EB0 003C5E10 3B FF 00 01 */ addi r31, r31, 1 -/* 803C8EB4 003C5E14 38 E7 00 04 */ addi r7, r7, 4 -/* 803C8EB8 003C5E18 7D 85 54 30 */ srw r5, r12, r10 -/* 803C8EBC 003C5E1C 7D 3E 3A 14 */ add r9, r30, r7 -/* 803C8EC0 003C5E20 80 09 00 44 */ lwz r0, 0x44(r9) -/* 803C8EC4 003C5E24 7C 05 00 00 */ cmpw r5, r0 -/* 803C8EC8 003C5E28 41 81 FF E4 */ bgt lbl_803C8EAC -/* 803C8ECC 003C5E2C 38 1F 00 01 */ addi r0, r31, 1 -/* 803C8ED0 003C5E30 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C8ED4 003C5E34 4B FF FF 84 */ b lbl_803C8E58 -lbl_803C8ED8: -/* 803C8ED8 003C5E38 20 1F 00 21 */ subfic r0, r31, 0x21 -/* 803C8EDC 003C5E3C 38 A0 FF FF */ li r5, -1 -/* 803C8EE0 003C5E40 7C A9 00 30 */ slw r9, r5, r0 -/* 803C8EE4 003C5E44 7D 85 48 78 */ andc r5, r12, r9 -/* 803C8EE8 003C5E48 39 3E 00 44 */ addi r9, r30, 0x44 -/* 803C8EEC 003C5E4C 81 43 06 9C */ lwz r10, 0x69c(r3) -/* 803C8EF0 003C5E50 20 FF 00 21 */ subfic r7, r31, 0x21 -/* 803C8EF4 003C5E54 3B E7 00 01 */ addi r31, r7, 1 -/* 803C8EF8 003C5E58 54 E7 10 3A */ slwi r7, r7, 2 -/* 803C8EFC 003C5E5C 85 8A 00 04 */ lwzu r12, 4(r10) -/* 803C8F00 003C5E60 7D 29 3A 14 */ add r9, r9, r7 -/* 803C8F04 003C5E64 91 43 06 9C */ stw r10, 0x69c(r3) -/* 803C8F08 003C5E68 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C8F0C 003C5E6C 91 83 06 A0 */ stw r12, 0x6a0(r3) -/* 803C8F10 003C5E70 51 85 0F FE */ rlwimi r5, r12, 1, 0x1f, 0x1f -/* 803C8F14 003C5E74 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8F18 003C5E78 39 40 00 02 */ li r10, 2 -/* 803C8F1C 003C5E7C 48 00 00 18 */ b lbl_803C8F34 -lbl_803C8F20: -/* 803C8F20 003C5E80 54 A5 08 3C */ slwi r5, r5, 1 -/* 803C8F24 003C5E84 3B FF 00 01 */ addi r31, r31, 1 -/* 803C8F28 003C5E88 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8F2C 003C5E8C 7C A5 5A 14 */ add r5, r5, r11 -/* 803C8F30 003C5E90 39 4A 00 01 */ addi r10, r10, 1 -lbl_803C8F34: -/* 803C8F34 003C5E94 7C 05 38 00 */ cmpw r5, r7 -/* 803C8F38 003C5E98 5D 8B 57 FE */ rlwnm r11, r12, r10, 0x1f, 0x1f -/* 803C8F3C 003C5E9C 41 81 FF E4 */ bgt lbl_803C8F20 -/* 803C8F40 003C5EA0 91 43 06 A4 */ stw r10, 0x6a4(r3) -/* 803C8F44 003C5EA4 57 E0 10 3A */ slwi r0, r31, 2 -/* 803C8F48 003C5EA8 7C FE 02 14 */ add r7, r30, r0 -/* 803C8F4C 003C5EAC 81 3E 00 40 */ lwz r9, 0x40(r30) -/* 803C8F50 003C5EB0 80 07 00 8C */ lwz r0, 0x8c(r7) -/* 803C8F54 003C5EB4 7C 00 4A 14 */ add r0, r0, r9 -/* 803C8F58 003C5EB8 7C A5 00 AE */ lbzx r5, r5, r0 -lbl_803C8F5C: -/* 803C8F5C 003C5EBC 54 BE 07 3F */ clrlwi. r30, r5, 0x1c -/* 803C8F60 003C5EC0 7C A7 26 70 */ srawi r7, r5, 4 -/* 803C8F64 003C5EC4 41 82 00 9C */ beq lbl_803C9000 -/* 803C8F68 003C5EC8 7C C6 3A 14 */ add r6, r6, r7 -/* 803C8F6C 003C5ECC 81 23 06 A4 */ lwz r9, 0x6a4(r3) -/* 803C8F70 003C5ED0 21 49 00 21 */ subfic r10, r9, 0x21 -/* 803C8F74 003C5ED4 80 E3 06 A0 */ lwz r7, 0x6a0(r3) -/* 803C8F78 003C5ED8 7D 6A F0 51 */ subf. r11, r10, r30 -/* 803C8F7C 003C5EDC 39 89 FF FF */ addi r12, r9, -1 -/* 803C8F80 003C5EE0 41 81 00 1C */ bgt lbl_803C8F9C -/* 803C8F84 003C5EE4 7C 09 F2 14 */ add r0, r9, r30 -/* 803C8F88 003C5EE8 7C E9 60 30 */ slw r9, r7, r12 -/* 803C8F8C 003C5EEC 90 03 06 A4 */ stw r0, 0x6a4(r3) -/* 803C8F90 003C5EF0 20 1E 00 20 */ subfic r0, r30, 0x20 -/* 803C8F94 003C5EF4 7D 27 04 30 */ srw r7, r9, r0 -/* 803C8F98 003C5EF8 48 00 00 30 */ b lbl_803C8FC8 -lbl_803C8F9C: -/* 803C8F9C 003C5EFC 81 23 06 9C */ lwz r9, 0x69c(r3) -/* 803C8FA0 003C5F00 7C E0 60 30 */ slw r0, r7, r12 -/* 803C8FA4 003C5F04 84 E9 00 04 */ lwzu r7, 4(r9) -/* 803C8FA8 003C5F08 39 6B 00 01 */ addi r11, r11, 1 -/* 803C8FAC 003C5F0C 90 E3 06 A0 */ stw r7, 0x6a0(r3) -/* 803C8FB0 003C5F10 7C E7 54 30 */ srw r7, r7, r10 -/* 803C8FB4 003C5F14 91 23 06 9C */ stw r9, 0x69c(r3) -/* 803C8FB8 003C5F18 7C 07 02 14 */ add r0, r7, r0 -/* 803C8FBC 003C5F1C 91 63 06 A4 */ stw r11, 0x6a4(r3) -/* 803C8FC0 003C5F20 21 7E 00 20 */ subfic r11, r30, 0x20 -/* 803C8FC4 003C5F24 7C 07 5C 30 */ srw r7, r0, r11 -lbl_803C8FC8: -/* 803C8FC8 003C5F28 7C E5 00 34 */ cntlzw r5, r7 -/* 803C8FCC 003C5F2C 20 1E 00 20 */ subfic r0, r30, 0x20 -/* 803C8FD0 003C5F30 7C 05 00 00 */ cmpw r5, r0 -/* 803C8FD4 003C5F34 40 81 00 14 */ ble lbl_803C8FE8 -/* 803C8FD8 003C5F38 38 00 FF FF */ li r0, -1 -/* 803C8FDC 003C5F3C 7C 00 F0 30 */ slw r0, r0, r30 -/* 803C8FE0 003C5F40 7C E0 3A 14 */ add r7, r0, r7 -/* 803C8FE4 003C5F44 38 E7 00 01 */ addi r7, r7, 1 -lbl_803C8FE8: -/* 803C8FE8 003C5F48 7C A8 32 14 */ add r5, r8, r6 -/* 803C8FEC 003C5F4C 88 05 00 00 */ lbz r0, 0(r5) -/* 803C8FF0 003C5F50 7C E5 07 34 */ extsh r5, r7 -/* 803C8FF4 003C5F54 54 00 08 3C */ slwi r0, r0, 1 -/* 803C8FF8 003C5F58 7C A4 03 2E */ sthx r5, r4, r0 -/* 803C8FFC 003C5F5C 48 00 00 10 */ b lbl_803C900C -lbl_803C9000: -/* 803C9000 003C5F60 2C 07 00 0F */ cmpwi r7, 0xf -/* 803C9004 003C5F64 40 82 00 14 */ bne lbl_803C9018 -/* 803C9008 003C5F68 38 C6 00 0F */ addi r6, r6, 0xf -lbl_803C900C: -/* 803C900C 003C5F6C 38 C6 00 01 */ addi r6, r6, 1 -lbl_803C9010: -/* 803C9010 003C5F70 2C 06 00 40 */ cmpwi r6, 0x40 -/* 803C9014 003C5F74 41 80 FC C4 */ blt lbl_803C8CD8 -lbl_803C9018: -/* 803C9018 003C5F78 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 803C901C 003C5F7C 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 803C9020 003C5F80 38 21 00 18 */ addi r1, r1, 0x18 -/* 803C9024 003C5F84 4E 80 00 20 */ blr - -.global THPInit -THPInit: -/* 803C9028 003C5F88 7C 08 02 A6 */ mflr r0 -/* 803C902C 003C5F8C 3C 80 80 57 */ lis r4, lbl_80569F60@ha -/* 803C9030 003C5F90 90 01 00 04 */ stw r0, 4(r1) -/* 803C9034 003C5F94 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803C9038 003C5F98 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803C903C 003C5F9C 3B E4 9F 60 */ addi r31, r4, lbl_80569F60@l -/* 803C9040 003C5FA0 80 6D A0 58 */ lwz r3, lbl_805A8C18@sda21(r13) -/* 803C9044 003C5FA4 4B FB 4F F5 */ bl OSRegisterVersion -/* 803C9048 003C5FA8 3C 80 E0 00 */ lis r4, 0xE0002000@ha -/* 803C904C 003C5FAC 90 9F 01 00 */ stw r4, 0x100(r31) -/* 803C9050 003C5FB0 38 84 20 00 */ addi r4, r4, 0xE0002000@l -/* 803C9054 003C5FB4 90 9F 01 04 */ stw r4, 0x104(r31) -/* 803C9058 003C5FB8 38 84 08 00 */ addi r4, r4, 0x800 -/* 803C905C 003C5FBC 90 9F 01 08 */ stw r4, 0x108(r31) -/* 803C9060 003C5FC0 3C 80 E0 00 */ lis r4, 0xE0002800@ha -/* 803C9064 003C5FC4 90 9F 01 0C */ stw r4, 0x10c(r31) -/* 803C9068 003C5FC8 38 84 28 00 */ addi r4, r4, 0xE0002800@l -/* 803C906C 003C5FCC 90 9F 01 10 */ stw r4, 0x110(r31) -/* 803C9070 003C5FD0 38 84 0A 00 */ addi r4, r4, 0xa00 -/* 803C9074 003C5FD4 90 9F 01 14 */ stw r4, 0x114(r31) -/* 803C9078 003C5FD8 38 60 00 04 */ li r3, 4 -/* 803C907C 003C5FDC 64 63 00 04 */ oris r3, r3, 4 -/* 803C9080 003C5FE0 7C 72 E3 A6 */ mtspr 0x392, r3 -/* 803C9084 003C5FE4 38 60 00 05 */ li r3, 5 -/* 803C9088 003C5FE8 64 63 00 05 */ oris r3, r3, 5 -/* 803C908C 003C5FEC 7C 73 E3 A6 */ mtspr 0x393, r3 -/* 803C9090 003C5FF0 38 60 00 06 */ li r3, 6 -/* 803C9094 003C5FF4 64 63 00 06 */ oris r3, r3, 6 -/* 803C9098 003C5FF8 7C 74 E3 A6 */ mtspr 0x394, r3 -/* 803C909C 003C5FFC 38 60 00 07 */ li r3, 7 -/* 803C90A0 003C6000 64 63 00 07 */ oris r3, r3, 7 -/* 803C90A4 003C6004 7C 75 E3 A6 */ mtspr 0x395, r3 -/* 803C90A8 003C6008 38 00 00 01 */ li r0, 1 -/* 803C90AC 003C600C 90 0D B1 54 */ stw r0, lbl_805A9D14@sda21(r13) -/* 803C90B0 003C6010 38 60 00 01 */ li r3, 1 -/* 803C90B4 003C6014 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803C90B8 003C6018 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803C90BC 003C601C 38 21 00 10 */ addi r1, r1, 0x10 -/* 803C90C0 003C6020 7C 08 03 A6 */ mtlr r0 -/* 803C90C4 003C6024 4E 80 00 20 */ blr - -.global THPAudioDecode -THPAudioDecode: -/* 803C90C8 003C6028 7C 08 02 A6 */ mflr r0 -/* 803C90CC 003C602C 28 03 00 00 */ cmplwi r3, 0 -/* 803C90D0 003C6030 90 01 00 04 */ stw r0, 4(r1) -/* 803C90D4 003C6034 94 21 FF A8 */ stwu r1, -0x58(r1) -/* 803C90D8 003C6038 BE 81 00 28 */ stmw r20, 0x28(r1) -/* 803C90DC 003C603C 3B E4 00 00 */ addi r31, r4, 0 -/* 803C90E0 003C6040 41 82 00 0C */ beq lbl_803C90EC -/* 803C90E4 003C6044 28 1F 00 00 */ cmplwi r31, 0 -/* 803C90E8 003C6048 40 82 00 0C */ bne lbl_803C90F4 -lbl_803C90EC: -/* 803C90EC 003C604C 38 60 00 00 */ li r3, 0 -/* 803C90F0 003C6050 48 00 04 28 */ b lbl_803C9518 -lbl_803C90F4: -/* 803C90F4 003C6054 80 1F 00 00 */ lwz r0, 0(r31) -/* 803C90F8 003C6058 2C 05 00 01 */ cmpwi r5, 1 -/* 803C90FC 003C605C 38 9F 00 50 */ addi r4, r31, 0x50 -/* 803C9100 003C6060 7F 7F 02 14 */ add r27, r31, r0 -/* 803C9104 003C6064 3B 7B 00 50 */ addi r27, r27, 0x50 -/* 803C9108 003C6068 40 82 00 1C */ bne lbl_803C9124 -/* 803C910C 003C606C 80 1F 00 04 */ lwz r0, 4(r31) -/* 803C9110 003C6070 3B C3 00 00 */ addi r30, r3, 0 -/* 803C9114 003C6074 3B 40 00 01 */ li r26, 1 -/* 803C9118 003C6078 54 00 08 3C */ slwi r0, r0, 1 -/* 803C911C 003C607C 7F A3 02 14 */ add r29, r3, r0 -/* 803C9120 003C6080 48 00 00 10 */ b lbl_803C9130 -lbl_803C9124: -/* 803C9124 003C6084 3B C3 00 00 */ addi r30, r3, 0 -/* 803C9128 003C6088 3B A3 00 02 */ addi r29, r3, 2 -/* 803C912C 003C608C 3B 40 00 02 */ li r26, 2 -lbl_803C9130: -/* 803C9130 003C6090 80 1F 00 00 */ lwz r0, 0(r31) -/* 803C9134 003C6094 28 00 00 00 */ cmplwi r0, 0 -/* 803C9138 003C6098 40 82 01 54 */ bne lbl_803C928C -/* 803C913C 003C609C 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C9140 003C60A0 48 00 04 7D */ bl __THPAudioInitialize -/* 803C9144 003C60A4 3F 20 00 01 */ lis r25, 0x0000FFFF@ha -/* 803C9148 003C60A8 AA BF 00 48 */ lha r21, 0x48(r31) -/* 803C914C 003C60AC 3E E0 80 00 */ lis r23, 0x7FFFFFFF@ha -/* 803C9150 003C60B0 AA 9F 00 4A */ lha r20, 0x4a(r31) -/* 803C9154 003C60B4 57 5B 08 3C */ slwi r27, r26, 1 -/* 803C9158 003C60B8 3B 59 FF FF */ addi r26, r25, 0x0000FFFF@l -/* 803C915C 003C60BC 3B 17 FF FF */ addi r24, r23, 0x7FFFFFFF@l -/* 803C9160 003C60C0 3A C0 00 00 */ li r22, 0 -/* 803C9164 003C60C4 48 00 01 18 */ b lbl_803C927C -lbl_803C9168: -/* 803C9168 003C60C8 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C916C 003C60CC 48 00 03 C1 */ bl __THPAudioGetNewSample -/* 803C9170 003C60D0 88 A1 00 1C */ lbz r5, 0x1c(r1) -/* 803C9174 003C60D4 7E 86 07 34 */ extsh r6, r20 -/* 803C9178 003C60D8 88 01 00 1D */ lbz r0, 0x1d(r1) -/* 803C917C 003C60DC 7E A4 07 34 */ extsh r4, r21 -/* 803C9180 003C60E0 54 A5 10 3A */ slwi r5, r5, 2 -/* 803C9184 003C60E4 7C BF 2A 14 */ add r5, r31, r5 -/* 803C9188 003C60E8 A8 E5 00 0A */ lha r7, 0xa(r5) -/* 803C918C 003C60EC 7C 60 00 30 */ slw r0, r3, r0 -/* 803C9190 003C60F0 A8 65 00 08 */ lha r3, 8(r5) -/* 803C9194 003C60F4 54 05 58 28 */ slwi r5, r0, 0xb -/* 803C9198 003C60F8 7C C7 31 D6 */ mullw r6, r7, r6 -/* 803C919C 003C60FC 7C 83 21 D6 */ mullw r4, r3, r4 -/* 803C91A0 003C6100 7C C3 FE 70 */ srawi r3, r6, 0x1f -/* 803C91A4 003C6104 7C 80 FE 70 */ srawi r0, r4, 0x1f -/* 803C91A8 003C6108 7C 86 20 14 */ addc r4, r6, r4 -/* 803C91AC 003C610C 7C 63 01 14 */ adde r3, r3, r0 -/* 803C91B0 003C6110 7C A0 FE 70 */ srawi r0, r5, 0x1f -/* 803C91B4 003C6114 7C 84 28 14 */ addc r4, r4, r5 -/* 803C91B8 003C6118 7C 63 01 14 */ adde r3, r3, r0 -/* 803C91BC 003C611C 38 A0 00 05 */ li r5, 5 -/* 803C91C0 003C6120 4B FC 0D 35 */ bl __shl2i -/* 803C91C4 003C6124 7C 80 D0 38 */ and r0, r4, r26 -/* 803C91C8 003C6128 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 803C91CC 003C612C 28 00 80 00 */ cmplwi r0, 0x8000 -/* 803C91D0 003C6130 38 C0 00 00 */ li r6, 0 -/* 803C91D4 003C6134 7C 67 30 38 */ and r7, r3, r6 -/* 803C91D8 003C6138 40 81 00 10 */ ble lbl_803C91E8 -/* 803C91DC 003C613C 7C 84 C8 14 */ addc r4, r4, r25 -/* 803C91E0 003C6140 7C 63 31 14 */ adde r3, r3, r6 -/* 803C91E4 003C6144 48 00 00 24 */ b lbl_803C9208 -lbl_803C91E8: -/* 803C91E8 003C6148 40 82 00 20 */ bne lbl_803C9208 -/* 803C91EC 003C614C 7C 80 C8 38 */ and r0, r4, r25 -/* 803C91F0 003C6150 7C 05 32 78 */ xor r5, r0, r6 -/* 803C91F4 003C6154 7C E0 32 78 */ xor r0, r7, r6 -/* 803C91F8 003C6158 7C A0 03 79 */ or. r0, r5, r0 -/* 803C91FC 003C615C 41 82 00 0C */ beq lbl_803C9208 -/* 803C9200 003C6160 7C 84 C8 14 */ addc r4, r4, r25 -/* 803C9204 003C6164 7C 63 31 14 */ adde r3, r3, r6 -lbl_803C9208: -/* 803C9208 003C6168 38 00 00 00 */ li r0, 0 -/* 803C920C 003C616C 6C 06 80 00 */ xoris r6, r0, 0x8000 -/* 803C9210 003C6170 6C 65 80 00 */ xoris r5, r3, 0x8000 -/* 803C9214 003C6174 7C 04 C0 10 */ subfc r0, r4, r24 -/* 803C9218 003C6178 7C A5 31 10 */ subfe r5, r5, r6 -/* 803C921C 003C617C 7C A6 31 10 */ subfe r5, r6, r6 -/* 803C9220 003C6180 7C A5 00 D1 */ neg. r5, r5 -/* 803C9224 003C6184 41 82 00 0C */ beq lbl_803C9230 -/* 803C9228 003C6188 38 97 FF FF */ addi r4, r23, -1 -/* 803C922C 003C618C 38 60 00 00 */ li r3, 0 -lbl_803C9230: -/* 803C9230 003C6190 38 00 FF FF */ li r0, -1 -/* 803C9234 003C6194 6C 05 80 00 */ xoris r5, r0, 0x8000 -/* 803C9238 003C6198 6C 66 80 00 */ xoris r6, r3, 0x8000 -/* 803C923C 003C619C 7C 17 20 10 */ subfc r0, r23, r4 -/* 803C9240 003C61A0 7C A5 31 10 */ subfe r5, r5, r6 -/* 803C9244 003C61A4 7C A6 31 10 */ subfe r5, r6, r6 -/* 803C9248 003C61A8 7C A5 00 D1 */ neg. r5, r5 -/* 803C924C 003C61AC 41 82 00 0C */ beq lbl_803C9258 -/* 803C9250 003C61B0 3C 80 80 00 */ lis r4, 0x8000 -/* 803C9254 003C61B4 38 60 FF FF */ li r3, -1 -lbl_803C9258: -/* 803C9258 003C61B8 38 A0 00 10 */ li r5, 0x10 -/* 803C925C 003C61BC 4B FC 0C E1 */ bl __shr2i -/* 803C9260 003C61C0 B0 9D 00 00 */ sth r4, 0(r29) -/* 803C9264 003C61C4 7E B4 AB 78 */ mr r20, r21 -/* 803C9268 003C61C8 3A A4 00 00 */ addi r21, r4, 0 -/* 803C926C 003C61CC B0 9E 00 00 */ sth r4, 0(r30) -/* 803C9270 003C61D0 7F BD DA 14 */ add r29, r29, r27 -/* 803C9274 003C61D4 7F DE DA 14 */ add r30, r30, r27 -/* 803C9278 003C61D8 3A D6 00 01 */ addi r22, r22, 1 -lbl_803C927C: -/* 803C927C 003C61DC 80 1F 00 04 */ lwz r0, 4(r31) -/* 803C9280 003C61E0 7C 16 00 40 */ cmplw r22, r0 -/* 803C9284 003C61E4 41 80 FE E4 */ blt lbl_803C9168 -/* 803C9288 003C61E8 48 00 02 8C */ b lbl_803C9514 -lbl_803C928C: -/* 803C928C 003C61EC 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C9290 003C61F0 48 00 03 2D */ bl __THPAudioInitialize -/* 803C9294 003C61F4 3F 00 00 01 */ lis r24, 0x0000FFFF@ha -/* 803C9298 003C61F8 AA DF 00 48 */ lha r22, 0x48(r31) -/* 803C929C 003C61FC 3F 20 80 00 */ lis r25, 0x7FFFFFFF@ha -/* 803C92A0 003C6200 AA 9F 00 4A */ lha r20, 0x4a(r31) -/* 803C92A4 003C6204 57 5C 08 3C */ slwi r28, r26, 1 -/* 803C92A8 003C6208 3A F8 FF FF */ addi r23, r24, 0x0000FFFF@l -/* 803C92AC 003C620C 3B 59 FF FF */ addi r26, r25, 0x7FFFFFFF@l -/* 803C92B0 003C6210 3A A0 00 00 */ li r21, 0 -/* 803C92B4 003C6214 48 00 01 10 */ b lbl_803C93C4 -lbl_803C92B8: -/* 803C92B8 003C6218 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C92BC 003C621C 48 00 02 71 */ bl __THPAudioGetNewSample -/* 803C92C0 003C6220 88 A1 00 1C */ lbz r5, 0x1c(r1) -/* 803C92C4 003C6224 7E 86 07 34 */ extsh r6, r20 -/* 803C92C8 003C6228 88 01 00 1D */ lbz r0, 0x1d(r1) -/* 803C92CC 003C622C 7E C4 07 34 */ extsh r4, r22 -/* 803C92D0 003C6230 54 A5 10 3A */ slwi r5, r5, 2 -/* 803C92D4 003C6234 7C BF 2A 14 */ add r5, r31, r5 -/* 803C92D8 003C6238 A8 E5 00 0A */ lha r7, 0xa(r5) -/* 803C92DC 003C623C 7C 60 00 30 */ slw r0, r3, r0 -/* 803C92E0 003C6240 A8 65 00 08 */ lha r3, 8(r5) -/* 803C92E4 003C6244 54 05 58 28 */ slwi r5, r0, 0xb -/* 803C92E8 003C6248 7C C7 31 D6 */ mullw r6, r7, r6 -/* 803C92EC 003C624C 7C 83 21 D6 */ mullw r4, r3, r4 -/* 803C92F0 003C6250 7C C3 FE 70 */ srawi r3, r6, 0x1f -/* 803C92F4 003C6254 7C 80 FE 70 */ srawi r0, r4, 0x1f -/* 803C92F8 003C6258 7C 86 20 14 */ addc r4, r6, r4 -/* 803C92FC 003C625C 7C 63 01 14 */ adde r3, r3, r0 -/* 803C9300 003C6260 7C A0 FE 70 */ srawi r0, r5, 0x1f -/* 803C9304 003C6264 7C 84 28 14 */ addc r4, r4, r5 -/* 803C9308 003C6268 7C 63 01 14 */ adde r3, r3, r0 -/* 803C930C 003C626C 38 A0 00 05 */ li r5, 5 -/* 803C9310 003C6270 4B FC 0B E5 */ bl __shl2i -/* 803C9314 003C6274 7C 80 B8 38 */ and r0, r4, r23 -/* 803C9318 003C6278 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 803C931C 003C627C 28 00 80 00 */ cmplwi r0, 0x8000 -/* 803C9320 003C6280 38 C0 00 00 */ li r6, 0 -/* 803C9324 003C6284 7C 67 30 38 */ and r7, r3, r6 -/* 803C9328 003C6288 40 81 00 10 */ ble lbl_803C9338 -/* 803C932C 003C628C 7C 84 C0 14 */ addc r4, r4, r24 -/* 803C9330 003C6290 7C 63 31 14 */ adde r3, r3, r6 -/* 803C9334 003C6294 48 00 00 24 */ b lbl_803C9358 -lbl_803C9338: -/* 803C9338 003C6298 40 82 00 20 */ bne lbl_803C9358 -/* 803C933C 003C629C 7C 80 C0 38 */ and r0, r4, r24 -/* 803C9340 003C62A0 7C 05 32 78 */ xor r5, r0, r6 -/* 803C9344 003C62A4 7C E0 32 78 */ xor r0, r7, r6 -/* 803C9348 003C62A8 7C A0 03 79 */ or. r0, r5, r0 -/* 803C934C 003C62AC 41 82 00 0C */ beq lbl_803C9358 -/* 803C9350 003C62B0 7C 84 C0 14 */ addc r4, r4, r24 -/* 803C9354 003C62B4 7C 63 31 14 */ adde r3, r3, r6 -lbl_803C9358: -/* 803C9358 003C62B8 38 E0 00 00 */ li r7, 0 -/* 803C935C 003C62BC 6C E6 80 00 */ xoris r6, r7, 0x8000 -/* 803C9360 003C62C0 6C 65 80 00 */ xoris r5, r3, 0x8000 -/* 803C9364 003C62C4 7C 04 D0 10 */ subfc r0, r4, r26 -/* 803C9368 003C62C8 7C A5 31 10 */ subfe r5, r5, r6 -/* 803C936C 003C62CC 7C A6 31 10 */ subfe r5, r6, r6 -/* 803C9370 003C62D0 7C A5 00 D1 */ neg. r5, r5 -/* 803C9374 003C62D4 41 82 00 0C */ beq lbl_803C9380 -/* 803C9378 003C62D8 38 99 FF FF */ addi r4, r25, -1 -/* 803C937C 003C62DC 38 67 00 00 */ addi r3, r7, 0 -lbl_803C9380: -/* 803C9380 003C62E0 38 E0 FF FF */ li r7, -1 -/* 803C9384 003C62E4 6C 66 80 00 */ xoris r6, r3, 0x8000 -/* 803C9388 003C62E8 6C E5 80 00 */ xoris r5, r7, 0x8000 -/* 803C938C 003C62EC 7C 19 20 10 */ subfc r0, r25, r4 -/* 803C9390 003C62F0 7C A5 31 10 */ subfe r5, r5, r6 -/* 803C9394 003C62F4 7C A6 31 10 */ subfe r5, r6, r6 -/* 803C9398 003C62F8 7C A5 00 D1 */ neg. r5, r5 -/* 803C939C 003C62FC 41 82 00 0C */ beq lbl_803C93A8 -/* 803C93A0 003C6300 3C 80 80 00 */ lis r4, 0x8000 -/* 803C93A4 003C6304 38 67 00 00 */ addi r3, r7, 0 -lbl_803C93A8: -/* 803C93A8 003C6308 38 A0 00 10 */ li r5, 0x10 -/* 803C93AC 003C630C 4B FC 0B 91 */ bl __shr2i -/* 803C93B0 003C6310 B0 9D 00 00 */ sth r4, 0(r29) -/* 803C93B4 003C6314 3A 96 00 00 */ addi r20, r22, 0 -/* 803C93B8 003C6318 3A C4 00 00 */ addi r22, r4, 0 -/* 803C93BC 003C631C 7F BD E2 14 */ add r29, r29, r28 -/* 803C93C0 003C6320 3A B5 00 01 */ addi r21, r21, 1 -lbl_803C93C4: -/* 803C93C4 003C6324 80 1F 00 04 */ lwz r0, 4(r31) -/* 803C93C8 003C6328 7C 15 00 40 */ cmplw r21, r0 -/* 803C93CC 003C632C 41 80 FE EC */ blt lbl_803C92B8 -/* 803C93D0 003C6330 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C93D4 003C6334 38 9B 00 00 */ addi r4, r27, 0 -/* 803C93D8 003C6338 48 00 01 E5 */ bl __THPAudioInitialize -/* 803C93DC 003C633C 3F 40 00 01 */ lis r26, 0x0000FFFF@ha -/* 803C93E0 003C6340 AA FF 00 4C */ lha r23, 0x4c(r31) -/* 803C93E4 003C6344 3F 60 80 00 */ lis r27, 0x7FFFFFFF@ha -/* 803C93E8 003C6348 AA BF 00 4E */ lha r21, 0x4e(r31) -/* 803C93EC 003C634C 3B 3A FF FF */ addi r25, r26, 0x0000FFFF@l -/* 803C93F0 003C6350 3B BB FF FF */ addi r29, r27, 0x7FFFFFFF@l -/* 803C93F4 003C6354 3A C0 00 00 */ li r22, 0 -/* 803C93F8 003C6358 48 00 01 10 */ b lbl_803C9508 -lbl_803C93FC: -/* 803C93FC 003C635C 38 61 00 14 */ addi r3, r1, 0x14 -/* 803C9400 003C6360 48 00 01 2D */ bl __THPAudioGetNewSample -/* 803C9404 003C6364 88 A1 00 1C */ lbz r5, 0x1c(r1) -/* 803C9408 003C6368 7E A6 07 34 */ extsh r6, r21 -/* 803C940C 003C636C 88 01 00 1D */ lbz r0, 0x1d(r1) -/* 803C9410 003C6370 7E E4 07 34 */ extsh r4, r23 -/* 803C9414 003C6374 54 A5 10 3A */ slwi r5, r5, 2 -/* 803C9418 003C6378 7C BF 2A 14 */ add r5, r31, r5 -/* 803C941C 003C637C A8 E5 00 2A */ lha r7, 0x2a(r5) -/* 803C9420 003C6380 7C 60 00 30 */ slw r0, r3, r0 -/* 803C9424 003C6384 A8 65 00 28 */ lha r3, 0x28(r5) -/* 803C9428 003C6388 54 05 58 28 */ slwi r5, r0, 0xb -/* 803C942C 003C638C 7C C7 31 D6 */ mullw r6, r7, r6 -/* 803C9430 003C6390 7C 83 21 D6 */ mullw r4, r3, r4 -/* 803C9434 003C6394 7C C3 FE 70 */ srawi r3, r6, 0x1f -/* 803C9438 003C6398 7C 80 FE 70 */ srawi r0, r4, 0x1f -/* 803C943C 003C639C 7C 86 20 14 */ addc r4, r6, r4 -/* 803C9440 003C63A0 7C 63 01 14 */ adde r3, r3, r0 -/* 803C9444 003C63A4 7C A0 FE 70 */ srawi r0, r5, 0x1f -/* 803C9448 003C63A8 7C 84 28 14 */ addc r4, r4, r5 -/* 803C944C 003C63AC 7C 63 01 14 */ adde r3, r3, r0 -/* 803C9450 003C63B0 38 A0 00 05 */ li r5, 5 -/* 803C9454 003C63B4 4B FC 0A A1 */ bl __shl2i -/* 803C9458 003C63B8 7C 80 C8 38 */ and r0, r4, r25 -/* 803C945C 003C63BC 54 00 04 3E */ clrlwi r0, r0, 0x10 -/* 803C9460 003C63C0 28 00 80 00 */ cmplwi r0, 0x8000 -/* 803C9464 003C63C4 38 C0 00 00 */ li r6, 0 -/* 803C9468 003C63C8 7C 67 30 38 */ and r7, r3, r6 -/* 803C946C 003C63CC 40 81 00 10 */ ble lbl_803C947C -/* 803C9470 003C63D0 7C 84 D0 14 */ addc r4, r4, r26 -/* 803C9474 003C63D4 7C 63 31 14 */ adde r3, r3, r6 -/* 803C9478 003C63D8 48 00 00 24 */ b lbl_803C949C -lbl_803C947C: -/* 803C947C 003C63DC 40 82 00 20 */ bne lbl_803C949C -/* 803C9480 003C63E0 7C 80 D0 38 */ and r0, r4, r26 -/* 803C9484 003C63E4 7C 05 32 78 */ xor r5, r0, r6 -/* 803C9488 003C63E8 7C E0 32 78 */ xor r0, r7, r6 -/* 803C948C 003C63EC 7C A0 03 79 */ or. r0, r5, r0 -/* 803C9490 003C63F0 41 82 00 0C */ beq lbl_803C949C -/* 803C9494 003C63F4 7C 84 D0 14 */ addc r4, r4, r26 -/* 803C9498 003C63F8 7C 63 31 14 */ adde r3, r3, r6 -lbl_803C949C: -/* 803C949C 003C63FC 38 E0 00 00 */ li r7, 0 -/* 803C94A0 003C6400 6C E6 80 00 */ xoris r6, r7, 0x8000 -/* 803C94A4 003C6404 6C 65 80 00 */ xoris r5, r3, 0x8000 -/* 803C94A8 003C6408 7C 04 E8 10 */ subfc r0, r4, r29 -/* 803C94AC 003C640C 7C A5 31 10 */ subfe r5, r5, r6 -/* 803C94B0 003C6410 7C A6 31 10 */ subfe r5, r6, r6 -/* 803C94B4 003C6414 7C A5 00 D1 */ neg. r5, r5 -/* 803C94B8 003C6418 41 82 00 0C */ beq lbl_803C94C4 -/* 803C94BC 003C641C 38 9B FF FF */ addi r4, r27, -1 -/* 803C94C0 003C6420 38 67 00 00 */ addi r3, r7, 0 -lbl_803C94C4: -/* 803C94C4 003C6424 38 E0 FF FF */ li r7, -1 -/* 803C94C8 003C6428 6C 66 80 00 */ xoris r6, r3, 0x8000 -/* 803C94CC 003C642C 6C E5 80 00 */ xoris r5, r7, 0x8000 -/* 803C94D0 003C6430 7C 1B 20 10 */ subfc r0, r27, r4 -/* 803C94D4 003C6434 7C A5 31 10 */ subfe r5, r5, r6 -/* 803C94D8 003C6438 7C A6 31 10 */ subfe r5, r6, r6 -/* 803C94DC 003C643C 7C A5 00 D1 */ neg. r5, r5 -/* 803C94E0 003C6440 41 82 00 0C */ beq lbl_803C94EC -/* 803C94E4 003C6444 3C 80 80 00 */ lis r4, 0x8000 -/* 803C94E8 003C6448 38 67 00 00 */ addi r3, r7, 0 -lbl_803C94EC: -/* 803C94EC 003C644C 38 A0 00 10 */ li r5, 0x10 -/* 803C94F0 003C6450 4B FC 0A 4D */ bl __shr2i -/* 803C94F4 003C6454 B0 9E 00 00 */ sth r4, 0(r30) -/* 803C94F8 003C6458 3A B7 00 00 */ addi r21, r23, 0 -/* 803C94FC 003C645C 3A E4 00 00 */ addi r23, r4, 0 -/* 803C9500 003C6460 7F DE E2 14 */ add r30, r30, r28 -/* 803C9504 003C6464 3A D6 00 01 */ addi r22, r22, 1 -lbl_803C9508: -/* 803C9508 003C6468 80 1F 00 04 */ lwz r0, 4(r31) -/* 803C950C 003C646C 7C 16 00 40 */ cmplw r22, r0 -/* 803C9510 003C6470 41 80 FE EC */ blt lbl_803C93FC -lbl_803C9514: -/* 803C9514 003C6474 80 7F 00 04 */ lwz r3, 4(r31) -lbl_803C9518: -/* 803C9518 003C6478 BA 81 00 28 */ lmw r20, 0x28(r1) -/* 803C951C 003C647C 80 01 00 5C */ lwz r0, 0x5c(r1) -/* 803C9520 003C6480 38 21 00 58 */ addi r1, r1, 0x58 -/* 803C9524 003C6484 7C 08 03 A6 */ mtlr r0 -/* 803C9528 003C6488 4E 80 00 20 */ blr - -.global __THPAudioGetNewSample -__THPAudioGetNewSample: -/* 803C952C 003C648C 80 03 00 04 */ lwz r0, 4(r3) -/* 803C9530 003C6490 54 00 07 3F */ clrlwi. r0, r0, 0x1c -/* 803C9534 003C6494 40 82 00 3C */ bne lbl_803C9570 -/* 803C9538 003C6498 80 83 00 00 */ lwz r4, 0(r3) -/* 803C953C 003C649C 88 04 00 00 */ lbz r0, 0(r4) -/* 803C9540 003C64A0 54 00 E7 7E */ rlwinm r0, r0, 0x1c, 0x1d, 0x1f -/* 803C9544 003C64A4 98 03 00 08 */ stb r0, 8(r3) -/* 803C9548 003C64A8 80 83 00 00 */ lwz r4, 0(r3) -/* 803C954C 003C64AC 88 04 00 00 */ lbz r0, 0(r4) -/* 803C9550 003C64B0 54 00 07 3E */ clrlwi r0, r0, 0x1c -/* 803C9554 003C64B4 98 03 00 09 */ stb r0, 9(r3) -/* 803C9558 003C64B8 80 83 00 00 */ lwz r4, 0(r3) -/* 803C955C 003C64BC 38 04 00 01 */ addi r0, r4, 1 -/* 803C9560 003C64C0 90 03 00 00 */ stw r0, 0(r3) -/* 803C9564 003C64C4 80 83 00 04 */ lwz r4, 4(r3) -/* 803C9568 003C64C8 38 04 00 02 */ addi r0, r4, 2 -/* 803C956C 003C64CC 90 03 00 04 */ stw r0, 4(r3) -lbl_803C9570: -/* 803C9570 003C64D0 80 03 00 04 */ lwz r0, 4(r3) -/* 803C9574 003C64D4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 803C9578 003C64D8 41 82 00 20 */ beq lbl_803C9598 -/* 803C957C 003C64DC 80 A3 00 00 */ lwz r5, 0(r3) -/* 803C9580 003C64E0 88 85 00 00 */ lbz r4, 0(r5) -/* 803C9584 003C64E4 38 05 00 01 */ addi r0, r5, 1 -/* 803C9588 003C64E8 90 03 00 00 */ stw r0, 0(r3) -/* 803C958C 003C64EC 54 80 E0 06 */ slwi r0, r4, 0x1c -/* 803C9590 003C64F0 7C 05 E6 70 */ srawi r5, r0, 0x1c -/* 803C9594 003C64F4 48 00 00 14 */ b lbl_803C95A8 -lbl_803C9598: -/* 803C9598 003C64F8 80 83 00 00 */ lwz r4, 0(r3) -/* 803C959C 003C64FC 88 04 00 00 */ lbz r0, 0(r4) -/* 803C95A0 003C6500 54 00 C0 06 */ rlwinm r0, r0, 0x18, 0, 3 -/* 803C95A4 003C6504 7C 05 E6 70 */ srawi r5, r0, 0x1c -lbl_803C95A8: -/* 803C95A8 003C6508 80 83 00 04 */ lwz r4, 4(r3) -/* 803C95AC 003C650C 38 04 00 01 */ addi r0, r4, 1 -/* 803C95B0 003C6510 90 03 00 04 */ stw r0, 4(r3) -/* 803C95B4 003C6514 7C A3 2B 78 */ mr r3, r5 -/* 803C95B8 003C6518 4E 80 00 20 */ blr - -.global __THPAudioInitialize -__THPAudioInitialize: -/* 803C95BC 003C651C 90 83 00 00 */ stw r4, 0(r3) -/* 803C95C0 003C6520 38 00 00 02 */ li r0, 2 -/* 803C95C4 003C6524 90 03 00 04 */ stw r0, 4(r3) -/* 803C95C8 003C6528 80 83 00 00 */ lwz r4, 0(r3) -/* 803C95CC 003C652C 88 04 00 00 */ lbz r0, 0(r4) -/* 803C95D0 003C6530 54 00 E7 7E */ rlwinm r0, r0, 0x1c, 0x1d, 0x1f -/* 803C95D4 003C6534 98 03 00 08 */ stb r0, 8(r3) -/* 803C95D8 003C6538 80 83 00 00 */ lwz r4, 0(r3) -/* 803C95DC 003C653C 88 04 00 00 */ lbz r0, 0(r4) -/* 803C95E0 003C6540 54 00 07 3E */ clrlwi r0, r0, 0x1c -/* 803C95E4 003C6544 98 03 00 09 */ stb r0, 9(r3) -/* 803C95E8 003C6548 80 83 00 00 */ lwz r4, 0(r3) -/* 803C95EC 003C654C 38 04 00 01 */ addi r0, r4, 1 -/* 803C95F0 003C6550 90 03 00 00 */ stw r0, 0(r3) -/* 803C95F4 003C6554 4E 80 00 20 */ blr - -.global ShortCommandProc -ShortCommandProc: -/* 803C95F8 003C6558 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803C95FC 003C655C 54 63 40 2E */ slwi r3, r3, 8 -/* 803C9600 003C6560 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803C9604 003C6564 7C 60 1A 14 */ add r3, r0, r3 -/* 803C9608 003C6568 80 03 00 20 */ lwz r0, 0x20(r3) -/* 803C960C 003C656C 2C 00 00 00 */ cmpwi r0, 0 -/* 803C9610 003C6570 4C 82 00 20 */ bnelr -/* 803C9614 003C6574 88 03 00 05 */ lbz r0, 5(r3) -/* 803C9618 003C6578 28 00 00 00 */ cmplwi r0, 0 -/* 803C961C 003C657C 40 82 00 10 */ bne lbl_803C962C -/* 803C9620 003C6580 88 03 00 06 */ lbz r0, 6(r3) -/* 803C9624 003C6584 28 00 00 04 */ cmplwi r0, 4 -/* 803C9628 003C6588 41 82 00 10 */ beq lbl_803C9638 -lbl_803C962C: -/* 803C962C 003C658C 38 00 00 01 */ li r0, 1 -/* 803C9630 003C6590 90 03 00 20 */ stw r0, 0x20(r3) -/* 803C9634 003C6594 4E 80 00 20 */ blr -lbl_803C9638: -/* 803C9638 003C6598 88 03 00 07 */ lbz r0, 7(r3) -/* 803C963C 003C659C 80 63 00 14 */ lwz r3, 0x14(r3) -/* 803C9640 003C65A0 70 00 00 3A */ andi. r0, r0, 0x3a -/* 803C9644 003C65A4 98 03 00 00 */ stb r0, 0(r3) -/* 803C9648 003C65A8 4E 80 00 20 */ blr - -.global GBAInit -GBAInit: -/* 803C964C 003C65AC 7C 08 02 A6 */ mflr r0 -/* 803C9650 003C65B0 3C 60 80 00 */ lis r3, 0x800000F8@ha -/* 803C9654 003C65B4 90 01 00 04 */ stw r0, 4(r1) -/* 803C9658 003C65B8 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803C965C 003C65BC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C9660 003C65C0 BF 61 00 0C */ stmw r27, 0xc(r1) -/* 803C9664 003C65C4 3B A4 A1 A0 */ addi r29, r4, lbl_8056A1A0@l -/* 803C9668 003C65C8 3B 60 00 00 */ li r27, 0 -/* 803C966C 003C65CC 3B E0 00 00 */ li r31, 0 -/* 803C9670 003C65D0 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3) -/* 803C9674 003C65D4 3C 60 43 1C */ lis r3, 0x431BDE83@ha -/* 803C9678 003C65D8 38 63 DE 83 */ addi r3, r3, 0x431BDE83@l -/* 803C967C 003C65DC 54 00 F0 BE */ srwi r0, r0, 2 -/* 803C9680 003C65E0 7C 03 00 16 */ mulhwu r0, r3, r0 -/* 803C9684 003C65E4 54 00 8B FE */ srwi r0, r0, 0xf -/* 803C9688 003C65E8 1C 00 00 3C */ mulli r0, r0, 0x3c -/* 803C968C 003C65EC 3C 60 80 57 */ lis r3, lbl_8056A0A0@ha -/* 803C9690 003C65F0 3B 83 A0 A0 */ addi r28, r3, lbl_8056A0A0@l -/* 803C9694 003C65F4 54 1E E8 FE */ srwi r30, r0, 3 -lbl_803C9698: -/* 803C9698 003C65F8 93 DD 00 34 */ stw r30, 0x34(r29) -/* 803C969C 003C65FC 38 7D 00 24 */ addi r3, r29, 0x24 -/* 803C96A0 003C6600 93 FD 00 30 */ stw r31, 0x30(r29) -/* 803C96A4 003C6604 4B FB AF 21 */ bl OSInitThreadQueue -/* 803C96A8 003C6608 3B 7B 00 01 */ addi r27, r27, 1 -/* 803C96AC 003C660C 93 9D 00 F8 */ stw r28, 0xf8(r29) -/* 803C96B0 003C6610 2C 1B 00 04 */ cmpwi r27, 4 -/* 803C96B4 003C6614 3B BD 01 00 */ addi r29, r29, 0x100 -/* 803C96B8 003C6618 3B 9C 00 40 */ addi r28, r28, 0x40 -/* 803C96BC 003C661C 41 80 FF DC */ blt lbl_803C9698 -/* 803C96C0 003C6620 4B FB 49 A5 */ bl OSInitAlarm -/* 803C96C4 003C6624 4B FA 63 41 */ bl DSPInit -/* 803C96C8 003C6628 38 00 00 00 */ li r0, 0 -/* 803C96CC 003C662C 3C 60 80 3F */ lis r3, lbl_803F7160@ha -/* 803C96D0 003C6630 90 0D B1 58 */ stw r0, lbl_805A9D18@sda21(r13) -/* 803C96D4 003C6634 38 63 71 60 */ addi r3, r3, lbl_803F7160@l -/* 803C96D8 003C6638 4B FB 99 55 */ bl OSRegisterResetFunction -/* 803C96DC 003C663C BB 61 00 0C */ lmw r27, 0xc(r1) -/* 803C96E0 003C6640 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803C96E4 003C6644 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C96E8 003C6648 7C 08 03 A6 */ mtlr r0 -/* 803C96EC 003C664C 4E 80 00 20 */ blr - -.global GBAGetStatusAsync -GBAGetStatusAsync: -/* 803C96F0 003C6650 7C 08 02 A6 */ mflr r0 -/* 803C96F4 003C6654 3C C0 80 57 */ lis r6, lbl_8056A1A0@ha -/* 803C96F8 003C6658 90 01 00 04 */ stw r0, 4(r1) -/* 803C96FC 003C665C 54 67 40 2E */ slwi r7, r3, 8 -/* 803C9700 003C6660 38 06 A1 A0 */ addi r0, r6, lbl_8056A1A0@l -/* 803C9704 003C6664 94 21 FF F8 */ stwu r1, -8(r1) -/* 803C9708 003C6668 7C E0 3A 14 */ add r7, r0, r7 -/* 803C970C 003C666C 80 07 00 1C */ lwz r0, 0x1c(r7) -/* 803C9710 003C6670 28 00 00 00 */ cmplwi r0, 0 -/* 803C9714 003C6674 41 82 00 0C */ beq lbl_803C9720 -/* 803C9718 003C6678 38 60 00 02 */ li r3, 2 -/* 803C971C 003C667C 48 00 00 28 */ b lbl_803C9744 -lbl_803C9720: -/* 803C9720 003C6680 38 00 00 00 */ li r0, 0 -/* 803C9724 003C6684 98 07 00 00 */ stb r0, 0(r7) -/* 803C9728 003C6688 3C C0 80 3D */ lis r6, ShortCommandProc@ha -/* 803C972C 003C668C 38 C6 95 F8 */ addi r6, r6, ShortCommandProc@l -/* 803C9730 003C6690 90 87 00 14 */ stw r4, 0x14(r7) -/* 803C9734 003C6694 38 80 00 01 */ li r4, 1 -/* 803C9738 003C6698 90 A7 00 1C */ stw r5, 0x1c(r7) -/* 803C973C 003C669C 38 A0 00 03 */ li r5, 3 -/* 803C9740 003C66A0 48 00 17 69 */ bl __GBATransfer -lbl_803C9744: -/* 803C9744 003C66A4 80 01 00 0C */ lwz r0, 0xc(r1) -/* 803C9748 003C66A8 38 21 00 08 */ addi r1, r1, 8 -/* 803C974C 003C66AC 7C 08 03 A6 */ mtlr r0 -/* 803C9750 003C66B0 4E 80 00 20 */ blr - -.global GBAGetStatus -GBAGetStatus: -/* 803C9754 003C66B4 7C 08 02 A6 */ mflr r0 -/* 803C9758 003C66B8 90 01 00 04 */ stw r0, 4(r1) -/* 803C975C 003C66BC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C9760 003C66C0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803C9764 003C66C4 3B E3 00 00 */ addi r31, r3, 0 -/* 803C9768 003C66C8 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C976C 003C66CC 57 E5 40 2E */ slwi r5, r31, 8 -/* 803C9770 003C66D0 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9774 003C66D4 7C E0 2A 14 */ add r7, r0, r5 -/* 803C9778 003C66D8 80 07 00 1C */ lwz r0, 0x1c(r7) -/* 803C977C 003C66DC 28 00 00 00 */ cmplwi r0, 0 -/* 803C9780 003C66E0 41 82 00 0C */ beq lbl_803C978C -/* 803C9784 003C66E4 38 60 00 02 */ li r3, 2 -/* 803C9788 003C66E8 48 00 00 34 */ b lbl_803C97BC -lbl_803C978C: -/* 803C978C 003C66EC 38 00 00 00 */ li r0, 0 -/* 803C9790 003C66F0 98 07 00 00 */ stb r0, 0(r7) -/* 803C9794 003C66F4 3C A0 80 3D */ lis r5, __GBASyncCallback@ha -/* 803C9798 003C66F8 38 05 AC E4 */ addi r0, r5, __GBASyncCallback@l -/* 803C979C 003C66FC 90 87 00 14 */ stw r4, 0x14(r7) -/* 803C97A0 003C6700 3C 60 80 3D */ lis r3, ShortCommandProc@ha -/* 803C97A4 003C6704 38 C3 95 F8 */ addi r6, r3, ShortCommandProc@l -/* 803C97A8 003C6708 90 07 00 1C */ stw r0, 0x1c(r7) -/* 803C97AC 003C670C 38 7F 00 00 */ addi r3, r31, 0 -/* 803C97B0 003C6710 38 80 00 01 */ li r4, 1 -/* 803C97B4 003C6714 38 A0 00 03 */ li r5, 3 -/* 803C97B8 003C6718 48 00 16 F1 */ bl __GBATransfer -lbl_803C97BC: -/* 803C97BC 003C671C 2C 03 00 00 */ cmpwi r3, 0 -/* 803C97C0 003C6720 41 82 00 08 */ beq lbl_803C97C8 -/* 803C97C4 003C6724 48 00 00 0C */ b lbl_803C97D0 -lbl_803C97C8: -/* 803C97C8 003C6728 7F E3 FB 78 */ mr r3, r31 -/* 803C97CC 003C672C 48 00 15 4D */ bl __GBASync -lbl_803C97D0: -/* 803C97D0 003C6730 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803C97D4 003C6734 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803C97D8 003C6738 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C97DC 003C673C 7C 08 03 A6 */ mtlr r0 -/* 803C97E0 003C6740 4E 80 00 20 */ blr - -.global GBAResetAsync -GBAResetAsync: -/* 803C97E4 003C6744 7C 08 02 A6 */ mflr r0 -/* 803C97E8 003C6748 3C C0 80 57 */ lis r6, lbl_8056A1A0@ha -/* 803C97EC 003C674C 90 01 00 04 */ stw r0, 4(r1) -/* 803C97F0 003C6750 54 67 40 2E */ slwi r7, r3, 8 -/* 803C97F4 003C6754 38 06 A1 A0 */ addi r0, r6, lbl_8056A1A0@l -/* 803C97F8 003C6758 94 21 FF F8 */ stwu r1, -8(r1) -/* 803C97FC 003C675C 7C E0 3A 14 */ add r7, r0, r7 -/* 803C9800 003C6760 80 07 00 1C */ lwz r0, 0x1c(r7) -/* 803C9804 003C6764 28 00 00 00 */ cmplwi r0, 0 -/* 803C9808 003C6768 41 82 00 0C */ beq lbl_803C9814 -/* 803C980C 003C676C 38 60 00 02 */ li r3, 2 -/* 803C9810 003C6770 48 00 00 28 */ b lbl_803C9838 -lbl_803C9814: -/* 803C9814 003C6774 38 00 00 FF */ li r0, 0xff -/* 803C9818 003C6778 98 07 00 00 */ stb r0, 0(r7) -/* 803C981C 003C677C 3C C0 80 3D */ lis r6, ShortCommandProc@ha -/* 803C9820 003C6780 38 C6 95 F8 */ addi r6, r6, ShortCommandProc@l -/* 803C9824 003C6784 90 87 00 14 */ stw r4, 0x14(r7) -/* 803C9828 003C6788 38 80 00 01 */ li r4, 1 -/* 803C982C 003C678C 90 A7 00 1C */ stw r5, 0x1c(r7) -/* 803C9830 003C6790 38 A0 00 03 */ li r5, 3 -/* 803C9834 003C6794 48 00 16 75 */ bl __GBATransfer -lbl_803C9838: -/* 803C9838 003C6798 80 01 00 0C */ lwz r0, 0xc(r1) -/* 803C983C 003C679C 38 21 00 08 */ addi r1, r1, 8 -/* 803C9840 003C67A0 7C 08 03 A6 */ mtlr r0 -/* 803C9844 003C67A4 4E 80 00 20 */ blr - -.global GBAReset -GBAReset: -/* 803C9848 003C67A8 7C 08 02 A6 */ mflr r0 -/* 803C984C 003C67AC 90 01 00 04 */ stw r0, 4(r1) -/* 803C9850 003C67B0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C9854 003C67B4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803C9858 003C67B8 3B E3 00 00 */ addi r31, r3, 0 -/* 803C985C 003C67BC 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C9860 003C67C0 57 E5 40 2E */ slwi r5, r31, 8 -/* 803C9864 003C67C4 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9868 003C67C8 7C E0 2A 14 */ add r7, r0, r5 -/* 803C986C 003C67CC 80 07 00 1C */ lwz r0, 0x1c(r7) -/* 803C9870 003C67D0 28 00 00 00 */ cmplwi r0, 0 -/* 803C9874 003C67D4 41 82 00 0C */ beq lbl_803C9880 -/* 803C9878 003C67D8 38 60 00 02 */ li r3, 2 -/* 803C987C 003C67DC 48 00 00 34 */ b lbl_803C98B0 -lbl_803C9880: -/* 803C9880 003C67E0 38 00 00 FF */ li r0, 0xff -/* 803C9884 003C67E4 98 07 00 00 */ stb r0, 0(r7) -/* 803C9888 003C67E8 3C A0 80 3D */ lis r5, __GBASyncCallback@ha -/* 803C988C 003C67EC 38 05 AC E4 */ addi r0, r5, __GBASyncCallback@l -/* 803C9890 003C67F0 90 87 00 14 */ stw r4, 0x14(r7) -/* 803C9894 003C67F4 3C 60 80 3D */ lis r3, ShortCommandProc@ha -/* 803C9898 003C67F8 38 C3 95 F8 */ addi r6, r3, ShortCommandProc@l -/* 803C989C 003C67FC 90 07 00 1C */ stw r0, 0x1c(r7) -/* 803C98A0 003C6800 38 7F 00 00 */ addi r3, r31, 0 -/* 803C98A4 003C6804 38 80 00 01 */ li r4, 1 -/* 803C98A8 003C6808 38 A0 00 03 */ li r5, 3 -/* 803C98AC 003C680C 48 00 15 FD */ bl __GBATransfer -lbl_803C98B0: -/* 803C98B0 003C6810 2C 03 00 00 */ cmpwi r3, 0 -/* 803C98B4 003C6814 41 82 00 08 */ beq lbl_803C98BC -/* 803C98B8 003C6818 48 00 00 0C */ b lbl_803C98C4 -lbl_803C98BC: -/* 803C98BC 003C681C 7F E3 FB 78 */ mr r3, r31 -/* 803C98C0 003C6820 48 00 14 59 */ bl __GBASync -lbl_803C98C4: -/* 803C98C4 003C6824 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803C98C8 003C6828 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803C98CC 003C682C 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C98D0 003C6830 7C 08 03 A6 */ mtlr r0 -/* 803C98D4 003C6834 4E 80 00 20 */ blr - -.global OnReset_0 -OnReset_0: -/* 803C98D8 003C6838 38 00 00 01 */ li r0, 1 -/* 803C98DC 003C683C 90 0D B1 58 */ stw r0, lbl_805A9D18@sda21(r13) -/* 803C98E0 003C6840 38 60 00 01 */ li r3, 1 -/* 803C98E4 003C6844 4E 80 00 20 */ blr - -.global GBAGetProcessStatus -GBAGetProcessStatus: -/* 803C98E8 003C6848 7C 08 02 A6 */ mflr r0 -/* 803C98EC 003C684C 3C A0 80 57 */ lis r5, lbl_8056A1A0@ha -/* 803C98F0 003C6850 90 01 00 04 */ stw r0, 4(r1) -/* 803C98F4 003C6854 54 63 40 2E */ slwi r3, r3, 8 -/* 803C98F8 003C6858 38 05 A1 A0 */ addi r0, r5, lbl_8056A1A0@l -/* 803C98FC 003C685C 94 21 FF C8 */ stwu r1, -0x38(r1) -/* 803C9900 003C6860 BE E1 00 14 */ stmw r23, 0x14(r1) -/* 803C9904 003C6864 7E E0 1A 14 */ add r23, r0, r3 -/* 803C9908 003C6868 3B 04 00 00 */ addi r24, r4, 0 -/* 803C990C 003C686C 3B F7 00 40 */ addi r31, r23, 0x40 -/* 803C9910 003C6870 4B FB 7D 51 */ bl OSDisableInterrupts -/* 803C9914 003C6874 80 1F 00 14 */ lwz r0, 0x14(r31) -/* 803C9918 003C6878 3B A3 00 00 */ addi r29, r3, 0 -/* 803C991C 003C687C 28 00 00 00 */ cmplwi r0, 0 -/* 803C9920 003C6880 41 82 01 04 */ beq lbl_803C9A24 -/* 803C9924 003C6884 80 7F 00 34 */ lwz r3, 0x34(r31) -/* 803C9928 003C6888 3B C0 00 00 */ li r30, 0 -/* 803C992C 003C688C 80 1F 00 28 */ lwz r0, 0x28(r31) -/* 803C9930 003C6890 3B 80 00 02 */ li r28, 2 -/* 803C9934 003C6894 1C A3 00 64 */ mulli r5, r3, 0x64 -/* 803C9938 003C6898 80 9F 00 64 */ lwz r4, 0x64(r31) -/* 803C993C 003C689C 80 7F 00 2C */ lwz r3, 0x2c(r31) -/* 803C9940 003C68A0 7C 85 23 D6 */ divw r4, r5, r4 -/* 803C9944 003C68A4 7C 63 F2 78 */ xor r3, r3, r30 -/* 803C9948 003C68A8 7C 00 F2 78 */ xor r0, r0, r30 -/* 803C994C 003C68AC 7C 60 03 79 */ or. r0, r3, r0 -/* 803C9950 003C68B0 54 9B 06 3E */ clrlwi r27, r4, 0x18 -/* 803C9954 003C68B4 41 82 00 C0 */ beq lbl_803C9A14 -/* 803C9958 003C68B8 4B FB BA 51 */ bl OSGetTime -/* 803C995C 003C68BC 3E E0 80 00 */ lis r23, 0x800000F8@ha -/* 803C9960 003C68C0 80 DF 00 2C */ lwz r6, 0x2c(r31) -/* 803C9964 003C68C4 80 17 00 F8 */ lwz r0, 0x800000F8@l(r23) -/* 803C9968 003C68C8 3C A0 10 62 */ lis r5, 0x10624DD3@ha -/* 803C996C 003C68CC 7F 26 20 10 */ subfc r25, r6, r4 -/* 803C9970 003C68D0 80 9F 00 28 */ lwz r4, 0x28(r31) -/* 803C9974 003C68D4 3B E5 4D D3 */ addi r31, r5, 0x10624DD3@l -/* 803C9978 003C68D8 54 00 F0 BE */ srwi r0, r0, 2 -/* 803C997C 003C68DC 7C 1F 00 16 */ mulhwu r0, r31, r0 -/* 803C9980 003C68E0 7F 44 19 10 */ subfe r26, r4, r3 -/* 803C9984 003C68E4 54 06 D1 BE */ srwi r6, r0, 6 -/* 803C9988 003C68E8 38 7A 00 00 */ addi r3, r26, 0 -/* 803C998C 003C68EC 38 99 00 00 */ addi r4, r25, 0 -/* 803C9990 003C68F0 38 A0 00 00 */ li r5, 0 -/* 803C9994 003C68F4 4B FC 02 39 */ bl __div2i -/* 803C9998 003C68F8 38 E0 15 7C */ li r7, 0x157c -/* 803C999C 003C68FC 6C 65 80 00 */ xoris r5, r3, 0x8000 -/* 803C99A0 003C6900 6F C3 80 00 */ xoris r3, r30, 0x8000 -/* 803C99A4 003C6904 7C 07 20 10 */ subfc r0, r7, r4 -/* 803C99A8 003C6908 7C 63 29 10 */ subfe r3, r3, r5 -/* 803C99AC 003C690C 7C 65 29 10 */ subfe r3, r5, r5 -/* 803C99B0 003C6910 7C 63 00 D1 */ neg. r3, r3 -/* 803C99B4 003C6914 41 82 00 50 */ beq lbl_803C9A04 -/* 803C99B8 003C6918 80 77 00 F8 */ lwz r3, 0xf8(r23) -/* 803C99BC 003C691C 7C BE 39 D6 */ mullw r5, r30, r7 -/* 803C99C0 003C6920 54 63 F0 BE */ srwi r3, r3, 2 -/* 803C99C4 003C6924 7C 7F 18 16 */ mulhwu r3, r31, r3 -/* 803C99C8 003C6928 54 66 D1 BE */ srwi r6, r3, 6 -/* 803C99CC 003C692C 7C 66 38 16 */ mulhwu r3, r6, r7 -/* 803C99D0 003C6930 7C A5 1A 14 */ add r5, r5, r3 -/* 803C99D4 003C6934 7C 66 F1 D6 */ mullw r3, r6, r30 -/* 803C99D8 003C6938 7F 60 FE 70 */ srawi r0, r27, 0x1f -/* 803C99DC 003C693C 7C A5 1A 14 */ add r5, r5, r3 -/* 803C99E0 003C6940 7C 60 C9 D6 */ mullw r3, r0, r25 -/* 803C99E4 003C6944 7C 1B C8 16 */ mulhwu r0, r27, r25 -/* 803C99E8 003C6948 7C 63 02 14 */ add r3, r3, r0 -/* 803C99EC 003C694C 7C 1B D1 D6 */ mullw r0, r27, r26 -/* 803C99F0 003C6950 7C 9B C9 D6 */ mullw r4, r27, r25 -/* 803C99F4 003C6954 7C C6 39 D6 */ mullw r6, r6, r7 -/* 803C99F8 003C6958 7C 63 02 14 */ add r3, r3, r0 -/* 803C99FC 003C695C 4B FC 01 D1 */ bl __div2i -/* 803C9A00 003C6960 7C 9B 23 78 */ mr r27, r4 -lbl_803C9A04: -/* 803C9A04 003C6964 57 60 06 3E */ clrlwi r0, r27, 0x18 -/* 803C9A08 003C6968 28 00 00 64 */ cmplwi r0, 0x64 -/* 803C9A0C 003C696C 41 80 00 08 */ blt lbl_803C9A14 -/* 803C9A10 003C6970 3B 60 00 64 */ li r27, 0x64 -lbl_803C9A14: -/* 803C9A14 003C6974 28 18 00 00 */ cmplwi r24, 0 -/* 803C9A18 003C6978 41 82 00 24 */ beq lbl_803C9A3C -/* 803C9A1C 003C697C 9B 78 00 00 */ stb r27, 0(r24) -/* 803C9A20 003C6980 48 00 00 1C */ b lbl_803C9A3C -lbl_803C9A24: -/* 803C9A24 003C6984 80 17 00 1C */ lwz r0, 0x1c(r23) -/* 803C9A28 003C6988 28 00 00 00 */ cmplwi r0, 0 -/* 803C9A2C 003C698C 41 82 00 0C */ beq lbl_803C9A38 -/* 803C9A30 003C6990 3B 80 00 02 */ li r28, 2 -/* 803C9A34 003C6994 48 00 00 08 */ b lbl_803C9A3C -lbl_803C9A38: -/* 803C9A38 003C6998 3B 80 00 00 */ li r28, 0 -lbl_803C9A3C: -/* 803C9A3C 003C699C 7F A3 EB 78 */ mr r3, r29 -/* 803C9A40 003C69A0 4B FB 7C 49 */ bl OSRestoreInterrupts -/* 803C9A44 003C69A4 7F 83 E3 78 */ mr r3, r28 -/* 803C9A48 003C69A8 BA E1 00 14 */ lmw r23, 0x14(r1) -/* 803C9A4C 003C69AC 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 803C9A50 003C69B0 38 21 00 38 */ addi r1, r1, 0x38 -/* 803C9A54 003C69B4 7C 08 03 A6 */ mtlr r0 -/* 803C9A58 003C69B8 4E 80 00 20 */ blr - -.global GBAJoyBootAsync -GBAJoyBootAsync: -/* 803C9A5C 003C69BC 7C 08 02 A6 */ mflr r0 -/* 803C9A60 003C69C0 90 01 00 04 */ stw r0, 4(r1) -/* 803C9A64 003C69C4 54 60 00 3B */ rlwinm. r0, r3, 0, 0, 0x1d -/* 803C9A68 003C69C8 94 21 FF B8 */ stwu r1, -0x48(r1) -/* 803C9A6C 003C69CC BF 01 00 28 */ stmw r24, 0x28(r1) -/* 803C9A70 003C69D0 3B 03 00 00 */ addi r24, r3, 0 -/* 803C9A74 003C69D4 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C9A78 003C69D8 57 0A 40 2E */ slwi r10, r24, 8 -/* 803C9A7C 003C69DC 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9A80 003C69E0 7C 60 52 14 */ add r3, r0, r10 -/* 803C9A84 003C69E4 3B 24 00 00 */ addi r25, r4, 0 -/* 803C9A88 003C69E8 3B 45 00 00 */ addi r26, r5, 0 -/* 803C9A8C 003C69EC 3B 66 00 00 */ addi r27, r6, 0 -/* 803C9A90 003C69F0 3B 87 00 00 */ addi r28, r7, 0 -/* 803C9A94 003C69F4 3B A8 00 00 */ addi r29, r8, 0 -/* 803C9A98 003C69F8 3B C9 00 00 */ addi r30, r9, 0 -/* 803C9A9C 003C69FC 3B E3 00 40 */ addi r31, r3, 0x40 -/* 803C9AA0 003C6A00 41 82 00 0C */ beq lbl_803C9AAC -/* 803C9AA4 003C6A04 38 60 00 04 */ li r3, 4 -/* 803C9AA8 003C6A08 48 00 00 DC */ b lbl_803C9B84 -lbl_803C9AAC: -/* 803C9AAC 003C6A0C 2C 1C 00 00 */ cmpwi r28, 0 -/* 803C9AB0 003C6A10 41 82 00 10 */ beq lbl_803C9AC0 -/* 803C9AB4 003C6A14 3C 00 00 04 */ lis r0, 4 -/* 803C9AB8 003C6A18 7C 00 E0 00 */ cmpw r0, r28 -/* 803C9ABC 003C6A1C 40 80 00 0C */ bge lbl_803C9AC8 -lbl_803C9AC0: -/* 803C9AC0 003C6A20 38 60 00 04 */ li r3, 4 -/* 803C9AC4 003C6A24 48 00 00 C0 */ b lbl_803C9B84 -lbl_803C9AC8: -/* 803C9AC8 003C6A28 2C 1A FF FC */ cmpwi r26, -4 -/* 803C9ACC 003C6A2C 41 80 00 0C */ blt lbl_803C9AD8 -/* 803C9AD0 003C6A30 2C 1A 00 04 */ cmpwi r26, 4 -/* 803C9AD4 003C6A34 40 81 00 0C */ ble lbl_803C9AE0 -lbl_803C9AD8: -/* 803C9AD8 003C6A38 38 60 00 04 */ li r3, 4 -/* 803C9ADC 003C6A3C 48 00 00 A8 */ b lbl_803C9B84 -lbl_803C9AE0: -/* 803C9AE0 003C6A40 2C 19 00 00 */ cmpwi r25, 0 -/* 803C9AE4 003C6A44 41 80 00 0C */ blt lbl_803C9AF0 -/* 803C9AE8 003C6A48 2C 19 00 06 */ cmpwi r25, 6 -/* 803C9AEC 003C6A4C 40 81 00 0C */ ble lbl_803C9AF8 -lbl_803C9AF0: -/* 803C9AF0 003C6A50 38 60 00 04 */ li r3, 4 -/* 803C9AF4 003C6A54 48 00 00 90 */ b lbl_803C9B84 -lbl_803C9AF8: -/* 803C9AF8 003C6A58 88 7B 00 AC */ lbz r3, 0xac(r27) -/* 803C9AFC 003C6A5C 88 1B 00 AD */ lbz r0, 0xad(r27) -/* 803C9B00 003C6A60 88 9B 00 AE */ lbz r4, 0xae(r27) -/* 803C9B04 003C6A64 7C 03 01 D6 */ mullw r0, r3, r0 -/* 803C9B08 003C6A68 88 7B 00 AF */ lbz r3, 0xaf(r27) -/* 803C9B0C 003C6A6C 7C 04 01 D6 */ mullw r0, r4, r0 -/* 803C9B10 003C6A70 7C 03 01 D7 */ mullw. r0, r3, r0 -/* 803C9B14 003C6A74 40 82 00 0C */ bne lbl_803C9B20 -/* 803C9B18 003C6A78 38 60 00 04 */ li r3, 4 -/* 803C9B1C 003C6A7C 48 00 00 68 */ b lbl_803C9B84 -lbl_803C9B20: -/* 803C9B20 003C6A80 38 78 00 00 */ addi r3, r24, 0 -/* 803C9B24 003C6A84 38 81 00 24 */ addi r4, r1, 0x24 -/* 803C9B28 003C6A88 4B FF FD C1 */ bl GBAGetProcessStatus -/* 803C9B2C 003C6A8C 2C 03 00 00 */ cmpwi r3, 0 -/* 803C9B30 003C6A90 41 82 00 08 */ beq lbl_803C9B38 -/* 803C9B34 003C6A94 48 00 00 50 */ b lbl_803C9B84 -lbl_803C9B38: -/* 803C9B38 003C6A98 93 3F 00 00 */ stw r25, 0(r31) -/* 803C9B3C 003C6A9C 3C 80 80 3F */ lis r4, lbl_803F7170@ha -/* 803C9B40 003C6AA0 3C 60 80 3D */ lis r3, _F23@ha -/* 803C9B44 003C6AA4 93 5F 00 04 */ stw r26, 4(r31) -/* 803C9B48 003C6AA8 38 A3 9B 98 */ addi r5, r3, _F23@l -/* 803C9B4C 003C6AAC 38 84 71 70 */ addi r4, r4, lbl_803F7170@l -/* 803C9B50 003C6AB0 93 7F 00 08 */ stw r27, 8(r31) -/* 803C9B54 003C6AB4 7F 03 C3 78 */ mr r3, r24 -/* 803C9B58 003C6AB8 93 9F 00 0C */ stw r28, 0xc(r31) -/* 803C9B5C 003C6ABC 93 BF 00 10 */ stw r29, 0x10(r31) -/* 803C9B60 003C6AC0 93 DF 00 14 */ stw r30, 0x14(r31) -/* 803C9B64 003C6AC4 88 04 00 08 */ lbz r0, 8(r4) -/* 803C9B68 003C6AC8 90 1F 00 34 */ stw r0, 0x34(r31) -/* 803C9B6C 003C6ACC 80 9F 00 10 */ lwz r4, 0x10(r31) -/* 803C9B70 003C6AD0 4B FF FB 81 */ bl GBAGetStatusAsync -/* 803C9B74 003C6AD4 2C 03 00 00 */ cmpwi r3, 0 -/* 803C9B78 003C6AD8 41 82 00 0C */ beq lbl_803C9B84 -/* 803C9B7C 003C6ADC 38 00 00 00 */ li r0, 0 -/* 803C9B80 003C6AE0 90 1F 00 14 */ stw r0, 0x14(r31) -lbl_803C9B84: -/* 803C9B84 003C6AE4 BB 01 00 28 */ lmw r24, 0x28(r1) -/* 803C9B88 003C6AE8 80 01 00 4C */ lwz r0, 0x4c(r1) -/* 803C9B8C 003C6AEC 38 21 00 48 */ addi r1, r1, 0x48 -/* 803C9B90 003C6AF0 7C 08 03 A6 */ mtlr r0 -/* 803C9B94 003C6AF4 4E 80 00 20 */ blr - -.global _F23 -_F23: -/* 803C9B98 003C6AF8 7C 08 02 A6 */ mflr r0 -/* 803C9B9C 003C6AFC 90 01 00 04 */ stw r0, 4(r1) -/* 803C9BA0 003C6B00 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803C9BA4 003C6B04 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803C9BA8 003C6B08 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803C9BAC 003C6B0C 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803C9BB0 003C6B10 7C 9D 23 79 */ or. r29, r4, r4 -/* 803C9BB4 003C6B14 93 81 00 18 */ stw r28, 0x18(r1) -/* 803C9BB8 003C6B18 3B 83 00 00 */ addi r28, r3, 0 -/* 803C9BBC 003C6B1C 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C9BC0 003C6B20 57 84 40 2E */ slwi r4, r28, 8 -/* 803C9BC4 003C6B24 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9BC8 003C6B28 7F E0 22 14 */ add r31, r0, r4 -/* 803C9BCC 003C6B2C 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803C9BD0 003C6B30 40 82 00 20 */ bne lbl_803C9BF0 -/* 803C9BD4 003C6B34 3C 60 80 3D */ lis r3, _F25@ha -/* 803C9BD8 003C6B38 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803C9BDC 003C6B3C 38 A3 9C 40 */ addi r5, r3, _F25@l -/* 803C9BE0 003C6B40 38 7C 00 00 */ addi r3, r28, 0 -/* 803C9BE4 003C6B44 4B FF FC 01 */ bl GBAResetAsync -/* 803C9BE8 003C6B48 7C 7D 1B 79 */ or. r29, r3, r3 -/* 803C9BEC 003C6B4C 41 82 00 30 */ beq lbl_803C9C1C -lbl_803C9BF0: -/* 803C9BF0 003C6B50 38 00 00 00 */ li r0, 0 -/* 803C9BF4 003C6B54 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803C9BF8 003C6B58 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803C9BFC 003C6B5C 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803C9C00 003C6B60 28 0C 00 00 */ cmplwi r12, 0 -/* 803C9C04 003C6B64 41 82 00 18 */ beq lbl_803C9C1C -/* 803C9C08 003C6B68 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803C9C0C 003C6B6C 7D 88 03 A6 */ mtlr r12 -/* 803C9C10 003C6B70 38 7C 00 00 */ addi r3, r28, 0 -/* 803C9C14 003C6B74 38 9D 00 00 */ addi r4, r29, 0 -/* 803C9C18 003C6B78 4E 80 00 21 */ blrl -lbl_803C9C1C: -/* 803C9C1C 003C6B7C 93 BF 00 20 */ stw r29, 0x20(r31) -/* 803C9C20 003C6B80 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803C9C24 003C6B84 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803C9C28 003C6B88 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803C9C2C 003C6B8C 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803C9C30 003C6B90 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803C9C34 003C6B94 38 21 00 28 */ addi r1, r1, 0x28 -/* 803C9C38 003C6B98 7C 08 03 A6 */ mtlr r0 -/* 803C9C3C 003C6B9C 4E 80 00 20 */ blr - -.global _F25 -_F25: -/* 803C9C40 003C6BA0 7C 08 02 A6 */ mflr r0 -/* 803C9C44 003C6BA4 90 01 00 04 */ stw r0, 4(r1) -/* 803C9C48 003C6BA8 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803C9C4C 003C6BAC 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803C9C50 003C6BB0 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803C9C54 003C6BB4 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803C9C58 003C6BB8 7C 9D 23 79 */ or. r29, r4, r4 -/* 803C9C5C 003C6BBC 93 81 00 18 */ stw r28, 0x18(r1) -/* 803C9C60 003C6BC0 3B 83 00 00 */ addi r28, r3, 0 -/* 803C9C64 003C6BC4 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C9C68 003C6BC8 57 84 40 2E */ slwi r4, r28, 8 -/* 803C9C6C 003C6BCC 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9C70 003C6BD0 7F E0 22 14 */ add r31, r0, r4 -/* 803C9C74 003C6BD4 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803C9C78 003C6BD8 40 82 00 24 */ bne lbl_803C9C9C -/* 803C9C7C 003C6BDC 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803C9C80 003C6BE0 3C 60 80 3F */ lis r3, lbl_803F7170@ha -/* 803C9C84 003C6BE4 38 63 71 70 */ addi r3, r3, lbl_803F7170@l -/* 803C9C88 003C6BE8 88 84 00 00 */ lbz r4, 0(r4) -/* 803C9C8C 003C6BEC 88 03 00 25 */ lbz r0, 0x25(r3) -/* 803C9C90 003C6BF0 7C 04 00 40 */ cmplw r4, r0 -/* 803C9C94 003C6BF4 41 82 00 08 */ beq lbl_803C9C9C -/* 803C9C98 003C6BF8 3B A0 00 03 */ li r29, 3 -lbl_803C9C9C: -/* 803C9C9C 003C6BFC 2C 1D 00 00 */ cmpwi r29, 0 -/* 803C9CA0 003C6C00 40 82 00 20 */ bne lbl_803C9CC0 -/* 803C9CA4 003C6C04 3C 60 80 3D */ lis r3, _F27@ha -/* 803C9CA8 003C6C08 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803C9CAC 003C6C0C 38 A3 9D 10 */ addi r5, r3, _F27@l -/* 803C9CB0 003C6C10 38 7C 00 00 */ addi r3, r28, 0 -/* 803C9CB4 003C6C14 4B FF FA 3D */ bl GBAGetStatusAsync -/* 803C9CB8 003C6C18 7C 7D 1B 79 */ or. r29, r3, r3 -/* 803C9CBC 003C6C1C 41 82 00 30 */ beq lbl_803C9CEC -lbl_803C9CC0: -/* 803C9CC0 003C6C20 38 00 00 00 */ li r0, 0 -/* 803C9CC4 003C6C24 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803C9CC8 003C6C28 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803C9CCC 003C6C2C 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803C9CD0 003C6C30 28 0C 00 00 */ cmplwi r12, 0 -/* 803C9CD4 003C6C34 41 82 00 18 */ beq lbl_803C9CEC -/* 803C9CD8 003C6C38 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803C9CDC 003C6C3C 7D 88 03 A6 */ mtlr r12 -/* 803C9CE0 003C6C40 38 7C 00 00 */ addi r3, r28, 0 -/* 803C9CE4 003C6C44 38 9D 00 00 */ addi r4, r29, 0 -/* 803C9CE8 003C6C48 4E 80 00 21 */ blrl -lbl_803C9CEC: -/* 803C9CEC 003C6C4C 93 BF 00 20 */ stw r29, 0x20(r31) -/* 803C9CF0 003C6C50 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803C9CF4 003C6C54 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803C9CF8 003C6C58 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803C9CFC 003C6C5C 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803C9D00 003C6C60 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803C9D04 003C6C64 38 21 00 28 */ addi r1, r1, 0x28 -/* 803C9D08 003C6C68 7C 08 03 A6 */ mtlr r0 -/* 803C9D0C 003C6C6C 4E 80 00 20 */ blr - -.global _F27 -_F27: -/* 803C9D10 003C6C70 7C 08 02 A6 */ mflr r0 -/* 803C9D14 003C6C74 90 01 00 04 */ stw r0, 4(r1) -/* 803C9D18 003C6C78 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803C9D1C 003C6C7C 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803C9D20 003C6C80 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803C9D24 003C6C84 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803C9D28 003C6C88 7C 9D 23 79 */ or. r29, r4, r4 -/* 803C9D2C 003C6C8C 93 81 00 18 */ stw r28, 0x18(r1) -/* 803C9D30 003C6C90 3B 83 00 00 */ addi r28, r3, 0 -/* 803C9D34 003C6C94 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C9D38 003C6C98 57 84 40 2E */ slwi r4, r28, 8 -/* 803C9D3C 003C6C9C 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9D40 003C6CA0 7F E0 22 14 */ add r31, r0, r4 -/* 803C9D44 003C6CA4 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803C9D48 003C6CA8 40 82 00 20 */ bne lbl_803C9D68 -/* 803C9D4C 003C6CAC 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803C9D50 003C6CB0 3C 60 80 3F */ lis r3, lbl_803F7170@ha -/* 803C9D54 003C6CB4 88 03 71 70 */ lbz r0, lbl_803F7170@l(r3) -/* 803C9D58 003C6CB8 88 84 00 00 */ lbz r4, 0(r4) -/* 803C9D5C 003C6CBC 7C 04 00 40 */ cmplw r4, r0 -/* 803C9D60 003C6CC0 41 82 00 08 */ beq lbl_803C9D68 -/* 803C9D64 003C6CC4 3B A0 00 03 */ li r29, 3 -lbl_803C9D68: -/* 803C9D68 003C6CC8 2C 1D 00 00 */ cmpwi r29, 0 -/* 803C9D6C 003C6CCC 40 82 00 24 */ bne lbl_803C9D90 -/* 803C9D70 003C6CD0 3C 60 80 3D */ lis r3, _F29@ha -/* 803C9D74 003C6CD4 80 BE 00 10 */ lwz r5, 0x10(r30) -/* 803C9D78 003C6CD8 38 C3 9D E0 */ addi r6, r3, _F29@l -/* 803C9D7C 003C6CDC 38 7C 00 00 */ addi r3, r28, 0 -/* 803C9D80 003C6CE0 38 9E 00 18 */ addi r4, r30, 0x18 -/* 803C9D84 003C6CE4 48 00 0B FD */ bl GBAReadAsync -/* 803C9D88 003C6CE8 7C 7D 1B 79 */ or. r29, r3, r3 -/* 803C9D8C 003C6CEC 41 82 00 30 */ beq lbl_803C9DBC -lbl_803C9D90: -/* 803C9D90 003C6CF0 38 00 00 00 */ li r0, 0 -/* 803C9D94 003C6CF4 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803C9D98 003C6CF8 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803C9D9C 003C6CFC 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803C9DA0 003C6D00 28 0C 00 00 */ cmplwi r12, 0 -/* 803C9DA4 003C6D04 41 82 00 18 */ beq lbl_803C9DBC -/* 803C9DA8 003C6D08 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803C9DAC 003C6D0C 7D 88 03 A6 */ mtlr r12 -/* 803C9DB0 003C6D10 38 7C 00 00 */ addi r3, r28, 0 -/* 803C9DB4 003C6D14 38 9D 00 00 */ addi r4, r29, 0 -/* 803C9DB8 003C6D18 4E 80 00 21 */ blrl -lbl_803C9DBC: -/* 803C9DBC 003C6D1C 93 BF 00 20 */ stw r29, 0x20(r31) -/* 803C9DC0 003C6D20 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803C9DC4 003C6D24 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803C9DC8 003C6D28 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803C9DCC 003C6D2C 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803C9DD0 003C6D30 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803C9DD4 003C6D34 38 21 00 28 */ addi r1, r1, 0x28 -/* 803C9DD8 003C6D38 7C 08 03 A6 */ mtlr r0 -/* 803C9DDC 003C6D3C 4E 80 00 20 */ blr - -.global _F29 -_F29: -/* 803C9DE0 003C6D40 7C 08 02 A6 */ mflr r0 -/* 803C9DE4 003C6D44 54 65 40 2E */ slwi r5, r3, 8 -/* 803C9DE8 003C6D48 90 01 00 04 */ stw r0, 4(r1) -/* 803C9DEC 003C6D4C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803C9DF0 003C6D50 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803C9DF4 003C6D54 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803C9DF8 003C6D58 7C 9E 23 79 */ or. r30, r4, r4 -/* 803C9DFC 003C6D5C 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803C9E00 003C6D60 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803C9E04 003C6D64 7F E0 2A 14 */ add r31, r0, r5 -/* 803C9E08 003C6D68 38 9F 00 40 */ addi r4, r31, 0x40 -/* 803C9E0C 003C6D6C 40 82 00 10 */ bne lbl_803C9E1C -/* 803C9E10 003C6D70 38 84 00 18 */ addi r4, r4, 0x18 -/* 803C9E14 003C6D74 48 00 12 B1 */ bl __GBAX02 -/* 803C9E18 003C6D78 48 00 00 2C */ b lbl_803C9E44 -lbl_803C9E1C: -/* 803C9E1C 003C6D7C 38 00 00 00 */ li r0, 0 -/* 803C9E20 003C6D80 90 04 00 2C */ stw r0, 0x2c(r4) -/* 803C9E24 003C6D84 90 04 00 28 */ stw r0, 0x28(r4) -/* 803C9E28 003C6D88 81 84 00 14 */ lwz r12, 0x14(r4) -/* 803C9E2C 003C6D8C 28 0C 00 00 */ cmplwi r12, 0 -/* 803C9E30 003C6D90 41 82 00 14 */ beq lbl_803C9E44 -/* 803C9E34 003C6D94 90 04 00 14 */ stw r0, 0x14(r4) -/* 803C9E38 003C6D98 7D 88 03 A6 */ mtlr r12 -/* 803C9E3C 003C6D9C 38 9E 00 00 */ addi r4, r30, 0 -/* 803C9E40 003C6DA0 4E 80 00 21 */ blrl -lbl_803C9E44: -/* 803C9E44 003C6DA4 93 DF 00 20 */ stw r30, 0x20(r31) -/* 803C9E48 003C6DA8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803C9E4C 003C6DAC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803C9E50 003C6DB0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 803C9E54 003C6DB4 38 21 00 20 */ addi r1, r1, 0x20 -/* 803C9E58 003C6DB8 7C 08 03 A6 */ mtlr r0 -/* 803C9E5C 003C6DBC 4E 80 00 20 */ blr - -.global __GBAX01 -__GBAX01: -/* 803C9E60 003C6DC0 7C 08 02 A6 */ mflr r0 -/* 803C9E64 003C6DC4 3C A0 80 3F */ lis r5, lbl_803F7170@ha -/* 803C9E68 003C6DC8 90 01 00 04 */ stw r0, 4(r1) -/* 803C9E6C 003C6DCC 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803C9E70 003C6DD0 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803C9E74 003C6DD4 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803C9E78 003C6DD8 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803C9E7C 003C6DDC 3B A3 00 00 */ addi r29, r3, 0 -/* 803C9E80 003C6DE0 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803C9E84 003C6DE4 93 81 00 18 */ stw r28, 0x18(r1) -/* 803C9E88 003C6DE8 7C 9C 23 79 */ or. r28, r4, r4 -/* 803C9E8C 003C6DEC 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803C9E90 003C6DF0 57 A4 40 2E */ slwi r4, r29, 8 -/* 803C9E94 003C6DF4 7F E0 22 14 */ add r31, r0, r4 -/* 803C9E98 003C6DF8 38 65 71 70 */ addi r3, r5, lbl_803F7170@l -/* 803C9E9C 003C6DFC 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803C9EA0 003C6E00 40 82 01 44 */ bne lbl_803C9FE4 -/* 803C9EA4 003C6E04 80 9F 00 F8 */ lwz r4, 0xf8(r31) -/* 803C9EA8 003C6E08 80 04 00 20 */ lwz r0, 0x20(r4) -/* 803C9EAC 003C6E0C 90 1E 00 58 */ stw r0, 0x58(r30) -/* 803C9EB0 003C6E10 80 9F 00 F8 */ lwz r4, 0xf8(r31) -/* 803C9EB4 003C6E14 80 04 00 24 */ lwz r0, 0x24(r4) -/* 803C9EB8 003C6E18 90 1E 00 5C */ stw r0, 0x5c(r30) -/* 803C9EBC 003C6E1C 88 1E 00 1B */ lbz r0, 0x1b(r30) -/* 803C9EC0 003C6E20 28 00 00 00 */ cmplwi r0, 0 -/* 803C9EC4 003C6E24 41 82 00 44 */ beq lbl_803C9F08 -/* 803C9EC8 003C6E28 88 1E 00 1A */ lbz r0, 0x1a(r30) -/* 803C9ECC 003C6E2C 28 00 00 00 */ cmplwi r0, 0 -/* 803C9ED0 003C6E30 41 82 00 38 */ beq lbl_803C9F08 -/* 803C9ED4 003C6E34 88 03 00 05 */ lbz r0, 5(r3) -/* 803C9ED8 003C6E38 80 9E 00 58 */ lwz r4, 0x58(r30) -/* 803C9EDC 003C6E3C 54 00 48 2C */ slwi r0, r0, 9 -/* 803C9EE0 003C6E40 7C 80 00 39 */ and. r0, r4, r0 -/* 803C9EE4 003C6E44 41 82 00 24 */ beq lbl_803C9F08 -/* 803C9EE8 003C6E48 88 1E 00 19 */ lbz r0, 0x19(r30) -/* 803C9EEC 003C6E4C 28 00 00 00 */ cmplwi r0, 0 -/* 803C9EF0 003C6E50 41 82 00 18 */ beq lbl_803C9F08 -/* 803C9EF4 003C6E54 54 80 8B FF */ rlwinm. r0, r4, 0x11, 0xf, 0x1f -/* 803C9EF8 003C6E58 41 82 00 10 */ beq lbl_803C9F08 -/* 803C9EFC 003C6E5C 88 1E 00 18 */ lbz r0, 0x18(r30) -/* 803C9F00 003C6E60 28 00 00 00 */ cmplwi r0, 0 -/* 803C9F04 003C6E64 40 82 00 0C */ bne lbl_803C9F10 -lbl_803C9F08: -/* 803C9F08 003C6E68 3B 80 00 03 */ li r28, 3 -/* 803C9F0C 003C6E6C 48 00 00 D8 */ b lbl_803C9FE4 -lbl_803C9F10: -/* 803C9F10 003C6E70 88 A3 00 24 */ lbz r5, 0x24(r3) -/* 803C9F14 003C6E74 80 9E 00 0C */ lwz r4, 0xc(r30) -/* 803C9F18 003C6E78 88 03 00 24 */ lbz r0, 0x24(r3) -/* 803C9F1C 003C6E7C 7C A5 28 F8 */ nor r5, r5, r5 -/* 803C9F20 003C6E80 7C 04 02 14 */ add r0, r4, r0 -/* 803C9F24 003C6E84 7C A0 00 38 */ and r0, r5, r0 -/* 803C9F28 003C6E88 90 1E 00 20 */ stw r0, 0x20(r30) -/* 803C9F2C 003C6E8C 88 A3 00 14 */ lbz r5, 0x14(r3) -/* 803C9F30 003C6E90 88 83 00 21 */ lbz r4, 0x21(r3) -/* 803C9F34 003C6E94 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 803C9F38 003C6E98 7C A4 20 30 */ slw r4, r5, r4 -/* 803C9F3C 003C6E9C 7C 00 20 00 */ cmpw r0, r4 -/* 803C9F40 003C6EA0 40 80 00 08 */ bge lbl_803C9F48 -/* 803C9F44 003C6EA4 90 9E 00 20 */ stw r4, 0x20(r30) -lbl_803C9F48: -/* 803C9F48 003C6EA8 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 803C9F4C 003C6EAC 90 1E 00 64 */ stw r0, 0x64(r30) -/* 803C9F50 003C6EB0 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 803C9F54 003C6EB4 7C 04 00 50 */ subf r0, r4, r0 -/* 803C9F58 003C6EB8 90 1E 00 20 */ stw r0, 0x20(r30) -/* 803C9F5C 003C6EBC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 803C9F60 003C6EC0 88 03 00 20 */ lbz r0, 0x20(r3) -/* 803C9F64 003C6EC4 7C 80 06 30 */ sraw r0, r4, r0 -/* 803C9F68 003C6EC8 90 1E 00 20 */ stw r0, 0x20(r30) -/* 803C9F6C 003C6ECC 80 1E 00 5C */ lwz r0, 0x5c(r30) -/* 803C9F70 003C6ED0 98 1E 00 1C */ stb r0, 0x1c(r30) -/* 803C9F74 003C6ED4 80 1E 00 5C */ lwz r0, 0x5c(r30) -/* 803C9F78 003C6ED8 7C 00 46 70 */ srawi r0, r0, 8 -/* 803C9F7C 003C6EDC 98 1E 00 1D */ stb r0, 0x1d(r30) -/* 803C9F80 003C6EE0 80 1E 00 5C */ lwz r0, 0x5c(r30) -/* 803C9F84 003C6EE4 7C 00 C6 70 */ srawi r0, r0, 0x18 -/* 803C9F88 003C6EE8 98 1E 00 1F */ stb r0, 0x1f(r30) -/* 803C9F8C 003C6EEC 80 1E 00 5C */ lwz r0, 0x5c(r30) -/* 803C9F90 003C6EF0 7C 00 86 70 */ srawi r0, r0, 0x10 -/* 803C9F94 003C6EF4 98 1E 00 1E */ stb r0, 0x1e(r30) -/* 803C9F98 003C6EF8 88 83 00 26 */ lbz r4, 0x26(r3) -/* 803C9F9C 003C6EFC 88 03 00 22 */ lbz r0, 0x22(r3) -/* 803C9FA0 003C6F00 38 84 00 01 */ addi r4, r4, 1 -/* 803C9FA4 003C6F04 7C 80 00 30 */ slw r0, r4, r0 -/* 803C9FA8 003C6F08 90 1E 00 38 */ stw r0, 0x38(r30) -/* 803C9FAC 003C6F0C 88 03 00 08 */ lbz r0, 8(r3) -/* 803C9FB0 003C6F10 90 1E 00 34 */ stw r0, 0x34(r30) -/* 803C9FB4 003C6F14 4B FB B3 F5 */ bl OSGetTime -/* 803C9FB8 003C6F18 90 9E 00 2C */ stw r4, 0x2c(r30) -/* 803C9FBC 003C6F1C 3C 80 80 3D */ lis r4, _F31@ha -/* 803C9FC0 003C6F20 38 C4 A0 3C */ addi r6, r4, _F31@l -/* 803C9FC4 003C6F24 90 7E 00 28 */ stw r3, 0x28(r30) -/* 803C9FC8 003C6F28 38 00 00 01 */ li r0, 1 -/* 803C9FCC 003C6F2C 38 7D 00 00 */ addi r3, r29, 0 -/* 803C9FD0 003C6F30 90 1E 00 30 */ stw r0, 0x30(r30) -/* 803C9FD4 003C6F34 38 9E 00 1C */ addi r4, r30, 0x1c -/* 803C9FD8 003C6F38 80 BE 00 10 */ lwz r5, 0x10(r30) -/* 803C9FDC 003C6F3C 48 00 0A D5 */ bl GBAWriteAsync -/* 803C9FE0 003C6F40 7C 7C 1B 78 */ mr r28, r3 -lbl_803C9FE4: -/* 803C9FE4 003C6F44 2C 1C 00 00 */ cmpwi r28, 0 -/* 803C9FE8 003C6F48 41 82 00 30 */ beq lbl_803CA018 -/* 803C9FEC 003C6F4C 38 00 00 00 */ li r0, 0 -/* 803C9FF0 003C6F50 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803C9FF4 003C6F54 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803C9FF8 003C6F58 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803C9FFC 003C6F5C 28 0C 00 00 */ cmplwi r12, 0 -/* 803CA000 003C6F60 41 82 00 18 */ beq lbl_803CA018 -/* 803CA004 003C6F64 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803CA008 003C6F68 7D 88 03 A6 */ mtlr r12 -/* 803CA00C 003C6F6C 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA010 003C6F70 38 9C 00 00 */ addi r4, r28, 0 -/* 803CA014 003C6F74 4E 80 00 21 */ blrl -lbl_803CA018: -/* 803CA018 003C6F78 93 9F 00 20 */ stw r28, 0x20(r31) -/* 803CA01C 003C6F7C 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803CA020 003C6F80 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803CA024 003C6F84 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803CA028 003C6F88 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803CA02C 003C6F8C 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803CA030 003C6F90 38 21 00 28 */ addi r1, r1, 0x28 -/* 803CA034 003C6F94 7C 08 03 A6 */ mtlr r0 -/* 803CA038 003C6F98 4E 80 00 20 */ blr - -.global _F31 -_F31: -/* 803CA03C 003C6F9C 7C 08 02 A6 */ mflr r0 -/* 803CA040 003C6FA0 3C A0 80 3F */ lis r5, lbl_803F7170@ha -/* 803CA044 003C6FA4 90 01 00 04 */ stw r0, 4(r1) -/* 803CA048 003C6FA8 94 21 FF C8 */ stwu r1, -0x38(r1) -/* 803CA04C 003C6FAC 93 E1 00 34 */ stw r31, 0x34(r1) -/* 803CA050 003C6FB0 93 C1 00 30 */ stw r30, 0x30(r1) -/* 803CA054 003C6FB4 93 A1 00 2C */ stw r29, 0x2c(r1) -/* 803CA058 003C6FB8 3B A3 00 00 */ addi r29, r3, 0 -/* 803CA05C 003C6FBC 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CA060 003C6FC0 93 81 00 28 */ stw r28, 0x28(r1) -/* 803CA064 003C6FC4 7C 9C 23 79 */ or. r28, r4, r4 -/* 803CA068 003C6FC8 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CA06C 003C6FCC 57 A4 40 2E */ slwi r4, r29, 8 -/* 803CA070 003C6FD0 7F E0 22 14 */ add r31, r0, r4 -/* 803CA074 003C6FD4 38 65 71 70 */ addi r3, r5, lbl_803F7170@l -/* 803CA078 003C6FD8 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803CA07C 003C6FDC 40 82 04 00 */ bne lbl_803CA47C -/* 803CA080 003C6FE0 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 803CA084 003C6FE4 2C 00 00 00 */ cmpwi r0, 0 -/* 803CA088 003C6FE8 41 82 00 10 */ beq lbl_803CA098 -/* 803CA08C 003C6FEC 38 00 00 00 */ li r0, 0 -/* 803CA090 003C6FF0 90 1E 00 30 */ stw r0, 0x30(r30) -/* 803CA094 003C6FF4 48 00 00 60 */ b lbl_803CA0F4 -lbl_803CA098: -/* 803CA098 003C6FF8 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803CA09C 003C6FFC 88 03 00 14 */ lbz r0, 0x14(r3) -/* 803CA0A0 003C7000 88 A4 00 00 */ lbz r5, 0(r4) -/* 803CA0A4 003C7004 7C A0 00 39 */ and. r0, r5, r0 -/* 803CA0A8 003C7008 41 82 00 30 */ beq lbl_803CA0D8 -/* 803CA0AC 003C700C 88 83 00 2A */ lbz r4, 0x2a(r3) -/* 803CA0B0 003C7010 88 03 00 21 */ lbz r0, 0x21(r3) -/* 803CA0B4 003C7014 7C A6 20 38 */ and r6, r5, r4 -/* 803CA0B8 003C7018 80 BE 00 34 */ lwz r5, 0x34(r30) -/* 803CA0BC 003C701C 88 83 00 21 */ lbz r4, 0x21(r3) -/* 803CA0C0 003C7020 7C C6 06 30 */ sraw r6, r6, r0 -/* 803CA0C4 003C7024 88 03 00 1F */ lbz r0, 0x1f(r3) -/* 803CA0C8 003C7028 7C A4 20 38 */ and r4, r5, r4 -/* 803CA0CC 003C702C 7C 80 06 30 */ sraw r0, r4, r0 -/* 803CA0D0 003C7030 7C 06 00 00 */ cmpw r6, r0 -/* 803CA0D4 003C7034 41 82 00 0C */ beq lbl_803CA0E0 -lbl_803CA0D8: -/* 803CA0D8 003C7038 3B 80 00 03 */ li r28, 3 -/* 803CA0DC 003C703C 48 00 03 A0 */ b lbl_803CA47C -lbl_803CA0E0: -/* 803CA0E0 003C7040 88 83 00 17 */ lbz r4, 0x17(r3) -/* 803CA0E4 003C7044 88 03 00 19 */ lbz r0, 0x19(r3) -/* 803CA0E8 003C7048 7C 04 00 50 */ subf r0, r4, r0 -/* 803CA0EC 003C704C 7C 00 28 50 */ subf r0, r0, r5 -/* 803CA0F0 003C7050 90 1E 00 34 */ stw r0, 0x34(r30) -lbl_803CA0F4: -/* 803CA0F4 003C7054 80 BE 00 34 */ lwz r5, 0x34(r30) -/* 803CA0F8 003C7058 80 1E 00 64 */ lwz r0, 0x64(r30) -/* 803CA0FC 003C705C 7C 05 00 00 */ cmpw r5, r0 -/* 803CA100 003C7060 41 81 03 58 */ bgt lbl_803CA458 -/* 803CA104 003C7064 40 80 01 68 */ bge lbl_803CA26C -/* 803CA108 003C7068 38 83 00 1D */ addi r4, r3, 0x1d -/* 803CA10C 003C706C 88 03 00 1D */ lbz r0, 0x1d(r3) -/* 803CA110 003C7070 88 84 00 00 */ lbz r4, 0(r4) -/* 803CA114 003C7074 90 9E 00 20 */ stw r4, 0x20(r30) -/* 803CA118 003C7078 48 00 00 48 */ b lbl_803CA160 -lbl_803CA11C: -/* 803CA11C 003C707C 80 9E 00 0C */ lwz r4, 0xc(r30) -/* 803CA120 003C7080 2C 04 00 00 */ cmpwi r4, 0 -/* 803CA124 003C7084 41 82 00 30 */ beq lbl_803CA154 -/* 803CA128 003C7088 80 DE 00 08 */ lwz r6, 8(r30) -/* 803CA12C 003C708C 38 86 00 01 */ addi r4, r6, 1 -/* 803CA130 003C7090 90 9E 00 08 */ stw r4, 8(r30) -/* 803CA134 003C7094 88 A3 00 25 */ lbz r5, 0x25(r3) -/* 803CA138 003C7098 80 9E 00 0C */ lwz r4, 0xc(r30) -/* 803CA13C 003C709C 7C A7 29 D6 */ mullw r5, r7, r5 -/* 803CA140 003C70A0 88 C6 00 00 */ lbz r6, 0(r6) -/* 803CA144 003C70A4 38 84 FF FF */ addi r4, r4, -1 -/* 803CA148 003C70A8 7C C5 28 30 */ slw r5, r6, r5 -/* 803CA14C 003C70AC 90 9E 00 0C */ stw r4, 0xc(r30) -/* 803CA150 003C70B0 7C 00 2B 78 */ or r0, r0, r5 -lbl_803CA154: -/* 803CA154 003C70B4 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 803CA158 003C70B8 38 84 00 01 */ addi r4, r4, 1 -/* 803CA15C 003C70BC 90 9E 00 20 */ stw r4, 0x20(r30) -lbl_803CA160: -/* 803CA160 003C70C0 80 FE 00 20 */ lwz r7, 0x20(r30) -/* 803CA164 003C70C4 88 83 00 21 */ lbz r4, 0x21(r3) -/* 803CA168 003C70C8 7C 07 20 00 */ cmpw r7, r4 -/* 803CA16C 003C70CC 41 80 FF B0 */ blt lbl_803CA11C -/* 803CA170 003C70D0 38 C3 00 26 */ addi r6, r3, 0x26 -/* 803CA174 003C70D4 80 BE 00 34 */ lwz r5, 0x34(r30) -/* 803CA178 003C70D8 88 83 00 26 */ lbz r4, 0x26(r3) -/* 803CA17C 003C70DC 7C 05 20 00 */ cmpw r5, r4 -/* 803CA180 003C70E0 40 82 00 0C */ bne lbl_803CA18C -/* 803CA184 003C70E4 90 1E 00 60 */ stw r0, 0x60(r30) -/* 803CA188 003C70E8 48 00 00 18 */ b lbl_803CA1A0 -lbl_803CA18C: -/* 803CA18C 003C70EC 88 83 00 27 */ lbz r4, 0x27(r3) -/* 803CA190 003C70F0 7C 05 20 00 */ cmpw r5, r4 -/* 803CA194 003C70F4 40 82 00 0C */ bne lbl_803CA1A0 -/* 803CA198 003C70F8 88 03 00 25 */ lbz r0, 0x25(r3) -/* 803CA19C 003C70FC 7F A0 00 30 */ slw r0, r29, r0 -lbl_803CA1A0: -/* 803CA1A0 003C7100 80 BE 00 34 */ lwz r5, 0x34(r30) -/* 803CA1A4 003C7104 88 83 00 02 */ lbz r4, 2(r3) -/* 803CA1A8 003C7108 7C 05 20 00 */ cmpw r5, r4 -/* 803CA1AC 003C710C 41 80 00 78 */ blt lbl_803CA224 -/* 803CA1B0 003C7110 38 83 00 2B */ addi r4, r3, 0x2b -/* 803CA1B4 003C7114 88 C6 00 00 */ lbz r6, 0(r6) -/* 803CA1B8 003C7118 88 A3 00 2B */ lbz r5, 0x2b(r3) -/* 803CA1BC 003C711C 7C 09 03 78 */ mr r9, r0 -/* 803CA1C0 003C7120 88 84 00 00 */ lbz r4, 0(r4) -/* 803CA1C4 003C7124 54 C7 40 2E */ slwi r7, r6, 8 -/* 803CA1C8 003C7128 54 A5 20 36 */ slwi r5, r5, 4 -/* 803CA1CC 003C712C 88 C3 00 28 */ lbz r6, 0x28(r3) -/* 803CA1D0 003C7130 7C 85 20 50 */ subf r4, r5, r4 -/* 803CA1D4 003C7134 88 A3 00 23 */ lbz r5, 0x23(r3) -/* 803CA1D8 003C7138 7C 86 22 14 */ add r4, r6, r4 -/* 803CA1DC 003C713C 81 1E 00 38 */ lwz r8, 0x38(r30) -/* 803CA1E0 003C7140 7C 85 20 50 */ subf r4, r5, r4 -/* 803CA1E4 003C7144 88 C3 00 14 */ lbz r6, 0x14(r3) -/* 803CA1E8 003C7148 7C A7 22 14 */ add r5, r7, r4 -/* 803CA1EC 003C714C 48 00 00 28 */ b lbl_803CA214 -lbl_803CA1F0: -/* 803CA1F0 003C7150 7D 24 42 78 */ xor r4, r9, r8 -/* 803CA1F4 003C7154 54 84 07 FF */ clrlwi. r4, r4, 0x1f -/* 803CA1F8 003C7158 41 82 00 10 */ beq lbl_803CA208 -/* 803CA1FC 003C715C 55 08 F8 7E */ srwi r8, r8, 1 -/* 803CA200 003C7160 7D 08 2A 78 */ xor r8, r8, r5 -/* 803CA204 003C7164 48 00 00 08 */ b lbl_803CA20C -lbl_803CA208: -/* 803CA208 003C7168 55 08 F8 7E */ srwi r8, r8, 1 -lbl_803CA20C: -/* 803CA20C 003C716C 55 29 F8 7E */ srwi r9, r9, 1 -/* 803CA210 003C7170 38 C6 FF FF */ addi r6, r6, -1 -lbl_803CA214: -/* 803CA214 003C7174 88 83 00 1E */ lbz r4, 0x1e(r3) -/* 803CA218 003C7178 7C 06 20 00 */ cmpw r6, r4 -/* 803CA21C 003C717C 41 81 FF D4 */ bgt lbl_803CA1F0 -/* 803CA220 003C7180 91 1E 00 38 */ stw r8, 0x38(r30) -lbl_803CA224: -/* 803CA224 003C7184 88 83 00 28 */ lbz r4, 0x28(r3) -/* 803CA228 003C7188 80 BE 00 34 */ lwz r5, 0x34(r30) -/* 803CA22C 003C718C 38 84 01 00 */ addi r4, r4, 0x100 -/* 803CA230 003C7190 7C 05 20 00 */ cmpw r5, r4 -/* 803CA234 003C7194 40 82 00 0C */ bne lbl_803CA240 -/* 803CA238 003C7198 90 1E 00 3C */ stw r0, 0x3c(r30) -/* 803CA23C 003C719C 48 00 00 3C */ b lbl_803CA278 -lbl_803CA240: -/* 803CA240 003C71A0 88 83 00 01 */ lbz r4, 1(r3) -/* 803CA244 003C71A4 38 84 01 00 */ addi r4, r4, 0x100 -/* 803CA248 003C71A8 7C 05 20 00 */ cmpw r5, r4 -/* 803CA24C 003C71AC 40 82 00 2C */ bne lbl_803CA278 -/* 803CA250 003C71B0 88 83 00 07 */ lbz r4, 7(r3) -/* 803CA254 003C71B4 90 9E 00 20 */ stw r4, 0x20(r30) -/* 803CA258 003C71B8 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 803CA25C 003C71BC 54 84 10 3A */ slwi r4, r4, 2 -/* 803CA260 003C71C0 7C 9E 22 14 */ add r4, r30, r4 -/* 803CA264 003C71C4 90 04 00 3C */ stw r0, 0x3c(r4) -/* 803CA268 003C71C8 48 00 00 10 */ b lbl_803CA278 -lbl_803CA26C: -/* 803CA26C 003C71CC 80 9E 00 38 */ lwz r4, 0x38(r30) -/* 803CA270 003C71D0 54 A0 80 1E */ slwi r0, r5, 0x10 -/* 803CA274 003C71D4 7C 80 03 78 */ or r0, r4, r0 -lbl_803CA278: -/* 803CA278 003C71D8 80 BE 00 34 */ lwz r5, 0x34(r30) -/* 803CA27C 003C71DC 88 83 00 2B */ lbz r4, 0x2b(r3) -/* 803CA280 003C71E0 7C 05 20 00 */ cmpw r5, r4 -/* 803CA284 003C71E4 40 81 00 98 */ ble lbl_803CA31C -/* 803CA288 003C71E8 88 A3 00 25 */ lbz r5, 0x25(r3) -/* 803CA28C 003C71EC 38 83 00 0B */ addi r4, r3, 0xb -/* 803CA290 003C71F0 88 C3 00 18 */ lbz r6, 0x18(r3) -/* 803CA294 003C71F4 89 03 00 15 */ lbz r8, 0x15(r3) -/* 803CA298 003C71F8 7C C7 28 30 */ slw r7, r6, r5 -/* 803CA29C 003C71FC 88 C3 00 18 */ lbz r6, 0x18(r3) -/* 803CA2A0 003C7200 88 A3 00 2C */ lbz r5, 0x2c(r3) -/* 803CA2A4 003C7204 7D 07 3B 78 */ or r7, r8, r7 -/* 803CA2A8 003C7208 89 23 00 17 */ lbz r9, 0x17(r3) -/* 803CA2AC 003C720C 7C C5 28 30 */ slw r5, r6, r5 -/* 803CA2B0 003C7210 89 03 00 2A */ lbz r8, 0x2a(r3) -/* 803CA2B4 003C7214 7C E5 2B 78 */ or r5, r7, r5 -/* 803CA2B8 003C7218 81 5E 00 58 */ lwz r10, 0x58(r30) -/* 803CA2BC 003C721C 7D 26 40 30 */ slw r6, r9, r8 -/* 803CA2C0 003C7220 88 E3 00 1A */ lbz r7, 0x1a(r3) -/* 803CA2C4 003C7224 7C C5 2B 78 */ or r5, r6, r5 -/* 803CA2C8 003C7228 88 C3 00 1B */ lbz r6, 0x1b(r3) -/* 803CA2CC 003C722C 7C AA 29 D6 */ mullw r5, r10, r5 -/* 803CA2D0 003C7230 7C C7 30 50 */ subf r6, r7, r6 -/* 803CA2D4 003C7234 7C A6 28 50 */ subf r5, r6, r5 -/* 803CA2D8 003C7238 90 BE 00 58 */ stw r5, 0x58(r30) -/* 803CA2DC 003C723C 88 E3 00 0B */ lbz r7, 0xb(r3) -/* 803CA2E0 003C7240 81 3E 00 58 */ lwz r9, 0x58(r30) -/* 803CA2E4 003C7244 81 1E 00 34 */ lwz r8, 0x34(r30) -/* 803CA2E8 003C7248 54 E7 A0 16 */ slwi r7, r7, 0x14 -/* 803CA2EC 003C724C 88 A3 00 0B */ lbz r5, 0xb(r3) -/* 803CA2F0 003C7250 7C 00 4A 78 */ xor r0, r0, r9 -/* 803CA2F4 003C7254 7D 08 3A 14 */ add r8, r8, r7 -/* 803CA2F8 003C7258 88 84 00 00 */ lbz r4, 0(r4) -/* 803CA2FC 003C725C 50 A4 C0 0E */ rlwimi r4, r5, 0x18, 0, 7 -/* 803CA300 003C7260 88 C3 00 13 */ lbz r6, 0x13(r3) -/* 803CA304 003C7264 7C A8 00 D0 */ neg r5, r8 -/* 803CA308 003C7268 88 E3 00 12 */ lbz r7, 0x12(r3) -/* 803CA30C 003C726C 50 C4 82 1E */ rlwimi r4, r6, 0x10, 8, 0xf -/* 803CA310 003C7270 7C 00 2A 78 */ xor r0, r0, r5 -/* 803CA314 003C7274 50 E4 44 2E */ rlwimi r4, r7, 8, 0x10, 0x17 -/* 803CA318 003C7278 7C 00 22 78 */ xor r0, r0, r4 -lbl_803CA31C: -/* 803CA31C 003C727C 88 83 00 00 */ lbz r4, 0(r3) -/* 803CA320 003C7280 7C 04 24 30 */ srw r4, r0, r4 -/* 803CA324 003C7284 98 9E 00 1F */ stb r4, 0x1f(r30) -/* 803CA328 003C7288 88 83 00 1E */ lbz r4, 0x1e(r3) -/* 803CA32C 003C728C 7C 04 24 30 */ srw r4, r0, r4 -/* 803CA330 003C7290 98 9E 00 1C */ stb r4, 0x1c(r30) -/* 803CA334 003C7294 88 83 00 29 */ lbz r4, 0x29(r3) -/* 803CA338 003C7298 7C 04 24 30 */ srw r4, r0, r4 -/* 803CA33C 003C729C 98 9E 00 1D */ stb r4, 0x1d(r30) -/* 803CA340 003C72A0 88 83 00 2A */ lbz r4, 0x2a(r3) -/* 803CA344 003C72A4 7C 04 24 30 */ srw r4, r0, r4 -/* 803CA348 003C72A8 98 9E 00 1E */ stb r4, 0x1e(r30) -/* 803CA34C 003C72AC 88 A3 00 01 */ lbz r5, 1(r3) -/* 803CA350 003C72B0 88 83 00 01 */ lbz r4, 1(r3) -/* 803CA354 003C72B4 80 DE 00 34 */ lwz r6, 0x34(r30) -/* 803CA358 003C72B8 7C 85 22 14 */ add r4, r5, r4 -/* 803CA35C 003C72BC 7C 06 20 00 */ cmpw r6, r4 -/* 803CA360 003C72C0 40 82 00 08 */ bne lbl_803CA368 -/* 803CA364 003C72C4 90 1E 00 44 */ stw r0, 0x44(r30) -lbl_803CA368: -/* 803CA368 003C72C8 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 803CA36C 003C72CC 88 63 00 21 */ lbz r3, 0x21(r3) -/* 803CA370 003C72D0 7C 04 18 00 */ cmpw r4, r3 -/* 803CA374 003C72D4 40 80 00 C4 */ bge lbl_803CA438 -/* 803CA378 003C72D8 20 64 00 01 */ subfic r3, r4, 1 -/* 803CA37C 003C72DC 20 63 00 03 */ subfic r3, r3, 3 -/* 803CA380 003C72E0 54 63 10 3A */ slwi r3, r3, 2 -/* 803CA384 003C72E4 7C 7E 1A 14 */ add r3, r30, r3 -/* 803CA388 003C72E8 90 03 00 3C */ stw r0, 0x3c(r3) -/* 803CA38C 003C72EC 80 BE 00 20 */ lwz r5, 0x20(r30) -/* 803CA390 003C72F0 20 05 00 01 */ subfic r0, r5, 1 -/* 803CA394 003C72F4 20 60 00 02 */ subfic r3, r0, 2 -/* 803CA398 003C72F8 20 05 00 04 */ subfic r0, r5, 4 -/* 803CA39C 003C72FC 54 63 10 3A */ slwi r3, r3, 2 -/* 803CA3A0 003C7300 54 00 10 3A */ slwi r0, r0, 2 -/* 803CA3A4 003C7304 7C 9E 1A 14 */ add r4, r30, r3 -/* 803CA3A8 003C7308 7C 7E 02 14 */ add r3, r30, r0 -/* 803CA3AC 003C730C 80 84 00 3C */ lwz r4, 0x3c(r4) -/* 803CA3B0 003C7310 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 803CA3B4 003C7314 20 05 00 05 */ subfic r0, r5, 5 -/* 803CA3B8 003C7318 54 00 10 3A */ slwi r0, r0, 2 -/* 803CA3BC 003C731C 7C 84 19 D6 */ mullw r4, r4, r3 -/* 803CA3C0 003C7320 7C 7E 02 14 */ add r3, r30, r0 -/* 803CA3C4 003C7324 90 83 00 3C */ stw r4, 0x3c(r3) -/* 803CA3C8 003C7328 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 803CA3CC 003C732C 20 A0 00 01 */ subfic r5, r0, 1 -/* 803CA3D0 003C7330 54 A3 10 3A */ slwi r3, r5, 2 -/* 803CA3D4 003C7334 54 00 10 3A */ slwi r0, r0, 2 -/* 803CA3D8 003C7338 7C 9E 1A 14 */ add r4, r30, r3 -/* 803CA3DC 003C733C 7C 7E 02 14 */ add r3, r30, r0 -/* 803CA3E0 003C7340 80 84 00 3C */ lwz r4, 0x3c(r4) -/* 803CA3E4 003C7344 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 803CA3E8 003C7348 20 05 00 05 */ subfic r0, r5, 5 -/* 803CA3EC 003C734C 54 00 10 3A */ slwi r0, r0, 2 -/* 803CA3F0 003C7350 7C 84 19 D6 */ mullw r4, r4, r3 -/* 803CA3F4 003C7354 7C 7E 02 14 */ add r3, r30, r0 -/* 803CA3F8 003C7358 90 83 00 3C */ stw r4, 0x3c(r3) -/* 803CA3FC 003C735C 80 BE 00 20 */ lwz r5, 0x20(r30) -/* 803CA400 003C7360 20 65 00 01 */ subfic r3, r5, 1 -/* 803CA404 003C7364 20 05 00 04 */ subfic r0, r5, 4 -/* 803CA408 003C7368 7C 63 00 D0 */ neg r3, r3 -/* 803CA40C 003C736C 54 63 10 3A */ slwi r3, r3, 2 -/* 803CA410 003C7370 54 00 10 3A */ slwi r0, r0, 2 -/* 803CA414 003C7374 7C 9E 1A 14 */ add r4, r30, r3 -/* 803CA418 003C7378 7C 7E 02 14 */ add r3, r30, r0 -/* 803CA41C 003C737C 80 84 00 3C */ lwz r4, 0x3c(r4) -/* 803CA420 003C7380 80 63 00 3C */ lwz r3, 0x3c(r3) -/* 803CA424 003C7384 20 05 00 07 */ subfic r0, r5, 7 -/* 803CA428 003C7388 54 00 10 3A */ slwi r0, r0, 2 -/* 803CA42C 003C738C 7C 84 19 D6 */ mullw r4, r4, r3 -/* 803CA430 003C7390 7C 7E 02 14 */ add r3, r30, r0 -/* 803CA434 003C7394 90 83 00 3C */ stw r4, 0x3c(r3) -lbl_803CA438: -/* 803CA438 003C7398 3C 60 80 3D */ lis r3, _F31@ha -/* 803CA43C 003C739C 80 BE 00 10 */ lwz r5, 0x10(r30) -/* 803CA440 003C73A0 38 C3 A0 3C */ addi r6, r3, _F31@l -/* 803CA444 003C73A4 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA448 003C73A8 38 9E 00 1C */ addi r4, r30, 0x1c -/* 803CA44C 003C73AC 48 00 06 65 */ bl GBAWriteAsync -/* 803CA450 003C73B0 7C 7C 1B 78 */ mr r28, r3 -/* 803CA454 003C73B4 48 00 00 28 */ b lbl_803CA47C -lbl_803CA458: -/* 803CA458 003C73B8 4B FB AF 69 */ bl OSGetTick -/* 803CA45C 003C73BC 90 7E 00 24 */ stw r3, 0x24(r30) -/* 803CA460 003C73C0 3C 60 80 3D */ lis r3, _F33@ha -/* 803CA464 003C73C4 38 C3 A4 D4 */ addi r6, r3, _F33@l -/* 803CA468 003C73C8 80 BE 00 10 */ lwz r5, 0x10(r30) -/* 803CA46C 003C73CC 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA470 003C73D0 38 9E 00 18 */ addi r4, r30, 0x18 -/* 803CA474 003C73D4 48 00 05 0D */ bl GBAReadAsync -/* 803CA478 003C73D8 7C 7C 1B 78 */ mr r28, r3 -lbl_803CA47C: -/* 803CA47C 003C73DC 2C 1C 00 00 */ cmpwi r28, 0 -/* 803CA480 003C73E0 41 82 00 30 */ beq lbl_803CA4B0 -/* 803CA484 003C73E4 38 00 00 00 */ li r0, 0 -/* 803CA488 003C73E8 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803CA48C 003C73EC 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803CA490 003C73F0 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803CA494 003C73F4 28 0C 00 00 */ cmplwi r12, 0 -/* 803CA498 003C73F8 41 82 00 18 */ beq lbl_803CA4B0 -/* 803CA49C 003C73FC 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803CA4A0 003C7400 7D 88 03 A6 */ mtlr r12 -/* 803CA4A4 003C7404 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA4A8 003C7408 38 9C 00 00 */ addi r4, r28, 0 -/* 803CA4AC 003C740C 4E 80 00 21 */ blrl -lbl_803CA4B0: -/* 803CA4B0 003C7410 93 9F 00 20 */ stw r28, 0x20(r31) -/* 803CA4B4 003C7414 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 803CA4B8 003C7418 83 E1 00 34 */ lwz r31, 0x34(r1) -/* 803CA4BC 003C741C 83 C1 00 30 */ lwz r30, 0x30(r1) -/* 803CA4C0 003C7420 83 A1 00 2C */ lwz r29, 0x2c(r1) -/* 803CA4C4 003C7424 83 81 00 28 */ lwz r28, 0x28(r1) -/* 803CA4C8 003C7428 38 21 00 38 */ addi r1, r1, 0x38 -/* 803CA4CC 003C742C 7C 08 03 A6 */ mtlr r0 -/* 803CA4D0 003C7430 4E 80 00 20 */ blr - -.global _F33 -_F33: -/* 803CA4D4 003C7434 7C 08 02 A6 */ mflr r0 -/* 803CA4D8 003C7438 90 01 00 04 */ stw r0, 4(r1) -/* 803CA4DC 003C743C 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803CA4E0 003C7440 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803CA4E4 003C7444 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803CA4E8 003C7448 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803CA4EC 003C744C 3B A3 00 00 */ addi r29, r3, 0 -/* 803CA4F0 003C7450 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CA4F4 003C7454 93 81 00 18 */ stw r28, 0x18(r1) -/* 803CA4F8 003C7458 7C 9C 23 79 */ or. r28, r4, r4 -/* 803CA4FC 003C745C 57 A4 40 2E */ slwi r4, r29, 8 -/* 803CA500 003C7460 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CA504 003C7464 7F E0 22 14 */ add r31, r0, r4 -/* 803CA508 003C7468 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803CA50C 003C746C 40 82 00 E4 */ bne lbl_803CA5F0 -/* 803CA510 003C7470 38 00 00 21 */ li r0, 0x21 -/* 803CA514 003C7474 3C 60 80 3F */ lis r3, lbl_803F7170@ha -/* 803CA518 003C7478 90 1E 00 20 */ stw r0, 0x20(r30) -/* 803CA51C 003C747C 38 03 71 70 */ addi r0, r3, lbl_803F7170@l -/* 803CA520 003C7480 48 00 00 94 */ b lbl_803CA5B4 -lbl_803CA524: -/* 803CA524 003C7484 7C E0 1A 14 */ add r7, r0, r3 -/* 803CA528 003C7488 88 DE 00 1B */ lbz r6, 0x1b(r30) -/* 803CA52C 003C748C 88 87 00 00 */ lbz r4, 0(r7) -/* 803CA530 003C7490 88 67 00 00 */ lbz r3, 0(r7) -/* 803CA534 003C7494 88 A7 00 00 */ lbz r5, 0(r7) -/* 803CA538 003C7498 54 84 10 3A */ slwi r4, r4, 2 -/* 803CA53C 003C749C 89 07 00 00 */ lbz r8, 0(r7) -/* 803CA540 003C74A0 54 63 10 3A */ slwi r3, r3, 2 -/* 803CA544 003C74A4 54 A7 10 3A */ slwi r7, r5, 2 -/* 803CA548 003C74A8 38 A4 00 3C */ addi r5, r4, 0x3c -/* 803CA54C 003C74AC 88 9E 00 1A */ lbz r4, 0x1a(r30) -/* 803CA550 003C74B0 38 63 00 3C */ addi r3, r3, 0x3c -/* 803CA554 003C74B4 7C BE 28 2E */ lwzx r5, r30, r5 -/* 803CA558 003C74B8 38 E7 00 3C */ addi r7, r7, 0x3c -/* 803CA55C 003C74BC 7C 7E 18 2E */ lwzx r3, r30, r3 -/* 803CA560 003C74C0 55 08 10 3A */ slwi r8, r8, 2 -/* 803CA564 003C74C4 7C FE 38 2E */ lwzx r7, r30, r7 -/* 803CA568 003C74C8 39 28 00 3C */ addi r9, r8, 0x3c -/* 803CA56C 003C74CC 89 1E 00 19 */ lbz r8, 0x19(r30) -/* 803CA570 003C74D0 54 A5 46 3E */ srwi r5, r5, 0x18 -/* 803CA574 003C74D4 89 5E 00 18 */ lbz r10, 0x18(r30) -/* 803CA578 003C74D8 54 63 84 3E */ srwi r3, r3, 0x10 -/* 803CA57C 003C74DC 7D 3E 48 2E */ lwzx r9, r30, r9 -/* 803CA580 003C74E0 54 E7 C2 3E */ srwi r7, r7, 8 -/* 803CA584 003C74E4 7C 83 1A 78 */ xor r3, r4, r3 -/* 803CA588 003C74E8 7C C5 2A 78 */ xor r5, r6, r5 -/* 803CA58C 003C74EC 7C A3 1B 78 */ or r3, r5, r3 -/* 803CA590 003C74F0 7D 04 3A 78 */ xor r4, r8, r7 -/* 803CA594 003C74F4 7D 45 4A 78 */ xor r5, r10, r9 -/* 803CA598 003C74F8 7C 83 1B 78 */ or r3, r4, r3 -/* 803CA59C 003C74FC 7C A3 1B 78 */ or r3, r5, r3 -/* 803CA5A0 003C7500 54 7C C0 0F */ rlwinm. r28, r3, 0x18, 0, 7 -/* 803CA5A4 003C7504 41 82 00 1C */ beq lbl_803CA5C0 -/* 803CA5A8 003C7508 80 7E 00 20 */ lwz r3, 0x20(r30) -/* 803CA5AC 003C750C 38 63 00 01 */ addi r3, r3, 1 -/* 803CA5B0 003C7510 90 7E 00 20 */ stw r3, 0x20(r30) -lbl_803CA5B4: -/* 803CA5B4 003C7514 80 7E 00 20 */ lwz r3, 0x20(r30) -/* 803CA5B8 003C7518 2C 03 00 24 */ cmpwi r3, 0x24 -/* 803CA5BC 003C751C 41 80 FF 68 */ blt lbl_803CA524 -lbl_803CA5C0: -/* 803CA5C0 003C7520 2C 1C 00 00 */ cmpwi r28, 0 -/* 803CA5C4 003C7524 41 82 00 0C */ beq lbl_803CA5D0 -/* 803CA5C8 003C7528 3B 80 00 03 */ li r28, 3 -/* 803CA5CC 003C752C 48 00 00 24 */ b lbl_803CA5F0 -lbl_803CA5D0: -/* 803CA5D0 003C7530 4B FB AD F1 */ bl OSGetTick -/* 803CA5D4 003C7534 90 7E 00 24 */ stw r3, 0x24(r30) -/* 803CA5D8 003C7538 3C 60 80 3D */ lis r3, _F35@ha -/* 803CA5DC 003C753C 38 A3 A6 48 */ addi r5, r3, _F35@l -/* 803CA5E0 003C7540 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803CA5E4 003C7544 7F A3 EB 78 */ mr r3, r29 -/* 803CA5E8 003C7548 4B FF F1 09 */ bl GBAGetStatusAsync -/* 803CA5EC 003C754C 7C 7C 1B 78 */ mr r28, r3 -lbl_803CA5F0: -/* 803CA5F0 003C7550 2C 1C 00 00 */ cmpwi r28, 0 -/* 803CA5F4 003C7554 41 82 00 30 */ beq lbl_803CA624 -/* 803CA5F8 003C7558 38 00 00 00 */ li r0, 0 -/* 803CA5FC 003C755C 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803CA600 003C7560 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803CA604 003C7564 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803CA608 003C7568 28 0C 00 00 */ cmplwi r12, 0 -/* 803CA60C 003C756C 41 82 00 18 */ beq lbl_803CA624 -/* 803CA610 003C7570 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803CA614 003C7574 7D 88 03 A6 */ mtlr r12 -/* 803CA618 003C7578 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA61C 003C757C 38 9C 00 00 */ addi r4, r28, 0 -/* 803CA620 003C7580 4E 80 00 21 */ blrl -lbl_803CA624: -/* 803CA624 003C7584 93 9F 00 20 */ stw r28, 0x20(r31) -/* 803CA628 003C7588 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803CA62C 003C758C 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803CA630 003C7590 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803CA634 003C7594 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803CA638 003C7598 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803CA63C 003C759C 38 21 00 28 */ addi r1, r1, 0x28 -/* 803CA640 003C75A0 7C 08 03 A6 */ mtlr r0 -/* 803CA644 003C75A4 4E 80 00 20 */ blr - -.global _F35 -_F35: -/* 803CA648 003C75A8 7C 08 02 A6 */ mflr r0 -/* 803CA64C 003C75AC 90 01 00 04 */ stw r0, 4(r1) -/* 803CA650 003C75B0 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803CA654 003C75B4 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803CA658 003C75B8 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803CA65C 003C75BC 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803CA660 003C75C0 3B A3 00 00 */ addi r29, r3, 0 -/* 803CA664 003C75C4 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CA668 003C75C8 93 81 00 18 */ stw r28, 0x18(r1) -/* 803CA66C 003C75CC 7C 9C 23 79 */ or. r28, r4, r4 -/* 803CA670 003C75D0 57 A4 40 2E */ slwi r4, r29, 8 -/* 803CA674 003C75D4 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CA678 003C75D8 7F E0 22 14 */ add r31, r0, r4 -/* 803CA67C 003C75DC 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803CA680 003C75E0 40 82 00 CC */ bne lbl_803CA74C -/* 803CA684 003C75E4 4B FB AD 3D */ bl OSGetTick -/* 803CA688 003C75E8 3F 80 80 00 */ lis r28, 0x800000F8@ha -/* 803CA68C 003C75EC 80 9E 00 24 */ lwz r4, 0x24(r30) -/* 803CA690 003C75F0 80 1C 00 F8 */ lwz r0, 0x800000F8@l(r28) -/* 803CA694 003C75F4 7C 64 18 50 */ subf r3, r4, r3 -/* 803CA698 003C75F8 54 05 F0 BE */ srwi r5, r0, 2 -/* 803CA69C 003C75FC 1C 05 00 0A */ mulli r0, r5, 0xa -/* 803CA6A0 003C7600 7C 00 18 40 */ cmplw r0, r3 -/* 803CA6A4 003C7604 41 81 00 0C */ bgt lbl_803CA6B0 -/* 803CA6A8 003C7608 3B 80 00 03 */ li r28, 3 -/* 803CA6AC 003C760C 48 00 00 A0 */ b lbl_803CA74C -lbl_803CA6B0: -/* 803CA6B0 003C7610 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803CA6B4 003C7614 88 64 00 00 */ lbz r3, 0(r4) -/* 803CA6B8 003C7618 70 60 00 32 */ andi. r0, r3, 0x32 -/* 803CA6BC 003C761C 41 82 00 0C */ beq lbl_803CA6C8 -/* 803CA6C0 003C7620 3B 80 00 03 */ li r28, 3 -/* 803CA6C4 003C7624 48 00 00 88 */ b lbl_803CA74C -lbl_803CA6C8: -/* 803CA6C8 003C7628 28 03 00 08 */ cmplwi r3, 8 -/* 803CA6CC 003C762C 41 82 00 1C */ beq lbl_803CA6E8 -/* 803CA6D0 003C7630 3C 60 80 3D */ lis r3, _F35@ha -/* 803CA6D4 003C7634 38 A3 A6 48 */ addi r5, r3, _F35@l -/* 803CA6D8 003C7638 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA6DC 003C763C 4B FF F0 15 */ bl GBAGetStatusAsync -/* 803CA6E0 003C7640 7C 7C 1B 78 */ mr r28, r3 -/* 803CA6E4 003C7644 48 00 00 68 */ b lbl_803CA74C -lbl_803CA6E8: -/* 803CA6E8 003C7648 3C 60 10 62 */ lis r3, 0x10624DD3@ha -/* 803CA6EC 003C764C 38 03 4D D3 */ addi r0, r3, 0x10624DD3@l -/* 803CA6F0 003C7650 7C 00 28 16 */ mulhwu r0, r0, r5 -/* 803CA6F4 003C7654 54 06 E8 F8 */ rlwinm r6, r0, 0x1d, 3, 0x1c -/* 803CA6F8 003C7658 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA6FC 003C765C 38 A0 00 00 */ li r5, 0 -/* 803CA700 003C7660 48 00 08 1D */ bl __GBASetDelay -/* 803CA704 003C7664 3C 60 80 3D */ lis r3, _F37@ha -/* 803CA708 003C7668 80 BE 00 10 */ lwz r5, 0x10(r30) -/* 803CA70C 003C766C 38 C3 A7 A4 */ addi r6, r3, _F37@l -/* 803CA710 003C7670 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA714 003C7674 38 9E 00 18 */ addi r4, r30, 0x18 -/* 803CA718 003C7678 48 00 02 69 */ bl GBAReadAsync -/* 803CA71C 003C767C 80 1C 00 F8 */ lwz r0, 0xf8(r28) -/* 803CA720 003C7680 3C 80 43 1C */ lis r4, 0x431BDE83@ha -/* 803CA724 003C7684 3B 83 00 00 */ addi r28, r3, 0 -/* 803CA728 003C7688 54 00 F0 BE */ srwi r0, r0, 2 -/* 803CA72C 003C768C 38 84 DE 83 */ addi r4, r4, 0x431BDE83@l -/* 803CA730 003C7690 7C 04 00 16 */ mulhwu r0, r4, r0 -/* 803CA734 003C7694 54 00 8B FE */ srwi r0, r0, 0xf -/* 803CA738 003C7698 1C 00 00 3C */ mulli r0, r0, 0x3c -/* 803CA73C 003C769C 54 06 E8 FE */ srwi r6, r0, 3 -/* 803CA740 003C76A0 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA744 003C76A4 38 A0 00 00 */ li r5, 0 -/* 803CA748 003C76A8 48 00 07 D5 */ bl __GBASetDelay -lbl_803CA74C: -/* 803CA74C 003C76AC 2C 1C 00 00 */ cmpwi r28, 0 -/* 803CA750 003C76B0 41 82 00 30 */ beq lbl_803CA780 -/* 803CA754 003C76B4 38 00 00 00 */ li r0, 0 -/* 803CA758 003C76B8 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803CA75C 003C76BC 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803CA760 003C76C0 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803CA764 003C76C4 28 0C 00 00 */ cmplwi r12, 0 -/* 803CA768 003C76C8 41 82 00 18 */ beq lbl_803CA780 -/* 803CA76C 003C76CC 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803CA770 003C76D0 7D 88 03 A6 */ mtlr r12 -/* 803CA774 003C76D4 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA778 003C76D8 38 9C 00 00 */ addi r4, r28, 0 -/* 803CA77C 003C76DC 4E 80 00 21 */ blrl -lbl_803CA780: -/* 803CA780 003C76E0 93 9F 00 20 */ stw r28, 0x20(r31) -/* 803CA784 003C76E4 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803CA788 003C76E8 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803CA78C 003C76EC 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803CA790 003C76F0 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803CA794 003C76F4 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803CA798 003C76F8 38 21 00 28 */ addi r1, r1, 0x28 -/* 803CA79C 003C76FC 7C 08 03 A6 */ mtlr r0 -/* 803CA7A0 003C7700 4E 80 00 20 */ blr - -.global _F37 -_F37: -/* 803CA7A4 003C7704 7C 08 02 A6 */ mflr r0 -/* 803CA7A8 003C7708 90 01 00 04 */ stw r0, 4(r1) -/* 803CA7AC 003C770C 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803CA7B0 003C7710 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803CA7B4 003C7714 93 C1 00 20 */ stw r30, 0x20(r1) -/* 803CA7B8 003C7718 93 A1 00 1C */ stw r29, 0x1c(r1) -/* 803CA7BC 003C771C 3B A3 00 00 */ addi r29, r3, 0 -/* 803CA7C0 003C7720 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CA7C4 003C7724 93 81 00 18 */ stw r28, 0x18(r1) -/* 803CA7C8 003C7728 7C 9C 23 79 */ or. r28, r4, r4 -/* 803CA7CC 003C772C 57 A4 40 2E */ slwi r4, r29, 8 -/* 803CA7D0 003C7730 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CA7D4 003C7734 7F E0 22 14 */ add r31, r0, r4 -/* 803CA7D8 003C7738 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803CA7DC 003C773C 40 82 00 6C */ bne lbl_803CA848 -/* 803CA7E0 003C7740 81 3E 00 60 */ lwz r9, 0x60(r30) -/* 803CA7E4 003C7744 88 BE 00 1B */ lbz r5, 0x1b(r30) -/* 803CA7E8 003C7748 55 24 46 3E */ srwi r4, r9, 0x18 -/* 803CA7EC 003C774C 88 7E 00 1A */ lbz r3, 0x1a(r30) -/* 803CA7F0 003C7750 55 20 84 3E */ srwi r0, r9, 0x10 -/* 803CA7F4 003C7754 88 FE 00 19 */ lbz r7, 0x19(r30) -/* 803CA7F8 003C7758 89 1E 00 18 */ lbz r8, 0x18(r30) -/* 803CA7FC 003C775C 55 26 C2 3E */ srwi r6, r9, 8 -/* 803CA800 003C7760 7C 60 02 78 */ xor r0, r3, r0 -/* 803CA804 003C7764 7C A4 22 78 */ xor r4, r5, r4 -/* 803CA808 003C7768 7C 80 03 78 */ or r0, r4, r0 -/* 803CA80C 003C776C 7C E3 32 78 */ xor r3, r7, r6 -/* 803CA810 003C7770 7D 04 4A 78 */ xor r4, r8, r9 -/* 803CA814 003C7774 7C 60 03 78 */ or r0, r3, r0 -/* 803CA818 003C7778 7C 80 03 78 */ or r0, r4, r0 -/* 803CA81C 003C777C 54 00 C0 0F */ rlwinm. r0, r0, 0x18, 0, 7 -/* 803CA820 003C7780 41 82 00 0C */ beq lbl_803CA82C -/* 803CA824 003C7784 3B 80 00 03 */ li r28, 3 -/* 803CA828 003C7788 48 00 00 20 */ b lbl_803CA848 -lbl_803CA82C: -/* 803CA82C 003C778C 3C 60 80 3D */ lis r3, _F39@ha -/* 803CA830 003C7790 80 BE 00 10 */ lwz r5, 0x10(r30) -/* 803CA834 003C7794 38 C3 A8 A0 */ addi r6, r3, _F39@l -/* 803CA838 003C7798 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA83C 003C779C 38 9E 00 18 */ addi r4, r30, 0x18 -/* 803CA840 003C77A0 48 00 02 71 */ bl GBAWriteAsync -/* 803CA844 003C77A4 7C 7C 1B 78 */ mr r28, r3 -lbl_803CA848: -/* 803CA848 003C77A8 2C 1C 00 00 */ cmpwi r28, 0 -/* 803CA84C 003C77AC 41 82 00 30 */ beq lbl_803CA87C -/* 803CA850 003C77B0 38 00 00 00 */ li r0, 0 -/* 803CA854 003C77B4 90 1E 00 2C */ stw r0, 0x2c(r30) -/* 803CA858 003C77B8 90 1E 00 28 */ stw r0, 0x28(r30) -/* 803CA85C 003C77BC 81 9E 00 14 */ lwz r12, 0x14(r30) -/* 803CA860 003C77C0 28 0C 00 00 */ cmplwi r12, 0 -/* 803CA864 003C77C4 41 82 00 18 */ beq lbl_803CA87C -/* 803CA868 003C77C8 90 1E 00 14 */ stw r0, 0x14(r30) -/* 803CA86C 003C77CC 7D 88 03 A6 */ mtlr r12 -/* 803CA870 003C77D0 38 7D 00 00 */ addi r3, r29, 0 -/* 803CA874 003C77D4 38 9C 00 00 */ addi r4, r28, 0 -/* 803CA878 003C77D8 4E 80 00 21 */ blrl -lbl_803CA87C: -/* 803CA87C 003C77DC 93 9F 00 20 */ stw r28, 0x20(r31) -/* 803CA880 003C77E0 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803CA884 003C77E4 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803CA888 003C77E8 83 C1 00 20 */ lwz r30, 0x20(r1) -/* 803CA88C 003C77EC 83 A1 00 1C */ lwz r29, 0x1c(r1) -/* 803CA890 003C77F0 83 81 00 18 */ lwz r28, 0x18(r1) -/* 803CA894 003C77F4 38 21 00 28 */ addi r1, r1, 0x28 -/* 803CA898 003C77F8 7C 08 03 A6 */ mtlr r0 -/* 803CA89C 003C77FC 4E 80 00 20 */ blr - -.global _F39 -_F39: -/* 803CA8A0 003C7800 7C 08 02 A6 */ mflr r0 -/* 803CA8A4 003C7804 54 65 40 2E */ slwi r5, r3, 8 -/* 803CA8A8 003C7808 90 01 00 04 */ stw r0, 4(r1) -/* 803CA8AC 003C780C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803CA8B0 003C7810 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803CA8B4 003C7814 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803CA8B8 003C7818 7C 9E 23 79 */ or. r30, r4, r4 -/* 803CA8BC 003C781C 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CA8C0 003C7820 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803CA8C4 003C7824 7F E0 2A 14 */ add r31, r0, r5 -/* 803CA8C8 003C7828 38 BF 00 40 */ addi r5, r31, 0x40 -/* 803CA8CC 003C782C 40 82 00 10 */ bne lbl_803CA8DC -/* 803CA8D0 003C7830 80 85 00 10 */ lwz r4, 0x10(r5) -/* 803CA8D4 003C7834 38 00 00 00 */ li r0, 0 -/* 803CA8D8 003C7838 98 04 00 00 */ stb r0, 0(r4) -lbl_803CA8DC: -/* 803CA8DC 003C783C 38 00 00 00 */ li r0, 0 -/* 803CA8E0 003C7840 90 05 00 2C */ stw r0, 0x2c(r5) -/* 803CA8E4 003C7844 90 05 00 28 */ stw r0, 0x28(r5) -/* 803CA8E8 003C7848 81 85 00 14 */ lwz r12, 0x14(r5) -/* 803CA8EC 003C784C 28 0C 00 00 */ cmplwi r12, 0 -/* 803CA8F0 003C7850 41 82 00 14 */ beq lbl_803CA904 -/* 803CA8F4 003C7854 90 05 00 14 */ stw r0, 0x14(r5) -/* 803CA8F8 003C7858 7D 88 03 A6 */ mtlr r12 -/* 803CA8FC 003C785C 38 9E 00 00 */ addi r4, r30, 0 -/* 803CA900 003C7860 4E 80 00 21 */ blrl -lbl_803CA904: -/* 803CA904 003C7864 93 DF 00 20 */ stw r30, 0x20(r31) -/* 803CA908 003C7868 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803CA90C 003C786C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803CA910 003C7870 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 803CA914 003C7874 38 21 00 20 */ addi r1, r1, 0x20 -/* 803CA918 003C7878 7C 08 03 A6 */ mtlr r0 -/* 803CA91C 003C787C 4E 80 00 20 */ blr - -.global ReadProc -ReadProc: -/* 803CA920 003C7880 7C 08 02 A6 */ mflr r0 -/* 803CA924 003C7884 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CA928 003C7888 90 01 00 04 */ stw r0, 4(r1) -/* 803CA92C 003C788C 54 63 40 2E */ slwi r3, r3, 8 -/* 803CA930 003C7890 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803CA934 003C7894 94 21 FF E8 */ stwu r1, -0x18(r1) -/* 803CA938 003C7898 93 E1 00 14 */ stw r31, 0x14(r1) -/* 803CA93C 003C789C 7F E0 1A 14 */ add r31, r0, r3 -/* 803CA940 003C78A0 80 1F 00 20 */ lwz r0, 0x20(r31) -/* 803CA944 003C78A4 2C 00 00 00 */ cmpwi r0, 0 -/* 803CA948 003C78A8 40 82 00 24 */ bne lbl_803CA96C -/* 803CA94C 003C78AC 80 7F 00 18 */ lwz r3, 0x18(r31) -/* 803CA950 003C78B0 38 9F 00 05 */ addi r4, r31, 5 -/* 803CA954 003C78B4 38 A0 00 04 */ li r5, 4 -/* 803CA958 003C78B8 4B C3 8B 39 */ bl memcpy -/* 803CA95C 003C78BC 88 1F 00 09 */ lbz r0, 9(r31) -/* 803CA960 003C78C0 80 7F 00 14 */ lwz r3, 0x14(r31) -/* 803CA964 003C78C4 70 00 00 3A */ andi. r0, r0, 0x3a -/* 803CA968 003C78C8 98 03 00 00 */ stb r0, 0(r3) -lbl_803CA96C: -/* 803CA96C 003C78CC 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 803CA970 003C78D0 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 803CA974 003C78D4 38 21 00 18 */ addi r1, r1, 0x18 -/* 803CA978 003C78D8 7C 08 03 A6 */ mtlr r0 -/* 803CA97C 003C78DC 4E 80 00 20 */ blr - -.global GBAReadAsync -GBAReadAsync: -/* 803CA980 003C78E0 7C 08 02 A6 */ mflr r0 -/* 803CA984 003C78E4 3C E0 80 57 */ lis r7, lbl_8056A1A0@ha -/* 803CA988 003C78E8 90 01 00 04 */ stw r0, 4(r1) -/* 803CA98C 003C78EC 54 68 40 2E */ slwi r8, r3, 8 -/* 803CA990 003C78F0 38 07 A1 A0 */ addi r0, r7, lbl_8056A1A0@l -/* 803CA994 003C78F4 94 21 FF F8 */ stwu r1, -8(r1) -/* 803CA998 003C78F8 7D 00 42 14 */ add r8, r0, r8 -/* 803CA99C 003C78FC 80 08 00 1C */ lwz r0, 0x1c(r8) -/* 803CA9A0 003C7900 28 00 00 00 */ cmplwi r0, 0 -/* 803CA9A4 003C7904 41 82 00 0C */ beq lbl_803CA9B0 -/* 803CA9A8 003C7908 38 60 00 02 */ li r3, 2 -/* 803CA9AC 003C790C 48 00 00 30 */ b lbl_803CA9DC -lbl_803CA9B0: -/* 803CA9B0 003C7910 38 00 00 14 */ li r0, 0x14 -/* 803CA9B4 003C7914 98 08 00 00 */ stb r0, 0(r8) -/* 803CA9B8 003C7918 3C E0 80 3D */ lis r7, ReadProc@ha -/* 803CA9BC 003C791C 38 07 A9 20 */ addi r0, r7, ReadProc@l -/* 803CA9C0 003C7920 90 88 00 18 */ stw r4, 0x18(r8) -/* 803CA9C4 003C7924 38 80 00 01 */ li r4, 1 -/* 803CA9C8 003C7928 90 A8 00 14 */ stw r5, 0x14(r8) -/* 803CA9CC 003C792C 38 A0 00 05 */ li r5, 5 -/* 803CA9D0 003C7930 90 C8 00 1C */ stw r6, 0x1c(r8) -/* 803CA9D4 003C7934 7C 06 03 78 */ mr r6, r0 -/* 803CA9D8 003C7938 48 00 04 D1 */ bl __GBATransfer -lbl_803CA9DC: -/* 803CA9DC 003C793C 80 01 00 0C */ lwz r0, 0xc(r1) -/* 803CA9E0 003C7940 38 21 00 08 */ addi r1, r1, 8 -/* 803CA9E4 003C7944 7C 08 03 A6 */ mtlr r0 -/* 803CA9E8 003C7948 4E 80 00 20 */ blr - -.global GBARead -GBARead: -/* 803CA9EC 003C794C 7C 08 02 A6 */ mflr r0 -/* 803CA9F0 003C7950 90 01 00 04 */ stw r0, 4(r1) -/* 803CA9F4 003C7954 94 21 FF D8 */ stwu r1, -0x28(r1) -/* 803CA9F8 003C7958 93 E1 00 24 */ stw r31, 0x24(r1) -/* 803CA9FC 003C795C 3B E3 00 00 */ addi r31, r3, 0 -/* 803CAA00 003C7960 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAA04 003C7964 57 E6 40 2E */ slwi r6, r31, 8 -/* 803CAA08 003C7968 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CAA0C 003C796C 7D 00 32 14 */ add r8, r0, r6 -/* 803CAA10 003C7970 80 08 00 1C */ lwz r0, 0x1c(r8) -/* 803CAA14 003C7974 28 00 00 00 */ cmplwi r0, 0 -/* 803CAA18 003C7978 41 82 00 0C */ beq lbl_803CAA24 -/* 803CAA1C 003C797C 38 60 00 02 */ li r3, 2 -/* 803CAA20 003C7980 48 00 00 38 */ b lbl_803CAA58 -lbl_803CAA24: -/* 803CAA24 003C7984 38 00 00 14 */ li r0, 0x14 -/* 803CAA28 003C7988 98 08 00 00 */ stb r0, 0(r8) -/* 803CAA2C 003C798C 3C E0 80 3D */ lis r7, __GBASyncCallback@ha -/* 803CAA30 003C7990 3C 60 80 3D */ lis r3, ReadProc@ha -/* 803CAA34 003C7994 90 88 00 18 */ stw r4, 0x18(r8) -/* 803CAA38 003C7998 38 C3 A9 20 */ addi r6, r3, ReadProc@l -/* 803CAA3C 003C799C 38 07 AC E4 */ addi r0, r7, __GBASyncCallback@l -/* 803CAA40 003C79A0 90 A8 00 14 */ stw r5, 0x14(r8) -/* 803CAA44 003C79A4 7F E3 FB 78 */ mr r3, r31 -/* 803CAA48 003C79A8 38 80 00 01 */ li r4, 1 -/* 803CAA4C 003C79AC 90 08 00 1C */ stw r0, 0x1c(r8) -/* 803CAA50 003C79B0 38 A0 00 05 */ li r5, 5 -/* 803CAA54 003C79B4 48 00 04 55 */ bl __GBATransfer -lbl_803CAA58: -/* 803CAA58 003C79B8 2C 03 00 00 */ cmpwi r3, 0 -/* 803CAA5C 003C79BC 41 82 00 08 */ beq lbl_803CAA64 -/* 803CAA60 003C79C0 48 00 00 0C */ b lbl_803CAA6C -lbl_803CAA64: -/* 803CAA64 003C79C4 7F E3 FB 78 */ mr r3, r31 -/* 803CAA68 003C79C8 48 00 02 B1 */ bl __GBASync -lbl_803CAA6C: -/* 803CAA6C 003C79CC 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 803CAA70 003C79D0 83 E1 00 24 */ lwz r31, 0x24(r1) -/* 803CAA74 003C79D4 38 21 00 28 */ addi r1, r1, 0x28 -/* 803CAA78 003C79D8 7C 08 03 A6 */ mtlr r0 -/* 803CAA7C 003C79DC 4E 80 00 20 */ blr - -.global WriteProc -WriteProc: -/* 803CAA80 003C79E0 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CAA84 003C79E4 54 63 40 2E */ slwi r3, r3, 8 -/* 803CAA88 003C79E8 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803CAA8C 003C79EC 7C 60 1A 14 */ add r3, r0, r3 -/* 803CAA90 003C79F0 80 03 00 20 */ lwz r0, 0x20(r3) -/* 803CAA94 003C79F4 2C 00 00 00 */ cmpwi r0, 0 -/* 803CAA98 003C79F8 4C 82 00 20 */ bnelr -/* 803CAA9C 003C79FC 88 03 00 05 */ lbz r0, 5(r3) -/* 803CAAA0 003C7A00 80 63 00 14 */ lwz r3, 0x14(r3) -/* 803CAAA4 003C7A04 70 00 00 3A */ andi. r0, r0, 0x3a -/* 803CAAA8 003C7A08 98 03 00 00 */ stb r0, 0(r3) -/* 803CAAAC 003C7A0C 4E 80 00 20 */ blr - -.global GBAWriteAsync -GBAWriteAsync: -/* 803CAAB0 003C7A10 7C 08 02 A6 */ mflr r0 -/* 803CAAB4 003C7A14 90 01 00 04 */ stw r0, 4(r1) -/* 803CAAB8 003C7A18 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 803CAABC 003C7A1C BF 61 00 1C */ stmw r27, 0x1c(r1) -/* 803CAAC0 003C7A20 3B 63 00 00 */ addi r27, r3, 0 -/* 803CAAC4 003C7A24 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAAC8 003C7A28 57 67 40 2E */ slwi r7, r27, 8 -/* 803CAACC 003C7A2C 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CAAD0 003C7A30 7F E0 3A 14 */ add r31, r0, r7 -/* 803CAAD4 003C7A34 3B 84 00 00 */ addi r28, r4, 0 -/* 803CAAD8 003C7A38 3B A5 00 00 */ addi r29, r5, 0 -/* 803CAADC 003C7A3C 80 1F 00 1C */ lwz r0, 0x1c(r31) -/* 803CAAE0 003C7A40 3B C6 00 00 */ addi r30, r6, 0 -/* 803CAAE4 003C7A44 28 00 00 00 */ cmplwi r0, 0 -/* 803CAAE8 003C7A48 41 82 00 0C */ beq lbl_803CAAF4 -/* 803CAAEC 003C7A4C 38 60 00 02 */ li r3, 2 -/* 803CAAF0 003C7A50 48 00 00 40 */ b lbl_803CAB30 -lbl_803CAAF4: -/* 803CAAF4 003C7A54 38 00 00 15 */ li r0, 0x15 -/* 803CAAF8 003C7A58 98 1F 00 00 */ stb r0, 0(r31) -/* 803CAAFC 003C7A5C 38 9C 00 00 */ addi r4, r28, 0 -/* 803CAB00 003C7A60 38 7F 00 01 */ addi r3, r31, 1 -/* 803CAB04 003C7A64 38 A0 00 04 */ li r5, 4 -/* 803CAB08 003C7A68 4B C3 89 89 */ bl memcpy -/* 803CAB0C 003C7A6C 93 9F 00 18 */ stw r28, 0x18(r31) -/* 803CAB10 003C7A70 3C 60 80 3D */ lis r3, WriteProc@ha -/* 803CAB14 003C7A74 38 C3 AA 80 */ addi r6, r3, WriteProc@l -/* 803CAB18 003C7A78 93 BF 00 14 */ stw r29, 0x14(r31) -/* 803CAB1C 003C7A7C 7F 63 DB 78 */ mr r3, r27 -/* 803CAB20 003C7A80 38 80 00 05 */ li r4, 5 -/* 803CAB24 003C7A84 93 DF 00 1C */ stw r30, 0x1c(r31) -/* 803CAB28 003C7A88 38 A0 00 01 */ li r5, 1 -/* 803CAB2C 003C7A8C 48 00 03 7D */ bl __GBATransfer -lbl_803CAB30: -/* 803CAB30 003C7A90 BB 61 00 1C */ lmw r27, 0x1c(r1) -/* 803CAB34 003C7A94 80 01 00 34 */ lwz r0, 0x34(r1) -/* 803CAB38 003C7A98 38 21 00 30 */ addi r1, r1, 0x30 -/* 803CAB3C 003C7A9C 7C 08 03 A6 */ mtlr r0 -/* 803CAB40 003C7AA0 4E 80 00 20 */ blr - -.global GBAWrite -GBAWrite: -/* 803CAB44 003C7AA4 7C 08 02 A6 */ mflr r0 -/* 803CAB48 003C7AA8 90 01 00 04 */ stw r0, 4(r1) -/* 803CAB4C 003C7AAC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 803CAB50 003C7AB0 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 803CAB54 003C7AB4 93 C1 00 28 */ stw r30, 0x28(r1) -/* 803CAB58 003C7AB8 3B C5 00 00 */ addi r30, r5, 0 -/* 803CAB5C 003C7ABC 93 A1 00 24 */ stw r29, 0x24(r1) -/* 803CAB60 003C7AC0 3B A4 00 00 */ addi r29, r4, 0 -/* 803CAB64 003C7AC4 93 81 00 20 */ stw r28, 0x20(r1) -/* 803CAB68 003C7AC8 3B 83 00 00 */ addi r28, r3, 0 -/* 803CAB6C 003C7ACC 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAB70 003C7AD0 57 86 40 2E */ slwi r6, r28, 8 -/* 803CAB74 003C7AD4 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CAB78 003C7AD8 7F E0 32 14 */ add r31, r0, r6 -/* 803CAB7C 003C7ADC 80 1F 00 1C */ lwz r0, 0x1c(r31) -/* 803CAB80 003C7AE0 28 00 00 00 */ cmplwi r0, 0 -/* 803CAB84 003C7AE4 41 82 00 0C */ beq lbl_803CAB90 -/* 803CAB88 003C7AE8 38 60 00 02 */ li r3, 2 -/* 803CAB8C 003C7AEC 48 00 00 48 */ b lbl_803CABD4 -lbl_803CAB90: -/* 803CAB90 003C7AF0 38 00 00 15 */ li r0, 0x15 -/* 803CAB94 003C7AF4 98 1F 00 00 */ stb r0, 0(r31) -/* 803CAB98 003C7AF8 38 9D 00 00 */ addi r4, r29, 0 -/* 803CAB9C 003C7AFC 38 7F 00 01 */ addi r3, r31, 1 -/* 803CABA0 003C7B00 38 A0 00 04 */ li r5, 4 -/* 803CABA4 003C7B04 4B C3 88 ED */ bl memcpy -/* 803CABA8 003C7B08 93 BF 00 18 */ stw r29, 0x18(r31) -/* 803CABAC 003C7B0C 3C 80 80 3D */ lis r4, __GBASyncCallback@ha -/* 803CABB0 003C7B10 38 04 AC E4 */ addi r0, r4, __GBASyncCallback@l -/* 803CABB4 003C7B14 93 DF 00 14 */ stw r30, 0x14(r31) -/* 803CABB8 003C7B18 3C 60 80 3D */ lis r3, WriteProc@ha -/* 803CABBC 003C7B1C 38 C3 AA 80 */ addi r6, r3, WriteProc@l -/* 803CABC0 003C7B20 90 1F 00 1C */ stw r0, 0x1c(r31) -/* 803CABC4 003C7B24 38 7C 00 00 */ addi r3, r28, 0 -/* 803CABC8 003C7B28 38 80 00 05 */ li r4, 5 -/* 803CABCC 003C7B2C 38 A0 00 01 */ li r5, 1 -/* 803CABD0 003C7B30 48 00 02 D9 */ bl __GBATransfer -lbl_803CABD4: -/* 803CABD4 003C7B34 2C 03 00 00 */ cmpwi r3, 0 -/* 803CABD8 003C7B38 41 82 00 08 */ beq lbl_803CABE0 -/* 803CABDC 003C7B3C 48 00 00 0C */ b lbl_803CABE8 -lbl_803CABE0: -/* 803CABE0 003C7B40 7F 83 E3 78 */ mr r3, r28 -/* 803CABE4 003C7B44 48 00 01 35 */ bl __GBASync -lbl_803CABE8: -/* 803CABE8 003C7B48 80 01 00 34 */ lwz r0, 0x34(r1) -/* 803CABEC 003C7B4C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 803CABF0 003C7B50 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 803CABF4 003C7B54 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 803CABF8 003C7B58 83 81 00 20 */ lwz r28, 0x20(r1) -/* 803CABFC 003C7B5C 38 21 00 30 */ addi r1, r1, 0x30 -/* 803CAC00 003C7B60 7C 08 03 A6 */ mtlr r0 -/* 803CAC04 003C7B64 4E 80 00 20 */ blr - -.global __GBAHandler -__GBAHandler: -/* 803CAC08 003C7B68 7C 08 02 A6 */ mflr r0 -/* 803CAC0C 003C7B6C 90 01 00 04 */ stw r0, 4(r1) -/* 803CAC10 003C7B70 94 21 FD 08 */ stwu r1, -0x2f8(r1) -/* 803CAC14 003C7B74 93 E1 02 F4 */ stw r31, 0x2f4(r1) -/* 803CAC18 003C7B78 93 C1 02 F0 */ stw r30, 0x2f0(r1) -/* 803CAC1C 003C7B7C 3B C5 00 00 */ addi r30, r5, 0 -/* 803CAC20 003C7B80 93 A1 02 EC */ stw r29, 0x2ec(r1) -/* 803CAC24 003C7B84 3B A3 00 00 */ addi r29, r3, 0 -/* 803CAC28 003C7B88 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAC2C 003C7B8C 80 0D B1 58 */ lwz r0, lbl_805A9D18@sda21(r13) -/* 803CAC30 003C7B90 57 A6 40 2E */ slwi r6, r29, 8 -/* 803CAC34 003C7B94 2C 00 00 00 */ cmpwi r0, 0 -/* 803CAC38 003C7B98 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CAC3C 003C7B9C 7F E0 32 14 */ add r31, r0, r6 -/* 803CAC40 003C7BA0 40 82 00 88 */ bne lbl_803CACC8 -/* 803CAC44 003C7BA4 54 80 07 3F */ clrlwi. r0, r4, 0x1c -/* 803CAC48 003C7BA8 41 82 00 10 */ beq lbl_803CAC58 -/* 803CAC4C 003C7BAC 38 00 00 01 */ li r0, 1 -/* 803CAC50 003C7BB0 90 1F 00 20 */ stw r0, 0x20(r31) -/* 803CAC54 003C7BB4 48 00 00 0C */ b lbl_803CAC60 -lbl_803CAC58: -/* 803CAC58 003C7BB8 38 00 00 00 */ li r0, 0 -/* 803CAC5C 003C7BBC 90 1F 00 20 */ stw r0, 0x20(r31) -lbl_803CAC60: -/* 803CAC60 003C7BC0 81 9F 00 38 */ lwz r12, 0x38(r31) -/* 803CAC64 003C7BC4 28 0C 00 00 */ cmplwi r12, 0 -/* 803CAC68 003C7BC8 41 82 00 18 */ beq lbl_803CAC80 -/* 803CAC6C 003C7BCC 38 00 00 00 */ li r0, 0 -/* 803CAC70 003C7BD0 7D 88 03 A6 */ mtlr r12 -/* 803CAC74 003C7BD4 90 1F 00 38 */ stw r0, 0x38(r31) -/* 803CAC78 003C7BD8 7F A3 EB 78 */ mr r3, r29 -/* 803CAC7C 003C7BDC 4E 80 00 21 */ blrl -lbl_803CAC80: -/* 803CAC80 003C7BE0 80 1F 00 1C */ lwz r0, 0x1c(r31) -/* 803CAC84 003C7BE4 28 00 00 00 */ cmplwi r0, 0 -/* 803CAC88 003C7BE8 41 82 00 40 */ beq lbl_803CACC8 -/* 803CAC8C 003C7BEC 38 61 00 18 */ addi r3, r1, 0x18 -/* 803CAC90 003C7BF0 4B FB 49 85 */ bl OSClearContext -/* 803CAC94 003C7BF4 38 61 00 18 */ addi r3, r1, 0x18 -/* 803CAC98 003C7BF8 4B FB 47 85 */ bl OSSetCurrentContext -/* 803CAC9C 003C7BFC 81 9F 00 1C */ lwz r12, 0x1c(r31) -/* 803CACA0 003C7C00 38 00 00 00 */ li r0, 0 -/* 803CACA4 003C7C04 38 7D 00 00 */ addi r3, r29, 0 -/* 803CACA8 003C7C08 90 1F 00 1C */ stw r0, 0x1c(r31) -/* 803CACAC 003C7C0C 7D 88 03 A6 */ mtlr r12 -/* 803CACB0 003C7C10 80 9F 00 20 */ lwz r4, 0x20(r31) -/* 803CACB4 003C7C14 4E 80 00 21 */ blrl -/* 803CACB8 003C7C18 38 61 00 18 */ addi r3, r1, 0x18 -/* 803CACBC 003C7C1C 4B FB 49 59 */ bl OSClearContext -/* 803CACC0 003C7C20 7F C3 F3 78 */ mr r3, r30 -/* 803CACC4 003C7C24 4B FB 47 59 */ bl OSSetCurrentContext -lbl_803CACC8: -/* 803CACC8 003C7C28 80 01 02 FC */ lwz r0, 0x2fc(r1) -/* 803CACCC 003C7C2C 83 E1 02 F4 */ lwz r31, 0x2f4(r1) -/* 803CACD0 003C7C30 83 C1 02 F0 */ lwz r30, 0x2f0(r1) -/* 803CACD4 003C7C34 83 A1 02 EC */ lwz r29, 0x2ec(r1) -/* 803CACD8 003C7C38 38 21 02 F8 */ addi r1, r1, 0x2f8 -/* 803CACDC 003C7C3C 7C 08 03 A6 */ mtlr r0 -/* 803CACE0 003C7C40 4E 80 00 20 */ blr - -.global __GBASyncCallback -__GBASyncCallback: -/* 803CACE4 003C7C44 7C 08 02 A6 */ mflr r0 -/* 803CACE8 003C7C48 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CACEC 003C7C4C 90 01 00 04 */ stw r0, 4(r1) -/* 803CACF0 003C7C50 54 63 40 2E */ slwi r3, r3, 8 -/* 803CACF4 003C7C54 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803CACF8 003C7C58 7C 60 1A 14 */ add r3, r0, r3 -/* 803CACFC 003C7C5C 94 21 FF F8 */ stwu r1, -8(r1) -/* 803CAD00 003C7C60 38 63 00 24 */ addi r3, r3, 0x24 -/* 803CAD04 003C7C64 4B FB A4 F5 */ bl OSWakeupThread -/* 803CAD08 003C7C68 80 01 00 0C */ lwz r0, 0xc(r1) -/* 803CAD0C 003C7C6C 38 21 00 08 */ addi r1, r1, 8 -/* 803CAD10 003C7C70 7C 08 03 A6 */ mtlr r0 -/* 803CAD14 003C7C74 4E 80 00 20 */ blr - -.global __GBASync -__GBASync: -/* 803CAD18 003C7C78 7C 08 02 A6 */ mflr r0 -/* 803CAD1C 003C7C7C 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CAD20 003C7C80 90 01 00 04 */ stw r0, 4(r1) -/* 803CAD24 003C7C84 54 63 40 2E */ slwi r3, r3, 8 -/* 803CAD28 003C7C88 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803CAD2C 003C7C8C 94 21 FF E8 */ stwu r1, -0x18(r1) -/* 803CAD30 003C7C90 93 E1 00 14 */ stw r31, 0x14(r1) -/* 803CAD34 003C7C94 7F E0 1A 14 */ add r31, r0, r3 -/* 803CAD38 003C7C98 93 C1 00 10 */ stw r30, 0x10(r1) -/* 803CAD3C 003C7C9C 4B FB 69 25 */ bl OSDisableInterrupts -/* 803CAD40 003C7CA0 7C 7E 1B 78 */ mr r30, r3 -/* 803CAD44 003C7CA4 48 00 00 0C */ b lbl_803CAD50 -lbl_803CAD48: -/* 803CAD48 003C7CA8 38 7F 00 24 */ addi r3, r31, 0x24 -/* 803CAD4C 003C7CAC 4B FB A3 C1 */ bl OSSleepThread -lbl_803CAD50: -/* 803CAD50 003C7CB0 80 1F 00 1C */ lwz r0, 0x1c(r31) -/* 803CAD54 003C7CB4 28 00 00 00 */ cmplwi r0, 0 -/* 803CAD58 003C7CB8 40 82 FF F0 */ bne lbl_803CAD48 -/* 803CAD5C 003C7CBC 83 FF 00 20 */ lwz r31, 0x20(r31) -/* 803CAD60 003C7CC0 7F C3 F3 78 */ mr r3, r30 -/* 803CAD64 003C7CC4 4B FB 69 25 */ bl OSRestoreInterrupts -/* 803CAD68 003C7CC8 7F E3 FB 78 */ mr r3, r31 -/* 803CAD6C 003C7CCC 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 803CAD70 003C7CD0 83 E1 00 14 */ lwz r31, 0x14(r1) -/* 803CAD74 003C7CD4 83 C1 00 10 */ lwz r30, 0x10(r1) -/* 803CAD78 003C7CD8 38 21 00 18 */ addi r1, r1, 0x18 -/* 803CAD7C 003C7CDC 7C 08 03 A6 */ mtlr r0 -/* 803CAD80 003C7CE0 4E 80 00 20 */ blr - -.global TypeAndStatusCallback -TypeAndStatusCallback: -/* 803CAD84 003C7CE4 7C 08 02 A6 */ mflr r0 -/* 803CAD88 003C7CE8 90 01 00 04 */ stw r0, 4(r1) -/* 803CAD8C 003C7CEC 94 21 FD 10 */ stwu r1, -0x2f0(r1) -/* 803CAD90 003C7CF0 93 E1 02 EC */ stw r31, 0x2ec(r1) -/* 803CAD94 003C7CF4 3B E3 00 00 */ addi r31, r3, 0 -/* 803CAD98 003C7CF8 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAD9C 003C7CFC 93 C1 02 E8 */ stw r30, 0x2e8(r1) -/* 803CADA0 003C7D00 57 E5 40 2E */ slwi r5, r31, 8 -/* 803CADA4 003C7D04 93 A1 02 E4 */ stw r29, 0x2e4(r1) -/* 803CADA8 003C7D08 80 0D B1 58 */ lwz r0, lbl_805A9D18@sda21(r13) -/* 803CADAC 003C7D0C 2C 00 00 00 */ cmpwi r0, 0 -/* 803CADB0 003C7D10 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CADB4 003C7D14 7F C0 2A 14 */ add r30, r0, r5 -/* 803CADB8 003C7D18 40 82 00 D4 */ bne lbl_803CAE8C -/* 803CADBC 003C7D1C 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 803CADC0 003C7D20 40 82 00 14 */ bne lbl_803CADD4 -/* 803CADC4 003C7D24 54 83 00 1E */ rlwinm r3, r4, 0, 0, 0xf -/* 803CADC8 003C7D28 3C 03 FF FC */ addis r0, r3, 0xfffc -/* 803CADCC 003C7D2C 28 00 00 00 */ cmplwi r0, 0 -/* 803CADD0 003C7D30 41 82 00 10 */ beq lbl_803CADE0 -lbl_803CADD4: -/* 803CADD4 003C7D34 38 00 00 01 */ li r0, 1 -/* 803CADD8 003C7D38 90 1E 00 20 */ stw r0, 0x20(r30) -/* 803CADDC 003C7D3C 48 00 00 3C */ b lbl_803CAE18 -lbl_803CADE0: -/* 803CADE0 003C7D40 3C 60 80 3D */ lis r3, __GBAHandler@ha -/* 803CADE4 003C7D44 80 BE 00 0C */ lwz r5, 0xc(r30) -/* 803CADE8 003C7D48 39 03 AC 08 */ addi r8, r3, __GBAHandler@l -/* 803CADEC 003C7D4C 80 FE 00 10 */ lwz r7, 0x10(r30) -/* 803CADF0 003C7D50 81 3E 00 30 */ lwz r9, 0x30(r30) -/* 803CADF4 003C7D54 7F E3 FB 78 */ mr r3, r31 -/* 803CADF8 003C7D58 81 5E 00 34 */ lwz r10, 0x34(r30) -/* 803CADFC 003C7D5C 38 9E 00 00 */ addi r4, r30, 0 -/* 803CAE00 003C7D60 38 DE 00 05 */ addi r6, r30, 5 -/* 803CAE04 003C7D64 4B FF 48 95 */ bl SITransfer -/* 803CAE08 003C7D68 2C 03 00 00 */ cmpwi r3, 0 -/* 803CAE0C 003C7D6C 40 82 00 80 */ bne lbl_803CAE8C -/* 803CAE10 003C7D70 38 00 00 02 */ li r0, 2 -/* 803CAE14 003C7D74 90 1E 00 20 */ stw r0, 0x20(r30) -lbl_803CAE18: -/* 803CAE18 003C7D78 81 9E 00 38 */ lwz r12, 0x38(r30) -/* 803CAE1C 003C7D7C 28 0C 00 00 */ cmplwi r12, 0 -/* 803CAE20 003C7D80 41 82 00 18 */ beq lbl_803CAE38 -/* 803CAE24 003C7D84 38 00 00 00 */ li r0, 0 -/* 803CAE28 003C7D88 7D 88 03 A6 */ mtlr r12 -/* 803CAE2C 003C7D8C 90 1E 00 38 */ stw r0, 0x38(r30) -/* 803CAE30 003C7D90 7F E3 FB 78 */ mr r3, r31 -/* 803CAE34 003C7D94 4E 80 00 21 */ blrl -lbl_803CAE38: -/* 803CAE38 003C7D98 80 1E 00 1C */ lwz r0, 0x1c(r30) -/* 803CAE3C 003C7D9C 28 00 00 00 */ cmplwi r0, 0 -/* 803CAE40 003C7DA0 41 82 00 4C */ beq lbl_803CAE8C -/* 803CAE44 003C7DA4 4B FB 46 35 */ bl OSGetCurrentContext -/* 803CAE48 003C7DA8 3B A3 00 00 */ addi r29, r3, 0 -/* 803CAE4C 003C7DAC 38 61 00 10 */ addi r3, r1, 0x10 -/* 803CAE50 003C7DB0 4B FB 47 C5 */ bl OSClearContext -/* 803CAE54 003C7DB4 38 61 00 10 */ addi r3, r1, 0x10 -/* 803CAE58 003C7DB8 4B FB 45 C5 */ bl OSSetCurrentContext -/* 803CAE5C 003C7DBC 81 9E 00 1C */ lwz r12, 0x1c(r30) -/* 803CAE60 003C7DC0 38 00 00 00 */ li r0, 0 -/* 803CAE64 003C7DC4 38 7F 00 00 */ addi r3, r31, 0 -/* 803CAE68 003C7DC8 90 1E 00 1C */ stw r0, 0x1c(r30) -/* 803CAE6C 003C7DCC 7D 88 03 A6 */ mtlr r12 -/* 803CAE70 003C7DD0 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 803CAE74 003C7DD4 4E 80 00 21 */ blrl -/* 803CAE78 003C7DD8 38 61 00 10 */ addi r3, r1, 0x10 -/* 803CAE7C 003C7DDC 4B FB 47 99 */ bl OSClearContext -/* 803CAE80 003C7DE0 7F A3 EB 78 */ mr r3, r29 -/* 803CAE84 003C7DE4 4B FB 45 99 */ bl OSSetCurrentContext -/* 803CAE88 003C7DE8 4B FB 9C 65 */ bl __OSReschedule -lbl_803CAE8C: -/* 803CAE8C 003C7DEC 80 01 02 F4 */ lwz r0, 0x2f4(r1) -/* 803CAE90 003C7DF0 83 E1 02 EC */ lwz r31, 0x2ec(r1) -/* 803CAE94 003C7DF4 83 C1 02 E8 */ lwz r30, 0x2e8(r1) -/* 803CAE98 003C7DF8 83 A1 02 E4 */ lwz r29, 0x2e4(r1) -/* 803CAE9C 003C7DFC 38 21 02 F0 */ addi r1, r1, 0x2f0 -/* 803CAEA0 003C7E00 7C 08 03 A6 */ mtlr r0 -/* 803CAEA4 003C7E04 4E 80 00 20 */ blr - -.global __GBATransfer -__GBATransfer: -/* 803CAEA8 003C7E08 7C 08 02 A6 */ mflr r0 -/* 803CAEAC 003C7E0C 90 01 00 04 */ stw r0, 4(r1) -/* 803CAEB0 003C7E10 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 803CAEB4 003C7E14 BF 61 00 1C */ stmw r27, 0x1c(r1) -/* 803CAEB8 003C7E18 3B 63 00 00 */ addi r27, r3, 0 -/* 803CAEBC 003C7E1C 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAEC0 003C7E20 57 67 40 2E */ slwi r7, r27, 8 -/* 803CAEC4 003C7E24 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CAEC8 003C7E28 3B 84 00 00 */ addi r28, r4, 0 -/* 803CAECC 003C7E2C 3B A5 00 00 */ addi r29, r5, 0 -/* 803CAED0 003C7E30 3B E6 00 00 */ addi r31, r6, 0 -/* 803CAED4 003C7E34 7F C0 3A 14 */ add r30, r0, r7 -/* 803CAED8 003C7E38 4B FB 67 89 */ bl OSDisableInterrupts -/* 803CAEDC 003C7E3C 93 FE 00 38 */ stw r31, 0x38(r30) -/* 803CAEE0 003C7E40 3C 80 80 3D */ lis r4, TypeAndStatusCallback@ha -/* 803CAEE4 003C7E44 3B E3 00 00 */ addi r31, r3, 0 -/* 803CAEE8 003C7E48 93 9E 00 0C */ stw r28, 0xc(r30) -/* 803CAEEC 003C7E4C 38 84 AD 84 */ addi r4, r4, TypeAndStatusCallback@l -/* 803CAEF0 003C7E50 7F 63 DB 78 */ mr r3, r27 -/* 803CAEF4 003C7E54 93 BE 00 10 */ stw r29, 0x10(r30) -/* 803CAEF8 003C7E58 4B FF 4D 69 */ bl SIGetTypeAsync -/* 803CAEFC 003C7E5C 7F E3 FB 78 */ mr r3, r31 -/* 803CAF00 003C7E60 4B FB 67 89 */ bl OSRestoreInterrupts -/* 803CAF04 003C7E64 BB 61 00 1C */ lmw r27, 0x1c(r1) -/* 803CAF08 003C7E68 38 60 00 00 */ li r3, 0 -/* 803CAF0C 003C7E6C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 803CAF10 003C7E70 38 21 00 30 */ addi r1, r1, 0x30 -/* 803CAF14 003C7E74 7C 08 03 A6 */ mtlr r0 -/* 803CAF18 003C7E78 4E 80 00 20 */ blr - -.global __GBASetDelay -__GBASetDelay: -/* 803CAF1C 003C7E7C 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CAF20 003C7E80 54 63 40 2E */ slwi r3, r3, 8 -/* 803CAF24 003C7E84 38 04 A1 A0 */ addi r0, r4, lbl_8056A1A0@l -/* 803CAF28 003C7E88 7C E0 1A 14 */ add r7, r0, r3 -/* 803CAF2C 003C7E8C 80 67 00 30 */ lwz r3, 0x30(r7) -/* 803CAF30 003C7E90 80 87 00 34 */ lwz r4, 0x34(r7) -/* 803CAF34 003C7E94 90 C7 00 34 */ stw r6, 0x34(r7) -/* 803CAF38 003C7E98 90 A7 00 30 */ stw r5, 0x30(r7) -/* 803CAF3C 003C7E9C 4E 80 00 20 */ blr - -.global __GBADSPTaskInit -__GBADSPTaskInit: -/* 803CAF40 003C7EA0 7C 08 02 A6 */ mflr r0 -/* 803CAF44 003C7EA4 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CAF48 003C7EA8 90 01 00 04 */ stw r0, 4(r1) -/* 803CAF4C 003C7EAC 38 84 A1 A0 */ addi r4, r4, lbl_8056A1A0@l -/* 803CAF50 003C7EB0 38 04 00 A8 */ addi r0, r4, 0xa8 -/* 803CAF54 003C7EB4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803CAF58 003C7EB8 7C 00 18 40 */ cmplw r0, r3 -/* 803CAF5C 003C7EBC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803CAF60 003C7EC0 40 82 00 0C */ bne lbl_803CAF6C -/* 803CAF64 003C7EC4 38 00 00 00 */ li r0, 0 -/* 803CAF68 003C7EC8 48 00 00 68 */ b lbl_803CAFD0 -lbl_803CAF6C: -/* 803CAF6C 003C7ECC 38 84 01 00 */ addi r4, r4, 0x100 -/* 803CAF70 003C7ED0 38 04 00 A8 */ addi r0, r4, 0xa8 -/* 803CAF74 003C7ED4 7C 00 18 40 */ cmplw r0, r3 -/* 803CAF78 003C7ED8 40 82 00 0C */ bne lbl_803CAF84 -/* 803CAF7C 003C7EDC 38 00 00 01 */ li r0, 1 -/* 803CAF80 003C7EE0 48 00 00 50 */ b lbl_803CAFD0 -lbl_803CAF84: -/* 803CAF84 003C7EE4 38 04 01 A8 */ addi r0, r4, 0x1a8 -/* 803CAF88 003C7EE8 7C 00 18 40 */ cmplw r0, r3 -/* 803CAF8C 003C7EEC 38 84 01 00 */ addi r4, r4, 0x100 -/* 803CAF90 003C7EF0 40 82 00 0C */ bne lbl_803CAF9C -/* 803CAF94 003C7EF4 38 00 00 02 */ li r0, 2 -/* 803CAF98 003C7EF8 48 00 00 38 */ b lbl_803CAFD0 -lbl_803CAF9C: -/* 803CAF9C 003C7EFC 38 04 01 A8 */ addi r0, r4, 0x1a8 -/* 803CAFA0 003C7F00 7C 00 18 40 */ cmplw r0, r3 -/* 803CAFA4 003C7F04 40 82 00 0C */ bne lbl_803CAFB0 -/* 803CAFA8 003C7F08 38 00 00 03 */ li r0, 3 -/* 803CAFAC 003C7F0C 48 00 00 24 */ b lbl_803CAFD0 -lbl_803CAFB0: -/* 803CAFB0 003C7F10 3C 60 80 3F */ lis r3, lbl_803F7520@ha -/* 803CAFB4 003C7F14 4C C6 31 82 */ crclr 6 -/* 803CAFB8 003C7F18 3C 80 80 3F */ lis r4, lbl_803F752C@ha -/* 803CAFBC 003C7F1C 38 A4 75 2C */ addi r5, r4, lbl_803F752C@l -/* 803CAFC0 003C7F20 38 63 75 20 */ addi r3, r3, lbl_803F7520@l -/* 803CAFC4 003C7F24 38 80 00 A9 */ li r4, 0xa9 -/* 803CAFC8 003C7F28 4B FB 4A 65 */ bl OSPanic -/* 803CAFCC 003C7F2C 38 00 FF FF */ li r0, -1 -lbl_803CAFD0: -/* 803CAFD0 003C7F30 3C 60 80 57 */ lis r3, lbl_8056A1A0@ha -/* 803CAFD4 003C7F34 54 04 40 2E */ slwi r4, r0, 8 -/* 803CAFD8 003C7F38 38 03 A1 A0 */ addi r0, r3, lbl_8056A1A0@l -/* 803CAFDC 003C7F3C 7F E0 22 14 */ add r31, r0, r4 -/* 803CAFE0 003C7F40 3C 60 AB BA */ lis r3, 0xabba -/* 803CAFE4 003C7F44 4B FA 4A 0D */ bl DSPSendMailToDSP -lbl_803CAFE8: -/* 803CAFE8 003C7F48 4B FA 49 D1 */ bl DSPCheckMailToDSP -/* 803CAFEC 003C7F4C 28 03 00 00 */ cmplwi r3, 0 -/* 803CAFF0 003C7F50 40 82 FF F8 */ bne lbl_803CAFE8 -/* 803CAFF4 003C7F54 80 7F 00 F8 */ lwz r3, 0xf8(r31) -/* 803CAFF8 003C7F58 4B FA 49 F9 */ bl DSPSendMailToDSP -lbl_803CAFFC: -/* 803CAFFC 003C7F5C 4B FA 49 BD */ bl DSPCheckMailToDSP -/* 803CB000 003C7F60 28 03 00 00 */ cmplwi r3, 0 -/* 803CB004 003C7F64 40 82 FF F8 */ bne lbl_803CAFFC -/* 803CB008 003C7F68 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803CB00C 003C7F6C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803CB010 003C7F70 38 21 00 20 */ addi r1, r1, 0x20 -/* 803CB014 003C7F74 7C 08 03 A6 */ mtlr r0 -/* 803CB018 003C7F78 4E 80 00 20 */ blr - -.global __GBADSPTaskDone -__GBADSPTaskDone: -/* 803CB01C 003C7F7C 3C 80 80 57 */ lis r4, lbl_8056A1A0@ha -/* 803CB020 003C7F80 7C 08 02 A6 */ mflr r0 -/* 803CB024 003C7F84 38 84 A1 A0 */ addi r4, r4, lbl_8056A1A0@l -/* 803CB028 003C7F88 90 01 00 04 */ stw r0, 4(r1) -/* 803CB02C 003C7F8C 38 04 00 A8 */ addi r0, r4, 0xa8 -/* 803CB030 003C7F90 7C 00 18 40 */ cmplw r0, r3 -/* 803CB034 003C7F94 94 21 FF F8 */ stwu r1, -8(r1) -/* 803CB038 003C7F98 40 82 00 0C */ bne lbl_803CB044 -/* 803CB03C 003C7F9C 38 00 00 00 */ li r0, 0 -/* 803CB040 003C7FA0 48 00 00 68 */ b lbl_803CB0A8 -lbl_803CB044: -/* 803CB044 003C7FA4 38 84 01 00 */ addi r4, r4, 0x100 -/* 803CB048 003C7FA8 38 04 00 A8 */ addi r0, r4, 0xa8 -/* 803CB04C 003C7FAC 7C 00 18 40 */ cmplw r0, r3 -/* 803CB050 003C7FB0 40 82 00 0C */ bne lbl_803CB05C -/* 803CB054 003C7FB4 38 00 00 01 */ li r0, 1 -/* 803CB058 003C7FB8 48 00 00 50 */ b lbl_803CB0A8 -lbl_803CB05C: -/* 803CB05C 003C7FBC 38 04 01 A8 */ addi r0, r4, 0x1a8 -/* 803CB060 003C7FC0 7C 00 18 40 */ cmplw r0, r3 -/* 803CB064 003C7FC4 38 84 01 00 */ addi r4, r4, 0x100 -/* 803CB068 003C7FC8 40 82 00 0C */ bne lbl_803CB074 -/* 803CB06C 003C7FCC 38 00 00 02 */ li r0, 2 -/* 803CB070 003C7FD0 48 00 00 38 */ b lbl_803CB0A8 -lbl_803CB074: -/* 803CB074 003C7FD4 38 04 01 A8 */ addi r0, r4, 0x1a8 -/* 803CB078 003C7FD8 7C 00 18 40 */ cmplw r0, r3 -/* 803CB07C 003C7FDC 40 82 00 0C */ bne lbl_803CB088 -/* 803CB080 003C7FE0 38 00 00 03 */ li r0, 3 -/* 803CB084 003C7FE4 48 00 00 24 */ b lbl_803CB0A8 -lbl_803CB088: -/* 803CB088 003C7FE8 3C 60 80 3F */ lis r3, lbl_803F7520@ha -/* 803CB08C 003C7FEC 4C C6 31 82 */ crclr 6 -/* 803CB090 003C7FF0 3C 80 80 3F */ lis r4, lbl_803F752C@ha -/* 803CB094 003C7FF4 38 A4 75 2C */ addi r5, r4, lbl_803F752C@l -/* 803CB098 003C7FF8 38 63 75 20 */ addi r3, r3, lbl_803F7520@l -/* 803CB09C 003C7FFC 38 80 00 A9 */ li r4, 0xa9 -/* 803CB0A0 003C8000 4B FB 49 8D */ bl OSPanic -/* 803CB0A4 003C8004 38 00 FF FF */ li r0, -1 -lbl_803CB0A8: -/* 803CB0A8 003C8008 7C 03 03 78 */ mr r3, r0 -/* 803CB0AC 003C800C 38 80 00 00 */ li r4, 0 -/* 803CB0B0 003C8010 4B FF ED B1 */ bl __GBAX01 -/* 803CB0B4 003C8014 80 01 00 0C */ lwz r0, 0xc(r1) -/* 803CB0B8 003C8018 38 21 00 08 */ addi r1, r1, 8 -/* 803CB0BC 003C801C 7C 08 03 A6 */ mtlr r0 -/* 803CB0C0 003C8020 4E 80 00 20 */ blr - -.global __GBAX02 -__GBAX02: -/* 803CB0C4 003C8024 7C 08 02 A6 */ mflr r0 -/* 803CB0C8 003C8028 3C A0 80 57 */ lis r5, lbl_8056A1A0@ha -/* 803CB0CC 003C802C 90 01 00 04 */ stw r0, 4(r1) -/* 803CB0D0 003C8030 38 05 A1 A0 */ addi r0, r5, lbl_8056A1A0@l -/* 803CB0D4 003C8034 54 63 40 2E */ slwi r3, r3, 8 -/* 803CB0D8 003C8038 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803CB0DC 003C803C 38 A0 00 04 */ li r5, 4 -/* 803CB0E0 003C8040 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 803CB0E4 003C8044 7F E0 1A 14 */ add r31, r0, r3 -/* 803CB0E8 003C8048 93 C1 00 18 */ stw r30, 0x18(r1) -/* 803CB0EC 003C804C 3B DF 00 40 */ addi r30, r31, 0x40 -/* 803CB0F0 003C8050 93 A1 00 14 */ stw r29, 0x14(r1) -/* 803CB0F4 003C8054 83 BF 00 F8 */ lwz r29, 0xf8(r31) -/* 803CB0F8 003C8058 38 7D 00 00 */ addi r3, r29, 0 -/* 803CB0FC 003C805C 4B C3 83 95 */ bl memcpy -/* 803CB100 003C8060 80 1E 00 00 */ lwz r0, 0(r30) -/* 803CB104 003C8064 38 7D 00 20 */ addi r3, r29, 0x20 -/* 803CB108 003C8068 38 80 00 20 */ li r4, 0x20 -/* 803CB10C 003C806C 90 1D 00 04 */ stw r0, 4(r29) -/* 803CB110 003C8070 80 1E 00 04 */ lwz r0, 4(r30) -/* 803CB114 003C8074 90 1D 00 08 */ stw r0, 8(r29) -/* 803CB118 003C8078 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 803CB11C 003C807C 90 1D 00 0C */ stw r0, 0xc(r29) -/* 803CB120 003C8080 90 7D 00 10 */ stw r3, 0x10(r29) -/* 803CB124 003C8084 4B FB 39 61 */ bl DCInvalidateRange -/* 803CB128 003C8088 38 7D 00 00 */ addi r3, r29, 0 -/* 803CB12C 003C808C 38 80 00 20 */ li r4, 0x20 -/* 803CB130 003C8090 4B FB 39 81 */ bl DCFlushRange -/* 803CB134 003C8094 38 00 00 FF */ li r0, 0xff -/* 803CB138 003C8098 3C 80 80 3F */ lis r4, lbl_803F71A0@ha -/* 803CB13C 003C809C 90 1F 00 AC */ stw r0, 0xac(r31) -/* 803CB140 003C80A0 38 84 71 A0 */ addi r4, r4, lbl_803F71A0@l -/* 803CB144 003C80A4 3C 04 80 00 */ addis r0, r4, 0x8000 -/* 803CB148 003C80A8 90 1F 00 B4 */ stw r0, 0xb4(r31) -/* 803CB14C 003C80AC 38 00 03 80 */ li r0, 0x380 -/* 803CB150 003C80B0 3C A0 80 3D */ lis r5, __GBADSPTaskInit@ha -/* 803CB154 003C80B4 90 1F 00 B8 */ stw r0, 0xb8(r31) -/* 803CB158 003C80B8 38 C0 00 00 */ li r6, 0 -/* 803CB15C 003C80BC 38 00 00 10 */ li r0, 0x10 -/* 803CB160 003C80C0 90 DF 00 BC */ stw r6, 0xbc(r31) -/* 803CB164 003C80C4 38 A5 AF 40 */ addi r5, r5, __GBADSPTaskInit@l -/* 803CB168 003C80C8 3C 80 80 3D */ lis r4, __GBADSPTaskDone@ha -/* 803CB16C 003C80CC B0 1F 00 CC */ sth r0, 0xcc(r31) -/* 803CB170 003C80D0 38 04 B0 1C */ addi r0, r4, __GBADSPTaskDone@l -/* 803CB174 003C80D4 38 7F 00 A8 */ addi r3, r31, 0xa8 -/* 803CB178 003C80D8 90 BF 00 D0 */ stw r5, 0xd0(r31) -/* 803CB17C 003C80DC 90 DF 00 D4 */ stw r6, 0xd4(r31) -/* 803CB180 003C80E0 90 1F 00 D8 */ stw r0, 0xd8(r31) -/* 803CB184 003C80E4 90 DF 00 DC */ stw r6, 0xdc(r31) -/* 803CB188 003C80E8 4B FA 49 D9 */ bl DSPAddTask -/* 803CB18C 003C80EC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803CB190 003C80F0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 803CB194 003C80F4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 803CB198 003C80F8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 803CB19C 003C80FC 38 21 00 20 */ addi r1, r1, 0x20 -/* 803CB1A0 003C8100 7C 08 03 A6 */ mtlr r0 -/* 803CB1A4 003C8104 4E 80 00 20 */ blr diff --git a/obj_files.mk b/obj_files.mk index a27315f1..a4e5abe4 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -4,7 +4,13 @@ INIT_O_FILES :=\ $(BUILD_DIR)/asm/Runtime/PPCEABI/H/__mem.o TEXT_O_FILES :=\ - $(BUILD_DIR)/asm/text.o + $(BUILD_DIR)/asm/text.o\ + $(BUILD_DIR)/asm/Dolphin/THPDec.o\ + $(BUILD_DIR)/asm/Dolphin/THPAudio.o\ + $(BUILD_DIR)/asm/Dolphin/GBA.o\ + $(BUILD_DIR)/asm/Dolphin/GBARead.o\ + $(BUILD_DIR)/asm/Dolphin/GBAWrite.o\ + $(BUILD_DIR)/asm/Dolphin/GBAXfer.o EXTAB_O_FILES :=\ $(BUILD_DIR)/asm/extab.o diff --git a/tools/calcprogress.py b/tools/calcprogress.py new file mode 100644 index 00000000..1f3f12fd --- /dev/null +++ b/tools/calcprogress.py @@ -0,0 +1,197 @@ +#!/usr/bin/env python3 + +################################################################################ +# Description # +################################################################################ +# calcprogress: Used to calculate the progress of the Metroid Prime decomp. # +# Prints to stdout for now, but eventually will have some form of storage, # +# i.e. CSV, so that it can be used for a webpage display. # +# # +# Usage: No arguments needed # +################################################################################ + + + + +############################################### +# # +# Imports # +# # +############################################### + +import os +import sys +import struct +import re +import math + +############################################### +# # +# Constants # +# # +############################################### + +DOL_PATH = "baserom.dol" +MAP_PATH = "build/mp1.0/MetroidPrime.MAP" + +MEM1_HI = 0x81200000 +MEM1_LO = 0x80004000 + +MW_WII_SYMBOL_REGEX = r"^\s*"\ +r"(?P\w{8})\s+"\ +r"(?P\w{6})\s+"\ +r"(?P\w{8})\s+"\ +r"(?P\w{8})\s+"\ +r"(\w{1,2})\s+"\ +r"(?P[0-9A-Za-z_<>$@.*]*)\s*"\ +r"(?P\S*)" + +MW_GC_SYMBOL_REGEX = r"^\s*"\ +r"(?P\w{8})\s+"\ +r"(?P\w{6})\s+"\ +r"(?P\w{8})\s+"\ +r"(\w{1,2})\s+"\ +r"(?P[0-9A-Za-z_<>$@.*]*)\s*"\ +r"(?P\S*)" + +REGEX_TO_USE = MW_GC_SYMBOL_REGEX + +TEXT_SECTIONS = ["init", "text"] +DATA_SECTIONS = [ +"rodata", "data", "bss", "sdata", "sbss", "sdata2", "sbss2", +"ctors", "_ctors", "dtors", "ctors$99", "_ctors$99", "ctors$00", "dtors$99", +"extab_", "extabindex_", "_extab", "_exidx" +] + +# DOL info +TEXT_SECTION_COUNT = 7 +DATA_SECTION_COUNT = 11 + +SECTION_TEXT = 0 +SECTION_DATA = 1 + +############################################### +# # +# Entrypoint # +# # +############################################### + +if __name__ == "__main__": + # Sum up DOL section sizes + dol_handle = open(DOL_PATH, "rb") + + # Seek to virtual addresses + dol_handle.seek(0x48) + + # Read virtual addresses + text_starts = list() + for i in range(TEXT_SECTION_COUNT): + text_starts.append(int.from_bytes(dol_handle.read(4), byteorder='big')) + data_starts = list() + for i in range(DATA_SECTION_COUNT): + data_starts.append(int.from_bytes(dol_handle.read(4), byteorder='big')) + + # Read lengths + text_sizes = list() + for i in range(TEXT_SECTION_COUNT): + text_sizes.append(int.from_bytes(dol_handle.read(4), byteorder='big')) + data_sizes = list() + for i in range(DATA_SECTION_COUNT): + data_sizes.append(int.from_bytes(dol_handle.read(4), byteorder='big')) + + + + # BSS address + length + bss_start = int.from_bytes(dol_handle.read(4), byteorder='big') + bss_size = int.from_bytes(dol_handle.read(4), byteorder='big') + bss_end = bss_start + bss_size + + + dol_code_size = 0 + dol_data_size = 0 + for i in range(DATA_SECTION_COUNT): + # Ignore sections inside BSS + if (data_starts[i] >= bss_start) and (data_starts[i] + data_sizes[i] <= bss_end): continue + dol_data_size += data_sizes[i] + + dol_data_size += bss_size + + for i in text_sizes: + dol_code_size += i + + # Open map file + mapfile = open(MAP_PATH, "r") + symbols = mapfile.readlines() + + decomp_code_size = 0 + decomp_data_size = 0 + section_type = None + + # Find first section + first_section = 0 + while (symbols[first_section].startswith(".") == False and "section layout" not in symbols[first_section]): first_section += 1 + assert(first_section < len(symbols)), "Map file contains no sections!!!" + + cur_object = None + cur_size = 0 + j = 0 + for i in range(first_section, len(symbols)): + # New section + if (symbols[i].startswith(".") == True or "section layout" in symbols[i]): + # Grab section name (i.e. ".init section layout" -> "init") + sectionName = re.search(r"\.*(?P\w+)\s", symbols[i]).group("Name") + # Determine type of section + section_type = SECTION_DATA if (sectionName in DATA_SECTIONS) else SECTION_TEXT + # Parse symbols until we hit the next section declaration + else: + if "UNUSED" in symbols[i]: continue + if "entry of" in symbols[i]: + if j == i - 1: + if section_type == SECTION_TEXT: + decomp_code_size -= cur_size + else: + decomp_data_size -= cur_size + cur_size = 0 + #print(f"Line* {j}: {symbols[j]}") + #print(f"Line {i}: {symbols[i]}") + continue + assert(section_type != None), f"Symbol found outside of a section!!!\n{symbols[i]}" + match_obj = re.search(REGEX_TO_USE, symbols[i]) + # Should be a symbol in ASM (so we discard it) + if (match_obj == None): + #print(f"Line {i}: {symbols[i]}") + continue + # Has the object file changed? + last_object = cur_object + cur_object = match_obj.group("Object").strip() + if last_object != cur_object: continue + # Is the symbol a file-wide section? + symb = match_obj.group("Symbol") + if (symb.startswith("*fill*")) or (symb.startswith(".") and symb[1:] in TEXT_SECTIONS or symb[1:] in DATA_SECTIONS): continue + # For sections that don't start with "." + if (symb in DATA_SECTIONS): continue + # If not, we accumulate the file size + cur_size = int(match_obj.group("Size"), 16) + j = i + if (section_type == SECTION_TEXT): + decomp_code_size += cur_size + else: + decomp_data_size += cur_size + + # Calculate percentages + codeFrac = 1500 # total code "item" amount + dataFrac = 250 # total data "item" amount + codeItem = "energy" # code flavor item + dataItem = "missiles" # data flavor item + codeCompletionPcnt = (decomp_code_size / dol_code_size) # code completion percent + dataCompletionPcnt = (decomp_data_size / dol_data_size) # data completion percent + bytesPerCodeItem = dol_code_size / codeFrac # bytes per code item + bytesPerDataItem = dol_data_size / dataFrac # bytes per data item + + codeCount = math.floor(decomp_code_size / bytesPerCodeItem) + dataCount = math.floor(decomp_data_size / bytesPerDataItem) + + print("Progress:") + print(f"\tCode sections: {decomp_code_size} / {dol_code_size}\tbytes in src ({codeCompletionPcnt:%})") + print(f"\tData sections: {decomp_data_size} / {dol_data_size}\tbytes in src ({dataCompletionPcnt:%})") + print("\nYou have {} out of {} {} and collected {} out of {} {}.".format(codeCount, codeFrac, codeItem, dataCount, dataFrac, dataItem))