.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global __ct__6GSnullFUc __ct__6GSnullFUc: /* 801F1AE8 001ED748 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801F1AEC 001ED74C 7C 08 02 A6 */ mflr r0 /* 801F1AF0 001ED750 90 01 00 14 */ stw r0, 0x14(r1) /* 801F1AF4 001ED754 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F1AF8 001ED758 7C 9F 23 78 */ mr r31, r4 /* 801F1AFC 001ED75C 38 80 00 00 */ li r4, 0 /* 801F1B00 001ED760 93 C1 00 08 */ stw r30, 8(r1) /* 801F1B04 001ED764 7C 7E 1B 78 */ mr r30, r3 /* 801F1B08 001ED768 4B FE C0 5D */ bl __ct__13GSblendObjectFP10gUnkClass8 /* 801F1B0C 001ED76C C0 22 97 F0 */ lfs f1, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F1B10 001ED770 3C 60 80 42 */ lis r3, lbl_804236C8@ha /* 801F1B14 001ED774 38 80 00 00 */ li r4, 0 /* 801F1B18 001ED778 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F1B1C 001ED77C 38 63 36 C8 */ addi r3, r3, lbl_804236C8@l /* 801F1B20 001ED780 38 A0 00 03 */ li r5, 3 /* 801F1B24 001ED784 38 00 00 07 */ li r0, 7 /* 801F1B28 001ED788 90 7E 01 00 */ stw r3, 0x100(r30) /* 801F1B2C 001ED78C 7F C3 F3 78 */ mr r3, r30 /* 801F1B30 001ED790 B0 BE 00 10 */ sth r5, 0x10(r30) /* 801F1B34 001ED794 9B FE 00 12 */ stb r31, 0x12(r30) /* 801F1B38 001ED798 98 9E 00 13 */ stb r4, 0x13(r30) /* 801F1B3C 001ED79C B0 1E 00 14 */ sth r0, 0x14(r30) /* 801F1B40 001ED7A0 B0 9E 00 16 */ sth r4, 0x16(r30) /* 801F1B44 001ED7A4 98 9E 00 18 */ stb r4, 0x18(r30) /* 801F1B48 001ED7A8 90 9E 00 1C */ stw r4, 0x1c(r30) /* 801F1B4C 001ED7AC D0 3E 00 20 */ stfs f1, 0x20(r30) /* 801F1B50 001ED7B0 D0 3E 00 24 */ stfs f1, 0x24(r30) /* 801F1B54 001ED7B4 D0 3E 00 28 */ stfs f1, 0x28(r30) /* 801F1B58 001ED7B8 D0 3E 00 2C */ stfs f1, 0x2c(r30) /* 801F1B5C 001ED7BC D0 3E 00 30 */ stfs f1, 0x30(r30) /* 801F1B60 001ED7C0 D0 3E 00 34 */ stfs f1, 0x34(r30) /* 801F1B64 001ED7C4 D0 1E 00 38 */ stfs f0, 0x38(r30) /* 801F1B68 001ED7C8 D0 3E 00 3C */ stfs f1, 0x3c(r30) /* 801F1B6C 001ED7CC D0 3E 00 40 */ stfs f1, 0x40(r30) /* 801F1B70 001ED7D0 D0 3E 00 44 */ stfs f1, 0x44(r30) /* 801F1B74 001ED7D4 D0 1E 00 48 */ stfs f0, 0x48(r30) /* 801F1B78 001ED7D8 D0 1E 00 4C */ stfs f0, 0x4c(r30) /* 801F1B7C 001ED7DC D0 1E 00 50 */ stfs f0, 0x50(r30) /* 801F1B80 001ED7E0 90 9E 00 B0 */ stw r4, 0xb0(r30) /* 801F1B84 001ED7E4 90 9E 00 B4 */ stw r4, 0xb4(r30) /* 801F1B88 001ED7E8 90 9E 00 B8 */ stw r4, 0xb8(r30) /* 801F1B8C 001ED7EC 93 DE 00 BC */ stw r30, 0xbc(r30) /* 801F1B90 001ED7F0 90 9E 00 C0 */ stw r4, 0xc0(r30) /* 801F1B94 001ED7F4 90 9E 00 C4 */ stw r4, 0xc4(r30) /* 801F1B98 001ED7F8 90 9E 00 C8 */ stw r4, 0xc8(r30) /* 801F1B9C 001ED7FC 90 9E 00 CC */ stw r4, 0xcc(r30) /* 801F1BA0 001ED800 48 00 05 5D */ bl func_801F20FC /* 801F1BA4 001ED804 38 7E 00 D0 */ addi r3, r30, 0xd0 /* 801F1BA8 001ED808 48 08 A3 85 */ bl PSMTXIdentity /* 801F1BAC 001ED80C 7F C3 F3 78 */ mr r3, r30 /* 801F1BB0 001ED810 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F1BB4 001ED814 83 C1 00 08 */ lwz r30, 8(r1) /* 801F1BB8 001ED818 80 01 00 14 */ lwz r0, 0x14(r1) /* 801F1BBC 001ED81C 7C 08 03 A6 */ mtlr r0 /* 801F1BC0 001ED820 38 21 00 10 */ addi r1, r1, 0x10 /* 801F1BC4 001ED824 4E 80 00 20 */ blr .global __ct__6GSnullFPvP11gUnkClass10 __ct__6GSnullFPvP11gUnkClass10: /* 801F1BC8 001ED828 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F1BCC 001ED82C 7C 08 02 A6 */ mflr r0 /* 801F1BD0 001ED830 90 01 00 24 */ stw r0, 0x24(r1) /* 801F1BD4 001ED834 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801F1BD8 001ED838 7C 9F 23 78 */ mr r31, r4 /* 801F1BDC 001ED83C 93 C1 00 18 */ stw r30, 0x18(r1) /* 801F1BE0 001ED840 7C 7E 1B 78 */ mr r30, r3 /* 801F1BE4 001ED844 93 A1 00 14 */ stw r29, 0x14(r1) /* 801F1BE8 001ED848 93 81 00 10 */ stw r28, 0x10(r1) /* 801F1BEC 001ED84C 7C BC 2B 78 */ mr r28, r5 /* 801F1BF0 001ED850 80 85 00 20 */ lwz r4, 0x20(r5) /* 801F1BF4 001ED854 4B FE BF 71 */ bl __ct__13GSblendObjectFP10gUnkClass8 /* 801F1BF8 001ED858 80 1E 00 08 */ lwz r0, 8(r30) /* 801F1BFC 001ED85C 38 80 00 00 */ li r4, 0 /* 801F1C00 001ED860 C0 22 97 F0 */ lfs f1, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F1C04 001ED864 3C C0 80 42 */ lis r6, lbl_804236C8@ha /* 801F1C08 001ED868 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F1C0C 001ED86C 38 C6 36 C8 */ addi r6, r6, lbl_804236C8@l /* 801F1C10 001ED870 38 A0 00 03 */ li r5, 3 /* 801F1C14 001ED874 38 60 00 07 */ li r3, 7 /* 801F1C18 001ED878 2C 00 00 00 */ cmpwi r0, 0 /* 801F1C1C 001ED87C 90 DE 01 00 */ stw r6, 0x100(r30) /* 801F1C20 001ED880 B0 BE 00 10 */ sth r5, 0x10(r30) /* 801F1C24 001ED884 98 9E 00 12 */ stb r4, 0x12(r30) /* 801F1C28 001ED888 98 9E 00 13 */ stb r4, 0x13(r30) /* 801F1C2C 001ED88C B0 7E 00 14 */ sth r3, 0x14(r30) /* 801F1C30 001ED890 B0 9E 00 16 */ sth r4, 0x16(r30) /* 801F1C34 001ED894 98 9E 00 18 */ stb r4, 0x18(r30) /* 801F1C38 001ED898 93 9E 00 1C */ stw r28, 0x1c(r30) /* 801F1C3C 001ED89C D0 3E 00 20 */ stfs f1, 0x20(r30) /* 801F1C40 001ED8A0 D0 3E 00 24 */ stfs f1, 0x24(r30) /* 801F1C44 001ED8A4 D0 3E 00 28 */ stfs f1, 0x28(r30) /* 801F1C48 001ED8A8 D0 3E 00 2C */ stfs f1, 0x2c(r30) /* 801F1C4C 001ED8AC D0 3E 00 30 */ stfs f1, 0x30(r30) /* 801F1C50 001ED8B0 D0 3E 00 34 */ stfs f1, 0x34(r30) /* 801F1C54 001ED8B4 D0 1E 00 38 */ stfs f0, 0x38(r30) /* 801F1C58 001ED8B8 D0 3E 00 3C */ stfs f1, 0x3c(r30) /* 801F1C5C 001ED8BC D0 3E 00 40 */ stfs f1, 0x40(r30) /* 801F1C60 001ED8C0 D0 3E 00 44 */ stfs f1, 0x44(r30) /* 801F1C64 001ED8C4 D0 1E 00 48 */ stfs f0, 0x48(r30) /* 801F1C68 001ED8C8 D0 1E 00 4C */ stfs f0, 0x4c(r30) /* 801F1C6C 001ED8CC D0 1E 00 50 */ stfs f0, 0x50(r30) /* 801F1C70 001ED8D0 90 9E 00 B0 */ stw r4, 0xb0(r30) /* 801F1C74 001ED8D4 90 9E 00 B4 */ stw r4, 0xb4(r30) /* 801F1C78 001ED8D8 93 FE 00 B8 */ stw r31, 0xb8(r30) /* 801F1C7C 001ED8DC 90 9E 00 BC */ stw r4, 0xbc(r30) /* 801F1C80 001ED8E0 90 9E 00 C0 */ stw r4, 0xc0(r30) /* 801F1C84 001ED8E4 90 9E 00 C4 */ stw r4, 0xc4(r30) /* 801F1C88 001ED8E8 90 9E 00 C8 */ stw r4, 0xc8(r30) /* 801F1C8C 001ED8EC 90 9E 00 CC */ stw r4, 0xcc(r30) /* 801F1C90 001ED8F0 41 82 00 14 */ beq lbl_801F1CA4 /* 801F1C94 001ED8F4 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 801F1C98 001ED8F8 38 80 00 20 */ li r4, 0x20 /* 801F1C9C 001ED8FC 4B FE 8F F9 */ bl func_801DAC94 /* 801F1CA0 001ED900 90 7E 00 B4 */ stw r3, 0xb4(r30) lbl_801F1CA4: /* 801F1CA4 001ED904 80 1C 00 00 */ lwz r0, 0(r28) /* 801F1CA8 001ED908 38 7E 00 D0 */ addi r3, r30, 0xd0 /* 801F1CAC 001ED90C 98 1E 00 12 */ stb r0, 0x12(r30) /* 801F1CB0 001ED910 80 1C 00 18 */ lwz r0, 0x18(r28) /* 801F1CB4 001ED914 90 1E 00 B0 */ stw r0, 0xb0(r30) /* 801F1CB8 001ED918 48 08 A2 75 */ bl PSMTXIdentity /* 801F1CBC 001ED91C 80 0D A1 14 */ lwz r0, lbl_8063F3D4-_SDA_BASE_(r13) /* 801F1CC0 001ED920 2C 00 00 00 */ cmpwi r0, 0 /* 801F1CC4 001ED924 40 82 00 0C */ bne lbl_801F1CD0 /* 801F1CC8 001ED928 7F C0 F3 78 */ mr r0, r30 /* 801F1CCC 001ED92C 93 CD A1 14 */ stw r30, lbl_8063F3D4-_SDA_BASE_(r13) lbl_801F1CD0: /* 801F1CD0 001ED930 88 8D A1 18 */ lbz r4, lbl_8063F3D8-_SDA_BASE_(r13) /* 801F1CD4 001ED934 3F A0 80 42 */ lis r29, 0x8042 /* 801F1CD8 001ED938 90 1E 00 BC */ stw r0, 0xbc(r30) /* 801F1CDC 001ED93C 7C 83 23 78 */ mr r3, r4 /* 801F1CE0 001ED940 98 9E 00 18 */ stb r4, 0x18(r30) /* 801F1CE4 001ED944 38 03 00 01 */ addi r0, r3, 1 /* 801F1CE8 001ED948 98 0D A1 18 */ stb r0, lbl_8063F3D8-_SDA_BASE_(r13) /* 801F1CEC 001ED94C 83 9C 00 24 */ lwz r28, 0x24(r28) /* 801F1CF0 001ED950 48 00 01 E0 */ b lbl_801F1ED0 lbl_801F1CF4: /* 801F1CF4 001ED954 80 1C 00 00 */ lwz r0, 0(r28) /* 801F1CF8 001ED958 28 00 00 07 */ cmplwi r0, 7 /* 801F1CFC 001ED95C 41 81 01 80 */ bgt lbl_801F1E7C /* 801F1D00 001ED960 38 7D 36 A8 */ addi r3, r29, 0x36a8 /* 801F1D04 001ED964 54 00 10 3A */ slwi r0, r0, 2 /* 801F1D08 001ED968 7C 63 00 2E */ lwzx r3, r3, r0 /* 801F1D0C 001ED96C 7C 69 03 A6 */ mtctr r3 /* 801F1D10 001ED970 4E 80 04 20 */ bctr /* 801F1D14 001ED974 4B FE 8E 15 */ bl func_801DAB28 /* 801F1D18 001ED978 2C 03 00 00 */ cmpwi r3, 0 /* 801F1D1C 001ED97C 41 82 00 14 */ beq lbl_801F1D30 /* 801F1D20 001ED980 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1D24 001ED984 38 80 01 8C */ li r4, 0x18c /* 801F1D28 001ED988 4B FE 8F 6D */ bl func_801DAC94 /* 801F1D2C 001ED98C 48 00 00 08 */ b lbl_801F1D34 lbl_801F1D30: /* 801F1D30 001ED990 38 60 00 00 */ li r3, 0 lbl_801F1D34: /* 801F1D34 001ED994 2C 03 00 00 */ cmpwi r3, 0 /* 801F1D38 001ED998 41 82 00 10 */ beq lbl_801F1D48 /* 801F1D3C 001ED99C 7F E4 FB 78 */ mr r4, r31 /* 801F1D40 001ED9A0 7F 85 E3 78 */ mr r5, r28 /* 801F1D44 001ED9A4 4B FF E1 CD */ bl func_801EFF10 lbl_801F1D48: /* 801F1D48 001ED9A8 7C 64 1B 78 */ mr r4, r3 /* 801F1D4C 001ED9AC 48 00 01 68 */ b lbl_801F1EB4 /* 801F1D50 001ED9B0 4B FE 8D D9 */ bl func_801DAB28 /* 801F1D54 001ED9B4 2C 03 00 00 */ cmpwi r3, 0 /* 801F1D58 001ED9B8 41 82 00 14 */ beq lbl_801F1D6C /* 801F1D5C 001ED9BC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1D60 001ED9C0 38 80 02 64 */ li r4, 0x264 /* 801F1D64 001ED9C4 4B FE 8F 31 */ bl func_801DAC94 /* 801F1D68 001ED9C8 48 00 00 08 */ b lbl_801F1D70 lbl_801F1D6C: /* 801F1D6C 001ED9CC 38 60 00 00 */ li r3, 0 lbl_801F1D70: /* 801F1D70 001ED9D0 2C 03 00 00 */ cmpwi r3, 0 /* 801F1D74 001ED9D4 41 82 00 10 */ beq lbl_801F1D84 /* 801F1D78 001ED9D8 7F E4 FB 78 */ mr r4, r31 /* 801F1D7C 001ED9DC 7F 85 E3 78 */ mr r5, r28 /* 801F1D80 001ED9E0 4B FE C3 05 */ bl __ct__8GScameraFPvP11gUnkClass10 lbl_801F1D84: /* 801F1D84 001ED9E4 7C 64 1B 78 */ mr r4, r3 /* 801F1D88 001ED9E8 48 00 01 2C */ b lbl_801F1EB4 /* 801F1D8C 001ED9EC 4B FE 8D 9D */ bl func_801DAB28 /* 801F1D90 001ED9F0 2C 03 00 00 */ cmpwi r3, 0 /* 801F1D94 001ED9F4 41 82 00 14 */ beq lbl_801F1DA8 /* 801F1D98 001ED9F8 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1D9C 001ED9FC 38 80 01 88 */ li r4, 0x188 /* 801F1DA0 001EDA00 4B FE 8E F5 */ bl func_801DAC94 /* 801F1DA4 001EDA04 48 00 00 08 */ b lbl_801F1DAC lbl_801F1DA8: /* 801F1DA8 001EDA08 38 60 00 00 */ li r3, 0 lbl_801F1DAC: /* 801F1DAC 001EDA0C 2C 03 00 00 */ cmpwi r3, 0 /* 801F1DB0 001EDA10 41 82 00 10 */ beq lbl_801F1DC0 /* 801F1DB4 001EDA14 7F E4 FB 78 */ mr r4, r31 /* 801F1DB8 001EDA18 7F 85 E3 78 */ mr r5, r28 /* 801F1DBC 001EDA1C 4B FF 25 A5 */ bl func_801E4360 lbl_801F1DC0: /* 801F1DC0 001EDA20 7C 64 1B 78 */ mr r4, r3 /* 801F1DC4 001EDA24 48 00 00 F0 */ b lbl_801F1EB4 /* 801F1DC8 001EDA28 4B FE 8D 61 */ bl func_801DAB28 /* 801F1DCC 001EDA2C 2C 03 00 00 */ cmpwi r3, 0 /* 801F1DD0 001EDA30 41 82 00 14 */ beq lbl_801F1DE4 /* 801F1DD4 001EDA34 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1DD8 001EDA38 38 80 01 38 */ li r4, 0x138 /* 801F1DDC 001EDA3C 4B FE 8E B9 */ bl func_801DAC94 /* 801F1DE0 001EDA40 48 00 00 08 */ b lbl_801F1DE8 lbl_801F1DE4: /* 801F1DE4 001EDA44 38 60 00 00 */ li r3, 0 lbl_801F1DE8: /* 801F1DE8 001EDA48 2C 03 00 00 */ cmpwi r3, 0 /* 801F1DEC 001EDA4C 41 82 00 10 */ beq lbl_801F1DFC /* 801F1DF0 001EDA50 7F E4 FB 78 */ mr r4, r31 /* 801F1DF4 001EDA54 7F 85 E3 78 */ mr r5, r28 /* 801F1DF8 001EDA58 4B FF 43 51 */ bl func_801E6148 lbl_801F1DFC: /* 801F1DFC 001EDA5C 7C 64 1B 78 */ mr r4, r3 /* 801F1E00 001EDA60 48 00 00 B4 */ b lbl_801F1EB4 /* 801F1E04 001EDA64 4B FE 8D 25 */ bl func_801DAB28 /* 801F1E08 001EDA68 2C 03 00 00 */ cmpwi r3, 0 /* 801F1E0C 001EDA6C 41 82 00 14 */ beq lbl_801F1E20 /* 801F1E10 001EDA70 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1E14 001EDA74 38 80 01 40 */ li r4, 0x140 /* 801F1E18 001EDA78 4B FE 8E 7D */ bl func_801DAC94 /* 801F1E1C 001EDA7C 48 00 00 08 */ b lbl_801F1E24 lbl_801F1E20: /* 801F1E20 001EDA80 38 60 00 00 */ li r3, 0 lbl_801F1E24: /* 801F1E24 001EDA84 2C 03 00 00 */ cmpwi r3, 0 /* 801F1E28 001EDA88 41 82 00 10 */ beq lbl_801F1E38 /* 801F1E2C 001EDA8C 7F E4 FB 78 */ mr r4, r31 /* 801F1E30 001EDA90 7F 85 E3 78 */ mr r5, r28 /* 801F1E34 001EDA94 48 00 7B 61 */ bl func_801F9994 lbl_801F1E38: /* 801F1E38 001EDA98 7C 64 1B 78 */ mr r4, r3 /* 801F1E3C 001EDA9C 48 00 00 78 */ b lbl_801F1EB4 /* 801F1E40 001EDAA0 4B FE 8C E9 */ bl func_801DAB28 /* 801F1E44 001EDAA4 2C 03 00 00 */ cmpwi r3, 0 /* 801F1E48 001EDAA8 41 82 00 14 */ beq lbl_801F1E5C /* 801F1E4C 001EDAAC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1E50 001EDAB0 38 80 01 48 */ li r4, 0x148 /* 801F1E54 001EDAB4 4B FE 8E 41 */ bl func_801DAC94 /* 801F1E58 001EDAB8 48 00 00 08 */ b lbl_801F1E60 lbl_801F1E5C: /* 801F1E5C 001EDABC 38 60 00 00 */ li r3, 0 lbl_801F1E60: /* 801F1E60 001EDAC0 2C 03 00 00 */ cmpwi r3, 0 /* 801F1E64 001EDAC4 41 82 00 10 */ beq lbl_801F1E74 /* 801F1E68 001EDAC8 7F E4 FB 78 */ mr r4, r31 /* 801F1E6C 001EDACC 7F 85 E3 78 */ mr r5, r28 /* 801F1E70 001EDAD0 4B FE D1 D1 */ bl func_801DF040 lbl_801F1E74: /* 801F1E74 001EDAD4 7C 64 1B 78 */ mr r4, r3 /* 801F1E78 001EDAD8 48 00 00 3C */ b lbl_801F1EB4 lbl_801F1E7C: /* 801F1E7C 001EDADC 4B FE 8C AD */ bl func_801DAB28 /* 801F1E80 001EDAE0 2C 03 00 00 */ cmpwi r3, 0 /* 801F1E84 001EDAE4 41 82 00 14 */ beq lbl_801F1E98 /* 801F1E88 001EDAE8 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F1E8C 001EDAEC 38 80 01 04 */ li r4, 0x104 /* 801F1E90 001EDAF0 4B FE 8E 05 */ bl func_801DAC94 /* 801F1E94 001EDAF4 48 00 00 08 */ b lbl_801F1E9C lbl_801F1E98: /* 801F1E98 001EDAF8 38 60 00 00 */ li r3, 0 lbl_801F1E9C: /* 801F1E9C 001EDAFC 2C 03 00 00 */ cmpwi r3, 0 /* 801F1EA0 001EDB00 41 82 00 10 */ beq lbl_801F1EB0 /* 801F1EA4 001EDB04 7F E4 FB 78 */ mr r4, r31 /* 801F1EA8 001EDB08 7F 85 E3 78 */ mr r5, r28 /* 801F1EAC 001EDB0C 4B FF FD 1D */ bl __ct__6GSnullFPvP11gUnkClass10 lbl_801F1EB0: /* 801F1EB0 001EDB10 7C 64 1B 78 */ mr r4, r3 lbl_801F1EB4: /* 801F1EB4 001EDB14 2C 04 00 00 */ cmpwi r4, 0 /* 801F1EB8 001EDB18 41 82 00 14 */ beq lbl_801F1ECC /* 801F1EBC 001EDB1C 7F C3 F3 78 */ mr r3, r30 /* 801F1EC0 001EDB20 38 A0 00 00 */ li r5, 0 /* 801F1EC4 001EDB24 38 C0 00 03 */ li r6, 3 /* 801F1EC8 001EDB28 48 00 04 B1 */ bl func_801F2378 lbl_801F1ECC: /* 801F1ECC 001EDB2C 83 9C 00 28 */ lwz r28, 0x28(r28) lbl_801F1ED0: /* 801F1ED0 001EDB30 2C 1C 00 00 */ cmpwi r28, 0 /* 801F1ED4 001EDB34 40 82 FE 20 */ bne lbl_801F1CF4 /* 801F1ED8 001EDB38 88 6D A1 18 */ lbz r3, lbl_8063F3D8-_SDA_BASE_(r13) /* 801F1EDC 001EDB3C 80 0D A1 14 */ lwz r0, lbl_8063F3D4-_SDA_BASE_(r13) /* 801F1EE0 001EDB40 38 63 FF FF */ addi r3, r3, -1 /* 801F1EE4 001EDB44 7C 00 F0 40 */ cmplw r0, r30 /* 801F1EE8 001EDB48 98 6D A1 18 */ stb r3, lbl_8063F3D8-_SDA_BASE_(r13) /* 801F1EEC 001EDB4C 40 82 00 14 */ bne lbl_801F1F00 /* 801F1EF0 001EDB50 7F C3 F3 78 */ mr r3, r30 /* 801F1EF4 001EDB54 48 00 02 09 */ bl func_801F20FC /* 801F1EF8 001EDB58 38 00 00 00 */ li r0, 0 /* 801F1EFC 001EDB5C 90 0D A1 14 */ stw r0, lbl_8063F3D4-_SDA_BASE_(r13) lbl_801F1F00: /* 801F1F00 001EDB60 7F C3 F3 78 */ mr r3, r30 /* 801F1F04 001EDB64 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801F1F08 001EDB68 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801F1F0C 001EDB6C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801F1F10 001EDB70 83 81 00 10 */ lwz r28, 0x10(r1) /* 801F1F14 001EDB74 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F1F18 001EDB78 7C 08 03 A6 */ mtlr r0 /* 801F1F1C 001EDB7C 38 21 00 20 */ addi r1, r1, 0x20 /* 801F1F20 001EDB80 4E 80 00 20 */ blr .global __dt__6GSnullFv __dt__6GSnullFv: /* 801F1F24 001EDB84 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F1F28 001EDB88 7C 08 02 A6 */ mflr r0 /* 801F1F2C 001EDB8C 2C 03 00 00 */ cmpwi r3, 0 /* 801F1F30 001EDB90 90 01 00 24 */ stw r0, 0x24(r1) /* 801F1F34 001EDB94 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801F1F38 001EDB98 93 C1 00 18 */ stw r30, 0x18(r1) /* 801F1F3C 001EDB9C 93 A1 00 14 */ stw r29, 0x14(r1) /* 801F1F40 001EDBA0 7C 9D 23 78 */ mr r29, r4 /* 801F1F44 001EDBA4 93 81 00 10 */ stw r28, 0x10(r1) /* 801F1F48 001EDBA8 7C 7C 1B 78 */ mr r28, r3 /* 801F1F4C 001EDBAC 41 82 00 D4 */ beq lbl_801F2020 /* 801F1F50 001EDBB0 3C 80 80 42 */ lis r4, lbl_804236C8@ha /* 801F1F54 001EDBB4 80 A3 00 CC */ lwz r5, 0xcc(r3) /* 801F1F58 001EDBB8 38 84 36 C8 */ addi r4, r4, lbl_804236C8@l /* 801F1F5C 001EDBBC 3B E0 00 00 */ li r31, 0 /* 801F1F60 001EDBC0 90 83 01 00 */ stw r4, 0x100(r3) /* 801F1F64 001EDBC4 48 00 00 64 */ b lbl_801F1FC8 lbl_801F1F68: /* 801F1F68 001EDBC8 80 65 00 BC */ lwz r3, 0xbc(r5) /* 801F1F6C 001EDBCC 80 1C 00 BC */ lwz r0, 0xbc(r28) /* 801F1F70 001EDBD0 83 C5 00 C4 */ lwz r30, 0xc4(r5) /* 801F1F74 001EDBD4 7C 03 00 40 */ cmplw r3, r0 /* 801F1F78 001EDBD8 40 82 00 28 */ bne lbl_801F1FA0 /* 801F1F7C 001EDBDC 2C 05 00 00 */ cmpwi r5, 0 /* 801F1F80 001EDBE0 41 82 00 44 */ beq lbl_801F1FC4 /* 801F1F84 001EDBE4 81 85 01 00 */ lwz r12, 0x100(r5) /* 801F1F88 001EDBE8 7C A3 2B 78 */ mr r3, r5 /* 801F1F8C 001EDBEC 38 80 00 01 */ li r4, 1 /* 801F1F90 001EDBF0 81 8C 00 08 */ lwz r12, 8(r12) /* 801F1F94 001EDBF4 7D 89 03 A6 */ mtctr r12 /* 801F1F98 001EDBF8 4E 80 04 21 */ bctrl /* 801F1F9C 001EDBFC 48 00 00 28 */ b lbl_801F1FC4 lbl_801F1FA0: /* 801F1FA0 001EDC00 93 E5 00 C8 */ stw r31, 0xc8(r5) /* 801F1FA4 001EDC04 93 E5 00 C4 */ stw r31, 0xc4(r5) /* 801F1FA8 001EDC08 93 E5 00 C0 */ stw r31, 0xc0(r5) /* 801F1FAC 001EDC0C 80 1C 00 CC */ lwz r0, 0xcc(r28) /* 801F1FB0 001EDC10 7C 00 28 40 */ cmplw r0, r5 /* 801F1FB4 001EDC14 40 82 00 08 */ bne lbl_801F1FBC /* 801F1FB8 001EDC18 93 DC 00 CC */ stw r30, 0xcc(r28) lbl_801F1FBC: /* 801F1FBC 001EDC1C 7C A3 2B 78 */ mr r3, r5 /* 801F1FC0 001EDC20 48 00 01 3D */ bl func_801F20FC lbl_801F1FC4: /* 801F1FC4 001EDC24 7F C5 F3 78 */ mr r5, r30 lbl_801F1FC8: /* 801F1FC8 001EDC28 2C 05 00 00 */ cmpwi r5, 0 /* 801F1FCC 001EDC2C 40 82 FF 9C */ bne lbl_801F1F68 /* 801F1FD0 001EDC30 80 7C 00 C0 */ lwz r3, 0xc0(r28) /* 801F1FD4 001EDC34 2C 03 00 00 */ cmpwi r3, 0 /* 801F1FD8 001EDC38 41 82 00 0C */ beq lbl_801F1FE4 /* 801F1FDC 001EDC3C 7F 84 E3 78 */ mr r4, r28 /* 801F1FE0 001EDC40 48 00 05 AD */ bl func_801F258C lbl_801F1FE4: /* 801F1FE4 001EDC44 7F 83 E3 78 */ mr r3, r28 /* 801F1FE8 001EDC48 48 00 01 61 */ bl func_801F2148 /* 801F1FEC 001EDC4C 80 9C 00 B4 */ lwz r4, 0xb4(r28) /* 801F1FF0 001EDC50 2C 04 00 00 */ cmpwi r4, 0 /* 801F1FF4 001EDC54 41 82 00 0C */ beq lbl_801F2000 /* 801F1FF8 001EDC58 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 801F1FFC 001EDC5C 4B FE 8D 4D */ bl func_801DAD48 lbl_801F2000: /* 801F2000 001EDC60 7F 83 E3 78 */ mr r3, r28 /* 801F2004 001EDC64 38 80 00 00 */ li r4, 0 /* 801F2008 001EDC68 4B FE BC 01 */ bl __dt__13GSblendObjectFv /* 801F200C 001EDC6C 2C 1D 00 00 */ cmpwi r29, 0 /* 801F2010 001EDC70 40 81 00 10 */ ble lbl_801F2020 /* 801F2014 001EDC74 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 801F2018 001EDC78 7F 84 E3 78 */ mr r4, r28 /* 801F201C 001EDC7C 4B FE 8D 2D */ bl func_801DAD48 lbl_801F2020: /* 801F2020 001EDC80 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801F2024 001EDC84 7F 83 E3 78 */ mr r3, r28 /* 801F2028 001EDC88 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801F202C 001EDC8C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801F2030 001EDC90 83 81 00 10 */ lwz r28, 0x10(r1) /* 801F2034 001EDC94 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F2038 001EDC98 7C 08 03 A6 */ mtlr r0 /* 801F203C 001EDC9C 38 21 00 20 */ addi r1, r1, 0x20 /* 801F2040 001EDCA0 4E 80 00 20 */ blr .global func_801F2044 func_801F2044: /* 801F2044 001EDCA4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801F2048 001EDCA8 7C 08 02 A6 */ mflr r0 /* 801F204C 001EDCAC 90 01 00 14 */ stw r0, 0x14(r1) /* 801F2050 001EDCB0 80 03 00 B8 */ lwz r0, 0xb8(r3) /* 801F2054 001EDCB4 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F2058 001EDCB8 7C 7F 1B 78 */ mr r31, r3 /* 801F205C 001EDCBC 2C 00 00 00 */ cmpwi r0, 0 /* 801F2060 001EDCC0 40 82 00 0C */ bne lbl_801F206C /* 801F2064 001EDCC4 38 60 00 00 */ li r3, 0 /* 801F2068 001EDCC8 48 00 00 30 */ b lbl_801F2098 lbl_801F206C: /* 801F206C 001EDCCC 48 00 00 41 */ bl func_801F20AC /* 801F2070 001EDCD0 48 00 00 1C */ b lbl_801F208C lbl_801F2074: /* 801F2074 001EDCD4 80 83 00 B8 */ lwz r4, 0xb8(r3) /* 801F2078 001EDCD8 80 1F 00 B8 */ lwz r0, 0xb8(r31) /* 801F207C 001EDCDC 7C 04 00 40 */ cmplw r4, r0 /* 801F2080 001EDCE0 40 82 00 08 */ bne lbl_801F2088 /* 801F2084 001EDCE4 48 00 00 14 */ b lbl_801F2098 lbl_801F2088: /* 801F2088 001EDCE8 48 00 00 25 */ bl func_801F20AC lbl_801F208C: /* 801F208C 001EDCEC 2C 03 00 00 */ cmpwi r3, 0 /* 801F2090 001EDCF0 40 82 FF E4 */ bne lbl_801F2074 /* 801F2094 001EDCF4 38 60 00 00 */ li r3, 0 lbl_801F2098: /* 801F2098 001EDCF8 80 01 00 14 */ lwz r0, 0x14(r1) /* 801F209C 001EDCFC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F20A0 001EDD00 7C 08 03 A6 */ mtlr r0 /* 801F20A4 001EDD04 38 21 00 10 */ addi r1, r1, 0x10 /* 801F20A8 001EDD08 4E 80 00 20 */ blr .global func_801F20AC func_801F20AC: /* 801F20AC 001EDD0C 80 03 00 CC */ lwz r0, 0xcc(r3) /* 801F20B0 001EDD10 2C 00 00 00 */ cmpwi r0, 0 /* 801F20B4 001EDD14 41 82 00 0C */ beq lbl_801F20C0 /* 801F20B8 001EDD18 7C 03 03 78 */ mr r3, r0 /* 801F20BC 001EDD1C 4E 80 00 20 */ blr lbl_801F20C0: /* 801F20C0 001EDD20 80 03 00 C4 */ lwz r0, 0xc4(r3) /* 801F20C4 001EDD24 2C 00 00 00 */ cmpwi r0, 0 /* 801F20C8 001EDD28 41 82 00 0C */ beq lbl_801F20D4 /* 801F20CC 001EDD2C 7C 03 03 78 */ mr r3, r0 /* 801F20D0 001EDD30 4E 80 00 20 */ blr lbl_801F20D4: /* 801F20D4 001EDD34 80 83 00 C0 */ lwz r4, 0xc0(r3) /* 801F20D8 001EDD38 48 00 00 14 */ b lbl_801F20EC lbl_801F20DC: /* 801F20DC 001EDD3C 80 64 00 C4 */ lwz r3, 0xc4(r4) /* 801F20E0 001EDD40 2C 03 00 00 */ cmpwi r3, 0 /* 801F20E4 001EDD44 4C 82 00 20 */ bnelr /* 801F20E8 001EDD48 80 84 00 C0 */ lwz r4, 0xc0(r4) lbl_801F20EC: /* 801F20EC 001EDD4C 2C 04 00 00 */ cmpwi r4, 0 /* 801F20F0 001EDD50 40 82 FF EC */ bne lbl_801F20DC /* 801F20F4 001EDD54 38 60 00 00 */ li r3, 0 /* 801F20F8 001EDD58 4E 80 00 20 */ blr .global func_801F20FC func_801F20FC: /* 801F20FC 001EDD5C 80 8D A1 10 */ lwz r4, lbl_8063F3D0-_SDA_BASE_(r13) /* 801F2100 001EDD60 2C 04 00 00 */ cmpwi r4, 0 /* 801F2104 001EDD64 41 82 00 20 */ beq lbl_801F2124 /* 801F2108 001EDD68 48 00 00 10 */ b lbl_801F2118 lbl_801F210C: /* 801F210C 001EDD6C 7C 03 00 40 */ cmplw r3, r0 /* 801F2110 001EDD70 4D 82 00 20 */ beqlr /* 801F2114 001EDD74 7C 04 03 78 */ mr r4, r0 lbl_801F2118: /* 801F2118 001EDD78 80 04 00 C4 */ lwz r0, 0xc4(r4) /* 801F211C 001EDD7C 2C 00 00 00 */ cmpwi r0, 0 /* 801F2120 001EDD80 40 82 FF EC */ bne lbl_801F210C lbl_801F2124: /* 801F2124 001EDD84 2C 04 00 00 */ cmpwi r4, 0 /* 801F2128 001EDD88 41 82 00 0C */ beq lbl_801F2134 /* 801F212C 001EDD8C 90 64 00 C4 */ stw r3, 0xc4(r4) /* 801F2130 001EDD90 48 00 00 08 */ b lbl_801F2138 lbl_801F2134: /* 801F2134 001EDD94 90 6D A1 10 */ stw r3, lbl_8063F3D0-_SDA_BASE_(r13) lbl_801F2138: /* 801F2138 001EDD98 38 00 00 00 */ li r0, 0 /* 801F213C 001EDD9C 90 83 00 C8 */ stw r4, 0xc8(r3) /* 801F2140 001EDDA0 90 03 00 C4 */ stw r0, 0xc4(r3) /* 801F2144 001EDDA4 4E 80 00 20 */ blr .global func_801F2148 func_801F2148: /* 801F2148 001EDDA8 80 83 00 C8 */ lwz r4, 0xc8(r3) /* 801F214C 001EDDAC 80 A3 00 C4 */ lwz r5, 0xc4(r3) /* 801F2150 001EDDB0 2C 04 00 00 */ cmpwi r4, 0 /* 801F2154 001EDDB4 41 82 00 0C */ beq lbl_801F2160 /* 801F2158 001EDDB8 90 A4 00 C4 */ stw r5, 0xc4(r4) /* 801F215C 001EDDBC 48 00 00 14 */ b lbl_801F2170 lbl_801F2160: /* 801F2160 001EDDC0 80 0D A1 10 */ lwz r0, lbl_8063F3D0-_SDA_BASE_(r13) /* 801F2164 001EDDC4 7C 00 18 40 */ cmplw r0, r3 /* 801F2168 001EDDC8 40 82 00 08 */ bne lbl_801F2170 /* 801F216C 001EDDCC 90 AD A1 10 */ stw r5, lbl_8063F3D0-_SDA_BASE_(r13) lbl_801F2170: /* 801F2170 001EDDD0 2C 05 00 00 */ cmpwi r5, 0 /* 801F2174 001EDDD4 41 82 00 08 */ beq lbl_801F217C /* 801F2178 001EDDD8 90 85 00 C8 */ stw r4, 0xc8(r5) lbl_801F217C: /* 801F217C 001EDDDC 38 00 00 00 */ li r0, 0 /* 801F2180 001EDDE0 90 03 00 C8 */ stw r0, 0xc8(r3) /* 801F2184 001EDDE4 90 03 00 C4 */ stw r0, 0xc4(r3) /* 801F2188 001EDDE8 4E 80 00 20 */ blr .global func_801F218C func_801F218C: /* 801F218C 001EDDEC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801F2190 001EDDF0 7C 08 02 A6 */ mflr r0 /* 801F2194 001EDDF4 90 01 00 14 */ stw r0, 0x14(r1) /* 801F2198 001EDDF8 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F219C 001EDDFC 7C BF 2B 78 */ mr r31, r5 /* 801F21A0 001EDE00 93 C1 00 08 */ stw r30, 8(r1) /* 801F21A4 001EDE04 7C 9E 23 78 */ mr r30, r4 /* 801F21A8 001EDE08 80 05 00 BC */ lwz r0, 0xbc(r5) /* 801F21AC 001EDE0C 7C 00 28 40 */ cmplw r0, r5 /* 801F21B0 001EDE10 40 82 00 14 */ bne lbl_801F21C4 /* 801F21B4 001EDE14 80 83 00 B8 */ lwz r4, 0xb8(r3) /* 801F21B8 001EDE18 80 05 00 B8 */ lwz r0, 0xb8(r5) /* 801F21BC 001EDE1C 7C 04 00 40 */ cmplw r4, r0 /* 801F21C0 001EDE20 40 82 00 0C */ bne lbl_801F21CC lbl_801F21C4: /* 801F21C4 001EDE24 38 60 00 00 */ li r3, 0 /* 801F21C8 001EDE28 48 00 00 48 */ b lbl_801F2210 lbl_801F21CC: /* 801F21CC 001EDE2C 7C 64 1B 78 */ mr r4, r3 /* 801F21D0 001EDE30 48 00 00 18 */ b lbl_801F21E8 lbl_801F21D4: /* 801F21D4 001EDE34 7C 04 28 40 */ cmplw r4, r5 /* 801F21D8 001EDE38 40 82 00 0C */ bne lbl_801F21E4 /* 801F21DC 001EDE3C 38 60 00 00 */ li r3, 0 /* 801F21E0 001EDE40 48 00 00 30 */ b lbl_801F2210 lbl_801F21E4: /* 801F21E4 001EDE44 80 84 00 C0 */ lwz r4, 0xc0(r4) lbl_801F21E8: /* 801F21E8 001EDE48 2C 04 00 00 */ cmpwi r4, 0 /* 801F21EC 001EDE4C 40 82 FF E8 */ bne lbl_801F21D4 /* 801F21F0 001EDE50 7C C5 33 78 */ mr r5, r6 /* 801F21F4 001EDE54 7F E4 FB 78 */ mr r4, r31 /* 801F21F8 001EDE58 7C E6 3B 78 */ mr r6, r7 /* 801F21FC 001EDE5C 48 00 01 7D */ bl func_801F2378 /* 801F2200 001EDE60 38 00 00 00 */ li r0, 0 /* 801F2204 001EDE64 B3 DF 00 14 */ sth r30, 0x14(r31) /* 801F2208 001EDE68 38 60 00 01 */ li r3, 1 /* 801F220C 001EDE6C 98 1F 00 13 */ stb r0, 0x13(r31) lbl_801F2210: /* 801F2210 001EDE70 80 01 00 14 */ lwz r0, 0x14(r1) /* 801F2214 001EDE74 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F2218 001EDE78 83 C1 00 08 */ lwz r30, 8(r1) /* 801F221C 001EDE7C 7C 08 03 A6 */ mtlr r0 /* 801F2220 001EDE80 38 21 00 10 */ addi r1, r1, 0x10 /* 801F2224 001EDE84 4E 80 00 20 */ blr .global func_801F2228 func_801F2228: /* 801F2228 001EDE88 80 04 00 BC */ lwz r0, 0xbc(r4) /* 801F222C 001EDE8C 7C 00 20 40 */ cmplw r0, r4 /* 801F2230 001EDE90 4C 82 00 20 */ bnelr /* 801F2234 001EDE94 80 A3 00 B8 */ lwz r5, 0xb8(r3) /* 801F2238 001EDE98 80 04 00 B8 */ lwz r0, 0xb8(r4) /* 801F223C 001EDE9C 7C 05 00 40 */ cmplw r5, r0 /* 801F2240 001EDEA0 40 82 00 08 */ bne lbl_801F2248 /* 801F2244 001EDEA4 4E 80 00 20 */ blr lbl_801F2248: /* 801F2248 001EDEA8 48 00 03 44 */ b func_801F258C /* 801F224C 001EDEAC 4E 80 00 20 */ blr .global func_801F2250 func_801F2250: /* 801F2250 001EDEB0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801F2254 001EDEB4 7C 08 02 A6 */ mflr r0 /* 801F2258 001EDEB8 90 01 00 14 */ stw r0, 0x14(r1) /* 801F225C 001EDEBC 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F2260 001EDEC0 93 C1 00 08 */ stw r30, 8(r1) /* 801F2264 001EDEC4 7C 9E 23 78 */ mr r30, r4 /* 801F2268 001EDEC8 80 03 00 B8 */ lwz r0, 0xb8(r3) /* 801F226C 001EDECC 7C 00 28 40 */ cmplw r0, r5 /* 801F2270 001EDED0 40 82 00 0C */ bne lbl_801F227C /* 801F2274 001EDED4 38 60 00 00 */ li r3, 0 /* 801F2278 001EDED8 48 00 00 90 */ b lbl_801F2308 lbl_801F227C: /* 801F227C 001EDEDC 80 85 00 08 */ lwz r4, 8(r5) /* 801F2280 001EDEE0 2C 04 00 00 */ cmpwi r4, 0 /* 801F2284 001EDEE4 40 82 00 0C */ bne lbl_801F2290 /* 801F2288 001EDEE8 3B E0 00 00 */ li r31, 0 /* 801F228C 001EDEEC 48 00 00 1C */ b lbl_801F22A8 lbl_801F2290: /* 801F2290 001EDEF0 A0 05 00 DE */ lhz r0, 0xde(r5) /* 801F2294 001EDEF4 2C 00 00 00 */ cmpwi r0, 0 /* 801F2298 001EDEF8 40 82 00 0C */ bne lbl_801F22A4 /* 801F229C 001EDEFC 3B E0 00 00 */ li r31, 0 /* 801F22A0 001EDF00 48 00 00 08 */ b lbl_801F22A8 lbl_801F22A4: /* 801F22A4 001EDF04 83 E4 00 00 */ lwz r31, 0(r4) lbl_801F22A8: /* 801F22A8 001EDF08 2C 1F 00 00 */ cmpwi r31, 0 /* 801F22AC 001EDF0C 41 82 00 10 */ beq lbl_801F22BC /* 801F22B0 001EDF10 80 1F 00 BC */ lwz r0, 0xbc(r31) /* 801F22B4 001EDF14 7C 00 F8 40 */ cmplw r0, r31 /* 801F22B8 001EDF18 41 82 00 0C */ beq lbl_801F22C4 lbl_801F22BC: /* 801F22BC 001EDF1C 38 60 00 00 */ li r3, 0 /* 801F22C0 001EDF20 48 00 00 48 */ b lbl_801F2308 lbl_801F22C4: /* 801F22C4 001EDF24 7C 64 1B 78 */ mr r4, r3 /* 801F22C8 001EDF28 48 00 00 18 */ b lbl_801F22E0 lbl_801F22CC: /* 801F22CC 001EDF2C 7C 04 F8 40 */ cmplw r4, r31 /* 801F22D0 001EDF30 40 82 00 0C */ bne lbl_801F22DC /* 801F22D4 001EDF34 38 60 00 00 */ li r3, 0 /* 801F22D8 001EDF38 48 00 00 30 */ b lbl_801F2308 lbl_801F22DC: /* 801F22DC 001EDF3C 80 84 00 C0 */ lwz r4, 0xc0(r4) lbl_801F22E0: /* 801F22E0 001EDF40 2C 04 00 00 */ cmpwi r4, 0 /* 801F22E4 001EDF44 40 82 FF E8 */ bne lbl_801F22CC /* 801F22E8 001EDF48 7C C5 33 78 */ mr r5, r6 /* 801F22EC 001EDF4C 7F E4 FB 78 */ mr r4, r31 /* 801F22F0 001EDF50 7C E6 3B 78 */ mr r6, r7 /* 801F22F4 001EDF54 48 00 00 85 */ bl func_801F2378 /* 801F22F8 001EDF58 B3 DF 00 14 */ sth r30, 0x14(r31) /* 801F22FC 001EDF5C 38 00 00 00 */ li r0, 0 /* 801F2300 001EDF60 38 60 00 01 */ li r3, 1 /* 801F2304 001EDF64 98 1F 00 13 */ stb r0, 0x13(r31) lbl_801F2308: /* 801F2308 001EDF68 80 01 00 14 */ lwz r0, 0x14(r1) /* 801F230C 001EDF6C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F2310 001EDF70 83 C1 00 08 */ lwz r30, 8(r1) /* 801F2314 001EDF74 7C 08 03 A6 */ mtlr r0 /* 801F2318 001EDF78 38 21 00 10 */ addi r1, r1, 0x10 /* 801F231C 001EDF7C 4E 80 00 20 */ blr .global func_801F2320 func_801F2320: /* 801F2320 001EDF80 80 03 00 B8 */ lwz r0, 0xb8(r3) /* 801F2324 001EDF84 7C 00 20 40 */ cmplw r0, r4 /* 801F2328 001EDF88 4D 82 00 20 */ beqlr /* 801F232C 001EDF8C 80 A4 00 08 */ lwz r5, 8(r4) /* 801F2330 001EDF90 2C 05 00 00 */ cmpwi r5, 0 /* 801F2334 001EDF94 40 82 00 0C */ bne lbl_801F2340 /* 801F2338 001EDF98 38 80 00 00 */ li r4, 0 /* 801F233C 001EDF9C 48 00 00 1C */ b lbl_801F2358 lbl_801F2340: /* 801F2340 001EDFA0 A0 04 00 DE */ lhz r0, 0xde(r4) /* 801F2344 001EDFA4 2C 00 00 00 */ cmpwi r0, 0 /* 801F2348 001EDFA8 40 82 00 0C */ bne lbl_801F2354 /* 801F234C 001EDFAC 38 80 00 00 */ li r4, 0 /* 801F2350 001EDFB0 48 00 00 08 */ b lbl_801F2358 lbl_801F2354: /* 801F2354 001EDFB4 80 85 00 00 */ lwz r4, 0(r5) lbl_801F2358: /* 801F2358 001EDFB8 2C 04 00 00 */ cmpwi r4, 0 /* 801F235C 001EDFBC 4D 82 00 20 */ beqlr /* 801F2360 001EDFC0 80 04 00 BC */ lwz r0, 0xbc(r4) /* 801F2364 001EDFC4 7C 00 20 40 */ cmplw r0, r4 /* 801F2368 001EDFC8 41 82 00 08 */ beq lbl_801F2370 /* 801F236C 001EDFCC 4E 80 00 20 */ blr lbl_801F2370: /* 801F2370 001EDFD0 48 00 02 1C */ b func_801F258C /* 801F2374 001EDFD4 4E 80 00 20 */ blr .global func_801F2378 func_801F2378: /* 801F2378 001EDFD8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F237C 001EDFDC 7C 08 02 A6 */ mflr r0 /* 801F2380 001EDFE0 2C 04 00 00 */ cmpwi r4, 0 /* 801F2384 001EDFE4 90 01 00 24 */ stw r0, 0x24(r1) /* 801F2388 001EDFE8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801F238C 001EDFEC 7C 7F 1B 78 */ mr r31, r3 /* 801F2390 001EDFF0 93 C1 00 18 */ stw r30, 0x18(r1) /* 801F2394 001EDFF4 7C 9E 23 78 */ mr r30, r4 /* 801F2398 001EDFF8 93 A1 00 14 */ stw r29, 0x14(r1) /* 801F239C 001EDFFC 7C BD 2B 78 */ mr r29, r5 /* 801F23A0 001EE000 93 81 00 10 */ stw r28, 0x10(r1) /* 801F23A4 001EE004 7C DC 33 78 */ mr r28, r6 /* 801F23A8 001EE008 41 82 01 C4 */ beq lbl_801F256C /* 801F23AC 001EE00C 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 801F23B0 001EE010 2C 03 00 00 */ cmpwi r3, 0 /* 801F23B4 001EE014 41 82 00 08 */ beq lbl_801F23BC /* 801F23B8 001EE018 48 00 01 D5 */ bl func_801F258C lbl_801F23BC: /* 801F23BC 001EE01C 7F C3 F3 78 */ mr r3, r30 /* 801F23C0 001EE020 4B FF FD 89 */ bl func_801F2148 /* 801F23C4 001EE024 2C 1C 00 02 */ cmpwi r28, 2 /* 801F23C8 001EE028 41 82 00 6C */ beq lbl_801F2434 /* 801F23CC 001EE02C 40 80 00 14 */ bge lbl_801F23E0 /* 801F23D0 001EE030 2C 1C 00 00 */ cmpwi r28, 0 /* 801F23D4 001EE034 41 82 00 18 */ beq lbl_801F23EC /* 801F23D8 001EE038 40 80 00 1C */ bge lbl_801F23F4 /* 801F23DC 001EE03C 48 00 01 90 */ b lbl_801F256C lbl_801F23E0: /* 801F23E0 001EE040 2C 1C 00 04 */ cmpwi r28, 4 /* 801F23E4 001EE044 40 80 01 88 */ bge lbl_801F256C /* 801F23E8 001EE048 48 00 00 1C */ b lbl_801F2404 lbl_801F23EC: /* 801F23EC 001EE04C 3B A0 00 00 */ li r29, 0 /* 801F23F0 001EE050 48 00 00 44 */ b lbl_801F2434 lbl_801F23F4: /* 801F23F4 001EE054 2C 1D 00 00 */ cmpwi r29, 0 /* 801F23F8 001EE058 41 82 00 3C */ beq lbl_801F2434 /* 801F23FC 001EE05C 83 BD 00 C8 */ lwz r29, 0xc8(r29) /* 801F2400 001EE060 48 00 00 34 */ b lbl_801F2434 lbl_801F2404: /* 801F2404 001EE064 2C 1D 00 00 */ cmpwi r29, 0 /* 801F2408 001EE068 40 82 00 08 */ bne lbl_801F2410 /* 801F240C 001EE06C 83 BF 00 CC */ lwz r29, 0xcc(r31) lbl_801F2410: /* 801F2410 001EE070 2C 1D 00 00 */ cmpwi r29, 0 /* 801F2414 001EE074 41 82 00 20 */ beq lbl_801F2434 /* 801F2418 001EE078 48 00 00 08 */ b lbl_801F2420 lbl_801F241C: /* 801F241C 001EE07C 7C 1D 03 78 */ mr r29, r0 lbl_801F2420: /* 801F2420 001EE080 80 1D 00 C4 */ lwz r0, 0xc4(r29) /* 801F2424 001EE084 2C 00 00 00 */ cmpwi r0, 0 /* 801F2428 001EE088 40 82 FF F4 */ bne lbl_801F241C /* 801F242C 001EE08C 48 00 00 08 */ b lbl_801F2434 /* 801F2430 001EE090 48 00 01 3C */ b lbl_801F256C lbl_801F2434: /* 801F2434 001EE094 2C 1D 00 00 */ cmpwi r29, 0 /* 801F2438 001EE098 40 82 00 2C */ bne lbl_801F2464 /* 801F243C 001EE09C 80 1F 00 CC */ lwz r0, 0xcc(r31) /* 801F2440 001EE0A0 90 1E 00 C4 */ stw r0, 0xc4(r30) /* 801F2444 001EE0A4 80 7F 00 CC */ lwz r3, 0xcc(r31) /* 801F2448 001EE0A8 2C 03 00 00 */ cmpwi r3, 0 /* 801F244C 001EE0AC 41 82 00 08 */ beq lbl_801F2454 /* 801F2450 001EE0B0 93 C3 00 C8 */ stw r30, 0xc8(r3) lbl_801F2454: /* 801F2454 001EE0B4 38 00 00 00 */ li r0, 0 /* 801F2458 001EE0B8 90 1E 00 C8 */ stw r0, 0xc8(r30) /* 801F245C 001EE0BC 93 DF 00 CC */ stw r30, 0xcc(r31) /* 801F2460 001EE0C0 48 00 00 24 */ b lbl_801F2484 lbl_801F2464: /* 801F2464 001EE0C4 80 1D 00 C4 */ lwz r0, 0xc4(r29) /* 801F2468 001EE0C8 90 1E 00 C4 */ stw r0, 0xc4(r30) /* 801F246C 001EE0CC 80 7D 00 C4 */ lwz r3, 0xc4(r29) /* 801F2470 001EE0D0 2C 03 00 00 */ cmpwi r3, 0 /* 801F2474 001EE0D4 41 82 00 08 */ beq lbl_801F247C /* 801F2478 001EE0D8 93 C3 00 C8 */ stw r30, 0xc8(r3) lbl_801F247C: /* 801F247C 001EE0DC 93 BE 00 C8 */ stw r29, 0xc8(r30) /* 801F2480 001EE0E0 93 DD 00 C4 */ stw r30, 0xc4(r29) lbl_801F2484: /* 801F2484 001EE0E4 38 60 00 07 */ li r3, 7 /* 801F2488 001EE0E8 38 00 00 00 */ li r0, 0 /* 801F248C 001EE0EC 93 FE 00 C0 */ stw r31, 0xc0(r30) /* 801F2490 001EE0F0 B0 7E 00 14 */ sth r3, 0x14(r30) /* 801F2494 001EE0F4 98 1E 00 13 */ stb r0, 0x13(r30) /* 801F2498 001EE0F8 83 9F 00 B8 */ lwz r28, 0xb8(r31) /* 801F249C 001EE0FC 2C 1C 00 00 */ cmpwi r28, 0 /* 801F24A0 001EE100 41 82 00 B4 */ beq lbl_801F2554 /* 801F24A4 001EE104 80 1C 00 44 */ lwz r0, 0x44(r28) /* 801F24A8 001EE108 2C 00 00 00 */ cmpwi r0, 0 /* 801F24AC 001EE10C 41 82 00 A8 */ beq lbl_801F2554 /* 801F24B0 001EE110 83 BE 00 B8 */ lwz r29, 0xb8(r30) /* 801F24B4 001EE114 2C 9D 00 00 */ cmpwi cr1, r29, 0 /* 801F24B8 001EE118 41 86 00 9C */ beq cr1, lbl_801F2554 /* 801F24BC 001EE11C 7C 1D E0 40 */ cmplw r29, r28 /* 801F24C0 001EE120 41 82 00 94 */ beq lbl_801F2554 /* 801F24C4 001EE124 80 1D 00 44 */ lwz r0, 0x44(r29) /* 801F24C8 001EE128 2C 00 00 00 */ cmpwi r0, 0 /* 801F24CC 001EE12C 40 82 00 88 */ bne lbl_801F2554 /* 801F24D0 001EE130 A0 1D 00 DC */ lhz r0, 0xdc(r29) /* 801F24D4 001EE134 54 00 07 7A */ rlwinm r0, r0, 0, 0x1d, 0x1d /* 801F24D8 001EE138 2C 00 00 04 */ cmpwi r0, 4 /* 801F24DC 001EE13C 41 82 00 78 */ beq lbl_801F2554 /* 801F24E0 001EE140 80 1D 00 00 */ lwz r0, 0(r29) /* 801F24E4 001EE144 2C 00 00 00 */ cmpwi r0, 0 /* 801F24E8 001EE148 40 82 00 6C */ bne lbl_801F2554 /* 801F24EC 001EE14C 41 86 00 68 */ beq cr1, lbl_801F2554 /* 801F24F0 001EE150 83 DC 00 38 */ lwz r30, 0x38(r28) /* 801F24F4 001EE154 2C 1E 00 00 */ cmpwi r30, 0 /* 801F24F8 001EE158 41 82 00 30 */ beq lbl_801F2528 /* 801F24FC 001EE15C 80 1E 00 00 */ lwz r0, 0(r30) /* 801F2500 001EE160 7C 00 E8 40 */ cmplw r0, r29 /* 801F2504 001EE164 41 82 00 50 */ beq lbl_801F2554 /* 801F2508 001EE168 48 00 00 14 */ b lbl_801F251C lbl_801F250C: /* 801F250C 001EE16C 80 03 00 00 */ lwz r0, 0(r3) /* 801F2510 001EE170 7C 00 E8 40 */ cmplw r0, r29 /* 801F2514 001EE174 41 82 00 40 */ beq lbl_801F2554 /* 801F2518 001EE178 7C 7E 1B 78 */ mr r30, r3 lbl_801F251C: /* 801F251C 001EE17C 80 7E 00 04 */ lwz r3, 4(r30) /* 801F2520 001EE180 2C 03 00 00 */ cmpwi r3, 0 /* 801F2524 001EE184 40 82 FF E8 */ bne lbl_801F250C lbl_801F2528: /* 801F2528 001EE188 48 05 77 D1 */ bl func_80249CF8 /* 801F252C 001EE18C 2C 03 00 00 */ cmpwi r3, 0 /* 801F2530 001EE190 41 82 00 10 */ beq lbl_801F2540 /* 801F2534 001EE194 93 A3 00 00 */ stw r29, 0(r3) /* 801F2538 001EE198 38 00 00 00 */ li r0, 0 /* 801F253C 001EE19C 90 03 00 04 */ stw r0, 4(r3) lbl_801F2540: /* 801F2540 001EE1A0 2C 1E 00 00 */ cmpwi r30, 0 /* 801F2544 001EE1A4 41 82 00 0C */ beq lbl_801F2550 /* 801F2548 001EE1A8 90 7E 00 04 */ stw r3, 4(r30) /* 801F254C 001EE1AC 48 00 00 08 */ b lbl_801F2554 lbl_801F2550: /* 801F2550 001EE1B0 90 7C 00 38 */ stw r3, 0x38(r28) lbl_801F2554: /* 801F2554 001EE1B4 7F E3 FB 78 */ mr r3, r31 /* 801F2558 001EE1B8 38 80 00 01 */ li r4, 1 /* 801F255C 001EE1BC 48 00 01 5D */ bl func_801F26B8 /* 801F2560 001EE1C0 A0 7F 00 16 */ lhz r3, 0x16(r31) /* 801F2564 001EE1C4 38 03 00 01 */ addi r0, r3, 1 /* 801F2568 001EE1C8 B0 1F 00 16 */ sth r0, 0x16(r31) lbl_801F256C: /* 801F256C 001EE1CC 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F2570 001EE1D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801F2574 001EE1D4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801F2578 001EE1D8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801F257C 001EE1DC 83 81 00 10 */ lwz r28, 0x10(r1) /* 801F2580 001EE1E0 7C 08 03 A6 */ mtlr r0 /* 801F2584 001EE1E4 38 21 00 20 */ addi r1, r1, 0x20 /* 801F2588 001EE1E8 4E 80 00 20 */ blr .global func_801F258C func_801F258C: /* 801F258C 001EE1EC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F2590 001EE1F0 7C 08 02 A6 */ mflr r0 /* 801F2594 001EE1F4 2C 04 00 00 */ cmpwi r4, 0 /* 801F2598 001EE1F8 90 01 00 24 */ stw r0, 0x24(r1) /* 801F259C 001EE1FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801F25A0 001EE200 93 C1 00 18 */ stw r30, 0x18(r1) /* 801F25A4 001EE204 93 A1 00 14 */ stw r29, 0x14(r1) /* 801F25A8 001EE208 7C 9D 23 78 */ mr r29, r4 /* 801F25AC 001EE20C 93 81 00 10 */ stw r28, 0x10(r1) /* 801F25B0 001EE210 7C 7C 1B 78 */ mr r28, r3 /* 801F25B4 001EE214 41 82 00 E4 */ beq lbl_801F2698 /* 801F25B8 001EE218 80 04 00 C0 */ lwz r0, 0xc0(r4) /* 801F25BC 001EE21C 7C 00 18 40 */ cmplw r0, r3 /* 801F25C0 001EE220 40 82 00 D8 */ bne lbl_801F2698 /* 801F25C4 001EE224 80 A4 00 B8 */ lwz r5, 0xb8(r4) /* 801F25C8 001EE228 83 C4 00 C4 */ lwz r30, 0xc4(r4) /* 801F25CC 001EE22C 2C 85 00 00 */ cmpwi cr1, r5, 0 /* 801F25D0 001EE230 83 E4 00 C8 */ lwz r31, 0xc8(r4) /* 801F25D4 001EE234 41 86 00 68 */ beq cr1, lbl_801F263C /* 801F25D8 001EE238 80 C3 00 B8 */ lwz r6, 0xb8(r3) /* 801F25DC 001EE23C 7C 05 30 40 */ cmplw r5, r6 /* 801F25E0 001EE240 41 82 00 5C */ beq lbl_801F263C /* 801F25E4 001EE244 41 86 00 58 */ beq cr1, lbl_801F263C /* 801F25E8 001EE248 80 66 00 38 */ lwz r3, 0x38(r6) /* 801F25EC 001EE24C 38 80 00 00 */ li r4, 0 /* 801F25F0 001EE250 2C 03 00 00 */ cmpwi r3, 0 /* 801F25F4 001EE254 41 82 00 48 */ beq lbl_801F263C /* 801F25F8 001EE258 48 00 00 18 */ b lbl_801F2610 lbl_801F25FC: /* 801F25FC 001EE25C 80 03 00 00 */ lwz r0, 0(r3) /* 801F2600 001EE260 7C 00 28 40 */ cmplw r0, r5 /* 801F2604 001EE264 41 82 00 14 */ beq lbl_801F2618 /* 801F2608 001EE268 7C 64 1B 78 */ mr r4, r3 /* 801F260C 001EE26C 80 63 00 04 */ lwz r3, 4(r3) lbl_801F2610: /* 801F2610 001EE270 2C 03 00 00 */ cmpwi r3, 0 /* 801F2614 001EE274 40 82 FF E8 */ bne lbl_801F25FC lbl_801F2618: /* 801F2618 001EE278 2C 03 00 00 */ cmpwi r3, 0 /* 801F261C 001EE27C 41 82 00 20 */ beq lbl_801F263C /* 801F2620 001EE280 2C 04 00 00 */ cmpwi r4, 0 /* 801F2624 001EE284 80 03 00 04 */ lwz r0, 4(r3) /* 801F2628 001EE288 41 82 00 0C */ beq lbl_801F2634 /* 801F262C 001EE28C 90 04 00 04 */ stw r0, 4(r4) /* 801F2630 001EE290 48 00 00 08 */ b lbl_801F2638 lbl_801F2634: /* 801F2634 001EE294 90 06 00 38 */ stw r0, 0x38(r6) lbl_801F2638: /* 801F2638 001EE298 48 05 76 D1 */ bl func_80249D08 lbl_801F263C: /* 801F263C 001EE29C 38 00 00 00 */ li r0, 0 /* 801F2640 001EE2A0 2C 1E 00 00 */ cmpwi r30, 0 /* 801F2644 001EE2A4 90 1D 00 C0 */ stw r0, 0xc0(r29) /* 801F2648 001EE2A8 90 1D 00 C8 */ stw r0, 0xc8(r29) /* 801F264C 001EE2AC 90 1D 00 C4 */ stw r0, 0xc4(r29) /* 801F2650 001EE2B0 41 82 00 08 */ beq lbl_801F2658 /* 801F2654 001EE2B4 93 FE 00 C8 */ stw r31, 0xc8(r30) lbl_801F2658: /* 801F2658 001EE2B8 2C 1F 00 00 */ cmpwi r31, 0 /* 801F265C 001EE2BC 41 82 00 0C */ beq lbl_801F2668 /* 801F2660 001EE2C0 93 DF 00 C4 */ stw r30, 0xc4(r31) /* 801F2664 001EE2C4 48 00 00 08 */ b lbl_801F266C lbl_801F2668: /* 801F2668 001EE2C8 93 DC 00 CC */ stw r30, 0xcc(r28) lbl_801F266C: /* 801F266C 001EE2CC 38 00 00 00 */ li r0, 0 /* 801F2670 001EE2D0 7F A3 EB 78 */ mr r3, r29 /* 801F2674 001EE2D4 B0 1D 00 14 */ sth r0, 0x14(r29) /* 801F2678 001EE2D8 98 1D 00 13 */ stb r0, 0x13(r29) /* 801F267C 001EE2DC A0 9C 00 16 */ lhz r4, 0x16(r28) /* 801F2680 001EE2E0 38 04 FF FF */ addi r0, r4, -1 /* 801F2684 001EE2E4 B0 1C 00 16 */ sth r0, 0x16(r28) /* 801F2688 001EE2E8 4B FF FA 75 */ bl func_801F20FC /* 801F268C 001EE2EC 7F 83 E3 78 */ mr r3, r28 /* 801F2690 001EE2F0 38 80 00 01 */ li r4, 1 /* 801F2694 001EE2F4 48 00 00 25 */ bl func_801F26B8 lbl_801F2698: /* 801F2698 001EE2F8 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F269C 001EE2FC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801F26A0 001EE300 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801F26A4 001EE304 83 A1 00 14 */ lwz r29, 0x14(r1) /* 801F26A8 001EE308 83 81 00 10 */ lwz r28, 0x10(r1) /* 801F26AC 001EE30C 7C 08 03 A6 */ mtlr r0 /* 801F26B0 001EE310 38 21 00 20 */ addi r1, r1, 0x20 /* 801F26B4 001EE314 4E 80 00 20 */ blr .global func_801F26B8 func_801F26B8: /* 801F26B8 001EE318 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801F26BC 001EE31C 7C 08 02 A6 */ mflr r0 /* 801F26C0 001EE320 2C 04 00 00 */ cmpwi r4, 0 /* 801F26C4 001EE324 90 01 00 14 */ stw r0, 0x14(r1) /* 801F26C8 001EE328 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F26CC 001EE32C A0 03 00 10 */ lhz r0, 0x10(r3) /* 801F26D0 001EE330 60 00 00 01 */ ori r0, r0, 1 /* 801F26D4 001EE334 B0 03 00 10 */ sth r0, 0x10(r3) /* 801F26D8 001EE338 41 82 00 24 */ beq lbl_801F26FC /* 801F26DC 001EE33C 83 E3 00 CC */ lwz r31, 0xcc(r3) /* 801F26E0 001EE340 48 00 00 14 */ b lbl_801F26F4 lbl_801F26E4: /* 801F26E4 001EE344 7F E3 FB 78 */ mr r3, r31 /* 801F26E8 001EE348 38 80 00 01 */ li r4, 1 /* 801F26EC 001EE34C 4B FF FF CD */ bl func_801F26B8 /* 801F26F0 001EE350 83 FF 00 C4 */ lwz r31, 0xc4(r31) lbl_801F26F4: /* 801F26F4 001EE354 2C 1F 00 00 */ cmpwi r31, 0 /* 801F26F8 001EE358 40 82 FF EC */ bne lbl_801F26E4 lbl_801F26FC: /* 801F26FC 001EE35C 80 01 00 14 */ lwz r0, 0x14(r1) /* 801F2700 001EE360 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F2704 001EE364 7C 08 03 A6 */ mtlr r0 /* 801F2708 001EE368 38 21 00 10 */ addi r1, r1, 0x10 /* 801F270C 001EE36C 4E 80 00 20 */ blr .global func_801F2710 func_801F2710: /* 801F2710 001EE370 94 21 FE F0 */ stwu r1, -0x110(r1) /* 801F2714 001EE374 7C 08 02 A6 */ mflr r0 /* 801F2718 001EE378 90 01 01 14 */ stw r0, 0x114(r1) /* 801F271C 001EE37C 93 E1 01 0C */ stw r31, 0x10c(r1) /* 801F2720 001EE380 93 C1 01 08 */ stw r30, 0x108(r1) /* 801F2724 001EE384 7C 7E 1B 78 */ mr r30, r3 /* 801F2728 001EE388 93 A1 01 04 */ stw r29, 0x104(r1) /* 801F272C 001EE38C 80 A3 00 C0 */ lwz r5, 0xc0(r3) /* 801F2730 001EE390 2C 05 00 00 */ cmpwi r5, 0 /* 801F2734 001EE394 41 82 07 18 */ beq lbl_801F2E4C /* 801F2738 001EE398 80 83 00 1C */ lwz r4, 0x1c(r3) /* 801F273C 001EE39C 2C 04 00 00 */ cmpwi r4, 0 /* 801F2740 001EE3A0 41 82 00 10 */ beq lbl_801F2750 /* 801F2744 001EE3A4 A0 04 00 0A */ lhz r0, 0xa(r4) /* 801F2748 001EE3A8 54 00 EF FE */ rlwinm r0, r0, 0x1d, 0x1f, 0x1f /* 801F274C 001EE3AC 48 00 00 08 */ b lbl_801F2754 lbl_801F2750: /* 801F2750 001EE3B0 38 00 00 01 */ li r0, 1 lbl_801F2754: /* 801F2754 001EE3B4 2C 00 00 00 */ cmpwi r0, 0 /* 801F2758 001EE3B8 41 82 06 F4 */ beq lbl_801F2E4C /* 801F275C 001EE3BC A0 03 00 14 */ lhz r0, 0x14(r3) /* 801F2760 001EE3C0 54 00 07 7F */ clrlwi. r0, r0, 0x1d /* 801F2764 001EE3C4 40 82 00 08 */ bne lbl_801F276C /* 801F2768 001EE3C8 48 00 06 E4 */ b lbl_801F2E4C lbl_801F276C: /* 801F276C 001EE3CC A0 05 00 10 */ lhz r0, 0x10(r5) /* 801F2770 001EE3D0 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 801F2774 001EE3D4 2C 00 00 01 */ cmpwi r0, 1 /* 801F2778 001EE3D8 40 82 00 18 */ bne lbl_801F2790 /* 801F277C 001EE3DC 81 85 01 00 */ lwz r12, 0x100(r5) /* 801F2780 001EE3E0 7C A3 2B 78 */ mr r3, r5 /* 801F2784 001EE3E4 81 8C 00 14 */ lwz r12, 0x14(r12) /* 801F2788 001EE3E8 7D 89 03 A6 */ mtctr r12 /* 801F278C 001EE3EC 4E 80 04 21 */ bctrl lbl_801F2790: /* 801F2790 001EE3F0 A0 7E 00 14 */ lhz r3, 0x14(r30) /* 801F2794 001EE3F4 54 60 05 FE */ clrlwi r0, r3, 0x17 /* 801F2798 001EE3F8 2C 00 00 07 */ cmpwi r0, 7 /* 801F279C 001EE3FC 40 82 00 1C */ bne lbl_801F27B8 /* 801F27A0 001EE400 80 7E 00 C0 */ lwz r3, 0xc0(r30) /* 801F27A4 001EE404 38 9E 00 D0 */ addi r4, r30, 0xd0 /* 801F27A8 001EE408 7C 85 23 78 */ mr r5, r4 /* 801F27AC 001EE40C 38 63 00 D0 */ addi r3, r3, 0xd0 /* 801F27B0 001EE410 48 08 97 DD */ bl PSMTXConcat /* 801F27B4 001EE414 48 00 06 80 */ b lbl_801F2E34 lbl_801F27B8: /* 801F27B8 001EE418 83 BE 00 C0 */ lwz r29, 0xc0(r30) /* 801F27BC 001EE41C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 801F27C0 001EE420 83 FD 00 BC */ lwz r31, 0xbc(r29) /* 801F27C4 001EE424 41 82 01 FC */ beq lbl_801F29C0 /* 801F27C8 001EE428 88 1E 00 13 */ lbz r0, 0x13(r30) /* 801F27CC 001EE42C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 801F27D0 001EE430 40 82 01 D8 */ bne lbl_801F29A8 /* 801F27D4 001EE434 54 60 06 B5 */ rlwinm. r0, r3, 0, 0x1a, 0x1a /* 801F27D8 001EE438 41 82 00 E0 */ beq lbl_801F28B8 /* 801F27DC 001EE43C C0 3F 00 D0 */ lfs f1, 0xd0(r31) /* 801F27E0 001EE440 C0 1F 00 E0 */ lfs f0, 0xe0(r31) /* 801F27E4 001EE444 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F27E8 001EE448 C0 5F 00 F0 */ lfs f2, 0xf0(r31) /* 801F27EC 001EE44C EC 00 00 32 */ fmuls f0, f0, f0 /* 801F27F0 001EE450 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F27F4 001EE454 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F27F8 001EE458 EC 01 00 2A */ fadds f0, f1, f0 /* 801F27FC 001EE45C EC 22 00 2A */ fadds f1, f2, f0 /* 801F2800 001EE460 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2804 001EE464 4C 40 13 82 */ cror 2, 0, 2 /* 801F2808 001EE468 40 82 00 08 */ bne lbl_801F2810 /* 801F280C 001EE46C 48 00 00 0C */ b lbl_801F2818 lbl_801F2810: /* 801F2810 001EE470 4B FE 20 25 */ bl sqrt /* 801F2814 001EE474 FC 60 08 18 */ frsp f3, f1 lbl_801F2818: /* 801F2818 001EE478 C0 3F 00 D4 */ lfs f1, 0xd4(r31) /* 801F281C 001EE47C C0 1F 00 E4 */ lfs f0, 0xe4(r31) /* 801F2820 001EE480 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2824 001EE484 C0 5F 00 F4 */ lfs f2, 0xf4(r31) /* 801F2828 001EE488 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F282C 001EE48C C0 82 97 F0 */ lfs f4, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2830 001EE490 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2834 001EE494 D0 61 00 64 */ stfs f3, 0x64(r1) /* 801F2838 001EE498 EC 01 00 2A */ fadds f0, f1, f0 /* 801F283C 001EE49C EC 22 00 2A */ fadds f1, f2, f0 /* 801F2840 001EE4A0 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 801F2844 001EE4A4 4C 40 13 82 */ cror 2, 0, 2 /* 801F2848 001EE4A8 40 82 00 08 */ bne lbl_801F2850 /* 801F284C 001EE4AC 48 00 00 0C */ b lbl_801F2858 lbl_801F2850: /* 801F2850 001EE4B0 4B FE 1F E5 */ bl sqrt /* 801F2854 001EE4B4 FC 80 08 18 */ frsp f4, f1 lbl_801F2858: /* 801F2858 001EE4B8 C0 3F 00 D8 */ lfs f1, 0xd8(r31) /* 801F285C 001EE4BC C0 1F 00 E8 */ lfs f0, 0xe8(r31) /* 801F2860 001EE4C0 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2864 001EE4C4 C0 5F 00 F8 */ lfs f2, 0xf8(r31) /* 801F2868 001EE4C8 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F286C 001EE4CC C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2870 001EE4D0 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2874 001EE4D4 D0 81 00 68 */ stfs f4, 0x68(r1) /* 801F2878 001EE4D8 EC 01 00 2A */ fadds f0, f1, f0 /* 801F287C 001EE4DC EC 22 00 2A */ fadds f1, f2, f0 /* 801F2880 001EE4E0 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2884 001EE4E4 4C 40 13 82 */ cror 2, 0, 2 /* 801F2888 001EE4E8 40 82 00 08 */ bne lbl_801F2890 /* 801F288C 001EE4EC 48 00 00 0C */ b lbl_801F2898 lbl_801F2890: /* 801F2890 001EE4F0 4B FE 1F A5 */ bl sqrt /* 801F2894 001EE4F4 FC 60 08 18 */ frsp f3, f1 lbl_801F2898: /* 801F2898 001EE4F8 FC 00 18 18 */ frsp f0, f3 /* 801F289C 001EE4FC C0 41 00 64 */ lfs f2, 0x64(r1) /* 801F28A0 001EE500 C0 21 00 68 */ lfs f1, 0x68(r1) /* 801F28A4 001EE504 D0 61 00 6C */ stfs f3, 0x6c(r1) /* 801F28A8 001EE508 D0 5E 00 70 */ stfs f2, 0x70(r30) /* 801F28AC 001EE50C D0 3E 00 74 */ stfs f1, 0x74(r30) /* 801F28B0 001EE510 D0 1E 00 78 */ stfs f0, 0x78(r30) /* 801F28B4 001EE514 48 00 00 DC */ b lbl_801F2990 lbl_801F28B8: /* 801F28B8 001EE518 C0 3D 00 D0 */ lfs f1, 0xd0(r29) /* 801F28BC 001EE51C C0 1D 00 E0 */ lfs f0, 0xe0(r29) /* 801F28C0 001EE520 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F28C4 001EE524 C0 5D 00 F0 */ lfs f2, 0xf0(r29) /* 801F28C8 001EE528 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F28CC 001EE52C C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F28D0 001EE530 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F28D4 001EE534 EC 01 00 2A */ fadds f0, f1, f0 /* 801F28D8 001EE538 EC 22 00 2A */ fadds f1, f2, f0 /* 801F28DC 001EE53C FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F28E0 001EE540 4C 40 13 82 */ cror 2, 0, 2 /* 801F28E4 001EE544 40 82 00 08 */ bne lbl_801F28EC /* 801F28E8 001EE548 48 00 00 0C */ b lbl_801F28F4 lbl_801F28EC: /* 801F28EC 001EE54C 4B FE 1F 49 */ bl sqrt /* 801F28F0 001EE550 FC 60 08 18 */ frsp f3, f1 lbl_801F28F4: /* 801F28F4 001EE554 C0 3D 00 D4 */ lfs f1, 0xd4(r29) /* 801F28F8 001EE558 C0 1D 00 E4 */ lfs f0, 0xe4(r29) /* 801F28FC 001EE55C EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2900 001EE560 C0 5D 00 F4 */ lfs f2, 0xf4(r29) /* 801F2904 001EE564 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2908 001EE568 C0 82 97 F0 */ lfs f4, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F290C 001EE56C EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2910 001EE570 D0 61 00 58 */ stfs f3, 0x58(r1) /* 801F2914 001EE574 EC 01 00 2A */ fadds f0, f1, f0 /* 801F2918 001EE578 EC 22 00 2A */ fadds f1, f2, f0 /* 801F291C 001EE57C FC 01 20 40 */ fcmpo cr0, f1, f4 /* 801F2920 001EE580 4C 40 13 82 */ cror 2, 0, 2 /* 801F2924 001EE584 40 82 00 08 */ bne lbl_801F292C /* 801F2928 001EE588 48 00 00 0C */ b lbl_801F2934 lbl_801F292C: /* 801F292C 001EE58C 4B FE 1F 09 */ bl sqrt /* 801F2930 001EE590 FC 80 08 18 */ frsp f4, f1 lbl_801F2934: /* 801F2934 001EE594 C0 3D 00 D8 */ lfs f1, 0xd8(r29) /* 801F2938 001EE598 C0 1D 00 E8 */ lfs f0, 0xe8(r29) /* 801F293C 001EE59C EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2940 001EE5A0 C0 5D 00 F8 */ lfs f2, 0xf8(r29) /* 801F2944 001EE5A4 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2948 001EE5A8 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F294C 001EE5AC EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2950 001EE5B0 D0 81 00 5C */ stfs f4, 0x5c(r1) /* 801F2954 001EE5B4 EC 01 00 2A */ fadds f0, f1, f0 /* 801F2958 001EE5B8 EC 22 00 2A */ fadds f1, f2, f0 /* 801F295C 001EE5BC FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2960 001EE5C0 4C 40 13 82 */ cror 2, 0, 2 /* 801F2964 001EE5C4 40 82 00 08 */ bne lbl_801F296C /* 801F2968 001EE5C8 48 00 00 0C */ b lbl_801F2974 lbl_801F296C: /* 801F296C 001EE5CC 4B FE 1E C9 */ bl sqrt /* 801F2970 001EE5D0 FC 60 08 18 */ frsp f3, f1 lbl_801F2974: /* 801F2974 001EE5D4 FC 00 18 18 */ frsp f0, f3 /* 801F2978 001EE5D8 C0 41 00 58 */ lfs f2, 0x58(r1) /* 801F297C 001EE5DC C0 21 00 5C */ lfs f1, 0x5c(r1) /* 801F2980 001EE5E0 D0 61 00 60 */ stfs f3, 0x60(r1) /* 801F2984 001EE5E4 D0 5E 00 70 */ stfs f2, 0x70(r30) /* 801F2988 001EE5E8 D0 3E 00 74 */ stfs f1, 0x74(r30) /* 801F298C 001EE5EC D0 1E 00 78 */ stfs f0, 0x78(r30) lbl_801F2990: /* 801F2990 001EE5F0 A0 1E 00 14 */ lhz r0, 0x14(r30) /* 801F2994 001EE5F4 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17 /* 801F2998 001EE5F8 41 82 00 10 */ beq lbl_801F29A8 /* 801F299C 001EE5FC 88 1E 00 13 */ lbz r0, 0x13(r30) /* 801F29A0 001EE600 60 00 00 04 */ ori r0, r0, 4 /* 801F29A4 001EE604 98 1E 00 13 */ stb r0, 0x13(r30) lbl_801F29A8: /* 801F29A8 001EE608 38 7E 00 D0 */ addi r3, r30, 0xd0 /* 801F29AC 001EE60C C0 3E 00 70 */ lfs f1, 0x70(r30) /* 801F29B0 001EE610 C0 5E 00 74 */ lfs f2, 0x74(r30) /* 801F29B4 001EE614 7C 64 1B 78 */ mr r4, r3 /* 801F29B8 001EE618 C0 7E 00 78 */ lfs f3, 0x78(r30) /* 801F29BC 001EE61C 48 08 9B AD */ bl PSMTXScaleApply lbl_801F29C0: /* 801F29C0 001EE620 A0 7E 00 14 */ lhz r3, 0x14(r30) /* 801F29C4 001EE624 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e /* 801F29C8 001EE628 41 82 03 CC */ beq lbl_801F2D94 /* 801F29CC 001EE62C 88 1E 00 13 */ lbz r0, 0x13(r30) /* 801F29D0 001EE630 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 801F29D4 001EE634 40 82 03 A4 */ bne lbl_801F2D78 /* 801F29D8 001EE638 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 801F29DC 001EE63C 41 82 01 C4 */ beq lbl_801F2BA0 /* 801F29E0 001EE640 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F29E4 001EE644 38 81 00 D0 */ addi r4, r1, 0xd0 /* 801F29E8 001EE648 48 08 95 71 */ bl PSMTXCopy /* 801F29EC 001EE64C C0 21 00 D0 */ lfs f1, 0xd0(r1) /* 801F29F0 001EE650 C0 01 00 E0 */ lfs f0, 0xe0(r1) /* 801F29F4 001EE654 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F29F8 001EE658 C0 41 00 F0 */ lfs f2, 0xf0(r1) /* 801F29FC 001EE65C EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2A00 001EE660 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2A04 001EE664 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2A08 001EE668 EC 01 00 2A */ fadds f0, f1, f0 /* 801F2A0C 001EE66C EC 22 00 2A */ fadds f1, f2, f0 /* 801F2A10 001EE670 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2A14 001EE674 4C 40 13 82 */ cror 2, 0, 2 /* 801F2A18 001EE678 40 82 00 08 */ bne lbl_801F2A20 /* 801F2A1C 001EE67C 48 00 00 0C */ b lbl_801F2A28 lbl_801F2A20: /* 801F2A20 001EE680 4B FE 1E 15 */ bl sqrt /* 801F2A24 001EE684 FC 60 08 18 */ frsp f3, f1 lbl_801F2A28: /* 801F2A28 001EE688 C0 21 00 D4 */ lfs f1, 0xd4(r1) /* 801F2A2C 001EE68C C0 01 00 E4 */ lfs f0, 0xe4(r1) /* 801F2A30 001EE690 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2A34 001EE694 C0 41 00 F4 */ lfs f2, 0xf4(r1) /* 801F2A38 001EE698 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2A3C 001EE69C C0 82 97 F0 */ lfs f4, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2A40 001EE6A0 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2A44 001EE6A4 D0 61 00 14 */ stfs f3, 0x14(r1) /* 801F2A48 001EE6A8 EC 01 00 2A */ fadds f0, f1, f0 /* 801F2A4C 001EE6AC EC 22 00 2A */ fadds f1, f2, f0 /* 801F2A50 001EE6B0 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 801F2A54 001EE6B4 4C 40 13 82 */ cror 2, 0, 2 /* 801F2A58 001EE6B8 40 82 00 08 */ bne lbl_801F2A60 /* 801F2A5C 001EE6BC 48 00 00 0C */ b lbl_801F2A68 lbl_801F2A60: /* 801F2A60 001EE6C0 4B FE 1D D5 */ bl sqrt /* 801F2A64 001EE6C4 FC 80 08 18 */ frsp f4, f1 lbl_801F2A68: /* 801F2A68 001EE6C8 C0 21 00 D8 */ lfs f1, 0xd8(r1) /* 801F2A6C 001EE6CC C0 01 00 E8 */ lfs f0, 0xe8(r1) /* 801F2A70 001EE6D0 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2A74 001EE6D4 C0 41 00 F8 */ lfs f2, 0xf8(r1) /* 801F2A78 001EE6D8 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2A7C 001EE6DC C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2A80 001EE6E0 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2A84 001EE6E4 D0 81 00 18 */ stfs f4, 0x18(r1) /* 801F2A88 001EE6E8 EC 01 00 2A */ fadds f0, f1, f0 /* 801F2A8C 001EE6EC EC 22 00 2A */ fadds f1, f2, f0 /* 801F2A90 001EE6F0 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2A94 001EE6F4 4C 40 13 82 */ cror 2, 0, 2 /* 801F2A98 001EE6F8 40 82 00 08 */ bne lbl_801F2AA0 /* 801F2A9C 001EE6FC 48 00 00 0C */ b lbl_801F2AA8 lbl_801F2AA0: /* 801F2AA0 001EE700 4B FE 1D 95 */ bl sqrt /* 801F2AA4 001EE704 FC 60 08 18 */ frsp f3, f1 lbl_801F2AA8: /* 801F2AA8 001EE708 C0 41 00 14 */ lfs f2, 0x14(r1) /* 801F2AAC 001EE70C C0 82 97 F8 */ lfs f4, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2AB0 001EE710 D0 61 00 1C */ stfs f3, 0x1c(r1) /* 801F2AB4 001EE714 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 801F2AB8 001EE718 40 81 00 28 */ ble lbl_801F2AE0 /* 801F2ABC 001EE71C C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2AC0 001EE720 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2AC4 001EE724 40 80 00 1C */ bge lbl_801F2AE0 /* 801F2AC8 001EE728 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2ACC 001EE72C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2AD0 001EE730 40 80 00 08 */ bge lbl_801F2AD8 /* 801F2AD4 001EE734 48 00 00 10 */ b lbl_801F2AE4 lbl_801F2AD8: /* 801F2AD8 001EE738 FC 80 08 90 */ fmr f4, f1 /* 801F2ADC 001EE73C 48 00 00 08 */ b lbl_801F2AE4 lbl_801F2AE0: /* 801F2AE0 001EE740 C0 81 00 14 */ lfs f4, 0x14(r1) lbl_801F2AE4: /* 801F2AE4 001EE744 C0 41 00 18 */ lfs f2, 0x18(r1) /* 801F2AE8 001EE748 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2AEC 001EE74C FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F2AF0 001EE750 40 81 00 28 */ ble lbl_801F2B18 /* 801F2AF4 001EE754 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2AF8 001EE758 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2AFC 001EE75C 40 80 00 1C */ bge lbl_801F2B18 /* 801F2B00 001EE760 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2B04 001EE764 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2B08 001EE768 40 80 00 08 */ bge lbl_801F2B10 /* 801F2B0C 001EE76C 48 00 00 10 */ b lbl_801F2B1C lbl_801F2B10: /* 801F2B10 001EE770 FC 60 08 90 */ fmr f3, f1 /* 801F2B14 001EE774 48 00 00 08 */ b lbl_801F2B1C lbl_801F2B18: /* 801F2B18 001EE778 C0 61 00 18 */ lfs f3, 0x18(r1) lbl_801F2B1C: /* 801F2B1C 001EE77C C0 41 00 1C */ lfs f2, 0x1c(r1) /* 801F2B20 001EE780 C0 A2 97 F8 */ lfs f5, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2B24 001EE784 FC 02 28 40 */ fcmpo cr0, f2, f5 /* 801F2B28 001EE788 40 81 00 28 */ ble lbl_801F2B50 /* 801F2B2C 001EE78C C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2B30 001EE790 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2B34 001EE794 40 80 00 1C */ bge lbl_801F2B50 /* 801F2B38 001EE798 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2B3C 001EE79C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2B40 001EE7A0 40 80 00 08 */ bge lbl_801F2B48 /* 801F2B44 001EE7A4 48 00 00 10 */ b lbl_801F2B54 lbl_801F2B48: /* 801F2B48 001EE7A8 FC A0 08 90 */ fmr f5, f1 /* 801F2B4C 001EE7AC 48 00 00 08 */ b lbl_801F2B54 lbl_801F2B50: /* 801F2B50 001EE7B0 C0 A1 00 1C */ lfs f5, 0x1c(r1) lbl_801F2B54: /* 801F2B54 001EE7B4 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F2B58 001EE7B8 38 61 00 D0 */ addi r3, r1, 0xd0 /* 801F2B5C 001EE7BC 7C 64 1B 78 */ mr r4, r3 /* 801F2B60 001EE7C0 EC 40 18 24 */ fdivs f2, f0, f3 /* 801F2B64 001EE7C4 EC 20 20 24 */ fdivs f1, f0, f4 /* 801F2B68 001EE7C8 EC 60 28 24 */ fdivs f3, f0, f5 /* 801F2B6C 001EE7CC 48 08 99 FD */ bl PSMTXScaleApply /* 801F2B70 001EE7D0 38 61 00 48 */ addi r3, r1, 0x48 /* 801F2B74 001EE7D4 38 81 00 D0 */ addi r4, r1, 0xd0 /* 801F2B78 001EE7D8 48 08 A6 4D */ bl C_QUATMtx /* 801F2B7C 001EE7DC C0 01 00 48 */ lfs f0, 0x48(r1) /* 801F2B80 001EE7E0 D0 1E 00 60 */ stfs f0, 0x60(r30) /* 801F2B84 001EE7E4 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 801F2B88 001EE7E8 D0 1E 00 64 */ stfs f0, 0x64(r30) /* 801F2B8C 001EE7EC C0 01 00 50 */ lfs f0, 0x50(r1) /* 801F2B90 001EE7F0 D0 1E 00 68 */ stfs f0, 0x68(r30) /* 801F2B94 001EE7F4 C0 01 00 54 */ lfs f0, 0x54(r1) /* 801F2B98 001EE7F8 D0 1E 00 6C */ stfs f0, 0x6c(r30) /* 801F2B9C 001EE7FC 48 00 01 C4 */ b lbl_801F2D60 lbl_801F2BA0: /* 801F2BA0 001EE800 80 7E 00 C0 */ lwz r3, 0xc0(r30) /* 801F2BA4 001EE804 38 81 00 A0 */ addi r4, r1, 0xa0 /* 801F2BA8 001EE808 38 63 00 D0 */ addi r3, r3, 0xd0 /* 801F2BAC 001EE80C 48 08 93 AD */ bl PSMTXCopy /* 801F2BB0 001EE810 C0 21 00 A0 */ lfs f1, 0xa0(r1) /* 801F2BB4 001EE814 C0 01 00 B0 */ lfs f0, 0xb0(r1) /* 801F2BB8 001EE818 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2BBC 001EE81C C0 41 00 C0 */ lfs f2, 0xc0(r1) /* 801F2BC0 001EE820 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2BC4 001EE824 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2BC8 001EE828 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2BCC 001EE82C EC 01 00 2A */ fadds f0, f1, f0 /* 801F2BD0 001EE830 EC 22 00 2A */ fadds f1, f2, f0 /* 801F2BD4 001EE834 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2BD8 001EE838 4C 40 13 82 */ cror 2, 0, 2 /* 801F2BDC 001EE83C 40 82 00 08 */ bne lbl_801F2BE4 /* 801F2BE0 001EE840 48 00 00 0C */ b lbl_801F2BEC lbl_801F2BE4: /* 801F2BE4 001EE844 4B FE 1C 51 */ bl sqrt /* 801F2BE8 001EE848 FC 60 08 18 */ frsp f3, f1 lbl_801F2BEC: /* 801F2BEC 001EE84C C0 21 00 A4 */ lfs f1, 0xa4(r1) /* 801F2BF0 001EE850 C0 01 00 B4 */ lfs f0, 0xb4(r1) /* 801F2BF4 001EE854 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2BF8 001EE858 C0 41 00 C4 */ lfs f2, 0xc4(r1) /* 801F2BFC 001EE85C EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2C00 001EE860 C0 82 97 F0 */ lfs f4, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2C04 001EE864 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2C08 001EE868 D0 61 00 08 */ stfs f3, 8(r1) /* 801F2C0C 001EE86C EC 01 00 2A */ fadds f0, f1, f0 /* 801F2C10 001EE870 EC 22 00 2A */ fadds f1, f2, f0 /* 801F2C14 001EE874 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 801F2C18 001EE878 4C 40 13 82 */ cror 2, 0, 2 /* 801F2C1C 001EE87C 40 82 00 08 */ bne lbl_801F2C24 /* 801F2C20 001EE880 48 00 00 0C */ b lbl_801F2C2C lbl_801F2C24: /* 801F2C24 001EE884 4B FE 1C 11 */ bl sqrt /* 801F2C28 001EE888 FC 80 08 18 */ frsp f4, f1 lbl_801F2C2C: /* 801F2C2C 001EE88C C0 21 00 A8 */ lfs f1, 0xa8(r1) /* 801F2C30 001EE890 C0 01 00 B8 */ lfs f0, 0xb8(r1) /* 801F2C34 001EE894 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2C38 001EE898 C0 41 00 C8 */ lfs f2, 0xc8(r1) /* 801F2C3C 001EE89C EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2C40 001EE8A0 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2C44 001EE8A4 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2C48 001EE8A8 D0 81 00 0C */ stfs f4, 0xc(r1) /* 801F2C4C 001EE8AC EC 01 00 2A */ fadds f0, f1, f0 /* 801F2C50 001EE8B0 EC 22 00 2A */ fadds f1, f2, f0 /* 801F2C54 001EE8B4 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2C58 001EE8B8 4C 40 13 82 */ cror 2, 0, 2 /* 801F2C5C 001EE8BC 40 82 00 08 */ bne lbl_801F2C64 /* 801F2C60 001EE8C0 48 00 00 0C */ b lbl_801F2C6C lbl_801F2C64: /* 801F2C64 001EE8C4 4B FE 1B D1 */ bl sqrt /* 801F2C68 001EE8C8 FC 60 08 18 */ frsp f3, f1 lbl_801F2C6C: /* 801F2C6C 001EE8CC C0 41 00 08 */ lfs f2, 8(r1) /* 801F2C70 001EE8D0 C0 82 97 F8 */ lfs f4, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2C74 001EE8D4 D0 61 00 10 */ stfs f3, 0x10(r1) /* 801F2C78 001EE8D8 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 801F2C7C 001EE8DC 40 81 00 28 */ ble lbl_801F2CA4 /* 801F2C80 001EE8E0 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2C84 001EE8E4 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2C88 001EE8E8 40 80 00 1C */ bge lbl_801F2CA4 /* 801F2C8C 001EE8EC C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2C90 001EE8F0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2C94 001EE8F4 40 80 00 08 */ bge lbl_801F2C9C /* 801F2C98 001EE8F8 48 00 00 10 */ b lbl_801F2CA8 lbl_801F2C9C: /* 801F2C9C 001EE8FC FC 80 08 90 */ fmr f4, f1 /* 801F2CA0 001EE900 48 00 00 08 */ b lbl_801F2CA8 lbl_801F2CA4: /* 801F2CA4 001EE904 C0 81 00 08 */ lfs f4, 8(r1) lbl_801F2CA8: /* 801F2CA8 001EE908 C0 41 00 0C */ lfs f2, 0xc(r1) /* 801F2CAC 001EE90C C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2CB0 001EE910 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F2CB4 001EE914 40 81 00 28 */ ble lbl_801F2CDC /* 801F2CB8 001EE918 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2CBC 001EE91C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2CC0 001EE920 40 80 00 1C */ bge lbl_801F2CDC /* 801F2CC4 001EE924 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2CC8 001EE928 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2CCC 001EE92C 40 80 00 08 */ bge lbl_801F2CD4 /* 801F2CD0 001EE930 48 00 00 10 */ b lbl_801F2CE0 lbl_801F2CD4: /* 801F2CD4 001EE934 FC 60 08 90 */ fmr f3, f1 /* 801F2CD8 001EE938 48 00 00 08 */ b lbl_801F2CE0 lbl_801F2CDC: /* 801F2CDC 001EE93C C0 61 00 0C */ lfs f3, 0xc(r1) lbl_801F2CE0: /* 801F2CE0 001EE940 C0 41 00 10 */ lfs f2, 0x10(r1) /* 801F2CE4 001EE944 C0 A2 97 F8 */ lfs f5, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2CE8 001EE948 FC 02 28 40 */ fcmpo cr0, f2, f5 /* 801F2CEC 001EE94C 40 81 00 28 */ ble lbl_801F2D14 /* 801F2CF0 001EE950 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2CF4 001EE954 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2CF8 001EE958 40 80 00 1C */ bge lbl_801F2D14 /* 801F2CFC 001EE95C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2D00 001EE960 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2D04 001EE964 40 80 00 08 */ bge lbl_801F2D0C /* 801F2D08 001EE968 48 00 00 10 */ b lbl_801F2D18 lbl_801F2D0C: /* 801F2D0C 001EE96C FC A0 08 90 */ fmr f5, f1 /* 801F2D10 001EE970 48 00 00 08 */ b lbl_801F2D18 lbl_801F2D14: /* 801F2D14 001EE974 C0 A1 00 10 */ lfs f5, 0x10(r1) lbl_801F2D18: /* 801F2D18 001EE978 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F2D1C 001EE97C 38 61 00 A0 */ addi r3, r1, 0xa0 /* 801F2D20 001EE980 7C 64 1B 78 */ mr r4, r3 /* 801F2D24 001EE984 EC 40 18 24 */ fdivs f2, f0, f3 /* 801F2D28 001EE988 EC 20 20 24 */ fdivs f1, f0, f4 /* 801F2D2C 001EE98C EC 60 28 24 */ fdivs f3, f0, f5 /* 801F2D30 001EE990 48 08 98 39 */ bl PSMTXScaleApply /* 801F2D34 001EE994 38 61 00 38 */ addi r3, r1, 0x38 /* 801F2D38 001EE998 38 81 00 A0 */ addi r4, r1, 0xa0 /* 801F2D3C 001EE99C 48 08 A4 89 */ bl C_QUATMtx /* 801F2D40 001EE9A0 C0 01 00 38 */ lfs f0, 0x38(r1) /* 801F2D44 001EE9A4 D0 1E 00 60 */ stfs f0, 0x60(r30) /* 801F2D48 001EE9A8 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 801F2D4C 001EE9AC D0 1E 00 64 */ stfs f0, 0x64(r30) /* 801F2D50 001EE9B0 C0 01 00 40 */ lfs f0, 0x40(r1) /* 801F2D54 001EE9B4 D0 1E 00 68 */ stfs f0, 0x68(r30) /* 801F2D58 001EE9B8 C0 01 00 44 */ lfs f0, 0x44(r1) /* 801F2D5C 001EE9BC D0 1E 00 6C */ stfs f0, 0x6c(r30) lbl_801F2D60: /* 801F2D60 001EE9C0 A0 1E 00 14 */ lhz r0, 0x14(r30) /* 801F2D64 001EE9C4 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 801F2D68 001EE9C8 41 82 00 10 */ beq lbl_801F2D78 /* 801F2D6C 001EE9CC 88 1E 00 13 */ lbz r0, 0x13(r30) /* 801F2D70 001EE9D0 60 00 00 02 */ ori r0, r0, 2 /* 801F2D74 001EE9D4 98 1E 00 13 */ stb r0, 0x13(r30) lbl_801F2D78: /* 801F2D78 001EE9D8 38 61 00 70 */ addi r3, r1, 0x70 /* 801F2D7C 001EE9DC 38 9E 00 60 */ addi r4, r30, 0x60 /* 801F2D80 001EE9E0 48 08 98 41 */ bl PSMTXQuat /* 801F2D84 001EE9E4 38 9E 00 D0 */ addi r4, r30, 0xd0 /* 801F2D88 001EE9E8 38 61 00 70 */ addi r3, r1, 0x70 /* 801F2D8C 001EE9EC 7C 85 23 78 */ mr r5, r4 /* 801F2D90 001EE9F0 48 08 91 FD */ bl PSMTXConcat lbl_801F2D94: /* 801F2D94 001EE9F4 A0 7E 00 14 */ lhz r3, 0x14(r30) /* 801F2D98 001EE9F8 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 801F2D9C 001EE9FC 41 82 00 98 */ beq lbl_801F2E34 /* 801F2DA0 001EEA00 88 1E 00 13 */ lbz r0, 0x13(r30) /* 801F2DA4 001EEA04 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 801F2DA8 001EEA08 40 82 00 74 */ bne lbl_801F2E1C /* 801F2DAC 001EEA0C 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 801F2DB0 001EEA10 41 82 00 2C */ beq lbl_801F2DDC /* 801F2DB4 001EEA14 C0 5F 00 DC */ lfs f2, 0xdc(r31) /* 801F2DB8 001EEA18 C0 3F 00 EC */ lfs f1, 0xec(r31) /* 801F2DBC 001EEA1C C0 1F 00 FC */ lfs f0, 0xfc(r31) /* 801F2DC0 001EEA20 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 801F2DC4 001EEA24 D0 21 00 30 */ stfs f1, 0x30(r1) /* 801F2DC8 001EEA28 D0 01 00 34 */ stfs f0, 0x34(r1) /* 801F2DCC 001EEA2C D0 5E 00 54 */ stfs f2, 0x54(r30) /* 801F2DD0 001EEA30 D0 3E 00 58 */ stfs f1, 0x58(r30) /* 801F2DD4 001EEA34 D0 1E 00 5C */ stfs f0, 0x5c(r30) /* 801F2DD8 001EEA38 48 00 00 2C */ b lbl_801F2E04 lbl_801F2DDC: /* 801F2DDC 001EEA3C 80 7E 00 C0 */ lwz r3, 0xc0(r30) /* 801F2DE0 001EEA40 C0 43 00 DC */ lfs f2, 0xdc(r3) /* 801F2DE4 001EEA44 C0 23 00 EC */ lfs f1, 0xec(r3) /* 801F2DE8 001EEA48 C0 03 00 FC */ lfs f0, 0xfc(r3) /* 801F2DEC 001EEA4C D0 41 00 20 */ stfs f2, 0x20(r1) /* 801F2DF0 001EEA50 D0 21 00 24 */ stfs f1, 0x24(r1) /* 801F2DF4 001EEA54 D0 01 00 28 */ stfs f0, 0x28(r1) /* 801F2DF8 001EEA58 D0 5E 00 54 */ stfs f2, 0x54(r30) /* 801F2DFC 001EEA5C D0 3E 00 58 */ stfs f1, 0x58(r30) /* 801F2E00 001EEA60 D0 1E 00 5C */ stfs f0, 0x5c(r30) lbl_801F2E04: /* 801F2E04 001EEA64 A0 1E 00 14 */ lhz r0, 0x14(r30) /* 801F2E08 001EEA68 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 801F2E0C 001EEA6C 41 82 00 10 */ beq lbl_801F2E1C /* 801F2E10 001EEA70 88 1E 00 13 */ lbz r0, 0x13(r30) /* 801F2E14 001EEA74 60 00 00 01 */ ori r0, r0, 1 /* 801F2E18 001EEA78 98 1E 00 13 */ stb r0, 0x13(r30) lbl_801F2E1C: /* 801F2E1C 001EEA7C 38 7E 00 D0 */ addi r3, r30, 0xd0 /* 801F2E20 001EEA80 C0 3E 00 54 */ lfs f1, 0x54(r30) /* 801F2E24 001EEA84 C0 5E 00 58 */ lfs f2, 0x58(r30) /* 801F2E28 001EEA88 7C 64 1B 78 */ mr r4, r3 /* 801F2E2C 001EEA8C C0 7E 00 5C */ lfs f3, 0x5c(r30) /* 801F2E30 001EEA90 48 08 96 C5 */ bl PSMTXTransApply lbl_801F2E34: /* 801F2E34 001EEA94 A0 1E 00 14 */ lhz r0, 0x14(r30) /* 801F2E38 001EEA98 54 00 05 F3 */ rlwinm. r0, r0, 0, 0x17, 0x19 /* 801F2E3C 001EEA9C 41 82 00 10 */ beq lbl_801F2E4C /* 801F2E40 001EEAA0 80 7E 00 C0 */ lwz r3, 0xc0(r30) /* 801F2E44 001EEAA4 7F C4 F3 78 */ mr r4, r30 /* 801F2E48 001EEAA8 4B FF F3 E1 */ bl func_801F2228 lbl_801F2E4C: /* 801F2E4C 001EEAAC 80 01 01 14 */ lwz r0, 0x114(r1) /* 801F2E50 001EEAB0 83 E1 01 0C */ lwz r31, 0x10c(r1) /* 801F2E54 001EEAB4 83 C1 01 08 */ lwz r30, 0x108(r1) /* 801F2E58 001EEAB8 83 A1 01 04 */ lwz r29, 0x104(r1) /* 801F2E5C 001EEABC 7C 08 03 A6 */ mtlr r0 /* 801F2E60 001EEAC0 38 21 01 10 */ addi r1, r1, 0x110 /* 801F2E64 001EEAC4 4E 80 00 20 */ blr .global func_801F2E68 func_801F2E68: /* 801F2E68 001EEAC8 94 21 FE F0 */ stwu r1, -0x110(r1) /* 801F2E6C 001EEACC 7C 08 02 A6 */ mflr r0 /* 801F2E70 001EEAD0 90 01 01 14 */ stw r0, 0x114(r1) /* 801F2E74 001EEAD4 DB E1 01 00 */ stfd f31, 0x100(r1) /* 801F2E78 001EEAD8 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 /* 801F2E7C 001EEADC FF E0 08 90 */ fmr f31, f1 /* 801F2E80 001EEAE0 93 E1 00 FC */ stw r31, 0xfc(r1) /* 801F2E84 001EEAE4 7C 7F 1B 78 */ mr r31, r3 /* 801F2E88 001EEAE8 80 03 00 B4 */ lwz r0, 0xb4(r3) /* 801F2E8C 001EEAEC 2C 00 00 00 */ cmpwi r0, 0 /* 801F2E90 001EEAF0 41 82 01 E4 */ beq lbl_801F3074 /* 801F2E94 001EEAF4 38 63 00 D0 */ addi r3, r3, 0xd0 /* 801F2E98 001EEAF8 38 81 00 C8 */ addi r4, r1, 0xc8 /* 801F2E9C 001EEAFC 48 08 90 BD */ bl PSMTXCopy /* 801F2EA0 001EEB00 C0 21 00 C8 */ lfs f1, 0xc8(r1) /* 801F2EA4 001EEB04 C0 01 00 D8 */ lfs f0, 0xd8(r1) /* 801F2EA8 001EEB08 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2EAC 001EEB0C C0 41 00 E8 */ lfs f2, 0xe8(r1) /* 801F2EB0 001EEB10 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2EB4 001EEB14 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2EB8 001EEB18 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2EBC 001EEB1C EC 01 00 2A */ fadds f0, f1, f0 /* 801F2EC0 001EEB20 EC 22 00 2A */ fadds f1, f2, f0 /* 801F2EC4 001EEB24 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2EC8 001EEB28 4C 40 13 82 */ cror 2, 0, 2 /* 801F2ECC 001EEB2C 40 82 00 08 */ bne lbl_801F2ED4 /* 801F2ED0 001EEB30 48 00 00 0C */ b lbl_801F2EDC lbl_801F2ED4: /* 801F2ED4 001EEB34 4B FE 19 61 */ bl sqrt /* 801F2ED8 001EEB38 FC 60 08 18 */ frsp f3, f1 lbl_801F2EDC: /* 801F2EDC 001EEB3C C0 21 00 CC */ lfs f1, 0xcc(r1) /* 801F2EE0 001EEB40 C0 01 00 DC */ lfs f0, 0xdc(r1) /* 801F2EE4 001EEB44 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2EE8 001EEB48 C0 41 00 EC */ lfs f2, 0xec(r1) /* 801F2EEC 001EEB4C EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2EF0 001EEB50 C0 82 97 F0 */ lfs f4, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2EF4 001EEB54 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2EF8 001EEB58 D0 61 00 14 */ stfs f3, 0x14(r1) /* 801F2EFC 001EEB5C EC 01 00 2A */ fadds f0, f1, f0 /* 801F2F00 001EEB60 EC 22 00 2A */ fadds f1, f2, f0 /* 801F2F04 001EEB64 FC 01 20 40 */ fcmpo cr0, f1, f4 /* 801F2F08 001EEB68 4C 40 13 82 */ cror 2, 0, 2 /* 801F2F0C 001EEB6C 40 82 00 08 */ bne lbl_801F2F14 /* 801F2F10 001EEB70 48 00 00 0C */ b lbl_801F2F1C lbl_801F2F14: /* 801F2F14 001EEB74 4B FE 19 21 */ bl sqrt /* 801F2F18 001EEB78 FC 80 08 18 */ frsp f4, f1 lbl_801F2F1C: /* 801F2F1C 001EEB7C C0 21 00 D0 */ lfs f1, 0xd0(r1) /* 801F2F20 001EEB80 C0 01 00 E0 */ lfs f0, 0xe0(r1) /* 801F2F24 001EEB84 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F2F28 001EEB88 C0 41 00 F0 */ lfs f2, 0xf0(r1) /* 801F2F2C 001EEB8C EC 00 00 32 */ fmuls f0, f0, f0 /* 801F2F30 001EEB90 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2F34 001EEB94 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F2F38 001EEB98 D0 81 00 18 */ stfs f4, 0x18(r1) /* 801F2F3C 001EEB9C EC 01 00 2A */ fadds f0, f1, f0 /* 801F2F40 001EEBA0 EC 22 00 2A */ fadds f1, f2, f0 /* 801F2F44 001EEBA4 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F2F48 001EEBA8 4C 40 13 82 */ cror 2, 0, 2 /* 801F2F4C 001EEBAC 40 82 00 08 */ bne lbl_801F2F54 /* 801F2F50 001EEBB0 48 00 00 0C */ b lbl_801F2F5C lbl_801F2F54: /* 801F2F54 001EEBB4 4B FE 18 E1 */ bl sqrt /* 801F2F58 001EEBB8 FC 60 08 18 */ frsp f3, f1 lbl_801F2F5C: /* 801F2F5C 001EEBBC C0 41 00 14 */ lfs f2, 0x14(r1) /* 801F2F60 001EEBC0 C0 82 97 F8 */ lfs f4, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2F64 001EEBC4 D0 61 00 1C */ stfs f3, 0x1c(r1) /* 801F2F68 001EEBC8 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 801F2F6C 001EEBCC 40 81 00 28 */ ble lbl_801F2F94 /* 801F2F70 001EEBD0 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2F74 001EEBD4 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2F78 001EEBD8 40 80 00 1C */ bge lbl_801F2F94 /* 801F2F7C 001EEBDC C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2F80 001EEBE0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2F84 001EEBE4 40 80 00 08 */ bge lbl_801F2F8C /* 801F2F88 001EEBE8 48 00 00 10 */ b lbl_801F2F98 lbl_801F2F8C: /* 801F2F8C 001EEBEC FC 80 08 90 */ fmr f4, f1 /* 801F2F90 001EEBF0 48 00 00 08 */ b lbl_801F2F98 lbl_801F2F94: /* 801F2F94 001EEBF4 C0 81 00 14 */ lfs f4, 0x14(r1) lbl_801F2F98: /* 801F2F98 001EEBF8 C0 41 00 18 */ lfs f2, 0x18(r1) /* 801F2F9C 001EEBFC C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2FA0 001EEC00 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F2FA4 001EEC04 40 81 00 28 */ ble lbl_801F2FCC /* 801F2FA8 001EEC08 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2FAC 001EEC0C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2FB0 001EEC10 40 80 00 1C */ bge lbl_801F2FCC /* 801F2FB4 001EEC14 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2FB8 001EEC18 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2FBC 001EEC1C 40 80 00 08 */ bge lbl_801F2FC4 /* 801F2FC0 001EEC20 48 00 00 10 */ b lbl_801F2FD0 lbl_801F2FC4: /* 801F2FC4 001EEC24 FC 60 08 90 */ fmr f3, f1 /* 801F2FC8 001EEC28 48 00 00 08 */ b lbl_801F2FD0 lbl_801F2FCC: /* 801F2FCC 001EEC2C C0 61 00 18 */ lfs f3, 0x18(r1) lbl_801F2FD0: /* 801F2FD0 001EEC30 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 801F2FD4 001EEC34 C0 A2 97 F8 */ lfs f5, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F2FD8 001EEC38 FC 02 28 40 */ fcmpo cr0, f2, f5 /* 801F2FDC 001EEC3C 40 81 00 28 */ ble lbl_801F3004 /* 801F2FE0 001EEC40 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F2FE4 001EEC44 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F2FE8 001EEC48 40 80 00 1C */ bge lbl_801F3004 /* 801F2FEC 001EEC4C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F2FF0 001EEC50 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F2FF4 001EEC54 40 80 00 08 */ bge lbl_801F2FFC /* 801F2FF8 001EEC58 48 00 00 10 */ b lbl_801F3008 lbl_801F2FFC: /* 801F2FFC 001EEC5C FC A0 08 90 */ fmr f5, f1 /* 801F3000 001EEC60 48 00 00 08 */ b lbl_801F3008 lbl_801F3004: /* 801F3004 001EEC64 C0 A1 00 1C */ lfs f5, 0x1c(r1) lbl_801F3008: /* 801F3008 001EEC68 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F300C 001EEC6C 38 61 00 C8 */ addi r3, r1, 0xc8 /* 801F3010 001EEC70 7C 64 1B 78 */ mr r4, r3 /* 801F3014 001EEC74 EC 40 18 24 */ fdivs f2, f0, f3 /* 801F3018 001EEC78 EC 20 20 24 */ fdivs f1, f0, f4 /* 801F301C 001EEC7C EC 60 28 24 */ fdivs f3, f0, f5 /* 801F3020 001EEC80 48 08 95 49 */ bl PSMTXScaleApply /* 801F3024 001EEC84 38 61 00 78 */ addi r3, r1, 0x78 /* 801F3028 001EEC88 38 81 00 C8 */ addi r4, r1, 0xc8 /* 801F302C 001EEC8C 48 08 A1 99 */ bl C_QUATMtx /* 801F3030 001EEC90 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 801F3034 001EEC94 C0 21 00 78 */ lfs f1, 0x78(r1) /* 801F3038 001EEC98 D0 23 00 10 */ stfs f1, 0x10(r3) /* 801F303C 001EEC9C C0 01 00 7C */ lfs f0, 0x7c(r1) /* 801F3040 001EECA0 D0 03 00 14 */ stfs f0, 0x14(r3) /* 801F3044 001EECA4 C0 01 00 80 */ lfs f0, 0x80(r1) /* 801F3048 001EECA8 D0 03 00 18 */ stfs f0, 0x18(r3) /* 801F304C 001EECAC C0 01 00 84 */ lfs f0, 0x84(r1) /* 801F3050 001EECB0 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 801F3054 001EECB4 80 9F 00 B4 */ lwz r4, 0xb4(r31) /* 801F3058 001EECB8 D0 24 00 00 */ stfs f1, 0(r4) /* 801F305C 001EECBC C0 03 00 14 */ lfs f0, 0x14(r3) /* 801F3060 001EECC0 D0 04 00 04 */ stfs f0, 4(r4) /* 801F3064 001EECC4 C0 03 00 18 */ lfs f0, 0x18(r3) /* 801F3068 001EECC8 D0 04 00 08 */ stfs f0, 8(r4) /* 801F306C 001EECCC C0 03 00 1C */ lfs f0, 0x1c(r3) /* 801F3070 001EECD0 D0 04 00 0C */ stfs f0, 0xc(r4) lbl_801F3074: /* 801F3074 001EECD4 A0 7F 00 10 */ lhz r3, 0x10(r31) /* 801F3078 001EECD8 70 60 00 58 */ andi. r0, r3, 0x58 /* 801F307C 001EECDC 41 82 06 F8 */ beq lbl_801F3774 /* 801F3080 001EECE0 80 1F 00 08 */ lwz r0, 8(r31) /* 801F3084 001EECE4 2C 00 00 00 */ cmpwi r0, 0 /* 801F3088 001EECE8 40 82 00 08 */ bne lbl_801F3090 /* 801F308C 001EECEC 48 00 06 E8 */ b lbl_801F3774 lbl_801F3090: /* 801F3090 001EECF0 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 801F3094 001EECF4 41 82 00 40 */ beq lbl_801F30D4 /* 801F3098 001EECF8 38 7F 00 7C */ addi r3, r31, 0x7c /* 801F309C 001EECFC 38 9F 00 20 */ addi r4, r31, 0x20 /* 801F30A0 001EED00 38 A1 00 60 */ addi r5, r1, 0x60 /* 801F30A4 001EED04 48 08 9C 45 */ bl PSVECSubtract /* 801F30A8 001EED08 FC 20 F8 90 */ fmr f1, f31 /* 801F30AC 001EED0C 38 61 00 60 */ addi r3, r1, 0x60 /* 801F30B0 001EED10 38 81 00 6C */ addi r4, r1, 0x6c /* 801F30B4 001EED14 48 08 9C 59 */ bl PSVECScale /* 801F30B8 001EED18 38 7F 00 20 */ addi r3, r31, 0x20 /* 801F30BC 001EED1C 38 81 00 6C */ addi r4, r1, 0x6c /* 801F30C0 001EED20 7C 65 1B 78 */ mr r5, r3 /* 801F30C4 001EED24 48 08 9C 01 */ bl PSVECAdd /* 801F30C8 001EED28 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F30CC 001EED2C 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 801F30D0 001EED30 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F30D4: /* 801F30D4 001EED34 A0 7F 00 10 */ lhz r3, 0x10(r31) /* 801F30D8 001EED38 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 801F30DC 001EED3C 41 82 03 AC */ beq lbl_801F3488 /* 801F30E0 001EED40 54 60 06 B5 */ rlwinm. r0, r3, 0, 0x1a, 0x1a /* 801F30E4 001EED44 41 82 00 1C */ beq lbl_801F3100 /* 801F30E8 001EED48 38 7F 00 88 */ addi r3, r31, 0x88 /* 801F30EC 001EED4C 38 9F 00 98 */ addi r4, r31, 0x98 /* 801F30F0 001EED50 48 03 05 D1 */ bl func_802236C0 /* 801F30F4 001EED54 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F30F8 001EED58 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 801F30FC 001EED5C B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F3100: /* 801F3100 001EED60 80 1F 00 B4 */ lwz r0, 0xb4(r31) /* 801F3104 001EED64 2C 00 00 00 */ cmpwi r0, 0 /* 801F3108 001EED68 41 82 03 1C */ beq lbl_801F3424 /* 801F310C 001EED6C A0 7F 00 10 */ lhz r3, 0x10(r31) /* 801F3110 001EED70 54 60 06 31 */ rlwinm. r0, r3, 0, 0x18, 0x18 /* 801F3114 001EED74 41 82 03 10 */ beq lbl_801F3424 /* 801F3118 001EED78 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 801F311C 001EED7C 41 82 00 1C */ beq lbl_801F3138 /* 801F3120 001EED80 38 7F 00 2C */ addi r3, r31, 0x2c /* 801F3124 001EED84 38 9F 00 3C */ addi r4, r31, 0x3c /* 801F3128 001EED88 48 03 05 99 */ bl func_802236C0 /* 801F312C 001EED8C A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3130 001EED90 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 801F3134 001EED94 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F3138: /* 801F3138 001EED98 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 801F313C 001EED9C C0 1F 00 2C */ lfs f0, 0x2c(r31) /* 801F3140 001EEDA0 D0 03 00 00 */ stfs f0, 0(r3) /* 801F3144 001EEDA4 C0 1F 00 30 */ lfs f0, 0x30(r31) /* 801F3148 001EEDA8 D0 03 00 04 */ stfs f0, 4(r3) /* 801F314C 001EEDAC C0 1F 00 34 */ lfs f0, 0x34(r31) /* 801F3150 001EEDB0 D0 03 00 08 */ stfs f0, 8(r3) /* 801F3154 001EEDB4 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 801F3158 001EEDB8 D0 03 00 0C */ stfs f0, 0xc(r3) /* 801F315C 001EEDBC 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 801F3160 001EEDC0 C0 1F 00 88 */ lfs f0, 0x88(r31) /* 801F3164 001EEDC4 D0 03 00 10 */ stfs f0, 0x10(r3) /* 801F3168 001EEDC8 C0 1F 00 8C */ lfs f0, 0x8c(r31) /* 801F316C 001EEDCC D0 03 00 14 */ stfs f0, 0x14(r3) /* 801F3170 001EEDD0 C0 1F 00 90 */ lfs f0, 0x90(r31) /* 801F3174 001EEDD4 D0 03 00 18 */ stfs f0, 0x18(r3) /* 801F3178 001EEDD8 C0 1F 00 94 */ lfs f0, 0x94(r31) /* 801F317C 001EEDDC D0 03 00 1C */ stfs f0, 0x1c(r3) /* 801F3180 001EEDE0 80 9F 00 C0 */ lwz r4, 0xc0(r31) /* 801F3184 001EEDE4 2C 04 00 00 */ cmpwi r4, 0 /* 801F3188 001EEDE8 41 82 02 64 */ beq lbl_801F33EC /* 801F318C 001EEDEC 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 801F3190 001EEDF0 2C 03 00 00 */ cmpwi r3, 0 /* 801F3194 001EEDF4 41 82 00 10 */ beq lbl_801F31A4 /* 801F3198 001EEDF8 A0 03 00 0A */ lhz r0, 0xa(r3) /* 801F319C 001EEDFC 54 00 EF FE */ rlwinm r0, r0, 0x1d, 0x1f, 0x1f /* 801F31A0 001EEE00 48 00 00 08 */ b lbl_801F31A8 lbl_801F31A4: /* 801F31A4 001EEE04 38 00 00 01 */ li r0, 1 lbl_801F31A8: /* 801F31A8 001EEE08 2C 00 00 00 */ cmpwi r0, 0 /* 801F31AC 001EEE0C 41 82 02 40 */ beq lbl_801F33EC /* 801F31B0 001EEE10 80 64 00 BC */ lwz r3, 0xbc(r4) /* 801F31B4 001EEE14 80 1F 00 BC */ lwz r0, 0xbc(r31) /* 801F31B8 001EEE18 7C 03 00 40 */ cmplw r3, r0 /* 801F31BC 001EEE1C 40 82 02 30 */ bne lbl_801F33EC /* 801F31C0 001EEE20 80 04 00 B4 */ lwz r0, 0xb4(r4) /* 801F31C4 001EEE24 2C 00 00 00 */ cmpwi r0, 0 /* 801F31C8 001EEE28 41 82 02 24 */ beq lbl_801F33EC /* 801F31CC 001EEE2C 38 64 00 D0 */ addi r3, r4, 0xd0 /* 801F31D0 001EEE30 38 81 00 98 */ addi r4, r1, 0x98 /* 801F31D4 001EEE34 48 08 8D 85 */ bl PSMTXCopy /* 801F31D8 001EEE38 C0 21 00 98 */ lfs f1, 0x98(r1) /* 801F31DC 001EEE3C C0 01 00 A8 */ lfs f0, 0xa8(r1) /* 801F31E0 001EEE40 EC 21 00 72 */ fmuls f1, f1, f1 /* 801F31E4 001EEE44 C0 41 00 B8 */ lfs f2, 0xb8(r1) /* 801F31E8 001EEE48 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F31EC 001EEE4C C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F31F0 001EEE50 EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F31F4 001EEE54 EC 01 00 2A */ fadds f0, f1, f0 /* 801F31F8 001EEE58 EC 22 00 2A */ fadds f1, f2, f0 /* 801F31FC 001EEE5C FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F3200 001EEE60 4C 40 13 82 */ cror 2, 0, 2 /* 801F3204 001EEE64 40 82 00 08 */ bne lbl_801F320C /* 801F3208 001EEE68 48 00 00 0C */ b lbl_801F3214 lbl_801F320C: /* 801F320C 001EEE6C 4B FE 16 29 */ bl sqrt /* 801F3210 001EEE70 FC 60 08 18 */ frsp f3, f1 lbl_801F3214: /* 801F3214 001EEE74 C0 21 00 9C */ lfs f1, 0x9c(r1) /* 801F3218 001EEE78 C0 01 00 AC */ lfs f0, 0xac(r1) /* 801F321C 001EEE7C EC 21 00 72 */ fmuls f1, f1, f1 /* 801F3220 001EEE80 C0 41 00 BC */ lfs f2, 0xbc(r1) /* 801F3224 001EEE84 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F3228 001EEE88 C0 82 97 F0 */ lfs f4, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F322C 001EEE8C EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F3230 001EEE90 D0 61 00 08 */ stfs f3, 8(r1) /* 801F3234 001EEE94 EC 01 00 2A */ fadds f0, f1, f0 /* 801F3238 001EEE98 EC 22 00 2A */ fadds f1, f2, f0 /* 801F323C 001EEE9C FC 01 20 40 */ fcmpo cr0, f1, f4 /* 801F3240 001EEEA0 4C 40 13 82 */ cror 2, 0, 2 /* 801F3244 001EEEA4 40 82 00 08 */ bne lbl_801F324C /* 801F3248 001EEEA8 48 00 00 0C */ b lbl_801F3254 lbl_801F324C: /* 801F324C 001EEEAC 4B FE 15 E9 */ bl sqrt /* 801F3250 001EEEB0 FC 80 08 18 */ frsp f4, f1 lbl_801F3254: /* 801F3254 001EEEB4 C0 21 00 A0 */ lfs f1, 0xa0(r1) /* 801F3258 001EEEB8 C0 01 00 B0 */ lfs f0, 0xb0(r1) /* 801F325C 001EEEBC EC 21 00 72 */ fmuls f1, f1, f1 /* 801F3260 001EEEC0 C0 41 00 C0 */ lfs f2, 0xc0(r1) /* 801F3264 001EEEC4 EC 00 00 32 */ fmuls f0, f0, f0 /* 801F3268 001EEEC8 C0 62 97 F0 */ lfs f3, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F326C 001EEECC EC 42 00 B2 */ fmuls f2, f2, f2 /* 801F3270 001EEED0 D0 81 00 0C */ stfs f4, 0xc(r1) /* 801F3274 001EEED4 EC 01 00 2A */ fadds f0, f1, f0 /* 801F3278 001EEED8 EC 22 00 2A */ fadds f1, f2, f0 /* 801F327C 001EEEDC FC 01 18 40 */ fcmpo cr0, f1, f3 /* 801F3280 001EEEE0 4C 40 13 82 */ cror 2, 0, 2 /* 801F3284 001EEEE4 40 82 00 08 */ bne lbl_801F328C /* 801F3288 001EEEE8 48 00 00 0C */ b lbl_801F3294 lbl_801F328C: /* 801F328C 001EEEEC 4B FE 15 A9 */ bl sqrt /* 801F3290 001EEEF0 FC 60 08 18 */ frsp f3, f1 lbl_801F3294: /* 801F3294 001EEEF4 C0 41 00 08 */ lfs f2, 8(r1) /* 801F3298 001EEEF8 C0 82 97 F8 */ lfs f4, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F329C 001EEEFC D0 61 00 10 */ stfs f3, 0x10(r1) /* 801F32A0 001EEF00 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 801F32A4 001EEF04 40 81 00 28 */ ble lbl_801F32CC /* 801F32A8 001EEF08 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F32AC 001EEF0C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F32B0 001EEF10 40 80 00 1C */ bge lbl_801F32CC /* 801F32B4 001EEF14 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F32B8 001EEF18 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F32BC 001EEF1C 40 80 00 08 */ bge lbl_801F32C4 /* 801F32C0 001EEF20 48 00 00 10 */ b lbl_801F32D0 lbl_801F32C4: /* 801F32C4 001EEF24 FC 80 08 90 */ fmr f4, f1 /* 801F32C8 001EEF28 48 00 00 08 */ b lbl_801F32D0 lbl_801F32CC: /* 801F32CC 001EEF2C C0 81 00 08 */ lfs f4, 8(r1) lbl_801F32D0: /* 801F32D0 001EEF30 C0 41 00 0C */ lfs f2, 0xc(r1) /* 801F32D4 001EEF34 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F32D8 001EEF38 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F32DC 001EEF3C 40 81 00 28 */ ble lbl_801F3304 /* 801F32E0 001EEF40 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F32E4 001EEF44 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F32E8 001EEF48 40 80 00 1C */ bge lbl_801F3304 /* 801F32EC 001EEF4C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F32F0 001EEF50 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F32F4 001EEF54 40 80 00 08 */ bge lbl_801F32FC /* 801F32F8 001EEF58 48 00 00 10 */ b lbl_801F3308 lbl_801F32FC: /* 801F32FC 001EEF5C FC 60 08 90 */ fmr f3, f1 /* 801F3300 001EEF60 48 00 00 08 */ b lbl_801F3308 lbl_801F3304: /* 801F3304 001EEF64 C0 61 00 0C */ lfs f3, 0xc(r1) lbl_801F3308: /* 801F3308 001EEF68 C0 41 00 10 */ lfs f2, 0x10(r1) /* 801F330C 001EEF6C C0 A2 97 F8 */ lfs f5, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3310 001EEF70 FC 02 28 40 */ fcmpo cr0, f2, f5 /* 801F3314 001EEF74 40 81 00 28 */ ble lbl_801F333C /* 801F3318 001EEF78 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F331C 001EEF7C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3320 001EEF80 40 80 00 1C */ bge lbl_801F333C /* 801F3324 001EEF84 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3328 001EEF88 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F332C 001EEF8C 40 80 00 08 */ bge lbl_801F3334 /* 801F3330 001EEF90 48 00 00 10 */ b lbl_801F3340 lbl_801F3334: /* 801F3334 001EEF94 FC A0 08 90 */ fmr f5, f1 /* 801F3338 001EEF98 48 00 00 08 */ b lbl_801F3340 lbl_801F333C: /* 801F333C 001EEF9C C0 A1 00 10 */ lfs f5, 0x10(r1) lbl_801F3340: /* 801F3340 001EEFA0 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F3344 001EEFA4 38 61 00 98 */ addi r3, r1, 0x98 /* 801F3348 001EEFA8 7C 64 1B 78 */ mr r4, r3 /* 801F334C 001EEFAC EC 40 18 24 */ fdivs f2, f0, f3 /* 801F3350 001EEFB0 EC 20 20 24 */ fdivs f1, f0, f4 /* 801F3354 001EEFB4 EC 60 28 24 */ fdivs f3, f0, f5 /* 801F3358 001EEFB8 48 08 92 11 */ bl PSMTXScaleApply /* 801F335C 001EEFBC 38 61 00 88 */ addi r3, r1, 0x88 /* 801F3360 001EEFC0 38 81 00 98 */ addi r4, r1, 0x98 /* 801F3364 001EEFC4 48 08 9E 61 */ bl C_QUATMtx /* 801F3368 001EEFC8 38 61 00 88 */ addi r3, r1, 0x88 /* 801F336C 001EEFCC 7C 64 1B 78 */ mr r4, r3 /* 801F3370 001EEFD0 48 08 9D 11 */ bl PSQUATInverse /* 801F3374 001EEFD4 80 9F 00 C0 */ lwz r4, 0xc0(r31) /* 801F3378 001EEFD8 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 801F337C 001EEFDC 80 84 00 B4 */ lwz r4, 0xb4(r4) /* 801F3380 001EEFE0 7C 65 1B 78 */ mr r5, r3 /* 801F3384 001EEFE4 48 08 9C A1 */ bl PSQUATMultiply /* 801F3388 001EEFE8 80 7F 00 C0 */ lwz r3, 0xc0(r31) /* 801F338C 001EEFEC 80 BF 00 B4 */ lwz r5, 0xb4(r31) /* 801F3390 001EEFF0 80 83 00 B4 */ lwz r4, 0xb4(r3) /* 801F3394 001EEFF4 38 65 00 10 */ addi r3, r5, 0x10 /* 801F3398 001EEFF8 38 84 00 10 */ addi r4, r4, 0x10 /* 801F339C 001EEFFC 7C 65 1B 78 */ mr r5, r3 /* 801F33A0 001EF000 48 08 9C 85 */ bl PSQUATMultiply /* 801F33A4 001EF004 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 801F33A8 001EF008 FC 20 F8 90 */ fmr f1, f31 /* 801F33AC 001EF00C 38 A1 00 50 */ addi r5, r1, 0x50 /* 801F33B0 001EF010 38 83 00 10 */ addi r4, r3, 0x10 /* 801F33B4 001EF014 48 08 9F DD */ bl C_QUATSlerp /* 801F33B8 001EF018 C0 01 00 50 */ lfs f0, 0x50(r1) /* 801F33BC 001EF01C 38 7F 00 2C */ addi r3, r31, 0x2c /* 801F33C0 001EF020 7C 65 1B 78 */ mr r5, r3 /* 801F33C4 001EF024 38 81 00 88 */ addi r4, r1, 0x88 /* 801F33C8 001EF028 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 801F33CC 001EF02C C0 01 00 54 */ lfs f0, 0x54(r1) /* 801F33D0 001EF030 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 801F33D4 001EF034 C0 01 00 58 */ lfs f0, 0x58(r1) /* 801F33D8 001EF038 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 801F33DC 001EF03C C0 01 00 5C */ lfs f0, 0x5c(r1) /* 801F33E0 001EF040 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 801F33E4 001EF044 48 08 9C 41 */ bl PSQUATMultiply /* 801F33E8 001EF048 48 00 00 94 */ b lbl_801F347C lbl_801F33EC: /* 801F33EC 001EF04C 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 801F33F0 001EF050 FC 20 F8 90 */ fmr f1, f31 /* 801F33F4 001EF054 38 A1 00 40 */ addi r5, r1, 0x40 /* 801F33F8 001EF058 38 83 00 10 */ addi r4, r3, 0x10 /* 801F33FC 001EF05C 48 08 9F 95 */ bl C_QUATSlerp /* 801F3400 001EF060 C0 01 00 40 */ lfs f0, 0x40(r1) /* 801F3404 001EF064 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 801F3408 001EF068 C0 01 00 44 */ lfs f0, 0x44(r1) /* 801F340C 001EF06C D0 1F 00 30 */ stfs f0, 0x30(r31) /* 801F3410 001EF070 C0 01 00 48 */ lfs f0, 0x48(r1) /* 801F3414 001EF074 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 801F3418 001EF078 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 801F341C 001EF07C D0 1F 00 38 */ stfs f0, 0x38(r31) /* 801F3420 001EF080 48 00 00 5C */ b lbl_801F347C lbl_801F3424: /* 801F3424 001EF084 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3428 001EF088 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 801F342C 001EF08C 41 82 00 1C */ beq lbl_801F3448 /* 801F3430 001EF090 38 7F 00 2C */ addi r3, r31, 0x2c /* 801F3434 001EF094 38 9F 00 3C */ addi r4, r31, 0x3c /* 801F3438 001EF098 48 03 02 89 */ bl func_802236C0 /* 801F343C 001EF09C A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3440 001EF0A0 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 801F3444 001EF0A4 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F3448: /* 801F3448 001EF0A8 FC 20 F8 90 */ fmr f1, f31 /* 801F344C 001EF0AC 38 7F 00 2C */ addi r3, r31, 0x2c /* 801F3450 001EF0B0 38 9F 00 88 */ addi r4, r31, 0x88 /* 801F3454 001EF0B4 38 A1 00 30 */ addi r5, r1, 0x30 /* 801F3458 001EF0B8 48 08 9F 39 */ bl C_QUATSlerp /* 801F345C 001EF0BC C0 01 00 30 */ lfs f0, 0x30(r1) /* 801F3460 001EF0C0 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 801F3464 001EF0C4 C0 01 00 34 */ lfs f0, 0x34(r1) /* 801F3468 001EF0C8 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 801F346C 001EF0CC C0 01 00 38 */ lfs f0, 0x38(r1) /* 801F3470 001EF0D0 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 801F3474 001EF0D4 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 801F3478 001EF0D8 D0 1F 00 38 */ stfs f0, 0x38(r31) lbl_801F347C: /* 801F347C 001EF0DC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3480 001EF0E0 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 801F3484 001EF0E4 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F3488: /* 801F3488 001EF0E8 A0 7F 00 10 */ lhz r3, 0x10(r31) /* 801F348C 001EF0EC 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19 /* 801F3490 001EF0F0 41 82 02 E4 */ beq lbl_801F3774 /* 801F3494 001EF0F4 54 60 05 EF */ rlwinm. r0, r3, 0, 0x17, 0x17 /* 801F3498 001EF0F8 41 82 00 3C */ beq lbl_801F34D4 /* 801F349C 001EF0FC C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F34A0 001EF100 38 7F 00 48 */ addi r3, r31, 0x48 /* 801F34A4 001EF104 7C 64 1B 78 */ mr r4, r3 /* 801F34A8 001EF108 EC 20 F8 28 */ fsubs f1, f0, f31 /* 801F34AC 001EF10C 48 08 98 61 */ bl PSVECScale /* 801F34B0 001EF110 FC 20 F8 90 */ fmr f1, f31 /* 801F34B4 001EF114 38 7F 00 A4 */ addi r3, r31, 0xa4 /* 801F34B8 001EF118 38 81 00 20 */ addi r4, r1, 0x20 /* 801F34BC 001EF11C 48 08 98 51 */ bl PSVECScale /* 801F34C0 001EF120 38 7F 00 48 */ addi r3, r31, 0x48 /* 801F34C4 001EF124 38 81 00 20 */ addi r4, r1, 0x20 /* 801F34C8 001EF128 7C 65 1B 78 */ mr r5, r3 /* 801F34CC 001EF12C 48 08 97 F9 */ bl PSVECAdd /* 801F34D0 001EF130 48 00 02 98 */ b lbl_801F3768 lbl_801F34D4: /* 801F34D4 001EF134 C0 3F 00 48 */ lfs f1, 0x48(r31) /* 801F34D8 001EF138 C0 02 97 FC */ lfs f0, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F34DC 001EF13C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F34E0 001EF140 40 81 00 18 */ ble lbl_801F34F8 /* 801F34E4 001EF144 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F34E8 001EF148 EC 40 F8 28 */ fsubs f2, f0, f31 /* 801F34EC 001EF14C 4B FE 10 F9 */ bl pow /* 801F34F0 001EF150 FC 40 08 18 */ frsp f2, f1 /* 801F34F4 001EF154 48 00 00 30 */ b lbl_801F3524 lbl_801F34F8: /* 801F34F8 001EF158 C0 02 97 F8 */ lfs f0, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F34FC 001EF15C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F3500 001EF160 40 80 00 20 */ bge lbl_801F3520 /* 801F3504 001EF164 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F3508 001EF168 FC 20 08 50 */ fneg f1, f1 /* 801F350C 001EF16C EC 40 F8 28 */ fsubs f2, f0, f31 /* 801F3510 001EF170 4B FE 10 D5 */ bl pow /* 801F3514 001EF174 FC 00 08 18 */ frsp f0, f1 /* 801F3518 001EF178 FC 40 00 50 */ fneg f2, f0 /* 801F351C 001EF17C 48 00 00 08 */ b lbl_801F3524 lbl_801F3520: /* 801F3520 001EF180 C0 42 97 F0 */ lfs f2, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F3524: /* 801F3524 001EF184 C0 3F 00 4C */ lfs f1, 0x4c(r31) /* 801F3528 001EF188 C0 02 97 FC */ lfs f0, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F352C 001EF18C D0 5F 00 48 */ stfs f2, 0x48(r31) /* 801F3530 001EF190 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F3534 001EF194 40 81 00 18 */ ble lbl_801F354C /* 801F3538 001EF198 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F353C 001EF19C EC 40 F8 28 */ fsubs f2, f0, f31 /* 801F3540 001EF1A0 4B FE 10 A5 */ bl pow /* 801F3544 001EF1A4 FC 40 08 18 */ frsp f2, f1 /* 801F3548 001EF1A8 48 00 00 30 */ b lbl_801F3578 lbl_801F354C: /* 801F354C 001EF1AC C0 02 97 F8 */ lfs f0, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3550 001EF1B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F3554 001EF1B4 40 80 00 20 */ bge lbl_801F3574 /* 801F3558 001EF1B8 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F355C 001EF1BC FC 20 08 50 */ fneg f1, f1 /* 801F3560 001EF1C0 EC 40 F8 28 */ fsubs f2, f0, f31 /* 801F3564 001EF1C4 4B FE 10 81 */ bl pow /* 801F3568 001EF1C8 FC 00 08 18 */ frsp f0, f1 /* 801F356C 001EF1CC FC 40 00 50 */ fneg f2, f0 /* 801F3570 001EF1D0 48 00 00 08 */ b lbl_801F3578 lbl_801F3574: /* 801F3574 001EF1D4 C0 42 97 F0 */ lfs f2, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F3578: /* 801F3578 001EF1D8 C0 3F 00 50 */ lfs f1, 0x50(r31) /* 801F357C 001EF1DC C0 02 97 FC */ lfs f0, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3580 001EF1E0 D0 5F 00 4C */ stfs f2, 0x4c(r31) /* 801F3584 001EF1E4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F3588 001EF1E8 40 81 00 18 */ ble lbl_801F35A0 /* 801F358C 001EF1EC C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F3590 001EF1F0 EC 40 F8 28 */ fsubs f2, f0, f31 /* 801F3594 001EF1F4 4B FE 10 51 */ bl pow /* 801F3598 001EF1F8 FC 40 08 18 */ frsp f2, f1 /* 801F359C 001EF1FC 48 00 00 30 */ b lbl_801F35CC lbl_801F35A0: /* 801F35A0 001EF200 C0 02 97 F8 */ lfs f0, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F35A4 001EF204 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F35A8 001EF208 40 80 00 20 */ bge lbl_801F35C8 /* 801F35AC 001EF20C C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F35B0 001EF210 FC 20 08 50 */ fneg f1, f1 /* 801F35B4 001EF214 EC 40 F8 28 */ fsubs f2, f0, f31 /* 801F35B8 001EF218 4B FE 10 2D */ bl pow /* 801F35BC 001EF21C FC 00 08 18 */ frsp f0, f1 /* 801F35C0 001EF220 FC 40 00 50 */ fneg f2, f0 /* 801F35C4 001EF224 48 00 00 08 */ b lbl_801F35CC lbl_801F35C8: /* 801F35C8 001EF228 C0 42 97 F0 */ lfs f2, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F35CC: /* 801F35CC 001EF22C C0 3F 00 A4 */ lfs f1, 0xa4(r31) /* 801F35D0 001EF230 C0 02 97 FC */ lfs f0, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F35D4 001EF234 D0 5F 00 50 */ stfs f2, 0x50(r31) /* 801F35D8 001EF238 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F35DC 001EF23C 40 81 00 14 */ ble lbl_801F35F0 /* 801F35E0 001EF240 FC 40 F8 90 */ fmr f2, f31 /* 801F35E4 001EF244 4B FE 10 01 */ bl pow /* 801F35E8 001EF248 FC 40 08 18 */ frsp f2, f1 /* 801F35EC 001EF24C 48 00 00 2C */ b lbl_801F3618 lbl_801F35F0: /* 801F35F0 001EF250 C0 02 97 F8 */ lfs f0, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F35F4 001EF254 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F35F8 001EF258 40 80 00 1C */ bge lbl_801F3614 /* 801F35FC 001EF25C FC 20 08 50 */ fneg f1, f1 /* 801F3600 001EF260 FC 40 F8 90 */ fmr f2, f31 /* 801F3604 001EF264 4B FE 0F E1 */ bl pow /* 801F3608 001EF268 FC 00 08 18 */ frsp f0, f1 /* 801F360C 001EF26C FC 40 00 50 */ fneg f2, f0 /* 801F3610 001EF270 48 00 00 08 */ b lbl_801F3618 lbl_801F3614: /* 801F3614 001EF274 C0 42 97 F0 */ lfs f2, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F3618: /* 801F3618 001EF278 C0 1F 00 48 */ lfs f0, 0x48(r31) /* 801F361C 001EF27C C0 3F 00 A8 */ lfs f1, 0xa8(r31) /* 801F3620 001EF280 EC 40 00 B2 */ fmuls f2, f0, f2 /* 801F3624 001EF284 C0 02 97 FC */ lfs f0, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3628 001EF288 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F362C 001EF28C D0 5F 00 48 */ stfs f2, 0x48(r31) /* 801F3630 001EF290 40 81 00 14 */ ble lbl_801F3644 /* 801F3634 001EF294 FC 40 F8 90 */ fmr f2, f31 /* 801F3638 001EF298 4B FE 0F AD */ bl pow /* 801F363C 001EF29C FC 40 08 18 */ frsp f2, f1 /* 801F3640 001EF2A0 48 00 00 2C */ b lbl_801F366C lbl_801F3644: /* 801F3644 001EF2A4 C0 02 97 F8 */ lfs f0, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3648 001EF2A8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F364C 001EF2AC 40 80 00 1C */ bge lbl_801F3668 /* 801F3650 001EF2B0 FC 20 08 50 */ fneg f1, f1 /* 801F3654 001EF2B4 FC 40 F8 90 */ fmr f2, f31 /* 801F3658 001EF2B8 4B FE 0F 8D */ bl pow /* 801F365C 001EF2BC FC 00 08 18 */ frsp f0, f1 /* 801F3660 001EF2C0 FC 40 00 50 */ fneg f2, f0 /* 801F3664 001EF2C4 48 00 00 08 */ b lbl_801F366C lbl_801F3668: /* 801F3668 001EF2C8 C0 42 97 F0 */ lfs f2, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F366C: /* 801F366C 001EF2CC C0 1F 00 4C */ lfs f0, 0x4c(r31) /* 801F3670 001EF2D0 C0 3F 00 AC */ lfs f1, 0xac(r31) /* 801F3674 001EF2D4 EC 40 00 B2 */ fmuls f2, f0, f2 /* 801F3678 001EF2D8 C0 02 97 FC */ lfs f0, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F367C 001EF2DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F3680 001EF2E0 D0 5F 00 4C */ stfs f2, 0x4c(r31) /* 801F3684 001EF2E4 40 81 00 14 */ ble lbl_801F3698 /* 801F3688 001EF2E8 FC 40 F8 90 */ fmr f2, f31 /* 801F368C 001EF2EC 4B FE 0F 59 */ bl pow /* 801F3690 001EF2F0 FC 20 08 18 */ frsp f1, f1 /* 801F3694 001EF2F4 48 00 00 2C */ b lbl_801F36C0 lbl_801F3698: /* 801F3698 001EF2F8 C0 02 97 F8 */ lfs f0, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F369C 001EF2FC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 801F36A0 001EF300 40 80 00 1C */ bge lbl_801F36BC /* 801F36A4 001EF304 FC 20 08 50 */ fneg f1, f1 /* 801F36A8 001EF308 FC 40 F8 90 */ fmr f2, f31 /* 801F36AC 001EF30C 4B FE 0F 39 */ bl pow /* 801F36B0 001EF310 FC 00 08 18 */ frsp f0, f1 /* 801F36B4 001EF314 FC 20 00 50 */ fneg f1, f0 /* 801F36B8 001EF318 48 00 00 08 */ b lbl_801F36C0 lbl_801F36BC: /* 801F36BC 001EF31C C0 22 97 F0 */ lfs f1, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F36C0: /* 801F36C0 001EF320 C0 1F 00 50 */ lfs f0, 0x50(r31) /* 801F36C4 001EF324 C0 5F 00 48 */ lfs f2, 0x48(r31) /* 801F36C8 001EF328 EC 00 00 72 */ fmuls f0, f0, f1 /* 801F36CC 001EF32C C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F36D0 001EF330 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F36D4 001EF334 D0 1F 00 50 */ stfs f0, 0x50(r31) /* 801F36D8 001EF338 40 80 00 28 */ bge lbl_801F3700 /* 801F36DC 001EF33C C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F36E0 001EF340 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F36E4 001EF344 40 81 00 1C */ ble lbl_801F3700 /* 801F36E8 001EF348 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F36EC 001EF34C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F36F0 001EF350 40 80 00 08 */ bge lbl_801F36F8 /* 801F36F4 001EF354 48 00 00 08 */ b lbl_801F36FC lbl_801F36F8: /* 801F36F8 001EF358 FC 60 08 90 */ fmr f3, f1 lbl_801F36FC: /* 801F36FC 001EF35C D0 7F 00 48 */ stfs f3, 0x48(r31) lbl_801F3700: /* 801F3700 001EF360 C0 5F 00 4C */ lfs f2, 0x4c(r31) /* 801F3704 001EF364 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3708 001EF368 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F370C 001EF36C 40 80 00 28 */ bge lbl_801F3734 /* 801F3710 001EF370 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3714 001EF374 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3718 001EF378 40 81 00 1C */ ble lbl_801F3734 /* 801F371C 001EF37C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3720 001EF380 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3724 001EF384 40 80 00 08 */ bge lbl_801F372C /* 801F3728 001EF388 48 00 00 08 */ b lbl_801F3730 lbl_801F372C: /* 801F372C 001EF38C FC 60 08 90 */ fmr f3, f1 lbl_801F3730: /* 801F3730 001EF390 D0 7F 00 4C */ stfs f3, 0x4c(r31) lbl_801F3734: /* 801F3734 001EF394 C0 5F 00 50 */ lfs f2, 0x50(r31) /* 801F3738 001EF398 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F373C 001EF39C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3740 001EF3A0 40 80 00 28 */ bge lbl_801F3768 /* 801F3744 001EF3A4 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3748 001EF3A8 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F374C 001EF3AC 40 81 00 1C */ ble lbl_801F3768 /* 801F3750 001EF3B0 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3754 001EF3B4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3758 001EF3B8 40 80 00 08 */ bge lbl_801F3760 /* 801F375C 001EF3BC 48 00 00 08 */ b lbl_801F3764 lbl_801F3760: /* 801F3760 001EF3C0 FC 60 08 90 */ fmr f3, f1 lbl_801F3764: /* 801F3764 001EF3C4 D0 7F 00 50 */ stfs f3, 0x50(r31) lbl_801F3768: /* 801F3768 001EF3C8 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F376C 001EF3CC 54 00 06 B0 */ rlwinm r0, r0, 0, 0x1a, 0x18 /* 801F3770 001EF3D0 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F3774: /* 801F3774 001EF3D4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 /* 801F3778 001EF3D8 80 01 01 14 */ lwz r0, 0x114(r1) /* 801F377C 001EF3DC CB E1 01 00 */ lfd f31, 0x100(r1) /* 801F3780 001EF3E0 83 E1 00 FC */ lwz r31, 0xfc(r1) /* 801F3784 001EF3E4 7C 08 03 A6 */ mtlr r0 /* 801F3788 001EF3E8 38 21 01 10 */ addi r1, r1, 0x110 /* 801F378C 001EF3EC 4E 80 00 20 */ blr .global func3__6GSnullFv func3__6GSnullFv: /* 801F3790 001EF3F0 94 21 FF 90 */ stwu r1, -0x70(r1) /* 801F3794 001EF3F4 7C 08 02 A6 */ mflr r0 /* 801F3798 001EF3F8 90 01 00 74 */ stw r0, 0x74(r1) /* 801F379C 001EF3FC 93 E1 00 6C */ stw r31, 0x6c(r1) /* 801F37A0 001EF400 7C 7F 1B 78 */ mr r31, r3 /* 801F37A4 001EF404 A0 03 00 10 */ lhz r0, 0x10(r3) /* 801F37A8 001EF408 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 801F37AC 001EF40C 2C 00 00 01 */ cmpwi r0, 1 /* 801F37B0 001EF410 40 82 01 40 */ bne lbl_801F38F0 /* 801F37B4 001EF414 C0 23 00 0C */ lfs f1, 0xc(r3) /* 801F37B8 001EF418 4B FF F6 B1 */ bl func_801F2E68 /* 801F37BC 001EF41C 80 9F 00 B0 */ lwz r4, 0xb0(r31) /* 801F37C0 001EF420 2C 04 00 00 */ cmpwi r4, 0 /* 801F37C4 001EF424 41 82 00 AC */ beq lbl_801F3870 /* 801F37C8 001EF428 C0 64 00 08 */ lfs f3, 8(r4) /* 801F37CC 001EF42C 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F37D0 001EF430 C0 44 00 04 */ lfs f2, 4(r4) /* 801F37D4 001EF434 C0 24 00 00 */ lfs f1, 0(r4) /* 801F37D8 001EF438 48 08 8C E9 */ bl PSMTXTrans /* 801F37DC 001EF43C 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F37E0 001EF440 C0 3F 00 48 */ lfs f1, 0x48(r31) /* 801F37E4 001EF444 C0 5F 00 4C */ lfs f2, 0x4c(r31) /* 801F37E8 001EF448 7C 64 1B 78 */ mr r4, r3 /* 801F37EC 001EF44C C0 7F 00 50 */ lfs f3, 0x50(r31) /* 801F37F0 001EF450 48 08 8D 79 */ bl PSMTXScaleApply /* 801F37F4 001EF454 80 BF 00 B0 */ lwz r5, 0xb0(r31) /* 801F37F8 001EF458 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F37FC 001EF45C 7C 64 1B 78 */ mr r4, r3 /* 801F3800 001EF460 C0 25 00 0C */ lfs f1, 0xc(r5) /* 801F3804 001EF464 C0 45 00 10 */ lfs f2, 0x10(r5) /* 801F3808 001EF468 C0 65 00 14 */ lfs f3, 0x14(r5) /* 801F380C 001EF46C 48 08 8C E9 */ bl PSMTXTransApply /* 801F3810 001EF470 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3814 001EF474 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 801F3818 001EF478 41 82 00 1C */ beq lbl_801F3834 /* 801F381C 001EF47C 38 7F 00 2C */ addi r3, r31, 0x2c /* 801F3820 001EF480 38 9F 00 3C */ addi r4, r31, 0x3c /* 801F3824 001EF484 48 02 FE 9D */ bl func_802236C0 /* 801F3828 001EF488 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F382C 001EF48C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 801F3830 001EF490 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F3834: /* 801F3834 001EF494 38 61 00 38 */ addi r3, r1, 0x38 /* 801F3838 001EF498 38 9F 00 2C */ addi r4, r31, 0x2c /* 801F383C 001EF49C 48 08 8D 85 */ bl PSMTXQuat /* 801F3840 001EF4A0 38 9F 00 D0 */ addi r4, r31, 0xd0 /* 801F3844 001EF4A4 38 61 00 38 */ addi r3, r1, 0x38 /* 801F3848 001EF4A8 7C 85 23 78 */ mr r5, r4 /* 801F384C 001EF4AC 48 08 87 41 */ bl PSMTXConcat /* 801F3850 001EF4B0 80 BF 00 B0 */ lwz r5, 0xb0(r31) /* 801F3854 001EF4B4 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F3858 001EF4B8 7C 64 1B 78 */ mr r4, r3 /* 801F385C 001EF4BC C0 25 00 18 */ lfs f1, 0x18(r5) /* 801F3860 001EF4C0 C0 45 00 1C */ lfs f2, 0x1c(r5) /* 801F3864 001EF4C4 C0 65 00 20 */ lfs f3, 0x20(r5) /* 801F3868 001EF4C8 48 08 8C 8D */ bl PSMTXTransApply /* 801F386C 001EF4CC 48 00 00 58 */ b lbl_801F38C4 lbl_801F3870: /* 801F3870 001EF4D0 C0 3F 00 48 */ lfs f1, 0x48(r31) /* 801F3874 001EF4D4 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F3878 001EF4D8 C0 5F 00 4C */ lfs f2, 0x4c(r31) /* 801F387C 001EF4DC C0 7F 00 50 */ lfs f3, 0x50(r31) /* 801F3880 001EF4E0 48 08 8C C1 */ bl PSMTXScale /* 801F3884 001EF4E4 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3888 001EF4E8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 801F388C 001EF4EC 41 82 00 1C */ beq lbl_801F38A8 /* 801F3890 001EF4F0 38 7F 00 2C */ addi r3, r31, 0x2c /* 801F3894 001EF4F4 38 9F 00 3C */ addi r4, r31, 0x3c /* 801F3898 001EF4F8 48 02 FE 29 */ bl func_802236C0 /* 801F389C 001EF4FC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F38A0 001EF500 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 801F38A4 001EF504 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F38A8: /* 801F38A8 001EF508 38 61 00 08 */ addi r3, r1, 8 /* 801F38AC 001EF50C 38 9F 00 2C */ addi r4, r31, 0x2c /* 801F38B0 001EF510 48 08 8D 11 */ bl PSMTXQuat /* 801F38B4 001EF514 38 9F 00 D0 */ addi r4, r31, 0xd0 /* 801F38B8 001EF518 38 61 00 08 */ addi r3, r1, 8 /* 801F38BC 001EF51C 7C 85 23 78 */ mr r5, r4 /* 801F38C0 001EF520 48 08 86 CD */ bl PSMTXConcat lbl_801F38C4: /* 801F38C4 001EF524 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 801F38C8 001EF528 C0 3F 00 20 */ lfs f1, 0x20(r31) /* 801F38CC 001EF52C C0 5F 00 24 */ lfs f2, 0x24(r31) /* 801F38D0 001EF530 7C 64 1B 78 */ mr r4, r3 /* 801F38D4 001EF534 C0 7F 00 28 */ lfs f3, 0x28(r31) /* 801F38D8 001EF538 48 08 8C 1D */ bl PSMTXTransApply /* 801F38DC 001EF53C 7F E3 FB 78 */ mr r3, r31 /* 801F38E0 001EF540 4B FF EE 31 */ bl func_801F2710 /* 801F38E4 001EF544 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F38E8 001EF548 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 801F38EC 001EF54C B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F38F0: /* 801F38F0 001EF550 80 01 00 74 */ lwz r0, 0x74(r1) /* 801F38F4 001EF554 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 801F38F8 001EF558 7C 08 03 A6 */ mtlr r0 /* 801F38FC 001EF55C 38 21 00 70 */ addi r1, r1, 0x70 /* 801F3900 001EF560 4E 80 00 20 */ blr .global func_801F3904 func_801F3904: /* 801F3904 001EF564 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F3908 001EF568 7C 08 02 A6 */ mflr r0 /* 801F390C 001EF56C 90 01 00 24 */ stw r0, 0x24(r1) /* 801F3910 001EF570 DB E1 00 18 */ stfd f31, 0x18(r1) /* 801F3914 001EF574 FF E0 08 90 */ fmr f31, f1 /* 801F3918 001EF578 93 E1 00 14 */ stw r31, 0x14(r1) /* 801F391C 001EF57C 80 63 00 CC */ lwz r3, 0xcc(r3) /* 801F3920 001EF580 48 00 00 20 */ b lbl_801F3940 lbl_801F3924: /* 801F3924 001EF584 81 83 01 00 */ lwz r12, 0x100(r3) /* 801F3928 001EF588 FC 20 F8 90 */ fmr f1, f31 /* 801F392C 001EF58C 83 E3 00 C4 */ lwz r31, 0xc4(r3) /* 801F3930 001EF590 81 8C 00 0C */ lwz r12, 0xc(r12) /* 801F3934 001EF594 7D 89 03 A6 */ mtctr r12 /* 801F3938 001EF598 4E 80 04 21 */ bctrl /* 801F393C 001EF59C 7F E3 FB 78 */ mr r3, r31 lbl_801F3940: /* 801F3940 001EF5A0 2C 03 00 00 */ cmpwi r3, 0 /* 801F3944 001EF5A4 40 82 FF E0 */ bne lbl_801F3924 /* 801F3948 001EF5A8 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F394C 001EF5AC CB E1 00 18 */ lfd f31, 0x18(r1) /* 801F3950 001EF5B0 83 E1 00 14 */ lwz r31, 0x14(r1) /* 801F3954 001EF5B4 7C 08 03 A6 */ mtlr r0 /* 801F3958 001EF5B8 38 21 00 20 */ addi r1, r1, 0x20 /* 801F395C 001EF5BC 4E 80 00 20 */ blr .global func_801F3960 func_801F3960: /* 801F3960 001EF5C0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F3964 001EF5C4 7C 08 02 A6 */ mflr r0 /* 801F3968 001EF5C8 90 01 00 24 */ stw r0, 0x24(r1) /* 801F396C 001EF5CC DB E1 00 10 */ stfd f31, 0x10(r1) /* 801F3970 001EF5D0 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 801F3974 001EF5D4 FF E0 08 90 */ fmr f31, f1 /* 801F3978 001EF5D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F397C 001EF5DC 7C 7F 1B 78 */ mr r31, r3 /* 801F3980 001EF5E0 48 00 02 FD */ bl func_801F3C7C /* 801F3984 001EF5E4 2C 03 00 00 */ cmpwi r3, 0 /* 801F3988 001EF5E8 41 82 00 08 */ beq lbl_801F3990 /* 801F398C 001EF5EC C3 E2 97 F0 */ lfs f31, lbl_80641DF0-_SDA2_BASE_(r2) lbl_801F3990: /* 801F3990 001EF5F0 FC 20 F8 90 */ fmr f1, f31 /* 801F3994 001EF5F4 7F E3 FB 78 */ mr r3, r31 /* 801F3998 001EF5F8 4B FE A2 ED */ bl func_801DDC84__13GSblendObjectFf /* 801F399C 001EF5FC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F39A0 001EF600 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 801F39A4 001EF604 2C 00 00 01 */ cmpwi r0, 1 /* 801F39A8 001EF608 40 82 00 18 */ bne lbl_801F39C0 /* 801F39AC 001EF60C 81 9F 01 00 */ lwz r12, 0x100(r31) /* 801F39B0 001EF610 7F E3 FB 78 */ mr r3, r31 /* 801F39B4 001EF614 81 8C 00 14 */ lwz r12, 0x14(r12) /* 801F39B8 001EF618 7D 89 03 A6 */ mtctr r12 /* 801F39BC 001EF61C 4E 80 04 21 */ bctrl lbl_801F39C0: /* 801F39C0 001EF620 FC 20 F8 90 */ fmr f1, f31 /* 801F39C4 001EF624 7F E3 FB 78 */ mr r3, r31 /* 801F39C8 001EF628 4B FF FF 3D */ bl func_801F3904 /* 801F39CC 001EF62C E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 801F39D0 001EF630 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F39D4 001EF634 CB E1 00 10 */ lfd f31, 0x10(r1) /* 801F39D8 001EF638 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F39DC 001EF63C 7C 08 03 A6 */ mtlr r0 /* 801F39E0 001EF640 38 21 00 20 */ addi r1, r1, 0x20 /* 801F39E4 001EF644 4E 80 00 20 */ blr .global func2__6GSnullFi func2__6GSnullFi: /* 801F39E8 001EF648 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801F39EC 001EF64C 7C 08 02 A6 */ mflr r0 /* 801F39F0 001EF650 90 01 00 14 */ stw r0, 0x14(r1) /* 801F39F4 001EF654 93 E1 00 0C */ stw r31, 0xc(r1) /* 801F39F8 001EF658 7C 9F 23 78 */ mr r31, r4 /* 801F39FC 001EF65C 93 C1 00 08 */ stw r30, 8(r1) /* 801F3A00 001EF660 7C 7E 1B 78 */ mr r30, r3 /* 801F3A04 001EF664 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 801F3A08 001EF668 2C 05 00 00 */ cmpwi r5, 0 /* 801F3A0C 001EF66C 41 82 02 58 */ beq lbl_801F3C64 /* 801F3A10 001EF670 38 80 00 01 */ li r4, 1 /* 801F3A14 001EF674 B0 83 00 10 */ sth r4, 0x10(r3) /* 801F3A18 001EF678 A0 05 00 0A */ lhz r0, 0xa(r5) /* 801F3A1C 001EF67C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 801F3A20 001EF680 41 82 00 10 */ beq lbl_801F3A30 /* 801F3A24 001EF684 60 80 00 02 */ ori r0, r4, 2 /* 801F3A28 001EF688 B0 03 00 10 */ sth r0, 0x10(r3) /* 801F3A2C 001EF68C 48 00 00 08 */ b lbl_801F3A34 lbl_801F3A30: /* 801F3A30 001EF690 B0 83 00 10 */ sth r4, 0x10(r3) lbl_801F3A34: /* 801F3A34 001EF694 80 83 00 1C */ lwz r4, 0x1c(r3) /* 801F3A38 001EF698 80 84 00 14 */ lwz r4, 0x14(r4) /* 801F3A3C 001EF69C 2C 04 00 00 */ cmpwi r4, 0 /* 801F3A40 001EF6A0 41 82 00 D0 */ beq lbl_801F3B10 /* 801F3A44 001EF6A4 C0 44 00 00 */ lfs f2, 0(r4) /* 801F3A48 001EF6A8 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3A4C 001EF6AC D0 43 00 48 */ stfs f2, 0x48(r3) /* 801F3A50 001EF6B0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3A54 001EF6B4 C0 04 00 04 */ lfs f0, 4(r4) /* 801F3A58 001EF6B8 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 801F3A5C 001EF6BC C0 04 00 08 */ lfs f0, 8(r4) /* 801F3A60 001EF6C0 D0 03 00 50 */ stfs f0, 0x50(r3) /* 801F3A64 001EF6C4 40 80 00 28 */ bge lbl_801F3A8C /* 801F3A68 001EF6C8 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3A6C 001EF6CC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3A70 001EF6D0 40 81 00 1C */ ble lbl_801F3A8C /* 801F3A74 001EF6D4 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3A78 001EF6D8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3A7C 001EF6DC 40 80 00 08 */ bge lbl_801F3A84 /* 801F3A80 001EF6E0 48 00 00 08 */ b lbl_801F3A88 lbl_801F3A84: /* 801F3A84 001EF6E4 FC 60 08 90 */ fmr f3, f1 lbl_801F3A88: /* 801F3A88 001EF6E8 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_801F3A8C: /* 801F3A8C 001EF6EC C0 43 00 4C */ lfs f2, 0x4c(r3) /* 801F3A90 001EF6F0 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3A94 001EF6F4 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3A98 001EF6F8 40 80 00 28 */ bge lbl_801F3AC0 /* 801F3A9C 001EF6FC C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3AA0 001EF700 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3AA4 001EF704 40 81 00 1C */ ble lbl_801F3AC0 /* 801F3AA8 001EF708 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3AAC 001EF70C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3AB0 001EF710 40 80 00 08 */ bge lbl_801F3AB8 /* 801F3AB4 001EF714 48 00 00 08 */ b lbl_801F3ABC lbl_801F3AB8: /* 801F3AB8 001EF718 FC 60 08 90 */ fmr f3, f1 lbl_801F3ABC: /* 801F3ABC 001EF71C D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_801F3AC0: /* 801F3AC0 001EF720 C0 43 00 50 */ lfs f2, 0x50(r3) /* 801F3AC4 001EF724 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3AC8 001EF728 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3ACC 001EF72C 40 80 00 28 */ bge lbl_801F3AF4 /* 801F3AD0 001EF730 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3AD4 001EF734 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3AD8 001EF738 40 81 00 1C */ ble lbl_801F3AF4 /* 801F3ADC 001EF73C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3AE0 001EF740 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3AE4 001EF744 40 80 00 08 */ bge lbl_801F3AEC /* 801F3AE8 001EF748 48 00 00 08 */ b lbl_801F3AF0 lbl_801F3AEC: /* 801F3AEC 001EF74C FC 60 08 90 */ fmr f3, f1 lbl_801F3AF0: /* 801F3AF0 001EF750 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_801F3AF4: /* 801F3AF4 001EF754 C0 43 00 48 */ lfs f2, 0x48(r3) /* 801F3AF8 001EF758 C0 23 00 4C */ lfs f1, 0x4c(r3) /* 801F3AFC 001EF75C C0 03 00 50 */ lfs f0, 0x50(r3) /* 801F3B00 001EF760 D0 43 00 A4 */ stfs f2, 0xa4(r3) /* 801F3B04 001EF764 D0 23 00 A8 */ stfs f1, 0xa8(r3) /* 801F3B08 001EF768 D0 03 00 AC */ stfs f0, 0xac(r3) /* 801F3B0C 001EF76C 48 00 00 20 */ b lbl_801F3B2C lbl_801F3B10: /* 801F3B10 001EF770 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F3B14 001EF774 D0 03 00 48 */ stfs f0, 0x48(r3) /* 801F3B18 001EF778 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 801F3B1C 001EF77C D0 03 00 50 */ stfs f0, 0x50(r3) /* 801F3B20 001EF780 D0 03 00 A4 */ stfs f0, 0xa4(r3) /* 801F3B24 001EF784 D0 03 00 A8 */ stfs f0, 0xa8(r3) /* 801F3B28 001EF788 D0 03 00 AC */ stfs f0, 0xac(r3) lbl_801F3B2C: /* 801F3B2C 001EF78C 80 83 00 1C */ lwz r4, 0x1c(r3) /* 801F3B30 001EF790 80 A4 00 10 */ lwz r5, 0x10(r4) /* 801F3B34 001EF794 2C 05 00 00 */ cmpwi r5, 0 /* 801F3B38 001EF798 41 82 00 64 */ beq lbl_801F3B9C /* 801F3B3C 001EF79C C0 05 00 00 */ lfs f0, 0(r5) /* 801F3B40 001EF7A0 38 9E 00 3C */ addi r4, r30, 0x3c /* 801F3B44 001EF7A4 D0 03 00 3C */ stfs f0, 0x3c(r3) /* 801F3B48 001EF7A8 C0 05 00 04 */ lfs f0, 4(r5) /* 801F3B4C 001EF7AC D0 03 00 40 */ stfs f0, 0x40(r3) /* 801F3B50 001EF7B0 C0 05 00 08 */ lfs f0, 8(r5) /* 801F3B54 001EF7B4 D0 03 00 44 */ stfs f0, 0x44(r3) /* 801F3B58 001EF7B8 38 63 00 2C */ addi r3, r3, 0x2c /* 801F3B5C 001EF7BC 48 02 FB 65 */ bl func_802236C0 /* 801F3B60 001EF7C0 C0 DE 00 3C */ lfs f6, 0x3c(r30) /* 801F3B64 001EF7C4 C0 BE 00 40 */ lfs f5, 0x40(r30) /* 801F3B68 001EF7C8 C0 9E 00 44 */ lfs f4, 0x44(r30) /* 801F3B6C 001EF7CC C0 7E 00 2C */ lfs f3, 0x2c(r30) /* 801F3B70 001EF7D0 C0 5E 00 30 */ lfs f2, 0x30(r30) /* 801F3B74 001EF7D4 C0 3E 00 34 */ lfs f1, 0x34(r30) /* 801F3B78 001EF7D8 C0 1E 00 38 */ lfs f0, 0x38(r30) /* 801F3B7C 001EF7DC D0 DE 00 98 */ stfs f6, 0x98(r30) /* 801F3B80 001EF7E0 D0 BE 00 9C */ stfs f5, 0x9c(r30) /* 801F3B84 001EF7E4 D0 9E 00 A0 */ stfs f4, 0xa0(r30) /* 801F3B88 001EF7E8 D0 7E 00 88 */ stfs f3, 0x88(r30) /* 801F3B8C 001EF7EC D0 5E 00 8C */ stfs f2, 0x8c(r30) /* 801F3B90 001EF7F0 D0 3E 00 90 */ stfs f1, 0x90(r30) /* 801F3B94 001EF7F4 D0 1E 00 94 */ stfs f0, 0x94(r30) /* 801F3B98 001EF7F8 48 00 00 44 */ b lbl_801F3BDC lbl_801F3B9C: /* 801F3B9C 001EF7FC C0 22 97 F0 */ lfs f1, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3BA0 001EF800 C0 02 97 F4 */ lfs f0, lbl_80641DF4-_SDA2_BASE_(r2) /* 801F3BA4 001EF804 D0 23 00 2C */ stfs f1, 0x2c(r3) /* 801F3BA8 001EF808 D0 23 00 30 */ stfs f1, 0x30(r3) /* 801F3BAC 001EF80C D0 23 00 34 */ stfs f1, 0x34(r3) /* 801F3BB0 001EF810 D0 03 00 38 */ stfs f0, 0x38(r3) /* 801F3BB4 001EF814 D0 23 00 3C */ stfs f1, 0x3c(r3) /* 801F3BB8 001EF818 D0 23 00 40 */ stfs f1, 0x40(r3) /* 801F3BBC 001EF81C D0 23 00 44 */ stfs f1, 0x44(r3) /* 801F3BC0 001EF820 D0 23 00 88 */ stfs f1, 0x88(r3) /* 801F3BC4 001EF824 D0 23 00 8C */ stfs f1, 0x8c(r3) /* 801F3BC8 001EF828 D0 23 00 90 */ stfs f1, 0x90(r3) /* 801F3BCC 001EF82C D0 03 00 94 */ stfs f0, 0x94(r3) /* 801F3BD0 001EF830 D0 23 00 98 */ stfs f1, 0x98(r3) /* 801F3BD4 001EF834 D0 23 00 9C */ stfs f1, 0x9c(r3) /* 801F3BD8 001EF838 D0 23 00 A0 */ stfs f1, 0xa0(r3) lbl_801F3BDC: /* 801F3BDC 001EF83C 80 7E 00 1C */ lwz r3, 0x1c(r30) /* 801F3BE0 001EF840 80 63 00 0C */ lwz r3, 0xc(r3) /* 801F3BE4 001EF844 2C 03 00 00 */ cmpwi r3, 0 /* 801F3BE8 001EF848 41 82 00 2C */ beq lbl_801F3C14 /* 801F3BEC 001EF84C C0 43 00 00 */ lfs f2, 0(r3) /* 801F3BF0 001EF850 D0 5E 00 20 */ stfs f2, 0x20(r30) /* 801F3BF4 001EF854 C0 23 00 04 */ lfs f1, 4(r3) /* 801F3BF8 001EF858 D0 3E 00 24 */ stfs f1, 0x24(r30) /* 801F3BFC 001EF85C C0 03 00 08 */ lfs f0, 8(r3) /* 801F3C00 001EF860 D0 1E 00 28 */ stfs f0, 0x28(r30) /* 801F3C04 001EF864 D0 5E 00 7C */ stfs f2, 0x7c(r30) /* 801F3C08 001EF868 D0 3E 00 80 */ stfs f1, 0x80(r30) /* 801F3C0C 001EF86C D0 1E 00 84 */ stfs f0, 0x84(r30) /* 801F3C10 001EF870 48 00 00 20 */ b lbl_801F3C30 lbl_801F3C14: /* 801F3C14 001EF874 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3C18 001EF878 D0 1E 00 20 */ stfs f0, 0x20(r30) /* 801F3C1C 001EF87C D0 1E 00 24 */ stfs f0, 0x24(r30) /* 801F3C20 001EF880 D0 1E 00 28 */ stfs f0, 0x28(r30) /* 801F3C24 001EF884 D0 1E 00 7C */ stfs f0, 0x7c(r30) /* 801F3C28 001EF888 D0 1E 00 80 */ stfs f0, 0x80(r30) /* 801F3C2C 001EF88C D0 1E 00 84 */ stfs f0, 0x84(r30) lbl_801F3C30: /* 801F3C30 001EF890 2C 1F 00 00 */ cmpwi r31, 0 /* 801F3C34 001EF894 41 82 00 30 */ beq lbl_801F3C64 /* 801F3C38 001EF898 83 FE 00 CC */ lwz r31, 0xcc(r30) /* 801F3C3C 001EF89C 48 00 00 20 */ b lbl_801F3C5C lbl_801F3C40: /* 801F3C40 001EF8A0 81 9F 01 00 */ lwz r12, 0x100(r31) /* 801F3C44 001EF8A4 7F E3 FB 78 */ mr r3, r31 /* 801F3C48 001EF8A8 38 80 00 01 */ li r4, 1 /* 801F3C4C 001EF8AC 81 8C 00 10 */ lwz r12, 0x10(r12) /* 801F3C50 001EF8B0 7D 89 03 A6 */ mtctr r12 /* 801F3C54 001EF8B4 4E 80 04 21 */ bctrl /* 801F3C58 001EF8B8 83 FF 00 C4 */ lwz r31, 0xc4(r31) lbl_801F3C5C: /* 801F3C5C 001EF8BC 2C 1F 00 00 */ cmpwi r31, 0 /* 801F3C60 001EF8C0 40 82 FF E0 */ bne lbl_801F3C40 lbl_801F3C64: /* 801F3C64 001EF8C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 801F3C68 001EF8C8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 801F3C6C 001EF8CC 83 C1 00 08 */ lwz r30, 8(r1) /* 801F3C70 001EF8D0 7C 08 03 A6 */ mtlr r0 /* 801F3C74 001EF8D4 38 21 00 10 */ addi r1, r1, 0x10 /* 801F3C78 001EF8D8 4E 80 00 20 */ blr .global func_801F3C7C func_801F3C7C: /* 801F3C7C 001EF8DC 80 83 00 B8 */ lwz r4, 0xb8(r3) /* 801F3C80 001EF8E0 2C 04 00 00 */ cmpwi r4, 0 /* 801F3C84 001EF8E4 41 82 00 4C */ beq lbl_801F3CD0 /* 801F3C88 001EF8E8 A0 04 00 DC */ lhz r0, 0xdc(r4) /* 801F3C8C 001EF8EC 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b /* 801F3C90 001EF8F0 2C 00 00 10 */ cmpwi r0, 0x10 /* 801F3C94 001EF8F4 40 82 00 3C */ bne lbl_801F3CD0 /* 801F3C98 001EF8F8 38 60 00 01 */ li r3, 1 /* 801F3C9C 001EF8FC 4E 80 00 20 */ blr /* 801F3CA0 001EF900 48 00 00 30 */ b lbl_801F3CD0 lbl_801F3CA4: /* 801F3CA4 001EF904 A0 03 00 10 */ lhz r0, 0x10(r3) /* 801F3CA8 001EF908 54 00 05 AD */ rlwinm. r0, r0, 0, 0x16, 0x16 /* 801F3CAC 001EF90C 41 82 00 0C */ beq lbl_801F3CB8 /* 801F3CB0 001EF910 38 60 00 01 */ li r3, 1 /* 801F3CB4 001EF914 4E 80 00 20 */ blr lbl_801F3CB8: /* 801F3CB8 001EF918 A0 03 00 14 */ lhz r0, 0x14(r3) /* 801F3CBC 001EF91C 54 00 05 AD */ rlwinm. r0, r0, 0, 0x16, 0x16 /* 801F3CC0 001EF920 41 82 00 0C */ beq lbl_801F3CCC /* 801F3CC4 001EF924 38 60 00 00 */ li r3, 0 /* 801F3CC8 001EF928 4E 80 00 20 */ blr lbl_801F3CCC: /* 801F3CCC 001EF92C 80 63 00 C0 */ lwz r3, 0xc0(r3) lbl_801F3CD0: /* 801F3CD0 001EF930 2C 03 00 00 */ cmpwi r3, 0 /* 801F3CD4 001EF934 40 82 FF D0 */ bne lbl_801F3CA4 /* 801F3CD8 001EF938 38 60 00 00 */ li r3, 0 /* 801F3CDC 001EF93C 4E 80 00 20 */ blr .global func_801F3CE0 func_801F3CE0: /* 801F3CE0 001EF940 80 83 00 B8 */ lwz r4, 0xb8(r3) /* 801F3CE4 001EF944 2C 04 00 00 */ cmpwi r4, 0 /* 801F3CE8 001EF948 41 82 00 4C */ beq lbl_801F3D34 /* 801F3CEC 001EF94C A0 04 00 DC */ lhz r0, 0xdc(r4) /* 801F3CF0 001EF950 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 801F3CF4 001EF954 2C 00 00 01 */ cmpwi r0, 1 /* 801F3CF8 001EF958 41 82 00 3C */ beq lbl_801F3D34 /* 801F3CFC 001EF95C 38 60 00 00 */ li r3, 0 /* 801F3D00 001EF960 4E 80 00 20 */ blr /* 801F3D04 001EF964 48 00 00 30 */ b lbl_801F3D34 lbl_801F3D08: /* 801F3D08 001EF968 A0 03 00 10 */ lhz r0, 0x10(r3) /* 801F3D0C 001EF96C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 801F3D10 001EF970 40 82 00 0C */ bne lbl_801F3D1C /* 801F3D14 001EF974 38 60 00 00 */ li r3, 0 /* 801F3D18 001EF978 4E 80 00 20 */ blr lbl_801F3D1C: /* 801F3D1C 001EF97C A0 03 00 14 */ lhz r0, 0x14(r3) /* 801F3D20 001EF980 54 00 05 6B */ rlwinm. r0, r0, 0, 0x15, 0x15 /* 801F3D24 001EF984 41 82 00 0C */ beq lbl_801F3D30 /* 801F3D28 001EF988 38 60 00 01 */ li r3, 1 /* 801F3D2C 001EF98C 4E 80 00 20 */ blr lbl_801F3D30: /* 801F3D30 001EF990 80 63 00 C0 */ lwz r3, 0xc0(r3) lbl_801F3D34: /* 801F3D34 001EF994 2C 03 00 00 */ cmpwi r3, 0 /* 801F3D38 001EF998 40 82 FF D0 */ bne lbl_801F3D08 /* 801F3D3C 001EF99C 38 60 00 01 */ li r3, 1 /* 801F3D40 001EF9A0 4E 80 00 20 */ blr .global lbl_801F3D44 lbl_801F3D44: /* 801F3D44 001EF9A4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801F3D48 001EF9A8 7C 08 02 A6 */ mflr r0 /* 801F3D4C 001EF9AC 90 01 00 24 */ stw r0, 0x24(r1) /* 801F3D50 001EF9B0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801F3D54 001EF9B4 7C 7F 1B 78 */ mr r31, r3 /* 801F3D58 001EF9B8 93 C1 00 18 */ stw r30, 0x18(r1) /* 801F3D5C 001EF9BC 7C BE 2B 78 */ mr r30, r5 /* 801F3D60 001EF9C0 88 04 00 01 */ lbz r0, 1(r4) /* 801F3D64 001EF9C4 2C 00 00 02 */ cmpwi r0, 2 /* 801F3D68 001EF9C8 41 82 01 54 */ beq lbl_801F3EBC /* 801F3D6C 001EF9CC 40 80 00 14 */ bge lbl_801F3D80 /* 801F3D70 001EF9D0 2C 00 00 00 */ cmpwi r0, 0 /* 801F3D74 001EF9D4 41 82 00 18 */ beq lbl_801F3D8C /* 801F3D78 001EF9D8 40 80 00 6C */ bge lbl_801F3DE4 /* 801F3D7C 001EF9DC 48 00 03 2C */ b lbl_801F40A8 lbl_801F3D80: /* 801F3D80 001EF9E0 2C 00 00 04 */ cmpwi r0, 4 /* 801F3D84 001EF9E4 40 80 03 24 */ bge lbl_801F40A8 /* 801F3D88 001EF9E8 48 00 02 C4 */ b lbl_801F404C lbl_801F3D8C: /* 801F3D8C 001EF9EC 2C 05 00 00 */ cmpwi r5, 0 /* 801F3D90 001EF9F0 41 82 00 20 */ beq lbl_801F3DB0 /* 801F3D94 001EF9F4 7C 83 23 78 */ mr r3, r4 /* 801F3D98 001EF9F8 38 9F 00 7C */ addi r4, r31, 0x7c /* 801F3D9C 001EF9FC 4B FE D4 DD */ bl func_801E1278 /* 801F3DA0 001EFA00 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3DA4 001EFA04 60 00 00 08 */ ori r0, r0, 8 /* 801F3DA8 001EFA08 B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F3DAC 001EFA0C 48 00 00 28 */ b lbl_801F3DD4 lbl_801F3DB0: /* 801F3DB0 001EFA10 7C 83 23 78 */ mr r3, r4 /* 801F3DB4 001EFA14 38 9F 00 20 */ addi r4, r31, 0x20 /* 801F3DB8 001EFA18 4B FE D4 C1 */ bl func_801E1278 /* 801F3DBC 001EFA1C C0 5F 00 20 */ lfs f2, 0x20(r31) /* 801F3DC0 001EFA20 C0 3F 00 24 */ lfs f1, 0x24(r31) /* 801F3DC4 001EFA24 C0 1F 00 28 */ lfs f0, 0x28(r31) /* 801F3DC8 001EFA28 D0 5F 00 7C */ stfs f2, 0x7c(r31) /* 801F3DCC 001EFA2C D0 3F 00 80 */ stfs f1, 0x80(r31) /* 801F3DD0 001EFA30 D0 1F 00 84 */ stfs f0, 0x84(r31) lbl_801F3DD4: /* 801F3DD4 001EFA34 7F E3 FB 78 */ mr r3, r31 /* 801F3DD8 001EFA38 38 80 00 01 */ li r4, 1 /* 801F3DDC 001EFA3C 4B FF E8 DD */ bl func_801F26B8 /* 801F3DE0 001EFA40 48 00 02 C8 */ b lbl_801F40A8 lbl_801F3DE4: /* 801F3DE4 001EFA44 88 04 00 06 */ lbz r0, 6(r4) /* 801F3DE8 001EFA48 28 00 00 02 */ cmplwi r0, 2 /* 801F3DEC 001EFA4C 40 82 00 6C */ bne lbl_801F3E58 /* 801F3DF0 001EFA50 2C 05 00 00 */ cmpwi r5, 0 /* 801F3DF4 001EFA54 41 82 00 24 */ beq lbl_801F3E18 /* 801F3DF8 001EFA58 7C 83 23 78 */ mr r3, r4 /* 801F3DFC 001EFA5C 38 9F 00 88 */ addi r4, r31, 0x88 /* 801F3E00 001EFA60 4B FE D5 61 */ bl func_801E1360 /* 801F3E04 001EFA64 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3E08 001EFA68 60 00 00 10 */ ori r0, r0, 0x10 /* 801F3E0C 001EFA6C 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 801F3E10 001EFA70 B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F3E14 001EFA74 48 00 00 98 */ b lbl_801F3EAC lbl_801F3E18: /* 801F3E18 001EFA78 7C 83 23 78 */ mr r3, r4 /* 801F3E1C 001EFA7C 38 9F 00 2C */ addi r4, r31, 0x2c /* 801F3E20 001EFA80 4B FE D5 41 */ bl func_801E1360 /* 801F3E24 001EFA84 A0 7F 00 10 */ lhz r3, 0x10(r31) /* 801F3E28 001EFA88 38 00 FF DB */ li r0, -37 /* 801F3E2C 001EFA8C C0 7F 00 2C */ lfs f3, 0x2c(r31) /* 801F3E30 001EFA90 C0 5F 00 30 */ lfs f2, 0x30(r31) /* 801F3E34 001EFA94 7C 60 00 38 */ and r0, r3, r0 /* 801F3E38 001EFA98 C0 3F 00 34 */ lfs f1, 0x34(r31) /* 801F3E3C 001EFA9C C0 1F 00 38 */ lfs f0, 0x38(r31) /* 801F3E40 001EFAA0 B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F3E44 001EFAA4 D0 7F 00 88 */ stfs f3, 0x88(r31) /* 801F3E48 001EFAA8 D0 5F 00 8C */ stfs f2, 0x8c(r31) /* 801F3E4C 001EFAAC D0 3F 00 90 */ stfs f1, 0x90(r31) /* 801F3E50 001EFAB0 D0 1F 00 94 */ stfs f0, 0x94(r31) /* 801F3E54 001EFAB4 48 00 00 58 */ b lbl_801F3EAC lbl_801F3E58: /* 801F3E58 001EFAB8 2C 05 00 00 */ cmpwi r5, 0 /* 801F3E5C 001EFABC 41 82 00 20 */ beq lbl_801F3E7C /* 801F3E60 001EFAC0 7C 83 23 78 */ mr r3, r4 /* 801F3E64 001EFAC4 38 9F 00 98 */ addi r4, r31, 0x98 /* 801F3E68 001EFAC8 4B FE D4 11 */ bl func_801E1278 /* 801F3E6C 001EFACC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3E70 001EFAD0 60 00 00 30 */ ori r0, r0, 0x30 /* 801F3E74 001EFAD4 B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F3E78 001EFAD8 48 00 00 34 */ b lbl_801F3EAC lbl_801F3E7C: /* 801F3E7C 001EFADC 7C 83 23 78 */ mr r3, r4 /* 801F3E80 001EFAE0 38 9F 00 3C */ addi r4, r31, 0x3c /* 801F3E84 001EFAE4 4B FE D3 F5 */ bl func_801E1278 /* 801F3E88 001EFAE8 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3E8C 001EFAEC C0 5F 00 3C */ lfs f2, 0x3c(r31) /* 801F3E90 001EFAF0 C0 3F 00 40 */ lfs f1, 0x40(r31) /* 801F3E94 001EFAF4 60 00 00 24 */ ori r0, r0, 0x24 /* 801F3E98 001EFAF8 C0 1F 00 44 */ lfs f0, 0x44(r31) /* 801F3E9C 001EFAFC B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F3EA0 001EFB00 D0 5F 00 98 */ stfs f2, 0x98(r31) /* 801F3EA4 001EFB04 D0 3F 00 9C */ stfs f1, 0x9c(r31) /* 801F3EA8 001EFB08 D0 1F 00 A0 */ stfs f0, 0xa0(r31) lbl_801F3EAC: /* 801F3EAC 001EFB0C 7F E3 FB 78 */ mr r3, r31 /* 801F3EB0 001EFB10 38 80 00 01 */ li r4, 1 /* 801F3EB4 001EFB14 4B FF E8 05 */ bl func_801F26B8 /* 801F3EB8 001EFB18 48 00 01 F0 */ b lbl_801F40A8 lbl_801F3EBC: /* 801F3EBC 001EFB1C 2C 05 00 00 */ cmpwi r5, 0 /* 801F3EC0 001EFB20 41 82 00 BC */ beq lbl_801F3F7C /* 801F3EC4 001EFB24 7C 83 23 78 */ mr r3, r4 /* 801F3EC8 001EFB28 38 9F 00 A4 */ addi r4, r31, 0xa4 /* 801F3ECC 001EFB2C 4B FE D3 AD */ bl func_801E1278 /* 801F3ED0 001EFB30 C0 5F 00 A4 */ lfs f2, 0xa4(r31) /* 801F3ED4 001EFB34 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3ED8 001EFB38 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3EDC 001EFB3C 40 80 00 28 */ bge lbl_801F3F04 /* 801F3EE0 001EFB40 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3EE4 001EFB44 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3EE8 001EFB48 40 81 00 1C */ ble lbl_801F3F04 /* 801F3EEC 001EFB4C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3EF0 001EFB50 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3EF4 001EFB54 40 80 00 08 */ bge lbl_801F3EFC /* 801F3EF8 001EFB58 48 00 00 08 */ b lbl_801F3F00 lbl_801F3EFC: /* 801F3EFC 001EFB5C FC 60 08 90 */ fmr f3, f1 lbl_801F3F00: /* 801F3F00 001EFB60 D0 7F 00 A4 */ stfs f3, 0xa4(r31) lbl_801F3F04: /* 801F3F04 001EFB64 C0 5F 00 A8 */ lfs f2, 0xa8(r31) /* 801F3F08 001EFB68 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3F0C 001EFB6C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3F10 001EFB70 40 80 00 28 */ bge lbl_801F3F38 /* 801F3F14 001EFB74 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3F18 001EFB78 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3F1C 001EFB7C 40 81 00 1C */ ble lbl_801F3F38 /* 801F3F20 001EFB80 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3F24 001EFB84 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3F28 001EFB88 40 80 00 08 */ bge lbl_801F3F30 /* 801F3F2C 001EFB8C 48 00 00 08 */ b lbl_801F3F34 lbl_801F3F30: /* 801F3F30 001EFB90 FC 60 08 90 */ fmr f3, f1 lbl_801F3F34: /* 801F3F34 001EFB94 D0 7F 00 A8 */ stfs f3, 0xa8(r31) lbl_801F3F38: /* 801F3F38 001EFB98 C0 5F 00 AC */ lfs f2, 0xac(r31) /* 801F3F3C 001EFB9C C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3F40 001EFBA0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3F44 001EFBA4 40 80 00 28 */ bge lbl_801F3F6C /* 801F3F48 001EFBA8 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3F4C 001EFBAC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3F50 001EFBB0 40 81 00 1C */ ble lbl_801F3F6C /* 801F3F54 001EFBB4 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3F58 001EFBB8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3F5C 001EFBBC 40 80 00 08 */ bge lbl_801F3F64 /* 801F3F60 001EFBC0 48 00 00 08 */ b lbl_801F3F68 lbl_801F3F64: /* 801F3F64 001EFBC4 FC 60 08 90 */ fmr f3, f1 lbl_801F3F68: /* 801F3F68 001EFBC8 D0 7F 00 AC */ stfs f3, 0xac(r31) lbl_801F3F6C: /* 801F3F6C 001EFBCC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F3F70 001EFBD0 60 00 00 40 */ ori r0, r0, 0x40 /* 801F3F74 001EFBD4 B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F3F78 001EFBD8 48 00 00 C4 */ b lbl_801F403C lbl_801F3F7C: /* 801F3F7C 001EFBDC 7C 83 23 78 */ mr r3, r4 /* 801F3F80 001EFBE0 38 9F 00 48 */ addi r4, r31, 0x48 /* 801F3F84 001EFBE4 4B FE D2 F5 */ bl func_801E1278 /* 801F3F88 001EFBE8 C0 5F 00 48 */ lfs f2, 0x48(r31) /* 801F3F8C 001EFBEC C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3F90 001EFBF0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3F94 001EFBF4 40 80 00 28 */ bge lbl_801F3FBC /* 801F3F98 001EFBF8 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3F9C 001EFBFC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3FA0 001EFC00 40 81 00 1C */ ble lbl_801F3FBC /* 801F3FA4 001EFC04 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3FA8 001EFC08 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3FAC 001EFC0C 40 80 00 08 */ bge lbl_801F3FB4 /* 801F3FB0 001EFC10 48 00 00 08 */ b lbl_801F3FB8 lbl_801F3FB4: /* 801F3FB4 001EFC14 FC 60 08 90 */ fmr f3, f1 lbl_801F3FB8: /* 801F3FB8 001EFC18 D0 7F 00 48 */ stfs f3, 0x48(r31) lbl_801F3FBC: /* 801F3FBC 001EFC1C C0 5F 00 4C */ lfs f2, 0x4c(r31) /* 801F3FC0 001EFC20 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3FC4 001EFC24 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3FC8 001EFC28 40 80 00 28 */ bge lbl_801F3FF0 /* 801F3FCC 001EFC2C C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F3FD0 001EFC30 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F3FD4 001EFC34 40 81 00 1C */ ble lbl_801F3FF0 /* 801F3FD8 001EFC38 C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F3FDC 001EFC3C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F3FE0 001EFC40 40 80 00 08 */ bge lbl_801F3FE8 /* 801F3FE4 001EFC44 48 00 00 08 */ b lbl_801F3FEC lbl_801F3FE8: /* 801F3FE8 001EFC48 FC 60 08 90 */ fmr f3, f1 lbl_801F3FEC: /* 801F3FEC 001EFC4C D0 7F 00 4C */ stfs f3, 0x4c(r31) lbl_801F3FF0: /* 801F3FF0 001EFC50 C0 5F 00 50 */ lfs f2, 0x50(r31) /* 801F3FF4 001EFC54 C0 22 97 FC */ lfs f1, lbl_80641DFC-_SDA2_BASE_(r2) /* 801F3FF8 001EFC58 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 801F3FFC 001EFC5C 40 80 00 28 */ bge lbl_801F4024 /* 801F4000 001EFC60 C0 62 97 F8 */ lfs f3, lbl_80641DF8-_SDA2_BASE_(r2) /* 801F4004 001EFC64 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 801F4008 001EFC68 40 81 00 1C */ ble lbl_801F4024 /* 801F400C 001EFC6C C0 02 97 F0 */ lfs f0, lbl_80641DF0-_SDA2_BASE_(r2) /* 801F4010 001EFC70 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 801F4014 001EFC74 40 80 00 08 */ bge lbl_801F401C /* 801F4018 001EFC78 48 00 00 08 */ b lbl_801F4020 lbl_801F401C: /* 801F401C 001EFC7C FC 60 08 90 */ fmr f3, f1 lbl_801F4020: /* 801F4020 001EFC80 D0 7F 00 50 */ stfs f3, 0x50(r31) lbl_801F4024: /* 801F4024 001EFC84 C0 5F 00 48 */ lfs f2, 0x48(r31) /* 801F4028 001EFC88 C0 3F 00 4C */ lfs f1, 0x4c(r31) /* 801F402C 001EFC8C C0 1F 00 50 */ lfs f0, 0x50(r31) /* 801F4030 001EFC90 D0 5F 00 A4 */ stfs f2, 0xa4(r31) /* 801F4034 001EFC94 D0 3F 00 A8 */ stfs f1, 0xa8(r31) /* 801F4038 001EFC98 D0 1F 00 AC */ stfs f0, 0xac(r31) lbl_801F403C: /* 801F403C 001EFC9C 7F E3 FB 78 */ mr r3, r31 /* 801F4040 001EFCA0 38 80 00 01 */ li r4, 1 /* 801F4044 001EFCA4 4B FF E6 75 */ bl func_801F26B8 /* 801F4048 001EFCA8 48 00 00 60 */ b lbl_801F40A8 lbl_801F404C: /* 801F404C 001EFCAC 7C 83 23 78 */ mr r3, r4 /* 801F4050 001EFCB0 38 81 00 08 */ addi r4, r1, 8 /* 801F4054 001EFCB4 4B FE D4 B1 */ bl func_801E1504 /* 801F4058 001EFCB8 2C 1E 00 00 */ cmpwi r30, 0 /* 801F405C 001EFCBC 88 81 00 08 */ lbz r4, 8(r1) /* 801F4060 001EFCC0 38 60 00 00 */ li r3, 0 /* 801F4064 001EFCC4 41 82 00 18 */ beq lbl_801F407C /* 801F4068 001EFCC8 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F406C 001EFCCC 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e /* 801F4070 001EFCD0 2C 00 00 02 */ cmpwi r0, 2 /* 801F4074 001EFCD4 40 82 00 08 */ bne lbl_801F407C /* 801F4078 001EFCD8 38 60 00 01 */ li r3, 1 lbl_801F407C: /* 801F407C 001EFCDC 7C 83 1B 78 */ or r3, r4, r3 /* 801F4080 001EFCE0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 801F4084 001EFCE4 98 61 00 08 */ stb r3, 8(r1) /* 801F4088 001EFCE8 41 82 00 14 */ beq lbl_801F409C /* 801F408C 001EFCEC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F4090 001EFCF0 60 00 00 02 */ ori r0, r0, 2 /* 801F4094 001EFCF4 B0 1F 00 10 */ sth r0, 0x10(r31) /* 801F4098 001EFCF8 48 00 00 10 */ b lbl_801F40A8 lbl_801F409C: /* 801F409C 001EFCFC A0 1F 00 10 */ lhz r0, 0x10(r31) /* 801F40A0 001EFD00 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 801F40A4 001EFD04 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_801F40A8: /* 801F40A8 001EFD08 80 01 00 24 */ lwz r0, 0x24(r1) /* 801F40AC 001EFD0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 801F40B0 001EFD10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 801F40B4 001EFD14 7C 08 03 A6 */ mtlr r0 /* 801F40B8 001EFD18 38 21 00 20 */ addi r1, r1, 0x20 /* 801F40BC 001EFD1C 4E 80 00 20 */ blr .global func_801F40C0 func_801F40C0: /* 801F40C0 001EFD20 38 A0 00 01 */ li r5, 1 /* 801F40C4 001EFD24 38 6D A1 08 */ addi r3, r13, lbl_8063F3C8-_SDA_BASE_ /* 801F40C8 001EFD28 38 80 00 04 */ li r4, 4 /* 801F40CC 001EFD2C 38 00 00 00 */ li r0, 0 /* 801F40D0 001EFD30 98 AD A1 08 */ stb r5, lbl_8063F3C8-_SDA_BASE_(r13) /* 801F40D4 001EFD34 B0 83 00 02 */ sth r4, 2(r3) /* 801F40D8 001EFD38 98 03 00 04 */ stb r0, 4(r3) /* 801F40DC 001EFD3C 4E 80 00 20 */ blr