.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global lbl_8002ABE8 lbl_8002ABE8: /* 8002ABE8 00026848 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8002ABEC 0002684C 7C 08 02 A6 */ mflr r0 /* 8002ABF0 00026850 90 01 00 74 */ stw r0, 0x74(r1) /* 8002ABF4 00026854 DB E1 00 60 */ stfd f31, 0x60(r1) /* 8002ABF8 00026858 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 8002ABFC 0002685C DB C1 00 50 */ stfd f30, 0x50(r1) /* 8002AC00 00026860 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8002AC04 00026864 DB A1 00 40 */ stfd f29, 0x40(r1) /* 8002AC08 00026868 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 8002AC0C 0002686C DB 81 00 30 */ stfd f28, 0x30(r1) /* 8002AC10 00026870 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 8002AC14 00026874 39 61 00 30 */ addi r11, r1, 0x30 /* 8002AC18 00026878 48 19 C5 11 */ bl _savegpr_27 /* 8002AC1C 0002687C 7C 9C 23 78 */ mr r28, r4 /* 8002AC20 00026880 7C BE 2B 78 */ mr r30, r5 /* 8002AC24 00026884 7C DB 33 78 */ mr r27, r6 /* 8002AC28 00026888 38 61 00 08 */ addi r3, r1, 8 /* 8002AC2C 0002688C 4B FF FC 21 */ bl func_8002A84C /* 8002AC30 00026890 48 00 84 59 */ bl func_80033088 /* 8002AC34 00026894 2C 03 00 00 */ cmpwi r3, 0 /* 8002AC38 00026898 7C 7F 1B 78 */ mr r31, r3 /* 8002AC3C 0002689C 40 82 00 0C */ bne lbl_8002AC48 /* 8002AC40 000268A0 38 60 00 01 */ li r3, 1 /* 8002AC44 000268A4 48 00 0D D8 */ b lbl_8002BA1C lbl_8002AC48: /* 8002AC48 000268A8 2C 1C 00 01 */ cmpwi r28, 1 /* 8002AC4C 000268AC 41 82 00 24 */ beq lbl_8002AC70 /* 8002AC50 000268B0 A8 1E 00 00 */ lha r0, 0(r30) /* 8002AC54 000268B4 2C 00 00 22 */ cmpwi r0, 0x22 /* 8002AC58 000268B8 41 82 00 0C */ beq lbl_8002AC64 /* 8002AC5C 000268BC 38 60 00 01 */ li r3, 1 /* 8002AC60 000268C0 48 00 0D BC */ b lbl_8002BA1C lbl_8002AC64: /* 8002AC64 000268C4 80 1E 00 04 */ lwz r0, 4(r30) /* 8002AC68 000268C8 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8002AC6C 000268CC 48 00 8F 11 */ bl func_80033B7C lbl_8002AC70: /* 8002AC70 000268D0 38 1C FF EF */ addi r0, r28, -17 /* 8002AC74 000268D4 28 00 00 5E */ cmplwi r0, 0x5e /* 8002AC78 000268D8 41 81 0D A0 */ bgt lbl_8002BA18 /* 8002AC7C 000268DC 3C 60 80 41 */ lis r3, lbl_80409A90@ha /* 8002AC80 000268E0 54 00 10 3A */ slwi r0, r0, 2 /* 8002AC84 000268E4 38 63 9A 90 */ addi r3, r3, lbl_80409A90@l /* 8002AC88 000268E8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8002AC8C 000268EC 7C 69 03 A6 */ mtctr r3 /* 8002AC90 000268F0 4E 80 04 20 */ bctr /* 8002AC94 000268F4 38 7E 00 08 */ addi r3, r30, 8 /* 8002AC98 000268F8 4B FF F6 05 */ bl func_8002A29C /* 8002AC9C 000268FC 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002ACA0 00026900 7F E3 FB 78 */ mr r3, r31 /* 8002ACA4 00026904 48 00 8E D9 */ bl func_80033B7C /* 8002ACA8 00026908 2C 03 00 00 */ cmpwi r3, 0 /* 8002ACAC 0002690C 41 82 00 20 */ beq lbl_8002ACCC /* 8002ACB0 00026910 38 80 00 23 */ li r4, 0x23 /* 8002ACB4 00026914 38 00 00 00 */ li r0, 0 /* 8002ACB8 00026918 B0 9B 00 00 */ sth r4, 0(r27) /* 8002ACBC 0002691C B0 1B 00 02 */ sth r0, 2(r27) /* 8002ACC0 00026920 48 00 A7 35 */ bl func_800353F4 /* 8002ACC4 00026924 90 7B 00 04 */ stw r3, 4(r27) /* 8002ACC8 00026928 48 00 0D 50 */ b lbl_8002BA18 lbl_8002ACCC: /* 8002ACCC 0002692C 7F 63 DB 78 */ mr r3, r27 /* 8002ACD0 00026930 38 80 00 00 */ li r4, 0 /* 8002ACD4 00026934 4B FF D8 81 */ bl func_80028554 /* 8002ACD8 00026938 48 00 0D 40 */ b lbl_8002BA18 /* 8002ACDC 0002693C 38 7E 00 08 */ addi r3, r30, 8 /* 8002ACE0 00026940 4B FF F5 BD */ bl func_8002A29C /* 8002ACE4 00026944 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002ACE8 00026948 7F E3 FB 78 */ mr r3, r31 /* 8002ACEC 0002694C 48 00 8E 91 */ bl func_80033B7C /* 8002ACF0 00026950 2C 03 00 00 */ cmpwi r3, 0 /* 8002ACF4 00026954 7C 7B 1B 78 */ mr r27, r3 /* 8002ACF8 00026958 41 82 00 44 */ beq lbl_8002AD3C /* 8002ACFC 0002695C 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002AD00 00026960 4B FF F6 79 */ bl func_8002A378 /* 8002AD04 00026964 FF C0 08 90 */ fmr f30, f1 /* 8002AD08 00026968 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002AD0C 0002696C 4B FF F6 6D */ bl func_8002A378 /* 8002AD10 00026970 FF A0 08 90 */ fmr f29, f1 /* 8002AD14 00026974 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002AD18 00026978 4B FF F6 61 */ bl func_8002A378 /* 8002AD1C 0002697C FF 80 08 90 */ fmr f28, f1 /* 8002AD20 00026980 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002AD24 00026984 4B FF F6 55 */ bl func_8002A378 /* 8002AD28 00026988 FC 40 E0 90 */ fmr f2, f28 /* 8002AD2C 0002698C 7F 63 DB 78 */ mr r3, r27 /* 8002AD30 00026990 FC 60 E8 90 */ fmr f3, f29 /* 8002AD34 00026994 FC 80 F0 90 */ fmr f4, f30 /* 8002AD38 00026998 48 00 A7 C5 */ bl func_800354FC lbl_8002AD3C: /* 8002AD3C 0002699C 38 60 00 01 */ li r3, 1 /* 8002AD40 000269A0 48 00 0C DC */ b lbl_8002BA1C /* 8002AD44 000269A4 38 7E 00 08 */ addi r3, r30, 8 /* 8002AD48 000269A8 4B FF F5 55 */ bl func_8002A29C /* 8002AD4C 000269AC 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002AD50 000269B0 7F E3 FB 78 */ mr r3, r31 /* 8002AD54 000269B4 48 00 8E 29 */ bl func_80033B7C /* 8002AD58 000269B8 2C 03 00 00 */ cmpwi r3, 0 /* 8002AD5C 000269BC 41 82 00 08 */ beq lbl_8002AD64 /* 8002AD60 000269C0 48 00 A8 C9 */ bl func_80035628 lbl_8002AD64: /* 8002AD64 000269C4 38 60 00 01 */ li r3, 1 /* 8002AD68 000269C8 48 00 0C B4 */ b lbl_8002BA1C /* 8002AD6C 000269CC 38 7E 00 08 */ addi r3, r30, 8 /* 8002AD70 000269D0 4B FF F5 2D */ bl func_8002A29C /* 8002AD74 000269D4 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002AD78 000269D8 7F E3 FB 78 */ mr r3, r31 /* 8002AD7C 000269DC 48 00 8E 01 */ bl func_80033B7C /* 8002AD80 000269E0 2C 03 00 00 */ cmpwi r3, 0 /* 8002AD84 000269E4 41 82 00 10 */ beq lbl_8002AD94 /* 8002AD88 000269E8 48 00 0C CD */ bl func_8002BA54 /* 8002AD8C 000269EC 7F 63 DB 78 */ mr r3, r27 /* 8002AD90 000269F0 4B FF F5 BD */ bl func_8002A34C lbl_8002AD94: /* 8002AD94 000269F4 38 60 00 01 */ li r3, 1 /* 8002AD98 000269F8 48 00 0C 84 */ b lbl_8002BA1C /* 8002AD9C 000269FC 38 7E 00 08 */ addi r3, r30, 8 /* 8002ADA0 00026A00 4B FF F4 FD */ bl func_8002A29C /* 8002ADA4 00026A04 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002ADA8 00026A08 7F E3 FB 78 */ mr r3, r31 /* 8002ADAC 00026A0C 48 00 8D D1 */ bl func_80033B7C /* 8002ADB0 00026A10 48 00 0C D9 */ bl func_8002BA88 /* 8002ADB4 00026A14 7F 63 DB 78 */ mr r3, r27 /* 8002ADB8 00026A18 4B FF F5 95 */ bl func_8002A34C /* 8002ADBC 00026A1C 38 60 00 01 */ li r3, 1 /* 8002ADC0 00026A20 48 00 0C 5C */ b lbl_8002BA1C /* 8002ADC4 00026A24 38 7E 00 08 */ addi r3, r30, 8 /* 8002ADC8 00026A28 4B FF F4 D5 */ bl func_8002A29C /* 8002ADCC 00026A2C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002ADD0 00026A30 7F E3 FB 78 */ mr r3, r31 /* 8002ADD4 00026A34 48 00 8D A9 */ bl func_80033B7C /* 8002ADD8 00026A38 2C 03 00 00 */ cmpwi r3, 0 /* 8002ADDC 00026A3C 41 82 00 10 */ beq lbl_8002ADEC /* 8002ADE0 00026A40 48 00 0C DD */ bl func_8002BABC /* 8002ADE4 00026A44 7F 63 DB 78 */ mr r3, r27 /* 8002ADE8 00026A48 4B FF F5 65 */ bl func_8002A34C lbl_8002ADEC: /* 8002ADEC 00026A4C 38 60 00 01 */ li r3, 1 /* 8002ADF0 00026A50 48 00 0C 2C */ b lbl_8002BA1C /* 8002ADF4 00026A54 38 7E 00 08 */ addi r3, r30, 8 /* 8002ADF8 00026A58 4B FF F4 A5 */ bl func_8002A29C /* 8002ADFC 00026A5C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002AE00 00026A60 7F E3 FB 78 */ mr r3, r31 /* 8002AE04 00026A64 48 00 8D 79 */ bl func_80033B7C /* 8002AE08 00026A68 2C 03 00 00 */ cmpwi r3, 0 /* 8002AE0C 00026A6C 41 82 00 10 */ beq lbl_8002AE1C /* 8002AE10 00026A70 48 00 0C E1 */ bl func_8002BAF0 /* 8002AE14 00026A74 7F 63 DB 78 */ mr r3, r27 /* 8002AE18 00026A78 4B FF F5 35 */ bl func_8002A34C lbl_8002AE1C: /* 8002AE1C 00026A7C 38 60 00 01 */ li r3, 1 /* 8002AE20 00026A80 48 00 0B FC */ b lbl_8002BA1C /* 8002AE24 00026A84 38 7E 00 08 */ addi r3, r30, 8 /* 8002AE28 00026A88 4B FF F4 75 */ bl func_8002A29C /* 8002AE2C 00026A8C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002AE30 00026A90 7F E3 FB 78 */ mr r3, r31 /* 8002AE34 00026A94 48 00 8D 49 */ bl func_80033B7C /* 8002AE38 00026A98 2C 03 00 00 */ cmpwi r3, 0 /* 8002AE3C 00026A9C 7C 7C 1B 78 */ mr r28, r3 /* 8002AE40 00026AA0 41 82 00 64 */ beq lbl_8002AEA4 /* 8002AE44 00026AA4 38 7E 00 38 */ addi r3, r30, 0x38 /* 8002AE48 00026AA8 4B FF F4 55 */ bl func_8002A29C /* 8002AE4C 00026AAC 7C 7B 1B 78 */ mr r27, r3 /* 8002AE50 00026AB0 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002AE54 00026AB4 4B FF F5 25 */ bl func_8002A378 /* 8002AE58 00026AB8 FF E0 08 90 */ fmr f31, f1 /* 8002AE5C 00026ABC 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002AE60 00026AC0 4B FF F5 19 */ bl func_8002A378 /* 8002AE64 00026AC4 FF C0 08 90 */ fmr f30, f1 /* 8002AE68 00026AC8 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002AE6C 00026ACC 4B FF F5 0D */ bl func_8002A378 /* 8002AE70 00026AD0 FF A0 08 90 */ fmr f29, f1 /* 8002AE74 00026AD4 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002AE78 00026AD8 4B FF F5 01 */ bl func_8002A378 /* 8002AE7C 00026ADC FF 80 08 90 */ fmr f28, f1 /* 8002AE80 00026AE0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002AE84 00026AE4 4B FF F4 F5 */ bl func_8002A378 /* 8002AE88 00026AE8 FC 40 E0 90 */ fmr f2, f28 /* 8002AE8C 00026AEC 7F 83 E3 78 */ mr r3, r28 /* 8002AE90 00026AF0 FC 60 E8 90 */ fmr f3, f29 /* 8002AE94 00026AF4 7F 64 DB 78 */ mr r4, r27 /* 8002AE98 00026AF8 FC 80 F0 90 */ fmr f4, f30 /* 8002AE9C 00026AFC FC A0 F8 90 */ fmr f5, f31 /* 8002AEA0 00026B00 48 00 A7 F1 */ bl func_80035690 lbl_8002AEA4: /* 8002AEA4 00026B04 38 60 00 01 */ li r3, 1 /* 8002AEA8 00026B08 48 00 0B 74 */ b lbl_8002BA1C /* 8002AEAC 00026B0C 38 7E 00 08 */ addi r3, r30, 8 /* 8002AEB0 00026B10 4B FF F3 ED */ bl func_8002A29C /* 8002AEB4 00026B14 28 03 00 01 */ cmplwi r3, 1 /* 8002AEB8 00026B18 7C 60 1B 78 */ mr r0, r3 /* 8002AEBC 00026B1C 41 81 00 38 */ bgt lbl_8002AEF4 /* 8002AEC0 00026B20 7F E3 FB 78 */ mr r3, r31 /* 8002AEC4 00026B24 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8002AEC8 00026B28 48 00 8C B5 */ bl func_80033B7C /* 8002AECC 00026B2C 2C 03 00 00 */ cmpwi r3, 0 /* 8002AED0 00026B30 41 82 00 24 */ beq lbl_8002AEF4 /* 8002AED4 00026B34 48 00 AA 41 */ bl func_80035914 /* 8002AED8 00026B38 2C 03 00 00 */ cmpwi r3, 0 /* 8002AEDC 00026B3C 41 82 00 18 */ beq lbl_8002AEF4 /* 8002AEE0 00026B40 7F 63 DB 78 */ mr r3, r27 /* 8002AEE4 00026B44 38 80 00 01 */ li r4, 1 /* 8002AEE8 00026B48 4B FF D6 6D */ bl func_80028554 /* 8002AEEC 00026B4C 38 60 00 01 */ li r3, 1 /* 8002AEF0 00026B50 48 00 0B 2C */ b lbl_8002BA1C lbl_8002AEF4: /* 8002AEF4 00026B54 7F E3 FB 78 */ mr r3, r31 /* 8002AEF8 00026B58 48 00 9A 39 */ bl func_80034930 /* 8002AEFC 00026B5C 7C 64 1B 78 */ mr r4, r3 /* 8002AF00 00026B60 7F 63 DB 78 */ mr r3, r27 /* 8002AF04 00026B64 4B FF D6 51 */ bl func_80028554 /* 8002AF08 00026B68 38 60 00 01 */ li r3, 1 /* 8002AF0C 00026B6C 48 00 0B 10 */ b lbl_8002BA1C /* 8002AF10 00026B70 7F E3 FB 78 */ mr r3, r31 /* 8002AF14 00026B74 48 00 8C F9 */ bl func_80033C0C /* 8002AF18 00026B78 38 60 00 01 */ li r3, 1 /* 8002AF1C 00026B7C 48 00 0B 00 */ b lbl_8002BA1C /* 8002AF20 00026B80 7F E3 FB 78 */ mr r3, r31 /* 8002AF24 00026B84 48 00 8D 49 */ bl func_80033C6C /* 8002AF28 00026B88 38 60 00 01 */ li r3, 1 /* 8002AF2C 00026B8C 48 00 0A F0 */ b lbl_8002BA1C /* 8002AF30 00026B90 38 7E 00 08 */ addi r3, r30, 8 /* 8002AF34 00026B94 4B FF F3 69 */ bl func_8002A29C /* 8002AF38 00026B98 7C 64 1B 78 */ mr r4, r3 /* 8002AF3C 00026B9C 7F E3 FB 78 */ mr r3, r31 /* 8002AF40 00026BA0 48 00 99 7D */ bl func_800348BC /* 8002AF44 00026BA4 38 60 00 01 */ li r3, 1 /* 8002AF48 00026BA8 48 00 0A D4 */ b lbl_8002BA1C /* 8002AF4C 00026BAC 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002AF50 00026BB0 4B FF F4 29 */ bl func_8002A378 /* 8002AF54 00026BB4 FF C0 08 90 */ fmr f30, f1 /* 8002AF58 00026BB8 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002AF5C 00026BBC 4B FF F4 1D */ bl func_8002A378 /* 8002AF60 00026BC0 FF A0 08 90 */ fmr f29, f1 /* 8002AF64 00026BC4 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002AF68 00026BC8 4B FF F4 11 */ bl func_8002A378 /* 8002AF6C 00026BCC FF 80 08 90 */ fmr f28, f1 /* 8002AF70 00026BD0 38 7E 00 08 */ addi r3, r30, 8 /* 8002AF74 00026BD4 4B FF F4 05 */ bl func_8002A378 /* 8002AF78 00026BD8 FC 40 E0 90 */ fmr f2, f28 /* 8002AF7C 00026BDC 7F E3 FB 78 */ mr r3, r31 /* 8002AF80 00026BE0 FC 60 E8 90 */ fmr f3, f29 /* 8002AF84 00026BE4 FC 80 F0 90 */ fmr f4, f30 /* 8002AF88 00026BE8 48 00 91 49 */ bl func_800340D0 /* 8002AF8C 00026BEC 38 60 00 01 */ li r3, 1 /* 8002AF90 00026BF0 48 00 0A 8C */ b lbl_8002BA1C /* 8002AF94 00026BF4 38 7E 00 08 */ addi r3, r30, 8 /* 8002AF98 00026BF8 4B FF F3 E1 */ bl func_8002A378 /* 8002AF9C 00026BFC 7F E3 FB 78 */ mr r3, r31 /* 8002AFA0 00026C00 48 00 91 D1 */ bl func_80034170 /* 8002AFA4 00026C04 38 60 00 01 */ li r3, 1 /* 8002AFA8 00026C08 48 00 0A 74 */ b lbl_8002BA1C /* 8002AFAC 00026C0C 38 7E 00 08 */ addi r3, r30, 8 /* 8002AFB0 00026C10 4B FF F3 C9 */ bl func_8002A378 /* 8002AFB4 00026C14 7F E3 FB 78 */ mr r3, r31 /* 8002AFB8 00026C18 48 00 92 C9 */ bl func_80034280 /* 8002AFBC 00026C1C 38 60 00 01 */ li r3, 1 /* 8002AFC0 00026C20 48 00 0A 5C */ b lbl_8002BA1C /* 8002AFC4 00026C24 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002AFC8 00026C28 4B FF F2 D5 */ bl func_8002A29C /* 8002AFCC 00026C2C 7C 7B 1B 78 */ mr r27, r3 /* 8002AFD0 00026C30 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002AFD4 00026C34 4B FF F3 A5 */ bl func_8002A378 /* 8002AFD8 00026C38 FF E0 08 90 */ fmr f31, f1 /* 8002AFDC 00026C3C 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002AFE0 00026C40 4B FF F3 99 */ bl func_8002A378 /* 8002AFE4 00026C44 FF C0 08 90 */ fmr f30, f1 /* 8002AFE8 00026C48 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002AFEC 00026C4C 4B FF F3 8D */ bl func_8002A378 /* 8002AFF0 00026C50 FF A0 08 90 */ fmr f29, f1 /* 8002AFF4 00026C54 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002AFF8 00026C58 4B FF F3 81 */ bl func_8002A378 /* 8002AFFC 00026C5C FF 80 08 90 */ fmr f28, f1 /* 8002B000 00026C60 38 7E 00 08 */ addi r3, r30, 8 /* 8002B004 00026C64 4B FF F3 75 */ bl func_8002A378 /* 8002B008 00026C68 FC 40 E0 90 */ fmr f2, f28 /* 8002B00C 00026C6C 7F E3 FB 78 */ mr r3, r31 /* 8002B010 00026C70 FC 60 E8 90 */ fmr f3, f29 /* 8002B014 00026C74 7F 64 DB 78 */ mr r4, r27 /* 8002B018 00026C78 FC 80 F0 90 */ fmr f4, f30 /* 8002B01C 00026C7C FC A0 F8 90 */ fmr f5, f31 /* 8002B020 00026C80 48 00 93 71 */ bl func_80034390 /* 8002B024 00026C84 38 60 00 01 */ li r3, 1 /* 8002B028 00026C88 48 00 09 F4 */ b lbl_8002BA1C /* 8002B02C 00026C8C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B030 00026C90 4B FF F2 6D */ bl func_8002A29C /* 8002B034 00026C94 7C 7B 1B 78 */ mr r27, r3 /* 8002B038 00026C98 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B03C 00026C9C 4B FF F3 3D */ bl func_8002A378 /* 8002B040 00026CA0 FF 80 08 90 */ fmr f28, f1 /* 8002B044 00026CA4 38 7E 00 08 */ addi r3, r30, 8 /* 8002B048 00026CA8 4B FF F3 31 */ bl func_8002A378 /* 8002B04C 00026CAC FC 40 E0 90 */ fmr f2, f28 /* 8002B050 00026CB0 7F E3 FB 78 */ mr r3, r31 /* 8002B054 00026CB4 7F 64 DB 78 */ mr r4, r27 /* 8002B058 00026CB8 48 00 94 3D */ bl func_80034494 /* 8002B05C 00026CBC 38 60 00 01 */ li r3, 1 /* 8002B060 00026CC0 48 00 09 BC */ b lbl_8002BA1C /* 8002B064 00026CC4 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B068 00026CC8 4B FF F2 35 */ bl func_8002A29C /* 8002B06C 00026CCC 7C 7B 1B 78 */ mr r27, r3 /* 8002B070 00026CD0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B074 00026CD4 4B FF F3 05 */ bl func_8002A378 /* 8002B078 00026CD8 FF 80 08 90 */ fmr f28, f1 /* 8002B07C 00026CDC 38 7E 00 08 */ addi r3, r30, 8 /* 8002B080 00026CE0 4B FF F2 F9 */ bl func_8002A378 /* 8002B084 00026CE4 FC 40 E0 90 */ fmr f2, f28 /* 8002B088 00026CE8 7F E3 FB 78 */ mr r3, r31 /* 8002B08C 00026CEC 7F 64 DB 78 */ mr r4, r27 /* 8002B090 00026CF0 48 00 94 9D */ bl func_8003452C /* 8002B094 00026CF4 38 60 00 01 */ li r3, 1 /* 8002B098 00026CF8 48 00 09 84 */ b lbl_8002BA1C /* 8002B09C 00026CFC 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B0A0 00026D00 4B FF F1 FD */ bl func_8002A29C /* 8002B0A4 00026D04 7C 7C 1B 78 */ mr r28, r3 /* 8002B0A8 00026D08 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B0AC 00026D0C 4B FF F2 CD */ bl func_8002A378 /* 8002B0B0 00026D10 FF 80 08 90 */ fmr f28, f1 /* 8002B0B4 00026D14 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B0B8 00026D18 4B FF F1 E5 */ bl func_8002A29C /* 8002B0BC 00026D1C 7C 7B 1B 78 */ mr r27, r3 /* 8002B0C0 00026D20 38 7E 00 08 */ addi r3, r30, 8 /* 8002B0C4 00026D24 4B FF F2 B5 */ bl func_8002A378 /* 8002B0C8 00026D28 FC 40 E0 90 */ fmr f2, f28 /* 8002B0CC 00026D2C 7F E3 FB 78 */ mr r3, r31 /* 8002B0D0 00026D30 7F 64 DB 78 */ mr r4, r27 /* 8002B0D4 00026D34 7F 85 E3 78 */ mr r5, r28 /* 8002B0D8 00026D38 48 00 95 59 */ bl func_80034630 /* 8002B0DC 00026D3C 38 60 00 01 */ li r3, 1 /* 8002B0E0 00026D40 48 00 09 3C */ b lbl_8002BA1C /* 8002B0E4 00026D44 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B0E8 00026D48 4B FF F1 B5 */ bl func_8002A29C /* 8002B0EC 00026D4C 7C 7C 1B 78 */ mr r28, r3 /* 8002B0F0 00026D50 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B0F4 00026D54 4B FF F2 85 */ bl func_8002A378 /* 8002B0F8 00026D58 FF 80 08 90 */ fmr f28, f1 /* 8002B0FC 00026D5C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B100 00026D60 4B FF F1 9D */ bl func_8002A29C /* 8002B104 00026D64 7C 7B 1B 78 */ mr r27, r3 /* 8002B108 00026D68 38 7E 00 08 */ addi r3, r30, 8 /* 8002B10C 00026D6C 4B FF F2 6D */ bl func_8002A378 /* 8002B110 00026D70 FC 40 E0 90 */ fmr f2, f28 /* 8002B114 00026D74 7F E3 FB 78 */ mr r3, r31 /* 8002B118 00026D78 7F 64 DB 78 */ mr r4, r27 /* 8002B11C 00026D7C 7F 85 E3 78 */ mr r5, r28 /* 8002B120 00026D80 48 00 94 A5 */ bl func_800345C4 /* 8002B124 00026D84 38 60 00 01 */ li r3, 1 /* 8002B128 00026D88 48 00 08 F4 */ b lbl_8002BA1C /* 8002B12C 00026D8C 38 7E 00 38 */ addi r3, r30, 0x38 /* 8002B130 00026D90 4B FF F1 6D */ bl func_8002A29C /* 8002B134 00026D94 7C 7C 1B 78 */ mr r28, r3 /* 8002B138 00026D98 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002B13C 00026D9C 4B FF F2 3D */ bl func_8002A378 /* 8002B140 00026DA0 FF E0 08 90 */ fmr f31, f1 /* 8002B144 00026DA4 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002B148 00026DA8 4B FF F2 31 */ bl func_8002A378 /* 8002B14C 00026DAC FF C0 08 90 */ fmr f30, f1 /* 8002B150 00026DB0 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B154 00026DB4 4B FF F1 49 */ bl func_8002A29C /* 8002B158 00026DB8 7C 7B 1B 78 */ mr r27, r3 /* 8002B15C 00026DBC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B160 00026DC0 4B FF F2 19 */ bl func_8002A378 /* 8002B164 00026DC4 FF A0 08 90 */ fmr f29, f1 /* 8002B168 00026DC8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B16C 00026DCC 4B FF F2 0D */ bl func_8002A378 /* 8002B170 00026DD0 FF 80 08 90 */ fmr f28, f1 /* 8002B174 00026DD4 38 7E 00 08 */ addi r3, r30, 8 /* 8002B178 00026DD8 4B FF F2 01 */ bl func_8002A378 /* 8002B17C 00026DDC FC 40 E0 90 */ fmr f2, f28 /* 8002B180 00026DE0 7F E3 FB 78 */ mr r3, r31 /* 8002B184 00026DE4 FC 60 E8 90 */ fmr f3, f29 /* 8002B188 00026DE8 7F 64 DB 78 */ mr r4, r27 /* 8002B18C 00026DEC FC 80 F0 90 */ fmr f4, f30 /* 8002B190 00026DF0 7F 85 E3 78 */ mr r5, r28 /* 8002B194 00026DF4 FC A0 F8 90 */ fmr f5, f31 /* 8002B198 00026DF8 48 00 95 05 */ bl func_8003469C /* 8002B19C 00026DFC 48 00 08 7C */ b lbl_8002BA18 /* 8002B1A0 00026E00 38 7E 00 38 */ addi r3, r30, 0x38 /* 8002B1A4 00026E04 4B FF F0 F9 */ bl func_8002A29C /* 8002B1A8 00026E08 7C 7C 1B 78 */ mr r28, r3 /* 8002B1AC 00026E0C 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002B1B0 00026E10 4B FF F1 C9 */ bl func_8002A378 /* 8002B1B4 00026E14 FF E0 08 90 */ fmr f31, f1 /* 8002B1B8 00026E18 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002B1BC 00026E1C 4B FF F1 BD */ bl func_8002A378 /* 8002B1C0 00026E20 FF C0 08 90 */ fmr f30, f1 /* 8002B1C4 00026E24 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B1C8 00026E28 4B FF F0 D5 */ bl func_8002A29C /* 8002B1CC 00026E2C 7C 7B 1B 78 */ mr r27, r3 /* 8002B1D0 00026E30 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B1D4 00026E34 4B FF F1 A5 */ bl func_8002A378 /* 8002B1D8 00026E38 FF A0 08 90 */ fmr f29, f1 /* 8002B1DC 00026E3C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B1E0 00026E40 4B FF F1 99 */ bl func_8002A378 /* 8002B1E4 00026E44 FF 80 08 90 */ fmr f28, f1 /* 8002B1E8 00026E48 38 7E 00 08 */ addi r3, r30, 8 /* 8002B1EC 00026E4C 4B FF F1 8D */ bl func_8002A378 /* 8002B1F0 00026E50 FC 40 E0 90 */ fmr f2, f28 /* 8002B1F4 00026E54 7F E3 FB 78 */ mr r3, r31 /* 8002B1F8 00026E58 FC 60 E8 90 */ fmr f3, f29 /* 8002B1FC 00026E5C 7F 64 DB 78 */ mr r4, r27 /* 8002B200 00026E60 FC 80 F0 90 */ fmr f4, f30 /* 8002B204 00026E64 7F 85 E3 78 */ mr r5, r28 /* 8002B208 00026E68 FC A0 F8 90 */ fmr f5, f31 /* 8002B20C 00026E6C 48 00 95 B1 */ bl func_800347BC /* 8002B210 00026E70 48 00 08 08 */ b lbl_8002BA18 /* 8002B214 00026E74 38 7E 00 08 */ addi r3, r30, 8 /* 8002B218 00026E78 4B FF F0 85 */ bl func_8002A29C /* 8002B21C 00026E7C 7C 03 00 D0 */ neg r0, r3 /* 8002B220 00026E80 7C 00 1B 78 */ or r0, r0, r3 /* 8002B224 00026E84 7F E3 FB 78 */ mr r3, r31 /* 8002B228 00026E88 54 04 0F FE */ srwi r4, r0, 0x1f /* 8002B22C 00026E8C 48 00 9C 3D */ bl func_80034E68 /* 8002B230 00026E90 48 00 07 E8 */ b lbl_8002BA18 /* 8002B234 00026E94 38 7E 00 08 */ addi r3, r30, 8 /* 8002B238 00026E98 4B FF F1 41 */ bl func_8002A378 /* 8002B23C 00026E9C 7F E3 FB 78 */ mr r3, r31 /* 8002B240 00026EA0 48 00 9C 61 */ bl func_80034EA0 /* 8002B244 00026EA4 48 00 07 D4 */ b lbl_8002BA18 /* 8002B248 00026EA8 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B24C 00026EAC 4B FF F0 51 */ bl func_8002A29C /* 8002B250 00026EB0 7C 7B 1B 78 */ mr r27, r3 /* 8002B254 00026EB4 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B258 00026EB8 4B FF F1 21 */ bl func_8002A378 /* 8002B25C 00026EBC FF 80 08 90 */ fmr f28, f1 /* 8002B260 00026EC0 38 7E 00 08 */ addi r3, r30, 8 /* 8002B264 00026EC4 4B FF F1 15 */ bl func_8002A378 /* 8002B268 00026EC8 FC 40 E0 90 */ fmr f2, f28 /* 8002B26C 00026ECC 7F E3 FB 78 */ mr r3, r31 /* 8002B270 00026ED0 7F 64 DB 78 */ mr r4, r27 /* 8002B274 00026ED4 48 00 9C 69 */ bl func_80034EDC /* 8002B278 00026ED8 48 00 07 A0 */ b lbl_8002BA18 /* 8002B27C 00026EDC 38 7E 00 08 */ addi r3, r30, 8 /* 8002B280 00026EE0 4B FF F0 1D */ bl func_8002A29C /* 8002B284 00026EE4 7C 03 00 D0 */ neg r0, r3 /* 8002B288 00026EE8 7C 00 1B 78 */ or r0, r0, r3 /* 8002B28C 00026EEC 7F E3 FB 78 */ mr r3, r31 /* 8002B290 00026EF0 54 04 0F FE */ srwi r4, r0, 0x1f /* 8002B294 00026EF4 48 00 9D 11 */ bl func_80034FA4 /* 8002B298 00026EF8 48 00 07 80 */ b lbl_8002BA18 /* 8002B29C 00026EFC 38 7E 00 08 */ addi r3, r30, 8 /* 8002B2A0 00026F00 4B FF F0 D9 */ bl func_8002A378 /* 8002B2A4 00026F04 7F E3 FB 78 */ mr r3, r31 /* 8002B2A8 00026F08 48 00 9D 05 */ bl func_80034FAC /* 8002B2AC 00026F0C 48 00 07 6C */ b lbl_8002BA18 /* 8002B2B0 00026F10 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B2B4 00026F14 4B FF EF E9 */ bl func_8002A29C /* 8002B2B8 00026F18 7C 7B 1B 78 */ mr r27, r3 /* 8002B2BC 00026F1C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B2C0 00026F20 4B FF F0 B9 */ bl func_8002A378 /* 8002B2C4 00026F24 FF 80 08 90 */ fmr f28, f1 /* 8002B2C8 00026F28 38 7E 00 08 */ addi r3, r30, 8 /* 8002B2CC 00026F2C 4B FF F0 AD */ bl func_8002A378 /* 8002B2D0 00026F30 FC 40 E0 90 */ fmr f2, f28 /* 8002B2D4 00026F34 7F E3 FB 78 */ mr r3, r31 /* 8002B2D8 00026F38 7F 64 DB 78 */ mr r4, r27 /* 8002B2DC 00026F3C 48 00 9D 31 */ bl func_8003500C /* 8002B2E0 00026F40 48 00 07 38 */ b lbl_8002BA18 /* 8002B2E4 00026F44 38 7E 00 08 */ addi r3, r30, 8 /* 8002B2E8 00026F48 4B FF EF B5 */ bl func_8002A29C /* 8002B2EC 00026F4C 7C 03 00 D0 */ neg r0, r3 /* 8002B2F0 00026F50 7C 00 1B 78 */ or r0, r0, r3 /* 8002B2F4 00026F54 7F E3 FB 78 */ mr r3, r31 /* 8002B2F8 00026F58 54 04 0F FE */ srwi r4, r0, 0x1f /* 8002B2FC 00026F5C 48 00 9D 7D */ bl func_80035078 /* 8002B300 00026F60 48 00 07 18 */ b lbl_8002BA18 /* 8002B304 00026F64 38 7E 00 08 */ addi r3, r30, 8 /* 8002B308 00026F68 4B FF EF 95 */ bl func_8002A29C /* 8002B30C 00026F6C 7C 64 1B 78 */ mr r4, r3 /* 8002B310 00026F70 7F E3 FB 78 */ mr r3, r31 /* 8002B314 00026F74 48 00 9D 6D */ bl func_80035080 /* 8002B318 00026F78 48 00 07 00 */ b lbl_8002BA18 /* 8002B31C 00026F7C 38 7E 00 08 */ addi r3, r30, 8 /* 8002B320 00026F80 4B FF EF 7D */ bl func_8002A29C /* 8002B324 00026F84 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B328 00026F88 7F E3 FB 78 */ mr r3, r31 /* 8002B32C 00026F8C 48 00 9D 75 */ bl func_800350A0 /* 8002B330 00026F90 48 00 06 E8 */ b lbl_8002BA18 /* 8002B334 00026F94 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B338 00026F98 4B FF F0 41 */ bl func_8002A378 /* 8002B33C 00026F9C FF 80 08 90 */ fmr f28, f1 /* 8002B340 00026FA0 38 7E 00 08 */ addi r3, r30, 8 /* 8002B344 00026FA4 4B FF F0 35 */ bl func_8002A378 /* 8002B348 00026FA8 FC 40 E0 90 */ fmr f2, f28 /* 8002B34C 00026FAC 7F E3 FB 78 */ mr r3, r31 /* 8002B350 00026FB0 48 00 9D 65 */ bl func_800350B4 /* 8002B354 00026FB4 48 00 06 C4 */ b lbl_8002BA18 /* 8002B358 00026FB8 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B35C 00026FBC 4B FF EF 41 */ bl func_8002A29C /* 8002B360 00026FC0 7C 7B 1B 78 */ mr r27, r3 /* 8002B364 00026FC4 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B368 00026FC8 4B FF F0 11 */ bl func_8002A378 /* 8002B36C 00026FCC FF A0 08 90 */ fmr f29, f1 /* 8002B370 00026FD0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B374 00026FD4 4B FF F0 05 */ bl func_8002A378 /* 8002B378 00026FD8 FF 80 08 90 */ fmr f28, f1 /* 8002B37C 00026FDC 38 7E 00 08 */ addi r3, r30, 8 /* 8002B380 00026FE0 4B FF EF F9 */ bl func_8002A378 /* 8002B384 00026FE4 FC 40 E0 90 */ fmr f2, f28 /* 8002B388 00026FE8 7F E3 FB 78 */ mr r3, r31 /* 8002B38C 00026FEC FC 60 E8 90 */ fmr f3, f29 /* 8002B390 00026FF0 7F 64 DB 78 */ mr r4, r27 /* 8002B394 00026FF4 48 00 9D B5 */ bl func_80035148 /* 8002B398 00026FF8 48 00 06 80 */ b lbl_8002BA18 /* 8002B39C 00026FFC 38 7E 00 08 */ addi r3, r30, 8 /* 8002B3A0 00027000 4B FF EE FD */ bl func_8002A29C /* 8002B3A4 00027004 7C 03 00 D0 */ neg r0, r3 /* 8002B3A8 00027008 7C 00 1B 78 */ or r0, r0, r3 /* 8002B3AC 0002700C 7F E3 FB 78 */ mr r3, r31 /* 8002B3B0 00027010 54 04 0F FE */ srwi r4, r0, 0x1f /* 8002B3B4 00027014 48 00 9E C5 */ bl func_80035278 /* 8002B3B8 00027018 48 00 06 60 */ b lbl_8002BA18 /* 8002B3BC 0002701C 38 7E 00 08 */ addi r3, r30, 8 /* 8002B3C0 00027020 4B FF EF B9 */ bl func_8002A378 /* 8002B3C4 00027024 7F E3 FB 78 */ mr r3, r31 /* 8002B3C8 00027028 48 00 9E B9 */ bl func_80035280 /* 8002B3CC 0002702C 48 00 06 4C */ b lbl_8002BA18 /* 8002B3D0 00027030 38 7E 00 08 */ addi r3, r30, 8 /* 8002B3D4 00027034 4B FF EE C9 */ bl func_8002A29C /* 8002B3D8 00027038 7C 64 1B 78 */ mr r4, r3 /* 8002B3DC 0002703C 7F E3 FB 78 */ mr r3, r31 /* 8002B3E0 00027040 48 00 9E CD */ bl func_800352AC /* 8002B3E4 00027044 48 00 06 34 */ b lbl_8002BA18 /* 8002B3E8 00027048 38 7E 00 08 */ addi r3, r30, 8 /* 8002B3EC 0002704C 4B FF EE B1 */ bl func_8002A29C /* 8002B3F0 00027050 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B3F4 00027054 7F E3 FB 78 */ mr r3, r31 /* 8002B3F8 00027058 48 00 9E D5 */ bl func_800352CC /* 8002B3FC 0002705C 48 00 06 1C */ b lbl_8002BA18 /* 8002B400 00027060 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B404 00027064 4B FF EE 99 */ bl func_8002A29C /* 8002B408 00027068 7C 7B 1B 78 */ mr r27, r3 /* 8002B40C 0002706C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B410 00027070 4B FF EF 69 */ bl func_8002A378 /* 8002B414 00027074 FF 80 08 90 */ fmr f28, f1 /* 8002B418 00027078 38 7E 00 08 */ addi r3, r30, 8 /* 8002B41C 0002707C 4B FF EE 81 */ bl func_8002A29C /* 8002B420 00027080 FC 20 E0 90 */ fmr f1, f28 /* 8002B424 00027084 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B428 00027088 7F E3 FB 78 */ mr r3, r31 /* 8002B42C 0002708C 7F 65 DB 78 */ mr r5, r27 /* 8002B430 00027090 48 00 9E B1 */ bl func_800352E0 /* 8002B434 00027094 48 00 05 E4 */ b lbl_8002BA18 /* 8002B438 00027098 38 7E 00 08 */ addi r3, r30, 8 /* 8002B43C 0002709C 4B FF EE 61 */ bl func_8002A29C /* 8002B440 000270A0 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002B444 000270A4 7F E3 FB 78 */ mr r3, r31 /* 8002B448 000270A8 48 00 87 35 */ bl func_80033B7C /* 8002B44C 000270AC 2C 03 00 00 */ cmpwi r3, 0 /* 8002B450 000270B0 41 82 05 C8 */ beq lbl_8002BA18 /* 8002B454 000270B4 A8 1E 00 10 */ lha r0, 0x10(r30) /* 8002B458 000270B8 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002B45C 000270BC 40 82 05 BC */ bne lbl_8002BA18 /* 8002B460 000270C0 80 9E 00 14 */ lwz r4, 0x14(r30) /* 8002B464 000270C4 48 00 A5 DD */ bl func_80035A40 /* 8002B468 000270C8 48 00 05 B0 */ b lbl_8002BA18 /* 8002B46C 000270CC 38 7E 00 08 */ addi r3, r30, 8 /* 8002B470 000270D0 4B FF EE 2D */ bl func_8002A29C /* 8002B474 000270D4 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002B478 000270D8 7F E3 FB 78 */ mr r3, r31 /* 8002B47C 000270DC 48 00 87 01 */ bl func_80033B7C /* 8002B480 000270E0 2C 03 00 00 */ cmpwi r3, 0 /* 8002B484 000270E4 7C 7B 1B 78 */ mr r27, r3 /* 8002B488 000270E8 41 82 05 90 */ beq lbl_8002BA18 /* 8002B48C 000270EC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B490 000270F0 4B FF EE 0D */ bl func_8002A29C /* 8002B494 000270F4 7C 64 1B 78 */ mr r4, r3 /* 8002B498 000270F8 7F 63 DB 78 */ mr r3, r27 /* 8002B49C 000270FC 48 00 A5 B5 */ bl func_80035A50 /* 8002B4A0 00027100 48 00 05 78 */ b lbl_8002BA18 /* 8002B4A4 00027104 38 7E 00 08 */ addi r3, r30, 8 /* 8002B4A8 00027108 4B FF ED F5 */ bl func_8002A29C /* 8002B4AC 0002710C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8002B4B0 00027110 7F E3 FB 78 */ mr r3, r31 /* 8002B4B4 00027114 48 00 86 C9 */ bl func_80033B7C /* 8002B4B8 00027118 2C 03 00 00 */ cmpwi r3, 0 /* 8002B4BC 0002711C 41 82 05 5C */ beq lbl_8002BA18 /* 8002B4C0 00027120 48 00 A5 F9 */ bl func_80035AB8 /* 8002B4C4 00027124 48 00 05 54 */ b lbl_8002BA18 /* 8002B4C8 00027128 38 60 00 01 */ li r3, 1 /* 8002B4CC 0002712C 48 00 05 50 */ b lbl_8002BA1C /* 8002B4D0 00027130 38 7E 00 08 */ addi r3, r30, 8 /* 8002B4D4 00027134 4B FF ED C9 */ bl func_8002A29C /* 8002B4D8 00027138 7C 64 1B 78 */ mr r4, r3 /* 8002B4DC 0002713C 7F E3 FB 78 */ mr r3, r31 /* 8002B4E0 00027140 48 00 95 59 */ bl func_80034A38 /* 8002B4E4 00027144 38 60 00 01 */ li r3, 1 /* 8002B4E8 00027148 48 00 05 34 */ b lbl_8002BA1C /* 8002B4EC 0002714C 38 7E 00 08 */ addi r3, r30, 8 /* 8002B4F0 00027150 4B FF EE 89 */ bl func_8002A378 /* 8002B4F4 00027154 7F E3 FB 78 */ mr r3, r31 /* 8002B4F8 00027158 48 00 95 C1 */ bl func_80034AB8 /* 8002B4FC 0002715C 38 60 00 01 */ li r3, 1 /* 8002B500 00027160 48 00 05 1C */ b lbl_8002BA1C /* 8002B504 00027164 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B508 00027168 4B FF ED 95 */ bl func_8002A29C /* 8002B50C 0002716C 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8002B510 00027170 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B514 00027174 4B FF ED 89 */ bl func_8002A29C /* 8002B518 00027178 54 7C 06 3E */ clrlwi r28, r3, 0x18 /* 8002B51C 0002717C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B520 00027180 4B FF ED 7D */ bl func_8002A29C /* 8002B524 00027184 54 7B 06 3E */ clrlwi r27, r3, 0x18 /* 8002B528 00027188 38 7E 00 08 */ addi r3, r30, 8 /* 8002B52C 0002718C 4B FF ED 71 */ bl func_8002A29C /* 8002B530 00027190 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B534 00027194 7F 65 DB 78 */ mr r5, r27 /* 8002B538 00027198 7F 86 E3 78 */ mr r6, r28 /* 8002B53C 0002719C 7F A7 EB 78 */ mr r7, r29 /* 8002B540 000271A0 38 61 00 08 */ addi r3, r1, 8 /* 8002B544 000271A4 4B FF F3 0D */ bl func_8002A850 /* 8002B548 000271A8 7F E3 FB 78 */ mr r3, r31 /* 8002B54C 000271AC 38 81 00 08 */ addi r4, r1, 8 /* 8002B550 000271B0 48 00 95 C1 */ bl func_80034B10 /* 8002B554 000271B4 38 60 00 01 */ li r3, 1 /* 8002B558 000271B8 48 00 04 C4 */ b lbl_8002BA1C /* 8002B55C 000271BC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B560 000271C0 4B FF EE 19 */ bl func_8002A378 /* 8002B564 000271C4 FF 80 08 90 */ fmr f28, f1 /* 8002B568 000271C8 38 7E 00 08 */ addi r3, r30, 8 /* 8002B56C 000271CC 4B FF EE 0D */ bl func_8002A378 /* 8002B570 000271D0 FC 40 E0 90 */ fmr f2, f28 /* 8002B574 000271D4 7F E3 FB 78 */ mr r3, r31 /* 8002B578 000271D8 48 00 95 BD */ bl func_80034B34 /* 8002B57C 000271DC 38 60 00 01 */ li r3, 1 /* 8002B580 000271E0 48 00 04 9C */ b lbl_8002BA1C /* 8002B584 000271E4 38 7E 00 08 */ addi r3, r30, 8 /* 8002B588 000271E8 4B FF ED F1 */ bl func_8002A378 /* 8002B58C 000271EC C0 02 81 28 */ lfs f0, lbl_80640728-_SDA2_BASE_(r2) /* 8002B590 000271F0 7F E3 FB 78 */ mr r3, r31 /* 8002B594 000271F4 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002B598 000271F8 48 00 95 A9 */ bl func_80034B40 /* 8002B59C 000271FC 38 60 00 01 */ li r3, 1 /* 8002B5A0 00027200 48 00 04 7C */ b lbl_8002BA1C /* 8002B5A4 00027204 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B5A8 00027208 4B FF ED D1 */ bl func_8002A378 /* 8002B5AC 0002720C FF 80 08 90 */ fmr f28, f1 /* 8002B5B0 00027210 38 7E 00 08 */ addi r3, r30, 8 /* 8002B5B4 00027214 4B FF ED C5 */ bl func_8002A378 /* 8002B5B8 00027218 FC 40 E0 90 */ fmr f2, f28 /* 8002B5BC 0002721C 7F E3 FB 78 */ mr r3, r31 /* 8002B5C0 00027220 48 00 95 89 */ bl func_80034B48 /* 8002B5C4 00027224 38 60 00 01 */ li r3, 1 /* 8002B5C8 00027228 48 00 04 54 */ b lbl_8002BA1C /* 8002B5CC 0002722C 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B5D0 00027230 4B FF EC CD */ bl func_8002A29C /* 8002B5D4 00027234 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8002B5D8 00027238 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B5DC 0002723C 4B FF EC C1 */ bl func_8002A29C /* 8002B5E0 00027240 54 7C 06 3E */ clrlwi r28, r3, 0x18 /* 8002B5E4 00027244 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B5E8 00027248 4B FF EC B5 */ bl func_8002A29C /* 8002B5EC 0002724C 54 7B 06 3E */ clrlwi r27, r3, 0x18 /* 8002B5F0 00027250 38 7E 00 08 */ addi r3, r30, 8 /* 8002B5F4 00027254 4B FF EC A9 */ bl func_8002A29C /* 8002B5F8 00027258 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B5FC 0002725C 7F 65 DB 78 */ mr r5, r27 /* 8002B600 00027260 7F 86 E3 78 */ mr r6, r28 /* 8002B604 00027264 7F A7 EB 78 */ mr r7, r29 /* 8002B608 00027268 38 61 00 08 */ addi r3, r1, 8 /* 8002B60C 0002726C 4B FF F2 45 */ bl func_8002A850 /* 8002B610 00027270 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002B614 00027274 4B FF EC 89 */ bl func_8002A29C /* 8002B618 00027278 7C 7B 1B 78 */ mr r27, r3 /* 8002B61C 0002727C 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002B620 00027280 4B FF ED 59 */ bl func_8002A378 /* 8002B624 00027284 7F E3 FB 78 */ mr r3, r31 /* 8002B628 00027288 7F 66 DB 78 */ mr r6, r27 /* 8002B62C 0002728C 38 A1 00 08 */ addi r5, r1, 8 /* 8002B630 00027290 38 80 00 05 */ li r4, 5 /* 8002B634 00027294 48 00 95 21 */ bl func_80034B54 /* 8002B638 00027298 38 60 00 01 */ li r3, 1 /* 8002B63C 0002729C 48 00 03 E0 */ b lbl_8002BA1C /* 8002B640 000272A0 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B644 000272A4 4B FF EC 59 */ bl func_8002A29C /* 8002B648 000272A8 7C 7B 1B 78 */ mr r27, r3 /* 8002B64C 000272AC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B650 000272B0 4B FF ED 29 */ bl func_8002A378 /* 8002B654 000272B4 FF A0 08 90 */ fmr f29, f1 /* 8002B658 000272B8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B65C 000272BC 4B FF ED 1D */ bl func_8002A378 /* 8002B660 000272C0 FF 80 08 90 */ fmr f28, f1 /* 8002B664 000272C4 38 7E 00 08 */ addi r3, r30, 8 /* 8002B668 000272C8 4B FF ED 11 */ bl func_8002A378 /* 8002B66C 000272CC FC 40 E0 90 */ fmr f2, f28 /* 8002B670 000272D0 7F E3 FB 78 */ mr r3, r31 /* 8002B674 000272D4 FC 60 E8 90 */ fmr f3, f29 /* 8002B678 000272D8 7F 65 DB 78 */ mr r5, r27 /* 8002B67C 000272DC 38 80 00 05 */ li r4, 5 /* 8002B680 000272E0 48 00 95 21 */ bl func_80034BA0 /* 8002B684 000272E4 38 60 00 01 */ li r3, 1 /* 8002B688 000272E8 48 00 03 94 */ b lbl_8002BA1C /* 8002B68C 000272EC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B690 000272F0 4B FF EC 0D */ bl func_8002A29C /* 8002B694 000272F4 7C 7B 1B 78 */ mr r27, r3 /* 8002B698 000272F8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B69C 000272FC 4B FF EC DD */ bl func_8002A378 /* 8002B6A0 00027300 FF 80 08 90 */ fmr f28, f1 /* 8002B6A4 00027304 38 7E 00 08 */ addi r3, r30, 8 /* 8002B6A8 00027308 4B FF EC D1 */ bl func_8002A378 /* 8002B6AC 0002730C C0 02 81 28 */ lfs f0, lbl_80640728-_SDA2_BASE_(r2) /* 8002B6B0 00027310 FC 40 E0 90 */ fmr f2, f28 /* 8002B6B4 00027314 7F E3 FB 78 */ mr r3, r31 /* 8002B6B8 00027318 7F 65 DB 78 */ mr r5, r27 /* 8002B6BC 0002731C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002B6C0 00027320 38 80 00 05 */ li r4, 5 /* 8002B6C4 00027324 48 00 95 6D */ bl func_80034C30 /* 8002B6C8 00027328 38 60 00 01 */ li r3, 1 /* 8002B6CC 0002732C 48 00 03 50 */ b lbl_8002BA1C /* 8002B6D0 00027330 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B6D4 00027334 4B FF EB C9 */ bl func_8002A29C /* 8002B6D8 00027338 7C 7B 1B 78 */ mr r27, r3 /* 8002B6DC 0002733C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B6E0 00027340 4B FF EC 99 */ bl func_8002A378 /* 8002B6E4 00027344 FF A0 08 90 */ fmr f29, f1 /* 8002B6E8 00027348 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B6EC 0002734C 4B FF EC 8D */ bl func_8002A378 /* 8002B6F0 00027350 FF 80 08 90 */ fmr f28, f1 /* 8002B6F4 00027354 38 7E 00 08 */ addi r3, r30, 8 /* 8002B6F8 00027358 4B FF EC 81 */ bl func_8002A378 /* 8002B6FC 0002735C FC 40 E0 90 */ fmr f2, f28 /* 8002B700 00027360 7F E3 FB 78 */ mr r3, r31 /* 8002B704 00027364 FC 60 E8 90 */ fmr f3, f29 /* 8002B708 00027368 7F 65 DB 78 */ mr r5, r27 /* 8002B70C 0002736C 38 80 00 05 */ li r4, 5 /* 8002B710 00027370 48 00 95 79 */ bl func_80034C88 /* 8002B714 00027374 38 60 00 01 */ li r3, 1 /* 8002B718 00027378 48 00 03 04 */ b lbl_8002BA1C /* 8002B71C 0002737C 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B720 00027380 4B FF EB 7D */ bl func_8002A29C /* 8002B724 00027384 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8002B728 00027388 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B72C 0002738C 4B FF EB 71 */ bl func_8002A29C /* 8002B730 00027390 54 7C 06 3E */ clrlwi r28, r3, 0x18 /* 8002B734 00027394 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B738 00027398 4B FF EB 65 */ bl func_8002A29C /* 8002B73C 0002739C 54 7B 06 3E */ clrlwi r27, r3, 0x18 /* 8002B740 000273A0 38 7E 00 08 */ addi r3, r30, 8 /* 8002B744 000273A4 4B FF EB 59 */ bl func_8002A29C /* 8002B748 000273A8 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B74C 000273AC 7F 65 DB 78 */ mr r5, r27 /* 8002B750 000273B0 7F 86 E3 78 */ mr r6, r28 /* 8002B754 000273B4 7F A7 EB 78 */ mr r7, r29 /* 8002B758 000273B8 38 61 00 08 */ addi r3, r1, 8 /* 8002B75C 000273BC 4B FF F0 F5 */ bl func_8002A850 /* 8002B760 000273C0 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002B764 000273C4 4B FF EB 39 */ bl func_8002A29C /* 8002B768 000273C8 7C 7B 1B 78 */ mr r27, r3 /* 8002B76C 000273CC 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002B770 000273D0 4B FF EC 09 */ bl func_8002A378 /* 8002B774 000273D4 7F E3 FB 78 */ mr r3, r31 /* 8002B778 000273D8 7F 66 DB 78 */ mr r6, r27 /* 8002B77C 000273DC 38 A1 00 08 */ addi r5, r1, 8 /* 8002B780 000273E0 38 80 00 06 */ li r4, 6 /* 8002B784 000273E4 48 00 93 D1 */ bl func_80034B54 /* 8002B788 000273E8 38 60 00 01 */ li r3, 1 /* 8002B78C 000273EC 48 00 02 90 */ b lbl_8002BA1C /* 8002B790 000273F0 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B794 000273F4 4B FF EB 09 */ bl func_8002A29C /* 8002B798 000273F8 7C 7B 1B 78 */ mr r27, r3 /* 8002B79C 000273FC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B7A0 00027400 4B FF EB D9 */ bl func_8002A378 /* 8002B7A4 00027404 FF A0 08 90 */ fmr f29, f1 /* 8002B7A8 00027408 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B7AC 0002740C 4B FF EB CD */ bl func_8002A378 /* 8002B7B0 00027410 FF 80 08 90 */ fmr f28, f1 /* 8002B7B4 00027414 38 7E 00 08 */ addi r3, r30, 8 /* 8002B7B8 00027418 4B FF EB C1 */ bl func_8002A378 /* 8002B7BC 0002741C FC 40 E0 90 */ fmr f2, f28 /* 8002B7C0 00027420 7F E3 FB 78 */ mr r3, r31 /* 8002B7C4 00027424 FC 60 E8 90 */ fmr f3, f29 /* 8002B7C8 00027428 7F 65 DB 78 */ mr r5, r27 /* 8002B7CC 0002742C 38 80 00 06 */ li r4, 6 /* 8002B7D0 00027430 48 00 93 D1 */ bl func_80034BA0 /* 8002B7D4 00027434 38 60 00 01 */ li r3, 1 /* 8002B7D8 00027438 48 00 02 44 */ b lbl_8002BA1C /* 8002B7DC 0002743C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B7E0 00027440 4B FF EA BD */ bl func_8002A29C /* 8002B7E4 00027444 7C 7B 1B 78 */ mr r27, r3 /* 8002B7E8 00027448 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B7EC 0002744C 4B FF EB 8D */ bl func_8002A378 /* 8002B7F0 00027450 FF 80 08 90 */ fmr f28, f1 /* 8002B7F4 00027454 38 7E 00 08 */ addi r3, r30, 8 /* 8002B7F8 00027458 4B FF EB 81 */ bl func_8002A378 /* 8002B7FC 0002745C C0 02 81 28 */ lfs f0, lbl_80640728-_SDA2_BASE_(r2) /* 8002B800 00027460 FC 40 E0 90 */ fmr f2, f28 /* 8002B804 00027464 7F E3 FB 78 */ mr r3, r31 /* 8002B808 00027468 7F 65 DB 78 */ mr r5, r27 /* 8002B80C 0002746C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002B810 00027470 38 80 00 06 */ li r4, 6 /* 8002B814 00027474 48 00 94 1D */ bl func_80034C30 /* 8002B818 00027478 38 60 00 01 */ li r3, 1 /* 8002B81C 0002747C 48 00 02 00 */ b lbl_8002BA1C /* 8002B820 00027480 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B824 00027484 4B FF EA 79 */ bl func_8002A29C /* 8002B828 00027488 7C 7B 1B 78 */ mr r27, r3 /* 8002B82C 0002748C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B830 00027490 4B FF EB 49 */ bl func_8002A378 /* 8002B834 00027494 FF A0 08 90 */ fmr f29, f1 /* 8002B838 00027498 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B83C 0002749C 4B FF EB 3D */ bl func_8002A378 /* 8002B840 000274A0 FF 80 08 90 */ fmr f28, f1 /* 8002B844 000274A4 38 7E 00 08 */ addi r3, r30, 8 /* 8002B848 000274A8 4B FF EB 31 */ bl func_8002A378 /* 8002B84C 000274AC FC 40 E0 90 */ fmr f2, f28 /* 8002B850 000274B0 7F E3 FB 78 */ mr r3, r31 /* 8002B854 000274B4 FC 60 E8 90 */ fmr f3, f29 /* 8002B858 000274B8 7F 65 DB 78 */ mr r5, r27 /* 8002B85C 000274BC 38 80 00 06 */ li r4, 6 /* 8002B860 000274C0 48 00 94 29 */ bl func_80034C88 /* 8002B864 000274C4 38 60 00 01 */ li r3, 1 /* 8002B868 000274C8 48 00 01 B4 */ b lbl_8002BA1C /* 8002B86C 000274CC 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B870 000274D0 4B FF EA 2D */ bl func_8002A29C /* 8002B874 000274D4 54 7B 06 3E */ clrlwi r27, r3, 0x18 /* 8002B878 000274D8 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B87C 000274DC 4B FF EA 21 */ bl func_8002A29C /* 8002B880 000274E0 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8002B884 000274E4 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B888 000274E8 4B FF EA 15 */ bl func_8002A29C /* 8002B88C 000274EC 54 7C 06 3E */ clrlwi r28, r3, 0x18 /* 8002B890 000274F0 38 7E 00 08 */ addi r3, r30, 8 /* 8002B894 000274F4 4B FF EA 09 */ bl func_8002A29C /* 8002B898 000274F8 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8002B89C 000274FC 7F 85 E3 78 */ mr r5, r28 /* 8002B8A0 00027500 7F A6 EB 78 */ mr r6, r29 /* 8002B8A4 00027504 7F 67 DB 78 */ mr r7, r27 /* 8002B8A8 00027508 38 61 00 08 */ addi r3, r1, 8 /* 8002B8AC 0002750C 4B FF EF A5 */ bl func_8002A850 /* 8002B8B0 00027510 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002B8B4 00027514 4B FF E9 E9 */ bl func_8002A29C /* 8002B8B8 00027518 7C 7C 1B 78 */ mr r28, r3 /* 8002B8BC 0002751C 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002B8C0 00027520 4B FF EA B9 */ bl func_8002A378 /* 8002B8C4 00027524 7F E3 FB 78 */ mr r3, r31 /* 8002B8C8 00027528 7F 86 E3 78 */ mr r6, r28 /* 8002B8CC 0002752C 38 A1 00 08 */ addi r5, r1, 8 /* 8002B8D0 00027530 38 80 00 07 */ li r4, 7 /* 8002B8D4 00027534 48 00 92 81 */ bl func_80034B54 /* 8002B8D8 00027538 38 60 00 01 */ li r3, 1 /* 8002B8DC 0002753C 48 00 01 40 */ b lbl_8002BA1C /* 8002B8E0 00027540 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B8E4 00027544 4B FF E9 B9 */ bl func_8002A29C /* 8002B8E8 00027548 7C 7C 1B 78 */ mr r28, r3 /* 8002B8EC 0002754C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B8F0 00027550 4B FF EA 89 */ bl func_8002A378 /* 8002B8F4 00027554 FF A0 08 90 */ fmr f29, f1 /* 8002B8F8 00027558 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B8FC 0002755C 4B FF EA 7D */ bl func_8002A378 /* 8002B900 00027560 FF 80 08 90 */ fmr f28, f1 /* 8002B904 00027564 38 7E 00 08 */ addi r3, r30, 8 /* 8002B908 00027568 4B FF EA 71 */ bl func_8002A378 /* 8002B90C 0002756C FC 40 E0 90 */ fmr f2, f28 /* 8002B910 00027570 7F E3 FB 78 */ mr r3, r31 /* 8002B914 00027574 FC 60 E8 90 */ fmr f3, f29 /* 8002B918 00027578 7F 85 E3 78 */ mr r5, r28 /* 8002B91C 0002757C 38 80 00 07 */ li r4, 7 /* 8002B920 00027580 48 00 92 81 */ bl func_80034BA0 /* 8002B924 00027584 38 60 00 01 */ li r3, 1 /* 8002B928 00027588 48 00 00 F4 */ b lbl_8002BA1C /* 8002B92C 0002758C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B930 00027590 4B FF E9 6D */ bl func_8002A29C /* 8002B934 00027594 7C 7C 1B 78 */ mr r28, r3 /* 8002B938 00027598 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B93C 0002759C 4B FF EA 3D */ bl func_8002A378 /* 8002B940 000275A0 FF 80 08 90 */ fmr f28, f1 /* 8002B944 000275A4 38 7E 00 08 */ addi r3, r30, 8 /* 8002B948 000275A8 4B FF EA 31 */ bl func_8002A378 /* 8002B94C 000275AC C0 02 81 28 */ lfs f0, lbl_80640728-_SDA2_BASE_(r2) /* 8002B950 000275B0 FC 40 E0 90 */ fmr f2, f28 /* 8002B954 000275B4 7F E3 FB 78 */ mr r3, r31 /* 8002B958 000275B8 7F 85 E3 78 */ mr r5, r28 /* 8002B95C 000275BC EC 20 00 72 */ fmuls f1, f0, f1 /* 8002B960 000275C0 38 80 00 07 */ li r4, 7 /* 8002B964 000275C4 48 00 92 CD */ bl func_80034C30 /* 8002B968 000275C8 38 60 00 01 */ li r3, 1 /* 8002B96C 000275CC 48 00 00 B0 */ b lbl_8002BA1C /* 8002B970 000275D0 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B974 000275D4 4B FF E9 29 */ bl func_8002A29C /* 8002B978 000275D8 7C 7C 1B 78 */ mr r28, r3 /* 8002B97C 000275DC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B980 000275E0 4B FF E9 F9 */ bl func_8002A378 /* 8002B984 000275E4 FF 80 08 90 */ fmr f28, f1 /* 8002B988 000275E8 38 7E 00 08 */ addi r3, r30, 8 /* 8002B98C 000275EC 4B FF E9 ED */ bl func_8002A378 /* 8002B990 000275F0 FC 40 E0 90 */ fmr f2, f28 /* 8002B994 000275F4 7F E3 FB 78 */ mr r3, r31 /* 8002B998 000275F8 7F 84 E3 78 */ mr r4, r28 /* 8002B99C 000275FC 48 00 93 7D */ bl func_80034D18 /* 8002B9A0 00027600 38 60 00 01 */ li r3, 1 /* 8002B9A4 00027604 48 00 00 78 */ b lbl_8002BA1C /* 8002B9A8 00027608 38 7E 00 38 */ addi r3, r30, 0x38 /* 8002B9AC 0002760C 4B FF E8 F1 */ bl func_8002A29C /* 8002B9B0 00027610 7C 7C 1B 78 */ mr r28, r3 /* 8002B9B4 00027614 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002B9B8 00027618 4B FF E9 C1 */ bl func_8002A378 /* 8002B9BC 0002761C FF 80 08 90 */ fmr f28, f1 /* 8002B9C0 00027620 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002B9C4 00027624 4B FF E9 B5 */ bl func_8002A378 /* 8002B9C8 00027628 FF A0 08 90 */ fmr f29, f1 /* 8002B9CC 0002762C 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002B9D0 00027630 4B FF E8 CD */ bl func_8002A29C /* 8002B9D4 00027634 7C 7D 1B 78 */ mr r29, r3 /* 8002B9D8 00027638 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002B9DC 0002763C 4B FF E9 9D */ bl func_8002A378 /* 8002B9E0 00027640 FF C0 08 90 */ fmr f30, f1 /* 8002B9E4 00027644 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002B9E8 00027648 4B FF E9 91 */ bl func_8002A378 /* 8002B9EC 0002764C FF E0 08 90 */ fmr f31, f1 /* 8002B9F0 00027650 38 7E 00 08 */ addi r3, r30, 8 /* 8002B9F4 00027654 4B FF E9 85 */ bl func_8002A378 /* 8002B9F8 00027658 FC 40 F8 90 */ fmr f2, f31 /* 8002B9FC 0002765C 7F E3 FB 78 */ mr r3, r31 /* 8002BA00 00027660 FC 60 F0 90 */ fmr f3, f30 /* 8002BA04 00027664 7F A4 EB 78 */ mr r4, r29 /* 8002BA08 00027668 FC 80 E8 90 */ fmr f4, f29 /* 8002BA0C 0002766C 7F 85 E3 78 */ mr r5, r28 /* 8002BA10 00027670 FC A0 E0 90 */ fmr f5, f28 /* 8002BA14 00027674 48 00 93 55 */ bl func_80034D68 lbl_8002BA18: /* 8002BA18 00027678 38 60 00 01 */ li r3, 1 lbl_8002BA1C: /* 8002BA1C 0002767C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8002BA20 00027680 CB E1 00 60 */ lfd f31, 0x60(r1) /* 8002BA24 00027684 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8002BA28 00027688 CB C1 00 50 */ lfd f30, 0x50(r1) /* 8002BA2C 0002768C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8002BA30 00027690 CB A1 00 40 */ lfd f29, 0x40(r1) /* 8002BA34 00027694 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 8002BA38 00027698 39 61 00 30 */ addi r11, r1, 0x30 /* 8002BA3C 0002769C CB 81 00 30 */ lfd f28, 0x30(r1) /* 8002BA40 000276A0 48 19 B7 35 */ bl _restgpr_27 /* 8002BA44 000276A4 80 01 00 74 */ lwz r0, 0x74(r1) /* 8002BA48 000276A8 7C 08 03 A6 */ mtlr r0 /* 8002BA4C 000276AC 38 21 00 70 */ addi r1, r1, 0x70 /* 8002BA50 000276B0 4E 80 00 20 */ blr .global func_8002BA54 func_8002BA54: /* 8002BA54 000276B4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8002BA58 000276B8 3C 00 43 30 */ lis r0, 0x4330 /* 8002BA5C 000276BC C8 42 81 30 */ lfd f2, lbl_80640730-_SDA2_BASE_(r2) /* 8002BA60 000276C0 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8002BA64 000276C4 90 01 00 08 */ stw r0, 8(r1) /* 8002BA68 000276C8 A0 04 00 04 */ lhz r0, 4(r4) /* 8002BA6C 000276CC C0 03 00 0C */ lfs f0, 0xc(r3) /* 8002BA70 000276D0 90 01 00 0C */ stw r0, 0xc(r1) /* 8002BA74 000276D4 C8 21 00 08 */ lfd f1, 8(r1) /* 8002BA78 000276D8 EC 21 10 28 */ fsubs f1, f1, f2 /* 8002BA7C 000276DC EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BA80 000276E0 38 21 00 10 */ addi r1, r1, 0x10 /* 8002BA84 000276E4 4E 80 00 20 */ blr .global func_8002BA88 func_8002BA88: /* 8002BA88 000276E8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8002BA8C 000276EC 3C 00 43 30 */ lis r0, 0x4330 /* 8002BA90 000276F0 C8 42 81 30 */ lfd f2, lbl_80640730-_SDA2_BASE_(r2) /* 8002BA94 000276F4 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8002BA98 000276F8 90 01 00 08 */ stw r0, 8(r1) /* 8002BA9C 000276FC A0 04 00 06 */ lhz r0, 6(r4) /* 8002BAA0 00027700 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8002BAA4 00027704 90 01 00 0C */ stw r0, 0xc(r1) /* 8002BAA8 00027708 C8 21 00 08 */ lfd f1, 8(r1) /* 8002BAAC 0002770C EC 21 10 28 */ fsubs f1, f1, f2 /* 8002BAB0 00027710 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BAB4 00027714 38 21 00 10 */ addi r1, r1, 0x10 /* 8002BAB8 00027718 4E 80 00 20 */ blr .global func_8002BABC func_8002BABC: /* 8002BABC 0002771C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8002BAC0 00027720 3C 00 43 30 */ lis r0, 0x4330 /* 8002BAC4 00027724 C8 42 81 30 */ lfd f2, lbl_80640730-_SDA2_BASE_(r2) /* 8002BAC8 00027728 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8002BACC 0002772C 90 01 00 08 */ stw r0, 8(r1) /* 8002BAD0 00027730 A0 04 00 04 */ lhz r0, 4(r4) /* 8002BAD4 00027734 C0 03 00 14 */ lfs f0, 0x14(r3) /* 8002BAD8 00027738 90 01 00 0C */ stw r0, 0xc(r1) /* 8002BADC 0002773C C8 21 00 08 */ lfd f1, 8(r1) /* 8002BAE0 00027740 EC 21 10 28 */ fsubs f1, f1, f2 /* 8002BAE4 00027744 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BAE8 00027748 38 21 00 10 */ addi r1, r1, 0x10 /* 8002BAEC 0002774C 4E 80 00 20 */ blr .global func_8002BAF0 func_8002BAF0: /* 8002BAF0 00027750 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8002BAF4 00027754 3C 00 43 30 */ lis r0, 0x4330 /* 8002BAF8 00027758 C8 42 81 30 */ lfd f2, lbl_80640730-_SDA2_BASE_(r2) /* 8002BAFC 0002775C 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8002BB00 00027760 90 01 00 08 */ stw r0, 8(r1) /* 8002BB04 00027764 A0 04 00 06 */ lhz r0, 6(r4) /* 8002BB08 00027768 C0 03 00 18 */ lfs f0, 0x18(r3) /* 8002BB0C 0002776C 90 01 00 0C */ stw r0, 0xc(r1) /* 8002BB10 00027770 C8 21 00 08 */ lfd f1, 8(r1) /* 8002BB14 00027774 EC 21 10 28 */ fsubs f1, f1, f2 /* 8002BB18 00027778 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BB1C 0002777C 38 21 00 10 */ addi r1, r1, 0x10 /* 8002BB20 00027780 4E 80 00 20 */ blr .global func_8002BB24 func_8002BB24: /* 8002BB24 00027784 38 A0 00 01 */ li r5, 1 /* 8002BB28 00027788 38 6D 97 18 */ addi r3, r13, lbl_8063E9D8-_SDA_BASE_ /* 8002BB2C 0002778C 38 80 00 04 */ li r4, 4 /* 8002BB30 00027790 38 00 00 00 */ li r0, 0 /* 8002BB34 00027794 98 AD 97 18 */ stb r5, lbl_8063E9D8-_SDA_BASE_(r13) /* 8002BB38 00027798 B0 83 00 02 */ sth r4, 2(r3) /* 8002BB3C 0002779C 98 03 00 04 */ stb r0, 4(r3) /* 8002BB40 000277A0 4E 80 00 20 */ blr .global lbl_8002BB44 lbl_8002BB44: /* 8002BB44 000277A4 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8002BB48 000277A8 7C 08 02 A6 */ mflr r0 /* 8002BB4C 000277AC 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8002BB50 000277B0 DB E1 00 90 */ stfd f31, 0x90(r1) /* 8002BB54 000277B4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8002BB58 000277B8 DB C1 00 80 */ stfd f30, 0x80(r1) /* 8002BB5C 000277BC F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 8002BB60 000277C0 DB A1 00 70 */ stfd f29, 0x70(r1) /* 8002BB64 000277C4 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 8002BB68 000277C8 39 61 00 70 */ addi r11, r1, 0x70 /* 8002BB6C 000277CC 48 19 B5 B9 */ bl _savegpr_26 /* 8002BB70 000277D0 7C 7A 1B 78 */ mr r26, r3 /* 8002BB74 000277D4 7C 9B 23 78 */ mr r27, r4 /* 8002BB78 000277D8 7C BE 2B 78 */ mr r30, r5 /* 8002BB7C 000277DC 7C DD 33 78 */ mr r29, r6 /* 8002BB80 000277E0 3B E0 00 00 */ li r31, 0 /* 8002BB84 000277E4 48 01 46 71 */ bl func_800401F4 /* 8002BB88 000277E8 7C 7C 1B 78 */ mr r28, r3 /* 8002BB8C 000277EC 38 61 00 4C */ addi r3, r1, 0x4c /* 8002BB90 000277F0 4B FF E7 05 */ bl func_8002A294 /* 8002BB94 000277F4 38 61 00 40 */ addi r3, r1, 0x40 /* 8002BB98 000277F8 4B FF E6 FD */ bl func_8002A294 /* 8002BB9C 000277FC 38 61 00 30 */ addi r3, r1, 0x30 /* 8002BBA0 00027800 48 00 0E D5 */ bl func_8002CA74 /* 8002BBA4 00027804 2C 1C 00 00 */ cmpwi r28, 0 /* 8002BBA8 00027808 40 82 00 0C */ bne lbl_8002BBB4 /* 8002BBAC 0002780C 38 60 00 01 */ li r3, 1 /* 8002BBB0 00027810 48 00 0E 94 */ b lbl_8002CA44 lbl_8002BBB4: /* 8002BBB4 00027814 2C 1B 00 01 */ cmpwi r27, 1 /* 8002BBB8 00027818 41 82 00 24 */ beq lbl_8002BBDC /* 8002BBBC 0002781C 80 9E 00 04 */ lwz r4, 4(r30) /* 8002BBC0 00027820 7F 83 E3 78 */ mr r3, r28 /* 8002BBC4 00027824 48 01 47 C1 */ bl func_80040384 /* 8002BBC8 00027828 2C 03 00 00 */ cmpwi r3, 0 /* 8002BBCC 0002782C 7C 7F 1B 78 */ mr r31, r3 /* 8002BBD0 00027830 40 82 00 0C */ bne lbl_8002BBDC /* 8002BBD4 00027834 38 60 00 01 */ li r3, 1 /* 8002BBD8 00027838 48 00 0E 6C */ b lbl_8002CA44 lbl_8002BBDC: /* 8002BBDC 0002783C 28 1B 00 4E */ cmplwi r27, 0x4e /* 8002BBE0 00027840 41 81 0E 60 */ bgt lbl_8002CA40 /* 8002BBE4 00027844 3C 60 80 41 */ lis r3, lbl_80409C10@ha /* 8002BBE8 00027848 57 60 10 3A */ slwi r0, r27, 2 /* 8002BBEC 0002784C 38 63 9C 10 */ addi r3, r3, lbl_80409C10@l /* 8002BBF0 00027850 7C 63 00 2E */ lwzx r3, r3, r0 /* 8002BBF4 00027854 7C 69 03 A6 */ mtctr r3 /* 8002BBF8 00027858 4E 80 04 20 */ bctr /* 8002BBFC 0002785C 7F 83 E3 78 */ mr r3, r28 /* 8002BC00 00027860 48 01 46 D5 */ bl func_800402D4 /* 8002BC04 00027864 2C 03 00 00 */ cmpwi r3, 0 /* 8002BC08 00027868 41 82 00 18 */ beq lbl_8002BC20 /* 8002BC0C 0002786C 38 80 00 23 */ li r4, 0x23 /* 8002BC10 00027870 38 00 00 01 */ li r0, 1 /* 8002BC14 00027874 B0 9D 00 00 */ sth r4, 0(r29) /* 8002BC18 00027878 B0 1D 00 02 */ sth r0, 2(r29) /* 8002BC1C 0002787C 90 7D 00 04 */ stw r3, 4(r29) lbl_8002BC20: /* 8002BC20 00027880 38 60 00 01 */ li r3, 1 /* 8002BC24 00027884 48 00 0E 20 */ b lbl_8002CA44 /* 8002BC28 00027888 80 9E 00 04 */ lwz r4, 4(r30) /* 8002BC2C 0002788C 7F 83 E3 78 */ mr r3, r28 /* 8002BC30 00027890 48 01 47 29 */ bl func_80040358 /* 8002BC34 00027894 38 60 00 01 */ li r3, 1 /* 8002BC38 00027898 48 00 0E 0C */ b lbl_8002CA44 /* 8002BC3C 0002789C 38 7E 00 08 */ addi r3, r30, 8 /* 8002BC40 000278A0 4B FF E7 39 */ bl func_8002A378 /* 8002BC44 000278A4 7F E3 FB 78 */ mr r3, r31 /* 8002BC48 000278A8 48 00 0E 31 */ bl func_8002CA78 /* 8002BC4C 000278AC 38 60 00 01 */ li r3, 1 /* 8002BC50 000278B0 48 00 0D F4 */ b lbl_8002CA44 /* 8002BC54 000278B4 7F E3 FB 78 */ mr r3, r31 /* 8002BC58 000278B8 48 00 0E 5D */ bl func_8002CAB4 /* 8002BC5C 000278BC 7F A3 EB 78 */ mr r3, r29 /* 8002BC60 000278C0 4B FF E6 ED */ bl func_8002A34C /* 8002BC64 000278C4 38 60 00 01 */ li r3, 1 /* 8002BC68 000278C8 48 00 0D DC */ b lbl_8002CA44 /* 8002BC6C 000278CC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BC70 000278D0 4B FF E6 2D */ bl func_8002A29C /* 8002BC74 000278D4 7C 7C 1B 78 */ mr r28, r3 /* 8002BC78 000278D8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BC7C 000278DC 4B FF E6 FD */ bl func_8002A378 /* 8002BC80 000278E0 FF A0 08 90 */ fmr f29, f1 /* 8002BC84 000278E4 38 7E 00 08 */ addi r3, r30, 8 /* 8002BC88 000278E8 4B FF E6 F1 */ bl func_8002A378 /* 8002BC8C 000278EC FC 40 E8 90 */ fmr f2, f29 /* 8002BC90 000278F0 7F E3 FB 78 */ mr r3, r31 /* 8002BC94 000278F4 7F 84 E3 78 */ mr r4, r28 /* 8002BC98 000278F8 48 01 53 D9 */ bl func_80041070 /* 8002BC9C 000278FC 38 60 00 01 */ li r3, 1 /* 8002BCA0 00027900 48 00 0D A4 */ b lbl_8002CA44 /* 8002BCA4 00027904 38 7E 00 08 */ addi r3, r30, 8 /* 8002BCA8 00027908 4B FF E7 31 */ bl func_8002A3D8 /* 8002BCAC 0002790C 7C 64 1B 78 */ mr r4, r3 /* 8002BCB0 00027910 7F E3 FB 78 */ mr r3, r31 /* 8002BCB4 00027914 48 01 53 F9 */ bl func_800410AC /* 8002BCB8 00027918 38 60 00 01 */ li r3, 1 /* 8002BCBC 0002791C 48 00 0D 88 */ b lbl_8002CA44 /* 8002BCC0 00027920 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BCC4 00027924 4B FF E6 B5 */ bl func_8002A378 /* 8002BCC8 00027928 FF C0 08 90 */ fmr f30, f1 /* 8002BCCC 0002792C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BCD0 00027930 4B FF E6 A9 */ bl func_8002A378 /* 8002BCD4 00027934 FF A0 08 90 */ fmr f29, f1 /* 8002BCD8 00027938 38 7E 00 08 */ addi r3, r30, 8 /* 8002BCDC 0002793C 4B FF E6 9D */ bl func_8002A378 /* 8002BCE0 00027940 FC 40 E8 90 */ fmr f2, f29 /* 8002BCE4 00027944 38 61 00 20 */ addi r3, r1, 0x20 /* 8002BCE8 00027948 FC 60 F0 90 */ fmr f3, f30 /* 8002BCEC 0002794C 48 00 0D D1 */ bl func_8002CABC /* 8002BCF0 00027950 7C 64 1B 78 */ mr r4, r3 /* 8002BCF4 00027954 7F E3 FB 78 */ mr r3, r31 /* 8002BCF8 00027958 48 01 53 B5 */ bl func_800410AC /* 8002BCFC 0002795C 38 60 00 01 */ li r3, 1 /* 8002BD00 00027960 48 00 0D 44 */ b lbl_8002CA44 /* 8002BD04 00027964 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BD08 00027968 4B FF E6 71 */ bl func_8002A378 /* 8002BD0C 0002796C FF C0 08 90 */ fmr f30, f1 /* 8002BD10 00027970 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BD14 00027974 4B FF E6 65 */ bl func_8002A378 /* 8002BD18 00027978 FF A0 08 90 */ fmr f29, f1 /* 8002BD1C 0002797C 38 7E 00 08 */ addi r3, r30, 8 /* 8002BD20 00027980 4B FF E6 59 */ bl func_8002A378 /* 8002BD24 00027984 FC 40 E8 90 */ fmr f2, f29 /* 8002BD28 00027988 38 61 00 14 */ addi r3, r1, 0x14 /* 8002BD2C 0002798C FC 60 F0 90 */ fmr f3, f30 /* 8002BD30 00027990 48 00 0D 8D */ bl func_8002CABC /* 8002BD34 00027994 7C 64 1B 78 */ mr r4, r3 /* 8002BD38 00027998 7F E3 FB 78 */ mr r3, r31 /* 8002BD3C 0002799C 48 01 53 81 */ bl func_800410BC /* 8002BD40 000279A0 38 60 00 01 */ li r3, 1 /* 8002BD44 000279A4 48 00 0D 00 */ b lbl_8002CA44 /* 8002BD48 000279A8 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BD4C 000279AC 4B FF E6 2D */ bl func_8002A378 /* 8002BD50 000279B0 FF C0 08 90 */ fmr f30, f1 /* 8002BD54 000279B4 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BD58 000279B8 4B FF E6 21 */ bl func_8002A378 /* 8002BD5C 000279BC C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002BD60 000279C0 38 7E 00 08 */ addi r3, r30, 8 /* 8002BD64 000279C4 EF A0 00 72 */ fmuls f29, f0, f1 /* 8002BD68 000279C8 4B FF E6 11 */ bl func_8002A378 /* 8002BD6C 000279CC C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002BD70 000279D0 FC 40 E8 90 */ fmr f2, f29 /* 8002BD74 000279D4 FC 60 F0 90 */ fmr f3, f30 /* 8002BD78 000279D8 7F E3 FB 78 */ mr r3, r31 /* 8002BD7C 000279DC EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BD80 000279E0 48 01 53 9D */ bl func_8004111C /* 8002BD84 000279E4 38 60 00 01 */ li r3, 1 /* 8002BD88 000279E8 48 00 0C BC */ b lbl_8002CA44 /* 8002BD8C 000279EC 7F E3 FB 78 */ mr r3, r31 /* 8002BD90 000279F0 48 01 54 75 */ bl func_80041204 /* 8002BD94 000279F4 7C 64 1B 78 */ mr r4, r3 /* 8002BD98 000279F8 7F 43 D3 78 */ mr r3, r26 /* 8002BD9C 000279FC 4B FF E6 59 */ bl func_8002A3F4 /* 8002BDA0 00027A00 38 60 00 01 */ li r3, 1 /* 8002BDA4 00027A04 48 00 0C A0 */ b lbl_8002CA44 /* 8002BDA8 00027A08 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002BDAC 00027A0C 4B FF E4 F1 */ bl func_8002A29C /* 8002BDB0 00027A10 7C 7D 1B 78 */ mr r29, r3 /* 8002BDB4 00027A14 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002BDB8 00027A18 4B FF E5 C1 */ bl func_8002A378 /* 8002BDBC 00027A1C FF C0 08 90 */ fmr f30, f1 /* 8002BDC0 00027A20 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BDC4 00027A24 4B FF E5 B5 */ bl func_8002A378 /* 8002BDC8 00027A28 FF A0 08 90 */ fmr f29, f1 /* 8002BDCC 00027A2C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BDD0 00027A30 4B FF E4 CD */ bl func_8002A29C /* 8002BDD4 00027A34 7C 7C 1B 78 */ mr r28, r3 /* 8002BDD8 00027A38 38 7E 00 08 */ addi r3, r30, 8 /* 8002BDDC 00027A3C 4B FF E5 9D */ bl func_8002A378 /* 8002BDE0 00027A40 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002BDE4 00027A44 FC 40 E8 90 */ fmr f2, f29 /* 8002BDE8 00027A48 FC 60 F0 90 */ fmr f3, f30 /* 8002BDEC 00027A4C 7F E3 FB 78 */ mr r3, r31 /* 8002BDF0 00027A50 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BDF4 00027A54 7F 84 E3 78 */ mr r4, r28 /* 8002BDF8 00027A58 7F A5 EB 78 */ mr r5, r29 /* 8002BDFC 00027A5C 48 01 58 95 */ bl func_80041690 /* 8002BE00 00027A60 38 60 00 01 */ li r3, 1 /* 8002BE04 00027A64 48 00 0C 40 */ b lbl_8002CA44 /* 8002BE08 00027A68 A8 1E 00 08 */ lha r0, 8(r30) /* 8002BE0C 00027A6C 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002BE10 00027A70 40 82 00 2C */ bne lbl_8002BE3C /* 8002BE14 00027A74 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BE18 00027A78 4B FF E5 C1 */ bl func_8002A3D8 /* 8002BE1C 00027A7C 7C 7C 1B 78 */ mr r28, r3 /* 8002BE20 00027A80 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BE24 00027A84 4B FF E4 79 */ bl func_8002A29C /* 8002BE28 00027A88 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002BE2C 00027A8C 7C 65 1B 78 */ mr r5, r3 /* 8002BE30 00027A90 7F E3 FB 78 */ mr r3, r31 /* 8002BE34 00027A94 7F 86 E3 78 */ mr r6, r28 /* 8002BE38 00027A98 48 01 5B 55 */ bl func_8004198C lbl_8002BE3C: /* 8002BE3C 00027A9C 38 60 00 01 */ li r3, 1 /* 8002BE40 00027AA0 48 00 0C 04 */ b lbl_8002CA44 /* 8002BE44 00027AA4 38 7E 00 08 */ addi r3, r30, 8 /* 8002BE48 00027AA8 4B FF E5 91 */ bl func_8002A3D8 /* 8002BE4C 00027AAC 7C 64 1B 78 */ mr r4, r3 /* 8002BE50 00027AB0 7F E3 FB 78 */ mr r3, r31 /* 8002BE54 00027AB4 48 01 5B 91 */ bl func_800419E4 /* 8002BE58 00027AB8 38 60 00 01 */ li r3, 1 /* 8002BE5C 00027ABC 48 00 0B E8 */ b lbl_8002CA44 /* 8002BE60 00027AC0 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BE64 00027AC4 4B FF E5 15 */ bl func_8002A378 /* 8002BE68 00027AC8 FF C0 08 90 */ fmr f30, f1 /* 8002BE6C 00027ACC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BE70 00027AD0 4B FF E5 09 */ bl func_8002A378 /* 8002BE74 00027AD4 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002BE78 00027AD8 38 7E 00 08 */ addi r3, r30, 8 /* 8002BE7C 00027ADC EF A0 00 72 */ fmuls f29, f0, f1 /* 8002BE80 00027AE0 4B FF E4 F9 */ bl func_8002A378 /* 8002BE84 00027AE4 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002BE88 00027AE8 FC 40 E8 90 */ fmr f2, f29 /* 8002BE8C 00027AEC FC 60 F0 90 */ fmr f3, f30 /* 8002BE90 00027AF0 7F E3 FB 78 */ mr r3, r31 /* 8002BE94 00027AF4 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BE98 00027AF8 48 01 5B F1 */ bl func_80041A88 /* 8002BE9C 00027AFC 38 60 00 01 */ li r3, 1 /* 8002BEA0 00027B00 48 00 0B A4 */ b lbl_8002CA44 /* 8002BEA4 00027B04 7F E3 FB 78 */ mr r3, r31 /* 8002BEA8 00027B08 38 80 00 00 */ li r4, 0 /* 8002BEAC 00027B0C 48 01 5B 39 */ bl func_800419E4 /* 8002BEB0 00027B10 38 60 00 01 */ li r3, 1 /* 8002BEB4 00027B14 48 00 0B 90 */ b lbl_8002CA44 /* 8002BEB8 00027B18 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BEBC 00027B1C 4B FF E3 E1 */ bl func_8002A29C /* 8002BEC0 00027B20 7C 7C 1B 78 */ mr r28, r3 /* 8002BEC4 00027B24 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BEC8 00027B28 4B FF E4 B1 */ bl func_8002A378 /* 8002BECC 00027B2C FF A0 08 90 */ fmr f29, f1 /* 8002BED0 00027B30 38 7E 00 08 */ addi r3, r30, 8 /* 8002BED4 00027B34 4B FF E5 05 */ bl func_8002A3D8 /* 8002BED8 00027B38 FC 20 E8 90 */ fmr f1, f29 /* 8002BEDC 00027B3C 7C 64 1B 78 */ mr r4, r3 /* 8002BEE0 00027B40 7F E3 FB 78 */ mr r3, r31 /* 8002BEE4 00027B44 7F 85 E3 78 */ mr r5, r28 /* 8002BEE8 00027B48 48 01 69 55 */ bl func_8004283C /* 8002BEEC 00027B4C 48 00 0B 54 */ b lbl_8002CA40 /* 8002BEF0 00027B50 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BEF4 00027B54 4B FF E3 A9 */ bl func_8002A29C /* 8002BEF8 00027B58 7C 7C 1B 78 */ mr r28, r3 /* 8002BEFC 00027B5C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BF00 00027B60 4B FF E4 79 */ bl func_8002A378 /* 8002BF04 00027B64 FF A0 08 90 */ fmr f29, f1 /* 8002BF08 00027B68 38 7E 00 08 */ addi r3, r30, 8 /* 8002BF0C 00027B6C 4B FF E4 6D */ bl func_8002A378 /* 8002BF10 00027B70 FC 40 E8 90 */ fmr f2, f29 /* 8002BF14 00027B74 7F E3 FB 78 */ mr r3, r31 /* 8002BF18 00027B78 7F 84 E3 78 */ mr r4, r28 /* 8002BF1C 00027B7C 48 01 6A F1 */ bl func_80042A0C /* 8002BF20 00027B80 48 00 0B 20 */ b lbl_8002CA40 /* 8002BF24 00027B84 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002BF28 00027B88 4B FF E3 75 */ bl func_8002A29C /* 8002BF2C 00027B8C 7C 7D 1B 78 */ mr r29, r3 /* 8002BF30 00027B90 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BF34 00027B94 4B FF E3 69 */ bl func_8002A29C /* 8002BF38 00027B98 7C 7C 1B 78 */ mr r28, r3 /* 8002BF3C 00027B9C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BF40 00027BA0 4B FF E4 39 */ bl func_8002A378 /* 8002BF44 00027BA4 FF A0 08 90 */ fmr f29, f1 /* 8002BF48 00027BA8 38 7E 00 08 */ addi r3, r30, 8 /* 8002BF4C 00027BAC 4B FF E4 2D */ bl func_8002A378 /* 8002BF50 00027BB0 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002BF54 00027BB4 FC 40 E8 90 */ fmr f2, f29 /* 8002BF58 00027BB8 7F E3 FB 78 */ mr r3, r31 /* 8002BF5C 00027BBC 7F 84 E3 78 */ mr r4, r28 /* 8002BF60 00027BC0 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002BF64 00027BC4 7F A5 EB 78 */ mr r5, r29 /* 8002BF68 00027BC8 48 01 6B 1D */ bl func_80042A84 /* 8002BF6C 00027BCC 48 00 0A D4 */ b lbl_8002CA40 /* 8002BF70 00027BD0 38 7E 00 08 */ addi r3, r30, 8 /* 8002BF74 00027BD4 4B FF E4 65 */ bl func_8002A3D8 /* 8002BF78 00027BD8 7C 64 1B 78 */ mr r4, r3 /* 8002BF7C 00027BDC 7F E3 FB 78 */ mr r3, r31 /* 8002BF80 00027BE0 48 01 65 B5 */ bl func_80042534 /* 8002BF84 00027BE4 38 60 00 01 */ li r3, 1 /* 8002BF88 00027BE8 48 00 0A BC */ b lbl_8002CA44 /* 8002BF8C 00027BEC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BF90 00027BF0 4B FF E3 E9 */ bl func_8002A378 /* 8002BF94 00027BF4 FF C0 08 90 */ fmr f30, f1 /* 8002BF98 00027BF8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002BF9C 00027BFC 4B FF E3 DD */ bl func_8002A378 /* 8002BFA0 00027C00 FF A0 08 90 */ fmr f29, f1 /* 8002BFA4 00027C04 38 7E 00 08 */ addi r3, r30, 8 /* 8002BFA8 00027C08 4B FF E3 D1 */ bl func_8002A378 /* 8002BFAC 00027C0C FC 40 E8 90 */ fmr f2, f29 /* 8002BFB0 00027C10 38 61 00 08 */ addi r3, r1, 8 /* 8002BFB4 00027C14 FC 60 F0 90 */ fmr f3, f30 /* 8002BFB8 00027C18 48 00 0B 05 */ bl func_8002CABC /* 8002BFBC 00027C1C 7C 64 1B 78 */ mr r4, r3 /* 8002BFC0 00027C20 7F E3 FB 78 */ mr r3, r31 /* 8002BFC4 00027C24 48 01 65 71 */ bl func_80042534 /* 8002BFC8 00027C28 38 60 00 01 */ li r3, 1 /* 8002BFCC 00027C2C 48 00 0A 78 */ b lbl_8002CA44 /* 8002BFD0 00027C30 7F E3 FB 78 */ mr r3, r31 /* 8002BFD4 00027C34 48 01 65 BD */ bl func_80042590 /* 8002BFD8 00027C38 7C 64 1B 78 */ mr r4, r3 /* 8002BFDC 00027C3C 7F 43 D3 78 */ mr r3, r26 /* 8002BFE0 00027C40 4B FF E4 15 */ bl func_8002A3F4 /* 8002BFE4 00027C44 38 60 00 01 */ li r3, 1 /* 8002BFE8 00027C48 48 00 0A 5C */ b lbl_8002CA44 /* 8002BFEC 00027C4C A8 1E 00 08 */ lha r0, 8(r30) /* 8002BFF0 00027C50 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002BFF4 00027C54 40 82 00 2C */ bne lbl_8002C020 /* 8002BFF8 00027C58 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002BFFC 00027C5C 4B FF E3 DD */ bl func_8002A3D8 /* 8002C000 00027C60 7C 7C 1B 78 */ mr r28, r3 /* 8002C004 00027C64 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C008 00027C68 4B FF E2 95 */ bl func_8002A29C /* 8002C00C 00027C6C 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C010 00027C70 7C 65 1B 78 */ mr r5, r3 /* 8002C014 00027C74 7F E3 FB 78 */ mr r3, r31 /* 8002C018 00027C78 7F 86 E3 78 */ mr r6, r28 /* 8002C01C 00027C7C 48 01 65 91 */ bl func_800425AC lbl_8002C020: /* 8002C020 00027C80 38 60 00 01 */ li r3, 1 /* 8002C024 00027C84 48 00 0A 20 */ b lbl_8002CA44 /* 8002C028 00027C88 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C02C 00027C8C 4B FF E2 71 */ bl func_8002A29C /* 8002C030 00027C90 7C 7C 1B 78 */ mr r28, r3 /* 8002C034 00027C94 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C038 00027C98 4B FF E3 41 */ bl func_8002A378 /* 8002C03C 00027C9C FF A0 08 90 */ fmr f29, f1 /* 8002C040 00027CA0 38 7E 00 08 */ addi r3, r30, 8 /* 8002C044 00027CA4 4B FF E3 95 */ bl func_8002A3D8 /* 8002C048 00027CA8 FC 20 E8 90 */ fmr f1, f29 /* 8002C04C 00027CAC 7C 64 1B 78 */ mr r4, r3 /* 8002C050 00027CB0 7F E3 FB 78 */ mr r3, r31 /* 8002C054 00027CB4 7F 85 E3 78 */ mr r5, r28 /* 8002C058 00027CB8 48 01 6E 51 */ bl func_80042EA8 /* 8002C05C 00027CBC 48 00 09 E4 */ b lbl_8002CA40 /* 8002C060 00027CC0 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C064 00027CC4 4B FF E2 39 */ bl func_8002A29C /* 8002C068 00027CC8 7C 7C 1B 78 */ mr r28, r3 /* 8002C06C 00027CCC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C070 00027CD0 4B FF E3 09 */ bl func_8002A378 /* 8002C074 00027CD4 FF A0 08 90 */ fmr f29, f1 /* 8002C078 00027CD8 38 7E 00 08 */ addi r3, r30, 8 /* 8002C07C 00027CDC 4B FF E2 FD */ bl func_8002A378 /* 8002C080 00027CE0 FC 40 E8 90 */ fmr f2, f29 /* 8002C084 00027CE4 7F E3 FB 78 */ mr r3, r31 /* 8002C088 00027CE8 7F 84 E3 78 */ mr r4, r28 /* 8002C08C 00027CEC 48 01 6E D5 */ bl func_80042F60 /* 8002C090 00027CF0 48 00 09 B0 */ b lbl_8002CA40 /* 8002C094 00027CF4 38 7E 00 08 */ addi r3, r30, 8 /* 8002C098 00027CF8 4B FF E2 E1 */ bl func_8002A378 /* 8002C09C 00027CFC 7F E3 FB 78 */ mr r3, r31 /* 8002C0A0 00027D00 48 01 65 5D */ bl func_800425FC /* 8002C0A4 00027D04 38 60 00 01 */ li r3, 1 /* 8002C0A8 00027D08 48 00 09 9C */ b lbl_8002CA44 /* 8002C0AC 00027D0C 7F E3 FB 78 */ mr r3, r31 /* 8002C0B0 00027D10 48 01 66 9D */ bl func_8004274C /* 8002C0B4 00027D14 7F A3 EB 78 */ mr r3, r29 /* 8002C0B8 00027D18 4B FF E2 95 */ bl func_8002A34C /* 8002C0BC 00027D1C 38 60 00 01 */ li r3, 1 /* 8002C0C0 00027D20 48 00 09 84 */ b lbl_8002CA44 /* 8002C0C4 00027D24 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C0C8 00027D28 4B FF E1 D5 */ bl func_8002A29C /* 8002C0CC 00027D2C 7C 7C 1B 78 */ mr r28, r3 /* 8002C0D0 00027D30 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C0D4 00027D34 4B FF E2 A5 */ bl func_8002A378 /* 8002C0D8 00027D38 FF A0 08 90 */ fmr f29, f1 /* 8002C0DC 00027D3C 38 7E 00 08 */ addi r3, r30, 8 /* 8002C0E0 00027D40 4B FF E2 99 */ bl func_8002A378 /* 8002C0E4 00027D44 FC 40 E8 90 */ fmr f2, f29 /* 8002C0E8 00027D48 7F E3 FB 78 */ mr r3, r31 /* 8002C0EC 00027D4C 7F 84 E3 78 */ mr r4, r28 /* 8002C0F0 00027D50 48 01 66 AD */ bl func_8004279C /* 8002C0F4 00027D54 38 60 00 01 */ li r3, 1 /* 8002C0F8 00027D58 48 00 09 4C */ b lbl_8002CA44 /* 8002C0FC 00027D5C 38 61 00 4C */ addi r3, r1, 0x4c /* 8002C100 00027D60 48 00 09 CD */ bl func_8002CACC /* 8002C104 00027D64 A8 1E 00 08 */ lha r0, 8(r30) /* 8002C108 00027D68 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C10C 00027D6C 40 82 00 40 */ bne lbl_8002C14C /* 8002C110 00027D70 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C114 00027D74 4B FF E2 65 */ bl func_8002A378 /* 8002C118 00027D78 FF C0 08 90 */ fmr f30, f1 /* 8002C11C 00027D7C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C120 00027D80 4B FF E2 59 */ bl func_8002A378 /* 8002C124 00027D84 FF A0 08 90 */ fmr f29, f1 /* 8002C128 00027D88 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C12C 00027D8C 4B FF E1 71 */ bl func_8002A29C /* 8002C130 00027D90 FC 20 E8 90 */ fmr f1, f29 /* 8002C134 00027D94 7C 65 1B 78 */ mr r5, r3 /* 8002C138 00027D98 FC 40 F0 90 */ fmr f2, f30 /* 8002C13C 00027D9C 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C140 00027DA0 7F E3 FB 78 */ mr r3, r31 /* 8002C144 00027DA4 38 C1 00 4C */ addi r6, r1, 0x4c /* 8002C148 00027DA8 48 01 6E 85 */ bl func_80042FCC lbl_8002C14C: /* 8002C14C 00027DAC 38 60 00 01 */ li r3, 1 /* 8002C150 00027DB0 48 00 08 F4 */ b lbl_8002CA44 /* 8002C154 00027DB4 A8 1E 00 08 */ lha r0, 8(r30) /* 8002C158 00027DB8 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C15C 00027DBC 40 82 00 4C */ bne lbl_8002C1A8 /* 8002C160 00027DC0 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C164 00027DC4 4B FF E2 75 */ bl func_8002A3D8 /* 8002C168 00027DC8 7C 7C 1B 78 */ mr r28, r3 /* 8002C16C 00027DCC 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C170 00027DD0 4B FF E2 09 */ bl func_8002A378 /* 8002C174 00027DD4 FF C0 08 90 */ fmr f30, f1 /* 8002C178 00027DD8 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C17C 00027DDC 4B FF E1 FD */ bl func_8002A378 /* 8002C180 00027DE0 FF A0 08 90 */ fmr f29, f1 /* 8002C184 00027DE4 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C188 00027DE8 4B FF E1 15 */ bl func_8002A29C /* 8002C18C 00027DEC FC 20 E8 90 */ fmr f1, f29 /* 8002C190 00027DF0 7C 65 1B 78 */ mr r5, r3 /* 8002C194 00027DF4 FC 40 F0 90 */ fmr f2, f30 /* 8002C198 00027DF8 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C19C 00027DFC 7F E3 FB 78 */ mr r3, r31 /* 8002C1A0 00027E00 7F 86 E3 78 */ mr r6, r28 /* 8002C1A4 00027E04 48 01 6E 29 */ bl func_80042FCC lbl_8002C1A8: /* 8002C1A8 00027E08 38 60 00 01 */ li r3, 1 /* 8002C1AC 00027E0C 48 00 08 98 */ b lbl_8002CA44 /* 8002C1B0 00027E10 38 61 00 4C */ addi r3, r1, 0x4c /* 8002C1B4 00027E14 48 00 09 19 */ bl func_8002CACC /* 8002C1B8 00027E18 A8 1E 00 08 */ lha r0, 8(r30) /* 8002C1BC 00027E1C 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C1C0 00027E20 40 82 00 44 */ bne lbl_8002C204 /* 8002C1C4 00027E24 A8 1E 00 10 */ lha r0, 0x10(r30) /* 8002C1C8 00027E28 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C1CC 00027E2C 40 82 00 38 */ bne lbl_8002C204 /* 8002C1D0 00027E30 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C1D4 00027E34 4B FF E1 A5 */ bl func_8002A378 /* 8002C1D8 00027E38 FF A0 08 90 */ fmr f29, f1 /* 8002C1DC 00027E3C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C1E0 00027E40 4B FF E1 99 */ bl func_8002A378 /* 8002C1E4 00027E44 FC 40 E8 90 */ fmr f2, f29 /* 8002C1E8 00027E48 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C1EC 00027E4C 80 DE 00 14 */ lwz r6, 0x14(r30) /* 8002C1F0 00027E50 7F E3 FB 78 */ mr r3, r31 /* 8002C1F4 00027E54 39 01 00 4C */ addi r8, r1, 0x4c /* 8002C1F8 00027E58 38 A0 00 00 */ li r5, 0 /* 8002C1FC 00027E5C 38 E0 00 00 */ li r7, 0 /* 8002C200 00027E60 48 01 71 11 */ bl func_80043310 lbl_8002C204: /* 8002C204 00027E64 38 60 00 01 */ li r3, 1 /* 8002C208 00027E68 48 00 08 3C */ b lbl_8002CA44 /* 8002C20C 00027E6C 38 61 00 4C */ addi r3, r1, 0x4c /* 8002C210 00027E70 48 00 08 BD */ bl func_8002CACC /* 8002C214 00027E74 A8 1E 00 08 */ lha r0, 8(r30) /* 8002C218 00027E78 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C21C 00027E7C 40 82 00 60 */ bne lbl_8002C27C /* 8002C220 00027E80 A8 1E 00 18 */ lha r0, 0x18(r30) /* 8002C224 00027E84 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C228 00027E88 40 82 00 54 */ bne lbl_8002C27C /* 8002C22C 00027E8C 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002C230 00027E90 4B FF E1 49 */ bl func_8002A378 /* 8002C234 00027E94 FF C0 08 90 */ fmr f30, f1 /* 8002C238 00027E98 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C23C 00027E9C 4B FF E1 3D */ bl func_8002A378 /* 8002C240 00027EA0 FF A0 08 90 */ fmr f29, f1 /* 8002C244 00027EA4 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C248 00027EA8 4B FF E0 55 */ bl func_8002A29C /* 8002C24C 00027EAC 7C 7C 1B 78 */ mr r28, r3 /* 8002C250 00027EB0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C254 00027EB4 4B FF E0 49 */ bl func_8002A29C /* 8002C258 00027EB8 FC 20 E8 90 */ fmr f1, f29 /* 8002C25C 00027EBC 7C 65 1B 78 */ mr r5, r3 /* 8002C260 00027EC0 FC 40 F0 90 */ fmr f2, f30 /* 8002C264 00027EC4 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C268 00027EC8 80 DE 00 1C */ lwz r6, 0x1c(r30) /* 8002C26C 00027ECC 7F E3 FB 78 */ mr r3, r31 /* 8002C270 00027ED0 7F 87 E3 78 */ mr r7, r28 /* 8002C274 00027ED4 39 01 00 4C */ addi r8, r1, 0x4c /* 8002C278 00027ED8 48 01 70 99 */ bl func_80043310 lbl_8002C27C: /* 8002C27C 00027EDC 38 60 00 01 */ li r3, 1 /* 8002C280 00027EE0 48 00 07 C4 */ b lbl_8002CA44 /* 8002C284 00027EE4 A8 1E 00 08 */ lha r0, 8(r30) /* 8002C288 00027EE8 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C28C 00027EEC 40 82 00 6C */ bne lbl_8002C2F8 /* 8002C290 00027EF0 A8 1E 00 18 */ lha r0, 0x18(r30) /* 8002C294 00027EF4 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C298 00027EF8 40 82 00 60 */ bne lbl_8002C2F8 /* 8002C29C 00027EFC 38 7E 00 38 */ addi r3, r30, 0x38 /* 8002C2A0 00027F00 4B FF E1 39 */ bl func_8002A3D8 /* 8002C2A4 00027F04 7C 7D 1B 78 */ mr r29, r3 /* 8002C2A8 00027F08 38 7E 00 30 */ addi r3, r30, 0x30 /* 8002C2AC 00027F0C 4B FF E0 CD */ bl func_8002A378 /* 8002C2B0 00027F10 FF C0 08 90 */ fmr f30, f1 /* 8002C2B4 00027F14 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C2B8 00027F18 4B FF E0 C1 */ bl func_8002A378 /* 8002C2BC 00027F1C FF A0 08 90 */ fmr f29, f1 /* 8002C2C0 00027F20 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C2C4 00027F24 4B FF DF D9 */ bl func_8002A29C /* 8002C2C8 00027F28 7C 7C 1B 78 */ mr r28, r3 /* 8002C2CC 00027F2C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C2D0 00027F30 4B FF DF CD */ bl func_8002A29C /* 8002C2D4 00027F34 FC 20 E8 90 */ fmr f1, f29 /* 8002C2D8 00027F38 7C 65 1B 78 */ mr r5, r3 /* 8002C2DC 00027F3C FC 40 F0 90 */ fmr f2, f30 /* 8002C2E0 00027F40 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C2E4 00027F44 80 DE 00 1C */ lwz r6, 0x1c(r30) /* 8002C2E8 00027F48 7F E3 FB 78 */ mr r3, r31 /* 8002C2EC 00027F4C 7F 87 E3 78 */ mr r7, r28 /* 8002C2F0 00027F50 7F A8 EB 78 */ mr r8, r29 /* 8002C2F4 00027F54 48 01 70 1D */ bl func_80043310 lbl_8002C2F8: /* 8002C2F8 00027F58 38 60 00 01 */ li r3, 1 /* 8002C2FC 00027F5C 48 00 07 48 */ b lbl_8002CA44 /* 8002C300 00027F60 A8 1E 00 08 */ lha r0, 8(r30) /* 8002C304 00027F64 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C308 00027F68 40 82 00 50 */ bne lbl_8002C358 /* 8002C30C 00027F6C A8 1E 00 10 */ lha r0, 0x10(r30) /* 8002C310 00027F70 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C314 00027F74 40 82 00 44 */ bne lbl_8002C358 /* 8002C318 00027F78 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C31C 00027F7C 4B FF E0 BD */ bl func_8002A3D8 /* 8002C320 00027F80 7C 7C 1B 78 */ mr r28, r3 /* 8002C324 00027F84 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C328 00027F88 4B FF E0 51 */ bl func_8002A378 /* 8002C32C 00027F8C FF A0 08 90 */ fmr f29, f1 /* 8002C330 00027F90 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C334 00027F94 4B FF E0 45 */ bl func_8002A378 /* 8002C338 00027F98 FC 40 E8 90 */ fmr f2, f29 /* 8002C33C 00027F9C 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C340 00027FA0 80 DE 00 14 */ lwz r6, 0x14(r30) /* 8002C344 00027FA4 7F E3 FB 78 */ mr r3, r31 /* 8002C348 00027FA8 7F 88 E3 78 */ mr r8, r28 /* 8002C34C 00027FAC 38 A0 00 00 */ li r5, 0 /* 8002C350 00027FB0 38 E0 00 00 */ li r7, 0 /* 8002C354 00027FB4 48 01 6F BD */ bl func_80043310 lbl_8002C358: /* 8002C358 00027FB8 38 60 00 01 */ li r3, 1 /* 8002C35C 00027FBC 48 00 06 E8 */ b lbl_8002CA44 /* 8002C360 00027FC0 38 7E 00 08 */ addi r3, r30, 8 /* 8002C364 00027FC4 4B FF E0 15 */ bl func_8002A378 /* 8002C368 00027FC8 7F E3 FB 78 */ mr r3, r31 /* 8002C36C 00027FCC 48 01 77 F5 */ bl func_80043B60 /* 8002C370 00027FD0 38 60 00 01 */ li r3, 1 /* 8002C374 00027FD4 48 00 06 D0 */ b lbl_8002CA44 /* 8002C378 00027FD8 7F E3 FB 78 */ mr r3, r31 /* 8002C37C 00027FDC 48 01 81 25 */ bl func_800444A0 /* 8002C380 00027FE0 7C 64 1B 78 */ mr r4, r3 /* 8002C384 00027FE4 7F A3 EB 78 */ mr r3, r29 /* 8002C388 00027FE8 4B FF C1 CD */ bl func_80028554 /* 8002C38C 00027FEC 38 60 00 01 */ li r3, 1 /* 8002C390 00027FF0 48 00 06 B4 */ b lbl_8002CA44 /* 8002C394 00027FF4 7F E3 FB 78 */ mr r3, r31 /* 8002C398 00027FF8 48 01 63 FD */ bl func_80042794 /* 8002C39C 00027FFC 7F A3 EB 78 */ mr r3, r29 /* 8002C3A0 00028000 4B FF DF AD */ bl func_8002A34C /* 8002C3A4 00028004 38 60 00 01 */ li r3, 1 /* 8002C3A8 00028008 48 00 06 9C */ b lbl_8002CA44 /* 8002C3AC 0002800C 38 7E 00 08 */ addi r3, r30, 8 /* 8002C3B0 00028010 4B FF DF C9 */ bl func_8002A378 /* 8002C3B4 00028014 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C3B8 00028018 7F E3 FB 78 */ mr r3, r31 /* 8002C3BC 0002801C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C3C0 00028020 48 01 63 0D */ bl func_800426CC /* 8002C3C4 00028024 38 60 00 01 */ li r3, 1 /* 8002C3C8 00028028 48 00 06 7C */ b lbl_8002CA44 /* 8002C3CC 0002802C 7F E3 FB 78 */ mr r3, r31 /* 8002C3D0 00028030 48 01 63 39 */ bl func_80042708 /* 8002C3D4 00028034 C0 02 81 3C */ lfs f0, lbl_8064073C-_SDA2_BASE_(r2) /* 8002C3D8 00028038 7F A3 EB 78 */ mr r3, r29 /* 8002C3DC 0002803C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C3E0 00028040 4B FF DF 6D */ bl func_8002A34C /* 8002C3E4 00028044 38 60 00 01 */ li r3, 1 /* 8002C3E8 00028048 48 00 06 5C */ b lbl_8002CA44 /* 8002C3EC 0002804C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C3F0 00028050 4B FF DE AD */ bl func_8002A29C /* 8002C3F4 00028054 7C 7C 1B 78 */ mr r28, r3 /* 8002C3F8 00028058 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C3FC 0002805C 4B FF DF 7D */ bl func_8002A378 /* 8002C400 00028060 FF A0 08 90 */ fmr f29, f1 /* 8002C404 00028064 38 7E 00 08 */ addi r3, r30, 8 /* 8002C408 00028068 4B FF DF 71 */ bl func_8002A378 /* 8002C40C 0002806C C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C410 00028070 FC 40 E8 90 */ fmr f2, f29 /* 8002C414 00028074 7F E3 FB 78 */ mr r3, r31 /* 8002C418 00028078 7F 84 E3 78 */ mr r4, r28 /* 8002C41C 0002807C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C420 00028080 48 01 62 F1 */ bl func_80042710 /* 8002C424 00028084 38 60 00 01 */ li r3, 1 /* 8002C428 00028088 48 00 06 1C */ b lbl_8002CA44 /* 8002C42C 0002808C 80 0D 80 C8 */ lwz r0, lbl_8063D388-_SDA_BASE_(r13) /* 8002C430 00028090 2C 00 00 00 */ cmpwi r0, 0 /* 8002C434 00028094 41 82 06 0C */ beq lbl_8002CA40 /* 8002C438 00028098 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C43C 0002809C 4B FF DE 61 */ bl func_8002A29C /* 8002C440 000280A0 7C 7D 1B 78 */ mr r29, r3 /* 8002C444 000280A4 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C448 000280A8 4B FF DF 31 */ bl func_8002A378 /* 8002C44C 000280AC FF A0 08 90 */ fmr f29, f1 /* 8002C450 000280B0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C454 000280B4 4B FF DE 49 */ bl func_8002A29C /* 8002C458 000280B8 7C 7C 1B 78 */ mr r28, r3 /* 8002C45C 000280BC 38 7E 00 08 */ addi r3, r30, 8 /* 8002C460 000280C0 4B FF DF 19 */ bl func_8002A378 /* 8002C464 000280C4 FC 40 E8 90 */ fmr f2, f29 /* 8002C468 000280C8 7F E3 FB 78 */ mr r3, r31 /* 8002C46C 000280CC 7F 84 E3 78 */ mr r4, r28 /* 8002C470 000280D0 7F A5 EB 78 */ mr r5, r29 /* 8002C474 000280D4 48 01 56 6D */ bl func_80041AE0 /* 8002C478 000280D8 48 00 05 C8 */ b lbl_8002CA40 /* 8002C47C 000280DC 80 0D 80 C8 */ lwz r0, lbl_8063D388-_SDA_BASE_(r13) /* 8002C480 000280E0 2C 00 00 00 */ cmpwi r0, 0 /* 8002C484 000280E4 41 82 05 BC */ beq lbl_8002CA40 /* 8002C488 000280E8 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C48C 000280EC 4B FF DE 11 */ bl func_8002A29C /* 8002C490 000280F0 7C 7D 1B 78 */ mr r29, r3 /* 8002C494 000280F4 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C498 000280F8 4B FF DE E1 */ bl func_8002A378 /* 8002C49C 000280FC FF A0 08 90 */ fmr f29, f1 /* 8002C4A0 00028100 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C4A4 00028104 4B FF DD F9 */ bl func_8002A29C /* 8002C4A8 00028108 7C 7C 1B 78 */ mr r28, r3 /* 8002C4AC 0002810C 38 7E 00 08 */ addi r3, r30, 8 /* 8002C4B0 00028110 4B FF DE C9 */ bl func_8002A378 /* 8002C4B4 00028114 FC 40 E8 90 */ fmr f2, f29 /* 8002C4B8 00028118 7F E3 FB 78 */ mr r3, r31 /* 8002C4BC 0002811C 7F 84 E3 78 */ mr r4, r28 /* 8002C4C0 00028120 7F A5 EB 78 */ mr r5, r29 /* 8002C4C4 00028124 48 01 56 35 */ bl func_80041AF8 /* 8002C4C8 00028128 48 00 05 78 */ b lbl_8002CA40 /* 8002C4CC 0002812C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C4D0 00028130 4B FF DE A9 */ bl func_8002A378 /* 8002C4D4 00028134 FF C0 08 90 */ fmr f30, f1 /* 8002C4D8 00028138 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C4DC 0002813C 4B FF DE 9D */ bl func_8002A378 /* 8002C4E0 00028140 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C4E4 00028144 38 7E 00 08 */ addi r3, r30, 8 /* 8002C4E8 00028148 EF A0 00 72 */ fmuls f29, f0, f1 /* 8002C4EC 0002814C 4B FF DE 8D */ bl func_8002A378 /* 8002C4F0 00028150 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C4F4 00028154 FC 40 E8 90 */ fmr f2, f29 /* 8002C4F8 00028158 FC 60 F0 90 */ fmr f3, f30 /* 8002C4FC 0002815C 7F E3 FB 78 */ mr r3, r31 /* 8002C500 00028160 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C504 00028164 48 01 5C 59 */ bl func_8004215C /* 8002C508 00028168 48 00 05 38 */ b lbl_8002CA40 /* 8002C50C 0002816C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C510 00028170 4B FF DE 69 */ bl func_8002A378 /* 8002C514 00028174 FF C0 08 90 */ fmr f30, f1 /* 8002C518 00028178 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C51C 0002817C 4B FF DE 5D */ bl func_8002A378 /* 8002C520 00028180 FF A0 08 90 */ fmr f29, f1 /* 8002C524 00028184 38 7E 00 08 */ addi r3, r30, 8 /* 8002C528 00028188 4B FF DE 51 */ bl func_8002A378 /* 8002C52C 0002818C C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C530 00028190 FC 40 E8 90 */ fmr f2, f29 /* 8002C534 00028194 FC 60 F0 90 */ fmr f3, f30 /* 8002C538 00028198 7F E3 FB 78 */ mr r3, r31 /* 8002C53C 0002819C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C540 000281A0 48 01 5C B1 */ bl func_800421F0 /* 8002C544 000281A4 48 00 04 FC */ b lbl_8002CA40 /* 8002C548 000281A8 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C54C 000281AC 4B FF DD 51 */ bl func_8002A29C /* 8002C550 000281B0 7C 7C 1B 78 */ mr r28, r3 /* 8002C554 000281B4 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C558 000281B8 4B FF DE 21 */ bl func_8002A378 /* 8002C55C 000281BC FF E0 08 90 */ fmr f31, f1 /* 8002C560 000281C0 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C564 000281C4 4B FF DE 15 */ bl func_8002A378 /* 8002C568 000281C8 FF C0 08 90 */ fmr f30, f1 /* 8002C56C 000281CC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C570 000281D0 4B FF DE 09 */ bl func_8002A378 /* 8002C574 000281D4 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C578 000281D8 38 7E 00 08 */ addi r3, r30, 8 /* 8002C57C 000281DC EF A0 00 72 */ fmuls f29, f0, f1 /* 8002C580 000281E0 4B FF DD F9 */ bl func_8002A378 /* 8002C584 000281E4 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C588 000281E8 FC 40 E8 90 */ fmr f2, f29 /* 8002C58C 000281EC FC 60 F0 90 */ fmr f3, f30 /* 8002C590 000281F0 7F E3 FB 78 */ mr r3, r31 /* 8002C594 000281F4 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C598 000281F8 7F 84 E3 78 */ mr r4, r28 /* 8002C59C 000281FC FC 80 F8 90 */ fmr f4, f31 /* 8002C5A0 00028200 48 01 5D 7D */ bl func_8004231C /* 8002C5A4 00028204 48 00 04 9C */ b lbl_8002CA40 /* 8002C5A8 00028208 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C5AC 0002820C 4B FF DC F1 */ bl func_8002A29C /* 8002C5B0 00028210 7C 7C 1B 78 */ mr r28, r3 /* 8002C5B4 00028214 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C5B8 00028218 4B FF DD C1 */ bl func_8002A378 /* 8002C5BC 0002821C FF A0 08 90 */ fmr f29, f1 /* 8002C5C0 00028220 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C5C4 00028224 4B FF DD B5 */ bl func_8002A378 /* 8002C5C8 00028228 FF E0 08 90 */ fmr f31, f1 /* 8002C5CC 0002822C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C5D0 00028230 4B FF DD A9 */ bl func_8002A378 /* 8002C5D4 00028234 FF C0 08 90 */ fmr f30, f1 /* 8002C5D8 00028238 38 7E 00 08 */ addi r3, r30, 8 /* 8002C5DC 0002823C 4B FF DD 9D */ bl func_8002A378 /* 8002C5E0 00028240 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C5E4 00028244 FC 40 F0 90 */ fmr f2, f30 /* 8002C5E8 00028248 FC 60 F8 90 */ fmr f3, f31 /* 8002C5EC 0002824C 7F E3 FB 78 */ mr r3, r31 /* 8002C5F0 00028250 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C5F4 00028254 7F 84 E3 78 */ mr r4, r28 /* 8002C5F8 00028258 FC 80 E8 90 */ fmr f4, f29 /* 8002C5FC 0002825C 48 01 5D DD */ bl func_800423D8 /* 8002C600 00028260 48 00 04 40 */ b lbl_8002CA40 /* 8002C604 00028264 38 7E 00 28 */ addi r3, r30, 0x28 /* 8002C608 00028268 4B FF DC 95 */ bl func_8002A29C /* 8002C60C 0002826C 7C 7D 1B 78 */ mr r29, r3 /* 8002C610 00028270 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C614 00028274 4B FF DC 89 */ bl func_8002A29C /* 8002C618 00028278 7C 7C 1B 78 */ mr r28, r3 /* 8002C61C 0002827C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C620 00028280 4B FF DD 59 */ bl func_8002A378 /* 8002C624 00028284 FF E0 08 90 */ fmr f31, f1 /* 8002C628 00028288 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C62C 0002828C 4B FF DD 4D */ bl func_8002A378 /* 8002C630 00028290 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C634 00028294 38 7E 00 08 */ addi r3, r30, 8 /* 8002C638 00028298 EF C0 00 72 */ fmuls f30, f0, f1 /* 8002C63C 0002829C 4B FF DD 3D */ bl func_8002A378 /* 8002C640 000282A0 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C644 000282A4 FC 40 F0 90 */ fmr f2, f30 /* 8002C648 000282A8 FC 60 F8 90 */ fmr f3, f31 /* 8002C64C 000282AC 7F E3 FB 78 */ mr r3, r31 /* 8002C650 000282B0 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C654 000282B4 7F 84 E3 78 */ mr r4, r28 /* 8002C658 000282B8 7F A5 EB 78 */ mr r5, r29 /* 8002C65C 000282BC 48 01 64 D9 */ bl func_80042B34 /* 8002C660 000282C0 48 00 03 E0 */ b lbl_8002CA40 /* 8002C664 000282C4 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C668 000282C8 4B FF DC 35 */ bl func_8002A29C /* 8002C66C 000282CC 7C 7D 1B 78 */ mr r29, r3 /* 8002C670 000282D0 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C674 000282D4 4B FF DC 29 */ bl func_8002A29C /* 8002C678 000282D8 7C 7C 1B 78 */ mr r28, r3 /* 8002C67C 000282DC 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C680 000282E0 4B FF DC F9 */ bl func_8002A378 /* 8002C684 000282E4 FF C0 08 90 */ fmr f30, f1 /* 8002C688 000282E8 38 7E 00 08 */ addi r3, r30, 8 /* 8002C68C 000282EC 4B FF DC ED */ bl func_8002A378 /* 8002C690 000282F0 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C694 000282F4 FC 40 F0 90 */ fmr f2, f30 /* 8002C698 000282F8 7F E3 FB 78 */ mr r3, r31 /* 8002C69C 000282FC 7F 84 E3 78 */ mr r4, r28 /* 8002C6A0 00028300 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C6A4 00028304 7F A5 EB 78 */ mr r5, r29 /* 8002C6A8 00028308 48 01 66 09 */ bl func_80042CB0 /* 8002C6AC 0002830C 48 00 03 94 */ b lbl_8002CA40 /* 8002C6B0 00028310 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C6B4 00028314 4B FF DB E9 */ bl func_8002A29C /* 8002C6B8 00028318 7C 7D 1B 78 */ mr r29, r3 /* 8002C6BC 0002831C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C6C0 00028320 4B FF DB DD */ bl func_8002A29C /* 8002C6C4 00028324 7C 7C 1B 78 */ mr r28, r3 /* 8002C6C8 00028328 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C6CC 0002832C 4B FF DC AD */ bl func_8002A378 /* 8002C6D0 00028330 FF C0 08 90 */ fmr f30, f1 /* 8002C6D4 00028334 38 7E 00 08 */ addi r3, r30, 8 /* 8002C6D8 00028338 4B FF DC A1 */ bl func_8002A378 /* 8002C6DC 0002833C C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C6E0 00028340 FC 40 F0 90 */ fmr f2, f30 /* 8002C6E4 00028344 7F E3 FB 78 */ mr r3, r31 /* 8002C6E8 00028348 7F 84 E3 78 */ mr r4, r28 /* 8002C6EC 0002834C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C6F0 00028350 7F A5 EB 78 */ mr r5, r29 /* 8002C6F4 00028354 48 01 66 CD */ bl func_80042DC0 /* 8002C6F8 00028358 48 00 03 48 */ b lbl_8002CA40 /* 8002C6FC 0002835C 38 7E 00 08 */ addi r3, r30, 8 /* 8002C700 00028360 4B FF DC 79 */ bl func_8002A378 /* 8002C704 00028364 7F E3 FB 78 */ mr r3, r31 /* 8002C708 00028368 48 01 4B 05 */ bl func_8004120C /* 8002C70C 0002836C 38 60 00 01 */ li r3, 1 /* 8002C710 00028370 48 00 03 34 */ b lbl_8002CA44 /* 8002C714 00028374 7F E3 FB 78 */ mr r3, r31 /* 8002C718 00028378 48 01 4B 05 */ bl func_8004121C /* 8002C71C 0002837C 38 60 00 01 */ li r3, 1 /* 8002C720 00028380 48 00 03 24 */ b lbl_8002CA44 /* 8002C724 00028384 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C728 00028388 4B FF DC 51 */ bl func_8002A378 /* 8002C72C 0002838C FF E0 08 90 */ fmr f31, f1 /* 8002C730 00028390 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C734 00028394 4B FF DC 45 */ bl func_8002A378 /* 8002C738 00028398 FF C0 08 90 */ fmr f30, f1 /* 8002C73C 0002839C 38 7E 00 08 */ addi r3, r30, 8 /* 8002C740 000283A0 4B FF DC 39 */ bl func_8002A378 /* 8002C744 000283A4 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C748 000283A8 FC 40 F0 90 */ fmr f2, f30 /* 8002C74C 000283AC FC 60 F8 90 */ fmr f3, f31 /* 8002C750 000283B0 7F E3 FB 78 */ mr r3, r31 /* 8002C754 000283B4 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C758 000283B8 48 01 4F 91 */ bl func_800416E8 /* 8002C75C 000283BC 38 60 00 01 */ li r3, 1 /* 8002C760 000283C0 48 00 02 E4 */ b lbl_8002CA44 /* 8002C764 000283C4 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C768 000283C8 4B FF DC 11 */ bl func_8002A378 /* 8002C76C 000283CC FF E0 08 90 */ fmr f31, f1 /* 8002C770 000283D0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C774 000283D4 4B FF DC 05 */ bl func_8002A378 /* 8002C778 000283D8 FF C0 08 90 */ fmr f30, f1 /* 8002C77C 000283DC 38 7E 00 08 */ addi r3, r30, 8 /* 8002C780 000283E0 4B FF DB 1D */ bl func_8002A29C /* 8002C784 000283E4 FC 20 F0 90 */ fmr f1, f30 /* 8002C788 000283E8 7C 64 1B 78 */ mr r4, r3 /* 8002C78C 000283EC FC 40 F8 90 */ fmr f2, f31 /* 8002C790 000283F0 7F E3 FB 78 */ mr r3, r31 /* 8002C794 000283F4 48 01 4F A9 */ bl func_8004173C /* 8002C798 000283F8 38 60 00 01 */ li r3, 1 /* 8002C79C 000283FC 48 00 02 A8 */ b lbl_8002CA44 /* 8002C7A0 00028400 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C7A4 00028404 4B FF DB D5 */ bl func_8002A378 /* 8002C7A8 00028408 FF E0 08 90 */ fmr f31, f1 /* 8002C7AC 0002840C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C7B0 00028410 4B FF DB C9 */ bl func_8002A378 /* 8002C7B4 00028414 FF C0 08 90 */ fmr f30, f1 /* 8002C7B8 00028418 38 7E 00 08 */ addi r3, r30, 8 /* 8002C7BC 0002841C 4B FF DA E1 */ bl func_8002A29C /* 8002C7C0 00028420 FC 20 F0 90 */ fmr f1, f30 /* 8002C7C4 00028424 7C 64 1B 78 */ mr r4, r3 /* 8002C7C8 00028428 FC 40 F8 90 */ fmr f2, f31 /* 8002C7CC 0002842C 7F E3 FB 78 */ mr r3, r31 /* 8002C7D0 00028430 48 01 4F C5 */ bl func_80041794 /* 8002C7D4 00028434 38 60 00 01 */ li r3, 1 /* 8002C7D8 00028438 48 00 02 6C */ b lbl_8002CA44 /* 8002C7DC 0002843C 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C7E0 00028440 4B FF DB 99 */ bl func_8002A378 /* 8002C7E4 00028444 FF E0 08 90 */ fmr f31, f1 /* 8002C7E8 00028448 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C7EC 0002844C 4B FF DB 8D */ bl func_8002A378 /* 8002C7F0 00028450 FF C0 08 90 */ fmr f30, f1 /* 8002C7F4 00028454 38 7E 00 08 */ addi r3, r30, 8 /* 8002C7F8 00028458 4B FF DB 81 */ bl func_8002A378 /* 8002C7FC 0002845C FC 40 F0 90 */ fmr f2, f30 /* 8002C800 00028460 7F E3 FB 78 */ mr r3, r31 /* 8002C804 00028464 FC 60 F8 90 */ fmr f3, f31 /* 8002C808 00028468 48 01 4F E1 */ bl func_800417E8 /* 8002C80C 0002846C 38 60 00 01 */ li r3, 1 /* 8002C810 00028470 48 00 02 34 */ b lbl_8002CA44 /* 8002C814 00028474 38 7E 00 08 */ addi r3, r30, 8 /* 8002C818 00028478 4B FF DA 85 */ bl func_8002A29C /* 8002C81C 0002847C 7C 64 1B 78 */ mr r4, r3 /* 8002C820 00028480 7F E3 FB 78 */ mr r3, r31 /* 8002C824 00028484 48 01 50 89 */ bl func_800418AC /* 8002C828 00028488 38 60 00 01 */ li r3, 1 /* 8002C82C 0002848C 48 00 02 18 */ b lbl_8002CA44 /* 8002C830 00028490 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C834 00028494 4B FF DA 69 */ bl func_8002A29C /* 8002C838 00028498 7C 7C 1B 78 */ mr r28, r3 /* 8002C83C 0002849C 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C840 000284A0 4B FF DB 39 */ bl func_8002A378 /* 8002C844 000284A4 FF C0 08 90 */ fmr f30, f1 /* 8002C848 000284A8 38 7E 00 08 */ addi r3, r30, 8 /* 8002C84C 000284AC 4B FF DB 2D */ bl func_8002A378 /* 8002C850 000284B0 FC 40 F0 90 */ fmr f2, f30 /* 8002C854 000284B4 7F E3 FB 78 */ mr r3, r31 /* 8002C858 000284B8 7F 84 E3 78 */ mr r4, r28 /* 8002C85C 000284BC 48 01 50 F5 */ bl func_80041950 /* 8002C860 000284C0 38 60 00 01 */ li r3, 1 /* 8002C864 000284C4 48 00 01 E0 */ b lbl_8002CA44 /* 8002C868 000284C8 7F E3 FB 78 */ mr r3, r31 /* 8002C86C 000284CC 48 01 71 1D */ bl func_80043988 /* 8002C870 000284D0 38 60 00 01 */ li r3, 1 /* 8002C874 000284D4 48 00 01 D0 */ b lbl_8002CA44 /* 8002C878 000284D8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C87C 000284DC 4B FF DA 21 */ bl func_8002A29C /* 8002C880 000284E0 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C884 000284E4 7C 65 1B 78 */ mr r5, r3 /* 8002C888 000284E8 7F E3 FB 78 */ mr r3, r31 /* 8002C88C 000284EC 48 01 71 61 */ bl func_800439EC /* 8002C890 000284F0 7F A3 EB 78 */ mr r3, r29 /* 8002C894 000284F4 4B FF DA B9 */ bl func_8002A34C /* 8002C898 000284F8 38 60 00 01 */ li r3, 1 /* 8002C89C 000284FC 48 00 01 A8 */ b lbl_8002CA44 /* 8002C8A0 00028500 38 7E 00 08 */ addi r3, r30, 8 /* 8002C8A4 00028504 4B FF D9 F9 */ bl func_8002A29C /* 8002C8A8 00028508 7C 64 1B 78 */ mr r4, r3 /* 8002C8AC 0002850C 7F E3 FB 78 */ mr r3, r31 /* 8002C8B0 00028510 48 01 72 61 */ bl func_80043B10 /* 8002C8B4 00028514 7F A3 EB 78 */ mr r3, r29 /* 8002C8B8 00028518 4B FF DA 95 */ bl func_8002A34C /* 8002C8BC 0002851C 38 60 00 01 */ li r3, 1 /* 8002C8C0 00028520 48 00 01 84 */ b lbl_8002CA44 /* 8002C8C4 00028524 38 61 00 4C */ addi r3, r1, 0x4c /* 8002C8C8 00028528 48 00 02 05 */ bl func_8002CACC /* 8002C8CC 0002852C A8 1E 00 08 */ lha r0, 8(r30) /* 8002C8D0 00028530 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002C8D4 00028534 40 82 00 40 */ bne lbl_8002C914 /* 8002C8D8 00028538 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C8DC 0002853C 4B FF DA 9D */ bl func_8002A378 /* 8002C8E0 00028540 FF C0 08 90 */ fmr f30, f1 /* 8002C8E4 00028544 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C8E8 00028548 4B FF DA 91 */ bl func_8002A378 /* 8002C8EC 0002854C FF E0 08 90 */ fmr f31, f1 /* 8002C8F0 00028550 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C8F4 00028554 4B FF D9 A9 */ bl func_8002A29C /* 8002C8F8 00028558 FC 20 F8 90 */ fmr f1, f31 /* 8002C8FC 0002855C 7C 65 1B 78 */ mr r5, r3 /* 8002C900 00028560 FC 40 F0 90 */ fmr f2, f30 /* 8002C904 00028564 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8002C908 00028568 7F E3 FB 78 */ mr r3, r31 /* 8002C90C 0002856C 38 C1 00 4C */ addi r6, r1, 0x4c /* 8002C910 00028570 48 01 6D 2D */ bl func_8004363C lbl_8002C914: /* 8002C914 00028574 38 60 00 01 */ li r3, 1 /* 8002C918 00028578 48 00 01 2C */ b lbl_8002CA44 /* 8002C91C 0002857C 80 0D 80 C8 */ lwz r0, lbl_8063D388-_SDA_BASE_(r13) /* 8002C920 00028580 2C 00 00 00 */ cmpwi r0, 0 /* 8002C924 00028584 41 82 01 1C */ beq lbl_8002CA40 /* 8002C928 00028588 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C92C 0002858C 4B FF D9 71 */ bl func_8002A29C /* 8002C930 00028590 7C 7D 1B 78 */ mr r29, r3 /* 8002C934 00028594 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C938 00028598 4B FF DA 41 */ bl func_8002A378 /* 8002C93C 0002859C FF E0 08 90 */ fmr f31, f1 /* 8002C940 000285A0 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C944 000285A4 4B FF D9 59 */ bl func_8002A29C /* 8002C948 000285A8 7C 7C 1B 78 */ mr r28, r3 /* 8002C94C 000285AC 38 7E 00 08 */ addi r3, r30, 8 /* 8002C950 000285B0 4B FF DA 29 */ bl func_8002A378 /* 8002C954 000285B4 C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C958 000285B8 FC 40 F8 90 */ fmr f2, f31 /* 8002C95C 000285BC 7F E3 FB 78 */ mr r3, r31 /* 8002C960 000285C0 7F 84 E3 78 */ mr r4, r28 /* 8002C964 000285C4 EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C968 000285C8 7F A5 EB 78 */ mr r5, r29 /* 8002C96C 000285CC 48 01 51 A5 */ bl func_80041B10 /* 8002C970 000285D0 48 00 00 D0 */ b lbl_8002CA40 /* 8002C974 000285D4 80 0D 80 C8 */ lwz r0, lbl_8063D388-_SDA_BASE_(r13) /* 8002C978 000285D8 2C 00 00 00 */ cmpwi r0, 0 /* 8002C97C 000285DC 41 82 00 C4 */ beq lbl_8002CA40 /* 8002C980 000285E0 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C984 000285E4 4B FF D9 19 */ bl func_8002A29C /* 8002C988 000285E8 7C 7D 1B 78 */ mr r29, r3 /* 8002C98C 000285EC 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C990 000285F0 4B FF D9 E9 */ bl func_8002A378 /* 8002C994 000285F4 FF E0 08 90 */ fmr f31, f1 /* 8002C998 000285F8 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C99C 000285FC 4B FF D9 01 */ bl func_8002A29C /* 8002C9A0 00028600 7C 7C 1B 78 */ mr r28, r3 /* 8002C9A4 00028604 38 7E 00 08 */ addi r3, r30, 8 /* 8002C9A8 00028608 4B FF D9 D1 */ bl func_8002A378 /* 8002C9AC 0002860C C0 02 81 38 */ lfs f0, lbl_80640738-_SDA2_BASE_(r2) /* 8002C9B0 00028610 FC 40 F8 90 */ fmr f2, f31 /* 8002C9B4 00028614 7F E3 FB 78 */ mr r3, r31 /* 8002C9B8 00028618 7F 84 E3 78 */ mr r4, r28 /* 8002C9BC 0002861C EC 20 00 72 */ fmuls f1, f0, f1 /* 8002C9C0 00028620 7F A5 EB 78 */ mr r5, r29 /* 8002C9C4 00028624 48 01 51 65 */ bl func_80041B28 /* 8002C9C8 00028628 48 00 00 78 */ b lbl_8002CA40 /* 8002C9CC 0002862C 80 0D 80 C8 */ lwz r0, lbl_8063D388-_SDA_BASE_(r13) /* 8002C9D0 00028630 2C 00 00 00 */ cmpwi r0, 0 /* 8002C9D4 00028634 41 82 00 6C */ beq lbl_8002CA40 /* 8002C9D8 00028638 38 7E 00 20 */ addi r3, r30, 0x20 /* 8002C9DC 0002863C 4B FF D8 C1 */ bl func_8002A29C /* 8002C9E0 00028640 7C 7C 1B 78 */ mr r28, r3 /* 8002C9E4 00028644 38 7E 00 18 */ addi r3, r30, 0x18 /* 8002C9E8 00028648 4B FF D9 91 */ bl func_8002A378 /* 8002C9EC 0002864C FF E0 08 90 */ fmr f31, f1 /* 8002C9F0 00028650 38 7E 00 10 */ addi r3, r30, 0x10 /* 8002C9F4 00028654 4B FF D8 A9 */ bl func_8002A29C /* 8002C9F8 00028658 7C 7D 1B 78 */ mr r29, r3 /* 8002C9FC 0002865C 38 7E 00 08 */ addi r3, r30, 8 /* 8002CA00 00028660 4B FF D9 79 */ bl func_8002A378 /* 8002CA04 00028664 FC 40 F8 90 */ fmr f2, f31 /* 8002CA08 00028668 7F E3 FB 78 */ mr r3, r31 /* 8002CA0C 0002866C 7F A4 EB 78 */ mr r4, r29 /* 8002CA10 00028670 7F 85 E3 78 */ mr r5, r28 /* 8002CA14 00028674 48 01 51 2D */ bl func_80041B40 /* 8002CA18 00028678 48 00 00 28 */ b lbl_8002CA40 /* 8002CA1C 0002867C 38 7E 00 08 */ addi r3, r30, 8 /* 8002CA20 00028680 4B FF D9 B9 */ bl func_8002A3D8 /* 8002CA24 00028684 7C 64 1B 78 */ mr r4, r3 /* 8002CA28 00028688 7F E3 FB 78 */ mr r3, r31 /* 8002CA2C 0002868C 38 A1 00 4C */ addi r5, r1, 0x4c /* 8002CA30 00028690 48 01 7B 25 */ bl func_80044554 /* 8002CA34 00028694 7F 43 D3 78 */ mr r3, r26 /* 8002CA38 00028698 38 81 00 4C */ addi r4, r1, 0x4c /* 8002CA3C 0002869C 4B FF D9 B9 */ bl func_8002A3F4 lbl_8002CA40: /* 8002CA40 000286A0 38 60 00 01 */ li r3, 1 lbl_8002CA44: /* 8002CA44 000286A4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8002CA48 000286A8 CB E1 00 90 */ lfd f31, 0x90(r1) /* 8002CA4C 000286AC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 8002CA50 000286B0 CB C1 00 80 */ lfd f30, 0x80(r1) /* 8002CA54 000286B4 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 8002CA58 000286B8 39 61 00 70 */ addi r11, r1, 0x70 /* 8002CA5C 000286BC CB A1 00 70 */ lfd f29, 0x70(r1) /* 8002CA60 000286C0 48 19 A7 11 */ bl _restgpr_26 /* 8002CA64 000286C4 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8002CA68 000286C8 7C 08 03 A6 */ mtlr r0 /* 8002CA6C 000286CC 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8002CA70 000286D0 4E 80 00 20 */ blr .global func_8002CA74 func_8002CA74: /* 8002CA74 000286D4 4E 80 00 20 */ blr .global func_8002CA78 func_8002CA78: /* 8002CA78 000286D8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8002CA7C 000286DC 7C 08 02 A6 */ mflr r0 /* 8002CA80 000286E0 90 01 00 14 */ stw r0, 0x14(r1) /* 8002CA84 000286E4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8002CA88 000286E8 7C 7F 1B 78 */ mr r31, r3 /* 8002CA8C 000286EC D0 23 04 E0 */ stfs f1, 0x4e0(r3) /* 8002CA90 000286F0 38 63 00 04 */ addi r3, r3, 4 /* 8002CA94 000286F4 48 02 38 F5 */ bl func_80050388 /* 8002CA98 000286F8 38 00 00 01 */ li r0, 1 /* 8002CA9C 000286FC 98 1F 00 01 */ stb r0, 1(r31) /* 8002CAA0 00028700 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8002CAA4 00028704 80 01 00 14 */ lwz r0, 0x14(r1) /* 8002CAA8 00028708 7C 08 03 A6 */ mtlr r0 /* 8002CAAC 0002870C 38 21 00 10 */ addi r1, r1, 0x10 /* 8002CAB0 00028710 4E 80 00 20 */ blr .global func_8002CAB4 func_8002CAB4: /* 8002CAB4 00028714 C0 23 04 E0 */ lfs f1, 0x4e0(r3) /* 8002CAB8 00028718 4E 80 00 20 */ blr .global func_8002CABC func_8002CABC: /* 8002CABC 0002871C D0 23 00 00 */ stfs f1, 0(r3) /* 8002CAC0 00028720 D0 43 00 04 */ stfs f2, 4(r3) /* 8002CAC4 00028724 D0 63 00 08 */ stfs f3, 8(r3) /* 8002CAC8 00028728 4E 80 00 20 */ blr .global func_8002CACC func_8002CACC: /* 8002CACC 0002872C C0 02 81 40 */ lfs f0, lbl_80640740-_SDA2_BASE_(r2) /* 8002CAD0 00028730 D0 03 00 00 */ stfs f0, 0(r3) /* 8002CAD4 00028734 D0 03 00 04 */ stfs f0, 4(r3) /* 8002CAD8 00028738 D0 03 00 08 */ stfs f0, 8(r3) /* 8002CADC 0002873C 4E 80 00 20 */ blr .global func_8002CAE0 func_8002CAE0: /* 8002CAE0 00028740 38 A0 00 01 */ li r5, 1 /* 8002CAE4 00028744 38 6D 97 20 */ addi r3, r13, lbl_8063E9E0-_SDA_BASE_ /* 8002CAE8 00028748 38 80 00 04 */ li r4, 4 /* 8002CAEC 0002874C 38 00 00 00 */ li r0, 0 /* 8002CAF0 00028750 98 AD 97 20 */ stb r5, lbl_8063E9E0-_SDA_BASE_(r13) /* 8002CAF4 00028754 B0 83 00 02 */ sth r4, 2(r3) /* 8002CAF8 00028758 98 03 00 04 */ stb r0, 4(r3) /* 8002CAFC 0002875C 4E 80 00 20 */ blr .global lbl_8002CB00 lbl_8002CB00: /* 8002CB00 00028760 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8002CB04 00028764 7C 08 02 A6 */ mflr r0 /* 8002CB08 00028768 90 01 00 44 */ stw r0, 0x44(r1) /* 8002CB0C 0002876C 39 61 00 40 */ addi r11, r1, 0x40 /* 8002CB10 00028770 48 19 A6 15 */ bl _savegpr_26 /* 8002CB14 00028774 7C 7A 1B 78 */ mr r26, r3 /* 8002CB18 00028778 7C 9B 23 78 */ mr r27, r4 /* 8002CB1C 0002877C 7C BC 2B 78 */ mr r28, r5 /* 8002CB20 00028780 7C DD 33 78 */ mr r29, r6 /* 8002CB24 00028784 48 01 8A 6D */ bl func_80045590 /* 8002CB28 00028788 7C 7F 1B 78 */ mr r31, r3 /* 8002CB2C 0002878C 48 00 92 71 */ bl func_80035D9C /* 8002CB30 00028790 38 1B FF F0 */ addi r0, r27, -16 /* 8002CB34 00028794 7C 7E 1B 78 */ mr r30, r3 /* 8002CB38 00028798 28 00 00 7B */ cmplwi r0, 0x7b /* 8002CB3C 0002879C 41 81 12 B4 */ bgt lbl_8002DDF0 /* 8002CB40 000287A0 3C 80 80 41 */ lis r4, lbl_80409D50@ha /* 8002CB44 000287A4 54 00 10 3A */ slwi r0, r0, 2 /* 8002CB48 000287A8 38 84 9D 50 */ addi r4, r4, lbl_80409D50@l /* 8002CB4C 000287AC 7C 84 00 2E */ lwzx r4, r4, r0 /* 8002CB50 000287B0 7C 89 03 A6 */ mtctr r4 /* 8002CB54 000287B4 4E 80 04 20 */ bctr /* 8002CB58 000287B8 48 00 92 E1 */ bl func_80035E38 /* 8002CB5C 000287BC 38 00 00 01 */ li r0, 1 /* 8002CB60 000287C0 90 7D 00 04 */ stw r3, 4(r29) /* 8002CB64 000287C4 38 60 00 01 */ li r3, 1 /* 8002CB68 000287C8 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CB6C 000287CC 48 00 12 88 */ b lbl_8002DDF4 /* 8002CB70 000287D0 48 00 92 D9 */ bl func_80035E48 /* 8002CB74 000287D4 38 00 00 01 */ li r0, 1 /* 8002CB78 000287D8 90 7D 00 04 */ stw r3, 4(r29) /* 8002CB7C 000287DC 38 60 00 01 */ li r3, 1 /* 8002CB80 000287E0 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CB84 000287E4 48 00 12 70 */ b lbl_8002DDF4 /* 8002CB88 000287E8 48 00 92 D1 */ bl func_80035E58 /* 8002CB8C 000287EC 38 00 00 01 */ li r0, 1 /* 8002CB90 000287F0 90 7D 00 04 */ stw r3, 4(r29) /* 8002CB94 000287F4 38 60 00 01 */ li r3, 1 /* 8002CB98 000287F8 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CB9C 000287FC 48 00 12 58 */ b lbl_8002DDF4 /* 8002CBA0 00028800 48 00 92 C9 */ bl func_80035E68 /* 8002CBA4 00028804 38 00 00 01 */ li r0, 1 /* 8002CBA8 00028808 90 7D 00 04 */ stw r3, 4(r29) /* 8002CBAC 0002880C 38 60 00 01 */ li r3, 1 /* 8002CBB0 00028810 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CBB4 00028814 48 00 12 40 */ b lbl_8002DDF4 /* 8002CBB8 00028818 48 00 92 C1 */ bl func_80035E78 /* 8002CBBC 0002881C 38 00 00 01 */ li r0, 1 /* 8002CBC0 00028820 90 7D 00 04 */ stw r3, 4(r29) /* 8002CBC4 00028824 38 60 00 01 */ li r3, 1 /* 8002CBC8 00028828 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CBCC 0002882C 48 00 12 28 */ b lbl_8002DDF4 /* 8002CBD0 00028830 48 00 92 B9 */ bl func_80035E88 /* 8002CBD4 00028834 38 00 00 01 */ li r0, 1 /* 8002CBD8 00028838 90 7D 00 04 */ stw r3, 4(r29) /* 8002CBDC 0002883C 38 60 00 01 */ li r3, 1 /* 8002CBE0 00028840 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CBE4 00028844 48 00 12 10 */ b lbl_8002DDF4 /* 8002CBE8 00028848 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8002CBEC 0002884C 48 1F 9C 51 */ bl func_8022683C /* 8002CBF0 00028850 38 00 00 01 */ li r0, 1 /* 8002CBF4 00028854 90 7D 00 04 */ stw r3, 4(r29) /* 8002CBF8 00028858 38 60 00 01 */ li r3, 1 /* 8002CBFC 0002885C B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC00 00028860 48 00 11 F4 */ b lbl_8002DDF4 /* 8002CC04 00028864 48 00 92 9D */ bl func_80035EA0 /* 8002CC08 00028868 38 00 00 01 */ li r0, 1 /* 8002CC0C 0002886C 90 7D 00 04 */ stw r3, 4(r29) /* 8002CC10 00028870 38 60 00 01 */ li r3, 1 /* 8002CC14 00028874 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC18 00028878 48 00 11 DC */ b lbl_8002DDF4 /* 8002CC1C 0002887C 48 00 92 BD */ bl func_80035ED8 /* 8002CC20 00028880 38 00 00 01 */ li r0, 1 /* 8002CC24 00028884 90 7D 00 04 */ stw r3, 4(r29) /* 8002CC28 00028888 38 60 00 01 */ li r3, 1 /* 8002CC2C 0002888C B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC30 00028890 48 00 11 C4 */ b lbl_8002DDF4 /* 8002CC34 00028894 48 00 92 75 */ bl func_80035EA8 /* 8002CC38 00028898 38 00 00 01 */ li r0, 1 /* 8002CC3C 0002889C 90 7D 00 04 */ stw r3, 4(r29) /* 8002CC40 000288A0 38 60 00 01 */ li r3, 1 /* 8002CC44 000288A4 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC48 000288A8 48 00 11 AC */ b lbl_8002DDF4 /* 8002CC4C 000288AC 48 00 92 B1 */ bl func_80035EFC /* 8002CC50 000288B0 38 00 00 01 */ li r0, 1 /* 8002CC54 000288B4 90 7D 00 04 */ stw r3, 4(r29) /* 8002CC58 000288B8 38 60 00 01 */ li r3, 1 /* 8002CC5C 000288BC B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC60 000288C0 48 00 11 94 */ b lbl_8002DDF4 /* 8002CC64 000288C4 48 00 92 B1 */ bl func_80035F14 /* 8002CC68 000288C8 38 00 00 01 */ li r0, 1 /* 8002CC6C 000288CC 90 7D 00 04 */ stw r3, 4(r29) /* 8002CC70 000288D0 38 60 00 01 */ li r3, 1 /* 8002CC74 000288D4 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC78 000288D8 48 00 11 7C */ b lbl_8002DDF4 /* 8002CC7C 000288DC 48 00 92 B1 */ bl func_80035F2C /* 8002CC80 000288E0 38 00 00 01 */ li r0, 1 /* 8002CC84 000288E4 90 7D 00 04 */ stw r3, 4(r29) /* 8002CC88 000288E8 38 60 00 01 */ li r3, 1 /* 8002CC8C 000288EC B0 1D 00 00 */ sth r0, 0(r29) /* 8002CC90 000288F0 48 00 11 64 */ b lbl_8002DDF4 /* 8002CC94 000288F4 A8 1C 00 08 */ lha r0, 8(r28) /* 8002CC98 000288F8 2C 00 00 01 */ cmpwi r0, 1 /* 8002CC9C 000288FC 40 82 00 0C */ bne lbl_8002CCA8 /* 8002CCA0 00028900 83 FC 00 0C */ lwz r31, 0xc(r28) /* 8002CCA4 00028904 48 00 00 2C */ b lbl_8002CCD0 lbl_8002CCA8: /* 8002CCA8 00028908 2C 00 00 02 */ cmpwi r0, 2 /* 8002CCAC 0002890C 40 82 00 18 */ bne lbl_8002CCC4 /* 8002CCB0 00028910 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002CCB4 00028914 FC 00 00 1E */ fctiwz f0, f0 /* 8002CCB8 00028918 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CCBC 0002891C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CCC0 00028920 48 00 00 0C */ b lbl_8002CCCC lbl_8002CCC4: /* 8002CCC4 00028924 38 7C 00 08 */ addi r3, r28, 8 /* 8002CCC8 00028928 48 20 10 6D */ bl func_8022DD34 lbl_8002CCCC: /* 8002CCCC 0002892C 7C 7F 1B 78 */ mr r31, r3 lbl_8002CCD0: /* 8002CCD0 00028930 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002CCD4 00028934 2C 00 00 01 */ cmpwi r0, 1 /* 8002CCD8 00028938 40 82 00 0C */ bne lbl_8002CCE4 /* 8002CCDC 0002893C 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002CCE0 00028940 48 00 00 2C */ b lbl_8002CD0C lbl_8002CCE4: /* 8002CCE4 00028944 2C 00 00 02 */ cmpwi r0, 2 /* 8002CCE8 00028948 40 82 00 18 */ bne lbl_8002CD00 /* 8002CCEC 0002894C C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002CCF0 00028950 FC 00 00 1E */ fctiwz f0, f0 /* 8002CCF4 00028954 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CCF8 00028958 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CCFC 0002895C 48 00 00 0C */ b lbl_8002CD08 lbl_8002CD00: /* 8002CD00 00028960 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002CD04 00028964 48 20 10 31 */ bl func_8022DD34 lbl_8002CD08: /* 8002CD08 00028968 7C 65 1B 78 */ mr r5, r3 lbl_8002CD0C: /* 8002CD0C 0002896C 7F C3 F3 78 */ mr r3, r30 /* 8002CD10 00028970 7F E4 FB 78 */ mr r4, r31 /* 8002CD14 00028974 48 00 94 09 */ bl func_8003611C /* 8002CD18 00028978 38 00 00 01 */ li r0, 1 /* 8002CD1C 0002897C 90 7D 00 04 */ stw r3, 4(r29) /* 8002CD20 00028980 38 60 00 01 */ li r3, 1 /* 8002CD24 00028984 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CD28 00028988 48 00 10 CC */ b lbl_8002DDF4 /* 8002CD2C 0002898C 48 00 93 A5 */ bl func_800360D0 /* 8002CD30 00028990 38 00 00 01 */ li r0, 1 /* 8002CD34 00028994 90 7D 00 04 */ stw r3, 4(r29) /* 8002CD38 00028998 38 60 00 01 */ li r3, 1 /* 8002CD3C 0002899C B0 1D 00 00 */ sth r0, 0(r29) /* 8002CD40 000289A0 48 00 10 B4 */ b lbl_8002DDF4 /* 8002CD44 000289A4 A8 1C 00 08 */ lha r0, 8(r28) /* 8002CD48 000289A8 2C 00 00 01 */ cmpwi r0, 1 /* 8002CD4C 000289AC 40 82 00 0C */ bne lbl_8002CD58 /* 8002CD50 000289B0 83 FC 00 0C */ lwz r31, 0xc(r28) /* 8002CD54 000289B4 48 00 00 2C */ b lbl_8002CD80 lbl_8002CD58: /* 8002CD58 000289B8 2C 00 00 02 */ cmpwi r0, 2 /* 8002CD5C 000289BC 40 82 00 18 */ bne lbl_8002CD74 /* 8002CD60 000289C0 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002CD64 000289C4 FC 00 00 1E */ fctiwz f0, f0 /* 8002CD68 000289C8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CD6C 000289CC 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CD70 000289D0 48 00 00 0C */ b lbl_8002CD7C lbl_8002CD74: /* 8002CD74 000289D4 38 7C 00 08 */ addi r3, r28, 8 /* 8002CD78 000289D8 48 20 0F BD */ bl func_8022DD34 lbl_8002CD7C: /* 8002CD7C 000289DC 7C 7F 1B 78 */ mr r31, r3 lbl_8002CD80: /* 8002CD80 000289E0 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002CD84 000289E4 2C 00 00 01 */ cmpwi r0, 1 /* 8002CD88 000289E8 40 82 00 0C */ bne lbl_8002CD94 /* 8002CD8C 000289EC 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002CD90 000289F0 48 00 00 2C */ b lbl_8002CDBC lbl_8002CD94: /* 8002CD94 000289F4 2C 00 00 02 */ cmpwi r0, 2 /* 8002CD98 000289F8 40 82 00 18 */ bne lbl_8002CDB0 /* 8002CD9C 000289FC C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002CDA0 00028A00 FC 00 00 1E */ fctiwz f0, f0 /* 8002CDA4 00028A04 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CDA8 00028A08 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CDAC 00028A0C 48 00 00 0C */ b lbl_8002CDB8 lbl_8002CDB0: /* 8002CDB0 00028A10 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002CDB4 00028A14 48 20 0F 81 */ bl func_8022DD34 lbl_8002CDB8: /* 8002CDB8 00028A18 7C 65 1B 78 */ mr r5, r3 lbl_8002CDBC: /* 8002CDBC 00028A1C 7F C3 F3 78 */ mr r3, r30 /* 8002CDC0 00028A20 7F E4 FB 78 */ mr r4, r31 /* 8002CDC4 00028A24 48 00 96 55 */ bl func_80036418 /* 8002CDC8 00028A28 38 00 00 01 */ li r0, 1 /* 8002CDCC 00028A2C 90 7D 00 04 */ stw r3, 4(r29) /* 8002CDD0 00028A30 38 60 00 01 */ li r3, 1 /* 8002CDD4 00028A34 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CDD8 00028A38 48 00 10 1C */ b lbl_8002DDF4 /* 8002CDDC 00028A3C 48 00 91 8D */ bl func_80035F68 /* 8002CDE0 00028A40 38 00 00 01 */ li r0, 1 /* 8002CDE4 00028A44 90 7D 00 04 */ stw r3, 4(r29) /* 8002CDE8 00028A48 38 60 00 01 */ li r3, 1 /* 8002CDEC 00028A4C B0 1D 00 00 */ sth r0, 0(r29) /* 8002CDF0 00028A50 48 00 10 04 */ b lbl_8002DDF4 /* 8002CDF4 00028A54 48 00 91 5D */ bl func_80035F50 /* 8002CDF8 00028A58 38 00 00 01 */ li r0, 1 /* 8002CDFC 00028A5C 90 7D 00 04 */ stw r3, 4(r29) /* 8002CE00 00028A60 38 60 00 01 */ li r3, 1 /* 8002CE04 00028A64 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CE08 00028A68 48 00 0F EC */ b lbl_8002DDF4 /* 8002CE0C 00028A6C A8 1C 00 08 */ lha r0, 8(r28) /* 8002CE10 00028A70 2C 00 00 01 */ cmpwi r0, 1 /* 8002CE14 00028A74 40 82 00 0C */ bne lbl_8002CE20 /* 8002CE18 00028A78 83 FC 00 0C */ lwz r31, 0xc(r28) /* 8002CE1C 00028A7C 48 00 00 2C */ b lbl_8002CE48 lbl_8002CE20: /* 8002CE20 00028A80 2C 00 00 02 */ cmpwi r0, 2 /* 8002CE24 00028A84 40 82 00 18 */ bne lbl_8002CE3C /* 8002CE28 00028A88 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002CE2C 00028A8C FC 00 00 1E */ fctiwz f0, f0 /* 8002CE30 00028A90 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CE34 00028A94 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CE38 00028A98 48 00 00 0C */ b lbl_8002CE44 lbl_8002CE3C: /* 8002CE3C 00028A9C 38 7C 00 08 */ addi r3, r28, 8 /* 8002CE40 00028AA0 48 20 0E F5 */ bl func_8022DD34 lbl_8002CE44: /* 8002CE44 00028AA4 7C 7F 1B 78 */ mr r31, r3 lbl_8002CE48: /* 8002CE48 00028AA8 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002CE4C 00028AAC 2C 00 00 01 */ cmpwi r0, 1 /* 8002CE50 00028AB0 40 82 00 0C */ bne lbl_8002CE5C /* 8002CE54 00028AB4 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002CE58 00028AB8 48 00 00 2C */ b lbl_8002CE84 lbl_8002CE5C: /* 8002CE5C 00028ABC 2C 00 00 02 */ cmpwi r0, 2 /* 8002CE60 00028AC0 40 82 00 18 */ bne lbl_8002CE78 /* 8002CE64 00028AC4 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002CE68 00028AC8 FC 00 00 1E */ fctiwz f0, f0 /* 8002CE6C 00028ACC D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CE70 00028AD0 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CE74 00028AD4 48 00 00 0C */ b lbl_8002CE80 lbl_8002CE78: /* 8002CE78 00028AD8 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002CE7C 00028ADC 48 20 0E B9 */ bl func_8022DD34 lbl_8002CE80: /* 8002CE80 00028AE0 7C 65 1B 78 */ mr r5, r3 lbl_8002CE84: /* 8002CE84 00028AE4 7F C3 F3 78 */ mr r3, r30 /* 8002CE88 00028AE8 7F E4 FB 78 */ mr r4, r31 /* 8002CE8C 00028AEC 38 C0 00 00 */ li r6, 0 /* 8002CE90 00028AF0 48 00 96 C5 */ bl func_80036554 /* 8002CE94 00028AF4 38 00 00 01 */ li r0, 1 /* 8002CE98 00028AF8 90 7D 00 04 */ stw r3, 4(r29) /* 8002CE9C 00028AFC 38 60 00 01 */ li r3, 1 /* 8002CEA0 00028B00 B0 1D 00 00 */ sth r0, 0(r29) /* 8002CEA4 00028B04 48 00 0F 50 */ b lbl_8002DDF4 /* 8002CEA8 00028B08 A8 1C 00 08 */ lha r0, 8(r28) /* 8002CEAC 00028B0C 2C 00 00 01 */ cmpwi r0, 1 /* 8002CEB0 00028B10 40 82 00 0C */ bne lbl_8002CEBC /* 8002CEB4 00028B14 83 FC 00 0C */ lwz r31, 0xc(r28) /* 8002CEB8 00028B18 48 00 00 2C */ b lbl_8002CEE4 lbl_8002CEBC: /* 8002CEBC 00028B1C 2C 00 00 02 */ cmpwi r0, 2 /* 8002CEC0 00028B20 40 82 00 18 */ bne lbl_8002CED8 /* 8002CEC4 00028B24 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002CEC8 00028B28 FC 00 00 1E */ fctiwz f0, f0 /* 8002CECC 00028B2C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CED0 00028B30 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CED4 00028B34 48 00 00 0C */ b lbl_8002CEE0 lbl_8002CED8: /* 8002CED8 00028B38 38 7C 00 08 */ addi r3, r28, 8 /* 8002CEDC 00028B3C 48 20 0E 59 */ bl func_8022DD34 lbl_8002CEE0: /* 8002CEE0 00028B40 7C 7F 1B 78 */ mr r31, r3 lbl_8002CEE4: /* 8002CEE4 00028B44 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002CEE8 00028B48 2C 00 00 01 */ cmpwi r0, 1 /* 8002CEEC 00028B4C 40 82 00 0C */ bne lbl_8002CEF8 /* 8002CEF0 00028B50 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002CEF4 00028B54 48 00 00 2C */ b lbl_8002CF20 lbl_8002CEF8: /* 8002CEF8 00028B58 2C 00 00 02 */ cmpwi r0, 2 /* 8002CEFC 00028B5C 40 82 00 18 */ bne lbl_8002CF14 /* 8002CF00 00028B60 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002CF04 00028B64 FC 00 00 1E */ fctiwz f0, f0 /* 8002CF08 00028B68 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CF0C 00028B6C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CF10 00028B70 48 00 00 0C */ b lbl_8002CF1C lbl_8002CF14: /* 8002CF14 00028B74 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002CF18 00028B78 48 20 0E 1D */ bl func_8022DD34 lbl_8002CF1C: /* 8002CF1C 00028B7C 7C 65 1B 78 */ mr r5, r3 lbl_8002CF20: /* 8002CF20 00028B80 7F C3 F3 78 */ mr r3, r30 /* 8002CF24 00028B84 7F E4 FB 78 */ mr r4, r31 /* 8002CF28 00028B88 38 C0 00 01 */ li r6, 1 /* 8002CF2C 00028B8C 48 00 96 29 */ bl func_80036554 /* 8002CF30 00028B90 38 00 00 01 */ li r0, 1 /* 8002CF34 00028B94 90 7D 00 04 */ stw r3, 4(r29) /* 8002CF38 00028B98 38 60 00 01 */ li r3, 1 /* 8002CF3C 00028B9C B0 1D 00 00 */ sth r0, 0(r29) /* 8002CF40 00028BA0 48 00 0E B4 */ b lbl_8002DDF4 /* 8002CF44 00028BA4 A8 1C 00 08 */ lha r0, 8(r28) /* 8002CF48 00028BA8 2C 00 00 01 */ cmpwi r0, 1 /* 8002CF4C 00028BAC 40 82 00 0C */ bne lbl_8002CF58 /* 8002CF50 00028BB0 83 FC 00 0C */ lwz r31, 0xc(r28) /* 8002CF54 00028BB4 48 00 00 2C */ b lbl_8002CF80 lbl_8002CF58: /* 8002CF58 00028BB8 2C 00 00 02 */ cmpwi r0, 2 /* 8002CF5C 00028BBC 40 82 00 18 */ bne lbl_8002CF74 /* 8002CF60 00028BC0 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002CF64 00028BC4 FC 00 00 1E */ fctiwz f0, f0 /* 8002CF68 00028BC8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CF6C 00028BCC 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CF70 00028BD0 48 00 00 0C */ b lbl_8002CF7C lbl_8002CF74: /* 8002CF74 00028BD4 38 7C 00 08 */ addi r3, r28, 8 /* 8002CF78 00028BD8 48 20 0D BD */ bl func_8022DD34 lbl_8002CF7C: /* 8002CF7C 00028BDC 7C 7F 1B 78 */ mr r31, r3 lbl_8002CF80: /* 8002CF80 00028BE0 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002CF84 00028BE4 2C 00 00 01 */ cmpwi r0, 1 /* 8002CF88 00028BE8 40 82 00 0C */ bne lbl_8002CF94 /* 8002CF8C 00028BEC 83 7C 00 14 */ lwz r27, 0x14(r28) /* 8002CF90 00028BF0 48 00 00 2C */ b lbl_8002CFBC lbl_8002CF94: /* 8002CF94 00028BF4 2C 00 00 02 */ cmpwi r0, 2 /* 8002CF98 00028BF8 40 82 00 18 */ bne lbl_8002CFB0 /* 8002CF9C 00028BFC C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002CFA0 00028C00 FC 00 00 1E */ fctiwz f0, f0 /* 8002CFA4 00028C04 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CFA8 00028C08 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CFAC 00028C0C 48 00 00 0C */ b lbl_8002CFB8 lbl_8002CFB0: /* 8002CFB0 00028C10 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002CFB4 00028C14 48 20 0D 81 */ bl func_8022DD34 lbl_8002CFB8: /* 8002CFB8 00028C18 7C 7B 1B 78 */ mr r27, r3 lbl_8002CFBC: /* 8002CFBC 00028C1C A8 1C 00 18 */ lha r0, 0x18(r28) /* 8002CFC0 00028C20 2C 00 00 01 */ cmpwi r0, 1 /* 8002CFC4 00028C24 40 82 00 0C */ bne lbl_8002CFD0 /* 8002CFC8 00028C28 80 DC 00 1C */ lwz r6, 0x1c(r28) /* 8002CFCC 00028C2C 48 00 00 2C */ b lbl_8002CFF8 lbl_8002CFD0: /* 8002CFD0 00028C30 2C 00 00 02 */ cmpwi r0, 2 /* 8002CFD4 00028C34 40 82 00 18 */ bne lbl_8002CFEC /* 8002CFD8 00028C38 C0 1C 00 1C */ lfs f0, 0x1c(r28) /* 8002CFDC 00028C3C FC 00 00 1E */ fctiwz f0, f0 /* 8002CFE0 00028C40 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002CFE4 00028C44 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002CFE8 00028C48 48 00 00 0C */ b lbl_8002CFF4 lbl_8002CFEC: /* 8002CFEC 00028C4C 38 7C 00 18 */ addi r3, r28, 0x18 /* 8002CFF0 00028C50 48 20 0D 45 */ bl func_8022DD34 lbl_8002CFF4: /* 8002CFF4 00028C54 7C 66 1B 78 */ mr r6, r3 lbl_8002CFF8: /* 8002CFF8 00028C58 7F C3 F3 78 */ mr r3, r30 /* 8002CFFC 00028C5C 7F E4 FB 78 */ mr r4, r31 /* 8002D000 00028C60 7F 65 DB 78 */ mr r5, r27 /* 8002D004 00028C64 48 00 98 41 */ bl func_80036844 /* 8002D008 00028C68 38 00 00 01 */ li r0, 1 /* 8002D00C 00028C6C 90 7D 00 04 */ stw r3, 4(r29) /* 8002D010 00028C70 38 60 00 01 */ li r3, 1 /* 8002D014 00028C74 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D018 00028C78 48 00 0D DC */ b lbl_8002DDF4 /* 8002D01C 00028C7C A8 1C 00 08 */ lha r0, 8(r28) /* 8002D020 00028C80 2C 00 00 01 */ cmpwi r0, 1 /* 8002D024 00028C84 40 82 00 0C */ bne lbl_8002D030 /* 8002D028 00028C88 80 7C 00 0C */ lwz r3, 0xc(r28) /* 8002D02C 00028C8C 48 00 00 28 */ b lbl_8002D054 lbl_8002D030: /* 8002D030 00028C90 2C 00 00 02 */ cmpwi r0, 2 /* 8002D034 00028C94 40 82 00 18 */ bne lbl_8002D04C /* 8002D038 00028C98 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D03C 00028C9C FC 00 00 1E */ fctiwz f0, f0 /* 8002D040 00028CA0 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D044 00028CA4 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D048 00028CA8 48 00 00 0C */ b lbl_8002D054 lbl_8002D04C: /* 8002D04C 00028CAC 38 7C 00 08 */ addi r3, r28, 8 /* 8002D050 00028CB0 48 20 0C E5 */ bl func_8022DD34 lbl_8002D054: /* 8002D054 00028CB4 38 81 00 14 */ addi r4, r1, 0x14 /* 8002D058 00028CB8 38 A1 00 08 */ addi r5, r1, 8 /* 8002D05C 00028CBC 48 00 97 F1 */ bl func_8003684C /* 8002D060 00028CC0 80 9A 09 14 */ lwz r4, 0x914(r26) /* 8002D064 00028CC4 38 00 00 04 */ li r0, 4 /* 8002D068 00028CC8 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8002D06C 00028CCC 38 60 00 01 */ li r3, 1 /* 8002D070 00028CD0 D0 04 01 38 */ stfs f0, 0x138(r4) /* 8002D074 00028CD4 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8002D078 00028CD8 D0 04 01 3C */ stfs f0, 0x13c(r4) /* 8002D07C 00028CDC C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8002D080 00028CE0 D0 04 01 40 */ stfs f0, 0x140(r4) /* 8002D084 00028CE4 80 BA 09 14 */ lwz r5, 0x914(r26) /* 8002D088 00028CE8 38 85 01 38 */ addi r4, r5, 0x138 /* 8002D08C 00028CEC 90 85 00 14 */ stw r4, 0x14(r5) /* 8002D090 00028CF0 80 9A 09 14 */ lwz r4, 0x914(r26) /* 8002D094 00028CF4 B0 04 00 10 */ sth r0, 0x10(r4) /* 8002D098 00028CF8 48 00 0D 5C */ b lbl_8002DDF4 /* 8002D09C 00028CFC C0 02 81 48 */ lfs f0, lbl_80640748-_SDA2_BASE_(r2) /* 8002D0A0 00028D00 38 00 00 02 */ li r0, 2 /* 8002D0A4 00028D04 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D0A8 00028D08 D0 1D 00 04 */ stfs f0, 4(r29) /* 8002D0AC 00028D0C A8 1C 00 08 */ lha r0, 8(r28) /* 8002D0B0 00028D10 2C 00 00 01 */ cmpwi r0, 1 /* 8002D0B4 00028D14 40 82 00 0C */ bne lbl_8002D0C0 /* 8002D0B8 00028D18 80 7C 00 0C */ lwz r3, 0xc(r28) /* 8002D0BC 00028D1C 48 00 00 28 */ b lbl_8002D0E4 lbl_8002D0C0: /* 8002D0C0 00028D20 2C 00 00 02 */ cmpwi r0, 2 /* 8002D0C4 00028D24 40 82 00 18 */ bne lbl_8002D0DC /* 8002D0C8 00028D28 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D0CC 00028D2C FC 00 00 1E */ fctiwz f0, f0 /* 8002D0D0 00028D30 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D0D4 00028D34 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D0D8 00028D38 48 00 00 0C */ b lbl_8002D0E4 lbl_8002D0DC: /* 8002D0DC 00028D3C 38 7C 00 08 */ addi r3, r28, 8 /* 8002D0E0 00028D40 48 20 0C 55 */ bl func_8022DD34 lbl_8002D0E4: /* 8002D0E4 00028D44 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8002D0E8 00028D48 41 82 00 14 */ beq lbl_8002D0FC /* 8002D0EC 00028D4C C0 02 81 4C */ lfs f0, lbl_8064074C-_SDA2_BASE_(r2) /* 8002D0F0 00028D50 38 00 00 02 */ li r0, 2 /* 8002D0F4 00028D54 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D0F8 00028D58 D0 1D 00 04 */ stfs f0, 4(r29) lbl_8002D0FC: /* 8002D0FC 00028D5C 38 60 00 01 */ li r3, 1 /* 8002D100 00028D60 48 00 0C F4 */ b lbl_8002DDF4 /* 8002D104 00028D64 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D108 00028D68 2C 00 00 01 */ cmpwi r0, 1 /* 8002D10C 00028D6C 40 82 00 0C */ bne lbl_8002D118 /* 8002D110 00028D70 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D114 00028D74 48 00 00 2C */ b lbl_8002D140 lbl_8002D118: /* 8002D118 00028D78 2C 00 00 02 */ cmpwi r0, 2 /* 8002D11C 00028D7C 40 82 00 18 */ bne lbl_8002D134 /* 8002D120 00028D80 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D124 00028D84 FC 00 00 1E */ fctiwz f0, f0 /* 8002D128 00028D88 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D12C 00028D8C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D130 00028D90 48 00 00 0C */ b lbl_8002D13C lbl_8002D134: /* 8002D134 00028D94 38 7C 00 08 */ addi r3, r28, 8 /* 8002D138 00028D98 48 20 0B FD */ bl func_8022DD34 lbl_8002D13C: /* 8002D13C 00028D9C 7C 64 1B 78 */ mr r4, r3 lbl_8002D140: /* 8002D140 00028DA0 7F C3 F3 78 */ mr r3, r30 /* 8002D144 00028DA4 48 00 98 49 */ bl func_8003698C /* 8002D148 00028DA8 38 00 00 01 */ li r0, 1 /* 8002D14C 00028DAC 90 7D 00 04 */ stw r3, 4(r29) /* 8002D150 00028DB0 38 60 00 01 */ li r3, 1 /* 8002D154 00028DB4 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D158 00028DB8 48 00 0C 9C */ b lbl_8002DDF4 /* 8002D15C 00028DBC A8 1C 00 08 */ lha r0, 8(r28) /* 8002D160 00028DC0 2C 00 00 01 */ cmpwi r0, 1 /* 8002D164 00028DC4 40 82 00 0C */ bne lbl_8002D170 /* 8002D168 00028DC8 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002D16C 00028DCC 48 00 00 2C */ b lbl_8002D198 lbl_8002D170: /* 8002D170 00028DD0 2C 00 00 02 */ cmpwi r0, 2 /* 8002D174 00028DD4 40 82 00 18 */ bne lbl_8002D18C /* 8002D178 00028DD8 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D17C 00028DDC FC 00 00 1E */ fctiwz f0, f0 /* 8002D180 00028DE0 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D184 00028DE4 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D188 00028DE8 48 00 00 0C */ b lbl_8002D194 lbl_8002D18C: /* 8002D18C 00028DEC 38 7C 00 08 */ addi r3, r28, 8 /* 8002D190 00028DF0 48 20 0B A5 */ bl func_8022DD34 lbl_8002D194: /* 8002D194 00028DF4 7C 7B 1B 78 */ mr r27, r3 lbl_8002D198: /* 8002D198 00028DF8 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002D19C 00028DFC 2C 00 00 01 */ cmpwi r0, 1 /* 8002D1A0 00028E00 40 82 00 0C */ bne lbl_8002D1AC /* 8002D1A4 00028E04 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002D1A8 00028E08 48 00 00 2C */ b lbl_8002D1D4 lbl_8002D1AC: /* 8002D1AC 00028E0C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D1B0 00028E10 40 82 00 18 */ bne lbl_8002D1C8 /* 8002D1B4 00028E14 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002D1B8 00028E18 FC 00 00 1E */ fctiwz f0, f0 /* 8002D1BC 00028E1C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D1C0 00028E20 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D1C4 00028E24 48 00 00 0C */ b lbl_8002D1D0 lbl_8002D1C8: /* 8002D1C8 00028E28 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002D1CC 00028E2C 48 20 0B 69 */ bl func_8022DD34 lbl_8002D1D0: /* 8002D1D0 00028E30 7C 65 1B 78 */ mr r5, r3 lbl_8002D1D4: /* 8002D1D4 00028E34 7F C3 F3 78 */ mr r3, r30 /* 8002D1D8 00028E38 7F 64 DB 78 */ mr r4, r27 /* 8002D1DC 00028E3C 48 00 97 E9 */ bl func_800369C4 /* 8002D1E0 00028E40 38 60 00 01 */ li r3, 1 /* 8002D1E4 00028E44 48 00 0C 10 */ b lbl_8002DDF4 /* 8002D1E8 00028E48 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D1EC 00028E4C 2C 00 00 01 */ cmpwi r0, 1 /* 8002D1F0 00028E50 40 82 00 0C */ bne lbl_8002D1FC /* 8002D1F4 00028E54 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D1F8 00028E58 48 00 00 2C */ b lbl_8002D224 lbl_8002D1FC: /* 8002D1FC 00028E5C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D200 00028E60 40 82 00 18 */ bne lbl_8002D218 /* 8002D204 00028E64 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D208 00028E68 FC 00 00 1E */ fctiwz f0, f0 /* 8002D20C 00028E6C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D210 00028E70 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D214 00028E74 48 00 00 0C */ b lbl_8002D220 lbl_8002D218: /* 8002D218 00028E78 38 7C 00 08 */ addi r3, r28, 8 /* 8002D21C 00028E7C 48 20 0B 19 */ bl func_8022DD34 lbl_8002D220: /* 8002D220 00028E80 7C 64 1B 78 */ mr r4, r3 lbl_8002D224: /* 8002D224 00028E84 7F C3 F3 78 */ mr r3, r30 /* 8002D228 00028E88 48 00 8C 19 */ bl func_80035E40 /* 8002D22C 00028E8C 38 60 00 01 */ li r3, 1 /* 8002D230 00028E90 48 00 0B C4 */ b lbl_8002DDF4 /* 8002D234 00028E94 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D238 00028E98 2C 00 00 01 */ cmpwi r0, 1 /* 8002D23C 00028E9C 40 82 00 0C */ bne lbl_8002D248 /* 8002D240 00028EA0 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D244 00028EA4 48 00 00 2C */ b lbl_8002D270 lbl_8002D248: /* 8002D248 00028EA8 2C 00 00 02 */ cmpwi r0, 2 /* 8002D24C 00028EAC 40 82 00 18 */ bne lbl_8002D264 /* 8002D250 00028EB0 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D254 00028EB4 FC 00 00 1E */ fctiwz f0, f0 /* 8002D258 00028EB8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D25C 00028EBC 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D260 00028EC0 48 00 00 0C */ b lbl_8002D26C lbl_8002D264: /* 8002D264 00028EC4 38 7C 00 08 */ addi r3, r28, 8 /* 8002D268 00028EC8 48 20 0A CD */ bl func_8022DD34 lbl_8002D26C: /* 8002D26C 00028ECC 7C 64 1B 78 */ mr r4, r3 lbl_8002D270: /* 8002D270 00028ED0 7F C3 F3 78 */ mr r3, r30 /* 8002D274 00028ED4 48 00 8B DD */ bl func_80035E50 /* 8002D278 00028ED8 38 60 00 01 */ li r3, 1 /* 8002D27C 00028EDC 48 00 0B 78 */ b lbl_8002DDF4 /* 8002D280 00028EE0 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D284 00028EE4 2C 00 00 01 */ cmpwi r0, 1 /* 8002D288 00028EE8 40 82 00 0C */ bne lbl_8002D294 /* 8002D28C 00028EEC 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D290 00028EF0 48 00 00 2C */ b lbl_8002D2BC lbl_8002D294: /* 8002D294 00028EF4 2C 00 00 02 */ cmpwi r0, 2 /* 8002D298 00028EF8 40 82 00 18 */ bne lbl_8002D2B0 /* 8002D29C 00028EFC C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D2A0 00028F00 FC 00 00 1E */ fctiwz f0, f0 /* 8002D2A4 00028F04 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D2A8 00028F08 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D2AC 00028F0C 48 00 00 0C */ b lbl_8002D2B8 lbl_8002D2B0: /* 8002D2B0 00028F10 38 7C 00 08 */ addi r3, r28, 8 /* 8002D2B4 00028F14 48 20 0A 81 */ bl func_8022DD34 lbl_8002D2B8: /* 8002D2B8 00028F18 7C 64 1B 78 */ mr r4, r3 lbl_8002D2BC: /* 8002D2BC 00028F1C 7F C3 F3 78 */ mr r3, r30 /* 8002D2C0 00028F20 48 00 8B A1 */ bl func_80035E60 /* 8002D2C4 00028F24 38 60 00 01 */ li r3, 1 /* 8002D2C8 00028F28 48 00 0B 2C */ b lbl_8002DDF4 /* 8002D2CC 00028F2C A8 1C 00 08 */ lha r0, 8(r28) /* 8002D2D0 00028F30 2C 00 00 01 */ cmpwi r0, 1 /* 8002D2D4 00028F34 40 82 00 0C */ bne lbl_8002D2E0 /* 8002D2D8 00028F38 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D2DC 00028F3C 48 00 00 2C */ b lbl_8002D308 lbl_8002D2E0: /* 8002D2E0 00028F40 2C 00 00 02 */ cmpwi r0, 2 /* 8002D2E4 00028F44 40 82 00 18 */ bne lbl_8002D2FC /* 8002D2E8 00028F48 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D2EC 00028F4C FC 00 00 1E */ fctiwz f0, f0 /* 8002D2F0 00028F50 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D2F4 00028F54 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D2F8 00028F58 48 00 00 0C */ b lbl_8002D304 lbl_8002D2FC: /* 8002D2FC 00028F5C 38 7C 00 08 */ addi r3, r28, 8 /* 8002D300 00028F60 48 20 0A 35 */ bl func_8022DD34 lbl_8002D304: /* 8002D304 00028F64 7C 64 1B 78 */ mr r4, r3 lbl_8002D308: /* 8002D308 00028F68 7F C3 F3 78 */ mr r3, r30 /* 8002D30C 00028F6C 48 00 8B 65 */ bl func_80035E70 /* 8002D310 00028F70 38 60 00 01 */ li r3, 1 /* 8002D314 00028F74 48 00 0A E0 */ b lbl_8002DDF4 /* 8002D318 00028F78 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D31C 00028F7C 2C 00 00 01 */ cmpwi r0, 1 /* 8002D320 00028F80 40 82 00 0C */ bne lbl_8002D32C /* 8002D324 00028F84 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D328 00028F88 48 00 00 2C */ b lbl_8002D354 lbl_8002D32C: /* 8002D32C 00028F8C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D330 00028F90 40 82 00 18 */ bne lbl_8002D348 /* 8002D334 00028F94 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D338 00028F98 FC 00 00 1E */ fctiwz f0, f0 /* 8002D33C 00028F9C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D340 00028FA0 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D344 00028FA4 48 00 00 0C */ b lbl_8002D350 lbl_8002D348: /* 8002D348 00028FA8 38 7C 00 08 */ addi r3, r28, 8 /* 8002D34C 00028FAC 48 20 09 E9 */ bl func_8022DD34 lbl_8002D350: /* 8002D350 00028FB0 7C 64 1B 78 */ mr r4, r3 lbl_8002D354: /* 8002D354 00028FB4 7F C3 F3 78 */ mr r3, r30 /* 8002D358 00028FB8 48 00 8B 29 */ bl func_80035E80 /* 8002D35C 00028FBC 38 60 00 01 */ li r3, 1 /* 8002D360 00028FC0 48 00 0A 94 */ b lbl_8002DDF4 /* 8002D364 00028FC4 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D368 00028FC8 2C 00 00 01 */ cmpwi r0, 1 /* 8002D36C 00028FCC 40 82 00 0C */ bne lbl_8002D378 /* 8002D370 00028FD0 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D374 00028FD4 48 00 00 2C */ b lbl_8002D3A0 lbl_8002D378: /* 8002D378 00028FD8 2C 00 00 02 */ cmpwi r0, 2 /* 8002D37C 00028FDC 40 82 00 18 */ bne lbl_8002D394 /* 8002D380 00028FE0 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D384 00028FE4 FC 00 00 1E */ fctiwz f0, f0 /* 8002D388 00028FE8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D38C 00028FEC 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D390 00028FF0 48 00 00 0C */ b lbl_8002D39C lbl_8002D394: /* 8002D394 00028FF4 38 7C 00 08 */ addi r3, r28, 8 /* 8002D398 00028FF8 48 20 09 9D */ bl func_8022DD34 lbl_8002D39C: /* 8002D39C 00028FFC 7C 64 1B 78 */ mr r4, r3 lbl_8002D3A0: /* 8002D3A0 00029000 7F C3 F3 78 */ mr r3, r30 /* 8002D3A4 00029004 48 00 8A ED */ bl func_80035E90 /* 8002D3A8 00029008 38 60 00 01 */ li r3, 1 /* 8002D3AC 0002900C 48 00 0A 48 */ b lbl_8002DDF4 /* 8002D3B0 00029010 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8002D3B4 00029014 48 1F 94 89 */ bl func_8022683C /* 8002D3B8 00029018 38 00 00 01 */ li r0, 1 /* 8002D3BC 0002901C 90 7D 00 04 */ stw r3, 4(r29) /* 8002D3C0 00029020 38 60 00 01 */ li r3, 1 /* 8002D3C4 00029024 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D3C8 00029028 48 00 0A 2C */ b lbl_8002DDF4 /* 8002D3CC 0002902C A8 1C 00 08 */ lha r0, 8(r28) /* 8002D3D0 00029030 2C 00 00 01 */ cmpwi r0, 1 /* 8002D3D4 00029034 40 82 00 0C */ bne lbl_8002D3E0 /* 8002D3D8 00029038 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D3DC 0002903C 48 00 00 2C */ b lbl_8002D408 lbl_8002D3E0: /* 8002D3E0 00029040 2C 00 00 02 */ cmpwi r0, 2 /* 8002D3E4 00029044 40 82 00 18 */ bne lbl_8002D3FC /* 8002D3E8 00029048 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D3EC 0002904C FC 00 00 1E */ fctiwz f0, f0 /* 8002D3F0 00029050 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D3F4 00029054 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D3F8 00029058 48 00 00 0C */ b lbl_8002D404 lbl_8002D3FC: /* 8002D3FC 0002905C 38 7C 00 08 */ addi r3, r28, 8 /* 8002D400 00029060 48 20 09 35 */ bl func_8022DD34 lbl_8002D404: /* 8002D404 00029064 7C 64 1B 78 */ mr r4, r3 lbl_8002D408: /* 8002D408 00029068 7F C3 F3 78 */ mr r3, r30 /* 8002D40C 0002906C 48 00 8A D9 */ bl func_80035EE4 /* 8002D410 00029070 38 60 00 01 */ li r3, 1 /* 8002D414 00029074 48 00 09 E0 */ b lbl_8002DDF4 /* 8002D418 00029078 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D41C 0002907C 2C 00 00 01 */ cmpwi r0, 1 /* 8002D420 00029080 40 82 00 0C */ bne lbl_8002D42C /* 8002D424 00029084 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D428 00029088 48 00 00 2C */ b lbl_8002D454 lbl_8002D42C: /* 8002D42C 0002908C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D430 00029090 40 82 00 18 */ bne lbl_8002D448 /* 8002D434 00029094 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D438 00029098 FC 00 00 1E */ fctiwz f0, f0 /* 8002D43C 0002909C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D440 000290A0 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D444 000290A4 48 00 00 0C */ b lbl_8002D450 lbl_8002D448: /* 8002D448 000290A8 38 7C 00 08 */ addi r3, r28, 8 /* 8002D44C 000290AC 48 20 08 E9 */ bl func_8022DD34 lbl_8002D450: /* 8002D450 000290B0 7C 64 1B 78 */ mr r4, r3 lbl_8002D454: /* 8002D454 000290B4 7F C3 F3 78 */ mr r3, r30 /* 8002D458 000290B8 48 00 8A 5D */ bl func_80035EB4 /* 8002D45C 000290BC 38 60 00 01 */ li r3, 1 /* 8002D460 000290C0 48 00 09 94 */ b lbl_8002DDF4 /* 8002D464 000290C4 48 00 8A 5D */ bl func_80035EC0 /* 8002D468 000290C8 38 00 00 01 */ li r0, 1 /* 8002D46C 000290CC 90 7D 00 04 */ stw r3, 4(r29) /* 8002D470 000290D0 38 60 00 01 */ li r3, 1 /* 8002D474 000290D4 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D478 000290D8 48 00 09 7C */ b lbl_8002DDF4 /* 8002D47C 000290DC A8 1C 00 08 */ lha r0, 8(r28) /* 8002D480 000290E0 2C 00 00 01 */ cmpwi r0, 1 /* 8002D484 000290E4 40 82 00 0C */ bne lbl_8002D490 /* 8002D488 000290E8 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D48C 000290EC 48 00 00 2C */ b lbl_8002D4B8 lbl_8002D490: /* 8002D490 000290F0 2C 00 00 02 */ cmpwi r0, 2 /* 8002D494 000290F4 40 82 00 18 */ bne lbl_8002D4AC /* 8002D498 000290F8 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D49C 000290FC FC 00 00 1E */ fctiwz f0, f0 /* 8002D4A0 00029100 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D4A4 00029104 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D4A8 00029108 48 00 00 0C */ b lbl_8002D4B4 lbl_8002D4AC: /* 8002D4AC 0002910C 38 7C 00 08 */ addi r3, r28, 8 /* 8002D4B0 00029110 48 20 08 85 */ bl func_8022DD34 lbl_8002D4B4: /* 8002D4B4 00029114 7C 64 1B 78 */ mr r4, r3 lbl_8002D4B8: /* 8002D4B8 00029118 7F C3 F3 78 */ mr r3, r30 /* 8002D4BC 0002911C 48 00 8A 11 */ bl func_80035ECC /* 8002D4C0 00029120 38 60 00 01 */ li r3, 1 /* 8002D4C4 00029124 48 00 09 30 */ b lbl_8002DDF4 /* 8002D4C8 00029128 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D4CC 0002912C 2C 00 00 01 */ cmpwi r0, 1 /* 8002D4D0 00029130 40 82 00 0C */ bne lbl_8002D4DC /* 8002D4D4 00029134 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D4D8 00029138 48 00 00 2C */ b lbl_8002D504 lbl_8002D4DC: /* 8002D4DC 0002913C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D4E0 00029140 40 82 00 18 */ bne lbl_8002D4F8 /* 8002D4E4 00029144 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D4E8 00029148 FC 00 00 1E */ fctiwz f0, f0 /* 8002D4EC 0002914C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D4F0 00029150 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D4F4 00029154 48 00 00 0C */ b lbl_8002D500 lbl_8002D4F8: /* 8002D4F8 00029158 38 7C 00 08 */ addi r3, r28, 8 /* 8002D4FC 0002915C 48 20 08 39 */ bl func_8022DD34 lbl_8002D500: /* 8002D500 00029160 7C 64 1B 78 */ mr r4, r3 lbl_8002D504: /* 8002D504 00029164 7F C3 F3 78 */ mr r3, r30 /* 8002D508 00029168 48 00 8A 19 */ bl func_80035F20 /* 8002D50C 0002916C 38 60 00 01 */ li r3, 1 /* 8002D510 00029170 48 00 08 E4 */ b lbl_8002DDF4 /* 8002D514 00029174 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D518 00029178 2C 00 00 01 */ cmpwi r0, 1 /* 8002D51C 0002917C 40 82 00 0C */ bne lbl_8002D528 /* 8002D520 00029180 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D524 00029184 48 00 00 2C */ b lbl_8002D550 lbl_8002D528: /* 8002D528 00029188 2C 00 00 02 */ cmpwi r0, 2 /* 8002D52C 0002918C 40 82 00 18 */ bne lbl_8002D544 /* 8002D530 00029190 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D534 00029194 FC 00 00 1E */ fctiwz f0, f0 /* 8002D538 00029198 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D53C 0002919C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D540 000291A0 48 00 00 0C */ b lbl_8002D54C lbl_8002D544: /* 8002D544 000291A4 38 7C 00 08 */ addi r3, r28, 8 /* 8002D548 000291A8 48 20 07 ED */ bl func_8022DD34 lbl_8002D54C: /* 8002D54C 000291AC 7C 64 1B 78 */ mr r4, r3 lbl_8002D550: /* 8002D550 000291B0 7F C3 F3 78 */ mr r3, r30 /* 8002D554 000291B4 48 00 89 E5 */ bl func_80035F38 /* 8002D558 000291B8 38 60 00 01 */ li r3, 1 /* 8002D55C 000291BC 48 00 08 98 */ b lbl_8002DDF4 /* 8002D560 000291C0 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D564 000291C4 2C 00 00 01 */ cmpwi r0, 1 /* 8002D568 000291C8 40 82 00 0C */ bne lbl_8002D574 /* 8002D56C 000291CC 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D570 000291D0 48 00 00 2C */ b lbl_8002D59C lbl_8002D574: /* 8002D574 000291D4 2C 00 00 02 */ cmpwi r0, 2 /* 8002D578 000291D8 40 82 00 18 */ bne lbl_8002D590 /* 8002D57C 000291DC C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D580 000291E0 FC 00 00 1E */ fctiwz f0, f0 /* 8002D584 000291E4 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D588 000291E8 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D58C 000291EC 48 00 00 0C */ b lbl_8002D598 lbl_8002D590: /* 8002D590 000291F0 38 7C 00 08 */ addi r3, r28, 8 /* 8002D594 000291F4 48 20 07 A1 */ bl func_8022DD34 lbl_8002D598: /* 8002D598 000291F8 7C 64 1B 78 */ mr r4, r3 lbl_8002D59C: /* 8002D59C 000291FC 7F C3 F3 78 */ mr r3, r30 /* 8002D5A0 00029200 48 00 89 69 */ bl func_80035F08 /* 8002D5A4 00029204 38 60 00 01 */ li r3, 1 /* 8002D5A8 00029208 48 00 08 4C */ b lbl_8002DDF4 /* 8002D5AC 0002920C A8 1C 00 08 */ lha r0, 8(r28) /* 8002D5B0 00029210 2C 00 00 01 */ cmpwi r0, 1 /* 8002D5B4 00029214 40 82 00 0C */ bne lbl_8002D5C0 /* 8002D5B8 00029218 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002D5BC 0002921C 48 00 00 2C */ b lbl_8002D5E8 lbl_8002D5C0: /* 8002D5C0 00029220 2C 00 00 02 */ cmpwi r0, 2 /* 8002D5C4 00029224 40 82 00 18 */ bne lbl_8002D5DC /* 8002D5C8 00029228 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D5CC 0002922C FC 00 00 1E */ fctiwz f0, f0 /* 8002D5D0 00029230 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D5D4 00029234 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D5D8 00029238 48 00 00 0C */ b lbl_8002D5E4 lbl_8002D5DC: /* 8002D5DC 0002923C 38 7C 00 08 */ addi r3, r28, 8 /* 8002D5E0 00029240 48 20 07 55 */ bl func_8022DD34 lbl_8002D5E4: /* 8002D5E4 00029244 7C 7B 1B 78 */ mr r27, r3 lbl_8002D5E8: /* 8002D5E8 00029248 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002D5EC 0002924C 2C 00 00 01 */ cmpwi r0, 1 /* 8002D5F0 00029250 40 82 00 0C */ bne lbl_8002D5FC /* 8002D5F4 00029254 83 BC 00 14 */ lwz r29, 0x14(r28) /* 8002D5F8 00029258 48 00 00 2C */ b lbl_8002D624 lbl_8002D5FC: /* 8002D5FC 0002925C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D600 00029260 40 82 00 18 */ bne lbl_8002D618 /* 8002D604 00029264 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002D608 00029268 FC 00 00 1E */ fctiwz f0, f0 /* 8002D60C 0002926C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D610 00029270 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D614 00029274 48 00 00 0C */ b lbl_8002D620 lbl_8002D618: /* 8002D618 00029278 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002D61C 0002927C 48 20 07 19 */ bl func_8022DD34 lbl_8002D620: /* 8002D620 00029280 7C 7D 1B 78 */ mr r29, r3 lbl_8002D624: /* 8002D624 00029284 A8 1C 00 18 */ lha r0, 0x18(r28) /* 8002D628 00029288 2C 00 00 01 */ cmpwi r0, 1 /* 8002D62C 0002928C 40 82 00 0C */ bne lbl_8002D638 /* 8002D630 00029290 80 DC 00 1C */ lwz r6, 0x1c(r28) /* 8002D634 00029294 48 00 00 2C */ b lbl_8002D660 lbl_8002D638: /* 8002D638 00029298 2C 00 00 02 */ cmpwi r0, 2 /* 8002D63C 0002929C 40 82 00 18 */ bne lbl_8002D654 /* 8002D640 000292A0 C0 1C 00 1C */ lfs f0, 0x1c(r28) /* 8002D644 000292A4 FC 00 00 1E */ fctiwz f0, f0 /* 8002D648 000292A8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D64C 000292AC 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D650 000292B0 48 00 00 0C */ b lbl_8002D65C lbl_8002D654: /* 8002D654 000292B4 38 7C 00 18 */ addi r3, r28, 0x18 /* 8002D658 000292B8 48 20 06 DD */ bl func_8022DD34 lbl_8002D65C: /* 8002D65C 000292BC 7C 66 1B 78 */ mr r6, r3 lbl_8002D660: /* 8002D660 000292C0 7F C3 F3 78 */ mr r3, r30 /* 8002D664 000292C4 7F 64 DB 78 */ mr r4, r27 /* 8002D668 000292C8 7F A5 EB 78 */ mr r5, r29 /* 8002D66C 000292CC 48 00 8C 9D */ bl func_80036308 /* 8002D670 000292D0 38 60 00 01 */ li r3, 1 /* 8002D674 000292D4 48 00 07 80 */ b lbl_8002DDF4 /* 8002D678 000292D8 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D67C 000292DC 2C 00 00 01 */ cmpwi r0, 1 /* 8002D680 000292E0 40 82 00 0C */ bne lbl_8002D68C /* 8002D684 000292E4 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002D688 000292E8 48 00 00 2C */ b lbl_8002D6B4 lbl_8002D68C: /* 8002D68C 000292EC 2C 00 00 02 */ cmpwi r0, 2 /* 8002D690 000292F0 40 82 00 18 */ bne lbl_8002D6A8 /* 8002D694 000292F4 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D698 000292F8 FC 00 00 1E */ fctiwz f0, f0 /* 8002D69C 000292FC D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D6A0 00029300 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D6A4 00029304 48 00 00 0C */ b lbl_8002D6B0 lbl_8002D6A8: /* 8002D6A8 00029308 38 7C 00 08 */ addi r3, r28, 8 /* 8002D6AC 0002930C 48 20 06 89 */ bl func_8022DD34 lbl_8002D6B0: /* 8002D6B0 00029310 7C 7B 1B 78 */ mr r27, r3 lbl_8002D6B4: /* 8002D6B4 00029314 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002D6B8 00029318 2C 00 00 01 */ cmpwi r0, 1 /* 8002D6BC 0002931C 40 82 00 0C */ bne lbl_8002D6C8 /* 8002D6C0 00029320 83 BC 00 14 */ lwz r29, 0x14(r28) /* 8002D6C4 00029324 48 00 00 2C */ b lbl_8002D6F0 lbl_8002D6C8: /* 8002D6C8 00029328 2C 00 00 02 */ cmpwi r0, 2 /* 8002D6CC 0002932C 40 82 00 18 */ bne lbl_8002D6E4 /* 8002D6D0 00029330 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002D6D4 00029334 FC 00 00 1E */ fctiwz f0, f0 /* 8002D6D8 00029338 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D6DC 0002933C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D6E0 00029340 48 00 00 0C */ b lbl_8002D6EC lbl_8002D6E4: /* 8002D6E4 00029344 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002D6E8 00029348 48 20 06 4D */ bl func_8022DD34 lbl_8002D6EC: /* 8002D6EC 0002934C 7C 7D 1B 78 */ mr r29, r3 lbl_8002D6F0: /* 8002D6F0 00029350 A8 1C 00 18 */ lha r0, 0x18(r28) /* 8002D6F4 00029354 2C 00 00 01 */ cmpwi r0, 1 /* 8002D6F8 00029358 40 82 00 0C */ bne lbl_8002D704 /* 8002D6FC 0002935C 80 DC 00 1C */ lwz r6, 0x1c(r28) /* 8002D700 00029360 48 00 00 2C */ b lbl_8002D72C lbl_8002D704: /* 8002D704 00029364 2C 00 00 02 */ cmpwi r0, 2 /* 8002D708 00029368 40 82 00 18 */ bne lbl_8002D720 /* 8002D70C 0002936C C0 1C 00 1C */ lfs f0, 0x1c(r28) /* 8002D710 00029370 FC 00 00 1E */ fctiwz f0, f0 /* 8002D714 00029374 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D718 00029378 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D71C 0002937C 48 00 00 0C */ b lbl_8002D728 lbl_8002D720: /* 8002D720 00029380 38 7C 00 18 */ addi r3, r28, 0x18 /* 8002D724 00029384 48 20 06 11 */ bl func_8022DD34 lbl_8002D728: /* 8002D728 00029388 7C 66 1B 78 */ mr r6, r3 lbl_8002D72C: /* 8002D72C 0002938C 7F C3 F3 78 */ mr r3, r30 /* 8002D730 00029390 7F 64 DB 78 */ mr r4, r27 /* 8002D734 00029394 7F A5 EB 78 */ mr r5, r29 /* 8002D738 00029398 48 00 8D 85 */ bl func_800364BC /* 8002D73C 0002939C 38 60 00 01 */ li r3, 1 /* 8002D740 000293A0 48 00 06 B4 */ b lbl_8002DDF4 /* 8002D744 000293A4 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D748 000293A8 2C 00 00 01 */ cmpwi r0, 1 /* 8002D74C 000293AC 40 82 00 0C */ bne lbl_8002D758 /* 8002D750 000293B0 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002D754 000293B4 48 00 00 2C */ b lbl_8002D780 lbl_8002D758: /* 8002D758 000293B8 2C 00 00 02 */ cmpwi r0, 2 /* 8002D75C 000293BC 40 82 00 18 */ bne lbl_8002D774 /* 8002D760 000293C0 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D764 000293C4 FC 00 00 1E */ fctiwz f0, f0 /* 8002D768 000293C8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D76C 000293CC 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D770 000293D0 48 00 00 0C */ b lbl_8002D77C lbl_8002D774: /* 8002D774 000293D4 38 7C 00 08 */ addi r3, r28, 8 /* 8002D778 000293D8 48 20 05 BD */ bl func_8022DD34 lbl_8002D77C: /* 8002D77C 000293DC 7C 7B 1B 78 */ mr r27, r3 lbl_8002D780: /* 8002D780 000293E0 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002D784 000293E4 2C 00 00 01 */ cmpwi r0, 1 /* 8002D788 000293E8 40 82 00 0C */ bne lbl_8002D794 /* 8002D78C 000293EC 83 BC 00 14 */ lwz r29, 0x14(r28) /* 8002D790 000293F0 48 00 00 2C */ b lbl_8002D7BC lbl_8002D794: /* 8002D794 000293F4 2C 00 00 02 */ cmpwi r0, 2 /* 8002D798 000293F8 40 82 00 18 */ bne lbl_8002D7B0 /* 8002D79C 000293FC C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002D7A0 00029400 FC 00 00 1E */ fctiwz f0, f0 /* 8002D7A4 00029404 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D7A8 00029408 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D7AC 0002940C 48 00 00 0C */ b lbl_8002D7B8 lbl_8002D7B0: /* 8002D7B0 00029410 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002D7B4 00029414 48 20 05 81 */ bl func_8022DD34 lbl_8002D7B8: /* 8002D7B8 00029418 7C 7D 1B 78 */ mr r29, r3 lbl_8002D7BC: /* 8002D7BC 0002941C A8 1C 00 18 */ lha r0, 0x18(r28) /* 8002D7C0 00029420 2C 00 00 01 */ cmpwi r0, 1 /* 8002D7C4 00029424 40 82 00 0C */ bne lbl_8002D7D0 /* 8002D7C8 00029428 80 DC 00 1C */ lwz r6, 0x1c(r28) /* 8002D7CC 0002942C 48 00 00 2C */ b lbl_8002D7F8 lbl_8002D7D0: /* 8002D7D0 00029430 2C 00 00 02 */ cmpwi r0, 2 /* 8002D7D4 00029434 40 82 00 18 */ bne lbl_8002D7EC /* 8002D7D8 00029438 C0 1C 00 1C */ lfs f0, 0x1c(r28) /* 8002D7DC 0002943C FC 00 00 1E */ fctiwz f0, f0 /* 8002D7E0 00029440 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D7E4 00029444 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D7E8 00029448 48 00 00 0C */ b lbl_8002D7F4 lbl_8002D7EC: /* 8002D7EC 0002944C 38 7C 00 18 */ addi r3, r28, 0x18 /* 8002D7F0 00029450 48 20 05 45 */ bl func_8022DD34 lbl_8002D7F4: /* 8002D7F4 00029454 7C 66 1B 78 */ mr r6, r3 lbl_8002D7F8: /* 8002D7F8 00029458 7F C3 F3 78 */ mr r3, r30 /* 8002D7FC 0002945C 7F 64 DB 78 */ mr r4, r27 /* 8002D800 00029460 7F A5 EB 78 */ mr r5, r29 /* 8002D804 00029464 48 00 91 F1 */ bl func_800369F4 /* 8002D808 00029468 38 60 00 01 */ li r3, 1 /* 8002D80C 0002946C 48 00 05 E8 */ b lbl_8002DDF4 /* 8002D810 00029470 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D814 00029474 2C 00 00 01 */ cmpwi r0, 1 /* 8002D818 00029478 40 82 00 0C */ bne lbl_8002D824 /* 8002D81C 0002947C 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D820 00029480 48 00 00 2C */ b lbl_8002D84C lbl_8002D824: /* 8002D824 00029484 2C 00 00 02 */ cmpwi r0, 2 /* 8002D828 00029488 40 82 00 18 */ bne lbl_8002D840 /* 8002D82C 0002948C C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D830 00029490 FC 00 00 1E */ fctiwz f0, f0 /* 8002D834 00029494 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D838 00029498 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D83C 0002949C 48 00 00 0C */ b lbl_8002D848 lbl_8002D840: /* 8002D840 000294A0 38 7C 00 08 */ addi r3, r28, 8 /* 8002D844 000294A4 48 20 04 F1 */ bl func_8022DD34 lbl_8002D848: /* 8002D848 000294A8 7C 64 1B 78 */ mr r4, r3 lbl_8002D84C: /* 8002D84C 000294AC 7F C3 F3 78 */ mr r3, r30 /* 8002D850 000294B0 48 00 87 0D */ bl func_80035F5C /* 8002D854 000294B4 38 60 00 01 */ li r3, 1 /* 8002D858 000294B8 48 00 05 9C */ b lbl_8002DDF4 /* 8002D85C 000294BC A8 1C 00 08 */ lha r0, 8(r28) /* 8002D860 000294C0 2C 00 00 01 */ cmpwi r0, 1 /* 8002D864 000294C4 40 82 00 0C */ bne lbl_8002D870 /* 8002D868 000294C8 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D86C 000294CC 48 00 00 2C */ b lbl_8002D898 lbl_8002D870: /* 8002D870 000294D0 2C 00 00 02 */ cmpwi r0, 2 /* 8002D874 000294D4 40 82 00 18 */ bne lbl_8002D88C /* 8002D878 000294D8 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D87C 000294DC FC 00 00 1E */ fctiwz f0, f0 /* 8002D880 000294E0 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D884 000294E4 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D888 000294E8 48 00 00 0C */ b lbl_8002D894 lbl_8002D88C: /* 8002D88C 000294EC 38 7C 00 08 */ addi r3, r28, 8 /* 8002D890 000294F0 48 20 04 A5 */ bl func_8022DD34 lbl_8002D894: /* 8002D894 000294F4 7C 64 1B 78 */ mr r4, r3 lbl_8002D898: /* 8002D898 000294F8 7F C3 F3 78 */ mr r3, r30 /* 8002D89C 000294FC 48 00 86 D9 */ bl func_80035F74 /* 8002D8A0 00029500 38 60 00 01 */ li r3, 1 /* 8002D8A4 00029504 48 00 05 50 */ b lbl_8002DDF4 /* 8002D8A8 00029508 2C 1F 00 00 */ cmpwi r31, 0 /* 8002D8AC 0002950C 41 82 00 90 */ beq lbl_8002D93C /* 8002D8B0 00029510 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002D8B4 00029514 3B 60 00 00 */ li r27, 0 /* 8002D8B8 00029518 3B A0 00 00 */ li r29, 0 /* 8002D8BC 0002951C 3B C0 00 00 */ li r30, 0 /* 8002D8C0 00029520 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002D8C4 00029524 40 82 00 08 */ bne lbl_8002D8CC /* 8002D8C8 00029528 83 7C 00 14 */ lwz r27, 0x14(r28) lbl_8002D8CC: /* 8002D8CC 0002952C A8 1C 00 18 */ lha r0, 0x18(r28) /* 8002D8D0 00029530 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002D8D4 00029534 40 82 00 08 */ bne lbl_8002D8DC /* 8002D8D8 00029538 83 BC 00 1C */ lwz r29, 0x1c(r28) lbl_8002D8DC: /* 8002D8DC 0002953C A8 1C 00 20 */ lha r0, 0x20(r28) /* 8002D8E0 00029540 2C 00 00 21 */ cmpwi r0, 0x21 /* 8002D8E4 00029544 40 82 00 08 */ bne lbl_8002D8EC /* 8002D8E8 00029548 83 DC 00 24 */ lwz r30, 0x24(r28) lbl_8002D8EC: /* 8002D8EC 0002954C A8 1C 00 08 */ lha r0, 8(r28) /* 8002D8F0 00029550 2C 00 00 01 */ cmpwi r0, 1 /* 8002D8F4 00029554 40 82 00 0C */ bne lbl_8002D900 /* 8002D8F8 00029558 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D8FC 0002955C 48 00 00 2C */ b lbl_8002D928 lbl_8002D900: /* 8002D900 00029560 2C 00 00 02 */ cmpwi r0, 2 /* 8002D904 00029564 40 82 00 18 */ bne lbl_8002D91C /* 8002D908 00029568 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D90C 0002956C FC 00 00 1E */ fctiwz f0, f0 /* 8002D910 00029570 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D914 00029574 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D918 00029578 48 00 00 0C */ b lbl_8002D924 lbl_8002D91C: /* 8002D91C 0002957C 38 7C 00 08 */ addi r3, r28, 8 /* 8002D920 00029580 48 20 04 15 */ bl func_8022DD34 lbl_8002D924: /* 8002D924 00029584 7C 64 1B 78 */ mr r4, r3 lbl_8002D928: /* 8002D928 00029588 7F E3 FB 78 */ mr r3, r31 /* 8002D92C 0002958C 7F 65 DB 78 */ mr r5, r27 /* 8002D930 00029590 7F A6 EB 78 */ mr r6, r29 /* 8002D934 00029594 7F C7 F3 78 */ mr r7, r30 /* 8002D938 00029598 48 01 7D F1 */ bl func_80045728 lbl_8002D93C: /* 8002D93C 0002959C 38 60 00 01 */ li r3, 1 /* 8002D940 000295A0 48 00 04 B4 */ b lbl_8002DDF4 /* 8002D944 000295A4 2C 1F 00 00 */ cmpwi r31, 0 /* 8002D948 000295A8 41 82 00 0C */ beq lbl_8002D954 /* 8002D94C 000295AC 7F E3 FB 78 */ mr r3, r31 /* 8002D950 000295B0 48 01 7D 6D */ bl func_800456BC lbl_8002D954: /* 8002D954 000295B4 38 60 00 01 */ li r3, 1 /* 8002D958 000295B8 48 00 04 9C */ b lbl_8002DDF4 /* 8002D95C 000295BC 2C 1F 00 00 */ cmpwi r31, 0 /* 8002D960 000295C0 41 82 04 90 */ beq lbl_8002DDF0 /* 8002D964 000295C4 38 00 00 00 */ li r0, 0 /* 8002D968 000295C8 B0 1D 00 02 */ sth r0, 2(r29) /* 8002D96C 000295CC A8 1C 00 08 */ lha r0, 8(r28) /* 8002D970 000295D0 2C 00 00 01 */ cmpwi r0, 1 /* 8002D974 000295D4 40 82 00 0C */ bne lbl_8002D980 /* 8002D978 000295D8 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D97C 000295DC 48 00 00 2C */ b lbl_8002D9A8 lbl_8002D980: /* 8002D980 000295E0 2C 00 00 02 */ cmpwi r0, 2 /* 8002D984 000295E4 40 82 00 18 */ bne lbl_8002D99C /* 8002D988 000295E8 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D98C 000295EC FC 00 00 1E */ fctiwz f0, f0 /* 8002D990 000295F0 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002D994 000295F4 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002D998 000295F8 48 00 00 0C */ b lbl_8002D9A4 lbl_8002D99C: /* 8002D99C 000295FC 38 7C 00 08 */ addi r3, r28, 8 /* 8002D9A0 00029600 48 20 03 95 */ bl func_8022DD34 lbl_8002D9A4: /* 8002D9A4 00029604 7C 64 1B 78 */ mr r4, r3 lbl_8002D9A8: /* 8002D9A8 00029608 7F E3 FB 78 */ mr r3, r31 /* 8002D9AC 0002960C 38 A0 00 00 */ li r5, 0 /* 8002D9B0 00029610 48 01 81 51 */ bl func_80045B00 /* 8002D9B4 00029614 2C 03 00 00 */ cmpwi r3, 0 /* 8002D9B8 00029618 90 7D 00 04 */ stw r3, 4(r29) /* 8002D9BC 0002961C 41 82 00 10 */ beq lbl_8002D9CC /* 8002D9C0 00029620 38 00 00 21 */ li r0, 0x21 /* 8002D9C4 00029624 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D9C8 00029628 48 00 04 28 */ b lbl_8002DDF0 lbl_8002D9CC: /* 8002D9CC 0002962C 38 00 00 01 */ li r0, 1 /* 8002D9D0 00029630 B0 1D 00 00 */ sth r0, 0(r29) /* 8002D9D4 00029634 48 00 04 1C */ b lbl_8002DDF0 /* 8002D9D8 00029638 A8 1C 00 08 */ lha r0, 8(r28) /* 8002D9DC 0002963C 2C 00 00 01 */ cmpwi r0, 1 /* 8002D9E0 00029640 40 82 00 0C */ bne lbl_8002D9EC /* 8002D9E4 00029644 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002D9E8 00029648 48 00 00 2C */ b lbl_8002DA14 lbl_8002D9EC: /* 8002D9EC 0002964C 2C 00 00 02 */ cmpwi r0, 2 /* 8002D9F0 00029650 40 82 00 18 */ bne lbl_8002DA08 /* 8002D9F4 00029654 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002D9F8 00029658 FC 00 00 1E */ fctiwz f0, f0 /* 8002D9FC 0002965C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DA00 00029660 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DA04 00029664 48 00 00 0C */ b lbl_8002DA10 lbl_8002DA08: /* 8002DA08 00029668 38 7C 00 08 */ addi r3, r28, 8 /* 8002DA0C 0002966C 48 20 03 29 */ bl func_8022DD34 lbl_8002DA10: /* 8002DA10 00029670 7C 64 1B 78 */ mr r4, r3 lbl_8002DA14: /* 8002DA14 00029674 7F C3 F3 78 */ mr r3, r30 /* 8002DA18 00029678 48 00 93 89 */ bl func_80036DA0 /* 8002DA1C 0002967C 38 00 00 01 */ li r0, 1 /* 8002DA20 00029680 90 7D 00 04 */ stw r3, 4(r29) /* 8002DA24 00029684 B0 1D 00 00 */ sth r0, 0(r29) /* 8002DA28 00029688 48 00 03 C8 */ b lbl_8002DDF0 /* 8002DA2C 0002968C 48 00 85 19 */ bl func_80035F44 /* 8002DA30 00029690 38 00 00 01 */ li r0, 1 /* 8002DA34 00029694 90 7D 00 04 */ stw r3, 4(r29) /* 8002DA38 00029698 B0 1D 00 00 */ sth r0, 0(r29) /* 8002DA3C 0002969C 48 00 03 B4 */ b lbl_8002DDF0 /* 8002DA40 000296A0 48 00 85 41 */ bl func_80035F80 /* 8002DA44 000296A4 38 00 00 01 */ li r0, 1 /* 8002DA48 000296A8 90 7D 00 04 */ stw r3, 4(r29) /* 8002DA4C 000296AC B0 1D 00 00 */ sth r0, 0(r29) /* 8002DA50 000296B0 48 00 03 A0 */ b lbl_8002DDF0 /* 8002DA54 000296B4 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DA58 000296B8 41 82 03 98 */ beq lbl_8002DDF0 /* 8002DA5C 000296BC A8 1C 00 08 */ lha r0, 8(r28) /* 8002DA60 000296C0 2C 00 00 01 */ cmpwi r0, 1 /* 8002DA64 000296C4 40 82 00 0C */ bne lbl_8002DA70 /* 8002DA68 000296C8 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002DA6C 000296CC 48 00 00 2C */ b lbl_8002DA98 lbl_8002DA70: /* 8002DA70 000296D0 2C 00 00 02 */ cmpwi r0, 2 /* 8002DA74 000296D4 40 82 00 18 */ bne lbl_8002DA8C /* 8002DA78 000296D8 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DA7C 000296DC FC 00 00 1E */ fctiwz f0, f0 /* 8002DA80 000296E0 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DA84 000296E4 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DA88 000296E8 48 00 00 0C */ b lbl_8002DA94 lbl_8002DA8C: /* 8002DA8C 000296EC 38 7C 00 08 */ addi r3, r28, 8 /* 8002DA90 000296F0 48 20 02 A5 */ bl func_8022DD34 lbl_8002DA94: /* 8002DA94 000296F4 7C 7B 1B 78 */ mr r27, r3 lbl_8002DA98: /* 8002DA98 000296F8 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002DA9C 000296FC 2C 00 00 01 */ cmpwi r0, 1 /* 8002DAA0 00029700 40 82 00 0C */ bne lbl_8002DAAC /* 8002DAA4 00029704 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002DAA8 00029708 48 00 00 2C */ b lbl_8002DAD4 lbl_8002DAAC: /* 8002DAAC 0002970C 2C 00 00 02 */ cmpwi r0, 2 /* 8002DAB0 00029710 40 82 00 18 */ bne lbl_8002DAC8 /* 8002DAB4 00029714 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002DAB8 00029718 FC 00 00 1E */ fctiwz f0, f0 /* 8002DABC 0002971C D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DAC0 00029720 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DAC4 00029724 48 00 00 0C */ b lbl_8002DAD0 lbl_8002DAC8: /* 8002DAC8 00029728 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002DACC 0002972C 48 20 02 69 */ bl func_8022DD34 lbl_8002DAD0: /* 8002DAD0 00029730 7C 65 1B 78 */ mr r5, r3 lbl_8002DAD4: /* 8002DAD4 00029734 7F E3 FB 78 */ mr r3, r31 /* 8002DAD8 00029738 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 8002DADC 0002973C 48 01 89 D5 */ bl func_800464B0 /* 8002DAE0 00029740 48 00 03 10 */ b lbl_8002DDF0 /* 8002DAE4 00029744 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DAE8 00029748 41 82 03 08 */ beq lbl_8002DDF0 /* 8002DAEC 0002974C A8 1C 00 08 */ lha r0, 8(r28) /* 8002DAF0 00029750 2C 00 00 01 */ cmpwi r0, 1 /* 8002DAF4 00029754 40 82 00 0C */ bne lbl_8002DB00 /* 8002DAF8 00029758 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002DAFC 0002975C 48 00 00 2C */ b lbl_8002DB28 lbl_8002DB00: /* 8002DB00 00029760 2C 00 00 02 */ cmpwi r0, 2 /* 8002DB04 00029764 40 82 00 18 */ bne lbl_8002DB1C /* 8002DB08 00029768 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DB0C 0002976C FC 00 00 1E */ fctiwz f0, f0 /* 8002DB10 00029770 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DB14 00029774 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DB18 00029778 48 00 00 0C */ b lbl_8002DB24 lbl_8002DB1C: /* 8002DB1C 0002977C 38 7C 00 08 */ addi r3, r28, 8 /* 8002DB20 00029780 48 20 02 15 */ bl func_8022DD34 lbl_8002DB24: /* 8002DB24 00029784 7C 7B 1B 78 */ mr r27, r3 lbl_8002DB28: /* 8002DB28 00029788 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002DB2C 0002978C 2C 00 00 01 */ cmpwi r0, 1 /* 8002DB30 00029790 40 82 00 0C */ bne lbl_8002DB3C /* 8002DB34 00029794 80 BC 00 14 */ lwz r5, 0x14(r28) /* 8002DB38 00029798 48 00 00 2C */ b lbl_8002DB64 lbl_8002DB3C: /* 8002DB3C 0002979C 2C 00 00 02 */ cmpwi r0, 2 /* 8002DB40 000297A0 40 82 00 18 */ bne lbl_8002DB58 /* 8002DB44 000297A4 C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002DB48 000297A8 FC 00 00 1E */ fctiwz f0, f0 /* 8002DB4C 000297AC D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DB50 000297B0 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DB54 000297B4 48 00 00 0C */ b lbl_8002DB60 lbl_8002DB58: /* 8002DB58 000297B8 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002DB5C 000297BC 48 20 01 D9 */ bl func_8022DD34 lbl_8002DB60: /* 8002DB60 000297C0 7C 65 1B 78 */ mr r5, r3 lbl_8002DB64: /* 8002DB64 000297C4 7F E3 FB 78 */ mr r3, r31 /* 8002DB68 000297C8 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 8002DB6C 000297CC 48 01 8D BD */ bl func_80046928 /* 8002DB70 000297D0 48 00 02 80 */ b lbl_8002DDF0 /* 8002DB74 000297D4 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DB78 000297D8 41 82 02 78 */ beq lbl_8002DDF0 /* 8002DB7C 000297DC 7F E3 FB 78 */ mr r3, r31 /* 8002DB80 000297E0 48 01 8C E1 */ bl func_80046860 /* 8002DB84 000297E4 48 00 02 6C */ b lbl_8002DDF0 /* 8002DB88 000297E8 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DB8C 000297EC 41 82 02 64 */ beq lbl_8002DDF0 /* 8002DB90 000297F0 A8 1C 00 08 */ lha r0, 8(r28) /* 8002DB94 000297F4 2C 00 00 01 */ cmpwi r0, 1 /* 8002DB98 000297F8 40 82 00 0C */ bne lbl_8002DBA4 /* 8002DB9C 000297FC 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002DBA0 00029800 48 00 00 2C */ b lbl_8002DBCC lbl_8002DBA4: /* 8002DBA4 00029804 2C 00 00 02 */ cmpwi r0, 2 /* 8002DBA8 00029808 40 82 00 18 */ bne lbl_8002DBC0 /* 8002DBAC 0002980C C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DBB0 00029810 FC 00 00 1E */ fctiwz f0, f0 /* 8002DBB4 00029814 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DBB8 00029818 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DBBC 0002981C 48 00 00 0C */ b lbl_8002DBC8 lbl_8002DBC0: /* 8002DBC0 00029820 38 7C 00 08 */ addi r3, r28, 8 /* 8002DBC4 00029824 48 20 01 71 */ bl func_8022DD34 lbl_8002DBC8: /* 8002DBC8 00029828 7C 64 1B 78 */ mr r4, r3 lbl_8002DBCC: /* 8002DBCC 0002982C 7C 04 00 D0 */ neg r0, r4 /* 8002DBD0 00029830 7F E3 FB 78 */ mr r3, r31 /* 8002DBD4 00029834 7C 00 23 78 */ or r0, r0, r4 /* 8002DBD8 00029838 54 04 0F FE */ srwi r4, r0, 0x1f /* 8002DBDC 0002983C 48 01 93 C1 */ bl func_80046F9C /* 8002DBE0 00029840 48 00 02 10 */ b lbl_8002DDF0 /* 8002DBE4 00029844 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DBE8 00029848 41 82 02 08 */ beq lbl_8002DDF0 /* 8002DBEC 0002984C A8 1C 00 08 */ lha r0, 8(r28) /* 8002DBF0 00029850 2C 00 00 01 */ cmpwi r0, 1 /* 8002DBF4 00029854 40 82 00 0C */ bne lbl_8002DC00 /* 8002DBF8 00029858 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002DBFC 0002985C 48 00 00 2C */ b lbl_8002DC28 lbl_8002DC00: /* 8002DC00 00029860 2C 00 00 02 */ cmpwi r0, 2 /* 8002DC04 00029864 40 82 00 18 */ bne lbl_8002DC1C /* 8002DC08 00029868 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DC0C 0002986C FC 00 00 1E */ fctiwz f0, f0 /* 8002DC10 00029870 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DC14 00029874 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DC18 00029878 48 00 00 0C */ b lbl_8002DC24 lbl_8002DC1C: /* 8002DC1C 0002987C 38 7C 00 08 */ addi r3, r28, 8 /* 8002DC20 00029880 48 20 01 15 */ bl func_8022DD34 lbl_8002DC24: /* 8002DC24 00029884 7C 64 1B 78 */ mr r4, r3 lbl_8002DC28: /* 8002DC28 00029888 7F E3 FB 78 */ mr r3, r31 /* 8002DC2C 0002988C 48 01 94 89 */ bl func_800470B4 /* 8002DC30 00029890 48 00 01 C0 */ b lbl_8002DDF0 /* 8002DC34 00029894 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DC38 00029898 41 82 01 B8 */ beq lbl_8002DDF0 /* 8002DC3C 0002989C 7F E3 FB 78 */ mr r3, r31 /* 8002DC40 000298A0 48 01 98 2D */ bl func_8004746C /* 8002DC44 000298A4 48 00 01 AC */ b lbl_8002DDF0 /* 8002DC48 000298A8 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DC4C 000298AC 41 82 01 A4 */ beq lbl_8002DDF0 /* 8002DC50 000298B0 7F E3 FB 78 */ mr r3, r31 /* 8002DC54 000298B4 48 01 87 61 */ bl func_800463B4 /* 8002DC58 000298B8 48 00 01 98 */ b lbl_8002DDF0 /* 8002DC5C 000298BC 2C 1F 00 00 */ cmpwi r31, 0 /* 8002DC60 000298C0 41 82 01 90 */ beq lbl_8002DDF0 /* 8002DC64 000298C4 7F E3 FB 78 */ mr r3, r31 /* 8002DC68 000298C8 48 01 87 F1 */ bl func_80046458 /* 8002DC6C 000298CC 48 00 01 84 */ b lbl_8002DDF0 /* 8002DC70 000298D0 48 00 83 1D */ bl func_80035F8C /* 8002DC74 000298D4 38 00 00 01 */ li r0, 1 /* 8002DC78 000298D8 90 7D 00 04 */ stw r3, 4(r29) /* 8002DC7C 000298DC B0 1D 00 00 */ sth r0, 0(r29) /* 8002DC80 000298E0 48 00 01 70 */ b lbl_8002DDF0 /* 8002DC84 000298E4 2C 03 00 00 */ cmpwi r3, 0 /* 8002DC88 000298E8 41 82 01 68 */ beq lbl_8002DDF0 /* 8002DC8C 000298EC A8 1C 00 08 */ lha r0, 8(r28) /* 8002DC90 000298F0 2C 00 00 01 */ cmpwi r0, 1 /* 8002DC94 000298F4 40 82 00 0C */ bne lbl_8002DCA0 /* 8002DC98 000298F8 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002DC9C 000298FC 48 00 00 2C */ b lbl_8002DCC8 lbl_8002DCA0: /* 8002DCA0 00029900 2C 00 00 02 */ cmpwi r0, 2 /* 8002DCA4 00029904 40 82 00 18 */ bne lbl_8002DCBC /* 8002DCA8 00029908 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DCAC 0002990C FC 00 00 1E */ fctiwz f0, f0 /* 8002DCB0 00029910 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DCB4 00029914 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DCB8 00029918 48 00 00 0C */ b lbl_8002DCC4 lbl_8002DCBC: /* 8002DCBC 0002991C 38 7C 00 08 */ addi r3, r28, 8 /* 8002DCC0 00029920 48 20 00 75 */ bl func_8022DD34 lbl_8002DCC4: /* 8002DCC4 00029924 7C 64 1B 78 */ mr r4, r3 lbl_8002DCC8: /* 8002DCC8 00029928 7F C3 F3 78 */ mr r3, r30 /* 8002DCCC 0002992C 48 00 92 55 */ bl func_80036F20 /* 8002DCD0 00029930 48 00 01 20 */ b lbl_8002DDF0 /* 8002DCD4 00029934 3B 80 00 01 */ li r28, 1 /* 8002DCD8 00029938 38 00 00 00 */ li r0, 0 /* 8002DCDC 0002993C 2C 03 00 00 */ cmpwi r3, 0 /* 8002DCE0 00029940 B3 9D 00 00 */ sth r28, 0(r29) /* 8002DCE4 00029944 90 1D 00 04 */ stw r0, 4(r29) /* 8002DCE8 00029948 41 82 01 08 */ beq lbl_8002DDF0 /* 8002DCEC 0002994C 48 00 92 2D */ bl func_80036F18 /* 8002DCF0 00029950 B3 9D 00 00 */ sth r28, 0(r29) /* 8002DCF4 00029954 90 7D 00 04 */ stw r3, 4(r29) /* 8002DCF8 00029958 48 00 00 F8 */ b lbl_8002DDF0 /* 8002DCFC 0002995C 2C 03 00 00 */ cmpwi r3, 0 /* 8002DD00 00029960 41 82 00 F0 */ beq lbl_8002DDF0 /* 8002DD04 00029964 A8 1C 00 08 */ lha r0, 8(r28) /* 8002DD08 00029968 2C 00 00 01 */ cmpwi r0, 1 /* 8002DD0C 0002996C 40 82 00 0C */ bne lbl_8002DD18 /* 8002DD10 00029970 83 7C 00 0C */ lwz r27, 0xc(r28) /* 8002DD14 00029974 48 00 00 2C */ b lbl_8002DD40 lbl_8002DD18: /* 8002DD18 00029978 2C 00 00 02 */ cmpwi r0, 2 /* 8002DD1C 0002997C 40 82 00 18 */ bne lbl_8002DD34 /* 8002DD20 00029980 C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DD24 00029984 FC 00 00 1E */ fctiwz f0, f0 /* 8002DD28 00029988 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DD2C 0002998C 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DD30 00029990 48 00 00 0C */ b lbl_8002DD3C lbl_8002DD34: /* 8002DD34 00029994 38 7C 00 08 */ addi r3, r28, 8 /* 8002DD38 00029998 48 1F FF FD */ bl func_8022DD34 lbl_8002DD3C: /* 8002DD3C 0002999C 7C 7B 1B 78 */ mr r27, r3 lbl_8002DD40: /* 8002DD40 000299A0 A8 1C 00 10 */ lha r0, 0x10(r28) /* 8002DD44 000299A4 2C 00 00 01 */ cmpwi r0, 1 /* 8002DD48 000299A8 40 82 00 0C */ bne lbl_8002DD54 /* 8002DD4C 000299AC 80 9C 00 14 */ lwz r4, 0x14(r28) /* 8002DD50 000299B0 48 00 00 2C */ b lbl_8002DD7C lbl_8002DD54: /* 8002DD54 000299B4 2C 00 00 02 */ cmpwi r0, 2 /* 8002DD58 000299B8 40 82 00 18 */ bne lbl_8002DD70 /* 8002DD5C 000299BC C0 1C 00 14 */ lfs f0, 0x14(r28) /* 8002DD60 000299C0 FC 00 00 1E */ fctiwz f0, f0 /* 8002DD64 000299C4 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DD68 000299C8 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DD6C 000299CC 48 00 00 0C */ b lbl_8002DD78 lbl_8002DD70: /* 8002DD70 000299D0 38 7C 00 10 */ addi r3, r28, 0x10 /* 8002DD74 000299D4 48 1F FF C1 */ bl func_8022DD34 lbl_8002DD78: /* 8002DD78 000299D8 7C 64 1B 78 */ mr r4, r3 lbl_8002DD7C: /* 8002DD7C 000299DC 7C 04 00 D0 */ neg r0, r4 /* 8002DD80 000299E0 7F C3 F3 78 */ mr r3, r30 /* 8002DD84 000299E4 7C 00 23 78 */ or r0, r0, r4 /* 8002DD88 000299E8 7F 64 DB 78 */ mr r4, r27 /* 8002DD8C 000299EC 54 05 0F FE */ srwi r5, r0, 0x1f /* 8002DD90 000299F0 48 00 91 99 */ bl func_80036F28 /* 8002DD94 000299F4 48 00 00 5C */ b lbl_8002DDF0 /* 8002DD98 000299F8 2C 03 00 00 */ cmpwi r3, 0 /* 8002DD9C 000299FC 41 82 00 54 */ beq lbl_8002DDF0 /* 8002DDA0 00029A00 A8 1C 00 08 */ lha r0, 8(r28) /* 8002DDA4 00029A04 2C 00 00 01 */ cmpwi r0, 1 /* 8002DDA8 00029A08 40 82 00 0C */ bne lbl_8002DDB4 /* 8002DDAC 00029A0C 80 9C 00 0C */ lwz r4, 0xc(r28) /* 8002DDB0 00029A10 48 00 00 2C */ b lbl_8002DDDC lbl_8002DDB4: /* 8002DDB4 00029A14 2C 00 00 02 */ cmpwi r0, 2 /* 8002DDB8 00029A18 40 82 00 18 */ bne lbl_8002DDD0 /* 8002DDBC 00029A1C C0 1C 00 0C */ lfs f0, 0xc(r28) /* 8002DDC0 00029A20 FC 00 00 1E */ fctiwz f0, f0 /* 8002DDC4 00029A24 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8002DDC8 00029A28 80 61 00 24 */ lwz r3, 0x24(r1) /* 8002DDCC 00029A2C 48 00 00 0C */ b lbl_8002DDD8 lbl_8002DDD0: /* 8002DDD0 00029A30 38 7C 00 08 */ addi r3, r28, 8 /* 8002DDD4 00029A34 48 1F FF 61 */ bl func_8022DD34 lbl_8002DDD8: /* 8002DDD8 00029A38 7C 64 1B 78 */ mr r4, r3 lbl_8002DDDC: /* 8002DDDC 00029A3C 7F C3 F3 78 */ mr r3, r30 /* 8002DDE0 00029A40 48 00 91 71 */ bl func_80036F50 /* 8002DDE4 00029A44 38 00 00 01 */ li r0, 1 /* 8002DDE8 00029A48 90 7D 00 04 */ stw r3, 4(r29) /* 8002DDEC 00029A4C B0 1D 00 00 */ sth r0, 0(r29) lbl_8002DDF0: /* 8002DDF0 00029A50 38 60 00 01 */ li r3, 1 lbl_8002DDF4: /* 8002DDF4 00029A54 39 61 00 40 */ addi r11, r1, 0x40 /* 8002DDF8 00029A58 48 19 93 79 */ bl _restgpr_26 /* 8002DDFC 00029A5C 80 01 00 44 */ lwz r0, 0x44(r1) /* 8002DE00 00029A60 7C 08 03 A6 */ mtlr r0 /* 8002DE04 00029A64 38 21 00 40 */ addi r1, r1, 0x40 /* 8002DE08 00029A68 4E 80 00 20 */ blr .global func_8002DE0C func_8002DE0C: /* 8002DE0C 00029A6C 38 A0 00 01 */ li r5, 1 /* 8002DE10 00029A70 38 6D 97 28 */ addi r3, r13, lbl_8063E9E8-_SDA_BASE_ /* 8002DE14 00029A74 38 80 00 04 */ li r4, 4 /* 8002DE18 00029A78 38 00 00 00 */ li r0, 0 /* 8002DE1C 00029A7C 98 AD 97 28 */ stb r5, lbl_8063E9E8-_SDA_BASE_(r13) /* 8002DE20 00029A80 B0 83 00 02 */ sth r4, 2(r3) /* 8002DE24 00029A84 98 03 00 04 */ stb r0, 4(r3) /* 8002DE28 00029A88 4E 80 00 20 */ blr .global func_8002DE2C func_8002DE2C: /* 8002DE2C 00029A8C 2C 03 00 03 */ cmpwi r3, 3 /* 8002DE30 00029A90 41 82 00 34 */ beq lbl_8002DE64 /* 8002DE34 00029A94 40 80 00 14 */ bge lbl_8002DE48 /* 8002DE38 00029A98 2C 03 00 01 */ cmpwi r3, 1 /* 8002DE3C 00029A9C 41 82 00 18 */ beq lbl_8002DE54 /* 8002DE40 00029AA0 40 80 00 1C */ bge lbl_8002DE5C /* 8002DE44 00029AA4 48 00 00 30 */ b lbl_8002DE74 lbl_8002DE48: /* 8002DE48 00029AA8 2C 03 00 05 */ cmpwi r3, 5 /* 8002DE4C 00029AAC 40 80 00 28 */ bge lbl_8002DE74 /* 8002DE50 00029AB0 48 00 00 1C */ b lbl_8002DE6C lbl_8002DE54: /* 8002DE54 00029AB4 38 60 27 E6 */ li r3, 0x27e6 /* 8002DE58 00029AB8 4E 80 00 20 */ blr lbl_8002DE5C: /* 8002DE5C 00029ABC 38 60 27 E0 */ li r3, 0x27e0 /* 8002DE60 00029AC0 4E 80 00 20 */ blr lbl_8002DE64: /* 8002DE64 00029AC4 38 60 27 E5 */ li r3, 0x27e5 /* 8002DE68 00029AC8 4E 80 00 20 */ blr lbl_8002DE6C: /* 8002DE6C 00029ACC 38 60 27 E1 */ li r3, 0x27e1 /* 8002DE70 00029AD0 4E 80 00 20 */ blr lbl_8002DE74: /* 8002DE74 00029AD4 38 60 00 00 */ li r3, 0 /* 8002DE78 00029AD8 4E 80 00 20 */ blr .global lbl_8002DE7C lbl_8002DE7C: /* 8002DE7C 00029ADC 94 21 FE 50 */ stwu r1, -0x1b0(r1) /* 8002DE80 00029AE0 7C 08 02 A6 */ mflr r0 /* 8002DE84 00029AE4 90 01 01 B4 */ stw r0, 0x1b4(r1) /* 8002DE88 00029AE8 DB E1 01 A0 */ stfd f31, 0x1a0(r1) /* 8002DE8C 00029AEC F3 E1 01 A8 */ psq_st f31, 424(r1), 0, qr0 /* 8002DE90 00029AF0 39 61 01 A0 */ addi r11, r1, 0x1a0 /* 8002DE94 00029AF4 48 19 92 8D */ bl _savegpr_25 /* 8002DE98 00029AF8 3C 00 43 30 */ lis r0, 0x4330 /* 8002DE9C 00029AFC 7C 99 23 78 */ mr r25, r4 /* 8002DEA0 00029B00 90 01 01 68 */ stw r0, 0x168(r1) /* 8002DEA4 00029B04 7C BD 2B 78 */ mr r29, r5 /* 8002DEA8 00029B08 7C DE 33 78 */ mr r30, r6 /* 8002DEAC 00029B0C 90 01 01 70 */ stw r0, 0x170(r1) /* 8002DEB0 00029B10 48 00 7E ED */ bl func_80035D9C /* 8002DEB4 00029B14 2C 03 00 00 */ cmpwi r3, 0 /* 8002DEB8 00029B18 7C 7F 1B 78 */ mr r31, r3 /* 8002DEBC 00029B1C 40 82 00 0C */ bne lbl_8002DEC8 /* 8002DEC0 00029B20 38 60 00 01 */ li r3, 1 /* 8002DEC4 00029B24 48 00 1D 9C */ b lbl_8002FC60 lbl_8002DEC8: /* 8002DEC8 00029B28 48 0E EA AD */ bl func_8011C974 /* 8002DECC 00029B2C 38 19 FF EF */ addi r0, r25, -17 /* 8002DED0 00029B30 7C 7B 1B 78 */ mr r27, r3 /* 8002DED4 00029B34 28 00 00 21 */ cmplwi r0, 0x21 /* 8002DED8 00029B38 41 81 1D 84 */ bgt lbl_8002FC5C /* 8002DEDC 00029B3C 3C 60 80 41 */ lis r3, lbl_80409F40@ha /* 8002DEE0 00029B40 54 00 10 3A */ slwi r0, r0, 2 /* 8002DEE4 00029B44 38 63 9F 40 */ addi r3, r3, lbl_80409F40@l /* 8002DEE8 00029B48 7C 63 00 2E */ lwzx r3, r3, r0 /* 8002DEEC 00029B4C 7C 69 03 A6 */ mtctr r3 /* 8002DEF0 00029B50 4E 80 04 20 */ bctr /* 8002DEF4 00029B54 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002DEF8 00029B58 2C 00 00 01 */ cmpwi r0, 1 /* 8002DEFC 00029B5C 40 82 00 0C */ bne lbl_8002DF08 /* 8002DF00 00029B60 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002DF04 00029B64 48 00 00 28 */ b lbl_8002DF2C lbl_8002DF08: /* 8002DF08 00029B68 2C 00 00 02 */ cmpwi r0, 2 /* 8002DF0C 00029B6C 40 82 00 18 */ bne lbl_8002DF24 /* 8002DF10 00029B70 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002DF14 00029B74 FC 00 00 1E */ fctiwz f0, f0 /* 8002DF18 00029B78 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002DF1C 00029B7C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002DF20 00029B80 48 00 00 0C */ b lbl_8002DF2C lbl_8002DF24: /* 8002DF24 00029B84 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002DF28 00029B88 48 1F FE 0D */ bl func_8022DD34 lbl_8002DF2C: /* 8002DF2C 00029B8C 2C 03 00 00 */ cmpwi r3, 0 /* 8002DF30 00029B90 40 82 00 0C */ bne lbl_8002DF3C /* 8002DF34 00029B94 48 04 12 09 */ bl func_8006F13C /* 8002DF38 00029B98 48 00 1D 24 */ b lbl_8002FC5C lbl_8002DF3C: /* 8002DF3C 00029B9C 48 04 10 8D */ bl func_8006EFC8 /* 8002DF40 00029BA0 48 00 1D 1C */ b lbl_8002FC5C /* 8002DF44 00029BA4 7F E3 FB 78 */ mr r3, r31 /* 8002DF48 00029BA8 48 00 81 21 */ bl func_80036068 /* 8002DF4C 00029BAC 7C 7B 1B 78 */ mr r27, r3 /* 8002DF50 00029BB0 48 04 13 B9 */ bl func_8006F308 /* 8002DF54 00029BB4 2C 1B 00 00 */ cmpwi r27, 0 /* 8002DF58 00029BB8 41 82 00 14 */ beq lbl_8002DF6C /* 8002DF5C 00029BBC C0 22 81 50 */ lfs f1, lbl_80640750-_SDA2_BASE_(r2) /* 8002DF60 00029BC0 7F 63 DB 78 */ mr r3, r27 /* 8002DF64 00029BC4 FC 40 08 90 */ fmr f2, f1 /* 8002DF68 00029BC8 48 04 12 01 */ bl func_8006F168 lbl_8002DF6C: /* 8002DF6C 00029BCC 4B FD E8 7D */ bl func_8000C7E8 /* 8002DF70 00029BD0 38 80 00 01 */ li r4, 1 /* 8002DF74 00029BD4 38 A0 00 00 */ li r5, 0 /* 8002DF78 00029BD8 4B FF 3F 4D */ bl func_80021EC4 /* 8002DF7C 00029BDC 48 00 1C E0 */ b lbl_8002FC5C /* 8002DF80 00029BE0 A8 1D 00 08 */ lha r0, 8(r29) /* 8002DF84 00029BE4 2C 00 00 01 */ cmpwi r0, 1 /* 8002DF88 00029BE8 40 82 00 0C */ bne lbl_8002DF94 /* 8002DF8C 00029BEC 83 7D 00 0C */ lwz r27, 0xc(r29) /* 8002DF90 00029BF0 48 00 00 2C */ b lbl_8002DFBC lbl_8002DF94: /* 8002DF94 00029BF4 2C 00 00 02 */ cmpwi r0, 2 /* 8002DF98 00029BF8 40 82 00 18 */ bne lbl_8002DFB0 /* 8002DF9C 00029BFC C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002DFA0 00029C00 FC 00 00 1E */ fctiwz f0, f0 /* 8002DFA4 00029C04 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002DFA8 00029C08 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002DFAC 00029C0C 48 00 00 0C */ b lbl_8002DFB8 lbl_8002DFB0: /* 8002DFB0 00029C10 38 7D 00 08 */ addi r3, r29, 8 /* 8002DFB4 00029C14 48 1F FD 81 */ bl func_8022DD34 lbl_8002DFB8: /* 8002DFB8 00029C18 7C 7B 1B 78 */ mr r27, r3 lbl_8002DFBC: /* 8002DFBC 00029C1C A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002DFC0 00029C20 2C 00 00 01 */ cmpwi r0, 1 /* 8002DFC4 00029C24 40 82 00 20 */ bne lbl_8002DFE4 /* 8002DFC8 00029C28 80 1D 00 1C */ lwz r0, 0x1c(r29) /* 8002DFCC 00029C2C C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002DFD0 00029C30 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002DFD4 00029C34 90 01 01 6C */ stw r0, 0x16c(r1) /* 8002DFD8 00029C38 C8 01 01 68 */ lfd f0, 0x168(r1) /* 8002DFDC 00029C3C EF E0 08 28 */ fsubs f31, f0, f1 /* 8002DFE0 00029C40 48 00 00 20 */ b lbl_8002E000 lbl_8002DFE4: /* 8002DFE4 00029C44 2C 00 00 02 */ cmpwi r0, 2 /* 8002DFE8 00029C48 40 82 00 0C */ bne lbl_8002DFF4 /* 8002DFEC 00029C4C C0 3D 00 1C */ lfs f1, 0x1c(r29) /* 8002DFF0 00029C50 48 00 00 0C */ b lbl_8002DFFC lbl_8002DFF4: /* 8002DFF4 00029C54 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002DFF8 00029C58 48 1F FD 81 */ bl func_8022DD78 lbl_8002DFFC: /* 8002DFFC 00029C5C FF E0 08 90 */ fmr f31, f1 lbl_8002E000: /* 8002E000 00029C60 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E004 00029C64 2C 00 00 01 */ cmpwi r0, 1 /* 8002E008 00029C68 40 82 00 20 */ bne lbl_8002E028 /* 8002E00C 00029C6C 80 1D 00 14 */ lwz r0, 0x14(r29) /* 8002E010 00029C70 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E014 00029C74 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E018 00029C78 90 01 01 74 */ stw r0, 0x174(r1) /* 8002E01C 00029C7C C8 01 01 70 */ lfd f0, 0x170(r1) /* 8002E020 00029C80 EC 40 08 28 */ fsubs f2, f0, f1 /* 8002E024 00029C84 48 00 00 20 */ b lbl_8002E044 lbl_8002E028: /* 8002E028 00029C88 2C 00 00 02 */ cmpwi r0, 2 /* 8002E02C 00029C8C 40 82 00 0C */ bne lbl_8002E038 /* 8002E030 00029C90 C0 3D 00 14 */ lfs f1, 0x14(r29) /* 8002E034 00029C94 48 00 00 0C */ b lbl_8002E040 lbl_8002E038: /* 8002E038 00029C98 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E03C 00029C9C 48 1F FD 3D */ bl func_8022DD78 lbl_8002E040: /* 8002E040 00029CA0 FC 40 08 90 */ fmr f2, f1 lbl_8002E044: /* 8002E044 00029CA4 FC 20 F8 90 */ fmr f1, f31 /* 8002E048 00029CA8 57 63 04 3E */ clrlwi r3, r27, 0x10 /* 8002E04C 00029CAC 38 80 00 00 */ li r4, 0 /* 8002E050 00029CB0 38 A0 00 00 */ li r5, 0 /* 8002E054 00029CB4 38 C0 00 00 */ li r6, 0 /* 8002E058 00029CB8 48 04 12 F5 */ bl func_8006F34C /* 8002E05C 00029CBC 48 00 1C 00 */ b lbl_8002FC5C /* 8002E060 00029CC0 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E064 00029CC4 2C 00 00 01 */ cmpwi r0, 1 /* 8002E068 00029CC8 40 82 00 0C */ bne lbl_8002E074 /* 8002E06C 00029CCC 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002E070 00029CD0 48 00 00 28 */ b lbl_8002E098 lbl_8002E074: /* 8002E074 00029CD4 2C 00 00 02 */ cmpwi r0, 2 /* 8002E078 00029CD8 40 82 00 18 */ bne lbl_8002E090 /* 8002E07C 00029CDC C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002E080 00029CE0 FC 00 00 1E */ fctiwz f0, f0 /* 8002E084 00029CE4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E088 00029CE8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E08C 00029CEC 48 00 00 0C */ b lbl_8002E098 lbl_8002E090: /* 8002E090 00029CF0 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E094 00029CF4 48 1F FC A1 */ bl func_8022DD34 lbl_8002E098: /* 8002E098 00029CF8 38 80 00 01 */ li r4, 1 /* 8002E09C 00029CFC 38 00 00 00 */ li r0, 0 /* 8002E0A0 00029D00 B0 9E 00 00 */ sth r4, 0(r30) /* 8002E0A4 00029D04 54 7B 06 3E */ clrlwi r27, r3, 0x18 /* 8002E0A8 00029D08 90 1E 00 04 */ stw r0, 4(r30) /* 8002E0AC 00029D0C A8 1D 00 08 */ lha r0, 8(r29) /* 8002E0B0 00029D10 2C 00 00 01 */ cmpwi r0, 1 /* 8002E0B4 00029D14 40 82 00 0C */ bne lbl_8002E0C0 /* 8002E0B8 00029D18 80 9D 00 0C */ lwz r4, 0xc(r29) /* 8002E0BC 00029D1C 48 00 00 2C */ b lbl_8002E0E8 lbl_8002E0C0: /* 8002E0C0 00029D20 2C 00 00 02 */ cmpwi r0, 2 /* 8002E0C4 00029D24 40 82 00 18 */ bne lbl_8002E0DC /* 8002E0C8 00029D28 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002E0CC 00029D2C FC 00 00 1E */ fctiwz f0, f0 /* 8002E0D0 00029D30 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E0D4 00029D34 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E0D8 00029D38 48 00 00 0C */ b lbl_8002E0E4 lbl_8002E0DC: /* 8002E0DC 00029D3C 38 7D 00 08 */ addi r3, r29, 8 /* 8002E0E0 00029D40 48 1F FC 55 */ bl func_8022DD34 lbl_8002E0E4: /* 8002E0E4 00029D44 7C 64 1B 78 */ mr r4, r3 lbl_8002E0E8: /* 8002E0E8 00029D48 7F E3 FB 78 */ mr r3, r31 /* 8002E0EC 00029D4C 38 A0 00 06 */ li r5, 6 /* 8002E0F0 00029D50 48 00 80 2D */ bl func_8003611C /* 8002E0F4 00029D54 A8 9D 00 08 */ lha r4, 8(r29) /* 8002E0F8 00029D58 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8002E0FC 00029D5C 90 01 00 10 */ stw r0, 0x10(r1) /* 8002E100 00029D60 2C 04 00 01 */ cmpwi r4, 1 /* 8002E104 00029D64 40 82 00 0C */ bne lbl_8002E110 /* 8002E108 00029D68 80 9D 00 0C */ lwz r4, 0xc(r29) /* 8002E10C 00029D6C 48 00 00 2C */ b lbl_8002E138 lbl_8002E110: /* 8002E110 00029D70 2C 04 00 02 */ cmpwi r4, 2 /* 8002E114 00029D74 40 82 00 18 */ bne lbl_8002E12C /* 8002E118 00029D78 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002E11C 00029D7C FC 00 00 1E */ fctiwz f0, f0 /* 8002E120 00029D80 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E124 00029D84 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E128 00029D88 48 00 00 0C */ b lbl_8002E134 lbl_8002E12C: /* 8002E12C 00029D8C 38 7D 00 08 */ addi r3, r29, 8 /* 8002E130 00029D90 48 1F FC 05 */ bl func_8022DD34 lbl_8002E134: /* 8002E134 00029D94 7C 64 1B 78 */ mr r4, r3 lbl_8002E138: /* 8002E138 00029D98 7F E3 FB 78 */ mr r3, r31 /* 8002E13C 00029D9C 38 A0 00 07 */ li r5, 7 /* 8002E140 00029DA0 48 00 7F DD */ bl func_8003611C /* 8002E144 00029DA4 80 01 00 10 */ lwz r0, 0x10(r1) /* 8002E148 00029DA8 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8002E14C 00029DAC 90 61 00 14 */ stw r3, 0x14(r1) /* 8002E150 00029DB0 2C 00 00 00 */ cmpwi r0, 0 /* 8002E154 00029DB4 40 82 00 18 */ bne lbl_8002E16C /* 8002E158 00029DB8 2C 03 00 00 */ cmpwi r3, 0 /* 8002E15C 00029DBC 41 82 00 10 */ beq lbl_8002E16C /* 8002E160 00029DC0 38 00 00 00 */ li r0, 0 /* 8002E164 00029DC4 90 61 00 10 */ stw r3, 0x10(r1) /* 8002E168 00029DC8 90 01 00 14 */ stw r0, 0x14(r1) lbl_8002E16C: /* 8002E16C 00029DCC 28 1B 00 01 */ cmplwi r27, 1 /* 8002E170 00029DD0 41 81 1A EC */ bgt lbl_8002FC5C /* 8002E174 00029DD4 57 60 15 BA */ rlwinm r0, r27, 2, 0x16, 0x1d /* 8002E178 00029DD8 38 61 00 10 */ addi r3, r1, 0x10 /* 8002E17C 00029DDC 7C 63 00 2E */ lwzx r3, r3, r0 /* 8002E180 00029DE0 4B FF FC AD */ bl func_8002DE2C /* 8002E184 00029DE4 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 8002E188 00029DE8 7C 7B 1B 78 */ mr r27, r3 /* 8002E18C 00029DEC 41 82 1A D0 */ beq lbl_8002FC5C /* 8002E190 00029DF0 A8 1D 00 20 */ lha r0, 0x20(r29) /* 8002E194 00029DF4 2C 00 00 01 */ cmpwi r0, 1 /* 8002E198 00029DF8 40 82 00 20 */ bne lbl_8002E1B8 /* 8002E19C 00029DFC 80 1D 00 24 */ lwz r0, 0x24(r29) /* 8002E1A0 00029E00 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E1A4 00029E04 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E1A8 00029E08 90 01 01 6C */ stw r0, 0x16c(r1) /* 8002E1AC 00029E0C C8 01 01 68 */ lfd f0, 0x168(r1) /* 8002E1B0 00029E10 EF E0 08 28 */ fsubs f31, f0, f1 /* 8002E1B4 00029E14 48 00 00 20 */ b lbl_8002E1D4 lbl_8002E1B8: /* 8002E1B8 00029E18 2C 00 00 02 */ cmpwi r0, 2 /* 8002E1BC 00029E1C 40 82 00 0C */ bne lbl_8002E1C8 /* 8002E1C0 00029E20 C0 3D 00 24 */ lfs f1, 0x24(r29) /* 8002E1C4 00029E24 48 00 00 0C */ b lbl_8002E1D0 lbl_8002E1C8: /* 8002E1C8 00029E28 38 7D 00 20 */ addi r3, r29, 0x20 /* 8002E1CC 00029E2C 48 1F FB AD */ bl func_8022DD78 lbl_8002E1D0: /* 8002E1D0 00029E30 FF E0 08 90 */ fmr f31, f1 lbl_8002E1D4: /* 8002E1D4 00029E34 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002E1D8 00029E38 2C 00 00 01 */ cmpwi r0, 1 /* 8002E1DC 00029E3C 40 82 00 20 */ bne lbl_8002E1FC /* 8002E1E0 00029E40 80 1D 00 1C */ lwz r0, 0x1c(r29) /* 8002E1E4 00029E44 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E1E8 00029E48 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E1EC 00029E4C 90 01 01 74 */ stw r0, 0x174(r1) /* 8002E1F0 00029E50 C8 01 01 70 */ lfd f0, 0x170(r1) /* 8002E1F4 00029E54 EC 40 08 28 */ fsubs f2, f0, f1 /* 8002E1F8 00029E58 48 00 00 20 */ b lbl_8002E218 lbl_8002E1FC: /* 8002E1FC 00029E5C 2C 00 00 02 */ cmpwi r0, 2 /* 8002E200 00029E60 40 82 00 0C */ bne lbl_8002E20C /* 8002E204 00029E64 C0 3D 00 1C */ lfs f1, 0x1c(r29) /* 8002E208 00029E68 48 00 00 0C */ b lbl_8002E214 lbl_8002E20C: /* 8002E20C 00029E6C 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002E210 00029E70 48 1F FB 69 */ bl func_8022DD78 lbl_8002E214: /* 8002E214 00029E74 FC 40 08 90 */ fmr f2, f1 lbl_8002E218: /* 8002E218 00029E78 FC 20 F8 90 */ fmr f1, f31 /* 8002E21C 00029E7C 57 63 04 3E */ clrlwi r3, r27, 0x10 /* 8002E220 00029E80 38 80 00 00 */ li r4, 0 /* 8002E224 00029E84 38 A0 00 00 */ li r5, 0 /* 8002E228 00029E88 38 C0 00 01 */ li r6, 1 /* 8002E22C 00029E8C 48 04 11 21 */ bl func_8006F34C /* 8002E230 00029E90 38 00 00 01 */ li r0, 1 /* 8002E234 00029E94 B0 1E 00 00 */ sth r0, 0(r30) /* 8002E238 00029E98 90 1E 00 04 */ stw r0, 4(r30) /* 8002E23C 00029E9C 48 00 1A 20 */ b lbl_8002FC5C /* 8002E240 00029EA0 38 60 00 01 */ li r3, 1 /* 8002E244 00029EA4 38 00 00 00 */ li r0, 0 /* 8002E248 00029EA8 B0 7E 00 00 */ sth r3, 0(r30) /* 8002E24C 00029EAC 90 1E 00 04 */ stw r0, 4(r30) /* 8002E250 00029EB0 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E254 00029EB4 2C 00 00 01 */ cmpwi r0, 1 /* 8002E258 00029EB8 40 82 00 20 */ bne lbl_8002E278 /* 8002E25C 00029EBC 80 1D 00 14 */ lwz r0, 0x14(r29) /* 8002E260 00029EC0 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E264 00029EC4 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E268 00029EC8 90 01 01 6C */ stw r0, 0x16c(r1) /* 8002E26C 00029ECC C8 01 01 68 */ lfd f0, 0x168(r1) /* 8002E270 00029ED0 EF E0 08 28 */ fsubs f31, f0, f1 /* 8002E274 00029ED4 48 00 00 20 */ b lbl_8002E294 lbl_8002E278: /* 8002E278 00029ED8 2C 00 00 02 */ cmpwi r0, 2 /* 8002E27C 00029EDC 40 82 00 0C */ bne lbl_8002E288 /* 8002E280 00029EE0 C0 3D 00 14 */ lfs f1, 0x14(r29) /* 8002E284 00029EE4 48 00 00 0C */ b lbl_8002E290 lbl_8002E288: /* 8002E288 00029EE8 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E28C 00029EEC 48 1F FA ED */ bl func_8022DD78 lbl_8002E290: /* 8002E290 00029EF0 FF E0 08 90 */ fmr f31, f1 lbl_8002E294: /* 8002E294 00029EF4 A8 1D 00 08 */ lha r0, 8(r29) /* 8002E298 00029EF8 2C 00 00 01 */ cmpwi r0, 1 /* 8002E29C 00029EFC 40 82 00 20 */ bne lbl_8002E2BC /* 8002E2A0 00029F00 80 1D 00 0C */ lwz r0, 0xc(r29) /* 8002E2A4 00029F04 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E2A8 00029F08 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E2AC 00029F0C 90 01 01 74 */ stw r0, 0x174(r1) /* 8002E2B0 00029F10 C8 01 01 70 */ lfd f0, 0x170(r1) /* 8002E2B4 00029F14 EC 40 08 28 */ fsubs f2, f0, f1 /* 8002E2B8 00029F18 48 00 00 20 */ b lbl_8002E2D8 lbl_8002E2BC: /* 8002E2BC 00029F1C 2C 00 00 02 */ cmpwi r0, 2 /* 8002E2C0 00029F20 40 82 00 0C */ bne lbl_8002E2CC /* 8002E2C4 00029F24 C0 3D 00 0C */ lfs f1, 0xc(r29) /* 8002E2C8 00029F28 48 00 00 0C */ b lbl_8002E2D4 lbl_8002E2CC: /* 8002E2CC 00029F2C 38 7D 00 08 */ addi r3, r29, 8 /* 8002E2D0 00029F30 48 1F FA A9 */ bl func_8022DD78 lbl_8002E2D4: /* 8002E2D4 00029F34 FC 40 08 90 */ fmr f2, f1 lbl_8002E2D8: /* 8002E2D8 00029F38 FC 20 F8 90 */ fmr f1, f31 /* 8002E2DC 00029F3C 38 60 27 E0 */ li r3, 0x27e0 /* 8002E2E0 00029F40 38 80 00 00 */ li r4, 0 /* 8002E2E4 00029F44 38 A0 00 00 */ li r5, 0 /* 8002E2E8 00029F48 38 C0 00 01 */ li r6, 1 /* 8002E2EC 00029F4C 48 04 10 61 */ bl func_8006F34C /* 8002E2F0 00029F50 38 00 00 01 */ li r0, 1 /* 8002E2F4 00029F54 B0 1E 00 00 */ sth r0, 0(r30) /* 8002E2F8 00029F58 90 1E 00 04 */ stw r0, 4(r30) /* 8002E2FC 00029F5C 48 00 19 60 */ b lbl_8002FC5C /* 8002E300 00029F60 A8 1D 00 08 */ lha r0, 8(r29) /* 8002E304 00029F64 2C 00 00 01 */ cmpwi r0, 1 /* 8002E308 00029F68 40 82 00 0C */ bne lbl_8002E314 /* 8002E30C 00029F6C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002E310 00029F70 48 00 00 28 */ b lbl_8002E338 lbl_8002E314: /* 8002E314 00029F74 2C 00 00 02 */ cmpwi r0, 2 /* 8002E318 00029F78 40 82 00 18 */ bne lbl_8002E330 /* 8002E31C 00029F7C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002E320 00029F80 FC 00 00 1E */ fctiwz f0, f0 /* 8002E324 00029F84 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E328 00029F88 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E32C 00029F8C 48 00 00 0C */ b lbl_8002E338 lbl_8002E330: /* 8002E330 00029F90 38 7D 00 08 */ addi r3, r29, 8 /* 8002E334 00029F94 48 1F FA 01 */ bl func_8022DD34 lbl_8002E338: /* 8002E338 00029F98 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E33C 00029F9C 7C 7A 1B 78 */ mr r26, r3 /* 8002E340 00029FA0 2C 00 00 01 */ cmpwi r0, 1 /* 8002E344 00029FA4 40 82 00 0C */ bne lbl_8002E350 /* 8002E348 00029FA8 83 7D 00 14 */ lwz r27, 0x14(r29) /* 8002E34C 00029FAC 48 00 00 2C */ b lbl_8002E378 lbl_8002E350: /* 8002E350 00029FB0 2C 00 00 02 */ cmpwi r0, 2 /* 8002E354 00029FB4 40 82 00 18 */ bne lbl_8002E36C /* 8002E358 00029FB8 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002E35C 00029FBC FC 00 00 1E */ fctiwz f0, f0 /* 8002E360 00029FC0 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E364 00029FC4 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E368 00029FC8 48 00 00 0C */ b lbl_8002E374 lbl_8002E36C: /* 8002E36C 00029FCC 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E370 00029FD0 48 1F F9 C5 */ bl func_8022DD34 lbl_8002E374: /* 8002E374 00029FD4 7C 7B 1B 78 */ mr r27, r3 lbl_8002E378: /* 8002E378 00029FD8 38 00 00 01 */ li r0, 1 /* 8002E37C 00029FDC 3B 80 00 00 */ li r28, 0 /* 8002E380 00029FE0 B0 1E 00 00 */ sth r0, 0(r30) /* 8002E384 00029FE4 7F E3 FB 78 */ mr r3, r31 /* 8002E388 00029FE8 7F 44 D3 78 */ mr r4, r26 /* 8002E38C 00029FEC 38 A0 00 05 */ li r5, 5 /* 8002E390 00029FF0 93 9E 00 04 */ stw r28, 4(r30) /* 8002E394 00029FF4 48 00 7D 89 */ bl func_8003611C /* 8002E398 00029FF8 7C 1B 18 00 */ cmpw r27, r3 /* 8002E39C 00029FFC 40 80 18 C0 */ bge lbl_8002FC5C /* 8002E3A0 0002A000 2C 1B 00 00 */ cmpwi r27, 0 /* 8002E3A4 0002A004 40 82 00 1C */ bne lbl_8002E3C0 /* 8002E3A8 0002A008 7F E3 FB 78 */ mr r3, r31 /* 8002E3AC 0002A00C 7F 44 D3 78 */ mr r4, r26 /* 8002E3B0 0002A010 38 A0 00 0D */ li r5, 0xd /* 8002E3B4 0002A014 48 00 7D 69 */ bl func_8003611C /* 8002E3B8 0002A018 54 7C 04 3E */ clrlwi r28, r3, 0x10 /* 8002E3BC 0002A01C 48 00 00 60 */ b lbl_8002E41C lbl_8002E3C0: /* 8002E3C0 0002A020 2C 1B 00 01 */ cmpwi r27, 1 /* 8002E3C4 0002A024 40 82 00 1C */ bne lbl_8002E3E0 /* 8002E3C8 0002A028 7F E3 FB 78 */ mr r3, r31 /* 8002E3CC 0002A02C 7F 44 D3 78 */ mr r4, r26 /* 8002E3D0 0002A030 38 A0 00 0E */ li r5, 0xe /* 8002E3D4 0002A034 48 00 7D 49 */ bl func_8003611C /* 8002E3D8 0002A038 54 7C 04 3E */ clrlwi r28, r3, 0x10 /* 8002E3DC 0002A03C 48 00 00 40 */ b lbl_8002E41C lbl_8002E3E0: /* 8002E3E0 0002A040 2C 1B 00 02 */ cmpwi r27, 2 /* 8002E3E4 0002A044 40 82 00 1C */ bne lbl_8002E400 /* 8002E3E8 0002A048 7F E3 FB 78 */ mr r3, r31 /* 8002E3EC 0002A04C 7F 44 D3 78 */ mr r4, r26 /* 8002E3F0 0002A050 38 A0 00 0F */ li r5, 0xf /* 8002E3F4 0002A054 48 00 7D 29 */ bl func_8003611C /* 8002E3F8 0002A058 54 7C 04 3E */ clrlwi r28, r3, 0x10 /* 8002E3FC 0002A05C 48 00 00 20 */ b lbl_8002E41C lbl_8002E400: /* 8002E400 0002A060 2C 1B 00 03 */ cmpwi r27, 3 /* 8002E404 0002A064 40 82 00 18 */ bne lbl_8002E41C /* 8002E408 0002A068 7F E3 FB 78 */ mr r3, r31 /* 8002E40C 0002A06C 7F 44 D3 78 */ mr r4, r26 /* 8002E410 0002A070 38 A0 00 10 */ li r5, 0x10 /* 8002E414 0002A074 48 00 7D 09 */ bl func_8003611C /* 8002E418 0002A078 54 7C 04 3E */ clrlwi r28, r3, 0x10 lbl_8002E41C: /* 8002E41C 0002A07C 7F 83 E3 78 */ mr r3, r28 /* 8002E420 0002A080 4B FF FA 0D */ bl func_8002DE2C /* 8002E424 0002A084 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 8002E428 0002A088 7C 7B 1B 78 */ mr r27, r3 /* 8002E42C 0002A08C 41 82 18 30 */ beq lbl_8002FC5C /* 8002E430 0002A090 A8 1D 00 20 */ lha r0, 0x20(r29) /* 8002E434 0002A094 2C 00 00 01 */ cmpwi r0, 1 /* 8002E438 0002A098 40 82 00 20 */ bne lbl_8002E458 /* 8002E43C 0002A09C 80 1D 00 24 */ lwz r0, 0x24(r29) /* 8002E440 0002A0A0 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E444 0002A0A4 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E448 0002A0A8 90 01 01 6C */ stw r0, 0x16c(r1) /* 8002E44C 0002A0AC C8 01 01 68 */ lfd f0, 0x168(r1) /* 8002E450 0002A0B0 EF E0 08 28 */ fsubs f31, f0, f1 /* 8002E454 0002A0B4 48 00 00 20 */ b lbl_8002E474 lbl_8002E458: /* 8002E458 0002A0B8 2C 00 00 02 */ cmpwi r0, 2 /* 8002E45C 0002A0BC 40 82 00 0C */ bne lbl_8002E468 /* 8002E460 0002A0C0 C0 3D 00 24 */ lfs f1, 0x24(r29) /* 8002E464 0002A0C4 48 00 00 0C */ b lbl_8002E470 lbl_8002E468: /* 8002E468 0002A0C8 38 7D 00 20 */ addi r3, r29, 0x20 /* 8002E46C 0002A0CC 48 1F F9 0D */ bl func_8022DD78 lbl_8002E470: /* 8002E470 0002A0D0 FF E0 08 90 */ fmr f31, f1 lbl_8002E474: /* 8002E474 0002A0D4 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002E478 0002A0D8 2C 00 00 01 */ cmpwi r0, 1 /* 8002E47C 0002A0DC 40 82 00 20 */ bne lbl_8002E49C /* 8002E480 0002A0E0 80 1D 00 1C */ lwz r0, 0x1c(r29) /* 8002E484 0002A0E4 C8 22 81 68 */ lfd f1, lbl_80640768-_SDA2_BASE_(r2) /* 8002E488 0002A0E8 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002E48C 0002A0EC 90 01 01 74 */ stw r0, 0x174(r1) /* 8002E490 0002A0F0 C8 01 01 70 */ lfd f0, 0x170(r1) /* 8002E494 0002A0F4 EC 40 08 28 */ fsubs f2, f0, f1 /* 8002E498 0002A0F8 48 00 00 20 */ b lbl_8002E4B8 lbl_8002E49C: /* 8002E49C 0002A0FC 2C 00 00 02 */ cmpwi r0, 2 /* 8002E4A0 0002A100 40 82 00 0C */ bne lbl_8002E4AC /* 8002E4A4 0002A104 C0 3D 00 1C */ lfs f1, 0x1c(r29) /* 8002E4A8 0002A108 48 00 00 0C */ b lbl_8002E4B4 lbl_8002E4AC: /* 8002E4AC 0002A10C 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002E4B0 0002A110 48 1F F8 C9 */ bl func_8022DD78 lbl_8002E4B4: /* 8002E4B4 0002A114 FC 40 08 90 */ fmr f2, f1 lbl_8002E4B8: /* 8002E4B8 0002A118 FC 20 F8 90 */ fmr f1, f31 /* 8002E4BC 0002A11C 57 63 04 3E */ clrlwi r3, r27, 0x10 /* 8002E4C0 0002A120 38 80 00 00 */ li r4, 0 /* 8002E4C4 0002A124 38 A0 00 00 */ li r5, 0 /* 8002E4C8 0002A128 38 C0 00 01 */ li r6, 1 /* 8002E4CC 0002A12C 48 04 0E 81 */ bl func_8006F34C /* 8002E4D0 0002A130 38 60 00 01 */ li r3, 1 /* 8002E4D4 0002A134 38 00 00 00 */ li r0, 0 /* 8002E4D8 0002A138 B0 7E 00 00 */ sth r3, 0(r30) /* 8002E4DC 0002A13C 90 1E 00 04 */ stw r0, 4(r30) /* 8002E4E0 0002A140 48 00 17 7C */ b lbl_8002FC5C /* 8002E4E4 0002A144 38 60 00 01 */ li r3, 1 /* 8002E4E8 0002A148 38 00 00 00 */ li r0, 0 /* 8002E4EC 0002A14C B0 7E 00 00 */ sth r3, 0(r30) /* 8002E4F0 0002A150 90 1E 00 04 */ stw r0, 4(r30) /* 8002E4F4 0002A154 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E4F8 0002A158 2C 00 00 01 */ cmpwi r0, 1 /* 8002E4FC 0002A15C 40 82 00 0C */ bne lbl_8002E508 /* 8002E500 0002A160 83 7D 00 14 */ lwz r27, 0x14(r29) /* 8002E504 0002A164 48 00 00 2C */ b lbl_8002E530 lbl_8002E508: /* 8002E508 0002A168 2C 00 00 02 */ cmpwi r0, 2 /* 8002E50C 0002A16C 40 82 00 18 */ bne lbl_8002E524 /* 8002E510 0002A170 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002E514 0002A174 FC 00 00 1E */ fctiwz f0, f0 /* 8002E518 0002A178 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E51C 0002A17C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E520 0002A180 48 00 00 0C */ b lbl_8002E52C lbl_8002E524: /* 8002E524 0002A184 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E528 0002A188 48 1F F8 0D */ bl func_8022DD34 lbl_8002E52C: /* 8002E52C 0002A18C 7C 7B 1B 78 */ mr r27, r3 lbl_8002E530: /* 8002E530 0002A190 A8 1D 00 08 */ lha r0, 8(r29) /* 8002E534 0002A194 2C 00 00 01 */ cmpwi r0, 1 /* 8002E538 0002A198 40 82 00 0C */ bne lbl_8002E544 /* 8002E53C 0002A19C 80 9D 00 0C */ lwz r4, 0xc(r29) /* 8002E540 0002A1A0 48 00 00 2C */ b lbl_8002E56C lbl_8002E544: /* 8002E544 0002A1A4 2C 00 00 02 */ cmpwi r0, 2 /* 8002E548 0002A1A8 40 82 00 18 */ bne lbl_8002E560 /* 8002E54C 0002A1AC C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002E550 0002A1B0 FC 00 00 1E */ fctiwz f0, f0 /* 8002E554 0002A1B4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E558 0002A1B8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E55C 0002A1BC 48 00 00 0C */ b lbl_8002E568 lbl_8002E560: /* 8002E560 0002A1C0 38 7D 00 08 */ addi r3, r29, 8 /* 8002E564 0002A1C4 48 1F F7 D1 */ bl func_8022DD34 lbl_8002E568: /* 8002E568 0002A1C8 7C 64 1B 78 */ mr r4, r3 lbl_8002E56C: /* 8002E56C 0002A1CC 2C 1B 00 00 */ cmpwi r27, 0 /* 8002E570 0002A1D0 40 82 00 18 */ bne lbl_8002E588 /* 8002E574 0002A1D4 7F E3 FB 78 */ mr r3, r31 /* 8002E578 0002A1D8 38 A0 00 06 */ li r5, 6 /* 8002E57C 0002A1DC 48 00 7B A1 */ bl func_8003611C /* 8002E580 0002A1E0 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8002E584 0002A1E4 48 00 00 14 */ b lbl_8002E598 lbl_8002E588: /* 8002E588 0002A1E8 7F E3 FB 78 */ mr r3, r31 /* 8002E58C 0002A1EC 38 A0 00 07 */ li r5, 7 /* 8002E590 0002A1F0 48 00 7B 8D */ bl func_8003611C /* 8002E594 0002A1F4 54 63 04 3E */ clrlwi r3, r3, 0x10 lbl_8002E598: /* 8002E598 0002A1F8 4B FF F8 95 */ bl func_8002DE2C /* 8002E59C 0002A1FC 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 8002E5A0 0002A200 7C 7B 1B 78 */ mr r27, r3 /* 8002E5A4 0002A204 41 82 16 B8 */ beq lbl_8002FC5C /* 8002E5A8 0002A208 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002E5AC 0002A20C 2C 00 00 01 */ cmpwi r0, 1 /* 8002E5B0 0002A210 40 82 00 0C */ bne lbl_8002E5BC /* 8002E5B4 0002A214 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002E5B8 0002A218 48 00 00 28 */ b lbl_8002E5E0 lbl_8002E5BC: /* 8002E5BC 0002A21C 2C 00 00 02 */ cmpwi r0, 2 /* 8002E5C0 0002A220 40 82 00 18 */ bne lbl_8002E5D8 /* 8002E5C4 0002A224 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8002E5C8 0002A228 FC 00 00 1E */ fctiwz f0, f0 /* 8002E5CC 0002A22C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E5D0 0002A230 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E5D4 0002A234 48 00 00 0C */ b lbl_8002E5E0 lbl_8002E5D8: /* 8002E5D8 0002A238 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002E5DC 0002A23C 48 1F F7 59 */ bl func_8022DD34 lbl_8002E5E0: /* 8002E5E0 0002A240 C0 22 81 50 */ lfs f1, lbl_80640750-_SDA2_BASE_(r2) /* 8002E5E4 0002A244 7C 03 00 D0 */ neg r0, r3 /* 8002E5E8 0002A248 7C 00 1B 78 */ or r0, r0, r3 /* 8002E5EC 0002A24C 57 63 04 3E */ clrlwi r3, r27, 0x10 /* 8002E5F0 0002A250 FC 40 08 90 */ fmr f2, f1 /* 8002E5F4 0002A254 54 04 0F FE */ srwi r4, r0, 0x1f /* 8002E5F8 0002A258 38 A0 00 00 */ li r5, 0 /* 8002E5FC 0002A25C 38 C0 00 00 */ li r6, 0 /* 8002E600 0002A260 48 04 0D 4D */ bl func_8006F34C /* 8002E604 0002A264 38 00 00 01 */ li r0, 1 /* 8002E608 0002A268 B0 1E 00 00 */ sth r0, 0(r30) /* 8002E60C 0002A26C 90 1E 00 04 */ stw r0, 4(r30) /* 8002E610 0002A270 48 00 16 4C */ b lbl_8002FC5C /* 8002E614 0002A274 A8 1D 00 08 */ lha r0, 8(r29) /* 8002E618 0002A278 2C 00 00 01 */ cmpwi r0, 1 /* 8002E61C 0002A27C 40 82 00 0C */ bne lbl_8002E628 /* 8002E620 0002A280 83 5D 00 0C */ lwz r26, 0xc(r29) /* 8002E624 0002A284 48 00 00 2C */ b lbl_8002E650 lbl_8002E628: /* 8002E628 0002A288 2C 00 00 02 */ cmpwi r0, 2 /* 8002E62C 0002A28C 40 82 00 18 */ bne lbl_8002E644 /* 8002E630 0002A290 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002E634 0002A294 FC 00 00 1E */ fctiwz f0, f0 /* 8002E638 0002A298 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E63C 0002A29C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E640 0002A2A0 48 00 00 0C */ b lbl_8002E64C lbl_8002E644: /* 8002E644 0002A2A4 38 7D 00 08 */ addi r3, r29, 8 /* 8002E648 0002A2A8 48 1F F6 ED */ bl func_8022DD34 lbl_8002E64C: /* 8002E64C 0002A2AC 7C 7A 1B 78 */ mr r26, r3 lbl_8002E650: /* 8002E650 0002A2B0 7F E3 FB 78 */ mr r3, r31 /* 8002E654 0002A2B4 7F 44 D3 78 */ mr r4, r26 /* 8002E658 0002A2B8 38 A0 00 00 */ li r5, 0 /* 8002E65C 0002A2BC 48 00 7A C1 */ bl func_8003611C /* 8002E660 0002A2C0 7C 7E 1B 78 */ mr r30, r3 /* 8002E664 0002A2C4 7F E3 FB 78 */ mr r3, r31 /* 8002E668 0002A2C8 7F 44 D3 78 */ mr r4, r26 /* 8002E66C 0002A2CC 38 A0 00 01 */ li r5, 1 /* 8002E670 0002A2D0 48 00 7A AD */ bl func_8003611C /* 8002E674 0002A2D4 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E678 0002A2D8 7C 79 1B 78 */ mr r25, r3 /* 8002E67C 0002A2DC 2C 00 00 04 */ cmpwi r0, 4 /* 8002E680 0002A2E0 40 82 00 34 */ bne lbl_8002E6B4 /* 8002E684 0002A2E4 40 82 00 0C */ bne lbl_8002E690 /* 8002E688 0002A2E8 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002E68C 0002A2EC 48 00 00 0C */ b lbl_8002E698 lbl_8002E690: /* 8002E690 0002A2F0 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E694 0002A2F4 4B FF 9C 4D */ bl func_800282E0 lbl_8002E698: /* 8002E698 0002A2F8 C0 43 00 00 */ lfs f2, 0(r3) /* 8002E69C 0002A2FC C0 23 00 04 */ lfs f1, 4(r3) /* 8002E6A0 0002A300 C0 03 00 08 */ lfs f0, 8(r3) /* 8002E6A4 0002A304 D0 41 01 5C */ stfs f2, 0x15c(r1) /* 8002E6A8 0002A308 D0 21 01 60 */ stfs f1, 0x160(r1) /* 8002E6AC 0002A30C D0 01 01 64 */ stfs f0, 0x164(r1) /* 8002E6B0 0002A310 48 00 00 14 */ b lbl_8002E6C4 lbl_8002E6B4: /* 8002E6B4 0002A314 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002E6B8 0002A318 D0 01 01 5C */ stfs f0, 0x15c(r1) /* 8002E6BC 0002A31C D0 01 01 60 */ stfs f0, 0x160(r1) /* 8002E6C0 0002A320 D0 01 01 64 */ stfs f0, 0x164(r1) lbl_8002E6C4: /* 8002E6C4 0002A324 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002E6C8 0002A328 2C 00 00 04 */ cmpwi r0, 4 /* 8002E6CC 0002A32C 40 82 00 44 */ bne lbl_8002E710 /* 8002E6D0 0002A330 40 82 00 0C */ bne lbl_8002E6DC /* 8002E6D4 0002A334 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002E6D8 0002A338 48 00 00 0C */ b lbl_8002E6E4 lbl_8002E6DC: /* 8002E6DC 0002A33C 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002E6E0 0002A340 4B FF 9C 01 */ bl func_800282E0 lbl_8002E6E4: /* 8002E6E4 0002A344 C0 43 00 00 */ lfs f2, 0(r3) /* 8002E6E8 0002A348 C0 22 81 54 */ lfs f1, lbl_80640754-_SDA2_BASE_(r2) /* 8002E6EC 0002A34C C0 03 00 08 */ lfs f0, 8(r3) /* 8002E6F0 0002A350 EC 41 00 B2 */ fmuls f2, f1, f2 /* 8002E6F4 0002A354 C0 63 00 04 */ lfs f3, 4(r3) /* 8002E6F8 0002A358 EC 01 00 32 */ fmuls f0, f1, f0 /* 8002E6FC 0002A35C EC 21 00 F2 */ fmuls f1, f1, f3 /* 8002E700 0002A360 D0 41 01 50 */ stfs f2, 0x150(r1) /* 8002E704 0002A364 D0 21 01 54 */ stfs f1, 0x154(r1) /* 8002E708 0002A368 D0 01 01 58 */ stfs f0, 0x158(r1) /* 8002E70C 0002A36C 48 00 00 14 */ b lbl_8002E720 lbl_8002E710: /* 8002E710 0002A370 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002E714 0002A374 D0 01 01 50 */ stfs f0, 0x150(r1) /* 8002E718 0002A378 D0 01 01 54 */ stfs f0, 0x154(r1) /* 8002E71C 0002A37C D0 01 01 58 */ stfs f0, 0x158(r1) lbl_8002E720: /* 8002E720 0002A380 A8 1D 00 20 */ lha r0, 0x20(r29) /* 8002E724 0002A384 2C 00 00 04 */ cmpwi r0, 4 /* 8002E728 0002A388 40 82 00 34 */ bne lbl_8002E75C /* 8002E72C 0002A38C 40 82 00 0C */ bne lbl_8002E738 /* 8002E730 0002A390 80 7D 00 24 */ lwz r3, 0x24(r29) /* 8002E734 0002A394 48 00 00 0C */ b lbl_8002E740 lbl_8002E738: /* 8002E738 0002A398 38 7D 00 20 */ addi r3, r29, 0x20 /* 8002E73C 0002A39C 4B FF 9B A5 */ bl func_800282E0 lbl_8002E740: /* 8002E740 0002A3A0 C0 43 00 00 */ lfs f2, 0(r3) /* 8002E744 0002A3A4 C0 23 00 04 */ lfs f1, 4(r3) /* 8002E748 0002A3A8 C0 03 00 08 */ lfs f0, 8(r3) /* 8002E74C 0002A3AC D0 41 01 44 */ stfs f2, 0x144(r1) /* 8002E750 0002A3B0 D0 21 01 48 */ stfs f1, 0x148(r1) /* 8002E754 0002A3B4 D0 01 01 4C */ stfs f0, 0x14c(r1) /* 8002E758 0002A3B8 48 00 00 14 */ b lbl_8002E76C lbl_8002E75C: /* 8002E75C 0002A3BC C0 02 81 58 */ lfs f0, lbl_80640758-_SDA2_BASE_(r2) /* 8002E760 0002A3C0 D0 01 01 44 */ stfs f0, 0x144(r1) /* 8002E764 0002A3C4 D0 01 01 48 */ stfs f0, 0x148(r1) /* 8002E768 0002A3C8 D0 01 01 4C */ stfs f0, 0x14c(r1) lbl_8002E76C: /* 8002E76C 0002A3CC 7F E3 FB 78 */ mr r3, r31 /* 8002E770 0002A3D0 7F 44 D3 78 */ mr r4, r26 /* 8002E774 0002A3D4 38 A0 00 02 */ li r5, 2 /* 8002E778 0002A3D8 48 00 79 A5 */ bl func_8003611C /* 8002E77C 0002A3DC 7C 7D 1B 78 */ mr r29, r3 /* 8002E780 0002A3E0 7F E3 FB 78 */ mr r3, r31 /* 8002E784 0002A3E4 7F 44 D3 78 */ mr r4, r26 /* 8002E788 0002A3E8 38 A0 00 03 */ li r5, 3 /* 8002E78C 0002A3EC 48 00 79 91 */ bl func_8003611C /* 8002E790 0002A3F0 2C 19 00 00 */ cmpwi r25, 0 /* 8002E794 0002A3F4 7C 7C 1B 78 */ mr r28, r3 /* 8002E798 0002A3F8 41 80 00 0C */ blt lbl_8002E7A4 /* 8002E79C 0002A3FC 2C 19 00 12 */ cmpwi r25, 0x12 /* 8002E7A0 0002A400 40 81 00 0C */ ble lbl_8002E7AC lbl_8002E7A4: /* 8002E7A4 0002A404 2C 19 00 20 */ cmpwi r25, 0x20 /* 8002E7A8 0002A408 40 82 14 B4 */ bne lbl_8002FC5C lbl_8002E7AC: /* 8002E7AC 0002A40C 2C 1D 00 00 */ cmpwi r29, 0 /* 8002E7B0 0002A410 41 82 00 80 */ beq lbl_8002E830 /* 8002E7B4 0002A414 C0 A1 01 44 */ lfs f5, 0x144(r1) /* 8002E7B8 0002A418 7F E3 FB 78 */ mr r3, r31 /* 8002E7BC 0002A41C C0 81 01 48 */ lfs f4, 0x148(r1) /* 8002E7C0 0002A420 7F 44 D3 78 */ mr r4, r26 /* 8002E7C4 0002A424 C0 61 01 4C */ lfs f3, 0x14c(r1) /* 8002E7C8 0002A428 38 A0 00 04 */ li r5, 4 /* 8002E7CC 0002A42C C0 41 01 50 */ lfs f2, 0x150(r1) /* 8002E7D0 0002A430 C0 21 01 54 */ lfs f1, 0x154(r1) /* 8002E7D4 0002A434 C0 01 01 58 */ lfs f0, 0x158(r1) /* 8002E7D8 0002A438 D0 A1 01 2C */ stfs f5, 0x12c(r1) /* 8002E7DC 0002A43C D0 81 01 30 */ stfs f4, 0x130(r1) /* 8002E7E0 0002A440 D0 61 01 34 */ stfs f3, 0x134(r1) /* 8002E7E4 0002A444 D0 41 01 38 */ stfs f2, 0x138(r1) /* 8002E7E8 0002A448 D0 21 01 3C */ stfs f1, 0x13c(r1) /* 8002E7EC 0002A44C D0 01 01 40 */ stfs f0, 0x140(r1) /* 8002E7F0 0002A450 48 00 79 2D */ bl func_8003611C /* 8002E7F4 0002A454 7C 7B 1B 78 */ mr r27, r3 /* 8002E7F8 0002A458 7F E3 FB 78 */ mr r3, r31 /* 8002E7FC 0002A45C 7F 44 D3 78 */ mr r4, r26 /* 8002E800 0002A460 38 A0 00 03 */ li r5, 3 /* 8002E804 0002A464 48 00 79 19 */ bl func_8003611C /* 8002E808 0002A468 C0 21 01 5C */ lfs f1, 0x15c(r1) /* 8002E80C 0002A46C 7C 64 1B 78 */ mr r4, r3 /* 8002E810 0002A470 C0 41 01 60 */ lfs f2, 0x160(r1) /* 8002E814 0002A474 7F A5 EB 78 */ mr r5, r29 /* 8002E818 0002A478 7F 66 DB 78 */ mr r6, r27 /* 8002E81C 0002A47C 7F C7 F3 78 */ mr r7, r30 /* 8002E820 0002A480 7F 28 CB 78 */ mr r8, r25 /* 8002E824 0002A484 38 61 01 38 */ addi r3, r1, 0x138 /* 8002E828 0002A488 39 21 01 2C */ addi r9, r1, 0x12c /* 8002E82C 0002A48C 48 04 0E 1D */ bl func_8006F648 lbl_8002E830: /* 8002E830 0002A490 7F E3 FB 78 */ mr r3, r31 /* 8002E834 0002A494 7F 44 D3 78 */ mr r4, r26 /* 8002E838 0002A498 57 86 04 3E */ clrlwi r6, r28, 0x10 /* 8002E83C 0002A49C 38 A0 00 02 */ li r5, 2 /* 8002E840 0002A4A0 48 00 7A C9 */ bl func_80036308 /* 8002E844 0002A4A4 48 00 14 18 */ b lbl_8002FC5C /* 8002E848 0002A4A8 A8 1D 00 08 */ lha r0, 8(r29) /* 8002E84C 0002A4AC 2C 00 00 01 */ cmpwi r0, 1 /* 8002E850 0002A4B0 40 82 00 0C */ bne lbl_8002E85C /* 8002E854 0002A4B4 83 3D 00 0C */ lwz r25, 0xc(r29) /* 8002E858 0002A4B8 48 00 00 2C */ b lbl_8002E884 lbl_8002E85C: /* 8002E85C 0002A4BC 2C 00 00 02 */ cmpwi r0, 2 /* 8002E860 0002A4C0 40 82 00 18 */ bne lbl_8002E878 /* 8002E864 0002A4C4 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002E868 0002A4C8 FC 00 00 1E */ fctiwz f0, f0 /* 8002E86C 0002A4CC D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002E870 0002A4D0 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002E874 0002A4D4 48 00 00 0C */ b lbl_8002E880 lbl_8002E878: /* 8002E878 0002A4D8 38 7D 00 08 */ addi r3, r29, 8 /* 8002E87C 0002A4DC 48 1F F4 B9 */ bl func_8022DD34 lbl_8002E880: /* 8002E880 0002A4E0 7C 79 1B 78 */ mr r25, r3 lbl_8002E884: /* 8002E884 0002A4E4 7F E3 FB 78 */ mr r3, r31 /* 8002E888 0002A4E8 7F 24 CB 78 */ mr r4, r25 /* 8002E88C 0002A4EC 38 A0 00 00 */ li r5, 0 /* 8002E890 0002A4F0 48 00 7B 89 */ bl func_80036418 /* 8002E894 0002A4F4 7C 7A 1B 78 */ mr r26, r3 /* 8002E898 0002A4F8 7F E3 FB 78 */ mr r3, r31 /* 8002E89C 0002A4FC 7F 24 CB 78 */ mr r4, r25 /* 8002E8A0 0002A500 38 A0 00 09 */ li r5, 9 /* 8002E8A4 0002A504 48 00 7B 75 */ bl func_80036418 /* 8002E8A8 0002A508 38 80 00 01 */ li r4, 1 /* 8002E8AC 0002A50C 38 00 00 00 */ li r0, 0 /* 8002E8B0 0002A510 B0 9E 00 00 */ sth r4, 0(r30) /* 8002E8B4 0002A514 7C 7B 1B 78 */ mr r27, r3 /* 8002E8B8 0002A518 90 1E 00 04 */ stw r0, 4(r30) /* 8002E8BC 0002A51C A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002E8C0 0002A520 2C 00 00 04 */ cmpwi r0, 4 /* 8002E8C4 0002A524 40 82 00 34 */ bne lbl_8002E8F8 /* 8002E8C8 0002A528 40 82 00 0C */ bne lbl_8002E8D4 /* 8002E8CC 0002A52C 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002E8D0 0002A530 48 00 00 0C */ b lbl_8002E8DC lbl_8002E8D4: /* 8002E8D4 0002A534 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002E8D8 0002A538 4B FF 9A 09 */ bl func_800282E0 lbl_8002E8DC: /* 8002E8DC 0002A53C C0 43 00 00 */ lfs f2, 0(r3) /* 8002E8E0 0002A540 C0 23 00 04 */ lfs f1, 4(r3) /* 8002E8E4 0002A544 C0 03 00 08 */ lfs f0, 8(r3) /* 8002E8E8 0002A548 D0 41 01 5C */ stfs f2, 0x15c(r1) /* 8002E8EC 0002A54C D0 21 01 60 */ stfs f1, 0x160(r1) /* 8002E8F0 0002A550 D0 01 01 64 */ stfs f0, 0x164(r1) /* 8002E8F4 0002A554 48 00 00 14 */ b lbl_8002E908 lbl_8002E8F8: /* 8002E8F8 0002A558 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002E8FC 0002A55C D0 01 01 5C */ stfs f0, 0x15c(r1) /* 8002E900 0002A560 D0 01 01 60 */ stfs f0, 0x160(r1) /* 8002E904 0002A564 D0 01 01 64 */ stfs f0, 0x164(r1) lbl_8002E908: /* 8002E908 0002A568 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002E90C 0002A56C 2C 00 00 04 */ cmpwi r0, 4 /* 8002E910 0002A570 40 82 00 44 */ bne lbl_8002E954 /* 8002E914 0002A574 40 82 00 0C */ bne lbl_8002E920 /* 8002E918 0002A578 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002E91C 0002A57C 48 00 00 0C */ b lbl_8002E928 lbl_8002E920: /* 8002E920 0002A580 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002E924 0002A584 4B FF 99 BD */ bl func_800282E0 lbl_8002E928: /* 8002E928 0002A588 C0 43 00 00 */ lfs f2, 0(r3) /* 8002E92C 0002A58C C0 22 81 54 */ lfs f1, lbl_80640754-_SDA2_BASE_(r2) /* 8002E930 0002A590 C0 03 00 08 */ lfs f0, 8(r3) /* 8002E934 0002A594 EC 41 00 B2 */ fmuls f2, f1, f2 /* 8002E938 0002A598 C0 63 00 04 */ lfs f3, 4(r3) /* 8002E93C 0002A59C EC 01 00 32 */ fmuls f0, f1, f0 /* 8002E940 0002A5A0 EC 21 00 F2 */ fmuls f1, f1, f3 /* 8002E944 0002A5A4 D0 41 01 50 */ stfs f2, 0x150(r1) /* 8002E948 0002A5A8 D0 21 01 54 */ stfs f1, 0x154(r1) /* 8002E94C 0002A5AC D0 01 01 58 */ stfs f0, 0x158(r1) /* 8002E950 0002A5B0 48 00 00 14 */ b lbl_8002E964 lbl_8002E954: /* 8002E954 0002A5B4 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002E958 0002A5B8 D0 01 01 50 */ stfs f0, 0x150(r1) /* 8002E95C 0002A5BC D0 01 01 54 */ stfs f0, 0x154(r1) /* 8002E960 0002A5C0 D0 01 01 58 */ stfs f0, 0x158(r1) lbl_8002E964: /* 8002E964 0002A5C4 A8 1D 00 20 */ lha r0, 0x20(r29) /* 8002E968 0002A5C8 2C 00 00 04 */ cmpwi r0, 4 /* 8002E96C 0002A5CC 40 82 00 34 */ bne lbl_8002E9A0 /* 8002E970 0002A5D0 40 82 00 0C */ bne lbl_8002E97C /* 8002E974 0002A5D4 80 7D 00 24 */ lwz r3, 0x24(r29) /* 8002E978 0002A5D8 48 00 00 0C */ b lbl_8002E984 lbl_8002E97C: /* 8002E97C 0002A5DC 38 7D 00 20 */ addi r3, r29, 0x20 /* 8002E980 0002A5E0 4B FF 99 61 */ bl func_800282E0 lbl_8002E984: /* 8002E984 0002A5E4 C0 43 00 00 */ lfs f2, 0(r3) /* 8002E988 0002A5E8 C0 23 00 04 */ lfs f1, 4(r3) /* 8002E98C 0002A5EC C0 03 00 08 */ lfs f0, 8(r3) /* 8002E990 0002A5F0 D0 41 01 44 */ stfs f2, 0x144(r1) /* 8002E994 0002A5F4 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 8002E998 0002A5F8 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 8002E99C 0002A5FC 48 00 00 14 */ b lbl_8002E9B0 lbl_8002E9A0: /* 8002E9A0 0002A600 C0 02 81 58 */ lfs f0, lbl_80640758-_SDA2_BASE_(r2) /* 8002E9A4 0002A604 D0 01 00 30 */ stfs f0, 0x30(r1) /* 8002E9A8 0002A608 D0 01 00 40 */ stfs f0, 0x40(r1) /* 8002E9AC 0002A60C D0 01 00 50 */ stfs f0, 0x50(r1) lbl_8002E9B0: /* 8002E9B0 0002A610 7F E3 FB 78 */ mr r3, r31 /* 8002E9B4 0002A614 7F 24 CB 78 */ mr r4, r25 /* 8002E9B8 0002A618 38 A0 00 07 */ li r5, 7 /* 8002E9BC 0002A61C 48 00 7A 5D */ bl func_80036418 /* 8002E9C0 0002A620 7C 7C 1B 78 */ mr r28, r3 /* 8002E9C4 0002A624 7F E3 FB 78 */ mr r3, r31 /* 8002E9C8 0002A628 7F 24 CB 78 */ mr r4, r25 /* 8002E9CC 0002A62C 38 A0 00 06 */ li r5, 6 /* 8002E9D0 0002A630 48 00 7A 49 */ bl func_80036418 /* 8002E9D4 0002A634 7C 7D 1B 78 */ mr r29, r3 /* 8002E9D8 0002A638 7F E3 FB 78 */ mr r3, r31 /* 8002E9DC 0002A63C 7F 24 CB 78 */ mr r4, r25 /* 8002E9E0 0002A640 38 A0 00 02 */ li r5, 2 /* 8002E9E4 0002A644 48 00 7A 35 */ bl func_80036418 /* 8002E9E8 0002A648 2C 03 00 01 */ cmpwi r3, 1 /* 8002E9EC 0002A64C 41 82 00 0C */ beq lbl_8002E9F8 /* 8002E9F0 0002A650 2C 03 00 03 */ cmpwi r3, 3 /* 8002E9F4 0002A654 40 82 12 68 */ bne lbl_8002FC5C lbl_8002E9F8: /* 8002E9F8 0002A658 2C 1D 00 00 */ cmpwi r29, 0 /* 8002E9FC 0002A65C 41 82 00 70 */ beq lbl_8002EA6C /* 8002EA00 0002A660 38 00 00 01 */ li r0, 1 /* 8002EA04 0002A664 C0 62 81 58 */ lfs f3, lbl_80640758-_SDA2_BASE_(r2) /* 8002EA08 0002A668 B0 1E 00 00 */ sth r0, 0(r30) /* 8002EA0C 0002A66C 7F E3 FB 78 */ mr r3, r31 /* 8002EA10 0002A670 C0 41 01 50 */ lfs f2, 0x150(r1) /* 8002EA14 0002A674 7F 24 CB 78 */ mr r4, r25 /* 8002EA18 0002A678 90 1E 00 04 */ stw r0, 4(r30) /* 8002EA1C 0002A67C 38 A0 00 08 */ li r5, 8 /* 8002EA20 0002A680 C0 21 01 54 */ lfs f1, 0x154(r1) /* 8002EA24 0002A684 C0 01 01 58 */ lfs f0, 0x158(r1) /* 8002EA28 0002A688 D0 61 01 14 */ stfs f3, 0x114(r1) /* 8002EA2C 0002A68C D0 61 01 18 */ stfs f3, 0x118(r1) /* 8002EA30 0002A690 D0 61 01 1C */ stfs f3, 0x11c(r1) /* 8002EA34 0002A694 D0 41 01 20 */ stfs f2, 0x120(r1) /* 8002EA38 0002A698 D0 21 01 24 */ stfs f1, 0x124(r1) /* 8002EA3C 0002A69C D0 01 01 28 */ stfs f0, 0x128(r1) /* 8002EA40 0002A6A0 48 00 79 D9 */ bl func_80036418 /* 8002EA44 0002A6A4 C0 21 01 5C */ lfs f1, 0x15c(r1) /* 8002EA48 0002A6A8 7C 66 1B 78 */ mr r6, r3 /* 8002EA4C 0002A6AC C0 41 01 60 */ lfs f2, 0x160(r1) /* 8002EA50 0002A6B0 7F 84 E3 78 */ mr r4, r28 /* 8002EA54 0002A6B4 7F A5 EB 78 */ mr r5, r29 /* 8002EA58 0002A6B8 7F 47 D3 78 */ mr r7, r26 /* 8002EA5C 0002A6BC 7F 68 DB 78 */ mr r8, r27 /* 8002EA60 0002A6C0 38 61 01 20 */ addi r3, r1, 0x120 /* 8002EA64 0002A6C4 39 21 01 14 */ addi r9, r1, 0x114 /* 8002EA68 0002A6C8 48 04 0B E1 */ bl func_8006F648 lbl_8002EA6C: /* 8002EA6C 0002A6CC 3B 20 00 00 */ li r25, 0 lbl_8002EA70: /* 8002EA70 0002A6D0 7F E3 FB 78 */ mr r3, r31 /* 8002EA74 0002A6D4 7F 24 CB 78 */ mr r4, r25 /* 8002EA78 0002A6D8 38 A0 00 00 */ li r5, 0 /* 8002EA7C 0002A6DC 48 00 76 A1 */ bl func_8003611C /* 8002EA80 0002A6E0 7C 1A 18 00 */ cmpw r26, r3 /* 8002EA84 0002A6E4 40 82 00 1C */ bne lbl_8002EAA0 /* 8002EA88 0002A6E8 7F E3 FB 78 */ mr r3, r31 /* 8002EA8C 0002A6EC 7F 24 CB 78 */ mr r4, r25 /* 8002EA90 0002A6F0 7F 86 E3 78 */ mr r6, r28 /* 8002EA94 0002A6F4 38 A0 00 02 */ li r5, 2 /* 8002EA98 0002A6F8 48 00 78 71 */ bl func_80036308 /* 8002EA9C 0002A6FC 48 00 11 C0 */ b lbl_8002FC5C lbl_8002EAA0: /* 8002EAA0 0002A700 3B 39 00 01 */ addi r25, r25, 1 /* 8002EAA4 0002A704 2C 19 00 04 */ cmpwi r25, 4 /* 8002EAA8 0002A708 41 80 FF C8 */ blt lbl_8002EA70 /* 8002EAAC 0002A70C 48 00 11 B0 */ b lbl_8002FC5C /* 8002EAB0 0002A710 A8 1D 00 08 */ lha r0, 8(r29) /* 8002EAB4 0002A714 2C 00 00 01 */ cmpwi r0, 1 /* 8002EAB8 0002A718 40 82 00 0C */ bne lbl_8002EAC4 /* 8002EABC 0002A71C 83 3D 00 0C */ lwz r25, 0xc(r29) /* 8002EAC0 0002A720 48 00 00 2C */ b lbl_8002EAEC lbl_8002EAC4: /* 8002EAC4 0002A724 2C 00 00 02 */ cmpwi r0, 2 /* 8002EAC8 0002A728 40 82 00 18 */ bne lbl_8002EAE0 /* 8002EACC 0002A72C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002EAD0 0002A730 FC 00 00 1E */ fctiwz f0, f0 /* 8002EAD4 0002A734 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EAD8 0002A738 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EADC 0002A73C 48 00 00 0C */ b lbl_8002EAE8 lbl_8002EAE0: /* 8002EAE0 0002A740 38 7D 00 08 */ addi r3, r29, 8 /* 8002EAE4 0002A744 48 1F F2 51 */ bl func_8022DD34 lbl_8002EAE8: /* 8002EAE8 0002A748 7C 79 1B 78 */ mr r25, r3 lbl_8002EAEC: /* 8002EAEC 0002A74C 7F E3 FB 78 */ mr r3, r31 /* 8002EAF0 0002A750 7F 24 CB 78 */ mr r4, r25 /* 8002EAF4 0002A754 38 A0 00 00 */ li r5, 0 /* 8002EAF8 0002A758 48 00 76 25 */ bl func_8003611C /* 8002EAFC 0002A75C 7C 7A 1B 78 */ mr r26, r3 /* 8002EB00 0002A760 7F E3 FB 78 */ mr r3, r31 /* 8002EB04 0002A764 7F 24 CB 78 */ mr r4, r25 /* 8002EB08 0002A768 38 A0 00 01 */ li r5, 1 /* 8002EB0C 0002A76C 48 00 76 11 */ bl func_8003611C /* 8002EB10 0002A770 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002EB14 0002A774 7C 7C 1B 78 */ mr r28, r3 /* 8002EB18 0002A778 2C 00 00 04 */ cmpwi r0, 4 /* 8002EB1C 0002A77C 40 82 00 34 */ bne lbl_8002EB50 /* 8002EB20 0002A780 40 82 00 0C */ bne lbl_8002EB2C /* 8002EB24 0002A784 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002EB28 0002A788 48 00 00 0C */ b lbl_8002EB34 lbl_8002EB2C: /* 8002EB2C 0002A78C 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002EB30 0002A790 4B FF 97 B1 */ bl func_800282E0 lbl_8002EB34: /* 8002EB34 0002A794 C0 43 00 00 */ lfs f2, 0(r3) /* 8002EB38 0002A798 C0 23 00 04 */ lfs f1, 4(r3) /* 8002EB3C 0002A79C C0 03 00 08 */ lfs f0, 8(r3) /* 8002EB40 0002A7A0 D0 41 01 5C */ stfs f2, 0x15c(r1) /* 8002EB44 0002A7A4 D0 21 01 60 */ stfs f1, 0x160(r1) /* 8002EB48 0002A7A8 D0 01 01 64 */ stfs f0, 0x164(r1) /* 8002EB4C 0002A7AC 48 00 00 14 */ b lbl_8002EB60 lbl_8002EB50: /* 8002EB50 0002A7B0 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002EB54 0002A7B4 D0 01 01 5C */ stfs f0, 0x15c(r1) /* 8002EB58 0002A7B8 D0 01 01 60 */ stfs f0, 0x160(r1) /* 8002EB5C 0002A7BC D0 01 01 64 */ stfs f0, 0x164(r1) lbl_8002EB60: /* 8002EB60 0002A7C0 A8 1D 00 20 */ lha r0, 0x20(r29) /* 8002EB64 0002A7C4 2C 00 00 04 */ cmpwi r0, 4 /* 8002EB68 0002A7C8 40 82 00 44 */ bne lbl_8002EBAC /* 8002EB6C 0002A7CC 40 82 00 0C */ bne lbl_8002EB78 /* 8002EB70 0002A7D0 80 7D 00 24 */ lwz r3, 0x24(r29) /* 8002EB74 0002A7D4 48 00 00 0C */ b lbl_8002EB80 lbl_8002EB78: /* 8002EB78 0002A7D8 38 7D 00 20 */ addi r3, r29, 0x20 /* 8002EB7C 0002A7DC 4B FF 97 65 */ bl func_800282E0 lbl_8002EB80: /* 8002EB80 0002A7E0 C0 43 00 00 */ lfs f2, 0(r3) /* 8002EB84 0002A7E4 C0 22 81 54 */ lfs f1, lbl_80640754-_SDA2_BASE_(r2) /* 8002EB88 0002A7E8 C0 03 00 08 */ lfs f0, 8(r3) /* 8002EB8C 0002A7EC EC 41 00 B2 */ fmuls f2, f1, f2 /* 8002EB90 0002A7F0 C0 63 00 04 */ lfs f3, 4(r3) /* 8002EB94 0002A7F4 EC 01 00 32 */ fmuls f0, f1, f0 /* 8002EB98 0002A7F8 EC 21 00 F2 */ fmuls f1, f1, f3 /* 8002EB9C 0002A7FC D0 41 01 50 */ stfs f2, 0x150(r1) /* 8002EBA0 0002A800 D0 21 01 54 */ stfs f1, 0x154(r1) /* 8002EBA4 0002A804 D0 01 01 58 */ stfs f0, 0x158(r1) /* 8002EBA8 0002A808 48 00 00 14 */ b lbl_8002EBBC lbl_8002EBAC: /* 8002EBAC 0002A80C C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002EBB0 0002A810 D0 01 01 50 */ stfs f0, 0x150(r1) /* 8002EBB4 0002A814 D0 01 01 54 */ stfs f0, 0x154(r1) /* 8002EBB8 0002A818 D0 01 01 58 */ stfs f0, 0x158(r1) lbl_8002EBBC: /* 8002EBBC 0002A81C A8 1D 00 28 */ lha r0, 0x28(r29) /* 8002EBC0 0002A820 2C 00 00 04 */ cmpwi r0, 4 /* 8002EBC4 0002A824 40 82 00 34 */ bne lbl_8002EBF8 /* 8002EBC8 0002A828 40 82 00 0C */ bne lbl_8002EBD4 /* 8002EBCC 0002A82C 80 7D 00 2C */ lwz r3, 0x2c(r29) /* 8002EBD0 0002A830 48 00 00 0C */ b lbl_8002EBDC lbl_8002EBD4: /* 8002EBD4 0002A834 38 7D 00 28 */ addi r3, r29, 0x28 /* 8002EBD8 0002A838 4B FF 97 09 */ bl func_800282E0 lbl_8002EBDC: /* 8002EBDC 0002A83C C0 43 00 00 */ lfs f2, 0(r3) /* 8002EBE0 0002A840 C0 23 00 04 */ lfs f1, 4(r3) /* 8002EBE4 0002A844 C0 03 00 08 */ lfs f0, 8(r3) /* 8002EBE8 0002A848 D0 41 00 54 */ stfs f2, 0x54(r1) /* 8002EBEC 0002A84C D0 21 00 64 */ stfs f1, 0x64(r1) /* 8002EBF0 0002A850 D0 01 00 74 */ stfs f0, 0x74(r1) /* 8002EBF4 0002A854 48 00 00 14 */ b lbl_8002EC08 lbl_8002EBF8: /* 8002EBF8 0002A858 C0 02 81 58 */ lfs f0, lbl_80640758-_SDA2_BASE_(r2) /* 8002EBFC 0002A85C D0 01 00 78 */ stfs f0, 0x78(r1) /* 8002EC00 0002A860 D0 01 00 88 */ stfs f0, 0x88(r1) /* 8002EC04 0002A864 D0 01 00 98 */ stfs f0, 0x98(r1) lbl_8002EC08: /* 8002EC08 0002A868 2C 1C 00 00 */ cmpwi r28, 0 /* 8002EC0C 0002A86C 41 80 00 0C */ blt lbl_8002EC18 /* 8002EC10 0002A870 2C 1C 00 12 */ cmpwi r28, 0x12 /* 8002EC14 0002A874 40 81 00 0C */ ble lbl_8002EC20 lbl_8002EC18: /* 8002EC18 0002A878 2C 1C 00 20 */ cmpwi r28, 0x20 /* 8002EC1C 0002A87C 40 82 10 40 */ bne lbl_8002FC5C lbl_8002EC20: /* 8002EC20 0002A880 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002EC24 0002A884 2C 00 00 01 */ cmpwi r0, 1 /* 8002EC28 0002A888 40 82 00 0C */ bne lbl_8002EC34 /* 8002EC2C 0002A88C 83 7D 00 14 */ lwz r27, 0x14(r29) /* 8002EC30 0002A890 48 00 00 2C */ b lbl_8002EC5C lbl_8002EC34: /* 8002EC34 0002A894 2C 00 00 02 */ cmpwi r0, 2 /* 8002EC38 0002A898 40 82 00 18 */ bne lbl_8002EC50 /* 8002EC3C 0002A89C C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002EC40 0002A8A0 FC 00 00 1E */ fctiwz f0, f0 /* 8002EC44 0002A8A4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EC48 0002A8A8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EC4C 0002A8AC 48 00 00 0C */ b lbl_8002EC58 lbl_8002EC50: /* 8002EC50 0002A8B0 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002EC54 0002A8B4 48 1F F0 E1 */ bl func_8022DD34 lbl_8002EC58: /* 8002EC58 0002A8B8 7C 7B 1B 78 */ mr r27, r3 lbl_8002EC5C: /* 8002EC5C 0002A8BC 7F E3 FB 78 */ mr r3, r31 /* 8002EC60 0002A8C0 7F 24 CB 78 */ mr r4, r25 /* 8002EC64 0002A8C4 38 A0 00 02 */ li r5, 2 /* 8002EC68 0002A8C8 48 00 74 B5 */ bl func_8003611C /* 8002EC6C 0002A8CC 2C 1B 00 02 */ cmpwi r27, 2 /* 8002EC70 0002A8D0 7C 7E 1B 78 */ mr r30, r3 /* 8002EC74 0002A8D4 41 82 00 58 */ beq lbl_8002ECCC /* 8002EC78 0002A8D8 40 80 00 14 */ bge lbl_8002EC8C /* 8002EC7C 0002A8DC 2C 1B 00 00 */ cmpwi r27, 0 /* 8002EC80 0002A8E0 41 82 00 1C */ beq lbl_8002EC9C /* 8002EC84 0002A8E4 40 80 00 30 */ bge lbl_8002ECB4 /* 8002EC88 0002A8E8 48 00 00 88 */ b lbl_8002ED10 lbl_8002EC8C: /* 8002EC8C 0002A8EC 2C 1B 00 04 */ cmpwi r27, 4 /* 8002EC90 0002A8F0 41 82 00 6C */ beq lbl_8002ECFC /* 8002EC94 0002A8F4 40 80 00 7C */ bge lbl_8002ED10 /* 8002EC98 0002A8F8 48 00 00 4C */ b lbl_8002ECE4 lbl_8002EC9C: /* 8002EC9C 0002A8FC 7F E3 FB 78 */ mr r3, r31 /* 8002ECA0 0002A900 7F 24 CB 78 */ mr r4, r25 /* 8002ECA4 0002A904 38 A0 00 03 */ li r5, 3 /* 8002ECA8 0002A908 48 00 74 75 */ bl func_8003611C /* 8002ECAC 0002A90C 7C 7D 1B 78 */ mr r29, r3 /* 8002ECB0 0002A910 48 00 00 60 */ b lbl_8002ED10 lbl_8002ECB4: /* 8002ECB4 0002A914 7F E3 FB 78 */ mr r3, r31 /* 8002ECB8 0002A918 7F 24 CB 78 */ mr r4, r25 /* 8002ECBC 0002A91C 38 A0 00 09 */ li r5, 9 /* 8002ECC0 0002A920 48 00 74 5D */ bl func_8003611C /* 8002ECC4 0002A924 7C 7D 1B 78 */ mr r29, r3 /* 8002ECC8 0002A928 48 00 00 48 */ b lbl_8002ED10 lbl_8002ECCC: /* 8002ECCC 0002A92C 7F E3 FB 78 */ mr r3, r31 /* 8002ECD0 0002A930 7F 24 CB 78 */ mr r4, r25 /* 8002ECD4 0002A934 38 A0 00 0A */ li r5, 0xa /* 8002ECD8 0002A938 48 00 74 45 */ bl func_8003611C /* 8002ECDC 0002A93C 7C 7D 1B 78 */ mr r29, r3 /* 8002ECE0 0002A940 48 00 00 30 */ b lbl_8002ED10 lbl_8002ECE4: /* 8002ECE4 0002A944 7F E3 FB 78 */ mr r3, r31 /* 8002ECE8 0002A948 7F 24 CB 78 */ mr r4, r25 /* 8002ECEC 0002A94C 38 A0 00 0B */ li r5, 0xb /* 8002ECF0 0002A950 48 00 74 2D */ bl func_8003611C /* 8002ECF4 0002A954 7C 7D 1B 78 */ mr r29, r3 /* 8002ECF8 0002A958 48 00 00 18 */ b lbl_8002ED10 lbl_8002ECFC: /* 8002ECFC 0002A95C 7F E3 FB 78 */ mr r3, r31 /* 8002ED00 0002A960 7F 24 CB 78 */ mr r4, r25 /* 8002ED04 0002A964 38 A0 00 0C */ li r5, 0xc /* 8002ED08 0002A968 48 00 74 15 */ bl func_8003611C /* 8002ED0C 0002A96C 7C 7D 1B 78 */ mr r29, r3 lbl_8002ED10: /* 8002ED10 0002A970 2C 1E 00 00 */ cmpwi r30, 0 /* 8002ED14 0002A974 41 82 00 64 */ beq lbl_8002ED78 /* 8002ED18 0002A978 C0 62 81 58 */ lfs f3, lbl_80640758-_SDA2_BASE_(r2) /* 8002ED1C 0002A97C 7F E3 FB 78 */ mr r3, r31 /* 8002ED20 0002A980 C0 41 01 50 */ lfs f2, 0x150(r1) /* 8002ED24 0002A984 7F 24 CB 78 */ mr r4, r25 /* 8002ED28 0002A988 C0 21 01 54 */ lfs f1, 0x154(r1) /* 8002ED2C 0002A98C 38 A0 00 04 */ li r5, 4 /* 8002ED30 0002A990 C0 01 01 58 */ lfs f0, 0x158(r1) /* 8002ED34 0002A994 D0 61 00 FC */ stfs f3, 0xfc(r1) /* 8002ED38 0002A998 D0 61 01 00 */ stfs f3, 0x100(r1) /* 8002ED3C 0002A99C D0 61 01 04 */ stfs f3, 0x104(r1) /* 8002ED40 0002A9A0 D0 41 01 08 */ stfs f2, 0x108(r1) /* 8002ED44 0002A9A4 D0 21 01 0C */ stfs f1, 0x10c(r1) /* 8002ED48 0002A9A8 D0 01 01 10 */ stfs f0, 0x110(r1) /* 8002ED4C 0002A9AC 48 00 73 D1 */ bl func_8003611C /* 8002ED50 0002A9B0 C0 21 01 5C */ lfs f1, 0x15c(r1) /* 8002ED54 0002A9B4 7C 66 1B 78 */ mr r6, r3 /* 8002ED58 0002A9B8 C0 41 01 60 */ lfs f2, 0x160(r1) /* 8002ED5C 0002A9BC 7F A4 EB 78 */ mr r4, r29 /* 8002ED60 0002A9C0 7F C5 F3 78 */ mr r5, r30 /* 8002ED64 0002A9C4 7F 47 D3 78 */ mr r7, r26 /* 8002ED68 0002A9C8 7F 88 E3 78 */ mr r8, r28 /* 8002ED6C 0002A9CC 38 61 01 08 */ addi r3, r1, 0x108 /* 8002ED70 0002A9D0 39 21 00 FC */ addi r9, r1, 0xfc /* 8002ED74 0002A9D4 48 04 08 D5 */ bl func_8006F648 lbl_8002ED78: /* 8002ED78 0002A9D8 7F E3 FB 78 */ mr r3, r31 /* 8002ED7C 0002A9DC 7F 24 CB 78 */ mr r4, r25 /* 8002ED80 0002A9E0 7F A6 EB 78 */ mr r6, r29 /* 8002ED84 0002A9E4 38 A0 00 02 */ li r5, 2 /* 8002ED88 0002A9E8 48 00 75 81 */ bl func_80036308 /* 8002ED8C 0002A9EC 48 00 0E D0 */ b lbl_8002FC5C /* 8002ED90 0002A9F0 A8 1D 00 28 */ lha r0, 0x28(r29) /* 8002ED94 0002A9F4 2C 00 00 01 */ cmpwi r0, 1 /* 8002ED98 0002A9F8 40 82 00 0C */ bne lbl_8002EDA4 /* 8002ED9C 0002A9FC 83 3D 00 2C */ lwz r25, 0x2c(r29) /* 8002EDA0 0002AA00 48 00 00 2C */ b lbl_8002EDCC lbl_8002EDA4: /* 8002EDA4 0002AA04 2C 00 00 02 */ cmpwi r0, 2 /* 8002EDA8 0002AA08 40 82 00 18 */ bne lbl_8002EDC0 /* 8002EDAC 0002AA0C C0 1D 00 2C */ lfs f0, 0x2c(r29) /* 8002EDB0 0002AA10 FC 00 00 1E */ fctiwz f0, f0 /* 8002EDB4 0002AA14 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EDB8 0002AA18 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EDBC 0002AA1C 48 00 00 0C */ b lbl_8002EDC8 lbl_8002EDC0: /* 8002EDC0 0002AA20 38 7D 00 28 */ addi r3, r29, 0x28 /* 8002EDC4 0002AA24 48 1F EF 71 */ bl func_8022DD34 lbl_8002EDC8: /* 8002EDC8 0002AA28 7C 79 1B 78 */ mr r25, r3 lbl_8002EDCC: /* 8002EDCC 0002AA2C A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002EDD0 0002AA30 2C 00 00 04 */ cmpwi r0, 4 /* 8002EDD4 0002AA34 40 82 00 34 */ bne lbl_8002EE08 /* 8002EDD8 0002AA38 40 82 00 0C */ bne lbl_8002EDE4 /* 8002EDDC 0002AA3C 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002EDE0 0002AA40 48 00 00 0C */ b lbl_8002EDEC lbl_8002EDE4: /* 8002EDE4 0002AA44 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002EDE8 0002AA48 4B FF 94 F9 */ bl func_800282E0 lbl_8002EDEC: /* 8002EDEC 0002AA4C C0 43 00 00 */ lfs f2, 0(r3) /* 8002EDF0 0002AA50 C0 23 00 04 */ lfs f1, 4(r3) /* 8002EDF4 0002AA54 C0 03 00 08 */ lfs f0, 8(r3) /* 8002EDF8 0002AA58 D0 41 01 5C */ stfs f2, 0x15c(r1) /* 8002EDFC 0002AA5C D0 21 01 60 */ stfs f1, 0x160(r1) /* 8002EE00 0002AA60 D0 01 01 64 */ stfs f0, 0x164(r1) /* 8002EE04 0002AA64 48 00 00 14 */ b lbl_8002EE18 lbl_8002EE08: /* 8002EE08 0002AA68 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002EE0C 0002AA6C D0 01 01 5C */ stfs f0, 0x15c(r1) /* 8002EE10 0002AA70 D0 01 01 60 */ stfs f0, 0x160(r1) /* 8002EE14 0002AA74 D0 01 01 64 */ stfs f0, 0x164(r1) lbl_8002EE18: /* 8002EE18 0002AA78 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002EE1C 0002AA7C 2C 00 00 04 */ cmpwi r0, 4 /* 8002EE20 0002AA80 40 82 00 44 */ bne lbl_8002EE64 /* 8002EE24 0002AA84 40 82 00 0C */ bne lbl_8002EE30 /* 8002EE28 0002AA88 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002EE2C 0002AA8C 48 00 00 0C */ b lbl_8002EE38 lbl_8002EE30: /* 8002EE30 0002AA90 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002EE34 0002AA94 4B FF 94 AD */ bl func_800282E0 lbl_8002EE38: /* 8002EE38 0002AA98 C0 43 00 00 */ lfs f2, 0(r3) /* 8002EE3C 0002AA9C C0 22 81 54 */ lfs f1, lbl_80640754-_SDA2_BASE_(r2) /* 8002EE40 0002AAA0 C0 03 00 08 */ lfs f0, 8(r3) /* 8002EE44 0002AAA4 EC 41 00 B2 */ fmuls f2, f1, f2 /* 8002EE48 0002AAA8 C0 63 00 04 */ lfs f3, 4(r3) /* 8002EE4C 0002AAAC EC 01 00 32 */ fmuls f0, f1, f0 /* 8002EE50 0002AAB0 EC 21 00 F2 */ fmuls f1, f1, f3 /* 8002EE54 0002AAB4 D0 41 01 50 */ stfs f2, 0x150(r1) /* 8002EE58 0002AAB8 D0 21 01 54 */ stfs f1, 0x154(r1) /* 8002EE5C 0002AABC D0 01 01 58 */ stfs f0, 0x158(r1) /* 8002EE60 0002AAC0 48 00 00 14 */ b lbl_8002EE74 lbl_8002EE64: /* 8002EE64 0002AAC4 C0 02 81 50 */ lfs f0, lbl_80640750-_SDA2_BASE_(r2) /* 8002EE68 0002AAC8 D0 01 01 50 */ stfs f0, 0x150(r1) /* 8002EE6C 0002AACC D0 01 01 54 */ stfs f0, 0x154(r1) /* 8002EE70 0002AAD0 D0 01 01 58 */ stfs f0, 0x158(r1) lbl_8002EE74: /* 8002EE74 0002AAD4 A8 1D 00 20 */ lha r0, 0x20(r29) /* 8002EE78 0002AAD8 2C 00 00 04 */ cmpwi r0, 4 /* 8002EE7C 0002AADC 40 82 00 34 */ bne lbl_8002EEB0 /* 8002EE80 0002AAE0 40 82 00 0C */ bne lbl_8002EE8C /* 8002EE84 0002AAE4 80 7D 00 24 */ lwz r3, 0x24(r29) /* 8002EE88 0002AAE8 48 00 00 0C */ b lbl_8002EE94 lbl_8002EE8C: /* 8002EE8C 0002AAEC 38 7D 00 20 */ addi r3, r29, 0x20 /* 8002EE90 0002AAF0 4B FF 94 51 */ bl func_800282E0 lbl_8002EE94: /* 8002EE94 0002AAF4 C0 43 00 00 */ lfs f2, 0(r3) /* 8002EE98 0002AAF8 C0 23 00 04 */ lfs f1, 4(r3) /* 8002EE9C 0002AAFC C0 03 00 08 */ lfs f0, 8(r3) /* 8002EEA0 0002AB00 D0 41 00 9C */ stfs f2, 0x9c(r1) /* 8002EEA4 0002AB04 D0 21 00 AC */ stfs f1, 0xac(r1) /* 8002EEA8 0002AB08 D0 01 00 BC */ stfs f0, 0xbc(r1) /* 8002EEAC 0002AB0C 48 00 00 14 */ b lbl_8002EEC0 lbl_8002EEB0: /* 8002EEB0 0002AB10 C0 02 81 58 */ lfs f0, lbl_80640758-_SDA2_BASE_(r2) /* 8002EEB4 0002AB14 D0 01 00 C0 */ stfs f0, 0xc0(r1) /* 8002EEB8 0002AB18 D0 01 00 D0 */ stfs f0, 0xd0(r1) /* 8002EEBC 0002AB1C D0 01 00 E0 */ stfs f0, 0xe0(r1) lbl_8002EEC0: /* 8002EEC0 0002AB20 2C 19 00 00 */ cmpwi r25, 0 /* 8002EEC4 0002AB24 41 80 00 0C */ blt lbl_8002EED0 /* 8002EEC8 0002AB28 2C 19 00 12 */ cmpwi r25, 0x12 /* 8002EECC 0002AB2C 40 81 00 0C */ ble lbl_8002EED8 lbl_8002EED0: /* 8002EED0 0002AB30 2C 19 00 20 */ cmpwi r25, 0x20 /* 8002EED4 0002AB34 40 82 0D 88 */ bne lbl_8002FC5C lbl_8002EED8: /* 8002EED8 0002AB38 A8 1D 00 30 */ lha r0, 0x30(r29) /* 8002EEDC 0002AB3C 2C 00 00 01 */ cmpwi r0, 1 /* 8002EEE0 0002AB40 40 82 00 0C */ bne lbl_8002EEEC /* 8002EEE4 0002AB44 83 7D 00 34 */ lwz r27, 0x34(r29) /* 8002EEE8 0002AB48 48 00 00 2C */ b lbl_8002EF14 lbl_8002EEEC: /* 8002EEEC 0002AB4C 2C 00 00 02 */ cmpwi r0, 2 /* 8002EEF0 0002AB50 40 82 00 18 */ bne lbl_8002EF08 /* 8002EEF4 0002AB54 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 8002EEF8 0002AB58 FC 00 00 1E */ fctiwz f0, f0 /* 8002EEFC 0002AB5C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EF00 0002AB60 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EF04 0002AB64 48 00 00 0C */ b lbl_8002EF10 lbl_8002EF08: /* 8002EF08 0002AB68 38 7D 00 30 */ addi r3, r29, 0x30 /* 8002EF0C 0002AB6C 48 1F EE 29 */ bl func_8022DD34 lbl_8002EF10: /* 8002EF10 0002AB70 7C 7B 1B 78 */ mr r27, r3 lbl_8002EF14: /* 8002EF14 0002AB74 A8 1D 00 38 */ lha r0, 0x38(r29) /* 8002EF18 0002AB78 2C 00 00 01 */ cmpwi r0, 1 /* 8002EF1C 0002AB7C 40 82 00 0C */ bne lbl_8002EF28 /* 8002EF20 0002AB80 83 9D 00 3C */ lwz r28, 0x3c(r29) /* 8002EF24 0002AB84 48 00 00 2C */ b lbl_8002EF50 lbl_8002EF28: /* 8002EF28 0002AB88 2C 00 00 02 */ cmpwi r0, 2 /* 8002EF2C 0002AB8C 40 82 00 18 */ bne lbl_8002EF44 /* 8002EF30 0002AB90 C0 1D 00 3C */ lfs f0, 0x3c(r29) /* 8002EF34 0002AB94 FC 00 00 1E */ fctiwz f0, f0 /* 8002EF38 0002AB98 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EF3C 0002AB9C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EF40 0002ABA0 48 00 00 0C */ b lbl_8002EF4C lbl_8002EF44: /* 8002EF44 0002ABA4 38 7D 00 38 */ addi r3, r29, 0x38 /* 8002EF48 0002ABA8 48 1F ED ED */ bl func_8022DD34 lbl_8002EF4C: /* 8002EF4C 0002ABAC 7C 7C 1B 78 */ mr r28, r3 lbl_8002EF50: /* 8002EF50 0002ABB0 A8 1D 00 40 */ lha r0, 0x40(r29) /* 8002EF54 0002ABB4 2C 00 00 01 */ cmpwi r0, 1 /* 8002EF58 0002ABB8 40 82 00 0C */ bne lbl_8002EF64 /* 8002EF5C 0002ABBC 83 DD 00 44 */ lwz r30, 0x44(r29) /* 8002EF60 0002ABC0 48 00 00 2C */ b lbl_8002EF8C lbl_8002EF64: /* 8002EF64 0002ABC4 2C 00 00 02 */ cmpwi r0, 2 /* 8002EF68 0002ABC8 40 82 00 18 */ bne lbl_8002EF80 /* 8002EF6C 0002ABCC C0 1D 00 44 */ lfs f0, 0x44(r29) /* 8002EF70 0002ABD0 FC 00 00 1E */ fctiwz f0, f0 /* 8002EF74 0002ABD4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EF78 0002ABD8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EF7C 0002ABDC 48 00 00 0C */ b lbl_8002EF88 lbl_8002EF80: /* 8002EF80 0002ABE0 38 7D 00 40 */ addi r3, r29, 0x40 /* 8002EF84 0002ABE4 48 1F ED B1 */ bl func_8022DD34 lbl_8002EF88: /* 8002EF88 0002ABE8 7C 7E 1B 78 */ mr r30, r3 lbl_8002EF8C: /* 8002EF8C 0002ABEC A8 1D 00 08 */ lha r0, 8(r29) /* 8002EF90 0002ABF0 2C 00 00 01 */ cmpwi r0, 1 /* 8002EF94 0002ABF4 40 82 00 0C */ bne lbl_8002EFA0 /* 8002EF98 0002ABF8 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002EF9C 0002ABFC 48 00 00 28 */ b lbl_8002EFC4 lbl_8002EFA0: /* 8002EFA0 0002AC00 2C 00 00 02 */ cmpwi r0, 2 /* 8002EFA4 0002AC04 40 82 00 18 */ bne lbl_8002EFBC /* 8002EFA8 0002AC08 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002EFAC 0002AC0C FC 00 00 1E */ fctiwz f0, f0 /* 8002EFB0 0002AC10 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002EFB4 0002AC14 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002EFB8 0002AC18 48 00 00 0C */ b lbl_8002EFC4 lbl_8002EFBC: /* 8002EFBC 0002AC1C 38 7D 00 08 */ addi r3, r29, 8 /* 8002EFC0 0002AC20 48 1F ED 75 */ bl func_8022DD34 lbl_8002EFC4: /* 8002EFC4 0002AC24 C0 A2 81 58 */ lfs f5, lbl_80640758-_SDA2_BASE_(r2) /* 8002EFC8 0002AC28 7C 67 1B 78 */ mr r7, r3 /* 8002EFCC 0002AC2C C0 81 01 50 */ lfs f4, 0x150(r1) /* 8002EFD0 0002AC30 7F 64 DB 78 */ mr r4, r27 /* 8002EFD4 0002AC34 C0 61 01 54 */ lfs f3, 0x154(r1) /* 8002EFD8 0002AC38 7F 85 E3 78 */ mr r5, r28 /* 8002EFDC 0002AC3C C0 01 01 58 */ lfs f0, 0x158(r1) /* 8002EFE0 0002AC40 7F C6 F3 78 */ mr r6, r30 /* 8002EFE4 0002AC44 D0 A1 00 E4 */ stfs f5, 0xe4(r1) /* 8002EFE8 0002AC48 7F 28 CB 78 */ mr r8, r25 /* 8002EFEC 0002AC4C C0 21 01 5C */ lfs f1, 0x15c(r1) /* 8002EFF0 0002AC50 38 61 00 F0 */ addi r3, r1, 0xf0 /* 8002EFF4 0002AC54 D0 A1 00 E8 */ stfs f5, 0xe8(r1) /* 8002EFF8 0002AC58 39 21 00 E4 */ addi r9, r1, 0xe4 /* 8002EFFC 0002AC5C C0 41 01 60 */ lfs f2, 0x160(r1) /* 8002F000 0002AC60 D0 A1 00 EC */ stfs f5, 0xec(r1) /* 8002F004 0002AC64 D0 81 00 F0 */ stfs f4, 0xf0(r1) /* 8002F008 0002AC68 D0 61 00 F4 */ stfs f3, 0xf4(r1) /* 8002F00C 0002AC6C D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 8002F010 0002AC70 48 04 06 39 */ bl func_8006F648 /* 8002F014 0002AC74 48 00 0C 48 */ b lbl_8002FC5C /* 8002F018 0002AC78 7F E3 FB 78 */ mr r3, r31 /* 8002F01C 0002AC7C 48 00 70 4D */ bl func_80036068 /* 8002F020 0002AC80 2C 03 00 00 */ cmpwi r3, 0 /* 8002F024 0002AC84 41 82 00 B8 */ beq lbl_8002F0DC /* 8002F028 0002AC88 7C 64 1B 78 */ mr r4, r3 /* 8002F02C 0002AC8C 38 60 00 0F */ li r3, 0xf /* 8002F030 0002AC90 48 12 D2 D9 */ bl func_8015C308 /* 8002F034 0002AC94 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F038 0002AC98 2C 00 00 01 */ cmpwi r0, 1 /* 8002F03C 0002AC9C 40 82 00 0C */ bne lbl_8002F048 /* 8002F040 0002ACA0 83 7D 00 0C */ lwz r27, 0xc(r29) /* 8002F044 0002ACA4 48 00 00 2C */ b lbl_8002F070 lbl_8002F048: /* 8002F048 0002ACA8 2C 00 00 02 */ cmpwi r0, 2 /* 8002F04C 0002ACAC 40 82 00 18 */ bne lbl_8002F064 /* 8002F050 0002ACB0 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F054 0002ACB4 FC 00 00 1E */ fctiwz f0, f0 /* 8002F058 0002ACB8 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F05C 0002ACBC 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F060 0002ACC0 48 00 00 0C */ b lbl_8002F06C lbl_8002F064: /* 8002F064 0002ACC4 38 7D 00 08 */ addi r3, r29, 8 /* 8002F068 0002ACC8 48 1F EC CD */ bl func_8022DD34 lbl_8002F06C: /* 8002F06C 0002ACCC 7C 7B 1B 78 */ mr r27, r3 lbl_8002F070: /* 8002F070 0002ACD0 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F074 0002ACD4 2C 00 00 01 */ cmpwi r0, 1 /* 8002F078 0002ACD8 40 82 00 0C */ bne lbl_8002F084 /* 8002F07C 0002ACDC 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002F080 0002ACE0 48 00 00 28 */ b lbl_8002F0A8 lbl_8002F084: /* 8002F084 0002ACE4 2C 00 00 02 */ cmpwi r0, 2 /* 8002F088 0002ACE8 40 82 00 18 */ bne lbl_8002F0A0 /* 8002F08C 0002ACEC C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F090 0002ACF0 FC 00 00 1E */ fctiwz f0, f0 /* 8002F094 0002ACF4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F098 0002ACF8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F09C 0002ACFC 48 00 00 0C */ b lbl_8002F0A8 lbl_8002F0A0: /* 8002F0A0 0002AD00 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F0A4 0002AD04 48 1F EC 91 */ bl func_8022DD34 lbl_8002F0A8: /* 8002F0A8 0002AD08 7C 65 1B 78 */ mr r5, r3 /* 8002F0AC 0002AD0C 7F 64 DB 78 */ mr r4, r27 /* 8002F0B0 0002AD10 38 60 2E D4 */ li r3, 0x2ed4 /* 8002F0B4 0002AD14 38 C0 00 00 */ li r6, 0 /* 8002F0B8 0002AD18 38 E0 00 00 */ li r7, 0 /* 8002F0BC 0002AD1C 39 00 FF FF */ li r8, -1 /* 8002F0C0 0002AD20 39 20 00 00 */ li r9, 0 /* 8002F0C4 0002AD24 39 40 00 01 */ li r10, 1 /* 8002F0C8 0002AD28 48 22 0F D5 */ bl func_8025009C /* 8002F0CC 0002AD2C 38 00 00 01 */ li r0, 1 /* 8002F0D0 0002AD30 B0 1E 00 00 */ sth r0, 0(r30) /* 8002F0D4 0002AD34 90 1E 00 04 */ stw r0, 4(r30) /* 8002F0D8 0002AD38 48 00 0B 84 */ b lbl_8002FC5C lbl_8002F0DC: /* 8002F0DC 0002AD3C 38 60 00 01 */ li r3, 1 /* 8002F0E0 0002AD40 38 00 00 00 */ li r0, 0 /* 8002F0E4 0002AD44 B0 7E 00 00 */ sth r3, 0(r30) /* 8002F0E8 0002AD48 90 1E 00 04 */ stw r0, 4(r30) /* 8002F0EC 0002AD4C 48 00 0B 70 */ b lbl_8002FC5C /* 8002F0F0 0002AD50 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F0F4 0002AD54 2C 00 00 01 */ cmpwi r0, 1 /* 8002F0F8 0002AD58 40 82 00 0C */ bne lbl_8002F104 /* 8002F0FC 0002AD5C 83 7D 00 0C */ lwz r27, 0xc(r29) /* 8002F100 0002AD60 48 00 00 2C */ b lbl_8002F12C lbl_8002F104: /* 8002F104 0002AD64 2C 00 00 02 */ cmpwi r0, 2 /* 8002F108 0002AD68 40 82 00 18 */ bne lbl_8002F120 /* 8002F10C 0002AD6C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F110 0002AD70 FC 00 00 1E */ fctiwz f0, f0 /* 8002F114 0002AD74 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F118 0002AD78 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F11C 0002AD7C 48 00 00 0C */ b lbl_8002F128 lbl_8002F120: /* 8002F120 0002AD80 38 7D 00 08 */ addi r3, r29, 8 /* 8002F124 0002AD84 48 1F EC 11 */ bl func_8022DD34 lbl_8002F128: /* 8002F128 0002AD88 7C 7B 1B 78 */ mr r27, r3 lbl_8002F12C: /* 8002F12C 0002AD8C 7F E3 FB 78 */ mr r3, r31 /* 8002F130 0002AD90 7F 64 DB 78 */ mr r4, r27 /* 8002F134 0002AD94 48 00 6E 81 */ bl func_80035FB4 /* 8002F138 0002AD98 2C 03 00 00 */ cmpwi r3, 0 /* 8002F13C 0002AD9C 41 82 00 A8 */ beq lbl_8002F1E4 /* 8002F140 0002ADA0 7C 64 1B 78 */ mr r4, r3 /* 8002F144 0002ADA4 38 60 00 0F */ li r3, 0xf /* 8002F148 0002ADA8 48 12 D1 C1 */ bl func_8015C308 /* 8002F14C 0002ADAC A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F150 0002ADB0 2C 00 00 01 */ cmpwi r0, 1 /* 8002F154 0002ADB4 40 82 00 0C */ bne lbl_8002F160 /* 8002F158 0002ADB8 83 9D 00 14 */ lwz r28, 0x14(r29) /* 8002F15C 0002ADBC 48 00 00 2C */ b lbl_8002F188 lbl_8002F160: /* 8002F160 0002ADC0 2C 00 00 02 */ cmpwi r0, 2 /* 8002F164 0002ADC4 40 82 00 18 */ bne lbl_8002F17C /* 8002F168 0002ADC8 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F16C 0002ADCC FC 00 00 1E */ fctiwz f0, f0 /* 8002F170 0002ADD0 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F174 0002ADD4 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F178 0002ADD8 48 00 00 0C */ b lbl_8002F184 lbl_8002F17C: /* 8002F17C 0002ADDC 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F180 0002ADE0 48 1F EB B5 */ bl func_8022DD34 lbl_8002F184: /* 8002F184 0002ADE4 7C 7C 1B 78 */ mr r28, r3 lbl_8002F188: /* 8002F188 0002ADE8 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002F18C 0002ADEC 2C 00 00 01 */ cmpwi r0, 1 /* 8002F190 0002ADF0 40 82 00 0C */ bne lbl_8002F19C /* 8002F194 0002ADF4 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002F198 0002ADF8 48 00 00 28 */ b lbl_8002F1C0 lbl_8002F19C: /* 8002F19C 0002ADFC 2C 00 00 02 */ cmpwi r0, 2 /* 8002F1A0 0002AE00 40 82 00 18 */ bne lbl_8002F1B8 /* 8002F1A4 0002AE04 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8002F1A8 0002AE08 FC 00 00 1E */ fctiwz f0, f0 /* 8002F1AC 0002AE0C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F1B0 0002AE10 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F1B4 0002AE14 48 00 00 0C */ b lbl_8002F1C0 lbl_8002F1B8: /* 8002F1B8 0002AE18 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002F1BC 0002AE1C 48 1F EB 79 */ bl func_8022DD34 lbl_8002F1C0: /* 8002F1C0 0002AE20 7C 65 1B 78 */ mr r5, r3 /* 8002F1C4 0002AE24 7F 84 E3 78 */ mr r4, r28 /* 8002F1C8 0002AE28 38 60 2E D4 */ li r3, 0x2ed4 /* 8002F1CC 0002AE2C 38 C0 00 00 */ li r6, 0 /* 8002F1D0 0002AE30 38 E0 00 00 */ li r7, 0 /* 8002F1D4 0002AE34 39 00 FF FF */ li r8, -1 /* 8002F1D8 0002AE38 39 20 00 00 */ li r9, 0 /* 8002F1DC 0002AE3C 39 40 00 01 */ li r10, 1 /* 8002F1E0 0002AE40 48 22 0E BD */ bl func_8025009C lbl_8002F1E4: /* 8002F1E4 0002AE44 7F E3 FB 78 */ mr r3, r31 /* 8002F1E8 0002AE48 38 9B 00 01 */ addi r4, r27, 1 /* 8002F1EC 0002AE4C 48 00 6D C9 */ bl func_80035FB4 /* 8002F1F0 0002AE50 7C 03 00 D0 */ neg r0, r3 /* 8002F1F4 0002AE54 38 80 00 01 */ li r4, 1 /* 8002F1F8 0002AE58 7C 00 1B 78 */ or r0, r0, r3 /* 8002F1FC 0002AE5C B0 9E 00 00 */ sth r4, 0(r30) /* 8002F200 0002AE60 54 00 0F FE */ srwi r0, r0, 0x1f /* 8002F204 0002AE64 90 1E 00 04 */ stw r0, 4(r30) /* 8002F208 0002AE68 48 00 0A 54 */ b lbl_8002FC5C /* 8002F20C 0002AE6C A8 1D 00 08 */ lha r0, 8(r29) /* 8002F210 0002AE70 2C 00 00 01 */ cmpwi r0, 1 /* 8002F214 0002AE74 40 82 00 0C */ bne lbl_8002F220 /* 8002F218 0002AE78 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F21C 0002AE7C 48 00 00 28 */ b lbl_8002F244 lbl_8002F220: /* 8002F220 0002AE80 2C 00 00 02 */ cmpwi r0, 2 /* 8002F224 0002AE84 40 82 00 18 */ bne lbl_8002F23C /* 8002F228 0002AE88 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F22C 0002AE8C FC 00 00 1E */ fctiwz f0, f0 /* 8002F230 0002AE90 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F234 0002AE94 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F238 0002AE98 48 00 00 0C */ b lbl_8002F244 lbl_8002F23C: /* 8002F23C 0002AE9C 38 7D 00 08 */ addi r3, r29, 8 /* 8002F240 0002AEA0 48 1F EA F5 */ bl func_8022DD34 lbl_8002F244: /* 8002F244 0002AEA4 2C 03 00 00 */ cmpwi r3, 0 /* 8002F248 0002AEA8 41 82 0A 14 */ beq lbl_8002FC5C /* 8002F24C 0002AEAC 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8002F250 0002AEB0 48 14 03 D9 */ bl func_8016F628 /* 8002F254 0002AEB4 2C 03 00 00 */ cmpwi r3, 0 /* 8002F258 0002AEB8 7C 79 1B 78 */ mr r25, r3 /* 8002F25C 0002AEBC 41 82 0A 00 */ beq lbl_8002FC5C /* 8002F260 0002AEC0 3C 60 80 47 */ lis r3, lbl_80475138@ha /* 8002F264 0002AEC4 7F 24 CB 78 */ mr r4, r25 /* 8002F268 0002AEC8 38 63 51 38 */ addi r3, r3, lbl_80475138@l /* 8002F26C 0002AECC 38 A0 00 80 */ li r5, 0x80 /* 8002F270 0002AED0 48 14 7E 11 */ bl func_80177080 /* 8002F274 0002AED4 38 00 00 00 */ li r0, 0 /* 8002F278 0002AED8 90 01 00 08 */ stw r0, 8(r1) /* 8002F27C 0002AEDC A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F280 0002AEE0 2C 00 00 01 */ cmpwi r0, 1 /* 8002F284 0002AEE4 40 82 00 0C */ bne lbl_8002F290 /* 8002F288 0002AEE8 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002F28C 0002AEEC 48 00 00 28 */ b lbl_8002F2B4 lbl_8002F290: /* 8002F290 0002AEF0 2C 00 00 02 */ cmpwi r0, 2 /* 8002F294 0002AEF4 40 82 00 18 */ bne lbl_8002F2AC /* 8002F298 0002AEF8 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F29C 0002AEFC FC 00 00 1E */ fctiwz f0, f0 /* 8002F2A0 0002AF00 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F2A4 0002AF04 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F2A8 0002AF08 48 00 00 0C */ b lbl_8002F2B4 lbl_8002F2AC: /* 8002F2AC 0002AF0C 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F2B0 0002AF10 48 1F EA 85 */ bl func_8022DD34 lbl_8002F2B4: /* 8002F2B4 0002AF14 38 03 00 08 */ addi r0, r3, 8 /* 8002F2B8 0002AF18 90 0D 97 3C */ stw r0, lbl_8063E9FC-_SDA_BASE_(r13) /* 8002F2BC 0002AF1C A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002F2C0 0002AF20 2C 00 00 01 */ cmpwi r0, 1 /* 8002F2C4 0002AF24 40 82 00 0C */ bne lbl_8002F2D0 /* 8002F2C8 0002AF28 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8002F2CC 0002AF2C 48 00 00 28 */ b lbl_8002F2F4 lbl_8002F2D0: /* 8002F2D0 0002AF30 2C 00 00 02 */ cmpwi r0, 2 /* 8002F2D4 0002AF34 40 82 00 18 */ bne lbl_8002F2EC /* 8002F2D8 0002AF38 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8002F2DC 0002AF3C FC 00 00 1E */ fctiwz f0, f0 /* 8002F2E0 0002AF40 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F2E4 0002AF44 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F2E8 0002AF48 48 00 00 0C */ b lbl_8002F2F4 lbl_8002F2EC: /* 8002F2EC 0002AF4C 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002F2F0 0002AF50 48 1F EA 45 */ bl func_8022DD34 lbl_8002F2F4: /* 8002F2F4 0002AF54 38 03 FF E0 */ addi r0, r3, -32 /* 8002F2F8 0002AF58 7F 23 CB 78 */ mr r3, r25 /* 8002F2FC 0002AF5C 90 0D 97 40 */ stw r0, lbl_8063EA00-_SDA_BASE_(r13) /* 8002F300 0002AF60 38 A1 00 08 */ addi r5, r1, 8 /* 8002F304 0002AF64 38 80 01 00 */ li r4, 0x100 /* 8002F308 0002AF68 48 00 09 79 */ bl func_8002FC80 /* 8002F30C 0002AF6C 3F 80 80 47 */ lis r28, lbl_80474F38@ha /* 8002F310 0002AF70 7C 7B 1B 78 */ mr r27, r3 /* 8002F314 0002AF74 38 9C 4F 38 */ addi r4, r28, lbl_80474F38@l /* 8002F318 0002AF78 38 60 00 10 */ li r3, 0x10 /* 8002F31C 0002AF7C 48 12 CF ED */ bl func_8015C308 /* 8002F320 0002AF80 38 60 50 8A */ li r3, 0x508a /* 8002F324 0002AF84 38 80 00 01 */ li r4, 1 /* 8002F328 0002AF88 38 A0 00 00 */ li r5, 0 /* 8002F32C 0002AF8C 48 22 10 6D */ bl func_80250398 /* 8002F330 0002AF90 3B FC 4F 38 */ addi r31, r28, 0x4f38 /* 8002F334 0002AF94 7C 7C 1B 78 */ mr r28, r3 /* 8002F338 0002AF98 38 9F 01 00 */ addi r4, r31, 0x100 /* 8002F33C 0002AF9C 38 60 00 10 */ li r3, 0x10 /* 8002F340 0002AFA0 48 12 CF C9 */ bl func_8015C308 /* 8002F344 0002AFA4 38 60 50 8A */ li r3, 0x508a /* 8002F348 0002AFA8 38 80 00 01 */ li r4, 1 /* 8002F34C 0002AFAC 38 A0 00 00 */ li r5, 0 /* 8002F350 0002AFB0 48 22 10 49 */ bl func_80250398 /* 8002F354 0002AFB4 7C 7E 1B 78 */ mr r30, r3 /* 8002F358 0002AFB8 7F E4 FB 78 */ mr r4, r31 /* 8002F35C 0002AFBC 38 60 00 10 */ li r3, 0x10 /* 8002F360 0002AFC0 48 12 CF A9 */ bl func_8015C308 /* 8002F364 0002AFC4 2C 1B 00 01 */ cmpwi r27, 1 /* 8002F368 0002AFC8 40 81 00 9C */ ble lbl_8002F404 /* 8002F36C 0002AFCC 80 01 00 08 */ lwz r0, 8(r1) /* 8002F370 0002AFD0 2C 00 00 0A */ cmpwi r0, 0xa /* 8002F374 0002AFD4 41 81 00 10 */ bgt lbl_8002F384 /* 8002F378 0002AFD8 C0 02 81 5C */ lfs f0, lbl_8064075C-_SDA2_BASE_(r2) /* 8002F37C 0002AFDC D0 0D 97 38 */ stfs f0, lbl_8063E9F8-_SDA_BASE_(r13) /* 8002F380 0002AFE0 48 00 00 44 */ b lbl_8002F3C4 lbl_8002F384: /* 8002F384 0002AFE4 2C 00 00 28 */ cmpwi r0, 0x28 /* 8002F388 0002AFE8 40 81 00 0C */ ble lbl_8002F394 /* 8002F38C 0002AFEC 38 00 00 28 */ li r0, 0x28 /* 8002F390 0002AFF0 90 01 00 08 */ stw r0, 8(r1) lbl_8002F394: /* 8002F394 0002AFF4 80 61 00 08 */ lwz r3, 8(r1) /* 8002F398 0002AFF8 C8 62 81 68 */ lfd f3, lbl_80640768-_SDA2_BASE_(r2) /* 8002F39C 0002AFFC 38 03 FF F6 */ addi r0, r3, -10 /* 8002F3A0 0002B000 C0 22 81 60 */ lfs f1, lbl_80640760-_SDA2_BASE_(r2) /* 8002F3A4 0002B004 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8002F3A8 0002B008 C0 02 81 5C */ lfs f0, lbl_8064075C-_SDA2_BASE_(r2) /* 8002F3AC 0002B00C 90 01 01 6C */ stw r0, 0x16c(r1) /* 8002F3B0 0002B010 C8 41 01 68 */ lfd f2, 0x168(r1) /* 8002F3B4 0002B014 EC 42 18 28 */ fsubs f2, f2, f3 /* 8002F3B8 0002B018 EC 22 08 24 */ fdivs f1, f2, f1 /* 8002F3BC 0002B01C EC 00 08 2A */ fadds f0, f0, f1 /* 8002F3C0 0002B020 D0 0D 97 38 */ stfs f0, lbl_8063E9F8-_SDA_BASE_(r13) lbl_8002F3C4: /* 8002F3C4 0002B024 57 C4 04 3E */ clrlwi r4, r30, 0x10 /* 8002F3C8 0002B028 57 83 04 3E */ clrlwi r3, r28, 0x10 /* 8002F3CC 0002B02C 38 00 00 01 */ li r0, 1 /* 8002F3D0 0002B030 7C 03 20 40 */ cmplw r3, r4 /* 8002F3D4 0002B034 98 0D 97 36 */ stb r0, lbl_8063E9F6-_SDA_BASE_(r13) /* 8002F3D8 0002B038 40 81 00 08 */ ble lbl_8002F3E0 /* 8002F3DC 0002B03C 7C 64 1B 78 */ mr r4, r3 lbl_8002F3E0: /* 8002F3E0 0002B040 57 C3 84 3E */ srwi r3, r30, 0x10 /* 8002F3E4 0002B044 57 80 84 3E */ srwi r0, r28, 0x10 /* 8002F3E8 0002B048 7C 00 18 40 */ cmplw r0, r3 /* 8002F3EC 0002B04C B0 8D 97 44 */ sth r4, lbl_8063EA04-_SDA_BASE_(r13) /* 8002F3F0 0002B050 40 81 00 08 */ ble lbl_8002F3F8 /* 8002F3F4 0002B054 7C 03 03 78 */ mr r3, r0 lbl_8002F3F8: /* 8002F3F8 0002B058 B0 6D 97 46 */ sth r3, lbl_8063EA06-_SDA_BASE_(r13) /* 8002F3FC 0002B05C 3B 20 50 8B */ li r25, 0x508b /* 8002F400 0002B060 48 00 00 14 */ b lbl_8002F414 lbl_8002F404: /* 8002F404 0002B064 57 80 84 3E */ srwi r0, r28, 0x10 /* 8002F408 0002B068 B3 8D 97 44 */ sth r28, lbl_8063EA04-_SDA_BASE_(r13) /* 8002F40C 0002B06C 3B 20 50 8A */ li r25, 0x508a /* 8002F410 0002B070 B0 0D 97 46 */ sth r0, lbl_8063EA06-_SDA_BASE_(r13) lbl_8002F414: /* 8002F414 0002B074 38 60 50 8A */ li r3, 0x508a /* 8002F418 0002B078 48 22 0E BD */ bl func_802502D4 /* 8002F41C 0002B07C 38 60 50 8B */ li r3, 0x508b /* 8002F420 0002B080 48 22 0E B5 */ bl func_802502D4 /* 8002F424 0002B084 38 60 50 8C */ li r3, 0x508c /* 8002F428 0002B088 48 22 0E AD */ bl func_802502D4 /* 8002F42C 0002B08C A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F430 0002B090 2C 00 00 01 */ cmpwi r0, 1 /* 8002F434 0002B094 40 82 00 0C */ bne lbl_8002F440 /* 8002F438 0002B098 83 7D 00 14 */ lwz r27, 0x14(r29) /* 8002F43C 0002B09C 48 00 00 2C */ b lbl_8002F468 lbl_8002F440: /* 8002F440 0002B0A0 2C 00 00 02 */ cmpwi r0, 2 /* 8002F444 0002B0A4 40 82 00 18 */ bne lbl_8002F45C /* 8002F448 0002B0A8 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F44C 0002B0AC FC 00 00 1E */ fctiwz f0, f0 /* 8002F450 0002B0B0 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F454 0002B0B4 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F458 0002B0B8 48 00 00 0C */ b lbl_8002F464 lbl_8002F45C: /* 8002F45C 0002B0BC 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F460 0002B0C0 48 1F E8 D5 */ bl func_8022DD34 lbl_8002F464: /* 8002F464 0002B0C4 7C 7B 1B 78 */ mr r27, r3 lbl_8002F468: /* 8002F468 0002B0C8 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002F46C 0002B0CC 2C 00 00 01 */ cmpwi r0, 1 /* 8002F470 0002B0D0 40 82 00 0C */ bne lbl_8002F47C /* 8002F474 0002B0D4 80 BD 00 1C */ lwz r5, 0x1c(r29) /* 8002F478 0002B0D8 48 00 00 2C */ b lbl_8002F4A4 lbl_8002F47C: /* 8002F47C 0002B0DC 2C 00 00 02 */ cmpwi r0, 2 /* 8002F480 0002B0E0 40 82 00 18 */ bne lbl_8002F498 /* 8002F484 0002B0E4 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8002F488 0002B0E8 FC 00 00 1E */ fctiwz f0, f0 /* 8002F48C 0002B0EC D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F490 0002B0F0 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F494 0002B0F4 48 00 00 0C */ b lbl_8002F4A0 lbl_8002F498: /* 8002F498 0002B0F8 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002F49C 0002B0FC 48 1F E8 99 */ bl func_8022DD34 lbl_8002F4A0: /* 8002F4A0 0002B100 7C 65 1B 78 */ mr r5, r3 lbl_8002F4A4: /* 8002F4A4 0002B104 A8 CD 97 44 */ lha r6, lbl_8063EA04-_SDA_BASE_(r13) /* 8002F4A8 0002B108 7F 23 CB 78 */ mr r3, r25 /* 8002F4AC 0002B10C A8 ED 97 46 */ lha r7, lbl_8063EA06-_SDA_BASE_(r13) /* 8002F4B0 0002B110 38 9B 00 08 */ addi r4, r27, 8 /* 8002F4B4 0002B114 38 A5 FF E0 */ addi r5, r5, -32 /* 8002F4B8 0002B118 39 00 FF FF */ li r8, -1 /* 8002F4BC 0002B11C 39 20 00 00 */ li r9, 0 /* 8002F4C0 0002B120 39 40 00 01 */ li r10, 1 /* 8002F4C4 0002B124 48 22 0B D9 */ bl func_8025009C /* 8002F4C8 0002B128 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F4CC 0002B12C 2C 00 00 01 */ cmpwi r0, 1 /* 8002F4D0 0002B130 40 82 00 0C */ bne lbl_8002F4DC /* 8002F4D4 0002B134 83 7D 00 0C */ lwz r27, 0xc(r29) /* 8002F4D8 0002B138 48 00 00 2C */ b lbl_8002F504 lbl_8002F4DC: /* 8002F4DC 0002B13C 2C 00 00 02 */ cmpwi r0, 2 /* 8002F4E0 0002B140 40 82 00 18 */ bne lbl_8002F4F8 /* 8002F4E4 0002B144 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F4E8 0002B148 FC 00 00 1E */ fctiwz f0, f0 /* 8002F4EC 0002B14C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F4F0 0002B150 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F4F4 0002B154 48 00 00 0C */ b lbl_8002F500 lbl_8002F4F8: /* 8002F4F8 0002B158 38 7D 00 08 */ addi r3, r29, 8 /* 8002F4FC 0002B15C 48 1F E8 39 */ bl func_8022DD34 lbl_8002F500: /* 8002F500 0002B160 7C 7B 1B 78 */ mr r27, r3 lbl_8002F504: /* 8002F504 0002B164 4B FD D2 E5 */ bl func_8000C7E8 /* 8002F508 0002B168 7F 65 DB 78 */ mr r5, r27 /* 8002F50C 0002B16C 38 80 00 03 */ li r4, 3 /* 8002F510 0002B170 4B FF 29 B5 */ bl func_80021EC4 /* 8002F514 0002B174 48 00 07 48 */ b lbl_8002FC5C /* 8002F518 0002B178 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F51C 0002B17C 2C 00 00 01 */ cmpwi r0, 1 /* 8002F520 0002B180 40 82 00 0C */ bne lbl_8002F52C /* 8002F524 0002B184 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F528 0002B188 48 00 00 28 */ b lbl_8002F550 lbl_8002F52C: /* 8002F52C 0002B18C 2C 00 00 02 */ cmpwi r0, 2 /* 8002F530 0002B190 40 82 00 18 */ bne lbl_8002F548 /* 8002F534 0002B194 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F538 0002B198 FC 00 00 1E */ fctiwz f0, f0 /* 8002F53C 0002B19C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F540 0002B1A0 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F544 0002B1A4 48 00 00 0C */ b lbl_8002F550 lbl_8002F548: /* 8002F548 0002B1A8 38 7D 00 08 */ addi r3, r29, 8 /* 8002F54C 0002B1AC 48 1F E7 E9 */ bl func_8022DD34 lbl_8002F550: /* 8002F550 0002B1B0 2C 03 FF FF */ cmpwi r3, -1 /* 8002F554 0002B1B4 40 82 00 14 */ bne lbl_8002F568 /* 8002F558 0002B1B8 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8002F55C 0002B1BC 48 1F 72 E1 */ bl func_8022683C /* 8002F560 0002B1C0 7C 79 1B 78 */ mr r25, r3 /* 8002F564 0002B1C4 48 00 00 40 */ b lbl_8002F5A4 lbl_8002F568: /* 8002F568 0002B1C8 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F56C 0002B1CC 2C 00 00 01 */ cmpwi r0, 1 /* 8002F570 0002B1D0 40 82 00 0C */ bne lbl_8002F57C /* 8002F574 0002B1D4 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F578 0002B1D8 48 00 00 28 */ b lbl_8002F5A0 lbl_8002F57C: /* 8002F57C 0002B1DC 2C 00 00 02 */ cmpwi r0, 2 /* 8002F580 0002B1E0 40 82 00 18 */ bne lbl_8002F598 /* 8002F584 0002B1E4 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F588 0002B1E8 FC 00 00 1E */ fctiwz f0, f0 /* 8002F58C 0002B1EC D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F590 0002B1F0 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F594 0002B1F4 48 00 00 0C */ b lbl_8002F5A0 lbl_8002F598: /* 8002F598 0002B1F8 38 7D 00 08 */ addi r3, r29, 8 /* 8002F59C 0002B1FC 48 1F E7 99 */ bl func_8022DD34 lbl_8002F5A0: /* 8002F5A0 0002B200 7C 79 1B 78 */ mr r25, r3 lbl_8002F5A4: /* 8002F5A4 0002B204 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F5A8 0002B208 2C 00 00 01 */ cmpwi r0, 1 /* 8002F5AC 0002B20C 40 82 00 0C */ bne lbl_8002F5B8 /* 8002F5B0 0002B210 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002F5B4 0002B214 48 00 00 28 */ b lbl_8002F5DC lbl_8002F5B8: /* 8002F5B8 0002B218 2C 00 00 02 */ cmpwi r0, 2 /* 8002F5BC 0002B21C 40 82 00 18 */ bne lbl_8002F5D4 /* 8002F5C0 0002B220 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F5C4 0002B224 FC 00 00 1E */ fctiwz f0, f0 /* 8002F5C8 0002B228 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F5CC 0002B22C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F5D0 0002B230 48 00 00 0C */ b lbl_8002F5DC lbl_8002F5D4: /* 8002F5D4 0002B234 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F5D8 0002B238 48 1F E7 5D */ bl func_8022DD34 lbl_8002F5DC: /* 8002F5DC 0002B23C 2C 03 FF FF */ cmpwi r3, -1 /* 8002F5E0 0002B240 40 82 00 0C */ bne lbl_8002F5EC /* 8002F5E4 0002B244 A0 9B 00 16 */ lhz r4, 0x16(r27) /* 8002F5E8 0002B248 48 00 00 40 */ b lbl_8002F628 lbl_8002F5EC: /* 8002F5EC 0002B24C A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F5F0 0002B250 2C 00 00 01 */ cmpwi r0, 1 /* 8002F5F4 0002B254 40 82 00 0C */ bne lbl_8002F600 /* 8002F5F8 0002B258 80 7D 00 14 */ lwz r3, 0x14(r29) /* 8002F5FC 0002B25C 48 00 00 28 */ b lbl_8002F624 lbl_8002F600: /* 8002F600 0002B260 2C 00 00 02 */ cmpwi r0, 2 /* 8002F604 0002B264 40 82 00 18 */ bne lbl_8002F61C /* 8002F608 0002B268 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F60C 0002B26C FC 00 00 1E */ fctiwz f0, f0 /* 8002F610 0002B270 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F614 0002B274 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F618 0002B278 48 00 00 0C */ b lbl_8002F624 lbl_8002F61C: /* 8002F61C 0002B27C 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F620 0002B280 48 1F E7 15 */ bl func_8022DD34 lbl_8002F624: /* 8002F624 0002B284 7C 64 1B 78 */ mr r4, r3 lbl_8002F628: /* 8002F628 0002B288 7F 23 CB 78 */ mr r3, r25 /* 8002F62C 0002B28C 48 04 30 81 */ bl func_800726AC /* 8002F630 0002B290 48 00 06 2C */ b lbl_8002FC5C /* 8002F634 0002B294 48 04 32 91 */ bl func_800728C4 /* 8002F638 0002B298 7C 83 00 D0 */ neg r4, r3 /* 8002F63C 0002B29C 38 00 00 01 */ li r0, 1 /* 8002F640 0002B2A0 7C 83 1B 78 */ or r3, r4, r3 /* 8002F644 0002B2A4 B0 1E 00 00 */ sth r0, 0(r30) /* 8002F648 0002B2A8 54 60 0F FE */ srwi r0, r3, 0x1f /* 8002F64C 0002B2AC 90 1E 00 04 */ stw r0, 4(r30) /* 8002F650 0002B2B0 48 00 06 0C */ b lbl_8002FC5C /* 8002F654 0002B2B4 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F658 0002B2B8 2C 00 00 01 */ cmpwi r0, 1 /* 8002F65C 0002B2BC 40 82 00 0C */ bne lbl_8002F668 /* 8002F660 0002B2C0 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F664 0002B2C4 48 00 00 28 */ b lbl_8002F68C lbl_8002F668: /* 8002F668 0002B2C8 2C 00 00 02 */ cmpwi r0, 2 /* 8002F66C 0002B2CC 40 82 00 18 */ bne lbl_8002F684 /* 8002F670 0002B2D0 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F674 0002B2D4 FC 00 00 1E */ fctiwz f0, f0 /* 8002F678 0002B2D8 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F67C 0002B2DC 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F680 0002B2E0 48 00 00 0C */ b lbl_8002F68C lbl_8002F684: /* 8002F684 0002B2E4 38 7D 00 08 */ addi r3, r29, 8 /* 8002F688 0002B2E8 48 1F E6 AD */ bl func_8022DD34 lbl_8002F68C: /* 8002F68C 0002B2EC 2C 03 FF FF */ cmpwi r3, -1 /* 8002F690 0002B2F0 40 82 00 0C */ bne lbl_8002F69C /* 8002F694 0002B2F4 A0 7B 00 16 */ lhz r3, 0x16(r27) /* 8002F698 0002B2F8 48 00 00 3C */ b lbl_8002F6D4 lbl_8002F69C: /* 8002F69C 0002B2FC A8 1D 00 08 */ lha r0, 8(r29) /* 8002F6A0 0002B300 2C 00 00 01 */ cmpwi r0, 1 /* 8002F6A4 0002B304 40 82 00 0C */ bne lbl_8002F6B0 /* 8002F6A8 0002B308 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F6AC 0002B30C 48 00 00 28 */ b lbl_8002F6D4 lbl_8002F6B0: /* 8002F6B0 0002B310 2C 00 00 02 */ cmpwi r0, 2 /* 8002F6B4 0002B314 40 82 00 18 */ bne lbl_8002F6CC /* 8002F6B8 0002B318 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F6BC 0002B31C FC 00 00 1E */ fctiwz f0, f0 /* 8002F6C0 0002B320 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F6C4 0002B324 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F6C8 0002B328 48 00 00 0C */ b lbl_8002F6D4 lbl_8002F6CC: /* 8002F6CC 0002B32C 38 7D 00 08 */ addi r3, r29, 8 /* 8002F6D0 0002B330 48 1F E6 65 */ bl func_8022DD34 lbl_8002F6D4: /* 8002F6D4 0002B334 48 04 32 09 */ bl func_800728DC /* 8002F6D8 0002B338 48 00 05 84 */ b lbl_8002FC5C /* 8002F6DC 0002B33C 48 04 32 2D */ bl func_80072908 /* 8002F6E0 0002B340 38 00 00 01 */ li r0, 1 /* 8002F6E4 0002B344 90 7E 00 04 */ stw r3, 4(r30) /* 8002F6E8 0002B348 B0 1E 00 00 */ sth r0, 0(r30) /* 8002F6EC 0002B34C 48 00 05 70 */ b lbl_8002FC5C /* 8002F6F0 0002B350 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F6F4 0002B354 2C 00 00 01 */ cmpwi r0, 1 /* 8002F6F8 0002B358 40 82 00 0C */ bne lbl_8002F704 /* 8002F6FC 0002B35C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F700 0002B360 48 00 00 28 */ b lbl_8002F728 lbl_8002F704: /* 8002F704 0002B364 2C 00 00 02 */ cmpwi r0, 2 /* 8002F708 0002B368 40 82 00 18 */ bne lbl_8002F720 /* 8002F70C 0002B36C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F710 0002B370 FC 00 00 1E */ fctiwz f0, f0 /* 8002F714 0002B374 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F718 0002B378 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F71C 0002B37C 48 00 00 0C */ b lbl_8002F728 lbl_8002F720: /* 8002F720 0002B380 38 7D 00 08 */ addi r3, r29, 8 /* 8002F724 0002B384 48 1F E6 11 */ bl func_8022DD34 lbl_8002F728: /* 8002F728 0002B388 48 04 32 35 */ bl func_8007295C /* 8002F72C 0002B38C 48 00 05 30 */ b lbl_8002FC5C /* 8002F730 0002B390 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F734 0002B394 2C 00 00 01 */ cmpwi r0, 1 /* 8002F738 0002B398 40 82 00 0C */ bne lbl_8002F744 /* 8002F73C 0002B39C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F740 0002B3A0 48 00 00 28 */ b lbl_8002F768 lbl_8002F744: /* 8002F744 0002B3A4 2C 00 00 02 */ cmpwi r0, 2 /* 8002F748 0002B3A8 40 82 00 18 */ bne lbl_8002F760 /* 8002F74C 0002B3AC C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F750 0002B3B0 FC 00 00 1E */ fctiwz f0, f0 /* 8002F754 0002B3B4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F758 0002B3B8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F75C 0002B3BC 48 00 00 0C */ b lbl_8002F768 lbl_8002F760: /* 8002F760 0002B3C0 38 7D 00 08 */ addi r3, r29, 8 /* 8002F764 0002B3C4 48 1F E5 D1 */ bl func_8022DD34 lbl_8002F768: /* 8002F768 0002B3C8 48 04 35 89 */ bl func_80072CF0 /* 8002F76C 0002B3CC 48 00 04 F0 */ b lbl_8002FC5C /* 8002F770 0002B3D0 48 04 3E A9 */ bl func_80073618 /* 8002F774 0002B3D4 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8002F778 0002B3D8 38 00 00 01 */ li r0, 1 /* 8002F77C 0002B3DC B0 1E 00 00 */ sth r0, 0(r30) /* 8002F780 0002B3E0 90 7E 00 04 */ stw r3, 4(r30) /* 8002F784 0002B3E4 48 00 04 D8 */ b lbl_8002FC5C /* 8002F788 0002B3E8 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F78C 0002B3EC 2C 00 00 01 */ cmpwi r0, 1 /* 8002F790 0002B3F0 40 82 00 0C */ bne lbl_8002F79C /* 8002F794 0002B3F4 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F798 0002B3F8 48 00 00 28 */ b lbl_8002F7C0 lbl_8002F79C: /* 8002F79C 0002B3FC 2C 00 00 02 */ cmpwi r0, 2 /* 8002F7A0 0002B400 40 82 00 18 */ bne lbl_8002F7B8 /* 8002F7A4 0002B404 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F7A8 0002B408 FC 00 00 1E */ fctiwz f0, f0 /* 8002F7AC 0002B40C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F7B0 0002B410 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F7B4 0002B414 48 00 00 0C */ b lbl_8002F7C0 lbl_8002F7B8: /* 8002F7B8 0002B418 38 7D 00 08 */ addi r3, r29, 8 /* 8002F7BC 0002B41C 48 1F E5 79 */ bl func_8022DD34 lbl_8002F7C0: /* 8002F7C0 0002B420 48 04 3F 8D */ bl func_8007374C /* 8002F7C4 0002B424 48 00 04 98 */ b lbl_8002FC5C /* 8002F7C8 0002B428 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F7CC 0002B42C 2C 00 00 01 */ cmpwi r0, 1 /* 8002F7D0 0002B430 40 82 00 0C */ bne lbl_8002F7DC /* 8002F7D4 0002B434 83 3D 00 14 */ lwz r25, 0x14(r29) /* 8002F7D8 0002B438 48 00 00 2C */ b lbl_8002F804 lbl_8002F7DC: /* 8002F7DC 0002B43C 2C 00 00 02 */ cmpwi r0, 2 /* 8002F7E0 0002B440 40 82 00 18 */ bne lbl_8002F7F8 /* 8002F7E4 0002B444 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F7E8 0002B448 FC 00 00 1E */ fctiwz f0, f0 /* 8002F7EC 0002B44C D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F7F0 0002B450 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F7F4 0002B454 48 00 00 0C */ b lbl_8002F800 lbl_8002F7F8: /* 8002F7F8 0002B458 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F7FC 0002B45C 48 1F E5 39 */ bl func_8022DD34 lbl_8002F800: /* 8002F800 0002B460 7C 79 1B 78 */ mr r25, r3 lbl_8002F804: /* 8002F804 0002B464 A8 1D 00 18 */ lha r0, 0x18(r29) /* 8002F808 0002B468 2C 00 00 01 */ cmpwi r0, 1 /* 8002F80C 0002B46C 40 82 00 0C */ bne lbl_8002F818 /* 8002F810 0002B470 83 7D 00 1C */ lwz r27, 0x1c(r29) /* 8002F814 0002B474 48 00 00 2C */ b lbl_8002F840 lbl_8002F818: /* 8002F818 0002B478 2C 00 00 02 */ cmpwi r0, 2 /* 8002F81C 0002B47C 40 82 00 18 */ bne lbl_8002F834 /* 8002F820 0002B480 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8002F824 0002B484 FC 00 00 1E */ fctiwz f0, f0 /* 8002F828 0002B488 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F82C 0002B48C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F830 0002B490 48 00 00 0C */ b lbl_8002F83C lbl_8002F834: /* 8002F834 0002B494 38 7D 00 18 */ addi r3, r29, 0x18 /* 8002F838 0002B498 48 1F E4 FD */ bl func_8022DD34 lbl_8002F83C: /* 8002F83C 0002B49C 7C 7B 1B 78 */ mr r27, r3 lbl_8002F840: /* 8002F840 0002B4A0 28 19 00 02 */ cmplwi r25, 2 /* 8002F844 0002B4A4 3B 40 00 00 */ li r26, 0 /* 8002F848 0002B4A8 3B C0 00 00 */ li r30, 0 /* 8002F84C 0002B4AC 40 82 00 24 */ bne lbl_8002F870 /* 8002F850 0002B4B0 7F E3 FB 78 */ mr r3, r31 /* 8002F854 0002B4B4 7F 64 DB 78 */ mr r4, r27 /* 8002F858 0002B4B8 48 00 75 21 */ bl func_80036D78 /* 8002F85C 0002B4BC 2C 03 00 00 */ cmpwi r3, 0 /* 8002F860 0002B4C0 7C 7E 1B 78 */ mr r30, r3 /* 8002F864 0002B4C4 41 82 00 30 */ beq lbl_8002F894 /* 8002F868 0002B4C8 3B 43 00 12 */ addi r26, r3, 0x12 /* 8002F86C 0002B4CC 48 00 00 28 */ b lbl_8002F894 lbl_8002F870: /* 8002F870 0002B4D0 28 19 00 03 */ cmplwi r25, 3 /* 8002F874 0002B4D4 40 82 00 20 */ bne lbl_8002F894 /* 8002F878 0002B4D8 7F E3 FB 78 */ mr r3, r31 /* 8002F87C 0002B4DC 7F 64 DB 78 */ mr r4, r27 /* 8002F880 0002B4E0 48 00 74 95 */ bl func_80036D14 /* 8002F884 0002B4E4 2C 03 00 00 */ cmpwi r3, 0 /* 8002F888 0002B4E8 7C 7E 1B 78 */ mr r30, r3 /* 8002F88C 0002B4EC 41 82 00 08 */ beq lbl_8002F894 /* 8002F890 0002B4F0 3B 43 00 12 */ addi r26, r3, 0x12 lbl_8002F894: /* 8002F894 0002B4F4 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F898 0002B4F8 2C 00 00 01 */ cmpwi r0, 1 /* 8002F89C 0002B4FC 40 82 00 0C */ bne lbl_8002F8A8 /* 8002F8A0 0002B500 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F8A4 0002B504 48 00 00 28 */ b lbl_8002F8CC lbl_8002F8A8: /* 8002F8A8 0002B508 2C 00 00 02 */ cmpwi r0, 2 /* 8002F8AC 0002B50C 40 82 00 18 */ bne lbl_8002F8C4 /* 8002F8B0 0002B510 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F8B4 0002B514 FC 00 00 1E */ fctiwz f0, f0 /* 8002F8B8 0002B518 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F8BC 0002B51C 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F8C0 0002B520 48 00 00 0C */ b lbl_8002F8CC lbl_8002F8C4: /* 8002F8C4 0002B524 38 7D 00 08 */ addi r3, r29, 8 /* 8002F8C8 0002B528 48 1F E4 6D */ bl func_8022DD34 lbl_8002F8CC: /* 8002F8CC 0002B52C 7F 24 CB 78 */ mr r4, r25 /* 8002F8D0 0002B530 7F 45 D3 78 */ mr r5, r26 /* 8002F8D4 0002B534 54 63 06 7E */ clrlwi r3, r3, 0x19 /* 8002F8D8 0002B538 48 04 45 25 */ bl func_80073DFC /* 8002F8DC 0002B53C 38 19 FF FE */ addi r0, r25, -2 /* 8002F8E0 0002B540 28 00 00 01 */ cmplwi r0, 1 /* 8002F8E4 0002B544 41 81 03 78 */ bgt lbl_8002FC5C /* 8002F8E8 0002B548 2C 1E 00 00 */ cmpwi r30, 0 /* 8002F8EC 0002B54C 41 82 03 70 */ beq lbl_8002FC5C /* 8002F8F0 0002B550 A8 1D 00 08 */ lha r0, 8(r29) /* 8002F8F4 0002B554 2C 00 00 01 */ cmpwi r0, 1 /* 8002F8F8 0002B558 40 82 00 0C */ bne lbl_8002F904 /* 8002F8FC 0002B55C 83 9D 00 0C */ lwz r28, 0xc(r29) /* 8002F900 0002B560 48 00 00 2C */ b lbl_8002F92C lbl_8002F904: /* 8002F904 0002B564 2C 00 00 02 */ cmpwi r0, 2 /* 8002F908 0002B568 40 82 00 18 */ bne lbl_8002F920 /* 8002F90C 0002B56C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F910 0002B570 FC 00 00 1E */ fctiwz f0, f0 /* 8002F914 0002B574 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F918 0002B578 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F91C 0002B57C 48 00 00 0C */ b lbl_8002F928 lbl_8002F920: /* 8002F920 0002B580 38 7D 00 08 */ addi r3, r29, 8 /* 8002F924 0002B584 48 1F E4 11 */ bl func_8022DD34 lbl_8002F928: /* 8002F928 0002B588 7C 7C 1B 78 */ mr r28, r3 lbl_8002F92C: /* 8002F92C 0002B58C 4B FD CE BD */ bl func_8000C7E8 /* 8002F930 0002B590 A0 BE 00 00 */ lhz r5, 0(r30) /* 8002F934 0002B594 57 80 E0 06 */ slwi r0, r28, 0x1c /* 8002F938 0002B598 53 25 83 1E */ rlwimi r5, r25, 0x10, 0xc, 0xf /* 8002F93C 0002B59C 38 80 00 02 */ li r4, 2 /* 8002F940 0002B5A0 53 60 C1 0E */ rlwimi r0, r27, 0x18, 4, 7 /* 8002F944 0002B5A4 7C A5 03 78 */ or r5, r5, r0 /* 8002F948 0002B5A8 4B FF 25 7D */ bl func_80021EC4 /* 8002F94C 0002B5AC 48 00 03 10 */ b lbl_8002FC5C /* 8002F950 0002B5B0 A8 1D 00 10 */ lha r0, 0x10(r29) /* 8002F954 0002B5B4 2C 00 00 01 */ cmpwi r0, 1 /* 8002F958 0002B5B8 40 82 00 0C */ bne lbl_8002F964 /* 8002F95C 0002B5BC 83 7D 00 14 */ lwz r27, 0x14(r29) /* 8002F960 0002B5C0 48 00 00 2C */ b lbl_8002F98C lbl_8002F964: /* 8002F964 0002B5C4 2C 00 00 02 */ cmpwi r0, 2 /* 8002F968 0002B5C8 40 82 00 18 */ bne lbl_8002F980 /* 8002F96C 0002B5CC C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8002F970 0002B5D0 FC 00 00 1E */ fctiwz f0, f0 /* 8002F974 0002B5D4 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F978 0002B5D8 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F97C 0002B5DC 48 00 00 0C */ b lbl_8002F988 lbl_8002F980: /* 8002F980 0002B5E0 38 7D 00 10 */ addi r3, r29, 0x10 /* 8002F984 0002B5E4 48 1F E3 B1 */ bl func_8022DD34 lbl_8002F988: /* 8002F988 0002B5E8 7C 7B 1B 78 */ mr r27, r3 lbl_8002F98C: /* 8002F98C 0002B5EC 7F E3 FB 78 */ mr r3, r31 /* 8002F990 0002B5F0 7F 64 DB 78 */ mr r4, r27 /* 8002F994 0002B5F4 3B 20 00 00 */ li r25, 0 /* 8002F998 0002B5F8 48 00 73 7D */ bl func_80036D14 /* 8002F99C 0002B5FC 2C 03 00 00 */ cmpwi r3, 0 /* 8002F9A0 0002B600 7C 7E 1B 78 */ mr r30, r3 /* 8002F9A4 0002B604 41 82 00 08 */ beq lbl_8002F9AC /* 8002F9A8 0002B608 3B 23 00 12 */ addi r25, r3, 0x12 lbl_8002F9AC: /* 8002F9AC 0002B60C A8 1D 00 08 */ lha r0, 8(r29) /* 8002F9B0 0002B610 2C 00 00 01 */ cmpwi r0, 1 /* 8002F9B4 0002B614 40 82 00 0C */ bne lbl_8002F9C0 /* 8002F9B8 0002B618 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002F9BC 0002B61C 48 00 00 28 */ b lbl_8002F9E4 lbl_8002F9C0: /* 8002F9C0 0002B620 2C 00 00 02 */ cmpwi r0, 2 /* 8002F9C4 0002B624 40 82 00 18 */ bne lbl_8002F9DC /* 8002F9C8 0002B628 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002F9CC 0002B62C FC 00 00 1E */ fctiwz f0, f0 /* 8002F9D0 0002B630 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002F9D4 0002B634 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002F9D8 0002B638 48 00 00 0C */ b lbl_8002F9E4 lbl_8002F9DC: /* 8002F9DC 0002B63C 38 7D 00 08 */ addi r3, r29, 8 /* 8002F9E0 0002B640 48 1F E3 55 */ bl func_8022DD34 lbl_8002F9E4: /* 8002F9E4 0002B644 7F 25 CB 78 */ mr r5, r25 /* 8002F9E8 0002B648 54 63 06 7E */ clrlwi r3, r3, 0x19 /* 8002F9EC 0002B64C 38 80 00 02 */ li r4, 2 /* 8002F9F0 0002B650 48 04 44 0D */ bl func_80073DFC /* 8002F9F4 0002B654 2C 1E 00 00 */ cmpwi r30, 0 /* 8002F9F8 0002B658 41 82 02 64 */ beq lbl_8002FC5C /* 8002F9FC 0002B65C A8 1D 00 08 */ lha r0, 8(r29) /* 8002FA00 0002B660 2C 00 00 01 */ cmpwi r0, 1 /* 8002FA04 0002B664 40 82 00 0C */ bne lbl_8002FA10 /* 8002FA08 0002B668 83 9D 00 0C */ lwz r28, 0xc(r29) /* 8002FA0C 0002B66C 48 00 00 2C */ b lbl_8002FA38 lbl_8002FA10: /* 8002FA10 0002B670 2C 00 00 02 */ cmpwi r0, 2 /* 8002FA14 0002B674 40 82 00 18 */ bne lbl_8002FA2C /* 8002FA18 0002B678 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002FA1C 0002B67C FC 00 00 1E */ fctiwz f0, f0 /* 8002FA20 0002B680 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002FA24 0002B684 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002FA28 0002B688 48 00 00 0C */ b lbl_8002FA34 lbl_8002FA2C: /* 8002FA2C 0002B68C 38 7D 00 08 */ addi r3, r29, 8 /* 8002FA30 0002B690 48 1F E3 05 */ bl func_8022DD34 lbl_8002FA34: /* 8002FA34 0002B694 7C 7C 1B 78 */ mr r28, r3 lbl_8002FA38: /* 8002FA38 0002B698 4B FD CD B1 */ bl func_8000C7E8 /* 8002FA3C 0002B69C A0 BE 00 00 */ lhz r5, 0(r30) /* 8002FA40 0002B6A0 57 80 E0 06 */ slwi r0, r28, 0x1c /* 8002FA44 0002B6A4 53 60 C1 0E */ rlwimi r0, r27, 0x18, 4, 7 /* 8002FA48 0002B6A8 38 80 00 02 */ li r4, 2 /* 8002FA4C 0002B6AC 64 A5 00 02 */ oris r5, r5, 2 /* 8002FA50 0002B6B0 7C A5 03 78 */ or r5, r5, r0 /* 8002FA54 0002B6B4 4B FF 24 71 */ bl func_80021EC4 /* 8002FA58 0002B6B8 48 00 02 04 */ b lbl_8002FC5C /* 8002FA5C 0002B6BC A8 1D 00 08 */ lha r0, 8(r29) /* 8002FA60 0002B6C0 2C 00 00 01 */ cmpwi r0, 1 /* 8002FA64 0002B6C4 40 82 00 0C */ bne lbl_8002FA70 /* 8002FA68 0002B6C8 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002FA6C 0002B6CC 48 00 00 28 */ b lbl_8002FA94 lbl_8002FA70: /* 8002FA70 0002B6D0 2C 00 00 02 */ cmpwi r0, 2 /* 8002FA74 0002B6D4 40 82 00 18 */ bne lbl_8002FA8C /* 8002FA78 0002B6D8 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002FA7C 0002B6DC FC 00 00 1E */ fctiwz f0, f0 /* 8002FA80 0002B6E0 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002FA84 0002B6E4 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002FA88 0002B6E8 48 00 00 0C */ b lbl_8002FA94 lbl_8002FA8C: /* 8002FA8C 0002B6EC 38 7D 00 08 */ addi r3, r29, 8 /* 8002FA90 0002B6F0 48 1F E2 A5 */ bl func_8022DD34 lbl_8002FA94: /* 8002FA94 0002B6F4 54 63 06 7E */ clrlwi r3, r3, 0x19 /* 8002FA98 0002B6F8 48 04 44 09 */ bl func_80073EA0 /* 8002FA9C 0002B6FC 48 00 01 C0 */ b lbl_8002FC5C /* 8002FAA0 0002B700 38 60 2E D4 */ li r3, 0x2ed4 /* 8002FAA4 0002B704 48 22 08 41 */ bl func_802502E4 /* 8002FAA8 0002B708 2C 03 00 00 */ cmpwi r3, 0 /* 8002FAAC 0002B70C 40 82 00 50 */ bne lbl_8002FAFC /* 8002FAB0 0002B710 38 60 2E D5 */ li r3, 0x2ed5 /* 8002FAB4 0002B714 48 22 08 31 */ bl func_802502E4 /* 8002FAB8 0002B718 2C 03 00 00 */ cmpwi r3, 0 /* 8002FABC 0002B71C 40 82 00 40 */ bne lbl_8002FAFC /* 8002FAC0 0002B720 38 60 50 8A */ li r3, 0x508a /* 8002FAC4 0002B724 48 22 08 21 */ bl func_802502E4 /* 8002FAC8 0002B728 2C 03 00 00 */ cmpwi r3, 0 /* 8002FACC 0002B72C 40 82 00 30 */ bne lbl_8002FAFC /* 8002FAD0 0002B730 38 60 50 8B */ li r3, 0x508b /* 8002FAD4 0002B734 48 22 08 11 */ bl func_802502E4 /* 8002FAD8 0002B738 2C 03 00 00 */ cmpwi r3, 0 /* 8002FADC 0002B73C 40 82 00 20 */ bne lbl_8002FAFC /* 8002FAE0 0002B740 38 60 50 8C */ li r3, 0x508c /* 8002FAE4 0002B744 48 22 08 01 */ bl func_802502E4 /* 8002FAE8 0002B748 2C 03 00 00 */ cmpwi r3, 0 /* 8002FAEC 0002B74C 40 82 00 10 */ bne lbl_8002FAFC /* 8002FAF0 0002B750 88 0D 97 36 */ lbz r0, lbl_8063E9F6-_SDA_BASE_(r13) /* 8002FAF4 0002B754 2C 00 00 00 */ cmpwi r0, 0 /* 8002FAF8 0002B758 41 82 00 14 */ beq lbl_8002FB0C lbl_8002FAFC: /* 8002FAFC 0002B75C 38 00 00 01 */ li r0, 1 /* 8002FB00 0002B760 B0 1E 00 00 */ sth r0, 0(r30) /* 8002FB04 0002B764 90 1E 00 04 */ stw r0, 4(r30) /* 8002FB08 0002B768 48 00 01 54 */ b lbl_8002FC5C lbl_8002FB0C: /* 8002FB0C 0002B76C 38 60 00 01 */ li r3, 1 /* 8002FB10 0002B770 38 00 00 00 */ li r0, 0 /* 8002FB14 0002B774 B0 7E 00 00 */ sth r3, 0(r30) /* 8002FB18 0002B778 90 1E 00 04 */ stw r0, 4(r30) /* 8002FB1C 0002B77C 48 00 01 40 */ b lbl_8002FC5C /* 8002FB20 0002B780 3B A0 00 01 */ li r29, 1 /* 8002FB24 0002B784 38 00 00 00 */ li r0, 0 /* 8002FB28 0002B788 B3 BE 00 00 */ sth r29, 0(r30) /* 8002FB2C 0002B78C 90 1E 00 04 */ stw r0, 4(r30) /* 8002FB30 0002B790 48 04 CB A1 */ bl func_8007C6D0 /* 8002FB34 0002B794 28 03 00 01 */ cmplwi r3, 1 /* 8002FB38 0002B798 40 82 01 24 */ bne lbl_8002FC5C /* 8002FB3C 0002B79C B3 BE 00 00 */ sth r29, 0(r30) /* 8002FB40 0002B7A0 93 BE 00 04 */ stw r29, 4(r30) /* 8002FB44 0002B7A4 48 00 01 18 */ b lbl_8002FC5C /* 8002FB48 0002B7A8 3B A0 00 01 */ li r29, 1 /* 8002FB4C 0002B7AC 38 00 00 00 */ li r0, 0 /* 8002FB50 0002B7B0 B3 BE 00 00 */ sth r29, 0(r30) /* 8002FB54 0002B7B4 90 1E 00 04 */ stw r0, 4(r30) /* 8002FB58 0002B7B8 48 04 3B 25 */ bl func_8007367C /* 8002FB5C 0002B7BC 2C 03 00 00 */ cmpwi r3, 0 /* 8002FB60 0002B7C0 40 82 00 FC */ bne lbl_8002FC5C /* 8002FB64 0002B7C4 B3 BE 00 00 */ sth r29, 0(r30) /* 8002FB68 0002B7C8 93 BE 00 04 */ stw r29, 4(r30) /* 8002FB6C 0002B7CC 48 00 00 F0 */ b lbl_8002FC5C /* 8002FB70 0002B7D0 48 02 67 05 */ bl func_80056274 /* 8002FB74 0002B7D4 48 00 00 E8 */ b lbl_8002FC5C /* 8002FB78 0002B7D8 3B A0 00 01 */ li r29, 1 /* 8002FB7C 0002B7DC 38 00 00 00 */ li r0, 0 /* 8002FB80 0002B7E0 B3 BE 00 00 */ sth r29, 0(r30) /* 8002FB84 0002B7E4 90 1E 00 04 */ stw r0, 4(r30) /* 8002FB88 0002B7E8 48 02 67 71 */ bl func_800562F8 /* 8002FB8C 0002B7EC 28 03 00 01 */ cmplwi r3, 1 /* 8002FB90 0002B7F0 40 82 00 CC */ bne lbl_8002FC5C /* 8002FB94 0002B7F4 B3 BE 00 00 */ sth r29, 0(r30) /* 8002FB98 0002B7F8 93 BE 00 04 */ stw r29, 4(r30) /* 8002FB9C 0002B7FC 48 00 00 C0 */ b lbl_8002FC5C /* 8002FBA0 0002B800 A8 1D 00 08 */ lha r0, 8(r29) /* 8002FBA4 0002B804 2C 00 00 01 */ cmpwi r0, 1 /* 8002FBA8 0002B808 40 82 00 0C */ bne lbl_8002FBB4 /* 8002FBAC 0002B80C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002FBB0 0002B810 48 00 00 28 */ b lbl_8002FBD8 lbl_8002FBB4: /* 8002FBB4 0002B814 2C 00 00 02 */ cmpwi r0, 2 /* 8002FBB8 0002B818 40 82 00 18 */ bne lbl_8002FBD0 /* 8002FBBC 0002B81C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002FBC0 0002B820 FC 00 00 1E */ fctiwz f0, f0 /* 8002FBC4 0002B824 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002FBC8 0002B828 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002FBCC 0002B82C 48 00 00 0C */ b lbl_8002FBD8 lbl_8002FBD0: /* 8002FBD0 0002B830 38 7D 00 08 */ addi r3, r29, 8 /* 8002FBD4 0002B834 48 1F E1 61 */ bl func_8022DD34 lbl_8002FBD8: /* 8002FBD8 0002B838 2C 03 00 00 */ cmpwi r3, 0 /* 8002FBDC 0002B83C 41 82 00 18 */ beq lbl_8002FBF4 /* 8002FBE0 0002B840 48 02 66 DD */ bl func_800562BC /* 8002FBE4 0002B844 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8002FBE8 0002B848 38 80 0C 1C */ li r4, 0xc1c /* 8002FBEC 0002B84C 48 1F 6B BD */ bl func_802267A8 /* 8002FBF0 0002B850 48 00 00 6C */ b lbl_8002FC5C lbl_8002FBF4: /* 8002FBF4 0002B854 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8002FBF8 0002B858 38 80 08 34 */ li r4, 0x834 /* 8002FBFC 0002B85C 48 1F 6B AD */ bl func_802267A8 /* 8002FC00 0002B860 48 00 00 5C */ b lbl_8002FC5C /* 8002FC04 0002B864 48 04 3A C1 */ bl func_800736C4 /* 8002FC08 0002B868 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8002FC0C 0002B86C 38 00 00 01 */ li r0, 1 /* 8002FC10 0002B870 B0 1E 00 00 */ sth r0, 0(r30) /* 8002FC14 0002B874 90 7E 00 04 */ stw r3, 4(r30) /* 8002FC18 0002B878 48 00 00 44 */ b lbl_8002FC5C /* 8002FC1C 0002B87C A8 1D 00 08 */ lha r0, 8(r29) /* 8002FC20 0002B880 2C 00 00 01 */ cmpwi r0, 1 /* 8002FC24 0002B884 40 82 00 0C */ bne lbl_8002FC30 /* 8002FC28 0002B888 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8002FC2C 0002B88C 48 00 00 28 */ b lbl_8002FC54 lbl_8002FC30: /* 8002FC30 0002B890 2C 00 00 02 */ cmpwi r0, 2 /* 8002FC34 0002B894 40 82 00 18 */ bne lbl_8002FC4C /* 8002FC38 0002B898 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8002FC3C 0002B89C FC 00 00 1E */ fctiwz f0, f0 /* 8002FC40 0002B8A0 D8 01 01 78 */ stfd f0, 0x178(r1) /* 8002FC44 0002B8A4 80 61 01 7C */ lwz r3, 0x17c(r1) /* 8002FC48 0002B8A8 48 00 00 0C */ b lbl_8002FC54 lbl_8002FC4C: /* 8002FC4C 0002B8AC 38 7D 00 08 */ addi r3, r29, 8 /* 8002FC50 0002B8B0 48 1F E0 E5 */ bl func_8022DD34 lbl_8002FC54: /* 8002FC54 0002B8B4 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8002FC58 0002B8B8 48 03 AB CD */ bl func_8006A824 lbl_8002FC5C: /* 8002FC5C 0002B8BC 38 60 00 01 */ li r3, 1 lbl_8002FC60: /* 8002FC60 0002B8C0 E3 E1 01 A8 */ psq_l f31, 424(r1), 0, qr0 /* 8002FC64 0002B8C4 39 61 01 A0 */ addi r11, r1, 0x1a0 /* 8002FC68 0002B8C8 CB E1 01 A0 */ lfd f31, 0x1a0(r1) /* 8002FC6C 0002B8CC 48 19 75 01 */ bl _restgpr_25 /* 8002FC70 0002B8D0 80 01 01 B4 */ lwz r0, 0x1b4(r1) /* 8002FC74 0002B8D4 7C 08 03 A6 */ mtlr r0 /* 8002FC78 0002B8D8 38 21 01 B0 */ addi r1, r1, 0x1b0 /* 8002FC7C 0002B8DC 4E 80 00 20 */ blr .global func_8002FC80 func_8002FC80: /* 8002FC80 0002B8E0 94 21 FE C0 */ stwu r1, -0x140(r1) /* 8002FC84 0002B8E4 7C 08 02 A6 */ mflr r0 /* 8002FC88 0002B8E8 90 01 01 44 */ stw r0, 0x144(r1) /* 8002FC8C 0002B8EC 39 61 01 40 */ addi r11, r1, 0x140 /* 8002FC90 0002B8F0 48 19 74 81 */ bl _savegpr_21 /* 8002FC94 0002B8F4 3C C0 80 47 */ lis r6, lbl_80474F38@ha /* 8002FC98 0002B8F8 3B E0 00 00 */ li r31, 0 /* 8002FC9C 0002B8FC 38 86 4F 38 */ addi r4, r6, lbl_80474F38@l /* 8002FCA0 0002B900 B3 E6 4F 38 */ sth r31, 0x4f38(r6) /* 8002FCA4 0002B904 7C BA 2B 78 */ mr r26, r5 /* 8002FCA8 0002B908 7C 67 1B 78 */ mr r7, r3 /* 8002FCAC 0002B90C B3 E4 01 00 */ sth r31, 0x100(r4) /* 8002FCB0 0002B910 3B A0 00 01 */ li r29, 1 /* 8002FCB4 0002B914 38 80 00 00 */ li r4, 0 /* 8002FCB8 0002B918 3B 80 00 00 */ li r28, 0 /* 8002FCBC 0002B91C 3B C0 00 00 */ li r30, 0 /* 8002FCC0 0002B920 3B 60 00 00 */ li r27, 0 /* 8002FCC4 0002B924 3B 20 00 00 */ li r25, 0 /* 8002FCC8 0002B928 38 C0 00 00 */ li r6, 0 /* 8002FCCC 0002B92C 48 00 00 34 */ b lbl_8002FD00 lbl_8002FCD0: /* 8002FCD0 0002B930 A0 07 00 00 */ lhz r0, 0(r7) /* 8002FCD4 0002B934 38 E7 00 02 */ addi r7, r7, 2 /* 8002FCD8 0002B938 28 00 E0 00 */ cmplwi r0, 0xe000 /* 8002FCDC 0002B93C 40 82 00 08 */ bne lbl_8002FCE4 /* 8002FCE0 0002B940 3B BD 00 01 */ addi r29, r29, 1 lbl_8002FCE4: /* 8002FCE4 0002B944 A0 A7 00 00 */ lhz r5, 0(r7) /* 8002FCE8 0002B948 3C A5 00 01 */ addis r5, r5, 1 /* 8002FCEC 0002B94C 38 05 FE 01 */ addi r0, r5, -511 /* 8002FCF0 0002B950 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 8002FCF4 0002B954 28 00 00 01 */ cmplwi r0, 1 /* 8002FCF8 0002B958 41 81 00 08 */ bgt lbl_8002FD00 /* 8002FCFC 0002B95C 38 C0 00 01 */ li r6, 1 lbl_8002FD00: /* 8002FD00 0002B960 A0 07 00 00 */ lhz r0, 0(r7) /* 8002FD04 0002B964 28 00 FF FF */ cmplwi r0, 0xffff /* 8002FD08 0002B968 40 82 FF C8 */ bne lbl_8002FCD0 /* 8002FD0C 0002B96C 2C 06 00 00 */ cmpwi r6, 0 /* 8002FD10 0002B970 41 82 01 F8 */ beq lbl_8002FF08 /* 8002FD14 0002B974 3E A0 80 47 */ lis r21, lbl_80474F38@ha /* 8002FD18 0002B978 7C 78 1B 78 */ mr r24, r3 /* 8002FD1C 0002B97C 3A C1 00 08 */ addi r22, r1, 8 /* 8002FD20 0002B980 3B 80 00 00 */ li r28, 0 /* 8002FD24 0002B984 3A B5 4F 38 */ addi r21, r21, lbl_80474F38@l /* 8002FD28 0002B988 3E E0 00 01 */ lis r23, 1 /* 8002FD2C 0002B98C 48 00 00 6C */ b lbl_8002FD98 lbl_8002FD30: /* 8002FD30 0002B990 3C 64 00 01 */ addis r3, r4, 1 /* 8002FD34 0002B994 38 03 FE 01 */ addi r0, r3, -511 /* 8002FD38 0002B998 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 8002FD3C 0002B99C 28 00 00 01 */ cmplwi r0, 1 /* 8002FD40 0002B9A0 41 81 00 48 */ bgt lbl_8002FD88 /* 8002FD44 0002B9A4 57 80 08 3C */ slwi r0, r28, 1 /* 8002FD48 0002B9A8 38 77 FF FF */ addi r3, r23, -1 /* 8002FD4C 0002B9AC 7C 76 03 2E */ sthx r3, r22, r0 /* 8002FD50 0002B9B0 3B 9C 00 01 */ addi r28, r28, 1 /* 8002FD54 0002B9B4 7C 75 FA 14 */ add r3, r21, r31 /* 8002FD58 0002B9B8 7E C4 B3 78 */ mr r4, r22 /* 8002FD5C 0002B9BC 7F 85 E3 78 */ mr r5, r28 /* 8002FD60 0002B9C0 3B 7B 00 01 */ addi r27, r27, 1 /* 8002FD64 0002B9C4 3B FF 01 00 */ addi r31, r31, 0x100 /* 8002FD68 0002B9C8 48 14 73 19 */ bl func_80177080 /* 8002FD6C 0002B9CC A0 18 00 02 */ lhz r0, 2(r24) /* 8002FD70 0002B9D0 93 9A 00 00 */ stw r28, 0(r26) /* 8002FD74 0002B9D4 3B 80 00 00 */ li r28, 0 /* 8002FD78 0002B9D8 28 00 E0 00 */ cmplwi r0, 0xe000 /* 8002FD7C 0002B9DC 40 82 00 18 */ bne lbl_8002FD94 /* 8002FD80 0002B9E0 3B 18 00 02 */ addi r24, r24, 2 /* 8002FD84 0002B9E4 48 00 00 10 */ b lbl_8002FD94 lbl_8002FD88: /* 8002FD88 0002B9E8 57 80 08 3C */ slwi r0, r28, 1 /* 8002FD8C 0002B9EC 3B 9C 00 01 */ addi r28, r28, 1 /* 8002FD90 0002B9F0 7C 96 03 2E */ sthx r4, r22, r0 lbl_8002FD94: /* 8002FD94 0002B9F4 3B 18 00 02 */ addi r24, r24, 2 lbl_8002FD98: /* 8002FD98 0002B9F8 A0 98 00 00 */ lhz r4, 0(r24) /* 8002FD9C 0002B9FC 28 04 FF FF */ cmplwi r4, 0xffff /* 8002FDA0 0002BA00 40 82 FF 90 */ bne lbl_8002FD30 /* 8002FDA4 0002BA04 2C 1C 00 00 */ cmpwi r28, 0 /* 8002FDA8 0002BA08 41 82 01 58 */ beq lbl_8002FF00 /* 8002FDAC 0002BA0C 2C 9C 00 14 */ cmpwi cr1, r28, 0x14 /* 8002FDB0 0002BA10 7F 88 E3 78 */ mr r8, r28 /* 8002FDB4 0002BA14 40 84 01 1C */ bge cr1, lbl_8002FED0 /* 8002FDB8 0002BA18 20 FC 00 14 */ subfic r7, r28, 0x14 /* 8002FDBC 0002BA1C 2C 07 00 08 */ cmpwi r7, 8 /* 8002FDC0 0002BA20 40 81 00 E4 */ ble lbl_8002FEA4 /* 8002FDC4 0002BA24 38 80 00 00 */ li r4, 0 /* 8002FDC8 0002BA28 38 A0 00 00 */ li r5, 0 /* 8002FDCC 0002BA2C 38 C0 00 00 */ li r6, 0 /* 8002FDD0 0002BA30 41 85 00 18 */ bgt cr1, lbl_8002FDE8 /* 8002FDD4 0002BA34 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha /* 8002FDD8 0002BA38 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l /* 8002FDDC 0002BA3C 7C 1C 00 00 */ cmpw r28, r0 /* 8002FDE0 0002BA40 41 81 00 08 */ bgt lbl_8002FDE8 /* 8002FDE4 0002BA44 38 C0 00 01 */ li r6, 1 lbl_8002FDE8: /* 8002FDE8 0002BA48 2C 06 00 00 */ cmpwi r6, 0 /* 8002FDEC 0002BA4C 41 82 00 14 */ beq lbl_8002FE00 /* 8002FDF0 0002BA50 3C 1C 80 00 */ addis r0, r28, 0x8000 /* 8002FDF4 0002BA54 28 00 00 00 */ cmplwi r0, 0 /* 8002FDF8 0002BA58 41 82 00 08 */ beq lbl_8002FE00 /* 8002FDFC 0002BA5C 38 A0 00 01 */ li r5, 1 lbl_8002FE00: /* 8002FE00 0002BA60 2C 05 00 00 */ cmpwi r5, 0 /* 8002FE04 0002BA64 41 82 00 2C */ beq lbl_8002FE30 /* 8002FE08 0002BA68 7C 1C 00 D0 */ neg r0, r28 /* 8002FE0C 0002BA6C 38 60 00 01 */ li r3, 1 /* 8002FE10 0002BA70 54 00 00 01 */ rlwinm. r0, r0, 0, 0, 0 /* 8002FE14 0002BA74 40 82 00 10 */ bne lbl_8002FE24 /* 8002FE18 0002BA78 54 E0 00 01 */ rlwinm. r0, r7, 0, 0, 0 /* 8002FE1C 0002BA7C 41 82 00 08 */ beq lbl_8002FE24 /* 8002FE20 0002BA80 38 60 00 00 */ li r3, 0 lbl_8002FE24: /* 8002FE24 0002BA84 2C 03 00 00 */ cmpwi r3, 0 /* 8002FE28 0002BA88 41 82 00 08 */ beq lbl_8002FE30 /* 8002FE2C 0002BA8C 38 80 00 01 */ li r4, 1 lbl_8002FE30: /* 8002FE30 0002BA90 2C 04 00 00 */ cmpwi r4, 0 /* 8002FE34 0002BA94 41 82 00 70 */ beq lbl_8002FEA4 /* 8002FE38 0002BA98 20 1C 00 13 */ subfic r0, r28, 0x13 /* 8002FE3C 0002BA9C 38 81 00 08 */ addi r4, r1, 8 /* 8002FE40 0002BAA0 54 00 E8 FE */ srwi r0, r0, 3 /* 8002FE44 0002BAA4 57 83 08 3C */ slwi r3, r28, 1 /* 8002FE48 0002BAA8 38 A0 00 01 */ li r5, 1 /* 8002FE4C 0002BAAC 7C 09 03 A6 */ mtctr r0 /* 8002FE50 0002BAB0 2C 1C 00 0C */ cmpwi r28, 0xc /* 8002FE54 0002BAB4 40 80 00 50 */ bge lbl_8002FEA4 lbl_8002FE58: /* 8002FE58 0002BAB8 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE5C 0002BABC 38 63 00 02 */ addi r3, r3, 2 /* 8002FE60 0002BAC0 39 08 00 08 */ addi r8, r8, 8 /* 8002FE64 0002BAC4 3B 9C 00 08 */ addi r28, r28, 8 /* 8002FE68 0002BAC8 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE6C 0002BACC 38 63 00 02 */ addi r3, r3, 2 /* 8002FE70 0002BAD0 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE74 0002BAD4 38 63 00 02 */ addi r3, r3, 2 /* 8002FE78 0002BAD8 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE7C 0002BADC 38 63 00 02 */ addi r3, r3, 2 /* 8002FE80 0002BAE0 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE84 0002BAE4 38 63 00 02 */ addi r3, r3, 2 /* 8002FE88 0002BAE8 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE8C 0002BAEC 38 63 00 02 */ addi r3, r3, 2 /* 8002FE90 0002BAF0 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE94 0002BAF4 38 63 00 02 */ addi r3, r3, 2 /* 8002FE98 0002BAF8 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FE9C 0002BAFC 38 63 00 02 */ addi r3, r3, 2 /* 8002FEA0 0002BB00 42 00 FF B8 */ bdnz lbl_8002FE58 lbl_8002FEA4: /* 8002FEA4 0002BB04 20 08 00 14 */ subfic r0, r8, 0x14 /* 8002FEA8 0002BB08 38 81 00 08 */ addi r4, r1, 8 /* 8002FEAC 0002BB0C 57 83 08 3C */ slwi r3, r28, 1 /* 8002FEB0 0002BB10 38 A0 00 01 */ li r5, 1 /* 8002FEB4 0002BB14 7C 09 03 A6 */ mtctr r0 /* 8002FEB8 0002BB18 2C 08 00 14 */ cmpwi r8, 0x14 /* 8002FEBC 0002BB1C 40 80 00 14 */ bge lbl_8002FED0 lbl_8002FEC0: /* 8002FEC0 0002BB20 7C A4 1B 2E */ sthx r5, r4, r3 /* 8002FEC4 0002BB24 3B 9C 00 01 */ addi r28, r28, 1 /* 8002FEC8 0002BB28 38 63 00 02 */ addi r3, r3, 2 /* 8002FECC 0002BB2C 42 00 FF F4 */ bdnz lbl_8002FEC0 lbl_8002FED0: /* 8002FED0 0002BB30 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 8002FED4 0002BB34 3C 60 80 47 */ lis r3, lbl_80474F38@ha /* 8002FED8 0002BB38 38 81 00 08 */ addi r4, r1, 8 /* 8002FEDC 0002BB3C 57 85 08 3C */ slwi r5, r28, 1 /* 8002FEE0 0002BB40 38 C6 FF FF */ addi r6, r6, 0x0000FFFF@l /* 8002FEE4 0002BB44 57 60 40 2E */ slwi r0, r27, 8 /* 8002FEE8 0002BB48 38 63 4F 38 */ addi r3, r3, lbl_80474F38@l /* 8002FEEC 0002BB4C 7C C4 2B 2E */ sthx r6, r4, r5 /* 8002FEF0 0002BB50 38 BC 00 01 */ addi r5, r28, 1 /* 8002FEF4 0002BB54 3B 7B 00 01 */ addi r27, r27, 1 /* 8002FEF8 0002BB58 7C 63 02 14 */ add r3, r3, r0 /* 8002FEFC 0002BB5C 48 14 71 85 */ bl func_80177080 lbl_8002FF00: /* 8002FF00 0002BB60 7F 63 DB 78 */ mr r3, r27 /* 8002FF04 0002BB64 48 00 01 54 */ b lbl_80030058 lbl_8002FF08: /* 8002FF08 0002BB68 3F 00 80 47 */ lis r24, lbl_80474F38@ha /* 8002FF0C 0002BB6C 7C 7F 1B 78 */ mr r31, r3 /* 8002FF10 0002BB70 3A E1 00 08 */ addi r23, r1, 8 /* 8002FF14 0002BB74 3E C0 00 01 */ lis r22, 1 /* 8002FF18 0002BB78 3B 18 4F 38 */ addi r24, r24, lbl_80474F38@l /* 8002FF1C 0002BB7C 3A A0 00 01 */ li r21, 1 /* 8002FF20 0002BB80 48 00 00 F8 */ b lbl_80030018 lbl_8002FF24: /* 8002FF24 0002BB84 2C 1E 00 7E */ cmpwi r30, 0x7e /* 8002FF28 0002BB88 40 80 00 FC */ bge lbl_80030024 /* 8002FF2C 0002BB8C 28 05 01 FF */ cmplwi r5, 0x1ff /* 8002FF30 0002BB90 41 82 00 E4 */ beq lbl_80030014 /* 8002FF34 0002BB94 28 05 02 00 */ cmplwi r5, 0x200 /* 8002FF38 0002BB98 41 82 00 DC */ beq lbl_80030014 /* 8002FF3C 0002BB9C 28 05 E0 00 */ cmplwi r5, 0xe000 /* 8002FF40 0002BBA0 40 82 00 B8 */ bne lbl_8002FFF8 /* 8002FF44 0002BBA4 3B 9C 00 01 */ addi r28, r28, 1 /* 8002FF48 0002BBA8 2C 1C 00 02 */ cmpwi r28, 2 /* 8002FF4C 0002BBAC 40 82 00 A8 */ bne lbl_8002FFF4 /* 8002FF50 0002BBB0 2C 1D 00 03 */ cmpwi r29, 3 /* 8002FF54 0002BBB4 40 82 00 60 */ bne lbl_8002FFB4 /* 8002FF58 0002BBB8 7F E7 FB 78 */ mr r7, r31 /* 8002FF5C 0002BBBC 39 00 00 00 */ li r8, 0 lbl_8002FF60: /* 8002FF60 0002BBC0 A4 C7 00 02 */ lhzu r6, 2(r7) /* 8002FF64 0002BBC4 3C 66 00 01 */ addis r3, r6, 1 /* 8002FF68 0002BBC8 38 03 FE 01 */ addi r0, r3, -511 /* 8002FF6C 0002BBCC 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 8002FF70 0002BBD0 28 00 00 01 */ cmplwi r0, 1 /* 8002FF74 0002BBD4 41 81 00 0C */ bgt lbl_8002FF80 /* 8002FF78 0002BBD8 38 E7 00 02 */ addi r7, r7, 2 /* 8002FF7C 0002BBDC 4B FF FF E4 */ b lbl_8002FF60 lbl_8002FF80: /* 8002FF80 0002BBE0 28 06 E0 00 */ cmplwi r6, 0xe000 /* 8002FF84 0002BBE4 41 82 00 14 */ beq lbl_8002FF98 /* 8002FF88 0002BBE8 28 06 FF FF */ cmplwi r6, 0xffff /* 8002FF8C 0002BBEC 41 82 00 0C */ beq lbl_8002FF98 /* 8002FF90 0002BBF0 39 08 00 01 */ addi r8, r8, 1 /* 8002FF94 0002BBF4 4B FF FF CC */ b lbl_8002FF60 lbl_8002FF98: /* 8002FF98 0002BBF8 7C 08 22 14 */ add r0, r8, r4 /* 8002FF9C 0002BBFC 2C 00 00 16 */ cmpwi r0, 0x16 /* 8002FFA0 0002BC00 40 80 00 14 */ bge lbl_8002FFB4 /* 8002FFA4 0002BC04 57 C0 08 3C */ slwi r0, r30, 1 /* 8002FFA8 0002BC08 3B DE 00 01 */ addi r30, r30, 1 /* 8002FFAC 0002BC0C 7E B7 03 2E */ sthx r21, r23, r0 /* 8002FFB0 0002BC10 48 00 00 64 */ b lbl_80030014 lbl_8002FFB4: /* 8002FFB4 0002BC14 28 05 E0 00 */ cmplwi r5, 0xe000 /* 8002FFB8 0002BC18 40 82 00 3C */ bne lbl_8002FFF4 /* 8002FFBC 0002BC1C 57 C0 08 3C */ slwi r0, r30, 1 /* 8002FFC0 0002BC20 38 76 FF FF */ addi r3, r22, -1 /* 8002FFC4 0002BC24 7C 77 03 2E */ sthx r3, r23, r0 /* 8002FFC8 0002BC28 3B DE 00 01 */ addi r30, r30, 1 /* 8002FFCC 0002BC2C 7C 78 CA 14 */ add r3, r24, r25 /* 8002FFD0 0002BC30 7E E4 BB 78 */ mr r4, r23 /* 8002FFD4 0002BC34 7F C5 F3 78 */ mr r5, r30 /* 8002FFD8 0002BC38 3B 7B 00 01 */ addi r27, r27, 1 /* 8002FFDC 0002BC3C 3B 39 01 00 */ addi r25, r25, 0x100 /* 8002FFE0 0002BC40 48 14 70 A1 */ bl func_80177080 /* 8002FFE4 0002BC44 93 DA 00 00 */ stw r30, 0(r26) /* 8002FFE8 0002BC48 3B C0 00 00 */ li r30, 0 /* 8002FFEC 0002BC4C 38 80 00 00 */ li r4, 0 /* 8002FFF0 0002BC50 48 00 00 24 */ b lbl_80030014 lbl_8002FFF4: /* 8002FFF4 0002BC54 38 80 00 00 */ li r4, 0 lbl_8002FFF8: /* 8002FFF8 0002BC58 A0 1F 00 00 */ lhz r0, 0(r31) /* 8002FFFC 0002BC5C 57 C3 08 3C */ slwi r3, r30, 1 /* 80030000 0002BC60 7C B7 1B 2E */ sthx r5, r23, r3 /* 80030004 0002BC64 3B DE 00 01 */ addi r30, r30, 1 /* 80030008 0002BC68 28 00 E0 00 */ cmplwi r0, 0xe000 /* 8003000C 0002BC6C 41 82 00 08 */ beq lbl_80030014 /* 80030010 0002BC70 38 84 00 01 */ addi r4, r4, 1 lbl_80030014: /* 80030014 0002BC74 3B FF 00 02 */ addi r31, r31, 2 lbl_80030018: /* 80030018 0002BC78 A0 BF 00 00 */ lhz r5, 0(r31) /* 8003001C 0002BC7C 28 05 FF FF */ cmplwi r5, 0xffff /* 80030020 0002BC80 40 82 FF 04 */ bne lbl_8002FF24 lbl_80030024: /* 80030024 0002BC84 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 80030028 0002BC88 3C 60 80 47 */ lis r3, lbl_80474F38@ha /* 8003002C 0002BC8C 38 81 00 08 */ addi r4, r1, 8 /* 80030030 0002BC90 57 C5 08 3C */ slwi r5, r30, 1 /* 80030034 0002BC94 38 C6 FF FF */ addi r6, r6, 0x0000FFFF@l /* 80030038 0002BC98 57 60 40 2E */ slwi r0, r27, 8 /* 8003003C 0002BC9C 38 63 4F 38 */ addi r3, r3, lbl_80474F38@l /* 80030040 0002BCA0 7C C4 2B 2E */ sthx r6, r4, r5 /* 80030044 0002BCA4 38 BE 00 01 */ addi r5, r30, 1 /* 80030048 0002BCA8 3B 7B 00 01 */ addi r27, r27, 1 /* 8003004C 0002BCAC 7C 63 02 14 */ add r3, r3, r0 /* 80030050 0002BCB0 48 14 70 31 */ bl func_80177080 /* 80030054 0002BCB4 7F 63 DB 78 */ mr r3, r27 lbl_80030058: /* 80030058 0002BCB8 39 61 01 40 */ addi r11, r1, 0x140 /* 8003005C 0002BCBC 48 19 71 01 */ bl _restgpr_21 /* 80030060 0002BCC0 80 01 01 44 */ lwz r0, 0x144(r1) /* 80030064 0002BCC4 7C 08 03 A6 */ mtlr r0 /* 80030068 0002BCC8 38 21 01 40 */ addi r1, r1, 0x140 /* 8003006C 0002BCCC 4E 80 00 20 */ blr .global func_80030070 func_80030070: /* 80030070 0002BCD0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80030074 0002BCD4 7C 08 02 A6 */ mflr r0 /* 80030078 0002BCD8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003007C 0002BCDC 88 0D 97 36 */ lbz r0, lbl_8063E9F6-_SDA_BASE_(r13) /* 80030080 0002BCE0 2C 00 00 00 */ cmpwi r0, 0 /* 80030084 0002BCE4 41 82 00 80 */ beq lbl_80030104 /* 80030088 0002BCE8 C0 0D 97 38 */ lfs f0, lbl_8063E9F8-_SDA_BASE_(r13) /* 8003008C 0002BCEC 38 60 50 8A */ li r3, 0x508a /* 80030090 0002BCF0 EC 00 08 28 */ fsubs f0, f0, f1 /* 80030094 0002BCF4 D0 0D 97 38 */ stfs f0, lbl_8063E9F8-_SDA_BASE_(r13) /* 80030098 0002BCF8 48 22 02 4D */ bl func_802502E4 /* 8003009C 0002BCFC 2C 03 00 00 */ cmpwi r3, 0 /* 800300A0 0002BD00 40 82 00 64 */ bne lbl_80030104 /* 800300A4 0002BD04 38 60 50 8B */ li r3, 0x508b /* 800300A8 0002BD08 48 22 02 3D */ bl func_802502E4 /* 800300AC 0002BD0C 2C 03 00 00 */ cmpwi r3, 0 /* 800300B0 0002BD10 40 82 00 54 */ bne lbl_80030104 /* 800300B4 0002BD14 38 00 00 00 */ li r0, 0 /* 800300B8 0002BD18 38 60 50 8B */ li r3, 0x508b /* 800300BC 0002BD1C 98 0D 97 36 */ stb r0, lbl_8063E9F6-_SDA_BASE_(r13) /* 800300C0 0002BD20 48 22 02 15 */ bl func_802502D4 /* 800300C4 0002BD24 38 60 50 8A */ li r3, 0x508a /* 800300C8 0002BD28 48 22 02 0D */ bl func_802502D4 /* 800300CC 0002BD2C 3C 80 80 47 */ lis r4, lbl_80474F38@ha /* 800300D0 0002BD30 38 60 00 10 */ li r3, 0x10 /* 800300D4 0002BD34 38 84 4F 38 */ addi r4, r4, lbl_80474F38@l /* 800300D8 0002BD38 38 84 01 00 */ addi r4, r4, 0x100 /* 800300DC 0002BD3C 48 12 C2 2D */ bl func_8015C308 /* 800300E0 0002BD40 80 8D 97 3C */ lwz r4, lbl_8063E9FC-_SDA_BASE_(r13) /* 800300E4 0002BD44 38 60 50 8A */ li r3, 0x508a /* 800300E8 0002BD48 80 AD 97 40 */ lwz r5, lbl_8063EA00-_SDA_BASE_(r13) /* 800300EC 0002BD4C 39 00 FF FF */ li r8, -1 /* 800300F0 0002BD50 A8 CD 97 44 */ lha r6, lbl_8063EA04-_SDA_BASE_(r13) /* 800300F4 0002BD54 39 20 00 00 */ li r9, 0 /* 800300F8 0002BD58 A8 ED 97 46 */ lha r7, lbl_8063EA06-_SDA_BASE_(r13) /* 800300FC 0002BD5C 39 40 00 01 */ li r10, 1 /* 80030100 0002BD60 48 21 FF 9D */ bl func_8025009C lbl_80030104: /* 80030104 0002BD64 80 01 00 14 */ lwz r0, 0x14(r1) /* 80030108 0002BD68 7C 08 03 A6 */ mtlr r0 /* 8003010C 0002BD6C 38 21 00 10 */ addi r1, r1, 0x10 /* 80030110 0002BD70 4E 80 00 20 */ blr .global func_80030114 func_80030114: /* 80030114 0002BD74 38 A0 00 01 */ li r5, 1 /* 80030118 0002BD78 38 6D 97 30 */ addi r3, r13, lbl_8063E9F0-_SDA_BASE_ /* 8003011C 0002BD7C 38 80 00 04 */ li r4, 4 /* 80030120 0002BD80 38 00 00 00 */ li r0, 0 /* 80030124 0002BD84 98 AD 97 30 */ stb r5, lbl_8063E9F0-_SDA_BASE_(r13) /* 80030128 0002BD88 B0 83 00 02 */ sth r4, 2(r3) /* 8003012C 0002BD8C 98 03 00 04 */ stb r0, 4(r3) /* 80030130 0002BD90 4E 80 00 20 */ blr .global lbl_80030134 lbl_80030134: /* 80030134 0002BD94 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80030138 0002BD98 7C 08 02 A6 */ mflr r0 /* 8003013C 0002BD9C 90 01 00 24 */ stw r0, 0x24(r1) /* 80030140 0002BDA0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80030144 0002BDA4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80030148 0002BDA8 7C DE 33 78 */ mr r30, r6 /* 8003014C 0002BDAC 93 A1 00 14 */ stw r29, 0x14(r1) /* 80030150 0002BDB0 7C BD 2B 78 */ mr r29, r5 /* 80030154 0002BDB4 93 81 00 10 */ stw r28, 0x10(r1) /* 80030158 0002BDB8 7C 9C 23 78 */ mr r28, r4 /* 8003015C 0002BDBC 48 01 46 ED */ bl func_80044848 /* 80030160 0002BDC0 2C 1C 00 12 */ cmpwi r28, 0x12 /* 80030164 0002BDC4 7C 7F 1B 78 */ mr r31, r3 /* 80030168 0002BDC8 41 82 00 C4 */ beq lbl_8003022C /* 8003016C 0002BDCC 40 80 01 70 */ bge lbl_800302DC /* 80030170 0002BDD0 2C 1C 00 11 */ cmpwi r28, 0x11 /* 80030174 0002BDD4 40 80 00 08 */ bge lbl_8003017C /* 80030178 0002BDD8 48 00 01 64 */ b lbl_800302DC lbl_8003017C: /* 8003017C 0002BDDC A8 1D 00 08 */ lha r0, 8(r29) /* 80030180 0002BDE0 2C 00 00 01 */ cmpwi r0, 1 /* 80030184 0002BDE4 40 82 00 0C */ bne lbl_80030190 /* 80030188 0002BDE8 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8003018C 0002BDEC 48 00 00 28 */ b lbl_800301B4 lbl_80030190: /* 80030190 0002BDF0 2C 00 00 02 */ cmpwi r0, 2 /* 80030194 0002BDF4 40 82 00 18 */ bne lbl_800301AC /* 80030198 0002BDF8 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8003019C 0002BDFC FC 00 00 1E */ fctiwz f0, f0 /* 800301A0 0002BE00 D8 01 00 08 */ stfd f0, 8(r1) /* 800301A4 0002BE04 80 61 00 0C */ lwz r3, 0xc(r1) /* 800301A8 0002BE08 48 00 00 0C */ b lbl_800301B4 lbl_800301AC: /* 800301AC 0002BE0C 38 7D 00 08 */ addi r3, r29, 8 /* 800301B0 0002BE10 48 1F DB 85 */ bl func_8022DD34 lbl_800301B4: /* 800301B4 0002BE14 2C 03 00 00 */ cmpwi r3, 0 /* 800301B8 0002BE18 41 80 00 0C */ blt lbl_800301C4 /* 800301BC 0002BE1C 2C 03 00 08 */ cmpwi r3, 8 /* 800301C0 0002BE20 41 80 00 0C */ blt lbl_800301CC lbl_800301C4: /* 800301C4 0002BE24 38 00 00 00 */ li r0, 0 /* 800301C8 0002BE28 48 00 00 0C */ b lbl_800301D4 lbl_800301CC: /* 800301CC 0002BE2C 1C 03 00 F0 */ mulli r0, r3, 0xf0 /* 800301D0 0002BE30 7C 1F 02 14 */ add r0, r31, r0 lbl_800301D4: /* 800301D4 0002BE34 2C 00 00 00 */ cmpwi r0, 0 /* 800301D8 0002BE38 41 82 01 04 */ beq lbl_800302DC /* 800301DC 0002BE3C 38 60 00 2A */ li r3, 0x2a /* 800301E0 0002BE40 38 00 00 00 */ li r0, 0 /* 800301E4 0002BE44 B0 7E 00 00 */ sth r3, 0(r30) /* 800301E8 0002BE48 B0 1E 00 02 */ sth r0, 2(r30) /* 800301EC 0002BE4C A8 1D 00 08 */ lha r0, 8(r29) /* 800301F0 0002BE50 2C 00 00 01 */ cmpwi r0, 1 /* 800301F4 0002BE54 40 82 00 0C */ bne lbl_80030200 /* 800301F8 0002BE58 80 7D 00 0C */ lwz r3, 0xc(r29) /* 800301FC 0002BE5C 48 00 00 28 */ b lbl_80030224 lbl_80030200: /* 80030200 0002BE60 2C 00 00 02 */ cmpwi r0, 2 /* 80030204 0002BE64 40 82 00 18 */ bne lbl_8003021C /* 80030208 0002BE68 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8003020C 0002BE6C FC 00 00 1E */ fctiwz f0, f0 /* 80030210 0002BE70 D8 01 00 08 */ stfd f0, 8(r1) /* 80030214 0002BE74 80 61 00 0C */ lwz r3, 0xc(r1) /* 80030218 0002BE78 48 00 00 0C */ b lbl_80030224 lbl_8003021C: /* 8003021C 0002BE7C 38 7D 00 08 */ addi r3, r29, 8 /* 80030220 0002BE80 48 1F DB 15 */ bl func_8022DD34 lbl_80030224: /* 80030224 0002BE84 90 7E 00 04 */ stw r3, 4(r30) /* 80030228 0002BE88 48 00 00 B4 */ b lbl_800302DC lbl_8003022C: /* 8003022C 0002BE8C A8 1D 00 08 */ lha r0, 8(r29) /* 80030230 0002BE90 2C 00 00 01 */ cmpwi r0, 1 /* 80030234 0002BE94 40 82 00 0C */ bne lbl_80030240 /* 80030238 0002BE98 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8003023C 0002BE9C 48 00 00 28 */ b lbl_80030264 lbl_80030240: /* 80030240 0002BEA0 2C 00 00 02 */ cmpwi r0, 2 /* 80030244 0002BEA4 40 82 00 18 */ bne lbl_8003025C /* 80030248 0002BEA8 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 8003024C 0002BEAC FC 00 00 1E */ fctiwz f0, f0 /* 80030250 0002BEB0 D8 01 00 08 */ stfd f0, 8(r1) /* 80030254 0002BEB4 80 61 00 0C */ lwz r3, 0xc(r1) /* 80030258 0002BEB8 48 00 00 0C */ b lbl_80030264 lbl_8003025C: /* 8003025C 0002BEBC 38 7D 00 08 */ addi r3, r29, 8 /* 80030260 0002BEC0 48 1F DA D5 */ bl func_8022DD34 lbl_80030264: /* 80030264 0002BEC4 2C 03 00 00 */ cmpwi r3, 0 /* 80030268 0002BEC8 41 80 00 0C */ blt lbl_80030274 /* 8003026C 0002BECC 2C 03 00 08 */ cmpwi r3, 8 /* 80030270 0002BED0 41 80 00 0C */ blt lbl_8003027C lbl_80030274: /* 80030274 0002BED4 38 00 00 00 */ li r0, 0 /* 80030278 0002BED8 48 00 00 10 */ b lbl_80030288 lbl_8003027C: /* 8003027C 0002BEDC 1C 03 00 E8 */ mulli r0, r3, 0xe8 /* 80030280 0002BEE0 7C 7F 02 14 */ add r3, r31, r0 /* 80030284 0002BEE4 38 03 07 80 */ addi r0, r3, 0x780 lbl_80030288: /* 80030288 0002BEE8 2C 00 00 00 */ cmpwi r0, 0 /* 8003028C 0002BEEC 41 82 00 50 */ beq lbl_800302DC /* 80030290 0002BEF0 38 60 00 2A */ li r3, 0x2a /* 80030294 0002BEF4 38 00 00 00 */ li r0, 0 /* 80030298 0002BEF8 B0 7E 00 00 */ sth r3, 0(r30) /* 8003029C 0002BEFC B0 1E 00 02 */ sth r0, 2(r30) /* 800302A0 0002BF00 A8 1D 00 08 */ lha r0, 8(r29) /* 800302A4 0002BF04 2C 00 00 01 */ cmpwi r0, 1 /* 800302A8 0002BF08 40 82 00 0C */ bne lbl_800302B4 /* 800302AC 0002BF0C 80 7D 00 0C */ lwz r3, 0xc(r29) /* 800302B0 0002BF10 48 00 00 28 */ b lbl_800302D8 lbl_800302B4: /* 800302B4 0002BF14 2C 00 00 02 */ cmpwi r0, 2 /* 800302B8 0002BF18 40 82 00 18 */ bne lbl_800302D0 /* 800302BC 0002BF1C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 800302C0 0002BF20 FC 00 00 1E */ fctiwz f0, f0 /* 800302C4 0002BF24 D8 01 00 08 */ stfd f0, 8(r1) /* 800302C8 0002BF28 80 61 00 0C */ lwz r3, 0xc(r1) /* 800302CC 0002BF2C 48 00 00 0C */ b lbl_800302D8 lbl_800302D0: /* 800302D0 0002BF30 38 7D 00 08 */ addi r3, r29, 8 /* 800302D4 0002BF34 48 1F DA 61 */ bl func_8022DD34 lbl_800302D8: /* 800302D8 0002BF38 90 7E 00 04 */ stw r3, 4(r30) lbl_800302DC: /* 800302DC 0002BF3C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800302E0 0002BF40 38 60 00 01 */ li r3, 1 /* 800302E4 0002BF44 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800302E8 0002BF48 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800302EC 0002BF4C 83 81 00 10 */ lwz r28, 0x10(r1) /* 800302F0 0002BF50 80 01 00 24 */ lwz r0, 0x24(r1) /* 800302F4 0002BF54 7C 08 03 A6 */ mtlr r0 /* 800302F8 0002BF58 38 21 00 20 */ addi r1, r1, 0x20 /* 800302FC 0002BF5C 4E 80 00 20 */ blr .global func_80030300 func_80030300: /* 80030300 0002BF60 38 A0 00 01 */ li r5, 1 /* 80030304 0002BF64 38 6D 97 48 */ addi r3, r13, lbl_8063EA08-_SDA_BASE_ /* 80030308 0002BF68 38 80 00 04 */ li r4, 4 /* 8003030C 0002BF6C 38 00 00 00 */ li r0, 0 /* 80030310 0002BF70 98 AD 97 48 */ stb r5, lbl_8063EA08-_SDA_BASE_(r13) /* 80030314 0002BF74 B0 83 00 02 */ sth r4, 2(r3) /* 80030318 0002BF78 98 03 00 04 */ stb r0, 4(r3) /* 8003031C 0002BF7C 4E 80 00 20 */ blr .global lbl_80030320 lbl_80030320: /* 80030320 0002BF80 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80030324 0002BF84 7C 08 02 A6 */ mflr r0 /* 80030328 0002BF88 90 01 00 74 */ stw r0, 0x74(r1) /* 8003032C 0002BF8C DB E1 00 60 */ stfd f31, 0x60(r1) /* 80030330 0002BF90 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 80030334 0002BF94 DB C1 00 50 */ stfd f30, 0x50(r1) /* 80030338 0002BF98 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8003033C 0002BF9C DB A1 00 40 */ stfd f29, 0x40(r1) /* 80030340 0002BFA0 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 80030344 0002BFA4 39 61 00 40 */ addi r11, r1, 0x40 /* 80030348 0002BFA8 48 19 6D E1 */ bl _savegpr_27 /* 8003034C 0002BFAC 3C 00 43 30 */ lis r0, 0x4330 /* 80030350 0002BFB0 7C 9C 23 78 */ mr r28, r4 /* 80030354 0002BFB4 90 01 00 08 */ stw r0, 8(r1) /* 80030358 0002BFB8 7C BE 2B 78 */ mr r30, r5 /* 8003035C 0002BFBC 7C DB 33 78 */ mr r27, r6 /* 80030360 0002BFC0 90 01 00 10 */ stw r0, 0x10(r1) /* 80030364 0002BFC4 48 01 44 E5 */ bl func_80044848 /* 80030368 0002BFC8 2C 1C 00 01 */ cmpwi r28, 1 /* 8003036C 0002BFCC 41 82 00 4C */ beq lbl_800303B8 /* 80030370 0002BFD0 A8 1E 00 00 */ lha r0, 0(r30) /* 80030374 0002BFD4 2C 00 00 2A */ cmpwi r0, 0x2a /* 80030378 0002BFD8 41 82 00 0C */ beq lbl_80030384 /* 8003037C 0002BFDC 38 60 00 01 */ li r3, 1 /* 80030380 0002BFE0 48 00 07 D0 */ b lbl_80030B50 lbl_80030384: /* 80030384 0002BFE4 80 1E 00 04 */ lwz r0, 4(r30) /* 80030388 0002BFE8 2C 00 00 00 */ cmpwi r0, 0 /* 8003038C 0002BFEC 41 80 00 0C */ blt lbl_80030398 /* 80030390 0002BFF0 2C 00 00 08 */ cmpwi r0, 8 /* 80030394 0002BFF4 41 80 00 0C */ blt lbl_800303A0 lbl_80030398: /* 80030398 0002BFF8 3B E0 00 00 */ li r31, 0 /* 8003039C 0002BFFC 48 00 00 0C */ b lbl_800303A8 lbl_800303A0: /* 800303A0 0002C000 1C 00 00 F0 */ mulli r0, r0, 0xf0 /* 800303A4 0002C004 7F E3 02 14 */ add r31, r3, r0 lbl_800303A8: /* 800303A8 0002C008 2C 1F 00 00 */ cmpwi r31, 0 /* 800303AC 0002C00C 40 82 00 14 */ bne lbl_800303C0 /* 800303B0 0002C010 38 60 00 01 */ li r3, 1 /* 800303B4 0002C014 48 00 07 9C */ b lbl_80030B50 lbl_800303B8: /* 800303B8 0002C018 38 60 00 01 */ li r3, 1 /* 800303BC 0002C01C 48 00 07 94 */ b lbl_80030B50 lbl_800303C0: /* 800303C0 0002C020 38 1C FF EF */ addi r0, r28, -17 /* 800303C4 0002C024 28 00 00 0E */ cmplwi r0, 0xe /* 800303C8 0002C028 41 81 07 84 */ bgt lbl_80030B4C /* 800303CC 0002C02C 3C 60 80 41 */ lis r3, lbl_80409FC8@ha /* 800303D0 0002C030 54 00 10 3A */ slwi r0, r0, 2 /* 800303D4 0002C034 38 63 9F C8 */ addi r3, r3, lbl_80409FC8@l /* 800303D8 0002C038 7C 63 00 2E */ lwzx r3, r3, r0 /* 800303DC 0002C03C 7C 69 03 A6 */ mtctr r3 /* 800303E0 0002C040 4E 80 04 20 */ bctr /* 800303E4 0002C044 A8 1E 00 08 */ lha r0, 8(r30) /* 800303E8 0002C048 2C 00 00 01 */ cmpwi r0, 1 /* 800303EC 0002C04C 40 82 00 0C */ bne lbl_800303F8 /* 800303F0 0002C050 80 9E 00 0C */ lwz r4, 0xc(r30) /* 800303F4 0002C054 48 00 00 2C */ b lbl_80030420 lbl_800303F8: /* 800303F8 0002C058 2C 00 00 02 */ cmpwi r0, 2 /* 800303FC 0002C05C 40 82 00 18 */ bne lbl_80030414 /* 80030400 0002C060 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030404 0002C064 FC 00 00 1E */ fctiwz f0, f0 /* 80030408 0002C068 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003040C 0002C06C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030410 0002C070 48 00 00 0C */ b lbl_8003041C lbl_80030414: /* 80030414 0002C074 38 7E 00 08 */ addi r3, r30, 8 /* 80030418 0002C078 48 1F D9 1D */ bl func_8022DD34 lbl_8003041C: /* 8003041C 0002C07C 7C 64 1B 78 */ mr r4, r3 lbl_80030420: /* 80030420 0002C080 7F E3 FB 78 */ mr r3, r31 /* 80030424 0002C084 48 01 47 FD */ bl func_80044C20 /* 80030428 0002C088 48 00 07 24 */ b lbl_80030B4C /* 8003042C 0002C08C A8 1E 00 08 */ lha r0, 8(r30) /* 80030430 0002C090 2C 00 00 01 */ cmpwi r0, 1 /* 80030434 0002C094 40 82 00 0C */ bne lbl_80030440 /* 80030438 0002C098 80 7E 00 0C */ lwz r3, 0xc(r30) /* 8003043C 0002C09C 48 00 00 28 */ b lbl_80030464 lbl_80030440: /* 80030440 0002C0A0 2C 00 00 02 */ cmpwi r0, 2 /* 80030444 0002C0A4 40 82 00 18 */ bne lbl_8003045C /* 80030448 0002C0A8 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 8003044C 0002C0AC FC 00 00 1E */ fctiwz f0, f0 /* 80030450 0002C0B0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030454 0002C0B4 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030458 0002C0B8 48 00 00 0C */ b lbl_80030464 lbl_8003045C: /* 8003045C 0002C0BC 38 7E 00 08 */ addi r3, r30, 8 /* 80030460 0002C0C0 48 1F D8 D5 */ bl func_8022DD34 lbl_80030464: /* 80030464 0002C0C4 7C 03 00 D0 */ neg r0, r3 /* 80030468 0002C0C8 7C 00 1B 78 */ or r0, r0, r3 /* 8003046C 0002C0CC 54 00 0F FE */ srwi r0, r0, 0x1f /* 80030470 0002C0D0 98 1F 00 00 */ stb r0, 0(r31) /* 80030474 0002C0D4 48 00 06 D8 */ b lbl_80030B4C /* 80030478 0002C0D8 A8 1E 00 08 */ lha r0, 8(r30) /* 8003047C 0002C0DC 2C 00 00 01 */ cmpwi r0, 1 /* 80030480 0002C0E0 40 82 00 20 */ bne lbl_800304A0 /* 80030484 0002C0E4 80 1E 00 0C */ lwz r0, 0xc(r30) /* 80030488 0002C0E8 C8 22 81 70 */ lfd f1, lbl_80640770-_SDA2_BASE_(r2) /* 8003048C 0002C0EC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80030490 0002C0F0 90 01 00 0C */ stw r0, 0xc(r1) /* 80030494 0002C0F4 C8 01 00 08 */ lfd f0, 8(r1) /* 80030498 0002C0F8 EF E0 08 28 */ fsubs f31, f0, f1 /* 8003049C 0002C0FC 48 00 00 20 */ b lbl_800304BC lbl_800304A0: /* 800304A0 0002C100 2C 00 00 02 */ cmpwi r0, 2 /* 800304A4 0002C104 40 82 00 0C */ bne lbl_800304B0 /* 800304A8 0002C108 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 800304AC 0002C10C 48 00 00 0C */ b lbl_800304B8 lbl_800304B0: /* 800304B0 0002C110 38 7E 00 08 */ addi r3, r30, 8 /* 800304B4 0002C114 48 1F D8 C5 */ bl func_8022DD78 lbl_800304B8: /* 800304B8 0002C118 FF E0 08 90 */ fmr f31, f1 lbl_800304BC: /* 800304BC 0002C11C A8 1E 00 10 */ lha r0, 0x10(r30) /* 800304C0 0002C120 2C 00 00 01 */ cmpwi r0, 1 /* 800304C4 0002C124 40 82 00 20 */ bne lbl_800304E4 /* 800304C8 0002C128 80 1E 00 14 */ lwz r0, 0x14(r30) /* 800304CC 0002C12C C8 22 81 70 */ lfd f1, lbl_80640770-_SDA2_BASE_(r2) /* 800304D0 0002C130 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800304D4 0002C134 90 01 00 14 */ stw r0, 0x14(r1) /* 800304D8 0002C138 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800304DC 0002C13C EC 20 08 28 */ fsubs f1, f0, f1 /* 800304E0 0002C140 48 00 00 1C */ b lbl_800304FC lbl_800304E4: /* 800304E4 0002C144 2C 00 00 02 */ cmpwi r0, 2 /* 800304E8 0002C148 40 82 00 0C */ bne lbl_800304F4 /* 800304EC 0002C14C C0 3E 00 14 */ lfs f1, 0x14(r30) /* 800304F0 0002C150 48 00 00 0C */ b lbl_800304FC lbl_800304F4: /* 800304F4 0002C154 38 7E 00 10 */ addi r3, r30, 0x10 /* 800304F8 0002C158 48 1F D8 81 */ bl func_8022DD78 lbl_800304FC: /* 800304FC 0002C15C D3 FF 00 08 */ stfs f31, 8(r31) /* 80030500 0002C160 D0 3F 00 0C */ stfs f1, 0xc(r31) /* 80030504 0002C164 48 00 06 48 */ b lbl_80030B4C /* 80030508 0002C168 A8 1E 00 08 */ lha r0, 8(r30) /* 8003050C 0002C16C 2C 00 00 01 */ cmpwi r0, 1 /* 80030510 0002C170 40 82 00 20 */ bne lbl_80030530 /* 80030514 0002C174 80 1E 00 0C */ lwz r0, 0xc(r30) /* 80030518 0002C178 C8 22 81 70 */ lfd f1, lbl_80640770-_SDA2_BASE_(r2) /* 8003051C 0002C17C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80030520 0002C180 90 01 00 0C */ stw r0, 0xc(r1) /* 80030524 0002C184 C8 01 00 08 */ lfd f0, 8(r1) /* 80030528 0002C188 EF E0 08 28 */ fsubs f31, f0, f1 /* 8003052C 0002C18C 48 00 00 20 */ b lbl_8003054C lbl_80030530: /* 80030530 0002C190 2C 00 00 02 */ cmpwi r0, 2 /* 80030534 0002C194 40 82 00 0C */ bne lbl_80030540 /* 80030538 0002C198 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 8003053C 0002C19C 48 00 00 0C */ b lbl_80030548 lbl_80030540: /* 80030540 0002C1A0 38 7E 00 08 */ addi r3, r30, 8 /* 80030544 0002C1A4 48 1F D8 35 */ bl func_8022DD78 lbl_80030548: /* 80030548 0002C1A8 FF E0 08 90 */ fmr f31, f1 lbl_8003054C: /* 8003054C 0002C1AC A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030550 0002C1B0 2C 00 00 01 */ cmpwi r0, 1 /* 80030554 0002C1B4 40 82 00 20 */ bne lbl_80030574 /* 80030558 0002C1B8 80 1E 00 14 */ lwz r0, 0x14(r30) /* 8003055C 0002C1BC C8 22 81 70 */ lfd f1, lbl_80640770-_SDA2_BASE_(r2) /* 80030560 0002C1C0 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80030564 0002C1C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80030568 0002C1C8 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003056C 0002C1CC EF C0 08 28 */ fsubs f30, f0, f1 /* 80030570 0002C1D0 48 00 00 20 */ b lbl_80030590 lbl_80030574: /* 80030574 0002C1D4 2C 00 00 02 */ cmpwi r0, 2 /* 80030578 0002C1D8 40 82 00 0C */ bne lbl_80030584 /* 8003057C 0002C1DC C0 3E 00 14 */ lfs f1, 0x14(r30) /* 80030580 0002C1E0 48 00 00 0C */ b lbl_8003058C lbl_80030584: /* 80030584 0002C1E4 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030588 0002C1E8 48 1F D7 F1 */ bl func_8022DD78 lbl_8003058C: /* 8003058C 0002C1EC FF C0 08 90 */ fmr f30, f1 lbl_80030590: /* 80030590 0002C1F0 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80030594 0002C1F4 2C 00 00 01 */ cmpwi r0, 1 /* 80030598 0002C1F8 40 82 00 20 */ bne lbl_800305B8 /* 8003059C 0002C1FC 80 1E 00 1C */ lwz r0, 0x1c(r30) /* 800305A0 0002C200 C8 22 81 70 */ lfd f1, lbl_80640770-_SDA2_BASE_(r2) /* 800305A4 0002C204 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800305A8 0002C208 90 01 00 0C */ stw r0, 0xc(r1) /* 800305AC 0002C20C C8 01 00 08 */ lfd f0, 8(r1) /* 800305B0 0002C210 EF A0 08 28 */ fsubs f29, f0, f1 /* 800305B4 0002C214 48 00 00 20 */ b lbl_800305D4 lbl_800305B8: /* 800305B8 0002C218 2C 00 00 02 */ cmpwi r0, 2 /* 800305BC 0002C21C 40 82 00 0C */ bne lbl_800305C8 /* 800305C0 0002C220 C0 3E 00 1C */ lfs f1, 0x1c(r30) /* 800305C4 0002C224 48 00 00 0C */ b lbl_800305D0 lbl_800305C8: /* 800305C8 0002C228 38 7E 00 18 */ addi r3, r30, 0x18 /* 800305CC 0002C22C 48 1F D7 AD */ bl func_8022DD78 lbl_800305D0: /* 800305D0 0002C230 FF A0 08 90 */ fmr f29, f1 lbl_800305D4: /* 800305D4 0002C234 A8 1E 00 20 */ lha r0, 0x20(r30) /* 800305D8 0002C238 2C 00 00 01 */ cmpwi r0, 1 /* 800305DC 0002C23C 40 82 00 0C */ bne lbl_800305E8 /* 800305E0 0002C240 80 9E 00 24 */ lwz r4, 0x24(r30) /* 800305E4 0002C244 48 00 00 2C */ b lbl_80030610 lbl_800305E8: /* 800305E8 0002C248 2C 00 00 02 */ cmpwi r0, 2 /* 800305EC 0002C24C 40 82 00 18 */ bne lbl_80030604 /* 800305F0 0002C250 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 800305F4 0002C254 FC 00 00 1E */ fctiwz f0, f0 /* 800305F8 0002C258 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800305FC 0002C25C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030600 0002C260 48 00 00 0C */ b lbl_8003060C lbl_80030604: /* 80030604 0002C264 38 7E 00 20 */ addi r3, r30, 0x20 /* 80030608 0002C268 48 1F D7 2D */ bl func_8022DD34 lbl_8003060C: /* 8003060C 0002C26C 7C 64 1B 78 */ mr r4, r3 lbl_80030610: /* 80030610 0002C270 FC 20 F8 90 */ fmr f1, f31 /* 80030614 0002C274 7F E3 FB 78 */ mr r3, r31 /* 80030618 0002C278 FC 40 F0 90 */ fmr f2, f30 /* 8003061C 0002C27C FC 60 E8 90 */ fmr f3, f29 /* 80030620 0002C280 48 01 46 F5 */ bl func_80044D14 /* 80030624 0002C284 48 00 05 28 */ b lbl_80030B4C /* 80030628 0002C288 A8 1E 00 08 */ lha r0, 8(r30) /* 8003062C 0002C28C 2C 00 00 01 */ cmpwi r0, 1 /* 80030630 0002C290 40 82 00 0C */ bne lbl_8003063C /* 80030634 0002C294 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80030638 0002C298 48 00 00 28 */ b lbl_80030660 lbl_8003063C: /* 8003063C 0002C29C 2C 00 00 02 */ cmpwi r0, 2 /* 80030640 0002C2A0 40 82 00 18 */ bne lbl_80030658 /* 80030644 0002C2A4 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030648 0002C2A8 FC 00 00 1E */ fctiwz f0, f0 /* 8003064C 0002C2AC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030650 0002C2B0 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030654 0002C2B4 48 00 00 0C */ b lbl_80030660 lbl_80030658: /* 80030658 0002C2B8 38 7E 00 08 */ addi r3, r30, 8 /* 8003065C 0002C2BC 48 1F D6 D9 */ bl func_8022DD34 lbl_80030660: /* 80030660 0002C2C0 90 7F 00 1C */ stw r3, 0x1c(r31) /* 80030664 0002C2C4 48 00 04 E8 */ b lbl_80030B4C /* 80030668 0002C2C8 A8 1E 00 08 */ lha r0, 8(r30) /* 8003066C 0002C2CC 2C 00 00 01 */ cmpwi r0, 1 /* 80030670 0002C2D0 40 82 00 0C */ bne lbl_8003067C /* 80030674 0002C2D4 83 BE 00 0C */ lwz r29, 0xc(r30) /* 80030678 0002C2D8 48 00 00 2C */ b lbl_800306A4 lbl_8003067C: /* 8003067C 0002C2DC 2C 00 00 02 */ cmpwi r0, 2 /* 80030680 0002C2E0 40 82 00 18 */ bne lbl_80030698 /* 80030684 0002C2E4 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030688 0002C2E8 FC 00 00 1E */ fctiwz f0, f0 /* 8003068C 0002C2EC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030690 0002C2F0 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030694 0002C2F4 48 00 00 0C */ b lbl_800306A0 lbl_80030698: /* 80030698 0002C2F8 38 7E 00 08 */ addi r3, r30, 8 /* 8003069C 0002C2FC 48 1F D6 99 */ bl func_8022DD34 lbl_800306A0: /* 800306A0 0002C300 7C 7D 1B 78 */ mr r29, r3 lbl_800306A4: /* 800306A4 0002C304 A8 1E 00 10 */ lha r0, 0x10(r30) /* 800306A8 0002C308 2C 00 00 01 */ cmpwi r0, 1 /* 800306AC 0002C30C 40 82 00 0C */ bne lbl_800306B8 /* 800306B0 0002C310 83 9E 00 14 */ lwz r28, 0x14(r30) /* 800306B4 0002C314 48 00 00 2C */ b lbl_800306E0 lbl_800306B8: /* 800306B8 0002C318 2C 00 00 02 */ cmpwi r0, 2 /* 800306BC 0002C31C 40 82 00 18 */ bne lbl_800306D4 /* 800306C0 0002C320 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 800306C4 0002C324 FC 00 00 1E */ fctiwz f0, f0 /* 800306C8 0002C328 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800306CC 0002C32C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800306D0 0002C330 48 00 00 0C */ b lbl_800306DC lbl_800306D4: /* 800306D4 0002C334 38 7E 00 10 */ addi r3, r30, 0x10 /* 800306D8 0002C338 48 1F D6 5D */ bl func_8022DD34 lbl_800306DC: /* 800306DC 0002C33C 7C 7C 1B 78 */ mr r28, r3 lbl_800306E0: /* 800306E0 0002C340 A8 1E 00 18 */ lha r0, 0x18(r30) /* 800306E4 0002C344 2C 00 00 01 */ cmpwi r0, 1 /* 800306E8 0002C348 40 82 00 0C */ bne lbl_800306F4 /* 800306EC 0002C34C 83 7E 00 1C */ lwz r27, 0x1c(r30) /* 800306F0 0002C350 48 00 00 2C */ b lbl_8003071C lbl_800306F4: /* 800306F4 0002C354 2C 00 00 02 */ cmpwi r0, 2 /* 800306F8 0002C358 40 82 00 18 */ bne lbl_80030710 /* 800306FC 0002C35C C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80030700 0002C360 FC 00 00 1E */ fctiwz f0, f0 /* 80030704 0002C364 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030708 0002C368 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8003070C 0002C36C 48 00 00 0C */ b lbl_80030718 lbl_80030710: /* 80030710 0002C370 38 7E 00 18 */ addi r3, r30, 0x18 /* 80030714 0002C374 48 1F D6 21 */ bl func_8022DD34 lbl_80030718: /* 80030718 0002C378 7C 7B 1B 78 */ mr r27, r3 lbl_8003071C: /* 8003071C 0002C37C A8 1E 00 20 */ lha r0, 0x20(r30) /* 80030720 0002C380 2C 00 00 01 */ cmpwi r0, 1 /* 80030724 0002C384 40 82 00 0C */ bne lbl_80030730 /* 80030728 0002C388 80 7E 00 24 */ lwz r3, 0x24(r30) /* 8003072C 0002C38C 48 00 00 28 */ b lbl_80030754 lbl_80030730: /* 80030730 0002C390 2C 00 00 02 */ cmpwi r0, 2 /* 80030734 0002C394 40 82 00 18 */ bne lbl_8003074C /* 80030738 0002C398 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 8003073C 0002C39C FC 00 00 1E */ fctiwz f0, f0 /* 80030740 0002C3A0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030744 0002C3A4 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030748 0002C3A8 48 00 00 0C */ b lbl_80030754 lbl_8003074C: /* 8003074C 0002C3AC 38 7E 00 20 */ addi r3, r30, 0x20 /* 80030750 0002C3B0 48 1F D5 E5 */ bl func_8022DD34 lbl_80030754: /* 80030754 0002C3B4 9B BF 00 10 */ stb r29, 0x10(r31) /* 80030758 0002C3B8 9B 9F 00 11 */ stb r28, 0x11(r31) /* 8003075C 0002C3BC 9B 7F 00 12 */ stb r27, 0x12(r31) /* 80030760 0002C3C0 98 7F 00 13 */ stb r3, 0x13(r31) /* 80030764 0002C3C4 48 00 03 E8 */ b lbl_80030B4C /* 80030768 0002C3C8 A8 1E 00 08 */ lha r0, 8(r30) /* 8003076C 0002C3CC 2C 00 00 01 */ cmpwi r0, 1 /* 80030770 0002C3D0 40 82 00 0C */ bne lbl_8003077C /* 80030774 0002C3D4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80030778 0002C3D8 48 00 00 28 */ b lbl_800307A0 lbl_8003077C: /* 8003077C 0002C3DC 2C 00 00 02 */ cmpwi r0, 2 /* 80030780 0002C3E0 40 82 00 18 */ bne lbl_80030798 /* 80030784 0002C3E4 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030788 0002C3E8 FC 00 00 1E */ fctiwz f0, f0 /* 8003078C 0002C3EC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030790 0002C3F0 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030794 0002C3F4 48 00 00 0C */ b lbl_800307A0 lbl_80030798: /* 80030798 0002C3F8 38 7E 00 08 */ addi r3, r30, 8 /* 8003079C 0002C3FC 48 1F D5 99 */ bl func_8022DD34 lbl_800307A0: /* 800307A0 0002C400 98 7F 00 01 */ stb r3, 1(r31) /* 800307A4 0002C404 48 00 03 A8 */ b lbl_80030B4C /* 800307A8 0002C408 A8 1E 00 08 */ lha r0, 8(r30) /* 800307AC 0002C40C 2C 00 00 01 */ cmpwi r0, 1 /* 800307B0 0002C410 40 82 00 0C */ bne lbl_800307BC /* 800307B4 0002C414 83 7E 00 0C */ lwz r27, 0xc(r30) /* 800307B8 0002C418 48 00 00 2C */ b lbl_800307E4 lbl_800307BC: /* 800307BC 0002C41C 2C 00 00 02 */ cmpwi r0, 2 /* 800307C0 0002C420 40 82 00 18 */ bne lbl_800307D8 /* 800307C4 0002C424 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 800307C8 0002C428 FC 00 00 1E */ fctiwz f0, f0 /* 800307CC 0002C42C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800307D0 0002C430 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800307D4 0002C434 48 00 00 0C */ b lbl_800307E0 lbl_800307D8: /* 800307D8 0002C438 38 7E 00 08 */ addi r3, r30, 8 /* 800307DC 0002C43C 48 1F D5 59 */ bl func_8022DD34 lbl_800307E0: /* 800307E0 0002C440 7C 7B 1B 78 */ mr r27, r3 lbl_800307E4: /* 800307E4 0002C444 A8 1E 00 10 */ lha r0, 0x10(r30) /* 800307E8 0002C448 2C 00 00 01 */ cmpwi r0, 1 /* 800307EC 0002C44C 40 82 00 0C */ bne lbl_800307F8 /* 800307F0 0002C450 83 9E 00 14 */ lwz r28, 0x14(r30) /* 800307F4 0002C454 48 00 00 2C */ b lbl_80030820 lbl_800307F8: /* 800307F8 0002C458 2C 00 00 02 */ cmpwi r0, 2 /* 800307FC 0002C45C 40 82 00 18 */ bne lbl_80030814 /* 80030800 0002C460 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80030804 0002C464 FC 00 00 1E */ fctiwz f0, f0 /* 80030808 0002C468 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003080C 0002C46C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030810 0002C470 48 00 00 0C */ b lbl_8003081C lbl_80030814: /* 80030814 0002C474 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030818 0002C478 48 1F D5 1D */ bl func_8022DD34 lbl_8003081C: /* 8003081C 0002C47C 7C 7C 1B 78 */ mr r28, r3 lbl_80030820: /* 80030820 0002C480 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80030824 0002C484 2C 00 00 01 */ cmpwi r0, 1 /* 80030828 0002C488 40 82 00 0C */ bne lbl_80030834 /* 8003082C 0002C48C 83 BE 00 1C */ lwz r29, 0x1c(r30) /* 80030830 0002C490 48 00 00 2C */ b lbl_8003085C lbl_80030834: /* 80030834 0002C494 2C 00 00 02 */ cmpwi r0, 2 /* 80030838 0002C498 40 82 00 18 */ bne lbl_80030850 /* 8003083C 0002C49C C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80030840 0002C4A0 FC 00 00 1E */ fctiwz f0, f0 /* 80030844 0002C4A4 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030848 0002C4A8 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8003084C 0002C4AC 48 00 00 0C */ b lbl_80030858 lbl_80030850: /* 80030850 0002C4B0 38 7E 00 18 */ addi r3, r30, 0x18 /* 80030854 0002C4B4 48 1F D4 E1 */ bl func_8022DD34 lbl_80030858: /* 80030858 0002C4B8 7C 7D 1B 78 */ mr r29, r3 lbl_8003085C: /* 8003085C 0002C4BC A8 1E 00 20 */ lha r0, 0x20(r30) /* 80030860 0002C4C0 2C 00 00 01 */ cmpwi r0, 1 /* 80030864 0002C4C4 40 82 00 0C */ bne lbl_80030870 /* 80030868 0002C4C8 80 7E 00 24 */ lwz r3, 0x24(r30) /* 8003086C 0002C4CC 48 00 00 28 */ b lbl_80030894 lbl_80030870: /* 80030870 0002C4D0 2C 00 00 02 */ cmpwi r0, 2 /* 80030874 0002C4D4 40 82 00 18 */ bne lbl_8003088C /* 80030878 0002C4D8 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 8003087C 0002C4DC FC 00 00 1E */ fctiwz f0, f0 /* 80030880 0002C4E0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030884 0002C4E4 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030888 0002C4E8 48 00 00 0C */ b lbl_80030894 lbl_8003088C: /* 8003088C 0002C4EC 38 7E 00 20 */ addi r3, r30, 0x20 /* 80030890 0002C4F0 48 1F D4 A5 */ bl func_8022DD34 lbl_80030894: /* 80030894 0002C4F4 9B 7F 00 14 */ stb r27, 0x14(r31) /* 80030898 0002C4F8 9B 9F 00 15 */ stb r28, 0x15(r31) /* 8003089C 0002C4FC 9B BF 00 16 */ stb r29, 0x16(r31) /* 800308A0 0002C500 98 7F 00 17 */ stb r3, 0x17(r31) /* 800308A4 0002C504 48 00 02 A8 */ b lbl_80030B4C /* 800308A8 0002C508 A8 1E 00 08 */ lha r0, 8(r30) /* 800308AC 0002C50C 2C 00 00 01 */ cmpwi r0, 1 /* 800308B0 0002C510 40 82 00 0C */ bne lbl_800308BC /* 800308B4 0002C514 83 7E 00 0C */ lwz r27, 0xc(r30) /* 800308B8 0002C518 48 00 00 2C */ b lbl_800308E4 lbl_800308BC: /* 800308BC 0002C51C 2C 00 00 02 */ cmpwi r0, 2 /* 800308C0 0002C520 40 82 00 18 */ bne lbl_800308D8 /* 800308C4 0002C524 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 800308C8 0002C528 FC 00 00 1E */ fctiwz f0, f0 /* 800308CC 0002C52C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800308D0 0002C530 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800308D4 0002C534 48 00 00 0C */ b lbl_800308E0 lbl_800308D8: /* 800308D8 0002C538 38 7E 00 08 */ addi r3, r30, 8 /* 800308DC 0002C53C 48 1F D4 59 */ bl func_8022DD34 lbl_800308E0: /* 800308E0 0002C540 7C 7B 1B 78 */ mr r27, r3 lbl_800308E4: /* 800308E4 0002C544 A8 1E 00 10 */ lha r0, 0x10(r30) /* 800308E8 0002C548 2C 00 00 01 */ cmpwi r0, 1 /* 800308EC 0002C54C 40 82 00 0C */ bne lbl_800308F8 /* 800308F0 0002C550 83 9E 00 14 */ lwz r28, 0x14(r30) /* 800308F4 0002C554 48 00 00 2C */ b lbl_80030920 lbl_800308F8: /* 800308F8 0002C558 2C 00 00 02 */ cmpwi r0, 2 /* 800308FC 0002C55C 40 82 00 18 */ bne lbl_80030914 /* 80030900 0002C560 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80030904 0002C564 FC 00 00 1E */ fctiwz f0, f0 /* 80030908 0002C568 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003090C 0002C56C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030910 0002C570 48 00 00 0C */ b lbl_8003091C lbl_80030914: /* 80030914 0002C574 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030918 0002C578 48 1F D4 1D */ bl func_8022DD34 lbl_8003091C: /* 8003091C 0002C57C 7C 7C 1B 78 */ mr r28, r3 lbl_80030920: /* 80030920 0002C580 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80030924 0002C584 2C 00 00 01 */ cmpwi r0, 1 /* 80030928 0002C588 40 82 00 0C */ bne lbl_80030934 /* 8003092C 0002C58C 83 BE 00 1C */ lwz r29, 0x1c(r30) /* 80030930 0002C590 48 00 00 2C */ b lbl_8003095C lbl_80030934: /* 80030934 0002C594 2C 00 00 02 */ cmpwi r0, 2 /* 80030938 0002C598 40 82 00 18 */ bne lbl_80030950 /* 8003093C 0002C59C C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80030940 0002C5A0 FC 00 00 1E */ fctiwz f0, f0 /* 80030944 0002C5A4 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030948 0002C5A8 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8003094C 0002C5AC 48 00 00 0C */ b lbl_80030958 lbl_80030950: /* 80030950 0002C5B0 38 7E 00 18 */ addi r3, r30, 0x18 /* 80030954 0002C5B4 48 1F D3 E1 */ bl func_8022DD34 lbl_80030958: /* 80030958 0002C5B8 7C 7D 1B 78 */ mr r29, r3 lbl_8003095C: /* 8003095C 0002C5BC A8 1E 00 20 */ lha r0, 0x20(r30) /* 80030960 0002C5C0 2C 00 00 01 */ cmpwi r0, 1 /* 80030964 0002C5C4 40 82 00 0C */ bne lbl_80030970 /* 80030968 0002C5C8 80 7E 00 24 */ lwz r3, 0x24(r30) /* 8003096C 0002C5CC 48 00 00 28 */ b lbl_80030994 lbl_80030970: /* 80030970 0002C5D0 2C 00 00 02 */ cmpwi r0, 2 /* 80030974 0002C5D4 40 82 00 18 */ bne lbl_8003098C /* 80030978 0002C5D8 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 8003097C 0002C5DC FC 00 00 1E */ fctiwz f0, f0 /* 80030980 0002C5E0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030984 0002C5E4 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030988 0002C5E8 48 00 00 0C */ b lbl_80030994 lbl_8003098C: /* 8003098C 0002C5EC 38 7E 00 20 */ addi r3, r30, 0x20 /* 80030990 0002C5F0 48 1F D3 A5 */ bl func_8022DD34 lbl_80030994: /* 80030994 0002C5F4 9B 7F 00 18 */ stb r27, 0x18(r31) /* 80030998 0002C5F8 9B 9F 00 19 */ stb r28, 0x19(r31) /* 8003099C 0002C5FC 9B BF 00 1A */ stb r29, 0x1a(r31) /* 800309A0 0002C600 98 7F 00 1B */ stb r3, 0x1b(r31) /* 800309A4 0002C604 48 00 01 A8 */ b lbl_80030B4C /* 800309A8 0002C608 A8 1E 00 08 */ lha r0, 8(r30) /* 800309AC 0002C60C 2C 00 00 01 */ cmpwi r0, 1 /* 800309B0 0002C610 40 82 00 0C */ bne lbl_800309BC /* 800309B4 0002C614 80 9E 00 0C */ lwz r4, 0xc(r30) /* 800309B8 0002C618 48 00 00 2C */ b lbl_800309E4 lbl_800309BC: /* 800309BC 0002C61C 2C 00 00 02 */ cmpwi r0, 2 /* 800309C0 0002C620 40 82 00 18 */ bne lbl_800309D8 /* 800309C4 0002C624 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 800309C8 0002C628 FC 00 00 1E */ fctiwz f0, f0 /* 800309CC 0002C62C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800309D0 0002C630 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800309D4 0002C634 48 00 00 0C */ b lbl_800309E0 lbl_800309D8: /* 800309D8 0002C638 38 7E 00 08 */ addi r3, r30, 8 /* 800309DC 0002C63C 48 1F D3 59 */ bl func_8022DD34 lbl_800309E0: /* 800309E0 0002C640 7C 64 1B 78 */ mr r4, r3 lbl_800309E4: /* 800309E4 0002C644 7F E3 FB 78 */ mr r3, r31 /* 800309E8 0002C648 48 01 42 B1 */ bl func_80044C98 /* 800309EC 0002C64C 48 00 01 60 */ b lbl_80030B4C /* 800309F0 0002C650 A8 1E 00 08 */ lha r0, 8(r30) /* 800309F4 0002C654 2C 00 00 01 */ cmpwi r0, 1 /* 800309F8 0002C658 40 82 00 0C */ bne lbl_80030A04 /* 800309FC 0002C65C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80030A00 0002C660 48 00 00 28 */ b lbl_80030A28 lbl_80030A04: /* 80030A04 0002C664 2C 00 00 02 */ cmpwi r0, 2 /* 80030A08 0002C668 40 82 00 18 */ bne lbl_80030A20 /* 80030A0C 0002C66C C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030A10 0002C670 FC 00 00 1E */ fctiwz f0, f0 /* 80030A14 0002C674 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030A18 0002C678 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030A1C 0002C67C 48 00 00 0C */ b lbl_80030A28 lbl_80030A20: /* 80030A20 0002C680 38 7E 00 08 */ addi r3, r30, 8 /* 80030A24 0002C684 48 1F D3 11 */ bl func_8022DD34 lbl_80030A28: /* 80030A28 0002C688 2C 03 00 00 */ cmpwi r3, 0 /* 80030A2C 0002C68C 41 82 00 14 */ beq lbl_80030A40 /* 80030A30 0002C690 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80030A34 0002C694 60 00 00 01 */ ori r0, r0, 1 /* 80030A38 0002C698 90 1F 00 20 */ stw r0, 0x20(r31) /* 80030A3C 0002C69C 48 00 01 10 */ b lbl_80030B4C lbl_80030A40: /* 80030A40 0002C6A0 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80030A44 0002C6A4 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80030A48 0002C6A8 90 1F 00 20 */ stw r0, 0x20(r31) /* 80030A4C 0002C6AC 48 00 01 00 */ b lbl_80030B4C /* 80030A50 0002C6B0 A8 1E 00 08 */ lha r0, 8(r30) /* 80030A54 0002C6B4 2C 00 00 01 */ cmpwi r0, 1 /* 80030A58 0002C6B8 40 82 00 0C */ bne lbl_80030A64 /* 80030A5C 0002C6BC 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80030A60 0002C6C0 48 00 00 28 */ b lbl_80030A88 lbl_80030A64: /* 80030A64 0002C6C4 2C 00 00 02 */ cmpwi r0, 2 /* 80030A68 0002C6C8 40 82 00 18 */ bne lbl_80030A80 /* 80030A6C 0002C6CC C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030A70 0002C6D0 FC 00 00 1E */ fctiwz f0, f0 /* 80030A74 0002C6D4 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030A78 0002C6D8 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030A7C 0002C6DC 48 00 00 0C */ b lbl_80030A88 lbl_80030A80: /* 80030A80 0002C6E0 38 7E 00 08 */ addi r3, r30, 8 /* 80030A84 0002C6E4 48 1F D2 B1 */ bl func_8022DD34 lbl_80030A88: /* 80030A88 0002C6E8 2C 03 00 00 */ cmpwi r3, 0 /* 80030A8C 0002C6EC 40 82 00 14 */ bne lbl_80030AA0 /* 80030A90 0002C6F0 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80030A94 0002C6F4 54 00 06 6E */ rlwinm r0, r0, 0, 0x19, 0x17 /* 80030A98 0002C6F8 90 1F 00 20 */ stw r0, 0x20(r31) /* 80030A9C 0002C6FC 48 00 00 B0 */ b lbl_80030B4C lbl_80030AA0: /* 80030AA0 0002C700 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80030AA4 0002C704 60 00 00 80 */ ori r0, r0, 0x80 /* 80030AA8 0002C708 90 1F 00 20 */ stw r0, 0x20(r31) /* 80030AAC 0002C70C 48 00 00 A0 */ b lbl_80030B4C /* 80030AB0 0002C710 7F E3 FB 78 */ mr r3, r31 /* 80030AB4 0002C714 48 01 42 1D */ bl func_80044CD0 /* 80030AB8 0002C718 38 00 00 01 */ li r0, 1 /* 80030ABC 0002C71C 90 7B 00 04 */ stw r3, 4(r27) /* 80030AC0 0002C720 B0 1B 00 00 */ sth r0, 0(r27) /* 80030AC4 0002C724 48 00 00 88 */ b lbl_80030B4C /* 80030AC8 0002C728 A8 1E 00 08 */ lha r0, 8(r30) /* 80030ACC 0002C72C 2C 00 00 01 */ cmpwi r0, 1 /* 80030AD0 0002C730 40 82 00 0C */ bne lbl_80030ADC /* 80030AD4 0002C734 83 7E 00 0C */ lwz r27, 0xc(r30) /* 80030AD8 0002C738 48 00 00 2C */ b lbl_80030B04 lbl_80030ADC: /* 80030ADC 0002C73C 2C 00 00 02 */ cmpwi r0, 2 /* 80030AE0 0002C740 40 82 00 18 */ bne lbl_80030AF8 /* 80030AE4 0002C744 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030AE8 0002C748 FC 00 00 1E */ fctiwz f0, f0 /* 80030AEC 0002C74C D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030AF0 0002C750 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030AF4 0002C754 48 00 00 0C */ b lbl_80030B00 lbl_80030AF8: /* 80030AF8 0002C758 38 7E 00 08 */ addi r3, r30, 8 /* 80030AFC 0002C75C 48 1F D2 39 */ bl func_8022DD34 lbl_80030B00: /* 80030B00 0002C760 7C 7B 1B 78 */ mr r27, r3 lbl_80030B04: /* 80030B04 0002C764 A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030B08 0002C768 2C 00 00 01 */ cmpwi r0, 1 /* 80030B0C 0002C76C 40 82 00 0C */ bne lbl_80030B18 /* 80030B10 0002C770 80 BE 00 14 */ lwz r5, 0x14(r30) /* 80030B14 0002C774 48 00 00 2C */ b lbl_80030B40 lbl_80030B18: /* 80030B18 0002C778 2C 00 00 02 */ cmpwi r0, 2 /* 80030B1C 0002C77C 40 82 00 18 */ bne lbl_80030B34 /* 80030B20 0002C780 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80030B24 0002C784 FC 00 00 1E */ fctiwz f0, f0 /* 80030B28 0002C788 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80030B2C 0002C78C 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80030B30 0002C790 48 00 00 0C */ b lbl_80030B3C lbl_80030B34: /* 80030B34 0002C794 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030B38 0002C798 48 1F D1 FD */ bl func_8022DD34 lbl_80030B3C: /* 80030B3C 0002C79C 7C 65 1B 78 */ mr r5, r3 lbl_80030B40: /* 80030B40 0002C7A0 7F E3 FB 78 */ mr r3, r31 /* 80030B44 0002C7A4 7F 64 DB 78 */ mr r4, r27 /* 80030B48 0002C7A8 48 01 41 45 */ bl func_80044C8C lbl_80030B4C: /* 80030B4C 0002C7AC 38 60 00 01 */ li r3, 1 lbl_80030B50: /* 80030B50 0002C7B0 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 80030B54 0002C7B4 CB E1 00 60 */ lfd f31, 0x60(r1) /* 80030B58 0002C7B8 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 80030B5C 0002C7BC CB C1 00 50 */ lfd f30, 0x50(r1) /* 80030B60 0002C7C0 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 80030B64 0002C7C4 39 61 00 40 */ addi r11, r1, 0x40 /* 80030B68 0002C7C8 CB A1 00 40 */ lfd f29, 0x40(r1) /* 80030B6C 0002C7CC 48 19 66 09 */ bl _restgpr_27 /* 80030B70 0002C7D0 80 01 00 74 */ lwz r0, 0x74(r1) /* 80030B74 0002C7D4 7C 08 03 A6 */ mtlr r0 /* 80030B78 0002C7D8 38 21 00 70 */ addi r1, r1, 0x70 /* 80030B7C 0002C7DC 4E 80 00 20 */ blr .global func_80030B80 func_80030B80: /* 80030B80 0002C7E0 38 A0 00 01 */ li r5, 1 /* 80030B84 0002C7E4 38 6D 97 50 */ addi r3, r13, lbl_8063EA10-_SDA_BASE_ /* 80030B88 0002C7E8 38 80 00 04 */ li r4, 4 /* 80030B8C 0002C7EC 38 00 00 00 */ li r0, 0 /* 80030B90 0002C7F0 98 AD 97 50 */ stb r5, lbl_8063EA10-_SDA_BASE_(r13) /* 80030B94 0002C7F4 B0 83 00 02 */ sth r4, 2(r3) /* 80030B98 0002C7F8 98 03 00 04 */ stb r0, 4(r3) /* 80030B9C 0002C7FC 4E 80 00 20 */ blr .global lbl_80030BA0 lbl_80030BA0: /* 80030BA0 0002C800 94 21 FF 10 */ stwu r1, -0xf0(r1) /* 80030BA4 0002C804 7C 08 02 A6 */ mflr r0 /* 80030BA8 0002C808 90 01 00 F4 */ stw r0, 0xf4(r1) /* 80030BAC 0002C80C DB E1 00 E0 */ stfd f31, 0xe0(r1) /* 80030BB0 0002C810 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0 /* 80030BB4 0002C814 39 61 00 E0 */ addi r11, r1, 0xe0 /* 80030BB8 0002C818 48 19 65 71 */ bl _savegpr_27 /* 80030BBC 0002C81C 3C 00 43 30 */ lis r0, 0x4330 /* 80030BC0 0002C820 7C 7C 1B 78 */ mr r28, r3 /* 80030BC4 0002C824 90 01 00 A8 */ stw r0, 0xa8(r1) /* 80030BC8 0002C828 7C 9B 23 78 */ mr r27, r4 /* 80030BCC 0002C82C 7C BE 2B 78 */ mr r30, r5 /* 80030BD0 0002C830 90 01 00 B0 */ stw r0, 0xb0(r1) /* 80030BD4 0002C834 48 01 3C 75 */ bl func_80044848 /* 80030BD8 0002C838 2C 1B 00 01 */ cmpwi r27, 1 /* 80030BDC 0002C83C 41 82 00 50 */ beq lbl_80030C2C /* 80030BE0 0002C840 A8 1E 00 00 */ lha r0, 0(r30) /* 80030BE4 0002C844 2C 00 00 2B */ cmpwi r0, 0x2b /* 80030BE8 0002C848 41 82 00 0C */ beq lbl_80030BF4 /* 80030BEC 0002C84C 38 60 00 01 */ li r3, 1 /* 80030BF0 0002C850 48 00 04 A8 */ b lbl_80031098 lbl_80030BF4: /* 80030BF4 0002C854 80 1E 00 04 */ lwz r0, 4(r30) /* 80030BF8 0002C858 2C 00 00 00 */ cmpwi r0, 0 /* 80030BFC 0002C85C 41 80 00 0C */ blt lbl_80030C08 /* 80030C00 0002C860 2C 00 00 08 */ cmpwi r0, 8 /* 80030C04 0002C864 41 80 00 0C */ blt lbl_80030C10 lbl_80030C08: /* 80030C08 0002C868 3B E0 00 00 */ li r31, 0 /* 80030C0C 0002C86C 48 00 00 10 */ b lbl_80030C1C lbl_80030C10: /* 80030C10 0002C870 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 80030C14 0002C874 7C 63 02 14 */ add r3, r3, r0 /* 80030C18 0002C878 3B E3 07 80 */ addi r31, r3, 0x780 lbl_80030C1C: /* 80030C1C 0002C87C 2C 1F 00 00 */ cmpwi r31, 0 /* 80030C20 0002C880 40 82 00 14 */ bne lbl_80030C34 /* 80030C24 0002C884 38 60 00 01 */ li r3, 1 /* 80030C28 0002C888 48 00 04 70 */ b lbl_80031098 lbl_80030C2C: /* 80030C2C 0002C88C 38 60 00 01 */ li r3, 1 /* 80030C30 0002C890 48 00 04 68 */ b lbl_80031098 lbl_80030C34: /* 80030C34 0002C894 38 1B FF EF */ addi r0, r27, -17 /* 80030C38 0002C898 28 00 00 0F */ cmplwi r0, 0xf /* 80030C3C 0002C89C 41 81 04 58 */ bgt lbl_80031094 /* 80030C40 0002C8A0 3C 60 80 41 */ lis r3, lbl_8040A008@ha /* 80030C44 0002C8A4 54 00 10 3A */ slwi r0, r0, 2 /* 80030C48 0002C8A8 38 63 A0 08 */ addi r3, r3, lbl_8040A008@l /* 80030C4C 0002C8AC 7C 63 00 2E */ lwzx r3, r3, r0 /* 80030C50 0002C8B0 7C 69 03 A6 */ mtctr r3 /* 80030C54 0002C8B4 4E 80 04 20 */ bctr /* 80030C58 0002C8B8 A8 1E 00 08 */ lha r0, 8(r30) /* 80030C5C 0002C8BC 2C 00 00 01 */ cmpwi r0, 1 /* 80030C60 0002C8C0 40 82 00 0C */ bne lbl_80030C6C /* 80030C64 0002C8C4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80030C68 0002C8C8 48 00 00 28 */ b lbl_80030C90 lbl_80030C6C: /* 80030C6C 0002C8CC 2C 00 00 02 */ cmpwi r0, 2 /* 80030C70 0002C8D0 40 82 00 18 */ bne lbl_80030C88 /* 80030C74 0002C8D4 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030C78 0002C8D8 FC 00 00 1E */ fctiwz f0, f0 /* 80030C7C 0002C8DC D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030C80 0002C8E0 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030C84 0002C8E4 48 00 00 0C */ b lbl_80030C90 lbl_80030C88: /* 80030C88 0002C8E8 38 7E 00 08 */ addi r3, r30, 8 /* 80030C8C 0002C8EC 48 1F D0 A9 */ bl func_8022DD34 lbl_80030C90: /* 80030C90 0002C8F0 7C 03 00 D0 */ neg r0, r3 /* 80030C94 0002C8F4 7C 00 1B 78 */ or r0, r0, r3 /* 80030C98 0002C8F8 54 00 0F FE */ srwi r0, r0, 0x1f /* 80030C9C 0002C8FC 98 1F 00 00 */ stb r0, 0(r31) /* 80030CA0 0002C900 48 00 03 F4 */ b lbl_80031094 /* 80030CA4 0002C904 A8 1E 00 08 */ lha r0, 8(r30) /* 80030CA8 0002C908 2C 00 00 01 */ cmpwi r0, 1 /* 80030CAC 0002C90C 40 82 00 0C */ bne lbl_80030CB8 /* 80030CB0 0002C910 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80030CB4 0002C914 48 00 00 28 */ b lbl_80030CDC lbl_80030CB8: /* 80030CB8 0002C918 2C 00 00 02 */ cmpwi r0, 2 /* 80030CBC 0002C91C 40 82 00 18 */ bne lbl_80030CD4 /* 80030CC0 0002C920 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030CC4 0002C924 FC 00 00 1E */ fctiwz f0, f0 /* 80030CC8 0002C928 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030CCC 0002C92C 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030CD0 0002C930 48 00 00 0C */ b lbl_80030CDC lbl_80030CD4: /* 80030CD4 0002C934 38 7E 00 08 */ addi r3, r30, 8 /* 80030CD8 0002C938 48 1F D0 5D */ bl func_8022DD34 lbl_80030CDC: /* 80030CDC 0002C93C 90 7F 00 18 */ stw r3, 0x18(r31) /* 80030CE0 0002C940 48 00 03 B4 */ b lbl_80031094 /* 80030CE4 0002C944 A8 1E 00 08 */ lha r0, 8(r30) /* 80030CE8 0002C948 2C 00 00 01 */ cmpwi r0, 1 /* 80030CEC 0002C94C 40 82 00 20 */ bne lbl_80030D0C /* 80030CF0 0002C950 80 1E 00 0C */ lwz r0, 0xc(r30) /* 80030CF4 0002C954 C8 22 81 78 */ lfd f1, lbl_80640778-_SDA2_BASE_(r2) /* 80030CF8 0002C958 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80030CFC 0002C95C 90 01 00 AC */ stw r0, 0xac(r1) /* 80030D00 0002C960 C8 01 00 A8 */ lfd f0, 0xa8(r1) /* 80030D04 0002C964 EF E0 08 28 */ fsubs f31, f0, f1 /* 80030D08 0002C968 48 00 00 20 */ b lbl_80030D28 lbl_80030D0C: /* 80030D0C 0002C96C 2C 00 00 02 */ cmpwi r0, 2 /* 80030D10 0002C970 40 82 00 0C */ bne lbl_80030D1C /* 80030D14 0002C974 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 80030D18 0002C978 48 00 00 0C */ b lbl_80030D24 lbl_80030D1C: /* 80030D1C 0002C97C 38 7E 00 08 */ addi r3, r30, 8 /* 80030D20 0002C980 48 1F D0 59 */ bl func_8022DD78 lbl_80030D24: /* 80030D24 0002C984 FF E0 08 90 */ fmr f31, f1 lbl_80030D28: /* 80030D28 0002C988 A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030D2C 0002C98C 2C 00 00 01 */ cmpwi r0, 1 /* 80030D30 0002C990 40 82 00 20 */ bne lbl_80030D50 /* 80030D34 0002C994 80 1E 00 14 */ lwz r0, 0x14(r30) /* 80030D38 0002C998 C8 22 81 78 */ lfd f1, lbl_80640778-_SDA2_BASE_(r2) /* 80030D3C 0002C99C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80030D40 0002C9A0 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80030D44 0002C9A4 C8 01 00 B0 */ lfd f0, 0xb0(r1) /* 80030D48 0002C9A8 EC 20 08 28 */ fsubs f1, f0, f1 /* 80030D4C 0002C9AC 48 00 00 1C */ b lbl_80030D68 lbl_80030D50: /* 80030D50 0002C9B0 2C 00 00 02 */ cmpwi r0, 2 /* 80030D54 0002C9B4 40 82 00 0C */ bne lbl_80030D60 /* 80030D58 0002C9B8 C0 3E 00 14 */ lfs f1, 0x14(r30) /* 80030D5C 0002C9BC 48 00 00 0C */ b lbl_80030D68 lbl_80030D60: /* 80030D60 0002C9C0 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030D64 0002C9C4 48 1F D0 15 */ bl func_8022DD78 lbl_80030D68: /* 80030D68 0002C9C8 D3 FF 00 08 */ stfs f31, 8(r31) /* 80030D6C 0002C9CC D0 3F 00 0C */ stfs f1, 0xc(r31) /* 80030D70 0002C9D0 48 00 03 24 */ b lbl_80031094 /* 80030D74 0002C9D4 A8 1E 00 08 */ lha r0, 8(r30) /* 80030D78 0002C9D8 2C 00 00 01 */ cmpwi r0, 1 /* 80030D7C 0002C9DC 40 82 00 0C */ bne lbl_80030D88 /* 80030D80 0002C9E0 83 BE 00 0C */ lwz r29, 0xc(r30) /* 80030D84 0002C9E4 48 00 00 2C */ b lbl_80030DB0 lbl_80030D88: /* 80030D88 0002C9E8 2C 00 00 02 */ cmpwi r0, 2 /* 80030D8C 0002C9EC 40 82 00 18 */ bne lbl_80030DA4 /* 80030D90 0002C9F0 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030D94 0002C9F4 FC 00 00 1E */ fctiwz f0, f0 /* 80030D98 0002C9F8 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030D9C 0002C9FC 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030DA0 0002CA00 48 00 00 0C */ b lbl_80030DAC lbl_80030DA4: /* 80030DA4 0002CA04 38 7E 00 08 */ addi r3, r30, 8 /* 80030DA8 0002CA08 48 1F CF 8D */ bl func_8022DD34 lbl_80030DAC: /* 80030DAC 0002CA0C 7C 7D 1B 78 */ mr r29, r3 lbl_80030DB0: /* 80030DB0 0002CA10 A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030DB4 0002CA14 2C 00 00 01 */ cmpwi r0, 1 /* 80030DB8 0002CA18 40 82 00 0C */ bne lbl_80030DC4 /* 80030DBC 0002CA1C 80 7E 00 14 */ lwz r3, 0x14(r30) /* 80030DC0 0002CA20 48 00 00 28 */ b lbl_80030DE8 lbl_80030DC4: /* 80030DC4 0002CA24 2C 00 00 02 */ cmpwi r0, 2 /* 80030DC8 0002CA28 40 82 00 18 */ bne lbl_80030DE0 /* 80030DCC 0002CA2C C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80030DD0 0002CA30 FC 00 00 1E */ fctiwz f0, f0 /* 80030DD4 0002CA34 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030DD8 0002CA38 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030DDC 0002CA3C 48 00 00 0C */ b lbl_80030DE8 lbl_80030DE0: /* 80030DE0 0002CA40 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030DE4 0002CA44 48 1F CF 51 */ bl func_8022DD34 lbl_80030DE8: /* 80030DE8 0002CA48 7F A0 07 34 */ extsh r0, r29 /* 80030DEC 0002CA4C 7C 63 07 34 */ extsh r3, r3 /* 80030DF0 0002CA50 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80030DF4 0002CA54 C8 42 81 78 */ lfd f2, lbl_80640778-_SDA2_BASE_(r2) /* 80030DF8 0002CA58 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80030DFC 0002CA5C 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80030E00 0002CA60 90 01 00 AC */ stw r0, 0xac(r1) /* 80030E04 0002CA64 C8 01 00 B0 */ lfd f0, 0xb0(r1) /* 80030E08 0002CA68 C8 21 00 A8 */ lfd f1, 0xa8(r1) /* 80030E0C 0002CA6C EC 00 10 28 */ fsubs f0, f0, f2 /* 80030E10 0002CA70 EC 21 10 28 */ fsubs f1, f1, f2 /* 80030E14 0002CA74 D0 1F 00 08 */ stfs f0, 8(r31) /* 80030E18 0002CA78 D0 3F 00 0C */ stfs f1, 0xc(r31) /* 80030E1C 0002CA7C 48 00 02 78 */ b lbl_80031094 /* 80030E20 0002CA80 A8 1E 00 08 */ lha r0, 8(r30) /* 80030E24 0002CA84 2C 00 00 01 */ cmpwi r0, 1 /* 80030E28 0002CA88 40 82 00 0C */ bne lbl_80030E34 /* 80030E2C 0002CA8C 83 BE 00 0C */ lwz r29, 0xc(r30) /* 80030E30 0002CA90 48 00 00 2C */ b lbl_80030E5C lbl_80030E34: /* 80030E34 0002CA94 2C 00 00 02 */ cmpwi r0, 2 /* 80030E38 0002CA98 40 82 00 18 */ bne lbl_80030E50 /* 80030E3C 0002CA9C C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030E40 0002CAA0 FC 00 00 1E */ fctiwz f0, f0 /* 80030E44 0002CAA4 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030E48 0002CAA8 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030E4C 0002CAAC 48 00 00 0C */ b lbl_80030E58 lbl_80030E50: /* 80030E50 0002CAB0 38 7E 00 08 */ addi r3, r30, 8 /* 80030E54 0002CAB4 48 1F CE E1 */ bl func_8022DD34 lbl_80030E58: /* 80030E58 0002CAB8 7C 7D 1B 78 */ mr r29, r3 lbl_80030E5C: /* 80030E5C 0002CABC A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030E60 0002CAC0 2C 00 00 01 */ cmpwi r0, 1 /* 80030E64 0002CAC4 40 82 00 0C */ bne lbl_80030E70 /* 80030E68 0002CAC8 83 9E 00 14 */ lwz r28, 0x14(r30) /* 80030E6C 0002CACC 48 00 00 2C */ b lbl_80030E98 lbl_80030E70: /* 80030E70 0002CAD0 2C 00 00 02 */ cmpwi r0, 2 /* 80030E74 0002CAD4 40 82 00 18 */ bne lbl_80030E8C /* 80030E78 0002CAD8 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80030E7C 0002CADC FC 00 00 1E */ fctiwz f0, f0 /* 80030E80 0002CAE0 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030E84 0002CAE4 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030E88 0002CAE8 48 00 00 0C */ b lbl_80030E94 lbl_80030E8C: /* 80030E8C 0002CAEC 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030E90 0002CAF0 48 1F CE A5 */ bl func_8022DD34 lbl_80030E94: /* 80030E94 0002CAF4 7C 7C 1B 78 */ mr r28, r3 lbl_80030E98: /* 80030E98 0002CAF8 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80030E9C 0002CAFC 2C 00 00 01 */ cmpwi r0, 1 /* 80030EA0 0002CB00 40 82 00 0C */ bne lbl_80030EAC /* 80030EA4 0002CB04 83 7E 00 1C */ lwz r27, 0x1c(r30) /* 80030EA8 0002CB08 48 00 00 2C */ b lbl_80030ED4 lbl_80030EAC: /* 80030EAC 0002CB0C 2C 00 00 02 */ cmpwi r0, 2 /* 80030EB0 0002CB10 40 82 00 18 */ bne lbl_80030EC8 /* 80030EB4 0002CB14 C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80030EB8 0002CB18 FC 00 00 1E */ fctiwz f0, f0 /* 80030EBC 0002CB1C D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030EC0 0002CB20 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030EC4 0002CB24 48 00 00 0C */ b lbl_80030ED0 lbl_80030EC8: /* 80030EC8 0002CB28 38 7E 00 18 */ addi r3, r30, 0x18 /* 80030ECC 0002CB2C 48 1F CE 69 */ bl func_8022DD34 lbl_80030ED0: /* 80030ED0 0002CB30 7C 7B 1B 78 */ mr r27, r3 lbl_80030ED4: /* 80030ED4 0002CB34 A8 1E 00 20 */ lha r0, 0x20(r30) /* 80030ED8 0002CB38 2C 00 00 01 */ cmpwi r0, 1 /* 80030EDC 0002CB3C 40 82 00 0C */ bne lbl_80030EE8 /* 80030EE0 0002CB40 80 7E 00 24 */ lwz r3, 0x24(r30) /* 80030EE4 0002CB44 48 00 00 28 */ b lbl_80030F0C lbl_80030EE8: /* 80030EE8 0002CB48 2C 00 00 02 */ cmpwi r0, 2 /* 80030EEC 0002CB4C 40 82 00 18 */ bne lbl_80030F04 /* 80030EF0 0002CB50 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80030EF4 0002CB54 FC 00 00 1E */ fctiwz f0, f0 /* 80030EF8 0002CB58 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030EFC 0002CB5C 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030F00 0002CB60 48 00 00 0C */ b lbl_80030F0C lbl_80030F04: /* 80030F04 0002CB64 38 7E 00 20 */ addi r3, r30, 0x20 /* 80030F08 0002CB68 48 1F CE 2D */ bl func_8022DD34 lbl_80030F0C: /* 80030F0C 0002CB6C 57 65 40 2E */ slwi r5, r27, 8 /* 80030F10 0002CB70 57 A4 C0 0E */ slwi r4, r29, 0x18 /* 80030F14 0002CB74 57 80 80 1E */ slwi r0, r28, 0x10 /* 80030F18 0002CB78 7C 63 2B 78 */ or r3, r3, r5 /* 80030F1C 0002CB7C 7C 80 03 78 */ or r0, r4, r0 /* 80030F20 0002CB80 7C 60 03 78 */ or r0, r3, r0 /* 80030F24 0002CB84 90 1F 00 10 */ stw r0, 0x10(r31) /* 80030F28 0002CB88 48 00 01 6C */ b lbl_80031094 /* 80030F2C 0002CB8C A8 1E 00 08 */ lha r0, 8(r30) /* 80030F30 0002CB90 2C 00 00 01 */ cmpwi r0, 1 /* 80030F34 0002CB94 40 82 00 0C */ bne lbl_80030F40 /* 80030F38 0002CB98 83 7E 00 0C */ lwz r27, 0xc(r30) /* 80030F3C 0002CB9C 48 00 00 2C */ b lbl_80030F68 lbl_80030F40: /* 80030F40 0002CBA0 2C 00 00 02 */ cmpwi r0, 2 /* 80030F44 0002CBA4 40 82 00 18 */ bne lbl_80030F5C /* 80030F48 0002CBA8 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030F4C 0002CBAC FC 00 00 1E */ fctiwz f0, f0 /* 80030F50 0002CBB0 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030F54 0002CBB4 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030F58 0002CBB8 48 00 00 0C */ b lbl_80030F64 lbl_80030F5C: /* 80030F5C 0002CBBC 38 7E 00 08 */ addi r3, r30, 8 /* 80030F60 0002CBC0 48 1F CD D5 */ bl func_8022DD34 lbl_80030F64: /* 80030F64 0002CBC4 7C 7B 1B 78 */ mr r27, r3 lbl_80030F68: /* 80030F68 0002CBC8 A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030F6C 0002CBCC 2C 00 00 01 */ cmpwi r0, 1 /* 80030F70 0002CBD0 40 82 00 0C */ bne lbl_80030F7C /* 80030F74 0002CBD4 80 BE 00 14 */ lwz r5, 0x14(r30) /* 80030F78 0002CBD8 48 00 00 2C */ b lbl_80030FA4 lbl_80030F7C: /* 80030F7C 0002CBDC 2C 00 00 02 */ cmpwi r0, 2 /* 80030F80 0002CBE0 40 82 00 18 */ bne lbl_80030F98 /* 80030F84 0002CBE4 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80030F88 0002CBE8 FC 00 00 1E */ fctiwz f0, f0 /* 80030F8C 0002CBEC D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030F90 0002CBF0 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030F94 0002CBF4 48 00 00 0C */ b lbl_80030FA0 lbl_80030F98: /* 80030F98 0002CBF8 38 7E 00 10 */ addi r3, r30, 0x10 /* 80030F9C 0002CBFC 48 1F CD 99 */ bl func_8022DD34 lbl_80030FA0: /* 80030FA0 0002CC00 7C 65 1B 78 */ mr r5, r3 lbl_80030FA4: /* 80030FA4 0002CC04 7F E3 FB 78 */ mr r3, r31 /* 80030FA8 0002CC08 7F 64 DB 78 */ mr r4, r27 /* 80030FAC 0002CC0C 48 01 3A F1 */ bl func_80044A9C /* 80030FB0 0002CC10 48 00 00 E4 */ b lbl_80031094 /* 80030FB4 0002CC14 A8 1E 00 08 */ lha r0, 8(r30) /* 80030FB8 0002CC18 2C 00 00 01 */ cmpwi r0, 1 /* 80030FBC 0002CC1C 40 82 00 0C */ bne lbl_80030FC8 /* 80030FC0 0002CC20 83 7E 00 0C */ lwz r27, 0xc(r30) /* 80030FC4 0002CC24 48 00 00 2C */ b lbl_80030FF0 lbl_80030FC8: /* 80030FC8 0002CC28 2C 00 00 02 */ cmpwi r0, 2 /* 80030FCC 0002CC2C 40 82 00 18 */ bne lbl_80030FE4 /* 80030FD0 0002CC30 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 80030FD4 0002CC34 FC 00 00 1E */ fctiwz f0, f0 /* 80030FD8 0002CC38 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80030FDC 0002CC3C 80 61 00 BC */ lwz r3, 0xbc(r1) /* 80030FE0 0002CC40 48 00 00 0C */ b lbl_80030FEC lbl_80030FE4: /* 80030FE4 0002CC44 38 7E 00 08 */ addi r3, r30, 8 /* 80030FE8 0002CC48 48 1F CD 4D */ bl func_8022DD34 lbl_80030FEC: /* 80030FEC 0002CC4C 7C 7B 1B 78 */ mr r27, r3 lbl_80030FF0: /* 80030FF0 0002CC50 A8 1E 00 10 */ lha r0, 0x10(r30) /* 80030FF4 0002CC54 2C 00 00 01 */ cmpwi r0, 1 /* 80030FF8 0002CC58 40 82 00 0C */ bne lbl_80031004 /* 80030FFC 0002CC5C 80 9E 00 14 */ lwz r4, 0x14(r30) /* 80031000 0002CC60 48 00 00 2C */ b lbl_8003102C lbl_80031004: /* 80031004 0002CC64 2C 00 00 02 */ cmpwi r0, 2 /* 80031008 0002CC68 40 82 00 18 */ bne lbl_80031020 /* 8003100C 0002CC6C C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80031010 0002CC70 FC 00 00 1E */ fctiwz f0, f0 /* 80031014 0002CC74 D8 01 00 B8 */ stfd f0, 0xb8(r1) /* 80031018 0002CC78 80 61 00 BC */ lwz r3, 0xbc(r1) /* 8003101C 0002CC7C 48 00 00 0C */ b lbl_80031028 lbl_80031020: /* 80031020 0002CC80 38 7E 00 10 */ addi r3, r30, 0x10 /* 80031024 0002CC84 48 1F CD 11 */ bl func_8022DD34 lbl_80031028: /* 80031028 0002CC88 7C 64 1B 78 */ mr r4, r3 lbl_8003102C: /* 8003102C 0002CC8C 7C 04 00 D0 */ neg r0, r4 /* 80031030 0002CC90 7F E3 FB 78 */ mr r3, r31 /* 80031034 0002CC94 7C 00 23 78 */ or r0, r0, r4 /* 80031038 0002CC98 7F 64 DB 78 */ mr r4, r27 /* 8003103C 0002CC9C 54 05 0F FE */ srwi r5, r0, 0x1f /* 80031040 0002CCA0 48 01 3A 4D */ bl Audio_SoundAttributes_SetSoundType /* 80031044 0002CCA4 48 00 00 50 */ b lbl_80031094 /* 80031048 0002CCA8 A8 1E 00 08 */ lha r0, 8(r30) /* 8003104C 0002CCAC 2C 00 00 03 */ cmpwi r0, 3 /* 80031050 0002CCB0 40 82 00 0C */ bne lbl_8003105C /* 80031054 0002CCB4 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80031058 0002CCB8 48 00 00 10 */ b lbl_80031068 lbl_8003105C: /* 8003105C 0002CCBC 38 7E 00 08 */ addi r3, r30, 8 /* 80031060 0002CCC0 38 81 00 58 */ addi r4, r1, 0x58 /* 80031064 0002CCC4 4B FF 73 4D */ bl func_800283B0 lbl_80031068: /* 80031068 0002CCC8 7C 66 1B 78 */ mr r6, r3 /* 8003106C 0002CCCC 7F 83 E3 78 */ mr r3, r28 /* 80031070 0002CCD0 38 81 00 08 */ addi r4, r1, 8 /* 80031074 0002CCD4 38 FE 00 10 */ addi r7, r30, 0x10 /* 80031078 0002CCD8 38 A0 00 50 */ li r5, 0x50 /* 8003107C 0002CCDC 4B FF 6A D1 */ bl func_80027B4C /* 80031080 0002CCE0 2C 03 00 00 */ cmpwi r3, 0 /* 80031084 0002CCE4 41 82 00 10 */ beq lbl_80031094 /* 80031088 0002CCE8 7F E3 FB 78 */ mr r3, r31 /* 8003108C 0002CCEC 38 81 00 08 */ addi r4, r1, 8 /* 80031090 0002CCF0 48 01 3A 09 */ bl func_80044A98 lbl_80031094: /* 80031094 0002CCF4 38 60 00 01 */ li r3, 1 lbl_80031098: /* 80031098 0002CCF8 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0 /* 8003109C 0002CCFC 39 61 00 E0 */ addi r11, r1, 0xe0 /* 800310A0 0002CD00 CB E1 00 E0 */ lfd f31, 0xe0(r1) /* 800310A4 0002CD04 48 19 60 D1 */ bl _restgpr_27 /* 800310A8 0002CD08 80 01 00 F4 */ lwz r0, 0xf4(r1) /* 800310AC 0002CD0C 7C 08 03 A6 */ mtlr r0 /* 800310B0 0002CD10 38 21 00 F0 */ addi r1, r1, 0xf0 /* 800310B4 0002CD14 4E 80 00 20 */ blr .global func_800310B8 func_800310B8: /* 800310B8 0002CD18 38 A0 00 01 */ li r5, 1 /* 800310BC 0002CD1C 38 6D 97 58 */ addi r3, r13, lbl_8063EA18-_SDA_BASE_ /* 800310C0 0002CD20 38 80 00 04 */ li r4, 4 /* 800310C4 0002CD24 38 00 00 00 */ li r0, 0 /* 800310C8 0002CD28 98 AD 97 58 */ stb r5, lbl_8063EA18-_SDA_BASE_(r13) /* 800310CC 0002CD2C B0 83 00 02 */ sth r4, 2(r3) /* 800310D0 0002CD30 98 03 00 04 */ stb r0, 4(r3) /* 800310D4 0002CD34 4E 80 00 20 */ blr .global lbl_800310D8 lbl_800310D8: /* 800310D8 0002CD38 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 800310DC 0002CD3C 7C 08 02 A6 */ mflr r0 /* 800310E0 0002CD40 90 01 00 B4 */ stw r0, 0xb4(r1) /* 800310E4 0002CD44 39 61 00 B0 */ addi r11, r1, 0xb0 /* 800310E8 0002CD48 48 19 60 41 */ bl _savegpr_27 /* 800310EC 0002CD4C 7C 7B 1B 78 */ mr r27, r3 /* 800310F0 0002CD50 7C 9C 23 78 */ mr r28, r4 /* 800310F4 0002CD54 7C BD 2B 78 */ mr r29, r5 /* 800310F8 0002CD58 7C DE 33 78 */ mr r30, r6 /* 800310FC 0002CD5C 3B E0 00 00 */ li r31, 0 /* 80031100 0002CD60 48 01 C7 0D */ bl func_8004D80C /* 80031104 0002CD64 2C 03 00 00 */ cmpwi r3, 0 /* 80031108 0002CD68 40 82 00 0C */ bne lbl_80031114 /* 8003110C 0002CD6C 38 60 00 01 */ li r3, 1 /* 80031110 0002CD70 48 00 03 FC */ b lbl_8003150C lbl_80031114: /* 80031114 0002CD74 2C 1C 00 01 */ cmpwi r28, 1 /* 80031118 0002CD78 41 82 00 24 */ beq lbl_8003113C /* 8003111C 0002CD7C A8 1D 00 00 */ lha r0, 0(r29) /* 80031120 0002CD80 2C 00 00 2C */ cmpwi r0, 0x2c /* 80031124 0002CD84 40 82 00 18 */ bne lbl_8003113C /* 80031128 0002CD88 83 FD 00 04 */ lwz r31, 4(r29) /* 8003112C 0002CD8C 2C 1F 00 00 */ cmpwi r31, 0 /* 80031130 0002CD90 40 82 00 0C */ bne lbl_8003113C /* 80031134 0002CD94 38 60 00 01 */ li r3, 1 /* 80031138 0002CD98 48 00 03 D4 */ b lbl_8003150C lbl_8003113C: /* 8003113C 0002CD9C 28 1C 00 25 */ cmplwi r28, 0x25 /* 80031140 0002CDA0 41 81 03 C8 */ bgt lbl_80031508 /* 80031144 0002CDA4 3C 80 80 41 */ lis r4, lbl_8040A058@ha /* 80031148 0002CDA8 57 80 10 3A */ slwi r0, r28, 2 /* 8003114C 0002CDAC 38 84 A0 58 */ addi r4, r4, lbl_8040A058@l /* 80031150 0002CDB0 7C 84 00 2E */ lwzx r4, r4, r0 /* 80031154 0002CDB4 7C 89 03 A6 */ mtctr r4 /* 80031158 0002CDB8 4E 80 04 20 */ bctr /* 8003115C 0002CDBC 48 01 CC 3D */ bl func_8004DD98 /* 80031160 0002CDC0 2C 03 00 00 */ cmpwi r3, 0 /* 80031164 0002CDC4 41 82 03 A4 */ beq lbl_80031508 /* 80031168 0002CDC8 38 80 00 2C */ li r4, 0x2c /* 8003116C 0002CDCC 38 00 00 01 */ li r0, 1 /* 80031170 0002CDD0 B0 9E 00 00 */ sth r4, 0(r30) /* 80031174 0002CDD4 B0 1E 00 02 */ sth r0, 2(r30) /* 80031178 0002CDD8 90 7E 00 04 */ stw r3, 4(r30) /* 8003117C 0002CDDC 48 00 03 8C */ b lbl_80031508 /* 80031180 0002CDE0 2C 1F 00 00 */ cmpwi r31, 0 /* 80031184 0002CDE4 41 82 03 84 */ beq lbl_80031508 /* 80031188 0002CDE8 7F E4 FB 78 */ mr r4, r31 /* 8003118C 0002CDEC 48 01 CC 41 */ bl func_8004DDCC /* 80031190 0002CDF0 38 00 00 00 */ li r0, 0 /* 80031194 0002CDF4 38 60 00 01 */ li r3, 1 /* 80031198 0002CDF8 B0 7D 00 00 */ sth r3, 0(r29) /* 8003119C 0002CDFC B0 1D 00 02 */ sth r0, 2(r29) /* 800311A0 0002CE00 90 1D 00 04 */ stw r0, 4(r29) /* 800311A4 0002CE04 48 00 03 64 */ b lbl_80031508 /* 800311A8 0002CE08 A8 1D 00 08 */ lha r0, 8(r29) /* 800311AC 0002CE0C 2C 00 00 03 */ cmpwi r0, 3 /* 800311B0 0002CE10 40 82 00 0C */ bne lbl_800311BC /* 800311B4 0002CE14 80 7D 00 0C */ lwz r3, 0xc(r29) /* 800311B8 0002CE18 48 00 00 10 */ b lbl_800311C8 lbl_800311BC: /* 800311BC 0002CE1C 38 7D 00 08 */ addi r3, r29, 8 /* 800311C0 0002CE20 38 9B 09 A0 */ addi r4, r27, 0x9a0 /* 800311C4 0002CE24 4B FF 71 ED */ bl func_800283B0 lbl_800311C8: /* 800311C8 0002CE28 3C 80 80 41 */ lis r4, lbl_8040A048@ha /* 800311CC 0002CE2C 7C 65 1B 78 */ mr r5, r3 /* 800311D0 0002CE30 38 61 00 08 */ addi r3, r1, 8 /* 800311D4 0002CE34 38 84 A0 48 */ addi r4, r4, lbl_8040A048@l /* 800311D8 0002CE38 4C C6 31 82 */ crclr 6 /* 800311DC 0002CE3C 48 19 B9 21 */ bl sprintf /* 800311E0 0002CE40 7F E3 FB 78 */ mr r3, r31 /* 800311E4 0002CE44 38 81 00 08 */ addi r4, r1, 8 /* 800311E8 0002CE48 48 01 69 95 */ bl func_80047B7C /* 800311EC 0002CE4C 2C 03 00 00 */ cmpwi r3, 0 /* 800311F0 0002CE50 41 82 00 14 */ beq lbl_80031204 /* 800311F4 0002CE54 38 00 00 01 */ li r0, 1 /* 800311F8 0002CE58 B0 1E 00 00 */ sth r0, 0(r30) /* 800311FC 0002CE5C 90 1E 00 04 */ stw r0, 4(r30) /* 80031200 0002CE60 48 00 03 08 */ b lbl_80031508 lbl_80031204: /* 80031204 0002CE64 38 60 00 01 */ li r3, 1 /* 80031208 0002CE68 38 00 00 00 */ li r0, 0 /* 8003120C 0002CE6C B0 7E 00 00 */ sth r3, 0(r30) /* 80031210 0002CE70 90 1E 00 04 */ stw r0, 4(r30) /* 80031214 0002CE74 48 00 02 F4 */ b lbl_80031508 /* 80031218 0002CE78 A8 1D 00 08 */ lha r0, 8(r29) /* 8003121C 0002CE7C 2C 00 00 21 */ cmpwi r0, 0x21 /* 80031220 0002CE80 40 82 00 1C */ bne lbl_8003123C /* 80031224 0002CE84 80 9D 00 0C */ lwz r4, 0xc(r29) /* 80031228 0002CE88 2C 04 00 00 */ cmpwi r4, 0 /* 8003122C 0002CE8C 41 82 00 10 */ beq lbl_8003123C /* 80031230 0002CE90 7F E3 FB 78 */ mr r3, r31 /* 80031234 0002CE94 48 01 6C B1 */ bl func_80047EE4 /* 80031238 0002CE98 48 00 02 D0 */ b lbl_80031508 lbl_8003123C: /* 8003123C 0002CE9C 7F E3 FB 78 */ mr r3, r31 /* 80031240 0002CEA0 38 80 00 00 */ li r4, 0 /* 80031244 0002CEA4 48 01 6C A1 */ bl func_80047EE4 /* 80031248 0002CEA8 48 00 02 C0 */ b lbl_80031508 /* 8003124C 0002CEAC A8 1D 00 08 */ lha r0, 8(r29) /* 80031250 0002CEB0 2C 00 00 01 */ cmpwi r0, 1 /* 80031254 0002CEB4 40 82 00 28 */ bne lbl_8003127C /* 80031258 0002CEB8 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8003125C 0002CEBC 3C 00 43 30 */ lis r0, 0x4330 /* 80031260 0002CEC0 90 01 00 88 */ stw r0, 0x88(r1) /* 80031264 0002CEC4 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80031268 0002CEC8 C8 22 81 80 */ lfd f1, lbl_80640780-_SDA2_BASE_(r2) /* 8003126C 0002CECC 90 01 00 8C */ stw r0, 0x8c(r1) /* 80031270 0002CED0 C8 01 00 88 */ lfd f0, 0x88(r1) /* 80031274 0002CED4 EC 20 08 28 */ fsubs f1, f0, f1 /* 80031278 0002CED8 48 00 00 1C */ b lbl_80031294 lbl_8003127C: /* 8003127C 0002CEDC 2C 00 00 02 */ cmpwi r0, 2 /* 80031280 0002CEE0 40 82 00 0C */ bne lbl_8003128C /* 80031284 0002CEE4 C0 3D 00 0C */ lfs f1, 0xc(r29) /* 80031288 0002CEE8 48 00 00 0C */ b lbl_80031294 lbl_8003128C: /* 8003128C 0002CEEC 38 7D 00 08 */ addi r3, r29, 8 /* 80031290 0002CEF0 48 1F CA E9 */ bl func_8022DD78 lbl_80031294: /* 80031294 0002CEF4 7F E3 FB 78 */ mr r3, r31 /* 80031298 0002CEF8 48 01 6F 71 */ bl func_80048208 /* 8003129C 0002CEFC 48 00 02 6C */ b lbl_80031508 /* 800312A0 0002CF00 7F E3 FB 78 */ mr r3, r31 /* 800312A4 0002CF04 48 01 6F 49 */ bl func_800481EC /* 800312A8 0002CF08 48 00 02 60 */ b lbl_80031508 /* 800312AC 0002CF0C 7F E3 FB 78 */ mr r3, r31 /* 800312B0 0002CF10 48 01 6F FD */ bl func_800482AC /* 800312B4 0002CF14 48 00 02 54 */ b lbl_80031508 /* 800312B8 0002CF18 A8 1D 00 08 */ lha r0, 8(r29) /* 800312BC 0002CF1C 2C 00 00 01 */ cmpwi r0, 1 /* 800312C0 0002CF20 40 82 00 0C */ bne lbl_800312CC /* 800312C4 0002CF24 80 9D 00 0C */ lwz r4, 0xc(r29) /* 800312C8 0002CF28 48 00 00 2C */ b lbl_800312F4 lbl_800312CC: /* 800312CC 0002CF2C 2C 00 00 02 */ cmpwi r0, 2 /* 800312D0 0002CF30 40 82 00 18 */ bne lbl_800312E8 /* 800312D4 0002CF34 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 800312D8 0002CF38 FC 00 00 1E */ fctiwz f0, f0 /* 800312DC 0002CF3C D8 01 00 88 */ stfd f0, 0x88(r1) /* 800312E0 0002CF40 80 61 00 8C */ lwz r3, 0x8c(r1) /* 800312E4 0002CF44 48 00 00 0C */ b lbl_800312F0 lbl_800312E8: /* 800312E8 0002CF48 38 7D 00 08 */ addi r3, r29, 8 /* 800312EC 0002CF4C 48 1F CA 49 */ bl func_8022DD34 lbl_800312F0: /* 800312F0 0002CF50 7C 64 1B 78 */ mr r4, r3 lbl_800312F4: /* 800312F4 0002CF54 7F E3 FB 78 */ mr r3, r31 /* 800312F8 0002CF58 48 01 6F 95 */ bl func_8004828C /* 800312FC 0002CF5C 38 00 00 01 */ li r0, 1 /* 80031300 0002CF60 90 7E 00 04 */ stw r3, 4(r30) /* 80031304 0002CF64 B0 1E 00 00 */ sth r0, 0(r30) /* 80031308 0002CF68 48 00 02 00 */ b lbl_80031508 /* 8003130C 0002CF6C 7F E3 FB 78 */ mr r3, r31 /* 80031310 0002CF70 38 80 00 00 */ li r4, 0 /* 80031314 0002CF74 48 01 6F 79 */ bl func_8004828C /* 80031318 0002CF78 38 00 00 01 */ li r0, 1 /* 8003131C 0002CF7C 90 7E 00 04 */ stw r3, 4(r30) /* 80031320 0002CF80 B0 1E 00 00 */ sth r0, 0(r30) /* 80031324 0002CF84 48 00 01 E4 */ b lbl_80031508 /* 80031328 0002CF88 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8003132C 0002CF8C 38 00 00 02 */ li r0, 2 /* 80031330 0002CF90 B0 1E 00 00 */ sth r0, 0(r30) /* 80031334 0002CF94 D0 1E 00 04 */ stfs f0, 4(r30) /* 80031338 0002CF98 48 00 01 D0 */ b lbl_80031508 /* 8003133C 0002CF9C C0 1F 00 0C */ lfs f0, 0xc(r31) /* 80031340 0002CFA0 38 00 00 02 */ li r0, 2 /* 80031344 0002CFA4 B0 1E 00 00 */ sth r0, 0(r30) /* 80031348 0002CFA8 D0 1E 00 04 */ stfs f0, 4(r30) /* 8003134C 0002CFAC 48 00 01 BC */ b lbl_80031508 /* 80031350 0002CFB0 38 60 00 01 */ li r3, 1 /* 80031354 0002CFB4 38 00 00 00 */ li r0, 0 /* 80031358 0002CFB8 B0 7E 00 00 */ sth r3, 0(r30) /* 8003135C 0002CFBC 90 1E 00 04 */ stw r0, 4(r30) /* 80031360 0002CFC0 A8 1D 00 08 */ lha r0, 8(r29) /* 80031364 0002CFC4 2C 80 00 01 */ cmpwi cr1, r0, 1 /* 80031368 0002CFC8 40 86 01 A0 */ bne cr1, lbl_80031508 /* 8003136C 0002CFCC 83 8D 96 F0 */ lwz r28, lbl_8063E9B0-_SDA_BASE_(r13) /* 80031370 0002CFD0 2C 1C 00 00 */ cmpwi r28, 0 /* 80031374 0002CFD4 41 82 01 94 */ beq lbl_80031508 /* 80031378 0002CFD8 40 86 00 0C */ bne cr1, lbl_80031384 /* 8003137C 0002CFDC 83 BD 00 0C */ lwz r29, 0xc(r29) /* 80031380 0002CFE0 48 00 00 2C */ b lbl_800313AC lbl_80031384: /* 80031384 0002CFE4 2C 00 00 02 */ cmpwi r0, 2 /* 80031388 0002CFE8 40 82 00 18 */ bne lbl_800313A0 /* 8003138C 0002CFEC C0 1D 00 0C */ lfs f0, 0xc(r29) /* 80031390 0002CFF0 FC 00 00 1E */ fctiwz f0, f0 /* 80031394 0002CFF4 D8 01 00 88 */ stfd f0, 0x88(r1) /* 80031398 0002CFF8 80 61 00 8C */ lwz r3, 0x8c(r1) /* 8003139C 0002CFFC 48 00 00 0C */ b lbl_800313A8 lbl_800313A0: /* 800313A0 0002D000 38 7D 00 08 */ addi r3, r29, 8 /* 800313A4 0002D004 48 1F C9 91 */ bl func_8022DD34 lbl_800313A8: /* 800313A8 0002D008 7C 7D 1B 78 */ mr r29, r3 lbl_800313AC: /* 800313AC 0002D00C 7F 83 E3 78 */ mr r3, r28 /* 800313B0 0002D010 4B FF 3F B9 */ bl func_80025368 /* 800313B4 0002D014 7C 64 1B 78 */ mr r4, r3 /* 800313B8 0002D018 7F E3 FB 78 */ mr r3, r31 /* 800313BC 0002D01C 7F A5 EB 78 */ mr r5, r29 /* 800313C0 0002D020 48 01 68 1D */ bl func_80047BDC /* 800313C4 0002D024 2C 03 00 00 */ cmpwi r3, 0 /* 800313C8 0002D028 41 82 01 40 */ beq lbl_80031508 /* 800313CC 0002D02C 38 00 00 01 */ li r0, 1 /* 800313D0 0002D030 B0 1E 00 00 */ sth r0, 0(r30) /* 800313D4 0002D034 90 1E 00 04 */ stw r0, 4(r30) /* 800313D8 0002D038 48 00 01 30 */ b lbl_80031508 /* 800313DC 0002D03C 38 60 00 01 */ li r3, 1 /* 800313E0 0002D040 38 00 00 00 */ li r0, 0 /* 800313E4 0002D044 B0 7E 00 00 */ sth r3, 0(r30) /* 800313E8 0002D048 90 1E 00 04 */ stw r0, 4(r30) /* 800313EC 0002D04C A8 1D 00 08 */ lha r0, 8(r29) /* 800313F0 0002D050 2C 00 00 01 */ cmpwi r0, 1 /* 800313F4 0002D054 40 82 01 14 */ bne lbl_80031508 /* 800313F8 0002D058 40 82 00 0C */ bne lbl_80031404 /* 800313FC 0002D05C 83 9D 00 0C */ lwz r28, 0xc(r29) /* 80031400 0002D060 48 00 00 2C */ b lbl_8003142C lbl_80031404: /* 80031404 0002D064 2C 00 00 02 */ cmpwi r0, 2 /* 80031408 0002D068 40 82 00 18 */ bne lbl_80031420 /* 8003140C 0002D06C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 80031410 0002D070 FC 00 00 1E */ fctiwz f0, f0 /* 80031414 0002D074 D8 01 00 88 */ stfd f0, 0x88(r1) /* 80031418 0002D078 80 61 00 8C */ lwz r3, 0x8c(r1) /* 8003141C 0002D07C 48 00 00 0C */ b lbl_80031428 lbl_80031420: /* 80031420 0002D080 38 7D 00 08 */ addi r3, r29, 8 /* 80031424 0002D084 48 1F C9 11 */ bl func_8022DD34 lbl_80031428: /* 80031428 0002D088 7C 7C 1B 78 */ mr r28, r3 lbl_8003142C: /* 8003142C 0002D08C A8 1D 00 10 */ lha r0, 0x10(r29) /* 80031430 0002D090 2C 00 00 01 */ cmpwi r0, 1 /* 80031434 0002D094 40 82 00 0C */ bne lbl_80031440 /* 80031438 0002D098 80 BD 00 14 */ lwz r5, 0x14(r29) /* 8003143C 0002D09C 48 00 00 2C */ b lbl_80031468 lbl_80031440: /* 80031440 0002D0A0 2C 00 00 02 */ cmpwi r0, 2 /* 80031444 0002D0A4 40 82 00 18 */ bne lbl_8003145C /* 80031448 0002D0A8 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8003144C 0002D0AC FC 00 00 1E */ fctiwz f0, f0 /* 80031450 0002D0B0 D8 01 00 88 */ stfd f0, 0x88(r1) /* 80031454 0002D0B4 80 61 00 8C */ lwz r3, 0x8c(r1) /* 80031458 0002D0B8 48 00 00 0C */ b lbl_80031464 lbl_8003145C: /* 8003145C 0002D0BC 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031460 0002D0C0 48 1F C8 D5 */ bl func_8022DD34 lbl_80031464: /* 80031464 0002D0C4 7C 65 1B 78 */ mr r5, r3 lbl_80031468: /* 80031468 0002D0C8 7F E3 FB 78 */ mr r3, r31 /* 8003146C 0002D0CC 7F 84 E3 78 */ mr r4, r28 /* 80031470 0002D0D0 48 01 67 6D */ bl func_80047BDC /* 80031474 0002D0D4 2C 03 00 00 */ cmpwi r3, 0 /* 80031478 0002D0D8 41 82 00 90 */ beq lbl_80031508 /* 8003147C 0002D0DC 38 00 00 01 */ li r0, 1 /* 80031480 0002D0E0 B0 1E 00 00 */ sth r0, 0(r30) /* 80031484 0002D0E4 90 1E 00 04 */ stw r0, 4(r30) /* 80031488 0002D0E8 48 00 00 80 */ b lbl_80031508 /* 8003148C 0002D0EC A8 1D 00 08 */ lha r0, 8(r29) /* 80031490 0002D0F0 2C 00 00 01 */ cmpwi r0, 1 /* 80031494 0002D0F4 40 82 00 0C */ bne lbl_800314A0 /* 80031498 0002D0F8 80 7D 00 0C */ lwz r3, 0xc(r29) /* 8003149C 0002D0FC 48 00 00 28 */ b lbl_800314C4 lbl_800314A0: /* 800314A0 0002D100 2C 00 00 02 */ cmpwi r0, 2 /* 800314A4 0002D104 40 82 00 18 */ bne lbl_800314BC /* 800314A8 0002D108 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 800314AC 0002D10C FC 00 00 1E */ fctiwz f0, f0 /* 800314B0 0002D110 D8 01 00 88 */ stfd f0, 0x88(r1) /* 800314B4 0002D114 80 61 00 8C */ lwz r3, 0x8c(r1) /* 800314B8 0002D118 48 00 00 0C */ b lbl_800314C4 lbl_800314BC: /* 800314BC 0002D11C 38 7D 00 08 */ addi r3, r29, 8 /* 800314C0 0002D120 48 1F C8 75 */ bl func_8022DD34 lbl_800314C4: /* 800314C4 0002D124 90 7F 00 20 */ stw r3, 0x20(r31) /* 800314C8 0002D128 48 00 00 40 */ b lbl_80031508 /* 800314CC 0002D12C 38 00 00 00 */ li r0, 0 /* 800314D0 0002D130 B0 1E 00 02 */ sth r0, 2(r30) /* 800314D4 0002D134 80 1F 00 34 */ lwz r0, 0x34(r31) /* 800314D8 0002D138 2C 00 00 00 */ cmpwi r0, 0 /* 800314DC 0002D13C 90 1E 00 04 */ stw r0, 4(r30) /* 800314E0 0002D140 41 82 00 10 */ beq lbl_800314F0 /* 800314E4 0002D144 38 00 00 21 */ li r0, 0x21 /* 800314E8 0002D148 B0 1E 00 00 */ sth r0, 0(r30) /* 800314EC 0002D14C 48 00 00 1C */ b lbl_80031508 lbl_800314F0: /* 800314F0 0002D150 38 00 00 01 */ li r0, 1 /* 800314F4 0002D154 B0 1E 00 00 */ sth r0, 0(r30) /* 800314F8 0002D158 48 00 00 10 */ b lbl_80031508 /* 800314FC 0002D15C 80 1F 00 00 */ lwz r0, 0(r31) /* 80031500 0002D160 60 00 00 20 */ ori r0, r0, 0x20 /* 80031504 0002D164 90 1F 00 00 */ stw r0, 0(r31) lbl_80031508: /* 80031508 0002D168 38 60 00 01 */ li r3, 1 lbl_8003150C: /* 8003150C 0002D16C 39 61 00 B0 */ addi r11, r1, 0xb0 /* 80031510 0002D170 48 19 5C 65 */ bl _restgpr_27 /* 80031514 0002D174 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80031518 0002D178 7C 08 03 A6 */ mtlr r0 /* 8003151C 0002D17C 38 21 00 B0 */ addi r1, r1, 0xb0 /* 80031520 0002D180 4E 80 00 20 */ blr .global func_80031524 func_80031524: /* 80031524 0002D184 38 A0 00 01 */ li r5, 1 /* 80031528 0002D188 38 6D 97 60 */ addi r3, r13, lbl_8063EA20-_SDA_BASE_ /* 8003152C 0002D18C 38 80 00 04 */ li r4, 4 /* 80031530 0002D190 38 00 00 00 */ li r0, 0 /* 80031534 0002D194 98 AD 97 60 */ stb r5, lbl_8063EA20-_SDA_BASE_(r13) /* 80031538 0002D198 B0 83 00 02 */ sth r4, 2(r3) /* 8003153C 0002D19C 98 03 00 04 */ stb r0, 4(r3) /* 80031540 0002D1A0 4E 80 00 20 */ blr .global lbl_80031544 lbl_80031544: /* 80031544 0002D1A4 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 80031548 0002D1A8 7C 08 02 A6 */ mflr r0 /* 8003154C 0002D1AC 90 01 00 C4 */ stw r0, 0xc4(r1) /* 80031550 0002D1B0 DB E1 00 B0 */ stfd f31, 0xb0(r1) /* 80031554 0002D1B4 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 /* 80031558 0002D1B8 39 61 00 B0 */ addi r11, r1, 0xb0 /* 8003155C 0002D1BC 48 19 5B C9 */ bl _savegpr_26 /* 80031560 0002D1C0 7C 7A 1B 78 */ mr r26, r3 /* 80031564 0002D1C4 7C 9B 23 78 */ mr r27, r4 /* 80031568 0002D1C8 7C BD 2B 78 */ mr r29, r5 /* 8003156C 0002D1CC 7C DE 33 78 */ mr r30, r6 /* 80031570 0002D1D0 3B E0 00 00 */ li r31, 0 /* 80031574 0002D1D4 48 01 C2 99 */ bl func_8004D80C /* 80031578 0002D1D8 38 00 00 00 */ li r0, 0 /* 8003157C 0002D1DC 2C 03 00 00 */ cmpwi r3, 0 /* 80031580 0002D1E0 90 01 00 40 */ stw r0, 0x40(r1) /* 80031584 0002D1E4 7C 7C 1B 78 */ mr r28, r3 /* 80031588 0002D1E8 90 01 00 44 */ stw r0, 0x44(r1) /* 8003158C 0002D1EC 90 01 00 48 */ stw r0, 0x48(r1) /* 80031590 0002D1F0 40 82 00 0C */ bne lbl_8003159C /* 80031594 0002D1F4 38 60 00 01 */ li r3, 1 /* 80031598 0002D1F8 48 00 0C 0C */ b lbl_800321A4 lbl_8003159C: /* 8003159C 0002D1FC 2C 1B 00 01 */ cmpwi r27, 1 /* 800315A0 0002D200 41 82 00 20 */ beq lbl_800315C0 /* 800315A4 0002D204 80 9D 00 04 */ lwz r4, 4(r29) /* 800315A8 0002D208 48 01 C8 81 */ bl func_8004DE28 /* 800315AC 0002D20C 2C 03 00 00 */ cmpwi r3, 0 /* 800315B0 0002D210 7C 7F 1B 78 */ mr r31, r3 /* 800315B4 0002D214 40 82 00 0C */ bne lbl_800315C0 /* 800315B8 0002D218 38 60 00 01 */ li r3, 1 /* 800315BC 0002D21C 48 00 0B E8 */ b lbl_800321A4 lbl_800315C0: /* 800315C0 0002D220 28 1B 00 28 */ cmplwi r27, 0x28 /* 800315C4 0002D224 41 81 0B DC */ bgt lbl_800321A0 /* 800315C8 0002D228 3C 60 80 41 */ lis r3, lbl_8040A0F0@ha /* 800315CC 0002D22C 57 60 10 3A */ slwi r0, r27, 2 /* 800315D0 0002D230 38 63 A0 F0 */ addi r3, r3, lbl_8040A0F0@l /* 800315D4 0002D234 7C 63 00 2E */ lwzx r3, r3, r0 /* 800315D8 0002D238 7C 69 03 A6 */ mtctr r3 /* 800315DC 0002D23C 4E 80 04 20 */ bctr /* 800315E0 0002D240 38 60 00 2D */ li r3, 0x2d /* 800315E4 0002D244 38 00 00 01 */ li r0, 1 /* 800315E8 0002D248 B0 7E 00 00 */ sth r3, 0(r30) /* 800315EC 0002D24C 7F 83 E3 78 */ mr r3, r28 /* 800315F0 0002D250 B0 1E 00 02 */ sth r0, 2(r30) /* 800315F4 0002D254 48 01 C6 5D */ bl func_8004DC50 /* 800315F8 0002D258 80 03 00 50 */ lwz r0, 0x50(r3) /* 800315FC 0002D25C 90 1E 00 04 */ stw r0, 4(r30) /* 80031600 0002D260 48 00 0B A0 */ b lbl_800321A0 /* 80031604 0002D264 2C 1F 00 00 */ cmpwi r31, 0 /* 80031608 0002D268 41 82 0B 98 */ beq lbl_800321A0 /* 8003160C 0002D26C 7F 83 E3 78 */ mr r3, r28 /* 80031610 0002D270 7F E4 FB 78 */ mr r4, r31 /* 80031614 0002D274 48 01 C6 99 */ bl func_8004DCAC /* 80031618 0002D278 38 00 00 00 */ li r0, 0 /* 8003161C 0002D27C B0 1D 00 02 */ sth r0, 2(r29) /* 80031620 0002D280 90 1D 00 04 */ stw r0, 4(r29) /* 80031624 0002D284 48 00 0B 7C */ b lbl_800321A0 /* 80031628 0002D288 38 60 01 00 */ li r3, 0x100 /* 8003162C 0002D28C 48 1A 97 39 */ bl func_801DAD64 /* 80031630 0002D290 A8 1D 00 08 */ lha r0, 8(r29) /* 80031634 0002D294 7C 7C 1B 78 */ mr r28, r3 /* 80031638 0002D298 2C 00 00 03 */ cmpwi r0, 3 /* 8003163C 0002D29C 40 82 00 0C */ bne lbl_80031648 /* 80031640 0002D2A0 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80031644 0002D2A4 48 00 00 10 */ b lbl_80031654 lbl_80031648: /* 80031648 0002D2A8 7F 84 E3 78 */ mr r4, r28 /* 8003164C 0002D2AC 38 7D 00 08 */ addi r3, r29, 8 /* 80031650 0002D2B0 4B FF 6D 61 */ bl func_800283B0 lbl_80031654: /* 80031654 0002D2B4 7C 64 1B 78 */ mr r4, r3 /* 80031658 0002D2B8 7F E3 FB 78 */ mr r3, r31 /* 8003165C 0002D2BC 48 01 C9 E9 */ bl func_8004E044 /* 80031660 0002D2C0 2C 03 00 00 */ cmpwi r3, 0 /* 80031664 0002D2C4 41 82 00 14 */ beq lbl_80031678 /* 80031668 0002D2C8 38 00 00 01 */ li r0, 1 /* 8003166C 0002D2CC B0 1E 00 00 */ sth r0, 0(r30) /* 80031670 0002D2D0 90 1E 00 04 */ stw r0, 4(r30) /* 80031674 0002D2D4 48 00 00 14 */ b lbl_80031688 lbl_80031678: /* 80031678 0002D2D8 38 60 00 01 */ li r3, 1 /* 8003167C 0002D2DC 38 00 00 00 */ li r0, 0 /* 80031680 0002D2E0 B0 7E 00 00 */ sth r3, 0(r30) /* 80031684 0002D2E4 90 1E 00 04 */ stw r0, 4(r30) lbl_80031688: /* 80031688 0002D2E8 7F 83 E3 78 */ mr r3, r28 /* 8003168C 0002D2EC 48 1A 98 19 */ bl func_801DAEA4 /* 80031690 0002D2F0 48 00 0B 10 */ b lbl_800321A0 /* 80031694 0002D2F4 A8 9D 00 08 */ lha r4, 8(r29) /* 80031698 0002D2F8 38 60 00 0A */ li r3, 0xa /* 8003169C 0002D2FC 80 1F 00 50 */ lwz r0, 0x50(r31) /* 800316A0 0002D300 2C 04 00 01 */ cmpwi r4, 1 /* 800316A4 0002D304 90 61 00 40 */ stw r3, 0x40(r1) /* 800316A8 0002D308 90 01 00 44 */ stw r0, 0x44(r1) /* 800316AC 0002D30C 40 82 00 0C */ bne lbl_800316B8 /* 800316B0 0002D310 80 7D 00 0C */ lwz r3, 0xc(r29) /* 800316B4 0002D314 48 00 00 28 */ b lbl_800316DC lbl_800316B8: /* 800316B8 0002D318 2C 04 00 02 */ cmpwi r4, 2 /* 800316BC 0002D31C 40 82 00 18 */ bne lbl_800316D4 /* 800316C0 0002D320 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 800316C4 0002D324 FC 00 00 1E */ fctiwz f0, f0 /* 800316C8 0002D328 D8 01 00 90 */ stfd f0, 0x90(r1) /* 800316CC 0002D32C 80 61 00 94 */ lwz r3, 0x94(r1) /* 800316D0 0002D330 48 00 00 0C */ b lbl_800316DC lbl_800316D4: /* 800316D4 0002D334 38 7D 00 08 */ addi r3, r29, 8 /* 800316D8 0002D338 48 1F C6 5D */ bl func_8022DD34 lbl_800316DC: /* 800316DC 0002D33C A8 1D 00 10 */ lha r0, 0x10(r29) /* 800316E0 0002D340 90 61 00 48 */ stw r3, 0x48(r1) /* 800316E4 0002D344 2C 00 00 01 */ cmpwi r0, 1 /* 800316E8 0002D348 40 82 00 0C */ bne lbl_800316F4 /* 800316EC 0002D34C 80 7D 00 14 */ lwz r3, 0x14(r29) /* 800316F0 0002D350 48 00 00 28 */ b lbl_80031718 lbl_800316F4: /* 800316F4 0002D354 2C 00 00 02 */ cmpwi r0, 2 /* 800316F8 0002D358 40 82 00 18 */ bne lbl_80031710 /* 800316FC 0002D35C C0 1D 00 14 */ lfs f0, 0x14(r29) /* 80031700 0002D360 FC 00 00 1E */ fctiwz f0, f0 /* 80031704 0002D364 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031708 0002D368 80 61 00 94 */ lwz r3, 0x94(r1) /* 8003170C 0002D36C 48 00 00 0C */ b lbl_80031718 lbl_80031710: /* 80031710 0002D370 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031714 0002D374 48 1F C6 21 */ bl func_8022DD34 lbl_80031718: /* 80031718 0002D378 81 0D 97 00 */ lwz r8, lbl_8063E9C0-_SDA_BASE_(r13) /* 8003171C 0002D37C 90 61 00 4C */ stw r3, 0x4c(r1) /* 80031720 0002D380 80 E8 00 08 */ lwz r7, 8(r8) /* 80031724 0002D384 80 88 00 00 */ lwz r4, 0(r8) /* 80031728 0002D388 38 C7 00 01 */ addi r6, r7, 1 /* 8003172C 0002D38C 80 08 00 04 */ lwz r0, 4(r8) /* 80031730 0002D390 6C 85 80 00 */ xoris r5, r4, 0x8000 /* 80031734 0002D394 7C 84 30 50 */ subf r4, r4, r6 /* 80031738 0002D398 7C 84 28 14 */ addc r4, r4, r5 /* 8003173C 0002D39C 7C 84 21 10 */ subfe r4, r4, r4 /* 80031740 0002D3A0 7C C6 20 78 */ andc r6, r6, r4 /* 80031744 0002D3A4 7C 06 00 00 */ cmpw r6, r0 /* 80031748 0002D3A8 41 82 00 50 */ beq lbl_80031798 /* 8003174C 0002D3AC 80 A8 00 0C */ lwz r5, 0xc(r8) /* 80031750 0002D3B0 54 E0 28 34 */ slwi r0, r7, 5 /* 80031754 0002D3B4 80 81 00 40 */ lwz r4, 0x40(r1) /* 80031758 0002D3B8 7C A5 02 14 */ add r5, r5, r0 /* 8003175C 0002D3BC 80 01 00 44 */ lwz r0, 0x44(r1) /* 80031760 0002D3C0 90 85 00 00 */ stw r4, 0(r5) /* 80031764 0002D3C4 80 81 00 48 */ lwz r4, 0x48(r1) /* 80031768 0002D3C8 90 05 00 04 */ stw r0, 4(r5) /* 8003176C 0002D3CC 80 01 00 50 */ lwz r0, 0x50(r1) /* 80031770 0002D3D0 90 85 00 08 */ stw r4, 8(r5) /* 80031774 0002D3D4 80 81 00 54 */ lwz r4, 0x54(r1) /* 80031778 0002D3D8 90 65 00 0C */ stw r3, 0xc(r5) /* 8003177C 0002D3DC 80 61 00 58 */ lwz r3, 0x58(r1) /* 80031780 0002D3E0 90 05 00 10 */ stw r0, 0x10(r5) /* 80031784 0002D3E4 80 01 00 5C */ lwz r0, 0x5c(r1) /* 80031788 0002D3E8 90 85 00 14 */ stw r4, 0x14(r5) /* 8003178C 0002D3EC 90 65 00 18 */ stw r3, 0x18(r5) /* 80031790 0002D3F0 90 05 00 1C */ stw r0, 0x1c(r5) /* 80031794 0002D3F4 90 C8 00 08 */ stw r6, 8(r8) lbl_80031798: /* 80031798 0002D3F8 80 7F 00 34 */ lwz r3, 0x34(r31) /* 8003179C 0002D3FC 38 00 00 01 */ li r0, 1 /* 800317A0 0002D400 60 63 00 20 */ ori r3, r3, 0x20 /* 800317A4 0002D404 90 7F 00 34 */ stw r3, 0x34(r31) /* 800317A8 0002D408 B0 1E 00 00 */ sth r0, 0(r30) /* 800317AC 0002D40C 90 1E 00 04 */ stw r0, 4(r30) /* 800317B0 0002D410 48 00 09 F0 */ b lbl_800321A0 /* 800317B4 0002D414 80 1F 00 34 */ lwz r0, 0x34(r31) /* 800317B8 0002D418 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 800317BC 0002D41C 41 82 00 14 */ beq lbl_800317D0 /* 800317C0 0002D420 38 00 00 01 */ li r0, 1 /* 800317C4 0002D424 B0 1E 00 00 */ sth r0, 0(r30) /* 800317C8 0002D428 90 1E 00 04 */ stw r0, 4(r30) /* 800317CC 0002D42C 48 00 09 D4 */ b lbl_800321A0 lbl_800317D0: /* 800317D0 0002D430 38 60 00 01 */ li r3, 1 /* 800317D4 0002D434 38 00 00 00 */ li r0, 0 /* 800317D8 0002D438 B0 7E 00 00 */ sth r3, 0(r30) /* 800317DC 0002D43C 90 1E 00 04 */ stw r0, 4(r30) /* 800317E0 0002D440 48 00 09 C0 */ b lbl_800321A0 /* 800317E4 0002D444 38 60 00 01 */ li r3, 1 /* 800317E8 0002D448 38 00 00 00 */ li r0, 0 /* 800317EC 0002D44C B0 7E 00 00 */ sth r3, 0(r30) /* 800317F0 0002D450 90 1E 00 04 */ stw r0, 4(r30) /* 800317F4 0002D454 A8 1D 00 08 */ lha r0, 8(r29) /* 800317F8 0002D458 2C 80 00 01 */ cmpwi cr1, r0, 1 /* 800317FC 0002D45C 40 86 09 A4 */ bne cr1, lbl_800321A0 /* 80031800 0002D460 83 8D 96 F0 */ lwz r28, lbl_8063E9B0-_SDA_BASE_(r13) /* 80031804 0002D464 2C 1C 00 00 */ cmpwi r28, 0 /* 80031808 0002D468 41 82 09 98 */ beq lbl_800321A0 /* 8003180C 0002D46C 40 86 00 0C */ bne cr1, lbl_80031818 /* 80031810 0002D470 83 BD 00 0C */ lwz r29, 0xc(r29) /* 80031814 0002D474 48 00 00 2C */ b lbl_80031840 lbl_80031818: /* 80031818 0002D478 2C 00 00 02 */ cmpwi r0, 2 /* 8003181C 0002D47C 40 82 00 18 */ bne lbl_80031834 /* 80031820 0002D480 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 80031824 0002D484 FC 00 00 1E */ fctiwz f0, f0 /* 80031828 0002D488 D8 01 00 90 */ stfd f0, 0x90(r1) /* 8003182C 0002D48C 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031830 0002D490 48 00 00 0C */ b lbl_8003183C lbl_80031834: /* 80031834 0002D494 38 7D 00 08 */ addi r3, r29, 8 /* 80031838 0002D498 48 1F C4 FD */ bl func_8022DD34 lbl_8003183C: /* 8003183C 0002D49C 7C 7D 1B 78 */ mr r29, r3 lbl_80031840: /* 80031840 0002D4A0 7F 83 E3 78 */ mr r3, r28 /* 80031844 0002D4A4 4B FF 3B 25 */ bl func_80025368 /* 80031848 0002D4A8 7C 64 1B 78 */ mr r4, r3 /* 8003184C 0002D4AC 7F E3 FB 78 */ mr r3, r31 /* 80031850 0002D4B0 7F A5 EB 78 */ mr r5, r29 /* 80031854 0002D4B4 38 C0 00 00 */ li r6, 0 /* 80031858 0002D4B8 48 01 C9 DD */ bl func_8004E234 /* 8003185C 0002D4BC 2C 03 00 00 */ cmpwi r3, 0 /* 80031860 0002D4C0 41 82 09 40 */ beq lbl_800321A0 /* 80031864 0002D4C4 38 00 00 01 */ li r0, 1 /* 80031868 0002D4C8 B0 1E 00 00 */ sth r0, 0(r30) /* 8003186C 0002D4CC 90 1E 00 04 */ stw r0, 4(r30) /* 80031870 0002D4D0 48 00 09 30 */ b lbl_800321A0 /* 80031874 0002D4D4 38 60 00 01 */ li r3, 1 /* 80031878 0002D4D8 38 00 00 00 */ li r0, 0 /* 8003187C 0002D4DC B0 7E 00 00 */ sth r3, 0(r30) /* 80031880 0002D4E0 90 1E 00 04 */ stw r0, 4(r30) /* 80031884 0002D4E4 A8 7D 00 08 */ lha r3, 8(r29) /* 80031888 0002D4E8 2C 83 00 01 */ cmpwi cr1, r3, 1 /* 8003188C 0002D4EC 40 86 09 14 */ bne cr1, lbl_800321A0 /* 80031890 0002D4F0 80 0D 96 F0 */ lwz r0, lbl_8063E9B0-_SDA_BASE_(r13) /* 80031894 0002D4F4 2C 00 00 00 */ cmpwi r0, 0 /* 80031898 0002D4F8 41 82 09 08 */ beq lbl_800321A0 /* 8003189C 0002D4FC 40 86 00 0C */ bne cr1, lbl_800318A8 /* 800318A0 0002D500 83 9D 00 0C */ lwz r28, 0xc(r29) /* 800318A4 0002D504 48 00 00 2C */ b lbl_800318D0 lbl_800318A8: /* 800318A8 0002D508 2C 03 00 02 */ cmpwi r3, 2 /* 800318AC 0002D50C 40 82 00 18 */ bne lbl_800318C4 /* 800318B0 0002D510 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 800318B4 0002D514 FC 00 00 1E */ fctiwz f0, f0 /* 800318B8 0002D518 D8 01 00 90 */ stfd f0, 0x90(r1) /* 800318BC 0002D51C 80 61 00 94 */ lwz r3, 0x94(r1) /* 800318C0 0002D520 48 00 00 0C */ b lbl_800318CC lbl_800318C4: /* 800318C4 0002D524 38 7D 00 08 */ addi r3, r29, 8 /* 800318C8 0002D528 48 1F C4 6D */ bl func_8022DD34 lbl_800318CC: /* 800318CC 0002D52C 7C 7C 1B 78 */ mr r28, r3 lbl_800318D0: /* 800318D0 0002D530 A8 1D 00 10 */ lha r0, 0x10(r29) /* 800318D4 0002D534 2C 00 00 01 */ cmpwi r0, 1 /* 800318D8 0002D538 40 82 00 0C */ bne lbl_800318E4 /* 800318DC 0002D53C 80 BD 00 14 */ lwz r5, 0x14(r29) /* 800318E0 0002D540 48 00 00 2C */ b lbl_8003190C lbl_800318E4: /* 800318E4 0002D544 2C 00 00 02 */ cmpwi r0, 2 /* 800318E8 0002D548 40 82 00 18 */ bne lbl_80031900 /* 800318EC 0002D54C C0 1D 00 14 */ lfs f0, 0x14(r29) /* 800318F0 0002D550 FC 00 00 1E */ fctiwz f0, f0 /* 800318F4 0002D554 D8 01 00 90 */ stfd f0, 0x90(r1) /* 800318F8 0002D558 80 61 00 94 */ lwz r3, 0x94(r1) /* 800318FC 0002D55C 48 00 00 0C */ b lbl_80031908 lbl_80031900: /* 80031900 0002D560 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031904 0002D564 48 1F C4 31 */ bl func_8022DD34 lbl_80031908: /* 80031908 0002D568 7C 65 1B 78 */ mr r5, r3 lbl_8003190C: /* 8003190C 0002D56C 7F E3 FB 78 */ mr r3, r31 /* 80031910 0002D570 7F 84 E3 78 */ mr r4, r28 /* 80031914 0002D574 38 C0 00 00 */ li r6, 0 /* 80031918 0002D578 48 01 C9 1D */ bl func_8004E234 /* 8003191C 0002D57C 2C 03 00 00 */ cmpwi r3, 0 /* 80031920 0002D580 41 82 08 80 */ beq lbl_800321A0 /* 80031924 0002D584 38 00 00 01 */ li r0, 1 /* 80031928 0002D588 B0 1E 00 00 */ sth r0, 0(r30) /* 8003192C 0002D58C 90 1E 00 04 */ stw r0, 4(r30) /* 80031930 0002D590 48 00 08 70 */ b lbl_800321A0 /* 80031934 0002D594 7F E3 FB 78 */ mr r3, r31 /* 80031938 0002D598 48 01 C6 41 */ bl func_8004DF78 /* 8003193C 0002D59C 48 00 08 64 */ b lbl_800321A0 /* 80031940 0002D5A0 A8 1D 00 08 */ lha r0, 8(r29) /* 80031944 0002D5A4 2C 00 00 04 */ cmpwi r0, 4 /* 80031948 0002D5A8 40 82 00 0C */ bne lbl_80031954 /* 8003194C 0002D5AC 80 BD 00 0C */ lwz r5, 0xc(r29) /* 80031950 0002D5B0 48 00 00 10 */ b lbl_80031960 lbl_80031954: /* 80031954 0002D5B4 38 7D 00 08 */ addi r3, r29, 8 /* 80031958 0002D5B8 4B FF 69 89 */ bl func_800282E0 /* 8003195C 0002D5BC 7C 65 1B 78 */ mr r5, r3 lbl_80031960: /* 80031960 0002D5C0 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80031964 0002D5C4 2C 03 00 00 */ cmpwi r3, 0 /* 80031968 0002D5C8 41 82 08 38 */ beq lbl_800321A0 /* 8003196C 0002D5CC C0 05 00 00 */ lfs f0, 0(r5) /* 80031970 0002D5D0 38 80 00 01 */ li r4, 1 /* 80031974 0002D5D4 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80031978 0002D5D8 C0 05 00 04 */ lfs f0, 4(r5) /* 8003197C 0002D5DC D0 03 00 24 */ stfs f0, 0x24(r3) /* 80031980 0002D5E0 C0 05 00 08 */ lfs f0, 8(r5) /* 80031984 0002D5E4 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80031988 0002D5E8 48 1C 0D 31 */ bl func_801F26B8 /* 8003198C 0002D5EC 48 00 08 14 */ b lbl_800321A0 /* 80031990 0002D5F0 7F E4 FB 78 */ mr r4, r31 /* 80031994 0002D5F4 38 61 00 28 */ addi r3, r1, 0x28 /* 80031998 0002D5F8 48 01 CB 6D */ bl func_8004E504 /* 8003199C 0002D5FC C0 41 00 28 */ lfs f2, 0x28(r1) /* 800319A0 0002D600 38 00 00 04 */ li r0, 4 /* 800319A4 0002D604 C0 21 00 2C */ lfs f1, 0x2c(r1) /* 800319A8 0002D608 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800319AC 0002D60C D0 41 00 34 */ stfs f2, 0x34(r1) /* 800319B0 0002D610 D0 21 00 38 */ stfs f1, 0x38(r1) /* 800319B4 0002D614 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 800319B8 0002D618 80 7A 09 14 */ lwz r3, 0x914(r26) /* 800319BC 0002D61C D0 43 01 38 */ stfs f2, 0x138(r3) /* 800319C0 0002D620 C0 01 00 38 */ lfs f0, 0x38(r1) /* 800319C4 0002D624 D0 03 01 3C */ stfs f0, 0x13c(r3) /* 800319C8 0002D628 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 800319CC 0002D62C D0 03 01 40 */ stfs f0, 0x140(r3) /* 800319D0 0002D630 80 9A 09 14 */ lwz r4, 0x914(r26) /* 800319D4 0002D634 38 64 01 38 */ addi r3, r4, 0x138 /* 800319D8 0002D638 90 64 00 14 */ stw r3, 0x14(r4) /* 800319DC 0002D63C 80 7A 09 14 */ lwz r3, 0x914(r26) /* 800319E0 0002D640 B0 03 00 10 */ sth r0, 0x10(r3) /* 800319E4 0002D644 48 00 07 BC */ b lbl_800321A0 /* 800319E8 0002D648 A8 1D 00 08 */ lha r0, 8(r29) /* 800319EC 0002D64C 2C 00 00 04 */ cmpwi r0, 4 /* 800319F0 0002D650 40 82 00 0C */ bne lbl_800319FC /* 800319F4 0002D654 80 7D 00 0C */ lwz r3, 0xc(r29) /* 800319F8 0002D658 48 00 00 0C */ b lbl_80031A04 lbl_800319FC: /* 800319FC 0002D65C 38 7D 00 08 */ addi r3, r29, 8 /* 80031A00 0002D660 4B FF 68 E1 */ bl func_800282E0 lbl_80031A04: /* 80031A04 0002D664 A8 1D 00 10 */ lha r0, 0x10(r29) /* 80031A08 0002D668 7C 7C 1B 78 */ mr r28, r3 /* 80031A0C 0002D66C 2C 00 00 01 */ cmpwi r0, 1 /* 80031A10 0002D670 40 82 00 28 */ bne lbl_80031A38 /* 80031A14 0002D674 80 7D 00 14 */ lwz r3, 0x14(r29) /* 80031A18 0002D678 3C 00 43 30 */ lis r0, 0x4330 /* 80031A1C 0002D67C 90 01 00 90 */ stw r0, 0x90(r1) /* 80031A20 0002D680 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80031A24 0002D684 C8 22 81 A0 */ lfd f1, lbl_806407A0-_SDA2_BASE_(r2) /* 80031A28 0002D688 90 01 00 94 */ stw r0, 0x94(r1) /* 80031A2C 0002D68C C8 01 00 90 */ lfd f0, 0x90(r1) /* 80031A30 0002D690 EF E0 08 28 */ fsubs f31, f0, f1 /* 80031A34 0002D694 48 00 00 20 */ b lbl_80031A54 lbl_80031A38: /* 80031A38 0002D698 2C 00 00 02 */ cmpwi r0, 2 /* 80031A3C 0002D69C 40 82 00 0C */ bne lbl_80031A48 /* 80031A40 0002D6A0 C0 3D 00 14 */ lfs f1, 0x14(r29) /* 80031A44 0002D6A4 48 00 00 0C */ b lbl_80031A50 lbl_80031A48: /* 80031A48 0002D6A8 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031A4C 0002D6AC 48 1F C3 2D */ bl func_8022DD78 lbl_80031A50: /* 80031A50 0002D6B0 FF E0 08 90 */ fmr f31, f1 lbl_80031A54: /* 80031A54 0002D6B4 A8 1D 00 18 */ lha r0, 0x18(r29) /* 80031A58 0002D6B8 2C 00 00 01 */ cmpwi r0, 1 /* 80031A5C 0002D6BC 40 82 00 0C */ bne lbl_80031A68 /* 80031A60 0002D6C0 80 BD 00 1C */ lwz r5, 0x1c(r29) /* 80031A64 0002D6C4 48 00 00 2C */ b lbl_80031A90 lbl_80031A68: /* 80031A68 0002D6C8 2C 00 00 02 */ cmpwi r0, 2 /* 80031A6C 0002D6CC 40 82 00 18 */ bne lbl_80031A84 /* 80031A70 0002D6D0 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 80031A74 0002D6D4 FC 00 00 1E */ fctiwz f0, f0 /* 80031A78 0002D6D8 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031A7C 0002D6DC 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031A80 0002D6E0 48 00 00 0C */ b lbl_80031A8C lbl_80031A84: /* 80031A84 0002D6E4 38 7D 00 18 */ addi r3, r29, 0x18 /* 80031A88 0002D6E8 48 1F C2 AD */ bl func_8022DD34 lbl_80031A8C: /* 80031A8C 0002D6EC 7C 65 1B 78 */ mr r5, r3 lbl_80031A90: /* 80031A90 0002D6F0 FC 20 F8 90 */ fmr f1, f31 /* 80031A94 0002D6F4 7F E3 FB 78 */ mr r3, r31 /* 80031A98 0002D6F8 7F 84 E3 78 */ mr r4, r28 /* 80031A9C 0002D6FC 48 01 CA A5 */ bl func_8004E540 /* 80031AA0 0002D700 48 00 07 00 */ b lbl_800321A0 /* 80031AA4 0002D704 A8 1D 00 08 */ lha r0, 8(r29) /* 80031AA8 0002D708 2C 00 00 04 */ cmpwi r0, 4 /* 80031AAC 0002D70C 40 82 00 0C */ bne lbl_80031AB8 /* 80031AB0 0002D710 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80031AB4 0002D714 48 00 00 0C */ b lbl_80031AC0 lbl_80031AB8: /* 80031AB8 0002D718 38 7D 00 08 */ addi r3, r29, 8 /* 80031ABC 0002D71C 4B FF 68 25 */ bl func_800282E0 lbl_80031AC0: /* 80031AC0 0002D720 C0 23 00 00 */ lfs f1, 0(r3) /* 80031AC4 0002D724 C0 02 81 88 */ lfs f0, lbl_80640788-_SDA2_BASE_(r2) /* 80031AC8 0002D728 D0 21 00 34 */ stfs f1, 0x34(r1) /* 80031ACC 0002D72C EC 40 00 72 */ fmuls f2, f0, f1 /* 80031AD0 0002D730 C0 23 00 04 */ lfs f1, 4(r3) /* 80031AD4 0002D734 D0 21 00 38 */ stfs f1, 0x38(r1) /* 80031AD8 0002D738 EC 20 00 72 */ fmuls f1, f0, f1 /* 80031ADC 0002D73C C0 63 00 08 */ lfs f3, 8(r3) /* 80031AE0 0002D740 EC 00 00 F2 */ fmuls f0, f0, f3 /* 80031AE4 0002D744 D0 41 00 34 */ stfs f2, 0x34(r1) /* 80031AE8 0002D748 D0 21 00 38 */ stfs f1, 0x38(r1) /* 80031AEC 0002D74C D0 01 00 3C */ stfs f0, 0x3c(r1) /* 80031AF0 0002D750 80 1F 00 40 */ lwz r0, 0x40(r31) /* 80031AF4 0002D754 2C 00 00 00 */ cmpwi r0, 0 /* 80031AF8 0002D758 41 82 06 A8 */ beq lbl_800321A0 /* 80031AFC 0002D75C 38 61 00 18 */ addi r3, r1, 0x18 /* 80031B00 0002D760 38 81 00 34 */ addi r4, r1, 0x34 /* 80031B04 0002D764 48 1F 1B BD */ bl func_802236C0 /* 80031B08 0002D768 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80031B0C 0002D76C 38 80 00 01 */ li r4, 1 /* 80031B10 0002D770 C0 01 00 18 */ lfs f0, 0x18(r1) /* 80031B14 0002D774 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80031B18 0002D778 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 80031B1C 0002D77C D0 03 00 30 */ stfs f0, 0x30(r3) /* 80031B20 0002D780 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80031B24 0002D784 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80031B28 0002D788 C0 01 00 24 */ lfs f0, 0x24(r1) /* 80031B2C 0002D78C D0 03 00 38 */ stfs f0, 0x38(r3) /* 80031B30 0002D790 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80031B34 0002D794 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80031B38 0002D798 B0 03 00 10 */ sth r0, 0x10(r3) /* 80031B3C 0002D79C 48 1C 0B 7D */ bl func_801F26B8 /* 80031B40 0002D7A0 48 00 06 60 */ b lbl_800321A0 /* 80031B44 0002D7A4 A8 1D 00 08 */ lha r0, 8(r29) /* 80031B48 0002D7A8 2C 00 00 04 */ cmpwi r0, 4 /* 80031B4C 0002D7AC 40 82 00 0C */ bne lbl_80031B58 /* 80031B50 0002D7B0 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80031B54 0002D7B4 48 00 00 0C */ b lbl_80031B60 lbl_80031B58: /* 80031B58 0002D7B8 38 7D 00 08 */ addi r3, r29, 8 /* 80031B5C 0002D7BC 4B FF 67 85 */ bl func_800282E0 lbl_80031B60: /* 80031B60 0002D7C0 C0 23 00 00 */ lfs f1, 0(r3) /* 80031B64 0002D7C4 C0 02 81 88 */ lfs f0, lbl_80640788-_SDA2_BASE_(r2) /* 80031B68 0002D7C8 D0 21 00 34 */ stfs f1, 0x34(r1) /* 80031B6C 0002D7CC EC 40 00 72 */ fmuls f2, f0, f1 /* 80031B70 0002D7D0 C0 23 00 04 */ lfs f1, 4(r3) /* 80031B74 0002D7D4 D0 21 00 38 */ stfs f1, 0x38(r1) /* 80031B78 0002D7D8 EC 20 00 72 */ fmuls f1, f0, f1 /* 80031B7C 0002D7DC C0 63 00 08 */ lfs f3, 8(r3) /* 80031B80 0002D7E0 EC 00 00 F2 */ fmuls f0, f0, f3 /* 80031B84 0002D7E4 D0 41 00 34 */ stfs f2, 0x34(r1) /* 80031B88 0002D7E8 D0 21 00 38 */ stfs f1, 0x38(r1) /* 80031B8C 0002D7EC D0 01 00 3C */ stfs f0, 0x3c(r1) /* 80031B90 0002D7F0 80 1F 00 40 */ lwz r0, 0x40(r31) /* 80031B94 0002D7F4 2C 00 00 00 */ cmpwi r0, 0 /* 80031B98 0002D7F8 41 82 06 08 */ beq lbl_800321A0 /* 80031B9C 0002D7FC 38 61 00 60 */ addi r3, r1, 0x60 /* 80031BA0 0002D800 38 81 00 34 */ addi r4, r1, 0x34 /* 80031BA4 0002D804 38 A0 00 05 */ li r5, 5 /* 80031BA8 0002D808 48 1F 18 21 */ bl func_802233C8 /* 80031BAC 0002D80C 38 61 00 08 */ addi r3, r1, 8 /* 80031BB0 0002D810 38 81 00 60 */ addi r4, r1, 0x60 /* 80031BB4 0002D814 48 24 B6 11 */ bl func_8027D1C4 /* 80031BB8 0002D818 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80031BBC 0002D81C 38 80 00 01 */ li r4, 1 /* 80031BC0 0002D820 C0 01 00 08 */ lfs f0, 8(r1) /* 80031BC4 0002D824 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80031BC8 0002D828 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80031BCC 0002D82C D0 03 00 30 */ stfs f0, 0x30(r3) /* 80031BD0 0002D830 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80031BD4 0002D834 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80031BD8 0002D838 C0 01 00 14 */ lfs f0, 0x14(r1) /* 80031BDC 0002D83C D0 03 00 38 */ stfs f0, 0x38(r3) /* 80031BE0 0002D840 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80031BE4 0002D844 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80031BE8 0002D848 B0 03 00 10 */ sth r0, 0x10(r3) /* 80031BEC 0002D84C 48 1C 0A CD */ bl func_801F26B8 /* 80031BF0 0002D850 48 00 05 B0 */ b lbl_800321A0 /* 80031BF4 0002D854 A8 1D 00 08 */ lha r0, 8(r29) /* 80031BF8 0002D858 2C 00 00 04 */ cmpwi r0, 4 /* 80031BFC 0002D85C 40 82 00 0C */ bne lbl_80031C08 /* 80031C00 0002D860 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80031C04 0002D864 48 00 00 0C */ b lbl_80031C10 lbl_80031C08: /* 80031C08 0002D868 38 7D 00 08 */ addi r3, r29, 8 /* 80031C0C 0002D86C 4B FF 66 D5 */ bl func_800282E0 lbl_80031C10: /* 80031C10 0002D870 80 9F 00 40 */ lwz r4, 0x40(r31) /* 80031C14 0002D874 2C 04 00 00 */ cmpwi r4, 0 /* 80031C18 0002D878 41 82 05 88 */ beq lbl_800321A0 /* 80031C1C 0002D87C C0 03 00 00 */ lfs f0, 0(r3) /* 80031C20 0002D880 C0 42 81 8C */ lfs f2, lbl_8064078C-_SDA2_BASE_(r2) /* 80031C24 0002D884 D0 04 00 48 */ stfs f0, 0x48(r4) /* 80031C28 0002D888 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80031C2C 0002D88C C0 03 00 04 */ lfs f0, 4(r3) /* 80031C30 0002D890 D0 04 00 4C */ stfs f0, 0x4c(r4) /* 80031C34 0002D894 C0 03 00 08 */ lfs f0, 8(r3) /* 80031C38 0002D898 D0 04 00 50 */ stfs f0, 0x50(r4) /* 80031C3C 0002D89C 40 80 00 2C */ bge lbl_80031C68 /* 80031C40 0002D8A0 C0 24 00 48 */ lfs f1, 0x48(r4) /* 80031C44 0002D8A4 C0 62 81 90 */ lfs f3, lbl_80640790-_SDA2_BASE_(r2) /* 80031C48 0002D8A8 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80031C4C 0002D8AC 40 81 00 1C */ ble lbl_80031C68 /* 80031C50 0002D8B0 C0 02 81 94 */ lfs f0, lbl_80640794-_SDA2_BASE_(r2) /* 80031C54 0002D8B4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80031C58 0002D8B8 40 80 00 08 */ bge lbl_80031C60 /* 80031C5C 0002D8BC 48 00 00 08 */ b lbl_80031C64 lbl_80031C60: /* 80031C60 0002D8C0 FC 60 10 90 */ fmr f3, f2 lbl_80031C64: /* 80031C64 0002D8C4 D0 64 00 48 */ stfs f3, 0x48(r4) lbl_80031C68: /* 80031C68 0002D8C8 C0 44 00 4C */ lfs f2, 0x4c(r4) /* 80031C6C 0002D8CC C0 22 81 8C */ lfs f1, lbl_8064078C-_SDA2_BASE_(r2) /* 80031C70 0002D8D0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80031C74 0002D8D4 40 80 00 28 */ bge lbl_80031C9C /* 80031C78 0002D8D8 C0 62 81 90 */ lfs f3, lbl_80640790-_SDA2_BASE_(r2) /* 80031C7C 0002D8DC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80031C80 0002D8E0 40 81 00 1C */ ble lbl_80031C9C /* 80031C84 0002D8E4 C0 02 81 94 */ lfs f0, lbl_80640794-_SDA2_BASE_(r2) /* 80031C88 0002D8E8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80031C8C 0002D8EC 40 80 00 08 */ bge lbl_80031C94 /* 80031C90 0002D8F0 48 00 00 08 */ b lbl_80031C98 lbl_80031C94: /* 80031C94 0002D8F4 FC 60 08 90 */ fmr f3, f1 lbl_80031C98: /* 80031C98 0002D8F8 D0 64 00 4C */ stfs f3, 0x4c(r4) lbl_80031C9C: /* 80031C9C 0002D8FC C0 44 00 50 */ lfs f2, 0x50(r4) /* 80031CA0 0002D900 C0 22 81 8C */ lfs f1, lbl_8064078C-_SDA2_BASE_(r2) /* 80031CA4 0002D904 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80031CA8 0002D908 40 80 00 28 */ bge lbl_80031CD0 /* 80031CAC 0002D90C C0 62 81 90 */ lfs f3, lbl_80640790-_SDA2_BASE_(r2) /* 80031CB0 0002D910 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80031CB4 0002D914 40 81 00 1C */ ble lbl_80031CD0 /* 80031CB8 0002D918 C0 02 81 94 */ lfs f0, lbl_80640794-_SDA2_BASE_(r2) /* 80031CBC 0002D91C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80031CC0 0002D920 40 80 00 08 */ bge lbl_80031CC8 /* 80031CC4 0002D924 48 00 00 08 */ b lbl_80031CCC lbl_80031CC8: /* 80031CC8 0002D928 FC 60 08 90 */ fmr f3, f1 lbl_80031CCC: /* 80031CCC 0002D92C D0 64 00 50 */ stfs f3, 0x50(r4) lbl_80031CD0: /* 80031CD0 0002D930 7C 83 23 78 */ mr r3, r4 /* 80031CD4 0002D934 38 80 00 01 */ li r4, 1 /* 80031CD8 0002D938 48 1C 09 E1 */ bl func_801F26B8 /* 80031CDC 0002D93C 48 00 04 C4 */ b lbl_800321A0 /* 80031CE0 0002D940 A8 1D 00 08 */ lha r0, 8(r29) /* 80031CE4 0002D944 2C 00 00 01 */ cmpwi r0, 1 /* 80031CE8 0002D948 40 82 00 0C */ bne lbl_80031CF4 /* 80031CEC 0002D94C 80 9D 00 0C */ lwz r4, 0xc(r29) /* 80031CF0 0002D950 48 00 00 2C */ b lbl_80031D1C lbl_80031CF4: /* 80031CF4 0002D954 2C 00 00 02 */ cmpwi r0, 2 /* 80031CF8 0002D958 40 82 00 18 */ bne lbl_80031D10 /* 80031CFC 0002D95C C0 1D 00 0C */ lfs f0, 0xc(r29) /* 80031D00 0002D960 FC 00 00 1E */ fctiwz f0, f0 /* 80031D04 0002D964 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031D08 0002D968 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031D0C 0002D96C 48 00 00 0C */ b lbl_80031D18 lbl_80031D10: /* 80031D10 0002D970 38 7D 00 08 */ addi r3, r29, 8 /* 80031D14 0002D974 48 1F C0 21 */ bl func_8022DD34 lbl_80031D18: /* 80031D18 0002D978 7C 64 1B 78 */ mr r4, r3 lbl_80031D1C: /* 80031D1C 0002D97C C0 22 81 98 */ lfs f1, lbl_80640798-_SDA2_BASE_(r2) /* 80031D20 0002D980 7F E3 FB 78 */ mr r3, r31 /* 80031D24 0002D984 48 01 C6 31 */ bl func_8004E354 /* 80031D28 0002D988 48 00 04 78 */ b lbl_800321A0 /* 80031D2C 0002D98C A8 1D 00 08 */ lha r0, 8(r29) /* 80031D30 0002D990 2C 00 00 01 */ cmpwi r0, 1 /* 80031D34 0002D994 40 82 00 0C */ bne lbl_80031D40 /* 80031D38 0002D998 83 9D 00 0C */ lwz r28, 0xc(r29) /* 80031D3C 0002D99C 48 00 00 2C */ b lbl_80031D68 lbl_80031D40: /* 80031D40 0002D9A0 2C 00 00 02 */ cmpwi r0, 2 /* 80031D44 0002D9A4 40 82 00 18 */ bne lbl_80031D5C /* 80031D48 0002D9A8 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 80031D4C 0002D9AC FC 00 00 1E */ fctiwz f0, f0 /* 80031D50 0002D9B0 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031D54 0002D9B4 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031D58 0002D9B8 48 00 00 0C */ b lbl_80031D64 lbl_80031D5C: /* 80031D5C 0002D9BC 38 7D 00 08 */ addi r3, r29, 8 /* 80031D60 0002D9C0 48 1F BF D5 */ bl func_8022DD34 lbl_80031D64: /* 80031D64 0002D9C4 7C 7C 1B 78 */ mr r28, r3 lbl_80031D68: /* 80031D68 0002D9C8 A8 1D 00 10 */ lha r0, 0x10(r29) /* 80031D6C 0002D9CC 2C 00 00 01 */ cmpwi r0, 1 /* 80031D70 0002D9D0 40 82 00 28 */ bne lbl_80031D98 /* 80031D74 0002D9D4 80 7D 00 14 */ lwz r3, 0x14(r29) /* 80031D78 0002D9D8 3C 00 43 30 */ lis r0, 0x4330 /* 80031D7C 0002D9DC 90 01 00 90 */ stw r0, 0x90(r1) /* 80031D80 0002D9E0 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80031D84 0002D9E4 C8 22 81 A0 */ lfd f1, lbl_806407A0-_SDA2_BASE_(r2) /* 80031D88 0002D9E8 90 01 00 94 */ stw r0, 0x94(r1) /* 80031D8C 0002D9EC C8 01 00 90 */ lfd f0, 0x90(r1) /* 80031D90 0002D9F0 EC 20 08 28 */ fsubs f1, f0, f1 /* 80031D94 0002D9F4 48 00 00 1C */ b lbl_80031DB0 lbl_80031D98: /* 80031D98 0002D9F8 2C 00 00 02 */ cmpwi r0, 2 /* 80031D9C 0002D9FC 40 82 00 0C */ bne lbl_80031DA8 /* 80031DA0 0002DA00 C0 3D 00 14 */ lfs f1, 0x14(r29) /* 80031DA4 0002DA04 48 00 00 0C */ b lbl_80031DB0 lbl_80031DA8: /* 80031DA8 0002DA08 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031DAC 0002DA0C 48 1F BF CD */ bl func_8022DD78 lbl_80031DB0: /* 80031DB0 0002DA10 7F E3 FB 78 */ mr r3, r31 /* 80031DB4 0002DA14 7F 84 E3 78 */ mr r4, r28 /* 80031DB8 0002DA18 48 01 C5 9D */ bl func_8004E354 /* 80031DBC 0002DA1C 48 00 03 E4 */ b lbl_800321A0 /* 80031DC0 0002DA20 A8 1D 00 08 */ lha r0, 8(r29) /* 80031DC4 0002DA24 2C 00 00 21 */ cmpwi r0, 0x21 /* 80031DC8 0002DA28 40 82 03 D8 */ bne lbl_800321A0 /* 80031DCC 0002DA2C 83 DD 00 0C */ lwz r30, 0xc(r29) /* 80031DD0 0002DA30 2C 1E 00 00 */ cmpwi r30, 0 /* 80031DD4 0002DA34 41 82 03 CC */ beq lbl_800321A0 /* 80031DD8 0002DA38 A8 1D 00 10 */ lha r0, 0x10(r29) /* 80031DDC 0002DA3C 2C 00 00 01 */ cmpwi r0, 1 /* 80031DE0 0002DA40 40 82 00 0C */ bne lbl_80031DEC /* 80031DE4 0002DA44 83 9D 00 14 */ lwz r28, 0x14(r29) /* 80031DE8 0002DA48 48 00 00 2C */ b lbl_80031E14 lbl_80031DEC: /* 80031DEC 0002DA4C 2C 00 00 02 */ cmpwi r0, 2 /* 80031DF0 0002DA50 40 82 00 18 */ bne lbl_80031E08 /* 80031DF4 0002DA54 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 80031DF8 0002DA58 FC 00 00 1E */ fctiwz f0, f0 /* 80031DFC 0002DA5C D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031E00 0002DA60 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031E04 0002DA64 48 00 00 0C */ b lbl_80031E10 lbl_80031E08: /* 80031E08 0002DA68 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031E0C 0002DA6C 48 1F BF 29 */ bl func_8022DD34 lbl_80031E10: /* 80031E10 0002DA70 7C 7C 1B 78 */ mr r28, r3 lbl_80031E14: /* 80031E14 0002DA74 A8 1D 00 18 */ lha r0, 0x18(r29) /* 80031E18 0002DA78 2C 00 00 01 */ cmpwi r0, 1 /* 80031E1C 0002DA7C 40 82 00 0C */ bne lbl_80031E28 /* 80031E20 0002DA80 83 BD 00 1C */ lwz r29, 0x1c(r29) /* 80031E24 0002DA84 48 00 00 2C */ b lbl_80031E50 lbl_80031E28: /* 80031E28 0002DA88 2C 00 00 02 */ cmpwi r0, 2 /* 80031E2C 0002DA8C 40 82 00 18 */ bne lbl_80031E44 /* 80031E30 0002DA90 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 80031E34 0002DA94 FC 00 00 1E */ fctiwz f0, f0 /* 80031E38 0002DA98 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031E3C 0002DA9C 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031E40 0002DAA0 48 00 00 0C */ b lbl_80031E4C lbl_80031E44: /* 80031E44 0002DAA4 38 7D 00 18 */ addi r3, r29, 0x18 /* 80031E48 0002DAA8 48 1F BE ED */ bl func_8022DD34 lbl_80031E4C: /* 80031E4C 0002DAAC 7C 7D 1B 78 */ mr r29, r3 lbl_80031E50: /* 80031E50 0002DAB0 7F C3 F3 78 */ mr r3, r30 /* 80031E54 0002DAB4 7F 84 E3 78 */ mr r4, r28 /* 80031E58 0002DAB8 48 00 7A 95 */ bl func_800398EC /* 80031E5C 0002DABC 7C 64 1B 78 */ mr r4, r3 /* 80031E60 0002DAC0 7F E3 FB 78 */ mr r3, r31 /* 80031E64 0002DAC4 7F A5 EB 78 */ mr r5, r29 /* 80031E68 0002DAC8 48 01 C3 01 */ bl func_8004E168 /* 80031E6C 0002DACC 48 00 03 34 */ b lbl_800321A0 /* 80031E70 0002DAD0 A8 1D 00 08 */ lha r0, 8(r29) /* 80031E74 0002DAD4 2C 00 00 21 */ cmpwi r0, 0x21 /* 80031E78 0002DAD8 40 82 03 28 */ bne lbl_800321A0 /* 80031E7C 0002DADC 83 DD 00 0C */ lwz r30, 0xc(r29) /* 80031E80 0002DAE0 2C 1E 00 00 */ cmpwi r30, 0 /* 80031E84 0002DAE4 41 82 03 1C */ beq lbl_800321A0 /* 80031E88 0002DAE8 A8 1D 00 10 */ lha r0, 0x10(r29) /* 80031E8C 0002DAEC 2C 00 00 01 */ cmpwi r0, 1 /* 80031E90 0002DAF0 40 82 00 0C */ bne lbl_80031E9C /* 80031E94 0002DAF4 83 9D 00 14 */ lwz r28, 0x14(r29) /* 80031E98 0002DAF8 48 00 00 2C */ b lbl_80031EC4 lbl_80031E9C: /* 80031E9C 0002DAFC 2C 00 00 02 */ cmpwi r0, 2 /* 80031EA0 0002DB00 40 82 00 18 */ bne lbl_80031EB8 /* 80031EA4 0002DB04 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 80031EA8 0002DB08 FC 00 00 1E */ fctiwz f0, f0 /* 80031EAC 0002DB0C D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031EB0 0002DB10 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031EB4 0002DB14 48 00 00 0C */ b lbl_80031EC0 lbl_80031EB8: /* 80031EB8 0002DB18 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031EBC 0002DB1C 48 1F BE 79 */ bl func_8022DD34 lbl_80031EC0: /* 80031EC0 0002DB20 7C 7C 1B 78 */ mr r28, r3 lbl_80031EC4: /* 80031EC4 0002DB24 A8 1D 00 18 */ lha r0, 0x18(r29) /* 80031EC8 0002DB28 2C 00 00 01 */ cmpwi r0, 1 /* 80031ECC 0002DB2C 40 82 00 0C */ bne lbl_80031ED8 /* 80031ED0 0002DB30 83 BD 00 1C */ lwz r29, 0x1c(r29) /* 80031ED4 0002DB34 48 00 00 2C */ b lbl_80031F00 lbl_80031ED8: /* 80031ED8 0002DB38 2C 00 00 02 */ cmpwi r0, 2 /* 80031EDC 0002DB3C 40 82 00 18 */ bne lbl_80031EF4 /* 80031EE0 0002DB40 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 80031EE4 0002DB44 FC 00 00 1E */ fctiwz f0, f0 /* 80031EE8 0002DB48 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031EEC 0002DB4C 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031EF0 0002DB50 48 00 00 0C */ b lbl_80031EFC lbl_80031EF4: /* 80031EF4 0002DB54 38 7D 00 18 */ addi r3, r29, 0x18 /* 80031EF8 0002DB58 48 1F BE 3D */ bl func_8022DD34 lbl_80031EFC: /* 80031EFC 0002DB5C 7C 7D 1B 78 */ mr r29, r3 lbl_80031F00: /* 80031F00 0002DB60 7F C3 F3 78 */ mr r3, r30 /* 80031F04 0002DB64 7F 84 E3 78 */ mr r4, r28 /* 80031F08 0002DB68 48 00 7A 75 */ bl func_8003997C /* 80031F0C 0002DB6C 7C 64 1B 78 */ mr r4, r3 /* 80031F10 0002DB70 7F E3 FB 78 */ mr r3, r31 /* 80031F14 0002DB74 7F A5 EB 78 */ mr r5, r29 /* 80031F18 0002DB78 48 01 C2 51 */ bl func_8004E168 /* 80031F1C 0002DB7C 48 00 02 84 */ b lbl_800321A0 /* 80031F20 0002DB80 A8 1D 00 08 */ lha r0, 8(r29) /* 80031F24 0002DB84 2C 00 00 21 */ cmpwi r0, 0x21 /* 80031F28 0002DB88 40 82 00 EC */ bne lbl_80032014 /* 80031F2C 0002DB8C 83 DD 00 0C */ lwz r30, 0xc(r29) /* 80031F30 0002DB90 2C 1E 00 00 */ cmpwi r30, 0 /* 80031F34 0002DB94 41 82 00 E0 */ beq lbl_80032014 /* 80031F38 0002DB98 A8 1D 00 10 */ lha r0, 0x10(r29) /* 80031F3C 0002DB9C 2C 00 00 01 */ cmpwi r0, 1 /* 80031F40 0002DBA0 40 82 00 0C */ bne lbl_80031F4C /* 80031F44 0002DBA4 83 9D 00 14 */ lwz r28, 0x14(r29) /* 80031F48 0002DBA8 48 00 00 2C */ b lbl_80031F74 lbl_80031F4C: /* 80031F4C 0002DBAC 2C 00 00 02 */ cmpwi r0, 2 /* 80031F50 0002DBB0 40 82 00 18 */ bne lbl_80031F68 /* 80031F54 0002DBB4 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 80031F58 0002DBB8 FC 00 00 1E */ fctiwz f0, f0 /* 80031F5C 0002DBBC D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031F60 0002DBC0 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031F64 0002DBC4 48 00 00 0C */ b lbl_80031F70 lbl_80031F68: /* 80031F68 0002DBC8 38 7D 00 10 */ addi r3, r29, 0x10 /* 80031F6C 0002DBCC 48 1F BD C9 */ bl func_8022DD34 lbl_80031F70: /* 80031F70 0002DBD0 7C 7C 1B 78 */ mr r28, r3 lbl_80031F74: /* 80031F74 0002DBD4 A8 1D 00 18 */ lha r0, 0x18(r29) /* 80031F78 0002DBD8 2C 00 00 01 */ cmpwi r0, 1 /* 80031F7C 0002DBDC 40 82 00 0C */ bne lbl_80031F88 /* 80031F80 0002DBE0 80 1D 00 1C */ lwz r0, 0x1c(r29) /* 80031F84 0002DBE4 48 00 00 2C */ b lbl_80031FB0 lbl_80031F88: /* 80031F88 0002DBE8 2C 00 00 02 */ cmpwi r0, 2 /* 80031F8C 0002DBEC 40 82 00 18 */ bne lbl_80031FA4 /* 80031F90 0002DBF0 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 80031F94 0002DBF4 FC 00 00 1E */ fctiwz f0, f0 /* 80031F98 0002DBF8 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031F9C 0002DBFC 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031FA0 0002DC00 48 00 00 0C */ b lbl_80031FAC lbl_80031FA4: /* 80031FA4 0002DC04 38 7D 00 18 */ addi r3, r29, 0x18 /* 80031FA8 0002DC08 48 1F BD 8D */ bl func_8022DD34 lbl_80031FAC: /* 80031FAC 0002DC0C 7C 60 1B 78 */ mr r0, r3 lbl_80031FB0: /* 80031FB0 0002DC10 7F C3 F3 78 */ mr r3, r30 /* 80031FB4 0002DC14 57 84 04 3E */ clrlwi r4, r28, 0x10 /* 80031FB8 0002DC18 54 05 04 3E */ clrlwi r5, r0, 0x10 /* 80031FBC 0002DC1C 48 00 BF 81 */ bl func_8003DF3C /* 80031FC0 0002DC20 2C 03 00 00 */ cmpwi r3, 0 /* 80031FC4 0002DC24 7C 7C 1B 78 */ mr r28, r3 /* 80031FC8 0002DC28 41 82 00 4C */ beq lbl_80032014 /* 80031FCC 0002DC2C A8 1D 00 20 */ lha r0, 0x20(r29) /* 80031FD0 0002DC30 2C 00 00 01 */ cmpwi r0, 1 /* 80031FD4 0002DC34 40 82 00 0C */ bne lbl_80031FE0 /* 80031FD8 0002DC38 80 BD 00 24 */ lwz r5, 0x24(r29) /* 80031FDC 0002DC3C 48 00 00 2C */ b lbl_80032008 lbl_80031FE0: /* 80031FE0 0002DC40 2C 00 00 02 */ cmpwi r0, 2 /* 80031FE4 0002DC44 40 82 00 18 */ bne lbl_80031FFC /* 80031FE8 0002DC48 C0 1D 00 24 */ lfs f0, 0x24(r29) /* 80031FEC 0002DC4C FC 00 00 1E */ fctiwz f0, f0 /* 80031FF0 0002DC50 D8 01 00 90 */ stfd f0, 0x90(r1) /* 80031FF4 0002DC54 80 61 00 94 */ lwz r3, 0x94(r1) /* 80031FF8 0002DC58 48 00 00 0C */ b lbl_80032004 lbl_80031FFC: /* 80031FFC 0002DC5C 38 7D 00 20 */ addi r3, r29, 0x20 /* 80032000 0002DC60 48 1F BD 35 */ bl func_8022DD34 lbl_80032004: /* 80032004 0002DC64 7C 65 1B 78 */ mr r5, r3 lbl_80032008: /* 80032008 0002DC68 7F E3 FB 78 */ mr r3, r31 /* 8003200C 0002DC6C 7F 84 E3 78 */ mr r4, r28 /* 80032010 0002DC70 48 01 C1 59 */ bl func_8004E168 lbl_80032014: /* 80032014 0002DC74 C0 22 81 94 */ lfs f1, lbl_80640794-_SDA2_BASE_(r2) /* 80032018 0002DC78 7F E3 FB 78 */ mr r3, r31 /* 8003201C 0002DC7C 48 01 C7 AD */ bl func_8004E7C8 /* 80032020 0002DC80 48 00 01 80 */ b lbl_800321A0 /* 80032024 0002DC84 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80032028 0002DC88 2C 03 00 00 */ cmpwi r3, 0 /* 8003202C 0002DC8C 41 82 01 74 */ beq lbl_800321A0 /* 80032030 0002DC90 80 03 01 04 */ lwz r0, 0x104(r3) /* 80032034 0002DC94 C0 02 81 94 */ lfs f0, lbl_80640794-_SDA2_BASE_(r2) /* 80032038 0002DC98 60 00 00 04 */ ori r0, r0, 4 /* 8003203C 0002DC9C 90 03 01 04 */ stw r0, 0x104(r3) /* 80032040 0002DCA0 D0 03 01 10 */ stfs f0, 0x110(r3) /* 80032044 0002DCA4 48 00 01 5C */ b lbl_800321A0 /* 80032048 0002DCA8 80 7F 00 40 */ lwz r3, 0x40(r31) /* 8003204C 0002DCAC 2C 03 00 00 */ cmpwi r3, 0 /* 80032050 0002DCB0 41 82 00 40 */ beq lbl_80032090 /* 80032054 0002DCB4 80 03 01 04 */ lwz r0, 0x104(r3) /* 80032058 0002DCB8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8003205C 0002DCBC 41 82 00 0C */ beq lbl_80032068 /* 80032060 0002DCC0 38 60 00 01 */ li r3, 1 /* 80032064 0002DCC4 48 00 00 30 */ b lbl_80032094 lbl_80032068: /* 80032068 0002DCC8 80 63 01 38 */ lwz r3, 0x138(r3) /* 8003206C 0002DCCC 2C 03 00 00 */ cmpwi r3, 0 /* 80032070 0002DCD0 41 82 00 18 */ beq lbl_80032088 /* 80032074 0002DCD4 A0 03 01 48 */ lhz r0, 0x148(r3) /* 80032078 0002DCD8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8003207C 0002DCDC 41 82 00 0C */ beq lbl_80032088 /* 80032080 0002DCE0 38 60 00 01 */ li r3, 1 /* 80032084 0002DCE4 48 00 00 10 */ b lbl_80032094 lbl_80032088: /* 80032088 0002DCE8 38 60 00 00 */ li r3, 0 /* 8003208C 0002DCEC 48 00 00 08 */ b lbl_80032094 lbl_80032090: /* 80032090 0002DCF0 38 60 00 00 */ li r3, 0 lbl_80032094: /* 80032094 0002DCF4 38 00 00 01 */ li r0, 1 /* 80032098 0002DCF8 90 7E 00 04 */ stw r3, 4(r30) /* 8003209C 0002DCFC B0 1E 00 00 */ sth r0, 0(r30) /* 800320A0 0002DD00 48 00 01 00 */ b lbl_800321A0 /* 800320A4 0002DD04 A8 1D 00 08 */ lha r0, 8(r29) /* 800320A8 0002DD08 2C 00 00 01 */ cmpwi r0, 1 /* 800320AC 0002DD0C 40 82 00 0C */ bne lbl_800320B8 /* 800320B0 0002DD10 80 9D 00 0C */ lwz r4, 0xc(r29) /* 800320B4 0002DD14 48 00 00 2C */ b lbl_800320E0 lbl_800320B8: /* 800320B8 0002DD18 2C 00 00 02 */ cmpwi r0, 2 /* 800320BC 0002DD1C 40 82 00 18 */ bne lbl_800320D4 /* 800320C0 0002DD20 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 800320C4 0002DD24 FC 00 00 1E */ fctiwz f0, f0 /* 800320C8 0002DD28 D8 01 00 90 */ stfd f0, 0x90(r1) /* 800320CC 0002DD2C 80 61 00 94 */ lwz r3, 0x94(r1) /* 800320D0 0002DD30 48 00 00 0C */ b lbl_800320DC lbl_800320D4: /* 800320D4 0002DD34 38 7D 00 08 */ addi r3, r29, 8 /* 800320D8 0002DD38 48 1F BC 5D */ bl func_8022DD34 lbl_800320DC: /* 800320DC 0002DD3C 7C 64 1B 78 */ mr r4, r3 lbl_800320E0: /* 800320E0 0002DD40 7F E3 FB 78 */ mr r3, r31 /* 800320E4 0002DD44 48 01 C6 9D */ bl func_8004E780 /* 800320E8 0002DD48 48 00 00 B8 */ b lbl_800321A0 /* 800320EC 0002DD4C 7F E3 FB 78 */ mr r3, r31 /* 800320F0 0002DD50 48 01 C6 A5 */ bl func_8004E794 /* 800320F4 0002DD54 48 00 00 AC */ b lbl_800321A0 /* 800320F8 0002DD58 80 1F 00 34 */ lwz r0, 0x34(r31) /* 800320FC 0002DD5C 60 00 00 04 */ ori r0, r0, 4 /* 80032100 0002DD60 90 1F 00 34 */ stw r0, 0x34(r31) /* 80032104 0002DD64 48 00 00 9C */ b lbl_800321A0 /* 80032108 0002DD68 A8 1D 00 08 */ lha r0, 8(r29) /* 8003210C 0002DD6C 2C 00 00 01 */ cmpwi r0, 1 /* 80032110 0002DD70 40 82 00 0C */ bne lbl_8003211C /* 80032114 0002DD74 83 9D 00 0C */ lwz r28, 0xc(r29) /* 80032118 0002DD78 48 00 00 2C */ b lbl_80032144 lbl_8003211C: /* 8003211C 0002DD7C 2C 00 00 02 */ cmpwi r0, 2 /* 80032120 0002DD80 40 82 00 18 */ bne lbl_80032138 /* 80032124 0002DD84 C0 1D 00 0C */ lfs f0, 0xc(r29) /* 80032128 0002DD88 FC 00 00 1E */ fctiwz f0, f0 /* 8003212C 0002DD8C D8 01 00 90 */ stfd f0, 0x90(r1) /* 80032130 0002DD90 80 61 00 94 */ lwz r3, 0x94(r1) /* 80032134 0002DD94 48 00 00 0C */ b lbl_80032140 lbl_80032138: /* 80032138 0002DD98 38 7D 00 08 */ addi r3, r29, 8 /* 8003213C 0002DD9C 48 1F BB F9 */ bl func_8022DD34 lbl_80032140: /* 80032140 0002DDA0 7C 7C 1B 78 */ mr r28, r3 lbl_80032144: /* 80032144 0002DDA4 A8 1D 00 10 */ lha r0, 0x10(r29) /* 80032148 0002DDA8 2C 00 00 01 */ cmpwi r0, 1 /* 8003214C 0002DDAC 40 82 00 0C */ bne lbl_80032158 /* 80032150 0002DDB0 80 BD 00 14 */ lwz r5, 0x14(r29) /* 80032154 0002DDB4 48 00 00 2C */ b lbl_80032180 lbl_80032158: /* 80032158 0002DDB8 2C 00 00 02 */ cmpwi r0, 2 /* 8003215C 0002DDBC 40 82 00 18 */ bne lbl_80032174 /* 80032160 0002DDC0 C0 1D 00 14 */ lfs f0, 0x14(r29) /* 80032164 0002DDC4 FC 00 00 1E */ fctiwz f0, f0 /* 80032168 0002DDC8 D8 01 00 90 */ stfd f0, 0x90(r1) /* 8003216C 0002DDCC 80 61 00 94 */ lwz r3, 0x94(r1) /* 80032170 0002DDD0 48 00 00 0C */ b lbl_8003217C lbl_80032174: /* 80032174 0002DDD4 38 7D 00 10 */ addi r3, r29, 0x10 /* 80032178 0002DDD8 48 1F BB BD */ bl func_8022DD34 lbl_8003217C: /* 8003217C 0002DDDC 7C 65 1B 78 */ mr r5, r3 lbl_80032180: /* 80032180 0002DDE0 7C 7C 00 D0 */ neg r3, r28 /* 80032184 0002DDE4 7C 05 00 D0 */ neg r0, r5 /* 80032188 0002DDE8 7C 64 E3 78 */ or r4, r3, r28 /* 8003218C 0002DDEC 7C 00 2B 78 */ or r0, r0, r5 /* 80032190 0002DDF0 7F E3 FB 78 */ mr r3, r31 /* 80032194 0002DDF4 54 84 0F FE */ srwi r4, r4, 0x1f /* 80032198 0002DDF8 54 05 0F FE */ srwi r5, r0, 0x1f /* 8003219C 0002DDFC 48 01 C4 DD */ bl func_8004E678 lbl_800321A0: /* 800321A0 0002DE00 38 60 00 01 */ li r3, 1 lbl_800321A4: /* 800321A4 0002DE04 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 /* 800321A8 0002DE08 39 61 00 B0 */ addi r11, r1, 0xb0 /* 800321AC 0002DE0C CB E1 00 B0 */ lfd f31, 0xb0(r1) /* 800321B0 0002DE10 48 19 4F C1 */ bl _restgpr_26 /* 800321B4 0002DE14 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800321B8 0002DE18 7C 08 03 A6 */ mtlr r0 /* 800321BC 0002DE1C 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800321C0 0002DE20 4E 80 00 20 */ blr .global func_800321C4 func_800321C4: /* 800321C4 0002DE24 38 A0 00 01 */ li r5, 1 /* 800321C8 0002DE28 38 6D 97 68 */ addi r3, r13, lbl_8063EA28-_SDA_BASE_ /* 800321CC 0002DE2C 38 80 00 04 */ li r4, 4 /* 800321D0 0002DE30 38 00 00 00 */ li r0, 0 /* 800321D4 0002DE34 98 AD 97 68 */ stb r5, lbl_8063EA28-_SDA_BASE_(r13) /* 800321D8 0002DE38 B0 83 00 02 */ sth r4, 2(r3) /* 800321DC 0002DE3C 98 03 00 04 */ stb r0, 4(r3) /* 800321E0 0002DE40 4E 80 00 20 */ blr .global func_800321E4 func_800321E4: /* 800321E4 0002DE44 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800321E8 0002DE48 7C 08 02 A6 */ mflr r0 /* 800321EC 0002DE4C C8 42 81 A8 */ lfd f2, lbl_806407A8-_SDA2_BASE_(r2) /* 800321F0 0002DE50 90 01 00 14 */ stw r0, 0x14(r1) /* 800321F4 0002DE54 3C 00 43 30 */ lis r0, 0x4330 /* 800321F8 0002DE58 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 800321FC 0002DE5C 90 01 00 08 */ stw r0, 8(r1) /* 80032200 0002DE60 88 03 00 59 */ lbz r0, 0x59(r3) /* 80032204 0002DE64 90 01 00 0C */ stw r0, 0xc(r1) /* 80032208 0002DE68 C8 01 00 08 */ lfd f0, 8(r1) /* 8003220C 0002DE6C EC 00 10 28 */ fsubs f0, f0, f2 /* 80032210 0002DE70 EC 21 00 32 */ fmuls f1, f1, f0 /* 80032214 0002DE74 48 19 4D ED */ bl __cvt_fp2unsigned /* 80032218 0002DE78 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003221C 0002DE7C 7C 08 03 A6 */ mtlr r0 /* 80032220 0002DE80 38 21 00 10 */ addi r1, r1, 0x10 /* 80032224 0002DE84 4E 80 00 20 */ blr .global lbl_80032228 lbl_80032228: /* 80032228 0002DE88 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8003222C 0002DE8C 7C 08 02 A6 */ mflr r0 /* 80032230 0002DE90 90 01 00 44 */ stw r0, 0x44(r1) /* 80032234 0002DE94 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80032238 0002DE98 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8003223C 0002DE9C DB C1 00 20 */ stfd f30, 0x20(r1) /* 80032240 0002DEA0 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80032244 0002DEA4 2C 04 00 12 */ cmpwi r4, 0x12 /* 80032248 0002DEA8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003224C 0002DEAC 93 C1 00 18 */ stw r30, 0x18(r1) /* 80032250 0002DEB0 7C DE 33 78 */ mr r30, r6 /* 80032254 0002DEB4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80032258 0002DEB8 7C BD 2B 78 */ mr r29, r5 /* 8003225C 0002DEBC 41 82 01 1C */ beq lbl_80032378 /* 80032260 0002DEC0 40 80 00 10 */ bge lbl_80032270 /* 80032264 0002DEC4 2C 04 00 11 */ cmpwi r4, 0x11 /* 80032268 0002DEC8 40 80 00 14 */ bge lbl_8003227C /* 8003226C 0002DECC 48 00 01 EC */ b lbl_80032458 lbl_80032270: /* 80032270 0002DED0 2C 04 00 14 */ cmpwi r4, 0x14 /* 80032274 0002DED4 40 80 01 E4 */ bge lbl_80032458 /* 80032278 0002DED8 48 00 01 98 */ b lbl_80032410 lbl_8003227C: /* 8003227C 0002DEDC A8 05 00 08 */ lha r0, 8(r5) /* 80032280 0002DEE0 2C 00 00 01 */ cmpwi r0, 1 /* 80032284 0002DEE4 40 82 00 0C */ bne lbl_80032290 /* 80032288 0002DEE8 83 E5 00 0C */ lwz r31, 0xc(r5) /* 8003228C 0002DEEC 48 00 00 2C */ b lbl_800322B8 lbl_80032290: /* 80032290 0002DEF0 2C 00 00 02 */ cmpwi r0, 2 /* 80032294 0002DEF4 40 82 00 18 */ bne lbl_800322AC /* 80032298 0002DEF8 C0 05 00 0C */ lfs f0, 0xc(r5) /* 8003229C 0002DEFC FC 00 00 1E */ fctiwz f0, f0 /* 800322A0 0002DF00 D8 01 00 08 */ stfd f0, 8(r1) /* 800322A4 0002DF04 80 61 00 0C */ lwz r3, 0xc(r1) /* 800322A8 0002DF08 48 00 00 0C */ b lbl_800322B4 lbl_800322AC: /* 800322AC 0002DF0C 38 65 00 08 */ addi r3, r5, 8 /* 800322B0 0002DF10 48 1F BA 85 */ bl func_8022DD34 lbl_800322B4: /* 800322B4 0002DF14 7C 7F 1B 78 */ mr r31, r3 lbl_800322B8: /* 800322B8 0002DF18 A8 1D 00 10 */ lha r0, 0x10(r29) /* 800322BC 0002DF1C 2C 00 00 01 */ cmpwi r0, 1 /* 800322C0 0002DF20 40 82 00 28 */ bne lbl_800322E8 /* 800322C4 0002DF24 80 7D 00 14 */ lwz r3, 0x14(r29) /* 800322C8 0002DF28 3C 00 43 30 */ lis r0, 0x4330 /* 800322CC 0002DF2C 90 01 00 08 */ stw r0, 8(r1) /* 800322D0 0002DF30 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 800322D4 0002DF34 C8 22 81 B0 */ lfd f1, lbl_806407B0-_SDA2_BASE_(r2) /* 800322D8 0002DF38 90 01 00 0C */ stw r0, 0xc(r1) /* 800322DC 0002DF3C C8 01 00 08 */ lfd f0, 8(r1) /* 800322E0 0002DF40 EF E0 08 28 */ fsubs f31, f0, f1 /* 800322E4 0002DF44 48 00 00 20 */ b lbl_80032304 lbl_800322E8: /* 800322E8 0002DF48 2C 00 00 02 */ cmpwi r0, 2 /* 800322EC 0002DF4C 40 82 00 0C */ bne lbl_800322F8 /* 800322F0 0002DF50 C0 3D 00 14 */ lfs f1, 0x14(r29) /* 800322F4 0002DF54 48 00 00 0C */ b lbl_80032300 lbl_800322F8: /* 800322F8 0002DF58 38 7D 00 10 */ addi r3, r29, 0x10 /* 800322FC 0002DF5C 48 1F BA 7D */ bl func_8022DD78 lbl_80032300: /* 80032300 0002DF60 FF E0 08 90 */ fmr f31, f1 lbl_80032304: /* 80032304 0002DF64 A8 1D 00 18 */ lha r0, 0x18(r29) /* 80032308 0002DF68 2C 00 00 01 */ cmpwi r0, 1 /* 8003230C 0002DF6C 40 82 00 28 */ bne lbl_80032334 /* 80032310 0002DF70 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 80032314 0002DF74 3C 00 43 30 */ lis r0, 0x4330 /* 80032318 0002DF78 90 01 00 08 */ stw r0, 8(r1) /* 8003231C 0002DF7C 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80032320 0002DF80 C8 22 81 B0 */ lfd f1, lbl_806407B0-_SDA2_BASE_(r2) /* 80032324 0002DF84 90 01 00 0C */ stw r0, 0xc(r1) /* 80032328 0002DF88 C8 01 00 08 */ lfd f0, 8(r1) /* 8003232C 0002DF8C EF C0 08 28 */ fsubs f30, f0, f1 /* 80032330 0002DF90 48 00 00 20 */ b lbl_80032350 lbl_80032334: /* 80032334 0002DF94 2C 00 00 02 */ cmpwi r0, 2 /* 80032338 0002DF98 40 82 00 0C */ bne lbl_80032344 /* 8003233C 0002DF9C C0 3D 00 1C */ lfs f1, 0x1c(r29) /* 80032340 0002DFA0 48 00 00 0C */ b lbl_8003234C lbl_80032344: /* 80032344 0002DFA4 38 7D 00 18 */ addi r3, r29, 0x18 /* 80032348 0002DFA8 48 1F BA 31 */ bl func_8022DD78 lbl_8003234C: /* 8003234C 0002DFAC FF C0 08 90 */ fmr f30, f1 lbl_80032350: /* 80032350 0002DFB0 FC 20 F8 90 */ fmr f1, f31 /* 80032354 0002DFB4 4B FF FE 91 */ bl func_800321E4 /* 80032358 0002DFB8 FC 20 F0 90 */ fmr f1, f30 /* 8003235C 0002DFBC 7C 64 1B 78 */ mr r4, r3 /* 80032360 0002DFC0 7F E3 FB 78 */ mr r3, r31 /* 80032364 0002DFC4 4B FD 8E 0D */ bl func_8000B170 /* 80032368 0002DFC8 38 00 00 01 */ li r0, 1 /* 8003236C 0002DFCC 90 7E 00 04 */ stw r3, 4(r30) /* 80032370 0002DFD0 B0 1E 00 00 */ sth r0, 0(r30) /* 80032374 0002DFD4 48 00 00 E4 */ b lbl_80032458 lbl_80032378: /* 80032378 0002DFD8 A8 05 00 08 */ lha r0, 8(r5) /* 8003237C 0002DFDC 2C 00 00 01 */ cmpwi r0, 1 /* 80032380 0002DFE0 40 82 00 0C */ bne lbl_8003238C /* 80032384 0002DFE4 83 E5 00 0C */ lwz r31, 0xc(r5) /* 80032388 0002DFE8 48 00 00 2C */ b lbl_800323B4 lbl_8003238C: /* 8003238C 0002DFEC 2C 00 00 02 */ cmpwi r0, 2 /* 80032390 0002DFF0 40 82 00 18 */ bne lbl_800323A8 /* 80032394 0002DFF4 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032398 0002DFF8 FC 00 00 1E */ fctiwz f0, f0 /* 8003239C 0002DFFC D8 01 00 08 */ stfd f0, 8(r1) /* 800323A0 0002E000 80 61 00 0C */ lwz r3, 0xc(r1) /* 800323A4 0002E004 48 00 00 0C */ b lbl_800323B0 lbl_800323A8: /* 800323A8 0002E008 38 65 00 08 */ addi r3, r5, 8 /* 800323AC 0002E00C 48 1F B9 89 */ bl func_8022DD34 lbl_800323B0: /* 800323B0 0002E010 7C 7F 1B 78 */ mr r31, r3 lbl_800323B4: /* 800323B4 0002E014 A8 1D 00 10 */ lha r0, 0x10(r29) /* 800323B8 0002E018 2C 00 00 01 */ cmpwi r0, 1 /* 800323BC 0002E01C 40 82 00 28 */ bne lbl_800323E4 /* 800323C0 0002E020 80 7D 00 14 */ lwz r3, 0x14(r29) /* 800323C4 0002E024 3C 00 43 30 */ lis r0, 0x4330 /* 800323C8 0002E028 90 01 00 08 */ stw r0, 8(r1) /* 800323CC 0002E02C 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 800323D0 0002E030 C8 22 81 B0 */ lfd f1, lbl_806407B0-_SDA2_BASE_(r2) /* 800323D4 0002E034 90 01 00 0C */ stw r0, 0xc(r1) /* 800323D8 0002E038 C8 01 00 08 */ lfd f0, 8(r1) /* 800323DC 0002E03C EC 20 08 28 */ fsubs f1, f0, f1 /* 800323E0 0002E040 48 00 00 1C */ b lbl_800323FC lbl_800323E4: /* 800323E4 0002E044 2C 00 00 02 */ cmpwi r0, 2 /* 800323E8 0002E048 40 82 00 0C */ bne lbl_800323F4 /* 800323EC 0002E04C C0 3D 00 14 */ lfs f1, 0x14(r29) /* 800323F0 0002E050 48 00 00 0C */ b lbl_800323FC lbl_800323F4: /* 800323F4 0002E054 38 7D 00 10 */ addi r3, r29, 0x10 /* 800323F8 0002E058 48 1F B9 81 */ bl func_8022DD78 lbl_800323FC: /* 800323FC 0002E05C 4B FF FD E9 */ bl func_800321E4 /* 80032400 0002E060 7C 64 1B 78 */ mr r4, r3 /* 80032404 0002E064 7F E3 FB 78 */ mr r3, r31 /* 80032408 0002E068 4B FD 90 65 */ bl func_8000B46C /* 8003240C 0002E06C 48 00 00 4C */ b lbl_80032458 lbl_80032410: /* 80032410 0002E070 A8 05 00 08 */ lha r0, 8(r5) /* 80032414 0002E074 2C 00 00 01 */ cmpwi r0, 1 /* 80032418 0002E078 40 82 00 0C */ bne lbl_80032424 /* 8003241C 0002E07C 80 65 00 0C */ lwz r3, 0xc(r5) /* 80032420 0002E080 48 00 00 28 */ b lbl_80032448 lbl_80032424: /* 80032424 0002E084 2C 00 00 02 */ cmpwi r0, 2 /* 80032428 0002E088 40 82 00 18 */ bne lbl_80032440 /* 8003242C 0002E08C C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032430 0002E090 FC 00 00 1E */ fctiwz f0, f0 /* 80032434 0002E094 D8 01 00 08 */ stfd f0, 8(r1) /* 80032438 0002E098 80 61 00 0C */ lwz r3, 0xc(r1) /* 8003243C 0002E09C 48 00 00 0C */ b lbl_80032448 lbl_80032440: /* 80032440 0002E0A0 38 65 00 08 */ addi r3, r5, 8 /* 80032444 0002E0A4 48 1F B8 F1 */ bl func_8022DD34 lbl_80032448: /* 80032448 0002E0A8 4B FD 90 79 */ bl func_8000B4C0 /* 8003244C 0002E0AC 38 00 00 01 */ li r0, 1 /* 80032450 0002E0B0 90 7E 00 04 */ stw r3, 4(r30) /* 80032454 0002E0B4 B0 1E 00 00 */ sth r0, 0(r30) lbl_80032458: /* 80032458 0002E0B8 38 60 00 01 */ li r3, 1 /* 8003245C 0002E0BC E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80032460 0002E0C0 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80032464 0002E0C4 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80032468 0002E0C8 CB C1 00 20 */ lfd f30, 0x20(r1) /* 8003246C 0002E0CC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80032470 0002E0D0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80032474 0002E0D4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80032478 0002E0D8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8003247C 0002E0DC 7C 08 03 A6 */ mtlr r0 /* 80032480 0002E0E0 38 21 00 40 */ addi r1, r1, 0x40 /* 80032484 0002E0E4 4E 80 00 20 */ blr .global func_80032488 func_80032488: /* 80032488 0002E0E8 38 A0 00 01 */ li r5, 1 /* 8003248C 0002E0EC 38 6D 97 70 */ addi r3, r13, lbl_8063EA30-_SDA_BASE_ /* 80032490 0002E0F0 38 80 00 04 */ li r4, 4 /* 80032494 0002E0F4 38 00 00 00 */ li r0, 0 /* 80032498 0002E0F8 98 AD 97 70 */ stb r5, lbl_8063EA30-_SDA_BASE_(r13) /* 8003249C 0002E0FC B0 83 00 02 */ sth r4, 2(r3) /* 800324A0 0002E100 98 03 00 04 */ stb r0, 4(r3) /* 800324A4 0002E104 4E 80 00 20 */ blr .global lbl_800324A8 lbl_800324A8: /* 800324A8 0002E108 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800324AC 0002E10C 7C 08 02 A6 */ mflr r0 /* 800324B0 0002E110 90 01 00 54 */ stw r0, 0x54(r1) /* 800324B4 0002E114 DB E1 00 40 */ stfd f31, 0x40(r1) /* 800324B8 0002E118 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 800324BC 0002E11C 39 61 00 40 */ addi r11, r1, 0x40 /* 800324C0 0002E120 48 19 4C 69 */ bl _savegpr_27 /* 800324C4 0002E124 7C 9B 23 78 */ mr r27, r4 /* 800324C8 0002E128 7C BE 2B 78 */ mr r30, r5 /* 800324CC 0002E12C 48 01 CF 51 */ bl func_8004F41C /* 800324D0 0002E130 2C 03 00 00 */ cmpwi r3, 0 /* 800324D4 0002E134 40 82 00 0C */ bne lbl_800324E0 /* 800324D8 0002E138 38 60 00 01 */ li r3, 1 /* 800324DC 0002E13C 48 00 06 AC */ b lbl_80032B88 lbl_800324E0: /* 800324E0 0002E140 48 01 CF E5 */ bl func_8004F4C4 /* 800324E4 0002E144 2C 03 00 00 */ cmpwi r3, 0 /* 800324E8 0002E148 7C 7F 1B 78 */ mr r31, r3 /* 800324EC 0002E14C 40 82 00 0C */ bne lbl_800324F8 /* 800324F0 0002E150 38 60 00 01 */ li r3, 1 /* 800324F4 0002E154 48 00 06 94 */ b lbl_80032B88 lbl_800324F8: /* 800324F8 0002E158 38 1B FF EF */ addi r0, r27, -17 /* 800324FC 0002E15C 28 00 00 12 */ cmplwi r0, 0x12 /* 80032500 0002E160 41 81 06 84 */ bgt lbl_80032B84 /* 80032504 0002E164 3C 80 80 41 */ lis r4, lbl_8040A198@ha /* 80032508 0002E168 54 00 10 3A */ slwi r0, r0, 2 /* 8003250C 0002E16C 38 84 A1 98 */ addi r4, r4, lbl_8040A198@l /* 80032510 0002E170 7C 84 00 2E */ lwzx r4, r4, r0 /* 80032514 0002E174 7C 89 03 A6 */ mtctr r4 /* 80032518 0002E178 4E 80 04 20 */ bctr /* 8003251C 0002E17C A8 1E 00 08 */ lha r0, 8(r30) /* 80032520 0002E180 2C 00 00 01 */ cmpwi r0, 1 /* 80032524 0002E184 40 82 00 0C */ bne lbl_80032530 /* 80032528 0002E188 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8003252C 0002E18C 48 00 00 2C */ b lbl_80032558 lbl_80032530: /* 80032530 0002E190 2C 00 00 02 */ cmpwi r0, 2 /* 80032534 0002E194 40 82 00 18 */ bne lbl_8003254C /* 80032538 0002E198 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 8003253C 0002E19C FC 00 00 1E */ fctiwz f0, f0 /* 80032540 0002E1A0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80032544 0002E1A4 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032548 0002E1A8 48 00 00 0C */ b lbl_80032554 lbl_8003254C: /* 8003254C 0002E1AC 38 7E 00 08 */ addi r3, r30, 8 /* 80032550 0002E1B0 48 1F B7 E5 */ bl func_8022DD34 lbl_80032554: /* 80032554 0002E1B4 7C 64 1B 78 */ mr r4, r3 lbl_80032558: /* 80032558 0002E1B8 7F E3 FB 78 */ mr r3, r31 /* 8003255C 0002E1BC 48 01 D0 D1 */ bl func_8004F62C /* 80032560 0002E1C0 48 00 06 24 */ b lbl_80032B84 /* 80032564 0002E1C4 A8 1E 00 08 */ lha r0, 8(r30) /* 80032568 0002E1C8 2C 00 00 21 */ cmpwi r0, 0x21 /* 8003256C 0002E1CC 40 82 06 18 */ bne lbl_80032B84 /* 80032570 0002E1D0 80 9E 00 0C */ lwz r4, 0xc(r30) /* 80032574 0002E1D4 2C 04 00 00 */ cmpwi r4, 0 /* 80032578 0002E1D8 41 82 06 0C */ beq lbl_80032B84 /* 8003257C 0002E1DC 48 01 D5 01 */ bl func_8004FA7C /* 80032580 0002E1E0 48 00 06 04 */ b lbl_80032B84 /* 80032584 0002E1E4 A8 1E 00 08 */ lha r0, 8(r30) /* 80032588 0002E1E8 2C 00 00 21 */ cmpwi r0, 0x21 /* 8003258C 0002E1EC 40 82 05 F8 */ bne lbl_80032B84 /* 80032590 0002E1F0 80 9E 00 0C */ lwz r4, 0xc(r30) /* 80032594 0002E1F4 2C 04 00 00 */ cmpwi r4, 0 /* 80032598 0002E1F8 41 82 05 EC */ beq lbl_80032B84 /* 8003259C 0002E1FC 48 01 D6 15 */ bl func_8004FBB0 /* 800325A0 0002E200 48 00 05 E4 */ b lbl_80032B84 /* 800325A4 0002E204 48 01 D5 6D */ bl func_8004FB10 /* 800325A8 0002E208 48 00 05 DC */ b lbl_80032B84 /* 800325AC 0002E20C A8 1E 00 08 */ lha r0, 8(r30) /* 800325B0 0002E210 2C 00 00 01 */ cmpwi r0, 1 /* 800325B4 0002E214 40 82 00 0C */ bne lbl_800325C0 /* 800325B8 0002E218 80 9E 00 0C */ lwz r4, 0xc(r30) /* 800325BC 0002E21C 48 00 00 2C */ b lbl_800325E8 lbl_800325C0: /* 800325C0 0002E220 2C 00 00 02 */ cmpwi r0, 2 /* 800325C4 0002E224 40 82 00 18 */ bne lbl_800325DC /* 800325C8 0002E228 C0 1E 00 0C */ lfs f0, 0xc(r30) /* 800325CC 0002E22C FC 00 00 1E */ fctiwz f0, f0 /* 800325D0 0002E230 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800325D4 0002E234 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800325D8 0002E238 48 00 00 0C */ b lbl_800325E4 lbl_800325DC: /* 800325DC 0002E23C 38 7E 00 08 */ addi r3, r30, 8 /* 800325E0 0002E240 48 1F B7 55 */ bl func_8022DD34 lbl_800325E4: /* 800325E4 0002E244 7C 64 1B 78 */ mr r4, r3 lbl_800325E8: /* 800325E8 0002E248 7C 04 00 D0 */ neg r0, r4 /* 800325EC 0002E24C 7F E3 FB 78 */ mr r3, r31 /* 800325F0 0002E250 7C 00 23 78 */ or r0, r0, r4 /* 800325F4 0002E254 54 04 0F FE */ srwi r4, r0, 0x1f /* 800325F8 0002E258 48 01 D4 41 */ bl func_8004FA38 /* 800325FC 0002E25C 48 00 05 88 */ b lbl_80032B84 /* 80032600 0002E260 A8 1E 00 08 */ lha r0, 8(r30) /* 80032604 0002E264 2C 00 00 04 */ cmpwi r0, 4 /* 80032608 0002E268 40 82 00 0C */ bne lbl_80032614 /* 8003260C 0002E26C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80032610 0002E270 48 00 00 0C */ b lbl_8003261C lbl_80032614: /* 80032614 0002E274 38 7E 00 08 */ addi r3, r30, 8 /* 80032618 0002E278 4B FF 5C C9 */ bl func_800282E0 lbl_8003261C: /* 8003261C 0002E27C 7C 64 1B 78 */ mr r4, r3 /* 80032620 0002E280 7F E3 FB 78 */ mr r3, r31 /* 80032624 0002E284 48 01 D6 BD */ bl func_8004FCE0 /* 80032628 0002E288 48 00 05 5C */ b lbl_80032B84 /* 8003262C 0002E28C A8 1E 00 08 */ lha r0, 8(r30) /* 80032630 0002E290 2C 00 00 04 */ cmpwi r0, 4 /* 80032634 0002E294 40 82 00 0C */ bne lbl_80032640 /* 80032638 0002E298 80 7E 00 0C */ lwz r3, 0xc(r30) /* 8003263C 0002E29C 48 00 00 0C */ b lbl_80032648 lbl_80032640: /* 80032640 0002E2A0 38 7E 00 08 */ addi r3, r30, 8 /* 80032644 0002E2A4 4B FF 5C 9D */ bl func_800282E0 lbl_80032648: /* 80032648 0002E2A8 A8 1E 00 10 */ lha r0, 0x10(r30) /* 8003264C 0002E2AC 7C 7D 1B 78 */ mr r29, r3 /* 80032650 0002E2B0 2C 00 00 01 */ cmpwi r0, 1 /* 80032654 0002E2B4 40 82 00 28 */ bne lbl_8003267C /* 80032658 0002E2B8 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8003265C 0002E2BC 3C 00 43 30 */ lis r0, 0x4330 /* 80032660 0002E2C0 90 01 00 18 */ stw r0, 0x18(r1) /* 80032664 0002E2C4 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80032668 0002E2C8 C8 22 81 C0 */ lfd f1, lbl_806407C0-_SDA2_BASE_(r2) /* 8003266C 0002E2CC 90 01 00 1C */ stw r0, 0x1c(r1) /* 80032670 0002E2D0 C8 01 00 18 */ lfd f0, 0x18(r1) /* 80032674 0002E2D4 EF E0 08 28 */ fsubs f31, f0, f1 /* 80032678 0002E2D8 48 00 00 20 */ b lbl_80032698 lbl_8003267C: /* 8003267C 0002E2DC 2C 00 00 02 */ cmpwi r0, 2 /* 80032680 0002E2E0 40 82 00 0C */ bne lbl_8003268C /* 80032684 0002E2E4 C0 3E 00 14 */ lfs f1, 0x14(r30) /* 80032688 0002E2E8 48 00 00 0C */ b lbl_80032694 lbl_8003268C: /* 8003268C 0002E2EC 38 7E 00 10 */ addi r3, r30, 0x10 /* 80032690 0002E2F0 48 1F B6 E9 */ bl func_8022DD78 lbl_80032694: /* 80032694 0002E2F4 FF E0 08 90 */ fmr f31, f1 lbl_80032698: /* 80032698 0002E2F8 A8 1E 00 18 */ lha r0, 0x18(r30) /* 8003269C 0002E2FC 2C 00 00 01 */ cmpwi r0, 1 /* 800326A0 0002E300 40 82 00 0C */ bne lbl_800326AC /* 800326A4 0002E304 80 BE 00 1C */ lwz r5, 0x1c(r30) /* 800326A8 0002E308 48 00 00 2C */ b lbl_800326D4 lbl_800326AC: /* 800326AC 0002E30C 2C 00 00 02 */ cmpwi r0, 2 /* 800326B0 0002E310 40 82 00 18 */ bne lbl_800326C8 /* 800326B4 0002E314 C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 800326B8 0002E318 FC 00 00 1E */ fctiwz f0, f0 /* 800326BC 0002E31C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800326C0 0002E320 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800326C4 0002E324 48 00 00 0C */ b lbl_800326D0 lbl_800326C8: /* 800326C8 0002E328 38 7E 00 18 */ addi r3, r30, 0x18 /* 800326CC 0002E32C 48 1F B6 69 */ bl func_8022DD34 lbl_800326D0: /* 800326D0 0002E330 7C 65 1B 78 */ mr r5, r3 lbl_800326D4: /* 800326D4 0002E334 FC 20 F8 90 */ fmr f1, f31 /* 800326D8 0002E338 7F E3 FB 78 */ mr r3, r31 /* 800326DC 0002E33C 7F A4 EB 78 */ mr r4, r29 /* 800326E0 0002E340 48 01 D6 7D */ bl func_8004FD5C /* 800326E4 0002E344 48 00 04 A0 */ b lbl_80032B84 /* 800326E8 0002E348 A8 1E 00 08 */ lha r0, 8(r30) /* 800326EC 0002E34C 2C 00 00 04 */ cmpwi r0, 4 /* 800326F0 0002E350 40 82 00 0C */ bne lbl_800326FC /* 800326F4 0002E354 80 7E 00 0C */ lwz r3, 0xc(r30) /* 800326F8 0002E358 48 00 00 0C */ b lbl_80032704 lbl_800326FC: /* 800326FC 0002E35C 38 7E 00 08 */ addi r3, r30, 8 /* 80032700 0002E360 4B FF 5B E1 */ bl func_800282E0 lbl_80032704: /* 80032704 0002E364 7C 64 1B 78 */ mr r4, r3 /* 80032708 0002E368 7F E3 FB 78 */ mr r3, r31 /* 8003270C 0002E36C 48 01 D6 ED */ bl func_8004FDF8 /* 80032710 0002E370 48 00 04 74 */ b lbl_80032B84 /* 80032714 0002E374 A8 1E 00 08 */ lha r0, 8(r30) /* 80032718 0002E378 2C 00 00 04 */ cmpwi r0, 4 /* 8003271C 0002E37C 40 82 00 0C */ bne lbl_80032728 /* 80032720 0002E380 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80032724 0002E384 48 00 00 0C */ b lbl_80032730 lbl_80032728: /* 80032728 0002E388 38 7E 00 08 */ addi r3, r30, 8 /* 8003272C 0002E38C 4B FF 5B B5 */ bl func_800282E0 lbl_80032730: /* 80032730 0002E390 A8 1E 00 10 */ lha r0, 0x10(r30) /* 80032734 0002E394 7C 7D 1B 78 */ mr r29, r3 /* 80032738 0002E398 2C 00 00 01 */ cmpwi r0, 1 /* 8003273C 0002E39C 40 82 00 28 */ bne lbl_80032764 /* 80032740 0002E3A0 80 7E 00 14 */ lwz r3, 0x14(r30) /* 80032744 0002E3A4 3C 00 43 30 */ lis r0, 0x4330 /* 80032748 0002E3A8 90 01 00 18 */ stw r0, 0x18(r1) /* 8003274C 0002E3AC 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80032750 0002E3B0 C8 22 81 C0 */ lfd f1, lbl_806407C0-_SDA2_BASE_(r2) /* 80032754 0002E3B4 90 01 00 1C */ stw r0, 0x1c(r1) /* 80032758 0002E3B8 C8 01 00 18 */ lfd f0, 0x18(r1) /* 8003275C 0002E3BC EF E0 08 28 */ fsubs f31, f0, f1 /* 80032760 0002E3C0 48 00 00 20 */ b lbl_80032780 lbl_80032764: /* 80032764 0002E3C4 2C 00 00 02 */ cmpwi r0, 2 /* 80032768 0002E3C8 40 82 00 0C */ bne lbl_80032774 /* 8003276C 0002E3CC C0 3E 00 14 */ lfs f1, 0x14(r30) /* 80032770 0002E3D0 48 00 00 0C */ b lbl_8003277C lbl_80032774: /* 80032774 0002E3D4 38 7E 00 10 */ addi r3, r30, 0x10 /* 80032778 0002E3D8 48 1F B6 01 */ bl func_8022DD78 lbl_8003277C: /* 8003277C 0002E3DC FF E0 08 90 */ fmr f31, f1 lbl_80032780: /* 80032780 0002E3E0 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80032784 0002E3E4 2C 00 00 01 */ cmpwi r0, 1 /* 80032788 0002E3E8 40 82 00 0C */ bne lbl_80032794 /* 8003278C 0002E3EC 80 BE 00 1C */ lwz r5, 0x1c(r30) /* 80032790 0002E3F0 48 00 00 2C */ b lbl_800327BC lbl_80032794: /* 80032794 0002E3F4 2C 00 00 02 */ cmpwi r0, 2 /* 80032798 0002E3F8 40 82 00 18 */ bne lbl_800327B0 /* 8003279C 0002E3FC C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 800327A0 0002E400 FC 00 00 1E */ fctiwz f0, f0 /* 800327A4 0002E404 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800327A8 0002E408 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800327AC 0002E40C 48 00 00 0C */ b lbl_800327B8 lbl_800327B0: /* 800327B0 0002E410 38 7E 00 18 */ addi r3, r30, 0x18 /* 800327B4 0002E414 48 1F B5 81 */ bl func_8022DD34 lbl_800327B8: /* 800327B8 0002E418 7C 65 1B 78 */ mr r5, r3 lbl_800327BC: /* 800327BC 0002E41C FC 20 F8 90 */ fmr f1, f31 /* 800327C0 0002E420 7F E3 FB 78 */ mr r3, r31 /* 800327C4 0002E424 7F A4 EB 78 */ mr r4, r29 /* 800327C8 0002E428 48 01 D6 91 */ bl func_8004FE58 /* 800327CC 0002E42C 48 00 03 B8 */ b lbl_80032B84 /* 800327D0 0002E430 A8 1E 00 08 */ lha r0, 8(r30) /* 800327D4 0002E434 2C 00 00 21 */ cmpwi r0, 0x21 /* 800327D8 0002E438 40 82 03 AC */ bne lbl_80032B84 /* 800327DC 0002E43C 83 7E 00 0C */ lwz r27, 0xc(r30) /* 800327E0 0002E440 2C 1B 00 00 */ cmpwi r27, 0 /* 800327E4 0002E444 41 82 03 A0 */ beq lbl_80032B84 /* 800327E8 0002E448 A8 1E 00 10 */ lha r0, 0x10(r30) /* 800327EC 0002E44C 2C 00 00 01 */ cmpwi r0, 1 /* 800327F0 0002E450 40 82 00 0C */ bne lbl_800327FC /* 800327F4 0002E454 83 BE 00 14 */ lwz r29, 0x14(r30) /* 800327F8 0002E458 48 00 00 2C */ b lbl_80032824 lbl_800327FC: /* 800327FC 0002E45C 2C 00 00 02 */ cmpwi r0, 2 /* 80032800 0002E460 40 82 00 18 */ bne lbl_80032818 /* 80032804 0002E464 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80032808 0002E468 FC 00 00 1E */ fctiwz f0, f0 /* 8003280C 0002E46C D8 01 00 18 */ stfd f0, 0x18(r1) /* 80032810 0002E470 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032814 0002E474 48 00 00 0C */ b lbl_80032820 lbl_80032818: /* 80032818 0002E478 38 7E 00 10 */ addi r3, r30, 0x10 /* 8003281C 0002E47C 48 1F B5 19 */ bl func_8022DD34 lbl_80032820: /* 80032820 0002E480 7C 7D 1B 78 */ mr r29, r3 lbl_80032824: /* 80032824 0002E484 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80032828 0002E488 2C 00 00 01 */ cmpwi r0, 1 /* 8003282C 0002E48C 40 82 00 0C */ bne lbl_80032838 /* 80032830 0002E490 83 DE 00 1C */ lwz r30, 0x1c(r30) /* 80032834 0002E494 48 00 00 2C */ b lbl_80032860 lbl_80032838: /* 80032838 0002E498 2C 00 00 02 */ cmpwi r0, 2 /* 8003283C 0002E49C 40 82 00 18 */ bne lbl_80032854 /* 80032840 0002E4A0 C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80032844 0002E4A4 FC 00 00 1E */ fctiwz f0, f0 /* 80032848 0002E4A8 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003284C 0002E4AC 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032850 0002E4B0 48 00 00 0C */ b lbl_8003285C lbl_80032854: /* 80032854 0002E4B4 38 7E 00 18 */ addi r3, r30, 0x18 /* 80032858 0002E4B8 48 1F B4 DD */ bl func_8022DD34 lbl_8003285C: /* 8003285C 0002E4BC 7C 7E 1B 78 */ mr r30, r3 lbl_80032860: /* 80032860 0002E4C0 7F 63 DB 78 */ mr r3, r27 /* 80032864 0002E4C4 7F A4 EB 78 */ mr r4, r29 /* 80032868 0002E4C8 48 00 70 85 */ bl func_800398EC /* 8003286C 0002E4CC 7C 64 1B 78 */ mr r4, r3 /* 80032870 0002E4D0 7F E3 FB 78 */ mr r3, r31 /* 80032874 0002E4D4 7F C5 F3 78 */ mr r5, r30 /* 80032878 0002E4D8 48 01 D3 9D */ bl func_8004FC14 /* 8003287C 0002E4DC 48 00 03 08 */ b lbl_80032B84 /* 80032880 0002E4E0 A8 1E 00 08 */ lha r0, 8(r30) /* 80032884 0002E4E4 2C 00 00 01 */ cmpwi r0, 1 /* 80032888 0002E4E8 40 82 00 0C */ bne lbl_80032894 /* 8003288C 0002E4EC 83 BE 00 0C */ lwz r29, 0xc(r30) /* 80032890 0002E4F0 48 00 00 2C */ b lbl_800328BC lbl_80032894: /* 80032894 0002E4F4 2C 00 00 02 */ cmpwi r0, 2 /* 80032898 0002E4F8 40 82 00 18 */ bne lbl_800328B0 /* 8003289C 0002E4FC C0 1E 00 0C */ lfs f0, 0xc(r30) /* 800328A0 0002E500 FC 00 00 1E */ fctiwz f0, f0 /* 800328A4 0002E504 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800328A8 0002E508 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800328AC 0002E50C 48 00 00 0C */ b lbl_800328B8 lbl_800328B0: /* 800328B0 0002E510 38 7E 00 08 */ addi r3, r30, 8 /* 800328B4 0002E514 48 1F B4 81 */ bl func_8022DD34 lbl_800328B8: /* 800328B8 0002E518 7C 7D 1B 78 */ mr r29, r3 lbl_800328BC: /* 800328BC 0002E51C A8 1E 00 10 */ lha r0, 0x10(r30) /* 800328C0 0002E520 2C 00 00 01 */ cmpwi r0, 1 /* 800328C4 0002E524 40 82 00 0C */ bne lbl_800328D0 /* 800328C8 0002E528 83 9E 00 14 */ lwz r28, 0x14(r30) /* 800328CC 0002E52C 48 00 00 2C */ b lbl_800328F8 lbl_800328D0: /* 800328D0 0002E530 2C 00 00 02 */ cmpwi r0, 2 /* 800328D4 0002E534 40 82 00 18 */ bne lbl_800328EC /* 800328D8 0002E538 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 800328DC 0002E53C FC 00 00 1E */ fctiwz f0, f0 /* 800328E0 0002E540 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800328E4 0002E544 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800328E8 0002E548 48 00 00 0C */ b lbl_800328F4 lbl_800328EC: /* 800328EC 0002E54C 38 7E 00 10 */ addi r3, r30, 0x10 /* 800328F0 0002E550 48 1F B4 45 */ bl func_8022DD34 lbl_800328F4: /* 800328F4 0002E554 7C 7C 1B 78 */ mr r28, r3 lbl_800328F8: /* 800328F8 0002E558 A8 1E 00 18 */ lha r0, 0x18(r30) /* 800328FC 0002E55C 2C 00 00 01 */ cmpwi r0, 1 /* 80032900 0002E560 40 82 00 0C */ bne lbl_8003290C /* 80032904 0002E564 83 7E 00 1C */ lwz r27, 0x1c(r30) /* 80032908 0002E568 48 00 00 2C */ b lbl_80032934 lbl_8003290C: /* 8003290C 0002E56C 2C 00 00 02 */ cmpwi r0, 2 /* 80032910 0002E570 40 82 00 18 */ bne lbl_80032928 /* 80032914 0002E574 C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80032918 0002E578 FC 00 00 1E */ fctiwz f0, f0 /* 8003291C 0002E57C D8 01 00 18 */ stfd f0, 0x18(r1) /* 80032920 0002E580 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032924 0002E584 48 00 00 0C */ b lbl_80032930 lbl_80032928: /* 80032928 0002E588 38 7E 00 18 */ addi r3, r30, 0x18 /* 8003292C 0002E58C 48 1F B4 09 */ bl func_8022DD34 lbl_80032930: /* 80032930 0002E590 7C 7B 1B 78 */ mr r27, r3 lbl_80032934: /* 80032934 0002E594 A8 1E 00 20 */ lha r0, 0x20(r30) /* 80032938 0002E598 2C 00 00 01 */ cmpwi r0, 1 /* 8003293C 0002E59C 40 82 00 0C */ bne lbl_80032948 /* 80032940 0002E5A0 80 1E 00 24 */ lwz r0, 0x24(r30) /* 80032944 0002E5A4 48 00 00 2C */ b lbl_80032970 lbl_80032948: /* 80032948 0002E5A8 2C 00 00 02 */ cmpwi r0, 2 /* 8003294C 0002E5AC 40 82 00 18 */ bne lbl_80032964 /* 80032950 0002E5B0 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80032954 0002E5B4 FC 00 00 1E */ fctiwz f0, f0 /* 80032958 0002E5B8 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003295C 0002E5BC 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032960 0002E5C0 48 00 00 0C */ b lbl_8003296C lbl_80032964: /* 80032964 0002E5C4 38 7E 00 20 */ addi r3, r30, 0x20 /* 80032968 0002E5C8 48 1F B3 CD */ bl func_8022DD34 lbl_8003296C: /* 8003296C 0002E5CC 7C 60 1B 78 */ mr r0, r3 lbl_80032970: /* 80032970 0002E5D0 9B A1 00 08 */ stb r29, 8(r1) /* 80032974 0002E5D4 7F E3 FB 78 */ mr r3, r31 /* 80032978 0002E5D8 38 81 00 08 */ addi r4, r1, 8 /* 8003297C 0002E5DC 9B 81 00 09 */ stb r28, 9(r1) /* 80032980 0002E5E0 9B 61 00 0A */ stb r27, 0xa(r1) /* 80032984 0002E5E4 98 01 00 0B */ stb r0, 0xb(r1) /* 80032988 0002E5E8 48 01 D5 6D */ bl func_8004FEF4 /* 8003298C 0002E5EC 48 00 01 F8 */ b lbl_80032B84 /* 80032990 0002E5F0 A8 1E 00 08 */ lha r0, 8(r30) /* 80032994 0002E5F4 2C 00 00 01 */ cmpwi r0, 1 /* 80032998 0002E5F8 40 82 00 0C */ bne lbl_800329A4 /* 8003299C 0002E5FC 83 7E 00 0C */ lwz r27, 0xc(r30) /* 800329A0 0002E600 48 00 00 2C */ b lbl_800329CC lbl_800329A4: /* 800329A4 0002E604 2C 00 00 02 */ cmpwi r0, 2 /* 800329A8 0002E608 40 82 00 18 */ bne lbl_800329C0 /* 800329AC 0002E60C C0 1E 00 0C */ lfs f0, 0xc(r30) /* 800329B0 0002E610 FC 00 00 1E */ fctiwz f0, f0 /* 800329B4 0002E614 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800329B8 0002E618 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800329BC 0002E61C 48 00 00 0C */ b lbl_800329C8 lbl_800329C0: /* 800329C0 0002E620 38 7E 00 08 */ addi r3, r30, 8 /* 800329C4 0002E624 48 1F B3 71 */ bl func_8022DD34 lbl_800329C8: /* 800329C8 0002E628 7C 7B 1B 78 */ mr r27, r3 lbl_800329CC: /* 800329CC 0002E62C A8 1E 00 10 */ lha r0, 0x10(r30) /* 800329D0 0002E630 2C 00 00 01 */ cmpwi r0, 1 /* 800329D4 0002E634 40 82 00 0C */ bne lbl_800329E0 /* 800329D8 0002E638 83 9E 00 14 */ lwz r28, 0x14(r30) /* 800329DC 0002E63C 48 00 00 2C */ b lbl_80032A08 lbl_800329E0: /* 800329E0 0002E640 2C 00 00 02 */ cmpwi r0, 2 /* 800329E4 0002E644 40 82 00 18 */ bne lbl_800329FC /* 800329E8 0002E648 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 800329EC 0002E64C FC 00 00 1E */ fctiwz f0, f0 /* 800329F0 0002E650 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800329F4 0002E654 80 61 00 1C */ lwz r3, 0x1c(r1) /* 800329F8 0002E658 48 00 00 0C */ b lbl_80032A04 lbl_800329FC: /* 800329FC 0002E65C 38 7E 00 10 */ addi r3, r30, 0x10 /* 80032A00 0002E660 48 1F B3 35 */ bl func_8022DD34 lbl_80032A04: /* 80032A04 0002E664 7C 7C 1B 78 */ mr r28, r3 lbl_80032A08: /* 80032A08 0002E668 A8 1E 00 18 */ lha r0, 0x18(r30) /* 80032A0C 0002E66C 2C 00 00 01 */ cmpwi r0, 1 /* 80032A10 0002E670 40 82 00 0C */ bne lbl_80032A1C /* 80032A14 0002E674 83 BE 00 1C */ lwz r29, 0x1c(r30) /* 80032A18 0002E678 48 00 00 2C */ b lbl_80032A44 lbl_80032A1C: /* 80032A1C 0002E67C 2C 00 00 02 */ cmpwi r0, 2 /* 80032A20 0002E680 40 82 00 18 */ bne lbl_80032A38 /* 80032A24 0002E684 C0 1E 00 1C */ lfs f0, 0x1c(r30) /* 80032A28 0002E688 FC 00 00 1E */ fctiwz f0, f0 /* 80032A2C 0002E68C D8 01 00 18 */ stfd f0, 0x18(r1) /* 80032A30 0002E690 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032A34 0002E694 48 00 00 0C */ b lbl_80032A40 lbl_80032A38: /* 80032A38 0002E698 38 7E 00 18 */ addi r3, r30, 0x18 /* 80032A3C 0002E69C 48 1F B2 F9 */ bl func_8022DD34 lbl_80032A40: /* 80032A40 0002E6A0 7C 7D 1B 78 */ mr r29, r3 lbl_80032A44: /* 80032A44 0002E6A4 A8 1E 00 20 */ lha r0, 0x20(r30) /* 80032A48 0002E6A8 2C 00 00 01 */ cmpwi r0, 1 /* 80032A4C 0002E6AC 40 82 00 0C */ bne lbl_80032A58 /* 80032A50 0002E6B0 80 7E 00 24 */ lwz r3, 0x24(r30) /* 80032A54 0002E6B4 48 00 00 28 */ b lbl_80032A7C lbl_80032A58: /* 80032A58 0002E6B8 2C 00 00 02 */ cmpwi r0, 2 /* 80032A5C 0002E6BC 40 82 00 18 */ bne lbl_80032A74 /* 80032A60 0002E6C0 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80032A64 0002E6C4 FC 00 00 1E */ fctiwz f0, f0 /* 80032A68 0002E6C8 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80032A6C 0002E6CC 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032A70 0002E6D0 48 00 00 0C */ b lbl_80032A7C lbl_80032A74: /* 80032A74 0002E6D4 38 7E 00 20 */ addi r3, r30, 0x20 /* 80032A78 0002E6D8 48 1F B2 BD */ bl func_8022DD34 lbl_80032A7C: /* 80032A7C 0002E6DC 9B 61 00 08 */ stb r27, 8(r1) /* 80032A80 0002E6E0 9B 81 00 09 */ stb r28, 9(r1) /* 80032A84 0002E6E4 9B A1 00 0A */ stb r29, 0xa(r1) /* 80032A88 0002E6E8 98 61 00 0B */ stb r3, 0xb(r1) /* 80032A8C 0002E6EC A8 1E 00 28 */ lha r0, 0x28(r30) /* 80032A90 0002E6F0 2C 00 00 01 */ cmpwi r0, 1 /* 80032A94 0002E6F4 40 82 00 28 */ bne lbl_80032ABC /* 80032A98 0002E6F8 80 7E 00 2C */ lwz r3, 0x2c(r30) /* 80032A9C 0002E6FC 3C 00 43 30 */ lis r0, 0x4330 /* 80032AA0 0002E700 90 01 00 18 */ stw r0, 0x18(r1) /* 80032AA4 0002E704 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80032AA8 0002E708 C8 22 81 C0 */ lfd f1, lbl_806407C0-_SDA2_BASE_(r2) /* 80032AAC 0002E70C 90 01 00 1C */ stw r0, 0x1c(r1) /* 80032AB0 0002E710 C8 01 00 18 */ lfd f0, 0x18(r1) /* 80032AB4 0002E714 EF E0 08 28 */ fsubs f31, f0, f1 /* 80032AB8 0002E718 48 00 00 20 */ b lbl_80032AD8 lbl_80032ABC: /* 80032ABC 0002E71C 2C 00 00 02 */ cmpwi r0, 2 /* 80032AC0 0002E720 40 82 00 0C */ bne lbl_80032ACC /* 80032AC4 0002E724 C0 3E 00 2C */ lfs f1, 0x2c(r30) /* 80032AC8 0002E728 48 00 00 0C */ b lbl_80032AD4 lbl_80032ACC: /* 80032ACC 0002E72C 38 7E 00 28 */ addi r3, r30, 0x28 /* 80032AD0 0002E730 48 1F B2 A9 */ bl func_8022DD78 lbl_80032AD4: /* 80032AD4 0002E734 FF E0 08 90 */ fmr f31, f1 lbl_80032AD8: /* 80032AD8 0002E738 A8 1E 00 30 */ lha r0, 0x30(r30) /* 80032ADC 0002E73C 2C 00 00 01 */ cmpwi r0, 1 /* 80032AE0 0002E740 40 82 00 0C */ bne lbl_80032AEC /* 80032AE4 0002E744 80 BE 00 34 */ lwz r5, 0x34(r30) /* 80032AE8 0002E748 48 00 00 2C */ b lbl_80032B14 lbl_80032AEC: /* 80032AEC 0002E74C 2C 00 00 02 */ cmpwi r0, 2 /* 80032AF0 0002E750 40 82 00 18 */ bne lbl_80032B08 /* 80032AF4 0002E754 C0 1E 00 34 */ lfs f0, 0x34(r30) /* 80032AF8 0002E758 FC 00 00 1E */ fctiwz f0, f0 /* 80032AFC 0002E75C D8 01 00 18 */ stfd f0, 0x18(r1) /* 80032B00 0002E760 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80032B04 0002E764 48 00 00 0C */ b lbl_80032B10 lbl_80032B08: /* 80032B08 0002E768 38 7E 00 30 */ addi r3, r30, 0x30 /* 80032B0C 0002E76C 48 1F B2 29 */ bl func_8022DD34 lbl_80032B10: /* 80032B10 0002E770 7C 65 1B 78 */ mr r5, r3 lbl_80032B14: /* 80032B14 0002E774 FC 20 F8 90 */ fmr f1, f31 /* 80032B18 0002E778 7F E3 FB 78 */ mr r3, r31 /* 80032B1C 0002E77C 38 81 00 08 */ addi r4, r1, 8 /* 80032B20 0002E780 48 01 D4 6D */ bl func_8004FF8C /* 80032B24 0002E784 48 00 00 60 */ b lbl_80032B84 /* 80032B28 0002E788 A8 1E 00 08 */ lha r0, 8(r30) /* 80032B2C 0002E78C 2C 00 00 04 */ cmpwi r0, 4 /* 80032B30 0002E790 40 82 00 0C */ bne lbl_80032B3C /* 80032B34 0002E794 80 BE 00 0C */ lwz r5, 0xc(r30) /* 80032B38 0002E798 48 00 00 10 */ b lbl_80032B48 lbl_80032B3C: /* 80032B3C 0002E79C 38 7E 00 08 */ addi r3, r30, 8 /* 80032B40 0002E7A0 4B FF 57 A1 */ bl func_800282E0 /* 80032B44 0002E7A4 7C 65 1B 78 */ mr r5, r3 lbl_80032B48: /* 80032B48 0002E7A8 C0 25 00 00 */ lfs f1, 0(r5) /* 80032B4C 0002E7AC 7F E3 FB 78 */ mr r3, r31 /* 80032B50 0002E7B0 C0 02 81 B8 */ lfs f0, lbl_806407B8-_SDA2_BASE_(r2) /* 80032B54 0002E7B4 38 81 00 0C */ addi r4, r1, 0xc /* 80032B58 0002E7B8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80032B5C 0002E7BC EC 40 00 72 */ fmuls f2, f0, f1 /* 80032B60 0002E7C0 C0 25 00 04 */ lfs f1, 4(r5) /* 80032B64 0002E7C4 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80032B68 0002E7C8 EC 20 00 72 */ fmuls f1, f0, f1 /* 80032B6C 0002E7CC C0 65 00 08 */ lfs f3, 8(r5) /* 80032B70 0002E7D0 EC 00 00 F2 */ fmuls f0, f0, f3 /* 80032B74 0002E7D4 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80032B78 0002E7D8 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80032B7C 0002E7DC D0 01 00 14 */ stfs f0, 0x14(r1) /* 80032B80 0002E7E0 48 01 D4 A1 */ bl func_80050020 lbl_80032B84: /* 80032B84 0002E7E4 38 60 00 01 */ li r3, 1 lbl_80032B88: /* 80032B88 0002E7E8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80032B8C 0002E7EC 39 61 00 40 */ addi r11, r1, 0x40 /* 80032B90 0002E7F0 CB E1 00 40 */ lfd f31, 0x40(r1) /* 80032B94 0002E7F4 48 19 45 E1 */ bl _restgpr_27 /* 80032B98 0002E7F8 80 01 00 54 */ lwz r0, 0x54(r1) /* 80032B9C 0002E7FC 7C 08 03 A6 */ mtlr r0 /* 80032BA0 0002E800 38 21 00 50 */ addi r1, r1, 0x50 /* 80032BA4 0002E804 4E 80 00 20 */ blr .global func_80032BA8 func_80032BA8: /* 80032BA8 0002E808 38 A0 00 01 */ li r5, 1 /* 80032BAC 0002E80C 38 6D 97 78 */ addi r3, r13, lbl_8063EA38-_SDA_BASE_ /* 80032BB0 0002E810 38 80 00 04 */ li r4, 4 /* 80032BB4 0002E814 38 00 00 00 */ li r0, 0 /* 80032BB8 0002E818 98 AD 97 78 */ stb r5, lbl_8063EA38-_SDA_BASE_(r13) /* 80032BBC 0002E81C B0 83 00 02 */ sth r4, 2(r3) /* 80032BC0 0002E820 98 03 00 04 */ stb r0, 4(r3) /* 80032BC4 0002E824 4E 80 00 20 */ blr .global lbl_80032BC8 lbl_80032BC8: /* 80032BC8 0002E828 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80032BCC 0002E82C 7C 08 02 A6 */ mflr r0 /* 80032BD0 0002E830 90 01 00 24 */ stw r0, 0x24(r1) /* 80032BD4 0002E834 38 04 FF EF */ addi r0, r4, -17 /* 80032BD8 0002E838 28 00 00 22 */ cmplwi r0, 0x22 /* 80032BDC 0002E83C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80032BE0 0002E840 41 81 02 38 */ bgt lbl_80032E18 /* 80032BE4 0002E844 3C 60 80 41 */ lis r3, lbl_8040A1E8@ha /* 80032BE8 0002E848 54 00 10 3A */ slwi r0, r0, 2 /* 80032BEC 0002E84C 38 63 A1 E8 */ addi r3, r3, lbl_8040A1E8@l /* 80032BF0 0002E850 7C 63 00 2E */ lwzx r3, r3, r0 /* 80032BF4 0002E854 7C 69 03 A6 */ mtctr r3 /* 80032BF8 0002E858 4E 80 04 20 */ bctr /* 80032BFC 0002E85C A8 05 00 08 */ lha r0, 8(r5) /* 80032C00 0002E860 2C 00 00 01 */ cmpwi r0, 1 /* 80032C04 0002E864 40 82 00 0C */ bne lbl_80032C10 /* 80032C08 0002E868 83 E5 00 0C */ lwz r31, 0xc(r5) /* 80032C0C 0002E86C 48 00 00 2C */ b lbl_80032C38 lbl_80032C10: /* 80032C10 0002E870 2C 00 00 02 */ cmpwi r0, 2 /* 80032C14 0002E874 40 82 00 18 */ bne lbl_80032C2C /* 80032C18 0002E878 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032C1C 0002E87C FC 00 00 1E */ fctiwz f0, f0 /* 80032C20 0002E880 D8 01 00 08 */ stfd f0, 8(r1) /* 80032C24 0002E884 80 61 00 0C */ lwz r3, 0xc(r1) /* 80032C28 0002E888 48 00 00 0C */ b lbl_80032C34 lbl_80032C2C: /* 80032C2C 0002E88C 38 65 00 08 */ addi r3, r5, 8 /* 80032C30 0002E890 48 1F B1 05 */ bl func_8022DD34 lbl_80032C34: /* 80032C34 0002E894 7C 7F 1B 78 */ mr r31, r3 lbl_80032C38: /* 80032C38 0002E898 4B FD 9B B1 */ bl func_8000C7E8 /* 80032C3C 0002E89C 7F E5 FB 78 */ mr r5, r31 /* 80032C40 0002E8A0 38 80 00 00 */ li r4, 0 /* 80032C44 0002E8A4 4B FE F2 81 */ bl func_80021EC4 /* 80032C48 0002E8A8 48 00 01 E0 */ b lbl_80032E28 /* 80032C4C 0002E8AC A8 05 00 08 */ lha r0, 8(r5) /* 80032C50 0002E8B0 2C 00 00 01 */ cmpwi r0, 1 /* 80032C54 0002E8B4 40 82 00 4C */ bne lbl_80032CA0 /* 80032C58 0002E8B8 40 82 00 0C */ bne lbl_80032C64 /* 80032C5C 0002E8BC 83 E5 00 0C */ lwz r31, 0xc(r5) /* 80032C60 0002E8C0 48 00 00 2C */ b lbl_80032C8C lbl_80032C64: /* 80032C64 0002E8C4 2C 00 00 02 */ cmpwi r0, 2 /* 80032C68 0002E8C8 40 82 00 18 */ bne lbl_80032C80 /* 80032C6C 0002E8CC C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032C70 0002E8D0 FC 00 00 1E */ fctiwz f0, f0 /* 80032C74 0002E8D4 D8 01 00 08 */ stfd f0, 8(r1) /* 80032C78 0002E8D8 80 61 00 0C */ lwz r3, 0xc(r1) /* 80032C7C 0002E8DC 48 00 00 0C */ b lbl_80032C88 lbl_80032C80: /* 80032C80 0002E8E0 38 65 00 08 */ addi r3, r5, 8 /* 80032C84 0002E8E4 48 1F B0 B1 */ bl func_8022DD34 lbl_80032C88: /* 80032C88 0002E8E8 7C 7F 1B 78 */ mr r31, r3 lbl_80032C8C: /* 80032C8C 0002E8EC 4B FD 9B 5D */ bl func_8000C7E8 /* 80032C90 0002E8F0 7F E5 FB 78 */ mr r5, r31 /* 80032C94 0002E8F4 38 80 00 04 */ li r4, 4 /* 80032C98 0002E8F8 4B FE F2 2D */ bl func_80021EC4 /* 80032C9C 0002E8FC 48 00 01 8C */ b lbl_80032E28 lbl_80032CA0: /* 80032CA0 0002E900 4B FD 9B 49 */ bl func_8000C7E8 /* 80032CA4 0002E904 38 80 00 04 */ li r4, 4 /* 80032CA8 0002E908 38 A0 00 00 */ li r5, 0 /* 80032CAC 0002E90C 4B FE F2 19 */ bl func_80021EC4 /* 80032CB0 0002E910 48 00 01 78 */ b lbl_80032E28 /* 80032CB4 0002E914 4B FD 9B 35 */ bl func_8000C7E8 /* 80032CB8 0002E918 38 80 00 05 */ li r4, 5 /* 80032CBC 0002E91C 38 A0 00 00 */ li r5, 0 /* 80032CC0 0002E920 4B FE F2 05 */ bl func_80021EC4 /* 80032CC4 0002E924 48 00 01 64 */ b lbl_80032E28 /* 80032CC8 0002E928 4B FD 9B 21 */ bl func_8000C7E8 /* 80032CCC 0002E92C 38 80 00 06 */ li r4, 6 /* 80032CD0 0002E930 38 A0 00 00 */ li r5, 0 /* 80032CD4 0002E934 4B FE F1 F1 */ bl func_80021EC4 /* 80032CD8 0002E938 48 00 01 50 */ b lbl_80032E28 /* 80032CDC 0002E93C 4B FD 9B 0D */ bl func_8000C7E8 /* 80032CE0 0002E940 38 80 00 07 */ li r4, 7 /* 80032CE4 0002E944 38 A0 00 00 */ li r5, 0 /* 80032CE8 0002E948 4B FE F1 DD */ bl func_80021EC4 /* 80032CEC 0002E94C 48 00 01 3C */ b lbl_80032E28 /* 80032CF0 0002E950 4B FD 9A F9 */ bl func_8000C7E8 /* 80032CF4 0002E954 38 80 00 08 */ li r4, 8 /* 80032CF8 0002E958 38 A0 00 00 */ li r5, 0 /* 80032CFC 0002E95C 4B FE F1 C9 */ bl func_80021EC4 /* 80032D00 0002E960 48 00 01 28 */ b lbl_80032E28 /* 80032D04 0002E964 4B FD 9A E5 */ bl func_8000C7E8 /* 80032D08 0002E968 38 80 00 09 */ li r4, 9 /* 80032D0C 0002E96C 38 A0 00 00 */ li r5, 0 /* 80032D10 0002E970 4B FE F1 B5 */ bl func_80021EC4 /* 80032D14 0002E974 48 00 01 14 */ b lbl_80032E28 /* 80032D18 0002E978 4B FD 9A D1 */ bl func_8000C7E8 /* 80032D1C 0002E97C 38 80 00 0A */ li r4, 0xa /* 80032D20 0002E980 38 A0 00 00 */ li r5, 0 /* 80032D24 0002E984 4B FE F1 A1 */ bl func_80021EC4 /* 80032D28 0002E988 48 00 01 00 */ b lbl_80032E28 /* 80032D2C 0002E98C 4B FD 9A BD */ bl func_8000C7E8 /* 80032D30 0002E990 38 80 00 0B */ li r4, 0xb /* 80032D34 0002E994 38 A0 00 00 */ li r5, 0 /* 80032D38 0002E998 4B FE F1 8D */ bl func_80021EC4 /* 80032D3C 0002E99C 48 00 00 EC */ b lbl_80032E28 /* 80032D40 0002E9A0 A8 05 00 08 */ lha r0, 8(r5) /* 80032D44 0002E9A4 2C 00 00 01 */ cmpwi r0, 1 /* 80032D48 0002E9A8 40 82 00 0C */ bne lbl_80032D54 /* 80032D4C 0002E9AC 83 E5 00 0C */ lwz r31, 0xc(r5) /* 80032D50 0002E9B0 48 00 00 2C */ b lbl_80032D7C lbl_80032D54: /* 80032D54 0002E9B4 2C 00 00 02 */ cmpwi r0, 2 /* 80032D58 0002E9B8 40 82 00 18 */ bne lbl_80032D70 /* 80032D5C 0002E9BC C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032D60 0002E9C0 FC 00 00 1E */ fctiwz f0, f0 /* 80032D64 0002E9C4 D8 01 00 08 */ stfd f0, 8(r1) /* 80032D68 0002E9C8 80 61 00 0C */ lwz r3, 0xc(r1) /* 80032D6C 0002E9CC 48 00 00 0C */ b lbl_80032D78 lbl_80032D70: /* 80032D70 0002E9D0 38 65 00 08 */ addi r3, r5, 8 /* 80032D74 0002E9D4 48 1F AF C1 */ bl func_8022DD34 lbl_80032D78: /* 80032D78 0002E9D8 7C 7F 1B 78 */ mr r31, r3 lbl_80032D7C: /* 80032D7C 0002E9DC 4B FD 9A 6D */ bl func_8000C7E8 /* 80032D80 0002E9E0 7F E5 FB 78 */ mr r5, r31 /* 80032D84 0002E9E4 38 80 00 0C */ li r4, 0xc /* 80032D88 0002E9E8 4B FE F1 3D */ bl func_80021EC4 /* 80032D8C 0002E9EC 48 00 00 9C */ b lbl_80032E28 /* 80032D90 0002E9F0 A8 05 00 08 */ lha r0, 8(r5) /* 80032D94 0002E9F4 2C 00 00 01 */ cmpwi r0, 1 /* 80032D98 0002E9F8 40 82 00 0C */ bne lbl_80032DA4 /* 80032D9C 0002E9FC 80 65 00 0C */ lwz r3, 0xc(r5) /* 80032DA0 0002EA00 48 00 00 28 */ b lbl_80032DC8 lbl_80032DA4: /* 80032DA4 0002EA04 2C 00 00 02 */ cmpwi r0, 2 /* 80032DA8 0002EA08 40 82 00 18 */ bne lbl_80032DC0 /* 80032DAC 0002EA0C C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032DB0 0002EA10 FC 00 00 1E */ fctiwz f0, f0 /* 80032DB4 0002EA14 D8 01 00 08 */ stfd f0, 8(r1) /* 80032DB8 0002EA18 80 61 00 0C */ lwz r3, 0xc(r1) /* 80032DBC 0002EA1C 48 00 00 0C */ b lbl_80032DC8 lbl_80032DC0: /* 80032DC0 0002EA20 38 65 00 08 */ addi r3, r5, 8 /* 80032DC4 0002EA24 48 1F AF 71 */ bl func_8022DD34 lbl_80032DC8: /* 80032DC8 0002EA28 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80032DCC 0002EA2C 4B FF 19 E1 */ bl func_800247AC /* 80032DD0 0002EA30 48 00 00 58 */ b lbl_80032E28 /* 80032DD4 0002EA34 A8 05 00 08 */ lha r0, 8(r5) /* 80032DD8 0002EA38 2C 00 00 01 */ cmpwi r0, 1 /* 80032DDC 0002EA3C 40 82 00 0C */ bne lbl_80032DE8 /* 80032DE0 0002EA40 80 65 00 0C */ lwz r3, 0xc(r5) /* 80032DE4 0002EA44 48 00 00 28 */ b lbl_80032E0C lbl_80032DE8: /* 80032DE8 0002EA48 2C 00 00 02 */ cmpwi r0, 2 /* 80032DEC 0002EA4C 40 82 00 18 */ bne lbl_80032E04 /* 80032DF0 0002EA50 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80032DF4 0002EA54 FC 00 00 1E */ fctiwz f0, f0 /* 80032DF8 0002EA58 D8 01 00 08 */ stfd f0, 8(r1) /* 80032DFC 0002EA5C 80 61 00 0C */ lwz r3, 0xc(r1) /* 80032E00 0002EA60 48 00 00 0C */ b lbl_80032E0C lbl_80032E04: /* 80032E04 0002EA64 38 65 00 08 */ addi r3, r5, 8 /* 80032E08 0002EA68 48 1F AF 2D */ bl func_8022DD34 lbl_80032E0C: /* 80032E0C 0002EA6C 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80032E10 0002EA70 4B FF 1A 91 */ bl func_800248A0 /* 80032E14 0002EA74 48 00 00 14 */ b lbl_80032E28 lbl_80032E18: /* 80032E18 0002EA78 4B FD 99 D1 */ bl func_8000C7E8 /* 80032E1C 0002EA7C 38 80 00 0D */ li r4, 0xd /* 80032E20 0002EA80 38 A0 00 00 */ li r5, 0 /* 80032E24 0002EA84 4B FE F0 A1 */ bl func_80021EC4 lbl_80032E28: /* 80032E28 0002EA88 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80032E2C 0002EA8C 38 60 00 01 */ li r3, 1 /* 80032E30 0002EA90 80 01 00 24 */ lwz r0, 0x24(r1) /* 80032E34 0002EA94 7C 08 03 A6 */ mtlr r0 /* 80032E38 0002EA98 38 21 00 20 */ addi r1, r1, 0x20 /* 80032E3C 0002EA9C 4E 80 00 20 */ blr .global func_80032E40 func_80032E40: /* 80032E40 0002EAA0 38 A0 00 01 */ li r5, 1 /* 80032E44 0002EAA4 38 6D 97 80 */ addi r3, r13, lbl_8063EA40-_SDA_BASE_ /* 80032E48 0002EAA8 38 80 00 04 */ li r4, 4 /* 80032E4C 0002EAAC 38 00 00 00 */ li r0, 0 /* 80032E50 0002EAB0 98 AD 97 80 */ stb r5, lbl_8063EA40-_SDA_BASE_(r13) /* 80032E54 0002EAB4 B0 83 00 02 */ sth r4, 2(r3) /* 80032E58 0002EAB8 98 03 00 04 */ stb r0, 4(r3) /* 80032E5C 0002EABC 4E 80 00 20 */ blr .global func_80032E60 func_80032E60: /* 80032E60 0002EAC0 4E 80 00 20 */ blr .global func_80032E64 func_80032E64: /* 80032E64 0002EAC4 A0 A4 00 00 */ lhz r5, 0(r4) /* 80032E68 0002EAC8 38 04 00 08 */ addi r0, r4, 8 /* 80032E6C 0002EACC 38 C0 00 00 */ li r6, 0 /* 80032E70 0002EAD0 90 A3 00 00 */ stw r5, 0(r3) /* 80032E74 0002EAD4 90 03 00 04 */ stw r0, 4(r3) /* 80032E78 0002EAD8 48 00 00 34 */ b lbl_80032EAC lbl_80032E7C: /* 80032E7C 0002EADC 7C 04 02 14 */ add r0, r4, r0 /* 80032E80 0002EAE0 7C 05 31 2E */ stwx r0, r5, r6 /* 80032E84 0002EAE4 80 A3 00 04 */ lwz r5, 4(r3) /* 80032E88 0002EAE8 7C A5 30 2E */ lwzx r5, r5, r6 /* 80032E8C 0002EAEC 48 00 00 10 */ b lbl_80032E9C lbl_80032E90: /* 80032E90 0002EAF0 7C 04 02 14 */ add r0, r4, r0 /* 80032E94 0002EAF4 90 05 00 00 */ stw r0, 0(r5) /* 80032E98 0002EAF8 38 A5 00 04 */ addi r5, r5, 4 lbl_80032E9C: /* 80032E9C 0002EAFC 80 05 00 00 */ lwz r0, 0(r5) /* 80032EA0 0002EB00 2C 00 00 00 */ cmpwi r0, 0 /* 80032EA4 0002EB04 40 82 FF EC */ bne lbl_80032E90 /* 80032EA8 0002EB08 38 C6 00 04 */ addi r6, r6, 4 lbl_80032EAC: /* 80032EAC 0002EB0C 80 A3 00 04 */ lwz r5, 4(r3) /* 80032EB0 0002EB10 7C 05 30 2E */ lwzx r0, r5, r6 /* 80032EB4 0002EB14 2C 00 00 00 */ cmpwi r0, 0 /* 80032EB8 0002EB18 40 82 FF C4 */ bne lbl_80032E7C /* 80032EBC 0002EB1C 4E 80 00 20 */ blr .global func_80032EC0 func_80032EC0: /* 80032EC0 0002EB20 2C 04 00 00 */ cmpwi r4, 0 /* 80032EC4 0002EB24 41 80 00 10 */ blt lbl_80032ED4 /* 80032EC8 0002EB28 80 03 00 00 */ lwz r0, 0(r3) /* 80032ECC 0002EB2C 7C 04 00 40 */ cmplw r4, r0 /* 80032ED0 0002EB30 41 80 00 0C */ blt lbl_80032EDC lbl_80032ED4: /* 80032ED4 0002EB34 38 60 00 00 */ li r3, 0 /* 80032ED8 0002EB38 4E 80 00 20 */ blr lbl_80032EDC: /* 80032EDC 0002EB3C 80 63 00 04 */ lwz r3, 4(r3) /* 80032EE0 0002EB40 54 80 10 3A */ slwi r0, r4, 2 /* 80032EE4 0002EB44 7C 63 00 2E */ lwzx r3, r3, r0 /* 80032EE8 0002EB48 4E 80 00 20 */ blr .global func_80032EEC func_80032EEC: /* 80032EEC 0002EB4C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80032EF0 0002EB50 7C 08 02 A6 */ mflr r0 /* 80032EF4 0002EB54 90 01 00 24 */ stw r0, 0x24(r1) /* 80032EF8 0002EB58 39 61 00 20 */ addi r11, r1, 0x20 /* 80032EFC 0002EB5C 48 19 42 2D */ bl _savegpr_27 /* 80032F00 0002EB60 7C BB 2B 78 */ mr r27, r5 /* 80032F04 0002EB64 7C DC 33 78 */ mr r28, r6 /* 80032F08 0002EB68 4B FF FF B9 */ bl func_80032EC0 /* 80032F0C 0002EB6C 2C 03 00 00 */ cmpwi r3, 0 /* 80032F10 0002EB70 40 82 00 0C */ bne lbl_80032F1C /* 80032F14 0002EB74 38 60 00 00 */ li r3, 0 /* 80032F18 0002EB78 48 00 00 98 */ b lbl_80032FB0 lbl_80032F1C: /* 80032F1C 0002EB7C 7C 7E 1B 78 */ mr r30, r3 /* 80032F20 0002EB80 48 00 00 80 */ b lbl_80032FA0 lbl_80032F24: /* 80032F24 0002EB84 88 1D 00 00 */ lbz r0, 0(r29) /* 80032F28 0002EB88 88 7D 00 01 */ lbz r3, 1(r29) /* 80032F2C 0002EB8C 2C 00 00 02 */ cmpwi r0, 2 /* 80032F30 0002EB90 8B FD 00 02 */ lbz r31, 2(r29) /* 80032F34 0002EB94 50 7F 44 2E */ rlwimi r31, r3, 8, 0x10, 0x17 /* 80032F38 0002EB98 41 82 00 2C */ beq lbl_80032F64 /* 80032F3C 0002EB9C 40 80 00 14 */ bge lbl_80032F50 /* 80032F40 0002EBA0 2C 00 00 00 */ cmpwi r0, 0 /* 80032F44 0002EBA4 41 82 00 58 */ beq lbl_80032F9C /* 80032F48 0002EBA8 40 80 00 14 */ bge lbl_80032F5C /* 80032F4C 0002EBAC 48 00 00 50 */ b lbl_80032F9C lbl_80032F50: /* 80032F50 0002EBB0 2C 00 00 04 */ cmpwi r0, 4 /* 80032F54 0002EBB4 40 80 00 48 */ bge lbl_80032F9C /* 80032F58 0002EBB8 48 00 00 20 */ b lbl_80032F78 lbl_80032F5C: /* 80032F5C 0002EBBC 38 7D 00 03 */ addi r3, r29, 3 /* 80032F60 0002EBC0 48 00 00 50 */ b lbl_80032FB0 lbl_80032F64: /* 80032F64 0002EBC4 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 80032F68 0002EBC8 7C 00 D8 00 */ cmpw r0, r27 /* 80032F6C 0002EBCC 40 82 00 30 */ bne lbl_80032F9C /* 80032F70 0002EBD0 38 7D 00 03 */ addi r3, r29, 3 /* 80032F74 0002EBD4 48 00 00 3C */ b lbl_80032FB0 lbl_80032F78: /* 80032F78 0002EBD8 48 00 B1 E5 */ bl func_8003E15C /* 80032F7C 0002EBDC 7F 84 E3 78 */ mr r4, r28 /* 80032F80 0002EBE0 57 E5 04 3E */ clrlwi r5, r31, 0x10 /* 80032F84 0002EBE4 48 00 B4 B1 */ bl func_8003E434 /* 80032F88 0002EBE8 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80032F8C 0002EBEC 28 00 FF FF */ cmplwi r0, 0xffff /* 80032F90 0002EBF0 41 82 00 0C */ beq lbl_80032F9C /* 80032F94 0002EBF4 38 7D 00 03 */ addi r3, r29, 3 /* 80032F98 0002EBF8 48 00 00 18 */ b lbl_80032FB0 lbl_80032F9C: /* 80032F9C 0002EBFC 3B DE 00 04 */ addi r30, r30, 4 lbl_80032FA0: /* 80032FA0 0002EC00 83 BE 00 00 */ lwz r29, 0(r30) /* 80032FA4 0002EC04 2C 1D 00 00 */ cmpwi r29, 0 /* 80032FA8 0002EC08 40 82 FF 7C */ bne lbl_80032F24 /* 80032FAC 0002EC0C 38 60 00 00 */ li r3, 0 lbl_80032FB0: /* 80032FB0 0002EC10 39 61 00 20 */ addi r11, r1, 0x20 /* 80032FB4 0002EC14 48 19 41 C1 */ bl _restgpr_27 /* 80032FB8 0002EC18 80 01 00 24 */ lwz r0, 0x24(r1) /* 80032FBC 0002EC1C 7C 08 03 A6 */ mtlr r0 /* 80032FC0 0002EC20 38 21 00 20 */ addi r1, r1, 0x20 /* 80032FC4 0002EC24 4E 80 00 20 */ blr .global func_80032FC8 func_80032FC8: /* 80032FC8 0002EC28 38 A0 00 01 */ li r5, 1 /* 80032FCC 0002EC2C 38 6D 97 88 */ addi r3, r13, lbl_8063EA48-_SDA_BASE_ /* 80032FD0 0002EC30 38 80 00 04 */ li r4, 4 /* 80032FD4 0002EC34 38 00 00 00 */ li r0, 0 /* 80032FD8 0002EC38 98 AD 97 88 */ stb r5, lbl_8063EA48-_SDA_BASE_(r13) /* 80032FDC 0002EC3C B0 83 00 02 */ sth r4, 2(r3) /* 80032FE0 0002EC40 98 03 00 04 */ stb r0, 4(r3) /* 80032FE4 0002EC44 4E 80 00 20 */ blr lbl_80032FE8: /* 80032FE8 0002EC48 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80032FEC 0002EC4C 7C 08 02 A6 */ mflr r0 /* 80032FF0 0002EC50 90 01 00 14 */ stw r0, 0x14(r1) /* 80032FF4 0002EC54 80 0D 97 98 */ lwz r0, lbl_8063EA58-_SDA_BASE_(r13) /* 80032FF8 0002EC58 2C 00 00 00 */ cmpwi r0, 0 /* 80032FFC 0002EC5C 41 82 00 10 */ beq lbl_8003300C /* 80033000 0002EC60 4B FD 43 9D */ bl func_8000739C /* 80033004 0002EC64 80 6D 97 98 */ lwz r3, lbl_8063EA58-_SDA_BASE_(r13) /* 80033008 0002EC68 48 00 04 99 */ bl func_800334A0 lbl_8003300C: /* 8003300C 0002EC6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80033010 0002EC70 7C 08 03 A6 */ mtlr r0 /* 80033014 0002EC74 38 21 00 10 */ addi r1, r1, 0x10 /* 80033018 0002EC78 4E 80 00 20 */ blr lbl_8003301C: /* 8003301C 0002EC7C 4E 80 00 20 */ blr .global func_80033020 func_80033020: /* 80033020 0002EC80 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80033024 0002EC84 7C 08 02 A6 */ mflr r0 /* 80033028 0002EC88 90 01 00 14 */ stw r0, 0x14(r1) /* 8003302C 0002EC8C 80 6D 97 98 */ lwz r3, lbl_8063EA58-_SDA_BASE_(r13) /* 80033030 0002EC90 2C 03 00 00 */ cmpwi r3, 0 /* 80033034 0002EC94 41 82 00 08 */ beq lbl_8003303C /* 80033038 0002EC98 48 1A 7A 81 */ bl func_801DAAB8 lbl_8003303C: /* 8003303C 0002EC9C 38 60 06 B4 */ li r3, 0x6b4 /* 80033040 0002ECA0 48 1A 79 F1 */ bl func_801DAA30 /* 80033044 0002ECA4 2C 03 00 00 */ cmpwi r3, 0 /* 80033048 0002ECA8 41 82 00 08 */ beq lbl_80033050 /* 8003304C 0002ECAC 48 00 00 45 */ bl func_80033090 lbl_80033050: /* 80033050 0002ECB0 3C 80 80 03 */ lis r4, lbl_80032FE8@ha /* 80033054 0002ECB4 3C A0 80 03 */ lis r5, lbl_8003301C@ha /* 80033058 0002ECB8 90 6D 97 98 */ stw r3, lbl_8063EA58-_SDA_BASE_(r13) /* 8003305C 0002ECBC 38 84 2F E8 */ addi r4, r4, lbl_80032FE8@l /* 80033060 0002ECC0 80 6D A4 B8 */ lwz r3, lbl_8063F778-_SDA_BASE_(r13) /* 80033064 0002ECC4 38 A5 30 1C */ addi r5, r5, lbl_8003301C@l /* 80033068 0002ECC8 38 C0 00 03 */ li r6, 3 /* 8003306C 0002ECCC 38 E0 00 0C */ li r7, 0xc /* 80033070 0002ECD0 48 20 BA E9 */ bl func_8023EB58 /* 80033074 0002ECD4 48 00 18 A5 */ bl func_80034918 /* 80033078 0002ECD8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003307C 0002ECDC 7C 08 03 A6 */ mtlr r0 /* 80033080 0002ECE0 38 21 00 10 */ addi r1, r1, 0x10 /* 80033084 0002ECE4 4E 80 00 20 */ blr .global func_80033088 func_80033088: /* 80033088 0002ECE8 80 6D 97 98 */ lwz r3, lbl_8063EA58-_SDA_BASE_(r13) /* 8003308C 0002ECEC 4E 80 00 20 */ blr .global func_80033090 func_80033090: /* 80033090 0002ECF0 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80033094 0002ECF4 7C 08 02 A6 */ mflr r0 /* 80033098 0002ECF8 90 01 00 84 */ stw r0, 0x84(r1) /* 8003309C 0002ECFC DB E1 00 70 */ stfd f31, 0x70(r1) /* 800330A0 0002ED00 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 800330A4 0002ED04 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800330A8 0002ED08 3B E3 01 68 */ addi r31, r3, 0x168 /* 800330AC 0002ED0C 93 C1 00 68 */ stw r30, 0x68(r1) /* 800330B0 0002ED10 7C 7E 1B 78 */ mr r30, r3 /* 800330B4 0002ED14 93 A1 00 64 */ stw r29, 0x64(r1) /* 800330B8 0002ED18 7F DD F3 78 */ mr r29, r30 lbl_800330BC: /* 800330BC 0002ED1C 7F A3 EB 78 */ mr r3, r29 /* 800330C0 0002ED20 48 00 22 C1 */ bl func_80035380 /* 800330C4 0002ED24 3B BD 00 B4 */ addi r29, r29, 0xb4 /* 800330C8 0002ED28 7C 1D F8 40 */ cmplw r29, r31 /* 800330CC 0002ED2C 41 80 FF F0 */ blt lbl_800330BC /* 800330D0 0002ED30 38 7E 02 04 */ addi r3, r30, 0x204 /* 800330D4 0002ED34 48 01 DD 65 */ bl func_80050E38 /* 800330D8 0002ED38 38 7E 02 64 */ addi r3, r30, 0x264 /* 800330DC 0002ED3C 48 01 DD 5D */ bl func_80050E38 /* 800330E0 0002ED40 3B BE 02 C4 */ addi r29, r30, 0x2c4 /* 800330E4 0002ED44 3B FE 03 9C */ addi r31, r30, 0x39c lbl_800330E8: /* 800330E8 0002ED48 7F A3 EB 78 */ mr r3, r29 /* 800330EC 0002ED4C 48 01 D2 39 */ bl func_80050324 /* 800330F0 0002ED50 3B BD 00 24 */ addi r29, r29, 0x24 /* 800330F4 0002ED54 7C 1D F8 40 */ cmplw r29, r31 /* 800330F8 0002ED58 41 80 FF F0 */ blt lbl_800330E8 /* 800330FC 0002ED5C 7F E3 FB 78 */ mr r3, r31 /* 80033100 0002ED60 48 01 DF E9 */ bl func_800510E8 /* 80033104 0002ED64 38 7E 04 5C */ addi r3, r30, 0x45c /* 80033108 0002ED68 48 01 DF E1 */ bl func_800510E8 /* 8003310C 0002ED6C 38 7E 05 1C */ addi r3, r30, 0x51c /* 80033110 0002ED70 48 01 DF D9 */ bl func_800510E8 /* 80033114 0002ED74 38 7E 05 DC */ addi r3, r30, 0x5dc /* 80033118 0002ED78 48 01 D2 0D */ bl func_80050324 /* 8003311C 0002ED7C 38 7E 06 00 */ addi r3, r30, 0x600 /* 80033120 0002ED80 48 01 D2 05 */ bl func_80050324 /* 80033124 0002ED84 38 7E 06 24 */ addi r3, r30, 0x624 /* 80033128 0002ED88 48 01 D1 FD */ bl func_80050324 /* 8003312C 0002ED8C 38 7E 06 48 */ addi r3, r30, 0x648 /* 80033130 0002ED90 48 01 D1 F5 */ bl func_80050324 /* 80033134 0002ED94 38 7E 06 6C */ addi r3, r30, 0x66c /* 80033138 0002ED98 48 01 D1 ED */ bl func_80050324 /* 8003313C 0002ED9C 38 7E 06 90 */ addi r3, r30, 0x690 /* 80033140 0002EDA0 48 01 D6 B1 */ bl func_800507F0 /* 80033144 0002EDA4 C0 42 81 C8 */ lfs f2, lbl_806407C8-_SDA2_BASE_(r2) /* 80033148 0002EDA8 38 00 00 00 */ li r0, 0 /* 8003314C 0002EDAC C0 22 81 CC */ lfs f1, lbl_806407CC-_SDA2_BASE_(r2) /* 80033150 0002EDB0 C0 02 81 D0 */ lfs f0, lbl_806407D0-_SDA2_BASE_(r2) /* 80033154 0002EDB4 D0 41 00 50 */ stfs f2, 0x50(r1) /* 80033158 0002EDB8 D0 21 00 54 */ stfs f1, 0x54(r1) /* 8003315C 0002EDBC D0 01 00 58 */ stfs f0, 0x58(r1) /* 80033160 0002EDC0 98 1E 01 A5 */ stb r0, 0x1a5(r30) /* 80033164 0002EDC4 48 00 D0 91 */ bl func_800401F4 /* 80033168 0002EDC8 2C 03 00 00 */ cmpwi r3, 0 /* 8003316C 0002EDCC 7C 7F 1B 78 */ mr r31, r3 /* 80033170 0002EDD0 40 82 00 0C */ bne lbl_8003317C /* 80033174 0002EDD4 7F C3 F3 78 */ mr r3, r30 /* 80033178 0002EDD8 48 00 02 EC */ b lbl_80033464 lbl_8003317C: /* 8003317C 0002EDDC 3C 60 80 49 */ lis r3, lbl_80496754@ha /* 80033180 0002EDE0 C3 E2 81 D8 */ lfs f31, lbl_806407D8-_SDA2_BASE_(r2) /* 80033184 0002EDE4 38 63 67 54 */ addi r3, r3, lbl_80496754@l /* 80033188 0002EDE8 80 A3 00 04 */ lwz r5, 4(r3) /* 8003318C 0002EDEC 80 05 01 04 */ lwz r0, 0x104(r5) /* 80033190 0002EDF0 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 80033194 0002EDF4 28 00 00 01 */ cmplwi r0, 1 /* 80033198 0002EDF8 40 82 00 30 */ bne lbl_800331C8 /* 8003319C 0002EDFC C3 E5 01 6C */ lfs f31, 0x16c(r5) /* 800331A0 0002EE00 C0 02 81 D4 */ lfs f0, lbl_806407D4-_SDA2_BASE_(r2) /* 800331A4 0002EE04 C0 22 81 DC */ lfs f1, lbl_806407DC-_SDA2_BASE_(r2) /* 800331A8 0002EE08 D0 05 01 68 */ stfs f0, 0x168(r5) /* 800331AC 0002EE0C C0 02 81 E0 */ lfs f0, lbl_806407E0-_SDA2_BASE_(r2) /* 800331B0 0002EE10 D0 25 01 7C */ stfs f1, 0x17c(r5) /* 800331B4 0002EE14 D0 05 01 80 */ stfs f0, 0x180(r5) /* 800331B8 0002EE18 80 05 01 04 */ lwz r0, 0x104(r5) /* 800331BC 0002EE1C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 800331C0 0002EE20 60 00 00 09 */ ori r0, r0, 9 /* 800331C4 0002EE24 90 05 01 04 */ stw r0, 0x104(r5) lbl_800331C8: /* 800331C8 0002EE28 C0 42 81 E8 */ lfs f2, lbl_806407E8-_SDA2_BASE_(r2) /* 800331CC 0002EE2C 3C 80 80 49 */ lis r4, lbl_80493614@ha /* 800331D0 0002EE30 C0 01 00 50 */ lfs f0, 0x50(r1) /* 800331D4 0002EE34 38 64 36 14 */ addi r3, r4, lbl_80493614@l /* 800331D8 0002EE38 C0 21 00 54 */ lfs f1, 0x54(r1) /* 800331DC 0002EE3C EC E0 00 B2 */ fmuls f7, f0, f2 /* 800331E0 0002EE40 C0 82 81 E4 */ lfs f4, lbl_806407E4-_SDA2_BASE_(r2) /* 800331E4 0002EE44 EC C1 00 B2 */ fmuls f6, f1, f2 /* 800331E8 0002EE48 C0 22 81 EC */ lfs f1, lbl_806407EC-_SDA2_BASE_(r2) /* 800331EC 0002EE4C C0 01 00 58 */ lfs f0, 0x58(r1) /* 800331F0 0002EE50 D0 E5 01 AC */ stfs f7, 0x1ac(r5) /* 800331F4 0002EE54 EC A0 00 72 */ fmuls f5, f0, f1 /* 800331F8 0002EE58 C0 62 81 CC */ lfs f3, lbl_806407CC-_SDA2_BASE_(r2) /* 800331FC 0002EE5C D0 C5 01 B0 */ stfs f6, 0x1b0(r5) /* 80033200 0002EE60 D0 A5 01 B4 */ stfs f5, 0x1b4(r5) /* 80033204 0002EE64 C0 04 36 14 */ lfs f0, 0x3614(r4) /* 80033208 0002EE68 D0 81 00 2C */ stfs f4, 0x2c(r1) /* 8003320C 0002EE6C D0 05 01 B8 */ stfs f0, 0x1b8(r5) /* 80033210 0002EE70 C0 03 00 04 */ lfs f0, 4(r3) /* 80033214 0002EE74 D0 61 00 30 */ stfs f3, 0x30(r1) /* 80033218 0002EE78 D0 05 01 BC */ stfs f0, 0x1bc(r5) /* 8003321C 0002EE7C C0 03 00 08 */ lfs f0, 8(r3) /* 80033220 0002EE80 D0 81 00 34 */ stfs f4, 0x34(r1) /* 80033224 0002EE84 D0 05 01 C0 */ stfs f0, 0x1c0(r5) /* 80033228 0002EE88 D0 85 01 C4 */ stfs f4, 0x1c4(r5) /* 8003322C 0002EE8C D0 65 01 C8 */ stfs f3, 0x1c8(r5) /* 80033230 0002EE90 D0 85 01 CC */ stfs f4, 0x1cc(r5) /* 80033234 0002EE94 80 05 01 04 */ lwz r0, 0x104(r5) /* 80033238 0002EE98 D0 41 00 38 */ stfs f2, 0x38(r1) /* 8003323C 0002EE9C 60 00 00 30 */ ori r0, r0, 0x30 /* 80033240 0002EEA0 90 05 01 04 */ stw r0, 0x104(r5) /* 80033244 0002EEA4 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 80033248 0002EEA8 D0 21 00 40 */ stfs f1, 0x40(r1) /* 8003324C 0002EEAC D0 E1 00 44 */ stfs f7, 0x44(r1) /* 80033250 0002EEB0 D0 C1 00 48 */ stfs f6, 0x48(r1) /* 80033254 0002EEB4 D0 A1 00 4C */ stfs f5, 0x4c(r1) /* 80033258 0002EEB8 90 BE 00 04 */ stw r5, 4(r30) /* 8003325C 0002EEBC 48 00 16 BD */ bl func_80034918 /* 80033260 0002EEC0 7F E3 FB 78 */ mr r3, r31 /* 80033264 0002EEC4 48 00 D0 71 */ bl func_800402D4 /* 80033268 0002EEC8 7C 64 1B 78 */ mr r4, r3 /* 8003326C 0002EECC 7F C3 F3 78 */ mr r3, r30 /* 80033270 0002EED0 48 00 21 8D */ bl func_800353FC /* 80033274 0002EED4 38 00 00 01 */ li r0, 1 /* 80033278 0002EED8 98 1E 00 01 */ stb r0, 1(r30) /* 8003327C 0002EEDC 48 00 16 9D */ bl func_80034918 /* 80033280 0002EEE0 48 1A 78 A9 */ bl func_801DAB28 /* 80033284 0002EEE4 2C 03 00 00 */ cmpwi r3, 0 /* 80033288 0002EEE8 41 82 00 14 */ beq lbl_8003329C /* 8003328C 0002EEEC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80033290 0002EEF0 38 80 02 64 */ li r4, 0x264 /* 80033294 0002EEF4 48 1A 7A 01 */ bl func_801DAC94 /* 80033298 0002EEF8 48 00 00 08 */ b lbl_800332A0 lbl_8003329C: /* 8003329C 0002EEFC 38 60 00 00 */ li r3, 0 lbl_800332A0: /* 800332A0 0002EF00 2C 03 00 00 */ cmpwi r3, 0 /* 800332A4 0002EF04 41 82 00 08 */ beq lbl_800332AC /* 800332A8 0002EF08 48 1A AC D1 */ bl func_801DDF78 lbl_800332AC: /* 800332AC 0002EF0C C0 02 81 D4 */ lfs f0, lbl_806407D4-_SDA2_BASE_(r2) /* 800332B0 0002EF10 3C A0 80 49 */ lis r5, lbl_80493614@ha /* 800332B4 0002EF14 C0 42 81 E8 */ lfs f2, lbl_806407E8-_SDA2_BASE_(r2) /* 800332B8 0002EF18 38 85 36 14 */ addi r4, r5, lbl_80493614@l /* 800332BC 0002EF1C D0 03 01 68 */ stfs f0, 0x168(r3) /* 800332C0 0002EF20 C0 82 81 E4 */ lfs f4, lbl_806407E4-_SDA2_BASE_(r2) /* 800332C4 0002EF24 D3 E3 01 6C */ stfs f31, 0x16c(r3) /* 800332C8 0002EF28 C0 02 81 DC */ lfs f0, lbl_806407DC-_SDA2_BASE_(r2) /* 800332CC 0002EF2C C0 22 81 E0 */ lfs f1, lbl_806407E0-_SDA2_BASE_(r2) /* 800332D0 0002EF30 D0 03 01 7C */ stfs f0, 0x17c(r3) /* 800332D4 0002EF34 C0 01 00 50 */ lfs f0, 0x50(r1) /* 800332D8 0002EF38 D0 23 01 80 */ stfs f1, 0x180(r3) /* 800332DC 0002EF3C EC E0 00 B2 */ fmuls f7, f0, f2 /* 800332E0 0002EF40 C0 01 00 54 */ lfs f0, 0x54(r1) /* 800332E4 0002EF44 80 03 01 04 */ lwz r0, 0x104(r3) /* 800332E8 0002EF48 EC C0 00 B2 */ fmuls f6, f0, f2 /* 800332EC 0002EF4C C0 22 81 EC */ lfs f1, lbl_806407EC-_SDA2_BASE_(r2) /* 800332F0 0002EF50 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 800332F4 0002EF54 60 00 00 09 */ ori r0, r0, 9 /* 800332F8 0002EF58 C0 01 00 58 */ lfs f0, 0x58(r1) /* 800332FC 0002EF5C 90 03 01 04 */ stw r0, 0x104(r3) /* 80033300 0002EF60 EC A0 00 72 */ fmuls f5, f0, f1 /* 80033304 0002EF64 C0 62 81 CC */ lfs f3, lbl_806407CC-_SDA2_BASE_(r2) /* 80033308 0002EF68 D0 E3 01 AC */ stfs f7, 0x1ac(r3) /* 8003330C 0002EF6C D0 C3 01 B0 */ stfs f6, 0x1b0(r3) /* 80033310 0002EF70 D0 A3 01 B4 */ stfs f5, 0x1b4(r3) /* 80033314 0002EF74 C0 05 36 14 */ lfs f0, 0x3614(r5) /* 80033318 0002EF78 D0 81 00 08 */ stfs f4, 8(r1) /* 8003331C 0002EF7C D0 03 01 B8 */ stfs f0, 0x1b8(r3) /* 80033320 0002EF80 C0 04 00 04 */ lfs f0, 4(r4) /* 80033324 0002EF84 D0 61 00 0C */ stfs f3, 0xc(r1) /* 80033328 0002EF88 D0 03 01 BC */ stfs f0, 0x1bc(r3) /* 8003332C 0002EF8C C0 04 00 08 */ lfs f0, 8(r4) /* 80033330 0002EF90 D0 81 00 10 */ stfs f4, 0x10(r1) /* 80033334 0002EF94 D0 03 01 C0 */ stfs f0, 0x1c0(r3) /* 80033338 0002EF98 D0 83 01 C4 */ stfs f4, 0x1c4(r3) /* 8003333C 0002EF9C D0 63 01 C8 */ stfs f3, 0x1c8(r3) /* 80033340 0002EFA0 D0 83 01 CC */ stfs f4, 0x1cc(r3) /* 80033344 0002EFA4 80 03 01 04 */ lwz r0, 0x104(r3) /* 80033348 0002EFA8 D0 41 00 14 */ stfs f2, 0x14(r1) /* 8003334C 0002EFAC 60 00 00 30 */ ori r0, r0, 0x30 /* 80033350 0002EFB0 90 03 01 04 */ stw r0, 0x104(r3) /* 80033354 0002EFB4 D0 41 00 18 */ stfs f2, 0x18(r1) /* 80033358 0002EFB8 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 8003335C 0002EFBC D0 E1 00 20 */ stfs f7, 0x20(r1) /* 80033360 0002EFC0 D0 C1 00 24 */ stfs f6, 0x24(r1) /* 80033364 0002EFC4 D0 A1 00 28 */ stfs f5, 0x28(r1) /* 80033368 0002EFC8 90 7E 00 B8 */ stw r3, 0xb8(r30) /* 8003336C 0002EFCC 48 00 15 AD */ bl func_80034918 /* 80033370 0002EFD0 7F E3 FB 78 */ mr r3, r31 /* 80033374 0002EFD4 48 00 CF 61 */ bl func_800402D4 /* 80033378 0002EFD8 7C 64 1B 78 */ mr r4, r3 /* 8003337C 0002EFDC 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 80033380 0002EFE0 48 00 20 7D */ bl func_800353FC /* 80033384 0002EFE4 38 00 00 00 */ li r0, 0 /* 80033388 0002EFE8 98 1E 00 B5 */ stb r0, 0xb5(r30) /* 8003338C 0002EFEC 48 00 15 8D */ bl func_80034918 /* 80033390 0002EFF0 7F DD F3 78 */ mr r29, r30 /* 80033394 0002EFF4 3B E0 00 00 */ li r31, 0 lbl_80033398: /* 80033398 0002EFF8 C0 22 81 E4 */ lfs f1, lbl_806407E4-_SDA2_BASE_(r2) /* 8003339C 0002EFFC 7F A3 EB 78 */ mr r3, r29 /* 800333A0 0002F000 C0 62 81 E8 */ lfs f3, lbl_806407E8-_SDA2_BASE_(r2) /* 800333A4 0002F004 FC 40 08 90 */ fmr f2, f1 /* 800333A8 0002F008 FC 80 18 90 */ fmr f4, f3 /* 800333AC 0002F00C 48 00 21 51 */ bl func_800354FC /* 800333B0 0002F010 3B FF 00 01 */ addi r31, r31, 1 /* 800333B4 0002F014 3B BD 00 B4 */ addi r29, r29, 0xb4 /* 800333B8 0002F018 2C 1F 00 02 */ cmpwi r31, 2 /* 800333BC 0002F01C 41 80 FF DC */ blt lbl_80033398 /* 800333C0 0002F020 7F C3 F3 78 */ mr r3, r30 /* 800333C4 0002F024 38 80 00 00 */ li r4, 0 /* 800333C8 0002F028 48 00 14 F5 */ bl func_800348BC /* 800333CC 0002F02C C0 22 81 E4 */ lfs f1, lbl_806407E4-_SDA2_BASE_(r2) /* 800333D0 0002F030 38 E0 00 00 */ li r7, 0 /* 800333D4 0002F034 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 800333D8 0002F038 38 80 00 FF */ li r4, 0xff /* 800333DC 0002F03C C0 42 81 DC */ lfs f2, lbl_806407DC-_SDA2_BASE_(r2) /* 800333E0 0002F040 38 C0 00 19 */ li r6, 0x19 /* 800333E4 0002F044 38 A0 00 1E */ li r5, 0x1e /* 800333E8 0002F048 38 00 00 01 */ li r0, 1 /* 800333EC 0002F04C 98 FE 01 68 */ stb r7, 0x168(r30) /* 800333F0 0002F050 7F C3 F3 78 */ mr r3, r30 /* 800333F4 0002F054 D0 5E 01 6C */ stfs f2, 0x16c(r30) /* 800333F8 0002F058 98 FE 01 70 */ stb r7, 0x170(r30) /* 800333FC 0002F05C D0 5E 01 74 */ stfs f2, 0x174(r30) /* 80033400 0002F060 98 FE 01 71 */ stb r7, 0x171(r30) /* 80033404 0002F064 90 FE 01 78 */ stw r7, 0x178(r30) /* 80033408 0002F068 98 DE 01 7C */ stb r6, 0x17c(r30) /* 8003340C 0002F06C D0 3E 01 80 */ stfs f1, 0x180(r30) /* 80033410 0002F070 D0 3E 01 84 */ stfs f1, 0x184(r30) /* 80033414 0002F074 98 FE 01 88 */ stb r7, 0x188(r30) /* 80033418 0002F078 D0 1E 01 8C */ stfs f0, 0x18c(r30) /* 8003341C 0002F07C 90 FE 01 90 */ stw r7, 0x190(r30) /* 80033420 0002F080 98 BE 01 94 */ stb r5, 0x194(r30) /* 80033424 0002F084 D0 3E 01 98 */ stfs f1, 0x198(r30) /* 80033428 0002F088 D0 3E 01 9C */ stfs f1, 0x19c(r30) /* 8003342C 0002F08C D0 3E 01 D0 */ stfs f1, 0x1d0(r30) /* 80033430 0002F090 D0 3E 01 D4 */ stfs f1, 0x1d4(r30) /* 80033434 0002F094 98 9E 01 DC */ stb r4, 0x1dc(r30) /* 80033438 0002F098 98 9E 01 DD */ stb r4, 0x1dd(r30) /* 8003343C 0002F09C 98 9E 01 DE */ stb r4, 0x1de(r30) /* 80033440 0002F0A0 98 9E 01 DF */ stb r4, 0x1df(r30) /* 80033444 0002F0A4 90 1E 01 E4 */ stw r0, 0x1e4(r30) /* 80033448 0002F0A8 90 FE 01 E0 */ stw r7, 0x1e0(r30) /* 8003344C 0002F0AC D0 3E 01 E8 */ stfs f1, 0x1e8(r30) /* 80033450 0002F0B0 D0 3E 01 EC */ stfs f1, 0x1ec(r30) /* 80033454 0002F0B4 D0 3E 01 F0 */ stfs f1, 0x1f0(r30) /* 80033458 0002F0B8 D0 1E 01 F4 */ stfs f0, 0x1f4(r30) /* 8003345C 0002F0BC D0 1E 01 F8 */ stfs f0, 0x1f8(r30) /* 80033460 0002F0C0 D0 1E 01 FC */ stfs f0, 0x1fc(r30) lbl_80033464: /* 80033464 0002F0C4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80033468 0002F0C8 80 01 00 84 */ lwz r0, 0x84(r1) /* 8003346C 0002F0CC CB E1 00 70 */ lfd f31, 0x70(r1) /* 80033470 0002F0D0 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 80033474 0002F0D4 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80033478 0002F0D8 83 A1 00 64 */ lwz r29, 0x64(r1) /* 8003347C 0002F0DC 7C 08 03 A6 */ mtlr r0 /* 80033480 0002F0E0 38 21 00 80 */ addi r1, r1, 0x80 /* 80033484 0002F0E4 4E 80 00 20 */ blr .global func_80033488 func_80033488: /* 80033488 0002F0E8 38 00 00 01 */ li r0, 1 /* 8003348C 0002F0EC 98 03 01 A5 */ stb r0, 0x1a5(r3) /* 80033490 0002F0F0 4E 80 00 20 */ blr .global func_80033494 func_80033494: /* 80033494 0002F0F4 38 00 00 00 */ li r0, 0 /* 80033498 0002F0F8 98 03 01 A5 */ stb r0, 0x1a5(r3) /* 8003349C 0002F0FC 4E 80 00 20 */ blr .global func_800334A0 func_800334A0: /* 800334A0 0002F100 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800334A4 0002F104 7C 08 02 A6 */ mflr r0 /* 800334A8 0002F108 90 01 00 54 */ stw r0, 0x54(r1) /* 800334AC 0002F10C DB E1 00 40 */ stfd f31, 0x40(r1) /* 800334B0 0002F110 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 800334B4 0002F114 FF E0 08 90 */ fmr f31, f1 /* 800334B8 0002F118 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800334BC 0002F11C 93 C1 00 38 */ stw r30, 0x38(r1) /* 800334C0 0002F120 7C 7E 1B 78 */ mr r30, r3 /* 800334C4 0002F124 93 A1 00 34 */ stw r29, 0x34(r1) /* 800334C8 0002F128 93 81 00 30 */ stw r28, 0x30(r1) /* 800334CC 0002F12C 88 03 01 A5 */ lbz r0, 0x1a5(r3) /* 800334D0 0002F130 2C 00 00 00 */ cmpwi r0, 0 /* 800334D4 0002F134 41 82 06 80 */ beq lbl_80033B54 /* 800334D8 0002F138 88 03 01 88 */ lbz r0, 0x188(r3) /* 800334DC 0002F13C 2C 00 00 00 */ cmpwi r0, 0 /* 800334E0 0002F140 41 82 00 BC */ beq lbl_8003359C /* 800334E4 0002F144 48 00 24 8D */ bl func_80035970 /* 800334E8 0002F148 C0 03 01 C4 */ lfs f0, 0x1c4(r3) /* 800334EC 0002F14C 7C 7D 1B 78 */ mr r29, r3 /* 800334F0 0002F150 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800334F4 0002F154 C0 03 01 C8 */ lfs f0, 0x1c8(r3) /* 800334F8 0002F158 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800334FC 0002F15C C0 03 01 CC */ lfs f0, 0x1cc(r3) /* 80033500 0002F160 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80033504 0002F164 80 03 01 04 */ lwz r0, 0x104(r3) /* 80033508 0002F168 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 8003350C 0002F16C 41 82 00 40 */ beq lbl_8003354C /* 80033510 0002F170 38 61 00 14 */ addi r3, r1, 0x14 /* 80033514 0002F174 38 9D 01 AC */ addi r4, r29, 0x1ac /* 80033518 0002F178 7C 65 1B 78 */ mr r5, r3 /* 8003351C 0002F17C 48 24 97 CD */ bl func_8027CCE8 /* 80033520 0002F180 38 61 00 14 */ addi r3, r1, 0x14 /* 80033524 0002F184 48 24 98 61 */ bl func_8027CD84 /* 80033528 0002F188 C0 1D 01 84 */ lfs f0, 0x184(r29) /* 8003352C 0002F18C 38 61 00 14 */ addi r3, r1, 0x14 /* 80033530 0002F190 7C 64 1B 78 */ mr r4, r3 /* 80033534 0002F194 EC 20 08 24 */ fdivs f1, f0, f1 /* 80033538 0002F198 48 24 97 D5 */ bl func_8027CD0C /* 8003353C 0002F19C 38 61 00 14 */ addi r3, r1, 0x14 /* 80033540 0002F1A0 38 9D 01 AC */ addi r4, r29, 0x1ac /* 80033544 0002F1A4 7C 65 1B 78 */ mr r5, r3 /* 80033548 0002F1A8 48 24 97 7D */ bl func_8027CCC4 lbl_8003354C: /* 8003354C 0002F1AC 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80033550 0002F1B0 48 20 1D 6D */ bl func_802352BC /* 80033554 0002F1B4 C0 21 00 14 */ lfs f1, 0x14(r1) /* 80033558 0002F1B8 7C 65 1B 78 */ mr r5, r3 /* 8003355C 0002F1BC C0 41 00 18 */ lfs f2, 0x18(r1) /* 80033560 0002F1C0 38 7D 01 D4 */ addi r3, r29, 0x1d4 /* 80033564 0002F1C4 C0 61 00 1C */ lfs f3, 0x1c(r1) /* 80033568 0002F1C8 38 9D 01 4C */ addi r4, r29, 0x14c /* 8003356C 0002F1CC 38 C1 00 10 */ addi r6, r1, 0x10 /* 80033570 0002F1D0 38 E1 00 0C */ addi r7, r1, 0xc /* 80033574 0002F1D4 39 01 00 08 */ addi r8, r1, 8 /* 80033578 0002F1D8 48 25 32 95 */ bl func_8028680C /* 8003357C 0002F1DC C0 21 00 08 */ lfs f1, 8(r1) /* 80033580 0002F1E0 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80033584 0002F1E4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80033588 0002F1E8 40 81 00 08 */ ble lbl_80033590 /* 8003358C 0002F1EC 48 00 00 08 */ b lbl_80033594 lbl_80033590: /* 80033590 0002F1F0 FC 20 08 50 */ fneg f1, f1 lbl_80033594: /* 80033594 0002F1F4 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80033598 0002F1F8 D0 23 04 44 */ stfs f1, 0x444(r3) lbl_8003359C: /* 8003359C 0002F1FC 3B BE 02 C4 */ addi r29, r30, 0x2c4 /* 800335A0 0002F200 3B E0 00 00 */ li r31, 0 /* 800335A4 0002F204 3B 80 00 00 */ li r28, 0 lbl_800335A8: /* 800335A8 0002F208 81 9D 00 20 */ lwz r12, 0x20(r29) /* 800335AC 0002F20C FC 20 F8 90 */ fmr f1, f31 /* 800335B0 0002F210 7F A3 EB 78 */ mr r3, r29 /* 800335B4 0002F214 81 8C 00 08 */ lwz r12, 8(r12) /* 800335B8 0002F218 7D 89 03 A6 */ mtctr r12 /* 800335BC 0002F21C 4E 80 04 21 */ bctrl /* 800335C0 0002F220 2C 03 00 00 */ cmpwi r3, 0 /* 800335C4 0002F224 41 82 00 08 */ beq lbl_800335CC /* 800335C8 0002F228 3B E0 00 01 */ li r31, 1 lbl_800335CC: /* 800335CC 0002F22C 3B 9C 00 01 */ addi r28, r28, 1 /* 800335D0 0002F230 3B BD 00 24 */ addi r29, r29, 0x24 /* 800335D4 0002F234 2C 1C 00 06 */ cmpwi r28, 6 /* 800335D8 0002F238 41 80 FF D0 */ blt lbl_800335A8 /* 800335DC 0002F23C 81 9E 02 24 */ lwz r12, 0x224(r30) /* 800335E0 0002F240 FC 20 F8 90 */ fmr f1, f31 /* 800335E4 0002F244 38 7E 02 04 */ addi r3, r30, 0x204 /* 800335E8 0002F248 81 8C 00 08 */ lwz r12, 8(r12) /* 800335EC 0002F24C 7D 89 03 A6 */ mtctr r12 /* 800335F0 0002F250 4E 80 04 21 */ bctrl /* 800335F4 0002F254 2C 03 00 00 */ cmpwi r3, 0 /* 800335F8 0002F258 41 82 00 08 */ beq lbl_80033600 /* 800335FC 0002F25C 3B E0 00 01 */ li r31, 1 lbl_80033600: /* 80033600 0002F260 81 9E 02 84 */ lwz r12, 0x284(r30) /* 80033604 0002F264 FC 20 F8 90 */ fmr f1, f31 /* 80033608 0002F268 38 7E 02 64 */ addi r3, r30, 0x264 /* 8003360C 0002F26C 81 8C 00 08 */ lwz r12, 8(r12) /* 80033610 0002F270 7D 89 03 A6 */ mtctr r12 /* 80033614 0002F274 4E 80 04 21 */ bctrl /* 80033618 0002F278 2C 03 00 00 */ cmpwi r3, 0 /* 8003361C 0002F27C 41 82 00 08 */ beq lbl_80033624 /* 80033620 0002F280 3B E0 00 01 */ li r31, 1 lbl_80033624: /* 80033624 0002F284 81 9E 03 BC */ lwz r12, 0x3bc(r30) /* 80033628 0002F288 FC 20 F8 90 */ fmr f1, f31 /* 8003362C 0002F28C 38 7E 03 9C */ addi r3, r30, 0x39c /* 80033630 0002F290 81 8C 00 08 */ lwz r12, 8(r12) /* 80033634 0002F294 7D 89 03 A6 */ mtctr r12 /* 80033638 0002F298 4E 80 04 21 */ bctrl /* 8003363C 0002F29C 2C 03 00 00 */ cmpwi r3, 0 /* 80033640 0002F2A0 41 82 00 08 */ beq lbl_80033648 /* 80033644 0002F2A4 3B E0 00 01 */ li r31, 1 lbl_80033648: /* 80033648 0002F2A8 81 9E 04 7C */ lwz r12, 0x47c(r30) /* 8003364C 0002F2AC FC 20 F8 90 */ fmr f1, f31 /* 80033650 0002F2B0 38 7E 04 5C */ addi r3, r30, 0x45c /* 80033654 0002F2B4 81 8C 00 08 */ lwz r12, 8(r12) /* 80033658 0002F2B8 7D 89 03 A6 */ mtctr r12 /* 8003365C 0002F2BC 4E 80 04 21 */ bctrl /* 80033660 0002F2C0 2C 03 00 00 */ cmpwi r3, 0 /* 80033664 0002F2C4 41 82 00 08 */ beq lbl_8003366C /* 80033668 0002F2C8 3B E0 00 01 */ li r31, 1 lbl_8003366C: /* 8003366C 0002F2CC 81 9E 05 3C */ lwz r12, 0x53c(r30) /* 80033670 0002F2D0 FC 20 F8 90 */ fmr f1, f31 /* 80033674 0002F2D4 38 7E 05 1C */ addi r3, r30, 0x51c /* 80033678 0002F2D8 81 8C 00 08 */ lwz r12, 8(r12) /* 8003367C 0002F2DC 7D 89 03 A6 */ mtctr r12 /* 80033680 0002F2E0 4E 80 04 21 */ bctrl /* 80033684 0002F2E4 2C 03 00 00 */ cmpwi r3, 0 /* 80033688 0002F2E8 41 82 00 08 */ beq lbl_80033690 /* 8003368C 0002F2EC 3B E0 00 01 */ li r31, 1 lbl_80033690: /* 80033690 0002F2F0 81 9E 06 B0 */ lwz r12, 0x6b0(r30) /* 80033694 0002F2F4 FC 20 F8 90 */ fmr f1, f31 /* 80033698 0002F2F8 38 7E 06 90 */ addi r3, r30, 0x690 /* 8003369C 0002F2FC 81 8C 00 08 */ lwz r12, 8(r12) /* 800336A0 0002F300 7D 89 03 A6 */ mtctr r12 /* 800336A4 0002F304 4E 80 04 21 */ bctrl /* 800336A8 0002F308 2C 03 00 00 */ cmpwi r3, 0 /* 800336AC 0002F30C 41 82 00 08 */ beq lbl_800336B4 /* 800336B0 0002F310 3B E0 00 01 */ li r31, 1 lbl_800336B4: /* 800336B4 0002F314 2C 1F 00 00 */ cmpwi r31, 0 /* 800336B8 0002F318 41 82 00 78 */ beq lbl_80033730 /* 800336BC 0002F31C 80 1E 02 00 */ lwz r0, 0x200(r30) /* 800336C0 0002F320 28 00 00 07 */ cmplwi r0, 7 /* 800336C4 0002F324 41 81 00 6C */ bgt lbl_80033730 /* 800336C8 0002F328 3C 60 80 41 */ lis r3, lbl_8040A278@ha /* 800336CC 0002F32C 54 00 10 3A */ slwi r0, r0, 2 /* 800336D0 0002F330 38 63 A2 78 */ addi r3, r3, lbl_8040A278@l /* 800336D4 0002F334 7C 63 00 2E */ lwzx r3, r3, r0 /* 800336D8 0002F338 7C 69 03 A6 */ mtctr r3 /* 800336DC 0002F33C 4E 80 04 20 */ bctr /* 800336E0 0002F340 C0 3E 01 B8 */ lfs f1, 0x1b8(r30) /* 800336E4 0002F344 7F C3 F3 78 */ mr r3, r30 /* 800336E8 0002F348 C0 5E 01 BC */ lfs f2, 0x1bc(r30) /* 800336EC 0002F34C C0 7E 01 C0 */ lfs f3, 0x1c0(r30) /* 800336F0 0002F350 C0 9E 01 C4 */ lfs f4, 0x1c4(r30) /* 800336F4 0002F354 48 00 09 DD */ bl func_800340D0 /* 800336F8 0002F358 48 00 00 38 */ b lbl_80033730 /* 800336FC 0002F35C C0 3E 01 CC */ lfs f1, 0x1cc(r30) /* 80033700 0002F360 7F C3 F3 78 */ mr r3, r30 /* 80033704 0002F364 48 00 0A 6D */ bl func_80034170 /* 80033708 0002F368 48 00 00 28 */ b lbl_80033730 /* 8003370C 0002F36C C0 3E 01 C8 */ lfs f1, 0x1c8(r30) /* 80033710 0002F370 7F C3 F3 78 */ mr r3, r30 /* 80033714 0002F374 48 00 0B 6D */ bl func_80034280 /* 80033718 0002F378 48 00 00 18 */ b lbl_80033730 /* 8003371C 0002F37C 48 00 11 FD */ bl func_80034918 /* 80033720 0002F380 48 00 00 10 */ b lbl_80033730 /* 80033724 0002F384 48 00 11 F5 */ bl func_80034918 /* 80033728 0002F388 48 00 00 08 */ b lbl_80033730 /* 8003372C 0002F38C 48 00 11 ED */ bl func_80034918 lbl_80033730: /* 80033730 0002F390 FC 20 F8 90 */ fmr f1, f31 /* 80033734 0002F394 7F C3 F3 78 */ mr r3, r30 /* 80033738 0002F398 48 00 20 F1 */ bl func_80035828 /* 8003373C 0002F39C FC 20 F8 90 */ fmr f1, f31 /* 80033740 0002F3A0 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 80033744 0002F3A4 48 00 20 E5 */ bl func_80035828 /* 80033748 0002F3A8 81 9E 05 FC */ lwz r12, 0x5fc(r30) /* 8003374C 0002F3AC FC 20 F8 90 */ fmr f1, f31 /* 80033750 0002F3B0 38 7E 05 DC */ addi r3, r30, 0x5dc /* 80033754 0002F3B4 81 8C 00 08 */ lwz r12, 8(r12) /* 80033758 0002F3B8 7D 89 03 A6 */ mtctr r12 /* 8003375C 0002F3BC 4E 80 04 21 */ bctrl /* 80033760 0002F3C0 2C 03 00 00 */ cmpwi r3, 0 /* 80033764 0002F3C4 41 82 00 10 */ beq lbl_80033774 /* 80033768 0002F3C8 C0 1E 01 6C */ lfs f0, 0x16c(r30) /* 8003376C 0002F3CC 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80033770 0002F3D0 D0 03 04 50 */ stfs f0, 0x450(r3) lbl_80033774: /* 80033774 0002F3D4 81 9E 06 20 */ lwz r12, 0x620(r30) /* 80033778 0002F3D8 FC 20 F8 90 */ fmr f1, f31 /* 8003377C 0002F3DC 38 7E 06 00 */ addi r3, r30, 0x600 /* 80033780 0002F3E0 81 8C 00 08 */ lwz r12, 8(r12) /* 80033784 0002F3E4 7D 89 03 A6 */ mtctr r12 /* 80033788 0002F3E8 4E 80 04 21 */ bctrl /* 8003378C 0002F3EC 2C 03 00 00 */ cmpwi r3, 0 /* 80033790 0002F3F0 41 82 00 20 */ beq lbl_800337B0 /* 80033794 0002F3F4 C0 1E 01 D8 */ lfs f0, 0x1d8(r30) /* 80033798 0002F3F8 7F C3 F3 78 */ mr r3, r30 /* 8003379C 0002F3FC FC 00 00 1E */ fctiwz f0, f0 /* 800337A0 0002F400 D8 01 00 20 */ stfd f0, 0x20(r1) /* 800337A4 0002F404 80 01 00 24 */ lwz r0, 0x24(r1) /* 800337A8 0002F408 98 1E 01 94 */ stb r0, 0x194(r30) /* 800337AC 0002F40C 48 00 1A 7D */ bl func_80035228 lbl_800337B0: /* 800337B0 0002F410 81 9E 06 68 */ lwz r12, 0x668(r30) /* 800337B4 0002F414 FC 20 F8 90 */ fmr f1, f31 /* 800337B8 0002F418 38 7E 06 48 */ addi r3, r30, 0x648 /* 800337BC 0002F41C 3B 80 00 00 */ li r28, 0 /* 800337C0 0002F420 81 8C 00 08 */ lwz r12, 8(r12) /* 800337C4 0002F424 7D 89 03 A6 */ mtctr r12 /* 800337C8 0002F428 4E 80 04 21 */ bctrl /* 800337CC 0002F42C 2C 03 00 00 */ cmpwi r3, 0 /* 800337D0 0002F430 41 82 00 08 */ beq lbl_800337D8 /* 800337D4 0002F434 3B 80 00 01 */ li r28, 1 lbl_800337D8: /* 800337D8 0002F438 81 9E 06 8C */ lwz r12, 0x68c(r30) /* 800337DC 0002F43C FC 20 F8 90 */ fmr f1, f31 /* 800337E0 0002F440 38 7E 06 6C */ addi r3, r30, 0x66c /* 800337E4 0002F444 81 8C 00 08 */ lwz r12, 8(r12) /* 800337E8 0002F448 7D 89 03 A6 */ mtctr r12 /* 800337EC 0002F44C 4E 80 04 21 */ bctrl /* 800337F0 0002F450 2C 03 00 00 */ cmpwi r3, 0 /* 800337F4 0002F454 41 82 00 08 */ beq lbl_800337FC /* 800337F8 0002F458 3B 80 00 01 */ li r28, 1 lbl_800337FC: /* 800337FC 0002F45C 81 9E 06 44 */ lwz r12, 0x644(r30) /* 80033800 0002F460 FC 20 F8 90 */ fmr f1, f31 /* 80033804 0002F464 38 7E 06 24 */ addi r3, r30, 0x624 /* 80033808 0002F468 81 8C 00 08 */ lwz r12, 8(r12) /* 8003380C 0002F46C 7D 89 03 A6 */ mtctr r12 /* 80033810 0002F470 4E 80 04 21 */ bctrl /* 80033814 0002F474 2C 03 00 00 */ cmpwi r3, 0 /* 80033818 0002F478 41 82 00 08 */ beq lbl_80033820 /* 8003381C 0002F47C 3B 80 00 01 */ li r28, 1 lbl_80033820: /* 80033820 0002F480 2C 1C 00 00 */ cmpwi r28, 0 /* 80033824 0002F484 41 82 00 0C */ beq lbl_80033830 /* 80033828 0002F488 7F C3 F3 78 */ mr r3, r30 /* 8003382C 0002F48C 48 00 17 1D */ bl func_80034F48 lbl_80033830: /* 80033830 0002F490 88 1E 01 A4 */ lbz r0, 0x1a4(r30) /* 80033834 0002F494 2C 00 00 00 */ cmpwi r0, 0 /* 80033838 0002F498 41 82 03 1C */ beq lbl_80033B54 /* 8003383C 0002F49C 88 9E 00 B5 */ lbz r4, 0xb5(r30) /* 80033840 0002F4A0 88 1E 00 01 */ lbz r0, 1(r30) /* 80033844 0002F4A4 7C 64 00 D0 */ neg r3, r4 /* 80033848 0002F4A8 7C 63 23 78 */ or r3, r3, r4 /* 8003384C 0002F4AC 7C 63 FE 70 */ srawi r3, r3, 0x1f /* 80033850 0002F4B0 54 63 07 BC */ rlwinm r3, r3, 0, 0x1e, 0x1e /* 80033854 0002F4B4 7C 00 1B 79 */ or. r0, r0, r3 /* 80033858 0002F4B8 41 82 02 FC */ beq lbl_80033B54 /* 8003385C 0002F4BC 38 60 00 02 */ li r3, 2 /* 80033860 0002F4C0 48 20 77 F9 */ bl func_8023B058 /* 80033864 0002F4C4 2C 03 00 00 */ cmpwi r3, 0 /* 80033868 0002F4C8 7C 7F 1B 78 */ mr r31, r3 /* 8003386C 0002F4CC 41 82 02 E8 */ beq lbl_80033B54 /* 80033870 0002F4D0 80 1E 01 A0 */ lwz r0, 0x1a0(r30) /* 80033874 0002F4D4 2C 00 00 05 */ cmpwi r0, 5 /* 80033878 0002F4D8 41 82 01 1C */ beq lbl_80033994 /* 8003387C 0002F4DC 40 80 00 1C */ bge lbl_80033898 /* 80033880 0002F4E0 2C 00 00 00 */ cmpwi r0, 0 /* 80033884 0002F4E4 41 82 00 24 */ beq lbl_800338A8 /* 80033888 0002F4E8 41 80 02 C4 */ blt lbl_80033B4C /* 8003388C 0002F4EC 2C 00 00 04 */ cmpwi r0, 4 /* 80033890 0002F4F0 40 80 00 BC */ bge lbl_8003394C /* 80033894 0002F4F4 48 00 00 2C */ b lbl_800338C0 lbl_80033898: /* 80033898 0002F4F8 2C 00 00 07 */ cmpwi r0, 7 /* 8003389C 0002F4FC 41 82 02 44 */ beq lbl_80033AE0 /* 800338A0 0002F500 40 80 02 AC */ bge lbl_80033B4C /* 800338A4 0002F504 48 00 01 7C */ b lbl_80033A20 lbl_800338A8: /* 800338A8 0002F508 7F C3 F3 78 */ mr r3, r30 /* 800338AC 0002F50C 48 00 20 C5 */ bl func_80035970 /* 800338B0 0002F510 38 00 00 00 */ li r0, 0 /* 800338B4 0002F514 90 1F 00 20 */ stw r0, 0x20(r31) /* 800338B8 0002F518 90 7F 00 0C */ stw r3, 0xc(r31) /* 800338BC 0002F51C 48 00 02 90 */ b lbl_80033B4C lbl_800338C0: /* 800338C0 0002F520 38 80 00 01 */ li r4, 1 /* 800338C4 0002F524 48 20 F1 3D */ bl func_80242A00 /* 800338C8 0002F528 7F C3 F3 78 */ mr r3, r30 /* 800338CC 0002F52C 48 00 20 A5 */ bl func_80035970 /* 800338D0 0002F530 90 7F 00 24 */ stw r3, 0x24(r31) /* 800338D4 0002F534 38 00 00 01 */ li r0, 1 /* 800338D8 0002F538 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 800338DC 0002F53C 98 1F 00 39 */ stb r0, 0x39(r31) /* 800338E0 0002F540 48 00 20 91 */ bl func_80035970 /* 800338E4 0002F544 90 7F 00 64 */ stw r3, 0x64(r31) /* 800338E8 0002F548 38 00 00 00 */ li r0, 0 /* 800338EC 0002F54C 7F E3 FB 78 */ mr r3, r31 /* 800338F0 0002F550 38 80 00 00 */ li r4, 0 /* 800338F4 0002F554 98 1F 00 79 */ stb r0, 0x79(r31) /* 800338F8 0002F558 38 A0 00 01 */ li r5, 1 /* 800338FC 0002F55C 38 C0 00 01 */ li r6, 1 /* 80033900 0002F560 C0 5E 00 10 */ lfs f2, 0x10(r30) /* 80033904 0002F564 C0 7E 00 18 */ lfs f3, 0x18(r30) /* 80033908 0002F568 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 8003390C 0002F56C C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80033910 0002F570 EC 83 10 28 */ fsubs f4, f3, f2 /* 80033914 0002F574 EC 60 08 28 */ fsubs f3, f0, f1 /* 80033918 0002F578 48 20 F1 25 */ bl func_80242A3C /* 8003391C 0002F57C C0 5E 00 C4 */ lfs f2, 0xc4(r30) /* 80033920 0002F580 7F E3 FB 78 */ mr r3, r31 /* 80033924 0002F584 C0 7E 00 CC */ lfs f3, 0xcc(r30) /* 80033928 0002F588 38 80 00 01 */ li r4, 1 /* 8003392C 0002F58C C0 3E 00 C0 */ lfs f1, 0xc0(r30) /* 80033930 0002F590 38 A0 00 00 */ li r5, 0 /* 80033934 0002F594 C0 1E 00 C8 */ lfs f0, 0xc8(r30) /* 80033938 0002F598 EC 83 10 28 */ fsubs f4, f3, f2 /* 8003393C 0002F59C 38 C0 00 01 */ li r6, 1 /* 80033940 0002F5A0 EC 60 08 28 */ fsubs f3, f0, f1 /* 80033944 0002F5A4 48 20 F0 F9 */ bl func_80242A3C /* 80033948 0002F5A8 48 00 02 04 */ b lbl_80033B4C lbl_8003394C: /* 8003394C 0002F5AC 38 80 00 02 */ li r4, 2 /* 80033950 0002F5B0 48 20 F0 B1 */ bl func_80242A00 /* 80033954 0002F5B4 2C 03 00 00 */ cmpwi r3, 0 /* 80033958 0002F5B8 41 82 01 F4 */ beq lbl_80033B4C /* 8003395C 0002F5BC 7F C3 F3 78 */ mr r3, r30 /* 80033960 0002F5C0 48 00 20 11 */ bl func_80035970 /* 80033964 0002F5C4 90 7F 00 24 */ stw r3, 0x24(r31) /* 80033968 0002F5C8 3B A0 00 00 */ li r29, 0 /* 8003396C 0002F5CC 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 80033970 0002F5D0 9B BF 00 39 */ stb r29, 0x39(r31) /* 80033974 0002F5D4 48 00 1F FD */ bl func_80035970 /* 80033978 0002F5D8 90 7F 00 64 */ stw r3, 0x64(r31) /* 8003397C 0002F5DC 7F E3 FB 78 */ mr r3, r31 /* 80033980 0002F5E0 38 9E 01 A8 */ addi r4, r30, 0x1a8 /* 80033984 0002F5E4 38 BE 01 B0 */ addi r5, r30, 0x1b0 /* 80033988 0002F5E8 9B BF 00 79 */ stb r29, 0x79(r31) /* 8003398C 0002F5EC 48 20 F3 45 */ bl func_80242CD0 /* 80033990 0002F5F0 48 00 01 BC */ b lbl_80033B4C lbl_80033994: /* 80033994 0002F5F4 80 1E 01 E0 */ lwz r0, 0x1e0(r30) /* 80033998 0002F5F8 2C 00 00 00 */ cmpwi r0, 0 /* 8003399C 0002F5FC 41 82 01 B0 */ beq lbl_80033B4C /* 800339A0 0002F600 38 80 00 03 */ li r4, 3 /* 800339A4 0002F604 48 20 F0 5D */ bl func_80242A00 /* 800339A8 0002F608 7F C3 F3 78 */ mr r3, r30 /* 800339AC 0002F60C 48 00 1F C5 */ bl func_80035970 /* 800339B0 0002F610 90 7F 00 24 */ stw r3, 0x24(r31) /* 800339B4 0002F614 3B A0 00 00 */ li r29, 0 /* 800339B8 0002F618 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 800339BC 0002F61C 9B BF 00 39 */ stb r29, 0x39(r31) /* 800339C0 0002F620 48 00 1F B1 */ bl func_80035970 /* 800339C4 0002F624 90 7F 00 64 */ stw r3, 0x64(r31) /* 800339C8 0002F628 9B BF 00 79 */ stb r29, 0x79(r31) /* 800339CC 0002F62C 80 1E 01 E0 */ lwz r0, 0x1e0(r30) /* 800339D0 0002F630 90 1F 00 A8 */ stw r0, 0xa8(r31) /* 800339D4 0002F634 88 1E 01 DC */ lbz r0, 0x1dc(r30) /* 800339D8 0002F638 98 1F 00 C4 */ stb r0, 0xc4(r31) /* 800339DC 0002F63C 88 1E 01 DD */ lbz r0, 0x1dd(r30) /* 800339E0 0002F640 98 1F 00 C5 */ stb r0, 0xc5(r31) /* 800339E4 0002F644 88 1E 01 DE */ lbz r0, 0x1de(r30) /* 800339E8 0002F648 98 1F 00 C6 */ stb r0, 0xc6(r31) /* 800339EC 0002F64C 88 1E 01 DF */ lbz r0, 0x1df(r30) /* 800339F0 0002F650 98 1F 00 C7 */ stb r0, 0xc7(r31) /* 800339F4 0002F654 C0 1E 01 E8 */ lfs f0, 0x1e8(r30) /* 800339F8 0002F658 D0 1F 00 AC */ stfs f0, 0xac(r31) /* 800339FC 0002F65C C0 1E 01 EC */ lfs f0, 0x1ec(r30) /* 80033A00 0002F660 D0 1F 00 B0 */ stfs f0, 0xb0(r31) /* 80033A04 0002F664 C0 1E 01 F0 */ lfs f0, 0x1f0(r30) /* 80033A08 0002F668 D0 1F 00 B4 */ stfs f0, 0xb4(r31) /* 80033A0C 0002F66C C0 1E 01 F4 */ lfs f0, 0x1f4(r30) /* 80033A10 0002F670 D0 1F 00 B8 */ stfs f0, 0xb8(r31) /* 80033A14 0002F674 C0 1E 01 F8 */ lfs f0, 0x1f8(r30) /* 80033A18 0002F678 D0 1F 00 BC */ stfs f0, 0xbc(r31) /* 80033A1C 0002F67C 48 00 01 30 */ b lbl_80033B4C lbl_80033A20: /* 80033A20 0002F680 38 80 00 04 */ li r4, 4 /* 80033A24 0002F684 48 20 EF DD */ bl func_80242A00 /* 80033A28 0002F688 80 1E 01 E4 */ lwz r0, 0x1e4(r30) /* 80033A2C 0002F68C 2C 00 00 01 */ cmpwi r0, 1 /* 80033A30 0002F690 41 82 00 20 */ beq lbl_80033A50 /* 80033A34 0002F694 40 80 00 3C */ bge lbl_80033A70 /* 80033A38 0002F698 2C 00 00 00 */ cmpwi r0, 0 /* 80033A3C 0002F69C 40 80 00 08 */ bge lbl_80033A44 /* 80033A40 0002F6A0 48 00 00 30 */ b lbl_80033A70 lbl_80033A44: /* 80033A44 0002F6A4 38 00 00 00 */ li r0, 0 /* 80033A48 0002F6A8 90 1F 00 C8 */ stw r0, 0xc8(r31) /* 80033A4C 0002F6AC 48 00 00 24 */ b lbl_80033A70 lbl_80033A50: /* 80033A50 0002F6B0 C0 62 81 DC */ lfs f3, lbl_806407DC-_SDA2_BASE_(r2) /* 80033A54 0002F6B4 7F E3 FB 78 */ mr r3, r31 /* 80033A58 0002F6B8 C0 22 81 F0 */ lfs f1, lbl_806407F0-_SDA2_BASE_(r2) /* 80033A5C 0002F6BC 38 80 00 0C */ li r4, 0xc /* 80033A60 0002F6C0 FC A0 18 90 */ fmr f5, f3 /* 80033A64 0002F6C4 C0 42 81 F4 */ lfs f2, lbl_806407F4-_SDA2_BASE_(r2) /* 80033A68 0002F6C8 C0 82 81 F8 */ lfs f4, lbl_806407F8-_SDA2_BASE_(r2) /* 80033A6C 0002F6CC 48 20 FA CD */ bl func_80243538 lbl_80033A70: /* 80033A70 0002F6D0 7F C3 F3 78 */ mr r3, r30 /* 80033A74 0002F6D4 48 00 1E FD */ bl func_80035970 /* 80033A78 0002F6D8 90 7F 00 24 */ stw r3, 0x24(r31) /* 80033A7C 0002F6DC 3B A0 00 00 */ li r29, 0 /* 80033A80 0002F6E0 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 80033A84 0002F6E4 9B BF 00 39 */ stb r29, 0x39(r31) /* 80033A88 0002F6E8 48 00 1E E9 */ bl func_80035970 /* 80033A8C 0002F6EC 90 7F 00 64 */ stw r3, 0x64(r31) /* 80033A90 0002F6F0 9B BF 00 79 */ stb r29, 0x79(r31) /* 80033A94 0002F6F4 88 1E 01 DC */ lbz r0, 0x1dc(r30) /* 80033A98 0002F6F8 98 1F 00 C4 */ stb r0, 0xc4(r31) /* 80033A9C 0002F6FC 88 1E 01 DD */ lbz r0, 0x1dd(r30) /* 80033AA0 0002F700 98 1F 00 C5 */ stb r0, 0xc5(r31) /* 80033AA4 0002F704 88 1E 01 DE */ lbz r0, 0x1de(r30) /* 80033AA8 0002F708 98 1F 00 C6 */ stb r0, 0xc6(r31) /* 80033AAC 0002F70C 88 1E 01 DF */ lbz r0, 0x1df(r30) /* 80033AB0 0002F710 98 1F 00 C7 */ stb r0, 0xc7(r31) /* 80033AB4 0002F714 C0 1E 01 E8 */ lfs f0, 0x1e8(r30) /* 80033AB8 0002F718 D0 1F 00 AC */ stfs f0, 0xac(r31) /* 80033ABC 0002F71C C0 1E 01 EC */ lfs f0, 0x1ec(r30) /* 80033AC0 0002F720 D0 1F 00 B0 */ stfs f0, 0xb0(r31) /* 80033AC4 0002F724 C0 1E 01 F0 */ lfs f0, 0x1f0(r30) /* 80033AC8 0002F728 D0 1F 00 B4 */ stfs f0, 0xb4(r31) /* 80033ACC 0002F72C C0 1E 01 F4 */ lfs f0, 0x1f4(r30) /* 80033AD0 0002F730 D0 1F 00 B8 */ stfs f0, 0xb8(r31) /* 80033AD4 0002F734 C0 1E 01 F8 */ lfs f0, 0x1f8(r30) /* 80033AD8 0002F738 D0 1F 00 BC */ stfs f0, 0xbc(r31) /* 80033ADC 0002F73C 48 00 00 70 */ b lbl_80033B4C lbl_80033AE0: /* 80033AE0 0002F740 38 80 00 05 */ li r4, 5 /* 80033AE4 0002F744 48 20 EF 1D */ bl func_80242A00 /* 80033AE8 0002F748 7F C3 F3 78 */ mr r3, r30 /* 80033AEC 0002F74C 48 00 1E 85 */ bl func_80035970 /* 80033AF0 0002F750 90 7F 00 24 */ stw r3, 0x24(r31) /* 80033AF4 0002F754 3B A0 00 00 */ li r29, 0 /* 80033AF8 0002F758 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 80033AFC 0002F75C 9B BF 00 39 */ stb r29, 0x39(r31) /* 80033B00 0002F760 48 00 1E 71 */ bl func_80035970 /* 80033B04 0002F764 90 7F 00 64 */ stw r3, 0x64(r31) /* 80033B08 0002F768 9B BF 00 79 */ stb r29, 0x79(r31) /* 80033B0C 0002F76C 88 1E 01 DC */ lbz r0, 0x1dc(r30) /* 80033B10 0002F770 98 1F 00 C4 */ stb r0, 0xc4(r31) /* 80033B14 0002F774 88 1E 01 DD */ lbz r0, 0x1dd(r30) /* 80033B18 0002F778 98 1F 00 C5 */ stb r0, 0xc5(r31) /* 80033B1C 0002F77C 88 1E 01 DE */ lbz r0, 0x1de(r30) /* 80033B20 0002F780 98 1F 00 C6 */ stb r0, 0xc6(r31) /* 80033B24 0002F784 88 1E 01 DF */ lbz r0, 0x1df(r30) /* 80033B28 0002F788 98 1F 00 C7 */ stb r0, 0xc7(r31) /* 80033B2C 0002F78C C0 1E 01 E8 */ lfs f0, 0x1e8(r30) /* 80033B30 0002F790 D0 1F 00 AC */ stfs f0, 0xac(r31) /* 80033B34 0002F794 C0 1E 01 EC */ lfs f0, 0x1ec(r30) /* 80033B38 0002F798 D0 1F 00 B0 */ stfs f0, 0xb0(r31) /* 80033B3C 0002F79C C0 1E 01 F0 */ lfs f0, 0x1f0(r30) /* 80033B40 0002F7A0 D0 1F 00 B4 */ stfs f0, 0xb4(r31) /* 80033B44 0002F7A4 C0 1E 01 FC */ lfs f0, 0x1fc(r30) /* 80033B48 0002F7A8 D0 1F 00 C0 */ stfs f0, 0xc0(r31) lbl_80033B4C: /* 80033B4C 0002F7AC 38 00 00 00 */ li r0, 0 /* 80033B50 0002F7B0 98 1E 01 A4 */ stb r0, 0x1a4(r30) lbl_80033B54: /* 80033B54 0002F7B4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80033B58 0002F7B8 80 01 00 54 */ lwz r0, 0x54(r1) /* 80033B5C 0002F7BC CB E1 00 40 */ lfd f31, 0x40(r1) /* 80033B60 0002F7C0 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80033B64 0002F7C4 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80033B68 0002F7C8 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80033B6C 0002F7CC 83 81 00 30 */ lwz r28, 0x30(r1) /* 80033B70 0002F7D0 7C 08 03 A6 */ mtlr r0 /* 80033B74 0002F7D4 38 21 00 50 */ addi r1, r1, 0x50 /* 80033B78 0002F7D8 4E 80 00 20 */ blr .global func_80033B7C func_80033B7C: /* 80033B7C 0002F7DC 28 04 00 02 */ cmplwi r4, 2 /* 80033B80 0002F7E0 41 80 00 0C */ blt lbl_80033B8C /* 80033B84 0002F7E4 38 60 00 00 */ li r3, 0 /* 80033B88 0002F7E8 4E 80 00 20 */ blr lbl_80033B8C: /* 80033B8C 0002F7EC 1C 04 00 B4 */ mulli r0, r4, 0xb4 /* 80033B90 0002F7F0 7C 63 02 14 */ add r3, r3, r0 /* 80033B94 0002F7F4 4E 80 00 20 */ blr .global func_80033B98 func_80033B98: /* 80033B98 0002F7F8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80033B9C 0002F7FC 7C 08 02 A6 */ mflr r0 /* 80033BA0 0002F800 90 01 00 24 */ stw r0, 0x24(r1) /* 80033BA4 0002F804 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80033BA8 0002F808 3B E0 00 00 */ li r31, 0 /* 80033BAC 0002F80C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80033BB0 0002F810 7C 9E 23 78 */ mr r30, r4 /* 80033BB4 0002F814 93 A1 00 14 */ stw r29, 0x14(r1) /* 80033BB8 0002F818 7C 7D 1B 78 */ mr r29, r3 lbl_80033BBC: /* 80033BBC 0002F81C 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 80033BC0 0002F820 1C 00 00 B4 */ mulli r0, r0, 0xb4 /* 80033BC4 0002F824 7C 7D 02 14 */ add r3, r29, r0 /* 80033BC8 0002F828 48 00 18 2D */ bl func_800353F4 /* 80033BCC 0002F82C 7C 1E 18 40 */ cmplw r30, r3 /* 80033BD0 0002F830 40 82 00 0C */ bne lbl_80033BDC /* 80033BD4 0002F834 7F E3 FB 78 */ mr r3, r31 /* 80033BD8 0002F838 48 00 00 18 */ b lbl_80033BF0 lbl_80033BDC: /* 80033BDC 0002F83C 3B FF 00 01 */ addi r31, r31, 1 /* 80033BE0 0002F840 28 1F 00 02 */ cmplwi r31, 2 /* 80033BE4 0002F844 41 80 FF D8 */ blt lbl_80033BBC /* 80033BE8 0002F848 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 80033BEC 0002F84C 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l lbl_80033BF0: /* 80033BF0 0002F850 80 01 00 24 */ lwz r0, 0x24(r1) /* 80033BF4 0002F854 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80033BF8 0002F858 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80033BFC 0002F85C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80033C00 0002F860 7C 08 03 A6 */ mtlr r0 /* 80033C04 0002F864 38 21 00 20 */ addi r1, r1, 0x20 /* 80033C08 0002F868 4E 80 00 20 */ blr .global func_80033C0C func_80033C0C: /* 80033C0C 0002F86C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80033C10 0002F870 7C 08 02 A6 */ mflr r0 /* 80033C14 0002F874 38 83 00 C0 */ addi r4, r3, 0xc0 /* 80033C18 0002F878 90 01 00 24 */ stw r0, 0x24(r1) /* 80033C1C 0002F87C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80033C20 0002F880 7C 7F 1B 78 */ mr r31, r3 /* 80033C24 0002F884 80 A3 00 0C */ lwz r5, 0xc(r3) /* 80033C28 0002F888 80 03 00 10 */ lwz r0, 0x10(r3) /* 80033C2C 0002F88C 90 A1 00 08 */ stw r5, 8(r1) /* 80033C30 0002F890 90 01 00 0C */ stw r0, 0xc(r1) /* 80033C34 0002F894 80 A3 00 14 */ lwz r5, 0x14(r3) /* 80033C38 0002F898 80 03 00 18 */ lwz r0, 0x18(r3) /* 80033C3C 0002F89C 90 A1 00 10 */ stw r5, 0x10(r1) /* 80033C40 0002F8A0 90 01 00 14 */ stw r0, 0x14(r1) /* 80033C44 0002F8A4 48 00 18 95 */ bl func_800354D8 /* 80033C48 0002F8A8 38 7F 00 B4 */ addi r3, r31, 0xb4 /* 80033C4C 0002F8AC 38 81 00 08 */ addi r4, r1, 8 /* 80033C50 0002F8B0 48 00 18 89 */ bl func_800354D8 /* 80033C54 0002F8B4 48 00 0C C5 */ bl func_80034918 /* 80033C58 0002F8B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80033C5C 0002F8BC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80033C60 0002F8C0 7C 08 03 A6 */ mtlr r0 /* 80033C64 0002F8C4 38 21 00 20 */ addi r1, r1, 0x20 /* 80033C68 0002F8C8 4E 80 00 20 */ blr .global func_80033C6C func_80033C6C: /* 80033C6C 0002F8CC 94 21 FF 00 */ stwu r1, -0x100(r1) /* 80033C70 0002F8D0 7C 08 02 A6 */ mflr r0 /* 80033C74 0002F8D4 90 01 01 04 */ stw r0, 0x104(r1) /* 80033C78 0002F8D8 DB E1 00 F0 */ stfd f31, 0xf0(r1) /* 80033C7C 0002F8DC F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 /* 80033C80 0002F8E0 DB C1 00 E0 */ stfd f30, 0xe0(r1) /* 80033C84 0002F8E4 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 /* 80033C88 0002F8E8 39 61 00 E0 */ addi r11, r1, 0xe0 /* 80033C8C 0002F8EC 48 19 34 91 */ bl _savegpr_24 /* 80033C90 0002F8F0 7C 7F 1B 78 */ mr r31, r3 /* 80033C94 0002F8F4 38 61 00 08 */ addi r3, r1, 8 /* 80033C98 0002F8F8 48 00 16 E9 */ bl func_80035380 /* 80033C9C 0002F8FC 88 1F 00 00 */ lbz r0, 0(r31) /* 80033CA0 0002F900 98 01 00 08 */ stb r0, 8(r1) /* 80033CA4 0002F904 88 1F 00 01 */ lbz r0, 1(r31) /* 80033CA8 0002F908 98 01 00 09 */ stb r0, 9(r1) /* 80033CAC 0002F90C 88 1F 00 02 */ lbz r0, 2(r31) /* 80033CB0 0002F910 98 01 00 0A */ stb r0, 0xa(r1) /* 80033CB4 0002F914 80 1F 00 04 */ lwz r0, 4(r31) /* 80033CB8 0002F918 90 01 00 0C */ stw r0, 0xc(r1) /* 80033CBC 0002F91C 80 1F 00 08 */ lwz r0, 8(r31) /* 80033CC0 0002F920 90 01 00 10 */ stw r0, 0x10(r1) /* 80033CC4 0002F924 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80033CC8 0002F928 80 1F 00 10 */ lwz r0, 0x10(r31) /* 80033CCC 0002F92C 90 61 00 14 */ stw r3, 0x14(r1) /* 80033CD0 0002F930 90 01 00 18 */ stw r0, 0x18(r1) /* 80033CD4 0002F934 80 7F 00 14 */ lwz r3, 0x14(r31) /* 80033CD8 0002F938 80 1F 00 18 */ lwz r0, 0x18(r31) /* 80033CDC 0002F93C 90 61 00 1C */ stw r3, 0x1c(r1) /* 80033CE0 0002F940 90 01 00 20 */ stw r0, 0x20(r1) /* 80033CE4 0002F944 80 1F 00 1C */ lwz r0, 0x1c(r31) /* 80033CE8 0002F948 90 01 00 24 */ stw r0, 0x24(r1) /* 80033CEC 0002F94C C0 1F 00 20 */ lfs f0, 0x20(r31) /* 80033CF0 0002F950 D0 01 00 28 */ stfs f0, 0x28(r1) /* 80033CF4 0002F954 C0 1F 00 24 */ lfs f0, 0x24(r31) /* 80033CF8 0002F958 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 80033CFC 0002F95C 80 1F 00 28 */ lwz r0, 0x28(r31) /* 80033D00 0002F960 90 01 00 30 */ stw r0, 0x30(r1) /* 80033D04 0002F964 C0 1F 00 2C */ lfs f0, 0x2c(r31) /* 80033D08 0002F968 D0 01 00 34 */ stfs f0, 0x34(r1) /* 80033D0C 0002F96C C0 1F 00 30 */ lfs f0, 0x30(r31) /* 80033D10 0002F970 D0 01 00 38 */ stfs f0, 0x38(r1) /* 80033D14 0002F974 80 1F 00 34 */ lwz r0, 0x34(r31) /* 80033D18 0002F978 90 01 00 3C */ stw r0, 0x3c(r1) /* 80033D1C 0002F97C 80 1F 00 38 */ lwz r0, 0x38(r31) /* 80033D20 0002F980 90 01 00 40 */ stw r0, 0x40(r1) /* 80033D24 0002F984 80 1F 00 40 */ lwz r0, 0x40(r31) /* 80033D28 0002F988 90 01 00 48 */ stw r0, 0x48(r1) /* 80033D2C 0002F98C C0 1F 00 44 */ lfs f0, 0x44(r31) /* 80033D30 0002F990 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 80033D34 0002F994 C0 1F 00 48 */ lfs f0, 0x48(r31) /* 80033D38 0002F998 D0 01 00 50 */ stfs f0, 0x50(r1) /* 80033D3C 0002F99C 80 1F 00 4C */ lwz r0, 0x4c(r31) /* 80033D40 0002F9A0 90 01 00 54 */ stw r0, 0x54(r1) /* 80033D44 0002F9A4 C0 1F 00 50 */ lfs f0, 0x50(r31) /* 80033D48 0002F9A8 D0 01 00 58 */ stfs f0, 0x58(r1) /* 80033D4C 0002F9AC C0 1F 00 54 */ lfs f0, 0x54(r31) /* 80033D50 0002F9B0 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 80033D54 0002F9B4 80 1F 00 58 */ lwz r0, 0x58(r31) /* 80033D58 0002F9B8 90 01 00 60 */ stw r0, 0x60(r1) /* 80033D5C 0002F9BC 80 1F 00 5C */ lwz r0, 0x5c(r31) /* 80033D60 0002F9C0 90 01 00 64 */ stw r0, 0x64(r1) /* 80033D64 0002F9C4 80 1F 00 64 */ lwz r0, 0x64(r31) /* 80033D68 0002F9C8 90 01 00 6C */ stw r0, 0x6c(r1) /* 80033D6C 0002F9CC C0 1F 00 68 */ lfs f0, 0x68(r31) /* 80033D70 0002F9D0 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80033D74 0002F9D4 C0 1F 00 6C */ lfs f0, 0x6c(r31) /* 80033D78 0002F9D8 D0 01 00 74 */ stfs f0, 0x74(r1) /* 80033D7C 0002F9DC 80 1F 00 70 */ lwz r0, 0x70(r31) /* 80033D80 0002F9E0 90 01 00 78 */ stw r0, 0x78(r1) /* 80033D84 0002F9E4 C0 1F 00 74 */ lfs f0, 0x74(r31) /* 80033D88 0002F9E8 D0 01 00 7C */ stfs f0, 0x7c(r1) /* 80033D8C 0002F9EC C0 1F 00 78 */ lfs f0, 0x78(r31) /* 80033D90 0002F9F0 D0 01 00 80 */ stfs f0, 0x80(r1) /* 80033D94 0002F9F4 80 1F 00 7C */ lwz r0, 0x7c(r31) /* 80033D98 0002F9F8 90 01 00 84 */ stw r0, 0x84(r1) /* 80033D9C 0002F9FC 80 1F 00 80 */ lwz r0, 0x80(r31) /* 80033DA0 0002FA00 90 01 00 88 */ stw r0, 0x88(r1) /* 80033DA4 0002FA04 80 1F 00 88 */ lwz r0, 0x88(r31) /* 80033DA8 0002FA08 90 01 00 90 */ stw r0, 0x90(r1) /* 80033DAC 0002FA0C C0 1F 00 8C */ lfs f0, 0x8c(r31) /* 80033DB0 0002FA10 D0 01 00 94 */ stfs f0, 0x94(r1) /* 80033DB4 0002FA14 C0 1F 00 90 */ lfs f0, 0x90(r31) /* 80033DB8 0002FA18 D0 01 00 98 */ stfs f0, 0x98(r1) /* 80033DBC 0002FA1C 80 1F 00 94 */ lwz r0, 0x94(r31) /* 80033DC0 0002FA20 90 01 00 9C */ stw r0, 0x9c(r1) /* 80033DC4 0002FA24 C0 1F 00 98 */ lfs f0, 0x98(r31) /* 80033DC8 0002FA28 D0 01 00 A0 */ stfs f0, 0xa0(r1) /* 80033DCC 0002FA2C C0 1F 00 9C */ lfs f0, 0x9c(r31) /* 80033DD0 0002FA30 D0 01 00 A4 */ stfs f0, 0xa4(r1) /* 80033DD4 0002FA34 80 1F 00 A0 */ lwz r0, 0xa0(r31) /* 80033DD8 0002FA38 90 01 00 A8 */ stw r0, 0xa8(r1) /* 80033DDC 0002FA3C 80 1F 00 A4 */ lwz r0, 0xa4(r31) /* 80033DE0 0002FA40 90 01 00 AC */ stw r0, 0xac(r1) /* 80033DE4 0002FA44 80 1F 00 AC */ lwz r0, 0xac(r31) /* 80033DE8 0002FA48 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80033DEC 0002FA4C 80 1F 00 B0 */ lwz r0, 0xb0(r31) /* 80033DF0 0002FA50 90 01 00 B8 */ stw r0, 0xb8(r1) /* 80033DF4 0002FA54 89 5F 00 B4 */ lbz r10, 0xb4(r31) /* 80033DF8 0002FA58 89 3F 00 B5 */ lbz r9, 0xb5(r31) /* 80033DFC 0002FA5C 89 1F 00 B6 */ lbz r8, 0xb6(r31) /* 80033E00 0002FA60 80 FF 00 B8 */ lwz r7, 0xb8(r31) /* 80033E04 0002FA64 80 DF 00 BC */ lwz r6, 0xbc(r31) /* 80033E08 0002FA68 80 BF 00 C0 */ lwz r5, 0xc0(r31) /* 80033E0C 0002FA6C 80 9F 00 C4 */ lwz r4, 0xc4(r31) /* 80033E10 0002FA70 80 7F 00 C8 */ lwz r3, 0xc8(r31) /* 80033E14 0002FA74 80 1F 00 CC */ lwz r0, 0xcc(r31) /* 80033E18 0002FA78 99 5F 00 00 */ stb r10, 0(r31) /* 80033E1C 0002FA7C 99 3F 00 01 */ stb r9, 1(r31) /* 80033E20 0002FA80 99 1F 00 02 */ stb r8, 2(r31) /* 80033E24 0002FA84 90 FF 00 04 */ stw r7, 4(r31) /* 80033E28 0002FA88 90 DF 00 08 */ stw r6, 8(r31) /* 80033E2C 0002FA8C 90 BF 00 0C */ stw r5, 0xc(r31) /* 80033E30 0002FA90 90 9F 00 10 */ stw r4, 0x10(r31) /* 80033E34 0002FA94 90 7F 00 14 */ stw r3, 0x14(r31) /* 80033E38 0002FA98 90 1F 00 18 */ stw r0, 0x18(r31) /* 80033E3C 0002FA9C 83 1F 00 D0 */ lwz r24, 0xd0(r31) /* 80033E40 0002FAA0 C3 DF 00 D4 */ lfs f30, 0xd4(r31) /* 80033E44 0002FAA4 C3 FF 00 D8 */ lfs f31, 0xd8(r31) /* 80033E48 0002FAA8 83 3F 00 DC */ lwz r25, 0xdc(r31) /* 80033E4C 0002FAAC C1 BF 00 E0 */ lfs f13, 0xe0(r31) /* 80033E50 0002FAB0 C1 9F 00 E4 */ lfs f12, 0xe4(r31) /* 80033E54 0002FAB4 83 5F 00 E8 */ lwz r26, 0xe8(r31) /* 80033E58 0002FAB8 83 7F 00 EC */ lwz r27, 0xec(r31) /* 80033E5C 0002FABC 83 9F 00 F4 */ lwz r28, 0xf4(r31) /* 80033E60 0002FAC0 C1 7F 00 F8 */ lfs f11, 0xf8(r31) /* 80033E64 0002FAC4 C1 5F 00 FC */ lfs f10, 0xfc(r31) /* 80033E68 0002FAC8 83 BF 01 00 */ lwz r29, 0x100(r31) /* 80033E6C 0002FACC C1 3F 01 04 */ lfs f9, 0x104(r31) /* 80033E70 0002FAD0 C1 1F 01 08 */ lfs f8, 0x108(r31) /* 80033E74 0002FAD4 83 DF 01 0C */ lwz r30, 0x10c(r31) /* 80033E78 0002FAD8 81 9F 01 10 */ lwz r12, 0x110(r31) /* 80033E7C 0002FADC 81 7F 01 18 */ lwz r11, 0x118(r31) /* 80033E80 0002FAE0 C0 FF 01 1C */ lfs f7, 0x11c(r31) /* 80033E84 0002FAE4 C0 DF 01 20 */ lfs f6, 0x120(r31) /* 80033E88 0002FAE8 81 5F 01 24 */ lwz r10, 0x124(r31) /* 80033E8C 0002FAEC C0 BF 01 28 */ lfs f5, 0x128(r31) /* 80033E90 0002FAF0 C0 9F 01 2C */ lfs f4, 0x12c(r31) /* 80033E94 0002FAF4 81 3F 01 30 */ lwz r9, 0x130(r31) /* 80033E98 0002FAF8 81 1F 01 34 */ lwz r8, 0x134(r31) /* 80033E9C 0002FAFC 80 FF 01 3C */ lwz r7, 0x13c(r31) /* 80033EA0 0002FB00 C0 7F 01 40 */ lfs f3, 0x140(r31) /* 80033EA4 0002FB04 C0 5F 01 44 */ lfs f2, 0x144(r31) /* 80033EA8 0002FB08 80 DF 01 48 */ lwz r6, 0x148(r31) /* 80033EAC 0002FB0C C0 3F 01 4C */ lfs f1, 0x14c(r31) /* 80033EB0 0002FB10 C0 1F 01 50 */ lfs f0, 0x150(r31) /* 80033EB4 0002FB14 80 BF 01 54 */ lwz r5, 0x154(r31) /* 80033EB8 0002FB18 80 9F 01 58 */ lwz r4, 0x158(r31) /* 80033EBC 0002FB1C 80 7F 01 60 */ lwz r3, 0x160(r31) /* 80033EC0 0002FB20 80 1F 01 64 */ lwz r0, 0x164(r31) /* 80033EC4 0002FB24 93 1F 00 1C */ stw r24, 0x1c(r31) /* 80033EC8 0002FB28 D3 DF 00 20 */ stfs f30, 0x20(r31) /* 80033ECC 0002FB2C D3 FF 00 24 */ stfs f31, 0x24(r31) /* 80033ED0 0002FB30 93 3F 00 28 */ stw r25, 0x28(r31) /* 80033ED4 0002FB34 D1 BF 00 2C */ stfs f13, 0x2c(r31) /* 80033ED8 0002FB38 D1 9F 00 30 */ stfs f12, 0x30(r31) /* 80033EDC 0002FB3C 93 5F 00 34 */ stw r26, 0x34(r31) /* 80033EE0 0002FB40 93 7F 00 38 */ stw r27, 0x38(r31) /* 80033EE4 0002FB44 93 9F 00 40 */ stw r28, 0x40(r31) /* 80033EE8 0002FB48 D1 7F 00 44 */ stfs f11, 0x44(r31) /* 80033EEC 0002FB4C D1 5F 00 48 */ stfs f10, 0x48(r31) /* 80033EF0 0002FB50 93 BF 00 4C */ stw r29, 0x4c(r31) /* 80033EF4 0002FB54 D1 3F 00 50 */ stfs f9, 0x50(r31) /* 80033EF8 0002FB58 D1 1F 00 54 */ stfs f8, 0x54(r31) /* 80033EFC 0002FB5C 93 DF 00 58 */ stw r30, 0x58(r31) /* 80033F00 0002FB60 91 9F 00 5C */ stw r12, 0x5c(r31) /* 80033F04 0002FB64 91 7F 00 64 */ stw r11, 0x64(r31) /* 80033F08 0002FB68 D0 FF 00 68 */ stfs f7, 0x68(r31) /* 80033F0C 0002FB6C D0 DF 00 6C */ stfs f6, 0x6c(r31) /* 80033F10 0002FB70 91 5F 00 70 */ stw r10, 0x70(r31) /* 80033F14 0002FB74 D0 BF 00 74 */ stfs f5, 0x74(r31) /* 80033F18 0002FB78 D0 9F 00 78 */ stfs f4, 0x78(r31) /* 80033F1C 0002FB7C 91 3F 00 7C */ stw r9, 0x7c(r31) /* 80033F20 0002FB80 91 1F 00 80 */ stw r8, 0x80(r31) /* 80033F24 0002FB84 90 FF 00 88 */ stw r7, 0x88(r31) /* 80033F28 0002FB88 D0 7F 00 8C */ stfs f3, 0x8c(r31) /* 80033F2C 0002FB8C D0 5F 00 90 */ stfs f2, 0x90(r31) /* 80033F30 0002FB90 90 DF 00 94 */ stw r6, 0x94(r31) /* 80033F34 0002FB94 D0 3F 00 98 */ stfs f1, 0x98(r31) /* 80033F38 0002FB98 D0 1F 00 9C */ stfs f0, 0x9c(r31) /* 80033F3C 0002FB9C 90 BF 00 A0 */ stw r5, 0xa0(r31) /* 80033F40 0002FBA0 90 9F 00 A4 */ stw r4, 0xa4(r31) /* 80033F44 0002FBA4 90 7F 00 AC */ stw r3, 0xac(r31) /* 80033F48 0002FBA8 90 1F 00 B0 */ stw r0, 0xb0(r31) /* 80033F4C 0002FBAC 88 01 00 08 */ lbz r0, 8(r1) /* 80033F50 0002FBB0 98 1F 00 B4 */ stb r0, 0xb4(r31) /* 80033F54 0002FBB4 88 01 00 09 */ lbz r0, 9(r1) /* 80033F58 0002FBB8 98 1F 00 B5 */ stb r0, 0xb5(r31) /* 80033F5C 0002FBBC 88 01 00 0A */ lbz r0, 0xa(r1) /* 80033F60 0002FBC0 98 1F 00 B6 */ stb r0, 0xb6(r31) /* 80033F64 0002FBC4 80 01 00 0C */ lwz r0, 0xc(r1) /* 80033F68 0002FBC8 90 1F 00 B8 */ stw r0, 0xb8(r31) /* 80033F6C 0002FBCC 80 01 00 10 */ lwz r0, 0x10(r1) /* 80033F70 0002FBD0 90 1F 00 BC */ stw r0, 0xbc(r31) /* 80033F74 0002FBD4 80 61 00 14 */ lwz r3, 0x14(r1) /* 80033F78 0002FBD8 80 01 00 18 */ lwz r0, 0x18(r1) /* 80033F7C 0002FBDC 90 7F 00 C0 */ stw r3, 0xc0(r31) /* 80033F80 0002FBE0 90 1F 00 C4 */ stw r0, 0xc4(r31) /* 80033F84 0002FBE4 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80033F88 0002FBE8 80 01 00 20 */ lwz r0, 0x20(r1) /* 80033F8C 0002FBEC 90 7F 00 C8 */ stw r3, 0xc8(r31) /* 80033F90 0002FBF0 90 1F 00 CC */ stw r0, 0xcc(r31) /* 80033F94 0002FBF4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80033F98 0002FBF8 90 1F 00 D0 */ stw r0, 0xd0(r31) /* 80033F9C 0002FBFC C0 01 00 28 */ lfs f0, 0x28(r1) /* 80033FA0 0002FC00 D0 1F 00 D4 */ stfs f0, 0xd4(r31) /* 80033FA4 0002FC04 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80033FA8 0002FC08 D0 1F 00 D8 */ stfs f0, 0xd8(r31) /* 80033FAC 0002FC0C 80 01 00 30 */ lwz r0, 0x30(r1) /* 80033FB0 0002FC10 90 1F 00 DC */ stw r0, 0xdc(r31) /* 80033FB4 0002FC14 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80033FB8 0002FC18 D0 1F 00 E0 */ stfs f0, 0xe0(r31) /* 80033FBC 0002FC1C C0 01 00 38 */ lfs f0, 0x38(r1) /* 80033FC0 0002FC20 D0 1F 00 E4 */ stfs f0, 0xe4(r31) /* 80033FC4 0002FC24 80 01 00 3C */ lwz r0, 0x3c(r1) /* 80033FC8 0002FC28 90 1F 00 E8 */ stw r0, 0xe8(r31) /* 80033FCC 0002FC2C 80 01 00 40 */ lwz r0, 0x40(r1) /* 80033FD0 0002FC30 90 1F 00 EC */ stw r0, 0xec(r31) /* 80033FD4 0002FC34 80 01 00 48 */ lwz r0, 0x48(r1) /* 80033FD8 0002FC38 90 1F 00 F4 */ stw r0, 0xf4(r31) /* 80033FDC 0002FC3C C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80033FE0 0002FC40 D0 1F 00 F8 */ stfs f0, 0xf8(r31) /* 80033FE4 0002FC44 C0 01 00 50 */ lfs f0, 0x50(r1) /* 80033FE8 0002FC48 D0 1F 00 FC */ stfs f0, 0xfc(r31) /* 80033FEC 0002FC4C 80 01 00 54 */ lwz r0, 0x54(r1) /* 80033FF0 0002FC50 90 1F 01 00 */ stw r0, 0x100(r31) /* 80033FF4 0002FC54 C0 01 00 58 */ lfs f0, 0x58(r1) /* 80033FF8 0002FC58 D0 1F 01 04 */ stfs f0, 0x104(r31) /* 80033FFC 0002FC5C C0 01 00 5C */ lfs f0, 0x5c(r1) /* 80034000 0002FC60 D0 1F 01 08 */ stfs f0, 0x108(r31) /* 80034004 0002FC64 80 01 00 60 */ lwz r0, 0x60(r1) /* 80034008 0002FC68 90 1F 01 0C */ stw r0, 0x10c(r31) /* 8003400C 0002FC6C 80 01 00 64 */ lwz r0, 0x64(r1) /* 80034010 0002FC70 90 1F 01 10 */ stw r0, 0x110(r31) /* 80034014 0002FC74 80 01 00 6C */ lwz r0, 0x6c(r1) /* 80034018 0002FC78 90 1F 01 18 */ stw r0, 0x118(r31) /* 8003401C 0002FC7C C0 01 00 70 */ lfs f0, 0x70(r1) /* 80034020 0002FC80 D0 1F 01 1C */ stfs f0, 0x11c(r31) /* 80034024 0002FC84 C0 01 00 74 */ lfs f0, 0x74(r1) /* 80034028 0002FC88 D0 1F 01 20 */ stfs f0, 0x120(r31) /* 8003402C 0002FC8C 80 01 00 78 */ lwz r0, 0x78(r1) /* 80034030 0002FC90 90 1F 01 24 */ stw r0, 0x124(r31) /* 80034034 0002FC94 C0 01 00 7C */ lfs f0, 0x7c(r1) /* 80034038 0002FC98 D0 1F 01 28 */ stfs f0, 0x128(r31) /* 8003403C 0002FC9C C0 01 00 80 */ lfs f0, 0x80(r1) /* 80034040 0002FCA0 D0 1F 01 2C */ stfs f0, 0x12c(r31) /* 80034044 0002FCA4 80 01 00 84 */ lwz r0, 0x84(r1) /* 80034048 0002FCA8 90 1F 01 30 */ stw r0, 0x130(r31) /* 8003404C 0002FCAC 80 01 00 88 */ lwz r0, 0x88(r1) /* 80034050 0002FCB0 90 1F 01 34 */ stw r0, 0x134(r31) /* 80034054 0002FCB4 80 01 00 90 */ lwz r0, 0x90(r1) /* 80034058 0002FCB8 90 1F 01 3C */ stw r0, 0x13c(r31) /* 8003405C 0002FCBC C0 01 00 94 */ lfs f0, 0x94(r1) /* 80034060 0002FCC0 D0 1F 01 40 */ stfs f0, 0x140(r31) /* 80034064 0002FCC4 C0 01 00 98 */ lfs f0, 0x98(r1) /* 80034068 0002FCC8 D0 1F 01 44 */ stfs f0, 0x144(r31) /* 8003406C 0002FCCC 80 01 00 9C */ lwz r0, 0x9c(r1) /* 80034070 0002FCD0 90 1F 01 48 */ stw r0, 0x148(r31) /* 80034074 0002FCD4 C0 01 00 A0 */ lfs f0, 0xa0(r1) /* 80034078 0002FCD8 D0 1F 01 4C */ stfs f0, 0x14c(r31) /* 8003407C 0002FCDC C0 01 00 A4 */ lfs f0, 0xa4(r1) /* 80034080 0002FCE0 D0 1F 01 50 */ stfs f0, 0x150(r31) /* 80034084 0002FCE4 80 01 00 A8 */ lwz r0, 0xa8(r1) /* 80034088 0002FCE8 90 1F 01 54 */ stw r0, 0x154(r31) /* 8003408C 0002FCEC 80 01 00 AC */ lwz r0, 0xac(r1) /* 80034090 0002FCF0 90 1F 01 58 */ stw r0, 0x158(r31) /* 80034094 0002FCF4 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80034098 0002FCF8 90 1F 01 60 */ stw r0, 0x160(r31) /* 8003409C 0002FCFC 80 01 00 B8 */ lwz r0, 0xb8(r1) /* 800340A0 0002FD00 90 1F 01 64 */ stw r0, 0x164(r31) /* 800340A4 0002FD04 48 00 08 75 */ bl func_80034918 /* 800340A8 0002FD08 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 /* 800340AC 0002FD0C CB E1 00 F0 */ lfd f31, 0xf0(r1) /* 800340B0 0002FD10 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 /* 800340B4 0002FD14 39 61 00 E0 */ addi r11, r1, 0xe0 /* 800340B8 0002FD18 CB C1 00 E0 */ lfd f30, 0xe0(r1) /* 800340BC 0002FD1C 48 19 30 AD */ bl _restgpr_24 /* 800340C0 0002FD20 80 01 01 04 */ lwz r0, 0x104(r1) /* 800340C4 0002FD24 7C 08 03 A6 */ mtlr r0 /* 800340C8 0002FD28 38 21 01 00 */ addi r1, r1, 0x100 /* 800340CC 0002FD2C 4E 80 00 20 */ blr .global func_800340D0 func_800340D0: /* 800340D0 0002FD30 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800340D4 0002FD34 7C 08 02 A6 */ mflr r0 /* 800340D8 0002FD38 3C 80 43 30 */ lis r4, 0x4330 /* 800340DC 0002FD3C C8 A2 82 00 */ lfd f5, lbl_80640800-_SDA2_BASE_(r2) /* 800340E0 0002FD40 90 01 00 24 */ stw r0, 0x24(r1) /* 800340E4 0002FD44 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 800340E8 0002FD48 90 81 00 08 */ stw r4, 8(r1) /* 800340EC 0002FD4C A0 A6 00 04 */ lhz r5, 4(r6) /* 800340F0 0002FD50 A0 06 00 06 */ lhz r0, 6(r6) /* 800340F4 0002FD54 90 A1 00 0C */ stw r5, 0xc(r1) /* 800340F8 0002FD58 C8 01 00 08 */ lfd f0, 8(r1) /* 800340FC 0002FD5C 90 01 00 14 */ stw r0, 0x14(r1) /* 80034100 0002FD60 EC C0 28 28 */ fsubs f6, f0, f5 /* 80034104 0002FD64 90 81 00 10 */ stw r4, 0x10(r1) /* 80034108 0002FD68 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003410C 0002FD6C EC E1 30 24 */ fdivs f7, f1, f6 /* 80034110 0002FD70 EC 00 28 28 */ fsubs f0, f0, f5 /* 80034114 0002FD74 D0 E3 01 A8 */ stfs f7, 0x1a8(r3) /* 80034118 0002FD78 EC A3 30 24 */ fdivs f5, f3, f6 /* 8003411C 0002FD7C EC C2 00 24 */ fdivs f6, f2, f0 /* 80034120 0002FD80 D0 A3 01 B0 */ stfs f5, 0x1b0(r3) /* 80034124 0002FD84 EC 04 00 24 */ fdivs f0, f4, f0 /* 80034128 0002FD88 D0 C3 01 AC */ stfs f6, 0x1ac(r3) /* 8003412C 0002FD8C FC 07 28 00 */ fcmpu cr0, f7, f5 /* 80034130 0002FD90 D0 03 01 B4 */ stfs f0, 0x1b4(r3) /* 80034134 0002FD94 41 82 00 2C */ beq lbl_80034160 /* 80034138 0002FD98 FC 06 00 00 */ fcmpu cr0, f6, f0 /* 8003413C 0002FD9C 40 82 00 08 */ bne lbl_80034144 /* 80034140 0002FDA0 48 00 00 20 */ b lbl_80034160 lbl_80034144: /* 80034144 0002FDA4 D0 23 01 B8 */ stfs f1, 0x1b8(r3) /* 80034148 0002FDA8 38 80 00 04 */ li r4, 4 /* 8003414C 0002FDAC D0 43 01 BC */ stfs f2, 0x1bc(r3) /* 80034150 0002FDB0 D0 63 01 C0 */ stfs f3, 0x1c0(r3) /* 80034154 0002FDB4 D0 83 01 C4 */ stfs f4, 0x1c4(r3) /* 80034158 0002FDB8 48 00 07 65 */ bl func_800348BC /* 8003415C 0002FDBC 48 00 07 BD */ bl func_80034918 lbl_80034160: /* 80034160 0002FDC0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80034164 0002FDC4 7C 08 03 A6 */ mtlr r0 /* 80034168 0002FDC8 38 21 00 20 */ addi r1, r1, 0x20 /* 8003416C 0002FDCC 4E 80 00 20 */ blr .global func_80034170 func_80034170: /* 80034170 0002FDD0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80034174 0002FDD4 7C 08 02 A6 */ mflr r0 /* 80034178 0002FDD8 90 01 00 54 */ stw r0, 0x54(r1) /* 8003417C 0002FDDC DB E1 00 40 */ stfd f31, 0x40(r1) /* 80034180 0002FDE0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80034184 0002FDE4 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80034188 0002FDE8 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 8003418C 0002FDEC DB A1 00 20 */ stfd f29, 0x20(r1) /* 80034190 0002FDF0 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 80034194 0002FDF4 3C 80 43 30 */ lis r4, 0x4330 /* 80034198 0002FDF8 C0 42 81 E4 */ lfs f2, lbl_806407E4-_SDA2_BASE_(r2) /* 8003419C 0002FDFC FF A0 08 90 */ fmr f29, f1 /* 800341A0 0002FE00 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800341A4 0002FE04 7C 7F 1B 78 */ mr r31, r3 /* 800341A8 0002FE08 C8 62 82 00 */ lfd f3, lbl_80640800-_SDA2_BASE_(r2) /* 800341AC 0002FE0C FC 01 10 40 */ fcmpo cr0, f1, f2 /* 800341B0 0002FE10 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 800341B4 0002FE14 90 81 00 08 */ stw r4, 8(r1) /* 800341B8 0002FE18 A0 A6 00 04 */ lhz r5, 4(r6) /* 800341BC 0002FE1C A0 06 00 06 */ lhz r0, 6(r6) /* 800341C0 0002FE20 90 A1 00 0C */ stw r5, 0xc(r1) /* 800341C4 0002FE24 C8 01 00 08 */ lfd f0, 8(r1) /* 800341C8 0002FE28 90 01 00 14 */ stw r0, 0x14(r1) /* 800341CC 0002FE2C EF E0 18 28 */ fsubs f31, f0, f3 /* 800341D0 0002FE30 90 81 00 10 */ stw r4, 0x10(r1) /* 800341D4 0002FE34 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800341D8 0002FE38 EF C0 18 28 */ fsubs f30, f0, f3 /* 800341DC 0002FE3C 4C 40 13 82 */ cror 2, 0, 2 /* 800341E0 0002FE40 40 82 00 18 */ bne lbl_800341F8 /* 800341E4 0002FE44 38 80 00 00 */ li r4, 0 /* 800341E8 0002FE48 48 00 06 D5 */ bl func_800348BC /* 800341EC 0002FE4C 7F E3 FB 78 */ mr r3, r31 /* 800341F0 0002FE50 4B FF FA 7D */ bl func_80033C6C /* 800341F4 0002FE54 48 00 00 60 */ b lbl_80034254 lbl_800341F8: /* 800341F8 0002FE58 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 800341FC 0002FE5C 4C 41 13 82 */ cror 2, 1, 2 /* 80034200 0002FE60 40 82 00 10 */ bne lbl_80034210 /* 80034204 0002FE64 38 80 00 00 */ li r4, 0 /* 80034208 0002FE68 48 00 06 B5 */ bl func_800348BC /* 8003420C 0002FE6C 48 00 00 48 */ b lbl_80034254 lbl_80034210: /* 80034210 0002FE70 C0 03 01 D4 */ lfs f0, 0x1d4(r3) /* 80034214 0002FE74 FC 20 10 90 */ fmr f1, f2 /* 80034218 0002FE78 FC 60 F8 90 */ fmr f3, f31 /* 8003421C 0002FE7C EC 9D 00 2A */ fadds f4, f29, f0 /* 80034220 0002FE80 48 00 12 DD */ bl func_800354FC /* 80034224 0002FE84 C0 1F 01 D4 */ lfs f0, 0x1d4(r31) /* 80034228 0002FE88 FC 60 F8 90 */ fmr f3, f31 /* 8003422C 0002FE8C FC 80 F0 90 */ fmr f4, f30 /* 80034230 0002FE90 C0 22 81 E4 */ lfs f1, lbl_806407E4-_SDA2_BASE_(r2) /* 80034234 0002FE94 EC 5D 00 2A */ fadds f2, f29, f0 /* 80034238 0002FE98 38 7F 00 B4 */ addi r3, r31, 0xb4 /* 8003423C 0002FE9C 48 00 12 C1 */ bl func_800354FC /* 80034240 0002FEA0 D3 BF 01 CC */ stfs f29, 0x1cc(r31) /* 80034244 0002FEA4 7F E3 FB 78 */ mr r3, r31 /* 80034248 0002FEA8 38 80 00 02 */ li r4, 2 /* 8003424C 0002FEAC 48 00 06 71 */ bl func_800348BC /* 80034250 0002FEB0 48 00 06 C9 */ bl func_80034918 lbl_80034254: /* 80034254 0002FEB4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80034258 0002FEB8 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8003425C 0002FEBC E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80034260 0002FEC0 CB C1 00 30 */ lfd f30, 0x30(r1) /* 80034264 0002FEC4 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 80034268 0002FEC8 CB A1 00 20 */ lfd f29, 0x20(r1) /* 8003426C 0002FECC 80 01 00 54 */ lwz r0, 0x54(r1) /* 80034270 0002FED0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80034274 0002FED4 7C 08 03 A6 */ mtlr r0 /* 80034278 0002FED8 38 21 00 50 */ addi r1, r1, 0x50 /* 8003427C 0002FEDC 4E 80 00 20 */ blr .global func_80034280 func_80034280: /* 80034280 0002FEE0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80034284 0002FEE4 7C 08 02 A6 */ mflr r0 /* 80034288 0002FEE8 90 01 00 54 */ stw r0, 0x54(r1) /* 8003428C 0002FEEC DB E1 00 40 */ stfd f31, 0x40(r1) /* 80034290 0002FEF0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80034294 0002FEF4 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80034298 0002FEF8 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 8003429C 0002FEFC DB A1 00 20 */ stfd f29, 0x20(r1) /* 800342A0 0002FF00 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 800342A4 0002FF04 3C 80 43 30 */ lis r4, 0x4330 /* 800342A8 0002FF08 C0 42 81 E4 */ lfs f2, lbl_806407E4-_SDA2_BASE_(r2) /* 800342AC 0002FF0C FF A0 08 90 */ fmr f29, f1 /* 800342B0 0002FF10 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800342B4 0002FF14 7C 7F 1B 78 */ mr r31, r3 /* 800342B8 0002FF18 C8 62 82 00 */ lfd f3, lbl_80640800-_SDA2_BASE_(r2) /* 800342BC 0002FF1C FC 01 10 40 */ fcmpo cr0, f1, f2 /* 800342C0 0002FF20 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 800342C4 0002FF24 90 81 00 08 */ stw r4, 8(r1) /* 800342C8 0002FF28 A0 A6 00 04 */ lhz r5, 4(r6) /* 800342CC 0002FF2C A0 06 00 06 */ lhz r0, 6(r6) /* 800342D0 0002FF30 90 A1 00 0C */ stw r5, 0xc(r1) /* 800342D4 0002FF34 C8 01 00 08 */ lfd f0, 8(r1) /* 800342D8 0002FF38 90 01 00 14 */ stw r0, 0x14(r1) /* 800342DC 0002FF3C EF E0 18 28 */ fsubs f31, f0, f3 /* 800342E0 0002FF40 90 81 00 10 */ stw r4, 0x10(r1) /* 800342E4 0002FF44 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800342E8 0002FF48 EF C0 18 28 */ fsubs f30, f0, f3 /* 800342EC 0002FF4C 4C 40 13 82 */ cror 2, 0, 2 /* 800342F0 0002FF50 40 82 00 18 */ bne lbl_80034308 /* 800342F4 0002FF54 38 80 00 00 */ li r4, 0 /* 800342F8 0002FF58 48 00 05 C5 */ bl func_800348BC /* 800342FC 0002FF5C 7F E3 FB 78 */ mr r3, r31 /* 80034300 0002FF60 4B FF F9 6D */ bl func_80033C6C /* 80034304 0002FF64 48 00 00 60 */ b lbl_80034364 lbl_80034308: /* 80034308 0002FF68 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 8003430C 0002FF6C 4C 41 13 82 */ cror 2, 1, 2 /* 80034310 0002FF70 40 82 00 10 */ bne lbl_80034320 /* 80034314 0002FF74 38 80 00 00 */ li r4, 0 /* 80034318 0002FF78 48 00 05 A5 */ bl func_800348BC /* 8003431C 0002FF7C 48 00 00 48 */ b lbl_80034364 lbl_80034320: /* 80034320 0002FF80 C0 03 01 D0 */ lfs f0, 0x1d0(r3) /* 80034324 0002FF84 FC 20 10 90 */ fmr f1, f2 /* 80034328 0002FF88 FC 80 F0 90 */ fmr f4, f30 /* 8003432C 0002FF8C EC 7D 00 2A */ fadds f3, f29, f0 /* 80034330 0002FF90 48 00 11 CD */ bl func_800354FC /* 80034334 0002FF94 C0 1F 01 D0 */ lfs f0, 0x1d0(r31) /* 80034338 0002FF98 FC 60 F8 90 */ fmr f3, f31 /* 8003433C 0002FF9C FC 80 F0 90 */ fmr f4, f30 /* 80034340 0002FFA0 C0 42 81 E4 */ lfs f2, lbl_806407E4-_SDA2_BASE_(r2) /* 80034344 0002FFA4 EC 3D 00 2A */ fadds f1, f29, f0 /* 80034348 0002FFA8 38 7F 00 B4 */ addi r3, r31, 0xb4 /* 8003434C 0002FFAC 48 00 11 B1 */ bl func_800354FC /* 80034350 0002FFB0 D3 BF 01 C8 */ stfs f29, 0x1c8(r31) /* 80034354 0002FFB4 7F E3 FB 78 */ mr r3, r31 /* 80034358 0002FFB8 38 80 00 03 */ li r4, 3 /* 8003435C 0002FFBC 48 00 05 61 */ bl func_800348BC /* 80034360 0002FFC0 48 00 05 B9 */ bl func_80034918 lbl_80034364: /* 80034364 0002FFC4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80034368 0002FFC8 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8003436C 0002FFCC E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80034370 0002FFD0 CB C1 00 30 */ lfd f30, 0x30(r1) /* 80034374 0002FFD4 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 80034378 0002FFD8 CB A1 00 20 */ lfd f29, 0x20(r1) /* 8003437C 0002FFDC 80 01 00 54 */ lwz r0, 0x54(r1) /* 80034380 0002FFE0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80034384 0002FFE4 7C 08 03 A6 */ mtlr r0 /* 80034388 0002FFE8 38 21 00 50 */ addi r1, r1, 0x50 /* 8003438C 0002FFEC 4E 80 00 20 */ blr .global func_80034390 func_80034390: /* 80034390 0002FFF0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80034394 0002FFF4 7C 08 02 A6 */ mflr r0 /* 80034398 0002FFF8 90 01 00 34 */ stw r0, 0x34(r1) /* 8003439C 0002FFFC DB E1 00 20 */ stfd f31, 0x20(r1) /* 800343A0 00030000 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800343A4 00030004 FF E0 28 90 */ fmr f31, f5 /* 800343A8 00030008 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 800343AC 0003000C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800343B0 00030010 7C 9F 23 78 */ mr r31, r4 /* 800343B4 00030014 FC 00 28 00 */ fcmpu cr0, f0, f5 /* 800343B8 00030018 93 C1 00 18 */ stw r30, 0x18(r1) /* 800343BC 0003001C 7C 7E 1B 78 */ mr r30, r3 /* 800343C0 00030020 D0 21 00 08 */ stfs f1, 8(r1) /* 800343C4 00030024 D0 41 00 0C */ stfs f2, 0xc(r1) /* 800343C8 00030028 D0 61 00 10 */ stfs f3, 0x10(r1) /* 800343CC 0003002C D0 81 00 14 */ stfs f4, 0x14(r1) /* 800343D0 00030030 40 82 00 1C */ bne lbl_800343EC /* 800343D4 00030034 FC 20 08 18 */ frsp f1, f1 /* 800343D8 00030038 FC 40 10 18 */ frsp f2, f2 /* 800343DC 0003003C FC 60 18 18 */ frsp f3, f3 /* 800343E0 00030040 FC 80 20 18 */ frsp f4, f4 /* 800343E4 00030044 4B FF FC ED */ bl func_800340D0 /* 800343E8 00030048 48 00 00 8C */ b lbl_80034474 lbl_800343EC: /* 800343EC 0003004C 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 800343F0 00030050 2C 00 00 04 */ cmpwi r0, 4 /* 800343F4 00030054 40 82 00 80 */ bne lbl_80034474 /* 800343F8 00030058 48 00 05 BD */ bl func_800349B4 /* 800343FC 0003005C FC 20 F8 90 */ fmr f1, f31 /* 80034400 00030060 38 9E 01 B8 */ addi r4, r30, 0x1b8 /* 80034404 00030064 7C 86 23 78 */ mr r6, r4 /* 80034408 00030068 7F E7 FB 78 */ mr r7, r31 /* 8003440C 0003006C 38 7E 02 C4 */ addi r3, r30, 0x2c4 /* 80034410 00030070 38 A1 00 08 */ addi r5, r1, 8 /* 80034414 00030074 48 01 BF 29 */ bl func_8005033C /* 80034418 00030078 FC 20 F8 90 */ fmr f1, f31 /* 8003441C 0003007C 38 9E 01 BC */ addi r4, r30, 0x1bc /* 80034420 00030080 7C 86 23 78 */ mr r6, r4 /* 80034424 00030084 7F E7 FB 78 */ mr r7, r31 /* 80034428 00030088 38 7E 02 E8 */ addi r3, r30, 0x2e8 /* 8003442C 0003008C 38 A1 00 0C */ addi r5, r1, 0xc /* 80034430 00030090 48 01 BF 0D */ bl func_8005033C /* 80034434 00030094 FC 20 F8 90 */ fmr f1, f31 /* 80034438 00030098 38 9E 01 C0 */ addi r4, r30, 0x1c0 /* 8003443C 0003009C 7C 86 23 78 */ mr r6, r4 /* 80034440 000300A0 7F E7 FB 78 */ mr r7, r31 /* 80034444 000300A4 38 7E 03 0C */ addi r3, r30, 0x30c /* 80034448 000300A8 38 A1 00 10 */ addi r5, r1, 0x10 /* 8003444C 000300AC 48 01 BE F1 */ bl func_8005033C /* 80034450 000300B0 FC 20 F8 90 */ fmr f1, f31 /* 80034454 000300B4 38 9E 01 C4 */ addi r4, r30, 0x1c4 /* 80034458 000300B8 7C 86 23 78 */ mr r6, r4 /* 8003445C 000300BC 7F E7 FB 78 */ mr r7, r31 /* 80034460 000300C0 38 7E 03 30 */ addi r3, r30, 0x330 /* 80034464 000300C4 38 A1 00 14 */ addi r5, r1, 0x14 /* 80034468 000300C8 48 01 BE D5 */ bl func_8005033C /* 8003446C 000300CC 38 00 00 04 */ li r0, 4 /* 80034470 000300D0 90 1E 02 00 */ stw r0, 0x200(r30) lbl_80034474: /* 80034474 000300D4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80034478 000300D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003447C 000300DC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80034480 000300E0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80034484 000300E4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80034488 000300E8 7C 08 03 A6 */ mtlr r0 /* 8003448C 000300EC 38 21 00 30 */ addi r1, r1, 0x30 /* 80034490 000300F0 4E 80 00 20 */ blr .global func_80034494 func_80034494: /* 80034494 000300F4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80034498 000300F8 7C 08 02 A6 */ mflr r0 /* 8003449C 000300FC 90 01 00 34 */ stw r0, 0x34(r1) /* 800344A0 00030100 DB E1 00 20 */ stfd f31, 0x20(r1) /* 800344A4 00030104 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800344A8 00030108 FF E0 10 90 */ fmr f31, f2 /* 800344AC 0003010C C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 800344B0 00030110 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800344B4 00030114 7C 9F 23 78 */ mr r31, r4 /* 800344B8 00030118 FC 00 10 00 */ fcmpu cr0, f0, f2 /* 800344BC 0003011C 93 C1 00 18 */ stw r30, 0x18(r1) /* 800344C0 00030120 7C 7E 1B 78 */ mr r30, r3 /* 800344C4 00030124 D0 21 00 08 */ stfs f1, 8(r1) /* 800344C8 00030128 40 82 00 10 */ bne lbl_800344D8 /* 800344CC 0003012C FC 20 08 18 */ frsp f1, f1 /* 800344D0 00030130 4B FF FC A1 */ bl func_80034170 /* 800344D4 00030134 48 00 00 38 */ b lbl_8003450C lbl_800344D8: /* 800344D8 00030138 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 800344DC 0003013C 2C 00 00 02 */ cmpwi r0, 2 /* 800344E0 00030140 40 82 00 2C */ bne lbl_8003450C /* 800344E4 00030144 48 00 04 D1 */ bl func_800349B4 /* 800344E8 00030148 FC 20 F8 90 */ fmr f1, f31 /* 800344EC 0003014C 38 9E 01 CC */ addi r4, r30, 0x1cc /* 800344F0 00030150 7C 86 23 78 */ mr r6, r4 /* 800344F4 00030154 7F E7 FB 78 */ mr r7, r31 /* 800344F8 00030158 38 7E 02 C4 */ addi r3, r30, 0x2c4 /* 800344FC 0003015C 38 A1 00 08 */ addi r5, r1, 8 /* 80034500 00030160 48 01 BE 3D */ bl func_8005033C /* 80034504 00030164 38 00 00 02 */ li r0, 2 /* 80034508 00030168 90 1E 02 00 */ stw r0, 0x200(r30) lbl_8003450C: /* 8003450C 0003016C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80034510 00030170 80 01 00 34 */ lwz r0, 0x34(r1) /* 80034514 00030174 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80034518 00030178 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003451C 0003017C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80034520 00030180 7C 08 03 A6 */ mtlr r0 /* 80034524 00030184 38 21 00 30 */ addi r1, r1, 0x30 /* 80034528 00030188 4E 80 00 20 */ blr .global func_8003452C func_8003452C: /* 8003452C 0003018C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80034530 00030190 7C 08 02 A6 */ mflr r0 /* 80034534 00030194 90 01 00 34 */ stw r0, 0x34(r1) /* 80034538 00030198 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8003453C 0003019C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80034540 000301A0 FF E0 10 90 */ fmr f31, f2 /* 80034544 000301A4 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80034548 000301A8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003454C 000301AC 7C 9F 23 78 */ mr r31, r4 /* 80034550 000301B0 FC 00 10 00 */ fcmpu cr0, f0, f2 /* 80034554 000301B4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80034558 000301B8 7C 7E 1B 78 */ mr r30, r3 /* 8003455C 000301BC D0 21 00 08 */ stfs f1, 8(r1) /* 80034560 000301C0 40 82 00 10 */ bne lbl_80034570 /* 80034564 000301C4 FC 20 08 18 */ frsp f1, f1 /* 80034568 000301C8 4B FF FD 19 */ bl func_80034280 /* 8003456C 000301CC 48 00 00 38 */ b lbl_800345A4 lbl_80034570: /* 80034570 000301D0 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034574 000301D4 2C 00 00 03 */ cmpwi r0, 3 /* 80034578 000301D8 40 82 00 2C */ bne lbl_800345A4 /* 8003457C 000301DC 48 00 04 39 */ bl func_800349B4 /* 80034580 000301E0 FC 20 F8 90 */ fmr f1, f31 /* 80034584 000301E4 38 9E 01 C8 */ addi r4, r30, 0x1c8 /* 80034588 000301E8 7C 86 23 78 */ mr r6, r4 /* 8003458C 000301EC 7F E7 FB 78 */ mr r7, r31 /* 80034590 000301F0 38 7E 02 C4 */ addi r3, r30, 0x2c4 /* 80034594 000301F4 38 A1 00 08 */ addi r5, r1, 8 /* 80034598 000301F8 48 01 BD A5 */ bl func_8005033C /* 8003459C 000301FC 38 00 00 03 */ li r0, 3 /* 800345A0 00030200 90 1E 02 00 */ stw r0, 0x200(r30) lbl_800345A4: /* 800345A4 00030204 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800345A8 00030208 80 01 00 34 */ lwz r0, 0x34(r1) /* 800345AC 0003020C CB E1 00 20 */ lfd f31, 0x20(r1) /* 800345B0 00030210 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800345B4 00030214 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800345B8 00030218 7C 08 03 A6 */ mtlr r0 /* 800345BC 0003021C 38 21 00 30 */ addi r1, r1, 0x30 /* 800345C0 00030220 4E 80 00 20 */ blr .global func_800345C4 func_800345C4: /* 800345C4 00030224 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800345C8 00030228 7C 08 02 A6 */ mflr r0 /* 800345CC 0003022C C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 800345D0 00030230 7C A6 2B 78 */ mr r6, r5 /* 800345D4 00030234 90 01 00 14 */ stw r0, 0x14(r1) /* 800345D8 00030238 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800345DC 0003023C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800345E0 00030240 7C 7F 1B 78 */ mr r31, r3 /* 800345E4 00030244 4C 40 13 82 */ cror 2, 0, 2 /* 800345E8 00030248 40 82 00 0C */ bne lbl_800345F4 /* 800345EC 0003024C D0 03 01 D4 */ stfs f0, 0x1d4(r3) /* 800345F0 00030250 48 00 00 2C */ b lbl_8003461C lbl_800345F4: /* 800345F4 00030254 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 800345F8 00030258 2C 00 00 02 */ cmpwi r0, 2 /* 800345FC 0003025C 40 82 00 20 */ bne lbl_8003461C /* 80034600 00030260 38 A3 01 D4 */ addi r5, r3, 0x1d4 /* 80034604 00030264 38 E0 00 00 */ li r7, 0 /* 80034608 00030268 39 00 00 00 */ li r8, 0 /* 8003460C 0003026C 38 63 02 64 */ addi r3, r3, 0x264 /* 80034610 00030270 48 01 C8 6D */ bl func_80050E7C /* 80034614 00030274 38 00 00 02 */ li r0, 2 /* 80034618 00030278 90 1F 02 00 */ stw r0, 0x200(r31) lbl_8003461C: /* 8003461C 0003027C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80034620 00030280 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80034624 00030284 7C 08 03 A6 */ mtlr r0 /* 80034628 00030288 38 21 00 10 */ addi r1, r1, 0x10 /* 8003462C 0003028C 4E 80 00 20 */ blr .global func_80034630 func_80034630: /* 80034630 00030290 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80034634 00030294 7C 08 02 A6 */ mflr r0 /* 80034638 00030298 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 8003463C 0003029C 7C A6 2B 78 */ mr r6, r5 /* 80034640 000302A0 90 01 00 14 */ stw r0, 0x14(r1) /* 80034644 000302A4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80034648 000302A8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003464C 000302AC 7C 7F 1B 78 */ mr r31, r3 /* 80034650 000302B0 4C 40 13 82 */ cror 2, 0, 2 /* 80034654 000302B4 40 82 00 0C */ bne lbl_80034660 /* 80034658 000302B8 D0 03 01 D0 */ stfs f0, 0x1d0(r3) /* 8003465C 000302BC 48 00 00 2C */ b lbl_80034688 lbl_80034660: /* 80034660 000302C0 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034664 000302C4 2C 00 00 03 */ cmpwi r0, 3 /* 80034668 000302C8 40 82 00 20 */ bne lbl_80034688 /* 8003466C 000302CC 38 A3 01 D0 */ addi r5, r3, 0x1d0 /* 80034670 000302D0 38 E0 00 00 */ li r7, 0 /* 80034674 000302D4 39 00 00 00 */ li r8, 0 /* 80034678 000302D8 38 63 02 04 */ addi r3, r3, 0x204 /* 8003467C 000302DC 48 01 C8 01 */ bl func_80050E7C /* 80034680 000302E0 38 00 00 03 */ li r0, 3 /* 80034684 000302E4 90 1F 02 00 */ stw r0, 0x200(r31) lbl_80034688: /* 80034688 000302E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003468C 000302EC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80034690 000302F0 7C 08 03 A6 */ mtlr r0 /* 80034694 000302F4 38 21 00 10 */ addi r1, r1, 0x10 /* 80034698 000302F8 4E 80 00 20 */ blr .global func_8003469C func_8003469C: /* 8003469C 000302FC 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800346A0 00030300 7C 08 02 A6 */ mflr r0 /* 800346A4 00030304 90 01 00 74 */ stw r0, 0x74(r1) /* 800346A8 00030308 DB E1 00 60 */ stfd f31, 0x60(r1) /* 800346AC 0003030C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 800346B0 00030310 DB C1 00 50 */ stfd f30, 0x50(r1) /* 800346B4 00030314 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 800346B8 00030318 DB A1 00 40 */ stfd f29, 0x40(r1) /* 800346BC 0003031C F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 800346C0 00030320 DB 81 00 30 */ stfd f28, 0x30(r1) /* 800346C4 00030324 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 800346C8 00030328 DB 61 00 20 */ stfd f27, 0x20(r1) /* 800346CC 0003032C F3 61 00 28 */ psq_st f27, 40(r1), 0, qr0 /* 800346D0 00030330 FF 60 08 90 */ fmr f27, f1 /* 800346D4 00030334 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 800346D8 00030338 FF 80 10 90 */ fmr f28, f2 /* 800346DC 0003033C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800346E0 00030340 FF A0 18 90 */ fmr f29, f3 /* 800346E4 00030344 FF C0 20 90 */ fmr f30, f4 /* 800346E8 00030348 93 C1 00 18 */ stw r30, 0x18(r1) /* 800346EC 0003034C FF E0 28 90 */ fmr f31, f5 /* 800346F0 00030350 FC 00 20 00 */ fcmpu cr0, f0, f4 /* 800346F4 00030354 7C 9E 23 78 */ mr r30, r4 /* 800346F8 00030358 93 A1 00 14 */ stw r29, 0x14(r1) /* 800346FC 0003035C 7C 7D 1B 78 */ mr r29, r3 /* 80034700 00030360 7C BF 2B 78 */ mr r31, r5 /* 80034704 00030364 41 82 00 74 */ beq lbl_80034778 /* 80034708 00030368 FC 00 28 00 */ fcmpu cr0, f0, f5 /* 8003470C 0003036C 40 82 00 08 */ bne lbl_80034714 /* 80034710 00030370 48 00 00 68 */ b lbl_80034778 lbl_80034714: /* 80034714 00030374 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034718 00030378 2C 00 00 02 */ cmpwi r0, 2 /* 8003471C 0003037C 40 82 00 5C */ bne lbl_80034778 /* 80034720 00030380 48 00 02 95 */ bl func_800349B4 /* 80034724 00030384 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80034728 00030388 80 03 00 70 */ lwz r0, 0x70(r3) /* 8003472C 0003038C 2C 00 00 01 */ cmpwi r0, 1 /* 80034730 00030390 40 82 00 14 */ bne lbl_80034744 /* 80034734 00030394 C0 02 82 08 */ lfs f0, lbl_80640808-_SDA2_BASE_(r2) /* 80034738 00030398 FC 00 E8 00 */ fcmpu cr0, f0, f29 /* 8003473C 0003039C 40 82 00 08 */ bne lbl_80034744 /* 80034740 000303A0 C3 A2 81 DC */ lfs f29, lbl_806407DC-_SDA2_BASE_(r2) lbl_80034744: /* 80034744 000303A4 FC 20 D8 90 */ fmr f1, f27 /* 80034748 000303A8 7F C4 F3 78 */ mr r4, r30 /* 8003474C 000303AC FC 40 F0 90 */ fmr f2, f30 /* 80034750 000303B0 7F E6 FB 78 */ mr r6, r31 /* 80034754 000303B4 FC 60 F8 90 */ fmr f3, f31 /* 80034758 000303B8 38 7D 04 5C */ addi r3, r29, 0x45c /* 8003475C 000303BC FC 80 E8 90 */ fmr f4, f29 /* 80034760 000303C0 38 BD 01 CC */ addi r5, r29, 0x1cc /* 80034764 000303C4 FC A0 E0 90 */ fmr f5, f28 /* 80034768 000303C8 38 E0 00 01 */ li r7, 1 /* 8003476C 000303CC 48 01 C9 C9 */ bl func_80051134 /* 80034770 000303D0 38 00 00 02 */ li r0, 2 /* 80034774 000303D4 90 1D 02 00 */ stw r0, 0x200(r29) lbl_80034778: /* 80034778 000303D8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8003477C 000303DC CB E1 00 60 */ lfd f31, 0x60(r1) /* 80034780 000303E0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 80034784 000303E4 CB C1 00 50 */ lfd f30, 0x50(r1) /* 80034788 000303E8 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8003478C 000303EC CB A1 00 40 */ lfd f29, 0x40(r1) /* 80034790 000303F0 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 80034794 000303F4 CB 81 00 30 */ lfd f28, 0x30(r1) /* 80034798 000303F8 E3 61 00 28 */ psq_l f27, 40(r1), 0, qr0 /* 8003479C 000303FC CB 61 00 20 */ lfd f27, 0x20(r1) /* 800347A0 00030400 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800347A4 00030404 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800347A8 00030408 80 01 00 74 */ lwz r0, 0x74(r1) /* 800347AC 0003040C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800347B0 00030410 7C 08 03 A6 */ mtlr r0 /* 800347B4 00030414 38 21 00 70 */ addi r1, r1, 0x70 /* 800347B8 00030418 4E 80 00 20 */ blr .global func_800347BC func_800347BC: /* 800347BC 0003041C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800347C0 00030420 7C 08 02 A6 */ mflr r0 /* 800347C4 00030424 90 01 00 74 */ stw r0, 0x74(r1) /* 800347C8 00030428 DB E1 00 60 */ stfd f31, 0x60(r1) /* 800347CC 0003042C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 800347D0 00030430 DB C1 00 50 */ stfd f30, 0x50(r1) /* 800347D4 00030434 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 800347D8 00030438 DB A1 00 40 */ stfd f29, 0x40(r1) /* 800347DC 0003043C F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 800347E0 00030440 DB 81 00 30 */ stfd f28, 0x30(r1) /* 800347E4 00030444 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 800347E8 00030448 DB 61 00 20 */ stfd f27, 0x20(r1) /* 800347EC 0003044C F3 61 00 28 */ psq_st f27, 40(r1), 0, qr0 /* 800347F0 00030450 FF 60 08 90 */ fmr f27, f1 /* 800347F4 00030454 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 800347F8 00030458 FF 80 10 90 */ fmr f28, f2 /* 800347FC 0003045C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80034800 00030460 FF A0 18 90 */ fmr f29, f3 /* 80034804 00030464 FF C0 20 90 */ fmr f30, f4 /* 80034808 00030468 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003480C 0003046C FF E0 28 90 */ fmr f31, f5 /* 80034810 00030470 FC 00 20 00 */ fcmpu cr0, f0, f4 /* 80034814 00030474 7C 9E 23 78 */ mr r30, r4 /* 80034818 00030478 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003481C 0003047C 7C 7D 1B 78 */ mr r29, r3 /* 80034820 00030480 7C BF 2B 78 */ mr r31, r5 /* 80034824 00030484 41 82 00 54 */ beq lbl_80034878 /* 80034828 00030488 FC 00 28 00 */ fcmpu cr0, f0, f5 /* 8003482C 0003048C 40 82 00 08 */ bne lbl_80034834 /* 80034830 00030490 48 00 00 48 */ b lbl_80034878 lbl_80034834: /* 80034834 00030494 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034838 00030498 2C 00 00 03 */ cmpwi r0, 3 /* 8003483C 0003049C 40 82 00 3C */ bne lbl_80034878 /* 80034840 000304A0 48 00 01 75 */ bl func_800349B4 /* 80034844 000304A4 FC 20 D8 90 */ fmr f1, f27 /* 80034848 000304A8 7F C4 F3 78 */ mr r4, r30 /* 8003484C 000304AC FC 40 F0 90 */ fmr f2, f30 /* 80034850 000304B0 7F E6 FB 78 */ mr r6, r31 /* 80034854 000304B4 FC 60 F8 90 */ fmr f3, f31 /* 80034858 000304B8 38 7D 03 9C */ addi r3, r29, 0x39c /* 8003485C 000304BC FC 80 E8 90 */ fmr f4, f29 /* 80034860 000304C0 38 BD 01 C8 */ addi r5, r29, 0x1c8 /* 80034864 000304C4 FC A0 E0 90 */ fmr f5, f28 /* 80034868 000304C8 38 E0 00 01 */ li r7, 1 /* 8003486C 000304CC 48 01 C8 C9 */ bl func_80051134 /* 80034870 000304D0 38 00 00 03 */ li r0, 3 /* 80034874 000304D4 90 1D 02 00 */ stw r0, 0x200(r29) lbl_80034878: /* 80034878 000304D8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8003487C 000304DC CB E1 00 60 */ lfd f31, 0x60(r1) /* 80034880 000304E0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 80034884 000304E4 CB C1 00 50 */ lfd f30, 0x50(r1) /* 80034888 000304E8 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8003488C 000304EC CB A1 00 40 */ lfd f29, 0x40(r1) /* 80034890 000304F0 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 80034894 000304F4 CB 81 00 30 */ lfd f28, 0x30(r1) /* 80034898 000304F8 E3 61 00 28 */ psq_l f27, 40(r1), 0, qr0 /* 8003489C 000304FC CB 61 00 20 */ lfd f27, 0x20(r1) /* 800348A0 00030500 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800348A4 00030504 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800348A8 00030508 80 01 00 74 */ lwz r0, 0x74(r1) /* 800348AC 0003050C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800348B0 00030510 7C 08 03 A6 */ mtlr r0 /* 800348B4 00030514 38 21 00 70 */ addi r1, r1, 0x70 /* 800348B8 00030518 4E 80 00 20 */ blr .global func_800348BC func_800348BC: /* 800348BC 0003051C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800348C0 00030520 7C 08 02 A6 */ mflr r0 /* 800348C4 00030524 2C 04 00 00 */ cmpwi r4, 0 /* 800348C8 00030528 90 01 00 14 */ stw r0, 0x14(r1) /* 800348CC 0003052C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800348D0 00030530 7C 9F 23 78 */ mr r31, r4 /* 800348D4 00030534 93 C1 00 08 */ stw r30, 8(r1) /* 800348D8 00030538 7C 7E 1B 78 */ mr r30, r3 /* 800348DC 0003053C 41 82 00 14 */ beq lbl_800348F0 /* 800348E0 00030540 41 80 00 20 */ blt lbl_80034900 /* 800348E4 00030544 2C 04 00 08 */ cmpwi r4, 8 /* 800348E8 00030548 40 80 00 18 */ bge lbl_80034900 /* 800348EC 0003054C 48 00 00 10 */ b lbl_800348FC lbl_800348F0: /* 800348F0 00030550 48 00 00 29 */ bl func_80034918 /* 800348F4 00030554 48 00 00 08 */ b lbl_800348FC /* 800348F8 00030558 48 00 00 08 */ b lbl_80034900 lbl_800348FC: /* 800348FC 0003055C 93 FE 01 A0 */ stw r31, 0x1a0(r30) lbl_80034900: /* 80034900 00030560 80 01 00 14 */ lwz r0, 0x14(r1) /* 80034904 00030564 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80034908 00030568 83 C1 00 08 */ lwz r30, 8(r1) /* 8003490C 0003056C 7C 08 03 A6 */ mtlr r0 /* 80034910 00030570 38 21 00 10 */ addi r1, r1, 0x10 /* 80034914 00030574 4E 80 00 20 */ blr .global func_80034918 func_80034918: /* 80034918 00030578 80 6D 97 98 */ lwz r3, lbl_8063EA58-_SDA_BASE_(r13) /* 8003491C 0003057C 2C 03 00 00 */ cmpwi r3, 0 /* 80034920 00030580 4D 82 00 20 */ beqlr /* 80034924 00030584 38 00 00 01 */ li r0, 1 /* 80034928 00030588 98 03 01 A4 */ stb r0, 0x1a4(r3) /* 8003492C 0003058C 4E 80 00 20 */ blr .global func_80034930 func_80034930: /* 80034930 00030590 80 03 02 C4 */ lwz r0, 0x2c4(r3) /* 80034934 00030594 2C 00 00 00 */ cmpwi r0, 0 /* 80034938 00030598 41 82 00 0C */ beq lbl_80034944 /* 8003493C 0003059C 38 60 00 01 */ li r3, 1 /* 80034940 000305A0 4E 80 00 20 */ blr lbl_80034944: /* 80034944 000305A4 80 03 02 E8 */ lwz r0, 0x2e8(r3) /* 80034948 000305A8 2C 00 00 00 */ cmpwi r0, 0 /* 8003494C 000305AC 41 82 00 0C */ beq lbl_80034958 /* 80034950 000305B0 38 60 00 01 */ li r3, 1 /* 80034954 000305B4 4E 80 00 20 */ blr lbl_80034958: /* 80034958 000305B8 38 63 00 48 */ addi r3, r3, 0x48 /* 8003495C 000305BC 80 03 02 C4 */ lwz r0, 0x2c4(r3) /* 80034960 000305C0 2C 00 00 00 */ cmpwi r0, 0 /* 80034964 000305C4 41 82 00 0C */ beq lbl_80034970 /* 80034968 000305C8 38 60 00 01 */ li r3, 1 /* 8003496C 000305CC 4E 80 00 20 */ blr lbl_80034970: /* 80034970 000305D0 80 03 02 E8 */ lwz r0, 0x2e8(r3) /* 80034974 000305D4 2C 00 00 00 */ cmpwi r0, 0 /* 80034978 000305D8 41 82 00 0C */ beq lbl_80034984 /* 8003497C 000305DC 38 60 00 01 */ li r3, 1 /* 80034980 000305E0 4E 80 00 20 */ blr lbl_80034984: /* 80034984 000305E4 80 03 03 0C */ lwz r0, 0x30c(r3) /* 80034988 000305E8 2C 00 00 00 */ cmpwi r0, 0 /* 8003498C 000305EC 41 82 00 0C */ beq lbl_80034998 /* 80034990 000305F0 38 60 00 01 */ li r3, 1 /* 80034994 000305F4 4E 80 00 20 */ blr lbl_80034998: /* 80034998 000305F8 80 03 03 30 */ lwz r0, 0x330(r3) /* 8003499C 000305FC 2C 00 00 00 */ cmpwi r0, 0 /* 800349A0 00030600 41 82 00 0C */ beq lbl_800349AC /* 800349A4 00030604 38 60 00 01 */ li r3, 1 /* 800349A8 00030608 4E 80 00 20 */ blr lbl_800349AC: /* 800349AC 0003060C 38 60 00 00 */ li r3, 0 /* 800349B0 00030610 4E 80 00 20 */ blr .global func_800349B4 func_800349B4: /* 800349B4 00030614 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800349B8 00030618 7C 08 02 A6 */ mflr r0 /* 800349BC 0003061C 90 01 00 14 */ stw r0, 0x14(r1) /* 800349C0 00030620 93 E1 00 0C */ stw r31, 0xc(r1) /* 800349C4 00030624 3B E3 02 C4 */ addi r31, r3, 0x2c4 /* 800349C8 00030628 93 C1 00 08 */ stw r30, 8(r1) /* 800349CC 0003062C 3B C0 00 00 */ li r30, 0 lbl_800349D0: /* 800349D0 00030630 7F E3 FB 78 */ mr r3, r31 /* 800349D4 00030634 48 01 B9 B5 */ bl func_80050388 /* 800349D8 00030638 3B DE 00 01 */ addi r30, r30, 1 /* 800349DC 0003063C 3B FF 00 24 */ addi r31, r31, 0x24 /* 800349E0 00030640 2C 1E 00 06 */ cmpwi r30, 6 /* 800349E4 00030644 41 80 FF EC */ blt lbl_800349D0 /* 800349E8 00030648 80 01 00 14 */ lwz r0, 0x14(r1) /* 800349EC 0003064C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800349F0 00030650 83 C1 00 08 */ lwz r30, 8(r1) /* 800349F4 00030654 7C 08 03 A6 */ mtlr r0 /* 800349F8 00030658 38 21 00 10 */ addi r1, r1, 0x10 /* 800349FC 0003065C 4E 80 00 20 */ blr .global func_80034A00 func_80034A00: /* 80034A00 00030660 C0 22 81 E4 */ lfs f1, lbl_806407E4-_SDA2_BASE_(r2) /* 80034A04 00030664 38 00 00 FF */ li r0, 0xff /* 80034A08 00030668 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80034A0C 0003066C 98 03 01 DC */ stb r0, 0x1dc(r3) /* 80034A10 00030670 98 03 01 DD */ stb r0, 0x1dd(r3) /* 80034A14 00030674 98 03 01 DE */ stb r0, 0x1de(r3) /* 80034A18 00030678 98 03 01 DF */ stb r0, 0x1df(r3) /* 80034A1C 0003067C D0 23 01 E8 */ stfs f1, 0x1e8(r3) /* 80034A20 00030680 D0 23 01 EC */ stfs f1, 0x1ec(r3) /* 80034A24 00030684 D0 23 01 F0 */ stfs f1, 0x1f0(r3) /* 80034A28 00030688 D0 03 01 F4 */ stfs f0, 0x1f4(r3) /* 80034A2C 0003068C D0 03 01 F8 */ stfs f0, 0x1f8(r3) /* 80034A30 00030690 D0 03 01 FC */ stfs f0, 0x1fc(r3) /* 80034A34 00030694 4B FF FF 80 */ b func_800349B4 .global func_80034A38 func_80034A38: /* 80034A38 00030698 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80034A3C 0003069C 7C 08 02 A6 */ mflr r0 /* 80034A40 000306A0 90 01 00 14 */ stw r0, 0x14(r1) /* 80034A44 000306A4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80034A48 000306A8 7C 9F 23 78 */ mr r31, r4 /* 80034A4C 000306AC 93 C1 00 08 */ stw r30, 8(r1) /* 80034A50 000306B0 7C 7E 1B 78 */ mr r30, r3 /* 80034A54 000306B4 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034A58 000306B8 2C 00 00 06 */ cmpwi r0, 6 /* 80034A5C 000306BC 41 82 00 14 */ beq lbl_80034A70 /* 80034A60 000306C0 38 80 00 06 */ li r4, 6 /* 80034A64 000306C4 4B FF FE 59 */ bl func_800348BC /* 80034A68 000306C8 7F C3 F3 78 */ mr r3, r30 /* 80034A6C 000306CC 4B FF FF 95 */ bl func_80034A00 lbl_80034A70: /* 80034A70 000306D0 2C 1F 00 01 */ cmpwi r31, 1 /* 80034A74 000306D4 41 82 00 20 */ beq lbl_80034A94 /* 80034A78 000306D8 40 80 00 24 */ bge lbl_80034A9C /* 80034A7C 000306DC 2C 1F 00 00 */ cmpwi r31, 0 /* 80034A80 000306E0 40 80 00 08 */ bge lbl_80034A88 /* 80034A84 000306E4 48 00 00 18 */ b lbl_80034A9C lbl_80034A88: /* 80034A88 000306E8 38 00 00 00 */ li r0, 0 /* 80034A8C 000306EC 90 1E 01 E4 */ stw r0, 0x1e4(r30) /* 80034A90 000306F0 48 00 00 0C */ b lbl_80034A9C lbl_80034A94: /* 80034A94 000306F4 38 00 00 01 */ li r0, 1 /* 80034A98 000306F8 90 1E 01 E4 */ stw r0, 0x1e4(r30) lbl_80034A9C: /* 80034A9C 000306FC 4B FF FE 7D */ bl func_80034918 /* 80034AA0 00030700 80 01 00 14 */ lwz r0, 0x14(r1) /* 80034AA4 00030704 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80034AA8 00030708 83 C1 00 08 */ lwz r30, 8(r1) /* 80034AAC 0003070C 7C 08 03 A6 */ mtlr r0 /* 80034AB0 00030710 38 21 00 10 */ addi r1, r1, 0x10 /* 80034AB4 00030714 4E 80 00 20 */ blr .global func_80034AB8 func_80034AB8: /* 80034AB8 00030718 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80034ABC 0003071C 7C 08 02 A6 */ mflr r0 /* 80034AC0 00030720 90 01 00 24 */ stw r0, 0x24(r1) /* 80034AC4 00030724 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80034AC8 00030728 FF E0 08 90 */ fmr f31, f1 /* 80034ACC 0003072C 93 E1 00 14 */ stw r31, 0x14(r1) /* 80034AD0 00030730 7C 7F 1B 78 */ mr r31, r3 /* 80034AD4 00030734 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034AD8 00030738 2C 00 00 07 */ cmpwi r0, 7 /* 80034ADC 0003073C 41 82 00 14 */ beq lbl_80034AF0 /* 80034AE0 00030740 38 80 00 07 */ li r4, 7 /* 80034AE4 00030744 4B FF FD D9 */ bl func_800348BC /* 80034AE8 00030748 7F E3 FB 78 */ mr r3, r31 /* 80034AEC 0003074C 4B FF FF 15 */ bl func_80034A00 lbl_80034AF0: /* 80034AF0 00030750 D3 FF 01 FC */ stfs f31, 0x1fc(r31) /* 80034AF4 00030754 4B FF FE 25 */ bl func_80034918 /* 80034AF8 00030758 80 01 00 24 */ lwz r0, 0x24(r1) /* 80034AFC 0003075C CB E1 00 18 */ lfd f31, 0x18(r1) /* 80034B00 00030760 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80034B04 00030764 7C 08 03 A6 */ mtlr r0 /* 80034B08 00030768 38 21 00 20 */ addi r1, r1, 0x20 /* 80034B0C 0003076C 4E 80 00 20 */ blr .global func_80034B10 func_80034B10: /* 80034B10 00030770 88 E4 00 03 */ lbz r7, 3(r4) /* 80034B14 00030774 88 C4 00 02 */ lbz r6, 2(r4) /* 80034B18 00030778 88 A4 00 01 */ lbz r5, 1(r4) /* 80034B1C 0003077C 88 04 00 00 */ lbz r0, 0(r4) /* 80034B20 00030780 98 03 01 DC */ stb r0, 0x1dc(r3) /* 80034B24 00030784 98 A3 01 DD */ stb r5, 0x1dd(r3) /* 80034B28 00030788 98 C3 01 DE */ stb r6, 0x1de(r3) /* 80034B2C 0003078C 98 E3 01 DF */ stb r7, 0x1df(r3) /* 80034B30 00030790 4B FF FD E8 */ b func_80034918 .global func_80034B34 func_80034B34: /* 80034B34 00030794 D0 23 01 E8 */ stfs f1, 0x1e8(r3) /* 80034B38 00030798 D0 43 01 EC */ stfs f2, 0x1ec(r3) /* 80034B3C 0003079C 4B FF FD DC */ b func_80034918 .global func_80034B40 func_80034B40: /* 80034B40 000307A0 D0 23 01 F0 */ stfs f1, 0x1f0(r3) /* 80034B44 000307A4 4B FF FD D4 */ b func_80034918 .global func_80034B48 func_80034B48: /* 80034B48 000307A8 D0 23 01 F4 */ stfs f1, 0x1f4(r3) /* 80034B4C 000307AC D0 43 01 F8 */ stfs f2, 0x1f8(r3) /* 80034B50 000307B0 4B FF FD C8 */ b func_80034918 .global func_80034B54 func_80034B54: /* 80034B54 000307B4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80034B58 000307B8 7C 08 02 A6 */ mflr r0 /* 80034B5C 000307BC 7C C7 33 78 */ mr r7, r6 /* 80034B60 000307C0 90 01 00 14 */ stw r0, 0x14(r1) /* 80034B64 000307C4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80034B68 000307C8 7C 9F 23 78 */ mr r31, r4 /* 80034B6C 000307CC 38 83 01 DC */ addi r4, r3, 0x1dc /* 80034B70 000307D0 93 C1 00 08 */ stw r30, 8(r1) /* 80034B74 000307D4 7C 7E 1B 78 */ mr r30, r3 /* 80034B78 000307D8 7C 86 23 78 */ mr r6, r4 /* 80034B7C 000307DC 38 63 06 90 */ addi r3, r3, 0x690 /* 80034B80 000307E0 48 01 BC 89 */ bl func_80050808 /* 80034B84 000307E4 93 FE 02 00 */ stw r31, 0x200(r30) /* 80034B88 000307E8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80034B8C 000307EC 83 C1 00 08 */ lwz r30, 8(r1) /* 80034B90 000307F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80034B94 000307F4 7C 08 03 A6 */ mtlr r0 /* 80034B98 000307F8 38 21 00 10 */ addi r1, r1, 0x10 /* 80034B9C 000307FC 4E 80 00 20 */ blr .global func_80034BA0 func_80034BA0: /* 80034BA0 00030800 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80034BA4 00030804 7C 08 02 A6 */ mflr r0 /* 80034BA8 00030808 90 01 00 34 */ stw r0, 0x34(r1) /* 80034BAC 0003080C DB E1 00 28 */ stfd f31, 0x28(r1) /* 80034BB0 00030810 FF E0 18 90 */ fmr f31, f3 /* 80034BB4 00030814 93 E1 00 24 */ stw r31, 0x24(r1) /* 80034BB8 00030818 7C BF 2B 78 */ mr r31, r5 /* 80034BBC 0003081C 7F E7 FB 78 */ mr r7, r31 /* 80034BC0 00030820 38 A1 00 08 */ addi r5, r1, 8 /* 80034BC4 00030824 93 C1 00 20 */ stw r30, 0x20(r1) /* 80034BC8 00030828 7C 9E 23 78 */ mr r30, r4 /* 80034BCC 0003082C 38 83 01 E8 */ addi r4, r3, 0x1e8 /* 80034BD0 00030830 93 A1 00 1C */ stw r29, 0x1c(r1) /* 80034BD4 00030834 7C 7D 1B 78 */ mr r29, r3 /* 80034BD8 00030838 7C 86 23 78 */ mr r6, r4 /* 80034BDC 0003083C 38 63 02 C4 */ addi r3, r3, 0x2c4 /* 80034BE0 00030840 D0 21 00 08 */ stfs f1, 8(r1) /* 80034BE4 00030844 FC 20 F8 90 */ fmr f1, f31 /* 80034BE8 00030848 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80034BEC 0003084C 48 01 B7 51 */ bl func_8005033C /* 80034BF0 00030850 FC 20 F8 90 */ fmr f1, f31 /* 80034BF4 00030854 38 9D 01 EC */ addi r4, r29, 0x1ec /* 80034BF8 00030858 7C 86 23 78 */ mr r6, r4 /* 80034BFC 0003085C 7F E7 FB 78 */ mr r7, r31 /* 80034C00 00030860 38 7D 02 E8 */ addi r3, r29, 0x2e8 /* 80034C04 00030864 38 A1 00 0C */ addi r5, r1, 0xc /* 80034C08 00030868 48 01 B7 35 */ bl func_8005033C /* 80034C0C 0003086C 93 DD 02 00 */ stw r30, 0x200(r29) /* 80034C10 00030870 CB E1 00 28 */ lfd f31, 0x28(r1) /* 80034C14 00030874 83 E1 00 24 */ lwz r31, 0x24(r1) /* 80034C18 00030878 83 C1 00 20 */ lwz r30, 0x20(r1) /* 80034C1C 0003087C 83 A1 00 1C */ lwz r29, 0x1c(r1) /* 80034C20 00030880 80 01 00 34 */ lwz r0, 0x34(r1) /* 80034C24 00030884 7C 08 03 A6 */ mtlr r0 /* 80034C28 00030888 38 21 00 30 */ addi r1, r1, 0x30 /* 80034C2C 0003088C 4E 80 00 20 */ blr .global func_80034C30 func_80034C30: /* 80034C30 00030890 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80034C34 00030894 7C 08 02 A6 */ mflr r0 /* 80034C38 00030898 7C A7 2B 78 */ mr r7, r5 /* 80034C3C 0003089C 90 01 00 24 */ stw r0, 0x24(r1) /* 80034C40 000308A0 38 A1 00 08 */ addi r5, r1, 8 /* 80034C44 000308A4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80034C48 000308A8 7C 9F 23 78 */ mr r31, r4 /* 80034C4C 000308AC 38 83 01 F0 */ addi r4, r3, 0x1f0 /* 80034C50 000308B0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80034C54 000308B4 7C 7E 1B 78 */ mr r30, r3 /* 80034C58 000308B8 7C 86 23 78 */ mr r6, r4 /* 80034C5C 000308BC 38 63 03 0C */ addi r3, r3, 0x30c /* 80034C60 000308C0 D0 21 00 08 */ stfs f1, 8(r1) /* 80034C64 000308C4 FC 20 10 90 */ fmr f1, f2 /* 80034C68 000308C8 48 01 B6 D5 */ bl func_8005033C /* 80034C6C 000308CC 93 FE 02 00 */ stw r31, 0x200(r30) /* 80034C70 000308D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80034C74 000308D4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80034C78 000308D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80034C7C 000308DC 7C 08 03 A6 */ mtlr r0 /* 80034C80 000308E0 38 21 00 20 */ addi r1, r1, 0x20 /* 80034C84 000308E4 4E 80 00 20 */ blr .global func_80034C88 func_80034C88: /* 80034C88 000308E8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80034C8C 000308EC 7C 08 02 A6 */ mflr r0 /* 80034C90 000308F0 90 01 00 34 */ stw r0, 0x34(r1) /* 80034C94 000308F4 DB E1 00 28 */ stfd f31, 0x28(r1) /* 80034C98 000308F8 FF E0 18 90 */ fmr f31, f3 /* 80034C9C 000308FC 93 E1 00 24 */ stw r31, 0x24(r1) /* 80034CA0 00030900 7C BF 2B 78 */ mr r31, r5 /* 80034CA4 00030904 7F E7 FB 78 */ mr r7, r31 /* 80034CA8 00030908 38 A1 00 08 */ addi r5, r1, 8 /* 80034CAC 0003090C 93 C1 00 20 */ stw r30, 0x20(r1) /* 80034CB0 00030910 7C 9E 23 78 */ mr r30, r4 /* 80034CB4 00030914 38 83 01 F4 */ addi r4, r3, 0x1f4 /* 80034CB8 00030918 93 A1 00 1C */ stw r29, 0x1c(r1) /* 80034CBC 0003091C 7C 7D 1B 78 */ mr r29, r3 /* 80034CC0 00030920 7C 86 23 78 */ mr r6, r4 /* 80034CC4 00030924 38 63 03 30 */ addi r3, r3, 0x330 /* 80034CC8 00030928 D0 21 00 08 */ stfs f1, 8(r1) /* 80034CCC 0003092C FC 20 F8 90 */ fmr f1, f31 /* 80034CD0 00030930 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80034CD4 00030934 48 01 B6 69 */ bl func_8005033C /* 80034CD8 00030938 FC 20 F8 90 */ fmr f1, f31 /* 80034CDC 0003093C 38 9D 01 F8 */ addi r4, r29, 0x1f8 /* 80034CE0 00030940 7C 86 23 78 */ mr r6, r4 /* 80034CE4 00030944 7F E7 FB 78 */ mr r7, r31 /* 80034CE8 00030948 38 7D 03 54 */ addi r3, r29, 0x354 /* 80034CEC 0003094C 38 A1 00 0C */ addi r5, r1, 0xc /* 80034CF0 00030950 48 01 B6 4D */ bl func_8005033C /* 80034CF4 00030954 93 DD 02 00 */ stw r30, 0x200(r29) /* 80034CF8 00030958 CB E1 00 28 */ lfd f31, 0x28(r1) /* 80034CFC 0003095C 83 E1 00 24 */ lwz r31, 0x24(r1) /* 80034D00 00030960 83 C1 00 20 */ lwz r30, 0x20(r1) /* 80034D04 00030964 83 A1 00 1C */ lwz r29, 0x1c(r1) /* 80034D08 00030968 80 01 00 34 */ lwz r0, 0x34(r1) /* 80034D0C 0003096C 7C 08 03 A6 */ mtlr r0 /* 80034D10 00030970 38 21 00 30 */ addi r1, r1, 0x30 /* 80034D14 00030974 4E 80 00 20 */ blr .global func_80034D18 func_80034D18: /* 80034D18 00030978 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80034D1C 0003097C 7C 08 02 A6 */ mflr r0 /* 80034D20 00030980 7C 87 23 78 */ mr r7, r4 /* 80034D24 00030984 38 83 01 FC */ addi r4, r3, 0x1fc /* 80034D28 00030988 90 01 00 24 */ stw r0, 0x24(r1) /* 80034D2C 0003098C 38 A1 00 08 */ addi r5, r1, 8 /* 80034D30 00030990 7C 86 23 78 */ mr r6, r4 /* 80034D34 00030994 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80034D38 00030998 7C 7F 1B 78 */ mr r31, r3 /* 80034D3C 0003099C 38 63 03 78 */ addi r3, r3, 0x378 /* 80034D40 000309A0 D0 21 00 08 */ stfs f1, 8(r1) /* 80034D44 000309A4 FC 20 10 90 */ fmr f1, f2 /* 80034D48 000309A8 48 01 B5 F5 */ bl func_8005033C /* 80034D4C 000309AC 38 00 00 07 */ li r0, 7 /* 80034D50 000309B0 90 1F 02 00 */ stw r0, 0x200(r31) /* 80034D54 000309B4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80034D58 000309B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80034D5C 000309BC 7C 08 03 A6 */ mtlr r0 /* 80034D60 000309C0 38 21 00 20 */ addi r1, r1, 0x20 /* 80034D64 000309C4 4E 80 00 20 */ blr .global func_80034D68 func_80034D68: /* 80034D68 000309C8 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80034D6C 000309CC 7C 08 02 A6 */ mflr r0 /* 80034D70 000309D0 90 01 00 74 */ stw r0, 0x74(r1) /* 80034D74 000309D4 DB E1 00 60 */ stfd f31, 0x60(r1) /* 80034D78 000309D8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 80034D7C 000309DC DB C1 00 50 */ stfd f30, 0x50(r1) /* 80034D80 000309E0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 80034D84 000309E4 DB A1 00 40 */ stfd f29, 0x40(r1) /* 80034D88 000309E8 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 80034D8C 000309EC DB 81 00 30 */ stfd f28, 0x30(r1) /* 80034D90 000309F0 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 80034D94 000309F4 DB 61 00 20 */ stfd f27, 0x20(r1) /* 80034D98 000309F8 F3 61 00 28 */ psq_st f27, 40(r1), 0, qr0 /* 80034D9C 000309FC FF 60 08 90 */ fmr f27, f1 /* 80034DA0 00030A00 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80034DA4 00030A04 FF 80 10 90 */ fmr f28, f2 /* 80034DA8 00030A08 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80034DAC 00030A0C FF A0 18 90 */ fmr f29, f3 /* 80034DB0 00030A10 FF C0 20 90 */ fmr f30, f4 /* 80034DB4 00030A14 93 C1 00 18 */ stw r30, 0x18(r1) /* 80034DB8 00030A18 FF E0 28 90 */ fmr f31, f5 /* 80034DBC 00030A1C FC 00 20 00 */ fcmpu cr0, f0, f4 /* 80034DC0 00030A20 7C 9E 23 78 */ mr r30, r4 /* 80034DC4 00030A24 93 A1 00 14 */ stw r29, 0x14(r1) /* 80034DC8 00030A28 7C 7D 1B 78 */ mr r29, r3 /* 80034DCC 00030A2C 7C BF 2B 78 */ mr r31, r5 /* 80034DD0 00030A30 41 82 00 54 */ beq lbl_80034E24 /* 80034DD4 00030A34 FC 00 28 00 */ fcmpu cr0, f0, f5 /* 80034DD8 00030A38 40 82 00 08 */ bne lbl_80034DE0 /* 80034DDC 00030A3C 48 00 00 48 */ b lbl_80034E24 lbl_80034DE0: /* 80034DE0 00030A40 80 03 01 A0 */ lwz r0, 0x1a0(r3) /* 80034DE4 00030A44 2C 00 00 07 */ cmpwi r0, 7 /* 80034DE8 00030A48 40 82 00 3C */ bne lbl_80034E24 /* 80034DEC 00030A4C 4B FF FB C9 */ bl func_800349B4 /* 80034DF0 00030A50 FC 20 D8 90 */ fmr f1, f27 /* 80034DF4 00030A54 7F C4 F3 78 */ mr r4, r30 /* 80034DF8 00030A58 FC 40 F0 90 */ fmr f2, f30 /* 80034DFC 00030A5C 7F E6 FB 78 */ mr r6, r31 /* 80034E00 00030A60 FC 60 F8 90 */ fmr f3, f31 /* 80034E04 00030A64 38 7D 05 1C */ addi r3, r29, 0x51c /* 80034E08 00030A68 FC 80 E8 90 */ fmr f4, f29 /* 80034E0C 00030A6C 38 BD 01 FC */ addi r5, r29, 0x1fc /* 80034E10 00030A70 FC A0 E0 90 */ fmr f5, f28 /* 80034E14 00030A74 38 E0 00 01 */ li r7, 1 /* 80034E18 00030A78 48 01 C3 1D */ bl func_80051134 /* 80034E1C 00030A7C 38 00 00 07 */ li r0, 7 /* 80034E20 00030A80 90 1D 02 00 */ stw r0, 0x200(r29) lbl_80034E24: /* 80034E24 00030A84 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 80034E28 00030A88 CB E1 00 60 */ lfd f31, 0x60(r1) /* 80034E2C 00030A8C E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 80034E30 00030A90 CB C1 00 50 */ lfd f30, 0x50(r1) /* 80034E34 00030A94 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 80034E38 00030A98 CB A1 00 40 */ lfd f29, 0x40(r1) /* 80034E3C 00030A9C E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 80034E40 00030AA0 CB 81 00 30 */ lfd f28, 0x30(r1) /* 80034E44 00030AA4 E3 61 00 28 */ psq_l f27, 40(r1), 0, qr0 /* 80034E48 00030AA8 CB 61 00 20 */ lfd f27, 0x20(r1) /* 80034E4C 00030AAC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80034E50 00030AB0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80034E54 00030AB4 80 01 00 74 */ lwz r0, 0x74(r1) /* 80034E58 00030AB8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80034E5C 00030ABC 7C 08 03 A6 */ mtlr r0 /* 80034E60 00030AC0 38 21 00 70 */ addi r1, r1, 0x70 /* 80034E64 00030AC4 4E 80 00 20 */ blr .global func_80034E68 func_80034E68: /* 80034E68 00030AC8 98 83 01 68 */ stb r4, 0x168(r3) /* 80034E6C 00030ACC 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 80034E70 00030AD0 80 AD A1 50 */ lwz r5, lbl_8063F410-_SDA_BASE_(r13) /* 80034E74 00030AD4 80 05 04 18 */ lwz r0, 0x418(r5) /* 80034E78 00030AD8 2C 00 00 00 */ cmpwi r0, 0 /* 80034E7C 00030ADC 41 82 00 0C */ beq lbl_80034E88 /* 80034E80 00030AE0 98 85 04 0E */ stb r4, 0x40e(r5) /* 80034E84 00030AE4 48 00 00 0C */ b lbl_80034E90 lbl_80034E88: /* 80034E88 00030AE8 38 00 00 00 */ li r0, 0 /* 80034E8C 00030AEC 98 05 04 0E */ stb r0, 0x40e(r5) lbl_80034E90: /* 80034E90 00030AF0 C0 03 01 6C */ lfs f0, 0x16c(r3) /* 80034E94 00030AF4 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80034E98 00030AF8 D0 03 04 50 */ stfs f0, 0x450(r3) /* 80034E9C 00030AFC 4E 80 00 20 */ blr .global func_80034EA0 func_80034EA0: /* 80034EA0 00030B00 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80034EA4 00030B04 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80034EA8 00030B08 40 80 00 08 */ bge lbl_80034EB0 /* 80034EAC 00030B0C FC 20 00 90 */ fmr f1, f0 lbl_80034EB0: /* 80034EB0 00030B10 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80034EB4 00030B14 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80034EB8 00030B18 4C 41 13 82 */ cror 2, 1, 2 /* 80034EBC 00030B1C 40 82 00 08 */ bne lbl_80034EC4 /* 80034EC0 00030B20 FC 20 00 90 */ fmr f1, f0 lbl_80034EC4: /* 80034EC4 00030B24 D0 23 01 6C */ stfs f1, 0x16c(r3) /* 80034EC8 00030B28 FC 00 08 18 */ frsp f0, f1 /* 80034ECC 00030B2C 38 63 05 DC */ addi r3, r3, 0x5dc /* 80034ED0 00030B30 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034ED4 00030B34 D0 04 04 50 */ stfs f0, 0x450(r4) /* 80034ED8 00030B38 48 01 B4 B0 */ b func_80050388 .global func_80034EDC func_80034EDC: /* 80034EDC 00030B3C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80034EE0 00030B40 7C 08 02 A6 */ mflr r0 /* 80034EE4 00030B44 FC 60 08 18 */ frsp f3, f1 /* 80034EE8 00030B48 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80034EEC 00030B4C 90 01 00 14 */ stw r0, 0x14(r1) /* 80034EF0 00030B50 7C 87 23 78 */ mr r7, r4 /* 80034EF4 00030B54 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80034EF8 00030B58 D0 21 00 08 */ stfs f1, 8(r1) /* 80034EFC 00030B5C 40 80 00 0C */ bge lbl_80034F08 /* 80034F00 00030B60 FC 20 00 90 */ fmr f1, f0 /* 80034F04 00030B64 D0 01 00 08 */ stfs f0, 8(r1) lbl_80034F08: /* 80034F08 00030B68 FC 20 08 18 */ frsp f1, f1 /* 80034F0C 00030B6C C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80034F10 00030B70 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80034F14 00030B74 4C 41 13 82 */ cror 2, 1, 2 /* 80034F18 00030B78 40 82 00 08 */ bne lbl_80034F20 /* 80034F1C 00030B7C D0 01 00 08 */ stfs f0, 8(r1) lbl_80034F20: /* 80034F20 00030B80 FC 20 10 90 */ fmr f1, f2 /* 80034F24 00030B84 38 83 01 6C */ addi r4, r3, 0x16c /* 80034F28 00030B88 7C 86 23 78 */ mr r6, r4 /* 80034F2C 00030B8C 38 A1 00 08 */ addi r5, r1, 8 /* 80034F30 00030B90 38 63 05 DC */ addi r3, r3, 0x5dc /* 80034F34 00030B94 48 01 B4 09 */ bl func_8005033C /* 80034F38 00030B98 80 01 00 14 */ lwz r0, 0x14(r1) /* 80034F3C 00030B9C 7C 08 03 A6 */ mtlr r0 /* 80034F40 00030BA0 38 21 00 10 */ addi r1, r1, 0x10 /* 80034F44 00030BA4 4E 80 00 20 */ blr .global func_80034F48 func_80034F48: /* 80034F48 00030BA8 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034F4C 00030BAC 2C 04 00 00 */ cmpwi r4, 0 /* 80034F50 00030BB0 4D 82 00 20 */ beqlr /* 80034F54 00030BB4 88 03 01 70 */ lbz r0, 0x170(r3) /* 80034F58 00030BB8 98 04 04 0D */ stb r0, 0x40d(r4) /* 80034F5C 00030BBC C0 03 01 74 */ lfs f0, 0x174(r3) /* 80034F60 00030BC0 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034F64 00030BC4 D0 04 04 2C */ stfs f0, 0x42c(r4) /* 80034F68 00030BC8 88 03 01 71 */ lbz r0, 0x171(r3) /* 80034F6C 00030BCC 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034F70 00030BD0 98 04 04 30 */ stb r0, 0x430(r4) /* 80034F74 00030BD4 80 03 01 78 */ lwz r0, 0x178(r3) /* 80034F78 00030BD8 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034F7C 00030BDC 90 04 04 34 */ stw r0, 0x434(r4) /* 80034F80 00030BE0 88 03 01 7C */ lbz r0, 0x17c(r3) /* 80034F84 00030BE4 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034F88 00030BE8 98 04 04 31 */ stb r0, 0x431(r4) /* 80034F8C 00030BEC 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80034F90 00030BF0 C0 03 01 80 */ lfs f0, 0x180(r3) /* 80034F94 00030BF4 D0 04 04 24 */ stfs f0, 0x424(r4) /* 80034F98 00030BF8 C0 03 01 84 */ lfs f0, 0x184(r3) /* 80034F9C 00030BFC D0 04 04 28 */ stfs f0, 0x428(r4) /* 80034FA0 00030C00 4E 80 00 20 */ blr .global func_80034FA4 func_80034FA4: /* 80034FA4 00030C04 98 83 01 70 */ stb r4, 0x170(r3) /* 80034FA8 00030C08 4B FF FF A0 */ b func_80034F48 .global func_80034FAC func_80034FAC: /* 80034FAC 00030C0C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80034FB0 00030C10 7C 08 02 A6 */ mflr r0 /* 80034FB4 00030C14 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80034FB8 00030C18 90 01 00 14 */ stw r0, 0x14(r1) /* 80034FBC 00030C1C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80034FC0 00030C20 93 E1 00 0C */ stw r31, 0xc(r1) /* 80034FC4 00030C24 7C 7F 1B 78 */ mr r31, r3 /* 80034FC8 00030C28 40 80 00 08 */ bge lbl_80034FD0 /* 80034FCC 00030C2C FC 20 00 90 */ fmr f1, f0 lbl_80034FD0: /* 80034FD0 00030C30 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80034FD4 00030C34 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80034FD8 00030C38 4C 41 13 82 */ cror 2, 1, 2 /* 80034FDC 00030C3C 40 82 00 08 */ bne lbl_80034FE4 /* 80034FE0 00030C40 FC 20 00 90 */ fmr f1, f0 lbl_80034FE4: /* 80034FE4 00030C44 D0 23 01 74 */ stfs f1, 0x174(r3) /* 80034FE8 00030C48 38 63 06 24 */ addi r3, r3, 0x624 /* 80034FEC 00030C4C 48 01 B3 9D */ bl func_80050388 /* 80034FF0 00030C50 7F E3 FB 78 */ mr r3, r31 /* 80034FF4 00030C54 4B FF FF 55 */ bl func_80034F48 /* 80034FF8 00030C58 80 01 00 14 */ lwz r0, 0x14(r1) /* 80034FFC 00030C5C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80035000 00030C60 7C 08 03 A6 */ mtlr r0 /* 80035004 00030C64 38 21 00 10 */ addi r1, r1, 0x10 /* 80035008 00030C68 4E 80 00 20 */ blr .global func_8003500C func_8003500C: /* 8003500C 00030C6C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80035010 00030C70 7C 08 02 A6 */ mflr r0 /* 80035014 00030C74 FC 60 08 18 */ frsp f3, f1 /* 80035018 00030C78 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 8003501C 00030C7C 90 01 00 14 */ stw r0, 0x14(r1) /* 80035020 00030C80 7C 87 23 78 */ mr r7, r4 /* 80035024 00030C84 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80035028 00030C88 D0 21 00 08 */ stfs f1, 8(r1) /* 8003502C 00030C8C 40 80 00 0C */ bge lbl_80035038 /* 80035030 00030C90 FC 20 00 90 */ fmr f1, f0 /* 80035034 00030C94 D0 01 00 08 */ stfs f0, 8(r1) lbl_80035038: /* 80035038 00030C98 FC 20 08 18 */ frsp f1, f1 /* 8003503C 00030C9C C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80035040 00030CA0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80035044 00030CA4 4C 41 13 82 */ cror 2, 1, 2 /* 80035048 00030CA8 40 82 00 08 */ bne lbl_80035050 /* 8003504C 00030CAC D0 01 00 08 */ stfs f0, 8(r1) lbl_80035050: /* 80035050 00030CB0 FC 20 10 90 */ fmr f1, f2 /* 80035054 00030CB4 38 83 01 74 */ addi r4, r3, 0x174 /* 80035058 00030CB8 7C 86 23 78 */ mr r6, r4 /* 8003505C 00030CBC 38 A1 00 08 */ addi r5, r1, 8 /* 80035060 00030CC0 38 63 06 24 */ addi r3, r3, 0x624 /* 80035064 00030CC4 48 01 B2 D9 */ bl func_8005033C /* 80035068 00030CC8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003506C 00030CCC 7C 08 03 A6 */ mtlr r0 /* 80035070 00030CD0 38 21 00 10 */ addi r1, r1, 0x10 /* 80035074 00030CD4 4E 80 00 20 */ blr .global func_80035078 func_80035078: /* 80035078 00030CD8 98 83 01 71 */ stb r4, 0x171(r3) /* 8003507C 00030CDC 4B FF FE CC */ b func_80034F48 .global func_80035080 func_80035080: /* 80035080 00030CE0 2C 04 00 00 */ cmpwi r4, 0 /* 80035084 00030CE4 40 80 00 08 */ bge lbl_8003508C /* 80035088 00030CE8 38 80 00 00 */ li r4, 0 lbl_8003508C: /* 8003508C 00030CEC 2C 04 00 01 */ cmpwi r4, 1 /* 80035090 00030CF0 40 81 00 08 */ ble lbl_80035098 /* 80035094 00030CF4 38 80 00 01 */ li r4, 1 lbl_80035098: /* 80035098 00030CF8 90 83 01 78 */ stw r4, 0x178(r3) /* 8003509C 00030CFC 4B FF FE AC */ b func_80034F48 .global func_800350A0 func_800350A0: /* 800350A0 00030D00 28 04 00 64 */ cmplwi r4, 0x64 /* 800350A4 00030D04 40 81 00 08 */ ble lbl_800350AC /* 800350A8 00030D08 38 80 00 64 */ li r4, 0x64 lbl_800350AC: /* 800350AC 00030D0C 98 83 01 7C */ stb r4, 0x17c(r3) /* 800350B0 00030D10 4B FF FE 98 */ b func_80034F48 .global func_800350B4 func_800350B4: /* 800350B4 00030D14 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800350B8 00030D18 7C 08 02 A6 */ mflr r0 /* 800350BC 00030D1C C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 800350C0 00030D20 90 01 00 14 */ stw r0, 0x14(r1) /* 800350C4 00030D24 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800350C8 00030D28 93 E1 00 0C */ stw r31, 0xc(r1) /* 800350CC 00030D2C 7C 7F 1B 78 */ mr r31, r3 /* 800350D0 00030D30 40 81 00 08 */ ble lbl_800350D8 /* 800350D4 00030D34 FC 20 00 90 */ fmr f1, f0 lbl_800350D8: /* 800350D8 00030D38 C0 02 81 EC */ lfs f0, lbl_806407EC-_SDA2_BASE_(r2) /* 800350DC 00030D3C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800350E0 00030D40 40 80 00 08 */ bge lbl_800350E8 /* 800350E4 00030D44 FC 20 00 90 */ fmr f1, f0 lbl_800350E8: /* 800350E8 00030D48 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 800350EC 00030D4C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800350F0 00030D50 40 81 00 08 */ ble lbl_800350F8 /* 800350F4 00030D54 FC 40 00 90 */ fmr f2, f0 lbl_800350F8: /* 800350F8 00030D58 C0 02 81 EC */ lfs f0, lbl_806407EC-_SDA2_BASE_(r2) /* 800350FC 00030D5C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80035100 00030D60 40 80 00 08 */ bge lbl_80035108 /* 80035104 00030D64 FC 40 00 90 */ fmr f2, f0 lbl_80035108: /* 80035108 00030D68 D0 23 01 80 */ stfs f1, 0x180(r3) /* 8003510C 00030D6C D0 43 01 84 */ stfs f2, 0x184(r3) /* 80035110 00030D70 38 63 06 48 */ addi r3, r3, 0x648 /* 80035114 00030D74 48 01 B2 75 */ bl func_80050388 /* 80035118 00030D78 38 7F 06 6C */ addi r3, r31, 0x66c /* 8003511C 00030D7C 48 01 B2 6D */ bl func_80050388 /* 80035120 00030D80 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80035124 00030D84 C0 1F 01 80 */ lfs f0, 0x180(r31) /* 80035128 00030D88 D0 03 04 24 */ stfs f0, 0x424(r3) /* 8003512C 00030D8C C0 1F 01 84 */ lfs f0, 0x184(r31) /* 80035130 00030D90 D0 03 04 28 */ stfs f0, 0x428(r3) /* 80035134 00030D94 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80035138 00030D98 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003513C 00030D9C 7C 08 03 A6 */ mtlr r0 /* 80035140 00030DA0 38 21 00 10 */ addi r1, r1, 0x10 /* 80035144 00030DA4 4E 80 00 20 */ blr .global func_80035148 func_80035148: /* 80035148 00030DA8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003514C 00030DAC 7C 08 02 A6 */ mflr r0 /* 80035150 00030DB0 90 01 00 34 */ stw r0, 0x34(r1) /* 80035154 00030DB4 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80035158 00030DB8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8003515C 00030DBC FC 80 08 18 */ frsp f4, f1 /* 80035160 00030DC0 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80035164 00030DC4 FF E0 18 90 */ fmr f31, f3 /* 80035168 00030DC8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003516C 00030DCC 7C 9F 23 78 */ mr r31, r4 /* 80035170 00030DD0 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80035174 00030DD4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80035178 00030DD8 7C 7E 1B 78 */ mr r30, r3 /* 8003517C 00030DDC D0 21 00 08 */ stfs f1, 8(r1) /* 80035180 00030DE0 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80035184 00030DE4 40 81 00 0C */ ble lbl_80035190 /* 80035188 00030DE8 FC 20 00 90 */ fmr f1, f0 /* 8003518C 00030DEC D0 01 00 08 */ stfs f0, 8(r1) lbl_80035190: /* 80035190 00030DF0 FC 20 08 18 */ frsp f1, f1 /* 80035194 00030DF4 C0 02 81 EC */ lfs f0, lbl_806407EC-_SDA2_BASE_(r2) /* 80035198 00030DF8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003519C 00030DFC 40 80 00 08 */ bge lbl_800351A4 /* 800351A0 00030E00 D0 01 00 08 */ stfs f0, 8(r1) lbl_800351A4: /* 800351A4 00030E04 FC 20 10 18 */ frsp f1, f2 /* 800351A8 00030E08 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 800351AC 00030E0C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800351B0 00030E10 40 81 00 0C */ ble lbl_800351BC /* 800351B4 00030E14 FC 40 00 90 */ fmr f2, f0 /* 800351B8 00030E18 D0 01 00 0C */ stfs f0, 0xc(r1) lbl_800351BC: /* 800351BC 00030E1C FC 20 10 18 */ frsp f1, f2 /* 800351C0 00030E20 C0 02 81 EC */ lfs f0, lbl_806407EC-_SDA2_BASE_(r2) /* 800351C4 00030E24 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800351C8 00030E28 40 80 00 08 */ bge lbl_800351D0 /* 800351CC 00030E2C D0 01 00 0C */ stfs f0, 0xc(r1) lbl_800351D0: /* 800351D0 00030E30 FC 20 F8 90 */ fmr f1, f31 /* 800351D4 00030E34 38 83 01 80 */ addi r4, r3, 0x180 /* 800351D8 00030E38 7C 86 23 78 */ mr r6, r4 /* 800351DC 00030E3C 7F E7 FB 78 */ mr r7, r31 /* 800351E0 00030E40 38 A1 00 08 */ addi r5, r1, 8 /* 800351E4 00030E44 38 63 06 48 */ addi r3, r3, 0x648 /* 800351E8 00030E48 48 01 B1 55 */ bl func_8005033C /* 800351EC 00030E4C FC 20 F8 90 */ fmr f1, f31 /* 800351F0 00030E50 38 9E 01 84 */ addi r4, r30, 0x184 /* 800351F4 00030E54 7C 86 23 78 */ mr r6, r4 /* 800351F8 00030E58 7F E7 FB 78 */ mr r7, r31 /* 800351FC 00030E5C 38 7E 06 6C */ addi r3, r30, 0x66c /* 80035200 00030E60 38 A1 00 0C */ addi r5, r1, 0xc /* 80035204 00030E64 48 01 B1 39 */ bl func_8005033C /* 80035208 00030E68 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8003520C 00030E6C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80035210 00030E70 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80035214 00030E74 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80035218 00030E78 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003521C 00030E7C 7C 08 03 A6 */ mtlr r0 /* 80035220 00030E80 38 21 00 30 */ addi r1, r1, 0x30 /* 80035224 00030E84 4E 80 00 20 */ blr .global func_80035228 func_80035228: /* 80035228 00030E88 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 8003522C 00030E8C 2C 04 00 00 */ cmpwi r4, 0 /* 80035230 00030E90 4D 82 00 20 */ beqlr /* 80035234 00030E94 88 03 01 88 */ lbz r0, 0x188(r3) /* 80035238 00030E98 98 04 04 0F */ stb r0, 0x40f(r4) /* 8003523C 00030E9C C0 03 01 8C */ lfs f0, 0x18c(r3) /* 80035240 00030EA0 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80035244 00030EA4 D0 04 04 40 */ stfs f0, 0x440(r4) /* 80035248 00030EA8 80 03 01 90 */ lwz r0, 0x190(r3) /* 8003524C 00030EAC 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80035250 00030EB0 90 04 04 4C */ stw r0, 0x44c(r4) /* 80035254 00030EB4 88 03 01 94 */ lbz r0, 0x194(r3) /* 80035258 00030EB8 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 8003525C 00030EBC 98 04 04 48 */ stb r0, 0x448(r4) /* 80035260 00030EC0 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80035264 00030EC4 C0 03 01 98 */ lfs f0, 0x198(r3) /* 80035268 00030EC8 D0 04 04 38 */ stfs f0, 0x438(r4) /* 8003526C 00030ECC C0 03 01 9C */ lfs f0, 0x19c(r3) /* 80035270 00030ED0 D0 04 04 3C */ stfs f0, 0x43c(r4) /* 80035274 00030ED4 4E 80 00 20 */ blr .global func_80035278 func_80035278: /* 80035278 00030ED8 98 83 01 88 */ stb r4, 0x188(r3) /* 8003527C 00030EDC 4B FF FF AC */ b func_80035228 .global func_80035280 func_80035280: /* 80035280 00030EE0 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 80035284 00030EE4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80035288 00030EE8 40 80 00 08 */ bge lbl_80035290 /* 8003528C 00030EEC FC 20 00 90 */ fmr f1, f0 lbl_80035290: /* 80035290 00030EF0 C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80035294 00030EF4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80035298 00030EF8 4C 41 13 82 */ cror 2, 1, 2 /* 8003529C 00030EFC 40 82 00 08 */ bne lbl_800352A4 /* 800352A0 00030F00 FC 20 00 90 */ fmr f1, f0 lbl_800352A4: /* 800352A4 00030F04 D0 23 01 8C */ stfs f1, 0x18c(r3) /* 800352A8 00030F08 4B FF FF 80 */ b func_80035228 .global func_800352AC func_800352AC: /* 800352AC 00030F0C 2C 04 00 00 */ cmpwi r4, 0 /* 800352B0 00030F10 40 80 00 08 */ bge lbl_800352B8 /* 800352B4 00030F14 38 80 00 00 */ li r4, 0 lbl_800352B8: /* 800352B8 00030F18 2C 04 00 01 */ cmpwi r4, 1 /* 800352BC 00030F1C 40 81 00 08 */ ble lbl_800352C4 /* 800352C0 00030F20 38 80 00 01 */ li r4, 1 lbl_800352C4: /* 800352C4 00030F24 90 83 01 90 */ stw r4, 0x190(r3) /* 800352C8 00030F28 4B FF FF 60 */ b func_80035228 .global func_800352CC func_800352CC: /* 800352CC 00030F2C 28 04 00 64 */ cmplwi r4, 0x64 /* 800352D0 00030F30 40 81 00 08 */ ble lbl_800352D8 /* 800352D4 00030F34 38 80 00 64 */ li r4, 0x64 lbl_800352D8: /* 800352D8 00030F38 98 83 01 94 */ stb r4, 0x194(r3) /* 800352DC 00030F3C 4B FF FF 4C */ b func_80035228 .global func_800352E0 func_800352E0: /* 800352E0 00030F40 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800352E4 00030F44 7C 08 02 A6 */ mflr r0 /* 800352E8 00030F48 28 04 00 64 */ cmplwi r4, 0x64 /* 800352EC 00030F4C 90 01 00 24 */ stw r0, 0x24(r1) /* 800352F0 00030F50 40 81 00 08 */ ble lbl_800352F8 /* 800352F4 00030F54 38 80 00 64 */ li r4, 0x64 lbl_800352F8: /* 800352F8 00030F58 3C 00 43 30 */ lis r0, 0x4330 /* 800352FC 00030F5C 90 81 00 14 */ stw r4, 0x14(r1) /* 80035300 00030F60 7C A7 2B 78 */ mr r7, r5 /* 80035304 00030F64 C8 42 82 00 */ lfd f2, lbl_80640800-_SDA2_BASE_(r2) /* 80035308 00030F68 90 01 00 10 */ stw r0, 0x10(r1) /* 8003530C 00030F6C 38 81 00 0C */ addi r4, r1, 0xc /* 80035310 00030F70 38 A1 00 08 */ addi r5, r1, 8 /* 80035314 00030F74 38 C3 01 D8 */ addi r6, r3, 0x1d8 /* 80035318 00030F78 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003531C 00030F7C 90 01 00 18 */ stw r0, 0x18(r1) /* 80035320 00030F80 EC 00 10 28 */ fsubs f0, f0, f2 /* 80035324 00030F84 D0 01 00 08 */ stfs f0, 8(r1) /* 80035328 00030F88 88 03 01 94 */ lbz r0, 0x194(r3) /* 8003532C 00030F8C 38 63 06 00 */ addi r3, r3, 0x600 /* 80035330 00030F90 90 01 00 1C */ stw r0, 0x1c(r1) /* 80035334 00030F94 C8 01 00 18 */ lfd f0, 0x18(r1) /* 80035338 00030F98 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003533C 00030F9C D0 01 00 0C */ stfs f0, 0xc(r1) /* 80035340 00030FA0 48 01 AF FD */ bl func_8005033C /* 80035344 00030FA4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80035348 00030FA8 7C 08 03 A6 */ mtlr r0 /* 8003534C 00030FAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80035350 00030FB0 4E 80 00 20 */ blr .global func_80035354 func_80035354: /* 80035354 00030FB4 C0 23 00 00 */ lfs f1, 0(r3) /* 80035358 00030FB8 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 8003535C 00030FBC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80035360 00030FC0 40 80 00 0C */ bge lbl_8003536C /* 80035364 00030FC4 D0 03 00 00 */ stfs f0, 0(r3) /* 80035368 00030FC8 4E 80 00 20 */ blr lbl_8003536C: /* 8003536C 00030FCC C0 02 81 E8 */ lfs f0, lbl_806407E8-_SDA2_BASE_(r2) /* 80035370 00030FD0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80035374 00030FD4 4C 81 00 20 */ blelr /* 80035378 00030FD8 D0 03 00 00 */ stfs f0, 0(r3) /* 8003537C 00030FDC 4E 80 00 20 */ blr .global func_80035380 func_80035380: /* 80035380 00030FE0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80035384 00030FE4 7C 08 02 A6 */ mflr r0 /* 80035388 00030FE8 90 01 00 24 */ stw r0, 0x24(r1) /* 8003538C 00030FEC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80035390 00030FF0 3B E3 00 AC */ addi r31, r3, 0xac /* 80035394 00030FF4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80035398 00030FF8 3B C3 00 1C */ addi r30, r3, 0x1c /* 8003539C 00030FFC 93 A1 00 14 */ stw r29, 0x14(r1) /* 800353A0 00031000 7C 7D 1B 78 */ mr r29, r3 lbl_800353A4: /* 800353A4 00031004 7F C3 F3 78 */ mr r3, r30 /* 800353A8 00031008 48 01 AF 7D */ bl func_80050324 /* 800353AC 0003100C 3B DE 00 24 */ addi r30, r30, 0x24 /* 800353B0 00031010 7C 1E F8 40 */ cmplw r30, r31 /* 800353B4 00031014 41 80 FF F0 */ blt lbl_800353A4 /* 800353B8 00031018 38 00 00 00 */ li r0, 0 /* 800353BC 0003101C 7F A3 EB 78 */ mr r3, r29 /* 800353C0 00031020 98 1D 00 00 */ stb r0, 0(r29) /* 800353C4 00031024 98 1D 00 02 */ stb r0, 2(r29) /* 800353C8 00031028 90 1D 00 04 */ stw r0, 4(r29) /* 800353CC 0003102C 90 1D 00 08 */ stw r0, 8(r29) /* 800353D0 00031030 90 1D 00 AC */ stw r0, 0xac(r29) /* 800353D4 00031034 90 1D 00 B0 */ stw r0, 0xb0(r29) /* 800353D8 00031038 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800353DC 0003103C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800353E0 00031040 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800353E4 00031044 80 01 00 24 */ lwz r0, 0x24(r1) /* 800353E8 00031048 7C 08 03 A6 */ mtlr r0 /* 800353EC 0003104C 38 21 00 20 */ addi r1, r1, 0x20 /* 800353F0 00031050 4E 80 00 20 */ blr .global func_800353F4 func_800353F4: /* 800353F4 00031054 80 63 00 08 */ lwz r3, 8(r3) /* 800353F8 00031058 4E 80 00 20 */ blr .global func_800353FC func_800353FC: /* 800353FC 0003105C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80035400 00031060 7C 08 02 A6 */ mflr r0 /* 80035404 00031064 90 01 00 24 */ stw r0, 0x24(r1) /* 80035408 00031068 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003540C 0003106C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80035410 00031070 7C 9E 23 78 */ mr r30, r4 /* 80035414 00031074 93 A1 00 14 */ stw r29, 0x14(r1) /* 80035418 00031078 7C 7D 1B 78 */ mr r29, r3 /* 8003541C 0003107C 48 00 AD D9 */ bl func_800401F4 /* 80035420 00031080 2C 03 00 00 */ cmpwi r3, 0 /* 80035424 00031084 7C 7F 1B 78 */ mr r31, r3 /* 80035428 00031088 41 82 00 90 */ beq lbl_800354B8 /* 8003542C 0003108C 80 9D 00 08 */ lwz r4, 8(r29) /* 80035430 00031090 48 00 AF 55 */ bl func_80040384 /* 80035434 00031094 2C 03 00 00 */ cmpwi r3, 0 /* 80035438 00031098 41 82 00 0C */ beq lbl_80035444 /* 8003543C 0003109C 38 00 00 00 */ li r0, 0 /* 80035440 000310A0 90 03 06 CC */ stw r0, 0x6cc(r3) lbl_80035444: /* 80035444 000310A4 7F E3 FB 78 */ mr r3, r31 /* 80035448 000310A8 7F C4 F3 78 */ mr r4, r30 /* 8003544C 000310AC 48 00 AF 39 */ bl func_80040384 /* 80035450 000310B0 2C 03 00 00 */ cmpwi r3, 0 /* 80035454 000310B4 7C 7F 1B 78 */ mr r31, r3 /* 80035458 000310B8 41 82 00 60 */ beq lbl_800354B8 /* 8003545C 000310BC 80 1D 00 04 */ lwz r0, 4(r29) /* 80035460 000310C0 90 03 06 CC */ stw r0, 0x6cc(r3) /* 80035464 000310C4 80 9D 00 04 */ lwz r4, 4(r29) /* 80035468 000310C8 80 04 01 04 */ lwz r0, 0x104(r4) /* 8003546C 000310CC 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 80035470 000310D0 28 00 00 01 */ cmplwi r0, 1 /* 80035474 000310D4 40 82 00 0C */ bne lbl_80035480 /* 80035478 000310D8 C0 04 01 68 */ lfs f0, 0x168(r4) /* 8003547C 000310DC 48 00 00 08 */ b lbl_80035484 lbl_80035480: /* 80035480 000310E0 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) lbl_80035484: /* 80035484 000310E4 D0 03 04 E0 */ stfs f0, 0x4e0(r3) /* 80035488 000310E8 38 63 00 04 */ addi r3, r3, 4 /* 8003548C 000310EC 48 01 AE FD */ bl func_80050388 /* 80035490 000310F0 38 00 00 01 */ li r0, 1 /* 80035494 000310F4 7F E3 FB 78 */ mr r3, r31 /* 80035498 000310F8 98 1F 00 01 */ stb r0, 1(r31) /* 8003549C 000310FC 80 9D 00 04 */ lwz r4, 4(r29) /* 800354A0 00031100 38 84 01 AC */ addi r4, r4, 0x1ac /* 800354A4 00031104 48 00 BC 09 */ bl func_800410AC /* 800354A8 00031108 80 9D 00 04 */ lwz r4, 4(r29) /* 800354AC 0003110C 7F E3 FB 78 */ mr r3, r31 /* 800354B0 00031110 38 84 01 C4 */ addi r4, r4, 0x1c4 /* 800354B4 00031114 48 00 D0 81 */ bl func_80042534 lbl_800354B8: /* 800354B8 00031118 93 DD 00 08 */ stw r30, 8(r29) /* 800354BC 0003111C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800354C0 00031120 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800354C4 00031124 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800354C8 00031128 80 01 00 24 */ lwz r0, 0x24(r1) /* 800354CC 0003112C 7C 08 03 A6 */ mtlr r0 /* 800354D0 00031130 38 21 00 20 */ addi r1, r1, 0x20 /* 800354D4 00031134 4E 80 00 20 */ blr .global func_800354D8 func_800354D8: /* 800354D8 00031138 80 E4 00 00 */ lwz r7, 0(r4) /* 800354DC 0003113C 80 C4 00 04 */ lwz r6, 4(r4) /* 800354E0 00031140 80 A4 00 08 */ lwz r5, 8(r4) /* 800354E4 00031144 80 04 00 0C */ lwz r0, 0xc(r4) /* 800354E8 00031148 90 E3 00 0C */ stw r7, 0xc(r3) /* 800354EC 0003114C 90 C3 00 10 */ stw r6, 0x10(r3) /* 800354F0 00031150 90 A3 00 14 */ stw r5, 0x14(r3) /* 800354F4 00031154 90 03 00 18 */ stw r0, 0x18(r3) /* 800354F8 00031158 4B FF F4 20 */ b func_80034918 .global func_800354FC func_800354FC: /* 800354FC 0003115C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80035500 00031160 7C 08 02 A6 */ mflr r0 /* 80035504 00031164 EC A1 18 28 */ fsubs f5, f1, f3 /* 80035508 00031168 C0 02 82 0C */ lfs f0, lbl_8064080C-_SDA2_BASE_(r2) /* 8003550C 0003116C 90 01 00 24 */ stw r0, 0x24(r1) /* 80035510 00031170 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80035514 00031174 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 80035518 00031178 7C 7F 1B 78 */ mr r31, r3 /* 8003551C 0003117C 40 80 00 10 */ bge lbl_8003552C /* 80035520 00031180 C0 02 82 10 */ lfs f0, lbl_80640810-_SDA2_BASE_(r2) /* 80035524 00031184 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 80035528 00031188 41 81 00 EC */ bgt lbl_80035614 lbl_8003552C: /* 8003552C 0003118C EC A2 20 28 */ fsubs f5, f2, f4 /* 80035530 00031190 C0 02 82 0C */ lfs f0, lbl_8064080C-_SDA2_BASE_(r2) /* 80035534 00031194 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 80035538 00031198 40 80 00 14 */ bge lbl_8003554C /* 8003553C 0003119C C0 02 82 10 */ lfs f0, lbl_80640810-_SDA2_BASE_(r2) /* 80035540 000311A0 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 80035544 000311A4 40 81 00 08 */ ble lbl_8003554C /* 80035548 000311A8 48 00 00 CC */ b lbl_80035614 lbl_8003554C: /* 8003554C 000311AC 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 80035550 000311B0 3C 80 43 30 */ lis r4, 0x4330 /* 80035554 000311B4 90 81 00 08 */ stw r4, 8(r1) /* 80035558 000311B8 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8003555C 000311BC A0 A6 00 04 */ lhz r5, 4(r6) /* 80035560 000311C0 A0 06 00 06 */ lhz r0, 6(r6) /* 80035564 000311C4 90 A1 00 0C */ stw r5, 0xc(r1) /* 80035568 000311C8 C8 A2 82 00 */ lfd f5, lbl_80640800-_SDA2_BASE_(r2) /* 8003556C 000311CC C8 01 00 08 */ lfd f0, 8(r1) /* 80035570 000311D0 90 01 00 14 */ stw r0, 0x14(r1) /* 80035574 000311D4 EC C0 28 28 */ fsubs f6, f0, f5 /* 80035578 000311D8 90 81 00 10 */ stw r4, 0x10(r1) /* 8003557C 000311DC C8 01 00 10 */ lfd f0, 0x10(r1) /* 80035580 000311E0 EC A0 28 28 */ fsubs f5, f0, f5 /* 80035584 000311E4 40 80 00 18 */ bge lbl_8003559C /* 80035588 000311E8 EC 21 30 24 */ fdivs f1, f1, f6 /* 8003558C 000311EC EC 03 30 24 */ fdivs f0, f3, f6 /* 80035590 000311F0 D0 23 00 0C */ stfs f1, 0xc(r3) /* 80035594 000311F4 D0 03 00 14 */ stfs f0, 0x14(r3) /* 80035598 000311F8 48 00 00 14 */ b lbl_800355AC lbl_8003559C: /* 8003559C 000311FC EC 21 30 24 */ fdivs f1, f1, f6 /* 800355A0 00031200 EC 03 30 24 */ fdivs f0, f3, f6 /* 800355A4 00031204 D0 23 00 14 */ stfs f1, 0x14(r3) /* 800355A8 00031208 D0 03 00 0C */ stfs f0, 0xc(r3) lbl_800355AC: /* 800355AC 0003120C FC 02 20 40 */ fcmpo cr0, f2, f4 /* 800355B0 00031210 40 80 00 18 */ bge lbl_800355C8 /* 800355B4 00031214 EC 22 28 24 */ fdivs f1, f2, f5 /* 800355B8 00031218 EC 04 28 24 */ fdivs f0, f4, f5 /* 800355BC 0003121C D0 23 00 10 */ stfs f1, 0x10(r3) /* 800355C0 00031220 D0 03 00 18 */ stfs f0, 0x18(r3) /* 800355C4 00031224 48 00 00 14 */ b lbl_800355D8 lbl_800355C8: /* 800355C8 00031228 EC 22 28 24 */ fdivs f1, f2, f5 /* 800355CC 0003122C EC 04 28 24 */ fdivs f0, f4, f5 /* 800355D0 00031230 D0 23 00 18 */ stfs f1, 0x18(r3) /* 800355D4 00031234 D0 03 00 10 */ stfs f0, 0x10(r3) lbl_800355D8: /* 800355D8 00031238 38 63 00 14 */ addi r3, r3, 0x14 /* 800355DC 0003123C 4B FF FD 79 */ bl func_80035354 /* 800355E0 00031240 38 7F 00 0C */ addi r3, r31, 0xc /* 800355E4 00031244 4B FF FD 71 */ bl func_80035354 /* 800355E8 00031248 38 7F 00 10 */ addi r3, r31, 0x10 /* 800355EC 0003124C 4B FF FD 69 */ bl func_80035354 /* 800355F0 00031250 38 7F 00 18 */ addi r3, r31, 0x18 /* 800355F4 00031254 4B FF FD 61 */ bl func_80035354 /* 800355F8 00031258 4B FF DA 91 */ bl func_80033088 /* 800355FC 0003125C 2C 03 00 00 */ cmpwi r3, 0 /* 80035600 00031260 41 82 00 10 */ beq lbl_80035610 /* 80035604 00031264 4B FF DA 85 */ bl func_80033088 /* 80035608 00031268 38 80 00 01 */ li r4, 1 /* 8003560C 0003126C 4B FF F2 B1 */ bl func_800348BC lbl_80035610: /* 80035610 00031270 4B FF F3 09 */ bl func_80034918 lbl_80035614: /* 80035614 00031274 80 01 00 24 */ lwz r0, 0x24(r1) /* 80035618 00031278 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003561C 0003127C 7C 08 03 A6 */ mtlr r0 /* 80035620 00031280 38 21 00 20 */ addi r1, r1, 0x20 /* 80035624 00031284 4E 80 00 20 */ blr .global func_80035628 func_80035628: /* 80035628 00031288 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003562C 0003128C 7C 08 02 A6 */ mflr r0 /* 80035630 00031290 3C 80 43 30 */ lis r4, 0x4330 /* 80035634 00031294 C0 22 81 E4 */ lfs f1, lbl_806407E4-_SDA2_BASE_(r2) /* 80035638 00031298 90 01 00 24 */ stw r0, 0x24(r1) /* 8003563C 0003129C C8 62 82 00 */ lfd f3, lbl_80640800-_SDA2_BASE_(r2) /* 80035640 000312A0 FC 40 08 90 */ fmr f2, f1 /* 80035644 000312A4 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 80035648 000312A8 90 81 00 08 */ stw r4, 8(r1) /* 8003564C 000312AC A0 A6 00 06 */ lhz r5, 6(r6) /* 80035650 000312B0 A0 06 00 04 */ lhz r0, 4(r6) /* 80035654 000312B4 90 A1 00 0C */ stw r5, 0xc(r1) /* 80035658 000312B8 C8 01 00 08 */ lfd f0, 8(r1) /* 8003565C 000312BC 90 01 00 14 */ stw r0, 0x14(r1) /* 80035660 000312C0 EC 80 18 28 */ fsubs f4, f0, f3 /* 80035664 000312C4 90 81 00 10 */ stw r4, 0x10(r1) /* 80035668 000312C8 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003566C 000312CC EC 60 18 28 */ fsubs f3, f0, f3 /* 80035670 000312D0 4B FF FE 8D */ bl func_800354FC /* 80035674 000312D4 4B FF DA 15 */ bl func_80033088 /* 80035678 000312D8 38 80 00 00 */ li r4, 0 /* 8003567C 000312DC 4B FF F2 41 */ bl func_800348BC /* 80035680 000312E0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80035684 000312E4 7C 08 03 A6 */ mtlr r0 /* 80035688 000312E8 38 21 00 20 */ addi r1, r1, 0x20 /* 8003568C 000312EC 4E 80 00 20 */ blr .global func_80035690 func_80035690: /* 80035690 000312F0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80035694 000312F4 7C 08 02 A6 */ mflr r0 /* 80035698 000312F8 90 01 00 64 */ stw r0, 0x64(r1) /* 8003569C 000312FC DB E1 00 50 */ stfd f31, 0x50(r1) /* 800356A0 00031300 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 800356A4 00031304 DB C1 00 40 */ stfd f30, 0x40(r1) /* 800356A8 00031308 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 800356AC 0003130C DB A1 00 30 */ stfd f29, 0x30(r1) /* 800356B0 00031310 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 800356B4 00031314 FF A0 28 90 */ fmr f29, f5 /* 800356B8 00031318 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) /* 800356BC 0003131C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800356C0 00031320 7C 9F 23 78 */ mr r31, r4 /* 800356C4 00031324 FC 00 28 00 */ fcmpu cr0, f0, f5 /* 800356C8 00031328 93 C1 00 28 */ stw r30, 0x28(r1) /* 800356CC 0003132C 7C 7E 1B 78 */ mr r30, r3 /* 800356D0 00031330 D0 21 00 08 */ stfs f1, 8(r1) /* 800356D4 00031334 D0 41 00 0C */ stfs f2, 0xc(r1) /* 800356D8 00031338 D0 61 00 10 */ stfs f3, 0x10(r1) /* 800356DC 0003133C D0 81 00 14 */ stfs f4, 0x14(r1) /* 800356E0 00031340 40 82 00 1C */ bne lbl_800356FC /* 800356E4 00031344 FC 20 08 18 */ frsp f1, f1 /* 800356E8 00031348 FC 40 10 18 */ frsp f2, f2 /* 800356EC 0003134C FC 60 18 18 */ frsp f3, f3 /* 800356F0 00031350 FC 80 20 18 */ frsp f4, f4 /* 800356F4 00031354 4B FF FE 09 */ bl func_800354FC /* 800356F8 00031358 48 00 01 00 */ b lbl_800357F8 lbl_800356FC: /* 800356FC 0003135C 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 80035700 00031360 3C 80 43 30 */ lis r4, 0x4330 /* 80035704 00031364 90 81 00 18 */ stw r4, 0x18(r1) /* 80035708 00031368 FC 00 08 18 */ frsp f0, f1 /* 8003570C 0003136C A0 A6 00 04 */ lhz r5, 4(r6) /* 80035710 00031370 38 61 00 08 */ addi r3, r1, 8 /* 80035714 00031374 A0 06 00 06 */ lhz r0, 6(r6) /* 80035718 00031378 90 A1 00 1C */ stw r5, 0x1c(r1) /* 8003571C 0003137C C8 42 82 00 */ lfd f2, lbl_80640800-_SDA2_BASE_(r2) /* 80035720 00031380 C8 21 00 18 */ lfd f1, 0x18(r1) /* 80035724 00031384 90 01 00 24 */ stw r0, 0x24(r1) /* 80035728 00031388 EF E1 10 28 */ fsubs f31, f1, f2 /* 8003572C 0003138C 90 81 00 20 */ stw r4, 0x20(r1) /* 80035730 00031390 EC 00 F8 24 */ fdivs f0, f0, f31 /* 80035734 00031394 C8 21 00 20 */ lfd f1, 0x20(r1) /* 80035738 00031398 EF C1 10 28 */ fsubs f30, f1, f2 /* 8003573C 0003139C D0 01 00 08 */ stfs f0, 8(r1) /* 80035740 000313A0 4B FF FC 15 */ bl func_80035354 /* 80035744 000313A4 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80035748 000313A8 38 61 00 10 */ addi r3, r1, 0x10 /* 8003574C 000313AC EC 00 F8 24 */ fdivs f0, f0, f31 /* 80035750 000313B0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80035754 000313B4 4B FF FC 01 */ bl func_80035354 /* 80035758 000313B8 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8003575C 000313BC 38 61 00 0C */ addi r3, r1, 0xc /* 80035760 000313C0 EC 00 F0 24 */ fdivs f0, f0, f30 /* 80035764 000313C4 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80035768 000313C8 4B FF FB ED */ bl func_80035354 /* 8003576C 000313CC C0 01 00 14 */ lfs f0, 0x14(r1) /* 80035770 000313D0 38 61 00 14 */ addi r3, r1, 0x14 /* 80035774 000313D4 EC 00 F0 24 */ fdivs f0, f0, f30 /* 80035778 000313D8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003577C 000313DC 4B FF FB D9 */ bl func_80035354 /* 80035780 000313E0 7F C3 F3 78 */ mr r3, r30 /* 80035784 000313E4 48 00 01 45 */ bl func_800358C8 /* 80035788 000313E8 FC 20 E8 90 */ fmr f1, f29 /* 8003578C 000313EC 38 9E 00 0C */ addi r4, r30, 0xc /* 80035790 000313F0 7C 86 23 78 */ mr r6, r4 /* 80035794 000313F4 7F E7 FB 78 */ mr r7, r31 /* 80035798 000313F8 38 7E 00 1C */ addi r3, r30, 0x1c /* 8003579C 000313FC 38 A1 00 08 */ addi r5, r1, 8 /* 800357A0 00031400 48 01 AB 9D */ bl func_8005033C /* 800357A4 00031404 FC 20 E8 90 */ fmr f1, f29 /* 800357A8 00031408 38 9E 00 10 */ addi r4, r30, 0x10 /* 800357AC 0003140C 7C 86 23 78 */ mr r6, r4 /* 800357B0 00031410 7F E7 FB 78 */ mr r7, r31 /* 800357B4 00031414 38 7E 00 40 */ addi r3, r30, 0x40 /* 800357B8 00031418 38 A1 00 0C */ addi r5, r1, 0xc /* 800357BC 0003141C 48 01 AB 81 */ bl func_8005033C /* 800357C0 00031420 FC 20 E8 90 */ fmr f1, f29 /* 800357C4 00031424 38 9E 00 14 */ addi r4, r30, 0x14 /* 800357C8 00031428 7C 86 23 78 */ mr r6, r4 /* 800357CC 0003142C 7F E7 FB 78 */ mr r7, r31 /* 800357D0 00031430 38 7E 00 64 */ addi r3, r30, 0x64 /* 800357D4 00031434 38 A1 00 10 */ addi r5, r1, 0x10 /* 800357D8 00031438 48 01 AB 65 */ bl func_8005033C /* 800357DC 0003143C FC 20 E8 90 */ fmr f1, f29 /* 800357E0 00031440 38 9E 00 18 */ addi r4, r30, 0x18 /* 800357E4 00031444 7C 86 23 78 */ mr r6, r4 /* 800357E8 00031448 7F E7 FB 78 */ mr r7, r31 /* 800357EC 0003144C 38 7E 00 88 */ addi r3, r30, 0x88 /* 800357F0 00031450 38 A1 00 14 */ addi r5, r1, 0x14 /* 800357F4 00031454 48 01 AB 49 */ bl func_8005033C lbl_800357F8: /* 800357F8 00031458 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 800357FC 0003145C CB E1 00 50 */ lfd f31, 0x50(r1) /* 80035800 00031460 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 80035804 00031464 CB C1 00 40 */ lfd f30, 0x40(r1) /* 80035808 00031468 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 8003580C 0003146C CB A1 00 30 */ lfd f29, 0x30(r1) /* 80035810 00031470 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80035814 00031474 80 01 00 64 */ lwz r0, 0x64(r1) /* 80035818 00031478 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8003581C 0003147C 7C 08 03 A6 */ mtlr r0 /* 80035820 00031480 38 21 00 60 */ addi r1, r1, 0x60 /* 80035824 00031484 4E 80 00 20 */ blr .global func_80035828 func_80035828: /* 80035828 00031488 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003582C 0003148C 7C 08 02 A6 */ mflr r0 /* 80035830 00031490 90 01 00 24 */ stw r0, 0x24(r1) /* 80035834 00031494 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80035838 00031498 FF E0 08 90 */ fmr f31, f1 /* 8003583C 0003149C 93 E1 00 14 */ stw r31, 0x14(r1) /* 80035840 000314A0 3B E3 00 1C */ addi r31, r3, 0x1c /* 80035844 000314A4 93 C1 00 10 */ stw r30, 0x10(r1) /* 80035848 000314A8 3B C0 00 00 */ li r30, 0 /* 8003584C 000314AC 93 A1 00 0C */ stw r29, 0xc(r1) /* 80035850 000314B0 3B A0 00 00 */ li r29, 0 /* 80035854 000314B4 93 81 00 08 */ stw r28, 8(r1) /* 80035858 000314B8 7C 7C 1B 78 */ mr r28, r3 lbl_8003585C: /* 8003585C 000314BC 81 9F 00 20 */ lwz r12, 0x20(r31) /* 80035860 000314C0 FC 20 F8 90 */ fmr f1, f31 /* 80035864 000314C4 7F E3 FB 78 */ mr r3, r31 /* 80035868 000314C8 81 8C 00 08 */ lwz r12, 8(r12) /* 8003586C 000314CC 7D 89 03 A6 */ mtctr r12 /* 80035870 000314D0 4E 80 04 21 */ bctrl /* 80035874 000314D4 2C 03 00 00 */ cmpwi r3, 0 /* 80035878 000314D8 41 82 00 08 */ beq lbl_80035880 /* 8003587C 000314DC 3B C0 00 01 */ li r30, 1 lbl_80035880: /* 80035880 000314E0 3B BD 00 01 */ addi r29, r29, 1 /* 80035884 000314E4 3B FF 00 24 */ addi r31, r31, 0x24 /* 80035888 000314E8 2C 1D 00 04 */ cmpwi r29, 4 /* 8003588C 000314EC 41 80 FF D0 */ blt lbl_8003585C /* 80035890 000314F0 2C 1E 00 00 */ cmpwi r30, 0 /* 80035894 000314F4 41 82 00 10 */ beq lbl_800358A4 /* 80035898 000314F8 7F 83 E3 78 */ mr r3, r28 /* 8003589C 000314FC 38 9C 00 0C */ addi r4, r28, 0xc /* 800358A0 00031500 4B FF FC 39 */ bl func_800354D8 lbl_800358A4: /* 800358A4 00031504 80 01 00 24 */ lwz r0, 0x24(r1) /* 800358A8 00031508 CB E1 00 18 */ lfd f31, 0x18(r1) /* 800358AC 0003150C 83 E1 00 14 */ lwz r31, 0x14(r1) /* 800358B0 00031510 83 C1 00 10 */ lwz r30, 0x10(r1) /* 800358B4 00031514 83 A1 00 0C */ lwz r29, 0xc(r1) /* 800358B8 00031518 83 81 00 08 */ lwz r28, 8(r1) /* 800358BC 0003151C 7C 08 03 A6 */ mtlr r0 /* 800358C0 00031520 38 21 00 20 */ addi r1, r1, 0x20 /* 800358C4 00031524 4E 80 00 20 */ blr .global func_800358C8 func_800358C8: /* 800358C8 00031528 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800358CC 0003152C 7C 08 02 A6 */ mflr r0 /* 800358D0 00031530 90 01 00 14 */ stw r0, 0x14(r1) /* 800358D4 00031534 93 E1 00 0C */ stw r31, 0xc(r1) /* 800358D8 00031538 3B E3 00 1C */ addi r31, r3, 0x1c /* 800358DC 0003153C 93 C1 00 08 */ stw r30, 8(r1) /* 800358E0 00031540 3B C0 00 00 */ li r30, 0 lbl_800358E4: /* 800358E4 00031544 7F E3 FB 78 */ mr r3, r31 /* 800358E8 00031548 48 01 AA A1 */ bl func_80050388 /* 800358EC 0003154C 3B DE 00 01 */ addi r30, r30, 1 /* 800358F0 00031550 3B FF 00 24 */ addi r31, r31, 0x24 /* 800358F4 00031554 2C 1E 00 04 */ cmpwi r30, 4 /* 800358F8 00031558 41 80 FF EC */ blt lbl_800358E4 /* 800358FC 0003155C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80035900 00031560 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80035904 00031564 83 C1 00 08 */ lwz r30, 8(r1) /* 80035908 00031568 7C 08 03 A6 */ mtlr r0 /* 8003590C 0003156C 38 21 00 10 */ addi r1, r1, 0x10 /* 80035910 00031570 4E 80 00 20 */ blr .global func_80035914 func_80035914: /* 80035914 00031574 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80035918 00031578 2C 00 00 00 */ cmpwi r0, 0 /* 8003591C 0003157C 41 82 00 0C */ beq lbl_80035928 /* 80035920 00031580 38 60 00 01 */ li r3, 1 /* 80035924 00031584 4E 80 00 20 */ blr lbl_80035928: /* 80035928 00031588 80 03 00 40 */ lwz r0, 0x40(r3) /* 8003592C 0003158C 2C 00 00 00 */ cmpwi r0, 0 /* 80035930 00031590 41 82 00 0C */ beq lbl_8003593C /* 80035934 00031594 38 60 00 01 */ li r3, 1 /* 80035938 00031598 4E 80 00 20 */ blr lbl_8003593C: /* 8003593C 0003159C 38 63 00 48 */ addi r3, r3, 0x48 /* 80035940 000315A0 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80035944 000315A4 2C 00 00 00 */ cmpwi r0, 0 /* 80035948 000315A8 41 82 00 0C */ beq lbl_80035954 /* 8003594C 000315AC 38 60 00 01 */ li r3, 1 /* 80035950 000315B0 4E 80 00 20 */ blr lbl_80035954: /* 80035954 000315B4 80 03 00 40 */ lwz r0, 0x40(r3) /* 80035958 000315B8 2C 00 00 00 */ cmpwi r0, 0 /* 8003595C 000315BC 41 82 00 0C */ beq lbl_80035968 /* 80035960 000315C0 38 60 00 01 */ li r3, 1 /* 80035964 000315C4 4E 80 00 20 */ blr lbl_80035968: /* 80035968 000315C8 38 60 00 00 */ li r3, 0 /* 8003596C 000315CC 4E 80 00 20 */ blr .global func_80035970 func_80035970: /* 80035970 000315D0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80035974 000315D4 7C 08 02 A6 */ mflr r0 /* 80035978 000315D8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003597C 000315DC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80035980 000315E0 7C 7F 1B 78 */ mr r31, r3 /* 80035984 000315E4 88 03 00 02 */ lbz r0, 2(r3) /* 80035988 000315E8 2C 00 00 00 */ cmpwi r0, 0 /* 8003598C 000315EC 41 82 00 9C */ beq lbl_80035A28 /* 80035990 000315F0 80 03 00 AC */ lwz r0, 0xac(r3) /* 80035994 000315F4 2C 00 00 00 */ cmpwi r0, 0 /* 80035998 000315F8 41 82 00 1C */ beq lbl_800359B4 /* 8003599C 000315FC 7C 03 03 78 */ mr r3, r0 /* 800359A0 00031600 38 80 00 00 */ li r4, 0 /* 800359A4 00031604 48 00 74 E5 */ bl func_8003CE88 /* 800359A8 00031608 2C 03 00 00 */ cmpwi r3, 0 /* 800359AC 0003160C 41 82 00 7C */ beq lbl_80035A28 /* 800359B0 00031610 48 00 00 7C */ b lbl_80035A2C lbl_800359B4: /* 800359B4 00031614 80 83 00 B0 */ lwz r4, 0xb0(r3) /* 800359B8 00031618 2C 04 00 00 */ cmpwi r4, 0 /* 800359BC 0003161C 41 82 00 6C */ beq lbl_80035A28 /* 800359C0 00031620 80 64 00 10 */ lwz r3, 0x10(r4) /* 800359C4 00031624 2C 03 00 00 */ cmpwi r3, 0 /* 800359C8 00031628 40 82 00 0C */ bne lbl_800359D4 /* 800359CC 0003162C 38 60 00 00 */ li r3, 0 /* 800359D0 00031630 48 00 00 4C */ b lbl_80035A1C lbl_800359D4: /* 800359D4 00031634 A0 04 00 E0 */ lhz r0, 0xe0(r4) /* 800359D8 00031638 2C 00 00 00 */ cmpwi r0, 0 /* 800359DC 0003163C 40 82 00 0C */ bne lbl_800359E8 /* 800359E0 00031640 38 60 00 00 */ li r3, 0 /* 800359E4 00031644 48 00 00 38 */ b lbl_80035A1C lbl_800359E8: /* 800359E8 00031648 80 A4 00 08 */ lwz r5, 8(r4) /* 800359EC 0003164C A0 63 00 00 */ lhz r3, 0(r3) /* 800359F0 00031650 2C 05 00 00 */ cmpwi r5, 0 /* 800359F4 00031654 40 82 00 0C */ bne lbl_80035A00 /* 800359F8 00031658 38 60 00 00 */ li r3, 0 /* 800359FC 0003165C 48 00 00 20 */ b lbl_80035A1C lbl_80035A00: /* 80035A00 00031660 A0 04 00 DE */ lhz r0, 0xde(r4) /* 80035A04 00031664 7C 03 00 40 */ cmplw r3, r0 /* 80035A08 00031668 41 80 00 0C */ blt lbl_80035A14 /* 80035A0C 0003166C 38 60 00 00 */ li r3, 0 /* 80035A10 00031670 48 00 00 0C */ b lbl_80035A1C lbl_80035A14: /* 80035A14 00031674 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 80035A18 00031678 7C 65 00 2E */ lwzx r3, r5, r0 lbl_80035A1C: /* 80035A1C 0003167C 2C 03 00 00 */ cmpwi r3, 0 /* 80035A20 00031680 41 82 00 08 */ beq lbl_80035A28 /* 80035A24 00031684 48 00 00 08 */ b lbl_80035A2C lbl_80035A28: /* 80035A28 00031688 80 7F 00 04 */ lwz r3, 4(r31) lbl_80035A2C: /* 80035A2C 0003168C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80035A30 00031690 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80035A34 00031694 7C 08 03 A6 */ mtlr r0 /* 80035A38 00031698 38 21 00 10 */ addi r1, r1, 0x10 /* 80035A3C 0003169C 4E 80 00 20 */ blr .global func_80035A40 func_80035A40: /* 80035A40 000316A0 90 83 00 AC */ stw r4, 0xac(r3) /* 80035A44 000316A4 4E 80 00 20 */ blr .global func_80035A48 func_80035A48: /* 80035A48 000316A8 90 83 00 B0 */ stw r4, 0xb0(r3) /* 80035A4C 000316AC 4E 80 00 20 */ blr .global func_80035A50 func_80035A50: /* 80035A50 000316B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80035A54 000316B4 7C 08 02 A6 */ mflr r0 /* 80035A58 000316B8 90 01 00 14 */ stw r0, 0x14(r1) /* 80035A5C 000316BC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80035A60 000316C0 7C 7F 1B 78 */ mr r31, r3 /* 80035A64 000316C4 80 03 00 AC */ lwz r0, 0xac(r3) /* 80035A68 000316C8 2C 00 00 00 */ cmpwi r0, 0 /* 80035A6C 000316CC 41 82 00 20 */ beq lbl_80035A8C /* 80035A70 000316D0 C0 22 81 E4 */ lfs f1, lbl_806407E4-_SDA2_BASE_(r2) /* 80035A74 000316D4 7C 03 03 78 */ mr r3, r0 /* 80035A78 000316D8 48 00 36 19 */ bl func_80039090 /* 80035A7C 000316DC 4B FF EE 9D */ bl func_80034918 /* 80035A80 000316E0 38 00 00 01 */ li r0, 1 /* 80035A84 000316E4 98 1F 00 02 */ stb r0, 2(r31) /* 80035A88 000316E8 48 00 00 1C */ b lbl_80035AA4 lbl_80035A8C: /* 80035A8C 000316EC 80 03 00 B0 */ lwz r0, 0xb0(r3) /* 80035A90 000316F0 2C 00 00 00 */ cmpwi r0, 0 /* 80035A94 000316F4 41 82 00 10 */ beq lbl_80035AA4 /* 80035A98 000316F8 4B FF EE 81 */ bl func_80034918 /* 80035A9C 000316FC 38 00 00 01 */ li r0, 1 /* 80035AA0 00031700 98 1F 00 02 */ stb r0, 2(r31) lbl_80035AA4: /* 80035AA4 00031704 80 01 00 14 */ lwz r0, 0x14(r1) /* 80035AA8 00031708 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80035AAC 0003170C 7C 08 03 A6 */ mtlr r0 /* 80035AB0 00031710 38 21 00 10 */ addi r1, r1, 0x10 /* 80035AB4 00031714 4E 80 00 20 */ blr .global func_80035AB8 func_80035AB8: /* 80035AB8 00031718 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80035ABC 0003171C 7C 08 02 A6 */ mflr r0 /* 80035AC0 00031720 90 01 00 44 */ stw r0, 0x44(r1) /* 80035AC4 00031724 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80035AC8 00031728 7C 7F 1B 78 */ mr r31, r3 /* 80035ACC 0003172C 93 C1 00 38 */ stw r30, 0x38(r1) /* 80035AD0 00031730 93 A1 00 34 */ stw r29, 0x34(r1) /* 80035AD4 00031734 88 03 00 02 */ lbz r0, 2(r3) /* 80035AD8 00031738 2C 00 00 00 */ cmpwi r0, 0 /* 80035ADC 0003173C 41 82 01 98 */ beq lbl_80035C74 /* 80035AE0 00031740 80 03 00 AC */ lwz r0, 0xac(r3) /* 80035AE4 00031744 2C 00 00 00 */ cmpwi r0, 0 /* 80035AE8 00031748 41 82 00 20 */ beq lbl_80035B08 /* 80035AEC 0003174C 7C 03 03 78 */ mr r3, r0 /* 80035AF0 00031750 38 80 00 00 */ li r4, 0 /* 80035AF4 00031754 48 00 73 95 */ bl func_8003CE88 /* 80035AF8 00031758 38 00 00 00 */ li r0, 0 /* 80035AFC 0003175C 7C 7E 1B 78 */ mr r30, r3 /* 80035B00 00031760 90 1F 00 AC */ stw r0, 0xac(r31) /* 80035B04 00031764 48 00 00 74 */ b lbl_80035B78 lbl_80035B08: /* 80035B08 00031768 80 A3 00 B0 */ lwz r5, 0xb0(r3) /* 80035B0C 0003176C 2C 05 00 00 */ cmpwi r5, 0 /* 80035B10 00031770 41 82 00 68 */ beq lbl_80035B78 /* 80035B14 00031774 80 85 00 10 */ lwz r4, 0x10(r5) /* 80035B18 00031778 2C 04 00 00 */ cmpwi r4, 0 /* 80035B1C 0003177C 40 82 00 0C */ bne lbl_80035B28 /* 80035B20 00031780 3B C0 00 00 */ li r30, 0 /* 80035B24 00031784 48 00 00 4C */ b lbl_80035B70 lbl_80035B28: /* 80035B28 00031788 A0 05 00 E0 */ lhz r0, 0xe0(r5) /* 80035B2C 0003178C 2C 00 00 00 */ cmpwi r0, 0 /* 80035B30 00031790 40 82 00 0C */ bne lbl_80035B3C /* 80035B34 00031794 3B C0 00 00 */ li r30, 0 /* 80035B38 00031798 48 00 00 38 */ b lbl_80035B70 lbl_80035B3C: /* 80035B3C 0003179C 80 C5 00 08 */ lwz r6, 8(r5) /* 80035B40 000317A0 A0 84 00 00 */ lhz r4, 0(r4) /* 80035B44 000317A4 2C 06 00 00 */ cmpwi r6, 0 /* 80035B48 000317A8 40 82 00 0C */ bne lbl_80035B54 /* 80035B4C 000317AC 3B C0 00 00 */ li r30, 0 /* 80035B50 000317B0 48 00 00 20 */ b lbl_80035B70 lbl_80035B54: /* 80035B54 000317B4 A0 05 00 DE */ lhz r0, 0xde(r5) /* 80035B58 000317B8 7C 04 00 40 */ cmplw r4, r0 /* 80035B5C 000317BC 41 80 00 0C */ blt lbl_80035B68 /* 80035B60 000317C0 3B C0 00 00 */ li r30, 0 /* 80035B64 000317C4 48 00 00 0C */ b lbl_80035B70 lbl_80035B68: /* 80035B68 000317C8 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 80035B6C 000317CC 7F C6 00 2E */ lwzx r30, r6, r0 lbl_80035B70: /* 80035B70 000317D0 38 00 00 00 */ li r0, 0 /* 80035B74 000317D4 90 03 00 B0 */ stw r0, 0xb0(r3) lbl_80035B78: /* 80035B78 000317D8 2C 1E 00 00 */ cmpwi r30, 0 /* 80035B7C 000317DC 41 82 00 EC */ beq lbl_80035C68 /* 80035B80 000317E0 80 1E 01 04 */ lwz r0, 0x104(r30) /* 80035B84 000317E4 C0 5E 00 20 */ lfs f2, 0x20(r30) /* 80035B88 000317E8 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 80035B8C 000317EC C0 3E 00 24 */ lfs f1, 0x24(r30) /* 80035B90 000317F0 C0 1E 00 28 */ lfs f0, 0x28(r30) /* 80035B94 000317F4 28 00 00 01 */ cmplwi r0, 1 /* 80035B98 000317F8 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80035B9C 000317FC D0 21 00 0C */ stfs f1, 0xc(r1) /* 80035BA0 00031800 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80035BA4 00031804 40 82 00 0C */ bne lbl_80035BB0 /* 80035BA8 00031808 C0 1E 01 6C */ lfs f0, 0x16c(r30) /* 80035BAC 0003180C 48 00 00 30 */ b lbl_80035BDC lbl_80035BB0: /* 80035BB0 00031810 C0 7E 01 6C */ lfs f3, 0x16c(r30) /* 80035BB4 00031814 C0 5E 01 68 */ lfs f2, 0x168(r30) /* 80035BB8 00031818 C0 3E 01 74 */ lfs f1, 0x174(r30) /* 80035BBC 0003181C C0 1E 01 70 */ lfs f0, 0x170(r30) /* 80035BC0 00031820 EC 43 10 28 */ fsubs f2, f3, f2 /* 80035BC4 00031824 EC 01 00 28 */ fsubs f0, f1, f0 /* 80035BC8 00031828 FC 20 12 10 */ fabs f1, f2 /* 80035BCC 0003182C FC 40 02 10 */ fabs f2, f0 /* 80035BD0 00031830 FC 00 08 18 */ frsp f0, f1 /* 80035BD4 00031834 FC 20 10 18 */ frsp f1, f2 /* 80035BD8 00031838 EC 01 00 24 */ fdivs f0, f1, f0 lbl_80035BDC: /* 80035BDC 0003183C 80 7F 00 04 */ lwz r3, 4(r31) /* 80035BE0 00031840 80 03 01 04 */ lwz r0, 0x104(r3) /* 80035BE4 00031844 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 80035BE8 00031848 28 00 00 01 */ cmplwi r0, 1 /* 80035BEC 0003184C 40 82 00 14 */ bne lbl_80035C00 /* 80035BF0 00031850 D0 03 01 6C */ stfs f0, 0x16c(r3) /* 80035BF4 00031854 80 03 01 04 */ lwz r0, 0x104(r3) /* 80035BF8 00031858 60 00 00 08 */ ori r0, r0, 8 /* 80035BFC 0003185C 90 03 01 04 */ stw r0, 0x104(r3) lbl_80035C00: /* 80035C00 00031860 48 00 A5 F5 */ bl func_800401F4 /* 80035C04 00031864 2C 03 00 00 */ cmpwi r3, 0 /* 80035C08 00031868 41 82 00 60 */ beq lbl_80035C68 /* 80035C0C 0003186C 80 9F 00 08 */ lwz r4, 8(r31) /* 80035C10 00031870 48 00 A7 75 */ bl func_80040384 /* 80035C14 00031874 2C 03 00 00 */ cmpwi r3, 0 /* 80035C18 00031878 7C 7D 1B 78 */ mr r29, r3 /* 80035C1C 0003187C 41 82 00 4C */ beq lbl_80035C68 /* 80035C20 00031880 80 1E 01 04 */ lwz r0, 0x104(r30) /* 80035C24 00031884 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 80035C28 00031888 28 00 00 01 */ cmplwi r0, 1 /* 80035C2C 0003188C 40 82 00 0C */ bne lbl_80035C38 /* 80035C30 00031890 C0 1E 01 68 */ lfs f0, 0x168(r30) /* 80035C34 00031894 48 00 00 08 */ b lbl_80035C3C lbl_80035C38: /* 80035C38 00031898 C0 02 81 E4 */ lfs f0, lbl_806407E4-_SDA2_BASE_(r2) lbl_80035C3C: /* 80035C3C 0003189C D0 03 04 E0 */ stfs f0, 0x4e0(r3) /* 80035C40 000318A0 38 63 00 04 */ addi r3, r3, 4 /* 80035C44 000318A4 48 01 A7 45 */ bl func_80050388 /* 80035C48 000318A8 38 00 00 01 */ li r0, 1 /* 80035C4C 000318AC 7F A3 EB 78 */ mr r3, r29 /* 80035C50 000318B0 98 1D 00 01 */ stb r0, 1(r29) /* 80035C54 000318B4 38 9E 01 AC */ addi r4, r30, 0x1ac /* 80035C58 000318B8 48 00 B4 55 */ bl func_800410AC /* 80035C5C 000318BC 7F A3 EB 78 */ mr r3, r29 /* 80035C60 000318C0 38 9E 01 C4 */ addi r4, r30, 0x1c4 /* 80035C64 000318C4 48 00 C8 D1 */ bl func_80042534 lbl_80035C68: /* 80035C68 000318C8 38 00 00 00 */ li r0, 0 /* 80035C6C 000318CC 98 1F 00 02 */ stb r0, 2(r31) /* 80035C70 000318D0 4B FF EC A9 */ bl func_80034918 lbl_80035C74: /* 80035C74 000318D4 80 01 00 44 */ lwz r0, 0x44(r1) /* 80035C78 000318D8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80035C7C 000318DC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80035C80 000318E0 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80035C84 000318E4 7C 08 03 A6 */ mtlr r0 /* 80035C88 000318E8 38 21 00 40 */ addi r1, r1, 0x40 /* 80035C8C 000318EC 4E 80 00 20 */ blr .global func_80035C90 func_80035C90: /* 80035C90 000318F0 38 A0 00 01 */ li r5, 1 /* 80035C94 000318F4 38 6D 97 90 */ addi r3, r13, lbl_8063EA50-_SDA_BASE_ /* 80035C98 000318F8 38 80 00 04 */ li r4, 4 /* 80035C9C 000318FC 38 00 00 00 */ li r0, 0 /* 80035CA0 00031900 98 AD 97 90 */ stb r5, lbl_8063EA50-_SDA_BASE_(r13) /* 80035CA4 00031904 B0 83 00 02 */ sth r4, 2(r3) /* 80035CA8 00031908 98 03 00 04 */ stb r0, 4(r3) /* 80035CAC 0003190C 4E 80 00 20 */ blr .global func_80035CB0 func_80035CB0: /* 80035CB0 00031910 38 00 00 00 */ li r0, 0 /* 80035CB4 00031914 98 03 00 07 */ stb r0, 7(r3) /* 80035CB8 00031918 B0 03 00 00 */ sth r0, 0(r3) /* 80035CBC 0003191C B0 03 00 02 */ sth r0, 2(r3) /* 80035CC0 00031920 98 03 00 04 */ stb r0, 4(r3) /* 80035CC4 00031924 98 03 00 05 */ stb r0, 5(r3) /* 80035CC8 00031928 98 03 00 06 */ stb r0, 6(r3) /* 80035CCC 0003192C 98 03 00 08 */ stb r0, 8(r3) /* 80035CD0 00031930 90 03 00 0C */ stw r0, 0xc(r3) /* 80035CD4 00031934 B0 03 00 12 */ sth r0, 0x12(r3) /* 80035CD8 00031938 B0 03 00 0A */ sth r0, 0xa(r3) /* 80035CDC 0003193C 4E 80 00 20 */ blr .global func_80035CE0 func_80035CE0: /* 80035CE0 00031940 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80035CE4 00031944 7C 08 02 A6 */ mflr r0 /* 80035CE8 00031948 90 01 00 24 */ stw r0, 0x24(r1) /* 80035CEC 0003194C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80035CF0 00031950 3B E3 03 40 */ addi r31, r3, 0x340 /* 80035CF4 00031954 93 C1 00 18 */ stw r30, 0x18(r1) /* 80035CF8 00031958 3B C3 04 10 */ addi r30, r3, 0x410 /* 80035CFC 0003195C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80035D00 00031960 7C 7D 1B 78 */ mr r29, r3 lbl_80035D04: /* 80035D04 00031964 7F E3 FB 78 */ mr r3, r31 /* 80035D08 00031968 4B FF FF A9 */ bl func_80035CB0 /* 80035D0C 0003196C 3B FF 00 34 */ addi r31, r31, 0x34 /* 80035D10 00031970 7C 1F F0 40 */ cmplw r31, r30 /* 80035D14 00031974 41 80 FF F0 */ blt lbl_80035D04 /* 80035D18 00031978 3B FD 04 E0 */ addi r31, r29, 0x4e0 lbl_80035D1C: /* 80035D1C 0003197C 7F C3 F3 78 */ mr r3, r30 /* 80035D20 00031980 4B FF FF 91 */ bl func_80035CB0 /* 80035D24 00031984 3B DE 00 34 */ addi r30, r30, 0x34 /* 80035D28 00031988 7C 1E F8 40 */ cmplw r30, r31 /* 80035D2C 0003198C 41 80 FF F0 */ blt lbl_80035D1C /* 80035D30 00031990 7F A3 EB 78 */ mr r3, r29 /* 80035D34 00031994 48 00 00 71 */ bl func_80035DA4 /* 80035D38 00031998 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80035D3C 0003199C 7F A3 EB 78 */ mr r3, r29 /* 80035D40 000319A0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80035D44 000319A4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80035D48 000319A8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80035D4C 000319AC 7C 08 03 A6 */ mtlr r0 /* 80035D50 000319B0 38 21 00 20 */ addi r1, r1, 0x20 /* 80035D54 000319B4 4E 80 00 20 */ blr .global func_80035D58 func_80035D58: /* 80035D58 000319B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80035D5C 000319BC 7C 08 02 A6 */ mflr r0 /* 80035D60 000319C0 90 01 00 14 */ stw r0, 0x14(r1) /* 80035D64 000319C4 80 0D 97 A8 */ lwz r0, lbl_8063EA68-_SDA_BASE_(r13) /* 80035D68 000319C8 2C 00 00 00 */ cmpwi r0, 0 /* 80035D6C 000319CC 40 82 00 1C */ bne lbl_80035D88 /* 80035D70 000319D0 38 60 09 74 */ li r3, 0x974 /* 80035D74 000319D4 48 1A 4C BD */ bl func_801DAA30 /* 80035D78 000319D8 2C 03 00 00 */ cmpwi r3, 0 /* 80035D7C 000319DC 41 82 00 08 */ beq lbl_80035D84 /* 80035D80 000319E0 4B FF FF 61 */ bl func_80035CE0 lbl_80035D84: /* 80035D84 000319E4 90 6D 97 A8 */ stw r3, lbl_8063EA68-_SDA_BASE_(r13) lbl_80035D88: /* 80035D88 000319E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 80035D8C 000319EC 80 6D 97 A8 */ lwz r3, lbl_8063EA68-_SDA_BASE_(r13) /* 80035D90 000319F0 7C 08 03 A6 */ mtlr r0 /* 80035D94 000319F4 38 21 00 10 */ addi r1, r1, 0x10 /* 80035D98 000319F8 4E 80 00 20 */ blr .global func_80035D9C func_80035D9C: /* 80035D9C 000319FC 80 6D 97 A8 */ lwz r3, lbl_8063EA68-_SDA_BASE_(r13) /* 80035DA0 00031A00 4E 80 00 20 */ blr .global func_80035DA4 func_80035DA4: /* 80035DA4 00031A04 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80035DA8 00031A08 7C 08 02 A6 */ mflr r0 /* 80035DAC 00031A0C 38 C0 00 00 */ li r6, 0 /* 80035DB0 00031A10 38 80 00 00 */ li r4, 0 /* 80035DB4 00031A14 90 01 00 14 */ stw r0, 0x14(r1) /* 80035DB8 00031A18 38 00 FF FF */ li r0, -1 /* 80035DBC 00031A1C 38 A0 01 0C */ li r5, 0x10c /* 80035DC0 00031A20 93 E1 00 0C */ stw r31, 0xc(r1) /* 80035DC4 00031A24 7C 7F 1B 78 */ mr r31, r3 /* 80035DC8 00031A28 90 C3 00 00 */ stw r6, 0(r3) /* 80035DCC 00031A2C 90 03 00 04 */ stw r0, 4(r3) /* 80035DD0 00031A30 90 03 00 08 */ stw r0, 8(r3) /* 80035DD4 00031A34 90 C3 00 0C */ stw r6, 0xc(r3) /* 80035DD8 00031A38 90 C3 00 10 */ stw r6, 0x10(r3) /* 80035DDC 00031A3C 90 C3 00 14 */ stw r6, 0x14(r3) /* 80035DE0 00031A40 98 C3 03 30 */ stb r6, 0x330(r3) /* 80035DE4 00031A44 90 C3 00 2C */ stw r6, 0x2c(r3) /* 80035DE8 00031A48 90 C3 03 34 */ stw r6, 0x334(r3) /* 80035DEC 00031A4C 38 63 08 60 */ addi r3, r3, 0x860 /* 80035DF0 00031A50 4B FC E3 15 */ bl memset /* 80035DF4 00031A54 38 7F 04 E0 */ addi r3, r31, 0x4e0 /* 80035DF8 00031A58 38 80 00 00 */ li r4, 0 /* 80035DFC 00031A5C 38 A0 03 80 */ li r5, 0x380 /* 80035E00 00031A60 4B FC E3 05 */ bl memset /* 80035E04 00031A64 38 7F 03 40 */ addi r3, r31, 0x340 /* 80035E08 00031A68 38 80 00 00 */ li r4, 0 /* 80035E0C 00031A6C 38 A0 00 D0 */ li r5, 0xd0 /* 80035E10 00031A70 4B FC E2 F5 */ bl memset /* 80035E14 00031A74 38 7F 08 60 */ addi r3, r31, 0x860 /* 80035E18 00031A78 38 1F 04 E0 */ addi r0, r31, 0x4e0 /* 80035E1C 00031A7C 90 7F 09 70 */ stw r3, 0x970(r31) /* 80035E20 00031A80 90 1F 09 6C */ stw r0, 0x96c(r31) /* 80035E24 00031A84 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80035E28 00031A88 80 01 00 14 */ lwz r0, 0x14(r1) /* 80035E2C 00031A8C 7C 08 03 A6 */ mtlr r0 /* 80035E30 00031A90 38 21 00 10 */ addi r1, r1, 0x10 /* 80035E34 00031A94 4E 80 00 20 */ blr .global func_80035E38 func_80035E38: /* 80035E38 00031A98 80 63 00 00 */ lwz r3, 0(r3) /* 80035E3C 00031A9C 4E 80 00 20 */ blr .global func_80035E40 func_80035E40: /* 80035E40 00031AA0 90 83 00 00 */ stw r4, 0(r3) /* 80035E44 00031AA4 4E 80 00 20 */ blr .global func_80035E48 func_80035E48: /* 80035E48 00031AA8 80 63 00 04 */ lwz r3, 4(r3) /* 80035E4C 00031AAC 4E 80 00 20 */ blr .global func_80035E50 func_80035E50: /* 80035E50 00031AB0 90 83 00 04 */ stw r4, 4(r3) /* 80035E54 00031AB4 4E 80 00 20 */ blr .global func_80035E58 func_80035E58: /* 80035E58 00031AB8 80 63 00 08 */ lwz r3, 8(r3) /* 80035E5C 00031ABC 4E 80 00 20 */ blr .global func_80035E60 func_80035E60: /* 80035E60 00031AC0 90 83 00 08 */ stw r4, 8(r3) /* 80035E64 00031AC4 4E 80 00 20 */ blr .global func_80035E68 func_80035E68: /* 80035E68 00031AC8 80 63 00 0C */ lwz r3, 0xc(r3) /* 80035E6C 00031ACC 4E 80 00 20 */ blr .global func_80035E70 func_80035E70: /* 80035E70 00031AD0 90 83 00 0C */ stw r4, 0xc(r3) /* 80035E74 00031AD4 4E 80 00 20 */ blr .global func_80035E78 func_80035E78: /* 80035E78 00031AD8 80 63 00 10 */ lwz r3, 0x10(r3) /* 80035E7C 00031ADC 4E 80 00 20 */ blr .global func_80035E80 func_80035E80: /* 80035E80 00031AE0 90 83 00 10 */ stw r4, 0x10(r3) /* 80035E84 00031AE4 4E 80 00 20 */ blr .global func_80035E88 func_80035E88: /* 80035E88 00031AE8 80 63 00 14 */ lwz r3, 0x14(r3) /* 80035E8C 00031AEC 4E 80 00 20 */ blr .global func_80035E90 func_80035E90: /* 80035E90 00031AF0 90 83 00 14 */ stw r4, 0x14(r3) /* 80035E94 00031AF4 4E 80 00 20 */ blr .global func_80035E98 func_80035E98: /* 80035E98 00031AF8 90 83 00 2C */ stw r4, 0x2c(r3) /* 80035E9C 00031AFC 4E 80 00 20 */ blr .global func_80035EA0 func_80035EA0: /* 80035EA0 00031B00 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80035EA4 00031B04 4E 80 00 20 */ blr .global func_80035EA8 func_80035EA8: /* 80035EA8 00031B08 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035EAC 00031B0C A0 63 00 02 */ lhz r3, 2(r3) /* 80035EB0 00031B10 4E 80 00 20 */ blr .global func_80035EB4 func_80035EB4: /* 80035EB4 00031B14 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035EB8 00031B18 B0 83 00 02 */ sth r4, 2(r3) /* 80035EBC 00031B1C 4E 80 00 20 */ blr .global func_80035EC0 func_80035EC0: /* 80035EC0 00031B20 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035EC4 00031B24 88 63 00 04 */ lbz r3, 4(r3) /* 80035EC8 00031B28 4E 80 00 20 */ blr .global func_80035ECC func_80035ECC: /* 80035ECC 00031B2C 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035ED0 00031B30 98 83 00 04 */ stb r4, 4(r3) /* 80035ED4 00031B34 4E 80 00 20 */ blr .global func_80035ED8 func_80035ED8: /* 80035ED8 00031B38 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035EDC 00031B3C 88 63 00 05 */ lbz r3, 5(r3) /* 80035EE0 00031B40 4E 80 00 20 */ blr .global func_80035EE4 func_80035EE4: /* 80035EE4 00031B44 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035EE8 00031B48 98 83 00 05 */ stb r4, 5(r3) /* 80035EEC 00031B4C 4E 80 00 20 */ blr .global func_80035EF0 func_80035EF0: /* 80035EF0 00031B50 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035EF4 00031B54 88 63 00 06 */ lbz r3, 6(r3) /* 80035EF8 00031B58 4E 80 00 20 */ blr .global func_80035EFC func_80035EFC: /* 80035EFC 00031B5C 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F00 00031B60 A0 63 00 08 */ lhz r3, 8(r3) /* 80035F04 00031B64 4E 80 00 20 */ blr .global func_80035F08 func_80035F08: /* 80035F08 00031B68 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F0C 00031B6C B0 83 00 08 */ sth r4, 8(r3) /* 80035F10 00031B70 4E 80 00 20 */ blr .global func_80035F14 func_80035F14: /* 80035F14 00031B74 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F18 00031B78 A0 63 00 0A */ lhz r3, 0xa(r3) /* 80035F1C 00031B7C 4E 80 00 20 */ blr .global func_80035F20 func_80035F20: /* 80035F20 00031B80 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F24 00031B84 B0 83 00 0A */ sth r4, 0xa(r3) /* 80035F28 00031B88 4E 80 00 20 */ blr .global func_80035F2C func_80035F2C: /* 80035F2C 00031B8C 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F30 00031B90 A0 63 00 0C */ lhz r3, 0xc(r3) /* 80035F34 00031B94 4E 80 00 20 */ blr .global func_80035F38 func_80035F38: /* 80035F38 00031B98 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F3C 00031B9C B0 83 00 0C */ sth r4, 0xc(r3) /* 80035F40 00031BA0 4E 80 00 20 */ blr .global func_80035F44 func_80035F44: /* 80035F44 00031BA4 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F48 00031BA8 A0 63 00 18 */ lhz r3, 0x18(r3) /* 80035F4C 00031BAC 4E 80 00 20 */ blr .global func_80035F50 func_80035F50: /* 80035F50 00031BB0 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F54 00031BB4 88 63 00 24 */ lbz r3, 0x24(r3) /* 80035F58 00031BB8 4E 80 00 20 */ blr .global func_80035F5C func_80035F5C: /* 80035F5C 00031BBC 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F60 00031BC0 98 83 00 24 */ stb r4, 0x24(r3) /* 80035F64 00031BC4 4E 80 00 20 */ blr .global func_80035F68 func_80035F68: /* 80035F68 00031BC8 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F6C 00031BCC 88 63 00 25 */ lbz r3, 0x25(r3) /* 80035F70 00031BD0 4E 80 00 20 */ blr .global func_80035F74 func_80035F74: /* 80035F74 00031BD4 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F78 00031BD8 98 83 00 25 */ stb r4, 0x25(r3) /* 80035F7C 00031BDC 4E 80 00 20 */ blr .global func_80035F80 func_80035F80: /* 80035F80 00031BE0 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F84 00031BE4 88 63 00 26 */ lbz r3, 0x26(r3) /* 80035F88 00031BE8 4E 80 00 20 */ blr .global func_80035F8C func_80035F8C: /* 80035F8C 00031BEC 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F90 00031BF0 88 63 00 27 */ lbz r3, 0x27(r3) /* 80035F94 00031BF4 4E 80 00 20 */ blr .global func_80035F98 func_80035F98: /* 80035F98 00031BF8 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035F9C 00031BFC 88 83 00 26 */ lbz r4, 0x26(r3) /* 80035FA0 00031C00 20 64 00 FF */ subfic r3, r4, 0xff /* 80035FA4 00031C04 38 04 FF 01 */ addi r0, r4, -255 /* 80035FA8 00031C08 7C 60 03 78 */ or r0, r3, r0 /* 80035FAC 00031C0C 54 03 0F FE */ srwi r3, r0, 0x1f /* 80035FB0 00031C10 4E 80 00 20 */ blr .global func_80035FB4 func_80035FB4: /* 80035FB4 00031C14 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80035FB8 00031C18 7C 08 02 A6 */ mflr r0 /* 80035FBC 00031C1C 2C 84 00 00 */ cmpwi cr1, r4, 0 /* 80035FC0 00031C20 90 01 00 14 */ stw r0, 0x14(r1) /* 80035FC4 00031C24 93 E1 00 0C */ stw r31, 0xc(r1) /* 80035FC8 00031C28 7C 9F 23 78 */ mr r31, r4 /* 80035FCC 00031C2C 93 C1 00 08 */ stw r30, 8(r1) /* 80035FD0 00031C30 7C 7E 1B 78 */ mr r30, r3 /* 80035FD4 00031C34 41 84 00 1C */ blt cr1, lbl_80035FF0 /* 80035FD8 00031C38 2C 04 00 02 */ cmpwi r4, 2 /* 80035FDC 00031C3C 40 80 00 14 */ bge lbl_80035FF0 /* 80035FE0 00031C40 80 63 09 70 */ lwz r3, 0x970(r3) /* 80035FE4 00031C44 A0 03 00 08 */ lhz r0, 8(r3) /* 80035FE8 00031C48 2C 00 00 00 */ cmpwi r0, 0 /* 80035FEC 00031C4C 40 82 00 0C */ bne lbl_80035FF8 lbl_80035FF0: /* 80035FF0 00031C50 38 60 00 00 */ li r3, 0 /* 80035FF4 00031C54 48 00 00 5C */ b lbl_80036050 lbl_80035FF8: /* 80035FF8 00031C58 40 86 00 18 */ bne cr1, lbl_80036010 /* 80035FFC 00031C5C A0 63 00 18 */ lhz r3, 0x18(r3) /* 80036000 00031C60 2C 03 00 00 */ cmpwi r3, 0 /* 80036004 00031C64 41 82 00 1C */ beq lbl_80036020 /* 80036008 00031C68 48 13 96 21 */ bl func_8016F628 /* 8003600C 00031C6C 48 00 00 14 */ b lbl_80036020 lbl_80036010: /* 80036010 00031C70 A0 63 00 1A */ lhz r3, 0x1a(r3) /* 80036014 00031C74 2C 03 00 00 */ cmpwi r3, 0 /* 80036018 00031C78 41 82 00 08 */ beq lbl_80036020 /* 8003601C 00031C7C 48 13 96 0D */ bl func_8016F628 lbl_80036020: /* 80036020 00031C80 2C 03 00 00 */ cmpwi r3, 0 /* 80036024 00031C84 40 82 00 0C */ bne lbl_80036030 /* 80036028 00031C88 38 60 00 00 */ li r3, 0 /* 8003602C 00031C8C 48 00 00 24 */ b lbl_80036050 lbl_80036030: /* 80036030 00031C90 57 FF 40 2E */ slwi r31, r31, 8 /* 80036034 00031C94 7C 64 1B 78 */ mr r4, r3 /* 80036038 00031C98 7C 7E FA 14 */ add r3, r30, r31 /* 8003603C 00031C9C 38 A0 00 80 */ li r5, 0x80 /* 80036040 00031CA0 38 63 01 30 */ addi r3, r3, 0x130 /* 80036044 00031CA4 48 14 10 3D */ bl func_80177080 /* 80036048 00031CA8 7C 7E FA 14 */ add r3, r30, r31 /* 8003604C 00031CAC 38 63 01 30 */ addi r3, r3, 0x130 lbl_80036050: /* 80036050 00031CB0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80036054 00031CB4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80036058 00031CB8 83 C1 00 08 */ lwz r30, 8(r1) /* 8003605C 00031CBC 7C 08 03 A6 */ mtlr r0 /* 80036060 00031CC0 38 21 00 10 */ addi r1, r1, 0x10 /* 80036064 00031CC4 4E 80 00 20 */ blr .global func_80036068 func_80036068: /* 80036068 00031CC8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003606C 00031CCC 7C 08 02 A6 */ mflr r0 /* 80036070 00031CD0 90 01 00 14 */ stw r0, 0x14(r1) /* 80036074 00031CD4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80036078 00031CD8 7C 7F 1B 78 */ mr r31, r3 /* 8003607C 00031CDC 80 83 09 70 */ lwz r4, 0x970(r3) /* 80036080 00031CE0 A0 64 00 08 */ lhz r3, 8(r4) /* 80036084 00031CE4 2C 03 00 00 */ cmpwi r3, 0 /* 80036088 00031CE8 40 82 00 0C */ bne lbl_80036094 /* 8003608C 00031CEC 38 60 00 00 */ li r3, 0 /* 80036090 00031CF0 48 00 00 2C */ b lbl_800360BC lbl_80036094: /* 80036094 00031CF4 48 13 95 95 */ bl func_8016F628 /* 80036098 00031CF8 2C 03 00 00 */ cmpwi r3, 0 /* 8003609C 00031CFC 40 82 00 0C */ bne lbl_800360A8 /* 800360A0 00031D00 38 60 00 00 */ li r3, 0 /* 800360A4 00031D04 48 00 00 18 */ b lbl_800360BC lbl_800360A8: /* 800360A8 00031D08 7C 64 1B 78 */ mr r4, r3 /* 800360AC 00031D0C 38 7F 00 30 */ addi r3, r31, 0x30 /* 800360B0 00031D10 38 A0 00 80 */ li r5, 0x80 /* 800360B4 00031D14 48 14 0F CD */ bl func_80177080 /* 800360B8 00031D18 38 7F 00 30 */ addi r3, r31, 0x30 lbl_800360BC: /* 800360BC 00031D1C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800360C0 00031D20 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800360C4 00031D24 7C 08 03 A6 */ mtlr r0 /* 800360C8 00031D28 38 21 00 10 */ addi r1, r1, 0x10 /* 800360CC 00031D2C 4E 80 00 20 */ blr .global func_800360D0 func_800360D0: /* 800360D0 00031D30 80 83 09 70 */ lwz r4, 0x970(r3) /* 800360D4 00031D34 38 60 00 00 */ li r3, 0 /* 800360D8 00031D38 88 04 00 2C */ lbz r0, 0x2c(r4) /* 800360DC 00031D3C 28 00 00 FF */ cmplwi r0, 0xff /* 800360E0 00031D40 4D 82 00 20 */ beqlr /* 800360E4 00031D44 88 04 00 64 */ lbz r0, 0x64(r4) /* 800360E8 00031D48 38 60 00 01 */ li r3, 1 /* 800360EC 00031D4C 28 00 00 FF */ cmplwi r0, 0xff /* 800360F0 00031D50 4D 82 00 20 */ beqlr /* 800360F4 00031D54 88 04 00 9C */ lbz r0, 0x9c(r4) /* 800360F8 00031D58 38 60 00 02 */ li r3, 2 /* 800360FC 00031D5C 28 00 00 FF */ cmplwi r0, 0xff /* 80036100 00031D60 4D 82 00 20 */ beqlr /* 80036104 00031D64 88 04 00 D4 */ lbz r0, 0xd4(r4) /* 80036108 00031D68 38 60 00 03 */ li r3, 3 /* 8003610C 00031D6C 28 00 00 FF */ cmplwi r0, 0xff /* 80036110 00031D70 4D 82 00 20 */ beqlr /* 80036114 00031D74 38 60 00 04 */ li r3, 4 /* 80036118 00031D78 4E 80 00 20 */ blr .global func_8003611C func_8003611C: /* 8003611C 00031D7C 2C 04 00 00 */ cmpwi r4, 0 /* 80036120 00031D80 41 80 00 0C */ blt lbl_8003612C /* 80036124 00031D84 2C 04 00 04 */ cmpwi r4, 4 /* 80036128 00031D88 41 80 00 0C */ blt lbl_80036134 lbl_8003612C: /* 8003612C 00031D8C 38 60 00 00 */ li r3, 0 /* 80036130 00031D90 4E 80 00 20 */ blr lbl_80036134: /* 80036134 00031D94 1C 04 00 38 */ mulli r0, r4, 0x38 /* 80036138 00031D98 80 63 09 70 */ lwz r3, 0x970(r3) /* 8003613C 00031D9C 2C 05 00 0F */ cmpwi r5, 0xf /* 80036140 00031DA0 7C 63 02 14 */ add r3, r3, r0 /* 80036144 00031DA4 41 82 01 4C */ beq lbl_80036290 /* 80036148 00031DA8 40 80 00 70 */ bge lbl_800361B8 /* 8003614C 00031DAC 2C 05 00 07 */ cmpwi r5, 7 /* 80036150 00031DB0 41 82 01 00 */ beq lbl_80036250 /* 80036154 00031DB4 40 80 00 38 */ bge lbl_8003618C /* 80036158 00031DB8 2C 05 00 03 */ cmpwi r5, 3 /* 8003615C 00031DBC 41 82 00 D4 */ beq lbl_80036230 /* 80036160 00031DC0 40 80 00 1C */ bge lbl_8003617C /* 80036164 00031DC4 2C 05 00 01 */ cmpwi r5, 1 /* 80036168 00031DC8 41 82 00 B8 */ beq lbl_80036220 /* 8003616C 00031DCC 40 80 00 BC */ bge lbl_80036228 /* 80036170 00031DD0 2C 05 00 00 */ cmpwi r5, 0 /* 80036174 00031DD4 40 80 00 A4 */ bge lbl_80036218 /* 80036178 00031DD8 48 00 01 88 */ b lbl_80036300 lbl_8003617C: /* 8003617C 00031DDC 2C 05 00 05 */ cmpwi r5, 5 /* 80036180 00031DE0 41 82 00 C0 */ beq lbl_80036240 /* 80036184 00031DE4 40 80 00 C4 */ bge lbl_80036248 /* 80036188 00031DE8 48 00 00 B0 */ b lbl_80036238 lbl_8003618C: /* 8003618C 00031DEC 2C 05 00 0B */ cmpwi r5, 0xb /* 80036190 00031DF0 41 82 00 E0 */ beq lbl_80036270 /* 80036194 00031DF4 40 80 00 14 */ bge lbl_800361A8 /* 80036198 00031DF8 2C 05 00 09 */ cmpwi r5, 9 /* 8003619C 00031DFC 41 82 00 C4 */ beq lbl_80036260 /* 800361A0 00031E00 40 80 00 C8 */ bge lbl_80036268 /* 800361A4 00031E04 48 00 00 B4 */ b lbl_80036258 lbl_800361A8: /* 800361A8 00031E08 2C 05 00 0D */ cmpwi r5, 0xd /* 800361AC 00031E0C 41 82 00 D4 */ beq lbl_80036280 /* 800361B0 00031E10 40 80 00 D8 */ bge lbl_80036288 /* 800361B4 00031E14 48 00 00 C4 */ b lbl_80036278 lbl_800361B8: /* 800361B8 00031E18 2C 05 00 17 */ cmpwi r5, 0x17 /* 800361BC 00031E1C 41 82 01 24 */ beq lbl_800362E0 /* 800361C0 00031E20 40 80 00 30 */ bge lbl_800361F0 /* 800361C4 00031E24 2C 05 00 13 */ cmpwi r5, 0x13 /* 800361C8 00031E28 41 82 00 E8 */ beq lbl_800362B0 /* 800361CC 00031E2C 40 80 00 14 */ bge lbl_800361E0 /* 800361D0 00031E30 2C 05 00 11 */ cmpwi r5, 0x11 /* 800361D4 00031E34 41 82 00 CC */ beq lbl_800362A0 /* 800361D8 00031E38 40 80 00 D0 */ bge lbl_800362A8 /* 800361DC 00031E3C 48 00 00 BC */ b lbl_80036298 lbl_800361E0: /* 800361E0 00031E40 2C 05 00 15 */ cmpwi r5, 0x15 /* 800361E4 00031E44 41 82 00 EC */ beq lbl_800362D0 /* 800361E8 00031E48 40 80 00 F0 */ bge lbl_800362D8 /* 800361EC 00031E4C 48 00 00 CC */ b lbl_800362B8 lbl_800361F0: /* 800361F0 00031E50 2C 05 00 1B */ cmpwi r5, 0x1b /* 800361F4 00031E54 41 82 00 FC */ beq lbl_800362F0 /* 800361F8 00031E58 40 80 00 14 */ bge lbl_8003620C /* 800361FC 00031E5C 2C 05 00 19 */ cmpwi r5, 0x19 /* 80036200 00031E60 41 82 00 C8 */ beq lbl_800362C8 /* 80036204 00031E64 40 80 00 E4 */ bge lbl_800362E8 /* 80036208 00031E68 48 00 00 B8 */ b lbl_800362C0 lbl_8003620C: /* 8003620C 00031E6C 2C 05 03 E8 */ cmpwi r5, 0x3e8 /* 80036210 00031E70 41 82 00 E8 */ beq lbl_800362F8 /* 80036214 00031E74 48 00 00 EC */ b lbl_80036300 lbl_80036218: /* 80036218 00031E78 88 63 00 2C */ lbz r3, 0x2c(r3) /* 8003621C 00031E7C 4E 80 00 20 */ blr lbl_80036220: /* 80036220 00031E80 88 63 00 2D */ lbz r3, 0x2d(r3) /* 80036224 00031E84 4E 80 00 20 */ blr lbl_80036228: /* 80036228 00031E88 A0 63 00 2E */ lhz r3, 0x2e(r3) /* 8003622C 00031E8C 4E 80 00 20 */ blr lbl_80036230: /* 80036230 00031E90 A0 63 00 30 */ lhz r3, 0x30(r3) /* 80036234 00031E94 4E 80 00 20 */ blr lbl_80036238: /* 80036238 00031E98 A0 63 00 32 */ lhz r3, 0x32(r3) /* 8003623C 00031E9C 4E 80 00 20 */ blr lbl_80036240: /* 80036240 00031EA0 88 63 00 34 */ lbz r3, 0x34(r3) /* 80036244 00031EA4 4E 80 00 20 */ blr lbl_80036248: /* 80036248 00031EA8 88 63 00 35 */ lbz r3, 0x35(r3) /* 8003624C 00031EAC 4E 80 00 20 */ blr lbl_80036250: /* 80036250 00031EB0 88 63 00 36 */ lbz r3, 0x36(r3) /* 80036254 00031EB4 4E 80 00 20 */ blr lbl_80036258: /* 80036258 00031EB8 88 63 00 37 */ lbz r3, 0x37(r3) /* 8003625C 00031EBC 4E 80 00 20 */ blr lbl_80036260: /* 80036260 00031EC0 A0 63 00 38 */ lhz r3, 0x38(r3) /* 80036264 00031EC4 4E 80 00 20 */ blr lbl_80036268: /* 80036268 00031EC8 A0 63 00 3A */ lhz r3, 0x3a(r3) /* 8003626C 00031ECC 4E 80 00 20 */ blr lbl_80036270: /* 80036270 00031ED0 A0 63 00 3C */ lhz r3, 0x3c(r3) /* 80036274 00031ED4 4E 80 00 20 */ blr lbl_80036278: /* 80036278 00031ED8 A0 63 00 3E */ lhz r3, 0x3e(r3) /* 8003627C 00031EDC 4E 80 00 20 */ blr lbl_80036280: /* 80036280 00031EE0 88 63 00 40 */ lbz r3, 0x40(r3) /* 80036284 00031EE4 4E 80 00 20 */ blr lbl_80036288: /* 80036288 00031EE8 88 63 00 41 */ lbz r3, 0x41(r3) /* 8003628C 00031EEC 4E 80 00 20 */ blr lbl_80036290: /* 80036290 00031EF0 88 63 00 42 */ lbz r3, 0x42(r3) /* 80036294 00031EF4 4E 80 00 20 */ blr lbl_80036298: /* 80036298 00031EF8 88 63 00 43 */ lbz r3, 0x43(r3) /* 8003629C 00031EFC 4E 80 00 20 */ blr lbl_800362A0: /* 800362A0 00031F00 88 63 00 44 */ lbz r3, 0x44(r3) /* 800362A4 00031F04 4E 80 00 20 */ blr lbl_800362A8: /* 800362A8 00031F08 88 63 00 45 */ lbz r3, 0x45(r3) /* 800362AC 00031F0C 4E 80 00 20 */ blr lbl_800362B0: /* 800362B0 00031F10 88 63 00 46 */ lbz r3, 0x46(r3) /* 800362B4 00031F14 4E 80 00 20 */ blr lbl_800362B8: /* 800362B8 00031F18 88 63 00 47 */ lbz r3, 0x47(r3) /* 800362BC 00031F1C 4E 80 00 20 */ blr lbl_800362C0: /* 800362C0 00031F20 A0 63 00 48 */ lhz r3, 0x48(r3) /* 800362C4 00031F24 4E 80 00 20 */ blr lbl_800362C8: /* 800362C8 00031F28 A0 63 00 4A */ lhz r3, 0x4a(r3) /* 800362CC 00031F2C 4E 80 00 20 */ blr lbl_800362D0: /* 800362D0 00031F30 A0 63 00 54 */ lhz r3, 0x54(r3) /* 800362D4 00031F34 4E 80 00 20 */ blr lbl_800362D8: /* 800362D8 00031F38 A0 63 00 56 */ lhz r3, 0x56(r3) /* 800362DC 00031F3C 4E 80 00 20 */ blr lbl_800362E0: /* 800362E0 00031F40 A0 63 00 60 */ lhz r3, 0x60(r3) /* 800362E4 00031F44 4E 80 00 20 */ blr lbl_800362E8: /* 800362E8 00031F48 88 63 00 62 */ lbz r3, 0x62(r3) /* 800362EC 00031F4C 4E 80 00 20 */ blr lbl_800362F0: /* 800362F0 00031F50 88 63 00 63 */ lbz r3, 0x63(r3) /* 800362F4 00031F54 4E 80 00 20 */ blr lbl_800362F8: /* 800362F8 00031F58 38 60 00 00 */ li r3, 0 /* 800362FC 00031F5C 4E 80 00 20 */ blr lbl_80036300: /* 80036300 00031F60 38 60 00 00 */ li r3, 0 /* 80036304 00031F64 4E 80 00 20 */ blr .global func_80036308 func_80036308: /* 80036308 00031F68 2C 04 00 00 */ cmpwi r4, 0 /* 8003630C 00031F6C 4D 80 00 20 */ bltlr /* 80036310 00031F70 2C 04 00 04 */ cmpwi r4, 4 /* 80036314 00031F74 41 80 00 08 */ blt lbl_8003631C /* 80036318 00031F78 4E 80 00 20 */ blr lbl_8003631C: /* 8003631C 00031F7C 1C 04 00 38 */ mulli r0, r4, 0x38 /* 80036320 00031F80 80 63 09 70 */ lwz r3, 0x970(r3) /* 80036324 00031F84 28 05 00 19 */ cmplwi r5, 0x19 /* 80036328 00031F88 7C 83 02 14 */ add r4, r3, r0 /* 8003632C 00031F8C 4D 81 00 20 */ bgtlr /* 80036330 00031F90 3C 60 80 41 */ lis r3, lbl_8040A298@ha /* 80036334 00031F94 54 A0 10 3A */ slwi r0, r5, 2 /* 80036338 00031F98 38 63 A2 98 */ addi r3, r3, lbl_8040A298@l /* 8003633C 00031F9C 7C 63 00 2E */ lwzx r3, r3, r0 /* 80036340 00031FA0 7C 69 03 A6 */ mtctr r3 /* 80036344 00031FA4 4E 80 04 20 */ bctr /* 80036348 00031FA8 98 C4 00 2C */ stb r6, 0x2c(r4) /* 8003634C 00031FAC 4E 80 00 20 */ blr /* 80036350 00031FB0 98 C4 00 2D */ stb r6, 0x2d(r4) /* 80036354 00031FB4 4E 80 00 20 */ blr /* 80036358 00031FB8 B0 C4 00 2E */ sth r6, 0x2e(r4) /* 8003635C 00031FBC 4E 80 00 20 */ blr /* 80036360 00031FC0 B0 C4 00 30 */ sth r6, 0x30(r4) /* 80036364 00031FC4 4E 80 00 20 */ blr /* 80036368 00031FC8 B0 C4 00 32 */ sth r6, 0x32(r4) /* 8003636C 00031FCC 4E 80 00 20 */ blr /* 80036370 00031FD0 98 C4 00 34 */ stb r6, 0x34(r4) /* 80036374 00031FD4 4E 80 00 20 */ blr /* 80036378 00031FD8 98 C4 00 35 */ stb r6, 0x35(r4) /* 8003637C 00031FDC 4E 80 00 20 */ blr /* 80036380 00031FE0 98 C4 00 36 */ stb r6, 0x36(r4) /* 80036384 00031FE4 4E 80 00 20 */ blr /* 80036388 00031FE8 98 C4 00 37 */ stb r6, 0x37(r4) /* 8003638C 00031FEC 4E 80 00 20 */ blr /* 80036390 00031FF0 B0 C4 00 38 */ sth r6, 0x38(r4) /* 80036394 00031FF4 4E 80 00 20 */ blr /* 80036398 00031FF8 B0 C4 00 3A */ sth r6, 0x3a(r4) /* 8003639C 00031FFC 4E 80 00 20 */ blr /* 800363A0 00032000 B0 C4 00 3C */ sth r6, 0x3c(r4) /* 800363A4 00032004 4E 80 00 20 */ blr /* 800363A8 00032008 B0 C4 00 3E */ sth r6, 0x3e(r4) /* 800363AC 0003200C 4E 80 00 20 */ blr /* 800363B0 00032010 98 C4 00 40 */ stb r6, 0x40(r4) /* 800363B4 00032014 4E 80 00 20 */ blr /* 800363B8 00032018 98 C4 00 41 */ stb r6, 0x41(r4) /* 800363BC 0003201C 4E 80 00 20 */ blr /* 800363C0 00032020 98 C4 00 42 */ stb r6, 0x42(r4) /* 800363C4 00032024 4E 80 00 20 */ blr /* 800363C8 00032028 98 C4 00 43 */ stb r6, 0x43(r4) /* 800363CC 0003202C 4E 80 00 20 */ blr /* 800363D0 00032030 98 C4 00 44 */ stb r6, 0x44(r4) /* 800363D4 00032034 4E 80 00 20 */ blr /* 800363D8 00032038 98 C4 00 45 */ stb r6, 0x45(r4) /* 800363DC 0003203C 4E 80 00 20 */ blr /* 800363E0 00032040 98 C4 00 46 */ stb r6, 0x46(r4) /* 800363E4 00032044 4E 80 00 20 */ blr /* 800363E8 00032048 98 C4 00 47 */ stb r6, 0x47(r4) /* 800363EC 0003204C 4E 80 00 20 */ blr /* 800363F0 00032050 B0 C4 00 48 */ sth r6, 0x48(r4) /* 800363F4 00032054 4E 80 00 20 */ blr /* 800363F8 00032058 B0 C4 00 4A */ sth r6, 0x4a(r4) /* 800363FC 0003205C 4E 80 00 20 */ blr /* 80036400 00032060 B0 C4 00 54 */ sth r6, 0x54(r4) /* 80036404 00032064 4E 80 00 20 */ blr /* 80036408 00032068 B0 C4 00 56 */ sth r6, 0x56(r4) /* 8003640C 0003206C 4E 80 00 20 */ blr /* 80036410 00032070 B0 C4 00 60 */ sth r6, 0x60(r4) /* 80036414 00032074 4E 80 00 20 */ blr .global func_80036418 func_80036418: /* 80036418 00032078 2C 04 00 00 */ cmpwi r4, 0 /* 8003641C 0003207C 41 80 00 14 */ blt lbl_80036430 /* 80036420 00032080 80 C3 09 70 */ lwz r6, 0x970(r3) /* 80036424 00032084 88 06 00 25 */ lbz r0, 0x25(r6) /* 80036428 00032088 7C 04 00 00 */ cmpw r4, r0 /* 8003642C 0003208C 41 80 00 0C */ blt lbl_80036438 lbl_80036430: /* 80036430 00032090 38 60 00 00 */ li r3, 0 /* 80036434 00032094 4E 80 00 20 */ blr lbl_80036438: /* 80036438 00032098 1C 04 00 1C */ mulli r0, r4, 0x1c /* 8003643C 0003209C 80 63 09 6C */ lwz r3, 0x96c(r3) /* 80036440 000320A0 28 05 00 09 */ cmplwi r5, 9 /* 80036444 000320A4 7C 83 02 14 */ add r4, r3, r0 /* 80036448 000320A8 41 81 00 6C */ bgt lbl_800364B4 /* 8003644C 000320AC 3C 60 80 41 */ lis r3, lbl_8040A300@ha /* 80036450 000320B0 54 A0 10 3A */ slwi r0, r5, 2 /* 80036454 000320B4 38 63 A3 00 */ addi r3, r3, lbl_8040A300@l /* 80036458 000320B8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8003645C 000320BC 7C 69 03 A6 */ mtctr r3 /* 80036460 000320C0 4E 80 04 20 */ bctr /* 80036464 000320C4 88 64 00 00 */ lbz r3, 0(r4) /* 80036468 000320C8 4E 80 00 20 */ blr /* 8003646C 000320CC 88 64 00 01 */ lbz r3, 1(r4) /* 80036470 000320D0 4E 80 00 20 */ blr /* 80036474 000320D4 88 64 00 02 */ lbz r3, 2(r4) /* 80036478 000320D8 4E 80 00 20 */ blr /* 8003647C 000320DC 88 64 00 03 */ lbz r3, 3(r4) /* 80036480 000320E0 4E 80 00 20 */ blr /* 80036484 000320E4 A0 64 00 04 */ lhz r3, 4(r4) /* 80036488 000320E8 4E 80 00 20 */ blr /* 8003648C 000320EC A0 64 00 06 */ lhz r3, 6(r4) /* 80036490 000320F0 4E 80 00 20 */ blr /* 80036494 000320F4 A0 64 00 08 */ lhz r3, 8(r4) /* 80036498 000320F8 4E 80 00 20 */ blr /* 8003649C 000320FC A0 64 00 14 */ lhz r3, 0x14(r4) /* 800364A0 00032100 4E 80 00 20 */ blr /* 800364A4 00032104 A0 64 00 16 */ lhz r3, 0x16(r4) /* 800364A8 00032108 4E 80 00 20 */ blr /* 800364AC 0003210C A0 64 00 18 */ lhz r3, 0x18(r4) /* 800364B0 00032110 4E 80 00 20 */ blr lbl_800364B4: /* 800364B4 00032114 38 60 00 00 */ li r3, 0 /* 800364B8 00032118 4E 80 00 20 */ blr .global func_800364BC func_800364BC: /* 800364BC 0003211C 2C 04 00 00 */ cmpwi r4, 0 /* 800364C0 00032120 4D 80 00 20 */ bltlr /* 800364C4 00032124 80 E3 09 70 */ lwz r7, 0x970(r3) /* 800364C8 00032128 88 07 00 25 */ lbz r0, 0x25(r7) /* 800364CC 0003212C 7C 04 00 00 */ cmpw r4, r0 /* 800364D0 00032130 41 80 00 08 */ blt lbl_800364D8 /* 800364D4 00032134 4E 80 00 20 */ blr lbl_800364D8: /* 800364D8 00032138 1C 04 00 1C */ mulli r0, r4, 0x1c /* 800364DC 0003213C 80 63 09 6C */ lwz r3, 0x96c(r3) /* 800364E0 00032140 28 05 00 09 */ cmplwi r5, 9 /* 800364E4 00032144 7C 83 02 14 */ add r4, r3, r0 /* 800364E8 00032148 4D 81 00 20 */ bgtlr /* 800364EC 0003214C 3C 60 80 41 */ lis r3, lbl_8040A328@ha /* 800364F0 00032150 54 A0 10 3A */ slwi r0, r5, 2 /* 800364F4 00032154 38 63 A3 28 */ addi r3, r3, lbl_8040A328@l /* 800364F8 00032158 7C 63 00 2E */ lwzx r3, r3, r0 /* 800364FC 0003215C 7C 69 03 A6 */ mtctr r3 /* 80036500 00032160 4E 80 04 20 */ bctr /* 80036504 00032164 98 C4 00 00 */ stb r6, 0(r4) /* 80036508 00032168 4E 80 00 20 */ blr /* 8003650C 0003216C 98 C4 00 01 */ stb r6, 1(r4) /* 80036510 00032170 4E 80 00 20 */ blr /* 80036514 00032174 98 C4 00 02 */ stb r6, 2(r4) /* 80036518 00032178 4E 80 00 20 */ blr /* 8003651C 0003217C 98 C4 00 03 */ stb r6, 3(r4) /* 80036520 00032180 4E 80 00 20 */ blr /* 80036524 00032184 B0 C4 00 04 */ sth r6, 4(r4) /* 80036528 00032188 4E 80 00 20 */ blr /* 8003652C 0003218C B0 C4 00 06 */ sth r6, 6(r4) /* 80036530 00032190 4E 80 00 20 */ blr /* 80036534 00032194 B0 C4 00 08 */ sth r6, 8(r4) /* 80036538 00032198 4E 80 00 20 */ blr /* 8003653C 0003219C B0 C4 00 14 */ sth r6, 0x14(r4) /* 80036540 000321A0 4E 80 00 20 */ blr /* 80036544 000321A4 B0 C4 00 16 */ sth r6, 0x16(r4) /* 80036548 000321A8 4E 80 00 20 */ blr /* 8003654C 000321AC B0 C4 00 18 */ sth r6, 0x18(r4) /* 80036550 000321B0 4E 80 00 20 */ blr .global func_80036554 func_80036554: /* 80036554 000321B4 94 21 FF 70 */ stwu r1, -0x90(r1) /* 80036558 000321B8 7C 08 02 A6 */ mflr r0 /* 8003655C 000321BC 90 01 00 94 */ stw r0, 0x94(r1) /* 80036560 000321C0 39 61 00 90 */ addi r11, r1, 0x90 /* 80036564 000321C4 48 19 0B 91 */ bl __save_gpr /* 80036568 000321C8 90 A1 00 08 */ stw r5, 8(r1) /* 8003656C 000321CC 7C 70 1B 78 */ mr r16, r3 /* 80036570 000321D0 7C 8F 23 78 */ mr r15, r4 /* 80036574 000321D4 7C CE 33 78 */ mr r14, r6 /* 80036578 000321D8 38 61 00 0C */ addi r3, r1, 0xc /* 8003657C 000321DC 4B FF F7 35 */ bl func_80035CB0 /* 80036580 000321E0 48 00 F0 11 */ bl func_80045590 /* 80036584 000321E4 2C 03 00 00 */ cmpwi r3, 0 /* 80036588 000321E8 40 82 00 0C */ bne lbl_80036594 /* 8003658C 000321EC 38 60 00 00 */ li r3, 0 /* 80036590 000321F0 48 00 02 9C */ b lbl_8003682C lbl_80036594: /* 80036594 000321F4 7D E4 7B 78 */ mr r4, r15 /* 80036598 000321F8 38 A0 00 00 */ li r5, 0 /* 8003659C 000321FC 48 00 F5 65 */ bl func_80045B00 /* 800365A0 00032200 2C 0E 00 00 */ cmpwi r14, 0 /* 800365A4 00032204 41 82 00 F0 */ beq lbl_80036694 /* 800365A8 00032208 1C 0F 00 34 */ mulli r0, r15, 0x34 /* 800365AC 0003220C 7C 90 02 14 */ add r4, r16, r0 /* 800365B0 00032210 A1 E4 04 10 */ lhz r15, 0x410(r4) /* 800365B4 00032214 A2 04 04 12 */ lhz r16, 0x412(r4) /* 800365B8 00032218 8A 24 04 14 */ lbz r17, 0x414(r4) /* 800365BC 0003221C 8A 44 04 15 */ lbz r18, 0x415(r4) /* 800365C0 00032220 8A 64 04 16 */ lbz r19, 0x416(r4) /* 800365C4 00032224 8A 84 04 17 */ lbz r20, 0x417(r4) /* 800365C8 00032228 8A A4 04 18 */ lbz r21, 0x418(r4) /* 800365CC 0003222C 8A C4 04 19 */ lbz r22, 0x419(r4) /* 800365D0 00032230 A2 E4 04 1A */ lhz r23, 0x41a(r4) /* 800365D4 00032234 83 04 04 1C */ lwz r24, 0x41c(r4) /* 800365D8 00032238 8B 24 04 20 */ lbz r25, 0x420(r4) /* 800365DC 0003223C 8B 44 04 21 */ lbz r26, 0x421(r4) /* 800365E0 00032240 A3 64 04 22 */ lhz r27, 0x422(r4) /* 800365E4 00032244 A3 84 04 24 */ lhz r28, 0x424(r4) /* 800365E8 00032248 A3 A4 04 26 */ lhz r29, 0x426(r4) /* 800365EC 0003224C A3 C4 04 28 */ lhz r30, 0x428(r4) /* 800365F0 00032250 A3 E4 04 2A */ lhz r31, 0x42a(r4) /* 800365F4 00032254 A1 84 04 2C */ lhz r12, 0x42c(r4) /* 800365F8 00032258 A1 64 04 2E */ lhz r11, 0x42e(r4) /* 800365FC 0003225C A1 44 04 30 */ lhz r10, 0x430(r4) /* 80036600 00032260 A1 24 04 32 */ lhz r9, 0x432(r4) /* 80036604 00032264 A1 04 04 34 */ lhz r8, 0x434(r4) /* 80036608 00032268 A0 E4 04 36 */ lhz r7, 0x436(r4) /* 8003660C 0003226C A0 C4 04 38 */ lhz r6, 0x438(r4) /* 80036610 00032270 A0 A4 04 3A */ lhz r5, 0x43a(r4) /* 80036614 00032274 A0 04 04 3C */ lhz r0, 0x43c(r4) /* 80036618 00032278 A1 C4 04 3E */ lhz r14, 0x43e(r4) /* 8003661C 0003227C A0 84 04 40 */ lhz r4, 0x440(r4) /* 80036620 00032280 B1 E1 00 0C */ sth r15, 0xc(r1) /* 80036624 00032284 B2 01 00 0E */ sth r16, 0xe(r1) /* 80036628 00032288 9A 21 00 10 */ stb r17, 0x10(r1) /* 8003662C 0003228C 9A 41 00 11 */ stb r18, 0x11(r1) /* 80036630 00032290 9A 61 00 12 */ stb r19, 0x12(r1) /* 80036634 00032294 9A 81 00 13 */ stb r20, 0x13(r1) /* 80036638 00032298 9A A1 00 14 */ stb r21, 0x14(r1) /* 8003663C 0003229C 9A C1 00 15 */ stb r22, 0x15(r1) /* 80036640 000322A0 B2 E1 00 16 */ sth r23, 0x16(r1) /* 80036644 000322A4 93 01 00 18 */ stw r24, 0x18(r1) /* 80036648 000322A8 9B 21 00 1C */ stb r25, 0x1c(r1) /* 8003664C 000322AC 9B 41 00 1D */ stb r26, 0x1d(r1) /* 80036650 000322B0 B3 61 00 1E */ sth r27, 0x1e(r1) /* 80036654 000322B4 B3 81 00 20 */ sth r28, 0x20(r1) /* 80036658 000322B8 B3 A1 00 22 */ sth r29, 0x22(r1) /* 8003665C 000322BC B3 C1 00 24 */ sth r30, 0x24(r1) /* 80036660 000322C0 B3 E1 00 26 */ sth r31, 0x26(r1) /* 80036664 000322C4 B1 81 00 28 */ sth r12, 0x28(r1) /* 80036668 000322C8 B1 61 00 2A */ sth r11, 0x2a(r1) /* 8003666C 000322CC B1 41 00 2C */ sth r10, 0x2c(r1) /* 80036670 000322D0 B1 21 00 2E */ sth r9, 0x2e(r1) /* 80036674 000322D4 B1 01 00 30 */ sth r8, 0x30(r1) /* 80036678 000322D8 B0 E1 00 32 */ sth r7, 0x32(r1) /* 8003667C 000322DC B0 C1 00 34 */ sth r6, 0x34(r1) /* 80036680 000322E0 B0 A1 00 36 */ sth r5, 0x36(r1) /* 80036684 000322E4 B0 01 00 38 */ sth r0, 0x38(r1) /* 80036688 000322E8 B1 C1 00 3A */ sth r14, 0x3a(r1) /* 8003668C 000322EC B0 81 00 3C */ sth r4, 0x3c(r1) /* 80036690 000322F0 48 00 00 EC */ b lbl_8003677C lbl_80036694: /* 80036694 000322F4 1C 0F 00 34 */ mulli r0, r15, 0x34 /* 80036698 000322F8 7C 90 02 14 */ add r4, r16, r0 /* 8003669C 000322FC A3 C4 03 40 */ lhz r30, 0x340(r4) /* 800366A0 00032300 A3 A4 03 42 */ lhz r29, 0x342(r4) /* 800366A4 00032304 8B 84 03 44 */ lbz r28, 0x344(r4) /* 800366A8 00032308 8B 64 03 45 */ lbz r27, 0x345(r4) /* 800366AC 0003230C 8B 44 03 46 */ lbz r26, 0x346(r4) /* 800366B0 00032310 8B 24 03 47 */ lbz r25, 0x347(r4) /* 800366B4 00032314 8B 04 03 48 */ lbz r24, 0x348(r4) /* 800366B8 00032318 8A E4 03 49 */ lbz r23, 0x349(r4) /* 800366BC 0003231C A2 C4 03 4A */ lhz r22, 0x34a(r4) /* 800366C0 00032320 82 A4 03 4C */ lwz r21, 0x34c(r4) /* 800366C4 00032324 8A 84 03 50 */ lbz r20, 0x350(r4) /* 800366C8 00032328 8A 64 03 51 */ lbz r19, 0x351(r4) /* 800366CC 0003232C A2 44 03 52 */ lhz r18, 0x352(r4) /* 800366D0 00032330 A2 24 03 54 */ lhz r17, 0x354(r4) /* 800366D4 00032334 A2 04 03 56 */ lhz r16, 0x356(r4) /* 800366D8 00032338 A1 E4 03 58 */ lhz r15, 0x358(r4) /* 800366DC 0003233C A1 C4 03 5A */ lhz r14, 0x35a(r4) /* 800366E0 00032340 A1 84 03 5C */ lhz r12, 0x35c(r4) /* 800366E4 00032344 A1 64 03 5E */ lhz r11, 0x35e(r4) /* 800366E8 00032348 A1 44 03 60 */ lhz r10, 0x360(r4) /* 800366EC 0003234C A1 24 03 62 */ lhz r9, 0x362(r4) /* 800366F0 00032350 A1 04 03 64 */ lhz r8, 0x364(r4) /* 800366F4 00032354 A0 E4 03 66 */ lhz r7, 0x366(r4) /* 800366F8 00032358 A0 C4 03 68 */ lhz r6, 0x368(r4) /* 800366FC 0003235C A0 A4 03 6A */ lhz r5, 0x36a(r4) /* 80036700 00032360 A0 04 03 6C */ lhz r0, 0x36c(r4) /* 80036704 00032364 A3 E4 03 6E */ lhz r31, 0x36e(r4) /* 80036708 00032368 A0 84 03 70 */ lhz r4, 0x370(r4) /* 8003670C 0003236C B3 C1 00 0C */ sth r30, 0xc(r1) /* 80036710 00032370 B3 A1 00 0E */ sth r29, 0xe(r1) /* 80036714 00032374 9B 81 00 10 */ stb r28, 0x10(r1) /* 80036718 00032378 9B 61 00 11 */ stb r27, 0x11(r1) /* 8003671C 0003237C 9B 41 00 12 */ stb r26, 0x12(r1) /* 80036720 00032380 9B 21 00 13 */ stb r25, 0x13(r1) /* 80036724 00032384 9B 01 00 14 */ stb r24, 0x14(r1) /* 80036728 00032388 9A E1 00 15 */ stb r23, 0x15(r1) /* 8003672C 0003238C B2 C1 00 16 */ sth r22, 0x16(r1) /* 80036730 00032390 92 A1 00 18 */ stw r21, 0x18(r1) /* 80036734 00032394 9A 81 00 1C */ stb r20, 0x1c(r1) /* 80036738 00032398 9A 61 00 1D */ stb r19, 0x1d(r1) /* 8003673C 0003239C B2 41 00 1E */ sth r18, 0x1e(r1) /* 80036740 000323A0 B2 21 00 20 */ sth r17, 0x20(r1) /* 80036744 000323A4 B2 01 00 22 */ sth r16, 0x22(r1) /* 80036748 000323A8 B1 E1 00 24 */ sth r15, 0x24(r1) /* 8003674C 000323AC B1 C1 00 26 */ sth r14, 0x26(r1) /* 80036750 000323B0 B1 81 00 28 */ sth r12, 0x28(r1) /* 80036754 000323B4 B1 61 00 2A */ sth r11, 0x2a(r1) /* 80036758 000323B8 B1 41 00 2C */ sth r10, 0x2c(r1) /* 8003675C 000323BC B1 21 00 2E */ sth r9, 0x2e(r1) /* 80036760 000323C0 B1 01 00 30 */ sth r8, 0x30(r1) /* 80036764 000323C4 B0 E1 00 32 */ sth r7, 0x32(r1) /* 80036768 000323C8 B0 C1 00 34 */ sth r6, 0x34(r1) /* 8003676C 000323CC B0 A1 00 36 */ sth r5, 0x36(r1) /* 80036770 000323D0 B0 01 00 38 */ sth r0, 0x38(r1) /* 80036774 000323D4 B3 E1 00 3A */ sth r31, 0x3a(r1) /* 80036778 000323D8 B0 81 00 3C */ sth r4, 0x3c(r1) lbl_8003677C: /* 8003677C 000323DC 80 01 00 08 */ lwz r0, 8(r1) /* 80036780 000323E0 28 00 00 15 */ cmplwi r0, 0x15 /* 80036784 000323E4 41 81 00 A4 */ bgt lbl_80036828 /* 80036788 000323E8 3C 80 80 41 */ lis r4, lbl_8040A350@ha /* 8003678C 000323EC 54 00 10 3A */ slwi r0, r0, 2 /* 80036790 000323F0 38 84 A3 50 */ addi r4, r4, lbl_8040A350@l /* 80036794 000323F4 7C 84 00 2E */ lwzx r4, r4, r0 /* 80036798 000323F8 7C 89 03 A6 */ mtctr r4 /* 8003679C 000323FC 4E 80 04 20 */ bctr /* 800367A0 00032400 A0 61 00 0C */ lhz r3, 0xc(r1) /* 800367A4 00032404 48 00 00 88 */ b lbl_8003682C /* 800367A8 00032408 88 61 00 11 */ lbz r3, 0x11(r1) /* 800367AC 0003240C 48 00 00 80 */ b lbl_8003682C /* 800367B0 00032410 88 61 00 10 */ lbz r3, 0x10(r1) /* 800367B4 00032414 48 00 00 78 */ b lbl_8003682C /* 800367B8 00032418 A0 61 00 0E */ lhz r3, 0xe(r1) /* 800367BC 0003241C 48 00 00 70 */ b lbl_8003682C /* 800367C0 00032420 48 00 00 6C */ b lbl_8003682C /* 800367C4 00032424 80 61 00 18 */ lwz r3, 0x18(r1) /* 800367C8 00032428 48 00 00 64 */ b lbl_8003682C /* 800367CC 0003242C 88 61 00 14 */ lbz r3, 0x14(r1) /* 800367D0 00032430 48 00 00 5C */ b lbl_8003682C /* 800367D4 00032434 A0 01 00 0C */ lhz r0, 0xc(r1) /* 800367D8 00032438 2C 00 00 00 */ cmpwi r0, 0 /* 800367DC 0003243C 41 82 00 24 */ beq lbl_80036800 /* 800367E0 00032440 88 01 00 12 */ lbz r0, 0x12(r1) /* 800367E4 00032444 2C 00 00 00 */ cmpwi r0, 0 /* 800367E8 00032448 40 82 00 18 */ bne lbl_80036800 /* 800367EC 0003244C 2C 03 00 00 */ cmpwi r3, 0 /* 800367F0 00032450 41 82 00 10 */ beq lbl_80036800 /* 800367F4 00032454 80 03 00 00 */ lwz r0, 0(r3) /* 800367F8 00032458 54 00 01 CF */ rlwinm. r0, r0, 0, 7, 7 /* 800367FC 0003245C 41 82 00 0C */ beq lbl_80036808 lbl_80036800: /* 80036800 00032460 38 60 00 00 */ li r3, 0 /* 80036804 00032464 48 00 00 28 */ b lbl_8003682C lbl_80036808: /* 80036808 00032468 38 60 00 01 */ li r3, 1 /* 8003680C 0003246C 48 00 00 20 */ b lbl_8003682C /* 80036810 00032470 88 61 00 12 */ lbz r3, 0x12(r1) /* 80036814 00032474 48 00 00 18 */ b lbl_8003682C /* 80036818 00032478 A0 61 00 16 */ lhz r3, 0x16(r1) /* 8003681C 0003247C 48 00 00 10 */ b lbl_8003682C /* 80036820 00032480 88 61 00 15 */ lbz r3, 0x15(r1) /* 80036824 00032484 48 00 00 08 */ b lbl_8003682C lbl_80036828: /* 80036828 00032488 38 60 00 00 */ li r3, 0 lbl_8003682C: /* 8003682C 0003248C 39 61 00 90 */ addi r11, r1, 0x90 /* 80036830 00032490 48 19 09 11 */ bl __restore_gpr /* 80036834 00032494 80 01 00 94 */ lwz r0, 0x94(r1) /* 80036838 00032498 7C 08 03 A6 */ mtlr r0 /* 8003683C 0003249C 38 21 00 90 */ addi r1, r1, 0x90 /* 80036840 000324A0 4E 80 00 20 */ blr .global func_80036844 func_80036844: /* 80036844 000324A4 38 60 00 00 */ li r3, 0 /* 80036848 000324A8 4E 80 00 20 */ blr .global func_8003684C func_8003684C: /* 8003684C 000324AC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80036850 000324B0 7C 08 02 A6 */ mflr r0 /* 80036854 000324B4 C0 02 82 18 */ lfs f0, lbl_80640818-_SDA2_BASE_(r2) /* 80036858 000324B8 90 01 00 34 */ stw r0, 0x34(r1) /* 8003685C 000324BC 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80036860 000324C0 93 C1 00 28 */ stw r30, 0x28(r1) /* 80036864 000324C4 7C BE 2B 78 */ mr r30, r5 /* 80036868 000324C8 93 A1 00 24 */ stw r29, 0x24(r1) /* 8003686C 000324CC 7C 9D 23 78 */ mr r29, r4 /* 80036870 000324D0 93 81 00 20 */ stw r28, 0x20(r1) /* 80036874 000324D4 7C 7C 1B 78 */ mr r28, r3 /* 80036878 000324D8 D0 01 00 08 */ stfs f0, 8(r1) /* 8003687C 000324DC D0 01 00 0C */ stfs f0, 0xc(r1) /* 80036880 000324E0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80036884 000324E4 48 00 ED 0D */ bl func_80045590 /* 80036888 000324E8 7C 7F 1B 78 */ mr r31, r3 /* 8003688C 000324EC 38 80 00 00 */ li r4, 0 /* 80036890 000324F0 48 00 F4 6D */ bl func_80045CFC /* 80036894 000324F4 57 80 06 31 */ rlwinm. r0, r28, 0, 0x18, 0x18 /* 80036898 000324F8 40 82 00 6C */ bne lbl_80036904 /* 8003689C 000324FC 7F E3 FB 78 */ mr r3, r31 /* 800368A0 00032500 7F 84 E3 78 */ mr r4, r28 /* 800368A4 00032504 38 A1 00 14 */ addi r5, r1, 0x14 /* 800368A8 00032508 38 C1 00 0C */ addi r6, r1, 0xc /* 800368AC 0003250C 38 E0 00 01 */ li r7, 1 /* 800368B0 00032510 48 00 F3 69 */ bl func_80045C18 /* 800368B4 00032514 2C 03 00 00 */ cmpwi r3, 0 /* 800368B8 00032518 41 82 00 B0 */ beq lbl_80036968 /* 800368BC 0003251C 2C 1D 00 00 */ cmpwi r29, 0 /* 800368C0 00032520 41 82 00 1C */ beq lbl_800368DC /* 800368C4 00032524 C0 01 00 14 */ lfs f0, 0x14(r1) /* 800368C8 00032528 D0 1D 00 00 */ stfs f0, 0(r29) /* 800368CC 0003252C C0 01 00 18 */ lfs f0, 0x18(r1) /* 800368D0 00032530 D0 1D 00 04 */ stfs f0, 4(r29) /* 800368D4 00032534 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800368D8 00032538 D0 1D 00 08 */ stfs f0, 8(r29) lbl_800368DC: /* 800368DC 0003253C 2C 1E 00 00 */ cmpwi r30, 0 /* 800368E0 00032540 41 82 00 1C */ beq lbl_800368FC /* 800368E4 00032544 C0 01 00 08 */ lfs f0, 8(r1) /* 800368E8 00032548 D0 1E 00 00 */ stfs f0, 0(r30) /* 800368EC 0003254C C0 01 00 0C */ lfs f0, 0xc(r1) /* 800368F0 00032550 D0 1E 00 04 */ stfs f0, 4(r30) /* 800368F4 00032554 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800368F8 00032558 D0 1E 00 08 */ stfs f0, 8(r30) lbl_800368FC: /* 800368FC 0003255C 38 60 00 00 */ li r3, 0 /* 80036900 00032560 48 00 00 6C */ b lbl_8003696C lbl_80036904: /* 80036904 00032564 7F E3 FB 78 */ mr r3, r31 /* 80036908 00032568 57 84 07 BE */ clrlwi r4, r28, 0x1e /* 8003690C 0003256C 38 A1 00 14 */ addi r5, r1, 0x14 /* 80036910 00032570 38 C1 00 0C */ addi r6, r1, 0xc /* 80036914 00032574 48 00 F2 75 */ bl func_80045B88 /* 80036918 00032578 2C 03 00 00 */ cmpwi r3, 0 /* 8003691C 0003257C 41 82 00 4C */ beq lbl_80036968 /* 80036920 00032580 2C 1D 00 00 */ cmpwi r29, 0 /* 80036924 00032584 41 82 00 1C */ beq lbl_80036940 /* 80036928 00032588 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8003692C 0003258C D0 1D 00 00 */ stfs f0, 0(r29) /* 80036930 00032590 C0 01 00 18 */ lfs f0, 0x18(r1) /* 80036934 00032594 D0 1D 00 04 */ stfs f0, 4(r29) /* 80036938 00032598 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8003693C 0003259C D0 1D 00 08 */ stfs f0, 8(r29) lbl_80036940: /* 80036940 000325A0 2C 1E 00 00 */ cmpwi r30, 0 /* 80036944 000325A4 41 82 00 1C */ beq lbl_80036960 /* 80036948 000325A8 C0 01 00 08 */ lfs f0, 8(r1) /* 8003694C 000325AC D0 1E 00 00 */ stfs f0, 0(r30) /* 80036950 000325B0 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80036954 000325B4 D0 1E 00 04 */ stfs f0, 4(r30) /* 80036958 000325B8 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8003695C 000325BC D0 1E 00 08 */ stfs f0, 8(r30) lbl_80036960: /* 80036960 000325C0 38 60 00 00 */ li r3, 0 /* 80036964 000325C4 48 00 00 08 */ b lbl_8003696C lbl_80036968: /* 80036968 000325C8 38 60 00 00 */ li r3, 0 lbl_8003696C: /* 8003696C 000325CC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80036970 000325D0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80036974 000325D4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80036978 000325D8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8003697C 000325DC 83 81 00 20 */ lwz r28, 0x20(r1) /* 80036980 000325E0 7C 08 03 A6 */ mtlr r0 /* 80036984 000325E4 38 21 00 30 */ addi r1, r1, 0x30 /* 80036988 000325E8 4E 80 00 20 */ blr .global func_8003698C func_8003698C: /* 8003698C 000325EC 2C 04 00 80 */ cmpwi r4, 0x80 /* 80036990 000325F0 41 80 00 0C */ blt lbl_8003699C /* 80036994 000325F4 2C 04 00 84 */ cmpwi r4, 0x84 /* 80036998 000325F8 40 81 00 14 */ ble lbl_800369AC lbl_8003699C: /* 8003699C 000325FC 2C 04 00 00 */ cmpwi r4, 0 /* 800369A0 00032600 41 80 00 1C */ blt lbl_800369BC /* 800369A4 00032604 2C 04 00 04 */ cmpwi r4, 4 /* 800369A8 00032608 41 81 00 14 */ bgt lbl_800369BC lbl_800369AC: /* 800369AC 0003260C 54 80 17 3A */ rlwinm r0, r4, 2, 0x1c, 0x1d /* 800369B0 00032610 7C 63 02 14 */ add r3, r3, r0 /* 800369B4 00032614 80 63 00 18 */ lwz r3, 0x18(r3) /* 800369B8 00032618 4E 80 00 20 */ blr lbl_800369BC: /* 800369BC 0003261C 38 60 00 00 */ li r3, 0 /* 800369C0 00032620 4E 80 00 20 */ blr .global func_800369C4 func_800369C4: /* 800369C4 00032624 2C 04 00 80 */ cmpwi r4, 0x80 /* 800369C8 00032628 41 80 00 0C */ blt lbl_800369D4 /* 800369CC 0003262C 2C 04 00 84 */ cmpwi r4, 0x84 /* 800369D0 00032630 40 81 00 14 */ ble lbl_800369E4 lbl_800369D4: /* 800369D4 00032634 2C 04 00 00 */ cmpwi r4, 0 /* 800369D8 00032638 4D 80 00 20 */ bltlr /* 800369DC 0003263C 2C 04 00 04 */ cmpwi r4, 4 /* 800369E0 00032640 4D 81 00 20 */ bgtlr lbl_800369E4: /* 800369E4 00032644 54 80 17 3A */ rlwinm r0, r4, 2, 0x1c, 0x1d /* 800369E8 00032648 7C 63 02 14 */ add r3, r3, r0 /* 800369EC 0003264C 90 A3 00 18 */ stw r5, 0x18(r3) /* 800369F0 00032650 4E 80 00 20 */ blr .global func_800369F4 func_800369F4: /* 800369F4 00032654 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800369F8 00032658 7C 08 02 A6 */ mflr r0 /* 800369FC 0003265C 90 01 00 24 */ stw r0, 0x24(r1) /* 80036A00 00032660 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80036A04 00032664 7C DF 33 78 */ mr r31, r6 /* 80036A08 00032668 93 C1 00 18 */ stw r30, 0x18(r1) /* 80036A0C 0003266C 7C BE 2B 78 */ mr r30, r5 /* 80036A10 00032670 93 A1 00 14 */ stw r29, 0x14(r1) /* 80036A14 00032674 7C 9D 23 78 */ mr r29, r4 /* 80036A18 00032678 93 81 00 10 */ stw r28, 0x10(r1) /* 80036A1C 0003267C 7C 7C 1B 78 */ mr r28, r3 /* 80036A20 00032680 48 00 EB 71 */ bl func_80045590 /* 80036A24 00032684 2C 03 00 00 */ cmpwi r3, 0 /* 80036A28 00032688 41 82 00 C4 */ beq lbl_80036AEC /* 80036A2C 0003268C 7F A4 EB 78 */ mr r4, r29 /* 80036A30 00032690 38 A0 00 00 */ li r5, 0 /* 80036A34 00032694 48 00 F0 CD */ bl func_80045B00 /* 80036A38 00032698 28 1E 00 11 */ cmplwi r30, 0x11 /* 80036A3C 0003269C 41 81 00 B0 */ bgt lbl_80036AEC /* 80036A40 000326A0 3C 80 80 41 */ lis r4, lbl_8040A3A8@ha /* 80036A44 000326A4 57 C0 10 3A */ slwi r0, r30, 2 /* 80036A48 000326A8 38 84 A3 A8 */ addi r4, r4, lbl_8040A3A8@l /* 80036A4C 000326AC 7C 84 00 2E */ lwzx r4, r4, r0 /* 80036A50 000326B0 7C 89 03 A6 */ mtctr r4 /* 80036A54 000326B4 4E 80 04 20 */ bctr /* 80036A58 000326B8 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 80036A5C 000326BC 7C 7C 02 14 */ add r3, r28, r0 /* 80036A60 000326C0 B3 E3 03 40 */ sth r31, 0x340(r3) /* 80036A64 000326C4 48 00 00 88 */ b lbl_80036AEC /* 80036A68 000326C8 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 80036A6C 000326CC 7C 7C 02 14 */ add r3, r28, r0 /* 80036A70 000326D0 9B E3 03 45 */ stb r31, 0x345(r3) /* 80036A74 000326D4 48 00 00 78 */ b lbl_80036AEC /* 80036A78 000326D8 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 80036A7C 000326DC 7C 7F 00 D0 */ neg r3, r31 /* 80036A80 000326E0 7C 63 FB 78 */ or r3, r3, r31 /* 80036A84 000326E4 54 64 0F FE */ srwi r4, r3, 0x1f /* 80036A88 000326E8 7C 7C 02 14 */ add r3, r28, r0 /* 80036A8C 000326EC 98 83 03 44 */ stb r4, 0x344(r3) /* 80036A90 000326F0 48 00 00 5C */ b lbl_80036AEC /* 80036A94 000326F4 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 80036A98 000326F8 7C 7C 02 14 */ add r3, r28, r0 /* 80036A9C 000326FC B3 E3 03 42 */ sth r31, 0x342(r3) /* 80036AA0 00032700 48 00 00 4C */ b lbl_80036AEC /* 80036AA4 00032704 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 80036AA8 00032708 7C 7C 02 14 */ add r3, r28, r0 /* 80036AAC 0003270C 93 E3 03 4C */ stw r31, 0x34c(r3) /* 80036AB0 00032710 48 00 00 3C */ b lbl_80036AEC /* 80036AB4 00032714 1C 1D 00 34 */ mulli r0, r29, 0x34 /* 80036AB8 00032718 7F E4 00 34 */ cntlzw r4, r31 /* 80036ABC 0003271C 2C 1F 00 00 */ cmpwi r31, 0 /* 80036AC0 00032720 54 85 D9 7E */ srwi r5, r4, 5 /* 80036AC4 00032724 7C 9C 02 14 */ add r4, r28, r0 /* 80036AC8 00032728 98 A4 03 46 */ stb r5, 0x346(r4) /* 80036ACC 0003272C 40 82 00 14 */ bne lbl_80036AE0 /* 80036AD0 00032730 80 03 00 00 */ lwz r0, 0(r3) /* 80036AD4 00032734 64 00 01 00 */ oris r0, r0, 0x100 /* 80036AD8 00032738 90 03 00 00 */ stw r0, 0(r3) /* 80036ADC 0003273C 48 00 00 10 */ b lbl_80036AEC lbl_80036AE0: /* 80036AE0 00032740 80 03 00 00 */ lwz r0, 0(r3) /* 80036AE4 00032744 54 00 02 0C */ rlwinm r0, r0, 0, 8, 6 /* 80036AE8 00032748 90 03 00 00 */ stw r0, 0(r3) lbl_80036AEC: /* 80036AEC 0003274C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80036AF0 00032750 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80036AF4 00032754 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80036AF8 00032758 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80036AFC 0003275C 83 81 00 10 */ lwz r28, 0x10(r1) /* 80036B00 00032760 7C 08 03 A6 */ mtlr r0 /* 80036B04 00032764 38 21 00 20 */ addi r1, r1, 0x20 /* 80036B08 00032768 4E 80 00 20 */ blr .global func_80036B0C func_80036B0C: /* 80036B0C 0003276C 2C 04 00 00 */ cmpwi r4, 0 /* 80036B10 00032770 4D 80 00 20 */ bltlr /* 80036B14 00032774 2C 04 00 03 */ cmpwi r4, 3 /* 80036B18 00032778 40 81 00 08 */ ble lbl_80036B20 /* 80036B1C 0003277C 4E 80 00 20 */ blr lbl_80036B20: /* 80036B20 00032780 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036B24 00032784 A1 25 00 00 */ lhz r9, 0(r5) /* 80036B28 00032788 A1 05 00 02 */ lhz r8, 2(r5) /* 80036B2C 0003278C 88 E5 00 04 */ lbz r7, 4(r5) /* 80036B30 00032790 7C 63 02 14 */ add r3, r3, r0 /* 80036B34 00032794 88 C5 00 05 */ lbz r6, 5(r5) /* 80036B38 00032798 A0 03 03 40 */ lhz r0, 0x340(r3) /* 80036B3C 0003279C 88 85 00 06 */ lbz r4, 6(r5) /* 80036B40 000327A0 B0 03 04 10 */ sth r0, 0x410(r3) /* 80036B44 000327A4 88 05 00 07 */ lbz r0, 7(r5) /* 80036B48 000327A8 A1 43 03 42 */ lhz r10, 0x342(r3) /* 80036B4C 000327AC B1 43 04 12 */ sth r10, 0x412(r3) /* 80036B50 000327B0 89 43 03 44 */ lbz r10, 0x344(r3) /* 80036B54 000327B4 99 43 04 14 */ stb r10, 0x414(r3) /* 80036B58 000327B8 89 43 03 45 */ lbz r10, 0x345(r3) /* 80036B5C 000327BC 99 43 04 15 */ stb r10, 0x415(r3) /* 80036B60 000327C0 89 43 03 46 */ lbz r10, 0x346(r3) /* 80036B64 000327C4 99 43 04 16 */ stb r10, 0x416(r3) /* 80036B68 000327C8 89 43 03 47 */ lbz r10, 0x347(r3) /* 80036B6C 000327CC 99 43 04 17 */ stb r10, 0x417(r3) /* 80036B70 000327D0 89 43 03 48 */ lbz r10, 0x348(r3) /* 80036B74 000327D4 99 43 04 18 */ stb r10, 0x418(r3) /* 80036B78 000327D8 89 43 03 49 */ lbz r10, 0x349(r3) /* 80036B7C 000327DC 99 43 04 19 */ stb r10, 0x419(r3) /* 80036B80 000327E0 A1 43 03 4A */ lhz r10, 0x34a(r3) /* 80036B84 000327E4 B1 43 04 1A */ sth r10, 0x41a(r3) /* 80036B88 000327E8 81 43 03 4C */ lwz r10, 0x34c(r3) /* 80036B8C 000327EC 91 43 04 1C */ stw r10, 0x41c(r3) /* 80036B90 000327F0 89 43 03 50 */ lbz r10, 0x350(r3) /* 80036B94 000327F4 99 43 04 20 */ stb r10, 0x420(r3) /* 80036B98 000327F8 89 43 03 51 */ lbz r10, 0x351(r3) /* 80036B9C 000327FC 99 43 04 21 */ stb r10, 0x421(r3) /* 80036BA0 00032800 A1 63 03 52 */ lhz r11, 0x352(r3) /* 80036BA4 00032804 A1 43 03 54 */ lhz r10, 0x354(r3) /* 80036BA8 00032808 B1 63 04 22 */ sth r11, 0x422(r3) /* 80036BAC 0003280C B1 43 04 24 */ sth r10, 0x424(r3) /* 80036BB0 00032810 A1 63 03 56 */ lhz r11, 0x356(r3) /* 80036BB4 00032814 A1 43 03 58 */ lhz r10, 0x358(r3) /* 80036BB8 00032818 B1 63 04 26 */ sth r11, 0x426(r3) /* 80036BBC 0003281C B1 43 04 28 */ sth r10, 0x428(r3) /* 80036BC0 00032820 A1 63 03 5A */ lhz r11, 0x35a(r3) /* 80036BC4 00032824 A1 43 03 5C */ lhz r10, 0x35c(r3) /* 80036BC8 00032828 B1 63 04 2A */ sth r11, 0x42a(r3) /* 80036BCC 0003282C B1 43 04 2C */ sth r10, 0x42c(r3) /* 80036BD0 00032830 A1 63 03 5E */ lhz r11, 0x35e(r3) /* 80036BD4 00032834 A1 43 03 60 */ lhz r10, 0x360(r3) /* 80036BD8 00032838 B1 63 04 2E */ sth r11, 0x42e(r3) /* 80036BDC 0003283C B1 43 04 30 */ sth r10, 0x430(r3) /* 80036BE0 00032840 A1 63 03 62 */ lhz r11, 0x362(r3) /* 80036BE4 00032844 A1 43 03 64 */ lhz r10, 0x364(r3) /* 80036BE8 00032848 B1 63 04 32 */ sth r11, 0x432(r3) /* 80036BEC 0003284C B1 43 04 34 */ sth r10, 0x434(r3) /* 80036BF0 00032850 A1 63 03 66 */ lhz r11, 0x366(r3) /* 80036BF4 00032854 A1 43 03 68 */ lhz r10, 0x368(r3) /* 80036BF8 00032858 B1 63 04 36 */ sth r11, 0x436(r3) /* 80036BFC 0003285C B1 43 04 38 */ sth r10, 0x438(r3) /* 80036C00 00032860 A1 63 03 6A */ lhz r11, 0x36a(r3) /* 80036C04 00032864 A1 43 03 6C */ lhz r10, 0x36c(r3) /* 80036C08 00032868 B1 63 04 3A */ sth r11, 0x43a(r3) /* 80036C0C 0003286C B1 43 04 3C */ sth r10, 0x43c(r3) /* 80036C10 00032870 A1 63 03 6E */ lhz r11, 0x36e(r3) /* 80036C14 00032874 A1 43 03 70 */ lhz r10, 0x370(r3) /* 80036C18 00032878 B1 63 04 3E */ sth r11, 0x43e(r3) /* 80036C1C 0003287C B1 43 04 40 */ sth r10, 0x440(r3) /* 80036C20 00032880 B1 23 03 40 */ sth r9, 0x340(r3) /* 80036C24 00032884 B1 03 03 42 */ sth r8, 0x342(r3) /* 80036C28 00032888 98 E3 03 44 */ stb r7, 0x344(r3) /* 80036C2C 0003288C 98 C3 03 45 */ stb r6, 0x345(r3) /* 80036C30 00032890 98 83 03 46 */ stb r4, 0x346(r3) /* 80036C34 00032894 98 03 03 47 */ stb r0, 0x347(r3) /* 80036C38 00032898 88 85 00 08 */ lbz r4, 8(r5) /* 80036C3C 0003289C 88 05 00 09 */ lbz r0, 9(r5) /* 80036C40 000328A0 98 83 03 48 */ stb r4, 0x348(r3) /* 80036C44 000328A4 A0 85 00 0A */ lhz r4, 0xa(r5) /* 80036C48 000328A8 98 03 03 49 */ stb r0, 0x349(r3) /* 80036C4C 000328AC 80 05 00 0C */ lwz r0, 0xc(r5) /* 80036C50 000328B0 B0 83 03 4A */ sth r4, 0x34a(r3) /* 80036C54 000328B4 88 85 00 10 */ lbz r4, 0x10(r5) /* 80036C58 000328B8 90 03 03 4C */ stw r0, 0x34c(r3) /* 80036C5C 000328BC 88 05 00 11 */ lbz r0, 0x11(r5) /* 80036C60 000328C0 98 83 03 50 */ stb r4, 0x350(r3) /* 80036C64 000328C4 A0 85 00 12 */ lhz r4, 0x12(r5) /* 80036C68 000328C8 98 03 03 51 */ stb r0, 0x351(r3) /* 80036C6C 000328CC A0 05 00 14 */ lhz r0, 0x14(r5) /* 80036C70 000328D0 B0 83 03 52 */ sth r4, 0x352(r3) /* 80036C74 000328D4 A0 85 00 16 */ lhz r4, 0x16(r5) /* 80036C78 000328D8 B0 03 03 54 */ sth r0, 0x354(r3) /* 80036C7C 000328DC A0 05 00 18 */ lhz r0, 0x18(r5) /* 80036C80 000328E0 B0 83 03 56 */ sth r4, 0x356(r3) /* 80036C84 000328E4 A0 85 00 1A */ lhz r4, 0x1a(r5) /* 80036C88 000328E8 B0 03 03 58 */ sth r0, 0x358(r3) /* 80036C8C 000328EC A0 05 00 1C */ lhz r0, 0x1c(r5) /* 80036C90 000328F0 B0 83 03 5A */ sth r4, 0x35a(r3) /* 80036C94 000328F4 A0 85 00 1E */ lhz r4, 0x1e(r5) /* 80036C98 000328F8 B0 03 03 5C */ sth r0, 0x35c(r3) /* 80036C9C 000328FC A0 05 00 20 */ lhz r0, 0x20(r5) /* 80036CA0 00032900 B0 83 03 5E */ sth r4, 0x35e(r3) /* 80036CA4 00032904 A0 85 00 22 */ lhz r4, 0x22(r5) /* 80036CA8 00032908 B0 03 03 60 */ sth r0, 0x360(r3) /* 80036CAC 0003290C A0 05 00 24 */ lhz r0, 0x24(r5) /* 80036CB0 00032910 B0 83 03 62 */ sth r4, 0x362(r3) /* 80036CB4 00032914 A0 85 00 26 */ lhz r4, 0x26(r5) /* 80036CB8 00032918 B0 03 03 64 */ sth r0, 0x364(r3) /* 80036CBC 0003291C A0 05 00 28 */ lhz r0, 0x28(r5) /* 80036CC0 00032920 B0 83 03 66 */ sth r4, 0x366(r3) /* 80036CC4 00032924 A0 85 00 2A */ lhz r4, 0x2a(r5) /* 80036CC8 00032928 B0 03 03 68 */ sth r0, 0x368(r3) /* 80036CCC 0003292C A0 05 00 2C */ lhz r0, 0x2c(r5) /* 80036CD0 00032930 B0 83 03 6A */ sth r4, 0x36a(r3) /* 80036CD4 00032934 A0 85 00 2E */ lhz r4, 0x2e(r5) /* 80036CD8 00032938 B0 03 03 6C */ sth r0, 0x36c(r3) /* 80036CDC 0003293C A0 05 00 30 */ lhz r0, 0x30(r5) /* 80036CE0 00032940 B0 83 03 6E */ sth r4, 0x36e(r3) /* 80036CE4 00032944 B0 03 03 70 */ sth r0, 0x370(r3) /* 80036CE8 00032948 4E 80 00 20 */ blr .global func_80036CEC func_80036CEC: /* 80036CEC 0003294C 2C 04 00 00 */ cmpwi r4, 0 /* 80036CF0 00032950 4D 80 00 20 */ bltlr /* 80036CF4 00032954 2C 04 00 03 */ cmpwi r4, 3 /* 80036CF8 00032958 40 81 00 08 */ ble lbl_80036D00 /* 80036CFC 0003295C 4E 80 00 20 */ blr lbl_80036D00: /* 80036D00 00032960 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036D04 00032964 38 80 00 01 */ li r4, 1 /* 80036D08 00032968 7C 63 02 14 */ add r3, r3, r0 /* 80036D0C 0003296C 98 83 03 47 */ stb r4, 0x347(r3) /* 80036D10 00032970 4E 80 00 20 */ blr .global func_80036D14 func_80036D14: /* 80036D14 00032974 2C 04 00 00 */ cmpwi r4, 0 /* 80036D18 00032978 41 80 00 0C */ blt lbl_80036D24 /* 80036D1C 0003297C 2C 04 00 03 */ cmpwi r4, 3 /* 80036D20 00032980 40 81 00 0C */ ble lbl_80036D2C lbl_80036D24: /* 80036D24 00032984 38 60 00 00 */ li r3, 0 /* 80036D28 00032988 4E 80 00 20 */ blr lbl_80036D2C: /* 80036D2C 0003298C 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036D30 00032990 7C 63 02 14 */ add r3, r3, r0 /* 80036D34 00032994 38 63 03 40 */ addi r3, r3, 0x340 /* 80036D38 00032998 4E 80 00 20 */ blr .global func_80036D3C func_80036D3C: /* 80036D3C 0003299C 2C 04 00 00 */ cmpwi r4, 0 /* 80036D40 000329A0 41 80 00 0C */ blt lbl_80036D4C /* 80036D44 000329A4 2C 04 00 03 */ cmpwi r4, 3 /* 80036D48 000329A8 40 81 00 0C */ ble lbl_80036D54 lbl_80036D4C: /* 80036D4C 000329AC 38 60 00 00 */ li r3, 0 /* 80036D50 000329B0 4E 80 00 20 */ blr lbl_80036D54: /* 80036D54 000329B4 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036D58 000329B8 7C 63 02 14 */ add r3, r3, r0 /* 80036D5C 000329BC 88 03 03 47 */ lbz r0, 0x347(r3) /* 80036D60 000329C0 2C 00 00 00 */ cmpwi r0, 0 /* 80036D64 000329C4 41 82 00 0C */ beq lbl_80036D70 /* 80036D68 000329C8 38 63 03 40 */ addi r3, r3, 0x340 /* 80036D6C 000329CC 4E 80 00 20 */ blr lbl_80036D70: /* 80036D70 000329D0 38 63 04 10 */ addi r3, r3, 0x410 /* 80036D74 000329D4 4E 80 00 20 */ blr .global func_80036D78 func_80036D78: /* 80036D78 000329D8 2C 04 00 00 */ cmpwi r4, 0 /* 80036D7C 000329DC 41 80 00 0C */ blt lbl_80036D88 /* 80036D80 000329E0 2C 04 00 03 */ cmpwi r4, 3 /* 80036D84 000329E4 40 81 00 0C */ ble lbl_80036D90 lbl_80036D88: /* 80036D88 000329E8 38 60 00 00 */ li r3, 0 /* 80036D8C 000329EC 4E 80 00 20 */ blr lbl_80036D90: /* 80036D90 000329F0 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036D94 000329F4 7C 63 02 14 */ add r3, r3, r0 /* 80036D98 000329F8 38 63 04 10 */ addi r3, r3, 0x410 /* 80036D9C 000329FC 4E 80 00 20 */ blr .global func_80036DA0 func_80036DA0: /* 80036DA0 00032A00 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80036DA4 00032A04 7C 08 02 A6 */ mflr r0 /* 80036DA8 00032A08 2C 04 00 00 */ cmpwi r4, 0 /* 80036DAC 00032A0C 90 01 00 14 */ stw r0, 0x14(r1) /* 80036DB0 00032A10 93 E1 00 0C */ stw r31, 0xc(r1) /* 80036DB4 00032A14 7C 9F 23 78 */ mr r31, r4 /* 80036DB8 00032A18 41 80 00 28 */ blt lbl_80036DE0 /* 80036DBC 00032A1C 2C 04 00 03 */ cmpwi r4, 3 /* 80036DC0 00032A20 41 81 00 20 */ bgt lbl_80036DE0 /* 80036DC4 00032A24 38 A0 00 0F */ li r5, 0xf /* 80036DC8 00032A28 38 C0 00 00 */ li r6, 0 /* 80036DCC 00032A2C 4B FF F7 89 */ bl func_80036554 /* 80036DD0 00032A30 7C 03 00 D0 */ neg r0, r3 /* 80036DD4 00032A34 7C 00 1B 78 */ or r0, r0, r3 /* 80036DD8 00032A38 54 03 0F FE */ srwi r3, r0, 0x1f /* 80036DDC 00032A3C 48 00 00 7C */ b lbl_80036E58 lbl_80036DE0: /* 80036DE0 00032A40 2C 04 00 80 */ cmpwi r4, 0x80 /* 80036DE4 00032A44 41 80 00 68 */ blt lbl_80036E4C /* 80036DE8 00032A48 2C 04 00 83 */ cmpwi r4, 0x83 /* 80036DEC 00032A4C 41 81 00 60 */ bgt lbl_80036E4C /* 80036DF0 00032A50 4B FF F0 79 */ bl func_80035E68 /* 80036DF4 00032A54 2C 03 00 00 */ cmpwi r3, 0 /* 80036DF8 00032A58 40 82 00 0C */ bne lbl_80036E04 /* 80036DFC 00032A5C 38 60 00 00 */ li r3, 0 /* 80036E00 00032A60 48 00 00 58 */ b lbl_80036E58 lbl_80036E04: /* 80036E04 00032A64 2C 03 00 01 */ cmpwi r3, 1 /* 80036E08 00032A68 40 82 00 14 */ bne lbl_80036E1C /* 80036E0C 00032A6C 38 1F FF 80 */ addi r0, r31, -128 /* 80036E10 00032A70 7C 00 00 34 */ cntlzw r0, r0 /* 80036E14 00032A74 54 03 D9 7E */ srwi r3, r0, 5 /* 80036E18 00032A78 48 00 00 40 */ b lbl_80036E58 lbl_80036E1C: /* 80036E1C 00032A7C 2C 03 00 02 */ cmpwi r3, 2 /* 80036E20 00032A80 40 82 00 1C */ bne lbl_80036E3C /* 80036E24 00032A84 38 00 00 81 */ li r0, 0x81 /* 80036E28 00032A88 57 E3 0F FE */ srwi r3, r31, 0x1f /* 80036E2C 00032A8C 7C 04 FE 70 */ srawi r4, r0, 0x1f /* 80036E30 00032A90 7C 1F 00 10 */ subfc r0, r31, r0 /* 80036E34 00032A94 7C 64 19 14 */ adde r3, r4, r3 /* 80036E38 00032A98 48 00 00 20 */ b lbl_80036E58 lbl_80036E3C: /* 80036E3C 00032A9C 2C 03 00 03 */ cmpwi r3, 3 /* 80036E40 00032AA0 40 82 00 0C */ bne lbl_80036E4C /* 80036E44 00032AA4 38 60 00 01 */ li r3, 1 /* 80036E48 00032AA8 48 00 00 10 */ b lbl_80036E58 lbl_80036E4C: /* 80036E4C 00032AAC 38 03 FF 00 */ addi r0, r3, -256 /* 80036E50 00032AB0 7C 00 00 34 */ cntlzw r0, r0 /* 80036E54 00032AB4 54 03 D9 7E */ srwi r3, r0, 5 lbl_80036E58: /* 80036E58 00032AB8 80 01 00 14 */ lwz r0, 0x14(r1) /* 80036E5C 00032ABC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80036E60 00032AC0 7C 08 03 A6 */ mtlr r0 /* 80036E64 00032AC4 38 21 00 10 */ addi r1, r1, 0x10 /* 80036E68 00032AC8 4E 80 00 20 */ blr .global func_80036E6C func_80036E6C: /* 80036E6C 00032ACC 28 05 00 01 */ cmplwi r5, 1 /* 80036E70 00032AD0 40 82 00 14 */ bne lbl_80036E84 /* 80036E74 00032AD4 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036E78 00032AD8 7C 63 02 14 */ add r3, r3, r0 /* 80036E7C 00032ADC 88 63 04 20 */ lbz r3, 0x420(r3) /* 80036E80 00032AE0 4E 80 00 20 */ blr lbl_80036E84: /* 80036E84 00032AE4 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036E88 00032AE8 7C 63 02 14 */ add r3, r3, r0 /* 80036E8C 00032AEC 88 63 03 50 */ lbz r3, 0x350(r3) /* 80036E90 00032AF0 4E 80 00 20 */ blr .global func_80036E94 func_80036E94: /* 80036E94 00032AF4 28 05 00 01 */ cmplwi r5, 1 /* 80036E98 00032AF8 40 82 00 14 */ bne lbl_80036EAC /* 80036E9C 00032AFC 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036EA0 00032B00 7C 63 02 14 */ add r3, r3, r0 /* 80036EA4 00032B04 88 63 04 21 */ lbz r3, 0x421(r3) /* 80036EA8 00032B08 4E 80 00 20 */ blr lbl_80036EAC: /* 80036EAC 00032B0C 1C 04 00 34 */ mulli r0, r4, 0x34 /* 80036EB0 00032B10 7C 63 02 14 */ add r3, r3, r0 /* 80036EB4 00032B14 88 63 03 51 */ lbz r3, 0x351(r3) /* 80036EB8 00032B18 4E 80 00 20 */ blr .global func_80036EBC func_80036EBC: /* 80036EBC 00032B1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80036EC0 00032B20 7C 08 02 A6 */ mflr r0 /* 80036EC4 00032B24 38 80 00 00 */ li r4, 0 /* 80036EC8 00032B28 38 A0 09 74 */ li r5, 0x974 /* 80036ECC 00032B2C 90 01 00 14 */ stw r0, 0x14(r1) /* 80036ED0 00032B30 93 E1 00 0C */ stw r31, 0xc(r1) /* 80036ED4 00032B34 7C 7F 1B 78 */ mr r31, r3 /* 80036ED8 00032B38 4B FC D2 2D */ bl memset /* 80036EDC 00032B3C 38 A0 00 00 */ li r5, 0 /* 80036EE0 00032B40 38 80 FF FF */ li r4, -1 /* 80036EE4 00032B44 38 7F 08 60 */ addi r3, r31, 0x860 /* 80036EE8 00032B48 38 1F 04 E0 */ addi r0, r31, 0x4e0 /* 80036EEC 00032B4C 90 BF 00 00 */ stw r5, 0(r31) /* 80036EF0 00032B50 90 9F 00 04 */ stw r4, 4(r31) /* 80036EF4 00032B54 90 9F 00 08 */ stw r4, 8(r31) /* 80036EF8 00032B58 90 BF 00 0C */ stw r5, 0xc(r31) /* 80036EFC 00032B5C 90 7F 09 70 */ stw r3, 0x970(r31) /* 80036F00 00032B60 90 1F 09 6C */ stw r0, 0x96c(r31) /* 80036F04 00032B64 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80036F08 00032B68 80 01 00 14 */ lwz r0, 0x14(r1) /* 80036F0C 00032B6C 7C 08 03 A6 */ mtlr r0 /* 80036F10 00032B70 38 21 00 10 */ addi r1, r1, 0x10 /* 80036F14 00032B74 4E 80 00 20 */ blr .global func_80036F18 func_80036F18: /* 80036F18 00032B78 88 63 03 30 */ lbz r3, 0x330(r3) /* 80036F1C 00032B7C 4E 80 00 20 */ blr .global func_80036F20 func_80036F20: /* 80036F20 00032B80 98 83 03 30 */ stb r4, 0x330(r3) /* 80036F24 00032B84 4E 80 00 20 */ blr .global func_80036F28 func_80036F28: /* 80036F28 00032B88 2C 05 00 00 */ cmpwi r5, 0 /* 80036F2C 00032B8C 41 82 00 14 */ beq lbl_80036F40 /* 80036F30 00032B90 80 03 03 34 */ lwz r0, 0x334(r3) /* 80036F34 00032B94 7C 00 23 78 */ or r0, r0, r4 /* 80036F38 00032B98 90 03 03 34 */ stw r0, 0x334(r3) /* 80036F3C 00032B9C 4E 80 00 20 */ blr lbl_80036F40: /* 80036F40 00032BA0 80 03 03 34 */ lwz r0, 0x334(r3) /* 80036F44 00032BA4 7C 00 20 78 */ andc r0, r0, r4 /* 80036F48 00032BA8 90 03 03 34 */ stw r0, 0x334(r3) /* 80036F4C 00032BAC 4E 80 00 20 */ blr .global func_80036F50 func_80036F50: /* 80036F50 00032BB0 80 03 03 34 */ lwz r0, 0x334(r3) /* 80036F54 00032BB4 7C 03 20 38 */ and r3, r0, r4 /* 80036F58 00032BB8 7C 03 00 D0 */ neg r0, r3 /* 80036F5C 00032BBC 7C 00 1B 78 */ or r0, r0, r3 /* 80036F60 00032BC0 54 03 0F FE */ srwi r3, r0, 0x1f /* 80036F64 00032BC4 4E 80 00 20 */ blr .global func_80036F68 func_80036F68: /* 80036F68 00032BC8 38 A0 00 01 */ li r5, 1 /* 80036F6C 00032BCC 38 6D 97 A0 */ addi r3, r13, lbl_8063EA60-_SDA_BASE_ /* 80036F70 00032BD0 38 80 00 04 */ li r4, 4 /* 80036F74 00032BD4 38 00 00 00 */ li r0, 0 /* 80036F78 00032BD8 98 AD 97 A0 */ stb r5, lbl_8063EA60-_SDA_BASE_(r13) /* 80036F7C 00032BDC B0 83 00 02 */ sth r4, 2(r3) /* 80036F80 00032BE0 98 03 00 04 */ stb r0, 4(r3) /* 80036F84 00032BE4 4E 80 00 20 */ blr .global func_80036F88 func_80036F88: /* 80036F88 00032BE8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80036F8C 00032BEC 7C 08 02 A6 */ mflr r0 /* 80036F90 00032BF0 90 01 00 14 */ stw r0, 0x14(r1) /* 80036F94 00032BF4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80036F98 00032BF8 7C 9F 23 78 */ mr r31, r4 /* 80036F9C 00032BFC 93 C1 00 08 */ stw r30, 8(r1) /* 80036FA0 00032C00 7C 7E 1B 78 */ mr r30, r3 /* 80036FA4 00032C04 48 1A 45 19 */ bl func_801DB4BC /* 80036FA8 00032C08 2C 03 00 00 */ cmpwi r3, 0 /* 80036FAC 00032C0C 40 82 00 30 */ bne lbl_80036FDC /* 80036FB0 00032C10 7F C3 F3 78 */ mr r3, r30 /* 80036FB4 00032C14 7F E4 FB 78 */ mr r4, r31 /* 80036FB8 00032C18 48 21 28 65 */ bl func_8024981C /* 80036FBC 00032C1C 48 00 00 0C */ b lbl_80036FC8 lbl_80036FC0: /* 80036FC0 00032C20 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80036FC4 00032C24 48 1E D5 C5 */ bl func_80224588 lbl_80036FC8: /* 80036FC8 00032C28 7F C3 F3 78 */ mr r3, r30 /* 80036FCC 00032C2C 7F E4 FB 78 */ mr r4, r31 /* 80036FD0 00032C30 48 1A 44 ED */ bl func_801DB4BC /* 80036FD4 00032C34 2C 03 00 00 */ cmpwi r3, 0 /* 80036FD8 00032C38 41 82 FF E8 */ beq lbl_80036FC0 lbl_80036FDC: /* 80036FDC 00032C3C 7F C3 F3 78 */ mr r3, r30 /* 80036FE0 00032C40 7F E4 FB 78 */ mr r4, r31 /* 80036FE4 00032C44 48 1A 45 19 */ bl func_801DB4FC /* 80036FE8 00032C48 80 01 00 14 */ lwz r0, 0x14(r1) /* 80036FEC 00032C4C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80036FF0 00032C50 83 C1 00 08 */ lwz r30, 8(r1) /* 80036FF4 00032C54 7C 08 03 A6 */ mtlr r0 /* 80036FF8 00032C58 38 21 00 10 */ addi r1, r1, 0x10 /* 80036FFC 00032C5C 4E 80 00 20 */ blr .global func_80037000 func_80037000: /* 80037000 00032C60 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80037004 00032C64 7C 08 02 A6 */ mflr r0 /* 80037008 00032C68 90 01 00 34 */ stw r0, 0x34(r1) /* 8003700C 00032C6C DB E1 00 20 */ stfd f31, 0x20(r1) /* 80037010 00032C70 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80037014 00032C74 C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) /* 80037018 00032C78 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003701C 00032C7C 3B E0 00 00 */ li r31, 0 /* 80037020 00032C80 93 C1 00 18 */ stw r30, 0x18(r1) /* 80037024 00032C84 93 A1 00 14 */ stw r29, 0x14(r1) /* 80037028 00032C88 3B A0 00 00 */ li r29, 0 /* 8003702C 00032C8C 93 81 00 10 */ stw r28, 0x10(r1) /* 80037030 00032C90 7C 7C 1B 78 */ mr r28, r3 /* 80037034 00032C94 7F 9E E3 78 */ mr r30, r28 /* 80037038 00032C98 93 E3 00 00 */ stw r31, 0(r3) lbl_8003703C: /* 8003703C 00032C9C 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80037040 00032CA0 2C 03 00 00 */ cmpwi r3, 0 /* 80037044 00032CA4 41 82 00 4C */ beq lbl_80037090 /* 80037048 00032CA8 80 03 01 04 */ lwz r0, 0x104(r3) /* 8003704C 00032CAC 60 00 00 04 */ ori r0, r0, 4 /* 80037050 00032CB0 90 03 01 04 */ stw r0, 0x104(r3) /* 80037054 00032CB4 D3 E3 01 10 */ stfs f31, 0x110(r3) /* 80037058 00032CB8 80 9E 00 0C */ lwz r4, 0xc(r30) /* 8003705C 00032CBC 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 80037060 00032CC0 2C 03 00 00 */ cmpwi r3, 0 /* 80037064 00032CC4 41 82 00 08 */ beq lbl_8003706C /* 80037068 00032CC8 48 1B B1 C1 */ bl func_801F2228 lbl_8003706C: /* 8003706C 00032CCC 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80037070 00032CD0 2C 03 00 00 */ cmpwi r3, 0 /* 80037074 00032CD4 41 82 00 18 */ beq lbl_8003708C /* 80037078 00032CD8 81 83 01 00 */ lwz r12, 0x100(r3) /* 8003707C 00032CDC 38 80 00 01 */ li r4, 1 /* 80037080 00032CE0 81 8C 00 08 */ lwz r12, 8(r12) /* 80037084 00032CE4 7D 89 03 A6 */ mtctr r12 /* 80037088 00032CE8 4E 80 04 21 */ bctrl lbl_8003708C: /* 8003708C 00032CEC 93 FE 00 0C */ stw r31, 0xc(r30) lbl_80037090: /* 80037090 00032CF0 3B BD 00 01 */ addi r29, r29, 1 /* 80037094 00032CF4 3B DE 00 04 */ addi r30, r30, 4 /* 80037098 00032CF8 2C 1D 00 08 */ cmpwi r29, 8 /* 8003709C 00032CFC 41 80 FF A0 */ blt lbl_8003703C /* 800370A0 00032D00 80 7C 00 04 */ lwz r3, 4(r28) /* 800370A4 00032D04 2C 03 00 00 */ cmpwi r3, 0 /* 800370A8 00032D08 40 82 00 10 */ bne lbl_800370B8 /* 800370AC 00032D0C 80 1C 00 08 */ lwz r0, 8(r28) /* 800370B0 00032D10 2C 00 00 00 */ cmpwi r0, 0 /* 800370B4 00032D14 41 82 00 0C */ beq lbl_800370C0 lbl_800370B8: /* 800370B8 00032D18 80 9C 00 08 */ lwz r4, 8(r28) /* 800370BC 00032D1C 48 1A 44 8D */ bl func_801DB548 lbl_800370C0: /* 800370C0 00032D20 38 00 00 00 */ li r0, 0 /* 800370C4 00032D24 90 1C 00 04 */ stw r0, 4(r28) /* 800370C8 00032D28 90 1C 00 08 */ stw r0, 8(r28) /* 800370CC 00032D2C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800370D0 00032D30 CB E1 00 20 */ lfd f31, 0x20(r1) /* 800370D4 00032D34 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800370D8 00032D38 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800370DC 00032D3C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800370E0 00032D40 83 81 00 10 */ lwz r28, 0x10(r1) /* 800370E4 00032D44 80 01 00 34 */ lwz r0, 0x34(r1) /* 800370E8 00032D48 7C 08 03 A6 */ mtlr r0 /* 800370EC 00032D4C 38 21 00 30 */ addi r1, r1, 0x30 /* 800370F0 00032D50 4E 80 00 20 */ blr .global func_800370F4 func_800370F4: /* 800370F4 00032D54 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800370F8 00032D58 38 00 00 00 */ li r0, 0 /* 800370FC 00032D5C 98 03 00 00 */ stb r0, 0(r3) /* 80037100 00032D60 D0 03 00 04 */ stfs f0, 4(r3) /* 80037104 00032D64 D0 03 00 08 */ stfs f0, 8(r3) /* 80037108 00032D68 D0 03 00 0C */ stfs f0, 0xc(r3) /* 8003710C 00032D6C 90 03 00 10 */ stw r0, 0x10(r3) /* 80037110 00032D70 90 03 00 14 */ stw r0, 0x14(r3) /* 80037114 00032D74 90 03 00 18 */ stw r0, 0x18(r3) /* 80037118 00032D78 90 03 00 1C */ stw r0, 0x1c(r3) /* 8003711C 00032D7C 90 03 00 20 */ stw r0, 0x20(r3) /* 80037120 00032D80 90 03 00 24 */ stw r0, 0x24(r3) /* 80037124 00032D84 90 03 00 28 */ stw r0, 0x28(r3) /* 80037128 00032D88 4E 80 00 20 */ blr lbl_8003712C: /* 8003712C 00032D8C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80037130 00032D90 7C 08 02 A6 */ mflr r0 /* 80037134 00032D94 90 01 00 24 */ stw r0, 0x24(r1) /* 80037138 00032D98 39 61 00 20 */ addi r11, r1, 0x20 /* 8003713C 00032D9C 48 18 FF E9 */ bl _savegpr_26 /* 80037140 00032DA0 7C 7A 1B 78 */ mr r26, r3 /* 80037144 00032DA4 7C 9B 23 78 */ mr r27, r4 /* 80037148 00032DA8 48 01 66 C5 */ bl func_8004D80C /* 8003714C 00032DAC 2C 03 00 00 */ cmpwi r3, 0 /* 80037150 00032DB0 7C 7D 1B 78 */ mr r29, r3 /* 80037154 00032DB4 40 82 00 0C */ bne lbl_80037160 /* 80037158 00032DB8 38 60 00 00 */ li r3, 0 /* 8003715C 00032DBC 48 00 00 60 */ b lbl_800371BC lbl_80037160: /* 80037160 00032DC0 7F 5E D3 78 */ mr r30, r26 /* 80037164 00032DC4 3B 80 00 00 */ li r28, 0 /* 80037168 00032DC8 3B E0 00 00 */ li r31, 0 lbl_8003716C: /* 8003716C 00032DCC 80 9E 00 14 */ lwz r4, 0x14(r30) /* 80037170 00032DD0 2C 04 00 00 */ cmpwi r4, 0 /* 80037174 00032DD4 41 82 00 10 */ beq lbl_80037184 /* 80037178 00032DD8 7F A3 EB 78 */ mr r3, r29 /* 8003717C 00032DDC 48 01 6B 31 */ bl func_8004DCAC /* 80037180 00032DE0 93 FE 00 14 */ stw r31, 0x14(r30) lbl_80037184: /* 80037184 00032DE4 7F A3 EB 78 */ mr r3, r29 /* 80037188 00032DE8 48 01 6A C9 */ bl func_8004DC50 /* 8003718C 00032DEC 90 7E 00 14 */ stw r3, 0x14(r30) /* 80037190 00032DF0 7F 65 DB 78 */ mr r5, r27 /* 80037194 00032DF4 38 80 00 0C */ li r4, 0xc /* 80037198 00032DF8 38 C0 00 00 */ li r6, 0 /* 8003719C 00032DFC 48 01 70 99 */ bl func_8004E234 /* 800371A0 00032E00 3B 9C 00 01 */ addi r28, r28, 1 /* 800371A4 00032E04 3B DE 00 04 */ addi r30, r30, 4 /* 800371A8 00032E08 2C 1C 00 06 */ cmpwi r28, 6 /* 800371AC 00032E0C 41 80 FF C0 */ blt lbl_8003716C /* 800371B0 00032E10 38 00 00 00 */ li r0, 0 /* 800371B4 00032E14 38 60 00 01 */ li r3, 1 /* 800371B8 00032E18 98 1A 00 00 */ stb r0, 0(r26) lbl_800371BC: /* 800371BC 00032E1C 39 61 00 20 */ addi r11, r1, 0x20 /* 800371C0 00032E20 48 18 FF B1 */ bl _restgpr_26 /* 800371C4 00032E24 80 01 00 24 */ lwz r0, 0x24(r1) /* 800371C8 00032E28 7C 08 03 A6 */ mtlr r0 /* 800371CC 00032E2C 38 21 00 20 */ addi r1, r1, 0x20 /* 800371D0 00032E30 4E 80 00 20 */ blr .global func_800371D4 func_800371D4: /* 800371D4 00032E34 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800371D8 00032E38 7C 08 02 A6 */ mflr r0 /* 800371DC 00032E3C 90 01 00 34 */ stw r0, 0x34(r1) /* 800371E0 00032E40 DB E1 00 20 */ stfd f31, 0x20(r1) /* 800371E4 00032E44 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800371E8 00032E48 39 61 00 20 */ addi r11, r1, 0x20 /* 800371EC 00032E4C 48 18 FF 3D */ bl _savegpr_27 /* 800371F0 00032E50 7C 7B 1B 78 */ mr r27, r3 /* 800371F4 00032E54 48 01 66 19 */ bl func_8004D80C /* 800371F8 00032E58 2C 03 00 00 */ cmpwi r3, 0 /* 800371FC 00032E5C 7C 7D 1B 78 */ mr r29, r3 /* 80037200 00032E60 41 82 00 64 */ beq lbl_80037264 /* 80037204 00032E64 C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) /* 80037208 00032E68 7F 7E DB 78 */ mr r30, r27 /* 8003720C 00032E6C 3B 80 00 00 */ li r28, 0 /* 80037210 00032E70 3B E0 00 00 */ li r31, 0 lbl_80037214: /* 80037214 00032E74 80 7E 00 14 */ lwz r3, 0x14(r30) /* 80037218 00032E78 2C 03 00 00 */ cmpwi r3, 0 /* 8003721C 00032E7C 41 82 00 30 */ beq lbl_8003724C /* 80037220 00032E80 80 63 00 40 */ lwz r3, 0x40(r3) /* 80037224 00032E84 2C 03 00 00 */ cmpwi r3, 0 /* 80037228 00032E88 41 82 00 14 */ beq lbl_8003723C /* 8003722C 00032E8C 80 03 01 04 */ lwz r0, 0x104(r3) /* 80037230 00032E90 60 00 00 04 */ ori r0, r0, 4 /* 80037234 00032E94 90 03 01 04 */ stw r0, 0x104(r3) /* 80037238 00032E98 D3 E3 01 10 */ stfs f31, 0x110(r3) lbl_8003723C: /* 8003723C 00032E9C 80 9E 00 14 */ lwz r4, 0x14(r30) /* 80037240 00032EA0 7F A3 EB 78 */ mr r3, r29 /* 80037244 00032EA4 48 01 6A 69 */ bl func_8004DCAC /* 80037248 00032EA8 93 FE 00 14 */ stw r31, 0x14(r30) lbl_8003724C: /* 8003724C 00032EAC 3B 9C 00 01 */ addi r28, r28, 1 /* 80037250 00032EB0 3B DE 00 04 */ addi r30, r30, 4 /* 80037254 00032EB4 2C 1C 00 06 */ cmpwi r28, 6 /* 80037258 00032EB8 41 80 FF BC */ blt lbl_80037214 /* 8003725C 00032EBC 38 00 00 00 */ li r0, 0 /* 80037260 00032EC0 98 1B 00 00 */ stb r0, 0(r27) lbl_80037264: /* 80037264 00032EC4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80037268 00032EC8 39 61 00 20 */ addi r11, r1, 0x20 /* 8003726C 00032ECC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80037270 00032ED0 48 18 FF 05 */ bl _restgpr_27 /* 80037274 00032ED4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80037278 00032ED8 7C 08 03 A6 */ mtlr r0 /* 8003727C 00032EDC 38 21 00 30 */ addi r1, r1, 0x30 /* 80037280 00032EE0 4E 80 00 20 */ blr .global func_80037284 func_80037284: /* 80037284 00032EE4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80037288 00032EE8 7C 08 02 A6 */ mflr r0 /* 8003728C 00032EEC 90 01 00 24 */ stw r0, 0x24(r1) /* 80037290 00032EF0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80037294 00032EF4 7C 7F 1B 78 */ mr r31, r3 /* 80037298 00032EF8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003729C 00032EFC 3B C3 00 04 */ addi r30, r3, 4 /* 800372A0 00032F00 93 A1 00 14 */ stw r29, 0x14(r1) /* 800372A4 00032F04 3B A3 02 20 */ addi r29, r3, 0x220 lbl_800372A8: /* 800372A8 00032F08 7F C3 F3 78 */ mr r3, r30 /* 800372AC 00032F0C 48 01 90 79 */ bl func_80050324 /* 800372B0 00032F10 3B DE 00 24 */ addi r30, r30, 0x24 /* 800372B4 00032F14 7C 1E E8 40 */ cmplw r30, r29 /* 800372B8 00032F18 41 80 FF F0 */ blt lbl_800372A8 /* 800372BC 00032F1C 3B DF 04 60 */ addi r30, r31, 0x460 lbl_800372C0: /* 800372C0 00032F20 7F A3 EB 78 */ mr r3, r29 /* 800372C4 00032F24 48 01 9E 25 */ bl func_800510E8 /* 800372C8 00032F28 3B BD 00 C0 */ addi r29, r29, 0xc0 /* 800372CC 00032F2C 7C 1D F0 40 */ cmplw r29, r30 /* 800372D0 00032F30 41 80 FF F0 */ blt lbl_800372C0 /* 800372D4 00032F34 7F C3 F3 78 */ mr r3, r30 /* 800372D8 00032F38 48 01 92 55 */ bl func_8005052C /* 800372DC 00032F3C 38 7F 04 94 */ addi r3, r31, 0x494 /* 800372E0 00032F40 48 01 98 55 */ bl func_80050B34 /* 800372E4 00032F44 38 7F 04 D0 */ addi r3, r31, 0x4d0 /* 800372E8 00032F48 48 01 98 4D */ bl func_80050B34 /* 800372EC 00032F4C 38 7F 05 24 */ addi r3, r31, 0x524 /* 800372F0 00032F50 48 00 76 21 */ bl func_8003E910 /* 800372F4 00032F54 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800372F8 00032F58 3C 60 00 02 */ lis r3, 0x00020007@ha /* 800372FC 00032F5C 3B C0 00 00 */ li r30, 0 /* 80037300 00032F60 C0 42 82 24 */ lfs f2, lbl_80640824-_SDA2_BASE_(r2) /* 80037304 00032F64 C0 22 82 28 */ lfs f1, lbl_80640828-_SDA2_BASE_(r2) /* 80037308 00032F68 38 03 00 07 */ addi r0, r3, 0x00020007@l /* 8003730C 00032F6C D0 5F 0C 0C */ stfs f2, 0xc0c(r31) /* 80037310 00032F70 38 7F 0D 04 */ addi r3, r31, 0xd04 /* 80037314 00032F74 D0 5F 0C 10 */ stfs f2, 0xc10(r31) /* 80037318 00032F78 D0 5F 0C 14 */ stfs f2, 0xc14(r31) /* 8003731C 00032F7C D0 3F 0C 18 */ stfs f1, 0xc18(r31) /* 80037320 00032F80 D0 3F 0C 1C */ stfs f1, 0xc1c(r31) /* 80037324 00032F84 D0 3F 0C 20 */ stfs f1, 0xc20(r31) /* 80037328 00032F88 93 DF 0C 24 */ stw r30, 0xc24(r31) /* 8003732C 00032F8C 93 DF 0B FC */ stw r30, 0xbfc(r31) /* 80037330 00032F90 93 DF 0C 00 */ stw r30, 0xc00(r31) /* 80037334 00032F94 93 DF 0C B0 */ stw r30, 0xcb0(r31) /* 80037338 00032F98 B3 DF 0B F8 */ sth r30, 0xbf8(r31) /* 8003733C 00032F9C 9B DF 0B F6 */ stb r30, 0xbf6(r31) /* 80037340 00032FA0 B3 DF 0B F4 */ sth r30, 0xbf4(r31) /* 80037344 00032FA4 90 1F 00 00 */ stw r0, 0(r31) /* 80037348 00032FA8 D0 1F 0D 80 */ stfs f0, 0xd80(r31) /* 8003734C 00032FAC D0 1F 0D 84 */ stfs f0, 0xd84(r31) /* 80037350 00032FB0 D0 1F 0D 8C */ stfs f0, 0xd8c(r31) /* 80037354 00032FB4 9B DF 0D 88 */ stb r30, 0xd88(r31) /* 80037358 00032FB8 9B DF 0D 89 */ stb r30, 0xd89(r31) /* 8003735C 00032FBC 9B DF 0D 94 */ stb r30, 0xd94(r31) /* 80037360 00032FC0 93 DF 0C 08 */ stw r30, 0xc08(r31) /* 80037364 00032FC4 93 DF 0C 04 */ stw r30, 0xc04(r31) /* 80037368 00032FC8 93 DF 0C 48 */ stw r30, 0xc48(r31) /* 8003736C 00032FCC 93 DF 0C 4C */ stw r30, 0xc4c(r31) /* 80037370 00032FD0 93 DF 0C 74 */ stw r30, 0xc74(r31) /* 80037374 00032FD4 D0 1F 0C 78 */ stfs f0, 0xc78(r31) /* 80037378 00032FD8 D0 1F 0C 7C */ stfs f0, 0xc7c(r31) /* 8003737C 00032FDC D0 1F 0C 80 */ stfs f0, 0xc80(r31) /* 80037380 00032FE0 D0 1F 0C 84 */ stfs f0, 0xc84(r31) /* 80037384 00032FE4 D0 1F 0C 88 */ stfs f0, 0xc88(r31) /* 80037388 00032FE8 D0 1F 0C 8C */ stfs f0, 0xc8c(r31) /* 8003738C 00032FEC 4B FF FD 69 */ bl func_800370F4 /* 80037390 00032FF0 38 7F 0D 30 */ addi r3, r31, 0xd30 /* 80037394 00032FF4 48 00 55 89 */ bl func_8003C91C /* 80037398 00032FF8 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003739C 00032FFC 38 00 FF FF */ li r0, -1 /* 800373A0 00033000 B3 DF 05 0C */ sth r30, 0x50c(r31) /* 800373A4 00033004 38 7F 05 24 */ addi r3, r31, 0x524 /* 800373A8 00033008 B3 DF 05 10 */ sth r30, 0x510(r31) /* 800373AC 0003300C B3 DF 05 12 */ sth r30, 0x512(r31) /* 800373B0 00033010 9B DF 05 16 */ stb r30, 0x516(r31) /* 800373B4 00033014 B3 DF 05 14 */ sth r30, 0x514(r31) /* 800373B8 00033018 93 DF 05 18 */ stw r30, 0x518(r31) /* 800373BC 0003301C B3 DF 05 1C */ sth r30, 0x51c(r31) /* 800373C0 00033020 9B DF 05 21 */ stb r30, 0x521(r31) /* 800373C4 00033024 B3 DF 0C 68 */ sth r30, 0xc68(r31) /* 800373C8 00033028 D0 1F 0D 78 */ stfs f0, 0xd78(r31) /* 800373CC 0003302C D0 1F 0D 7C */ stfs f0, 0xd7c(r31) /* 800373D0 00033030 D0 1F 0D 64 */ stfs f0, 0xd64(r31) /* 800373D4 00033034 D0 1F 0D 68 */ stfs f0, 0xd68(r31) /* 800373D8 00033038 D0 1F 0D 6C */ stfs f0, 0xd6c(r31) /* 800373DC 0003303C 93 DF 0D 70 */ stw r30, 0xd70(r31) /* 800373E0 00033040 90 1F 0D 74 */ stw r0, 0xd74(r31) /* 800373E4 00033044 48 00 75 BD */ bl func_8003E9A0 /* 800373E8 00033048 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800373EC 0003304C D0 1F 0C 70 */ stfs f0, 0xc70(r31) /* 800373F0 00033050 48 1E C4 41 */ bl func_80223830 /* 800373F4 00033054 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 800373F8 00033058 80 A3 00 00 */ lwz r5, 0(r3) /* 800373FC 0003305C 38 84 43 FD */ addi r4, r4, 0x000343FD@l /* 80037400 00033060 3C 00 43 30 */ lis r0, 0x4330 /* 80037404 00033064 7C 85 21 D6 */ mullw r4, r5, r4 /* 80037408 00033068 90 01 00 08 */ stw r0, 8(r1) /* 8003740C 0003306C C8 62 82 50 */ lfd f3, lbl_80640850-_SDA2_BASE_(r2) /* 80037410 00033070 38 E0 00 01 */ li r7, 1 /* 80037414 00033074 C0 02 82 2C */ lfs f0, lbl_8064082C-_SDA2_BASE_(r2) /* 80037418 00033078 38 C0 00 D4 */ li r6, 0xd4 /* 8003741C 0003307C 3C 84 00 27 */ addis r4, r4, 0x27 /* 80037420 00033080 C1 02 82 30 */ lfs f8, lbl_80640830-_SDA2_BASE_(r2) /* 80037424 00033084 38 04 9E C3 */ addi r0, r4, -24893 /* 80037428 00033088 C0 C2 82 38 */ lfs f6, lbl_80640838-_SDA2_BASE_(r2) /* 8003742C 0003308C 54 04 84 3E */ srwi r4, r0, 0x10 /* 80037430 00033090 90 03 00 00 */ stw r0, 0(r3) /* 80037434 00033094 C0 E2 82 34 */ lfs f7, lbl_80640834-_SDA2_BASE_(r2) /* 80037438 00033098 38 00 00 C4 */ li r0, 0xc4 /* 8003743C 0003309C 90 81 00 0C */ stw r4, 0xc(r1) /* 80037440 000330A0 38 7F 0C D8 */ addi r3, r31, 0xcd8 /* 80037444 000330A4 C0 A2 82 20 */ lfs f5, lbl_80640820-_SDA2_BASE_(r2) /* 80037448 000330A8 38 80 00 00 */ li r4, 0 /* 8003744C 000330AC C8 41 00 08 */ lfd f2, 8(r1) /* 80037450 000330B0 38 A0 00 2C */ li r5, 0x2c /* 80037454 000330B4 C0 22 82 48 */ lfs f1, lbl_80640848-_SDA2_BASE_(r2) /* 80037458 000330B8 ED 22 18 28 */ fsubs f9, f2, f3 /* 8003745C 000330BC C0 82 82 3C */ lfs f4, lbl_8064083C-_SDA2_BASE_(r2) /* 80037460 000330C0 C0 62 82 40 */ lfs f3, lbl_80640840-_SDA2_BASE_(r2) /* 80037464 000330C4 C0 42 82 44 */ lfs f2, lbl_80640844-_SDA2_BASE_(r2) /* 80037468 000330C8 ED 29 00 24 */ fdivs f9, f9, f0 /* 8003746C 000330CC D0 DF 0C 44 */ stfs f6, 0xc44(r31) /* 80037470 000330D0 C0 02 82 4C */ lfs f0, lbl_8064084C-_SDA2_BASE_(r2) /* 80037474 000330D4 D0 FF 0C 38 */ stfs f7, 0xc38(r31) /* 80037478 000330D8 D0 FF 0C 3C */ stfs f7, 0xc3c(r31) /* 8003747C 000330DC D0 FF 0C 40 */ stfs f7, 0xc40(r31) /* 80037480 000330E0 EC C8 48 2A */ fadds f6, f8, f9 /* 80037484 000330E4 D0 FF 0C 28 */ stfs f7, 0xc28(r31) /* 80037488 000330E8 D0 FF 0C 2C */ stfs f7, 0xc2c(r31) /* 8003748C 000330EC D0 DF 0C 6C */ stfs f6, 0xc6c(r31) /* 80037490 000330F0 D0 FF 0C 30 */ stfs f7, 0xc30(r31) /* 80037494 000330F4 D0 BF 0C 34 */ stfs f5, 0xc34(r31) /* 80037498 000330F8 98 FF 0D B4 */ stb r7, 0xdb4(r31) /* 8003749C 000330FC 98 FF 0D B5 */ stb r7, 0xdb5(r31) /* 800374A0 00033100 98 FF 0D B6 */ stb r7, 0xdb6(r31) /* 800374A4 00033104 D0 9F 0D B8 */ stfs f4, 0xdb8(r31) /* 800374A8 00033108 D0 7F 0D BC */ stfs f3, 0xdbc(r31) /* 800374AC 0003310C 98 DF 0D C0 */ stb r6, 0xdc0(r31) /* 800374B0 00033110 98 DF 0D C1 */ stb r6, 0xdc1(r31) /* 800374B4 00033114 98 DF 0D C2 */ stb r6, 0xdc2(r31) /* 800374B8 00033118 98 1F 0D C3 */ stb r0, 0xdc3(r31) /* 800374BC 0003311C D0 BF 0D C4 */ stfs f5, 0xdc4(r31) /* 800374C0 00033120 D0 5F 0D C8 */ stfs f2, 0xdc8(r31) /* 800374C4 00033124 D0 BF 0D CC */ stfs f5, 0xdcc(r31) /* 800374C8 00033128 D0 3F 0D D0 */ stfs f1, 0xdd0(r31) /* 800374CC 0003312C D0 3F 0D D4 */ stfs f1, 0xdd4(r31) /* 800374D0 00033130 D0 3F 0D D8 */ stfs f1, 0xdd8(r31) /* 800374D4 00033134 D1 1F 0D DC */ stfs f8, 0xddc(r31) /* 800374D8 00033138 D1 1F 0D E0 */ stfs f8, 0xde0(r31) /* 800374DC 0003313C D1 1F 0D E4 */ stfs f8, 0xde4(r31) /* 800374E0 00033140 D1 1F 0D E8 */ stfs f8, 0xde8(r31) /* 800374E4 00033144 D0 BF 0D EC */ stfs f5, 0xdec(r31) /* 800374E8 00033148 D0 BF 0D F0 */ stfs f5, 0xdf0(r31) /* 800374EC 0003314C D0 1F 0D F4 */ stfs f0, 0xdf4(r31) /* 800374F0 00033150 93 DF 0C 50 */ stw r30, 0xc50(r31) /* 800374F4 00033154 93 DF 0C 54 */ stw r30, 0xc54(r31) /* 800374F8 00033158 4B FC CC 0D */ bl memset /* 800374FC 0003315C 38 7F 0C 90 */ addi r3, r31, 0xc90 /* 80037500 00033160 38 80 00 00 */ li r4, 0 /* 80037504 00033164 38 A0 00 10 */ li r5, 0x10 /* 80037508 00033168 4B FC CB FD */ bl memset /* 8003750C 0003316C 38 7F 0C 58 */ addi r3, r31, 0xc58 /* 80037510 00033170 38 80 00 00 */ li r4, 0 /* 80037514 00033174 38 A0 00 10 */ li r5, 0x10 /* 80037518 00033178 4B FC CB ED */ bl memset /* 8003751C 0003317C 7F E3 FB 78 */ mr r3, r31 /* 80037520 00033180 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80037524 00033184 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80037528 00033188 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003752C 0003318C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80037530 00033190 7C 08 03 A6 */ mtlr r0 /* 80037534 00033194 38 21 00 20 */ addi r1, r1, 0x20 /* 80037538 00033198 4E 80 00 20 */ blr .global func_8003753C func_8003753C: /* 8003753C 0003319C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80037540 000331A0 7C 08 02 A6 */ mflr r0 /* 80037544 000331A4 2C 03 00 00 */ cmpwi r3, 0 /* 80037548 000331A8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003754C 000331AC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80037550 000331B0 7C 9F 23 78 */ mr r31, r4 /* 80037554 000331B4 93 C1 00 08 */ stw r30, 8(r1) /* 80037558 000331B8 7C 7E 1B 78 */ mr r30, r3 /* 8003755C 000331BC 41 82 00 2C */ beq lbl_80037588 /* 80037560 000331C0 48 00 00 45 */ bl func_800375A4 /* 80037564 000331C4 34 1E 05 1C */ addic. r0, r30, 0x51c /* 80037568 000331C8 41 82 00 10 */ beq lbl_80037578 /* 8003756C 000331CC 38 7E 05 24 */ addi r3, r30, 0x524 /* 80037570 000331D0 38 80 FF FF */ li r4, -1 /* 80037574 000331D4 48 00 73 D9 */ bl func_8003E94C lbl_80037578: /* 80037578 000331D8 2C 1F 00 00 */ cmpwi r31, 0 /* 8003757C 000331DC 40 81 00 0C */ ble lbl_80037588 /* 80037580 000331E0 7F C3 F3 78 */ mr r3, r30 /* 80037584 000331E4 48 1A 35 35 */ bl func_801DAAB8 lbl_80037588: /* 80037588 000331E8 7F C3 F3 78 */ mr r3, r30 /* 8003758C 000331EC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80037590 000331F0 83 C1 00 08 */ lwz r30, 8(r1) /* 80037594 000331F4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80037598 000331F8 7C 08 03 A6 */ mtlr r0 /* 8003759C 000331FC 38 21 00 10 */ addi r1, r1, 0x10 /* 800375A0 00033200 4E 80 00 20 */ blr .global func_800375A4 func_800375A4: /* 800375A4 00033204 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800375A8 00033208 7C 08 02 A6 */ mflr r0 /* 800375AC 0003320C 90 01 00 24 */ stw r0, 0x24(r1) /* 800375B0 00033210 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800375B4 00033214 93 C1 00 18 */ stw r30, 0x18(r1) /* 800375B8 00033218 93 A1 00 14 */ stw r29, 0x14(r1) /* 800375BC 0003321C 93 81 00 10 */ stw r28, 0x10(r1) /* 800375C0 00033220 7C 7C 1B 78 */ mr r28, r3 /* 800375C4 00033224 48 00 8C 31 */ bl func_800401F4 /* 800375C8 00033228 2C 03 00 00 */ cmpwi r3, 0 /* 800375CC 0003322C 41 82 00 0C */ beq lbl_800375D8 /* 800375D0 00033230 7F 84 E3 78 */ mr r4, r28 /* 800375D4 00033234 48 00 8C 29 */ bl func_800401FC lbl_800375D8: /* 800375D8 00033238 7F 9E E3 78 */ mr r30, r28 /* 800375DC 0003323C 3B A0 00 00 */ li r29, 0 /* 800375E0 00033240 3B E0 00 00 */ li r31, 0 lbl_800375E4: /* 800375E4 00033244 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 800375E8 00033248 2C 03 00 00 */ cmpwi r3, 0 /* 800375EC 0003324C 41 82 00 20 */ beq lbl_8003760C /* 800375F0 00033250 41 82 00 18 */ beq lbl_80037608 /* 800375F4 00033254 81 83 01 00 */ lwz r12, 0x100(r3) /* 800375F8 00033258 38 80 00 01 */ li r4, 1 /* 800375FC 0003325C 81 8C 00 08 */ lwz r12, 8(r12) /* 80037600 00033260 7D 89 03 A6 */ mtctr r12 /* 80037604 00033264 4E 80 04 21 */ bctrl lbl_80037608: /* 80037608 00033268 93 FE 0C 90 */ stw r31, 0xc90(r30) lbl_8003760C: /* 8003760C 0003326C 3B BD 00 01 */ addi r29, r29, 1 /* 80037610 00033270 3B DE 00 04 */ addi r30, r30, 4 /* 80037614 00033274 2C 1D 00 04 */ cmpwi r29, 4 /* 80037618 00033278 41 80 FF CC */ blt lbl_800375E4 /* 8003761C 0003327C 80 7C 0C 08 */ lwz r3, 0xc08(r28) /* 80037620 00033280 2C 03 00 00 */ cmpwi r3, 0 /* 80037624 00033284 41 82 00 24 */ beq lbl_80037648 /* 80037628 00033288 41 82 00 18 */ beq lbl_80037640 /* 8003762C 0003328C 81 83 00 0C */ lwz r12, 0xc(r3) /* 80037630 00033290 38 80 00 01 */ li r4, 1 /* 80037634 00033294 81 8C 00 18 */ lwz r12, 0x18(r12) /* 80037638 00033298 7D 89 03 A6 */ mtctr r12 /* 8003763C 0003329C 4E 80 04 21 */ bctrl lbl_80037640: /* 80037640 000332A0 38 00 00 00 */ li r0, 0 /* 80037644 000332A4 90 1C 0C 08 */ stw r0, 0xc08(r28) lbl_80037648: /* 80037648 000332A8 80 7C 0C 04 */ lwz r3, 0xc04(r28) /* 8003764C 000332AC 2C 03 00 00 */ cmpwi r3, 0 /* 80037650 000332B0 41 82 00 08 */ beq lbl_80037658 /* 80037654 000332B4 48 1B ED 3D */ bl func_801F6390 lbl_80037658: /* 80037658 000332B8 80 7C 0C 00 */ lwz r3, 0xc00(r28) /* 8003765C 000332BC 2C 03 00 00 */ cmpwi r3, 0 /* 80037660 000332C0 41 82 00 14 */ beq lbl_80037674 /* 80037664 000332C4 38 80 00 01 */ li r4, 1 /* 80037668 000332C8 48 1C 2C 2D */ bl func_801FA294 /* 8003766C 000332CC 38 00 00 00 */ li r0, 0 /* 80037670 000332D0 90 1C 0C 00 */ stw r0, 0xc00(r28) lbl_80037674: /* 80037674 000332D4 38 7C 0D 04 */ addi r3, r28, 0xd04 /* 80037678 000332D8 4B FF FB 5D */ bl func_800371D4 /* 8003767C 000332DC 80 7C 0B FC */ lwz r3, 0xbfc(r28) /* 80037680 000332E0 2C 03 00 00 */ cmpwi r3, 0 /* 80037684 000332E4 41 82 00 70 */ beq lbl_800376F4 /* 80037688 000332E8 80 1C 00 00 */ lwz r0, 0(r28) /* 8003768C 000332EC 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 80037690 000332F0 41 82 00 14 */ beq lbl_800376A4 /* 80037694 000332F4 48 1A C1 5D */ bl func_801E37F0 /* 80037698 000332F8 80 7C 0B FC */ lwz r3, 0xbfc(r28) /* 8003769C 000332FC 48 1A 38 09 */ bl func_801DAEA4 /* 800376A0 00033300 48 00 00 4C */ b lbl_800376EC lbl_800376A4: /* 800376A4 00033304 80 7C 0C 48 */ lwz r3, 0xc48(r28) /* 800376A8 00033308 80 9C 0C 4C */ lwz r4, 0xc4c(r28) /* 800376AC 0003330C 48 1A 3E 9D */ bl func_801DB548 /* 800376B0 00033310 3B BC 0C 58 */ addi r29, r28, 0xc58 /* 800376B4 00033314 3B FC 0C 68 */ addi r31, r28, 0xc68 /* 800376B8 00033318 48 00 00 1C */ b lbl_800376D4 lbl_800376BC: /* 800376BC 0003331C 80 7D 00 00 */ lwz r3, 0(r29) /* 800376C0 00033320 2C 03 00 00 */ cmpwi r3, 0 /* 800376C4 00033324 41 82 00 0C */ beq lbl_800376D0 /* 800376C8 00033328 80 9D 00 04 */ lwz r4, 4(r29) /* 800376CC 0003332C 48 1A 3E 7D */ bl func_801DB548 lbl_800376D0: /* 800376D0 00033330 3B BD 00 08 */ addi r29, r29, 8 lbl_800376D4: /* 800376D4 00033334 7C 1D F8 40 */ cmplw r29, r31 /* 800376D8 00033338 40 82 FF E4 */ bne lbl_800376BC /* 800376DC 0003333C 38 7C 0C 58 */ addi r3, r28, 0xc58 /* 800376E0 00033340 38 80 00 00 */ li r4, 0 /* 800376E4 00033344 38 A0 00 10 */ li r5, 0x10 /* 800376E8 00033348 4B FC CA 1D */ bl memset lbl_800376EC: /* 800376EC 0003334C 38 00 00 00 */ li r0, 0 /* 800376F0 00033350 90 1C 0B FC */ stw r0, 0xbfc(r28) lbl_800376F4: /* 800376F4 00033354 38 7C 0C D8 */ addi r3, r28, 0xcd8 /* 800376F8 00033358 4B FF F9 09 */ bl func_80037000 /* 800376FC 0003335C 38 7C 05 24 */ addi r3, r28, 0x524 /* 80037700 00033360 48 00 73 B1 */ bl func_8003EAB0 /* 80037704 00033364 3C 60 00 02 */ lis r3, 0x00020807@ha /* 80037708 00033368 80 9C 00 00 */ lwz r4, 0(r28) /* 8003770C 0003336C 38 03 08 07 */ addi r0, r3, 0x00020807@l /* 80037710 00033370 38 60 00 00 */ li r3, 0 /* 80037714 00033374 7C 80 00 38 */ and r0, r4, r0 /* 80037718 00033378 90 7C 0C 48 */ stw r3, 0xc48(r28) /* 8003771C 0003337C 90 7C 0C 4C */ stw r3, 0xc4c(r28) /* 80037720 00033380 90 7C 0C 04 */ stw r3, 0xc04(r28) /* 80037724 00033384 90 1C 00 00 */ stw r0, 0(r28) /* 80037728 00033388 B0 7C 05 10 */ sth r3, 0x510(r28) /* 8003772C 0003338C B0 7C 05 12 */ sth r3, 0x512(r28) /* 80037730 00033390 98 7C 05 16 */ stb r3, 0x516(r28) /* 80037734 00033394 B0 7C 05 14 */ sth r3, 0x514(r28) /* 80037738 00033398 90 7C 05 18 */ stw r3, 0x518(r28) /* 8003773C 0003339C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80037740 000333A0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80037744 000333A4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80037748 000333A8 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003774C 000333AC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80037750 000333B0 7C 08 03 A6 */ mtlr r0 /* 80037754 000333B4 38 21 00 20 */ addi r1, r1, 0x20 /* 80037758 000333B8 4E 80 00 20 */ blr .global func_8003775C func_8003775C: /* 8003775C 000333BC 94 21 FE C0 */ stwu r1, -0x140(r1) /* 80037760 000333C0 7C 08 02 A6 */ mflr r0 /* 80037764 000333C4 38 AD 80 D0 */ addi r5, r13, lbl_8063D390-_SDA_BASE_ /* 80037768 000333C8 90 01 01 44 */ stw r0, 0x144(r1) /* 8003776C 000333CC 93 E1 01 3C */ stw r31, 0x13c(r1) /* 80037770 000333D0 93 C1 01 38 */ stw r30, 0x138(r1) /* 80037774 000333D4 7C 9E 23 78 */ mr r30, r4 /* 80037778 000333D8 3C 80 80 41 */ lis r4, lbl_8040A404@ha /* 8003777C 000333DC 93 A1 01 34 */ stw r29, 0x134(r1) /* 80037780 000333E0 7C 7D 1B 78 */ mr r29, r3 /* 80037784 000333E4 38 61 00 28 */ addi r3, r1, 0x28 /* 80037788 000333E8 7F C6 F3 78 */ mr r6, r30 /* 8003778C 000333EC 38 84 A4 04 */ addi r4, r4, lbl_8040A404@l /* 80037790 000333F0 4C C6 31 82 */ crclr 6 /* 80037794 000333F4 48 19 53 69 */ bl sprintf /* 80037798 000333F8 48 1A 37 61 */ bl func_801DAEF8 /* 8003779C 000333FC 38 61 00 28 */ addi r3, r1, 0x28 /* 800377A0 00033400 38 81 00 08 */ addi r4, r1, 8 /* 800377A4 00033404 48 1A 54 1D */ bl func_801DCBC0 /* 800377A8 00033408 2C 03 00 00 */ cmpwi r3, 0 /* 800377AC 0003340C 7C 7F 1B 78 */ mr r31, r3 /* 800377B0 00033410 40 82 00 0C */ bne lbl_800377BC /* 800377B4 00033414 38 60 00 00 */ li r3, 0 /* 800377B8 00033418 48 00 01 50 */ b lbl_80037908 lbl_800377BC: /* 800377BC 0003341C 7F E4 FB 78 */ mr r4, r31 /* 800377C0 00033420 48 1A BD 1D */ bl func_801E34DC /* 800377C4 00033424 48 1A 33 65 */ bl func_801DAB28 /* 800377C8 00033428 2C 03 00 00 */ cmpwi r3, 0 /* 800377CC 0003342C 41 82 00 14 */ beq lbl_800377E0 /* 800377D0 00033430 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 800377D4 00033434 38 80 00 14 */ li r4, 0x14 /* 800377D8 00033438 48 1A 34 BD */ bl func_801DAC94 /* 800377DC 0003343C 48 00 00 08 */ b lbl_800377E4 lbl_800377E0: /* 800377E0 00033440 38 60 00 00 */ li r3, 0 lbl_800377E4: /* 800377E4 00033444 2C 03 00 00 */ cmpwi r3, 0 /* 800377E8 00033448 41 82 00 0C */ beq lbl_800377F4 /* 800377EC 0003344C 7F E4 FB 78 */ mr r4, r31 /* 800377F0 00033450 48 1C 28 A5 */ bl func_801FA094 lbl_800377F4: /* 800377F4 00033454 90 7D 0C 00 */ stw r3, 0xc00(r29) /* 800377F8 00033458 48 1A 37 01 */ bl func_801DAEF8 /* 800377FC 0003345C 80 7D 0C 00 */ lwz r3, 0xc00(r29) /* 80037800 00033460 80 83 00 04 */ lwz r4, 4(r3) /* 80037804 00033464 2C 04 00 00 */ cmpwi r4, 0 /* 80037808 00033468 40 82 00 0C */ bne lbl_80037814 /* 8003780C 0003346C 38 00 00 00 */ li r0, 0 /* 80037810 00033470 48 00 00 20 */ b lbl_80037830 lbl_80037814: /* 80037814 00033474 80 63 00 00 */ lwz r3, 0(r3) /* 80037818 00033478 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003781C 0003347C 2C 00 00 00 */ cmpwi r0, 0 /* 80037820 00033480 40 82 00 0C */ bne lbl_8003782C /* 80037824 00033484 38 00 00 00 */ li r0, 0 /* 80037828 00033488 48 00 00 08 */ b lbl_80037830 lbl_8003782C: /* 8003782C 0003348C 80 04 00 00 */ lwz r0, 0(r4) lbl_80037830: /* 80037830 00033490 90 1D 0C 04 */ stw r0, 0xc04(r29) /* 80037834 00033494 7F A3 EB 78 */ mr r3, r29 /* 80037838 00033498 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003783C 0003349C 38 81 00 18 */ addi r4, r1, 0x18 /* 80037840 000334A0 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 80037844 000334A4 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80037848 000334A8 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 8003784C 000334AC D0 21 00 20 */ stfs f1, 0x20(r1) /* 80037850 000334B0 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80037854 000334B4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80037858 000334B8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003785C 000334BC 48 00 0F C1 */ bl func_8003881C /* 80037860 000334C0 7F A3 EB 78 */ mr r3, r29 /* 80037864 000334C4 38 81 00 18 */ addi r4, r1, 0x18 /* 80037868 000334C8 48 00 12 69 */ bl func_80038AD0 /* 8003786C 000334CC 7F A3 EB 78 */ mr r3, r29 /* 80037870 000334D0 38 81 00 0C */ addi r4, r1, 0xc /* 80037874 000334D4 48 00 10 DD */ bl func_80038950 /* 80037878 000334D8 80 7D 0C 04 */ lwz r3, 0xc04(r29) /* 8003787C 000334DC 38 80 00 00 */ li r4, 0 /* 80037880 000334E0 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80037884 000334E4 38 A0 00 01 */ li r5, 1 /* 80037888 000334E8 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003788C 000334EC 38 C0 00 00 */ li r6, 0 /* 80037890 000334F0 38 E0 00 00 */ li r7, 0 /* 80037894 000334F4 39 00 00 00 */ li r8, 0 /* 80037898 000334F8 48 1B D5 5D */ bl func_801F4DF4 /* 8003789C 000334FC 80 7D 0C 04 */ lwz r3, 0xc04(r29) /* 800378A0 00033500 38 80 00 01 */ li r4, 1 /* 800378A4 00033504 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 800378A8 00033508 48 1B EF A1 */ bl func_801F6848 /* 800378AC 0003350C 80 BD 0C 04 */ lwz r5, 0xc04(r29) /* 800378B0 00033510 7F A3 EB 78 */ mr r3, r29 /* 800378B4 00033514 80 1D 00 00 */ lwz r0, 0(r29) /* 800378B8 00033518 7F C4 F3 78 */ mr r4, r30 /* 800378BC 0003351C C0 05 01 20 */ lfs f0, 0x120(r5) /* 800378C0 00033520 60 00 00 80 */ ori r0, r0, 0x80 /* 800378C4 00033524 D0 1D 0C 0C */ stfs f0, 0xc0c(r29) /* 800378C8 00033528 C0 05 01 24 */ lfs f0, 0x124(r5) /* 800378CC 0003352C D0 1D 0C 10 */ stfs f0, 0xc10(r29) /* 800378D0 00033530 C0 05 01 28 */ lfs f0, 0x128(r5) /* 800378D4 00033534 D0 1D 0C 14 */ stfs f0, 0xc14(r29) /* 800378D8 00033538 C0 05 01 2C */ lfs f0, 0x12c(r5) /* 800378DC 0003353C D0 1D 0C 18 */ stfs f0, 0xc18(r29) /* 800378E0 00033540 C0 05 01 30 */ lfs f0, 0x130(r5) /* 800378E4 00033544 D0 1D 0C 1C */ stfs f0, 0xc1c(r29) /* 800378E8 00033548 C0 05 01 34 */ lfs f0, 0x134(r5) /* 800378EC 0003354C D0 1D 0C 20 */ stfs f0, 0xc20(r29) /* 800378F0 00033550 80 A5 01 38 */ lwz r5, 0x138(r5) /* 800378F4 00033554 90 BD 0C 24 */ stw r5, 0xc24(r29) /* 800378F8 00033558 93 FD 0B FC */ stw r31, 0xbfc(r29) /* 800378FC 0003355C 90 1D 00 00 */ stw r0, 0(r29) /* 80037900 00033560 48 00 0C 19 */ bl func_80038518 /* 80037904 00033564 38 60 00 01 */ li r3, 1 lbl_80037908: /* 80037908 00033568 80 01 01 44 */ lwz r0, 0x144(r1) /* 8003790C 0003356C 83 E1 01 3C */ lwz r31, 0x13c(r1) /* 80037910 00033570 83 C1 01 38 */ lwz r30, 0x138(r1) /* 80037914 00033574 83 A1 01 34 */ lwz r29, 0x134(r1) /* 80037918 00033578 7C 08 03 A6 */ mtlr r0 /* 8003791C 0003357C 38 21 01 40 */ addi r1, r1, 0x140 /* 80037920 00033580 4E 80 00 20 */ blr .global func_80037924 func_80037924: /* 80037924 00033584 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80037928 00033588 7C 08 02 A6 */ mflr r0 /* 8003792C 0003358C 90 01 00 24 */ stw r0, 0x24(r1) /* 80037930 00033590 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80037934 00033594 7C BF 2B 78 */ mr r31, r5 /* 80037938 00033598 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003793C 0003359C 7C 9E 23 78 */ mr r30, r4 /* 80037940 000335A0 7F E4 FB 78 */ mr r4, r31 /* 80037944 000335A4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80037948 000335A8 7C 7D 1B 78 */ mr r29, r3 /* 8003794C 000335AC 7F C3 F3 78 */ mr r3, r30 /* 80037950 000335B0 48 1A 3B 6D */ bl func_801DB4BC /* 80037954 000335B4 2C 03 00 00 */ cmpwi r3, 0 /* 80037958 000335B8 90 7D 0B FC */ stw r3, 0xbfc(r29) /* 8003795C 000335BC 40 82 00 0C */ bne lbl_80037968 /* 80037960 000335C0 38 60 00 00 */ li r3, 0 /* 80037964 000335C4 48 00 00 28 */ b lbl_8003798C lbl_80037968: /* 80037968 000335C8 80 1D 00 00 */ lwz r0, 0(r29) /* 8003796C 000335CC 7F A3 EB 78 */ mr r3, r29 /* 80037970 000335D0 93 DD 0C 48 */ stw r30, 0xc48(r29) /* 80037974 000335D4 38 8D 80 D8 */ addi r4, r13, lbl_8063D398-_SDA_BASE_ /* 80037978 000335D8 60 00 00 10 */ ori r0, r0, 0x10 /* 8003797C 000335DC 93 FD 0C 4C */ stw r31, 0xc4c(r29) /* 80037980 000335E0 90 1D 00 00 */ stw r0, 0(r29) /* 80037984 000335E4 48 00 0B 95 */ bl func_80038518 /* 80037988 000335E8 38 60 00 01 */ li r3, 1 lbl_8003798C: /* 8003798C 000335EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80037990 000335F0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80037994 000335F4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80037998 000335F8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003799C 000335FC 7C 08 03 A6 */ mtlr r0 /* 800379A0 00033600 38 21 00 20 */ addi r1, r1, 0x20 /* 800379A4 00033604 4E 80 00 20 */ blr .global func_800379A8 func_800379A8: /* 800379A8 00033608 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800379AC 0003360C 7C 08 02 A6 */ mflr r0 /* 800379B0 00033610 90 01 00 44 */ stw r0, 0x44(r1) /* 800379B4 00033614 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800379B8 00033618 7C 7F 1B 78 */ mr r31, r3 /* 800379BC 0003361C 93 C1 00 38 */ stw r30, 0x38(r1) /* 800379C0 00033620 93 A1 00 34 */ stw r29, 0x34(r1) /* 800379C4 00033624 80 83 00 00 */ lwz r4, 0(r3) /* 800379C8 00033628 54 80 05 6B */ rlwinm. r0, r4, 0, 0x15, 0x15 /* 800379CC 0003362C 41 82 00 14 */ beq lbl_800379E0 /* 800379D0 00033630 54 80 05 A8 */ rlwinm r0, r4, 0, 0x16, 0x14 /* 800379D4 00033634 A0 83 0C 68 */ lhz r4, 0xc68(r3) /* 800379D8 00033638 90 03 00 00 */ stw r0, 0(r3) /* 800379DC 0003363C 48 00 0B 55 */ bl func_80038530 lbl_800379E0: /* 800379E0 00033640 80 7F 00 00 */ lwz r3, 0(r31) /* 800379E4 00033644 54 60 05 AD */ rlwinm. r0, r3, 0, 0x16, 0x16 /* 800379E8 00033648 41 82 00 20 */ beq lbl_80037A08 /* 800379EC 0003364C A0 1F 05 0C */ lhz r0, 0x50c(r31) /* 800379F0 00033650 54 63 05 EA */ rlwinm r3, r3, 0, 0x17, 0x15 /* 800379F4 00033654 90 7F 00 00 */ stw r3, 0(r31) /* 800379F8 00033658 28 00 00 02 */ cmplwi r0, 2 /* 800379FC 0003365C 40 82 00 0C */ bne lbl_80037A08 /* 80037A00 00033660 7F E3 FB 78 */ mr r3, r31 /* 80037A04 00033664 48 00 5A 31 */ bl func_8003D434 lbl_80037A08: /* 80037A08 00033668 80 7F 00 00 */ lwz r3, 0(r31) /* 80037A0C 0003366C 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 80037A10 00033670 41 82 02 FC */ beq lbl_80037D0C /* 80037A14 00033674 80 1F 0B FC */ lwz r0, 0xbfc(r31) /* 80037A18 00033678 54 63 07 34 */ rlwinm r3, r3, 0, 0x1c, 0x1a /* 80037A1C 0003367C 90 7F 00 00 */ stw r3, 0(r31) /* 80037A20 00033680 2C 00 00 00 */ cmpwi r0, 0 /* 80037A24 00033684 41 82 02 BC */ beq lbl_80037CE0 /* 80037A28 00033688 80 7F 0C 00 */ lwz r3, 0xc00(r31) /* 80037A2C 0003368C 2C 03 00 00 */ cmpwi r3, 0 /* 80037A30 00033690 41 82 00 0C */ beq lbl_80037A3C /* 80037A34 00033694 38 80 00 01 */ li r4, 1 /* 80037A38 00033698 48 1C 28 5D */ bl func_801FA294 lbl_80037A3C: /* 80037A3C 0003369C 48 1A 30 ED */ bl func_801DAB28 /* 80037A40 000336A0 2C 03 00 00 */ cmpwi r3, 0 /* 80037A44 000336A4 41 82 00 14 */ beq lbl_80037A58 /* 80037A48 000336A8 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80037A4C 000336AC 38 80 00 14 */ li r4, 0x14 /* 80037A50 000336B0 48 1A 32 45 */ bl func_801DAC94 /* 80037A54 000336B4 48 00 00 08 */ b lbl_80037A5C lbl_80037A58: /* 80037A58 000336B8 38 60 00 00 */ li r3, 0 lbl_80037A5C: /* 80037A5C 000336BC 2C 03 00 00 */ cmpwi r3, 0 /* 80037A60 000336C0 41 82 00 0C */ beq lbl_80037A6C /* 80037A64 000336C4 80 9F 0B FC */ lwz r4, 0xbfc(r31) /* 80037A68 000336C8 48 1C 26 2D */ bl func_801FA094 lbl_80037A6C: /* 80037A6C 000336CC 90 7F 0C 00 */ stw r3, 0xc00(r31) /* 80037A70 000336D0 80 83 00 04 */ lwz r4, 4(r3) /* 80037A74 000336D4 2C 04 00 00 */ cmpwi r4, 0 /* 80037A78 000336D8 40 82 00 0C */ bne lbl_80037A84 /* 80037A7C 000336DC 38 60 00 00 */ li r3, 0 /* 80037A80 000336E0 48 00 00 20 */ b lbl_80037AA0 lbl_80037A84: /* 80037A84 000336E4 80 63 00 00 */ lwz r3, 0(r3) /* 80037A88 000336E8 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80037A8C 000336EC 2C 00 00 00 */ cmpwi r0, 0 /* 80037A90 000336F0 40 82 00 0C */ bne lbl_80037A9C /* 80037A94 000336F4 38 60 00 00 */ li r3, 0 /* 80037A98 000336F8 48 00 00 08 */ b lbl_80037AA0 lbl_80037A9C: /* 80037A9C 000336FC 80 64 00 00 */ lwz r3, 0(r4) lbl_80037AA0: /* 80037AA0 00033700 80 1F 00 00 */ lwz r0, 0(r31) /* 80037AA4 00033704 90 7F 0C 04 */ stw r3, 0xc04(r31) /* 80037AA8 00033708 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14 /* 80037AAC 0003370C 41 82 00 10 */ beq lbl_80037ABC /* 80037AB0 00033710 48 1C BD 61 */ bl func_80203810 /* 80037AB4 00033714 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80037AB8 00033718 48 1C 8D A1 */ bl func_80200858 lbl_80037ABC: /* 80037ABC 0003371C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80037AC0 00033720 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 80037AC4 00033724 D0 21 00 20 */ stfs f1, 0x20(r1) /* 80037AC8 00033728 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80037ACC 0003372C D0 21 00 28 */ stfs f1, 0x28(r1) /* 80037AD0 00033730 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80037AD4 00033734 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80037AD8 00033738 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80037ADC 0003373C D0 21 00 08 */ stfs f1, 8(r1) /* 80037AE0 00033740 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80037AE4 00033744 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80037AE8 00033748 A0 1F 05 0C */ lhz r0, 0x50c(r31) /* 80037AEC 0003374C 28 00 00 03 */ cmplwi r0, 3 /* 80037AF0 00033750 41 82 00 14 */ beq lbl_80037B04 /* 80037AF4 00033754 C0 02 82 58 */ lfs f0, lbl_80640858-_SDA2_BASE_(r2) /* 80037AF8 00033758 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80037AFC 0003375C D0 01 00 08 */ stfs f0, 8(r1) /* 80037B00 00033760 D0 21 00 10 */ stfs f1, 0x10(r1) lbl_80037B04: /* 80037B04 00033764 7F E3 FB 78 */ mr r3, r31 /* 80037B08 00033768 38 81 00 08 */ addi r4, r1, 8 /* 80037B0C 0003376C 48 00 0D 11 */ bl func_8003881C /* 80037B10 00033770 7F E3 FB 78 */ mr r3, r31 /* 80037B14 00033774 38 81 00 20 */ addi r4, r1, 0x20 /* 80037B18 00033778 48 00 0F B9 */ bl func_80038AD0 /* 80037B1C 0003377C 7F E3 FB 78 */ mr r3, r31 /* 80037B20 00033780 38 81 00 14 */ addi r4, r1, 0x14 /* 80037B24 00033784 48 00 0E 2D */ bl func_80038950 /* 80037B28 00033788 A0 1F 05 0C */ lhz r0, 0x50c(r31) /* 80037B2C 0003378C 28 00 00 01 */ cmplwi r0, 1 /* 80037B30 00033790 40 82 01 04 */ bne lbl_80037C34 /* 80037B34 00033794 A0 1F 05 10 */ lhz r0, 0x510(r31) /* 80037B38 00033798 2C 00 01 47 */ cmpwi r0, 0x147 /* 80037B3C 0003379C 41 82 00 14 */ beq lbl_80037B50 /* 80037B40 000337A0 40 80 00 F4 */ bge lbl_80037C34 /* 80037B44 000337A4 2C 00 01 3C */ cmpwi r0, 0x13c /* 80037B48 000337A8 41 82 00 E4 */ beq lbl_80037C2C /* 80037B4C 000337AC 48 00 00 E8 */ b lbl_80037C34 lbl_80037B50: /* 80037B50 000337B0 3C 80 09 31 */ lis r4, 0x09310C00@ha /* 80037B54 000337B4 80 7F 0C 48 */ lwz r3, 0xc48(r31) /* 80037B58 000337B8 38 84 0C 00 */ addi r4, r4, 0x09310C00@l /* 80037B5C 000337BC 48 1A 39 61 */ bl func_801DB4BC /* 80037B60 000337C0 2C 03 00 00 */ cmpwi r3, 0 /* 80037B64 000337C4 7C 7E 1B 78 */ mr r30, r3 /* 80037B68 000337C8 41 82 00 CC */ beq lbl_80037C34 /* 80037B6C 000337CC 3C 80 09 30 */ lis r4, 0x09300C00@ha /* 80037B70 000337D0 80 7F 0C 48 */ lwz r3, 0xc48(r31) /* 80037B74 000337D4 38 84 0C 00 */ addi r4, r4, 0x09300C00@l /* 80037B78 000337D8 48 1A 39 45 */ bl func_801DB4BC /* 80037B7C 000337DC 2C 03 00 00 */ cmpwi r3, 0 /* 80037B80 000337E0 7C 7D 1B 78 */ mr r29, r3 /* 80037B84 000337E4 41 82 00 B0 */ beq lbl_80037C34 /* 80037B88 000337E8 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80037B8C 000337EC 80 83 00 1C */ lwz r4, 0x1c(r3) /* 80037B90 000337F0 2C 04 00 00 */ cmpwi r4, 0 /* 80037B94 000337F4 40 82 00 0C */ bne lbl_80037BA0 /* 80037B98 000337F8 38 60 00 00 */ li r3, 0 /* 80037B9C 000337FC 48 00 00 20 */ b lbl_80037BBC lbl_80037BA0: /* 80037BA0 00033800 A0 03 00 E6 */ lhz r0, 0xe6(r3) /* 80037BA4 00033804 28 00 00 06 */ cmplwi r0, 6 /* 80037BA8 00033808 41 81 00 0C */ bgt lbl_80037BB4 /* 80037BAC 0003380C 38 60 00 00 */ li r3, 0 /* 80037BB0 00033810 48 00 00 0C */ b lbl_80037BBC lbl_80037BB4: /* 80037BB4 00033814 80 64 00 18 */ lwz r3, 0x18(r4) /* 80037BB8 00033818 80 63 00 14 */ lwz r3, 0x14(r3) lbl_80037BBC: /* 80037BBC 0003381C 2C 03 00 00 */ cmpwi r3, 0 /* 80037BC0 00033820 41 82 00 74 */ beq lbl_80037C34 /* 80037BC4 00033824 80 DF 05 18 */ lwz r6, 0x518(r31) /* 80037BC8 00033828 7F C4 F3 78 */ mr r4, r30 /* 80037BCC 0003382C 7F A5 EB 78 */ mr r5, r29 /* 80037BD0 00033830 38 ED A3 E4 */ addi r7, r13, lbl_8063F6A4-_SDA_BASE_ /* 80037BD4 00033834 48 1A F3 A5 */ bl func_801E6F78 /* 80037BD8 00033838 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80037BDC 0003383C 80 83 00 1C */ lwz r4, 0x1c(r3) /* 80037BE0 00033840 2C 04 00 00 */ cmpwi r4, 0 /* 80037BE4 00033844 40 82 00 0C */ bne lbl_80037BF0 /* 80037BE8 00033848 38 60 00 00 */ li r3, 0 /* 80037BEC 0003384C 48 00 00 20 */ b lbl_80037C0C lbl_80037BF0: /* 80037BF0 00033850 A0 03 00 E6 */ lhz r0, 0xe6(r3) /* 80037BF4 00033854 28 00 00 08 */ cmplwi r0, 8 /* 80037BF8 00033858 41 81 00 0C */ bgt lbl_80037C04 /* 80037BFC 0003385C 38 60 00 00 */ li r3, 0 /* 80037C00 00033860 48 00 00 0C */ b lbl_80037C0C lbl_80037C04: /* 80037C04 00033864 80 64 00 20 */ lwz r3, 0x20(r4) /* 80037C08 00033868 80 63 00 14 */ lwz r3, 0x14(r3) lbl_80037C0C: /* 80037C0C 0003386C 2C 03 00 00 */ cmpwi r3, 0 /* 80037C10 00033870 41 82 00 24 */ beq lbl_80037C34 /* 80037C14 00033874 80 DF 05 18 */ lwz r6, 0x518(r31) /* 80037C18 00033878 7F C4 F3 78 */ mr r4, r30 /* 80037C1C 0003387C 7F A5 EB 78 */ mr r5, r29 /* 80037C20 00033880 38 ED A3 E4 */ addi r7, r13, lbl_8063F6A4-_SDA_BASE_ /* 80037C24 00033884 48 1A F3 55 */ bl func_801E6F78 /* 80037C28 00033888 48 00 00 0C */ b lbl_80037C34 lbl_80037C2C: /* 80037C2C 0003388C 38 00 00 01 */ li r0, 1 /* 80037C30 00033890 98 1F 0D 89 */ stb r0, 0xd89(r31) lbl_80037C34: /* 80037C34 00033894 7F E3 FB 78 */ mr r3, r31 /* 80037C38 00033898 38 80 00 00 */ li r4, 0 /* 80037C3C 0003389C 48 00 46 21 */ bl func_8003C25C /* 80037C40 000338A0 7C 60 1B 78 */ mr r0, r3 /* 80037C44 000338A4 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80037C48 000338A8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80037C4C 000338AC 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 80037C50 000338B0 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 80037C54 000338B4 38 A0 00 01 */ li r5, 1 /* 80037C58 000338B8 38 C0 00 00 */ li r6, 0 /* 80037C5C 000338BC 38 E0 00 00 */ li r7, 0 /* 80037C60 000338C0 39 00 00 00 */ li r8, 0 /* 80037C64 000338C4 48 1B D1 91 */ bl func_801F4DF4 /* 80037C68 000338C8 38 00 00 00 */ li r0, 0 /* 80037C6C 000338CC 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80037C70 000338D0 98 1F 0B F6 */ stb r0, 0xbf6(r31) /* 80037C74 000338D4 38 80 00 01 */ li r4, 1 /* 80037C78 000338D8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80037C7C 000338DC 48 1B EB CD */ bl func_801F6848 /* 80037C80 000338E0 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 80037C84 000338E4 80 7F 0C 00 */ lwz r3, 0xc00(r31) /* 80037C88 000338E8 C0 04 01 20 */ lfs f0, 0x120(r4) /* 80037C8C 000338EC D0 1F 0C 0C */ stfs f0, 0xc0c(r31) /* 80037C90 000338F0 C0 04 01 24 */ lfs f0, 0x124(r4) /* 80037C94 000338F4 D0 1F 0C 10 */ stfs f0, 0xc10(r31) /* 80037C98 000338F8 C0 04 01 28 */ lfs f0, 0x128(r4) /* 80037C9C 000338FC D0 1F 0C 14 */ stfs f0, 0xc14(r31) /* 80037CA0 00033900 C0 04 01 2C */ lfs f0, 0x12c(r4) /* 80037CA4 00033904 D0 1F 0C 18 */ stfs f0, 0xc18(r31) /* 80037CA8 00033908 C0 04 01 30 */ lfs f0, 0x130(r4) /* 80037CAC 0003390C D0 1F 0C 1C */ stfs f0, 0xc1c(r31) /* 80037CB0 00033910 C0 04 01 34 */ lfs f0, 0x134(r4) /* 80037CB4 00033914 D0 1F 0C 20 */ stfs f0, 0xc20(r31) /* 80037CB8 00033918 80 04 01 38 */ lwz r0, 0x138(r4) /* 80037CBC 0003391C 90 1F 0C 24 */ stw r0, 0xc24(r31) /* 80037CC0 00033920 80 83 00 00 */ lwz r4, 0(r3) /* 80037CC4 00033924 80 04 00 24 */ lwz r0, 0x24(r4) /* 80037CC8 00033928 2C 00 00 00 */ cmpwi r0, 0 /* 80037CCC 0003392C 40 82 00 10 */ bne lbl_80037CDC /* 80037CD0 00033930 A0 1F 05 0C */ lhz r0, 0x50c(r31) /* 80037CD4 00033934 28 00 00 03 */ cmplwi r0, 3 /* 80037CD8 00033938 40 82 00 08 */ bne lbl_80037CE0 lbl_80037CDC: /* 80037CDC 0003393C 48 1C AC F5 */ bl func_802029D0 lbl_80037CE0: /* 80037CE0 00033940 A0 1F 05 0C */ lhz r0, 0x50c(r31) /* 80037CE4 00033944 28 00 00 02 */ cmplwi r0, 2 /* 80037CE8 00033948 40 82 00 0C */ bne lbl_80037CF4 /* 80037CEC 0003394C 7F E3 FB 78 */ mr r3, r31 /* 80037CF0 00033950 48 00 57 45 */ bl func_8003D434 lbl_80037CF4: /* 80037CF4 00033954 80 9F 00 00 */ lwz r4, 0(r31) /* 80037CF8 00033958 7F E3 FB 78 */ mr r3, r31 /* 80037CFC 0003395C 54 80 04 5E */ rlwinm r0, r4, 0, 0x11, 0xf /* 80037D00 00033960 54 84 07 FE */ clrlwi r4, r4, 0x1f /* 80037D04 00033964 90 1F 00 00 */ stw r0, 0(r31) /* 80037D08 00033968 48 00 00 25 */ bl func_80037D2C lbl_80037D0C: /* 80037D0C 0003396C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80037D10 00033970 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80037D14 00033974 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80037D18 00033978 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80037D1C 0003397C 7C 08 03 A6 */ mtlr r0 /* 80037D20 00033980 38 21 00 40 */ addi r1, r1, 0x40 /* 80037D24 00033984 4E 80 00 20 */ blr .global func_80037D28 func_80037D28: /* 80037D28 00033988 4B FF F8 7C */ b func_800375A4 .global func_80037D2C func_80037D2C: /* 80037D2C 0003398C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80037D30 00033990 7C 08 02 A6 */ mflr r0 /* 80037D34 00033994 90 01 00 14 */ stw r0, 0x14(r1) /* 80037D38 00033998 93 E1 00 0C */ stw r31, 0xc(r1) /* 80037D3C 0003399C 7C 7F 1B 78 */ mr r31, r3 /* 80037D40 000339A0 93 C1 00 08 */ stw r30, 8(r1) /* 80037D44 000339A4 7C 9E 23 78 */ mr r30, r4 /* 80037D48 000339A8 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 80037D4C 000339AC 2C 00 00 00 */ cmpwi r0, 0 /* 80037D50 000339B0 41 82 02 6C */ beq lbl_80037FBC /* 80037D54 000339B4 48 00 D8 3D */ bl func_80045590 /* 80037D58 000339B8 A0 1F 05 0C */ lhz r0, 0x50c(r31) /* 80037D5C 000339BC 28 00 00 01 */ cmplwi r0, 1 /* 80037D60 000339C0 40 82 00 10 */ bne lbl_80037D70 /* 80037D64 000339C4 A0 9F 0C 68 */ lhz r4, 0xc68(r31) /* 80037D68 000339C8 7F C5 F3 78 */ mr r5, r30 /* 80037D6C 000339CC 48 00 F1 95 */ bl func_80046F00 lbl_80037D70: /* 80037D70 000339D0 2C 1E 00 00 */ cmpwi r30, 0 /* 80037D74 000339D4 41 82 01 B4 */ beq lbl_80037F28 /* 80037D78 000339D8 80 7F 00 00 */ lwz r3, 0(r31) /* 80037D7C 000339DC 54 60 02 53 */ rlwinm. r0, r3, 0, 9, 9 /* 80037D80 000339E0 40 82 01 A8 */ bne lbl_80037F28 /* 80037D84 000339E4 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 80037D88 000339E8 40 82 02 34 */ bne lbl_80037FBC /* 80037D8C 000339EC 54 60 02 D7 */ rlwinm. r0, r3, 0, 0xb, 0xb /* 80037D90 000339F0 40 82 00 0C */ bne lbl_80037D9C /* 80037D94 000339F4 54 60 03 19 */ rlwinm. r0, r3, 0, 0xc, 0xc /* 80037D98 000339F8 41 82 00 C4 */ beq lbl_80037E5C lbl_80037D9C: /* 80037D9C 000339FC 80 BF 0C 04 */ lwz r5, 0xc04(r31) /* 80037DA0 00033A00 38 7F 05 24 */ addi r3, r31, 0x524 /* 80037DA4 00033A04 38 80 00 00 */ li r4, 0 /* 80037DA8 00033A08 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80037DAC 00033A0C 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 80037DB0 00033A10 B0 05 00 DC */ sth r0, 0xdc(r5) /* 80037DB4 00033A14 48 00 81 3D */ bl func_8003FEF0 /* 80037DB8 00033A18 38 00 00 02 */ li r0, 2 /* 80037DBC 00033A1C 38 A0 00 00 */ li r5, 0 /* 80037DC0 00033A20 7C 09 03 A6 */ mtctr r0 lbl_80037DC4: /* 80037DC4 00033A24 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 80037DC8 00033A28 7C 7F 02 14 */ add r3, r31, r0 /* 80037DCC 00033A2C 80 83 0C 90 */ lwz r4, 0xc90(r3) /* 80037DD0 00033A30 2C 04 00 00 */ cmpwi r4, 0 /* 80037DD4 00033A34 41 82 00 34 */ beq lbl_80037E08 /* 80037DD8 00033A38 3C 65 00 01 */ addis r3, r5, 1 /* 80037DDC 00033A3C 38 03 FF FF */ addi r0, r3, -1 /* 80037DE0 00033A40 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 80037DE4 00033A44 28 00 00 01 */ cmplwi r0, 1 /* 80037DE8 00033A48 41 81 00 14 */ bgt lbl_80037DFC /* 80037DEC 00033A4C A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037DF0 00033A50 60 00 00 02 */ ori r0, r0, 2 /* 80037DF4 00033A54 B0 04 00 10 */ sth r0, 0x10(r4) /* 80037DF8 00033A58 48 00 00 10 */ b lbl_80037E08 lbl_80037DFC: /* 80037DFC 00033A5C A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037E00 00033A60 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037E04 00033A64 B0 04 00 10 */ sth r0, 0x10(r4) lbl_80037E08: /* 80037E08 00033A68 38 A5 00 01 */ addi r5, r5, 1 /* 80037E0C 00033A6C 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 80037E10 00033A70 7C 7F 02 14 */ add r3, r31, r0 /* 80037E14 00033A74 80 83 0C 90 */ lwz r4, 0xc90(r3) /* 80037E18 00033A78 2C 04 00 00 */ cmpwi r4, 0 /* 80037E1C 00033A7C 41 82 00 34 */ beq lbl_80037E50 /* 80037E20 00033A80 3C 65 00 01 */ addis r3, r5, 1 /* 80037E24 00033A84 38 03 FF FF */ addi r0, r3, -1 /* 80037E28 00033A88 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 80037E2C 00033A8C 28 00 00 01 */ cmplwi r0, 1 /* 80037E30 00033A90 41 81 00 14 */ bgt lbl_80037E44 /* 80037E34 00033A94 A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037E38 00033A98 60 00 00 02 */ ori r0, r0, 2 /* 80037E3C 00033A9C B0 04 00 10 */ sth r0, 0x10(r4) /* 80037E40 00033AA0 48 00 00 10 */ b lbl_80037E50 lbl_80037E44: /* 80037E44 00033AA4 A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037E48 00033AA8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037E4C 00033AAC B0 04 00 10 */ sth r0, 0x10(r4) lbl_80037E50: /* 80037E50 00033AB0 38 A5 00 01 */ addi r5, r5, 1 /* 80037E54 00033AB4 42 00 FF 70 */ bdnz lbl_80037DC4 /* 80037E58 00033AB8 48 00 00 C0 */ b lbl_80037F18 lbl_80037E5C: /* 80037E5C 00033ABC 80 BF 0C 04 */ lwz r5, 0xc04(r31) /* 80037E60 00033AC0 38 7F 05 24 */ addi r3, r31, 0x524 /* 80037E64 00033AC4 38 80 00 01 */ li r4, 1 /* 80037E68 00033AC8 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80037E6C 00033ACC 60 00 00 01 */ ori r0, r0, 1 /* 80037E70 00033AD0 B0 05 00 DC */ sth r0, 0xdc(r5) /* 80037E74 00033AD4 48 00 80 7D */ bl func_8003FEF0 /* 80037E78 00033AD8 38 00 00 02 */ li r0, 2 /* 80037E7C 00033ADC 38 A0 00 00 */ li r5, 0 /* 80037E80 00033AE0 7C 09 03 A6 */ mtctr r0 lbl_80037E84: /* 80037E84 00033AE4 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 80037E88 00033AE8 7C 7F 02 14 */ add r3, r31, r0 /* 80037E8C 00033AEC 80 83 0C 90 */ lwz r4, 0xc90(r3) /* 80037E90 00033AF0 2C 04 00 00 */ cmpwi r4, 0 /* 80037E94 00033AF4 41 82 00 34 */ beq lbl_80037EC8 /* 80037E98 00033AF8 3C 65 00 01 */ addis r3, r5, 1 /* 80037E9C 00033AFC 38 03 FF FF */ addi r0, r3, -1 /* 80037EA0 00033B00 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 80037EA4 00033B04 28 00 00 01 */ cmplwi r0, 1 /* 80037EA8 00033B08 41 81 00 14 */ bgt lbl_80037EBC /* 80037EAC 00033B0C A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037EB0 00033B10 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037EB4 00033B14 B0 04 00 10 */ sth r0, 0x10(r4) /* 80037EB8 00033B18 48 00 00 10 */ b lbl_80037EC8 lbl_80037EBC: /* 80037EBC 00033B1C A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037EC0 00033B20 60 00 00 02 */ ori r0, r0, 2 /* 80037EC4 00033B24 B0 04 00 10 */ sth r0, 0x10(r4) lbl_80037EC8: /* 80037EC8 00033B28 38 A5 00 01 */ addi r5, r5, 1 /* 80037ECC 00033B2C 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 80037ED0 00033B30 7C 7F 02 14 */ add r3, r31, r0 /* 80037ED4 00033B34 80 83 0C 90 */ lwz r4, 0xc90(r3) /* 80037ED8 00033B38 2C 04 00 00 */ cmpwi r4, 0 /* 80037EDC 00033B3C 41 82 00 34 */ beq lbl_80037F10 /* 80037EE0 00033B40 3C 65 00 01 */ addis r3, r5, 1 /* 80037EE4 00033B44 38 03 FF FF */ addi r0, r3, -1 /* 80037EE8 00033B48 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 80037EEC 00033B4C 28 00 00 01 */ cmplwi r0, 1 /* 80037EF0 00033B50 41 81 00 14 */ bgt lbl_80037F04 /* 80037EF4 00033B54 A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037EF8 00033B58 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037EFC 00033B5C B0 04 00 10 */ sth r0, 0x10(r4) /* 80037F00 00033B60 48 00 00 10 */ b lbl_80037F10 lbl_80037F04: /* 80037F04 00033B64 A0 04 00 10 */ lhz r0, 0x10(r4) /* 80037F08 00033B68 60 00 00 02 */ ori r0, r0, 2 /* 80037F0C 00033B6C B0 04 00 10 */ sth r0, 0x10(r4) lbl_80037F10: /* 80037F10 00033B70 38 A5 00 01 */ addi r5, r5, 1 /* 80037F14 00033B74 42 00 FF 70 */ bdnz lbl_80037E84 lbl_80037F18: /* 80037F18 00033B78 80 1F 00 00 */ lwz r0, 0(r31) /* 80037F1C 00033B7C 60 00 00 01 */ ori r0, r0, 1 /* 80037F20 00033B80 90 1F 00 00 */ stw r0, 0(r31) /* 80037F24 00033B84 48 00 00 98 */ b lbl_80037FBC lbl_80037F28: /* 80037F28 00033B88 80 1F 00 00 */ lwz r0, 0(r31) /* 80037F2C 00033B8C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80037F30 00033B90 41 82 00 8C */ beq lbl_80037FBC /* 80037F34 00033B94 80 BF 0C 04 */ lwz r5, 0xc04(r31) /* 80037F38 00033B98 38 7F 05 24 */ addi r3, r31, 0x524 /* 80037F3C 00033B9C 38 80 00 00 */ li r4, 0 /* 80037F40 00033BA0 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80037F44 00033BA4 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 80037F48 00033BA8 B0 05 00 DC */ sth r0, 0xdc(r5) /* 80037F4C 00033BAC 48 00 7F A5 */ bl func_8003FEF0 /* 80037F50 00033BB0 80 7F 0C 90 */ lwz r3, 0xc90(r31) /* 80037F54 00033BB4 2C 03 00 00 */ cmpwi r3, 0 /* 80037F58 00033BB8 41 82 00 10 */ beq lbl_80037F68 /* 80037F5C 00033BBC A0 03 00 10 */ lhz r0, 0x10(r3) /* 80037F60 00033BC0 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037F64 00033BC4 B0 03 00 10 */ sth r0, 0x10(r3) lbl_80037F68: /* 80037F68 00033BC8 80 7F 0C 94 */ lwz r3, 0xc94(r31) /* 80037F6C 00033BCC 2C 03 00 00 */ cmpwi r3, 0 /* 80037F70 00033BD0 41 82 00 10 */ beq lbl_80037F80 /* 80037F74 00033BD4 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80037F78 00033BD8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037F7C 00033BDC B0 03 00 10 */ sth r0, 0x10(r3) lbl_80037F80: /* 80037F80 00033BE0 80 7F 0C 98 */ lwz r3, 0xc98(r31) /* 80037F84 00033BE4 2C 03 00 00 */ cmpwi r3, 0 /* 80037F88 00033BE8 41 82 00 10 */ beq lbl_80037F98 /* 80037F8C 00033BEC A0 03 00 10 */ lhz r0, 0x10(r3) /* 80037F90 00033BF0 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037F94 00033BF4 B0 03 00 10 */ sth r0, 0x10(r3) lbl_80037F98: /* 80037F98 00033BF8 80 7F 0C 9C */ lwz r3, 0xc9c(r31) /* 80037F9C 00033BFC 2C 03 00 00 */ cmpwi r3, 0 /* 80037FA0 00033C00 41 82 00 10 */ beq lbl_80037FB0 /* 80037FA4 00033C04 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80037FA8 00033C08 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037FAC 00033C0C B0 03 00 10 */ sth r0, 0x10(r3) lbl_80037FB0: /* 80037FB0 00033C10 80 1F 00 00 */ lwz r0, 0(r31) /* 80037FB4 00033C14 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80037FB8 00033C18 90 1F 00 00 */ stw r0, 0(r31) lbl_80037FBC: /* 80037FBC 00033C1C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80037FC0 00033C20 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80037FC4 00033C24 83 C1 00 08 */ lwz r30, 8(r1) /* 80037FC8 00033C28 7C 08 03 A6 */ mtlr r0 /* 80037FCC 00033C2C 38 21 00 10 */ addi r1, r1, 0x10 /* 80037FD0 00033C30 4E 80 00 20 */ blr .global func_80037FD4 func_80037FD4: /* 80037FD4 00033C34 2C 04 00 00 */ cmpwi r4, 0 /* 80037FD8 00033C38 41 82 00 14 */ beq lbl_80037FEC /* 80037FDC 00033C3C 80 03 00 00 */ lwz r0, 0(r3) /* 80037FE0 00033C40 60 00 00 02 */ ori r0, r0, 2 /* 80037FE4 00033C44 90 03 00 00 */ stw r0, 0(r3) /* 80037FE8 00033C48 48 00 00 10 */ b lbl_80037FF8 lbl_80037FEC: /* 80037FEC 00033C4C 80 03 00 00 */ lwz r0, 0(r3) /* 80037FF0 00033C50 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80037FF4 00033C54 90 03 00 00 */ stw r0, 0(r3) lbl_80037FF8: /* 80037FF8 00033C58 2C 05 00 00 */ cmpwi r5, 0 /* 80037FFC 00033C5C 41 82 00 14 */ beq lbl_80038010 /* 80038000 00033C60 80 03 00 00 */ lwz r0, 0(r3) /* 80038004 00033C64 60 00 00 04 */ ori r0, r0, 4 /* 80038008 00033C68 90 03 00 00 */ stw r0, 0(r3) /* 8003800C 00033C6C 48 00 00 10 */ b lbl_8003801C lbl_80038010: /* 80038010 00033C70 80 03 00 00 */ lwz r0, 0(r3) /* 80038014 00033C74 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80038018 00033C78 90 03 00 00 */ stw r0, 0(r3) lbl_8003801C: /* 8003801C 00033C7C 48 00 00 04 */ b func_80038020 .global func_80038020 func_80038020: /* 80038020 00033C80 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80038024 00033C84 7C 08 02 A6 */ mflr r0 /* 80038028 00033C88 90 01 00 14 */ stw r0, 0x14(r1) /* 8003802C 00033C8C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80038030 00033C90 93 C1 00 08 */ stw r30, 8(r1) /* 80038034 00033C94 7C 7E 1B 78 */ mr r30, r3 /* 80038038 00033C98 4B FF B0 51 */ bl func_80033088 /* 8003803C 00033C9C 2C 03 00 00 */ cmpwi r3, 0 /* 80038040 00033CA0 7C 7F 1B 78 */ mr r31, r3 /* 80038044 00033CA4 41 82 03 20 */ beq lbl_80038364 /* 80038048 00033CA8 80 BE 0C 04 */ lwz r5, 0xc04(r30) /* 8003804C 00033CAC 2C 05 00 00 */ cmpwi r5, 0 /* 80038050 00033CB0 41 82 03 14 */ beq lbl_80038364 /* 80038054 00033CB4 80 7E 00 00 */ lwz r3, 0(r30) /* 80038058 00033CB8 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8003805C 00033CBC 41 82 00 14 */ beq lbl_80038070 /* 80038060 00033CC0 54 60 07 7D */ rlwinm. r0, r3, 0, 0x1d, 0x1e /* 80038064 00033CC4 41 82 00 0C */ beq lbl_80038070 /* 80038068 00033CC8 54 60 02 53 */ rlwinm. r0, r3, 0, 9, 9 /* 8003806C 00033CCC 41 82 00 80 */ beq lbl_800380EC lbl_80038070: /* 80038070 00033CD0 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80038074 00033CD4 38 7E 05 24 */ addi r3, r30, 0x524 /* 80038078 00033CD8 38 80 00 00 */ li r4, 0 /* 8003807C 00033CDC 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 80038080 00033CE0 B0 05 00 DC */ sth r0, 0xdc(r5) /* 80038084 00033CE4 48 00 7E 6D */ bl func_8003FEF0 /* 80038088 00033CE8 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 8003808C 00033CEC 2C 03 00 00 */ cmpwi r3, 0 /* 80038090 00033CF0 41 82 00 10 */ beq lbl_800380A0 /* 80038094 00033CF4 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038098 00033CF8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8003809C 00033CFC B0 03 00 10 */ sth r0, 0x10(r3) lbl_800380A0: /* 800380A0 00033D00 80 7E 0C 94 */ lwz r3, 0xc94(r30) /* 800380A4 00033D04 2C 03 00 00 */ cmpwi r3, 0 /* 800380A8 00033D08 41 82 00 10 */ beq lbl_800380B8 /* 800380AC 00033D0C A0 03 00 10 */ lhz r0, 0x10(r3) /* 800380B0 00033D10 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800380B4 00033D14 B0 03 00 10 */ sth r0, 0x10(r3) lbl_800380B8: /* 800380B8 00033D18 80 7E 0C 98 */ lwz r3, 0xc98(r30) /* 800380BC 00033D1C 2C 03 00 00 */ cmpwi r3, 0 /* 800380C0 00033D20 41 82 00 10 */ beq lbl_800380D0 /* 800380C4 00033D24 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800380C8 00033D28 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800380CC 00033D2C B0 03 00 10 */ sth r0, 0x10(r3) lbl_800380D0: /* 800380D0 00033D30 80 7E 0C 9C */ lwz r3, 0xc9c(r30) /* 800380D4 00033D34 2C 03 00 00 */ cmpwi r3, 0 /* 800380D8 00033D38 41 82 02 8C */ beq lbl_80038364 /* 800380DC 00033D3C A0 03 00 10 */ lhz r0, 0x10(r3) /* 800380E0 00033D40 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800380E4 00033D44 B0 03 00 10 */ sth r0, 0x10(r3) /* 800380E8 00033D48 48 00 02 7C */ b lbl_80038364 lbl_800380EC: /* 800380EC 00033D4C 54 60 03 19 */ rlwinm. r0, r3, 0, 0xc, 0xc /* 800380F0 00033D50 40 82 00 0C */ bne lbl_800380FC /* 800380F4 00033D54 54 60 02 D7 */ rlwinm. r0, r3, 0, 0xb, 0xb /* 800380F8 00033D58 41 82 00 E8 */ beq lbl_800381E0 lbl_800380FC: /* 800380FC 00033D5C A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80038100 00033D60 38 7E 05 24 */ addi r3, r30, 0x524 /* 80038104 00033D64 38 80 00 00 */ li r4, 0 /* 80038108 00033D68 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 8003810C 00033D6C B0 05 00 DC */ sth r0, 0xdc(r5) /* 80038110 00033D70 48 00 7D E1 */ bl func_8003FEF0 /* 80038114 00033D74 38 00 00 02 */ li r0, 2 /* 80038118 00033D78 38 80 00 00 */ li r4, 0 /* 8003811C 00033D7C 7C 09 03 A6 */ mtctr r0 lbl_80038120: /* 80038120 00033D80 3C 64 00 01 */ addis r3, r4, 1 /* 80038124 00033D84 38 03 FF FF */ addi r0, r3, -1 /* 80038128 00033D88 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 8003812C 00033D8C 28 00 00 01 */ cmplwi r0, 1 /* 80038130 00033D90 41 81 00 28 */ bgt lbl_80038158 /* 80038134 00033D94 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 80038138 00033D98 7C 7E 02 14 */ add r3, r30, r0 /* 8003813C 00033D9C 80 63 0C 90 */ lwz r3, 0xc90(r3) /* 80038140 00033DA0 2C 03 00 00 */ cmpwi r3, 0 /* 80038144 00033DA4 41 82 00 34 */ beq lbl_80038178 /* 80038148 00033DA8 A0 03 00 10 */ lhz r0, 0x10(r3) /* 8003814C 00033DAC 60 00 00 02 */ ori r0, r0, 2 /* 80038150 00033DB0 B0 03 00 10 */ sth r0, 0x10(r3) /* 80038154 00033DB4 48 00 00 24 */ b lbl_80038178 lbl_80038158: /* 80038158 00033DB8 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 8003815C 00033DBC 7C 7E 02 14 */ add r3, r30, r0 /* 80038160 00033DC0 80 63 0C 90 */ lwz r3, 0xc90(r3) /* 80038164 00033DC4 2C 03 00 00 */ cmpwi r3, 0 /* 80038168 00033DC8 41 82 00 10 */ beq lbl_80038178 /* 8003816C 00033DCC A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038170 00033DD0 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80038174 00033DD4 B0 03 00 10 */ sth r0, 0x10(r3) lbl_80038178: /* 80038178 00033DD8 38 84 00 01 */ addi r4, r4, 1 /* 8003817C 00033DDC 3C 64 00 01 */ addis r3, r4, 1 /* 80038180 00033DE0 38 03 FF FF */ addi r0, r3, -1 /* 80038184 00033DE4 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 80038188 00033DE8 28 00 00 01 */ cmplwi r0, 1 /* 8003818C 00033DEC 41 81 00 28 */ bgt lbl_800381B4 /* 80038190 00033DF0 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 80038194 00033DF4 7C 7E 02 14 */ add r3, r30, r0 /* 80038198 00033DF8 80 63 0C 90 */ lwz r3, 0xc90(r3) /* 8003819C 00033DFC 2C 03 00 00 */ cmpwi r3, 0 /* 800381A0 00033E00 41 82 00 34 */ beq lbl_800381D4 /* 800381A4 00033E04 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800381A8 00033E08 60 00 00 02 */ ori r0, r0, 2 /* 800381AC 00033E0C B0 03 00 10 */ sth r0, 0x10(r3) /* 800381B0 00033E10 48 00 00 24 */ b lbl_800381D4 lbl_800381B4: /* 800381B4 00033E14 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 800381B8 00033E18 7C 7E 02 14 */ add r3, r30, r0 /* 800381BC 00033E1C 80 63 0C 90 */ lwz r3, 0xc90(r3) /* 800381C0 00033E20 2C 03 00 00 */ cmpwi r3, 0 /* 800381C4 00033E24 41 82 00 10 */ beq lbl_800381D4 /* 800381C8 00033E28 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800381CC 00033E2C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800381D0 00033E30 B0 03 00 10 */ sth r0, 0x10(r3) lbl_800381D4: /* 800381D4 00033E34 38 84 00 01 */ addi r4, r4, 1 /* 800381D8 00033E38 42 00 FF 48 */ bdnz lbl_80038120 /* 800381DC 00033E3C 48 00 00 7C */ b lbl_80038258 lbl_800381E0: /* 800381E0 00033E40 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 800381E4 00033E44 38 7E 05 24 */ addi r3, r30, 0x524 /* 800381E8 00033E48 38 80 00 01 */ li r4, 1 /* 800381EC 00033E4C 60 00 00 01 */ ori r0, r0, 1 /* 800381F0 00033E50 B0 05 00 DC */ sth r0, 0xdc(r5) /* 800381F4 00033E54 48 00 7C FD */ bl func_8003FEF0 /* 800381F8 00033E58 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 800381FC 00033E5C 2C 03 00 00 */ cmpwi r3, 0 /* 80038200 00033E60 41 82 00 10 */ beq lbl_80038210 /* 80038204 00033E64 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038208 00033E68 60 00 00 02 */ ori r0, r0, 2 /* 8003820C 00033E6C B0 03 00 10 */ sth r0, 0x10(r3) lbl_80038210: /* 80038210 00033E70 80 7E 0C 94 */ lwz r3, 0xc94(r30) /* 80038214 00033E74 2C 03 00 00 */ cmpwi r3, 0 /* 80038218 00033E78 41 82 00 10 */ beq lbl_80038228 /* 8003821C 00033E7C A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038220 00033E80 60 00 00 02 */ ori r0, r0, 2 /* 80038224 00033E84 B0 03 00 10 */ sth r0, 0x10(r3) lbl_80038228: /* 80038228 00033E88 80 7E 0C 98 */ lwz r3, 0xc98(r30) /* 8003822C 00033E8C 2C 03 00 00 */ cmpwi r3, 0 /* 80038230 00033E90 41 82 00 10 */ beq lbl_80038240 /* 80038234 00033E94 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038238 00033E98 60 00 00 02 */ ori r0, r0, 2 /* 8003823C 00033E9C B0 03 00 10 */ sth r0, 0x10(r3) lbl_80038240: /* 80038240 00033EA0 80 7E 0C 9C */ lwz r3, 0xc9c(r30) /* 80038244 00033EA4 2C 03 00 00 */ cmpwi r3, 0 /* 80038248 00033EA8 41 82 00 10 */ beq lbl_80038258 /* 8003824C 00033EAC A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038250 00033EB0 60 00 00 02 */ ori r0, r0, 2 /* 80038254 00033EB4 B0 03 00 10 */ sth r0, 0x10(r3) lbl_80038258: /* 80038258 00033EB8 80 7E 00 00 */ lwz r3, 0(r30) /* 8003825C 00033EBC 54 60 07 7C */ rlwinm r0, r3, 0, 0x1d, 0x1e /* 80038260 00033EC0 28 00 00 06 */ cmplwi r0, 6 /* 80038264 00033EC4 40 82 00 60 */ bne lbl_800382C4 /* 80038268 00033EC8 80 BE 0C 04 */ lwz r5, 0xc04(r30) /* 8003826C 00033ECC 3B E0 00 00 */ li r31, 0 /* 80038270 00033ED0 38 7E 05 24 */ addi r3, r30, 0x524 /* 80038274 00033ED4 38 80 00 00 */ li r4, 0 /* 80038278 00033ED8 93 E5 00 3C */ stw r31, 0x3c(r5) /* 8003827C 00033EDC 48 00 7D D9 */ bl func_80040054 /* 80038280 00033EE0 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 80038284 00033EE4 2C 03 00 00 */ cmpwi r3, 0 /* 80038288 00033EE8 41 82 00 08 */ beq lbl_80038290 /* 8003828C 00033EEC 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_80038290: /* 80038290 00033EF0 80 7E 0C 94 */ lwz r3, 0xc94(r30) /* 80038294 00033EF4 2C 03 00 00 */ cmpwi r3, 0 /* 80038298 00033EF8 41 82 00 08 */ beq lbl_800382A0 /* 8003829C 00033EFC 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_800382A0: /* 800382A0 00033F00 80 7E 0C 98 */ lwz r3, 0xc98(r30) /* 800382A4 00033F04 2C 03 00 00 */ cmpwi r3, 0 /* 800382A8 00033F08 41 82 00 08 */ beq lbl_800382B0 /* 800382AC 00033F0C 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_800382B0: /* 800382B0 00033F10 80 7E 0C 9C */ lwz r3, 0xc9c(r30) /* 800382B4 00033F14 2C 03 00 00 */ cmpwi r3, 0 /* 800382B8 00033F18 41 82 00 AC */ beq lbl_80038364 /* 800382BC 00033F1C 93 E3 01 2C */ stw r31, 0x12c(r3) /* 800382C0 00033F20 48 00 00 A4 */ b lbl_80038364 lbl_800382C4: /* 800382C4 00033F24 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e /* 800382C8 00033F28 38 80 00 00 */ li r4, 0 /* 800382CC 00033F2C 41 82 00 0C */ beq lbl_800382D8 /* 800382D0 00033F30 38 80 00 00 */ li r4, 0 /* 800382D4 00033F34 48 00 00 10 */ b lbl_800382E4 lbl_800382D8: /* 800382D8 00033F38 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 800382DC 00033F3C 41 82 00 08 */ beq lbl_800382E4 /* 800382E0 00033F40 38 80 00 01 */ li r4, 1 lbl_800382E4: /* 800382E4 00033F44 7F E3 FB 78 */ mr r3, r31 /* 800382E8 00033F48 4B FF B8 95 */ bl func_80033B7C /* 800382EC 00033F4C 2C 03 00 00 */ cmpwi r3, 0 /* 800382F0 00033F50 41 82 00 74 */ beq lbl_80038364 /* 800382F4 00033F54 4B FF D6 7D */ bl func_80035970 /* 800382F8 00033F58 80 BE 0C 04 */ lwz r5, 0xc04(r30) /* 800382FC 00033F5C 7C 7F 1B 78 */ mr r31, r3 /* 80038300 00033F60 7F E4 FB 78 */ mr r4, r31 /* 80038304 00033F64 90 65 00 3C */ stw r3, 0x3c(r5) /* 80038308 00033F68 38 7E 05 24 */ addi r3, r30, 0x524 /* 8003830C 00033F6C 48 00 7D 49 */ bl func_80040054 /* 80038310 00033F70 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 80038314 00033F74 2C 03 00 00 */ cmpwi r3, 0 /* 80038318 00033F78 41 82 00 08 */ beq lbl_80038320 /* 8003831C 00033F7C 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_80038320: /* 80038320 00033F80 80 7E 0C 94 */ lwz r3, 0xc94(r30) /* 80038324 00033F84 2C 03 00 00 */ cmpwi r3, 0 /* 80038328 00033F88 41 82 00 08 */ beq lbl_80038330 /* 8003832C 00033F8C 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_80038330: /* 80038330 00033F90 80 7E 0C 98 */ lwz r3, 0xc98(r30) /* 80038334 00033F94 2C 03 00 00 */ cmpwi r3, 0 /* 80038338 00033F98 41 82 00 08 */ beq lbl_80038340 /* 8003833C 00033F9C 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_80038340: /* 80038340 00033FA0 80 7E 0C 9C */ lwz r3, 0xc9c(r30) /* 80038344 00033FA4 2C 03 00 00 */ cmpwi r3, 0 /* 80038348 00033FA8 41 82 00 08 */ beq lbl_80038350 /* 8003834C 00033FAC 93 E3 01 2C */ stw r31, 0x12c(r3) lbl_80038350: /* 80038350 00033FB0 80 1E 00 00 */ lwz r0, 0(r30) /* 80038354 00033FB4 7F C3 F3 78 */ mr r3, r30 /* 80038358 00033FB8 54 05 F7 FE */ rlwinm r5, r0, 0x1e, 0x1f, 0x1f /* 8003835C 00033FBC 54 04 FF FE */ rlwinm r4, r0, 0x1f, 0x1f, 0x1f /* 80038360 00033FC0 48 00 5B 31 */ bl func_8003DE90 lbl_80038364: /* 80038364 00033FC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80038368 00033FC8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003836C 00033FCC 83 C1 00 08 */ lwz r30, 8(r1) /* 80038370 00033FD0 7C 08 03 A6 */ mtlr r0 /* 80038374 00033FD4 38 21 00 10 */ addi r1, r1, 0x10 /* 80038378 00033FD8 4E 80 00 20 */ blr .global func_8003837C func_8003837C: /* 8003837C 00033FDC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80038380 00033FE0 7C 08 02 A6 */ mflr r0 /* 80038384 00033FE4 90 01 00 14 */ stw r0, 0x14(r1) /* 80038388 00033FE8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003838C 00033FEC 7C 7F 1B 78 */ mr r31, r3 /* 80038390 00033FF0 80 C3 0C 04 */ lwz r6, 0xc04(r3) /* 80038394 00033FF4 2C 06 00 00 */ cmpwi r6, 0 /* 80038398 00033FF8 41 82 01 6C */ beq lbl_80038504 /* 8003839C 00033FFC 80 A3 00 00 */ lwz r5, 0(r3) /* 800383A0 00034000 54 A0 02 D7 */ rlwinm. r0, r5, 0, 0xb, 0xb /* 800383A4 00034004 40 82 00 0C */ bne lbl_800383B0 /* 800383A8 00034008 54 A0 03 19 */ rlwinm. r0, r5, 0, 0xc, 0xc /* 800383AC 0003400C 41 82 01 58 */ beq lbl_80038504 lbl_800383B0: /* 800383B0 00034010 2C 04 00 00 */ cmpwi r4, 0 /* 800383B4 00034014 41 82 00 CC */ beq lbl_80038480 /* 800383B8 00034018 A0 06 00 DC */ lhz r0, 0xdc(r6) /* 800383BC 0003401C 38 80 00 01 */ li r4, 1 /* 800383C0 00034020 38 63 05 24 */ addi r3, r3, 0x524 /* 800383C4 00034024 60 00 00 01 */ ori r0, r0, 1 /* 800383C8 00034028 B0 06 00 DC */ sth r0, 0xdc(r6) /* 800383CC 0003402C 48 00 7B 25 */ bl func_8003FEF0 /* 800383D0 00034030 38 00 00 02 */ li r0, 2 /* 800383D4 00034034 38 A0 00 00 */ li r5, 0 /* 800383D8 00034038 7C 09 03 A6 */ mtctr r0 lbl_800383DC: /* 800383DC 0003403C 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 800383E0 00034040 7C 7F 02 14 */ add r3, r31, r0 /* 800383E4 00034044 80 83 0C 90 */ lwz r4, 0xc90(r3) /* 800383E8 00034048 2C 04 00 00 */ cmpwi r4, 0 /* 800383EC 0003404C 41 82 00 34 */ beq lbl_80038420 /* 800383F0 00034050 3C 65 00 01 */ addis r3, r5, 1 /* 800383F4 00034054 38 03 FF FF */ addi r0, r3, -1 /* 800383F8 00034058 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 800383FC 0003405C 28 00 00 01 */ cmplwi r0, 1 /* 80038400 00034060 41 81 00 14 */ bgt lbl_80038414 /* 80038404 00034064 A0 04 00 10 */ lhz r0, 0x10(r4) /* 80038408 00034068 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8003840C 0003406C B0 04 00 10 */ sth r0, 0x10(r4) /* 80038410 00034070 48 00 00 10 */ b lbl_80038420 lbl_80038414: /* 80038414 00034074 A0 04 00 10 */ lhz r0, 0x10(r4) /* 80038418 00034078 60 00 00 02 */ ori r0, r0, 2 /* 8003841C 0003407C B0 04 00 10 */ sth r0, 0x10(r4) lbl_80038420: /* 80038420 00034080 38 A5 00 01 */ addi r5, r5, 1 /* 80038424 00034084 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 80038428 00034088 7C 7F 02 14 */ add r3, r31, r0 /* 8003842C 0003408C 80 83 0C 90 */ lwz r4, 0xc90(r3) /* 80038430 00034090 2C 04 00 00 */ cmpwi r4, 0 /* 80038434 00034094 41 82 00 34 */ beq lbl_80038468 /* 80038438 00034098 3C 65 00 01 */ addis r3, r5, 1 /* 8003843C 0003409C 38 03 FF FF */ addi r0, r3, -1 /* 80038440 000340A0 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 80038444 000340A4 28 00 00 01 */ cmplwi r0, 1 /* 80038448 000340A8 41 81 00 14 */ bgt lbl_8003845C /* 8003844C 000340AC A0 04 00 10 */ lhz r0, 0x10(r4) /* 80038450 000340B0 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80038454 000340B4 B0 04 00 10 */ sth r0, 0x10(r4) /* 80038458 000340B8 48 00 00 10 */ b lbl_80038468 lbl_8003845C: /* 8003845C 000340BC A0 04 00 10 */ lhz r0, 0x10(r4) /* 80038460 000340C0 60 00 00 02 */ ori r0, r0, 2 /* 80038464 000340C4 B0 04 00 10 */ sth r0, 0x10(r4) lbl_80038468: /* 80038468 000340C8 38 A5 00 01 */ addi r5, r5, 1 /* 8003846C 000340CC 42 00 FF 70 */ bdnz lbl_800383DC /* 80038470 000340D0 80 1F 00 00 */ lwz r0, 0(r31) /* 80038474 000340D4 60 00 00 01 */ ori r0, r0, 1 /* 80038478 000340D8 90 1F 00 00 */ stw r0, 0(r31) /* 8003847C 000340DC 48 00 00 88 */ b lbl_80038504 lbl_80038480: /* 80038480 000340E0 A0 06 00 DC */ lhz r0, 0xdc(r6) /* 80038484 000340E4 38 80 00 00 */ li r4, 0 /* 80038488 000340E8 38 63 05 24 */ addi r3, r3, 0x524 /* 8003848C 000340EC 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 80038490 000340F0 B0 06 00 DC */ sth r0, 0xdc(r6) /* 80038494 000340F4 48 00 7A 5D */ bl func_8003FEF0 /* 80038498 000340F8 80 7F 0C 90 */ lwz r3, 0xc90(r31) /* 8003849C 000340FC 2C 03 00 00 */ cmpwi r3, 0 /* 800384A0 00034100 41 82 00 10 */ beq lbl_800384B0 /* 800384A4 00034104 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800384A8 00034108 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800384AC 0003410C B0 03 00 10 */ sth r0, 0x10(r3) lbl_800384B0: /* 800384B0 00034110 80 7F 0C 94 */ lwz r3, 0xc94(r31) /* 800384B4 00034114 2C 03 00 00 */ cmpwi r3, 0 /* 800384B8 00034118 41 82 00 10 */ beq lbl_800384C8 /* 800384BC 0003411C A0 03 00 10 */ lhz r0, 0x10(r3) /* 800384C0 00034120 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800384C4 00034124 B0 03 00 10 */ sth r0, 0x10(r3) lbl_800384C8: /* 800384C8 00034128 80 7F 0C 98 */ lwz r3, 0xc98(r31) /* 800384CC 0003412C 2C 03 00 00 */ cmpwi r3, 0 /* 800384D0 00034130 41 82 00 10 */ beq lbl_800384E0 /* 800384D4 00034134 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800384D8 00034138 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800384DC 0003413C B0 03 00 10 */ sth r0, 0x10(r3) lbl_800384E0: /* 800384E0 00034140 80 7F 0C 9C */ lwz r3, 0xc9c(r31) /* 800384E4 00034144 2C 03 00 00 */ cmpwi r3, 0 /* 800384E8 00034148 41 82 00 10 */ beq lbl_800384F8 /* 800384EC 0003414C A0 03 00 10 */ lhz r0, 0x10(r3) /* 800384F0 00034150 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 800384F4 00034154 B0 03 00 10 */ sth r0, 0x10(r3) lbl_800384F8: /* 800384F8 00034158 80 1F 00 00 */ lwz r0, 0(r31) /* 800384FC 0003415C 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80038500 00034160 90 1F 00 00 */ stw r0, 0(r31) lbl_80038504: /* 80038504 00034164 80 01 00 14 */ lwz r0, 0x14(r1) /* 80038508 00034168 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003850C 0003416C 7C 08 03 A6 */ mtlr r0 /* 80038510 00034170 38 21 00 10 */ addi r1, r1, 0x10 /* 80038514 00034174 4E 80 00 20 */ blr .global func_80038518 func_80038518: /* 80038518 00034178 2C 04 00 00 */ cmpwi r4, 0 /* 8003851C 0003417C 4D 82 00 20 */ beqlr /* 80038520 00034180 38 A0 00 1F */ li r5, 0x1f /* 80038524 00034184 38 63 0D 94 */ addi r3, r3, 0xd94 /* 80038528 00034188 48 19 5E 68 */ b strncpy /* 8003852C 0003418C 4E 80 00 20 */ blr .global func_80038530 func_80038530: /* 80038530 00034190 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80038534 00034194 7C 08 02 A6 */ mflr r0 /* 80038538 00034198 90 01 00 54 */ stw r0, 0x54(r1) /* 8003853C 0003419C DB E1 00 40 */ stfd f31, 0x40(r1) /* 80038540 000341A0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80038544 000341A4 2C 04 01 00 */ cmpwi r4, 0x100 /* 80038548 000341A8 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003854C 000341AC 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80038550 000341B0 7C 7F 1B 78 */ mr r31, r3 /* 80038554 000341B4 93 C1 00 38 */ stw r30, 0x38(r1) /* 80038558 000341B8 93 A1 00 34 */ stw r29, 0x34(r1) /* 8003855C 000341BC 7C 9D 23 78 */ mr r29, r4 /* 80038560 000341C0 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80038564 000341C4 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80038568 000341C8 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8003856C 000341CC D0 01 00 08 */ stfs f0, 8(r1) /* 80038570 000341D0 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80038574 000341D4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80038578 000341D8 B0 83 0C 68 */ sth r4, 0xc68(r3) /* 8003857C 000341DC 40 82 00 1C */ bne lbl_80038598 /* 80038580 000341E0 38 81 00 14 */ addi r4, r1, 0x14 /* 80038584 000341E4 48 00 03 41 */ bl func_800388C4 /* 80038588 000341E8 7F E3 FB 78 */ mr r3, r31 /* 8003858C 000341EC 38 81 00 08 */ addi r4, r1, 8 /* 80038590 000341F0 48 00 05 41 */ bl func_80038AD0 /* 80038594 000341F4 48 00 02 28 */ b lbl_800387BC lbl_80038598: /* 80038598 000341F8 48 00 CF F9 */ bl func_80045590 /* 8003859C 000341FC 7C 7E 1B 78 */ mr r30, r3 /* 800385A0 00034200 38 80 00 00 */ li r4, 0 /* 800385A4 00034204 48 00 D7 59 */ bl func_80045CFC /* 800385A8 00034208 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800385AC 0003420C 57 A0 06 31 */ rlwinm. r0, r29, 0, 0x18, 0x18 /* 800385B0 00034210 D0 1F 0D 80 */ stfs f0, 0xd80(r31) /* 800385B4 00034214 40 82 01 7C */ bne lbl_80038730 /* 800385B8 00034218 7F C3 F3 78 */ mr r3, r30 /* 800385BC 0003421C 7F A4 EB 78 */ mr r4, r29 /* 800385C0 00034220 38 A1 00 14 */ addi r5, r1, 0x14 /* 800385C4 00034224 38 C1 00 0C */ addi r6, r1, 0xc /* 800385C8 00034228 38 E0 00 01 */ li r7, 1 /* 800385CC 0003422C 48 00 D6 4D */ bl func_80045C18 /* 800385D0 00034230 2C 03 00 00 */ cmpwi r3, 0 /* 800385D4 00034234 41 82 01 E8 */ beq lbl_800387BC /* 800385D8 00034238 80 7F 00 00 */ lwz r3, 0(r31) /* 800385DC 0003423C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800385E0 00034240 54 60 04 E7 */ rlwinm. r0, r3, 0, 0x13, 0x13 /* 800385E4 00034244 54 60 02 D2 */ rlwinm r0, r3, 0, 0xb, 9 /* 800385E8 00034248 D0 1F 0D 78 */ stfs f0, 0xd78(r31) /* 800385EC 0003424C 90 1F 00 00 */ stw r0, 0(r31) /* 800385F0 00034250 41 82 00 44 */ beq lbl_80038634 /* 800385F4 00034254 7F E3 FB 78 */ mr r3, r31 /* 800385F8 00034258 38 80 00 00 */ li r4, 0 /* 800385FC 0003425C 48 00 3C 61 */ bl func_8003C25C /* 80038600 00034260 54 7E 04 3E */ clrlwi r30, r3, 0x10 /* 80038604 00034264 7F E3 FB 78 */ mr r3, r31 /* 80038608 00034268 38 80 00 0A */ li r4, 0xa /* 8003860C 0003426C 48 00 3C 51 */ bl func_8003C25C /* 80038610 00034270 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80038614 00034274 7C 00 F0 40 */ cmplw r0, r30 /* 80038618 00034278 41 82 00 0C */ beq lbl_80038624 /* 8003861C 0003427C 3B C0 00 0A */ li r30, 0xa /* 80038620 00034280 48 00 00 20 */ b lbl_80038640 lbl_80038624: /* 80038624 00034284 C0 02 82 5C */ lfs f0, lbl_8064085C-_SDA2_BASE_(r2) /* 80038628 00034288 3B C0 00 00 */ li r30, 0 /* 8003862C 0003428C D0 01 00 18 */ stfs f0, 0x18(r1) /* 80038630 00034290 48 00 00 10 */ b lbl_80038640 lbl_80038634: /* 80038634 00034294 54 00 4F FE */ rlwinm r0, r0, 9, 0x1f, 0x1f /* 80038638 00034298 7C 00 00 D0 */ neg r0, r0 /* 8003863C 0003429C 54 1E 06 F6 */ rlwinm r30, r0, 0, 0x1b, 0x1b lbl_80038640: /* 80038640 000342A0 7F E3 FB 78 */ mr r3, r31 /* 80038644 000342A4 57 C4 06 3E */ clrlwi r4, r30, 0x18 /* 80038648 000342A8 38 A0 00 02 */ li r5, 2 /* 8003864C 000342AC 48 00 17 75 */ bl func_80039DC0 /* 80038650 000342B0 57 A0 F0 02 */ slwi r0, r29, 0x1e /* 80038654 000342B4 57 A4 0F FE */ srwi r4, r29, 0x1f /* 80038658 000342B8 7C 64 00 50 */ subf r3, r4, r0 /* 8003865C 000342BC C0 02 82 60 */ lfs f0, lbl_80640860-_SDA2_BASE_(r2) /* 80038660 000342C0 54 63 10 3E */ rotlwi r3, r3, 2 /* 80038664 000342C4 3C 00 43 30 */ lis r0, 0x4330 /* 80038668 000342C8 7C 63 22 14 */ add r3, r3, r4 /* 8003866C 000342CC 90 01 00 20 */ stw r0, 0x20(r1) /* 80038670 000342D0 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80038674 000342D4 C8 42 82 68 */ lfd f2, lbl_80640868-_SDA2_BASE_(r2) /* 80038678 000342D8 90 01 00 24 */ stw r0, 0x24(r1) /* 8003867C 000342DC EC 20 00 72 */ fmuls f1, f0, f1 /* 80038680 000342E0 7F E3 FB 78 */ mr r3, r31 /* 80038684 000342E4 57 C4 06 3E */ clrlwi r4, r30, 0x18 /* 80038688 000342E8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 8003868C 000342EC EC 00 10 28 */ fsubs f0, f0, f2 /* 80038690 000342F0 EC 20 00 72 */ fmuls f1, f0, f1 /* 80038694 000342F4 48 00 0B 6D */ bl func_80039200 /* 80038698 000342F8 7F E3 FB 78 */ mr r3, r31 /* 8003869C 000342FC 38 81 00 08 */ addi r4, r1, 8 /* 800386A0 00034300 48 00 04 31 */ bl func_80038AD0 /* 800386A4 00034304 7F E3 FB 78 */ mr r3, r31 /* 800386A8 00034308 38 81 00 14 */ addi r4, r1, 0x14 /* 800386AC 0003430C 48 00 02 19 */ bl func_800388C4 /* 800386B0 00034310 80 7F 00 00 */ lwz r3, 0(r31) /* 800386B4 00034314 54 60 02 D7 */ rlwinm. r0, r3, 0, 0xb, 0xb /* 800386B8 00034318 40 82 00 0C */ bne lbl_800386C4 /* 800386BC 0003431C 54 60 03 19 */ rlwinm. r0, r3, 0, 0xc, 0xc /* 800386C0 00034320 41 82 00 FC */ beq lbl_800387BC lbl_800386C4: /* 800386C4 00034324 C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) /* 800386C8 00034328 3B A0 00 00 */ li r29, 0 lbl_800386CC: /* 800386CC 0003432C 57 A0 13 BA */ rlwinm r0, r29, 2, 0xe, 0x1d /* 800386D0 00034330 7F DF 02 14 */ add r30, r31, r0 /* 800386D4 00034334 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 800386D8 00034338 2C 03 00 00 */ cmpwi r3, 0 /* 800386DC 0003433C 41 82 00 44 */ beq lbl_80038720 /* 800386E0 00034340 3C 9D 00 01 */ addis r4, r29, 1 /* 800386E4 00034344 38 04 FF FF */ addi r0, r4, -1 /* 800386E8 00034348 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 800386EC 0003434C 28 00 00 01 */ cmplwi r0, 1 /* 800386F0 00034350 41 81 00 30 */ bgt lbl_80038720 /* 800386F4 00034354 81 83 01 00 */ lwz r12, 0x100(r3) /* 800386F8 00034358 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 800386FC 0003435C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80038700 00034360 7D 89 03 A6 */ mtctr r12 /* 80038704 00034364 4E 80 04 21 */ bctrl /* 80038708 00034368 80 7E 0C 90 */ lwz r3, 0xc90(r30) /* 8003870C 0003436C 80 03 01 04 */ lwz r0, 0x104(r3) /* 80038710 00034370 60 00 00 01 */ ori r0, r0, 1 /* 80038714 00034374 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80038718 00034378 90 03 01 04 */ stw r0, 0x104(r3) /* 8003871C 0003437C D3 E3 01 08 */ stfs f31, 0x108(r3) lbl_80038720: /* 80038720 00034380 3B BD 00 01 */ addi r29, r29, 1 /* 80038724 00034384 28 1D 00 04 */ cmplwi r29, 4 /* 80038728 00034388 41 80 FF A4 */ blt lbl_800386CC /* 8003872C 0003438C 48 00 00 90 */ b lbl_800387BC lbl_80038730: /* 80038730 00034390 7F C3 F3 78 */ mr r3, r30 /* 80038734 00034394 57 A4 07 BE */ clrlwi r4, r29, 0x1e /* 80038738 00034398 38 A1 00 14 */ addi r5, r1, 0x14 /* 8003873C 0003439C 38 C1 00 0C */ addi r6, r1, 0xc /* 80038740 000343A0 48 00 D4 49 */ bl func_80045B88 /* 80038744 000343A4 2C 03 00 00 */ cmpwi r3, 0 /* 80038748 000343A8 41 82 00 74 */ beq lbl_800387BC /* 8003874C 000343AC 7F E3 FB 78 */ mr r3, r31 /* 80038750 000343B0 38 80 00 00 */ li r4, 0 /* 80038754 000343B4 38 A0 00 02 */ li r5, 2 /* 80038758 000343B8 48 00 16 69 */ bl func_80039DC0 /* 8003875C 000343BC 57 A0 F0 02 */ slwi r0, r29, 0x1e /* 80038760 000343C0 57 A4 0F FE */ srwi r4, r29, 0x1f /* 80038764 000343C4 7C 64 00 50 */ subf r3, r4, r0 /* 80038768 000343C8 C0 02 82 64 */ lfs f0, lbl_80640864-_SDA2_BASE_(r2) /* 8003876C 000343CC 54 63 10 3E */ rotlwi r3, r3, 2 /* 80038770 000343D0 3C 00 43 30 */ lis r0, 0x4330 /* 80038774 000343D4 7C 63 22 14 */ add r3, r3, r4 /* 80038778 000343D8 90 01 00 20 */ stw r0, 0x20(r1) /* 8003877C 000343DC 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 80038780 000343E0 C8 42 82 68 */ lfd f2, lbl_80640868-_SDA2_BASE_(r2) /* 80038784 000343E4 90 01 00 24 */ stw r0, 0x24(r1) /* 80038788 000343E8 EC 20 00 72 */ fmuls f1, f0, f1 /* 8003878C 000343EC 7F E3 FB 78 */ mr r3, r31 /* 80038790 000343F0 38 80 00 00 */ li r4, 0 /* 80038794 000343F4 C8 01 00 20 */ lfd f0, 0x20(r1) /* 80038798 000343F8 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003879C 000343FC EC 20 00 72 */ fmuls f1, f0, f1 /* 800387A0 00034400 48 00 0A 61 */ bl func_80039200 /* 800387A4 00034404 7F E3 FB 78 */ mr r3, r31 /* 800387A8 00034408 38 81 00 08 */ addi r4, r1, 8 /* 800387AC 0003440C 48 00 03 25 */ bl func_80038AD0 /* 800387B0 00034410 7F E3 FB 78 */ mr r3, r31 /* 800387B4 00034414 38 81 00 14 */ addi r4, r1, 0x14 /* 800387B8 00034418 48 00 01 0D */ bl func_800388C4 lbl_800387BC: /* 800387BC 0003441C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800387C0 00034420 80 01 00 54 */ lwz r0, 0x54(r1) /* 800387C4 00034424 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800387C8 00034428 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800387CC 0003442C 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800387D0 00034430 83 A1 00 34 */ lwz r29, 0x34(r1) /* 800387D4 00034434 7C 08 03 A6 */ mtlr r0 /* 800387D8 00034438 38 21 00 50 */ addi r1, r1, 0x50 /* 800387DC 0003443C 4E 80 00 20 */ blr .global func_800387E0 func_800387E0: /* 800387E0 00034440 80 04 0C 04 */ lwz r0, 0xc04(r4) /* 800387E4 00034444 2C 00 00 00 */ cmpwi r0, 0 /* 800387E8 00034448 41 82 00 20 */ beq lbl_80038808 /* 800387EC 0003444C C0 44 0C BC */ lfs f2, 0xcbc(r4) /* 800387F0 00034450 C0 24 0C B8 */ lfs f1, 0xcb8(r4) /* 800387F4 00034454 C0 04 0C B4 */ lfs f0, 0xcb4(r4) /* 800387F8 00034458 D0 03 00 00 */ stfs f0, 0(r3) /* 800387FC 0003445C D0 23 00 04 */ stfs f1, 4(r3) /* 80038800 00034460 D0 43 00 08 */ stfs f2, 8(r3) /* 80038804 00034464 4E 80 00 20 */ blr lbl_80038808: /* 80038808 00034468 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003880C 0003446C D0 03 00 00 */ stfs f0, 0(r3) /* 80038810 00034470 D0 03 00 04 */ stfs f0, 4(r3) /* 80038814 00034474 D0 03 00 08 */ stfs f0, 8(r3) /* 80038818 00034478 4E 80 00 20 */ blr .global func_8003881C func_8003881C: /* 8003881C 0003447C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80038820 00034480 7C 08 02 A6 */ mflr r0 /* 80038824 00034484 90 01 00 14 */ stw r0, 0x14(r1) /* 80038828 00034488 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003882C 0003448C 7C 9F 23 78 */ mr r31, r4 /* 80038830 00034490 93 C1 00 08 */ stw r30, 8(r1) /* 80038834 00034494 7C 7E 1B 78 */ mr r30, r3 /* 80038838 00034498 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 8003883C 0003449C 2C 05 00 00 */ cmpwi r5, 0 /* 80038840 000344A0 41 82 00 6C */ beq lbl_800388AC /* 80038844 000344A4 80 65 00 08 */ lwz r3, 8(r5) /* 80038848 000344A8 2C 03 00 00 */ cmpwi r3, 0 /* 8003884C 000344AC 41 82 00 30 */ beq lbl_8003887C /* 80038850 000344B0 80 63 00 00 */ lwz r3, 0(r3) /* 80038854 000344B4 2C 03 00 00 */ cmpwi r3, 0 /* 80038858 000344B8 41 82 00 24 */ beq lbl_8003887C /* 8003885C 000344BC C0 04 00 00 */ lfs f0, 0(r4) /* 80038860 000344C0 C0 24 00 04 */ lfs f1, 4(r4) /* 80038864 000344C4 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80038868 000344C8 C0 04 00 08 */ lfs f0, 8(r4) /* 8003886C 000344CC 38 80 00 01 */ li r4, 1 /* 80038870 000344D0 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80038874 000344D4 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80038878 000344D8 48 1B 9E 41 */ bl func_801F26B8 lbl_8003887C: /* 8003887C 000344DC 80 BF 00 00 */ lwz r5, 0(r31) /* 80038880 000344E0 38 7E 00 04 */ addi r3, r30, 4 /* 80038884 000344E4 80 9F 00 04 */ lwz r4, 4(r31) /* 80038888 000344E8 80 1F 00 08 */ lwz r0, 8(r31) /* 8003888C 000344EC 90 BE 0C B4 */ stw r5, 0xcb4(r30) /* 80038890 000344F0 90 9E 0C B8 */ stw r4, 0xcb8(r30) /* 80038894 000344F4 90 1E 0C BC */ stw r0, 0xcbc(r30) /* 80038898 000344F8 48 01 7A F1 */ bl func_80050388 /* 8003889C 000344FC 38 7E 00 28 */ addi r3, r30, 0x28 /* 800388A0 00034500 48 01 7A E9 */ bl func_80050388 /* 800388A4 00034504 38 7E 00 4C */ addi r3, r30, 0x4c /* 800388A8 00034508 48 01 7A E1 */ bl func_80050388 lbl_800388AC: /* 800388AC 0003450C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800388B0 00034510 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800388B4 00034514 83 C1 00 08 */ lwz r30, 8(r1) /* 800388B8 00034518 7C 08 03 A6 */ mtlr r0 /* 800388BC 0003451C 38 21 00 10 */ addi r1, r1, 0x10 /* 800388C0 00034520 4E 80 00 20 */ blr .global func_800388C4 func_800388C4: /* 800388C4 00034524 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800388C8 00034528 7C 08 02 A6 */ mflr r0 /* 800388CC 0003452C 90 01 00 14 */ stw r0, 0x14(r1) /* 800388D0 00034530 93 E1 00 0C */ stw r31, 0xc(r1) /* 800388D4 00034534 7C 7F 1B 78 */ mr r31, r3 /* 800388D8 00034538 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 800388DC 0003453C 2C 00 00 00 */ cmpwi r0, 0 /* 800388E0 00034540 41 82 00 20 */ beq lbl_80038900 /* 800388E4 00034544 4B FF FF 39 */ bl func_8003881C /* 800388E8 00034548 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 800388EC 0003454C 38 80 00 01 */ li r4, 1 /* 800388F0 00034550 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 800388F4 00034554 48 1B DF 55 */ bl func_801F6848 /* 800388F8 00034558 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 800388FC 0003455C 48 1B D1 A1 */ bl func_801F5A9C lbl_80038900: /* 80038900 00034560 80 01 00 14 */ lwz r0, 0x14(r1) /* 80038904 00034564 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80038908 00034568 7C 08 03 A6 */ mtlr r0 /* 8003890C 0003456C 38 21 00 10 */ addi r1, r1, 0x10 /* 80038910 00034570 4E 80 00 20 */ blr .global func_80038914 func_80038914: /* 80038914 00034574 80 04 0C 04 */ lwz r0, 0xc04(r4) /* 80038918 00034578 2C 00 00 00 */ cmpwi r0, 0 /* 8003891C 0003457C 41 82 00 20 */ beq lbl_8003893C /* 80038920 00034580 C0 44 0C D4 */ lfs f2, 0xcd4(r4) /* 80038924 00034584 C0 24 0C D0 */ lfs f1, 0xcd0(r4) /* 80038928 00034588 C0 04 0C CC */ lfs f0, 0xccc(r4) /* 8003892C 0003458C D0 03 00 00 */ stfs f0, 0(r3) /* 80038930 00034590 D0 23 00 04 */ stfs f1, 4(r3) /* 80038934 00034594 D0 43 00 08 */ stfs f2, 8(r3) /* 80038938 00034598 4E 80 00 20 */ blr lbl_8003893C: /* 8003893C 0003459C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80038940 000345A0 D0 03 00 00 */ stfs f0, 0(r3) /* 80038944 000345A4 D0 03 00 04 */ stfs f0, 4(r3) /* 80038948 000345A8 D0 03 00 08 */ stfs f0, 8(r3) /* 8003894C 000345AC 4E 80 00 20 */ blr .global func_80038950 func_80038950: /* 80038950 000345B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80038954 000345B4 7C 08 02 A6 */ mflr r0 /* 80038958 000345B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003895C 000345BC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80038960 000345C0 7C 9F 23 78 */ mr r31, r4 /* 80038964 000345C4 93 C1 00 08 */ stw r30, 8(r1) /* 80038968 000345C8 7C 7E 1B 78 */ mr r30, r3 /* 8003896C 000345CC 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 80038970 000345D0 2C 05 00 00 */ cmpwi r5, 0 /* 80038974 000345D4 41 82 01 08 */ beq lbl_80038A7C /* 80038978 000345D8 80 65 00 08 */ lwz r3, 8(r5) /* 8003897C 000345DC 2C 03 00 00 */ cmpwi r3, 0 /* 80038980 000345E0 41 82 00 CC */ beq lbl_80038A4C /* 80038984 000345E4 80 63 00 00 */ lwz r3, 0(r3) /* 80038988 000345E8 2C 03 00 00 */ cmpwi r3, 0 /* 8003898C 000345EC 41 82 00 C0 */ beq lbl_80038A4C /* 80038990 000345F0 C0 04 00 00 */ lfs f0, 0(r4) /* 80038994 000345F4 C0 42 82 70 */ lfs f2, lbl_80640870-_SDA2_BASE_(r2) /* 80038998 000345F8 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8003899C 000345FC C0 24 00 04 */ lfs f1, 4(r4) /* 800389A0 00034600 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 800389A4 00034604 C0 04 00 08 */ lfs f0, 8(r4) /* 800389A8 00034608 D0 23 00 4C */ stfs f1, 0x4c(r3) /* 800389AC 0003460C D0 03 00 50 */ stfs f0, 0x50(r3) /* 800389B0 00034610 40 80 00 2C */ bge lbl_800389DC /* 800389B4 00034614 C0 23 00 48 */ lfs f1, 0x48(r3) /* 800389B8 00034618 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 800389BC 0003461C FC 01 18 40 */ fcmpo cr0, f1, f3 /* 800389C0 00034620 40 81 00 1C */ ble lbl_800389DC /* 800389C4 00034624 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800389C8 00034628 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800389CC 0003462C 40 80 00 08 */ bge lbl_800389D4 /* 800389D0 00034630 48 00 00 08 */ b lbl_800389D8 lbl_800389D4: /* 800389D4 00034634 FC 60 10 90 */ fmr f3, f2 lbl_800389D8: /* 800389D8 00034638 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_800389DC: /* 800389DC 0003463C C0 43 00 4C */ lfs f2, 0x4c(r3) /* 800389E0 00034640 C0 22 82 70 */ lfs f1, lbl_80640870-_SDA2_BASE_(r2) /* 800389E4 00034644 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800389E8 00034648 40 80 00 28 */ bge lbl_80038A10 /* 800389EC 0003464C C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 800389F0 00034650 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800389F4 00034654 40 81 00 1C */ ble lbl_80038A10 /* 800389F8 00034658 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800389FC 0003465C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80038A00 00034660 40 80 00 08 */ bge lbl_80038A08 /* 80038A04 00034664 48 00 00 08 */ b lbl_80038A0C lbl_80038A08: /* 80038A08 00034668 FC 60 08 90 */ fmr f3, f1 lbl_80038A0C: /* 80038A0C 0003466C D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_80038A10: /* 80038A10 00034670 C0 43 00 50 */ lfs f2, 0x50(r3) /* 80038A14 00034674 C0 22 82 70 */ lfs f1, lbl_80640870-_SDA2_BASE_(r2) /* 80038A18 00034678 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80038A1C 0003467C 40 80 00 28 */ bge lbl_80038A44 /* 80038A20 00034680 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 80038A24 00034684 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80038A28 00034688 40 81 00 1C */ ble lbl_80038A44 /* 80038A2C 0003468C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80038A30 00034690 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80038A34 00034694 40 80 00 08 */ bge lbl_80038A3C /* 80038A38 00034698 48 00 00 08 */ b lbl_80038A40 lbl_80038A3C: /* 80038A3C 0003469C FC 60 08 90 */ fmr f3, f1 lbl_80038A40: /* 80038A40 000346A0 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_80038A44: /* 80038A44 000346A4 38 80 00 01 */ li r4, 1 /* 80038A48 000346A8 48 1B 9C 71 */ bl func_801F26B8 lbl_80038A4C: /* 80038A4C 000346AC 80 BF 00 00 */ lwz r5, 0(r31) /* 80038A50 000346B0 38 7E 00 DC */ addi r3, r30, 0xdc /* 80038A54 000346B4 80 9F 00 04 */ lwz r4, 4(r31) /* 80038A58 000346B8 80 1F 00 08 */ lwz r0, 8(r31) /* 80038A5C 000346BC 90 BE 0C CC */ stw r5, 0xccc(r30) /* 80038A60 000346C0 90 9E 0C D0 */ stw r4, 0xcd0(r30) /* 80038A64 000346C4 90 1E 0C D4 */ stw r0, 0xcd4(r30) /* 80038A68 000346C8 48 01 79 21 */ bl func_80050388 /* 80038A6C 000346CC 38 7E 01 00 */ addi r3, r30, 0x100 /* 80038A70 000346D0 48 01 79 19 */ bl func_80050388 /* 80038A74 000346D4 38 7E 01 24 */ addi r3, r30, 0x124 /* 80038A78 000346D8 48 01 79 11 */ bl func_80050388 lbl_80038A7C: /* 80038A7C 000346DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80038A80 000346E0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80038A84 000346E4 83 C1 00 08 */ lwz r30, 8(r1) /* 80038A88 000346E8 7C 08 03 A6 */ mtlr r0 /* 80038A8C 000346EC 38 21 00 10 */ addi r1, r1, 0x10 /* 80038A90 000346F0 4E 80 00 20 */ blr .global func_80038A94 func_80038A94: /* 80038A94 000346F4 80 04 0C 04 */ lwz r0, 0xc04(r4) /* 80038A98 000346F8 2C 00 00 00 */ cmpwi r0, 0 /* 80038A9C 000346FC 41 82 00 20 */ beq lbl_80038ABC /* 80038AA0 00034700 C0 44 0C C8 */ lfs f2, 0xcc8(r4) /* 80038AA4 00034704 C0 24 0C C4 */ lfs f1, 0xcc4(r4) /* 80038AA8 00034708 C0 04 0C C0 */ lfs f0, 0xcc0(r4) /* 80038AAC 0003470C D0 03 00 00 */ stfs f0, 0(r3) /* 80038AB0 00034710 D0 23 00 04 */ stfs f1, 4(r3) /* 80038AB4 00034714 D0 43 00 08 */ stfs f2, 8(r3) /* 80038AB8 00034718 4E 80 00 20 */ blr lbl_80038ABC: /* 80038ABC 0003471C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80038AC0 00034720 D0 03 00 00 */ stfs f0, 0(r3) /* 80038AC4 00034724 D0 03 00 04 */ stfs f0, 4(r3) /* 80038AC8 00034728 D0 03 00 08 */ stfs f0, 8(r3) /* 80038ACC 0003472C 4E 80 00 20 */ blr .global func_80038AD0 func_80038AD0: /* 80038AD0 00034730 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80038AD4 00034734 7C 08 02 A6 */ mflr r0 /* 80038AD8 00034738 90 01 00 24 */ stw r0, 0x24(r1) /* 80038ADC 0003473C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80038AE0 00034740 7C 7F 1B 78 */ mr r31, r3 /* 80038AE4 00034744 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 80038AE8 00034748 2C 00 00 00 */ cmpwi r0, 0 /* 80038AEC 0003474C 41 82 00 8C */ beq lbl_80038B78 /* 80038AF0 00034750 80 C4 00 00 */ lwz r6, 0(r4) /* 80038AF4 00034754 80 A4 00 04 */ lwz r5, 4(r4) /* 80038AF8 00034758 80 04 00 08 */ lwz r0, 8(r4) /* 80038AFC 0003475C 90 C3 0C C0 */ stw r6, 0xcc0(r3) /* 80038B00 00034760 90 A3 0C C4 */ stw r5, 0xcc4(r3) /* 80038B04 00034764 90 03 0C C8 */ stw r0, 0xcc8(r3) /* 80038B08 00034768 38 61 00 08 */ addi r3, r1, 8 /* 80038B0C 0003476C 48 1E AB B5 */ bl func_802236C0 /* 80038B10 00034770 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80038B14 00034774 80 63 00 08 */ lwz r3, 8(r3) /* 80038B18 00034778 2C 03 00 00 */ cmpwi r3, 0 /* 80038B1C 0003477C 41 82 00 44 */ beq lbl_80038B60 /* 80038B20 00034780 80 63 00 00 */ lwz r3, 0(r3) /* 80038B24 00034784 2C 03 00 00 */ cmpwi r3, 0 /* 80038B28 00034788 41 82 00 38 */ beq lbl_80038B60 /* 80038B2C 0003478C C0 01 00 08 */ lfs f0, 8(r1) /* 80038B30 00034790 38 80 00 01 */ li r4, 1 /* 80038B34 00034794 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80038B38 00034798 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80038B3C 0003479C D0 03 00 30 */ stfs f0, 0x30(r3) /* 80038B40 000347A0 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80038B44 000347A4 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80038B48 000347A8 C0 01 00 14 */ lfs f0, 0x14(r1) /* 80038B4C 000347AC D0 03 00 38 */ stfs f0, 0x38(r3) /* 80038B50 000347B0 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80038B54 000347B4 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80038B58 000347B8 B0 03 00 10 */ sth r0, 0x10(r3) /* 80038B5C 000347BC 48 1B 9B 5D */ bl func_801F26B8 lbl_80038B60: /* 80038B60 000347C0 38 7F 00 70 */ addi r3, r31, 0x70 /* 80038B64 000347C4 48 01 78 25 */ bl func_80050388 /* 80038B68 000347C8 38 7F 00 94 */ addi r3, r31, 0x94 /* 80038B6C 000347CC 48 01 78 1D */ bl func_80050388 /* 80038B70 000347D0 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 80038B74 000347D4 48 01 78 15 */ bl func_80050388 lbl_80038B78: /* 80038B78 000347D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80038B7C 000347DC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80038B80 000347E0 7C 08 03 A6 */ mtlr r0 /* 80038B84 000347E4 38 21 00 20 */ addi r1, r1, 0x20 /* 80038B88 000347E8 4E 80 00 20 */ blr .global func_80038B8C func_80038B8C: /* 80038B8C 000347EC 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80038B90 000347F0 7C 08 02 A6 */ mflr r0 /* 80038B94 000347F4 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80038B98 000347F8 DB E1 00 90 */ stfd f31, 0x90(r1) /* 80038B9C 000347FC F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80038BA0 00034800 DB C1 00 80 */ stfd f30, 0x80(r1) /* 80038BA4 00034804 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80038BA8 00034808 DB A1 00 70 */ stfd f29, 0x70(r1) /* 80038BAC 0003480C F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80038BB0 00034810 3C 00 43 30 */ lis r0, 0x4330 /* 80038BB4 00034814 C3 C2 82 78 */ lfs f30, lbl_80640878-_SDA2_BASE_(r2) /* 80038BB8 00034818 93 E1 00 6C */ stw r31, 0x6c(r1) /* 80038BBC 0003481C 7C 9F 23 78 */ mr r31, r4 /* 80038BC0 00034820 93 C1 00 68 */ stw r30, 0x68(r1) /* 80038BC4 00034824 7C 7E 1B 78 */ mr r30, r3 /* 80038BC8 00034828 7F C4 F3 78 */ mr r4, r30 /* 80038BCC 0003482C 38 61 00 20 */ addi r3, r1, 0x20 /* 80038BD0 00034830 90 01 00 48 */ stw r0, 0x48(r1) /* 80038BD4 00034834 90 01 00 50 */ stw r0, 0x50(r1) /* 80038BD8 00034838 4B FF FE BD */ bl func_80038A94 /* 80038BDC 0003483C C3 A1 00 24 */ lfs f29, 0x24(r1) /* 80038BE0 00034840 7F C4 F3 78 */ mr r4, r30 /* 80038BE4 00034844 38 61 00 14 */ addi r3, r1, 0x14 /* 80038BE8 00034848 4B FF FB F9 */ bl func_800387E0 /* 80038BEC 0003484C 7F E3 FB 78 */ mr r3, r31 /* 80038BF0 00034850 38 81 00 14 */ addi r4, r1, 0x14 /* 80038BF4 00034854 38 A1 00 2C */ addi r5, r1, 0x2c /* 80038BF8 00034858 48 24 40 F1 */ bl func_8027CCE8 /* 80038BFC 0003485C C0 41 00 34 */ lfs f2, 0x34(r1) /* 80038C00 00034860 C0 21 00 2C */ lfs f1, 0x2c(r1) /* 80038C04 00034864 48 19 B9 D9 */ bl atan2 /* 80038C08 00034868 EC 5D F0 24 */ fdivs f2, f29, f30 /* 80038C0C 0003486C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80038C10 00034870 FC 40 10 1E */ fctiwz f2, f2 /* 80038C14 00034874 FF E0 08 18 */ frsp f31, f1 /* 80038C18 00034878 FC 1D 00 40 */ fcmpo cr0, f29, f0 /* 80038C1C 0003487C D8 41 00 58 */ stfd f2, 0x58(r1) /* 80038C20 00034880 80 61 00 5C */ lwz r3, 0x5c(r1) /* 80038C24 00034884 40 80 00 38 */ bge lbl_80038C5C /* 80038C28 00034888 38 03 FF FF */ addi r0, r3, -1 /* 80038C2C 0003488C 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 80038C30 00034890 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80038C34 00034894 90 61 00 4C */ stw r3, 0x4c(r1) /* 80038C38 00034898 C8 42 82 68 */ lfd f2, lbl_80640868-_SDA2_BASE_(r2) /* 80038C3C 0003489C 90 01 00 54 */ stw r0, 0x54(r1) /* 80038C40 000348A0 C8 21 00 48 */ lfd f1, 0x48(r1) /* 80038C44 000348A4 C8 01 00 50 */ lfd f0, 0x50(r1) /* 80038C48 000348A8 EC 21 10 28 */ fsubs f1, f1, f2 /* 80038C4C 000348AC EC 00 10 28 */ fsubs f0, f0, f2 /* 80038C50 000348B0 EC 21 07 B2 */ fmuls f1, f1, f30 /* 80038C54 000348B4 EC 40 07 B2 */ fmuls f2, f0, f30 /* 80038C58 000348B8 48 00 00 3C */ b lbl_80038C94 lbl_80038C5C: /* 80038C5C 000348BC 38 03 00 01 */ addi r0, r3, 1 /* 80038C60 000348C0 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 80038C64 000348C4 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80038C68 000348C8 90 61 00 4C */ stw r3, 0x4c(r1) /* 80038C6C 000348CC C8 42 82 68 */ lfd f2, lbl_80640868-_SDA2_BASE_(r2) /* 80038C70 000348D0 90 01 00 54 */ stw r0, 0x54(r1) /* 80038C74 000348D4 C8 21 00 48 */ lfd f1, 0x48(r1) /* 80038C78 000348D8 C8 01 00 50 */ lfd f0, 0x50(r1) /* 80038C7C 000348DC EC 21 10 28 */ fsubs f1, f1, f2 /* 80038C80 000348E0 EC 00 10 28 */ fsubs f0, f0, f2 /* 80038C84 000348E4 EC 41 07 B2 */ fmuls f2, f1, f30 /* 80038C88 000348E8 EC 20 07 B2 */ fmuls f1, f0, f30 /* 80038C8C 000348EC 48 00 00 08 */ b lbl_80038C94 lbl_80038C90: /* 80038C90 000348F0 EF FF F0 2A */ fadds f31, f31, f30 lbl_80038C94: /* 80038C94 000348F4 FC 1F 10 40 */ fcmpo cr0, f31, f2 /* 80038C98 000348F8 41 80 FF F8 */ blt lbl_80038C90 /* 80038C9C 000348FC 48 00 00 08 */ b lbl_80038CA4 lbl_80038CA0: /* 80038CA0 00034900 EF FF F0 28 */ fsubs f31, f31, f30 lbl_80038CA4: /* 80038CA4 00034904 FC 1F 08 40 */ fcmpo cr0, f31, f1 /* 80038CA8 00034908 41 81 FF F8 */ bgt lbl_80038CA0 /* 80038CAC 0003490C 7F C4 F3 78 */ mr r4, r30 /* 80038CB0 00034910 38 61 00 08 */ addi r3, r1, 8 /* 80038CB4 00034914 4B FF FD E1 */ bl func_80038A94 /* 80038CB8 00034918 C0 21 00 08 */ lfs f1, 8(r1) /* 80038CBC 0003491C 7F C3 F3 78 */ mr r3, r30 /* 80038CC0 00034920 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80038CC4 00034924 38 81 00 38 */ addi r4, r1, 0x38 /* 80038CC8 00034928 D0 21 00 38 */ stfs f1, 0x38(r1) /* 80038CCC 0003492C D0 01 00 40 */ stfs f0, 0x40(r1) /* 80038CD0 00034930 D3 E1 00 3C */ stfs f31, 0x3c(r1) /* 80038CD4 00034934 4B FF FD FD */ bl func_80038AD0 /* 80038CD8 00034938 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 80038CDC 0003493C CB E1 00 90 */ lfd f31, 0x90(r1) /* 80038CE0 00034940 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80038CE4 00034944 CB C1 00 80 */ lfd f30, 0x80(r1) /* 80038CE8 00034948 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80038CEC 0003494C CB A1 00 70 */ lfd f29, 0x70(r1) /* 80038CF0 00034950 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 80038CF4 00034954 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80038CF8 00034958 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80038CFC 0003495C 7C 08 03 A6 */ mtlr r0 /* 80038D00 00034960 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80038D04 00034964 4E 80 00 20 */ blr .global func_80038D08 func_80038D08: /* 80038D08 00034968 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80038D0C 0003496C 7C 08 02 A6 */ mflr r0 /* 80038D10 00034970 90 01 00 84 */ stw r0, 0x84(r1) /* 80038D14 00034974 DB E1 00 70 */ stfd f31, 0x70(r1) /* 80038D18 00034978 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 80038D1C 0003497C DB C1 00 60 */ stfd f30, 0x60(r1) /* 80038D20 00034980 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 80038D24 00034984 FF C0 08 90 */ fmr f30, f1 /* 80038D28 00034988 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80038D2C 0003498C 7C BF 2B 78 */ mr r31, r5 /* 80038D30 00034990 93 C1 00 58 */ stw r30, 0x58(r1) /* 80038D34 00034994 7C 9E 23 78 */ mr r30, r4 /* 80038D38 00034998 93 A1 00 54 */ stw r29, 0x54(r1) /* 80038D3C 0003499C 7C 7D 1B 78 */ mr r29, r3 /* 80038D40 000349A0 A0 03 05 1C */ lhz r0, 0x51c(r3) /* 80038D44 000349A4 28 00 00 09 */ cmplwi r0, 9 /* 80038D48 000349A8 40 80 00 10 */ bge lbl_80038D58 /* 80038D4C 000349AC 88 03 05 20 */ lbz r0, 0x520(r3) /* 80038D50 000349B0 2C 00 00 00 */ cmpwi r0, 0 /* 80038D54 000349B4 40 82 00 D8 */ bne lbl_80038E2C lbl_80038D58: /* 80038D58 000349B8 7F A4 EB 78 */ mr r4, r29 /* 80038D5C 000349BC 38 61 00 20 */ addi r3, r1, 0x20 /* 80038D60 000349C0 38 A0 00 0E */ li r5, 0xe /* 80038D64 000349C4 48 00 29 11 */ bl func_8003B674 /* 80038D68 000349C8 7F C4 F3 78 */ mr r4, r30 /* 80038D6C 000349CC 38 61 00 2C */ addi r3, r1, 0x2c /* 80038D70 000349D0 38 A0 00 0A */ li r5, 0xa /* 80038D74 000349D4 48 00 29 01 */ bl func_8003B674 /* 80038D78 000349D8 38 61 00 2C */ addi r3, r1, 0x2c /* 80038D7C 000349DC 38 81 00 20 */ addi r4, r1, 0x20 /* 80038D80 000349E0 38 A1 00 38 */ addi r5, r1, 0x38 /* 80038D84 000349E4 48 24 3F 65 */ bl func_8027CCE8 /* 80038D88 000349E8 C0 41 00 40 */ lfs f2, 0x40(r1) /* 80038D8C 000349EC C0 21 00 38 */ lfs f1, 0x38(r1) /* 80038D90 000349F0 48 19 B8 4D */ bl atan2 /* 80038D94 000349F4 FF E0 08 18 */ frsp f31, f1 /* 80038D98 000349F8 7F A4 EB 78 */ mr r4, r29 /* 80038D9C 000349FC 38 61 00 14 */ addi r3, r1, 0x14 /* 80038DA0 00034A00 4B FF FC F5 */ bl func_80038A94 /* 80038DA4 00034A04 FC 40 F8 90 */ fmr f2, f31 /* 80038DA8 00034A08 C0 21 00 18 */ lfs f1, 0x18(r1) /* 80038DAC 00034A0C 7F A3 EB 78 */ mr r3, r29 /* 80038DB0 00034A10 48 00 1C C5 */ bl func_8003AA74 /* 80038DB4 00034A14 EF FF 08 28 */ fsubs f31, f31, f1 /* 80038DB8 00034A18 38 61 00 38 */ addi r3, r1, 0x38 /* 80038DBC 00034A1C 48 24 3F C9 */ bl func_8027CD84 /* 80038DC0 00034A20 C0 41 00 3C */ lfs f2, 0x3c(r1) /* 80038DC4 00034A24 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 80038DC8 00034A28 EC 22 08 24 */ fdivs f1, f2, f1 /* 80038DCC 00034A2C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80038DD0 00034A30 4C 41 13 82 */ cror 2, 1, 2 /* 80038DD4 00034A34 40 82 00 0C */ bne lbl_80038DE0 /* 80038DD8 00034A38 C0 02 82 7C */ lfs f0, lbl_8064087C-_SDA2_BASE_(r2) /* 80038DDC 00034A3C 48 00 00 24 */ b lbl_80038E00 lbl_80038DE0: /* 80038DE0 00034A40 C0 02 82 44 */ lfs f0, lbl_80640844-_SDA2_BASE_(r2) /* 80038DE4 00034A44 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80038DE8 00034A48 4C 40 13 82 */ cror 2, 0, 2 /* 80038DEC 00034A4C 40 82 00 0C */ bne lbl_80038DF8 /* 80038DF0 00034A50 C0 02 82 80 */ lfs f0, lbl_80640880-_SDA2_BASE_(r2) /* 80038DF4 00034A54 48 00 00 0C */ b lbl_80038E00 lbl_80038DF8: /* 80038DF8 00034A58 48 19 B7 E1 */ bl asin /* 80038DFC 00034A5C FC 00 08 18 */ frsp f0, f1 lbl_80038E00: /* 80038E00 00034A60 FC 40 00 50 */ fneg f2, f0 /* 80038E04 00034A64 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80038E08 00034A68 FC 20 F0 90 */ fmr f1, f30 /* 80038E0C 00034A6C D3 E1 00 0C */ stfs f31, 0xc(r1) /* 80038E10 00034A70 7F A3 EB 78 */ mr r3, r29 /* 80038E14 00034A74 7F E6 FB 78 */ mr r6, r31 /* 80038E18 00034A78 D0 41 00 08 */ stfs f2, 8(r1) /* 80038E1C 00034A7C 38 81 00 08 */ addi r4, r1, 8 /* 80038E20 00034A80 38 A0 00 0E */ li r5, 0xe /* 80038E24 00034A84 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80038E28 00034A88 48 00 18 A1 */ bl func_8003A6C8 lbl_80038E2C: /* 80038E2C 00034A8C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80038E30 00034A90 CB E1 00 70 */ lfd f31, 0x70(r1) /* 80038E34 00034A94 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 80038E38 00034A98 CB C1 00 60 */ lfd f30, 0x60(r1) /* 80038E3C 00034A9C 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80038E40 00034AA0 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80038E44 00034AA4 80 01 00 84 */ lwz r0, 0x84(r1) /* 80038E48 00034AA8 83 A1 00 54 */ lwz r29, 0x54(r1) /* 80038E4C 00034AAC 7C 08 03 A6 */ mtlr r0 /* 80038E50 00034AB0 38 21 00 80 */ addi r1, r1, 0x80 /* 80038E54 00034AB4 4E 80 00 20 */ blr .global func_80038E58 func_80038E58: /* 80038E58 00034AB8 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80038E5C 00034ABC 7C 08 02 A6 */ mflr r0 /* 80038E60 00034AC0 90 01 00 74 */ stw r0, 0x74(r1) /* 80038E64 00034AC4 DB E1 00 60 */ stfd f31, 0x60(r1) /* 80038E68 00034AC8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 80038E6C 00034ACC DB C1 00 50 */ stfd f30, 0x50(r1) /* 80038E70 00034AD0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 80038E74 00034AD4 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80038E78 00034AD8 7C 9F 23 78 */ mr r31, r4 /* 80038E7C 00034ADC 93 C1 00 48 */ stw r30, 0x48(r1) /* 80038E80 00034AE0 7C 7E 1B 78 */ mr r30, r3 /* 80038E84 00034AE4 A0 03 05 1C */ lhz r0, 0x51c(r3) /* 80038E88 00034AE8 28 00 00 09 */ cmplwi r0, 9 /* 80038E8C 00034AEC 40 80 00 10 */ bge lbl_80038E9C /* 80038E90 00034AF0 88 03 05 20 */ lbz r0, 0x520(r3) /* 80038E94 00034AF4 2C 00 00 00 */ cmpwi r0, 0 /* 80038E98 00034AF8 40 82 00 F0 */ bne lbl_80038F88 lbl_80038E9C: /* 80038E9C 00034AFC C3 C2 82 84 */ lfs f30, lbl_80640884-_SDA2_BASE_(r2) /* 80038EA0 00034B00 7F C4 F3 78 */ mr r4, r30 /* 80038EA4 00034B04 38 61 00 20 */ addi r3, r1, 0x20 /* 80038EA8 00034B08 38 A0 00 0E */ li r5, 0xe /* 80038EAC 00034B0C 48 00 27 C9 */ bl func_8003B674 /* 80038EB0 00034B10 7F E4 FB 78 */ mr r4, r31 /* 80038EB4 00034B14 38 61 00 2C */ addi r3, r1, 0x2c /* 80038EB8 00034B18 38 A0 00 0A */ li r5, 0xa /* 80038EBC 00034B1C 48 00 27 B9 */ bl func_8003B674 /* 80038EC0 00034B20 38 61 00 2C */ addi r3, r1, 0x2c /* 80038EC4 00034B24 38 81 00 20 */ addi r4, r1, 0x20 /* 80038EC8 00034B28 38 A1 00 38 */ addi r5, r1, 0x38 /* 80038ECC 00034B2C 48 24 3E 1D */ bl func_8027CCE8 /* 80038ED0 00034B30 C0 41 00 40 */ lfs f2, 0x40(r1) /* 80038ED4 00034B34 C0 21 00 38 */ lfs f1, 0x38(r1) /* 80038ED8 00034B38 48 19 B7 05 */ bl atan2 /* 80038EDC 00034B3C FF E0 08 18 */ frsp f31, f1 /* 80038EE0 00034B40 7F C4 F3 78 */ mr r4, r30 /* 80038EE4 00034B44 38 61 00 14 */ addi r3, r1, 0x14 /* 80038EE8 00034B48 4B FF FB AD */ bl func_80038A94 /* 80038EEC 00034B4C FC 40 F8 90 */ fmr f2, f31 /* 80038EF0 00034B50 C0 21 00 18 */ lfs f1, 0x18(r1) /* 80038EF4 00034B54 7F C3 F3 78 */ mr r3, r30 /* 80038EF8 00034B58 48 00 1B 7D */ bl func_8003AA74 /* 80038EFC 00034B5C EF FF 08 28 */ fsubs f31, f31, f1 /* 80038F00 00034B60 FC 1F F0 40 */ fcmpo cr0, f31, f30 /* 80038F04 00034B64 40 81 00 08 */ ble lbl_80038F0C /* 80038F08 00034B68 FF E0 F0 90 */ fmr f31, f30 lbl_80038F0C: /* 80038F0C 00034B6C FC 00 F0 50 */ fneg f0, f30 /* 80038F10 00034B70 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80038F14 00034B74 40 80 00 08 */ bge lbl_80038F1C /* 80038F18 00034B78 FF E0 00 90 */ fmr f31, f0 lbl_80038F1C: /* 80038F1C 00034B7C 38 61 00 38 */ addi r3, r1, 0x38 /* 80038F20 00034B80 48 24 3E 65 */ bl func_8027CD84 /* 80038F24 00034B84 C0 41 00 3C */ lfs f2, 0x3c(r1) /* 80038F28 00034B88 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 80038F2C 00034B8C EC 22 08 24 */ fdivs f1, f2, f1 /* 80038F30 00034B90 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80038F34 00034B94 4C 41 13 82 */ cror 2, 1, 2 /* 80038F38 00034B98 40 82 00 0C */ bne lbl_80038F44 /* 80038F3C 00034B9C C0 02 82 7C */ lfs f0, lbl_8064087C-_SDA2_BASE_(r2) /* 80038F40 00034BA0 48 00 00 24 */ b lbl_80038F64 lbl_80038F44: /* 80038F44 00034BA4 C0 02 82 44 */ lfs f0, lbl_80640844-_SDA2_BASE_(r2) /* 80038F48 00034BA8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80038F4C 00034BAC 4C 40 13 82 */ cror 2, 0, 2 /* 80038F50 00034BB0 40 82 00 0C */ bne lbl_80038F5C /* 80038F54 00034BB4 C0 02 82 80 */ lfs f0, lbl_80640880-_SDA2_BASE_(r2) /* 80038F58 00034BB8 48 00 00 0C */ b lbl_80038F64 lbl_80038F5C: /* 80038F5C 00034BBC 48 19 B6 7D */ bl asin /* 80038F60 00034BC0 FC 00 08 18 */ frsp f0, f1 lbl_80038F64: /* 80038F64 00034BC4 FC 20 00 50 */ fneg f1, f0 /* 80038F68 00034BC8 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80038F6C 00034BCC D3 E1 00 0C */ stfs f31, 0xc(r1) /* 80038F70 00034BD0 7F C3 F3 78 */ mr r3, r30 /* 80038F74 00034BD4 38 81 00 08 */ addi r4, r1, 8 /* 80038F78 00034BD8 38 A0 00 0E */ li r5, 0xe /* 80038F7C 00034BDC D0 21 00 08 */ stfs f1, 8(r1) /* 80038F80 00034BE0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80038F84 00034BE4 48 00 19 D5 */ bl func_8003A958 lbl_80038F88: /* 80038F88 00034BE8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 80038F8C 00034BEC CB E1 00 60 */ lfd f31, 0x60(r1) /* 80038F90 00034BF0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 80038F94 00034BF4 CB C1 00 50 */ lfd f30, 0x50(r1) /* 80038F98 00034BF8 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 80038F9C 00034BFC 80 01 00 74 */ lwz r0, 0x74(r1) /* 80038FA0 00034C00 83 C1 00 48 */ lwz r30, 0x48(r1) /* 80038FA4 00034C04 7C 08 03 A6 */ mtlr r0 /* 80038FA8 00034C08 38 21 00 70 */ addi r1, r1, 0x70 /* 80038FAC 00034C0C 4E 80 00 20 */ blr .global func_80038FB0 func_80038FB0: /* 80038FB0 00034C10 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80038FB4 00034C14 7C 08 02 A6 */ mflr r0 /* 80038FB8 00034C18 90 01 00 14 */ stw r0, 0x14(r1) /* 80038FBC 00034C1C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80038FC0 00034C20 7C 7F 1B 78 */ mr r31, r3 /* 80038FC4 00034C24 A0 03 05 1C */ lhz r0, 0x51c(r3) /* 80038FC8 00034C28 28 00 00 09 */ cmplwi r0, 9 /* 80038FCC 00034C2C 40 80 00 10 */ bge lbl_80038FDC /* 80038FD0 00034C30 88 03 05 20 */ lbz r0, 0x520(r3) /* 80038FD4 00034C34 2C 00 00 00 */ cmpwi r0, 0 /* 80038FD8 00034C38 40 82 00 A4 */ bne lbl_8003907C lbl_80038FDC: /* 80038FDC 00034C3C 38 63 04 60 */ addi r3, r3, 0x460 /* 80038FE0 00034C40 48 01 75 E1 */ bl func_800505C0 /* 80038FE4 00034C44 3C 80 80 49 */ lis r4, lbl_8049362C@ha /* 80038FE8 00034C48 7F E3 FB 78 */ mr r3, r31 /* 80038FEC 00034C4C 38 84 36 2C */ addi r4, r4, lbl_8049362C@l /* 80038FF0 00034C50 38 A0 00 0E */ li r5, 0xe /* 80038FF4 00034C54 48 00 19 65 */ bl func_8003A958 /* 80038FF8 00034C58 80 1F 0C 04 */ lwz r0, 0xc04(r31) /* 80038FFC 00034C5C 2C 00 00 00 */ cmpwi r0, 0 /* 80039000 00034C60 41 82 00 7C */ beq lbl_8003907C /* 80039004 00034C64 7F E3 FB 78 */ mr r3, r31 /* 80039008 00034C68 38 80 00 0E */ li r4, 0xe /* 8003900C 00034C6C 48 00 08 2D */ bl func_80039838 /* 80039010 00034C70 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 80039014 00034C74 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80039018 00034C78 80 A4 00 08 */ lwz r5, 8(r4) /* 8003901C 00034C7C 2C 05 00 00 */ cmpwi r5, 0 /* 80039020 00034C80 40 82 00 0C */ bne lbl_8003902C /* 80039024 00034C84 38 60 00 00 */ li r3, 0 /* 80039028 00034C88 48 00 00 20 */ b lbl_80039048 lbl_8003902C: /* 8003902C 00034C8C A0 04 00 DE */ lhz r0, 0xde(r4) /* 80039030 00034C90 7C 03 00 40 */ cmplw r3, r0 /* 80039034 00034C94 41 80 00 0C */ blt lbl_80039040 /* 80039038 00034C98 38 60 00 00 */ li r3, 0 /* 8003903C 00034C9C 48 00 00 0C */ b lbl_80039048 lbl_80039040: /* 80039040 00034CA0 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 80039044 00034CA4 7C 65 00 2E */ lwzx r3, r5, r0 lbl_80039048: /* 80039048 00034CA8 2C 03 00 00 */ cmpwi r3, 0 /* 8003904C 00034CAC 41 82 00 30 */ beq lbl_8003907C /* 80039050 00034CB0 80 83 00 1C */ lwz r4, 0x1c(r3) /* 80039054 00034CB4 2C 04 00 00 */ cmpwi r4, 0 /* 80039058 00034CB8 41 82 00 0C */ beq lbl_80039064 /* 8003905C 00034CBC A0 84 00 08 */ lhz r4, 8(r4) /* 80039060 00034CC0 48 00 00 08 */ b lbl_80039068 lbl_80039064: /* 80039064 00034CC4 38 80 00 00 */ li r4, 0 lbl_80039068: /* 80039068 00034CC8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003906C 00034CCC 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 80039070 00034CD0 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 80039074 00034CD4 38 A0 00 01 */ li r5, 1 /* 80039078 00034CD8 48 1A 4D D5 */ bl func_801DDE4C lbl_8003907C: /* 8003907C 00034CDC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039080 00034CE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039084 00034CE4 7C 08 03 A6 */ mtlr r0 /* 80039088 00034CE8 38 21 00 10 */ addi r1, r1, 0x10 /* 8003908C 00034CEC 4E 80 00 20 */ blr .global func_80039090 func_80039090: /* 80039090 00034CF0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80039094 00034CF4 7C 08 02 A6 */ mflr r0 /* 80039098 00034CF8 90 01 00 24 */ stw r0, 0x24(r1) /* 8003909C 00034CFC DB E1 00 10 */ stfd f31, 0x10(r1) /* 800390A0 00034D00 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 800390A4 00034D04 FF E0 08 90 */ fmr f31, f1 /* 800390A8 00034D08 93 E1 00 0C */ stw r31, 0xc(r1) /* 800390AC 00034D0C 7C 9F 23 78 */ mr r31, r4 /* 800390B0 00034D10 93 C1 00 08 */ stw r30, 8(r1) /* 800390B4 00034D14 7C 7E 1B 78 */ mr r30, r3 /* 800390B8 00034D18 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 800390BC 00034D1C 2C 00 00 00 */ cmpwi r0, 0 /* 800390C0 00034D20 40 82 00 0C */ bne lbl_800390CC /* 800390C4 00034D24 38 60 00 00 */ li r3, 0 /* 800390C8 00034D28 48 00 01 18 */ b lbl_800391E0 lbl_800390CC: /* 800390CC 00034D2C 48 00 04 2D */ bl func_800394F8 /* 800390D0 00034D30 2C 03 00 00 */ cmpwi r3, 0 /* 800390D4 00034D34 40 82 00 0C */ bne lbl_800390E0 /* 800390D8 00034D38 38 60 00 00 */ li r3, 0 /* 800390DC 00034D3C 48 00 01 04 */ b lbl_800391E0 lbl_800390E0: /* 800390E0 00034D40 80 1E 00 00 */ lwz r0, 0(r30) /* 800390E4 00034D44 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 /* 800390E8 00034D48 41 82 00 14 */ beq lbl_800390FC /* 800390EC 00034D4C 7F C3 F3 78 */ mr r3, r30 /* 800390F0 00034D50 48 00 43 C5 */ bl func_8003D4B4 /* 800390F4 00034D54 38 60 00 01 */ li r3, 1 /* 800390F8 00034D58 48 00 00 E8 */ b lbl_800391E0 lbl_800390FC: /* 800390FC 00034D5C 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 80039100 00034D60 80 83 00 04 */ lwz r4, 4(r3) /* 80039104 00034D64 2C 04 00 00 */ cmpwi r4, 0 /* 80039108 00034D68 40 82 00 0C */ bne lbl_80039114 /* 8003910C 00034D6C 38 60 00 00 */ li r3, 0 /* 80039110 00034D70 48 00 00 28 */ b lbl_80039138 lbl_80039114: /* 80039114 00034D74 A0 04 00 08 */ lhz r0, 8(r4) /* 80039118 00034D78 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 8003911C 00034D7C 7C 03 00 40 */ cmplw r3, r0 /* 80039120 00034D80 41 80 00 0C */ blt lbl_8003912C /* 80039124 00034D84 38 60 00 00 */ li r3, 0 /* 80039128 00034D88 48 00 00 10 */ b lbl_80039138 lbl_8003912C: /* 8003912C 00034D8C 1C 03 00 30 */ mulli r0, r3, 0x30 /* 80039130 00034D90 80 64 00 0C */ lwz r3, 0xc(r4) /* 80039134 00034D94 7C 63 02 14 */ add r3, r3, r0 lbl_80039138: /* 80039138 00034D98 C0 3E 0D 80 */ lfs f1, 0xd80(r30) /* 8003913C 00034D9C C0 02 82 70 */ lfs f0, lbl_80640870-_SDA2_BASE_(r2) /* 80039140 00034DA0 88 A3 00 28 */ lbz r5, 0x28(r3) /* 80039144 00034DA4 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 80039148 00034DA8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003914C 00034DAC D0 5E 0D 90 */ stfs f2, 0xd90(r30) /* 80039150 00034DB0 40 80 00 10 */ bge lbl_80039160 /* 80039154 00034DB4 C0 02 82 74 */ lfs f0, lbl_80640874-_SDA2_BASE_(r2) /* 80039158 00034DB8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003915C 00034DBC 41 81 00 14 */ bgt lbl_80039170 lbl_80039160: /* 80039160 00034DC0 C0 3E 0D 8C */ lfs f1, 0xd8c(r30) /* 80039164 00034DC4 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80039168 00034DC8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003916C 00034DCC 40 81 00 30 */ ble lbl_8003919C lbl_80039170: /* 80039170 00034DD0 FC 20 F8 90 */ fmr f1, f31 /* 80039174 00034DD4 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 80039178 00034DD8 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003917C 00034DDC 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 80039180 00034DE0 38 C0 00 00 */ li r6, 0 /* 80039184 00034DE4 38 E0 00 00 */ li r7, 0 /* 80039188 00034DE8 39 00 00 00 */ li r8, 0 /* 8003918C 00034DEC 48 1B BC 69 */ bl func_801F4DF4 /* 80039190 00034DF0 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80039194 00034DF4 D0 1E 0D 8C */ stfs f0, 0xd8c(r30) /* 80039198 00034DF8 48 00 00 38 */ b lbl_800391D0 lbl_8003919C: /* 8003919C 00034DFC FC 20 F8 90 */ fmr f1, f31 /* 800391A0 00034E00 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 800391A4 00034E04 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 800391A8 00034E08 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 800391AC 00034E0C C0 7E 0D 80 */ lfs f3, 0xd80(r30) /* 800391B0 00034E10 38 C0 00 01 */ li r6, 1 /* 800391B4 00034E14 89 3E 0D 88 */ lbz r9, 0xd88(r30) /* 800391B8 00034E18 38 E0 00 01 */ li r7, 1 /* 800391BC 00034E1C 89 5E 0D 89 */ lbz r10, 0xd89(r30) /* 800391C0 00034E20 39 00 00 00 */ li r8, 0 /* 800391C4 00034E24 48 1B C1 A1 */ bl func_801F5364 /* 800391C8 00034E28 C0 1E 0D 80 */ lfs f0, 0xd80(r30) /* 800391CC 00034E2C D0 1E 0D 8C */ stfs f0, 0xd8c(r30) lbl_800391D0: /* 800391D0 00034E30 38 00 00 00 */ li r0, 0 /* 800391D4 00034E34 B3 FE 0B F8 */ sth r31, 0xbf8(r30) /* 800391D8 00034E38 38 60 00 01 */ li r3, 1 /* 800391DC 00034E3C 90 1E 0C B0 */ stw r0, 0xcb0(r30) lbl_800391E0: /* 800391E0 00034E40 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 800391E4 00034E44 80 01 00 24 */ lwz r0, 0x24(r1) /* 800391E8 00034E48 CB E1 00 10 */ lfd f31, 0x10(r1) /* 800391EC 00034E4C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800391F0 00034E50 83 C1 00 08 */ lwz r30, 8(r1) /* 800391F4 00034E54 7C 08 03 A6 */ mtlr r0 /* 800391F8 00034E58 38 21 00 20 */ addi r1, r1, 0x20 /* 800391FC 00034E5C 4E 80 00 20 */ blr .global func_80039200 func_80039200: /* 80039200 00034E60 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80039204 00034E64 7C 08 02 A6 */ mflr r0 /* 80039208 00034E68 90 01 00 24 */ stw r0, 0x24(r1) /* 8003920C 00034E6C DB E1 00 18 */ stfd f31, 0x18(r1) /* 80039210 00034E70 FF E0 08 90 */ fmr f31, f1 /* 80039214 00034E74 93 E1 00 14 */ stw r31, 0x14(r1) /* 80039218 00034E78 7C 7F 1B 78 */ mr r31, r3 /* 8003921C 00034E7C 98 83 0B F6 */ stb r4, 0xbf6(r3) /* 80039220 00034E80 48 00 30 3D */ bl func_8003C25C /* 80039224 00034E84 FC 20 F8 90 */ fmr f1, f31 /* 80039228 00034E88 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8003922C 00034E8C 7F E3 FB 78 */ mr r3, r31 /* 80039230 00034E90 4B FF FE 61 */ bl func_80039090 /* 80039234 00034E94 88 1F 0B F6 */ lbz r0, 0xbf6(r31) /* 80039238 00034E98 2C 00 00 00 */ cmpwi r0, 0 /* 8003923C 00034E9C 41 82 00 0C */ beq lbl_80039248 /* 80039240 00034EA0 28 00 00 10 */ cmplwi r0, 0x10 /* 80039244 00034EA4 40 82 00 14 */ bne lbl_80039258 lbl_80039248: /* 80039248 00034EA8 80 1F 00 00 */ lwz r0, 0(r31) /* 8003924C 00034EAC 64 00 00 02 */ oris r0, r0, 2 /* 80039250 00034EB0 90 1F 00 00 */ stw r0, 0(r31) /* 80039254 00034EB4 48 00 00 10 */ b lbl_80039264 lbl_80039258: /* 80039258 00034EB8 80 1F 00 00 */ lwz r0, 0(r31) /* 8003925C 00034EBC 54 00 03 DA */ rlwinm r0, r0, 0, 0xf, 0xd /* 80039260 00034EC0 90 1F 00 00 */ stw r0, 0(r31) lbl_80039264: /* 80039264 00034EC4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80039268 00034EC8 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8003926C 00034ECC 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80039270 00034ED0 7C 08 03 A6 */ mtlr r0 /* 80039274 00034ED4 38 21 00 20 */ addi r1, r1, 0x20 /* 80039278 00034ED8 4E 80 00 20 */ blr .global func_8003927C func_8003927C: /* 8003927C 00034EDC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80039280 00034EE0 7C 08 02 A6 */ mflr r0 /* 80039284 00034EE4 90 01 00 44 */ stw r0, 0x44(r1) /* 80039288 00034EE8 DB E1 00 30 */ stfd f31, 0x30(r1) /* 8003928C 00034EEC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80039290 00034EF0 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80039294 00034EF4 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80039298 00034EF8 FF C0 08 90 */ fmr f30, f1 /* 8003929C 00034EFC FF E0 10 90 */ fmr f31, f2 /* 800392A0 00034F00 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800392A4 00034F04 7C 7F 1B 78 */ mr r31, r3 /* 800392A8 00034F08 93 C1 00 18 */ stw r30, 0x18(r1) /* 800392AC 00034F0C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800392B0 00034F10 7C 9D 23 78 */ mr r29, r4 /* 800392B4 00034F14 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 800392B8 00034F18 2C 00 00 00 */ cmpwi r0, 0 /* 800392BC 00034F1C 40 82 00 0C */ bne lbl_800392C8 /* 800392C0 00034F20 38 60 00 00 */ li r3, 0 /* 800392C4 00034F24 48 00 01 70 */ b lbl_80039434 lbl_800392C8: /* 800392C8 00034F28 2C 04 00 00 */ cmpwi r4, 0 /* 800392CC 00034F2C 40 82 00 0C */ bne lbl_800392D8 /* 800392D0 00034F30 38 60 00 00 */ li r3, 0 /* 800392D4 00034F34 48 00 01 60 */ b lbl_80039434 lbl_800392D8: /* 800392D8 00034F38 88 84 00 00 */ lbz r4, 0(r4) /* 800392DC 00034F3C 7C 84 07 74 */ extsb r4, r4 /* 800392E0 00034F40 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 800392E4 00034F44 48 00 2F 79 */ bl func_8003C25C /* 800392E8 00034F48 54 7E 04 3E */ clrlwi r30, r3, 0x10 /* 800392EC 00034F4C 7F E3 FB 78 */ mr r3, r31 /* 800392F0 00034F50 7F C4 F3 78 */ mr r4, r30 /* 800392F4 00034F54 48 00 02 05 */ bl func_800394F8 /* 800392F8 00034F58 2C 03 00 00 */ cmpwi r3, 0 /* 800392FC 00034F5C 40 82 00 0C */ bne lbl_80039308 /* 80039300 00034F60 38 60 00 00 */ li r3, 0 /* 80039304 00034F64 48 00 01 30 */ b lbl_80039434 lbl_80039308: /* 80039308 00034F68 80 1F 00 00 */ lwz r0, 0(r31) /* 8003930C 00034F6C 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 /* 80039310 00034F70 41 82 00 14 */ beq lbl_80039324 /* 80039314 00034F74 7F E3 FB 78 */ mr r3, r31 /* 80039318 00034F78 48 00 41 9D */ bl func_8003D4B4 /* 8003931C 00034F7C 38 60 00 01 */ li r3, 1 /* 80039320 00034F80 48 00 01 14 */ b lbl_80039434 lbl_80039324: /* 80039324 00034F84 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 80039328 00034F88 80 63 00 04 */ lwz r3, 4(r3) /* 8003932C 00034F8C 2C 03 00 00 */ cmpwi r3, 0 /* 80039330 00034F90 40 82 00 0C */ bne lbl_8003933C /* 80039334 00034F94 38 60 00 00 */ li r3, 0 /* 80039338 00034F98 48 00 00 24 */ b lbl_8003935C lbl_8003933C: /* 8003933C 00034F9C A0 03 00 08 */ lhz r0, 8(r3) /* 80039340 00034FA0 7C 1E 00 40 */ cmplw r30, r0 /* 80039344 00034FA4 41 80 00 0C */ blt lbl_80039350 /* 80039348 00034FA8 38 60 00 00 */ li r3, 0 /* 8003934C 00034FAC 48 00 00 10 */ b lbl_8003935C lbl_80039350: /* 80039350 00034FB0 1C 1E 00 30 */ mulli r0, r30, 0x30 /* 80039354 00034FB4 80 63 00 0C */ lwz r3, 0xc(r3) /* 80039358 00034FB8 7C 63 02 14 */ add r3, r3, r0 lbl_8003935C: /* 8003935C 00034FBC C0 3F 0D 80 */ lfs f1, 0xd80(r31) /* 80039360 00034FC0 C0 02 82 70 */ lfs f0, lbl_80640870-_SDA2_BASE_(r2) /* 80039364 00034FC4 88 A3 00 28 */ lbz r5, 0x28(r3) /* 80039368 00034FC8 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003936C 00034FCC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80039370 00034FD0 D0 5F 0D 90 */ stfs f2, 0xd90(r31) /* 80039374 00034FD4 40 80 00 10 */ bge lbl_80039384 /* 80039378 00034FD8 C0 02 82 74 */ lfs f0, lbl_80640874-_SDA2_BASE_(r2) /* 8003937C 00034FDC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80039380 00034FE0 41 81 00 14 */ bgt lbl_80039394 lbl_80039384: /* 80039384 00034FE4 C0 1F 0D 8C */ lfs f0, 0xd8c(r31) /* 80039388 00034FE8 C0 62 82 20 */ lfs f3, lbl_80640820-_SDA2_BASE_(r2) /* 8003938C 00034FEC FC 00 18 40 */ fcmpo cr0, f0, f3 /* 80039390 00034FF0 40 81 00 30 */ ble lbl_800393C0 lbl_80039394: /* 80039394 00034FF4 FC 20 F0 90 */ fmr f1, f30 /* 80039398 00034FF8 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003939C 00034FFC FC 40 F8 90 */ fmr f2, f31 /* 800393A0 00035000 7F C4 F3 78 */ mr r4, r30 /* 800393A4 00035004 38 C0 00 00 */ li r6, 0 /* 800393A8 00035008 38 E0 00 00 */ li r7, 0 /* 800393AC 0003500C 39 00 00 00 */ li r8, 0 /* 800393B0 00035010 48 1B BA 45 */ bl func_801F4DF4 /* 800393B4 00035014 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 800393B8 00035018 D0 1F 0D 8C */ stfs f0, 0xd8c(r31) /* 800393BC 0003501C 48 00 00 34 */ b lbl_800393F0 lbl_800393C0: /* 800393C0 00035020 FC 20 F0 90 */ fmr f1, f30 /* 800393C4 00035024 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 800393C8 00035028 FC 40 F8 90 */ fmr f2, f31 /* 800393CC 0003502C 89 3F 0D 88 */ lbz r9, 0xd88(r31) /* 800393D0 00035030 89 5F 0D 89 */ lbz r10, 0xd89(r31) /* 800393D4 00035034 7F C4 F3 78 */ mr r4, r30 /* 800393D8 00035038 38 C0 00 00 */ li r6, 0 /* 800393DC 0003503C 38 E0 00 01 */ li r7, 1 /* 800393E0 00035040 39 00 00 00 */ li r8, 0 /* 800393E4 00035044 48 1B BF 81 */ bl func_801F5364 /* 800393E8 00035048 C0 1F 0D 80 */ lfs f0, 0xd80(r31) /* 800393EC 0003504C D0 1F 0D 8C */ stfs f0, 0xd8c(r31) lbl_800393F0: /* 800393F0 00035050 B3 DF 0B F8 */ sth r30, 0xbf8(r31) /* 800393F4 00035054 38 1D 00 01 */ addi r0, r29, 1 /* 800393F8 00035058 88 7D 00 00 */ lbz r3, 0(r29) /* 800393FC 0003505C 2C 03 00 00 */ cmpwi r3, 0 /* 80039400 00035060 98 7F 0B F6 */ stb r3, 0xbf6(r31) /* 80039404 00035064 90 1F 0C B0 */ stw r0, 0xcb0(r31) /* 80039408 00035068 41 82 00 0C */ beq lbl_80039414 /* 8003940C 0003506C 28 03 00 10 */ cmplwi r3, 0x10 /* 80039410 00035070 40 82 00 14 */ bne lbl_80039424 lbl_80039414: /* 80039414 00035074 80 1F 00 00 */ lwz r0, 0(r31) /* 80039418 00035078 64 00 00 02 */ oris r0, r0, 2 /* 8003941C 0003507C 90 1F 00 00 */ stw r0, 0(r31) /* 80039420 00035080 48 00 00 10 */ b lbl_80039430 lbl_80039424: /* 80039424 00035084 80 1F 00 00 */ lwz r0, 0(r31) /* 80039428 00035088 54 00 03 DA */ rlwinm r0, r0, 0, 0xf, 0xd /* 8003942C 0003508C 90 1F 00 00 */ stw r0, 0(r31) lbl_80039430: /* 80039430 00035090 38 60 00 01 */ li r3, 1 lbl_80039434: /* 80039434 00035094 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80039438 00035098 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8003943C 0003509C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80039440 000350A0 CB C1 00 20 */ lfd f30, 0x20(r1) /* 80039444 000350A4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80039448 000350A8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003944C 000350AC 80 01 00 44 */ lwz r0, 0x44(r1) /* 80039450 000350B0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80039454 000350B4 7C 08 03 A6 */ mtlr r0 /* 80039458 000350B8 38 21 00 40 */ addi r1, r1, 0x40 /* 8003945C 000350BC 4E 80 00 20 */ blr .global func_80039460 func_80039460: /* 80039460 000350C0 A0 63 0B F8 */ lhz r3, 0xbf8(r3) /* 80039464 000350C4 4E 80 00 20 */ blr .global func_80039468 func_80039468: /* 80039468 000350C8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003946C 000350CC 7C 08 02 A6 */ mflr r0 /* 80039470 000350D0 2C 04 00 00 */ cmpwi r4, 0 /* 80039474 000350D4 90 01 00 14 */ stw r0, 0x14(r1) /* 80039478 000350D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003947C 000350DC 93 C1 00 08 */ stw r30, 8(r1) /* 80039480 000350E0 7C 7E 1B 78 */ mr r30, r3 /* 80039484 000350E4 40 80 00 0C */ bge lbl_80039490 /* 80039488 000350E8 38 60 FF FF */ li r3, -1 /* 8003948C 000350EC 48 00 00 4C */ b lbl_800394D8 lbl_80039490: /* 80039490 000350F0 48 00 01 ED */ bl func_8003967C /* 80039494 000350F4 2C 03 00 00 */ cmpwi r3, 0 /* 80039498 000350F8 41 82 00 3C */ beq lbl_800394D4 /* 8003949C 000350FC 88 83 00 00 */ lbz r4, 0(r3) /* 800394A0 00035100 7F C3 F3 78 */ mr r3, r30 /* 800394A4 00035104 7C 84 07 74 */ extsb r4, r4 /* 800394A8 00035108 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 800394AC 0003510C 48 00 2D B1 */ bl func_8003C25C /* 800394B0 00035110 54 7F 04 3E */ clrlwi r31, r3, 0x10 /* 800394B4 00035114 7F C3 F3 78 */ mr r3, r30 /* 800394B8 00035118 7F E4 FB 78 */ mr r4, r31 /* 800394BC 0003511C 48 00 00 3D */ bl func_800394F8 /* 800394C0 00035120 2C 03 00 00 */ cmpwi r3, 0 /* 800394C4 00035124 38 60 FF FF */ li r3, -1 /* 800394C8 00035128 41 82 00 10 */ beq lbl_800394D8 /* 800394CC 0003512C 7F E3 FB 78 */ mr r3, r31 /* 800394D0 00035130 48 00 00 08 */ b lbl_800394D8 lbl_800394D4: /* 800394D4 00035134 38 60 FF FF */ li r3, -1 lbl_800394D8: /* 800394D8 00035138 80 01 00 14 */ lwz r0, 0x14(r1) /* 800394DC 0003513C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800394E0 00035140 83 C1 00 08 */ lwz r30, 8(r1) /* 800394E4 00035144 7C 08 03 A6 */ mtlr r0 /* 800394E8 00035148 38 21 00 10 */ addi r1, r1, 0x10 /* 800394EC 0003514C 4E 80 00 20 */ blr .global func_800394F0 func_800394F0: /* 800394F0 00035150 88 63 0B F6 */ lbz r3, 0xbf6(r3) /* 800394F4 00035154 4E 80 00 20 */ blr .global func_800394F8 func_800394F8: /* 800394F8 00035158 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 800394FC 0003515C 2C 03 00 00 */ cmpwi r3, 0 /* 80039500 00035160 40 82 00 0C */ bne lbl_8003950C /* 80039504 00035164 38 60 00 00 */ li r3, 0 /* 80039508 00035168 4E 80 00 20 */ blr lbl_8003950C: /* 8003950C 0003516C 2C 04 00 00 */ cmpwi r4, 0 /* 80039510 00035170 41 80 00 2C */ blt lbl_8003953C /* 80039514 00035174 80 63 00 04 */ lwz r3, 4(r3) /* 80039518 00035178 2C 03 00 00 */ cmpwi r3, 0 /* 8003951C 0003517C 41 82 00 0C */ beq lbl_80039528 /* 80039520 00035180 A0 03 00 08 */ lhz r0, 8(r3) /* 80039524 00035184 48 00 00 08 */ b lbl_8003952C lbl_80039528: /* 80039528 00035188 38 00 00 00 */ li r0, 0 lbl_8003952C: /* 8003952C 0003518C 7C 04 00 00 */ cmpw r4, r0 /* 80039530 00035190 40 80 00 0C */ bge lbl_8003953C /* 80039534 00035194 38 60 00 01 */ li r3, 1 /* 80039538 00035198 4E 80 00 20 */ blr lbl_8003953C: /* 8003953C 0003519C 38 60 00 00 */ li r3, 0 /* 80039540 000351A0 4E 80 00 20 */ blr .global func_80039544 func_80039544: /* 80039544 000351A4 A0 03 0C 68 */ lhz r0, 0xc68(r3) /* 80039548 000351A8 28 00 01 00 */ cmplwi r0, 0x100 /* 8003954C 000351AC 40 82 00 9C */ bne lbl_800395E8 /* 80039550 000351B0 80 03 0C 00 */ lwz r0, 0xc00(r3) /* 80039554 000351B4 2C 00 00 00 */ cmpwi r0, 0 /* 80039558 000351B8 4D 82 00 20 */ beqlr /* 8003955C 000351BC 39 20 00 00 */ li r9, 0 /* 80039560 000351C0 48 00 00 6C */ b lbl_800395CC lbl_80039564: /* 80039564 000351C4 81 07 00 04 */ lwz r8, 4(r7) /* 80039568 000351C8 2C 08 00 00 */ cmpwi r8, 0 /* 8003956C 000351CC 40 82 00 0C */ bne lbl_80039578 /* 80039570 000351D0 38 A0 00 00 */ li r5, 0 /* 80039574 000351D4 48 00 00 28 */ b lbl_8003959C lbl_80039578: /* 80039578 000351D8 80 A7 00 00 */ lwz r5, 0(r7) /* 8003957C 000351DC 55 26 06 3E */ clrlwi r6, r9, 0x18 /* 80039580 000351E0 A0 05 00 18 */ lhz r0, 0x18(r5) /* 80039584 000351E4 7C 06 00 40 */ cmplw r6, r0 /* 80039588 000351E8 41 80 00 0C */ blt lbl_80039594 /* 8003958C 000351EC 38 A0 00 00 */ li r5, 0 /* 80039590 000351F0 48 00 00 0C */ b lbl_8003959C lbl_80039594: /* 80039594 000351F4 55 20 15 BA */ rlwinm r0, r9, 2, 0x16, 0x1d /* 80039598 000351F8 7C A8 00 2E */ lwzx r5, r8, r0 lbl_8003959C: /* 8003959C 000351FC 2C 05 00 00 */ cmpwi r5, 0 /* 800395A0 00035200 41 82 00 28 */ beq lbl_800395C8 /* 800395A4 00035204 2C 04 00 00 */ cmpwi r4, 0 /* 800395A8 00035208 41 82 00 14 */ beq lbl_800395BC /* 800395AC 0003520C A0 05 00 DC */ lhz r0, 0xdc(r5) /* 800395B0 00035210 60 00 00 10 */ ori r0, r0, 0x10 /* 800395B4 00035214 B0 05 00 DC */ sth r0, 0xdc(r5) /* 800395B8 00035218 48 00 00 10 */ b lbl_800395C8 lbl_800395BC: /* 800395BC 0003521C A0 05 00 DC */ lhz r0, 0xdc(r5) /* 800395C0 00035220 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 800395C4 00035224 B0 05 00 DC */ sth r0, 0xdc(r5) lbl_800395C8: /* 800395C8 00035228 39 29 00 01 */ addi r9, r9, 1 lbl_800395CC: /* 800395CC 0003522C 80 E3 0C 00 */ lwz r7, 0xc00(r3) /* 800395D0 00035230 55 26 06 3E */ clrlwi r6, r9, 0x18 /* 800395D4 00035234 80 A7 00 00 */ lwz r5, 0(r7) /* 800395D8 00035238 A0 05 00 18 */ lhz r0, 0x18(r5) /* 800395DC 0003523C 7C 06 00 00 */ cmpw r6, r0 /* 800395E0 00035240 41 80 FF 84 */ blt lbl_80039564 /* 800395E4 00035244 4E 80 00 20 */ blr lbl_800395E8: /* 800395E8 00035248 2C 04 00 00 */ cmpwi r4, 0 /* 800395EC 0003524C 41 82 00 20 */ beq lbl_8003960C /* 800395F0 00035250 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 800395F4 00035254 2C 03 00 00 */ cmpwi r3, 0 /* 800395F8 00035258 4D 82 00 20 */ beqlr /* 800395FC 0003525C A0 03 00 DC */ lhz r0, 0xdc(r3) /* 80039600 00035260 60 00 00 10 */ ori r0, r0, 0x10 /* 80039604 00035264 B0 03 00 DC */ sth r0, 0xdc(r3) /* 80039608 00035268 4E 80 00 20 */ blr lbl_8003960C: /* 8003960C 0003526C 80 03 00 00 */ lwz r0, 0(r3) /* 80039610 00035270 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 /* 80039614 00035274 4C 82 00 20 */ bnelr /* 80039618 00035278 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8003961C 0003527C 2C 03 00 00 */ cmpwi r3, 0 /* 80039620 00035280 4D 82 00 20 */ beqlr /* 80039624 00035284 A0 03 00 DC */ lhz r0, 0xdc(r3) /* 80039628 00035288 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 8003962C 0003528C B0 03 00 DC */ sth r0, 0xdc(r3) /* 80039630 00035290 4E 80 00 20 */ blr .global func_80039634 func_80039634: /* 80039634 00035294 90 83 0C 50 */ stw r4, 0xc50(r3) /* 80039638 00035298 90 A3 0C 54 */ stw r5, 0xc54(r3) /* 8003963C 0003529C 4E 80 00 20 */ blr .global func_80039640 func_80039640: /* 80039640 000352A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80039644 000352A4 7C 08 02 A6 */ mflr r0 /* 80039648 000352A8 7C 64 1B 78 */ mr r4, r3 /* 8003964C 000352AC 80 63 0C 50 */ lwz r3, 0xc50(r3) /* 80039650 000352B0 90 01 00 14 */ stw r0, 0x14(r1) /* 80039654 000352B4 80 84 0C 54 */ lwz r4, 0xc54(r4) /* 80039658 000352B8 48 1A 1E 65 */ bl func_801DB4BC /* 8003965C 000352BC 2C 03 00 00 */ cmpwi r3, 0 /* 80039660 000352C0 40 82 00 0C */ bne lbl_8003966C /* 80039664 000352C4 48 00 4A F9 */ bl func_8003E15C /* 80039668 000352C8 48 00 4D C5 */ bl func_8003E42C lbl_8003966C: /* 8003966C 000352CC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039670 000352D0 7C 08 03 A6 */ mtlr r0 /* 80039674 000352D4 38 21 00 10 */ addi r1, r1, 0x10 /* 80039678 000352D8 4E 80 00 20 */ blr .global func_8003967C func_8003967C: /* 8003967C 000352DC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80039680 000352E0 7C 08 02 A6 */ mflr r0 /* 80039684 000352E4 90 01 00 14 */ stw r0, 0x14(r1) /* 80039688 000352E8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003968C 000352EC 7C 9F 23 78 */ mr r31, r4 /* 80039690 000352F0 93 C1 00 08 */ stw r30, 8(r1) /* 80039694 000352F4 7C 7E 1B 78 */ mr r30, r3 /* 80039698 000352F8 4B FF FF A9 */ bl func_80039640 /* 8003969C 000352FC 2C 03 00 00 */ cmpwi r3, 0 /* 800396A0 00035300 40 82 00 0C */ bne lbl_800396AC /* 800396A4 00035304 38 60 00 00 */ li r3, 0 /* 800396A8 00035308 48 00 00 14 */ b lbl_800396BC lbl_800396AC: /* 800396AC 0003530C A0 BE 05 10 */ lhz r5, 0x510(r30) /* 800396B0 00035310 7F E4 FB 78 */ mr r4, r31 /* 800396B4 00035314 A0 DE 05 0E */ lhz r6, 0x50e(r30) /* 800396B8 00035318 4B FF 98 35 */ bl func_80032EEC lbl_800396BC: /* 800396BC 0003531C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800396C0 00035320 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800396C4 00035324 83 C1 00 08 */ lwz r30, 8(r1) /* 800396C8 00035328 7C 08 03 A6 */ mtlr r0 /* 800396CC 0003532C 38 21 00 10 */ addi r1, r1, 0x10 /* 800396D0 00035330 4E 80 00 20 */ blr .global func_800396D4 func_800396D4: /* 800396D4 00035334 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800396D8 00035338 7C 08 02 A6 */ mflr r0 /* 800396DC 0003533C 90 01 00 14 */ stw r0, 0x14(r1) /* 800396E0 00035340 93 E1 00 0C */ stw r31, 0xc(r1) /* 800396E4 00035344 7C 7F 1B 78 */ mr r31, r3 /* 800396E8 00035348 48 00 4A 75 */ bl func_8003E15C /* 800396EC 0003534C 2C 03 00 00 */ cmpwi r3, 0 /* 800396F0 00035350 41 82 00 10 */ beq lbl_80039700 /* 800396F4 00035354 A0 9F 05 10 */ lhz r4, 0x510(r31) /* 800396F8 00035358 48 00 4F 19 */ bl func_8003E610 /* 800396FC 0003535C 48 00 00 08 */ b lbl_80039704 lbl_80039700: /* 80039700 00035360 38 60 00 00 */ li r3, 0 lbl_80039704: /* 80039704 00035364 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039708 00035368 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003970C 0003536C 7C 08 03 A6 */ mtlr r0 /* 80039710 00035370 38 21 00 10 */ addi r1, r1, 0x10 /* 80039714 00035374 4E 80 00 20 */ blr .global func_80039718 func_80039718: /* 80039718 00035378 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003971C 0003537C 7C 08 02 A6 */ mflr r0 /* 80039720 00035380 90 01 00 14 */ stw r0, 0x14(r1) /* 80039724 00035384 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039728 00035388 3B E0 00 00 */ li r31, 0 /* 8003972C 0003538C 93 C1 00 08 */ stw r30, 8(r1) /* 80039730 00035390 7C 7E 1B 78 */ mr r30, r3 /* 80039734 00035394 48 00 4A 29 */ bl func_8003E15C /* 80039738 00035398 2C 03 00 00 */ cmpwi r3, 0 /* 8003973C 0003539C 41 82 00 10 */ beq lbl_8003974C /* 80039740 000353A0 A0 9E 05 10 */ lhz r4, 0x510(r30) /* 80039744 000353A4 48 00 4F 1D */ bl func_8003E660 /* 80039748 000353A8 7C 7F 1B 78 */ mr r31, r3 lbl_8003974C: /* 8003974C 000353AC 2C 1F 00 64 */ cmpwi r31, 0x64 /* 80039750 000353B0 40 80 00 0C */ bge lbl_8003975C /* 80039754 000353B4 38 60 00 01 */ li r3, 1 /* 80039758 000353B8 48 00 00 4C */ b lbl_800397A4 lbl_8003975C: /* 8003975C 000353BC 2C 1F 00 FA */ cmpwi r31, 0xfa /* 80039760 000353C0 40 80 00 0C */ bge lbl_8003976C /* 80039764 000353C4 38 60 00 02 */ li r3, 2 /* 80039768 000353C8 48 00 00 3C */ b lbl_800397A4 lbl_8003976C: /* 8003976C 000353CC 2C 1F 01 F4 */ cmpwi r31, 0x1f4 /* 80039770 000353D0 40 80 00 0C */ bge lbl_8003977C /* 80039774 000353D4 38 60 00 03 */ li r3, 3 /* 80039778 000353D8 48 00 00 2C */ b lbl_800397A4 lbl_8003977C: /* 8003977C 000353DC 2C 1F 03 E8 */ cmpwi r31, 0x3e8 /* 80039780 000353E0 40 80 00 0C */ bge lbl_8003978C /* 80039784 000353E4 38 60 00 04 */ li r3, 4 /* 80039788 000353E8 48 00 00 1C */ b lbl_800397A4 lbl_8003978C: /* 8003978C 000353EC 38 60 07 D0 */ li r3, 0x7d0 /* 80039790 000353F0 57 E0 0F FE */ srwi r0, r31, 0x1f /* 80039794 000353F4 7C 63 F8 10 */ subfc r3, r3, r31 /* 80039798 000353F8 38 60 00 00 */ li r3, 0 /* 8003979C 000353FC 7C 60 19 10 */ subfe r3, r0, r3 /* 800397A0 00035400 38 63 00 06 */ addi r3, r3, 6 lbl_800397A4: /* 800397A4 00035404 80 01 00 14 */ lwz r0, 0x14(r1) /* 800397A8 00035408 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800397AC 0003540C 83 C1 00 08 */ lwz r30, 8(r1) /* 800397B0 00035410 7C 08 03 A6 */ mtlr r0 /* 800397B4 00035414 38 21 00 10 */ addi r1, r1, 0x10 /* 800397B8 00035418 4E 80 00 20 */ blr .global func_800397BC func_800397BC: /* 800397BC 0003541C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800397C0 00035420 7C 08 02 A6 */ mflr r0 /* 800397C4 00035424 90 01 00 14 */ stw r0, 0x14(r1) /* 800397C8 00035428 4B FF FF 0D */ bl func_800396D4 /* 800397CC 0003542C 28 03 00 06 */ cmplwi r3, 6 /* 800397D0 00035430 41 81 00 54 */ bgt lbl_80039824 /* 800397D4 00035434 3C 80 80 41 */ lis r4, lbl_8040A410@ha /* 800397D8 00035438 54 60 10 3A */ slwi r0, r3, 2 /* 800397DC 0003543C 38 84 A4 10 */ addi r4, r4, lbl_8040A410@l /* 800397E0 00035440 7C 84 00 2E */ lwzx r4, r4, r0 /* 800397E4 00035444 7C 89 03 A6 */ mtctr r4 /* 800397E8 00035448 4E 80 04 20 */ bctr /* 800397EC 0003544C C0 22 82 30 */ lfs f1, lbl_80640830-_SDA2_BASE_(r2) /* 800397F0 00035450 48 00 00 38 */ b lbl_80039828 /* 800397F4 00035454 C0 22 82 88 */ lfs f1, lbl_80640888-_SDA2_BASE_(r2) /* 800397F8 00035458 48 00 00 30 */ b lbl_80039828 /* 800397FC 0003545C C0 22 82 8C */ lfs f1, lbl_8064088C-_SDA2_BASE_(r2) /* 80039800 00035460 48 00 00 28 */ b lbl_80039828 /* 80039804 00035464 C0 22 82 30 */ lfs f1, lbl_80640830-_SDA2_BASE_(r2) /* 80039808 00035468 48 00 00 20 */ b lbl_80039828 /* 8003980C 0003546C C0 22 82 90 */ lfs f1, lbl_80640890-_SDA2_BASE_(r2) /* 80039810 00035470 48 00 00 18 */ b lbl_80039828 /* 80039814 00035474 C0 22 82 3C */ lfs f1, lbl_8064083C-_SDA2_BASE_(r2) /* 80039818 00035478 48 00 00 10 */ b lbl_80039828 /* 8003981C 0003547C C0 22 82 94 */ lfs f1, lbl_80640894-_SDA2_BASE_(r2) /* 80039820 00035480 48 00 00 08 */ b lbl_80039828 lbl_80039824: /* 80039824 00035484 C0 22 82 30 */ lfs f1, lbl_80640830-_SDA2_BASE_(r2) lbl_80039828: /* 80039828 00035488 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003982C 0003548C 7C 08 03 A6 */ mtlr r0 /* 80039830 00035490 38 21 00 10 */ addi r1, r1, 0x10 /* 80039834 00035494 4E 80 00 20 */ blr .global func_80039838 func_80039838: /* 80039838 00035498 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003983C 0003549C 7C 08 02 A6 */ mflr r0 /* 80039840 000354A0 90 01 00 14 */ stw r0, 0x14(r1) /* 80039844 000354A4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039848 000354A8 7C 9F 23 78 */ mr r31, r4 /* 8003984C 000354AC 93 C1 00 08 */ stw r30, 8(r1) /* 80039850 000354B0 7C 7E 1B 78 */ mr r30, r3 /* 80039854 000354B4 48 00 49 09 */ bl func_8003E15C /* 80039858 000354B8 2C 03 00 00 */ cmpwi r3, 0 /* 8003985C 000354BC 41 82 00 24 */ beq lbl_80039880 /* 80039860 000354C0 A0 DE 05 14 */ lhz r6, 0x514(r30) /* 80039864 000354C4 7F E5 FB 78 */ mr r5, r31 /* 80039868 000354C8 A0 1E 05 12 */ lhz r0, 0x512(r30) /* 8003986C 000354CC A0 9E 05 10 */ lhz r4, 0x510(r30) /* 80039870 000354D0 54 C6 06 3E */ clrlwi r6, r6, 0x18 /* 80039874 000354D4 54 07 06 3E */ clrlwi r7, r0, 0x18 /* 80039878 000354D8 48 00 4E D9 */ bl func_8003E750 /* 8003987C 000354DC 48 00 00 08 */ b lbl_80039884 lbl_80039880: /* 80039880 000354E0 38 60 FF FF */ li r3, -1 lbl_80039884: /* 80039884 000354E4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039888 000354E8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003988C 000354EC 83 C1 00 08 */ lwz r30, 8(r1) /* 80039890 000354F0 7C 08 03 A6 */ mtlr r0 /* 80039894 000354F4 38 21 00 10 */ addi r1, r1, 0x10 /* 80039898 000354F8 4E 80 00 20 */ blr .global func_8003989C func_8003989C: /* 8003989C 000354FC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800398A0 00035500 7C 08 02 A6 */ mflr r0 /* 800398A4 00035504 90 01 00 14 */ stw r0, 0x14(r1) /* 800398A8 00035508 93 E1 00 0C */ stw r31, 0xc(r1) /* 800398AC 0003550C 7C 9F 23 78 */ mr r31, r4 /* 800398B0 00035510 7C A4 2B 78 */ mr r4, r5 /* 800398B4 00035514 93 C1 00 08 */ stw r30, 8(r1) /* 800398B8 00035518 7C 7E 1B 78 */ mr r30, r3 /* 800398BC 0003551C 7F E3 FB 78 */ mr r3, r31 /* 800398C0 00035520 4B FF FF 79 */ bl func_80039838 /* 800398C4 00035524 7C 65 1B 78 */ mr r5, r3 /* 800398C8 00035528 7F C3 F3 78 */ mr r3, r30 /* 800398CC 0003552C 7F E4 FB 78 */ mr r4, r31 /* 800398D0 00035530 48 00 1D A5 */ bl func_8003B674 /* 800398D4 00035534 80 01 00 14 */ lwz r0, 0x14(r1) /* 800398D8 00035538 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800398DC 0003553C 83 C1 00 08 */ lwz r30, 8(r1) /* 800398E0 00035540 7C 08 03 A6 */ mtlr r0 /* 800398E4 00035544 38 21 00 10 */ addi r1, r1, 0x10 /* 800398E8 00035548 4E 80 00 20 */ blr .global func_800398EC func_800398EC: /* 800398EC 0003554C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800398F0 00035550 7C 08 02 A6 */ mflr r0 /* 800398F4 00035554 90 01 00 14 */ stw r0, 0x14(r1) /* 800398F8 00035558 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 800398FC 0003555C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039900 00035560 7C 7F 1B 78 */ mr r31, r3 /* 80039904 00035564 2C 00 00 00 */ cmpwi r0, 0 /* 80039908 00035568 41 82 00 5C */ beq lbl_80039964 /* 8003990C 0003556C 4B FF FF 2D */ bl func_80039838 /* 80039910 00035570 80 BF 0C 04 */ lwz r5, 0xc04(r31) /* 80039914 00035574 2C 03 00 00 */ cmpwi r3, 0 /* 80039918 00035578 A0 85 00 DE */ lhz r4, 0xde(r5) /* 8003991C 0003557C 41 80 00 40 */ blt lbl_8003995C /* 80039920 00035580 7C 03 20 00 */ cmpw r3, r4 /* 80039924 00035584 40 80 00 38 */ bge lbl_8003995C /* 80039928 00035588 80 A5 00 08 */ lwz r5, 8(r5) /* 8003992C 0003558C 2C 05 00 00 */ cmpwi r5, 0 /* 80039930 00035590 40 82 00 0C */ bne lbl_8003993C /* 80039934 00035594 38 60 00 00 */ li r3, 0 /* 80039938 00035598 48 00 00 30 */ b lbl_80039968 lbl_8003993C: /* 8003993C 0003559C 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80039940 000355A0 7C 00 20 40 */ cmplw r0, r4 /* 80039944 000355A4 41 80 00 0C */ blt lbl_80039950 /* 80039948 000355A8 38 60 00 00 */ li r3, 0 /* 8003994C 000355AC 48 00 00 1C */ b lbl_80039968 lbl_80039950: /* 80039950 000355B0 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 80039954 000355B4 7C 65 00 2E */ lwzx r3, r5, r0 /* 80039958 000355B8 48 00 00 10 */ b lbl_80039968 lbl_8003995C: /* 8003995C 000355BC 38 60 00 00 */ li r3, 0 /* 80039960 000355C0 48 00 00 08 */ b lbl_80039968 lbl_80039964: /* 80039964 000355C4 38 60 00 00 */ li r3, 0 lbl_80039968: /* 80039968 000355C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003996C 000355CC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039970 000355D0 7C 08 03 A6 */ mtlr r0 /* 80039974 000355D4 38 21 00 10 */ addi r1, r1, 0x10 /* 80039978 000355D8 4E 80 00 20 */ blr .global func_8003997C func_8003997C: /* 8003997C 000355DC 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 80039980 000355E0 2C 03 00 00 */ cmpwi r3, 0 /* 80039984 000355E4 41 82 00 3C */ beq lbl_800399C0 /* 80039988 000355E8 80 A3 00 08 */ lwz r5, 8(r3) /* 8003998C 000355EC 2C 05 00 00 */ cmpwi r5, 0 /* 80039990 000355F0 40 82 00 0C */ bne lbl_8003999C /* 80039994 000355F4 38 60 00 00 */ li r3, 0 /* 80039998 000355F8 4E 80 00 20 */ blr lbl_8003999C: /* 8003999C 000355FC A0 03 00 DE */ lhz r0, 0xde(r3) /* 800399A0 00035600 54 83 04 3E */ clrlwi r3, r4, 0x10 /* 800399A4 00035604 7C 03 00 40 */ cmplw r3, r0 /* 800399A8 00035608 41 80 00 0C */ blt lbl_800399B4 /* 800399AC 0003560C 38 60 00 00 */ li r3, 0 /* 800399B0 00035610 4E 80 00 20 */ blr lbl_800399B4: /* 800399B4 00035614 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 800399B8 00035618 7C 65 00 2E */ lwzx r3, r5, r0 /* 800399BC 0003561C 4E 80 00 20 */ blr lbl_800399C0: /* 800399C0 00035620 38 60 00 00 */ li r3, 0 /* 800399C4 00035624 4E 80 00 20 */ blr .global func_800399C8 func_800399C8: /* 800399C8 00035628 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800399CC 0003562C 7C 08 02 A6 */ mflr r0 /* 800399D0 00035630 2C 04 00 00 */ cmpwi r4, 0 /* 800399D4 00035634 90 01 00 24 */ stw r0, 0x24(r1) /* 800399D8 00035638 DB E1 00 18 */ stfd f31, 0x18(r1) /* 800399DC 0003563C FF E0 10 90 */ fmr f31, f2 /* 800399E0 00035640 DB C1 00 10 */ stfd f30, 0x10(r1) /* 800399E4 00035644 FF C0 08 90 */ fmr f30, f1 /* 800399E8 00035648 93 E1 00 0C */ stw r31, 0xc(r1) /* 800399EC 0003564C 7C 9F 23 78 */ mr r31, r4 /* 800399F0 00035650 93 C1 00 08 */ stw r30, 8(r1) /* 800399F4 00035654 7C 7E 1B 78 */ mr r30, r3 /* 800399F8 00035658 40 80 00 0C */ bge lbl_80039A04 /* 800399FC 0003565C 38 60 00 00 */ li r3, 0 /* 80039A00 00035660 48 00 00 34 */ b lbl_80039A34 lbl_80039A04: /* 80039A04 00035664 4B FF FC 79 */ bl func_8003967C /* 80039A08 00035668 2C 03 00 00 */ cmpwi r3, 0 /* 80039A0C 0003566C 7C 64 1B 78 */ mr r4, r3 /* 80039A10 00035670 41 82 00 20 */ beq lbl_80039A30 /* 80039A14 00035674 FC 20 F0 90 */ fmr f1, f30 /* 80039A18 00035678 7F C3 F3 78 */ mr r3, r30 /* 80039A1C 0003567C FC 40 F8 90 */ fmr f2, f31 /* 80039A20 00035680 4B FF F8 5D */ bl func_8003927C /* 80039A24 00035684 B3 FE 0B F4 */ sth r31, 0xbf4(r30) /* 80039A28 00035688 38 60 00 01 */ li r3, 1 /* 80039A2C 0003568C 48 00 00 08 */ b lbl_80039A34 lbl_80039A30: /* 80039A30 00035690 38 60 00 00 */ li r3, 0 lbl_80039A34: /* 80039A34 00035694 80 01 00 24 */ lwz r0, 0x24(r1) /* 80039A38 00035698 CB E1 00 18 */ lfd f31, 0x18(r1) /* 80039A3C 0003569C CB C1 00 10 */ lfd f30, 0x10(r1) /* 80039A40 000356A0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039A44 000356A4 83 C1 00 08 */ lwz r30, 8(r1) /* 80039A48 000356A8 7C 08 03 A6 */ mtlr r0 /* 80039A4C 000356AC 38 21 00 20 */ addi r1, r1, 0x20 /* 80039A50 000356B0 4E 80 00 20 */ blr .global func_80039A54 func_80039A54: /* 80039A54 000356B4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80039A58 000356B8 7C 08 02 A6 */ mflr r0 /* 80039A5C 000356BC 90 01 00 44 */ stw r0, 0x44(r1) /* 80039A60 000356C0 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80039A64 000356C4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80039A68 000356C8 FF E0 08 90 */ fmr f31, f1 /* 80039A6C 000356CC 38 A0 00 02 */ li r5, 2 /* 80039A70 000356D0 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80039A74 000356D4 93 C1 00 28 */ stw r30, 0x28(r1) /* 80039A78 000356D8 7C 9E 23 78 */ mr r30, r4 /* 80039A7C 000356DC 38 80 00 08 */ li r4, 8 /* 80039A80 000356E0 93 A1 00 24 */ stw r29, 0x24(r1) /* 80039A84 000356E4 7C 7D 1B 78 */ mr r29, r3 /* 80039A88 000356E8 48 00 03 39 */ bl func_80039DC0 /* 80039A8C 000356EC EC 1F 08 2A */ fadds f0, f31, f1 /* 80039A90 000356F0 A0 1D 05 10 */ lhz r0, 0x510(r29) /* 80039A94 000356F4 28 00 01 67 */ cmplwi r0, 0x167 /* 80039A98 000356F8 D0 1D 0D 78 */ stfs f0, 0xd78(r29) /* 80039A9C 000356FC 40 82 00 08 */ bne lbl_80039AA4 /* 80039AA0 00035700 3B C0 00 00 */ li r30, 0 lbl_80039AA4: /* 80039AA4 00035704 80 1D 00 00 */ lwz r0, 0(r29) /* 80039AA8 00035708 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 /* 80039AAC 0003570C 41 82 01 00 */ beq lbl_80039BAC /* 80039AB0 00035710 7F A3 EB 78 */ mr r3, r29 /* 80039AB4 00035714 38 80 00 00 */ li r4, 0 /* 80039AB8 00035718 48 00 27 A5 */ bl func_8003C25C /* 80039ABC 0003571C 54 7F 04 3E */ clrlwi r31, r3, 0x10 /* 80039AC0 00035720 7F A3 EB 78 */ mr r3, r29 /* 80039AC4 00035724 38 80 00 0A */ li r4, 0xa /* 80039AC8 00035728 48 00 27 95 */ bl func_8003C25C /* 80039ACC 0003572C 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80039AD0 00035730 7C 00 F8 40 */ cmplw r0, r31 /* 80039AD4 00035734 41 82 00 A0 */ beq lbl_80039B74 /* 80039AD8 00035738 7F A3 EB 78 */ mr r3, r29 /* 80039ADC 0003573C 4B FF FA 15 */ bl func_800394F0 /* 80039AE0 00035740 2C 03 00 0A */ cmpwi r3, 0xa /* 80039AE4 00035744 40 82 00 10 */ bne lbl_80039AF4 /* 80039AE8 00035748 7F A3 EB 78 */ mr r3, r29 /* 80039AEC 0003574C 48 00 1C A9 */ bl func_8003B794 /* 80039AF0 00035750 D0 3D 0D 7C */ stfs f1, 0xd7c(r29) lbl_80039AF4: /* 80039AF4 00035754 A0 1D 05 10 */ lhz r0, 0x510(r29) /* 80039AF8 00035758 28 00 00 B2 */ cmplwi r0, 0xb2 /* 80039AFC 0003575C 41 82 00 F0 */ beq lbl_80039BEC /* 80039B00 00035760 2C 1E 00 00 */ cmpwi r30, 0 /* 80039B04 00035764 41 82 00 38 */ beq lbl_80039B3C /* 80039B08 00035768 C0 1D 0D 78 */ lfs f0, 0xd78(r29) /* 80039B0C 0003576C 7F A3 EB 78 */ mr r3, r29 /* 80039B10 00035770 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039B14 00035774 38 80 00 08 */ li r4, 8 /* 80039B18 00035778 D0 1D 0D 80 */ stfs f0, 0xd80(r29) /* 80039B1C 0003577C 4B FF F6 E5 */ bl func_80039200 /* 80039B20 00035780 C0 3D 0D 7C */ lfs f1, 0xd7c(r29) /* 80039B24 00035784 7F A3 EB 78 */ mr r3, r29 /* 80039B28 00035788 C0 5D 0D 78 */ lfs f2, 0xd78(r29) /* 80039B2C 0003578C 38 80 FF FF */ li r4, -1 /* 80039B30 00035790 38 A0 00 00 */ li r5, 0 /* 80039B34 00035794 48 00 11 69 */ bl func_8003AC9C /* 80039B38 00035798 48 00 00 A8 */ b lbl_80039BE0 lbl_80039B3C: /* 80039B3C 0003579C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039B40 000357A0 7F A3 EB 78 */ mr r3, r29 /* 80039B44 000357A4 38 80 00 08 */ li r4, 8 /* 80039B48 000357A8 D0 3D 0D 80 */ stfs f1, 0xd80(r29) /* 80039B4C 000357AC 4B FF F6 B5 */ bl func_80039200 /* 80039B50 000357B0 7F A4 EB 78 */ mr r4, r29 /* 80039B54 000357B4 38 61 00 08 */ addi r3, r1, 8 /* 80039B58 000357B8 4B FF EC 89 */ bl func_800387E0 /* 80039B5C 000357BC C0 1D 0D 7C */ lfs f0, 0xd7c(r29) /* 80039B60 000357C0 7F A3 EB 78 */ mr r3, r29 /* 80039B64 000357C4 38 81 00 08 */ addi r4, r1, 8 /* 80039B68 000357C8 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80039B6C 000357CC 4B FF EC B1 */ bl func_8003881C /* 80039B70 000357D0 48 00 00 70 */ b lbl_80039BE0 lbl_80039B74: /* 80039B74 000357D4 2C 1E 00 00 */ cmpwi r30, 0 /* 80039B78 000357D8 41 82 00 18 */ beq lbl_80039B90 /* 80039B7C 000357DC C0 22 82 98 */ lfs f1, lbl_80640898-_SDA2_BASE_(r2) /* 80039B80 000357E0 C0 1D 0D 78 */ lfs f0, 0xd78(r29) /* 80039B84 000357E4 EC 01 00 32 */ fmuls f0, f1, f0 /* 80039B88 000357E8 D0 1D 0D 80 */ stfs f0, 0xd80(r29) /* 80039B8C 000357EC 48 00 00 0C */ b lbl_80039B98 lbl_80039B90: /* 80039B90 000357F0 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80039B94 000357F4 D0 1D 0D 80 */ stfs f0, 0xd80(r29) lbl_80039B98: /* 80039B98 000357F8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039B9C 000357FC 7F A3 EB 78 */ mr r3, r29 /* 80039BA0 00035800 38 80 00 08 */ li r4, 8 /* 80039BA4 00035804 4B FF F6 5D */ bl func_80039200 /* 80039BA8 00035808 48 00 00 38 */ b lbl_80039BE0 lbl_80039BAC: /* 80039BAC 0003580C 2C 1E 00 00 */ cmpwi r30, 0 /* 80039BB0 00035810 41 82 00 18 */ beq lbl_80039BC8 /* 80039BB4 00035814 C0 22 82 98 */ lfs f1, lbl_80640898-_SDA2_BASE_(r2) /* 80039BB8 00035818 C0 1D 0D 78 */ lfs f0, 0xd78(r29) /* 80039BBC 0003581C EC 01 00 32 */ fmuls f0, f1, f0 /* 80039BC0 00035820 D0 1D 0D 80 */ stfs f0, 0xd80(r29) /* 80039BC4 00035824 48 00 00 0C */ b lbl_80039BD0 lbl_80039BC8: /* 80039BC8 00035828 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80039BCC 0003582C D0 1D 0D 80 */ stfs f0, 0xd80(r29) lbl_80039BD0: /* 80039BD0 00035830 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039BD4 00035834 7F A3 EB 78 */ mr r3, r29 /* 80039BD8 00035838 38 80 00 08 */ li r4, 8 /* 80039BDC 0003583C 4B FF F6 25 */ bl func_80039200 lbl_80039BE0: /* 80039BE0 00035840 80 1D 00 00 */ lwz r0, 0(r29) /* 80039BE4 00035844 64 00 00 20 */ oris r0, r0, 0x20 /* 80039BE8 00035848 90 1D 00 00 */ stw r0, 0(r29) lbl_80039BEC: /* 80039BEC 0003584C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80039BF0 00035850 80 01 00 44 */ lwz r0, 0x44(r1) /* 80039BF4 00035854 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80039BF8 00035858 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80039BFC 0003585C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80039C00 00035860 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80039C04 00035864 7C 08 03 A6 */ mtlr r0 /* 80039C08 00035868 38 21 00 40 */ addi r1, r1, 0x40 /* 80039C0C 0003586C 4E 80 00 20 */ blr .global func_80039C10 func_80039C10: /* 80039C10 00035870 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80039C14 00035874 7C 08 02 A6 */ mflr r0 /* 80039C18 00035878 90 01 00 24 */ stw r0, 0x24(r1) /* 80039C1C 0003587C DB E1 00 10 */ stfd f31, 0x10(r1) /* 80039C20 00035880 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 80039C24 00035884 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039C28 00035888 93 C1 00 08 */ stw r30, 8(r1) /* 80039C2C 0003588C 7C 7E 1B 78 */ mr r30, r3 /* 80039C30 00035890 80 03 00 00 */ lwz r0, 0(r3) /* 80039C34 00035894 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 /* 80039C38 00035898 41 82 00 80 */ beq lbl_80039CB8 /* 80039C3C 0003589C 38 80 00 00 */ li r4, 0 /* 80039C40 000358A0 48 00 26 1D */ bl func_8003C25C /* 80039C44 000358A4 54 7F 04 3E */ clrlwi r31, r3, 0x10 /* 80039C48 000358A8 7F C3 F3 78 */ mr r3, r30 /* 80039C4C 000358AC 38 80 00 0A */ li r4, 0xa /* 80039C50 000358B0 48 00 26 0D */ bl func_8003C25C /* 80039C54 000358B4 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80039C58 000358B8 7C 00 F8 40 */ cmplw r0, r31 /* 80039C5C 000358BC 41 82 00 48 */ beq lbl_80039CA4 /* 80039C60 000358C0 7F C3 F3 78 */ mr r3, r30 /* 80039C64 000358C4 38 80 00 0A */ li r4, 0xa /* 80039C68 000358C8 38 A0 00 02 */ li r5, 2 /* 80039C6C 000358CC 48 00 01 55 */ bl func_80039DC0 /* 80039C70 000358D0 FF E0 08 90 */ fmr f31, f1 /* 80039C74 000358D4 D0 3E 0D 80 */ stfs f1, 0xd80(r30) /* 80039C78 000358D8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039C7C 000358DC 7F C3 F3 78 */ mr r3, r30 /* 80039C80 000358E0 38 80 00 0A */ li r4, 0xa /* 80039C84 000358E4 4B FF F5 7D */ bl func_80039200 /* 80039C88 000358E8 FC 40 F8 90 */ fmr f2, f31 /* 80039C8C 000358EC C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039C90 000358F0 7F C3 F3 78 */ mr r3, r30 /* 80039C94 000358F4 38 80 FF FF */ li r4, -1 /* 80039C98 000358F8 38 A0 00 00 */ li r5, 0 /* 80039C9C 000358FC 48 00 10 01 */ bl func_8003AC9C /* 80039CA0 00035900 48 00 00 24 */ b lbl_80039CC4 lbl_80039CA4: /* 80039CA4 00035904 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039CA8 00035908 7F C3 F3 78 */ mr r3, r30 /* 80039CAC 0003590C 38 80 00 00 */ li r4, 0 /* 80039CB0 00035910 4B FF F5 51 */ bl func_80039200 /* 80039CB4 00035914 48 00 00 10 */ b lbl_80039CC4 lbl_80039CB8: /* 80039CB8 00035918 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039CBC 0003591C 38 80 00 00 */ li r4, 0 /* 80039CC0 00035920 4B FF F5 41 */ bl func_80039200 lbl_80039CC4: /* 80039CC4 00035924 80 1E 00 00 */ lwz r0, 0(r30) /* 80039CC8 00035928 54 00 02 D2 */ rlwinm r0, r0, 0, 0xb, 9 /* 80039CCC 0003592C 90 1E 00 00 */ stw r0, 0(r30) /* 80039CD0 00035930 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 80039CD4 00035934 CB E1 00 10 */ lfd f31, 0x10(r1) /* 80039CD8 00035938 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039CDC 0003593C 83 C1 00 08 */ lwz r30, 8(r1) /* 80039CE0 00035940 80 01 00 24 */ lwz r0, 0x24(r1) /* 80039CE4 00035944 7C 08 03 A6 */ mtlr r0 /* 80039CE8 00035948 38 21 00 20 */ addi r1, r1, 0x20 /* 80039CEC 0003594C 4E 80 00 20 */ blr .global func_80039CF0 func_80039CF0: /* 80039CF0 00035950 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80039CF4 00035954 7C 08 02 A6 */ mflr r0 /* 80039CF8 00035958 90 01 00 14 */ stw r0, 0x14(r1) /* 80039CFC 0003595C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039D00 00035960 7C BF 2B 78 */ mr r31, r5 /* 80039D04 00035964 93 C1 00 08 */ stw r30, 8(r1) /* 80039D08 00035968 7C 7E 1B 78 */ mr r30, r3 /* 80039D0C 0003596C 4B FF F9 71 */ bl func_8003967C /* 80039D10 00035970 2C 03 00 00 */ cmpwi r3, 0 /* 80039D14 00035974 41 82 00 90 */ beq lbl_80039DA4 /* 80039D18 00035978 80 1E 0C 04 */ lwz r0, 0xc04(r30) /* 80039D1C 0003597C 2C 00 00 00 */ cmpwi r0, 0 /* 80039D20 00035980 41 82 00 84 */ beq lbl_80039DA4 /* 80039D24 00035984 88 83 00 00 */ lbz r4, 0(r3) /* 80039D28 00035988 7F C3 F3 78 */ mr r3, r30 /* 80039D2C 0003598C 7C 84 07 74 */ extsb r4, r4 /* 80039D30 00035990 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 80039D34 00035994 48 00 25 29 */ bl func_8003C25C /* 80039D38 00035998 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 80039D3C 0003599C 80 84 00 04 */ lwz r4, 4(r4) /* 80039D40 000359A0 2C 04 00 00 */ cmpwi r4, 0 /* 80039D44 000359A4 40 82 00 0C */ bne lbl_80039D50 /* 80039D48 000359A8 38 60 00 00 */ li r3, 0 /* 80039D4C 000359AC 48 00 00 28 */ b lbl_80039D74 lbl_80039D50: /* 80039D50 000359B0 A0 04 00 08 */ lhz r0, 8(r4) /* 80039D54 000359B4 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80039D58 000359B8 7C 03 00 40 */ cmplw r3, r0 /* 80039D5C 000359BC 41 80 00 0C */ blt lbl_80039D68 /* 80039D60 000359C0 38 60 00 00 */ li r3, 0 /* 80039D64 000359C4 48 00 00 10 */ b lbl_80039D74 lbl_80039D68: /* 80039D68 000359C8 1C 03 00 30 */ mulli r0, r3, 0x30 /* 80039D6C 000359CC 80 64 00 0C */ lwz r3, 0xc(r4) /* 80039D70 000359D0 7C 63 02 14 */ add r3, r3, r0 lbl_80039D74: /* 80039D74 000359D4 2C 03 00 00 */ cmpwi r3, 0 /* 80039D78 000359D8 41 82 00 2C */ beq lbl_80039DA4 /* 80039D7C 000359DC 2C 1F 00 00 */ cmpwi r31, 0 /* 80039D80 000359E0 40 80 00 0C */ bge lbl_80039D8C /* 80039D84 000359E4 C0 23 00 0C */ lfs f1, 0xc(r3) /* 80039D88 000359E8 48 00 00 20 */ b lbl_80039DA8 lbl_80039D8C: /* 80039D8C 000359EC 2C 1F 00 03 */ cmpwi r31, 3 /* 80039D90 000359F0 40 80 00 14 */ bge lbl_80039DA4 /* 80039D94 000359F4 57 E0 10 3A */ slwi r0, r31, 2 /* 80039D98 000359F8 7C 63 02 14 */ add r3, r3, r0 /* 80039D9C 000359FC C0 23 00 04 */ lfs f1, 4(r3) /* 80039DA0 00035A00 48 00 00 08 */ b lbl_80039DA8 lbl_80039DA4: /* 80039DA4 00035A04 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) lbl_80039DA8: /* 80039DA8 00035A08 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039DAC 00035A0C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039DB0 00035A10 83 C1 00 08 */ lwz r30, 8(r1) /* 80039DB4 00035A14 7C 08 03 A6 */ mtlr r0 /* 80039DB8 00035A18 38 21 00 10 */ addi r1, r1, 0x10 /* 80039DBC 00035A1C 4E 80 00 20 */ blr .global func_80039DC0 func_80039DC0: /* 80039DC0 00035A20 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80039DC4 00035A24 7C 08 02 A6 */ mflr r0 /* 80039DC8 00035A28 90 01 00 14 */ stw r0, 0x14(r1) /* 80039DCC 00035A2C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039DD0 00035A30 7C BF 2B 78 */ mr r31, r5 /* 80039DD4 00035A34 93 C1 00 08 */ stw r30, 8(r1) /* 80039DD8 00035A38 7C 7E 1B 78 */ mr r30, r3 /* 80039DDC 00035A3C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 80039DE0 00035A40 2C 00 00 00 */ cmpwi r0, 0 /* 80039DE4 00035A44 40 82 00 0C */ bne lbl_80039DF0 /* 80039DE8 00035A48 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039DEC 00035A4C 48 00 00 7C */ b lbl_80039E68 lbl_80039DF0: /* 80039DF0 00035A50 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 80039DF4 00035A54 48 00 24 69 */ bl func_8003C25C /* 80039DF8 00035A58 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 80039DFC 00035A5C 80 84 00 04 */ lwz r4, 4(r4) /* 80039E00 00035A60 2C 04 00 00 */ cmpwi r4, 0 /* 80039E04 00035A64 40 82 00 0C */ bne lbl_80039E10 /* 80039E08 00035A68 38 60 00 00 */ li r3, 0 /* 80039E0C 00035A6C 48 00 00 28 */ b lbl_80039E34 lbl_80039E10: /* 80039E10 00035A70 A0 04 00 08 */ lhz r0, 8(r4) /* 80039E14 00035A74 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80039E18 00035A78 7C 03 00 40 */ cmplw r3, r0 /* 80039E1C 00035A7C 41 80 00 0C */ blt lbl_80039E28 /* 80039E20 00035A80 38 60 00 00 */ li r3, 0 /* 80039E24 00035A84 48 00 00 10 */ b lbl_80039E34 lbl_80039E28: /* 80039E28 00035A88 1C 03 00 30 */ mulli r0, r3, 0x30 /* 80039E2C 00035A8C 80 64 00 0C */ lwz r3, 0xc(r4) /* 80039E30 00035A90 7C 63 02 14 */ add r3, r3, r0 lbl_80039E34: /* 80039E34 00035A94 2C 03 00 00 */ cmpwi r3, 0 /* 80039E38 00035A98 41 82 00 2C */ beq lbl_80039E64 /* 80039E3C 00035A9C 2C 1F 00 00 */ cmpwi r31, 0 /* 80039E40 00035AA0 40 80 00 0C */ bge lbl_80039E4C /* 80039E44 00035AA4 C0 23 00 0C */ lfs f1, 0xc(r3) /* 80039E48 00035AA8 48 00 00 20 */ b lbl_80039E68 lbl_80039E4C: /* 80039E4C 00035AAC 2C 1F 00 03 */ cmpwi r31, 3 /* 80039E50 00035AB0 40 80 00 14 */ bge lbl_80039E64 /* 80039E54 00035AB4 57 E0 10 3A */ slwi r0, r31, 2 /* 80039E58 00035AB8 7C 63 02 14 */ add r3, r3, r0 /* 80039E5C 00035ABC C0 23 00 04 */ lfs f1, 4(r3) /* 80039E60 00035AC0 48 00 00 08 */ b lbl_80039E68 lbl_80039E64: /* 80039E64 00035AC4 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) lbl_80039E68: /* 80039E68 00035AC8 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039E6C 00035ACC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039E70 00035AD0 83 C1 00 08 */ lwz r30, 8(r1) /* 80039E74 00035AD4 7C 08 03 A6 */ mtlr r0 /* 80039E78 00035AD8 38 21 00 10 */ addi r1, r1, 0x10 /* 80039E7C 00035ADC 4E 80 00 20 */ blr .global func_80039E80 func_80039E80: /* 80039E80 00035AE0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80039E84 00035AE4 7C 08 02 A6 */ mflr r0 /* 80039E88 00035AE8 2C 05 00 00 */ cmpwi r5, 0 /* 80039E8C 00035AEC 90 01 00 14 */ stw r0, 0x14(r1) /* 80039E90 00035AF0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80039E94 00035AF4 7C BF 2B 78 */ mr r31, r5 /* 80039E98 00035AF8 93 C1 00 08 */ stw r30, 8(r1) /* 80039E9C 00035AFC 7C 7E 1B 78 */ mr r30, r3 /* 80039EA0 00035B00 40 82 00 0C */ bne lbl_80039EAC /* 80039EA4 00035B04 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039EA8 00035B08 48 00 00 84 */ b lbl_80039F2C lbl_80039EAC: /* 80039EAC 00035B0C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 80039EB0 00035B10 2C 00 00 00 */ cmpwi r0, 0 /* 80039EB4 00035B14 41 82 00 74 */ beq lbl_80039F28 /* 80039EB8 00035B18 48 00 23 A5 */ bl func_8003C25C /* 80039EBC 00035B1C 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 80039EC0 00035B20 80 84 00 04 */ lwz r4, 4(r4) /* 80039EC4 00035B24 2C 04 00 00 */ cmpwi r4, 0 /* 80039EC8 00035B28 40 82 00 0C */ bne lbl_80039ED4 /* 80039ECC 00035B2C 38 60 00 00 */ li r3, 0 /* 80039ED0 00035B30 48 00 00 28 */ b lbl_80039EF8 lbl_80039ED4: /* 80039ED4 00035B34 A0 04 00 08 */ lhz r0, 8(r4) /* 80039ED8 00035B38 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80039EDC 00035B3C 7C 03 00 40 */ cmplw r3, r0 /* 80039EE0 00035B40 41 80 00 0C */ blt lbl_80039EEC /* 80039EE4 00035B44 38 60 00 00 */ li r3, 0 /* 80039EE8 00035B48 48 00 00 10 */ b lbl_80039EF8 lbl_80039EEC: /* 80039EEC 00035B4C 1C 03 00 30 */ mulli r0, r3, 0x30 /* 80039EF0 00035B50 80 64 00 0C */ lwz r3, 0xc(r4) /* 80039EF4 00035B54 7C 63 02 14 */ add r3, r3, r0 lbl_80039EF8: /* 80039EF8 00035B58 2C 03 00 00 */ cmpwi r3, 0 /* 80039EFC 00035B5C 41 82 00 2C */ beq lbl_80039F28 /* 80039F00 00035B60 34 1F FF FF */ addic. r0, r31, -1 /* 80039F04 00035B64 41 80 00 0C */ blt lbl_80039F10 /* 80039F08 00035B68 2C 00 00 03 */ cmpwi r0, 3 /* 80039F0C 00035B6C 41 80 00 0C */ blt lbl_80039F18 lbl_80039F10: /* 80039F10 00035B70 C0 23 00 0C */ lfs f1, 0xc(r3) /* 80039F14 00035B74 48 00 00 18 */ b lbl_80039F2C lbl_80039F18: /* 80039F18 00035B78 54 00 10 3A */ slwi r0, r0, 2 /* 80039F1C 00035B7C 7C 63 02 14 */ add r3, r3, r0 /* 80039F20 00035B80 C0 23 00 04 */ lfs f1, 4(r3) /* 80039F24 00035B84 48 00 00 08 */ b lbl_80039F2C lbl_80039F28: /* 80039F28 00035B88 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) lbl_80039F2C: /* 80039F2C 00035B8C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80039F30 00035B90 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80039F34 00035B94 83 C1 00 08 */ lwz r30, 8(r1) /* 80039F38 00035B98 7C 08 03 A6 */ mtlr r0 /* 80039F3C 00035B9C 38 21 00 10 */ addi r1, r1, 0x10 /* 80039F40 00035BA0 4E 80 00 20 */ blr .global func_80039F44 func_80039F44: /* 80039F44 00035BA4 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 80039F48 00035BA8 2C 03 00 00 */ cmpwi r3, 0 /* 80039F4C 00035BAC 40 82 00 0C */ bne lbl_80039F58 /* 80039F50 00035BB0 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 80039F54 00035BB4 4E 80 00 20 */ blr lbl_80039F58: /* 80039F58 00035BB8 48 1B BB EC */ b func_801F5B44 /* 80039F5C 00035BBC 4E 80 00 20 */ blr .global func_80039F60 func_80039F60: /* 80039F60 00035BC0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80039F64 00035BC4 7C 08 02 A6 */ mflr r0 /* 80039F68 00035BC8 90 01 00 64 */ stw r0, 0x64(r1) /* 80039F6C 00035BCC DB E1 00 50 */ stfd f31, 0x50(r1) /* 80039F70 00035BD0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 80039F74 00035BD4 DB C1 00 40 */ stfd f30, 0x40(r1) /* 80039F78 00035BD8 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 /* 80039F7C 00035BDC 39 61 00 40 */ addi r11, r1, 0x40 /* 80039F80 00035BE0 48 18 D1 A5 */ bl _savegpr_26 /* 80039F84 00035BE4 80 04 0C 04 */ lwz r0, 0xc04(r4) /* 80039F88 00035BE8 FF C0 08 90 */ fmr f30, f1 /* 80039F8C 00035BEC FF E0 10 90 */ fmr f31, f2 /* 80039F90 00035BF0 7C 7E 1B 78 */ mr r30, r3 /* 80039F94 00035BF4 2C 00 00 00 */ cmpwi r0, 0 /* 80039F98 00035BF8 7C 9F 23 78 */ mr r31, r4 /* 80039F9C 00035BFC 7C DB 33 78 */ mr r27, r6 /* 80039FA0 00035C00 7C FA 3B 78 */ mr r26, r7 /* 80039FA4 00035C04 40 82 00 18 */ bne lbl_80039FBC /* 80039FA8 00035C08 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80039FAC 00035C0C D0 03 00 00 */ stfs f0, 0(r3) /* 80039FB0 00035C10 D0 03 00 04 */ stfs f0, 4(r3) /* 80039FB4 00035C14 D0 03 00 08 */ stfs f0, 8(r3) /* 80039FB8 00035C18 48 00 02 04 */ b lbl_8003A1BC lbl_80039FBC: /* 80039FBC 00035C1C 7F E3 FB 78 */ mr r3, r31 /* 80039FC0 00035C20 7C A4 2B 78 */ mr r4, r5 /* 80039FC4 00035C24 4B FF F6 B9 */ bl func_8003967C /* 80039FC8 00035C28 2C 03 00 00 */ cmpwi r3, 0 /* 80039FCC 00035C2C 40 82 00 18 */ bne lbl_80039FE4 /* 80039FD0 00035C30 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 80039FD4 00035C34 D0 1E 00 00 */ stfs f0, 0(r30) /* 80039FD8 00035C38 D0 1E 00 04 */ stfs f0, 4(r30) /* 80039FDC 00035C3C D0 1E 00 08 */ stfs f0, 8(r30) /* 80039FE0 00035C40 48 00 01 DC */ b lbl_8003A1BC lbl_80039FE4: /* 80039FE4 00035C44 88 83 00 00 */ lbz r4, 0(r3) /* 80039FE8 00035C48 7F E3 FB 78 */ mr r3, r31 /* 80039FEC 00035C4C 7C 84 07 74 */ extsb r4, r4 /* 80039FF0 00035C50 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 80039FF4 00035C54 48 00 22 69 */ bl func_8003C25C /* 80039FF8 00035C58 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 80039FFC 00035C5C 7C 7D 1B 78 */ mr r29, r3 /* 8003A000 00035C60 80 64 00 08 */ lwz r3, 8(r4) /* 8003A004 00035C64 2C 03 00 00 */ cmpwi r3, 0 /* 8003A008 00035C68 40 82 00 0C */ bne lbl_8003A014 /* 8003A00C 00035C6C 3B 80 00 00 */ li r28, 0 /* 8003A010 00035C70 48 00 00 1C */ b lbl_8003A02C lbl_8003A014: /* 8003A014 00035C74 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003A018 00035C78 2C 00 00 00 */ cmpwi r0, 0 /* 8003A01C 00035C7C 40 82 00 0C */ bne lbl_8003A028 /* 8003A020 00035C80 3B 80 00 00 */ li r28, 0 /* 8003A024 00035C84 48 00 00 08 */ b lbl_8003A02C lbl_8003A028: /* 8003A028 00035C88 83 83 00 00 */ lwz r28, 0(r3) lbl_8003A02C: /* 8003A02C 00035C8C 7F E3 FB 78 */ mr r3, r31 /* 8003A030 00035C90 7F 64 DB 78 */ mr r4, r27 /* 8003A034 00035C94 4B FF F8 05 */ bl func_80039838 /* 8003A038 00035C98 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 8003A03C 00035C9C 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003A040 00035CA0 80 A4 00 08 */ lwz r5, 8(r4) /* 8003A044 00035CA4 2C 05 00 00 */ cmpwi r5, 0 /* 8003A048 00035CA8 40 82 00 0C */ bne lbl_8003A054 /* 8003A04C 00035CAC 3B 60 00 00 */ li r27, 0 /* 8003A050 00035CB0 48 00 00 20 */ b lbl_8003A070 lbl_8003A054: /* 8003A054 00035CB4 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003A058 00035CB8 7C 03 00 40 */ cmplw r3, r0 /* 8003A05C 00035CBC 41 80 00 0C */ blt lbl_8003A068 /* 8003A060 00035CC0 3B 60 00 00 */ li r27, 0 /* 8003A064 00035CC4 48 00 00 0C */ b lbl_8003A070 lbl_8003A068: /* 8003A068 00035CC8 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003A06C 00035CCC 7F 65 00 2E */ lwzx r27, r5, r0 lbl_8003A070: /* 8003A070 00035CD0 7F E3 FB 78 */ mr r3, r31 /* 8003A074 00035CD4 7F 44 D3 78 */ mr r4, r26 /* 8003A078 00035CD8 4B FF F7 C1 */ bl func_80039838 /* 8003A07C 00035CDC 80 BF 0C 04 */ lwz r5, 0xc04(r31) /* 8003A080 00035CE0 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003A084 00035CE4 80 85 00 08 */ lwz r4, 8(r5) /* 8003A088 00035CE8 2C 04 00 00 */ cmpwi r4, 0 /* 8003A08C 00035CEC 40 82 00 0C */ bne lbl_8003A098 /* 8003A090 00035CF0 3B 40 00 00 */ li r26, 0 /* 8003A094 00035CF4 48 00 00 20 */ b lbl_8003A0B4 lbl_8003A098: /* 8003A098 00035CF8 A0 05 00 DE */ lhz r0, 0xde(r5) /* 8003A09C 00035CFC 7C 03 00 40 */ cmplw r3, r0 /* 8003A0A0 00035D00 41 80 00 0C */ blt lbl_8003A0AC /* 8003A0A4 00035D04 3B 40 00 00 */ li r26, 0 /* 8003A0A8 00035D08 48 00 00 0C */ b lbl_8003A0B4 lbl_8003A0AC: /* 8003A0AC 00035D0C 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003A0B0 00035D10 7F 44 00 2E */ lwzx r26, r4, r0 lbl_8003A0B4: /* 8003A0B4 00035D14 2C 1C 00 00 */ cmpwi r28, 0 /* 8003A0B8 00035D18 41 82 00 14 */ beq lbl_8003A0CC /* 8003A0BC 00035D1C 2C 1B 00 00 */ cmpwi r27, 0 /* 8003A0C0 00035D20 41 82 00 0C */ beq lbl_8003A0CC /* 8003A0C4 00035D24 2C 1A 00 00 */ cmpwi r26, 0 /* 8003A0C8 00035D28 40 82 00 18 */ bne lbl_8003A0E0 lbl_8003A0CC: /* 8003A0CC 00035D2C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A0D0 00035D30 D0 1E 00 00 */ stfs f0, 0(r30) /* 8003A0D4 00035D34 D0 1E 00 04 */ stfs f0, 4(r30) /* 8003A0D8 00035D38 D0 1E 00 08 */ stfs f0, 8(r30) /* 8003A0DC 00035D3C 48 00 00 E0 */ b lbl_8003A1BC lbl_8003A0E0: /* 8003A0E0 00035D40 FC 20 F0 90 */ fmr f1, f30 /* 8003A0E4 00035D44 7C A3 2B 78 */ mr r3, r5 /* 8003A0E8 00035D48 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A0EC 00035D4C 57 A4 04 3E */ clrlwi r4, r29, 0x10 /* 8003A0F0 00035D50 38 A0 00 00 */ li r5, 0 /* 8003A0F4 00035D54 38 C0 00 00 */ li r6, 0 /* 8003A0F8 00035D58 38 E0 00 00 */ li r7, 0 /* 8003A0FC 00035D5C 39 00 00 00 */ li r8, 0 /* 8003A100 00035D60 48 1B AC F5 */ bl func_801F4DF4 /* 8003A104 00035D64 81 9C 01 00 */ lwz r12, 0x100(r28) /* 8003A108 00035D68 7F 83 E3 78 */ mr r3, r28 /* 8003A10C 00035D6C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A110 00035D70 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8003A114 00035D74 7D 89 03 A6 */ mtctr r12 /* 8003A118 00035D78 4E 80 04 21 */ bctrl /* 8003A11C 00035D7C C0 1B 00 DC */ lfs f0, 0xdc(r27) /* 8003A120 00035D80 FC 20 F8 90 */ fmr f1, f31 /* 8003A124 00035D84 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A128 00035D88 57 A4 04 3E */ clrlwi r4, r29, 0x10 /* 8003A12C 00035D8C D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003A130 00035D90 38 A0 00 00 */ li r5, 0 /* 8003A134 00035D94 38 C0 00 00 */ li r6, 0 /* 8003A138 00035D98 C0 1B 00 EC */ lfs f0, 0xec(r27) /* 8003A13C 00035D9C 38 E0 00 00 */ li r7, 0 /* 8003A140 00035DA0 39 00 00 00 */ li r8, 0 /* 8003A144 00035DA4 D0 01 00 18 */ stfs f0, 0x18(r1) /* 8003A148 00035DA8 C0 1B 00 FC */ lfs f0, 0xfc(r27) /* 8003A14C 00035DAC D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8003A150 00035DB0 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A154 00035DB4 48 1B AC A1 */ bl func_801F4DF4 /* 8003A158 00035DB8 81 9C 01 00 */ lwz r12, 0x100(r28) /* 8003A15C 00035DBC 7F 83 E3 78 */ mr r3, r28 /* 8003A160 00035DC0 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A164 00035DC4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8003A168 00035DC8 7D 89 03 A6 */ mtctr r12 /* 8003A16C 00035DCC 4E 80 04 21 */ bctrl /* 8003A170 00035DD0 C0 1A 00 DC */ lfs f0, 0xdc(r26) /* 8003A174 00035DD4 38 80 00 00 */ li r4, 0 /* 8003A178 00035DD8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A17C 00035DDC 38 A0 00 01 */ li r5, 1 /* 8003A180 00035DE0 D0 01 00 08 */ stfs f0, 8(r1) /* 8003A184 00035DE4 38 C0 00 00 */ li r6, 0 /* 8003A188 00035DE8 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A18C 00035DEC 38 E0 00 00 */ li r7, 0 /* 8003A190 00035DF0 C0 1A 00 EC */ lfs f0, 0xec(r26) /* 8003A194 00035DF4 39 00 00 00 */ li r8, 0 /* 8003A198 00035DF8 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8003A19C 00035DFC C0 1A 00 FC */ lfs f0, 0xfc(r26) /* 8003A1A0 00035E00 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003A1A4 00035E04 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A1A8 00035E08 48 1B AC 4D */ bl func_801F4DF4 /* 8003A1AC 00035E0C 7F C5 F3 78 */ mr r5, r30 /* 8003A1B0 00035E10 38 61 00 08 */ addi r3, r1, 8 /* 8003A1B4 00035E14 38 81 00 14 */ addi r4, r1, 0x14 /* 8003A1B8 00035E18 48 24 2B 31 */ bl func_8027CCE8 lbl_8003A1BC: /* 8003A1BC 00035E1C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 8003A1C0 00035E20 CB E1 00 50 */ lfd f31, 0x50(r1) /* 8003A1C4 00035E24 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 /* 8003A1C8 00035E28 39 61 00 40 */ addi r11, r1, 0x40 /* 8003A1CC 00035E2C CB C1 00 40 */ lfd f30, 0x40(r1) /* 8003A1D0 00035E30 48 18 CF A1 */ bl _restgpr_26 /* 8003A1D4 00035E34 80 01 00 64 */ lwz r0, 0x64(r1) /* 8003A1D8 00035E38 7C 08 03 A6 */ mtlr r0 /* 8003A1DC 00035E3C 38 21 00 60 */ addi r1, r1, 0x60 /* 8003A1E0 00035E40 4E 80 00 20 */ blr .global func_8003A1E4 func_8003A1E4: /* 8003A1E4 00035E44 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003A1E8 00035E48 7C 08 02 A6 */ mflr r0 /* 8003A1EC 00035E4C 7C 88 23 78 */ mr r8, r4 /* 8003A1F0 00035E50 7C 64 1B 78 */ mr r4, r3 /* 8003A1F4 00035E54 90 01 00 24 */ stw r0, 0x24(r1) /* 8003A1F8 00035E58 7C A0 2B 78 */ mr r0, r5 /* 8003A1FC 00035E5C 7C C7 33 78 */ mr r7, r6 /* 8003A200 00035E60 7D 05 43 78 */ mr r5, r8 /* 8003A204 00035E64 7C 06 03 78 */ mr r6, r0 /* 8003A208 00035E68 38 61 00 08 */ addi r3, r1, 8 /* 8003A20C 00035E6C 4B FF FD 55 */ bl func_80039F60 /* 8003A210 00035E70 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A214 00035E74 38 61 00 08 */ addi r3, r1, 8 /* 8003A218 00035E78 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8003A21C 00035E7C 48 24 2B 69 */ bl func_8027CD84 /* 8003A220 00035E80 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003A224 00035E84 7C 08 03 A6 */ mtlr r0 /* 8003A228 00035E88 38 21 00 20 */ addi r1, r1, 0x20 /* 8003A22C 00035E8C 4E 80 00 20 */ blr .global func_8003A230 func_8003A230: /* 8003A230 00035E90 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003A234 00035E94 7C 08 02 A6 */ mflr r0 /* 8003A238 00035E98 7C 88 23 78 */ mr r8, r4 /* 8003A23C 00035E9C 7C 64 1B 78 */ mr r4, r3 /* 8003A240 00035EA0 90 01 00 24 */ stw r0, 0x24(r1) /* 8003A244 00035EA4 7C A0 2B 78 */ mr r0, r5 /* 8003A248 00035EA8 7C C7 33 78 */ mr r7, r6 /* 8003A24C 00035EAC 7D 05 43 78 */ mr r5, r8 /* 8003A250 00035EB0 7C 06 03 78 */ mr r6, r0 /* 8003A254 00035EB4 38 61 00 08 */ addi r3, r1, 8 /* 8003A258 00035EB8 4B FF FD 09 */ bl func_80039F60 /* 8003A25C 00035EBC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003A260 00035EC0 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8003A264 00035EC4 7C 08 03 A6 */ mtlr r0 /* 8003A268 00035EC8 38 21 00 20 */ addi r1, r1, 0x20 /* 8003A26C 00035ECC 4E 80 00 20 */ blr .global func_8003A270 func_8003A270: /* 8003A270 00035ED0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8003A274 00035ED4 7C 08 02 A6 */ mflr r0 /* 8003A278 00035ED8 90 01 00 44 */ stw r0, 0x44(r1) /* 8003A27C 00035EDC DB E1 00 30 */ stfd f31, 0x30(r1) /* 8003A280 00035EE0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8003A284 00035EE4 39 61 00 30 */ addi r11, r1, 0x30 /* 8003A288 00035EE8 48 18 CE A1 */ bl _savegpr_27 /* 8003A28C 00035EEC FF E0 08 90 */ fmr f31, f1 /* 8003A290 00035EF0 7C 9C 23 78 */ mr r28, r4 /* 8003A294 00035EF4 7C 7B 1B 78 */ mr r27, r3 /* 8003A298 00035EF8 7C A4 2B 78 */ mr r4, r5 /* 8003A29C 00035EFC 7C DD 33 78 */ mr r29, r6 /* 8003A2A0 00035F00 7F 83 E3 78 */ mr r3, r28 /* 8003A2A4 00035F04 4B FF F3 D9 */ bl func_8003967C /* 8003A2A8 00035F08 2C 03 00 00 */ cmpwi r3, 0 /* 8003A2AC 00035F0C 41 82 00 10 */ beq lbl_8003A2BC /* 8003A2B0 00035F10 80 1C 0C 04 */ lwz r0, 0xc04(r28) /* 8003A2B4 00035F14 2C 00 00 00 */ cmpwi r0, 0 /* 8003A2B8 00035F18 40 82 00 18 */ bne lbl_8003A2D0 lbl_8003A2BC: /* 8003A2BC 00035F1C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A2C0 00035F20 D0 1B 00 00 */ stfs f0, 0(r27) /* 8003A2C4 00035F24 D0 1B 00 04 */ stfs f0, 4(r27) /* 8003A2C8 00035F28 D0 1B 00 08 */ stfs f0, 8(r27) /* 8003A2CC 00035F2C 48 00 01 44 */ b lbl_8003A410 lbl_8003A2D0: /* 8003A2D0 00035F30 88 83 00 00 */ lbz r4, 0(r3) /* 8003A2D4 00035F34 7F 83 E3 78 */ mr r3, r28 /* 8003A2D8 00035F38 7C 84 07 74 */ extsb r4, r4 /* 8003A2DC 00035F3C 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8003A2E0 00035F40 48 00 1F 7D */ bl func_8003C25C /* 8003A2E4 00035F44 80 9C 0C 04 */ lwz r4, 0xc04(r28) /* 8003A2E8 00035F48 7C 7F 1B 78 */ mr r31, r3 /* 8003A2EC 00035F4C 80 64 00 08 */ lwz r3, 8(r4) /* 8003A2F0 00035F50 2C 03 00 00 */ cmpwi r3, 0 /* 8003A2F4 00035F54 40 82 00 0C */ bne lbl_8003A300 /* 8003A2F8 00035F58 3B C0 00 00 */ li r30, 0 /* 8003A2FC 00035F5C 48 00 00 1C */ b lbl_8003A318 lbl_8003A300: /* 8003A300 00035F60 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003A304 00035F64 2C 00 00 00 */ cmpwi r0, 0 /* 8003A308 00035F68 40 82 00 0C */ bne lbl_8003A314 /* 8003A30C 00035F6C 3B C0 00 00 */ li r30, 0 /* 8003A310 00035F70 48 00 00 08 */ b lbl_8003A318 lbl_8003A314: /* 8003A314 00035F74 83 C3 00 00 */ lwz r30, 0(r3) lbl_8003A318: /* 8003A318 00035F78 7F 83 E3 78 */ mr r3, r28 /* 8003A31C 00035F7C 7F A4 EB 78 */ mr r4, r29 /* 8003A320 00035F80 4B FF F5 19 */ bl func_80039838 /* 8003A324 00035F84 80 BC 0C 04 */ lwz r5, 0xc04(r28) /* 8003A328 00035F88 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003A32C 00035F8C 80 85 00 08 */ lwz r4, 8(r5) /* 8003A330 00035F90 2C 04 00 00 */ cmpwi r4, 0 /* 8003A334 00035F94 40 82 00 0C */ bne lbl_8003A340 /* 8003A338 00035F98 3B A0 00 00 */ li r29, 0 /* 8003A33C 00035F9C 48 00 00 20 */ b lbl_8003A35C lbl_8003A340: /* 8003A340 00035FA0 A0 05 00 DE */ lhz r0, 0xde(r5) /* 8003A344 00035FA4 7C 03 00 40 */ cmplw r3, r0 /* 8003A348 00035FA8 41 80 00 0C */ blt lbl_8003A354 /* 8003A34C 00035FAC 3B A0 00 00 */ li r29, 0 /* 8003A350 00035FB0 48 00 00 0C */ b lbl_8003A35C lbl_8003A354: /* 8003A354 00035FB4 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003A358 00035FB8 7F A4 00 2E */ lwzx r29, r4, r0 lbl_8003A35C: /* 8003A35C 00035FBC 2C 1E 00 00 */ cmpwi r30, 0 /* 8003A360 00035FC0 41 82 00 0C */ beq lbl_8003A36C /* 8003A364 00035FC4 2C 1D 00 00 */ cmpwi r29, 0 /* 8003A368 00035FC8 40 82 00 18 */ bne lbl_8003A380 lbl_8003A36C: /* 8003A36C 00035FCC C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A370 00035FD0 D0 1B 00 00 */ stfs f0, 0(r27) /* 8003A374 00035FD4 D0 1B 00 04 */ stfs f0, 4(r27) /* 8003A378 00035FD8 D0 1B 00 08 */ stfs f0, 8(r27) /* 8003A37C 00035FDC 48 00 00 94 */ b lbl_8003A410 lbl_8003A380: /* 8003A380 00035FE0 FC 20 F8 90 */ fmr f1, f31 /* 8003A384 00035FE4 7C A3 2B 78 */ mr r3, r5 /* 8003A388 00035FE8 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A38C 00035FEC 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 8003A390 00035FF0 38 A0 00 00 */ li r5, 0 /* 8003A394 00035FF4 38 C0 00 00 */ li r6, 0 /* 8003A398 00035FF8 38 E0 00 00 */ li r7, 0 /* 8003A39C 00035FFC 39 00 00 00 */ li r8, 0 /* 8003A3A0 00036000 48 1B AA 55 */ bl func_801F4DF4 /* 8003A3A4 00036004 81 9E 01 00 */ lwz r12, 0x100(r30) /* 8003A3A8 00036008 7F C3 F3 78 */ mr r3, r30 /* 8003A3AC 0003600C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A3B0 00036010 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8003A3B4 00036014 7D 89 03 A6 */ mtctr r12 /* 8003A3B8 00036018 4E 80 04 21 */ bctrl /* 8003A3BC 0003601C C0 5D 00 DC */ lfs f2, 0xdc(r29) /* 8003A3C0 00036020 38 80 00 00 */ li r4, 0 /* 8003A3C4 00036024 C0 3D 00 EC */ lfs f1, 0xec(r29) /* 8003A3C8 00036028 38 A0 00 01 */ li r5, 1 /* 8003A3CC 0003602C C0 1D 00 FC */ lfs f0, 0xfc(r29) /* 8003A3D0 00036030 38 C0 00 00 */ li r6, 0 /* 8003A3D4 00036034 D0 41 00 08 */ stfs f2, 8(r1) /* 8003A3D8 00036038 38 E0 00 00 */ li r7, 0 /* 8003A3DC 0003603C 80 7C 0C 04 */ lwz r3, 0xc04(r28) /* 8003A3E0 00036040 39 00 00 00 */ li r8, 0 /* 8003A3E4 00036044 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8003A3E8 00036048 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A3EC 0003604C D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003A3F0 00036050 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A3F4 00036054 48 1B AA 01 */ bl func_801F4DF4 /* 8003A3F8 00036058 C0 41 00 08 */ lfs f2, 8(r1) /* 8003A3FC 0003605C C0 21 00 0C */ lfs f1, 0xc(r1) /* 8003A400 00036060 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8003A404 00036064 D0 5B 00 00 */ stfs f2, 0(r27) /* 8003A408 00036068 D0 3B 00 04 */ stfs f1, 4(r27) /* 8003A40C 0003606C D0 1B 00 08 */ stfs f0, 8(r27) lbl_8003A410: /* 8003A410 00036070 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8003A414 00036074 39 61 00 30 */ addi r11, r1, 0x30 /* 8003A418 00036078 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8003A41C 0003607C 48 18 CD 59 */ bl _restgpr_27 /* 8003A420 00036080 80 01 00 44 */ lwz r0, 0x44(r1) /* 8003A424 00036084 7C 08 03 A6 */ mtlr r0 /* 8003A428 00036088 38 21 00 40 */ addi r1, r1, 0x40 /* 8003A42C 0003608C 4E 80 00 20 */ blr .global func_8003A430 func_8003A430: /* 8003A430 00036090 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8003A434 00036094 7C 08 02 A6 */ mflr r0 /* 8003A438 00036098 90 01 00 54 */ stw r0, 0x54(r1) /* 8003A43C 0003609C DB E1 00 40 */ stfd f31, 0x40(r1) /* 8003A440 000360A0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8003A444 000360A4 FF E0 08 90 */ fmr f31, f1 /* 8003A448 000360A8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8003A44C 000360AC 7C 9F 23 78 */ mr r31, r4 /* 8003A450 000360B0 7C A4 2B 78 */ mr r4, r5 /* 8003A454 000360B4 93 C1 00 38 */ stw r30, 0x38(r1) /* 8003A458 000360B8 7C 7E 1B 78 */ mr r30, r3 /* 8003A45C 000360BC 7F E3 FB 78 */ mr r3, r31 /* 8003A460 000360C0 4B FF F2 1D */ bl func_8003967C /* 8003A464 000360C4 2C 03 00 00 */ cmpwi r3, 0 /* 8003A468 000360C8 41 82 00 10 */ beq lbl_8003A478 /* 8003A46C 000360CC 80 1F 0C 04 */ lwz r0, 0xc04(r31) /* 8003A470 000360D0 2C 00 00 00 */ cmpwi r0, 0 /* 8003A474 000360D4 40 82 00 18 */ bne lbl_8003A48C lbl_8003A478: /* 8003A478 000360D8 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A47C 000360DC D0 1E 00 00 */ stfs f0, 0(r30) /* 8003A480 000360E0 D0 1E 00 04 */ stfs f0, 4(r30) /* 8003A484 000360E4 D0 1E 00 08 */ stfs f0, 8(r30) /* 8003A488 000360E8 48 00 01 44 */ b lbl_8003A5CC lbl_8003A48C: /* 8003A48C 000360EC 88 83 00 00 */ lbz r4, 0(r3) /* 8003A490 000360F0 7F E3 FB 78 */ mr r3, r31 /* 8003A494 000360F4 7C 84 07 74 */ extsb r4, r4 /* 8003A498 000360F8 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8003A49C 000360FC 48 00 1D C1 */ bl func_8003C25C /* 8003A4A0 00036100 80 BF 0C 04 */ lwz r5, 0xc04(r31) /* 8003A4A4 00036104 7C 64 1B 78 */ mr r4, r3 /* 8003A4A8 00036108 80 65 00 08 */ lwz r3, 8(r5) /* 8003A4AC 0003610C 2C 03 00 00 */ cmpwi r3, 0 /* 8003A4B0 00036110 40 82 00 0C */ bne lbl_8003A4BC /* 8003A4B4 00036114 38 00 00 00 */ li r0, 0 /* 8003A4B8 00036118 48 00 00 1C */ b lbl_8003A4D4 lbl_8003A4BC: /* 8003A4BC 0003611C A0 05 00 DE */ lhz r0, 0xde(r5) /* 8003A4C0 00036120 2C 00 00 00 */ cmpwi r0, 0 /* 8003A4C4 00036124 40 82 00 0C */ bne lbl_8003A4D0 /* 8003A4C8 00036128 38 00 00 00 */ li r0, 0 /* 8003A4CC 0003612C 48 00 00 08 */ b lbl_8003A4D4 lbl_8003A4D0: /* 8003A4D0 00036130 80 03 00 00 */ lwz r0, 0(r3) lbl_8003A4D4: /* 8003A4D4 00036134 2C 00 00 00 */ cmpwi r0, 0 /* 8003A4D8 00036138 40 82 00 18 */ bne lbl_8003A4F0 /* 8003A4DC 0003613C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A4E0 00036140 D0 1E 00 00 */ stfs f0, 0(r30) /* 8003A4E4 00036144 D0 1E 00 04 */ stfs f0, 4(r30) /* 8003A4E8 00036148 D0 1E 00 08 */ stfs f0, 8(r30) /* 8003A4EC 0003614C 48 00 00 E0 */ b lbl_8003A5CC lbl_8003A4F0: /* 8003A4F0 00036150 80 1F 00 00 */ lwz r0, 0(r31) /* 8003A4F4 00036154 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8003A4F8 00036158 40 82 00 10 */ bne lbl_8003A508 /* 8003A4FC 0003615C A0 05 00 DC */ lhz r0, 0xdc(r5) /* 8003A500 00036160 60 00 00 01 */ ori r0, r0, 1 /* 8003A504 00036164 B0 05 00 DC */ sth r0, 0xdc(r5) lbl_8003A508: /* 8003A508 00036168 FC 20 F8 90 */ fmr f1, f31 /* 8003A50C 0003616C 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A510 00036170 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A514 00036174 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8003A518 00036178 38 A0 00 00 */ li r5, 0 /* 8003A51C 0003617C 38 C0 00 00 */ li r6, 0 /* 8003A520 00036180 38 E0 00 00 */ li r7, 0 /* 8003A524 00036184 39 00 00 00 */ li r8, 0 /* 8003A528 00036188 48 1B A8 CD */ bl func_801F4DF4 /* 8003A52C 0003618C 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A530 00036190 38 80 00 01 */ li r4, 1 /* 8003A534 00036194 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A538 00036198 48 1B C3 11 */ bl func_801F6848 /* 8003A53C 0003619C 7F E4 FB 78 */ mr r4, r31 /* 8003A540 000361A0 38 61 00 08 */ addi r3, r1, 8 /* 8003A544 000361A4 48 00 11 B1 */ bl func_8003B6F4 /* 8003A548 000361A8 7F E4 FB 78 */ mr r4, r31 /* 8003A54C 000361AC 38 61 00 14 */ addi r3, r1, 0x14 /* 8003A550 000361B0 48 00 11 F5 */ bl func_8003B744 /* 8003A554 000361B4 38 61 00 14 */ addi r3, r1, 0x14 /* 8003A558 000361B8 38 81 00 08 */ addi r4, r1, 8 /* 8003A55C 000361BC 38 A1 00 20 */ addi r5, r1, 0x20 /* 8003A560 000361C0 48 24 27 89 */ bl func_8027CCE8 /* 8003A564 000361C4 80 1F 00 00 */ lwz r0, 0(r31) /* 8003A568 000361C8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8003A56C 000361CC 40 82 00 14 */ bne lbl_8003A580 /* 8003A570 000361D0 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A574 000361D4 A0 03 00 DC */ lhz r0, 0xdc(r3) /* 8003A578 000361D8 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 8003A57C 000361DC B0 03 00 DC */ sth r0, 0xdc(r3) lbl_8003A580: /* 8003A580 000361E0 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A584 000361E4 38 80 00 00 */ li r4, 0 /* 8003A588 000361E8 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A58C 000361EC 38 A0 00 01 */ li r5, 1 /* 8003A590 000361F0 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003A594 000361F4 38 C0 00 00 */ li r6, 0 /* 8003A598 000361F8 38 E0 00 00 */ li r7, 0 /* 8003A59C 000361FC 39 00 00 00 */ li r8, 0 /* 8003A5A0 00036200 48 1B A8 55 */ bl func_801F4DF4 /* 8003A5A4 00036204 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003A5A8 00036208 38 80 00 01 */ li r4, 1 /* 8003A5AC 0003620C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003A5B0 00036210 48 1B C2 99 */ bl func_801F6848 /* 8003A5B4 00036214 C0 01 00 20 */ lfs f0, 0x20(r1) /* 8003A5B8 00036218 D0 1E 00 00 */ stfs f0, 0(r30) /* 8003A5BC 0003621C C0 01 00 24 */ lfs f0, 0x24(r1) /* 8003A5C0 00036220 D0 1E 00 04 */ stfs f0, 4(r30) /* 8003A5C4 00036224 C0 01 00 28 */ lfs f0, 0x28(r1) /* 8003A5C8 00036228 D0 1E 00 08 */ stfs f0, 8(r30) lbl_8003A5CC: /* 8003A5CC 0003622C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 8003A5D0 00036230 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003A5D4 00036234 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8003A5D8 00036238 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8003A5DC 0003623C 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8003A5E0 00036240 7C 08 03 A6 */ mtlr r0 /* 8003A5E4 00036244 38 21 00 50 */ addi r1, r1, 0x50 /* 8003A5E8 00036248 4E 80 00 20 */ blr .global func_8003A5EC func_8003A5EC: /* 8003A5EC 0003624C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003A5F0 00036250 7C 08 02 A6 */ mflr r0 /* 8003A5F4 00036254 90 01 00 24 */ stw r0, 0x24(r1) /* 8003A5F8 00036258 DB E1 00 10 */ stfd f31, 0x10(r1) /* 8003A5FC 0003625C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 8003A600 00036260 C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) /* 8003A604 00036264 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003A608 00036268 7C 7F 1B 78 */ mr r31, r3 /* 8003A60C 0003626C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003A610 00036270 2C 00 00 00 */ cmpwi r0, 0 /* 8003A614 00036274 40 82 00 0C */ bne lbl_8003A620 /* 8003A618 00036278 FC 20 F8 90 */ fmr f1, f31 /* 8003A61C 0003627C 48 00 00 90 */ b lbl_8003A6AC lbl_8003A620: /* 8003A620 00036280 2C 04 00 00 */ cmpwi r4, 0 /* 8003A624 00036284 40 82 00 0C */ bne lbl_8003A630 /* 8003A628 00036288 38 80 00 15 */ li r4, 0x15 /* 8003A62C 0003628C 48 00 00 1C */ b lbl_8003A648 lbl_8003A630: /* 8003A630 00036290 2C 04 00 01 */ cmpwi r4, 1 /* 8003A634 00036294 40 82 00 0C */ bne lbl_8003A640 /* 8003A638 00036298 38 80 00 17 */ li r4, 0x17 /* 8003A63C 0003629C 48 00 00 0C */ b lbl_8003A648 lbl_8003A640: /* 8003A640 000362A0 FC 20 F8 90 */ fmr f1, f31 /* 8003A644 000362A4 48 00 00 68 */ b lbl_8003A6AC lbl_8003A648: /* 8003A648 000362A8 7F E3 FB 78 */ mr r3, r31 /* 8003A64C 000362AC 4B FF F1 ED */ bl func_80039838 /* 8003A650 000362B0 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 8003A654 000362B4 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003A658 000362B8 80 A4 00 08 */ lwz r5, 8(r4) /* 8003A65C 000362BC 2C 05 00 00 */ cmpwi r5, 0 /* 8003A660 000362C0 40 82 00 0C */ bne lbl_8003A66C /* 8003A664 000362C4 38 60 00 00 */ li r3, 0 /* 8003A668 000362C8 48 00 00 20 */ b lbl_8003A688 lbl_8003A66C: /* 8003A66C 000362CC A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003A670 000362D0 7C 03 00 40 */ cmplw r3, r0 /* 8003A674 000362D4 41 80 00 0C */ blt lbl_8003A680 /* 8003A678 000362D8 38 60 00 00 */ li r3, 0 /* 8003A67C 000362DC 48 00 00 0C */ b lbl_8003A688 lbl_8003A680: /* 8003A680 000362E0 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003A684 000362E4 7C 65 00 2E */ lwzx r3, r5, r0 lbl_8003A688: /* 8003A688 000362E8 2C 03 00 00 */ cmpwi r3, 0 /* 8003A68C 000362EC 41 82 00 1C */ beq lbl_8003A6A8 /* 8003A690 000362F0 80 63 00 1C */ lwz r3, 0x1c(r3) /* 8003A694 000362F4 2C 03 00 00 */ cmpwi r3, 0 /* 8003A698 000362F8 41 82 00 0C */ beq lbl_8003A6A4 /* 8003A69C 000362FC C3 E3 00 1C */ lfs f31, 0x1c(r3) /* 8003A6A0 00036300 48 00 00 08 */ b lbl_8003A6A8 lbl_8003A6A4: /* 8003A6A4 00036304 C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) lbl_8003A6A8: /* 8003A6A8 00036308 FC 20 F8 90 */ fmr f1, f31 lbl_8003A6AC: /* 8003A6AC 0003630C E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 8003A6B0 00036310 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003A6B4 00036314 CB E1 00 10 */ lfd f31, 0x10(r1) /* 8003A6B8 00036318 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003A6BC 0003631C 7C 08 03 A6 */ mtlr r0 /* 8003A6C0 00036320 38 21 00 20 */ addi r1, r1, 0x20 /* 8003A6C4 00036324 4E 80 00 20 */ blr .global func_8003A6C8 func_8003A6C8: /* 8003A6C8 00036328 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8003A6CC 0003632C 7C 08 02 A6 */ mflr r0 /* 8003A6D0 00036330 90 01 00 74 */ stw r0, 0x74(r1) /* 8003A6D4 00036334 DB E1 00 60 */ stfd f31, 0x60(r1) /* 8003A6D8 00036338 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 8003A6DC 0003633C DB C1 00 50 */ stfd f30, 0x50(r1) /* 8003A6E0 00036340 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8003A6E4 00036344 DB A1 00 40 */ stfd f29, 0x40(r1) /* 8003A6E8 00036348 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 8003A6EC 0003634C DB 81 00 30 */ stfd f28, 0x30(r1) /* 8003A6F0 00036350 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 8003A6F4 00036354 39 61 00 30 */ addi r11, r1, 0x30 /* 8003A6F8 00036358 48 18 CA 31 */ bl _savegpr_27 /* 8003A6FC 0003635C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003A700 00036360 FF C0 08 90 */ fmr f30, f1 /* 8003A704 00036364 7C 7B 1B 78 */ mr r27, r3 /* 8003A708 00036368 7C 9C 23 78 */ mr r28, r4 /* 8003A70C 0003636C 2C 00 00 00 */ cmpwi r0, 0 /* 8003A710 00036370 7C BD 2B 78 */ mr r29, r5 /* 8003A714 00036374 7C DE 33 78 */ mr r30, r6 /* 8003A718 00036378 41 82 02 08 */ beq lbl_8003A920 /* 8003A71C 0003637C 7F A4 EB 78 */ mr r4, r29 /* 8003A720 00036380 4B FF F1 19 */ bl func_80039838 /* 8003A724 00036384 80 9B 0C 04 */ lwz r4, 0xc04(r27) /* 8003A728 00036388 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003A72C 0003638C 80 A4 00 08 */ lwz r5, 8(r4) /* 8003A730 00036390 2C 05 00 00 */ cmpwi r5, 0 /* 8003A734 00036394 40 82 00 0C */ bne lbl_8003A740 /* 8003A738 00036398 3B E0 00 00 */ li r31, 0 /* 8003A73C 0003639C 48 00 00 20 */ b lbl_8003A75C lbl_8003A740: /* 8003A740 000363A0 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003A744 000363A4 7C 03 00 40 */ cmplw r3, r0 /* 8003A748 000363A8 41 80 00 0C */ blt lbl_8003A754 /* 8003A74C 000363AC 3B E0 00 00 */ li r31, 0 /* 8003A750 000363B0 48 00 00 0C */ b lbl_8003A75C lbl_8003A754: /* 8003A754 000363B4 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003A758 000363B8 7F E5 00 2E */ lwzx r31, r5, r0 lbl_8003A75C: /* 8003A75C 000363BC 2C 1F 00 00 */ cmpwi r31, 0 /* 8003A760 000363C0 41 82 01 C0 */ beq lbl_8003A920 /* 8003A764 000363C4 C0 5C 00 00 */ lfs f2, 0(r28) /* 8003A768 000363C8 C0 3C 00 04 */ lfs f1, 4(r28) /* 8003A76C 000363CC C0 1C 00 08 */ lfs f0, 8(r28) /* 8003A770 000363D0 D0 41 00 08 */ stfs f2, 8(r1) /* 8003A774 000363D4 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8003A778 000363D8 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003A77C 000363DC 93 BB 0C 74 */ stw r29, 0xc74(r27) /* 8003A780 000363E0 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 8003A784 000363E4 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8003A788 000363E8 41 82 00 1C */ beq lbl_8003A7A4 /* 8003A78C 000363EC 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003A790 000363F0 38 9F 00 3C */ addi r4, r31, 0x3c /* 8003A794 000363F4 48 1E 8F 2D */ bl func_802236C0 /* 8003A798 000363F8 A0 1F 00 10 */ lhz r0, 0x10(r31) /* 8003A79C 000363FC 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 8003A7A0 00036400 B0 1F 00 10 */ sth r0, 0x10(r31) lbl_8003A7A4: /* 8003A7A4 00036404 C0 FF 00 2C */ lfs f7, 0x2c(r31) /* 8003A7A8 00036408 C0 9F 00 30 */ lfs f4, 0x30(r31) /* 8003A7AC 0003640C C0 DF 00 34 */ lfs f6, 0x34(r31) /* 8003A7B0 00036410 C0 7F 00 38 */ lfs f3, 0x38(r31) /* 8003A7B4 00036414 EC 47 01 32 */ fmuls f2, f7, f4 /* 8003A7B8 00036418 C0 02 82 9C */ lfs f0, lbl_8064089C-_SDA2_BASE_(r2) /* 8003A7BC 0003641C EC 26 00 F2 */ fmuls f1, f6, f3 /* 8003A7C0 00036420 EF E2 08 2A */ fadds f31, f2, f1 /* 8003A7C4 00036424 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8003A7C8 00036428 40 81 00 34 */ ble lbl_8003A7FC /* 8003A7CC 0003642C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A7D0 00036430 D0 1B 0C 78 */ stfs f0, 0xc78(r27) /* 8003A7D4 00036434 C0 5F 00 38 */ lfs f2, 0x38(r31) /* 8003A7D8 00036438 C0 3F 00 2C */ lfs f1, 0x2c(r31) /* 8003A7DC 0003643C 48 19 9E 01 */ bl atan2 /* 8003A7E0 00036440 FC 40 08 18 */ frsp f2, f1 /* 8003A7E4 00036444 C0 22 82 3C */ lfs f1, lbl_8064083C-_SDA2_BASE_(r2) /* 8003A7E8 00036448 C0 02 82 7C */ lfs f0, lbl_8064087C-_SDA2_BASE_(r2) /* 8003A7EC 0003644C EC 21 00 B2 */ fmuls f1, f1, f2 /* 8003A7F0 00036450 D0 1B 0C 80 */ stfs f0, 0xc80(r27) /* 8003A7F4 00036454 D0 3B 0C 7C */ stfs f1, 0xc7c(r27) /* 8003A7F8 00036458 48 00 00 F4 */ b lbl_8003A8EC lbl_8003A7FC: /* 8003A7FC 0003645C C0 02 82 A0 */ lfs f0, lbl_806408A0-_SDA2_BASE_(r2) /* 8003A800 00036460 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8003A804 00036464 40 80 00 34 */ bge lbl_8003A838 /* 8003A808 00036468 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003A80C 0003646C D0 1B 0C 78 */ stfs f0, 0xc78(r27) /* 8003A810 00036470 C0 5F 00 38 */ lfs f2, 0x38(r31) /* 8003A814 00036474 C0 3F 00 2C */ lfs f1, 0x2c(r31) /* 8003A818 00036478 48 19 9D C5 */ bl atan2 /* 8003A81C 0003647C FC 40 08 18 */ frsp f2, f1 /* 8003A820 00036480 C0 22 82 3C */ lfs f1, lbl_8064083C-_SDA2_BASE_(r2) /* 8003A824 00036484 C0 02 82 A4 */ lfs f0, lbl_806408A4-_SDA2_BASE_(r2) /* 8003A828 00036488 EC 21 00 B2 */ fmuls f1, f1, f2 /* 8003A82C 0003648C D0 1B 0C 80 */ stfs f0, 0xc80(r27) /* 8003A830 00036490 D0 3B 0C 7C */ stfs f1, 0xc7c(r27) /* 8003A834 00036494 48 00 00 B8 */ b lbl_8003A8EC lbl_8003A838: /* 8003A838 00036498 EC 47 00 F2 */ fmuls f2, f7, f3 /* 8003A83C 0003649C C0 02 82 3C */ lfs f0, lbl_8064083C-_SDA2_BASE_(r2) /* 8003A840 000364A0 EC 24 01 B2 */ fmuls f1, f4, f6 /* 8003A844 000364A4 EC A4 01 32 */ fmuls f5, f4, f4 /* 8003A848 000364A8 EC 87 01 F2 */ fmuls f4, f7, f7 /* 8003A84C 000364AC EC 22 08 28 */ fsubs f1, f2, f1 /* 8003A850 000364B0 EC 63 00 F2 */ fmuls f3, f3, f3 /* 8003A854 000364B4 EC 46 01 B2 */ fmuls f2, f6, f6 /* 8003A858 000364B8 EF 85 20 28 */ fsubs f28, f5, f4 /* 8003A85C 000364BC EC 20 00 72 */ fmuls f1, f0, f1 /* 8003A860 000364C0 EF A3 10 28 */ fsubs f29, f3, f2 /* 8003A864 000364C4 EC 5D E0 2A */ fadds f2, f29, f28 /* 8003A868 000364C8 48 19 9D 75 */ bl atan2 /* 8003A86C 000364CC FC 20 08 18 */ frsp f1, f1 /* 8003A870 000364D0 C0 02 82 3C */ lfs f0, lbl_8064083C-_SDA2_BASE_(r2) /* 8003A874 000364D4 EC 5D E0 28 */ fsubs f2, f29, f28 /* 8003A878 000364D8 D0 3B 0C 78 */ stfs f1, 0xc78(r27) /* 8003A87C 000364DC C0 BF 00 30 */ lfs f5, 0x30(r31) /* 8003A880 000364E0 C0 9F 00 38 */ lfs f4, 0x38(r31) /* 8003A884 000364E4 C0 7F 00 2C */ lfs f3, 0x2c(r31) /* 8003A888 000364E8 C0 3F 00 34 */ lfs f1, 0x34(r31) /* 8003A88C 000364EC EC 85 01 32 */ fmuls f4, f5, f4 /* 8003A890 000364F0 EC 23 00 72 */ fmuls f1, f3, f1 /* 8003A894 000364F4 EC 24 08 28 */ fsubs f1, f4, f1 /* 8003A898 000364F8 EC 20 00 72 */ fmuls f1, f0, f1 /* 8003A89C 000364FC 48 19 9D 41 */ bl atan2 /* 8003A8A0 00036500 C0 42 82 3C */ lfs f2, lbl_8064083C-_SDA2_BASE_(r2) /* 8003A8A4 00036504 FC 60 08 18 */ frsp f3, f1 /* 8003A8A8 00036508 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 8003A8AC 0003650C EC 22 07 F2 */ fmuls f1, f2, f31 /* 8003A8B0 00036510 D0 7B 0C 7C */ stfs f3, 0xc7c(r27) /* 8003A8B4 00036514 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003A8B8 00036518 4C 41 13 82 */ cror 2, 1, 2 /* 8003A8BC 0003651C 40 82 00 0C */ bne lbl_8003A8C8 /* 8003A8C0 00036520 C0 02 82 7C */ lfs f0, lbl_8064087C-_SDA2_BASE_(r2) /* 8003A8C4 00036524 48 00 00 24 */ b lbl_8003A8E8 lbl_8003A8C8: /* 8003A8C8 00036528 C0 02 82 44 */ lfs f0, lbl_80640844-_SDA2_BASE_(r2) /* 8003A8CC 0003652C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003A8D0 00036530 4C 40 13 82 */ cror 2, 0, 2 /* 8003A8D4 00036534 40 82 00 0C */ bne lbl_8003A8E0 /* 8003A8D8 00036538 C0 02 82 80 */ lfs f0, lbl_80640880-_SDA2_BASE_(r2) /* 8003A8DC 0003653C 48 00 00 0C */ b lbl_8003A8E8 lbl_8003A8E0: /* 8003A8E0 00036540 48 19 9C F9 */ bl asin /* 8003A8E4 00036544 FC 00 08 18 */ frsp f0, f1 lbl_8003A8E8: /* 8003A8E8 00036548 D0 1B 0C 80 */ stfs f0, 0xc80(r27) lbl_8003A8EC: /* 8003A8EC 0003654C C0 7B 0C 78 */ lfs f3, 0xc78(r27) /* 8003A8F0 00036550 38 9B 0C 78 */ addi r4, r27, 0xc78 /* 8003A8F4 00036554 C0 5B 0C 7C */ lfs f2, 0xc7c(r27) /* 8003A8F8 00036558 FC 20 F0 90 */ fmr f1, f30 /* 8003A8FC 0003655C C0 1B 0C 80 */ lfs f0, 0xc80(r27) /* 8003A900 00036560 7C 86 23 78 */ mr r6, r4 /* 8003A904 00036564 D0 7B 0C 84 */ stfs f3, 0xc84(r27) /* 8003A908 00036568 7F C7 F3 78 */ mr r7, r30 /* 8003A90C 0003656C 38 7B 04 60 */ addi r3, r27, 0x460 /* 8003A910 00036570 D0 5B 0C 88 */ stfs f2, 0xc88(r27) /* 8003A914 00036574 38 A1 00 08 */ addi r5, r1, 8 /* 8003A918 00036578 D0 1B 0C 8C */ stfs f0, 0xc8c(r27) /* 8003A91C 0003657C 48 01 5C 29 */ bl func_80050544 lbl_8003A920: /* 8003A920 00036580 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8003A924 00036584 CB E1 00 60 */ lfd f31, 0x60(r1) /* 8003A928 00036588 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8003A92C 0003658C CB C1 00 50 */ lfd f30, 0x50(r1) /* 8003A930 00036590 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8003A934 00036594 CB A1 00 40 */ lfd f29, 0x40(r1) /* 8003A938 00036598 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 8003A93C 0003659C 39 61 00 30 */ addi r11, r1, 0x30 /* 8003A940 000365A0 CB 81 00 30 */ lfd f28, 0x30(r1) /* 8003A944 000365A4 48 18 C8 31 */ bl _restgpr_27 /* 8003A948 000365A8 80 01 00 74 */ lwz r0, 0x74(r1) /* 8003A94C 000365AC 7C 08 03 A6 */ mtlr r0 /* 8003A950 000365B0 38 21 00 70 */ addi r1, r1, 0x70 /* 8003A954 000365B4 4E 80 00 20 */ blr .global func_8003A958 func_8003A958: /* 8003A958 000365B8 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8003A95C 000365BC 7C 08 02 A6 */ mflr r0 /* 8003A960 000365C0 90 01 00 54 */ stw r0, 0x54(r1) /* 8003A964 000365C4 93 E1 00 4C */ stw r31, 0x4c(r1) /* 8003A968 000365C8 7C 7F 1B 78 */ mr r31, r3 /* 8003A96C 000365CC 93 C1 00 48 */ stw r30, 0x48(r1) /* 8003A970 000365D0 7C 9E 23 78 */ mr r30, r4 /* 8003A974 000365D4 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003A978 000365D8 2C 00 00 00 */ cmpwi r0, 0 /* 8003A97C 000365DC 41 82 00 E0 */ beq lbl_8003AA5C /* 8003A980 000365E0 7C A4 2B 78 */ mr r4, r5 /* 8003A984 000365E4 4B FF EE B5 */ bl func_80039838 /* 8003A988 000365E8 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 8003A98C 000365EC 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003A990 000365F0 80 A4 00 08 */ lwz r5, 8(r4) /* 8003A994 000365F4 2C 05 00 00 */ cmpwi r5, 0 /* 8003A998 000365F8 40 82 00 0C */ bne lbl_8003A9A4 /* 8003A99C 000365FC 3B E0 00 00 */ li r31, 0 /* 8003A9A0 00036600 48 00 00 20 */ b lbl_8003A9C0 lbl_8003A9A4: /* 8003A9A4 00036604 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003A9A8 00036608 7C 03 00 40 */ cmplw r3, r0 /* 8003A9AC 0003660C 41 80 00 0C */ blt lbl_8003A9B8 /* 8003A9B0 00036610 3B E0 00 00 */ li r31, 0 /* 8003A9B4 00036614 48 00 00 0C */ b lbl_8003A9C0 lbl_8003A9B8: /* 8003A9B8 00036618 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003A9BC 0003661C 7F E5 00 2E */ lwzx r31, r5, r0 lbl_8003A9C0: /* 8003A9C0 00036620 2C 1F 00 00 */ cmpwi r31, 0 /* 8003A9C4 00036624 41 82 00 98 */ beq lbl_8003AA5C /* 8003A9C8 00036628 7F C4 F3 78 */ mr r4, r30 /* 8003A9CC 0003662C 38 61 00 18 */ addi r3, r1, 0x18 /* 8003A9D0 00036630 38 A0 00 00 */ li r5, 0 /* 8003A9D4 00036634 48 1E 89 F5 */ bl func_802233C8 /* 8003A9D8 00036638 38 61 00 08 */ addi r3, r1, 8 /* 8003A9DC 0003663C 38 81 00 18 */ addi r4, r1, 0x18 /* 8003A9E0 00036640 48 24 27 E5 */ bl func_8027D1C4 /* 8003A9E4 00036644 C0 01 00 08 */ lfs f0, 8(r1) /* 8003A9E8 00036648 7F E3 FB 78 */ mr r3, r31 /* 8003A9EC 0003664C 38 80 00 01 */ li r4, 1 /* 8003A9F0 00036650 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 8003A9F4 00036654 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8003A9F8 00036658 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 8003A9FC 0003665C C0 01 00 10 */ lfs f0, 0x10(r1) /* 8003AA00 00036660 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 8003AA04 00036664 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8003AA08 00036668 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 8003AA0C 0003666C A0 1F 00 10 */ lhz r0, 0x10(r31) /* 8003AA10 00036670 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 8003AA14 00036674 B0 1F 00 10 */ sth r0, 0x10(r31) /* 8003AA18 00036678 48 1B 7C A1 */ bl func_801F26B8 /* 8003AA1C 0003667C 80 9F 00 04 */ lwz r4, 4(r31) /* 8003AA20 00036680 2C 04 00 00 */ cmpwi r4, 0 /* 8003AA24 00036684 41 82 00 18 */ beq lbl_8003AA3C /* 8003AA28 00036688 A0 64 00 06 */ lhz r3, 6(r4) /* 8003AA2C 0003668C 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 8003AA30 00036690 40 82 00 0C */ bne lbl_8003AA3C /* 8003AA34 00036694 54 60 04 3C */ rlwinm r0, r3, 0, 0x10, 0x1e /* 8003AA38 00036698 B0 04 00 06 */ sth r0, 6(r4) lbl_8003AA3C: /* 8003AA3C 0003669C 80 9F 00 08 */ lwz r4, 8(r31) /* 8003AA40 000366A0 2C 04 00 00 */ cmpwi r4, 0 /* 8003AA44 000366A4 41 82 00 18 */ beq lbl_8003AA5C /* 8003AA48 000366A8 A0 64 00 06 */ lhz r3, 6(r4) /* 8003AA4C 000366AC 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 8003AA50 000366B0 40 82 00 0C */ bne lbl_8003AA5C /* 8003AA54 000366B4 54 60 04 3C */ rlwinm r0, r3, 0, 0x10, 0x1e /* 8003AA58 000366B8 B0 04 00 06 */ sth r0, 6(r4) lbl_8003AA5C: /* 8003AA5C 000366BC 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003AA60 000366C0 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8003AA64 000366C4 83 C1 00 48 */ lwz r30, 0x48(r1) /* 8003AA68 000366C8 7C 08 03 A6 */ mtlr r0 /* 8003AA6C 000366CC 38 21 00 50 */ addi r1, r1, 0x50 /* 8003AA70 000366D0 4E 80 00 20 */ blr .global func_8003AA74 func_8003AA74: /* 8003AA74 000366D4 C0 82 82 78 */ lfs f4, lbl_80640878-_SDA2_BASE_(r2) /* 8003AA78 000366D8 3C 00 43 30 */ lis r0, 0x4330 /* 8003AA7C 000366DC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003AA80 000366E0 EC 62 20 24 */ fdivs f3, f2, f4 /* 8003AA84 000366E4 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003AA88 000366E8 90 01 00 08 */ stw r0, 8(r1) /* 8003AA8C 000366EC 90 01 00 10 */ stw r0, 0x10(r1) /* 8003AA90 000366F0 FC 60 18 1E */ fctiwz f3, f3 /* 8003AA94 000366F4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003AA98 000366F8 D8 61 00 18 */ stfd f3, 0x18(r1) /* 8003AA9C 000366FC 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8003AAA0 00036700 40 80 00 38 */ bge lbl_8003AAD8 /* 8003AAA4 00036704 38 03 FF FF */ addi r0, r3, -1 /* 8003AAA8 00036708 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 8003AAAC 0003670C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8003AAB0 00036710 90 61 00 0C */ stw r3, 0xc(r1) /* 8003AAB4 00036714 C8 62 82 68 */ lfd f3, lbl_80640868-_SDA2_BASE_(r2) /* 8003AAB8 00036718 90 01 00 14 */ stw r0, 0x14(r1) /* 8003AABC 0003671C C8 41 00 08 */ lfd f2, 8(r1) /* 8003AAC0 00036720 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003AAC4 00036724 EC 42 18 28 */ fsubs f2, f2, f3 /* 8003AAC8 00036728 EC 00 18 28 */ fsubs f0, f0, f3 /* 8003AACC 0003672C EC 42 01 32 */ fmuls f2, f2, f4 /* 8003AAD0 00036730 EC 60 01 32 */ fmuls f3, f0, f4 /* 8003AAD4 00036734 48 00 00 3C */ b lbl_8003AB10 lbl_8003AAD8: /* 8003AAD8 00036738 38 03 00 01 */ addi r0, r3, 1 /* 8003AADC 0003673C 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 8003AAE0 00036740 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8003AAE4 00036744 90 61 00 0C */ stw r3, 0xc(r1) /* 8003AAE8 00036748 C8 62 82 68 */ lfd f3, lbl_80640868-_SDA2_BASE_(r2) /* 8003AAEC 0003674C 90 01 00 14 */ stw r0, 0x14(r1) /* 8003AAF0 00036750 C8 41 00 08 */ lfd f2, 8(r1) /* 8003AAF4 00036754 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003AAF8 00036758 EC 42 18 28 */ fsubs f2, f2, f3 /* 8003AAFC 0003675C EC 00 18 28 */ fsubs f0, f0, f3 /* 8003AB00 00036760 EC 62 01 32 */ fmuls f3, f2, f4 /* 8003AB04 00036764 EC 40 01 32 */ fmuls f2, f0, f4 /* 8003AB08 00036768 48 00 00 08 */ b lbl_8003AB10 lbl_8003AB0C: /* 8003AB0C 0003676C EC 21 20 2A */ fadds f1, f1, f4 lbl_8003AB10: /* 8003AB10 00036770 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8003AB14 00036774 41 80 FF F8 */ blt lbl_8003AB0C /* 8003AB18 00036778 48 00 00 08 */ b lbl_8003AB20 lbl_8003AB1C: /* 8003AB1C 0003677C EC 21 20 28 */ fsubs f1, f1, f4 lbl_8003AB20: /* 8003AB20 00036780 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8003AB24 00036784 41 81 FF F8 */ bgt lbl_8003AB1C /* 8003AB28 00036788 38 21 00 20 */ addi r1, r1, 0x20 /* 8003AB2C 0003678C 4E 80 00 20 */ blr .global func_8003AB30 func_8003AB30: /* 8003AB30 00036790 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003AB34 00036794 7C 08 02 A6 */ mflr r0 /* 8003AB38 00036798 90 01 00 34 */ stw r0, 0x34(r1) /* 8003AB3C 0003679C DB E1 00 20 */ stfd f31, 0x20(r1) /* 8003AB40 000367A0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8003AB44 000367A4 FF E0 08 90 */ fmr f31, f1 /* 8003AB48 000367A8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003AB4C 000367AC 7C DF 33 78 */ mr r31, r6 /* 8003AB50 000367B0 7F E7 FB 78 */ mr r7, r31 /* 8003AB54 000367B4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003AB58 000367B8 7C BE 2B 78 */ mr r30, r5 /* 8003AB5C 000367BC 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003AB60 000367C0 7C 9D 23 78 */ mr r29, r4 /* 8003AB64 000367C4 38 83 0C B4 */ addi r4, r3, 0xcb4 /* 8003AB68 000367C8 93 81 00 10 */ stw r28, 0x10(r1) /* 8003AB6C 000367CC 7C 7C 1B 78 */ mr r28, r3 /* 8003AB70 000367D0 7F A5 EB 78 */ mr r5, r29 /* 8003AB74 000367D4 7C 86 23 78 */ mr r6, r4 /* 8003AB78 000367D8 38 63 00 04 */ addi r3, r3, 4 /* 8003AB7C 000367DC 48 01 57 C1 */ bl func_8005033C /* 8003AB80 000367E0 FC 20 F8 90 */ fmr f1, f31 /* 8003AB84 000367E4 38 9C 0C B8 */ addi r4, r28, 0xcb8 /* 8003AB88 000367E8 7C 86 23 78 */ mr r6, r4 /* 8003AB8C 000367EC 7F E7 FB 78 */ mr r7, r31 /* 8003AB90 000367F0 38 7C 00 28 */ addi r3, r28, 0x28 /* 8003AB94 000367F4 38 BD 00 04 */ addi r5, r29, 4 /* 8003AB98 000367F8 48 01 57 A5 */ bl func_8005033C /* 8003AB9C 000367FC FC 20 F8 90 */ fmr f1, f31 /* 8003ABA0 00036800 38 9C 0C BC */ addi r4, r28, 0xcbc /* 8003ABA4 00036804 7C 86 23 78 */ mr r6, r4 /* 8003ABA8 00036808 7F E7 FB 78 */ mr r7, r31 /* 8003ABAC 0003680C 38 7C 00 4C */ addi r3, r28, 0x4c /* 8003ABB0 00036810 38 BD 00 08 */ addi r5, r29, 8 /* 8003ABB4 00036814 48 01 57 89 */ bl func_8005033C /* 8003ABB8 00036818 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003ABBC 0003681C 7F 83 E3 78 */ mr r3, r28 /* 8003ABC0 00036820 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003ABC4 00036824 7F C4 F3 78 */ mr r4, r30 /* 8003ABC8 00036828 4B FF EE 01 */ bl func_800399C8 /* 8003ABCC 0003682C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8003ABD0 00036830 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003ABD4 00036834 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8003ABD8 00036838 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003ABDC 0003683C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003ABE0 00036840 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003ABE4 00036844 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003ABE8 00036848 7C 08 03 A6 */ mtlr r0 /* 8003ABEC 0003684C 38 21 00 30 */ addi r1, r1, 0x30 /* 8003ABF0 00036850 4E 80 00 20 */ blr .global func_8003ABF4 func_8003ABF4: /* 8003ABF4 00036854 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003ABF8 00036858 7C 08 02 A6 */ mflr r0 /* 8003ABFC 0003685C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003AC00 00036860 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8003AC04 00036864 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8003AC08 00036868 FF E0 18 90 */ fmr f31, f3 /* 8003AC0C 0003686C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003AC10 00036870 7C BF 2B 78 */ mr r31, r5 /* 8003AC14 00036874 7F E7 FB 78 */ mr r7, r31 /* 8003AC18 00036878 38 A1 00 08 */ addi r5, r1, 8 /* 8003AC1C 0003687C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003AC20 00036880 7C 9E 23 78 */ mr r30, r4 /* 8003AC24 00036884 38 83 0C B4 */ addi r4, r3, 0xcb4 /* 8003AC28 00036888 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003AC2C 0003688C 7C 7D 1B 78 */ mr r29, r3 /* 8003AC30 00036890 7C 86 23 78 */ mr r6, r4 /* 8003AC34 00036894 38 63 00 04 */ addi r3, r3, 4 /* 8003AC38 00036898 D0 21 00 08 */ stfs f1, 8(r1) /* 8003AC3C 0003689C FC 20 F8 90 */ fmr f1, f31 /* 8003AC40 000368A0 D0 41 00 0C */ stfs f2, 0xc(r1) /* 8003AC44 000368A4 48 01 56 F9 */ bl func_8005033C /* 8003AC48 000368A8 FC 20 F8 90 */ fmr f1, f31 /* 8003AC4C 000368AC 38 9D 0C BC */ addi r4, r29, 0xcbc /* 8003AC50 000368B0 7C 86 23 78 */ mr r6, r4 /* 8003AC54 000368B4 7F E7 FB 78 */ mr r7, r31 /* 8003AC58 000368B8 38 7D 00 4C */ addi r3, r29, 0x4c /* 8003AC5C 000368BC 38 A1 00 0C */ addi r5, r1, 0xc /* 8003AC60 000368C0 48 01 56 DD */ bl func_8005033C /* 8003AC64 000368C4 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003AC68 000368C8 7F A3 EB 78 */ mr r3, r29 /* 8003AC6C 000368CC C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003AC70 000368D0 7F C4 F3 78 */ mr r4, r30 /* 8003AC74 000368D4 4B FF ED 55 */ bl func_800399C8 /* 8003AC78 000368D8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8003AC7C 000368DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003AC80 000368E0 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8003AC84 000368E4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003AC88 000368E8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003AC8C 000368EC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003AC90 000368F0 7C 08 03 A6 */ mtlr r0 /* 8003AC94 000368F4 38 21 00 30 */ addi r1, r1, 0x30 /* 8003AC98 000368F8 4E 80 00 20 */ blr .global func_8003AC9C func_8003AC9C: /* 8003AC9C 000368FC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003ACA0 00036900 7C 08 02 A6 */ mflr r0 /* 8003ACA4 00036904 7C A7 2B 78 */ mr r7, r5 /* 8003ACA8 00036908 90 01 00 24 */ stw r0, 0x24(r1) /* 8003ACAC 0003690C 38 A1 00 08 */ addi r5, r1, 8 /* 8003ACB0 00036910 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003ACB4 00036914 7C 9F 23 78 */ mr r31, r4 /* 8003ACB8 00036918 38 83 0C B8 */ addi r4, r3, 0xcb8 /* 8003ACBC 0003691C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003ACC0 00036920 7C 7E 1B 78 */ mr r30, r3 /* 8003ACC4 00036924 7C 86 23 78 */ mr r6, r4 /* 8003ACC8 00036928 38 63 00 28 */ addi r3, r3, 0x28 /* 8003ACCC 0003692C D0 21 00 08 */ stfs f1, 8(r1) /* 8003ACD0 00036930 FC 20 10 90 */ fmr f1, f2 /* 8003ACD4 00036934 48 01 56 69 */ bl func_8005033C /* 8003ACD8 00036938 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003ACDC 0003693C 7F C3 F3 78 */ mr r3, r30 /* 8003ACE0 00036940 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003ACE4 00036944 7F E4 FB 78 */ mr r4, r31 /* 8003ACE8 00036948 4B FF EC E1 */ bl func_800399C8 /* 8003ACEC 0003694C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003ACF0 00036950 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003ACF4 00036954 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003ACF8 00036958 7C 08 03 A6 */ mtlr r0 /* 8003ACFC 0003695C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003AD00 00036960 4E 80 00 20 */ blr .global func_8003AD04 func_8003AD04: /* 8003AD04 00036964 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003AD08 00036968 7C 08 02 A6 */ mflr r0 /* 8003AD0C 0003696C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003AD10 00036970 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8003AD14 00036974 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8003AD18 00036978 FF E0 08 90 */ fmr f31, f1 /* 8003AD1C 0003697C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003AD20 00036980 7C DF 33 78 */ mr r31, r6 /* 8003AD24 00036984 7F E7 FB 78 */ mr r7, r31 /* 8003AD28 00036988 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003AD2C 0003698C 7C BE 2B 78 */ mr r30, r5 /* 8003AD30 00036990 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003AD34 00036994 7C 9D 23 78 */ mr r29, r4 /* 8003AD38 00036998 38 83 0C C0 */ addi r4, r3, 0xcc0 /* 8003AD3C 0003699C 93 81 00 10 */ stw r28, 0x10(r1) /* 8003AD40 000369A0 7C 7C 1B 78 */ mr r28, r3 /* 8003AD44 000369A4 7F A5 EB 78 */ mr r5, r29 /* 8003AD48 000369A8 7C 86 23 78 */ mr r6, r4 /* 8003AD4C 000369AC 38 63 00 70 */ addi r3, r3, 0x70 /* 8003AD50 000369B0 48 01 55 ED */ bl func_8005033C /* 8003AD54 000369B4 FC 20 F8 90 */ fmr f1, f31 /* 8003AD58 000369B8 38 9C 0C C4 */ addi r4, r28, 0xcc4 /* 8003AD5C 000369BC 7C 86 23 78 */ mr r6, r4 /* 8003AD60 000369C0 7F E7 FB 78 */ mr r7, r31 /* 8003AD64 000369C4 38 7C 00 94 */ addi r3, r28, 0x94 /* 8003AD68 000369C8 38 BD 00 04 */ addi r5, r29, 4 /* 8003AD6C 000369CC 48 01 55 D1 */ bl func_8005033C /* 8003AD70 000369D0 FC 20 F8 90 */ fmr f1, f31 /* 8003AD74 000369D4 38 9C 0C C8 */ addi r4, r28, 0xcc8 /* 8003AD78 000369D8 7C 86 23 78 */ mr r6, r4 /* 8003AD7C 000369DC 7F E7 FB 78 */ mr r7, r31 /* 8003AD80 000369E0 38 7C 00 B8 */ addi r3, r28, 0xb8 /* 8003AD84 000369E4 38 BD 00 08 */ addi r5, r29, 8 /* 8003AD88 000369E8 48 01 55 B5 */ bl func_8005033C /* 8003AD8C 000369EC C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003AD90 000369F0 7F 83 E3 78 */ mr r3, r28 /* 8003AD94 000369F4 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003AD98 000369F8 7F C4 F3 78 */ mr r4, r30 /* 8003AD9C 000369FC 4B FF EC 2D */ bl func_800399C8 /* 8003ADA0 00036A00 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8003ADA4 00036A04 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003ADA8 00036A08 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8003ADAC 00036A0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003ADB0 00036A10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003ADB4 00036A14 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003ADB8 00036A18 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003ADBC 00036A1C 7C 08 03 A6 */ mtlr r0 /* 8003ADC0 00036A20 38 21 00 30 */ addi r1, r1, 0x30 /* 8003ADC4 00036A24 4E 80 00 20 */ blr .global func_8003ADC8 func_8003ADC8: /* 8003ADC8 00036A28 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003ADCC 00036A2C 7C 08 02 A6 */ mflr r0 /* 8003ADD0 00036A30 38 E0 00 00 */ li r7, 0 /* 8003ADD4 00036A34 90 01 00 24 */ stw r0, 0x24(r1) /* 8003ADD8 00036A38 38 A1 00 08 */ addi r5, r1, 8 /* 8003ADDC 00036A3C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003ADE0 00036A40 7C 9F 23 78 */ mr r31, r4 /* 8003ADE4 00036A44 38 83 0C C4 */ addi r4, r3, 0xcc4 /* 8003ADE8 00036A48 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003ADEC 00036A4C 7C 7E 1B 78 */ mr r30, r3 /* 8003ADF0 00036A50 7C 86 23 78 */ mr r6, r4 /* 8003ADF4 00036A54 38 63 00 94 */ addi r3, r3, 0x94 /* 8003ADF8 00036A58 D0 21 00 08 */ stfs f1, 8(r1) /* 8003ADFC 00036A5C FC 20 10 90 */ fmr f1, f2 /* 8003AE00 00036A60 48 01 55 3D */ bl func_8005033C /* 8003AE04 00036A64 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003AE08 00036A68 7F C3 F3 78 */ mr r3, r30 /* 8003AE0C 00036A6C C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003AE10 00036A70 7F E4 FB 78 */ mr r4, r31 /* 8003AE14 00036A74 4B FF EB B5 */ bl func_800399C8 /* 8003AE18 00036A78 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003AE1C 00036A7C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003AE20 00036A80 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003AE24 00036A84 7C 08 03 A6 */ mtlr r0 /* 8003AE28 00036A88 38 21 00 20 */ addi r1, r1, 0x20 /* 8003AE2C 00036A8C 4E 80 00 20 */ blr .global func_8003AE30 func_8003AE30: /* 8003AE30 00036A90 C0 82 82 78 */ lfs f4, lbl_80640878-_SDA2_BASE_(r2) /* 8003AE34 00036A94 C0 02 82 48 */ lfs f0, lbl_80640848-_SDA2_BASE_(r2) /* 8003AE38 00036A98 48 00 00 10 */ b lbl_8003AE48 lbl_8003AE3C: /* 8003AE3C 00036A9C C0 63 0C C4 */ lfs f3, 0xcc4(r3) /* 8003AE40 00036AA0 EC 63 20 2A */ fadds f3, f3, f4 /* 8003AE44 00036AA4 D0 63 0C C4 */ stfs f3, 0xcc4(r3) lbl_8003AE48: /* 8003AE48 00036AA8 C0 63 0C C4 */ lfs f3, 0xcc4(r3) /* 8003AE4C 00036AAC EC 61 18 28 */ fsubs f3, f1, f3 /* 8003AE50 00036AB0 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8003AE54 00036AB4 41 81 FF E8 */ bgt lbl_8003AE3C /* 8003AE58 00036AB8 C0 82 82 78 */ lfs f4, lbl_80640878-_SDA2_BASE_(r2) /* 8003AE5C 00036ABC C0 02 82 48 */ lfs f0, lbl_80640848-_SDA2_BASE_(r2) /* 8003AE60 00036AC0 48 00 00 10 */ b lbl_8003AE70 lbl_8003AE64: /* 8003AE64 00036AC4 C0 63 0C C4 */ lfs f3, 0xcc4(r3) /* 8003AE68 00036AC8 EC 63 20 28 */ fsubs f3, f3, f4 /* 8003AE6C 00036ACC D0 63 0C C4 */ stfs f3, 0xcc4(r3) lbl_8003AE70: /* 8003AE70 00036AD0 C0 63 0C C4 */ lfs f3, 0xcc4(r3) /* 8003AE74 00036AD4 EC 63 08 28 */ fsubs f3, f3, f1 /* 8003AE78 00036AD8 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8003AE7C 00036ADC 41 81 FF E8 */ bgt lbl_8003AE64 /* 8003AE80 00036AE0 4B FF FF 48 */ b func_8003ADC8 .global func_8003AE84 func_8003AE84: /* 8003AE84 00036AE4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003AE88 00036AE8 7C 08 02 A6 */ mflr r0 /* 8003AE8C 00036AEC 90 01 00 34 */ stw r0, 0x34(r1) /* 8003AE90 00036AF0 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8003AE94 00036AF4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8003AE98 00036AF8 FF E0 08 90 */ fmr f31, f1 /* 8003AE9C 00036AFC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003AEA0 00036B00 7C DF 33 78 */ mr r31, r6 /* 8003AEA4 00036B04 7F E7 FB 78 */ mr r7, r31 /* 8003AEA8 00036B08 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003AEAC 00036B0C 7C BE 2B 78 */ mr r30, r5 /* 8003AEB0 00036B10 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003AEB4 00036B14 7C 9D 23 78 */ mr r29, r4 /* 8003AEB8 00036B18 38 83 0C CC */ addi r4, r3, 0xccc /* 8003AEBC 00036B1C 93 81 00 10 */ stw r28, 0x10(r1) /* 8003AEC0 00036B20 7C 7C 1B 78 */ mr r28, r3 /* 8003AEC4 00036B24 7F A5 EB 78 */ mr r5, r29 /* 8003AEC8 00036B28 7C 86 23 78 */ mr r6, r4 /* 8003AECC 00036B2C 38 63 00 DC */ addi r3, r3, 0xdc /* 8003AED0 00036B30 48 01 54 6D */ bl func_8005033C /* 8003AED4 00036B34 FC 20 F8 90 */ fmr f1, f31 /* 8003AED8 00036B38 38 9C 0C D0 */ addi r4, r28, 0xcd0 /* 8003AEDC 00036B3C 7C 86 23 78 */ mr r6, r4 /* 8003AEE0 00036B40 7F E7 FB 78 */ mr r7, r31 /* 8003AEE4 00036B44 38 7C 01 00 */ addi r3, r28, 0x100 /* 8003AEE8 00036B48 38 BD 00 04 */ addi r5, r29, 4 /* 8003AEEC 00036B4C 48 01 54 51 */ bl func_8005033C /* 8003AEF0 00036B50 FC 20 F8 90 */ fmr f1, f31 /* 8003AEF4 00036B54 38 9C 0C D4 */ addi r4, r28, 0xcd4 /* 8003AEF8 00036B58 7C 86 23 78 */ mr r6, r4 /* 8003AEFC 00036B5C 7F E7 FB 78 */ mr r7, r31 /* 8003AF00 00036B60 38 7C 01 24 */ addi r3, r28, 0x124 /* 8003AF04 00036B64 38 BD 00 08 */ addi r5, r29, 8 /* 8003AF08 00036B68 48 01 54 35 */ bl func_8005033C /* 8003AF0C 00036B6C 2C 1E 00 00 */ cmpwi r30, 0 /* 8003AF10 00036B70 41 80 00 18 */ blt lbl_8003AF28 /* 8003AF14 00036B74 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003AF18 00036B78 7F 83 E3 78 */ mr r3, r28 /* 8003AF1C 00036B7C C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003AF20 00036B80 7F C4 F3 78 */ mr r4, r30 /* 8003AF24 00036B84 4B FF EA A5 */ bl func_800399C8 lbl_8003AF28: /* 8003AF28 00036B88 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8003AF2C 00036B8C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003AF30 00036B90 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8003AF34 00036B94 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003AF38 00036B98 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003AF3C 00036B9C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003AF40 00036BA0 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003AF44 00036BA4 7C 08 03 A6 */ mtlr r0 /* 8003AF48 00036BA8 38 21 00 30 */ addi r1, r1, 0x30 /* 8003AF4C 00036BAC 4E 80 00 20 */ blr .global func_8003AF50 func_8003AF50: /* 8003AF50 00036BB0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8003AF54 00036BB4 7C 08 02 A6 */ mflr r0 /* 8003AF58 00036BB8 90 01 00 44 */ stw r0, 0x44(r1) /* 8003AF5C 00036BBC DB E1 00 30 */ stfd f31, 0x30(r1) /* 8003AF60 00036BC0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8003AF64 00036BC4 DB C1 00 20 */ stfd f30, 0x20(r1) /* 8003AF68 00036BC8 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 8003AF6C 00036BCC FF C0 08 90 */ fmr f30, f1 /* 8003AF70 00036BD0 FF E0 10 90 */ fmr f31, f2 /* 8003AF74 00036BD4 C0 82 82 20 */ lfs f4, lbl_80640820-_SDA2_BASE_(r2) /* 8003AF78 00036BD8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003AF7C 00036BDC 7C DF 33 78 */ mr r31, r6 /* 8003AF80 00036BE0 FC A0 20 90 */ fmr f5, f4 /* 8003AF84 00036BE4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003AF88 00036BE8 7C BE 2B 78 */ mr r30, r5 /* 8003AF8C 00036BEC FC 40 F0 90 */ fmr f2, f30 /* 8003AF90 00036BF0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003AF94 00036BF4 FC 60 F8 90 */ fmr f3, f31 /* 8003AF98 00036BF8 C0 24 00 00 */ lfs f1, 0(r4) /* 8003AF9C 00036BFC 7C 9D 23 78 */ mr r29, r4 /* 8003AFA0 00036C00 93 81 00 10 */ stw r28, 0x10(r1) /* 8003AFA4 00036C04 7C 7C 1B 78 */ mr r28, r3 /* 8003AFA8 00036C08 38 A3 0C CC */ addi r5, r3, 0xccc /* 8003AFAC 00036C0C 7F C4 F3 78 */ mr r4, r30 /* 8003AFB0 00036C10 38 E0 00 00 */ li r7, 0 /* 8003AFB4 00036C14 38 63 02 20 */ addi r3, r3, 0x220 /* 8003AFB8 00036C18 48 01 61 7D */ bl func_80051134 /* 8003AFBC 00036C1C C0 82 82 20 */ lfs f4, lbl_80640820-_SDA2_BASE_(r2) /* 8003AFC0 00036C20 FC 40 F0 90 */ fmr f2, f30 /* 8003AFC4 00036C24 FC 60 F8 90 */ fmr f3, f31 /* 8003AFC8 00036C28 C0 3D 00 04 */ lfs f1, 4(r29) /* 8003AFCC 00036C2C FC A0 20 90 */ fmr f5, f4 /* 8003AFD0 00036C30 7F C4 F3 78 */ mr r4, r30 /* 8003AFD4 00036C34 7F E6 FB 78 */ mr r6, r31 /* 8003AFD8 00036C38 38 7C 02 E0 */ addi r3, r28, 0x2e0 /* 8003AFDC 00036C3C 38 BC 0C D0 */ addi r5, r28, 0xcd0 /* 8003AFE0 00036C40 38 E0 00 00 */ li r7, 0 /* 8003AFE4 00036C44 48 01 61 51 */ bl func_80051134 /* 8003AFE8 00036C48 C0 82 82 20 */ lfs f4, lbl_80640820-_SDA2_BASE_(r2) /* 8003AFEC 00036C4C FC 40 F0 90 */ fmr f2, f30 /* 8003AFF0 00036C50 FC 60 F8 90 */ fmr f3, f31 /* 8003AFF4 00036C54 C0 3D 00 08 */ lfs f1, 8(r29) /* 8003AFF8 00036C58 FC A0 20 90 */ fmr f5, f4 /* 8003AFFC 00036C5C 7F C4 F3 78 */ mr r4, r30 /* 8003B000 00036C60 7F E6 FB 78 */ mr r6, r31 /* 8003B004 00036C64 38 7C 03 A0 */ addi r3, r28, 0x3a0 /* 8003B008 00036C68 38 BC 0C D4 */ addi r5, r28, 0xcd4 /* 8003B00C 00036C6C 38 E0 00 00 */ li r7, 0 /* 8003B010 00036C70 48 01 61 25 */ bl func_80051134 /* 8003B014 00036C74 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8003B018 00036C78 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8003B01C 00036C7C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 8003B020 00036C80 CB C1 00 20 */ lfd f30, 0x20(r1) /* 8003B024 00036C84 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003B028 00036C88 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003B02C 00036C8C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003B030 00036C90 80 01 00 44 */ lwz r0, 0x44(r1) /* 8003B034 00036C94 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003B038 00036C98 7C 08 03 A6 */ mtlr r0 /* 8003B03C 00036C9C 38 21 00 40 */ addi r1, r1, 0x40 /* 8003B040 00036CA0 4E 80 00 20 */ blr .global func_8003B044 func_8003B044: /* 8003B044 00036CA4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003B048 00036CA8 7C 08 02 A6 */ mflr r0 /* 8003B04C 00036CAC 90 01 00 24 */ stw r0, 0x24(r1) /* 8003B050 00036CB0 39 61 00 20 */ addi r11, r1, 0x20 /* 8003B054 00036CB4 48 18 C0 D5 */ bl _savegpr_27 /* 8003B058 00036CB8 54 C0 00 01 */ rlwinm. r0, r6, 0, 0, 0 /* 8003B05C 00036CBC 7C 7B 1B 78 */ mr r27, r3 /* 8003B060 00036CC0 7C 9C 23 78 */ mr r28, r4 /* 8003B064 00036CC4 7C BD 2B 78 */ mr r29, r5 /* 8003B068 00036CC8 7C DE 33 78 */ mr r30, r6 /* 8003B06C 00036CCC 40 82 00 4C */ bne lbl_8003B0B8 /* 8003B070 00036CD0 54 C0 07 39 */ rlwinm. r0, r6, 0, 0x1c, 0x1c /* 8003B074 00036CD4 41 82 00 2C */ beq lbl_8003B0A0 /* 8003B078 00036CD8 54 C0 07 FF */ clrlwi. r0, r6, 0x1f /* 8003B07C 00036CDC 54 DE 07 76 */ rlwinm r30, r6, 0, 0x1d, 0x1b /* 8003B080 00036CE0 41 82 00 08 */ beq lbl_8003B088 /* 8003B084 00036CE4 63 DE 00 40 */ ori r30, r30, 0x40 lbl_8003B088: /* 8003B088 00036CE8 57 C0 07 BD */ rlwinm. r0, r30, 0, 0x1e, 0x1e /* 8003B08C 00036CEC 41 82 00 08 */ beq lbl_8003B094 /* 8003B090 00036CF0 63 DE 00 80 */ ori r30, r30, 0x80 lbl_8003B094: /* 8003B094 00036CF4 57 C0 07 7B */ rlwinm. r0, r30, 0, 0x1d, 0x1d /* 8003B098 00036CF8 41 82 00 08 */ beq lbl_8003B0A0 /* 8003B09C 00036CFC 63 DE 01 00 */ ori r30, r30, 0x100 lbl_8003B0A0: /* 8003B0A0 00036D00 57 C0 07 FF */ clrlwi. r0, r30, 0x1f /* 8003B0A4 00036D04 40 82 00 08 */ bne lbl_8003B0AC /* 8003B0A8 00036D08 63 DE 00 09 */ ori r30, r30, 9 lbl_8003B0AC: /* 8003B0AC 00036D0C 57 C0 07 BD */ rlwinm. r0, r30, 0, 0x1e, 0x1e /* 8003B0B0 00036D10 40 82 00 08 */ bne lbl_8003B0B8 /* 8003B0B4 00036D14 63 DE 00 12 */ ori r30, r30, 0x12 lbl_8003B0B8: /* 8003B0B8 00036D18 7F 83 E3 78 */ mr r3, r28 /* 8003B0BC 00036D1C 7F A4 EB 78 */ mr r4, r29 /* 8003B0C0 00036D20 4B FF E8 2D */ bl func_800398EC /* 8003B0C4 00036D24 2C 03 00 00 */ cmpwi r3, 0 /* 8003B0C8 00036D28 7C 7F 1B 78 */ mr r31, r3 /* 8003B0CC 00036D2C 41 82 00 68 */ beq lbl_8003B134 /* 8003B0D0 00036D30 80 7B 0C 04 */ lwz r3, 0xc04(r27) /* 8003B0D4 00036D34 80 83 00 08 */ lwz r4, 8(r3) /* 8003B0D8 00036D38 2C 04 00 00 */ cmpwi r4, 0 /* 8003B0DC 00036D3C 40 82 00 0C */ bne lbl_8003B0E8 /* 8003B0E0 00036D40 38 60 00 00 */ li r3, 0 /* 8003B0E4 00036D44 48 00 00 1C */ b lbl_8003B100 lbl_8003B0E8: /* 8003B0E8 00036D48 A0 03 00 DE */ lhz r0, 0xde(r3) /* 8003B0EC 00036D4C 2C 00 00 00 */ cmpwi r0, 0 /* 8003B0F0 00036D50 40 82 00 0C */ bne lbl_8003B0FC /* 8003B0F4 00036D54 38 60 00 00 */ li r3, 0 /* 8003B0F8 00036D58 48 00 00 08 */ b lbl_8003B100 lbl_8003B0FC: /* 8003B0FC 00036D5C 80 64 00 00 */ lwz r3, 0(r4) lbl_8003B100: /* 8003B100 00036D60 81 83 01 00 */ lwz r12, 0x100(r3) /* 8003B104 00036D64 38 80 00 01 */ li r4, 1 /* 8003B108 00036D68 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8003B10C 00036D6C 7D 89 03 A6 */ mtctr r12 /* 8003B110 00036D70 4E 80 04 21 */ bctrl /* 8003B114 00036D74 80 BB 0C 04 */ lwz r5, 0xc04(r27) /* 8003B118 00036D78 7F E3 FB 78 */ mr r3, r31 /* 8003B11C 00036D7C 57 C4 04 3E */ clrlwi r4, r30, 0x10 /* 8003B120 00036D80 38 C0 00 00 */ li r6, 0 /* 8003B124 00036D84 38 E0 00 03 */ li r7, 3 /* 8003B128 00036D88 48 1B 71 29 */ bl func_801F2250 /* 8003B12C 00036D8C 93 9B 0D 70 */ stw r28, 0xd70(r27) /* 8003B130 00036D90 93 BB 0D 74 */ stw r29, 0xd74(r27) lbl_8003B134: /* 8003B134 00036D94 39 61 00 20 */ addi r11, r1, 0x20 /* 8003B138 00036D98 48 18 C0 3D */ bl _restgpr_27 /* 8003B13C 00036D9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003B140 00036DA0 7C 08 03 A6 */ mtlr r0 /* 8003B144 00036DA4 38 21 00 20 */ addi r1, r1, 0x20 /* 8003B148 00036DA8 4E 80 00 20 */ blr .global func_8003B14C func_8003B14C: /* 8003B14C 00036DAC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003B150 00036DB0 7C 08 02 A6 */ mflr r0 /* 8003B154 00036DB4 90 01 00 14 */ stw r0, 0x14(r1) /* 8003B158 00036DB8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003B15C 00036DBC 7C 7F 1B 78 */ mr r31, r3 /* 8003B160 00036DC0 80 03 0D 70 */ lwz r0, 0xd70(r3) /* 8003B164 00036DC4 2C 00 00 00 */ cmpwi r0, 0 /* 8003B168 00036DC8 41 82 00 28 */ beq lbl_8003B190 /* 8003B16C 00036DCC 80 9F 0D 74 */ lwz r4, 0xd74(r31) /* 8003B170 00036DD0 7C 03 03 78 */ mr r3, r0 /* 8003B174 00036DD4 4B FF E7 79 */ bl func_800398EC /* 8003B178 00036DD8 2C 03 00 00 */ cmpwi r3, 0 /* 8003B17C 00036DDC 41 82 00 0C */ beq lbl_8003B188 /* 8003B180 00036DE0 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 8003B184 00036DE4 48 1B 71 9D */ bl func_801F2320 lbl_8003B188: /* 8003B188 00036DE8 38 00 00 00 */ li r0, 0 /* 8003B18C 00036DEC 90 1F 0D 70 */ stw r0, 0xd70(r31) lbl_8003B190: /* 8003B190 00036DF0 38 7F 01 B4 */ addi r3, r31, 0x1b4 /* 8003B194 00036DF4 48 01 51 F5 */ bl func_80050388 /* 8003B198 00036DF8 38 7F 01 D8 */ addi r3, r31, 0x1d8 /* 8003B19C 00036DFC 48 01 51 ED */ bl func_80050388 /* 8003B1A0 00036E00 38 7F 01 FC */ addi r3, r31, 0x1fc /* 8003B1A4 00036E04 48 01 51 E5 */ bl func_80050388 /* 8003B1A8 00036E08 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003B1AC 00036E0C D0 1F 0D 64 */ stfs f0, 0xd64(r31) /* 8003B1B0 00036E10 D0 1F 0D 68 */ stfs f0, 0xd68(r31) /* 8003B1B4 00036E14 D0 1F 0D 6C */ stfs f0, 0xd6c(r31) /* 8003B1B8 00036E18 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003B1BC 00036E1C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003B1C0 00036E20 7C 08 03 A6 */ mtlr r0 /* 8003B1C4 00036E24 38 21 00 10 */ addi r1, r1, 0x10 /* 8003B1C8 00036E28 4E 80 00 20 */ blr .global func_8003B1CC func_8003B1CC: /* 8003B1CC 00036E2C 94 21 FF 70 */ stwu r1, -0x90(r1) /* 8003B1D0 00036E30 7C 08 02 A6 */ mflr r0 /* 8003B1D4 00036E34 90 01 00 94 */ stw r0, 0x94(r1) /* 8003B1D8 00036E38 DB E1 00 80 */ stfd f31, 0x80(r1) /* 8003B1DC 00036E3C F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 8003B1E0 00036E40 DB C1 00 70 */ stfd f30, 0x70(r1) /* 8003B1E4 00036E44 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 /* 8003B1E8 00036E48 DB A1 00 60 */ stfd f29, 0x60(r1) /* 8003B1EC 00036E4C F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 /* 8003B1F0 00036E50 FF A0 08 90 */ fmr f29, f1 /* 8003B1F4 00036E54 FF C0 10 90 */ fmr f30, f2 /* 8003B1F8 00036E58 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8003B1FC 00036E5C FF E0 18 90 */ fmr f31, f3 /* 8003B200 00036E60 7C 7F 1B 78 */ mr r31, r3 /* 8003B204 00036E64 80 03 0D 70 */ lwz r0, 0xd70(r3) /* 8003B208 00036E68 2C 00 00 00 */ cmpwi r0, 0 /* 8003B20C 00036E6C 41 82 00 98 */ beq lbl_8003B2A4 /* 8003B210 00036E70 C0 02 82 70 */ lfs f0, lbl_80640870-_SDA2_BASE_(r2) /* 8003B214 00036E74 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8003B218 00036E78 40 80 00 10 */ bge lbl_8003B228 /* 8003B21C 00036E7C C0 02 82 74 */ lfs f0, lbl_80640874-_SDA2_BASE_(r2) /* 8003B220 00036E80 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 8003B224 00036E84 41 81 00 80 */ bgt lbl_8003B2A4 lbl_8003B228: /* 8003B228 00036E88 FC 40 10 50 */ fneg f2, f2 /* 8003B22C 00036E8C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003B230 00036E90 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8003B234 00036E94 38 61 00 30 */ addi r3, r1, 0x30 /* 8003B238 00036E98 38 81 00 08 */ addi r4, r1, 8 /* 8003B23C 00036E9C D0 41 00 08 */ stfs f2, 8(r1) /* 8003B240 00036EA0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003B244 00036EA4 48 1E 84 7D */ bl func_802236C0 /* 8003B248 00036EA8 FC 00 F8 18 */ frsp f0, f31 /* 8003B24C 00036EAC C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003B250 00036EB0 D3 E1 00 28 */ stfs f31, 0x28(r1) /* 8003B254 00036EB4 38 61 00 14 */ addi r3, r1, 0x14 /* 8003B258 00036EB8 38 81 00 30 */ addi r4, r1, 0x30 /* 8003B25C 00036EBC D0 21 00 20 */ stfs f1, 0x20(r1) /* 8003B260 00036EC0 D0 21 00 24 */ stfs f1, 0x24(r1) /* 8003B264 00036EC4 D0 21 00 14 */ stfs f1, 0x14(r1) /* 8003B268 00036EC8 D0 21 00 18 */ stfs f1, 0x18(r1) /* 8003B26C 00036ECC D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8003B270 00036ED0 48 1E 87 9D */ bl func_80223A0C /* 8003B274 00036ED4 C0 41 00 14 */ lfs f2, 0x14(r1) /* 8003B278 00036ED8 7F E3 FB 78 */ mr r3, r31 /* 8003B27C 00036EDC C0 21 00 18 */ lfs f1, 0x18(r1) /* 8003B280 00036EE0 38 81 00 40 */ addi r4, r1, 0x40 /* 8003B284 00036EE4 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8003B288 00036EE8 D0 41 00 40 */ stfs f2, 0x40(r1) /* 8003B28C 00036EEC D0 21 00 44 */ stfs f1, 0x44(r1) /* 8003B290 00036EF0 D0 01 00 48 */ stfs f0, 0x48(r1) /* 8003B294 00036EF4 4B FF D5 89 */ bl func_8003881C /* 8003B298 00036EF8 D3 FF 0D 64 */ stfs f31, 0xd64(r31) /* 8003B29C 00036EFC D3 BF 0D 68 */ stfs f29, 0xd68(r31) /* 8003B2A0 00036F00 D3 DF 0D 6C */ stfs f30, 0xd6c(r31) lbl_8003B2A4: /* 8003B2A4 00036F04 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 8003B2A8 00036F08 CB E1 00 80 */ lfd f31, 0x80(r1) /* 8003B2AC 00036F0C E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 /* 8003B2B0 00036F10 CB C1 00 70 */ lfd f30, 0x70(r1) /* 8003B2B4 00036F14 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 /* 8003B2B8 00036F18 CB A1 00 60 */ lfd f29, 0x60(r1) /* 8003B2BC 00036F1C 80 01 00 94 */ lwz r0, 0x94(r1) /* 8003B2C0 00036F20 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8003B2C4 00036F24 7C 08 03 A6 */ mtlr r0 /* 8003B2C8 00036F28 38 21 00 90 */ addi r1, r1, 0x90 /* 8003B2CC 00036F2C 4E 80 00 20 */ blr .global func_8003B2D0 func_8003B2D0: /* 8003B2D0 00036F30 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003B2D4 00036F34 7C 08 02 A6 */ mflr r0 /* 8003B2D8 00036F38 90 01 00 34 */ stw r0, 0x34(r1) /* 8003B2DC 00036F3C DB E1 00 28 */ stfd f31, 0x28(r1) /* 8003B2E0 00036F40 FF E0 20 90 */ fmr f31, f4 /* 8003B2E4 00036F44 93 E1 00 24 */ stw r31, 0x24(r1) /* 8003B2E8 00036F48 7C 9F 23 78 */ mr r31, r4 /* 8003B2EC 00036F4C 93 C1 00 20 */ stw r30, 0x20(r1) /* 8003B2F0 00036F50 7C 7E 1B 78 */ mr r30, r3 /* 8003B2F4 00036F54 D0 21 00 08 */ stfs f1, 8(r1) /* 8003B2F8 00036F58 D0 41 00 0C */ stfs f2, 0xc(r1) /* 8003B2FC 00036F5C D0 61 00 10 */ stfs f3, 0x10(r1) /* 8003B300 00036F60 80 03 0D 70 */ lwz r0, 0xd70(r3) /* 8003B304 00036F64 2C 00 00 00 */ cmpwi r0, 0 /* 8003B308 00036F68 41 82 00 64 */ beq lbl_8003B36C /* 8003B30C 00036F6C 7F C4 F3 78 */ mr r4, r30 /* 8003B310 00036F70 38 61 00 14 */ addi r3, r1, 0x14 /* 8003B314 00036F74 4B FF D4 CD */ bl func_800387E0 /* 8003B318 00036F78 FC 20 F8 90 */ fmr f1, f31 /* 8003B31C 00036F7C 38 9E 0D 64 */ addi r4, r30, 0xd64 /* 8003B320 00036F80 7C 86 23 78 */ mr r6, r4 /* 8003B324 00036F84 7F E7 FB 78 */ mr r7, r31 /* 8003B328 00036F88 38 7E 01 B4 */ addi r3, r30, 0x1b4 /* 8003B32C 00036F8C 38 A1 00 10 */ addi r5, r1, 0x10 /* 8003B330 00036F90 48 01 50 0D */ bl func_8005033C /* 8003B334 00036F94 FC 20 F8 90 */ fmr f1, f31 /* 8003B338 00036F98 38 9E 0D 68 */ addi r4, r30, 0xd68 /* 8003B33C 00036F9C 7C 86 23 78 */ mr r6, r4 /* 8003B340 00036FA0 7F E7 FB 78 */ mr r7, r31 /* 8003B344 00036FA4 38 7E 01 D8 */ addi r3, r30, 0x1d8 /* 8003B348 00036FA8 38 A1 00 08 */ addi r5, r1, 8 /* 8003B34C 00036FAC 48 01 4F F1 */ bl func_8005033C /* 8003B350 00036FB0 FC 20 F8 90 */ fmr f1, f31 /* 8003B354 00036FB4 38 9E 0D 6C */ addi r4, r30, 0xd6c /* 8003B358 00036FB8 7C 86 23 78 */ mr r6, r4 /* 8003B35C 00036FBC 7F E7 FB 78 */ mr r7, r31 /* 8003B360 00036FC0 38 7E 01 FC */ addi r3, r30, 0x1fc /* 8003B364 00036FC4 38 A1 00 0C */ addi r5, r1, 0xc /* 8003B368 00036FC8 48 01 4F D5 */ bl func_8005033C lbl_8003B36C: /* 8003B36C 00036FCC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003B370 00036FD0 CB E1 00 28 */ lfd f31, 0x28(r1) /* 8003B374 00036FD4 83 E1 00 24 */ lwz r31, 0x24(r1) /* 8003B378 00036FD8 83 C1 00 20 */ lwz r30, 0x20(r1) /* 8003B37C 00036FDC 7C 08 03 A6 */ mtlr r0 /* 8003B380 00036FE0 38 21 00 30 */ addi r1, r1, 0x30 /* 8003B384 00036FE4 4E 80 00 20 */ blr .global func_8003B388 func_8003B388: /* 8003B388 00036FE8 3C 80 80 41 */ lis r4, lbl_8040A3F0@ha /* 8003B38C 00036FEC 38 00 00 03 */ li r0, 3 /* 8003B390 00036FF0 38 A0 00 00 */ li r5, 0 /* 8003B394 00036FF4 38 C0 00 00 */ li r6, 0 /* 8003B398 00036FF8 38 84 A3 F0 */ addi r4, r4, lbl_8040A3F0@l /* 8003B39C 00036FFC 7C 09 03 A6 */ mtctr r0 lbl_8003B3A0: /* 8003B3A0 00037000 80 03 00 04 */ lwz r0, 4(r3) /* 8003B3A4 00037004 2C 00 00 00 */ cmpwi r0, 0 /* 8003B3A8 00037008 41 82 00 0C */ beq lbl_8003B3B4 /* 8003B3AC 0003700C A0 04 00 00 */ lhz r0, 0(r4) /* 8003B3B0 00037010 7C A5 03 78 */ or r5, r5, r0 lbl_8003B3B4: /* 8003B3B4 00037014 80 03 00 28 */ lwz r0, 0x28(r3) /* 8003B3B8 00037018 2C 00 00 00 */ cmpwi r0, 0 /* 8003B3BC 0003701C 41 82 00 0C */ beq lbl_8003B3C8 /* 8003B3C0 00037020 A0 04 00 02 */ lhz r0, 2(r4) /* 8003B3C4 00037024 7C A5 03 78 */ or r5, r5, r0 lbl_8003B3C8: /* 8003B3C8 00037028 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8003B3CC 0003702C 2C 00 00 00 */ cmpwi r0, 0 /* 8003B3D0 00037030 41 82 00 0C */ beq lbl_8003B3DC /* 8003B3D4 00037034 A0 04 00 04 */ lhz r0, 4(r4) /* 8003B3D8 00037038 7C A5 03 78 */ or r5, r5, r0 lbl_8003B3DC: /* 8003B3DC 0003703C 80 03 00 70 */ lwz r0, 0x70(r3) /* 8003B3E0 00037040 2C 00 00 00 */ cmpwi r0, 0 /* 8003B3E4 00037044 41 82 00 0C */ beq lbl_8003B3F0 /* 8003B3E8 00037048 A0 04 00 06 */ lhz r0, 6(r4) /* 8003B3EC 0003704C 7C A5 03 78 */ or r5, r5, r0 lbl_8003B3F0: /* 8003B3F0 00037050 80 03 00 94 */ lwz r0, 0x94(r3) /* 8003B3F4 00037054 2C 00 00 00 */ cmpwi r0, 0 /* 8003B3F8 00037058 41 82 00 0C */ beq lbl_8003B404 /* 8003B3FC 0003705C A0 04 00 08 */ lhz r0, 8(r4) /* 8003B400 00037060 7C A5 03 78 */ or r5, r5, r0 lbl_8003B404: /* 8003B404 00037064 38 63 00 B4 */ addi r3, r3, 0xb4 /* 8003B408 00037068 38 84 00 0A */ addi r4, r4, 0xa /* 8003B40C 0003706C 38 C6 00 04 */ addi r6, r6, 4 /* 8003B410 00037070 42 00 FF 90 */ bdnz lbl_8003B3A0 /* 8003B414 00037074 7C A3 2B 78 */ mr r3, r5 /* 8003B418 00037078 4E 80 00 20 */ blr .global func_8003B41C func_8003B41C: /* 8003B41C 0003707C 80 83 0C 04 */ lwz r4, 0xc04(r3) /* 8003B420 00037080 2C 04 00 00 */ cmpwi r4, 0 /* 8003B424 00037084 40 82 00 0C */ bne lbl_8003B430 /* 8003B428 00037088 38 60 00 00 */ li r3, 0 /* 8003B42C 0003708C 4E 80 00 20 */ blr lbl_8003B430: /* 8003B430 00037090 A0 A4 00 DE */ lhz r5, 0xde(r4) /* 8003B434 00037094 39 20 00 00 */ li r9, 0 /* 8003B438 00037098 48 00 01 00 */ b lbl_8003B538 lbl_8003B43C: /* 8003B43C 0003709C 80 83 0C 04 */ lwz r4, 0xc04(r3) /* 8003B440 000370A0 80 C4 00 08 */ lwz r6, 8(r4) /* 8003B444 000370A4 2C 06 00 00 */ cmpwi r6, 0 /* 8003B448 000370A8 40 82 00 0C */ bne lbl_8003B454 /* 8003B44C 000370AC 38 80 00 00 */ li r4, 0 /* 8003B450 000370B0 48 00 00 24 */ b lbl_8003B474 lbl_8003B454: /* 8003B454 000370B4 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003B458 000370B8 55 24 04 3E */ clrlwi r4, r9, 0x10 /* 8003B45C 000370BC 7C 04 00 40 */ cmplw r4, r0 /* 8003B460 000370C0 41 80 00 0C */ blt lbl_8003B46C /* 8003B464 000370C4 38 80 00 00 */ li r4, 0 /* 8003B468 000370C8 48 00 00 0C */ b lbl_8003B474 lbl_8003B46C: /* 8003B46C 000370CC 55 20 13 BA */ rlwinm r0, r9, 2, 0xe, 0x1d /* 8003B470 000370D0 7C 86 00 2E */ lwzx r4, r6, r0 lbl_8003B474: /* 8003B474 000370D4 2C 04 00 00 */ cmpwi r4, 0 /* 8003B478 000370D8 41 82 00 BC */ beq lbl_8003B534 /* 8003B47C 000370DC 80 E4 00 04 */ lwz r7, 4(r4) /* 8003B480 000370E0 2C 07 00 00 */ cmpwi r7, 0 /* 8003B484 000370E4 41 82 00 B0 */ beq lbl_8003B534 /* 8003B488 000370E8 41 82 00 40 */ beq lbl_8003B4C8 /* 8003B48C 000370EC A1 07 00 06 */ lhz r8, 6(r7) /* 8003B490 000370F0 38 C0 00 01 */ li r6, 1 /* 8003B494 000370F4 55 00 07 39 */ rlwinm. r0, r8, 0, 0x1c, 0x1c /* 8003B498 000370F8 40 82 00 34 */ bne lbl_8003B4CC /* 8003B49C 000370FC 80 07 00 00 */ lwz r0, 0(r7) /* 8003B4A0 00037100 38 80 00 00 */ li r4, 0 /* 8003B4A4 00037104 2C 00 00 00 */ cmpwi r0, 0 /* 8003B4A8 00037108 41 82 00 10 */ beq lbl_8003B4B8 /* 8003B4AC 0003710C 55 00 07 FF */ clrlwi. r0, r8, 0x1f /* 8003B4B0 00037110 41 82 00 08 */ beq lbl_8003B4B8 /* 8003B4B4 00037114 38 80 00 01 */ li r4, 1 lbl_8003B4B8: /* 8003B4B8 00037118 2C 04 00 00 */ cmpwi r4, 0 /* 8003B4BC 0003711C 41 82 00 10 */ beq lbl_8003B4CC /* 8003B4C0 00037120 38 C0 00 00 */ li r6, 0 /* 8003B4C4 00037124 48 00 00 08 */ b lbl_8003B4CC lbl_8003B4C8: /* 8003B4C8 00037128 38 C0 00 01 */ li r6, 1 lbl_8003B4CC: /* 8003B4CC 0003712C 2C 06 00 00 */ cmpwi r6, 0 /* 8003B4D0 00037130 41 82 00 0C */ beq lbl_8003B4DC /* 8003B4D4 00037134 38 60 00 01 */ li r3, 1 /* 8003B4D8 00037138 4E 80 00 20 */ blr lbl_8003B4DC: /* 8003B4DC 0003713C 2C 07 00 00 */ cmpwi r7, 0 /* 8003B4E0 00037140 41 82 00 40 */ beq lbl_8003B520 /* 8003B4E4 00037144 A1 07 00 06 */ lhz r8, 6(r7) /* 8003B4E8 00037148 38 C0 00 01 */ li r6, 1 /* 8003B4EC 0003714C 55 00 07 7B */ rlwinm. r0, r8, 0, 0x1d, 0x1d /* 8003B4F0 00037150 40 82 00 34 */ bne lbl_8003B524 /* 8003B4F4 00037154 80 07 00 00 */ lwz r0, 0(r7) /* 8003B4F8 00037158 38 80 00 00 */ li r4, 0 /* 8003B4FC 0003715C 2C 00 00 00 */ cmpwi r0, 0 /* 8003B500 00037160 41 82 00 10 */ beq lbl_8003B510 /* 8003B504 00037164 55 00 07 FF */ clrlwi. r0, r8, 0x1f /* 8003B508 00037168 41 82 00 08 */ beq lbl_8003B510 /* 8003B50C 0003716C 38 80 00 01 */ li r4, 1 lbl_8003B510: /* 8003B510 00037170 2C 04 00 00 */ cmpwi r4, 0 /* 8003B514 00037174 41 82 00 10 */ beq lbl_8003B524 /* 8003B518 00037178 38 C0 00 00 */ li r6, 0 /* 8003B51C 0003717C 48 00 00 08 */ b lbl_8003B524 lbl_8003B520: /* 8003B520 00037180 38 C0 00 01 */ li r6, 1 lbl_8003B524: /* 8003B524 00037184 2C 06 00 00 */ cmpwi r6, 0 /* 8003B528 00037188 41 82 00 0C */ beq lbl_8003B534 /* 8003B52C 0003718C 38 60 00 02 */ li r3, 2 /* 8003B530 00037190 4E 80 00 20 */ blr lbl_8003B534: /* 8003B534 00037194 39 29 00 01 */ addi r9, r9, 1 lbl_8003B538: /* 8003B538 00037198 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 8003B53C 0003719C 7C 00 28 40 */ cmplw r0, r5 /* 8003B540 000371A0 41 80 FE FC */ blt lbl_8003B43C /* 8003B544 000371A4 38 60 00 00 */ li r3, 0 /* 8003B548 000371A8 4E 80 00 20 */ blr .global func_8003B54C func_8003B54C: /* 8003B54C 000371AC 80 83 0C 04 */ lwz r4, 0xc04(r3) /* 8003B550 000371B0 2C 04 00 00 */ cmpwi r4, 0 /* 8003B554 000371B4 40 82 00 0C */ bne lbl_8003B560 /* 8003B558 000371B8 38 60 00 00 */ li r3, 0 /* 8003B55C 000371BC 4E 80 00 20 */ blr lbl_8003B560: /* 8003B560 000371C0 A0 A4 00 DE */ lhz r5, 0xde(r4) /* 8003B564 000371C4 39 20 00 00 */ li r9, 0 /* 8003B568 000371C8 48 00 00 F8 */ b lbl_8003B660 lbl_8003B56C: /* 8003B56C 000371CC 80 83 0C 04 */ lwz r4, 0xc04(r3) /* 8003B570 000371D0 80 C4 00 08 */ lwz r6, 8(r4) /* 8003B574 000371D4 2C 06 00 00 */ cmpwi r6, 0 /* 8003B578 000371D8 40 82 00 0C */ bne lbl_8003B584 /* 8003B57C 000371DC 38 80 00 00 */ li r4, 0 /* 8003B580 000371E0 48 00 00 24 */ b lbl_8003B5A4 lbl_8003B584: /* 8003B584 000371E4 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003B588 000371E8 55 24 04 3E */ clrlwi r4, r9, 0x10 /* 8003B58C 000371EC 7C 04 00 40 */ cmplw r4, r0 /* 8003B590 000371F0 41 80 00 0C */ blt lbl_8003B59C /* 8003B594 000371F4 38 80 00 00 */ li r4, 0 /* 8003B598 000371F8 48 00 00 0C */ b lbl_8003B5A4 lbl_8003B59C: /* 8003B59C 000371FC 55 20 13 BA */ rlwinm r0, r9, 2, 0xe, 0x1d /* 8003B5A0 00037200 7C 86 00 2E */ lwzx r4, r6, r0 lbl_8003B5A4: /* 8003B5A4 00037204 2C 04 00 00 */ cmpwi r4, 0 /* 8003B5A8 00037208 41 82 00 B4 */ beq lbl_8003B65C /* 8003B5AC 0003720C 80 E4 00 04 */ lwz r7, 4(r4) /* 8003B5B0 00037210 2C 07 00 00 */ cmpwi r7, 0 /* 8003B5B4 00037214 41 82 00 A8 */ beq lbl_8003B65C /* 8003B5B8 00037218 41 82 00 40 */ beq lbl_8003B5F8 /* 8003B5BC 0003721C A1 07 00 06 */ lhz r8, 6(r7) /* 8003B5C0 00037220 38 C0 00 01 */ li r6, 1 /* 8003B5C4 00037224 55 00 07 39 */ rlwinm. r0, r8, 0, 0x1c, 0x1c /* 8003B5C8 00037228 40 82 00 34 */ bne lbl_8003B5FC /* 8003B5CC 0003722C 80 07 00 00 */ lwz r0, 0(r7) /* 8003B5D0 00037230 38 80 00 00 */ li r4, 0 /* 8003B5D4 00037234 2C 00 00 00 */ cmpwi r0, 0 /* 8003B5D8 00037238 41 82 00 10 */ beq lbl_8003B5E8 /* 8003B5DC 0003723C 55 00 07 FF */ clrlwi. r0, r8, 0x1f /* 8003B5E0 00037240 41 82 00 08 */ beq lbl_8003B5E8 /* 8003B5E4 00037244 38 80 00 01 */ li r4, 1 lbl_8003B5E8: /* 8003B5E8 00037248 2C 04 00 00 */ cmpwi r4, 0 /* 8003B5EC 0003724C 41 82 00 10 */ beq lbl_8003B5FC /* 8003B5F0 00037250 38 C0 00 00 */ li r6, 0 /* 8003B5F4 00037254 48 00 00 08 */ b lbl_8003B5FC lbl_8003B5F8: /* 8003B5F8 00037258 38 C0 00 01 */ li r6, 1 lbl_8003B5FC: /* 8003B5FC 0003725C 2C 06 00 00 */ cmpwi r6, 0 /* 8003B600 00037260 40 82 00 54 */ bne lbl_8003B654 /* 8003B604 00037264 2C 07 00 00 */ cmpwi r7, 0 /* 8003B608 00037268 41 82 00 40 */ beq lbl_8003B648 /* 8003B60C 0003726C A1 07 00 06 */ lhz r8, 6(r7) /* 8003B610 00037270 38 C0 00 01 */ li r6, 1 /* 8003B614 00037274 55 00 07 7B */ rlwinm. r0, r8, 0, 0x1d, 0x1d /* 8003B618 00037278 40 82 00 34 */ bne lbl_8003B64C /* 8003B61C 0003727C 80 07 00 00 */ lwz r0, 0(r7) /* 8003B620 00037280 38 80 00 00 */ li r4, 0 /* 8003B624 00037284 2C 00 00 00 */ cmpwi r0, 0 /* 8003B628 00037288 41 82 00 10 */ beq lbl_8003B638 /* 8003B62C 0003728C 55 00 07 FF */ clrlwi. r0, r8, 0x1f /* 8003B630 00037290 41 82 00 08 */ beq lbl_8003B638 /* 8003B634 00037294 38 80 00 01 */ li r4, 1 lbl_8003B638: /* 8003B638 00037298 2C 04 00 00 */ cmpwi r4, 0 /* 8003B63C 0003729C 41 82 00 10 */ beq lbl_8003B64C /* 8003B640 000372A0 38 C0 00 00 */ li r6, 0 /* 8003B644 000372A4 48 00 00 08 */ b lbl_8003B64C lbl_8003B648: /* 8003B648 000372A8 38 C0 00 01 */ li r6, 1 lbl_8003B64C: /* 8003B64C 000372AC 2C 06 00 00 */ cmpwi r6, 0 /* 8003B650 000372B0 41 82 00 0C */ beq lbl_8003B65C lbl_8003B654: /* 8003B654 000372B4 38 60 00 01 */ li r3, 1 /* 8003B658 000372B8 4E 80 00 20 */ blr lbl_8003B65C: /* 8003B65C 000372BC 39 29 00 01 */ addi r9, r9, 1 lbl_8003B660: /* 8003B660 000372C0 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 8003B664 000372C4 7C 00 28 40 */ cmplw r0, r5 /* 8003B668 000372C8 41 80 FF 04 */ blt lbl_8003B56C /* 8003B66C 000372CC 38 60 00 00 */ li r3, 0 /* 8003B670 000372D0 4E 80 00 20 */ blr .global func_8003B674 func_8003B674: /* 8003B674 000372D4 80 C4 0C 04 */ lwz r6, 0xc04(r4) /* 8003B678 000372D8 2C 06 00 00 */ cmpwi r6, 0 /* 8003B67C 000372DC 41 82 00 64 */ beq lbl_8003B6E0 /* 8003B680 000372E0 2C 05 00 00 */ cmpwi r5, 0 /* 8003B684 000372E4 A0 86 00 DE */ lhz r4, 0xde(r6) /* 8003B688 000372E8 41 80 00 58 */ blt lbl_8003B6E0 /* 8003B68C 000372EC 7C 05 20 00 */ cmpw r5, r4 /* 8003B690 000372F0 40 80 00 50 */ bge lbl_8003B6E0 /* 8003B694 000372F4 80 C6 00 08 */ lwz r6, 8(r6) /* 8003B698 000372F8 2C 06 00 00 */ cmpwi r6, 0 /* 8003B69C 000372FC 40 82 00 0C */ bne lbl_8003B6A8 /* 8003B6A0 00037300 38 80 00 00 */ li r4, 0 /* 8003B6A4 00037304 48 00 00 20 */ b lbl_8003B6C4 lbl_8003B6A8: /* 8003B6A8 00037308 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 8003B6AC 0003730C 7C 00 20 40 */ cmplw r0, r4 /* 8003B6B0 00037310 41 80 00 0C */ blt lbl_8003B6BC /* 8003B6B4 00037314 38 80 00 00 */ li r4, 0 /* 8003B6B8 00037318 48 00 00 0C */ b lbl_8003B6C4 lbl_8003B6BC: /* 8003B6BC 0003731C 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 8003B6C0 00037320 7C 86 00 2E */ lwzx r4, r6, r0 lbl_8003B6C4: /* 8003B6C4 00037324 C0 04 00 DC */ lfs f0, 0xdc(r4) /* 8003B6C8 00037328 D0 03 00 00 */ stfs f0, 0(r3) /* 8003B6CC 0003732C C0 04 00 EC */ lfs f0, 0xec(r4) /* 8003B6D0 00037330 D0 03 00 04 */ stfs f0, 4(r3) /* 8003B6D4 00037334 C0 04 00 FC */ lfs f0, 0xfc(r4) /* 8003B6D8 00037338 D0 03 00 08 */ stfs f0, 8(r3) /* 8003B6DC 0003733C 4E 80 00 20 */ blr lbl_8003B6E0: /* 8003B6E0 00037340 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003B6E4 00037344 D0 03 00 00 */ stfs f0, 0(r3) /* 8003B6E8 00037348 D0 03 00 04 */ stfs f0, 4(r3) /* 8003B6EC 0003734C D0 03 00 08 */ stfs f0, 8(r3) /* 8003B6F0 00037350 4E 80 00 20 */ blr .global func_8003B6F4 func_8003B6F4: /* 8003B6F4 00037354 80 84 0C 04 */ lwz r4, 0xc04(r4) /* 8003B6F8 00037358 2C 04 00 00 */ cmpwi r4, 0 /* 8003B6FC 0003735C 41 82 00 0C */ beq lbl_8003B708 /* 8003B700 00037360 38 84 01 20 */ addi r4, r4, 0x120 /* 8003B704 00037364 48 00 00 08 */ b lbl_8003B70C lbl_8003B708: /* 8003B708 00037368 38 80 00 00 */ li r4, 0 lbl_8003B70C: /* 8003B70C 0003736C 2C 04 00 00 */ cmpwi r4, 0 /* 8003B710 00037370 40 82 00 18 */ bne lbl_8003B728 /* 8003B714 00037374 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003B718 00037378 D0 03 00 00 */ stfs f0, 0(r3) /* 8003B71C 0003737C D0 03 00 04 */ stfs f0, 4(r3) /* 8003B720 00037380 D0 03 00 08 */ stfs f0, 8(r3) /* 8003B724 00037384 4E 80 00 20 */ blr lbl_8003B728: /* 8003B728 00037388 C0 04 00 00 */ lfs f0, 0(r4) /* 8003B72C 0003738C D0 03 00 00 */ stfs f0, 0(r3) /* 8003B730 00037390 C0 04 00 04 */ lfs f0, 4(r4) /* 8003B734 00037394 D0 03 00 04 */ stfs f0, 4(r3) /* 8003B738 00037398 C0 04 00 08 */ lfs f0, 8(r4) /* 8003B73C 0003739C D0 03 00 08 */ stfs f0, 8(r3) /* 8003B740 000373A0 4E 80 00 20 */ blr .global func_8003B744 func_8003B744: /* 8003B744 000373A4 80 84 0C 04 */ lwz r4, 0xc04(r4) /* 8003B748 000373A8 2C 04 00 00 */ cmpwi r4, 0 /* 8003B74C 000373AC 41 82 00 0C */ beq lbl_8003B758 /* 8003B750 000373B0 38 84 01 20 */ addi r4, r4, 0x120 /* 8003B754 000373B4 48 00 00 08 */ b lbl_8003B75C lbl_8003B758: /* 8003B758 000373B8 38 80 00 00 */ li r4, 0 lbl_8003B75C: /* 8003B75C 000373BC 2C 04 00 00 */ cmpwi r4, 0 /* 8003B760 000373C0 40 82 00 18 */ bne lbl_8003B778 /* 8003B764 000373C4 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003B768 000373C8 D0 03 00 00 */ stfs f0, 0(r3) /* 8003B76C 000373CC D0 03 00 04 */ stfs f0, 4(r3) /* 8003B770 000373D0 D0 03 00 08 */ stfs f0, 8(r3) /* 8003B774 000373D4 4E 80 00 20 */ blr lbl_8003B778: /* 8003B778 000373D8 C0 04 00 0C */ lfs f0, 0xc(r4) /* 8003B77C 000373DC D0 03 00 00 */ stfs f0, 0(r3) /* 8003B780 000373E0 C0 04 00 10 */ lfs f0, 0x10(r4) /* 8003B784 000373E4 D0 03 00 04 */ stfs f0, 4(r3) /* 8003B788 000373E8 C0 04 00 14 */ lfs f0, 0x14(r4) /* 8003B78C 000373EC D0 03 00 08 */ stfs f0, 8(r3) /* 8003B790 000373F0 4E 80 00 20 */ blr .global func_8003B794 func_8003B794: /* 8003B794 000373F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003B798 000373F8 7C 08 02 A6 */ mflr r0 /* 8003B79C 000373FC 90 01 00 24 */ stw r0, 0x24(r1) /* 8003B7A0 00037400 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003B7A4 00037404 7C 7F 1B 78 */ mr r31, r3 /* 8003B7A8 00037408 38 61 00 08 */ addi r3, r1, 8 /* 8003B7AC 0003740C 7F E4 FB 78 */ mr r4, r31 /* 8003B7B0 00037410 4B FF D0 31 */ bl func_800387E0 /* 8003B7B4 00037414 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003B7B8 00037418 2C 03 00 00 */ cmpwi r3, 0 /* 8003B7BC 0003741C 41 82 00 0C */ beq lbl_8003B7C8 /* 8003B7C0 00037420 38 63 01 20 */ addi r3, r3, 0x120 /* 8003B7C4 00037424 48 00 00 08 */ b lbl_8003B7CC lbl_8003B7C8: /* 8003B7C8 00037428 38 60 00 00 */ li r3, 0 lbl_8003B7CC: /* 8003B7CC 0003742C 2C 03 00 00 */ cmpwi r3, 0 /* 8003B7D0 00037430 40 82 00 0C */ bne lbl_8003B7DC /* 8003B7D4 00037434 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8003B7D8 00037438 48 00 00 10 */ b lbl_8003B7E8 lbl_8003B7DC: /* 8003B7DC 0003743C C0 23 00 04 */ lfs f1, 4(r3) /* 8003B7E0 00037440 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8003B7E4 00037444 EC 21 00 2A */ fadds f1, f1, f0 lbl_8003B7E8: /* 8003B7E8 00037448 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003B7EC 0003744C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003B7F0 00037450 7C 08 03 A6 */ mtlr r0 /* 8003B7F4 00037454 38 21 00 20 */ addi r1, r1, 0x20 /* 8003B7F8 00037458 4E 80 00 20 */ blr .global func_8003B7FC func_8003B7FC: /* 8003B7FC 0003745C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8003B800 00037460 7C 08 02 A6 */ mflr r0 /* 8003B804 00037464 90 01 00 54 */ stw r0, 0x54(r1) /* 8003B808 00037468 DB E1 00 40 */ stfd f31, 0x40(r1) /* 8003B80C 0003746C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8003B810 00037470 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8003B814 00037474 7C 7F 1B 78 */ mr r31, r3 /* 8003B818 00037478 38 61 00 20 */ addi r3, r1, 0x20 /* 8003B81C 0003747C 7F E4 FB 78 */ mr r4, r31 /* 8003B820 00037480 4B FF CF C1 */ bl func_800387E0 /* 8003B824 00037484 34 9F 0C 0C */ addic. r4, r31, 0xc0c /* 8003B828 00037488 40 82 00 0C */ bne lbl_8003B834 /* 8003B82C 0003748C C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) /* 8003B830 00037490 48 00 00 28 */ b lbl_8003B858 lbl_8003B834: /* 8003B834 00037494 38 64 00 0C */ addi r3, r4, 0xc /* 8003B838 00037498 38 A1 00 14 */ addi r5, r1, 0x14 /* 8003B83C 0003749C 48 24 14 AD */ bl func_8027CCE8 /* 8003B840 000374A0 C3 E1 00 18 */ lfs f31, 0x18(r1) /* 8003B844 000374A4 C0 21 00 14 */ lfs f1, 0x14(r1) /* 8003B848 000374A8 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8003B84C 000374AC D0 21 00 08 */ stfs f1, 8(r1) /* 8003B850 000374B0 D3 E1 00 0C */ stfs f31, 0xc(r1) /* 8003B854 000374B4 D0 01 00 10 */ stfs f0, 0x10(r1) lbl_8003B858: /* 8003B858 000374B8 7F E3 FB 78 */ mr r3, r31 /* 8003B85C 000374BC 4B FF FF 39 */ bl func_8003B794 /* 8003B860 000374C0 C0 42 82 88 */ lfs f2, lbl_80640888-_SDA2_BASE_(r2) /* 8003B864 000374C4 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8003B868 000374C8 EC 42 07 F2 */ fmuls f2, f2, f31 /* 8003B86C 000374CC EC 21 10 2A */ fadds f1, f1, f2 /* 8003B870 000374D0 EC 20 08 2A */ fadds f1, f0, f1 /* 8003B874 000374D4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 8003B878 000374D8 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8003B87C 000374DC 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8003B880 000374E0 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003B884 000374E4 7C 08 03 A6 */ mtlr r0 /* 8003B888 000374E8 38 21 00 50 */ addi r1, r1, 0x50 /* 8003B88C 000374EC 4E 80 00 20 */ blr .global func_8003B890 func_8003B890: /* 8003B890 000374F0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003B894 000374F4 7C 08 02 A6 */ mflr r0 /* 8003B898 000374F8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003B89C 000374FC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003B8A0 00037500 7C 9F 23 78 */ mr r31, r4 /* 8003B8A4 00037504 93 C1 00 08 */ stw r30, 8(r1) /* 8003B8A8 00037508 7C 7E 1B 78 */ mr r30, r3 /* 8003B8AC 0003750C 4B FF CF 35 */ bl func_800387E0 /* 8003B8B0 00037510 7F E3 FB 78 */ mr r3, r31 /* 8003B8B4 00037514 4B FF FF 49 */ bl func_8003B7FC /* 8003B8B8 00037518 D0 3E 00 04 */ stfs f1, 4(r30) /* 8003B8BC 0003751C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003B8C0 00037520 83 C1 00 08 */ lwz r30, 8(r1) /* 8003B8C4 00037524 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003B8C8 00037528 7C 08 03 A6 */ mtlr r0 /* 8003B8CC 0003752C 38 21 00 10 */ addi r1, r1, 0x10 /* 8003B8D0 00037530 4E 80 00 20 */ blr .global func_8003B8D4 func_8003B8D4: /* 8003B8D4 00037534 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8003B8D8 00037538 7C 08 02 A6 */ mflr r0 /* 8003B8DC 0003753C 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8003B8E0 00037540 DB E1 00 90 */ stfd f31, 0x90(r1) /* 8003B8E4 00037544 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8003B8E8 00037548 DB C1 00 80 */ stfd f30, 0x80(r1) /* 8003B8EC 0003754C F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 8003B8F0 00037550 39 61 00 80 */ addi r11, r1, 0x80 /* 8003B8F4 00037554 48 18 B8 35 */ bl _savegpr_27 /* 8003B8F8 00037558 FF E0 08 90 */ fmr f31, f1 /* 8003B8FC 0003755C 7C 7E 1B 78 */ mr r30, r3 /* 8003B900 00037560 3B E0 00 00 */ li r31, 0 /* 8003B904 00037564 4B FF C0 A5 */ bl func_800379A8 /* 8003B908 00037568 80 1E 0C 04 */ lwz r0, 0xc04(r30) /* 8003B90C 0003756C 2C 00 00 00 */ cmpwi r0, 0 /* 8003B910 00037570 41 82 08 EC */ beq lbl_8003C1FC /* 8003B914 00037574 3F A0 80 41 */ lis r29, lbl_8040A3F0@ha /* 8003B918 00037578 3B 9E 00 04 */ addi r28, r30, 4 /* 8003B91C 0003757C 3B BD A3 F0 */ addi r29, r29, lbl_8040A3F0@l /* 8003B920 00037580 3B 60 00 00 */ li r27, 0 lbl_8003B924: /* 8003B924 00037584 81 9C 00 20 */ lwz r12, 0x20(r28) /* 8003B928 00037588 FC 20 F8 90 */ fmr f1, f31 /* 8003B92C 0003758C 7F 83 E3 78 */ mr r3, r28 /* 8003B930 00037590 81 8C 00 08 */ lwz r12, 8(r12) /* 8003B934 00037594 7D 89 03 A6 */ mtctr r12 /* 8003B938 00037598 4E 80 04 21 */ bctrl /* 8003B93C 0003759C 2C 03 00 00 */ cmpwi r3, 0 /* 8003B940 000375A0 41 82 00 0C */ beq lbl_8003B94C /* 8003B944 000375A4 A0 1D 00 00 */ lhz r0, 0(r29) /* 8003B948 000375A8 7F FF 03 78 */ or r31, r31, r0 lbl_8003B94C: /* 8003B94C 000375AC 3B 7B 00 01 */ addi r27, r27, 1 /* 8003B950 000375B0 3B BD 00 02 */ addi r29, r29, 2 /* 8003B954 000375B4 2C 1B 00 0F */ cmpwi r27, 0xf /* 8003B958 000375B8 3B 9C 00 24 */ addi r28, r28, 0x24 /* 8003B95C 000375BC 41 80 FF C8 */ blt lbl_8003B924 /* 8003B960 000375C0 81 9E 04 CC */ lwz r12, 0x4cc(r30) /* 8003B964 000375C4 FC 20 F8 90 */ fmr f1, f31 /* 8003B968 000375C8 38 7E 04 94 */ addi r3, r30, 0x494 /* 8003B96C 000375CC 81 8C 00 08 */ lwz r12, 8(r12) /* 8003B970 000375D0 7D 89 03 A6 */ mtctr r12 /* 8003B974 000375D4 4E 80 04 21 */ bctrl /* 8003B978 000375D8 2C 03 00 00 */ cmpwi r3, 0 /* 8003B97C 000375DC 41 82 00 DC */ beq lbl_8003BA58 /* 8003B980 000375E0 C0 1E 0C 28 */ lfs f0, 0xc28(r30) /* 8003B984 000375E4 FC 00 00 1E */ fctiwz f0, f0 /* 8003B988 000375E8 D8 01 00 40 */ stfd f0, 0x40(r1) /* 8003B98C 000375EC 80 01 00 44 */ lwz r0, 0x44(r1) /* 8003B990 000375F0 98 01 00 08 */ stb r0, 8(r1) /* 8003B994 000375F4 C0 1E 0C 2C */ lfs f0, 0xc2c(r30) /* 8003B998 000375F8 FC 00 00 1E */ fctiwz f0, f0 /* 8003B99C 000375FC D8 01 00 48 */ stfd f0, 0x48(r1) /* 8003B9A0 00037600 80 01 00 4C */ lwz r0, 0x4c(r1) /* 8003B9A4 00037604 98 01 00 09 */ stb r0, 9(r1) /* 8003B9A8 00037608 C0 1E 0C 30 */ lfs f0, 0xc30(r30) /* 8003B9AC 0003760C FC 00 00 1E */ fctiwz f0, f0 /* 8003B9B0 00037610 D8 01 00 50 */ stfd f0, 0x50(r1) /* 8003B9B4 00037614 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003B9B8 00037618 98 01 00 0A */ stb r0, 0xa(r1) /* 8003B9BC 0003761C C0 1E 0C 34 */ lfs f0, 0xc34(r30) /* 8003B9C0 00037620 FC 00 00 1E */ fctiwz f0, f0 /* 8003B9C4 00037624 D8 01 00 58 */ stfd f0, 0x58(r1) /* 8003B9C8 00037628 80 01 00 5C */ lwz r0, 0x5c(r1) /* 8003B9CC 0003762C 98 01 00 0B */ stb r0, 0xb(r1) /* 8003B9D0 00037630 A0 1E 0C 68 */ lhz r0, 0xc68(r30) /* 8003B9D4 00037634 28 00 01 00 */ cmplwi r0, 0x100 /* 8003B9D8 00037638 40 82 00 74 */ bne lbl_8003BA4C /* 8003B9DC 0003763C 3B 60 00 00 */ li r27, 0 /* 8003B9E0 00037640 48 00 00 50 */ b lbl_8003BA30 lbl_8003B9E4: /* 8003B9E4 00037644 80 C5 00 04 */ lwz r6, 4(r5) /* 8003B9E8 00037648 2C 06 00 00 */ cmpwi r6, 0 /* 8003B9EC 0003764C 40 82 00 0C */ bne lbl_8003B9F8 /* 8003B9F0 00037650 38 60 00 00 */ li r3, 0 /* 8003B9F4 00037654 48 00 00 28 */ b lbl_8003BA1C lbl_8003B9F8: /* 8003B9F8 00037658 80 65 00 00 */ lwz r3, 0(r5) /* 8003B9FC 0003765C 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 8003BA00 00037660 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003BA04 00037664 7C 04 00 40 */ cmplw r4, r0 /* 8003BA08 00037668 41 80 00 0C */ blt lbl_8003BA14 /* 8003BA0C 0003766C 38 60 00 00 */ li r3, 0 /* 8003BA10 00037670 48 00 00 0C */ b lbl_8003BA1C lbl_8003BA14: /* 8003BA14 00037674 57 60 15 BA */ rlwinm r0, r27, 2, 0x16, 0x1d /* 8003BA18 00037678 7C 66 00 2E */ lwzx r3, r6, r0 lbl_8003BA1C: /* 8003BA1C 0003767C 2C 03 00 00 */ cmpwi r3, 0 /* 8003BA20 00037680 41 82 00 0C */ beq lbl_8003BA2C /* 8003BA24 00037684 38 81 00 08 */ addi r4, r1, 8 /* 8003BA28 00037688 48 1B A7 E5 */ bl func_801F620C lbl_8003BA2C: /* 8003BA2C 0003768C 3B 7B 00 01 */ addi r27, r27, 1 lbl_8003BA30: /* 8003BA30 00037690 80 BE 0C 00 */ lwz r5, 0xc00(r30) /* 8003BA34 00037694 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 8003BA38 00037698 80 65 00 00 */ lwz r3, 0(r5) /* 8003BA3C 0003769C A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003BA40 000376A0 7C 04 00 00 */ cmpw r4, r0 /* 8003BA44 000376A4 41 80 FF A0 */ blt lbl_8003B9E4 /* 8003BA48 000376A8 48 00 00 10 */ b lbl_8003BA58 lbl_8003BA4C: /* 8003BA4C 000376AC 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BA50 000376B0 38 81 00 08 */ addi r4, r1, 8 /* 8003BA54 000376B4 48 1B A7 B9 */ bl func_801F620C lbl_8003BA58: /* 8003BA58 000376B8 81 9E 05 08 */ lwz r12, 0x508(r30) /* 8003BA5C 000376BC FC 20 F8 90 */ fmr f1, f31 /* 8003BA60 000376C0 38 7E 04 D0 */ addi r3, r30, 0x4d0 /* 8003BA64 000376C4 81 8C 00 08 */ lwz r12, 8(r12) /* 8003BA68 000376C8 7D 89 03 A6 */ mtctr r12 /* 8003BA6C 000376CC 4E 80 04 21 */ bctrl /* 8003BA70 000376D0 2C 03 00 00 */ cmpwi r3, 0 /* 8003BA74 000376D4 41 82 00 DC */ beq lbl_8003BB50 /* 8003BA78 000376D8 C0 1E 0C 38 */ lfs f0, 0xc38(r30) /* 8003BA7C 000376DC FC 00 00 1E */ fctiwz f0, f0 /* 8003BA80 000376E0 D8 01 00 58 */ stfd f0, 0x58(r1) /* 8003BA84 000376E4 80 01 00 5C */ lwz r0, 0x5c(r1) /* 8003BA88 000376E8 98 01 00 08 */ stb r0, 8(r1) /* 8003BA8C 000376EC C0 1E 0C 3C */ lfs f0, 0xc3c(r30) /* 8003BA90 000376F0 FC 00 00 1E */ fctiwz f0, f0 /* 8003BA94 000376F4 D8 01 00 50 */ stfd f0, 0x50(r1) /* 8003BA98 000376F8 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003BA9C 000376FC 98 01 00 09 */ stb r0, 9(r1) /* 8003BAA0 00037700 C0 1E 0C 40 */ lfs f0, 0xc40(r30) /* 8003BAA4 00037704 FC 00 00 1E */ fctiwz f0, f0 /* 8003BAA8 00037708 D8 01 00 48 */ stfd f0, 0x48(r1) /* 8003BAAC 0003770C 80 01 00 4C */ lwz r0, 0x4c(r1) /* 8003BAB0 00037710 98 01 00 0A */ stb r0, 0xa(r1) /* 8003BAB4 00037714 C0 1E 0C 44 */ lfs f0, 0xc44(r30) /* 8003BAB8 00037718 FC 00 00 1E */ fctiwz f0, f0 /* 8003BABC 0003771C D8 01 00 40 */ stfd f0, 0x40(r1) /* 8003BAC0 00037720 80 01 00 44 */ lwz r0, 0x44(r1) /* 8003BAC4 00037724 98 01 00 0B */ stb r0, 0xb(r1) /* 8003BAC8 00037728 A0 1E 0C 68 */ lhz r0, 0xc68(r30) /* 8003BACC 0003772C 28 00 01 00 */ cmplwi r0, 0x100 /* 8003BAD0 00037730 40 82 00 74 */ bne lbl_8003BB44 /* 8003BAD4 00037734 3B 60 00 00 */ li r27, 0 /* 8003BAD8 00037738 48 00 00 50 */ b lbl_8003BB28 lbl_8003BADC: /* 8003BADC 0003773C 80 C5 00 04 */ lwz r6, 4(r5) /* 8003BAE0 00037740 2C 06 00 00 */ cmpwi r6, 0 /* 8003BAE4 00037744 40 82 00 0C */ bne lbl_8003BAF0 /* 8003BAE8 00037748 38 60 00 00 */ li r3, 0 /* 8003BAEC 0003774C 48 00 00 28 */ b lbl_8003BB14 lbl_8003BAF0: /* 8003BAF0 00037750 80 65 00 00 */ lwz r3, 0(r5) /* 8003BAF4 00037754 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 8003BAF8 00037758 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003BAFC 0003775C 7C 04 00 40 */ cmplw r4, r0 /* 8003BB00 00037760 41 80 00 0C */ blt lbl_8003BB0C /* 8003BB04 00037764 38 60 00 00 */ li r3, 0 /* 8003BB08 00037768 48 00 00 0C */ b lbl_8003BB14 lbl_8003BB0C: /* 8003BB0C 0003776C 57 60 15 BA */ rlwinm r0, r27, 2, 0x16, 0x1d /* 8003BB10 00037770 7C 66 00 2E */ lwzx r3, r6, r0 lbl_8003BB14: /* 8003BB14 00037774 2C 03 00 00 */ cmpwi r3, 0 /* 8003BB18 00037778 41 82 00 0C */ beq lbl_8003BB24 /* 8003BB1C 0003777C 38 81 00 08 */ addi r4, r1, 8 /* 8003BB20 00037780 48 1B A6 75 */ bl func_801F6194 lbl_8003BB24: /* 8003BB24 00037784 3B 7B 00 01 */ addi r27, r27, 1 lbl_8003BB28: /* 8003BB28 00037788 80 BE 0C 00 */ lwz r5, 0xc00(r30) /* 8003BB2C 0003778C 57 64 06 3E */ clrlwi r4, r27, 0x18 /* 8003BB30 00037790 80 65 00 00 */ lwz r3, 0(r5) /* 8003BB34 00037794 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003BB38 00037798 7C 04 00 00 */ cmpw r4, r0 /* 8003BB3C 0003779C 41 80 FF A0 */ blt lbl_8003BADC /* 8003BB40 000377A0 48 00 00 10 */ b lbl_8003BB50 lbl_8003BB44: /* 8003BB44 000377A4 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BB48 000377A8 38 81 00 08 */ addi r4, r1, 8 /* 8003BB4C 000377AC 48 1B A6 49 */ bl func_801F6194 lbl_8003BB50: /* 8003BB50 000377B0 81 9E 04 90 */ lwz r12, 0x490(r30) /* 8003BB54 000377B4 FC 20 F8 90 */ fmr f1, f31 /* 8003BB58 000377B8 38 7E 04 60 */ addi r3, r30, 0x460 /* 8003BB5C 000377BC 81 8C 00 08 */ lwz r12, 8(r12) /* 8003BB60 000377C0 7D 89 03 A6 */ mtctr r12 /* 8003BB64 000377C4 4E 80 04 21 */ bctrl /* 8003BB68 000377C8 2C 03 00 00 */ cmpwi r3, 0 /* 8003BB6C 000377CC 41 82 00 14 */ beq lbl_8003BB80 /* 8003BB70 000377D0 80 BE 0C 74 */ lwz r5, 0xc74(r30) /* 8003BB74 000377D4 7F C3 F3 78 */ mr r3, r30 /* 8003BB78 000377D8 38 9E 0C 78 */ addi r4, r30, 0xc78 /* 8003BB7C 000377DC 4B FF ED DD */ bl func_8003A958 lbl_8003BB80: /* 8003BB80 000377E0 3F 80 80 41 */ lis r28, lbl_8040A3F0@ha /* 8003BB84 000377E4 3B BE 02 20 */ addi r29, r30, 0x220 /* 8003BB88 000377E8 3B 9C A3 F0 */ addi r28, r28, lbl_8040A3F0@l /* 8003BB8C 000377EC 3B 60 00 00 */ li r27, 0 lbl_8003BB90: /* 8003BB90 000377F0 81 9D 00 20 */ lwz r12, 0x20(r29) /* 8003BB94 000377F4 FC 20 F8 90 */ fmr f1, f31 /* 8003BB98 000377F8 7F A3 EB 78 */ mr r3, r29 /* 8003BB9C 000377FC 81 8C 00 08 */ lwz r12, 8(r12) /* 8003BBA0 00037800 7D 89 03 A6 */ mtctr r12 /* 8003BBA4 00037804 4E 80 04 21 */ bctrl /* 8003BBA8 00037808 2C 03 00 00 */ cmpwi r3, 0 /* 8003BBAC 0003780C 41 82 00 0C */ beq lbl_8003BBB8 /* 8003BBB0 00037810 A0 1C 00 0C */ lhz r0, 0xc(r28) /* 8003BBB4 00037814 7F FF 03 78 */ or r31, r31, r0 lbl_8003BBB8: /* 8003BBB8 00037818 3B 7B 00 01 */ addi r27, r27, 1 /* 8003BBBC 0003781C 3B 9C 00 02 */ addi r28, r28, 2 /* 8003BBC0 00037820 2C 1B 00 03 */ cmpwi r27, 3 /* 8003BBC4 00037824 3B BD 00 C0 */ addi r29, r29, 0xc0 /* 8003BBC8 00037828 41 80 FF C8 */ blt lbl_8003BB90 /* 8003BBCC 0003782C 80 1E 0D 70 */ lwz r0, 0xd70(r30) /* 8003BBD0 00037830 2C 00 00 00 */ cmpwi r0, 0 /* 8003BBD4 00037834 41 82 00 18 */ beq lbl_8003BBEC /* 8003BBD8 00037838 C0 3E 0D 68 */ lfs f1, 0xd68(r30) /* 8003BBDC 0003783C 7F C3 F3 78 */ mr r3, r30 /* 8003BBE0 00037840 C0 5E 0D 6C */ lfs f2, 0xd6c(r30) /* 8003BBE4 00037844 C0 7E 0D 64 */ lfs f3, 0xd64(r30) /* 8003BBE8 00037848 4B FF F5 E5 */ bl func_8003B1CC lbl_8003BBEC: /* 8003BBEC 0003784C FC 20 F8 90 */ fmr f1, f31 /* 8003BBF0 00037850 7F C3 F3 78 */ mr r3, r30 /* 8003BBF4 00037854 48 00 1F 4D */ bl func_8003DB40 /* 8003BBF8 00037858 FC 20 F8 90 */ fmr f1, f31 /* 8003BBFC 0003785C 7F C3 F3 78 */ mr r3, r30 /* 8003BC00 00037860 48 00 0F B9 */ bl func_8003CBB8 /* 8003BC04 00037864 C0 5E 0D 80 */ lfs f2, 0xd80(r30) /* 8003BC08 00037868 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003BC0C 0003786C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8003BC10 00037870 40 81 00 C0 */ ble lbl_8003BCD0 /* 8003BC14 00037874 C0 1E 0D 8C */ lfs f0, 0xd8c(r30) /* 8003BC18 00037878 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8003BC1C 0003787C 40 81 00 B4 */ ble lbl_8003BCD0 /* 8003BC20 00037880 EC 00 F8 28 */ fsubs f0, f0, f31 /* 8003BC24 00037884 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8003BC28 00037888 D0 1E 0D 8C */ stfs f0, 0xd8c(r30) /* 8003BC2C 0003788C 40 80 00 58 */ bge lbl_8003BC84 /* 8003BC30 00037890 83 BE 0C 04 */ lwz r29, 0xc04(r30) /* 8003BC34 00037894 D0 3E 0D 8C */ stfs f1, 0xd8c(r30) /* 8003BC38 00037898 7F A3 EB 78 */ mr r3, r29 /* 8003BC3C 0003789C 48 1B A2 81 */ bl func_801F5EBC /* 8003BC40 000378A0 2C 03 00 00 */ cmpwi r3, 0 /* 8003BC44 000378A4 41 82 00 18 */ beq lbl_8003BC5C /* 8003BC48 000378A8 A0 1D 00 DC */ lhz r0, 0xdc(r29) /* 8003BC4C 000378AC 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 8003BC50 000378B0 40 82 00 0C */ bne lbl_8003BC5C /* 8003BC54 000378B4 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 8003BC58 000378B8 D0 1D 01 18 */ stfs f0, 0x118(r29) lbl_8003BC5C: /* 8003BC5C 000378BC 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BC60 000378C0 38 C0 00 00 */ li r6, 0 /* 8003BC64 000378C4 38 E0 00 00 */ li r7, 0 /* 8003BC68 000378C8 39 00 00 01 */ li r8, 1 /* 8003BC6C 000378CC A0 83 01 04 */ lhz r4, 0x104(r3) /* 8003BC70 000378D0 80 A3 01 08 */ lwz r5, 0x108(r3) /* 8003BC74 000378D4 C0 23 01 0C */ lfs f1, 0x10c(r3) /* 8003BC78 000378D8 C0 43 01 14 */ lfs f2, 0x114(r3) /* 8003BC7C 000378DC 48 1B 91 79 */ bl func_801F4DF4 /* 8003BC80 000378E0 48 00 00 50 */ b lbl_8003BCD0 lbl_8003BC84: /* 8003BC84 000378E4 EC 20 10 24 */ fdivs f1, f0, f2 /* 8003BC88 000378E8 C0 02 82 30 */ lfs f0, lbl_80640830-_SDA2_BASE_(r2) /* 8003BC8C 000378EC EF C0 08 28 */ fsubs f30, f0, f1 /* 8003BC90 000378F0 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 8003BC94 000378F4 40 81 00 08 */ ble lbl_8003BC9C /* 8003BC98 000378F8 FF C0 00 90 */ fmr f30, f0 lbl_8003BC9C: /* 8003BC9C 000378FC C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003BCA0 00037900 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 8003BCA4 00037904 40 80 00 08 */ bge lbl_8003BCAC /* 8003BCA8 00037908 FF C0 00 90 */ fmr f30, f0 lbl_8003BCAC: /* 8003BCAC 0003790C 83 BE 0C 04 */ lwz r29, 0xc04(r30) /* 8003BCB0 00037910 7F A3 EB 78 */ mr r3, r29 /* 8003BCB4 00037914 48 1B A2 09 */ bl func_801F5EBC /* 8003BCB8 00037918 2C 03 00 00 */ cmpwi r3, 0 /* 8003BCBC 0003791C 41 82 00 14 */ beq lbl_8003BCD0 /* 8003BCC0 00037920 A0 1D 00 DC */ lhz r0, 0xdc(r29) /* 8003BCC4 00037924 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 8003BCC8 00037928 40 82 00 08 */ bne lbl_8003BCD0 /* 8003BCCC 0003792C D3 DD 01 18 */ stfs f30, 0x118(r29) lbl_8003BCD0: /* 8003BCD0 00037930 57 E0 07 7F */ clrlwi. r0, r31, 0x1d /* 8003BCD4 00037934 41 82 00 4C */ beq lbl_8003BD20 /* 8003BCD8 00037938 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BCDC 0003793C C0 5E 0C B4 */ lfs f2, 0xcb4(r30) /* 8003BCE0 00037940 80 63 00 08 */ lwz r3, 8(r3) /* 8003BCE4 00037944 C0 3E 0C B8 */ lfs f1, 0xcb8(r30) /* 8003BCE8 00037948 C0 1E 0C BC */ lfs f0, 0xcbc(r30) /* 8003BCEC 0003794C 2C 03 00 00 */ cmpwi r3, 0 /* 8003BCF0 00037950 D0 41 00 24 */ stfs f2, 0x24(r1) /* 8003BCF4 00037954 D0 21 00 28 */ stfs f1, 0x28(r1) /* 8003BCF8 00037958 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 8003BCFC 0003795C 41 82 00 24 */ beq lbl_8003BD20 /* 8003BD00 00037960 80 63 00 00 */ lwz r3, 0(r3) /* 8003BD04 00037964 2C 03 00 00 */ cmpwi r3, 0 /* 8003BD08 00037968 41 82 00 18 */ beq lbl_8003BD20 /* 8003BD0C 0003796C D0 43 00 20 */ stfs f2, 0x20(r3) /* 8003BD10 00037970 38 80 00 01 */ li r4, 1 /* 8003BD14 00037974 D0 23 00 24 */ stfs f1, 0x24(r3) /* 8003BD18 00037978 D0 03 00 28 */ stfs f0, 0x28(r3) /* 8003BD1C 0003797C 48 1B 69 9D */ bl func_801F26B8 lbl_8003BD20: /* 8003BD20 00037980 57 E0 06 B9 */ rlwinm. r0, r31, 0, 0x1a, 0x1c /* 8003BD24 00037984 41 82 00 78 */ beq lbl_8003BD9C /* 8003BD28 00037988 C0 1E 0C C0 */ lfs f0, 0xcc0(r30) /* 8003BD2C 0003798C 38 61 00 30 */ addi r3, r1, 0x30 /* 8003BD30 00037990 38 81 00 18 */ addi r4, r1, 0x18 /* 8003BD34 00037994 D0 01 00 18 */ stfs f0, 0x18(r1) /* 8003BD38 00037998 C0 1E 0C C4 */ lfs f0, 0xcc4(r30) /* 8003BD3C 0003799C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8003BD40 000379A0 C0 1E 0C C8 */ lfs f0, 0xcc8(r30) /* 8003BD44 000379A4 D0 01 00 20 */ stfs f0, 0x20(r1) /* 8003BD48 000379A8 48 1E 79 79 */ bl func_802236C0 /* 8003BD4C 000379AC 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BD50 000379B0 80 63 00 08 */ lwz r3, 8(r3) /* 8003BD54 000379B4 2C 03 00 00 */ cmpwi r3, 0 /* 8003BD58 000379B8 41 82 00 44 */ beq lbl_8003BD9C /* 8003BD5C 000379BC 80 63 00 00 */ lwz r3, 0(r3) /* 8003BD60 000379C0 2C 03 00 00 */ cmpwi r3, 0 /* 8003BD64 000379C4 41 82 00 38 */ beq lbl_8003BD9C /* 8003BD68 000379C8 C0 01 00 30 */ lfs f0, 0x30(r1) /* 8003BD6C 000379CC 38 80 00 01 */ li r4, 1 /* 8003BD70 000379D0 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 8003BD74 000379D4 C0 01 00 34 */ lfs f0, 0x34(r1) /* 8003BD78 000379D8 D0 03 00 30 */ stfs f0, 0x30(r3) /* 8003BD7C 000379DC C0 01 00 38 */ lfs f0, 0x38(r1) /* 8003BD80 000379E0 D0 03 00 34 */ stfs f0, 0x34(r3) /* 8003BD84 000379E4 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 8003BD88 000379E8 D0 03 00 38 */ stfs f0, 0x38(r3) /* 8003BD8C 000379EC A0 03 00 10 */ lhz r0, 0x10(r3) /* 8003BD90 000379F0 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 8003BD94 000379F4 B0 03 00 10 */ sth r0, 0x10(r3) /* 8003BD98 000379F8 48 1B 69 21 */ bl func_801F26B8 lbl_8003BD9C: /* 8003BD9C 000379FC 57 E0 05 F3 */ rlwinm. r0, r31, 0, 0x17, 0x19 /* 8003BDA0 00037A00 41 82 00 E8 */ beq lbl_8003BE88 /* 8003BDA4 00037A04 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BDA8 00037A08 C0 7E 0C CC */ lfs f3, 0xccc(r30) /* 8003BDAC 00037A0C 80 63 00 08 */ lwz r3, 8(r3) /* 8003BDB0 00037A10 C0 3E 0C D0 */ lfs f1, 0xcd0(r30) /* 8003BDB4 00037A14 C0 1E 0C D4 */ lfs f0, 0xcd4(r30) /* 8003BDB8 00037A18 2C 03 00 00 */ cmpwi r3, 0 /* 8003BDBC 00037A1C D0 61 00 0C */ stfs f3, 0xc(r1) /* 8003BDC0 00037A20 D0 21 00 10 */ stfs f1, 0x10(r1) /* 8003BDC4 00037A24 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003BDC8 00037A28 41 82 00 C0 */ beq lbl_8003BE88 /* 8003BDCC 00037A2C 80 63 00 00 */ lwz r3, 0(r3) /* 8003BDD0 00037A30 2C 03 00 00 */ cmpwi r3, 0 /* 8003BDD4 00037A34 41 82 00 B4 */ beq lbl_8003BE88 /* 8003BDD8 00037A38 D0 63 00 48 */ stfs f3, 0x48(r3) /* 8003BDDC 00037A3C C0 42 82 70 */ lfs f2, lbl_80640870-_SDA2_BASE_(r2) /* 8003BDE0 00037A40 D0 23 00 4C */ stfs f1, 0x4c(r3) /* 8003BDE4 00037A44 FC 03 10 40 */ fcmpo cr0, f3, f2 /* 8003BDE8 00037A48 D0 03 00 50 */ stfs f0, 0x50(r3) /* 8003BDEC 00037A4C 40 80 00 2C */ bge lbl_8003BE18 /* 8003BDF0 00037A50 C0 23 00 48 */ lfs f1, 0x48(r3) /* 8003BDF4 00037A54 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 8003BDF8 00037A58 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8003BDFC 00037A5C 40 81 00 1C */ ble lbl_8003BE18 /* 8003BE00 00037A60 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003BE04 00037A64 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003BE08 00037A68 40 80 00 08 */ bge lbl_8003BE10 /* 8003BE0C 00037A6C 48 00 00 08 */ b lbl_8003BE14 lbl_8003BE10: /* 8003BE10 00037A70 FC 60 10 90 */ fmr f3, f2 lbl_8003BE14: /* 8003BE14 00037A74 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_8003BE18: /* 8003BE18 00037A78 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 8003BE1C 00037A7C C0 22 82 70 */ lfs f1, lbl_80640870-_SDA2_BASE_(r2) /* 8003BE20 00037A80 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8003BE24 00037A84 40 80 00 28 */ bge lbl_8003BE4C /* 8003BE28 00037A88 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 8003BE2C 00037A8C FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8003BE30 00037A90 40 81 00 1C */ ble lbl_8003BE4C /* 8003BE34 00037A94 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003BE38 00037A98 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003BE3C 00037A9C 40 80 00 08 */ bge lbl_8003BE44 /* 8003BE40 00037AA0 48 00 00 08 */ b lbl_8003BE48 lbl_8003BE44: /* 8003BE44 00037AA4 FC 60 08 90 */ fmr f3, f1 lbl_8003BE48: /* 8003BE48 00037AA8 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8003BE4C: /* 8003BE4C 00037AAC C0 43 00 50 */ lfs f2, 0x50(r3) /* 8003BE50 00037AB0 C0 22 82 70 */ lfs f1, lbl_80640870-_SDA2_BASE_(r2) /* 8003BE54 00037AB4 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8003BE58 00037AB8 40 80 00 28 */ bge lbl_8003BE80 /* 8003BE5C 00037ABC C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 8003BE60 00037AC0 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8003BE64 00037AC4 40 81 00 1C */ ble lbl_8003BE80 /* 8003BE68 00037AC8 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003BE6C 00037ACC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003BE70 00037AD0 40 80 00 08 */ bge lbl_8003BE78 /* 8003BE74 00037AD4 48 00 00 08 */ b lbl_8003BE7C lbl_8003BE78: /* 8003BE78 00037AD8 FC 60 08 90 */ fmr f3, f1 lbl_8003BE7C: /* 8003BE7C 00037ADC D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8003BE80: /* 8003BE80 00037AE0 38 80 00 01 */ li r4, 1 /* 8003BE84 00037AE4 48 1B 68 35 */ bl func_801F26B8 lbl_8003BE88: /* 8003BE88 00037AE8 57 E0 05 AD */ rlwinm. r0, r31, 0, 0x16, 0x16 /* 8003BE8C 00037AEC 41 82 00 28 */ beq lbl_8003BEB4 /* 8003BE90 00037AF0 C0 22 82 38 */ lfs f1, lbl_80640838-_SDA2_BASE_(r2) /* 8003BE94 00037AF4 C0 1E 0C 70 */ lfs f0, 0xc70(r30) /* 8003BE98 00037AF8 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BE9C 00037AFC EC 01 00 32 */ fmuls f0, f1, f0 /* 8003BEA0 00037B00 FC 00 00 1E */ fctiwz f0, f0 /* 8003BEA4 00037B04 D8 01 00 58 */ stfd f0, 0x58(r1) /* 8003BEA8 00037B08 80 81 00 5C */ lwz r4, 0x5c(r1) /* 8003BEAC 00037B0C 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 8003BEB0 00037B10 48 1B A2 6D */ bl func_801F611C lbl_8003BEB4: /* 8003BEB4 00037B14 80 7E 0C B0 */ lwz r3, 0xcb0(r30) /* 8003BEB8 00037B18 2C 03 00 00 */ cmpwi r3, 0 /* 8003BEBC 00037B1C 41 82 01 0C */ beq lbl_8003BFC8 /* 8003BEC0 00037B20 88 03 00 00 */ lbz r0, 0(r3) /* 8003BEC4 00037B24 7C 00 07 75 */ extsb. r0, r0 /* 8003BEC8 00037B28 41 80 01 00 */ blt lbl_8003BFC8 /* 8003BECC 00037B2C 7F C3 F3 78 */ mr r3, r30 /* 8003BED0 00037B30 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8003BED4 00037B34 48 00 03 89 */ bl func_8003C25C /* 8003BED8 00037B38 7C 7D 1B 78 */ mr r29, r3 /* 8003BEDC 00037B3C 7F C3 F3 78 */ mr r3, r30 /* 8003BEE0 00037B40 4B FF F5 3D */ bl func_8003B41C /* 8003BEE4 00037B44 80 1E 00 00 */ lwz r0, 0(r30) /* 8003BEE8 00037B48 7C 7F 1B 78 */ mr r31, r3 /* 8003BEEC 00037B4C 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 /* 8003BEF0 00037B50 41 82 00 10 */ beq lbl_8003BF00 /* 8003BEF4 00037B54 7F C3 F3 78 */ mr r3, r30 /* 8003BEF8 00037B58 48 00 15 BD */ bl func_8003D4B4 /* 8003BEFC 00037B5C 48 00 00 CC */ b lbl_8003BFC8 lbl_8003BF00: /* 8003BF00 00037B60 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BF04 00037B64 48 1B 9F B9 */ bl func_801F5EBC /* 8003BF08 00037B68 2C 03 00 00 */ cmpwi r3, 0 /* 8003BF0C 00037B6C 40 82 00 BC */ bne lbl_8003BFC8 /* 8003BF10 00037B70 38 1F FF FF */ addi r0, r31, -1 /* 8003BF14 00037B74 28 00 00 01 */ cmplwi r0, 1 /* 8003BF18 00037B78 41 81 00 B0 */ bgt lbl_8003BFC8 /* 8003BF1C 00037B7C 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003BF20 00037B80 57 A4 04 3E */ clrlwi r4, r29, 0x10 /* 8003BF24 00037B84 A0 03 00 F0 */ lhz r0, 0xf0(r3) /* 8003BF28 00037B88 7C 04 00 40 */ cmplw r4, r0 /* 8003BF2C 00037B8C 41 82 00 9C */ beq lbl_8003BFC8 /* 8003BF30 00037B90 80 A3 00 04 */ lwz r5, 4(r3) /* 8003BF34 00037B94 2C 05 00 00 */ cmpwi r5, 0 /* 8003BF38 00037B98 40 82 00 0C */ bne lbl_8003BF44 /* 8003BF3C 00037B9C 38 80 00 00 */ li r4, 0 /* 8003BF40 00037BA0 48 00 00 24 */ b lbl_8003BF64 lbl_8003BF44: /* 8003BF44 00037BA4 A0 05 00 08 */ lhz r0, 8(r5) /* 8003BF48 00037BA8 7C 04 00 40 */ cmplw r4, r0 /* 8003BF4C 00037BAC 41 80 00 0C */ blt lbl_8003BF58 /* 8003BF50 00037BB0 38 80 00 00 */ li r4, 0 /* 8003BF54 00037BB4 48 00 00 10 */ b lbl_8003BF64 lbl_8003BF58: /* 8003BF58 00037BB8 1C 04 00 30 */ mulli r0, r4, 0x30 /* 8003BF5C 00037BBC 80 85 00 0C */ lwz r4, 0xc(r5) /* 8003BF60 00037BC0 7C 84 02 14 */ add r4, r4, r0 lbl_8003BF64: /* 8003BF64 00037BC4 88 A4 00 28 */ lbz r5, 0x28(r4) /* 8003BF68 00037BC8 57 A4 04 3E */ clrlwi r4, r29, 0x10 /* 8003BF6C 00037BCC C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003BF70 00037BD0 38 C0 00 00 */ li r6, 0 /* 8003BF74 00037BD4 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003BF78 00037BD8 38 E0 00 00 */ li r7, 0 /* 8003BF7C 00037BDC 39 00 00 00 */ li r8, 0 /* 8003BF80 00037BE0 48 1B 8E 75 */ bl func_801F4DF4 /* 8003BF84 00037BE4 80 7E 0C B0 */ lwz r3, 0xcb0(r30) /* 8003BF88 00037BE8 B3 BE 0B F8 */ sth r29, 0xbf8(r30) /* 8003BF8C 00037BEC 38 03 00 01 */ addi r0, r3, 1 /* 8003BF90 00037BF0 88 63 00 00 */ lbz r3, 0(r3) /* 8003BF94 00037BF4 2C 03 00 00 */ cmpwi r3, 0 /* 8003BF98 00037BF8 98 7E 0B F6 */ stb r3, 0xbf6(r30) /* 8003BF9C 00037BFC 90 1E 0C B0 */ stw r0, 0xcb0(r30) /* 8003BFA0 00037C00 41 82 00 0C */ beq lbl_8003BFAC /* 8003BFA4 00037C04 28 03 00 10 */ cmplwi r3, 0x10 /* 8003BFA8 00037C08 40 82 00 14 */ bne lbl_8003BFBC lbl_8003BFAC: /* 8003BFAC 00037C0C 80 1E 00 00 */ lwz r0, 0(r30) /* 8003BFB0 00037C10 64 00 00 02 */ oris r0, r0, 2 /* 8003BFB4 00037C14 90 1E 00 00 */ stw r0, 0(r30) /* 8003BFB8 00037C18 48 00 00 10 */ b lbl_8003BFC8 lbl_8003BFBC: /* 8003BFBC 00037C1C 80 1E 00 00 */ lwz r0, 0(r30) /* 8003BFC0 00037C20 54 00 03 DA */ rlwinm r0, r0, 0, 0xf, 0xd /* 8003BFC4 00037C24 90 1E 00 00 */ stw r0, 0(r30) lbl_8003BFC8: /* 8003BFC8 00037C28 80 1E 00 00 */ lwz r0, 0(r30) /* 8003BFCC 00037C2C 54 00 02 95 */ rlwinm. r0, r0, 0, 0xa, 0xa /* 8003BFD0 00037C30 41 82 00 24 */ beq lbl_8003BFF4 /* 8003BFD4 00037C34 C0 3E 0D 78 */ lfs f1, 0xd78(r30) /* 8003BFD8 00037C38 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003BFDC 00037C3C EC 21 F8 28 */ fsubs f1, f1, f31 /* 8003BFE0 00037C40 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003BFE4 00037C44 D0 3E 0D 78 */ stfs f1, 0xd78(r30) /* 8003BFE8 00037C48 40 80 00 0C */ bge lbl_8003BFF4 /* 8003BFEC 00037C4C 7F C3 F3 78 */ mr r3, r30 /* 8003BFF0 00037C50 4B FF DC 21 */ bl func_80039C10 lbl_8003BFF4: /* 8003BFF4 00037C54 80 7E 00 00 */ lwz r3, 0(r30) /* 8003BFF8 00037C58 54 60 04 A5 */ rlwinm. r0, r3, 0, 0x12, 0x12 /* 8003BFFC 00037C5C 40 82 01 68 */ bne lbl_8003C164 /* 8003C000 00037C60 54 60 03 9D */ rlwinm. r0, r3, 0, 0xe, 0xe /* 8003C004 00037C64 41 82 01 60 */ beq lbl_8003C164 /* 8003C008 00037C68 C0 3E 0C 6C */ lfs f1, 0xc6c(r30) /* 8003C00C 00037C6C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003C010 00037C70 EC 21 F8 28 */ fsubs f1, f1, f31 /* 8003C014 00037C74 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003C018 00037C78 D0 3E 0C 6C */ stfs f1, 0xc6c(r30) /* 8003C01C 00037C7C 40 80 01 48 */ bge lbl_8003C164 /* 8003C020 00037C80 48 1E 78 11 */ bl func_80223830 /* 8003C024 00037C84 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8003C028 00037C88 80 A3 00 00 */ lwz r5, 0(r3) /* 8003C02C 00037C8C 38 84 43 FD */ addi r4, r4, 0x000343FD@l /* 8003C030 00037C90 3C 00 43 30 */ lis r0, 0x4330 /* 8003C034 00037C94 7C A5 21 D6 */ mullw r5, r5, r4 /* 8003C038 00037C98 90 01 00 58 */ stw r0, 0x58(r1) /* 8003C03C 00037C9C C8 62 82 50 */ lfd f3, lbl_80640850-_SDA2_BASE_(r2) /* 8003C040 00037CA0 38 80 00 13 */ li r4, 0x13 /* 8003C044 00037CA4 C0 22 82 2C */ lfs f1, lbl_8064082C-_SDA2_BASE_(r2) /* 8003C048 00037CA8 C0 02 82 A8 */ lfs f0, lbl_806408A8-_SDA2_BASE_(r2) /* 8003C04C 00037CAC 3C A5 00 27 */ addis r5, r5, 0x27 /* 8003C050 00037CB0 38 A5 9E C3 */ addi r5, r5, -24893 /* 8003C054 00037CB4 54 A0 84 3E */ srwi r0, r5, 0x10 /* 8003C058 00037CB8 90 A3 00 00 */ stw r5, 0(r3) /* 8003C05C 00037CBC 7F C3 F3 78 */ mr r3, r30 /* 8003C060 00037CC0 90 01 00 5C */ stw r0, 0x5c(r1) /* 8003C064 00037CC4 C8 41 00 58 */ lfd f2, 0x58(r1) /* 8003C068 00037CC8 EC 42 18 28 */ fsubs f2, f2, f3 /* 8003C06C 00037CCC EC 22 08 24 */ fdivs f1, f2, f1 /* 8003C070 00037CD0 EC 00 08 2A */ fadds f0, f0, f1 /* 8003C074 00037CD4 D0 1E 0C 6C */ stfs f0, 0xc6c(r30) /* 8003C078 00037CD8 48 00 01 E5 */ bl func_8003C25C /* 8003C07C 00037CDC 83 9E 0C 04 */ lwz r28, 0xc04(r30) /* 8003C080 00037CE0 7C 7F 1B 78 */ mr r31, r3 /* 8003C084 00037CE4 80 9C 00 04 */ lwz r4, 4(r28) /* 8003C088 00037CE8 2C 04 00 00 */ cmpwi r4, 0 /* 8003C08C 00037CEC 40 82 00 0C */ bne lbl_8003C098 /* 8003C090 00037CF0 38 60 00 00 */ li r3, 0 /* 8003C094 00037CF4 48 00 00 28 */ b lbl_8003C0BC lbl_8003C098: /* 8003C098 00037CF8 A0 04 00 08 */ lhz r0, 8(r4) /* 8003C09C 00037CFC 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003C0A0 00037D00 7C 03 00 40 */ cmplw r3, r0 /* 8003C0A4 00037D04 41 80 00 0C */ blt lbl_8003C0B0 /* 8003C0A8 00037D08 38 60 00 00 */ li r3, 0 /* 8003C0AC 00037D0C 48 00 00 10 */ b lbl_8003C0BC lbl_8003C0B0: /* 8003C0B0 00037D10 1C 03 00 30 */ mulli r0, r3, 0x30 /* 8003C0B4 00037D14 80 64 00 0C */ lwz r3, 0xc(r4) /* 8003C0B8 00037D18 7C 63 02 14 */ add r3, r3, r0 lbl_8003C0BC: /* 8003C0BC 00037D1C 2C 03 00 00 */ cmpwi r3, 0 /* 8003C0C0 00037D20 41 82 00 A4 */ beq lbl_8003C164 /* 8003C0C4 00037D24 80 63 00 00 */ lwz r3, 0(r3) /* 8003C0C8 00037D28 38 8D 80 E0 */ addi r4, r13, lbl_8063D3A0-_SDA_BASE_ /* 8003C0CC 00037D2C 38 A0 00 03 */ li r5, 3 /* 8003C0D0 00037D30 48 19 24 99 */ bl strncmp /* 8003C0D4 00037D34 2C 03 00 00 */ cmpwi r3, 0 /* 8003C0D8 00037D38 40 82 00 8C */ bne lbl_8003C164 /* 8003C0DC 00037D3C 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 8003C0E0 00037D40 28 04 00 FF */ cmplwi r4, 0xff /* 8003C0E4 00037D44 41 82 00 80 */ beq lbl_8003C164 /* 8003C0E8 00037D48 A0 1E 05 10 */ lhz r0, 0x510(r30) /* 8003C0EC 00037D4C 28 00 00 59 */ cmplwi r0, 0x59 /* 8003C0F0 00037D50 40 82 00 54 */ bne lbl_8003C144 /* 8003C0F4 00037D54 80 7C 00 1C */ lwz r3, 0x1c(r28) /* 8003C0F8 00037D58 2C 03 00 00 */ cmpwi r3, 0 /* 8003C0FC 00037D5C 40 82 00 0C */ bne lbl_8003C108 /* 8003C100 00037D60 38 60 00 00 */ li r3, 0 /* 8003C104 00037D64 48 00 00 20 */ b lbl_8003C124 lbl_8003C108: /* 8003C108 00037D68 A0 1C 00 E6 */ lhz r0, 0xe6(r28) /* 8003C10C 00037D6C 28 00 00 03 */ cmplwi r0, 3 /* 8003C110 00037D70 41 81 00 0C */ bgt lbl_8003C11C /* 8003C114 00037D74 38 60 00 00 */ li r3, 0 /* 8003C118 00037D78 48 00 00 0C */ b lbl_8003C124 lbl_8003C11C: /* 8003C11C 00037D7C 80 63 00 0C */ lwz r3, 0xc(r3) /* 8003C120 00037D80 80 63 00 14 */ lwz r3, 0x14(r3) lbl_8003C124: /* 8003C124 00037D84 2C 03 00 00 */ cmpwi r3, 0 /* 8003C128 00037D88 41 82 00 3C */ beq lbl_8003C164 /* 8003C12C 00037D8C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003C130 00037D90 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 8003C134 00037D94 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003C138 00037D98 38 A0 00 00 */ li r5, 0 /* 8003C13C 00037D9C 48 1A 19 81 */ bl func_801DDABC /* 8003C140 00037DA0 48 00 00 24 */ b lbl_8003C164 lbl_8003C144: /* 8003C144 00037DA4 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003C148 00037DA8 7F 83 E3 78 */ mr r3, r28 /* 8003C14C 00037DAC C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003C150 00037DB0 38 A0 00 00 */ li r5, 0 /* 8003C154 00037DB4 38 C0 00 00 */ li r6, 0 /* 8003C158 00037DB8 38 E0 00 00 */ li r7, 0 /* 8003C15C 00037DBC 39 00 00 00 */ li r8, 0 /* 8003C160 00037DC0 48 1B 8C 95 */ bl func_801F4DF4 lbl_8003C164: /* 8003C164 00037DC4 80 1E 00 00 */ lwz r0, 0(r30) /* 8003C168 00037DC8 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd /* 8003C16C 00037DCC 41 82 00 90 */ beq lbl_8003C1FC /* 8003C170 00037DD0 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003C174 00037DD4 80 A3 00 04 */ lwz r5, 4(r3) /* 8003C178 00037DD8 A0 83 00 F0 */ lhz r4, 0xf0(r3) /* 8003C17C 00037DDC 2C 05 00 00 */ cmpwi r5, 0 /* 8003C180 00037DE0 40 82 00 0C */ bne lbl_8003C18C /* 8003C184 00037DE4 3B A0 00 00 */ li r29, 0 /* 8003C188 00037DE8 48 00 00 24 */ b lbl_8003C1AC lbl_8003C18C: /* 8003C18C 00037DEC A0 05 00 08 */ lhz r0, 8(r5) /* 8003C190 00037DF0 7C 04 00 40 */ cmplw r4, r0 /* 8003C194 00037DF4 41 80 00 0C */ blt lbl_8003C1A0 /* 8003C198 00037DF8 3B A0 00 00 */ li r29, 0 /* 8003C19C 00037DFC 48 00 00 10 */ b lbl_8003C1AC lbl_8003C1A0: /* 8003C1A0 00037E00 1C 04 00 30 */ mulli r0, r4, 0x30 /* 8003C1A4 00037E04 80 85 00 0C */ lwz r4, 0xc(r5) /* 8003C1A8 00037E08 7F A4 02 14 */ add r29, r4, r0 lbl_8003C1AC: /* 8003C1AC 00037E0C 88 1E 0C A0 */ lbz r0, 0xca0(r30) /* 8003C1B0 00037E10 28 00 00 03 */ cmplwi r0, 3 /* 8003C1B4 00037E14 40 80 00 48 */ bge lbl_8003C1FC /* 8003C1B8 00037E18 48 1B 99 8D */ bl func_801F5B44 /* 8003C1BC 00037E1C 88 9E 0C A0 */ lbz r4, 0xca0(r30) /* 8003C1C0 00037E20 54 80 10 3A */ slwi r0, r4, 2 /* 8003C1C4 00037E24 7C 7D 02 14 */ add r3, r29, r0 /* 8003C1C8 00037E28 C0 03 00 04 */ lfs f0, 4(r3) /* 8003C1CC 00037E2C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8003C1D0 00037E30 4C 40 13 82 */ cror 2, 0, 2 /* 8003C1D4 00037E34 40 82 00 28 */ bne lbl_8003C1FC /* 8003C1D8 00037E38 80 1E 00 00 */ lwz r0, 0(r30) /* 8003C1DC 00037E3C 7F C3 F3 78 */ mr r3, r30 /* 8003C1E0 00037E40 81 9E 0C AC */ lwz r12, 0xcac(r30) /* 8003C1E4 00037E44 54 00 03 98 */ rlwinm r0, r0, 0, 0xe, 0xc /* 8003C1E8 00037E48 80 BE 0C A4 */ lwz r5, 0xca4(r30) /* 8003C1EC 00037E4C 90 1E 00 00 */ stw r0, 0(r30) /* 8003C1F0 00037E50 80 DE 0C A8 */ lwz r6, 0xca8(r30) /* 8003C1F4 00037E54 7D 89 03 A6 */ mtctr r12 /* 8003C1F8 00037E58 4E 80 04 21 */ bctrl lbl_8003C1FC: /* 8003C1FC 00037E5C E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8003C200 00037E60 CB E1 00 90 */ lfd f31, 0x90(r1) /* 8003C204 00037E64 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 8003C208 00037E68 39 61 00 80 */ addi r11, r1, 0x80 /* 8003C20C 00037E6C CB C1 00 80 */ lfd f30, 0x80(r1) /* 8003C210 00037E70 48 18 AF 65 */ bl _restgpr_27 /* 8003C214 00037E74 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 8003C218 00037E78 7C 08 03 A6 */ mtlr r0 /* 8003C21C 00037E7C 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8003C220 00037E80 4E 80 00 20 */ blr .global func_8003C224 func_8003C224: /* 8003C224 00037E84 28 05 00 03 */ cmplwi r5, 3 /* 8003C228 00037E88 41 80 00 14 */ blt lbl_8003C23C /* 8003C22C 00037E8C 80 03 00 00 */ lwz r0, 0(r3) /* 8003C230 00037E90 54 00 03 98 */ rlwinm r0, r0, 0, 0xe, 0xc /* 8003C234 00037E94 90 03 00 00 */ stw r0, 0(r3) /* 8003C238 00037E98 4E 80 00 20 */ blr lbl_8003C23C: /* 8003C23C 00037E9C 80 03 00 00 */ lwz r0, 0(r3) /* 8003C240 00037EA0 98 A3 0C A0 */ stb r5, 0xca0(r3) /* 8003C244 00037EA4 64 00 00 04 */ oris r0, r0, 4 /* 8003C248 00037EA8 90 C3 0C A4 */ stw r6, 0xca4(r3) /* 8003C24C 00037EAC 90 E3 0C A8 */ stw r7, 0xca8(r3) /* 8003C250 00037EB0 90 83 0C AC */ stw r4, 0xcac(r3) /* 8003C254 00037EB4 90 03 00 00 */ stw r0, 0(r3) /* 8003C258 00037EB8 4E 80 00 20 */ blr .global func_8003C25C func_8003C25C: /* 8003C25C 00037EBC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003C260 00037EC0 7C 08 02 A6 */ mflr r0 /* 8003C264 00037EC4 90 01 00 14 */ stw r0, 0x14(r1) /* 8003C268 00037EC8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003C26C 00037ECC 7C 9F 23 78 */ mr r31, r4 /* 8003C270 00037ED0 93 C1 00 08 */ stw r30, 8(r1) /* 8003C274 00037ED4 7C 7E 1B 78 */ mr r30, r3 /* 8003C278 00037ED8 48 00 1E E5 */ bl func_8003E15C /* 8003C27C 00037EDC 2C 03 00 00 */ cmpwi r3, 0 /* 8003C280 00037EE0 41 82 00 28 */ beq lbl_8003C2A8 /* 8003C284 00037EE4 A0 DE 05 14 */ lhz r6, 0x514(r30) /* 8003C288 00037EE8 7F E5 FB 78 */ mr r5, r31 /* 8003C28C 00037EEC A0 1E 05 12 */ lhz r0, 0x512(r30) /* 8003C290 00037EF0 A0 9E 05 10 */ lhz r4, 0x510(r30) /* 8003C294 00037EF4 54 C6 06 3E */ clrlwi r6, r6, 0x18 /* 8003C298 00037EF8 54 07 06 3E */ clrlwi r7, r0, 0x18 /* 8003C29C 00037EFC 48 00 25 29 */ bl func_8003E7C4 /* 8003C2A0 00037F00 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003C2A4 00037F04 48 00 00 08 */ b lbl_8003C2AC lbl_8003C2A8: /* 8003C2A8 00037F08 38 60 00 00 */ li r3, 0 lbl_8003C2AC: /* 8003C2AC 00037F0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003C2B0 00037F10 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003C2B4 00037F14 83 C1 00 08 */ lwz r30, 8(r1) /* 8003C2B8 00037F18 7C 08 03 A6 */ mtlr r0 /* 8003C2BC 00037F1C 38 21 00 10 */ addi r1, r1, 0x10 /* 8003C2C0 00037F20 4E 80 00 20 */ blr .global func_8003C2C4 func_8003C2C4: /* 8003C2C4 00037F24 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003C2C8 00037F28 7C 08 02 A6 */ mflr r0 /* 8003C2CC 00037F2C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003C2D0 00037F30 3C 00 43 30 */ lis r0, 0x4330 /* 8003C2D4 00037F34 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8003C2D8 00037F38 7C 9F 23 78 */ mr r31, r4 /* 8003C2DC 00037F3C 93 C1 00 28 */ stw r30, 0x28(r1) /* 8003C2E0 00037F40 7C 7E 1B 78 */ mr r30, r3 /* 8003C2E4 00037F44 93 A1 00 24 */ stw r29, 0x24(r1) /* 8003C2E8 00037F48 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 8003C2EC 00037F4C 90 01 00 08 */ stw r0, 8(r1) /* 8003C2F0 00037F50 2C 05 00 00 */ cmpwi r5, 0 /* 8003C2F4 00037F54 90 01 00 10 */ stw r0, 0x10(r1) /* 8003C2F8 00037F58 41 82 01 08 */ beq lbl_8003C400 /* 8003C2FC 00037F5C A0 03 0C 68 */ lhz r0, 0xc68(r3) /* 8003C300 00037F60 28 00 01 00 */ cmplwi r0, 0x100 /* 8003C304 00037F64 40 82 00 80 */ bne lbl_8003C384 /* 8003C308 00037F68 80 03 0C 00 */ lwz r0, 0xc00(r3) /* 8003C30C 00037F6C 2C 00 00 00 */ cmpwi r0, 0 /* 8003C310 00037F70 41 82 00 F0 */ beq lbl_8003C400 /* 8003C314 00037F74 3B A0 00 00 */ li r29, 0 /* 8003C318 00037F78 48 00 00 50 */ b lbl_8003C368 lbl_8003C31C: /* 8003C31C 00037F7C 80 C5 00 04 */ lwz r6, 4(r5) /* 8003C320 00037F80 2C 06 00 00 */ cmpwi r6, 0 /* 8003C324 00037F84 40 82 00 0C */ bne lbl_8003C330 /* 8003C328 00037F88 38 60 00 00 */ li r3, 0 /* 8003C32C 00037F8C 48 00 00 28 */ b lbl_8003C354 lbl_8003C330: /* 8003C330 00037F90 80 65 00 00 */ lwz r3, 0(r5) /* 8003C334 00037F94 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 8003C338 00037F98 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003C33C 00037F9C 7C 04 00 40 */ cmplw r4, r0 /* 8003C340 00037FA0 41 80 00 0C */ blt lbl_8003C34C /* 8003C344 00037FA4 38 60 00 00 */ li r3, 0 /* 8003C348 00037FA8 48 00 00 0C */ b lbl_8003C354 lbl_8003C34C: /* 8003C34C 00037FAC 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d /* 8003C350 00037FB0 7C 66 00 2E */ lwzx r3, r6, r0 lbl_8003C354: /* 8003C354 00037FB4 2C 03 00 00 */ cmpwi r3, 0 /* 8003C358 00037FB8 41 82 00 0C */ beq lbl_8003C364 /* 8003C35C 00037FBC 7F E4 FB 78 */ mr r4, r31 /* 8003C360 00037FC0 48 1B 9E AD */ bl func_801F620C lbl_8003C364: /* 8003C364 00037FC4 3B BD 00 01 */ addi r29, r29, 1 lbl_8003C368: /* 8003C368 00037FC8 80 BE 0C 00 */ lwz r5, 0xc00(r30) /* 8003C36C 00037FCC 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 8003C370 00037FD0 80 65 00 00 */ lwz r3, 0(r5) /* 8003C374 00037FD4 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003C378 00037FD8 7C 04 00 00 */ cmpw r4, r0 /* 8003C37C 00037FDC 41 80 FF A0 */ blt lbl_8003C31C /* 8003C380 00037FE0 48 00 00 24 */ b lbl_8003C3A4 lbl_8003C384: /* 8003C384 00037FE4 7C A3 2B 78 */ mr r3, r5 /* 8003C388 00037FE8 48 1B 9E 85 */ bl func_801F620C /* 8003C38C 00037FEC A0 1E 05 0C */ lhz r0, 0x50c(r30) /* 8003C390 00037FF0 28 00 00 02 */ cmplwi r0, 2 /* 8003C394 00037FF4 40 82 00 10 */ bne lbl_8003C3A4 /* 8003C398 00037FF8 7F E4 FB 78 */ mr r4, r31 /* 8003C39C 00037FFC 38 7E 05 24 */ addi r3, r30, 0x524 /* 8003C3A0 00038000 48 00 3B BD */ bl func_8003FF5C lbl_8003C3A4: /* 8003C3A4 00038004 38 7E 04 94 */ addi r3, r30, 0x494 /* 8003C3A8 00038008 48 01 48 39 */ bl func_80050BE0 /* 8003C3AC 0003800C 88 1F 00 00 */ lbz r0, 0(r31) /* 8003C3B0 00038010 C8 22 82 50 */ lfd f1, lbl_80640850-_SDA2_BASE_(r2) /* 8003C3B4 00038014 90 01 00 0C */ stw r0, 0xc(r1) /* 8003C3B8 00038018 C8 01 00 08 */ lfd f0, 8(r1) /* 8003C3BC 0003801C EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C3C0 00038020 D0 1E 0C 28 */ stfs f0, 0xc28(r30) /* 8003C3C4 00038024 88 1F 00 01 */ lbz r0, 1(r31) /* 8003C3C8 00038028 90 01 00 14 */ stw r0, 0x14(r1) /* 8003C3CC 0003802C C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003C3D0 00038030 EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C3D4 00038034 D0 1E 0C 2C */ stfs f0, 0xc2c(r30) /* 8003C3D8 00038038 88 1F 00 02 */ lbz r0, 2(r31) /* 8003C3DC 0003803C 90 01 00 0C */ stw r0, 0xc(r1) /* 8003C3E0 00038040 C8 01 00 08 */ lfd f0, 8(r1) /* 8003C3E4 00038044 EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C3E8 00038048 D0 1E 0C 30 */ stfs f0, 0xc30(r30) /* 8003C3EC 0003804C 88 1F 00 03 */ lbz r0, 3(r31) /* 8003C3F0 00038050 90 01 00 14 */ stw r0, 0x14(r1) /* 8003C3F4 00038054 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003C3F8 00038058 EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C3FC 0003805C D0 1E 0C 34 */ stfs f0, 0xc34(r30) lbl_8003C400: /* 8003C400 00038060 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003C404 00038064 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8003C408 00038068 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8003C40C 0003806C 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8003C410 00038070 7C 08 03 A6 */ mtlr r0 /* 8003C414 00038074 38 21 00 30 */ addi r1, r1, 0x30 /* 8003C418 00038078 4E 80 00 20 */ blr .global func_8003C41C func_8003C41C: /* 8003C41C 0003807C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003C420 00038080 7C 08 02 A6 */ mflr r0 /* 8003C424 00038084 3C C0 43 30 */ lis r6, 0x4330 /* 8003C428 00038088 90 01 00 34 */ stw r0, 0x34(r1) /* 8003C42C 0003808C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003C430 00038090 90 C1 00 18 */ stw r6, 0x18(r1) /* 8003C434 00038094 2C 00 00 00 */ cmpwi r0, 0 /* 8003C438 00038098 90 C1 00 20 */ stw r6, 0x20(r1) /* 8003C43C 0003809C 41 82 00 70 */ beq lbl_8003C4AC /* 8003C440 000380A0 88 04 00 00 */ lbz r0, 0(r4) /* 8003C444 000380A4 7C A7 2B 78 */ mr r7, r5 /* 8003C448 000380A8 C8 42 82 50 */ lfd f2, lbl_80640850-_SDA2_BASE_(r2) /* 8003C44C 000380AC 38 A1 00 08 */ addi r5, r1, 8 /* 8003C450 000380B0 90 01 00 1C */ stw r0, 0x1c(r1) /* 8003C454 000380B4 C8 01 00 18 */ lfd f0, 0x18(r1) /* 8003C458 000380B8 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C45C 000380BC D0 01 00 08 */ stfs f0, 8(r1) /* 8003C460 000380C0 88 04 00 01 */ lbz r0, 1(r4) /* 8003C464 000380C4 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C468 000380C8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 8003C46C 000380CC EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C470 000380D0 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8003C474 000380D4 88 04 00 02 */ lbz r0, 2(r4) /* 8003C478 000380D8 90 01 00 1C */ stw r0, 0x1c(r1) /* 8003C47C 000380DC C8 01 00 18 */ lfd f0, 0x18(r1) /* 8003C480 000380E0 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C484 000380E4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003C488 000380E8 88 04 00 03 */ lbz r0, 3(r4) /* 8003C48C 000380EC 38 83 0C 28 */ addi r4, r3, 0xc28 /* 8003C490 000380F0 7C 86 23 78 */ mr r6, r4 /* 8003C494 000380F4 38 63 04 94 */ addi r3, r3, 0x494 /* 8003C498 000380F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C49C 000380FC C8 01 00 20 */ lfd f0, 0x20(r1) /* 8003C4A0 00038100 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C4A4 00038104 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003C4A8 00038108 48 01 46 A5 */ bl func_80050B4C lbl_8003C4AC: /* 8003C4AC 0003810C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003C4B0 00038110 7C 08 03 A6 */ mtlr r0 /* 8003C4B4 00038114 38 21 00 30 */ addi r1, r1, 0x30 /* 8003C4B8 00038118 4E 80 00 20 */ blr .global func_8003C4BC func_8003C4BC: /* 8003C4BC 0003811C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003C4C0 00038120 7C 08 02 A6 */ mflr r0 /* 8003C4C4 00038124 90 01 00 34 */ stw r0, 0x34(r1) /* 8003C4C8 00038128 3C 00 43 30 */ lis r0, 0x4330 /* 8003C4CC 0003812C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8003C4D0 00038130 7C 9F 23 78 */ mr r31, r4 /* 8003C4D4 00038134 93 C1 00 28 */ stw r30, 0x28(r1) /* 8003C4D8 00038138 7C 7E 1B 78 */ mr r30, r3 /* 8003C4DC 0003813C 93 A1 00 24 */ stw r29, 0x24(r1) /* 8003C4E0 00038140 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 8003C4E4 00038144 90 01 00 08 */ stw r0, 8(r1) /* 8003C4E8 00038148 2C 05 00 00 */ cmpwi r5, 0 /* 8003C4EC 0003814C 90 01 00 10 */ stw r0, 0x10(r1) /* 8003C4F0 00038150 41 82 01 08 */ beq lbl_8003C5F8 /* 8003C4F4 00038154 A0 03 0C 68 */ lhz r0, 0xc68(r3) /* 8003C4F8 00038158 28 00 01 00 */ cmplwi r0, 0x100 /* 8003C4FC 0003815C 40 82 00 80 */ bne lbl_8003C57C /* 8003C500 00038160 80 03 0C 00 */ lwz r0, 0xc00(r3) /* 8003C504 00038164 2C 00 00 00 */ cmpwi r0, 0 /* 8003C508 00038168 41 82 00 F0 */ beq lbl_8003C5F8 /* 8003C50C 0003816C 3B A0 00 00 */ li r29, 0 /* 8003C510 00038170 48 00 00 50 */ b lbl_8003C560 lbl_8003C514: /* 8003C514 00038174 80 C5 00 04 */ lwz r6, 4(r5) /* 8003C518 00038178 2C 06 00 00 */ cmpwi r6, 0 /* 8003C51C 0003817C 40 82 00 0C */ bne lbl_8003C528 /* 8003C520 00038180 38 60 00 00 */ li r3, 0 /* 8003C524 00038184 48 00 00 28 */ b lbl_8003C54C lbl_8003C528: /* 8003C528 00038188 80 65 00 00 */ lwz r3, 0(r5) /* 8003C52C 0003818C 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 8003C530 00038190 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003C534 00038194 7C 04 00 40 */ cmplw r4, r0 /* 8003C538 00038198 41 80 00 0C */ blt lbl_8003C544 /* 8003C53C 0003819C 38 60 00 00 */ li r3, 0 /* 8003C540 000381A0 48 00 00 0C */ b lbl_8003C54C lbl_8003C544: /* 8003C544 000381A4 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d /* 8003C548 000381A8 7C 66 00 2E */ lwzx r3, r6, r0 lbl_8003C54C: /* 8003C54C 000381AC 2C 03 00 00 */ cmpwi r3, 0 /* 8003C550 000381B0 41 82 00 0C */ beq lbl_8003C55C /* 8003C554 000381B4 7F E4 FB 78 */ mr r4, r31 /* 8003C558 000381B8 48 1B 9C 3D */ bl func_801F6194 lbl_8003C55C: /* 8003C55C 000381BC 3B BD 00 01 */ addi r29, r29, 1 lbl_8003C560: /* 8003C560 000381C0 80 BE 0C 00 */ lwz r5, 0xc00(r30) /* 8003C564 000381C4 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 8003C568 000381C8 80 65 00 00 */ lwz r3, 0(r5) /* 8003C56C 000381CC A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003C570 000381D0 7C 04 00 00 */ cmpw r4, r0 /* 8003C574 000381D4 41 80 FF A0 */ blt lbl_8003C514 /* 8003C578 000381D8 48 00 00 24 */ b lbl_8003C59C lbl_8003C57C: /* 8003C57C 000381DC 7C A3 2B 78 */ mr r3, r5 /* 8003C580 000381E0 48 1B 9C 15 */ bl func_801F6194 /* 8003C584 000381E4 A0 1E 05 0C */ lhz r0, 0x50c(r30) /* 8003C588 000381E8 28 00 00 02 */ cmplwi r0, 2 /* 8003C58C 000381EC 40 82 00 10 */ bne lbl_8003C59C /* 8003C590 000381F0 7F E4 FB 78 */ mr r4, r31 /* 8003C594 000381F4 38 7E 05 24 */ addi r3, r30, 0x524 /* 8003C598 000381F8 48 00 3A 41 */ bl func_8003FFD8 lbl_8003C59C: /* 8003C59C 000381FC 38 7E 04 D0 */ addi r3, r30, 0x4d0 /* 8003C5A0 00038200 48 01 46 41 */ bl func_80050BE0 /* 8003C5A4 00038204 88 1F 00 00 */ lbz r0, 0(r31) /* 8003C5A8 00038208 C8 22 82 50 */ lfd f1, lbl_80640850-_SDA2_BASE_(r2) /* 8003C5AC 0003820C 90 01 00 0C */ stw r0, 0xc(r1) /* 8003C5B0 00038210 C8 01 00 08 */ lfd f0, 8(r1) /* 8003C5B4 00038214 EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C5B8 00038218 D0 1E 0C 38 */ stfs f0, 0xc38(r30) /* 8003C5BC 0003821C 88 1F 00 01 */ lbz r0, 1(r31) /* 8003C5C0 00038220 90 01 00 14 */ stw r0, 0x14(r1) /* 8003C5C4 00038224 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003C5C8 00038228 EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C5CC 0003822C D0 1E 0C 3C */ stfs f0, 0xc3c(r30) /* 8003C5D0 00038230 88 1F 00 02 */ lbz r0, 2(r31) /* 8003C5D4 00038234 90 01 00 0C */ stw r0, 0xc(r1) /* 8003C5D8 00038238 C8 01 00 08 */ lfd f0, 8(r1) /* 8003C5DC 0003823C EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C5E0 00038240 D0 1E 0C 40 */ stfs f0, 0xc40(r30) /* 8003C5E4 00038244 88 1F 00 03 */ lbz r0, 3(r31) /* 8003C5E8 00038248 90 01 00 14 */ stw r0, 0x14(r1) /* 8003C5EC 0003824C C8 01 00 10 */ lfd f0, 0x10(r1) /* 8003C5F0 00038250 EC 00 08 28 */ fsubs f0, f0, f1 /* 8003C5F4 00038254 D0 1E 0C 44 */ stfs f0, 0xc44(r30) lbl_8003C5F8: /* 8003C5F8 00038258 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003C5FC 0003825C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8003C600 00038260 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8003C604 00038264 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8003C608 00038268 7C 08 03 A6 */ mtlr r0 /* 8003C60C 0003826C 38 21 00 30 */ addi r1, r1, 0x30 /* 8003C610 00038270 4E 80 00 20 */ blr .global func_8003C614 func_8003C614: /* 8003C614 00038274 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003C618 00038278 7C 08 02 A6 */ mflr r0 /* 8003C61C 0003827C 3C C0 43 30 */ lis r6, 0x4330 /* 8003C620 00038280 90 01 00 34 */ stw r0, 0x34(r1) /* 8003C624 00038284 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003C628 00038288 90 C1 00 18 */ stw r6, 0x18(r1) /* 8003C62C 0003828C 2C 00 00 00 */ cmpwi r0, 0 /* 8003C630 00038290 90 C1 00 20 */ stw r6, 0x20(r1) /* 8003C634 00038294 41 82 00 70 */ beq lbl_8003C6A4 /* 8003C638 00038298 88 04 00 00 */ lbz r0, 0(r4) /* 8003C63C 0003829C 7C A7 2B 78 */ mr r7, r5 /* 8003C640 000382A0 C8 42 82 50 */ lfd f2, lbl_80640850-_SDA2_BASE_(r2) /* 8003C644 000382A4 38 A1 00 08 */ addi r5, r1, 8 /* 8003C648 000382A8 90 01 00 1C */ stw r0, 0x1c(r1) /* 8003C64C 000382AC C8 01 00 18 */ lfd f0, 0x18(r1) /* 8003C650 000382B0 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C654 000382B4 D0 01 00 08 */ stfs f0, 8(r1) /* 8003C658 000382B8 88 04 00 01 */ lbz r0, 1(r4) /* 8003C65C 000382BC 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C660 000382C0 C8 01 00 20 */ lfd f0, 0x20(r1) /* 8003C664 000382C4 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C668 000382C8 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8003C66C 000382CC 88 04 00 02 */ lbz r0, 2(r4) /* 8003C670 000382D0 90 01 00 1C */ stw r0, 0x1c(r1) /* 8003C674 000382D4 C8 01 00 18 */ lfd f0, 0x18(r1) /* 8003C678 000382D8 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C67C 000382DC D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003C680 000382E0 88 04 00 03 */ lbz r0, 3(r4) /* 8003C684 000382E4 38 83 0C 38 */ addi r4, r3, 0xc38 /* 8003C688 000382E8 7C 86 23 78 */ mr r6, r4 /* 8003C68C 000382EC 38 63 04 D0 */ addi r3, r3, 0x4d0 /* 8003C690 000382F0 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C694 000382F4 C8 01 00 20 */ lfd f0, 0x20(r1) /* 8003C698 000382F8 EC 00 10 28 */ fsubs f0, f0, f2 /* 8003C69C 000382FC D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003C6A0 00038300 48 01 44 AD */ bl func_80050B4C lbl_8003C6A4: /* 8003C6A4 00038304 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003C6A8 00038308 7C 08 03 A6 */ mtlr r0 /* 8003C6AC 0003830C 38 21 00 30 */ addi r1, r1, 0x30 /* 8003C6B0 00038310 4E 80 00 20 */ blr .global func_8003C6B4 func_8003C6B4: /* 8003C6B4 00038314 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003C6B8 00038318 7C 08 02 A6 */ mflr r0 /* 8003C6BC 0003831C 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C6C0 00038320 DB E1 00 10 */ stfd f31, 0x10(r1) /* 8003C6C4 00038324 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 8003C6C8 00038328 FF E0 08 90 */ fmr f31, f1 /* 8003C6CC 0003832C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003C6D0 00038330 93 C1 00 08 */ stw r30, 8(r1) /* 8003C6D4 00038334 7C 7E 1B 78 */ mr r30, r3 /* 8003C6D8 00038338 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003C6DC 0003833C 2C 00 00 00 */ cmpwi r0, 0 /* 8003C6E0 00038340 41 82 01 3C */ beq lbl_8003C81C /* 8003C6E4 00038344 48 00 06 69 */ bl func_8003CD4C /* 8003C6E8 00038348 48 19 E4 41 */ bl func_801DAB28 /* 8003C6EC 0003834C 2C 03 00 00 */ cmpwi r3, 0 /* 8003C6F0 00038350 41 82 00 14 */ beq lbl_8003C704 /* 8003C6F4 00038354 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8003C6F8 00038358 38 80 00 70 */ li r4, 0x70 /* 8003C6FC 0003835C 48 19 E5 99 */ bl func_801DAC94 /* 8003C700 00038360 48 00 00 08 */ b lbl_8003C708 lbl_8003C704: /* 8003C704 00038364 38 60 00 00 */ li r3, 0 lbl_8003C708: /* 8003C708 00038368 2C 03 00 00 */ cmpwi r3, 0 /* 8003C70C 0003836C 7C 7F 1B 78 */ mr r31, r3 /* 8003C710 00038370 41 82 00 10 */ beq lbl_8003C720 /* 8003C714 00038374 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 8003C718 00038378 48 1E 0D 0D */ bl func_8021D424 /* 8003C71C 0003837C 7C 7F 1B 78 */ mr r31, r3 lbl_8003C720: /* 8003C720 00038380 2C 1F 00 00 */ cmpwi r31, 0 /* 8003C724 00038384 41 82 00 F8 */ beq lbl_8003C81C /* 8003C728 00038388 93 FE 0C 08 */ stw r31, 0xc08(r30) /* 8003C72C 0003838C 7F E3 FB 78 */ mr r3, r31 /* 8003C730 00038390 88 1E 0D B4 */ lbz r0, 0xdb4(r30) /* 8003C734 00038394 98 1F 00 1E */ stb r0, 0x1e(r31) /* 8003C738 00038398 88 1E 0D B5 */ lbz r0, 0xdb5(r30) /* 8003C73C 0003839C 98 1F 00 20 */ stb r0, 0x20(r31) /* 8003C740 000383A0 88 1E 0D C0 */ lbz r0, 0xdc0(r30) /* 8003C744 000383A4 98 1F 00 28 */ stb r0, 0x28(r31) /* 8003C748 000383A8 88 1E 0D C1 */ lbz r0, 0xdc1(r30) /* 8003C74C 000383AC 98 1F 00 29 */ stb r0, 0x29(r31) /* 8003C750 000383B0 88 1E 0D C2 */ lbz r0, 0xdc2(r30) /* 8003C754 000383B4 98 1F 00 2A */ stb r0, 0x2a(r31) /* 8003C758 000383B8 88 1E 0D C3 */ lbz r0, 0xdc3(r30) /* 8003C75C 000383BC 98 1F 00 2B */ stb r0, 0x2b(r31) /* 8003C760 000383C0 D3 FF 00 6C */ stfs f31, 0x6c(r31) /* 8003C764 000383C4 C0 1E 0D B8 */ lfs f0, 0xdb8(r30) /* 8003C768 000383C8 D0 1F 00 48 */ stfs f0, 0x48(r31) /* 8003C76C 000383CC 88 1E 0D B6 */ lbz r0, 0xdb6(r30) /* 8003C770 000383D0 98 1F 00 1F */ stb r0, 0x1f(r31) /* 8003C774 000383D4 C0 1E 0D C4 */ lfs f0, 0xdc4(r30) /* 8003C778 000383D8 D0 1F 00 5C */ stfs f0, 0x5c(r31) /* 8003C77C 000383DC C0 1E 0D C8 */ lfs f0, 0xdc8(r30) /* 8003C780 000383E0 D0 1F 00 60 */ stfs f0, 0x60(r31) /* 8003C784 000383E4 C0 1E 0D CC */ lfs f0, 0xdcc(r30) /* 8003C788 000383E8 D0 1F 00 64 */ stfs f0, 0x64(r31) /* 8003C78C 000383EC C0 1E 0D BC */ lfs f0, 0xdbc(r30) /* 8003C790 000383F0 D0 1F 00 44 */ stfs f0, 0x44(r31) /* 8003C794 000383F4 C0 1E 0D D0 */ lfs f0, 0xdd0(r30) /* 8003C798 000383F8 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 8003C79C 000383FC C0 1E 0D D4 */ lfs f0, 0xdd4(r30) /* 8003C7A0 00038400 D0 1F 00 3C */ stfs f0, 0x3c(r31) /* 8003C7A4 00038404 C0 1E 0D D8 */ lfs f0, 0xdd8(r30) /* 8003C7A8 00038408 D0 1F 00 40 */ stfs f0, 0x40(r31) /* 8003C7AC 0003840C C0 1E 0D DC */ lfs f0, 0xddc(r30) /* 8003C7B0 00038410 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 8003C7B4 00038414 C0 1E 0D E0 */ lfs f0, 0xde0(r30) /* 8003C7B8 00038418 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 8003C7BC 0003841C C0 1E 0D E4 */ lfs f0, 0xde4(r30) /* 8003C7C0 00038420 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 8003C7C4 00038424 C0 1E 0D E8 */ lfs f0, 0xde8(r30) /* 8003C7C8 00038428 D0 1F 00 58 */ stfs f0, 0x58(r31) /* 8003C7CC 0003842C C0 1E 0D EC */ lfs f0, 0xdec(r30) /* 8003C7D0 00038430 D0 1F 00 4C */ stfs f0, 0x4c(r31) /* 8003C7D4 00038434 C0 1E 0D F0 */ lfs f0, 0xdf0(r30) /* 8003C7D8 00038438 D0 1F 00 50 */ stfs f0, 0x50(r31) /* 8003C7DC 0003843C C0 1E 0D F4 */ lfs f0, 0xdf4(r30) /* 8003C7E0 00038440 D0 1F 00 54 */ stfs f0, 0x54(r31) /* 8003C7E4 00038444 81 9F 00 0C */ lwz r12, 0xc(r31) /* 8003C7E8 00038448 81 8C 00 08 */ lwz r12, 8(r12) /* 8003C7EC 0003844C 7D 89 03 A6 */ mtctr r12 /* 8003C7F0 00038450 4E 80 04 21 */ bctrl /* 8003C7F4 00038454 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8003C7F8 00038458 98 7F 00 08 */ stb r3, 8(r31) /* 8003C7FC 0003845C 41 82 00 20 */ beq lbl_8003C81C /* 8003C800 00038460 83 FF 00 04 */ lwz r31, 4(r31) /* 8003C804 00038464 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8003C808 00038468 48 1F E8 51 */ bl func_8023B058 /* 8003C80C 0003846C 2C 03 00 00 */ cmpwi r3, 0 /* 8003C810 00038470 41 82 00 0C */ beq lbl_8003C81C /* 8003C814 00038474 7F E4 FB 78 */ mr r4, r31 /* 8003C818 00038478 48 1F EB A1 */ bl func_8023B3B8 lbl_8003C81C: /* 8003C81C 0003847C E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 8003C820 00038480 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003C824 00038484 CB E1 00 10 */ lfd f31, 0x10(r1) /* 8003C828 00038488 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003C82C 0003848C 83 C1 00 08 */ lwz r30, 8(r1) /* 8003C830 00038490 7C 08 03 A6 */ mtlr r0 /* 8003C834 00038494 38 21 00 20 */ addi r1, r1, 0x20 /* 8003C838 00038498 4E 80 00 20 */ blr .global func_8003C83C func_8003C83C: /* 8003C83C 0003849C 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8003C840 000384A0 2C 03 00 00 */ cmpwi r3, 0 /* 8003C844 000384A4 4D 82 00 20 */ beqlr /* 8003C848 000384A8 7C 80 00 34 */ cntlzw r0, r4 /* 8003C84C 000384AC 54 04 D9 7E */ srwi r4, r0, 5 /* 8003C850 000384B0 48 1B 99 08 */ b func_801F6158 /* 8003C854 000384B4 4E 80 00 20 */ blr .global func_8003C858 func_8003C858: /* 8003C858 000384B8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003C85C 000384BC 7C 08 02 A6 */ mflr r0 /* 8003C860 000384C0 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C864 000384C4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003C868 000384C8 7C 9F 23 78 */ mr r31, r4 /* 8003C86C 000384CC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003C870 000384D0 7C 7E 1B 78 */ mr r30, r3 /* 8003C874 000384D4 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003C878 000384D8 2C 00 00 00 */ cmpwi r0, 0 /* 8003C87C 000384DC 41 82 00 0C */ beq lbl_8003C888 /* 8003C880 000384E0 7C 03 03 78 */ mr r3, r0 /* 8003C884 000384E4 48 1B 98 99 */ bl func_801F611C lbl_8003C888: /* 8003C888 000384E8 3C 00 43 30 */ lis r0, 0x4330 /* 8003C88C 000384EC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003C890 000384F0 C8 42 82 50 */ lfd f2, lbl_80640850-_SDA2_BASE_(r2) /* 8003C894 000384F4 90 01 00 08 */ stw r0, 8(r1) /* 8003C898 000384F8 C0 02 82 38 */ lfs f0, lbl_80640838-_SDA2_BASE_(r2) /* 8003C89C 000384FC C8 21 00 08 */ lfd f1, 8(r1) /* 8003C8A0 00038500 EC 21 10 28 */ fsubs f1, f1, f2 /* 8003C8A4 00038504 EC 01 00 24 */ fdivs f0, f1, f0 /* 8003C8A8 00038508 D0 1E 0C 70 */ stfs f0, 0xc70(r30) /* 8003C8AC 0003850C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003C8B0 00038510 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003C8B4 00038514 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003C8B8 00038518 7C 08 03 A6 */ mtlr r0 /* 8003C8BC 0003851C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003C8C0 00038520 4E 80 00 20 */ blr .global func_8003C8C4 func_8003C8C4: /* 8003C8C4 00038524 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003C8C8 00038528 7C 08 02 A6 */ mflr r0 /* 8003C8CC 0003852C 7C A7 2B 78 */ mr r7, r5 /* 8003C8D0 00038530 C8 62 82 50 */ lfd f3, lbl_80640850-_SDA2_BASE_(r2) /* 8003C8D4 00038534 90 01 00 24 */ stw r0, 0x24(r1) /* 8003C8D8 00038538 3C 00 43 30 */ lis r0, 0x4330 /* 8003C8DC 0003853C C0 02 82 38 */ lfs f0, lbl_80640838-_SDA2_BASE_(r2) /* 8003C8E0 00038540 38 A1 00 08 */ addi r5, r1, 8 /* 8003C8E4 00038544 90 81 00 14 */ stw r4, 0x14(r1) /* 8003C8E8 00038548 38 83 0C 70 */ addi r4, r3, 0xc70 /* 8003C8EC 0003854C 7C 86 23 78 */ mr r6, r4 /* 8003C8F0 00038550 38 63 01 90 */ addi r3, r3, 0x190 /* 8003C8F4 00038554 90 01 00 10 */ stw r0, 0x10(r1) /* 8003C8F8 00038558 C8 41 00 10 */ lfd f2, 0x10(r1) /* 8003C8FC 0003855C EC 42 18 28 */ fsubs f2, f2, f3 /* 8003C900 00038560 EC 02 00 24 */ fdivs f0, f2, f0 /* 8003C904 00038564 D0 01 00 08 */ stfs f0, 8(r1) /* 8003C908 00038568 48 01 3A 35 */ bl func_8005033C /* 8003C90C 0003856C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003C910 00038570 7C 08 03 A6 */ mtlr r0 /* 8003C914 00038574 38 21 00 20 */ addi r1, r1, 0x20 /* 8003C918 00038578 4E 80 00 20 */ blr .global func_8003C91C func_8003C91C: /* 8003C91C 0003857C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003C920 00038580 38 00 00 00 */ li r0, 0 /* 8003C924 00038584 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003C928 00038588 C0 02 82 AC */ lfs f0, lbl_806408AC-_SDA2_BASE_(r2) /* 8003C92C 0003858C 98 03 00 00 */ stb r0, 0(r3) /* 8003C930 00038590 D0 23 00 10 */ stfs f1, 0x10(r3) /* 8003C934 00038594 D0 23 00 0C */ stfs f1, 0xc(r3) /* 8003C938 00038598 D0 23 00 08 */ stfs f1, 8(r3) /* 8003C93C 0003859C D0 23 00 04 */ stfs f1, 4(r3) /* 8003C940 000385A0 98 03 00 14 */ stb r0, 0x14(r3) /* 8003C944 000385A4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003C948 000385A8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003C94C 000385AC D0 03 00 18 */ stfs f0, 0x18(r3) /* 8003C950 000385B0 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 8003C954 000385B4 D0 21 00 08 */ stfs f1, 8(r1) /* 8003C958 000385B8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8003C95C 000385BC D0 23 00 28 */ stfs f1, 0x28(r3) /* 8003C960 000385C0 D0 23 00 2C */ stfs f1, 0x2c(r3) /* 8003C964 000385C4 D0 23 00 20 */ stfs f1, 0x20(r3) /* 8003C968 000385C8 D0 23 00 24 */ stfs f1, 0x24(r3) /* 8003C96C 000385CC 38 21 00 20 */ addi r1, r1, 0x20 /* 8003C970 000385D0 4E 80 00 20 */ blr .global func_8003C974 func_8003C974: /* 8003C974 000385D4 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8003C978 000385D8 7C 08 02 A6 */ mflr r0 /* 8003C97C 000385DC 90 01 00 64 */ stw r0, 0x64(r1) /* 8003C980 000385E0 39 61 00 60 */ addi r11, r1, 0x60 /* 8003C984 000385E4 48 18 A7 A5 */ bl _savegpr_27 /* 8003C988 000385E8 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003C98C 000385EC 38 E0 00 01 */ li r7, 1 /* 8003C990 000385F0 98 E3 0D 44 */ stb r7, 0xd44(r3) /* 8003C994 000385F4 7C 7B 1B 78 */ mr r27, r3 /* 8003C998 000385F8 2C 00 00 00 */ cmpwi r0, 0 /* 8003C99C 000385FC 7C 9C 23 78 */ mr r28, r4 /* 8003C9A0 00038600 7C BF 2B 78 */ mr r31, r5 /* 8003C9A4 00038604 7C DD 33 78 */ mr r29, r6 /* 8003C9A8 00038608 3B C0 00 00 */ li r30, 0 /* 8003C9AC 0003860C 41 82 01 40 */ beq lbl_8003CAEC /* 8003C9B0 00038610 48 00 38 45 */ bl func_800401F4 /* 8003C9B4 00038614 2C 03 00 00 */ cmpwi r3, 0 /* 8003C9B8 00038618 41 82 00 10 */ beq lbl_8003C9C8 /* 8003C9BC 0003861C 38 9D 00 01 */ addi r4, r29, 1 /* 8003C9C0 00038620 48 00 39 C5 */ bl func_80040384 /* 8003C9C4 00038624 7C 7E 1B 78 */ mr r30, r3 lbl_8003C9C8: /* 8003C9C8 00038628 2C 1E 00 00 */ cmpwi r30, 0 /* 8003C9CC 0003862C 41 82 01 20 */ beq lbl_8003CAEC /* 8003C9D0 00038630 7F 83 E3 78 */ mr r3, r28 /* 8003C9D4 00038634 7F E4 FB 78 */ mr r4, r31 /* 8003C9D8 00038638 48 19 EA E5 */ bl func_801DB4BC /* 8003C9DC 0003863C 7C 7D 1B 78 */ mr r29, r3 /* 8003C9E0 00038640 7F C3 F3 78 */ mr r3, r30 /* 8003C9E4 00038644 48 00 5B AD */ bl func_80042590 /* 8003C9E8 00038648 7C 7F 1B 78 */ mr r31, r3 /* 8003C9EC 0003864C 7F C3 F3 78 */ mr r3, r30 /* 8003C9F0 00038650 48 00 48 15 */ bl func_80041204 /* 8003C9F4 00038654 7C 64 1B 78 */ mr r4, r3 /* 8003C9F8 00038658 7F E3 FB 78 */ mr r3, r31 /* 8003C9FC 0003865C 38 A1 00 28 */ addi r5, r1, 0x28 /* 8003CA00 00038660 48 24 02 E9 */ bl func_8027CCE8 /* 8003CA04 00038664 C0 41 00 28 */ lfs f2, 0x28(r1) /* 8003CA08 00038668 38 61 00 34 */ addi r3, r1, 0x34 /* 8003CA0C 0003866C C0 21 00 2C */ lfs f1, 0x2c(r1) /* 8003CA10 00038670 7C 64 1B 78 */ mr r4, r3 /* 8003CA14 00038674 C0 01 00 30 */ lfs f0, 0x30(r1) /* 8003CA18 00038678 D0 41 00 34 */ stfs f2, 0x34(r1) /* 8003CA1C 0003867C D0 21 00 38 */ stfs f1, 0x38(r1) /* 8003CA20 00038680 D0 01 00 3C */ stfs f0, 0x3c(r1) /* 8003CA24 00038684 48 24 03 05 */ bl func_8027CD28 /* 8003CA28 00038688 80 7B 0C 04 */ lwz r3, 0xc04(r27) /* 8003CA2C 0003868C 7F A4 EB 78 */ mr r4, r29 /* 8003CA30 00038690 7F E5 FB 78 */ mr r5, r31 /* 8003CA34 00038694 38 C1 00 34 */ addi r6, r1, 0x34 /* 8003CA38 00038698 38 E0 00 00 */ li r7, 0 /* 8003CA3C 0003869C 48 1B BE B1 */ bl func_801F88EC /* 8003CA40 000386A0 98 7B 0D 30 */ stb r3, 0xd30(r27) /* 8003CA44 000386A4 7F 63 DB 78 */ mr r3, r27 /* 8003CA48 000386A8 4B FF CC 8D */ bl func_800396D4 /* 8003CA4C 000386AC C0 22 82 30 */ lfs f1, lbl_80640830-_SDA2_BASE_(r2) /* 8003CA50 000386B0 48 01 1A 4D */ bl func_8004E49C /* 8003CA54 000386B4 D0 3B 0D 60 */ stfs f1, 0xd60(r27) /* 8003CA58 000386B8 38 A1 00 20 */ addi r5, r1, 0x20 /* 8003CA5C 000386BC C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003CA60 000386C0 D0 01 00 20 */ stfs f0, 0x20(r1) /* 8003CA64 000386C4 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8003CA68 000386C8 80 7B 0C 04 */ lwz r3, 0xc04(r27) /* 8003CA6C 000386CC 88 9B 0D 30 */ lbz r4, 0xd30(r27) /* 8003CA70 000386D0 48 1B C0 D1 */ bl func_801F8B40 /* 8003CA74 000386D4 C0 5B 0D 60 */ lfs f2, 0xd60(r27) /* 8003CA78 000386D8 38 A1 00 18 */ addi r5, r1, 0x18 /* 8003CA7C 000386DC C0 3B 0D 4C */ lfs f1, 0xd4c(r27) /* 8003CA80 000386E0 C0 1B 0D 48 */ lfs f0, 0xd48(r27) /* 8003CA84 000386E4 EC 21 00 B2 */ fmuls f1, f1, f2 /* 8003CA88 000386E8 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8003CA8C 000386EC D0 21 00 0C */ stfs f1, 0xc(r1) /* 8003CA90 000386F0 D0 01 00 08 */ stfs f0, 8(r1) /* 8003CA94 000386F4 80 01 00 0C */ lwz r0, 0xc(r1) /* 8003CA98 000386F8 80 61 00 08 */ lwz r3, 8(r1) /* 8003CA9C 000386FC 90 01 00 1C */ stw r0, 0x1c(r1) /* 8003CAA0 00038700 90 61 00 18 */ stw r3, 0x18(r1) /* 8003CAA4 00038704 80 7B 0C 04 */ lwz r3, 0xc04(r27) /* 8003CAA8 00038708 88 9B 0D 30 */ lbz r4, 0xd30(r27) /* 8003CAAC 0003870C 48 1B C0 C5 */ bl func_801F8B70 /* 8003CAB0 00038710 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003CAB4 00038714 7F A3 EB 78 */ mr r3, r29 /* 8003CAB8 00038718 38 80 00 02 */ li r4, 2 /* 8003CABC 0003871C 38 A0 00 02 */ li r5, 2 /* 8003CAC0 00038720 D0 1B 0D 40 */ stfs f0, 0xd40(r27) /* 8003CAC4 00038724 38 C0 00 02 */ li r6, 2 /* 8003CAC8 00038728 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8003CACC 0003872C D0 01 00 14 */ stfs f0, 0x14(r1) /* 8003CAD0 00038730 D0 1B 0D 58 */ stfs f0, 0xd58(r27) /* 8003CAD4 00038734 D0 1B 0D 5C */ stfs f0, 0xd5c(r27) /* 8003CAD8 00038738 48 20 18 F1 */ bl func_8023E3C8 /* 8003CADC 0003873C 7F A3 EB 78 */ mr r3, r29 /* 8003CAE0 00038740 38 80 00 01 */ li r4, 1 /* 8003CAE4 00038744 38 A0 00 01 */ li r5, 1 /* 8003CAE8 00038748 48 20 18 85 */ bl func_8023E36C lbl_8003CAEC: /* 8003CAEC 0003874C 39 61 00 60 */ addi r11, r1, 0x60 /* 8003CAF0 00038750 48 18 A6 85 */ bl _restgpr_27 /* 8003CAF4 00038754 80 01 00 64 */ lwz r0, 0x64(r1) /* 8003CAF8 00038758 7C 08 03 A6 */ mtlr r0 /* 8003CAFC 0003875C 38 21 00 60 */ addi r1, r1, 0x60 /* 8003CB00 00038760 4E 80 00 20 */ blr .global func_8003CB04 func_8003CB04: /* 8003CB04 00038764 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003CB08 00038768 7C 08 02 A6 */ mflr r0 /* 8003CB0C 0003876C 90 01 00 14 */ stw r0, 0x14(r1) /* 8003CB10 00038770 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003CB14 00038774 7C 7F 1B 78 */ mr r31, r3 /* 8003CB18 00038778 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003CB1C 0003877C 2C 00 00 00 */ cmpwi r0, 0 /* 8003CB20 00038780 41 82 00 10 */ beq lbl_8003CB30 /* 8003CB24 00038784 88 9F 0D 30 */ lbz r4, 0xd30(r31) /* 8003CB28 00038788 7C 03 03 78 */ mr r3, r0 /* 8003CB2C 0003878C 48 1B C0 99 */ bl func_801F8BC4 lbl_8003CB30: /* 8003CB30 00038790 38 00 00 00 */ li r0, 0 /* 8003CB34 00038794 98 1F 0D 44 */ stb r0, 0xd44(r31) /* 8003CB38 00038798 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003CB3C 0003879C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003CB40 000387A0 7C 08 03 A6 */ mtlr r0 /* 8003CB44 000387A4 38 21 00 10 */ addi r1, r1, 0x10 /* 8003CB48 000387A8 4E 80 00 20 */ blr .global func_8003CB4C func_8003CB4C: /* 8003CB4C 000387AC C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003CB50 000387B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003CB54 000387B4 4C 40 13 82 */ cror 2, 0, 2 /* 8003CB58 000387B8 40 82 00 10 */ bne lbl_8003CB68 /* 8003CB5C 000387BC 38 00 00 00 */ li r0, 0 /* 8003CB60 000387C0 98 03 0D 44 */ stb r0, 0xd44(r3) /* 8003CB64 000387C4 4E 80 00 20 */ blr lbl_8003CB68: /* 8003CB68 000387C8 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8003CB6C 000387CC D0 23 0D 34 */ stfs f1, 0xd34(r3) /* 8003CB70 000387D0 40 80 00 08 */ bge lbl_8003CB78 /* 8003CB74 000387D4 FC 40 08 90 */ fmr f2, f1 lbl_8003CB78: /* 8003CB78 000387D8 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8003CB7C 000387DC 40 80 00 08 */ bge lbl_8003CB84 /* 8003CB80 000387E0 FC 60 08 90 */ fmr f3, f1 lbl_8003CB84: /* 8003CB84 000387E4 D0 43 0D 3C */ stfs f2, 0xd3c(r3) /* 8003CB88 000387E8 D0 63 0D 38 */ stfs f3, 0xd38(r3) /* 8003CB8C 000387EC 4E 80 00 20 */ blr .global func_8003CB90 func_8003CB90: /* 8003CB90 000387F0 C0 04 00 00 */ lfs f0, 0(r4) /* 8003CB94 000387F4 D0 03 0D 50 */ stfs f0, 0xd50(r3) /* 8003CB98 000387F8 C0 04 00 04 */ lfs f0, 4(r4) /* 8003CB9C 000387FC D0 03 0D 54 */ stfs f0, 0xd54(r3) /* 8003CBA0 00038800 4E 80 00 20 */ blr .global func_8003CBA4 func_8003CBA4: /* 8003CBA4 00038804 C0 04 00 00 */ lfs f0, 0(r4) /* 8003CBA8 00038808 D0 03 0D 48 */ stfs f0, 0xd48(r3) /* 8003CBAC 0003880C C0 04 00 04 */ lfs f0, 4(r4) /* 8003CBB0 00038810 D0 03 0D 4C */ stfs f0, 0xd4c(r3) /* 8003CBB4 00038814 4E 80 00 20 */ blr .global func_8003CBB8 func_8003CBB8: /* 8003CBB8 00038818 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8003CBBC 0003881C 7C 08 02 A6 */ mflr r0 /* 8003CBC0 00038820 90 01 00 44 */ stw r0, 0x44(r1) /* 8003CBC4 00038824 DB E1 00 30 */ stfd f31, 0x30(r1) /* 8003CBC8 00038828 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8003CBCC 0003882C FF E0 08 90 */ fmr f31, f1 /* 8003CBD0 00038830 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8003CBD4 00038834 7C 7F 1B 78 */ mr r31, r3 /* 8003CBD8 00038838 88 03 0D 44 */ lbz r0, 0xd44(r3) /* 8003CBDC 0003883C 2C 00 00 00 */ cmpwi r0, 0 /* 8003CBE0 00038840 41 82 01 50 */ beq lbl_8003CD30 /* 8003CBE4 00038844 C0 23 0D 34 */ lfs f1, 0xd34(r3) /* 8003CBE8 00038848 C0 03 0D 40 */ lfs f0, 0xd40(r3) /* 8003CBEC 0003884C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003CBF0 00038850 40 80 00 0C */ bge lbl_8003CBFC /* 8003CBF4 00038854 4B FF FF 11 */ bl func_8003CB04 /* 8003CBF8 00038858 48 00 01 38 */ b lbl_8003CD30 lbl_8003CBFC: /* 8003CBFC 0003885C C0 43 0D 60 */ lfs f2, 0xd60(r3) /* 8003CC00 00038860 C0 23 0D 54 */ lfs f1, 0xd54(r3) /* 8003CC04 00038864 C0 03 0D 50 */ lfs f0, 0xd50(r3) /* 8003CC08 00038868 EC 81 00 B2 */ fmuls f4, f1, f2 /* 8003CC0C 0003886C 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 8003CC10 00038870 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8003CC14 00038874 C0 63 0D 58 */ lfs f3, 0xd58(r3) /* 8003CC18 00038878 C0 23 0D 5C */ lfs f1, 0xd5c(r3) /* 8003CC1C 0003887C 2C 05 00 00 */ cmpwi r5, 0 /* 8003CC20 00038880 D0 01 00 08 */ stfs f0, 8(r1) /* 8003CC24 00038884 D0 81 00 0C */ stfs f4, 0xc(r1) /* 8003CC28 00038888 80 81 00 08 */ lwz r4, 8(r1) /* 8003CC2C 0003888C 80 01 00 0C */ lwz r0, 0xc(r1) /* 8003CC30 00038890 90 81 00 10 */ stw r4, 0x10(r1) /* 8003CC34 00038894 90 01 00 14 */ stw r0, 0x14(r1) /* 8003CC38 00038898 C0 41 00 10 */ lfs f2, 0x10(r1) /* 8003CC3C 0003889C C0 01 00 14 */ lfs f0, 0x14(r1) /* 8003CC40 000388A0 EC 43 10 2A */ fadds f2, f3, f2 /* 8003CC44 000388A4 EC 01 00 2A */ fadds f0, f1, f0 /* 8003CC48 000388A8 D0 43 0D 58 */ stfs f2, 0xd58(r3) /* 8003CC4C 000388AC D0 03 0D 5C */ stfs f0, 0xd5c(r3) /* 8003CC50 000388B0 41 82 00 14 */ beq lbl_8003CC64 /* 8003CC54 000388B4 88 9F 0D 30 */ lbz r4, 0xd30(r31) /* 8003CC58 000388B8 7C A3 2B 78 */ mr r3, r5 /* 8003CC5C 000388BC 38 BF 0D 58 */ addi r5, r31, 0xd58 /* 8003CC60 000388C0 48 1B BE E1 */ bl func_801F8B40 lbl_8003CC64: /* 8003CC64 000388C4 C0 5F 0D 40 */ lfs f2, 0xd40(r31) /* 8003CC68 000388C8 C0 3F 0D 3C */ lfs f1, 0xd3c(r31) /* 8003CC6C 000388CC FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8003CC70 000388D0 40 80 00 44 */ bge lbl_8003CCB4 /* 8003CC74 000388D4 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003CC78 000388D8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003CC7C 000388DC 40 81 00 38 */ ble lbl_8003CCB4 /* 8003CC80 000388E0 EC 22 08 24 */ fdivs f1, f2, f1 /* 8003CC84 000388E4 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003CC88 000388E8 2C 03 00 00 */ cmpwi r3, 0 /* 8003CC8C 000388EC 41 82 00 98 */ beq lbl_8003CD24 /* 8003CC90 000388F0 C0 02 82 38 */ lfs f0, lbl_80640838-_SDA2_BASE_(r2) /* 8003CC94 000388F4 88 9F 0D 30 */ lbz r4, 0xd30(r31) /* 8003CC98 000388F8 EC 00 00 72 */ fmuls f0, f0, f1 /* 8003CC9C 000388FC FC 00 00 1E */ fctiwz f0, f0 /* 8003CCA0 00038900 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003CCA4 00038904 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 8003CCA8 00038908 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 8003CCAC 0003890C 48 1B BE F5 */ bl func_801F8BA0 /* 8003CCB0 00038910 48 00 00 74 */ b lbl_8003CD24 lbl_8003CCB4: /* 8003CCB4 00038914 C0 1F 0D 34 */ lfs f0, 0xd34(r31) /* 8003CCB8 00038918 C0 5F 0D 38 */ lfs f2, 0xd38(r31) /* 8003CCBC 0003891C C0 7F 0D 40 */ lfs f3, 0xd40(r31) /* 8003CCC0 00038920 EC 20 10 28 */ fsubs f1, f0, f2 /* 8003CCC4 00038924 FC 03 08 40 */ fcmpo cr0, f3, f1 /* 8003CCC8 00038928 40 81 00 4C */ ble lbl_8003CD14 /* 8003CCCC 0003892C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003CCD0 00038930 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003CCD4 00038934 40 81 00 40 */ ble lbl_8003CD14 /* 8003CCD8 00038938 EC 03 08 28 */ fsubs f0, f3, f1 /* 8003CCDC 0003893C 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003CCE0 00038940 2C 03 00 00 */ cmpwi r3, 0 /* 8003CCE4 00038944 EC 00 10 24 */ fdivs f0, f0, f2 /* 8003CCE8 00038948 41 82 00 3C */ beq lbl_8003CD24 /* 8003CCEC 0003894C C0 22 82 38 */ lfs f1, lbl_80640838-_SDA2_BASE_(r2) /* 8003CCF0 00038950 88 9F 0D 30 */ lbz r4, 0xd30(r31) /* 8003CCF4 00038954 EC 01 00 32 */ fmuls f0, f1, f0 /* 8003CCF8 00038958 EC 01 00 28 */ fsubs f0, f1, f0 /* 8003CCFC 0003895C FC 00 00 1E */ fctiwz f0, f0 /* 8003CD00 00038960 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8003CD04 00038964 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 8003CD08 00038968 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 8003CD0C 0003896C 48 1B BE 95 */ bl func_801F8BA0 /* 8003CD10 00038970 48 00 00 14 */ b lbl_8003CD24 lbl_8003CD14: /* 8003CD14 00038974 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8003CD18 00038978 38 A0 00 FF */ li r5, 0xff /* 8003CD1C 0003897C 88 9F 0D 30 */ lbz r4, 0xd30(r31) /* 8003CD20 00038980 48 1B BE 81 */ bl func_801F8BA0 lbl_8003CD24: /* 8003CD24 00038984 C0 1F 0D 40 */ lfs f0, 0xd40(r31) /* 8003CD28 00038988 EC 00 F8 2A */ fadds f0, f0, f31 /* 8003CD2C 0003898C D0 1F 0D 40 */ stfs f0, 0xd40(r31) lbl_8003CD30: /* 8003CD30 00038990 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8003CD34 00038994 80 01 00 44 */ lwz r0, 0x44(r1) /* 8003CD38 00038998 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8003CD3C 0003899C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8003CD40 000389A0 7C 08 03 A6 */ mtlr r0 /* 8003CD44 000389A4 38 21 00 40 */ addi r1, r1, 0x40 /* 8003CD48 000389A8 4E 80 00 20 */ blr .global func_8003CD4C func_8003CD4C: /* 8003CD4C 000389AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003CD50 000389B0 7C 08 02 A6 */ mflr r0 /* 8003CD54 000389B4 90 01 00 14 */ stw r0, 0x14(r1) /* 8003CD58 000389B8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003CD5C 000389BC 7C 7F 1B 78 */ mr r31, r3 /* 8003CD60 000389C0 80 03 0C 08 */ lwz r0, 0xc08(r3) /* 8003CD64 000389C4 2C 00 00 00 */ cmpwi r0, 0 /* 8003CD68 000389C8 41 82 00 28 */ beq lbl_8003CD90 /* 8003CD6C 000389CC 41 82 00 1C */ beq lbl_8003CD88 /* 8003CD70 000389D0 7C 03 03 78 */ mr r3, r0 /* 8003CD74 000389D4 38 80 00 01 */ li r4, 1 /* 8003CD78 000389D8 81 83 00 0C */ lwz r12, 0xc(r3) /* 8003CD7C 000389DC 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8003CD80 000389E0 7D 89 03 A6 */ mtctr r12 /* 8003CD84 000389E4 4E 80 04 21 */ bctrl lbl_8003CD88: /* 8003CD88 000389E8 38 00 00 00 */ li r0, 0 /* 8003CD8C 000389EC 90 1F 0C 08 */ stw r0, 0xc08(r31) lbl_8003CD90: /* 8003CD90 000389F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003CD94 000389F4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003CD98 000389F8 7C 08 03 A6 */ mtlr r0 /* 8003CD9C 000389FC 38 21 00 10 */ addi r1, r1, 0x10 /* 8003CDA0 00038A00 4E 80 00 20 */ blr .global func_8003CDA4 func_8003CDA4: /* 8003CDA4 00038A04 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003CDA8 00038A08 7C 08 02 A6 */ mflr r0 /* 8003CDAC 00038A0C 90 01 00 24 */ stw r0, 0x24(r1) /* 8003CDB0 00038A10 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003CDB4 00038A14 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003CDB8 00038A18 7C 7E 1B 78 */ mr r30, r3 /* 8003CDBC 00038A1C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003CDC0 00038A20 2C 00 00 00 */ cmpwi r0, 0 /* 8003CDC4 00038A24 41 82 00 AC */ beq lbl_8003CE70 /* 8003CDC8 00038A28 4B FF FF 85 */ bl func_8003CD4C /* 8003CDCC 00038A2C 48 19 DD 5D */ bl func_801DAB28 /* 8003CDD0 00038A30 2C 03 00 00 */ cmpwi r3, 0 /* 8003CDD4 00038A34 41 82 00 14 */ beq lbl_8003CDE8 /* 8003CDD8 00038A38 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8003CDDC 00038A3C 38 80 00 28 */ li r4, 0x28 /* 8003CDE0 00038A40 48 19 DE B5 */ bl func_801DAC94 /* 8003CDE4 00038A44 48 00 00 08 */ b lbl_8003CDEC lbl_8003CDE8: /* 8003CDE8 00038A48 38 60 00 00 */ li r3, 0 lbl_8003CDEC: /* 8003CDEC 00038A4C 2C 03 00 00 */ cmpwi r3, 0 /* 8003CDF0 00038A50 7C 7F 1B 78 */ mr r31, r3 /* 8003CDF4 00038A54 41 82 00 14 */ beq lbl_8003CE08 /* 8003CDF8 00038A58 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 8003CDFC 00038A5C 38 A0 00 00 */ li r5, 0 /* 8003CE00 00038A60 48 1E 1C 49 */ bl func_8021EA48 /* 8003CE04 00038A64 7C 7F 1B 78 */ mr r31, r3 lbl_8003CE08: /* 8003CE08 00038A68 2C 1F 00 00 */ cmpwi r31, 0 /* 8003CE0C 00038A6C 41 82 00 64 */ beq lbl_8003CE70 /* 8003CE10 00038A70 C0 22 82 98 */ lfs f1, lbl_80640898-_SDA2_BASE_(r2) /* 8003CE14 00038A74 38 00 00 01 */ li r0, 1 /* 8003CE18 00038A78 93 FE 0C 08 */ stw r31, 0xc08(r30) /* 8003CE1C 00038A7C 7F E3 FB 78 */ mr r3, r31 /* 8003CE20 00038A80 C0 02 82 88 */ lfs f0, lbl_80640888-_SDA2_BASE_(r2) /* 8003CE24 00038A84 D0 3F 00 1C */ stfs f1, 0x1c(r31) /* 8003CE28 00038A88 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 8003CE2C 00038A8C 90 1F 00 24 */ stw r0, 0x24(r31) /* 8003CE30 00038A90 81 9F 00 0C */ lwz r12, 0xc(r31) /* 8003CE34 00038A94 D0 21 00 08 */ stfs f1, 8(r1) /* 8003CE38 00038A98 81 8C 00 08 */ lwz r12, 8(r12) /* 8003CE3C 00038A9C D0 01 00 0C */ stfs f0, 0xc(r1) /* 8003CE40 00038AA0 7D 89 03 A6 */ mtctr r12 /* 8003CE44 00038AA4 4E 80 04 21 */ bctrl /* 8003CE48 00038AA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8003CE4C 00038AAC 98 7F 00 08 */ stb r3, 8(r31) /* 8003CE50 00038AB0 41 82 00 20 */ beq lbl_8003CE70 /* 8003CE54 00038AB4 83 FF 00 04 */ lwz r31, 4(r31) /* 8003CE58 00038AB8 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8003CE5C 00038ABC 48 1F E1 FD */ bl func_8023B058 /* 8003CE60 00038AC0 2C 03 00 00 */ cmpwi r3, 0 /* 8003CE64 00038AC4 41 82 00 0C */ beq lbl_8003CE70 /* 8003CE68 00038AC8 7F E4 FB 78 */ mr r4, r31 /* 8003CE6C 00038ACC 48 1F E5 4D */ bl func_8023B3B8 lbl_8003CE70: /* 8003CE70 00038AD0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003CE74 00038AD4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003CE78 00038AD8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003CE7C 00038ADC 7C 08 03 A6 */ mtlr r0 /* 8003CE80 00038AE0 38 21 00 20 */ addi r1, r1, 0x20 /* 8003CE84 00038AE4 4E 80 00 20 */ blr .global func_8003CE88 func_8003CE88: /* 8003CE88 00038AE8 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 8003CE8C 00038AEC 2C 05 00 00 */ cmpwi r5, 0 /* 8003CE90 00038AF0 41 82 00 74 */ beq lbl_8003CF04 /* 8003CE94 00038AF4 A0 65 00 E0 */ lhz r3, 0xe0(r5) /* 8003CE98 00038AF8 7C 04 18 00 */ cmpw r4, r3 /* 8003CE9C 00038AFC 40 80 00 68 */ bge lbl_8003CF04 /* 8003CEA0 00038B00 80 C5 00 10 */ lwz r6, 0x10(r5) /* 8003CEA4 00038B04 2C 06 00 00 */ cmpwi r6, 0 /* 8003CEA8 00038B08 40 82 00 0C */ bne lbl_8003CEB4 /* 8003CEAC 00038B0C 38 60 00 00 */ li r3, 0 /* 8003CEB0 00038B10 4E 80 00 20 */ blr lbl_8003CEB4: /* 8003CEB4 00038B14 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 8003CEB8 00038B18 7C 00 18 40 */ cmplw r0, r3 /* 8003CEBC 00038B1C 41 80 00 0C */ blt lbl_8003CEC8 /* 8003CEC0 00038B20 38 60 00 00 */ li r3, 0 /* 8003CEC4 00038B24 4E 80 00 20 */ blr lbl_8003CEC8: /* 8003CEC8 00038B28 80 E5 00 08 */ lwz r7, 8(r5) /* 8003CECC 00038B2C 54 80 0B FC */ rlwinm r0, r4, 1, 0xf, 0x1e /* 8003CED0 00038B30 7C 66 02 2E */ lhzx r3, r6, r0 /* 8003CED4 00038B34 2C 07 00 00 */ cmpwi r7, 0 /* 8003CED8 00038B38 40 82 00 0C */ bne lbl_8003CEE4 /* 8003CEDC 00038B3C 38 60 00 00 */ li r3, 0 /* 8003CEE0 00038B40 4E 80 00 20 */ blr lbl_8003CEE4: /* 8003CEE4 00038B44 A0 05 00 DE */ lhz r0, 0xde(r5) /* 8003CEE8 00038B48 7C 03 00 40 */ cmplw r3, r0 /* 8003CEEC 00038B4C 41 80 00 0C */ blt lbl_8003CEF8 /* 8003CEF0 00038B50 38 60 00 00 */ li r3, 0 /* 8003CEF4 00038B54 4E 80 00 20 */ blr lbl_8003CEF8: /* 8003CEF8 00038B58 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003CEFC 00038B5C 7C 67 00 2E */ lwzx r3, r7, r0 /* 8003CF00 00038B60 4E 80 00 20 */ blr lbl_8003CF04: /* 8003CF04 00038B64 38 60 00 00 */ li r3, 0 /* 8003CF08 00038B68 4E 80 00 20 */ blr .global func_8003CF0C func_8003CF0C: /* 8003CF0C 00038B6C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003CF10 00038B70 7C 08 02 A6 */ mflr r0 /* 8003CF14 00038B74 90 01 00 14 */ stw r0, 0x14(r1) /* 8003CF18 00038B78 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003CF1C 00038B7C 7C 7F 1B 78 */ mr r31, r3 /* 8003CF20 00038B80 48 00 12 3D */ bl func_8003E15C /* 8003CF24 00038B84 2C 1F 00 00 */ cmpwi r31, 0 /* 8003CF28 00038B88 41 82 00 18 */ beq lbl_8003CF40 /* 8003CF2C 00038B8C 2C 03 00 00 */ cmpwi r3, 0 /* 8003CF30 00038B90 40 82 00 08 */ bne lbl_8003CF38 /* 8003CF34 00038B94 48 00 00 0C */ b lbl_8003CF40 lbl_8003CF38: /* 8003CF38 00038B98 7F E4 FB 78 */ mr r4, r31 /* 8003CF3C 00038B9C 48 00 12 FD */ bl func_8003E238 lbl_8003CF40: /* 8003CF40 00038BA0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003CF44 00038BA4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003CF48 00038BA8 7C 08 03 A6 */ mtlr r0 /* 8003CF4C 00038BAC 38 21 00 10 */ addi r1, r1, 0x10 /* 8003CF50 00038BB0 4E 80 00 20 */ blr .global func_8003CF54 func_8003CF54: /* 8003CF54 00038BB4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003CF58 00038BB8 7C 08 02 A6 */ mflr r0 /* 8003CF5C 00038BBC 90 01 00 34 */ stw r0, 0x34(r1) /* 8003CF60 00038BC0 39 61 00 30 */ addi r11, r1, 0x30 /* 8003CF64 00038BC4 48 18 A1 B1 */ bl _savegpr_22 /* 8003CF68 00038BC8 7C 7A 1B 78 */ mr r26, r3 /* 8003CF6C 00038BCC 7C 9B 23 78 */ mr r27, r4 /* 8003CF70 00038BD0 7C BC 2B 78 */ mr r28, r5 /* 8003CF74 00038BD4 7C DD 33 78 */ mr r29, r6 /* 8003CF78 00038BD8 7C FE 3B 78 */ mr r30, r7 /* 8003CF7C 00038BDC 7D 1F 43 78 */ mr r31, r8 /* 8003CF80 00038BE0 48 00 11 DD */ bl func_8003E15C /* 8003CF84 00038BE4 2C 03 00 00 */ cmpwi r3, 0 /* 8003CF88 00038BE8 7C 78 1B 78 */ mr r24, r3 /* 8003CF8C 00038BEC 40 82 00 0C */ bne lbl_8003CF98 /* 8003CF90 00038BF0 38 60 00 00 */ li r3, 0 /* 8003CF94 00038BF4 48 00 01 14 */ b lbl_8003D0A8 lbl_8003CF98: /* 8003CF98 00038BF8 7F 64 DB 78 */ mr r4, r27 /* 8003CF9C 00038BFC 7F C6 F3 78 */ mr r6, r30 /* 8003CFA0 00038C00 57 A5 06 3E */ clrlwi r5, r29, 0x18 /* 8003CFA4 00038C04 48 00 16 F5 */ bl func_8003E698 /* 8003CFA8 00038C08 7C 77 1B 78 */ mr r23, r3 /* 8003CFAC 00038C0C 7F 03 C3 78 */ mr r3, r24 /* 8003CFB0 00038C10 7F 64 DB 78 */ mr r4, r27 /* 8003CFB4 00038C14 7F 85 E3 78 */ mr r5, r28 /* 8003CFB8 00038C18 7F C7 F3 78 */ mr r7, r30 /* 8003CFBC 00038C1C 57 A6 06 3E */ clrlwi r6, r29, 0x18 /* 8003CFC0 00038C20 48 00 17 21 */ bl func_8003E6E0 /* 8003CFC4 00038C24 2C 17 00 00 */ cmpwi r23, 0 /* 8003CFC8 00038C28 7C 76 1B 78 */ mr r22, r3 /* 8003CFCC 00038C2C 41 82 00 0C */ beq lbl_8003CFD8 /* 8003CFD0 00038C30 2C 03 00 00 */ cmpwi r3, 0 /* 8003CFD4 00038C34 40 82 00 0C */ bne lbl_8003CFE0 lbl_8003CFD8: /* 8003CFD8 00038C38 38 60 00 00 */ li r3, 0 /* 8003CFDC 00038C3C 48 00 00 CC */ b lbl_8003D0A8 lbl_8003CFE0: /* 8003CFE0 00038C40 80 1A 00 00 */ lwz r0, 0(r26) /* 8003CFE4 00038C44 7F 43 D3 78 */ mr r3, r26 /* 8003CFE8 00038C48 54 18 05 28 */ rlwinm r24, r0, 0, 0x14, 0x14 /* 8003CFEC 00038C4C 4B FF A5 B9 */ bl func_800375A4 /* 8003CFF0 00038C50 80 1A 00 00 */ lwz r0, 0(r26) /* 8003CFF4 00038C54 7E E3 BB 78 */ mr r3, r23 /* 8003CFF8 00038C58 7E C4 B3 78 */ mr r4, r22 /* 8003CFFC 00038C5C 7C 00 C3 78 */ or r0, r0, r24 /* 8003D000 00038C60 90 1A 00 00 */ stw r0, 0(r26) /* 8003D004 00038C64 4B FF 9F 85 */ bl func_80036F88 /* 8003D008 00038C68 28 1B 01 47 */ cmplwi r27, 0x147 /* 8003D00C 00038C6C 40 82 00 3C */ bne lbl_8003D048 /* 8003D010 00038C70 3F 00 09 31 */ lis r24, 0x09310C00@ha /* 8003D014 00038C74 7E E3 BB 78 */ mr r3, r23 /* 8003D018 00038C78 38 98 0C 00 */ addi r4, r24, 0x09310C00@l /* 8003D01C 00038C7C 4B FF 9F 6D */ bl func_80036F88 /* 8003D020 00038C80 3F 20 09 30 */ lis r25, 0x09300C00@ha /* 8003D024 00038C84 7E E3 BB 78 */ mr r3, r23 /* 8003D028 00038C88 38 99 0C 00 */ addi r4, r25, 0x09300C00@l /* 8003D02C 00038C8C 4B FF 9F 5D */ bl func_80036F88 /* 8003D030 00038C90 38 78 0C 00 */ addi r3, r24, 0xc00 /* 8003D034 00038C94 38 19 0C 00 */ addi r0, r25, 0xc00 /* 8003D038 00038C98 92 FA 0C 58 */ stw r23, 0xc58(r26) /* 8003D03C 00038C9C 90 7A 0C 5C */ stw r3, 0xc5c(r26) /* 8003D040 00038CA0 92 FA 0C 60 */ stw r23, 0xc60(r26) /* 8003D044 00038CA4 90 1A 0C 64 */ stw r0, 0xc64(r26) lbl_8003D048: /* 8003D048 00038CA8 38 00 00 00 */ li r0, 0 /* 8003D04C 00038CAC 7E E3 BB 78 */ mr r3, r23 /* 8003D050 00038CB0 90 1A 0C D8 */ stw r0, 0xcd8(r26) /* 8003D054 00038CB4 90 1A 0C E0 */ stw r0, 0xce0(r26) /* 8003D058 00038CB8 48 20 C8 39 */ bl func_80249890 /* 8003D05C 00038CBC 7E E3 BB 78 */ mr r3, r23 /* 8003D060 00038CC0 48 20 C9 0D */ bl func_8024996C /* 8003D064 00038CC4 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003D068 00038CC8 48 1E 75 21 */ bl func_80224588 /* 8003D06C 00038CCC 3B 20 00 01 */ li r25, 1 /* 8003D070 00038CD0 B3 7A 05 10 */ sth r27, 0x510(r26) /* 8003D074 00038CD4 7F 43 D3 78 */ mr r3, r26 /* 8003D078 00038CD8 7E E4 BB 78 */ mr r4, r23 /* 8003D07C 00038CDC B3 DA 05 12 */ sth r30, 0x512(r26) /* 8003D080 00038CE0 7E C5 B3 78 */ mr r5, r22 /* 8003D084 00038CE4 9B 9A 05 16 */ stb r28, 0x516(r26) /* 8003D088 00038CE8 B3 BA 05 14 */ sth r29, 0x514(r26) /* 8003D08C 00038CEC 93 FA 05 18 */ stw r31, 0x518(r26) /* 8003D090 00038CF0 B3 3A 05 0C */ sth r25, 0x50c(r26) /* 8003D094 00038CF4 4B FF A8 91 */ bl func_80037924 /* 8003D098 00038CF8 B3 3A 05 0C */ sth r25, 0x50c(r26) /* 8003D09C 00038CFC 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003D0A0 00038D00 48 1E 74 E9 */ bl func_80224588 /* 8003D0A4 00038D04 38 60 00 01 */ li r3, 1 lbl_8003D0A8: /* 8003D0A8 00038D08 39 61 00 30 */ addi r11, r1, 0x30 /* 8003D0AC 00038D0C 48 18 A0 B5 */ bl _restgpr_22 /* 8003D0B0 00038D10 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003D0B4 00038D14 7C 08 03 A6 */ mtlr r0 /* 8003D0B8 00038D18 38 21 00 30 */ addi r1, r1, 0x30 /* 8003D0BC 00038D1C 4E 80 00 20 */ blr .global func_8003D0C0 func_8003D0C0: /* 8003D0C0 00038D20 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003D0C4 00038D24 7C 08 02 A6 */ mflr r0 /* 8003D0C8 00038D28 90 01 00 34 */ stw r0, 0x34(r1) /* 8003D0CC 00038D2C 39 61 00 30 */ addi r11, r1, 0x30 /* 8003D0D0 00038D30 48 18 A0 49 */ bl _savegpr_23 /* 8003D0D4 00038D34 3F 00 80 64 */ lis r24, lbl_8063CE34@ha /* 8003D0D8 00038D38 7C 7A 1B 78 */ mr r26, r3 /* 8003D0DC 00038D3C 3B 18 CE 34 */ addi r24, r24, lbl_8063CE34@l /* 8003D0E0 00038D40 7C 9B 23 78 */ mr r27, r4 /* 8003D0E4 00038D44 7C BC 2B 78 */ mr r28, r5 /* 8003D0E8 00038D48 7C DD 33 78 */ mr r29, r6 /* 8003D0EC 00038D4C 7C FE 3B 78 */ mr r30, r7 /* 8003D0F0 00038D50 38 78 00 28 */ addi r3, r24, 0x28 /* 8003D0F4 00038D54 48 35 8C F1 */ bl func_80395DE4 /* 8003D0F8 00038D58 7C 1B 18 40 */ cmplw r27, r3 /* 8003D0FC 00038D5C 41 80 00 0C */ blt lbl_8003D108 /* 8003D100 00038D60 38 60 00 00 */ li r3, 0 /* 8003D104 00038D64 48 00 01 84 */ b lbl_8003D288 lbl_8003D108: /* 8003D108 00038D68 2C 1C 00 00 */ cmpwi r28, 0 /* 8003D10C 00038D6C 41 82 00 28 */ beq lbl_8003D134 /* 8003D110 00038D70 7F 64 DB 78 */ mr r4, r27 /* 8003D114 00038D74 38 78 00 28 */ addi r3, r24, 0x28 /* 8003D118 00038D78 48 35 8D C1 */ bl func_80395ED8 /* 8003D11C 00038D7C 7C 7F 1B 78 */ mr r31, r3 /* 8003D120 00038D80 7F 64 DB 78 */ mr r4, r27 /* 8003D124 00038D84 38 78 00 28 */ addi r3, r24, 0x28 /* 8003D128 00038D88 48 35 8D E5 */ bl func_80395F0C /* 8003D12C 00038D8C 7C 77 1B 78 */ mr r23, r3 /* 8003D130 00038D90 48 00 00 24 */ b lbl_8003D154 lbl_8003D134: /* 8003D134 00038D94 7F 64 DB 78 */ mr r4, r27 /* 8003D138 00038D98 38 78 00 28 */ addi r3, r24, 0x28 /* 8003D13C 00038D9C 48 35 8D 35 */ bl func_80395E70 /* 8003D140 00038DA0 7C 7F 1B 78 */ mr r31, r3 /* 8003D144 00038DA4 7F 64 DB 78 */ mr r4, r27 /* 8003D148 00038DA8 38 78 00 28 */ addi r3, r24, 0x28 /* 8003D14C 00038DAC 48 35 8D 59 */ bl func_80395EA4 /* 8003D150 00038DB0 7C 77 1B 78 */ mr r23, r3 lbl_8003D154: /* 8003D154 00038DB4 2C 1F 00 00 */ cmpwi r31, 0 /* 8003D158 00038DB8 41 82 00 0C */ beq lbl_8003D164 /* 8003D15C 00038DBC 2C 17 00 00 */ cmpwi r23, 0 /* 8003D160 00038DC0 40 82 00 0C */ bne lbl_8003D16C lbl_8003D164: /* 8003D164 00038DC4 38 60 00 00 */ li r3, 0 /* 8003D168 00038DC8 48 00 01 20 */ b lbl_8003D288 lbl_8003D16C: /* 8003D16C 00038DCC 80 1A 00 00 */ lwz r0, 0(r26) /* 8003D170 00038DD0 7F 43 D3 78 */ mr r3, r26 /* 8003D174 00038DD4 54 18 05 28 */ rlwinm r24, r0, 0, 0x14, 0x14 /* 8003D178 00038DD8 4B FF A4 2D */ bl func_800375A4 /* 8003D17C 00038DDC 80 9A 00 00 */ lwz r4, 0(r26) /* 8003D180 00038DE0 7F 80 00 34 */ cntlzw r0, r28 /* 8003D184 00038DE4 38 BB 03 E7 */ addi r5, r27, 0x3e7 /* 8003D188 00038DE8 7F E3 FB 78 */ mr r3, r31 /* 8003D18C 00038DEC 7C 84 C3 78 */ or r4, r4, r24 /* 8003D190 00038DF0 54 00 DC 3E */ rlwinm r0, r0, 0x1b, 0x10, 0x1f /* 8003D194 00038DF4 90 9A 00 00 */ stw r4, 0(r26) /* 8003D198 00038DF8 7E E4 BB 78 */ mr r4, r23 /* 8003D19C 00038DFC B0 BA 05 10 */ sth r5, 0x510(r26) /* 8003D1A0 00038E00 B0 1A 05 14 */ sth r0, 0x514(r26) /* 8003D1A4 00038E04 48 19 E3 19 */ bl func_801DB4BC /* 8003D1A8 00038E08 7F A0 07 75 */ extsb. r0, r29 /* 8003D1AC 00038E0C B3 7A 05 1C */ sth r27, 0x51c(r26) /* 8003D1B0 00038E10 7C 78 1B 78 */ mr r24, r3 /* 8003D1B4 00038E14 9B 9A 05 20 */ stb r28, 0x520(r26) /* 8003D1B8 00038E18 41 80 00 08 */ blt lbl_8003D1C0 /* 8003D1BC 00038E1C 9B BA 05 21 */ stb r29, 0x521(r26) lbl_8003D1C0: /* 8003D1C0 00038E20 3F 20 80 64 */ lis r25, lbl_8063CE34@ha /* 8003D1C4 00038E24 7F 64 DB 78 */ mr r4, r27 /* 8003D1C8 00038E28 3B 39 CE 34 */ addi r25, r25, lbl_8063CE34@l /* 8003D1CC 00038E2C 38 79 00 28 */ addi r3, r25, 0x28 /* 8003D1D0 00038E30 48 35 8C 31 */ bl func_80395E00 /* 8003D1D4 00038E34 2C 03 00 00 */ cmpwi r3, 0 /* 8003D1D8 00038E38 41 82 00 34 */ beq lbl_8003D20C /* 8003D1DC 00038E3C 7F 64 DB 78 */ mr r4, r27 /* 8003D1E0 00038E40 38 79 00 28 */ addi r3, r25, 0x28 /* 8003D1E4 00038E44 48 35 8C 55 */ bl func_80395E38 /* 8003D1E8 00038E48 B0 7A 05 1E */ sth r3, 0x51e(r26) /* 8003D1EC 00038E4C 7F 64 DB 78 */ mr r4, r27 /* 8003D1F0 00038E50 7F 85 E3 78 */ mr r5, r28 /* 8003D1F4 00038E54 7F C7 F3 78 */ mr r7, r30 /* 8003D1F8 00038E58 38 7A 05 24 */ addi r3, r26, 0x524 /* 8003D1FC 00038E5C 7F A6 07 74 */ extsb r6, r29 /* 8003D200 00038E60 39 00 00 01 */ li r8, 1 /* 8003D204 00038E64 48 00 20 99 */ bl func_8003F29C /* 8003D208 00038E68 48 00 00 54 */ b lbl_8003D25C lbl_8003D20C: /* 8003D20C 00038E6C 38 00 FF FF */ li r0, -1 /* 8003D210 00038E70 38 7A 05 24 */ addi r3, r26, 0x524 /* 8003D214 00038E74 B0 1A 05 1E */ sth r0, 0x51e(r26) /* 8003D218 00038E78 48 00 17 89 */ bl func_8003E9A0 /* 8003D21C 00038E7C 2C 18 00 00 */ cmpwi r24, 0 /* 8003D220 00038E80 40 82 00 30 */ bne lbl_8003D250 /* 8003D224 00038E84 7F E3 FB 78 */ mr r3, r31 /* 8003D228 00038E88 7E E4 BB 78 */ mr r4, r23 /* 8003D22C 00038E8C 48 20 C5 F1 */ bl func_8024981C /* 8003D230 00038E90 48 00 00 0C */ b lbl_8003D23C lbl_8003D234: /* 8003D234 00038E94 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003D238 00038E98 48 1E 73 51 */ bl func_80224588 lbl_8003D23C: /* 8003D23C 00038E9C 7F E3 FB 78 */ mr r3, r31 /* 8003D240 00038EA0 7E E4 BB 78 */ mr r4, r23 /* 8003D244 00038EA4 48 19 E2 79 */ bl func_801DB4BC /* 8003D248 00038EA8 2C 03 00 00 */ cmpwi r3, 0 /* 8003D24C 00038EAC 41 82 FF E8 */ beq lbl_8003D234 lbl_8003D250: /* 8003D250 00038EB0 7F E3 FB 78 */ mr r3, r31 /* 8003D254 00038EB4 7E E4 BB 78 */ mr r4, r23 /* 8003D258 00038EB8 48 19 E2 A5 */ bl func_801DB4FC lbl_8003D25C: /* 8003D25C 00038EBC 7F 43 D3 78 */ mr r3, r26 /* 8003D260 00038EC0 7F E4 FB 78 */ mr r4, r31 /* 8003D264 00038EC4 7E E5 BB 78 */ mr r5, r23 /* 8003D268 00038EC8 4B FF A6 BD */ bl func_80037924 /* 8003D26C 00038ECC 38 00 00 02 */ li r0, 2 /* 8003D270 00038ED0 7F E3 FB 78 */ mr r3, r31 /* 8003D274 00038ED4 B0 1A 05 0C */ sth r0, 0x50c(r26) /* 8003D278 00038ED8 48 20 C6 19 */ bl func_80249890 /* 8003D27C 00038EDC 7F E3 FB 78 */ mr r3, r31 /* 8003D280 00038EE0 48 20 C6 ED */ bl func_8024996C /* 8003D284 00038EE4 38 60 00 01 */ li r3, 1 lbl_8003D288: /* 8003D288 00038EE8 39 61 00 30 */ addi r11, r1, 0x30 /* 8003D28C 00038EEC 48 18 9E D9 */ bl _restgpr_23 /* 8003D290 00038EF0 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003D294 00038EF4 7C 08 03 A6 */ mtlr r0 /* 8003D298 00038EF8 38 21 00 30 */ addi r1, r1, 0x30 /* 8003D29C 00038EFC 4E 80 00 20 */ blr .global func_8003D2A0 func_8003D2A0: /* 8003D2A0 00038F00 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003D2A4 00038F04 7C 08 02 A6 */ mflr r0 /* 8003D2A8 00038F08 90 01 00 14 */ stw r0, 0x14(r1) /* 8003D2AC 00038F0C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003D2B0 00038F10 7C 7F 1B 78 */ mr r31, r3 /* 8003D2B4 00038F14 48 00 0E A9 */ bl func_8003E15C /* 8003D2B8 00038F18 2C 03 00 00 */ cmpwi r3, 0 /* 8003D2BC 00038F1C 41 82 00 20 */ beq lbl_8003D2DC /* 8003D2C0 00038F20 A0 1F 05 14 */ lhz r0, 0x514(r31) /* 8003D2C4 00038F24 38 C0 00 00 */ li r6, 0 /* 8003D2C8 00038F28 A0 9F 05 10 */ lhz r4, 0x510(r31) /* 8003D2CC 00038F2C 54 05 06 3E */ clrlwi r5, r0, 0x18 /* 8003D2D0 00038F30 48 00 12 75 */ bl func_8003E544 /* 8003D2D4 00038F34 7C 64 1B 78 */ mr r4, r3 /* 8003D2D8 00038F38 48 00 00 0C */ b lbl_8003D2E4 lbl_8003D2DC: /* 8003D2DC 00038F3C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003D2E0 00038F40 48 00 00 10 */ b lbl_8003D2F0 lbl_8003D2E4: /* 8003D2E4 00038F44 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003D2E8 00038F48 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8003D2EC 00038F4C 48 35 40 C9 */ bl func_803913B4 lbl_8003D2F0: /* 8003D2F0 00038F50 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003D2F4 00038F54 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003D2F8 00038F58 7C 08 03 A6 */ mtlr r0 /* 8003D2FC 00038F5C 38 21 00 10 */ addi r1, r1, 0x10 /* 8003D300 00038F60 4E 80 00 20 */ blr .global func_8003D304 func_8003D304: /* 8003D304 00038F64 2C 04 00 00 */ cmpwi r4, 0 /* 8003D308 00038F68 7C 87 23 78 */ mr r7, r4 /* 8003D30C 00038F6C 40 82 00 0C */ bne lbl_8003D318 /* 8003D310 00038F70 38 60 00 00 */ li r3, 0 /* 8003D314 00038F74 4E 80 00 20 */ blr lbl_8003D318: /* 8003D318 00038F78 A0 84 00 00 */ lhz r4, 0(r4) /* 8003D31C 00038F7C 7C C6 07 74 */ extsb r6, r6 /* 8003D320 00038F80 38 E7 00 02 */ addi r7, r7, 2 /* 8003D324 00038F84 4B FF FD 9C */ b func_8003D0C0 /* 8003D328 00038F88 4E 80 00 20 */ blr .global func_8003D32C func_8003D32C: /* 8003D32C 00038F8C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003D330 00038F90 7C 08 02 A6 */ mflr r0 /* 8003D334 00038F94 3C C0 80 64 */ lis r6, lbl_8063CE34@ha /* 8003D338 00038F98 90 01 00 24 */ stw r0, 0x24(r1) /* 8003D33C 00038F9C 38 C6 CE 34 */ addi r6, r6, lbl_8063CE34@l /* 8003D340 00038FA0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003D344 00038FA4 3B E0 00 00 */ li r31, 0 /* 8003D348 00038FA8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003D34C 00038FAC 7C BE 2B 78 */ mr r30, r5 /* 8003D350 00038FB0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003D354 00038FB4 7C 9D 23 78 */ mr r29, r4 /* 8003D358 00038FB8 93 81 00 10 */ stw r28, 0x10(r1) /* 8003D35C 00038FBC 7C 7C 1B 78 */ mr r28, r3 /* 8003D360 00038FC0 A0 83 05 1C */ lhz r4, 0x51c(r3) /* 8003D364 00038FC4 38 66 00 28 */ addi r3, r6, 0x28 /* 8003D368 00038FC8 48 35 8A 99 */ bl func_80395E00 /* 8003D36C 00038FCC 2C 03 00 00 */ cmpwi r3, 0 /* 8003D370 00038FD0 41 82 00 24 */ beq lbl_8003D394 /* 8003D374 00038FD4 7F A4 EB 78 */ mr r4, r29 /* 8003D378 00038FD8 7F C5 F3 78 */ mr r5, r30 /* 8003D37C 00038FDC 38 7C 05 24 */ addi r3, r28, 0x524 /* 8003D380 00038FE0 48 00 21 A9 */ bl func_8003F528 /* 8003D384 00038FE4 80 1C 00 00 */ lwz r0, 0(r28) /* 8003D388 00038FE8 7C 7F 1B 78 */ mr r31, r3 /* 8003D38C 00038FEC 60 00 02 00 */ ori r0, r0, 0x200 /* 8003D390 00038FF0 90 1C 00 00 */ stw r0, 0(r28) lbl_8003D394: /* 8003D394 00038FF4 7F E3 FB 78 */ mr r3, r31 /* 8003D398 00038FF8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003D39C 00038FFC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003D3A0 00039000 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003D3A4 00039004 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003D3A8 00039008 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003D3AC 0003900C 7C 08 03 A6 */ mtlr r0 /* 8003D3B0 00039010 38 21 00 20 */ addi r1, r1, 0x20 /* 8003D3B4 00039014 4E 80 00 20 */ blr .global func_8003D3B8 func_8003D3B8: /* 8003D3B8 00039018 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003D3BC 0003901C 7C 08 02 A6 */ mflr r0 /* 8003D3C0 00039020 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 8003D3C4 00039024 90 01 00 24 */ stw r0, 0x24(r1) /* 8003D3C8 00039028 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l /* 8003D3CC 0003902C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003D3D0 00039030 3B E0 00 00 */ li r31, 0 /* 8003D3D4 00039034 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003D3D8 00039038 7C 9E 23 78 */ mr r30, r4 /* 8003D3DC 0003903C 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003D3E0 00039040 7C 7D 1B 78 */ mr r29, r3 /* 8003D3E4 00039044 A0 83 05 1C */ lhz r4, 0x51c(r3) /* 8003D3E8 00039048 38 65 00 28 */ addi r3, r5, 0x28 /* 8003D3EC 0003904C 48 35 8A 15 */ bl func_80395E00 /* 8003D3F0 00039050 2C 03 00 00 */ cmpwi r3, 0 /* 8003D3F4 00039054 41 82 00 20 */ beq lbl_8003D414 /* 8003D3F8 00039058 7F C4 F3 78 */ mr r4, r30 /* 8003D3FC 0003905C 38 7D 05 24 */ addi r3, r29, 0x524 /* 8003D400 00039060 48 00 22 05 */ bl func_8003F604 /* 8003D404 00039064 80 1D 00 00 */ lwz r0, 0(r29) /* 8003D408 00039068 7C 7F 1B 78 */ mr r31, r3 /* 8003D40C 0003906C 60 00 02 00 */ ori r0, r0, 0x200 /* 8003D410 00039070 90 1D 00 00 */ stw r0, 0(r29) lbl_8003D414: /* 8003D414 00039074 7F E3 FB 78 */ mr r3, r31 /* 8003D418 00039078 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003D41C 0003907C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003D420 00039080 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003D424 00039084 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003D428 00039088 7C 08 03 A6 */ mtlr r0 /* 8003D42C 0003908C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003D430 00039090 4E 80 00 20 */ blr .global func_8003D434 func_8003D434: /* 8003D434 00039094 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003D438 00039098 7C 08 02 A6 */ mflr r0 /* 8003D43C 0003909C 90 01 00 14 */ stw r0, 0x14(r1) /* 8003D440 000390A0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003D444 000390A4 7C 7F 1B 78 */ mr r31, r3 /* 8003D448 000390A8 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003D44C 000390AC 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8003D450 000390B0 A0 9F 05 1C */ lhz r4, 0x51c(r31) /* 8003D454 000390B4 38 63 00 28 */ addi r3, r3, 0x28 /* 8003D458 000390B8 48 35 89 A9 */ bl func_80395E00 /* 8003D45C 000390BC 2C 03 00 00 */ cmpwi r3, 0 /* 8003D460 000390C0 41 82 00 18 */ beq lbl_8003D478 /* 8003D464 000390C4 80 1F 00 00 */ lwz r0, 0(r31) /* 8003D468 000390C8 38 7F 05 24 */ addi r3, r31, 0x524 /* 8003D46C 000390CC 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 8003D470 000390D0 54 05 AF FE */ rlwinm r5, r0, 0x15, 0x1f, 0x1f /* 8003D474 000390D4 48 00 22 81 */ bl func_8003F6F4 lbl_8003D478: /* 8003D478 000390D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003D47C 000390DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003D480 000390E0 7C 08 03 A6 */ mtlr r0 /* 8003D484 000390E4 38 21 00 10 */ addi r1, r1, 0x10 /* 8003D488 000390E8 4E 80 00 20 */ blr .global func_8003D48C func_8003D48C: /* 8003D48C 000390EC 2C 04 00 00 */ cmpwi r4, 0 /* 8003D490 000390F0 41 82 00 14 */ beq lbl_8003D4A4 /* 8003D494 000390F4 80 03 00 00 */ lwz r0, 0(r3) /* 8003D498 000390F8 60 00 08 00 */ ori r0, r0, 0x800 /* 8003D49C 000390FC 90 03 00 00 */ stw r0, 0(r3) /* 8003D4A0 00039100 4E 80 00 20 */ blr lbl_8003D4A4: /* 8003D4A4 00039104 80 03 00 00 */ lwz r0, 0(r3) /* 8003D4A8 00039108 54 00 05 66 */ rlwinm r0, r0, 0, 0x15, 0x13 /* 8003D4AC 0003910C 90 03 00 00 */ stw r0, 0(r3) /* 8003D4B0 00039110 4E 80 00 20 */ blr .global func_8003D4B4 func_8003D4B4: /* 8003D4B4 00039114 38 80 00 00 */ li r4, 0 /* 8003D4B8 00039118 48 00 00 1C */ b lbl_8003D4D4 .global func_8003D4BC func_8003D4BC: /* 8003D4BC 0003911C 38 80 00 01 */ li r4, 1 /* 8003D4C0 00039120 48 00 00 14 */ b lbl_8003D4D4 .global func_8003D4C4 func_8003D4C4: /* 8003D4C4 00039124 38 80 00 02 */ li r4, 2 /* 8003D4C8 00039128 48 00 00 0C */ b lbl_8003D4D4 .global func_8003D4CC func_8003D4CC: /* 8003D4CC 0003912C 38 80 00 03 */ li r4, 3 /* 8003D4D0 00039130 48 00 00 04 */ b lbl_8003D4D4 lbl_8003D4D4: /* 8003D4D4 00039134 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003D4D8 00039138 7C 08 02 A6 */ mflr r0 /* 8003D4DC 0003913C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003D4E0 00039140 39 61 00 30 */ addi r11, r1, 0x30 /* 8003D4E4 00039144 48 18 9C 45 */ bl _savegpr_27 /* 8003D4E8 00039148 2C 04 00 02 */ cmpwi r4, 2 /* 8003D4EC 0003914C 7C 7D 1B 78 */ mr r29, r3 /* 8003D4F0 00039150 7C 9E 23 78 */ mr r30, r4 /* 8003D4F4 00039154 41 82 00 84 */ beq lbl_8003D578 /* 8003D4F8 00039158 40 80 00 14 */ bge lbl_8003D50C /* 8003D4FC 0003915C 2C 04 00 00 */ cmpwi r4, 0 /* 8003D500 00039160 41 82 00 18 */ beq lbl_8003D518 /* 8003D504 00039164 40 80 00 50 */ bge lbl_8003D554 /* 8003D508 00039168 48 00 02 EC */ b lbl_8003D7F4 lbl_8003D50C: /* 8003D50C 0003916C 2C 04 00 04 */ cmpwi r4, 4 /* 8003D510 00039170 40 80 02 E4 */ bge lbl_8003D7F4 /* 8003D514 00039174 48 00 00 88 */ b lbl_8003D59C lbl_8003D518: /* 8003D518 00039178 80 03 00 00 */ lwz r0, 0(r3) /* 8003D51C 0003917C 3C 80 19 F9 */ lis r4, 0x19F90A00@ha /* 8003D520 00039180 80 A3 0C 04 */ lwz r5, 0xc04(r3) /* 8003D524 00039184 3B E4 0A 00 */ addi r31, r4, 0x19F90A00@l /* 8003D528 00039188 80 83 00 00 */ lwz r4, 0(r3) /* 8003D52C 0003918C 60 00 40 00 */ ori r0, r0, 0x4000 /* 8003D530 00039190 2C 05 00 00 */ cmpwi r5, 0 /* 8003D534 00039194 3B 60 00 00 */ li r27, 0 /* 8003D538 00039198 90 03 00 00 */ stw r0, 0(r3) /* 8003D53C 0003919C 54 9C 97 FE */ rlwinm r28, r4, 0x12, 0x1f, 0x1f /* 8003D540 000391A0 41 82 00 B8 */ beq lbl_8003D5F8 /* 8003D544 000391A4 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 8003D548 000391A8 60 00 00 10 */ ori r0, r0, 0x10 /* 8003D54C 000391AC B0 05 00 DC */ sth r0, 0xdc(r5) /* 8003D550 000391B0 48 00 00 A8 */ b lbl_8003D5F8 lbl_8003D554: /* 8003D554 000391B4 80 03 00 00 */ lwz r0, 0(r3) /* 8003D558 000391B8 3C 80 1C F7 */ lis r4, 0x1CF70A00@ha /* 8003D55C 000391BC 80 A3 00 00 */ lwz r5, 0(r3) /* 8003D560 000391C0 3B E4 0A 00 */ addi r31, r4, 0x1CF70A00@l /* 8003D564 000391C4 64 00 00 08 */ oris r0, r0, 8 /* 8003D568 000391C8 3B 60 FF FE */ li r27, -2 /* 8003D56C 000391CC 90 03 00 00 */ stw r0, 0(r3) /* 8003D570 000391D0 54 BC 6F FE */ rlwinm r28, r5, 0xd, 0x1f, 0x1f /* 8003D574 000391D4 48 00 00 84 */ b lbl_8003D5F8 lbl_8003D578: /* 8003D578 000391D8 80 03 00 00 */ lwz r0, 0(r3) /* 8003D57C 000391DC 3C 80 1C F6 */ lis r4, 0x1CF60A00@ha /* 8003D580 000391E0 80 A3 00 00 */ lwz r5, 0(r3) /* 8003D584 000391E4 3B E4 0A 00 */ addi r31, r4, 0x1CF60A00@l /* 8003D588 000391E8 64 00 00 10 */ oris r0, r0, 0x10 /* 8003D58C 000391EC 3B 60 FF FE */ li r27, -2 /* 8003D590 000391F0 90 03 00 00 */ stw r0, 0(r3) /* 8003D594 000391F4 54 BC 67 FE */ rlwinm r28, r5, 0xc, 0x1f, 0x1f /* 8003D598 000391F8 48 00 00 60 */ b lbl_8003D5F8 lbl_8003D59C: /* 8003D59C 000391FC 80 03 00 00 */ lwz r0, 0(r3) /* 8003D5A0 00039200 3C 80 19 FB */ lis r4, 0x19FB0A00@ha /* 8003D5A4 00039204 3B E4 0A 00 */ addi r31, r4, 0x19FB0A00@l /* 8003D5A8 00039208 3B 60 00 01 */ li r27, 1 /* 8003D5AC 0003920C 54 1C 9F FE */ rlwinm r28, r0, 0x13, 0x1f, 0x1f /* 8003D5B0 00039210 38 80 00 14 */ li r4, 0x14 /* 8003D5B4 00039214 4B FF EC A9 */ bl func_8003C25C /* 8003D5B8 00039218 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8003D5BC 0003921C 28 04 00 FF */ cmplwi r4, 0xff /* 8003D5C0 00039220 40 80 00 24 */ bge lbl_8003D5E4 /* 8003D5C4 00039224 80 7D 0C 04 */ lwz r3, 0xc04(r29) /* 8003D5C8 00039228 38 A0 00 00 */ li r5, 0 /* 8003D5CC 0003922C C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003D5D0 00039230 38 C0 00 01 */ li r6, 1 /* 8003D5D4 00039234 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003D5D8 00039238 38 E0 00 01 */ li r7, 1 /* 8003D5DC 0003923C 39 00 00 00 */ li r8, 0 /* 8003D5E0 00039240 48 1B 78 15 */ bl func_801F4DF4 lbl_8003D5E4: /* 8003D5E4 00039244 80 1D 00 00 */ lwz r0, 0(r29) /* 8003D5E8 00039248 60 00 20 00 */ ori r0, r0, 0x2000 /* 8003D5EC 0003924C 90 1D 00 00 */ stw r0, 0(r29) /* 8003D5F0 00039250 48 00 00 08 */ b lbl_8003D5F8 /* 8003D5F4 00039254 48 00 02 00 */ b lbl_8003D7F4 lbl_8003D5F8: /* 8003D5F8 00039258 2C 1C 00 00 */ cmpwi r28, 0 /* 8003D5FC 0003925C 40 82 01 A4 */ bne lbl_8003D7A0 /* 8003D600 00039260 7F A3 EB 78 */ mr r3, r29 /* 8003D604 00039264 7F 64 DB 78 */ mr r4, r27 /* 8003D608 00039268 4B FF C2 E5 */ bl func_800398EC /* 8003D60C 0003926C 2C 03 00 00 */ cmpwi r3, 0 /* 8003D610 00039270 7C 7B 1B 78 */ mr r27, r3 /* 8003D614 00039274 41 82 01 E0 */ beq lbl_8003D7F4 /* 8003D618 00039278 57 E0 00 5E */ rlwinm r0, r31, 0, 1, 0xf /* 8003D61C 0003927C 38 60 00 0C */ li r3, 0xc /* 8003D620 00039280 60 04 0E 00 */ ori r4, r0, 0xe00 /* 8003D624 00039284 48 19 DE 99 */ bl func_801DB4BC /* 8003D628 00039288 2C 03 00 00 */ cmpwi r3, 0 /* 8003D62C 0003928C 7C 7C 1B 78 */ mr r28, r3 /* 8003D630 00039290 41 82 01 C4 */ beq lbl_8003D7F4 /* 8003D634 00039294 57 C0 10 3A */ slwi r0, r30, 2 /* 8003D638 00039298 7F FD 02 14 */ add r31, r29, r0 /* 8003D63C 0003929C 80 7F 0C 90 */ lwz r3, 0xc90(r31) /* 8003D640 000392A0 2C 03 00 00 */ cmpwi r3, 0 /* 8003D644 000392A4 41 82 00 1C */ beq lbl_8003D660 /* 8003D648 000392A8 41 82 00 18 */ beq lbl_8003D660 /* 8003D64C 000392AC 81 83 01 00 */ lwz r12, 0x100(r3) /* 8003D650 000392B0 38 80 00 01 */ li r4, 1 /* 8003D654 000392B4 81 8C 00 08 */ lwz r12, 8(r12) /* 8003D658 000392B8 7D 89 03 A6 */ mtctr r12 /* 8003D65C 000392BC 4E 80 04 21 */ bctrl lbl_8003D660: /* 8003D660 000392C0 48 19 D4 C9 */ bl func_801DAB28 /* 8003D664 000392C4 2C 03 00 00 */ cmpwi r3, 0 /* 8003D668 000392C8 41 82 00 14 */ beq lbl_8003D67C /* 8003D66C 000392CC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8003D670 000392D0 38 80 01 40 */ li r4, 0x140 /* 8003D674 000392D4 48 19 D6 21 */ bl func_801DAC94 /* 8003D678 000392D8 48 00 00 08 */ b lbl_8003D680 lbl_8003D67C: /* 8003D67C 000392DC 38 60 00 00 */ li r3, 0 lbl_8003D680: /* 8003D680 000392E0 2C 03 00 00 */ cmpwi r3, 0 /* 8003D684 000392E4 7C 65 1B 78 */ mr r5, r3 /* 8003D688 000392E8 41 82 00 10 */ beq lbl_8003D698 /* 8003D68C 000392EC 7F 84 E3 78 */ mr r4, r28 /* 8003D690 000392F0 48 1B C2 5D */ bl func_801F98EC /* 8003D694 000392F4 7C 65 1B 78 */ mr r5, r3 lbl_8003D698: /* 8003D698 000392F8 90 BF 0C 90 */ stw r5, 0xc90(r31) /* 8003D69C 000392FC 7F 63 DB 78 */ mr r3, r27 /* 8003D6A0 00039300 38 80 00 01 */ li r4, 1 /* 8003D6A4 00039304 38 C0 00 00 */ li r6, 0 /* 8003D6A8 00039308 38 E0 00 03 */ li r7, 3 /* 8003D6AC 0003930C 48 1B 4A E1 */ bl func_801F218C /* 8003D6B0 00039310 7F A3 EB 78 */ mr r3, r29 /* 8003D6B4 00039314 4B FF C0 21 */ bl func_800396D4 /* 8003D6B8 00039318 C0 22 82 30 */ lfs f1, lbl_80640830-_SDA2_BASE_(r2) /* 8003D6BC 0003931C 48 01 0D E1 */ bl func_8004E49C /* 8003D6C0 00039320 FC 00 08 18 */ frsp f0, f1 /* 8003D6C4 00039324 80 7F 0C 90 */ lwz r3, 0xc90(r31) /* 8003D6C8 00039328 C0 42 82 70 */ lfs f2, lbl_80640870-_SDA2_BASE_(r2) /* 8003D6CC 0003932C D0 21 00 08 */ stfs f1, 8(r1) /* 8003D6D0 00039330 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8003D6D4 00039334 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8003D6D8 00039338 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8003D6DC 0003933C D0 21 00 0C */ stfs f1, 0xc(r1) /* 8003D6E0 00039340 D0 21 00 10 */ stfs f1, 0x10(r1) /* 8003D6E4 00039344 D0 03 00 50 */ stfs f0, 0x50(r3) /* 8003D6E8 00039348 40 80 00 2C */ bge lbl_8003D714 /* 8003D6EC 0003934C C0 23 00 48 */ lfs f1, 0x48(r3) /* 8003D6F0 00039350 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 8003D6F4 00039354 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8003D6F8 00039358 40 81 00 1C */ ble lbl_8003D714 /* 8003D6FC 0003935C C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003D700 00039360 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003D704 00039364 40 80 00 08 */ bge lbl_8003D70C /* 8003D708 00039368 48 00 00 08 */ b lbl_8003D710 lbl_8003D70C: /* 8003D70C 0003936C FC 60 10 90 */ fmr f3, f2 lbl_8003D710: /* 8003D710 00039370 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_8003D714: /* 8003D714 00039374 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 8003D718 00039378 C0 22 82 70 */ lfs f1, lbl_80640870-_SDA2_BASE_(r2) /* 8003D71C 0003937C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8003D720 00039380 40 80 00 28 */ bge lbl_8003D748 /* 8003D724 00039384 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 8003D728 00039388 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8003D72C 0003938C 40 81 00 1C */ ble lbl_8003D748 /* 8003D730 00039390 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003D734 00039394 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003D738 00039398 40 80 00 08 */ bge lbl_8003D740 /* 8003D73C 0003939C 48 00 00 08 */ b lbl_8003D744 lbl_8003D740: /* 8003D740 000393A0 FC 60 08 90 */ fmr f3, f1 lbl_8003D744: /* 8003D744 000393A4 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8003D748: /* 8003D748 000393A8 C0 43 00 50 */ lfs f2, 0x50(r3) /* 8003D74C 000393AC C0 22 82 70 */ lfs f1, lbl_80640870-_SDA2_BASE_(r2) /* 8003D750 000393B0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8003D754 000393B4 40 80 00 28 */ bge lbl_8003D77C /* 8003D758 000393B8 C0 62 82 74 */ lfs f3, lbl_80640874-_SDA2_BASE_(r2) /* 8003D75C 000393BC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8003D760 000393C0 40 81 00 1C */ ble lbl_8003D77C /* 8003D764 000393C4 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003D768 000393C8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003D76C 000393CC 40 80 00 08 */ bge lbl_8003D774 /* 8003D770 000393D0 48 00 00 08 */ b lbl_8003D778 lbl_8003D774: /* 8003D774 000393D4 FC 60 08 90 */ fmr f3, f1 lbl_8003D778: /* 8003D778 000393D8 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8003D77C: /* 8003D77C 000393DC 38 80 00 01 */ li r4, 1 /* 8003D780 000393E0 48 1B 4F 39 */ bl func_801F26B8 /* 8003D784 000393E4 80 7F 0C 90 */ lwz r3, 0xc90(r31) /* 8003D788 000393E8 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003D78C 000393EC 80 03 01 04 */ lwz r0, 0x104(r3) /* 8003D790 000393F0 60 00 00 01 */ ori r0, r0, 1 /* 8003D794 000393F4 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 8003D798 000393F8 90 03 01 04 */ stw r0, 0x104(r3) /* 8003D79C 000393FC D0 03 01 08 */ stfs f0, 0x108(r3) lbl_8003D7A0: /* 8003D7A0 00039400 2C 1E 00 01 */ cmpwi r30, 1 /* 8003D7A4 00039404 41 82 00 18 */ beq lbl_8003D7BC /* 8003D7A8 00039408 2C 1E 00 02 */ cmpwi r30, 2 /* 8003D7AC 0003940C 41 82 00 10 */ beq lbl_8003D7BC /* 8003D7B0 00039410 80 1D 00 00 */ lwz r0, 0(r29) /* 8003D7B4 00039414 54 00 02 53 */ rlwinm. r0, r0, 0, 9, 9 /* 8003D7B8 00039418 41 82 00 3C */ beq lbl_8003D7F4 lbl_8003D7BC: /* 8003D7BC 0003941C 80 1D 00 00 */ lwz r0, 0(r29) /* 8003D7C0 00039420 7F A3 EB 78 */ mr r3, r29 /* 8003D7C4 00039424 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 8003D7C8 00039428 7C 00 00 34 */ cntlzw r0, r0 /* 8003D7CC 0003942C 54 04 D9 7E */ srwi r4, r0, 5 /* 8003D7D0 00039430 4B FF A5 5D */ bl func_80037D2C /* 8003D7D4 00039434 80 1D 00 00 */ lwz r0, 0(r29) /* 8003D7D8 00039438 7F A3 EB 78 */ mr r3, r29 /* 8003D7DC 0003943C 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 8003D7E0 00039440 7C 00 00 34 */ cntlzw r0, r0 /* 8003D7E4 00039444 54 04 D9 7E */ srwi r4, r0, 5 /* 8003D7E8 00039448 4B FF A5 45 */ bl func_80037D2C /* 8003D7EC 0003944C 7F A3 EB 78 */ mr r3, r29 /* 8003D7F0 00039450 4B FF A8 31 */ bl func_80038020 lbl_8003D7F4: /* 8003D7F4 00039454 39 61 00 30 */ addi r11, r1, 0x30 /* 8003D7F8 00039458 48 18 99 7D */ bl _restgpr_27 /* 8003D7FC 0003945C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003D800 00039460 7C 08 03 A6 */ mtlr r0 /* 8003D804 00039464 38 21 00 30 */ addi r1, r1, 0x30 /* 8003D808 00039468 4E 80 00 20 */ blr .global func_8003D80C func_8003D80C: /* 8003D80C 0003946C 38 80 00 00 */ li r4, 0 /* 8003D810 00039470 48 00 00 1C */ b lbl_8003D82C .global func_8003D814 func_8003D814: /* 8003D814 00039474 38 80 00 01 */ li r4, 1 /* 8003D818 00039478 48 00 00 14 */ b lbl_8003D82C .global func_8003D81C func_8003D81C: /* 8003D81C 0003947C 38 80 00 02 */ li r4, 2 /* 8003D820 00039480 48 00 00 0C */ b lbl_8003D82C .global func_8003D824 func_8003D824: /* 8003D824 00039484 38 80 00 03 */ li r4, 3 /* 8003D828 00039488 48 00 00 04 */ b lbl_8003D82C lbl_8003D82C: /* 8003D82C 0003948C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003D830 00039490 7C 08 02 A6 */ mflr r0 /* 8003D834 00039494 2C 04 00 02 */ cmpwi r4, 2 /* 8003D838 00039498 90 01 00 24 */ stw r0, 0x24(r1) /* 8003D83C 0003949C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003D840 000394A0 7C 9F 23 78 */ mr r31, r4 /* 8003D844 000394A4 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003D848 000394A8 7C 7E 1B 78 */ mr r30, r3 /* 8003D84C 000394AC 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003D850 000394B0 41 82 00 74 */ beq lbl_8003D8C4 /* 8003D854 000394B4 40 80 00 14 */ bge lbl_8003D868 /* 8003D858 000394B8 2C 04 00 00 */ cmpwi r4, 0 /* 8003D85C 000394BC 41 82 00 18 */ beq lbl_8003D874 /* 8003D860 000394C0 40 80 00 48 */ bge lbl_8003D8A8 /* 8003D864 000394C4 48 00 01 7C */ b lbl_8003D9E0 lbl_8003D868: /* 8003D868 000394C8 2C 04 00 04 */ cmpwi r4, 4 /* 8003D86C 000394CC 40 80 01 74 */ bge lbl_8003D9E0 /* 8003D870 000394D0 48 00 00 70 */ b lbl_8003D8E0 lbl_8003D874: /* 8003D874 000394D4 80 03 00 00 */ lwz r0, 0(r3) /* 8003D878 000394D8 54 00 04 63 */ rlwinm. r0, r0, 0, 0x11, 0x11 /* 8003D87C 000394DC 41 82 01 64 */ beq lbl_8003D9E0 /* 8003D880 000394E0 80 83 0C 04 */ lwz r4, 0xc04(r3) /* 8003D884 000394E4 2C 04 00 00 */ cmpwi r4, 0 /* 8003D888 000394E8 41 82 00 10 */ beq lbl_8003D898 /* 8003D88C 000394EC A0 04 00 DC */ lhz r0, 0xdc(r4) /* 8003D890 000394F0 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 8003D894 000394F4 B0 04 00 DC */ sth r0, 0xdc(r4) lbl_8003D898: /* 8003D898 000394F8 80 03 00 00 */ lwz r0, 0(r3) /* 8003D89C 000394FC 54 00 04 A0 */ rlwinm r0, r0, 0, 0x12, 0x10 /* 8003D8A0 00039500 90 03 00 00 */ stw r0, 0(r3) /* 8003D8A4 00039504 48 00 00 A8 */ b lbl_8003D94C lbl_8003D8A8: /* 8003D8A8 00039508 80 03 00 00 */ lwz r0, 0(r3) /* 8003D8AC 0003950C 54 00 03 19 */ rlwinm. r0, r0, 0, 0xc, 0xc /* 8003D8B0 00039510 41 82 01 30 */ beq lbl_8003D9E0 /* 8003D8B4 00039514 80 03 00 00 */ lwz r0, 0(r3) /* 8003D8B8 00039518 54 00 03 56 */ rlwinm r0, r0, 0, 0xd, 0xb /* 8003D8BC 0003951C 90 03 00 00 */ stw r0, 0(r3) /* 8003D8C0 00039520 48 00 00 8C */ b lbl_8003D94C lbl_8003D8C4: /* 8003D8C4 00039524 80 03 00 00 */ lwz r0, 0(r3) /* 8003D8C8 00039528 54 00 02 D7 */ rlwinm. r0, r0, 0, 0xb, 0xb /* 8003D8CC 0003952C 41 82 01 14 */ beq lbl_8003D9E0 /* 8003D8D0 00039530 80 03 00 00 */ lwz r0, 0(r3) /* 8003D8D4 00039534 54 00 03 14 */ rlwinm r0, r0, 0, 0xc, 0xa /* 8003D8D8 00039538 90 03 00 00 */ stw r0, 0(r3) /* 8003D8DC 0003953C 48 00 00 70 */ b lbl_8003D94C lbl_8003D8E0: /* 8003D8E0 00039540 80 03 00 00 */ lwz r0, 0(r3) /* 8003D8E4 00039544 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12 /* 8003D8E8 00039548 41 82 00 F8 */ beq lbl_8003D9E0 /* 8003D8EC 0003954C 38 80 00 15 */ li r4, 0x15 /* 8003D8F0 00039550 4B FF E9 6D */ bl func_8003C25C /* 8003D8F4 00039554 80 1E 0C 04 */ lwz r0, 0xc04(r30) /* 8003D8F8 00039558 7C 7D 1B 78 */ mr r29, r3 /* 8003D8FC 0003955C 2C 00 00 00 */ cmpwi r0, 0 /* 8003D900 00039560 41 82 00 38 */ beq lbl_8003D938 /* 8003D904 00039564 7C 03 03 78 */ mr r3, r0 /* 8003D908 00039568 48 1B 7F F5 */ bl func_801F58FC /* 8003D90C 0003956C 57 A4 04 3E */ clrlwi r4, r29, 0x10 /* 8003D910 00039570 28 04 00 FF */ cmplwi r4, 0xff /* 8003D914 00039574 40 80 00 24 */ bge lbl_8003D938 /* 8003D918 00039578 80 7E 0C 04 */ lwz r3, 0xc04(r30) /* 8003D91C 0003957C 38 A0 00 00 */ li r5, 0 /* 8003D920 00039580 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003D924 00039584 38 C0 00 00 */ li r6, 0 /* 8003D928 00039588 C0 42 82 30 */ lfs f2, lbl_80640830-_SDA2_BASE_(r2) /* 8003D92C 0003958C 38 E0 00 00 */ li r7, 0 /* 8003D930 00039590 39 00 00 00 */ li r8, 0 /* 8003D934 00039594 48 1B 74 C1 */ bl func_801F4DF4 lbl_8003D938: /* 8003D938 00039598 80 1E 00 00 */ lwz r0, 0(r30) /* 8003D93C 0003959C 54 00 04 E2 */ rlwinm r0, r0, 0, 0x13, 0x11 /* 8003D940 000395A0 90 1E 00 00 */ stw r0, 0(r30) /* 8003D944 000395A4 48 00 00 08 */ b lbl_8003D94C /* 8003D948 000395A8 48 00 00 98 */ b lbl_8003D9E0 lbl_8003D94C: /* 8003D94C 000395AC 57 E0 10 3A */ slwi r0, r31, 2 /* 8003D950 000395B0 7F BE 02 14 */ add r29, r30, r0 /* 8003D954 000395B4 80 7D 0C 90 */ lwz r3, 0xc90(r29) /* 8003D958 000395B8 2C 03 00 00 */ cmpwi r3, 0 /* 8003D95C 000395BC 41 82 00 40 */ beq lbl_8003D99C /* 8003D960 000395C0 80 03 01 04 */ lwz r0, 0x104(r3) /* 8003D964 000395C4 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003D968 000395C8 60 00 00 04 */ ori r0, r0, 4 /* 8003D96C 000395CC 90 03 01 04 */ stw r0, 0x104(r3) /* 8003D970 000395D0 D0 03 01 10 */ stfs f0, 0x110(r3) /* 8003D974 000395D4 80 7D 0C 90 */ lwz r3, 0xc90(r29) /* 8003D978 000395D8 2C 03 00 00 */ cmpwi r3, 0 /* 8003D97C 000395DC 41 82 00 18 */ beq lbl_8003D994 /* 8003D980 000395E0 81 83 01 00 */ lwz r12, 0x100(r3) /* 8003D984 000395E4 38 80 00 01 */ li r4, 1 /* 8003D988 000395E8 81 8C 00 08 */ lwz r12, 8(r12) /* 8003D98C 000395EC 7D 89 03 A6 */ mtctr r12 /* 8003D990 000395F0 4E 80 04 21 */ bctrl lbl_8003D994: /* 8003D994 000395F4 38 00 00 00 */ li r0, 0 /* 8003D998 000395F8 90 1D 0C 90 */ stw r0, 0xc90(r29) lbl_8003D99C: /* 8003D99C 000395FC 38 1F FF FF */ addi r0, r31, -1 /* 8003D9A0 00039600 28 00 00 01 */ cmplwi r0, 1 /* 8003D9A4 00039604 41 81 00 3C */ bgt lbl_8003D9E0 /* 8003D9A8 00039608 80 1E 00 00 */ lwz r0, 0(r30) /* 8003D9AC 0003960C 7F C3 F3 78 */ mr r3, r30 /* 8003D9B0 00039610 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 8003D9B4 00039614 7C 00 00 34 */ cntlzw r0, r0 /* 8003D9B8 00039618 54 04 D9 7E */ srwi r4, r0, 5 /* 8003D9BC 0003961C 4B FF A3 71 */ bl func_80037D2C /* 8003D9C0 00039620 80 1E 00 00 */ lwz r0, 0(r30) /* 8003D9C4 00039624 7F C3 F3 78 */ mr r3, r30 /* 8003D9C8 00039628 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 8003D9CC 0003962C 7C 00 00 34 */ cntlzw r0, r0 /* 8003D9D0 00039630 54 04 D9 7E */ srwi r4, r0, 5 /* 8003D9D4 00039634 4B FF A3 59 */ bl func_80037D2C /* 8003D9D8 00039638 7F C3 F3 78 */ mr r3, r30 /* 8003D9DC 0003963C 4B FF A6 45 */ bl func_80038020 lbl_8003D9E0: /* 8003D9E0 00039640 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003D9E4 00039644 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003D9E8 00039648 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003D9EC 0003964C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003D9F0 00039650 7C 08 03 A6 */ mtlr r0 /* 8003D9F4 00039654 38 21 00 20 */ addi r1, r1, 0x20 /* 8003D9F8 00039658 4E 80 00 20 */ blr .global func_8003D9FC func_8003D9FC: /* 8003D9FC 0003965C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003DA00 00039660 7C 08 02 A6 */ mflr r0 /* 8003DA04 00039664 2C 04 00 00 */ cmpwi r4, 0 /* 8003DA08 00039668 90 01 00 14 */ stw r0, 0x14(r1) /* 8003DA0C 0003966C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003DA10 00039670 93 C1 00 08 */ stw r30, 8(r1) /* 8003DA14 00039674 7C 7E 1B 78 */ mr r30, r3 /* 8003DA18 00039678 41 82 00 20 */ beq lbl_8003DA38 /* 8003DA1C 0003967C 2C 05 00 00 */ cmpwi r5, 0 /* 8003DA20 00039680 41 82 00 18 */ beq lbl_8003DA38 /* 8003DA24 00039684 2C 06 00 00 */ cmpwi r6, 0 /* 8003DA28 00039688 41 82 00 10 */ beq lbl_8003DA38 /* 8003DA2C 0003968C 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003DA30 00039690 2C 00 00 00 */ cmpwi r0, 0 /* 8003DA34 00039694 40 82 00 0C */ bne lbl_8003DA40 lbl_8003DA38: /* 8003DA38 00039698 38 60 00 00 */ li r3, 0 /* 8003DA3C 0003969C 48 00 00 D0 */ b lbl_8003DB0C lbl_8003DA40: /* 8003DA40 000396A0 7C 83 23 78 */ mr r3, r4 /* 8003DA44 000396A4 7C A4 2B 78 */ mr r4, r5 /* 8003DA48 000396A8 7C C5 33 78 */ mr r5, r6 /* 8003DA4C 000396AC 7C E6 3B 78 */ mr r6, r7 /* 8003DA50 000396B0 38 E0 00 01 */ li r7, 1 /* 8003DA54 000396B4 48 1C 30 D9 */ bl func_80200B2C /* 8003DA58 000396B8 2C 03 00 00 */ cmpwi r3, 0 /* 8003DA5C 000396BC 7C 7F 1B 78 */ mr r31, r3 /* 8003DA60 000396C0 40 82 00 0C */ bne lbl_8003DA6C /* 8003DA64 000396C4 38 60 00 00 */ li r3, 0 /* 8003DA68 000396C8 48 00 00 A4 */ b lbl_8003DB0C lbl_8003DA6C: /* 8003DA6C 000396CC 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 8003DA70 000396D0 48 1C 31 E5 */ bl func_80200C54 /* 8003DA74 000396D4 A0 1E 05 0C */ lhz r0, 0x50c(r30) /* 8003DA78 000396D8 28 00 00 02 */ cmplwi r0, 2 /* 8003DA7C 000396DC 40 82 00 30 */ bne lbl_8003DAAC /* 8003DA80 000396E0 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003DA84 000396E4 A0 9E 05 1C */ lhz r4, 0x51c(r30) /* 8003DA88 000396E8 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8003DA8C 000396EC 38 63 00 28 */ addi r3, r3, 0x28 /* 8003DA90 000396F0 48 35 83 71 */ bl func_80395E00 /* 8003DA94 000396F4 2C 03 00 00 */ cmpwi r3, 0 /* 8003DA98 000396F8 41 82 00 14 */ beq lbl_8003DAAC /* 8003DA9C 000396FC 7F E4 FB 78 */ mr r4, r31 /* 8003DAA0 00039700 38 7E 05 24 */ addi r3, r30, 0x524 /* 8003DAA4 00039704 38 A0 00 01 */ li r5, 1 /* 8003DAA8 00039708 48 00 22 D1 */ bl func_8003FD78 lbl_8003DAAC: /* 8003DAAC 0003970C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003DAB0 00039710 48 1E 6A D9 */ bl func_80224588 /* 8003DAB4 00039714 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003DAB8 00039718 48 1E 6A D1 */ bl func_80224588 /* 8003DABC 0003971C 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 8003DAC0 00039720 7F E3 FB 78 */ mr r3, r31 /* 8003DAC4 00039724 48 1C 32 45 */ bl func_80200D08 /* 8003DAC8 00039728 A0 1E 05 0C */ lhz r0, 0x50c(r30) /* 8003DACC 0003972C 28 00 00 02 */ cmplwi r0, 2 /* 8003DAD0 00039730 40 82 00 30 */ bne lbl_8003DB00 /* 8003DAD4 00039734 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003DAD8 00039738 A0 9E 05 1C */ lhz r4, 0x51c(r30) /* 8003DADC 0003973C 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8003DAE0 00039740 38 63 00 28 */ addi r3, r3, 0x28 /* 8003DAE4 00039744 48 35 83 1D */ bl func_80395E00 /* 8003DAE8 00039748 2C 03 00 00 */ cmpwi r3, 0 /* 8003DAEC 0003974C 41 82 00 14 */ beq lbl_8003DB00 /* 8003DAF0 00039750 7F E4 FB 78 */ mr r4, r31 /* 8003DAF4 00039754 38 7E 05 24 */ addi r3, r30, 0x524 /* 8003DAF8 00039758 38 A0 00 00 */ li r5, 0 /* 8003DAFC 0003975C 48 00 22 7D */ bl func_8003FD78 lbl_8003DB00: /* 8003DB00 00039760 7F E3 FB 78 */ mr r3, r31 /* 8003DB04 00039764 48 1C 32 75 */ bl func_80200D78 /* 8003DB08 00039768 38 60 00 01 */ li r3, 1 lbl_8003DB0C: /* 8003DB0C 0003976C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003DB10 00039770 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003DB14 00039774 83 C1 00 08 */ lwz r30, 8(r1) /* 8003DB18 00039778 7C 08 03 A6 */ mtlr r0 /* 8003DB1C 0003977C 38 21 00 10 */ addi r1, r1, 0x10 /* 8003DB20 00039780 4E 80 00 20 */ blr .global func_8003DB24 func_8003DB24: /* 8003DB24 00039784 3C 80 19 9C */ lis r4, 0x199C0A00@ha /* 8003DB28 00039788 38 63 0D 04 */ addi r3, r3, 0xd04 /* 8003DB2C 0003978C 38 84 0A 00 */ addi r4, r4, 0x199C0A00@l /* 8003DB30 00039790 4B FF 95 FC */ b lbl_8003712C .global WorldDarkening_Fade WorldDarkening_Fade: /* 8003DB34 00039794 D0 23 0D 08 */ stfs f1, 0xd08(r3) /* 8003DB38 00039798 D0 43 0D 0C */ stfs f2, 0xd0c(r3) /* 8003DB3C 0003979C 4E 80 00 20 */ blr .global func_8003DB40 func_8003DB40: /* 8003DB40 000397A0 94 21 FF 80 */ stwu r1, -0x80(r1) /* 8003DB44 000397A4 7C 08 02 A6 */ mflr r0 /* 8003DB48 000397A8 90 01 00 84 */ stw r0, 0x84(r1) /* 8003DB4C 000397AC DB E1 00 70 */ stfd f31, 0x70(r1) /* 8003DB50 000397B0 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 8003DB54 000397B4 DB C1 00 60 */ stfd f30, 0x60(r1) /* 8003DB58 000397B8 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 8003DB5C 000397BC DB A1 00 50 */ stfd f29, 0x50(r1) /* 8003DB60 000397C0 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 8003DB64 000397C4 39 61 00 50 */ addi r11, r1, 0x50 /* 8003DB68 000397C8 48 18 95 B9 */ bl _savegpr_25 /* 8003DB6C 000397CC 88 03 0D 04 */ lbz r0, 0xd04(r3) /* 8003DB70 000397D0 FF A0 08 90 */ fmr f29, f1 /* 8003DB74 000397D4 7C 7B 1B 78 */ mr r27, r3 /* 8003DB78 000397D8 2C 00 00 00 */ cmpwi r0, 0 /* 8003DB7C 000397DC 41 82 01 E4 */ beq lbl_8003DD60 /* 8003DB80 000397E0 80 83 0C 04 */ lwz r4, 0xc04(r3) /* 8003DB84 000397E4 2C 04 00 00 */ cmpwi r4, 0 /* 8003DB88 000397E8 41 82 01 CC */ beq lbl_8003DD54 /* 8003DB8C 000397EC C0 23 0D 10 */ lfs f1, 0xd10(r3) /* 8003DB90 000397F0 C0 03 0D 0C */ lfs f0, 0xd0c(r3) /* 8003DB94 000397F4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8003DB98 000397F8 4C 41 13 82 */ cror 2, 1, 2 /* 8003DB9C 000397FC 40 82 01 B8 */ bne lbl_8003DD54 /* 8003DBA0 00039800 A3 E4 00 DE */ lhz r31, 0xde(r4) /* 8003DBA4 00039804 7F 7E DB 78 */ mr r30, r27 /* 8003DBA8 00039808 C3 E2 82 20 */ lfs f31, lbl_80640820-_SDA2_BASE_(r2) /* 8003DBAC 0003980C 3B A0 00 00 */ li r29, 0 /* 8003DBB0 00039810 C3 C2 82 40 */ lfs f30, lbl_80640840-_SDA2_BASE_(r2) /* 8003DBB4 00039814 3B 80 00 00 */ li r28, 0 /* 8003DBB8 00039818 3B 40 00 00 */ li r26, 0 /* 8003DBBC 0003981C 48 00 01 90 */ b lbl_8003DD4C lbl_8003DBC0: /* 8003DBC0 00039820 80 1E 0D 18 */ lwz r0, 0xd18(r30) /* 8003DBC4 00039824 2C 00 00 00 */ cmpwi r0, 0 /* 8003DBC8 00039828 41 82 01 7C */ beq lbl_8003DD44 /* 8003DBCC 0003982C 80 7B 0C 04 */ lwz r3, 0xc04(r27) /* 8003DBD0 00039830 80 83 00 08 */ lwz r4, 8(r3) /* 8003DBD4 00039834 2C 04 00 00 */ cmpwi r4, 0 /* 8003DBD8 00039838 40 82 00 0C */ bne lbl_8003DBE4 /* 8003DBDC 0003983C 38 60 00 00 */ li r3, 0 /* 8003DBE0 00039840 48 00 00 24 */ b lbl_8003DC04 lbl_8003DBE4: /* 8003DBE4 00039844 A0 03 00 DE */ lhz r0, 0xde(r3) /* 8003DBE8 00039848 57 83 04 3E */ clrlwi r3, r28, 0x10 /* 8003DBEC 0003984C 7C 03 00 40 */ cmplw r3, r0 /* 8003DBF0 00039850 41 80 00 0C */ blt lbl_8003DBFC /* 8003DBF4 00039854 38 60 00 00 */ li r3, 0 /* 8003DBF8 00039858 48 00 00 0C */ b lbl_8003DC04 lbl_8003DBFC: /* 8003DBFC 0003985C 57 80 13 BA */ rlwinm r0, r28, 2, 0xe, 0x1d /* 8003DC00 00039860 7C 64 00 2E */ lwzx r3, r4, r0 lbl_8003DC04: /* 8003DC04 00039864 C0 43 00 EC */ lfs f2, 0xec(r3) /* 8003DC08 00039868 C0 1B 0D 08 */ lfs f0, 0xd08(r27) /* 8003DC0C 0003986C C0 63 00 DC */ lfs f3, 0xdc(r3) /* 8003DC10 00039870 C0 23 00 FC */ lfs f1, 0xfc(r3) /* 8003DC14 00039874 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8003DC18 00039878 D0 61 00 24 */ stfs f3, 0x24(r1) /* 8003DC1C 0003987C D0 41 00 28 */ stfs f2, 0x28(r1) /* 8003DC20 00039880 D0 21 00 2C */ stfs f1, 0x2c(r1) /* 8003DC24 00039884 4C 40 13 82 */ cror 2, 0, 2 /* 8003DC28 00039888 40 82 01 1C */ bne lbl_8003DD44 /* 8003DC2C 0003988C FC 02 F0 40 */ fcmpo cr0, f2, f30 /* 8003DC30 00039890 40 81 01 14 */ ble lbl_8003DD44 /* 8003DC34 00039894 D3 E1 00 28 */ stfs f31, 0x28(r1) /* 8003DC38 00039898 7F 63 DB 78 */ mr r3, r27 /* 8003DC3C 0003989C 4B FF BA 99 */ bl func_800396D4 /* 8003DC40 000398A0 80 1B 0D 14 */ lwz r0, 0xd14(r27) /* 8003DC44 000398A4 7C 64 1B 78 */ mr r4, r3 /* 8003DC48 000398A8 C0 22 82 30 */ lfs f1, lbl_80640830-_SDA2_BASE_(r2) /* 8003DC4C 000398AC 54 00 10 3A */ slwi r0, r0, 2 /* 8003DC50 000398B0 7C 7B 02 14 */ add r3, r27, r0 /* 8003DC54 000398B4 80 63 0D 18 */ lwz r3, 0xd18(r3) /* 8003DC58 000398B8 48 01 06 FD */ bl func_8004E354 /* 8003DC5C 000398BC 7F 64 DB 78 */ mr r4, r27 /* 8003DC60 000398C0 38 61 00 18 */ addi r3, r1, 0x18 /* 8003DC64 000398C4 4B FF AE 31 */ bl func_80038A94 /* 8003DC68 000398C8 80 1B 0D 14 */ lwz r0, 0xd14(r27) /* 8003DC6C 000398CC 54 00 10 3A */ slwi r0, r0, 2 /* 8003DC70 000398D0 7C 7B 02 14 */ add r3, r27, r0 /* 8003DC74 000398D4 83 23 0D 18 */ lwz r25, 0xd18(r3) /* 8003DC78 000398D8 80 19 00 40 */ lwz r0, 0x40(r25) /* 8003DC7C 000398DC 2C 00 00 00 */ cmpwi r0, 0 /* 8003DC80 000398E0 41 82 00 48 */ beq lbl_8003DCC8 /* 8003DC84 000398E4 38 61 00 08 */ addi r3, r1, 8 /* 8003DC88 000398E8 38 81 00 18 */ addi r4, r1, 0x18 /* 8003DC8C 000398EC 48 1E 5A 35 */ bl func_802236C0 /* 8003DC90 000398F0 80 79 00 40 */ lwz r3, 0x40(r25) /* 8003DC94 000398F4 38 80 00 01 */ li r4, 1 /* 8003DC98 000398F8 C0 01 00 08 */ lfs f0, 8(r1) /* 8003DC9C 000398FC D0 03 00 2C */ stfs f0, 0x2c(r3) /* 8003DCA0 00039900 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8003DCA4 00039904 D0 03 00 30 */ stfs f0, 0x30(r3) /* 8003DCA8 00039908 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8003DCAC 0003990C D0 03 00 34 */ stfs f0, 0x34(r3) /* 8003DCB0 00039910 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8003DCB4 00039914 D0 03 00 38 */ stfs f0, 0x38(r3) /* 8003DCB8 00039918 A0 03 00 10 */ lhz r0, 0x10(r3) /* 8003DCBC 0003991C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 8003DCC0 00039920 B0 03 00 10 */ sth r0, 0x10(r3) /* 8003DCC4 00039924 48 1B 49 F5 */ bl func_801F26B8 lbl_8003DCC8: /* 8003DCC8 00039928 80 1B 0D 14 */ lwz r0, 0xd14(r27) /* 8003DCCC 0003992C 54 00 10 3A */ slwi r0, r0, 2 /* 8003DCD0 00039930 7C 7B 02 14 */ add r3, r27, r0 /* 8003DCD4 00039934 80 63 0D 18 */ lwz r3, 0xd18(r3) /* 8003DCD8 00039938 80 63 00 40 */ lwz r3, 0x40(r3) /* 8003DCDC 0003993C 2C 03 00 00 */ cmpwi r3, 0 /* 8003DCE0 00039940 41 82 00 24 */ beq lbl_8003DD04 /* 8003DCE4 00039944 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8003DCE8 00039948 38 80 00 01 */ li r4, 1 /* 8003DCEC 0003994C C0 21 00 28 */ lfs f1, 0x28(r1) /* 8003DCF0 00039950 D0 03 00 20 */ stfs f0, 0x20(r3) /* 8003DCF4 00039954 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 8003DCF8 00039958 D0 23 00 24 */ stfs f1, 0x24(r3) /* 8003DCFC 0003995C D0 03 00 28 */ stfs f0, 0x28(r3) /* 8003DD00 00039960 48 1B 49 B9 */ bl func_801F26B8 lbl_8003DD04: /* 8003DD04 00039964 80 1B 0D 14 */ lwz r0, 0xd14(r27) /* 8003DD08 00039968 C0 22 82 20 */ lfs f1, lbl_80640820-_SDA2_BASE_(r2) /* 8003DD0C 0003996C 54 00 10 3A */ slwi r0, r0, 2 /* 8003DD10 00039970 7C 7B 02 14 */ add r3, r27, r0 /* 8003DD14 00039974 80 63 0D 18 */ lwz r3, 0xd18(r3) /* 8003DD18 00039978 48 01 0A B1 */ bl func_8004E7C8 /* 8003DD1C 0003997C 80 7B 0D 14 */ lwz r3, 0xd14(r27) /* 8003DD20 00039980 38 03 00 01 */ addi r0, r3, 1 /* 8003DD24 00039984 2C 00 00 06 */ cmpwi r0, 6 /* 8003DD28 00039988 90 1B 0D 14 */ stw r0, 0xd14(r27) /* 8003DD2C 0003998C 41 80 00 08 */ blt lbl_8003DD34 /* 8003DD30 00039990 93 5B 0D 14 */ stw r26, 0xd14(r27) lbl_8003DD34: /* 8003DD34 00039994 3B BD 00 01 */ addi r29, r29, 1 /* 8003DD38 00039998 D3 FB 0D 10 */ stfs f31, 0xd10(r27) /* 8003DD3C 0003999C 2C 1D 00 02 */ cmpwi r29, 2 /* 8003DD40 000399A0 40 80 00 20 */ bge lbl_8003DD60 lbl_8003DD44: /* 8003DD44 000399A4 3B DE 00 04 */ addi r30, r30, 4 /* 8003DD48 000399A8 3B 9C 00 01 */ addi r28, r28, 1 lbl_8003DD4C: /* 8003DD4C 000399AC 7C 1C F8 00 */ cmpw r28, r31 /* 8003DD50 000399B0 41 80 FE 70 */ blt lbl_8003DBC0 lbl_8003DD54: /* 8003DD54 000399B4 C0 1B 0D 10 */ lfs f0, 0xd10(r27) /* 8003DD58 000399B8 EC 00 E8 2A */ fadds f0, f0, f29 /* 8003DD5C 000399BC D0 1B 0D 10 */ stfs f0, 0xd10(r27) lbl_8003DD60: /* 8003DD60 000399C0 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 8003DD64 000399C4 CB E1 00 70 */ lfd f31, 0x70(r1) /* 8003DD68 000399C8 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 8003DD6C 000399CC CB C1 00 60 */ lfd f30, 0x60(r1) /* 8003DD70 000399D0 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 8003DD74 000399D4 39 61 00 50 */ addi r11, r1, 0x50 /* 8003DD78 000399D8 CB A1 00 50 */ lfd f29, 0x50(r1) /* 8003DD7C 000399DC 48 18 93 F1 */ bl _restgpr_25 /* 8003DD80 000399E0 80 01 00 84 */ lwz r0, 0x84(r1) /* 8003DD84 000399E4 7C 08 03 A6 */ mtlr r0 /* 8003DD88 000399E8 38 21 00 80 */ addi r1, r1, 0x80 /* 8003DD8C 000399EC 4E 80 00 20 */ blr .global func_8003DD90 func_8003DD90: /* 8003DD90 000399F0 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003DD94 000399F4 38 00 00 01 */ li r0, 1 /* 8003DD98 000399F8 98 03 0D 04 */ stb r0, 0xd04(r3) /* 8003DD9C 000399FC D0 03 0D 10 */ stfs f0, 0xd10(r3) /* 8003DDA0 00039A00 4E 80 00 20 */ blr .global func_8003DDA4 func_8003DDA4: /* 8003DDA4 00039A04 C0 02 82 20 */ lfs f0, lbl_80640820-_SDA2_BASE_(r2) /* 8003DDA8 00039A08 38 00 00 00 */ li r0, 0 /* 8003DDAC 00039A0C 2C 04 00 00 */ cmpwi r4, 0 /* 8003DDB0 00039A10 98 03 0D 04 */ stb r0, 0xd04(r3) /* 8003DDB4 00039A14 D0 03 0D 10 */ stfs f0, 0xd10(r3) /* 8003DDB8 00039A18 4D 82 00 20 */ beqlr /* 8003DDBC 00039A1C 38 00 00 02 */ li r0, 2 /* 8003DDC0 00039A20 38 A0 00 00 */ li r5, 0 /* 8003DDC4 00039A24 7C 09 03 A6 */ mtctr r0 lbl_8003DDC8: /* 8003DDC8 00039A28 80 83 0D 18 */ lwz r4, 0xd18(r3) /* 8003DDCC 00039A2C 2C 04 00 00 */ cmpwi r4, 0 /* 8003DDD0 00039A30 41 82 00 20 */ beq lbl_8003DDF0 /* 8003DDD4 00039A34 80 84 00 40 */ lwz r4, 0x40(r4) /* 8003DDD8 00039A38 2C 04 00 00 */ cmpwi r4, 0 /* 8003DDDC 00039A3C 41 82 00 14 */ beq lbl_8003DDF0 /* 8003DDE0 00039A40 80 04 01 04 */ lwz r0, 0x104(r4) /* 8003DDE4 00039A44 60 00 00 04 */ ori r0, r0, 4 /* 8003DDE8 00039A48 90 04 01 04 */ stw r0, 0x104(r4) /* 8003DDEC 00039A4C D0 04 01 10 */ stfs f0, 0x110(r4) lbl_8003DDF0: /* 8003DDF0 00039A50 80 83 0D 1C */ lwz r4, 0xd1c(r3) /* 8003DDF4 00039A54 2C 04 00 00 */ cmpwi r4, 0 /* 8003DDF8 00039A58 41 82 00 20 */ beq lbl_8003DE18 /* 8003DDFC 00039A5C 80 84 00 40 */ lwz r4, 0x40(r4) /* 8003DE00 00039A60 2C 04 00 00 */ cmpwi r4, 0 /* 8003DE04 00039A64 41 82 00 14 */ beq lbl_8003DE18 /* 8003DE08 00039A68 80 04 01 04 */ lwz r0, 0x104(r4) /* 8003DE0C 00039A6C 60 00 00 04 */ ori r0, r0, 4 /* 8003DE10 00039A70 90 04 01 04 */ stw r0, 0x104(r4) /* 8003DE14 00039A74 D0 04 01 10 */ stfs f0, 0x110(r4) lbl_8003DE18: /* 8003DE18 00039A78 80 83 0D 20 */ lwz r4, 0xd20(r3) /* 8003DE1C 00039A7C 2C 04 00 00 */ cmpwi r4, 0 /* 8003DE20 00039A80 41 82 00 20 */ beq lbl_8003DE40 /* 8003DE24 00039A84 80 84 00 40 */ lwz r4, 0x40(r4) /* 8003DE28 00039A88 2C 04 00 00 */ cmpwi r4, 0 /* 8003DE2C 00039A8C 41 82 00 14 */ beq lbl_8003DE40 /* 8003DE30 00039A90 80 04 01 04 */ lwz r0, 0x104(r4) /* 8003DE34 00039A94 60 00 00 04 */ ori r0, r0, 4 /* 8003DE38 00039A98 90 04 01 04 */ stw r0, 0x104(r4) /* 8003DE3C 00039A9C D0 04 01 10 */ stfs f0, 0x110(r4) lbl_8003DE40: /* 8003DE40 00039AA0 38 63 00 0C */ addi r3, r3, 0xc /* 8003DE44 00039AA4 38 A5 00 02 */ addi r5, r5, 2 /* 8003DE48 00039AA8 42 00 FF 80 */ bdnz lbl_8003DDC8 /* 8003DE4C 00039AAC 4E 80 00 20 */ blr .global func_8003DE50 func_8003DE50: /* 8003DE50 00039AB0 88 63 0D 04 */ lbz r3, 0xd04(r3) /* 8003DE54 00039AB4 4E 80 00 20 */ blr .global func_8003DE58 func_8003DE58: /* 8003DE58 00039AB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003DE5C 00039ABC 7C 08 02 A6 */ mflr r0 /* 8003DE60 00039AC0 38 80 00 01 */ li r4, 1 /* 8003DE64 00039AC4 90 01 00 14 */ stw r0, 0x14(r1) /* 8003DE68 00039AC8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003DE6C 00039ACC 7C 7F 1B 78 */ mr r31, r3 /* 8003DE70 00039AD0 4B FF FF 35 */ bl func_8003DDA4 /* 8003DE74 00039AD4 38 7F 0D 04 */ addi r3, r31, 0xd04 /* 8003DE78 00039AD8 4B FF 93 5D */ bl func_800371D4 /* 8003DE7C 00039ADC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003DE80 00039AE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003DE84 00039AE4 7C 08 03 A6 */ mtlr r0 /* 8003DE88 00039AE8 38 21 00 10 */ addi r1, r1, 0x10 /* 8003DE8C 00039AEC 4E 80 00 20 */ blr .global func_8003DE90 func_8003DE90: /* 8003DE90 00039AF0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003DE94 00039AF4 7C 08 02 A6 */ mflr r0 /* 8003DE98 00039AF8 90 01 00 24 */ stw r0, 0x24(r1) /* 8003DE9C 00039AFC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003DEA0 00039B00 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003DEA4 00039B04 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003DEA8 00039B08 7C BD 2B 78 */ mr r29, r5 /* 8003DEAC 00039B0C 93 81 00 10 */ stw r28, 0x10(r1) /* 8003DEB0 00039B10 7C 9C 23 78 */ mr r28, r4 /* 8003DEB4 00039B14 88 03 0D 04 */ lbz r0, 0xd04(r3) /* 8003DEB8 00039B18 2C 00 00 00 */ cmpwi r0, 0 /* 8003DEBC 00039B1C 40 82 00 10 */ bne lbl_8003DECC /* 8003DEC0 00039B20 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8003DEC4 00039B24 2C 00 00 00 */ cmpwi r0, 0 /* 8003DEC8 00039B28 41 82 00 34 */ beq lbl_8003DEFC lbl_8003DECC: /* 8003DECC 00039B2C 7C 7F 1B 78 */ mr r31, r3 /* 8003DED0 00039B30 3B C0 00 00 */ li r30, 0 lbl_8003DED4: /* 8003DED4 00039B34 80 7F 0D 18 */ lwz r3, 0xd18(r31) /* 8003DED8 00039B38 2C 03 00 00 */ cmpwi r3, 0 /* 8003DEDC 00039B3C 41 82 00 10 */ beq lbl_8003DEEC /* 8003DEE0 00039B40 7F 84 E3 78 */ mr r4, r28 /* 8003DEE4 00039B44 7F A5 EB 78 */ mr r5, r29 /* 8003DEE8 00039B48 48 01 07 91 */ bl func_8004E678 lbl_8003DEEC: /* 8003DEEC 00039B4C 3B DE 00 01 */ addi r30, r30, 1 /* 8003DEF0 00039B50 3B FF 00 04 */ addi r31, r31, 4 /* 8003DEF4 00039B54 2C 1E 00 06 */ cmpwi r30, 6 /* 8003DEF8 00039B58 41 80 FF DC */ blt lbl_8003DED4 lbl_8003DEFC: /* 8003DEFC 00039B5C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003DF00 00039B60 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003DF04 00039B64 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003DF08 00039B68 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003DF0C 00039B6C 83 81 00 10 */ lwz r28, 0x10(r1) /* 8003DF10 00039B70 7C 08 03 A6 */ mtlr r0 /* 8003DF14 00039B74 38 21 00 20 */ addi r1, r1, 0x20 /* 8003DF18 00039B78 4E 80 00 20 */ blr .global func_8003DF1C func_8003DF1C: /* 8003DF1C 00039B7C 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8003DF20 00039B80 2C 03 00 00 */ cmpwi r3, 0 /* 8003DF24 00039B84 4D 82 00 20 */ beqlr /* 8003DF28 00039B88 2C 04 00 00 */ cmpwi r4, 0 /* 8003DF2C 00039B8C 41 82 00 08 */ beq lbl_8003DF34 /* 8003DF30 00039B90 48 1B B8 14 */ b func_801F9744 lbl_8003DF34: /* 8003DF34 00039B94 48 1B B8 D4 */ b func_801F9808 /* 8003DF38 00039B98 4E 80 00 20 */ blr .global func_8003DF3C func_8003DF3C: /* 8003DF3C 00039B9C 80 63 0C 00 */ lwz r3, 0xc00(r3) /* 8003DF40 00039BA0 2C 03 00 00 */ cmpwi r3, 0 /* 8003DF44 00039BA4 41 82 00 74 */ beq lbl_8003DFB8 /* 8003DF48 00039BA8 80 C3 00 04 */ lwz r6, 4(r3) /* 8003DF4C 00039BAC 2C 06 00 00 */ cmpwi r6, 0 /* 8003DF50 00039BB0 40 82 00 0C */ bne lbl_8003DF5C /* 8003DF54 00039BB4 38 60 00 00 */ li r3, 0 /* 8003DF58 00039BB8 48 00 00 24 */ b lbl_8003DF7C lbl_8003DF5C: /* 8003DF5C 00039BBC 80 63 00 00 */ lwz r3, 0(r3) /* 8003DF60 00039BC0 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8003DF64 00039BC4 7C 04 00 40 */ cmplw r4, r0 /* 8003DF68 00039BC8 41 80 00 0C */ blt lbl_8003DF74 /* 8003DF6C 00039BCC 38 60 00 00 */ li r3, 0 /* 8003DF70 00039BD0 48 00 00 0C */ b lbl_8003DF7C lbl_8003DF74: /* 8003DF74 00039BD4 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 8003DF78 00039BD8 7C 66 00 2E */ lwzx r3, r6, r0 lbl_8003DF7C: /* 8003DF7C 00039BDC 2C 03 00 00 */ cmpwi r3, 0 /* 8003DF80 00039BE0 41 82 00 38 */ beq lbl_8003DFB8 /* 8003DF84 00039BE4 80 83 00 08 */ lwz r4, 8(r3) /* 8003DF88 00039BE8 2C 04 00 00 */ cmpwi r4, 0 /* 8003DF8C 00039BEC 40 82 00 0C */ bne lbl_8003DF98 /* 8003DF90 00039BF0 38 60 00 00 */ li r3, 0 /* 8003DF94 00039BF4 4E 80 00 20 */ blr lbl_8003DF98: /* 8003DF98 00039BF8 A0 03 00 DE */ lhz r0, 0xde(r3) /* 8003DF9C 00039BFC 7C 05 00 40 */ cmplw r5, r0 /* 8003DFA0 00039C00 41 80 00 0C */ blt lbl_8003DFAC /* 8003DFA4 00039C04 38 60 00 00 */ li r3, 0 /* 8003DFA8 00039C08 4E 80 00 20 */ blr lbl_8003DFAC: /* 8003DFAC 00039C0C 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d /* 8003DFB0 00039C10 7C 64 00 2E */ lwzx r3, r4, r0 /* 8003DFB4 00039C14 4E 80 00 20 */ blr lbl_8003DFB8: /* 8003DFB8 00039C18 38 60 00 00 */ li r3, 0 /* 8003DFBC 00039C1C 4E 80 00 20 */ blr .global func_8003DFC0 func_8003DFC0: /* 8003DFC0 00039C20 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003DFC4 00039C24 7C 08 02 A6 */ mflr r0 /* 8003DFC8 00039C28 38 80 00 00 */ li r4, 0 /* 8003DFCC 00039C2C 90 01 00 14 */ stw r0, 0x14(r1) /* 8003DFD0 00039C30 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003DFD4 00039C34 93 C1 00 08 */ stw r30, 8(r1) /* 8003DFD8 00039C38 7C 7E 1B 78 */ mr r30, r3 /* 8003DFDC 00039C3C 4B FF E2 81 */ bl func_8003C25C /* 8003DFE0 00039C40 54 7F 04 3E */ clrlwi r31, r3, 0x10 /* 8003DFE4 00039C44 7F C3 F3 78 */ mr r3, r30 /* 8003DFE8 00039C48 38 80 00 0A */ li r4, 0xa /* 8003DFEC 00039C4C 4B FF E2 71 */ bl func_8003C25C /* 8003DFF0 00039C50 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8003DFF4 00039C54 7C 60 F8 50 */ subf r3, r0, r31 /* 8003DFF8 00039C58 7C 1F 00 50 */ subf r0, r31, r0 /* 8003DFFC 00039C5C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E000 00039C60 7C 60 03 78 */ or r0, r3, r0 /* 8003E004 00039C64 83 C1 00 08 */ lwz r30, 8(r1) /* 8003E008 00039C68 54 03 0F FE */ srwi r3, r0, 0x1f /* 8003E00C 00039C6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E010 00039C70 7C 08 03 A6 */ mtlr r0 /* 8003E014 00039C74 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E018 00039C78 4E 80 00 20 */ blr .global func_8003E01C func_8003E01C: /* 8003E01C 00039C7C 38 A0 00 01 */ li r5, 1 /* 8003E020 00039C80 38 6D 97 B0 */ addi r3, r13, lbl_8063EA70-_SDA_BASE_ /* 8003E024 00039C84 38 80 00 04 */ li r4, 4 /* 8003E028 00039C88 38 00 00 00 */ li r0, 0 /* 8003E02C 00039C8C 98 AD 97 B0 */ stb r5, lbl_8063EA70-_SDA_BASE_(r13) /* 8003E030 00039C90 B0 83 00 02 */ sth r4, 2(r3) /* 8003E034 00039C94 98 03 00 04 */ stb r0, 4(r3) /* 8003E038 00039C98 4E 80 00 20 */ blr .global func_8003E03C func_8003E03C: /* 8003E03C 00039C9C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E040 00039CA0 7C 08 02 A6 */ mflr r0 /* 8003E044 00039CA4 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E048 00039CA8 80 6D 97 C0 */ lwz r3, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E04C 00039CAC 2C 03 00 00 */ cmpwi r3, 0 /* 8003E050 00039CB0 41 82 00 08 */ beq lbl_8003E058 /* 8003E054 00039CB4 48 19 CA 65 */ bl func_801DAAB8 lbl_8003E058: /* 8003E058 00039CB8 38 60 00 90 */ li r3, 0x90 /* 8003E05C 00039CBC 48 19 C9 D5 */ bl func_801DAA30 /* 8003E060 00039CC0 2C 03 00 00 */ cmpwi r3, 0 /* 8003E064 00039CC4 41 82 00 08 */ beq lbl_8003E06C /* 8003E068 00039CC8 48 00 00 FD */ bl func_8003E164 lbl_8003E06C: /* 8003E06C 00039CCC 3C 80 80 04 */ lis r4, lbl_8003E124@ha /* 8003E070 00039CD0 3C A0 80 04 */ lis r5, lbl_8003E158@ha /* 8003E074 00039CD4 90 6D 97 C0 */ stw r3, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E078 00039CD8 38 84 E1 24 */ addi r4, r4, lbl_8003E124@l /* 8003E07C 00039CDC 80 6D A4 B8 */ lwz r3, lbl_8063F778-_SDA_BASE_(r13) /* 8003E080 00039CE0 38 A5 E1 58 */ addi r5, r5, lbl_8003E158@l /* 8003E084 00039CE4 38 C0 00 03 */ li r6, 3 /* 8003E088 00039CE8 38 E0 00 0C */ li r7, 0xc /* 8003E08C 00039CEC 48 20 0A CD */ bl func_8023EB58 /* 8003E090 00039CF0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E094 00039CF4 7C 08 03 A6 */ mtlr r0 /* 8003E098 00039CF8 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E09C 00039CFC 4E 80 00 20 */ blr .global func_8003E0A0 func_8003E0A0: /* 8003E0A0 00039D00 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003E0A4 00039D04 7C 08 02 A6 */ mflr r0 /* 8003E0A8 00039D08 90 01 00 24 */ stw r0, 0x24(r1) /* 8003E0AC 00039D0C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003E0B0 00039D10 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003E0B4 00039D14 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003E0B8 00039D18 80 0D 97 C0 */ lwz r0, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E0BC 00039D1C 2C 00 00 00 */ cmpwi r0, 0 /* 8003E0C0 00039D20 41 82 00 48 */ beq lbl_8003E108 /* 8003E0C4 00039D24 3B A0 00 00 */ li r29, 0 /* 8003E0C8 00039D28 3B C0 00 00 */ li r30, 0 /* 8003E0CC 00039D2C 3B E0 00 00 */ li r31, 0 lbl_8003E0D0: /* 8003E0D0 00039D30 80 0D 97 C0 */ lwz r0, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E0D4 00039D34 7C 60 F2 14 */ add r3, r0, r30 /* 8003E0D8 00039D38 80 63 00 10 */ lwz r3, 0x10(r3) /* 8003E0DC 00039D3C 2C 03 00 00 */ cmpwi r3, 0 /* 8003E0E0 00039D40 41 82 00 18 */ beq lbl_8003E0F8 /* 8003E0E4 00039D44 38 80 00 01 */ li r4, 1 /* 8003E0E8 00039D48 4B FF 94 55 */ bl func_8003753C /* 8003E0EC 00039D4C 80 0D 97 C0 */ lwz r0, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E0F0 00039D50 7C 60 F2 14 */ add r3, r0, r30 /* 8003E0F4 00039D54 93 E3 00 10 */ stw r31, 0x10(r3) lbl_8003E0F8: /* 8003E0F8 00039D58 3B BD 00 01 */ addi r29, r29, 1 /* 8003E0FC 00039D5C 3B DE 00 04 */ addi r30, r30, 4 /* 8003E100 00039D60 2C 1D 00 20 */ cmpwi r29, 0x20 /* 8003E104 00039D64 41 80 FF CC */ blt lbl_8003E0D0 lbl_8003E108: /* 8003E108 00039D68 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003E10C 00039D6C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003E110 00039D70 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003E114 00039D74 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003E118 00039D78 7C 08 03 A6 */ mtlr r0 /* 8003E11C 00039D7C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003E120 00039D80 4E 80 00 20 */ blr lbl_8003E124: /* 8003E124 00039D84 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E128 00039D88 7C 08 02 A6 */ mflr r0 /* 8003E12C 00039D8C 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E130 00039D90 80 0D 97 C0 */ lwz r0, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E134 00039D94 2C 00 00 00 */ cmpwi r0, 0 /* 8003E138 00039D98 41 82 00 10 */ beq lbl_8003E148 /* 8003E13C 00039D9C 4B FC 92 61 */ bl func_8000739C /* 8003E140 00039DA0 80 6D 97 C0 */ lwz r3, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E144 00039DA4 48 00 03 75 */ bl func_8003E4B8 lbl_8003E148: /* 8003E148 00039DA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E14C 00039DAC 7C 08 03 A6 */ mtlr r0 /* 8003E150 00039DB0 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E154 00039DB4 4E 80 00 20 */ blr lbl_8003E158: /* 8003E158 00039DB8 4E 80 00 20 */ blr .global func_8003E15C func_8003E15C: /* 8003E15C 00039DBC 80 6D 97 C0 */ lwz r3, lbl_8063EA80-_SDA_BASE_(r13) /* 8003E160 00039DC0 4E 80 00 20 */ blr .global func_8003E164 func_8003E164: /* 8003E164 00039DC4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E168 00039DC8 7C 08 02 A6 */ mflr r0 /* 8003E16C 00039DCC 38 80 00 00 */ li r4, 0 /* 8003E170 00039DD0 38 A0 00 80 */ li r5, 0x80 /* 8003E174 00039DD4 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E178 00039DD8 38 00 00 00 */ li r0, 0 /* 8003E17C 00039DDC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E180 00039DE0 7C 7F 1B 78 */ mr r31, r3 /* 8003E184 00039DE4 90 03 00 00 */ stw r0, 0(r3) /* 8003E188 00039DE8 38 63 00 10 */ addi r3, r3, 0x10 /* 8003E18C 00039DEC 4B FC 5F 79 */ bl memset /* 8003E190 00039DF0 3C 80 80 64 */ lis r4, lbl_8063CE34@ha /* 8003E194 00039DF4 7F E3 FB 78 */ mr r3, r31 /* 8003E198 00039DF8 38 84 CE 34 */ addi r4, r4, lbl_8063CE34@l /* 8003E19C 00039DFC 38 04 00 10 */ addi r0, r4, 0x10 /* 8003E1A0 00039E00 90 9F 00 04 */ stw r4, 4(r31) /* 8003E1A4 00039E04 90 1F 00 08 */ stw r0, 8(r31) /* 8003E1A8 00039E08 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E1AC 00039E0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E1B0 00039E10 7C 08 03 A6 */ mtlr r0 /* 8003E1B4 00039E14 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E1B8 00039E18 4E 80 00 20 */ blr .global func_8003E1BC func_8003E1BC: /* 8003E1BC 00039E1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E1C0 00039E20 7C 08 02 A6 */ mflr r0 /* 8003E1C4 00039E24 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E1C8 00039E28 38 00 00 20 */ li r0, 0x20 /* 8003E1CC 00039E2C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E1D0 00039E30 3B E0 00 00 */ li r31, 0 /* 8003E1D4 00039E34 93 C1 00 08 */ stw r30, 8(r1) /* 8003E1D8 00039E38 7C 7E 1B 78 */ mr r30, r3 /* 8003E1DC 00039E3C 7C 09 03 A6 */ mtctr r0 lbl_8003E1E0: /* 8003E1E0 00039E40 80 03 00 10 */ lwz r0, 0x10(r3) /* 8003E1E4 00039E44 2C 00 00 00 */ cmpwi r0, 0 /* 8003E1E8 00039E48 40 82 00 28 */ bne lbl_8003E210 /* 8003E1EC 00039E4C 38 60 0D F8 */ li r3, 0xdf8 /* 8003E1F0 00039E50 48 19 C8 41 */ bl func_801DAA30 /* 8003E1F4 00039E54 2C 03 00 00 */ cmpwi r3, 0 /* 8003E1F8 00039E58 41 82 00 08 */ beq lbl_8003E200 /* 8003E1FC 00039E5C 4B FF 90 89 */ bl func_80037284 lbl_8003E200: /* 8003E200 00039E60 57 E0 10 3A */ slwi r0, r31, 2 /* 8003E204 00039E64 7C 9E 02 14 */ add r4, r30, r0 /* 8003E208 00039E68 90 64 00 10 */ stw r3, 0x10(r4) /* 8003E20C 00039E6C 48 00 00 14 */ b lbl_8003E220 lbl_8003E210: /* 8003E210 00039E70 38 63 00 04 */ addi r3, r3, 4 /* 8003E214 00039E74 3B FF 00 01 */ addi r31, r31, 1 /* 8003E218 00039E78 42 00 FF C8 */ bdnz lbl_8003E1E0 /* 8003E21C 00039E7C 38 60 00 00 */ li r3, 0 lbl_8003E220: /* 8003E220 00039E80 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E224 00039E84 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E228 00039E88 83 C1 00 08 */ lwz r30, 8(r1) /* 8003E22C 00039E8C 7C 08 03 A6 */ mtlr r0 /* 8003E230 00039E90 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E234 00039E94 4E 80 00 20 */ blr .global func_8003E238 func_8003E238: /* 8003E238 00039E98 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003E23C 00039E9C 7C 08 02 A6 */ mflr r0 /* 8003E240 00039EA0 2C 04 00 00 */ cmpwi r4, 0 /* 8003E244 00039EA4 90 01 00 24 */ stw r0, 0x24(r1) /* 8003E248 00039EA8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003E24C 00039EAC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003E250 00039EB0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003E254 00039EB4 7C 7D 1B 78 */ mr r29, r3 /* 8003E258 00039EB8 41 82 00 80 */ beq lbl_8003E2D8 /* 8003E25C 00039EBC 38 00 00 20 */ li r0, 0x20 /* 8003E260 00039EC0 83 E4 0C 48 */ lwz r31, 0xc48(r4) /* 8003E264 00039EC4 3B C0 00 00 */ li r30, 0 /* 8003E268 00039EC8 7C 09 03 A6 */ mtctr r0 lbl_8003E26C: /* 8003E26C 00039ECC 80 03 00 10 */ lwz r0, 0x10(r3) /* 8003E270 00039ED0 7C 00 20 40 */ cmplw r0, r4 /* 8003E274 00039ED4 40 82 00 58 */ bne lbl_8003E2CC /* 8003E278 00039ED8 7C 83 23 78 */ mr r3, r4 /* 8003E27C 00039EDC 38 80 00 01 */ li r4, 1 /* 8003E280 00039EE0 4B FF 92 BD */ bl func_8003753C /* 8003E284 00039EE4 57 C0 10 3A */ slwi r0, r30, 2 /* 8003E288 00039EE8 2C 1F 00 00 */ cmpwi r31, 0 /* 8003E28C 00039EEC 7C 7D 02 14 */ add r3, r29, r0 /* 8003E290 00039EF0 38 00 00 00 */ li r0, 0 /* 8003E294 00039EF4 90 03 00 10 */ stw r0, 0x10(r3) /* 8003E298 00039EF8 41 82 00 40 */ beq lbl_8003E2D8 /* 8003E29C 00039EFC 28 1F 00 0C */ cmplwi r31, 0xc /* 8003E2A0 00039F00 41 82 00 38 */ beq lbl_8003E2D8 /* 8003E2A4 00039F04 7F A3 EB 78 */ mr r3, r29 /* 8003E2A8 00039F08 7F E4 FB 78 */ mr r4, r31 /* 8003E2AC 00039F0C 48 00 00 49 */ bl func_8003E2F4 /* 8003E2B0 00039F10 2C 03 00 00 */ cmpwi r3, 0 /* 8003E2B4 00039F14 40 82 00 24 */ bne lbl_8003E2D8 /* 8003E2B8 00039F18 7F E3 FB 78 */ mr r3, r31 /* 8003E2BC 00039F1C 48 20 B5 D5 */ bl func_80249890 /* 8003E2C0 00039F20 7F E3 FB 78 */ mr r3, r31 /* 8003E2C4 00039F24 48 19 D3 B1 */ bl func_801DB674 /* 8003E2C8 00039F28 48 00 00 10 */ b lbl_8003E2D8 lbl_8003E2CC: /* 8003E2CC 00039F2C 38 63 00 04 */ addi r3, r3, 4 /* 8003E2D0 00039F30 3B DE 00 01 */ addi r30, r30, 1 /* 8003E2D4 00039F34 42 00 FF 98 */ bdnz lbl_8003E26C lbl_8003E2D8: /* 8003E2D8 00039F38 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003E2DC 00039F3C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003E2E0 00039F40 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003E2E4 00039F44 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003E2E8 00039F48 7C 08 03 A6 */ mtlr r0 /* 8003E2EC 00039F4C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003E2F0 00039F50 4E 80 00 20 */ blr .global func_8003E2F4 func_8003E2F4: /* 8003E2F4 00039F54 38 00 00 08 */ li r0, 8 /* 8003E2F8 00039F58 38 C0 00 00 */ li r6, 0 /* 8003E2FC 00039F5C 38 E0 00 00 */ li r7, 0 /* 8003E300 00039F60 7C 09 03 A6 */ mtctr r0 lbl_8003E304: /* 8003E304 00039F64 80 A3 00 10 */ lwz r5, 0x10(r3) /* 8003E308 00039F68 2C 05 00 00 */ cmpwi r5, 0 /* 8003E30C 00039F6C 41 82 00 14 */ beq lbl_8003E320 /* 8003E310 00039F70 80 05 0C 48 */ lwz r0, 0xc48(r5) /* 8003E314 00039F74 7C 04 00 40 */ cmplw r4, r0 /* 8003E318 00039F78 40 82 00 08 */ bne lbl_8003E320 /* 8003E31C 00039F7C 38 C6 00 01 */ addi r6, r6, 1 lbl_8003E320: /* 8003E320 00039F80 80 A3 00 14 */ lwz r5, 0x14(r3) /* 8003E324 00039F84 2C 05 00 00 */ cmpwi r5, 0 /* 8003E328 00039F88 41 82 00 14 */ beq lbl_8003E33C /* 8003E32C 00039F8C 80 05 0C 48 */ lwz r0, 0xc48(r5) /* 8003E330 00039F90 7C 04 00 40 */ cmplw r4, r0 /* 8003E334 00039F94 40 82 00 08 */ bne lbl_8003E33C /* 8003E338 00039F98 38 C6 00 01 */ addi r6, r6, 1 lbl_8003E33C: /* 8003E33C 00039F9C 80 A3 00 18 */ lwz r5, 0x18(r3) /* 8003E340 00039FA0 2C 05 00 00 */ cmpwi r5, 0 /* 8003E344 00039FA4 41 82 00 14 */ beq lbl_8003E358 /* 8003E348 00039FA8 80 05 0C 48 */ lwz r0, 0xc48(r5) /* 8003E34C 00039FAC 7C 04 00 40 */ cmplw r4, r0 /* 8003E350 00039FB0 40 82 00 08 */ bne lbl_8003E358 /* 8003E354 00039FB4 38 C6 00 01 */ addi r6, r6, 1 lbl_8003E358: /* 8003E358 00039FB8 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8003E35C 00039FBC 2C 05 00 00 */ cmpwi r5, 0 /* 8003E360 00039FC0 41 82 00 14 */ beq lbl_8003E374 /* 8003E364 00039FC4 80 05 0C 48 */ lwz r0, 0xc48(r5) /* 8003E368 00039FC8 7C 04 00 40 */ cmplw r4, r0 /* 8003E36C 00039FCC 40 82 00 08 */ bne lbl_8003E374 /* 8003E370 00039FD0 38 C6 00 01 */ addi r6, r6, 1 lbl_8003E374: /* 8003E374 00039FD4 38 63 00 10 */ addi r3, r3, 0x10 /* 8003E378 00039FD8 38 E7 00 03 */ addi r7, r7, 3 /* 8003E37C 00039FDC 42 00 FF 88 */ bdnz lbl_8003E304 /* 8003E380 00039FE0 7C C3 33 78 */ mr r3, r6 /* 8003E384 00039FE4 4E 80 00 20 */ blr .global func_8003E388 func_8003E388: /* 8003E388 00039FE8 38 00 00 04 */ li r0, 4 /* 8003E38C 00039FEC 90 83 00 0C */ stw r4, 0xc(r3) /* 8003E390 00039FF0 38 C0 00 00 */ li r6, 0 /* 8003E394 00039FF4 38 80 00 00 */ li r4, 0 /* 8003E398 00039FF8 7C 09 03 A6 */ mtctr r0 lbl_8003E39C: /* 8003E39C 00039FFC 80 A3 00 10 */ lwz r5, 0x10(r3) /* 8003E3A0 0003A000 2C 05 00 00 */ cmpwi r5, 0 /* 8003E3A4 0003A004 41 82 00 08 */ beq lbl_8003E3AC /* 8003E3A8 0003A008 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E3AC: /* 8003E3AC 0003A00C 80 A3 00 14 */ lwz r5, 0x14(r3) /* 8003E3B0 0003A010 2C 05 00 00 */ cmpwi r5, 0 /* 8003E3B4 0003A014 41 82 00 08 */ beq lbl_8003E3BC /* 8003E3B8 0003A018 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E3BC: /* 8003E3BC 0003A01C 80 A3 00 18 */ lwz r5, 0x18(r3) /* 8003E3C0 0003A020 2C 05 00 00 */ cmpwi r5, 0 /* 8003E3C4 0003A024 41 82 00 08 */ beq lbl_8003E3CC /* 8003E3C8 0003A028 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E3CC: /* 8003E3CC 0003A02C 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8003E3D0 0003A030 2C 05 00 00 */ cmpwi r5, 0 /* 8003E3D4 0003A034 41 82 00 08 */ beq lbl_8003E3DC /* 8003E3D8 0003A038 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E3DC: /* 8003E3DC 0003A03C 80 A3 00 20 */ lwz r5, 0x20(r3) /* 8003E3E0 0003A040 2C 05 00 00 */ cmpwi r5, 0 /* 8003E3E4 0003A044 41 82 00 08 */ beq lbl_8003E3EC /* 8003E3E8 0003A048 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E3EC: /* 8003E3EC 0003A04C 80 A3 00 24 */ lwz r5, 0x24(r3) /* 8003E3F0 0003A050 2C 05 00 00 */ cmpwi r5, 0 /* 8003E3F4 0003A054 41 82 00 08 */ beq lbl_8003E3FC /* 8003E3F8 0003A058 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E3FC: /* 8003E3FC 0003A05C 80 A3 00 28 */ lwz r5, 0x28(r3) /* 8003E400 0003A060 2C 05 00 00 */ cmpwi r5, 0 /* 8003E404 0003A064 41 82 00 08 */ beq lbl_8003E40C /* 8003E408 0003A068 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E40C: /* 8003E40C 0003A06C 80 A3 00 2C */ lwz r5, 0x2c(r3) /* 8003E410 0003A070 2C 05 00 00 */ cmpwi r5, 0 /* 8003E414 0003A074 41 82 00 08 */ beq lbl_8003E41C /* 8003E418 0003A078 90 85 0C B0 */ stw r4, 0xcb0(r5) lbl_8003E41C: /* 8003E41C 0003A07C 38 63 00 20 */ addi r3, r3, 0x20 /* 8003E420 0003A080 38 C6 00 07 */ addi r6, r6, 7 /* 8003E424 0003A084 42 00 FF 78 */ bdnz lbl_8003E39C /* 8003E428 0003A088 4E 80 00 20 */ blr .global func_8003E42C func_8003E42C: /* 8003E42C 0003A08C 80 63 00 0C */ lwz r3, 0xc(r3) /* 8003E430 0003A090 4E 80 00 20 */ blr .global func_8003E434 func_8003E434: /* 8003E434 0003A094 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003E438 0003A098 7C 08 02 A6 */ mflr r0 /* 8003E43C 0003A09C 90 01 00 24 */ stw r0, 0x24(r1) /* 8003E440 0003A0A0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8003E444 0003A0A4 7C BF 2B 78 */ mr r31, r5 /* 8003E448 0003A0A8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8003E44C 0003A0AC 7C 9E 23 78 */ mr r30, r4 /* 8003E450 0003A0B0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8003E454 0003A0B4 7C 7D 1B 78 */ mr r29, r3 /* 8003E458 0003A0B8 80 63 00 04 */ lwz r3, 4(r3) /* 8003E45C 0003A0BC 48 35 2D 21 */ bl func_8039117C /* 8003E460 0003A0C0 7C 03 F0 40 */ cmplw r3, r30 /* 8003E464 0003A0C4 40 80 00 10 */ bge lbl_8003E474 /* 8003E468 0003A0C8 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 8003E46C 0003A0CC 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l /* 8003E470 0003A0D0 48 00 00 2C */ b lbl_8003E49C lbl_8003E474: /* 8003E474 0003A0D4 80 7D 00 04 */ lwz r3, 4(r29) /* 8003E478 0003A0D8 7F C4 F3 78 */ mr r4, r30 /* 8003E47C 0003A0DC 7F E5 FB 78 */ mr r5, r31 /* 8003E480 0003A0E0 48 35 2E 45 */ bl func_803912C4 /* 8003E484 0003A0E4 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003E488 0003A0E8 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 8003E48C 0003A0EC 28 00 00 FF */ cmplwi r0, 0xff /* 8003E490 0003A0F0 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l /* 8003E494 0003A0F4 41 82 00 08 */ beq lbl_8003E49C /* 8003E498 0003A0F8 7C 03 03 78 */ mr r3, r0 lbl_8003E49C: /* 8003E49C 0003A0FC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003E4A0 0003A100 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8003E4A4 0003A104 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8003E4A8 0003A108 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8003E4AC 0003A10C 7C 08 03 A6 */ mtlr r0 /* 8003E4B0 0003A110 38 21 00 20 */ addi r1, r1, 0x20 /* 8003E4B4 0003A114 4E 80 00 20 */ blr .global func_8003E4B8 func_8003E4B8: /* 8003E4B8 0003A118 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003E4BC 0003A11C 7C 08 02 A6 */ mflr r0 /* 8003E4C0 0003A120 90 01 00 24 */ stw r0, 0x24(r1) /* 8003E4C4 0003A124 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8003E4C8 0003A128 FF E0 08 90 */ fmr f31, f1 /* 8003E4CC 0003A12C 93 E1 00 14 */ stw r31, 0x14(r1) /* 8003E4D0 0003A130 93 C1 00 10 */ stw r30, 0x10(r1) /* 8003E4D4 0003A134 3B C0 00 00 */ li r30, 0 /* 8003E4D8 0003A138 93 A1 00 0C */ stw r29, 0xc(r1) /* 8003E4DC 0003A13C 7C 7D 1B 78 */ mr r29, r3 /* 8003E4E0 0003A140 7F BF EB 78 */ mr r31, r29 lbl_8003E4E4: /* 8003E4E4 0003A144 80 9F 00 10 */ lwz r4, 0x10(r31) /* 8003E4E8 0003A148 2C 04 00 00 */ cmpwi r4, 0 /* 8003E4EC 0003A14C 41 82 00 28 */ beq lbl_8003E514 /* 8003E4F0 0003A150 80 04 00 00 */ lwz r0, 0(r4) /* 8003E4F4 0003A154 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17 /* 8003E4F8 0003A158 41 82 00 10 */ beq lbl_8003E508 /* 8003E4FC 0003A15C 7F A3 EB 78 */ mr r3, r29 /* 8003E500 0003A160 4B FF FD 39 */ bl func_8003E238 /* 8003E504 0003A164 48 00 00 10 */ b lbl_8003E514 lbl_8003E508: /* 8003E508 0003A168 FC 20 F8 90 */ fmr f1, f31 /* 8003E50C 0003A16C 7C 83 23 78 */ mr r3, r4 /* 8003E510 0003A170 4B FF D3 C5 */ bl func_8003B8D4 lbl_8003E514: /* 8003E514 0003A174 3B DE 00 01 */ addi r30, r30, 1 /* 8003E518 0003A178 3B FF 00 04 */ addi r31, r31, 4 /* 8003E51C 0003A17C 2C 1E 00 20 */ cmpwi r30, 0x20 /* 8003E520 0003A180 41 80 FF C4 */ blt lbl_8003E4E4 /* 8003E524 0003A184 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003E528 0003A188 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8003E52C 0003A18C 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8003E530 0003A190 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8003E534 0003A194 83 A1 00 0C */ lwz r29, 0xc(r1) /* 8003E538 0003A198 7C 08 03 A6 */ mtlr r0 /* 8003E53C 0003A19C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003E540 0003A1A0 4E 80 00 20 */ blr .global func_8003E544 func_8003E544: /* 8003E544 0003A1A4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003E548 0003A1A8 7C 08 02 A6 */ mflr r0 /* 8003E54C 0003A1AC 90 01 00 34 */ stw r0, 0x34(r1) /* 8003E550 0003A1B0 39 61 00 30 */ addi r11, r1, 0x30 /* 8003E554 0003A1B4 48 18 8B C5 */ bl _savegpr_23 /* 8003E558 0003A1B8 7C 77 1B 78 */ mr r23, r3 /* 8003E55C 0003A1BC 80 63 00 04 */ lwz r3, 4(r3) /* 8003E560 0003A1C0 7C 98 23 78 */ mr r24, r4 /* 8003E564 0003A1C4 7C B9 2B 78 */ mr r25, r5 /* 8003E568 0003A1C8 7C DA 33 78 */ mr r26, r6 /* 8003E56C 0003A1CC 3B 80 FF FF */ li r28, -1 /* 8003E570 0003A1D0 48 35 2C 0D */ bl func_8039117C /* 8003E574 0003A1D4 28 1A 00 02 */ cmplwi r26, 2 /* 8003E578 0003A1D8 7C 7D 1B 78 */ mr r29, r3 /* 8003E57C 0003A1DC 41 80 00 08 */ blt lbl_8003E584 /* 8003E580 0003A1E0 3B 40 00 00 */ li r26, 0 lbl_8003E584: /* 8003E584 0003A1E4 3B 60 00 00 */ li r27, 0 /* 8003E588 0003A1E8 48 00 00 64 */ b lbl_8003E5EC lbl_8003E58C: /* 8003E58C 0003A1EC 80 77 00 04 */ lwz r3, 4(r23) /* 8003E590 0003A1F0 7F 64 DB 78 */ mr r4, r27 /* 8003E594 0003A1F4 48 35 2C 05 */ bl func_80391198 /* 8003E598 0003A1F8 7C 7E 1B 78 */ mr r30, r3 /* 8003E59C 0003A1FC 80 77 00 04 */ lwz r3, 4(r23) /* 8003E5A0 0003A200 7F 64 DB 78 */ mr r4, r27 /* 8003E5A4 0003A204 48 35 2C 29 */ bl func_803911CC /* 8003E5A8 0003A208 7C 7F 1B 78 */ mr r31, r3 /* 8003E5AC 0003A20C 80 77 00 04 */ lwz r3, 4(r23) /* 8003E5B0 0003A210 7F 64 DB 78 */ mr r4, r27 /* 8003E5B4 0003A214 48 35 2C 85 */ bl func_80391238 /* 8003E5B8 0003A218 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 8003E5BC 0003A21C 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8003E5C0 0003A220 7C 00 C0 40 */ cmplw r0, r24 /* 8003E5C4 0003A224 40 82 00 24 */ bne lbl_8003E5E8 /* 8003E5C8 0003A228 57 E0 06 3E */ clrlwi r0, r31, 0x18 /* 8003E5CC 0003A22C 7C 00 C8 40 */ cmplw r0, r25 /* 8003E5D0 0003A230 40 82 00 18 */ bne lbl_8003E5E8 /* 8003E5D4 0003A234 7C 1A 18 40 */ cmplw r26, r3 /* 8003E5D8 0003A238 7F 7C DB 78 */ mr r28, r27 /* 8003E5DC 0003A23C 40 82 00 0C */ bne lbl_8003E5E8 /* 8003E5E0 0003A240 7F 63 DB 78 */ mr r3, r27 /* 8003E5E4 0003A244 48 00 00 14 */ b lbl_8003E5F8 lbl_8003E5E8: /* 8003E5E8 0003A248 3B 7B 00 01 */ addi r27, r27, 1 lbl_8003E5EC: /* 8003E5EC 0003A24C 7C 1B E8 00 */ cmpw r27, r29 /* 8003E5F0 0003A250 41 80 FF 9C */ blt lbl_8003E58C /* 8003E5F4 0003A254 7F 83 E3 78 */ mr r3, r28 lbl_8003E5F8: /* 8003E5F8 0003A258 39 61 00 30 */ addi r11, r1, 0x30 /* 8003E5FC 0003A25C 48 18 8B 69 */ bl _restgpr_23 /* 8003E600 0003A260 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003E604 0003A264 7C 08 03 A6 */ mtlr r0 /* 8003E608 0003A268 38 21 00 30 */ addi r1, r1, 0x30 /* 8003E60C 0003A26C 4E 80 00 20 */ blr .global func_8003E610 func_8003E610: /* 8003E610 0003A270 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E614 0003A274 7C 08 02 A6 */ mflr r0 /* 8003E618 0003A278 38 A0 00 00 */ li r5, 0 /* 8003E61C 0003A27C 38 C0 00 FF */ li r6, 0xff /* 8003E620 0003A280 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E624 0003A284 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E628 0003A288 7C 7F 1B 78 */ mr r31, r3 /* 8003E62C 0003A28C 4B FF FF 19 */ bl func_8003E544 /* 8003E630 0003A290 2C 03 00 00 */ cmpwi r3, 0 /* 8003E634 0003A294 7C 64 1B 78 */ mr r4, r3 /* 8003E638 0003A298 41 80 00 10 */ blt lbl_8003E648 /* 8003E63C 0003A29C 80 7F 00 04 */ lwz r3, 4(r31) /* 8003E640 0003A2A0 48 35 2B C1 */ bl func_80391200 /* 8003E644 0003A2A4 48 00 00 08 */ b lbl_8003E64C lbl_8003E648: /* 8003E648 0003A2A8 38 60 FF FF */ li r3, -1 lbl_8003E64C: /* 8003E64C 0003A2AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E650 0003A2B0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E654 0003A2B4 7C 08 03 A6 */ mtlr r0 /* 8003E658 0003A2B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E65C 0003A2BC 4E 80 00 20 */ blr .global func_8003E660 func_8003E660: /* 8003E660 0003A2C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E664 0003A2C4 7C 08 02 A6 */ mflr r0 /* 8003E668 0003A2C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E66C 0003A2CC 80 63 00 08 */ lwz r3, 8(r3) /* 8003E670 0003A2D0 2C 03 00 00 */ cmpwi r3, 0 /* 8003E674 0003A2D4 41 82 00 10 */ beq lbl_8003E684 /* 8003E678 0003A2D8 48 35 37 75 */ bl func_80391DEC /* 8003E67C 0003A2DC 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 8003E680 0003A2E0 48 00 00 08 */ b lbl_8003E688 lbl_8003E684: /* 8003E684 0003A2E4 38 60 FF FF */ li r3, -1 lbl_8003E688: /* 8003E688 0003A2E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E68C 0003A2EC 7C 08 03 A6 */ mtlr r0 /* 8003E690 0003A2F0 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E694 0003A2F4 4E 80 00 20 */ blr .global func_8003E698 func_8003E698: /* 8003E698 0003A2F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E69C 0003A2FC 7C 08 02 A6 */ mflr r0 /* 8003E6A0 0003A300 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E6A4 0003A304 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E6A8 0003A308 7C 7F 1B 78 */ mr r31, r3 /* 8003E6AC 0003A30C 4B FF FE 99 */ bl func_8003E544 /* 8003E6B0 0003A310 2C 03 00 00 */ cmpwi r3, 0 /* 8003E6B4 0003A314 7C 64 1B 78 */ mr r4, r3 /* 8003E6B8 0003A318 41 80 00 10 */ blt lbl_8003E6C8 /* 8003E6BC 0003A31C 80 7F 00 04 */ lwz r3, 4(r31) /* 8003E6C0 0003A320 48 35 2C 59 */ bl func_80391318 /* 8003E6C4 0003A324 48 00 00 08 */ b lbl_8003E6CC lbl_8003E6C8: /* 8003E6C8 0003A328 38 60 00 00 */ li r3, 0 lbl_8003E6CC: /* 8003E6CC 0003A32C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E6D0 0003A330 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E6D4 0003A334 7C 08 03 A6 */ mtlr r0 /* 8003E6D8 0003A338 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E6DC 0003A33C 4E 80 00 20 */ blr .global func_8003E6E0 func_8003E6E0: /* 8003E6E0 0003A340 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E6E4 0003A344 7C 08 02 A6 */ mflr r0 /* 8003E6E8 0003A348 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E6EC 0003A34C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E6F0 0003A350 7C BF 2B 78 */ mr r31, r5 /* 8003E6F4 0003A354 7C C5 33 78 */ mr r5, r6 /* 8003E6F8 0003A358 7C E6 3B 78 */ mr r6, r7 /* 8003E6FC 0003A35C 93 C1 00 08 */ stw r30, 8(r1) /* 8003E700 0003A360 7C 7E 1B 78 */ mr r30, r3 /* 8003E704 0003A364 4B FF FE 41 */ bl func_8003E544 /* 8003E708 0003A368 2C 03 00 00 */ cmpwi r3, 0 /* 8003E70C 0003A36C 7C 64 1B 78 */ mr r4, r3 /* 8003E710 0003A370 41 80 00 24 */ blt lbl_8003E734 /* 8003E714 0003A374 2C 1F 00 00 */ cmpwi r31, 0 /* 8003E718 0003A378 41 82 00 10 */ beq lbl_8003E728 /* 8003E71C 0003A37C 80 7E 00 04 */ lwz r3, 4(r30) /* 8003E720 0003A380 48 35 2C 61 */ bl func_80391380 /* 8003E724 0003A384 48 00 00 14 */ b lbl_8003E738 lbl_8003E728: /* 8003E728 0003A388 80 7E 00 04 */ lwz r3, 4(r30) /* 8003E72C 0003A38C 48 35 2C 21 */ bl func_8039134C /* 8003E730 0003A390 48 00 00 08 */ b lbl_8003E738 lbl_8003E734: /* 8003E734 0003A394 38 60 00 00 */ li r3, 0 lbl_8003E738: /* 8003E738 0003A398 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E73C 0003A39C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E740 0003A3A0 83 C1 00 08 */ lwz r30, 8(r1) /* 8003E744 0003A3A4 7C 08 03 A6 */ mtlr r0 /* 8003E748 0003A3A8 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E74C 0003A3AC 4E 80 00 20 */ blr .global func_8003E750 func_8003E750: /* 8003E750 0003A3B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E754 0003A3B4 7C 08 02 A6 */ mflr r0 /* 8003E758 0003A3B8 2C 05 00 00 */ cmpwi r5, 0 /* 8003E75C 0003A3BC 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E760 0003A3C0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E764 0003A3C4 7C BF 2B 78 */ mr r31, r5 /* 8003E768 0003A3C8 93 C1 00 08 */ stw r30, 8(r1) /* 8003E76C 0003A3CC 7C 7E 1B 78 */ mr r30, r3 /* 8003E770 0003A3D0 40 80 00 0C */ bge lbl_8003E77C /* 8003E774 0003A3D4 38 60 00 00 */ li r3, 0 /* 8003E778 0003A3D8 48 00 00 34 */ b lbl_8003E7AC lbl_8003E77C: /* 8003E77C 0003A3DC 7C C5 33 78 */ mr r5, r6 /* 8003E780 0003A3E0 7C E6 3B 78 */ mr r6, r7 /* 8003E784 0003A3E4 4B FF FD C1 */ bl func_8003E544 /* 8003E788 0003A3E8 2C 03 00 00 */ cmpwi r3, 0 /* 8003E78C 0003A3EC 7C 64 1B 78 */ mr r4, r3 /* 8003E790 0003A3F0 41 80 00 18 */ blt lbl_8003E7A8 /* 8003E794 0003A3F4 80 7E 00 04 */ lwz r3, 4(r30) /* 8003E798 0003A3F8 7F E5 FB 78 */ mr r5, r31 /* 8003E79C 0003A3FC 48 35 2A D5 */ bl func_80391270 /* 8003E7A0 0003A400 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8003E7A4 0003A404 48 00 00 08 */ b lbl_8003E7AC lbl_8003E7A8: /* 8003E7A8 0003A408 38 60 FF FF */ li r3, -1 lbl_8003E7AC: /* 8003E7AC 0003A40C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E7B0 0003A410 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E7B4 0003A414 83 C1 00 08 */ lwz r30, 8(r1) /* 8003E7B8 0003A418 7C 08 03 A6 */ mtlr r0 /* 8003E7BC 0003A41C 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E7C0 0003A420 4E 80 00 20 */ blr .global func_8003E7C4 func_8003E7C4: /* 8003E7C4 0003A424 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E7C8 0003A428 7C 08 02 A6 */ mflr r0 /* 8003E7CC 0003A42C 2C 05 00 00 */ cmpwi r5, 0 /* 8003E7D0 0003A430 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E7D4 0003A434 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E7D8 0003A438 7C BF 2B 78 */ mr r31, r5 /* 8003E7DC 0003A43C 93 C1 00 08 */ stw r30, 8(r1) /* 8003E7E0 0003A440 7C 7E 1B 78 */ mr r30, r3 /* 8003E7E4 0003A444 40 80 00 08 */ bge lbl_8003E7EC /* 8003E7E8 0003A448 3B E0 00 00 */ li r31, 0 lbl_8003E7EC: /* 8003E7EC 0003A44C 7C C5 33 78 */ mr r5, r6 /* 8003E7F0 0003A450 7F C3 F3 78 */ mr r3, r30 /* 8003E7F4 0003A454 7C E6 3B 78 */ mr r6, r7 /* 8003E7F8 0003A458 4B FF FD 4D */ bl func_8003E544 /* 8003E7FC 0003A45C 2C 03 00 00 */ cmpwi r3, 0 /* 8003E800 0003A460 7C 64 1B 78 */ mr r4, r3 /* 8003E804 0003A464 40 80 00 08 */ bge lbl_8003E80C /* 8003E808 0003A468 38 80 00 00 */ li r4, 0 lbl_8003E80C: /* 8003E80C 0003A46C 80 7E 00 04 */ lwz r3, 4(r30) /* 8003E810 0003A470 7F E5 FB 78 */ mr r5, r31 /* 8003E814 0003A474 48 35 2A B1 */ bl func_803912C4 /* 8003E818 0003A478 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E81C 0003A47C 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8003E820 0003A480 83 C1 00 08 */ lwz r30, 8(r1) /* 8003E824 0003A484 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E828 0003A488 7C 08 03 A6 */ mtlr r0 /* 8003E82C 0003A48C 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E830 0003A490 4E 80 00 20 */ blr .global func_8003E834 func_8003E834: /* 8003E834 0003A494 38 A0 00 01 */ li r5, 1 /* 8003E838 0003A498 38 6D 97 B8 */ addi r3, r13, lbl_8063EA78-_SDA_BASE_ /* 8003E83C 0003A49C 38 80 00 04 */ li r4, 4 /* 8003E840 0003A4A0 38 00 00 00 */ li r0, 0 /* 8003E844 0003A4A4 98 AD 97 B8 */ stb r5, lbl_8063EA78-_SDA_BASE_(r13) /* 8003E848 0003A4A8 B0 83 00 02 */ sth r4, 2(r3) /* 8003E84C 0003A4AC 98 03 00 04 */ stb r0, 4(r3) /* 8003E850 0003A4B0 4E 80 00 20 */ blr .global cPlayer_ClearSwapControllerTimer cPlayer_ClearSwapControllerTimer: /* 8003E854 0003A4B4 38 00 00 00 */ li r0, 0 /* 8003E858 0003A4B8 90 03 00 08 */ stw r0, 8(r3) /* 8003E85C 0003A4BC 90 03 00 D4 */ stw r0, 0xd4(r3) /* 8003E860 0003A4C0 90 03 00 00 */ stw r0, 0(r3) /* 8003E864 0003A4C4 90 03 00 04 */ stw r0, 4(r3) /* 8003E868 0003A4C8 4E 80 00 20 */ blr .global func_8003E86C func_8003E86C: /* 8003E86C 0003A4CC 80 C3 00 00 */ lwz r6, 0(r3) /* 8003E870 0003A4D0 28 06 00 32 */ cmplwi r6, 0x32 /* 8003E874 0003A4D4 4C 80 00 20 */ bgelr /* 8003E878 0003A4D8 54 C0 10 3A */ slwi r0, r6, 2 /* 8003E87C 0003A4DC 38 E6 00 01 */ addi r7, r6, 1 /* 8003E880 0003A4E0 7C C3 02 14 */ add r6, r3, r0 /* 8003E884 0003A4E4 2C 05 00 00 */ cmpwi r5, 0 /* 8003E888 0003A4E8 90 86 00 08 */ stw r4, 8(r6) /* 8003E88C 0003A4EC 54 E0 10 3A */ slwi r0, r7, 2 /* 8003E890 0003A4F0 7C A3 02 14 */ add r5, r3, r0 /* 8003E894 0003A4F4 90 E3 00 00 */ stw r7, 0(r3) /* 8003E898 0003A4F8 38 00 00 00 */ li r0, 0 /* 8003E89C 0003A4FC 90 05 00 08 */ stw r0, 8(r5) /* 8003E8A0 0003A500 4D 82 00 20 */ beqlr /* 8003E8A4 0003A504 80 03 00 04 */ lwz r0, 4(r3) /* 8003E8A8 0003A508 7C 65 1B 78 */ mr r5, r3 /* 8003E8AC 0003A50C 7C 09 03 A6 */ mtctr r0 /* 8003E8B0 0003A510 28 00 00 00 */ cmplwi r0, 0 /* 8003E8B4 0003A514 40 81 00 18 */ ble lbl_8003E8CC lbl_8003E8B8: /* 8003E8B8 0003A518 80 05 00 D4 */ lwz r0, 0xd4(r5) /* 8003E8BC 0003A51C 7C 04 00 40 */ cmplw r4, r0 /* 8003E8C0 0003A520 4D 82 00 20 */ beqlr /* 8003E8C4 0003A524 38 A5 00 04 */ addi r5, r5, 4 /* 8003E8C8 0003A528 42 00 FF F0 */ bdnz lbl_8003E8B8 lbl_8003E8CC: /* 8003E8CC 0003A52C 80 C3 00 04 */ lwz r6, 4(r3) /* 8003E8D0 0003A530 38 A0 00 00 */ li r5, 0 /* 8003E8D4 0003A534 54 C0 10 3A */ slwi r0, r6, 2 /* 8003E8D8 0003A538 38 E6 00 01 */ addi r7, r6, 1 /* 8003E8DC 0003A53C 7C C3 02 14 */ add r6, r3, r0 /* 8003E8E0 0003A540 90 86 00 D4 */ stw r4, 0xd4(r6) /* 8003E8E4 0003A544 54 E0 10 3A */ slwi r0, r7, 2 /* 8003E8E8 0003A548 7C 83 02 14 */ add r4, r3, r0 /* 8003E8EC 0003A54C 90 E3 00 04 */ stw r7, 4(r3) /* 8003E8F0 0003A550 90 A4 00 D4 */ stw r5, 0xd4(r4) /* 8003E8F4 0003A554 4E 80 00 20 */ blr .global func_8003E8F8 func_8003E8F8: /* 8003E8F8 0003A558 80 63 00 04 */ lwz r3, 4(r3) /* 8003E8FC 0003A55C 4E 80 00 20 */ blr .global func_8003E900 func_8003E900: /* 8003E900 0003A560 38 63 00 D4 */ addi r3, r3, 0xd4 /* 8003E904 0003A564 4E 80 00 20 */ blr .global func_8003E908 func_8003E908: /* 8003E908 0003A568 38 63 00 08 */ addi r3, r3, 8 /* 8003E90C 0003A56C 4E 80 00 20 */ blr .global func_8003E910 func_8003E910: /* 8003E910 0003A570 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E914 0003A574 7C 08 02 A6 */ mflr r0 /* 8003E918 0003A578 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E91C 0003A57C 38 00 00 00 */ li r0, 0 /* 8003E920 0003A580 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E924 0003A584 7C 7F 1B 78 */ mr r31, r3 /* 8003E928 0003A588 90 03 00 04 */ stw r0, 4(r3) /* 8003E92C 0003A58C 98 03 00 01 */ stb r0, 1(r3) /* 8003E930 0003A590 48 00 00 71 */ bl func_8003E9A0 /* 8003E934 0003A594 7F E3 FB 78 */ mr r3, r31 /* 8003E938 0003A598 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E93C 0003A59C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E940 0003A5A0 7C 08 03 A6 */ mtlr r0 /* 8003E944 0003A5A4 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E948 0003A5A8 4E 80 00 20 */ blr .global func_8003E94C func_8003E94C: /* 8003E94C 0003A5AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E950 0003A5B0 7C 08 02 A6 */ mflr r0 /* 8003E954 0003A5B4 2C 03 00 00 */ cmpwi r3, 0 /* 8003E958 0003A5B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E95C 0003A5BC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E960 0003A5C0 7C 9F 23 78 */ mr r31, r4 /* 8003E964 0003A5C4 93 C1 00 08 */ stw r30, 8(r1) /* 8003E968 0003A5C8 7C 7E 1B 78 */ mr r30, r3 /* 8003E96C 0003A5CC 41 82 00 18 */ beq lbl_8003E984 /* 8003E970 0003A5D0 48 00 01 41 */ bl func_8003EAB0 /* 8003E974 0003A5D4 2C 1F 00 00 */ cmpwi r31, 0 /* 8003E978 0003A5D8 40 81 00 0C */ ble lbl_8003E984 /* 8003E97C 0003A5DC 7F C3 F3 78 */ mr r3, r30 /* 8003E980 0003A5E0 48 19 C1 39 */ bl func_801DAAB8 lbl_8003E984: /* 8003E984 0003A5E4 7F C3 F3 78 */ mr r3, r30 /* 8003E988 0003A5E8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003E98C 0003A5EC 83 C1 00 08 */ lwz r30, 8(r1) /* 8003E990 0003A5F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003E994 0003A5F4 7C 08 03 A6 */ mtlr r0 /* 8003E998 0003A5F8 38 21 00 10 */ addi r1, r1, 0x10 /* 8003E99C 0003A5FC 4E 80 00 20 */ blr .global func_8003E9A0 func_8003E9A0: /* 8003E9A0 0003A600 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8003E9A4 0003A604 7C 08 02 A6 */ mflr r0 /* 8003E9A8 0003A608 38 80 00 00 */ li r4, 0 /* 8003E9AC 0003A60C 38 A0 00 0C */ li r5, 0xc /* 8003E9B0 0003A610 90 01 00 14 */ stw r0, 0x14(r1) /* 8003E9B4 0003A614 93 E1 00 0C */ stw r31, 0xc(r1) /* 8003E9B8 0003A618 3B E0 00 00 */ li r31, 0 /* 8003E9BC 0003A61C 93 C1 00 08 */ stw r30, 8(r1) /* 8003E9C0 0003A620 7C 7E 1B 78 */ mr r30, r3 /* 8003E9C4 0003A624 93 E3 00 04 */ stw r31, 4(r3) /* 8003E9C8 0003A628 93 E3 00 08 */ stw r31, 8(r3) /* 8003E9CC 0003A62C 38 63 00 0C */ addi r3, r3, 0xc /* 8003E9D0 0003A630 4B FC 57 35 */ bl memset /* 8003E9D4 0003A634 38 00 00 0A */ li r0, 0xa /* 8003E9D8 0003A638 38 9E 00 18 */ addi r4, r30, 0x18 /* 8003E9DC 0003A63C 38 60 00 FF */ li r3, 0xff /* 8003E9E0 0003A640 7C 09 03 A6 */ mtctr r0 lbl_8003E9E4: /* 8003E9E4 0003A644 9B E4 00 00 */ stb r31, 0(r4) /* 8003E9E8 0003A648 98 64 00 01 */ stb r3, 1(r4) /* 8003E9EC 0003A64C 93 E4 00 04 */ stw r31, 4(r4) /* 8003E9F0 0003A650 93 E4 00 20 */ stw r31, 0x20(r4) /* 8003E9F4 0003A654 93 E4 00 24 */ stw r31, 0x24(r4) /* 8003E9F8 0003A658 93 E4 00 28 */ stw r31, 0x28(r4) /* 8003E9FC 0003A65C 93 E4 00 0C */ stw r31, 0xc(r4) /* 8003EA00 0003A660 93 E4 00 18 */ stw r31, 0x18(r4) /* 8003EA04 0003A664 93 E4 00 10 */ stw r31, 0x10(r4) /* 8003EA08 0003A668 93 E4 00 1C */ stw r31, 0x1c(r4) /* 8003EA0C 0003A66C 9B E4 00 14 */ stb r31, 0x14(r4) /* 8003EA10 0003A670 93 E4 00 40 */ stw r31, 0x40(r4) /* 8003EA14 0003A674 93 E4 00 44 */ stw r31, 0x44(r4) /* 8003EA18 0003A678 93 E4 00 48 */ stw r31, 0x48(r4) /* 8003EA1C 0003A67C 93 E4 00 2C */ stw r31, 0x2c(r4) /* 8003EA20 0003A680 93 E4 00 38 */ stw r31, 0x38(r4) /* 8003EA24 0003A684 93 E4 00 30 */ stw r31, 0x30(r4) /* 8003EA28 0003A688 93 E4 00 3C */ stw r31, 0x3c(r4) /* 8003EA2C 0003A68C 9B E4 00 34 */ stb r31, 0x34(r4) /* 8003EA30 0003A690 93 E4 00 60 */ stw r31, 0x60(r4) /* 8003EA34 0003A694 93 E4 00 64 */ stw r31, 0x64(r4) /* 8003EA38 0003A698 93 E4 00 68 */ stw r31, 0x68(r4) /* 8003EA3C 0003A69C 93 E4 00 4C */ stw r31, 0x4c(r4) /* 8003EA40 0003A6A0 93 E4 00 58 */ stw r31, 0x58(r4) /* 8003EA44 0003A6A4 93 E4 00 50 */ stw r31, 0x50(r4) /* 8003EA48 0003A6A8 93 E4 00 5C */ stw r31, 0x5c(r4) /* 8003EA4C 0003A6AC 9B E4 00 54 */ stb r31, 0x54(r4) /* 8003EA50 0003A6B0 93 E4 00 80 */ stw r31, 0x80(r4) /* 8003EA54 0003A6B4 93 E4 00 84 */ stw r31, 0x84(r4) /* 8003EA58 0003A6B8 93 E4 00 88 */ stw r31, 0x88(r4) /* 8003EA5C 0003A6BC 93 E4 00 6C */ stw r31, 0x6c(r4) /* 8003EA60 0003A6C0 93 E4 00 78 */ stw r31, 0x78(r4) /* 8003EA64 0003A6C4 93 E4 00 70 */ stw r31, 0x70(r4) /* 8003EA68 0003A6C8 93 E4 00 7C */ stw r31, 0x7c(r4) /* 8003EA6C 0003A6CC 9B E4 00 74 */ stb r31, 0x74(r4) /* 8003EA70 0003A6D0 93 E4 00 A0 */ stw r31, 0xa0(r4) /* 8003EA74 0003A6D4 93 E4 00 A4 */ stw r31, 0xa4(r4) /* 8003EA78 0003A6D8 93 E4 00 A8 */ stw r31, 0xa8(r4) /* 8003EA7C 0003A6DC 93 E4 00 8C */ stw r31, 0x8c(r4) /* 8003EA80 0003A6E0 93 E4 00 98 */ stw r31, 0x98(r4) /* 8003EA84 0003A6E4 93 E4 00 90 */ stw r31, 0x90(r4) /* 8003EA88 0003A6E8 93 E4 00 9C */ stw r31, 0x9c(r4) /* 8003EA8C 0003A6EC 9B E4 00 94 */ stb r31, 0x94(r4) /* 8003EA90 0003A6F0 38 84 00 AC */ addi r4, r4, 0xac /* 8003EA94 0003A6F4 42 00 FF 50 */ bdnz lbl_8003E9E4 /* 8003EA98 0003A6F8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8003EA9C 0003A6FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8003EAA0 0003A700 83 C1 00 08 */ lwz r30, 8(r1) /* 8003EAA4 0003A704 7C 08 03 A6 */ mtlr r0 /* 8003EAA8 0003A708 38 21 00 10 */ addi r1, r1, 0x10 /* 8003EAAC 0003A70C 4E 80 00 20 */ blr .global func_8003EAB0 func_8003EAB0: /* 8003EAB0 0003A710 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003EAB4 0003A714 7C 08 02 A6 */ mflr r0 /* 8003EAB8 0003A718 90 01 00 34 */ stw r0, 0x34(r1) /* 8003EABC 0003A71C 39 61 00 30 */ addi r11, r1, 0x30 /* 8003EAC0 0003A720 48 18 86 61 */ bl _savegpr_25 /* 8003EAC4 0003A724 3B C0 00 00 */ li r30, 0 /* 8003EAC8 0003A728 7C 79 1B 78 */ mr r25, r3 /* 8003EACC 0003A72C 93 C3 00 08 */ stw r30, 8(r3) /* 8003EAD0 0003A730 3B A3 00 18 */ addi r29, r3, 0x18 /* 8003EAD4 0003A734 3B 60 00 00 */ li r27, 0 /* 8003EAD8 0003A738 3B E0 00 FF */ li r31, 0xff lbl_8003EADC: /* 8003EADC 0003A73C 9B DD 00 00 */ stb r30, 0(r29) /* 8003EAE0 0003A740 3B 9D 00 0C */ addi r28, r29, 0xc /* 8003EAE4 0003A744 3B 40 00 00 */ li r26, 0 /* 8003EAE8 0003A748 9B FD 00 01 */ stb r31, 1(r29) lbl_8003EAEC: /* 8003EAEC 0003A74C 80 7C 00 14 */ lwz r3, 0x14(r28) /* 8003EAF0 0003A750 2C 03 00 00 */ cmpwi r3, 0 /* 8003EAF4 0003A754 41 82 00 10 */ beq lbl_8003EB04 /* 8003EAF8 0003A758 38 80 00 01 */ li r4, 1 /* 8003EAFC 0003A75C 48 1B 5F F5 */ bl func_801F4AF0 /* 8003EB00 0003A760 93 DC 00 14 */ stw r30, 0x14(r28) lbl_8003EB04: /* 8003EB04 0003A764 80 7C 00 18 */ lwz r3, 0x18(r28) /* 8003EB08 0003A768 2C 83 00 00 */ cmpwi cr1, r3, 0 /* 8003EB0C 0003A76C 41 86 00 28 */ beq cr1, lbl_8003EB34 /* 8003EB10 0003A770 80 1C 00 00 */ lwz r0, 0(r28) /* 8003EB14 0003A774 28 00 00 64 */ cmplwi r0, 0x64 /* 8003EB18 0003A778 41 82 00 1C */ beq lbl_8003EB34 /* 8003EB1C 0003A77C 41 86 00 18 */ beq cr1, lbl_8003EB34 /* 8003EB20 0003A780 81 83 00 34 */ lwz r12, 0x34(r3) /* 8003EB24 0003A784 38 80 00 01 */ li r4, 1 /* 8003EB28 0003A788 81 8C 00 08 */ lwz r12, 8(r12) /* 8003EB2C 0003A78C 7D 89 03 A6 */ mtctr r12 /* 8003EB30 0003A790 4E 80 04 21 */ bctrl lbl_8003EB34: /* 8003EB34 0003A794 93 DC 00 18 */ stw r30, 0x18(r28) /* 8003EB38 0003A798 80 9C 00 00 */ lwz r4, 0(r28) /* 8003EB3C 0003A79C 2C 04 00 00 */ cmpwi r4, 0 /* 8003EB40 0003A7A0 41 82 00 18 */ beq lbl_8003EB58 /* 8003EB44 0003A7A4 28 04 00 64 */ cmplwi r4, 0x64 /* 8003EB48 0003A7A8 41 82 00 10 */ beq lbl_8003EB58 /* 8003EB4C 0003A7AC 80 7D 00 04 */ lwz r3, 4(r29) /* 8003EB50 0003A7B0 48 19 C9 F9 */ bl func_801DB548 /* 8003EB54 0003A7B4 93 DC 00 00 */ stw r30, 0(r28) lbl_8003EB58: /* 8003EB58 0003A7B8 80 9C 00 04 */ lwz r4, 4(r28) /* 8003EB5C 0003A7BC 2C 04 00 00 */ cmpwi r4, 0 /* 8003EB60 0003A7C0 41 82 00 10 */ beq lbl_8003EB70 /* 8003EB64 0003A7C4 80 7D 00 04 */ lwz r3, 4(r29) /* 8003EB68 0003A7C8 48 19 C9 E1 */ bl func_801DB548 /* 8003EB6C 0003A7CC 93 DC 00 04 */ stw r30, 4(r28) lbl_8003EB70: /* 8003EB70 0003A7D0 3B 5A 00 01 */ addi r26, r26, 1 /* 8003EB74 0003A7D4 3B 9C 00 20 */ addi r28, r28, 0x20 /* 8003EB78 0003A7D8 2C 1A 00 05 */ cmpwi r26, 5 /* 8003EB7C 0003A7DC 41 80 FF 70 */ blt lbl_8003EAEC /* 8003EB80 0003A7E0 3B 7B 00 01 */ addi r27, r27, 1 /* 8003EB84 0003A7E4 3B BD 00 AC */ addi r29, r29, 0xac /* 8003EB88 0003A7E8 2C 1B 00 0A */ cmpwi r27, 0xa /* 8003EB8C 0003A7EC 41 80 FF 50 */ blt lbl_8003EADC /* 8003EB90 0003A7F0 80 99 00 14 */ lwz r4, 0x14(r25) /* 8003EB94 0003A7F4 2C 04 00 00 */ cmpwi r4, 0 /* 8003EB98 0003A7F8 41 82 00 0C */ beq lbl_8003EBA4 /* 8003EB9C 0003A7FC 80 79 00 10 */ lwz r3, 0x10(r25) /* 8003EBA0 0003A800 48 19 C9 A9 */ bl func_801DB548 lbl_8003EBA4: /* 8003EBA4 0003A804 38 79 00 0C */ addi r3, r25, 0xc /* 8003EBA8 0003A808 38 80 00 00 */ li r4, 0 /* 8003EBAC 0003A80C 38 A0 00 0C */ li r5, 0xc /* 8003EBB0 0003A810 4B FC 55 55 */ bl memset /* 8003EBB4 0003A814 39 61 00 30 */ addi r11, r1, 0x30 /* 8003EBB8 0003A818 48 18 85 B5 */ bl _restgpr_25 /* 8003EBBC 0003A81C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003EBC0 0003A820 7C 08 03 A6 */ mtlr r0 /* 8003EBC4 0003A824 38 21 00 30 */ addi r1, r1, 0x30 /* 8003EBC8 0003A828 4E 80 00 20 */ blr .global func_8003EBCC func_8003EBCC: /* 8003EBCC 0003A82C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003EBD0 0003A830 7C 08 02 A6 */ mflr r0 /* 8003EBD4 0003A834 90 01 00 24 */ stw r0, 0x24(r1) /* 8003EBD8 0003A838 39 61 00 20 */ addi r11, r1, 0x20 /* 8003EBDC 0003A83C 48 18 85 49 */ bl _savegpr_26 /* 8003EBE0 0003A840 2C 04 00 00 */ cmpwi r4, 0 /* 8003EBE4 0003A844 8B A3 00 01 */ lbz r29, 1(r3) /* 8003EBE8 0003A848 7C 7A 1B 78 */ mr r26, r3 /* 8003EBEC 0003A84C 7C 9B 23 78 */ mr r27, r4 /* 8003EBF0 0003A850 41 82 00 10 */ beq lbl_8003EC00 /* 8003EBF4 0003A854 88 03 00 03 */ lbz r0, 3(r3) /* 8003EBF8 0003A858 7C 00 07 75 */ extsb. r0, r0 /* 8003EBFC 0003A85C 40 82 00 0C */ bne lbl_8003EC08 lbl_8003EC00: /* 8003EC00 0003A860 38 60 00 00 */ li r3, 0 /* 8003EC04 0003A864 48 00 00 88 */ b lbl_8003EC8C lbl_8003EC08: /* 8003EC08 0003A868 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003EC0C 0003A86C 3B C3 CE 34 */ addi r30, r3, lbl_8063CE34@l /* 8003EC10 0003A870 38 7E 00 80 */ addi r3, r30, 0x80 /* 8003EC14 0003A874 48 35 B3 01 */ bl func_80399F14 /* 8003EC18 0003A878 7C 7F 1B 78 */ mr r31, r3 /* 8003EC1C 0003A87C 3B 80 00 00 */ li r28, 0 /* 8003EC20 0003A880 48 00 00 60 */ b lbl_8003EC80 lbl_8003EC24: /* 8003EC24 0003A884 7F 84 E3 78 */ mr r4, r28 /* 8003EC28 0003A888 7F A5 EB 78 */ mr r5, r29 /* 8003EC2C 0003A88C 38 7E 00 80 */ addi r3, r30, 0x80 /* 8003EC30 0003A890 48 35 B3 35 */ bl func_80399F64 /* 8003EC34 0003A894 7C 1B 18 40 */ cmplw r27, r3 /* 8003EC38 0003A898 40 82 00 44 */ bne lbl_8003EC7C /* 8003EC3C 0003A89C 88 1A 00 03 */ lbz r0, 3(r26) /* 8003EC40 0003A8A0 7C 00 07 74 */ extsb r0, r0 /* 8003EC44 0003A8A4 2C 00 00 01 */ cmpwi r0, 1 /* 8003EC48 0003A8A8 40 82 00 18 */ bne lbl_8003EC60 /* 8003EC4C 0003A8AC 7F 84 E3 78 */ mr r4, r28 /* 8003EC50 0003A8B0 7F A5 EB 78 */ mr r5, r29 /* 8003EC54 0003A8B4 38 7E 00 80 */ addi r3, r30, 0x80 /* 8003EC58 0003A8B8 48 35 B3 61 */ bl func_80399FB8 /* 8003EC5C 0003A8BC 48 00 00 30 */ b lbl_8003EC8C lbl_8003EC60: /* 8003EC60 0003A8C0 2C 00 00 02 */ cmpwi r0, 2 /* 8003EC64 0003A8C4 40 82 00 18 */ bne lbl_8003EC7C /* 8003EC68 0003A8C8 7F 84 E3 78 */ mr r4, r28 /* 8003EC6C 0003A8CC 7F A5 EB 78 */ mr r5, r29 /* 8003EC70 0003A8D0 38 7E 00 80 */ addi r3, r30, 0x80 /* 8003EC74 0003A8D4 48 35 B3 9D */ bl func_8039A010 /* 8003EC78 0003A8D8 48 00 00 14 */ b lbl_8003EC8C lbl_8003EC7C: /* 8003EC7C 0003A8DC 3B 9C 00 01 */ addi r28, r28, 1 lbl_8003EC80: /* 8003EC80 0003A8E0 7C 1C F8 00 */ cmpw r28, r31 /* 8003EC84 0003A8E4 41 80 FF A0 */ blt lbl_8003EC24 /* 8003EC88 0003A8E8 38 60 00 00 */ li r3, 0 lbl_8003EC8C: /* 8003EC8C 0003A8EC 39 61 00 20 */ addi r11, r1, 0x20 /* 8003EC90 0003A8F0 48 18 84 E1 */ bl _restgpr_26 /* 8003EC94 0003A8F4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003EC98 0003A8F8 7C 08 03 A6 */ mtlr r0 /* 8003EC9C 0003A8FC 38 21 00 20 */ addi r1, r1, 0x20 /* 8003ECA0 0003A900 4E 80 00 20 */ blr .global func_8003ECA4 func_8003ECA4: /* 8003ECA4 0003A904 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003ECA8 0003A908 7C 08 02 A6 */ mflr r0 /* 8003ECAC 0003A90C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003ECB0 0003A910 39 61 00 30 */ addi r11, r1, 0x30 /* 8003ECB4 0003A914 48 18 84 61 */ bl _savegpr_22 /* 8003ECB8 0003A918 88 03 00 03 */ lbz r0, 3(r3) /* 8003ECBC 0003A91C 7C 76 1B 78 */ mr r22, r3 /* 8003ECC0 0003A920 8B 83 00 01 */ lbz r28, 1(r3) /* 8003ECC4 0003A924 7C 97 23 78 */ mr r23, r4 /* 8003ECC8 0003A928 7C 00 07 75 */ extsb. r0, r0 /* 8003ECCC 0003A92C 7C B8 2B 78 */ mr r24, r5 /* 8003ECD0 0003A930 7C D9 33 78 */ mr r25, r6 /* 8003ECD4 0003A934 40 82 00 0C */ bne lbl_8003ECE0 /* 8003ECD8 0003A938 38 60 00 00 */ li r3, 0 /* 8003ECDC 0003A93C 48 00 00 F8 */ b lbl_8003EDD4 lbl_8003ECE0: /* 8003ECE0 0003A940 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003ECE4 0003A944 3B A3 CE 34 */ addi r29, r3, lbl_8063CE34@l /* 8003ECE8 0003A948 38 7D 00 80 */ addi r3, r29, 0x80 /* 8003ECEC 0003A94C 48 35 B2 29 */ bl func_80399F14 /* 8003ECF0 0003A950 7C 7E 1B 78 */ mr r30, r3 /* 8003ECF4 0003A954 38 76 00 0C */ addi r3, r22, 0xc /* 8003ECF8 0003A958 38 80 00 00 */ li r4, 0 /* 8003ECFC 0003A95C 38 A0 00 0C */ li r5, 0xc /* 8003ED00 0003A960 4B FC 54 05 */ bl memset /* 8003ED04 0003A964 3B 40 00 00 */ li r26, 0 /* 8003ED08 0003A968 48 00 00 C0 */ b lbl_8003EDC8 lbl_8003ED0C: /* 8003ED0C 0003A96C 7F 44 D3 78 */ mr r4, r26 /* 8003ED10 0003A970 38 7D 00 80 */ addi r3, r29, 0x80 /* 8003ED14 0003A974 48 35 B2 1D */ bl func_80399F30 /* 8003ED18 0003A978 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003ED1C 0003A97C 7C 17 00 00 */ cmpw r23, r0 /* 8003ED20 0003A980 40 82 00 A4 */ bne lbl_8003EDC4 /* 8003ED24 0003A984 7F 44 D3 78 */ mr r4, r26 /* 8003ED28 0003A988 7F 85 E3 78 */ mr r5, r28 /* 8003ED2C 0003A98C 38 7D 00 80 */ addi r3, r29, 0x80 /* 8003ED30 0003A990 48 35 B2 35 */ bl func_80399F64 /* 8003ED34 0003A994 28 03 01 00 */ cmplwi r3, 0x100 /* 8003ED38 0003A998 7C 7F 1B 78 */ mr r31, r3 /* 8003ED3C 0003A99C 40 80 00 88 */ bge lbl_8003EDC4 /* 8003ED40 0003A9A0 88 16 00 03 */ lbz r0, 3(r22) /* 8003ED44 0003A9A4 3B 60 00 00 */ li r27, 0 /* 8003ED48 0003A9A8 7C 00 07 74 */ extsb r0, r0 /* 8003ED4C 0003A9AC 2C 00 00 01 */ cmpwi r0, 1 /* 8003ED50 0003A9B0 40 82 00 1C */ bne lbl_8003ED6C /* 8003ED54 0003A9B4 7F 44 D3 78 */ mr r4, r26 /* 8003ED58 0003A9B8 7F 85 E3 78 */ mr r5, r28 /* 8003ED5C 0003A9BC 38 7D 00 80 */ addi r3, r29, 0x80 /* 8003ED60 0003A9C0 48 35 B2 59 */ bl func_80399FB8 /* 8003ED64 0003A9C4 7C 7B 1B 78 */ mr r27, r3 /* 8003ED68 0003A9C8 48 00 00 20 */ b lbl_8003ED88 lbl_8003ED6C: /* 8003ED6C 0003A9CC 2C 00 00 02 */ cmpwi r0, 2 /* 8003ED70 0003A9D0 40 82 00 18 */ bne lbl_8003ED88 /* 8003ED74 0003A9D4 7F 44 D3 78 */ mr r4, r26 /* 8003ED78 0003A9D8 7F 85 E3 78 */ mr r5, r28 /* 8003ED7C 0003A9DC 38 7D 00 80 */ addi r3, r29, 0x80 /* 8003ED80 0003A9E0 48 35 B2 91 */ bl func_8039A010 /* 8003ED84 0003A9E4 7C 7B 1B 78 */ mr r27, r3 lbl_8003ED88: /* 8003ED88 0003A9E8 2C 1B 00 00 */ cmpwi r27, 0 /* 8003ED8C 0003A9EC 41 82 00 38 */ beq lbl_8003EDC4 /* 8003ED90 0003A9F0 7F 03 C3 78 */ mr r3, r24 /* 8003ED94 0003A9F4 7F 64 DB 78 */ mr r4, r27 /* 8003ED98 0003A9F8 48 19 C7 25 */ bl func_801DB4BC /* 8003ED9C 0003A9FC 7C 60 00 34 */ cntlzw r0, r3 /* 8003EDA0 0003AA00 7F 23 CB 78 */ mr r3, r25 /* 8003EDA4 0003AA04 7F 64 DB 78 */ mr r4, r27 /* 8003EDA8 0003AA08 54 05 D9 7E */ srwi r5, r0, 5 /* 8003EDAC 0003AA0C 4B FF FA C1 */ bl func_8003E86C /* 8003EDB0 0003AA10 B3 F6 00 0C */ sth r31, 0xc(r22) /* 8003EDB4 0003AA14 7F 63 DB 78 */ mr r3, r27 /* 8003EDB8 0003AA18 93 16 00 10 */ stw r24, 0x10(r22) /* 8003EDBC 0003AA1C 93 76 00 14 */ stw r27, 0x14(r22) /* 8003EDC0 0003AA20 48 00 00 14 */ b lbl_8003EDD4 lbl_8003EDC4: /* 8003EDC4 0003AA24 3B 5A 00 01 */ addi r26, r26, 1 lbl_8003EDC8: /* 8003EDC8 0003AA28 7C 1A F0 00 */ cmpw r26, r30 /* 8003EDCC 0003AA2C 41 80 FF 40 */ blt lbl_8003ED0C /* 8003EDD0 0003AA30 38 60 00 00 */ li r3, 0 lbl_8003EDD4: /* 8003EDD4 0003AA34 39 61 00 30 */ addi r11, r1, 0x30 /* 8003EDD8 0003AA38 48 18 83 89 */ bl _restgpr_22 /* 8003EDDC 0003AA3C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003EDE0 0003AA40 7C 08 03 A6 */ mtlr r0 /* 8003EDE4 0003AA44 38 21 00 30 */ addi r1, r1, 0x30 /* 8003EDE8 0003AA48 4E 80 00 20 */ blr .global func_8003EDEC func_8003EDEC: /* 8003EDEC 0003AA4C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8003EDF0 0003AA50 7C 08 02 A6 */ mflr r0 /* 8003EDF4 0003AA54 90 01 00 54 */ stw r0, 0x54(r1) /* 8003EDF8 0003AA58 39 61 00 50 */ addi r11, r1, 0x50 /* 8003EDFC 0003AA5C 48 18 83 21 */ bl _savegpr_24 /* 8003EE00 0003AA60 3C C0 80 64 */ lis r6, lbl_8063CE34@ha /* 8003EE04 0003AA64 7C 7C 1B 78 */ mr r28, r3 /* 8003EE08 0003AA68 3B E6 CE 34 */ addi r31, r6, lbl_8063CE34@l /* 8003EE0C 0003AA6C 7C 98 23 78 */ mr r24, r4 /* 8003EE10 0003AA70 7C BD 2B 78 */ mr r29, r5 /* 8003EE14 0003AA74 7C FE 3B 78 */ mr r30, r7 /* 8003EE18 0003AA78 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE1C 0003AA7C 48 35 66 75 */ bl func_80395490 /* 8003EE20 0003AA80 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE24 0003AA84 7F 04 C3 78 */ mr r4, r24 /* 8003EE28 0003AA88 90 01 00 18 */ stw r0, 0x18(r1) /* 8003EE2C 0003AA8C 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE30 0003AA90 48 35 67 01 */ bl func_80395530 /* 8003EE34 0003AA94 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE38 0003AA98 7F 04 C3 78 */ mr r4, r24 /* 8003EE3C 0003AA9C 90 01 00 1C */ stw r0, 0x1c(r1) /* 8003EE40 0003AAA0 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE44 0003AAA4 48 35 67 8D */ bl func_803955D0 /* 8003EE48 0003AAA8 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE4C 0003AAAC 7F 04 C3 78 */ mr r4, r24 /* 8003EE50 0003AAB0 90 01 00 20 */ stw r0, 0x20(r1) /* 8003EE54 0003AAB4 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE58 0003AAB8 48 35 68 19 */ bl func_80395670 /* 8003EE5C 0003AABC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE60 0003AAC0 7F 04 C3 78 */ mr r4, r24 /* 8003EE64 0003AAC4 90 01 00 24 */ stw r0, 0x24(r1) /* 8003EE68 0003AAC8 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE6C 0003AACC 48 35 68 A5 */ bl func_80395710 /* 8003EE70 0003AAD0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE74 0003AAD4 7F 04 C3 78 */ mr r4, r24 /* 8003EE78 0003AAD8 90 01 00 28 */ stw r0, 0x28(r1) /* 8003EE7C 0003AADC 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE80 0003AAE0 48 35 63 E9 */ bl func_80395268 /* 8003EE84 0003AAE4 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE88 0003AAE8 7F 04 C3 78 */ mr r4, r24 /* 8003EE8C 0003AAEC 90 01 00 08 */ stw r0, 8(r1) /* 8003EE90 0003AAF0 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EE94 0003AAF4 48 35 64 0D */ bl func_803952A0 /* 8003EE98 0003AAF8 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EE9C 0003AAFC 7F 04 C3 78 */ mr r4, r24 /* 8003EEA0 0003AB00 90 01 00 0C */ stw r0, 0xc(r1) /* 8003EEA4 0003AB04 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EEA8 0003AB08 48 35 64 31 */ bl func_803952D8 /* 8003EEAC 0003AB0C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8003EEB0 0003AB10 7F 04 C3 78 */ mr r4, r24 /* 8003EEB4 0003AB14 90 01 00 10 */ stw r0, 0x10(r1) /* 8003EEB8 0003AB18 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EEBC 0003AB1C 48 35 64 55 */ bl func_80395310 /* 8003EEC0 0003AB20 88 1C 00 01 */ lbz r0, 1(r28) /* 8003EEC4 0003AB24 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8003EEC8 0003AB28 90 61 00 14 */ stw r3, 0x14(r1) /* 8003EECC 0003AB2C 2C 00 00 00 */ cmpwi r0, 0 /* 8003EED0 0003AB30 41 82 01 50 */ beq lbl_8003F020 /* 8003EED4 0003AB34 7F 04 C3 78 */ mr r4, r24 /* 8003EED8 0003AB38 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EEDC 0003AB3C 48 35 65 81 */ bl func_8039545C /* 8003EEE0 0003AB40 90 7D 00 18 */ stw r3, 0x18(r29) /* 8003EEE4 0003AB44 7F 04 C3 78 */ mr r4, r24 /* 8003EEE8 0003AB48 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EEEC 0003AB4C 48 35 66 11 */ bl func_803954FC /* 8003EEF0 0003AB50 90 7D 00 38 */ stw r3, 0x38(r29) /* 8003EEF4 0003AB54 7F 04 C3 78 */ mr r4, r24 /* 8003EEF8 0003AB58 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EEFC 0003AB5C 48 35 66 A1 */ bl func_8039559C /* 8003EF00 0003AB60 90 7D 00 58 */ stw r3, 0x58(r29) /* 8003EF04 0003AB64 7F 04 C3 78 */ mr r4, r24 /* 8003EF08 0003AB68 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EF0C 0003AB6C 48 35 67 31 */ bl func_8039563C /* 8003EF10 0003AB70 90 7D 00 78 */ stw r3, 0x78(r29) /* 8003EF14 0003AB74 7F 04 C3 78 */ mr r4, r24 /* 8003EF18 0003AB78 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003EF1C 0003AB7C 48 35 67 C1 */ bl func_803956DC /* 8003EF20 0003AB80 90 7D 00 98 */ stw r3, 0x98(r29) /* 8003EF24 0003AB84 3B 1D 00 0C */ addi r24, r29, 0xc /* 8003EF28 0003AB88 3B 21 00 18 */ addi r25, r1, 0x18 /* 8003EF2C 0003AB8C 3B 5D 00 AC */ addi r26, r29, 0xac /* 8003EF30 0003AB90 3B 60 00 00 */ li r27, 0 /* 8003EF34 0003AB94 48 00 00 90 */ b lbl_8003EFC4 lbl_8003EF38: /* 8003EF38 0003AB98 80 78 00 0C */ lwz r3, 0xc(r24) /* 8003EF3C 0003AB9C 54 60 BE BE */ rlwinm r0, r3, 0x17, 0x1a, 0x1f /* 8003EF40 0003ABA0 2C 00 00 04 */ cmpwi r0, 4 /* 8003EF44 0003ABA4 41 82 00 2C */ beq lbl_8003EF70 /* 8003EF48 0003ABA8 40 80 00 50 */ bge lbl_8003EF98 /* 8003EF4C 0003ABAC 2C 00 00 03 */ cmpwi r0, 3 /* 8003EF50 0003ABB0 40 80 00 08 */ bge lbl_8003EF58 /* 8003EF54 0003ABB4 48 00 00 44 */ b lbl_8003EF98 lbl_8003EF58: /* 8003EF58 0003ABB8 80 9C 00 04 */ lwz r4, 4(r28) /* 8003EF5C 0003ABBC 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003EF60 0003ABC0 80 B9 00 00 */ lwz r5, 0(r25) /* 8003EF64 0003ABC4 48 35 70 D9 */ bl func_8039603C /* 8003EF68 0003ABC8 98 78 00 08 */ stb r3, 8(r24) /* 8003EF6C 0003ABCC 48 00 00 50 */ b lbl_8003EFBC lbl_8003EF70: /* 8003EF70 0003ABD0 80 9C 00 04 */ lwz r4, 4(r28) /* 8003EF74 0003ABD4 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003EF78 0003ABD8 80 B9 00 00 */ lwz r5, 0(r25) /* 8003EF7C 0003ABDC 48 35 71 69 */ bl func_803960E4 /* 8003EF80 0003ABE0 98 78 00 08 */ stb r3, 8(r24) /* 8003EF84 0003ABE4 7F 83 E3 78 */ mr r3, r28 /* 8003EF88 0003ABE8 80 98 00 0C */ lwz r4, 0xc(r24) /* 8003EF8C 0003ABEC 4B FF FC 41 */ bl func_8003EBCC /* 8003EF90 0003ABF0 90 78 00 10 */ stw r3, 0x10(r24) /* 8003EF94 0003ABF4 48 00 00 28 */ b lbl_8003EFBC lbl_8003EF98: /* 8003EF98 0003ABF8 28 03 00 64 */ cmplwi r3, 0x64 /* 8003EF9C 0003ABFC 40 82 00 1C */ bne lbl_8003EFB8 /* 8003EFA0 0003AC00 80 9C 00 04 */ lwz r4, 4(r28) /* 8003EFA4 0003AC04 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003EFA8 0003AC08 80 B9 00 00 */ lwz r5, 0(r25) /* 8003EFAC 0003AC0C 48 35 71 39 */ bl func_803960E4 /* 8003EFB0 0003AC10 98 78 00 08 */ stb r3, 8(r24) /* 8003EFB4 0003AC14 48 00 00 08 */ b lbl_8003EFBC lbl_8003EFB8: /* 8003EFB8 0003AC18 9B 78 00 08 */ stb r27, 8(r24) lbl_8003EFBC: /* 8003EFBC 0003AC1C 3B 18 00 20 */ addi r24, r24, 0x20 /* 8003EFC0 0003AC20 3B 39 00 04 */ addi r25, r25, 4 lbl_8003EFC4: /* 8003EFC4 0003AC24 7C 18 D0 40 */ cmplw r24, r26 /* 8003EFC8 0003AC28 40 82 FF 70 */ bne lbl_8003EF38 /* 8003EFCC 0003AC2C 3F 40 80 64 */ lis r26, lbl_8063CE34@ha /* 8003EFD0 0003AC30 3B 21 00 08 */ addi r25, r1, 8 /* 8003EFD4 0003AC34 3B 5A CE 34 */ addi r26, r26, lbl_8063CE34@l /* 8003EFD8 0003AC38 3B E0 00 00 */ li r31, 0 /* 8003EFDC 0003AC3C 3B 60 00 FF */ li r27, 0xff lbl_8003EFE0: /* 8003EFE0 0003AC40 80 B9 00 00 */ lwz r5, 0(r25) /* 8003EFE4 0003AC44 28 05 00 07 */ cmplwi r5, 7 /* 8003EFE8 0003AC48 40 82 00 10 */ bne lbl_8003EFF8 /* 8003EFEC 0003AC4C 7C 7D FA 14 */ add r3, r29, r31 /* 8003EFF0 0003AC50 9B 63 00 08 */ stb r27, 8(r3) /* 8003EFF4 0003AC54 48 00 00 18 */ b lbl_8003F00C lbl_8003EFF8: /* 8003EFF8 0003AC58 80 9C 00 04 */ lwz r4, 4(r28) /* 8003EFFC 0003AC5C 38 7A 00 28 */ addi r3, r26, 0x28 /* 8003F000 0003AC60 48 35 70 91 */ bl func_80396090 /* 8003F004 0003AC64 7C 9D FA 14 */ add r4, r29, r31 /* 8003F008 0003AC68 98 64 00 08 */ stb r3, 8(r4) lbl_8003F00C: /* 8003F00C 0003AC6C 3B FF 00 01 */ addi r31, r31, 1 /* 8003F010 0003AC70 3B 39 00 04 */ addi r25, r25, 4 /* 8003F014 0003AC74 2C 1F 00 04 */ cmpwi r31, 4 /* 8003F018 0003AC78 41 80 FF C8 */ blt lbl_8003EFE0 /* 8003F01C 0003AC7C 48 00 01 4C */ b lbl_8003F168 lbl_8003F020: /* 8003F020 0003AC80 7F 04 C3 78 */ mr r4, r24 /* 8003F024 0003AC84 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003F028 0003AC88 48 35 64 01 */ bl func_80395428 /* 8003F02C 0003AC8C 90 7D 00 18 */ stw r3, 0x18(r29) /* 8003F030 0003AC90 7F 04 C3 78 */ mr r4, r24 /* 8003F034 0003AC94 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003F038 0003AC98 48 35 64 91 */ bl func_803954C8 /* 8003F03C 0003AC9C 90 7D 00 38 */ stw r3, 0x38(r29) /* 8003F040 0003ACA0 7F 04 C3 78 */ mr r4, r24 /* 8003F044 0003ACA4 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003F048 0003ACA8 48 35 65 21 */ bl func_80395568 /* 8003F04C 0003ACAC 90 7D 00 58 */ stw r3, 0x58(r29) /* 8003F050 0003ACB0 7F 04 C3 78 */ mr r4, r24 /* 8003F054 0003ACB4 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003F058 0003ACB8 48 35 65 B1 */ bl func_80395608 /* 8003F05C 0003ACBC 90 7D 00 78 */ stw r3, 0x78(r29) /* 8003F060 0003ACC0 7F 04 C3 78 */ mr r4, r24 /* 8003F064 0003ACC4 38 7F 00 2C */ addi r3, r31, 0x2c /* 8003F068 0003ACC8 48 35 66 41 */ bl func_803956A8 /* 8003F06C 0003ACCC 90 7D 00 98 */ stw r3, 0x98(r29) /* 8003F070 0003ACD0 3B 1D 00 0C */ addi r24, r29, 0xc /* 8003F074 0003ACD4 3B 21 00 18 */ addi r25, r1, 0x18 /* 8003F078 0003ACD8 3B 7D 00 AC */ addi r27, r29, 0xac /* 8003F07C 0003ACDC 3B 40 00 00 */ li r26, 0 /* 8003F080 0003ACE0 48 00 00 90 */ b lbl_8003F110 lbl_8003F084: /* 8003F084 0003ACE4 80 78 00 0C */ lwz r3, 0xc(r24) /* 8003F088 0003ACE8 54 60 BE BE */ rlwinm r0, r3, 0x17, 0x1a, 0x1f /* 8003F08C 0003ACEC 2C 00 00 04 */ cmpwi r0, 4 /* 8003F090 0003ACF0 41 82 00 2C */ beq lbl_8003F0BC /* 8003F094 0003ACF4 40 80 00 50 */ bge lbl_8003F0E4 /* 8003F098 0003ACF8 2C 00 00 03 */ cmpwi r0, 3 /* 8003F09C 0003ACFC 40 80 00 08 */ bge lbl_8003F0A4 /* 8003F0A0 0003AD00 48 00 00 44 */ b lbl_8003F0E4 lbl_8003F0A4: /* 8003F0A4 0003AD04 80 9C 00 04 */ lwz r4, 4(r28) /* 8003F0A8 0003AD08 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003F0AC 0003AD0C 80 B9 00 00 */ lwz r5, 0(r25) /* 8003F0B0 0003AD10 48 35 6E 91 */ bl func_80395F40 /* 8003F0B4 0003AD14 98 78 00 08 */ stb r3, 8(r24) /* 8003F0B8 0003AD18 48 00 00 50 */ b lbl_8003F108 lbl_8003F0BC: /* 8003F0BC 0003AD1C 80 9C 00 04 */ lwz r4, 4(r28) /* 8003F0C0 0003AD20 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003F0C4 0003AD24 80 B9 00 00 */ lwz r5, 0(r25) /* 8003F0C8 0003AD28 48 35 6F 21 */ bl func_80395FE8 /* 8003F0CC 0003AD2C 98 78 00 08 */ stb r3, 8(r24) /* 8003F0D0 0003AD30 7F 83 E3 78 */ mr r3, r28 /* 8003F0D4 0003AD34 80 98 00 0C */ lwz r4, 0xc(r24) /* 8003F0D8 0003AD38 4B FF FA F5 */ bl func_8003EBCC /* 8003F0DC 0003AD3C 90 78 00 10 */ stw r3, 0x10(r24) /* 8003F0E0 0003AD40 48 00 00 28 */ b lbl_8003F108 lbl_8003F0E4: /* 8003F0E4 0003AD44 28 03 00 64 */ cmplwi r3, 0x64 /* 8003F0E8 0003AD48 40 82 00 1C */ bne lbl_8003F104 /* 8003F0EC 0003AD4C 80 9C 00 04 */ lwz r4, 4(r28) /* 8003F0F0 0003AD50 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003F0F4 0003AD54 80 B9 00 00 */ lwz r5, 0(r25) /* 8003F0F8 0003AD58 48 35 6E F1 */ bl func_80395FE8 /* 8003F0FC 0003AD5C 98 78 00 08 */ stb r3, 8(r24) /* 8003F100 0003AD60 48 00 00 08 */ b lbl_8003F108 lbl_8003F104: /* 8003F104 0003AD64 9B 58 00 08 */ stb r26, 8(r24) lbl_8003F108: /* 8003F108 0003AD68 3B 18 00 20 */ addi r24, r24, 0x20 /* 8003F10C 0003AD6C 3B 39 00 04 */ addi r25, r25, 4 lbl_8003F110: /* 8003F110 0003AD70 7C 18 D8 40 */ cmplw r24, r27 /* 8003F114 0003AD74 40 82 FF 70 */ bne lbl_8003F084 /* 8003F118 0003AD78 3F E0 80 64 */ lis r31, lbl_8063CE34@ha /* 8003F11C 0003AD7C 3B 41 00 08 */ addi r26, r1, 8 /* 8003F120 0003AD80 3B FF CE 34 */ addi r31, r31, lbl_8063CE34@l /* 8003F124 0003AD84 3B 20 00 00 */ li r25, 0 /* 8003F128 0003AD88 3B 60 00 FF */ li r27, 0xff lbl_8003F12C: /* 8003F12C 0003AD8C 80 BA 00 00 */ lwz r5, 0(r26) /* 8003F130 0003AD90 28 05 00 07 */ cmplwi r5, 7 /* 8003F134 0003AD94 40 82 00 10 */ bne lbl_8003F144 /* 8003F138 0003AD98 7C 7D CA 14 */ add r3, r29, r25 /* 8003F13C 0003AD9C 9B 63 00 08 */ stb r27, 8(r3) /* 8003F140 0003ADA0 48 00 00 18 */ b lbl_8003F158 lbl_8003F144: /* 8003F144 0003ADA4 80 9C 00 04 */ lwz r4, 4(r28) /* 8003F148 0003ADA8 38 7F 00 28 */ addi r3, r31, 0x28 /* 8003F14C 0003ADAC 48 35 6E 49 */ bl func_80395F94 /* 8003F150 0003ADB0 7C 9D CA 14 */ add r4, r29, r25 /* 8003F154 0003ADB4 98 64 00 08 */ stb r3, 8(r4) lbl_8003F158: /* 8003F158 0003ADB8 3B 39 00 01 */ addi r25, r25, 1 /* 8003F15C 0003ADBC 3B 5A 00 04 */ addi r26, r26, 4 /* 8003F160 0003ADC0 2C 19 00 04 */ cmpwi r25, 4 /* 8003F164 0003ADC4 41 80 FF C8 */ blt lbl_8003F12C lbl_8003F168: /* 8003F168 0003ADC8 38 00 00 01 */ li r0, 1 /* 8003F16C 0003ADCC 3B 3D 00 0C */ addi r25, r29, 0xc /* 8003F170 0003ADD0 98 1D 00 00 */ stb r0, 0(r29) /* 8003F174 0003ADD4 3B 9D 00 AC */ addi r28, r29, 0xac /* 8003F178 0003ADD8 48 00 01 04 */ b lbl_8003F27C lbl_8003F17C: /* 8003F17C 0003ADDC 80 99 00 0C */ lwz r4, 0xc(r25) /* 8003F180 0003ADE0 2C 04 00 00 */ cmpwi r4, 0 /* 8003F184 0003ADE4 41 82 00 F4 */ beq lbl_8003F278 /* 8003F188 0003ADE8 28 04 00 64 */ cmplwi r4, 0x64 /* 8003F18C 0003ADEC 41 82 00 EC */ beq lbl_8003F278 /* 8003F190 0003ADF0 80 19 00 00 */ lwz r0, 0(r25) /* 8003F194 0003ADF4 7C 04 00 40 */ cmplw r4, r0 /* 8003F198 0003ADF8 41 82 00 E0 */ beq lbl_8003F278 /* 8003F19C 0003ADFC 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F1A0 0003AE00 48 19 C3 1D */ bl func_801DB4BC /* 8003F1A4 0003AE04 2C 1E 00 00 */ cmpwi r30, 0 /* 8003F1A8 0003AE08 41 82 00 1C */ beq lbl_8003F1C4 /* 8003F1AC 0003AE0C 7C 60 00 34 */ cntlzw r0, r3 /* 8003F1B0 0003AE10 80 99 00 0C */ lwz r4, 0xc(r25) /* 8003F1B4 0003AE14 7F C3 F3 78 */ mr r3, r30 /* 8003F1B8 0003AE18 54 05 D9 7E */ srwi r5, r0, 5 /* 8003F1BC 0003AE1C 4B FF F6 B1 */ bl func_8003E86C /* 8003F1C0 0003AE20 48 00 00 44 */ b lbl_8003F204 lbl_8003F1C4: /* 8003F1C4 0003AE24 2C 03 00 00 */ cmpwi r3, 0 /* 8003F1C8 0003AE28 40 82 00 30 */ bne lbl_8003F1F8 /* 8003F1CC 0003AE2C 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F1D0 0003AE30 80 99 00 0C */ lwz r4, 0xc(r25) /* 8003F1D4 0003AE34 48 20 A6 49 */ bl func_8024981C /* 8003F1D8 0003AE38 48 00 00 0C */ b lbl_8003F1E4 lbl_8003F1DC: /* 8003F1DC 0003AE3C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003F1E0 0003AE40 48 1E 53 A9 */ bl func_80224588 lbl_8003F1E4: /* 8003F1E4 0003AE44 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F1E8 0003AE48 80 99 00 0C */ lwz r4, 0xc(r25) /* 8003F1EC 0003AE4C 48 19 C2 D1 */ bl func_801DB4BC /* 8003F1F0 0003AE50 2C 03 00 00 */ cmpwi r3, 0 /* 8003F1F4 0003AE54 41 82 FF E8 */ beq lbl_8003F1DC lbl_8003F1F8: /* 8003F1F8 0003AE58 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F1FC 0003AE5C 80 99 00 0C */ lwz r4, 0xc(r25) /* 8003F200 0003AE60 48 19 C2 FD */ bl func_801DB4FC lbl_8003F204: /* 8003F204 0003AE64 80 99 00 10 */ lwz r4, 0x10(r25) /* 8003F208 0003AE68 2C 04 00 00 */ cmpwi r4, 0 /* 8003F20C 0003AE6C 41 82 00 6C */ beq lbl_8003F278 /* 8003F210 0003AE70 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F214 0003AE74 48 19 C2 A9 */ bl func_801DB4BC /* 8003F218 0003AE78 2C 1E 00 00 */ cmpwi r30, 0 /* 8003F21C 0003AE7C 41 82 00 1C */ beq lbl_8003F238 /* 8003F220 0003AE80 7C 60 00 34 */ cntlzw r0, r3 /* 8003F224 0003AE84 80 99 00 10 */ lwz r4, 0x10(r25) /* 8003F228 0003AE88 7F C3 F3 78 */ mr r3, r30 /* 8003F22C 0003AE8C 54 05 D9 7E */ srwi r5, r0, 5 /* 8003F230 0003AE90 4B FF F6 3D */ bl func_8003E86C /* 8003F234 0003AE94 48 00 00 44 */ b lbl_8003F278 lbl_8003F238: /* 8003F238 0003AE98 2C 03 00 00 */ cmpwi r3, 0 /* 8003F23C 0003AE9C 40 82 00 30 */ bne lbl_8003F26C /* 8003F240 0003AEA0 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F244 0003AEA4 80 99 00 10 */ lwz r4, 0x10(r25) /* 8003F248 0003AEA8 48 20 A5 D5 */ bl func_8024981C /* 8003F24C 0003AEAC 48 00 00 0C */ b lbl_8003F258 lbl_8003F250: /* 8003F250 0003AEB0 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003F254 0003AEB4 48 1E 53 35 */ bl func_80224588 lbl_8003F258: /* 8003F258 0003AEB8 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F25C 0003AEBC 80 99 00 10 */ lwz r4, 0x10(r25) /* 8003F260 0003AEC0 48 19 C2 5D */ bl func_801DB4BC /* 8003F264 0003AEC4 2C 03 00 00 */ cmpwi r3, 0 /* 8003F268 0003AEC8 41 82 FF E8 */ beq lbl_8003F250 lbl_8003F26C: /* 8003F26C 0003AECC 80 7D 00 04 */ lwz r3, 4(r29) /* 8003F270 0003AED0 80 99 00 10 */ lwz r4, 0x10(r25) /* 8003F274 0003AED4 48 19 C2 89 */ bl func_801DB4FC lbl_8003F278: /* 8003F278 0003AED8 3B 39 00 20 */ addi r25, r25, 0x20 lbl_8003F27C: /* 8003F27C 0003AEDC 7C 19 E0 40 */ cmplw r25, r28 /* 8003F280 0003AEE0 40 82 FE FC */ bne lbl_8003F17C /* 8003F284 0003AEE4 39 61 00 50 */ addi r11, r1, 0x50 /* 8003F288 0003AEE8 48 18 7E E1 */ bl _restgpr_24 /* 8003F28C 0003AEEC 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003F290 0003AEF0 7C 08 03 A6 */ mtlr r0 /* 8003F294 0003AEF4 38 21 00 50 */ addi r1, r1, 0x50 /* 8003F298 0003AEF8 4E 80 00 20 */ blr .global func_8003F29C func_8003F29C: /* 8003F29C 0003AEFC 94 21 FE 20 */ stwu r1, -0x1e0(r1) /* 8003F2A0 0003AF00 7C 08 02 A6 */ mflr r0 /* 8003F2A4 0003AF04 90 01 01 E4 */ stw r0, 0x1e4(r1) /* 8003F2A8 0003AF08 39 61 01 E0 */ addi r11, r1, 0x1e0 /* 8003F2AC 0003AF0C 48 18 7E 71 */ bl _savegpr_24 /* 8003F2B0 0003AF10 3D 20 80 64 */ lis r9, lbl_8063CE34@ha /* 8003F2B4 0003AF14 7C 7D 1B 78 */ mr r29, r3 /* 8003F2B8 0003AF18 39 29 CE 34 */ addi r9, r9, lbl_8063CE34@l /* 8003F2BC 0003AF1C 7C 9C 23 78 */ mr r28, r4 /* 8003F2C0 0003AF20 7C BA 2B 78 */ mr r26, r5 /* 8003F2C4 0003AF24 7C D9 33 78 */ mr r25, r6 /* 8003F2C8 0003AF28 7C FE 3B 78 */ mr r30, r7 /* 8003F2CC 0003AF2C 7D 18 43 78 */ mr r24, r8 /* 8003F2D0 0003AF30 38 69 00 28 */ addi r3, r9, 0x28 /* 8003F2D4 0003AF34 48 35 6B 11 */ bl func_80395DE4 /* 8003F2D8 0003AF38 7C 1C 18 40 */ cmplw r28, r3 /* 8003F2DC 0003AF3C 41 80 00 0C */ blt lbl_8003F2E8 /* 8003F2E0 0003AF40 38 60 00 00 */ li r3, 0 /* 8003F2E4 0003AF44 48 00 02 20 */ b lbl_8003F504 lbl_8003F2E8: /* 8003F2E8 0003AF48 2C 1E 00 00 */ cmpwi r30, 0 /* 8003F2EC 0003AF4C 40 82 00 18 */ bne lbl_8003F304 /* 8003F2F0 0003AF50 38 61 00 08 */ addi r3, r1, 8 /* 8003F2F4 0003AF54 38 80 00 00 */ li r4, 0 /* 8003F2F8 0003AF58 38 A0 00 0A */ li r5, 0xa /* 8003F2FC 0003AF5C 4B FC 4E 09 */ bl memset /* 8003F300 0003AF60 3B C1 00 08 */ addi r30, r1, 8 lbl_8003F304: /* 8003F304 0003AF64 7F 20 07 75 */ extsb. r0, r25 /* 8003F308 0003AF68 93 9D 00 04 */ stw r28, 4(r29) /* 8003F30C 0003AF6C 9B 5D 00 01 */ stb r26, 1(r29) /* 8003F310 0003AF70 41 80 00 08 */ blt lbl_8003F318 /* 8003F314 0003AF74 9B 3D 00 03 */ stb r25, 3(r29) lbl_8003F318: /* 8003F318 0003AF78 2C 1A 00 00 */ cmpwi r26, 0 /* 8003F31C 0003AF7C 41 82 00 30 */ beq lbl_8003F34C /* 8003F320 0003AF80 3F 60 80 64 */ lis r27, lbl_8063CE34@ha /* 8003F324 0003AF84 7F 84 E3 78 */ mr r4, r28 /* 8003F328 0003AF88 3B 7B CE 34 */ addi r27, r27, lbl_8063CE34@l /* 8003F32C 0003AF8C 38 7B 00 28 */ addi r3, r27, 0x28 /* 8003F330 0003AF90 48 35 6B A9 */ bl func_80395ED8 /* 8003F334 0003AF94 7C 7F 1B 78 */ mr r31, r3 /* 8003F338 0003AF98 7F 84 E3 78 */ mr r4, r28 /* 8003F33C 0003AF9C 38 7B 00 28 */ addi r3, r27, 0x28 /* 8003F340 0003AFA0 48 35 6B CD */ bl func_80395F0C /* 8003F344 0003AFA4 7C 79 1B 78 */ mr r25, r3 /* 8003F348 0003AFA8 48 00 00 2C */ b lbl_8003F374 lbl_8003F34C: /* 8003F34C 0003AFAC 3F 60 80 64 */ lis r27, lbl_8063CE34@ha /* 8003F350 0003AFB0 7F 84 E3 78 */ mr r4, r28 /* 8003F354 0003AFB4 3B 7B CE 34 */ addi r27, r27, lbl_8063CE34@l /* 8003F358 0003AFB8 38 7B 00 28 */ addi r3, r27, 0x28 /* 8003F35C 0003AFBC 48 35 6B 15 */ bl func_80395E70 /* 8003F360 0003AFC0 7C 7F 1B 78 */ mr r31, r3 /* 8003F364 0003AFC4 7F 84 E3 78 */ mr r4, r28 /* 8003F368 0003AFC8 38 7B 00 28 */ addi r3, r27, 0x28 /* 8003F36C 0003AFCC 48 35 6B 39 */ bl func_80395EA4 /* 8003F370 0003AFD0 7C 79 1B 78 */ mr r25, r3 lbl_8003F374: /* 8003F374 0003AFD4 2C 1F 00 00 */ cmpwi r31, 0 /* 8003F378 0003AFD8 41 82 00 0C */ beq lbl_8003F384 /* 8003F37C 0003AFDC 2C 19 00 00 */ cmpwi r25, 0 /* 8003F380 0003AFE0 40 82 00 0C */ bne lbl_8003F38C lbl_8003F384: /* 8003F384 0003AFE4 38 60 00 00 */ li r3, 0 /* 8003F388 0003AFE8 48 00 01 7C */ b lbl_8003F504 lbl_8003F38C: /* 8003F38C 0003AFEC 38 61 00 18 */ addi r3, r1, 0x18 /* 8003F390 0003AFF0 4B FF F4 C5 */ bl cPlayer_ClearSwapControllerTimer /* 8003F394 0003AFF4 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003F398 0003AFF8 7F 84 E3 78 */ mr r4, r28 /* 8003F39C 0003AFFC 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8003F3A0 0003B000 38 63 00 28 */ addi r3, r3, 0x28 /* 8003F3A4 0003B004 48 35 6A 5D */ bl func_80395E00 /* 8003F3A8 0003B008 2C 03 00 00 */ cmpwi r3, 0 /* 8003F3AC 0003B00C 41 82 00 D8 */ beq lbl_8003F484 /* 8003F3B0 0003B010 2C 18 00 00 */ cmpwi r24, 0 /* 8003F3B4 0003B014 41 82 00 38 */ beq lbl_8003F3EC /* 8003F3B8 0003B018 7F E3 FB 78 */ mr r3, r31 /* 8003F3BC 0003B01C 7F 24 CB 78 */ mr r4, r25 /* 8003F3C0 0003B020 48 19 C0 FD */ bl func_801DB4BC /* 8003F3C4 0003B024 7C 60 00 34 */ cntlzw r0, r3 /* 8003F3C8 0003B028 7F 24 CB 78 */ mr r4, r25 /* 8003F3CC 0003B02C 54 05 D9 7E */ srwi r5, r0, 5 /* 8003F3D0 0003B030 38 61 00 18 */ addi r3, r1, 0x18 /* 8003F3D4 0003B034 4B FF F4 99 */ bl func_8003E86C /* 8003F3D8 0003B038 7F A3 EB 78 */ mr r3, r29 /* 8003F3DC 0003B03C 7F 84 E3 78 */ mr r4, r28 /* 8003F3E0 0003B040 7F E5 FB 78 */ mr r5, r31 /* 8003F3E4 0003B044 38 C1 00 18 */ addi r6, r1, 0x18 /* 8003F3E8 0003B048 4B FF F8 BD */ bl func_8003ECA4 lbl_8003F3EC: /* 8003F3EC 0003B04C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003F3F0 0003B050 7F 84 E3 78 */ mr r4, r28 /* 8003F3F4 0003B054 3B 63 CE 34 */ addi r27, r3, lbl_8063CE34@l /* 8003F3F8 0003B058 38 7B 00 28 */ addi r3, r27, 0x28 /* 8003F3FC 0003B05C 48 35 6A 3D */ bl func_80395E38 /* 8003F400 0003B060 1F 23 00 0A */ mulli r25, r3, 0xa /* 8003F404 0003B064 3B 5D 00 18 */ addi r26, r29, 0x18 /* 8003F408 0003B068 3B 00 00 00 */ li r24, 0 lbl_8003F40C: /* 8003F40C 0003B06C 88 7E 00 00 */ lbz r3, 0(r30) /* 8003F410 0003B070 88 1A 00 01 */ lbz r0, 1(r26) /* 8003F414 0003B074 7C 00 18 40 */ cmplw r0, r3 /* 8003F418 0003B078 41 82 00 54 */ beq lbl_8003F46C /* 8003F41C 0003B07C 98 7A 00 01 */ stb r3, 1(r26) /* 8003F420 0003B080 7F 24 CB 78 */ mr r4, r25 /* 8003F424 0003B084 38 7B 00 30 */ addi r3, r27, 0x30 /* 8003F428 0003B088 48 35 66 E5 */ bl func_80395B0C /* 8003F42C 0003B08C 7C 7C 1B 78 */ mr r28, r3 /* 8003F430 0003B090 7F 24 CB 78 */ mr r4, r25 /* 8003F434 0003B094 38 7B 00 30 */ addi r3, r27, 0x30 /* 8003F438 0003B098 48 35 66 6D */ bl func_80395AA4 /* 8003F43C 0003B09C 88 9A 00 01 */ lbz r4, 1(r26) /* 8003F440 0003B0A0 57 80 04 3E */ clrlwi r0, r28, 0x10 /* 8003F444 0003B0A4 7C 00 20 00 */ cmpw r0, r4 /* 8003F448 0003B0A8 40 81 00 24 */ ble lbl_8003F46C /* 8003F44C 0003B0AC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8003F450 0003B0B0 93 FA 00 04 */ stw r31, 4(r26) /* 8003F454 0003B0B4 7F A3 EB 78 */ mr r3, r29 /* 8003F458 0003B0B8 7F 45 D3 78 */ mr r5, r26 /* 8003F45C 0003B0BC 7C 80 22 14 */ add r4, r0, r4 /* 8003F460 0003B0C0 38 E1 00 18 */ addi r7, r1, 0x18 /* 8003F464 0003B0C4 38 C0 00 00 */ li r6, 0 /* 8003F468 0003B0C8 4B FF F9 85 */ bl func_8003EDEC lbl_8003F46C: /* 8003F46C 0003B0CC 3B 18 00 01 */ addi r24, r24, 1 /* 8003F470 0003B0D0 3B 39 00 01 */ addi r25, r25, 1 /* 8003F474 0003B0D4 2C 18 00 0A */ cmpwi r24, 0xa /* 8003F478 0003B0D8 3B DE 00 01 */ addi r30, r30, 1 /* 8003F47C 0003B0DC 3B 5A 00 AC */ addi r26, r26, 0xac /* 8003F480 0003B0E0 41 80 FF 8C */ blt lbl_8003F40C lbl_8003F484: /* 8003F484 0003B0E4 38 61 00 18 */ addi r3, r1, 0x18 /* 8003F488 0003B0E8 4B FF F4 71 */ bl func_8003E8F8 /* 8003F48C 0003B0EC 2C 03 00 00 */ cmpwi r3, 0 /* 8003F490 0003B0F0 41 82 00 48 */ beq lbl_8003F4D8 /* 8003F494 0003B0F4 38 00 00 01 */ li r0, 1 /* 8003F498 0003B0F8 38 61 00 18 */ addi r3, r1, 0x18 /* 8003F49C 0003B0FC 98 1D 00 02 */ stb r0, 2(r29) /* 8003F4A0 0003B100 4B FF F4 61 */ bl func_8003E900 /* 8003F4A4 0003B104 3C A0 80 04 */ lis r5, lbl_8003F51C@ha /* 8003F4A8 0003B108 7C 64 1B 78 */ mr r4, r3 /* 8003F4AC 0003B10C 7F E3 FB 78 */ mr r3, r31 /* 8003F4B0 0003B110 7F A6 EB 78 */ mr r6, r29 /* 8003F4B4 0003B114 38 A5 F5 1C */ addi r5, r5, lbl_8003F51C@l /* 8003F4B8 0003B118 38 E0 00 00 */ li r7, 0 /* 8003F4BC 0003B11C 48 20 A3 01 */ bl func_802497BC /* 8003F4C0 0003B120 48 00 00 0C */ b lbl_8003F4CC lbl_8003F4C4: /* 8003F4C4 0003B124 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8003F4C8 0003B128 48 1E 50 C1 */ bl func_80224588 lbl_8003F4CC: /* 8003F4CC 0003B12C 88 1D 00 02 */ lbz r0, 2(r29) /* 8003F4D0 0003B130 2C 00 00 00 */ cmpwi r0, 0 /* 8003F4D4 0003B134 40 82 FF F0 */ bne lbl_8003F4C4 lbl_8003F4D8: /* 8003F4D8 0003B138 38 61 00 18 */ addi r3, r1, 0x18 /* 8003F4DC 0003B13C 4B FF F4 2D */ bl func_8003E908 /* 8003F4E0 0003B140 7C 78 1B 78 */ mr r24, r3 /* 8003F4E4 0003B144 48 00 00 10 */ b lbl_8003F4F4 lbl_8003F4E8: /* 8003F4E8 0003B148 7F E3 FB 78 */ mr r3, r31 /* 8003F4EC 0003B14C 48 19 C0 11 */ bl func_801DB4FC /* 8003F4F0 0003B150 3B 18 00 04 */ addi r24, r24, 4 lbl_8003F4F4: /* 8003F4F4 0003B154 80 98 00 00 */ lwz r4, 0(r24) /* 8003F4F8 0003B158 2C 04 00 00 */ cmpwi r4, 0 /* 8003F4FC 0003B15C 40 82 FF EC */ bne lbl_8003F4E8 /* 8003F500 0003B160 38 60 00 01 */ li r3, 1 lbl_8003F504: /* 8003F504 0003B164 39 61 01 E0 */ addi r11, r1, 0x1e0 /* 8003F508 0003B168 48 18 7C 61 */ bl _restgpr_24 /* 8003F50C 0003B16C 80 01 01 E4 */ lwz r0, 0x1e4(r1) /* 8003F510 0003B170 7C 08 03 A6 */ mtlr r0 /* 8003F514 0003B174 38 21 01 E0 */ addi r1, r1, 0x1e0 /* 8003F518 0003B178 4E 80 00 20 */ blr lbl_8003F51C: /* 8003F51C 0003B17C 38 00 00 00 */ li r0, 0 /* 8003F520 0003B180 98 04 00 02 */ stb r0, 2(r4) /* 8003F524 0003B184 4E 80 00 20 */ blr .global func_8003F528 func_8003F528: /* 8003F528 0003B188 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003F52C 0003B18C 7C 08 02 A6 */ mflr r0 /* 8003F530 0003B190 90 01 00 24 */ stw r0, 0x24(r1) /* 8003F534 0003B194 39 61 00 20 */ addi r11, r1, 0x20 /* 8003F538 0003B198 48 18 7B ED */ bl _savegpr_26 /* 8003F53C 0003B19C 3F C0 80 64 */ lis r30, lbl_8063CE34@ha /* 8003F540 0003B1A0 7C 9D 23 78 */ mr r29, r4 /* 8003F544 0003B1A4 80 83 00 04 */ lwz r4, 4(r3) /* 8003F548 0003B1A8 3B DE CE 34 */ addi r30, r30, lbl_8063CE34@l /* 8003F54C 0003B1AC 7C 7A 1B 78 */ mr r26, r3 /* 8003F550 0003B1B0 7C BB 2B 78 */ mr r27, r5 /* 8003F554 0003B1B4 38 7E 00 28 */ addi r3, r30, 0x28 /* 8003F558 0003B1B8 48 35 68 A9 */ bl func_80395E00 /* 8003F55C 0003B1BC 2C 03 00 00 */ cmpwi r3, 0 /* 8003F560 0003B1C0 40 82 00 0C */ bne lbl_8003F56C /* 8003F564 0003B1C4 38 60 00 00 */ li r3, 0 /* 8003F568 0003B1C8 48 00 00 84 */ b lbl_8003F5EC lbl_8003F56C: /* 8003F56C 0003B1CC 80 9A 00 04 */ lwz r4, 4(r26) /* 8003F570 0003B1D0 38 7E 00 28 */ addi r3, r30, 0x28 /* 8003F574 0003B1D4 48 35 68 C5 */ bl func_80395E38 /* 8003F578 0003B1D8 1C 1D 00 AC */ mulli r0, r29, 0xac /* 8003F57C 0003B1DC 7C 9A 02 14 */ add r4, r26, r0 /* 8003F580 0003B1E0 88 04 00 19 */ lbz r0, 0x19(r4) /* 8003F584 0003B1E4 3B 84 00 18 */ addi r28, r4, 0x18 /* 8003F588 0003B1E8 7C 00 D8 40 */ cmplw r0, r27 /* 8003F58C 0003B1EC 41 82 00 5C */ beq lbl_8003F5E8 /* 8003F590 0003B1F0 1C 03 00 0A */ mulli r0, r3, 0xa /* 8003F594 0003B1F4 38 7E 00 30 */ addi r3, r30, 0x30 /* 8003F598 0003B1F8 7F BD 02 14 */ add r29, r29, r0 /* 8003F59C 0003B1FC 7F A4 EB 78 */ mr r4, r29 /* 8003F5A0 0003B200 48 35 65 6D */ bl func_80395B0C /* 8003F5A4 0003B204 7C 7F 1B 78 */ mr r31, r3 /* 8003F5A8 0003B208 7F A4 EB 78 */ mr r4, r29 /* 8003F5AC 0003B20C 38 7E 00 30 */ addi r3, r30, 0x30 /* 8003F5B0 0003B210 48 35 64 F5 */ bl func_80395AA4 /* 8003F5B4 0003B214 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 8003F5B8 0003B218 7C 00 D8 00 */ cmpw r0, r27 /* 8003F5BC 0003B21C 40 81 00 2C */ ble lbl_8003F5E8 /* 8003F5C0 0003B220 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8003F5C4 0003B224 9B 7C 00 01 */ stb r27, 1(r28) /* 8003F5C8 0003B228 7F 43 D3 78 */ mr r3, r26 /* 8003F5CC 0003B22C 7F 85 E3 78 */ mr r5, r28 /* 8003F5D0 0003B230 7C 80 DA 14 */ add r4, r0, r27 /* 8003F5D4 0003B234 38 C0 00 01 */ li r6, 1 /* 8003F5D8 0003B238 38 E0 00 00 */ li r7, 0 /* 8003F5DC 0003B23C 4B FF F8 11 */ bl func_8003EDEC /* 8003F5E0 0003B240 38 60 00 01 */ li r3, 1 /* 8003F5E4 0003B244 48 00 00 08 */ b lbl_8003F5EC lbl_8003F5E8: /* 8003F5E8 0003B248 38 60 00 00 */ li r3, 0 lbl_8003F5EC: /* 8003F5EC 0003B24C 39 61 00 20 */ addi r11, r1, 0x20 /* 8003F5F0 0003B250 48 18 7B 81 */ bl _restgpr_26 /* 8003F5F4 0003B254 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003F5F8 0003B258 7C 08 03 A6 */ mtlr r0 /* 8003F5FC 0003B25C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003F600 0003B260 4E 80 00 20 */ blr .global func_8003F604 func_8003F604: /* 8003F604 0003B264 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8003F608 0003B268 7C 08 02 A6 */ mflr r0 /* 8003F60C 0003B26C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003F610 0003B270 39 61 00 30 */ addi r11, r1, 0x30 /* 8003F614 0003B274 48 18 7B 09 */ bl _savegpr_24 /* 8003F618 0003B278 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 8003F61C 0003B27C 7C 99 23 78 */ mr r25, r4 /* 8003F620 0003B280 80 83 00 04 */ lwz r4, 4(r3) /* 8003F624 0003B284 3B C5 CE 34 */ addi r30, r5, lbl_8063CE34@l /* 8003F628 0003B288 7C 78 1B 78 */ mr r24, r3 /* 8003F62C 0003B28C 3B 60 00 00 */ li r27, 0 /* 8003F630 0003B290 38 7E 00 28 */ addi r3, r30, 0x28 /* 8003F634 0003B294 48 35 67 CD */ bl func_80395E00 /* 8003F638 0003B298 2C 03 00 00 */ cmpwi r3, 0 /* 8003F63C 0003B29C 40 82 00 0C */ bne lbl_8003F648 /* 8003F640 0003B2A0 38 60 00 00 */ li r3, 0 /* 8003F644 0003B2A4 48 00 00 98 */ b lbl_8003F6DC lbl_8003F648: /* 8003F648 0003B2A8 80 98 00 04 */ lwz r4, 4(r24) /* 8003F64C 0003B2AC 38 7E 00 28 */ addi r3, r30, 0x28 /* 8003F650 0003B2B0 48 35 67 E9 */ bl func_80395E38 /* 8003F654 0003B2B4 1F 83 00 0A */ mulli r28, r3, 0xa /* 8003F658 0003B2B8 3B B8 00 18 */ addi r29, r24, 0x18 /* 8003F65C 0003B2BC 3B 40 00 00 */ li r26, 0 lbl_8003F660: /* 8003F660 0003B2C0 88 7D 00 01 */ lbz r3, 1(r29) /* 8003F664 0003B2C4 88 19 00 00 */ lbz r0, 0(r25) /* 8003F668 0003B2C8 7C 03 00 40 */ cmplw r3, r0 /* 8003F66C 0003B2CC 41 82 00 54 */ beq lbl_8003F6C0 /* 8003F670 0003B2D0 7F 84 E3 78 */ mr r4, r28 /* 8003F674 0003B2D4 38 7E 00 30 */ addi r3, r30, 0x30 /* 8003F678 0003B2D8 48 35 64 95 */ bl func_80395B0C /* 8003F67C 0003B2DC 7C 7F 1B 78 */ mr r31, r3 /* 8003F680 0003B2E0 7F 84 E3 78 */ mr r4, r28 /* 8003F684 0003B2E4 38 7E 00 30 */ addi r3, r30, 0x30 /* 8003F688 0003B2E8 48 35 64 1D */ bl func_80395AA4 /* 8003F68C 0003B2EC 88 99 00 00 */ lbz r4, 0(r25) /* 8003F690 0003B2F0 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 8003F694 0003B2F4 7C 00 20 00 */ cmpw r0, r4 /* 8003F698 0003B2F8 40 81 00 28 */ ble lbl_8003F6C0 /* 8003F69C 0003B2FC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8003F6A0 0003B300 98 9D 00 01 */ stb r4, 1(r29) /* 8003F6A4 0003B304 7F 03 C3 78 */ mr r3, r24 /* 8003F6A8 0003B308 7F A5 EB 78 */ mr r5, r29 /* 8003F6AC 0003B30C 7C 80 22 14 */ add r4, r0, r4 /* 8003F6B0 0003B310 38 C0 00 01 */ li r6, 1 /* 8003F6B4 0003B314 38 E0 00 00 */ li r7, 0 /* 8003F6B8 0003B318 4B FF F7 35 */ bl func_8003EDEC /* 8003F6BC 0003B31C 3B 60 00 01 */ li r27, 1 lbl_8003F6C0: /* 8003F6C0 0003B320 3B 5A 00 01 */ addi r26, r26, 1 /* 8003F6C4 0003B324 3B 9C 00 01 */ addi r28, r28, 1 /* 8003F6C8 0003B328 2C 1A 00 0A */ cmpwi r26, 0xa /* 8003F6CC 0003B32C 3B 39 00 01 */ addi r25, r25, 1 /* 8003F6D0 0003B330 3B BD 00 AC */ addi r29, r29, 0xac /* 8003F6D4 0003B334 41 80 FF 8C */ blt lbl_8003F660 /* 8003F6D8 0003B338 7F 63 DB 78 */ mr r3, r27 lbl_8003F6DC: /* 8003F6DC 0003B33C 39 61 00 30 */ addi r11, r1, 0x30 /* 8003F6E0 0003B340 48 18 7A 89 */ bl _restgpr_24 /* 8003F6E4 0003B344 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003F6E8 0003B348 7C 08 03 A6 */ mtlr r0 /* 8003F6EC 0003B34C 38 21 00 30 */ addi r1, r1, 0x30 /* 8003F6F0 0003B350 4E 80 00 20 */ blr .global func_8003F6F4 func_8003F6F4: /* 8003F6F4 0003B354 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8003F6F8 0003B358 7C 08 02 A6 */ mflr r0 /* 8003F6FC 0003B35C 90 01 00 54 */ stw r0, 0x54(r1) /* 8003F700 0003B360 39 61 00 50 */ addi r11, r1, 0x50 /* 8003F704 0003B364 48 18 79 F9 */ bl _savegpr_16 /* 8003F708 0003B368 2C 04 00 00 */ cmpwi r4, 0 /* 8003F70C 0003B36C 98 A3 00 00 */ stb r5, 0(r3) /* 8003F710 0003B370 7C 71 1B 78 */ mr r17, r3 /* 8003F714 0003B374 7C 92 23 78 */ mr r18, r4 /* 8003F718 0003B378 40 82 00 0C */ bne lbl_8003F724 /* 8003F71C 0003B37C 38 60 00 00 */ li r3, 0 /* 8003F720 0003B380 48 00 06 40 */ b lbl_8003FD60 lbl_8003F724: /* 8003F724 0003B384 80 83 00 14 */ lwz r4, 0x14(r3) /* 8003F728 0003B388 2C 04 00 00 */ cmpwi r4, 0 /* 8003F72C 0003B38C 41 82 00 C0 */ beq lbl_8003F7EC /* 8003F730 0003B390 80 63 00 10 */ lwz r3, 0x10(r3) /* 8003F734 0003B394 48 19 BD 89 */ bl func_801DB4BC /* 8003F738 0003B398 2C 03 00 00 */ cmpwi r3, 0 /* 8003F73C 0003B39C 7C 73 1B 78 */ mr r19, r3 /* 8003F740 0003B3A0 41 82 00 AC */ beq lbl_8003F7EC /* 8003F744 0003B3A4 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8003F748 0003B3A8 2C 05 00 02 */ cmpwi r5, 2 /* 8003F74C 0003B3AC 40 80 00 08 */ bge lbl_8003F754 /* 8003F750 0003B3B0 38 A0 00 02 */ li r5, 2 lbl_8003F754: /* 8003F754 0003B3B4 80 93 00 18 */ lwz r4, 0x18(r19) /* 8003F758 0003B3B8 7E 63 9B 78 */ mr r3, r19 /* 8003F75C 0003B3BC 2C 04 00 02 */ cmpwi r4, 2 /* 8003F760 0003B3C0 40 80 00 08 */ bge lbl_8003F768 /* 8003F764 0003B3C4 38 80 00 02 */ li r4, 2 lbl_8003F768: /* 8003F768 0003B3C8 80 D3 00 20 */ lwz r6, 0x20(r19) /* 8003F76C 0003B3CC 48 1F EC 5D */ bl func_8023E3C8 /* 8003F770 0003B3D0 80 92 00 1C */ lwz r4, 0x1c(r18) /* 8003F774 0003B3D4 A0 71 00 0C */ lhz r3, 0xc(r17) /* 8003F778 0003B3D8 2C 04 00 00 */ cmpwi r4, 0 /* 8003F77C 0003B3DC 40 82 00 0C */ bne lbl_8003F788 /* 8003F780 0003B3E0 3A 00 00 00 */ li r16, 0 /* 8003F784 0003B3E4 48 00 00 24 */ b lbl_8003F7A8 lbl_8003F788: /* 8003F788 0003B3E8 A0 12 00 E6 */ lhz r0, 0xe6(r18) /* 8003F78C 0003B3EC 7C 03 00 40 */ cmplw r3, r0 /* 8003F790 0003B3F0 41 80 00 0C */ blt lbl_8003F79C /* 8003F794 0003B3F4 3A 00 00 00 */ li r16, 0 /* 8003F798 0003B3F8 48 00 00 10 */ b lbl_8003F7A8 lbl_8003F79C: /* 8003F79C 0003B3FC 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003F7A0 0003B400 7C 64 00 2E */ lwzx r3, r4, r0 /* 8003F7A4 0003B404 82 03 00 14 */ lwz r16, 0x14(r3) lbl_8003F7A8: /* 8003F7A8 0003B408 2C 10 00 00 */ cmpwi r16, 0 /* 8003F7AC 0003B40C 41 82 00 40 */ beq lbl_8003F7EC /* 8003F7B0 0003B410 80 70 00 08 */ lwz r3, 8(r16) /* 8003F7B4 0003B414 80 03 00 50 */ lwz r0, 0x50(r3) /* 8003F7B8 0003B418 2C 00 00 00 */ cmpwi r0, 0 /* 8003F7BC 0003B41C 41 82 00 30 */ beq lbl_8003F7EC /* 8003F7C0 0003B420 80 70 00 14 */ lwz r3, 0x14(r16) /* 8003F7C4 0003B424 2C 03 00 00 */ cmpwi r3, 0 /* 8003F7C8 0003B428 41 82 00 20 */ beq lbl_8003F7E8 /* 8003F7CC 0003B42C 80 10 00 28 */ lwz r0, 0x28(r16) /* 8003F7D0 0003B430 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8003F7D4 0003B434 41 82 00 14 */ beq lbl_8003F7E8 /* 8003F7D8 0003B438 48 1F EA F9 */ bl func_8023E2D0 /* 8003F7DC 0003B43C 80 10 00 28 */ lwz r0, 0x28(r16) /* 8003F7E0 0003B440 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 8003F7E4 0003B444 90 10 00 28 */ stw r0, 0x28(r16) lbl_8003F7E8: /* 8003F7E8 0003B448 92 70 00 14 */ stw r19, 0x14(r16) lbl_8003F7EC: /* 8003F7EC 0003B44C 3B 51 00 18 */ addi r26, r17, 0x18 /* 8003F7F0 0003B450 3B 20 00 00 */ li r25, 0 /* 8003F7F4 0003B454 7F 5D D3 78 */ mr r29, r26 /* 8003F7F8 0003B458 3B E0 00 00 */ li r31, 0 lbl_8003F7FC: /* 8003F7FC 0003B45C 88 1D 00 00 */ lbz r0, 0(r29) /* 8003F800 0003B460 2C 00 00 00 */ cmpwi r0, 0 /* 8003F804 0003B464 41 82 03 D8 */ beq lbl_8003FBDC /* 8003F808 0003B468 9B FD 00 00 */ stb r31, 0(r29) /* 8003F80C 0003B46C 3A DD 00 0C */ addi r22, r29, 0xc /* 8003F810 0003B470 3A 1D 00 AC */ addi r16, r29, 0xac /* 8003F814 0003B474 3A A0 00 00 */ li r21, 0 /* 8003F818 0003B478 48 00 03 BC */ b lbl_8003FBD4 lbl_8003F81C: /* 8003F81C 0003B47C 83 96 00 00 */ lwz r28, 0(r22) /* 8003F820 0003B480 83 1D 00 04 */ lwz r24, 4(r29) /* 8003F824 0003B484 28 1C 00 64 */ cmplwi r28, 0x64 /* 8003F828 0003B488 82 F6 00 04 */ lwz r23, 4(r22) /* 8003F82C 0003B48C 41 82 00 10 */ beq lbl_8003F83C /* 8003F830 0003B490 80 16 00 0C */ lwz r0, 0xc(r22) /* 8003F834 0003B494 7C 1C 00 40 */ cmplw r28, r0 /* 8003F838 0003B498 41 82 03 94 */ beq lbl_8003FBCC lbl_8003F83C: /* 8003F83C 0003B49C 28 1C 00 64 */ cmplwi r28, 0x64 /* 8003F840 0003B4A0 83 76 00 14 */ lwz r27, 0x14(r22) /* 8003F844 0003B4A4 82 96 00 18 */ lwz r20, 0x18(r22) /* 8003F848 0003B4A8 40 82 00 08 */ bne lbl_8003F850 /* 8003F84C 0003B4AC 3A 80 00 00 */ li r20, 0 lbl_8003F850: /* 8003F850 0003B4B0 2C 1B 00 00 */ cmpwi r27, 0 /* 8003F854 0003B4B4 41 82 00 48 */ beq lbl_8003F89C /* 8003F858 0003B4B8 80 7B 00 08 */ lwz r3, 8(r27) /* 8003F85C 0003B4BC 2C 03 00 00 */ cmpwi r3, 0 /* 8003F860 0003B4C0 40 82 00 0C */ bne lbl_8003F86C /* 8003F864 0003B4C4 38 80 00 00 */ li r4, 0 /* 8003F868 0003B4C8 48 00 00 1C */ b lbl_8003F884 lbl_8003F86C: /* 8003F86C 0003B4CC A0 1B 00 DE */ lhz r0, 0xde(r27) /* 8003F870 0003B4D0 2C 00 00 00 */ cmpwi r0, 0 /* 8003F874 0003B4D4 40 82 00 0C */ bne lbl_8003F880 /* 8003F878 0003B4D8 38 80 00 00 */ li r4, 0 /* 8003F87C 0003B4DC 48 00 00 08 */ b lbl_8003F884 lbl_8003F880: /* 8003F880 0003B4E0 80 83 00 00 */ lwz r4, 0(r3) lbl_8003F884: /* 8003F884 0003B4E4 2C 04 00 00 */ cmpwi r4, 0 /* 8003F888 0003B4E8 41 82 00 14 */ beq lbl_8003F89C /* 8003F88C 0003B4EC 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 8003F890 0003B4F0 2C 03 00 00 */ cmpwi r3, 0 /* 8003F894 0003B4F4 41 82 00 08 */ beq lbl_8003F89C /* 8003F898 0003B4F8 48 1B 29 91 */ bl func_801F2228 lbl_8003F89C: /* 8003F89C 0003B4FC 80 16 00 18 */ lwz r0, 0x18(r22) /* 8003F8A0 0003B500 2C 00 00 00 */ cmpwi r0, 0 /* 8003F8A4 0003B504 41 82 00 18 */ beq lbl_8003F8BC /* 8003F8A8 0003B508 80 96 00 1C */ lwz r4, 0x1c(r22) /* 8003F8AC 0003B50C 2C 04 00 00 */ cmpwi r4, 0 /* 8003F8B0 0003B510 41 82 00 0C */ beq lbl_8003F8BC /* 8003F8B4 0003B514 7E 43 93 78 */ mr r3, r18 /* 8003F8B8 0003B518 48 1B 6A 4D */ bl func_801F6304 lbl_8003F8BC: /* 8003F8BC 0003B51C 93 F6 00 14 */ stw r31, 0x14(r22) /* 8003F8C0 0003B520 93 F6 00 18 */ stw r31, 0x18(r22) /* 8003F8C4 0003B524 80 16 00 0C */ lwz r0, 0xc(r22) /* 8003F8C8 0003B528 90 16 00 00 */ stw r0, 0(r22) /* 8003F8CC 0003B52C 80 96 00 0C */ lwz r4, 0xc(r22) /* 8003F8D0 0003B530 80 16 00 10 */ lwz r0, 0x10(r22) /* 8003F8D4 0003B534 2C 04 00 00 */ cmpwi r4, 0 /* 8003F8D8 0003B538 90 16 00 04 */ stw r0, 4(r22) /* 8003F8DC 0003B53C 41 82 02 A0 */ beq lbl_8003FB7C /* 8003F8E0 0003B540 54 80 BE BE */ rlwinm r0, r4, 0x17, 0x1a, 0x1f /* 8003F8E4 0003B544 28 00 00 03 */ cmplwi r0, 3 /* 8003F8E8 0003B548 40 82 00 EC */ bne lbl_8003F9D4 /* 8003F8EC 0003B54C 7F 03 C3 78 */ mr r3, r24 /* 8003F8F0 0003B550 48 19 BB CD */ bl func_801DB4BC /* 8003F8F4 0003B554 7C 73 1B 78 */ mr r19, r3 /* 8003F8F8 0003B558 48 19 B2 31 */ bl func_801DAB28 /* 8003F8FC 0003B55C 2C 03 00 00 */ cmpwi r3, 0 /* 8003F900 0003B560 41 82 00 14 */ beq lbl_8003F914 /* 8003F904 0003B564 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8003F908 0003B568 38 80 01 54 */ li r4, 0x154 /* 8003F90C 0003B56C 48 19 B3 89 */ bl func_801DAC94 /* 8003F910 0003B570 48 00 00 08 */ b lbl_8003F918 lbl_8003F914: /* 8003F914 0003B574 38 60 00 00 */ li r3, 0 lbl_8003F918: /* 8003F918 0003B578 2C 03 00 00 */ cmpwi r3, 0 /* 8003F91C 0003B57C 41 82 00 10 */ beq lbl_8003F92C /* 8003F920 0003B580 80 B3 00 08 */ lwz r5, 8(r19) /* 8003F924 0003B584 38 80 00 00 */ li r4, 0 /* 8003F928 0003B588 48 1B 4C F5 */ bl func_801F461C lbl_8003F92C: /* 8003F92C 0003B58C 90 76 00 14 */ stw r3, 0x14(r22) /* 8003F930 0003B590 88 11 00 00 */ lbz r0, 0(r17) /* 8003F934 0003B594 2C 00 00 00 */ cmpwi r0, 0 /* 8003F938 0003B598 41 82 00 14 */ beq lbl_8003F94C /* 8003F93C 0003B59C 80 76 00 14 */ lwz r3, 0x14(r22) /* 8003F940 0003B5A0 48 1C 3E D1 */ bl func_80203810 /* 8003F944 0003B5A4 80 76 00 14 */ lwz r3, 0x14(r22) /* 8003F948 0003B5A8 48 1C 0F 11 */ bl func_80200858 lbl_8003F94C: /* 8003F94C 0003B5AC 80 92 00 08 */ lwz r4, 8(r18) /* 8003F950 0003B5B0 88 76 00 08 */ lbz r3, 8(r22) /* 8003F954 0003B5B4 2C 04 00 00 */ cmpwi r4, 0 /* 8003F958 0003B5B8 40 82 00 0C */ bne lbl_8003F964 /* 8003F95C 0003B5BC 38 60 00 00 */ li r3, 0 /* 8003F960 0003B5C0 48 00 00 20 */ b lbl_8003F980 lbl_8003F964: /* 8003F964 0003B5C4 A0 12 00 DE */ lhz r0, 0xde(r18) /* 8003F968 0003B5C8 7C 03 00 40 */ cmplw r3, r0 /* 8003F96C 0003B5CC 41 80 00 0C */ blt lbl_8003F978 /* 8003F970 0003B5D0 38 60 00 00 */ li r3, 0 /* 8003F974 0003B5D4 48 00 00 0C */ b lbl_8003F980 lbl_8003F978: /* 8003F978 0003B5D8 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003F97C 0003B5DC 7C 64 00 2E */ lwzx r3, r4, r0 lbl_8003F980: /* 8003F980 0003B5E0 80 96 00 14 */ lwz r4, 0x14(r22) /* 8003F984 0003B5E4 80 A4 00 08 */ lwz r5, 8(r4) /* 8003F988 0003B5E8 2C 05 00 00 */ cmpwi r5, 0 /* 8003F98C 0003B5EC 40 82 00 0C */ bne lbl_8003F998 /* 8003F990 0003B5F0 38 A0 00 00 */ li r5, 0 /* 8003F994 0003B5F4 48 00 00 1C */ b lbl_8003F9B0 lbl_8003F998: /* 8003F998 0003B5F8 A0 04 00 DE */ lhz r0, 0xde(r4) /* 8003F99C 0003B5FC 2C 00 00 00 */ cmpwi r0, 0 /* 8003F9A0 0003B600 40 82 00 0C */ bne lbl_8003F9AC /* 8003F9A4 0003B604 38 A0 00 00 */ li r5, 0 /* 8003F9A8 0003B608 48 00 00 08 */ b lbl_8003F9B0 lbl_8003F9AC: /* 8003F9AC 0003B60C 80 A5 00 00 */ lwz r5, 0(r5) lbl_8003F9B0: /* 8003F9B0 0003B610 2C 03 00 00 */ cmpwi r3, 0 /* 8003F9B4 0003B614 41 82 01 C8 */ beq lbl_8003FB7C /* 8003F9B8 0003B618 2C 05 00 00 */ cmpwi r5, 0 /* 8003F9BC 0003B61C 41 82 01 C0 */ beq lbl_8003FB7C /* 8003F9C0 0003B620 38 80 00 07 */ li r4, 7 /* 8003F9C4 0003B624 38 C0 00 00 */ li r6, 0 /* 8003F9C8 0003B628 38 E0 00 03 */ li r7, 3 /* 8003F9CC 0003B62C 48 1B 27 C1 */ bl func_801F218C /* 8003F9D0 0003B630 48 00 01 AC */ b lbl_8003FB7C lbl_8003F9D4: /* 8003F9D4 0003B634 28 00 00 04 */ cmplwi r0, 4 /* 8003F9D8 0003B638 41 82 00 0C */ beq lbl_8003F9E4 /* 8003F9DC 0003B63C 28 04 00 64 */ cmplwi r4, 0x64 /* 8003F9E0 0003B640 40 82 01 9C */ bne lbl_8003FB7C lbl_8003F9E4: /* 8003F9E4 0003B644 28 04 00 64 */ cmplwi r4, 0x64 /* 8003F9E8 0003B648 40 82 00 54 */ bne lbl_8003FA3C /* 8003F9EC 0003B64C 38 15 FF FF */ addi r0, r21, -1 /* 8003F9F0 0003B650 54 00 28 34 */ slwi r0, r0, 5 /* 8003F9F4 0003B654 7C 7D 02 14 */ add r3, r29, r0 /* 8003F9F8 0003B658 80 63 00 20 */ lwz r3, 0x20(r3) /* 8003F9FC 0003B65C 2C 03 00 00 */ cmpwi r3, 0 /* 8003FA00 0003B660 41 82 01 04 */ beq lbl_8003FB04 /* 8003FA04 0003B664 80 83 00 1C */ lwz r4, 0x1c(r3) /* 8003FA08 0003B668 2C 04 00 00 */ cmpwi r4, 0 /* 8003FA0C 0003B66C 40 82 00 0C */ bne lbl_8003FA18 /* 8003FA10 0003B670 38 00 00 00 */ li r0, 0 /* 8003FA14 0003B674 48 00 00 20 */ b lbl_8003FA34 lbl_8003FA18: /* 8003FA18 0003B678 A0 03 00 E6 */ lhz r0, 0xe6(r3) /* 8003FA1C 0003B67C 2C 00 00 00 */ cmpwi r0, 0 /* 8003FA20 0003B680 40 82 00 0C */ bne lbl_8003FA2C /* 8003FA24 0003B684 38 00 00 00 */ li r0, 0 /* 8003FA28 0003B688 48 00 00 0C */ b lbl_8003FA34 lbl_8003FA2C: /* 8003FA2C 0003B68C 80 64 00 00 */ lwz r3, 0(r4) /* 8003FA30 0003B690 80 03 00 14 */ lwz r0, 0x14(r3) lbl_8003FA34: /* 8003FA34 0003B694 90 16 00 18 */ stw r0, 0x18(r22) /* 8003FA38 0003B698 48 00 00 CC */ b lbl_8003FB04 lbl_8003FA3C: /* 8003FA3C 0003B69C 7F 03 C3 78 */ mr r3, r24 /* 8003FA40 0003B6A0 48 19 BA 7D */ bl func_801DB4BC /* 8003FA44 0003B6A4 7C 73 1B 78 */ mr r19, r3 /* 8003FA48 0003B6A8 48 19 B0 E1 */ bl func_801DAB28 /* 8003FA4C 0003B6AC 2C 03 00 00 */ cmpwi r3, 0 /* 8003FA50 0003B6B0 41 82 00 14 */ beq lbl_8003FA64 /* 8003FA54 0003B6B4 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8003FA58 0003B6B8 38 80 00 38 */ li r4, 0x38 /* 8003FA5C 0003B6BC 48 19 B2 39 */ bl func_801DAC94 /* 8003FA60 0003B6C0 48 00 00 08 */ b lbl_8003FA68 lbl_8003FA64: /* 8003FA64 0003B6C4 38 60 00 00 */ li r3, 0 lbl_8003FA68: /* 8003FA68 0003B6C8 2C 03 00 00 */ cmpwi r3, 0 /* 8003FA6C 0003B6CC 41 82 00 10 */ beq lbl_8003FA7C /* 8003FA70 0003B6D0 80 93 00 18 */ lwz r4, 0x18(r19) /* 8003FA74 0003B6D4 80 B3 00 14 */ lwz r5, 0x14(r19) /* 8003FA78 0003B6D8 48 1A 71 81 */ bl func_801E6BF8 lbl_8003FA7C: /* 8003FA7C 0003B6DC 90 76 00 18 */ stw r3, 0x18(r22) /* 8003FA80 0003B6E0 80 96 00 10 */ lwz r4, 0x10(r22) /* 8003FA84 0003B6E4 2C 04 00 00 */ cmpwi r4, 0 /* 8003FA88 0003B6E8 41 82 00 7C */ beq lbl_8003FB04 /* 8003FA8C 0003B6EC 7F 03 C3 78 */ mr r3, r24 /* 8003FA90 0003B6F0 48 19 BA 2D */ bl func_801DB4BC /* 8003FA94 0003B6F4 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8003FA98 0003B6F8 7C 73 1B 78 */ mr r19, r3 /* 8003FA9C 0003B6FC 2C 05 00 02 */ cmpwi r5, 2 /* 8003FAA0 0003B700 40 80 00 08 */ bge lbl_8003FAA8 /* 8003FAA4 0003B704 38 A0 00 02 */ li r5, 2 lbl_8003FAA8: /* 8003FAA8 0003B708 80 93 00 18 */ lwz r4, 0x18(r19) /* 8003FAAC 0003B70C 7E 63 9B 78 */ mr r3, r19 /* 8003FAB0 0003B710 2C 04 00 02 */ cmpwi r4, 2 /* 8003FAB4 0003B714 40 80 00 08 */ bge lbl_8003FABC /* 8003FAB8 0003B718 38 80 00 02 */ li r4, 2 lbl_8003FABC: /* 8003FABC 0003B71C 80 D3 00 20 */ lwz r6, 0x20(r19) /* 8003FAC0 0003B720 48 1F E9 09 */ bl func_8023E3C8 /* 8003FAC4 0003B724 83 D6 00 18 */ lwz r30, 0x18(r22) /* 8003FAC8 0003B728 80 7E 00 08 */ lwz r3, 8(r30) /* 8003FACC 0003B72C 80 03 00 50 */ lwz r0, 0x50(r3) /* 8003FAD0 0003B730 2C 00 00 00 */ cmpwi r0, 0 /* 8003FAD4 0003B734 41 82 00 30 */ beq lbl_8003FB04 /* 8003FAD8 0003B738 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8003FADC 0003B73C 2C 03 00 00 */ cmpwi r3, 0 /* 8003FAE0 0003B740 41 82 00 20 */ beq lbl_8003FB00 /* 8003FAE4 0003B744 80 1E 00 28 */ lwz r0, 0x28(r30) /* 8003FAE8 0003B748 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8003FAEC 0003B74C 41 82 00 14 */ beq lbl_8003FB00 /* 8003FAF0 0003B750 48 1F E7 E1 */ bl func_8023E2D0 /* 8003FAF4 0003B754 80 1E 00 28 */ lwz r0, 0x28(r30) /* 8003FAF8 0003B758 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 8003FAFC 0003B75C 90 1E 00 28 */ stw r0, 0x28(r30) lbl_8003FB00: /* 8003FB00 0003B760 92 7E 00 14 */ stw r19, 0x14(r30) lbl_8003FB04: /* 8003FB04 0003B764 80 92 00 1C */ lwz r4, 0x1c(r18) /* 8003FB08 0003B768 88 76 00 08 */ lbz r3, 8(r22) /* 8003FB0C 0003B76C 2C 04 00 00 */ cmpwi r4, 0 /* 8003FB10 0003B770 40 82 00 0C */ bne lbl_8003FB1C /* 8003FB14 0003B774 38 60 00 00 */ li r3, 0 /* 8003FB18 0003B778 48 00 00 24 */ b lbl_8003FB3C lbl_8003FB1C: /* 8003FB1C 0003B77C A0 12 00 E6 */ lhz r0, 0xe6(r18) /* 8003FB20 0003B780 7C 03 00 40 */ cmplw r3, r0 /* 8003FB24 0003B784 41 80 00 0C */ blt lbl_8003FB30 /* 8003FB28 0003B788 38 60 00 00 */ li r3, 0 /* 8003FB2C 0003B78C 48 00 00 10 */ b lbl_8003FB3C lbl_8003FB30: /* 8003FB30 0003B790 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003FB34 0003B794 7C 64 00 2E */ lwzx r3, r4, r0 /* 8003FB38 0003B798 80 63 00 14 */ lwz r3, 0x14(r3) lbl_8003FB3C: /* 8003FB3C 0003B79C 2C 03 00 00 */ cmpwi r3, 0 /* 8003FB40 0003B7A0 41 82 00 3C */ beq lbl_8003FB7C /* 8003FB44 0003B7A4 80 16 00 18 */ lwz r0, 0x18(r22) /* 8003FB48 0003B7A8 2C 00 00 00 */ cmpwi r0, 0 /* 8003FB4C 0003B7AC 41 82 00 30 */ beq lbl_8003FB7C /* 8003FB50 0003B7B0 80 83 00 0C */ lwz r4, 0xc(r3) /* 8003FB54 0003B7B4 2C 04 00 00 */ cmpwi r4, 0 /* 8003FB58 0003B7B8 41 82 00 24 */ beq lbl_8003FB7C /* 8003FB5C 0003B7BC 80 04 00 00 */ lwz r0, 0(r4) /* 8003FB60 0003B7C0 2C 00 00 00 */ cmpwi r0, 0 /* 8003FB64 0003B7C4 41 82 00 18 */ beq lbl_8003FB7C /* 8003FB68 0003B7C8 90 16 00 1C */ stw r0, 0x1c(r22) /* 8003FB6C 0003B7CC 7E 43 93 78 */ mr r3, r18 /* 8003FB70 0003B7D0 80 84 00 00 */ lwz r4, 0(r4) /* 8003FB74 0003B7D4 80 B6 00 18 */ lwz r5, 0x18(r22) /* 8003FB78 0003B7D8 48 1B 66 ED */ bl func_801F6264 lbl_8003FB7C: /* 8003FB7C 0003B7DC 2C 1B 00 00 */ cmpwi r27, 0 /* 8003FB80 0003B7E0 41 82 00 10 */ beq lbl_8003FB90 /* 8003FB84 0003B7E4 7F 63 DB 78 */ mr r3, r27 /* 8003FB88 0003B7E8 38 80 00 01 */ li r4, 1 /* 8003FB8C 0003B7EC 48 1B 4F 65 */ bl func_801F4AF0 lbl_8003FB90: /* 8003FB90 0003B7F0 2C 14 00 00 */ cmpwi r20, 0 /* 8003FB94 0003B7F4 41 82 00 20 */ beq lbl_8003FBB4 /* 8003FB98 0003B7F8 41 82 00 1C */ beq lbl_8003FBB4 /* 8003FB9C 0003B7FC 81 94 00 34 */ lwz r12, 0x34(r20) /* 8003FBA0 0003B800 7E 83 A3 78 */ mr r3, r20 /* 8003FBA4 0003B804 38 80 00 01 */ li r4, 1 /* 8003FBA8 0003B808 81 8C 00 08 */ lwz r12, 8(r12) /* 8003FBAC 0003B80C 7D 89 03 A6 */ mtctr r12 /* 8003FBB0 0003B810 4E 80 04 21 */ bctrl lbl_8003FBB4: /* 8003FBB4 0003B814 7F 03 C3 78 */ mr r3, r24 /* 8003FBB8 0003B818 7F 84 E3 78 */ mr r4, r28 /* 8003FBBC 0003B81C 48 19 B9 8D */ bl func_801DB548 /* 8003FBC0 0003B820 7F 03 C3 78 */ mr r3, r24 /* 8003FBC4 0003B824 7E E4 BB 78 */ mr r4, r23 /* 8003FBC8 0003B828 48 19 B9 81 */ bl func_801DB548 lbl_8003FBCC: /* 8003FBCC 0003B82C 3A D6 00 20 */ addi r22, r22, 0x20 /* 8003FBD0 0003B830 3A B5 00 01 */ addi r21, r21, 1 lbl_8003FBD4: /* 8003FBD4 0003B834 7C 16 80 40 */ cmplw r22, r16 /* 8003FBD8 0003B838 40 82 FC 44 */ bne lbl_8003F81C lbl_8003FBDC: /* 8003FBDC 0003B83C 3B 39 00 01 */ addi r25, r25, 1 /* 8003FBE0 0003B840 3B BD 00 AC */ addi r29, r29, 0xac /* 8003FBE4 0003B844 2C 19 00 0A */ cmpwi r25, 0xa /* 8003FBE8 0003B848 41 80 FC 14 */ blt lbl_8003F7FC /* 8003FBEC 0003B84C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8003FBF0 0003B850 3A 00 00 00 */ li r16, 0 /* 8003FBF4 0003B854 3A 63 CE 34 */ addi r19, r3, lbl_8063CE34@l lbl_8003FBF8: /* 8003FBF8 0003B858 88 11 00 01 */ lbz r0, 1(r17) /* 8003FBFC 0003B85C 2C 00 00 00 */ cmpwi r0, 0 /* 8003FC00 0003B860 41 82 00 1C */ beq lbl_8003FC1C /* 8003FC04 0003B864 80 91 00 04 */ lwz r4, 4(r17) /* 8003FC08 0003B868 7E 05 83 78 */ mr r5, r16 /* 8003FC0C 0003B86C 38 73 00 28 */ addi r3, r19, 0x28 /* 8003FC10 0003B870 48 35 64 81 */ bl func_80396090 /* 8003FC14 0003B874 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8003FC18 0003B878 48 00 00 18 */ b lbl_8003FC30 lbl_8003FC1C: /* 8003FC1C 0003B87C 80 91 00 04 */ lwz r4, 4(r17) /* 8003FC20 0003B880 7E 05 83 78 */ mr r5, r16 /* 8003FC24 0003B884 38 73 00 28 */ addi r3, r19, 0x28 /* 8003FC28 0003B888 48 35 63 6D */ bl func_80395F94 /* 8003FC2C 0003B88C 54 63 06 3E */ clrlwi r3, r3, 0x18 lbl_8003FC30: /* 8003FC30 0003B890 2C 03 00 00 */ cmpwi r3, 0 /* 8003FC34 0003B894 41 82 00 48 */ beq lbl_8003FC7C /* 8003FC38 0003B898 80 92 00 08 */ lwz r4, 8(r18) /* 8003FC3C 0003B89C 2C 04 00 00 */ cmpwi r4, 0 /* 8003FC40 0003B8A0 40 82 00 0C */ bne lbl_8003FC4C /* 8003FC44 0003B8A4 38 60 00 00 */ li r3, 0 /* 8003FC48 0003B8A8 48 00 00 20 */ b lbl_8003FC68 lbl_8003FC4C: /* 8003FC4C 0003B8AC A0 12 00 DE */ lhz r0, 0xde(r18) /* 8003FC50 0003B8B0 7C 03 00 40 */ cmplw r3, r0 /* 8003FC54 0003B8B4 41 80 00 0C */ blt lbl_8003FC60 /* 8003FC58 0003B8B8 38 60 00 00 */ li r3, 0 /* 8003FC5C 0003B8BC 48 00 00 0C */ b lbl_8003FC68 lbl_8003FC60: /* 8003FC60 0003B8C0 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8003FC64 0003B8C4 7C 64 00 2E */ lwzx r3, r4, r0 lbl_8003FC68: /* 8003FC68 0003B8C8 2C 03 00 00 */ cmpwi r3, 0 /* 8003FC6C 0003B8CC 41 82 00 10 */ beq lbl_8003FC7C /* 8003FC70 0003B8D0 A0 03 00 10 */ lhz r0, 0x10(r3) /* 8003FC74 0003B8D4 60 00 00 02 */ ori r0, r0, 2 /* 8003FC78 0003B8D8 B0 03 00 10 */ sth r0, 0x10(r3) lbl_8003FC7C: /* 8003FC7C 0003B8DC 3A 10 00 01 */ addi r16, r16, 1 /* 8003FC80 0003B8E0 2C 10 00 04 */ cmpwi r16, 4 /* 8003FC84 0003B8E4 41 80 FF 74 */ blt lbl_8003FBF8 /* 8003FC88 0003B8E8 38 C0 00 00 */ li r6, 0 /* 8003FC8C 0003B8EC 38 00 00 02 */ li r0, 2 lbl_8003FC90: /* 8003FC90 0003B8F0 38 E0 00 00 */ li r7, 0 /* 8003FC94 0003B8F4 7C 09 03 A6 */ mtctr r0 lbl_8003FC98: /* 8003FC98 0003B8F8 7C 7A 3A 14 */ add r3, r26, r7 /* 8003FC9C 0003B8FC 88 83 00 08 */ lbz r4, 8(r3) /* 8003FCA0 0003B900 28 04 00 FF */ cmplwi r4, 0xff /* 8003FCA4 0003B904 41 82 00 48 */ beq lbl_8003FCEC /* 8003FCA8 0003B908 80 B2 00 08 */ lwz r5, 8(r18) /* 8003FCAC 0003B90C 2C 05 00 00 */ cmpwi r5, 0 /* 8003FCB0 0003B910 40 82 00 0C */ bne lbl_8003FCBC /* 8003FCB4 0003B914 38 80 00 00 */ li r4, 0 /* 8003FCB8 0003B918 48 00 00 20 */ b lbl_8003FCD8 lbl_8003FCBC: /* 8003FCBC 0003B91C A0 72 00 DE */ lhz r3, 0xde(r18) /* 8003FCC0 0003B920 7C 04 18 40 */ cmplw r4, r3 /* 8003FCC4 0003B924 41 80 00 0C */ blt lbl_8003FCD0 /* 8003FCC8 0003B928 38 80 00 00 */ li r4, 0 /* 8003FCCC 0003B92C 48 00 00 0C */ b lbl_8003FCD8 lbl_8003FCD0: /* 8003FCD0 0003B930 54 83 13 BA */ rlwinm r3, r4, 2, 0xe, 0x1d /* 8003FCD4 0003B934 7C 85 18 2E */ lwzx r4, r5, r3 lbl_8003FCD8: /* 8003FCD8 0003B938 2C 04 00 00 */ cmpwi r4, 0 /* 8003FCDC 0003B93C 41 82 00 10 */ beq lbl_8003FCEC /* 8003FCE0 0003B940 A0 64 00 10 */ lhz r3, 0x10(r4) /* 8003FCE4 0003B944 54 63 07 FA */ rlwinm r3, r3, 0, 0x1f, 0x1d /* 8003FCE8 0003B948 B0 64 00 10 */ sth r3, 0x10(r4) lbl_8003FCEC: /* 8003FCEC 0003B94C 38 E7 00 01 */ addi r7, r7, 1 /* 8003FCF0 0003B950 7C 7A 3A 14 */ add r3, r26, r7 /* 8003FCF4 0003B954 88 83 00 08 */ lbz r4, 8(r3) /* 8003FCF8 0003B958 28 04 00 FF */ cmplwi r4, 0xff /* 8003FCFC 0003B95C 41 82 00 48 */ beq lbl_8003FD44 /* 8003FD00 0003B960 80 B2 00 08 */ lwz r5, 8(r18) /* 8003FD04 0003B964 2C 05 00 00 */ cmpwi r5, 0 /* 8003FD08 0003B968 40 82 00 0C */ bne lbl_8003FD14 /* 8003FD0C 0003B96C 38 80 00 00 */ li r4, 0 /* 8003FD10 0003B970 48 00 00 20 */ b lbl_8003FD30 lbl_8003FD14: /* 8003FD14 0003B974 A0 72 00 DE */ lhz r3, 0xde(r18) /* 8003FD18 0003B978 7C 04 18 40 */ cmplw r4, r3 /* 8003FD1C 0003B97C 41 80 00 0C */ blt lbl_8003FD28 /* 8003FD20 0003B980 38 80 00 00 */ li r4, 0 /* 8003FD24 0003B984 48 00 00 0C */ b lbl_8003FD30 lbl_8003FD28: /* 8003FD28 0003B988 54 83 13 BA */ rlwinm r3, r4, 2, 0xe, 0x1d /* 8003FD2C 0003B98C 7C 85 18 2E */ lwzx r4, r5, r3 lbl_8003FD30: /* 8003FD30 0003B990 2C 04 00 00 */ cmpwi r4, 0 /* 8003FD34 0003B994 41 82 00 10 */ beq lbl_8003FD44 /* 8003FD38 0003B998 A0 64 00 10 */ lhz r3, 0x10(r4) /* 8003FD3C 0003B99C 54 63 07 FA */ rlwinm r3, r3, 0, 0x1f, 0x1d /* 8003FD40 0003B9A0 B0 64 00 10 */ sth r3, 0x10(r4) lbl_8003FD44: /* 8003FD44 0003B9A4 38 E7 00 01 */ addi r7, r7, 1 /* 8003FD48 0003B9A8 42 00 FF 50 */ bdnz lbl_8003FC98 /* 8003FD4C 0003B9AC 38 C6 00 01 */ addi r6, r6, 1 /* 8003FD50 0003B9B0 3B 5A 00 AC */ addi r26, r26, 0xac /* 8003FD54 0003B9B4 2C 06 00 0A */ cmpwi r6, 0xa /* 8003FD58 0003B9B8 41 80 FF 38 */ blt lbl_8003FC90 /* 8003FD5C 0003B9BC 38 60 00 01 */ li r3, 1 lbl_8003FD60: /* 8003FD60 0003B9C0 39 61 00 50 */ addi r11, r1, 0x50 /* 8003FD64 0003B9C4 48 18 73 E5 */ bl _restgpr_16 /* 8003FD68 0003B9C8 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003FD6C 0003B9CC 7C 08 03 A6 */ mtlr r0 /* 8003FD70 0003B9D0 38 21 00 50 */ addi r1, r1, 0x50 /* 8003FD74 0003B9D4 4E 80 00 20 */ blr .global func_8003FD78 func_8003FD78: /* 8003FD78 0003B9D8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003FD7C 0003B9DC 7C 08 02 A6 */ mflr r0 /* 8003FD80 0003B9E0 90 01 00 24 */ stw r0, 0x24(r1) /* 8003FD84 0003B9E4 39 61 00 20 */ addi r11, r1, 0x20 /* 8003FD88 0003B9E8 48 18 73 9D */ bl _savegpr_26 /* 8003FD8C 0003B9EC 7C 7F 1B 78 */ mr r31, r3 /* 8003FD90 0003B9F0 7C 9A 23 78 */ mr r26, r4 /* 8003FD94 0003B9F4 7C BB 2B 78 */ mr r27, r5 /* 8003FD98 0003B9F8 3B A0 00 00 */ li r29, 0 lbl_8003FD9C: /* 8003FD9C 0003B9FC 7F FE FB 78 */ mr r30, r31 /* 8003FDA0 0003BA00 3B 80 00 00 */ li r28, 0 lbl_8003FDA4: /* 8003FDA4 0003BA04 80 9E 00 38 */ lwz r4, 0x38(r30) /* 8003FDA8 0003BA08 2C 04 00 00 */ cmpwi r4, 0 /* 8003FDAC 0003BA0C 41 82 00 20 */ beq lbl_8003FDCC /* 8003FDB0 0003BA10 2C 1B 00 00 */ cmpwi r27, 0 /* 8003FDB4 0003BA14 41 82 00 10 */ beq lbl_8003FDC4 /* 8003FDB8 0003BA18 7F 43 D3 78 */ mr r3, r26 /* 8003FDBC 0003BA1C 48 1C 0E 99 */ bl func_80200C54 /* 8003FDC0 0003BA20 48 00 00 0C */ b lbl_8003FDCC lbl_8003FDC4: /* 8003FDC4 0003BA24 7F 43 D3 78 */ mr r3, r26 /* 8003FDC8 0003BA28 48 1C 0F 41 */ bl func_80200D08 lbl_8003FDCC: /* 8003FDCC 0003BA2C 3B 9C 00 01 */ addi r28, r28, 1 /* 8003FDD0 0003BA30 3B DE 00 20 */ addi r30, r30, 0x20 /* 8003FDD4 0003BA34 2C 1C 00 05 */ cmpwi r28, 5 /* 8003FDD8 0003BA38 41 80 FF CC */ blt lbl_8003FDA4 /* 8003FDDC 0003BA3C 3B BD 00 01 */ addi r29, r29, 1 /* 8003FDE0 0003BA40 3B FF 00 AC */ addi r31, r31, 0xac /* 8003FDE4 0003BA44 2C 1D 00 0A */ cmpwi r29, 0xa /* 8003FDE8 0003BA48 41 80 FF B4 */ blt lbl_8003FD9C /* 8003FDEC 0003BA4C 39 61 00 20 */ addi r11, r1, 0x20 /* 8003FDF0 0003BA50 48 18 73 81 */ bl _restgpr_26 /* 8003FDF4 0003BA54 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003FDF8 0003BA58 7C 08 03 A6 */ mtlr r0 /* 8003FDFC 0003BA5C 38 21 00 20 */ addi r1, r1, 0x20 /* 8003FE00 0003BA60 4E 80 00 20 */ blr .global func_8003FE04 func_8003FE04: /* 8003FE04 0003BA64 38 00 00 0A */ li r0, 0xa /* 8003FE08 0003BA68 39 20 00 00 */ li r9, 0 /* 8003FE0C 0003BA6C 7C 09 03 A6 */ mtctr r0 lbl_8003FE10: /* 8003FE10 0003BA70 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 8003FE14 0003BA74 1C 00 00 AC */ mulli r0, r0, 0xac /* 8003FE18 0003BA78 7D 03 02 14 */ add r8, r3, r0 /* 8003FE1C 0003BA7C 81 48 00 38 */ lwz r10, 0x38(r8) /* 8003FE20 0003BA80 2C 0A 00 00 */ cmpwi r10, 0 /* 8003FE24 0003BA84 41 82 00 20 */ beq lbl_8003FE44 /* 8003FE28 0003BA88 B0 8A 01 4C */ sth r4, 0x14c(r10) /* 8003FE2C 0003BA8C B0 AA 01 4E */ sth r5, 0x14e(r10) /* 8003FE30 0003BA90 B0 CA 01 50 */ sth r6, 0x150(r10) /* 8003FE34 0003BA94 B0 EA 01 52 */ sth r7, 0x152(r10) /* 8003FE38 0003BA98 A0 0A 00 DC */ lhz r0, 0xdc(r10) /* 8003FE3C 0003BA9C 60 00 01 00 */ ori r0, r0, 0x100 /* 8003FE40 0003BAA0 B0 0A 00 DC */ sth r0, 0xdc(r10) lbl_8003FE44: /* 8003FE44 0003BAA4 81 48 00 58 */ lwz r10, 0x58(r8) /* 8003FE48 0003BAA8 2C 0A 00 00 */ cmpwi r10, 0 /* 8003FE4C 0003BAAC 41 82 00 20 */ beq lbl_8003FE6C /* 8003FE50 0003BAB0 B0 8A 01 4C */ sth r4, 0x14c(r10) /* 8003FE54 0003BAB4 B0 AA 01 4E */ sth r5, 0x14e(r10) /* 8003FE58 0003BAB8 B0 CA 01 50 */ sth r6, 0x150(r10) /* 8003FE5C 0003BABC B0 EA 01 52 */ sth r7, 0x152(r10) /* 8003FE60 0003BAC0 A0 0A 00 DC */ lhz r0, 0xdc(r10) /* 8003FE64 0003BAC4 60 00 01 00 */ ori r0, r0, 0x100 /* 8003FE68 0003BAC8 B0 0A 00 DC */ sth r0, 0xdc(r10) lbl_8003FE6C: /* 8003FE6C 0003BACC 81 48 00 78 */ lwz r10, 0x78(r8) /* 8003FE70 0003BAD0 2C 0A 00 00 */ cmpwi r10, 0 /* 8003FE74 0003BAD4 41 82 00 20 */ beq lbl_8003FE94 /* 8003FE78 0003BAD8 B0 8A 01 4C */ sth r4, 0x14c(r10) /* 8003FE7C 0003BADC B0 AA 01 4E */ sth r5, 0x14e(r10) /* 8003FE80 0003BAE0 B0 CA 01 50 */ sth r6, 0x150(r10) /* 8003FE84 0003BAE4 B0 EA 01 52 */ sth r7, 0x152(r10) /* 8003FE88 0003BAE8 A0 0A 00 DC */ lhz r0, 0xdc(r10) /* 8003FE8C 0003BAEC 60 00 01 00 */ ori r0, r0, 0x100 /* 8003FE90 0003BAF0 B0 0A 00 DC */ sth r0, 0xdc(r10) lbl_8003FE94: /* 8003FE94 0003BAF4 81 48 00 98 */ lwz r10, 0x98(r8) /* 8003FE98 0003BAF8 2C 0A 00 00 */ cmpwi r10, 0 /* 8003FE9C 0003BAFC 41 82 00 20 */ beq lbl_8003FEBC /* 8003FEA0 0003BB00 B0 8A 01 4C */ sth r4, 0x14c(r10) /* 8003FEA4 0003BB04 B0 AA 01 4E */ sth r5, 0x14e(r10) /* 8003FEA8 0003BB08 B0 CA 01 50 */ sth r6, 0x150(r10) /* 8003FEAC 0003BB0C B0 EA 01 52 */ sth r7, 0x152(r10) /* 8003FEB0 0003BB10 A0 0A 00 DC */ lhz r0, 0xdc(r10) /* 8003FEB4 0003BB14 60 00 01 00 */ ori r0, r0, 0x100 /* 8003FEB8 0003BB18 B0 0A 00 DC */ sth r0, 0xdc(r10) lbl_8003FEBC: /* 8003FEBC 0003BB1C 81 48 00 B8 */ lwz r10, 0xb8(r8) /* 8003FEC0 0003BB20 2C 0A 00 00 */ cmpwi r10, 0 /* 8003FEC4 0003BB24 41 82 00 20 */ beq lbl_8003FEE4 /* 8003FEC8 0003BB28 B0 8A 01 4C */ sth r4, 0x14c(r10) /* 8003FECC 0003BB2C B0 AA 01 4E */ sth r5, 0x14e(r10) /* 8003FED0 0003BB30 B0 CA 01 50 */ sth r6, 0x150(r10) /* 8003FED4 0003BB34 B0 EA 01 52 */ sth r7, 0x152(r10) /* 8003FED8 0003BB38 A0 0A 00 DC */ lhz r0, 0xdc(r10) /* 8003FEDC 0003BB3C 60 00 01 00 */ ori r0, r0, 0x100 /* 8003FEE0 0003BB40 B0 0A 00 DC */ sth r0, 0xdc(r10) lbl_8003FEE4: /* 8003FEE4 0003BB44 39 29 00 01 */ addi r9, r9, 1 /* 8003FEE8 0003BB48 42 00 FF 28 */ bdnz lbl_8003FE10 /* 8003FEEC 0003BB4C 4E 80 00 20 */ blr .global func_8003FEF0 func_8003FEF0: /* 8003FEF0 0003BB50 38 E0 00 00 */ li r7, 0 /* 8003FEF4 0003BB54 38 00 00 05 */ li r0, 5 lbl_8003FEF8: /* 8003FEF8 0003BB58 54 E5 04 3E */ clrlwi r5, r7, 0x10 /* 8003FEFC 0003BB5C 39 00 00 00 */ li r8, 0 /* 8003FF00 0003BB60 1C A5 00 AC */ mulli r5, r5, 0xac /* 8003FF04 0003BB64 7C C3 2A 14 */ add r6, r3, r5 /* 8003FF08 0003BB68 7C 09 03 A6 */ mtctr r0 lbl_8003FF0C: /* 8003FF0C 0003BB6C 55 05 2A F4 */ rlwinm r5, r8, 5, 0xb, 0x1a /* 8003FF10 0003BB70 7C A6 2A 14 */ add r5, r6, r5 /* 8003FF14 0003BB74 81 25 00 38 */ lwz r9, 0x38(r5) /* 8003FF18 0003BB78 2C 09 00 00 */ cmpwi r9, 0 /* 8003FF1C 0003BB7C 41 82 00 28 */ beq lbl_8003FF44 /* 8003FF20 0003BB80 2C 04 00 00 */ cmpwi r4, 0 /* 8003FF24 0003BB84 41 82 00 14 */ beq lbl_8003FF38 /* 8003FF28 0003BB88 A0 A9 00 DC */ lhz r5, 0xdc(r9) /* 8003FF2C 0003BB8C 60 A5 00 01 */ ori r5, r5, 1 /* 8003FF30 0003BB90 B0 A9 00 DC */ sth r5, 0xdc(r9) /* 8003FF34 0003BB94 48 00 00 10 */ b lbl_8003FF44 lbl_8003FF38: /* 8003FF38 0003BB98 A0 A9 00 DC */ lhz r5, 0xdc(r9) /* 8003FF3C 0003BB9C 54 A5 04 3C */ rlwinm r5, r5, 0, 0x10, 0x1e /* 8003FF40 0003BBA0 B0 A9 00 DC */ sth r5, 0xdc(r9) lbl_8003FF44: /* 8003FF44 0003BBA4 39 08 00 01 */ addi r8, r8, 1 /* 8003FF48 0003BBA8 42 00 FF C4 */ bdnz lbl_8003FF0C /* 8003FF4C 0003BBAC 38 E7 00 01 */ addi r7, r7, 1 /* 8003FF50 0003BBB0 28 07 00 0A */ cmplwi r7, 0xa /* 8003FF54 0003BBB4 41 80 FF A4 */ blt lbl_8003FEF8 /* 8003FF58 0003BBB8 4E 80 00 20 */ blr .global func_8003FF5C func_8003FF5C: /* 8003FF5C 0003BBBC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003FF60 0003BBC0 7C 08 02 A6 */ mflr r0 /* 8003FF64 0003BBC4 90 01 00 24 */ stw r0, 0x24(r1) /* 8003FF68 0003BBC8 39 61 00 20 */ addi r11, r1, 0x20 /* 8003FF6C 0003BBCC 48 18 71 BD */ bl _savegpr_27 /* 8003FF70 0003BBD0 7C 7B 1B 78 */ mr r27, r3 /* 8003FF74 0003BBD4 7C 9C 23 78 */ mr r28, r4 /* 8003FF78 0003BBD8 3B C0 00 00 */ li r30, 0 lbl_8003FF7C: /* 8003FF7C 0003BBDC 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 8003FF80 0003BBE0 3B A0 00 00 */ li r29, 0 /* 8003FF84 0003BBE4 1C 00 00 AC */ mulli r0, r0, 0xac /* 8003FF88 0003BBE8 7F FB 02 14 */ add r31, r27, r0 lbl_8003FF8C: /* 8003FF8C 0003BBEC 57 A0 2A F4 */ rlwinm r0, r29, 5, 0xb, 0x1a /* 8003FF90 0003BBF0 7C 7F 02 14 */ add r3, r31, r0 /* 8003FF94 0003BBF4 80 63 00 38 */ lwz r3, 0x38(r3) /* 8003FF98 0003BBF8 2C 03 00 00 */ cmpwi r3, 0 /* 8003FF9C 0003BBFC 41 82 00 0C */ beq lbl_8003FFA8 /* 8003FFA0 0003BC00 7F 84 E3 78 */ mr r4, r28 /* 8003FFA4 0003BC04 48 1B 62 69 */ bl func_801F620C lbl_8003FFA8: /* 8003FFA8 0003BC08 3B BD 00 01 */ addi r29, r29, 1 /* 8003FFAC 0003BC0C 28 1D 00 05 */ cmplwi r29, 5 /* 8003FFB0 0003BC10 41 80 FF DC */ blt lbl_8003FF8C /* 8003FFB4 0003BC14 3B DE 00 01 */ addi r30, r30, 1 /* 8003FFB8 0003BC18 28 1E 00 0A */ cmplwi r30, 0xa /* 8003FFBC 0003BC1C 41 80 FF C0 */ blt lbl_8003FF7C /* 8003FFC0 0003BC20 39 61 00 20 */ addi r11, r1, 0x20 /* 8003FFC4 0003BC24 48 18 71 B1 */ bl _restgpr_27 /* 8003FFC8 0003BC28 80 01 00 24 */ lwz r0, 0x24(r1) /* 8003FFCC 0003BC2C 7C 08 03 A6 */ mtlr r0 /* 8003FFD0 0003BC30 38 21 00 20 */ addi r1, r1, 0x20 /* 8003FFD4 0003BC34 4E 80 00 20 */ blr .global func_8003FFD8 func_8003FFD8: /* 8003FFD8 0003BC38 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8003FFDC 0003BC3C 7C 08 02 A6 */ mflr r0 /* 8003FFE0 0003BC40 90 01 00 24 */ stw r0, 0x24(r1) /* 8003FFE4 0003BC44 39 61 00 20 */ addi r11, r1, 0x20 /* 8003FFE8 0003BC48 48 18 71 41 */ bl _savegpr_27 /* 8003FFEC 0003BC4C 7C 7B 1B 78 */ mr r27, r3 /* 8003FFF0 0003BC50 7C 9C 23 78 */ mr r28, r4 /* 8003FFF4 0003BC54 3B C0 00 00 */ li r30, 0 lbl_8003FFF8: /* 8003FFF8 0003BC58 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 8003FFFC 0003BC5C 3B A0 00 00 */ li r29, 0 /* 80040000 0003BC60 1C 00 00 AC */ mulli r0, r0, 0xac /* 80040004 0003BC64 7F FB 02 14 */ add r31, r27, r0 lbl_80040008: /* 80040008 0003BC68 57 A0 2A F4 */ rlwinm r0, r29, 5, 0xb, 0x1a /* 8004000C 0003BC6C 7C 7F 02 14 */ add r3, r31, r0 /* 80040010 0003BC70 80 63 00 38 */ lwz r3, 0x38(r3) /* 80040014 0003BC74 2C 03 00 00 */ cmpwi r3, 0 /* 80040018 0003BC78 41 82 00 0C */ beq lbl_80040024 /* 8004001C 0003BC7C 7F 84 E3 78 */ mr r4, r28 /* 80040020 0003BC80 48 1B 61 75 */ bl func_801F6194 lbl_80040024: /* 80040024 0003BC84 3B BD 00 01 */ addi r29, r29, 1 /* 80040028 0003BC88 28 1D 00 05 */ cmplwi r29, 5 /* 8004002C 0003BC8C 41 80 FF DC */ blt lbl_80040008 /* 80040030 0003BC90 3B DE 00 01 */ addi r30, r30, 1 /* 80040034 0003BC94 28 1E 00 0A */ cmplwi r30, 0xa /* 80040038 0003BC98 41 80 FF C0 */ blt lbl_8003FFF8 /* 8004003C 0003BC9C 39 61 00 20 */ addi r11, r1, 0x20 /* 80040040 0003BCA0 48 18 71 35 */ bl _restgpr_27 /* 80040044 0003BCA4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040048 0003BCA8 7C 08 03 A6 */ mtlr r0 /* 8004004C 0003BCAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80040050 0003BCB0 4E 80 00 20 */ blr .global func_80040054 func_80040054: /* 80040054 0003BCB4 38 00 00 0A */ li r0, 0xa /* 80040058 0003BCB8 38 C0 00 00 */ li r6, 0 /* 8004005C 0003BCBC 7C 09 03 A6 */ mtctr r0 lbl_80040060: /* 80040060 0003BCC0 54 C0 04 3E */ clrlwi r0, r6, 0x10 /* 80040064 0003BCC4 1C 00 00 AC */ mulli r0, r0, 0xac /* 80040068 0003BCC8 7C A3 02 14 */ add r5, r3, r0 /* 8004006C 0003BCCC 80 E5 00 38 */ lwz r7, 0x38(r5) /* 80040070 0003BCD0 2C 07 00 00 */ cmpwi r7, 0 /* 80040074 0003BCD4 41 82 00 08 */ beq lbl_8004007C /* 80040078 0003BCD8 90 87 00 3C */ stw r4, 0x3c(r7) lbl_8004007C: /* 8004007C 0003BCDC 80 E5 00 58 */ lwz r7, 0x58(r5) /* 80040080 0003BCE0 2C 07 00 00 */ cmpwi r7, 0 /* 80040084 0003BCE4 41 82 00 08 */ beq lbl_8004008C /* 80040088 0003BCE8 90 87 00 3C */ stw r4, 0x3c(r7) lbl_8004008C: /* 8004008C 0003BCEC 80 E5 00 78 */ lwz r7, 0x78(r5) /* 80040090 0003BCF0 2C 07 00 00 */ cmpwi r7, 0 /* 80040094 0003BCF4 41 82 00 08 */ beq lbl_8004009C /* 80040098 0003BCF8 90 87 00 3C */ stw r4, 0x3c(r7) lbl_8004009C: /* 8004009C 0003BCFC 80 E5 00 98 */ lwz r7, 0x98(r5) /* 800400A0 0003BD00 2C 07 00 00 */ cmpwi r7, 0 /* 800400A4 0003BD04 41 82 00 08 */ beq lbl_800400AC /* 800400A8 0003BD08 90 87 00 3C */ stw r4, 0x3c(r7) lbl_800400AC: /* 800400AC 0003BD0C 80 E5 00 B8 */ lwz r7, 0xb8(r5) /* 800400B0 0003BD10 2C 07 00 00 */ cmpwi r7, 0 /* 800400B4 0003BD14 41 82 00 08 */ beq lbl_800400BC /* 800400B8 0003BD18 90 87 00 3C */ stw r4, 0x3c(r7) lbl_800400BC: /* 800400BC 0003BD1C 38 C6 00 01 */ addi r6, r6, 1 /* 800400C0 0003BD20 42 00 FF A0 */ bdnz lbl_80040060 /* 800400C4 0003BD24 4E 80 00 20 */ blr .global func_800400C8 func_800400C8: /* 800400C8 0003BD28 38 A0 00 01 */ li r5, 1 /* 800400CC 0003BD2C 38 6D 97 C8 */ addi r3, r13, lbl_8063EA88-_SDA_BASE_ /* 800400D0 0003BD30 38 80 00 04 */ li r4, 4 /* 800400D4 0003BD34 38 00 00 00 */ li r0, 0 /* 800400D8 0003BD38 98 AD 97 C8 */ stb r5, lbl_8063EA88-_SDA_BASE_(r13) /* 800400DC 0003BD3C B0 83 00 02 */ sth r4, 2(r3) /* 800400E0 0003BD40 98 03 00 04 */ stb r0, 4(r3) /* 800400E4 0003BD44 4E 80 00 20 */ blr .global func_800400E8 func_800400E8: /* 800400E8 0003BD48 C0 05 00 00 */ lfs f0, 0(r5) /* 800400EC 0003BD4C C0 C4 00 00 */ lfs f6, 0(r4) /* 800400F0 0003BD50 C0 65 00 04 */ lfs f3, 4(r5) /* 800400F4 0003BD54 EC A0 30 28 */ fsubs f5, f0, f6 /* 800400F8 0003BD58 C0 84 00 04 */ lfs f4, 4(r4) /* 800400FC 0003BD5C C0 05 00 08 */ lfs f0, 8(r5) /* 80040100 0003BD60 C0 44 00 08 */ lfs f2, 8(r4) /* 80040104 0003BD64 EC 63 20 28 */ fsubs f3, f3, f4 /* 80040108 0003BD68 EC A1 01 72 */ fmuls f5, f1, f5 /* 8004010C 0003BD6C EC 00 10 28 */ fsubs f0, f0, f2 /* 80040110 0003BD70 EC 61 00 F2 */ fmuls f3, f1, f3 /* 80040114 0003BD74 EC A6 28 2A */ fadds f5, f6, f5 /* 80040118 0003BD78 EC 01 00 32 */ fmuls f0, f1, f0 /* 8004011C 0003BD7C EC 24 18 2A */ fadds f1, f4, f3 /* 80040120 0003BD80 D0 A3 00 00 */ stfs f5, 0(r3) /* 80040124 0003BD84 EC 02 00 2A */ fadds f0, f2, f0 /* 80040128 0003BD88 D0 23 00 04 */ stfs f1, 4(r3) /* 8004012C 0003BD8C D0 03 00 08 */ stfs f0, 8(r3) /* 80040130 0003BD90 4E 80 00 20 */ blr lbl_80040134: /* 80040134 0003BD94 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80040138 0003BD98 7C 08 02 A6 */ mflr r0 /* 8004013C 0003BD9C 90 01 00 14 */ stw r0, 0x14(r1) /* 80040140 0003BDA0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80040144 0003BDA4 48 00 00 B1 */ bl func_800401F4 /* 80040148 0003BDA8 2C 03 00 00 */ cmpwi r3, 0 /* 8004014C 0003BDAC 7C 7F 1B 78 */ mr r31, r3 /* 80040150 0003BDB0 41 82 00 10 */ beq lbl_80040160 /* 80040154 0003BDB4 4B FC 72 49 */ bl func_8000739C /* 80040158 0003BDB8 7F E3 FB 78 */ mr r3, r31 /* 8004015C 0003BDBC 48 00 02 55 */ bl func_800403B0 lbl_80040160: /* 80040160 0003BDC0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80040164 0003BDC4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80040168 0003BDC8 7C 08 03 A6 */ mtlr r0 /* 8004016C 0003BDCC 38 21 00 10 */ addi r1, r1, 0x10 /* 80040170 0003BDD0 4E 80 00 20 */ blr lbl_80040174: /* 80040174 0003BDD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80040178 0003BDD8 7C 08 02 A6 */ mflr r0 /* 8004017C 0003BDDC 90 01 00 14 */ stw r0, 0x14(r1) /* 80040180 0003BDE0 48 00 00 75 */ bl func_800401F4 /* 80040184 0003BDE4 2C 03 00 00 */ cmpwi r3, 0 /* 80040188 0003BDE8 41 82 00 08 */ beq lbl_80040190 /* 8004018C 0003BDEC 48 00 02 A9 */ bl func_80040434 lbl_80040190: /* 80040190 0003BDF0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80040194 0003BDF4 7C 08 03 A6 */ mtlr r0 /* 80040198 0003BDF8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004019C 0003BDFC 4E 80 00 20 */ blr .global func_800401A0 func_800401A0: /* 800401A0 0003BE00 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800401A4 0003BE04 7C 08 02 A6 */ mflr r0 /* 800401A8 0003BE08 38 60 37 E4 */ li r3, 0x37e4 /* 800401AC 0003BE0C 90 01 00 14 */ stw r0, 0x14(r1) /* 800401B0 0003BE10 48 19 A8 81 */ bl func_801DAA30 /* 800401B4 0003BE14 2C 03 00 00 */ cmpwi r3, 0 /* 800401B8 0003BE18 41 82 00 08 */ beq lbl_800401C0 /* 800401BC 0003BE1C 48 00 00 B9 */ bl func_80040274 lbl_800401C0: /* 800401C0 0003BE20 3C 80 80 04 */ lis r4, lbl_80040134@ha /* 800401C4 0003BE24 3C A0 80 04 */ lis r5, lbl_80040174@ha /* 800401C8 0003BE28 90 6D 97 D8 */ stw r3, lbl_8063EA98-_SDA_BASE_(r13) /* 800401CC 0003BE2C 38 84 01 34 */ addi r4, r4, lbl_80040134@l /* 800401D0 0003BE30 80 6D A4 B8 */ lwz r3, lbl_8063F778-_SDA_BASE_(r13) /* 800401D4 0003BE34 38 A5 01 74 */ addi r5, r5, lbl_80040174@l /* 800401D8 0003BE38 38 C0 00 03 */ li r6, 3 /* 800401DC 0003BE3C 38 E0 00 0C */ li r7, 0xc /* 800401E0 0003BE40 48 1F E9 79 */ bl func_8023EB58 /* 800401E4 0003BE44 80 01 00 14 */ lwz r0, 0x14(r1) /* 800401E8 0003BE48 7C 08 03 A6 */ mtlr r0 /* 800401EC 0003BE4C 38 21 00 10 */ addi r1, r1, 0x10 /* 800401F0 0003BE50 4E 80 00 20 */ blr .global func_800401F4 func_800401F4: /* 800401F4 0003BE54 80 6D 97 D8 */ lwz r3, lbl_8063EA98-_SDA_BASE_(r13) /* 800401F8 0003BE58 4E 80 00 20 */ blr .global func_800401FC func_800401FC: /* 800401FC 0003BE5C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80040200 0003BE60 7C 08 02 A6 */ mflr r0 /* 80040204 0003BE64 90 01 00 24 */ stw r0, 0x24(r1) /* 80040208 0003BE68 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004020C 0003BE6C 7C 7F 1B 78 */ mr r31, r3 /* 80040210 0003BE70 93 C1 00 18 */ stw r30, 0x18(r1) /* 80040214 0003BE74 3B C3 00 04 */ addi r30, r3, 4 /* 80040218 0003BE78 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004021C 0003BE7C 3B A0 00 00 */ li r29, 0 /* 80040220 0003BE80 93 81 00 10 */ stw r28, 0x10(r1) /* 80040224 0003BE84 7C 9C 23 78 */ mr r28, r4 lbl_80040228: /* 80040228 0003BE88 88 1F 00 04 */ lbz r0, 4(r31) /* 8004022C 0003BE8C 2C 00 00 00 */ cmpwi r0, 0 /* 80040230 0003BE90 41 82 00 10 */ beq lbl_80040240 /* 80040234 0003BE94 7F C3 F3 78 */ mr r3, r30 /* 80040238 0003BE98 7F 84 E3 78 */ mr r4, r28 /* 8004023C 0003BE9C 48 00 45 35 */ bl func_80044770 lbl_80040240: /* 80040240 0003BEA0 3B BD 00 01 */ addi r29, r29, 1 /* 80040244 0003BEA4 3B DE 06 FC */ addi r30, r30, 0x6fc /* 80040248 0003BEA8 28 1D 00 08 */ cmplwi r29, 8 /* 8004024C 0003BEAC 3B FF 06 FC */ addi r31, r31, 0x6fc /* 80040250 0003BEB0 41 80 FF D8 */ blt lbl_80040228 /* 80040254 0003BEB4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040258 0003BEB8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004025C 0003BEBC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80040260 0003BEC0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80040264 0003BEC4 83 81 00 10 */ lwz r28, 0x10(r1) /* 80040268 0003BEC8 7C 08 03 A6 */ mtlr r0 /* 8004026C 0003BECC 38 21 00 20 */ addi r1, r1, 0x20 /* 80040270 0003BED0 4E 80 00 20 */ blr .global func_80040274 func_80040274: /* 80040274 0003BED4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80040278 0003BED8 7C 08 02 A6 */ mflr r0 /* 8004027C 0003BEDC 90 01 00 24 */ stw r0, 0x24(r1) /* 80040280 0003BEE0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80040284 0003BEE4 3B E3 37 E4 */ addi r31, r3, 0x37e4 /* 80040288 0003BEE8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004028C 0003BEEC 3B C3 00 04 */ addi r30, r3, 4 /* 80040290 0003BEF0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80040294 0003BEF4 7C 7D 1B 78 */ mr r29, r3 lbl_80040298: /* 80040298 0003BEF8 7F C3 F3 78 */ mr r3, r30 /* 8004029C 0003BEFC 48 00 0C 09 */ bl func_80040EA4 /* 800402A0 0003BF00 3B DE 06 FC */ addi r30, r30, 0x6fc /* 800402A4 0003BF04 7C 1E F8 40 */ cmplw r30, r31 /* 800402A8 0003BF08 41 80 FF F0 */ blt lbl_80040298 /* 800402AC 0003BF0C 38 00 00 00 */ li r0, 0 /* 800402B0 0003BF10 7F A3 EB 78 */ mr r3, r29 /* 800402B4 0003BF14 98 1D 00 00 */ stb r0, 0(r29) /* 800402B8 0003BF18 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800402BC 0003BF1C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800402C0 0003BF20 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800402C4 0003BF24 80 01 00 24 */ lwz r0, 0x24(r1) /* 800402C8 0003BF28 7C 08 03 A6 */ mtlr r0 /* 800402CC 0003BF2C 38 21 00 20 */ addi r1, r1, 0x20 /* 800402D0 0003BF30 4E 80 00 20 */ blr .global func_800402D4 func_800402D4: /* 800402D4 0003BF34 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800402D8 0003BF38 7C 08 02 A6 */ mflr r0 /* 800402DC 0003BF3C 90 01 00 24 */ stw r0, 0x24(r1) /* 800402E0 0003BF40 38 00 00 08 */ li r0, 8 /* 800402E4 0003BF44 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800402E8 0003BF48 93 C1 00 18 */ stw r30, 0x18(r1) /* 800402EC 0003BF4C 3B C0 00 00 */ li r30, 0 /* 800402F0 0003BF50 93 A1 00 14 */ stw r29, 0x14(r1) /* 800402F4 0003BF54 7C 7D 1B 78 */ mr r29, r3 /* 800402F8 0003BF58 7F A4 EB 78 */ mr r4, r29 /* 800402FC 0003BF5C 7C 09 03 A6 */ mtctr r0 lbl_80040300: /* 80040300 0003BF60 88 04 00 04 */ lbz r0, 4(r4) /* 80040304 0003BF64 2C 00 00 00 */ cmpwi r0, 0 /* 80040308 0003BF68 40 82 00 24 */ bne lbl_8004032C /* 8004030C 0003BF6C 1F FE 06 FC */ mulli r31, r30, 0x6fc /* 80040310 0003BF70 7C 63 FA 14 */ add r3, r3, r31 /* 80040314 0003BF74 38 63 00 04 */ addi r3, r3, 4 /* 80040318 0003BF78 48 00 0C 89 */ bl func_80040FA0 /* 8004031C 0003BF7C 38 7E 00 01 */ addi r3, r30, 1 /* 80040320 0003BF80 7C 9D FA 14 */ add r4, r29, r31 /* 80040324 0003BF84 90 64 04 B8 */ stw r3, 0x4b8(r4) /* 80040328 0003BF88 48 00 00 14 */ b lbl_8004033C lbl_8004032C: /* 8004032C 0003BF8C 38 84 06 FC */ addi r4, r4, 0x6fc /* 80040330 0003BF90 3B DE 00 01 */ addi r30, r30, 1 /* 80040334 0003BF94 42 00 FF CC */ bdnz lbl_80040300 /* 80040338 0003BF98 38 60 00 00 */ li r3, 0 lbl_8004033C: /* 8004033C 0003BF9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040340 0003BFA0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80040344 0003BFA4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80040348 0003BFA8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004034C 0003BFAC 7C 08 03 A6 */ mtlr r0 /* 80040350 0003BFB0 38 21 00 20 */ addi r1, r1, 0x20 /* 80040354 0003BFB4 4E 80 00 20 */ blr .global func_80040358 func_80040358: /* 80040358 0003BFB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004035C 0003BFBC 7C 08 02 A6 */ mflr r0 /* 80040360 0003BFC0 90 01 00 14 */ stw r0, 0x14(r1) /* 80040364 0003BFC4 48 00 00 21 */ bl func_80040384 /* 80040368 0003BFC8 2C 03 00 00 */ cmpwi r3, 0 /* 8004036C 0003BFCC 41 82 00 08 */ beq lbl_80040374 /* 80040370 0003BFD0 48 00 0C F5 */ bl func_80041064 lbl_80040374: /* 80040374 0003BFD4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80040378 0003BFD8 7C 08 03 A6 */ mtlr r0 /* 8004037C 0003BFDC 38 21 00 10 */ addi r1, r1, 0x10 /* 80040380 0003BFE0 4E 80 00 20 */ blr .global func_80040384 func_80040384: /* 80040384 0003BFE4 2C 04 00 00 */ cmpwi r4, 0 /* 80040388 0003BFE8 41 82 00 0C */ beq lbl_80040394 /* 8004038C 0003BFEC 28 04 00 08 */ cmplwi r4, 8 /* 80040390 0003BFF0 41 80 00 0C */ blt lbl_8004039C lbl_80040394: /* 80040394 0003BFF4 38 60 00 00 */ li r3, 0 /* 80040398 0003BFF8 4E 80 00 20 */ blr lbl_8004039C: /* 8004039C 0003BFFC 38 04 FF FF */ addi r0, r4, -1 /* 800403A0 0003C000 1C 00 06 FC */ mulli r0, r0, 0x6fc /* 800403A4 0003C004 7C 63 02 14 */ add r3, r3, r0 /* 800403A8 0003C008 38 63 00 04 */ addi r3, r3, 4 /* 800403AC 0003C00C 4E 80 00 20 */ blr .global func_800403B0 func_800403B0: /* 800403B0 0003C010 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800403B4 0003C014 7C 08 02 A6 */ mflr r0 /* 800403B8 0003C018 90 01 00 24 */ stw r0, 0x24(r1) /* 800403BC 0003C01C DB E1 00 18 */ stfd f31, 0x18(r1) /* 800403C0 0003C020 FF E0 08 90 */ fmr f31, f1 /* 800403C4 0003C024 93 E1 00 14 */ stw r31, 0x14(r1) /* 800403C8 0003C028 93 C1 00 10 */ stw r30, 0x10(r1) /* 800403CC 0003C02C 93 A1 00 0C */ stw r29, 0xc(r1) /* 800403D0 0003C030 88 03 00 00 */ lbz r0, 0(r3) /* 800403D4 0003C034 2C 00 00 00 */ cmpwi r0, 0 /* 800403D8 0003C038 41 82 00 3C */ beq lbl_80040414 /* 800403DC 0003C03C 7C 7F 1B 78 */ mr r31, r3 /* 800403E0 0003C040 3B C3 00 04 */ addi r30, r3, 4 /* 800403E4 0003C044 3B A0 00 00 */ li r29, 0 lbl_800403E8: /* 800403E8 0003C048 88 1F 00 04 */ lbz r0, 4(r31) /* 800403EC 0003C04C 2C 00 00 00 */ cmpwi r0, 0 /* 800403F0 0003C050 41 82 00 10 */ beq lbl_80040400 /* 800403F4 0003C054 FC 20 F8 90 */ fmr f1, f31 /* 800403F8 0003C058 7F C3 F3 78 */ mr r3, r30 /* 800403FC 0003C05C 48 00 37 6D */ bl func_80043B68 lbl_80040400: /* 80040400 0003C060 3B BD 00 01 */ addi r29, r29, 1 /* 80040404 0003C064 3B DE 06 FC */ addi r30, r30, 0x6fc /* 80040408 0003C068 28 1D 00 08 */ cmplwi r29, 8 /* 8004040C 0003C06C 3B FF 06 FC */ addi r31, r31, 0x6fc /* 80040410 0003C070 41 80 FF D8 */ blt lbl_800403E8 lbl_80040414: /* 80040414 0003C074 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040418 0003C078 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8004041C 0003C07C 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80040420 0003C080 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80040424 0003C084 83 A1 00 0C */ lwz r29, 0xc(r1) /* 80040428 0003C088 7C 08 03 A6 */ mtlr r0 /* 8004042C 0003C08C 38 21 00 20 */ addi r1, r1, 0x20 /* 80040430 0003C090 4E 80 00 20 */ blr .global func_80040434 func_80040434: /* 80040434 0003C094 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80040438 0003C098 7C 08 02 A6 */ mflr r0 /* 8004043C 0003C09C 90 01 00 24 */ stw r0, 0x24(r1) /* 80040440 0003C0A0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80040444 0003C0A4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80040448 0003C0A8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004044C 0003C0AC 88 03 00 00 */ lbz r0, 0(r3) /* 80040450 0003C0B0 2C 00 00 00 */ cmpwi r0, 0 /* 80040454 0003C0B4 41 82 00 38 */ beq lbl_8004048C /* 80040458 0003C0B8 7C 7F 1B 78 */ mr r31, r3 /* 8004045C 0003C0BC 3B C3 00 04 */ addi r30, r3, 4 /* 80040460 0003C0C0 3B A0 00 00 */ li r29, 0 lbl_80040464: /* 80040464 0003C0C4 88 1F 00 04 */ lbz r0, 4(r31) /* 80040468 0003C0C8 2C 00 00 00 */ cmpwi r0, 0 /* 8004046C 0003C0CC 41 82 00 0C */ beq lbl_80040478 /* 80040470 0003C0D0 7F C3 F3 78 */ mr r3, r30 /* 80040474 0003C0D4 48 00 40 29 */ bl func_8004449C lbl_80040478: /* 80040478 0003C0D8 3B BD 00 01 */ addi r29, r29, 1 /* 8004047C 0003C0DC 3B DE 06 FC */ addi r30, r30, 0x6fc /* 80040480 0003C0E0 28 1D 00 08 */ cmplwi r29, 8 /* 80040484 0003C0E4 3B FF 06 FC */ addi r31, r31, 0x6fc /* 80040488 0003C0E8 41 80 FF DC */ blt lbl_80040464 lbl_8004048C: /* 8004048C 0003C0EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040490 0003C0F0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80040494 0003C0F4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80040498 0003C0F8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004049C 0003C0FC 7C 08 03 A6 */ mtlr r0 /* 800404A0 0003C100 38 21 00 20 */ addi r1, r1, 0x20 /* 800404A4 0003C104 4E 80 00 20 */ blr .global func_800404A8 func_800404A8: /* 800404A8 0003C108 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 800404AC 0003C10C 38 00 00 00 */ li r0, 0 /* 800404B0 0003C110 90 03 00 10 */ stw r0, 0x10(r3) /* 800404B4 0003C114 D0 03 00 14 */ stfs f0, 0x14(r3) /* 800404B8 0003C118 D0 03 00 18 */ stfs f0, 0x18(r3) /* 800404BC 0003C11C D0 03 00 1C */ stfs f0, 0x1c(r3) /* 800404C0 0003C120 D0 03 00 50 */ stfs f0, 0x50(r3) /* 800404C4 0003C124 90 83 00 54 */ stw r4, 0x54(r3) /* 800404C8 0003C128 98 03 00 00 */ stb r0, 0(r3) /* 800404CC 0003C12C 90 03 00 04 */ stw r0, 4(r3) /* 800404D0 0003C130 D0 03 00 08 */ stfs f0, 8(r3) /* 800404D4 0003C134 90 03 00 58 */ stw r0, 0x58(r3) /* 800404D8 0003C138 90 03 00 5C */ stw r0, 0x5c(r3) /* 800404DC 0003C13C 90 03 00 60 */ stw r0, 0x60(r3) /* 800404E0 0003C140 90 03 00 64 */ stw r0, 0x64(r3) /* 800404E4 0003C144 90 03 00 68 */ stw r0, 0x68(r3) /* 800404E8 0003C148 90 03 00 6C */ stw r0, 0x6c(r3) /* 800404EC 0003C14C 90 03 00 70 */ stw r0, 0x70(r3) /* 800404F0 0003C150 90 03 00 74 */ stw r0, 0x74(r3) /* 800404F4 0003C154 4E 80 00 20 */ blr .global func_800404F8 func_800404F8: /* 800404F8 0003C158 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800404FC 0003C15C 7C 08 02 A6 */ mflr r0 /* 80040500 0003C160 2C 04 00 00 */ cmpwi r4, 0 /* 80040504 0003C164 90 01 00 24 */ stw r0, 0x24(r1) /* 80040508 0003C168 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004050C 0003C16C 7C BF 2B 78 */ mr r31, r5 /* 80040510 0003C170 41 80 00 58 */ blt lbl_80040568 /* 80040514 0003C174 2C 04 00 04 */ cmpwi r4, 4 /* 80040518 0003C178 40 80 00 50 */ bge lbl_80040568 /* 8004051C 0003C17C 54 80 18 38 */ slwi r0, r4, 3 /* 80040520 0003C180 7C 63 02 14 */ add r3, r3, r0 /* 80040524 0003C184 80 83 00 58 */ lwz r4, 0x58(r3) /* 80040528 0003C188 2C 04 00 00 */ cmpwi r4, 0 /* 8004052C 0003C18C 41 82 00 3C */ beq lbl_80040568 /* 80040530 0003C190 80 A3 00 5C */ lwz r5, 0x5c(r3) /* 80040534 0003C194 2C 05 00 00 */ cmpwi r5, 0 /* 80040538 0003C198 40 82 00 08 */ bne lbl_80040540 /* 8004053C 0003C19C 38 A0 00 13 */ li r5, 0x13 lbl_80040540: /* 80040540 0003C1A0 38 61 00 08 */ addi r3, r1, 8 /* 80040544 0003C1A4 4B FF 93 59 */ bl func_8003989C /* 80040548 0003C1A8 C0 01 00 08 */ lfs f0, 8(r1) /* 8004054C 0003C1AC 38 60 00 01 */ li r3, 1 /* 80040550 0003C1B0 D0 1F 00 00 */ stfs f0, 0(r31) /* 80040554 0003C1B4 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80040558 0003C1B8 D0 1F 00 04 */ stfs f0, 4(r31) /* 8004055C 0003C1BC C0 01 00 10 */ lfs f0, 0x10(r1) /* 80040560 0003C1C0 D0 1F 00 08 */ stfs f0, 8(r31) /* 80040564 0003C1C4 48 00 00 08 */ b lbl_8004056C lbl_80040568: /* 80040568 0003C1C8 38 60 00 00 */ li r3, 0 lbl_8004056C: /* 8004056C 0003C1CC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040570 0003C1D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80040574 0003C1D4 7C 08 03 A6 */ mtlr r0 /* 80040578 0003C1D8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004057C 0003C1DC 4E 80 00 20 */ blr .global func_80040580 func_80040580: /* 80040580 0003C1E0 38 80 00 00 */ li r4, 0 /* 80040584 0003C1E4 48 00 00 04 */ b func_80040588 .global func_80040588 func_80040588: /* 80040588 0003C1E8 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004058C 0003C1EC 7C 08 02 A6 */ mflr r0 /* 80040590 0003C1F0 90 01 00 64 */ stw r0, 0x64(r1) /* 80040594 0003C1F4 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80040598 0003C1F8 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004059C 0003C1FC 7C 9E 23 78 */ mr r30, r4 /* 800405A0 0003C200 93 A1 00 54 */ stw r29, 0x54(r1) /* 800405A4 0003C204 7C 7D 1B 78 */ mr r29, r3 /* 800405A8 0003C208 80 03 00 10 */ lwz r0, 0x10(r3) /* 800405AC 0003C20C 80 A3 00 54 */ lwz r5, 0x54(r3) /* 800405B0 0003C210 2C 00 00 03 */ cmpwi r0, 3 /* 800405B4 0003C214 41 82 01 E0 */ beq lbl_80040794 /* 800405B8 0003C218 40 80 00 14 */ bge lbl_800405CC /* 800405BC 0003C21C 2C 00 00 01 */ cmpwi r0, 1 /* 800405C0 0003C220 41 82 00 18 */ beq lbl_800405D8 /* 800405C4 0003C224 40 80 00 6C */ bge lbl_80040630 /* 800405C8 0003C228 48 00 01 CC */ b lbl_80040794 lbl_800405CC: /* 800405CC 0003C22C 2C 00 00 05 */ cmpwi r0, 5 /* 800405D0 0003C230 40 80 01 C4 */ bge lbl_80040794 /* 800405D4 0003C234 48 00 01 58 */ b lbl_8004072C lbl_800405D8: /* 800405D8 0003C238 38 A1 00 2C */ addi r5, r1, 0x2c /* 800405DC 0003C23C 38 80 00 00 */ li r4, 0 /* 800405E0 0003C240 4B FF FF 19 */ bl func_800404F8 /* 800405E4 0003C244 38 61 00 2C */ addi r3, r1, 0x2c /* 800405E8 0003C248 38 9D 00 44 */ addi r4, r29, 0x44 /* 800405EC 0003C24C 38 A1 00 14 */ addi r5, r1, 0x14 /* 800405F0 0003C250 48 23 C6 D5 */ bl func_8027CCC4 /* 800405F4 0003C254 C0 61 00 14 */ lfs f3, 0x14(r1) /* 800405F8 0003C258 38 7D 00 2C */ addi r3, r29, 0x2c /* 800405FC 0003C25C C0 22 82 B4 */ lfs f1, lbl_806408B4-_SDA2_BASE_(r2) /* 80040600 0003C260 38 9D 00 14 */ addi r4, r29, 0x14 /* 80040604 0003C264 D0 7D 00 14 */ stfs f3, 0x14(r29) /* 80040608 0003C268 38 A1 00 2C */ addi r5, r1, 0x2c /* 8004060C 0003C26C C0 41 00 18 */ lfs f2, 0x18(r1) /* 80040610 0003C270 D0 5D 00 18 */ stfs f2, 0x18(r29) /* 80040614 0003C274 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 80040618 0003C278 D0 1D 00 1C */ stfs f0, 0x1c(r29) /* 8004061C 0003C27C D0 7D 00 38 */ stfs f3, 0x38(r29) /* 80040620 0003C280 D0 5D 00 3C */ stfs f2, 0x3c(r29) /* 80040624 0003C284 D0 1D 00 40 */ stfs f0, 0x40(r29) /* 80040628 0003C288 4B FF FA C1 */ bl func_800400E8 /* 8004062C 0003C28C 48 00 01 68 */ b lbl_80040794 lbl_80040630: /* 80040630 0003C290 38 A1 00 38 */ addi r5, r1, 0x38 /* 80040634 0003C294 38 80 00 00 */ li r4, 0 /* 80040638 0003C298 4B FF FE C1 */ bl func_800404F8 /* 8004063C 0003C29C 2C 03 00 00 */ cmpwi r3, 0 /* 80040640 0003C2A0 41 82 01 54 */ beq lbl_80040794 /* 80040644 0003C2A4 7F A3 EB 78 */ mr r3, r29 /* 80040648 0003C2A8 38 A1 00 44 */ addi r5, r1, 0x44 /* 8004064C 0003C2AC 38 80 00 01 */ li r4, 1 /* 80040650 0003C2B0 4B FF FE A9 */ bl func_800404F8 /* 80040654 0003C2B4 2C 03 00 00 */ cmpwi r3, 0 /* 80040658 0003C2B8 41 82 00 1C */ beq lbl_80040674 /* 8004065C 0003C2BC C0 22 82 B8 */ lfs f1, lbl_806408B8-_SDA2_BASE_(r2) /* 80040660 0003C2C0 38 61 00 2C */ addi r3, r1, 0x2c /* 80040664 0003C2C4 38 81 00 38 */ addi r4, r1, 0x38 /* 80040668 0003C2C8 38 A1 00 44 */ addi r5, r1, 0x44 /* 8004066C 0003C2CC 4B FF FA 7D */ bl func_800400E8 /* 80040670 0003C2D0 48 00 00 1C */ b lbl_8004068C lbl_80040674: /* 80040674 0003C2D4 C0 41 00 38 */ lfs f2, 0x38(r1) /* 80040678 0003C2D8 C0 21 00 3C */ lfs f1, 0x3c(r1) /* 8004067C 0003C2DC C0 01 00 40 */ lfs f0, 0x40(r1) /* 80040680 0003C2E0 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 80040684 0003C2E4 D0 21 00 30 */ stfs f1, 0x30(r1) /* 80040688 0003C2E8 D0 01 00 34 */ stfs f0, 0x34(r1) lbl_8004068C: /* 8004068C 0003C2EC 38 61 00 2C */ addi r3, r1, 0x2c /* 80040690 0003C2F0 38 9D 00 44 */ addi r4, r29, 0x44 /* 80040694 0003C2F4 7C 65 1B 78 */ mr r5, r3 /* 80040698 0003C2F8 48 23 C6 2D */ bl func_8027CCC4 /* 8004069C 0003C2FC 7F A3 EB 78 */ mr r3, r29 /* 800406A0 0003C300 38 81 00 20 */ addi r4, r1, 0x20 /* 800406A4 0003C304 38 A1 00 2C */ addi r5, r1, 0x2c /* 800406A8 0003C308 48 00 02 B9 */ bl func_80040960 /* 800406AC 0003C30C C0 01 00 2C */ lfs f0, 0x2c(r1) /* 800406B0 0003C310 7C 7F 1B 78 */ mr r31, r3 /* 800406B4 0003C314 C0 22 82 B4 */ lfs f1, lbl_806408B4-_SDA2_BASE_(r2) /* 800406B8 0003C318 38 7D 00 2C */ addi r3, r29, 0x2c /* 800406BC 0003C31C D0 1D 00 38 */ stfs f0, 0x38(r29) /* 800406C0 0003C320 38 9D 00 14 */ addi r4, r29, 0x14 /* 800406C4 0003C324 38 A1 00 2C */ addi r5, r1, 0x2c /* 800406C8 0003C328 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800406CC 0003C32C D0 1D 00 3C */ stfs f0, 0x3c(r29) /* 800406D0 0003C330 C0 01 00 34 */ lfs f0, 0x34(r1) /* 800406D4 0003C334 D0 1D 00 40 */ stfs f0, 0x40(r29) /* 800406D8 0003C338 4B FF FA 11 */ bl func_800400E8 /* 800406DC 0003C33C 2C 1E 00 00 */ cmpwi r30, 0 /* 800406E0 0003C340 40 82 00 0C */ bne lbl_800406EC /* 800406E4 0003C344 2C 1F 00 01 */ cmpwi r31, 1 /* 800406E8 0003C348 40 82 00 20 */ bne lbl_80040708 lbl_800406EC: /* 800406EC 0003C34C C0 01 00 2C */ lfs f0, 0x2c(r1) /* 800406F0 0003C350 D0 1D 00 14 */ stfs f0, 0x14(r29) /* 800406F4 0003C354 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800406F8 0003C358 D0 1D 00 18 */ stfs f0, 0x18(r29) /* 800406FC 0003C35C C0 01 00 34 */ lfs f0, 0x34(r1) /* 80040700 0003C360 D0 1D 00 1C */ stfs f0, 0x1c(r29) /* 80040704 0003C364 48 00 00 90 */ b lbl_80040794 lbl_80040708: /* 80040708 0003C368 2C 1F 00 02 */ cmpwi r31, 2 /* 8004070C 0003C36C 40 82 00 88 */ bne lbl_80040794 /* 80040710 0003C370 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80040714 0003C374 D0 1D 00 14 */ stfs f0, 0x14(r29) /* 80040718 0003C378 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8004071C 0003C37C D0 1D 00 18 */ stfs f0, 0x18(r29) /* 80040720 0003C380 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80040724 0003C384 D0 1D 00 1C */ stfs f0, 0x1c(r29) /* 80040728 0003C388 48 00 00 6C */ b lbl_80040794 lbl_8004072C: /* 8004072C 0003C38C 7C A3 2B 78 */ mr r3, r5 /* 80040730 0003C390 48 00 1E 61 */ bl func_80042590 /* 80040734 0003C394 C0 03 00 00 */ lfs f0, 0(r3) /* 80040738 0003C398 38 9D 00 44 */ addi r4, r29, 0x44 /* 8004073C 0003C39C 38 A1 00 08 */ addi r5, r1, 8 /* 80040740 0003C3A0 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 80040744 0003C3A4 C0 03 00 04 */ lfs f0, 4(r3) /* 80040748 0003C3A8 D0 01 00 30 */ stfs f0, 0x30(r1) /* 8004074C 0003C3AC C0 03 00 08 */ lfs f0, 8(r3) /* 80040750 0003C3B0 38 61 00 2C */ addi r3, r1, 0x2c /* 80040754 0003C3B4 D0 01 00 34 */ stfs f0, 0x34(r1) /* 80040758 0003C3B8 48 23 C5 6D */ bl func_8027CCC4 /* 8004075C 0003C3BC C0 61 00 08 */ lfs f3, 8(r1) /* 80040760 0003C3C0 38 7D 00 2C */ addi r3, r29, 0x2c /* 80040764 0003C3C4 C0 22 82 B4 */ lfs f1, lbl_806408B4-_SDA2_BASE_(r2) /* 80040768 0003C3C8 38 9D 00 14 */ addi r4, r29, 0x14 /* 8004076C 0003C3CC D0 7D 00 14 */ stfs f3, 0x14(r29) /* 80040770 0003C3D0 38 A1 00 2C */ addi r5, r1, 0x2c /* 80040774 0003C3D4 C0 41 00 0C */ lfs f2, 0xc(r1) /* 80040778 0003C3D8 D0 5D 00 18 */ stfs f2, 0x18(r29) /* 8004077C 0003C3DC C0 01 00 10 */ lfs f0, 0x10(r1) /* 80040780 0003C3E0 D0 1D 00 1C */ stfs f0, 0x1c(r29) /* 80040784 0003C3E4 D0 7D 00 38 */ stfs f3, 0x38(r29) /* 80040788 0003C3E8 D0 5D 00 3C */ stfs f2, 0x3c(r29) /* 8004078C 0003C3EC D0 1D 00 40 */ stfs f0, 0x40(r29) /* 80040790 0003C3F0 4B FF F9 59 */ bl func_800400E8 lbl_80040794: /* 80040794 0003C3F4 80 01 00 64 */ lwz r0, 0x64(r1) /* 80040798 0003C3F8 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8004079C 0003C3FC 83 C1 00 58 */ lwz r30, 0x58(r1) /* 800407A0 0003C400 83 A1 00 54 */ lwz r29, 0x54(r1) /* 800407A4 0003C404 7C 08 03 A6 */ mtlr r0 /* 800407A8 0003C408 38 21 00 60 */ addi r1, r1, 0x60 /* 800407AC 0003C40C 4E 80 00 20 */ blr .global func_800407B0 func_800407B0: /* 800407B0 0003C410 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800407B4 0003C414 7C 08 02 A6 */ mflr r0 /* 800407B8 0003C418 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 800407BC 0003C41C 90 01 00 44 */ stw r0, 0x44(r1) /* 800407C0 0003C420 88 03 00 00 */ lbz r0, 0(r3) /* 800407C4 0003C424 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800407C8 0003C428 7C 7F 1B 78 */ mr r31, r3 /* 800407CC 0003C42C 2C 00 00 00 */ cmpwi r0, 0 /* 800407D0 0003C430 41 82 00 0C */ beq lbl_800407DC /* 800407D4 0003C434 C0 23 00 0C */ lfs f1, 0xc(r3) /* 800407D8 0003C438 48 00 01 3C */ b lbl_80040914 lbl_800407DC: /* 800407DC 0003C43C 80 03 00 10 */ lwz r0, 0x10(r3) /* 800407E0 0003C440 2C 00 00 02 */ cmpwi r0, 2 /* 800407E4 0003C444 41 82 00 50 */ beq lbl_80040834 /* 800407E8 0003C448 40 80 01 2C */ bge lbl_80040914 /* 800407EC 0003C44C 2C 00 00 01 */ cmpwi r0, 1 /* 800407F0 0003C450 40 80 00 08 */ bge lbl_800407F8 /* 800407F4 0003C454 48 00 01 20 */ b lbl_80040914 lbl_800407F8: /* 800407F8 0003C458 80 83 00 58 */ lwz r4, 0x58(r3) /* 800407FC 0003C45C 2C 04 00 00 */ cmpwi r4, 0 /* 80040800 0003C460 41 82 01 14 */ beq lbl_80040914 /* 80040804 0003C464 80 63 00 5C */ lwz r3, 0x5c(r3) /* 80040808 0003C468 38 03 FF EB */ addi r0, r3, -21 /* 8004080C 0003C46C 28 00 00 01 */ cmplwi r0, 1 /* 80040810 0003C470 41 81 00 14 */ bgt lbl_80040824 /* 80040814 0003C474 7C 83 23 78 */ mr r3, r4 /* 80040818 0003C478 38 80 00 00 */ li r4, 0 /* 8004081C 0003C47C 4B FF 9D D1 */ bl func_8003A5EC /* 80040820 0003C480 48 00 00 F4 */ b lbl_80040914 lbl_80040824: /* 80040824 0003C484 7C 83 23 78 */ mr r3, r4 /* 80040828 0003C488 38 80 00 01 */ li r4, 1 /* 8004082C 0003C48C 4B FF 9D C1 */ bl func_8003A5EC /* 80040830 0003C490 48 00 00 E4 */ b lbl_80040914 lbl_80040834: /* 80040834 0003C494 80 83 00 58 */ lwz r4, 0x58(r3) /* 80040838 0003C498 2C 04 00 00 */ cmpwi r4, 0 /* 8004083C 0003C49C 41 82 00 D8 */ beq lbl_80040914 /* 80040840 0003C4A0 80 03 00 60 */ lwz r0, 0x60(r3) /* 80040844 0003C4A4 2C 00 00 00 */ cmpwi r0, 0 /* 80040848 0003C4A8 40 82 00 34 */ bne lbl_8004087C /* 8004084C 0003C4AC 80 63 00 5C */ lwz r3, 0x5c(r3) /* 80040850 0003C4B0 38 03 FF EB */ addi r0, r3, -21 /* 80040854 0003C4B4 28 00 00 01 */ cmplwi r0, 1 /* 80040858 0003C4B8 41 81 00 14 */ bgt lbl_8004086C /* 8004085C 0003C4BC 7C 83 23 78 */ mr r3, r4 /* 80040860 0003C4C0 38 80 00 00 */ li r4, 0 /* 80040864 0003C4C4 4B FF 9D 89 */ bl func_8003A5EC /* 80040868 0003C4C8 48 00 00 AC */ b lbl_80040914 lbl_8004086C: /* 8004086C 0003C4CC 7C 83 23 78 */ mr r3, r4 /* 80040870 0003C4D0 38 80 00 01 */ li r4, 1 /* 80040874 0003C4D4 4B FF 9D 79 */ bl func_8003A5EC /* 80040878 0003C4D8 48 00 00 9C */ b lbl_80040914 lbl_8004087C: /* 8004087C 0003C4DC 7C 04 00 40 */ cmplw r4, r0 /* 80040880 0003C4E0 40 82 00 34 */ bne lbl_800408B4 /* 80040884 0003C4E4 80 63 00 5C */ lwz r3, 0x5c(r3) /* 80040888 0003C4E8 38 03 FF EB */ addi r0, r3, -21 /* 8004088C 0003C4EC 28 00 00 01 */ cmplwi r0, 1 /* 80040890 0003C4F0 41 81 00 14 */ bgt lbl_800408A4 /* 80040894 0003C4F4 7C 83 23 78 */ mr r3, r4 /* 80040898 0003C4F8 38 80 00 00 */ li r4, 0 /* 8004089C 0003C4FC 4B FF 9D 51 */ bl func_8003A5EC /* 800408A0 0003C500 48 00 00 74 */ b lbl_80040914 lbl_800408A4: /* 800408A4 0003C504 7C 83 23 78 */ mr r3, r4 /* 800408A8 0003C508 38 80 00 01 */ li r4, 1 /* 800408AC 0003C50C 4B FF 9D 41 */ bl func_8003A5EC /* 800408B0 0003C510 48 00 00 64 */ b lbl_80040914 lbl_800408B4: /* 800408B4 0003C514 80 BF 00 5C */ lwz r5, 0x5c(r31) /* 800408B8 0003C518 38 61 00 14 */ addi r3, r1, 0x14 /* 800408BC 0003C51C 4B FF AD B9 */ bl func_8003B674 /* 800408C0 0003C520 C0 41 00 14 */ lfs f2, 0x14(r1) /* 800408C4 0003C524 38 61 00 08 */ addi r3, r1, 8 /* 800408C8 0003C528 C0 21 00 18 */ lfs f1, 0x18(r1) /* 800408CC 0003C52C C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800408D0 0003C530 D0 41 00 20 */ stfs f2, 0x20(r1) /* 800408D4 0003C534 80 9F 00 60 */ lwz r4, 0x60(r31) /* 800408D8 0003C538 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800408DC 0003C53C 80 BF 00 64 */ lwz r5, 0x64(r31) /* 800408E0 0003C540 D0 01 00 28 */ stfs f0, 0x28(r1) /* 800408E4 0003C544 4B FF AD 91 */ bl func_8003B674 /* 800408E8 0003C548 C0 41 00 08 */ lfs f2, 8(r1) /* 800408EC 0003C54C 38 61 00 20 */ addi r3, r1, 0x20 /* 800408F0 0003C550 C0 21 00 0C */ lfs f1, 0xc(r1) /* 800408F4 0003C554 38 81 00 2C */ addi r4, r1, 0x2c /* 800408F8 0003C558 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800408FC 0003C55C D0 41 00 2C */ stfs f2, 0x2c(r1) /* 80040900 0003C560 D0 21 00 30 */ stfs f1, 0x30(r1) /* 80040904 0003C564 D0 01 00 34 */ stfs f0, 0x34(r1) /* 80040908 0003C568 48 23 C6 C9 */ bl func_8027CFD0 /* 8004090C 0003C56C C0 02 82 B8 */ lfs f0, lbl_806408B8-_SDA2_BASE_(r2) /* 80040910 0003C570 EC 20 00 72 */ fmuls f1, f0, f1 lbl_80040914: /* 80040914 0003C574 80 01 00 44 */ lwz r0, 0x44(r1) /* 80040918 0003C578 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8004091C 0003C57C 7C 08 03 A6 */ mtlr r0 /* 80040920 0003C580 38 21 00 40 */ addi r1, r1, 0x40 /* 80040924 0003C584 4E 80 00 20 */ blr .global func_80040928 func_80040928: /* 80040928 0003C588 80 03 00 04 */ lwz r0, 4(r3) /* 8004092C 0003C58C C0 44 00 00 */ lfs f2, 0(r4) /* 80040930 0003C590 C0 24 00 04 */ lfs f1, 4(r4) /* 80040934 0003C594 60 00 00 01 */ ori r0, r0, 1 /* 80040938 0003C598 C0 04 00 08 */ lfs f0, 8(r4) /* 8004093C 0003C59C D0 43 00 20 */ stfs f2, 0x20(r3) /* 80040940 0003C5A0 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80040944 0003C5A4 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80040948 0003C5A8 90 03 00 04 */ stw r0, 4(r3) /* 8004094C 0003C5AC 4E 80 00 20 */ blr .global dGeomEnable dGeomEnable: /* 80040950 0003C5B0 80 03 00 04 */ lwz r0, 4(r3) /* 80040954 0003C5B4 60 00 00 02 */ ori r0, r0, 2 /* 80040958 0003C5B8 90 03 00 04 */ stw r0, 4(r3) /* 8004095C 0003C5BC 4E 80 00 20 */ blr .global func_80040960 func_80040960: /* 80040960 0003C5C0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 80040964 0003C5C4 7C 08 02 A6 */ mflr r0 /* 80040968 0003C5C8 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 8004096C 0003C5CC 90 01 00 64 */ stw r0, 0x64(r1) /* 80040970 0003C5D0 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80040974 0003C5D4 7C BF 2B 78 */ mr r31, r5 /* 80040978 0003C5D8 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004097C 0003C5DC 7C 9E 23 78 */ mr r30, r4 /* 80040980 0003C5E0 93 A1 00 54 */ stw r29, 0x54(r1) /* 80040984 0003C5E4 7C 7D 1B 78 */ mr r29, r3 /* 80040988 0003C5E8 C0 23 00 50 */ lfs f1, 0x50(r3) /* 8004098C 0003C5EC 80 63 00 54 */ lwz r3, 0x54(r3) /* 80040990 0003C5F0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80040994 0003C5F4 80 03 06 CC */ lwz r0, 0x6cc(r3) /* 80040998 0003C5F8 4C 40 13 82 */ cror 2, 0, 2 /* 8004099C 0003C5FC 41 82 00 0C */ beq lbl_800409A8 /* 800409A0 0003C600 2C 00 00 00 */ cmpwi r0, 0 /* 800409A4 0003C604 40 82 00 0C */ bne lbl_800409B0 lbl_800409A8: /* 800409A8 0003C608 38 60 00 01 */ li r3, 1 /* 800409AC 0003C60C 48 00 01 18 */ b lbl_80040AC4 lbl_800409B0: /* 800409B0 0003C610 7F E4 FB 78 */ mr r4, r31 /* 800409B4 0003C614 38 A1 00 28 */ addi r5, r1, 0x28 /* 800409B8 0003C618 48 00 3B 9D */ bl func_80044554 /* 800409BC 0003C61C 2C 03 00 00 */ cmpwi r3, 0 /* 800409C0 0003C620 40 82 00 0C */ bne lbl_800409CC /* 800409C4 0003C624 38 60 00 01 */ li r3, 1 /* 800409C8 0003C628 48 00 00 FC */ b lbl_80040AC4 lbl_800409CC: /* 800409CC 0003C62C 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13) /* 800409D0 0003C630 3C 60 43 30 */ lis r3, 0x4330 /* 800409D4 0003C634 C0 E2 82 B0 */ lfs f7, lbl_806408B0-_SDA2_BASE_(r2) /* 800409D8 0003C638 A0 85 00 04 */ lhz r4, 4(r5) /* 800409DC 0003C63C A0 05 00 06 */ lhz r0, 6(r5) /* 800409E0 0003C640 90 81 00 3C */ stw r4, 0x3c(r1) /* 800409E4 0003C644 C8 A2 82 C0 */ lfd f5, lbl_806408C0-_SDA2_BASE_(r2) /* 800409E8 0003C648 90 61 00 38 */ stw r3, 0x38(r1) /* 800409EC 0003C64C C0 42 82 B8 */ lfs f2, lbl_806408B8-_SDA2_BASE_(r2) /* 800409F0 0003C650 C8 01 00 38 */ lfd f0, 0x38(r1) /* 800409F4 0003C654 90 01 00 44 */ stw r0, 0x44(r1) /* 800409F8 0003C658 EC C0 28 28 */ fsubs f6, f0, f5 /* 800409FC 0003C65C C0 21 00 28 */ lfs f1, 0x28(r1) /* 80040A00 0003C660 90 61 00 40 */ stw r3, 0x40(r1) /* 80040A04 0003C664 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80040A08 0003C668 EC 66 00 B2 */ fmuls f3, f6, f2 /* 80040A0C 0003C66C C8 81 00 40 */ lfd f4, 0x40(r1) /* 80040A10 0003C670 D0 E1 00 18 */ stfs f7, 0x18(r1) /* 80040A14 0003C674 EC 84 28 28 */ fsubs f4, f4, f5 /* 80040A18 0003C678 EC 21 18 28 */ fsubs f1, f1, f3 /* 80040A1C 0003C67C D0 E1 00 1C */ stfs f7, 0x1c(r1) /* 80040A20 0003C680 EC 44 00 B2 */ fmuls f2, f4, f2 /* 80040A24 0003C684 D0 C1 00 20 */ stfs f6, 0x20(r1) /* 80040A28 0003C688 EC 21 00 72 */ fmuls f1, f1, f1 /* 80040A2C 0003C68C D0 81 00 24 */ stfs f4, 0x24(r1) /* 80040A30 0003C690 EC 00 10 28 */ fsubs f0, f0, f2 /* 80040A34 0003C694 D0 61 00 08 */ stfs f3, 8(r1) /* 80040A38 0003C698 EC 00 00 32 */ fmuls f0, f0, f0 /* 80040A3C 0003C69C D0 41 00 0C */ stfs f2, 0xc(r1) /* 80040A40 0003C6A0 EC 21 00 2A */ fadds f1, f1, f0 /* 80040A44 0003C6A4 FC 01 38 40 */ fcmpo cr0, f1, f7 /* 80040A48 0003C6A8 4C 40 13 82 */ cror 2, 0, 2 /* 80040A4C 0003C6AC 40 82 00 08 */ bne lbl_80040A54 /* 80040A50 0003C6B0 48 00 00 0C */ b lbl_80040A5C lbl_80040A54: /* 80040A54 0003C6B4 48 19 3D E1 */ bl sqrt /* 80040A58 0003C6B8 FC E0 08 18 */ frsp f7, f1 lbl_80040A5C: /* 80040A5C 0003C6BC C0 5D 00 50 */ lfs f2, 0x50(r29) /* 80040A60 0003C6C0 FC 02 38 40 */ fcmpo cr0, f2, f7 /* 80040A64 0003C6C4 40 81 00 0C */ ble lbl_80040A70 /* 80040A68 0003C6C8 38 60 00 00 */ li r3, 0 /* 80040A6C 0003C6CC 48 00 00 58 */ b lbl_80040AC4 lbl_80040A70: /* 80040A70 0003C6D0 C0 21 00 0C */ lfs f1, 0xc(r1) /* 80040A74 0003C6D4 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80040A78 0003C6D8 EC 61 10 28 */ fsubs f3, f1, f2 /* 80040A7C 0003C6DC FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80040A80 0003C6E0 4C 40 13 82 */ cror 2, 0, 2 /* 80040A84 0003C6E4 40 82 00 0C */ bne lbl_80040A90 /* 80040A88 0003C6E8 38 60 00 00 */ li r3, 0 /* 80040A8C 0003C6EC 48 00 00 38 */ b lbl_80040AC4 lbl_80040A90: /* 80040A90 0003C6F0 EC 27 10 28 */ fsubs f1, f7, f2 /* 80040A94 0003C6F4 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80040A98 0003C6F8 EC 21 18 24 */ fdivs f1, f1, f3 /* 80040A9C 0003C6FC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80040AA0 0003C700 40 81 00 08 */ ble lbl_80040AA8 /* 80040AA4 0003C704 FC 20 00 90 */ fmr f1, f0 lbl_80040AA8: /* 80040AA8 0003C708 C0 02 82 B4 */ lfs f0, lbl_806408B4-_SDA2_BASE_(r2) /* 80040AAC 0003C70C 7F C3 F3 78 */ mr r3, r30 /* 80040AB0 0003C710 7F E5 FB 78 */ mr r5, r31 /* 80040AB4 0003C714 38 9D 00 14 */ addi r4, r29, 0x14 /* 80040AB8 0003C718 EC 21 00 32 */ fmuls f1, f1, f0 /* 80040ABC 0003C71C 4B FF F6 2D */ bl func_800400E8 /* 80040AC0 0003C720 38 60 00 02 */ li r3, 2 lbl_80040AC4: /* 80040AC4 0003C724 80 01 00 64 */ lwz r0, 0x64(r1) /* 80040AC8 0003C728 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 80040ACC 0003C72C 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80040AD0 0003C730 83 A1 00 54 */ lwz r29, 0x54(r1) /* 80040AD4 0003C734 7C 08 03 A6 */ mtlr r0 /* 80040AD8 0003C738 38 21 00 60 */ addi r1, r1, 0x60 /* 80040ADC 0003C73C 4E 80 00 20 */ blr .global func_80040AE0 func_80040AE0: /* 80040AE0 0003C740 C0 46 00 00 */ lfs f2, 0(r6) /* 80040AE4 0003C744 38 00 00 01 */ li r0, 1 /* 80040AE8 0003C748 C0 26 00 04 */ lfs f1, 4(r6) /* 80040AEC 0003C74C C0 06 00 08 */ lfs f0, 8(r6) /* 80040AF0 0003C750 90 83 00 58 */ stw r4, 0x58(r3) /* 80040AF4 0003C754 38 80 00 01 */ li r4, 1 /* 80040AF8 0003C758 D0 43 00 44 */ stfs f2, 0x44(r3) /* 80040AFC 0003C75C D0 23 00 48 */ stfs f1, 0x48(r3) /* 80040B00 0003C760 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80040B04 0003C764 90 A3 00 5C */ stw r5, 0x5c(r3) /* 80040B08 0003C768 90 03 00 10 */ stw r0, 0x10(r3) /* 80040B0C 0003C76C 4B FF FA 7C */ b func_80040588 .global func_80040B10 func_80040B10: /* 80040B10 0003C770 C0 44 00 00 */ lfs f2, 0(r4) /* 80040B14 0003C774 38 00 00 04 */ li r0, 4 /* 80040B18 0003C778 C0 24 00 04 */ lfs f1, 4(r4) /* 80040B1C 0003C77C C0 04 00 08 */ lfs f0, 8(r4) /* 80040B20 0003C780 38 80 00 01 */ li r4, 1 /* 80040B24 0003C784 D0 43 00 44 */ stfs f2, 0x44(r3) /* 80040B28 0003C788 D0 23 00 48 */ stfs f1, 0x48(r3) /* 80040B2C 0003C78C D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80040B30 0003C790 90 03 00 10 */ stw r0, 0x10(r3) /* 80040B34 0003C794 4B FF FA 54 */ b func_80040588 .global func_80040B38 func_80040B38: /* 80040B38 0003C798 2C 04 00 00 */ cmpwi r4, 0 /* 80040B3C 0003C79C 41 82 00 0C */ beq lbl_80040B48 /* 80040B40 0003C7A0 38 00 00 02 */ li r0, 2 /* 80040B44 0003C7A4 90 03 00 10 */ stw r0, 0x10(r3) lbl_80040B48: /* 80040B48 0003C7A8 90 83 00 58 */ stw r4, 0x58(r3) /* 80040B4C 0003C7AC 38 80 00 01 */ li r4, 1 /* 80040B50 0003C7B0 90 A3 00 5C */ stw r5, 0x5c(r3) /* 80040B54 0003C7B4 90 C3 00 60 */ stw r6, 0x60(r3) /* 80040B58 0003C7B8 90 E3 00 64 */ stw r7, 0x64(r3) /* 80040B5C 0003C7BC D0 23 00 50 */ stfs f1, 0x50(r3) /* 80040B60 0003C7C0 C0 08 00 00 */ lfs f0, 0(r8) /* 80040B64 0003C7C4 D0 03 00 44 */ stfs f0, 0x44(r3) /* 80040B68 0003C7C8 C0 08 00 04 */ lfs f0, 4(r8) /* 80040B6C 0003C7CC D0 03 00 48 */ stfs f0, 0x48(r3) /* 80040B70 0003C7D0 C0 08 00 08 */ lfs f0, 8(r8) /* 80040B74 0003C7D4 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80040B78 0003C7D8 4B FF FA 10 */ b func_80040588 .global func_80040B7C func_80040B7C: /* 80040B7C 0003C7DC 2C 04 00 00 */ cmpwi r4, 0 /* 80040B80 0003C7E0 41 80 00 1C */ blt lbl_80040B9C /* 80040B84 0003C7E4 2C 04 00 04 */ cmpwi r4, 4 /* 80040B88 0003C7E8 40 80 00 14 */ bge lbl_80040B9C /* 80040B8C 0003C7EC 54 80 18 38 */ slwi r0, r4, 3 /* 80040B90 0003C7F0 7C 63 02 14 */ add r3, r3, r0 /* 80040B94 0003C7F4 80 63 00 58 */ lwz r3, 0x58(r3) /* 80040B98 0003C7F8 4E 80 00 20 */ blr lbl_80040B9C: /* 80040B9C 0003C7FC 38 60 00 00 */ li r3, 0 /* 80040BA0 0003C800 4E 80 00 20 */ blr .global func_80040BA4 func_80040BA4: /* 80040BA4 0003C804 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80040BA8 0003C808 7C 08 02 A6 */ mflr r0 /* 80040BAC 0003C80C 90 01 00 14 */ stw r0, 0x14(r1) /* 80040BB0 0003C810 93 E1 00 0C */ stw r31, 0xc(r1) /* 80040BB4 0003C814 7C 9F 23 78 */ mr r31, r4 /* 80040BB8 0003C818 38 80 00 01 */ li r4, 1 /* 80040BBC 0003C81C 93 C1 00 08 */ stw r30, 8(r1) /* 80040BC0 0003C820 7C 7E 1B 78 */ mr r30, r3 /* 80040BC4 0003C824 4B FF F9 C5 */ bl func_80040588 /* 80040BC8 0003C828 93 FE 00 10 */ stw r31, 0x10(r30) /* 80040BCC 0003C82C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80040BD0 0003C830 83 C1 00 08 */ lwz r30, 8(r1) /* 80040BD4 0003C834 80 01 00 14 */ lwz r0, 0x14(r1) /* 80040BD8 0003C838 7C 08 03 A6 */ mtlr r0 /* 80040BDC 0003C83C 38 21 00 10 */ addi r1, r1, 0x10 /* 80040BE0 0003C840 4E 80 00 20 */ blr .global func_80040BE4 func_80040BE4: /* 80040BE4 0003C844 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80040BE8 0003C848 7C 08 02 A6 */ mflr r0 /* 80040BEC 0003C84C 90 01 00 14 */ stw r0, 0x14(r1) /* 80040BF0 0003C850 93 E1 00 0C */ stw r31, 0xc(r1) /* 80040BF4 0003C854 7C 9F 23 78 */ mr r31, r4 /* 80040BF8 0003C858 38 80 00 00 */ li r4, 0 /* 80040BFC 0003C85C 93 C1 00 08 */ stw r30, 8(r1) /* 80040C00 0003C860 7C 7E 1B 78 */ mr r30, r3 /* 80040C04 0003C864 4B FF FF A1 */ bl func_80040BA4 /* 80040C08 0003C868 C0 5F 00 00 */ lfs f2, 0(r31) /* 80040C0C 0003C86C C0 3F 00 04 */ lfs f1, 4(r31) /* 80040C10 0003C870 C0 1F 00 08 */ lfs f0, 8(r31) /* 80040C14 0003C874 D0 5E 00 14 */ stfs f2, 0x14(r30) /* 80040C18 0003C878 D0 3E 00 18 */ stfs f1, 0x18(r30) /* 80040C1C 0003C87C D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 80040C20 0003C880 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80040C24 0003C884 83 C1 00 08 */ lwz r30, 8(r1) /* 80040C28 0003C888 80 01 00 14 */ lwz r0, 0x14(r1) /* 80040C2C 0003C88C 7C 08 03 A6 */ mtlr r0 /* 80040C30 0003C890 38 21 00 10 */ addi r1, r1, 0x10 /* 80040C34 0003C894 4E 80 00 20 */ blr .global func_80040C38 func_80040C38: /* 80040C38 0003C898 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80040C3C 0003C89C 7C 08 02 A6 */ mflr r0 /* 80040C40 0003C8A0 90 01 00 24 */ stw r0, 0x24(r1) /* 80040C44 0003C8A4 88 03 00 00 */ lbz r0, 0(r3) /* 80040C48 0003C8A8 2C 00 00 00 */ cmpwi r0, 0 /* 80040C4C 0003C8AC 41 82 00 0C */ beq lbl_80040C58 /* 80040C50 0003C8B0 C0 23 00 08 */ lfs f1, 8(r3) /* 80040C54 0003C8B4 48 00 00 48 */ b lbl_80040C9C lbl_80040C58: /* 80040C58 0003C8B8 80 03 00 58 */ lwz r0, 0x58(r3) /* 80040C5C 0003C8BC 38 80 00 00 */ li r4, 0 /* 80040C60 0003C8C0 2C 00 00 00 */ cmpwi r0, 0 /* 80040C64 0003C8C4 41 82 00 0C */ beq lbl_80040C70 /* 80040C68 0003C8C8 7C 04 03 78 */ mr r4, r0 /* 80040C6C 0003C8CC 48 00 00 14 */ b lbl_80040C80 lbl_80040C70: /* 80040C70 0003C8D0 80 03 00 60 */ lwz r0, 0x60(r3) /* 80040C74 0003C8D4 2C 00 00 00 */ cmpwi r0, 0 /* 80040C78 0003C8D8 41 82 00 08 */ beq lbl_80040C80 /* 80040C7C 0003C8DC 7C 04 03 78 */ mr r4, r0 lbl_80040C80: /* 80040C80 0003C8E0 2C 04 00 00 */ cmpwi r4, 0 /* 80040C84 0003C8E4 41 82 00 14 */ beq lbl_80040C98 /* 80040C88 0003C8E8 38 61 00 08 */ addi r3, r1, 8 /* 80040C8C 0003C8EC 4B FF 7E 09 */ bl func_80038A94 /* 80040C90 0003C8F0 C0 21 00 0C */ lfs f1, 0xc(r1) /* 80040C94 0003C8F4 48 00 00 08 */ b lbl_80040C9C lbl_80040C98: /* 80040C98 0003C8F8 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) lbl_80040C9C: /* 80040C9C 0003C8FC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040CA0 0003C900 7C 08 03 A6 */ mtlr r0 /* 80040CA4 0003C904 38 21 00 20 */ addi r1, r1, 0x20 /* 80040CA8 0003C908 4E 80 00 20 */ blr .global func_80040CAC func_80040CAC: /* 80040CAC 0003C90C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80040CB0 0003C910 7C 08 02 A6 */ mflr r0 /* 80040CB4 0003C914 90 01 00 44 */ stw r0, 0x44(r1) /* 80040CB8 0003C918 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80040CBC 0003C91C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80040CC0 0003C920 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80040CC4 0003C924 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80040CC8 0003C928 38 00 00 01 */ li r0, 1 /* 80040CCC 0003C92C FF C0 08 90 */ fmr f30, f1 /* 80040CD0 0003C930 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80040CD4 0003C934 7C BF 2B 78 */ mr r31, r5 /* 80040CD8 0003C938 93 C1 00 18 */ stw r30, 0x18(r1) /* 80040CDC 0003C93C 7C 9E 23 78 */ mr r30, r4 /* 80040CE0 0003C940 93 A1 00 14 */ stw r29, 0x14(r1) /* 80040CE4 0003C944 7C 7D 1B 78 */ mr r29, r3 /* 80040CE8 0003C948 80 C4 00 10 */ lwz r6, 0x10(r4) /* 80040CEC 0003C94C 90 C3 00 10 */ stw r6, 0x10(r3) /* 80040CF0 0003C950 98 03 00 00 */ stb r0, 0(r3) /* 80040CF4 0003C954 80 05 00 04 */ lwz r0, 4(r5) /* 80040CF8 0003C958 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80040CFC 0003C95C 41 82 00 18 */ beq lbl_80040D14 /* 80040D00 0003C960 38 85 00 20 */ addi r4, r5, 0x20 /* 80040D04 0003C964 38 63 00 14 */ addi r3, r3, 0x14 /* 80040D08 0003C968 38 A5 00 14 */ addi r5, r5, 0x14 /* 80040D0C 0003C96C 4B FF F3 DD */ bl func_800400E8 /* 80040D10 0003C970 48 00 00 14 */ b lbl_80040D24 lbl_80040D14: /* 80040D14 0003C974 38 63 00 14 */ addi r3, r3, 0x14 /* 80040D18 0003C978 38 84 00 14 */ addi r4, r4, 0x14 /* 80040D1C 0003C97C 38 A5 00 14 */ addi r5, r5, 0x14 /* 80040D20 0003C980 4B FF F3 C9 */ bl func_800400E8 lbl_80040D24: /* 80040D24 0003C984 FC 20 F0 90 */ fmr f1, f30 /* 80040D28 0003C988 38 7D 00 2C */ addi r3, r29, 0x2c /* 80040D2C 0003C98C 38 9E 00 2C */ addi r4, r30, 0x2c /* 80040D30 0003C990 38 BF 00 2C */ addi r5, r31, 0x2c /* 80040D34 0003C994 4B FF F3 B5 */ bl func_800400E8 /* 80040D38 0003C998 FC 20 F0 90 */ fmr f1, f30 /* 80040D3C 0003C99C 38 7D 00 38 */ addi r3, r29, 0x38 /* 80040D40 0003C9A0 38 9E 00 38 */ addi r4, r30, 0x38 /* 80040D44 0003C9A4 38 BF 00 38 */ addi r5, r31, 0x38 /* 80040D48 0003C9A8 4B FF F3 A1 */ bl func_800400E8 /* 80040D4C 0003C9AC FC 20 F0 90 */ fmr f1, f30 /* 80040D50 0003C9B0 38 7D 00 44 */ addi r3, r29, 0x44 /* 80040D54 0003C9B4 38 9E 00 44 */ addi r4, r30, 0x44 /* 80040D58 0003C9B8 38 BF 00 44 */ addi r5, r31, 0x44 /* 80040D5C 0003C9BC 4B FF F3 8D */ bl func_800400E8 /* 80040D60 0003C9C0 C0 1F 00 50 */ lfs f0, 0x50(r31) /* 80040D64 0003C9C4 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 80040D68 0003C9C8 EC 00 08 28 */ fsubs f0, f0, f1 /* 80040D6C 0003C9CC EC 1E 00 32 */ fmuls f0, f30, f0 /* 80040D70 0003C9D0 EC 01 00 2A */ fadds f0, f1, f0 /* 80040D74 0003C9D4 D0 1D 00 50 */ stfs f0, 0x50(r29) /* 80040D78 0003C9D8 80 1E 00 58 */ lwz r0, 0x58(r30) /* 80040D7C 0003C9DC 90 1D 00 58 */ stw r0, 0x58(r29) /* 80040D80 0003C9E0 80 1E 00 5C */ lwz r0, 0x5c(r30) /* 80040D84 0003C9E4 90 1D 00 5C */ stw r0, 0x5c(r29) /* 80040D88 0003C9E8 80 1E 00 60 */ lwz r0, 0x60(r30) /* 80040D8C 0003C9EC 90 1D 00 60 */ stw r0, 0x60(r29) /* 80040D90 0003C9F0 80 1E 00 64 */ lwz r0, 0x64(r30) /* 80040D94 0003C9F4 90 1D 00 64 */ stw r0, 0x64(r29) /* 80040D98 0003C9F8 80 1E 00 68 */ lwz r0, 0x68(r30) /* 80040D9C 0003C9FC 90 1D 00 68 */ stw r0, 0x68(r29) /* 80040DA0 0003CA00 80 1E 00 6C */ lwz r0, 0x6c(r30) /* 80040DA4 0003CA04 90 1D 00 6C */ stw r0, 0x6c(r29) /* 80040DA8 0003CA08 80 1E 00 70 */ lwz r0, 0x70(r30) /* 80040DAC 0003CA0C 90 1D 00 70 */ stw r0, 0x70(r29) /* 80040DB0 0003CA10 80 1E 00 74 */ lwz r0, 0x74(r30) /* 80040DB4 0003CA14 90 1D 00 74 */ stw r0, 0x74(r29) /* 80040DB8 0003CA18 80 1F 00 04 */ lwz r0, 4(r31) /* 80040DBC 0003CA1C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 80040DC0 0003CA20 41 82 00 14 */ beq lbl_80040DD4 /* 80040DC4 0003CA24 7F E3 FB 78 */ mr r3, r31 /* 80040DC8 0003CA28 4B FF FE 71 */ bl func_80040C38 /* 80040DCC 0003CA2C D0 3D 00 08 */ stfs f1, 8(r29) /* 80040DD0 0003CA30 48 00 00 28 */ b lbl_80040DF8 lbl_80040DD4: /* 80040DD4 0003CA34 7F C3 F3 78 */ mr r3, r30 /* 80040DD8 0003CA38 4B FF FE 61 */ bl func_80040C38 /* 80040DDC 0003CA3C FF E0 08 90 */ fmr f31, f1 /* 80040DE0 0003CA40 7F E3 FB 78 */ mr r3, r31 /* 80040DE4 0003CA44 4B FF FE 55 */ bl func_80040C38 /* 80040DE8 0003CA48 EC 01 F8 28 */ fsubs f0, f1, f31 /* 80040DEC 0003CA4C EC 1E 00 32 */ fmuls f0, f30, f0 /* 80040DF0 0003CA50 EC 1F 00 2A */ fadds f0, f31, f0 /* 80040DF4 0003CA54 D0 1D 00 08 */ stfs f0, 8(r29) lbl_80040DF8: /* 80040DF8 0003CA58 7F C3 F3 78 */ mr r3, r30 /* 80040DFC 0003CA5C 4B FF F9 B5 */ bl func_800407B0 /* 80040E00 0003CA60 FF E0 08 90 */ fmr f31, f1 /* 80040E04 0003CA64 7F E3 FB 78 */ mr r3, r31 /* 80040E08 0003CA68 4B FF F9 A9 */ bl func_800407B0 /* 80040E0C 0003CA6C EC 01 F8 28 */ fsubs f0, f1, f31 /* 80040E10 0003CA70 EC 1E 00 32 */ fmuls f0, f30, f0 /* 80040E14 0003CA74 EC 1F 00 2A */ fadds f0, f31, f0 /* 80040E18 0003CA78 D0 1D 00 0C */ stfs f0, 0xc(r29) /* 80040E1C 0003CA7C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80040E20 0003CA80 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80040E24 0003CA84 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80040E28 0003CA88 CB C1 00 20 */ lfd f30, 0x20(r1) /* 80040E2C 0003CA8C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80040E30 0003CA90 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80040E34 0003CA94 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80040E38 0003CA98 80 01 00 44 */ lwz r0, 0x44(r1) /* 80040E3C 0003CA9C 7C 08 03 A6 */ mtlr r0 /* 80040E40 0003CAA0 38 21 00 40 */ addi r1, r1, 0x40 /* 80040E44 0003CAA4 4E 80 00 20 */ blr .global func_80040E48 func_80040E48: /* 80040E48 0003CAA8 80 A3 00 58 */ lwz r5, 0x58(r3) /* 80040E4C 0003CAAC 38 00 00 00 */ li r0, 0 /* 80040E50 0003CAB0 7C 05 20 40 */ cmplw r5, r4 /* 80040E54 0003CAB4 40 82 00 0C */ bne lbl_80040E60 /* 80040E58 0003CAB8 90 03 00 58 */ stw r0, 0x58(r3) /* 80040E5C 0003CABC 90 03 00 5C */ stw r0, 0x5c(r3) lbl_80040E60: /* 80040E60 0003CAC0 80 A3 00 60 */ lwz r5, 0x60(r3) /* 80040E64 0003CAC4 7C 05 20 40 */ cmplw r5, r4 /* 80040E68 0003CAC8 40 82 00 0C */ bne lbl_80040E74 /* 80040E6C 0003CACC 90 03 00 60 */ stw r0, 0x60(r3) /* 80040E70 0003CAD0 90 03 00 64 */ stw r0, 0x64(r3) lbl_80040E74: /* 80040E74 0003CAD4 38 63 00 10 */ addi r3, r3, 0x10 /* 80040E78 0003CAD8 80 A3 00 58 */ lwz r5, 0x58(r3) /* 80040E7C 0003CADC 7C 05 20 40 */ cmplw r5, r4 /* 80040E80 0003CAE0 40 82 00 0C */ bne lbl_80040E8C /* 80040E84 0003CAE4 90 03 00 58 */ stw r0, 0x58(r3) /* 80040E88 0003CAE8 90 03 00 5C */ stw r0, 0x5c(r3) lbl_80040E8C: /* 80040E8C 0003CAEC 80 A3 00 60 */ lwz r5, 0x60(r3) /* 80040E90 0003CAF0 7C 05 20 40 */ cmplw r5, r4 /* 80040E94 0003CAF4 4C 82 00 20 */ bnelr /* 80040E98 0003CAF8 90 03 00 60 */ stw r0, 0x60(r3) /* 80040E9C 0003CAFC 90 03 00 64 */ stw r0, 0x64(r3) /* 80040EA0 0003CB00 4E 80 00 20 */ blr .global func_80040EA4 func_80040EA4: /* 80040EA4 0003CB04 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80040EA8 0003CB08 7C 08 02 A6 */ mflr r0 /* 80040EAC 0003CB0C 90 01 00 24 */ stw r0, 0x24(r1) /* 80040EB0 0003CB10 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80040EB4 0003CB14 3B E3 00 04 */ addi r31, r3, 4 /* 80040EB8 0003CB18 93 C1 00 18 */ stw r30, 0x18(r1) /* 80040EBC 0003CB1C 3B C3 01 B4 */ addi r30, r3, 0x1b4 /* 80040EC0 0003CB20 93 A1 00 14 */ stw r29, 0x14(r1) /* 80040EC4 0003CB24 7C 7D 1B 78 */ mr r29, r3 lbl_80040EC8: /* 80040EC8 0003CB28 7F E3 FB 78 */ mr r3, r31 /* 80040ECC 0003CB2C 48 00 F4 59 */ bl func_80050324 /* 80040ED0 0003CB30 3B FF 00 24 */ addi r31, r31, 0x24 /* 80040ED4 0003CB34 7C 1F F0 40 */ cmplw r31, r30 /* 80040ED8 0003CB38 41 80 FF F0 */ blt lbl_80040EC8 /* 80040EDC 0003CB3C 3B FD 03 94 */ addi r31, r29, 0x394 lbl_80040EE0: /* 80040EE0 0003CB40 7F C3 F3 78 */ mr r3, r30 /* 80040EE4 0003CB44 48 00 FF 55 */ bl func_80050E38 /* 80040EE8 0003CB48 3B DE 00 60 */ addi r30, r30, 0x60 /* 80040EEC 0003CB4C 7C 1E F8 40 */ cmplw r30, r31 /* 80040EF0 0003CB50 41 80 FF F0 */ blt lbl_80040EE0 /* 80040EF4 0003CB54 7F E3 FB 78 */ mr r3, r31 /* 80040EF8 0003CB58 48 00 FF 41 */ bl func_80050E38 /* 80040EFC 0003CB5C 38 7D 03 F4 */ addi r3, r29, 0x3f4 /* 80040F00 0003CB60 48 00 FF 39 */ bl func_80050E38 /* 80040F04 0003CB64 38 7D 04 54 */ addi r3, r29, 0x454 /* 80040F08 0003CB68 48 00 FF 31 */ bl func_80050E38 /* 80040F0C 0003CB6C 7F A4 EB 78 */ mr r4, r29 /* 80040F10 0003CB70 38 7D 04 E8 */ addi r3, r29, 0x4e8 /* 80040F14 0003CB74 4B FF F5 95 */ bl func_800404A8 /* 80040F18 0003CB78 7F A4 EB 78 */ mr r4, r29 /* 80040F1C 0003CB7C 38 7D 05 60 */ addi r3, r29, 0x560 /* 80040F20 0003CB80 4B FF F5 89 */ bl func_800404A8 /* 80040F24 0003CB84 7F A4 EB 78 */ mr r4, r29 /* 80040F28 0003CB88 38 7D 05 D8 */ addi r3, r29, 0x5d8 /* 80040F2C 0003CB8C 4B FF F5 7D */ bl func_800404A8 /* 80040F30 0003CB90 7F A4 EB 78 */ mr r4, r29 /* 80040F34 0003CB94 38 7D 06 50 */ addi r3, r29, 0x650 /* 80040F38 0003CB98 4B FF F5 71 */ bl func_800404A8 /* 80040F3C 0003CB9C C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80040F40 0003CBA0 38 00 00 00 */ li r0, 0 /* 80040F44 0003CBA4 C0 42 82 BC */ lfs f2, lbl_806408BC-_SDA2_BASE_(r2) /* 80040F48 0003CBA8 7F A3 EB 78 */ mr r3, r29 /* 80040F4C 0003CBAC C0 22 82 B4 */ lfs f1, lbl_806408B4-_SDA2_BASE_(r2) /* 80040F50 0003CBB0 98 1D 00 00 */ stb r0, 0(r29) /* 80040F54 0003CBB4 90 1D 06 CC */ stw r0, 0x6cc(r29) /* 80040F58 0003CBB8 98 1D 00 02 */ stb r0, 2(r29) /* 80040F5C 0003CBBC 90 1D 04 BC */ stw r0, 0x4bc(r29) /* 80040F60 0003CBC0 D0 5D 04 D0 */ stfs f2, 0x4d0(r29) /* 80040F64 0003CBC4 D0 3D 04 CC */ stfs f1, 0x4cc(r29) /* 80040F68 0003CBC8 D0 1D 04 C8 */ stfs f0, 0x4c8(r29) /* 80040F6C 0003CBCC D0 1D 06 DC */ stfs f0, 0x6dc(r29) /* 80040F70 0003CBD0 D0 1D 06 F0 */ stfs f0, 0x6f0(r29) /* 80040F74 0003CBD4 D0 1D 06 EC */ stfs f0, 0x6ec(r29) /* 80040F78 0003CBD8 D0 1D 06 E8 */ stfs f0, 0x6e8(r29) /* 80040F7C 0003CBDC D0 1D 06 E4 */ stfs f0, 0x6e4(r29) /* 80040F80 0003CBE0 D0 1D 06 E0 */ stfs f0, 0x6e0(r29) /* 80040F84 0003CBE4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80040F88 0003CBE8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80040F8C 0003CBEC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80040F90 0003CBF0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80040F94 0003CBF4 7C 08 03 A6 */ mtlr r0 /* 80040F98 0003CBF8 38 21 00 20 */ addi r1, r1, 0x20 /* 80040F9C 0003CBFC 4E 80 00 20 */ blr .global func_80040FA0 func_80040FA0: /* 80040FA0 0003CC00 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80040FA4 0003CC04 7C 08 02 A6 */ mflr r0 /* 80040FA8 0003CC08 C0 02 82 C8 */ lfs f0, lbl_806408C8-_SDA2_BASE_(r2) /* 80040FAC 0003CC0C 90 01 00 44 */ stw r0, 0x44(r1) /* 80040FB0 0003CC10 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80040FB4 0003CC14 3B E0 00 01 */ li r31, 1 /* 80040FB8 0003CC18 93 C1 00 38 */ stw r30, 0x38(r1) /* 80040FBC 0003CC1C 7C 7E 1B 78 */ mr r30, r3 /* 80040FC0 0003CC20 9B E3 00 00 */ stb r31, 0(r3) /* 80040FC4 0003CC24 D0 03 04 E0 */ stfs f0, 0x4e0(r3) /* 80040FC8 0003CC28 38 63 00 04 */ addi r3, r3, 4 /* 80040FCC 0003CC2C 48 00 F3 BD */ bl func_80050388 /* 80040FD0 0003CC30 9B FE 00 01 */ stb r31, 1(r30) /* 80040FD4 0003CC34 7F C3 F3 78 */ mr r3, r30 /* 80040FD8 0003CC38 C0 42 82 B0 */ lfs f2, lbl_806408B0-_SDA2_BASE_(r2) /* 80040FDC 0003CC3C 38 81 00 20 */ addi r4, r1, 0x20 /* 80040FE0 0003CC40 C0 22 82 CC */ lfs f1, lbl_806408CC-_SDA2_BASE_(r2) /* 80040FE4 0003CC44 C0 02 82 D0 */ lfs f0, lbl_806408D0-_SDA2_BASE_(r2) /* 80040FE8 0003CC48 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80040FEC 0003CC4C D0 21 00 24 */ stfs f1, 0x24(r1) /* 80040FF0 0003CC50 D0 01 00 28 */ stfs f0, 0x28(r1) /* 80040FF4 0003CC54 48 00 00 B9 */ bl func_800410AC /* 80040FF8 0003CC58 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80040FFC 0003CC5C 7F C3 F3 78 */ mr r3, r30 /* 80041000 0003CC60 38 81 00 14 */ addi r4, r1, 0x14 /* 80041004 0003CC64 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80041008 0003CC68 D0 01 00 18 */ stfs f0, 0x18(r1) /* 8004100C 0003CC6C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80041010 0003CC70 48 00 15 25 */ bl func_80042534 /* 80041014 0003CC74 C0 42 82 B0 */ lfs f2, lbl_806408B0-_SDA2_BASE_(r2) /* 80041018 0003CC78 38 61 00 08 */ addi r3, r1, 8 /* 8004101C 0003CC7C C0 22 82 CC */ lfs f1, lbl_806408CC-_SDA2_BASE_(r2) /* 80041020 0003CC80 C0 02 82 D0 */ lfs f0, lbl_806408D0-_SDA2_BASE_(r2) /* 80041024 0003CC84 D0 41 00 08 */ stfs f2, 8(r1) /* 80041028 0003CC88 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004102C 0003CC8C D0 01 00 10 */ stfs f0, 0x10(r1) /* 80041030 0003CC90 48 23 BD 55 */ bl func_8027CD84 /* 80041034 0003CC94 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041038 0003CC98 38 00 00 00 */ li r0, 0 /* 8004103C 0003CC9C D0 3E 06 C8 */ stfs f1, 0x6c8(r30) /* 80041040 0003CCA0 D0 1E 06 F4 */ stfs f0, 0x6f4(r30) /* 80041044 0003CCA4 98 1E 06 F8 */ stb r0, 0x6f8(r30) /* 80041048 0003CCA8 9B FE 00 01 */ stb r31, 1(r30) /* 8004104C 0003CCAC 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80041050 0003CCB0 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80041054 0003CCB4 80 01 00 44 */ lwz r0, 0x44(r1) /* 80041058 0003CCB8 7C 08 03 A6 */ mtlr r0 /* 8004105C 0003CCBC 38 21 00 40 */ addi r1, r1, 0x40 /* 80041060 0003CCC0 4E 80 00 20 */ blr .global func_80041064 func_80041064: /* 80041064 0003CCC4 38 00 00 00 */ li r0, 0 /* 80041068 0003CCC8 98 03 00 00 */ stb r0, 0(r3) /* 8004106C 0003CCCC 4E 80 00 20 */ blr .global func_80041070 func_80041070: /* 80041070 0003CCD0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80041074 0003CCD4 7C 08 02 A6 */ mflr r0 /* 80041078 0003CCD8 7C 87 23 78 */ mr r7, r4 /* 8004107C 0003CCDC 38 83 04 E0 */ addi r4, r3, 0x4e0 /* 80041080 0003CCE0 90 01 00 14 */ stw r0, 0x14(r1) /* 80041084 0003CCE4 7C 86 23 78 */ mr r6, r4 /* 80041088 0003CCE8 38 A1 00 08 */ addi r5, r1, 8 /* 8004108C 0003CCEC 38 63 00 04 */ addi r3, r3, 4 /* 80041090 0003CCF0 D0 21 00 08 */ stfs f1, 8(r1) /* 80041094 0003CCF4 FC 20 10 90 */ fmr f1, f2 /* 80041098 0003CCF8 48 00 F2 A5 */ bl func_8005033C /* 8004109C 0003CCFC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800410A0 0003CD00 7C 08 03 A6 */ mtlr r0 /* 800410A4 0003CD04 38 21 00 10 */ addi r1, r1, 0x10 /* 800410A8 0003CD08 4E 80 00 20 */ blr .global func_800410AC func_800410AC: /* 800410AC 0003CD0C 38 00 00 00 */ li r0, 0 /* 800410B0 0003CD10 90 03 04 BC */ stw r0, 0x4bc(r3) /* 800410B4 0003CD14 98 03 00 02 */ stb r0, 2(r3) /* 800410B8 0003CD18 48 00 00 04 */ b func_800410BC .global func_800410BC func_800410BC: /* 800410BC 0003CD1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800410C0 0003CD20 7C 08 02 A6 */ mflr r0 /* 800410C4 0003CD24 90 01 00 14 */ stw r0, 0x14(r1) /* 800410C8 0003CD28 93 E1 00 0C */ stw r31, 0xc(r1) /* 800410CC 0003CD2C 7C 7F 1B 78 */ mr r31, r3 /* 800410D0 0003CD30 38 63 04 E8 */ addi r3, r3, 0x4e8 /* 800410D4 0003CD34 4B FF FB 11 */ bl func_80040BE4 /* 800410D8 0003CD38 38 7F 00 4C */ addi r3, r31, 0x4c /* 800410DC 0003CD3C 48 00 F2 AD */ bl func_80050388 /* 800410E0 0003CD40 38 7F 00 70 */ addi r3, r31, 0x70 /* 800410E4 0003CD44 48 00 F2 A5 */ bl func_80050388 /* 800410E8 0003CD48 38 7F 00 94 */ addi r3, r31, 0x94 /* 800410EC 0003CD4C 48 00 F2 9D */ bl func_80050388 /* 800410F0 0003CD50 38 7F 01 24 */ addi r3, r31, 0x124 /* 800410F4 0003CD54 48 00 F2 95 */ bl func_80050388 /* 800410F8 0003CD58 38 7F 01 48 */ addi r3, r31, 0x148 /* 800410FC 0003CD5C 48 00 F2 8D */ bl func_80050388 /* 80041100 0003CD60 38 00 00 01 */ li r0, 1 /* 80041104 0003CD64 98 1F 00 01 */ stb r0, 1(r31) /* 80041108 0003CD68 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004110C 0003CD6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80041110 0003CD70 7C 08 03 A6 */ mtlr r0 /* 80041114 0003CD74 38 21 00 10 */ addi r1, r1, 0x10 /* 80041118 0003CD78 4E 80 00 20 */ blr .global func_8004111C func_8004111C: /* 8004111C 0003CD7C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80041120 0003CD80 7C 08 02 A6 */ mflr r0 /* 80041124 0003CD84 90 01 00 74 */ stw r0, 0x74(r1) /* 80041128 0003CD88 DB E1 00 60 */ stfd f31, 0x60(r1) /* 8004112C 0003CD8C F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 80041130 0003CD90 FC 40 10 50 */ fneg f2, f2 /* 80041134 0003CD94 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041138 0003CD98 FF E0 18 90 */ fmr f31, f3 /* 8004113C 0003CD9C 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80041140 0003CDA0 7C 7F 1B 78 */ mr r31, r3 /* 80041144 0003CDA4 38 61 00 38 */ addi r3, r1, 0x38 /* 80041148 0003CDA8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004114C 0003CDAC 38 81 00 08 */ addi r4, r1, 8 /* 80041150 0003CDB0 D0 41 00 08 */ stfs f2, 8(r1) /* 80041154 0003CDB4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80041158 0003CDB8 48 1E 25 69 */ bl func_802236C0 /* 8004115C 0003CDBC FC 00 F8 18 */ frsp f0, f31 /* 80041160 0003CDC0 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 80041164 0003CDC4 D3 E1 00 34 */ stfs f31, 0x34(r1) /* 80041168 0003CDC8 38 61 00 14 */ addi r3, r1, 0x14 /* 8004116C 0003CDCC 38 81 00 38 */ addi r4, r1, 0x38 /* 80041170 0003CDD0 D0 21 00 2C */ stfs f1, 0x2c(r1) /* 80041174 0003CDD4 D0 21 00 30 */ stfs f1, 0x30(r1) /* 80041178 0003CDD8 D0 21 00 14 */ stfs f1, 0x14(r1) /* 8004117C 0003CDDC D0 21 00 18 */ stfs f1, 0x18(r1) /* 80041180 0003CDE0 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80041184 0003CDE4 48 1E 28 89 */ bl func_80223A0C /* 80041188 0003CDE8 38 7F 05 74 */ addi r3, r31, 0x574 /* 8004118C 0003CDEC 38 81 00 14 */ addi r4, r1, 0x14 /* 80041190 0003CDF0 38 A1 00 20 */ addi r5, r1, 0x20 /* 80041194 0003CDF4 48 23 BB 31 */ bl func_8027CCC4 /* 80041198 0003CDF8 C0 41 00 20 */ lfs f2, 0x20(r1) /* 8004119C 0003CDFC 38 7F 04 E8 */ addi r3, r31, 0x4e8 /* 800411A0 0003CE00 C0 21 00 24 */ lfs f1, 0x24(r1) /* 800411A4 0003CE04 38 81 00 48 */ addi r4, r1, 0x48 /* 800411A8 0003CE08 C0 01 00 28 */ lfs f0, 0x28(r1) /* 800411AC 0003CE0C D0 41 00 48 */ stfs f2, 0x48(r1) /* 800411B0 0003CE10 D0 21 00 4C */ stfs f1, 0x4c(r1) /* 800411B4 0003CE14 D0 01 00 50 */ stfs f0, 0x50(r1) /* 800411B8 0003CE18 4B FF FA 2D */ bl func_80040BE4 /* 800411BC 0003CE1C 38 00 00 00 */ li r0, 0 /* 800411C0 0003CE20 38 7F 00 4C */ addi r3, r31, 0x4c /* 800411C4 0003CE24 90 1F 04 BC */ stw r0, 0x4bc(r31) /* 800411C8 0003CE28 98 1F 00 02 */ stb r0, 2(r31) /* 800411CC 0003CE2C 48 00 F1 BD */ bl func_80050388 /* 800411D0 0003CE30 38 7F 00 70 */ addi r3, r31, 0x70 /* 800411D4 0003CE34 48 00 F1 B5 */ bl func_80050388 /* 800411D8 0003CE38 38 7F 00 94 */ addi r3, r31, 0x94 /* 800411DC 0003CE3C 48 00 F1 AD */ bl func_80050388 /* 800411E0 0003CE40 38 00 00 01 */ li r0, 1 /* 800411E4 0003CE44 98 1F 00 01 */ stb r0, 1(r31) /* 800411E8 0003CE48 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 800411EC 0003CE4C CB E1 00 60 */ lfd f31, 0x60(r1) /* 800411F0 0003CE50 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 800411F4 0003CE54 80 01 00 74 */ lwz r0, 0x74(r1) /* 800411F8 0003CE58 7C 08 03 A6 */ mtlr r0 /* 800411FC 0003CE5C 38 21 00 70 */ addi r1, r1, 0x70 /* 80041200 0003CE60 4E 80 00 20 */ blr .global func_80041204 func_80041204: /* 80041204 0003CE64 38 63 04 FC */ addi r3, r3, 0x4fc /* 80041208 0003CE68 4E 80 00 20 */ blr .global func_8004120C func_8004120C: /* 8004120C 0003CE6C 38 00 00 01 */ li r0, 1 /* 80041210 0003CE70 D0 23 06 F4 */ stfs f1, 0x6f4(r3) /* 80041214 0003CE74 98 03 06 F8 */ stb r0, 0x6f8(r3) /* 80041218 0003CE78 4E 80 00 20 */ blr .global func_8004121C func_8004121C: /* 8004121C 0003CE7C 38 00 00 00 */ li r0, 0 /* 80041220 0003CE80 98 03 06 F8 */ stb r0, 0x6f8(r3) /* 80041224 0003CE84 4E 80 00 20 */ blr .global func_80041228 func_80041228: /* 80041228 0003CE88 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 8004122C 0003CE8C 7C 08 02 A6 */ mflr r0 /* 80041230 0003CE90 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80041234 0003CE94 DB E1 00 90 */ stfd f31, 0x90(r1) /* 80041238 0003CE98 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 8004123C 0003CE9C DB C1 00 80 */ stfd f30, 0x80(r1) /* 80041240 0003CEA0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80041244 0003CEA4 DB A1 00 70 */ stfd f29, 0x70(r1) /* 80041248 0003CEA8 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 8004124C 0003CEAC 38 A1 00 54 */ addi r5, r1, 0x54 /* 80041250 0003CEB0 93 E1 00 6C */ stw r31, 0x6c(r1) /* 80041254 0003CEB4 3B E4 00 14 */ addi r31, r4, 0x14 /* 80041258 0003CEB8 93 C1 00 68 */ stw r30, 0x68(r1) /* 8004125C 0003CEBC 7C 9E 23 78 */ mr r30, r4 /* 80041260 0003CEC0 7F E4 FB 78 */ mr r4, r31 /* 80041264 0003CEC4 93 A1 00 64 */ stw r29, 0x64(r1) /* 80041268 0003CEC8 7C 7D 1B 78 */ mr r29, r3 /* 8004126C 0003CECC 38 63 04 FC */ addi r3, r3, 0x4fc /* 80041270 0003CED0 48 23 BA 79 */ bl func_8027CCE8 /* 80041274 0003CED4 7F C3 F3 78 */ mr r3, r30 /* 80041278 0003CED8 4B FF F9 C1 */ bl func_80040C38 /* 8004127C 0003CEDC 80 1D 04 BC */ lwz r0, 0x4bc(r29) /* 80041280 0003CEE0 FF C0 08 90 */ fmr f30, f1 /* 80041284 0003CEE4 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 80041288 0003CEE8 41 82 00 40 */ beq lbl_800412C8 /* 8004128C 0003CEEC 7F C3 F3 78 */ mr r3, r30 /* 80041290 0003CEF0 4B FF F5 21 */ bl func_800407B0 /* 80041294 0003CEF4 FF E0 08 90 */ fmr f31, f1 /* 80041298 0003CEF8 7F A3 EB 78 */ mr r3, r29 /* 8004129C 0003CEFC 7F C4 F3 78 */ mr r4, r30 /* 800412A0 0003CF00 48 00 02 85 */ bl func_80041524 /* 800412A4 0003CF04 EC 01 F8 28 */ fsubs f0, f1, f31 /* 800412A8 0003CF08 7F C3 F3 78 */ mr r3, r30 /* 800412AC 0003CF0C D0 1D 06 C8 */ stfs f0, 0x6c8(r29) /* 800412B0 0003CF10 4B FF F5 01 */ bl func_800407B0 /* 800412B4 0003CF14 C0 5D 06 C8 */ lfs f2, 0x6c8(r29) /* 800412B8 0003CF18 C0 1D 06 E8 */ lfs f0, 0x6e8(r29) /* 800412BC 0003CF1C EC 22 08 2A */ fadds f1, f2, f1 /* 800412C0 0003CF20 EF A0 08 2A */ fadds f29, f0, f1 /* 800412C4 0003CF24 48 00 00 1C */ b lbl_800412E0 lbl_800412C8: /* 800412C8 0003CF28 7F C3 F3 78 */ mr r3, r30 /* 800412CC 0003CF2C 4B FF F4 E5 */ bl func_800407B0 /* 800412D0 0003CF30 C0 5D 06 C8 */ lfs f2, 0x6c8(r29) /* 800412D4 0003CF34 C0 1D 06 E8 */ lfs f0, 0x6e8(r29) /* 800412D8 0003CF38 EC 22 08 2A */ fadds f1, f2, f1 /* 800412DC 0003CF3C EF A0 08 2A */ fadds f29, f0, f1 lbl_800412E0: /* 800412E0 0003CF40 80 1D 01 24 */ lwz r0, 0x124(r29) /* 800412E4 0003CF44 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 800412E8 0003CF48 2C 00 00 00 */ cmpwi r0, 0 /* 800412EC 0003CF4C D3 A1 00 34 */ stfs f29, 0x34(r1) /* 800412F0 0003CF50 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800412F4 0003CF54 D0 01 00 30 */ stfs f0, 0x30(r1) /* 800412F8 0003CF58 41 82 00 10 */ beq lbl_80041308 /* 800412FC 0003CF5C C0 1D 04 D8 */ lfs f0, 0x4d8(r29) /* 80041300 0003CF60 EF E0 F0 2A */ fadds f31, f0, f30 /* 80041304 0003CF64 48 00 00 2C */ b lbl_80041330 lbl_80041308: /* 80041308 0003CF68 80 1D 04 BC */ lwz r0, 0x4bc(r29) /* 8004130C 0003CF6C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80041310 0003CF70 41 82 00 10 */ beq lbl_80041320 /* 80041314 0003CF74 C0 1D 04 C0 */ lfs f0, 0x4c0(r29) /* 80041318 0003CF78 EF E0 F0 2A */ fadds f31, f0, f30 /* 8004131C 0003CF7C 48 00 00 14 */ b lbl_80041330 lbl_80041320: /* 80041320 0003CF80 C0 41 00 5C */ lfs f2, 0x5c(r1) /* 80041324 0003CF84 C0 21 00 54 */ lfs f1, 0x54(r1) /* 80041328 0003CF88 48 19 32 B5 */ bl atan2 /* 8004132C 0003CF8C FF E0 08 18 */ frsp f31, f1 lbl_80041330: /* 80041330 0003CF90 80 1D 01 48 */ lwz r0, 0x148(r29) /* 80041334 0003CF94 2C 00 00 00 */ cmpwi r0, 0 /* 80041338 0003CF98 41 82 00 0C */ beq lbl_80041344 /* 8004133C 0003CF9C C0 5D 04 DC */ lfs f2, 0x4dc(r29) /* 80041340 0003CFA0 48 00 01 20 */ b lbl_80041460 lbl_80041344: /* 80041344 0003CFA4 80 7D 04 BC */ lwz r3, 0x4bc(r29) /* 80041348 0003CFA8 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19 /* 8004134C 0003CFAC 41 82 00 80 */ beq lbl_800413CC /* 80041350 0003CFB0 C0 3D 04 C8 */ lfs f1, 0x4c8(r29) /* 80041354 0003CFB4 C0 1F 00 04 */ lfs f0, 4(r31) /* 80041358 0003CFB8 C0 42 82 D4 */ lfs f2, lbl_806408D4-_SDA2_BASE_(r2) /* 8004135C 0003CFBC EC 01 00 28 */ fsubs f0, f1, f0 /* 80041360 0003CFC0 EC 20 E8 24 */ fdivs f1, f0, f29 /* 80041364 0003CFC4 FC 00 0A 10 */ fabs f0, f1 /* 80041368 0003CFC8 FC 00 00 18 */ frsp f0, f0 /* 8004136C 0003CFCC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80041370 0003CFD0 4C 41 13 82 */ cror 2, 1, 2 /* 80041374 0003CFD4 40 82 00 1C */ bne lbl_80041390 /* 80041378 0003CFD8 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 8004137C 0003CFDC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041380 0003CFE0 40 81 00 08 */ ble lbl_80041388 /* 80041384 0003CFE4 48 00 00 DC */ b lbl_80041460 lbl_80041388: /* 80041388 0003CFE8 C0 42 82 D8 */ lfs f2, lbl_806408D8-_SDA2_BASE_(r2) /* 8004138C 0003CFEC 48 00 00 D4 */ b lbl_80041460 lbl_80041390: /* 80041390 0003CFF0 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80041394 0003CFF4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041398 0003CFF8 4C 41 13 82 */ cror 2, 1, 2 /* 8004139C 0003CFFC 40 82 00 0C */ bne lbl_800413A8 /* 800413A0 0003D000 C0 42 82 DC */ lfs f2, lbl_806408DC-_SDA2_BASE_(r2) /* 800413A4 0003D004 48 00 00 BC */ b lbl_80041460 lbl_800413A8: /* 800413A8 0003D008 C0 02 82 E0 */ lfs f0, lbl_806408E0-_SDA2_BASE_(r2) /* 800413AC 0003D00C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800413B0 0003D010 4C 40 13 82 */ cror 2, 0, 2 /* 800413B4 0003D014 40 82 00 0C */ bne lbl_800413C0 /* 800413B8 0003D018 C0 42 82 E4 */ lfs f2, lbl_806408E4-_SDA2_BASE_(r2) /* 800413BC 0003D01C 48 00 00 A4 */ b lbl_80041460 lbl_800413C0: /* 800413C0 0003D020 48 19 32 19 */ bl asin /* 800413C4 0003D024 FC 40 08 18 */ frsp f2, f1 /* 800413C8 0003D028 48 00 00 98 */ b lbl_80041460 lbl_800413CC: /* 800413CC 0003D02C 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 800413D0 0003D030 41 82 00 18 */ beq lbl_800413E8 /* 800413D4 0003D034 80 9D 04 C4 */ lwz r4, 0x4c4(r29) /* 800413D8 0003D038 7F A3 EB 78 */ mr r3, r29 /* 800413DC 0003D03C 48 00 27 35 */ bl func_80043B10 /* 800413E0 0003D040 FC 40 08 90 */ fmr f2, f1 /* 800413E4 0003D044 48 00 00 7C */ b lbl_80041460 lbl_800413E8: /* 800413E8 0003D048 38 61 00 54 */ addi r3, r1, 0x54 /* 800413EC 0003D04C 48 23 B9 99 */ bl func_8027CD84 /* 800413F0 0003D050 C0 01 00 58 */ lfs f0, 0x58(r1) /* 800413F4 0003D054 C0 42 82 D4 */ lfs f2, lbl_806408D4-_SDA2_BASE_(r2) /* 800413F8 0003D058 EC 20 08 24 */ fdivs f1, f0, f1 /* 800413FC 0003D05C FC 00 0A 10 */ fabs f0, f1 /* 80041400 0003D060 FC 00 00 18 */ frsp f0, f0 /* 80041404 0003D064 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80041408 0003D068 4C 41 13 82 */ cror 2, 1, 2 /* 8004140C 0003D06C 40 82 00 1C */ bne lbl_80041428 /* 80041410 0003D070 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041414 0003D074 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041418 0003D078 40 81 00 08 */ ble lbl_80041420 /* 8004141C 0003D07C 48 00 00 44 */ b lbl_80041460 lbl_80041420: /* 80041420 0003D080 C0 42 82 D8 */ lfs f2, lbl_806408D8-_SDA2_BASE_(r2) /* 80041424 0003D084 48 00 00 3C */ b lbl_80041460 lbl_80041428: /* 80041428 0003D088 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 8004142C 0003D08C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041430 0003D090 4C 41 13 82 */ cror 2, 1, 2 /* 80041434 0003D094 40 82 00 0C */ bne lbl_80041440 /* 80041438 0003D098 C0 42 82 DC */ lfs f2, lbl_806408DC-_SDA2_BASE_(r2) /* 8004143C 0003D09C 48 00 00 24 */ b lbl_80041460 lbl_80041440: /* 80041440 0003D0A0 C0 02 82 E0 */ lfs f0, lbl_806408E0-_SDA2_BASE_(r2) /* 80041444 0003D0A4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041448 0003D0A8 4C 40 13 82 */ cror 2, 0, 2 /* 8004144C 0003D0AC 40 82 00 0C */ bne lbl_80041458 /* 80041450 0003D0B0 C0 42 82 E4 */ lfs f2, lbl_806408E4-_SDA2_BASE_(r2) /* 80041454 0003D0B4 48 00 00 0C */ b lbl_80041460 lbl_80041458: /* 80041458 0003D0B8 48 19 31 81 */ bl asin /* 8004145C 0003D0BC FC 40 08 18 */ frsp f2, f1 lbl_80041460: /* 80041460 0003D0C0 FC 40 10 50 */ fneg f2, f2 /* 80041464 0003D0C4 C0 1D 06 EC */ lfs f0, 0x6ec(r29) /* 80041468 0003D0C8 C0 3D 06 F0 */ lfs f1, 0x6f0(r29) /* 8004146C 0003D0CC 38 61 00 38 */ addi r3, r1, 0x38 /* 80041470 0003D0D0 EC 7F 00 2A */ fadds f3, f31, f0 /* 80041474 0003D0D4 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041478 0003D0D8 EC 22 08 28 */ fsubs f1, f2, f1 /* 8004147C 0003D0DC D0 01 00 10 */ stfs f0, 0x10(r1) /* 80041480 0003D0E0 38 81 00 08 */ addi r4, r1, 8 /* 80041484 0003D0E4 D0 61 00 0C */ stfs f3, 0xc(r1) /* 80041488 0003D0E8 D0 21 00 08 */ stfs f1, 8(r1) /* 8004148C 0003D0EC 48 1E 22 35 */ bl func_802236C0 /* 80041490 0003D0F0 C0 41 00 2C */ lfs f2, 0x2c(r1) /* 80041494 0003D0F4 38 61 00 14 */ addi r3, r1, 0x14 /* 80041498 0003D0F8 C0 21 00 30 */ lfs f1, 0x30(r1) /* 8004149C 0003D0FC 38 81 00 38 */ addi r4, r1, 0x38 /* 800414A0 0003D100 C0 01 00 34 */ lfs f0, 0x34(r1) /* 800414A4 0003D104 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800414A8 0003D108 D0 21 00 18 */ stfs f1, 0x18(r1) /* 800414AC 0003D10C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800414B0 0003D110 48 1E 25 5D */ bl func_80223A0C /* 800414B4 0003D114 7F E3 FB 78 */ mr r3, r31 /* 800414B8 0003D118 38 81 00 14 */ addi r4, r1, 0x14 /* 800414BC 0003D11C 38 A1 00 20 */ addi r5, r1, 0x20 /* 800414C0 0003D120 48 23 B8 05 */ bl func_8027CCC4 /* 800414C4 0003D124 C0 41 00 20 */ lfs f2, 0x20(r1) /* 800414C8 0003D128 38 7D 04 E8 */ addi r3, r29, 0x4e8 /* 800414CC 0003D12C C0 21 00 24 */ lfs f1, 0x24(r1) /* 800414D0 0003D130 38 81 00 48 */ addi r4, r1, 0x48 /* 800414D4 0003D134 C0 01 00 28 */ lfs f0, 0x28(r1) /* 800414D8 0003D138 D0 41 00 48 */ stfs f2, 0x48(r1) /* 800414DC 0003D13C D0 21 00 4C */ stfs f1, 0x4c(r1) /* 800414E0 0003D140 D0 01 00 50 */ stfs f0, 0x50(r1) /* 800414E4 0003D144 4B FF F7 01 */ bl func_80040BE4 /* 800414E8 0003D148 38 00 00 01 */ li r0, 1 /* 800414EC 0003D14C 98 1D 00 01 */ stb r0, 1(r29) /* 800414F0 0003D150 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 800414F4 0003D154 CB E1 00 90 */ lfd f31, 0x90(r1) /* 800414F8 0003D158 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 800414FC 0003D15C CB C1 00 80 */ lfd f30, 0x80(r1) /* 80041500 0003D160 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80041504 0003D164 CB A1 00 70 */ lfd f29, 0x70(r1) /* 80041508 0003D168 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 8004150C 0003D16C 83 C1 00 68 */ lwz r30, 0x68(r1) /* 80041510 0003D170 83 A1 00 64 */ lwz r29, 0x64(r1) /* 80041514 0003D174 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80041518 0003D178 7C 08 03 A6 */ mtlr r0 /* 8004151C 0003D17C 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80041520 0003D180 4E 80 00 20 */ blr .global func_80041524 func_80041524: /* 80041524 0003D184 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80041528 0003D188 7C 08 02 A6 */ mflr r0 /* 8004152C 0003D18C 90 01 00 34 */ stw r0, 0x34(r1) /* 80041530 0003D190 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80041534 0003D194 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80041538 0003D198 80 04 00 10 */ lwz r0, 0x10(r4) /* 8004153C 0003D19C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80041540 0003D1A0 2C 00 00 02 */ cmpwi r0, 2 /* 80041544 0003D1A4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80041548 0003D1A8 7C 9E 23 78 */ mr r30, r4 /* 8004154C 0003D1AC 93 A1 00 14 */ stw r29, 0x14(r1) /* 80041550 0003D1B0 7C 7D 1B 78 */ mr r29, r3 /* 80041554 0003D1B4 41 82 00 50 */ beq lbl_800415A4 /* 80041558 0003D1B8 40 80 01 10 */ bge lbl_80041668 /* 8004155C 0003D1BC 2C 00 00 01 */ cmpwi r0, 1 /* 80041560 0003D1C0 40 80 00 08 */ bge lbl_80041568 /* 80041564 0003D1C4 48 00 01 04 */ b lbl_80041668 lbl_80041568: /* 80041568 0003D1C8 7F C3 F3 78 */ mr r3, r30 /* 8004156C 0003D1CC 38 80 00 00 */ li r4, 0 /* 80041570 0003D1D0 4B FF F6 0D */ bl func_80040B7C /* 80041574 0003D1D4 2C 03 00 00 */ cmpwi r3, 0 /* 80041578 0003D1D8 41 82 00 24 */ beq lbl_8004159C /* 8004157C 0003D1DC 7F C3 F3 78 */ mr r3, r30 /* 80041580 0003D1E0 38 80 00 00 */ li r4, 0 /* 80041584 0003D1E4 4B FF F5 F9 */ bl func_80040B7C /* 80041588 0003D1E8 80 BD 04 D4 */ lwz r5, 0x4d4(r29) /* 8004158C 0003D1EC 7C 64 1B 78 */ mr r4, r3 /* 80041590 0003D1F0 7F A3 EB 78 */ mr r3, r29 /* 80041594 0003D1F4 48 00 24 59 */ bl func_800439EC /* 80041598 0003D1F8 48 00 00 D4 */ b lbl_8004166C lbl_8004159C: /* 8004159C 0003D1FC C0 3D 06 C8 */ lfs f1, 0x6c8(r29) /* 800415A0 0003D200 48 00 00 CC */ b lbl_8004166C lbl_800415A4: /* 800415A4 0003D204 7F C3 F3 78 */ mr r3, r30 /* 800415A8 0003D208 38 80 00 00 */ li r4, 0 /* 800415AC 0003D20C 4B FF F5 D1 */ bl func_80040B7C /* 800415B0 0003D210 2C 03 00 00 */ cmpwi r3, 0 /* 800415B4 0003D214 41 82 00 AC */ beq lbl_80041660 /* 800415B8 0003D218 7F C3 F3 78 */ mr r3, r30 /* 800415BC 0003D21C 38 80 00 01 */ li r4, 1 /* 800415C0 0003D220 4B FF F5 BD */ bl func_80040B7C /* 800415C4 0003D224 2C 03 00 00 */ cmpwi r3, 0 /* 800415C8 0003D228 40 82 00 24 */ bne lbl_800415EC /* 800415CC 0003D22C 7F C3 F3 78 */ mr r3, r30 /* 800415D0 0003D230 38 80 00 00 */ li r4, 0 /* 800415D4 0003D234 4B FF F5 A9 */ bl func_80040B7C /* 800415D8 0003D238 80 BD 04 D4 */ lwz r5, 0x4d4(r29) /* 800415DC 0003D23C 7C 64 1B 78 */ mr r4, r3 /* 800415E0 0003D240 7F A3 EB 78 */ mr r3, r29 /* 800415E4 0003D244 48 00 24 09 */ bl func_800439EC /* 800415E8 0003D248 48 00 00 84 */ b lbl_8004166C lbl_800415EC: /* 800415EC 0003D24C 7F C3 F3 78 */ mr r3, r30 /* 800415F0 0003D250 38 80 00 01 */ li r4, 1 /* 800415F4 0003D254 4B FF F5 89 */ bl func_80040B7C /* 800415F8 0003D258 7C 7F 1B 78 */ mr r31, r3 /* 800415FC 0003D25C 7F C3 F3 78 */ mr r3, r30 /* 80041600 0003D260 38 80 00 00 */ li r4, 0 /* 80041604 0003D264 4B FF F5 79 */ bl func_80040B7C /* 80041608 0003D268 7C 03 F8 40 */ cmplw r3, r31 /* 8004160C 0003D26C 40 82 00 24 */ bne lbl_80041630 /* 80041610 0003D270 7F C3 F3 78 */ mr r3, r30 /* 80041614 0003D274 38 80 00 00 */ li r4, 0 /* 80041618 0003D278 4B FF F5 65 */ bl func_80040B7C /* 8004161C 0003D27C 80 BD 04 D4 */ lwz r5, 0x4d4(r29) /* 80041620 0003D280 7C 64 1B 78 */ mr r4, r3 /* 80041624 0003D284 7F A3 EB 78 */ mr r3, r29 /* 80041628 0003D288 48 00 23 C5 */ bl func_800439EC /* 8004162C 0003D28C 48 00 00 40 */ b lbl_8004166C lbl_80041630: /* 80041630 0003D290 7F C3 F3 78 */ mr r3, r30 /* 80041634 0003D294 4B FF F1 7D */ bl func_800407B0 /* 80041638 0003D298 FF E0 08 90 */ fmr f31, f1 /* 8004163C 0003D29C 7F C3 F3 78 */ mr r3, r30 /* 80041640 0003D2A0 38 80 00 00 */ li r4, 0 /* 80041644 0003D2A4 4B FF F5 39 */ bl func_80040B7C /* 80041648 0003D2A8 80 BD 04 D4 */ lwz r5, 0x4d4(r29) /* 8004164C 0003D2AC 7C 64 1B 78 */ mr r4, r3 /* 80041650 0003D2B0 7F A3 EB 78 */ mr r3, r29 /* 80041654 0003D2B4 48 00 23 99 */ bl func_800439EC /* 80041658 0003D2B8 EC 21 F8 2A */ fadds f1, f1, f31 /* 8004165C 0003D2BC 48 00 00 10 */ b lbl_8004166C lbl_80041660: /* 80041660 0003D2C0 C0 3D 06 C8 */ lfs f1, 0x6c8(r29) /* 80041664 0003D2C4 48 00 00 08 */ b lbl_8004166C lbl_80041668: /* 80041668 0003D2C8 C0 23 06 C8 */ lfs f1, 0x6c8(r3) lbl_8004166C: /* 8004166C 0003D2CC E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80041670 0003D2D0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80041674 0003D2D4 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80041678 0003D2D8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004167C 0003D2DC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80041680 0003D2E0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80041684 0003D2E4 7C 08 03 A6 */ mtlr r0 /* 80041688 0003D2E8 38 21 00 30 */ addi r1, r1, 0x30 /* 8004168C 0003D2EC 4E 80 00 20 */ blr .global func_80041690 func_80041690: /* 80041690 0003D2F0 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041694 0003D2F4 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80041698 0003D2F8 40 80 00 08 */ bge lbl_800416A0 /* 8004169C 0003D2FC FC 60 00 90 */ fmr f3, f0 lbl_800416A0: /* 800416A0 0003D300 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 800416A4 0003D304 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 800416A8 0003D308 40 81 00 08 */ ble lbl_800416B0 /* 800416AC 0003D30C FC 60 00 90 */ fmr f3, f0 lbl_800416B0: /* 800416B0 0003D310 C0 02 82 E8 */ lfs f0, lbl_806408E8-_SDA2_BASE_(r2) /* 800416B4 0003D314 38 00 00 3F */ li r0, 0x3f /* 800416B8 0003D318 D0 23 04 C0 */ stfs f1, 0x4c0(r3) /* 800416BC 0003D31C FC 03 00 40 */ fcmpo cr0, f3, f0 /* 800416C0 0003D320 90 83 04 C4 */ stw r4, 0x4c4(r3) /* 800416C4 0003D324 D0 63 04 CC */ stfs f3, 0x4cc(r3) /* 800416C8 0003D328 D0 43 04 D0 */ stfs f2, 0x4d0(r3) /* 800416CC 0003D32C 90 A3 04 D4 */ stw r5, 0x4d4(r3) /* 800416D0 0003D330 90 03 04 BC */ stw r0, 0x4bc(r3) /* 800416D4 0003D334 4C 41 13 82 */ cror 2, 1, 2 /* 800416D8 0003D338 4C 82 00 20 */ bnelr /* 800416DC 0003D33C 38 83 05 60 */ addi r4, r3, 0x560 /* 800416E0 0003D340 4B FF FB 48 */ b func_80041228 /* 800416E4 0003D344 4E 80 00 20 */ blr .global func_800416E8 func_800416E8: /* 800416E8 0003D348 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 800416EC 0003D34C FC 03 00 40 */ fcmpo cr0, f3, f0 /* 800416F0 0003D350 40 80 00 08 */ bge lbl_800416F8 /* 800416F4 0003D354 FC 60 00 90 */ fmr f3, f0 lbl_800416F8: /* 800416F8 0003D358 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 800416FC 0003D35C FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80041700 0003D360 40 81 00 08 */ ble lbl_80041708 /* 80041704 0003D364 FC 60 00 90 */ fmr f3, f0 lbl_80041708: /* 80041708 0003D368 C0 02 82 E8 */ lfs f0, lbl_806408E8-_SDA2_BASE_(r2) /* 8004170C 0003D36C 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 80041710 0003D370 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80041714 0003D374 D0 23 04 C0 */ stfs f1, 0x4c0(r3) /* 80041718 0003D378 60 00 00 17 */ ori r0, r0, 0x17 /* 8004171C 0003D37C 90 03 04 BC */ stw r0, 0x4bc(r3) /* 80041720 0003D380 D0 63 04 CC */ stfs f3, 0x4cc(r3) /* 80041724 0003D384 D0 43 04 D0 */ stfs f2, 0x4d0(r3) /* 80041728 0003D388 4C 41 13 82 */ cror 2, 1, 2 /* 8004172C 0003D38C 4C 82 00 20 */ bnelr /* 80041730 0003D390 38 83 05 60 */ addi r4, r3, 0x560 /* 80041734 0003D394 4B FF FA F4 */ b func_80041228 /* 80041738 0003D398 4E 80 00 20 */ blr .global func_8004173C func_8004173C: /* 8004173C 0003D39C C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041740 0003D3A0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80041744 0003D3A4 40 80 00 08 */ bge lbl_8004174C /* 80041748 0003D3A8 FC 40 00 90 */ fmr f2, f0 lbl_8004174C: /* 8004174C 0003D3AC C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80041750 0003D3B0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80041754 0003D3B4 40 81 00 08 */ ble lbl_8004175C /* 80041758 0003D3B8 FC 40 00 90 */ fmr f2, f0 lbl_8004175C: /* 8004175C 0003D3BC 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 80041760 0003D3C0 C0 02 82 E8 */ lfs f0, lbl_806408E8-_SDA2_BASE_(r2) /* 80041764 0003D3C4 60 00 00 0F */ ori r0, r0, 0xf /* 80041768 0003D3C8 90 83 04 C4 */ stw r4, 0x4c4(r3) /* 8004176C 0003D3CC 54 00 06 B0 */ rlwinm r0, r0, 0, 0x1a, 0x18 /* 80041770 0003D3D0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80041774 0003D3D4 90 03 04 BC */ stw r0, 0x4bc(r3) /* 80041778 0003D3D8 D0 43 04 CC */ stfs f2, 0x4cc(r3) /* 8004177C 0003D3DC D0 23 04 D0 */ stfs f1, 0x4d0(r3) /* 80041780 0003D3E0 4C 41 13 82 */ cror 2, 1, 2 /* 80041784 0003D3E4 4C 82 00 20 */ bnelr /* 80041788 0003D3E8 38 83 05 60 */ addi r4, r3, 0x560 /* 8004178C 0003D3EC 4B FF FA 9C */ b func_80041228 /* 80041790 0003D3F0 4E 80 00 20 */ blr .global func_80041794 func_80041794: /* 80041794 0003D3F4 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041798 0003D3F8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004179C 0003D3FC 40 80 00 08 */ bge lbl_800417A4 /* 800417A0 0003D400 FC 40 00 90 */ fmr f2, f0 lbl_800417A4: /* 800417A4 0003D404 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 800417A8 0003D408 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800417AC 0003D40C 40 81 00 08 */ ble lbl_800417B4 /* 800417B0 0003D410 FC 40 00 90 */ fmr f2, f0 lbl_800417B4: /* 800417B4 0003D414 C0 02 82 E8 */ lfs f0, lbl_806408E8-_SDA2_BASE_(r2) /* 800417B8 0003D418 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 800417BC 0003D41C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800417C0 0003D420 90 83 04 D4 */ stw r4, 0x4d4(r3) /* 800417C4 0003D424 60 00 00 27 */ ori r0, r0, 0x27 /* 800417C8 0003D428 90 03 04 BC */ stw r0, 0x4bc(r3) /* 800417CC 0003D42C D0 43 04 CC */ stfs f2, 0x4cc(r3) /* 800417D0 0003D430 D0 23 04 D0 */ stfs f1, 0x4d0(r3) /* 800417D4 0003D434 4C 41 13 82 */ cror 2, 1, 2 /* 800417D8 0003D438 4C 82 00 20 */ bnelr /* 800417DC 0003D43C 38 83 05 60 */ addi r4, r3, 0x560 /* 800417E0 0003D440 4B FF FA 48 */ b func_80041228 /* 800417E4 0003D444 4E 80 00 20 */ blr .global func_800417E8 func_800417E8: /* 800417E8 0003D448 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800417EC 0003D44C 7C 08 02 A6 */ mflr r0 /* 800417F0 0003D450 90 01 00 44 */ stw r0, 0x44(r1) /* 800417F4 0003D454 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800417F8 0003D458 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 800417FC 0003D45C DB C1 00 20 */ stfd f30, 0x20(r1) /* 80041800 0003D460 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80041804 0003D464 DB A1 00 10 */ stfd f29, 0x10(r1) /* 80041808 0003D468 F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 /* 8004180C 0003D46C FF A0 08 90 */ fmr f29, f1 /* 80041810 0003D470 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041814 0003D474 FF C0 10 90 */ fmr f30, f2 /* 80041818 0003D478 FF E0 18 90 */ fmr f31, f3 /* 8004181C 0003D47C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80041820 0003D480 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80041824 0003D484 7C 7F 1B 78 */ mr r31, r3 /* 80041828 0003D488 40 80 00 08 */ bge lbl_80041830 /* 8004182C 0003D48C FF E0 00 90 */ fmr f31, f0 lbl_80041830: /* 80041830 0003D490 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80041834 0003D494 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80041838 0003D498 40 81 00 08 */ ble lbl_80041840 /* 8004183C 0003D49C FF E0 00 90 */ fmr f31, f0 lbl_80041840: /* 80041840 0003D4A0 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 80041844 0003D4A4 60 00 00 47 */ ori r0, r0, 0x47 /* 80041848 0003D4A8 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 8004184C 0003D4AC 90 03 04 BC */ stw r0, 0x4bc(r3) /* 80041850 0003D4B0 38 63 01 48 */ addi r3, r3, 0x148 /* 80041854 0003D4B4 48 00 EB 35 */ bl func_80050388 /* 80041858 0003D4B8 C0 02 82 E8 */ lfs f0, lbl_806408E8-_SDA2_BASE_(r2) /* 8004185C 0003D4BC D3 BF 04 C8 */ stfs f29, 0x4c8(r31) /* 80041860 0003D4C0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80041864 0003D4C4 D3 FF 04 CC */ stfs f31, 0x4cc(r31) /* 80041868 0003D4C8 D3 DF 04 D0 */ stfs f30, 0x4d0(r31) /* 8004186C 0003D4CC 4C 41 13 82 */ cror 2, 1, 2 /* 80041870 0003D4D0 40 82 00 10 */ bne lbl_80041880 /* 80041874 0003D4D4 7F E3 FB 78 */ mr r3, r31 /* 80041878 0003D4D8 38 9F 05 60 */ addi r4, r31, 0x560 /* 8004187C 0003D4DC 4B FF F9 AD */ bl func_80041228 lbl_80041880: /* 80041880 0003D4E0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80041884 0003D4E4 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80041888 0003D4E8 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 8004188C 0003D4EC CB C1 00 20 */ lfd f30, 0x20(r1) /* 80041890 0003D4F0 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 /* 80041894 0003D4F4 CB A1 00 10 */ lfd f29, 0x10(r1) /* 80041898 0003D4F8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004189C 0003D4FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800418A0 0003D500 7C 08 03 A6 */ mtlr r0 /* 800418A4 0003D504 38 21 00 40 */ addi r1, r1, 0x40 /* 800418A8 0003D508 4E 80 00 20 */ blr .global func_800418AC func_800418AC: /* 800418AC 0003D50C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800418B0 0003D510 7C 08 02 A6 */ mflr r0 /* 800418B4 0003D514 90 01 00 14 */ stw r0, 0x14(r1) /* 800418B8 0003D518 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 800418BC 0003D51C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800418C0 0003D520 93 C1 00 08 */ stw r30, 8(r1) /* 800418C4 0003D524 7C 7E 1B 78 */ mr r30, r3 /* 800418C8 0003D528 41 82 00 20 */ beq lbl_800418E8 /* 800418CC 0003D52C 3B E0 00 00 */ li r31, 0 /* 800418D0 0003D530 38 80 00 00 */ li r4, 0 /* 800418D4 0003D534 93 E3 04 BC */ stw r31, 0x4bc(r3) /* 800418D8 0003D538 38 63 04 E8 */ addi r3, r3, 0x4e8 /* 800418DC 0003D53C 4B FF F2 C9 */ bl func_80040BA4 /* 800418E0 0003D540 9B FE 00 02 */ stb r31, 2(r30) /* 800418E4 0003D544 48 00 00 54 */ b lbl_80041938 lbl_800418E8: /* 800418E8 0003D548 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d /* 800418EC 0003D54C 41 82 00 10 */ beq lbl_800418FC /* 800418F0 0003D550 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 800418F4 0003D554 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 800418F8 0003D558 90 03 04 BC */ stw r0, 0x4bc(r3) lbl_800418FC: /* 800418FC 0003D55C 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e /* 80041900 0003D560 41 82 00 10 */ beq lbl_80041910 /* 80041904 0003D564 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 80041908 0003D568 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 8004190C 0003D56C 90 03 04 BC */ stw r0, 0x4bc(r3) lbl_80041910: /* 80041910 0003D570 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c /* 80041914 0003D574 41 82 00 10 */ beq lbl_80041924 /* 80041918 0003D578 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 8004191C 0003D57C 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 80041920 0003D580 90 03 04 BC */ stw r0, 0x4bc(r3) lbl_80041924: /* 80041924 0003D584 54 80 06 F7 */ rlwinm. r0, r4, 0, 0x1b, 0x1b /* 80041928 0003D588 41 82 00 10 */ beq lbl_80041938 /* 8004192C 0003D58C 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 80041930 0003D590 54 00 06 B0 */ rlwinm r0, r0, 0, 0x1a, 0x18 /* 80041934 0003D594 90 03 04 BC */ stw r0, 0x4bc(r3) lbl_80041938: /* 80041938 0003D598 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004193C 0003D59C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80041940 0003D5A0 83 C1 00 08 */ lwz r30, 8(r1) /* 80041944 0003D5A4 7C 08 03 A6 */ mtlr r0 /* 80041948 0003D5A8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004194C 0003D5AC 4E 80 00 20 */ blr .global func_80041950 func_80041950: /* 80041950 0003D5B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80041954 0003D5B4 7C 08 02 A6 */ mflr r0 /* 80041958 0003D5B8 7C 87 23 78 */ mr r7, r4 /* 8004195C 0003D5BC 38 83 04 C8 */ addi r4, r3, 0x4c8 /* 80041960 0003D5C0 90 01 00 14 */ stw r0, 0x14(r1) /* 80041964 0003D5C4 7C 86 23 78 */ mr r6, r4 /* 80041968 0003D5C8 38 A1 00 08 */ addi r5, r1, 8 /* 8004196C 0003D5CC 38 63 01 90 */ addi r3, r3, 0x190 /* 80041970 0003D5D0 D0 21 00 08 */ stfs f1, 8(r1) /* 80041974 0003D5D4 FC 20 10 90 */ fmr f1, f2 /* 80041978 0003D5D8 48 00 E9 C5 */ bl func_8005033C /* 8004197C 0003D5DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80041980 0003D5E0 7C 08 03 A6 */ mtlr r0 /* 80041984 0003D5E4 38 21 00 10 */ addi r1, r1, 0x10 /* 80041988 0003D5E8 4E 80 00 20 */ blr .global func_8004198C func_8004198C: /* 8004198C 0003D5EC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80041990 0003D5F0 7C 08 02 A6 */ mflr r0 /* 80041994 0003D5F4 90 01 00 14 */ stw r0, 0x14(r1) /* 80041998 0003D5F8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004199C 0003D5FC 7C 7F 1B 78 */ mr r31, r3 /* 800419A0 0003D600 38 63 04 E8 */ addi r3, r3, 0x4e8 /* 800419A4 0003D604 4B FF F1 3D */ bl func_80040AE0 /* 800419A8 0003D608 38 00 00 00 */ li r0, 0 /* 800419AC 0003D60C 38 7F 00 4C */ addi r3, r31, 0x4c /* 800419B0 0003D610 90 1F 04 BC */ stw r0, 0x4bc(r31) /* 800419B4 0003D614 48 00 E9 D5 */ bl func_80050388 /* 800419B8 0003D618 38 7F 00 70 */ addi r3, r31, 0x70 /* 800419BC 0003D61C 48 00 E9 CD */ bl func_80050388 /* 800419C0 0003D620 38 7F 00 94 */ addi r3, r31, 0x94 /* 800419C4 0003D624 48 00 E9 C5 */ bl func_80050388 /* 800419C8 0003D628 38 00 00 01 */ li r0, 1 /* 800419CC 0003D62C 98 1F 00 01 */ stb r0, 1(r31) /* 800419D0 0003D630 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800419D4 0003D634 80 01 00 14 */ lwz r0, 0x14(r1) /* 800419D8 0003D638 7C 08 03 A6 */ mtlr r0 /* 800419DC 0003D63C 38 21 00 10 */ addi r1, r1, 0x10 /* 800419E0 0003D640 4E 80 00 20 */ blr .global func_800419E4 func_800419E4: /* 800419E4 0003D644 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800419E8 0003D648 7C 08 02 A6 */ mflr r0 /* 800419EC 0003D64C 2C 04 00 00 */ cmpwi r4, 0 /* 800419F0 0003D650 90 01 00 34 */ stw r0, 0x34(r1) /* 800419F4 0003D654 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800419F8 0003D658 93 C1 00 28 */ stw r30, 0x28(r1) /* 800419FC 0003D65C 7C 7E 1B 78 */ mr r30, r3 /* 80041A00 0003D660 40 82 00 3C */ bne lbl_80041A3C /* 80041A04 0003D664 48 00 0B 8D */ bl func_80042590 /* 80041A08 0003D668 7C 7F 1B 78 */ mr r31, r3 /* 80041A0C 0003D66C 7F C3 F3 78 */ mr r3, r30 /* 80041A10 0003D670 4B FF F7 F5 */ bl func_80041204 /* 80041A14 0003D674 7F E4 FB 78 */ mr r4, r31 /* 80041A18 0003D678 38 A1 00 08 */ addi r5, r1, 8 /* 80041A1C 0003D67C 48 23 B2 CD */ bl func_8027CCE8 /* 80041A20 0003D680 C0 41 00 08 */ lfs f2, 8(r1) /* 80041A24 0003D684 C0 21 00 0C */ lfs f1, 0xc(r1) /* 80041A28 0003D688 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80041A2C 0003D68C D0 41 00 14 */ stfs f2, 0x14(r1) /* 80041A30 0003D690 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80041A34 0003D694 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80041A38 0003D698 48 00 00 1C */ b lbl_80041A54 lbl_80041A3C: /* 80041A3C 0003D69C C0 04 00 00 */ lfs f0, 0(r4) /* 80041A40 0003D6A0 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80041A44 0003D6A4 C0 04 00 04 */ lfs f0, 4(r4) /* 80041A48 0003D6A8 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80041A4C 0003D6AC C0 04 00 08 */ lfs f0, 8(r4) /* 80041A50 0003D6B0 D0 01 00 1C */ stfs f0, 0x1c(r1) lbl_80041A54: /* 80041A54 0003D6B4 38 7E 04 E8 */ addi r3, r30, 0x4e8 /* 80041A58 0003D6B8 38 81 00 14 */ addi r4, r1, 0x14 /* 80041A5C 0003D6BC 4B FF F0 B5 */ bl func_80040B10 /* 80041A60 0003D6C0 38 60 00 00 */ li r3, 0 /* 80041A64 0003D6C4 38 00 00 01 */ li r0, 1 /* 80041A68 0003D6C8 90 7E 04 BC */ stw r3, 0x4bc(r30) /* 80041A6C 0003D6CC 98 1E 00 01 */ stb r0, 1(r30) /* 80041A70 0003D6D0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80041A74 0003D6D4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80041A78 0003D6D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80041A7C 0003D6DC 7C 08 03 A6 */ mtlr r0 /* 80041A80 0003D6E0 38 21 00 30 */ addi r1, r1, 0x30 /* 80041A84 0003D6E4 4E 80 00 20 */ blr .global func_80041A88 func_80041A88: /* 80041A88 0003D6E8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80041A8C 0003D6EC 7C 08 02 A6 */ mflr r0 /* 80041A90 0003D6F0 90 01 00 34 */ stw r0, 0x34(r1) /* 80041A94 0003D6F4 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80041A98 0003D6F8 7C 7F 1B 78 */ mr r31, r3 /* 80041A9C 0003D6FC 38 61 00 08 */ addi r3, r1, 8 /* 80041AA0 0003D700 7F E4 FB 78 */ mr r4, r31 /* 80041AA4 0003D704 48 00 00 B5 */ bl func_80041B58 /* 80041AA8 0003D708 C0 41 00 08 */ lfs f2, 8(r1) /* 80041AAC 0003D70C 7F E3 FB 78 */ mr r3, r31 /* 80041AB0 0003D710 C0 21 00 0C */ lfs f1, 0xc(r1) /* 80041AB4 0003D714 38 81 00 14 */ addi r4, r1, 0x14 /* 80041AB8 0003D718 C0 01 00 10 */ lfs f0, 0x10(r1) /* 80041ABC 0003D71C D0 41 00 14 */ stfs f2, 0x14(r1) /* 80041AC0 0003D720 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80041AC4 0003D724 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80041AC8 0003D728 4B FF FF 1D */ bl func_800419E4 /* 80041ACC 0003D72C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80041AD0 0003D730 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80041AD4 0003D734 7C 08 03 A6 */ mtlr r0 /* 80041AD8 0003D738 38 21 00 30 */ addi r1, r1, 0x30 /* 80041ADC 0003D73C 4E 80 00 20 */ blr .global func_80041AE0 func_80041AE0: /* 80041AE0 0003D740 7C A6 2B 78 */ mr r6, r5 /* 80041AE4 0003D744 38 A3 06 E0 */ addi r5, r3, 0x6e0 /* 80041AE8 0003D748 38 E0 00 00 */ li r7, 0 /* 80041AEC 0003D74C 39 00 00 00 */ li r8, 0 /* 80041AF0 0003D750 38 63 01 B4 */ addi r3, r3, 0x1b4 /* 80041AF4 0003D754 48 00 F3 88 */ b func_80050E7C .global func_80041AF8 func_80041AF8: /* 80041AF8 0003D758 7C A6 2B 78 */ mr r6, r5 /* 80041AFC 0003D75C 38 A3 06 E4 */ addi r5, r3, 0x6e4 /* 80041B00 0003D760 38 E0 00 00 */ li r7, 0 /* 80041B04 0003D764 39 00 00 00 */ li r8, 0 /* 80041B08 0003D768 38 63 02 14 */ addi r3, r3, 0x214 /* 80041B0C 0003D76C 48 00 F3 70 */ b func_80050E7C .global func_80041B10 func_80041B10: /* 80041B10 0003D770 7C A6 2B 78 */ mr r6, r5 /* 80041B14 0003D774 38 A3 06 EC */ addi r5, r3, 0x6ec /* 80041B18 0003D778 38 E0 00 00 */ li r7, 0 /* 80041B1C 0003D77C 39 00 00 00 */ li r8, 0 /* 80041B20 0003D780 38 63 02 D4 */ addi r3, r3, 0x2d4 /* 80041B24 0003D784 48 00 F3 58 */ b func_80050E7C .global func_80041B28 func_80041B28: /* 80041B28 0003D788 7C A6 2B 78 */ mr r6, r5 /* 80041B2C 0003D78C 38 A3 06 F0 */ addi r5, r3, 0x6f0 /* 80041B30 0003D790 38 E0 00 00 */ li r7, 0 /* 80041B34 0003D794 39 00 00 00 */ li r8, 0 /* 80041B38 0003D798 38 63 03 34 */ addi r3, r3, 0x334 /* 80041B3C 0003D79C 48 00 F3 40 */ b func_80050E7C .global func_80041B40 func_80041B40: /* 80041B40 0003D7A0 7C A6 2B 78 */ mr r6, r5 /* 80041B44 0003D7A4 38 A3 06 E8 */ addi r5, r3, 0x6e8 /* 80041B48 0003D7A8 38 E0 00 00 */ li r7, 0 /* 80041B4C 0003D7AC 39 00 00 00 */ li r8, 0 /* 80041B50 0003D7B0 38 63 02 74 */ addi r3, r3, 0x274 /* 80041B54 0003D7B4 48 00 F3 28 */ b func_80050E7C .global func_80041B58 func_80041B58: /* 80041B58 0003D7B8 94 21 FF 30 */ stwu r1, -0xd0(r1) /* 80041B5C 0003D7BC 7C 08 02 A6 */ mflr r0 /* 80041B60 0003D7C0 90 01 00 D4 */ stw r0, 0xd4(r1) /* 80041B64 0003D7C4 DB E1 00 C0 */ stfd f31, 0xc0(r1) /* 80041B68 0003D7C8 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 /* 80041B6C 0003D7CC DB C1 00 B0 */ stfd f30, 0xb0(r1) /* 80041B70 0003D7D0 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 /* 80041B74 0003D7D4 DB A1 00 A0 */ stfd f29, 0xa0(r1) /* 80041B78 0003D7D8 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 /* 80041B7C 0003D7DC DB 81 00 90 */ stfd f28, 0x90(r1) /* 80041B80 0003D7E0 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 /* 80041B84 0003D7E4 DB 61 00 80 */ stfd f27, 0x80(r1) /* 80041B88 0003D7E8 F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 /* 80041B8C 0003D7EC FF A0 08 90 */ fmr f29, f1 /* 80041B90 0003D7F0 C0 82 82 B0 */ lfs f4, lbl_806408B0-_SDA2_BASE_(r2) /* 80041B94 0003D7F4 FF C0 10 90 */ fmr f30, f2 /* 80041B98 0003D7F8 93 E1 00 7C */ stw r31, 0x7c(r1) /* 80041B9C 0003D7FC FF E0 18 90 */ fmr f31, f3 /* 80041BA0 0003D800 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80041BA4 0003D804 93 C1 00 78 */ stw r30, 0x78(r1) /* 80041BA8 0003D808 93 A1 00 74 */ stw r29, 0x74(r1) /* 80041BAC 0003D80C 7C 9D 23 78 */ mr r29, r4 /* 80041BB0 0003D810 93 81 00 70 */ stw r28, 0x70(r1) /* 80041BB4 0003D814 7C 7C 1B 78 */ mr r28, r3 /* 80041BB8 0003D818 D0 81 00 60 */ stfs f4, 0x60(r1) /* 80041BBC 0003D81C D0 81 00 64 */ stfs f4, 0x64(r1) /* 80041BC0 0003D820 D0 01 00 68 */ stfs f0, 0x68(r1) /* 80041BC4 0003D824 80 04 06 D0 */ lwz r0, 0x6d0(r4) /* 80041BC8 0003D828 2C 00 00 00 */ cmpwi r0, 0 /* 80041BCC 0003D82C 41 82 00 0C */ beq lbl_80041BD8 /* 80041BD0 0003D830 3B C4 06 50 */ addi r30, r4, 0x650 /* 80041BD4 0003D834 48 00 00 08 */ b lbl_80041BDC lbl_80041BD8: /* 80041BD8 0003D838 3B C4 05 60 */ addi r30, r4, 0x560 lbl_80041BDC: /* 80041BDC 0003D83C 7F C3 F3 78 */ mr r3, r30 /* 80041BE0 0003D840 38 80 00 00 */ li r4, 0 /* 80041BE4 0003D844 4B FF EF 99 */ bl func_80040B7C /* 80041BE8 0003D848 2C 03 00 00 */ cmpwi r3, 0 /* 80041BEC 0003D84C 7C 7F 1B 78 */ mr r31, r3 /* 80041BF0 0003D850 41 82 00 18 */ beq lbl_80041C08 /* 80041BF4 0003D854 7F E4 FB 78 */ mr r4, r31 /* 80041BF8 0003D858 38 61 00 44 */ addi r3, r1, 0x44 /* 80041BFC 0003D85C 4B FF 6E 99 */ bl func_80038A94 /* 80041C00 0003D860 C3 61 00 48 */ lfs f27, 0x48(r1) /* 80041C04 0003D864 48 00 00 08 */ b lbl_80041C0C lbl_80041C08: /* 80041C08 0003D868 C3 62 82 B0 */ lfs f27, lbl_806408B0-_SDA2_BASE_(r2) lbl_80041C0C: /* 80041C0C 0003D86C FC 20 D8 90 */ fmr f1, f27 /* 80041C10 0003D870 48 18 8A A5 */ bl __fpclassifyf /* 80041C14 0003D874 2C 03 00 02 */ cmpwi r3, 2 /* 80041C18 0003D878 40 82 00 08 */ bne lbl_80041C20 /* 80041C1C 0003D87C C3 62 82 B0 */ lfs f27, lbl_806408B0-_SDA2_BASE_(r2) lbl_80041C20: /* 80041C20 0003D880 FC 20 D8 90 */ fmr f1, f27 /* 80041C24 0003D884 48 18 8A 91 */ bl __fpclassifyf /* 80041C28 0003D888 2C 03 00 01 */ cmpwi r3, 1 /* 80041C2C 0003D88C 40 82 00 08 */ bne lbl_80041C34 /* 80041C30 0003D890 C3 62 82 B0 */ lfs f27, lbl_806408B0-_SDA2_BASE_(r2) lbl_80041C34: /* 80041C34 0003D894 C0 22 82 EC */ lfs f1, lbl_806408EC-_SDA2_BASE_(r2) /* 80041C38 0003D898 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041C3C 0003D89C 48 00 00 08 */ b lbl_80041C44 lbl_80041C40: /* 80041C40 0003D8A0 EF 7B 08 2A */ fadds f27, f27, f1 lbl_80041C44: /* 80041C44 0003D8A4 FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 80041C48 0003D8A8 41 80 FF F8 */ blt lbl_80041C40 /* 80041C4C 0003D8AC C0 02 82 EC */ lfs f0, lbl_806408EC-_SDA2_BASE_(r2) /* 80041C50 0003D8B0 48 00 00 08 */ b lbl_80041C58 lbl_80041C54: /* 80041C54 0003D8B4 EF 7B 00 28 */ fsubs f27, f27, f0 lbl_80041C58: /* 80041C58 0003D8B8 FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 80041C5C 0003D8BC 41 81 FF F8 */ bgt lbl_80041C54 /* 80041C60 0003D8C0 C0 02 82 F0 */ lfs f0, lbl_806408F0-_SDA2_BASE_(r2) /* 80041C64 0003D8C4 FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 80041C68 0003D8C8 4C 40 13 82 */ cror 2, 0, 2 /* 80041C6C 0003D8CC 41 82 00 14 */ beq lbl_80041C80 /* 80041C70 0003D8D0 C0 02 82 F4 */ lfs f0, lbl_806408F4-_SDA2_BASE_(r2) /* 80041C74 0003D8D4 FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 80041C78 0003D8D8 4C 41 13 82 */ cror 2, 1, 2 /* 80041C7C 0003D8DC 40 82 00 0C */ bne lbl_80041C88 lbl_80041C80: /* 80041C80 0003D8E0 EF BB E8 28 */ fsubs f29, f27, f29 /* 80041C84 0003D8E4 48 00 00 90 */ b lbl_80041D14 lbl_80041C88: /* 80041C88 0003D8E8 C0 02 82 F8 */ lfs f0, lbl_806408F8-_SDA2_BASE_(r2) /* 80041C8C 0003D8EC FC 00 D8 40 */ fcmpo cr0, f0, f27 /* 80041C90 0003D8F0 4C 40 13 82 */ cror 2, 0, 2 /* 80041C94 0003D8F4 40 82 00 1C */ bne lbl_80041CB0 /* 80041C98 0003D8F8 C0 02 82 FC */ lfs f0, lbl_806408FC-_SDA2_BASE_(r2) /* 80041C9C 0003D8FC FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 80041CA0 0003D900 4C 40 13 82 */ cror 2, 0, 2 /* 80041CA4 0003D904 40 82 00 0C */ bne lbl_80041CB0 /* 80041CA8 0003D908 EF BB E8 2A */ fadds f29, f27, f29 /* 80041CAC 0003D90C 48 00 00 68 */ b lbl_80041D14 lbl_80041CB0: /* 80041CB0 0003D910 C0 02 82 F0 */ lfs f0, lbl_806408F0-_SDA2_BASE_(r2) /* 80041CB4 0003D914 FC 00 D8 40 */ fcmpo cr0, f0, f27 /* 80041CB8 0003D918 40 80 00 38 */ bge lbl_80041CF0 /* 80041CBC 0003D91C C0 02 82 F8 */ lfs f0, lbl_806408F8-_SDA2_BASE_(r2) /* 80041CC0 0003D920 FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 80041CC4 0003D924 40 80 00 2C */ bge lbl_80041CF0 /* 80041CC8 0003D928 7F A3 EB 78 */ mr r3, r29 /* 80041CCC 0003D92C 48 00 08 C5 */ bl func_80042590 /* 80041CD0 0003D930 C0 23 00 08 */ lfs f1, 8(r3) /* 80041CD4 0003D934 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041CD8 0003D938 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041CDC 0003D93C 40 80 00 0C */ bge lbl_80041CE8 /* 80041CE0 0003D940 EF BB E8 28 */ fsubs f29, f27, f29 /* 80041CE4 0003D944 48 00 00 30 */ b lbl_80041D14 lbl_80041CE8: /* 80041CE8 0003D948 EF BB E8 2A */ fadds f29, f27, f29 /* 80041CEC 0003D94C 48 00 00 28 */ b lbl_80041D14 lbl_80041CF0: /* 80041CF0 0003D950 7F A3 EB 78 */ mr r3, r29 /* 80041CF4 0003D954 48 00 08 9D */ bl func_80042590 /* 80041CF8 0003D958 C0 23 00 08 */ lfs f1, 8(r3) /* 80041CFC 0003D95C C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041D00 0003D960 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041D04 0003D964 40 80 00 0C */ bge lbl_80041D10 /* 80041D08 0003D968 EF BB E8 2A */ fadds f29, f27, f29 /* 80041D0C 0003D96C 48 00 00 08 */ b lbl_80041D14 lbl_80041D10: /* 80041D10 0003D970 EF BB E8 28 */ fsubs f29, f27, f29 lbl_80041D14: /* 80041D14 0003D974 2C 1F 00 00 */ cmpwi r31, 0 /* 80041D18 0003D978 41 82 01 30 */ beq lbl_80041E48 /* 80041D1C 0003D97C 7F C3 F3 78 */ mr r3, r30 /* 80041D20 0003D980 38 80 00 01 */ li r4, 1 /* 80041D24 0003D984 4B FF EE 59 */ bl func_80040B7C /* 80041D28 0003D988 2C 03 00 00 */ cmpwi r3, 0 /* 80041D2C 0003D98C 7C 7E 1B 78 */ mr r30, r3 /* 80041D30 0003D990 41 82 00 0C */ beq lbl_80041D3C /* 80041D34 0003D994 7C 03 F8 40 */ cmplw r3, r31 /* 80041D38 0003D998 40 82 00 6C */ bne lbl_80041DA4 lbl_80041D3C: /* 80041D3C 0003D99C 7F E3 FB 78 */ mr r3, r31 /* 80041D40 0003D9A0 38 80 00 01 */ li r4, 1 /* 80041D44 0003D9A4 4B FF 88 A9 */ bl func_8003A5EC /* 80041D48 0003D9A8 C0 02 83 00 */ lfs f0, lbl_80640900-_SDA2_BASE_(r2) /* 80041D4C 0003D9AC FF 60 08 90 */ fmr f27, f1 /* 80041D50 0003D9B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041D54 0003D9B4 40 80 00 08 */ bge lbl_80041D5C /* 80041D58 0003D9B8 FF 60 00 90 */ fmr f27, f0 lbl_80041D5C: /* 80041D5C 0003D9BC C8 22 83 08 */ lfd f1, lbl_80640908-_SDA2_BASE_(r2) /* 80041D60 0003D9C0 48 19 27 FD */ bl tan /* 80041D64 0003D9C4 FC 00 08 18 */ frsp f0, f1 /* 80041D68 0003D9C8 7F E3 FB 78 */ mr r3, r31 /* 80041D6C 0003D9CC EF 7B 00 24 */ fdivs f27, f27, f0 /* 80041D70 0003D9D0 4B FF 79 65 */ bl func_800396D4 /* 80041D74 0003D9D4 2C 03 00 01 */ cmpwi r3, 1 /* 80041D78 0003D9D8 41 81 00 14 */ bgt lbl_80041D8C /* 80041D7C 0003D9DC C0 02 83 10 */ lfs f0, lbl_80640910-_SDA2_BASE_(r2) /* 80041D80 0003D9E0 EC 00 06 F2 */ fmuls f0, f0, f27 /* 80041D84 0003D9E4 EF FF 00 32 */ fmuls f31, f31, f0 /* 80041D88 0003D9E8 48 00 00 C8 */ b lbl_80041E50 lbl_80041D8C: /* 80041D8C 0003D9EC C0 22 83 18 */ lfs f1, lbl_80640918-_SDA2_BASE_(r2) /* 80041D90 0003D9F0 C0 02 83 14 */ lfs f0, lbl_80640914-_SDA2_BASE_(r2) /* 80041D94 0003D9F4 EC 21 06 F2 */ fmuls f1, f1, f27 /* 80041D98 0003D9F8 EC 00 08 2A */ fadds f0, f0, f1 /* 80041D9C 0003D9FC EF FF 00 32 */ fmuls f31, f31, f0 /* 80041DA0 0003DA00 48 00 00 B0 */ b lbl_80041E50 lbl_80041DA4: /* 80041DA4 0003DA04 7F C4 F3 78 */ mr r4, r30 /* 80041DA8 0003DA08 38 61 00 2C */ addi r3, r1, 0x2c /* 80041DAC 0003DA0C 4B FF 6A 35 */ bl func_800387E0 /* 80041DB0 0003DA10 C3 81 00 2C */ lfs f28, 0x2c(r1) /* 80041DB4 0003DA14 7F E4 FB 78 */ mr r4, r31 /* 80041DB8 0003DA18 38 61 00 38 */ addi r3, r1, 0x38 /* 80041DBC 0003DA1C 4B FF 6A 25 */ bl func_800387E0 /* 80041DC0 0003DA20 C0 01 00 38 */ lfs f0, 0x38(r1) /* 80041DC4 0003DA24 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 80041DC8 0003DA28 40 80 00 18 */ bge lbl_80041DE0 /* 80041DCC 0003DA2C 7F E3 FB 78 */ mr r3, r31 /* 80041DD0 0003DA30 38 80 00 01 */ li r4, 1 /* 80041DD4 0003DA34 4B FF 88 19 */ bl func_8003A5EC /* 80041DD8 0003DA38 FF 80 08 90 */ fmr f28, f1 /* 80041DDC 0003DA3C 48 00 00 14 */ b lbl_80041DF0 lbl_80041DE0: /* 80041DE0 0003DA40 7F C3 F3 78 */ mr r3, r30 /* 80041DE4 0003DA44 38 80 00 01 */ li r4, 1 /* 80041DE8 0003DA48 4B FF 88 05 */ bl func_8003A5EC /* 80041DEC 0003DA4C FF 80 08 90 */ fmr f28, f1 lbl_80041DF0: /* 80041DF0 0003DA50 C8 22 83 20 */ lfd f1, lbl_80640920-_SDA2_BASE_(r2) /* 80041DF4 0003DA54 48 19 27 69 */ bl tan /* 80041DF8 0003DA58 FC 00 08 18 */ frsp f0, f1 /* 80041DFC 0003DA5C 7F C4 F3 78 */ mr r4, r30 /* 80041E00 0003DA60 38 61 00 14 */ addi r3, r1, 0x14 /* 80041E04 0003DA64 EF 7C 00 24 */ fdivs f27, f28, f0 /* 80041E08 0003DA68 4B FF 69 D9 */ bl func_800387E0 /* 80041E0C 0003DA6C C3 81 00 14 */ lfs f28, 0x14(r1) /* 80041E10 0003DA70 7F E4 FB 78 */ mr r4, r31 /* 80041E14 0003DA74 38 61 00 20 */ addi r3, r1, 0x20 /* 80041E18 0003DA78 4B FF 69 C9 */ bl func_800387E0 /* 80041E1C 0003DA7C C0 01 00 20 */ lfs f0, 0x20(r1) /* 80041E20 0003DA80 C0 22 83 18 */ lfs f1, lbl_80640918-_SDA2_BASE_(r2) /* 80041E24 0003DA84 EC 40 E0 28 */ fsubs f2, f0, f28 /* 80041E28 0003DA88 C0 02 82 B8 */ lfs f0, lbl_806408B8-_SDA2_BASE_(r2) /* 80041E2C 0003DA8C EC 21 06 F2 */ fmuls f1, f1, f27 /* 80041E30 0003DA90 FC 40 12 10 */ fabs f2, f2 /* 80041E34 0003DA94 FC 40 10 18 */ frsp f2, f2 /* 80041E38 0003DA98 EC 00 00 B2 */ fmuls f0, f0, f2 /* 80041E3C 0003DA9C EC 01 00 2A */ fadds f0, f1, f0 /* 80041E40 0003DAA0 EF FF 00 32 */ fmuls f31, f31, f0 /* 80041E44 0003DAA4 48 00 00 0C */ b lbl_80041E50 lbl_80041E48: /* 80041E48 0003DAA8 C0 02 83 28 */ lfs f0, lbl_80640928-_SDA2_BASE_(r2) /* 80041E4C 0003DAAC EF E0 07 F2 */ fmuls f31, f0, f31 lbl_80041E50: /* 80041E50 0003DAB0 FC 20 F0 50 */ fneg f1, f30 /* 80041E54 0003DAB4 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041E58 0003DAB8 D3 A1 00 0C */ stfs f29, 0xc(r1) /* 80041E5C 0003DABC 38 61 00 50 */ addi r3, r1, 0x50 /* 80041E60 0003DAC0 38 81 00 08 */ addi r4, r1, 8 /* 80041E64 0003DAC4 D0 21 00 08 */ stfs f1, 8(r1) /* 80041E68 0003DAC8 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80041E6C 0003DACC 48 1E 18 55 */ bl func_802236C0 /* 80041E70 0003DAD0 38 61 00 60 */ addi r3, r1, 0x60 /* 80041E74 0003DAD4 38 81 00 50 */ addi r4, r1, 0x50 /* 80041E78 0003DAD8 48 1E 1B 95 */ bl func_80223A0C /* 80041E7C 0003DADC FC 20 F8 90 */ fmr f1, f31 /* 80041E80 0003DAE0 7F 84 E3 78 */ mr r4, r28 /* 80041E84 0003DAE4 38 61 00 60 */ addi r3, r1, 0x60 /* 80041E88 0003DAE8 48 23 AE 85 */ bl func_8027CD0C /* 80041E8C 0003DAEC E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 /* 80041E90 0003DAF0 CB E1 00 C0 */ lfd f31, 0xc0(r1) /* 80041E94 0003DAF4 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 /* 80041E98 0003DAF8 CB C1 00 B0 */ lfd f30, 0xb0(r1) /* 80041E9C 0003DAFC E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 /* 80041EA0 0003DB00 CB A1 00 A0 */ lfd f29, 0xa0(r1) /* 80041EA4 0003DB04 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 /* 80041EA8 0003DB08 CB 81 00 90 */ lfd f28, 0x90(r1) /* 80041EAC 0003DB0C E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 /* 80041EB0 0003DB10 CB 61 00 80 */ lfd f27, 0x80(r1) /* 80041EB4 0003DB14 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 80041EB8 0003DB18 83 C1 00 78 */ lwz r30, 0x78(r1) /* 80041EBC 0003DB1C 83 A1 00 74 */ lwz r29, 0x74(r1) /* 80041EC0 0003DB20 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 80041EC4 0003DB24 83 81 00 70 */ lwz r28, 0x70(r1) /* 80041EC8 0003DB28 7C 08 03 A6 */ mtlr r0 /* 80041ECC 0003DB2C 38 21 00 D0 */ addi r1, r1, 0xd0 /* 80041ED0 0003DB30 4E 80 00 20 */ blr .global func_80041ED4 func_80041ED4: /* 80041ED4 0003DB34 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 80041ED8 0003DB38 7C 08 02 A6 */ mflr r0 /* 80041EDC 0003DB3C 90 01 00 B4 */ stw r0, 0xb4(r1) /* 80041EE0 0003DB40 DB E1 00 A0 */ stfd f31, 0xa0(r1) /* 80041EE4 0003DB44 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 /* 80041EE8 0003DB48 DB C1 00 90 */ stfd f30, 0x90(r1) /* 80041EEC 0003DB4C F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 /* 80041EF0 0003DB50 DB A1 00 80 */ stfd f29, 0x80(r1) /* 80041EF4 0003DB54 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 /* 80041EF8 0003DB58 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80041EFC 0003DB5C 93 E1 00 7C */ stw r31, 0x7c(r1) /* 80041F00 0003DB60 7C 9F 23 78 */ mr r31, r4 /* 80041F04 0003DB64 93 C1 00 78 */ stw r30, 0x78(r1) /* 80041F08 0003DB68 7C 7E 1B 78 */ mr r30, r3 /* 80041F0C 0003DB6C C0 23 00 00 */ lfs f1, 0(r3) /* 80041F10 0003DB70 D0 21 00 68 */ stfs f1, 0x68(r1) /* 80041F14 0003DB74 C0 23 00 04 */ lfs f1, 4(r3) /* 80041F18 0003DB78 D0 21 00 6C */ stfs f1, 0x6c(r1) /* 80041F1C 0003DB7C C0 23 00 08 */ lfs f1, 8(r3) /* 80041F20 0003DB80 38 61 00 68 */ addi r3, r1, 0x68 /* 80041F24 0003DB84 D0 21 00 70 */ stfs f1, 0x70(r1) /* 80041F28 0003DB88 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 80041F2C 0003DB8C 48 23 AE 59 */ bl func_8027CD84 /* 80041F30 0003DB90 C0 02 83 2C */ lfs f0, lbl_8064092C-_SDA2_BASE_(r2) /* 80041F34 0003DB94 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80041F38 0003DB98 40 81 01 40 */ ble lbl_80042078 /* 80041F3C 0003DB9C 7F E3 FB 78 */ mr r3, r31 /* 80041F40 0003DBA0 38 81 00 68 */ addi r4, r1, 0x68 /* 80041F44 0003DBA4 38 A1 00 50 */ addi r5, r1, 0x50 /* 80041F48 0003DBA8 48 23 AD A1 */ bl func_8027CCE8 /* 80041F4C 0003DBAC C0 41 00 50 */ lfs f2, 0x50(r1) /* 80041F50 0003DBB0 38 61 00 5C */ addi r3, r1, 0x5c /* 80041F54 0003DBB4 C0 21 00 54 */ lfs f1, 0x54(r1) /* 80041F58 0003DBB8 7C 64 1B 78 */ mr r4, r3 /* 80041F5C 0003DBBC C0 01 00 58 */ lfs f0, 0x58(r1) /* 80041F60 0003DBC0 D0 41 00 5C */ stfs f2, 0x5c(r1) /* 80041F64 0003DBC4 D0 21 00 60 */ stfs f1, 0x60(r1) /* 80041F68 0003DBC8 D0 01 00 64 */ stfs f0, 0x64(r1) /* 80041F6C 0003DBCC 48 23 AD BD */ bl func_8027CD28 /* 80041F70 0003DBD0 38 61 00 5C */ addi r3, r1, 0x5c /* 80041F74 0003DBD4 38 81 00 68 */ addi r4, r1, 0x68 /* 80041F78 0003DBD8 48 23 AE 51 */ bl PSQUATDotProduct /* 80041F7C 0003DBDC C8 42 83 30 */ lfd f2, lbl_80640930-_SDA2_BASE_(r2) /* 80041F80 0003DBE0 48 19 26 65 */ bl pow /* 80041F84 0003DBE4 FF C0 08 18 */ frsp f30, f1 /* 80041F88 0003DBE8 38 61 00 68 */ addi r3, r1, 0x68 /* 80041F8C 0003DBEC 7C 64 1B 78 */ mr r4, r3 /* 80041F90 0003DBF0 48 23 AE 39 */ bl PSQUATDotProduct /* 80041F94 0003DBF4 FF E0 08 90 */ fmr f31, f1 /* 80041F98 0003DBF8 C8 22 83 38 */ lfd f1, lbl_80640938-_SDA2_BASE_(r2) /* 80041F9C 0003DBFC C8 42 83 30 */ lfd f2, lbl_80640930-_SDA2_BASE_(r2) /* 80041FA0 0003DC00 48 19 26 45 */ bl pow /* 80041FA4 0003DC04 FC 20 08 18 */ frsp f1, f1 /* 80041FA8 0003DC08 C3 A2 82 B0 */ lfs f29, lbl_806408B0-_SDA2_BASE_(r2) /* 80041FAC 0003DC0C EC 1E F8 28 */ fsubs f0, f30, f31 /* 80041FB0 0003DC10 EC 21 00 2A */ fadds f1, f1, f0 /* 80041FB4 0003DC14 FC 01 E8 40 */ fcmpo cr0, f1, f29 /* 80041FB8 0003DC18 4C 40 13 82 */ cror 2, 0, 2 /* 80041FBC 0003DC1C 40 82 00 08 */ bne lbl_80041FC4 /* 80041FC0 0003DC20 48 00 00 0C */ b lbl_80041FCC lbl_80041FC4: /* 80041FC4 0003DC24 48 19 28 71 */ bl sqrt /* 80041FC8 0003DC28 FF A0 08 18 */ frsp f29, f1 lbl_80041FCC: /* 80041FCC 0003DC2C 38 61 00 5C */ addi r3, r1, 0x5c /* 80041FD0 0003DC30 38 81 00 68 */ addi r4, r1, 0x68 /* 80041FD4 0003DC34 48 23 AD F5 */ bl PSQUATDotProduct /* 80041FD8 0003DC38 C0 1E 00 00 */ lfs f0, 0(r30) /* 80041FDC 0003DC3C FC 20 08 50 */ fneg f1, f1 /* 80041FE0 0003DC40 7F E3 FB 78 */ mr r3, r31 /* 80041FE4 0003DC44 38 81 00 68 */ addi r4, r1, 0x68 /* 80041FE8 0003DC48 D0 01 00 68 */ stfs f0, 0x68(r1) /* 80041FEC 0003DC4C 38 A1 00 44 */ addi r5, r1, 0x44 /* 80041FF0 0003DC50 EF A1 E8 28 */ fsubs f29, f1, f29 /* 80041FF4 0003DC54 C0 1E 00 04 */ lfs f0, 4(r30) /* 80041FF8 0003DC58 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 80041FFC 0003DC5C C0 1E 00 08 */ lfs f0, 8(r30) /* 80042000 0003DC60 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80042004 0003DC64 48 23 AC E5 */ bl func_8027CCE8 /* 80042008 0003DC68 C0 41 00 44 */ lfs f2, 0x44(r1) /* 8004200C 0003DC6C 38 61 00 5C */ addi r3, r1, 0x5c /* 80042010 0003DC70 C0 21 00 48 */ lfs f1, 0x48(r1) /* 80042014 0003DC74 7C 64 1B 78 */ mr r4, r3 /* 80042018 0003DC78 C0 01 00 4C */ lfs f0, 0x4c(r1) /* 8004201C 0003DC7C D0 41 00 5C */ stfs f2, 0x5c(r1) /* 80042020 0003DC80 D0 21 00 60 */ stfs f1, 0x60(r1) /* 80042024 0003DC84 D0 01 00 64 */ stfs f0, 0x64(r1) /* 80042028 0003DC88 48 23 AD 01 */ bl func_8027CD28 /* 8004202C 0003DC8C FC 20 E8 90 */ fmr f1, f29 /* 80042030 0003DC90 38 61 00 5C */ addi r3, r1, 0x5c /* 80042034 0003DC94 38 81 00 2C */ addi r4, r1, 0x2c /* 80042038 0003DC98 48 23 AC D5 */ bl func_8027CD0C /* 8004203C 0003DC9C 38 61 00 68 */ addi r3, r1, 0x68 /* 80042040 0003DCA0 38 81 00 2C */ addi r4, r1, 0x2c /* 80042044 0003DCA4 38 A1 00 38 */ addi r5, r1, 0x38 /* 80042048 0003DCA8 48 23 AC 7D */ bl func_8027CCC4 /* 8004204C 0003DCAC C0 41 00 38 */ lfs f2, 0x38(r1) /* 80042050 0003DCB0 C0 21 00 3C */ lfs f1, 0x3c(r1) /* 80042054 0003DCB4 C0 01 00 40 */ lfs f0, 0x40(r1) /* 80042058 0003DCB8 D0 41 00 68 */ stfs f2, 0x68(r1) /* 8004205C 0003DCBC D0 21 00 6C */ stfs f1, 0x6c(r1) /* 80042060 0003DCC0 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80042064 0003DCC4 D0 5E 00 00 */ stfs f2, 0(r30) /* 80042068 0003DCC8 C0 01 00 6C */ lfs f0, 0x6c(r1) /* 8004206C 0003DCCC D0 1E 00 04 */ stfs f0, 4(r30) /* 80042070 0003DCD0 C0 01 00 70 */ lfs f0, 0x70(r1) /* 80042074 0003DCD4 D0 1E 00 08 */ stfs f0, 8(r30) lbl_80042078: /* 80042078 0003DCD8 C0 3E 00 00 */ lfs f1, 0(r30) /* 8004207C 0003DCDC C0 02 83 40 */ lfs f0, lbl_80640940-_SDA2_BASE_(r2) /* 80042080 0003DCE0 D0 21 00 68 */ stfs f1, 0x68(r1) /* 80042084 0003DCE4 C0 5E 00 04 */ lfs f2, 4(r30) /* 80042088 0003DCE8 D0 41 00 6C */ stfs f2, 0x6c(r1) /* 8004208C 0003DCEC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80042090 0003DCF0 C0 3E 00 08 */ lfs f1, 8(r30) /* 80042094 0003DCF4 D0 21 00 70 */ stfs f1, 0x70(r1) /* 80042098 0003DCF8 40 81 00 94 */ ble lbl_8004212C /* 8004209C 0003DCFC EF A0 10 24 */ fdivs f29, f0, f2 /* 800420A0 0003DD00 7F E4 FB 78 */ mr r4, r31 /* 800420A4 0003DD04 38 61 00 68 */ addi r3, r1, 0x68 /* 800420A8 0003DD08 38 A1 00 20 */ addi r5, r1, 0x20 /* 800420AC 0003DD0C 48 23 AC 3D */ bl func_8027CCE8 /* 800420B0 0003DD10 C0 41 00 20 */ lfs f2, 0x20(r1) /* 800420B4 0003DD14 38 61 00 5C */ addi r3, r1, 0x5c /* 800420B8 0003DD18 C0 21 00 24 */ lfs f1, 0x24(r1) /* 800420BC 0003DD1C C0 01 00 28 */ lfs f0, 0x28(r1) /* 800420C0 0003DD20 D0 41 00 5C */ stfs f2, 0x5c(r1) /* 800420C4 0003DD24 D0 21 00 60 */ stfs f1, 0x60(r1) /* 800420C8 0003DD28 D0 01 00 64 */ stfs f0, 0x64(r1) /* 800420CC 0003DD2C 48 23 AC B9 */ bl func_8027CD84 /* 800420D0 0003DD30 FF E0 08 90 */ fmr f31, f1 /* 800420D4 0003DD34 38 61 00 5C */ addi r3, r1, 0x5c /* 800420D8 0003DD38 7C 64 1B 78 */ mr r4, r3 /* 800420DC 0003DD3C 48 23 AC 4D */ bl func_8027CD28 /* 800420E0 0003DD40 EC 3F 07 72 */ fmuls f1, f31, f29 /* 800420E4 0003DD44 38 61 00 5C */ addi r3, r1, 0x5c /* 800420E8 0003DD48 38 81 00 08 */ addi r4, r1, 8 /* 800420EC 0003DD4C 48 23 AC 21 */ bl func_8027CD0C /* 800420F0 0003DD50 7F E3 FB 78 */ mr r3, r31 /* 800420F4 0003DD54 38 81 00 08 */ addi r4, r1, 8 /* 800420F8 0003DD58 38 A1 00 14 */ addi r5, r1, 0x14 /* 800420FC 0003DD5C 48 23 AB C9 */ bl func_8027CCC4 /* 80042100 0003DD60 C0 41 00 14 */ lfs f2, 0x14(r1) /* 80042104 0003DD64 C0 21 00 18 */ lfs f1, 0x18(r1) /* 80042108 0003DD68 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8004210C 0003DD6C D0 41 00 68 */ stfs f2, 0x68(r1) /* 80042110 0003DD70 D0 21 00 6C */ stfs f1, 0x6c(r1) /* 80042114 0003DD74 D0 01 00 70 */ stfs f0, 0x70(r1) /* 80042118 0003DD78 D0 5E 00 00 */ stfs f2, 0(r30) /* 8004211C 0003DD7C C0 01 00 6C */ lfs f0, 0x6c(r1) /* 80042120 0003DD80 D0 1E 00 04 */ stfs f0, 4(r30) /* 80042124 0003DD84 C0 01 00 70 */ lfs f0, 0x70(r1) /* 80042128 0003DD88 D0 1E 00 08 */ stfs f0, 8(r30) lbl_8004212C: /* 8004212C 0003DD8C E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 /* 80042130 0003DD90 CB E1 00 A0 */ lfd f31, 0xa0(r1) /* 80042134 0003DD94 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 /* 80042138 0003DD98 CB C1 00 90 */ lfd f30, 0x90(r1) /* 8004213C 0003DD9C E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 /* 80042140 0003DDA0 CB A1 00 80 */ lfd f29, 0x80(r1) /* 80042144 0003DDA4 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 80042148 0003DDA8 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 8004214C 0003DDAC 83 C1 00 78 */ lwz r30, 0x78(r1) /* 80042150 0003DDB0 7C 08 03 A6 */ mtlr r0 /* 80042154 0003DDB4 38 21 00 B0 */ addi r1, r1, 0xb0 /* 80042158 0003DDB8 4E 80 00 20 */ blr .global func_8004215C func_8004215C: /* 8004215C 0003DDBC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80042160 0003DDC0 7C 08 02 A6 */ mflr r0 /* 80042164 0003DDC4 90 01 00 44 */ stw r0, 0x44(r1) /* 80042168 0003DDC8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8004216C 0003DDCC 7C 7F 1B 78 */ mr r31, r3 /* 80042170 0003DDD0 38 61 00 08 */ addi r3, r1, 8 /* 80042174 0003DDD4 7F E4 FB 78 */ mr r4, r31 /* 80042178 0003DDD8 4B FF F9 E1 */ bl func_80041B58 /* 8004217C 0003DDDC C0 41 00 08 */ lfs f2, 8(r1) /* 80042180 0003DDE0 7F E3 FB 78 */ mr r3, r31 /* 80042184 0003DDE4 C0 21 00 0C */ lfs f1, 0xc(r1) /* 80042188 0003DDE8 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004218C 0003DDEC D0 41 00 20 */ stfs f2, 0x20(r1) /* 80042190 0003DDF0 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80042194 0003DDF4 D0 01 00 28 */ stfs f0, 0x28(r1) /* 80042198 0003DDF8 48 00 03 F9 */ bl func_80042590 /* 8004219C 0003DDFC C0 03 00 00 */ lfs f0, 0(r3) /* 800421A0 0003DE00 38 81 00 14 */ addi r4, r1, 0x14 /* 800421A4 0003DE04 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800421A8 0003DE08 C0 03 00 04 */ lfs f0, 4(r3) /* 800421AC 0003DE0C D0 01 00 18 */ stfs f0, 0x18(r1) /* 800421B0 0003DE10 C0 03 00 08 */ lfs f0, 8(r3) /* 800421B4 0003DE14 38 61 00 20 */ addi r3, r1, 0x20 /* 800421B8 0003DE18 7C 65 1B 78 */ mr r5, r3 /* 800421BC 0003DE1C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800421C0 0003DE20 48 23 AB 05 */ bl func_8027CCC4 /* 800421C4 0003DE24 38 61 00 20 */ addi r3, r1, 0x20 /* 800421C8 0003DE28 38 81 00 14 */ addi r4, r1, 0x14 /* 800421CC 0003DE2C 4B FF FD 09 */ bl func_80041ED4 /* 800421D0 0003DE30 7F E3 FB 78 */ mr r3, r31 /* 800421D4 0003DE34 38 81 00 20 */ addi r4, r1, 0x20 /* 800421D8 0003DE38 4B FF EE D5 */ bl func_800410AC /* 800421DC 0003DE3C 80 01 00 44 */ lwz r0, 0x44(r1) /* 800421E0 0003DE40 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800421E4 0003DE44 7C 08 03 A6 */ mtlr r0 /* 800421E8 0003DE48 38 21 00 40 */ addi r1, r1, 0x40 /* 800421EC 0003DE4C 4E 80 00 20 */ blr .global func_800421F0 func_800421F0: /* 800421F0 0003DE50 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800421F4 0003DE54 7C 08 02 A6 */ mflr r0 /* 800421F8 0003DE58 90 01 00 74 */ stw r0, 0x74(r1) /* 800421FC 0003DE5C DB E1 00 60 */ stfd f31, 0x60(r1) /* 80042200 0003DE60 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 80042204 0003DE64 DB C1 00 50 */ stfd f30, 0x50(r1) /* 80042208 0003DE68 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8004220C 0003DE6C DB A1 00 40 */ stfd f29, 0x40(r1) /* 80042210 0003DE70 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 80042214 0003DE74 FF A0 08 90 */ fmr f29, f1 /* 80042218 0003DE78 FF C0 10 90 */ fmr f30, f2 /* 8004221C 0003DE7C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80042220 0003DE80 FF E0 18 90 */ fmr f31, f3 /* 80042224 0003DE84 7C 7F 1B 78 */ mr r31, r3 /* 80042228 0003DE88 80 03 06 D0 */ lwz r0, 0x6d0(r3) /* 8004222C 0003DE8C 2C 00 00 00 */ cmpwi r0, 0 /* 80042230 0003DE90 41 82 00 0C */ beq lbl_8004223C /* 80042234 0003DE94 38 63 06 50 */ addi r3, r3, 0x650 /* 80042238 0003DE98 48 00 00 08 */ b lbl_80042240 lbl_8004223C: /* 8004223C 0003DE9C 38 63 05 60 */ addi r3, r3, 0x560 lbl_80042240: /* 80042240 0003DEA0 38 80 00 00 */ li r4, 0 /* 80042244 0003DEA4 4B FF E9 39 */ bl func_80040B7C /* 80042248 0003DEA8 2C 03 00 00 */ cmpwi r3, 0 /* 8004224C 0003DEAC 41 82 00 28 */ beq lbl_80042274 /* 80042250 0003DEB0 80 03 00 00 */ lwz r0, 0(r3) /* 80042254 0003DEB4 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 /* 80042258 0003DEB8 41 82 00 1C */ beq lbl_80042274 /* 8004225C 0003DEBC FC 20 E8 90 */ fmr f1, f29 /* 80042260 0003DEC0 C0 42 83 44 */ lfs f2, lbl_80640944-_SDA2_BASE_(r2) /* 80042264 0003DEC4 FC 60 F8 90 */ fmr f3, f31 /* 80042268 0003DEC8 7F E3 FB 78 */ mr r3, r31 /* 8004226C 0003DECC 4B FF FE F1 */ bl func_8004215C /* 80042270 0003DED0 48 00 00 80 */ b lbl_800422F0 lbl_80042274: /* 80042274 0003DED4 FC 20 E8 90 */ fmr f1, f29 /* 80042278 0003DED8 C0 42 82 B0 */ lfs f2, lbl_806408B0-_SDA2_BASE_(r2) /* 8004227C 0003DEDC FC 60 F8 90 */ fmr f3, f31 /* 80042280 0003DEE0 7F E4 FB 78 */ mr r4, r31 /* 80042284 0003DEE4 38 61 00 08 */ addi r3, r1, 8 /* 80042288 0003DEE8 4B FF F8 D1 */ bl func_80041B58 /* 8004228C 0003DEEC C0 41 00 08 */ lfs f2, 8(r1) /* 80042290 0003DEF0 7F E3 FB 78 */ mr r3, r31 /* 80042294 0003DEF4 C0 21 00 0C */ lfs f1, 0xc(r1) /* 80042298 0003DEF8 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004229C 0003DEFC D0 41 00 20 */ stfs f2, 0x20(r1) /* 800422A0 0003DF00 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800422A4 0003DF04 D0 01 00 28 */ stfs f0, 0x28(r1) /* 800422A8 0003DF08 48 00 02 E9 */ bl func_80042590 /* 800422AC 0003DF0C C0 03 00 00 */ lfs f0, 0(r3) /* 800422B0 0003DF10 38 81 00 14 */ addi r4, r1, 0x14 /* 800422B4 0003DF14 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800422B8 0003DF18 C0 03 00 04 */ lfs f0, 4(r3) /* 800422BC 0003DF1C D0 01 00 18 */ stfs f0, 0x18(r1) /* 800422C0 0003DF20 C0 03 00 08 */ lfs f0, 8(r3) /* 800422C4 0003DF24 38 61 00 20 */ addi r3, r1, 0x20 /* 800422C8 0003DF28 7C 65 1B 78 */ mr r5, r3 /* 800422CC 0003DF2C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800422D0 0003DF30 48 23 A9 F5 */ bl func_8027CCC4 /* 800422D4 0003DF34 D3 C1 00 24 */ stfs f30, 0x24(r1) /* 800422D8 0003DF38 38 61 00 20 */ addi r3, r1, 0x20 /* 800422DC 0003DF3C 38 81 00 14 */ addi r4, r1, 0x14 /* 800422E0 0003DF40 4B FF FB F5 */ bl func_80041ED4 /* 800422E4 0003DF44 7F E3 FB 78 */ mr r3, r31 /* 800422E8 0003DF48 38 81 00 20 */ addi r4, r1, 0x20 /* 800422EC 0003DF4C 4B FF ED C1 */ bl func_800410AC lbl_800422F0: /* 800422F0 0003DF50 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 800422F4 0003DF54 CB E1 00 60 */ lfd f31, 0x60(r1) /* 800422F8 0003DF58 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 800422FC 0003DF5C CB C1 00 50 */ lfd f30, 0x50(r1) /* 80042300 0003DF60 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 80042304 0003DF64 CB A1 00 40 */ lfd f29, 0x40(r1) /* 80042308 0003DF68 80 01 00 74 */ lwz r0, 0x74(r1) /* 8004230C 0003DF6C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80042310 0003DF70 7C 08 03 A6 */ mtlr r0 /* 80042314 0003DF74 38 21 00 70 */ addi r1, r1, 0x70 /* 80042318 0003DF78 4E 80 00 20 */ blr .global func_8004231C func_8004231C: /* 8004231C 0003DF7C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80042320 0003DF80 7C 08 02 A6 */ mflr r0 /* 80042324 0003DF84 90 01 00 54 */ stw r0, 0x54(r1) /* 80042328 0003DF88 DB E1 00 40 */ stfd f31, 0x40(r1) /* 8004232C 0003DF8C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80042330 0003DF90 FF E0 20 90 */ fmr f31, f4 /* 80042334 0003DF94 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80042338 0003DF98 7C 9F 23 78 */ mr r31, r4 /* 8004233C 0003DF9C 93 C1 00 38 */ stw r30, 0x38(r1) /* 80042340 0003DFA0 7C 7E 1B 78 */ mr r30, r3 /* 80042344 0003DFA4 38 61 00 08 */ addi r3, r1, 8 /* 80042348 0003DFA8 7F C4 F3 78 */ mr r4, r30 /* 8004234C 0003DFAC 4B FF F8 0D */ bl func_80041B58 /* 80042350 0003DFB0 C0 41 00 08 */ lfs f2, 8(r1) /* 80042354 0003DFB4 7F C3 F3 78 */ mr r3, r30 /* 80042358 0003DFB8 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8004235C 0003DFBC C0 01 00 10 */ lfs f0, 0x10(r1) /* 80042360 0003DFC0 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80042364 0003DFC4 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80042368 0003DFC8 D0 01 00 28 */ stfs f0, 0x28(r1) /* 8004236C 0003DFCC 48 00 02 25 */ bl func_80042590 /* 80042370 0003DFD0 C0 03 00 00 */ lfs f0, 0(r3) /* 80042374 0003DFD4 38 81 00 14 */ addi r4, r1, 0x14 /* 80042378 0003DFD8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8004237C 0003DFDC C0 03 00 04 */ lfs f0, 4(r3) /* 80042380 0003DFE0 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80042384 0003DFE4 C0 03 00 08 */ lfs f0, 8(r3) /* 80042388 0003DFE8 38 61 00 20 */ addi r3, r1, 0x20 /* 8004238C 0003DFEC 7C 65 1B 78 */ mr r5, r3 /* 80042390 0003DFF0 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80042394 0003DFF4 48 23 A9 31 */ bl func_8027CCC4 /* 80042398 0003DFF8 38 61 00 20 */ addi r3, r1, 0x20 /* 8004239C 0003DFFC 38 81 00 14 */ addi r4, r1, 0x14 /* 800423A0 0003E000 4B FF FB 35 */ bl func_80041ED4 /* 800423A4 0003E004 FC 20 F8 90 */ fmr f1, f31 /* 800423A8 0003E008 7F C3 F3 78 */ mr r3, r30 /* 800423AC 0003E00C 7F E5 FB 78 */ mr r5, r31 /* 800423B0 0003E010 38 81 00 20 */ addi r4, r1, 0x20 /* 800423B4 0003E014 48 00 04 89 */ bl func_8004283C /* 800423B8 0003E018 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800423BC 0003E01C 80 01 00 54 */ lwz r0, 0x54(r1) /* 800423C0 0003E020 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800423C4 0003E024 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800423C8 0003E028 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800423CC 0003E02C 7C 08 03 A6 */ mtlr r0 /* 800423D0 0003E030 38 21 00 50 */ addi r1, r1, 0x50 /* 800423D4 0003E034 4E 80 00 20 */ blr .global func_800423D8 func_800423D8: /* 800423D8 0003E038 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800423DC 0003E03C 7C 08 02 A6 */ mflr r0 /* 800423E0 0003E040 90 01 00 84 */ stw r0, 0x84(r1) /* 800423E4 0003E044 DB E1 00 70 */ stfd f31, 0x70(r1) /* 800423E8 0003E048 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 800423EC 0003E04C DB C1 00 60 */ stfd f30, 0x60(r1) /* 800423F0 0003E050 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 800423F4 0003E054 DB A1 00 50 */ stfd f29, 0x50(r1) /* 800423F8 0003E058 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0 /* 800423FC 0003E05C DB 81 00 40 */ stfd f28, 0x40(r1) /* 80042400 0003E060 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0 /* 80042404 0003E064 FF 80 08 90 */ fmr f28, f1 /* 80042408 0003E068 FF A0 10 90 */ fmr f29, f2 /* 8004240C 0003E06C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80042410 0003E070 FF C0 18 90 */ fmr f30, f3 /* 80042414 0003E074 FF E0 20 90 */ fmr f31, f4 /* 80042418 0003E078 7C 9F 23 78 */ mr r31, r4 /* 8004241C 0003E07C 93 C1 00 38 */ stw r30, 0x38(r1) /* 80042420 0003E080 7C 7E 1B 78 */ mr r30, r3 /* 80042424 0003E084 80 03 06 D0 */ lwz r0, 0x6d0(r3) /* 80042428 0003E088 2C 00 00 00 */ cmpwi r0, 0 /* 8004242C 0003E08C 41 82 00 0C */ beq lbl_80042438 /* 80042430 0003E090 38 63 06 50 */ addi r3, r3, 0x650 /* 80042434 0003E094 48 00 00 08 */ b lbl_8004243C lbl_80042438: /* 80042438 0003E098 38 63 05 60 */ addi r3, r3, 0x560 lbl_8004243C: /* 8004243C 0003E09C 38 80 00 00 */ li r4, 0 /* 80042440 0003E0A0 4B FF E7 3D */ bl func_80040B7C /* 80042444 0003E0A4 2C 03 00 00 */ cmpwi r3, 0 /* 80042448 0003E0A8 41 82 00 30 */ beq lbl_80042478 /* 8004244C 0003E0AC 80 03 00 00 */ lwz r0, 0(r3) /* 80042450 0003E0B0 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 /* 80042454 0003E0B4 41 82 00 24 */ beq lbl_80042478 /* 80042458 0003E0B8 FC 20 E0 90 */ fmr f1, f28 /* 8004245C 0003E0BC C0 42 83 44 */ lfs f2, lbl_80640944-_SDA2_BASE_(r2) /* 80042460 0003E0C0 FC 60 F0 90 */ fmr f3, f30 /* 80042464 0003E0C4 7F C3 F3 78 */ mr r3, r30 /* 80042468 0003E0C8 FC 80 F8 90 */ fmr f4, f31 /* 8004246C 0003E0CC 7F E4 FB 78 */ mr r4, r31 /* 80042470 0003E0D0 4B FF FE AD */ bl func_8004231C /* 80042474 0003E0D4 48 00 00 88 */ b lbl_800424FC lbl_80042478: /* 80042478 0003E0D8 FC 20 E0 90 */ fmr f1, f28 /* 8004247C 0003E0DC C0 42 82 B0 */ lfs f2, lbl_806408B0-_SDA2_BASE_(r2) /* 80042480 0003E0E0 FC 60 F0 90 */ fmr f3, f30 /* 80042484 0003E0E4 7F C4 F3 78 */ mr r4, r30 /* 80042488 0003E0E8 38 61 00 08 */ addi r3, r1, 8 /* 8004248C 0003E0EC 4B FF F6 CD */ bl func_80041B58 /* 80042490 0003E0F0 C0 41 00 08 */ lfs f2, 8(r1) /* 80042494 0003E0F4 7F C3 F3 78 */ mr r3, r30 /* 80042498 0003E0F8 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8004249C 0003E0FC C0 01 00 10 */ lfs f0, 0x10(r1) /* 800424A0 0003E100 D0 41 00 20 */ stfs f2, 0x20(r1) /* 800424A4 0003E104 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800424A8 0003E108 D0 01 00 28 */ stfs f0, 0x28(r1) /* 800424AC 0003E10C 48 00 00 E5 */ bl func_80042590 /* 800424B0 0003E110 C0 03 00 00 */ lfs f0, 0(r3) /* 800424B4 0003E114 38 81 00 14 */ addi r4, r1, 0x14 /* 800424B8 0003E118 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800424BC 0003E11C C0 03 00 04 */ lfs f0, 4(r3) /* 800424C0 0003E120 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800424C4 0003E124 C0 03 00 08 */ lfs f0, 8(r3) /* 800424C8 0003E128 38 61 00 20 */ addi r3, r1, 0x20 /* 800424CC 0003E12C 7C 65 1B 78 */ mr r5, r3 /* 800424D0 0003E130 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800424D4 0003E134 48 23 A7 F1 */ bl func_8027CCC4 /* 800424D8 0003E138 D3 A1 00 24 */ stfs f29, 0x24(r1) /* 800424DC 0003E13C 38 61 00 20 */ addi r3, r1, 0x20 /* 800424E0 0003E140 38 81 00 14 */ addi r4, r1, 0x14 /* 800424E4 0003E144 4B FF F9 F1 */ bl func_80041ED4 /* 800424E8 0003E148 FC 20 F8 90 */ fmr f1, f31 /* 800424EC 0003E14C 7F C3 F3 78 */ mr r3, r30 /* 800424F0 0003E150 7F E5 FB 78 */ mr r5, r31 /* 800424F4 0003E154 38 81 00 20 */ addi r4, r1, 0x20 /* 800424F8 0003E158 48 00 03 45 */ bl func_8004283C lbl_800424FC: /* 800424FC 0003E15C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 80042500 0003E160 CB E1 00 70 */ lfd f31, 0x70(r1) /* 80042504 0003E164 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 80042508 0003E168 CB C1 00 60 */ lfd f30, 0x60(r1) /* 8004250C 0003E16C E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0 /* 80042510 0003E170 CB A1 00 50 */ lfd f29, 0x50(r1) /* 80042514 0003E174 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0 /* 80042518 0003E178 CB 81 00 40 */ lfd f28, 0x40(r1) /* 8004251C 0003E17C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80042520 0003E180 80 01 00 84 */ lwz r0, 0x84(r1) /* 80042524 0003E184 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80042528 0003E188 7C 08 03 A6 */ mtlr r0 /* 8004252C 0003E18C 38 21 00 80 */ addi r1, r1, 0x80 /* 80042530 0003E190 4E 80 00 20 */ blr .global func_80042534 func_80042534: /* 80042534 0003E194 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80042538 0003E198 7C 08 02 A6 */ mflr r0 /* 8004253C 0003E19C 90 01 00 14 */ stw r0, 0x14(r1) /* 80042540 0003E1A0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80042544 0003E1A4 7C 7F 1B 78 */ mr r31, r3 /* 80042548 0003E1A8 38 63 05 60 */ addi r3, r3, 0x560 /* 8004254C 0003E1AC 4B FF E6 99 */ bl func_80040BE4 /* 80042550 0003E1B0 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 80042554 0003E1B4 48 00 DE 35 */ bl func_80050388 /* 80042558 0003E1B8 38 7F 00 DC */ addi r3, r31, 0xdc /* 8004255C 0003E1BC 48 00 DE 2D */ bl func_80050388 /* 80042560 0003E1C0 38 7F 01 00 */ addi r3, r31, 0x100 /* 80042564 0003E1C4 48 00 DE 25 */ bl func_80050388 /* 80042568 0003E1C8 80 7F 06 D0 */ lwz r3, 0x6d0(r31) /* 8004256C 0003E1CC 38 00 00 01 */ li r0, 1 /* 80042570 0003E1D0 98 1F 00 01 */ stb r0, 1(r31) /* 80042574 0003E1D4 54 60 00 3A */ rlwinm r0, r3, 0, 0, 0x1d /* 80042578 0003E1D8 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 8004257C 0003E1DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80042580 0003E1E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80042584 0003E1E4 7C 08 03 A6 */ mtlr r0 /* 80042588 0003E1E8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004258C 0003E1EC 4E 80 00 20 */ blr .global func_80042590 func_80042590: /* 80042590 0003E1F0 80 03 06 D0 */ lwz r0, 0x6d0(r3) /* 80042594 0003E1F4 2C 00 00 00 */ cmpwi r0, 0 /* 80042598 0003E1F8 41 82 00 0C */ beq lbl_800425A4 /* 8004259C 0003E1FC 38 63 05 EC */ addi r3, r3, 0x5ec /* 800425A0 0003E200 4E 80 00 20 */ blr lbl_800425A4: /* 800425A4 0003E204 38 63 05 74 */ addi r3, r3, 0x574 /* 800425A8 0003E208 4E 80 00 20 */ blr .global func_800425AC func_800425AC: /* 800425AC 0003E20C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800425B0 0003E210 7C 08 02 A6 */ mflr r0 /* 800425B4 0003E214 90 01 00 14 */ stw r0, 0x14(r1) /* 800425B8 0003E218 93 E1 00 0C */ stw r31, 0xc(r1) /* 800425BC 0003E21C 7C 7F 1B 78 */ mr r31, r3 /* 800425C0 0003E220 38 63 05 60 */ addi r3, r3, 0x560 /* 800425C4 0003E224 4B FF E5 1D */ bl func_80040AE0 /* 800425C8 0003E228 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 800425CC 0003E22C 48 00 DD BD */ bl func_80050388 /* 800425D0 0003E230 38 7F 00 DC */ addi r3, r31, 0xdc /* 800425D4 0003E234 48 00 DD B5 */ bl func_80050388 /* 800425D8 0003E238 38 7F 01 00 */ addi r3, r31, 0x100 /* 800425DC 0003E23C 48 00 DD AD */ bl func_80050388 /* 800425E0 0003E240 38 00 00 01 */ li r0, 1 /* 800425E4 0003E244 98 1F 00 01 */ stb r0, 1(r31) /* 800425E8 0003E248 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800425EC 0003E24C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800425F0 0003E250 7C 08 03 A6 */ mtlr r0 /* 800425F4 0003E254 38 21 00 10 */ addi r1, r1, 0x10 /* 800425F8 0003E258 4E 80 00 20 */ blr .global func_800425FC func_800425FC: /* 800425FC 0003E25C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80042600 0003E260 7C 08 02 A6 */ mflr r0 /* 80042604 0003E264 90 01 00 44 */ stw r0, 0x44(r1) /* 80042608 0003E268 DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004260C 0003E26C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80042610 0003E270 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80042614 0003E274 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80042618 0003E278 FF C0 08 90 */ fmr f30, f1 /* 8004261C 0003E27C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80042620 0003E280 7C 7F 1B 78 */ mr r31, r3 /* 80042624 0003E284 38 63 05 60 */ addi r3, r3, 0x560 /* 80042628 0003E288 4B FF E1 89 */ bl func_800407B0 /* 8004262C 0003E28C FF E0 08 90 */ fmr f31, f1 /* 80042630 0003E290 D3 DF 06 C8 */ stfs f30, 0x6c8(r31) /* 80042634 0003E294 38 7F 04 E8 */ addi r3, r31, 0x4e8 /* 80042638 0003E298 38 80 00 01 */ li r4, 1 /* 8004263C 0003E29C 4B FF DF 4D */ bl func_80040588 /* 80042640 0003E2A0 C0 1F 04 FC */ lfs f0, 0x4fc(r31) /* 80042644 0003E2A4 38 61 00 08 */ addi r3, r1, 8 /* 80042648 0003E2A8 7C 65 1B 78 */ mr r5, r3 /* 8004264C 0003E2AC 38 9F 05 74 */ addi r4, r31, 0x574 /* 80042650 0003E2B0 D0 01 00 08 */ stfs f0, 8(r1) /* 80042654 0003E2B4 C0 1F 05 00 */ lfs f0, 0x500(r31) /* 80042658 0003E2B8 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8004265C 0003E2BC C0 1F 05 04 */ lfs f0, 0x504(r31) /* 80042660 0003E2C0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80042664 0003E2C4 48 23 A6 85 */ bl func_8027CCE8 /* 80042668 0003E2C8 38 61 00 08 */ addi r3, r1, 8 /* 8004266C 0003E2CC 7C 64 1B 78 */ mr r4, r3 /* 80042670 0003E2D0 48 23 A6 B9 */ bl func_8027CD28 /* 80042674 0003E2D4 EC 3E F8 2A */ fadds f1, f30, f31 /* 80042678 0003E2D8 38 61 00 08 */ addi r3, r1, 8 /* 8004267C 0003E2DC 7C 64 1B 78 */ mr r4, r3 /* 80042680 0003E2E0 48 23 A6 8D */ bl func_8027CD0C /* 80042684 0003E2E4 38 61 00 08 */ addi r3, r1, 8 /* 80042688 0003E2E8 38 9F 05 74 */ addi r4, r31, 0x574 /* 8004268C 0003E2EC 7C 65 1B 78 */ mr r5, r3 /* 80042690 0003E2F0 48 23 A6 35 */ bl func_8027CCC4 /* 80042694 0003E2F4 38 7F 04 E8 */ addi r3, r31, 0x4e8 /* 80042698 0003E2F8 38 81 00 08 */ addi r4, r1, 8 /* 8004269C 0003E2FC 4B FF E5 49 */ bl func_80040BE4 /* 800426A0 0003E300 38 00 00 01 */ li r0, 1 /* 800426A4 0003E304 98 1F 00 01 */ stb r0, 1(r31) /* 800426A8 0003E308 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 800426AC 0003E30C CB E1 00 30 */ lfd f31, 0x30(r1) /* 800426B0 0003E310 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 800426B4 0003E314 CB C1 00 20 */ lfd f30, 0x20(r1) /* 800426B8 0003E318 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800426BC 0003E31C 80 01 00 44 */ lwz r0, 0x44(r1) /* 800426C0 0003E320 7C 08 03 A6 */ mtlr r0 /* 800426C4 0003E324 38 21 00 40 */ addi r1, r1, 0x40 /* 800426C8 0003E328 4E 80 00 20 */ blr .global func_800426CC func_800426CC: /* 800426CC 0003E32C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800426D0 0003E330 7C 08 02 A6 */ mflr r0 /* 800426D4 0003E334 90 01 00 14 */ stw r0, 0x14(r1) /* 800426D8 0003E338 93 E1 00 0C */ stw r31, 0xc(r1) /* 800426DC 0003E33C 7C 7F 1B 78 */ mr r31, r3 /* 800426E0 0003E340 D0 23 06 DC */ stfs f1, 0x6dc(r3) /* 800426E4 0003E344 38 63 01 6C */ addi r3, r3, 0x16c /* 800426E8 0003E348 48 00 DC A1 */ bl func_80050388 /* 800426EC 0003E34C 38 00 00 01 */ li r0, 1 /* 800426F0 0003E350 98 1F 00 01 */ stb r0, 1(r31) /* 800426F4 0003E354 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800426F8 0003E358 80 01 00 14 */ lwz r0, 0x14(r1) /* 800426FC 0003E35C 7C 08 03 A6 */ mtlr r0 /* 80042700 0003E360 38 21 00 10 */ addi r1, r1, 0x10 /* 80042704 0003E364 4E 80 00 20 */ blr .global func_80042708 func_80042708: /* 80042708 0003E368 C0 23 06 DC */ lfs f1, 0x6dc(r3) /* 8004270C 0003E36C 4E 80 00 20 */ blr .global func_80042710 func_80042710: /* 80042710 0003E370 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80042714 0003E374 7C 08 02 A6 */ mflr r0 /* 80042718 0003E378 7C 87 23 78 */ mr r7, r4 /* 8004271C 0003E37C 38 83 06 DC */ addi r4, r3, 0x6dc /* 80042720 0003E380 90 01 00 14 */ stw r0, 0x14(r1) /* 80042724 0003E384 7C 86 23 78 */ mr r6, r4 /* 80042728 0003E388 38 A1 00 08 */ addi r5, r1, 8 /* 8004272C 0003E38C 38 63 01 6C */ addi r3, r3, 0x16c /* 80042730 0003E390 D0 21 00 08 */ stfs f1, 8(r1) /* 80042734 0003E394 FC 20 10 90 */ fmr f1, f2 /* 80042738 0003E398 48 00 DC 05 */ bl func_8005033C /* 8004273C 0003E39C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80042740 0003E3A0 7C 08 03 A6 */ mtlr r0 /* 80042744 0003E3A4 38 21 00 10 */ addi r1, r1, 0x10 /* 80042748 0003E3A8 4E 80 00 20 */ blr .global func_8004274C func_8004274C: /* 8004274C 0003E3AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80042750 0003E3B0 7C 08 02 A6 */ mflr r0 /* 80042754 0003E3B4 90 01 00 14 */ stw r0, 0x14(r1) /* 80042758 0003E3B8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004275C 0003E3BC 93 C1 00 08 */ stw r30, 8(r1) /* 80042760 0003E3C0 7C 7E 1B 78 */ mr r30, r3 /* 80042764 0003E3C4 4B FF FE 2D */ bl func_80042590 /* 80042768 0003E3C8 7C 7F 1B 78 */ mr r31, r3 /* 8004276C 0003E3CC 7F C3 F3 78 */ mr r3, r30 /* 80042770 0003E3D0 4B FF EA 95 */ bl func_80041204 /* 80042774 0003E3D4 7F E4 FB 78 */ mr r4, r31 /* 80042778 0003E3D8 48 23 A8 59 */ bl func_8027CFD0 /* 8004277C 0003E3DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80042780 0003E3E0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80042784 0003E3E4 83 C1 00 08 */ lwz r30, 8(r1) /* 80042788 0003E3E8 7C 08 03 A6 */ mtlr r0 /* 8004278C 0003E3EC 38 21 00 10 */ addi r1, r1, 0x10 /* 80042790 0003E3F0 4E 80 00 20 */ blr .global func_80042794 func_80042794: /* 80042794 0003E3F4 38 63 05 60 */ addi r3, r3, 0x560 /* 80042798 0003E3F8 4B FF E0 18 */ b func_800407B0 .global func_8004279C func_8004279C: /* 8004279C 0003E3FC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800427A0 0003E400 7C 08 02 A6 */ mflr r0 /* 800427A4 0003E404 90 01 00 44 */ stw r0, 0x44(r1) /* 800427A8 0003E408 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800427AC 0003E40C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 800427B0 0003E410 DB C1 00 20 */ stfd f30, 0x20(r1) /* 800427B4 0003E414 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 800427B8 0003E418 FF C0 10 90 */ fmr f30, f2 /* 800427BC 0003E41C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800427C0 0003E420 7C 9F 23 78 */ mr r31, r4 /* 800427C4 0003E424 93 C1 00 18 */ stw r30, 0x18(r1) /* 800427C8 0003E428 7C 7E 1B 78 */ mr r30, r3 /* 800427CC 0003E42C D0 21 00 08 */ stfs f1, 8(r1) /* 800427D0 0003E430 80 03 04 BC */ lwz r0, 0x4bc(r3) /* 800427D4 0003E434 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 800427D8 0003E438 90 03 04 BC */ stw r0, 0x4bc(r3) /* 800427DC 0003E43C 4B FF FF B9 */ bl func_80042794 /* 800427E0 0003E440 FF E0 08 90 */ fmr f31, f1 /* 800427E4 0003E444 7F C3 F3 78 */ mr r3, r30 /* 800427E8 0003E448 4B FF FF 65 */ bl func_8004274C /* 800427EC 0003E44C EC 21 F8 28 */ fsubs f1, f1, f31 /* 800427F0 0003E450 7F C3 F3 78 */ mr r3, r30 /* 800427F4 0003E454 4B FF FE 09 */ bl func_800425FC /* 800427F8 0003E458 FC 20 F0 90 */ fmr f1, f30 /* 800427FC 0003E45C 38 9E 06 C8 */ addi r4, r30, 0x6c8 /* 80042800 0003E460 7C 86 23 78 */ mr r6, r4 /* 80042804 0003E464 7F E7 FB 78 */ mr r7, r31 /* 80042808 0003E468 38 7E 00 28 */ addi r3, r30, 0x28 /* 8004280C 0003E46C 38 A1 00 08 */ addi r5, r1, 8 /* 80042810 0003E470 48 00 DB 2D */ bl func_8005033C /* 80042814 0003E474 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80042818 0003E478 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004281C 0003E47C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80042820 0003E480 CB C1 00 20 */ lfd f30, 0x20(r1) /* 80042824 0003E484 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80042828 0003E488 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004282C 0003E48C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80042830 0003E490 7C 08 03 A6 */ mtlr r0 /* 80042834 0003E494 38 21 00 40 */ addi r1, r1, 0x40 /* 80042838 0003E498 4E 80 00 20 */ blr .global func_8004283C func_8004283C: /* 8004283C 0003E49C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80042840 0003E4A0 7C 08 02 A6 */ mflr r0 /* 80042844 0003E4A4 90 01 00 34 */ stw r0, 0x34(r1) /* 80042848 0003E4A8 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8004284C 0003E4AC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80042850 0003E4B0 FF E0 08 90 */ fmr f31, f1 /* 80042854 0003E4B4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80042858 0003E4B8 7C BF 2B 78 */ mr r31, r5 /* 8004285C 0003E4BC 93 C1 00 18 */ stw r30, 0x18(r1) /* 80042860 0003E4C0 7C 9E 23 78 */ mr r30, r4 /* 80042864 0003E4C4 38 80 00 00 */ li r4, 0 /* 80042868 0003E4C8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004286C 0003E4CC 7C 7D 1B 78 */ mr r29, r3 /* 80042870 0003E4D0 38 63 04 E8 */ addi r3, r3, 0x4e8 /* 80042874 0003E4D4 4B FF E3 31 */ bl func_80040BA4 /* 80042878 0003E4D8 C0 3E 00 04 */ lfs f1, 4(r30) /* 8004287C 0003E4DC 38 00 00 00 */ li r0, 0 /* 80042880 0003E4E0 C0 1D 06 F4 */ lfs f0, 0x6f4(r29) /* 80042884 0003E4E4 90 1D 04 BC */ stw r0, 0x4bc(r29) /* 80042888 0003E4E8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004288C 0003E4EC 40 80 00 18 */ bge lbl_800428A4 /* 80042890 0003E4F0 88 1D 06 F8 */ lbz r0, 0x6f8(r29) /* 80042894 0003E4F4 2C 00 00 00 */ cmpwi r0, 0 /* 80042898 0003E4F8 41 82 00 0C */ beq lbl_800428A4 /* 8004289C 0003E4FC D0 01 00 08 */ stfs f0, 8(r1) /* 800428A0 0003E500 48 00 00 0C */ b lbl_800428AC lbl_800428A4: /* 800428A4 0003E504 C0 1E 00 04 */ lfs f0, 4(r30) /* 800428A8 0003E508 D0 01 00 08 */ stfs f0, 8(r1) lbl_800428AC: /* 800428AC 0003E50C C0 3D 05 00 */ lfs f1, 0x500(r29) /* 800428B0 0003E510 C0 1D 06 F4 */ lfs f0, 0x6f4(r29) /* 800428B4 0003E514 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800428B8 0003E518 40 80 00 18 */ bge lbl_800428D0 /* 800428BC 0003E51C 88 1D 06 F8 */ lbz r0, 0x6f8(r29) /* 800428C0 0003E520 2C 00 00 00 */ cmpwi r0, 0 /* 800428C4 0003E524 41 82 00 0C */ beq lbl_800428D0 /* 800428C8 0003E528 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800428CC 0003E52C 48 00 00 0C */ b lbl_800428D8 lbl_800428D0: /* 800428D0 0003E530 C0 1D 05 00 */ lfs f0, 0x500(r29) /* 800428D4 0003E534 D0 01 00 0C */ stfs f0, 0xc(r1) lbl_800428D8: /* 800428D8 0003E538 FC 20 F8 90 */ fmr f1, f31 /* 800428DC 0003E53C 38 9D 04 FC */ addi r4, r29, 0x4fc /* 800428E0 0003E540 7F C5 F3 78 */ mr r5, r30 /* 800428E4 0003E544 7F E7 FB 78 */ mr r7, r31 /* 800428E8 0003E548 7C 86 23 78 */ mr r6, r4 /* 800428EC 0003E54C 38 7D 00 4C */ addi r3, r29, 0x4c /* 800428F0 0003E550 48 00 DA 4D */ bl func_8005033C /* 800428F4 0003E554 FC 20 F8 90 */ fmr f1, f31 /* 800428F8 0003E558 7F E7 FB 78 */ mr r7, r31 /* 800428FC 0003E55C 38 7D 00 70 */ addi r3, r29, 0x70 /* 80042900 0003E560 38 81 00 0C */ addi r4, r1, 0xc /* 80042904 0003E564 38 A1 00 08 */ addi r5, r1, 8 /* 80042908 0003E568 38 DD 05 00 */ addi r6, r29, 0x500 /* 8004290C 0003E56C 48 00 DA 31 */ bl func_8005033C /* 80042910 0003E570 FC 20 F8 90 */ fmr f1, f31 /* 80042914 0003E574 38 9D 05 04 */ addi r4, r29, 0x504 /* 80042918 0003E578 7C 86 23 78 */ mr r6, r4 /* 8004291C 0003E57C 7F E7 FB 78 */ mr r7, r31 /* 80042920 0003E580 38 7D 00 94 */ addi r3, r29, 0x94 /* 80042924 0003E584 38 BE 00 08 */ addi r5, r30, 8 /* 80042928 0003E588 48 00 DA 15 */ bl func_8005033C /* 8004292C 0003E58C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80042930 0003E590 80 01 00 34 */ lwz r0, 0x34(r1) /* 80042934 0003E594 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80042938 0003E598 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004293C 0003E59C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80042940 0003E5A0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80042944 0003E5A4 7C 08 03 A6 */ mtlr r0 /* 80042948 0003E5A8 38 21 00 30 */ addi r1, r1, 0x30 /* 8004294C 0003E5AC 4E 80 00 20 */ blr .global func_80042950 func_80042950: /* 80042950 0003E5B0 C0 82 82 EC */ lfs f4, lbl_806408EC-_SDA2_BASE_(r2) /* 80042954 0003E5B4 3C 00 43 30 */ lis r0, 0x4330 /* 80042958 0003E5B8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004295C 0003E5BC EC 62 20 24 */ fdivs f3, f2, f4 /* 80042960 0003E5C0 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80042964 0003E5C4 90 01 00 08 */ stw r0, 8(r1) /* 80042968 0003E5C8 90 01 00 10 */ stw r0, 0x10(r1) /* 8004296C 0003E5CC FC 60 18 1E */ fctiwz f3, f3 /* 80042970 0003E5D0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80042974 0003E5D4 D8 61 00 18 */ stfd f3, 0x18(r1) /* 80042978 0003E5D8 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8004297C 0003E5DC 40 80 00 38 */ bge lbl_800429B4 /* 80042980 0003E5E0 38 03 FF FF */ addi r0, r3, -1 /* 80042984 0003E5E4 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 80042988 0003E5E8 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8004298C 0003E5EC 90 61 00 0C */ stw r3, 0xc(r1) /* 80042990 0003E5F0 C8 62 83 48 */ lfd f3, lbl_80640948-_SDA2_BASE_(r2) /* 80042994 0003E5F4 90 01 00 14 */ stw r0, 0x14(r1) /* 80042998 0003E5F8 C8 41 00 08 */ lfd f2, 8(r1) /* 8004299C 0003E5FC C8 01 00 10 */ lfd f0, 0x10(r1) /* 800429A0 0003E600 EC 42 18 28 */ fsubs f2, f2, f3 /* 800429A4 0003E604 EC 00 18 28 */ fsubs f0, f0, f3 /* 800429A8 0003E608 EC 42 01 32 */ fmuls f2, f2, f4 /* 800429AC 0003E60C EC 60 01 32 */ fmuls f3, f0, f4 /* 800429B0 0003E610 48 00 00 3C */ b lbl_800429EC lbl_800429B4: /* 800429B4 0003E614 38 03 00 01 */ addi r0, r3, 1 /* 800429B8 0003E618 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 800429BC 0003E61C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800429C0 0003E620 90 61 00 0C */ stw r3, 0xc(r1) /* 800429C4 0003E624 C8 62 83 48 */ lfd f3, lbl_80640948-_SDA2_BASE_(r2) /* 800429C8 0003E628 90 01 00 14 */ stw r0, 0x14(r1) /* 800429CC 0003E62C C8 41 00 08 */ lfd f2, 8(r1) /* 800429D0 0003E630 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800429D4 0003E634 EC 42 18 28 */ fsubs f2, f2, f3 /* 800429D8 0003E638 EC 00 18 28 */ fsubs f0, f0, f3 /* 800429DC 0003E63C EC 62 01 32 */ fmuls f3, f2, f4 /* 800429E0 0003E640 EC 40 01 32 */ fmuls f2, f0, f4 /* 800429E4 0003E644 48 00 00 08 */ b lbl_800429EC lbl_800429E8: /* 800429E8 0003E648 EC 21 20 2A */ fadds f1, f1, f4 lbl_800429EC: /* 800429EC 0003E64C FC 01 18 40 */ fcmpo cr0, f1, f3 /* 800429F0 0003E650 41 80 FF F8 */ blt lbl_800429E8 /* 800429F4 0003E654 48 00 00 08 */ b lbl_800429FC lbl_800429F8: /* 800429F8 0003E658 EC 21 20 28 */ fsubs f1, f1, f4 lbl_800429FC: /* 800429FC 0003E65C FC 01 10 40 */ fcmpo cr0, f1, f2 /* 80042A00 0003E660 41 81 FF F8 */ bgt lbl_800429F8 /* 80042A04 0003E664 38 21 00 20 */ addi r1, r1, 0x20 /* 80042A08 0003E668 4E 80 00 20 */ blr .global func_80042A0C func_80042A0C: /* 80042A0C 0003E66C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80042A10 0003E670 7C 08 02 A6 */ mflr r0 /* 80042A14 0003E674 90 01 00 24 */ stw r0, 0x24(r1) /* 80042A18 0003E678 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80042A1C 0003E67C FF E0 10 90 */ fmr f31, f2 /* 80042A20 0003E680 93 E1 00 14 */ stw r31, 0x14(r1) /* 80042A24 0003E684 7C 9F 23 78 */ mr r31, r4 /* 80042A28 0003E688 38 80 00 00 */ li r4, 0 /* 80042A2C 0003E68C 93 C1 00 10 */ stw r30, 0x10(r1) /* 80042A30 0003E690 7C 7E 1B 78 */ mr r30, r3 /* 80042A34 0003E694 38 63 04 E8 */ addi r3, r3, 0x4e8 /* 80042A38 0003E698 D0 21 00 08 */ stfs f1, 8(r1) /* 80042A3C 0003E69C 4B FF E1 69 */ bl func_80040BA4 /* 80042A40 0003E6A0 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80042A44 0003E6A4 38 9E 05 00 */ addi r4, r30, 0x500 /* 80042A48 0003E6A8 FC 20 F8 90 */ fmr f1, f31 /* 80042A4C 0003E6AC 7C 86 23 78 */ mr r6, r4 /* 80042A50 0003E6B0 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80042A54 0003E6B4 7F E7 FB 78 */ mr r7, r31 /* 80042A58 0003E6B8 90 1E 04 BC */ stw r0, 0x4bc(r30) /* 80042A5C 0003E6BC 38 7E 00 70 */ addi r3, r30, 0x70 /* 80042A60 0003E6C0 38 A1 00 08 */ addi r5, r1, 8 /* 80042A64 0003E6C4 48 00 D8 D9 */ bl func_8005033C /* 80042A68 0003E6C8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80042A6C 0003E6CC CB E1 00 18 */ lfd f31, 0x18(r1) /* 80042A70 0003E6D0 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80042A74 0003E6D4 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80042A78 0003E6D8 7C 08 03 A6 */ mtlr r0 /* 80042A7C 0003E6DC 38 21 00 20 */ addi r1, r1, 0x20 /* 80042A80 0003E6E0 4E 80 00 20 */ blr .global func_80042A84 func_80042A84: /* 80042A84 0003E6E4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80042A88 0003E6E8 7C 08 02 A6 */ mflr r0 /* 80042A8C 0003E6EC 90 01 00 44 */ stw r0, 0x44(r1) /* 80042A90 0003E6F0 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80042A94 0003E6F4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80042A98 0003E6F8 FF E0 10 90 */ fmr f31, f2 /* 80042A9C 0003E6FC 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80042AA0 0003E700 7C 9F 23 78 */ mr r31, r4 /* 80042AA4 0003E704 93 C1 00 28 */ stw r30, 0x28(r1) /* 80042AA8 0003E708 7C 7E 1B 78 */ mr r30, r3 /* 80042AAC 0003E70C 38 9E 05 74 */ addi r4, r30, 0x574 /* 80042AB0 0003E710 D0 21 00 08 */ stfs f1, 8(r1) /* 80042AB4 0003E714 C0 03 04 FC */ lfs f0, 0x4fc(r3) /* 80042AB8 0003E718 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80042ABC 0003E71C C0 03 05 00 */ lfs f0, 0x500(r3) /* 80042AC0 0003E720 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80042AC4 0003E724 C0 03 05 04 */ lfs f0, 0x504(r3) /* 80042AC8 0003E728 38 61 00 10 */ addi r3, r1, 0x10 /* 80042ACC 0003E72C 7C 65 1B 78 */ mr r5, r3 /* 80042AD0 0003E730 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80042AD4 0003E734 48 23 A2 15 */ bl func_8027CCE8 /* 80042AD8 0003E738 C0 41 00 18 */ lfs f2, 0x18(r1) /* 80042ADC 0003E73C C0 21 00 10 */ lfs f1, 0x10(r1) /* 80042AE0 0003E740 48 19 1A FD */ bl atan2 /* 80042AE4 0003E744 FC 00 08 18 */ frsp f0, f1 /* 80042AE8 0003E748 7F E7 FB 78 */ mr r7, r31 /* 80042AEC 0003E74C FC 20 F8 90 */ fmr f1, f31 /* 80042AF0 0003E750 38 7E 01 24 */ addi r3, r30, 0x124 /* 80042AF4 0003E754 38 81 00 0C */ addi r4, r1, 0xc /* 80042AF8 0003E758 38 A1 00 08 */ addi r5, r1, 8 /* 80042AFC 0003E75C D0 01 00 0C */ stfs f0, 0xc(r1) /* 80042B00 0003E760 38 DE 04 D8 */ addi r6, r30, 0x4d8 /* 80042B04 0003E764 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80042B08 0003E768 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 80042B0C 0003E76C 90 1E 04 BC */ stw r0, 0x4bc(r30) /* 80042B10 0003E770 48 00 D8 2D */ bl func_8005033C /* 80042B14 0003E774 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80042B18 0003E778 80 01 00 44 */ lwz r0, 0x44(r1) /* 80042B1C 0003E77C CB E1 00 30 */ lfd f31, 0x30(r1) /* 80042B20 0003E780 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80042B24 0003E784 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80042B28 0003E788 7C 08 03 A6 */ mtlr r0 /* 80042B2C 0003E78C 38 21 00 40 */ addi r1, r1, 0x40 /* 80042B30 0003E790 4E 80 00 20 */ blr .global func_80042B34 func_80042B34: /* 80042B34 0003E794 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80042B38 0003E798 7C 08 02 A6 */ mflr r0 /* 80042B3C 0003E79C 90 01 00 54 */ stw r0, 0x54(r1) /* 80042B40 0003E7A0 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80042B44 0003E7A4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80042B48 0003E7A8 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80042B4C 0003E7AC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 80042B50 0003E7B0 FF C0 18 90 */ fmr f30, f3 /* 80042B54 0003E7B4 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80042B58 0003E7B8 7C 9F 23 78 */ mr r31, r4 /* 80042B5C 0003E7BC 93 C1 00 28 */ stw r30, 0x28(r1) /* 80042B60 0003E7C0 7C 7E 1B 78 */ mr r30, r3 /* 80042B64 0003E7C4 38 9E 05 74 */ addi r4, r30, 0x574 /* 80042B68 0003E7C8 D0 21 00 08 */ stfs f1, 8(r1) /* 80042B6C 0003E7CC D0 41 00 0C */ stfs f2, 0xc(r1) /* 80042B70 0003E7D0 C0 03 04 FC */ lfs f0, 0x4fc(r3) /* 80042B74 0003E7D4 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80042B78 0003E7D8 C0 03 05 00 */ lfs f0, 0x500(r3) /* 80042B7C 0003E7DC D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80042B80 0003E7E0 C0 03 05 04 */ lfs f0, 0x504(r3) /* 80042B84 0003E7E4 38 61 00 18 */ addi r3, r1, 0x18 /* 80042B88 0003E7E8 7C 65 1B 78 */ mr r5, r3 /* 80042B8C 0003E7EC D0 01 00 20 */ stfs f0, 0x20(r1) /* 80042B90 0003E7F0 48 23 A1 59 */ bl func_8027CCE8 /* 80042B94 0003E7F4 80 1E 06 D0 */ lwz r0, 0x6d0(r30) /* 80042B98 0003E7F8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 80042B9C 0003E7FC 41 82 00 28 */ beq lbl_80042BC4 /* 80042BA0 0003E800 C0 41 00 20 */ lfs f2, 0x20(r1) /* 80042BA4 0003E804 C0 21 00 18 */ lfs f1, 0x18(r1) /* 80042BA8 0003E808 48 19 1A 35 */ bl atan2 /* 80042BAC 0003E80C FF E0 08 18 */ frsp f31, f1 /* 80042BB0 0003E810 38 7E 06 50 */ addi r3, r30, 0x650 /* 80042BB4 0003E814 4B FF E0 85 */ bl func_80040C38 /* 80042BB8 0003E818 EC 1F 08 28 */ fsubs f0, f31, f1 /* 80042BBC 0003E81C D0 01 00 14 */ stfs f0, 0x14(r1) /* 80042BC0 0003E820 48 00 00 24 */ b lbl_80042BE4 lbl_80042BC4: /* 80042BC4 0003E824 C0 41 00 20 */ lfs f2, 0x20(r1) /* 80042BC8 0003E828 C0 21 00 18 */ lfs f1, 0x18(r1) /* 80042BCC 0003E82C 48 19 1A 11 */ bl atan2 /* 80042BD0 0003E830 FF E0 08 18 */ frsp f31, f1 /* 80042BD4 0003E834 38 7E 05 60 */ addi r3, r30, 0x560 /* 80042BD8 0003E838 4B FF E0 61 */ bl func_80040C38 /* 80042BDC 0003E83C EC 1F 08 28 */ fsubs f0, f31, f1 /* 80042BE0 0003E840 D0 01 00 14 */ stfs f0, 0x14(r1) lbl_80042BE4: /* 80042BE4 0003E844 FC 20 00 18 */ frsp f1, f0 /* 80042BE8 0003E848 C0 41 00 08 */ lfs f2, 8(r1) /* 80042BEC 0003E84C 7F C3 F3 78 */ mr r3, r30 /* 80042BF0 0003E850 4B FF FD 61 */ bl func_80042950 /* 80042BF4 0003E854 D0 21 00 14 */ stfs f1, 0x14(r1) /* 80042BF8 0003E858 38 61 00 18 */ addi r3, r1, 0x18 /* 80042BFC 0003E85C 48 23 A1 89 */ bl func_8027CD84 /* 80042C00 0003E860 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 80042C04 0003E864 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80042C08 0003E868 EC 22 08 24 */ fdivs f1, f2, f1 /* 80042C0C 0003E86C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80042C10 0003E870 4C 41 13 82 */ cror 2, 1, 2 /* 80042C14 0003E874 40 82 00 0C */ bne lbl_80042C20 /* 80042C18 0003E878 C0 02 82 DC */ lfs f0, lbl_806408DC-_SDA2_BASE_(r2) /* 80042C1C 0003E87C 48 00 00 24 */ b lbl_80042C40 lbl_80042C20: /* 80042C20 0003E880 C0 02 82 E0 */ lfs f0, lbl_806408E0-_SDA2_BASE_(r2) /* 80042C24 0003E884 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80042C28 0003E888 4C 40 13 82 */ cror 2, 0, 2 /* 80042C2C 0003E88C 40 82 00 0C */ bne lbl_80042C38 /* 80042C30 0003E890 C0 02 82 E4 */ lfs f0, lbl_806408E4-_SDA2_BASE_(r2) /* 80042C34 0003E894 48 00 00 0C */ b lbl_80042C40 lbl_80042C38: /* 80042C38 0003E898 48 19 19 A1 */ bl asin /* 80042C3C 0003E89C FC 00 08 18 */ frsp f0, f1 lbl_80042C40: /* 80042C40 0003E8A0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80042C44 0003E8A4 FC 20 F0 90 */ fmr f1, f30 /* 80042C48 0003E8A8 7F E7 FB 78 */ mr r7, r31 /* 80042C4C 0003E8AC 38 7E 01 24 */ addi r3, r30, 0x124 /* 80042C50 0003E8B0 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80042C54 0003E8B4 38 81 00 14 */ addi r4, r1, 0x14 /* 80042C58 0003E8B8 38 A1 00 08 */ addi r5, r1, 8 /* 80042C5C 0003E8BC 54 00 07 74 */ rlwinm r0, r0, 0, 0x1d, 0x1a /* 80042C60 0003E8C0 38 DE 04 D8 */ addi r6, r30, 0x4d8 /* 80042C64 0003E8C4 90 1E 04 BC */ stw r0, 0x4bc(r30) /* 80042C68 0003E8C8 48 00 D6 D5 */ bl func_8005033C /* 80042C6C 0003E8CC FC 20 F0 90 */ fmr f1, f30 /* 80042C70 0003E8D0 7F E7 FB 78 */ mr r7, r31 /* 80042C74 0003E8D4 38 7E 01 48 */ addi r3, r30, 0x148 /* 80042C78 0003E8D8 38 81 00 10 */ addi r4, r1, 0x10 /* 80042C7C 0003E8DC 38 A1 00 0C */ addi r5, r1, 0xc /* 80042C80 0003E8E0 38 DE 04 DC */ addi r6, r30, 0x4dc /* 80042C84 0003E8E4 48 00 D6 B9 */ bl func_8005033C /* 80042C88 0003E8E8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80042C8C 0003E8EC CB E1 00 40 */ lfd f31, 0x40(r1) /* 80042C90 0003E8F0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80042C94 0003E8F4 CB C1 00 30 */ lfd f30, 0x30(r1) /* 80042C98 0003E8F8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80042C9C 0003E8FC 80 01 00 54 */ lwz r0, 0x54(r1) /* 80042CA0 0003E900 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80042CA4 0003E904 7C 08 03 A6 */ mtlr r0 /* 80042CA8 0003E908 38 21 00 50 */ addi r1, r1, 0x50 /* 80042CAC 0003E90C 4E 80 00 20 */ blr .global func_80042CB0 func_80042CB0: /* 80042CB0 0003E910 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80042CB4 0003E914 7C 08 02 A6 */ mflr r0 /* 80042CB8 0003E918 90 01 00 54 */ stw r0, 0x54(r1) /* 80042CBC 0003E91C DB E1 00 40 */ stfd f31, 0x40(r1) /* 80042CC0 0003E920 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80042CC4 0003E924 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80042CC8 0003E928 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 80042CCC 0003E92C FF C0 10 90 */ fmr f30, f2 /* 80042CD0 0003E930 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80042CD4 0003E934 7C 9F 23 78 */ mr r31, r4 /* 80042CD8 0003E938 93 C1 00 28 */ stw r30, 0x28(r1) /* 80042CDC 0003E93C 7C 7E 1B 78 */ mr r30, r3 /* 80042CE0 0003E940 38 9E 05 74 */ addi r4, r30, 0x574 /* 80042CE4 0003E944 D0 21 00 08 */ stfs f1, 8(r1) /* 80042CE8 0003E948 C0 03 04 FC */ lfs f0, 0x4fc(r3) /* 80042CEC 0003E94C D0 01 00 10 */ stfs f0, 0x10(r1) /* 80042CF0 0003E950 C0 03 05 00 */ lfs f0, 0x500(r3) /* 80042CF4 0003E954 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80042CF8 0003E958 C0 03 05 04 */ lfs f0, 0x504(r3) /* 80042CFC 0003E95C 38 61 00 10 */ addi r3, r1, 0x10 /* 80042D00 0003E960 7C 65 1B 78 */ mr r5, r3 /* 80042D04 0003E964 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80042D08 0003E968 48 23 9F E1 */ bl func_8027CCE8 /* 80042D0C 0003E96C 80 1E 06 D0 */ lwz r0, 0x6d0(r30) /* 80042D10 0003E970 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 80042D14 0003E974 41 82 00 28 */ beq lbl_80042D3C /* 80042D18 0003E978 C0 41 00 18 */ lfs f2, 0x18(r1) /* 80042D1C 0003E97C C0 21 00 10 */ lfs f1, 0x10(r1) /* 80042D20 0003E980 48 19 18 BD */ bl atan2 /* 80042D24 0003E984 FF E0 08 18 */ frsp f31, f1 /* 80042D28 0003E988 38 7E 06 50 */ addi r3, r30, 0x650 /* 80042D2C 0003E98C 4B FF DF 0D */ bl func_80040C38 /* 80042D30 0003E990 EC 1F 08 28 */ fsubs f0, f31, f1 /* 80042D34 0003E994 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80042D38 0003E998 48 00 00 24 */ b lbl_80042D5C lbl_80042D3C: /* 80042D3C 0003E99C C0 41 00 18 */ lfs f2, 0x18(r1) /* 80042D40 0003E9A0 C0 21 00 10 */ lfs f1, 0x10(r1) /* 80042D44 0003E9A4 48 19 18 99 */ bl atan2 /* 80042D48 0003E9A8 FF E0 08 18 */ frsp f31, f1 /* 80042D4C 0003E9AC 38 7E 05 60 */ addi r3, r30, 0x560 /* 80042D50 0003E9B0 4B FF DE E9 */ bl func_80040C38 /* 80042D54 0003E9B4 EC 1F 08 28 */ fsubs f0, f31, f1 /* 80042D58 0003E9B8 D0 01 00 0C */ stfs f0, 0xc(r1) lbl_80042D5C: /* 80042D5C 0003E9BC FC 20 00 18 */ frsp f1, f0 /* 80042D60 0003E9C0 C0 41 00 08 */ lfs f2, 8(r1) /* 80042D64 0003E9C4 7F C3 F3 78 */ mr r3, r30 /* 80042D68 0003E9C8 4B FF FB E9 */ bl func_80042950 /* 80042D6C 0003E9CC D0 21 00 0C */ stfs f1, 0xc(r1) /* 80042D70 0003E9D0 FC 20 F0 90 */ fmr f1, f30 /* 80042D74 0003E9D4 7F E7 FB 78 */ mr r7, r31 /* 80042D78 0003E9D8 38 7E 01 24 */ addi r3, r30, 0x124 /* 80042D7C 0003E9DC 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80042D80 0003E9E0 38 81 00 0C */ addi r4, r1, 0xc /* 80042D84 0003E9E4 38 A1 00 08 */ addi r5, r1, 8 /* 80042D88 0003E9E8 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 80042D8C 0003E9EC 38 DE 04 D8 */ addi r6, r30, 0x4d8 /* 80042D90 0003E9F0 90 1E 04 BC */ stw r0, 0x4bc(r30) /* 80042D94 0003E9F4 48 00 D5 A9 */ bl func_8005033C /* 80042D98 0003E9F8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80042D9C 0003E9FC CB E1 00 40 */ lfd f31, 0x40(r1) /* 80042DA0 0003EA00 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80042DA4 0003EA04 CB C1 00 30 */ lfd f30, 0x30(r1) /* 80042DA8 0003EA08 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80042DAC 0003EA0C 80 01 00 54 */ lwz r0, 0x54(r1) /* 80042DB0 0003EA10 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80042DB4 0003EA14 7C 08 03 A6 */ mtlr r0 /* 80042DB8 0003EA18 38 21 00 50 */ addi r1, r1, 0x50 /* 80042DBC 0003EA1C 4E 80 00 20 */ blr .global func_80042DC0 func_80042DC0: /* 80042DC0 0003EA20 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80042DC4 0003EA24 7C 08 02 A6 */ mflr r0 /* 80042DC8 0003EA28 90 01 00 44 */ stw r0, 0x44(r1) /* 80042DCC 0003EA2C DB E1 00 30 */ stfd f31, 0x30(r1) /* 80042DD0 0003EA30 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80042DD4 0003EA34 FF E0 10 90 */ fmr f31, f2 /* 80042DD8 0003EA38 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80042DDC 0003EA3C 7C 9F 23 78 */ mr r31, r4 /* 80042DE0 0003EA40 93 C1 00 28 */ stw r30, 0x28(r1) /* 80042DE4 0003EA44 7C 7E 1B 78 */ mr r30, r3 /* 80042DE8 0003EA48 38 9E 05 74 */ addi r4, r30, 0x574 /* 80042DEC 0003EA4C D0 21 00 08 */ stfs f1, 8(r1) /* 80042DF0 0003EA50 C0 03 04 FC */ lfs f0, 0x4fc(r3) /* 80042DF4 0003EA54 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80042DF8 0003EA58 C0 03 05 00 */ lfs f0, 0x500(r3) /* 80042DFC 0003EA5C D0 01 00 14 */ stfs f0, 0x14(r1) /* 80042E00 0003EA60 C0 03 05 04 */ lfs f0, 0x504(r3) /* 80042E04 0003EA64 38 61 00 10 */ addi r3, r1, 0x10 /* 80042E08 0003EA68 7C 65 1B 78 */ mr r5, r3 /* 80042E0C 0003EA6C D0 01 00 18 */ stfs f0, 0x18(r1) /* 80042E10 0003EA70 48 23 9E D9 */ bl func_8027CCE8 /* 80042E14 0003EA74 38 61 00 10 */ addi r3, r1, 0x10 /* 80042E18 0003EA78 48 23 9F 6D */ bl func_8027CD84 /* 80042E1C 0003EA7C C0 41 00 14 */ lfs f2, 0x14(r1) /* 80042E20 0003EA80 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80042E24 0003EA84 EC 22 08 24 */ fdivs f1, f2, f1 /* 80042E28 0003EA88 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80042E2C 0003EA8C 4C 41 13 82 */ cror 2, 1, 2 /* 80042E30 0003EA90 40 82 00 0C */ bne lbl_80042E3C /* 80042E34 0003EA94 C0 02 82 DC */ lfs f0, lbl_806408DC-_SDA2_BASE_(r2) /* 80042E38 0003EA98 48 00 00 24 */ b lbl_80042E5C lbl_80042E3C: /* 80042E3C 0003EA9C C0 02 82 E0 */ lfs f0, lbl_806408E0-_SDA2_BASE_(r2) /* 80042E40 0003EAA0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80042E44 0003EAA4 4C 40 13 82 */ cror 2, 0, 2 /* 80042E48 0003EAA8 40 82 00 0C */ bne lbl_80042E54 /* 80042E4C 0003EAAC C0 02 82 E4 */ lfs f0, lbl_806408E4-_SDA2_BASE_(r2) /* 80042E50 0003EAB0 48 00 00 0C */ b lbl_80042E5C lbl_80042E54: /* 80042E54 0003EAB4 48 19 17 85 */ bl asin /* 80042E58 0003EAB8 FC 00 08 18 */ frsp f0, f1 lbl_80042E5C: /* 80042E5C 0003EABC D0 01 00 0C */ stfs f0, 0xc(r1) /* 80042E60 0003EAC0 FC 20 F8 90 */ fmr f1, f31 /* 80042E64 0003EAC4 7F E7 FB 78 */ mr r7, r31 /* 80042E68 0003EAC8 38 7E 01 48 */ addi r3, r30, 0x148 /* 80042E6C 0003EACC 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80042E70 0003EAD0 38 81 00 0C */ addi r4, r1, 0xc /* 80042E74 0003EAD4 38 A1 00 08 */ addi r5, r1, 8 /* 80042E78 0003EAD8 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80042E7C 0003EADC 38 DE 04 DC */ addi r6, r30, 0x4dc /* 80042E80 0003EAE0 90 1E 04 BC */ stw r0, 0x4bc(r30) /* 80042E84 0003EAE4 48 00 D4 B9 */ bl func_8005033C /* 80042E88 0003EAE8 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80042E8C 0003EAEC 80 01 00 44 */ lwz r0, 0x44(r1) /* 80042E90 0003EAF0 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80042E94 0003EAF4 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80042E98 0003EAF8 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80042E9C 0003EAFC 7C 08 03 A6 */ mtlr r0 /* 80042EA0 0003EB00 38 21 00 40 */ addi r1, r1, 0x40 /* 80042EA4 0003EB04 4E 80 00 20 */ blr .global func_80042EA8 func_80042EA8: /* 80042EA8 0003EB08 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80042EAC 0003EB0C 7C 08 02 A6 */ mflr r0 /* 80042EB0 0003EB10 90 01 00 24 */ stw r0, 0x24(r1) /* 80042EB4 0003EB14 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80042EB8 0003EB18 FF E0 08 90 */ fmr f31, f1 /* 80042EBC 0003EB1C 93 E1 00 14 */ stw r31, 0x14(r1) /* 80042EC0 0003EB20 3B E3 05 74 */ addi r31, r3, 0x574 /* 80042EC4 0003EB24 93 C1 00 10 */ stw r30, 0x10(r1) /* 80042EC8 0003EB28 7C BE 2B 78 */ mr r30, r5 /* 80042ECC 0003EB2C 93 A1 00 0C */ stw r29, 0xc(r1) /* 80042ED0 0003EB30 7C 9D 23 78 */ mr r29, r4 /* 80042ED4 0003EB34 38 80 00 00 */ li r4, 0 /* 80042ED8 0003EB38 93 81 00 08 */ stw r28, 8(r1) /* 80042EDC 0003EB3C 7C 7C 1B 78 */ mr r28, r3 /* 80042EE0 0003EB40 38 63 05 60 */ addi r3, r3, 0x560 /* 80042EE4 0003EB44 4B FF DC C1 */ bl func_80040BA4 /* 80042EE8 0003EB48 FC 20 F8 90 */ fmr f1, f31 /* 80042EEC 0003EB4C 7F E4 FB 78 */ mr r4, r31 /* 80042EF0 0003EB50 7F A5 EB 78 */ mr r5, r29 /* 80042EF4 0003EB54 7F E6 FB 78 */ mr r6, r31 /* 80042EF8 0003EB58 7F C7 F3 78 */ mr r7, r30 /* 80042EFC 0003EB5C 38 7C 00 B8 */ addi r3, r28, 0xb8 /* 80042F00 0003EB60 48 00 D4 3D */ bl func_8005033C /* 80042F04 0003EB64 FC 20 F8 90 */ fmr f1, f31 /* 80042F08 0003EB68 38 9F 00 04 */ addi r4, r31, 4 /* 80042F0C 0003EB6C 7C 86 23 78 */ mr r6, r4 /* 80042F10 0003EB70 7F C7 F3 78 */ mr r7, r30 /* 80042F14 0003EB74 38 7C 00 DC */ addi r3, r28, 0xdc /* 80042F18 0003EB78 38 BD 00 04 */ addi r5, r29, 4 /* 80042F1C 0003EB7C 48 00 D4 21 */ bl func_8005033C /* 80042F20 0003EB80 FC 20 F8 90 */ fmr f1, f31 /* 80042F24 0003EB84 38 9F 00 08 */ addi r4, r31, 8 /* 80042F28 0003EB88 7C 86 23 78 */ mr r6, r4 /* 80042F2C 0003EB8C 7F C7 F3 78 */ mr r7, r30 /* 80042F30 0003EB90 38 7C 01 00 */ addi r3, r28, 0x100 /* 80042F34 0003EB94 38 BD 00 08 */ addi r5, r29, 8 /* 80042F38 0003EB98 48 00 D4 05 */ bl func_8005033C /* 80042F3C 0003EB9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80042F40 0003EBA0 CB E1 00 18 */ lfd f31, 0x18(r1) /* 80042F44 0003EBA4 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80042F48 0003EBA8 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80042F4C 0003EBAC 83 A1 00 0C */ lwz r29, 0xc(r1) /* 80042F50 0003EBB0 83 81 00 08 */ lwz r28, 8(r1) /* 80042F54 0003EBB4 7C 08 03 A6 */ mtlr r0 /* 80042F58 0003EBB8 38 21 00 20 */ addi r1, r1, 0x20 /* 80042F5C 0003EBBC 4E 80 00 20 */ blr .global func_80042F60 func_80042F60: /* 80042F60 0003EBC0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80042F64 0003EBC4 7C 08 02 A6 */ mflr r0 /* 80042F68 0003EBC8 90 01 00 24 */ stw r0, 0x24(r1) /* 80042F6C 0003EBCC DB E1 00 18 */ stfd f31, 0x18(r1) /* 80042F70 0003EBD0 FF E0 10 90 */ fmr f31, f2 /* 80042F74 0003EBD4 93 E1 00 14 */ stw r31, 0x14(r1) /* 80042F78 0003EBD8 7C 9F 23 78 */ mr r31, r4 /* 80042F7C 0003EBDC 38 80 00 00 */ li r4, 0 /* 80042F80 0003EBE0 93 C1 00 10 */ stw r30, 0x10(r1) /* 80042F84 0003EBE4 7C 7E 1B 78 */ mr r30, r3 /* 80042F88 0003EBE8 38 63 05 60 */ addi r3, r3, 0x560 /* 80042F8C 0003EBEC D0 21 00 08 */ stfs f1, 8(r1) /* 80042F90 0003EBF0 4B FF DC 15 */ bl func_80040BA4 /* 80042F94 0003EBF4 FC 20 F8 90 */ fmr f1, f31 /* 80042F98 0003EBF8 38 9E 05 78 */ addi r4, r30, 0x578 /* 80042F9C 0003EBFC 7C 86 23 78 */ mr r6, r4 /* 80042FA0 0003EC00 7F E7 FB 78 */ mr r7, r31 /* 80042FA4 0003EC04 38 7E 00 DC */ addi r3, r30, 0xdc /* 80042FA8 0003EC08 38 A1 00 08 */ addi r5, r1, 8 /* 80042FAC 0003EC0C 48 00 D3 91 */ bl func_8005033C /* 80042FB0 0003EC10 80 01 00 24 */ lwz r0, 0x24(r1) /* 80042FB4 0003EC14 CB E1 00 18 */ lfd f31, 0x18(r1) /* 80042FB8 0003EC18 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80042FBC 0003EC1C 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80042FC0 0003EC20 7C 08 03 A6 */ mtlr r0 /* 80042FC4 0003EC24 38 21 00 20 */ addi r1, r1, 0x20 /* 80042FC8 0003EC28 4E 80 00 20 */ blr .global func_80042FCC func_80042FCC: /* 80042FCC 0003EC2C 94 21 FF 70 */ stwu r1, -0x90(r1) /* 80042FD0 0003EC30 7C 08 02 A6 */ mflr r0 /* 80042FD4 0003EC34 90 01 00 94 */ stw r0, 0x94(r1) /* 80042FD8 0003EC38 DB E1 00 80 */ stfd f31, 0x80(r1) /* 80042FDC 0003EC3C F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 80042FE0 0003EC40 DB C1 00 70 */ stfd f30, 0x70(r1) /* 80042FE4 0003EC44 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 /* 80042FE8 0003EC48 DB A1 00 60 */ stfd f29, 0x60(r1) /* 80042FEC 0003EC4C F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 /* 80042FF0 0003EC50 DB 81 00 50 */ stfd f28, 0x50(r1) /* 80042FF4 0003EC54 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 /* 80042FF8 0003EC58 DB 61 00 40 */ stfd f27, 0x40(r1) /* 80042FFC 0003EC5C F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 /* 80043000 0003EC60 DB 41 00 30 */ stfd f26, 0x30(r1) /* 80043004 0003EC64 F3 41 00 38 */ psq_st f26, 56(r1), 0, qr0 /* 80043008 0003EC68 39 61 00 30 */ addi r11, r1, 0x30 /* 8004300C 0003EC6C 48 18 41 19 */ bl _savegpr_26 /* 80043010 0003EC70 C0 02 83 50 */ lfs f0, lbl_80640950-_SDA2_BASE_(r2) /* 80043014 0003EC74 FF E0 10 90 */ fmr f31, f2 /* 80043018 0003EC78 7C 7F 1B 78 */ mr r31, r3 /* 8004301C 0003EC7C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80043020 0003EC80 4C 40 13 82 */ cror 2, 0, 2 /* 80043024 0003EC84 40 82 00 28 */ bne lbl_8004304C /* 80043028 0003EC88 7C C8 33 78 */ mr r8, r6 /* 8004302C 0003EC8C 38 C0 00 00 */ li r6, 0 /* 80043030 0003EC90 38 E0 00 00 */ li r7, 0 /* 80043034 0003EC94 38 63 05 60 */ addi r3, r3, 0x560 /* 80043038 0003EC98 4B FF DB 01 */ bl func_80040B38 /* 8004303C 0003EC9C 80 1F 06 D0 */ lwz r0, 0x6d0(r31) /* 80043040 0003ECA0 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 80043044 0003ECA4 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 80043048 0003ECA8 48 00 02 44 */ b lbl_8004328C lbl_8004304C: /* 8004304C 0003ECAC 80 03 06 D0 */ lwz r0, 0x6d0(r3) /* 80043050 0003ECB0 2C 00 00 00 */ cmpwi r0, 0 /* 80043054 0003ECB4 41 82 00 F8 */ beq lbl_8004314C /* 80043058 0003ECB8 8B C3 05 D8 */ lbz r30, 0x5d8(r3) /* 8004305C 0003ECBC 83 A3 05 DC */ lwz r29, 0x5dc(r3) /* 80043060 0003ECC0 C3 C3 05 E0 */ lfs f30, 0x5e0(r3) /* 80043064 0003ECC4 C3 A3 05 E4 */ lfs f29, 0x5e4(r3) /* 80043068 0003ECC8 83 83 05 E8 */ lwz r28, 0x5e8(r3) /* 8004306C 0003ECCC C3 83 05 EC */ lfs f28, 0x5ec(r3) /* 80043070 0003ECD0 C3 63 05 F0 */ lfs f27, 0x5f0(r3) /* 80043074 0003ECD4 C3 43 05 F4 */ lfs f26, 0x5f4(r3) /* 80043078 0003ECD8 C1 A3 05 F8 */ lfs f13, 0x5f8(r3) /* 8004307C 0003ECDC C1 83 05 FC */ lfs f12, 0x5fc(r3) /* 80043080 0003ECE0 C1 63 06 00 */ lfs f11, 0x600(r3) /* 80043084 0003ECE4 C1 43 06 04 */ lfs f10, 0x604(r3) /* 80043088 0003ECE8 C1 23 06 08 */ lfs f9, 0x608(r3) /* 8004308C 0003ECEC C1 03 06 0C */ lfs f8, 0x60c(r3) /* 80043090 0003ECF0 C0 E3 06 10 */ lfs f7, 0x610(r3) /* 80043094 0003ECF4 C0 C3 06 14 */ lfs f6, 0x614(r3) /* 80043098 0003ECF8 C0 A3 06 18 */ lfs f5, 0x618(r3) /* 8004309C 0003ECFC C0 83 06 1C */ lfs f4, 0x61c(r3) /* 800430A0 0003ED00 C0 63 06 20 */ lfs f3, 0x620(r3) /* 800430A4 0003ED04 C0 43 06 24 */ lfs f2, 0x624(r3) /* 800430A8 0003ED08 C0 03 06 28 */ lfs f0, 0x628(r3) /* 800430AC 0003ED0C 83 63 06 2C */ lwz r27, 0x62c(r3) /* 800430B0 0003ED10 83 43 06 30 */ lwz r26, 0x630(r3) /* 800430B4 0003ED14 81 83 06 34 */ lwz r12, 0x634(r3) /* 800430B8 0003ED18 81 63 06 38 */ lwz r11, 0x638(r3) /* 800430BC 0003ED1C 81 43 06 3C */ lwz r10, 0x63c(r3) /* 800430C0 0003ED20 81 23 06 40 */ lwz r9, 0x640(r3) /* 800430C4 0003ED24 81 03 06 44 */ lwz r8, 0x644(r3) /* 800430C8 0003ED28 80 E3 06 48 */ lwz r7, 0x648(r3) /* 800430CC 0003ED2C 80 03 06 4C */ lwz r0, 0x64c(r3) /* 800430D0 0003ED30 9B C3 05 60 */ stb r30, 0x560(r3) /* 800430D4 0003ED34 93 A3 05 64 */ stw r29, 0x564(r3) /* 800430D8 0003ED38 D3 C3 05 68 */ stfs f30, 0x568(r3) /* 800430DC 0003ED3C D3 A3 05 6C */ stfs f29, 0x56c(r3) /* 800430E0 0003ED40 93 83 05 70 */ stw r28, 0x570(r3) /* 800430E4 0003ED44 D3 83 05 74 */ stfs f28, 0x574(r3) /* 800430E8 0003ED48 D3 63 05 78 */ stfs f27, 0x578(r3) /* 800430EC 0003ED4C D3 43 05 7C */ stfs f26, 0x57c(r3) /* 800430F0 0003ED50 D1 A3 05 80 */ stfs f13, 0x580(r3) /* 800430F4 0003ED54 D1 83 05 84 */ stfs f12, 0x584(r3) /* 800430F8 0003ED58 D1 63 05 88 */ stfs f11, 0x588(r3) /* 800430FC 0003ED5C D1 43 05 8C */ stfs f10, 0x58c(r3) /* 80043100 0003ED60 D1 23 05 90 */ stfs f9, 0x590(r3) /* 80043104 0003ED64 D1 03 05 94 */ stfs f8, 0x594(r3) /* 80043108 0003ED68 D0 E3 05 98 */ stfs f7, 0x598(r3) /* 8004310C 0003ED6C D0 C3 05 9C */ stfs f6, 0x59c(r3) /* 80043110 0003ED70 D0 A3 05 A0 */ stfs f5, 0x5a0(r3) /* 80043114 0003ED74 D0 83 05 A4 */ stfs f4, 0x5a4(r3) /* 80043118 0003ED78 D0 63 05 A8 */ stfs f3, 0x5a8(r3) /* 8004311C 0003ED7C D0 43 05 AC */ stfs f2, 0x5ac(r3) /* 80043120 0003ED80 D0 03 05 B0 */ stfs f0, 0x5b0(r3) /* 80043124 0003ED84 93 63 05 B4 */ stw r27, 0x5b4(r3) /* 80043128 0003ED88 93 43 05 B8 */ stw r26, 0x5b8(r3) /* 8004312C 0003ED8C 91 83 05 BC */ stw r12, 0x5bc(r3) /* 80043130 0003ED90 91 63 05 C0 */ stw r11, 0x5c0(r3) /* 80043134 0003ED94 91 43 05 C4 */ stw r10, 0x5c4(r3) /* 80043138 0003ED98 91 23 05 C8 */ stw r9, 0x5c8(r3) /* 8004313C 0003ED9C 91 03 05 CC */ stw r8, 0x5cc(r3) /* 80043140 0003EDA0 90 E3 05 D0 */ stw r7, 0x5d0(r3) /* 80043144 0003EDA4 90 03 05 D4 */ stw r0, 0x5d4(r3) /* 80043148 0003EDA8 48 00 00 F4 */ b lbl_8004323C lbl_8004314C: /* 8004314C 0003EDAC 8B 43 05 60 */ lbz r26, 0x560(r3) /* 80043150 0003EDB0 83 63 05 64 */ lwz r27, 0x564(r3) /* 80043154 0003EDB4 C3 43 05 68 */ lfs f26, 0x568(r3) /* 80043158 0003EDB8 C3 63 05 6C */ lfs f27, 0x56c(r3) /* 8004315C 0003EDBC 83 83 05 70 */ lwz r28, 0x570(r3) /* 80043160 0003EDC0 C3 83 05 74 */ lfs f28, 0x574(r3) /* 80043164 0003EDC4 C3 A3 05 78 */ lfs f29, 0x578(r3) /* 80043168 0003EDC8 C3 C3 05 7C */ lfs f30, 0x57c(r3) /* 8004316C 0003EDCC C1 A3 05 80 */ lfs f13, 0x580(r3) /* 80043170 0003EDD0 C1 83 05 84 */ lfs f12, 0x584(r3) /* 80043174 0003EDD4 C1 63 05 88 */ lfs f11, 0x588(r3) /* 80043178 0003EDD8 C1 43 05 8C */ lfs f10, 0x58c(r3) /* 8004317C 0003EDDC C1 23 05 90 */ lfs f9, 0x590(r3) /* 80043180 0003EDE0 C1 03 05 94 */ lfs f8, 0x594(r3) /* 80043184 0003EDE4 C0 E3 05 98 */ lfs f7, 0x598(r3) /* 80043188 0003EDE8 C0 C3 05 9C */ lfs f6, 0x59c(r3) /* 8004318C 0003EDEC C0 A3 05 A0 */ lfs f5, 0x5a0(r3) /* 80043190 0003EDF0 C0 83 05 A4 */ lfs f4, 0x5a4(r3) /* 80043194 0003EDF4 C0 63 05 A8 */ lfs f3, 0x5a8(r3) /* 80043198 0003EDF8 C0 43 05 AC */ lfs f2, 0x5ac(r3) /* 8004319C 0003EDFC C0 03 05 B0 */ lfs f0, 0x5b0(r3) /* 800431A0 0003EE00 83 A3 05 B4 */ lwz r29, 0x5b4(r3) /* 800431A4 0003EE04 83 C3 05 B8 */ lwz r30, 0x5b8(r3) /* 800431A8 0003EE08 81 83 05 BC */ lwz r12, 0x5bc(r3) /* 800431AC 0003EE0C 81 63 05 C0 */ lwz r11, 0x5c0(r3) /* 800431B0 0003EE10 81 43 05 C4 */ lwz r10, 0x5c4(r3) /* 800431B4 0003EE14 81 23 05 C8 */ lwz r9, 0x5c8(r3) /* 800431B8 0003EE18 81 03 05 CC */ lwz r8, 0x5cc(r3) /* 800431BC 0003EE1C 80 E3 05 D0 */ lwz r7, 0x5d0(r3) /* 800431C0 0003EE20 80 03 05 D4 */ lwz r0, 0x5d4(r3) /* 800431C4 0003EE24 9B 43 05 D8 */ stb r26, 0x5d8(r3) /* 800431C8 0003EE28 93 63 05 DC */ stw r27, 0x5dc(r3) /* 800431CC 0003EE2C D3 43 05 E0 */ stfs f26, 0x5e0(r3) /* 800431D0 0003EE30 D3 63 05 E4 */ stfs f27, 0x5e4(r3) /* 800431D4 0003EE34 93 83 05 E8 */ stw r28, 0x5e8(r3) /* 800431D8 0003EE38 D3 83 05 EC */ stfs f28, 0x5ec(r3) /* 800431DC 0003EE3C D3 A3 05 F0 */ stfs f29, 0x5f0(r3) /* 800431E0 0003EE40 D3 C3 05 F4 */ stfs f30, 0x5f4(r3) /* 800431E4 0003EE44 D1 A3 05 F8 */ stfs f13, 0x5f8(r3) /* 800431E8 0003EE48 D1 83 05 FC */ stfs f12, 0x5fc(r3) /* 800431EC 0003EE4C D1 63 06 00 */ stfs f11, 0x600(r3) /* 800431F0 0003EE50 D1 43 06 04 */ stfs f10, 0x604(r3) /* 800431F4 0003EE54 D1 23 06 08 */ stfs f9, 0x608(r3) /* 800431F8 0003EE58 D1 03 06 0C */ stfs f8, 0x60c(r3) /* 800431FC 0003EE5C D0 E3 06 10 */ stfs f7, 0x610(r3) /* 80043200 0003EE60 D0 C3 06 14 */ stfs f6, 0x614(r3) /* 80043204 0003EE64 D0 A3 06 18 */ stfs f5, 0x618(r3) /* 80043208 0003EE68 D0 83 06 1C */ stfs f4, 0x61c(r3) /* 8004320C 0003EE6C D0 63 06 20 */ stfs f3, 0x620(r3) /* 80043210 0003EE70 D0 43 06 24 */ stfs f2, 0x624(r3) /* 80043214 0003EE74 D0 03 06 28 */ stfs f0, 0x628(r3) /* 80043218 0003EE78 93 A3 06 2C */ stw r29, 0x62c(r3) /* 8004321C 0003EE7C 93 C3 06 30 */ stw r30, 0x630(r3) /* 80043220 0003EE80 91 83 06 34 */ stw r12, 0x634(r3) /* 80043224 0003EE84 91 63 06 38 */ stw r11, 0x638(r3) /* 80043228 0003EE88 91 43 06 3C */ stw r10, 0x63c(r3) /* 8004322C 0003EE8C 91 23 06 40 */ stw r9, 0x640(r3) /* 80043230 0003EE90 91 03 06 44 */ stw r8, 0x644(r3) /* 80043234 0003EE94 90 E3 06 48 */ stw r7, 0x648(r3) /* 80043238 0003EE98 90 03 06 4C */ stw r0, 0x64c(r3) lbl_8004323C: /* 8004323C 0003EE9C 7C C8 33 78 */ mr r8, r6 /* 80043240 0003EEA0 38 C0 00 00 */ li r6, 0 /* 80043244 0003EEA4 38 E0 00 00 */ li r7, 0 /* 80043248 0003EEA8 38 63 06 50 */ addi r3, r3, 0x650 /* 8004324C 0003EEAC 4B FF D8 ED */ bl func_80040B38 /* 80043250 0003EEB0 80 1F 06 D0 */ lwz r0, 0x6d0(r31) /* 80043254 0003EEB4 38 7F 06 50 */ addi r3, r31, 0x650 /* 80043258 0003EEB8 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 8004325C 0003EEBC 38 81 00 08 */ addi r4, r1, 8 /* 80043260 0003EEC0 60 00 00 01 */ ori r0, r0, 1 /* 80043264 0003EEC4 D3 FF 06 D4 */ stfs f31, 0x6d4(r31) /* 80043268 0003EEC8 C0 1F 05 74 */ lfs f0, 0x574(r31) /* 8004326C 0003EECC 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 80043270 0003EED0 D0 3F 06 D8 */ stfs f1, 0x6d8(r31) /* 80043274 0003EED4 D0 01 00 08 */ stfs f0, 8(r1) /* 80043278 0003EED8 C0 1F 05 78 */ lfs f0, 0x578(r31) /* 8004327C 0003EEDC D0 01 00 0C */ stfs f0, 0xc(r1) /* 80043280 0003EEE0 C0 1F 05 7C */ lfs f0, 0x57c(r31) /* 80043284 0003EEE4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80043288 0003EEE8 4B FF D6 A1 */ bl func_80040928 lbl_8004328C: /* 8004328C 0003EEEC 80 7F 04 BC */ lwz r3, 0x4bc(r31) /* 80043290 0003EEF0 38 00 00 01 */ li r0, 1 /* 80043294 0003EEF4 98 1F 00 02 */ stb r0, 2(r31) /* 80043298 0003EEF8 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 8004329C 0003EEFC 41 82 00 0C */ beq lbl_800432A8 /* 800432A0 0003EF00 60 60 00 04 */ ori r0, r3, 4 /* 800432A4 0003EF04 90 1F 04 BC */ stw r0, 0x4bc(r31) lbl_800432A8: /* 800432A8 0003EF08 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 800432AC 0003EF0C 48 00 D0 DD */ bl func_80050388 /* 800432B0 0003EF10 38 7F 00 DC */ addi r3, r31, 0xdc /* 800432B4 0003EF14 48 00 D0 D5 */ bl func_80050388 /* 800432B8 0003EF18 38 7F 01 00 */ addi r3, r31, 0x100 /* 800432BC 0003EF1C 48 00 D0 CD */ bl func_80050388 /* 800432C0 0003EF20 38 00 00 01 */ li r0, 1 /* 800432C4 0003EF24 98 1F 00 01 */ stb r0, 1(r31) /* 800432C8 0003EF28 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 800432CC 0003EF2C CB E1 00 80 */ lfd f31, 0x80(r1) /* 800432D0 0003EF30 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 /* 800432D4 0003EF34 CB C1 00 70 */ lfd f30, 0x70(r1) /* 800432D8 0003EF38 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 /* 800432DC 0003EF3C CB A1 00 60 */ lfd f29, 0x60(r1) /* 800432E0 0003EF40 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 /* 800432E4 0003EF44 CB 81 00 50 */ lfd f28, 0x50(r1) /* 800432E8 0003EF48 E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 /* 800432EC 0003EF4C CB 61 00 40 */ lfd f27, 0x40(r1) /* 800432F0 0003EF50 E3 41 00 38 */ psq_l f26, 56(r1), 0, qr0 /* 800432F4 0003EF54 CB 41 00 30 */ lfd f26, 0x30(r1) /* 800432F8 0003EF58 39 61 00 30 */ addi r11, r1, 0x30 /* 800432FC 0003EF5C 48 18 3E 75 */ bl _restgpr_26 /* 80043300 0003EF60 80 01 00 94 */ lwz r0, 0x94(r1) /* 80043304 0003EF64 7C 08 03 A6 */ mtlr r0 /* 80043308 0003EF68 38 21 00 90 */ addi r1, r1, 0x90 /* 8004330C 0003EF6C 4E 80 00 20 */ blr .global func_80043310 func_80043310: /* 80043310 0003EF70 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80043314 0003EF74 7C 08 02 A6 */ mflr r0 /* 80043318 0003EF78 90 01 00 A4 */ stw r0, 0xa4(r1) /* 8004331C 0003EF7C DB E1 00 90 */ stfd f31, 0x90(r1) /* 80043320 0003EF80 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80043324 0003EF84 DB C1 00 80 */ stfd f30, 0x80(r1) /* 80043328 0003EF88 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 8004332C 0003EF8C DB A1 00 70 */ stfd f29, 0x70(r1) /* 80043330 0003EF90 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80043334 0003EF94 DB 81 00 60 */ stfd f28, 0x60(r1) /* 80043338 0003EF98 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 8004333C 0003EF9C DB 61 00 50 */ stfd f27, 0x50(r1) /* 80043340 0003EFA0 F3 61 00 58 */ psq_st f27, 88(r1), 0, qr0 /* 80043344 0003EFA4 DB 41 00 40 */ stfd f26, 0x40(r1) /* 80043348 0003EFA8 F3 41 00 48 */ psq_st f26, 72(r1), 0, qr0 /* 8004334C 0003EFAC 39 61 00 40 */ addi r11, r1, 0x40 /* 80043350 0003EFB0 48 18 3D CD */ bl _savegpr_24 /* 80043354 0003EFB4 C0 02 83 50 */ lfs f0, lbl_80640950-_SDA2_BASE_(r2) /* 80043358 0003EFB8 FF E0 10 90 */ fmr f31, f2 /* 8004335C 0003EFBC 7C 7F 1B 78 */ mr r31, r3 /* 80043360 0003EFC0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80043364 0003EFC4 4C 40 13 82 */ cror 2, 0, 2 /* 80043368 0003EFC8 40 82 00 1C */ bne lbl_80043384 /* 8004336C 0003EFCC 38 63 05 60 */ addi r3, r3, 0x560 /* 80043370 0003EFD0 4B FF D7 C9 */ bl func_80040B38 /* 80043374 0003EFD4 80 1F 06 D0 */ lwz r0, 0x6d0(r31) /* 80043378 0003EFD8 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 8004337C 0003EFDC 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 80043380 0003EFE0 48 00 02 38 */ b lbl_800435B8 lbl_80043384: /* 80043384 0003EFE4 80 03 06 D0 */ lwz r0, 0x6d0(r3) /* 80043388 0003EFE8 2C 00 00 00 */ cmpwi r0, 0 /* 8004338C 0003EFEC 41 82 00 F8 */ beq lbl_80043484 /* 80043390 0003EFF0 8B C3 05 D8 */ lbz r30, 0x5d8(r3) /* 80043394 0003EFF4 83 A3 05 DC */ lwz r29, 0x5dc(r3) /* 80043398 0003EFF8 C3 C3 05 E0 */ lfs f30, 0x5e0(r3) /* 8004339C 0003EFFC C3 A3 05 E4 */ lfs f29, 0x5e4(r3) /* 800433A0 0003F000 83 83 05 E8 */ lwz r28, 0x5e8(r3) /* 800433A4 0003F004 C3 83 05 EC */ lfs f28, 0x5ec(r3) /* 800433A8 0003F008 C3 63 05 F0 */ lfs f27, 0x5f0(r3) /* 800433AC 0003F00C C3 43 05 F4 */ lfs f26, 0x5f4(r3) /* 800433B0 0003F010 C1 A3 05 F8 */ lfs f13, 0x5f8(r3) /* 800433B4 0003F014 C1 83 05 FC */ lfs f12, 0x5fc(r3) /* 800433B8 0003F018 C1 63 06 00 */ lfs f11, 0x600(r3) /* 800433BC 0003F01C C1 43 06 04 */ lfs f10, 0x604(r3) /* 800433C0 0003F020 C1 23 06 08 */ lfs f9, 0x608(r3) /* 800433C4 0003F024 C1 03 06 0C */ lfs f8, 0x60c(r3) /* 800433C8 0003F028 C0 E3 06 10 */ lfs f7, 0x610(r3) /* 800433CC 0003F02C C0 C3 06 14 */ lfs f6, 0x614(r3) /* 800433D0 0003F030 C0 A3 06 18 */ lfs f5, 0x618(r3) /* 800433D4 0003F034 C0 83 06 1C */ lfs f4, 0x61c(r3) /* 800433D8 0003F038 C0 63 06 20 */ lfs f3, 0x620(r3) /* 800433DC 0003F03C C0 43 06 24 */ lfs f2, 0x624(r3) /* 800433E0 0003F040 C0 03 06 28 */ lfs f0, 0x628(r3) /* 800433E4 0003F044 83 63 06 2C */ lwz r27, 0x62c(r3) /* 800433E8 0003F048 83 43 06 30 */ lwz r26, 0x630(r3) /* 800433EC 0003F04C 83 23 06 34 */ lwz r25, 0x634(r3) /* 800433F0 0003F050 83 03 06 38 */ lwz r24, 0x638(r3) /* 800433F4 0003F054 81 83 06 3C */ lwz r12, 0x63c(r3) /* 800433F8 0003F058 81 63 06 40 */ lwz r11, 0x640(r3) /* 800433FC 0003F05C 81 43 06 44 */ lwz r10, 0x644(r3) /* 80043400 0003F060 81 23 06 48 */ lwz r9, 0x648(r3) /* 80043404 0003F064 80 03 06 4C */ lwz r0, 0x64c(r3) /* 80043408 0003F068 9B C3 05 60 */ stb r30, 0x560(r3) /* 8004340C 0003F06C 93 A3 05 64 */ stw r29, 0x564(r3) /* 80043410 0003F070 D3 C3 05 68 */ stfs f30, 0x568(r3) /* 80043414 0003F074 D3 A3 05 6C */ stfs f29, 0x56c(r3) /* 80043418 0003F078 93 83 05 70 */ stw r28, 0x570(r3) /* 8004341C 0003F07C D3 83 05 74 */ stfs f28, 0x574(r3) /* 80043420 0003F080 D3 63 05 78 */ stfs f27, 0x578(r3) /* 80043424 0003F084 D3 43 05 7C */ stfs f26, 0x57c(r3) /* 80043428 0003F088 D1 A3 05 80 */ stfs f13, 0x580(r3) /* 8004342C 0003F08C D1 83 05 84 */ stfs f12, 0x584(r3) /* 80043430 0003F090 D1 63 05 88 */ stfs f11, 0x588(r3) /* 80043434 0003F094 D1 43 05 8C */ stfs f10, 0x58c(r3) /* 80043438 0003F098 D1 23 05 90 */ stfs f9, 0x590(r3) /* 8004343C 0003F09C D1 03 05 94 */ stfs f8, 0x594(r3) /* 80043440 0003F0A0 D0 E3 05 98 */ stfs f7, 0x598(r3) /* 80043444 0003F0A4 D0 C3 05 9C */ stfs f6, 0x59c(r3) /* 80043448 0003F0A8 D0 A3 05 A0 */ stfs f5, 0x5a0(r3) /* 8004344C 0003F0AC D0 83 05 A4 */ stfs f4, 0x5a4(r3) /* 80043450 0003F0B0 D0 63 05 A8 */ stfs f3, 0x5a8(r3) /* 80043454 0003F0B4 D0 43 05 AC */ stfs f2, 0x5ac(r3) /* 80043458 0003F0B8 D0 03 05 B0 */ stfs f0, 0x5b0(r3) /* 8004345C 0003F0BC 93 63 05 B4 */ stw r27, 0x5b4(r3) /* 80043460 0003F0C0 93 43 05 B8 */ stw r26, 0x5b8(r3) /* 80043464 0003F0C4 93 23 05 BC */ stw r25, 0x5bc(r3) /* 80043468 0003F0C8 93 03 05 C0 */ stw r24, 0x5c0(r3) /* 8004346C 0003F0CC 91 83 05 C4 */ stw r12, 0x5c4(r3) /* 80043470 0003F0D0 91 63 05 C8 */ stw r11, 0x5c8(r3) /* 80043474 0003F0D4 91 43 05 CC */ stw r10, 0x5cc(r3) /* 80043478 0003F0D8 91 23 05 D0 */ stw r9, 0x5d0(r3) /* 8004347C 0003F0DC 90 03 05 D4 */ stw r0, 0x5d4(r3) /* 80043480 0003F0E0 48 00 00 F4 */ b lbl_80043574 lbl_80043484: /* 80043484 0003F0E4 8B 03 05 60 */ lbz r24, 0x560(r3) /* 80043488 0003F0E8 83 23 05 64 */ lwz r25, 0x564(r3) /* 8004348C 0003F0EC C3 43 05 68 */ lfs f26, 0x568(r3) /* 80043490 0003F0F0 C3 63 05 6C */ lfs f27, 0x56c(r3) /* 80043494 0003F0F4 83 43 05 70 */ lwz r26, 0x570(r3) /* 80043498 0003F0F8 C3 83 05 74 */ lfs f28, 0x574(r3) /* 8004349C 0003F0FC C3 A3 05 78 */ lfs f29, 0x578(r3) /* 800434A0 0003F100 C3 C3 05 7C */ lfs f30, 0x57c(r3) /* 800434A4 0003F104 C1 A3 05 80 */ lfs f13, 0x580(r3) /* 800434A8 0003F108 C1 83 05 84 */ lfs f12, 0x584(r3) /* 800434AC 0003F10C C1 63 05 88 */ lfs f11, 0x588(r3) /* 800434B0 0003F110 C1 43 05 8C */ lfs f10, 0x58c(r3) /* 800434B4 0003F114 C1 23 05 90 */ lfs f9, 0x590(r3) /* 800434B8 0003F118 C1 03 05 94 */ lfs f8, 0x594(r3) /* 800434BC 0003F11C C0 E3 05 98 */ lfs f7, 0x598(r3) /* 800434C0 0003F120 C0 C3 05 9C */ lfs f6, 0x59c(r3) /* 800434C4 0003F124 C0 A3 05 A0 */ lfs f5, 0x5a0(r3) /* 800434C8 0003F128 C0 83 05 A4 */ lfs f4, 0x5a4(r3) /* 800434CC 0003F12C C0 63 05 A8 */ lfs f3, 0x5a8(r3) /* 800434D0 0003F130 C0 43 05 AC */ lfs f2, 0x5ac(r3) /* 800434D4 0003F134 C0 03 05 B0 */ lfs f0, 0x5b0(r3) /* 800434D8 0003F138 83 63 05 B4 */ lwz r27, 0x5b4(r3) /* 800434DC 0003F13C 83 83 05 B8 */ lwz r28, 0x5b8(r3) /* 800434E0 0003F140 83 A3 05 BC */ lwz r29, 0x5bc(r3) /* 800434E4 0003F144 83 C3 05 C0 */ lwz r30, 0x5c0(r3) /* 800434E8 0003F148 81 83 05 C4 */ lwz r12, 0x5c4(r3) /* 800434EC 0003F14C 81 63 05 C8 */ lwz r11, 0x5c8(r3) /* 800434F0 0003F150 81 43 05 CC */ lwz r10, 0x5cc(r3) /* 800434F4 0003F154 81 23 05 D0 */ lwz r9, 0x5d0(r3) /* 800434F8 0003F158 80 03 05 D4 */ lwz r0, 0x5d4(r3) /* 800434FC 0003F15C 9B 03 05 D8 */ stb r24, 0x5d8(r3) /* 80043500 0003F160 93 23 05 DC */ stw r25, 0x5dc(r3) /* 80043504 0003F164 D3 43 05 E0 */ stfs f26, 0x5e0(r3) /* 80043508 0003F168 D3 63 05 E4 */ stfs f27, 0x5e4(r3) /* 8004350C 0003F16C 93 43 05 E8 */ stw r26, 0x5e8(r3) /* 80043510 0003F170 D3 83 05 EC */ stfs f28, 0x5ec(r3) /* 80043514 0003F174 D3 A3 05 F0 */ stfs f29, 0x5f0(r3) /* 80043518 0003F178 D3 C3 05 F4 */ stfs f30, 0x5f4(r3) /* 8004351C 0003F17C D1 A3 05 F8 */ stfs f13, 0x5f8(r3) /* 80043520 0003F180 D1 83 05 FC */ stfs f12, 0x5fc(r3) /* 80043524 0003F184 D1 63 06 00 */ stfs f11, 0x600(r3) /* 80043528 0003F188 D1 43 06 04 */ stfs f10, 0x604(r3) /* 8004352C 0003F18C D1 23 06 08 */ stfs f9, 0x608(r3) /* 80043530 0003F190 D1 03 06 0C */ stfs f8, 0x60c(r3) /* 80043534 0003F194 D0 E3 06 10 */ stfs f7, 0x610(r3) /* 80043538 0003F198 D0 C3 06 14 */ stfs f6, 0x614(r3) /* 8004353C 0003F19C D0 A3 06 18 */ stfs f5, 0x618(r3) /* 80043540 0003F1A0 D0 83 06 1C */ stfs f4, 0x61c(r3) /* 80043544 0003F1A4 D0 63 06 20 */ stfs f3, 0x620(r3) /* 80043548 0003F1A8 D0 43 06 24 */ stfs f2, 0x624(r3) /* 8004354C 0003F1AC D0 03 06 28 */ stfs f0, 0x628(r3) /* 80043550 0003F1B0 93 63 06 2C */ stw r27, 0x62c(r3) /* 80043554 0003F1B4 93 83 06 30 */ stw r28, 0x630(r3) /* 80043558 0003F1B8 93 A3 06 34 */ stw r29, 0x634(r3) /* 8004355C 0003F1BC 93 C3 06 38 */ stw r30, 0x638(r3) /* 80043560 0003F1C0 91 83 06 3C */ stw r12, 0x63c(r3) /* 80043564 0003F1C4 91 63 06 40 */ stw r11, 0x640(r3) /* 80043568 0003F1C8 91 43 06 44 */ stw r10, 0x644(r3) /* 8004356C 0003F1CC 91 23 06 48 */ stw r9, 0x648(r3) /* 80043570 0003F1D0 90 03 06 4C */ stw r0, 0x64c(r3) lbl_80043574: /* 80043574 0003F1D4 38 63 06 50 */ addi r3, r3, 0x650 /* 80043578 0003F1D8 4B FF D5 C1 */ bl func_80040B38 /* 8004357C 0003F1DC 80 1F 06 D0 */ lwz r0, 0x6d0(r31) /* 80043580 0003F1E0 38 7F 06 50 */ addi r3, r31, 0x650 /* 80043584 0003F1E4 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 80043588 0003F1E8 38 81 00 08 */ addi r4, r1, 8 /* 8004358C 0003F1EC 60 00 00 01 */ ori r0, r0, 1 /* 80043590 0003F1F0 D3 FF 06 D4 */ stfs f31, 0x6d4(r31) /* 80043594 0003F1F4 C0 1F 05 74 */ lfs f0, 0x574(r31) /* 80043598 0003F1F8 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 8004359C 0003F1FC D0 3F 06 D8 */ stfs f1, 0x6d8(r31) /* 800435A0 0003F200 D0 01 00 08 */ stfs f0, 8(r1) /* 800435A4 0003F204 C0 1F 05 78 */ lfs f0, 0x578(r31) /* 800435A8 0003F208 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800435AC 0003F20C C0 1F 05 7C */ lfs f0, 0x57c(r31) /* 800435B0 0003F210 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800435B4 0003F214 4B FF D3 75 */ bl func_80040928 lbl_800435B8: /* 800435B8 0003F218 80 7F 04 BC */ lwz r3, 0x4bc(r31) /* 800435BC 0003F21C 38 00 00 01 */ li r0, 1 /* 800435C0 0003F220 98 1F 00 02 */ stb r0, 2(r31) /* 800435C4 0003F224 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 800435C8 0003F228 41 82 00 0C */ beq lbl_800435D4 /* 800435CC 0003F22C 60 60 00 04 */ ori r0, r3, 4 /* 800435D0 0003F230 90 1F 04 BC */ stw r0, 0x4bc(r31) lbl_800435D4: /* 800435D4 0003F234 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 800435D8 0003F238 48 00 CD B1 */ bl func_80050388 /* 800435DC 0003F23C 38 7F 00 DC */ addi r3, r31, 0xdc /* 800435E0 0003F240 48 00 CD A9 */ bl func_80050388 /* 800435E4 0003F244 38 7F 01 00 */ addi r3, r31, 0x100 /* 800435E8 0003F248 48 00 CD A1 */ bl func_80050388 /* 800435EC 0003F24C 38 00 00 01 */ li r0, 1 /* 800435F0 0003F250 98 1F 00 01 */ stb r0, 1(r31) /* 800435F4 0003F254 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 800435F8 0003F258 CB E1 00 90 */ lfd f31, 0x90(r1) /* 800435FC 0003F25C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80043600 0003F260 CB C1 00 80 */ lfd f30, 0x80(r1) /* 80043604 0003F264 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80043608 0003F268 CB A1 00 70 */ lfd f29, 0x70(r1) /* 8004360C 0003F26C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 80043610 0003F270 CB 81 00 60 */ lfd f28, 0x60(r1) /* 80043614 0003F274 E3 61 00 58 */ psq_l f27, 88(r1), 0, qr0 /* 80043618 0003F278 CB 61 00 50 */ lfd f27, 0x50(r1) /* 8004361C 0003F27C E3 41 00 48 */ psq_l f26, 72(r1), 0, qr0 /* 80043620 0003F280 CB 41 00 40 */ lfd f26, 0x40(r1) /* 80043624 0003F284 39 61 00 40 */ addi r11, r1, 0x40 /* 80043628 0003F288 48 18 3B 41 */ bl _restgpr_24 /* 8004362C 0003F28C 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80043630 0003F290 7C 08 03 A6 */ mtlr r0 /* 80043634 0003F294 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80043638 0003F298 4E 80 00 20 */ blr .global func_8004363C func_8004363C: /* 8004363C 0003F29C 94 21 FF 70 */ stwu r1, -0x90(r1) /* 80043640 0003F2A0 7C 08 02 A6 */ mflr r0 /* 80043644 0003F2A4 90 01 00 94 */ stw r0, 0x94(r1) /* 80043648 0003F2A8 DB E1 00 80 */ stfd f31, 0x80(r1) /* 8004364C 0003F2AC F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 80043650 0003F2B0 DB C1 00 70 */ stfd f30, 0x70(r1) /* 80043654 0003F2B4 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 /* 80043658 0003F2B8 DB A1 00 60 */ stfd f29, 0x60(r1) /* 8004365C 0003F2BC F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 /* 80043660 0003F2C0 DB 81 00 50 */ stfd f28, 0x50(r1) /* 80043664 0003F2C4 F3 81 00 58 */ psq_st f28, 88(r1), 0, qr0 /* 80043668 0003F2C8 DB 61 00 40 */ stfd f27, 0x40(r1) /* 8004366C 0003F2CC F3 61 00 48 */ psq_st f27, 72(r1), 0, qr0 /* 80043670 0003F2D0 DB 41 00 30 */ stfd f26, 0x30(r1) /* 80043674 0003F2D4 F3 41 00 38 */ psq_st f26, 56(r1), 0, qr0 /* 80043678 0003F2D8 39 61 00 30 */ addi r11, r1, 0x30 /* 8004367C 0003F2DC 48 18 3A A9 */ bl _savegpr_26 /* 80043680 0003F2E0 C0 02 83 50 */ lfs f0, lbl_80640950-_SDA2_BASE_(r2) /* 80043684 0003F2E4 FF E0 10 90 */ fmr f31, f2 /* 80043688 0003F2E8 7C 7F 1B 78 */ mr r31, r3 /* 8004368C 0003F2EC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80043690 0003F2F0 4C 40 13 82 */ cror 2, 0, 2 /* 80043694 0003F2F4 40 82 00 28 */ bne lbl_800436BC /* 80043698 0003F2F8 7C C8 33 78 */ mr r8, r6 /* 8004369C 0003F2FC 38 C0 00 00 */ li r6, 0 /* 800436A0 0003F300 38 E0 00 00 */ li r7, 0 /* 800436A4 0003F304 38 63 05 60 */ addi r3, r3, 0x560 /* 800436A8 0003F308 4B FF D4 91 */ bl func_80040B38 /* 800436AC 0003F30C 80 1F 06 D0 */ lwz r0, 0x6d0(r31) /* 800436B0 0003F310 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 800436B4 0003F314 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 800436B8 0003F318 48 00 02 4C */ b lbl_80043904 lbl_800436BC: /* 800436BC 0003F31C 80 03 06 D0 */ lwz r0, 0x6d0(r3) /* 800436C0 0003F320 2C 00 00 00 */ cmpwi r0, 0 /* 800436C4 0003F324 41 82 00 F8 */ beq lbl_800437BC /* 800436C8 0003F328 8B C3 05 D8 */ lbz r30, 0x5d8(r3) /* 800436CC 0003F32C 83 A3 05 DC */ lwz r29, 0x5dc(r3) /* 800436D0 0003F330 C3 C3 05 E0 */ lfs f30, 0x5e0(r3) /* 800436D4 0003F334 C3 A3 05 E4 */ lfs f29, 0x5e4(r3) /* 800436D8 0003F338 83 83 05 E8 */ lwz r28, 0x5e8(r3) /* 800436DC 0003F33C C3 83 05 EC */ lfs f28, 0x5ec(r3) /* 800436E0 0003F340 C3 63 05 F0 */ lfs f27, 0x5f0(r3) /* 800436E4 0003F344 C3 43 05 F4 */ lfs f26, 0x5f4(r3) /* 800436E8 0003F348 C1 A3 05 F8 */ lfs f13, 0x5f8(r3) /* 800436EC 0003F34C C1 83 05 FC */ lfs f12, 0x5fc(r3) /* 800436F0 0003F350 C1 63 06 00 */ lfs f11, 0x600(r3) /* 800436F4 0003F354 C1 43 06 04 */ lfs f10, 0x604(r3) /* 800436F8 0003F358 C1 23 06 08 */ lfs f9, 0x608(r3) /* 800436FC 0003F35C C1 03 06 0C */ lfs f8, 0x60c(r3) /* 80043700 0003F360 C0 E3 06 10 */ lfs f7, 0x610(r3) /* 80043704 0003F364 C0 C3 06 14 */ lfs f6, 0x614(r3) /* 80043708 0003F368 C0 A3 06 18 */ lfs f5, 0x618(r3) /* 8004370C 0003F36C C0 83 06 1C */ lfs f4, 0x61c(r3) /* 80043710 0003F370 C0 63 06 20 */ lfs f3, 0x620(r3) /* 80043714 0003F374 C0 43 06 24 */ lfs f2, 0x624(r3) /* 80043718 0003F378 C0 03 06 28 */ lfs f0, 0x628(r3) /* 8004371C 0003F37C 83 63 06 2C */ lwz r27, 0x62c(r3) /* 80043720 0003F380 83 43 06 30 */ lwz r26, 0x630(r3) /* 80043724 0003F384 81 83 06 34 */ lwz r12, 0x634(r3) /* 80043728 0003F388 81 63 06 38 */ lwz r11, 0x638(r3) /* 8004372C 0003F38C 81 43 06 3C */ lwz r10, 0x63c(r3) /* 80043730 0003F390 81 23 06 40 */ lwz r9, 0x640(r3) /* 80043734 0003F394 81 03 06 44 */ lwz r8, 0x644(r3) /* 80043738 0003F398 80 E3 06 48 */ lwz r7, 0x648(r3) /* 8004373C 0003F39C 80 03 06 4C */ lwz r0, 0x64c(r3) /* 80043740 0003F3A0 9B C3 05 60 */ stb r30, 0x560(r3) /* 80043744 0003F3A4 93 A3 05 64 */ stw r29, 0x564(r3) /* 80043748 0003F3A8 D3 C3 05 68 */ stfs f30, 0x568(r3) /* 8004374C 0003F3AC D3 A3 05 6C */ stfs f29, 0x56c(r3) /* 80043750 0003F3B0 93 83 05 70 */ stw r28, 0x570(r3) /* 80043754 0003F3B4 D3 83 05 74 */ stfs f28, 0x574(r3) /* 80043758 0003F3B8 D3 63 05 78 */ stfs f27, 0x578(r3) /* 8004375C 0003F3BC D3 43 05 7C */ stfs f26, 0x57c(r3) /* 80043760 0003F3C0 D1 A3 05 80 */ stfs f13, 0x580(r3) /* 80043764 0003F3C4 D1 83 05 84 */ stfs f12, 0x584(r3) /* 80043768 0003F3C8 D1 63 05 88 */ stfs f11, 0x588(r3) /* 8004376C 0003F3CC D1 43 05 8C */ stfs f10, 0x58c(r3) /* 80043770 0003F3D0 D1 23 05 90 */ stfs f9, 0x590(r3) /* 80043774 0003F3D4 D1 03 05 94 */ stfs f8, 0x594(r3) /* 80043778 0003F3D8 D0 E3 05 98 */ stfs f7, 0x598(r3) /* 8004377C 0003F3DC D0 C3 05 9C */ stfs f6, 0x59c(r3) /* 80043780 0003F3E0 D0 A3 05 A0 */ stfs f5, 0x5a0(r3) /* 80043784 0003F3E4 D0 83 05 A4 */ stfs f4, 0x5a4(r3) /* 80043788 0003F3E8 D0 63 05 A8 */ stfs f3, 0x5a8(r3) /* 8004378C 0003F3EC D0 43 05 AC */ stfs f2, 0x5ac(r3) /* 80043790 0003F3F0 D0 03 05 B0 */ stfs f0, 0x5b0(r3) /* 80043794 0003F3F4 93 63 05 B4 */ stw r27, 0x5b4(r3) /* 80043798 0003F3F8 93 43 05 B8 */ stw r26, 0x5b8(r3) /* 8004379C 0003F3FC 91 83 05 BC */ stw r12, 0x5bc(r3) /* 800437A0 0003F400 91 63 05 C0 */ stw r11, 0x5c0(r3) /* 800437A4 0003F404 91 43 05 C4 */ stw r10, 0x5c4(r3) /* 800437A8 0003F408 91 23 05 C8 */ stw r9, 0x5c8(r3) /* 800437AC 0003F40C 91 03 05 CC */ stw r8, 0x5cc(r3) /* 800437B0 0003F410 90 E3 05 D0 */ stw r7, 0x5d0(r3) /* 800437B4 0003F414 90 03 05 D4 */ stw r0, 0x5d4(r3) /* 800437B8 0003F418 48 00 00 F4 */ b lbl_800438AC lbl_800437BC: /* 800437BC 0003F41C 8B 43 05 60 */ lbz r26, 0x560(r3) /* 800437C0 0003F420 83 63 05 64 */ lwz r27, 0x564(r3) /* 800437C4 0003F424 C3 43 05 68 */ lfs f26, 0x568(r3) /* 800437C8 0003F428 C3 63 05 6C */ lfs f27, 0x56c(r3) /* 800437CC 0003F42C 83 83 05 70 */ lwz r28, 0x570(r3) /* 800437D0 0003F430 C3 83 05 74 */ lfs f28, 0x574(r3) /* 800437D4 0003F434 C3 A3 05 78 */ lfs f29, 0x578(r3) /* 800437D8 0003F438 C3 C3 05 7C */ lfs f30, 0x57c(r3) /* 800437DC 0003F43C C1 A3 05 80 */ lfs f13, 0x580(r3) /* 800437E0 0003F440 C1 83 05 84 */ lfs f12, 0x584(r3) /* 800437E4 0003F444 C1 63 05 88 */ lfs f11, 0x588(r3) /* 800437E8 0003F448 C1 43 05 8C */ lfs f10, 0x58c(r3) /* 800437EC 0003F44C C1 23 05 90 */ lfs f9, 0x590(r3) /* 800437F0 0003F450 C1 03 05 94 */ lfs f8, 0x594(r3) /* 800437F4 0003F454 C0 E3 05 98 */ lfs f7, 0x598(r3) /* 800437F8 0003F458 C0 C3 05 9C */ lfs f6, 0x59c(r3) /* 800437FC 0003F45C C0 A3 05 A0 */ lfs f5, 0x5a0(r3) /* 80043800 0003F460 C0 83 05 A4 */ lfs f4, 0x5a4(r3) /* 80043804 0003F464 C0 63 05 A8 */ lfs f3, 0x5a8(r3) /* 80043808 0003F468 C0 43 05 AC */ lfs f2, 0x5ac(r3) /* 8004380C 0003F46C C0 03 05 B0 */ lfs f0, 0x5b0(r3) /* 80043810 0003F470 83 A3 05 B4 */ lwz r29, 0x5b4(r3) /* 80043814 0003F474 83 C3 05 B8 */ lwz r30, 0x5b8(r3) /* 80043818 0003F478 81 83 05 BC */ lwz r12, 0x5bc(r3) /* 8004381C 0003F47C 81 63 05 C0 */ lwz r11, 0x5c0(r3) /* 80043820 0003F480 81 43 05 C4 */ lwz r10, 0x5c4(r3) /* 80043824 0003F484 81 23 05 C8 */ lwz r9, 0x5c8(r3) /* 80043828 0003F488 81 03 05 CC */ lwz r8, 0x5cc(r3) /* 8004382C 0003F48C 80 E3 05 D0 */ lwz r7, 0x5d0(r3) /* 80043830 0003F490 80 03 05 D4 */ lwz r0, 0x5d4(r3) /* 80043834 0003F494 9B 43 05 D8 */ stb r26, 0x5d8(r3) /* 80043838 0003F498 93 63 05 DC */ stw r27, 0x5dc(r3) /* 8004383C 0003F49C D3 43 05 E0 */ stfs f26, 0x5e0(r3) /* 80043840 0003F4A0 D3 63 05 E4 */ stfs f27, 0x5e4(r3) /* 80043844 0003F4A4 93 83 05 E8 */ stw r28, 0x5e8(r3) /* 80043848 0003F4A8 D3 83 05 EC */ stfs f28, 0x5ec(r3) /* 8004384C 0003F4AC D3 A3 05 F0 */ stfs f29, 0x5f0(r3) /* 80043850 0003F4B0 D3 C3 05 F4 */ stfs f30, 0x5f4(r3) /* 80043854 0003F4B4 D1 A3 05 F8 */ stfs f13, 0x5f8(r3) /* 80043858 0003F4B8 D1 83 05 FC */ stfs f12, 0x5fc(r3) /* 8004385C 0003F4BC D1 63 06 00 */ stfs f11, 0x600(r3) /* 80043860 0003F4C0 D1 43 06 04 */ stfs f10, 0x604(r3) /* 80043864 0003F4C4 D1 23 06 08 */ stfs f9, 0x608(r3) /* 80043868 0003F4C8 D1 03 06 0C */ stfs f8, 0x60c(r3) /* 8004386C 0003F4CC D0 E3 06 10 */ stfs f7, 0x610(r3) /* 80043870 0003F4D0 D0 C3 06 14 */ stfs f6, 0x614(r3) /* 80043874 0003F4D4 D0 A3 06 18 */ stfs f5, 0x618(r3) /* 80043878 0003F4D8 D0 83 06 1C */ stfs f4, 0x61c(r3) /* 8004387C 0003F4DC D0 63 06 20 */ stfs f3, 0x620(r3) /* 80043880 0003F4E0 D0 43 06 24 */ stfs f2, 0x624(r3) /* 80043884 0003F4E4 D0 03 06 28 */ stfs f0, 0x628(r3) /* 80043888 0003F4E8 93 A3 06 2C */ stw r29, 0x62c(r3) /* 8004388C 0003F4EC 93 C3 06 30 */ stw r30, 0x630(r3) /* 80043890 0003F4F0 91 83 06 34 */ stw r12, 0x634(r3) /* 80043894 0003F4F4 91 63 06 38 */ stw r11, 0x638(r3) /* 80043898 0003F4F8 91 43 06 3C */ stw r10, 0x63c(r3) /* 8004389C 0003F4FC 91 23 06 40 */ stw r9, 0x640(r3) /* 800438A0 0003F500 91 03 06 44 */ stw r8, 0x644(r3) /* 800438A4 0003F504 90 E3 06 48 */ stw r7, 0x648(r3) /* 800438A8 0003F508 90 03 06 4C */ stw r0, 0x64c(r3) lbl_800438AC: /* 800438AC 0003F50C 7C C8 33 78 */ mr r8, r6 /* 800438B0 0003F510 38 C0 00 00 */ li r6, 0 /* 800438B4 0003F514 38 E0 00 00 */ li r7, 0 /* 800438B8 0003F518 38 63 06 50 */ addi r3, r3, 0x650 /* 800438BC 0003F51C 4B FF D2 7D */ bl func_80040B38 /* 800438C0 0003F520 80 1F 06 D0 */ lwz r0, 0x6d0(r31) /* 800438C4 0003F524 38 7F 06 50 */ addi r3, r31, 0x650 /* 800438C8 0003F528 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 800438CC 0003F52C 38 81 00 08 */ addi r4, r1, 8 /* 800438D0 0003F530 60 00 00 02 */ ori r0, r0, 2 /* 800438D4 0003F534 D3 FF 06 D4 */ stfs f31, 0x6d4(r31) /* 800438D8 0003F538 C0 1F 05 74 */ lfs f0, 0x574(r31) /* 800438DC 0003F53C 90 1F 06 D0 */ stw r0, 0x6d0(r31) /* 800438E0 0003F540 D0 3F 06 D8 */ stfs f1, 0x6d8(r31) /* 800438E4 0003F544 D0 01 00 08 */ stfs f0, 8(r1) /* 800438E8 0003F548 C0 1F 05 78 */ lfs f0, 0x578(r31) /* 800438EC 0003F54C D0 01 00 0C */ stfs f0, 0xc(r1) /* 800438F0 0003F550 C0 1F 05 7C */ lfs f0, 0x57c(r31) /* 800438F4 0003F554 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800438F8 0003F558 4B FF D0 31 */ bl func_80040928 /* 800438FC 0003F55C 38 7F 06 50 */ addi r3, r31, 0x650 /* 80043900 0003F560 4B FF D0 51 */ bl dGeomEnable lbl_80043904: /* 80043904 0003F564 80 7F 04 BC */ lwz r3, 0x4bc(r31) /* 80043908 0003F568 38 00 00 01 */ li r0, 1 /* 8004390C 0003F56C 98 1F 00 02 */ stb r0, 2(r31) /* 80043910 0003F570 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 80043914 0003F574 41 82 00 0C */ beq lbl_80043920 /* 80043918 0003F578 60 60 00 04 */ ori r0, r3, 4 /* 8004391C 0003F57C 90 1F 04 BC */ stw r0, 0x4bc(r31) lbl_80043920: /* 80043920 0003F580 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 80043924 0003F584 48 00 CA 65 */ bl func_80050388 /* 80043928 0003F588 38 7F 00 DC */ addi r3, r31, 0xdc /* 8004392C 0003F58C 48 00 CA 5D */ bl func_80050388 /* 80043930 0003F590 38 7F 01 00 */ addi r3, r31, 0x100 /* 80043934 0003F594 48 00 CA 55 */ bl func_80050388 /* 80043938 0003F598 38 00 00 01 */ li r0, 1 /* 8004393C 0003F59C 98 1F 00 01 */ stb r0, 1(r31) /* 80043940 0003F5A0 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 80043944 0003F5A4 CB E1 00 80 */ lfd f31, 0x80(r1) /* 80043948 0003F5A8 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 /* 8004394C 0003F5AC CB C1 00 70 */ lfd f30, 0x70(r1) /* 80043950 0003F5B0 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 /* 80043954 0003F5B4 CB A1 00 60 */ lfd f29, 0x60(r1) /* 80043958 0003F5B8 E3 81 00 58 */ psq_l f28, 88(r1), 0, qr0 /* 8004395C 0003F5BC CB 81 00 50 */ lfd f28, 0x50(r1) /* 80043960 0003F5C0 E3 61 00 48 */ psq_l f27, 72(r1), 0, qr0 /* 80043964 0003F5C4 CB 61 00 40 */ lfd f27, 0x40(r1) /* 80043968 0003F5C8 E3 41 00 38 */ psq_l f26, 56(r1), 0, qr0 /* 8004396C 0003F5CC CB 41 00 30 */ lfd f26, 0x30(r1) /* 80043970 0003F5D0 39 61 00 30 */ addi r11, r1, 0x30 /* 80043974 0003F5D4 48 18 37 FD */ bl _restgpr_26 /* 80043978 0003F5D8 80 01 00 94 */ lwz r0, 0x94(r1) /* 8004397C 0003F5DC 7C 08 03 A6 */ mtlr r0 /* 80043980 0003F5E0 38 21 00 90 */ addi r1, r1, 0x90 /* 80043984 0003F5E4 4E 80 00 20 */ blr .global func_80043988 func_80043988: /* 80043988 0003F5E8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004398C 0003F5EC 7C 08 02 A6 */ mflr r0 /* 80043990 0003F5F0 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 80043994 0003F5F4 38 80 00 00 */ li r4, 0 /* 80043998 0003F5F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004399C 0003F5FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800439A0 0003F600 7C 7F 1B 78 */ mr r31, r3 /* 800439A4 0003F604 38 63 05 60 */ addi r3, r3, 0x560 /* 800439A8 0003F608 D0 01 00 08 */ stfs f0, 8(r1) /* 800439AC 0003F60C D0 01 00 0C */ stfs f0, 0xc(r1) /* 800439B0 0003F610 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800439B4 0003F614 4B FF D1 F1 */ bl func_80040BA4 /* 800439B8 0003F618 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 800439BC 0003F61C 38 7F 05 60 */ addi r3, r31, 0x560 /* 800439C0 0003F620 39 01 00 08 */ addi r8, r1, 8 /* 800439C4 0003F624 38 80 00 00 */ li r4, 0 /* 800439C8 0003F628 38 A0 00 00 */ li r5, 0 /* 800439CC 0003F62C 38 C0 00 00 */ li r6, 0 /* 800439D0 0003F630 38 E0 00 00 */ li r7, 0 /* 800439D4 0003F634 4B FF D1 65 */ bl func_80040B38 /* 800439D8 0003F638 80 01 00 24 */ lwz r0, 0x24(r1) /* 800439DC 0003F63C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800439E0 0003F640 7C 08 03 A6 */ mtlr r0 /* 800439E4 0003F644 38 21 00 20 */ addi r1, r1, 0x20 /* 800439E8 0003F648 4E 80 00 20 */ blr .global func_800439EC func_800439EC: /* 800439EC 0003F64C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800439F0 0003F650 7C 08 02 A6 */ mflr r0 /* 800439F4 0003F654 90 01 00 44 */ stw r0, 0x44(r1) /* 800439F8 0003F658 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800439FC 0003F65C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80043A00 0003F660 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80043A04 0003F664 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80043A08 0003F668 DB A1 00 10 */ stfd f29, 0x10(r1) /* 80043A0C 0003F66C F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 /* 80043A10 0003F670 2C 04 00 00 */ cmpwi r4, 0 /* 80043A14 0003F674 93 E1 00 0C */ stw r31, 0xc(r1) /* 80043A18 0003F678 7C 7F 1B 78 */ mr r31, r3 /* 80043A1C 0003F67C 40 82 00 0C */ bne lbl_80043A28 /* 80043A20 0003F680 C0 23 06 C8 */ lfs f1, 0x6c8(r3) /* 80043A24 0003F684 48 00 00 C0 */ b lbl_80043AE4 lbl_80043A28: /* 80043A28 0003F688 2C 05 00 02 */ cmpwi r5, 2 /* 80043A2C 0003F68C 41 82 00 4C */ beq lbl_80043A78 /* 80043A30 0003F690 40 80 00 14 */ bge lbl_80043A44 /* 80043A34 0003F694 2C 05 00 00 */ cmpwi r5, 0 /* 80043A38 0003F698 41 82 00 18 */ beq lbl_80043A50 /* 80043A3C 0003F69C 40 80 00 28 */ bge lbl_80043A64 /* 80043A40 0003F6A0 48 00 00 58 */ b lbl_80043A98 lbl_80043A44: /* 80043A44 0003F6A4 2C 05 00 04 */ cmpwi r5, 4 /* 80043A48 0003F6A8 40 80 00 50 */ bge lbl_80043A98 /* 80043A4C 0003F6AC 48 00 00 44 */ b lbl_80043A90 lbl_80043A50: /* 80043A50 0003F6B0 7C 83 23 78 */ mr r3, r4 /* 80043A54 0003F6B4 38 80 00 00 */ li r4, 0 /* 80043A58 0003F6B8 4B FF 6B 95 */ bl func_8003A5EC /* 80043A5C 0003F6BC FF C0 08 90 */ fmr f30, f1 /* 80043A60 0003F6C0 48 00 00 38 */ b lbl_80043A98 lbl_80043A64: /* 80043A64 0003F6C4 7C 83 23 78 */ mr r3, r4 /* 80043A68 0003F6C8 38 80 00 01 */ li r4, 1 /* 80043A6C 0003F6CC 4B FF 6B 81 */ bl func_8003A5EC /* 80043A70 0003F6D0 FF C0 08 90 */ fmr f30, f1 /* 80043A74 0003F6D4 48 00 00 24 */ b lbl_80043A98 lbl_80043A78: /* 80043A78 0003F6D8 7C 83 23 78 */ mr r3, r4 /* 80043A7C 0003F6DC 38 80 00 01 */ li r4, 1 /* 80043A80 0003F6E0 4B FF 6B 6D */ bl func_8003A5EC /* 80043A84 0003F6E4 C0 02 83 54 */ lfs f0, lbl_80640954-_SDA2_BASE_(r2) /* 80043A88 0003F6E8 EF C0 00 72 */ fmuls f30, f0, f1 /* 80043A8C 0003F6EC 48 00 00 0C */ b lbl_80043A98 lbl_80043A90: /* 80043A90 0003F6F0 C0 23 06 C8 */ lfs f1, 0x6c8(r3) /* 80043A94 0003F6F4 48 00 00 50 */ b lbl_80043AE4 lbl_80043A98: /* 80043A98 0003F6F8 C0 02 83 50 */ lfs f0, lbl_80640950-_SDA2_BASE_(r2) /* 80043A9C 0003F6FC FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 80043AA0 0003F700 4C 40 13 82 */ cror 2, 0, 2 /* 80043AA4 0003F704 40 82 00 08 */ bne lbl_80043AAC /* 80043AA8 0003F708 C3 C2 83 58 */ lfs f30, lbl_80640958-_SDA2_BASE_(r2) lbl_80043AAC: /* 80043AAC 0003F70C C0 5F 04 E0 */ lfs f2, 0x4e0(r31) /* 80043AB0 0003F710 C0 02 82 B8 */ lfs f0, lbl_806408B8-_SDA2_BASE_(r2) /* 80043AB4 0003F714 C0 22 83 5C */ lfs f1, lbl_8064095C-_SDA2_BASE_(r2) /* 80043AB8 0003F718 EC 40 00 B2 */ fmuls f2, f0, f2 /* 80043ABC 0003F71C C0 02 82 DC */ lfs f0, lbl_806408DC-_SDA2_BASE_(r2) /* 80043AC0 0003F720 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80043AC4 0003F724 EF A0 08 28 */ fsubs f29, f0, f1 /* 80043AC8 0003F728 48 19 09 BD */ bl sin /* 80043ACC 0003F72C FF E0 08 18 */ frsp f31, f1 /* 80043AD0 0003F730 FC 20 E8 90 */ fmr f1, f29 /* 80043AD4 0003F734 48 19 09 B1 */ bl sin /* 80043AD8 0003F738 FC 00 08 18 */ frsp f0, f1 /* 80043ADC 0003F73C EC 1E 00 32 */ fmuls f0, f30, f0 /* 80043AE0 0003F740 EC 20 F8 24 */ fdivs f1, f0, f31 lbl_80043AE4: /* 80043AE4 0003F744 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80043AE8 0003F748 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80043AEC 0003F74C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80043AF0 0003F750 CB C1 00 20 */ lfd f30, 0x20(r1) /* 80043AF4 0003F754 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 /* 80043AF8 0003F758 CB A1 00 10 */ lfd f29, 0x10(r1) /* 80043AFC 0003F75C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80043B00 0003F760 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80043B04 0003F764 7C 08 03 A6 */ mtlr r0 /* 80043B08 0003F768 38 21 00 40 */ addi r1, r1, 0x40 /* 80043B0C 0003F76C 4E 80 00 20 */ blr .global func_80043B10 func_80043B10: /* 80043B10 0003F770 2C 04 00 02 */ cmpwi r4, 2 /* 80043B14 0003F774 41 82 00 34 */ beq lbl_80043B48 /* 80043B18 0003F778 40 80 00 14 */ bge lbl_80043B2C /* 80043B1C 0003F77C 2C 04 00 00 */ cmpwi r4, 0 /* 80043B20 0003F780 41 82 00 18 */ beq lbl_80043B38 /* 80043B24 0003F784 40 80 00 1C */ bge lbl_80043B40 /* 80043B28 0003F788 48 00 00 30 */ b lbl_80043B58 lbl_80043B2C: /* 80043B2C 0003F78C 2C 04 00 04 */ cmpwi r4, 4 /* 80043B30 0003F790 40 80 00 28 */ bge lbl_80043B58 /* 80043B34 0003F794 48 00 00 1C */ b lbl_80043B50 lbl_80043B38: /* 80043B38 0003F798 C0 22 83 60 */ lfs f1, lbl_80640960-_SDA2_BASE_(r2) /* 80043B3C 0003F79C 4E 80 00 20 */ blr lbl_80043B40: /* 80043B40 0003F7A0 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 80043B44 0003F7A4 4E 80 00 20 */ blr lbl_80043B48: /* 80043B48 0003F7A8 C0 22 83 64 */ lfs f1, lbl_80640964-_SDA2_BASE_(r2) /* 80043B4C 0003F7AC 4E 80 00 20 */ blr lbl_80043B50: /* 80043B50 0003F7B0 C0 22 83 68 */ lfs f1, lbl_80640968-_SDA2_BASE_(r2) /* 80043B54 0003F7B4 4E 80 00 20 */ blr lbl_80043B58: /* 80043B58 0003F7B8 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 80043B5C 0003F7BC 4E 80 00 20 */ blr .global func_80043B60 func_80043B60: /* 80043B60 0003F7C0 D0 23 04 E4 */ stfs f1, 0x4e4(r3) /* 80043B64 0003F7C4 4E 80 00 20 */ blr .global func_80043B68 func_80043B68: /* 80043B68 0003F7C8 94 21 FE 60 */ stwu r1, -0x1a0(r1) /* 80043B6C 0003F7CC 7C 08 02 A6 */ mflr r0 /* 80043B70 0003F7D0 90 01 01 A4 */ stw r0, 0x1a4(r1) /* 80043B74 0003F7D4 DB E1 01 90 */ stfd f31, 0x190(r1) /* 80043B78 0003F7D8 F3 E1 01 98 */ psq_st f31, 408(r1), 0, qr0 /* 80043B7C 0003F7DC DB C1 01 80 */ stfd f30, 0x180(r1) /* 80043B80 0003F7E0 F3 C1 01 88 */ psq_st f30, 392(r1), 0, qr0 /* 80043B84 0003F7E4 DB A1 01 70 */ stfd f29, 0x170(r1) /* 80043B88 0003F7E8 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 /* 80043B8C 0003F7EC DB 81 01 60 */ stfd f28, 0x160(r1) /* 80043B90 0003F7F0 F3 81 01 68 */ psq_st f28, 360(r1), 0, qr0 /* 80043B94 0003F7F4 DB 61 01 50 */ stfd f27, 0x150(r1) /* 80043B98 0003F7F8 F3 61 01 58 */ psq_st f27, 344(r1), 0, qr0 /* 80043B9C 0003F7FC FF E0 08 90 */ fmr f31, f1 /* 80043BA0 0003F800 93 E1 01 4C */ stw r31, 0x14c(r1) /* 80043BA4 0003F804 93 C1 01 48 */ stw r30, 0x148(r1) /* 80043BA8 0003F808 7C 7E 1B 78 */ mr r30, r3 /* 80043BAC 0003F80C 7F C4 F3 78 */ mr r4, r30 /* 80043BB0 0003F810 38 61 00 C8 */ addi r3, r1, 0xc8 /* 80043BB4 0003F814 93 A1 01 44 */ stw r29, 0x144(r1) /* 80043BB8 0003F818 93 81 01 40 */ stw r28, 0x140(r1) /* 80043BBC 0003F81C 4B FF C8 ED */ bl func_800404A8 /* 80043BC0 0003F820 88 1E 00 00 */ lbz r0, 0(r30) /* 80043BC4 0003F824 2C 00 00 00 */ cmpwi r0, 0 /* 80043BC8 0003F828 41 82 08 8C */ beq lbl_80044454 /* 80043BCC 0003F82C 38 7E 05 60 */ addi r3, r30, 0x560 /* 80043BD0 0003F830 4B FF C9 B1 */ bl func_80040580 /* 80043BD4 0003F834 80 1E 06 D0 */ lwz r0, 0x6d0(r30) /* 80043BD8 0003F838 2C 00 00 00 */ cmpwi r0, 0 /* 80043BDC 0003F83C 41 82 02 44 */ beq lbl_80043E20 /* 80043BE0 0003F840 38 7E 06 50 */ addi r3, r30, 0x650 /* 80043BE4 0003F844 4B FF C9 9D */ bl func_80040580 /* 80043BE8 0003F848 C0 3E 06 D8 */ lfs f1, 0x6d8(r30) /* 80043BEC 0003F84C C0 1E 06 D4 */ lfs f0, 0x6d4(r30) /* 80043BF0 0003F850 EC 21 F8 2A */ fadds f1, f1, f31 /* 80043BF4 0003F854 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80043BF8 0003F858 D0 3E 06 D8 */ stfs f1, 0x6d8(r30) /* 80043BFC 0003F85C 4C 41 13 82 */ cror 2, 1, 2 /* 80043C00 0003F860 40 82 00 10 */ bne lbl_80043C10 /* 80043C04 0003F864 38 00 00 00 */ li r0, 0 /* 80043C08 0003F868 D0 1E 06 D8 */ stfs f0, 0x6d8(r30) /* 80043C0C 0003F86C 90 1E 06 D0 */ stw r0, 0x6d0(r30) lbl_80043C10: /* 80043C10 0003F870 C0 3E 06 D8 */ lfs f1, 0x6d8(r30) /* 80043C14 0003F874 38 61 00 C8 */ addi r3, r1, 0xc8 /* 80043C18 0003F878 C0 1E 06 D4 */ lfs f0, 0x6d4(r30) /* 80043C1C 0003F87C 38 9E 05 60 */ addi r4, r30, 0x560 /* 80043C20 0003F880 38 BE 06 50 */ addi r5, r30, 0x650 /* 80043C24 0003F884 EC 21 00 24 */ fdivs f1, f1, f0 /* 80043C28 0003F888 4B FF D0 85 */ bl func_80040CAC /* 80043C2C 0003F88C 80 1E 06 D0 */ lwz r0, 0x6d0(r30) /* 80043C30 0003F890 2C 00 00 00 */ cmpwi r0, 0 /* 80043C34 0003F894 40 82 00 F4 */ bne lbl_80043D28 /* 80043C38 0003F898 8B FE 06 50 */ lbz r31, 0x650(r30) /* 80043C3C 0003F89C 81 9E 06 54 */ lwz r12, 0x654(r30) /* 80043C40 0003F8A0 C3 7E 06 58 */ lfs f27, 0x658(r30) /* 80043C44 0003F8A4 C3 9E 06 5C */ lfs f28, 0x65c(r30) /* 80043C48 0003F8A8 81 7E 06 60 */ lwz r11, 0x660(r30) /* 80043C4C 0003F8AC C3 BE 06 64 */ lfs f29, 0x664(r30) /* 80043C50 0003F8B0 C3 DE 06 68 */ lfs f30, 0x668(r30) /* 80043C54 0003F8B4 C1 BE 06 6C */ lfs f13, 0x66c(r30) /* 80043C58 0003F8B8 C1 9E 06 70 */ lfs f12, 0x670(r30) /* 80043C5C 0003F8BC C1 7E 06 74 */ lfs f11, 0x674(r30) /* 80043C60 0003F8C0 C1 5E 06 78 */ lfs f10, 0x678(r30) /* 80043C64 0003F8C4 C1 3E 06 7C */ lfs f9, 0x67c(r30) /* 80043C68 0003F8C8 C1 1E 06 80 */ lfs f8, 0x680(r30) /* 80043C6C 0003F8CC C0 FE 06 84 */ lfs f7, 0x684(r30) /* 80043C70 0003F8D0 C0 DE 06 88 */ lfs f6, 0x688(r30) /* 80043C74 0003F8D4 C0 BE 06 8C */ lfs f5, 0x68c(r30) /* 80043C78 0003F8D8 C0 9E 06 90 */ lfs f4, 0x690(r30) /* 80043C7C 0003F8DC C0 7E 06 94 */ lfs f3, 0x694(r30) /* 80043C80 0003F8E0 C0 5E 06 98 */ lfs f2, 0x698(r30) /* 80043C84 0003F8E4 C0 3E 06 9C */ lfs f1, 0x69c(r30) /* 80043C88 0003F8E8 C0 1E 06 A0 */ lfs f0, 0x6a0(r30) /* 80043C8C 0003F8EC 81 5E 06 A4 */ lwz r10, 0x6a4(r30) /* 80043C90 0003F8F0 81 3E 06 A8 */ lwz r9, 0x6a8(r30) /* 80043C94 0003F8F4 81 1E 06 AC */ lwz r8, 0x6ac(r30) /* 80043C98 0003F8F8 80 FE 06 B0 */ lwz r7, 0x6b0(r30) /* 80043C9C 0003F8FC 80 DE 06 B4 */ lwz r6, 0x6b4(r30) /* 80043CA0 0003F900 80 BE 06 B8 */ lwz r5, 0x6b8(r30) /* 80043CA4 0003F904 80 9E 06 BC */ lwz r4, 0x6bc(r30) /* 80043CA8 0003F908 80 7E 06 C0 */ lwz r3, 0x6c0(r30) /* 80043CAC 0003F90C 80 1E 06 C4 */ lwz r0, 0x6c4(r30) /* 80043CB0 0003F910 9B FE 05 60 */ stb r31, 0x560(r30) /* 80043CB4 0003F914 91 9E 05 64 */ stw r12, 0x564(r30) /* 80043CB8 0003F918 D3 7E 05 68 */ stfs f27, 0x568(r30) /* 80043CBC 0003F91C D3 9E 05 6C */ stfs f28, 0x56c(r30) /* 80043CC0 0003F920 91 7E 05 70 */ stw r11, 0x570(r30) /* 80043CC4 0003F924 D3 BE 05 74 */ stfs f29, 0x574(r30) /* 80043CC8 0003F928 D3 DE 05 78 */ stfs f30, 0x578(r30) /* 80043CCC 0003F92C D1 BE 05 7C */ stfs f13, 0x57c(r30) /* 80043CD0 0003F930 D1 9E 05 80 */ stfs f12, 0x580(r30) /* 80043CD4 0003F934 D1 7E 05 84 */ stfs f11, 0x584(r30) /* 80043CD8 0003F938 D1 5E 05 88 */ stfs f10, 0x588(r30) /* 80043CDC 0003F93C D1 3E 05 8C */ stfs f9, 0x58c(r30) /* 80043CE0 0003F940 D1 1E 05 90 */ stfs f8, 0x590(r30) /* 80043CE4 0003F944 D0 FE 05 94 */ stfs f7, 0x594(r30) /* 80043CE8 0003F948 D0 DE 05 98 */ stfs f6, 0x598(r30) /* 80043CEC 0003F94C D0 BE 05 9C */ stfs f5, 0x59c(r30) /* 80043CF0 0003F950 D0 9E 05 A0 */ stfs f4, 0x5a0(r30) /* 80043CF4 0003F954 D0 7E 05 A4 */ stfs f3, 0x5a4(r30) /* 80043CF8 0003F958 D0 5E 05 A8 */ stfs f2, 0x5a8(r30) /* 80043CFC 0003F95C D0 3E 05 AC */ stfs f1, 0x5ac(r30) /* 80043D00 0003F960 D0 1E 05 B0 */ stfs f0, 0x5b0(r30) /* 80043D04 0003F964 91 5E 05 B4 */ stw r10, 0x5b4(r30) /* 80043D08 0003F968 91 3E 05 B8 */ stw r9, 0x5b8(r30) /* 80043D0C 0003F96C 91 1E 05 BC */ stw r8, 0x5bc(r30) /* 80043D10 0003F970 90 FE 05 C0 */ stw r7, 0x5c0(r30) /* 80043D14 0003F974 90 DE 05 C4 */ stw r6, 0x5c4(r30) /* 80043D18 0003F978 90 BE 05 C8 */ stw r5, 0x5c8(r30) /* 80043D1C 0003F97C 90 9E 05 CC */ stw r4, 0x5cc(r30) /* 80043D20 0003F980 90 7E 05 D0 */ stw r3, 0x5d0(r30) /* 80043D24 0003F984 90 1E 05 D4 */ stw r0, 0x5d4(r30) lbl_80043D28: /* 80043D28 0003F988 88 01 00 C8 */ lbz r0, 0xc8(r1) /* 80043D2C 0003F98C 3B E1 00 C8 */ addi r31, r1, 0xc8 /* 80043D30 0003F990 98 1E 05 D8 */ stb r0, 0x5d8(r30) /* 80043D34 0003F994 80 01 00 CC */ lwz r0, 0xcc(r1) /* 80043D38 0003F998 90 1E 05 DC */ stw r0, 0x5dc(r30) /* 80043D3C 0003F99C C0 01 00 D0 */ lfs f0, 0xd0(r1) /* 80043D40 0003F9A0 D0 1E 05 E0 */ stfs f0, 0x5e0(r30) /* 80043D44 0003F9A4 C0 01 00 D4 */ lfs f0, 0xd4(r1) /* 80043D48 0003F9A8 D0 1E 05 E4 */ stfs f0, 0x5e4(r30) /* 80043D4C 0003F9AC 80 01 00 D8 */ lwz r0, 0xd8(r1) /* 80043D50 0003F9B0 90 1E 05 E8 */ stw r0, 0x5e8(r30) /* 80043D54 0003F9B4 C0 01 00 DC */ lfs f0, 0xdc(r1) /* 80043D58 0003F9B8 D0 1E 05 EC */ stfs f0, 0x5ec(r30) /* 80043D5C 0003F9BC C0 01 00 E0 */ lfs f0, 0xe0(r1) /* 80043D60 0003F9C0 D0 1E 05 F0 */ stfs f0, 0x5f0(r30) /* 80043D64 0003F9C4 C0 01 00 E4 */ lfs f0, 0xe4(r1) /* 80043D68 0003F9C8 D0 1E 05 F4 */ stfs f0, 0x5f4(r30) /* 80043D6C 0003F9CC C0 01 00 E8 */ lfs f0, 0xe8(r1) /* 80043D70 0003F9D0 D0 1E 05 F8 */ stfs f0, 0x5f8(r30) /* 80043D74 0003F9D4 C0 01 00 EC */ lfs f0, 0xec(r1) /* 80043D78 0003F9D8 D0 1E 05 FC */ stfs f0, 0x5fc(r30) /* 80043D7C 0003F9DC C0 01 00 F0 */ lfs f0, 0xf0(r1) /* 80043D80 0003F9E0 D0 1E 06 00 */ stfs f0, 0x600(r30) /* 80043D84 0003F9E4 C0 01 00 F4 */ lfs f0, 0xf4(r1) /* 80043D88 0003F9E8 D0 1E 06 04 */ stfs f0, 0x604(r30) /* 80043D8C 0003F9EC C0 01 00 F8 */ lfs f0, 0xf8(r1) /* 80043D90 0003F9F0 D0 1E 06 08 */ stfs f0, 0x608(r30) /* 80043D94 0003F9F4 C0 01 00 FC */ lfs f0, 0xfc(r1) /* 80043D98 0003F9F8 D0 1E 06 0C */ stfs f0, 0x60c(r30) /* 80043D9C 0003F9FC C0 01 01 00 */ lfs f0, 0x100(r1) /* 80043DA0 0003FA00 D0 1E 06 10 */ stfs f0, 0x610(r30) /* 80043DA4 0003FA04 C0 01 01 04 */ lfs f0, 0x104(r1) /* 80043DA8 0003FA08 D0 1E 06 14 */ stfs f0, 0x614(r30) /* 80043DAC 0003FA0C C0 01 01 08 */ lfs f0, 0x108(r1) /* 80043DB0 0003FA10 D0 1E 06 18 */ stfs f0, 0x618(r30) /* 80043DB4 0003FA14 C0 01 01 0C */ lfs f0, 0x10c(r1) /* 80043DB8 0003FA18 D0 1E 06 1C */ stfs f0, 0x61c(r30) /* 80043DBC 0003FA1C C0 01 01 10 */ lfs f0, 0x110(r1) /* 80043DC0 0003FA20 D0 1E 06 20 */ stfs f0, 0x620(r30) /* 80043DC4 0003FA24 C0 01 01 14 */ lfs f0, 0x114(r1) /* 80043DC8 0003FA28 D0 1E 06 24 */ stfs f0, 0x624(r30) /* 80043DCC 0003FA2C C0 01 01 18 */ lfs f0, 0x118(r1) /* 80043DD0 0003FA30 D0 1E 06 28 */ stfs f0, 0x628(r30) /* 80043DD4 0003FA34 80 01 01 1C */ lwz r0, 0x11c(r1) /* 80043DD8 0003FA38 90 1E 06 2C */ stw r0, 0x62c(r30) /* 80043DDC 0003FA3C 80 61 01 20 */ lwz r3, 0x120(r1) /* 80043DE0 0003FA40 80 01 01 24 */ lwz r0, 0x124(r1) /* 80043DE4 0003FA44 90 7E 06 30 */ stw r3, 0x630(r30) /* 80043DE8 0003FA48 90 1E 06 34 */ stw r0, 0x634(r30) /* 80043DEC 0003FA4C 80 61 01 28 */ lwz r3, 0x128(r1) /* 80043DF0 0003FA50 80 01 01 2C */ lwz r0, 0x12c(r1) /* 80043DF4 0003FA54 90 7E 06 38 */ stw r3, 0x638(r30) /* 80043DF8 0003FA58 90 1E 06 3C */ stw r0, 0x63c(r30) /* 80043DFC 0003FA5C 80 61 01 30 */ lwz r3, 0x130(r1) /* 80043E00 0003FA60 80 01 01 34 */ lwz r0, 0x134(r1) /* 80043E04 0003FA64 90 7E 06 40 */ stw r3, 0x640(r30) /* 80043E08 0003FA68 90 1E 06 44 */ stw r0, 0x644(r30) /* 80043E0C 0003FA6C 80 61 01 38 */ lwz r3, 0x138(r1) /* 80043E10 0003FA70 80 01 01 3C */ lwz r0, 0x13c(r1) /* 80043E14 0003FA74 90 7E 06 48 */ stw r3, 0x648(r30) /* 80043E18 0003FA78 90 1E 06 4C */ stw r0, 0x64c(r30) /* 80043E1C 0003FA7C 48 00 00 08 */ b lbl_80043E24 lbl_80043E20: /* 80043E20 0003FA80 3B FE 05 60 */ addi r31, r30, 0x560 lbl_80043E24: /* 80043E24 0003FA84 38 7E 04 E8 */ addi r3, r30, 0x4e8 /* 80043E28 0003FA88 4B FF C7 59 */ bl func_80040580 /* 80043E2C 0003FA8C 3B BE 00 04 */ addi r29, r30, 4 /* 80043E30 0003FA90 3B 80 00 00 */ li r28, 0 lbl_80043E34: /* 80043E34 0003FA94 81 9D 00 20 */ lwz r12, 0x20(r29) /* 80043E38 0003FA98 FC 20 F8 90 */ fmr f1, f31 /* 80043E3C 0003FA9C 7F A3 EB 78 */ mr r3, r29 /* 80043E40 0003FAA0 81 8C 00 08 */ lwz r12, 8(r12) /* 80043E44 0003FAA4 7D 89 03 A6 */ mtctr r12 /* 80043E48 0003FAA8 4E 80 04 21 */ bctrl /* 80043E4C 0003FAAC 3B 9C 00 01 */ addi r28, r28, 1 /* 80043E50 0003FAB0 3B BD 00 24 */ addi r29, r29, 0x24 /* 80043E54 0003FAB4 2C 1C 00 0C */ cmpwi r28, 0xc /* 80043E58 0003FAB8 41 80 FF DC */ blt lbl_80043E34 /* 80043E5C 0003FABC 3B BE 01 B4 */ addi r29, r30, 0x1b4 /* 80043E60 0003FAC0 3B 80 00 00 */ li r28, 0 lbl_80043E64: /* 80043E64 0003FAC4 81 9D 00 20 */ lwz r12, 0x20(r29) /* 80043E68 0003FAC8 FC 20 F8 90 */ fmr f1, f31 /* 80043E6C 0003FACC 7F A3 EB 78 */ mr r3, r29 /* 80043E70 0003FAD0 81 8C 00 08 */ lwz r12, 8(r12) /* 80043E74 0003FAD4 7D 89 03 A6 */ mtctr r12 /* 80043E78 0003FAD8 4E 80 04 21 */ bctrl /* 80043E7C 0003FADC 3B 9C 00 01 */ addi r28, r28, 1 /* 80043E80 0003FAE0 3B BD 00 60 */ addi r29, r29, 0x60 /* 80043E84 0003FAE4 2C 1C 00 05 */ cmpwi r28, 5 /* 80043E88 0003FAE8 41 80 FF DC */ blt lbl_80043E64 /* 80043E8C 0003FAEC 80 1E 01 24 */ lwz r0, 0x124(r30) /* 80043E90 0003FAF0 2C 00 00 00 */ cmpwi r0, 0 /* 80043E94 0003FAF4 40 82 00 1C */ bne lbl_80043EB0 /* 80043E98 0003FAF8 80 1E 01 48 */ lwz r0, 0x148(r30) /* 80043E9C 0003FAFC 2C 00 00 00 */ cmpwi r0, 0 /* 80043EA0 0003FB00 40 82 00 10 */ bne lbl_80043EB0 /* 80043EA4 0003FB04 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80043EA8 0003FB08 2C 00 00 00 */ cmpwi r0, 0 /* 80043EAC 0003FB0C 41 82 00 B0 */ beq lbl_80043F5C lbl_80043EB0: /* 80043EB0 0003FB10 7F C3 F3 78 */ mr r3, r30 /* 80043EB4 0003FB14 7F E4 FB 78 */ mr r4, r31 /* 80043EB8 0003FB18 4B FF D3 71 */ bl func_80041228 /* 80043EBC 0003FB1C C0 1E 04 FC */ lfs f0, 0x4fc(r30) /* 80043EC0 0003FB20 38 9E 04 FC */ addi r4, r30, 0x4fc /* 80043EC4 0003FB24 D0 01 00 B8 */ stfs f0, 0xb8(r1) /* 80043EC8 0003FB28 C0 1E 05 00 */ lfs f0, 0x500(r30) /* 80043ECC 0003FB2C D0 01 00 BC */ stfs f0, 0xbc(r1) /* 80043ED0 0003FB30 C0 1E 05 04 */ lfs f0, 0x504(r30) /* 80043ED4 0003FB34 D0 01 00 C0 */ stfs f0, 0xc0(r1) /* 80043ED8 0003FB38 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80043EDC 0003FB3C 2C 00 00 00 */ cmpwi r0, 0 /* 80043EE0 0003FB40 41 82 00 6C */ beq lbl_80043F4C /* 80043EE4 0003FB44 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80043EE8 0003FB48 40 82 00 48 */ bne lbl_80043F30 /* 80043EEC 0003FB4C 38 61 00 B8 */ addi r3, r1, 0xb8 /* 80043EF0 0003FB50 48 23 90 E1 */ bl func_8027CFD0 /* 80043EF4 0003FB54 C0 1E 04 D0 */ lfs f0, 0x4d0(r30) /* 80043EF8 0003FB58 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80043EFC 0003FB5C 40 81 00 1C */ ble lbl_80043F18 /* 80043F00 0003FB60 38 61 00 B8 */ addi r3, r1, 0xb8 /* 80043F04 0003FB64 C0 3E 04 CC */ lfs f1, 0x4cc(r30) /* 80043F08 0003FB68 7C 65 1B 78 */ mr r5, r3 /* 80043F0C 0003FB6C 38 9E 04 FC */ addi r4, r30, 0x4fc /* 80043F10 0003FB70 4B FF C1 D9 */ bl func_800400E8 /* 80043F14 0003FB74 48 00 00 1C */ b lbl_80043F30 lbl_80043F18: /* 80043F18 0003FB78 C0 1E 04 FC */ lfs f0, 0x4fc(r30) /* 80043F1C 0003FB7C D0 01 00 B8 */ stfs f0, 0xb8(r1) /* 80043F20 0003FB80 C0 1E 05 00 */ lfs f0, 0x500(r30) /* 80043F24 0003FB84 D0 01 00 BC */ stfs f0, 0xbc(r1) /* 80043F28 0003FB88 C0 1E 05 04 */ lfs f0, 0x504(r30) /* 80043F2C 0003FB8C D0 01 00 C0 */ stfs f0, 0xc0(r1) lbl_80043F30: /* 80043F30 0003FB90 38 7E 04 E8 */ addi r3, r30, 0x4e8 /* 80043F34 0003FB94 38 81 00 B8 */ addi r4, r1, 0xb8 /* 80043F38 0003FB98 4B FF CC AD */ bl func_80040BE4 /* 80043F3C 0003FB9C 80 1E 04 BC */ lwz r0, 0x4bc(r30) /* 80043F40 0003FBA0 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80043F44 0003FBA4 90 1E 04 BC */ stw r0, 0x4bc(r30) /* 80043F48 0003FBA8 48 00 00 34 */ b lbl_80043F7C lbl_80043F4C: /* 80043F4C 0003FBAC 38 7E 04 E8 */ addi r3, r30, 0x4e8 /* 80043F50 0003FBB0 38 81 00 B8 */ addi r4, r1, 0xb8 /* 80043F54 0003FBB4 4B FF CC 91 */ bl func_80040BE4 /* 80043F58 0003FBB8 48 00 00 24 */ b lbl_80043F7C lbl_80043F5C: /* 80043F5C 0003FBBC 80 1E 00 28 */ lwz r0, 0x28(r30) /* 80043F60 0003FBC0 2C 00 00 00 */ cmpwi r0, 0 /* 80043F64 0003FBC4 41 82 00 18 */ beq lbl_80043F7C /* 80043F68 0003FBC8 C0 3E 06 C8 */ lfs f1, 0x6c8(r30) /* 80043F6C 0003FBCC 7F C3 F3 78 */ mr r3, r30 /* 80043F70 0003FBD0 C0 1E 06 E8 */ lfs f0, 0x6e8(r30) /* 80043F74 0003FBD4 EC 21 00 2A */ fadds f1, f1, f0 /* 80043F78 0003FBD8 4B FF E6 85 */ bl func_800425FC lbl_80043F7C: /* 80043F7C 0003FBDC 80 1E 06 CC */ lwz r0, 0x6cc(r30) /* 80043F80 0003FBE0 2C 00 00 00 */ cmpwi r0, 0 /* 80043F84 0003FBE4 41 82 04 D0 */ beq lbl_80044454 /* 80043F88 0003FBE8 38 7F 00 14 */ addi r3, r31, 0x14 /* 80043F8C 0003FBEC 38 9E 04 FC */ addi r4, r30, 0x4fc /* 80043F90 0003FBF0 38 A1 00 38 */ addi r5, r1, 0x38 /* 80043F94 0003FBF4 48 23 8D 55 */ bl func_8027CCE8 /* 80043F98 0003FBF8 C0 81 00 38 */ lfs f4, 0x38(r1) /* 80043F9C 0003FBFC C0 22 83 50 */ lfs f1, lbl_80640950-_SDA2_BASE_(r2) /* 80043FA0 0003FC00 C0 61 00 3C */ lfs f3, 0x3c(r1) /* 80043FA4 0003FC04 C0 41 00 40 */ lfs f2, 0x40(r1) /* 80043FA8 0003FC08 FC 04 08 40 */ fcmpo cr0, f4, f1 /* 80043FAC 0003FC0C D0 81 00 A0 */ stfs f4, 0xa0(r1) /* 80043FB0 0003FC10 D0 61 00 A4 */ stfs f3, 0xa4(r1) /* 80043FB4 0003FC14 D0 41 00 A8 */ stfs f2, 0xa8(r1) /* 80043FB8 0003FC18 40 80 00 30 */ bge lbl_80043FE8 /* 80043FBC 0003FC1C C0 02 83 6C */ lfs f0, lbl_8064096C-_SDA2_BASE_(r2) /* 80043FC0 0003FC20 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80043FC4 0003FC24 40 81 00 24 */ ble lbl_80043FE8 /* 80043FC8 0003FC28 FC 03 08 40 */ fcmpo cr0, f3, f1 /* 80043FCC 0003FC2C 40 80 00 1C */ bge lbl_80043FE8 /* 80043FD0 0003FC30 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80043FD4 0003FC34 40 81 00 14 */ ble lbl_80043FE8 /* 80043FD8 0003FC38 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80043FDC 0003FC3C 40 80 00 0C */ bge lbl_80043FE8 /* 80043FE0 0003FC40 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80043FE4 0003FC44 41 81 00 0C */ bgt lbl_80043FF0 lbl_80043FE8: /* 80043FE8 0003FC48 38 00 00 00 */ li r0, 0 /* 80043FEC 0003FC4C 48 00 00 08 */ b lbl_80043FF4 lbl_80043FF0: /* 80043FF0 0003FC50 38 00 00 01 */ li r0, 1 lbl_80043FF4: /* 80043FF4 0003FC54 2C 00 00 00 */ cmpwi r0, 0 /* 80043FF8 0003FC58 40 82 00 14 */ bne lbl_8004400C /* 80043FFC 0003FC5C 38 61 00 A0 */ addi r3, r1, 0xa0 /* 80044000 0003FC60 7C 64 1B 78 */ mr r4, r3 /* 80044004 0003FC64 48 23 8D 25 */ bl func_8027CD28 /* 80044008 0003FC68 48 00 00 18 */ b lbl_80044020 lbl_8004400C: /* 8004400C 0003FC6C C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 80044010 0003FC70 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80044014 0003FC74 D0 21 00 A0 */ stfs f1, 0xa0(r1) /* 80044018 0003FC78 D0 21 00 A4 */ stfs f1, 0xa4(r1) /* 8004401C 0003FC7C D0 01 00 A8 */ stfs f0, 0xa8(r1) lbl_80044020: /* 80044020 0003FC80 3C 80 80 49 */ lis r4, lbl_80493614@ha /* 80044024 0003FC84 38 61 00 A0 */ addi r3, r1, 0xa0 /* 80044028 0003FC88 38 84 36 14 */ addi r4, r4, lbl_80493614@l /* 8004402C 0003FC8C 38 A1 00 2C */ addi r5, r1, 0x2c /* 80044030 0003FC90 48 23 8D B9 */ bl func_8027CDE8 /* 80044034 0003FC94 C0 81 00 2C */ lfs f4, 0x2c(r1) /* 80044038 0003FC98 C0 22 83 50 */ lfs f1, lbl_80640950-_SDA2_BASE_(r2) /* 8004403C 0003FC9C C0 61 00 34 */ lfs f3, 0x34(r1) /* 80044040 0003FCA0 C0 42 82 B0 */ lfs f2, lbl_806408B0-_SDA2_BASE_(r2) /* 80044044 0003FCA4 FC 04 08 40 */ fcmpo cr0, f4, f1 /* 80044048 0003FCA8 D0 81 00 94 */ stfs f4, 0x94(r1) /* 8004404C 0003FCAC D0 61 00 9C */ stfs f3, 0x9c(r1) /* 80044050 0003FCB0 D0 41 00 98 */ stfs f2, 0x98(r1) /* 80044054 0003FCB4 40 80 00 30 */ bge lbl_80044084 /* 80044058 0003FCB8 C0 02 83 6C */ lfs f0, lbl_8064096C-_SDA2_BASE_(r2) /* 8004405C 0003FCBC FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80044060 0003FCC0 40 81 00 24 */ ble lbl_80044084 /* 80044064 0003FCC4 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80044068 0003FCC8 40 80 00 1C */ bge lbl_80044084 /* 8004406C 0003FCCC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80044070 0003FCD0 40 81 00 14 */ ble lbl_80044084 /* 80044074 0003FCD4 FC 03 08 40 */ fcmpo cr0, f3, f1 /* 80044078 0003FCD8 40 80 00 0C */ bge lbl_80044084 /* 8004407C 0003FCDC FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80044080 0003FCE0 41 81 00 0C */ bgt lbl_8004408C lbl_80044084: /* 80044084 0003FCE4 38 00 00 00 */ li r0, 0 /* 80044088 0003FCE8 48 00 00 08 */ b lbl_80044090 lbl_8004408C: /* 8004408C 0003FCEC 38 00 00 01 */ li r0, 1 lbl_80044090: /* 80044090 0003FCF0 2C 00 00 00 */ cmpwi r0, 0 /* 80044094 0003FCF4 40 82 00 44 */ bne lbl_800440D8 /* 80044098 0003FCF8 38 61 00 94 */ addi r3, r1, 0x94 /* 8004409C 0003FCFC 7C 64 1B 78 */ mr r4, r3 /* 800440A0 0003FD00 48 23 8C 89 */ bl func_8027CD28 /* 800440A4 0003FD04 C0 3E 06 E4 */ lfs f1, 0x6e4(r30) /* 800440A8 0003FD08 38 61 00 94 */ addi r3, r1, 0x94 /* 800440AC 0003FD0C 38 81 00 20 */ addi r4, r1, 0x20 /* 800440B0 0003FD10 48 23 8C 5D */ bl func_8027CD0C /* 800440B4 0003FD14 C0 41 00 20 */ lfs f2, 0x20(r1) /* 800440B8 0003FD18 C0 21 00 24 */ lfs f1, 0x24(r1) /* 800440BC 0003FD1C C0 01 00 28 */ lfs f0, 0x28(r1) /* 800440C0 0003FD20 D0 41 00 AC */ stfs f2, 0xac(r1) /* 800440C4 0003FD24 D0 21 00 B0 */ stfs f1, 0xb0(r1) /* 800440C8 0003FD28 D0 01 00 B4 */ stfs f0, 0xb4(r1) /* 800440CC 0003FD2C C0 1E 06 E0 */ lfs f0, 0x6e0(r30) /* 800440D0 0003FD30 D0 01 00 B0 */ stfs f0, 0xb0(r1) /* 800440D4 0003FD34 48 00 00 14 */ b lbl_800440E8 lbl_800440D8: /* 800440D8 0003FD38 C0 02 82 B0 */ lfs f0, lbl_806408B0-_SDA2_BASE_(r2) /* 800440DC 0003FD3C D0 01 00 AC */ stfs f0, 0xac(r1) /* 800440E0 0003FD40 D0 01 00 B0 */ stfs f0, 0xb0(r1) /* 800440E4 0003FD44 D0 01 00 B4 */ stfs f0, 0xb4(r1) lbl_800440E8: /* 800440E8 0003FD48 3C 80 80 49 */ lis r4, lbl_80493614@ha /* 800440EC 0003FD4C 38 61 00 88 */ addi r3, r1, 0x88 /* 800440F0 0003FD50 38 A4 36 14 */ addi r5, r4, lbl_80493614@l /* 800440F4 0003FD54 C0 44 36 14 */ lfs f2, 0x3614(r4) /* 800440F8 0003FD58 C0 25 00 04 */ lfs f1, 4(r5) /* 800440FC 0003FD5C 38 81 00 A0 */ addi r4, r1, 0xa0 /* 80044100 0003FD60 C0 05 00 08 */ lfs f0, 8(r5) /* 80044104 0003FD64 38 A1 00 68 */ addi r5, r1, 0x68 /* 80044108 0003FD68 D0 41 00 88 */ stfs f2, 0x88(r1) /* 8004410C 0003FD6C D0 21 00 8C */ stfs f1, 0x8c(r1) /* 80044110 0003FD70 D0 01 00 90 */ stfs f0, 0x90(r1) /* 80044114 0003FD74 48 23 8C D5 */ bl func_8027CDE8 /* 80044118 0003FD78 C0 01 00 68 */ lfs f0, 0x68(r1) /* 8004411C 0003FD7C C0 42 83 50 */ lfs f2, lbl_80640950-_SDA2_BASE_(r2) /* 80044120 0003FD80 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80044124 0003FD84 40 80 00 38 */ bge lbl_8004415C /* 80044128 0003FD88 C0 22 83 6C */ lfs f1, lbl_8064096C-_SDA2_BASE_(r2) /* 8004412C 0003FD8C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80044130 0003FD90 40 81 00 2C */ ble lbl_8004415C /* 80044134 0003FD94 C0 01 00 6C */ lfs f0, 0x6c(r1) /* 80044138 0003FD98 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8004413C 0003FD9C 40 80 00 20 */ bge lbl_8004415C /* 80044140 0003FDA0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80044144 0003FDA4 40 81 00 18 */ ble lbl_8004415C /* 80044148 0003FDA8 C0 01 00 70 */ lfs f0, 0x70(r1) /* 8004414C 0003FDAC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80044150 0003FDB0 40 80 00 0C */ bge lbl_8004415C /* 80044154 0003FDB4 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80044158 0003FDB8 41 81 00 0C */ bgt lbl_80044164 lbl_8004415C: /* 8004415C 0003FDBC 38 00 00 00 */ li r0, 0 /* 80044160 0003FDC0 48 00 00 08 */ b lbl_80044168 lbl_80044164: /* 80044164 0003FDC4 38 00 00 01 */ li r0, 1 lbl_80044168: /* 80044168 0003FDC8 2C 00 00 00 */ cmpwi r0, 0 /* 8004416C 0003FDCC 41 82 00 24 */ beq lbl_80044190 /* 80044170 0003FDD0 3C 80 80 49 */ lis r4, lbl_80493608@ha /* 80044174 0003FDD4 38 64 36 08 */ addi r3, r4, lbl_80493608@l /* 80044178 0003FDD8 C0 44 36 08 */ lfs f2, 0x3608(r4) /* 8004417C 0003FDDC C0 23 00 04 */ lfs f1, 4(r3) /* 80044180 0003FDE0 C0 03 00 08 */ lfs f0, 8(r3) /* 80044184 0003FDE4 D0 41 00 88 */ stfs f2, 0x88(r1) /* 80044188 0003FDE8 D0 21 00 8C */ stfs f1, 0x8c(r1) /* 8004418C 0003FDEC D0 01 00 90 */ stfs f0, 0x90(r1) lbl_80044190: /* 80044190 0003FDF0 C0 3E 06 DC */ lfs f1, 0x6dc(r30) /* 80044194 0003FDF4 38 61 00 78 */ addi r3, r1, 0x78 /* 80044198 0003FDF8 38 81 00 A0 */ addi r4, r1, 0xa0 /* 8004419C 0003FDFC 48 23 8F 89 */ bl func_8027D124 /* 800441A0 0003FE00 C0 41 00 88 */ lfs f2, 0x88(r1) /* 800441A4 0003FE04 38 61 00 14 */ addi r3, r1, 0x14 /* 800441A8 0003FE08 C0 21 00 8C */ lfs f1, 0x8c(r1) /* 800441AC 0003FE0C 38 81 00 78 */ addi r4, r1, 0x78 /* 800441B0 0003FE10 C0 01 00 90 */ lfs f0, 0x90(r1) /* 800441B4 0003FE14 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800441B8 0003FE18 D0 21 00 18 */ stfs f1, 0x18(r1) /* 800441BC 0003FE1C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800441C0 0003FE20 48 1D F8 4D */ bl func_80223A0C /* 800441C4 0003FE24 C0 41 00 14 */ lfs f2, 0x14(r1) /* 800441C8 0003FE28 C0 21 00 18 */ lfs f1, 0x18(r1) /* 800441CC 0003FE2C C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800441D0 0003FE30 D0 41 00 88 */ stfs f2, 0x88(r1) /* 800441D4 0003FE34 D0 21 00 8C */ stfs f1, 0x8c(r1) /* 800441D8 0003FE38 D0 01 00 90 */ stfs f0, 0x90(r1) /* 800441DC 0003FE3C 88 1E 06 F8 */ lbz r0, 0x6f8(r30) /* 800441E0 0003FE40 2C 00 00 00 */ cmpwi r0, 0 /* 800441E4 0003FE44 41 82 00 38 */ beq lbl_8004421C /* 800441E8 0003FE48 C0 1E 04 FC */ lfs f0, 0x4fc(r30) /* 800441EC 0003FE4C D0 01 00 5C */ stfs f0, 0x5c(r1) /* 800441F0 0003FE50 C0 3E 05 00 */ lfs f1, 0x500(r30) /* 800441F4 0003FE54 D0 21 00 60 */ stfs f1, 0x60(r1) /* 800441F8 0003FE58 C0 1E 05 04 */ lfs f0, 0x504(r30) /* 800441FC 0003FE5C D0 01 00 64 */ stfs f0, 0x64(r1) /* 80044200 0003FE60 C0 1E 06 F4 */ lfs f0, 0x6f4(r30) /* 80044204 0003FE64 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80044208 0003FE68 40 80 00 14 */ bge lbl_8004421C /* 8004420C 0003FE6C D0 01 00 60 */ stfs f0, 0x60(r1) /* 80044210 0003FE70 38 7E 04 E8 */ addi r3, r30, 0x4e8 /* 80044214 0003FE74 38 81 00 5C */ addi r4, r1, 0x5c /* 80044218 0003FE78 4B FF C9 CD */ bl func_80040BE4 lbl_8004421C: /* 8004421C 0003FE7C 38 7E 04 FC */ addi r3, r30, 0x4fc /* 80044220 0003FE80 38 81 00 AC */ addi r4, r1, 0xac /* 80044224 0003FE84 38 A1 00 08 */ addi r5, r1, 8 /* 80044228 0003FE88 48 23 8A 9D */ bl func_8027CCC4 /* 8004422C 0003FE8C C0 21 00 08 */ lfs f1, 8(r1) /* 80044230 0003FE90 C0 A1 00 0C */ lfs f5, 0xc(r1) /* 80044234 0003FE94 C0 81 00 10 */ lfs f4, 0x10(r1) /* 80044238 0003FE98 C0 7F 00 14 */ lfs f3, 0x14(r31) /* 8004423C 0003FE9C C0 5F 00 18 */ lfs f2, 0x18(r31) /* 80044240 0003FEA0 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 80044244 0003FEA4 D0 21 00 50 */ stfs f1, 0x50(r1) /* 80044248 0003FEA8 D0 A1 00 54 */ stfs f5, 0x54(r1) /* 8004424C 0003FEAC D0 81 00 58 */ stfs f4, 0x58(r1) /* 80044250 0003FEB0 D0 61 00 44 */ stfs f3, 0x44(r1) /* 80044254 0003FEB4 D0 41 00 48 */ stfs f2, 0x48(r1) /* 80044258 0003FEB8 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 8004425C 0003FEBC 48 18 64 59 */ bl __fpclassifyf /* 80044260 0003FEC0 2C 03 00 01 */ cmpwi r3, 1 /* 80044264 0003FEC4 41 82 01 14 */ beq lbl_80044378 /* 80044268 0003FEC8 C0 21 00 50 */ lfs f1, 0x50(r1) /* 8004426C 0003FECC 48 18 64 49 */ bl __fpclassifyf /* 80044270 0003FED0 2C 03 00 02 */ cmpwi r3, 2 /* 80044274 0003FED4 41 82 01 04 */ beq lbl_80044378 /* 80044278 0003FED8 C0 21 00 54 */ lfs f1, 0x54(r1) /* 8004427C 0003FEDC 48 18 64 39 */ bl __fpclassifyf /* 80044280 0003FEE0 2C 03 00 01 */ cmpwi r3, 1 /* 80044284 0003FEE4 41 82 00 F4 */ beq lbl_80044378 /* 80044288 0003FEE8 C0 21 00 54 */ lfs f1, 0x54(r1) /* 8004428C 0003FEEC 48 18 64 29 */ bl __fpclassifyf /* 80044290 0003FEF0 2C 03 00 02 */ cmpwi r3, 2 /* 80044294 0003FEF4 41 82 00 E4 */ beq lbl_80044378 /* 80044298 0003FEF8 C0 21 00 58 */ lfs f1, 0x58(r1) /* 8004429C 0003FEFC 48 18 64 19 */ bl __fpclassifyf /* 800442A0 0003FF00 2C 03 00 01 */ cmpwi r3, 1 /* 800442A4 0003FF04 41 82 00 D4 */ beq lbl_80044378 /* 800442A8 0003FF08 C0 21 00 58 */ lfs f1, 0x58(r1) /* 800442AC 0003FF0C 48 18 64 09 */ bl __fpclassifyf /* 800442B0 0003FF10 2C 03 00 02 */ cmpwi r3, 2 /* 800442B4 0003FF14 41 82 00 C4 */ beq lbl_80044378 /* 800442B8 0003FF18 C0 21 00 44 */ lfs f1, 0x44(r1) /* 800442BC 0003FF1C 48 18 63 F9 */ bl __fpclassifyf /* 800442C0 0003FF20 2C 03 00 01 */ cmpwi r3, 1 /* 800442C4 0003FF24 41 82 00 B4 */ beq lbl_80044378 /* 800442C8 0003FF28 C0 21 00 44 */ lfs f1, 0x44(r1) /* 800442CC 0003FF2C 48 18 63 E9 */ bl __fpclassifyf /* 800442D0 0003FF30 2C 03 00 02 */ cmpwi r3, 2 /* 800442D4 0003FF34 41 82 00 A4 */ beq lbl_80044378 /* 800442D8 0003FF38 C0 21 00 48 */ lfs f1, 0x48(r1) /* 800442DC 0003FF3C 48 18 63 D9 */ bl __fpclassifyf /* 800442E0 0003FF40 2C 03 00 01 */ cmpwi r3, 1 /* 800442E4 0003FF44 41 82 00 94 */ beq lbl_80044378 /* 800442E8 0003FF48 C0 21 00 48 */ lfs f1, 0x48(r1) /* 800442EC 0003FF4C 48 18 63 C9 */ bl __fpclassifyf /* 800442F0 0003FF50 2C 03 00 02 */ cmpwi r3, 2 /* 800442F4 0003FF54 41 82 00 84 */ beq lbl_80044378 /* 800442F8 0003FF58 C0 21 00 4C */ lfs f1, 0x4c(r1) /* 800442FC 0003FF5C 48 18 63 B9 */ bl __fpclassifyf /* 80044300 0003FF60 2C 03 00 01 */ cmpwi r3, 1 /* 80044304 0003FF64 41 82 00 74 */ beq lbl_80044378 /* 80044308 0003FF68 C0 21 00 4C */ lfs f1, 0x4c(r1) /* 8004430C 0003FF6C 48 18 63 A9 */ bl __fpclassifyf /* 80044310 0003FF70 2C 03 00 02 */ cmpwi r3, 2 /* 80044314 0003FF74 41 82 00 64 */ beq lbl_80044378 /* 80044318 0003FF78 C0 21 00 88 */ lfs f1, 0x88(r1) /* 8004431C 0003FF7C 48 18 63 99 */ bl __fpclassifyf /* 80044320 0003FF80 2C 03 00 01 */ cmpwi r3, 1 /* 80044324 0003FF84 41 82 00 54 */ beq lbl_80044378 /* 80044328 0003FF88 C0 21 00 88 */ lfs f1, 0x88(r1) /* 8004432C 0003FF8C 48 18 63 89 */ bl __fpclassifyf /* 80044330 0003FF90 2C 03 00 02 */ cmpwi r3, 2 /* 80044334 0003FF94 41 82 00 44 */ beq lbl_80044378 /* 80044338 0003FF98 C0 21 00 8C */ lfs f1, 0x8c(r1) /* 8004433C 0003FF9C 48 18 63 79 */ bl __fpclassifyf /* 80044340 0003FFA0 2C 03 00 01 */ cmpwi r3, 1 /* 80044344 0003FFA4 41 82 00 34 */ beq lbl_80044378 /* 80044348 0003FFA8 C0 21 00 8C */ lfs f1, 0x8c(r1) /* 8004434C 0003FFAC 48 18 63 69 */ bl __fpclassifyf /* 80044350 0003FFB0 2C 03 00 02 */ cmpwi r3, 2 /* 80044354 0003FFB4 41 82 00 24 */ beq lbl_80044378 /* 80044358 0003FFB8 C0 21 00 90 */ lfs f1, 0x90(r1) /* 8004435C 0003FFBC 48 18 63 59 */ bl __fpclassifyf /* 80044360 0003FFC0 2C 03 00 01 */ cmpwi r3, 1 /* 80044364 0003FFC4 41 82 00 14 */ beq lbl_80044378 /* 80044368 0003FFC8 C0 21 00 90 */ lfs f1, 0x90(r1) /* 8004436C 0003FFCC 48 18 63 49 */ bl __fpclassifyf /* 80044370 0003FFD0 2C 03 00 02 */ cmpwi r3, 2 /* 80044374 0003FFD4 40 82 00 38 */ bne lbl_800443AC lbl_80044378: /* 80044378 0003FFD8 C0 22 82 B0 */ lfs f1, lbl_806408B0-_SDA2_BASE_(r2) /* 8004437C 0003FFDC C0 42 82 CC */ lfs f2, lbl_806408CC-_SDA2_BASE_(r2) /* 80044380 0003FFE0 C0 62 83 70 */ lfs f3, lbl_80640970-_SDA2_BASE_(r2) /* 80044384 0003FFE4 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80044388 0003FFE8 D0 61 00 50 */ stfs f3, 0x50(r1) /* 8004438C 0003FFEC D0 41 00 54 */ stfs f2, 0x54(r1) /* 80044390 0003FFF0 D0 21 00 58 */ stfs f1, 0x58(r1) /* 80044394 0003FFF4 D0 21 00 44 */ stfs f1, 0x44(r1) /* 80044398 0003FFF8 D0 41 00 48 */ stfs f2, 0x48(r1) /* 8004439C 0003FFFC D0 21 00 4C */ stfs f1, 0x4c(r1) /* 800443A0 00040000 D0 21 00 88 */ stfs f1, 0x88(r1) /* 800443A4 00040004 D0 01 00 8C */ stfs f0, 0x8c(r1) /* 800443A8 00040008 D0 21 00 90 */ stfs f1, 0x90(r1) lbl_800443AC: /* 800443AC 0004000C C0 3E 04 E0 */ lfs f1, 0x4e0(r30) /* 800443B0 00040010 48 18 63 05 */ bl __fpclassifyf /* 800443B4 00040014 2C 03 00 01 */ cmpwi r3, 1 /* 800443B8 00040018 41 82 00 14 */ beq lbl_800443CC /* 800443BC 0004001C C0 3E 04 E0 */ lfs f1, 0x4e0(r30) /* 800443C0 00040020 48 18 62 F5 */ bl __fpclassifyf /* 800443C4 00040024 2C 03 00 02 */ cmpwi r3, 2 /* 800443C8 00040028 40 82 00 0C */ bne lbl_800443D4 lbl_800443CC: /* 800443CC 0004002C C0 02 82 C8 */ lfs f0, lbl_806408C8-_SDA2_BASE_(r2) /* 800443D0 00040030 D0 1E 04 E0 */ stfs f0, 0x4e0(r30) lbl_800443D4: /* 800443D4 00040034 80 7E 06 CC */ lwz r3, 0x6cc(r30) /* 800443D8 00040038 C0 01 00 50 */ lfs f0, 0x50(r1) /* 800443DC 0004003C C0 21 00 54 */ lfs f1, 0x54(r1) /* 800443E0 00040040 D0 03 01 AC */ stfs f0, 0x1ac(r3) /* 800443E4 00040044 C0 01 00 58 */ lfs f0, 0x58(r1) /* 800443E8 00040048 D0 23 01 B0 */ stfs f1, 0x1b0(r3) /* 800443EC 0004004C C0 41 00 44 */ lfs f2, 0x44(r1) /* 800443F0 00040050 D0 03 01 B4 */ stfs f0, 0x1b4(r3) /* 800443F4 00040054 C0 21 00 48 */ lfs f1, 0x48(r1) /* 800443F8 00040058 C0 61 00 88 */ lfs f3, 0x88(r1) /* 800443FC 0004005C C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80044400 00040060 D0 63 01 B8 */ stfs f3, 0x1b8(r3) /* 80044404 00040064 C0 61 00 8C */ lfs f3, 0x8c(r1) /* 80044408 00040068 D0 63 01 BC */ stfs f3, 0x1bc(r3) /* 8004440C 0004006C C0 61 00 90 */ lfs f3, 0x90(r1) /* 80044410 00040070 D0 63 01 C0 */ stfs f3, 0x1c0(r3) /* 80044414 00040074 D0 43 01 C4 */ stfs f2, 0x1c4(r3) /* 80044418 00040078 D0 23 01 C8 */ stfs f1, 0x1c8(r3) /* 8004441C 0004007C D0 03 01 CC */ stfs f0, 0x1cc(r3) /* 80044420 00040080 80 03 01 04 */ lwz r0, 0x104(r3) /* 80044424 00040084 60 00 00 30 */ ori r0, r0, 0x30 /* 80044428 00040088 90 03 01 04 */ stw r0, 0x104(r3) /* 8004442C 0004008C 80 7E 06 CC */ lwz r3, 0x6cc(r30) /* 80044430 00040090 C0 1E 04 E0 */ lfs f0, 0x4e0(r30) /* 80044434 00040094 80 03 01 04 */ lwz r0, 0x104(r3) /* 80044438 00040098 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 8004443C 0004009C 28 00 00 01 */ cmplwi r0, 1 /* 80044440 000400A0 40 82 00 14 */ bne lbl_80044454 /* 80044444 000400A4 D0 03 01 68 */ stfs f0, 0x168(r3) /* 80044448 000400A8 80 03 01 04 */ lwz r0, 0x104(r3) /* 8004444C 000400AC 60 00 00 08 */ ori r0, r0, 8 /* 80044450 000400B0 90 03 01 04 */ stw r0, 0x104(r3) lbl_80044454: /* 80044454 000400B4 E3 E1 01 98 */ psq_l f31, 408(r1), 0, qr0 /* 80044458 000400B8 CB E1 01 90 */ lfd f31, 0x190(r1) /* 8004445C 000400BC E3 C1 01 88 */ psq_l f30, 392(r1), 0, qr0 /* 80044460 000400C0 CB C1 01 80 */ lfd f30, 0x180(r1) /* 80044464 000400C4 E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 /* 80044468 000400C8 CB A1 01 70 */ lfd f29, 0x170(r1) /* 8004446C 000400CC E3 81 01 68 */ psq_l f28, 360(r1), 0, qr0 /* 80044470 000400D0 CB 81 01 60 */ lfd f28, 0x160(r1) /* 80044474 000400D4 E3 61 01 58 */ psq_l f27, 344(r1), 0, qr0 /* 80044478 000400D8 CB 61 01 50 */ lfd f27, 0x150(r1) /* 8004447C 000400DC 83 E1 01 4C */ lwz r31, 0x14c(r1) /* 80044480 000400E0 83 C1 01 48 */ lwz r30, 0x148(r1) /* 80044484 000400E4 83 A1 01 44 */ lwz r29, 0x144(r1) /* 80044488 000400E8 80 01 01 A4 */ lwz r0, 0x1a4(r1) /* 8004448C 000400EC 83 81 01 40 */ lwz r28, 0x140(r1) /* 80044490 000400F0 7C 08 03 A6 */ mtlr r0 /* 80044494 000400F4 38 21 01 A0 */ addi r1, r1, 0x1a0 /* 80044498 000400F8 4E 80 00 20 */ blr .global func_8004449C func_8004449C: /* 8004449C 000400FC 4E 80 00 20 */ blr .global func_800444A0 func_800444A0: /* 800444A0 00040100 38 00 00 02 */ li r0, 2 /* 800444A4 00040104 38 A0 00 00 */ li r5, 0 /* 800444A8 00040108 38 C0 00 00 */ li r6, 0 /* 800444AC 0004010C 38 80 00 01 */ li r4, 1 /* 800444B0 00040110 7C 09 03 A6 */ mtctr r0 lbl_800444B4: /* 800444B4 00040114 80 03 00 04 */ lwz r0, 4(r3) /* 800444B8 00040118 2C 00 00 00 */ cmpwi r0, 0 /* 800444BC 0004011C 41 82 00 0C */ beq lbl_800444C8 /* 800444C0 00040120 7C 80 30 30 */ slw r0, r4, r6 /* 800444C4 00040124 7C A5 03 78 */ or r5, r5, r0 lbl_800444C8: /* 800444C8 00040128 80 03 00 28 */ lwz r0, 0x28(r3) /* 800444CC 0004012C 38 C6 00 01 */ addi r6, r6, 1 /* 800444D0 00040130 2C 00 00 00 */ cmpwi r0, 0 /* 800444D4 00040134 41 82 00 0C */ beq lbl_800444E0 /* 800444D8 00040138 7C 80 30 30 */ slw r0, r4, r6 /* 800444DC 0004013C 7C A5 03 78 */ or r5, r5, r0 lbl_800444E0: /* 800444E0 00040140 80 03 00 4C */ lwz r0, 0x4c(r3) /* 800444E4 00040144 38 C6 00 01 */ addi r6, r6, 1 /* 800444E8 00040148 2C 00 00 00 */ cmpwi r0, 0 /* 800444EC 0004014C 41 82 00 0C */ beq lbl_800444F8 /* 800444F0 00040150 7C 80 30 30 */ slw r0, r4, r6 /* 800444F4 00040154 7C A5 03 78 */ or r5, r5, r0 lbl_800444F8: /* 800444F8 00040158 80 03 00 70 */ lwz r0, 0x70(r3) /* 800444FC 0004015C 38 C6 00 01 */ addi r6, r6, 1 /* 80044500 00040160 2C 00 00 00 */ cmpwi r0, 0 /* 80044504 00040164 41 82 00 0C */ beq lbl_80044510 /* 80044508 00040168 7C 80 30 30 */ slw r0, r4, r6 /* 8004450C 0004016C 7C A5 03 78 */ or r5, r5, r0 lbl_80044510: /* 80044510 00040170 80 03 00 94 */ lwz r0, 0x94(r3) /* 80044514 00040174 38 C6 00 01 */ addi r6, r6, 1 /* 80044518 00040178 2C 00 00 00 */ cmpwi r0, 0 /* 8004451C 0004017C 41 82 00 0C */ beq lbl_80044528 /* 80044520 00040180 7C 80 30 30 */ slw r0, r4, r6 /* 80044524 00040184 7C A5 03 78 */ or r5, r5, r0 lbl_80044528: /* 80044528 00040188 80 03 00 B8 */ lwz r0, 0xb8(r3) /* 8004452C 0004018C 38 C6 00 01 */ addi r6, r6, 1 /* 80044530 00040190 2C 00 00 00 */ cmpwi r0, 0 /* 80044534 00040194 41 82 00 0C */ beq lbl_80044540 /* 80044538 00040198 7C 80 30 30 */ slw r0, r4, r6 /* 8004453C 0004019C 7C A5 03 78 */ or r5, r5, r0 lbl_80044540: /* 80044540 000401A0 38 63 00 D8 */ addi r3, r3, 0xd8 /* 80044544 000401A4 38 C6 00 01 */ addi r6, r6, 1 /* 80044548 000401A8 42 00 FF 6C */ bdnz lbl_800444B4 /* 8004454C 000401AC 7C A3 2B 78 */ mr r3, r5 /* 80044550 000401B0 4E 80 00 20 */ blr .global func_80044554 func_80044554: /* 80044554 000401B4 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80044558 000401B8 7C 08 02 A6 */ mflr r0 /* 8004455C 000401BC 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80044560 000401C0 DB E1 00 90 */ stfd f31, 0x90(r1) /* 80044564 000401C4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80044568 000401C8 93 E1 00 8C */ stw r31, 0x8c(r1) /* 8004456C 000401CC 93 C1 00 88 */ stw r30, 0x88(r1) /* 80044570 000401D0 7C 7E 1B 78 */ mr r30, r3 /* 80044574 000401D4 93 A1 00 84 */ stw r29, 0x84(r1) /* 80044578 000401D8 7C BD 2B 78 */ mr r29, r5 /* 8004457C 000401DC 93 81 00 80 */ stw r28, 0x80(r1) /* 80044580 000401E0 7C 9C 23 78 */ mr r28, r4 /* 80044584 000401E4 80 03 06 CC */ lwz r0, 0x6cc(r3) /* 80044588 000401E8 2C 00 00 00 */ cmpwi r0, 0 /* 8004458C 000401EC 40 82 00 0C */ bne lbl_80044598 /* 80044590 000401F0 38 60 00 00 */ li r3, 0 /* 80044594 000401F4 48 00 01 B4 */ b lbl_80044748 lbl_80044598: /* 80044598 000401F8 4B FE EA F1 */ bl func_80033088 /* 8004459C 000401FC 2C 03 00 00 */ cmpwi r3, 0 /* 800445A0 00040200 40 82 00 0C */ bne lbl_800445AC /* 800445A4 00040204 38 60 00 00 */ li r3, 0 /* 800445A8 00040208 48 00 01 A0 */ b lbl_80044748 lbl_800445AC: /* 800445AC 0004020C 80 9E 04 B4 */ lwz r4, 0x4b4(r30) /* 800445B0 00040210 4B FE F5 E9 */ bl func_80033B98 /* 800445B4 00040214 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 800445B8 00040218 7C 7F 1B 78 */ mr r31, r3 /* 800445BC 0004021C 28 00 FF FF */ cmplwi r0, 0xffff /* 800445C0 00040220 41 82 00 30 */ beq lbl_800445F0 /* 800445C4 00040224 38 60 00 02 */ li r3, 2 /* 800445C8 00040228 48 1F 6A 91 */ bl func_8023B058 /* 800445CC 0004022C 80 03 00 20 */ lwz r0, 0x20(r3) /* 800445D0 00040230 2C 00 00 01 */ cmpwi r0, 1 /* 800445D4 00040234 40 82 00 1C */ bne lbl_800445F0 /* 800445D8 00040238 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 800445DC 0004023C 38 A1 00 50 */ addi r5, r1, 0x50 /* 800445E0 00040240 38 C1 00 54 */ addi r6, r1, 0x54 /* 800445E4 00040244 38 E1 00 58 */ addi r7, r1, 0x58 /* 800445E8 00040248 39 01 00 5C */ addi r8, r1, 0x5c /* 800445EC 0004024C 48 1F E5 9D */ bl func_80242B88 lbl_800445F0: /* 800445F0 00040250 C0 62 82 B0 */ lfs f3, lbl_806408B0-_SDA2_BASE_(r2) /* 800445F4 00040254 3C 00 43 30 */ lis r0, 0x4330 /* 800445F8 00040258 80 ED A3 D8 */ lwz r7, lbl_8063F698-_SDA_BASE_(r13) /* 800445FC 0004025C 7F 84 E3 78 */ mr r4, r28 /* 80044600 00040260 D0 61 00 50 */ stfs f3, 0x50(r1) /* 80044604 00040264 38 61 00 2C */ addi r3, r1, 0x2c /* 80044608 00040268 C8 42 82 C0 */ lfd f2, lbl_806408C0-_SDA2_BASE_(r2) /* 8004460C 0004026C 38 A1 00 08 */ addi r5, r1, 8 /* 80044610 00040270 D0 61 00 54 */ stfs f3, 0x54(r1) /* 80044614 00040274 C0 02 82 BC */ lfs f0, lbl_806408BC-_SDA2_BASE_(r2) /* 80044618 00040278 A0 C7 00 04 */ lhz r6, 4(r7) /* 8004461C 0004027C 90 01 00 68 */ stw r0, 0x68(r1) /* 80044620 00040280 90 C1 00 6C */ stw r6, 0x6c(r1) /* 80044624 00040284 C8 21 00 68 */ lfd f1, 0x68(r1) /* 80044628 00040288 90 01 00 70 */ stw r0, 0x70(r1) /* 8004462C 0004028C EC 21 10 28 */ fsubs f1, f1, f2 /* 80044630 00040290 D0 21 00 58 */ stfs f1, 0x58(r1) /* 80044634 00040294 A0 07 00 06 */ lhz r0, 6(r7) /* 80044638 00040298 90 01 00 74 */ stw r0, 0x74(r1) /* 8004463C 0004029C C8 21 00 70 */ lfd f1, 0x70(r1) /* 80044640 000402A0 D0 61 00 60 */ stfs f3, 0x60(r1) /* 80044644 000402A4 EC 21 10 28 */ fsubs f1, f1, f2 /* 80044648 000402A8 D0 01 00 64 */ stfs f0, 0x64(r1) /* 8004464C 000402AC D0 21 00 5C */ stfs f1, 0x5c(r1) /* 80044650 000402B0 80 DE 06 CC */ lwz r6, 0x6cc(r30) /* 80044654 000402B4 C0 26 02 10 */ lfs f1, 0x210(r6) /* 80044658 000402B8 3B E6 01 4C */ addi r31, r6, 0x14c /* 8004465C 000402BC C0 06 02 20 */ lfs f0, 0x220(r6) /* 80044660 000402C0 3B C6 01 D4 */ addi r30, r6, 0x1d4 /* 80044664 000402C4 C0 86 02 30 */ lfs f4, 0x230(r6) /* 80044668 000402C8 D0 21 00 20 */ stfs f1, 0x20(r1) /* 8004466C 000402CC D0 21 00 2C */ stfs f1, 0x2c(r1) /* 80044670 000402D0 D0 01 00 30 */ stfs f0, 0x30(r1) /* 80044674 000402D4 D0 81 00 34 */ stfs f4, 0x34(r1) /* 80044678 000402D8 C0 66 02 0C */ lfs f3, 0x20c(r6) /* 8004467C 000402DC C0 46 02 1C */ lfs f2, 0x21c(r6) /* 80044680 000402E0 C0 26 02 2C */ lfs f1, 0x22c(r6) /* 80044684 000402E4 D0 01 00 24 */ stfs f0, 0x24(r1) /* 80044688 000402E8 D0 61 00 44 */ stfs f3, 0x44(r1) /* 8004468C 000402EC D0 41 00 48 */ stfs f2, 0x48(r1) /* 80044690 000402F0 D0 21 00 4C */ stfs f1, 0x4c(r1) /* 80044694 000402F4 C0 06 01 64 */ lfs f0, 0x164(r6) /* 80044698 000402F8 D0 81 00 28 */ stfs f4, 0x28(r1) /* 8004469C 000402FC FF E0 00 50 */ fneg f31, f0 /* 800446A0 00040300 D0 61 00 14 */ stfs f3, 0x14(r1) /* 800446A4 00040304 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800446A8 00040308 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800446AC 0004030C 48 23 86 3D */ bl func_8027CCE8 /* 800446B0 00040310 C0 41 00 08 */ lfs f2, 8(r1) /* 800446B4 00040314 38 61 00 44 */ addi r3, r1, 0x44 /* 800446B8 00040318 C0 21 00 0C */ lfs f1, 0xc(r1) /* 800446BC 0004031C 38 81 00 38 */ addi r4, r1, 0x38 /* 800446C0 00040320 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800446C4 00040324 D0 41 00 38 */ stfs f2, 0x38(r1) /* 800446C8 00040328 D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800446CC 0004032C D0 01 00 40 */ stfs f0, 0x40(r1) /* 800446D0 00040330 48 23 86 F9 */ bl PSQUATDotProduct /* 800446D4 00040334 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 800446D8 00040338 4C 40 13 82 */ cror 2, 0, 2 /* 800446DC 0004033C 40 82 00 40 */ bne lbl_8004471C /* 800446E0 00040340 C0 21 00 58 */ lfs f1, 0x58(r1) /* 800446E4 00040344 38 60 00 00 */ li r3, 0 /* 800446E8 00040348 C0 01 00 50 */ lfs f0, 0x50(r1) /* 800446EC 0004034C C0 62 82 B8 */ lfs f3, lbl_806408B8-_SDA2_BASE_(r2) /* 800446F0 00040350 EC 21 00 28 */ fsubs f1, f1, f0 /* 800446F4 00040354 C0 02 82 E0 */ lfs f0, lbl_806408E0-_SDA2_BASE_(r2) /* 800446F8 00040358 EC 23 00 72 */ fmuls f1, f3, f1 /* 800446FC 0004035C D0 3D 00 00 */ stfs f1, 0(r29) /* 80044700 00040360 C0 41 00 5C */ lfs f2, 0x5c(r1) /* 80044704 00040364 C0 21 00 54 */ lfs f1, 0x54(r1) /* 80044708 00040368 EC 22 08 28 */ fsubs f1, f2, f1 /* 8004470C 0004036C D0 1D 00 08 */ stfs f0, 8(r29) /* 80044710 00040370 EC 03 00 72 */ fmuls f0, f3, f1 /* 80044714 00040374 D0 1D 00 04 */ stfs f0, 4(r29) /* 80044718 00040378 48 00 00 30 */ b lbl_80044748 lbl_8004471C: /* 8004471C 0004037C C0 3C 00 00 */ lfs f1, 0(r28) /* 80044720 00040380 7F C3 F3 78 */ mr r3, r30 /* 80044724 00040384 C0 5C 00 04 */ lfs f2, 4(r28) /* 80044728 00040388 7F E4 FB 78 */ mr r4, r31 /* 8004472C 0004038C C0 7C 00 08 */ lfs f3, 8(r28) /* 80044730 00040390 7F A6 EB 78 */ mr r6, r29 /* 80044734 00040394 38 A1 00 50 */ addi r5, r1, 0x50 /* 80044738 00040398 38 FD 00 04 */ addi r7, r29, 4 /* 8004473C 0004039C 39 1D 00 08 */ addi r8, r29, 8 /* 80044740 000403A0 48 24 20 CD */ bl func_8028680C /* 80044744 000403A4 38 60 00 01 */ li r3, 1 lbl_80044748: /* 80044748 000403A8 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8004474C 000403AC 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80044750 000403B0 CB E1 00 90 */ lfd f31, 0x90(r1) /* 80044754 000403B4 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 80044758 000403B8 83 C1 00 88 */ lwz r30, 0x88(r1) /* 8004475C 000403BC 83 A1 00 84 */ lwz r29, 0x84(r1) /* 80044760 000403C0 83 81 00 80 */ lwz r28, 0x80(r1) /* 80044764 000403C4 7C 08 03 A6 */ mtlr r0 /* 80044768 000403C8 38 21 00 A0 */ addi r1, r1, 0xa0 /* 8004476C 000403CC 4E 80 00 20 */ blr .global func_80044770 func_80044770: /* 80044770 000403D0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044774 000403D4 7C 08 02 A6 */ mflr r0 /* 80044778 000403D8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004477C 000403DC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80044780 000403E0 7C 9F 23 78 */ mr r31, r4 /* 80044784 000403E4 93 C1 00 08 */ stw r30, 8(r1) /* 80044788 000403E8 7C 7E 1B 78 */ mr r30, r3 /* 8004478C 000403EC 38 63 04 E8 */ addi r3, r3, 0x4e8 /* 80044790 000403F0 4B FF C6 B9 */ bl func_80040E48 /* 80044794 000403F4 7F E4 FB 78 */ mr r4, r31 /* 80044798 000403F8 38 7E 05 60 */ addi r3, r30, 0x560 /* 8004479C 000403FC 4B FF C6 AD */ bl func_80040E48 /* 800447A0 00040400 7F E4 FB 78 */ mr r4, r31 /* 800447A4 00040404 38 7E 06 50 */ addi r3, r30, 0x650 /* 800447A8 00040408 4B FF C6 A1 */ bl func_80040E48 /* 800447AC 0004040C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800447B0 00040410 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800447B4 00040414 83 C1 00 08 */ lwz r30, 8(r1) /* 800447B8 00040418 7C 08 03 A6 */ mtlr r0 /* 800447BC 0004041C 38 21 00 10 */ addi r1, r1, 0x10 /* 800447C0 00040420 4E 80 00 20 */ blr .global func_800447C4 func_800447C4: /* 800447C4 00040424 38 A0 00 01 */ li r5, 1 /* 800447C8 00040428 38 6D 97 D0 */ addi r3, r13, lbl_8063EA90-_SDA_BASE_ /* 800447CC 0004042C 38 80 00 04 */ li r4, 4 /* 800447D0 00040430 38 00 00 00 */ li r0, 0 /* 800447D4 00040434 98 AD 97 D0 */ stb r5, lbl_8063EA90-_SDA_BASE_(r13) /* 800447D8 00040438 B0 83 00 02 */ sth r4, 2(r3) /* 800447DC 0004043C 98 03 00 04 */ stb r0, 4(r3) /* 800447E0 00040440 4E 80 00 20 */ blr .global func_800447E4 func_800447E4: /* 800447E4 00040444 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800447E8 00040448 7C 08 02 A6 */ mflr r0 /* 800447EC 0004044C 90 01 00 14 */ stw r0, 0x14(r1) /* 800447F0 00040450 80 6D 97 E8 */ lwz r3, lbl_8063EAA8-_SDA_BASE_(r13) /* 800447F4 00040454 2C 03 00 00 */ cmpwi r3, 0 /* 800447F8 00040458 41 82 00 08 */ beq lbl_80044800 /* 800447FC 0004045C 48 19 62 BD */ bl func_801DAAB8 lbl_80044800: /* 80044800 00040460 38 60 0E C0 */ li r3, 0xec0 /* 80044804 00040464 48 19 62 2D */ bl func_801DAA30 /* 80044808 00040468 2C 03 00 00 */ cmpwi r3, 0 /* 8004480C 0004046C 41 82 00 08 */ beq lbl_80044814 /* 80044810 00040470 48 00 00 89 */ bl func_80044898 lbl_80044814: /* 80044814 00040474 3C 80 80 04 */ lis r4, lbl_80044850@ha /* 80044818 00040478 3C A0 80 04 */ lis r5, lbl_80044884@ha /* 8004481C 0004047C 90 6D 97 E8 */ stw r3, lbl_8063EAA8-_SDA_BASE_(r13) /* 80044820 00040480 38 84 48 50 */ addi r4, r4, lbl_80044850@l /* 80044824 00040484 80 6D A4 B8 */ lwz r3, lbl_8063F778-_SDA_BASE_(r13) /* 80044828 00040488 38 A5 48 84 */ addi r5, r5, lbl_80044884@l /* 8004482C 0004048C 38 C0 00 03 */ li r6, 3 /* 80044830 00040490 38 E0 00 0C */ li r7, 0xc /* 80044834 00040494 48 1F A3 25 */ bl func_8023EB58 /* 80044838 00040498 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004483C 0004049C 7C 08 03 A6 */ mtlr r0 /* 80044840 000404A0 38 21 00 10 */ addi r1, r1, 0x10 /* 80044844 000404A4 4E 80 00 20 */ blr .global func_80044848 func_80044848: /* 80044848 000404A8 80 6D 97 E8 */ lwz r3, lbl_8063EAA8-_SDA_BASE_(r13) /* 8004484C 000404AC 4E 80 00 20 */ blr lbl_80044850: /* 80044850 000404B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044854 000404B4 7C 08 02 A6 */ mflr r0 /* 80044858 000404B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004485C 000404BC 80 0D 97 E8 */ lwz r0, lbl_8063EAA8-_SDA_BASE_(r13) /* 80044860 000404C0 2C 00 00 00 */ cmpwi r0, 0 /* 80044864 000404C4 41 82 00 10 */ beq lbl_80044874 /* 80044868 000404C8 4B FC 2B 35 */ bl func_8000739C /* 8004486C 000404CC 80 6D 97 E8 */ lwz r3, lbl_8063EAA8-_SDA_BASE_(r13) /* 80044870 000404D0 48 00 00 99 */ bl func_80044908 lbl_80044874: /* 80044874 000404D4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044878 000404D8 7C 08 03 A6 */ mtlr r0 /* 8004487C 000404DC 38 21 00 10 */ addi r1, r1, 0x10 /* 80044880 000404E0 4E 80 00 20 */ blr lbl_80044884: /* 80044884 000404E4 80 6D 97 E8 */ lwz r3, lbl_8063EAA8-_SDA_BASE_(r13) /* 80044888 000404E8 2C 03 00 00 */ cmpwi r3, 0 /* 8004488C 000404EC 4D 82 00 20 */ beqlr /* 80044890 000404F0 48 00 01 00 */ b lbl_80044990 /* 80044894 000404F4 4E 80 00 20 */ blr .global func_80044898 func_80044898: /* 80044898 000404F8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004489C 000404FC 7C 08 02 A6 */ mflr r0 /* 800448A0 00040500 90 01 00 24 */ stw r0, 0x24(r1) /* 800448A4 00040504 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800448A8 00040508 93 C1 00 18 */ stw r30, 0x18(r1) /* 800448AC 0004050C 3B C3 07 80 */ addi r30, r3, 0x780 /* 800448B0 00040510 93 A1 00 14 */ stw r29, 0x14(r1) /* 800448B4 00040514 7C 7D 1B 78 */ mr r29, r3 /* 800448B8 00040518 7F BF EB 78 */ mr r31, r29 lbl_800448BC: /* 800448BC 0004051C 7F E3 FB 78 */ mr r3, r31 /* 800448C0 00040520 48 00 02 A5 */ bl func_80044B64 /* 800448C4 00040524 3B FF 00 F0 */ addi r31, r31, 0xf0 /* 800448C8 00040528 7C 1F F0 40 */ cmplw r31, r30 /* 800448CC 0004052C 41 80 FF F0 */ blt lbl_800448BC /* 800448D0 00040530 3B FD 0E C0 */ addi r31, r29, 0xec0 lbl_800448D4: /* 800448D4 00040534 7F C3 F3 78 */ mr r3, r30 /* 800448D8 00040538 48 00 01 2D */ bl func_80044A04 /* 800448DC 0004053C 3B DE 00 E8 */ addi r30, r30, 0xe8 /* 800448E0 00040540 7C 1E F8 40 */ cmplw r30, r31 /* 800448E4 00040544 41 80 FF F0 */ blt lbl_800448D4 /* 800448E8 00040548 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800448EC 0004054C 7F A3 EB 78 */ mr r3, r29 /* 800448F0 00040550 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800448F4 00040554 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800448F8 00040558 80 01 00 24 */ lwz r0, 0x24(r1) /* 800448FC 0004055C 7C 08 03 A6 */ mtlr r0 /* 80044900 00040560 38 21 00 20 */ addi r1, r1, 0x20 /* 80044904 00040564 4E 80 00 20 */ blr .global func_80044908 func_80044908: /* 80044908 00040568 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004490C 0004056C 7C 08 02 A6 */ mflr r0 /* 80044910 00040570 90 01 00 24 */ stw r0, 0x24(r1) /* 80044914 00040574 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80044918 00040578 FF E0 08 90 */ fmr f31, f1 /* 8004491C 0004057C 93 E1 00 14 */ stw r31, 0x14(r1) /* 80044920 00040580 3B E3 0E C0 */ addi r31, r3, 0xec0 /* 80044924 00040584 93 C1 00 10 */ stw r30, 0x10(r1) /* 80044928 00040588 3B C3 07 80 */ addi r30, r3, 0x780 /* 8004492C 0004058C 93 A1 00 0C */ stw r29, 0xc(r1) /* 80044930 00040590 7C 7D 1B 78 */ mr r29, r3 /* 80044934 00040594 48 00 00 14 */ b lbl_80044948 lbl_80044938: /* 80044938 00040598 FC 20 F8 90 */ fmr f1, f31 /* 8004493C 0004059C 7F C3 F3 78 */ mr r3, r30 /* 80044940 000405A0 48 00 01 69 */ bl func_80044AA8 /* 80044944 000405A4 3B DE 00 E8 */ addi r30, r30, 0xe8 lbl_80044948: /* 80044948 000405A8 7C 1E F8 40 */ cmplw r30, r31 /* 8004494C 000405AC 40 82 FF EC */ bne lbl_80044938 /* 80044950 000405B0 3B FD 07 80 */ addi r31, r29, 0x780 /* 80044954 000405B4 48 00 00 14 */ b lbl_80044968 lbl_80044958: /* 80044958 000405B8 FC 20 F8 90 */ fmr f1, f31 /* 8004495C 000405BC 7F A3 EB 78 */ mr r3, r29 /* 80044960 000405C0 48 00 04 35 */ bl func_80044D94 /* 80044964 000405C4 3B BD 00 F0 */ addi r29, r29, 0xf0 lbl_80044968: /* 80044968 000405C8 7C 1D F8 40 */ cmplw r29, r31 /* 8004496C 000405CC 40 82 FF EC */ bne lbl_80044958 /* 80044970 000405D0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044974 000405D4 CB E1 00 18 */ lfd f31, 0x18(r1) /* 80044978 000405D8 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8004497C 000405DC 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80044980 000405E0 83 A1 00 0C */ lwz r29, 0xc(r1) /* 80044984 000405E4 7C 08 03 A6 */ mtlr r0 /* 80044988 000405E8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004498C 000405EC 4E 80 00 20 */ blr lbl_80044990: /* 80044990 000405F0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044994 000405F4 7C 08 02 A6 */ mflr r0 /* 80044998 000405F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004499C 000405FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800449A0 00040600 3B E3 0E C0 */ addi r31, r3, 0xec0 /* 800449A4 00040604 93 C1 00 18 */ stw r30, 0x18(r1) /* 800449A8 00040608 3B C3 07 80 */ addi r30, r3, 0x780 /* 800449AC 0004060C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800449B0 00040610 7C 7D 1B 78 */ mr r29, r3 /* 800449B4 00040614 48 00 00 10 */ b lbl_800449C4 lbl_800449B8: /* 800449B8 00040618 7F C3 F3 78 */ mr r3, r30 /* 800449BC 0004061C 48 00 00 F1 */ bl func_80044AAC /* 800449C0 00040620 3B DE 00 E8 */ addi r30, r30, 0xe8 lbl_800449C4: /* 800449C4 00040624 7C 1E F8 40 */ cmplw r30, r31 /* 800449C8 00040628 40 82 FF F0 */ bne lbl_800449B8 /* 800449CC 0004062C 3B FD 07 80 */ addi r31, r29, 0x780 /* 800449D0 00040630 48 00 00 10 */ b lbl_800449E0 lbl_800449D4: /* 800449D4 00040634 7F A3 EB 78 */ mr r3, r29 /* 800449D8 00040638 48 00 04 1D */ bl func_80044DF4 /* 800449DC 0004063C 3B BD 00 F0 */ addi r29, r29, 0xf0 lbl_800449E0: /* 800449E0 00040640 7C 1D F8 40 */ cmplw r29, r31 /* 800449E4 00040644 40 82 FF F0 */ bne lbl_800449D4 /* 800449E8 00040648 80 01 00 24 */ lwz r0, 0x24(r1) /* 800449EC 0004064C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800449F0 00040650 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800449F4 00040654 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800449F8 00040658 7C 08 03 A6 */ mtlr r0 /* 800449FC 0004065C 38 21 00 20 */ addi r1, r1, 0x20 /* 80044A00 00040660 4E 80 00 20 */ blr .global func_80044A04 func_80044A04: /* 80044A04 00040664 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044A08 00040668 7C 08 02 A6 */ mflr r0 /* 80044A0C 0004066C 90 01 00 24 */ stw r0, 0x24(r1) /* 80044A10 00040670 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80044A14 00040674 3B E3 00 88 */ addi r31, r3, 0x88 /* 80044A18 00040678 93 C1 00 18 */ stw r30, 0x18(r1) /* 80044A1C 0004067C 3B C3 00 1C */ addi r30, r3, 0x1c /* 80044A20 00040680 93 A1 00 14 */ stw r29, 0x14(r1) /* 80044A24 00040684 7C 7D 1B 78 */ mr r29, r3 lbl_80044A28: /* 80044A28 00040688 7F C3 F3 78 */ mr r3, r30 /* 80044A2C 0004068C 48 00 B8 F9 */ bl func_80050324 /* 80044A30 00040690 3B DE 00 24 */ addi r30, r30, 0x24 /* 80044A34 00040694 7C 1E F8 40 */ cmplw r30, r31 /* 80044A38 00040698 41 80 FF F0 */ blt lbl_80044A28 /* 80044A3C 0004069C C0 02 83 78 */ lfs f0, lbl_80640978-_SDA2_BASE_(r2) /* 80044A40 000406A0 38 80 00 00 */ li r4, 0 /* 80044A44 000406A4 38 00 FF FF */ li r0, -1 /* 80044A48 000406A8 98 9D 00 00 */ stb r4, 0(r29) /* 80044A4C 000406AC 7F A3 EB 78 */ mr r3, r29 /* 80044A50 000406B0 B0 9D 00 14 */ sth r4, 0x14(r29) /* 80044A54 000406B4 B0 9D 00 16 */ sth r4, 0x16(r29) /* 80044A58 000406B8 90 9D 00 18 */ stw r4, 0x18(r29) /* 80044A5C 000406BC 90 1D 00 10 */ stw r0, 0x10(r29) /* 80044A60 000406C0 D0 1D 00 08 */ stfs f0, 8(r29) /* 80044A64 000406C4 D0 1D 00 0C */ stfs f0, 0xc(r29) /* 80044A68 000406C8 90 9D 00 04 */ stw r4, 4(r29) /* 80044A6C 000406CC 98 9D 00 01 */ stb r4, 1(r29) /* 80044A70 000406D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80044A74 000406D4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80044A78 000406D8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80044A7C 000406DC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044A80 000406E0 7C 08 03 A6 */ mtlr r0 /* 80044A84 000406E4 38 21 00 20 */ addi r1, r1, 0x20 /* 80044A88 000406E8 4E 80 00 20 */ blr .global Audio_SoundAttributes_SetSoundType Audio_SoundAttributes_SetSoundType: /* 80044A8C 000406EC 90 83 00 04 */ stw r4, 4(r3) /* 80044A90 000406F0 98 A3 00 01 */ stb r5, 1(r3) /* 80044A94 000406F4 4E 80 00 20 */ blr .global func_80044A98 func_80044A98: /* 80044A98 000406F8 4E 80 00 20 */ blr .global func_80044A9C func_80044A9C: /* 80044A9C 000406FC 7C 83 23 78 */ mr r3, r4 /* 80044AA0 00040700 7C A4 2B 78 */ mr r4, r5 /* 80044AA4 00040704 48 11 78 64 */ b func_8015C308 .global func_80044AA8 func_80044AA8: /* 80044AA8 00040708 4E 80 00 20 */ blr .global func_80044AAC func_80044AAC: /* 80044AAC 0004070C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044AB0 00040710 7C 08 02 A6 */ mflr r0 /* 80044AB4 00040714 7C 65 1B 78 */ mr r5, r3 /* 80044AB8 00040718 90 01 00 24 */ stw r0, 0x24(r1) /* 80044ABC 0004071C 88 03 00 00 */ lbz r0, 0(r3) /* 80044AC0 00040720 2C 00 00 00 */ cmpwi r0, 0 /* 80044AC4 00040724 41 82 00 90 */ beq lbl_80044B54 /* 80044AC8 00040728 80 83 00 04 */ lwz r4, 4(r3) /* 80044ACC 0004072C 2C 04 00 00 */ cmpwi r4, 0 /* 80044AD0 00040730 41 82 00 84 */ beq lbl_80044B54 /* 80044AD4 00040734 88 03 00 01 */ lbz r0, 1(r3) /* 80044AD8 00040738 2C 00 00 00 */ cmpwi r0, 0 /* 80044ADC 0004073C 41 82 00 44 */ beq lbl_80044B20 /* 80044AE0 00040740 C0 25 00 08 */ lfs f1, 8(r5) /* 80044AE4 00040744 7C 83 23 78 */ mr r3, r4 /* 80044AE8 00040748 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80044AEC 0004074C 39 20 00 00 */ li r9, 0 /* 80044AF0 00040750 FC 20 08 1E */ fctiwz f1, f1 /* 80044AF4 00040754 A8 C5 00 14 */ lha r6, 0x14(r5) /* 80044AF8 00040758 FC 00 00 1E */ fctiwz f0, f0 /* 80044AFC 0004075C A8 E5 00 16 */ lha r7, 0x16(r5) /* 80044B00 00040760 81 05 00 10 */ lwz r8, 0x10(r5) /* 80044B04 00040764 39 40 00 01 */ li r10, 1 /* 80044B08 00040768 D8 21 00 08 */ stfd f1, 8(r1) /* 80044B0C 0004076C D8 01 00 10 */ stfd f0, 0x10(r1) /* 80044B10 00040770 80 81 00 0C */ lwz r4, 0xc(r1) /* 80044B14 00040774 80 A1 00 14 */ lwz r5, 0x14(r1) /* 80044B18 00040778 48 20 B5 85 */ bl func_8025009C /* 80044B1C 0004077C 48 00 00 38 */ b lbl_80044B54 lbl_80044B20: /* 80044B20 00040780 C0 25 00 08 */ lfs f1, 8(r5) /* 80044B24 00040784 7C 83 23 78 */ mr r3, r4 /* 80044B28 00040788 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80044B2C 0004078C FC 20 08 1E */ fctiwz f1, f1 /* 80044B30 00040790 A8 C5 00 14 */ lha r6, 0x14(r5) /* 80044B34 00040794 FC 00 00 1E */ fctiwz f0, f0 /* 80044B38 00040798 A8 E5 00 16 */ lha r7, 0x16(r5) /* 80044B3C 0004079C 81 05 00 10 */ lwz r8, 0x10(r5) /* 80044B40 000407A0 D8 21 00 10 */ stfd f1, 0x10(r1) /* 80044B44 000407A4 D8 01 00 08 */ stfd f0, 8(r1) /* 80044B48 000407A8 80 81 00 14 */ lwz r4, 0x14(r1) /* 80044B4C 000407AC 80 A1 00 0C */ lwz r5, 0xc(r1) /* 80044B50 000407B0 48 20 B5 E5 */ bl func_80250134 lbl_80044B54: /* 80044B54 000407B4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044B58 000407B8 7C 08 03 A6 */ mtlr r0 /* 80044B5C 000407BC 38 21 00 20 */ addi r1, r1, 0x20 /* 80044B60 000407C0 4E 80 00 20 */ blr .global func_80044B64 func_80044B64: /* 80044B64 000407C4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044B68 000407C8 7C 08 02 A6 */ mflr r0 /* 80044B6C 000407CC 90 01 00 24 */ stw r0, 0x24(r1) /* 80044B70 000407D0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80044B74 000407D4 3B E3 00 90 */ addi r31, r3, 0x90 /* 80044B78 000407D8 93 C1 00 18 */ stw r30, 0x18(r1) /* 80044B7C 000407DC 3B C3 00 24 */ addi r30, r3, 0x24 /* 80044B80 000407E0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80044B84 000407E4 7C 7D 1B 78 */ mr r29, r3 lbl_80044B88: /* 80044B88 000407E8 7F C3 F3 78 */ mr r3, r30 /* 80044B8C 000407EC 48 00 B7 99 */ bl func_80050324 /* 80044B90 000407F0 3B DE 00 24 */ addi r30, r30, 0x24 /* 80044B94 000407F4 7C 1E F8 40 */ cmplw r30, r31 /* 80044B98 000407F8 41 80 FF F0 */ blt lbl_80044B88 /* 80044B9C 000407FC C0 02 83 78 */ lfs f0, lbl_80640978-_SDA2_BASE_(r2) /* 80044BA0 00040800 38 C0 00 00 */ li r6, 0 /* 80044BA4 00040804 38 A0 00 AF */ li r5, 0xaf /* 80044BA8 00040808 38 80 00 FF */ li r4, 0xff /* 80044BAC 0004080C 38 00 00 64 */ li r0, 0x64 /* 80044BB0 00040810 98 DD 00 00 */ stb r6, 0(r29) /* 80044BB4 00040814 7F A3 EB 78 */ mr r3, r29 /* 80044BB8 00040818 98 DD 00 01 */ stb r6, 1(r29) /* 80044BBC 0004081C 90 DD 00 04 */ stw r6, 4(r29) /* 80044BC0 00040820 D0 1D 00 08 */ stfs f0, 8(r29) /* 80044BC4 00040824 D0 1D 00 0C */ stfs f0, 0xc(r29) /* 80044BC8 00040828 98 BD 00 10 */ stb r5, 0x10(r29) /* 80044BCC 0004082C 98 BD 00 11 */ stb r5, 0x11(r29) /* 80044BD0 00040830 98 BD 00 12 */ stb r5, 0x12(r29) /* 80044BD4 00040834 98 9D 00 13 */ stb r4, 0x13(r29) /* 80044BD8 00040838 98 DD 00 14 */ stb r6, 0x14(r29) /* 80044BDC 0004083C 98 DD 00 15 */ stb r6, 0x15(r29) /* 80044BE0 00040840 98 BD 00 16 */ stb r5, 0x16(r29) /* 80044BE4 00040844 98 9D 00 17 */ stb r4, 0x17(r29) /* 80044BE8 00040848 98 DD 00 18 */ stb r6, 0x18(r29) /* 80044BEC 0004084C 98 DD 00 19 */ stb r6, 0x19(r29) /* 80044BF0 00040850 98 DD 00 1A */ stb r6, 0x1a(r29) /* 80044BF4 00040854 98 9D 00 1B */ stb r4, 0x1b(r29) /* 80044BF8 00040858 90 1D 00 1C */ stw r0, 0x1c(r29) /* 80044BFC 0004085C 90 DD 00 20 */ stw r6, 0x20(r29) /* 80044C00 00040860 B0 DD 00 90 */ sth r6, 0x90(r29) /* 80044C04 00040864 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80044C08 00040868 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80044C0C 0004086C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80044C10 00040870 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044C14 00040874 7C 08 03 A6 */ mtlr r0 /* 80044C18 00040878 38 21 00 20 */ addi r1, r1, 0x20 /* 80044C1C 0004087C 4E 80 00 20 */ blr .global func_80044C20 func_80044C20: /* 80044C20 00040880 94 21 FD F0 */ stwu r1, -0x210(r1) /* 80044C24 00040884 7C 08 02 A6 */ mflr r0 /* 80044C28 00040888 90 01 02 14 */ stw r0, 0x214(r1) /* 80044C2C 0004088C 7C 80 23 78 */ mr r0, r4 /* 80044C30 00040890 93 E1 02 0C */ stw r31, 0x20c(r1) /* 80044C34 00040894 7C 7F 1B 78 */ mr r31, r3 /* 80044C38 00040898 90 83 00 04 */ stw r4, 4(r3) /* 80044C3C 0004089C 38 81 00 08 */ addi r4, r1, 8 /* 80044C40 000408A0 7C 03 03 78 */ mr r3, r0 /* 80044C44 000408A4 48 20 B7 95 */ bl func_802503D8 /* 80044C48 000408A8 7C 60 07 34 */ extsh r0, r3 /* 80044C4C 000408AC 2C 00 00 30 */ cmpwi r0, 0x30 /* 80044C50 000408B0 41 80 00 08 */ blt lbl_80044C58 /* 80044C54 000408B4 38 60 00 2F */ li r3, 0x2f lbl_80044C58: /* 80044C58 000408B8 7C 60 07 34 */ extsh r0, r3 /* 80044C5C 000408BC 38 E0 00 00 */ li r7, 0 /* 80044C60 000408C0 54 05 08 3C */ slwi r5, r0, 1 /* 80044C64 000408C4 38 7F 00 90 */ addi r3, r31, 0x90 /* 80044C68 000408C8 7C DF 2A 14 */ add r6, r31, r5 /* 80044C6C 000408CC 38 81 00 08 */ addi r4, r1, 8 /* 80044C70 000408D0 B0 E6 00 90 */ sth r7, 0x90(r6) /* 80044C74 000408D4 4B FB F3 8D */ bl memcpy /* 80044C78 000408D8 80 01 02 14 */ lwz r0, 0x214(r1) /* 80044C7C 000408DC 83 E1 02 0C */ lwz r31, 0x20c(r1) /* 80044C80 000408E0 7C 08 03 A6 */ mtlr r0 /* 80044C84 000408E4 38 21 02 10 */ addi r1, r1, 0x210 /* 80044C88 000408E8 4E 80 00 20 */ blr .global func_80044C8C func_80044C8C: /* 80044C8C 000408EC 7C 83 23 78 */ mr r3, r4 /* 80044C90 000408F0 7C A4 2B 78 */ mr r4, r5 /* 80044C94 000408F4 48 11 76 74 */ b func_8015C308 .global func_80044C98 func_80044C98: /* 80044C98 000408F8 2C 04 00 00 */ cmpwi r4, 0 /* 80044C9C 000408FC 40 82 00 18 */ bne lbl_80044CB4 /* 80044CA0 00040900 80 03 00 20 */ lwz r0, 0x20(r3) /* 80044CA4 00040904 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 80044CA8 00040908 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80044CAC 0004090C 90 03 00 20 */ stw r0, 0x20(r3) /* 80044CB0 00040910 4E 80 00 20 */ blr lbl_80044CB4: /* 80044CB4 00040914 2C 04 00 01 */ cmpwi r4, 1 /* 80044CB8 00040918 4C 82 00 20 */ bnelr /* 80044CBC 0004091C 80 03 00 20 */ lwz r0, 0x20(r3) /* 80044CC0 00040920 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 80044CC4 00040924 60 00 00 04 */ ori r0, r0, 4 /* 80044CC8 00040928 90 03 00 20 */ stw r0, 0x20(r3) /* 80044CCC 0004092C 4E 80 00 20 */ blr .global func_80044CD0 func_80044CD0: /* 80044CD0 00040930 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044CD4 00040934 7C 08 02 A6 */ mflr r0 /* 80044CD8 00040938 C8 22 83 80 */ lfd f1, lbl_80640980-_SDA2_BASE_(r2) /* 80044CDC 0004093C 90 01 00 14 */ stw r0, 0x14(r1) /* 80044CE0 00040940 3C 00 43 30 */ lis r0, 0x4330 /* 80044CE4 00040944 80 83 00 1C */ lwz r4, 0x1c(r3) /* 80044CE8 00040948 38 63 00 90 */ addi r3, r3, 0x90 /* 80044CEC 0004094C 90 01 00 08 */ stw r0, 8(r1) /* 80044CF0 00040950 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80044CF4 00040954 90 01 00 0C */ stw r0, 0xc(r1) /* 80044CF8 00040958 C8 01 00 08 */ lfd f0, 8(r1) /* 80044CFC 0004095C EC 20 08 28 */ fsubs f1, f0, f1 /* 80044D00 00040960 48 20 B8 61 */ bl func_80250560 /* 80044D04 00040964 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044D08 00040968 7C 08 03 A6 */ mtlr r0 /* 80044D0C 0004096C 38 21 00 10 */ addi r1, r1, 0x10 /* 80044D10 00040970 4E 80 00 20 */ blr .global func_80044D14 func_80044D14: /* 80044D14 00040974 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044D18 00040978 7C 08 02 A6 */ mflr r0 /* 80044D1C 0004097C 90 01 00 24 */ stw r0, 0x24(r1) /* 80044D20 00040980 38 A1 00 08 */ addi r5, r1, 8 /* 80044D24 00040984 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80044D28 00040988 FF E0 18 90 */ fmr f31, f3 /* 80044D2C 0004098C 93 E1 00 14 */ stw r31, 0x14(r1) /* 80044D30 00040990 7C 9F 23 78 */ mr r31, r4 /* 80044D34 00040994 38 83 00 08 */ addi r4, r3, 8 /* 80044D38 00040998 93 C1 00 10 */ stw r30, 0x10(r1) /* 80044D3C 0004099C 7C 7E 1B 78 */ mr r30, r3 /* 80044D40 000409A0 7F E7 FB 78 */ mr r7, r31 /* 80044D44 000409A4 7C 86 23 78 */ mr r6, r4 /* 80044D48 000409A8 D0 21 00 08 */ stfs f1, 8(r1) /* 80044D4C 000409AC FC 20 F8 90 */ fmr f1, f31 /* 80044D50 000409B0 38 63 00 24 */ addi r3, r3, 0x24 /* 80044D54 000409B4 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80044D58 000409B8 48 00 B5 E5 */ bl func_8005033C /* 80044D5C 000409BC FC 20 F8 90 */ fmr f1, f31 /* 80044D60 000409C0 38 9E 00 0C */ addi r4, r30, 0xc /* 80044D64 000409C4 7C 86 23 78 */ mr r6, r4 /* 80044D68 000409C8 7F E7 FB 78 */ mr r7, r31 /* 80044D6C 000409CC 38 7E 00 48 */ addi r3, r30, 0x48 /* 80044D70 000409D0 38 A1 00 0C */ addi r5, r1, 0xc /* 80044D74 000409D4 48 00 B5 C9 */ bl func_8005033C /* 80044D78 000409D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044D7C 000409DC CB E1 00 18 */ lfd f31, 0x18(r1) /* 80044D80 000409E0 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80044D84 000409E4 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80044D88 000409E8 7C 08 03 A6 */ mtlr r0 /* 80044D8C 000409EC 38 21 00 20 */ addi r1, r1, 0x20 /* 80044D90 000409F0 4E 80 00 20 */ blr .global func_80044D94 func_80044D94: /* 80044D94 000409F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80044D98 000409F8 7C 08 02 A6 */ mflr r0 /* 80044D9C 000409FC 90 01 00 24 */ stw r0, 0x24(r1) /* 80044DA0 00040A00 DB E1 00 18 */ stfd f31, 0x18(r1) /* 80044DA4 00040A04 FF E0 08 90 */ fmr f31, f1 /* 80044DA8 00040A08 93 E1 00 14 */ stw r31, 0x14(r1) /* 80044DAC 00040A0C 7C 7F 1B 78 */ mr r31, r3 /* 80044DB0 00040A10 81 83 00 44 */ lwz r12, 0x44(r3) /* 80044DB4 00040A14 81 8C 00 08 */ lwz r12, 8(r12) /* 80044DB8 00040A18 7D 89 03 A6 */ mtctr r12 /* 80044DBC 00040A1C 38 63 00 24 */ addi r3, r3, 0x24 /* 80044DC0 00040A20 4E 80 04 21 */ bctrl /* 80044DC4 00040A24 81 9F 00 68 */ lwz r12, 0x68(r31) /* 80044DC8 00040A28 FC 20 F8 90 */ fmr f1, f31 /* 80044DCC 00040A2C 38 7F 00 48 */ addi r3, r31, 0x48 /* 80044DD0 00040A30 81 8C 00 08 */ lwz r12, 8(r12) /* 80044DD4 00040A34 7D 89 03 A6 */ mtctr r12 /* 80044DD8 00040A38 4E 80 04 21 */ bctrl /* 80044DDC 00040A3C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80044DE0 00040A40 CB E1 00 18 */ lfd f31, 0x18(r1) /* 80044DE4 00040A44 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80044DE8 00040A48 7C 08 03 A6 */ mtlr r0 /* 80044DEC 00040A4C 38 21 00 20 */ addi r1, r1, 0x20 /* 80044DF0 00040A50 4E 80 00 20 */ blr .global func_80044DF4 func_80044DF4: /* 80044DF4 00040A54 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80044DF8 00040A58 7C 08 02 A6 */ mflr r0 /* 80044DFC 00040A5C 90 01 00 44 */ stw r0, 0x44(r1) /* 80044E00 00040A60 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80044E04 00040A64 7C 7F 1B 78 */ mr r31, r3 /* 80044E08 00040A68 88 03 00 00 */ lbz r0, 0(r3) /* 80044E0C 00040A6C 2C 00 00 00 */ cmpwi r0, 0 /* 80044E10 00040A70 41 82 00 E4 */ beq lbl_80044EF4 /* 80044E14 00040A74 88 03 00 14 */ lbz r0, 0x14(r3) /* 80044E18 00040A78 38 81 00 10 */ addi r4, r1, 0x10 /* 80044E1C 00040A7C 98 01 00 10 */ stb r0, 0x10(r1) /* 80044E20 00040A80 88 03 00 15 */ lbz r0, 0x15(r3) /* 80044E24 00040A84 98 01 00 11 */ stb r0, 0x11(r1) /* 80044E28 00040A88 88 03 00 16 */ lbz r0, 0x16(r3) /* 80044E2C 00040A8C 98 01 00 12 */ stb r0, 0x12(r1) /* 80044E30 00040A90 88 03 00 17 */ lbz r0, 0x17(r3) /* 80044E34 00040A94 38 60 00 00 */ li r3, 0 /* 80044E38 00040A98 98 01 00 13 */ stb r0, 0x13(r1) /* 80044E3C 00040A9C 48 20 B7 B5 */ bl func_802505F0 /* 80044E40 00040AA0 88 1F 00 18 */ lbz r0, 0x18(r31) /* 80044E44 00040AA4 38 81 00 0C */ addi r4, r1, 0xc /* 80044E48 00040AA8 38 60 00 01 */ li r3, 1 /* 80044E4C 00040AAC 98 01 00 0C */ stb r0, 0xc(r1) /* 80044E50 00040AB0 88 1F 00 19 */ lbz r0, 0x19(r31) /* 80044E54 00040AB4 98 01 00 0D */ stb r0, 0xd(r1) /* 80044E58 00040AB8 88 1F 00 1A */ lbz r0, 0x1a(r31) /* 80044E5C 00040ABC 98 01 00 0E */ stb r0, 0xe(r1) /* 80044E60 00040AC0 88 1F 00 1B */ lbz r0, 0x1b(r31) /* 80044E64 00040AC4 98 01 00 0F */ stb r0, 0xf(r1) /* 80044E68 00040AC8 48 20 B7 89 */ bl func_802505F0 /* 80044E6C 00040ACC 88 7F 00 01 */ lbz r3, 1(r31) /* 80044E70 00040AD0 48 20 B7 E5 */ bl func_80250654 /* 80044E74 00040AD4 88 9F 00 10 */ lbz r4, 0x10(r31) /* 80044E78 00040AD8 3C 00 43 30 */ lis r0, 0x4330 /* 80044E7C 00040ADC 3C 60 80 41 */ lis r3, lbl_8040A430@ha /* 80044E80 00040AE0 90 01 00 28 */ stw r0, 0x28(r1) /* 80044E84 00040AE4 C8 22 83 80 */ lfd f1, lbl_80640980-_SDA2_BASE_(r2) /* 80044E88 00040AE8 38 63 A4 30 */ addi r3, r3, lbl_8040A430@l /* 80044E8C 00040AEC 98 81 00 08 */ stb r4, 8(r1) /* 80044E90 00040AF0 38 C1 00 08 */ addi r6, r1, 8 /* 80044E94 00040AF4 88 1F 00 11 */ lbz r0, 0x11(r31) /* 80044E98 00040AF8 98 01 00 09 */ stb r0, 9(r1) /* 80044E9C 00040AFC 88 1F 00 12 */ lbz r0, 0x12(r31) /* 80044EA0 00040B00 98 01 00 0A */ stb r0, 0xa(r1) /* 80044EA4 00040B04 88 1F 00 13 */ lbz r0, 0x13(r31) /* 80044EA8 00040B08 98 01 00 0B */ stb r0, 0xb(r1) /* 80044EAC 00040B0C C0 5F 00 08 */ lfs f2, 8(r31) /* 80044EB0 00040B10 80 9F 00 1C */ lwz r4, 0x1c(r31) /* 80044EB4 00040B14 FC 60 10 1E */ fctiwz f3, f2 /* 80044EB8 00040B18 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 80044EBC 00040B1C 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 80044EC0 00040B20 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80044EC4 00040B24 FC 40 00 1E */ fctiwz f2, f0 /* 80044EC8 00040B28 90 81 00 2C */ stw r4, 0x2c(r1) /* 80044ECC 00040B2C D8 61 00 18 */ stfd f3, 0x18(r1) /* 80044ED0 00040B30 54 07 06 3E */ clrlwi r7, r0, 0x18 /* 80044ED4 00040B34 C8 01 00 28 */ lfd f0, 0x28(r1) /* 80044ED8 00040B38 D8 41 00 20 */ stfd f2, 0x20(r1) /* 80044EDC 00040B3C 80 81 00 1C */ lwz r4, 0x1c(r1) /* 80044EE0 00040B40 EC 20 08 28 */ fsubs f1, f0, f1 /* 80044EE4 00040B44 80 A1 00 24 */ lwz r5, 0x24(r1) /* 80044EE8 00040B48 7C 84 07 34 */ extsh r4, r4 /* 80044EEC 00040B4C 7C A5 07 34 */ extsh r5, r5 /* 80044EF0 00040B50 48 20 B5 31 */ bl func_80250420 lbl_80044EF4: /* 80044EF4 00040B54 80 01 00 44 */ lwz r0, 0x44(r1) /* 80044EF8 00040B58 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80044EFC 00040B5C 7C 08 03 A6 */ mtlr r0 /* 80044F00 00040B60 38 21 00 40 */ addi r1, r1, 0x40 /* 80044F04 00040B64 4E 80 00 20 */ blr .global func_80044F08 func_80044F08: /* 80044F08 00040B68 38 A0 00 01 */ li r5, 1 /* 80044F0C 00040B6C 38 6D 97 E0 */ addi r3, r13, lbl_8063EAA0-_SDA_BASE_ /* 80044F10 00040B70 38 80 00 04 */ li r4, 4 /* 80044F14 00040B74 38 00 00 00 */ li r0, 0 /* 80044F18 00040B78 98 AD 97 E0 */ stb r5, lbl_8063EAA0-_SDA_BASE_(r13) /* 80044F1C 00040B7C B0 83 00 02 */ sth r4, 2(r3) /* 80044F20 00040B80 98 03 00 04 */ stb r0, 4(r3) /* 80044F24 00040B84 4E 80 00 20 */ blr .global func_80044F28 func_80044F28: /* 80044F28 00040B88 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80044F2C 00040B8C 7C 08 02 A6 */ mflr r0 /* 80044F30 00040B90 90 01 00 14 */ stw r0, 0x14(r1) /* 80044F34 00040B94 38 00 00 00 */ li r0, 0 /* 80044F38 00040B98 93 E1 00 0C */ stw r31, 0xc(r1) /* 80044F3C 00040B9C 7C 7F 1B 78 */ mr r31, r3 /* 80044F40 00040BA0 98 03 00 40 */ stb r0, 0x40(r3) /* 80044F44 00040BA4 98 03 00 41 */ stb r0, 0x41(r3) /* 80044F48 00040BA8 98 03 00 42 */ stb r0, 0x42(r3) /* 80044F4C 00040BAC 98 03 00 10 */ stb r0, 0x10(r3) /* 80044F50 00040BB0 98 03 00 11 */ stb r0, 0x11(r3) /* 80044F54 00040BB4 98 03 00 12 */ stb r0, 0x12(r3) /* 80044F58 00040BB8 48 00 00 1D */ bl func_80044F74 /* 80044F5C 00040BBC 7F E3 FB 78 */ mr r3, r31 /* 80044F60 00040BC0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80044F64 00040BC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80044F68 00040BC8 7C 08 03 A6 */ mtlr r0 /* 80044F6C 00040BCC 38 21 00 10 */ addi r1, r1, 0x10 /* 80044F70 00040BD0 4E 80 00 20 */ blr .global func_80044F74 func_80044F74: /* 80044F74 00040BD4 38 00 00 00 */ li r0, 0 /* 80044F78 00040BD8 90 03 00 04 */ stw r0, 4(r3) /* 80044F7C 00040BDC 90 03 00 08 */ stw r0, 8(r3) /* 80044F80 00040BE0 90 03 00 0C */ stw r0, 0xc(r3) /* 80044F84 00040BE4 B0 03 00 3C */ sth r0, 0x3c(r3) /* 80044F88 00040BE8 98 03 00 3E */ stb r0, 0x3e(r3) /* 80044F8C 00040BEC 98 03 00 43 */ stb r0, 0x43(r3) /* 80044F90 00040BF0 98 03 00 3F */ stb r0, 0x3f(r3) /* 80044F94 00040BF4 98 03 00 40 */ stb r0, 0x40(r3) /* 80044F98 00040BF8 98 03 00 41 */ stb r0, 0x41(r3) /* 80044F9C 00040BFC 98 03 00 42 */ stb r0, 0x42(r3) /* 80044FA0 00040C00 98 03 00 10 */ stb r0, 0x10(r3) /* 80044FA4 00040C04 98 03 00 11 */ stb r0, 0x11(r3) /* 80044FA8 00040C08 98 03 00 12 */ stb r0, 0x12(r3) /* 80044FAC 00040C0C 4E 80 00 20 */ blr .global func_80044FB0 func_80044FB0: /* 80044FB0 00040C10 88 63 00 3F */ lbz r3, 0x3f(r3) /* 80044FB4 00040C14 4E 80 00 20 */ blr .global func_80044FB8 func_80044FB8: /* 80044FB8 00040C18 80 03 00 08 */ lwz r0, 8(r3) /* 80044FBC 00040C1C 38 80 00 00 */ li r4, 0 /* 80044FC0 00040C20 2C 00 00 00 */ cmpwi r0, 0 /* 80044FC4 00040C24 41 82 00 08 */ beq lbl_80044FCC /* 80044FC8 00040C28 38 80 00 01 */ li r4, 1 lbl_80044FCC: /* 80044FCC 00040C2C 80 03 00 0C */ lwz r0, 0xc(r3) /* 80044FD0 00040C30 2C 00 00 00 */ cmpwi r0, 0 /* 80044FD4 00040C34 41 82 00 08 */ beq lbl_80044FDC /* 80044FD8 00040C38 38 84 00 01 */ addi r4, r4, 1 lbl_80044FDC: /* 80044FDC 00040C3C 7C 83 23 78 */ mr r3, r4 /* 80044FE0 00040C40 4E 80 00 20 */ blr .global func_80044FE4 func_80044FE4: /* 80044FE4 00040C44 38 00 00 00 */ li r0, 0 /* 80044FE8 00040C48 39 00 00 01 */ li r8, 1 /* 80044FEC 00040C4C 99 03 00 3F */ stb r8, 0x3f(r3) /* 80044FF0 00040C50 90 83 00 00 */ stw r4, 0(r3) /* 80044FF4 00040C54 90 A3 00 04 */ stw r5, 4(r3) /* 80044FF8 00040C58 90 C3 00 08 */ stw r6, 8(r3) /* 80044FFC 00040C5C 90 E3 00 0C */ stw r7, 0xc(r3) /* 80045000 00040C60 98 03 00 40 */ stb r0, 0x40(r3) /* 80045004 00040C64 98 03 00 41 */ stb r0, 0x41(r3) /* 80045008 00040C68 98 03 00 42 */ stb r0, 0x42(r3) /* 8004500C 00040C6C 4E 80 00 20 */ blr .global func_80045010 func_80045010: /* 80045010 00040C70 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80045014 00040C74 7C 08 02 A6 */ mflr r0 /* 80045018 00040C78 90 01 00 14 */ stw r0, 0x14(r1) /* 8004501C 00040C7C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80045020 00040C80 7C 7F 1B 78 */ mr r31, r3 /* 80045024 00040C84 88 03 00 3F */ lbz r0, 0x3f(r3) /* 80045028 00040C88 2C 00 00 00 */ cmpwi r0, 0 /* 8004502C 00040C8C 41 82 00 2C */ beq lbl_80045058 /* 80045030 00040C90 88 03 00 40 */ lbz r0, 0x40(r3) /* 80045034 00040C94 2C 00 00 00 */ cmpwi r0, 0 /* 80045038 00040C98 41 82 00 18 */ beq lbl_80045050 /* 8004503C 00040C9C 80 63 00 04 */ lwz r3, 4(r3) /* 80045040 00040CA0 4B FF 7E CD */ bl func_8003CF0C /* 80045044 00040CA4 38 00 00 00 */ li r0, 0 /* 80045048 00040CA8 90 1F 00 04 */ stw r0, 4(r31) /* 8004504C 00040CAC 98 1F 00 40 */ stb r0, 0x40(r31) lbl_80045050: /* 80045050 00040CB0 7F E3 FB 78 */ mr r3, r31 /* 80045054 00040CB4 48 00 00 19 */ bl func_8004506C lbl_80045058: /* 80045058 00040CB8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004505C 00040CBC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80045060 00040CC0 7C 08 03 A6 */ mtlr r0 /* 80045064 00040CC4 38 21 00 10 */ addi r1, r1, 0x10 /* 80045068 00040CC8 4E 80 00 20 */ blr .global func_8004506C func_8004506C: /* 8004506C 00040CCC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045070 00040CD0 7C 08 02 A6 */ mflr r0 /* 80045074 00040CD4 90 01 00 24 */ stw r0, 0x24(r1) /* 80045078 00040CD8 39 61 00 20 */ addi r11, r1, 0x20 /* 8004507C 00040CDC 48 18 20 AD */ bl _savegpr_27 /* 80045080 00040CE0 7C 7B 1B 78 */ mr r27, r3 /* 80045084 00040CE4 3B 80 00 00 */ li r28, 0 /* 80045088 00040CE8 7F 7E DB 78 */ mr r30, r27 /* 8004508C 00040CEC 3B E0 00 00 */ li r31, 0 lbl_80045090: /* 80045090 00040CF0 7F BB E2 14 */ add r29, r27, r28 /* 80045094 00040CF4 88 1D 00 41 */ lbz r0, 0x41(r29) /* 80045098 00040CF8 2C 00 00 00 */ cmpwi r0, 0 /* 8004509C 00040CFC 41 82 00 14 */ beq lbl_800450B0 /* 800450A0 00040D00 80 7E 00 08 */ lwz r3, 8(r30) /* 800450A4 00040D04 4B FF 7E 69 */ bl func_8003CF0C /* 800450A8 00040D08 93 FE 00 08 */ stw r31, 8(r30) /* 800450AC 00040D0C 9B FD 00 41 */ stb r31, 0x41(r29) lbl_800450B0: /* 800450B0 00040D10 3B 9C 00 01 */ addi r28, r28, 1 /* 800450B4 00040D14 3B DE 00 04 */ addi r30, r30, 4 /* 800450B8 00040D18 2C 1C 00 02 */ cmpwi r28, 2 /* 800450BC 00040D1C 41 80 FF D4 */ blt lbl_80045090 /* 800450C0 00040D20 39 61 00 20 */ addi r11, r1, 0x20 /* 800450C4 00040D24 48 18 20 B1 */ bl _restgpr_27 /* 800450C8 00040D28 80 01 00 24 */ lwz r0, 0x24(r1) /* 800450CC 00040D2C 7C 08 03 A6 */ mtlr r0 /* 800450D0 00040D30 38 21 00 20 */ addi r1, r1, 0x20 /* 800450D4 00040D34 4E 80 00 20 */ blr .global func_800450D8 func_800450D8: /* 800450D8 00040D38 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800450DC 00040D3C 7C 08 02 A6 */ mflr r0 /* 800450E0 00040D40 90 01 00 24 */ stw r0, 0x24(r1) /* 800450E4 00040D44 39 61 00 20 */ addi r11, r1, 0x20 /* 800450E8 00040D48 48 18 20 3D */ bl _savegpr_26 /* 800450EC 00040D4C 7C 7A 1B 78 */ mr r26, r3 /* 800450F0 00040D50 80 63 00 04 */ lwz r3, 4(r3) /* 800450F4 00040D54 7C 9B 23 78 */ mr r27, r4 /* 800450F8 00040D58 7C BC 2B 78 */ mr r28, r5 /* 800450FC 00040D5C 7C DD 33 78 */ mr r29, r6 /* 80045100 00040D60 7C FE 3B 78 */ mr r30, r7 /* 80045104 00040D64 7D 1F 43 78 */ mr r31, r8 /* 80045108 00040D68 4B FF 7E 05 */ bl func_8003CF0C /* 8004510C 00040D6C 4B FF 90 51 */ bl func_8003E15C /* 80045110 00040D70 4B FF 90 AD */ bl func_8003E1BC /* 80045114 00040D74 2C 03 00 00 */ cmpwi r3, 0 /* 80045118 00040D78 90 7A 00 04 */ stw r3, 4(r26) /* 8004511C 00040D7C 41 82 00 2C */ beq lbl_80045148 /* 80045120 00040D80 7F 84 E3 78 */ mr r4, r28 /* 80045124 00040D84 7F A5 EB 78 */ mr r5, r29 /* 80045128 00040D88 7F E7 FB 78 */ mr r7, r31 /* 8004512C 00040D8C 7F C6 07 74 */ extsb r6, r30 /* 80045130 00040D90 4B FF 7F 91 */ bl func_8003D0C0 /* 80045134 00040D94 80 7A 00 04 */ lwz r3, 4(r26) /* 80045138 00040D98 38 80 00 02 */ li r4, 2 /* 8004513C 00040D9C 38 00 00 01 */ li r0, 1 /* 80045140 00040DA0 B0 83 05 0C */ sth r4, 0x50c(r3) /* 80045144 00040DA4 98 1A 00 40 */ stb r0, 0x40(r26) lbl_80045148: /* 80045148 00040DA8 38 60 00 00 */ li r3, 0 /* 8004514C 00040DAC 38 00 00 01 */ li r0, 1 /* 80045150 00040DB0 98 7A 00 10 */ stb r3, 0x10(r26) /* 80045154 00040DB4 39 61 00 20 */ addi r11, r1, 0x20 /* 80045158 00040DB8 98 1A 00 3F */ stb r0, 0x3f(r26) /* 8004515C 00040DBC 93 7A 00 00 */ stw r27, 0(r26) /* 80045160 00040DC0 48 18 20 11 */ bl _restgpr_26 /* 80045164 00040DC4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045168 00040DC8 7C 08 03 A6 */ mtlr r0 /* 8004516C 00040DCC 38 21 00 20 */ addi r1, r1, 0x20 /* 80045170 00040DD0 4E 80 00 20 */ blr lbl_80045174: /* 80045174 00040DD4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80045178 00040DD8 7C 08 02 A6 */ mflr r0 /* 8004517C 00040DDC 90 01 00 34 */ stw r0, 0x34(r1) /* 80045180 00040DE0 39 61 00 30 */ addi r11, r1, 0x30 /* 80045184 00040DE4 48 18 1F A5 */ bl _savegpr_27 /* 80045188 00040DE8 83 C3 00 04 */ lwz r30, 4(r3) /* 8004518C 00040DEC 7C 7B 1B 78 */ mr r27, r3 /* 80045190 00040DF0 7C 9C 23 78 */ mr r28, r4 /* 80045194 00040DF4 7C BD 2B 78 */ mr r29, r5 /* 80045198 00040DF8 2C 1E 00 00 */ cmpwi r30, 0 /* 8004519C 00040DFC 41 82 01 44 */ beq lbl_800452E0 /* 800451A0 00040E00 A0 1E 05 0C */ lhz r0, 0x50c(r30) /* 800451A4 00040E04 28 00 00 02 */ cmplwi r0, 2 /* 800451A8 00040E08 41 82 00 08 */ beq lbl_800451B0 /* 800451AC 00040E0C 48 00 01 34 */ b lbl_800452E0 lbl_800451B0: /* 800451B0 00040E10 39 40 00 00 */ li r10, 0 /* 800451B4 00040E14 39 20 00 01 */ li r9, 1 /* 800451B8 00040E18 1C CA 00 AC */ mulli r6, r10, 0xac /* 800451BC 00040E1C 39 9E 05 24 */ addi r12, r30, 0x524 /* 800451C0 00040E20 89 7E 05 21 */ lbz r11, 0x521(r30) /* 800451C4 00040E24 39 00 00 02 */ li r8, 2 /* 800451C8 00040E28 A3 FE 05 1C */ lhz r31, 0x51c(r30) /* 800451CC 00040E2C 38 E0 00 03 */ li r7, 3 /* 800451D0 00040E30 1C 89 00 AC */ mulli r4, r9, 0xac /* 800451D4 00040E34 7C CC 32 14 */ add r6, r12, r6 /* 800451D8 00040E38 88 06 00 19 */ lbz r0, 0x19(r6) /* 800451DC 00040E3C 38 A0 00 04 */ li r5, 4 /* 800451E0 00040E40 39 40 00 05 */ li r10, 5 /* 800451E4 00040E44 98 01 00 08 */ stb r0, 8(r1) /* 800451E8 00040E48 7C 8C 22 14 */ add r4, r12, r4 /* 800451EC 00040E4C 39 20 00 06 */ li r9, 6 /* 800451F0 00040E50 1C 08 00 AC */ mulli r0, r8, 0xac /* 800451F4 00040E54 88 C4 00 19 */ lbz r6, 0x19(r4) /* 800451F8 00040E58 39 00 00 07 */ li r8, 7 /* 800451FC 00040E5C 98 C1 00 09 */ stb r6, 9(r1) /* 80045200 00040E60 7D 7E 07 74 */ extsb r30, r11 /* 80045204 00040E64 7C 8C 02 14 */ add r4, r12, r0 /* 80045208 00040E68 1C 07 00 AC */ mulli r0, r7, 0xac /* 8004520C 00040E6C 88 C4 00 19 */ lbz r6, 0x19(r4) /* 80045210 00040E70 38 E0 00 08 */ li r7, 8 /* 80045214 00040E74 98 C1 00 0A */ stb r6, 0xa(r1) /* 80045218 00040E78 7C 8C 02 14 */ add r4, r12, r0 /* 8004521C 00040E7C 1C 05 00 AC */ mulli r0, r5, 0xac /* 80045220 00040E80 88 C4 00 19 */ lbz r6, 0x19(r4) /* 80045224 00040E84 38 A0 00 09 */ li r5, 9 /* 80045228 00040E88 98 C1 00 0B */ stb r6, 0xb(r1) /* 8004522C 00040E8C 7C 8C 02 14 */ add r4, r12, r0 /* 80045230 00040E90 88 04 00 19 */ lbz r0, 0x19(r4) /* 80045234 00040E94 1C CA 00 AC */ mulli r6, r10, 0xac /* 80045238 00040E98 98 01 00 0C */ stb r0, 0xc(r1) /* 8004523C 00040E9C 7C CC 32 14 */ add r6, r12, r6 /* 80045240 00040EA0 1C 89 00 AC */ mulli r4, r9, 0xac /* 80045244 00040EA4 88 06 00 19 */ lbz r0, 0x19(r6) /* 80045248 00040EA8 98 01 00 0D */ stb r0, 0xd(r1) /* 8004524C 00040EAC 7C 8C 22 14 */ add r4, r12, r4 /* 80045250 00040EB0 88 C4 00 19 */ lbz r6, 0x19(r4) /* 80045254 00040EB4 1C 08 00 AC */ mulli r0, r8, 0xac /* 80045258 00040EB8 98 C1 00 0E */ stb r6, 0xe(r1) /* 8004525C 00040EBC 7C 8C 02 14 */ add r4, r12, r0 /* 80045260 00040EC0 88 C4 00 19 */ lbz r6, 0x19(r4) /* 80045264 00040EC4 1C 07 00 AC */ mulli r0, r7, 0xac /* 80045268 00040EC8 98 C1 00 0F */ stb r6, 0xf(r1) /* 8004526C 00040ECC 7C 8C 02 14 */ add r4, r12, r0 /* 80045270 00040ED0 88 C4 00 19 */ lbz r6, 0x19(r4) /* 80045274 00040ED4 1C 05 00 AC */ mulli r0, r5, 0xac /* 80045278 00040ED8 98 C1 00 10 */ stb r6, 0x10(r1) /* 8004527C 00040EDC 7C 8C 02 14 */ add r4, r12, r0 /* 80045280 00040EE0 88 04 00 19 */ lbz r0, 0x19(r4) /* 80045284 00040EE4 98 01 00 11 */ stb r0, 0x11(r1) /* 80045288 00040EE8 80 63 00 04 */ lwz r3, 4(r3) /* 8004528C 00040EEC 4B FF 7C 81 */ bl func_8003CF0C /* 80045290 00040EF0 4B FF 8E CD */ bl func_8003E15C /* 80045294 00040EF4 4B FF 8F 29 */ bl func_8003E1BC /* 80045298 00040EF8 2C 03 00 00 */ cmpwi r3, 0 /* 8004529C 00040EFC 90 7B 00 04 */ stw r3, 4(r27) /* 800452A0 00040F00 41 82 00 2C */ beq lbl_800452CC /* 800452A4 00040F04 7F E4 FB 78 */ mr r4, r31 /* 800452A8 00040F08 7F A5 EB 78 */ mr r5, r29 /* 800452AC 00040F0C 7F C6 F3 78 */ mr r6, r30 /* 800452B0 00040F10 38 E1 00 08 */ addi r7, r1, 8 /* 800452B4 00040F14 4B FF 7E 0D */ bl func_8003D0C0 /* 800452B8 00040F18 80 7B 00 04 */ lwz r3, 4(r27) /* 800452BC 00040F1C 38 80 00 02 */ li r4, 2 /* 800452C0 00040F20 38 00 00 01 */ li r0, 1 /* 800452C4 00040F24 B0 83 05 0C */ sth r4, 0x50c(r3) /* 800452C8 00040F28 98 1B 00 40 */ stb r0, 0x40(r27) lbl_800452CC: /* 800452CC 00040F2C 38 60 00 00 */ li r3, 0 /* 800452D0 00040F30 38 00 00 01 */ li r0, 1 /* 800452D4 00040F34 98 7B 00 10 */ stb r3, 0x10(r27) /* 800452D8 00040F38 98 1B 00 3F */ stb r0, 0x3f(r27) /* 800452DC 00040F3C 93 9B 00 00 */ stw r28, 0(r27) lbl_800452E0: /* 800452E0 00040F40 39 61 00 30 */ addi r11, r1, 0x30 /* 800452E4 00040F44 48 18 1E 91 */ bl _restgpr_27 /* 800452E8 00040F48 80 01 00 34 */ lwz r0, 0x34(r1) /* 800452EC 00040F4C 7C 08 03 A6 */ mtlr r0 /* 800452F0 00040F50 38 21 00 30 */ addi r1, r1, 0x30 /* 800452F4 00040F54 4E 80 00 20 */ blr .global func_800452F8 func_800452F8: /* 800452F8 00040F58 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800452FC 00040F5C 7C 08 02 A6 */ mflr r0 /* 80045300 00040F60 90 01 00 34 */ stw r0, 0x34(r1) /* 80045304 00040F64 39 61 00 30 */ addi r11, r1, 0x30 /* 80045308 00040F68 48 18 1E 15 */ bl _savegpr_24 /* 8004530C 00040F6C 54 80 10 3A */ slwi r0, r4, 2 /* 80045310 00040F70 7C 78 1B 78 */ mr r24, r3 /* 80045314 00040F74 7F E3 02 14 */ add r31, r3, r0 /* 80045318 00040F78 7C 99 23 78 */ mr r25, r4 /* 8004531C 00040F7C 80 7F 00 08 */ lwz r3, 8(r31) /* 80045320 00040F80 7C BA 2B 78 */ mr r26, r5 /* 80045324 00040F84 7C DB 33 78 */ mr r27, r6 /* 80045328 00040F88 7C FC 3B 78 */ mr r28, r7 /* 8004532C 00040F8C 7D 1D 43 78 */ mr r29, r8 /* 80045330 00040F90 7D 3E 4B 78 */ mr r30, r9 /* 80045334 00040F94 4B FF 7B D9 */ bl func_8003CF0C /* 80045338 00040F98 4B FF 8E 25 */ bl func_8003E15C /* 8004533C 00040F9C 4B FF 8E 81 */ bl func_8003E1BC /* 80045340 00040FA0 2C 03 00 00 */ cmpwi r3, 0 /* 80045344 00040FA4 90 7F 00 08 */ stw r3, 8(r31) /* 80045348 00040FA8 41 82 00 28 */ beq lbl_80045370 /* 8004534C 00040FAC 7F 44 D3 78 */ mr r4, r26 /* 80045350 00040FB0 7F 65 DB 78 */ mr r5, r27 /* 80045354 00040FB4 7F 86 E3 78 */ mr r6, r28 /* 80045358 00040FB8 7F A7 EB 78 */ mr r7, r29 /* 8004535C 00040FBC 7F C8 F3 78 */ mr r8, r30 /* 80045360 00040FC0 4B FF 7B F5 */ bl func_8003CF54 /* 80045364 00040FC4 7C 78 CA 14 */ add r3, r24, r25 /* 80045368 00040FC8 38 00 00 01 */ li r0, 1 /* 8004536C 00040FCC 98 03 00 41 */ stb r0, 0x41(r3) lbl_80045370: /* 80045370 00040FD0 7C 78 CA 14 */ add r3, r24, r25 /* 80045374 00040FD4 38 00 00 00 */ li r0, 0 /* 80045378 00040FD8 98 03 00 11 */ stb r0, 0x11(r3) /* 8004537C 00040FDC 38 00 00 01 */ li r0, 1 /* 80045380 00040FE0 39 61 00 30 */ addi r11, r1, 0x30 /* 80045384 00040FE4 98 18 00 3F */ stb r0, 0x3f(r24) /* 80045388 00040FE8 48 18 1D E1 */ bl _restgpr_24 /* 8004538C 00040FEC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80045390 00040FF0 7C 08 03 A6 */ mtlr r0 /* 80045394 00040FF4 38 21 00 30 */ addi r1, r1, 0x30 /* 80045398 00040FF8 4E 80 00 20 */ blr .global func_8004539C func_8004539C: /* 8004539C 00040FFC 2C 04 00 00 */ cmpwi r4, 0 /* 800453A0 00041000 4D 82 00 20 */ beqlr /* 800453A4 00041004 C0 04 00 00 */ lfs f0, 0(r4) /* 800453A8 00041008 D0 03 00 14 */ stfs f0, 0x14(r3) /* 800453AC 0004100C C0 04 00 04 */ lfs f0, 4(r4) /* 800453B0 00041010 D0 03 00 18 */ stfs f0, 0x18(r3) /* 800453B4 00041014 C0 04 00 08 */ lfs f0, 8(r4) /* 800453B8 00041018 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 800453BC 0004101C 4E 80 00 20 */ blr .global func_800453C0 func_800453C0: /* 800453C0 00041020 2C 04 00 00 */ cmpwi r4, 0 /* 800453C4 00041024 41 82 00 1C */ beq lbl_800453E0 /* 800453C8 00041028 C0 04 00 00 */ lfs f0, 0(r4) /* 800453CC 0004102C D0 03 00 20 */ stfs f0, 0x20(r3) /* 800453D0 00041030 C0 04 00 04 */ lfs f0, 4(r4) /* 800453D4 00041034 D0 03 00 24 */ stfs f0, 0x24(r3) /* 800453D8 00041038 C0 04 00 08 */ lfs f0, 8(r4) /* 800453DC 0004103C D0 03 00 28 */ stfs f0, 0x28(r3) lbl_800453E0: /* 800453E0 00041040 2C 05 00 00 */ cmpwi r5, 0 /* 800453E4 00041044 4D 82 00 20 */ beqlr /* 800453E8 00041048 C0 05 00 00 */ lfs f0, 0(r5) /* 800453EC 0004104C D0 03 00 2C */ stfs f0, 0x2c(r3) /* 800453F0 00041050 C0 05 00 04 */ lfs f0, 4(r5) /* 800453F4 00041054 D0 03 00 30 */ stfs f0, 0x30(r3) /* 800453F8 00041058 C0 05 00 08 */ lfs f0, 8(r5) /* 800453FC 0004105C D0 03 00 34 */ stfs f0, 0x34(r3) /* 80045400 00041060 4E 80 00 20 */ blr .global func_80045404 func_80045404: /* 80045404 00041064 2C 04 00 00 */ cmpwi r4, 0 /* 80045408 00041068 4D 82 00 20 */ beqlr /* 8004540C 0004106C C0 03 00 14 */ lfs f0, 0x14(r3) /* 80045410 00041070 D0 04 00 00 */ stfs f0, 0(r4) /* 80045414 00041074 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80045418 00041078 D0 04 00 04 */ stfs f0, 4(r4) /* 8004541C 0004107C C0 03 00 1C */ lfs f0, 0x1c(r3) /* 80045420 00041080 D0 04 00 08 */ stfs f0, 8(r4) /* 80045424 00041084 4E 80 00 20 */ blr .global func_80045428 func_80045428: /* 80045428 00041088 2C 04 00 00 */ cmpwi r4, 0 /* 8004542C 0004108C 41 82 00 1C */ beq lbl_80045448 /* 80045430 00041090 C0 03 00 20 */ lfs f0, 0x20(r3) /* 80045434 00041094 D0 04 00 00 */ stfs f0, 0(r4) /* 80045438 00041098 C0 03 00 24 */ lfs f0, 0x24(r3) /* 8004543C 0004109C D0 04 00 04 */ stfs f0, 4(r4) /* 80045440 000410A0 C0 03 00 28 */ lfs f0, 0x28(r3) /* 80045444 000410A4 D0 04 00 08 */ stfs f0, 8(r4) lbl_80045448: /* 80045448 000410A8 2C 05 00 00 */ cmpwi r5, 0 /* 8004544C 000410AC 4D 82 00 20 */ beqlr /* 80045450 000410B0 C0 03 00 2C */ lfs f0, 0x2c(r3) /* 80045454 000410B4 D0 05 00 00 */ stfs f0, 0(r5) /* 80045458 000410B8 C0 03 00 30 */ lfs f0, 0x30(r3) /* 8004545C 000410BC D0 05 00 04 */ stfs f0, 4(r5) /* 80045460 000410C0 C0 03 00 34 */ lfs f0, 0x34(r3) /* 80045464 000410C4 D0 05 00 08 */ stfs f0, 8(r5) /* 80045468 000410C8 4E 80 00 20 */ blr .global func_8004546C func_8004546C: /* 8004546C 000410CC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045470 000410D0 7C 08 02 A6 */ mflr r0 /* 80045474 000410D4 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 80045478 000410D8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004547C 000410DC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045480 000410E0 7C 7F 1B 78 */ mr r31, r3 /* 80045484 000410E4 C0 23 00 38 */ lfs f1, 0x38(r3) /* 80045488 000410E8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004548C 000410EC D0 01 00 08 */ stfs f0, 8(r1) /* 80045490 000410F0 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80045494 000410F4 80 63 00 04 */ lwz r3, 4(r3) /* 80045498 000410F8 2C 03 00 00 */ cmpwi r3, 0 /* 8004549C 000410FC 41 82 00 18 */ beq lbl_800454B4 /* 800454A0 00041100 38 9F 00 14 */ addi r4, r31, 0x14 /* 800454A4 00041104 4B FF 33 79 */ bl func_8003881C /* 800454A8 00041108 80 7F 00 04 */ lwz r3, 4(r31) /* 800454AC 0004110C 38 81 00 08 */ addi r4, r1, 8 /* 800454B0 00041110 4B FF 36 21 */ bl func_80038AD0 lbl_800454B4: /* 800454B4 00041114 80 01 00 24 */ lwz r0, 0x24(r1) /* 800454B8 00041118 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800454BC 0004111C 7C 08 03 A6 */ mtlr r0 /* 800454C0 00041120 38 21 00 20 */ addi r1, r1, 0x20 /* 800454C4 00041124 4E 80 00 20 */ blr .global func_800454C8 func_800454C8: /* 800454C8 00041128 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800454CC 0004112C 7C 08 02 A6 */ mflr r0 /* 800454D0 00041130 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800454D4 00041134 90 01 00 34 */ stw r0, 0x34(r1) /* 800454D8 00041138 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800454DC 0004113C 7C 7F 1B 78 */ mr r31, r3 /* 800454E0 00041140 93 C1 00 28 */ stw r30, 0x28(r1) /* 800454E4 00041144 3B C3 00 20 */ addi r30, r3, 0x20 /* 800454E8 00041148 93 A1 00 24 */ stw r29, 0x24(r1) /* 800454EC 0004114C 3B A0 00 00 */ li r29, 0 /* 800454F0 00041150 C0 23 00 38 */ lfs f1, 0x38(r3) /* 800454F4 00041154 D0 21 00 0C */ stfs f1, 0xc(r1) /* 800454F8 00041158 D0 01 00 08 */ stfs f0, 8(r1) /* 800454FC 0004115C D0 01 00 10 */ stfs f0, 0x10(r1) lbl_80045500: /* 80045500 00041160 80 7F 00 08 */ lwz r3, 8(r31) /* 80045504 00041164 2C 03 00 00 */ cmpwi r3, 0 /* 80045508 00041168 41 82 00 18 */ beq lbl_80045520 /* 8004550C 0004116C 7F C4 F3 78 */ mr r4, r30 /* 80045510 00041170 4B FF 33 0D */ bl func_8003881C /* 80045514 00041174 80 7F 00 08 */ lwz r3, 8(r31) /* 80045518 00041178 38 81 00 08 */ addi r4, r1, 8 /* 8004551C 0004117C 4B FF 35 B5 */ bl func_80038AD0 lbl_80045520: /* 80045520 00041180 3B BD 00 01 */ addi r29, r29, 1 /* 80045524 00041184 3B DE 00 0C */ addi r30, r30, 0xc /* 80045528 00041188 2C 1D 00 02 */ cmpwi r29, 2 /* 8004552C 0004118C 3B FF 00 04 */ addi r31, r31, 4 /* 80045530 00041190 41 80 FF D0 */ blt lbl_80045500 /* 80045534 00041194 80 01 00 34 */ lwz r0, 0x34(r1) /* 80045538 00041198 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004553C 0004119C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80045540 000411A0 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80045544 000411A4 7C 08 03 A6 */ mtlr r0 /* 80045548 000411A8 38 21 00 30 */ addi r1, r1, 0x30 /* 8004554C 000411AC 4E 80 00 20 */ blr .global func_80045550 func_80045550: /* 80045550 000411B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80045554 000411B4 7C 08 02 A6 */ mflr r0 /* 80045558 000411B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004555C 000411BC 80 0D 97 F8 */ lwz r0, lbl_8063EAB8-_SDA_BASE_(r13) /* 80045560 000411C0 2C 00 00 00 */ cmpwi r0, 0 /* 80045564 000411C4 40 82 00 1C */ bne lbl_80045580 /* 80045568 000411C8 38 60 01 6C */ li r3, 0x16c /* 8004556C 000411CC 48 19 54 C5 */ bl func_801DAA30 /* 80045570 000411D0 2C 03 00 00 */ cmpwi r3, 0 /* 80045574 000411D4 41 82 00 08 */ beq lbl_8004557C /* 80045578 000411D8 48 00 00 21 */ bl func_80045598 lbl_8004557C: /* 8004557C 000411DC 90 6D 97 F8 */ stw r3, lbl_8063EAB8-_SDA_BASE_(r13) lbl_80045580: /* 80045580 000411E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80045584 000411E4 7C 08 03 A6 */ mtlr r0 /* 80045588 000411E8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004558C 000411EC 4E 80 00 20 */ blr .global func_80045590 func_80045590: /* 80045590 000411F0 80 6D 97 F8 */ lwz r3, lbl_8063EAB8-_SDA_BASE_(r13) /* 80045594 000411F4 4E 80 00 20 */ blr .global func_80045598 func_80045598: /* 80045598 000411F8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004559C 000411FC 7C 08 02 A6 */ mflr r0 /* 800455A0 00041200 90 01 00 24 */ stw r0, 0x24(r1) /* 800455A4 00041204 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800455A8 00041208 3B E3 01 1C */ addi r31, r3, 0x11c /* 800455AC 0004120C 93 C1 00 18 */ stw r30, 0x18(r1) /* 800455B0 00041210 3B C3 00 0C */ addi r30, r3, 0xc /* 800455B4 00041214 93 A1 00 14 */ stw r29, 0x14(r1) /* 800455B8 00041218 7C 7D 1B 78 */ mr r29, r3 lbl_800455BC: /* 800455BC 0004121C 7F C3 F3 78 */ mr r3, r30 /* 800455C0 00041220 4B FF F9 69 */ bl func_80044F28 /* 800455C4 00041224 3B DE 00 44 */ addi r30, r30, 0x44 /* 800455C8 00041228 7C 1E F8 40 */ cmplw r30, r31 /* 800455CC 0004122C 41 80 FF F0 */ blt lbl_800455BC /* 800455D0 00041230 7F A3 EB 78 */ mr r3, r29 /* 800455D4 00041234 48 00 00 25 */ bl func_800455F8 /* 800455D8 00041238 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800455DC 0004123C 7F A3 EB 78 */ mr r3, r29 /* 800455E0 00041240 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800455E4 00041244 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800455E8 00041248 80 01 00 24 */ lwz r0, 0x24(r1) /* 800455EC 0004124C 7C 08 03 A6 */ mtlr r0 /* 800455F0 00041250 38 21 00 20 */ addi r1, r1, 0x20 /* 800455F4 00041254 4E 80 00 20 */ blr .global func_800455F8 func_800455F8: /* 800455F8 00041258 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800455FC 0004125C 7C 08 02 A6 */ mflr r0 /* 80045600 00041260 90 01 00 24 */ stw r0, 0x24(r1) /* 80045604 00041264 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045608 00041268 3B E3 00 0C */ addi r31, r3, 0xc /* 8004560C 0004126C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045610 00041270 3B C0 00 00 */ li r30, 0 /* 80045614 00041274 93 A1 00 14 */ stw r29, 0x14(r1) /* 80045618 00041278 7C 7D 1B 78 */ mr r29, r3 lbl_8004561C: /* 8004561C 0004127C 7F E3 FB 78 */ mr r3, r31 /* 80045620 00041280 4B FF F9 55 */ bl func_80044F74 /* 80045624 00041284 3B DE 00 01 */ addi r30, r30, 1 /* 80045628 00041288 3B FF 00 44 */ addi r31, r31, 0x44 /* 8004562C 0004128C 2C 1E 00 04 */ cmpwi r30, 4 /* 80045630 00041290 41 80 FF EC */ blt lbl_8004561C /* 80045634 00041294 38 00 00 00 */ li r0, 0 /* 80045638 00041298 38 C0 00 01 */ li r6, 1 /* 8004563C 0004129C 90 DD 00 00 */ stw r6, 0(r29) /* 80045640 000412A0 38 7D 01 2C */ addi r3, r29, 0x12c /* 80045644 000412A4 38 80 00 00 */ li r4, 0 /* 80045648 000412A8 38 A0 00 10 */ li r5, 0x10 /* 8004564C 000412AC 90 DD 01 24 */ stw r6, 0x124(r29) /* 80045650 000412B0 B0 1D 01 1E */ sth r0, 0x11e(r29) /* 80045654 000412B4 B0 1D 01 20 */ sth r0, 0x120(r29) /* 80045658 000412B8 98 1D 01 28 */ stb r0, 0x128(r29) /* 8004565C 000412BC 90 1D 00 08 */ stw r0, 8(r29) /* 80045660 000412C0 90 1D 01 64 */ stw r0, 0x164(r29) /* 80045664 000412C4 90 1D 01 68 */ stw r0, 0x168(r29) /* 80045668 000412C8 98 1D 01 1C */ stb r0, 0x11c(r29) /* 8004566C 000412CC 4B FB EA 99 */ bl memset /* 80045670 000412D0 38 7D 01 3C */ addi r3, r29, 0x13c /* 80045674 000412D4 38 80 00 00 */ li r4, 0 /* 80045678 000412D8 38 A0 00 10 */ li r5, 0x10 /* 8004567C 000412DC 4B FB EA 89 */ bl memset /* 80045680 000412E0 38 7D 01 4C */ addi r3, r29, 0x14c /* 80045684 000412E4 38 80 00 00 */ li r4, 0 /* 80045688 000412E8 38 A0 00 10 */ li r5, 0x10 /* 8004568C 000412EC 4B FB EA 79 */ bl memset /* 80045690 000412F0 38 7D 01 5C */ addi r3, r29, 0x15c /* 80045694 000412F4 38 80 00 00 */ li r4, 0 /* 80045698 000412F8 38 A0 00 08 */ li r5, 8 /* 8004569C 000412FC 4B FB EA 69 */ bl memset /* 800456A0 00041300 80 01 00 24 */ lwz r0, 0x24(r1) /* 800456A4 00041304 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800456A8 00041308 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800456AC 0004130C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800456B0 00041310 7C 08 03 A6 */ mtlr r0 /* 800456B4 00041314 38 21 00 20 */ addi r1, r1, 0x20 /* 800456B8 00041318 4E 80 00 20 */ blr .global func_800456BC func_800456BC: /* 800456BC 0004131C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800456C0 00041320 7C 08 02 A6 */ mflr r0 /* 800456C4 00041324 90 01 00 24 */ stw r0, 0x24(r1) /* 800456C8 00041328 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800456CC 0004132C 3B E3 00 0C */ addi r31, r3, 0xc /* 800456D0 00041330 93 C1 00 18 */ stw r30, 0x18(r1) /* 800456D4 00041334 3B C0 00 00 */ li r30, 0 /* 800456D8 00041338 93 A1 00 14 */ stw r29, 0x14(r1) /* 800456DC 0004133C 7C 7D 1B 78 */ mr r29, r3 lbl_800456E0: /* 800456E0 00041340 7F E3 FB 78 */ mr r3, r31 /* 800456E4 00041344 4B FF F9 2D */ bl func_80045010 /* 800456E8 00041348 7F E3 FB 78 */ mr r3, r31 /* 800456EC 0004134C 4B FF F8 89 */ bl func_80044F74 /* 800456F0 00041350 3B DE 00 01 */ addi r30, r30, 1 /* 800456F4 00041354 3B FF 00 44 */ addi r31, r31, 0x44 /* 800456F8 00041358 2C 1E 00 04 */ cmpwi r30, 4 /* 800456FC 0004135C 41 80 FF E4 */ blt lbl_800456E0 /* 80045700 00041360 38 00 00 00 */ li r0, 0 /* 80045704 00041364 B0 1D 01 1E */ sth r0, 0x11e(r29) /* 80045708 00041368 B0 1D 01 20 */ sth r0, 0x120(r29) /* 8004570C 0004136C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045710 00041370 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045714 00041374 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80045718 00041378 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004571C 0004137C 7C 08 03 A6 */ mtlr r0 /* 80045720 00041380 38 21 00 20 */ addi r1, r1, 0x20 /* 80045724 00041384 4E 80 00 20 */ blr .global func_80045728 func_80045728: /* 80045728 00041388 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004572C 0004138C 7C 08 02 A6 */ mflr r0 /* 80045730 00041390 2C 04 00 00 */ cmpwi r4, 0 /* 80045734 00041394 90 01 00 14 */ stw r0, 0x14(r1) /* 80045738 00041398 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004573C 0004139C 7C 7F 1B 78 */ mr r31, r3 /* 80045740 000413A0 41 80 00 28 */ blt lbl_80045768 /* 80045744 000413A4 2C 04 00 03 */ cmpwi r4, 3 /* 80045748 000413A8 41 81 00 20 */ bgt lbl_80045768 /* 8004574C 000413AC 1C 04 00 44 */ mulli r0, r4, 0x44 /* 80045750 000413B0 7C 63 02 14 */ add r3, r3, r0 /* 80045754 000413B4 38 63 00 0C */ addi r3, r3, 0xc /* 80045758 000413B8 4B FF F8 8D */ bl func_80044FE4 /* 8004575C 000413BC A0 7F 01 1E */ lhz r3, 0x11e(r31) /* 80045760 000413C0 38 03 00 01 */ addi r0, r3, 1 /* 80045764 000413C4 B0 1F 01 1E */ sth r0, 0x11e(r31) lbl_80045768: /* 80045768 000413C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004576C 000413CC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80045770 000413D0 7C 08 03 A6 */ mtlr r0 /* 80045774 000413D4 38 21 00 10 */ addi r1, r1, 0x10 /* 80045778 000413D8 4E 80 00 20 */ blr .global func_8004577C func_8004577C: /* 8004577C 000413DC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045780 000413E0 7C 08 02 A6 */ mflr r0 /* 80045784 000413E4 2C 04 00 00 */ cmpwi r4, 0 /* 80045788 000413E8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004578C 000413EC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045790 000413F0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045794 000413F4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80045798 000413F8 7C 7D 1B 78 */ mr r29, r3 /* 8004579C 000413FC 41 80 00 5C */ blt lbl_800457F8 /* 800457A0 00041400 2C 04 00 03 */ cmpwi r4, 3 /* 800457A4 00041404 41 81 00 54 */ bgt lbl_800457F8 /* 800457A8 00041408 1C 04 00 44 */ mulli r0, r4, 0x44 /* 800457AC 0004140C 7C E7 07 74 */ extsb r7, r7 /* 800457B0 00041410 7C 63 02 14 */ add r3, r3, r0 /* 800457B4 00041414 38 63 00 0C */ addi r3, r3, 0xc /* 800457B8 00041418 4B FF F9 21 */ bl func_800450D8 /* 800457BC 0004141C 38 00 00 00 */ li r0, 0 /* 800457C0 00041420 3B FD 00 0C */ addi r31, r29, 0xc /* 800457C4 00041424 B0 1D 01 1E */ sth r0, 0x11e(r29) /* 800457C8 00041428 3B C0 00 00 */ li r30, 0 lbl_800457CC: /* 800457CC 0004142C 7F E3 FB 78 */ mr r3, r31 /* 800457D0 00041430 4B FF F7 E1 */ bl func_80044FB0 /* 800457D4 00041434 2C 03 00 00 */ cmpwi r3, 0 /* 800457D8 00041438 41 82 00 10 */ beq lbl_800457E8 /* 800457DC 0004143C A0 7D 01 1E */ lhz r3, 0x11e(r29) /* 800457E0 00041440 38 03 00 01 */ addi r0, r3, 1 /* 800457E4 00041444 B0 1D 01 1E */ sth r0, 0x11e(r29) lbl_800457E8: /* 800457E8 00041448 3B DE 00 01 */ addi r30, r30, 1 /* 800457EC 0004144C 3B FF 00 44 */ addi r31, r31, 0x44 /* 800457F0 00041450 2C 1E 00 04 */ cmpwi r30, 4 /* 800457F4 00041454 41 80 FF D8 */ blt lbl_800457CC lbl_800457F8: /* 800457F8 00041458 80 01 00 24 */ lwz r0, 0x24(r1) /* 800457FC 0004145C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045800 00041460 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045804 00041464 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80045808 00041468 7C 08 03 A6 */ mtlr r0 /* 8004580C 0004146C 38 21 00 20 */ addi r1, r1, 0x20 /* 80045810 00041470 4E 80 00 20 */ blr .global func_80045814 func_80045814: /* 80045814 00041474 2C 04 00 00 */ cmpwi r4, 0 /* 80045818 00041478 4D 80 00 20 */ bltlr /* 8004581C 0004147C 2C 04 00 03 */ cmpwi r4, 3 /* 80045820 00041480 4D 81 00 20 */ bgtlr /* 80045824 00041484 1C 04 00 44 */ mulli r0, r4, 0x44 /* 80045828 00041488 7C 63 02 14 */ add r3, r3, r0 /* 8004582C 0004148C 38 63 00 0C */ addi r3, r3, 0xc /* 80045830 00041490 4B FF F9 44 */ b lbl_80045174 /* 80045834 00041494 4E 80 00 20 */ blr .global func_80045838 func_80045838: /* 80045838 00041498 2C 04 00 00 */ cmpwi r4, 0 /* 8004583C 0004149C 41 80 00 0C */ blt lbl_80045848 /* 80045840 000414A0 2C 04 00 03 */ cmpwi r4, 3 /* 80045844 000414A4 40 81 00 0C */ ble lbl_80045850 lbl_80045848: /* 80045848 000414A8 38 60 00 00 */ li r3, 0 /* 8004584C 000414AC 4E 80 00 20 */ blr lbl_80045850: /* 80045850 000414B0 54 80 07 BE */ clrlwi r0, r4, 0x1e /* 80045854 000414B4 1C 00 00 44 */ mulli r0, r0, 0x44 /* 80045858 000414B8 7C 63 02 14 */ add r3, r3, r0 /* 8004585C 000414BC 88 63 00 1C */ lbz r3, 0x1c(r3) /* 80045860 000414C0 4E 80 00 20 */ blr .global func_80045864 func_80045864: /* 80045864 000414C4 2C 04 00 00 */ cmpwi r4, 0 /* 80045868 000414C8 4D 80 00 20 */ bltlr /* 8004586C 000414CC 2C 04 00 03 */ cmpwi r4, 3 /* 80045870 000414D0 40 81 00 08 */ ble lbl_80045878 /* 80045874 000414D4 4E 80 00 20 */ blr lbl_80045878: /* 80045878 000414D8 54 80 07 BE */ clrlwi r0, r4, 0x1e /* 8004587C 000414DC 38 80 00 01 */ li r4, 1 /* 80045880 000414E0 1C 00 00 44 */ mulli r0, r0, 0x44 /* 80045884 000414E4 7C 63 02 14 */ add r3, r3, r0 /* 80045888 000414E8 98 83 00 1C */ stb r4, 0x1c(r3) /* 8004588C 000414EC 4E 80 00 20 */ blr .global func_80045890 func_80045890: /* 80045890 000414F0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80045894 000414F4 7C 08 02 A6 */ mflr r0 /* 80045898 000414F8 90 01 00 34 */ stw r0, 0x34(r1) /* 8004589C 000414FC 39 61 00 30 */ addi r11, r1, 0x30 /* 800458A0 00041500 48 18 18 7D */ bl _savegpr_24 /* 800458A4 00041504 7C 78 1B 78 */ mr r24, r3 /* 800458A8 00041508 7C 99 23 78 */ mr r25, r4 /* 800458AC 0004150C 7C BA 2B 78 */ mr r26, r5 /* 800458B0 00041510 7C DB 33 78 */ mr r27, r6 /* 800458B4 00041514 7C FC 3B 78 */ mr r28, r7 /* 800458B8 00041518 7D 1D 43 78 */ mr r29, r8 /* 800458BC 0004151C 7D 3E 4B 78 */ mr r30, r9 /* 800458C0 00041520 4B FF 04 DD */ bl func_80035D9C /* 800458C4 00041524 2C 19 00 00 */ cmpwi r25, 0 /* 800458C8 00041528 7C 7F 1B 78 */ mr r31, r3 /* 800458CC 0004152C 41 80 00 78 */ blt lbl_80045944 /* 800458D0 00041530 2C 19 00 03 */ cmpwi r25, 3 /* 800458D4 00041534 40 81 00 08 */ ble lbl_800458DC /* 800458D8 00041538 48 00 00 6C */ b lbl_80045944 lbl_800458DC: /* 800458DC 0004153C A0 18 01 1E */ lhz r0, 0x11e(r24) /* 800458E0 00041540 28 00 00 02 */ cmplwi r0, 2 /* 800458E4 00041544 40 82 00 1C */ bne lbl_80045900 /* 800458E8 00041548 57 20 07 FE */ clrlwi r0, r25, 0x1f /* 800458EC 0004154C 57 24 FF FE */ rlwinm r4, r25, 0x1f, 0x1f, 0x1f /* 800458F0 00041550 1C 00 00 44 */ mulli r0, r0, 0x44 /* 800458F4 00041554 7C 78 02 14 */ add r3, r24, r0 /* 800458F8 00041558 38 63 00 0C */ addi r3, r3, 0xc /* 800458FC 0004155C 48 00 00 24 */ b lbl_80045920 lbl_80045900: /* 80045900 00041560 28 00 00 04 */ cmplwi r0, 4 /* 80045904 00041564 40 82 00 40 */ bne lbl_80045944 /* 80045908 00041568 1C 19 00 44 */ mulli r0, r25, 0x44 /* 8004590C 0004156C 38 80 00 00 */ li r4, 0 /* 80045910 00041570 7C 78 02 14 */ add r3, r24, r0 /* 80045914 00041574 38 63 00 0C */ addi r3, r3, 0xc /* 80045918 00041578 48 00 00 08 */ b lbl_80045920 /* 8004591C 0004157C 48 00 00 28 */ b lbl_80045944 lbl_80045920: /* 80045920 00041580 7F 45 D3 78 */ mr r5, r26 /* 80045924 00041584 7F 66 DB 78 */ mr r6, r27 /* 80045928 00041588 7F 87 E3 78 */ mr r7, r28 /* 8004592C 0004158C 7F A8 EB 78 */ mr r8, r29 /* 80045930 00041590 7F C9 F3 78 */ mr r9, r30 /* 80045934 00041594 4B FF F9 C5 */ bl func_800452F8 /* 80045938 00041598 7F E3 FB 78 */ mr r3, r31 /* 8004593C 0004159C 7F 24 CB 78 */ mr r4, r25 /* 80045940 000415A0 4B FF 13 AD */ bl func_80036CEC lbl_80045944: /* 80045944 000415A4 39 61 00 30 */ addi r11, r1, 0x30 /* 80045948 000415A8 48 18 18 21 */ bl _restgpr_24 /* 8004594C 000415AC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80045950 000415B0 7C 08 03 A6 */ mtlr r0 /* 80045954 000415B4 38 21 00 30 */ addi r1, r1, 0x30 /* 80045958 000415B8 4E 80 00 20 */ blr .global func_8004595C func_8004595C: /* 8004595C 000415BC 2C 04 00 00 */ cmpwi r4, 0 /* 80045960 000415C0 41 80 00 0C */ blt lbl_8004596C /* 80045964 000415C4 2C 04 00 03 */ cmpwi r4, 3 /* 80045968 000415C8 40 81 00 0C */ ble lbl_80045974 lbl_8004596C: /* 8004596C 000415CC 38 60 00 00 */ li r3, 0 /* 80045970 000415D0 4E 80 00 20 */ blr lbl_80045974: /* 80045974 000415D4 A0 03 01 1E */ lhz r0, 0x11e(r3) /* 80045978 000415D8 28 00 00 02 */ cmplwi r0, 2 /* 8004597C 000415DC 40 82 00 1C */ bne lbl_80045998 /* 80045980 000415E0 54 80 07 FE */ clrlwi r0, r4, 0x1f /* 80045984 000415E4 54 84 FF FE */ rlwinm r4, r4, 0x1f, 0x1f, 0x1f /* 80045988 000415E8 1C 00 00 44 */ mulli r0, r0, 0x44 /* 8004598C 000415EC 7C 63 02 14 */ add r3, r3, r0 /* 80045990 000415F0 38 03 00 0C */ addi r0, r3, 0xc /* 80045994 000415F4 48 00 00 28 */ b lbl_800459BC lbl_80045998: /* 80045998 000415F8 28 00 00 04 */ cmplwi r0, 4 /* 8004599C 000415FC 40 82 00 18 */ bne lbl_800459B4 /* 800459A0 00041600 1C 04 00 44 */ mulli r0, r4, 0x44 /* 800459A4 00041604 38 80 00 00 */ li r4, 0 /* 800459A8 00041608 7C 63 02 14 */ add r3, r3, r0 /* 800459AC 0004160C 38 03 00 0C */ addi r0, r3, 0xc /* 800459B0 00041610 48 00 00 0C */ b lbl_800459BC lbl_800459B4: /* 800459B4 00041614 38 60 00 00 */ li r3, 0 /* 800459B8 00041618 4E 80 00 20 */ blr lbl_800459BC: /* 800459BC 0004161C 7C 60 22 14 */ add r3, r0, r4 /* 800459C0 00041620 88 63 00 11 */ lbz r3, 0x11(r3) /* 800459C4 00041624 4E 80 00 20 */ blr .global func_800459C8 func_800459C8: /* 800459C8 00041628 2C 04 00 00 */ cmpwi r4, 0 /* 800459CC 0004162C 4D 80 00 20 */ bltlr /* 800459D0 00041630 2C 04 00 03 */ cmpwi r4, 3 /* 800459D4 00041634 40 81 00 08 */ ble lbl_800459DC /* 800459D8 00041638 4E 80 00 20 */ blr lbl_800459DC: /* 800459DC 0004163C A0 03 01 1E */ lhz r0, 0x11e(r3) /* 800459E0 00041640 28 00 00 02 */ cmplwi r0, 2 /* 800459E4 00041644 40 82 00 1C */ bne lbl_80045A00 /* 800459E8 00041648 54 80 07 FE */ clrlwi r0, r4, 0x1f /* 800459EC 0004164C 54 84 FF FE */ rlwinm r4, r4, 0x1f, 0x1f, 0x1f /* 800459F0 00041650 1C 00 00 44 */ mulli r0, r0, 0x44 /* 800459F4 00041654 7C 63 02 14 */ add r3, r3, r0 /* 800459F8 00041658 38 03 00 0C */ addi r0, r3, 0xc /* 800459FC 0004165C 48 00 00 24 */ b lbl_80045A20 lbl_80045A00: /* 80045A00 00041660 28 00 00 04 */ cmplwi r0, 4 /* 80045A04 00041664 4C 82 00 20 */ bnelr /* 80045A08 00041668 1C 04 00 44 */ mulli r0, r4, 0x44 /* 80045A0C 0004166C 38 80 00 00 */ li r4, 0 /* 80045A10 00041670 7C 63 02 14 */ add r3, r3, r0 /* 80045A14 00041674 38 03 00 0C */ addi r0, r3, 0xc /* 80045A18 00041678 48 00 00 08 */ b lbl_80045A20 /* 80045A1C 0004167C 4E 80 00 20 */ blr lbl_80045A20: /* 80045A20 00041680 7C 60 22 14 */ add r3, r0, r4 /* 80045A24 00041684 38 00 00 01 */ li r0, 1 /* 80045A28 00041688 98 03 00 11 */ stb r0, 0x11(r3) /* 80045A2C 0004168C 4E 80 00 20 */ blr .global func_80045A30 func_80045A30: /* 80045A30 00041690 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045A34 00041694 7C 08 02 A6 */ mflr r0 /* 80045A38 00041698 90 01 00 24 */ stw r0, 0x24(r1) /* 80045A3C 0004169C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045A40 000416A0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045A44 000416A4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80045A48 000416A8 7C 9D 23 78 */ mr r29, r4 /* 80045A4C 000416AC 93 81 00 10 */ stw r28, 0x10(r1) /* 80045A50 000416B0 7C 7C 1B 78 */ mr r28, r3 /* 80045A54 000416B4 4B FF 03 49 */ bl func_80035D9C /* 80045A58 000416B8 7C 7F 1B 78 */ mr r31, r3 /* 80045A5C 000416BC 3B C0 00 00 */ li r30, 0 lbl_80045A60: /* 80045A60 000416C0 7F E3 FB 78 */ mr r3, r31 /* 80045A64 000416C4 7F C4 F3 78 */ mr r4, r30 /* 80045A68 000416C8 4B FF 12 AD */ bl func_80036D14 /* 80045A6C 000416CC A0 A3 00 00 */ lhz r5, 0(r3) /* 80045A70 000416D0 7C 69 1B 78 */ mr r9, r3 /* 80045A74 000416D4 2C 05 00 00 */ cmpwi r5, 0 /* 80045A78 000416D8 41 82 00 50 */ beq lbl_80045AC8 /* 80045A7C 000416DC 88 C9 00 04 */ lbz r6, 4(r9) /* 80045A80 000416E0 7F 83 E3 78 */ mr r3, r28 /* 80045A84 000416E4 A0 E9 00 02 */ lhz r7, 2(r9) /* 80045A88 000416E8 7F C4 F3 78 */ mr r4, r30 /* 80045A8C 000416EC 89 09 00 05 */ lbz r8, 5(r9) /* 80045A90 000416F0 81 29 00 0C */ lwz r9, 0xc(r9) /* 80045A94 000416F4 4B FF FD FD */ bl func_80045890 /* 80045A98 000416F8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80045A9C 000416FC 48 1D EA ED */ bl func_80224588 /* 80045AA0 00041700 7F 83 E3 78 */ mr r3, r28 /* 80045AA4 00041704 7F C4 F3 78 */ mr r4, r30 /* 80045AA8 00041708 38 A0 00 00 */ li r5, 0 /* 80045AAC 0004170C 48 00 00 55 */ bl func_80045B00 /* 80045AB0 00041710 2C 1D 00 00 */ cmpwi r29, 0 /* 80045AB4 00041714 40 82 00 14 */ bne lbl_80045AC8 /* 80045AB8 00041718 2C 03 00 00 */ cmpwi r3, 0 /* 80045ABC 0004171C 41 82 00 0C */ beq lbl_80045AC8 /* 80045AC0 00041720 38 80 00 00 */ li r4, 0 /* 80045AC4 00041724 4B FF 22 69 */ bl func_80037D2C lbl_80045AC8: /* 80045AC8 00041728 3B DE 00 01 */ addi r30, r30, 1 /* 80045ACC 0004172C 2C 1E 00 04 */ cmpwi r30, 4 /* 80045AD0 00041730 41 80 FF 90 */ blt lbl_80045A60 /* 80045AD4 00041734 7F 83 E3 78 */ mr r3, r28 /* 80045AD8 00041738 38 80 00 01 */ li r4, 1 /* 80045ADC 0004173C 48 00 02 21 */ bl func_80045CFC /* 80045AE0 00041740 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045AE4 00041744 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045AE8 00041748 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045AEC 0004174C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80045AF0 00041750 83 81 00 10 */ lwz r28, 0x10(r1) /* 80045AF4 00041754 7C 08 03 A6 */ mtlr r0 /* 80045AF8 00041758 38 21 00 20 */ addi r1, r1, 0x20 /* 80045AFC 0004175C 4E 80 00 20 */ blr .global func_80045B00 func_80045B00: /* 80045B00 00041760 2C 04 01 00 */ cmpwi r4, 0x100 /* 80045B04 00041764 38 A0 00 00 */ li r5, 0 /* 80045B08 00041768 40 82 00 0C */ bne lbl_80045B14 /* 80045B0C 0004176C 80 63 00 08 */ lwz r3, 8(r3) /* 80045B10 00041770 4E 80 00 20 */ blr lbl_80045B14: /* 80045B14 00041774 2C 04 01 01 */ cmpwi r4, 0x101 /* 80045B18 00041778 40 82 00 0C */ bne lbl_80045B24 /* 80045B1C 0004177C 80 63 00 04 */ lwz r3, 4(r3) /* 80045B20 00041780 4E 80 00 20 */ blr lbl_80045B24: /* 80045B24 00041784 54 80 06 31 */ rlwinm. r0, r4, 0, 0x18, 0x18 /* 80045B28 00041788 41 82 00 18 */ beq lbl_80045B40 /* 80045B2C 0004178C 54 80 07 BE */ clrlwi r0, r4, 0x1e /* 80045B30 00041790 1C 00 00 44 */ mulli r0, r0, 0x44 /* 80045B34 00041794 7C 63 02 14 */ add r3, r3, r0 /* 80045B38 00041798 80 63 00 10 */ lwz r3, 0x10(r3) /* 80045B3C 0004179C 4E 80 00 20 */ blr lbl_80045B40: /* 80045B40 000417A0 A0 03 01 1E */ lhz r0, 0x11e(r3) /* 80045B44 000417A4 28 00 00 02 */ cmplwi r0, 2 /* 80045B48 000417A8 40 82 00 20 */ bne lbl_80045B68 /* 80045B4C 000417AC 54 85 07 FE */ clrlwi r5, r4, 0x1f /* 80045B50 000417B0 54 80 0F 7A */ rlwinm r0, r4, 1, 0x1d, 0x1d /* 80045B54 000417B4 1C 85 00 44 */ mulli r4, r5, 0x44 /* 80045B58 000417B8 7C 63 22 14 */ add r3, r3, r4 /* 80045B5C 000417BC 7C 63 02 14 */ add r3, r3, r0 /* 80045B60 000417C0 80 A3 00 14 */ lwz r5, 0x14(r3) /* 80045B64 000417C4 48 00 00 1C */ b lbl_80045B80 lbl_80045B68: /* 80045B68 000417C8 28 00 00 04 */ cmplwi r0, 4 /* 80045B6C 000417CC 40 82 00 14 */ bne lbl_80045B80 /* 80045B70 000417D0 54 80 07 BE */ clrlwi r0, r4, 0x1e /* 80045B74 000417D4 1C 00 00 44 */ mulli r0, r0, 0x44 /* 80045B78 000417D8 7C 63 02 14 */ add r3, r3, r0 /* 80045B7C 000417DC 80 A3 00 14 */ lwz r5, 0x14(r3) lbl_80045B80: /* 80045B80 000417E0 7C A3 2B 78 */ mr r3, r5 /* 80045B84 000417E4 4E 80 00 20 */ blr .global func_80045B88 func_80045B88: /* 80045B88 000417E8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045B8C 000417EC 7C 08 02 A6 */ mflr r0 /* 80045B90 000417F0 90 01 00 24 */ stw r0, 0x24(r1) /* 80045B94 000417F4 54 80 07 BE */ clrlwi r0, r4, 0x1e /* 80045B98 000417F8 1C 00 00 44 */ mulli r0, r0, 0x44 /* 80045B9C 000417FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045BA0 00041800 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045BA4 00041804 7C 03 02 14 */ add r0, r3, r0 /* 80045BA8 00041808 37 E0 00 0C */ addic. r31, r0, 0xc /* 80045BAC 0004180C 7C DE 33 78 */ mr r30, r6 /* 80045BB0 00041810 93 A1 00 14 */ stw r29, 0x14(r1) /* 80045BB4 00041814 7C BD 2B 78 */ mr r29, r5 /* 80045BB8 00041818 40 82 00 0C */ bne lbl_80045BC4 /* 80045BBC 0004181C 38 60 00 00 */ li r3, 0 /* 80045BC0 00041820 48 00 00 3C */ b lbl_80045BFC lbl_80045BC4: /* 80045BC4 00041824 7F E3 FB 78 */ mr r3, r31 /* 80045BC8 00041828 4B FF F3 E9 */ bl func_80044FB0 /* 80045BCC 0004182C 2C 03 00 00 */ cmpwi r3, 0 /* 80045BD0 00041830 40 82 00 0C */ bne lbl_80045BDC /* 80045BD4 00041834 38 60 00 00 */ li r3, 0 /* 80045BD8 00041838 48 00 00 24 */ b lbl_80045BFC lbl_80045BDC: /* 80045BDC 0004183C 7F E3 FB 78 */ mr r3, r31 /* 80045BE0 00041840 7F A4 EB 78 */ mr r4, r29 /* 80045BE4 00041844 4B FF F8 21 */ bl func_80045404 /* 80045BE8 00041848 7F E3 FB 78 */ mr r3, r31 /* 80045BEC 0004184C 4B FF F8 81 */ bl func_8004546C /* 80045BF0 00041850 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 80045BF4 00041854 38 60 00 01 */ li r3, 1 /* 80045BF8 00041858 D0 1E 00 00 */ stfs f0, 0(r30) lbl_80045BFC: /* 80045BFC 0004185C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045C00 00041860 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045C04 00041864 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045C08 00041868 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80045C0C 0004186C 7C 08 03 A6 */ mtlr r0 /* 80045C10 00041870 38 21 00 20 */ addi r1, r1, 0x20 /* 80045C14 00041874 4E 80 00 20 */ blr .global func_80045C18 func_80045C18: /* 80045C18 00041878 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80045C1C 0004187C 7C 08 02 A6 */ mflr r0 /* 80045C20 00041880 2C 07 00 00 */ cmpwi r7, 0 /* 80045C24 00041884 90 01 00 24 */ stw r0, 0x24(r1) /* 80045C28 00041888 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80045C2C 0004188C 7C BF 2B 78 */ mr r31, r5 /* 80045C30 00041890 93 C1 00 18 */ stw r30, 0x18(r1) /* 80045C34 00041894 7C DE 33 78 */ mr r30, r6 /* 80045C38 00041898 93 A1 00 14 */ stw r29, 0x14(r1) /* 80045C3C 0004189C 7C 9D 23 78 */ mr r29, r4 /* 80045C40 000418A0 93 81 00 10 */ stw r28, 0x10(r1) /* 80045C44 000418A4 7C 7C 1B 78 */ mr r28, r3 /* 80045C48 000418A8 41 82 00 0C */ beq lbl_80045C54 /* 80045C4C 000418AC 38 80 00 00 */ li r4, 0 /* 80045C50 000418B0 48 00 00 AD */ bl func_80045CFC lbl_80045C54: /* 80045C54 000418B4 A0 1C 01 1E */ lhz r0, 0x11e(r28) /* 80045C58 000418B8 28 00 00 04 */ cmplwi r0, 4 /* 80045C5C 000418BC 40 82 00 2C */ bne lbl_80045C88 /* 80045C60 000418C0 1C 1D 00 44 */ mulli r0, r29, 0x44 /* 80045C64 000418C4 7F E4 FB 78 */ mr r4, r31 /* 80045C68 000418C8 38 A0 00 00 */ li r5, 0 /* 80045C6C 000418CC 7C 7C 02 14 */ add r3, r28, r0 /* 80045C70 000418D0 3B E3 00 0C */ addi r31, r3, 0xc /* 80045C74 000418D4 7F E3 FB 78 */ mr r3, r31 /* 80045C78 000418D8 4B FF F7 B1 */ bl func_80045428 /* 80045C7C 000418DC C0 1F 00 38 */ lfs f0, 0x38(r31) /* 80045C80 000418E0 D0 1E 00 00 */ stfs f0, 0(r30) /* 80045C84 000418E4 48 00 00 54 */ b lbl_80045CD8 lbl_80045C88: /* 80045C88 000418E8 28 00 00 02 */ cmplwi r0, 2 /* 80045C8C 000418EC 40 82 00 44 */ bne lbl_80045CD0 /* 80045C90 000418F0 57 A3 07 FE */ clrlwi r3, r29, 0x1f /* 80045C94 000418F4 57 A0 07 BD */ rlwinm. r0, r29, 0, 0x1e, 0x1e /* 80045C98 000418F8 1C 03 00 44 */ mulli r0, r3, 0x44 /* 80045C9C 000418FC 7C 7C 02 14 */ add r3, r28, r0 /* 80045CA0 00041900 38 63 00 0C */ addi r3, r3, 0xc /* 80045CA4 00041904 C0 03 00 38 */ lfs f0, 0x38(r3) /* 80045CA8 00041908 D0 1E 00 00 */ stfs f0, 0(r30) /* 80045CAC 0004190C 41 82 00 14 */ beq lbl_80045CC0 /* 80045CB0 00041910 7F E5 FB 78 */ mr r5, r31 /* 80045CB4 00041914 38 80 00 00 */ li r4, 0 /* 80045CB8 00041918 4B FF F7 71 */ bl func_80045428 /* 80045CBC 0004191C 48 00 00 1C */ b lbl_80045CD8 lbl_80045CC0: /* 80045CC0 00041920 7F E4 FB 78 */ mr r4, r31 /* 80045CC4 00041924 38 A0 00 00 */ li r5, 0 /* 80045CC8 00041928 4B FF F7 61 */ bl func_80045428 /* 80045CCC 0004192C 48 00 00 0C */ b lbl_80045CD8 lbl_80045CD0: /* 80045CD0 00041930 38 60 00 00 */ li r3, 0 /* 80045CD4 00041934 48 00 00 08 */ b lbl_80045CDC lbl_80045CD8: /* 80045CD8 00041938 38 60 00 01 */ li r3, 1 lbl_80045CDC: /* 80045CDC 0004193C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80045CE0 00041940 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80045CE4 00041944 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80045CE8 00041948 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80045CEC 0004194C 83 81 00 10 */ lwz r28, 0x10(r1) /* 80045CF0 00041950 7C 08 03 A6 */ mtlr r0 /* 80045CF4 00041954 38 21 00 20 */ addi r1, r1, 0x20 /* 80045CF8 00041958 4E 80 00 20 */ blr .global func_80045CFC func_80045CFC: /* 80045CFC 0004195C 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 80045D00 00041960 7C 08 02 A6 */ mflr r0 /* 80045D04 00041964 90 01 00 C4 */ stw r0, 0xc4(r1) /* 80045D08 00041968 DB E1 00 B0 */ stfd f31, 0xb0(r1) /* 80045D0C 0004196C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 /* 80045D10 00041970 DB C1 00 A0 */ stfd f30, 0xa0(r1) /* 80045D14 00041974 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 /* 80045D18 00041978 DB A1 00 90 */ stfd f29, 0x90(r1) /* 80045D1C 0004197C F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 /* 80045D20 00041980 DB 81 00 80 */ stfd f28, 0x80(r1) /* 80045D24 00041984 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 /* 80045D28 00041988 DB 61 00 70 */ stfd f27, 0x70(r1) /* 80045D2C 0004198C F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0 /* 80045D30 00041990 DB 41 00 60 */ stfd f26, 0x60(r1) /* 80045D34 00041994 F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0 /* 80045D38 00041998 DB 21 00 50 */ stfd f25, 0x50(r1) /* 80045D3C 0004199C F3 21 00 58 */ psq_st f25, 88(r1), 0, qr0 /* 80045D40 000419A0 39 61 00 50 */ addi r11, r1, 0x50 /* 80045D44 000419A4 48 18 13 DD */ bl _savegpr_25 /* 80045D48 000419A8 C3 62 83 8C */ lfs f27, lbl_8064098C-_SDA2_BASE_(r2) /* 80045D4C 000419AC 7C 7E 1B 78 */ mr r30, r3 /* 80045D50 000419B0 7C 9F 23 78 */ mr r31, r4 /* 80045D54 000419B4 4B FF 84 09 */ bl func_8003E15C /* 80045D58 000419B8 2C 03 00 00 */ cmpwi r3, 0 /* 80045D5C 000419BC 41 82 00 B4 */ beq lbl_80045E10 /* 80045D60 000419C0 3B BE 00 0C */ addi r29, r30, 0xc /* 80045D64 000419C4 3B 20 FF FF */ li r25, -1 /* 80045D68 000419C8 3B 40 00 00 */ li r26, 0 lbl_80045D6C: /* 80045D6C 000419CC 7F A3 EB 78 */ mr r3, r29 /* 80045D70 000419D0 4B FF F2 41 */ bl func_80044FB0 /* 80045D74 000419D4 2C 03 00 00 */ cmpwi r3, 0 /* 80045D78 000419D8 41 82 00 38 */ beq lbl_80045DB0 /* 80045D7C 000419DC 7F BC EB 78 */ mr r28, r29 /* 80045D80 000419E0 3B 60 00 00 */ li r27, 0 lbl_80045D84: /* 80045D84 000419E4 80 7C 00 08 */ lwz r3, 8(r28) /* 80045D88 000419E8 2C 03 00 00 */ cmpwi r3, 0 /* 80045D8C 000419EC 41 82 00 14 */ beq lbl_80045DA0 /* 80045D90 000419F0 4B FF 39 45 */ bl func_800396D4 /* 80045D94 000419F4 7C 19 18 00 */ cmpw r25, r3 /* 80045D98 000419F8 40 80 00 08 */ bge lbl_80045DA0 /* 80045D9C 000419FC 7C 79 1B 78 */ mr r25, r3 lbl_80045DA0: /* 80045DA0 00041A00 3B 7B 00 01 */ addi r27, r27, 1 /* 80045DA4 00041A04 3B 9C 00 04 */ addi r28, r28, 4 /* 80045DA8 00041A08 2C 1B 00 02 */ cmpwi r27, 2 /* 80045DAC 00041A0C 41 80 FF D8 */ blt lbl_80045D84 lbl_80045DB0: /* 80045DB0 00041A10 3B 5A 00 01 */ addi r26, r26, 1 /* 80045DB4 00041A14 3B BD 00 44 */ addi r29, r29, 0x44 /* 80045DB8 00041A18 2C 1A 00 04 */ cmpwi r26, 4 /* 80045DBC 00041A1C 41 80 FF B0 */ blt lbl_80045D6C /* 80045DC0 00041A20 2C 19 00 02 */ cmpwi r25, 2 /* 80045DC4 00041A24 41 81 00 08 */ bgt lbl_80045DCC /* 80045DC8 00041A28 C3 62 83 90 */ lfs f27, lbl_80640990-_SDA2_BASE_(r2) lbl_80045DCC: /* 80045DCC 00041A2C 2C 19 00 03 */ cmpwi r25, 3 /* 80045DD0 00041A30 40 82 00 08 */ bne lbl_80045DD8 /* 80045DD4 00041A34 C3 62 83 8C */ lfs f27, lbl_8064098C-_SDA2_BASE_(r2) lbl_80045DD8: /* 80045DD8 00041A38 2C 19 00 04 */ cmpwi r25, 4 /* 80045DDC 00041A3C 40 82 00 08 */ bne lbl_80045DE4 /* 80045DE0 00041A40 C3 62 83 94 */ lfs f27, lbl_80640994-_SDA2_BASE_(r2) lbl_80045DE4: /* 80045DE4 00041A44 2C 19 00 05 */ cmpwi r25, 5 /* 80045DE8 00041A48 40 82 00 08 */ bne lbl_80045DF0 /* 80045DEC 00041A4C C3 62 83 98 */ lfs f27, lbl_80640998-_SDA2_BASE_(r2) lbl_80045DF0: /* 80045DF0 00041A50 2C 19 00 06 */ cmpwi r25, 6 /* 80045DF4 00041A54 41 80 00 08 */ blt lbl_80045DFC /* 80045DF8 00041A58 C3 62 83 9C */ lfs f27, lbl_8064099C-_SDA2_BASE_(r2) lbl_80045DFC: /* 80045DFC 00041A5C 2C 19 00 01 */ cmpwi r25, 1 /* 80045E00 00041A60 93 3E 01 24 */ stw r25, 0x124(r30) /* 80045E04 00041A64 40 80 00 0C */ bge lbl_80045E10 /* 80045E08 00041A68 38 00 00 01 */ li r0, 1 /* 80045E0C 00041A6C 90 1E 01 24 */ stw r0, 0x124(r30) lbl_80045E10: /* 80045E10 00041A70 3B 7E 00 0C */ addi r27, r30, 0xc /* 80045E14 00041A74 C3 A2 83 88 */ lfs f29, lbl_80640988-_SDA2_BASE_(r2) /* 80045E18 00041A78 C3 22 83 B0 */ lfs f25, lbl_806409B0-_SDA2_BASE_(r2) /* 80045E1C 00041A7C 7F 7D DB 78 */ mr r29, r27 /* 80045E20 00041A80 C3 42 83 AC */ lfs f26, lbl_806409AC-_SDA2_BASE_(r2) /* 80045E24 00041A84 3B 40 00 00 */ li r26, 0 /* 80045E28 00041A88 C3 C2 83 A0 */ lfs f30, lbl_806409A0-_SDA2_BASE_(r2) /* 80045E2C 00041A8C C3 E2 83 A4 */ lfs f31, lbl_806409A4-_SDA2_BASE_(r2) lbl_80045E30: /* 80045E30 00041A90 7F A3 EB 78 */ mr r3, r29 /* 80045E34 00041A94 4B FF F1 7D */ bl func_80044FB0 /* 80045E38 00041A98 2C 03 00 00 */ cmpwi r3, 0 /* 80045E3C 00041A9C 41 82 02 1C */ beq lbl_80046058 /* 80045E40 00041AA0 57 5C 07 FF */ clrlwi. r28, r26, 0x1f /* 80045E44 00041AA4 D3 A1 00 20 */ stfs f29, 0x20(r1) /* 80045E48 00041AA8 D3 A1 00 24 */ stfs f29, 0x24(r1) /* 80045E4C 00041AAC D3 A1 00 28 */ stfs f29, 0x28(r1) /* 80045E50 00041AB0 D3 A1 00 14 */ stfs f29, 0x14(r1) /* 80045E54 00041AB4 D3 A1 00 18 */ stfs f29, 0x18(r1) /* 80045E58 00041AB8 D3 A1 00 1C */ stfs f29, 0x1c(r1) /* 80045E5C 00041ABC 40 82 00 20 */ bne lbl_80045E7C /* 80045E60 00041AC0 FC 00 D8 50 */ fneg f0, f27 /* 80045E64 00041AC4 FF 80 E8 90 */ fmr f28, f29 /* 80045E68 00041AC8 EC 3E 00 32 */ fmuls f1, f30, f0 /* 80045E6C 00041ACC EC 1F 00 32 */ fmuls f0, f31, f0 /* 80045E70 00041AD0 D0 21 00 28 */ stfs f1, 0x28(r1) /* 80045E74 00041AD4 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80045E78 00041AD8 48 00 00 18 */ b lbl_80045E90 lbl_80045E7C: /* 80045E7C 00041ADC EC 3E 06 F2 */ fmuls f1, f30, f27 /* 80045E80 00041AE0 C3 82 83 A8 */ lfs f28, lbl_806409A8-_SDA2_BASE_(r2) /* 80045E84 00041AE4 EC 1F 06 F2 */ fmuls f0, f31, f27 /* 80045E88 00041AE8 D0 21 00 28 */ stfs f1, 0x28(r1) /* 80045E8C 00041AEC D0 01 00 1C */ stfs f0, 0x1c(r1) lbl_80045E90: /* 80045E90 00041AF0 1C 1C 00 44 */ mulli r0, r28, 0x44 /* 80045E94 00041AF4 3B 20 00 00 */ li r25, 0 /* 80045E98 00041AF8 7C 7E 02 14 */ add r3, r30, r0 /* 80045E9C 00041AFC 38 63 00 0C */ addi r3, r3, 0xc /* 80045EA0 00041B00 4B FF F1 11 */ bl func_80044FB0 /* 80045EA4 00041B04 2C 03 00 00 */ cmpwi r3, 0 /* 80045EA8 00041B08 41 82 00 08 */ beq lbl_80045EB0 /* 80045EAC 00041B0C 3B 20 00 01 */ li r25, 1 lbl_80045EB0: /* 80045EB0 00041B10 63 80 00 02 */ ori r0, r28, 2 /* 80045EB4 00041B14 1C 00 00 44 */ mulli r0, r0, 0x44 /* 80045EB8 00041B18 7C 7E 02 14 */ add r3, r30, r0 /* 80045EBC 00041B1C 38 63 00 0C */ addi r3, r3, 0xc /* 80045EC0 00041B20 4B FF F0 F1 */ bl func_80044FB0 /* 80045EC4 00041B24 2C 03 00 00 */ cmpwi r3, 0 /* 80045EC8 00041B28 41 82 00 08 */ beq lbl_80045ED0 /* 80045ECC 00041B2C 3B 39 00 01 */ addi r25, r25, 1 lbl_80045ED0: /* 80045ED0 00041B30 2C 19 00 01 */ cmpwi r25, 1 /* 80045ED4 00041B34 40 82 00 0C */ bne lbl_80045EE0 /* 80045ED8 00041B38 D3 A1 00 20 */ stfs f29, 0x20(r1) /* 80045EDC 00041B3C 48 00 00 34 */ b lbl_80045F10 lbl_80045EE0: /* 80045EE0 00041B40 2C 19 00 02 */ cmpwi r25, 2 /* 80045EE4 00041B44 40 82 00 2C */ bne lbl_80045F10 /* 80045EE8 00041B48 57 40 07 BF */ clrlwi. r0, r26, 0x1e /* 80045EEC 00041B4C 41 82 00 0C */ beq lbl_80045EF8 /* 80045EF0 00041B50 2C 00 00 03 */ cmpwi r0, 3 /* 80045EF4 00041B54 40 82 00 10 */ bne lbl_80045F04 lbl_80045EF8: /* 80045EF8 00041B58 EC 1A 06 F2 */ fmuls f0, f26, f27 /* 80045EFC 00041B5C D0 01 00 20 */ stfs f0, 0x20(r1) /* 80045F00 00041B60 48 00 00 10 */ b lbl_80045F10 lbl_80045F04: /* 80045F04 00041B64 FC 00 D8 50 */ fneg f0, f27 /* 80045F08 00041B68 EC 1A 00 32 */ fmuls f0, f26, f0 /* 80045F0C 00041B6C D0 01 00 20 */ stfs f0, 0x20(r1) lbl_80045F10: /* 80045F10 00041B70 C0 01 00 28 */ lfs f0, 0x28(r1) /* 80045F14 00041B74 7F A3 EB 78 */ mr r3, r29 /* 80045F18 00041B78 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80045F1C 00041B7C 4B FF F0 9D */ bl func_80044FB8 /* 80045F20 00041B80 2C 03 00 02 */ cmpwi r3, 2 /* 80045F24 00041B84 41 82 00 A0 */ beq lbl_80045FC4 /* 80045F28 00041B88 40 80 01 24 */ bge lbl_8004604C /* 80045F2C 00041B8C 2C 03 00 01 */ cmpwi r3, 1 /* 80045F30 00041B90 40 80 00 08 */ bge lbl_80045F38 /* 80045F34 00041B94 48 00 01 18 */ b lbl_8004604C lbl_80045F38: /* 80045F38 00041B98 80 1E 00 00 */ lwz r0, 0(r30) /* 80045F3C 00041B9C 2C 00 00 00 */ cmpwi r0, 0 /* 80045F40 00041BA0 40 82 00 1C */ bne lbl_80045F5C /* 80045F44 00041BA4 EC 39 06 F2 */ fmuls f1, f25, f27 /* 80045F48 00041BA8 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80045F4C 00041BAC D3 A1 00 14 */ stfs f29, 0x14(r1) /* 80045F50 00041BB0 EC 00 08 2A */ fadds f0, f0, f1 /* 80045F54 00041BB4 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80045F58 00041BB8 48 00 00 48 */ b lbl_80045FA0 lbl_80045F5C: /* 80045F5C 00041BBC 2C 00 00 02 */ cmpwi r0, 2 /* 80045F60 00041BC0 40 82 00 40 */ bne lbl_80045FA0 /* 80045F64 00041BC4 C0 21 00 20 */ lfs f1, 0x20(r1) /* 80045F68 00041BC8 57 40 07 BF */ clrlwi. r0, r26, 0x1e /* 80045F6C 00041BCC D0 21 00 14 */ stfs f1, 0x14(r1) /* 80045F70 00041BD0 41 82 00 0C */ beq lbl_80045F7C /* 80045F74 00041BD4 2C 00 00 03 */ cmpwi r0, 3 /* 80045F78 00041BD8 40 82 00 18 */ bne lbl_80045F90 lbl_80045F7C: /* 80045F7C 00041BDC EC 39 06 F2 */ fmuls f1, f25, f27 /* 80045F80 00041BE0 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80045F84 00041BE4 EC 00 08 2A */ fadds f0, f0, f1 /* 80045F88 00041BE8 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80045F8C 00041BEC 48 00 00 14 */ b lbl_80045FA0 lbl_80045F90: /* 80045F90 00041BF0 FC 00 D8 50 */ fneg f0, f27 /* 80045F94 00041BF4 EC 19 00 32 */ fmuls f0, f25, f0 /* 80045F98 00041BF8 EC 01 00 2A */ fadds f0, f1, f0 /* 80045F9C 00041BFC D0 01 00 20 */ stfs f0, 0x20(r1) lbl_80045FA0: /* 80045FA0 00041C00 7F A3 EB 78 */ mr r3, r29 /* 80045FA4 00041C04 38 81 00 20 */ addi r4, r1, 0x20 /* 80045FA8 00041C08 4B FF F3 F5 */ bl func_8004539C /* 80045FAC 00041C0C 38 81 00 14 */ addi r4, r1, 0x14 /* 80045FB0 00041C10 7F A3 EB 78 */ mr r3, r29 /* 80045FB4 00041C14 7C 85 23 78 */ mr r5, r4 /* 80045FB8 00041C18 4B FF F4 09 */ bl func_800453C0 /* 80045FBC 00041C1C D3 9D 00 38 */ stfs f28, 0x38(r29) /* 80045FC0 00041C20 48 00 00 98 */ b lbl_80046058 lbl_80045FC4: /* 80045FC4 00041C24 C0 41 00 14 */ lfs f2, 0x14(r1) /* 80045FC8 00041C28 C0 21 00 18 */ lfs f1, 0x18(r1) /* 80045FCC 00041C2C C0 01 00 1C */ lfs f0, 0x1c(r1) /* 80045FD0 00041C30 D0 41 00 08 */ stfs f2, 8(r1) /* 80045FD4 00041C34 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80045FD8 00041C38 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80045FDC 00041C3C 80 1E 00 00 */ lwz r0, 0(r30) /* 80045FE0 00041C40 2C 00 00 00 */ cmpwi r0, 0 /* 80045FE4 00041C44 40 82 00 10 */ bne lbl_80045FF4 /* 80045FE8 00041C48 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80045FEC 00041C4C D0 01 00 14 */ stfs f0, 0x14(r1) /* 80045FF0 00041C50 48 00 00 1C */ b lbl_8004600C lbl_80045FF4: /* 80045FF4 00041C54 EC 5A 06 F2 */ fmuls f2, f26, f27 /* 80045FF8 00041C58 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80045FFC 00041C5C EC 20 10 2A */ fadds f1, f0, f2 /* 80046000 00041C60 EC 00 10 28 */ fsubs f0, f0, f2 /* 80046004 00041C64 D0 21 00 14 */ stfs f1, 0x14(r1) /* 80046008 00041C68 D0 01 00 08 */ stfs f0, 8(r1) lbl_8004600C: /* 8004600C 00041C6C 7F A3 EB 78 */ mr r3, r29 /* 80046010 00041C70 38 81 00 20 */ addi r4, r1, 0x20 /* 80046014 00041C74 4B FF F3 89 */ bl func_8004539C /* 80046018 00041C78 2C 1C 00 00 */ cmpwi r28, 0 /* 8004601C 00041C7C 41 82 00 18 */ beq lbl_80046034 /* 80046020 00041C80 7F A3 EB 78 */ mr r3, r29 /* 80046024 00041C84 38 81 00 08 */ addi r4, r1, 8 /* 80046028 00041C88 38 A1 00 14 */ addi r5, r1, 0x14 /* 8004602C 00041C8C 4B FF F3 95 */ bl func_800453C0 /* 80046030 00041C90 48 00 00 14 */ b lbl_80046044 lbl_80046034: /* 80046034 00041C94 7F A3 EB 78 */ mr r3, r29 /* 80046038 00041C98 38 81 00 14 */ addi r4, r1, 0x14 /* 8004603C 00041C9C 38 A1 00 08 */ addi r5, r1, 8 /* 80046040 00041CA0 4B FF F3 81 */ bl func_800453C0 lbl_80046044: /* 80046044 00041CA4 D3 9D 00 38 */ stfs f28, 0x38(r29) /* 80046048 00041CA8 48 00 00 10 */ b lbl_80046058 lbl_8004604C: /* 8004604C 00041CAC 7F A3 EB 78 */ mr r3, r29 /* 80046050 00041CB0 38 81 00 20 */ addi r4, r1, 0x20 /* 80046054 00041CB4 4B FF F3 49 */ bl func_8004539C lbl_80046058: /* 80046058 00041CB8 3B 5A 00 01 */ addi r26, r26, 1 /* 8004605C 00041CBC 3B BD 00 44 */ addi r29, r29, 0x44 /* 80046060 00041CC0 2C 1A 00 04 */ cmpwi r26, 4 /* 80046064 00041CC4 41 80 FD CC */ blt lbl_80045E30 /* 80046068 00041CC8 2C 1F 00 00 */ cmpwi r31, 0 /* 8004606C 00041CCC 41 82 00 40 */ beq lbl_800460AC /* 80046070 00041CD0 3B 20 00 00 */ li r25, 0 /* 80046074 00041CD4 48 00 00 2C */ b lbl_800460A0 lbl_80046078: /* 80046078 00041CD8 7F 63 DB 78 */ mr r3, r27 /* 8004607C 00041CDC 4B FF EF 35 */ bl func_80044FB0 /* 80046080 00041CE0 2C 03 00 00 */ cmpwi r3, 0 /* 80046084 00041CE4 41 82 00 14 */ beq lbl_80046098 /* 80046088 00041CE8 7F 63 DB 78 */ mr r3, r27 /* 8004608C 00041CEC 4B FF F3 E1 */ bl func_8004546C /* 80046090 00041CF0 7F 63 DB 78 */ mr r3, r27 /* 80046094 00041CF4 4B FF F4 35 */ bl func_800454C8 lbl_80046098: /* 80046098 00041CF8 3B 7B 00 44 */ addi r27, r27, 0x44 /* 8004609C 00041CFC 3B 39 00 01 */ addi r25, r25, 1 lbl_800460A0: /* 800460A0 00041D00 A0 1E 01 1E */ lhz r0, 0x11e(r30) /* 800460A4 00041D04 7C 19 00 00 */ cmpw r25, r0 /* 800460A8 00041D08 41 80 FF D0 */ blt lbl_80046078 lbl_800460AC: /* 800460AC 00041D0C 7F C3 F3 78 */ mr r3, r30 /* 800460B0 00041D10 48 00 09 35 */ bl func_800469E4 /* 800460B4 00041D14 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 /* 800460B8 00041D18 CB E1 00 B0 */ lfd f31, 0xb0(r1) /* 800460BC 00041D1C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 /* 800460C0 00041D20 CB C1 00 A0 */ lfd f30, 0xa0(r1) /* 800460C4 00041D24 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 /* 800460C8 00041D28 CB A1 00 90 */ lfd f29, 0x90(r1) /* 800460CC 00041D2C E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 /* 800460D0 00041D30 CB 81 00 80 */ lfd f28, 0x80(r1) /* 800460D4 00041D34 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0 /* 800460D8 00041D38 CB 61 00 70 */ lfd f27, 0x70(r1) /* 800460DC 00041D3C E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0 /* 800460E0 00041D40 CB 41 00 60 */ lfd f26, 0x60(r1) /* 800460E4 00041D44 E3 21 00 58 */ psq_l f25, 88(r1), 0, qr0 /* 800460E8 00041D48 39 61 00 50 */ addi r11, r1, 0x50 /* 800460EC 00041D4C CB 21 00 50 */ lfd f25, 0x50(r1) /* 800460F0 00041D50 48 18 10 7D */ bl _restgpr_25 /* 800460F4 00041D54 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800460F8 00041D58 7C 08 03 A6 */ mtlr r0 /* 800460FC 00041D5C 38 21 00 C0 */ addi r1, r1, 0xc0 /* 80046100 00041D60 4E 80 00 20 */ blr .global func_80046104 func_80046104: /* 80046104 00041D64 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80046108 00041D68 7C 08 02 A6 */ mflr r0 /* 8004610C 00041D6C 90 01 00 24 */ stw r0, 0x24(r1) /* 80046110 00041D70 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80046114 00041D74 93 C1 00 18 */ stw r30, 0x18(r1) /* 80046118 00041D78 7C BE 2B 78 */ mr r30, r5 /* 8004611C 00041D7C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80046120 00041D80 7C 9D 23 78 */ mr r29, r4 /* 80046124 00041D84 93 81 00 10 */ stw r28, 0x10(r1) /* 80046128 00041D88 7C 7C 1B 78 */ mr r28, r3 /* 8004612C 00041D8C 4B FF 80 31 */ bl func_8003E15C /* 80046130 00041D90 2C 03 00 00 */ cmpwi r3, 0 /* 80046134 00041D94 7C 7F 1B 78 */ mr r31, r3 /* 80046138 00041D98 41 82 00 60 */ beq lbl_80046198 /* 8004613C 00041D9C 80 9C 00 08 */ lwz r4, 8(r28) /* 80046140 00041DA0 2C 04 00 00 */ cmpwi r4, 0 /* 80046144 00041DA4 41 82 00 08 */ beq lbl_8004614C /* 80046148 00041DA8 4B FF 80 F1 */ bl func_8003E238 lbl_8004614C: /* 8004614C 00041DAC 7F E3 FB 78 */ mr r3, r31 /* 80046150 00041DB0 4B FF 80 6D */ bl func_8003E1BC /* 80046154 00041DB4 2C 03 00 00 */ cmpwi r3, 0 /* 80046158 00041DB8 90 7C 00 08 */ stw r3, 8(r28) /* 8004615C 00041DBC 41 82 00 3C */ beq lbl_80046198 /* 80046160 00041DC0 7F A4 EB 78 */ mr r4, r29 /* 80046164 00041DC4 7F C5 F3 78 */ mr r5, r30 /* 80046168 00041DC8 4B FF 17 BD */ bl func_80037924 /* 8004616C 00041DCC 80 7C 00 08 */ lwz r3, 8(r28) /* 80046170 00041DD0 38 80 00 03 */ li r4, 3 /* 80046174 00041DD4 38 00 01 00 */ li r0, 0x100 /* 80046178 00041DD8 B0 83 05 0C */ sth r4, 0x50c(r3) /* 8004617C 00041DDC 80 7C 00 08 */ lwz r3, 8(r28) /* 80046180 00041DE0 B0 03 0C 68 */ sth r0, 0xc68(r3) /* 80046184 00041DE4 80 7C 00 08 */ lwz r3, 8(r28) /* 80046188 00041DE8 80 63 0C 00 */ lwz r3, 0xc00(r3) /* 8004618C 00041DEC 2C 03 00 00 */ cmpwi r3, 0 /* 80046190 00041DF0 41 82 00 08 */ beq lbl_80046198 /* 80046194 00041DF4 48 1B C8 3D */ bl func_802029D0 lbl_80046198: /* 80046198 00041DF8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004619C 00041DFC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800461A0 00041E00 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800461A4 00041E04 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800461A8 00041E08 83 81 00 10 */ lwz r28, 0x10(r1) /* 800461AC 00041E0C 7C 08 03 A6 */ mtlr r0 /* 800461B0 00041E10 38 21 00 20 */ addi r1, r1, 0x20 /* 800461B4 00041E14 4E 80 00 20 */ blr .global func_800461B8 func_800461B8: /* 800461B8 00041E18 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800461BC 00041E1C 7C 08 02 A6 */ mflr r0 /* 800461C0 00041E20 90 01 00 24 */ stw r0, 0x24(r1) /* 800461C4 00041E24 39 61 00 20 */ addi r11, r1, 0x20 /* 800461C8 00041E28 48 18 0F 61 */ bl _savegpr_27 /* 800461CC 00041E2C 7C 7B 1B 78 */ mr r27, r3 /* 800461D0 00041E30 4B FF 7F 8D */ bl func_8003E15C /* 800461D4 00041E34 2C 03 00 00 */ cmpwi r3, 0 /* 800461D8 00041E38 7C 7D 1B 78 */ mr r29, r3 /* 800461DC 00041E3C 41 82 00 98 */ beq lbl_80046274 /* 800461E0 00041E40 7F 63 DB 78 */ mr r3, r27 /* 800461E4 00041E44 48 00 06 7D */ bl func_80046860 /* 800461E8 00041E48 80 7B 01 64 */ lwz r3, 0x164(r27) /* 800461EC 00041E4C 2C 03 00 00 */ cmpwi r3, 0 /* 800461F0 00041E50 41 82 00 24 */ beq lbl_80046214 /* 800461F4 00041E54 41 82 00 18 */ beq lbl_8004620C /* 800461F8 00041E58 81 83 01 00 */ lwz r12, 0x100(r3) /* 800461FC 00041E5C 38 80 00 01 */ li r4, 1 /* 80046200 00041E60 81 8C 00 08 */ lwz r12, 8(r12) /* 80046204 00041E64 7D 89 03 A6 */ mtctr r12 /* 80046208 00041E68 4E 80 04 21 */ bctrl lbl_8004620C: /* 8004620C 00041E6C 38 00 00 00 */ li r0, 0 /* 80046210 00041E70 90 1B 01 64 */ stw r0, 0x164(r27) lbl_80046214: /* 80046214 00041E74 7F 7E DB 78 */ mr r30, r27 /* 80046218 00041E78 3B 80 00 00 */ li r28, 0 /* 8004621C 00041E7C 3B E0 00 00 */ li r31, 0 lbl_80046220: /* 80046220 00041E80 80 7E 01 5C */ lwz r3, 0x15c(r30) /* 80046224 00041E84 2C 03 00 00 */ cmpwi r3, 0 /* 80046228 00041E88 41 82 00 20 */ beq lbl_80046248 /* 8004622C 00041E8C 41 82 00 18 */ beq lbl_80046244 /* 80046230 00041E90 81 83 01 00 */ lwz r12, 0x100(r3) /* 80046234 00041E94 38 80 00 01 */ li r4, 1 /* 80046238 00041E98 81 8C 00 08 */ lwz r12, 8(r12) /* 8004623C 00041E9C 7D 89 03 A6 */ mtctr r12 /* 80046240 00041EA0 4E 80 04 21 */ bctrl lbl_80046244: /* 80046244 00041EA4 93 FE 01 5C */ stw r31, 0x15c(r30) lbl_80046248: /* 80046248 00041EA8 3B 9C 00 01 */ addi r28, r28, 1 /* 8004624C 00041EAC 3B DE 00 04 */ addi r30, r30, 4 /* 80046250 00041EB0 2C 1C 00 02 */ cmpwi r28, 2 /* 80046254 00041EB4 41 80 FF CC */ blt lbl_80046220 /* 80046258 00041EB8 80 9B 00 08 */ lwz r4, 8(r27) /* 8004625C 00041EBC 2C 04 00 00 */ cmpwi r4, 0 /* 80046260 00041EC0 41 82 00 14 */ beq lbl_80046274 /* 80046264 00041EC4 7F A3 EB 78 */ mr r3, r29 /* 80046268 00041EC8 4B FF 7F D1 */ bl func_8003E238 /* 8004626C 00041ECC 38 00 00 00 */ li r0, 0 /* 80046270 00041ED0 90 1B 00 08 */ stw r0, 8(r27) lbl_80046274: /* 80046274 00041ED4 39 61 00 20 */ addi r11, r1, 0x20 /* 80046278 00041ED8 48 18 0E FD */ bl _restgpr_27 /* 8004627C 00041EDC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80046280 00041EE0 7C 08 03 A6 */ mtlr r0 /* 80046284 00041EE4 38 21 00 20 */ addi r1, r1, 0x20 /* 80046288 00041EE8 4E 80 00 20 */ blr .global func_8004628C func_8004628C: /* 8004628C 00041EEC 80 63 00 08 */ lwz r3, 8(r3) /* 80046290 00041EF0 2C 03 00 00 */ cmpwi r3, 0 /* 80046294 00041EF4 40 82 00 0C */ bne lbl_800462A0 /* 80046298 00041EF8 38 60 00 00 */ li r3, 0 /* 8004629C 00041EFC 4E 80 00 20 */ blr lbl_800462A0: /* 800462A0 00041F00 80 C3 0C 00 */ lwz r6, 0xc00(r3) /* 800462A4 00041F04 2C 06 00 00 */ cmpwi r6, 0 /* 800462A8 00041F08 40 82 00 0C */ bne lbl_800462B4 /* 800462AC 00041F0C 38 60 00 00 */ li r3, 0 /* 800462B0 00041F10 4E 80 00 20 */ blr lbl_800462B4: /* 800462B4 00041F14 80 66 00 00 */ lwz r3, 0(r6) /* 800462B8 00041F18 39 60 00 00 */ li r11, 0 /* 800462BC 00041F1C A0 E3 00 18 */ lhz r7, 0x18(r3) /* 800462C0 00041F20 48 00 00 E0 */ b lbl_800463A0 lbl_800462C4: /* 800462C4 00041F24 81 06 00 04 */ lwz r8, 4(r6) /* 800462C8 00041F28 2C 08 00 00 */ cmpwi r8, 0 /* 800462CC 00041F2C 40 82 00 0C */ bne lbl_800462D8 /* 800462D0 00041F30 38 A0 00 00 */ li r5, 0 /* 800462D4 00041F34 48 00 00 28 */ b lbl_800462FC lbl_800462D8: /* 800462D8 00041F38 80 66 00 00 */ lwz r3, 0(r6) /* 800462DC 00041F3C 55 65 04 3E */ clrlwi r5, r11, 0x10 /* 800462E0 00041F40 A0 03 00 18 */ lhz r0, 0x18(r3) /* 800462E4 00041F44 7C 05 00 40 */ cmplw r5, r0 /* 800462E8 00041F48 41 80 00 0C */ blt lbl_800462F4 /* 800462EC 00041F4C 38 A0 00 00 */ li r5, 0 /* 800462F0 00041F50 48 00 00 0C */ b lbl_800462FC lbl_800462F4: /* 800462F4 00041F54 55 60 13 BA */ rlwinm r0, r11, 2, 0xe, 0x1d /* 800462F8 00041F58 7C A8 00 2E */ lwzx r5, r8, r0 lbl_800462FC: /* 800462FC 00041F5C 2C 05 00 00 */ cmpwi r5, 0 /* 80046300 00041F60 40 82 00 0C */ bne lbl_8004630C /* 80046304 00041F64 38 60 00 00 */ li r3, 0 /* 80046308 00041F68 4E 80 00 20 */ blr lbl_8004630C: /* 8004630C 00041F6C A1 05 00 EC */ lhz r8, 0xec(r5) /* 80046310 00041F70 39 80 00 00 */ li r12, 0 /* 80046314 00041F74 48 00 00 7C */ b lbl_80046390 lbl_80046318: /* 80046318 00041F78 81 25 00 28 */ lwz r9, 0x28(r5) /* 8004631C 00041F7C 2C 09 00 00 */ cmpwi r9, 0 /* 80046320 00041F80 40 82 00 0C */ bne lbl_8004632C /* 80046324 00041F84 38 00 00 00 */ li r0, 0 /* 80046328 00041F88 48 00 00 54 */ b lbl_8004637C lbl_8004632C: /* 8004632C 00041F8C A0 05 00 EC */ lhz r0, 0xec(r5) /* 80046330 00041F90 55 83 04 3E */ clrlwi r3, r12, 0x10 /* 80046334 00041F94 7C 03 00 40 */ cmplw r3, r0 /* 80046338 00041F98 41 80 00 0C */ blt lbl_80046344 /* 8004633C 00041F9C 38 00 00 00 */ li r0, 0 /* 80046340 00041FA0 48 00 00 3C */ b lbl_8004637C lbl_80046344: /* 80046344 00041FA4 81 45 00 08 */ lwz r10, 8(r5) /* 80046348 00041FA8 55 80 0B FC */ rlwinm r0, r12, 1, 0xf, 0x1e /* 8004634C 00041FAC 7C 69 02 2E */ lhzx r3, r9, r0 /* 80046350 00041FB0 2C 0A 00 00 */ cmpwi r10, 0 /* 80046354 00041FB4 40 82 00 0C */ bne lbl_80046360 /* 80046358 00041FB8 38 00 00 00 */ li r0, 0 /* 8004635C 00041FBC 48 00 00 20 */ b lbl_8004637C lbl_80046360: /* 80046360 00041FC0 A0 05 00 DE */ lhz r0, 0xde(r5) /* 80046364 00041FC4 7C 03 00 40 */ cmplw r3, r0 /* 80046368 00041FC8 41 80 00 0C */ blt lbl_80046374 /* 8004636C 00041FCC 38 00 00 00 */ li r0, 0 /* 80046370 00041FD0 48 00 00 0C */ b lbl_8004637C lbl_80046374: /* 80046374 00041FD4 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 80046378 00041FD8 7C 0A 00 2E */ lwzx r0, r10, r0 lbl_8004637C: /* 8004637C 00041FDC 7C 04 00 40 */ cmplw r4, r0 /* 80046380 00041FE0 40 82 00 0C */ bne lbl_8004638C /* 80046384 00041FE4 38 60 00 01 */ li r3, 1 /* 80046388 00041FE8 4E 80 00 20 */ blr lbl_8004638C: /* 8004638C 00041FEC 39 8C 00 01 */ addi r12, r12, 1 lbl_80046390: /* 80046390 00041FF0 55 80 04 3E */ clrlwi r0, r12, 0x10 /* 80046394 00041FF4 7C 00 40 40 */ cmplw r0, r8 /* 80046398 00041FF8 41 80 FF 80 */ blt lbl_80046318 /* 8004639C 00041FFC 39 6B 00 01 */ addi r11, r11, 1 lbl_800463A0: /* 800463A0 00042000 55 60 04 3E */ clrlwi r0, r11, 0x10 /* 800463A4 00042004 7C 00 38 40 */ cmplw r0, r7 /* 800463A8 00042008 41 80 FF 1C */ blt lbl_800462C4 /* 800463AC 0004200C 38 60 00 00 */ li r3, 0 /* 800463B0 00042010 4E 80 00 20 */ blr .global func_800463B4 func_800463B4: /* 800463B4 00042014 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800463B8 00042018 7C 08 02 A6 */ mflr r0 /* 800463BC 0004201C 90 01 00 14 */ stw r0, 0x14(r1) /* 800463C0 00042020 93 E1 00 0C */ stw r31, 0xc(r1) /* 800463C4 00042024 93 C1 00 08 */ stw r30, 8(r1) /* 800463C8 00042028 7C 7E 1B 78 */ mr r30, r3 /* 800463CC 0004202C 80 03 01 64 */ lwz r0, 0x164(r3) /* 800463D0 00042030 2C 00 00 00 */ cmpwi r0, 0 /* 800463D4 00042034 40 82 00 6C */ bne lbl_80046440 /* 800463D8 00042038 3C 80 20 FE */ lis r4, 0x20FE0E00@ha /* 800463DC 0004203C 38 60 00 0C */ li r3, 0xc /* 800463E0 00042040 38 84 0E 00 */ addi r4, r4, 0x20FE0E00@l /* 800463E4 00042044 48 19 50 D9 */ bl func_801DB4BC /* 800463E8 00042048 2C 03 00 00 */ cmpwi r3, 0 /* 800463EC 0004204C 7C 7F 1B 78 */ mr r31, r3 /* 800463F0 00042050 41 82 00 50 */ beq lbl_80046440 /* 800463F4 00042054 48 19 47 35 */ bl func_801DAB28 /* 800463F8 00042058 2C 03 00 00 */ cmpwi r3, 0 /* 800463FC 0004205C 41 82 00 14 */ beq lbl_80046410 /* 80046400 00042060 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80046404 00042064 38 80 01 40 */ li r4, 0x140 /* 80046408 00042068 48 19 48 8D */ bl func_801DAC94 /* 8004640C 0004206C 48 00 00 08 */ b lbl_80046414 lbl_80046410: /* 80046410 00042070 38 60 00 00 */ li r3, 0 lbl_80046414: /* 80046414 00042074 2C 03 00 00 */ cmpwi r3, 0 /* 80046418 00042078 41 82 00 0C */ beq lbl_80046424 /* 8004641C 0004207C 7F E4 FB 78 */ mr r4, r31 /* 80046420 00042080 48 1B 34 CD */ bl func_801F98EC lbl_80046424: /* 80046424 00042084 90 7E 01 64 */ stw r3, 0x164(r30) /* 80046428 00042088 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 8004642C 0004208C 80 03 01 04 */ lwz r0, 0x104(r3) /* 80046430 00042090 60 00 00 01 */ ori r0, r0, 1 /* 80046434 00042094 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80046438 00042098 90 03 01 04 */ stw r0, 0x104(r3) /* 8004643C 0004209C D0 03 01 08 */ stfs f0, 0x108(r3) lbl_80046440: /* 80046440 000420A0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80046444 000420A4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80046448 000420A8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004644C 000420AC 7C 08 03 A6 */ mtlr r0 /* 80046450 000420B0 38 21 00 10 */ addi r1, r1, 0x10 /* 80046454 000420B4 4E 80 00 20 */ blr .global func_80046458 func_80046458: /* 80046458 000420B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004645C 000420BC 7C 08 02 A6 */ mflr r0 /* 80046460 000420C0 90 01 00 14 */ stw r0, 0x14(r1) /* 80046464 000420C4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80046468 000420C8 7C 7F 1B 78 */ mr r31, r3 /* 8004646C 000420CC 80 03 01 64 */ lwz r0, 0x164(r3) /* 80046470 000420D0 2C 00 00 00 */ cmpwi r0, 0 /* 80046474 000420D4 41 82 00 28 */ beq lbl_8004649C /* 80046478 000420D8 41 82 00 1C */ beq lbl_80046494 /* 8004647C 000420DC 7C 03 03 78 */ mr r3, r0 /* 80046480 000420E0 38 80 00 01 */ li r4, 1 /* 80046484 000420E4 81 83 01 00 */ lwz r12, 0x100(r3) /* 80046488 000420E8 81 8C 00 08 */ lwz r12, 8(r12) /* 8004648C 000420EC 7D 89 03 A6 */ mtctr r12 /* 80046490 000420F0 4E 80 04 21 */ bctrl lbl_80046494: /* 80046494 000420F4 38 00 00 00 */ li r0, 0 /* 80046498 000420F8 90 1F 01 64 */ stw r0, 0x164(r31) lbl_8004649C: /* 8004649C 000420FC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800464A0 00042100 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800464A4 00042104 7C 08 03 A6 */ mtlr r0 /* 800464A8 00042108 38 21 00 10 */ addi r1, r1, 0x10 /* 800464AC 0004210C 4E 80 00 20 */ blr .global func_800464B0 func_800464B0: /* 800464B0 00042110 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800464B4 00042114 7C 08 02 A6 */ mflr r0 /* 800464B8 00042118 90 01 00 74 */ stw r0, 0x74(r1) /* 800464BC 0004211C 39 61 00 70 */ addi r11, r1, 0x70 /* 800464C0 00042120 48 18 0C 69 */ bl _savegpr_27 /* 800464C4 00042124 2C 05 00 00 */ cmpwi r5, 0 /* 800464C8 00042128 7C 7B 1B 78 */ mr r27, r3 /* 800464CC 0004212C 7C BC 2B 78 */ mr r28, r5 /* 800464D0 00042130 41 80 03 78 */ blt lbl_80046848 /* 800464D4 00042134 2C 05 00 03 */ cmpwi r5, 3 /* 800464D8 00042138 40 81 00 08 */ ble lbl_800464E0 /* 800464DC 0004213C 48 00 03 6C */ b lbl_80046848 lbl_800464E0: /* 800464E0 00042140 2C 04 00 01 */ cmpwi r4, 1 /* 800464E4 00042144 41 82 00 38 */ beq lbl_8004651C /* 800464E8 00042148 40 80 00 10 */ bge lbl_800464F8 /* 800464EC 0004214C 2C 04 00 00 */ cmpwi r4, 0 /* 800464F0 00042150 40 80 00 14 */ bge lbl_80046504 /* 800464F4 00042154 48 00 03 54 */ b lbl_80046848 lbl_800464F8: /* 800464F8 00042158 2C 04 00 03 */ cmpwi r4, 3 /* 800464FC 0004215C 40 80 03 4C */ bge lbl_80046848 /* 80046500 00042160 48 00 00 34 */ b lbl_80046534 lbl_80046504: /* 80046504 00042164 54 A0 10 3A */ slwi r0, r5, 2 /* 80046508 00042168 3C 80 1D 52 */ lis r4, 0x1D520A00@ha /* 8004650C 0004216C 7C 63 02 14 */ add r3, r3, r0 /* 80046510 00042170 3B E4 0A 00 */ addi r31, r4, 0x1D520A00@l /* 80046514 00042174 3B C3 01 2C */ addi r30, r3, 0x12c /* 80046518 00042178 48 00 00 38 */ b lbl_80046550 lbl_8004651C: /* 8004651C 0004217C 54 A0 10 3A */ slwi r0, r5, 2 /* 80046520 00042180 3C 80 1D 51 */ lis r4, 0x1D510A00@ha /* 80046524 00042184 7C 63 02 14 */ add r3, r3, r0 /* 80046528 00042188 3B E4 0A 00 */ addi r31, r4, 0x1D510A00@l /* 8004652C 0004218C 3B C3 01 3C */ addi r30, r3, 0x13c /* 80046530 00042190 48 00 00 20 */ b lbl_80046550 lbl_80046534: /* 80046534 00042194 54 A0 10 3A */ slwi r0, r5, 2 /* 80046538 00042198 3C 80 27 77 */ lis r4, 0x27770A00@ha /* 8004653C 0004219C 7C 63 02 14 */ add r3, r3, r0 /* 80046540 000421A0 3B E4 0A 00 */ addi r31, r4, 0x27770A00@l /* 80046544 000421A4 3B C3 01 4C */ addi r30, r3, 0x14c /* 80046548 000421A8 48 00 00 08 */ b lbl_80046550 /* 8004654C 000421AC 48 00 02 FC */ b lbl_80046848 lbl_80046550: /* 80046550 000421B0 7F 63 DB 78 */ mr r3, r27 /* 80046554 000421B4 7F 84 E3 78 */ mr r4, r28 /* 80046558 000421B8 38 A0 00 00 */ li r5, 0 /* 8004655C 000421BC 4B FF F5 A5 */ bl func_80045B00 /* 80046560 000421C0 57 E0 00 5E */ rlwinm r0, r31, 0, 1, 0xf /* 80046564 000421C4 7C 7F 1B 78 */ mr r31, r3 /* 80046568 000421C8 60 04 0E 00 */ ori r4, r0, 0xe00 /* 8004656C 000421CC 38 60 00 0C */ li r3, 0xc /* 80046570 000421D0 48 19 4F 4D */ bl func_801DB4BC /* 80046574 000421D4 2C 03 00 00 */ cmpwi r3, 0 /* 80046578 000421D8 7C 7D 1B 78 */ mr r29, r3 /* 8004657C 000421DC 41 82 02 CC */ beq lbl_80046848 /* 80046580 000421E0 80 7E 00 00 */ lwz r3, 0(r30) /* 80046584 000421E4 2C 03 00 00 */ cmpwi r3, 0 /* 80046588 000421E8 41 82 00 1C */ beq lbl_800465A4 /* 8004658C 000421EC 41 82 00 18 */ beq lbl_800465A4 /* 80046590 000421F0 81 83 01 00 */ lwz r12, 0x100(r3) /* 80046594 000421F4 38 80 00 01 */ li r4, 1 /* 80046598 000421F8 81 8C 00 08 */ lwz r12, 8(r12) /* 8004659C 000421FC 7D 89 03 A6 */ mtctr r12 /* 800465A0 00042200 4E 80 04 21 */ bctrl lbl_800465A4: /* 800465A4 00042204 48 19 45 85 */ bl func_801DAB28 /* 800465A8 00042208 2C 03 00 00 */ cmpwi r3, 0 /* 800465AC 0004220C 41 82 00 14 */ beq lbl_800465C0 /* 800465B0 00042210 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 800465B4 00042214 38 80 01 40 */ li r4, 0x140 /* 800465B8 00042218 48 19 46 DD */ bl func_801DAC94 /* 800465BC 0004221C 48 00 00 08 */ b lbl_800465C4 lbl_800465C0: /* 800465C0 00042220 38 60 00 00 */ li r3, 0 lbl_800465C4: /* 800465C4 00042224 2C 03 00 00 */ cmpwi r3, 0 /* 800465C8 00042228 41 82 00 0C */ beq lbl_800465D4 /* 800465CC 0004222C 7F A4 EB 78 */ mr r4, r29 /* 800465D0 00042230 48 1B 33 1D */ bl func_801F98EC lbl_800465D4: /* 800465D4 00042234 90 7E 00 00 */ stw r3, 0(r30) /* 800465D8 00042238 7F 63 DB 78 */ mr r3, r27 /* 800465DC 0004223C 7F 84 E3 78 */ mr r4, r28 /* 800465E0 00042240 38 A1 00 40 */ addi r5, r1, 0x40 /* 800465E4 00042244 38 C1 00 08 */ addi r6, r1, 8 /* 800465E8 00042248 38 E0 00 01 */ li r7, 1 /* 800465EC 0004224C 4B FF F6 2D */ bl func_80045C18 /* 800465F0 00042250 80 7E 00 00 */ lwz r3, 0(r30) /* 800465F4 00042254 38 80 00 01 */ li r4, 1 /* 800465F8 00042258 C0 01 00 40 */ lfs f0, 0x40(r1) /* 800465FC 0004225C D0 03 00 20 */ stfs f0, 0x20(r3) /* 80046600 00042260 C0 01 00 44 */ lfs f0, 0x44(r1) /* 80046604 00042264 D0 03 00 24 */ stfs f0, 0x24(r3) /* 80046608 00042268 C0 01 00 48 */ lfs f0, 0x48(r1) /* 8004660C 0004226C D0 03 00 28 */ stfs f0, 0x28(r3) /* 80046610 00042270 48 1A C0 A9 */ bl func_801F26B8 /* 80046614 00042274 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 80046618 00042278 38 61 00 30 */ addi r3, r1, 0x30 /* 8004661C 0004227C C0 21 00 08 */ lfs f1, 8(r1) /* 80046620 00042280 38 81 00 24 */ addi r4, r1, 0x24 /* 80046624 00042284 D0 01 00 24 */ stfs f0, 0x24(r1) /* 80046628 00042288 D0 21 00 28 */ stfs f1, 0x28(r1) /* 8004662C 0004228C D0 01 00 2C */ stfs f0, 0x2c(r1) /* 80046630 00042290 48 1D D0 91 */ bl func_802236C0 /* 80046634 00042294 80 7E 00 00 */ lwz r3, 0(r30) /* 80046638 00042298 38 80 00 01 */ li r4, 1 /* 8004663C 0004229C C0 01 00 30 */ lfs f0, 0x30(r1) /* 80046640 000422A0 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80046644 000422A4 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80046648 000422A8 D0 03 00 30 */ stfs f0, 0x30(r3) /* 8004664C 000422AC C0 01 00 38 */ lfs f0, 0x38(r1) /* 80046650 000422B0 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80046654 000422B4 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80046658 000422B8 D0 03 00 38 */ stfs f0, 0x38(r3) /* 8004665C 000422BC A0 03 00 10 */ lhz r0, 0x10(r3) /* 80046660 000422C0 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80046664 000422C4 B0 03 00 10 */ sth r0, 0x10(r3) /* 80046668 000422C8 48 1A C0 51 */ bl func_801F26B8 /* 8004666C 000422CC 2C 1F 00 00 */ cmpwi r31, 0 /* 80046670 000422D0 41 82 00 DC */ beq lbl_8004674C /* 80046674 000422D4 7F E3 FB 78 */ mr r3, r31 /* 80046678 000422D8 4B FF 30 5D */ bl func_800396D4 /* 8004667C 000422DC C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2) /* 80046680 000422E0 48 00 7E 1D */ bl func_8004E49C /* 80046684 000422E4 FC 00 08 18 */ frsp f0, f1 /* 80046688 000422E8 80 7E 00 00 */ lwz r3, 0(r30) /* 8004668C 000422EC C0 42 83 B4 */ lfs f2, lbl_806409B4-_SDA2_BASE_(r2) /* 80046690 000422F0 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80046694 000422F4 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80046698 000422F8 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8004669C 000422FC D0 03 00 4C */ stfs f0, 0x4c(r3) /* 800466A0 00042300 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800466A4 00042304 D0 21 00 20 */ stfs f1, 0x20(r1) /* 800466A8 00042308 D0 03 00 50 */ stfs f0, 0x50(r3) /* 800466AC 0004230C 40 80 00 2C */ bge lbl_800466D8 /* 800466B0 00042310 C0 23 00 48 */ lfs f1, 0x48(r3) /* 800466B4 00042314 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2) /* 800466B8 00042318 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 800466BC 0004231C 40 81 00 1C */ ble lbl_800466D8 /* 800466C0 00042320 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800466C4 00042324 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800466C8 00042328 40 80 00 08 */ bge lbl_800466D0 /* 800466CC 0004232C 48 00 00 08 */ b lbl_800466D4 lbl_800466D0: /* 800466D0 00042330 FC 60 10 90 */ fmr f3, f2 lbl_800466D4: /* 800466D4 00042334 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_800466D8: /* 800466D8 00042338 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 800466DC 0004233C C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2) /* 800466E0 00042340 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800466E4 00042344 40 80 00 28 */ bge lbl_8004670C /* 800466E8 00042348 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2) /* 800466EC 0004234C FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800466F0 00042350 40 81 00 1C */ ble lbl_8004670C /* 800466F4 00042354 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800466F8 00042358 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800466FC 0004235C 40 80 00 08 */ bge lbl_80046704 /* 80046700 00042360 48 00 00 08 */ b lbl_80046708 lbl_80046704: /* 80046704 00042364 FC 60 08 90 */ fmr f3, f1 lbl_80046708: /* 80046708 00042368 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8004670C: /* 8004670C 0004236C C0 43 00 50 */ lfs f2, 0x50(r3) /* 80046710 00042370 C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2) /* 80046714 00042374 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80046718 00042378 40 80 00 28 */ bge lbl_80046740 /* 8004671C 0004237C C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2) /* 80046720 00042380 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80046724 00042384 40 81 00 1C */ ble lbl_80046740 /* 80046728 00042388 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 8004672C 0004238C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80046730 00042390 40 80 00 08 */ bge lbl_80046738 /* 80046734 00042394 48 00 00 08 */ b lbl_8004673C lbl_80046738: /* 80046738 00042398 FC 60 08 90 */ fmr f3, f1 lbl_8004673C: /* 8004673C 0004239C D0 63 00 50 */ stfs f3, 0x50(r3) lbl_80046740: /* 80046740 000423A0 38 80 00 01 */ li r4, 1 /* 80046744 000423A4 48 1A BF 75 */ bl func_801F26B8 /* 80046748 000423A8 48 00 00 C8 */ b lbl_80046810 lbl_8004674C: /* 8004674C 000423AC C0 02 83 8C */ lfs f0, lbl_8064098C-_SDA2_BASE_(r2) /* 80046750 000423B0 80 7E 00 00 */ lwz r3, 0(r30) /* 80046754 000423B4 C0 42 83 B4 */ lfs f2, lbl_806409B4-_SDA2_BASE_(r2) /* 80046758 000423B8 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8004675C 000423BC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80046760 000423C0 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80046764 000423C4 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80046768 000423C8 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004676C 000423CC D0 01 00 14 */ stfs f0, 0x14(r1) /* 80046770 000423D0 D0 03 00 50 */ stfs f0, 0x50(r3) /* 80046774 000423D4 40 80 00 2C */ bge lbl_800467A0 /* 80046778 000423D8 C0 23 00 48 */ lfs f1, 0x48(r3) /* 8004677C 000423DC C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2) /* 80046780 000423E0 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80046784 000423E4 40 81 00 1C */ ble lbl_800467A0 /* 80046788 000423E8 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 8004678C 000423EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80046790 000423F0 40 80 00 08 */ bge lbl_80046798 /* 80046794 000423F4 48 00 00 08 */ b lbl_8004679C lbl_80046798: /* 80046798 000423F8 FC 60 10 90 */ fmr f3, f2 lbl_8004679C: /* 8004679C 000423FC D0 63 00 48 */ stfs f3, 0x48(r3) lbl_800467A0: /* 800467A0 00042400 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 800467A4 00042404 C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2) /* 800467A8 00042408 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800467AC 0004240C 40 80 00 28 */ bge lbl_800467D4 /* 800467B0 00042410 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2) /* 800467B4 00042414 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800467B8 00042418 40 81 00 1C */ ble lbl_800467D4 /* 800467BC 0004241C C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800467C0 00042420 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800467C4 00042424 40 80 00 08 */ bge lbl_800467CC /* 800467C8 00042428 48 00 00 08 */ b lbl_800467D0 lbl_800467CC: /* 800467CC 0004242C FC 60 08 90 */ fmr f3, f1 lbl_800467D0: /* 800467D0 00042430 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_800467D4: /* 800467D4 00042434 C0 43 00 50 */ lfs f2, 0x50(r3) /* 800467D8 00042438 C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2) /* 800467DC 0004243C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800467E0 00042440 40 80 00 28 */ bge lbl_80046808 /* 800467E4 00042444 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2) /* 800467E8 00042448 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800467EC 0004244C 40 81 00 1C */ ble lbl_80046808 /* 800467F0 00042450 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800467F4 00042454 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800467F8 00042458 40 80 00 08 */ bge lbl_80046800 /* 800467FC 0004245C 48 00 00 08 */ b lbl_80046804 lbl_80046800: /* 80046800 00042460 FC 60 08 90 */ fmr f3, f1 lbl_80046804: /* 80046804 00042464 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_80046808: /* 80046808 00042468 38 80 00 01 */ li r4, 1 /* 8004680C 0004246C 48 1A BE AD */ bl func_801F26B8 lbl_80046810: /* 80046810 00042470 80 7E 00 00 */ lwz r3, 0(r30) /* 80046814 00042474 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 80046818 00042478 80 03 01 04 */ lwz r0, 0x104(r3) /* 8004681C 0004247C 60 00 00 01 */ ori r0, r0, 1 /* 80046820 00042480 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80046824 00042484 90 03 01 04 */ stw r0, 0x104(r3) /* 80046828 00042488 D0 03 01 08 */ stfs f0, 0x108(r3) /* 8004682C 0004248C 80 7E 00 00 */ lwz r3, 0(r30) /* 80046830 00042490 80 63 01 38 */ lwz r3, 0x138(r3) /* 80046834 00042494 2C 03 00 00 */ cmpwi r3, 0 /* 80046838 00042498 41 82 00 10 */ beq lbl_80046848 /* 8004683C 0004249C A0 03 01 48 */ lhz r0, 0x148(r3) /* 80046840 000424A0 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80046844 000424A4 B0 03 01 48 */ sth r0, 0x148(r3) lbl_80046848: /* 80046848 000424A8 39 61 00 70 */ addi r11, r1, 0x70 /* 8004684C 000424AC 48 18 09 29 */ bl _restgpr_27 /* 80046850 000424B0 80 01 00 74 */ lwz r0, 0x74(r1) /* 80046854 000424B4 7C 08 03 A6 */ mtlr r0 /* 80046858 000424B8 38 21 00 70 */ addi r1, r1, 0x70 /* 8004685C 000424BC 4E 80 00 20 */ blr .global func_80046860 func_80046860: /* 80046860 000424C0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80046864 000424C4 7C 08 02 A6 */ mflr r0 /* 80046868 000424C8 90 01 00 24 */ stw r0, 0x24(r1) /* 8004686C 000424CC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80046870 000424D0 3B E0 00 00 */ li r31, 0 /* 80046874 000424D4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80046878 000424D8 7C 7E 1B 78 */ mr r30, r3 /* 8004687C 000424DC 93 A1 00 14 */ stw r29, 0x14(r1) /* 80046880 000424E0 3B A0 00 00 */ li r29, 0 lbl_80046884: /* 80046884 000424E4 80 7E 01 2C */ lwz r3, 0x12c(r30) /* 80046888 000424E8 2C 03 00 00 */ cmpwi r3, 0 /* 8004688C 000424EC 41 82 00 20 */ beq lbl_800468AC /* 80046890 000424F0 41 82 00 18 */ beq lbl_800468A8 /* 80046894 000424F4 81 83 01 00 */ lwz r12, 0x100(r3) /* 80046898 000424F8 38 80 00 01 */ li r4, 1 /* 8004689C 000424FC 81 8C 00 08 */ lwz r12, 8(r12) /* 800468A0 00042500 7D 89 03 A6 */ mtctr r12 /* 800468A4 00042504 4E 80 04 21 */ bctrl lbl_800468A8: /* 800468A8 00042508 93 FE 01 2C */ stw r31, 0x12c(r30) lbl_800468AC: /* 800468AC 0004250C 80 7E 01 3C */ lwz r3, 0x13c(r30) /* 800468B0 00042510 2C 03 00 00 */ cmpwi r3, 0 /* 800468B4 00042514 41 82 00 20 */ beq lbl_800468D4 /* 800468B8 00042518 41 82 00 18 */ beq lbl_800468D0 /* 800468BC 0004251C 81 83 01 00 */ lwz r12, 0x100(r3) /* 800468C0 00042520 38 80 00 01 */ li r4, 1 /* 800468C4 00042524 81 8C 00 08 */ lwz r12, 8(r12) /* 800468C8 00042528 7D 89 03 A6 */ mtctr r12 /* 800468CC 0004252C 4E 80 04 21 */ bctrl lbl_800468D0: /* 800468D0 00042530 93 FE 01 3C */ stw r31, 0x13c(r30) lbl_800468D4: /* 800468D4 00042534 80 7E 01 4C */ lwz r3, 0x14c(r30) /* 800468D8 00042538 2C 03 00 00 */ cmpwi r3, 0 /* 800468DC 0004253C 41 82 00 20 */ beq lbl_800468FC /* 800468E0 00042540 41 82 00 18 */ beq lbl_800468F8 /* 800468E4 00042544 81 83 01 00 */ lwz r12, 0x100(r3) /* 800468E8 00042548 38 80 00 01 */ li r4, 1 /* 800468EC 0004254C 81 8C 00 08 */ lwz r12, 8(r12) /* 800468F0 00042550 7D 89 03 A6 */ mtctr r12 /* 800468F4 00042554 4E 80 04 21 */ bctrl lbl_800468F8: /* 800468F8 00042558 93 FE 01 4C */ stw r31, 0x14c(r30) lbl_800468FC: /* 800468FC 0004255C 3B BD 00 01 */ addi r29, r29, 1 /* 80046900 00042560 3B DE 00 04 */ addi r30, r30, 4 /* 80046904 00042564 2C 1D 00 04 */ cmpwi r29, 4 /* 80046908 00042568 41 80 FF 7C */ blt lbl_80046884 /* 8004690C 0004256C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80046910 00042570 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80046914 00042574 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80046918 00042578 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004691C 0004257C 7C 08 03 A6 */ mtlr r0 /* 80046920 00042580 38 21 00 20 */ addi r1, r1, 0x20 /* 80046924 00042584 4E 80 00 20 */ blr .global func_80046928 func_80046928: /* 80046928 00042588 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004692C 0004258C 7C 08 02 A6 */ mflr r0 /* 80046930 00042590 2C 05 00 00 */ cmpwi r5, 0 /* 80046934 00042594 90 01 00 14 */ stw r0, 0x14(r1) /* 80046938 00042598 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004693C 0004259C 41 80 00 94 */ blt lbl_800469D0 /* 80046940 000425A0 2C 05 00 03 */ cmpwi r5, 3 /* 80046944 000425A4 40 81 00 08 */ ble lbl_8004694C /* 80046948 000425A8 48 00 00 88 */ b lbl_800469D0 lbl_8004694C: /* 8004694C 000425AC 2C 04 00 01 */ cmpwi r4, 1 /* 80046950 000425B0 41 82 00 30 */ beq lbl_80046980 /* 80046954 000425B4 40 80 00 10 */ bge lbl_80046964 /* 80046958 000425B8 2C 04 00 00 */ cmpwi r4, 0 /* 8004695C 000425BC 40 80 00 14 */ bge lbl_80046970 /* 80046960 000425C0 48 00 00 70 */ b lbl_800469D0 lbl_80046964: /* 80046964 000425C4 2C 04 00 03 */ cmpwi r4, 3 /* 80046968 000425C8 40 80 00 68 */ bge lbl_800469D0 /* 8004696C 000425CC 48 00 00 24 */ b lbl_80046990 lbl_80046970: /* 80046970 000425D0 54 A0 10 3A */ slwi r0, r5, 2 /* 80046974 000425D4 7C 63 02 14 */ add r3, r3, r0 /* 80046978 000425D8 3B E3 01 2C */ addi r31, r3, 0x12c /* 8004697C 000425DC 48 00 00 28 */ b lbl_800469A4 lbl_80046980: /* 80046980 000425E0 54 A0 10 3A */ slwi r0, r5, 2 /* 80046984 000425E4 7C 63 02 14 */ add r3, r3, r0 /* 80046988 000425E8 3B E3 01 3C */ addi r31, r3, 0x13c /* 8004698C 000425EC 48 00 00 18 */ b lbl_800469A4 lbl_80046990: /* 80046990 000425F0 54 A0 10 3A */ slwi r0, r5, 2 /* 80046994 000425F4 7C 63 02 14 */ add r3, r3, r0 /* 80046998 000425F8 3B E3 01 4C */ addi r31, r3, 0x14c /* 8004699C 000425FC 48 00 00 08 */ b lbl_800469A4 /* 800469A0 00042600 48 00 00 30 */ b lbl_800469D0 lbl_800469A4: /* 800469A4 00042604 80 7F 00 00 */ lwz r3, 0(r31) /* 800469A8 00042608 2C 03 00 00 */ cmpwi r3, 0 /* 800469AC 0004260C 41 82 00 24 */ beq lbl_800469D0 /* 800469B0 00042610 41 82 00 18 */ beq lbl_800469C8 /* 800469B4 00042614 81 83 01 00 */ lwz r12, 0x100(r3) /* 800469B8 00042618 38 80 00 01 */ li r4, 1 /* 800469BC 0004261C 81 8C 00 08 */ lwz r12, 8(r12) /* 800469C0 00042620 7D 89 03 A6 */ mtctr r12 /* 800469C4 00042624 4E 80 04 21 */ bctrl lbl_800469C8: /* 800469C8 00042628 38 00 00 00 */ li r0, 0 /* 800469CC 0004262C 90 1F 00 00 */ stw r0, 0(r31) lbl_800469D0: /* 800469D0 00042630 80 01 00 14 */ lwz r0, 0x14(r1) /* 800469D4 00042634 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800469D8 00042638 7C 08 03 A6 */ mtlr r0 /* 800469DC 0004263C 38 21 00 10 */ addi r1, r1, 0x10 /* 800469E0 00042640 4E 80 00 20 */ blr .global func_800469E4 func_800469E4: /* 800469E4 00042644 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 800469E8 00042648 7C 08 02 A6 */ mflr r0 /* 800469EC 0004264C 90 01 00 A4 */ stw r0, 0xa4(r1) /* 800469F0 00042650 DB E1 00 90 */ stfd f31, 0x90(r1) /* 800469F4 00042654 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 800469F8 00042658 DB C1 00 80 */ stfd f30, 0x80(r1) /* 800469FC 0004265C F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80046A00 00042660 DB A1 00 70 */ stfd f29, 0x70(r1) /* 80046A04 00042664 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80046A08 00042668 DB 81 00 60 */ stfd f28, 0x60(r1) /* 80046A0C 0004266C F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 80046A10 00042670 39 61 00 60 */ addi r11, r1, 0x60 /* 80046A14 00042674 48 18 07 11 */ bl _savegpr_26 /* 80046A18 00042678 C3 E2 83 B8 */ lfs f31, lbl_806409B8-_SDA2_BASE_(r2) /* 80046A1C 0004267C 7C 7C 1B 78 */ mr r28, r3 /* 80046A20 00042680 C3 C2 83 B4 */ lfs f30, lbl_806409B4-_SDA2_BASE_(r2) /* 80046A24 00042684 3B C0 00 00 */ li r30, 0 /* 80046A28 00042688 C3 A2 83 A8 */ lfs f29, lbl_806409A8-_SDA2_BASE_(r2) /* 80046A2C 0004268C C3 82 83 88 */ lfs f28, lbl_80640988-_SDA2_BASE_(r2) lbl_80046A30: /* 80046A30 00042690 57 DF 06 3E */ clrlwi r31, r30, 0x18 /* 80046A34 00042694 3B A0 00 00 */ li r29, 0 lbl_80046A38: /* 80046A38 00042698 2C 1F 00 00 */ cmpwi r31, 0 /* 80046A3C 0004269C 40 82 00 14 */ bne lbl_80046A50 /* 80046A40 000426A0 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d /* 80046A44 000426A4 7C 7C 02 14 */ add r3, r28, r0 /* 80046A48 000426A8 3B 63 01 2C */ addi r27, r3, 0x12c /* 80046A4C 000426AC 48 00 00 30 */ b lbl_80046A7C lbl_80046A50: /* 80046A50 000426B0 28 1F 00 01 */ cmplwi r31, 1 /* 80046A54 000426B4 40 82 00 14 */ bne lbl_80046A68 /* 80046A58 000426B8 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d /* 80046A5C 000426BC 7C 7C 02 14 */ add r3, r28, r0 /* 80046A60 000426C0 3B 63 01 3C */ addi r27, r3, 0x13c /* 80046A64 000426C4 48 00 00 18 */ b lbl_80046A7C lbl_80046A68: /* 80046A68 000426C8 28 1F 00 02 */ cmplwi r31, 2 /* 80046A6C 000426CC 40 82 01 D0 */ bne lbl_80046C3C /* 80046A70 000426D0 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d /* 80046A74 000426D4 7C 7C 02 14 */ add r3, r28, r0 /* 80046A78 000426D8 3B 63 01 4C */ addi r27, r3, 0x14c lbl_80046A7C: /* 80046A7C 000426DC 80 1B 00 00 */ lwz r0, 0(r27) /* 80046A80 000426E0 2C 00 00 00 */ cmpwi r0, 0 /* 80046A84 000426E4 41 82 01 B8 */ beq lbl_80046C3C /* 80046A88 000426E8 7F 83 E3 78 */ mr r3, r28 /* 80046A8C 000426EC 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 80046A90 000426F0 38 A0 00 00 */ li r5, 0 /* 80046A94 000426F4 4B FF F0 6D */ bl func_80045B00 /* 80046A98 000426F8 7C 7A 1B 78 */ mr r26, r3 /* 80046A9C 000426FC 7F 83 E3 78 */ mr r3, r28 /* 80046AA0 00042700 57 A4 06 3E */ clrlwi r4, r29, 0x18 /* 80046AA4 00042704 38 A1 00 38 */ addi r5, r1, 0x38 /* 80046AA8 00042708 38 C1 00 08 */ addi r6, r1, 8 /* 80046AAC 0004270C 38 E0 00 00 */ li r7, 0 /* 80046AB0 00042710 4B FF F1 69 */ bl func_80045C18 /* 80046AB4 00042714 57 A0 07 FF */ clrlwi. r0, r29, 0x1f /* 80046AB8 00042718 D3 81 00 08 */ stfs f28, 8(r1) /* 80046ABC 0004271C 41 82 00 08 */ beq lbl_80046AC4 /* 80046AC0 00042720 D3 A1 00 08 */ stfs f29, 8(r1) lbl_80046AC4: /* 80046AC4 00042724 80 7B 00 00 */ lwz r3, 0(r27) /* 80046AC8 00042728 38 80 00 01 */ li r4, 1 /* 80046ACC 0004272C C0 01 00 38 */ lfs f0, 0x38(r1) /* 80046AD0 00042730 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80046AD4 00042734 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80046AD8 00042738 D0 03 00 24 */ stfs f0, 0x24(r3) /* 80046ADC 0004273C C0 01 00 40 */ lfs f0, 0x40(r1) /* 80046AE0 00042740 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80046AE4 00042744 48 1A BB D5 */ bl func_801F26B8 /* 80046AE8 00042748 C0 01 00 08 */ lfs f0, 8(r1) /* 80046AEC 0004274C 38 61 00 28 */ addi r3, r1, 0x28 /* 80046AF0 00042750 D3 81 00 18 */ stfs f28, 0x18(r1) /* 80046AF4 00042754 38 81 00 18 */ addi r4, r1, 0x18 /* 80046AF8 00042758 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80046AFC 0004275C D3 81 00 20 */ stfs f28, 0x20(r1) /* 80046B00 00042760 48 1D CB C1 */ bl func_802236C0 /* 80046B04 00042764 80 7B 00 00 */ lwz r3, 0(r27) /* 80046B08 00042768 38 80 00 01 */ li r4, 1 /* 80046B0C 0004276C C0 01 00 28 */ lfs f0, 0x28(r1) /* 80046B10 00042770 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80046B14 00042774 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80046B18 00042778 D0 03 00 30 */ stfs f0, 0x30(r3) /* 80046B1C 0004277C C0 01 00 30 */ lfs f0, 0x30(r1) /* 80046B20 00042780 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80046B24 00042784 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80046B28 00042788 D0 03 00 38 */ stfs f0, 0x38(r3) /* 80046B2C 0004278C A0 03 00 10 */ lhz r0, 0x10(r3) /* 80046B30 00042790 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80046B34 00042794 B0 03 00 10 */ sth r0, 0x10(r3) /* 80046B38 00042798 48 1A BB 81 */ bl func_801F26B8 /* 80046B3C 0004279C 2C 1A 00 00 */ cmpwi r26, 0 /* 80046B40 000427A0 41 82 00 18 */ beq lbl_80046B58 /* 80046B44 000427A4 7F 43 D3 78 */ mr r3, r26 /* 80046B48 000427A8 4B FF 2B 8D */ bl func_800396D4 /* 80046B4C 000427AC C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2) /* 80046B50 000427B0 48 00 79 4D */ bl func_8004E49C /* 80046B54 000427B4 48 00 00 08 */ b lbl_80046B5C lbl_80046B58: /* 80046B58 000427B8 C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2) lbl_80046B5C: /* 80046B5C 000427BC FC 00 08 18 */ frsp f0, f1 /* 80046B60 000427C0 80 7B 00 00 */ lwz r3, 0(r27) /* 80046B64 000427C4 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80046B68 000427C8 D0 03 00 48 */ stfs f0, 0x48(r3) /* 80046B6C 000427CC FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80046B70 000427D0 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80046B74 000427D4 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80046B78 000427D8 D0 21 00 14 */ stfs f1, 0x14(r1) /* 80046B7C 000427DC D0 03 00 50 */ stfs f0, 0x50(r3) /* 80046B80 000427E0 40 80 00 28 */ bge lbl_80046BA8 /* 80046B84 000427E4 C0 03 00 48 */ lfs f0, 0x48(r3) /* 80046B88 000427E8 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80046B8C 000427EC 40 81 00 1C */ ble lbl_80046BA8 /* 80046B90 000427F0 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 80046B94 000427F4 40 80 00 0C */ bge lbl_80046BA0 /* 80046B98 000427F8 FC 00 F8 90 */ fmr f0, f31 /* 80046B9C 000427FC 48 00 00 08 */ b lbl_80046BA4 lbl_80046BA0: /* 80046BA0 00042800 FC 00 F0 90 */ fmr f0, f30 lbl_80046BA4: /* 80046BA4 00042804 D0 03 00 48 */ stfs f0, 0x48(r3) lbl_80046BA8: /* 80046BA8 00042808 C0 03 00 4C */ lfs f0, 0x4c(r3) /* 80046BAC 0004280C FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80046BB0 00042810 40 80 00 24 */ bge lbl_80046BD4 /* 80046BB4 00042814 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80046BB8 00042818 40 81 00 1C */ ble lbl_80046BD4 /* 80046BBC 0004281C FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 80046BC0 00042820 40 80 00 0C */ bge lbl_80046BCC /* 80046BC4 00042824 FC 00 F8 90 */ fmr f0, f31 /* 80046BC8 00042828 48 00 00 08 */ b lbl_80046BD0 lbl_80046BCC: /* 80046BCC 0004282C FC 00 F0 90 */ fmr f0, f30 lbl_80046BD0: /* 80046BD0 00042830 D0 03 00 4C */ stfs f0, 0x4c(r3) lbl_80046BD4: /* 80046BD4 00042834 C0 03 00 50 */ lfs f0, 0x50(r3) /* 80046BD8 00042838 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80046BDC 0004283C 40 80 00 24 */ bge lbl_80046C00 /* 80046BE0 00042840 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80046BE4 00042844 40 81 00 1C */ ble lbl_80046C00 /* 80046BE8 00042848 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 80046BEC 0004284C 40 80 00 0C */ bge lbl_80046BF8 /* 80046BF0 00042850 FC 00 F8 90 */ fmr f0, f31 /* 80046BF4 00042854 48 00 00 08 */ b lbl_80046BFC lbl_80046BF8: /* 80046BF8 00042858 FC 00 F0 90 */ fmr f0, f30 lbl_80046BFC: /* 80046BFC 0004285C D0 03 00 50 */ stfs f0, 0x50(r3) lbl_80046C00: /* 80046C00 00042860 38 80 00 01 */ li r4, 1 /* 80046C04 00042864 48 1A BA B5 */ bl func_801F26B8 /* 80046C08 00042868 80 7B 00 00 */ lwz r3, 0(r27) /* 80046C0C 0004286C 80 03 01 04 */ lwz r0, 0x104(r3) /* 80046C10 00042870 60 00 00 01 */ ori r0, r0, 1 /* 80046C14 00042874 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80046C18 00042878 90 03 01 04 */ stw r0, 0x104(r3) /* 80046C1C 0004287C D3 83 01 08 */ stfs f28, 0x108(r3) /* 80046C20 00042880 80 7B 00 00 */ lwz r3, 0(r27) /* 80046C24 00042884 80 63 01 38 */ lwz r3, 0x138(r3) /* 80046C28 00042888 2C 03 00 00 */ cmpwi r3, 0 /* 80046C2C 0004288C 41 82 00 10 */ beq lbl_80046C3C /* 80046C30 00042890 A0 03 01 48 */ lhz r0, 0x148(r3) /* 80046C34 00042894 60 00 00 08 */ ori r0, r0, 8 /* 80046C38 00042898 B0 03 01 48 */ sth r0, 0x148(r3) lbl_80046C3C: /* 80046C3C 0004289C 3B BD 00 01 */ addi r29, r29, 1 /* 80046C40 000428A0 28 1D 00 04 */ cmplwi r29, 4 /* 80046C44 000428A4 41 80 FD F4 */ blt lbl_80046A38 /* 80046C48 000428A8 3B DE 00 01 */ addi r30, r30, 1 /* 80046C4C 000428AC 28 1E 00 03 */ cmplwi r30, 3 /* 80046C50 000428B0 41 80 FD E0 */ blt lbl_80046A30 /* 80046C54 000428B4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 80046C58 000428B8 CB E1 00 90 */ lfd f31, 0x90(r1) /* 80046C5C 000428BC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80046C60 000428C0 CB C1 00 80 */ lfd f30, 0x80(r1) /* 80046C64 000428C4 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80046C68 000428C8 CB A1 00 70 */ lfd f29, 0x70(r1) /* 80046C6C 000428CC E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 80046C70 000428D0 39 61 00 60 */ addi r11, r1, 0x60 /* 80046C74 000428D4 CB 81 00 60 */ lfd f28, 0x60(r1) /* 80046C78 000428D8 48 18 04 F9 */ bl _restgpr_26 /* 80046C7C 000428DC 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80046C80 000428E0 7C 08 03 A6 */ mtlr r0 /* 80046C84 000428E4 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80046C88 000428E8 4E 80 00 20 */ blr .global func_80046C8C func_80046C8C: /* 80046C8C 000428EC 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80046C90 000428F0 7C 08 02 A6 */ mflr r0 /* 80046C94 000428F4 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80046C98 000428F8 DB E1 00 90 */ stfd f31, 0x90(r1) /* 80046C9C 000428FC F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 80046CA0 00042900 DB C1 00 80 */ stfd f30, 0x80(r1) /* 80046CA4 00042904 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 80046CA8 00042908 DB A1 00 70 */ stfd f29, 0x70(r1) /* 80046CAC 0004290C F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 80046CB0 00042910 DB 81 00 60 */ stfd f28, 0x60(r1) /* 80046CB4 00042914 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 80046CB8 00042918 39 61 00 60 */ addi r11, r1, 0x60 /* 80046CBC 0004291C 48 18 04 69 */ bl _savegpr_26 /* 80046CC0 00042920 2C 04 00 00 */ cmpwi r4, 0 /* 80046CC4 00042924 7C 7B 1B 78 */ mr r27, r3 /* 80046CC8 00042928 7C 9A 23 78 */ mr r26, r4 /* 80046CCC 0004292C 41 80 01 FC */ blt lbl_80046EC8 /* 80046CD0 00042930 2C 04 00 03 */ cmpwi r4, 3 /* 80046CD4 00042934 40 81 00 08 */ ble lbl_80046CDC /* 80046CD8 00042938 48 00 01 F0 */ b lbl_80046EC8 lbl_80046CDC: /* 80046CDC 0004293C 38 A0 00 00 */ li r5, 0 /* 80046CE0 00042940 4B FF EE 21 */ bl func_80045B00 /* 80046CE4 00042944 2C 03 00 00 */ cmpwi r3, 0 /* 80046CE8 00042948 7C 7F 1B 78 */ mr r31, r3 /* 80046CEC 0004294C 41 82 01 DC */ beq lbl_80046EC8 /* 80046CF0 00042950 4B FF 29 E5 */ bl func_800396D4 /* 80046CF4 00042954 C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2) /* 80046CF8 00042958 48 00 77 A5 */ bl func_8004E49C /* 80046CFC 0004295C 57 40 10 3A */ slwi r0, r26, 2 /* 80046D00 00042960 FF 80 08 90 */ fmr f28, f1 /* 80046D04 00042964 7C 7B 02 14 */ add r3, r27, r0 /* 80046D08 00042968 C3 C2 83 B8 */ lfs f30, lbl_806409B8-_SDA2_BASE_(r2) /* 80046D0C 0004296C C3 A2 83 B4 */ lfs f29, lbl_806409B4-_SDA2_BASE_(r2) /* 80046D10 00042970 3B A3 01 2C */ addi r29, r3, 0x12c /* 80046D14 00042974 C3 E2 83 88 */ lfs f31, lbl_80640988-_SDA2_BASE_(r2) /* 80046D18 00042978 3B 83 01 3C */ addi r28, r3, 0x13c /* 80046D1C 0004297C 3B 63 01 4C */ addi r27, r3, 0x14c /* 80046D20 00042980 3B C0 00 00 */ li r30, 0 lbl_80046D24: /* 80046D24 00042984 57 C0 06 3F */ clrlwi. r0, r30, 0x18 /* 80046D28 00042988 40 82 00 0C */ bne lbl_80046D34 /* 80046D2C 0004298C 7F BA EB 78 */ mr r26, r29 /* 80046D30 00042990 48 00 00 20 */ b lbl_80046D50 lbl_80046D34: /* 80046D34 00042994 28 00 00 01 */ cmplwi r0, 1 /* 80046D38 00042998 40 82 00 0C */ bne lbl_80046D44 /* 80046D3C 0004299C 7F 9A E3 78 */ mr r26, r28 /* 80046D40 000429A0 48 00 00 10 */ b lbl_80046D50 lbl_80046D44: /* 80046D44 000429A4 28 00 00 02 */ cmplwi r0, 2 /* 80046D48 000429A8 40 82 01 74 */ bne lbl_80046EBC /* 80046D4C 000429AC 7F 7A DB 78 */ mr r26, r27 lbl_80046D50: /* 80046D50 000429B0 80 1A 00 00 */ lwz r0, 0(r26) /* 80046D54 000429B4 2C 00 00 00 */ cmpwi r0, 0 /* 80046D58 000429B8 41 82 01 64 */ beq lbl_80046EBC /* 80046D5C 000429BC 7F E4 FB 78 */ mr r4, r31 /* 80046D60 000429C0 38 61 00 30 */ addi r3, r1, 0x30 /* 80046D64 000429C4 4B FF 1A 7D */ bl func_800387E0 /* 80046D68 000429C8 80 7A 00 00 */ lwz r3, 0(r26) /* 80046D6C 000429CC 38 80 00 01 */ li r4, 1 /* 80046D70 000429D0 C0 01 00 30 */ lfs f0, 0x30(r1) /* 80046D74 000429D4 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80046D78 000429D8 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80046D7C 000429DC D0 03 00 24 */ stfs f0, 0x24(r3) /* 80046D80 000429E0 C0 01 00 38 */ lfs f0, 0x38(r1) /* 80046D84 000429E4 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80046D88 000429E8 48 1A B9 31 */ bl func_801F26B8 /* 80046D8C 000429EC 7F E4 FB 78 */ mr r4, r31 /* 80046D90 000429F0 38 61 00 14 */ addi r3, r1, 0x14 /* 80046D94 000429F4 4B FF 1D 01 */ bl func_80038A94 /* 80046D98 000429F8 38 61 00 20 */ addi r3, r1, 0x20 /* 80046D9C 000429FC 38 81 00 14 */ addi r4, r1, 0x14 /* 80046DA0 00042A00 48 1D C9 21 */ bl func_802236C0 /* 80046DA4 00042A04 80 7A 00 00 */ lwz r3, 0(r26) /* 80046DA8 00042A08 38 80 00 01 */ li r4, 1 /* 80046DAC 00042A0C C0 01 00 20 */ lfs f0, 0x20(r1) /* 80046DB0 00042A10 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80046DB4 00042A14 C0 01 00 24 */ lfs f0, 0x24(r1) /* 80046DB8 00042A18 D0 03 00 30 */ stfs f0, 0x30(r3) /* 80046DBC 00042A1C C0 01 00 28 */ lfs f0, 0x28(r1) /* 80046DC0 00042A20 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80046DC4 00042A24 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 80046DC8 00042A28 D0 03 00 38 */ stfs f0, 0x38(r3) /* 80046DCC 00042A2C A0 03 00 10 */ lhz r0, 0x10(r3) /* 80046DD0 00042A30 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80046DD4 00042A34 B0 03 00 10 */ sth r0, 0x10(r3) /* 80046DD8 00042A38 48 1A B8 E1 */ bl func_801F26B8 /* 80046DDC 00042A3C FC 00 E0 18 */ frsp f0, f28 /* 80046DE0 00042A40 80 7A 00 00 */ lwz r3, 0(r26) /* 80046DE4 00042A44 D3 81 00 08 */ stfs f28, 8(r1) /* 80046DE8 00042A48 D0 03 00 48 */ stfs f0, 0x48(r3) /* 80046DEC 00042A4C FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 80046DF0 00042A50 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80046DF4 00042A54 D3 81 00 0C */ stfs f28, 0xc(r1) /* 80046DF8 00042A58 D3 81 00 10 */ stfs f28, 0x10(r1) /* 80046DFC 00042A5C D0 03 00 50 */ stfs f0, 0x50(r3) /* 80046E00 00042A60 40 80 00 28 */ bge lbl_80046E28 /* 80046E04 00042A64 C0 03 00 48 */ lfs f0, 0x48(r3) /* 80046E08 00042A68 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80046E0C 00042A6C 40 81 00 1C */ ble lbl_80046E28 /* 80046E10 00042A70 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80046E14 00042A74 40 80 00 0C */ bge lbl_80046E20 /* 80046E18 00042A78 FC 00 F0 90 */ fmr f0, f30 /* 80046E1C 00042A7C 48 00 00 08 */ b lbl_80046E24 lbl_80046E20: /* 80046E20 00042A80 FC 00 E8 90 */ fmr f0, f29 lbl_80046E24: /* 80046E24 00042A84 D0 03 00 48 */ stfs f0, 0x48(r3) lbl_80046E28: /* 80046E28 00042A88 C0 03 00 4C */ lfs f0, 0x4c(r3) /* 80046E2C 00042A8C FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 80046E30 00042A90 40 80 00 24 */ bge lbl_80046E54 /* 80046E34 00042A94 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80046E38 00042A98 40 81 00 1C */ ble lbl_80046E54 /* 80046E3C 00042A9C FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80046E40 00042AA0 40 80 00 0C */ bge lbl_80046E4C /* 80046E44 00042AA4 FC 00 F0 90 */ fmr f0, f30 /* 80046E48 00042AA8 48 00 00 08 */ b lbl_80046E50 lbl_80046E4C: /* 80046E4C 00042AAC FC 00 E8 90 */ fmr f0, f29 lbl_80046E50: /* 80046E50 00042AB0 D0 03 00 4C */ stfs f0, 0x4c(r3) lbl_80046E54: /* 80046E54 00042AB4 C0 03 00 50 */ lfs f0, 0x50(r3) /* 80046E58 00042AB8 FC 00 E8 40 */ fcmpo cr0, f0, f29 /* 80046E5C 00042ABC 40 80 00 24 */ bge lbl_80046E80 /* 80046E60 00042AC0 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 80046E64 00042AC4 40 81 00 1C */ ble lbl_80046E80 /* 80046E68 00042AC8 FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80046E6C 00042ACC 40 80 00 0C */ bge lbl_80046E78 /* 80046E70 00042AD0 FC 00 F0 90 */ fmr f0, f30 /* 80046E74 00042AD4 48 00 00 08 */ b lbl_80046E7C lbl_80046E78: /* 80046E78 00042AD8 FC 00 E8 90 */ fmr f0, f29 lbl_80046E7C: /* 80046E7C 00042ADC D0 03 00 50 */ stfs f0, 0x50(r3) lbl_80046E80: /* 80046E80 00042AE0 38 80 00 01 */ li r4, 1 /* 80046E84 00042AE4 48 1A B8 35 */ bl func_801F26B8 /* 80046E88 00042AE8 80 7A 00 00 */ lwz r3, 0(r26) /* 80046E8C 00042AEC 80 03 01 04 */ lwz r0, 0x104(r3) /* 80046E90 00042AF0 60 00 00 01 */ ori r0, r0, 1 /* 80046E94 00042AF4 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80046E98 00042AF8 90 03 01 04 */ stw r0, 0x104(r3) /* 80046E9C 00042AFC D3 E3 01 08 */ stfs f31, 0x108(r3) /* 80046EA0 00042B00 80 7A 00 00 */ lwz r3, 0(r26) /* 80046EA4 00042B04 80 63 01 38 */ lwz r3, 0x138(r3) /* 80046EA8 00042B08 2C 03 00 00 */ cmpwi r3, 0 /* 80046EAC 00042B0C 41 82 00 10 */ beq lbl_80046EBC /* 80046EB0 00042B10 A0 03 01 48 */ lhz r0, 0x148(r3) /* 80046EB4 00042B14 60 00 00 08 */ ori r0, r0, 8 /* 80046EB8 00042B18 B0 03 01 48 */ sth r0, 0x148(r3) lbl_80046EBC: /* 80046EBC 00042B1C 3B DE 00 01 */ addi r30, r30, 1 /* 80046EC0 00042B20 28 1E 00 03 */ cmplwi r30, 3 /* 80046EC4 00042B24 41 80 FE 60 */ blt lbl_80046D24 lbl_80046EC8: /* 80046EC8 00042B28 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 80046ECC 00042B2C CB E1 00 90 */ lfd f31, 0x90(r1) /* 80046ED0 00042B30 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80046ED4 00042B34 CB C1 00 80 */ lfd f30, 0x80(r1) /* 80046ED8 00042B38 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80046EDC 00042B3C CB A1 00 70 */ lfd f29, 0x70(r1) /* 80046EE0 00042B40 E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 80046EE4 00042B44 39 61 00 60 */ addi r11, r1, 0x60 /* 80046EE8 00042B48 CB 81 00 60 */ lfd f28, 0x60(r1) /* 80046EEC 00042B4C 48 18 02 85 */ bl _restgpr_26 /* 80046EF0 00042B50 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80046EF4 00042B54 7C 08 03 A6 */ mtlr r0 /* 80046EF8 00042B58 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80046EFC 00042B5C 4E 80 00 20 */ blr .global func_80046F00 func_80046F00: /* 80046F00 00042B60 2C 04 00 00 */ cmpwi r4, 0 /* 80046F04 00042B64 4D 80 00 20 */ bltlr /* 80046F08 00042B68 2C 04 00 03 */ cmpwi r4, 3 /* 80046F0C 00042B6C 40 81 00 08 */ ble lbl_80046F14 /* 80046F10 00042B70 4E 80 00 20 */ blr lbl_80046F14: /* 80046F14 00042B74 54 84 10 3A */ slwi r4, r4, 2 /* 80046F18 00042B78 38 00 00 03 */ li r0, 3 /* 80046F1C 00042B7C 7C 63 22 14 */ add r3, r3, r4 /* 80046F20 00042B80 39 00 00 00 */ li r8, 0 /* 80046F24 00042B84 38 83 01 2C */ addi r4, r3, 0x12c /* 80046F28 00042B88 38 C3 01 3C */ addi r6, r3, 0x13c /* 80046F2C 00042B8C 38 63 01 4C */ addi r3, r3, 0x14c /* 80046F30 00042B90 7C 09 03 A6 */ mtctr r0 lbl_80046F34: /* 80046F34 00042B94 55 00 06 3F */ clrlwi. r0, r8, 0x18 /* 80046F38 00042B98 40 82 00 0C */ bne lbl_80046F44 /* 80046F3C 00042B9C 7C 87 23 78 */ mr r7, r4 /* 80046F40 00042BA0 48 00 00 20 */ b lbl_80046F60 lbl_80046F44: /* 80046F44 00042BA4 28 00 00 01 */ cmplwi r0, 1 /* 80046F48 00042BA8 40 82 00 0C */ bne lbl_80046F54 /* 80046F4C 00042BAC 7C C7 33 78 */ mr r7, r6 /* 80046F50 00042BB0 48 00 00 10 */ b lbl_80046F60 lbl_80046F54: /* 80046F54 00042BB4 28 00 00 02 */ cmplwi r0, 2 /* 80046F58 00042BB8 40 82 00 38 */ bne lbl_80046F90 /* 80046F5C 00042BBC 7C 67 1B 78 */ mr r7, r3 lbl_80046F60: /* 80046F60 00042BC0 80 E7 00 00 */ lwz r7, 0(r7) /* 80046F64 00042BC4 2C 07 00 00 */ cmpwi r7, 0 /* 80046F68 00042BC8 41 82 00 28 */ beq lbl_80046F90 /* 80046F6C 00042BCC 2C 05 00 00 */ cmpwi r5, 0 /* 80046F70 00042BD0 41 82 00 14 */ beq lbl_80046F84 /* 80046F74 00042BD4 A0 07 00 10 */ lhz r0, 0x10(r7) /* 80046F78 00042BD8 60 00 00 02 */ ori r0, r0, 2 /* 80046F7C 00042BDC B0 07 00 10 */ sth r0, 0x10(r7) /* 80046F80 00042BE0 48 00 00 10 */ b lbl_80046F90 lbl_80046F84: /* 80046F84 00042BE4 A0 07 00 10 */ lhz r0, 0x10(r7) /* 80046F88 00042BE8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 80046F8C 00042BEC B0 07 00 10 */ sth r0, 0x10(r7) lbl_80046F90: /* 80046F90 00042BF0 39 08 00 01 */ addi r8, r8, 1 /* 80046F94 00042BF4 42 00 FF A0 */ bdnz lbl_80046F34 /* 80046F98 00042BF8 4E 80 00 20 */ blr .global func_80046F9C func_80046F9C: /* 80046F9C 00042BFC 39 00 00 00 */ li r8, 0 /* 80046FA0 00042C00 38 00 00 02 */ li r0, 2 lbl_80046FA4: /* 80046FA4 00042C04 55 06 06 3E */ clrlwi r6, r8, 0x18 /* 80046FA8 00042C08 39 20 00 00 */ li r9, 0 /* 80046FAC 00042C0C 7C 09 03 A6 */ mtctr r0 lbl_80046FB0: /* 80046FB0 00042C10 2C 06 00 00 */ cmpwi r6, 0 /* 80046FB4 00042C14 40 82 00 14 */ bne lbl_80046FC8 /* 80046FB8 00042C18 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d /* 80046FBC 00042C1C 7C A3 2A 14 */ add r5, r3, r5 /* 80046FC0 00042C20 38 A5 01 2C */ addi r5, r5, 0x12c /* 80046FC4 00042C24 48 00 00 30 */ b lbl_80046FF4 lbl_80046FC8: /* 80046FC8 00042C28 28 06 00 01 */ cmplwi r6, 1 /* 80046FCC 00042C2C 40 82 00 14 */ bne lbl_80046FE0 /* 80046FD0 00042C30 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d /* 80046FD4 00042C34 7C A3 2A 14 */ add r5, r3, r5 /* 80046FD8 00042C38 38 A5 01 3C */ addi r5, r5, 0x13c /* 80046FDC 00042C3C 48 00 00 18 */ b lbl_80046FF4 lbl_80046FE0: /* 80046FE0 00042C40 28 06 00 02 */ cmplwi r6, 2 /* 80046FE4 00042C44 40 82 00 40 */ bne lbl_80047024 /* 80046FE8 00042C48 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d /* 80046FEC 00042C4C 7C A3 2A 14 */ add r5, r3, r5 /* 80046FF0 00042C50 38 A5 01 4C */ addi r5, r5, 0x14c lbl_80046FF4: /* 80046FF4 00042C54 80 E5 00 00 */ lwz r7, 0(r5) /* 80046FF8 00042C58 2C 07 00 00 */ cmpwi r7, 0 /* 80046FFC 00042C5C 41 82 00 28 */ beq lbl_80047024 /* 80047000 00042C60 2C 04 00 00 */ cmpwi r4, 0 /* 80047004 00042C64 41 82 00 14 */ beq lbl_80047018 /* 80047008 00042C68 A0 A7 00 10 */ lhz r5, 0x10(r7) /* 8004700C 00042C6C 60 A5 00 02 */ ori r5, r5, 2 /* 80047010 00042C70 B0 A7 00 10 */ sth r5, 0x10(r7) /* 80047014 00042C74 48 00 00 10 */ b lbl_80047024 lbl_80047018: /* 80047018 00042C78 A0 A7 00 10 */ lhz r5, 0x10(r7) /* 8004701C 00042C7C 54 A5 07 FA */ rlwinm r5, r5, 0, 0x1f, 0x1d /* 80047020 00042C80 B0 A7 00 10 */ sth r5, 0x10(r7) lbl_80047024: /* 80047024 00042C84 2C 06 00 00 */ cmpwi r6, 0 /* 80047028 00042C88 39 29 00 01 */ addi r9, r9, 1 /* 8004702C 00042C8C 40 82 00 14 */ bne lbl_80047040 /* 80047030 00042C90 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d /* 80047034 00042C94 7C A3 2A 14 */ add r5, r3, r5 /* 80047038 00042C98 38 A5 01 2C */ addi r5, r5, 0x12c /* 8004703C 00042C9C 48 00 00 30 */ b lbl_8004706C lbl_80047040: /* 80047040 00042CA0 28 06 00 01 */ cmplwi r6, 1 /* 80047044 00042CA4 40 82 00 14 */ bne lbl_80047058 /* 80047048 00042CA8 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d /* 8004704C 00042CAC 7C A3 2A 14 */ add r5, r3, r5 /* 80047050 00042CB0 38 A5 01 3C */ addi r5, r5, 0x13c /* 80047054 00042CB4 48 00 00 18 */ b lbl_8004706C lbl_80047058: /* 80047058 00042CB8 28 06 00 02 */ cmplwi r6, 2 /* 8004705C 00042CBC 40 82 00 40 */ bne lbl_8004709C /* 80047060 00042CC0 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d /* 80047064 00042CC4 7C A3 2A 14 */ add r5, r3, r5 /* 80047068 00042CC8 38 A5 01 4C */ addi r5, r5, 0x14c lbl_8004706C: /* 8004706C 00042CCC 80 E5 00 00 */ lwz r7, 0(r5) /* 80047070 00042CD0 2C 07 00 00 */ cmpwi r7, 0 /* 80047074 00042CD4 41 82 00 28 */ beq lbl_8004709C /* 80047078 00042CD8 2C 04 00 00 */ cmpwi r4, 0 /* 8004707C 00042CDC 41 82 00 14 */ beq lbl_80047090 /* 80047080 00042CE0 A0 A7 00 10 */ lhz r5, 0x10(r7) /* 80047084 00042CE4 60 A5 00 02 */ ori r5, r5, 2 /* 80047088 00042CE8 B0 A7 00 10 */ sth r5, 0x10(r7) /* 8004708C 00042CEC 48 00 00 10 */ b lbl_8004709C lbl_80047090: /* 80047090 00042CF0 A0 A7 00 10 */ lhz r5, 0x10(r7) /* 80047094 00042CF4 54 A5 07 FA */ rlwinm r5, r5, 0, 0x1f, 0x1d /* 80047098 00042CF8 B0 A7 00 10 */ sth r5, 0x10(r7) lbl_8004709C: /* 8004709C 00042CFC 39 29 00 01 */ addi r9, r9, 1 /* 800470A0 00042D00 42 00 FF 10 */ bdnz lbl_80046FB0 /* 800470A4 00042D04 39 08 00 01 */ addi r8, r8, 1 /* 800470A8 00042D08 28 08 00 03 */ cmplwi r8, 3 /* 800470AC 00042D0C 41 80 FE F8 */ blt lbl_80046FA4 /* 800470B0 00042D10 4E 80 00 20 */ blr .global func_800470B4 func_800470B4: /* 800470B4 00042D14 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800470B8 00042D18 7C 08 02 A6 */ mflr r0 /* 800470BC 00042D1C 90 01 00 44 */ stw r0, 0x44(r1) /* 800470C0 00042D20 39 61 00 40 */ addi r11, r1, 0x40 /* 800470C4 00042D24 48 18 00 65 */ bl _savegpr_27 /* 800470C8 00042D28 88 A3 01 28 */ lbz r5, 0x128(r3) /* 800470CC 00042D2C 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 800470D0 00042D30 7C 7F 1B 78 */ mr r31, r3 /* 800470D4 00042D34 7C 9B 23 78 */ mr r27, r4 /* 800470D8 00042D38 7C 05 00 40 */ cmplw r5, r0 /* 800470DC 00042D3C 41 82 03 78 */ beq lbl_80047454 /* 800470E0 00042D40 98 83 01 28 */ stb r4, 0x128(r3) /* 800470E4 00042D44 7F FD FB 78 */ mr r29, r31 /* 800470E8 00042D48 3B 80 00 00 */ li r28, 0 /* 800470EC 00042D4C 3B C0 00 00 */ li r30, 0 lbl_800470F0: /* 800470F0 00042D50 80 7D 01 5C */ lwz r3, 0x15c(r29) /* 800470F4 00042D54 2C 03 00 00 */ cmpwi r3, 0 /* 800470F8 00042D58 41 82 00 20 */ beq lbl_80047118 /* 800470FC 00042D5C 41 82 00 18 */ beq lbl_80047114 /* 80047100 00042D60 81 83 01 00 */ lwz r12, 0x100(r3) /* 80047104 00042D64 38 80 00 01 */ li r4, 1 /* 80047108 00042D68 81 8C 00 08 */ lwz r12, 8(r12) /* 8004710C 00042D6C 7D 89 03 A6 */ mtctr r12 /* 80047110 00042D70 4E 80 04 21 */ bctrl lbl_80047114: /* 80047114 00042D74 93 DD 01 5C */ stw r30, 0x15c(r29) lbl_80047118: /* 80047118 00042D78 3B 9C 00 01 */ addi r28, r28, 1 /* 8004711C 00042D7C 3B BD 00 04 */ addi r29, r29, 4 /* 80047120 00042D80 2C 1C 00 02 */ cmpwi r28, 2 /* 80047124 00042D84 41 80 FF CC */ blt lbl_800470F0 /* 80047128 00042D88 2C 1B 00 03 */ cmpwi r27, 3 /* 8004712C 00042D8C 41 82 00 28 */ beq lbl_80047154 /* 80047130 00042D90 40 80 00 14 */ bge lbl_80047144 /* 80047134 00042D94 2C 1B 00 01 */ cmpwi r27, 1 /* 80047138 00042D98 41 82 00 88 */ beq lbl_800471C0 /* 8004713C 00042D9C 40 80 00 F0 */ bge lbl_8004722C /* 80047140 00042DA0 48 00 03 14 */ b lbl_80047454 lbl_80047144: /* 80047144 00042DA4 2C 1B 00 05 */ cmpwi r27, 5 /* 80047148 00042DA8 41 82 02 A4 */ beq lbl_800473EC /* 8004714C 00042DAC 40 80 03 08 */ bge lbl_80047454 /* 80047150 00042DB0 48 00 01 C8 */ b lbl_80047318 lbl_80047154: /* 80047154 00042DB4 3C 80 1A 85 */ lis r4, 0x1A850E00@ha /* 80047158 00042DB8 38 60 00 0C */ li r3, 0xc /* 8004715C 00042DBC 38 84 0E 00 */ addi r4, r4, 0x1A850E00@l /* 80047160 00042DC0 48 19 43 5D */ bl func_801DB4BC /* 80047164 00042DC4 2C 03 00 00 */ cmpwi r3, 0 /* 80047168 00042DC8 7C 7D 1B 78 */ mr r29, r3 /* 8004716C 00042DCC 41 82 02 E8 */ beq lbl_80047454 /* 80047170 00042DD0 48 19 39 B9 */ bl func_801DAB28 /* 80047174 00042DD4 2C 03 00 00 */ cmpwi r3, 0 /* 80047178 00042DD8 41 82 00 14 */ beq lbl_8004718C /* 8004717C 00042DDC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80047180 00042DE0 38 80 01 40 */ li r4, 0x140 /* 80047184 00042DE4 48 19 3B 11 */ bl func_801DAC94 /* 80047188 00042DE8 48 00 00 08 */ b lbl_80047190 lbl_8004718C: /* 8004718C 00042DEC 38 60 00 00 */ li r3, 0 lbl_80047190: /* 80047190 00042DF0 2C 03 00 00 */ cmpwi r3, 0 /* 80047194 00042DF4 41 82 00 0C */ beq lbl_800471A0 /* 80047198 00042DF8 7F A4 EB 78 */ mr r4, r29 /* 8004719C 00042DFC 48 1B 27 51 */ bl func_801F98EC lbl_800471A0: /* 800471A0 00042E00 90 7F 01 5C */ stw r3, 0x15c(r31) /* 800471A4 00042E04 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800471A8 00042E08 80 03 01 04 */ lwz r0, 0x104(r3) /* 800471AC 00042E0C 60 00 00 01 */ ori r0, r0, 1 /* 800471B0 00042E10 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 800471B4 00042E14 90 03 01 04 */ stw r0, 0x104(r3) /* 800471B8 00042E18 D0 03 01 08 */ stfs f0, 0x108(r3) /* 800471BC 00042E1C 48 00 02 98 */ b lbl_80047454 lbl_800471C0: /* 800471C0 00042E20 3C 80 1B C1 */ lis r4, 0x1BC10E00@ha /* 800471C4 00042E24 38 60 00 0C */ li r3, 0xc /* 800471C8 00042E28 38 84 0E 00 */ addi r4, r4, 0x1BC10E00@l /* 800471CC 00042E2C 48 19 42 F1 */ bl func_801DB4BC /* 800471D0 00042E30 2C 03 00 00 */ cmpwi r3, 0 /* 800471D4 00042E34 7C 7D 1B 78 */ mr r29, r3 /* 800471D8 00042E38 41 82 02 7C */ beq lbl_80047454 /* 800471DC 00042E3C 48 19 39 4D */ bl func_801DAB28 /* 800471E0 00042E40 2C 03 00 00 */ cmpwi r3, 0 /* 800471E4 00042E44 41 82 00 14 */ beq lbl_800471F8 /* 800471E8 00042E48 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 800471EC 00042E4C 38 80 01 40 */ li r4, 0x140 /* 800471F0 00042E50 48 19 3A A5 */ bl func_801DAC94 /* 800471F4 00042E54 48 00 00 08 */ b lbl_800471FC lbl_800471F8: /* 800471F8 00042E58 38 60 00 00 */ li r3, 0 lbl_800471FC: /* 800471FC 00042E5C 2C 03 00 00 */ cmpwi r3, 0 /* 80047200 00042E60 41 82 00 0C */ beq lbl_8004720C /* 80047204 00042E64 7F A4 EB 78 */ mr r4, r29 /* 80047208 00042E68 48 1B 26 E5 */ bl func_801F98EC lbl_8004720C: /* 8004720C 00042E6C 90 7F 01 5C */ stw r3, 0x15c(r31) /* 80047210 00042E70 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 80047214 00042E74 80 03 01 04 */ lwz r0, 0x104(r3) /* 80047218 00042E78 60 00 00 01 */ ori r0, r0, 1 /* 8004721C 00042E7C 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80047220 00042E80 90 03 01 04 */ stw r0, 0x104(r3) /* 80047224 00042E84 D0 03 01 08 */ stfs f0, 0x108(r3) /* 80047228 00042E88 48 00 02 2C */ b lbl_80047454 lbl_8004722C: /* 8004722C 00042E8C 4B FE EB 71 */ bl func_80035D9C /* 80047230 00042E90 3C 80 20 9E */ lis r4, 0x209E0E00@ha /* 80047234 00042E94 7C 7C 1B 78 */ mr r28, r3 /* 80047238 00042E98 38 84 0E 00 */ addi r4, r4, 0x209E0E00@l /* 8004723C 00042E9C 38 60 00 0C */ li r3, 0xc /* 80047240 00042EA0 48 19 42 7D */ bl func_801DB4BC /* 80047244 00042EA4 2C 03 00 00 */ cmpwi r3, 0 /* 80047248 00042EA8 7C 7D 1B 78 */ mr r29, r3 /* 8004724C 00042EAC 41 82 02 08 */ beq lbl_80047454 /* 80047250 00042EB0 48 19 38 D9 */ bl func_801DAB28 /* 80047254 00042EB4 2C 03 00 00 */ cmpwi r3, 0 /* 80047258 00042EB8 41 82 00 14 */ beq lbl_8004726C /* 8004725C 00042EBC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80047260 00042EC0 38 80 01 40 */ li r4, 0x140 /* 80047264 00042EC4 48 19 3A 31 */ bl func_801DAC94 /* 80047268 00042EC8 48 00 00 08 */ b lbl_80047270 lbl_8004726C: /* 8004726C 00042ECC 38 60 00 00 */ li r3, 0 lbl_80047270: /* 80047270 00042ED0 2C 03 00 00 */ cmpwi r3, 0 /* 80047274 00042ED4 41 82 00 0C */ beq lbl_80047280 /* 80047278 00042ED8 7F A4 EB 78 */ mr r4, r29 /* 8004727C 00042EDC 48 1B 26 71 */ bl func_801F98EC lbl_80047280: /* 80047280 00042EE0 2C 1C 00 00 */ cmpwi r28, 0 /* 80047284 00042EE4 90 7F 01 5C */ stw r3, 0x15c(r31) /* 80047288 00042EE8 41 82 00 70 */ beq lbl_800472F8 /* 8004728C 00042EEC 7F 83 E3 78 */ mr r3, r28 /* 80047290 00042EF0 38 80 00 04 */ li r4, 4 /* 80047294 00042EF4 4B FE FC BD */ bl func_80036F50 /* 80047298 00042EF8 2C 03 00 00 */ cmpwi r3, 0 /* 8004729C 00042EFC 41 82 00 5C */ beq lbl_800472F8 /* 800472A0 00042F00 C0 22 83 88 */ lfs f1, lbl_80640988-_SDA2_BASE_(r2) /* 800472A4 00042F04 38 61 00 18 */ addi r3, r1, 0x18 /* 800472A8 00042F08 C0 02 83 A8 */ lfs f0, lbl_806409A8-_SDA2_BASE_(r2) /* 800472AC 00042F0C 38 81 00 08 */ addi r4, r1, 8 /* 800472B0 00042F10 D0 21 00 08 */ stfs f1, 8(r1) /* 800472B4 00042F14 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800472B8 00042F18 D0 21 00 10 */ stfs f1, 0x10(r1) /* 800472BC 00042F1C 48 1D C4 05 */ bl func_802236C0 /* 800472C0 00042F20 80 7F 01 5C */ lwz r3, 0x15c(r31) /* 800472C4 00042F24 38 80 00 01 */ li r4, 1 /* 800472C8 00042F28 C0 01 00 18 */ lfs f0, 0x18(r1) /* 800472CC 00042F2C D0 03 00 2C */ stfs f0, 0x2c(r3) /* 800472D0 00042F30 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800472D4 00042F34 D0 03 00 30 */ stfs f0, 0x30(r3) /* 800472D8 00042F38 C0 01 00 20 */ lfs f0, 0x20(r1) /* 800472DC 00042F3C D0 03 00 34 */ stfs f0, 0x34(r3) /* 800472E0 00042F40 C0 01 00 24 */ lfs f0, 0x24(r1) /* 800472E4 00042F44 D0 03 00 38 */ stfs f0, 0x38(r3) /* 800472E8 00042F48 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800472EC 00042F4C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 800472F0 00042F50 B0 03 00 10 */ sth r0, 0x10(r3) /* 800472F4 00042F54 48 1A B3 C5 */ bl func_801F26B8 lbl_800472F8: /* 800472F8 00042F58 80 7F 01 5C */ lwz r3, 0x15c(r31) /* 800472FC 00042F5C C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 80047300 00042F60 80 03 01 04 */ lwz r0, 0x104(r3) /* 80047304 00042F64 60 00 00 01 */ ori r0, r0, 1 /* 80047308 00042F68 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 8004730C 00042F6C 90 03 01 04 */ stw r0, 0x104(r3) /* 80047310 00042F70 D0 03 01 08 */ stfs f0, 0x108(r3) /* 80047314 00042F74 48 00 01 40 */ b lbl_80047454 lbl_80047318: /* 80047318 00042F78 3C 80 20 9C */ lis r4, 0x209C0E00@ha /* 8004731C 00042F7C 38 60 00 0C */ li r3, 0xc /* 80047320 00042F80 38 84 0E 00 */ addi r4, r4, 0x209C0E00@l /* 80047324 00042F84 48 19 41 99 */ bl func_801DB4BC /* 80047328 00042F88 2C 03 00 00 */ cmpwi r3, 0 /* 8004732C 00042F8C 7C 7D 1B 78 */ mr r29, r3 /* 80047330 00042F90 41 82 00 50 */ beq lbl_80047380 /* 80047334 00042F94 48 19 37 F5 */ bl func_801DAB28 /* 80047338 00042F98 2C 03 00 00 */ cmpwi r3, 0 /* 8004733C 00042F9C 41 82 00 14 */ beq lbl_80047350 /* 80047340 00042FA0 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80047344 00042FA4 38 80 01 40 */ li r4, 0x140 /* 80047348 00042FA8 48 19 39 4D */ bl func_801DAC94 /* 8004734C 00042FAC 48 00 00 08 */ b lbl_80047354 lbl_80047350: /* 80047350 00042FB0 38 60 00 00 */ li r3, 0 lbl_80047354: /* 80047354 00042FB4 2C 03 00 00 */ cmpwi r3, 0 /* 80047358 00042FB8 41 82 00 0C */ beq lbl_80047364 /* 8004735C 00042FBC 7F A4 EB 78 */ mr r4, r29 /* 80047360 00042FC0 48 1B 25 8D */ bl func_801F98EC lbl_80047364: /* 80047364 00042FC4 90 7F 01 5C */ stw r3, 0x15c(r31) /* 80047368 00042FC8 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 8004736C 00042FCC 80 03 01 04 */ lwz r0, 0x104(r3) /* 80047370 00042FD0 60 00 00 01 */ ori r0, r0, 1 /* 80047374 00042FD4 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80047378 00042FD8 90 03 01 04 */ stw r0, 0x104(r3) /* 8004737C 00042FDC D0 03 01 08 */ stfs f0, 0x108(r3) lbl_80047380: /* 80047380 00042FE0 3C 80 20 9D */ lis r4, 0x209D0E00@ha /* 80047384 00042FE4 38 60 00 0C */ li r3, 0xc /* 80047388 00042FE8 38 84 0E 00 */ addi r4, r4, 0x209D0E00@l /* 8004738C 00042FEC 48 19 41 31 */ bl func_801DB4BC /* 80047390 00042FF0 2C 03 00 00 */ cmpwi r3, 0 /* 80047394 00042FF4 7C 7D 1B 78 */ mr r29, r3 /* 80047398 00042FF8 41 82 00 BC */ beq lbl_80047454 /* 8004739C 00042FFC 48 19 37 8D */ bl func_801DAB28 /* 800473A0 00043000 2C 03 00 00 */ cmpwi r3, 0 /* 800473A4 00043004 41 82 00 14 */ beq lbl_800473B8 /* 800473A8 00043008 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 800473AC 0004300C 38 80 01 40 */ li r4, 0x140 /* 800473B0 00043010 48 19 38 E5 */ bl func_801DAC94 /* 800473B4 00043014 48 00 00 08 */ b lbl_800473BC lbl_800473B8: /* 800473B8 00043018 38 60 00 00 */ li r3, 0 lbl_800473BC: /* 800473BC 0004301C 2C 03 00 00 */ cmpwi r3, 0 /* 800473C0 00043020 41 82 00 0C */ beq lbl_800473CC /* 800473C4 00043024 7F A4 EB 78 */ mr r4, r29 /* 800473C8 00043028 48 1B 25 25 */ bl func_801F98EC lbl_800473CC: /* 800473CC 0004302C 90 7F 01 60 */ stw r3, 0x160(r31) /* 800473D0 00043030 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 800473D4 00043034 80 03 01 04 */ lwz r0, 0x104(r3) /* 800473D8 00043038 60 00 00 01 */ ori r0, r0, 1 /* 800473DC 0004303C 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 800473E0 00043040 90 03 01 04 */ stw r0, 0x104(r3) /* 800473E4 00043044 D0 03 01 08 */ stfs f0, 0x108(r3) /* 800473E8 00043048 48 00 00 6C */ b lbl_80047454 lbl_800473EC: /* 800473EC 0004304C 3C 80 21 E3 */ lis r4, 0x21E30E00@ha /* 800473F0 00043050 38 60 00 0C */ li r3, 0xc /* 800473F4 00043054 38 84 0E 00 */ addi r4, r4, 0x21E30E00@l /* 800473F8 00043058 48 19 40 C5 */ bl func_801DB4BC /* 800473FC 0004305C 2C 03 00 00 */ cmpwi r3, 0 /* 80047400 00043060 7C 7D 1B 78 */ mr r29, r3 /* 80047404 00043064 41 82 00 50 */ beq lbl_80047454 /* 80047408 00043068 48 19 37 21 */ bl func_801DAB28 /* 8004740C 0004306C 2C 03 00 00 */ cmpwi r3, 0 /* 80047410 00043070 41 82 00 14 */ beq lbl_80047424 /* 80047414 00043074 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80047418 00043078 38 80 01 40 */ li r4, 0x140 /* 8004741C 0004307C 48 19 38 79 */ bl func_801DAC94 /* 80047420 00043080 48 00 00 08 */ b lbl_80047428 lbl_80047424: /* 80047424 00043084 38 60 00 00 */ li r3, 0 lbl_80047428: /* 80047428 00043088 2C 03 00 00 */ cmpwi r3, 0 /* 8004742C 0004308C 41 82 00 0C */ beq lbl_80047438 /* 80047430 00043090 7F A4 EB 78 */ mr r4, r29 /* 80047434 00043094 48 1B 24 B9 */ bl func_801F98EC lbl_80047438: /* 80047438 00043098 90 7F 01 5C */ stw r3, 0x15c(r31) /* 8004743C 0004309C C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2) /* 80047440 000430A0 80 03 01 04 */ lwz r0, 0x104(r3) /* 80047444 000430A4 60 00 00 01 */ ori r0, r0, 1 /* 80047448 000430A8 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 8004744C 000430AC 90 03 01 04 */ stw r0, 0x104(r3) /* 80047450 000430B0 D0 03 01 08 */ stfs f0, 0x108(r3) lbl_80047454: /* 80047454 000430B4 39 61 00 40 */ addi r11, r1, 0x40 /* 80047458 000430B8 48 17 FD 1D */ bl _restgpr_27 /* 8004745C 000430BC 80 01 00 44 */ lwz r0, 0x44(r1) /* 80047460 000430C0 7C 08 03 A6 */ mtlr r0 /* 80047464 000430C4 38 21 00 40 */ addi r1, r1, 0x40 /* 80047468 000430C8 4E 80 00 20 */ blr .global func_8004746C func_8004746C: /* 8004746C 000430CC 38 80 00 00 */ li r4, 0 /* 80047470 000430D0 4B FF FC 44 */ b func_800470B4 .global func_80047474 func_80047474: /* 80047474 000430D4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80047478 000430D8 7C 08 02 A6 */ mflr r0 /* 8004747C 000430DC 90 01 00 24 */ stw r0, 0x24(r1) /* 80047480 000430E0 54 A0 00 5E */ rlwinm r0, r5, 0, 1, 0xf /* 80047484 000430E4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047488 000430E8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004748C 000430EC 7C DE 33 78 */ mr r30, r6 /* 80047490 000430F0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80047494 000430F4 7C 7D 1B 78 */ mr r29, r3 /* 80047498 000430F8 7C 83 23 78 */ mr r3, r4 /* 8004749C 000430FC 60 04 2C 00 */ ori r4, r0, 0x2c00 /* 800474A0 00043100 48 19 40 1D */ bl func_801DB4BC /* 800474A4 00043104 2C 03 00 00 */ cmpwi r3, 0 /* 800474A8 00043108 7C 7F 1B 78 */ mr r31, r3 /* 800474AC 0004310C 41 82 00 24 */ beq lbl_800474D0 /* 800474B0 00043110 7F C4 F3 78 */ mr r4, r30 /* 800474B4 00043114 48 19 D6 D9 */ bl func_801E4B8C /* 800474B8 00043118 7F E3 FB 78 */ mr r3, r31 /* 800474BC 0004311C 38 80 00 01 */ li r4, 1 /* 800474C0 00043120 48 19 D7 0D */ bl func_801E4BCC /* 800474C4 00043124 93 FD 01 68 */ stw r31, 0x168(r29) /* 800474C8 00043128 38 60 00 01 */ li r3, 1 /* 800474CC 0004312C 48 00 00 08 */ b lbl_800474D4 lbl_800474D0: /* 800474D0 00043130 38 60 00 00 */ li r3, 0 lbl_800474D4: /* 800474D4 00043134 80 01 00 24 */ lwz r0, 0x24(r1) /* 800474D8 00043138 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800474DC 0004313C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800474E0 00043140 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800474E4 00043144 7C 08 03 A6 */ mtlr r0 /* 800474E8 00043148 38 21 00 20 */ addi r1, r1, 0x20 /* 800474EC 0004314C 4E 80 00 20 */ blr .global func_800474F0 func_800474F0: /* 800474F0 00043150 80 63 01 68 */ lwz r3, 0x168(r3) /* 800474F4 00043154 2C 03 00 00 */ cmpwi r3, 0 /* 800474F8 00043158 4D 82 00 20 */ beqlr /* 800474FC 0004315C 48 19 D6 D0 */ b func_801E4BCC /* 80047500 00043160 4E 80 00 20 */ blr .global func_80047504 func_80047504: /* 80047504 00043164 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80047508 00043168 7C 08 02 A6 */ mflr r0 /* 8004750C 0004316C 90 01 00 24 */ stw r0, 0x24(r1) /* 80047510 00043170 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047514 00043174 93 C1 00 18 */ stw r30, 0x18(r1) /* 80047518 00043178 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004751C 0004317C 7C 7D 1B 78 */ mr r29, r3 /* 80047520 00043180 4B FE BB 69 */ bl func_80033088 /* 80047524 00043184 80 1D 00 08 */ lwz r0, 8(r29) /* 80047528 00043188 7C 7E 1B 78 */ mr r30, r3 /* 8004752C 0004318C 2C 00 00 00 */ cmpwi r0, 0 /* 80047530 00043190 41 82 00 90 */ beq lbl_800475C0 /* 80047534 00043194 2C 03 00 00 */ cmpwi r3, 0 /* 80047538 00043198 41 82 00 88 */ beq lbl_800475C0 /* 8004753C 0004319C 48 0D 54 39 */ bl func_8011C974 /* 80047540 000431A0 80 63 00 10 */ lwz r3, 0x10(r3) /* 80047544 000431A4 37 A3 FC 18 */ addic. r29, r3, -1000 /* 80047548 000431A8 41 80 00 78 */ blt lbl_800475C0 /* 8004754C 000431AC 7F C3 F3 78 */ mr r3, r30 /* 80047550 000431B0 38 80 00 01 */ li r4, 1 /* 80047554 000431B4 4B FE DA 51 */ bl func_80034FA4 /* 80047558 000431B8 7F C3 F3 78 */ mr r3, r30 /* 8004755C 000431BC 38 80 00 00 */ li r4, 0 /* 80047560 000431C0 4B FE DB 21 */ bl func_80035080 /* 80047564 000431C4 3F E0 80 64 */ lis r31, lbl_8063CE34@ha /* 80047568 000431C8 7F A4 EB 78 */ mr r4, r29 /* 8004756C 000431CC 3B FF CE 34 */ addi r31, r31, lbl_8063CE34@l /* 80047570 000431D0 38 7F 00 78 */ addi r3, r31, 0x78 /* 80047574 000431D4 48 35 23 DD */ bl func_80399950 /* 80047578 000431D8 54 64 06 3E */ clrlwi r4, r3, 0x18 /* 8004757C 000431DC 7F C3 F3 78 */ mr r3, r30 /* 80047580 000431E0 7C 04 00 D0 */ neg r0, r4 /* 80047584 000431E4 7C 00 23 78 */ or r0, r0, r4 /* 80047588 000431E8 54 04 0F FE */ srwi r4, r0, 0x1f /* 8004758C 000431EC 4B FE DA ED */ bl func_80035078 /* 80047590 000431F0 7F A4 EB 78 */ mr r4, r29 /* 80047594 000431F4 38 7F 00 78 */ addi r3, r31, 0x78 /* 80047598 000431F8 48 35 23 ED */ bl func_80399984 /* 8004759C 000431FC 7C 60 1B 78 */ mr r0, r3 /* 800475A0 00043200 7F C3 F3 78 */ mr r3, r30 /* 800475A4 00043204 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 800475A8 00043208 4B FE DA F9 */ bl func_800350A0 /* 800475AC 0004320C 7F A4 EB 78 */ mr r4, r29 /* 800475B0 00043210 38 7F 00 78 */ addi r3, r31, 0x78 /* 800475B4 00043214 48 35 24 05 */ bl func_803999B8 /* 800475B8 00043218 7F C3 F3 78 */ mr r3, r30 /* 800475BC 0004321C 4B FE D9 F1 */ bl func_80034FAC lbl_800475C0: /* 800475C0 00043220 80 01 00 24 */ lwz r0, 0x24(r1) /* 800475C4 00043224 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800475C8 00043228 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800475CC 0004322C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800475D0 00043230 7C 08 03 A6 */ mtlr r0 /* 800475D4 00043234 38 21 00 20 */ addi r1, r1, 0x20 /* 800475D8 00043238 4E 80 00 20 */ blr .global func_800475DC func_800475DC: /* 800475DC 0004323C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800475E0 00043240 7C 08 02 A6 */ mflr r0 /* 800475E4 00043244 90 01 00 24 */ stw r0, 0x24(r1) /* 800475E8 00043248 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800475EC 0004324C 3B E0 00 00 */ li r31, 0 /* 800475F0 00043250 93 C1 00 18 */ stw r30, 0x18(r1) /* 800475F4 00043254 93 A1 00 14 */ stw r29, 0x14(r1) /* 800475F8 00043258 7C 9D 23 78 */ mr r29, r4 /* 800475FC 0004325C 93 81 00 10 */ stw r28, 0x10(r1) /* 80047600 00043260 7C 7C 1B 78 */ mr r28, r3 /* 80047604 00043264 48 0D 53 71 */ bl func_8011C974 /* 80047608 00043268 80 83 00 10 */ lwz r4, 0x10(r3) /* 8004760C 0004326C 34 84 FC 18 */ addic. r4, r4, -1000 /* 80047610 00043270 40 80 00 08 */ bge lbl_80047618 /* 80047614 00043274 38 80 00 00 */ li r4, 0 lbl_80047618: /* 80047618 00043278 80 03 00 00 */ lwz r0, 0(r3) /* 8004761C 0004327C 2C 1D 00 02 */ cmpwi r29, 2 /* 80047620 00043280 3B C0 00 00 */ li r30, 0 /* 80047624 00043284 54 00 2F FE */ rlwinm r0, r0, 5, 0x1f, 0x1f /* 80047628 00043288 41 82 00 D4 */ beq lbl_800476FC /* 8004762C 0004328C 40 80 00 14 */ bge lbl_80047640 /* 80047630 00043290 2C 1D 00 00 */ cmpwi r29, 0 /* 80047634 00043294 41 82 00 18 */ beq lbl_8004764C /* 80047638 00043298 40 80 00 8C */ bge lbl_800476C4 /* 8004763C 0004329C 48 00 00 EC */ b lbl_80047728 lbl_80047640: /* 80047640 000432A0 2C 1D 00 04 */ cmpwi r29, 4 /* 80047644 000432A4 40 80 00 E4 */ bge lbl_80047728 /* 80047648 000432A8 48 00 00 CC */ b lbl_80047714 lbl_8004764C: /* 8004764C 000432AC 2C 00 00 00 */ cmpwi r0, 0 /* 80047650 000432B0 41 82 00 5C */ beq lbl_800476AC /* 80047654 000432B4 3B E0 00 00 */ li r31, 0 /* 80047658 000432B8 48 00 00 2C */ b lbl_80047684 lbl_8004765C: /* 8004765C 000432BC 7F 83 E3 78 */ mr r3, r28 /* 80047660 000432C0 38 9F 00 80 */ addi r4, r31, 0x80 /* 80047664 000432C4 38 A0 00 00 */ li r5, 0 /* 80047668 000432C8 4B FF E4 99 */ bl func_80045B00 /* 8004766C 000432CC A0 63 05 1C */ lhz r3, 0x51c(r3) /* 80047670 000432D0 38 03 FF F8 */ addi r0, r3, -8 /* 80047674 000432D4 7C 1E 00 00 */ cmpw r30, r0 /* 80047678 000432D8 40 80 00 08 */ bge lbl_80047680 /* 8004767C 000432DC 7C 1E 03 78 */ mr r30, r0 lbl_80047680: /* 80047680 000432E0 3B FF 00 01 */ addi r31, r31, 1 lbl_80047684: /* 80047684 000432E4 A0 1C 01 1E */ lhz r0, 0x11e(r28) /* 80047688 000432E8 7C 1F 00 00 */ cmpw r31, r0 /* 8004768C 000432EC 41 80 FF D0 */ blt lbl_8004765C /* 80047690 000432F0 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 80047694 000432F4 7F C4 F3 78 */ mr r4, r30 /* 80047698 000432F8 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8004769C 000432FC 38 63 00 78 */ addi r3, r3, 0x78 /* 800476A0 00043300 48 35 21 AD */ bl func_8039984C /* 800476A4 00043304 7C 7F 1B 78 */ mr r31, r3 /* 800476A8 00043308 48 00 00 80 */ b lbl_80047728 lbl_800476AC: /* 800476AC 0004330C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 800476B0 00043310 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 800476B4 00043314 38 63 00 78 */ addi r3, r3, 0x78 /* 800476B8 00043318 48 35 21 61 */ bl func_80399818 /* 800476BC 0004331C 7C 7F 1B 78 */ mr r31, r3 /* 800476C0 00043320 48 00 00 68 */ b lbl_80047728 lbl_800476C4: /* 800476C4 00043324 2C 00 00 00 */ cmpwi r0, 0 /* 800476C8 00043328 41 82 00 1C */ beq lbl_800476E4 /* 800476CC 0004332C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 800476D0 00043330 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 800476D4 00043334 38 63 00 78 */ addi r3, r3, 0x78 /* 800476D8 00043338 48 35 21 DD */ bl func_803998B4 /* 800476DC 0004333C 7C 7F 1B 78 */ mr r31, r3 /* 800476E0 00043340 48 00 00 48 */ b lbl_80047728 lbl_800476E4: /* 800476E4 00043344 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 800476E8 00043348 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 800476EC 0004334C 38 63 00 78 */ addi r3, r3, 0x78 /* 800476F0 00043350 48 35 21 91 */ bl func_80399880 /* 800476F4 00043354 7C 7F 1B 78 */ mr r31, r3 /* 800476F8 00043358 48 00 00 30 */ b lbl_80047728 lbl_800476FC: /* 800476FC 0004335C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 80047700 00043360 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 80047704 00043364 38 63 00 78 */ addi r3, r3, 0x78 /* 80047708 00043368 48 35 21 E1 */ bl func_803998E8 /* 8004770C 0004336C 7C 7F 1B 78 */ mr r31, r3 /* 80047710 00043370 48 00 00 18 */ b lbl_80047728 lbl_80047714: /* 80047714 00043374 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 80047718 00043378 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8004771C 0004337C 38 63 00 78 */ addi r3, r3, 0x78 /* 80047720 00043380 48 35 21 FD */ bl func_8039991C /* 80047724 00043384 7C 7F 1B 78 */ mr r31, r3 lbl_80047728: /* 80047728 00043388 2C 1F 00 00 */ cmpwi r31, 0 /* 8004772C 0004338C 40 80 00 08 */ bge lbl_80047734 /* 80047730 00043390 3B E0 00 00 */ li r31, 0 lbl_80047734: /* 80047734 00043394 7F E3 FB 78 */ mr r3, r31 /* 80047738 00043398 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004773C 0004339C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80047740 000433A0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80047744 000433A4 83 81 00 10 */ lwz r28, 0x10(r1) /* 80047748 000433A8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004774C 000433AC 7C 08 03 A6 */ mtlr r0 /* 80047750 000433B0 38 21 00 20 */ addi r1, r1, 0x20 /* 80047754 000433B4 4E 80 00 20 */ blr .global func_80047758 func_80047758: /* 80047758 000433B8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004775C 000433BC 7C 08 02 A6 */ mflr r0 /* 80047760 000433C0 90 01 00 24 */ stw r0, 0x24(r1) /* 80047764 000433C4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047768 000433C8 3B E3 00 0C */ addi r31, r3, 0xc /* 8004776C 000433CC 93 C1 00 18 */ stw r30, 0x18(r1) /* 80047770 000433D0 3B C0 00 00 */ li r30, 0 /* 80047774 000433D4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80047778 000433D8 7C 7D 1B 78 */ mr r29, r3 /* 8004777C 000433DC 48 00 00 24 */ b lbl_800477A0 lbl_80047780: /* 80047780 000433E0 7F E3 FB 78 */ mr r3, r31 /* 80047784 000433E4 4B FF D8 2D */ bl func_80044FB0 /* 80047788 000433E8 2C 03 00 00 */ cmpwi r3, 0 /* 8004778C 000433EC 41 82 00 0C */ beq lbl_80047798 /* 80047790 000433F0 7F E3 FB 78 */ mr r3, r31 /* 80047794 000433F4 4B FF D8 D9 */ bl func_8004506C lbl_80047798: /* 80047798 000433F8 3B FF 00 44 */ addi r31, r31, 0x44 /* 8004779C 000433FC 3B DE 00 01 */ addi r30, r30, 1 lbl_800477A0: /* 800477A0 00043400 A0 1D 01 1E */ lhz r0, 0x11e(r29) /* 800477A4 00043404 7C 1E 00 00 */ cmpw r30, r0 /* 800477A8 00043408 41 80 FF D8 */ blt lbl_80047780 /* 800477AC 0004340C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800477B0 00043410 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800477B4 00043414 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800477B8 00043418 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800477BC 0004341C 7C 08 03 A6 */ mtlr r0 /* 800477C0 00043420 38 21 00 20 */ addi r1, r1, 0x20 /* 800477C4 00043424 4E 80 00 20 */ blr .global func_800477C8 func_800477C8: /* 800477C8 00043428 38 A0 00 01 */ li r5, 1 /* 800477CC 0004342C 38 6D 97 F0 */ addi r3, r13, lbl_8063EAB0-_SDA_BASE_ /* 800477D0 00043430 38 80 00 04 */ li r4, 4 /* 800477D4 00043434 38 00 00 00 */ li r0, 0 /* 800477D8 00043438 98 AD 97 F0 */ stb r5, lbl_8063EAB0-_SDA_BASE_(r13) /* 800477DC 0004343C B0 83 00 02 */ sth r4, 2(r3) /* 800477E0 00043440 98 03 00 04 */ stb r0, 4(r3) /* 800477E4 00043444 4E 80 00 20 */ blr .global func_800477E8 func_800477E8: /* 800477E8 00043448 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800477EC 0004344C 7C 08 02 A6 */ mflr r0 /* 800477F0 00043450 90 01 00 14 */ stw r0, 0x14(r1) /* 800477F4 00043454 4B FF 68 49 */ bl func_8003E03C /* 800477F8 00043458 4B FF 89 A9 */ bl func_800401A0 /* 800477FC 0004345C 4B FE B8 25 */ bl func_80033020 /* 80047800 00043460 4B FF CF E5 */ bl func_800447E4 /* 80047804 00043464 4B FF DD 4D */ bl func_80045550 /* 80047808 00043468 4B FE E5 51 */ bl func_80035D58 /* 8004780C 0004346C 48 00 7B 71 */ bl func_8004F37C /* 80047810 00043470 80 01 00 14 */ lwz r0, 0x14(r1) /* 80047814 00043474 7C 08 03 A6 */ mtlr r0 /* 80047818 00043478 38 21 00 10 */ addi r1, r1, 0x10 /* 8004781C 0004347C 4E 80 00 20 */ blr .global func_80047820 func_80047820: /* 80047820 00043480 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80047824 00043484 7C 08 02 A6 */ mflr r0 /* 80047828 00043488 90 01 00 14 */ stw r0, 0x14(r1) /* 8004782C 0004348C 4B FF 89 C9 */ bl func_800401F4 /* 80047830 00043490 2C 03 00 00 */ cmpwi r3, 0 /* 80047834 00043494 41 82 00 0C */ beq lbl_80047840 /* 80047838 00043498 38 00 00 01 */ li r0, 1 /* 8004783C 0004349C 98 03 00 00 */ stb r0, 0(r3) lbl_80047840: /* 80047840 000434A0 4B FE B8 49 */ bl func_80033088 /* 80047844 000434A4 2C 03 00 00 */ cmpwi r3, 0 /* 80047848 000434A8 41 82 00 08 */ beq lbl_80047850 /* 8004784C 000434AC 4B FE BC 3D */ bl func_80033488 lbl_80047850: /* 80047850 000434B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80047854 000434B4 7C 08 03 A6 */ mtlr r0 /* 80047858 000434B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004785C 000434BC 4E 80 00 20 */ blr .global func_80047860 func_80047860: /* 80047860 000434C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80047864 000434C4 7C 08 02 A6 */ mflr r0 /* 80047868 000434C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004786C 000434CC 4B FF 89 89 */ bl func_800401F4 /* 80047870 000434D0 2C 03 00 00 */ cmpwi r3, 0 /* 80047874 000434D4 41 82 00 0C */ beq lbl_80047880 /* 80047878 000434D8 38 00 00 00 */ li r0, 0 /* 8004787C 000434DC 98 03 00 00 */ stb r0, 0(r3) lbl_80047880: /* 80047880 000434E0 4B FE B8 09 */ bl func_80033088 /* 80047884 000434E4 2C 03 00 00 */ cmpwi r3, 0 /* 80047888 000434E8 41 82 00 08 */ beq lbl_80047890 /* 8004788C 000434EC 4B FE BC 09 */ bl func_80033494 lbl_80047890: /* 80047890 000434F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80047894 000434F4 7C 08 03 A6 */ mtlr r0 /* 80047898 000434F8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004789C 000434FC 4E 80 00 20 */ blr .global func_800478A0 func_800478A0: /* 800478A0 00043500 38 A0 00 01 */ li r5, 1 /* 800478A4 00043504 38 6D 98 00 */ addi r3, r13, lbl_8063EAC0-_SDA_BASE_ /* 800478A8 00043508 38 80 00 04 */ li r4, 4 /* 800478AC 0004350C 38 00 00 00 */ li r0, 0 /* 800478B0 00043510 98 AD 98 00 */ stb r5, lbl_8063EAC0-_SDA_BASE_(r13) /* 800478B4 00043514 B0 83 00 02 */ sth r4, 2(r3) /* 800478B8 00043518 98 03 00 04 */ stb r0, 4(r3) /* 800478BC 0004351C 4E 80 00 20 */ blr lbl_800478C0: /* 800478C0 00043520 C0 02 83 C0 */ lfs f0, lbl_806409C0-_SDA2_BASE_(r2) /* 800478C4 00043524 38 00 00 00 */ li r0, 0 /* 800478C8 00043528 90 03 00 00 */ stw r0, 0(r3) /* 800478CC 0004352C 90 03 00 04 */ stw r0, 4(r3) /* 800478D0 00043530 90 03 00 08 */ stw r0, 8(r3) /* 800478D4 00043534 90 03 00 0C */ stw r0, 0xc(r3) /* 800478D8 00043538 90 03 00 10 */ stw r0, 0x10(r3) /* 800478DC 0004353C D0 03 00 14 */ stfs f0, 0x14(r3) /* 800478E0 00043540 4E 80 00 20 */ blr lbl_800478E4: /* 800478E4 00043544 C0 02 83 C0 */ lfs f0, lbl_806409C0-_SDA2_BASE_(r2) /* 800478E8 00043548 38 00 00 00 */ li r0, 0 /* 800478EC 0004354C 90 03 00 00 */ stw r0, 0(r3) /* 800478F0 00043550 90 03 00 2C */ stw r0, 0x2c(r3) /* 800478F4 00043554 90 03 00 30 */ stw r0, 0x30(r3) /* 800478F8 00043558 90 03 00 20 */ stw r0, 0x20(r3) /* 800478FC 0004355C D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80047900 00043560 D0 03 00 0C */ stfs f0, 0xc(r3) /* 80047904 00043564 4E 80 00 20 */ blr lbl_80047908: /* 80047908 00043568 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004790C 0004356C 7C 08 02 A6 */ mflr r0 /* 80047910 00043570 2C 03 00 00 */ cmpwi r3, 0 /* 80047914 00043574 90 01 00 14 */ stw r0, 0x14(r1) /* 80047918 00043578 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004791C 0004357C 7C 9F 23 78 */ mr r31, r4 /* 80047920 00043580 93 C1 00 08 */ stw r30, 8(r1) /* 80047924 00043584 7C 7E 1B 78 */ mr r30, r3 /* 80047928 00043588 41 82 00 18 */ beq lbl_80047940 /* 8004792C 0004358C 48 00 01 7D */ bl func_80047AA8 /* 80047930 00043590 2C 1F 00 00 */ cmpwi r31, 0 /* 80047934 00043594 40 81 00 0C */ ble lbl_80047940 /* 80047938 00043598 7F C3 F3 78 */ mr r3, r30 /* 8004793C 0004359C 48 19 31 7D */ bl func_801DAAB8 lbl_80047940: /* 80047940 000435A0 7F C3 F3 78 */ mr r3, r30 /* 80047944 000435A4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80047948 000435A8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004794C 000435AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80047950 000435B0 7C 08 03 A6 */ mtlr r0 /* 80047954 000435B4 38 21 00 10 */ addi r1, r1, 0x10 /* 80047958 000435B8 4E 80 00 20 */ blr .global func_8004795C func_8004795C: /* 8004795C 000435BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80047960 000435C0 7C 08 02 A6 */ mflr r0 /* 80047964 000435C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80047968 000435C8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004796C 000435CC 7C 9F 23 78 */ mr r31, r4 /* 80047970 000435D0 93 C1 00 08 */ stw r30, 8(r1) /* 80047974 000435D4 7C 7E 1B 78 */ mr r30, r3 /* 80047978 000435D8 48 00 01 31 */ bl func_80047AA8 /* 8004797C 000435DC 80 1E 00 00 */ lwz r0, 0(r30) /* 80047980 000435E0 93 FE 00 24 */ stw r31, 0x24(r30) /* 80047984 000435E4 60 00 00 01 */ ori r0, r0, 1 /* 80047988 000435E8 90 1E 00 00 */ stw r0, 0(r30) /* 8004798C 000435EC 80 7F 00 94 */ lwz r3, 0x94(r31) /* 80047990 000435F0 2C 03 00 00 */ cmpwi r3, 0 /* 80047994 000435F4 41 82 00 0C */ beq lbl_800479A0 /* 80047998 000435F8 80 03 00 10 */ lwz r0, 0x10(r3) /* 8004799C 000435FC 48 00 00 08 */ b lbl_800479A4 lbl_800479A0: /* 800479A0 00043600 38 00 00 00 */ li r0, 0 lbl_800479A4: /* 800479A4 00043604 90 1E 00 04 */ stw r0, 4(r30) /* 800479A8 00043608 80 7E 00 24 */ lwz r3, 0x24(r30) /* 800479AC 0004360C 80 63 00 94 */ lwz r3, 0x94(r3) /* 800479B0 00043610 2C 03 00 00 */ cmpwi r3, 0 /* 800479B4 00043614 41 82 00 0C */ beq lbl_800479C0 /* 800479B8 00043618 80 03 00 14 */ lwz r0, 0x14(r3) /* 800479BC 0004361C 48 00 00 08 */ b lbl_800479C4 lbl_800479C0: /* 800479C0 00043620 38 00 00 00 */ li r0, 0 lbl_800479C4: /* 800479C4 00043624 83 FE 00 04 */ lwz r31, 4(r30) /* 800479C8 00043628 90 1E 00 08 */ stw r0, 8(r30) /* 800479CC 0004362C 1C 7F 00 24 */ mulli r3, r31, 0x24 /* 800479D0 00043630 38 63 00 10 */ addi r3, r3, 0x10 /* 800479D4 00043634 48 19 30 A1 */ bl func_801DAA74 /* 800479D8 00043638 3C 80 80 04 */ lis r4, lbl_800478C0@ha /* 800479DC 0004363C 7F E7 FB 78 */ mr r7, r31 /* 800479E0 00043640 38 84 78 C0 */ addi r4, r4, lbl_800478C0@l /* 800479E4 00043644 38 A0 00 00 */ li r5, 0 /* 800479E8 00043648 38 C0 00 24 */ li r6, 0x24 /* 800479EC 0004364C 48 17 F2 BD */ bl __construct_new_array /* 800479F0 00043650 80 1E 00 08 */ lwz r0, 8(r30) /* 800479F4 00043654 90 7E 00 2C */ stw r3, 0x2c(r30) /* 800479F8 00043658 54 03 10 3A */ slwi r3, r0, 2 /* 800479FC 0004365C 48 19 30 79 */ bl func_801DAA74 /* 80047A00 00043660 90 7E 00 30 */ stw r3, 0x30(r30) /* 80047A04 00043664 38 C0 00 00 */ li r6, 0 /* 80047A08 00043668 38 A0 00 00 */ li r5, 0 /* 80047A0C 0004366C 38 80 00 00 */ li r4, 0 /* 80047A10 00043670 48 00 00 14 */ b lbl_80047A24 lbl_80047A14: /* 80047A14 00043674 80 7E 00 30 */ lwz r3, 0x30(r30) /* 80047A18 00043678 38 C6 00 01 */ addi r6, r6, 1 /* 80047A1C 0004367C 7C 83 29 2E */ stwx r4, r3, r5 /* 80047A20 00043680 38 A5 00 04 */ addi r5, r5, 4 lbl_80047A24: /* 80047A24 00043684 80 1E 00 08 */ lwz r0, 8(r30) /* 80047A28 00043688 7C 06 00 40 */ cmplw r6, r0 /* 80047A2C 0004368C 41 80 FF E8 */ blt lbl_80047A14 /* 80047A30 00043690 80 01 00 14 */ lwz r0, 0x14(r1) /* 80047A34 00043694 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80047A38 00043698 83 C1 00 08 */ lwz r30, 8(r1) /* 80047A3C 0004369C 7C 08 03 A6 */ mtlr r0 /* 80047A40 000436A0 38 21 00 10 */ addi r1, r1, 0x10 /* 80047A44 000436A4 4E 80 00 20 */ blr .global func_80047A48 func_80047A48: /* 80047A48 000436A8 80 03 00 08 */ lwz r0, 8(r3) /* 80047A4C 000436AC 39 00 00 00 */ li r8, 0 /* 80047A50 000436B0 38 C0 00 00 */ li r6, 0 /* 80047A54 000436B4 7C 09 03 A6 */ mtctr r0 /* 80047A58 000436B8 28 00 00 00 */ cmplwi r0, 0 /* 80047A5C 000436BC 40 81 00 44 */ ble lbl_80047AA0 lbl_80047A60: /* 80047A60 000436C0 80 E3 00 30 */ lwz r7, 0x30(r3) /* 80047A64 000436C4 7C A7 30 2E */ lwzx r5, r7, r6 /* 80047A68 000436C8 80 A5 00 14 */ lwz r5, 0x14(r5) /* 80047A6C 000436CC 2C 05 00 00 */ cmpwi r5, 0 /* 80047A70 000436D0 41 82 00 0C */ beq lbl_80047A7C /* 80047A74 000436D4 A0 05 00 08 */ lhz r0, 8(r5) /* 80047A78 000436D8 48 00 00 08 */ b lbl_80047A80 lbl_80047A7C: /* 80047A7C 000436DC 38 00 00 00 */ li r0, 0 lbl_80047A80: /* 80047A80 000436E0 7C 04 00 40 */ cmplw r4, r0 /* 80047A84 000436E4 40 82 00 10 */ bne lbl_80047A94 /* 80047A88 000436E8 55 00 10 3A */ slwi r0, r8, 2 /* 80047A8C 000436EC 7C 67 00 2E */ lwzx r3, r7, r0 /* 80047A90 000436F0 4E 80 00 20 */ blr lbl_80047A94: /* 80047A94 000436F4 38 C6 00 04 */ addi r6, r6, 4 /* 80047A98 000436F8 39 08 00 01 */ addi r8, r8, 1 /* 80047A9C 000436FC 42 00 FF C4 */ bdnz lbl_80047A60 lbl_80047AA0: /* 80047AA0 00043700 38 60 00 00 */ li r3, 0 /* 80047AA4 00043704 4E 80 00 20 */ blr .global func_80047AA8 func_80047AA8: /* 80047AA8 00043708 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80047AAC 0004370C 7C 08 02 A6 */ mflr r0 /* 80047AB0 00043710 90 01 00 24 */ stw r0, 0x24(r1) /* 80047AB4 00043714 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047AB8 00043718 93 C1 00 18 */ stw r30, 0x18(r1) /* 80047ABC 0004371C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80047AC0 00043720 7C 7D 1B 78 */ mr r29, r3 /* 80047AC4 00043724 80 03 00 00 */ lwz r0, 0(r3) /* 80047AC8 00043728 80 83 00 2C */ lwz r4, 0x2c(r3) /* 80047ACC 0004372C 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80047AD0 00043730 2C 04 00 00 */ cmpwi r4, 0 /* 80047AD4 00043734 90 03 00 00 */ stw r0, 0(r3) /* 80047AD8 00043738 41 82 00 18 */ beq lbl_80047AF0 /* 80047ADC 0004373C 41 82 00 0C */ beq lbl_80047AE8 /* 80047AE0 00043740 38 64 FF F0 */ addi r3, r4, -16 /* 80047AE4 00043744 48 19 2F D9 */ bl func_801DAABC lbl_80047AE8: /* 80047AE8 00043748 38 00 00 00 */ li r0, 0 /* 80047AEC 0004374C 90 1D 00 2C */ stw r0, 0x2c(r29) lbl_80047AF0: /* 80047AF0 00043750 80 1D 00 30 */ lwz r0, 0x30(r29) /* 80047AF4 00043754 2C 00 00 00 */ cmpwi r0, 0 /* 80047AF8 00043758 41 82 00 58 */ beq lbl_80047B50 /* 80047AFC 0004375C 3B C0 00 00 */ li r30, 0 /* 80047B00 00043760 3B E0 00 00 */ li r31, 0 /* 80047B04 00043764 48 00 00 30 */ b lbl_80047B34 lbl_80047B08: /* 80047B08 00043768 80 7D 00 30 */ lwz r3, 0x30(r29) /* 80047B0C 0004376C 7C 63 F8 2E */ lwzx r3, r3, r31 /* 80047B10 00043770 2C 03 00 00 */ cmpwi r3, 0 /* 80047B14 00043774 41 82 00 18 */ beq lbl_80047B2C /* 80047B18 00043778 81 83 00 28 */ lwz r12, 0x28(r3) /* 80047B1C 0004377C 38 80 00 01 */ li r4, 1 /* 80047B20 00043780 81 8C 00 18 */ lwz r12, 0x18(r12) /* 80047B24 00043784 7D 89 03 A6 */ mtctr r12 /* 80047B28 00043788 4E 80 04 21 */ bctrl lbl_80047B2C: /* 80047B2C 0004378C 3B FF 00 04 */ addi r31, r31, 4 /* 80047B30 00043790 3B DE 00 01 */ addi r30, r30, 1 lbl_80047B34: /* 80047B34 00043794 80 1D 00 08 */ lwz r0, 8(r29) /* 80047B38 00043798 7C 1E 00 40 */ cmplw r30, r0 /* 80047B3C 0004379C 41 80 FF CC */ blt lbl_80047B08 /* 80047B40 000437A0 80 7D 00 30 */ lwz r3, 0x30(r29) /* 80047B44 000437A4 48 19 2F 79 */ bl func_801DAABC /* 80047B48 000437A8 38 00 00 00 */ li r0, 0 /* 80047B4C 000437AC 90 1D 00 30 */ stw r0, 0x30(r29) lbl_80047B50: /* 80047B50 000437B0 38 00 00 00 */ li r0, 0 /* 80047B54 000437B4 90 1D 00 2C */ stw r0, 0x2c(r29) /* 80047B58 000437B8 90 1D 00 00 */ stw r0, 0(r29) /* 80047B5C 000437BC 90 1D 00 34 */ stw r0, 0x34(r29) /* 80047B60 000437C0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80047B64 000437C4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80047B68 000437C8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80047B6C 000437CC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80047B70 000437D0 7C 08 03 A6 */ mtlr r0 /* 80047B74 000437D4 38 21 00 20 */ addi r1, r1, 0x20 /* 80047B78 000437D8 4E 80 00 20 */ blr .global func_80047B7C func_80047B7C: /* 80047B7C 000437DC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80047B80 000437E0 7C 08 02 A6 */ mflr r0 /* 80047B84 000437E4 90 01 00 14 */ stw r0, 0x14(r1) /* 80047B88 000437E8 93 E1 00 0C */ stw r31, 0xc(r1) /* 80047B8C 000437EC 7C 9F 23 78 */ mr r31, r4 /* 80047B90 000437F0 93 C1 00 08 */ stw r30, 8(r1) /* 80047B94 000437F4 7C 7E 1B 78 */ mr r30, r3 /* 80047B98 000437F8 48 00 5C 75 */ bl func_8004D80C /* 80047B9C 000437FC 7F E4 FB 78 */ mr r4, r31 /* 80047BA0 00043800 48 00 5E E9 */ bl func_8004DA88 /* 80047BA4 00043804 2C 03 00 00 */ cmpwi r3, 0 /* 80047BA8 00043808 7C 64 1B 78 */ mr r4, r3 /* 80047BAC 0004380C 41 82 00 14 */ beq lbl_80047BC0 /* 80047BB0 00043810 7F C3 F3 78 */ mr r3, r30 /* 80047BB4 00043814 4B FF FD A9 */ bl func_8004795C /* 80047BB8 00043818 38 60 00 01 */ li r3, 1 /* 80047BBC 0004381C 48 00 00 08 */ b lbl_80047BC4 lbl_80047BC0: /* 80047BC0 00043820 38 60 00 00 */ li r3, 0 lbl_80047BC4: /* 80047BC4 00043824 80 01 00 14 */ lwz r0, 0x14(r1) /* 80047BC8 00043828 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80047BCC 0004382C 83 C1 00 08 */ lwz r30, 8(r1) /* 80047BD0 00043830 7C 08 03 A6 */ mtlr r0 /* 80047BD4 00043834 38 21 00 10 */ addi r1, r1, 0x10 /* 80047BD8 00043838 4E 80 00 20 */ blr .global func_80047BDC func_80047BDC: /* 80047BDC 0004383C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80047BE0 00043840 7C 08 02 A6 */ mflr r0 /* 80047BE4 00043844 90 01 00 24 */ stw r0, 0x24(r1) /* 80047BE8 00043848 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80047BEC 0004384C 7C BF 2B 78 */ mr r31, r5 /* 80047BF0 00043850 93 C1 00 18 */ stw r30, 0x18(r1) /* 80047BF4 00043854 7C 9E 23 78 */ mr r30, r4 /* 80047BF8 00043858 93 A1 00 14 */ stw r29, 0x14(r1) /* 80047BFC 0004385C 7C 7D 1B 78 */ mr r29, r3 /* 80047C00 00043860 48 00 5C 0D */ bl func_8004D80C /* 80047C04 00043864 7F C4 F3 78 */ mr r4, r30 /* 80047C08 00043868 7F E5 FB 78 */ mr r5, r31 /* 80047C0C 0004386C 48 00 5F DD */ bl func_8004DBE8 /* 80047C10 00043870 2C 03 00 00 */ cmpwi r3, 0 /* 80047C14 00043874 7C 64 1B 78 */ mr r4, r3 /* 80047C18 00043878 41 82 00 14 */ beq lbl_80047C2C /* 80047C1C 0004387C 7F A3 EB 78 */ mr r3, r29 /* 80047C20 00043880 4B FF FD 3D */ bl func_8004795C /* 80047C24 00043884 38 60 00 01 */ li r3, 1 /* 80047C28 00043888 48 00 00 08 */ b lbl_80047C30 lbl_80047C2C: /* 80047C2C 0004388C 38 60 00 00 */ li r3, 0 lbl_80047C30: /* 80047C30 00043890 80 01 00 24 */ lwz r0, 0x24(r1) /* 80047C34 00043894 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80047C38 00043898 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80047C3C 0004389C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80047C40 000438A0 7C 08 03 A6 */ mtlr r0 /* 80047C44 000438A4 38 21 00 20 */ addi r1, r1, 0x20 /* 80047C48 000438A8 4E 80 00 20 */ blr .global func_80047C4C func_80047C4C: /* 80047C4C 000438AC 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80047C50 000438B0 7C 08 02 A6 */ mflr r0 /* 80047C54 000438B4 90 01 00 54 */ stw r0, 0x54(r1) /* 80047C58 000438B8 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80047C5C 000438BC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80047C60 000438C0 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80047C64 000438C4 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 80047C68 000438C8 39 61 00 30 */ addi r11, r1, 0x30 /* 80047C6C 000438CC 48 17 F4 B1 */ bl _savegpr_24 /* 80047C70 000438D0 FF C0 08 90 */ fmr f30, f1 /* 80047C74 000438D4 7C 78 1B 78 */ mr r24, r3 /* 80047C78 000438D8 7C 99 23 78 */ mr r25, r4 /* 80047C7C 000438DC 7C BA 2B 78 */ mr r26, r5 /* 80047C80 000438E0 7C DB 33 78 */ mr r27, r6 /* 80047C84 000438E4 7C FC 3B 78 */ mr r28, r7 /* 80047C88 000438E8 7D 1D 43 78 */ mr r29, r8 /* 80047C8C 000438EC 3F E0 80 41 */ lis r31, 0x8041 /* 80047C90 000438F0 48 00 02 24 */ b lbl_80047EB4 lbl_80047C94: /* 80047C94 000438F4 A0 19 00 0A */ lhz r0, 0xa(r25) /* 80047C98 000438F8 28 00 00 06 */ cmplwi r0, 6 /* 80047C9C 000438FC 41 81 00 DC */ bgt lbl_80047D78 /* 80047CA0 00043900 38 7F A4 48 */ addi r3, r31, -23480 /* 80047CA4 00043904 54 00 10 3A */ slwi r0, r0, 2 /* 80047CA8 00043908 7C 63 00 2E */ lwzx r3, r3, r0 /* 80047CAC 0004390C 7C 69 03 A6 */ mtctr r3 /* 80047CB0 00043910 4E 80 04 20 */ bctr /* 80047CB4 00043914 38 60 00 2C */ li r3, 0x2c /* 80047CB8 00043918 48 19 2D 79 */ bl func_801DAA30 /* 80047CBC 0004391C 2C 03 00 00 */ cmpwi r3, 0 /* 80047CC0 00043920 41 82 00 08 */ beq lbl_80047CC8 /* 80047CC4 00043924 48 00 13 C1 */ bl func_80049084 lbl_80047CC8: /* 80047CC8 00043928 7C 7E 1B 78 */ mr r30, r3 /* 80047CCC 0004392C 48 00 00 C4 */ b lbl_80047D90 /* 80047CD0 00043930 38 60 00 3C */ li r3, 0x3c /* 80047CD4 00043934 48 19 2D 5D */ bl func_801DAA30 /* 80047CD8 00043938 2C 03 00 00 */ cmpwi r3, 0 /* 80047CDC 0004393C 41 82 00 08 */ beq lbl_80047CE4 /* 80047CE0 00043940 48 00 17 A9 */ bl func_80049488 lbl_80047CE4: /* 80047CE4 00043944 7C 7E 1B 78 */ mr r30, r3 /* 80047CE8 00043948 48 00 00 A8 */ b lbl_80047D90 /* 80047CEC 0004394C 38 60 00 30 */ li r3, 0x30 /* 80047CF0 00043950 48 19 2D 41 */ bl func_801DAA30 /* 80047CF4 00043954 2C 03 00 00 */ cmpwi r3, 0 /* 80047CF8 00043958 41 82 00 08 */ beq lbl_80047D00 /* 80047CFC 0004395C 48 00 26 D1 */ bl func_8004A3CC lbl_80047D00: /* 80047D00 00043960 7C 7E 1B 78 */ mr r30, r3 /* 80047D04 00043964 48 00 00 8C */ b lbl_80047D90 /* 80047D08 00043968 38 60 00 30 */ li r3, 0x30 /* 80047D0C 0004396C 48 19 2D 25 */ bl func_801DAA30 /* 80047D10 00043970 2C 03 00 00 */ cmpwi r3, 0 /* 80047D14 00043974 41 82 00 08 */ beq lbl_80047D1C /* 80047D18 00043978 48 00 30 A5 */ bl func_8004ADBC lbl_80047D1C: /* 80047D1C 0004397C 7C 7E 1B 78 */ mr r30, r3 /* 80047D20 00043980 48 00 00 70 */ b lbl_80047D90 /* 80047D24 00043984 38 60 00 2C */ li r3, 0x2c /* 80047D28 00043988 48 19 2D 09 */ bl func_801DAA30 /* 80047D2C 0004398C 2C 03 00 00 */ cmpwi r3, 0 /* 80047D30 00043990 41 82 00 08 */ beq lbl_80047D38 /* 80047D34 00043994 48 00 2E 5D */ bl func_8004AB90 lbl_80047D38: /* 80047D38 00043998 7C 7E 1B 78 */ mr r30, r3 /* 80047D3C 0004399C 48 00 00 54 */ b lbl_80047D90 /* 80047D40 000439A0 38 60 00 2C */ li r3, 0x2c /* 80047D44 000439A4 48 19 2C ED */ bl func_801DAA30 /* 80047D48 000439A8 2C 03 00 00 */ cmpwi r3, 0 /* 80047D4C 000439AC 41 82 00 08 */ beq lbl_80047D54 /* 80047D50 000439B0 48 00 2A 11 */ bl func_8004A760 lbl_80047D54: /* 80047D54 000439B4 7C 7E 1B 78 */ mr r30, r3 /* 80047D58 000439B8 48 00 00 38 */ b lbl_80047D90 /* 80047D5C 000439BC 38 60 00 30 */ li r3, 0x30 /* 80047D60 000439C0 48 19 2C D1 */ bl func_801DAA30 /* 80047D64 000439C4 2C 03 00 00 */ cmpwi r3, 0 /* 80047D68 000439C8 41 82 00 08 */ beq lbl_80047D70 /* 80047D6C 000439CC 48 00 2C 29 */ bl func_8004A994 lbl_80047D70: /* 80047D70 000439D0 7C 7E 1B 78 */ mr r30, r3 /* 80047D74 000439D4 48 00 00 1C */ b lbl_80047D90 lbl_80047D78: /* 80047D78 000439D8 38 60 00 2C */ li r3, 0x2c /* 80047D7C 000439DC 48 19 2C B5 */ bl func_801DAA30 /* 80047D80 000439E0 2C 03 00 00 */ cmpwi r3, 0 /* 80047D84 000439E4 41 82 00 08 */ beq lbl_80047D8C /* 80047D88 000439E8 48 00 12 FD */ bl func_80049084 lbl_80047D8C: /* 80047D8C 000439EC 7C 7E 1B 78 */ mr r30, r3 lbl_80047D90: /* 80047D90 000439F0 A0 19 00 08 */ lhz r0, 8(r25) /* 80047D94 000439F4 7F C3 F3 78 */ mr r3, r30 /* 80047D98 000439F8 80 D8 00 30 */ lwz r6, 0x30(r24) /* 80047D9C 000439FC 7F 24 CB 78 */ mr r4, r25 /* 80047DA0 00043A00 54 00 10 3A */ slwi r0, r0, 2 /* 80047DA4 00043A04 7F 05 C3 78 */ mr r5, r24 /* 80047DA8 00043A08 7F C6 01 2E */ stwx r30, r6, r0 /* 80047DAC 00043A0C 48 00 13 7D */ bl func_80049128 /* 80047DB0 00043A10 93 9E 00 20 */ stw r28, 0x20(r30) /* 80047DB4 00043A14 88 19 00 0E */ lbz r0, 0xe(r25) /* 80047DB8 00043A18 28 00 00 01 */ cmplwi r0, 1 /* 80047DBC 00043A1C 40 82 00 60 */ bne lbl_80047E1C /* 80047DC0 00043A20 81 9E 00 28 */ lwz r12, 0x28(r30) /* 80047DC4 00043A24 7F C3 F3 78 */ mr r3, r30 /* 80047DC8 00043A28 81 8C 00 24 */ lwz r12, 0x24(r12) /* 80047DCC 00043A2C 7D 89 03 A6 */ mtctr r12 /* 80047DD0 00043A30 4E 80 04 21 */ bctrl /* 80047DD4 00043A34 C0 19 00 10 */ lfs f0, 0x10(r25) /* 80047DD8 00043A38 88 19 00 0F */ lbz r0, 0xf(r25) /* 80047DDC 00043A3C EC 20 00 72 */ fmuls f1, f0, f1 /* 80047DE0 00043A40 C0 19 00 14 */ lfs f0, 0x14(r25) /* 80047DE4 00043A44 2C 00 00 02 */ cmpwi r0, 2 /* 80047DE8 00043A48 EF FE 08 2A */ fadds f31, f30, f1 /* 80047DEC 00043A4C EF FF 00 2A */ fadds f31, f31, f0 /* 80047DF0 00043A50 41 82 00 84 */ beq lbl_80047E74 /* 80047DF4 00043A54 40 80 00 80 */ bge lbl_80047E74 /* 80047DF8 00043A58 2C 00 00 01 */ cmpwi r0, 1 /* 80047DFC 00043A5C 40 80 00 08 */ bge lbl_80047E04 /* 80047E00 00043A60 48 00 00 74 */ b lbl_80047E74 lbl_80047E04: /* 80047E04 00043A64 88 9A 00 05 */ lbz r4, 5(r26) /* 80047E08 00043A68 7F 63 DB 78 */ mr r3, r27 /* 80047E0C 00043A6C 80 B9 00 18 */ lwz r5, 0x18(r25) /* 80047E10 00043A70 4B FF 20 71 */ bl func_80039E80 /* 80047E14 00043A74 EF FF 08 2A */ fadds f31, f31, f1 /* 80047E18 00043A78 48 00 00 5C */ b lbl_80047E74 lbl_80047E1C: /* 80047E1C 00043A7C 81 9E 00 28 */ lwz r12, 0x28(r30) /* 80047E20 00043A80 7F C3 F3 78 */ mr r3, r30 /* 80047E24 00043A84 81 8C 00 24 */ lwz r12, 0x24(r12) /* 80047E28 00043A88 7D 89 03 A6 */ mtctr r12 /* 80047E2C 00043A8C 4E 80 04 21 */ bctrl /* 80047E30 00043A90 C0 19 00 10 */ lfs f0, 0x10(r25) /* 80047E34 00043A94 88 19 00 0F */ lbz r0, 0xf(r25) /* 80047E38 00043A98 EC 20 00 72 */ fmuls f1, f0, f1 /* 80047E3C 00043A9C C0 19 00 14 */ lfs f0, 0x14(r25) /* 80047E40 00043AA0 2C 00 00 02 */ cmpwi r0, 2 /* 80047E44 00043AA4 EF FE 08 2A */ fadds f31, f30, f1 /* 80047E48 00043AA8 EF FF 00 28 */ fsubs f31, f31, f0 /* 80047E4C 00043AAC 41 82 00 28 */ beq lbl_80047E74 /* 80047E50 00043AB0 40 80 00 24 */ bge lbl_80047E74 /* 80047E54 00043AB4 2C 00 00 01 */ cmpwi r0, 1 /* 80047E58 00043AB8 40 80 00 08 */ bge lbl_80047E60 /* 80047E5C 00043ABC 48 00 00 18 */ b lbl_80047E74 lbl_80047E60: /* 80047E60 00043AC0 88 9A 00 05 */ lbz r4, 5(r26) /* 80047E64 00043AC4 7F 63 DB 78 */ mr r3, r27 /* 80047E68 00043AC8 80 B9 00 18 */ lwz r5, 0x18(r25) /* 80047E6C 00043ACC 4B FF 20 15 */ bl func_80039E80 /* 80047E70 00043AD0 EF FF 08 2A */ fadds f31, f31, f1 lbl_80047E74: /* 80047E74 00043AD4 D3 FE 00 0C */ stfs f31, 0xc(r30) /* 80047E78 00043AD8 C0 1D 00 00 */ lfs f0, 0(r29) /* 80047E7C 00043ADC FC 00 F8 40 */ fcmpo cr0, f0, f31 /* 80047E80 00043AE0 40 81 00 08 */ ble lbl_80047E88 /* 80047E84 00043AE4 D3 FD 00 00 */ stfs f31, 0(r29) lbl_80047E88: /* 80047E88 00043AE8 80 99 00 28 */ lwz r4, 0x28(r25) /* 80047E8C 00043AEC 2C 04 00 00 */ cmpwi r4, 0 /* 80047E90 00043AF0 41 82 00 20 */ beq lbl_80047EB0 /* 80047E94 00043AF4 FC 20 F8 90 */ fmr f1, f31 /* 80047E98 00043AF8 7F 03 C3 78 */ mr r3, r24 /* 80047E9C 00043AFC 7F 45 D3 78 */ mr r5, r26 /* 80047EA0 00043B00 7F 66 DB 78 */ mr r6, r27 /* 80047EA4 00043B04 7F 87 E3 78 */ mr r7, r28 /* 80047EA8 00043B08 7F A8 EB 78 */ mr r8, r29 /* 80047EAC 00043B0C 4B FF FD A1 */ bl func_80047C4C lbl_80047EB0: /* 80047EB0 00043B10 83 39 00 20 */ lwz r25, 0x20(r25) lbl_80047EB4: /* 80047EB4 00043B14 2C 19 00 00 */ cmpwi r25, 0 /* 80047EB8 00043B18 40 82 FD DC */ bne lbl_80047C94 /* 80047EBC 00043B1C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80047EC0 00043B20 CB E1 00 40 */ lfd f31, 0x40(r1) /* 80047EC4 00043B24 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80047EC8 00043B28 39 61 00 30 */ addi r11, r1, 0x30 /* 80047ECC 00043B2C CB C1 00 30 */ lfd f30, 0x30(r1) /* 80047ED0 00043B30 48 17 F2 99 */ bl _restgpr_24 /* 80047ED4 00043B34 80 01 00 54 */ lwz r0, 0x54(r1) /* 80047ED8 00043B38 7C 08 03 A6 */ mtlr r0 /* 80047EDC 00043B3C 38 21 00 50 */ addi r1, r1, 0x50 /* 80047EE0 00043B40 4E 80 00 20 */ blr .global func_80047EE4 func_80047EE4: /* 80047EE4 00043B44 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80047EE8 00043B48 7C 08 02 A6 */ mflr r0 /* 80047EEC 00043B4C 90 01 00 74 */ stw r0, 0x74(r1) /* 80047EF0 00043B50 DB E1 00 60 */ stfd f31, 0x60(r1) /* 80047EF4 00043B54 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 80047EF8 00043B58 DB C1 00 50 */ stfd f30, 0x50(r1) /* 80047EFC 00043B5C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 80047F00 00043B60 DB A1 00 40 */ stfd f29, 0x40(r1) /* 80047F04 00043B64 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 80047F08 00043B68 39 61 00 40 */ addi r11, r1, 0x40 /* 80047F0C 00043B6C 48 17 F2 09 */ bl _savegpr_22 /* 80047F10 00043B70 C3 A2 83 C0 */ lfs f29, lbl_806409C0-_SDA2_BASE_(r2) /* 80047F14 00043B74 7C 78 1B 78 */ mr r24, r3 /* 80047F18 00043B78 80 63 00 24 */ lwz r3, 0x24(r3) /* 80047F1C 00043B7C 7C 99 23 78 */ mr r25, r4 /* 80047F20 00043B80 FF E0 E8 90 */ fmr f31, f29 /* 80047F24 00043B84 C3 C2 83 C4 */ lfs f30, lbl_806409C4-_SDA2_BASE_(r2) /* 80047F28 00043B88 83 63 00 98 */ lwz r27, 0x98(r3) /* 80047F2C 00043B8C 3B C0 00 00 */ li r30, 0 /* 80047F30 00043B90 3B A0 00 00 */ li r29, 0 /* 80047F34 00043B94 3B 80 00 00 */ li r28, 0 /* 80047F38 00043B98 3B E0 00 00 */ li r31, 0 /* 80047F3C 00043B9C 3A E0 00 00 */ li r23, 0 /* 80047F40 00043BA0 3A C0 00 0A */ li r22, 0xa /* 80047F44 00043BA4 48 00 01 64 */ b lbl_800480A8 lbl_80047F48: /* 80047F48 00043BA8 80 18 00 2C */ lwz r0, 0x2c(r24) /* 80047F4C 00043BAC 2C 1E 00 00 */ cmpwi r30, 0 /* 80047F50 00043BB0 7F 40 FA 14 */ add r26, r0, r31 /* 80047F54 00043BB4 41 82 00 14 */ beq lbl_80047F68 /* 80047F58 00043BB8 80 1A 00 10 */ lwz r0, 0x10(r26) /* 80047F5C 00043BBC 3B C0 00 00 */ li r30, 0 /* 80047F60 00043BC0 60 00 00 01 */ ori r0, r0, 1 /* 80047F64 00043BC4 90 1A 00 10 */ stw r0, 0x10(r26) lbl_80047F68: /* 80047F68 00043BC8 2C 1D 00 00 */ cmpwi r29, 0 /* 80047F6C 00043BCC 41 82 00 10 */ beq lbl_80047F7C /* 80047F70 00043BD0 80 1A 00 10 */ lwz r0, 0x10(r26) /* 80047F74 00043BD4 60 00 00 04 */ ori r0, r0, 4 /* 80047F78 00043BD8 90 1A 00 10 */ stw r0, 0x10(r26) lbl_80047F7C: /* 80047F7C 00043BDC 93 9A 00 0C */ stw r28, 0xc(r26) /* 80047F80 00043BE0 80 1B 00 08 */ lwz r0, 8(r27) /* 80047F84 00043BE4 2C 00 00 00 */ cmpwi r0, 0 /* 80047F88 00043BE8 41 82 00 0C */ beq lbl_80047F94 /* 80047F8C 00043BEC 38 1A FF DC */ addi r0, r26, -36 /* 80047F90 00043BF0 90 1A 00 04 */ stw r0, 4(r26) lbl_80047F94: /* 80047F94 00043BF4 80 1B 00 0C */ lwz r0, 0xc(r27) /* 80047F98 00043BF8 2C 00 00 00 */ cmpwi r0, 0 /* 80047F9C 00043BFC 41 82 00 0C */ beq lbl_80047FA8 /* 80047FA0 00043C00 38 1A 00 24 */ addi r0, r26, 0x24 /* 80047FA4 00043C04 90 1A 00 08 */ stw r0, 8(r26) lbl_80047FA8: /* 80047FA8 00043C08 93 7A 00 00 */ stw r27, 0(r26) /* 80047FAC 00043C0C 80 1B 00 10 */ lwz r0, 0x10(r27) /* 80047FB0 00043C10 2C 00 00 00 */ cmpwi r0, 0 /* 80047FB4 00043C14 41 82 00 30 */ beq lbl_80047FE4 /* 80047FB8 00043C18 D3 C1 00 08 */ stfs f30, 8(r1) /* 80047FBC 00043C1C FC 20 E8 90 */ fmr f1, f29 /* 80047FC0 00043C20 7F 03 C3 78 */ mr r3, r24 /* 80047FC4 00043C24 7F 65 DB 78 */ mr r5, r27 /* 80047FC8 00043C28 80 9B 00 10 */ lwz r4, 0x10(r27) /* 80047FCC 00043C2C 7F 26 CB 78 */ mr r6, r25 /* 80047FD0 00043C30 7F 87 E3 78 */ mr r7, r28 /* 80047FD4 00043C34 39 01 00 08 */ addi r8, r1, 8 /* 80047FD8 00043C38 4B FF FC 75 */ bl func_80047C4C /* 80047FDC 00043C3C C0 01 00 08 */ lfs f0, 8(r1) /* 80047FE0 00043C40 D0 1A 00 18 */ stfs f0, 0x18(r26) lbl_80047FE4: /* 80047FE4 00043C44 D3 BB 00 18 */ stfs f29, 0x18(r27) /* 80047FE8 00043C48 D3 BA 00 14 */ stfs f29, 0x14(r26) /* 80047FEC 00043C4C D3 FA 00 1C */ stfs f31, 0x1c(r26) /* 80047FF0 00043C50 D3 FA 00 20 */ stfs f31, 0x20(r26) /* 80047FF4 00043C54 88 7B 00 05 */ lbz r3, 5(r27) /* 80047FF8 00043C58 38 03 00 EF */ addi r0, r3, 0xef /* 80047FFC 00043C5C 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 80048000 00043C60 28 00 00 01 */ cmplwi r0, 1 /* 80048004 00043C64 41 81 00 20 */ bgt lbl_80048024 /* 80048008 00043C68 80 1A 00 10 */ lwz r0, 0x10(r26) /* 8004800C 00043C6C FF A0 F8 90 */ fmr f29, f31 /* 80048010 00043C70 3B C0 00 01 */ li r30, 1 /* 80048014 00043C74 3B A0 00 01 */ li r29, 1 /* 80048018 00043C78 60 00 00 02 */ ori r0, r0, 2 /* 8004801C 00043C7C 90 1A 00 10 */ stw r0, 0x10(r26) /* 80048020 00043C80 48 00 00 7C */ b lbl_8004809C lbl_80048024: /* 80048024 00043C84 2C 19 00 00 */ cmpwi r25, 0 /* 80048028 00043C88 41 82 00 74 */ beq lbl_8004809C /* 8004802C 00043C8C 2C 03 00 00 */ cmpwi r3, 0 /* 80048030 00043C90 40 82 00 34 */ bne lbl_80048064 /* 80048034 00043C94 A0 19 05 0C */ lhz r0, 0x50c(r25) /* 80048038 00043C98 28 00 00 01 */ cmplwi r0, 1 /* 8004803C 00043C9C 40 82 00 28 */ bne lbl_80048064 /* 80048040 00043CA0 80 19 00 00 */ lwz r0, 0(r25) /* 80048044 00043CA4 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 /* 80048048 00043CA8 41 82 00 40 */ beq lbl_80048088 /* 8004804C 00043CAC 7F 23 CB 78 */ mr r3, r25 /* 80048050 00043CB0 4B FF 5F 71 */ bl func_8003DFC0 /* 80048054 00043CB4 2C 03 00 00 */ cmpwi r3, 0 /* 80048058 00043CB8 41 82 00 30 */ beq lbl_80048088 /* 8004805C 00043CBC 9A DB 00 05 */ stb r22, 5(r27) /* 80048060 00043CC0 48 00 00 28 */ b lbl_80048088 lbl_80048064: /* 80048064 00043CC4 28 03 00 0A */ cmplwi r3, 0xa /* 80048068 00043CC8 40 82 00 20 */ bne lbl_80048088 /* 8004806C 00043CCC A0 19 05 0C */ lhz r0, 0x50c(r25) /* 80048070 00043CD0 28 00 00 01 */ cmplwi r0, 1 /* 80048074 00043CD4 40 82 00 14 */ bne lbl_80048088 /* 80048078 00043CD8 80 19 00 00 */ lwz r0, 0(r25) /* 8004807C 00043CDC 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13 /* 80048080 00043CE0 40 82 00 08 */ bne lbl_80048088 /* 80048084 00043CE4 9A FB 00 05 */ stb r23, 5(r27) lbl_80048088: /* 80048088 00043CE8 88 9B 00 05 */ lbz r4, 5(r27) /* 8004808C 00043CEC 7F 23 CB 78 */ mr r3, r25 /* 80048090 00043CF0 38 A0 FF FF */ li r5, -1 /* 80048094 00043CF4 4B FF 1D ED */ bl func_80039E80 /* 80048098 00043CF8 EF BD 08 2A */ fadds f29, f29, f1 lbl_8004809C: /* 8004809C 00043CFC 83 7B 00 0C */ lwz r27, 0xc(r27) /* 800480A0 00043D00 3B FF 00 24 */ addi r31, r31, 0x24 /* 800480A4 00043D04 3B 9C 00 01 */ addi r28, r28, 1 lbl_800480A8: /* 800480A8 00043D08 2C 1B 00 00 */ cmpwi r27, 0 /* 800480AC 00043D0C 40 82 FE 9C */ bne lbl_80047F48 /* 800480B0 00043D10 3A E0 00 00 */ li r23, 0 /* 800480B4 00043D14 3A C0 00 00 */ li r22, 0 /* 800480B8 00043D18 48 00 00 2C */ b lbl_800480E4 lbl_800480BC: /* 800480BC 00043D1C 80 78 00 30 */ lwz r3, 0x30(r24) /* 800480C0 00043D20 7C 63 B0 2E */ lwzx r3, r3, r22 /* 800480C4 00043D24 2C 03 00 00 */ cmpwi r3, 0 /* 800480C8 00043D28 41 82 00 14 */ beq lbl_800480DC /* 800480CC 00043D2C 81 83 00 28 */ lwz r12, 0x28(r3) /* 800480D0 00043D30 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800480D4 00043D34 7D 89 03 A6 */ mtctr r12 /* 800480D8 00043D38 4E 80 04 21 */ bctrl lbl_800480DC: /* 800480DC 00043D3C 3A D6 00 04 */ addi r22, r22, 4 /* 800480E0 00043D40 3A F7 00 01 */ addi r23, r23, 1 lbl_800480E4: /* 800480E4 00043D44 80 18 00 08 */ lwz r0, 8(r24) /* 800480E8 00043D48 7C 17 00 40 */ cmplw r23, r0 /* 800480EC 00043D4C 41 80 FF D0 */ blt lbl_800480BC /* 800480F0 00043D50 C0 02 83 C8 */ lfs f0, lbl_806409C8-_SDA2_BASE_(r2) /* 800480F4 00043D54 38 C0 00 00 */ li r6, 0 /* 800480F8 00043D58 38 A0 00 00 */ li r5, 0 /* 800480FC 00043D5C D0 18 00 10 */ stfs f0, 0x10(r24) /* 80048100 00043D60 48 00 00 44 */ b lbl_80048144 lbl_80048104: /* 80048104 00043D64 80 98 00 30 */ lwz r4, 0x30(r24) /* 80048108 00043D68 80 78 00 2C */ lwz r3, 0x2c(r24) /* 8004810C 00043D6C 7C 84 28 2E */ lwzx r4, r4, r5 /* 80048110 00043D70 80 04 00 20 */ lwz r0, 0x20(r4) /* 80048114 00043D74 1C 00 00 24 */ mulli r0, r0, 0x24 /* 80048118 00043D78 7C 63 02 14 */ add r3, r3, r0 /* 8004811C 00043D7C 80 03 00 10 */ lwz r0, 0x10(r3) /* 80048120 00043D80 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80048124 00043D84 40 82 00 18 */ bne lbl_8004813C /* 80048128 00043D88 C0 24 00 0C */ lfs f1, 0xc(r4) /* 8004812C 00043D8C C0 18 00 10 */ lfs f0, 0x10(r24) /* 80048130 00043D90 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80048134 00043D94 40 81 00 08 */ ble lbl_8004813C /* 80048138 00043D98 D0 38 00 10 */ stfs f1, 0x10(r24) lbl_8004813C: /* 8004813C 00043D9C 38 A5 00 04 */ addi r5, r5, 4 /* 80048140 00043DA0 38 C6 00 01 */ addi r6, r6, 1 lbl_80048144: /* 80048144 00043DA4 80 78 00 24 */ lwz r3, 0x24(r24) /* 80048148 00043DA8 80 63 00 94 */ lwz r3, 0x94(r3) /* 8004814C 00043DAC 2C 03 00 00 */ cmpwi r3, 0 /* 80048150 00043DB0 40 82 00 0C */ bne lbl_8004815C /* 80048154 00043DB4 38 00 00 00 */ li r0, 0 /* 80048158 00043DB8 48 00 00 08 */ b lbl_80048160 lbl_8004815C: /* 8004815C 00043DBC 80 03 00 14 */ lwz r0, 0x14(r3) lbl_80048160: /* 80048160 00043DC0 7C 06 00 40 */ cmplw r6, r0 /* 80048164 00043DC4 41 80 FF A0 */ blt lbl_80048104 /* 80048168 00043DC8 93 38 00 34 */ stw r25, 0x34(r24) /* 8004816C 00043DCC E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 80048170 00043DD0 CB E1 00 60 */ lfd f31, 0x60(r1) /* 80048174 00043DD4 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 80048178 00043DD8 CB C1 00 50 */ lfd f30, 0x50(r1) /* 8004817C 00043DDC E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 80048180 00043DE0 CB A1 00 40 */ lfd f29, 0x40(r1) /* 80048184 00043DE4 39 61 00 40 */ addi r11, r1, 0x40 /* 80048188 00043DE8 48 17 EF D9 */ bl _restgpr_22 /* 8004818C 00043DEC 80 01 00 74 */ lwz r0, 0x74(r1) /* 80048190 00043DF0 7C 08 03 A6 */ mtlr r0 /* 80048194 00043DF4 38 21 00 70 */ addi r1, r1, 0x70 /* 80048198 00043DF8 4E 80 00 20 */ blr /* 8004819C 00043DFC 4E 80 00 20 */ blr .global func_800481A0 func_800481A0: /* 800481A0 00043E00 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800481A4 00043E04 7C 08 02 A6 */ mflr r0 /* 800481A8 00043E08 90 01 00 14 */ stw r0, 0x14(r1) /* 800481AC 00043E0C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800481B0 00043E10 7C 7F 1B 78 */ mr r31, r3 /* 800481B4 00043E14 4B FE AE D5 */ bl func_80033088 /* 800481B8 00043E18 80 1F 00 20 */ lwz r0, 0x20(r31) /* 800481BC 00043E1C 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 800481C0 00043E20 4B FE B9 BD */ bl func_80033B7C /* 800481C4 00043E24 2C 03 00 00 */ cmpwi r3, 0 /* 800481C8 00043E28 40 82 00 0C */ bne lbl_800481D4 /* 800481CC 00043E2C 38 60 00 00 */ li r3, 0 /* 800481D0 00043E30 48 00 00 08 */ b lbl_800481D8 lbl_800481D4: /* 800481D4 00043E34 4B FE D7 9D */ bl func_80035970 lbl_800481D8: /* 800481D8 00043E38 80 01 00 14 */ lwz r0, 0x14(r1) /* 800481DC 00043E3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800481E0 00043E40 7C 08 03 A6 */ mtlr r0 /* 800481E4 00043E44 38 21 00 10 */ addi r1, r1, 0x10 /* 800481E8 00043E48 4E 80 00 20 */ blr .global func_800481EC func_800481EC: /* 800481EC 00043E4C C0 23 00 10 */ lfs f1, 0x10(r3) /* 800481F0 00043E50 C0 02 83 C0 */ lfs f0, lbl_806409C0-_SDA2_BASE_(r2) /* 800481F4 00043E54 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800481F8 00043E58 40 80 00 08 */ bge lbl_80048200 /* 800481FC 00043E5C 48 00 00 0C */ b func_80048208 lbl_80048200: /* 80048200 00043E60 FC 20 00 90 */ fmr f1, f0 /* 80048204 00043E64 48 00 00 04 */ b func_80048208 .global func_80048208 func_80048208: /* 80048208 00043E68 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004820C 00043E6C 7C 08 02 A6 */ mflr r0 /* 80048210 00043E70 C0 02 83 C0 */ lfs f0, lbl_806409C0-_SDA2_BASE_(r2) /* 80048214 00043E74 90 01 00 14 */ stw r0, 0x14(r1) /* 80048218 00043E78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004821C 00043E7C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048220 00043E80 7C 7F 1B 78 */ mr r31, r3 /* 80048224 00043E84 80 03 00 00 */ lwz r0, 0(r3) /* 80048228 00043E88 80 83 00 2C */ lwz r4, 0x2c(r3) /* 8004822C 00043E8C 60 00 00 02 */ ori r0, r0, 2 /* 80048230 00043E90 D0 23 00 0C */ stfs f1, 0xc(r3) /* 80048234 00043E94 54 00 07 B6 */ rlwinm r0, r0, 0, 0x1e, 0x1b /* 80048238 00043E98 90 03 00 00 */ stw r0, 0(r3) /* 8004823C 00043E9C 90 83 00 28 */ stw r4, 0x28(r3) /* 80048240 00043EA0 40 81 00 08 */ ble lbl_80048248 /* 80048244 00043EA4 D0 24 00 20 */ stfs f1, 0x20(r4) lbl_80048248: /* 80048248 00043EA8 80 83 00 34 */ lwz r4, 0x34(r3) /* 8004824C 00043EAC 2C 04 00 00 */ cmpwi r4, 0 /* 80048250 00043EB0 41 82 00 10 */ beq lbl_80048260 /* 80048254 00043EB4 C0 04 0D 80 */ lfs f0, 0xd80(r4) /* 80048258 00043EB8 80 83 00 28 */ lwz r4, 0x28(r3) /* 8004825C 00043EBC D0 04 00 1C */ stfs f0, 0x1c(r4) lbl_80048260: /* 80048260 00043EC0 C0 02 83 C0 */ lfs f0, lbl_806409C0-_SDA2_BASE_(r2) /* 80048264 00043EC4 D0 03 00 14 */ stfs f0, 0x14(r3) /* 80048268 00043EC8 D0 03 00 18 */ stfs f0, 0x18(r3) /* 8004826C 00043ECC 80 63 00 24 */ lwz r3, 0x24(r3) /* 80048270 00043ED0 48 00 0D E9 */ bl cGame_GetGameTime /* 80048274 00043ED4 D0 3F 00 1C */ stfs f1, 0x1c(r31) /* 80048278 00043ED8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004827C 00043EDC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048280 00043EE0 7C 08 03 A6 */ mtlr r0 /* 80048284 00043EE4 38 21 00 10 */ addi r1, r1, 0x10 /* 80048288 00043EE8 4E 80 00 20 */ blr .global func_8004828C func_8004828C: /* 8004828C 00043EEC 2C 04 00 00 */ cmpwi r4, 0 /* 80048290 00043EF0 41 82 00 08 */ beq lbl_80048298 /* 80048294 00043EF4 48 00 00 10 */ b lbl_800482A4 lbl_80048298: /* 80048298 00043EF8 80 03 00 00 */ lwz r0, 0(r3) /* 8004829C 00043EFC 54 03 FF FE */ rlwinm r3, r0, 0x1f, 0x1f, 0x1f /* 800482A0 00043F00 4E 80 00 20 */ blr lbl_800482A4: /* 800482A4 00043F04 38 60 00 00 */ li r3, 0 /* 800482A8 00043F08 4E 80 00 20 */ blr .global func_800482AC func_800482AC: /* 800482AC 00043F0C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800482B0 00043F10 7C 08 02 A6 */ mflr r0 /* 800482B4 00043F14 90 01 00 24 */ stw r0, 0x24(r1) /* 800482B8 00043F18 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800482BC 00043F1C 93 C1 00 18 */ stw r30, 0x18(r1) /* 800482C0 00043F20 93 A1 00 14 */ stw r29, 0x14(r1) /* 800482C4 00043F24 7C 7D 1B 78 */ mr r29, r3 /* 800482C8 00043F28 80 03 00 00 */ lwz r0, 0(r3) /* 800482CC 00043F2C 2C 00 00 00 */ cmpwi r0, 0 /* 800482D0 00043F30 41 82 00 64 */ beq lbl_80048334 /* 800482D4 00043F34 3B C0 00 00 */ li r30, 0 /* 800482D8 00043F38 3B E0 00 00 */ li r31, 0 /* 800482DC 00043F3C 48 00 00 20 */ b lbl_800482FC lbl_800482E0: /* 800482E0 00043F40 80 7D 00 30 */ lwz r3, 0x30(r29) /* 800482E4 00043F44 7C 63 F8 2E */ lwzx r3, r3, r31 /* 800482E8 00043F48 2C 03 00 00 */ cmpwi r3, 0 /* 800482EC 00043F4C 41 82 00 08 */ beq lbl_800482F4 /* 800482F0 00043F50 48 00 0F 91 */ bl func_80049280 lbl_800482F4: /* 800482F4 00043F54 3B FF 00 04 */ addi r31, r31, 4 /* 800482F8 00043F58 3B DE 00 01 */ addi r30, r30, 1 lbl_800482FC: /* 800482FC 00043F5C 80 7D 00 24 */ lwz r3, 0x24(r29) /* 80048300 00043F60 80 63 00 94 */ lwz r3, 0x94(r3) /* 80048304 00043F64 2C 03 00 00 */ cmpwi r3, 0 /* 80048308 00043F68 40 82 00 0C */ bne lbl_80048314 /* 8004830C 00043F6C 38 00 00 00 */ li r0, 0 /* 80048310 00043F70 48 00 00 08 */ b lbl_80048318 lbl_80048314: /* 80048314 00043F74 80 03 00 14 */ lwz r0, 0x14(r3) lbl_80048318: /* 80048318 00043F78 7C 1E 00 40 */ cmplw r30, r0 /* 8004831C 00043F7C 41 80 FF C4 */ blt lbl_800482E0 /* 80048320 00043F80 80 1D 00 00 */ lwz r0, 0(r29) /* 80048324 00043F84 C0 02 83 C0 */ lfs f0, lbl_806409C0-_SDA2_BASE_(r2) /* 80048328 00043F88 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 8004832C 00043F8C 90 1D 00 00 */ stw r0, 0(r29) /* 80048330 00043F90 D0 1D 00 14 */ stfs f0, 0x14(r29) lbl_80048334: /* 80048334 00043F94 80 01 00 24 */ lwz r0, 0x24(r1) /* 80048338 00043F98 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004833C 00043F9C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80048340 00043FA0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80048344 00043FA4 7C 08 03 A6 */ mtlr r0 /* 80048348 00043FA8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004834C 00043FAC 4E 80 00 20 */ blr .global func_80048350 func_80048350: /* 80048350 00043FB0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80048354 00043FB4 7C 08 02 A6 */ mflr r0 /* 80048358 00043FB8 90 01 00 54 */ stw r0, 0x54(r1) /* 8004835C 00043FBC DB E1 00 40 */ stfd f31, 0x40(r1) /* 80048360 00043FC0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80048364 00043FC4 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80048368 00043FC8 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 8004836C 00043FCC DB A1 00 20 */ stfd f29, 0x20(r1) /* 80048370 00043FD0 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 80048374 00043FD4 39 61 00 20 */ addi r11, r1, 0x20 /* 80048378 00043FD8 48 17 ED B1 */ bl _savegpr_27 /* 8004837C 00043FDC 80 03 00 00 */ lwz r0, 0(r3) /* 80048380 00043FE0 FF E0 08 90 */ fmr f31, f1 /* 80048384 00043FE4 7C 7E 1B 78 */ mr r30, r3 /* 80048388 00043FE8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8004838C 00043FEC 41 82 03 4C */ beq lbl_800486D8 /* 80048390 00043FF0 80 83 00 34 */ lwz r4, 0x34(r3) /* 80048394 00043FF4 2C 04 00 00 */ cmpwi r4, 0 /* 80048398 00043FF8 41 82 00 10 */ beq lbl_800483A8 /* 8004839C 00043FFC 80 04 0C 04 */ lwz r0, 0xc04(r4) /* 800483A0 00044000 2C 00 00 00 */ cmpwi r0, 0 /* 800483A4 00044004 41 82 03 34 */ beq lbl_800486D8 lbl_800483A8: /* 800483A8 00044008 C0 03 00 1C */ lfs f0, 0x1c(r3) /* 800483AC 0004400C C0 42 83 C0 */ lfs f2, lbl_806409C0-_SDA2_BASE_(r2) /* 800483B0 00044010 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 800483B4 00044014 40 81 00 48 */ ble lbl_800483FC /* 800483B8 00044018 EC 00 08 28 */ fsubs f0, f0, f1 /* 800483BC 0004401C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 800483C0 00044020 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 800483C4 00044024 4C 40 13 82 */ cror 2, 0, 2 /* 800483C8 00044028 40 82 00 34 */ bne lbl_800483FC /* 800483CC 0004402C 7F C3 F3 78 */ mr r3, r30 /* 800483D0 00044030 4B FF FE DD */ bl func_800482AC /* 800483D4 00044034 80 1E 00 00 */ lwz r0, 0(r30) /* 800483D8 00044038 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 800483DC 0004403C 41 82 02 FC */ beq lbl_800486D8 /* 800483E0 00044040 48 00 54 2D */ bl func_8004D80C /* 800483E4 00044044 2C 03 00 00 */ cmpwi r3, 0 /* 800483E8 00044048 41 82 02 F0 */ beq lbl_800486D8 /* 800483EC 0004404C 7F C4 F3 78 */ mr r4, r30 /* 800483F0 00044050 48 00 59 DD */ bl func_8004DDCC /* 800483F4 00044054 48 00 02 E4 */ b lbl_800486D8 /* 800483F8 00044058 48 00 02 E0 */ b lbl_800486D8 lbl_800483FC: /* 800483FC 0004405C C0 43 00 0C */ lfs f2, 0xc(r3) /* 80048400 00044060 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80048404 00044064 EC 62 08 2A */ fadds f3, f2, f1 /* 80048408 00044068 C0 42 83 C0 */ lfs f2, lbl_806409C0-_SDA2_BASE_(r2) /* 8004840C 0004406C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80048410 00044070 D0 63 00 0C */ stfs f3, 0xc(r3) /* 80048414 00044074 40 81 00 24 */ ble lbl_80048438 /* 80048418 00044078 EC 00 08 28 */ fsubs f0, f0, f1 /* 8004841C 0004407C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80048420 00044080 D0 03 00 18 */ stfs f0, 0x18(r3) /* 80048424 00044084 4C 40 13 82 */ cror 2, 0, 2 /* 80048428 00044088 40 82 00 10 */ bne lbl_80048438 /* 8004842C 0004408C 80 03 00 00 */ lwz r0, 0(r3) /* 80048430 00044090 60 00 00 08 */ ori r0, r0, 8 /* 80048434 00044094 90 03 00 00 */ stw r0, 0(r3) lbl_80048438: /* 80048438 00044098 80 83 00 34 */ lwz r4, 0x34(r3) /* 8004843C 0004409C 2C 04 00 00 */ cmpwi r4, 0 /* 80048440 000440A0 41 82 00 0C */ beq lbl_8004844C /* 80048444 000440A4 C3 A4 0D 80 */ lfs f29, 0xd80(r4) /* 80048448 000440A8 48 00 00 08 */ b lbl_80048450 lbl_8004844C: /* 8004844C 000440AC C3 A2 83 C0 */ lfs f29, lbl_806409C0-_SDA2_BASE_(r2) lbl_80048450: /* 80048450 000440B0 2C 04 00 00 */ cmpwi r4, 0 /* 80048454 000440B4 41 82 01 58 */ beq lbl_800485AC /* 80048458 000440B8 80 A3 00 00 */ lwz r5, 0(r3) /* 8004845C 000440BC 54 A0 03 DF */ rlwinm. r0, r5, 0, 0xf, 0xf /* 80048460 000440C0 40 82 01 4C */ bne lbl_800485AC /* 80048464 000440C4 80 C3 00 28 */ lwz r6, 0x28(r3) /* 80048468 000440C8 2C 06 00 00 */ cmpwi r6, 0 /* 8004846C 000440CC 41 82 01 40 */ beq lbl_800485AC /* 80048470 000440D0 C0 46 00 14 */ lfs f2, 0x14(r6) /* 80048474 000440D4 C0 03 00 14 */ lfs f0, 0x14(r3) /* 80048478 000440D8 C0 23 00 0C */ lfs f1, 0xc(r3) /* 8004847C 000440DC EC 00 10 2A */ fadds f0, f0, f2 /* 80048480 000440E0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80048484 000440E4 4C 41 13 82 */ cror 2, 1, 2 /* 80048488 000440E8 40 82 01 24 */ bne lbl_800485AC /* 8004848C 000440EC 80 06 00 10 */ lwz r0, 0x10(r6) /* 80048490 000440F0 3B E0 00 01 */ li r31, 1 /* 80048494 000440F4 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 80048498 000440F8 41 82 00 A8 */ beq lbl_80048540 /* 8004849C 000440FC 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c /* 800484A0 00044100 41 82 00 9C */ beq lbl_8004853C /* 800484A4 00044104 80 66 00 00 */ lwz r3, 0(r6) /* 800484A8 00044108 3B 80 00 00 */ li r28, 0 /* 800484AC 0004410C 80 A3 00 00 */ lwz r5, 0(r3) /* 800484B0 00044110 8B A3 00 05 */ lbz r29, 5(r3) /* 800484B4 00044114 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e /* 800484B8 00044118 41 82 00 08 */ beq lbl_800484C0 /* 800484BC 0004411C 3B 80 00 01 */ li r28, 1 lbl_800484C0: /* 800484C0 00044120 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d /* 800484C4 00044124 41 82 00 08 */ beq lbl_800484CC /* 800484C8 00044128 3B 80 00 02 */ li r28, 2 lbl_800484CC: /* 800484CC 0004412C 7C 83 23 78 */ mr r3, r4 /* 800484D0 00044130 7F A4 EB 78 */ mr r4, r29 /* 800484D4 00044134 7F 85 E3 78 */ mr r5, r28 /* 800484D8 00044138 4B FF 19 A9 */ bl func_80039E80 /* 800484DC 0004413C FF C0 08 90 */ fmr f30, f1 /* 800484E0 00044140 80 7E 00 34 */ lwz r3, 0x34(r30) /* 800484E4 00044144 7F A4 EB 78 */ mr r4, r29 /* 800484E8 00044148 38 BC 00 01 */ addi r5, r28, 1 /* 800484EC 0004414C 4B FF 19 95 */ bl func_80039E80 /* 800484F0 00044150 80 7E 00 28 */ lwz r3, 0x28(r30) /* 800484F4 00044154 EC 41 F0 28 */ fsubs f2, f1, f30 /* 800484F8 00044158 C0 02 83 CC */ lfs f0, lbl_806409CC-_SDA2_BASE_(r2) /* 800484FC 0004415C FC 20 F0 50 */ fneg f1, f30 /* 80048500 00044160 D3 C3 00 20 */ stfs f30, 0x20(r3) /* 80048504 00044164 EC 00 00 B2 */ fmuls f0, f0, f2 /* 80048508 00044168 80 7E 00 28 */ lwz r3, 0x28(r30) /* 8004850C 0004416C D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80048510 00044170 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 80048514 00044174 80 7E 00 28 */ lwz r3, 0x28(r30) /* 80048518 00044178 EC 00 08 2A */ fadds f0, f0, f1 /* 8004851C 0004417C D0 1E 00 14 */ stfs f0, 0x14(r30) /* 80048520 00044180 80 03 00 10 */ lwz r0, 0x10(r3) /* 80048524 00044184 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80048528 00044188 90 03 00 10 */ stw r0, 0x10(r3) /* 8004852C 0004418C 80 1E 00 00 */ lwz r0, 0(r30) /* 80048530 00044190 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80048534 00044194 90 1E 00 00 */ stw r0, 0(r30) /* 80048538 00044198 48 00 00 08 */ b lbl_80048540 lbl_8004853C: /* 8004853C 0004419C 3B E0 00 00 */ li r31, 0 lbl_80048540: /* 80048540 000441A0 2C 1F 00 00 */ cmpwi r31, 0 /* 80048544 000441A4 41 82 00 68 */ beq lbl_800485AC /* 80048548 000441A8 80 9E 00 28 */ lwz r4, 0x28(r30) /* 8004854C 000441AC 80 7E 00 34 */ lwz r3, 0x34(r30) /* 80048550 000441B0 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 80048554 000441B4 D0 03 0D 80 */ stfs f0, 0xd80(r3) /* 80048558 000441B8 80 1E 00 00 */ lwz r0, 0(r30) /* 8004855C 000441BC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80048560 000441C0 40 82 00 20 */ bne lbl_80048580 /* 80048564 000441C4 80 9E 00 28 */ lwz r4, 0x28(r30) /* 80048568 000441C8 80 7E 00 34 */ lwz r3, 0x34(r30) /* 8004856C 000441CC 83 E4 00 00 */ lwz r31, 0(r4) /* 80048570 000441D0 4B FF 0F 81 */ bl func_800394F0 /* 80048574 000441D4 88 1F 00 05 */ lbz r0, 5(r31) /* 80048578 000441D8 7C 03 00 00 */ cmpw r3, r0 /* 8004857C 000441DC 41 82 00 1C */ beq lbl_80048598 lbl_80048580: /* 80048580 000441E0 80 9E 00 28 */ lwz r4, 0x28(r30) /* 80048584 000441E4 80 7E 00 34 */ lwz r3, 0x34(r30) /* 80048588 000441E8 C0 24 00 20 */ lfs f1, 0x20(r4) /* 8004858C 000441EC 80 84 00 00 */ lwz r4, 0(r4) /* 80048590 000441F0 88 84 00 05 */ lbz r4, 5(r4) /* 80048594 000441F4 4B FF 0C 6D */ bl func_80039200 lbl_80048598: /* 80048598 000441F8 80 7E 00 34 */ lwz r3, 0x34(r30) /* 8004859C 000441FC D3 A3 0D 80 */ stfs f29, 0xd80(r3) /* 800485A0 00044200 80 7E 00 28 */ lwz r3, 0x28(r30) /* 800485A4 00044204 80 03 00 08 */ lwz r0, 8(r3) /* 800485A8 00044208 90 1E 00 28 */ stw r0, 0x28(r30) lbl_800485AC: /* 800485AC 0004420C 3B 80 00 00 */ li r28, 0 /* 800485B0 00044210 3B E0 00 00 */ li r31, 0 /* 800485B4 00044214 48 00 00 64 */ b lbl_80048618 lbl_800485B8: /* 800485B8 00044218 80 7E 00 30 */ lwz r3, 0x30(r30) /* 800485BC 0004421C 80 9E 00 2C */ lwz r4, 0x2c(r30) /* 800485C0 00044220 7C 63 F8 2E */ lwzx r3, r3, r31 /* 800485C4 00044224 80 03 00 20 */ lwz r0, 0x20(r3) /* 800485C8 00044228 1C 00 00 24 */ mulli r0, r0, 0x24 /* 800485CC 0004422C 7C 84 02 14 */ add r4, r4, r0 /* 800485D0 00044230 80 04 00 10 */ lwz r0, 0x10(r4) /* 800485D4 00044234 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 800485D8 00044238 40 82 00 38 */ bne lbl_80048610 /* 800485DC 0004423C C0 43 00 0C */ lfs f2, 0xc(r3) /* 800485E0 00044240 C0 1E 00 14 */ lfs f0, 0x14(r30) /* 800485E4 00044244 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 800485E8 00044248 EC 00 10 2A */ fadds f0, f0, f2 /* 800485EC 0004424C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800485F0 00044250 4C 41 13 82 */ cror 2, 1, 2 /* 800485F4 00044254 40 82 00 1C */ bne lbl_80048610 /* 800485F8 00044258 80 83 00 08 */ lwz r4, 8(r3) /* 800485FC 0004425C 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 80048600 00044260 40 82 00 10 */ bne lbl_80048610 /* 80048604 00044264 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e /* 80048608 00044268 40 82 00 08 */ bne lbl_80048610 /* 8004860C 0004426C 48 00 0C 0D */ bl func_80049218 lbl_80048610: /* 80048610 00044270 3B FF 00 04 */ addi r31, r31, 4 /* 80048614 00044274 3B 9C 00 01 */ addi r28, r28, 1 lbl_80048618: /* 80048618 00044278 80 7E 00 24 */ lwz r3, 0x24(r30) /* 8004861C 0004427C 80 63 00 94 */ lwz r3, 0x94(r3) /* 80048620 00044280 2C 03 00 00 */ cmpwi r3, 0 /* 80048624 00044284 40 82 00 0C */ bne lbl_80048630 /* 80048628 00044288 38 00 00 00 */ li r0, 0 /* 8004862C 0004428C 48 00 00 08 */ b lbl_80048634 lbl_80048630: /* 80048630 00044290 80 03 00 14 */ lwz r0, 0x14(r3) lbl_80048634: /* 80048634 00044294 7C 1C 00 40 */ cmplw r28, r0 /* 80048638 00044298 41 80 FF 80 */ blt lbl_800485B8 /* 8004863C 0004429C 3B 80 00 00 */ li r28, 0 /* 80048640 000442A0 3B A0 00 00 */ li r29, 0 /* 80048644 000442A4 3B E0 00 00 */ li r31, 0 /* 80048648 000442A8 48 00 00 3C */ b lbl_80048684 lbl_8004864C: /* 8004864C 000442AC 80 7E 00 30 */ lwz r3, 0x30(r30) /* 80048650 000442B0 7F 63 F8 2E */ lwzx r27, r3, r31 /* 80048654 000442B4 80 1B 00 08 */ lwz r0, 8(r27) /* 80048658 000442B8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004865C 000442BC 41 82 00 10 */ beq lbl_8004866C /* 80048660 000442C0 FC 20 F8 90 */ fmr f1, f31 /* 80048664 000442C4 7F 63 DB 78 */ mr r3, r27 /* 80048668 000442C8 48 00 0C 49 */ bl func_800492B0 lbl_8004866C: /* 8004866C 000442CC 80 1B 00 08 */ lwz r0, 8(r27) /* 80048670 000442D0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 80048674 000442D4 40 82 00 08 */ bne lbl_8004867C /* 80048678 000442D8 3B 80 00 01 */ li r28, 1 lbl_8004867C: /* 8004867C 000442DC 3B FF 00 04 */ addi r31, r31, 4 /* 80048680 000442E0 3B BD 00 01 */ addi r29, r29, 1 lbl_80048684: /* 80048684 000442E4 80 7E 00 24 */ lwz r3, 0x24(r30) /* 80048688 000442E8 80 63 00 94 */ lwz r3, 0x94(r3) /* 8004868C 000442EC 2C 03 00 00 */ cmpwi r3, 0 /* 80048690 000442F0 40 82 00 0C */ bne lbl_8004869C /* 80048694 000442F4 38 00 00 00 */ li r0, 0 /* 80048698 000442F8 48 00 00 08 */ b lbl_800486A0 lbl_8004869C: /* 8004869C 000442FC 80 03 00 14 */ lwz r0, 0x14(r3) lbl_800486A0: /* 800486A0 00044300 7C 1D 00 40 */ cmplw r29, r0 /* 800486A4 00044304 41 80 FF A8 */ blt lbl_8004864C /* 800486A8 00044308 2C 1C 00 00 */ cmpwi r28, 0 /* 800486AC 0004430C 40 82 00 2C */ bne lbl_800486D8 /* 800486B0 00044310 7F C3 F3 78 */ mr r3, r30 /* 800486B4 00044314 4B FF FB F9 */ bl func_800482AC /* 800486B8 00044318 80 1E 00 00 */ lwz r0, 0(r30) /* 800486BC 0004431C 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 800486C0 00044320 41 82 00 18 */ beq lbl_800486D8 /* 800486C4 00044324 48 00 51 49 */ bl func_8004D80C /* 800486C8 00044328 2C 03 00 00 */ cmpwi r3, 0 /* 800486CC 0004432C 41 82 00 0C */ beq lbl_800486D8 /* 800486D0 00044330 7F C4 F3 78 */ mr r4, r30 /* 800486D4 00044334 48 00 56 F9 */ bl func_8004DDCC lbl_800486D8: /* 800486D8 00044338 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800486DC 0004433C CB E1 00 40 */ lfd f31, 0x40(r1) /* 800486E0 00044340 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 800486E4 00044344 CB C1 00 30 */ lfd f30, 0x30(r1) /* 800486E8 00044348 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 800486EC 0004434C 39 61 00 20 */ addi r11, r1, 0x20 /* 800486F0 00044350 CB A1 00 20 */ lfd f29, 0x20(r1) /* 800486F4 00044354 48 17 EA 81 */ bl _restgpr_27 /* 800486F8 00044358 80 01 00 54 */ lwz r0, 0x54(r1) /* 800486FC 0004435C 7C 08 03 A6 */ mtlr r0 /* 80048700 00044360 38 21 00 50 */ addi r1, r1, 0x50 /* 80048704 00044364 4E 80 00 20 */ blr .global func_80048708 func_80048708: /* 80048708 00044368 38 A0 00 01 */ li r5, 1 /* 8004870C 0004436C 38 6D 98 08 */ addi r3, r13, lbl_8063EAC8-_SDA_BASE_ /* 80048710 00044370 38 80 00 04 */ li r4, 4 /* 80048714 00044374 38 00 00 00 */ li r0, 0 /* 80048718 00044378 98 AD 98 08 */ stb r5, lbl_8063EAC8-_SDA_BASE_(r13) /* 8004871C 0004437C B0 83 00 02 */ sth r4, 2(r3) /* 80048720 00044380 98 03 00 04 */ stb r0, 4(r3) /* 80048724 00044384 4E 80 00 20 */ blr lbl_80048728: /* 80048728 00044388 38 00 00 00 */ li r0, 0 /* 8004872C 0004438C 90 03 00 94 */ stw r0, 0x94(r3) /* 80048730 00044390 90 03 00 04 */ stw r0, 4(r3) /* 80048734 00044394 98 03 00 00 */ stb r0, 0(r3) /* 80048738 00044398 90 03 00 98 */ stw r0, 0x98(r3) /* 8004873C 0004439C 90 03 00 88 */ stw r0, 0x88(r3) /* 80048740 000443A0 98 03 00 01 */ stb r0, 1(r3) /* 80048744 000443A4 4E 80 00 20 */ blr lbl_80048748: /* 80048748 000443A8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004874C 000443AC 7C 08 02 A6 */ mflr r0 /* 80048750 000443B0 2C 03 00 00 */ cmpwi r3, 0 /* 80048754 000443B4 90 01 00 14 */ stw r0, 0x14(r1) /* 80048758 000443B8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004875C 000443BC 7C 9F 23 78 */ mr r31, r4 /* 80048760 000443C0 93 C1 00 08 */ stw r30, 8(r1) /* 80048764 000443C4 7C 7E 1B 78 */ mr r30, r3 /* 80048768 000443C8 41 82 00 18 */ beq lbl_80048780 /* 8004876C 000443CC 48 00 00 31 */ bl func_8004879C /* 80048770 000443D0 2C 1F 00 00 */ cmpwi r31, 0 /* 80048774 000443D4 40 81 00 0C */ ble lbl_80048780 /* 80048778 000443D8 7F C3 F3 78 */ mr r3, r30 /* 8004877C 000443DC 48 19 23 3D */ bl func_801DAAB8 lbl_80048780: /* 80048780 000443E0 7F C3 F3 78 */ mr r3, r30 /* 80048784 000443E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048788 000443E8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004878C 000443EC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048790 000443F0 7C 08 03 A6 */ mtlr r0 /* 80048794 000443F4 38 21 00 10 */ addi r1, r1, 0x10 /* 80048798 000443F8 4E 80 00 20 */ blr .global func_8004879C func_8004879C: /* 8004879C 000443FC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800487A0 00044400 7C 08 02 A6 */ mflr r0 /* 800487A4 00044404 90 01 00 24 */ stw r0, 0x24(r1) /* 800487A8 00044408 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800487AC 0004440C 93 C1 00 18 */ stw r30, 0x18(r1) /* 800487B0 00044410 93 A1 00 14 */ stw r29, 0x14(r1) /* 800487B4 00044414 7C 7D 1B 78 */ mr r29, r3 /* 800487B8 00044418 80 03 00 94 */ lwz r0, 0x94(r3) /* 800487BC 0004441C 2C 00 00 00 */ cmpwi r0, 0 /* 800487C0 00044420 41 82 00 50 */ beq lbl_80048810 /* 800487C4 00044424 80 03 00 98 */ lwz r0, 0x98(r3) /* 800487C8 00044428 2C 00 00 00 */ cmpwi r0, 0 /* 800487CC 0004442C 41 82 00 44 */ beq lbl_80048810 /* 800487D0 00044430 3B C0 00 00 */ li r30, 0 /* 800487D4 00044434 3B E0 00 00 */ li r31, 0 /* 800487D8 00044438 48 00 00 28 */ b lbl_80048800 lbl_800487DC: /* 800487DC 0004443C 80 1D 00 98 */ lwz r0, 0x98(r29) /* 800487E0 00044440 7C 60 FA 14 */ add r3, r0, r31 /* 800487E4 00044444 80 83 00 10 */ lwz r4, 0x10(r3) /* 800487E8 00044448 2C 04 00 00 */ cmpwi r4, 0 /* 800487EC 0004444C 41 82 00 0C */ beq lbl_800487F8 /* 800487F0 00044450 7F A3 EB 78 */ mr r3, r29 /* 800487F4 00044454 48 00 04 E5 */ bl func_80048CD8 lbl_800487F8: /* 800487F8 00044458 3B FF 00 20 */ addi r31, r31, 0x20 /* 800487FC 0004445C 3B DE 00 01 */ addi r30, r30, 1 lbl_80048800: /* 80048800 00044460 80 7D 00 94 */ lwz r3, 0x94(r29) /* 80048804 00044464 80 03 00 10 */ lwz r0, 0x10(r3) /* 80048808 00044468 7C 1E 00 40 */ cmplw r30, r0 /* 8004880C 0004446C 41 80 FF D0 */ blt lbl_800487DC lbl_80048810: /* 80048810 00044470 88 1D 00 01 */ lbz r0, 1(r29) /* 80048814 00044474 2C 00 00 00 */ cmpwi r0, 0 /* 80048818 00044478 41 82 00 1C */ beq lbl_80048834 /* 8004881C 0004447C 80 7D 00 04 */ lwz r3, 4(r29) /* 80048820 00044480 2C 03 00 00 */ cmpwi r3, 0 /* 80048824 00044484 41 82 00 10 */ beq lbl_80048834 /* 80048828 00044488 48 19 26 7D */ bl func_801DAEA4 /* 8004882C 0004448C 38 00 00 00 */ li r0, 0 /* 80048830 00044490 90 1D 00 04 */ stw r0, 4(r29) lbl_80048834: /* 80048834 00044494 38 00 00 00 */ li r0, 0 /* 80048838 00044498 90 1D 00 98 */ stw r0, 0x98(r29) /* 8004883C 0004449C 90 1D 00 94 */ stw r0, 0x94(r29) /* 80048840 000444A0 98 1D 00 00 */ stb r0, 0(r29) /* 80048844 000444A4 90 1D 00 88 */ stw r0, 0x88(r29) /* 80048848 000444A8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004884C 000444AC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80048850 000444B0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80048854 000444B4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80048858 000444B8 7C 08 03 A6 */ mtlr r0 /* 8004885C 000444BC 38 21 00 20 */ addi r1, r1, 0x20 /* 80048860 000444C0 4E 80 00 20 */ blr .global func_80048864 func_80048864: /* 80048864 000444C4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80048868 000444C8 7C 08 02 A6 */ mflr r0 /* 8004886C 000444CC 90 01 00 24 */ stw r0, 0x24(r1) /* 80048870 000444D0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80048874 000444D4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80048878 000444D8 7C 9E 23 78 */ mr r30, r4 /* 8004887C 000444DC 38 81 00 08 */ addi r4, r1, 8 /* 80048880 000444E0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80048884 000444E4 7C 7D 1B 78 */ mr r29, r3 /* 80048888 000444E8 7F C3 F3 78 */ mr r3, r30 /* 8004888C 000444EC 48 19 43 35 */ bl func_801DCBC0 /* 80048890 000444F0 2C 03 00 00 */ cmpwi r3, 0 /* 80048894 000444F4 7C 7F 1B 78 */ mr r31, r3 /* 80048898 000444F8 40 82 00 0C */ bne lbl_800488A4 /* 8004889C 000444FC 38 60 00 00 */ li r3, 0 /* 800488A0 00044500 48 00 00 4C */ b lbl_800488EC lbl_800488A4: /* 800488A4 00044504 88 1D 00 01 */ lbz r0, 1(r29) /* 800488A8 00044508 2C 00 00 00 */ cmpwi r0, 0 /* 800488AC 0004450C 41 82 00 14 */ beq lbl_800488C0 /* 800488B0 00044510 80 7D 00 04 */ lwz r3, 4(r29) /* 800488B4 00044514 2C 03 00 00 */ cmpwi r3, 0 /* 800488B8 00044518 41 82 00 08 */ beq lbl_800488C0 /* 800488BC 0004451C 48 19 25 E9 */ bl func_801DAEA4 lbl_800488C0: /* 800488C0 00044520 38 00 00 01 */ li r0, 1 /* 800488C4 00044524 7F A3 EB 78 */ mr r3, r29 /* 800488C8 00044528 98 1D 00 01 */ stb r0, 1(r29) /* 800488CC 0004452C 7F E4 FB 78 */ mr r4, r31 /* 800488D0 00044530 48 00 00 F5 */ bl func_800489C4 /* 800488D4 00044534 7C 7F 1B 78 */ mr r31, r3 /* 800488D8 00044538 7F C4 F3 78 */ mr r4, r30 /* 800488DC 0004453C 38 7D 00 08 */ addi r3, r29, 8 /* 800488E0 00044540 38 A0 00 80 */ li r5, 0x80 /* 800488E4 00044544 48 18 5A AD */ bl strncpy /* 800488E8 00044548 7F E3 FB 78 */ mr r3, r31 lbl_800488EC: /* 800488EC 0004454C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800488F0 00044550 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800488F4 00044554 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800488F8 00044558 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800488FC 0004455C 7C 08 03 A6 */ mtlr r0 /* 80048900 00044560 38 21 00 20 */ addi r1, r1, 0x20 /* 80048904 00044564 4E 80 00 20 */ blr .global func_80048908 func_80048908: /* 80048908 00044568 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004890C 0004456C 7C 08 02 A6 */ mflr r0 /* 80048910 00044570 90 01 00 24 */ stw r0, 0x24(r1) /* 80048914 00044574 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80048918 00044578 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004891C 0004457C 7C BE 2B 78 */ mr r30, r5 /* 80048920 00044580 93 A1 00 14 */ stw r29, 0x14(r1) /* 80048924 00044584 7C 9D 23 78 */ mr r29, r4 /* 80048928 00044588 7F C4 F3 78 */ mr r4, r30 /* 8004892C 0004458C 93 81 00 10 */ stw r28, 0x10(r1) /* 80048930 00044590 7C 7C 1B 78 */ mr r28, r3 /* 80048934 00044594 7F A3 EB 78 */ mr r3, r29 /* 80048938 00044598 48 19 2B 85 */ bl func_801DB4BC /* 8004893C 0004459C 2C 03 00 00 */ cmpwi r3, 0 /* 80048940 000445A0 7C 7F 1B 78 */ mr r31, r3 /* 80048944 000445A4 40 82 00 0C */ bne lbl_80048950 /* 80048948 000445A8 38 60 00 00 */ li r3, 0 /* 8004894C 000445AC 48 00 00 58 */ b lbl_800489A4 lbl_80048950: /* 80048950 000445B0 88 1C 00 01 */ lbz r0, 1(r28) /* 80048954 000445B4 2C 00 00 00 */ cmpwi r0, 0 /* 80048958 000445B8 41 82 00 14 */ beq lbl_8004896C /* 8004895C 000445BC 80 7C 00 04 */ lwz r3, 4(r28) /* 80048960 000445C0 2C 03 00 00 */ cmpwi r3, 0 /* 80048964 000445C4 41 82 00 08 */ beq lbl_8004896C /* 80048968 000445C8 48 19 25 3D */ bl func_801DAEA4 lbl_8004896C: /* 8004896C 000445CC 7F 83 E3 78 */ mr r3, r28 /* 80048970 000445D0 7F E4 FB 78 */ mr r4, r31 /* 80048974 000445D4 48 00 00 51 */ bl func_800489C4 /* 80048978 000445D8 3C 80 80 41 */ lis r4, lbl_8040A468@ha /* 8004897C 000445DC 7C 7F 1B 78 */ mr r31, r3 /* 80048980 000445E0 7F A5 EB 78 */ mr r5, r29 /* 80048984 000445E4 7F C6 F3 78 */ mr r6, r30 /* 80048988 000445E8 38 7C 00 08 */ addi r3, r28, 8 /* 8004898C 000445EC 38 84 A4 68 */ addi r4, r4, lbl_8040A468@l /* 80048990 000445F0 4C C6 31 82 */ crclr 6 /* 80048994 000445F4 48 18 41 69 */ bl sprintf /* 80048998 000445F8 93 BC 00 8C */ stw r29, 0x8c(r28) /* 8004899C 000445FC 7F E3 FB 78 */ mr r3, r31 /* 800489A0 00044600 93 DC 00 90 */ stw r30, 0x90(r28) lbl_800489A4: /* 800489A4 00044604 80 01 00 24 */ lwz r0, 0x24(r1) /* 800489A8 00044608 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800489AC 0004460C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800489B0 00044610 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800489B4 00044614 83 81 00 10 */ lwz r28, 0x10(r1) /* 800489B8 00044618 7C 08 03 A6 */ mtlr r0 /* 800489BC 0004461C 38 21 00 20 */ addi r1, r1, 0x20 /* 800489C0 00044620 4E 80 00 20 */ blr .global func_800489C4 func_800489C4: /* 800489C4 00044624 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800489C8 00044628 7C 08 02 A6 */ mflr r0 /* 800489CC 0004462C 90 01 00 34 */ stw r0, 0x34(r1) /* 800489D0 00044630 39 61 00 30 */ addi r11, r1, 0x30 /* 800489D4 00044634 48 17 E7 55 */ bl _savegpr_27 /* 800489D8 00044638 90 83 00 04 */ stw r4, 4(r3) /* 800489DC 0004463C 7C 7F 1B 78 */ mr r31, r3 /* 800489E0 00044640 90 83 00 94 */ stw r4, 0x94(r3) /* 800489E4 00044644 88 04 00 0C */ lbz r0, 0xc(r4) /* 800489E8 00044648 2C 00 00 00 */ cmpwi r0, 0 /* 800489EC 0004464C 41 82 00 14 */ beq lbl_80048A00 /* 800489F0 00044650 38 00 00 01 */ li r0, 1 /* 800489F4 00044654 98 03 00 00 */ stb r0, 0(r3) /* 800489F8 00044658 38 60 00 01 */ li r3, 1 /* 800489FC 0004465C 48 00 01 40 */ b lbl_80048B3C lbl_80048A00: /* 80048A00 00044660 38 00 00 01 */ li r0, 1 /* 80048A04 00044664 38 A0 00 00 */ li r5, 0 /* 80048A08 00044668 98 04 00 0C */ stb r0, 0xc(r4) /* 80048A0C 0004466C 38 E0 00 00 */ li r7, 0 /* 80048A10 00044670 80 C3 00 94 */ lwz r6, 0x94(r3) /* 80048A14 00044674 80 06 00 18 */ lwz r0, 0x18(r6) /* 80048A18 00044678 7C 04 02 14 */ add r0, r4, r0 /* 80048A1C 0004467C 90 03 00 98 */ stw r0, 0x98(r3) /* 80048A20 00044680 48 00 00 8C */ b lbl_80048AAC lbl_80048A24: /* 80048A24 00044684 80 03 00 98 */ lwz r0, 0x98(r3) /* 80048A28 00044688 7C 80 3A 14 */ add r4, r0, r7 /* 80048A2C 0004468C 80 C4 00 08 */ lwz r6, 8(r4) /* 80048A30 00044690 2C 06 00 00 */ cmpwi r6, 0 /* 80048A34 00044694 41 82 00 10 */ beq lbl_80048A44 /* 80048A38 00044698 80 03 00 04 */ lwz r0, 4(r3) /* 80048A3C 0004469C 7C 00 32 14 */ add r0, r0, r6 /* 80048A40 000446A0 90 04 00 08 */ stw r0, 8(r4) lbl_80048A44: /* 80048A44 000446A4 80 03 00 98 */ lwz r0, 0x98(r3) /* 80048A48 000446A8 7C 80 3A 14 */ add r4, r0, r7 /* 80048A4C 000446AC 80 C4 00 0C */ lwz r6, 0xc(r4) /* 80048A50 000446B0 2C 06 00 00 */ cmpwi r6, 0 /* 80048A54 000446B4 41 82 00 10 */ beq lbl_80048A64 /* 80048A58 000446B8 80 03 00 04 */ lwz r0, 4(r3) /* 80048A5C 000446BC 7C 00 32 14 */ add r0, r0, r6 /* 80048A60 000446C0 90 04 00 0C */ stw r0, 0xc(r4) lbl_80048A64: /* 80048A64 000446C4 80 03 00 98 */ lwz r0, 0x98(r3) /* 80048A68 000446C8 7C 80 3A 14 */ add r4, r0, r7 /* 80048A6C 000446CC 80 C4 00 10 */ lwz r6, 0x10(r4) /* 80048A70 000446D0 2C 06 00 00 */ cmpwi r6, 0 /* 80048A74 000446D4 41 82 00 10 */ beq lbl_80048A84 /* 80048A78 000446D8 80 03 00 04 */ lwz r0, 4(r3) /* 80048A7C 000446DC 7C 00 32 14 */ add r0, r0, r6 /* 80048A80 000446E0 90 04 00 10 */ stw r0, 0x10(r4) lbl_80048A84: /* 80048A84 000446E4 80 03 00 98 */ lwz r0, 0x98(r3) /* 80048A88 000446E8 7C 80 3A 14 */ add r4, r0, r7 /* 80048A8C 000446EC 80 C4 00 14 */ lwz r6, 0x14(r4) /* 80048A90 000446F0 2C 06 00 00 */ cmpwi r6, 0 /* 80048A94 000446F4 41 82 00 10 */ beq lbl_80048AA4 /* 80048A98 000446F8 80 03 00 04 */ lwz r0, 4(r3) /* 80048A9C 000446FC 7C 00 32 14 */ add r0, r0, r6 /* 80048AA0 00044700 90 04 00 14 */ stw r0, 0x14(r4) lbl_80048AA4: /* 80048AA4 00044704 38 E7 00 20 */ addi r7, r7, 0x20 /* 80048AA8 00044708 38 A5 00 01 */ addi r5, r5, 1 lbl_80048AAC: /* 80048AAC 0004470C 80 83 00 94 */ lwz r4, 0x94(r3) /* 80048AB0 00044710 80 04 00 10 */ lwz r0, 0x10(r4) /* 80048AB4 00044714 7C 05 00 40 */ cmplw r5, r0 /* 80048AB8 00044718 41 80 FF 6C */ blt lbl_80048A24 /* 80048ABC 0004471C 3B 80 00 00 */ li r28, 0 /* 80048AC0 00044720 3B 60 00 00 */ li r27, 0 /* 80048AC4 00044724 3B A0 00 00 */ li r29, 0 /* 80048AC8 00044728 3B C0 00 00 */ li r30, 0 /* 80048ACC 0004472C 48 00 00 38 */ b lbl_80048B04 lbl_80048AD0: /* 80048AD0 00044730 93 C1 00 08 */ stw r30, 8(r1) /* 80048AD4 00044734 80 1F 00 98 */ lwz r0, 0x98(r31) /* 80048AD8 00044738 7C 60 EA 14 */ add r3, r0, r29 /* 80048ADC 0004473C 80 83 00 10 */ lwz r4, 0x10(r3) /* 80048AE0 00044740 2C 04 00 00 */ cmpwi r4, 0 /* 80048AE4 00044744 41 82 00 10 */ beq lbl_80048AF4 /* 80048AE8 00044748 7F E3 FB 78 */ mr r3, r31 /* 80048AEC 0004474C 38 A1 00 08 */ addi r5, r1, 8 /* 80048AF0 00044750 48 00 00 65 */ bl func_80048B54 lbl_80048AF4: /* 80048AF4 00044754 80 01 00 08 */ lwz r0, 8(r1) /* 80048AF8 00044758 3B BD 00 20 */ addi r29, r29, 0x20 /* 80048AFC 0004475C 3B 7B 00 01 */ addi r27, r27, 1 /* 80048B00 00044760 7F 9C 02 14 */ add r28, r28, r0 lbl_80048B04: /* 80048B04 00044764 80 7F 00 94 */ lwz r3, 0x94(r31) /* 80048B08 00044768 80 03 00 10 */ lwz r0, 0x10(r3) /* 80048B0C 0004476C 7C 1B 00 40 */ cmplw r27, r0 /* 80048B10 00044770 41 80 FF C0 */ blt lbl_80048AD0 /* 80048B14 00044774 80 03 00 14 */ lwz r0, 0x14(r3) /* 80048B18 00044778 7C 1C 00 40 */ cmplw r28, r0 /* 80048B1C 0004477C 41 82 00 0C */ beq lbl_80048B28 /* 80048B20 00044780 38 60 00 00 */ li r3, 0 /* 80048B24 00044784 48 00 00 18 */ b lbl_80048B3C lbl_80048B28: /* 80048B28 00044788 38 60 00 00 */ li r3, 0 /* 80048B2C 0004478C 38 00 00 01 */ li r0, 1 /* 80048B30 00044790 98 7F 00 08 */ stb r3, 8(r31) /* 80048B34 00044794 38 60 00 01 */ li r3, 1 /* 80048B38 00044798 98 1F 00 00 */ stb r0, 0(r31) lbl_80048B3C: /* 80048B3C 0004479C 39 61 00 30 */ addi r11, r1, 0x30 /* 80048B40 000447A0 48 17 E6 35 */ bl _restgpr_27 /* 80048B44 000447A4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80048B48 000447A8 7C 08 03 A6 */ mtlr r0 /* 80048B4C 000447AC 38 21 00 30 */ addi r1, r1, 0x30 /* 80048B50 000447B0 4E 80 00 20 */ blr .global func_80048B54 func_80048B54: /* 80048B54 000447B4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80048B58 000447B8 7C 08 02 A6 */ mflr r0 /* 80048B5C 000447BC 90 01 00 24 */ stw r0, 0x24(r1) /* 80048B60 000447C0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80048B64 000447C4 7C BF 2B 78 */ mr r31, r5 /* 80048B68 000447C8 93 C1 00 18 */ stw r30, 0x18(r1) /* 80048B6C 000447CC 7C 9E 23 78 */ mr r30, r4 /* 80048B70 000447D0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80048B74 000447D4 7C 7D 1B 78 */ mr r29, r3 /* 80048B78 000447D8 93 81 00 10 */ stw r28, 0x10(r1) /* 80048B7C 000447DC 3F 80 80 41 */ lis r28, 0x8041 /* 80048B80 000447E0 48 00 01 30 */ b lbl_80048CB0 lbl_80048B84: /* 80048B84 000447E4 80 7E 00 1C */ lwz r3, 0x1c(r30) /* 80048B88 000447E8 2C 03 00 00 */ cmpwi r3, 0 /* 80048B8C 000447EC 41 82 00 10 */ beq lbl_80048B9C /* 80048B90 000447F0 80 1D 00 04 */ lwz r0, 4(r29) /* 80048B94 000447F4 7C 00 1A 14 */ add r0, r0, r3 /* 80048B98 000447F8 90 1E 00 1C */ stw r0, 0x1c(r30) lbl_80048B9C: /* 80048B9C 000447FC 80 7E 00 20 */ lwz r3, 0x20(r30) /* 80048BA0 00044800 2C 03 00 00 */ cmpwi r3, 0 /* 80048BA4 00044804 41 82 00 10 */ beq lbl_80048BB4 /* 80048BA8 00044808 80 1D 00 04 */ lwz r0, 4(r29) /* 80048BAC 0004480C 7C 00 1A 14 */ add r0, r0, r3 /* 80048BB0 00044810 90 1E 00 20 */ stw r0, 0x20(r30) lbl_80048BB4: /* 80048BB4 00044814 80 7E 00 24 */ lwz r3, 0x24(r30) /* 80048BB8 00044818 2C 03 00 00 */ cmpwi r3, 0 /* 80048BBC 0004481C 41 82 00 10 */ beq lbl_80048BCC /* 80048BC0 00044820 80 1D 00 04 */ lwz r0, 4(r29) /* 80048BC4 00044824 7C 00 1A 14 */ add r0, r0, r3 /* 80048BC8 00044828 90 1E 00 24 */ stw r0, 0x24(r30) lbl_80048BCC: /* 80048BCC 0004482C 80 7E 00 28 */ lwz r3, 0x28(r30) /* 80048BD0 00044830 2C 03 00 00 */ cmpwi r3, 0 /* 80048BD4 00044834 41 82 00 10 */ beq lbl_80048BE4 /* 80048BD8 00044838 80 1D 00 04 */ lwz r0, 4(r29) /* 80048BDC 0004483C 7C 00 1A 14 */ add r0, r0, r3 /* 80048BE0 00044840 90 1E 00 28 */ stw r0, 0x28(r30) lbl_80048BE4: /* 80048BE4 00044844 80 7E 00 2C */ lwz r3, 0x2c(r30) /* 80048BE8 00044848 2C 03 00 00 */ cmpwi r3, 0 /* 80048BEC 0004484C 41 82 00 10 */ beq lbl_80048BFC /* 80048BF0 00044850 80 1D 00 04 */ lwz r0, 4(r29) /* 80048BF4 00044854 7C 00 1A 14 */ add r0, r0, r3 /* 80048BF8 00044858 90 1E 00 2C */ stw r0, 0x2c(r30) lbl_80048BFC: /* 80048BFC 0004485C A0 1E 00 0A */ lhz r0, 0xa(r30) /* 80048C00 00044860 28 00 00 06 */ cmplwi r0, 6 /* 80048C04 00044864 41 81 00 84 */ bgt lbl_80048C88 /* 80048C08 00044868 38 7C A4 74 */ addi r3, r28, -23436 /* 80048C0C 0004486C 54 00 10 3A */ slwi r0, r0, 2 /* 80048C10 00044870 7C 63 00 2E */ lwzx r3, r3, r0 /* 80048C14 00044874 7C 69 03 A6 */ mtctr r3 /* 80048C18 00044878 4E 80 04 20 */ bctr /* 80048C1C 0004487C 7F A3 EB 78 */ mr r3, r29 /* 80048C20 00044880 7F C4 F3 78 */ mr r4, r30 /* 80048C24 00044884 48 00 01 75 */ bl func_80048D98 /* 80048C28 00044888 48 00 00 60 */ b lbl_80048C88 /* 80048C2C 0004488C 7F A3 EB 78 */ mr r3, r29 /* 80048C30 00044890 7F C4 F3 78 */ mr r4, r30 /* 80048C34 00044894 48 00 01 69 */ bl func_80048D9C /* 80048C38 00044898 48 00 00 50 */ b lbl_80048C88 /* 80048C3C 0004489C 7F A3 EB 78 */ mr r3, r29 /* 80048C40 000448A0 7F C4 F3 78 */ mr r4, r30 /* 80048C44 000448A4 48 00 01 C1 */ bl func_80048E04 /* 80048C48 000448A8 48 00 00 40 */ b lbl_80048C88 /* 80048C4C 000448AC 7F A3 EB 78 */ mr r3, r29 /* 80048C50 000448B0 7F C4 F3 78 */ mr r4, r30 /* 80048C54 000448B4 48 00 02 3D */ bl func_80048E90 /* 80048C58 000448B8 48 00 00 30 */ b lbl_80048C88 /* 80048C5C 000448BC 7F A3 EB 78 */ mr r3, r29 /* 80048C60 000448C0 7F C4 F3 78 */ mr r4, r30 /* 80048C64 000448C4 48 00 03 55 */ bl func_80048FB8 /* 80048C68 000448C8 48 00 00 20 */ b lbl_80048C88 /* 80048C6C 000448CC 7F A3 EB 78 */ mr r3, r29 /* 80048C70 000448D0 7F C4 F3 78 */ mr r4, r30 /* 80048C74 000448D4 48 00 03 49 */ bl func_80048FBC /* 80048C78 000448D8 48 00 00 10 */ b lbl_80048C88 /* 80048C7C 000448DC 7F A3 EB 78 */ mr r3, r29 /* 80048C80 000448E0 7F C4 F3 78 */ mr r4, r30 /* 80048C84 000448E4 48 00 03 3D */ bl func_80048FC0 lbl_80048C88: /* 80048C88 000448E8 80 7F 00 00 */ lwz r3, 0(r31) /* 80048C8C 000448EC 38 03 00 01 */ addi r0, r3, 1 /* 80048C90 000448F0 90 1F 00 00 */ stw r0, 0(r31) /* 80048C94 000448F4 80 9E 00 28 */ lwz r4, 0x28(r30) /* 80048C98 000448F8 2C 04 00 00 */ cmpwi r4, 0 /* 80048C9C 000448FC 41 82 00 10 */ beq lbl_80048CAC /* 80048CA0 00044900 7F A3 EB 78 */ mr r3, r29 /* 80048CA4 00044904 7F E5 FB 78 */ mr r5, r31 /* 80048CA8 00044908 4B FF FE AD */ bl func_80048B54 lbl_80048CAC: /* 80048CAC 0004490C 83 DE 00 20 */ lwz r30, 0x20(r30) lbl_80048CB0: /* 80048CB0 00044910 2C 1E 00 00 */ cmpwi r30, 0 /* 80048CB4 00044914 40 82 FE D0 */ bne lbl_80048B84 /* 80048CB8 00044918 80 01 00 24 */ lwz r0, 0x24(r1) /* 80048CBC 0004491C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80048CC0 00044920 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80048CC4 00044924 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80048CC8 00044928 83 81 00 10 */ lwz r28, 0x10(r1) /* 80048CCC 0004492C 7C 08 03 A6 */ mtlr r0 /* 80048CD0 00044930 38 21 00 20 */ addi r1, r1, 0x20 /* 80048CD4 00044934 4E 80 00 20 */ blr .global func_80048CD8 func_80048CD8: /* 80048CD8 00044938 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80048CDC 0004493C 7C 08 02 A6 */ mflr r0 /* 80048CE0 00044940 90 01 00 14 */ stw r0, 0x14(r1) /* 80048CE4 00044944 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048CE8 00044948 7C 9F 23 78 */ mr r31, r4 /* 80048CEC 0004494C 93 C1 00 08 */ stw r30, 8(r1) /* 80048CF0 00044950 7C 7E 1B 78 */ mr r30, r3 /* 80048CF4 00044954 48 00 00 84 */ b lbl_80048D78 lbl_80048CF8: /* 80048CF8 00044958 A0 1F 00 0A */ lhz r0, 0xa(r31) /* 80048CFC 0004495C 2C 00 00 03 */ cmpwi r0, 3 /* 80048D00 00044960 41 82 00 44 */ beq lbl_80048D44 /* 80048D04 00044964 40 80 00 14 */ bge lbl_80048D18 /* 80048D08 00044968 2C 00 00 01 */ cmpwi r0, 1 /* 80048D0C 0004496C 41 82 00 18 */ beq lbl_80048D24 /* 80048D10 00044970 40 80 00 24 */ bge lbl_80048D34 /* 80048D14 00044974 48 00 00 4C */ b lbl_80048D60 lbl_80048D18: /* 80048D18 00044978 2C 00 00 06 */ cmpwi r0, 6 /* 80048D1C 0004497C 41 82 00 38 */ beq lbl_80048D54 /* 80048D20 00044980 48 00 00 40 */ b lbl_80048D60 lbl_80048D24: /* 80048D24 00044984 7F C3 F3 78 */ mr r3, r30 /* 80048D28 00044988 7F E4 FB 78 */ mr r4, r31 /* 80048D2C 0004498C 48 00 00 99 */ bl func_80048DC4 /* 80048D30 00044990 48 00 00 30 */ b lbl_80048D60 lbl_80048D34: /* 80048D34 00044994 7F C3 F3 78 */ mr r3, r30 /* 80048D38 00044998 7F E4 FB 78 */ mr r4, r31 /* 80048D3C 0004499C 48 00 01 15 */ bl func_80048E50 /* 80048D40 000449A0 48 00 00 20 */ b lbl_80048D60 lbl_80048D44: /* 80048D44 000449A4 7F C3 F3 78 */ mr r3, r30 /* 80048D48 000449A8 7F E4 FB 78 */ mr r4, r31 /* 80048D4C 000449AC 48 00 02 69 */ bl func_80048FB4 /* 80048D50 000449B0 48 00 00 10 */ b lbl_80048D60 lbl_80048D54: /* 80048D54 000449B4 7F C3 F3 78 */ mr r3, r30 /* 80048D58 000449B8 7F E4 FB 78 */ mr r4, r31 /* 80048D5C 000449BC 48 00 02 B1 */ bl func_8004900C lbl_80048D60: /* 80048D60 000449C0 80 9F 00 28 */ lwz r4, 0x28(r31) /* 80048D64 000449C4 2C 04 00 00 */ cmpwi r4, 0 /* 80048D68 000449C8 41 82 00 0C */ beq lbl_80048D74 /* 80048D6C 000449CC 7F C3 F3 78 */ mr r3, r30 /* 80048D70 000449D0 4B FF FF 69 */ bl func_80048CD8 lbl_80048D74: /* 80048D74 000449D4 83 FF 00 20 */ lwz r31, 0x20(r31) lbl_80048D78: /* 80048D78 000449D8 2C 1F 00 00 */ cmpwi r31, 0 /* 80048D7C 000449DC 40 82 FF 7C */ bne lbl_80048CF8 /* 80048D80 000449E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048D84 000449E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048D88 000449E8 83 C1 00 08 */ lwz r30, 8(r1) /* 80048D8C 000449EC 7C 08 03 A6 */ mtlr r0 /* 80048D90 000449F0 38 21 00 10 */ addi r1, r1, 0x10 /* 80048D94 000449F4 4E 80 00 20 */ blr .global func_80048D98 func_80048D98: /* 80048D98 000449F8 4E 80 00 20 */ blr .global func_80048D9C func_80048D9C: /* 80048D9C 000449FC 80 A4 00 44 */ lwz r5, 0x44(r4) /* 80048DA0 00044A00 2C 05 00 00 */ cmpwi r5, 0 /* 80048DA4 00044A04 41 82 00 10 */ beq lbl_80048DB4 /* 80048DA8 00044A08 80 03 00 04 */ lwz r0, 4(r3) /* 80048DAC 00044A0C 7C 00 2A 14 */ add r0, r0, r5 /* 80048DB0 00044A10 90 04 00 44 */ stw r0, 0x44(r4) lbl_80048DB4: /* 80048DB4 00044A14 80 64 00 44 */ lwz r3, 0x44(r4) /* 80048DB8 00044A18 90 64 00 48 */ stw r3, 0x48(r4) /* 80048DBC 00044A1C 7C 64 1B 78 */ mr r4, r3 /* 80048DC0 00044A20 48 19 A7 1C */ b func_801E34DC .global func_80048DC4 func_80048DC4: /* 80048DC4 00044A24 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80048DC8 00044A28 7C 08 02 A6 */ mflr r0 /* 80048DCC 00044A2C 90 01 00 14 */ stw r0, 0x14(r1) /* 80048DD0 00044A30 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048DD4 00044A34 7C 9F 23 78 */ mr r31, r4 /* 80048DD8 00044A38 80 64 00 48 */ lwz r3, 0x48(r4) /* 80048DDC 00044A3C 2C 03 00 00 */ cmpwi r3, 0 /* 80048DE0 00044A40 41 82 00 10 */ beq lbl_80048DF0 /* 80048DE4 00044A44 48 19 AA 0D */ bl func_801E37F0 /* 80048DE8 00044A48 38 00 00 00 */ li r0, 0 /* 80048DEC 00044A4C 90 1F 00 48 */ stw r0, 0x48(r31) lbl_80048DF0: /* 80048DF0 00044A50 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048DF4 00044A54 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048DF8 00044A58 7C 08 03 A6 */ mtlr r0 /* 80048DFC 00044A5C 38 21 00 10 */ addi r1, r1, 0x10 /* 80048E00 00044A60 4E 80 00 20 */ blr .global func_80048E04 func_80048E04: /* 80048E04 00044A64 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80048E08 00044A68 7C 08 02 A6 */ mflr r0 /* 80048E0C 00044A6C 90 01 00 14 */ stw r0, 0x14(r1) /* 80048E10 00044A70 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048E14 00044A74 7C 9F 23 78 */ mr r31, r4 /* 80048E18 00044A78 80 A4 00 40 */ lwz r5, 0x40(r4) /* 80048E1C 00044A7C 2C 05 00 00 */ cmpwi r5, 0 /* 80048E20 00044A80 41 82 00 10 */ beq lbl_80048E30 /* 80048E24 00044A84 80 03 00 04 */ lwz r0, 4(r3) /* 80048E28 00044A88 7C 00 2A 14 */ add r0, r0, r5 /* 80048E2C 00044A8C 90 04 00 40 */ stw r0, 0x40(r4) lbl_80048E30: /* 80048E30 00044A90 80 64 00 40 */ lwz r3, 0x40(r4) /* 80048E34 00044A94 48 1B DF 59 */ bl func_80206D8C /* 80048E38 00044A98 90 7F 00 44 */ stw r3, 0x44(r31) /* 80048E3C 00044A9C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048E40 00044AA0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048E44 00044AA4 7C 08 03 A6 */ mtlr r0 /* 80048E48 00044AA8 38 21 00 10 */ addi r1, r1, 0x10 /* 80048E4C 00044AAC 4E 80 00 20 */ blr .global func_80048E50 func_80048E50: /* 80048E50 00044AB0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80048E54 00044AB4 7C 08 02 A6 */ mflr r0 /* 80048E58 00044AB8 90 01 00 14 */ stw r0, 0x14(r1) /* 80048E5C 00044ABC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048E60 00044AC0 7C 9F 23 78 */ mr r31, r4 /* 80048E64 00044AC4 80 64 00 44 */ lwz r3, 0x44(r4) /* 80048E68 00044AC8 2C 03 00 00 */ cmpwi r3, 0 /* 80048E6C 00044ACC 41 82 00 10 */ beq lbl_80048E7C /* 80048E70 00044AD0 48 1B DF 85 */ bl func_80206DF4 /* 80048E74 00044AD4 38 00 00 00 */ li r0, 0 /* 80048E78 00044AD8 90 1F 00 44 */ stw r0, 0x44(r31) lbl_80048E7C: /* 80048E7C 00044ADC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048E80 00044AE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048E84 00044AE4 7C 08 03 A6 */ mtlr r0 /* 80048E88 00044AE8 38 21 00 10 */ addi r1, r1, 0x10 /* 80048E8C 00044AEC 4E 80 00 20 */ blr .global func_80048E90 func_80048E90: /* 80048E90 00044AF0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80048E94 00044AF4 7C 08 02 A6 */ mflr r0 /* 80048E98 00044AF8 90 01 00 14 */ stw r0, 0x14(r1) /* 80048E9C 00044AFC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048EA0 00044B00 A0 04 00 38 */ lhz r0, 0x38(r4) /* 80048EA4 00044B04 28 00 00 0E */ cmplwi r0, 0xe /* 80048EA8 00044B08 41 81 00 F8 */ bgt lbl_80048FA0 /* 80048EAC 00044B0C 3C A0 80 41 */ lis r5, lbl_8040A490@ha /* 80048EB0 00044B10 54 00 10 3A */ slwi r0, r0, 2 /* 80048EB4 00044B14 38 A5 A4 90 */ addi r5, r5, lbl_8040A490@l /* 80048EB8 00044B18 7C A5 00 2E */ lwzx r5, r5, r0 /* 80048EBC 00044B1C 7C A9 03 A6 */ mtctr r5 /* 80048EC0 00044B20 4E 80 04 20 */ bctr /* 80048EC4 00044B24 3B E4 00 40 */ addi r31, r4, 0x40 /* 80048EC8 00044B28 80 84 00 58 */ lwz r4, 0x58(r4) /* 80048ECC 00044B2C 2C 04 00 00 */ cmpwi r4, 0 /* 80048ED0 00044B30 41 82 00 D0 */ beq lbl_80048FA0 /* 80048ED4 00044B34 41 82 00 10 */ beq lbl_80048EE4 /* 80048ED8 00044B38 80 03 00 04 */ lwz r0, 4(r3) /* 80048EDC 00044B3C 7C 00 22 14 */ add r0, r0, r4 /* 80048EE0 00044B40 90 1F 00 18 */ stw r0, 0x18(r31) lbl_80048EE4: /* 80048EE4 00044B44 80 7F 00 18 */ lwz r3, 0x18(r31) /* 80048EE8 00044B48 48 1F 47 E5 */ bl func_8023D6CC /* 80048EEC 00044B4C 90 7F 00 1C */ stw r3, 0x1c(r31) /* 80048EF0 00044B50 48 00 00 B0 */ b lbl_80048FA0 /* 80048EF4 00044B54 3B E4 00 40 */ addi r31, r4, 0x40 /* 80048EF8 00044B58 80 84 00 68 */ lwz r4, 0x68(r4) /* 80048EFC 00044B5C 2C 04 00 00 */ cmpwi r4, 0 /* 80048F00 00044B60 41 82 00 A0 */ beq lbl_80048FA0 /* 80048F04 00044B64 41 82 00 10 */ beq lbl_80048F14 /* 80048F08 00044B68 80 03 00 04 */ lwz r0, 4(r3) /* 80048F0C 00044B6C 7C 00 22 14 */ add r0, r0, r4 /* 80048F10 00044B70 90 1F 00 28 */ stw r0, 0x28(r31) lbl_80048F14: /* 80048F14 00044B74 80 7F 00 28 */ lwz r3, 0x28(r31) /* 80048F18 00044B78 48 1F 47 B5 */ bl func_8023D6CC /* 80048F1C 00044B7C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 80048F20 00044B80 38 80 00 01 */ li r4, 1 /* 80048F24 00044B84 38 A0 00 01 */ li r5, 1 /* 80048F28 00044B88 48 1F 54 45 */ bl func_8023E36C /* 80048F2C 00044B8C 48 00 00 74 */ b lbl_80048FA0 /* 80048F30 00044B90 3B E4 00 40 */ addi r31, r4, 0x40 /* 80048F34 00044B94 80 84 00 60 */ lwz r4, 0x60(r4) /* 80048F38 00044B98 2C 04 00 00 */ cmpwi r4, 0 /* 80048F3C 00044B9C 41 82 00 64 */ beq lbl_80048FA0 /* 80048F40 00044BA0 41 82 00 10 */ beq lbl_80048F50 /* 80048F44 00044BA4 80 03 00 04 */ lwz r0, 4(r3) /* 80048F48 00044BA8 7C 00 22 14 */ add r0, r0, r4 /* 80048F4C 00044BAC 90 1F 00 20 */ stw r0, 0x20(r31) lbl_80048F50: /* 80048F50 00044BB0 80 7F 00 20 */ lwz r3, 0x20(r31) /* 80048F54 00044BB4 48 1F 47 79 */ bl func_8023D6CC /* 80048F58 00044BB8 80 DF 00 00 */ lwz r6, 0(r31) /* 80048F5C 00044BBC 38 80 00 00 */ li r4, 0 /* 80048F60 00044BC0 90 7F 00 24 */ stw r3, 0x24(r31) /* 80048F64 00044BC4 54 C0 07 FF */ clrlwi. r0, r6, 0x1f /* 80048F68 00044BC8 41 82 00 08 */ beq lbl_80048F70 /* 80048F6C 00044BCC 38 80 00 01 */ li r4, 1 lbl_80048F70: /* 80048F70 00044BD0 54 C0 07 BD */ rlwinm. r0, r6, 0, 0x1e, 0x1e /* 80048F74 00044BD4 41 82 00 08 */ beq lbl_80048F7C /* 80048F78 00044BD8 38 80 00 02 */ li r4, 2 lbl_80048F7C: /* 80048F7C 00044BDC 54 C0 07 7B */ rlwinm. r0, r6, 0, 0x1d, 0x1d /* 80048F80 00044BE0 38 A0 00 00 */ li r5, 0 /* 80048F84 00044BE4 41 82 00 08 */ beq lbl_80048F8C /* 80048F88 00044BE8 38 A0 00 01 */ li r5, 1 lbl_80048F8C: /* 80048F8C 00044BEC 54 C0 07 39 */ rlwinm. r0, r6, 0, 0x1c, 0x1c /* 80048F90 00044BF0 41 82 00 08 */ beq lbl_80048F98 /* 80048F94 00044BF4 38 A0 00 02 */ li r5, 2 lbl_80048F98: /* 80048F98 00044BF8 80 7F 00 24 */ lwz r3, 0x24(r31) /* 80048F9C 00044BFC 48 1F 53 D1 */ bl func_8023E36C lbl_80048FA0: /* 80048FA0 00044C00 80 01 00 14 */ lwz r0, 0x14(r1) /* 80048FA4 00044C04 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048FA8 00044C08 7C 08 03 A6 */ mtlr r0 /* 80048FAC 00044C0C 38 21 00 10 */ addi r1, r1, 0x10 /* 80048FB0 00044C10 4E 80 00 20 */ blr .global func_80048FB4 func_80048FB4: /* 80048FB4 00044C14 4E 80 00 20 */ blr .global func_80048FB8 func_80048FB8: /* 80048FB8 00044C18 4E 80 00 20 */ blr .global func_80048FBC func_80048FBC: /* 80048FBC 00044C1C 4E 80 00 20 */ blr .global func_80048FC0 func_80048FC0: /* 80048FC0 00044C20 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80048FC4 00044C24 7C 08 02 A6 */ mflr r0 /* 80048FC8 00044C28 90 01 00 14 */ stw r0, 0x14(r1) /* 80048FCC 00044C2C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80048FD0 00044C30 7C 9F 23 78 */ mr r31, r4 /* 80048FD4 00044C34 80 A4 00 44 */ lwz r5, 0x44(r4) /* 80048FD8 00044C38 2C 05 00 00 */ cmpwi r5, 0 /* 80048FDC 00044C3C 41 82 00 10 */ beq lbl_80048FEC /* 80048FE0 00044C40 80 03 00 04 */ lwz r0, 4(r3) /* 80048FE4 00044C44 7C 00 2A 14 */ add r0, r0, r5 /* 80048FE8 00044C48 90 04 00 44 */ stw r0, 0x44(r4) lbl_80048FEC: /* 80048FEC 00044C4C 80 64 00 44 */ lwz r3, 0x44(r4) /* 80048FF0 00044C50 48 19 B9 81 */ bl func_801E4970 /* 80048FF4 00044C54 90 7F 00 48 */ stw r3, 0x48(r31) /* 80048FF8 00044C58 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80048FFC 00044C5C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049000 00044C60 7C 08 03 A6 */ mtlr r0 /* 80049004 00044C64 38 21 00 10 */ addi r1, r1, 0x10 /* 80049008 00044C68 4E 80 00 20 */ blr .global func_8004900C func_8004900C: /* 8004900C 00044C6C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80049010 00044C70 7C 08 02 A6 */ mflr r0 /* 80049014 00044C74 90 01 00 14 */ stw r0, 0x14(r1) /* 80049018 00044C78 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004901C 00044C7C 7C 9F 23 78 */ mr r31, r4 /* 80049020 00044C80 80 64 00 48 */ lwz r3, 0x48(r4) /* 80049024 00044C84 2C 03 00 00 */ cmpwi r3, 0 /* 80049028 00044C88 41 82 00 1C */ beq lbl_80049044 /* 8004902C 00044C8C 38 80 00 00 */ li r4, 0 /* 80049030 00044C90 48 19 BB 9D */ bl func_801E4BCC /* 80049034 00044C94 80 7F 00 48 */ lwz r3, 0x48(r31) /* 80049038 00044C98 48 19 BA 4D */ bl func_801E4A84 /* 8004903C 00044C9C 38 00 00 00 */ li r0, 0 /* 80049040 00044CA0 90 1F 00 48 */ stw r0, 0x48(r31) lbl_80049044: /* 80049044 00044CA4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049048 00044CA8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004904C 00044CAC 7C 08 03 A6 */ mtlr r0 /* 80049050 00044CB0 38 21 00 10 */ addi r1, r1, 0x10 /* 80049054 00044CB4 4E 80 00 20 */ blr .global cGame_GetGameTime cGame_GetGameTime: /* 80049058 00044CB8 80 63 00 94 */ lwz r3, 0x94(r3) /* 8004905C 00044CBC C0 23 00 1C */ lfs f1, 0x1c(r3) /* 80049060 00044CC0 4E 80 00 20 */ blr .global func_80049064 func_80049064: /* 80049064 00044CC4 38 A0 00 01 */ li r5, 1 /* 80049068 00044CC8 38 6D 98 10 */ addi r3, r13, lbl_8063EAD0-_SDA_BASE_ /* 8004906C 00044CCC 38 80 00 04 */ li r4, 4 /* 80049070 00044CD0 38 00 00 00 */ li r0, 0 /* 80049074 00044CD4 98 AD 98 10 */ stb r5, lbl_8063EAD0-_SDA_BASE_(r13) /* 80049078 00044CD8 B0 83 00 02 */ sth r4, 2(r3) /* 8004907C 00044CDC 98 03 00 04 */ stb r0, 4(r3) /* 80049080 00044CE0 4E 80 00 20 */ blr .global func_80049084 func_80049084: /* 80049084 00044CE4 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049088 00044CE8 3C 80 80 41 */ lis r4, lbl_8040A6E8@ha /* 8004908C 00044CEC 38 00 00 00 */ li r0, 0 /* 80049090 00044CF0 38 84 A6 E8 */ addi r4, r4, lbl_8040A6E8@l /* 80049094 00044CF4 D0 03 00 0C */ stfs f0, 0xc(r3) /* 80049098 00044CF8 90 83 00 28 */ stw r4, 0x28(r3) /* 8004909C 00044CFC 90 03 00 08 */ stw r0, 8(r3) /* 800490A0 00044D00 90 03 00 00 */ stw r0, 0(r3) /* 800490A4 00044D04 90 03 00 04 */ stw r0, 4(r3) /* 800490A8 00044D08 90 03 00 1C */ stw r0, 0x1c(r3) /* 800490AC 00044D0C 90 03 00 24 */ stw r0, 0x24(r3) /* 800490B0 00044D10 4E 80 00 20 */ blr .global func_800490B4 func_800490B4: /* 800490B4 00044D14 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800490B8 00044D18 7C 08 02 A6 */ mflr r0 /* 800490BC 00044D1C 2C 03 00 00 */ cmpwi r3, 0 /* 800490C0 00044D20 90 01 00 14 */ stw r0, 0x14(r1) /* 800490C4 00044D24 93 E1 00 0C */ stw r31, 0xc(r1) /* 800490C8 00044D28 7C 9F 23 78 */ mr r31, r4 /* 800490CC 00044D2C 93 C1 00 08 */ stw r30, 8(r1) /* 800490D0 00044D30 7C 7E 1B 78 */ mr r30, r3 /* 800490D4 00044D34 41 82 00 2C */ beq lbl_80049100 /* 800490D8 00044D38 3D 80 80 41 */ lis r12, lbl_8040A6E8@ha /* 800490DC 00044D3C 39 8C A6 E8 */ addi r12, r12, lbl_8040A6E8@l /* 800490E0 00044D40 91 83 00 28 */ stw r12, 0x28(r3) /* 800490E4 00044D44 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 800490E8 00044D48 7D 89 03 A6 */ mtctr r12 /* 800490EC 00044D4C 4E 80 04 21 */ bctrl /* 800490F0 00044D50 2C 1F 00 00 */ cmpwi r31, 0 /* 800490F4 00044D54 40 81 00 0C */ ble lbl_80049100 /* 800490F8 00044D58 7F C3 F3 78 */ mr r3, r30 /* 800490FC 00044D5C 48 19 19 BD */ bl func_801DAAB8 lbl_80049100: /* 80049100 00044D60 7F C3 F3 78 */ mr r3, r30 /* 80049104 00044D64 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80049108 00044D68 83 C1 00 08 */ lwz r30, 8(r1) /* 8004910C 00044D6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049110 00044D70 7C 08 03 A6 */ mtlr r0 /* 80049114 00044D74 38 21 00 10 */ addi r1, r1, 0x10 /* 80049118 00044D78 4E 80 00 20 */ blr .global func_8004911C func_8004911C: /* 8004911C 00044D7C 38 00 00 00 */ li r0, 0 /* 80049120 00044D80 90 03 00 1C */ stw r0, 0x1c(r3) /* 80049124 00044D84 4E 80 00 20 */ blr .global func_80049128 func_80049128: /* 80049128 00044D88 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004912C 00044D8C 7C 08 02 A6 */ mflr r0 /* 80049130 00044D90 90 01 00 14 */ stw r0, 0x14(r1) /* 80049134 00044D94 38 00 00 00 */ li r0, 0 /* 80049138 00044D98 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004913C 00044D9C 7C BF 2B 78 */ mr r31, r5 /* 80049140 00044DA0 93 C1 00 08 */ stw r30, 8(r1) /* 80049144 00044DA4 7C 7E 1B 78 */ mr r30, r3 /* 80049148 00044DA8 90 83 00 14 */ stw r4, 0x14(r3) /* 8004914C 00044DAC 90 03 00 1C */ stw r0, 0x1c(r3) /* 80049150 00044DB0 88 A4 00 0D */ lbz r5, 0xd(r4) /* 80049154 00044DB4 90 A3 00 24 */ stw r5, 0x24(r3) /* 80049158 00044DB8 80 04 00 00 */ lwz r0, 0(r4) /* 8004915C 00044DBC 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80049160 00044DC0 41 82 00 3C */ beq lbl_8004919C /* 80049164 00044DC4 54 A0 07 FF */ clrlwi. r0, r5, 0x1f /* 80049168 00044DC8 41 82 00 0C */ beq lbl_80049174 /* 8004916C 00044DCC 60 A0 00 40 */ ori r0, r5, 0x40 /* 80049170 00044DD0 90 03 00 24 */ stw r0, 0x24(r3) lbl_80049174: /* 80049174 00044DD4 80 A3 00 24 */ lwz r5, 0x24(r3) /* 80049178 00044DD8 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e /* 8004917C 00044DDC 41 82 00 0C */ beq lbl_80049188 /* 80049180 00044DE0 60 A0 00 80 */ ori r0, r5, 0x80 /* 80049184 00044DE4 90 03 00 24 */ stw r0, 0x24(r3) lbl_80049188: /* 80049188 00044DE8 80 A3 00 24 */ lwz r5, 0x24(r3) /* 8004918C 00044DEC 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d /* 80049190 00044DF0 41 82 00 0C */ beq lbl_8004919C /* 80049194 00044DF4 60 A0 01 00 */ ori r0, r5, 0x100 /* 80049198 00044DF8 90 03 00 24 */ stw r0, 0x24(r3) lbl_8004919C: /* 8004919C 00044DFC 80 A3 00 24 */ lwz r5, 0x24(r3) /* 800491A0 00044E00 54 A0 07 FF */ clrlwi. r0, r5, 0x1f /* 800491A4 00044E04 40 82 00 0C */ bne lbl_800491B0 /* 800491A8 00044E08 60 A0 00 09 */ ori r0, r5, 9 /* 800491AC 00044E0C 90 03 00 24 */ stw r0, 0x24(r3) lbl_800491B0: /* 800491B0 00044E10 80 A3 00 24 */ lwz r5, 0x24(r3) /* 800491B4 00044E14 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e /* 800491B8 00044E18 40 82 00 0C */ bne lbl_800491C4 /* 800491BC 00044E1C 60 A0 00 12 */ ori r0, r5, 0x12 /* 800491C0 00044E20 90 03 00 24 */ stw r0, 0x24(r3) lbl_800491C4: /* 800491C4 00044E24 81 9E 00 28 */ lwz r12, 0x28(r30) /* 800491C8 00044E28 7F C3 F3 78 */ mr r3, r30 /* 800491CC 00044E2C 7F E5 FB 78 */ mr r5, r31 /* 800491D0 00044E30 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800491D4 00044E34 7D 89 03 A6 */ mtctr r12 /* 800491D8 00044E38 4E 80 04 21 */ bctrl /* 800491DC 00044E3C 93 FE 00 18 */ stw r31, 0x18(r30) /* 800491E0 00044E40 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800491E4 00044E44 83 C1 00 08 */ lwz r30, 8(r1) /* 800491E8 00044E48 80 01 00 14 */ lwz r0, 0x14(r1) /* 800491EC 00044E4C 7C 08 03 A6 */ mtlr r0 /* 800491F0 00044E50 38 21 00 10 */ addi r1, r1, 0x10 /* 800491F4 00044E54 4E 80 00 20 */ blr /* 800491F8 00044E58 4E 80 00 20 */ blr /* 800491FC 00044E5C 80 63 00 14 */ lwz r3, 0x14(r3) /* 80049200 00044E60 2C 03 00 00 */ cmpwi r3, 0 /* 80049204 00044E64 40 82 00 0C */ bne lbl_80049210 /* 80049208 00044E68 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 8004920C 00044E6C 4E 80 00 20 */ blr lbl_80049210: /* 80049210 00044E70 C0 23 00 04 */ lfs f1, 4(r3) /* 80049214 00044E74 4E 80 00 20 */ blr .global func_80049218 func_80049218: /* 80049218 00044E78 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004921C 00044E7C 7C 08 02 A6 */ mflr r0 /* 80049220 00044E80 90 01 00 14 */ stw r0, 0x14(r1) /* 80049224 00044E84 93 E1 00 0C */ stw r31, 0xc(r1) /* 80049228 00044E88 7C 7F 1B 78 */ mr r31, r3 /* 8004922C 00044E8C 80 83 00 08 */ lwz r4, 8(r3) /* 80049230 00044E90 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 80049234 00044E94 40 82 00 34 */ bne lbl_80049268 /* 80049238 00044E98 60 80 00 01 */ ori r0, r4, 1 /* 8004923C 00044E9C 90 03 00 08 */ stw r0, 8(r3) /* 80049240 00044EA0 81 83 00 28 */ lwz r12, 0x28(r3) /* 80049244 00044EA4 81 8C 00 08 */ lwz r12, 8(r12) /* 80049248 00044EA8 7D 89 03 A6 */ mtctr r12 /* 8004924C 00044EAC 4E 80 04 21 */ bctrl /* 80049250 00044EB0 81 9F 00 28 */ lwz r12, 0x28(r31) /* 80049254 00044EB4 7F E3 FB 78 */ mr r3, r31 /* 80049258 00044EB8 81 8C 00 24 */ lwz r12, 0x24(r12) /* 8004925C 00044EBC 7D 89 03 A6 */ mtctr r12 /* 80049260 00044EC0 4E 80 04 21 */ bctrl /* 80049264 00044EC4 D0 3F 00 10 */ stfs f1, 0x10(r31) lbl_80049268: /* 80049268 00044EC8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004926C 00044ECC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80049270 00044ED0 7C 08 03 A6 */ mtlr r0 /* 80049274 00044ED4 38 21 00 10 */ addi r1, r1, 0x10 /* 80049278 00044ED8 4E 80 00 20 */ blr /* 8004927C 00044EDC 4E 80 00 20 */ blr .global func_80049280 func_80049280: /* 80049280 00044EE0 80 83 00 08 */ lwz r4, 8(r3) /* 80049284 00044EE4 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 80049288 00044EE8 4D 82 00 20 */ beqlr /* 8004928C 00044EEC 54 80 00 3C */ rlwinm r0, r4, 0, 0, 0x1e /* 80049290 00044EF0 60 00 00 02 */ ori r0, r0, 2 /* 80049294 00044EF4 90 03 00 08 */ stw r0, 8(r3) /* 80049298 00044EF8 81 83 00 28 */ lwz r12, 0x28(r3) /* 8004929C 00044EFC 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800492A0 00044F00 7D 89 03 A6 */ mtctr r12 /* 800492A4 00044F04 4E 80 04 20 */ bctr /* 800492A8 00044F08 4E 80 00 20 */ blr /* 800492AC 00044F0C 4E 80 00 20 */ blr .global func_800492B0 func_800492B0: /* 800492B0 00044F10 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800492B4 00044F14 7C 08 02 A6 */ mflr r0 /* 800492B8 00044F18 90 01 00 14 */ stw r0, 0x14(r1) /* 800492BC 00044F1C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800492C0 00044F20 7C 7F 1B 78 */ mr r31, r3 /* 800492C4 00044F24 80 83 00 08 */ lwz r4, 8(r3) /* 800492C8 00044F28 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 800492CC 00044F2C 41 82 00 54 */ beq lbl_80049320 /* 800492D0 00044F30 C0 42 83 D0 */ lfs f2, lbl_806409D0-_SDA2_BASE_(r2) /* 800492D4 00044F34 C0 03 00 10 */ lfs f0, 0x10(r3) /* 800492D8 00044F38 FC 02 00 00 */ fcmpu cr0, f2, f0 /* 800492DC 00044F3C 40 82 00 10 */ bne lbl_800492EC /* 800492E0 00044F40 54 80 00 3C */ rlwinm r0, r4, 0, 0, 0x1e /* 800492E4 00044F44 90 03 00 08 */ stw r0, 8(r3) /* 800492E8 00044F48 48 00 00 38 */ b lbl_80049320 lbl_800492EC: /* 800492EC 00044F4C EC 00 08 28 */ fsubs f0, f0, f1 /* 800492F0 00044F50 D0 03 00 10 */ stfs f0, 0x10(r3) /* 800492F4 00044F54 81 83 00 28 */ lwz r12, 0x28(r3) /* 800492F8 00044F58 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800492FC 00044F5C 7D 89 03 A6 */ mtctr r12 /* 80049300 00044F60 4E 80 04 21 */ bctrl /* 80049304 00044F64 C0 3F 00 10 */ lfs f1, 0x10(r31) /* 80049308 00044F68 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004930C 00044F6C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049310 00044F70 4C 40 13 82 */ cror 2, 0, 2 /* 80049314 00044F74 40 82 00 0C */ bne lbl_80049320 /* 80049318 00044F78 7F E3 FB 78 */ mr r3, r31 /* 8004931C 00044F7C 4B FF FF 65 */ bl func_80049280 lbl_80049320: /* 80049320 00044F80 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049324 00044F84 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80049328 00044F88 7C 08 03 A6 */ mtlr r0 /* 8004932C 00044F8C 38 21 00 10 */ addi r1, r1, 0x10 /* 80049330 00044F90 4E 80 00 20 */ blr /* 80049334 00044F94 4E 80 00 20 */ blr .global func_80049338 func_80049338: /* 80049338 00044F98 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004933C 00044F9C 7C 08 02 A6 */ mflr r0 /* 80049340 00044FA0 90 01 00 34 */ stw r0, 0x34(r1) /* 80049344 00044FA4 39 61 00 30 */ addi r11, r1, 0x30 /* 80049348 00044FA8 48 17 DD D5 */ bl _savegpr_24 /* 8004934C 00044FAC 7C 7C 1B 78 */ mr r28, r3 /* 80049350 00044FB0 7C 83 23 78 */ mr r3, r4 /* 80049354 00044FB4 A3 5C 00 DE */ lhz r26, 0xde(r28) /* 80049358 00044FB8 7C BD 2B 78 */ mr r29, r5 /* 8004935C 00044FBC 48 17 D8 09 */ bl strlen /* 80049360 00044FC0 2C 1C 00 00 */ cmpwi r28, 0 /* 80049364 00044FC4 7C 7F 1B 78 */ mr r31, r3 /* 80049368 00044FC8 40 82 00 0C */ bne lbl_80049374 /* 8004936C 00044FCC 38 60 00 00 */ li r3, 0 /* 80049370 00044FD0 48 00 01 00 */ b lbl_80049470 lbl_80049374: /* 80049374 00044FD4 3B C0 00 00 */ li r30, 0 /* 80049378 00044FD8 3F 60 80 41 */ lis r27, 0x8041 /* 8004937C 00044FDC 48 00 00 E4 */ b lbl_80049460 lbl_80049380: /* 80049380 00044FE0 80 9C 00 08 */ lwz r4, 8(r28) /* 80049384 00044FE4 2C 04 00 00 */ cmpwi r4, 0 /* 80049388 00044FE8 40 82 00 0C */ bne lbl_80049394 /* 8004938C 00044FEC 3B 20 00 00 */ li r25, 0 /* 80049390 00044FF0 48 00 00 24 */ b lbl_800493B4 lbl_80049394: /* 80049394 00044FF4 A0 1C 00 DE */ lhz r0, 0xde(r28) /* 80049398 00044FF8 57 C3 04 3E */ clrlwi r3, r30, 0x10 /* 8004939C 00044FFC 7C 03 00 40 */ cmplw r3, r0 /* 800493A0 00045000 41 80 00 0C */ blt lbl_800493AC /* 800493A4 00045004 3B 20 00 00 */ li r25, 0 /* 800493A8 00045008 48 00 00 0C */ b lbl_800493B4 lbl_800493AC: /* 800493AC 0004500C 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d /* 800493B0 00045010 7F 24 00 2E */ lwzx r25, r4, r0 lbl_800493B4: /* 800493B4 00045014 2C 19 00 00 */ cmpwi r25, 0 /* 800493B8 00045018 41 82 00 A4 */ beq lbl_8004945C /* 800493BC 0004501C 80 79 00 1C */ lwz r3, 0x1c(r25) /* 800493C0 00045020 2C 03 00 00 */ cmpwi r3, 0 /* 800493C4 00045024 41 82 00 0C */ beq lbl_800493D0 /* 800493C8 00045028 83 03 00 04 */ lwz r24, 4(r3) /* 800493CC 0004502C 48 00 00 08 */ b lbl_800493D4 lbl_800493D0: /* 800493D0 00045030 3B 00 00 00 */ li r24, 0 lbl_800493D4: /* 800493D4 00045034 7F 03 C3 78 */ mr r3, r24 /* 800493D8 00045038 7F E5 FB 78 */ mr r5, r31 /* 800493DC 0004503C 38 9B A4 D0 */ addi r4, r27, -23344 /* 800493E0 00045040 48 18 51 89 */ bl strncmp /* 800493E4 00045044 2C 03 00 00 */ cmpwi r3, 0 /* 800493E8 00045048 40 82 00 74 */ bne lbl_8004945C /* 800493EC 0004504C 2C 1D 00 00 */ cmpwi r29, 0 /* 800493F0 00045050 40 80 00 0C */ bge lbl_800493FC /* 800493F4 00045054 7F 23 CB 78 */ mr r3, r25 /* 800493F8 00045058 48 00 00 78 */ b lbl_80049470 lbl_800493FC: /* 800493FC 0004505C 7C 98 FA 14 */ add r4, r24, r31 /* 80049400 00045060 38 A0 00 00 */ li r5, 0 /* 80049404 00045064 48 00 00 34 */ b lbl_80049438 lbl_80049408: /* 80049408 00045068 7C 63 07 74 */ extsb r3, r3 /* 8004940C 0004506C 2C 03 00 30 */ cmpwi r3, 0x30 /* 80049410 00045070 41 80 00 1C */ blt lbl_8004942C /* 80049414 00045074 2C 03 00 39 */ cmpwi r3, 0x39 /* 80049418 00045078 41 81 00 14 */ bgt lbl_8004942C /* 8004941C 0004507C 1C 05 00 0A */ mulli r0, r5, 0xa /* 80049420 00045080 7C 63 02 14 */ add r3, r3, r0 /* 80049424 00045084 38 A3 FF D0 */ addi r5, r3, -48 /* 80049428 00045088 48 00 00 0C */ b lbl_80049434 lbl_8004942C: /* 8004942C 0004508C 38 A0 FF FF */ li r5, -1 /* 80049430 00045090 48 00 00 14 */ b lbl_80049444 lbl_80049434: /* 80049434 00045094 38 84 00 01 */ addi r4, r4, 1 lbl_80049438: /* 80049438 00045098 88 64 00 00 */ lbz r3, 0(r4) /* 8004943C 0004509C 7C 60 07 75 */ extsb. r0, r3 /* 80049440 000450A0 40 82 FF C8 */ bne lbl_80049408 lbl_80049444: /* 80049444 000450A4 2C 05 00 00 */ cmpwi r5, 0 /* 80049448 000450A8 41 80 00 14 */ blt lbl_8004945C /* 8004944C 000450AC 7C 05 E8 00 */ cmpw r5, r29 /* 80049450 000450B0 40 82 00 0C */ bne lbl_8004945C /* 80049454 000450B4 7F 23 CB 78 */ mr r3, r25 /* 80049458 000450B8 48 00 00 18 */ b lbl_80049470 lbl_8004945C: /* 8004945C 000450BC 3B DE 00 01 */ addi r30, r30, 1 lbl_80049460: /* 80049460 000450C0 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 80049464 000450C4 7C 00 D0 40 */ cmplw r0, r26 /* 80049468 000450C8 41 80 FF 18 */ blt lbl_80049380 /* 8004946C 000450CC 38 60 00 00 */ li r3, 0 lbl_80049470: /* 80049470 000450D0 39 61 00 30 */ addi r11, r1, 0x30 /* 80049474 000450D4 48 17 DC F5 */ bl _restgpr_24 /* 80049478 000450D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004947C 000450DC 7C 08 03 A6 */ mtlr r0 /* 80049480 000450E0 38 21 00 30 */ addi r1, r1, 0x30 /* 80049484 000450E4 4E 80 00 20 */ blr .global func_80049488 func_80049488: /* 80049488 000450E8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004948C 000450EC 7C 08 02 A6 */ mflr r0 /* 80049490 000450F0 90 01 00 14 */ stw r0, 0x14(r1) /* 80049494 000450F4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80049498 000450F8 7C 7F 1B 78 */ mr r31, r3 /* 8004949C 000450FC 4B FF FB E9 */ bl func_80049084 /* 800494A0 00045100 3C 80 80 41 */ lis r4, lbl_8040A698@ha /* 800494A4 00045104 38 00 00 00 */ li r0, 0 /* 800494A8 00045108 38 84 A6 98 */ addi r4, r4, lbl_8040A698@l /* 800494AC 0004510C 98 1F 00 38 */ stb r0, 0x38(r31) /* 800494B0 00045110 7F E3 FB 78 */ mr r3, r31 /* 800494B4 00045114 90 9F 00 28 */ stw r4, 0x28(r31) /* 800494B8 00045118 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800494BC 0004511C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800494C0 00045120 7C 08 03 A6 */ mtlr r0 /* 800494C4 00045124 38 21 00 10 */ addi r1, r1, 0x10 /* 800494C8 00045128 4E 80 00 20 */ blr /* 800494CC 0004512C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800494D0 00045130 7C 08 02 A6 */ mflr r0 /* 800494D4 00045134 2C 03 00 00 */ cmpwi r3, 0 /* 800494D8 00045138 90 01 00 14 */ stw r0, 0x14(r1) /* 800494DC 0004513C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800494E0 00045140 7C 9F 23 78 */ mr r31, r4 /* 800494E4 00045144 93 C1 00 08 */ stw r30, 8(r1) /* 800494E8 00045148 7C 7E 1B 78 */ mr r30, r3 /* 800494EC 0004514C 41 82 00 38 */ beq lbl_80049524 /* 800494F0 00045150 3D 80 80 41 */ lis r12, lbl_8040A698@ha /* 800494F4 00045154 39 8C A6 98 */ addi r12, r12, lbl_8040A698@l /* 800494F8 00045158 91 83 00 28 */ stw r12, 0x28(r3) /* 800494FC 0004515C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 80049500 00045160 7D 89 03 A6 */ mtctr r12 /* 80049504 00045164 4E 80 04 21 */ bctrl /* 80049508 00045168 7F C3 F3 78 */ mr r3, r30 /* 8004950C 0004516C 38 80 00 00 */ li r4, 0 /* 80049510 00045170 4B FF FB A5 */ bl func_800490B4 /* 80049514 00045174 2C 1F 00 00 */ cmpwi r31, 0 /* 80049518 00045178 40 81 00 0C */ ble lbl_80049524 /* 8004951C 0004517C 7F C3 F3 78 */ mr r3, r30 /* 80049520 00045180 48 19 15 99 */ bl func_801DAAB8 lbl_80049524: /* 80049524 00045184 7F C3 F3 78 */ mr r3, r30 /* 80049528 00045188 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004952C 0004518C 83 C1 00 08 */ lwz r30, 8(r1) /* 80049530 00045190 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049534 00045194 7C 08 03 A6 */ mtlr r0 /* 80049538 00045198 38 21 00 10 */ addi r1, r1, 0x10 /* 8004953C 0004519C 4E 80 00 20 */ blr /* 80049540 000451A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80049544 000451A4 7C 08 02 A6 */ mflr r0 /* 80049548 000451A8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004954C 000451AC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80049550 000451B0 7C 7F 1B 78 */ mr r31, r3 /* 80049554 000451B4 80 03 00 2C */ lwz r0, 0x2c(r3) /* 80049558 000451B8 2C 00 00 00 */ cmpwi r0, 0 /* 8004955C 000451BC 41 82 00 1C */ beq lbl_80049578 /* 80049560 000451C0 7C 03 03 78 */ mr r3, r0 /* 80049564 000451C4 38 80 00 01 */ li r4, 1 /* 80049568 000451C8 48 1B 0D 2D */ bl func_801FA294 /* 8004956C 000451CC 38 00 00 00 */ li r0, 0 /* 80049570 000451D0 90 1F 00 2C */ stw r0, 0x2c(r31) /* 80049574 000451D4 90 1F 00 30 */ stw r0, 0x30(r31) lbl_80049578: /* 80049578 000451D8 7F E3 FB 78 */ mr r3, r31 /* 8004957C 000451DC 4B FF FB A1 */ bl func_8004911C /* 80049580 000451E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049584 000451E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80049588 000451E8 7C 08 03 A6 */ mtlr r0 /* 8004958C 000451EC 38 21 00 10 */ addi r1, r1, 0x10 /* 80049590 000451F0 4E 80 00 20 */ blr /* 80049594 000451F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80049598 000451F8 7C 08 02 A6 */ mflr r0 /* 8004959C 000451FC 90 01 00 24 */ stw r0, 0x24(r1) /* 800495A0 00045200 39 61 00 20 */ addi r11, r1, 0x20 /* 800495A4 00045204 48 17 DB 81 */ bl _savegpr_26 /* 800495A8 00045208 7C 7F 1B 78 */ mr r31, r3 /* 800495AC 0004520C 7C 9A 23 78 */ mr r26, r4 /* 800495B0 00045210 48 19 15 79 */ bl func_801DAB28 /* 800495B4 00045214 2C 03 00 00 */ cmpwi r3, 0 /* 800495B8 00045218 41 82 00 14 */ beq lbl_800495CC /* 800495BC 0004521C 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 800495C0 00045220 38 80 00 14 */ li r4, 0x14 /* 800495C4 00045224 48 19 16 D1 */ bl func_801DAC94 /* 800495C8 00045228 48 00 00 08 */ b lbl_800495D0 lbl_800495CC: /* 800495CC 0004522C 38 60 00 00 */ li r3, 0 lbl_800495D0: /* 800495D0 00045230 2C 03 00 00 */ cmpwi r3, 0 /* 800495D4 00045234 41 82 00 0C */ beq lbl_800495E0 /* 800495D8 00045238 80 9A 00 48 */ lwz r4, 0x48(r26) /* 800495DC 0004523C 48 1B 0A B9 */ bl func_801FA094 lbl_800495E0: /* 800495E0 00045240 38 00 00 00 */ li r0, 0 /* 800495E4 00045244 2C 03 00 00 */ cmpwi r3, 0 /* 800495E8 00045248 90 7F 00 2C */ stw r3, 0x2c(r31) /* 800495EC 0004524C 90 1F 00 30 */ stw r0, 0x30(r31) /* 800495F0 00045250 90 1F 00 34 */ stw r0, 0x34(r31) /* 800495F4 00045254 41 82 00 E4 */ beq lbl_800496D8 /* 800495F8 00045258 80 83 00 04 */ lwz r4, 4(r3) /* 800495FC 0004525C 2C 04 00 00 */ cmpwi r4, 0 /* 80049600 00045260 40 82 00 0C */ bne lbl_8004960C /* 80049604 00045264 38 00 00 00 */ li r0, 0 /* 80049608 00045268 48 00 00 20 */ b lbl_80049628 lbl_8004960C: /* 8004960C 0004526C 80 63 00 00 */ lwz r3, 0(r3) /* 80049610 00045270 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80049614 00045274 2C 00 00 00 */ cmpwi r0, 0 /* 80049618 00045278 40 82 00 0C */ bne lbl_80049624 /* 8004961C 0004527C 38 00 00 00 */ li r0, 0 /* 80049620 00045280 48 00 00 08 */ b lbl_80049628 lbl_80049624: /* 80049624 00045284 80 04 00 00 */ lwz r0, 0(r4) lbl_80049628: /* 80049628 00045288 90 1F 00 30 */ stw r0, 0x30(r31) /* 8004962C 0004528C 38 8D 80 E8 */ addi r4, r13, lbl_8063D3A8-_SDA_BASE_ /* 80049630 00045290 80 7A 00 2C */ lwz r3, 0x2c(r26) /* 80049634 00045294 48 18 4E 19 */ bl strcmp /* 80049638 00045298 2C 03 00 00 */ cmpwi r3, 0 /* 8004963C 0004529C 40 82 00 0C */ bne lbl_80049648 /* 80049640 000452A0 38 00 00 01 */ li r0, 1 /* 80049644 000452A4 98 1F 00 38 */ stb r0, 0x38(r31) lbl_80049648: /* 80049648 000452A8 83 7F 00 30 */ lwz r27, 0x30(r31) /* 8004964C 000452AC 3B 40 00 00 */ li r26, 0 /* 80049650 000452B0 3F C0 80 41 */ lis r30, 0x8041 /* 80049654 000452B4 A3 BB 00 DE */ lhz r29, 0xde(r27) /* 80049658 000452B8 48 00 00 74 */ b lbl_800496CC lbl_8004965C: /* 8004965C 000452BC 80 9B 00 08 */ lwz r4, 8(r27) /* 80049660 000452C0 2C 04 00 00 */ cmpwi r4, 0 /* 80049664 000452C4 40 82 00 0C */ bne lbl_80049670 /* 80049668 000452C8 3B 80 00 00 */ li r28, 0 /* 8004966C 000452CC 48 00 00 24 */ b lbl_80049690 lbl_80049670: /* 80049670 000452D0 A0 1B 00 DE */ lhz r0, 0xde(r27) /* 80049674 000452D4 57 43 04 3E */ clrlwi r3, r26, 0x10 /* 80049678 000452D8 7C 03 00 40 */ cmplw r3, r0 /* 8004967C 000452DC 41 80 00 0C */ blt lbl_80049688 /* 80049680 000452E0 3B 80 00 00 */ li r28, 0 /* 80049684 000452E4 48 00 00 0C */ b lbl_80049690 lbl_80049688: /* 80049688 000452E8 57 40 13 BA */ rlwinm r0, r26, 2, 0xe, 0x1d /* 8004968C 000452EC 7F 84 00 2E */ lwzx r28, r4, r0 lbl_80049690: /* 80049690 000452F0 2C 1C 00 00 */ cmpwi r28, 0 /* 80049694 000452F4 41 82 00 34 */ beq lbl_800496C8 /* 80049698 000452F8 80 7C 00 1C */ lwz r3, 0x1c(r28) /* 8004969C 000452FC 2C 03 00 00 */ cmpwi r3, 0 /* 800496A0 00045300 41 82 00 0C */ beq lbl_800496AC /* 800496A4 00045304 80 63 00 04 */ lwz r3, 4(r3) /* 800496A8 00045308 48 00 00 08 */ b lbl_800496B0 lbl_800496AC: /* 800496AC 0004530C 38 60 00 00 */ li r3, 0 lbl_800496B0: /* 800496B0 00045310 38 9E A4 DC */ addi r4, r30, -23332 /* 800496B4 00045314 48 18 4D 99 */ bl strcmp /* 800496B8 00045318 2C 03 00 00 */ cmpwi r3, 0 /* 800496BC 0004531C 40 82 00 0C */ bne lbl_800496C8 /* 800496C0 00045320 93 9F 00 34 */ stw r28, 0x34(r31) /* 800496C4 00045324 48 00 00 14 */ b lbl_800496D8 lbl_800496C8: /* 800496C8 00045328 3B 5A 00 01 */ addi r26, r26, 1 lbl_800496CC: /* 800496CC 0004532C 57 40 04 3E */ clrlwi r0, r26, 0x10 /* 800496D0 00045330 7C 00 E8 40 */ cmplw r0, r29 /* 800496D4 00045334 41 80 FF 88 */ blt lbl_8004965C lbl_800496D8: /* 800496D8 00045338 39 61 00 20 */ addi r11, r1, 0x20 /* 800496DC 0004533C 48 17 DA 95 */ bl _restgpr_26 /* 800496E0 00045340 80 01 00 24 */ lwz r0, 0x24(r1) /* 800496E4 00045344 7C 08 03 A6 */ mtlr r0 /* 800496E8 00045348 38 21 00 20 */ addi r1, r1, 0x20 /* 800496EC 0004534C 4E 80 00 20 */ blr /* 800496F0 00045350 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800496F4 00045354 7C 08 02 A6 */ mflr r0 /* 800496F8 00045358 90 01 00 34 */ stw r0, 0x34(r1) /* 800496FC 0004535C 39 61 00 30 */ addi r11, r1, 0x30 /* 80049700 00045360 48 17 DA 21 */ bl _savegpr_25 /* 80049704 00045364 80 83 00 14 */ lwz r4, 0x14(r3) /* 80049708 00045368 7C 7E 1B 78 */ mr r30, r3 /* 8004970C 0004536C 80 04 00 00 */ lwz r0, 0(r4) /* 80049710 00045370 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 80049714 00045374 41 82 01 38 */ beq lbl_8004984C /* 80049718 00045378 80 A4 00 1C */ lwz r5, 0x1c(r4) /* 8004971C 0004537C 2C 05 00 00 */ cmpwi r5, 0 /* 80049720 00045380 41 82 00 10 */ beq lbl_80049730 /* 80049724 00045384 A0 05 00 0A */ lhz r0, 0xa(r5) /* 80049728 00045388 28 00 00 01 */ cmplwi r0, 1 /* 8004972C 0004538C 40 82 01 20 */ bne lbl_8004984C lbl_80049730: /* 80049730 00045390 80 63 00 18 */ lwz r3, 0x18(r3) /* 80049734 00045394 A0 84 00 08 */ lhz r4, 8(r4) /* 80049738 00045398 4B FF E3 11 */ bl func_80047A48 /* 8004973C 0004539C 2C 03 00 00 */ cmpwi r3, 0 /* 80049740 000453A0 41 82 01 0C */ beq lbl_8004984C /* 80049744 000453A4 80 63 00 30 */ lwz r3, 0x30(r3) /* 80049748 000453A8 3B E0 00 00 */ li r31, 0 /* 8004974C 000453AC 3F A0 80 41 */ lis r29, 0x8041 /* 80049750 000453B0 A3 83 00 DE */ lhz r28, 0xde(r3) /* 80049754 000453B4 48 00 00 EC */ b lbl_80049840 lbl_80049758: /* 80049758 000453B8 80 7E 00 30 */ lwz r3, 0x30(r30) /* 8004975C 000453BC 80 83 00 08 */ lwz r4, 8(r3) /* 80049760 000453C0 2C 04 00 00 */ cmpwi r4, 0 /* 80049764 000453C4 40 82 00 0C */ bne lbl_80049770 /* 80049768 000453C8 3B 60 00 00 */ li r27, 0 /* 8004976C 000453CC 48 00 00 24 */ b lbl_80049790 lbl_80049770: /* 80049770 000453D0 A0 03 00 DE */ lhz r0, 0xde(r3) /* 80049774 000453D4 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 80049778 000453D8 7C 03 00 40 */ cmplw r3, r0 /* 8004977C 000453DC 41 80 00 0C */ blt lbl_80049788 /* 80049780 000453E0 3B 60 00 00 */ li r27, 0 /* 80049784 000453E4 48 00 00 0C */ b lbl_80049790 lbl_80049788: /* 80049788 000453E8 57 E0 13 BA */ rlwinm r0, r31, 2, 0xe, 0x1d /* 8004978C 000453EC 7F 64 00 2E */ lwzx r27, r4, r0 lbl_80049790: /* 80049790 000453F0 2C 1B 00 00 */ cmpwi r27, 0 /* 80049794 000453F4 41 82 00 A8 */ beq lbl_8004983C /* 80049798 000453F8 80 7B 00 1C */ lwz r3, 0x1c(r27) /* 8004979C 000453FC 2C 03 00 00 */ cmpwi r3, 0 /* 800497A0 00045400 41 82 00 0C */ beq lbl_800497AC /* 800497A4 00045404 83 43 00 04 */ lwz r26, 4(r3) /* 800497A8 00045408 48 00 00 08 */ b lbl_800497B0 lbl_800497AC: /* 800497AC 0004540C 3B 40 00 00 */ li r26, 0 lbl_800497B0: /* 800497B0 00045410 38 7D A4 D0 */ addi r3, r29, -23344 /* 800497B4 00045414 48 17 D3 B1 */ bl strlen /* 800497B8 00045418 7C 79 1B 78 */ mr r25, r3 /* 800497BC 0004541C 7F 43 D3 78 */ mr r3, r26 /* 800497C0 00045420 7F 25 CB 78 */ mr r5, r25 /* 800497C4 00045424 38 9D A4 D0 */ addi r4, r29, -23344 /* 800497C8 00045428 48 18 4D A1 */ bl strncmp /* 800497CC 0004542C 2C 03 00 00 */ cmpwi r3, 0 /* 800497D0 00045430 40 82 00 6C */ bne lbl_8004983C /* 800497D4 00045434 7C 9A CA 14 */ add r4, r26, r25 /* 800497D8 00045438 38 A0 00 00 */ li r5, 0 /* 800497DC 0004543C 48 00 00 34 */ b lbl_80049810 lbl_800497E0: /* 800497E0 00045440 7C 63 07 74 */ extsb r3, r3 /* 800497E4 00045444 2C 03 00 30 */ cmpwi r3, 0x30 /* 800497E8 00045448 41 80 00 1C */ blt lbl_80049804 /* 800497EC 0004544C 2C 03 00 39 */ cmpwi r3, 0x39 /* 800497F0 00045450 41 81 00 14 */ bgt lbl_80049804 /* 800497F4 00045454 1C 05 00 0A */ mulli r0, r5, 0xa /* 800497F8 00045458 7C 63 02 14 */ add r3, r3, r0 /* 800497FC 0004545C 38 A3 FF D0 */ addi r5, r3, -48 /* 80049800 00045460 48 00 00 0C */ b lbl_8004980C lbl_80049804: /* 80049804 00045464 38 A0 FF FF */ li r5, -1 /* 80049808 00045468 48 00 00 14 */ b lbl_8004981C lbl_8004980C: /* 8004980C 0004546C 38 84 00 01 */ addi r4, r4, 1 lbl_80049810: /* 80049810 00045470 88 64 00 00 */ lbz r3, 0(r4) /* 80049814 00045474 7C 60 07 75 */ extsb. r0, r3 /* 80049818 00045478 40 82 FF C8 */ bne lbl_800497E0 lbl_8004981C: /* 8004981C 0004547C 2C 05 00 00 */ cmpwi r5, 0 /* 80049820 00045480 41 80 00 1C */ blt lbl_8004983C /* 80049824 00045484 80 7E 00 14 */ lwz r3, 0x14(r30) /* 80049828 00045488 88 03 00 0C */ lbz r0, 0xc(r3) /* 8004982C 0004548C 7C 05 00 00 */ cmpw r5, r0 /* 80049830 00045490 40 82 00 0C */ bne lbl_8004983C /* 80049834 00045494 93 7E 00 1C */ stw r27, 0x1c(r30) /* 80049838 00045498 48 00 00 14 */ b lbl_8004984C lbl_8004983C: /* 8004983C 0004549C 3B FF 00 01 */ addi r31, r31, 1 lbl_80049840: /* 80049840 000454A0 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 80049844 000454A4 7C 00 E0 40 */ cmplw r0, r28 /* 80049848 000454A8 41 80 FF 10 */ blt lbl_80049758 lbl_8004984C: /* 8004984C 000454AC 39 61 00 30 */ addi r11, r1, 0x30 /* 80049850 000454B0 48 17 D9 1D */ bl _restgpr_25 /* 80049854 000454B4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80049858 000454B8 7C 08 03 A6 */ mtlr r0 /* 8004985C 000454BC 38 21 00 30 */ addi r1, r1, 0x30 /* 80049860 000454C0 4E 80 00 20 */ blr /* 80049864 000454C4 80 83 00 14 */ lwz r4, 0x14(r3) /* 80049868 000454C8 2C 04 00 00 */ cmpwi r4, 0 /* 8004986C 000454CC 40 82 00 0C */ bne lbl_80049878 /* 80049870 000454D0 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 80049874 000454D4 4E 80 00 20 */ blr lbl_80049878: /* 80049878 000454D8 C0 24 00 04 */ lfs f1, 4(r4) /* 8004987C 000454DC C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049880 000454E0 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80049884 000454E4 40 82 00 80 */ bne lbl_80049904 /* 80049888 000454E8 80 63 00 2C */ lwz r3, 0x2c(r3) /* 8004988C 000454EC 2C 03 00 00 */ cmpwi r3, 0 /* 80049890 000454F0 41 82 00 74 */ beq lbl_80049904 /* 80049894 000454F4 80 A3 00 04 */ lwz r5, 4(r3) /* 80049898 000454F8 2C 05 00 00 */ cmpwi r5, 0 /* 8004989C 000454FC 40 82 00 0C */ bne lbl_800498A8 /* 800498A0 00045500 38 60 00 00 */ li r3, 0 /* 800498A4 00045504 48 00 00 20 */ b lbl_800498C4 lbl_800498A8: /* 800498A8 00045508 80 63 00 00 */ lwz r3, 0(r3) /* 800498AC 0004550C A0 03 00 18 */ lhz r0, 0x18(r3) /* 800498B0 00045510 2C 00 00 00 */ cmpwi r0, 0 /* 800498B4 00045514 40 82 00 0C */ bne lbl_800498C0 /* 800498B8 00045518 38 60 00 00 */ li r3, 0 /* 800498BC 0004551C 48 00 00 08 */ b lbl_800498C4 lbl_800498C0: /* 800498C0 00045520 80 65 00 00 */ lwz r3, 0(r5) lbl_800498C4: /* 800498C4 00045524 2C 03 00 00 */ cmpwi r3, 0 /* 800498C8 00045528 41 82 00 3C */ beq lbl_80049904 /* 800498CC 0004552C 80 63 00 04 */ lwz r3, 4(r3) /* 800498D0 00045530 2C 03 00 00 */ cmpwi r3, 0 /* 800498D4 00045534 40 82 00 0C */ bne lbl_800498E0 /* 800498D8 00045538 38 60 00 00 */ li r3, 0 /* 800498DC 0004553C 48 00 00 1C */ b lbl_800498F8 lbl_800498E0: /* 800498E0 00045540 A0 03 00 08 */ lhz r0, 8(r3) /* 800498E4 00045544 2C 00 00 00 */ cmpwi r0, 0 /* 800498E8 00045548 40 82 00 0C */ bne lbl_800498F4 /* 800498EC 0004554C 38 60 00 00 */ li r3, 0 /* 800498F0 00045550 48 00 00 08 */ b lbl_800498F8 lbl_800498F4: /* 800498F4 00045554 80 63 00 0C */ lwz r3, 0xc(r3) lbl_800498F8: /* 800498F8 00045558 2C 03 00 00 */ cmpwi r3, 0 /* 800498FC 0004555C 41 82 00 08 */ beq lbl_80049904 /* 80049900 00045560 C0 23 00 0C */ lfs f1, 0xc(r3) lbl_80049904: /* 80049904 00045564 80 04 00 38 */ lwz r0, 0x38(r4) /* 80049908 00045568 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8004990C 0004556C 4D 82 00 20 */ beqlr /* 80049910 00045570 C0 22 83 D4 */ lfs f1, lbl_806409D4-_SDA2_BASE_(r2) /* 80049914 00045574 4E 80 00 20 */ blr .global func_80049918 func_80049918: /* 80049918 00045578 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004991C 0004557C 7C 08 02 A6 */ mflr r0 /* 80049920 00045580 90 01 00 64 */ stw r0, 0x64(r1) /* 80049924 00045584 93 E1 00 5C */ stw r31, 0x5c(r1) /* 80049928 00045588 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004992C 0004558C 93 A1 00 54 */ stw r29, 0x54(r1) /* 80049930 00045590 93 81 00 50 */ stw r28, 0x50(r1) /* 80049934 00045594 7C 7C 1B 78 */ mr r28, r3 /* 80049938 00045598 80 03 00 30 */ lwz r0, 0x30(r3) /* 8004993C 0004559C 80 83 00 18 */ lwz r4, 0x18(r3) /* 80049940 000455A0 2C 00 00 00 */ cmpwi r0, 0 /* 80049944 000455A4 83 C3 00 14 */ lwz r30, 0x14(r3) /* 80049948 000455A8 83 E4 00 34 */ lwz r31, 0x34(r4) /* 8004994C 000455AC 41 82 07 8C */ beq lbl_8004A0D8 /* 80049950 000455B0 80 9E 00 00 */ lwz r4, 0(r30) /* 80049954 000455B4 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 80049958 000455B8 40 82 06 C4 */ bne lbl_8004A01C /* 8004995C 000455BC 2C 1F 00 00 */ cmpwi r31, 0 /* 80049960 000455C0 41 82 00 0C */ beq lbl_8004996C /* 80049964 000455C4 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e /* 80049968 000455C8 41 82 00 0C */ beq lbl_80049974 lbl_8004996C: /* 8004996C 000455CC 83 A3 00 1C */ lwz r29, 0x1c(r3) /* 80049970 000455D0 48 00 00 14 */ b lbl_80049984 lbl_80049974: /* 80049974 000455D4 88 9E 00 0C */ lbz r4, 0xc(r30) /* 80049978 000455D8 7F E3 FB 78 */ mr r3, r31 /* 8004997C 000455DC 4B FE FF 71 */ bl func_800398EC /* 80049980 000455E0 7C 7D 1B 78 */ mr r29, r3 lbl_80049984: /* 80049984 000455E4 2C 1D 00 00 */ cmpwi r29, 0 /* 80049988 000455E8 41 82 06 94 */ beq lbl_8004A01C /* 8004998C 000455EC 80 7C 00 14 */ lwz r3, 0x14(r28) /* 80049990 000455F0 88 03 00 0D */ lbz r0, 0xd(r3) /* 80049994 000455F4 28 00 00 07 */ cmplwi r0, 7 /* 80049998 000455F8 41 81 06 84 */ bgt lbl_8004A01C /* 8004999C 000455FC 3C 60 80 41 */ lis r3, lbl_8040A4E8@ha /* 800499A0 00045600 54 00 10 3A */ slwi r0, r0, 2 /* 800499A4 00045604 38 63 A4 E8 */ addi r3, r3, lbl_8040A4E8@l /* 800499A8 00045608 7C 63 00 2E */ lwzx r3, r3, r0 /* 800499AC 0004560C 7C 69 03 A6 */ mtctr r3 /* 800499B0 00045610 4E 80 04 20 */ bctr /* 800499B4 00045614 80 7C 00 30 */ lwz r3, 0x30(r28) /* 800499B8 00045618 C0 5D 00 DC */ lfs f2, 0xdc(r29) /* 800499BC 0004561C 80 63 00 08 */ lwz r3, 8(r3) /* 800499C0 00045620 C0 3D 00 EC */ lfs f1, 0xec(r29) /* 800499C4 00045624 C0 1D 00 FC */ lfs f0, 0xfc(r29) /* 800499C8 00045628 2C 03 00 00 */ cmpwi r3, 0 /* 800499CC 0004562C D0 41 00 38 */ stfs f2, 0x38(r1) /* 800499D0 00045630 D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800499D4 00045634 D0 01 00 40 */ stfs f0, 0x40(r1) /* 800499D8 00045638 41 82 06 44 */ beq lbl_8004A01C /* 800499DC 0004563C 80 63 00 00 */ lwz r3, 0(r3) /* 800499E0 00045640 2C 03 00 00 */ cmpwi r3, 0 /* 800499E4 00045644 41 82 06 38 */ beq lbl_8004A01C /* 800499E8 00045648 D0 43 00 20 */ stfs f2, 0x20(r3) /* 800499EC 0004564C 38 80 00 01 */ li r4, 1 /* 800499F0 00045650 D0 23 00 24 */ stfs f1, 0x24(r3) /* 800499F4 00045654 D0 03 00 28 */ stfs f0, 0x28(r3) /* 800499F8 00045658 48 1A 8C C1 */ bl func_801F26B8 /* 800499FC 0004565C 48 00 06 20 */ b lbl_8004A01C /* 80049A00 00045660 A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049A04 00045664 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80049A08 00045668 41 82 00 1C */ beq lbl_80049A24 /* 80049A0C 0004566C 38 7D 00 2C */ addi r3, r29, 0x2c /* 80049A10 00045670 38 9D 00 3C */ addi r4, r29, 0x3c /* 80049A14 00045674 48 1D 9C AD */ bl func_802236C0 /* 80049A18 00045678 A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049A1C 0004567C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049A20 00045680 B0 1D 00 10 */ sth r0, 0x10(r29) lbl_80049A24: /* 80049A24 00045684 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049A28 00045688 80 63 00 08 */ lwz r3, 8(r3) /* 80049A2C 0004568C 2C 03 00 00 */ cmpwi r3, 0 /* 80049A30 00045690 41 82 05 EC */ beq lbl_8004A01C /* 80049A34 00045694 80 63 00 00 */ lwz r3, 0(r3) /* 80049A38 00045698 2C 03 00 00 */ cmpwi r3, 0 /* 80049A3C 0004569C 41 82 05 E0 */ beq lbl_8004A01C /* 80049A40 000456A0 C0 1D 00 2C */ lfs f0, 0x2c(r29) /* 80049A44 000456A4 38 80 00 01 */ li r4, 1 /* 80049A48 000456A8 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80049A4C 000456AC C0 1D 00 30 */ lfs f0, 0x30(r29) /* 80049A50 000456B0 D0 03 00 30 */ stfs f0, 0x30(r3) /* 80049A54 000456B4 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 80049A58 000456B8 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80049A5C 000456BC C0 1D 00 38 */ lfs f0, 0x38(r29) /* 80049A60 000456C0 D0 03 00 38 */ stfs f0, 0x38(r3) /* 80049A64 000456C4 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80049A68 000456C8 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049A6C 000456CC B0 03 00 10 */ sth r0, 0x10(r3) /* 80049A70 000456D0 48 1A 8C 49 */ bl func_801F26B8 /* 80049A74 000456D4 48 00 05 A8 */ b lbl_8004A01C /* 80049A78 000456D8 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049A7C 000456DC 80 63 00 08 */ lwz r3, 8(r3) /* 80049A80 000456E0 2C 03 00 00 */ cmpwi r3, 0 /* 80049A84 000456E4 41 82 05 98 */ beq lbl_8004A01C /* 80049A88 000456E8 80 63 00 00 */ lwz r3, 0(r3) /* 80049A8C 000456EC 2C 03 00 00 */ cmpwi r3, 0 /* 80049A90 000456F0 41 82 05 8C */ beq lbl_8004A01C /* 80049A94 000456F4 C0 1D 00 48 */ lfs f0, 0x48(r29) /* 80049A98 000456F8 C0 42 83 D8 */ lfs f2, lbl_806409D8-_SDA2_BASE_(r2) /* 80049A9C 000456FC D0 03 00 48 */ stfs f0, 0x48(r3) /* 80049AA0 00045700 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80049AA4 00045704 C0 1D 00 4C */ lfs f0, 0x4c(r29) /* 80049AA8 00045708 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80049AAC 0004570C C0 1D 00 50 */ lfs f0, 0x50(r29) /* 80049AB0 00045710 D0 03 00 50 */ stfs f0, 0x50(r3) /* 80049AB4 00045714 40 80 00 2C */ bge lbl_80049AE0 /* 80049AB8 00045718 C0 23 00 48 */ lfs f1, 0x48(r3) /* 80049ABC 0004571C C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049AC0 00045720 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80049AC4 00045724 40 81 00 1C */ ble lbl_80049AE0 /* 80049AC8 00045728 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049ACC 0004572C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049AD0 00045730 40 80 00 08 */ bge lbl_80049AD8 /* 80049AD4 00045734 48 00 00 08 */ b lbl_80049ADC lbl_80049AD8: /* 80049AD8 00045738 FC 60 10 90 */ fmr f3, f2 lbl_80049ADC: /* 80049ADC 0004573C D0 63 00 48 */ stfs f3, 0x48(r3) lbl_80049AE0: /* 80049AE0 00045740 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 80049AE4 00045744 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049AE8 00045748 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049AEC 0004574C 40 80 00 28 */ bge lbl_80049B14 /* 80049AF0 00045750 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049AF4 00045754 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049AF8 00045758 40 81 00 1C */ ble lbl_80049B14 /* 80049AFC 0004575C C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049B00 00045760 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049B04 00045764 40 80 00 08 */ bge lbl_80049B0C /* 80049B08 00045768 48 00 00 08 */ b lbl_80049B10 lbl_80049B0C: /* 80049B0C 0004576C FC 60 08 90 */ fmr f3, f1 lbl_80049B10: /* 80049B10 00045770 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_80049B14: /* 80049B14 00045774 C0 43 00 50 */ lfs f2, 0x50(r3) /* 80049B18 00045778 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049B1C 0004577C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049B20 00045780 40 80 00 28 */ bge lbl_80049B48 /* 80049B24 00045784 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049B28 00045788 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049B2C 0004578C 40 81 00 1C */ ble lbl_80049B48 /* 80049B30 00045790 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049B34 00045794 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049B38 00045798 40 80 00 08 */ bge lbl_80049B40 /* 80049B3C 0004579C 48 00 00 08 */ b lbl_80049B44 lbl_80049B40: /* 80049B40 000457A0 FC 60 08 90 */ fmr f3, f1 lbl_80049B44: /* 80049B44 000457A4 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_80049B48: /* 80049B48 000457A8 38 80 00 01 */ li r4, 1 /* 80049B4C 000457AC 48 1A 8B 6D */ bl func_801F26B8 /* 80049B50 000457B0 48 00 04 CC */ b lbl_8004A01C /* 80049B54 000457B4 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049B58 000457B8 C0 5D 00 DC */ lfs f2, 0xdc(r29) /* 80049B5C 000457BC 80 63 00 08 */ lwz r3, 8(r3) /* 80049B60 000457C0 C0 3D 00 EC */ lfs f1, 0xec(r29) /* 80049B64 000457C4 C0 1D 00 FC */ lfs f0, 0xfc(r29) /* 80049B68 000457C8 2C 03 00 00 */ cmpwi r3, 0 /* 80049B6C 000457CC D0 41 00 2C */ stfs f2, 0x2c(r1) /* 80049B70 000457D0 D0 21 00 30 */ stfs f1, 0x30(r1) /* 80049B74 000457D4 D0 01 00 34 */ stfs f0, 0x34(r1) /* 80049B78 000457D8 41 82 00 24 */ beq lbl_80049B9C /* 80049B7C 000457DC 80 63 00 00 */ lwz r3, 0(r3) /* 80049B80 000457E0 2C 03 00 00 */ cmpwi r3, 0 /* 80049B84 000457E4 41 82 00 18 */ beq lbl_80049B9C /* 80049B88 000457E8 D0 43 00 20 */ stfs f2, 0x20(r3) /* 80049B8C 000457EC 38 80 00 01 */ li r4, 1 /* 80049B90 000457F0 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80049B94 000457F4 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80049B98 000457F8 48 1A 8B 21 */ bl func_801F26B8 lbl_80049B9C: /* 80049B9C 000457FC A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049BA0 00045800 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80049BA4 00045804 41 82 00 1C */ beq lbl_80049BC0 /* 80049BA8 00045808 38 7D 00 2C */ addi r3, r29, 0x2c /* 80049BAC 0004580C 38 9D 00 3C */ addi r4, r29, 0x3c /* 80049BB0 00045810 48 1D 9B 11 */ bl func_802236C0 /* 80049BB4 00045814 A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049BB8 00045818 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049BBC 0004581C B0 1D 00 10 */ sth r0, 0x10(r29) lbl_80049BC0: /* 80049BC0 00045820 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049BC4 00045824 80 63 00 08 */ lwz r3, 8(r3) /* 80049BC8 00045828 2C 03 00 00 */ cmpwi r3, 0 /* 80049BCC 0004582C 41 82 04 50 */ beq lbl_8004A01C /* 80049BD0 00045830 80 63 00 00 */ lwz r3, 0(r3) /* 80049BD4 00045834 2C 03 00 00 */ cmpwi r3, 0 /* 80049BD8 00045838 41 82 04 44 */ beq lbl_8004A01C /* 80049BDC 0004583C C0 1D 00 2C */ lfs f0, 0x2c(r29) /* 80049BE0 00045840 38 80 00 01 */ li r4, 1 /* 80049BE4 00045844 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80049BE8 00045848 C0 1D 00 30 */ lfs f0, 0x30(r29) /* 80049BEC 0004584C D0 03 00 30 */ stfs f0, 0x30(r3) /* 80049BF0 00045850 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 80049BF4 00045854 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80049BF8 00045858 C0 1D 00 38 */ lfs f0, 0x38(r29) /* 80049BFC 0004585C D0 03 00 38 */ stfs f0, 0x38(r3) /* 80049C00 00045860 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80049C04 00045864 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049C08 00045868 B0 03 00 10 */ sth r0, 0x10(r3) /* 80049C0C 0004586C 48 1A 8A AD */ bl func_801F26B8 /* 80049C10 00045870 48 00 04 0C */ b lbl_8004A01C /* 80049C14 00045874 A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049C18 00045878 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80049C1C 0004587C 41 82 00 1C */ beq lbl_80049C38 /* 80049C20 00045880 38 7D 00 2C */ addi r3, r29, 0x2c /* 80049C24 00045884 38 9D 00 3C */ addi r4, r29, 0x3c /* 80049C28 00045888 48 1D 9A 99 */ bl func_802236C0 /* 80049C2C 0004588C A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049C30 00045890 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049C34 00045894 B0 1D 00 10 */ sth r0, 0x10(r29) lbl_80049C38: /* 80049C38 00045898 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049C3C 0004589C 80 63 00 08 */ lwz r3, 8(r3) /* 80049C40 000458A0 2C 03 00 00 */ cmpwi r3, 0 /* 80049C44 000458A4 41 82 00 44 */ beq lbl_80049C88 /* 80049C48 000458A8 80 63 00 00 */ lwz r3, 0(r3) /* 80049C4C 000458AC 2C 03 00 00 */ cmpwi r3, 0 /* 80049C50 000458B0 41 82 00 38 */ beq lbl_80049C88 /* 80049C54 000458B4 C0 1D 00 2C */ lfs f0, 0x2c(r29) /* 80049C58 000458B8 38 80 00 01 */ li r4, 1 /* 80049C5C 000458BC D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80049C60 000458C0 C0 1D 00 30 */ lfs f0, 0x30(r29) /* 80049C64 000458C4 D0 03 00 30 */ stfs f0, 0x30(r3) /* 80049C68 000458C8 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 80049C6C 000458CC D0 03 00 34 */ stfs f0, 0x34(r3) /* 80049C70 000458D0 C0 1D 00 38 */ lfs f0, 0x38(r29) /* 80049C74 000458D4 D0 03 00 38 */ stfs f0, 0x38(r3) /* 80049C78 000458D8 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80049C7C 000458DC 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049C80 000458E0 B0 03 00 10 */ sth r0, 0x10(r3) /* 80049C84 000458E4 48 1A 8A 35 */ bl func_801F26B8 lbl_80049C88: /* 80049C88 000458E8 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049C8C 000458EC 80 63 00 08 */ lwz r3, 8(r3) /* 80049C90 000458F0 2C 03 00 00 */ cmpwi r3, 0 /* 80049C94 000458F4 41 82 03 88 */ beq lbl_8004A01C /* 80049C98 000458F8 80 63 00 00 */ lwz r3, 0(r3) /* 80049C9C 000458FC 2C 03 00 00 */ cmpwi r3, 0 /* 80049CA0 00045900 41 82 03 7C */ beq lbl_8004A01C /* 80049CA4 00045904 C0 1D 00 48 */ lfs f0, 0x48(r29) /* 80049CA8 00045908 C0 42 83 D8 */ lfs f2, lbl_806409D8-_SDA2_BASE_(r2) /* 80049CAC 0004590C D0 03 00 48 */ stfs f0, 0x48(r3) /* 80049CB0 00045910 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80049CB4 00045914 C0 1D 00 4C */ lfs f0, 0x4c(r29) /* 80049CB8 00045918 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80049CBC 0004591C C0 1D 00 50 */ lfs f0, 0x50(r29) /* 80049CC0 00045920 D0 03 00 50 */ stfs f0, 0x50(r3) /* 80049CC4 00045924 40 80 00 2C */ bge lbl_80049CF0 /* 80049CC8 00045928 C0 23 00 48 */ lfs f1, 0x48(r3) /* 80049CCC 0004592C C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049CD0 00045930 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80049CD4 00045934 40 81 00 1C */ ble lbl_80049CF0 /* 80049CD8 00045938 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049CDC 0004593C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049CE0 00045940 40 80 00 08 */ bge lbl_80049CE8 /* 80049CE4 00045944 48 00 00 08 */ b lbl_80049CEC lbl_80049CE8: /* 80049CE8 00045948 FC 60 10 90 */ fmr f3, f2 lbl_80049CEC: /* 80049CEC 0004594C D0 63 00 48 */ stfs f3, 0x48(r3) lbl_80049CF0: /* 80049CF0 00045950 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 80049CF4 00045954 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049CF8 00045958 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049CFC 0004595C 40 80 00 28 */ bge lbl_80049D24 /* 80049D00 00045960 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049D04 00045964 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049D08 00045968 40 81 00 1C */ ble lbl_80049D24 /* 80049D0C 0004596C C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049D10 00045970 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049D14 00045974 40 80 00 08 */ bge lbl_80049D1C /* 80049D18 00045978 48 00 00 08 */ b lbl_80049D20 lbl_80049D1C: /* 80049D1C 0004597C FC 60 08 90 */ fmr f3, f1 lbl_80049D20: /* 80049D20 00045980 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_80049D24: /* 80049D24 00045984 C0 43 00 50 */ lfs f2, 0x50(r3) /* 80049D28 00045988 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049D2C 0004598C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049D30 00045990 40 80 00 28 */ bge lbl_80049D58 /* 80049D34 00045994 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049D38 00045998 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049D3C 0004599C 40 81 00 1C */ ble lbl_80049D58 /* 80049D40 000459A0 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049D44 000459A4 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049D48 000459A8 40 80 00 08 */ bge lbl_80049D50 /* 80049D4C 000459AC 48 00 00 08 */ b lbl_80049D54 lbl_80049D50: /* 80049D50 000459B0 FC 60 08 90 */ fmr f3, f1 lbl_80049D54: /* 80049D54 000459B4 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_80049D58: /* 80049D58 000459B8 38 80 00 01 */ li r4, 1 /* 80049D5C 000459BC 48 1A 89 5D */ bl func_801F26B8 /* 80049D60 000459C0 48 00 02 BC */ b lbl_8004A01C /* 80049D64 000459C4 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049D68 000459C8 C0 5D 00 DC */ lfs f2, 0xdc(r29) /* 80049D6C 000459CC 80 63 00 08 */ lwz r3, 8(r3) /* 80049D70 000459D0 C0 3D 00 EC */ lfs f1, 0xec(r29) /* 80049D74 000459D4 C0 1D 00 FC */ lfs f0, 0xfc(r29) /* 80049D78 000459D8 2C 03 00 00 */ cmpwi r3, 0 /* 80049D7C 000459DC D0 41 00 20 */ stfs f2, 0x20(r1) /* 80049D80 000459E0 D0 21 00 24 */ stfs f1, 0x24(r1) /* 80049D84 000459E4 D0 01 00 28 */ stfs f0, 0x28(r1) /* 80049D88 000459E8 41 82 00 24 */ beq lbl_80049DAC /* 80049D8C 000459EC 80 63 00 00 */ lwz r3, 0(r3) /* 80049D90 000459F0 2C 03 00 00 */ cmpwi r3, 0 /* 80049D94 000459F4 41 82 00 18 */ beq lbl_80049DAC /* 80049D98 000459F8 D0 43 00 20 */ stfs f2, 0x20(r3) /* 80049D9C 000459FC 38 80 00 01 */ li r4, 1 /* 80049DA0 00045A00 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80049DA4 00045A04 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80049DA8 00045A08 48 1A 89 11 */ bl func_801F26B8 lbl_80049DAC: /* 80049DAC 00045A0C 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049DB0 00045A10 80 63 00 08 */ lwz r3, 8(r3) /* 80049DB4 00045A14 2C 03 00 00 */ cmpwi r3, 0 /* 80049DB8 00045A18 41 82 02 64 */ beq lbl_8004A01C /* 80049DBC 00045A1C 80 63 00 00 */ lwz r3, 0(r3) /* 80049DC0 00045A20 2C 03 00 00 */ cmpwi r3, 0 /* 80049DC4 00045A24 41 82 02 58 */ beq lbl_8004A01C /* 80049DC8 00045A28 C0 1D 00 48 */ lfs f0, 0x48(r29) /* 80049DCC 00045A2C C0 42 83 D8 */ lfs f2, lbl_806409D8-_SDA2_BASE_(r2) /* 80049DD0 00045A30 D0 03 00 48 */ stfs f0, 0x48(r3) /* 80049DD4 00045A34 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80049DD8 00045A38 C0 1D 00 4C */ lfs f0, 0x4c(r29) /* 80049DDC 00045A3C D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80049DE0 00045A40 C0 1D 00 50 */ lfs f0, 0x50(r29) /* 80049DE4 00045A44 D0 03 00 50 */ stfs f0, 0x50(r3) /* 80049DE8 00045A48 40 80 00 2C */ bge lbl_80049E14 /* 80049DEC 00045A4C C0 23 00 48 */ lfs f1, 0x48(r3) /* 80049DF0 00045A50 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049DF4 00045A54 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80049DF8 00045A58 40 81 00 1C */ ble lbl_80049E14 /* 80049DFC 00045A5C C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049E00 00045A60 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049E04 00045A64 40 80 00 08 */ bge lbl_80049E0C /* 80049E08 00045A68 48 00 00 08 */ b lbl_80049E10 lbl_80049E0C: /* 80049E0C 00045A6C FC 60 10 90 */ fmr f3, f2 lbl_80049E10: /* 80049E10 00045A70 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_80049E14: /* 80049E14 00045A74 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 80049E18 00045A78 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049E1C 00045A7C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049E20 00045A80 40 80 00 28 */ bge lbl_80049E48 /* 80049E24 00045A84 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049E28 00045A88 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049E2C 00045A8C 40 81 00 1C */ ble lbl_80049E48 /* 80049E30 00045A90 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049E34 00045A94 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049E38 00045A98 40 80 00 08 */ bge lbl_80049E40 /* 80049E3C 00045A9C 48 00 00 08 */ b lbl_80049E44 lbl_80049E40: /* 80049E40 00045AA0 FC 60 08 90 */ fmr f3, f1 lbl_80049E44: /* 80049E44 00045AA4 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_80049E48: /* 80049E48 00045AA8 C0 43 00 50 */ lfs f2, 0x50(r3) /* 80049E4C 00045AAC C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049E50 00045AB0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049E54 00045AB4 40 80 00 28 */ bge lbl_80049E7C /* 80049E58 00045AB8 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049E5C 00045ABC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049E60 00045AC0 40 81 00 1C */ ble lbl_80049E7C /* 80049E64 00045AC4 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049E68 00045AC8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049E6C 00045ACC 40 80 00 08 */ bge lbl_80049E74 /* 80049E70 00045AD0 48 00 00 08 */ b lbl_80049E78 lbl_80049E74: /* 80049E74 00045AD4 FC 60 08 90 */ fmr f3, f1 lbl_80049E78: /* 80049E78 00045AD8 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_80049E7C: /* 80049E7C 00045ADC 38 80 00 01 */ li r4, 1 /* 80049E80 00045AE0 48 1A 88 39 */ bl func_801F26B8 /* 80049E84 00045AE4 48 00 01 98 */ b lbl_8004A01C /* 80049E88 00045AE8 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049E8C 00045AEC C0 5D 00 DC */ lfs f2, 0xdc(r29) /* 80049E90 00045AF0 80 63 00 08 */ lwz r3, 8(r3) /* 80049E94 00045AF4 C0 3D 00 EC */ lfs f1, 0xec(r29) /* 80049E98 00045AF8 C0 1D 00 FC */ lfs f0, 0xfc(r29) /* 80049E9C 00045AFC 2C 03 00 00 */ cmpwi r3, 0 /* 80049EA0 00045B00 D0 41 00 14 */ stfs f2, 0x14(r1) /* 80049EA4 00045B04 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80049EA8 00045B08 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80049EAC 00045B0C 41 82 00 24 */ beq lbl_80049ED0 /* 80049EB0 00045B10 80 63 00 00 */ lwz r3, 0(r3) /* 80049EB4 00045B14 2C 03 00 00 */ cmpwi r3, 0 /* 80049EB8 00045B18 41 82 00 18 */ beq lbl_80049ED0 /* 80049EBC 00045B1C D0 43 00 20 */ stfs f2, 0x20(r3) /* 80049EC0 00045B20 38 80 00 01 */ li r4, 1 /* 80049EC4 00045B24 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80049EC8 00045B28 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80049ECC 00045B2C 48 1A 87 ED */ bl func_801F26B8 lbl_80049ED0: /* 80049ED0 00045B30 A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049ED4 00045B34 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80049ED8 00045B38 41 82 00 1C */ beq lbl_80049EF4 /* 80049EDC 00045B3C 38 7D 00 2C */ addi r3, r29, 0x2c /* 80049EE0 00045B40 38 9D 00 3C */ addi r4, r29, 0x3c /* 80049EE4 00045B44 48 1D 97 DD */ bl func_802236C0 /* 80049EE8 00045B48 A0 1D 00 10 */ lhz r0, 0x10(r29) /* 80049EEC 00045B4C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049EF0 00045B50 B0 1D 00 10 */ sth r0, 0x10(r29) lbl_80049EF4: /* 80049EF4 00045B54 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049EF8 00045B58 80 63 00 08 */ lwz r3, 8(r3) /* 80049EFC 00045B5C 2C 03 00 00 */ cmpwi r3, 0 /* 80049F00 00045B60 41 82 00 44 */ beq lbl_80049F44 /* 80049F04 00045B64 80 63 00 00 */ lwz r3, 0(r3) /* 80049F08 00045B68 2C 03 00 00 */ cmpwi r3, 0 /* 80049F0C 00045B6C 41 82 00 38 */ beq lbl_80049F44 /* 80049F10 00045B70 C0 1D 00 2C */ lfs f0, 0x2c(r29) /* 80049F14 00045B74 38 80 00 01 */ li r4, 1 /* 80049F18 00045B78 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80049F1C 00045B7C C0 1D 00 30 */ lfs f0, 0x30(r29) /* 80049F20 00045B80 D0 03 00 30 */ stfs f0, 0x30(r3) /* 80049F24 00045B84 C0 1D 00 34 */ lfs f0, 0x34(r29) /* 80049F28 00045B88 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80049F2C 00045B8C C0 1D 00 38 */ lfs f0, 0x38(r29) /* 80049F30 00045B90 D0 03 00 38 */ stfs f0, 0x38(r3) /* 80049F34 00045B94 A0 03 00 10 */ lhz r0, 0x10(r3) /* 80049F38 00045B98 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 80049F3C 00045B9C B0 03 00 10 */ sth r0, 0x10(r3) /* 80049F40 00045BA0 48 1A 87 79 */ bl func_801F26B8 lbl_80049F44: /* 80049F44 00045BA4 80 7C 00 30 */ lwz r3, 0x30(r28) /* 80049F48 00045BA8 80 63 00 08 */ lwz r3, 8(r3) /* 80049F4C 00045BAC 2C 03 00 00 */ cmpwi r3, 0 /* 80049F50 00045BB0 41 82 00 CC */ beq lbl_8004A01C /* 80049F54 00045BB4 80 63 00 00 */ lwz r3, 0(r3) /* 80049F58 00045BB8 2C 03 00 00 */ cmpwi r3, 0 /* 80049F5C 00045BBC 41 82 00 C0 */ beq lbl_8004A01C /* 80049F60 00045BC0 C0 1D 00 48 */ lfs f0, 0x48(r29) /* 80049F64 00045BC4 C0 42 83 D8 */ lfs f2, lbl_806409D8-_SDA2_BASE_(r2) /* 80049F68 00045BC8 D0 03 00 48 */ stfs f0, 0x48(r3) /* 80049F6C 00045BCC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80049F70 00045BD0 C0 1D 00 4C */ lfs f0, 0x4c(r29) /* 80049F74 00045BD4 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80049F78 00045BD8 C0 1D 00 50 */ lfs f0, 0x50(r29) /* 80049F7C 00045BDC D0 03 00 50 */ stfs f0, 0x50(r3) /* 80049F80 00045BE0 40 80 00 2C */ bge lbl_80049FAC /* 80049F84 00045BE4 C0 23 00 48 */ lfs f1, 0x48(r3) /* 80049F88 00045BE8 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049F8C 00045BEC FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80049F90 00045BF0 40 81 00 1C */ ble lbl_80049FAC /* 80049F94 00045BF4 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049F98 00045BF8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80049F9C 00045BFC 40 80 00 08 */ bge lbl_80049FA4 /* 80049FA0 00045C00 48 00 00 08 */ b lbl_80049FA8 lbl_80049FA4: /* 80049FA4 00045C04 FC 60 10 90 */ fmr f3, f2 lbl_80049FA8: /* 80049FA8 00045C08 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_80049FAC: /* 80049FAC 00045C0C C0 43 00 4C */ lfs f2, 0x4c(r3) /* 80049FB0 00045C10 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049FB4 00045C14 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049FB8 00045C18 40 80 00 28 */ bge lbl_80049FE0 /* 80049FBC 00045C1C C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049FC0 00045C20 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049FC4 00045C24 40 81 00 1C */ ble lbl_80049FE0 /* 80049FC8 00045C28 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 80049FCC 00045C2C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80049FD0 00045C30 40 80 00 08 */ bge lbl_80049FD8 /* 80049FD4 00045C34 48 00 00 08 */ b lbl_80049FDC lbl_80049FD8: /* 80049FD8 00045C38 FC 60 08 90 */ fmr f3, f1 lbl_80049FDC: /* 80049FDC 00045C3C D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_80049FE0: /* 80049FE0 00045C40 C0 43 00 50 */ lfs f2, 0x50(r3) /* 80049FE4 00045C44 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 80049FE8 00045C48 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80049FEC 00045C4C 40 80 00 28 */ bge lbl_8004A014 /* 80049FF0 00045C50 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 80049FF4 00045C54 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80049FF8 00045C58 40 81 00 1C */ ble lbl_8004A014 /* 80049FFC 00045C5C C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A000 00045C60 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004A004 00045C64 40 80 00 08 */ bge lbl_8004A00C /* 8004A008 00045C68 48 00 00 08 */ b lbl_8004A010 lbl_8004A00C: /* 8004A00C 00045C6C FC 60 08 90 */ fmr f3, f1 lbl_8004A010: /* 8004A010 00045C70 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8004A014: /* 8004A014 00045C74 38 80 00 01 */ li r4, 1 /* 8004A018 00045C78 48 1A 86 A1 */ bl func_801F26B8 lbl_8004A01C: /* 8004A01C 00045C7C 2C 1F 00 00 */ cmpwi r31, 0 /* 8004A020 00045C80 41 82 00 74 */ beq lbl_8004A094 /* 8004A024 00045C84 80 1E 00 38 */ lwz r0, 0x38(r30) /* 8004A028 00045C88 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8004A02C 00045C8C 41 82 00 68 */ beq lbl_8004A094 /* 8004A030 00045C90 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8004A034 00045C94 2C 03 00 00 */ cmpwi r3, 0 /* 8004A038 00045C98 41 82 00 0C */ beq lbl_8004A044 /* 8004A03C 00045C9C 38 83 01 20 */ addi r4, r3, 0x120 /* 8004A040 00045CA0 48 00 00 08 */ b lbl_8004A048 lbl_8004A044: /* 8004A044 00045CA4 38 80 00 00 */ li r4, 0 lbl_8004A048: /* 8004A048 00045CA8 2C 04 00 00 */ cmpwi r4, 0 /* 8004A04C 00045CAC 41 82 00 48 */ beq lbl_8004A094 /* 8004A050 00045CB0 38 61 00 08 */ addi r3, r1, 8 /* 8004A054 00045CB4 48 1D 68 C9 */ bl func_8022091C /* 8004A058 00045CB8 80 7C 00 30 */ lwz r3, 0x30(r28) /* 8004A05C 00045CBC 80 63 00 08 */ lwz r3, 8(r3) /* 8004A060 00045CC0 2C 03 00 00 */ cmpwi r3, 0 /* 8004A064 00045CC4 41 82 00 30 */ beq lbl_8004A094 /* 8004A068 00045CC8 80 63 00 00 */ lwz r3, 0(r3) /* 8004A06C 00045CCC 2C 03 00 00 */ cmpwi r3, 0 /* 8004A070 00045CD0 41 82 00 24 */ beq lbl_8004A094 /* 8004A074 00045CD4 C0 01 00 08 */ lfs f0, 8(r1) /* 8004A078 00045CD8 38 80 00 01 */ li r4, 1 /* 8004A07C 00045CDC D0 03 00 20 */ stfs f0, 0x20(r3) /* 8004A080 00045CE0 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8004A084 00045CE4 D0 03 00 24 */ stfs f0, 0x24(r3) /* 8004A088 00045CE8 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004A08C 00045CEC D0 03 00 28 */ stfs f0, 0x28(r3) /* 8004A090 00045CF0 48 1A 86 29 */ bl func_801F26B8 lbl_8004A094: /* 8004A094 00045CF4 80 1E 00 38 */ lwz r0, 0x38(r30) /* 8004A098 00045CF8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004A09C 00045CFC 41 82 00 3C */ beq lbl_8004A0D8 /* 8004A0A0 00045D00 80 7C 00 34 */ lwz r3, 0x34(r28) /* 8004A0A4 00045D04 2C 03 00 00 */ cmpwi r3, 0 /* 8004A0A8 00045D08 41 82 00 30 */ beq lbl_8004A0D8 /* 8004A0AC 00045D0C C0 03 00 DC */ lfs f0, 0xdc(r3) /* 8004A0B0 00045D10 2C 1F 00 00 */ cmpwi r31, 0 /* 8004A0B4 00045D14 D0 01 00 44 */ stfs f0, 0x44(r1) /* 8004A0B8 00045D18 C0 03 00 EC */ lfs f0, 0xec(r3) /* 8004A0BC 00045D1C D0 01 00 48 */ stfs f0, 0x48(r1) /* 8004A0C0 00045D20 C0 03 00 FC */ lfs f0, 0xfc(r3) /* 8004A0C4 00045D24 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 8004A0C8 00045D28 41 82 00 10 */ beq lbl_8004A0D8 /* 8004A0CC 00045D2C 7F E3 FB 78 */ mr r3, r31 /* 8004A0D0 00045D30 38 81 00 44 */ addi r4, r1, 0x44 /* 8004A0D4 00045D34 4B FE E7 49 */ bl func_8003881C lbl_8004A0D8: /* 8004A0D8 00045D38 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004A0DC 00045D3C 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8004A0E0 00045D40 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8004A0E4 00045D44 83 A1 00 54 */ lwz r29, 0x54(r1) /* 8004A0E8 00045D48 83 81 00 50 */ lwz r28, 0x50(r1) /* 8004A0EC 00045D4C 7C 08 03 A6 */ mtlr r0 /* 8004A0F0 00045D50 38 21 00 60 */ addi r1, r1, 0x60 /* 8004A0F4 00045D54 4E 80 00 20 */ blr /* 8004A0F8 00045D58 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004A0FC 00045D5C 7C 08 02 A6 */ mflr r0 /* 8004A100 00045D60 90 01 00 34 */ stw r0, 0x34(r1) /* 8004A104 00045D64 39 61 00 30 */ addi r11, r1, 0x30 /* 8004A108 00045D68 48 17 D0 21 */ bl _savegpr_27 /* 8004A10C 00045D6C 7C 7F 1B 78 */ mr r31, r3 /* 8004A110 00045D70 4B FE 8F 79 */ bl func_80033088 /* 8004A114 00045D74 80 9F 00 2C */ lwz r4, 0x2c(r31) /* 8004A118 00045D78 7C 7B 1B 78 */ mr r27, r3 /* 8004A11C 00045D7C 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004A120 00045D80 2C 04 00 00 */ cmpwi r4, 0 /* 8004A124 00045D84 83 DF 00 14 */ lwz r30, 0x14(r31) /* 8004A128 00045D88 83 83 00 34 */ lwz r28, 0x34(r3) /* 8004A12C 00045D8C 41 82 01 DC */ beq lbl_8004A308 /* 8004A130 00045D90 80 A4 00 04 */ lwz r5, 4(r4) /* 8004A134 00045D94 2C 05 00 00 */ cmpwi r5, 0 /* 8004A138 00045D98 40 82 00 0C */ bne lbl_8004A144 /* 8004A13C 00045D9C 3B A0 00 00 */ li r29, 0 /* 8004A140 00045DA0 48 00 00 20 */ b lbl_8004A160 lbl_8004A144: /* 8004A144 00045DA4 80 64 00 00 */ lwz r3, 0(r4) /* 8004A148 00045DA8 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8004A14C 00045DAC 2C 00 00 00 */ cmpwi r0, 0 /* 8004A150 00045DB0 40 82 00 0C */ bne lbl_8004A15C /* 8004A154 00045DB4 3B A0 00 00 */ li r29, 0 /* 8004A158 00045DB8 48 00 00 08 */ b lbl_8004A160 lbl_8004A15C: /* 8004A15C 00045DBC 83 A5 00 00 */ lwz r29, 0(r5) lbl_8004A160: /* 8004A160 00045DC0 2C 1D 00 00 */ cmpwi r29, 0 /* 8004A164 00045DC4 41 82 01 A4 */ beq lbl_8004A308 /* 8004A168 00045DC8 7F E3 FB 78 */ mr r3, r31 /* 8004A16C 00045DCC 38 80 00 01 */ li r4, 1 /* 8004A170 00045DD0 4B FF F7 A9 */ bl func_80049918 /* 8004A174 00045DD4 2C 1C 00 00 */ cmpwi r28, 0 /* 8004A178 00045DD8 41 82 00 14 */ beq lbl_8004A18C /* 8004A17C 00045DDC 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004A180 00045DE0 80 03 00 00 */ lwz r0, 0(r3) /* 8004A184 00045DE4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8004A188 00045DE8 41 82 00 0C */ beq lbl_8004A194 lbl_8004A18C: /* 8004A18C 00045DEC C0 22 83 E0 */ lfs f1, lbl_806409E0-_SDA2_BASE_(r2) /* 8004A190 00045DF0 48 00 00 0C */ b lbl_8004A19C lbl_8004A194: /* 8004A194 00045DF4 7F 83 E3 78 */ mr r3, r28 /* 8004A198 00045DF8 4B FE F6 25 */ bl func_800397BC lbl_8004A19C: /* 8004A19C 00045DFC 80 7D 00 08 */ lwz r3, 8(r29) /* 8004A1A0 00045E00 D0 21 00 08 */ stfs f1, 8(r1) /* 8004A1A4 00045E04 2C 03 00 00 */ cmpwi r3, 0 /* 8004A1A8 00045E08 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004A1AC 00045E0C D0 21 00 10 */ stfs f1, 0x10(r1) /* 8004A1B0 00045E10 41 82 00 C4 */ beq lbl_8004A274 /* 8004A1B4 00045E14 80 63 00 00 */ lwz r3, 0(r3) /* 8004A1B8 00045E18 2C 03 00 00 */ cmpwi r3, 0 /* 8004A1BC 00045E1C 41 82 00 B8 */ beq lbl_8004A274 /* 8004A1C0 00045E20 FC 00 08 18 */ frsp f0, f1 /* 8004A1C4 00045E24 C0 42 83 D8 */ lfs f2, lbl_806409D8-_SDA2_BASE_(r2) /* 8004A1C8 00045E28 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8004A1CC 00045E2C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8004A1D0 00045E30 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8004A1D4 00045E34 D0 03 00 50 */ stfs f0, 0x50(r3) /* 8004A1D8 00045E38 40 80 00 2C */ bge lbl_8004A204 /* 8004A1DC 00045E3C C0 23 00 48 */ lfs f1, 0x48(r3) /* 8004A1E0 00045E40 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 8004A1E4 00045E44 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8004A1E8 00045E48 40 81 00 1C */ ble lbl_8004A204 /* 8004A1EC 00045E4C C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A1F0 00045E50 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004A1F4 00045E54 40 80 00 08 */ bge lbl_8004A1FC /* 8004A1F8 00045E58 48 00 00 08 */ b lbl_8004A200 lbl_8004A1FC: /* 8004A1FC 00045E5C FC 60 10 90 */ fmr f3, f2 lbl_8004A200: /* 8004A200 00045E60 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_8004A204: /* 8004A204 00045E64 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 8004A208 00045E68 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 8004A20C 00045E6C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004A210 00045E70 40 80 00 28 */ bge lbl_8004A238 /* 8004A214 00045E74 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 8004A218 00045E78 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8004A21C 00045E7C 40 81 00 1C */ ble lbl_8004A238 /* 8004A220 00045E80 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A224 00045E84 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004A228 00045E88 40 80 00 08 */ bge lbl_8004A230 /* 8004A22C 00045E8C 48 00 00 08 */ b lbl_8004A234 lbl_8004A230: /* 8004A230 00045E90 FC 60 08 90 */ fmr f3, f1 lbl_8004A234: /* 8004A234 00045E94 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8004A238: /* 8004A238 00045E98 C0 43 00 50 */ lfs f2, 0x50(r3) /* 8004A23C 00045E9C C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 8004A240 00045EA0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004A244 00045EA4 40 80 00 28 */ bge lbl_8004A26C /* 8004A248 00045EA8 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 8004A24C 00045EAC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8004A250 00045EB0 40 81 00 1C */ ble lbl_8004A26C /* 8004A254 00045EB4 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A258 00045EB8 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004A25C 00045EBC 40 80 00 08 */ bge lbl_8004A264 /* 8004A260 00045EC0 48 00 00 08 */ b lbl_8004A268 lbl_8004A264: /* 8004A264 00045EC4 FC 60 08 90 */ fmr f3, f1 lbl_8004A268: /* 8004A268 00045EC8 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8004A26C: /* 8004A26C 00045ECC 38 80 00 01 */ li r4, 1 /* 8004A270 00045ED0 48 1A 84 49 */ bl func_801F26B8 lbl_8004A274: /* 8004A274 00045ED4 88 9E 00 3D */ lbz r4, 0x3d(r30) /* 8004A278 00045ED8 7F A3 EB 78 */ mr r3, r29 /* 8004A27C 00045EDC 48 1A BD F5 */ bl func_801F6070 /* 8004A280 00045EE0 88 9E 00 3C */ lbz r4, 0x3c(r30) /* 8004A284 00045EE4 7F A3 EB 78 */ mr r3, r29 /* 8004A288 00045EE8 88 BE 00 3D */ lbz r5, 0x3d(r30) /* 8004A28C 00045EEC 38 C0 00 00 */ li r6, 0 /* 8004A290 00045EF0 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A294 00045EF4 38 E0 00 00 */ li r7, 0 /* 8004A298 00045EF8 C0 42 83 E0 */ lfs f2, lbl_806409E0-_SDA2_BASE_(r2) /* 8004A29C 00045EFC 39 00 00 00 */ li r8, 0 /* 8004A2A0 00045F00 48 1A AB 55 */ bl func_801F4DF4 /* 8004A2A4 00045F04 88 1F 00 38 */ lbz r0, 0x38(r31) /* 8004A2A8 00045F08 2C 00 00 00 */ cmpwi r0, 0 /* 8004A2AC 00045F0C 41 82 00 40 */ beq lbl_8004A2EC /* 8004A2B0 00045F10 2C 1B 00 00 */ cmpwi r27, 0 /* 8004A2B4 00045F14 41 82 00 38 */ beq lbl_8004A2EC /* 8004A2B8 00045F18 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004A2BC 00045F1C 7F 63 DB 78 */ mr r3, r27 /* 8004A2C0 00045F20 80 04 00 20 */ lwz r0, 0x20(r4) /* 8004A2C4 00045F24 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8004A2C8 00045F28 4B FE 98 B5 */ bl func_80033B7C /* 8004A2CC 00045F2C 2C 03 00 00 */ cmpwi r3, 0 /* 8004A2D0 00045F30 7C 7C 1B 78 */ mr r28, r3 /* 8004A2D4 00045F34 41 82 00 18 */ beq lbl_8004A2EC /* 8004A2D8 00045F38 7F A4 EB 78 */ mr r4, r29 /* 8004A2DC 00045F3C 4B FE B7 6D */ bl func_80035A48 /* 8004A2E0 00045F40 7F 83 E3 78 */ mr r3, r28 /* 8004A2E4 00045F44 38 80 00 00 */ li r4, 0 /* 8004A2E8 00045F48 4B FE B7 69 */ bl func_80035A50 lbl_8004A2EC: /* 8004A2EC 00045F4C 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004A2F0 00045F50 80 03 00 38 */ lwz r0, 0x38(r3) /* 8004A2F4 00045F54 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8004A2F8 00045F58 41 82 00 10 */ beq lbl_8004A308 /* 8004A2FC 00045F5C 80 1F 00 08 */ lwz r0, 8(r31) /* 8004A300 00045F60 60 00 00 02 */ ori r0, r0, 2 /* 8004A304 00045F64 90 1F 00 08 */ stw r0, 8(r31) lbl_8004A308: /* 8004A308 00045F68 39 61 00 30 */ addi r11, r1, 0x30 /* 8004A30C 00045F6C 48 17 CE 69 */ bl _restgpr_27 /* 8004A310 00045F70 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004A314 00045F74 7C 08 03 A6 */ mtlr r0 /* 8004A318 00045F78 38 21 00 30 */ addi r1, r1, 0x30 /* 8004A31C 00045F7C 4E 80 00 20 */ blr /* 8004A320 00045F80 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A324 00045F84 7C 08 02 A6 */ mflr r0 /* 8004A328 00045F88 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A32C 00045F8C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A330 00045F90 93 C1 00 08 */ stw r30, 8(r1) /* 8004A334 00045F94 7C 7E 1B 78 */ mr r30, r3 /* 8004A338 00045F98 4B FE 8D 51 */ bl func_80033088 /* 8004A33C 00045F9C 80 1E 00 30 */ lwz r0, 0x30(r30) /* 8004A340 00045FA0 7C 7F 1B 78 */ mr r31, r3 /* 8004A344 00045FA4 2C 00 00 00 */ cmpwi r0, 0 /* 8004A348 00045FA8 41 82 00 1C */ beq lbl_8004A364 /* 8004A34C 00045FAC 7C 03 03 78 */ mr r3, r0 /* 8004A350 00045FB0 48 1A B4 C5 */ bl func_801F5814 /* 8004A354 00045FB4 80 7E 00 30 */ lwz r3, 0x30(r30) /* 8004A358 00045FB8 A0 03 00 DC */ lhz r0, 0xdc(r3) /* 8004A35C 00045FBC 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 8004A360 00045FC0 B0 03 00 DC */ sth r0, 0xdc(r3) lbl_8004A364: /* 8004A364 00045FC4 88 1E 00 38 */ lbz r0, 0x38(r30) /* 8004A368 00045FC8 2C 00 00 00 */ cmpwi r0, 0 /* 8004A36C 00045FCC 41 82 00 2C */ beq lbl_8004A398 /* 8004A370 00045FD0 2C 1F 00 00 */ cmpwi r31, 0 /* 8004A374 00045FD4 41 82 00 24 */ beq lbl_8004A398 /* 8004A378 00045FD8 80 9E 00 18 */ lwz r4, 0x18(r30) /* 8004A37C 00045FDC 7F E3 FB 78 */ mr r3, r31 /* 8004A380 00045FE0 80 04 00 20 */ lwz r0, 0x20(r4) /* 8004A384 00045FE4 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8004A388 00045FE8 4B FE 97 F5 */ bl func_80033B7C /* 8004A38C 00045FEC 2C 03 00 00 */ cmpwi r3, 0 /* 8004A390 00045FF0 41 82 00 08 */ beq lbl_8004A398 /* 8004A394 00045FF4 4B FE B7 25 */ bl func_80035AB8 lbl_8004A398: /* 8004A398 00045FF8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A39C 00045FFC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A3A0 00046000 83 C1 00 08 */ lwz r30, 8(r1) /* 8004A3A4 00046004 7C 08 03 A6 */ mtlr r0 /* 8004A3A8 00046008 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A3AC 0004600C 4E 80 00 20 */ blr /* 8004A3B0 00046010 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004A3B4 00046014 80 04 00 00 */ lwz r0, 0(r4) /* 8004A3B8 00046018 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8004A3BC 0004601C 4C 82 00 20 */ bnelr /* 8004A3C0 00046020 38 80 00 00 */ li r4, 0 /* 8004A3C4 00046024 4B FF F5 54 */ b func_80049918 /* 8004A3C8 00046028 4E 80 00 20 */ blr .global func_8004A3CC func_8004A3CC: /* 8004A3CC 0004602C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A3D0 00046030 7C 08 02 A6 */ mflr r0 /* 8004A3D4 00046034 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A3D8 00046038 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A3DC 0004603C 7C 7F 1B 78 */ mr r31, r3 /* 8004A3E0 00046040 4B FF EC A5 */ bl func_80049084 /* 8004A3E4 00046044 3C 80 80 41 */ lis r4, lbl_8040A648@ha /* 8004A3E8 00046048 7F E3 FB 78 */ mr r3, r31 /* 8004A3EC 0004604C 38 84 A6 48 */ addi r4, r4, lbl_8040A648@l /* 8004A3F0 00046050 90 9F 00 28 */ stw r4, 0x28(r31) /* 8004A3F4 00046054 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A3F8 00046058 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A3FC 0004605C 7C 08 03 A6 */ mtlr r0 /* 8004A400 00046060 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A404 00046064 4E 80 00 20 */ blr /* 8004A408 00046068 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A40C 0004606C 7C 08 02 A6 */ mflr r0 /* 8004A410 00046070 2C 03 00 00 */ cmpwi r3, 0 /* 8004A414 00046074 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A418 00046078 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A41C 0004607C 7C 9F 23 78 */ mr r31, r4 /* 8004A420 00046080 93 C1 00 08 */ stw r30, 8(r1) /* 8004A424 00046084 7C 7E 1B 78 */ mr r30, r3 /* 8004A428 00046088 41 82 00 38 */ beq lbl_8004A460 /* 8004A42C 0004608C 3D 80 80 41 */ lis r12, lbl_8040A648@ha /* 8004A430 00046090 39 8C A6 48 */ addi r12, r12, lbl_8040A648@l /* 8004A434 00046094 91 83 00 28 */ stw r12, 0x28(r3) /* 8004A438 00046098 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8004A43C 0004609C 7D 89 03 A6 */ mtctr r12 /* 8004A440 000460A0 4E 80 04 21 */ bctrl /* 8004A444 000460A4 7F C3 F3 78 */ mr r3, r30 /* 8004A448 000460A8 38 80 00 00 */ li r4, 0 /* 8004A44C 000460AC 4B FF EC 69 */ bl func_800490B4 /* 8004A450 000460B0 2C 1F 00 00 */ cmpwi r31, 0 /* 8004A454 000460B4 40 81 00 0C */ ble lbl_8004A460 /* 8004A458 000460B8 7F C3 F3 78 */ mr r3, r30 /* 8004A45C 000460BC 48 19 06 5D */ bl func_801DAAB8 lbl_8004A460: /* 8004A460 000460C0 7F C3 F3 78 */ mr r3, r30 /* 8004A464 000460C4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A468 000460C8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004A46C 000460CC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A470 000460D0 7C 08 03 A6 */ mtlr r0 /* 8004A474 000460D4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A478 000460D8 4E 80 00 20 */ blr /* 8004A47C 000460DC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A480 000460E0 7C 08 02 A6 */ mflr r0 /* 8004A484 000460E4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A488 000460E8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A48C 000460EC 7C 7F 1B 78 */ mr r31, r3 /* 8004A490 000460F0 80 03 00 2C */ lwz r0, 0x2c(r3) /* 8004A494 000460F4 2C 00 00 00 */ cmpwi r0, 0 /* 8004A498 000460F8 41 82 00 28 */ beq lbl_8004A4C0 /* 8004A49C 000460FC 41 82 00 1C */ beq lbl_8004A4B8 /* 8004A4A0 00046100 7C 03 03 78 */ mr r3, r0 /* 8004A4A4 00046104 38 80 00 01 */ li r4, 1 /* 8004A4A8 00046108 81 83 01 00 */ lwz r12, 0x100(r3) /* 8004A4AC 0004610C 81 8C 00 08 */ lwz r12, 8(r12) /* 8004A4B0 00046110 7D 89 03 A6 */ mtctr r12 /* 8004A4B4 00046114 4E 80 04 21 */ bctrl lbl_8004A4B8: /* 8004A4B8 00046118 38 00 00 00 */ li r0, 0 /* 8004A4BC 0004611C 90 1F 00 2C */ stw r0, 0x2c(r31) lbl_8004A4C0: /* 8004A4C0 00046120 7F E3 FB 78 */ mr r3, r31 /* 8004A4C4 00046124 4B FF EC 59 */ bl func_8004911C /* 8004A4C8 00046128 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A4CC 0004612C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A4D0 00046130 7C 08 03 A6 */ mtlr r0 /* 8004A4D4 00046134 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A4D8 00046138 4E 80 00 20 */ blr /* 8004A4DC 0004613C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A4E0 00046140 7C 08 02 A6 */ mflr r0 /* 8004A4E4 00046144 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A4E8 00046148 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A4EC 0004614C 7C 9F 23 78 */ mr r31, r4 /* 8004A4F0 00046150 93 C1 00 08 */ stw r30, 8(r1) /* 8004A4F4 00046154 7C 7E 1B 78 */ mr r30, r3 /* 8004A4F8 00046158 48 19 06 31 */ bl func_801DAB28 /* 8004A4FC 0004615C 2C 03 00 00 */ cmpwi r3, 0 /* 8004A500 00046160 41 82 00 14 */ beq lbl_8004A514 /* 8004A504 00046164 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004A508 00046168 38 80 01 40 */ li r4, 0x140 /* 8004A50C 0004616C 48 19 07 89 */ bl func_801DAC94 /* 8004A510 00046170 48 00 00 08 */ b lbl_8004A518 lbl_8004A514: /* 8004A514 00046174 38 60 00 00 */ li r3, 0 lbl_8004A518: /* 8004A518 00046178 2C 03 00 00 */ cmpwi r3, 0 /* 8004A51C 0004617C 41 82 00 0C */ beq lbl_8004A528 /* 8004A520 00046180 80 9F 00 44 */ lwz r4, 0x44(r31) /* 8004A524 00046184 48 1A F3 C9 */ bl func_801F98EC lbl_8004A528: /* 8004A528 00046188 90 7E 00 2C */ stw r3, 0x2c(r30) /* 8004A52C 0004618C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A530 00046190 83 C1 00 08 */ lwz r30, 8(r1) /* 8004A534 00046194 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A538 00046198 7C 08 03 A6 */ mtlr r0 /* 8004A53C 0004619C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A540 000461A0 4E 80 00 20 */ blr /* 8004A544 000461A4 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004A548 000461A8 2C 04 00 00 */ cmpwi r4, 0 /* 8004A54C 000461AC 40 82 00 0C */ bne lbl_8004A558 /* 8004A550 000461B0 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A554 000461B4 4E 80 00 20 */ blr lbl_8004A558: /* 8004A558 000461B8 C0 24 00 04 */ lfs f1, 4(r4) /* 8004A55C 000461BC C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A560 000461C0 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8004A564 000461C4 4C 82 00 20 */ bnelr /* 8004A568 000461C8 80 63 00 2C */ lwz r3, 0x2c(r3) /* 8004A56C 000461CC 80 63 01 38 */ lwz r3, 0x138(r3) /* 8004A570 000461D0 48 1B D2 D0 */ b func_80207840 /* 8004A574 000461D4 4E 80 00 20 */ blr /* 8004A578 000461D8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004A57C 000461DC 7C 08 02 A6 */ mflr r0 /* 8004A580 000461E0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004A584 000461E4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004A588 000461E8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004A58C 000461EC 7C 7E 1B 78 */ mr r30, r3 /* 8004A590 000461F0 80 83 00 2C */ lwz r4, 0x2c(r3) /* 8004A594 000461F4 80 63 00 18 */ lwz r3, 0x18(r3) /* 8004A598 000461F8 2C 04 00 00 */ cmpwi r4, 0 /* 8004A59C 000461FC 83 E3 00 34 */ lwz r31, 0x34(r3) /* 8004A5A0 00046200 41 82 01 6C */ beq lbl_8004A70C /* 8004A5A4 00046204 2C 1F 00 00 */ cmpwi r31, 0 /* 8004A5A8 00046208 40 82 00 08 */ bne lbl_8004A5B0 /* 8004A5AC 0004620C 48 00 01 60 */ b lbl_8004A70C lbl_8004A5B0: /* 8004A5B0 00046210 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 8004A5B4 00046214 2C 03 00 00 */ cmpwi r3, 0 /* 8004A5B8 00046218 41 82 00 08 */ beq lbl_8004A5C0 /* 8004A5BC 0004621C 48 1A 7C 6D */ bl func_801F2228 lbl_8004A5C0: /* 8004A5C0 00046220 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004A5C4 00046224 80 83 00 00 */ lwz r4, 0(r3) /* 8004A5C8 00046228 54 80 07 FF */ clrlwi. r0, r4, 0x1f /* 8004A5CC 0004622C 40 82 00 40 */ bne lbl_8004A60C /* 8004A5D0 00046230 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e /* 8004A5D4 00046234 41 82 00 0C */ beq lbl_8004A5E0 /* 8004A5D8 00046238 80 7E 00 1C */ lwz r3, 0x1c(r30) /* 8004A5DC 0004623C 48 00 00 10 */ b lbl_8004A5EC lbl_8004A5E0: /* 8004A5E0 00046240 88 83 00 0C */ lbz r4, 0xc(r3) /* 8004A5E4 00046244 7F E3 FB 78 */ mr r3, r31 /* 8004A5E8 00046248 4B FE F3 05 */ bl func_800398EC lbl_8004A5EC: /* 8004A5EC 0004624C 2C 03 00 00 */ cmpwi r3, 0 /* 8004A5F0 00046250 41 82 00 1C */ beq lbl_8004A60C /* 8004A5F4 00046254 80 1E 00 24 */ lwz r0, 0x24(r30) /* 8004A5F8 00046258 38 C0 00 00 */ li r6, 0 /* 8004A5FC 0004625C 80 BE 00 2C */ lwz r5, 0x2c(r30) /* 8004A600 00046260 38 E0 00 03 */ li r7, 3 /* 8004A604 00046264 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 8004A608 00046268 48 1A 7B 85 */ bl func_801F218C lbl_8004A60C: /* 8004A60C 0004626C 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004A610 00046270 80 03 00 00 */ lwz r0, 0(r3) /* 8004A614 00046274 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8004A618 00046278 41 82 00 0C */ beq lbl_8004A624 /* 8004A61C 0004627C C0 22 83 E0 */ lfs f1, lbl_806409E0-_SDA2_BASE_(r2) /* 8004A620 00046280 48 00 00 0C */ b lbl_8004A62C lbl_8004A624: /* 8004A624 00046284 7F E3 FB 78 */ mr r3, r31 /* 8004A628 00046288 4B FE F1 95 */ bl func_800397BC lbl_8004A62C: /* 8004A62C 0004628C FC 00 08 18 */ frsp f0, f1 /* 8004A630 00046290 80 7E 00 2C */ lwz r3, 0x2c(r30) /* 8004A634 00046294 C0 42 83 D8 */ lfs f2, lbl_806409D8-_SDA2_BASE_(r2) /* 8004A638 00046298 D0 21 00 08 */ stfs f1, 8(r1) /* 8004A63C 0004629C FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8004A640 000462A0 D0 03 00 48 */ stfs f0, 0x48(r3) /* 8004A644 000462A4 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8004A648 000462A8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004A64C 000462AC D0 21 00 10 */ stfs f1, 0x10(r1) /* 8004A650 000462B0 D0 03 00 50 */ stfs f0, 0x50(r3) /* 8004A654 000462B4 40 80 00 2C */ bge lbl_8004A680 /* 8004A658 000462B8 C0 23 00 48 */ lfs f1, 0x48(r3) /* 8004A65C 000462BC C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 8004A660 000462C0 FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8004A664 000462C4 40 81 00 1C */ ble lbl_8004A680 /* 8004A668 000462C8 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A66C 000462CC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004A670 000462D0 40 80 00 08 */ bge lbl_8004A678 /* 8004A674 000462D4 48 00 00 08 */ b lbl_8004A67C lbl_8004A678: /* 8004A678 000462D8 FC 60 10 90 */ fmr f3, f2 lbl_8004A67C: /* 8004A67C 000462DC D0 63 00 48 */ stfs f3, 0x48(r3) lbl_8004A680: /* 8004A680 000462E0 C0 43 00 4C */ lfs f2, 0x4c(r3) /* 8004A684 000462E4 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 8004A688 000462E8 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004A68C 000462EC 40 80 00 28 */ bge lbl_8004A6B4 /* 8004A690 000462F0 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 8004A694 000462F4 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8004A698 000462F8 40 81 00 1C */ ble lbl_8004A6B4 /* 8004A69C 000462FC C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A6A0 00046300 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004A6A4 00046304 40 80 00 08 */ bge lbl_8004A6AC /* 8004A6A8 00046308 48 00 00 08 */ b lbl_8004A6B0 lbl_8004A6AC: /* 8004A6AC 0004630C FC 60 08 90 */ fmr f3, f1 lbl_8004A6B0: /* 8004A6B0 00046310 D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8004A6B4: /* 8004A6B4 00046314 C0 43 00 50 */ lfs f2, 0x50(r3) /* 8004A6B8 00046318 C0 22 83 D8 */ lfs f1, lbl_806409D8-_SDA2_BASE_(r2) /* 8004A6BC 0004631C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004A6C0 00046320 40 80 00 28 */ bge lbl_8004A6E8 /* 8004A6C4 00046324 C0 62 83 DC */ lfs f3, lbl_806409DC-_SDA2_BASE_(r2) /* 8004A6C8 00046328 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8004A6CC 0004632C 40 81 00 1C */ ble lbl_8004A6E8 /* 8004A6D0 00046330 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A6D4 00046334 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004A6D8 00046338 40 80 00 08 */ bge lbl_8004A6E0 /* 8004A6DC 0004633C 48 00 00 08 */ b lbl_8004A6E4 lbl_8004A6E0: /* 8004A6E0 00046340 FC 60 08 90 */ fmr f3, f1 lbl_8004A6E4: /* 8004A6E4 00046344 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8004A6E8: /* 8004A6E8 00046348 38 80 00 01 */ li r4, 1 /* 8004A6EC 0004634C 48 1A 7F CD */ bl func_801F26B8 /* 8004A6F0 00046350 80 7E 00 2C */ lwz r3, 0x2c(r30) /* 8004A6F4 00046354 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A6F8 00046358 80 03 01 04 */ lwz r0, 0x104(r3) /* 8004A6FC 0004635C 60 00 00 01 */ ori r0, r0, 1 /* 8004A700 00046360 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 8004A704 00046364 90 03 01 04 */ stw r0, 0x104(r3) /* 8004A708 00046368 D0 03 01 08 */ stfs f0, 0x108(r3) lbl_8004A70C: /* 8004A70C 0004636C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004A710 00046370 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004A714 00046374 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004A718 00046378 7C 08 03 A6 */ mtlr r0 /* 8004A71C 0004637C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004A720 00046380 4E 80 00 20 */ blr /* 8004A724 00046384 80 83 00 2C */ lwz r4, 0x2c(r3) /* 8004A728 00046388 2C 04 00 00 */ cmpwi r4, 0 /* 8004A72C 0004638C 4D 82 00 20 */ beqlr /* 8004A730 00046390 80 04 01 04 */ lwz r0, 0x104(r4) /* 8004A734 00046394 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A738 00046398 60 00 00 04 */ ori r0, r0, 4 /* 8004A73C 0004639C 90 04 01 04 */ stw r0, 0x104(r4) /* 8004A740 000463A0 D0 04 01 10 */ stfs f0, 0x110(r4) /* 8004A744 000463A4 80 83 00 2C */ lwz r4, 0x2c(r3) /* 8004A748 000463A8 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 8004A74C 000463AC 2C 03 00 00 */ cmpwi r3, 0 /* 8004A750 000463B0 4D 82 00 20 */ beqlr /* 8004A754 000463B4 48 1A 7A D4 */ b func_801F2228 /* 8004A758 000463B8 4E 80 00 20 */ blr /* 8004A75C 000463BC 4E 80 00 20 */ blr .global func_8004A760 func_8004A760: /* 8004A760 000463C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A764 000463C4 7C 08 02 A6 */ mflr r0 /* 8004A768 000463C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A76C 000463CC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A770 000463D0 7C 7F 1B 78 */ mr r31, r3 /* 8004A774 000463D4 4B FF E9 11 */ bl func_80049084 /* 8004A778 000463D8 3C 80 80 41 */ lis r4, lbl_8040A5A8@ha /* 8004A77C 000463DC 7F E3 FB 78 */ mr r3, r31 /* 8004A780 000463E0 38 84 A5 A8 */ addi r4, r4, lbl_8040A5A8@l /* 8004A784 000463E4 90 9F 00 28 */ stw r4, 0x28(r31) /* 8004A788 000463E8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A78C 000463EC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A790 000463F0 7C 08 03 A6 */ mtlr r0 /* 8004A794 000463F4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A798 000463F8 4E 80 00 20 */ blr /* 8004A79C 000463FC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A7A0 00046400 7C 08 02 A6 */ mflr r0 /* 8004A7A4 00046404 2C 03 00 00 */ cmpwi r3, 0 /* 8004A7A8 00046408 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A7AC 0004640C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A7B0 00046410 7C 9F 23 78 */ mr r31, r4 /* 8004A7B4 00046414 93 C1 00 08 */ stw r30, 8(r1) /* 8004A7B8 00046418 7C 7E 1B 78 */ mr r30, r3 /* 8004A7BC 0004641C 41 82 00 38 */ beq lbl_8004A7F4 /* 8004A7C0 00046420 3D 80 80 41 */ lis r12, lbl_8040A5A8@ha /* 8004A7C4 00046424 39 8C A5 A8 */ addi r12, r12, lbl_8040A5A8@l /* 8004A7C8 00046428 91 83 00 28 */ stw r12, 0x28(r3) /* 8004A7CC 0004642C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8004A7D0 00046430 7D 89 03 A6 */ mtctr r12 /* 8004A7D4 00046434 4E 80 04 21 */ bctrl /* 8004A7D8 00046438 7F C3 F3 78 */ mr r3, r30 /* 8004A7DC 0004643C 38 80 00 00 */ li r4, 0 /* 8004A7E0 00046440 4B FF E8 D5 */ bl func_800490B4 /* 8004A7E4 00046444 2C 1F 00 00 */ cmpwi r31, 0 /* 8004A7E8 00046448 40 81 00 0C */ ble lbl_8004A7F4 /* 8004A7EC 0004644C 7F C3 F3 78 */ mr r3, r30 /* 8004A7F0 00046450 48 19 02 C9 */ bl func_801DAAB8 lbl_8004A7F4: /* 8004A7F4 00046454 7F C3 F3 78 */ mr r3, r30 /* 8004A7F8 00046458 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A7FC 0004645C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004A800 00046460 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A804 00046464 7C 08 03 A6 */ mtlr r0 /* 8004A808 00046468 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A80C 0004646C 4E 80 00 20 */ blr /* 8004A810 00046470 4B FF E9 0C */ b func_8004911C /* 8004A814 00046474 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 8004A818 00046478 4E 80 00 20 */ blr /* 8004A81C 0004647C 4E 80 00 20 */ blr /* 8004A820 00046480 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004A824 00046484 7C 08 02 A6 */ mflr r0 /* 8004A828 00046488 90 01 00 24 */ stw r0, 0x24(r1) /* 8004A82C 0004648C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004A830 00046490 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004A834 00046494 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004A838 00046498 93 81 00 10 */ stw r28, 0x10(r1) /* 8004A83C 0004649C 7C 7C 1B 78 */ mr r28, r3 /* 8004A840 000464A0 83 C3 00 14 */ lwz r30, 0x14(r3) /* 8004A844 000464A4 80 A3 00 18 */ lwz r5, 0x18(r3) /* 8004A848 000464A8 80 FE 00 3C */ lwz r7, 0x3c(r30) /* 8004A84C 000464AC 83 AD 96 F0 */ lwz r29, lbl_8063E9B0-_SDA_BASE_(r13) /* 8004A850 000464B0 28 07 00 0B */ cmplwi r7, 0xb /* 8004A854 000464B4 80 65 00 34 */ lwz r3, 0x34(r5) /* 8004A858 000464B8 41 81 01 08 */ bgt lbl_8004A960 /* 8004A85C 000464BC 3C 80 80 41 */ lis r4, lbl_8040A51C@ha /* 8004A860 000464C0 54 E0 10 3A */ slwi r0, r7, 2 /* 8004A864 000464C4 38 84 A5 1C */ addi r4, r4, lbl_8040A51C@l /* 8004A868 000464C8 7C 84 00 2E */ lwzx r4, r4, r0 /* 8004A86C 000464CC 7C 89 03 A6 */ mtctr r4 /* 8004A870 000464D0 4E 80 04 20 */ bctr /* 8004A874 000464D4 2C 03 00 00 */ cmpwi r3, 0 /* 8004A878 000464D8 41 82 00 E8 */ beq lbl_8004A960 /* 8004A87C 000464DC 4B FF 2C 51 */ bl func_8003D4CC /* 8004A880 000464E0 48 00 00 E0 */ b lbl_8004A960 /* 8004A884 000464E4 2C 03 00 00 */ cmpwi r3, 0 /* 8004A888 000464E8 41 82 00 D8 */ beq lbl_8004A960 /* 8004A88C 000464EC 4B FF 2F 99 */ bl func_8003D824 /* 8004A890 000464F0 48 00 00 D0 */ b lbl_8004A960 /* 8004A894 000464F4 2C 03 00 00 */ cmpwi r3, 0 /* 8004A898 000464F8 41 82 00 C8 */ beq lbl_8004A960 /* 8004A89C 000464FC 38 80 00 00 */ li r4, 0 /* 8004A8A0 00046500 4B FE D4 8D */ bl func_80037D2C /* 8004A8A4 00046504 48 00 00 BC */ b lbl_8004A960 /* 8004A8A8 00046508 2C 03 00 00 */ cmpwi r3, 0 /* 8004A8AC 0004650C 41 82 00 B4 */ beq lbl_8004A960 /* 8004A8B0 00046510 38 80 00 01 */ li r4, 1 /* 8004A8B4 00046514 4B FE D4 79 */ bl func_80037D2C /* 8004A8B8 00046518 48 00 00 A8 */ b lbl_8004A960 /* 8004A8BC 0004651C 2C 03 00 00 */ cmpwi r3, 0 /* 8004A8C0 00046520 41 82 00 A0 */ beq lbl_8004A960 /* 8004A8C4 00046524 80 03 00 00 */ lwz r0, 0(r3) /* 8004A8C8 00046528 60 00 10 00 */ ori r0, r0, 0x1000 /* 8004A8CC 0004652C 90 03 00 00 */ stw r0, 0(r3) /* 8004A8D0 00046530 48 00 00 90 */ b lbl_8004A960 /* 8004A8D4 00046534 2C 03 00 00 */ cmpwi r3, 0 /* 8004A8D8 00046538 41 82 00 88 */ beq lbl_8004A960 /* 8004A8DC 0004653C 80 03 00 00 */ lwz r0, 0(r3) /* 8004A8E0 00046540 54 00 05 24 */ rlwinm r0, r0, 0, 0x14, 0x12 /* 8004A8E4 00046544 90 03 00 00 */ stw r0, 0(r3) /* 8004A8E8 00046548 48 00 00 78 */ b lbl_8004A960 /* 8004A8EC 0004654C 2C 03 00 00 */ cmpwi r3, 0 /* 8004A8F0 00046550 41 82 00 70 */ beq lbl_8004A960 /* 8004A8F4 00046554 4B FF 2B C1 */ bl func_8003D4B4 /* 8004A8F8 00046558 48 00 00 68 */ b lbl_8004A960 /* 8004A8FC 0004655C 2C 03 00 00 */ cmpwi r3, 0 /* 8004A900 00046560 41 82 00 60 */ beq lbl_8004A960 /* 8004A904 00046564 4B FF 2F 09 */ bl func_8003D80C /* 8004A908 00046568 48 00 00 58 */ b lbl_8004A960 /* 8004A90C 0004656C 7C A3 2B 78 */ mr r3, r5 /* 8004A910 00046570 4B FF D9 9D */ bl func_800482AC /* 8004A914 00046574 48 00 00 4C */ b lbl_8004A960 /* 8004A918 00046578 2C 1D 00 00 */ cmpwi r29, 0 /* 8004A91C 0004657C 41 82 00 44 */ beq lbl_8004A960 /* 8004A920 00046580 3F E0 80 41 */ lis r31, lbl_8040A508@ha /* 8004A924 00046584 81 1E 00 40 */ lwz r8, 0x40(r30) /* 8004A928 00046588 81 3E 00 44 */ lwz r9, 0x44(r30) /* 8004A92C 0004658C 7F A3 EB 78 */ mr r3, r29 /* 8004A930 00046590 38 BF A5 08 */ addi r5, r31, lbl_8040A508@l /* 8004A934 00046594 38 80 00 00 */ li r4, 0 /* 8004A938 00046598 38 C0 00 00 */ li r6, 0 /* 8004A93C 0004659C 4B FD A9 B1 */ bl func_800252EC /* 8004A940 000465A0 80 FE 00 3C */ lwz r7, 0x3c(r30) /* 8004A944 000465A4 7F A3 EB 78 */ mr r3, r29 /* 8004A948 000465A8 81 1E 00 40 */ lwz r8, 0x40(r30) /* 8004A94C 000465AC 38 BF A5 08 */ addi r5, r31, -23288 /* 8004A950 000465B0 81 3E 00 44 */ lwz r9, 0x44(r30) /* 8004A954 000465B4 38 80 00 02 */ li r4, 2 /* 8004A958 000465B8 38 C0 00 00 */ li r6, 0 /* 8004A95C 000465BC 4B FD A9 91 */ bl func_800252EC lbl_8004A960: /* 8004A960 000465C0 80 1C 00 08 */ lwz r0, 8(r28) /* 8004A964 000465C4 60 00 00 02 */ ori r0, r0, 2 /* 8004A968 000465C8 90 1C 00 08 */ stw r0, 8(r28) /* 8004A96C 000465CC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004A970 000465D0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004A974 000465D4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004A978 000465D8 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004A97C 000465DC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004A980 000465E0 7C 08 03 A6 */ mtlr r0 /* 8004A984 000465E4 38 21 00 20 */ addi r1, r1, 0x20 /* 8004A988 000465E8 4E 80 00 20 */ blr /* 8004A98C 000465EC 4E 80 00 20 */ blr /* 8004A990 000465F0 4E 80 00 20 */ blr .global func_8004A994 func_8004A994: /* 8004A994 000465F4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A998 000465F8 7C 08 02 A6 */ mflr r0 /* 8004A99C 000465FC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A9A0 00046600 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A9A4 00046604 7C 7F 1B 78 */ mr r31, r3 /* 8004A9A8 00046608 4B FF E6 DD */ bl func_80049084 /* 8004A9AC 0004660C 3C 80 80 41 */ lis r4, lbl_8040A5F8@ha /* 8004A9B0 00046610 7F E3 FB 78 */ mr r3, r31 /* 8004A9B4 00046614 38 84 A5 F8 */ addi r4, r4, lbl_8040A5F8@l /* 8004A9B8 00046618 90 9F 00 28 */ stw r4, 0x28(r31) /* 8004A9BC 0004661C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004A9C0 00046620 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004A9C4 00046624 7C 08 03 A6 */ mtlr r0 /* 8004A9C8 00046628 38 21 00 10 */ addi r1, r1, 0x10 /* 8004A9CC 0004662C 4E 80 00 20 */ blr /* 8004A9D0 00046630 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004A9D4 00046634 7C 08 02 A6 */ mflr r0 /* 8004A9D8 00046638 2C 03 00 00 */ cmpwi r3, 0 /* 8004A9DC 0004663C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004A9E0 00046640 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004A9E4 00046644 7C 9F 23 78 */ mr r31, r4 /* 8004A9E8 00046648 93 C1 00 08 */ stw r30, 8(r1) /* 8004A9EC 0004664C 7C 7E 1B 78 */ mr r30, r3 /* 8004A9F0 00046650 41 82 00 38 */ beq lbl_8004AA28 /* 8004A9F4 00046654 3D 80 80 41 */ lis r12, lbl_8040A5F8@ha /* 8004A9F8 00046658 39 8C A5 F8 */ addi r12, r12, lbl_8040A5F8@l /* 8004A9FC 0004665C 91 83 00 28 */ stw r12, 0x28(r3) /* 8004AA00 00046660 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8004AA04 00046664 7D 89 03 A6 */ mtctr r12 /* 8004AA08 00046668 4E 80 04 21 */ bctrl /* 8004AA0C 0004666C 7F C3 F3 78 */ mr r3, r30 /* 8004AA10 00046670 38 80 00 00 */ li r4, 0 /* 8004AA14 00046674 4B FF E6 A1 */ bl func_800490B4 /* 8004AA18 00046678 2C 1F 00 00 */ cmpwi r31, 0 /* 8004AA1C 0004667C 40 81 00 0C */ ble lbl_8004AA28 /* 8004AA20 00046680 7F C3 F3 78 */ mr r3, r30 /* 8004AA24 00046684 48 19 00 95 */ bl func_801DAAB8 lbl_8004AA28: /* 8004AA28 00046688 7F C3 F3 78 */ mr r3, r30 /* 8004AA2C 0004668C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004AA30 00046690 83 C1 00 08 */ lwz r30, 8(r1) /* 8004AA34 00046694 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004AA38 00046698 7C 08 03 A6 */ mtlr r0 /* 8004AA3C 0004669C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004AA40 000466A0 4E 80 00 20 */ blr /* 8004AA44 000466A4 80 63 00 14 */ lwz r3, 0x14(r3) /* 8004AA48 000466A8 80 63 00 48 */ lwz r3, 0x48(r3) /* 8004AA4C 000466AC 2C 03 00 00 */ cmpwi r3, 0 /* 8004AA50 000466B0 4D 82 00 20 */ beqlr /* 8004AA54 000466B4 38 80 00 00 */ li r4, 0 /* 8004AA58 000466B8 48 19 A1 74 */ b func_801E4BCC /* 8004AA5C 000466BC 4E 80 00 20 */ blr /* 8004AA60 000466C0 4E 80 00 20 */ blr /* 8004AA64 000466C4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004AA68 000466C8 7C 08 02 A6 */ mflr r0 /* 8004AA6C 000466CC 90 01 00 34 */ stw r0, 0x34(r1) /* 8004AA70 000466D0 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8004AA74 000466D4 93 C1 00 28 */ stw r30, 0x28(r1) /* 8004AA78 000466D8 3B C0 00 00 */ li r30, 0 /* 8004AA7C 000466DC 83 E3 00 14 */ lwz r31, 0x14(r3) /* 8004AA80 000466E0 80 1F 00 48 */ lwz r0, 0x48(r31) /* 8004AA84 000466E4 2C 00 00 00 */ cmpwi r0, 0 /* 8004AA88 000466E8 41 82 00 9C */ beq lbl_8004AB24 /* 8004AA8C 000466EC 80 1F 00 00 */ lwz r0, 0(r31) /* 8004AA90 000466F0 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004AA94 000466F4 41 82 00 38 */ beq lbl_8004AACC /* 8004AA98 000466F8 4B FF AA F9 */ bl func_80045590 /* 8004AA9C 000466FC 38 80 01 00 */ li r4, 0x100 /* 8004AAA0 00046700 38 A0 00 00 */ li r5, 0 /* 8004AAA4 00046704 4B FF B0 5D */ bl func_80045B00 /* 8004AAA8 00046708 2C 03 00 00 */ cmpwi r3, 0 /* 8004AAAC 0004670C 41 82 00 34 */ beq lbl_8004AAE0 /* 8004AAB0 00046710 3C 80 80 41 */ lis r4, lbl_8040A54C@ha /* 8004AAB4 00046714 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004AAB8 00046718 80 BF 00 3C */ lwz r5, 0x3c(r31) /* 8004AABC 0004671C 38 84 A5 4C */ addi r4, r4, lbl_8040A54C@l /* 8004AAC0 00046720 4B FF E8 79 */ bl func_80049338 /* 8004AAC4 00046724 7C 7E 1B 78 */ mr r30, r3 /* 8004AAC8 00046728 48 00 00 18 */ b lbl_8004AAE0 lbl_8004AACC: /* 8004AACC 0004672C 80 63 00 18 */ lwz r3, 0x18(r3) /* 8004AAD0 00046730 88 9F 00 0C */ lbz r4, 0xc(r31) /* 8004AAD4 00046734 80 63 00 34 */ lwz r3, 0x34(r3) /* 8004AAD8 00046738 4B FE EE 15 */ bl func_800398EC /* 8004AADC 0004673C 7C 7E 1B 78 */ mr r30, r3 lbl_8004AAE0: /* 8004AAE0 00046740 2C 1E 00 00 */ cmpwi r30, 0 /* 8004AAE4 00046744 41 82 00 40 */ beq lbl_8004AB24 /* 8004AAE8 00046748 C0 5E 00 DC */ lfs f2, 0xdc(r30) /* 8004AAEC 0004674C 38 81 00 14 */ addi r4, r1, 0x14 /* 8004AAF0 00046750 C0 3E 00 EC */ lfs f1, 0xec(r30) /* 8004AAF4 00046754 C0 1E 00 FC */ lfs f0, 0xfc(r30) /* 8004AAF8 00046758 D0 41 00 08 */ stfs f2, 8(r1) /* 8004AAFC 0004675C D0 41 00 14 */ stfs f2, 0x14(r1) /* 8004AB00 00046760 D0 21 00 18 */ stfs f1, 0x18(r1) /* 8004AB04 00046764 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8004AB08 00046768 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004AB0C 0004676C 80 7F 00 48 */ lwz r3, 0x48(r31) /* 8004AB10 00046770 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004AB14 00046774 48 19 A0 79 */ bl func_801E4B8C /* 8004AB18 00046778 80 7F 00 48 */ lwz r3, 0x48(r31) /* 8004AB1C 0004677C 38 80 00 01 */ li r4, 1 /* 8004AB20 00046780 48 19 A0 AD */ bl func_801E4BCC lbl_8004AB24: /* 8004AB24 00046784 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004AB28 00046788 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004AB2C 0004678C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8004AB30 00046790 7C 08 03 A6 */ mtlr r0 /* 8004AB34 00046794 38 21 00 30 */ addi r1, r1, 0x30 /* 8004AB38 00046798 4E 80 00 20 */ blr /* 8004AB3C 0004679C 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004AB40 000467A0 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 8004AB44 000467A4 C0 04 00 04 */ lfs f0, 4(r4) /* 8004AB48 000467A8 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004AB4C 000467AC 40 82 00 1C */ bne lbl_8004AB68 /* 8004AB50 000467B0 80 63 00 18 */ lwz r3, 0x18(r3) /* 8004AB54 000467B4 80 63 00 24 */ lwz r3, 0x24(r3) /* 8004AB58 000467B8 2C 03 00 00 */ cmpwi r3, 0 /* 8004AB5C 000467BC 4D 82 00 20 */ beqlr /* 8004AB60 000467C0 4B FF E4 F8 */ b cGame_GetGameTime /* 8004AB64 000467C4 4E 80 00 20 */ blr lbl_8004AB68: /* 8004AB68 000467C8 FC 20 00 90 */ fmr f1, f0 /* 8004AB6C 000467CC 4E 80 00 20 */ blr /* 8004AB70 000467D0 80 63 00 14 */ lwz r3, 0x14(r3) /* 8004AB74 000467D4 80 63 00 48 */ lwz r3, 0x48(r3) /* 8004AB78 000467D8 2C 03 00 00 */ cmpwi r3, 0 /* 8004AB7C 000467DC 4D 82 00 20 */ beqlr /* 8004AB80 000467E0 38 80 00 00 */ li r4, 0 /* 8004AB84 000467E4 48 19 A0 48 */ b func_801E4BCC /* 8004AB88 000467E8 4E 80 00 20 */ blr /* 8004AB8C 000467EC 4E 80 00 20 */ blr .global func_8004AB90 func_8004AB90: /* 8004AB90 000467F0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004AB94 000467F4 7C 08 02 A6 */ mflr r0 /* 8004AB98 000467F8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004AB9C 000467FC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004ABA0 00046800 7C 7F 1B 78 */ mr r31, r3 /* 8004ABA4 00046804 4B FF E4 E1 */ bl func_80049084 /* 8004ABA8 00046808 3C 80 80 41 */ lis r4, lbl_8040A558@ha /* 8004ABAC 0004680C 7F E3 FB 78 */ mr r3, r31 /* 8004ABB0 00046810 38 84 A5 58 */ addi r4, r4, lbl_8040A558@l /* 8004ABB4 00046814 90 9F 00 28 */ stw r4, 0x28(r31) /* 8004ABB8 00046818 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004ABBC 0004681C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004ABC0 00046820 7C 08 03 A6 */ mtlr r0 /* 8004ABC4 00046824 38 21 00 10 */ addi r1, r1, 0x10 /* 8004ABC8 00046828 4E 80 00 20 */ blr /* 8004ABCC 0004682C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004ABD0 00046830 7C 08 02 A6 */ mflr r0 /* 8004ABD4 00046834 2C 03 00 00 */ cmpwi r3, 0 /* 8004ABD8 00046838 90 01 00 14 */ stw r0, 0x14(r1) /* 8004ABDC 0004683C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004ABE0 00046840 7C 9F 23 78 */ mr r31, r4 /* 8004ABE4 00046844 93 C1 00 08 */ stw r30, 8(r1) /* 8004ABE8 00046848 7C 7E 1B 78 */ mr r30, r3 /* 8004ABEC 0004684C 41 82 00 38 */ beq lbl_8004AC24 /* 8004ABF0 00046850 3D 80 80 41 */ lis r12, lbl_8040A558@ha /* 8004ABF4 00046854 39 8C A5 58 */ addi r12, r12, lbl_8040A558@l /* 8004ABF8 00046858 91 83 00 28 */ stw r12, 0x28(r3) /* 8004ABFC 0004685C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8004AC00 00046860 7D 89 03 A6 */ mtctr r12 /* 8004AC04 00046864 4E 80 04 21 */ bctrl /* 8004AC08 00046868 7F C3 F3 78 */ mr r3, r30 /* 8004AC0C 0004686C 38 80 00 00 */ li r4, 0 /* 8004AC10 00046870 4B FF E4 A5 */ bl func_800490B4 /* 8004AC14 00046874 2C 1F 00 00 */ cmpwi r31, 0 /* 8004AC18 00046878 40 81 00 0C */ ble lbl_8004AC24 /* 8004AC1C 0004687C 7F C3 F3 78 */ mr r3, r30 /* 8004AC20 00046880 48 18 FE 99 */ bl func_801DAAB8 lbl_8004AC24: /* 8004AC24 00046884 7F C3 F3 78 */ mr r3, r30 /* 8004AC28 00046888 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004AC2C 0004688C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004AC30 00046890 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004AC34 00046894 7C 08 03 A6 */ mtlr r0 /* 8004AC38 00046898 38 21 00 10 */ addi r1, r1, 0x10 /* 8004AC3C 0004689C 4E 80 00 20 */ blr /* 8004AC40 000468A0 4B FF E4 DC */ b func_8004911C /* 8004AC44 000468A4 C0 22 83 D0 */ lfs f1, lbl_806409D0-_SDA2_BASE_(r2) /* 8004AC48 000468A8 4E 80 00 20 */ blr /* 8004AC4C 000468AC 4E 80 00 20 */ blr /* 8004AC50 000468B0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004AC54 000468B4 7C 08 02 A6 */ mflr r0 /* 8004AC58 000468B8 C8 42 83 E8 */ lfd f2, lbl_806409E8-_SDA2_BASE_(r2) /* 8004AC5C 000468BC 90 01 00 24 */ stw r0, 0x24(r1) /* 8004AC60 000468C0 3C 00 43 30 */ lis r0, 0x4330 /* 8004AC64 000468C4 C0 02 83 D0 */ lfs f0, lbl_806409D0-_SDA2_BASE_(r2) /* 8004AC68 000468C8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004AC6C 000468CC 7C 7F 1B 78 */ mr r31, r3 /* 8004AC70 000468D0 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004AC74 000468D4 90 01 00 08 */ stw r0, 8(r1) /* 8004AC78 000468D8 A8 04 00 44 */ lha r0, 0x44(r4) /* 8004AC7C 000468DC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 8004AC80 000468E0 90 01 00 0C */ stw r0, 0xc(r1) /* 8004AC84 000468E4 C8 21 00 08 */ lfd f1, 8(r1) /* 8004AC88 000468E8 EC 21 10 28 */ fsubs f1, f1, f2 /* 8004AC8C 000468EC FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8004AC90 000468F0 40 82 00 08 */ bne lbl_8004AC98 /* 8004AC94 000468F4 C0 22 83 E0 */ lfs f1, lbl_806409E0-_SDA2_BASE_(r2) lbl_8004AC98: /* 8004AC98 000468F8 80 64 00 3C */ lwz r3, 0x3c(r4) /* 8004AC9C 000468FC 2C 03 00 00 */ cmpwi r3, 0 /* 8004ACA0 00046900 41 82 00 0C */ beq lbl_8004ACAC /* 8004ACA4 00046904 38 80 00 00 */ li r4, 0 /* 8004ACA8 00046908 4B FC 04 C9 */ bl func_8000B170 lbl_8004ACAC: /* 8004ACAC 0004690C 80 1F 00 08 */ lwz r0, 8(r31) /* 8004ACB0 00046910 60 00 00 02 */ ori r0, r0, 2 /* 8004ACB4 00046914 90 1F 00 08 */ stw r0, 8(r31) /* 8004ACB8 00046918 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004ACBC 0004691C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004ACC0 00046920 7C 08 03 A6 */ mtlr r0 /* 8004ACC4 00046924 38 21 00 20 */ addi r1, r1, 0x20 /* 8004ACC8 00046928 4E 80 00 20 */ blr /* 8004ACCC 0004692C 4E 80 00 20 */ blr /* 8004ACD0 00046930 4E 80 00 20 */ blr .global func_8004ACD4 func_8004ACD4: /* 8004ACD4 00046934 38 A0 00 01 */ li r5, 1 /* 8004ACD8 00046938 38 6D 98 18 */ addi r3, r13, lbl_8063EAD8-_SDA_BASE_ /* 8004ACDC 0004693C 38 80 00 04 */ li r4, 4 /* 8004ACE0 00046940 38 00 00 00 */ li r0, 0 /* 8004ACE4 00046944 98 AD 98 18 */ stb r5, lbl_8063EAD8-_SDA_BASE_(r13) /* 8004ACE8 00046948 B0 83 00 02 */ sth r4, 2(r3) /* 8004ACEC 0004694C 98 03 00 04 */ stb r0, 4(r3) /* 8004ACF0 00046950 4E 80 00 20 */ blr .global func_8004ACF4 func_8004ACF4: /* 8004ACF4 00046954 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004ACF8 00046958 3C E0 43 30 */ lis r7, 0x4330 /* 8004ACFC 0004695C 88 03 00 00 */ lbz r0, 0(r3) /* 8004AD00 00046960 88 C3 00 01 */ lbz r6, 1(r3) /* 8004AD04 00046964 90 01 00 0C */ stw r0, 0xc(r1) /* 8004AD08 00046968 C8 82 83 F0 */ lfd f4, lbl_806409F0-_SDA2_BASE_(r2) /* 8004AD0C 0004696C 90 E1 00 08 */ stw r7, 8(r1) /* 8004AD10 00046970 88 A3 00 02 */ lbz r5, 2(r3) /* 8004AD14 00046974 C8 01 00 08 */ lfd f0, 8(r1) /* 8004AD18 00046978 90 E1 00 10 */ stw r7, 0x10(r1) /* 8004AD1C 0004697C EC 60 20 28 */ fsubs f3, f0, f4 /* 8004AD20 00046980 88 03 00 03 */ lbz r0, 3(r3) /* 8004AD24 00046984 90 C1 00 14 */ stw r6, 0x14(r1) /* 8004AD28 00046988 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8004AD2C 0004698C 90 A1 00 0C */ stw r5, 0xc(r1) /* 8004AD30 00046990 EC 40 20 28 */ fsubs f2, f0, f4 /* 8004AD34 00046994 90 01 00 14 */ stw r0, 0x14(r1) /* 8004AD38 00046998 C8 21 00 08 */ lfd f1, 8(r1) /* 8004AD3C 0004699C C8 01 00 10 */ lfd f0, 0x10(r1) /* 8004AD40 000469A0 EC 21 20 28 */ fsubs f1, f1, f4 /* 8004AD44 000469A4 D0 64 00 00 */ stfs f3, 0(r4) /* 8004AD48 000469A8 EC 00 20 28 */ fsubs f0, f0, f4 /* 8004AD4C 000469AC D0 44 00 04 */ stfs f2, 4(r4) /* 8004AD50 000469B0 D0 24 00 08 */ stfs f1, 8(r4) /* 8004AD54 000469B4 D0 04 00 0C */ stfs f0, 0xc(r4) /* 8004AD58 000469B8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004AD5C 000469BC 4E 80 00 20 */ blr .global func_8004AD60 func_8004AD60: /* 8004AD60 000469C0 C0 03 00 00 */ lfs f0, 0(r3) /* 8004AD64 000469C4 C0 43 00 04 */ lfs f2, 4(r3) /* 8004AD68 000469C8 C0 23 00 08 */ lfs f1, 8(r3) /* 8004AD6C 000469CC FC 60 00 1E */ fctiwz f3, f0 /* 8004AD70 000469D0 C0 03 00 0C */ lfs f0, 0xc(r3) /* 8004AD74 000469D4 FC 40 10 1E */ fctiwz f2, f2 /* 8004AD78 000469D8 FC 20 08 1E */ fctiwz f1, f1 /* 8004AD7C 000469DC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004AD80 000469E0 FC 00 00 1E */ fctiwz f0, f0 /* 8004AD84 000469E4 D8 61 00 08 */ stfd f3, 8(r1) /* 8004AD88 000469E8 D8 41 00 10 */ stfd f2, 0x10(r1) /* 8004AD8C 000469EC 80 C1 00 0C */ lwz r6, 0xc(r1) /* 8004AD90 000469F0 D8 21 00 18 */ stfd f1, 0x18(r1) /* 8004AD94 000469F4 80 A1 00 14 */ lwz r5, 0x14(r1) /* 8004AD98 000469F8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8004AD9C 000469FC 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8004ADA0 00046A00 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004ADA4 00046A04 98 C4 00 00 */ stb r6, 0(r4) /* 8004ADA8 00046A08 98 A4 00 01 */ stb r5, 1(r4) /* 8004ADAC 00046A0C 98 64 00 02 */ stb r3, 2(r4) /* 8004ADB0 00046A10 98 04 00 03 */ stb r0, 3(r4) /* 8004ADB4 00046A14 38 21 00 30 */ addi r1, r1, 0x30 /* 8004ADB8 00046A18 4E 80 00 20 */ blr .global func_8004ADBC func_8004ADBC: /* 8004ADBC 00046A1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004ADC0 00046A20 7C 08 02 A6 */ mflr r0 /* 8004ADC4 00046A24 90 01 00 14 */ stw r0, 0x14(r1) /* 8004ADC8 00046A28 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004ADCC 00046A2C 7C 7F 1B 78 */ mr r31, r3 /* 8004ADD0 00046A30 4B FF E2 B5 */ bl func_80049084 /* 8004ADD4 00046A34 3C 80 80 41 */ lis r4, lbl_8040AAA8@ha /* 8004ADD8 00046A38 38 00 00 00 */ li r0, 0 /* 8004ADDC 00046A3C 38 84 AA A8 */ addi r4, r4, lbl_8040AAA8@l /* 8004ADE0 00046A40 90 1F 00 2C */ stw r0, 0x2c(r31) /* 8004ADE4 00046A44 7F E3 FB 78 */ mr r3, r31 /* 8004ADE8 00046A48 90 9F 00 28 */ stw r4, 0x28(r31) /* 8004ADEC 00046A4C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004ADF0 00046A50 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004ADF4 00046A54 7C 08 03 A6 */ mtlr r0 /* 8004ADF8 00046A58 38 21 00 10 */ addi r1, r1, 0x10 /* 8004ADFC 00046A5C 4E 80 00 20 */ blr /* 8004AE00 00046A60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004AE04 00046A64 7C 08 02 A6 */ mflr r0 /* 8004AE08 00046A68 2C 03 00 00 */ cmpwi r3, 0 /* 8004AE0C 00046A6C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004AE10 00046A70 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004AE14 00046A74 7C 9F 23 78 */ mr r31, r4 /* 8004AE18 00046A78 93 C1 00 08 */ stw r30, 8(r1) /* 8004AE1C 00046A7C 7C 7E 1B 78 */ mr r30, r3 /* 8004AE20 00046A80 41 82 00 38 */ beq lbl_8004AE58 /* 8004AE24 00046A84 3D 80 80 41 */ lis r12, lbl_8040AAA8@ha /* 8004AE28 00046A88 39 8C AA A8 */ addi r12, r12, lbl_8040AAA8@l /* 8004AE2C 00046A8C 91 83 00 28 */ stw r12, 0x28(r3) /* 8004AE30 00046A90 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 8004AE34 00046A94 7D 89 03 A6 */ mtctr r12 /* 8004AE38 00046A98 4E 80 04 21 */ bctrl /* 8004AE3C 00046A9C 7F C3 F3 78 */ mr r3, r30 /* 8004AE40 00046AA0 38 80 00 00 */ li r4, 0 /* 8004AE44 00046AA4 4B FF E2 71 */ bl func_800490B4 /* 8004AE48 00046AA8 2C 1F 00 00 */ cmpwi r31, 0 /* 8004AE4C 00046AAC 40 81 00 0C */ ble lbl_8004AE58 /* 8004AE50 00046AB0 7F C3 F3 78 */ mr r3, r30 /* 8004AE54 00046AB4 48 18 FC 65 */ bl func_801DAAB8 lbl_8004AE58: /* 8004AE58 00046AB8 7F C3 F3 78 */ mr r3, r30 /* 8004AE5C 00046ABC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004AE60 00046AC0 83 C1 00 08 */ lwz r30, 8(r1) /* 8004AE64 00046AC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004AE68 00046AC8 7C 08 03 A6 */ mtlr r0 /* 8004AE6C 00046ACC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004AE70 00046AD0 4E 80 00 20 */ blr /* 8004AE74 00046AD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004AE78 00046AD8 7C 08 02 A6 */ mflr r0 /* 8004AE7C 00046ADC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004AE80 00046AE0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004AE84 00046AE4 7C 7F 1B 78 */ mr r31, r3 /* 8004AE88 00046AE8 80 03 00 2C */ lwz r0, 0x2c(r3) /* 8004AE8C 00046AEC 2C 00 00 00 */ cmpwi r0, 0 /* 8004AE90 00046AF0 41 82 00 28 */ beq lbl_8004AEB8 /* 8004AE94 00046AF4 41 82 00 1C */ beq lbl_8004AEB0 /* 8004AE98 00046AF8 7C 03 03 78 */ mr r3, r0 /* 8004AE9C 00046AFC 38 80 00 01 */ li r4, 1 /* 8004AEA0 00046B00 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004AEA4 00046B04 81 8C 00 08 */ lwz r12, 8(r12) /* 8004AEA8 00046B08 7D 89 03 A6 */ mtctr r12 /* 8004AEAC 00046B0C 4E 80 04 21 */ bctrl lbl_8004AEB0: /* 8004AEB0 00046B10 38 00 00 00 */ li r0, 0 /* 8004AEB4 00046B14 90 1F 00 2C */ stw r0, 0x2c(r31) lbl_8004AEB8: /* 8004AEB8 00046B18 7F E3 FB 78 */ mr r3, r31 /* 8004AEBC 00046B1C 4B FF E2 61 */ bl func_8004911C /* 8004AEC0 00046B20 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004AEC4 00046B24 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004AEC8 00046B28 7C 08 03 A6 */ mtlr r0 /* 8004AECC 00046B2C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004AED0 00046B30 4E 80 00 20 */ blr /* 8004AED4 00046B34 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004AED8 00046B38 7C 08 02 A6 */ mflr r0 /* 8004AEDC 00046B3C C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004AEE0 00046B40 90 01 00 14 */ stw r0, 0x14(r1) /* 8004AEE4 00046B44 80 03 00 2C */ lwz r0, 0x2c(r3) /* 8004AEE8 00046B48 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004AEEC 00046B4C 7C 7F 1B 78 */ mr r31, r3 /* 8004AEF0 00046B50 2C 00 00 00 */ cmpwi r0, 0 /* 8004AEF4 00046B54 41 82 00 34 */ beq lbl_8004AF28 /* 8004AEF8 00046B58 7C 03 03 78 */ mr r3, r0 /* 8004AEFC 00046B5C 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004AF00 00046B60 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004AF04 00046B64 7D 89 03 A6 */ mtctr r12 /* 8004AF08 00046B68 4E 80 04 21 */ bctrl /* 8004AF0C 00046B6C C0 02 83 F8 */ lfs f0, lbl_806409F8-_SDA2_BASE_(r2) /* 8004AF10 00046B70 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8004AF14 00046B74 40 82 00 14 */ bne lbl_8004AF28 /* 8004AF18 00046B78 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004AF1C 00046B7C 2C 03 00 00 */ cmpwi r3, 0 /* 8004AF20 00046B80 41 82 00 08 */ beq lbl_8004AF28 /* 8004AF24 00046B84 C0 23 00 04 */ lfs f1, 4(r3) lbl_8004AF28: /* 8004AF28 00046B88 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004AF2C 00046B8C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004AF30 00046B90 7C 08 03 A6 */ mtlr r0 /* 8004AF34 00046B94 38 21 00 10 */ addi r1, r1, 0x10 /* 8004AF38 00046B98 4E 80 00 20 */ blr /* 8004AF3C 00046B9C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004AF40 00046BA0 7C 08 02 A6 */ mflr r0 /* 8004AF44 00046BA4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004AF48 00046BA8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004AF4C 00046BAC 7C 7F 1B 78 */ mr r31, r3 /* 8004AF50 00046BB0 A0 04 00 38 */ lhz r0, 0x38(r4) /* 8004AF54 00046BB4 28 00 00 0E */ cmplwi r0, 0xe /* 8004AF58 00046BB8 41 81 01 78 */ bgt lbl_8004B0D0 /* 8004AF5C 00046BBC 3C 60 80 41 */ lis r3, lbl_8040A728@ha /* 8004AF60 00046BC0 54 00 10 3A */ slwi r0, r0, 2 /* 8004AF64 00046BC4 38 63 A7 28 */ addi r3, r3, lbl_8040A728@l /* 8004AF68 00046BC8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8004AF6C 00046BCC 7C 69 03 A6 */ mtctr r3 /* 8004AF70 00046BD0 4E 80 04 20 */ bctr /* 8004AF74 00046BD4 38 60 00 8C */ li r3, 0x8c /* 8004AF78 00046BD8 48 18 FA B9 */ bl func_801DAA30 /* 8004AF7C 00046BDC 2C 03 00 00 */ cmpwi r3, 0 /* 8004AF80 00046BE0 41 82 00 0C */ beq lbl_8004AF8C /* 8004AF84 00046BE4 7F E4 FB 78 */ mr r4, r31 /* 8004AF88 00046BE8 48 00 02 B5 */ bl func_8004B23C lbl_8004AF8C: /* 8004AF8C 00046BEC 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004AF90 00046BF0 48 00 01 40 */ b lbl_8004B0D0 /* 8004AF94 00046BF4 38 60 00 14 */ li r3, 0x14 /* 8004AF98 00046BF8 48 18 FA 99 */ bl func_801DAA30 /* 8004AF9C 00046BFC 2C 03 00 00 */ cmpwi r3, 0 /* 8004AFA0 00046C00 41 82 00 0C */ beq lbl_8004AFAC /* 8004AFA4 00046C04 7F E4 FB 78 */ mr r4, r31 /* 8004AFA8 00046C08 48 00 07 25 */ bl func_8004B6CC lbl_8004AFAC: /* 8004AFAC 00046C0C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004AFB0 00046C10 48 00 01 20 */ b lbl_8004B0D0 /* 8004AFB4 00046C14 38 60 00 14 */ li r3, 0x14 /* 8004AFB8 00046C18 48 18 FA 79 */ bl func_801DAA30 /* 8004AFBC 00046C1C 2C 03 00 00 */ cmpwi r3, 0 /* 8004AFC0 00046C20 41 82 00 0C */ beq lbl_8004AFCC /* 8004AFC4 00046C24 7F E4 FB 78 */ mr r4, r31 /* 8004AFC8 00046C28 48 00 07 A5 */ bl func_8004B76C lbl_8004AFCC: /* 8004AFCC 00046C2C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004AFD0 00046C30 48 00 01 00 */ b lbl_8004B0D0 /* 8004AFD4 00046C34 38 60 00 48 */ li r3, 0x48 /* 8004AFD8 00046C38 48 18 FA 59 */ bl func_801DAA30 /* 8004AFDC 00046C3C 2C 03 00 00 */ cmpwi r3, 0 /* 8004AFE0 00046C40 41 82 00 0C */ beq lbl_8004AFEC /* 8004AFE4 00046C44 7F E4 FB 78 */ mr r4, r31 /* 8004AFE8 00046C48 48 00 08 25 */ bl func_8004B80C lbl_8004AFEC: /* 8004AFEC 00046C4C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004AFF0 00046C50 48 00 00 E0 */ b lbl_8004B0D0 /* 8004AFF4 00046C54 38 60 00 48 */ li r3, 0x48 /* 8004AFF8 00046C58 48 18 FA 39 */ bl func_801DAA30 /* 8004AFFC 00046C5C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B000 00046C60 41 82 00 0C */ beq lbl_8004B00C /* 8004B004 00046C64 7F E4 FB 78 */ mr r4, r31 /* 8004B008 00046C68 48 00 0B D1 */ bl func_8004BBD8 lbl_8004B00C: /* 8004B00C 00046C6C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004B010 00046C70 48 00 00 C0 */ b lbl_8004B0D0 /* 8004B014 00046C74 38 60 00 14 */ li r3, 0x14 /* 8004B018 00046C78 48 18 FA 19 */ bl func_801DAA30 /* 8004B01C 00046C7C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B020 00046C80 41 82 00 0C */ beq lbl_8004B02C /* 8004B024 00046C84 7F E4 FB 78 */ mr r4, r31 /* 8004B028 00046C88 48 00 0F 31 */ bl func_8004BF58 lbl_8004B02C: /* 8004B02C 00046C8C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004B030 00046C90 48 00 00 A0 */ b lbl_8004B0D0 /* 8004B034 00046C94 38 60 00 1C */ li r3, 0x1c /* 8004B038 00046C98 48 18 F9 F9 */ bl func_801DAA30 /* 8004B03C 00046C9C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B040 00046CA0 41 82 00 0C */ beq lbl_8004B04C /* 8004B044 00046CA4 7F E4 FB 78 */ mr r4, r31 /* 8004B048 00046CA8 48 00 0F B1 */ bl func_8004BFF8 lbl_8004B04C: /* 8004B04C 00046CAC 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004B050 00046CB0 48 00 00 80 */ b lbl_8004B0D0 /* 8004B054 00046CB4 38 60 00 1C */ li r3, 0x1c /* 8004B058 00046CB8 48 18 F9 D9 */ bl func_801DAA30 /* 8004B05C 00046CBC 2C 03 00 00 */ cmpwi r3, 0 /* 8004B060 00046CC0 41 82 00 0C */ beq lbl_8004B06C /* 8004B064 00046CC4 7F E4 FB 78 */ mr r4, r31 /* 8004B068 00046CC8 48 00 13 85 */ bl func_8004C3EC lbl_8004B06C: /* 8004B06C 00046CCC 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004B070 00046CD0 48 00 00 60 */ b lbl_8004B0D0 /* 8004B074 00046CD4 38 60 00 B8 */ li r3, 0xb8 /* 8004B078 00046CD8 48 18 F9 B9 */ bl func_801DAA30 /* 8004B07C 00046CDC 2C 03 00 00 */ cmpwi r3, 0 /* 8004B080 00046CE0 41 82 00 0C */ beq lbl_8004B08C /* 8004B084 00046CE4 7F E4 FB 78 */ mr r4, r31 /* 8004B088 00046CE8 48 00 16 59 */ bl func_8004C6E0 lbl_8004B08C: /* 8004B08C 00046CEC 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004B090 00046CF0 48 00 00 40 */ b lbl_8004B0D0 /* 8004B094 00046CF4 38 60 00 48 */ li r3, 0x48 /* 8004B098 00046CF8 48 18 F9 99 */ bl func_801DAA30 /* 8004B09C 00046CFC 2C 03 00 00 */ cmpwi r3, 0 /* 8004B0A0 00046D00 41 82 00 0C */ beq lbl_8004B0AC /* 8004B0A4 00046D04 7F E4 FB 78 */ mr r4, r31 /* 8004B0A8 00046D08 48 00 1A 8D */ bl func_8004CB34 lbl_8004B0AC: /* 8004B0AC 00046D0C 90 7F 00 2C */ stw r3, 0x2c(r31) /* 8004B0B0 00046D10 48 00 00 20 */ b lbl_8004B0D0 /* 8004B0B4 00046D14 38 60 00 4C */ li r3, 0x4c /* 8004B0B8 00046D18 48 18 F9 79 */ bl func_801DAA30 /* 8004B0BC 00046D1C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B0C0 00046D20 41 82 00 0C */ beq lbl_8004B0CC /* 8004B0C4 00046D24 7F E4 FB 78 */ mr r4, r31 /* 8004B0C8 00046D28 48 00 21 35 */ bl func_8004D1FC lbl_8004B0CC: /* 8004B0CC 00046D2C 90 7F 00 2C */ stw r3, 0x2c(r31) lbl_8004B0D0: /* 8004B0D0 00046D30 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B0D4 00046D34 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B0D8 00046D38 7C 08 03 A6 */ mtlr r0 /* 8004B0DC 00046D3C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B0E0 00046D40 4E 80 00 20 */ blr /* 8004B0E4 00046D44 80 63 00 2C */ lwz r3, 0x2c(r3) /* 8004B0E8 00046D48 2C 03 00 00 */ cmpwi r3, 0 /* 8004B0EC 00046D4C 4D 82 00 20 */ beqlr /* 8004B0F0 00046D50 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004B0F4 00046D54 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8004B0F8 00046D58 7D 89 03 A6 */ mtctr r12 /* 8004B0FC 00046D5C 4E 80 04 20 */ bctr /* 8004B100 00046D60 4E 80 00 20 */ blr /* 8004B104 00046D64 4E 80 00 20 */ blr /* 8004B108 00046D68 80 63 00 2C */ lwz r3, 0x2c(r3) /* 8004B10C 00046D6C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B110 00046D70 4D 82 00 20 */ beqlr /* 8004B114 00046D74 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004B118 00046D78 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004B11C 00046D7C 7D 89 03 A6 */ mtctr r12 /* 8004B120 00046D80 4E 80 04 20 */ bctr /* 8004B124 00046D84 4E 80 00 20 */ blr /* 8004B128 00046D88 4E 80 00 20 */ blr /* 8004B12C 00046D8C 80 63 00 2C */ lwz r3, 0x2c(r3) /* 8004B130 00046D90 2C 03 00 00 */ cmpwi r3, 0 /* 8004B134 00046D94 4D 82 00 20 */ beqlr /* 8004B138 00046D98 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004B13C 00046D9C 81 8C 00 14 */ lwz r12, 0x14(r12) /* 8004B140 00046DA0 7D 89 03 A6 */ mtctr r12 /* 8004B144 00046DA4 4E 80 04 20 */ bctr /* 8004B148 00046DA8 4E 80 00 20 */ blr /* 8004B14C 00046DAC 4E 80 00 20 */ blr .global func_8004B150 func_8004B150: /* 8004B150 00046DB0 3C A0 80 41 */ lis r5, lbl_8040AA70@ha /* 8004B154 00046DB4 90 83 00 04 */ stw r4, 4(r3) /* 8004B158 00046DB8 38 A5 AA 70 */ addi r5, r5, lbl_8040AA70@l /* 8004B15C 00046DBC 90 A3 00 10 */ stw r5, 0x10(r3) /* 8004B160 00046DC0 80 84 00 14 */ lwz r4, 0x14(r4) /* 8004B164 00046DC4 38 04 00 38 */ addi r0, r4, 0x38 /* 8004B168 00046DC8 90 83 00 08 */ stw r4, 8(r3) /* 8004B16C 00046DCC 90 03 00 0C */ stw r0, 0xc(r3) /* 8004B170 00046DD0 4E 80 00 20 */ blr .global func_8004B174 func_8004B174: /* 8004B174 00046DD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B178 00046DD8 7C 08 02 A6 */ mflr r0 /* 8004B17C 00046DDC 2C 03 00 00 */ cmpwi r3, 0 /* 8004B180 00046DE0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B184 00046DE4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B188 00046DE8 7C 7F 1B 78 */ mr r31, r3 /* 8004B18C 00046DEC 41 82 00 10 */ beq lbl_8004B19C /* 8004B190 00046DF0 2C 04 00 00 */ cmpwi r4, 0 /* 8004B194 00046DF4 40 81 00 08 */ ble lbl_8004B19C /* 8004B198 00046DF8 48 18 F9 21 */ bl func_801DAAB8 lbl_8004B19C: /* 8004B19C 00046DFC 7F E3 FB 78 */ mr r3, r31 /* 8004B1A0 00046E00 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B1A4 00046E04 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B1A8 00046E08 7C 08 03 A6 */ mtlr r0 /* 8004B1AC 00046E0C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B1B0 00046E10 4E 80 00 20 */ blr .global func_8004B1B4 func_8004B1B4: /* 8004B1B4 00046E14 80 63 00 04 */ lwz r3, 4(r3) /* 8004B1B8 00046E18 2C 03 00 00 */ cmpwi r3, 0 /* 8004B1BC 00046E1C 40 82 00 0C */ bne lbl_8004B1C8 /* 8004B1C0 00046E20 38 60 00 00 */ li r3, 0 /* 8004B1C4 00046E24 4E 80 00 20 */ blr lbl_8004B1C8: /* 8004B1C8 00046E28 80 63 00 18 */ lwz r3, 0x18(r3) /* 8004B1CC 00046E2C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B1D0 00046E30 41 82 00 0C */ beq lbl_8004B1DC /* 8004B1D4 00046E34 80 63 00 34 */ lwz r3, 0x34(r3) /* 8004B1D8 00046E38 4E 80 00 20 */ blr lbl_8004B1DC: /* 8004B1DC 00046E3C 38 60 00 00 */ li r3, 0 /* 8004B1E0 00046E40 4E 80 00 20 */ blr .global func_8004B1E4 func_8004B1E4: /* 8004B1E4 00046E44 80 63 00 04 */ lwz r3, 4(r3) /* 8004B1E8 00046E48 2C 03 00 00 */ cmpwi r3, 0 /* 8004B1EC 00046E4C 40 82 00 0C */ bne lbl_8004B1F8 /* 8004B1F0 00046E50 38 60 00 00 */ li r3, 0 /* 8004B1F4 00046E54 4E 80 00 20 */ blr lbl_8004B1F8: /* 8004B1F8 00046E58 80 63 00 18 */ lwz r3, 0x18(r3) /* 8004B1FC 00046E5C 2C 03 00 00 */ cmpwi r3, 0 /* 8004B200 00046E60 41 82 00 18 */ beq lbl_8004B218 /* 8004B204 00046E64 80 63 00 34 */ lwz r3, 0x34(r3) /* 8004B208 00046E68 2C 03 00 00 */ cmpwi r3, 0 /* 8004B20C 00046E6C 41 82 00 0C */ beq lbl_8004B218 /* 8004B210 00046E70 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004B214 00046E74 4E 80 00 20 */ blr lbl_8004B218: /* 8004B218 00046E78 38 60 00 00 */ li r3, 0 /* 8004B21C 00046E7C 4E 80 00 20 */ blr /* 8004B220 00046E80 80 63 00 08 */ lwz r3, 8(r3) /* 8004B224 00046E84 2C 03 00 00 */ cmpwi r3, 0 /* 8004B228 00046E88 41 82 00 0C */ beq lbl_8004B234 /* 8004B22C 00046E8C C0 23 00 04 */ lfs f1, 4(r3) /* 8004B230 00046E90 4E 80 00 20 */ blr lbl_8004B234: /* 8004B234 00046E94 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004B238 00046E98 4E 80 00 20 */ blr .global func_8004B23C func_8004B23C: /* 8004B23C 00046E9C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B240 00046EA0 7C 08 02 A6 */ mflr r0 /* 8004B244 00046EA4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B248 00046EA8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B24C 00046EAC 7C 7F 1B 78 */ mr r31, r3 /* 8004B250 00046EB0 4B FF FF 01 */ bl func_8004B150 /* 8004B254 00046EB4 3C 80 80 41 */ lis r4, lbl_8040AA2C@ha /* 8004B258 00046EB8 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004B25C 00046EBC 38 84 AA 2C */ addi r4, r4, lbl_8040AA2C@l /* 8004B260 00046EC0 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004B264 00046EC4 48 00 58 D1 */ bl func_80050B34 /* 8004B268 00046EC8 80 9F 00 0C */ lwz r4, 0xc(r31) /* 8004B26C 00046ECC 7F E3 FB 78 */ mr r3, r31 /* 8004B270 00046ED0 38 04 00 08 */ addi r0, r4, 8 /* 8004B274 00046ED4 90 1F 00 14 */ stw r0, 0x14(r31) /* 8004B278 00046ED8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B27C 00046EDC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B280 00046EE0 7C 08 03 A6 */ mtlr r0 /* 8004B284 00046EE4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B288 00046EE8 4E 80 00 20 */ blr /* 8004B28C 00046EEC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B290 00046EF0 7C 08 02 A6 */ mflr r0 /* 8004B294 00046EF4 2C 03 00 00 */ cmpwi r3, 0 /* 8004B298 00046EF8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B29C 00046EFC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B2A0 00046F00 7C 9F 23 78 */ mr r31, r4 /* 8004B2A4 00046F04 93 C1 00 08 */ stw r30, 8(r1) /* 8004B2A8 00046F08 7C 7E 1B 78 */ mr r30, r3 /* 8004B2AC 00046F0C 41 82 00 1C */ beq lbl_8004B2C8 /* 8004B2B0 00046F10 38 80 00 00 */ li r4, 0 /* 8004B2B4 00046F14 4B FF FE C1 */ bl func_8004B174 /* 8004B2B8 00046F18 2C 1F 00 00 */ cmpwi r31, 0 /* 8004B2BC 00046F1C 40 81 00 0C */ ble lbl_8004B2C8 /* 8004B2C0 00046F20 7F C3 F3 78 */ mr r3, r30 /* 8004B2C4 00046F24 48 18 F7 F5 */ bl func_801DAAB8 lbl_8004B2C8: /* 8004B2C8 00046F28 7F C3 F3 78 */ mr r3, r30 /* 8004B2CC 00046F2C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B2D0 00046F30 83 C1 00 08 */ lwz r30, 8(r1) /* 8004B2D4 00046F34 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B2D8 00046F38 7C 08 03 A6 */ mtlr r0 /* 8004B2DC 00046F3C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B2E0 00046F40 4E 80 00 20 */ blr /* 8004B2E4 00046F44 38 00 00 00 */ li r0, 0 /* 8004B2E8 00046F48 90 03 00 88 */ stw r0, 0x88(r3) /* 8004B2EC 00046F4C 48 00 00 04 */ b func_8004B2F0 .global func_8004B2F0 func_8004B2F0: /* 8004B2F0 00046F50 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B2F4 00046F54 7C 08 02 A6 */ mflr r0 /* 8004B2F8 00046F58 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004B2FC 00046F5C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B300 00046F60 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B304 00046F64 7C 7F 1B 78 */ mr r31, r3 /* 8004B308 00046F68 80 03 00 88 */ lwz r0, 0x88(r3) /* 8004B30C 00046F6C 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004B310 00046F70 1C 00 00 0C */ mulli r0, r0, 0xc /* 8004B314 00046F74 7C 84 02 14 */ add r4, r4, r0 /* 8004B318 00046F78 38 84 00 08 */ addi r4, r4, 8 /* 8004B31C 00046F7C 90 83 00 18 */ stw r4, 0x18(r3) /* 8004B320 00046F80 C0 04 00 08 */ lfs f0, 8(r4) /* 8004B324 00046F84 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004B328 00046F88 40 82 00 20 */ bne lbl_8004B348 /* 8004B32C 00046F8C 38 63 00 58 */ addi r3, r3, 0x58 /* 8004B330 00046F90 4B FF FA 31 */ bl func_8004AD60 /* 8004B334 00046F94 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004B338 00046F98 7F E3 FB 78 */ mr r3, r31 /* 8004B33C 00046F9C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004B340 00046FA0 7D 89 03 A6 */ mtctr r12 /* 8004B344 00046FA4 4E 80 04 21 */ bctrl lbl_8004B348: /* 8004B348 00046FA8 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004B34C 00046FAC 48 00 58 95 */ bl func_80050BE0 /* 8004B350 00046FB0 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004B354 00046FB4 38 9F 00 68 */ addi r4, r31, 0x68 /* 8004B358 00046FB8 4B FF F9 9D */ bl func_8004ACF4 /* 8004B35C 00046FBC 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004B360 00046FC0 38 9F 00 78 */ addi r4, r31, 0x78 /* 8004B364 00046FC4 38 63 00 04 */ addi r3, r3, 4 /* 8004B368 00046FC8 4B FF F9 8D */ bl func_8004ACF4 /* 8004B36C 00046FCC 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8004B370 00046FD0 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004B374 00046FD4 38 9F 00 68 */ addi r4, r31, 0x68 /* 8004B378 00046FD8 38 BF 00 78 */ addi r5, r31, 0x78 /* 8004B37C 00046FDC C0 26 00 08 */ lfs f1, 8(r6) /* 8004B380 00046FE0 38 DF 00 58 */ addi r6, r31, 0x58 /* 8004B384 00046FE4 38 E0 00 00 */ li r7, 0 /* 8004B388 00046FE8 48 00 57 C5 */ bl func_80050B4C /* 8004B38C 00046FEC 80 7F 00 88 */ lwz r3, 0x88(r31) /* 8004B390 00046FF0 38 00 00 01 */ li r0, 1 /* 8004B394 00046FF4 98 1F 00 00 */ stb r0, 0(r31) /* 8004B398 00046FF8 38 03 00 01 */ addi r0, r3, 1 /* 8004B39C 00046FFC 90 1F 00 88 */ stw r0, 0x88(r31) /* 8004B3A0 00047000 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B3A4 00047004 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B3A8 00047008 7C 08 03 A6 */ mtlr r0 /* 8004B3AC 0004700C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B3B0 00047010 4E 80 00 20 */ blr /* 8004B3B4 00047014 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004B3B8 00047018 7C 08 02 A6 */ mflr r0 /* 8004B3BC 0004701C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004B3C0 00047020 38 00 00 00 */ li r0, 0 /* 8004B3C4 00047024 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004B3C8 00047028 7C 7F 1B 78 */ mr r31, r3 /* 8004B3CC 0004702C 98 03 00 00 */ stb r0, 0(r3) /* 8004B3D0 00047030 38 63 00 1C */ addi r3, r3, 0x1c /* 8004B3D4 00047034 48 00 58 0D */ bl func_80050BE0 /* 8004B3D8 00047038 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004B3DC 0004703C C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004B3E0 00047040 88 64 00 05 */ lbz r3, 5(r4) /* 8004B3E4 00047044 38 03 FF FF */ addi r0, r3, -1 /* 8004B3E8 00047048 1C 00 00 0C */ mulli r0, r0, 0xc /* 8004B3EC 0004704C 7C 64 02 14 */ add r3, r4, r0 /* 8004B3F0 00047050 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8004B3F4 00047054 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004B3F8 00047058 41 82 00 24 */ beq lbl_8004B41C /* 8004B3FC 0004705C 38 00 00 80 */ li r0, 0x80 /* 8004B400 00047060 7F E3 FB 78 */ mr r3, r31 /* 8004B404 00047064 98 01 00 08 */ stb r0, 8(r1) /* 8004B408 00047068 38 81 00 08 */ addi r4, r1, 8 /* 8004B40C 0004706C 98 01 00 09 */ stb r0, 9(r1) /* 8004B410 00047070 98 01 00 0A */ stb r0, 0xa(r1) /* 8004B414 00047074 98 01 00 0B */ stb r0, 0xb(r1) /* 8004B418 00047078 48 00 00 B5 */ bl func_8004B4CC lbl_8004B41C: /* 8004B41C 0004707C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004B420 00047080 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004B424 00047084 7C 08 03 A6 */ mtlr r0 /* 8004B428 00047088 38 21 00 20 */ addi r1, r1, 0x20 /* 8004B42C 0004708C 4E 80 00 20 */ blr /* 8004B430 00047090 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004B434 00047094 7C 08 02 A6 */ mflr r0 /* 8004B438 00047098 90 01 00 24 */ stw r0, 0x24(r1) /* 8004B43C 0004709C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004B440 000470A0 7C 7F 1B 78 */ mr r31, r3 /* 8004B444 000470A4 88 03 00 00 */ lbz r0, 0(r3) /* 8004B448 000470A8 2C 00 00 00 */ cmpwi r0, 0 /* 8004B44C 000470AC 41 82 00 6C */ beq lbl_8004B4B8 /* 8004B450 000470B0 81 83 00 54 */ lwz r12, 0x54(r3) /* 8004B454 000470B4 81 8C 00 08 */ lwz r12, 8(r12) /* 8004B458 000470B8 7D 89 03 A6 */ mtctr r12 /* 8004B45C 000470BC 38 63 00 1C */ addi r3, r3, 0x1c /* 8004B460 000470C0 4E 80 04 21 */ bctrl /* 8004B464 000470C4 2C 03 00 00 */ cmpwi r3, 0 /* 8004B468 000470C8 40 82 00 38 */ bne lbl_8004B4A0 /* 8004B46C 000470CC 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004B470 000470D0 80 9F 00 88 */ lwz r4, 0x88(r31) /* 8004B474 000470D4 88 03 00 05 */ lbz r0, 5(r3) /* 8004B478 000470D8 7C 04 00 00 */ cmpw r4, r0 /* 8004B47C 000470DC 41 80 00 1C */ blt lbl_8004B498 /* 8004B480 000470E0 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004B484 000470E4 7F E3 FB 78 */ mr r3, r31 /* 8004B488 000470E8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004B48C 000470EC 7D 89 03 A6 */ mtctr r12 /* 8004B490 000470F0 4E 80 04 21 */ bctrl /* 8004B494 000470F4 48 00 00 0C */ b lbl_8004B4A0 lbl_8004B498: /* 8004B498 000470F8 7F E3 FB 78 */ mr r3, r31 /* 8004B49C 000470FC 4B FF FE 55 */ bl func_8004B2F0 lbl_8004B4A0: /* 8004B4A0 00047100 38 7F 00 58 */ addi r3, r31, 0x58 /* 8004B4A4 00047104 38 81 00 08 */ addi r4, r1, 8 /* 8004B4A8 00047108 4B FF F8 B9 */ bl func_8004AD60 /* 8004B4AC 0004710C 7F E3 FB 78 */ mr r3, r31 /* 8004B4B0 00047110 38 81 00 08 */ addi r4, r1, 8 /* 8004B4B4 00047114 48 00 00 19 */ bl func_8004B4CC lbl_8004B4B8: /* 8004B4B8 00047118 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004B4BC 0004711C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004B4C0 00047120 7C 08 03 A6 */ mtlr r0 /* 8004B4C4 00047124 38 21 00 20 */ addi r1, r1, 0x20 /* 8004B4C8 00047128 4E 80 00 20 */ blr .global func_8004B4CC func_8004B4CC: /* 8004B4CC 0004712C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004B4D0 00047130 7C 08 02 A6 */ mflr r0 /* 8004B4D4 00047134 90 01 00 24 */ stw r0, 0x24(r1) /* 8004B4D8 00047138 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004B4DC 0004713C 3B E0 00 00 */ li r31, 0 /* 8004B4E0 00047140 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004B4E4 00047144 7C 9E 23 78 */ mr r30, r4 /* 8004B4E8 00047148 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004B4EC 0004714C 93 81 00 10 */ stw r28, 0x10(r1) /* 8004B4F0 00047150 7C 7C 1B 78 */ mr r28, r3 /* 8004B4F4 00047154 48 00 23 19 */ bl func_8004D80C /* 8004B4F8 00047158 3B A3 34 C0 */ addi r29, r3, 0x34c0 /* 8004B4FC 0004715C 4B FF A0 95 */ bl func_80045590 /* 8004B500 00047160 80 9C 00 04 */ lwz r4, 4(r28) /* 8004B504 00047164 80 84 00 18 */ lwz r4, 0x18(r4) /* 8004B508 00047168 2C 04 00 00 */ cmpwi r4, 0 /* 8004B50C 0004716C 41 82 00 08 */ beq lbl_8004B514 /* 8004B510 00047170 83 E4 00 34 */ lwz r31, 0x34(r4) lbl_8004B514: /* 8004B514 00047174 80 9C 00 14 */ lwz r4, 0x14(r28) /* 8004B518 00047178 80 04 00 00 */ lwz r0, 0(r4) /* 8004B51C 0004717C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8004B520 00047180 41 82 00 14 */ beq lbl_8004B534 /* 8004B524 00047184 38 00 00 80 */ li r0, 0x80 /* 8004B528 00047188 98 1E 00 00 */ stb r0, 0(r30) /* 8004B52C 0004718C 98 1E 00 01 */ stb r0, 1(r30) /* 8004B530 00047190 98 1E 00 02 */ stb r0, 2(r30) lbl_8004B534: /* 8004B534 00047194 80 9C 00 14 */ lwz r4, 0x14(r28) /* 8004B538 00047198 80 04 00 00 */ lwz r0, 0(r4) /* 8004B53C 0004719C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004B540 000471A0 40 82 00 0C */ bne lbl_8004B54C /* 8004B544 000471A4 38 00 00 FF */ li r0, 0xff /* 8004B548 000471A8 98 1E 00 03 */ stb r0, 3(r30) lbl_8004B54C: /* 8004B54C 000471AC 80 9C 00 14 */ lwz r4, 0x14(r28) /* 8004B550 000471B0 88 04 00 04 */ lbz r0, 4(r4) /* 8004B554 000471B4 2C 00 00 01 */ cmpwi r0, 1 /* 8004B558 000471B8 41 82 00 30 */ beq lbl_8004B588 /* 8004B55C 000471BC 40 80 00 10 */ bge lbl_8004B56C /* 8004B560 000471C0 2C 00 00 00 */ cmpwi r0, 0 /* 8004B564 000471C4 40 80 00 14 */ bge lbl_8004B578 /* 8004B568 000471C8 48 00 00 5C */ b lbl_8004B5C4 lbl_8004B56C: /* 8004B56C 000471CC 2C 00 00 03 */ cmpwi r0, 3 /* 8004B570 000471D0 40 80 00 54 */ bge lbl_8004B5C4 /* 8004B574 000471D4 48 00 00 24 */ b lbl_8004B598 lbl_8004B578: /* 8004B578 000471D8 7F A3 EB 78 */ mr r3, r29 /* 8004B57C 000471DC 7F C4 F3 78 */ mr r4, r30 /* 8004B580 000471E0 48 00 36 21 */ bl func_8004EBA0 /* 8004B584 000471E4 48 00 00 40 */ b lbl_8004B5C4 lbl_8004B588: /* 8004B588 000471E8 38 80 01 00 */ li r4, 0x100 /* 8004B58C 000471EC 38 A0 00 00 */ li r5, 0 /* 8004B590 000471F0 4B FF A5 71 */ bl func_80045B00 /* 8004B594 000471F4 7C 7F 1B 78 */ mr r31, r3 lbl_8004B598: /* 8004B598 000471F8 80 7C 00 14 */ lwz r3, 0x14(r28) /* 8004B59C 000471FC 80 03 00 00 */ lwz r0, 0(r3) /* 8004B5A0 00047200 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8004B5A4 00047204 41 82 00 14 */ beq lbl_8004B5B8 /* 8004B5A8 00047208 7F E3 FB 78 */ mr r3, r31 /* 8004B5AC 0004720C 7F C4 F3 78 */ mr r4, r30 /* 8004B5B0 00047210 4B FF 0D 15 */ bl func_8003C2C4 /* 8004B5B4 00047214 48 00 00 10 */ b lbl_8004B5C4 lbl_8004B5B8: /* 8004B5B8 00047218 7F E3 FB 78 */ mr r3, r31 /* 8004B5BC 0004721C 7F C4 F3 78 */ mr r4, r30 /* 8004B5C0 00047220 4B FF 0E FD */ bl func_8003C4BC lbl_8004B5C4: /* 8004B5C4 00047224 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004B5C8 00047228 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004B5CC 0004722C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004B5D0 00047230 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004B5D4 00047234 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004B5D8 00047238 7C 08 03 A6 */ mtlr r0 /* 8004B5DC 0004723C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004B5E0 00047240 4E 80 00 20 */ blr /* 8004B5E4 00047244 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004B5E8 00047248 39 00 00 00 */ li r8, 0 /* 8004B5EC 0004724C C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004B5F0 00047250 88 E4 00 05 */ lbz r7, 5(r4) /* 8004B5F4 00047254 2C 87 00 00 */ cmpwi cr1, r7, 0 /* 8004B5F8 00047258 4C 85 00 20 */ blelr cr1 /* 8004B5FC 0004725C 2C 07 00 08 */ cmpwi r7, 8 /* 8004B600 00047260 38 A7 FF F8 */ addi r5, r7, -8 /* 8004B604 00047264 40 81 00 94 */ ble lbl_8004B698 /* 8004B608 00047268 38 C0 00 00 */ li r6, 0 /* 8004B60C 0004726C 41 84 00 18 */ blt cr1, lbl_8004B624 /* 8004B610 00047270 3C 80 80 00 */ lis r4, 0x7FFFFFFE@ha /* 8004B614 00047274 38 04 FF FE */ addi r0, r4, 0x7FFFFFFE@l /* 8004B618 00047278 7C 07 00 00 */ cmpw r7, r0 /* 8004B61C 0004727C 41 81 00 08 */ bgt lbl_8004B624 /* 8004B620 00047280 38 C0 00 01 */ li r6, 1 lbl_8004B624: /* 8004B624 00047284 2C 06 00 00 */ cmpwi r6, 0 /* 8004B628 00047288 41 82 00 70 */ beq lbl_8004B698 /* 8004B62C 0004728C 38 05 00 07 */ addi r0, r5, 7 /* 8004B630 00047290 38 80 00 00 */ li r4, 0 /* 8004B634 00047294 54 00 E8 FE */ srwi r0, r0, 3 /* 8004B638 00047298 7C 09 03 A6 */ mtctr r0 /* 8004B63C 0004729C 2C 05 00 00 */ cmpwi r5, 0 /* 8004B640 000472A0 40 81 00 58 */ ble lbl_8004B698 lbl_8004B644: /* 8004B644 000472A4 80 03 00 14 */ lwz r0, 0x14(r3) /* 8004B648 000472A8 39 08 00 08 */ addi r8, r8, 8 /* 8004B64C 000472AC 7C A0 22 14 */ add r5, r0, r4 /* 8004B650 000472B0 38 84 00 60 */ addi r4, r4, 0x60 /* 8004B654 000472B4 C0 45 00 10 */ lfs f2, 0x10(r5) /* 8004B658 000472B8 C0 05 00 1C */ lfs f0, 0x1c(r5) /* 8004B65C 000472BC EC 21 10 2A */ fadds f1, f1, f2 /* 8004B660 000472C0 C0 C5 00 28 */ lfs f6, 0x28(r5) /* 8004B664 000472C4 C0 A5 00 34 */ lfs f5, 0x34(r5) /* 8004B668 000472C8 C0 85 00 40 */ lfs f4, 0x40(r5) /* 8004B66C 000472CC EC 21 00 2A */ fadds f1, f1, f0 /* 8004B670 000472D0 C0 65 00 4C */ lfs f3, 0x4c(r5) /* 8004B674 000472D4 C0 45 00 58 */ lfs f2, 0x58(r5) /* 8004B678 000472D8 C0 05 00 64 */ lfs f0, 0x64(r5) /* 8004B67C 000472DC EC 21 30 2A */ fadds f1, f1, f6 /* 8004B680 000472E0 EC 21 28 2A */ fadds f1, f1, f5 /* 8004B684 000472E4 EC 21 20 2A */ fadds f1, f1, f4 /* 8004B688 000472E8 EC 21 18 2A */ fadds f1, f1, f3 /* 8004B68C 000472EC EC 21 10 2A */ fadds f1, f1, f2 /* 8004B690 000472F0 EC 21 00 2A */ fadds f1, f1, f0 /* 8004B694 000472F4 42 00 FF B0 */ bdnz lbl_8004B644 lbl_8004B698: /* 8004B698 000472F8 80 A3 00 14 */ lwz r5, 0x14(r3) /* 8004B69C 000472FC 1C 88 00 0C */ mulli r4, r8, 0xc /* 8004B6A0 00047300 88 65 00 05 */ lbz r3, 5(r5) /* 8004B6A4 00047304 7C 08 18 50 */ subf r0, r8, r3 /* 8004B6A8 00047308 7C 09 03 A6 */ mtctr r0 /* 8004B6AC 0004730C 7C 08 18 00 */ cmpw r8, r3 /* 8004B6B0 00047310 4C 80 00 20 */ bgelr lbl_8004B6B4: /* 8004B6B4 00047314 7C 65 22 14 */ add r3, r5, r4 /* 8004B6B8 00047318 38 84 00 0C */ addi r4, r4, 0xc /* 8004B6BC 0004731C C0 03 00 10 */ lfs f0, 0x10(r3) /* 8004B6C0 00047320 EC 21 00 2A */ fadds f1, f1, f0 /* 8004B6C4 00047324 42 00 FF F0 */ bdnz lbl_8004B6B4 /* 8004B6C8 00047328 4E 80 00 20 */ blr .global func_8004B6CC func_8004B6CC: /* 8004B6CC 0004732C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B6D0 00047330 7C 08 02 A6 */ mflr r0 /* 8004B6D4 00047334 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B6D8 00047338 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B6DC 0004733C 7C 7F 1B 78 */ mr r31, r3 /* 8004B6E0 00047340 4B FF FA 71 */ bl func_8004B150 /* 8004B6E4 00047344 3C 80 80 41 */ lis r4, lbl_8040A9E4@ha /* 8004B6E8 00047348 7F E3 FB 78 */ mr r3, r31 /* 8004B6EC 0004734C 38 84 A9 E4 */ addi r4, r4, lbl_8040A9E4@l /* 8004B6F0 00047350 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004B6F4 00047354 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B6F8 00047358 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B6FC 0004735C 7C 08 03 A6 */ mtlr r0 /* 8004B700 00047360 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B704 00047364 4E 80 00 20 */ blr /* 8004B708 00047368 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B70C 0004736C 7C 08 02 A6 */ mflr r0 /* 8004B710 00047370 2C 03 00 00 */ cmpwi r3, 0 /* 8004B714 00047374 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B718 00047378 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B71C 0004737C 7C 9F 23 78 */ mr r31, r4 /* 8004B720 00047380 93 C1 00 08 */ stw r30, 8(r1) /* 8004B724 00047384 7C 7E 1B 78 */ mr r30, r3 /* 8004B728 00047388 41 82 00 1C */ beq lbl_8004B744 /* 8004B72C 0004738C 38 80 00 00 */ li r4, 0 /* 8004B730 00047390 4B FF FA 45 */ bl func_8004B174 /* 8004B734 00047394 2C 1F 00 00 */ cmpwi r31, 0 /* 8004B738 00047398 40 81 00 0C */ ble lbl_8004B744 /* 8004B73C 0004739C 7F C3 F3 78 */ mr r3, r30 /* 8004B740 000473A0 48 18 F3 79 */ bl func_801DAAB8 lbl_8004B744: /* 8004B744 000473A4 7F C3 F3 78 */ mr r3, r30 /* 8004B748 000473A8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B74C 000473AC 83 C1 00 08 */ lwz r30, 8(r1) /* 8004B750 000473B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B754 000473B4 7C 08 03 A6 */ mtlr r0 /* 8004B758 000473B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B75C 000473BC 4E 80 00 20 */ blr /* 8004B760 000473C0 4E 80 00 20 */ blr /* 8004B764 000473C4 4E 80 00 20 */ blr /* 8004B768 000473C8 4E 80 00 20 */ blr .global func_8004B76C func_8004B76C: /* 8004B76C 000473CC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B770 000473D0 7C 08 02 A6 */ mflr r0 /* 8004B774 000473D4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B778 000473D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B77C 000473DC 7C 7F 1B 78 */ mr r31, r3 /* 8004B780 000473E0 4B FF F9 D1 */ bl func_8004B150 /* 8004B784 000473E4 3C 80 80 41 */ lis r4, lbl_8040A998@ha /* 8004B788 000473E8 7F E3 FB 78 */ mr r3, r31 /* 8004B78C 000473EC 38 84 A9 98 */ addi r4, r4, lbl_8040A998@l /* 8004B790 000473F0 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004B794 000473F4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B798 000473F8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B79C 000473FC 7C 08 03 A6 */ mtlr r0 /* 8004B7A0 00047400 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B7A4 00047404 4E 80 00 20 */ blr /* 8004B7A8 00047408 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B7AC 0004740C 7C 08 02 A6 */ mflr r0 /* 8004B7B0 00047410 2C 03 00 00 */ cmpwi r3, 0 /* 8004B7B4 00047414 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B7B8 00047418 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B7BC 0004741C 7C 9F 23 78 */ mr r31, r4 /* 8004B7C0 00047420 93 C1 00 08 */ stw r30, 8(r1) /* 8004B7C4 00047424 7C 7E 1B 78 */ mr r30, r3 /* 8004B7C8 00047428 41 82 00 1C */ beq lbl_8004B7E4 /* 8004B7CC 0004742C 38 80 00 00 */ li r4, 0 /* 8004B7D0 00047430 4B FF F9 A5 */ bl func_8004B174 /* 8004B7D4 00047434 2C 1F 00 00 */ cmpwi r31, 0 /* 8004B7D8 00047438 40 81 00 0C */ ble lbl_8004B7E4 /* 8004B7DC 0004743C 7F C3 F3 78 */ mr r3, r30 /* 8004B7E0 00047440 48 18 F2 D9 */ bl func_801DAAB8 lbl_8004B7E4: /* 8004B7E4 00047444 7F C3 F3 78 */ mr r3, r30 /* 8004B7E8 00047448 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B7EC 0004744C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004B7F0 00047450 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B7F4 00047454 7C 08 03 A6 */ mtlr r0 /* 8004B7F8 00047458 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B7FC 0004745C 4E 80 00 20 */ blr /* 8004B800 00047460 4E 80 00 20 */ blr /* 8004B804 00047464 4E 80 00 20 */ blr /* 8004B808 00047468 4E 80 00 20 */ blr .global func_8004B80C func_8004B80C: /* 8004B80C 0004746C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B810 00047470 7C 08 02 A6 */ mflr r0 /* 8004B814 00047474 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B818 00047478 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B81C 0004747C 7C 7F 1B 78 */ mr r31, r3 /* 8004B820 00047480 4B FF F9 31 */ bl func_8004B150 /* 8004B824 00047484 3C 80 80 41 */ lis r4, lbl_8040A954@ha /* 8004B828 00047488 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004B82C 0004748C 38 84 A9 54 */ addi r4, r4, lbl_8040A954@l /* 8004B830 00047490 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004B834 00047494 48 00 4A F1 */ bl func_80050324 /* 8004B838 00047498 80 9F 00 0C */ lwz r4, 0xc(r31) /* 8004B83C 0004749C 38 00 00 00 */ li r0, 0 /* 8004B840 000474A0 90 1F 00 44 */ stw r0, 0x44(r31) /* 8004B844 000474A4 7F E3 FB 78 */ mr r3, r31 /* 8004B848 000474A8 38 04 00 08 */ addi r0, r4, 8 /* 8004B84C 000474AC 90 1F 00 14 */ stw r0, 0x14(r31) /* 8004B850 000474B0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B854 000474B4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B858 000474B8 7C 08 03 A6 */ mtlr r0 /* 8004B85C 000474BC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B860 000474C0 4E 80 00 20 */ blr /* 8004B864 000474C4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B868 000474C8 7C 08 02 A6 */ mflr r0 /* 8004B86C 000474CC 2C 03 00 00 */ cmpwi r3, 0 /* 8004B870 000474D0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B874 000474D4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B878 000474D8 7C 9F 23 78 */ mr r31, r4 /* 8004B87C 000474DC 93 C1 00 08 */ stw r30, 8(r1) /* 8004B880 000474E0 7C 7E 1B 78 */ mr r30, r3 /* 8004B884 000474E4 41 82 00 1C */ beq lbl_8004B8A0 /* 8004B888 000474E8 38 80 00 00 */ li r4, 0 /* 8004B88C 000474EC 4B FF F8 E9 */ bl func_8004B174 /* 8004B890 000474F0 2C 1F 00 00 */ cmpwi r31, 0 /* 8004B894 000474F4 40 81 00 0C */ ble lbl_8004B8A0 /* 8004B898 000474F8 7F C3 F3 78 */ mr r3, r30 /* 8004B89C 000474FC 48 18 F2 1D */ bl func_801DAAB8 lbl_8004B8A0: /* 8004B8A0 00047500 7F C3 F3 78 */ mr r3, r30 /* 8004B8A4 00047504 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B8A8 00047508 83 C1 00 08 */ lwz r30, 8(r1) /* 8004B8AC 0004750C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B8B0 00047510 7C 08 03 A6 */ mtlr r0 /* 8004B8B4 00047514 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B8B8 00047518 4E 80 00 20 */ blr /* 8004B8BC 0004751C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B8C0 00047520 7C 08 02 A6 */ mflr r0 /* 8004B8C4 00047524 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B8C8 00047528 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B8CC 0004752C 7C 7F 1B 78 */ mr r31, r3 /* 8004B8D0 00047530 4B FF F9 15 */ bl func_8004B1E4 /* 8004B8D4 00047534 2C 03 00 00 */ cmpwi r3, 0 /* 8004B8D8 00047538 41 82 00 14 */ beq lbl_8004B8EC /* 8004B8DC 0004753C 38 00 00 00 */ li r0, 0 /* 8004B8E0 00047540 7F E3 FB 78 */ mr r3, r31 /* 8004B8E4 00047544 90 1F 00 44 */ stw r0, 0x44(r31) /* 8004B8E8 00047548 48 00 00 19 */ bl func_8004B900 lbl_8004B8EC: /* 8004B8EC 0004754C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B8F0 00047550 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B8F4 00047554 7C 08 03 A6 */ mtlr r0 /* 8004B8F8 00047558 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B8FC 0004755C 4E 80 00 20 */ blr .global func_8004B900 func_8004B900: /* 8004B900 00047560 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B904 00047564 7C 08 02 A6 */ mflr r0 /* 8004B908 00047568 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004B90C 0004756C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B910 00047570 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B914 00047574 7C 7F 1B 78 */ mr r31, r3 /* 8004B918 00047578 80 03 00 44 */ lwz r0, 0x44(r3) /* 8004B91C 0004757C 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004B920 00047580 1C 00 00 0C */ mulli r0, r0, 0xc /* 8004B924 00047584 7C 84 02 14 */ add r4, r4, r0 /* 8004B928 00047588 38 84 00 08 */ addi r4, r4, 8 /* 8004B92C 0004758C 90 83 00 18 */ stw r4, 0x18(r3) /* 8004B930 00047590 C0 04 00 08 */ lfs f0, 8(r4) /* 8004B934 00047594 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004B938 00047598 40 82 00 1C */ bne lbl_8004B954 /* 8004B93C 0004759C C0 04 00 00 */ lfs f0, 0(r4) /* 8004B940 000475A0 D0 03 00 40 */ stfs f0, 0x40(r3) /* 8004B944 000475A4 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004B948 000475A8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004B94C 000475AC 7D 89 03 A6 */ mtctr r12 /* 8004B950 000475B0 4E 80 04 21 */ bctrl lbl_8004B954: /* 8004B954 000475B4 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004B958 000475B8 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004B95C 000475BC 38 DF 00 40 */ addi r6, r31, 0x40 /* 8004B960 000475C0 38 E0 00 00 */ li r7, 0 /* 8004B964 000475C4 C0 24 00 08 */ lfs f1, 8(r4) /* 8004B968 000475C8 38 A4 00 04 */ addi r5, r4, 4 /* 8004B96C 000475CC 48 00 49 D1 */ bl func_8005033C /* 8004B970 000475D0 80 7F 00 44 */ lwz r3, 0x44(r31) /* 8004B974 000475D4 38 00 00 01 */ li r0, 1 /* 8004B978 000475D8 98 1F 00 00 */ stb r0, 0(r31) /* 8004B97C 000475DC 38 03 00 01 */ addi r0, r3, 1 /* 8004B980 000475E0 90 1F 00 44 */ stw r0, 0x44(r31) /* 8004B984 000475E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B988 000475E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B98C 000475EC 7C 08 03 A6 */ mtlr r0 /* 8004B990 000475F0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B994 000475F4 4E 80 00 20 */ blr /* 8004B998 000475F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004B99C 000475FC 7C 08 02 A6 */ mflr r0 /* 8004B9A0 00047600 90 01 00 14 */ stw r0, 0x14(r1) /* 8004B9A4 00047604 38 00 00 00 */ li r0, 0 /* 8004B9A8 00047608 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004B9AC 0004760C 7C 7F 1B 78 */ mr r31, r3 /* 8004B9B0 00047610 98 03 00 00 */ stb r0, 0(r3) /* 8004B9B4 00047614 38 63 00 1C */ addi r3, r3, 0x1c /* 8004B9B8 00047618 48 00 49 D1 */ bl func_80050388 /* 8004B9BC 0004761C 7F E3 FB 78 */ mr r3, r31 /* 8004B9C0 00047620 4B FF F8 25 */ bl func_8004B1E4 /* 8004B9C4 00047624 2C 03 00 00 */ cmpwi r3, 0 /* 8004B9C8 00047628 41 82 00 0C */ beq lbl_8004B9D4 /* 8004B9CC 0004762C 38 80 00 00 */ li r4, 0 /* 8004B9D0 00047630 48 1A A7 4D */ bl func_801F611C lbl_8004B9D4: /* 8004B9D4 00047634 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004B9D8 00047638 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004B9DC 0004763C 7C 08 03 A6 */ mtlr r0 /* 8004B9E0 00047640 38 21 00 10 */ addi r1, r1, 0x10 /* 8004B9E4 00047644 4E 80 00 20 */ blr /* 8004B9E8 00047648 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004B9EC 0004764C 7C 08 02 A6 */ mflr r0 /* 8004B9F0 00047650 90 01 00 34 */ stw r0, 0x34(r1) /* 8004B9F4 00047654 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8004B9F8 00047658 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8004B9FC 0004765C FF E0 08 90 */ fmr f31, f1 /* 8004BA00 00047660 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004BA04 00047664 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004BA08 00047668 7C 7E 1B 78 */ mr r30, r3 /* 8004BA0C 0004766C 4B FE 76 7D */ bl func_80033088 /* 8004BA10 00047670 88 1E 00 00 */ lbz r0, 0(r30) /* 8004BA14 00047674 2C 00 00 00 */ cmpwi r0, 0 /* 8004BA18 00047678 41 82 00 B8 */ beq lbl_8004BAD0 /* 8004BA1C 0004767C 81 9E 00 3C */ lwz r12, 0x3c(r30) /* 8004BA20 00047680 FC 20 F8 90 */ fmr f1, f31 /* 8004BA24 00047684 38 7E 00 1C */ addi r3, r30, 0x1c /* 8004BA28 00047688 81 8C 00 08 */ lwz r12, 8(r12) /* 8004BA2C 0004768C 7D 89 03 A6 */ mtctr r12 /* 8004BA30 00047690 4E 80 04 21 */ bctrl /* 8004BA34 00047694 2C 03 00 00 */ cmpwi r3, 0 /* 8004BA38 00047698 40 82 00 38 */ bne lbl_8004BA70 /* 8004BA3C 0004769C 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004BA40 000476A0 80 9E 00 44 */ lwz r4, 0x44(r30) /* 8004BA44 000476A4 A0 03 00 06 */ lhz r0, 6(r3) /* 8004BA48 000476A8 7C 04 00 00 */ cmpw r4, r0 /* 8004BA4C 000476AC 41 80 00 1C */ blt lbl_8004BA68 /* 8004BA50 000476B0 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8004BA54 000476B4 7F C3 F3 78 */ mr r3, r30 /* 8004BA58 000476B8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004BA5C 000476BC 7D 89 03 A6 */ mtctr r12 /* 8004BA60 000476C0 4E 80 04 21 */ bctrl /* 8004BA64 000476C4 48 00 00 0C */ b lbl_8004BA70 lbl_8004BA68: /* 8004BA68 000476C8 7F C3 F3 78 */ mr r3, r30 /* 8004BA6C 000476CC 4B FF FE 95 */ bl func_8004B900 lbl_8004BA70: /* 8004BA70 000476D0 7F C3 F3 78 */ mr r3, r30 /* 8004BA74 000476D4 4B FF F7 71 */ bl func_8004B1E4 /* 8004BA78 000476D8 2C 03 00 00 */ cmpwi r3, 0 /* 8004BA7C 000476DC 7C 7F 1B 78 */ mr r31, r3 /* 8004BA80 000476E0 41 82 00 50 */ beq lbl_8004BAD0 /* 8004BA84 000476E4 C0 22 83 FC */ lfs f1, lbl_806409FC-_SDA2_BASE_(r2) /* 8004BA88 000476E8 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8004BA8C 000476EC EC 41 00 32 */ fmuls f2, f1, f0 /* 8004BA90 000476F0 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004BA94 000476F4 40 81 00 08 */ ble lbl_8004BA9C /* 8004BA98 000476F8 FC 40 08 90 */ fmr f2, f1 lbl_8004BA9C: /* 8004BA9C 000476FC C0 02 83 F8 */ lfs f0, lbl_806409F8-_SDA2_BASE_(r2) /* 8004BAA0 00047700 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004BAA4 00047704 40 80 00 08 */ bge lbl_8004BAAC /* 8004BAA8 00047708 FC 40 00 90 */ fmr f2, f0 lbl_8004BAAC: /* 8004BAAC 0004770C FC 00 10 1E */ fctiwz f0, f2 /* 8004BAB0 00047710 7F E3 FB 78 */ mr r3, r31 /* 8004BAB4 00047714 D8 01 00 08 */ stfd f0, 8(r1) /* 8004BAB8 00047718 80 81 00 0C */ lwz r4, 0xc(r1) /* 8004BABC 0004771C 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 8004BAC0 00047720 48 1A A6 5D */ bl func_801F611C /* 8004BAC4 00047724 7F E3 FB 78 */ mr r3, r31 /* 8004BAC8 00047728 38 80 00 00 */ li r4, 0 /* 8004BACC 0004772C 48 1A A6 8D */ bl func_801F6158 lbl_8004BAD0: /* 8004BAD0 00047730 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8004BAD4 00047734 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004BAD8 00047738 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8004BADC 0004773C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004BAE0 00047740 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004BAE4 00047744 7C 08 03 A6 */ mtlr r0 /* 8004BAE8 00047748 38 21 00 30 */ addi r1, r1, 0x30 /* 8004BAEC 0004774C 4E 80 00 20 */ blr /* 8004BAF0 00047750 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004BAF4 00047754 39 00 00 00 */ li r8, 0 /* 8004BAF8 00047758 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004BAFC 0004775C A0 E4 00 06 */ lhz r7, 6(r4) /* 8004BB00 00047760 2C 87 00 00 */ cmpwi cr1, r7, 0 /* 8004BB04 00047764 4C 85 00 20 */ blelr cr1 /* 8004BB08 00047768 2C 07 00 08 */ cmpwi r7, 8 /* 8004BB0C 0004776C 38 A7 FF F8 */ addi r5, r7, -8 /* 8004BB10 00047770 40 81 00 94 */ ble lbl_8004BBA4 /* 8004BB14 00047774 38 C0 00 00 */ li r6, 0 /* 8004BB18 00047778 41 84 00 18 */ blt cr1, lbl_8004BB30 /* 8004BB1C 0004777C 3C 80 80 00 */ lis r4, 0x7FFFFFFE@ha /* 8004BB20 00047780 38 04 FF FE */ addi r0, r4, 0x7FFFFFFE@l /* 8004BB24 00047784 7C 07 00 00 */ cmpw r7, r0 /* 8004BB28 00047788 41 81 00 08 */ bgt lbl_8004BB30 /* 8004BB2C 0004778C 38 C0 00 01 */ li r6, 1 lbl_8004BB30: /* 8004BB30 00047790 2C 06 00 00 */ cmpwi r6, 0 /* 8004BB34 00047794 41 82 00 70 */ beq lbl_8004BBA4 /* 8004BB38 00047798 38 05 00 07 */ addi r0, r5, 7 /* 8004BB3C 0004779C 38 80 00 00 */ li r4, 0 /* 8004BB40 000477A0 54 00 E8 FE */ srwi r0, r0, 3 /* 8004BB44 000477A4 7C 09 03 A6 */ mtctr r0 /* 8004BB48 000477A8 2C 05 00 00 */ cmpwi r5, 0 /* 8004BB4C 000477AC 40 81 00 58 */ ble lbl_8004BBA4 lbl_8004BB50: /* 8004BB50 000477B0 80 03 00 14 */ lwz r0, 0x14(r3) /* 8004BB54 000477B4 39 08 00 08 */ addi r8, r8, 8 /* 8004BB58 000477B8 7C A0 22 14 */ add r5, r0, r4 /* 8004BB5C 000477BC 38 84 00 60 */ addi r4, r4, 0x60 /* 8004BB60 000477C0 C0 45 00 10 */ lfs f2, 0x10(r5) /* 8004BB64 000477C4 C0 05 00 1C */ lfs f0, 0x1c(r5) /* 8004BB68 000477C8 EC 21 10 2A */ fadds f1, f1, f2 /* 8004BB6C 000477CC C0 C5 00 28 */ lfs f6, 0x28(r5) /* 8004BB70 000477D0 C0 A5 00 34 */ lfs f5, 0x34(r5) /* 8004BB74 000477D4 C0 85 00 40 */ lfs f4, 0x40(r5) /* 8004BB78 000477D8 EC 21 00 2A */ fadds f1, f1, f0 /* 8004BB7C 000477DC C0 65 00 4C */ lfs f3, 0x4c(r5) /* 8004BB80 000477E0 C0 45 00 58 */ lfs f2, 0x58(r5) /* 8004BB84 000477E4 C0 05 00 64 */ lfs f0, 0x64(r5) /* 8004BB88 000477E8 EC 21 30 2A */ fadds f1, f1, f6 /* 8004BB8C 000477EC EC 21 28 2A */ fadds f1, f1, f5 /* 8004BB90 000477F0 EC 21 20 2A */ fadds f1, f1, f4 /* 8004BB94 000477F4 EC 21 18 2A */ fadds f1, f1, f3 /* 8004BB98 000477F8 EC 21 10 2A */ fadds f1, f1, f2 /* 8004BB9C 000477FC EC 21 00 2A */ fadds f1, f1, f0 /* 8004BBA0 00047800 42 00 FF B0 */ bdnz lbl_8004BB50 lbl_8004BBA4: /* 8004BBA4 00047804 80 A3 00 14 */ lwz r5, 0x14(r3) /* 8004BBA8 00047808 1C 88 00 0C */ mulli r4, r8, 0xc /* 8004BBAC 0004780C A0 65 00 06 */ lhz r3, 6(r5) /* 8004BBB0 00047810 7C 08 18 50 */ subf r0, r8, r3 /* 8004BBB4 00047814 7C 09 03 A6 */ mtctr r0 /* 8004BBB8 00047818 7C 08 18 00 */ cmpw r8, r3 /* 8004BBBC 0004781C 4C 80 00 20 */ bgelr lbl_8004BBC0: /* 8004BBC0 00047820 7C 65 22 14 */ add r3, r5, r4 /* 8004BBC4 00047824 38 84 00 0C */ addi r4, r4, 0xc /* 8004BBC8 00047828 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8004BBCC 0004782C EC 21 00 2A */ fadds f1, f1, f0 /* 8004BBD0 00047830 42 00 FF F0 */ bdnz lbl_8004BBC0 /* 8004BBD4 00047834 4E 80 00 20 */ blr .global func_8004BBD8 func_8004BBD8: /* 8004BBD8 00047838 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BBDC 0004783C 7C 08 02 A6 */ mflr r0 /* 8004BBE0 00047840 90 01 00 14 */ stw r0, 0x14(r1) /* 8004BBE4 00047844 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BBE8 00047848 7C 7F 1B 78 */ mr r31, r3 /* 8004BBEC 0004784C 4B FF F5 65 */ bl func_8004B150 /* 8004BBF0 00047850 3C 80 80 41 */ lis r4, lbl_8040A90C@ha /* 8004BBF4 00047854 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004BBF8 00047858 38 84 A9 0C */ addi r4, r4, lbl_8040A90C@l /* 8004BBFC 0004785C 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004BC00 00047860 48 00 47 25 */ bl func_80050324 /* 8004BC04 00047864 80 9F 00 0C */ lwz r4, 0xc(r31) /* 8004BC08 00047868 7F E3 FB 78 */ mr r3, r31 /* 8004BC0C 0004786C 38 04 00 08 */ addi r0, r4, 8 /* 8004BC10 00047870 90 1F 00 14 */ stw r0, 0x14(r31) /* 8004BC14 00047874 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BC18 00047878 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004BC1C 0004787C 7C 08 03 A6 */ mtlr r0 /* 8004BC20 00047880 38 21 00 10 */ addi r1, r1, 0x10 /* 8004BC24 00047884 4E 80 00 20 */ blr /* 8004BC28 00047888 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BC2C 0004788C 7C 08 02 A6 */ mflr r0 /* 8004BC30 00047890 2C 03 00 00 */ cmpwi r3, 0 /* 8004BC34 00047894 90 01 00 14 */ stw r0, 0x14(r1) /* 8004BC38 00047898 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BC3C 0004789C 7C 9F 23 78 */ mr r31, r4 /* 8004BC40 000478A0 93 C1 00 08 */ stw r30, 8(r1) /* 8004BC44 000478A4 7C 7E 1B 78 */ mr r30, r3 /* 8004BC48 000478A8 41 82 00 1C */ beq lbl_8004BC64 /* 8004BC4C 000478AC 38 80 00 00 */ li r4, 0 /* 8004BC50 000478B0 4B FF F5 25 */ bl func_8004B174 /* 8004BC54 000478B4 2C 1F 00 00 */ cmpwi r31, 0 /* 8004BC58 000478B8 40 81 00 0C */ ble lbl_8004BC64 /* 8004BC5C 000478BC 7F C3 F3 78 */ mr r3, r30 /* 8004BC60 000478C0 48 18 EE 59 */ bl func_801DAAB8 lbl_8004BC64: /* 8004BC64 000478C4 7F C3 F3 78 */ mr r3, r30 /* 8004BC68 000478C8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BC6C 000478CC 83 C1 00 08 */ lwz r30, 8(r1) /* 8004BC70 000478D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004BC74 000478D4 7C 08 03 A6 */ mtlr r0 /* 8004BC78 000478D8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004BC7C 000478DC 4E 80 00 20 */ blr /* 8004BC80 000478E0 38 00 00 00 */ li r0, 0 /* 8004BC84 000478E4 90 03 00 44 */ stw r0, 0x44(r3) /* 8004BC88 000478E8 48 00 00 04 */ b func_8004BC8C .global func_8004BC8C func_8004BC8C: /* 8004BC8C 000478EC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BC90 000478F0 7C 08 02 A6 */ mflr r0 /* 8004BC94 000478F4 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004BC98 000478F8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004BC9C 000478FC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BCA0 00047900 7C 7F 1B 78 */ mr r31, r3 /* 8004BCA4 00047904 80 03 00 44 */ lwz r0, 0x44(r3) /* 8004BCA8 00047908 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004BCAC 0004790C 1C 00 00 0C */ mulli r0, r0, 0xc /* 8004BCB0 00047910 7C 84 02 14 */ add r4, r4, r0 /* 8004BCB4 00047914 38 84 00 08 */ addi r4, r4, 8 /* 8004BCB8 00047918 90 83 00 18 */ stw r4, 0x18(r3) /* 8004BCBC 0004791C C0 04 00 08 */ lfs f0, 8(r4) /* 8004BCC0 00047920 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004BCC4 00047924 40 82 00 1C */ bne lbl_8004BCE0 /* 8004BCC8 00047928 C0 04 00 00 */ lfs f0, 0(r4) /* 8004BCCC 0004792C D0 03 00 40 */ stfs f0, 0x40(r3) /* 8004BCD0 00047930 81 83 00 10 */ lwz r12, 0x10(r3) /* 8004BCD4 00047934 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004BCD8 00047938 7D 89 03 A6 */ mtctr r12 /* 8004BCDC 0004793C 4E 80 04 21 */ bctrl lbl_8004BCE0: /* 8004BCE0 00047940 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004BCE4 00047944 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004BCE8 00047948 38 DF 00 40 */ addi r6, r31, 0x40 /* 8004BCEC 0004794C 38 E0 00 00 */ li r7, 0 /* 8004BCF0 00047950 C0 24 00 08 */ lfs f1, 8(r4) /* 8004BCF4 00047954 38 A4 00 04 */ addi r5, r4, 4 /* 8004BCF8 00047958 48 00 46 45 */ bl func_8005033C /* 8004BCFC 0004795C 80 7F 00 44 */ lwz r3, 0x44(r31) /* 8004BD00 00047960 38 00 00 01 */ li r0, 1 /* 8004BD04 00047964 98 1F 00 00 */ stb r0, 0(r31) /* 8004BD08 00047968 38 03 00 01 */ addi r0, r3, 1 /* 8004BD0C 0004796C 90 1F 00 44 */ stw r0, 0x44(r31) /* 8004BD10 00047970 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BD14 00047974 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004BD18 00047978 7C 08 03 A6 */ mtlr r0 /* 8004BD1C 0004797C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004BD20 00047980 4E 80 00 20 */ blr /* 8004BD24 00047984 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BD28 00047988 7C 08 02 A6 */ mflr r0 /* 8004BD2C 0004798C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004BD30 00047990 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BD34 00047994 93 C1 00 08 */ stw r30, 8(r1) /* 8004BD38 00047998 7C 7E 1B 78 */ mr r30, r3 /* 8004BD3C 0004799C 4B FE 73 4D */ bl func_80033088 /* 8004BD40 000479A0 38 00 00 00 */ li r0, 0 /* 8004BD44 000479A4 7C 7F 1B 78 */ mr r31, r3 /* 8004BD48 000479A8 98 1E 00 00 */ stb r0, 0(r30) /* 8004BD4C 000479AC 38 7E 00 1C */ addi r3, r30, 0x1c /* 8004BD50 000479B0 48 00 46 39 */ bl func_80050388 /* 8004BD54 000479B4 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004BD58 000479B8 80 03 00 00 */ lwz r0, 0(r3) /* 8004BD5C 000479BC 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004BD60 000479C0 41 82 00 10 */ beq lbl_8004BD70 /* 8004BD64 000479C4 7F E3 FB 78 */ mr r3, r31 /* 8004BD68 000479C8 38 80 00 00 */ li r4, 0 /* 8004BD6C 000479CC 4B FE 90 FD */ bl func_80034E68 lbl_8004BD70: /* 8004BD70 000479D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004BD74 000479D4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BD78 000479D8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004BD7C 000479DC 7C 08 03 A6 */ mtlr r0 /* 8004BD80 000479E0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004BD84 000479E4 4E 80 00 20 */ blr /* 8004BD88 000479E8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004BD8C 000479EC 7C 08 02 A6 */ mflr r0 /* 8004BD90 000479F0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004BD94 000479F4 DB E1 00 10 */ stfd f31, 0x10(r1) /* 8004BD98 000479F8 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 8004BD9C 000479FC FF E0 08 90 */ fmr f31, f1 /* 8004BDA0 00047A00 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BDA4 00047A04 93 C1 00 08 */ stw r30, 8(r1) /* 8004BDA8 00047A08 7C 7E 1B 78 */ mr r30, r3 /* 8004BDAC 00047A0C 4B FE 72 DD */ bl func_80033088 /* 8004BDB0 00047A10 88 1E 00 00 */ lbz r0, 0(r30) /* 8004BDB4 00047A14 7C 7F 1B 78 */ mr r31, r3 /* 8004BDB8 00047A18 2C 00 00 00 */ cmpwi r0, 0 /* 8004BDBC 00047A1C 41 82 00 94 */ beq lbl_8004BE50 /* 8004BDC0 00047A20 81 9E 00 3C */ lwz r12, 0x3c(r30) /* 8004BDC4 00047A24 FC 20 F8 90 */ fmr f1, f31 /* 8004BDC8 00047A28 38 7E 00 1C */ addi r3, r30, 0x1c /* 8004BDCC 00047A2C 81 8C 00 08 */ lwz r12, 8(r12) /* 8004BDD0 00047A30 7D 89 03 A6 */ mtctr r12 /* 8004BDD4 00047A34 4E 80 04 21 */ bctrl /* 8004BDD8 00047A38 2C 03 00 00 */ cmpwi r3, 0 /* 8004BDDC 00047A3C 40 82 00 38 */ bne lbl_8004BE14 /* 8004BDE0 00047A40 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004BDE4 00047A44 80 9E 00 44 */ lwz r4, 0x44(r30) /* 8004BDE8 00047A48 80 03 00 04 */ lwz r0, 4(r3) /* 8004BDEC 00047A4C 7C 04 00 00 */ cmpw r4, r0 /* 8004BDF0 00047A50 41 80 00 1C */ blt lbl_8004BE0C /* 8004BDF4 00047A54 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8004BDF8 00047A58 7F C3 F3 78 */ mr r3, r30 /* 8004BDFC 00047A5C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004BE00 00047A60 7D 89 03 A6 */ mtctr r12 /* 8004BE04 00047A64 4E 80 04 21 */ bctrl /* 8004BE08 00047A68 48 00 00 0C */ b lbl_8004BE14 lbl_8004BE0C: /* 8004BE0C 00047A6C 7F C3 F3 78 */ mr r3, r30 /* 8004BE10 00047A70 4B FF FE 7D */ bl func_8004BC8C lbl_8004BE14: /* 8004BE14 00047A74 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004BE18 00047A78 80 03 00 00 */ lwz r0, 0(r3) /* 8004BE1C 00047A7C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004BE20 00047A80 41 82 00 30 */ beq lbl_8004BE50 /* 8004BE24 00047A84 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 8004BE28 00047A88 C0 02 83 F8 */ lfs f0, lbl_806409F8-_SDA2_BASE_(r2) /* 8004BE2C 00047A8C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004BE30 00047A90 4C 41 13 82 */ cror 2, 1, 2 /* 8004BE34 00047A94 40 82 00 1C */ bne lbl_8004BE50 /* 8004BE38 00047A98 7F E3 FB 78 */ mr r3, r31 /* 8004BE3C 00047A9C 38 80 00 01 */ li r4, 1 /* 8004BE40 00047AA0 4B FE 90 29 */ bl func_80034E68 /* 8004BE44 00047AA4 C0 3E 00 40 */ lfs f1, 0x40(r30) /* 8004BE48 00047AA8 7F E3 FB 78 */ mr r3, r31 /* 8004BE4C 00047AAC 4B FE 90 55 */ bl func_80034EA0 lbl_8004BE50: /* 8004BE50 00047AB0 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 8004BE54 00047AB4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004BE58 00047AB8 CB E1 00 10 */ lfd f31, 0x10(r1) /* 8004BE5C 00047ABC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BE60 00047AC0 83 C1 00 08 */ lwz r30, 8(r1) /* 8004BE64 00047AC4 7C 08 03 A6 */ mtlr r0 /* 8004BE68 00047AC8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004BE6C 00047ACC 4E 80 00 20 */ blr /* 8004BE70 00047AD0 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004BE74 00047AD4 39 00 00 00 */ li r8, 0 /* 8004BE78 00047AD8 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004BE7C 00047ADC 80 E4 00 04 */ lwz r7, 4(r4) /* 8004BE80 00047AE0 2C 87 00 00 */ cmpwi cr1, r7, 0 /* 8004BE84 00047AE4 4C 85 00 20 */ blelr cr1 /* 8004BE88 00047AE8 2C 07 00 08 */ cmpwi r7, 8 /* 8004BE8C 00047AEC 38 A7 FF F8 */ addi r5, r7, -8 /* 8004BE90 00047AF0 40 81 00 94 */ ble lbl_8004BF24 /* 8004BE94 00047AF4 38 C0 00 00 */ li r6, 0 /* 8004BE98 00047AF8 41 84 00 18 */ blt cr1, lbl_8004BEB0 /* 8004BE9C 00047AFC 3C 80 80 00 */ lis r4, 0x7FFFFFFE@ha /* 8004BEA0 00047B00 38 04 FF FE */ addi r0, r4, 0x7FFFFFFE@l /* 8004BEA4 00047B04 7C 07 00 00 */ cmpw r7, r0 /* 8004BEA8 00047B08 41 81 00 08 */ bgt lbl_8004BEB0 /* 8004BEAC 00047B0C 38 C0 00 01 */ li r6, 1 lbl_8004BEB0: /* 8004BEB0 00047B10 2C 06 00 00 */ cmpwi r6, 0 /* 8004BEB4 00047B14 41 82 00 70 */ beq lbl_8004BF24 /* 8004BEB8 00047B18 38 05 00 07 */ addi r0, r5, 7 /* 8004BEBC 00047B1C 38 80 00 00 */ li r4, 0 /* 8004BEC0 00047B20 54 00 E8 FE */ srwi r0, r0, 3 /* 8004BEC4 00047B24 7C 09 03 A6 */ mtctr r0 /* 8004BEC8 00047B28 2C 05 00 00 */ cmpwi r5, 0 /* 8004BECC 00047B2C 40 81 00 58 */ ble lbl_8004BF24 lbl_8004BED0: /* 8004BED0 00047B30 80 03 00 14 */ lwz r0, 0x14(r3) /* 8004BED4 00047B34 39 08 00 08 */ addi r8, r8, 8 /* 8004BED8 00047B38 7C A0 22 14 */ add r5, r0, r4 /* 8004BEDC 00047B3C 38 84 00 60 */ addi r4, r4, 0x60 /* 8004BEE0 00047B40 C0 45 00 10 */ lfs f2, 0x10(r5) /* 8004BEE4 00047B44 C0 05 00 1C */ lfs f0, 0x1c(r5) /* 8004BEE8 00047B48 EC 21 10 2A */ fadds f1, f1, f2 /* 8004BEEC 00047B4C C0 C5 00 28 */ lfs f6, 0x28(r5) /* 8004BEF0 00047B50 C0 A5 00 34 */ lfs f5, 0x34(r5) /* 8004BEF4 00047B54 C0 85 00 40 */ lfs f4, 0x40(r5) /* 8004BEF8 00047B58 EC 21 00 2A */ fadds f1, f1, f0 /* 8004BEFC 00047B5C C0 65 00 4C */ lfs f3, 0x4c(r5) /* 8004BF00 00047B60 C0 45 00 58 */ lfs f2, 0x58(r5) /* 8004BF04 00047B64 C0 05 00 64 */ lfs f0, 0x64(r5) /* 8004BF08 00047B68 EC 21 30 2A */ fadds f1, f1, f6 /* 8004BF0C 00047B6C EC 21 28 2A */ fadds f1, f1, f5 /* 8004BF10 00047B70 EC 21 20 2A */ fadds f1, f1, f4 /* 8004BF14 00047B74 EC 21 18 2A */ fadds f1, f1, f3 /* 8004BF18 00047B78 EC 21 10 2A */ fadds f1, f1, f2 /* 8004BF1C 00047B7C EC 21 00 2A */ fadds f1, f1, f0 /* 8004BF20 00047B80 42 00 FF B0 */ bdnz lbl_8004BED0 lbl_8004BF24: /* 8004BF24 00047B84 80 A3 00 14 */ lwz r5, 0x14(r3) /* 8004BF28 00047B88 1C 88 00 0C */ mulli r4, r8, 0xc /* 8004BF2C 00047B8C 80 65 00 04 */ lwz r3, 4(r5) /* 8004BF30 00047B90 7C 08 18 50 */ subf r0, r8, r3 /* 8004BF34 00047B94 7C 09 03 A6 */ mtctr r0 /* 8004BF38 00047B98 7C 08 18 00 */ cmpw r8, r3 /* 8004BF3C 00047B9C 4C 80 00 20 */ bgelr lbl_8004BF40: /* 8004BF40 00047BA0 7C 65 22 14 */ add r3, r5, r4 /* 8004BF44 00047BA4 38 84 00 0C */ addi r4, r4, 0xc /* 8004BF48 00047BA8 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8004BF4C 00047BAC EC 21 00 2A */ fadds f1, f1, f0 /* 8004BF50 00047BB0 42 00 FF F0 */ bdnz lbl_8004BF40 /* 8004BF54 00047BB4 4E 80 00 20 */ blr .global func_8004BF58 func_8004BF58: /* 8004BF58 00047BB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BF5C 00047BBC 7C 08 02 A6 */ mflr r0 /* 8004BF60 00047BC0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004BF64 00047BC4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BF68 00047BC8 7C 7F 1B 78 */ mr r31, r3 /* 8004BF6C 00047BCC 4B FF F1 E5 */ bl func_8004B150 /* 8004BF70 00047BD0 3C 80 80 41 */ lis r4, lbl_8040A8C4@ha /* 8004BF74 00047BD4 7F E3 FB 78 */ mr r3, r31 /* 8004BF78 00047BD8 38 84 A8 C4 */ addi r4, r4, lbl_8040A8C4@l /* 8004BF7C 00047BDC 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004BF80 00047BE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BF84 00047BE4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004BF88 00047BE8 7C 08 03 A6 */ mtlr r0 /* 8004BF8C 00047BEC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004BF90 00047BF0 4E 80 00 20 */ blr /* 8004BF94 00047BF4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BF98 00047BF8 7C 08 02 A6 */ mflr r0 /* 8004BF9C 00047BFC 2C 03 00 00 */ cmpwi r3, 0 /* 8004BFA0 00047C00 90 01 00 14 */ stw r0, 0x14(r1) /* 8004BFA4 00047C04 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004BFA8 00047C08 7C 9F 23 78 */ mr r31, r4 /* 8004BFAC 00047C0C 93 C1 00 08 */ stw r30, 8(r1) /* 8004BFB0 00047C10 7C 7E 1B 78 */ mr r30, r3 /* 8004BFB4 00047C14 41 82 00 1C */ beq lbl_8004BFD0 /* 8004BFB8 00047C18 38 80 00 00 */ li r4, 0 /* 8004BFBC 00047C1C 4B FF F1 B9 */ bl func_8004B174 /* 8004BFC0 00047C20 2C 1F 00 00 */ cmpwi r31, 0 /* 8004BFC4 00047C24 40 81 00 0C */ ble lbl_8004BFD0 /* 8004BFC8 00047C28 7F C3 F3 78 */ mr r3, r30 /* 8004BFCC 00047C2C 48 18 EA ED */ bl func_801DAAB8 lbl_8004BFD0: /* 8004BFD0 00047C30 7F C3 F3 78 */ mr r3, r30 /* 8004BFD4 00047C34 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004BFD8 00047C38 83 C1 00 08 */ lwz r30, 8(r1) /* 8004BFDC 00047C3C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004BFE0 00047C40 7C 08 03 A6 */ mtlr r0 /* 8004BFE4 00047C44 38 21 00 10 */ addi r1, r1, 0x10 /* 8004BFE8 00047C48 4E 80 00 20 */ blr /* 8004BFEC 00047C4C 4E 80 00 20 */ blr /* 8004BFF0 00047C50 4E 80 00 20 */ blr /* 8004BFF4 00047C54 4E 80 00 20 */ blr .global func_8004BFF8 func_8004BFF8: /* 8004BFF8 00047C58 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004BFFC 00047C5C 7C 08 02 A6 */ mflr r0 /* 8004C000 00047C60 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C004 00047C64 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C008 00047C68 7C 7F 1B 78 */ mr r31, r3 /* 8004C00C 00047C6C 4B FF F1 45 */ bl func_8004B150 /* 8004C010 00047C70 80 7F 00 0C */ lwz r3, 0xc(r31) /* 8004C014 00047C74 3C A0 80 41 */ lis r5, lbl_8040A87C@ha /* 8004C018 00047C78 38 A5 A8 7C */ addi r5, r5, lbl_8040A87C@l /* 8004C01C 00047C7C 38 00 00 00 */ li r0, 0 /* 8004C020 00047C80 38 83 00 08 */ addi r4, r3, 8 /* 8004C024 00047C84 90 BF 00 10 */ stw r5, 0x10(r31) /* 8004C028 00047C88 7F E3 FB 78 */ mr r3, r31 /* 8004C02C 00047C8C 90 9F 00 14 */ stw r4, 0x14(r31) /* 8004C030 00047C90 90 1F 00 18 */ stw r0, 0x18(r31) /* 8004C034 00047C94 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C038 00047C98 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C03C 00047C9C 7C 08 03 A6 */ mtlr r0 /* 8004C040 00047CA0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C044 00047CA4 4E 80 00 20 */ blr /* 8004C048 00047CA8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C04C 00047CAC 7C 08 02 A6 */ mflr r0 /* 8004C050 00047CB0 2C 03 00 00 */ cmpwi r3, 0 /* 8004C054 00047CB4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C058 00047CB8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C05C 00047CBC 7C 9F 23 78 */ mr r31, r4 /* 8004C060 00047CC0 93 C1 00 08 */ stw r30, 8(r1) /* 8004C064 00047CC4 7C 7E 1B 78 */ mr r30, r3 /* 8004C068 00047CC8 41 82 00 5C */ beq lbl_8004C0C4 /* 8004C06C 00047CCC 80 03 00 18 */ lwz r0, 0x18(r3) /* 8004C070 00047CD0 3C 80 80 41 */ lis r4, lbl_8040A87C@ha /* 8004C074 00047CD4 38 84 A8 7C */ addi r4, r4, lbl_8040A87C@l /* 8004C078 00047CD8 2C 00 00 00 */ cmpwi r0, 0 /* 8004C07C 00047CDC 90 83 00 10 */ stw r4, 0x10(r3) /* 8004C080 00047CE0 41 82 00 28 */ beq lbl_8004C0A8 /* 8004C084 00047CE4 41 82 00 1C */ beq lbl_8004C0A0 /* 8004C088 00047CE8 7C 03 03 78 */ mr r3, r0 /* 8004C08C 00047CEC 38 80 00 01 */ li r4, 1 /* 8004C090 00047CF0 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004C094 00047CF4 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C098 00047CF8 7D 89 03 A6 */ mtctr r12 /* 8004C09C 00047CFC 4E 80 04 21 */ bctrl lbl_8004C0A0: /* 8004C0A0 00047D00 38 00 00 00 */ li r0, 0 /* 8004C0A4 00047D04 90 1E 00 18 */ stw r0, 0x18(r30) lbl_8004C0A8: /* 8004C0A8 00047D08 7F C3 F3 78 */ mr r3, r30 /* 8004C0AC 00047D0C 38 80 00 00 */ li r4, 0 /* 8004C0B0 00047D10 4B FF F0 C5 */ bl func_8004B174 /* 8004C0B4 00047D14 2C 1F 00 00 */ cmpwi r31, 0 /* 8004C0B8 00047D18 40 81 00 0C */ ble lbl_8004C0C4 /* 8004C0BC 00047D1C 7F C3 F3 78 */ mr r3, r30 /* 8004C0C0 00047D20 48 18 E9 F9 */ bl func_801DAAB8 lbl_8004C0C4: /* 8004C0C4 00047D24 7F C3 F3 78 */ mr r3, r30 /* 8004C0C8 00047D28 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C0CC 00047D2C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004C0D0 00047D30 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C0D4 00047D34 7C 08 03 A6 */ mtlr r0 /* 8004C0D8 00047D38 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C0DC 00047D3C 4E 80 00 20 */ blr /* 8004C0E0 00047D40 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004C0E4 00047D44 7C 08 02 A6 */ mflr r0 /* 8004C0E8 00047D48 90 01 00 64 */ stw r0, 0x64(r1) /* 8004C0EC 00047D4C 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8004C0F0 00047D50 7C 7F 1B 78 */ mr r31, r3 /* 8004C0F4 00047D54 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004C0F8 00047D58 4B FF F0 BD */ bl func_8004B1B4 /* 8004C0FC 00047D5C 2C 03 00 00 */ cmpwi r3, 0 /* 8004C100 00047D60 7C 7E 1B 78 */ mr r30, r3 /* 8004C104 00047D64 41 82 02 14 */ beq lbl_8004C318 /* 8004C108 00047D68 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004C10C 00047D6C 2C 03 00 00 */ cmpwi r3, 0 /* 8004C110 00047D70 41 82 00 1C */ beq lbl_8004C12C /* 8004C114 00047D74 41 82 00 18 */ beq lbl_8004C12C /* 8004C118 00047D78 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004C11C 00047D7C 38 80 00 01 */ li r4, 1 /* 8004C120 00047D80 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C124 00047D84 7D 89 03 A6 */ mtctr r12 /* 8004C128 00047D88 4E 80 04 21 */ bctrl lbl_8004C12C: /* 8004C12C 00047D8C 48 18 E9 FD */ bl func_801DAB28 /* 8004C130 00047D90 2C 03 00 00 */ cmpwi r3, 0 /* 8004C134 00047D94 41 82 00 14 */ beq lbl_8004C148 /* 8004C138 00047D98 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004C13C 00047D9C 38 80 00 70 */ li r4, 0x70 /* 8004C140 00047DA0 48 18 EB 55 */ bl func_801DAC94 /* 8004C144 00047DA4 48 00 00 08 */ b lbl_8004C14C lbl_8004C148: /* 8004C148 00047DA8 38 60 00 00 */ li r3, 0 lbl_8004C14C: /* 8004C14C 00047DAC 2C 03 00 00 */ cmpwi r3, 0 /* 8004C150 00047DB0 7C 66 1B 78 */ mr r6, r3 /* 8004C154 00047DB4 41 82 00 10 */ beq lbl_8004C164 /* 8004C158 00047DB8 80 9E 0C 04 */ lwz r4, 0xc04(r30) /* 8004C15C 00047DBC 48 1D 12 C9 */ bl func_8021D424 /* 8004C160 00047DC0 7C 66 1B 78 */ mr r6, r3 lbl_8004C164: /* 8004C164 00047DC4 2C 06 00 00 */ cmpwi r6, 0 /* 8004C168 00047DC8 90 DF 00 18 */ stw r6, 0x18(r31) /* 8004C16C 00047DCC 41 82 01 AC */ beq lbl_8004C318 /* 8004C170 00047DD0 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8004C174 00047DD4 7F C4 F3 78 */ mr r4, r30 /* 8004C178 00047DD8 C0 02 84 00 */ lfs f0, lbl_80640A00-_SDA2_BASE_(r2) /* 8004C17C 00047DDC 38 61 00 08 */ addi r3, r1, 8 /* 8004C180 00047DE0 80 05 00 00 */ lwz r0, 0(r5) /* 8004C184 00047DE4 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 8004C188 00047DE8 98 06 00 1E */ stb r0, 0x1e(r6) /* 8004C18C 00047DEC 80 DF 00 14 */ lwz r6, 0x14(r31) /* 8004C190 00047DF0 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8004C194 00047DF4 80 06 00 00 */ lwz r0, 0(r6) /* 8004C198 00047DF8 54 00 FF FE */ rlwinm r0, r0, 0x1f, 0x1f, 0x1f /* 8004C19C 00047DFC 98 05 00 20 */ stb r0, 0x20(r5) /* 8004C1A0 00047E00 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8004C1A4 00047E04 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8004C1A8 00047E08 88 05 00 0C */ lbz r0, 0xc(r5) /* 8004C1AC 00047E0C 98 06 00 28 */ stb r0, 0x28(r6) /* 8004C1B0 00047E10 88 05 00 0D */ lbz r0, 0xd(r5) /* 8004C1B4 00047E14 98 06 00 29 */ stb r0, 0x29(r6) /* 8004C1B8 00047E18 88 05 00 0E */ lbz r0, 0xe(r5) /* 8004C1BC 00047E1C 98 06 00 2A */ stb r0, 0x2a(r6) /* 8004C1C0 00047E20 88 05 00 0F */ lbz r0, 0xf(r5) /* 8004C1C4 00047E24 98 06 00 2B */ stb r0, 0x2b(r6) /* 8004C1C8 00047E28 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8004C1CC 00047E2C D0 05 00 6C */ stfs f0, 0x6c(r5) /* 8004C1D0 00047E30 80 DF 00 14 */ lwz r6, 0x14(r31) /* 8004C1D4 00047E34 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8004C1D8 00047E38 C0 06 00 04 */ lfs f0, 4(r6) /* 8004C1DC 00047E3C D0 05 00 48 */ stfs f0, 0x48(r5) /* 8004C1E0 00047E40 80 DF 00 14 */ lwz r6, 0x14(r31) /* 8004C1E4 00047E44 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8004C1E8 00047E48 80 06 00 00 */ lwz r0, 0(r6) /* 8004C1EC 00047E4C 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f /* 8004C1F0 00047E50 98 05 00 1F */ stb r0, 0x1f(r5) /* 8004C1F4 00047E54 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8004C1F8 00047E58 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8004C1FC 00047E5C C0 05 00 10 */ lfs f0, 0x10(r5) /* 8004C200 00047E60 D0 06 00 5C */ stfs f0, 0x5c(r6) /* 8004C204 00047E64 C0 05 00 14 */ lfs f0, 0x14(r5) /* 8004C208 00047E68 D0 06 00 60 */ stfs f0, 0x60(r6) /* 8004C20C 00047E6C C0 05 00 18 */ lfs f0, 0x18(r5) /* 8004C210 00047E70 D0 06 00 64 */ stfs f0, 0x64(r6) /* 8004C214 00047E74 80 DF 00 14 */ lwz r6, 0x14(r31) /* 8004C218 00047E78 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8004C21C 00047E7C C0 06 00 08 */ lfs f0, 8(r6) /* 8004C220 00047E80 D0 05 00 44 */ stfs f0, 0x44(r5) /* 8004C224 00047E84 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8004C228 00047E88 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8004C22C 00047E8C C0 05 00 1C */ lfs f0, 0x1c(r5) /* 8004C230 00047E90 D0 06 00 38 */ stfs f0, 0x38(r6) /* 8004C234 00047E94 C0 05 00 20 */ lfs f0, 0x20(r5) /* 8004C238 00047E98 D0 06 00 3C */ stfs f0, 0x3c(r6) /* 8004C23C 00047E9C C0 05 00 24 */ lfs f0, 0x24(r5) /* 8004C240 00047EA0 D0 06 00 40 */ stfs f0, 0x40(r6) /* 8004C244 00047EA4 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8004C248 00047EA8 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8004C24C 00047EAC C0 05 00 28 */ lfs f0, 0x28(r5) /* 8004C250 00047EB0 D0 06 00 2C */ stfs f0, 0x2c(r6) /* 8004C254 00047EB4 C0 05 00 2C */ lfs f0, 0x2c(r5) /* 8004C258 00047EB8 D0 06 00 30 */ stfs f0, 0x30(r6) /* 8004C25C 00047EBC C0 05 00 30 */ lfs f0, 0x30(r5) /* 8004C260 00047EC0 D0 06 00 34 */ stfs f0, 0x34(r6) /* 8004C264 00047EC4 80 DF 00 14 */ lwz r6, 0x14(r31) /* 8004C268 00047EC8 80 BF 00 18 */ lwz r5, 0x18(r31) /* 8004C26C 00047ECC C0 06 00 34 */ lfs f0, 0x34(r6) /* 8004C270 00047ED0 D0 05 00 58 */ stfs f0, 0x58(r5) /* 8004C274 00047ED4 4B FE C8 21 */ bl func_80038A94 /* 8004C278 00047ED8 C0 21 00 0C */ lfs f1, 0xc(r1) /* 8004C27C 00047EDC 38 61 00 20 */ addi r3, r1, 0x20 /* 8004C280 00047EE0 C0 02 84 04 */ lfs f0, lbl_80640A04-_SDA2_BASE_(r2) /* 8004C284 00047EE4 38 80 00 59 */ li r4, 0x59 /* 8004C288 00047EE8 EC 20 08 2A */ fadds f1, f0, f1 /* 8004C28C 00047EEC 48 22 FF DD */ bl func_8027C268 /* 8004C290 00047EF0 80 DF 00 14 */ lwz r6, 0x14(r31) /* 8004C294 00047EF4 38 81 00 14 */ addi r4, r1, 0x14 /* 8004C298 00047EF8 7C 85 23 78 */ mr r5, r4 /* 8004C29C 00047EFC 38 61 00 20 */ addi r3, r1, 0x20 /* 8004C2A0 00047F00 C0 06 00 38 */ lfs f0, 0x38(r6) /* 8004C2A4 00047F04 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8004C2A8 00047F08 C0 06 00 3C */ lfs f0, 0x3c(r6) /* 8004C2AC 00047F0C D0 01 00 18 */ stfs f0, 0x18(r1) /* 8004C2B0 00047F10 C0 06 00 40 */ lfs f0, 0x40(r6) /* 8004C2B4 00047F14 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8004C2B8 00047F18 48 23 07 45 */ bl func_8027C9FC /* 8004C2BC 00047F1C 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004C2C0 00047F20 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8004C2C4 00047F24 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8004C2C8 00047F28 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8004C2CC 00047F2C D0 03 00 50 */ stfs f0, 0x50(r3) /* 8004C2D0 00047F30 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8004C2D4 00047F34 D0 03 00 54 */ stfs f0, 0x54(r3) /* 8004C2D8 00047F38 83 FF 00 18 */ lwz r31, 0x18(r31) /* 8004C2DC 00047F3C 81 9F 00 0C */ lwz r12, 0xc(r31) /* 8004C2E0 00047F40 7F E3 FB 78 */ mr r3, r31 /* 8004C2E4 00047F44 81 8C 00 08 */ lwz r12, 8(r12) /* 8004C2E8 00047F48 7D 89 03 A6 */ mtctr r12 /* 8004C2EC 00047F4C 4E 80 04 21 */ bctrl /* 8004C2F0 00047F50 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C2F4 00047F54 98 7F 00 08 */ stb r3, 8(r31) /* 8004C2F8 00047F58 41 82 00 20 */ beq lbl_8004C318 /* 8004C2FC 00047F5C 83 FF 00 04 */ lwz r31, 4(r31) /* 8004C300 00047F60 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004C304 00047F64 48 1E ED 55 */ bl func_8023B058 /* 8004C308 00047F68 2C 03 00 00 */ cmpwi r3, 0 /* 8004C30C 00047F6C 41 82 00 0C */ beq lbl_8004C318 /* 8004C310 00047F70 7F E4 FB 78 */ mr r4, r31 /* 8004C314 00047F74 48 1E F0 A5 */ bl func_8023B3B8 lbl_8004C318: /* 8004C318 00047F78 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004C31C 00047F7C 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8004C320 00047F80 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8004C324 00047F84 7C 08 03 A6 */ mtlr r0 /* 8004C328 00047F88 38 21 00 60 */ addi r1, r1, 0x60 /* 8004C32C 00047F8C 4E 80 00 20 */ blr /* 8004C330 00047F90 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004C334 00047F94 7C 08 02 A6 */ mflr r0 /* 8004C338 00047F98 90 01 00 24 */ stw r0, 0x24(r1) /* 8004C33C 00047F9C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C340 00047FA0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004C344 00047FA4 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004C348 00047FA8 7C 7D 1B 78 */ mr r29, r3 /* 8004C34C 00047FAC 83 C3 00 18 */ lwz r30, 0x18(r3) /* 8004C350 00047FB0 2C 1E 00 00 */ cmpwi r30, 0 /* 8004C354 00047FB4 41 82 00 70 */ beq lbl_8004C3C4 /* 8004C358 00047FB8 88 1E 00 08 */ lbz r0, 8(r30) /* 8004C35C 00047FBC 2C 00 00 00 */ cmpwi r0, 0 /* 8004C360 00047FC0 41 82 00 3C */ beq lbl_8004C39C /* 8004C364 00047FC4 83 FE 00 04 */ lwz r31, 4(r30) /* 8004C368 00047FC8 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004C36C 00047FCC 48 1E EC ED */ bl func_8023B058 /* 8004C370 00047FD0 2C 03 00 00 */ cmpwi r3, 0 /* 8004C374 00047FD4 41 82 00 0C */ beq lbl_8004C380 /* 8004C378 00047FD8 7F E4 FB 78 */ mr r4, r31 /* 8004C37C 00047FDC 48 1E F0 A5 */ bl func_8023B420 lbl_8004C380: /* 8004C380 00047FE0 81 9E 00 0C */ lwz r12, 0xc(r30) /* 8004C384 00047FE4 7F C3 F3 78 */ mr r3, r30 /* 8004C388 00047FE8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8004C38C 00047FEC 7D 89 03 A6 */ mtctr r12 /* 8004C390 00047FF0 4E 80 04 21 */ bctrl /* 8004C394 00047FF4 38 00 00 00 */ li r0, 0 /* 8004C398 00047FF8 98 1E 00 08 */ stb r0, 8(r30) lbl_8004C39C: /* 8004C39C 00047FFC 80 7D 00 18 */ lwz r3, 0x18(r29) /* 8004C3A0 00048000 2C 03 00 00 */ cmpwi r3, 0 /* 8004C3A4 00048004 41 82 00 18 */ beq lbl_8004C3BC /* 8004C3A8 00048008 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004C3AC 0004800C 38 80 00 01 */ li r4, 1 /* 8004C3B0 00048010 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C3B4 00048014 7D 89 03 A6 */ mtctr r12 /* 8004C3B8 00048018 4E 80 04 21 */ bctrl lbl_8004C3BC: /* 8004C3BC 0004801C 38 00 00 00 */ li r0, 0 /* 8004C3C0 00048020 90 1D 00 18 */ stw r0, 0x18(r29) lbl_8004C3C4: /* 8004C3C4 00048024 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004C3C8 00048028 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004C3CC 0004802C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004C3D0 00048030 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004C3D4 00048034 7C 08 03 A6 */ mtlr r0 /* 8004C3D8 00048038 38 21 00 20 */ addi r1, r1, 0x20 /* 8004C3DC 0004803C 4E 80 00 20 */ blr /* 8004C3E0 00048040 4E 80 00 20 */ blr /* 8004C3E4 00048044 C0 22 84 08 */ lfs f1, lbl_80640A08-_SDA2_BASE_(r2) /* 8004C3E8 00048048 4E 80 00 20 */ blr .global func_8004C3EC func_8004C3EC: /* 8004C3EC 0004804C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C3F0 00048050 7C 08 02 A6 */ mflr r0 /* 8004C3F4 00048054 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C3F8 00048058 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C3FC 0004805C 7C 7F 1B 78 */ mr r31, r3 /* 8004C400 00048060 4B FF ED 51 */ bl func_8004B150 /* 8004C404 00048064 80 7F 00 0C */ lwz r3, 0xc(r31) /* 8004C408 00048068 3C A0 80 41 */ lis r5, lbl_8040A834@ha /* 8004C40C 0004806C 38 A5 A8 34 */ addi r5, r5, lbl_8040A834@l /* 8004C410 00048070 38 00 00 00 */ li r0, 0 /* 8004C414 00048074 38 83 00 08 */ addi r4, r3, 8 /* 8004C418 00048078 90 BF 00 10 */ stw r5, 0x10(r31) /* 8004C41C 0004807C 7F E3 FB 78 */ mr r3, r31 /* 8004C420 00048080 90 9F 00 14 */ stw r4, 0x14(r31) /* 8004C424 00048084 90 1F 00 18 */ stw r0, 0x18(r31) /* 8004C428 00048088 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C42C 0004808C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C430 00048090 7C 08 03 A6 */ mtlr r0 /* 8004C434 00048094 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C438 00048098 4E 80 00 20 */ blr /* 8004C43C 0004809C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C440 000480A0 7C 08 02 A6 */ mflr r0 /* 8004C444 000480A4 2C 03 00 00 */ cmpwi r3, 0 /* 8004C448 000480A8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C44C 000480AC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C450 000480B0 7C 9F 23 78 */ mr r31, r4 /* 8004C454 000480B4 93 C1 00 08 */ stw r30, 8(r1) /* 8004C458 000480B8 7C 7E 1B 78 */ mr r30, r3 /* 8004C45C 000480BC 41 82 00 5C */ beq lbl_8004C4B8 /* 8004C460 000480C0 80 03 00 18 */ lwz r0, 0x18(r3) /* 8004C464 000480C4 3C 80 80 41 */ lis r4, lbl_8040A834@ha /* 8004C468 000480C8 38 84 A8 34 */ addi r4, r4, lbl_8040A834@l /* 8004C46C 000480CC 2C 00 00 00 */ cmpwi r0, 0 /* 8004C470 000480D0 90 83 00 10 */ stw r4, 0x10(r3) /* 8004C474 000480D4 40 82 00 28 */ bne lbl_8004C49C /* 8004C478 000480D8 41 82 00 1C */ beq lbl_8004C494 /* 8004C47C 000480DC 7C 03 03 78 */ mr r3, r0 /* 8004C480 000480E0 38 80 00 01 */ li r4, 1 /* 8004C484 000480E4 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004C488 000480E8 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C48C 000480EC 7D 89 03 A6 */ mtctr r12 /* 8004C490 000480F0 4E 80 04 21 */ bctrl lbl_8004C494: /* 8004C494 000480F4 38 00 00 00 */ li r0, 0 /* 8004C498 000480F8 90 1E 00 18 */ stw r0, 0x18(r30) lbl_8004C49C: /* 8004C49C 000480FC 7F C3 F3 78 */ mr r3, r30 /* 8004C4A0 00048100 38 80 00 00 */ li r4, 0 /* 8004C4A4 00048104 4B FF EC D1 */ bl func_8004B174 /* 8004C4A8 00048108 2C 1F 00 00 */ cmpwi r31, 0 /* 8004C4AC 0004810C 40 81 00 0C */ ble lbl_8004C4B8 /* 8004C4B0 00048110 7F C3 F3 78 */ mr r3, r30 /* 8004C4B4 00048114 48 18 E6 05 */ bl func_801DAAB8 lbl_8004C4B8: /* 8004C4B8 00048118 7F C3 F3 78 */ mr r3, r30 /* 8004C4BC 0004811C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C4C0 00048120 83 C1 00 08 */ lwz r30, 8(r1) /* 8004C4C4 00048124 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C4C8 00048128 7C 08 03 A6 */ mtlr r0 /* 8004C4CC 0004812C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C4D0 00048130 4E 80 00 20 */ blr /* 8004C4D4 00048134 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004C4D8 00048138 7C 08 02 A6 */ mflr r0 /* 8004C4DC 0004813C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004C4E0 00048140 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C4E4 00048144 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004C4E8 00048148 7C 7E 1B 78 */ mr r30, r3 /* 8004C4EC 0004814C 4B FF EC C9 */ bl func_8004B1B4 /* 8004C4F0 00048150 2C 03 00 00 */ cmpwi r3, 0 /* 8004C4F4 00048154 7C 7F 1B 78 */ mr r31, r3 /* 8004C4F8 00048158 41 82 01 1C */ beq lbl_8004C614 /* 8004C4FC 0004815C 80 7E 00 18 */ lwz r3, 0x18(r30) /* 8004C500 00048160 2C 03 00 00 */ cmpwi r3, 0 /* 8004C504 00048164 41 82 00 1C */ beq lbl_8004C520 /* 8004C508 00048168 41 82 00 18 */ beq lbl_8004C520 /* 8004C50C 0004816C 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004C510 00048170 38 80 00 01 */ li r4, 1 /* 8004C514 00048174 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C518 00048178 7D 89 03 A6 */ mtctr r12 /* 8004C51C 0004817C 4E 80 04 21 */ bctrl lbl_8004C520: /* 8004C520 00048180 48 18 E6 09 */ bl func_801DAB28 /* 8004C524 00048184 2C 03 00 00 */ cmpwi r3, 0 /* 8004C528 00048188 41 82 00 14 */ beq lbl_8004C53C /* 8004C52C 0004818C 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004C530 00048190 38 80 00 28 */ li r4, 0x28 /* 8004C534 00048194 48 18 E7 61 */ bl func_801DAC94 /* 8004C538 00048198 48 00 00 08 */ b lbl_8004C540 lbl_8004C53C: /* 8004C53C 0004819C 38 60 00 00 */ li r3, 0 lbl_8004C540: /* 8004C540 000481A0 2C 03 00 00 */ cmpwi r3, 0 /* 8004C544 000481A4 41 82 00 14 */ beq lbl_8004C558 /* 8004C548 000481A8 80 BE 00 14 */ lwz r5, 0x14(r30) /* 8004C54C 000481AC 80 9F 0C 04 */ lwz r4, 0xc04(r31) /* 8004C550 000481B0 80 A5 00 1C */ lwz r5, 0x1c(r5) /* 8004C554 000481B4 48 1D 24 F5 */ bl func_8021EA48 lbl_8004C558: /* 8004C558 000481B8 2C 03 00 00 */ cmpwi r3, 0 /* 8004C55C 000481BC 90 7E 00 18 */ stw r3, 0x18(r30) /* 8004C560 000481C0 41 82 00 B4 */ beq lbl_8004C614 /* 8004C564 000481C4 80 9E 00 14 */ lwz r4, 0x14(r30) /* 8004C568 000481C8 C0 24 00 0C */ lfs f1, 0xc(r4) /* 8004C56C 000481CC C0 04 00 08 */ lfs f0, 8(r4) /* 8004C570 000481D0 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004C574 000481D4 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 8004C578 000481D8 D0 23 00 20 */ stfs f1, 0x20(r3) /* 8004C57C 000481DC 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004C580 000481E0 D0 01 00 08 */ stfs f0, 8(r1) /* 8004C584 000481E4 A0 03 00 04 */ lhz r0, 4(r3) /* 8004C588 000481E8 28 00 00 01 */ cmplwi r0, 1 /* 8004C58C 000481EC 40 82 00 14 */ bne lbl_8004C5A0 /* 8004C590 000481F0 80 7E 00 18 */ lwz r3, 0x18(r30) /* 8004C594 000481F4 38 00 00 01 */ li r0, 1 /* 8004C598 000481F8 90 03 00 24 */ stw r0, 0x24(r3) /* 8004C59C 000481FC 48 00 00 10 */ b lbl_8004C5AC lbl_8004C5A0: /* 8004C5A0 00048200 80 7E 00 18 */ lwz r3, 0x18(r30) /* 8004C5A4 00048204 38 00 00 00 */ li r0, 0 /* 8004C5A8 00048208 90 03 00 24 */ stw r0, 0x24(r3) lbl_8004C5AC: /* 8004C5AC 0004820C 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004C5B0 00048210 80 9E 00 18 */ lwz r4, 0x18(r30) /* 8004C5B4 00048214 88 03 00 10 */ lbz r0, 0x10(r3) /* 8004C5B8 00048218 98 04 00 18 */ stb r0, 0x18(r4) /* 8004C5BC 0004821C 88 03 00 11 */ lbz r0, 0x11(r3) /* 8004C5C0 00048220 98 04 00 19 */ stb r0, 0x19(r4) /* 8004C5C4 00048224 88 03 00 12 */ lbz r0, 0x12(r3) /* 8004C5C8 00048228 98 04 00 1A */ stb r0, 0x1a(r4) /* 8004C5CC 0004822C 88 03 00 13 */ lbz r0, 0x13(r3) /* 8004C5D0 00048230 98 04 00 1B */ stb r0, 0x1b(r4) /* 8004C5D4 00048234 83 FE 00 18 */ lwz r31, 0x18(r30) /* 8004C5D8 00048238 81 9F 00 0C */ lwz r12, 0xc(r31) /* 8004C5DC 0004823C 7F E3 FB 78 */ mr r3, r31 /* 8004C5E0 00048240 81 8C 00 08 */ lwz r12, 8(r12) /* 8004C5E4 00048244 7D 89 03 A6 */ mtctr r12 /* 8004C5E8 00048248 4E 80 04 21 */ bctrl /* 8004C5EC 0004824C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004C5F0 00048250 98 7F 00 08 */ stb r3, 8(r31) /* 8004C5F4 00048254 41 82 00 20 */ beq lbl_8004C614 /* 8004C5F8 00048258 83 FF 00 04 */ lwz r31, 4(r31) /* 8004C5FC 0004825C 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004C600 00048260 48 1E EA 59 */ bl func_8023B058 /* 8004C604 00048264 2C 03 00 00 */ cmpwi r3, 0 /* 8004C608 00048268 41 82 00 0C */ beq lbl_8004C614 /* 8004C60C 0004826C 7F E4 FB 78 */ mr r4, r31 /* 8004C610 00048270 48 1E ED A9 */ bl func_8023B3B8 lbl_8004C614: /* 8004C614 00048274 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004C618 00048278 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004C61C 0004827C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004C620 00048280 7C 08 03 A6 */ mtlr r0 /* 8004C624 00048284 38 21 00 20 */ addi r1, r1, 0x20 /* 8004C628 00048288 4E 80 00 20 */ blr /* 8004C62C 0004828C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004C630 00048290 7C 08 02 A6 */ mflr r0 /* 8004C634 00048294 90 01 00 24 */ stw r0, 0x24(r1) /* 8004C638 00048298 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C63C 0004829C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004C640 000482A0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004C644 000482A4 7C 7D 1B 78 */ mr r29, r3 /* 8004C648 000482A8 83 C3 00 18 */ lwz r30, 0x18(r3) /* 8004C64C 000482AC 2C 1E 00 00 */ cmpwi r30, 0 /* 8004C650 000482B0 41 82 00 70 */ beq lbl_8004C6C0 /* 8004C654 000482B4 88 1E 00 08 */ lbz r0, 8(r30) /* 8004C658 000482B8 2C 00 00 00 */ cmpwi r0, 0 /* 8004C65C 000482BC 41 82 00 3C */ beq lbl_8004C698 /* 8004C660 000482C0 83 FE 00 04 */ lwz r31, 4(r30) /* 8004C664 000482C4 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004C668 000482C8 48 1E E9 F1 */ bl func_8023B058 /* 8004C66C 000482CC 2C 03 00 00 */ cmpwi r3, 0 /* 8004C670 000482D0 41 82 00 0C */ beq lbl_8004C67C /* 8004C674 000482D4 7F E4 FB 78 */ mr r4, r31 /* 8004C678 000482D8 48 1E ED A9 */ bl func_8023B420 lbl_8004C67C: /* 8004C67C 000482DC 81 9E 00 0C */ lwz r12, 0xc(r30) /* 8004C680 000482E0 7F C3 F3 78 */ mr r3, r30 /* 8004C684 000482E4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8004C688 000482E8 7D 89 03 A6 */ mtctr r12 /* 8004C68C 000482EC 4E 80 04 21 */ bctrl /* 8004C690 000482F0 38 00 00 00 */ li r0, 0 /* 8004C694 000482F4 98 1E 00 08 */ stb r0, 8(r30) lbl_8004C698: /* 8004C698 000482F8 80 7D 00 18 */ lwz r3, 0x18(r29) /* 8004C69C 000482FC 2C 03 00 00 */ cmpwi r3, 0 /* 8004C6A0 00048300 41 82 00 18 */ beq lbl_8004C6B8 /* 8004C6A4 00048304 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004C6A8 00048308 38 80 00 01 */ li r4, 1 /* 8004C6AC 0004830C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004C6B0 00048310 7D 89 03 A6 */ mtctr r12 /* 8004C6B4 00048314 4E 80 04 21 */ bctrl lbl_8004C6B8: /* 8004C6B8 00048318 38 00 00 00 */ li r0, 0 /* 8004C6BC 0004831C 90 1D 00 18 */ stw r0, 0x18(r29) lbl_8004C6C0: /* 8004C6C0 00048320 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004C6C4 00048324 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004C6C8 00048328 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004C6CC 0004832C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004C6D0 00048330 7C 08 03 A6 */ mtlr r0 /* 8004C6D4 00048334 38 21 00 20 */ addi r1, r1, 0x20 /* 8004C6D8 00048338 4E 80 00 20 */ blr /* 8004C6DC 0004833C 4E 80 00 20 */ blr .global func_8004C6E0 func_8004C6E0: /* 8004C6E0 00048340 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C6E4 00048344 7C 08 02 A6 */ mflr r0 /* 8004C6E8 00048348 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C6EC 0004834C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C6F0 00048350 7C 7F 1B 78 */ mr r31, r3 /* 8004C6F4 00048354 4B FF EA 5D */ bl func_8004B150 /* 8004C6F8 00048358 3C 80 80 41 */ lis r4, lbl_8040A7F0@ha /* 8004C6FC 0004835C 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004C700 00048360 38 84 A7 F0 */ addi r4, r4, lbl_8040A7F0@l /* 8004C704 00048364 90 9F 00 10 */ stw r4, 0x10(r31) /* 8004C708 00048368 48 00 3C 1D */ bl func_80050324 /* 8004C70C 0004836C 38 7F 00 40 */ addi r3, r31, 0x40 /* 8004C710 00048370 48 00 44 25 */ bl func_80050B34 /* 8004C714 00048374 80 9F 00 0C */ lwz r4, 0xc(r31) /* 8004C718 00048378 38 00 00 00 */ li r0, 0 /* 8004C71C 0004837C 90 1F 00 B4 */ stw r0, 0xb4(r31) /* 8004C720 00048380 7F E3 FB 78 */ mr r3, r31 /* 8004C724 00048384 38 04 00 08 */ addi r0, r4, 8 /* 8004C728 00048388 90 1F 00 14 */ stw r0, 0x14(r31) /* 8004C72C 0004838C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C730 00048390 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C734 00048394 7C 08 03 A6 */ mtlr r0 /* 8004C738 00048398 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C73C 0004839C 4E 80 00 20 */ blr /* 8004C740 000483A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C744 000483A4 7C 08 02 A6 */ mflr r0 /* 8004C748 000483A8 2C 03 00 00 */ cmpwi r3, 0 /* 8004C74C 000483AC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C750 000483B0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C754 000483B4 7C 9F 23 78 */ mr r31, r4 /* 8004C758 000483B8 93 C1 00 08 */ stw r30, 8(r1) /* 8004C75C 000483BC 7C 7E 1B 78 */ mr r30, r3 /* 8004C760 000483C0 41 82 00 1C */ beq lbl_8004C77C /* 8004C764 000483C4 38 80 00 00 */ li r4, 0 /* 8004C768 000483C8 4B FF EA 0D */ bl func_8004B174 /* 8004C76C 000483CC 2C 1F 00 00 */ cmpwi r31, 0 /* 8004C770 000483D0 40 81 00 0C */ ble lbl_8004C77C /* 8004C774 000483D4 7F C3 F3 78 */ mr r3, r30 /* 8004C778 000483D8 48 18 E3 41 */ bl func_801DAAB8 lbl_8004C77C: /* 8004C77C 000483DC 7F C3 F3 78 */ mr r3, r30 /* 8004C780 000483E0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C784 000483E4 83 C1 00 08 */ lwz r30, 8(r1) /* 8004C788 000483E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C78C 000483EC 7C 08 03 A6 */ mtlr r0 /* 8004C790 000483F0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C794 000483F4 4E 80 00 20 */ blr /* 8004C798 000483F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C79C 000483FC 7C 08 02 A6 */ mflr r0 /* 8004C7A0 00048400 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C7A4 00048404 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C7A8 00048408 7C 7F 1B 78 */ mr r31, r3 /* 8004C7AC 0004840C 4B FF EA 09 */ bl func_8004B1B4 /* 8004C7B0 00048410 2C 03 00 00 */ cmpwi r3, 0 /* 8004C7B4 00048414 41 82 00 0C */ beq lbl_8004C7C0 /* 8004C7B8 00048418 80 03 0C 04 */ lwz r0, 0xc04(r3) /* 8004C7BC 0004841C 90 1F 00 B4 */ stw r0, 0xb4(r31) lbl_8004C7C0: /* 8004C7C0 00048420 38 00 00 00 */ li r0, 0 /* 8004C7C4 00048424 7F E3 FB 78 */ mr r3, r31 /* 8004C7C8 00048428 90 1F 00 B0 */ stw r0, 0xb0(r31) /* 8004C7CC 0004842C 48 00 00 19 */ bl func_8004C7E4 /* 8004C7D0 00048430 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C7D4 00048434 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C7D8 00048438 7C 08 03 A6 */ mtlr r0 /* 8004C7DC 0004843C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C7E0 00048440 4E 80 00 20 */ blr .global func_8004C7E4 func_8004C7E4: /* 8004C7E4 00048444 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C7E8 00048448 7C 08 02 A6 */ mflr r0 /* 8004C7EC 0004844C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C7F0 00048450 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C7F4 00048454 7C 7F 1B 78 */ mr r31, r3 /* 8004C7F8 00048458 93 C1 00 08 */ stw r30, 8(r1) /* 8004C7FC 0004845C 80 C3 00 14 */ lwz r6, 0x14(r3) /* 8004C800 00048460 80 A3 00 B0 */ lwz r5, 0xb0(r3) /* 8004C804 00048464 80 86 00 04 */ lwz r4, 4(r6) /* 8004C808 00048468 38 04 FF FF */ addi r0, r4, -1 /* 8004C80C 0004846C 7C 05 00 00 */ cmpw r5, r0 /* 8004C810 00048470 40 80 00 18 */ bge lbl_8004C828 /* 8004C814 00048474 38 05 00 01 */ addi r0, r5, 1 /* 8004C818 00048478 38 86 00 08 */ addi r4, r6, 8 /* 8004C81C 0004847C 1C 00 00 14 */ mulli r0, r0, 0x14 /* 8004C820 00048480 7F C4 02 14 */ add r30, r4, r0 /* 8004C824 00048484 48 00 00 10 */ b lbl_8004C834 lbl_8004C828: /* 8004C828 00048488 1C 00 00 14 */ mulli r0, r0, 0x14 /* 8004C82C 0004848C 38 86 00 08 */ addi r4, r6, 8 /* 8004C830 00048490 7F C4 02 14 */ add r30, r4, r0 lbl_8004C834: /* 8004C834 00048494 1C 05 00 14 */ mulli r0, r5, 0x14 /* 8004C838 00048498 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004C83C 0004849C 7C 84 02 14 */ add r4, r4, r0 /* 8004C840 000484A0 90 83 00 18 */ stw r4, 0x18(r3) /* 8004C844 000484A4 C0 04 00 10 */ lfs f0, 0x10(r4) /* 8004C848 000484A8 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 8004C84C 000484AC 40 82 00 30 */ bne lbl_8004C87C /* 8004C850 000484B0 38 63 00 80 */ addi r3, r3, 0x80 /* 8004C854 000484B4 38 84 00 08 */ addi r4, r4, 8 /* 8004C858 000484B8 4B FF E5 09 */ bl func_8004AD60 /* 8004C85C 000484BC 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004C860 000484C0 7F E3 FB 78 */ mr r3, r31 /* 8004C864 000484C4 C0 04 00 00 */ lfs f0, 0(r4) /* 8004C868 000484C8 D0 1F 00 7C */ stfs f0, 0x7c(r31) /* 8004C86C 000484CC 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004C870 000484D0 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004C874 000484D4 7D 89 03 A6 */ mtctr r12 /* 8004C878 000484D8 4E 80 04 21 */ bctrl lbl_8004C87C: /* 8004C87C 000484DC 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004C880 000484E0 48 00 3B 09 */ bl func_80050388 /* 8004C884 000484E4 38 7F 00 40 */ addi r3, r31, 0x40 /* 8004C888 000484E8 48 00 43 59 */ bl func_80050BE0 /* 8004C88C 000484EC 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004C890 000484F0 38 9F 00 90 */ addi r4, r31, 0x90 /* 8004C894 000484F4 38 63 00 08 */ addi r3, r3, 8 /* 8004C898 000484F8 4B FF E4 5D */ bl func_8004ACF4 /* 8004C89C 000484FC 38 7E 00 08 */ addi r3, r30, 8 /* 8004C8A0 00048500 38 9F 00 A0 */ addi r4, r31, 0xa0 /* 8004C8A4 00048504 4B FF E4 51 */ bl func_8004ACF4 /* 8004C8A8 00048508 80 DF 00 18 */ lwz r6, 0x18(r31) /* 8004C8AC 0004850C 38 7F 00 40 */ addi r3, r31, 0x40 /* 8004C8B0 00048510 38 9F 00 90 */ addi r4, r31, 0x90 /* 8004C8B4 00048514 38 BF 00 A0 */ addi r5, r31, 0xa0 /* 8004C8B8 00048518 C0 26 00 10 */ lfs f1, 0x10(r6) /* 8004C8BC 0004851C 38 DF 00 80 */ addi r6, r31, 0x80 /* 8004C8C0 00048520 38 E0 00 00 */ li r7, 0 /* 8004C8C4 00048524 48 00 42 89 */ bl func_80050B4C /* 8004C8C8 00048528 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004C8CC 0004852C 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004C8D0 00048530 38 DF 00 7C */ addi r6, r31, 0x7c /* 8004C8D4 00048534 38 E0 00 00 */ li r7, 0 /* 8004C8D8 00048538 C0 24 00 10 */ lfs f1, 0x10(r4) /* 8004C8DC 0004853C 38 A4 00 04 */ addi r5, r4, 4 /* 8004C8E0 00048540 48 00 3A 5D */ bl func_8005033C /* 8004C8E4 00048544 80 7F 00 B0 */ lwz r3, 0xb0(r31) /* 8004C8E8 00048548 38 00 00 01 */ li r0, 1 /* 8004C8EC 0004854C 98 1F 00 00 */ stb r0, 0(r31) /* 8004C8F0 00048550 38 03 00 01 */ addi r0, r3, 1 /* 8004C8F4 00048554 90 1F 00 B0 */ stw r0, 0xb0(r31) /* 8004C8F8 00048558 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C8FC 0004855C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004C900 00048560 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C904 00048564 7C 08 03 A6 */ mtlr r0 /* 8004C908 00048568 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C90C 0004856C 4E 80 00 20 */ blr /* 8004C910 00048570 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004C914 00048574 7C 08 02 A6 */ mflr r0 /* 8004C918 00048578 90 01 00 14 */ stw r0, 0x14(r1) /* 8004C91C 0004857C 38 00 00 00 */ li r0, 0 /* 8004C920 00048580 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004C924 00048584 7C 7F 1B 78 */ mr r31, r3 /* 8004C928 00048588 98 03 00 00 */ stb r0, 0(r3) /* 8004C92C 0004858C 38 63 00 40 */ addi r3, r3, 0x40 /* 8004C930 00048590 48 00 42 B1 */ bl func_80050BE0 /* 8004C934 00048594 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004C938 00048598 48 00 3A 51 */ bl func_80050388 /* 8004C93C 0004859C 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8004C940 000485A0 2C 03 00 00 */ cmpwi r3, 0 /* 8004C944 000485A4 41 82 00 0C */ beq lbl_8004C950 /* 8004C948 000485A8 38 80 00 01 */ li r4, 1 /* 8004C94C 000485AC 48 1A 9A 79 */ bl func_801F63C4 lbl_8004C950: /* 8004C950 000485B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004C954 000485B4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004C958 000485B8 7C 08 03 A6 */ mtlr r0 /* 8004C95C 000485BC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004C960 000485C0 4E 80 00 20 */ blr /* 8004C964 000485C4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004C968 000485C8 7C 08 02 A6 */ mflr r0 /* 8004C96C 000485CC 90 01 00 34 */ stw r0, 0x34(r1) /* 8004C970 000485D0 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8004C974 000485D4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8004C978 000485D8 FF E0 08 90 */ fmr f31, f1 /* 8004C97C 000485DC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004C980 000485E0 7C 7F 1B 78 */ mr r31, r3 /* 8004C984 000485E4 88 03 00 00 */ lbz r0, 0(r3) /* 8004C988 000485E8 2C 00 00 00 */ cmpwi r0, 0 /* 8004C98C 000485EC 41 82 00 A4 */ beq lbl_8004CA30 /* 8004C990 000485F0 81 83 00 78 */ lwz r12, 0x78(r3) /* 8004C994 000485F4 81 8C 00 08 */ lwz r12, 8(r12) /* 8004C998 000485F8 7D 89 03 A6 */ mtctr r12 /* 8004C99C 000485FC 38 63 00 40 */ addi r3, r3, 0x40 /* 8004C9A0 00048600 4E 80 04 21 */ bctrl /* 8004C9A4 00048604 81 9F 00 3C */ lwz r12, 0x3c(r31) /* 8004C9A8 00048608 FC 20 F8 90 */ fmr f1, f31 /* 8004C9AC 0004860C 38 7F 00 1C */ addi r3, r31, 0x1c /* 8004C9B0 00048610 81 8C 00 08 */ lwz r12, 8(r12) /* 8004C9B4 00048614 7D 89 03 A6 */ mtctr r12 /* 8004C9B8 00048618 4E 80 04 21 */ bctrl /* 8004C9BC 0004861C 2C 03 00 00 */ cmpwi r3, 0 /* 8004C9C0 00048620 40 82 00 38 */ bne lbl_8004C9F8 /* 8004C9C4 00048624 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004C9C8 00048628 80 9F 00 B0 */ lwz r4, 0xb0(r31) /* 8004C9CC 0004862C 80 03 00 04 */ lwz r0, 4(r3) /* 8004C9D0 00048630 7C 04 00 00 */ cmpw r4, r0 /* 8004C9D4 00048634 41 80 00 1C */ blt lbl_8004C9F0 /* 8004C9D8 00048638 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004C9DC 0004863C 7F E3 FB 78 */ mr r3, r31 /* 8004C9E0 00048640 81 8C 00 10 */ lwz r12, 0x10(r12) /* 8004C9E4 00048644 7D 89 03 A6 */ mtctr r12 /* 8004C9E8 00048648 4E 80 04 21 */ bctrl /* 8004C9EC 0004864C 48 00 00 0C */ b lbl_8004C9F8 lbl_8004C9F0: /* 8004C9F0 00048650 7F E3 FB 78 */ mr r3, r31 /* 8004C9F4 00048654 4B FF FD F1 */ bl func_8004C7E4 lbl_8004C9F8: /* 8004C9F8 00048658 38 7F 00 80 */ addi r3, r31, 0x80 /* 8004C9FC 0004865C 38 81 00 08 */ addi r4, r1, 8 /* 8004CA00 00048660 4B FF E3 61 */ bl func_8004AD60 /* 8004CA04 00048664 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8004CA08 00048668 2C 03 00 00 */ cmpwi r3, 0 /* 8004CA0C 0004866C 41 82 00 24 */ beq lbl_8004CA30 /* 8004CA10 00048670 38 81 00 08 */ addi r4, r1, 8 /* 8004CA14 00048674 48 1A 9A C9 */ bl func_801F64DC /* 8004CA18 00048678 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8004CA1C 0004867C C0 3F 00 7C */ lfs f1, 0x7c(r31) /* 8004CA20 00048680 48 1A 9B 69 */ bl func_801F6588 /* 8004CA24 00048684 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8004CA28 00048688 38 80 00 01 */ li r4, 1 /* 8004CA2C 0004868C 48 1A 99 99 */ bl func_801F63C4 lbl_8004CA30: /* 8004CA30 00048690 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8004CA34 00048694 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004CA38 00048698 CB E1 00 20 */ lfd f31, 0x20(r1) /* 8004CA3C 0004869C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004CA40 000486A0 7C 08 03 A6 */ mtlr r0 /* 8004CA44 000486A4 38 21 00 30 */ addi r1, r1, 0x30 /* 8004CA48 000486A8 4E 80 00 20 */ blr /* 8004CA4C 000486AC 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004CA50 000486B0 39 00 00 00 */ li r8, 0 /* 8004CA54 000486B4 C0 22 83 F8 */ lfs f1, lbl_806409F8-_SDA2_BASE_(r2) /* 8004CA58 000486B8 80 E4 00 04 */ lwz r7, 4(r4) /* 8004CA5C 000486BC 2C 87 00 00 */ cmpwi cr1, r7, 0 /* 8004CA60 000486C0 4C 85 00 20 */ blelr cr1 /* 8004CA64 000486C4 2C 07 00 08 */ cmpwi r7, 8 /* 8004CA68 000486C8 38 A7 FF F8 */ addi r5, r7, -8 /* 8004CA6C 000486CC 40 81 00 94 */ ble lbl_8004CB00 /* 8004CA70 000486D0 38 C0 00 00 */ li r6, 0 /* 8004CA74 000486D4 41 84 00 18 */ blt cr1, lbl_8004CA8C /* 8004CA78 000486D8 3C 80 80 00 */ lis r4, 0x7FFFFFFE@ha /* 8004CA7C 000486DC 38 04 FF FE */ addi r0, r4, 0x7FFFFFFE@l /* 8004CA80 000486E0 7C 07 00 00 */ cmpw r7, r0 /* 8004CA84 000486E4 41 81 00 08 */ bgt lbl_8004CA8C /* 8004CA88 000486E8 38 C0 00 01 */ li r6, 1 lbl_8004CA8C: /* 8004CA8C 000486EC 2C 06 00 00 */ cmpwi r6, 0 /* 8004CA90 000486F0 41 82 00 70 */ beq lbl_8004CB00 /* 8004CA94 000486F4 38 05 00 07 */ addi r0, r5, 7 /* 8004CA98 000486F8 38 80 00 00 */ li r4, 0 /* 8004CA9C 000486FC 54 00 E8 FE */ srwi r0, r0, 3 /* 8004CAA0 00048700 7C 09 03 A6 */ mtctr r0 /* 8004CAA4 00048704 2C 05 00 00 */ cmpwi r5, 0 /* 8004CAA8 00048708 40 81 00 58 */ ble lbl_8004CB00 lbl_8004CAAC: /* 8004CAAC 0004870C 80 03 00 14 */ lwz r0, 0x14(r3) /* 8004CAB0 00048710 39 08 00 08 */ addi r8, r8, 8 /* 8004CAB4 00048714 7C A0 22 14 */ add r5, r0, r4 /* 8004CAB8 00048718 38 84 00 A0 */ addi r4, r4, 0xa0 /* 8004CABC 0004871C C0 45 00 18 */ lfs f2, 0x18(r5) /* 8004CAC0 00048720 C0 05 00 2C */ lfs f0, 0x2c(r5) /* 8004CAC4 00048724 EC 21 10 2A */ fadds f1, f1, f2 /* 8004CAC8 00048728 C0 C5 00 40 */ lfs f6, 0x40(r5) /* 8004CACC 0004872C C0 A5 00 54 */ lfs f5, 0x54(r5) /* 8004CAD0 00048730 C0 85 00 68 */ lfs f4, 0x68(r5) /* 8004CAD4 00048734 EC 21 00 2A */ fadds f1, f1, f0 /* 8004CAD8 00048738 C0 65 00 7C */ lfs f3, 0x7c(r5) /* 8004CADC 0004873C C0 45 00 90 */ lfs f2, 0x90(r5) /* 8004CAE0 00048740 C0 05 00 A4 */ lfs f0, 0xa4(r5) /* 8004CAE4 00048744 EC 21 30 2A */ fadds f1, f1, f6 /* 8004CAE8 00048748 EC 21 28 2A */ fadds f1, f1, f5 /* 8004CAEC 0004874C EC 21 20 2A */ fadds f1, f1, f4 /* 8004CAF0 00048750 EC 21 18 2A */ fadds f1, f1, f3 /* 8004CAF4 00048754 EC 21 10 2A */ fadds f1, f1, f2 /* 8004CAF8 00048758 EC 21 00 2A */ fadds f1, f1, f0 /* 8004CAFC 0004875C 42 00 FF B0 */ bdnz lbl_8004CAAC lbl_8004CB00: /* 8004CB00 00048760 80 A3 00 14 */ lwz r5, 0x14(r3) /* 8004CB04 00048764 1C 88 00 14 */ mulli r4, r8, 0x14 /* 8004CB08 00048768 80 65 00 04 */ lwz r3, 4(r5) /* 8004CB0C 0004876C 7C 08 18 50 */ subf r0, r8, r3 /* 8004CB10 00048770 7C 09 03 A6 */ mtctr r0 /* 8004CB14 00048774 7C 08 18 00 */ cmpw r8, r3 /* 8004CB18 00048778 4C 80 00 20 */ bgelr lbl_8004CB1C: /* 8004CB1C 0004877C 7C 65 22 14 */ add r3, r5, r4 /* 8004CB20 00048780 38 84 00 14 */ addi r4, r4, 0x14 /* 8004CB24 00048784 C0 03 00 18 */ lfs f0, 0x18(r3) /* 8004CB28 00048788 EC 21 00 2A */ fadds f1, f1, f0 /* 8004CB2C 0004878C 42 00 FF F0 */ bdnz lbl_8004CB1C /* 8004CB30 00048790 4E 80 00 20 */ blr .global func_8004CB34 func_8004CB34: /* 8004CB34 00048794 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004CB38 00048798 7C 08 02 A6 */ mflr r0 /* 8004CB3C 0004879C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CB40 000487A0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004CB44 000487A4 7C 7F 1B 78 */ mr r31, r3 /* 8004CB48 000487A8 4B FF E6 09 */ bl func_8004B150 /* 8004CB4C 000487AC 80 BF 00 0C */ lwz r5, 0xc(r31) /* 8004CB50 000487B0 3C C0 80 41 */ lis r6, lbl_8040A7AC@ha /* 8004CB54 000487B4 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 8004CB58 000487B8 38 80 00 00 */ li r4, 0 /* 8004CB5C 000487BC 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 8004CB60 000487C0 38 C6 A7 AC */ addi r6, r6, lbl_8040A7AC@l /* 8004CB64 000487C4 38 A5 00 08 */ addi r5, r5, 8 /* 8004CB68 000487C8 90 DF 00 10 */ stw r6, 0x10(r31) /* 8004CB6C 000487CC 7F E3 FB 78 */ mr r3, r31 /* 8004CB70 000487D0 90 BF 00 14 */ stw r5, 0x14(r31) /* 8004CB74 000487D4 90 9F 00 18 */ stw r4, 0x18(r31) /* 8004CB78 000487D8 B0 1F 00 1C */ sth r0, 0x1c(r31) /* 8004CB7C 000487DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004CB80 000487E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004CB84 000487E4 7C 08 03 A6 */ mtlr r0 /* 8004CB88 000487E8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004CB8C 000487EC 4E 80 00 20 */ blr /* 8004CB90 000487F0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004CB94 000487F4 7C 08 02 A6 */ mflr r0 /* 8004CB98 000487F8 2C 03 00 00 */ cmpwi r3, 0 /* 8004CB9C 000487FC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004CBA0 00048800 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004CBA4 00048804 7C 9F 23 78 */ mr r31, r4 /* 8004CBA8 00048808 93 C1 00 08 */ stw r30, 8(r1) /* 8004CBAC 0004880C 7C 7E 1B 78 */ mr r30, r3 /* 8004CBB0 00048810 41 82 00 60 */ beq lbl_8004CC10 /* 8004CBB4 00048814 80 03 00 18 */ lwz r0, 0x18(r3) /* 8004CBB8 00048818 3C 80 80 41 */ lis r4, lbl_8040A7AC@ha /* 8004CBBC 0004881C 38 84 A7 AC */ addi r4, r4, lbl_8040A7AC@l /* 8004CBC0 00048820 2C 00 00 00 */ cmpwi r0, 0 /* 8004CBC4 00048824 90 83 00 10 */ stw r4, 0x10(r3) /* 8004CBC8 00048828 41 82 00 20 */ beq lbl_8004CBE8 /* 8004CBCC 0004882C 41 82 00 1C */ beq lbl_8004CBE8 /* 8004CBD0 00048830 7C 03 03 78 */ mr r3, r0 /* 8004CBD4 00048834 38 80 00 01 */ li r4, 1 /* 8004CBD8 00048838 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004CBDC 0004883C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CBE0 00048840 7D 89 03 A6 */ mtctr r12 /* 8004CBE4 00048844 4E 80 04 21 */ bctrl lbl_8004CBE8: /* 8004CBE8 00048848 3C 80 00 01 */ lis r4, 0x0000FFFF@ha /* 8004CBEC 0004884C 7F C3 F3 78 */ mr r3, r30 /* 8004CBF0 00048850 38 04 FF FF */ addi r0, r4, 0x0000FFFF@l /* 8004CBF4 00048854 B0 1E 00 1C */ sth r0, 0x1c(r30) /* 8004CBF8 00048858 38 80 00 00 */ li r4, 0 /* 8004CBFC 0004885C 4B FF E5 79 */ bl func_8004B174 /* 8004CC00 00048860 2C 1F 00 00 */ cmpwi r31, 0 /* 8004CC04 00048864 40 81 00 0C */ ble lbl_8004CC10 /* 8004CC08 00048868 7F C3 F3 78 */ mr r3, r30 /* 8004CC0C 0004886C 48 18 DE AD */ bl func_801DAAB8 lbl_8004CC10: /* 8004CC10 00048870 7F C3 F3 78 */ mr r3, r30 /* 8004CC14 00048874 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004CC18 00048878 83 C1 00 08 */ lwz r30, 8(r1) /* 8004CC1C 0004887C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004CC20 00048880 7C 08 03 A6 */ mtlr r0 /* 8004CC24 00048884 38 21 00 10 */ addi r1, r1, 0x10 /* 8004CC28 00048888 4E 80 00 20 */ blr /* 8004CC2C 0004888C 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004CC30 00048890 7C 08 02 A6 */ mflr r0 /* 8004CC34 00048894 90 01 00 64 */ stw r0, 0x64(r1) /* 8004CC38 00048898 DB E1 00 50 */ stfd f31, 0x50(r1) /* 8004CC3C 0004889C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 8004CC40 000488A0 93 E1 00 4C */ stw r31, 0x4c(r1) /* 8004CC44 000488A4 7C 7F 1B 78 */ mr r31, r3 /* 8004CC48 000488A8 93 C1 00 48 */ stw r30, 0x48(r1) /* 8004CC4C 000488AC 93 A1 00 44 */ stw r29, 0x44(r1) /* 8004CC50 000488B0 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004CC54 000488B4 80 04 00 2C */ lwz r0, 0x2c(r4) /* 8004CC58 000488B8 2C 00 00 00 */ cmpwi r0, 0 /* 8004CC5C 000488BC 41 82 02 F8 */ beq lbl_8004CF54 /* 8004CC60 000488C0 80 63 00 04 */ lwz r3, 4(r3) /* 8004CC64 000488C4 80 03 00 18 */ lwz r0, 0x18(r3) /* 8004CC68 000488C8 2C 00 00 00 */ cmpwi r0, 0 /* 8004CC6C 000488CC 41 82 02 E8 */ beq lbl_8004CF54 /* 8004CC70 000488D0 4B FE 64 19 */ bl func_80033088 /* 8004CC74 000488D4 38 80 00 00 */ li r4, 0 /* 8004CC78 000488D8 4B FE 6F 05 */ bl func_80033B7C /* 8004CC7C 000488DC 2C 03 00 00 */ cmpwi r3, 0 /* 8004CC80 000488E0 41 82 02 D4 */ beq lbl_8004CF54 /* 8004CC84 000488E4 4B FE 8C ED */ bl func_80035970 /* 8004CC88 000488E8 C3 E2 83 F8 */ lfs f31, lbl_806409F8-_SDA2_BASE_(r2) /* 8004CC8C 000488EC 7C 7E 1B 78 */ mr r30, r3 /* 8004CC90 000488F0 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004CC94 000488F4 D3 FF 00 44 */ stfs f31, 0x44(r31) /* 8004CC98 000488F8 80 03 00 00 */ lwz r0, 0(r3) /* 8004CC9C 000488FC 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 8004CCA0 00048900 41 82 00 50 */ beq lbl_8004CCF0 /* 8004CCA4 00048904 48 1D 6B 8D */ bl func_80223830 /* 8004CCA8 00048908 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 8004CCAC 0004890C 80 A3 00 00 */ lwz r5, 0(r3) /* 8004CCB0 00048910 38 84 43 FD */ addi r4, r4, 0x000343FD@l /* 8004CCB4 00048914 3C 00 43 30 */ lis r0, 0x4330 /* 8004CCB8 00048918 7C 85 21 D6 */ mullw r4, r5, r4 /* 8004CCBC 0004891C 90 01 00 30 */ stw r0, 0x30(r1) /* 8004CCC0 00048920 C8 62 83 F0 */ lfd f3, lbl_806409F0-_SDA2_BASE_(r2) /* 8004CCC4 00048924 C0 22 84 0C */ lfs f1, lbl_80640A0C-_SDA2_BASE_(r2) /* 8004CCC8 00048928 C0 02 84 10 */ lfs f0, lbl_80640A10-_SDA2_BASE_(r2) /* 8004CCCC 0004892C 3C 84 00 27 */ addis r4, r4, 0x27 /* 8004CCD0 00048930 38 84 9E C3 */ addi r4, r4, -24893 /* 8004CCD4 00048934 54 80 84 3E */ srwi r0, r4, 0x10 /* 8004CCD8 00048938 90 83 00 00 */ stw r4, 0(r3) /* 8004CCDC 0004893C 90 01 00 34 */ stw r0, 0x34(r1) /* 8004CCE0 00048940 C8 41 00 30 */ lfd f2, 0x30(r1) /* 8004CCE4 00048944 EC 42 18 28 */ fsubs f2, f2, f3 /* 8004CCE8 00048948 EC 22 08 24 */ fdivs f1, f2, f1 /* 8004CCEC 0004894C EF E0 00 72 */ fmuls f31, f0, f1 lbl_8004CCF0: /* 8004CCF0 00048950 C0 1E 01 C4 */ lfs f0, 0x1c4(r30) /* 8004CCF4 00048954 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8004CCF8 00048958 C0 1E 01 C8 */ lfs f0, 0x1c8(r30) /* 8004CCFC 0004895C D0 01 00 28 */ stfs f0, 0x28(r1) /* 8004CD00 00048960 C0 1E 01 CC */ lfs f0, 0x1cc(r30) /* 8004CD04 00048964 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 8004CD08 00048968 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8004CD0C 0004896C 80 03 00 00 */ lwz r0, 0(r3) /* 8004CD10 00048970 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8004CD14 00048974 41 82 01 20 */ beq lbl_8004CE34 /* 8004CD18 00048978 7F E3 FB 78 */ mr r3, r31 /* 8004CD1C 0004897C 4B FF E4 99 */ bl func_8004B1B4 /* 8004CD20 00048980 83 A3 0C 04 */ lwz r29, 0xc04(r3) /* 8004CD24 00048984 38 61 00 24 */ addi r3, r1, 0x24 /* 8004CD28 00048988 38 9E 01 AC */ addi r4, r30, 0x1ac /* 8004CD2C 0004898C 38 A1 00 18 */ addi r5, r1, 0x18 /* 8004CD30 00048990 48 22 FF B9 */ bl func_8027CCE8 /* 8004CD34 00048994 38 61 00 18 */ addi r3, r1, 0x18 /* 8004CD38 00048998 7C 64 1B 78 */ mr r4, r3 /* 8004CD3C 0004899C 48 22 FF ED */ bl func_8027CD28 /* 8004CD40 000489A0 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004CD44 000489A4 7F A3 EB 78 */ mr r3, r29 /* 8004CD48 000489A8 38 A1 00 24 */ addi r5, r1, 0x24 /* 8004CD4C 000489AC 38 C1 00 18 */ addi r6, r1, 0x18 /* 8004CD50 000489B0 80 84 00 2C */ lwz r4, 0x2c(r4) /* 8004CD54 000489B4 38 E0 00 00 */ li r7, 0 /* 8004CD58 000489B8 48 1A BB 95 */ bl func_801F88EC /* 8004CD5C 000489BC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8004CD60 000489C0 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004CD64 000489C4 B0 1F 00 1C */ sth r0, 0x1c(r31) /* 8004CD68 000489C8 C0 02 84 14 */ lfs f0, lbl_80640A14-_SDA2_BASE_(r2) /* 8004CD6C 000489CC C0 24 00 18 */ lfs f1, 0x18(r4) /* 8004CD70 000489D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004CD74 000489D4 40 80 00 10 */ bge lbl_8004CD84 /* 8004CD78 000489D8 C0 02 84 18 */ lfs f0, lbl_80640A18-_SDA2_BASE_(r2) /* 8004CD7C 000489DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004CD80 000489E0 41 81 00 44 */ bgt lbl_8004CDC4 lbl_8004CD84: /* 8004CD84 000489E4 C0 24 00 1C */ lfs f1, 0x1c(r4) /* 8004CD88 000489E8 C0 02 84 14 */ lfs f0, lbl_80640A14-_SDA2_BASE_(r2) /* 8004CD8C 000489EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004CD90 000489F0 40 80 00 10 */ bge lbl_8004CDA0 /* 8004CD94 000489F4 C0 02 84 18 */ lfs f0, lbl_80640A18-_SDA2_BASE_(r2) /* 8004CD98 000489F8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004CD9C 000489FC 41 81 00 28 */ bgt lbl_8004CDC4 lbl_8004CDA0: /* 8004CDA0 00048A00 C0 24 00 1C */ lfs f1, 0x1c(r4) /* 8004CDA4 00048A04 7F A3 EB 78 */ mr r3, r29 /* 8004CDA8 00048A08 C0 04 00 18 */ lfs f0, 0x18(r4) /* 8004CDAC 00048A0C 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004CDB0 00048A10 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004CDB4 00048A14 D0 21 00 14 */ stfs f1, 0x14(r1) /* 8004CDB8 00048A18 A0 1F 00 1C */ lhz r0, 0x1c(r31) /* 8004CDBC 00048A1C 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 8004CDC0 00048A20 48 1A BD B1 */ bl func_801F8B70 lbl_8004CDC4: /* 8004CDC4 00048A24 C0 02 83 F8 */ lfs f0, lbl_806409F8-_SDA2_BASE_(r2) /* 8004CDC8 00048A28 38 00 00 FF */ li r0, 0xff /* 8004CDCC 00048A2C 98 1F 00 34 */ stb r0, 0x34(r31) /* 8004CDD0 00048A30 7F E3 FB 78 */ mr r3, r31 /* 8004CDD4 00048A34 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 8004CDD8 00048A38 D0 1F 00 24 */ stfs f0, 0x24(r31) /* 8004CDDC 00048A3C 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004CDE0 00048A40 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CDE4 00048A44 7D 89 03 A6 */ mtctr r12 /* 8004CDE8 00048A48 4E 80 04 21 */ bctrl /* 8004CDEC 00048A4C C0 02 84 1C */ lfs f0, lbl_80640A1C-_SDA2_BASE_(r2) /* 8004CDF0 00048A50 7F E3 FB 78 */ mr r3, r31 /* 8004CDF4 00048A54 EC 00 00 72 */ fmuls f0, f0, f1 /* 8004CDF8 00048A58 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 8004CDFC 00048A5C 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004CE00 00048A60 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CE04 00048A64 7D 89 03 A6 */ mtctr r12 /* 8004CE08 00048A68 4E 80 04 21 */ bctrl /* 8004CE0C 00048A6C D0 3F 00 40 */ stfs f1, 0x40(r31) /* 8004CE10 00048A70 7F E3 FB 78 */ mr r3, r31 /* 8004CE14 00048A74 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004CE18 00048A78 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CE1C 00048A7C 7D 89 03 A6 */ mtctr r12 /* 8004CE20 00048A80 4E 80 04 21 */ bctrl /* 8004CE24 00048A84 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 8004CE28 00048A88 EC 01 00 28 */ fsubs f0, f1, f0 /* 8004CE2C 00048A8C D0 1F 00 3C */ stfs f0, 0x3c(r31) /* 8004CE30 00048A90 48 00 01 24 */ b lbl_8004CF54 lbl_8004CE34: /* 8004CE34 00048A94 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004CE38 00048A98 2C 03 00 00 */ cmpwi r3, 0 /* 8004CE3C 00048A9C 41 82 00 1C */ beq lbl_8004CE58 /* 8004CE40 00048AA0 41 82 00 18 */ beq lbl_8004CE58 /* 8004CE44 00048AA4 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004CE48 00048AA8 38 80 00 01 */ li r4, 1 /* 8004CE4C 00048AAC 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CE50 00048AB0 7D 89 03 A6 */ mtctr r12 /* 8004CE54 00048AB4 4E 80 04 21 */ bctrl lbl_8004CE58: /* 8004CE58 00048AB8 C0 21 00 28 */ lfs f1, 0x28(r1) /* 8004CE5C 00048ABC C0 02 84 20 */ lfs f0, lbl_80640A20-_SDA2_BASE_(r2) /* 8004CE60 00048AC0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004CE64 00048AC4 40 80 00 0C */ bge lbl_8004CE70 /* 8004CE68 00048AC8 C0 02 84 24 */ lfs f0, lbl_80640A24-_SDA2_BASE_(r2) /* 8004CE6C 00048ACC D0 01 00 28 */ stfs f0, 0x28(r1) lbl_8004CE70: /* 8004CE70 00048AD0 48 18 DC B9 */ bl func_801DAB28 /* 8004CE74 00048AD4 2C 03 00 00 */ cmpwi r3, 0 /* 8004CE78 00048AD8 41 82 00 14 */ beq lbl_8004CE8C /* 8004CE7C 00048ADC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004CE80 00048AE0 38 80 00 78 */ li r4, 0x78 /* 8004CE84 00048AE4 48 18 DE 11 */ bl func_801DAC94 /* 8004CE88 00048AE8 48 00 00 08 */ b lbl_8004CE90 lbl_8004CE8C: /* 8004CE8C 00048AEC 38 60 00 00 */ li r3, 0 lbl_8004CE90: /* 8004CE90 00048AF0 2C 03 00 00 */ cmpwi r3, 0 /* 8004CE94 00048AF4 41 82 00 10 */ beq lbl_8004CEA4 /* 8004CE98 00048AF8 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004CE9C 00048AFC 80 84 00 2C */ lwz r4, 0x2c(r4) /* 8004CEA0 00048B00 48 1D 2C A5 */ bl func_8021FB44 lbl_8004CEA4: /* 8004CEA4 00048B04 90 7F 00 18 */ stw r3, 0x18(r31) /* 8004CEA8 00048B08 3C 80 80 49 */ lis r4, lbl_80493614@ha /* 8004CEAC 00048B0C 38 84 36 14 */ addi r4, r4, lbl_80493614@l /* 8004CEB0 00048B10 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8004CEB4 00048B14 D0 03 00 14 */ stfs f0, 0x14(r3) /* 8004CEB8 00048B18 C0 01 00 28 */ lfs f0, 0x28(r1) /* 8004CEBC 00048B1C D0 03 00 18 */ stfs f0, 0x18(r3) /* 8004CEC0 00048B20 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 8004CEC4 00048B24 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 8004CEC8 00048B28 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004CECC 00048B2C 48 1D 36 39 */ bl func_80220504 /* 8004CED0 00048B30 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004CED4 00048B34 7F E3 FB 78 */ mr r3, r31 /* 8004CED8 00048B38 D3 E4 00 44 */ stfs f31, 0x44(r4) /* 8004CEDC 00048B3C 80 BF 00 14 */ lwz r5, 0x14(r31) /* 8004CEE0 00048B40 80 9F 00 18 */ lwz r4, 0x18(r31) /* 8004CEE4 00048B44 C0 25 00 1C */ lfs f1, 0x1c(r5) /* 8004CEE8 00048B48 C0 05 00 18 */ lfs f0, 0x18(r5) /* 8004CEEC 00048B4C D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004CEF0 00048B50 D0 04 00 48 */ stfs f0, 0x48(r4) /* 8004CEF4 00048B54 D0 24 00 4C */ stfs f1, 0x4c(r4) /* 8004CEF8 00048B58 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004CEFC 00048B5C D0 01 00 08 */ stfs f0, 8(r1) /* 8004CF00 00048B60 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004CF04 00048B64 7D 89 03 A6 */ mtctr r12 /* 8004CF08 00048B68 4E 80 04 21 */ bctrl /* 8004CF0C 00048B6C 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8004CF10 00048B70 D0 23 00 74 */ stfs f1, 0x74(r3) /* 8004CF14 00048B74 83 DF 00 18 */ lwz r30, 0x18(r31) /* 8004CF18 00048B78 81 9E 00 0C */ lwz r12, 0xc(r30) /* 8004CF1C 00048B7C 7F C3 F3 78 */ mr r3, r30 /* 8004CF20 00048B80 81 8C 00 08 */ lwz r12, 8(r12) /* 8004CF24 00048B84 7D 89 03 A6 */ mtctr r12 /* 8004CF28 00048B88 4E 80 04 21 */ bctrl /* 8004CF2C 00048B8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004CF30 00048B90 98 7E 00 08 */ stb r3, 8(r30) /* 8004CF34 00048B94 41 82 00 20 */ beq lbl_8004CF54 /* 8004CF38 00048B98 83 DE 00 04 */ lwz r30, 4(r30) /* 8004CF3C 00048B9C 57 C3 86 3E */ rlwinm r3, r30, 0x10, 0x18, 0x1f /* 8004CF40 00048BA0 48 1E E1 19 */ bl func_8023B058 /* 8004CF44 00048BA4 2C 03 00 00 */ cmpwi r3, 0 /* 8004CF48 00048BA8 41 82 00 0C */ beq lbl_8004CF54 /* 8004CF4C 00048BAC 7F C4 F3 78 */ mr r4, r30 /* 8004CF50 00048BB0 48 1E E4 69 */ bl func_8023B3B8 lbl_8004CF54: /* 8004CF54 00048BB4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 8004CF58 00048BB8 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004CF5C 00048BBC CB E1 00 50 */ lfd f31, 0x50(r1) /* 8004CF60 00048BC0 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8004CF64 00048BC4 83 C1 00 48 */ lwz r30, 0x48(r1) /* 8004CF68 00048BC8 83 A1 00 44 */ lwz r29, 0x44(r1) /* 8004CF6C 00048BCC 7C 08 03 A6 */ mtlr r0 /* 8004CF70 00048BD0 38 21 00 60 */ addi r1, r1, 0x60 /* 8004CF74 00048BD4 4E 80 00 20 */ blr /* 8004CF78 00048BD8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004CF7C 00048BDC 7C 08 02 A6 */ mflr r0 /* 8004CF80 00048BE0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004CF84 00048BE4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004CF88 00048BE8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004CF8C 00048BEC 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004CF90 00048BF0 7C 7D 1B 78 */ mr r29, r3 /* 8004CF94 00048BF4 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004CF98 00048BF8 80 04 00 2C */ lwz r0, 0x2c(r4) /* 8004CF9C 00048BFC 2C 00 00 00 */ cmpwi r0, 0 /* 8004CFA0 00048C00 41 82 00 A8 */ beq lbl_8004D048 /* 8004CFA4 00048C04 80 04 00 00 */ lwz r0, 0(r4) /* 8004CFA8 00048C08 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 8004CFAC 00048C0C 41 82 00 28 */ beq lbl_8004CFD4 /* 8004CFB0 00048C10 A0 03 00 1C */ lhz r0, 0x1c(r3) /* 8004CFB4 00048C14 28 00 FF FF */ cmplwi r0, 0xffff /* 8004CFB8 00048C18 41 82 00 90 */ beq lbl_8004D048 /* 8004CFBC 00048C1C 4B FF E1 F9 */ bl func_8004B1B4 /* 8004CFC0 00048C20 A0 1D 00 1C */ lhz r0, 0x1c(r29) /* 8004CFC4 00048C24 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004CFC8 00048C28 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 8004CFCC 00048C2C 48 1A BB F9 */ bl func_801F8BC4 /* 8004CFD0 00048C30 48 00 00 78 */ b lbl_8004D048 lbl_8004CFD4: /* 8004CFD4 00048C34 83 E3 00 18 */ lwz r31, 0x18(r3) /* 8004CFD8 00048C38 88 1F 00 08 */ lbz r0, 8(r31) /* 8004CFDC 00048C3C 2C 00 00 00 */ cmpwi r0, 0 /* 8004CFE0 00048C40 41 82 00 3C */ beq lbl_8004D01C /* 8004CFE4 00048C44 83 DF 00 04 */ lwz r30, 4(r31) /* 8004CFE8 00048C48 57 C3 86 3E */ rlwinm r3, r30, 0x10, 0x18, 0x1f /* 8004CFEC 00048C4C 48 1E E0 6D */ bl func_8023B058 /* 8004CFF0 00048C50 2C 03 00 00 */ cmpwi r3, 0 /* 8004CFF4 00048C54 41 82 00 0C */ beq lbl_8004D000 /* 8004CFF8 00048C58 7F C4 F3 78 */ mr r4, r30 /* 8004CFFC 00048C5C 48 1E E4 25 */ bl func_8023B420 lbl_8004D000: /* 8004D000 00048C60 81 9F 00 0C */ lwz r12, 0xc(r31) /* 8004D004 00048C64 7F E3 FB 78 */ mr r3, r31 /* 8004D008 00048C68 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8004D00C 00048C6C 7D 89 03 A6 */ mtctr r12 /* 8004D010 00048C70 4E 80 04 21 */ bctrl /* 8004D014 00048C74 38 00 00 00 */ li r0, 0 /* 8004D018 00048C78 98 1F 00 08 */ stb r0, 8(r31) lbl_8004D01C: /* 8004D01C 00048C7C 80 7D 00 18 */ lwz r3, 0x18(r29) /* 8004D020 00048C80 2C 03 00 00 */ cmpwi r3, 0 /* 8004D024 00048C84 41 82 00 24 */ beq lbl_8004D048 /* 8004D028 00048C88 41 82 00 18 */ beq lbl_8004D040 /* 8004D02C 00048C8C 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004D030 00048C90 38 80 00 01 */ li r4, 1 /* 8004D034 00048C94 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D038 00048C98 7D 89 03 A6 */ mtctr r12 /* 8004D03C 00048C9C 4E 80 04 21 */ bctrl lbl_8004D040: /* 8004D040 00048CA0 38 00 00 00 */ li r0, 0 /* 8004D044 00048CA4 90 1D 00 18 */ stw r0, 0x18(r29) lbl_8004D048: /* 8004D048 00048CA8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004D04C 00048CAC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004D050 00048CB0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004D054 00048CB4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004D058 00048CB8 7C 08 03 A6 */ mtlr r0 /* 8004D05C 00048CBC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004D060 00048CC0 4E 80 00 20 */ blr /* 8004D064 00048CC4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004D068 00048CC8 7C 08 02 A6 */ mflr r0 /* 8004D06C 00048CCC 90 01 00 44 */ stw r0, 0x44(r1) /* 8004D070 00048CD0 DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004D074 00048CD4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004D078 00048CD8 DB C1 00 20 */ stfd f30, 0x20(r1) /* 8004D07C 00048CDC F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 8004D080 00048CE0 FF C0 08 90 */ fmr f30, f1 /* 8004D084 00048CE4 C3 E2 84 28 */ lfs f31, lbl_80640A28-_SDA2_BASE_(r2) /* 8004D088 00048CE8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004D08C 00048CEC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004D090 00048CF0 7C 7E 1B 78 */ mr r30, r3 /* 8004D094 00048CF4 C0 03 00 44 */ lfs f0, 0x44(r3) /* 8004D098 00048CF8 EC 00 08 2A */ fadds f0, f0, f1 /* 8004D09C 00048CFC D0 03 00 44 */ stfs f0, 0x44(r3) /* 8004D0A0 00048D00 4B FF E1 15 */ bl func_8004B1B4 /* 8004D0A4 00048D04 83 E3 0C 04 */ lwz r31, 0xc04(r3) /* 8004D0A8 00048D08 2C 1F 00 00 */ cmpwi r31, 0 /* 8004D0AC 00048D0C 41 82 01 28 */ beq lbl_8004D1D4 /* 8004D0B0 00048D10 A0 9E 00 1C */ lhz r4, 0x1c(r30) /* 8004D0B4 00048D14 28 04 FF FF */ cmplwi r4, 0xffff /* 8004D0B8 00048D18 41 82 01 1C */ beq lbl_8004D1D4 /* 8004D0BC 00048D1C 80 7E 00 14 */ lwz r3, 0x14(r30) /* 8004D0C0 00048D20 80 63 00 00 */ lwz r3, 0(r3) /* 8004D0C4 00048D24 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 8004D0C8 00048D28 41 82 01 0C */ beq lbl_8004D1D4 /* 8004D0CC 00048D2C 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e /* 8004D0D0 00048D30 41 82 00 34 */ beq lbl_8004D104 /* 8004D0D4 00048D34 C0 62 84 2C */ lfs f3, lbl_80640A2C-_SDA2_BASE_(r2) /* 8004D0D8 00048D38 EC 3F 07 B2 */ fmuls f1, f31, f30 /* 8004D0DC 00048D3C C0 4D 86 C8 */ lfs f2, lbl_8063D988-_SDA_BASE_(r13) /* 8004D0E0 00048D40 7F E3 FB 78 */ mr r3, r31 /* 8004D0E4 00048D44 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 8004D0E8 00048D48 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 8004D0EC 00048D4C EC 43 00 B2 */ fmuls f2, f3, f2 /* 8004D0F0 00048D50 38 BE 00 20 */ addi r5, r30, 0x20 /* 8004D0F4 00048D54 EC 21 00 B2 */ fmuls f1, f1, f2 /* 8004D0F8 00048D58 EC 00 08 2A */ fadds f0, f0, f1 /* 8004D0FC 00048D5C D0 1E 00 24 */ stfs f0, 0x24(r30) /* 8004D100 00048D60 48 1A BA 41 */ bl func_801F8B40 lbl_8004D104: /* 8004D104 00048D64 C0 3E 00 38 */ lfs f1, 0x38(r30) /* 8004D108 00048D68 C0 1E 00 44 */ lfs f0, 0x44(r30) /* 8004D10C 00048D6C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D110 00048D70 40 80 00 C4 */ bge lbl_8004D1D4 /* 8004D114 00048D74 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8004D118 00048D78 7F C3 F3 78 */ mr r3, r30 /* 8004D11C 00048D7C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D120 00048D80 7D 89 03 A6 */ mtctr r12 /* 8004D124 00048D84 4E 80 04 21 */ bctrl /* 8004D128 00048D88 D0 3E 00 40 */ stfs f1, 0x40(r30) /* 8004D12C 00048D8C 7F C3 F3 78 */ mr r3, r30 /* 8004D130 00048D90 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8004D134 00048D94 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D138 00048D98 7D 89 03 A6 */ mtctr r12 /* 8004D13C 00048D9C 4E 80 04 21 */ bctrl /* 8004D140 00048DA0 C0 7E 00 38 */ lfs f3, 0x38(r30) /* 8004D144 00048DA4 C0 42 83 F8 */ lfs f2, lbl_806409F8-_SDA2_BASE_(r2) /* 8004D148 00048DA8 EC 21 18 28 */ fsubs f1, f1, f3 /* 8004D14C 00048DAC FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8004D150 00048DB0 D0 3E 00 3C */ stfs f1, 0x3c(r30) /* 8004D154 00048DB4 40 81 00 80 */ ble lbl_8004D1D4 /* 8004D158 00048DB8 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8004D15C 00048DBC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8004D160 00048DC0 40 81 00 74 */ ble lbl_8004D1D4 /* 8004D164 00048DC4 C0 1E 00 44 */ lfs f0, 0x44(r30) /* 8004D168 00048DC8 EC 00 18 28 */ fsubs f0, f0, f3 /* 8004D16C 00048DCC EC 20 08 24 */ fdivs f1, f0, f1 /* 8004D170 00048DD0 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8004D174 00048DD4 40 80 00 08 */ bge lbl_8004D17C /* 8004D178 00048DD8 FC 20 10 90 */ fmr f1, f2 lbl_8004D17C: /* 8004D17C 00048DDC C0 02 84 00 */ lfs f0, lbl_80640A00-_SDA2_BASE_(r2) /* 8004D180 00048DE0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D184 00048DE4 40 81 00 08 */ ble lbl_8004D18C /* 8004D188 00048DE8 FC 20 00 90 */ fmr f1, f0 lbl_8004D18C: /* 8004D18C 00048DEC 88 9E 00 34 */ lbz r4, 0x34(r30) /* 8004D190 00048DF0 3C 00 43 30 */ lis r0, 0x4330 /* 8004D194 00048DF4 C0 02 84 00 */ lfs f0, lbl_80640A00-_SDA2_BASE_(r2) /* 8004D198 00048DF8 7F E3 FB 78 */ mr r3, r31 /* 8004D19C 00048DFC 90 81 00 0C */ stw r4, 0xc(r1) /* 8004D1A0 00048E00 A0 9E 00 1C */ lhz r4, 0x1c(r30) /* 8004D1A4 00048E04 EC 00 08 28 */ fsubs f0, f0, f1 /* 8004D1A8 00048E08 90 01 00 08 */ stw r0, 8(r1) /* 8004D1AC 00048E0C C8 42 83 F0 */ lfd f2, lbl_806409F0-_SDA2_BASE_(r2) /* 8004D1B0 00048E10 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 8004D1B4 00048E14 C8 21 00 08 */ lfd f1, 8(r1) /* 8004D1B8 00048E18 EC 21 10 28 */ fsubs f1, f1, f2 /* 8004D1BC 00048E1C EC 01 00 32 */ fmuls f0, f1, f0 /* 8004D1C0 00048E20 FC 00 00 1E */ fctiwz f0, f0 /* 8004D1C4 00048E24 D8 01 00 10 */ stfd f0, 0x10(r1) /* 8004D1C8 00048E28 80 A1 00 14 */ lwz r5, 0x14(r1) /* 8004D1CC 00048E2C 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 8004D1D0 00048E30 48 1A B9 D1 */ bl func_801F8BA0 lbl_8004D1D4: /* 8004D1D4 00048E34 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004D1D8 00048E38 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004D1DC 00048E3C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 8004D1E0 00048E40 CB C1 00 20 */ lfd f30, 0x20(r1) /* 8004D1E4 00048E44 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004D1E8 00048E48 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004D1EC 00048E4C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004D1F0 00048E50 7C 08 03 A6 */ mtlr r0 /* 8004D1F4 00048E54 38 21 00 40 */ addi r1, r1, 0x40 /* 8004D1F8 00048E58 4E 80 00 20 */ blr .global func_8004D1FC func_8004D1FC: /* 8004D1FC 00048E5C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D200 00048E60 7C 08 02 A6 */ mflr r0 /* 8004D204 00048E64 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D208 00048E68 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D20C 00048E6C 7C 7F 1B 78 */ mr r31, r3 /* 8004D210 00048E70 4B FF DF 41 */ bl func_8004B150 /* 8004D214 00048E74 80 BF 00 0C */ lwz r5, 0xc(r31) /* 8004D218 00048E78 3C C0 80 41 */ lis r6, lbl_8040A764@ha /* 8004D21C 00048E7C 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 8004D220 00048E80 38 80 00 00 */ li r4, 0 /* 8004D224 00048E84 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 8004D228 00048E88 38 C6 A7 64 */ addi r6, r6, lbl_8040A764@l /* 8004D22C 00048E8C 38 A5 00 08 */ addi r5, r5, 8 /* 8004D230 00048E90 90 DF 00 10 */ stw r6, 0x10(r31) /* 8004D234 00048E94 7F E3 FB 78 */ mr r3, r31 /* 8004D238 00048E98 90 BF 00 14 */ stw r5, 0x14(r31) /* 8004D23C 00048E9C 90 9F 00 18 */ stw r4, 0x18(r31) /* 8004D240 00048EA0 B0 1F 00 1C */ sth r0, 0x1c(r31) /* 8004D244 00048EA4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D248 00048EA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D24C 00048EAC 7C 08 03 A6 */ mtlr r0 /* 8004D250 00048EB0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D254 00048EB4 4E 80 00 20 */ blr /* 8004D258 00048EB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D25C 00048EBC 7C 08 02 A6 */ mflr r0 /* 8004D260 00048EC0 2C 03 00 00 */ cmpwi r3, 0 /* 8004D264 00048EC4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D268 00048EC8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D26C 00048ECC 7C 9F 23 78 */ mr r31, r4 /* 8004D270 00048ED0 93 C1 00 08 */ stw r30, 8(r1) /* 8004D274 00048ED4 7C 7E 1B 78 */ mr r30, r3 /* 8004D278 00048ED8 41 82 00 60 */ beq lbl_8004D2D8 /* 8004D27C 00048EDC 80 03 00 18 */ lwz r0, 0x18(r3) /* 8004D280 00048EE0 3C 80 80 41 */ lis r4, lbl_8040A764@ha /* 8004D284 00048EE4 38 84 A7 64 */ addi r4, r4, lbl_8040A764@l /* 8004D288 00048EE8 2C 00 00 00 */ cmpwi r0, 0 /* 8004D28C 00048EEC 90 83 00 10 */ stw r4, 0x10(r3) /* 8004D290 00048EF0 41 82 00 20 */ beq lbl_8004D2B0 /* 8004D294 00048EF4 41 82 00 1C */ beq lbl_8004D2B0 /* 8004D298 00048EF8 7C 03 03 78 */ mr r3, r0 /* 8004D29C 00048EFC 38 80 00 01 */ li r4, 1 /* 8004D2A0 00048F00 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004D2A4 00048F04 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D2A8 00048F08 7D 89 03 A6 */ mtctr r12 /* 8004D2AC 00048F0C 4E 80 04 21 */ bctrl lbl_8004D2B0: /* 8004D2B0 00048F10 3C 80 00 01 */ lis r4, 0x0000FFFF@ha /* 8004D2B4 00048F14 7F C3 F3 78 */ mr r3, r30 /* 8004D2B8 00048F18 38 04 FF FF */ addi r0, r4, 0x0000FFFF@l /* 8004D2BC 00048F1C B0 1E 00 1C */ sth r0, 0x1c(r30) /* 8004D2C0 00048F20 38 80 00 00 */ li r4, 0 /* 8004D2C4 00048F24 4B FF DE B1 */ bl func_8004B174 /* 8004D2C8 00048F28 2C 1F 00 00 */ cmpwi r31, 0 /* 8004D2CC 00048F2C 40 81 00 0C */ ble lbl_8004D2D8 /* 8004D2D0 00048F30 7F C3 F3 78 */ mr r3, r30 /* 8004D2D4 00048F34 48 18 D7 E5 */ bl func_801DAAB8 lbl_8004D2D8: /* 8004D2D8 00048F38 7F C3 F3 78 */ mr r3, r30 /* 8004D2DC 00048F3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D2E0 00048F40 83 C1 00 08 */ lwz r30, 8(r1) /* 8004D2E4 00048F44 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D2E8 00048F48 7C 08 03 A6 */ mtlr r0 /* 8004D2EC 00048F4C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D2F0 00048F50 4E 80 00 20 */ blr /* 8004D2F4 00048F54 94 21 FF A0 */ stwu r1, -0x60(r1) /* 8004D2F8 00048F58 7C 08 02 A6 */ mflr r0 /* 8004D2FC 00048F5C 90 01 00 64 */ stw r0, 0x64(r1) /* 8004D300 00048F60 93 E1 00 5C */ stw r31, 0x5c(r1) /* 8004D304 00048F64 7C 7F 1B 78 */ mr r31, r3 /* 8004D308 00048F68 93 C1 00 58 */ stw r30, 0x58(r1) /* 8004D30C 00048F6C 93 A1 00 54 */ stw r29, 0x54(r1) /* 8004D310 00048F70 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004D314 00048F74 80 04 00 24 */ lwz r0, 0x24(r4) /* 8004D318 00048F78 2C 00 00 00 */ cmpwi r0, 0 /* 8004D31C 00048F7C 41 82 01 C8 */ beq lbl_8004D4E4 /* 8004D320 00048F80 80 63 00 04 */ lwz r3, 4(r3) /* 8004D324 00048F84 80 63 00 18 */ lwz r3, 0x18(r3) /* 8004D328 00048F88 2C 03 00 00 */ cmpwi r3, 0 /* 8004D32C 00048F8C 41 82 01 B8 */ beq lbl_8004D4E4 /* 8004D330 00048F90 4B FF AE 71 */ bl func_800481A0 /* 8004D334 00048F94 C0 02 83 F8 */ lfs f0, lbl_806409F8-_SDA2_BASE_(r2) /* 8004D338 00048F98 7C 7E 1B 78 */ mr r30, r3 /* 8004D33C 00048F9C D0 1F 00 44 */ stfs f0, 0x44(r31) /* 8004D340 00048FA0 C0 03 01 C4 */ lfs f0, 0x1c4(r3) /* 8004D344 00048FA4 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8004D348 00048FA8 C0 03 01 C8 */ lfs f0, 0x1c8(r3) /* 8004D34C 00048FAC D0 01 00 28 */ stfs f0, 0x28(r1) /* 8004D350 00048FB0 C0 03 01 CC */ lfs f0, 0x1cc(r3) /* 8004D354 00048FB4 7F E3 FB 78 */ mr r3, r31 /* 8004D358 00048FB8 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 8004D35C 00048FBC 4B FF DE 59 */ bl func_8004B1B4 /* 8004D360 00048FC0 2C 03 00 00 */ cmpwi r3, 0 /* 8004D364 00048FC4 7C 7D 1B 78 */ mr r29, r3 /* 8004D368 00048FC8 41 82 01 7C */ beq lbl_8004D4E4 /* 8004D36C 00048FCC 3D 20 80 40 */ lis r9, lbl_80400004@ha /* 8004D370 00048FD0 85 09 B7 60 */ lwzu r8, -0x48a0(r9) /* 8004D374 00048FD4 80 E9 00 04 */ lwz r7, lbl_80400004@l(r9) /* 8004D378 00048FD8 80 C9 00 08 */ lwz r6, 8(r9) /* 8004D37C 00048FDC 80 A9 00 0C */ lwz r5, 0xc(r9) /* 8004D380 00048FE0 80 89 00 10 */ lwz r4, 0x10(r9) /* 8004D384 00048FE4 80 09 00 14 */ lwz r0, 0x14(r9) /* 8004D388 00048FE8 91 01 00 30 */ stw r8, 0x30(r1) /* 8004D38C 00048FEC 90 E1 00 34 */ stw r7, 0x34(r1) /* 8004D390 00048FF0 90 C1 00 38 */ stw r6, 0x38(r1) /* 8004D394 00048FF4 90 A1 00 3C */ stw r5, 0x3c(r1) /* 8004D398 00048FF8 90 81 00 40 */ stw r4, 0x40(r1) /* 8004D39C 00048FFC 90 01 00 44 */ stw r0, 0x44(r1) /* 8004D3A0 00049000 4B FE C3 35 */ bl func_800396D4 /* 8004D3A4 00049004 2C 03 00 01 */ cmpwi r3, 1 /* 8004D3A8 00049008 40 80 00 10 */ bge lbl_8004D3B8 /* 8004D3AC 0004900C 2C 03 00 06 */ cmpwi r3, 6 /* 8004D3B0 00049010 40 81 00 08 */ ble lbl_8004D3B8 /* 8004D3B4 00049014 38 60 00 03 */ li r3, 3 lbl_8004D3B8: /* 8004D3B8 00049018 38 03 FF FF */ addi r0, r3, -1 /* 8004D3BC 0004901C 38 81 00 30 */ addi r4, r1, 0x30 /* 8004D3C0 00049020 54 00 10 3A */ slwi r0, r0, 2 /* 8004D3C4 00049024 38 61 00 24 */ addi r3, r1, 0x24 /* 8004D3C8 00049028 7C 04 04 2E */ lfsx f0, r4, r0 /* 8004D3CC 0004902C 38 9E 01 AC */ addi r4, r30, 0x1ac /* 8004D3D0 00049030 38 A1 00 18 */ addi r5, r1, 0x18 /* 8004D3D4 00049034 D0 1F 00 48 */ stfs f0, 0x48(r31) /* 8004D3D8 00049038 83 DD 0C 04 */ lwz r30, 0xc04(r29) /* 8004D3DC 0004903C 48 22 F9 0D */ bl func_8027CCE8 /* 8004D3E0 00049040 38 61 00 18 */ addi r3, r1, 0x18 /* 8004D3E4 00049044 7C 64 1B 78 */ mr r4, r3 /* 8004D3E8 00049048 48 22 F9 41 */ bl func_8027CD28 /* 8004D3EC 0004904C 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004D3F0 00049050 7F C3 F3 78 */ mr r3, r30 /* 8004D3F4 00049054 38 A1 00 24 */ addi r5, r1, 0x24 /* 8004D3F8 00049058 38 C1 00 18 */ addi r6, r1, 0x18 /* 8004D3FC 0004905C 80 84 00 24 */ lwz r4, 0x24(r4) /* 8004D400 00049060 38 E0 00 00 */ li r7, 0 /* 8004D404 00049064 48 1A B4 E9 */ bl func_801F88EC /* 8004D408 00049068 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8004D40C 0004906C 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004D410 00049070 B0 1F 00 1C */ sth r0, 0x1c(r31) /* 8004D414 00049074 C0 02 84 14 */ lfs f0, lbl_80640A14-_SDA2_BASE_(r2) /* 8004D418 00049078 C0 24 00 08 */ lfs f1, 8(r4) /* 8004D41C 0004907C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D420 00049080 40 80 00 10 */ bge lbl_8004D430 /* 8004D424 00049084 C0 02 84 18 */ lfs f0, lbl_80640A18-_SDA2_BASE_(r2) /* 8004D428 00049088 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D42C 0004908C 41 81 00 60 */ bgt lbl_8004D48C lbl_8004D430: /* 8004D430 00049090 C0 24 00 0C */ lfs f1, 0xc(r4) /* 8004D434 00049094 C0 02 84 14 */ lfs f0, lbl_80640A14-_SDA2_BASE_(r2) /* 8004D438 00049098 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D43C 0004909C 40 80 00 10 */ bge lbl_8004D44C /* 8004D440 000490A0 C0 02 84 18 */ lfs f0, lbl_80640A18-_SDA2_BASE_(r2) /* 8004D444 000490A4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D448 000490A8 41 81 00 44 */ bgt lbl_8004D48C lbl_8004D44C: /* 8004D44C 000490AC C0 5F 00 48 */ lfs f2, 0x48(r31) /* 8004D450 000490B0 7F C3 F3 78 */ mr r3, r30 /* 8004D454 000490B4 C0 24 00 0C */ lfs f1, 0xc(r4) /* 8004D458 000490B8 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004D45C 000490BC C0 04 00 08 */ lfs f0, 8(r4) /* 8004D460 000490C0 EC 21 00 B2 */ fmuls f1, f1, f2 /* 8004D464 000490C4 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8004D468 000490C8 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8004D46C 000490CC D0 01 00 08 */ stfs f0, 8(r1) /* 8004D470 000490D0 80 01 00 0C */ lwz r0, 0xc(r1) /* 8004D474 000490D4 80 81 00 08 */ lwz r4, 8(r1) /* 8004D478 000490D8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D47C 000490DC 90 81 00 10 */ stw r4, 0x10(r1) /* 8004D480 000490E0 A0 1F 00 1C */ lhz r0, 0x1c(r31) /* 8004D484 000490E4 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 8004D488 000490E8 48 1A B6 E9 */ bl func_801F8B70 lbl_8004D48C: /* 8004D48C 000490EC C0 02 83 F8 */ lfs f0, lbl_806409F8-_SDA2_BASE_(r2) /* 8004D490 000490F0 38 00 00 FF */ li r0, 0xff /* 8004D494 000490F4 98 1F 00 34 */ stb r0, 0x34(r31) /* 8004D498 000490F8 7F E3 FB 78 */ mr r3, r31 /* 8004D49C 000490FC 80 9F 00 14 */ lwz r4, 0x14(r31) /* 8004D4A0 00049100 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 8004D4A4 00049104 D0 1F 00 24 */ stfs f0, 0x24(r31) /* 8004D4A8 00049108 C0 04 00 18 */ lfs f0, 0x18(r4) /* 8004D4AC 0004910C D0 1F 00 38 */ stfs f0, 0x38(r31) /* 8004D4B0 00049110 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004D4B4 00049114 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D4B8 00049118 7D 89 03 A6 */ mtctr r12 /* 8004D4BC 0004911C 4E 80 04 21 */ bctrl /* 8004D4C0 00049120 D0 3F 00 40 */ stfs f1, 0x40(r31) /* 8004D4C4 00049124 7F E3 FB 78 */ mr r3, r31 /* 8004D4C8 00049128 81 9F 00 10 */ lwz r12, 0x10(r31) /* 8004D4CC 0004912C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D4D0 00049130 7D 89 03 A6 */ mtctr r12 /* 8004D4D4 00049134 4E 80 04 21 */ bctrl /* 8004D4D8 00049138 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 8004D4DC 0004913C EC 01 00 28 */ fsubs f0, f1, f0 /* 8004D4E0 00049140 D0 1F 00 3C */ stfs f0, 0x3c(r31) lbl_8004D4E4: /* 8004D4E4 00049144 80 01 00 64 */ lwz r0, 0x64(r1) /* 8004D4E8 00049148 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8004D4EC 0004914C 83 C1 00 58 */ lwz r30, 0x58(r1) /* 8004D4F0 00049150 83 A1 00 54 */ lwz r29, 0x54(r1) /* 8004D4F4 00049154 7C 08 03 A6 */ mtlr r0 /* 8004D4F8 00049158 38 21 00 60 */ addi r1, r1, 0x60 /* 8004D4FC 0004915C 4E 80 00 20 */ blr /* 8004D500 00049160 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D504 00049164 7C 08 02 A6 */ mflr r0 /* 8004D508 00049168 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D50C 0004916C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D510 00049170 7C 7F 1B 78 */ mr r31, r3 /* 8004D514 00049174 80 83 00 14 */ lwz r4, 0x14(r3) /* 8004D518 00049178 80 04 00 24 */ lwz r0, 0x24(r4) /* 8004D51C 0004917C 2C 00 00 00 */ cmpwi r0, 0 /* 8004D520 00049180 41 82 00 30 */ beq lbl_8004D550 /* 8004D524 00049184 A0 03 00 1C */ lhz r0, 0x1c(r3) /* 8004D528 00049188 28 00 FF FF */ cmplwi r0, 0xffff /* 8004D52C 0004918C 41 82 00 24 */ beq lbl_8004D550 /* 8004D530 00049190 4B FF DC 85 */ bl func_8004B1B4 /* 8004D534 00049194 A0 1F 00 1C */ lhz r0, 0x1c(r31) /* 8004D538 00049198 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004D53C 0004919C 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 8004D540 000491A0 48 1A B6 85 */ bl func_801F8BC4 /* 8004D544 000491A4 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 8004D548 000491A8 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 8004D54C 000491AC B0 1F 00 1C */ sth r0, 0x1c(r31) lbl_8004D550: /* 8004D550 000491B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D554 000491B4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D558 000491B8 7C 08 03 A6 */ mtlr r0 /* 8004D55C 000491BC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D560 000491C0 4E 80 00 20 */ blr /* 8004D564 000491C4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004D568 000491C8 7C 08 02 A6 */ mflr r0 /* 8004D56C 000491CC 90 01 00 34 */ stw r0, 0x34(r1) /* 8004D570 000491D0 DB E1 00 20 */ stfd f31, 0x20(r1) /* 8004D574 000491D4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 8004D578 000491D8 FF E0 08 90 */ fmr f31, f1 /* 8004D57C 000491DC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004D580 000491E0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004D584 000491E4 7C 7E 1B 78 */ mr r30, r3 /* 8004D588 000491E8 C0 03 00 44 */ lfs f0, 0x44(r3) /* 8004D58C 000491EC EC 00 08 2A */ fadds f0, f0, f1 /* 8004D590 000491F0 D0 03 00 44 */ stfs f0, 0x44(r3) /* 8004D594 000491F4 4B FF DC 21 */ bl func_8004B1B4 /* 8004D598 000491F8 83 E3 0C 04 */ lwz r31, 0xc04(r3) /* 8004D59C 000491FC 2C 1F 00 00 */ cmpwi r31, 0 /* 8004D5A0 00049200 41 82 01 44 */ beq lbl_8004D6E4 /* 8004D5A4 00049204 A0 1E 00 1C */ lhz r0, 0x1c(r30) /* 8004D5A8 00049208 28 00 FF FF */ cmplwi r0, 0xffff /* 8004D5AC 0004920C 41 82 01 38 */ beq lbl_8004D6E4 /* 8004D5B0 00049210 80 DE 00 14 */ lwz r6, 0x14(r30) /* 8004D5B4 00049214 7F E3 FB 78 */ mr r3, r31 /* 8004D5B8 00049218 C0 7E 00 48 */ lfs f3, 0x48(r30) /* 8004D5BC 0004921C 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 8004D5C0 00049220 C0 06 00 10 */ lfs f0, 0x10(r6) /* 8004D5C4 00049224 38 BE 00 20 */ addi r5, r30, 0x20 /* 8004D5C8 00049228 C0 82 84 2C */ lfs f4, lbl_80640A2C-_SDA2_BASE_(r2) /* 8004D5CC 0004922C EC 40 00 F2 */ fmuls f2, f0, f3 /* 8004D5D0 00049230 C0 0D 86 C8 */ lfs f0, lbl_8063D988-_SDA_BASE_(r13) /* 8004D5D4 00049234 C0 3E 00 20 */ lfs f1, 0x20(r30) /* 8004D5D8 00049238 EC A4 00 32 */ fmuls f5, f4, f0 /* 8004D5DC 0004923C C0 1E 00 24 */ lfs f0, 0x24(r30) /* 8004D5E0 00049240 EC 5F 00 B2 */ fmuls f2, f31, f2 /* 8004D5E4 00049244 EC 42 01 72 */ fmuls f2, f2, f5 /* 8004D5E8 00049248 EC 21 10 2A */ fadds f1, f1, f2 /* 8004D5EC 0004924C D0 3E 00 20 */ stfs f1, 0x20(r30) /* 8004D5F0 00049250 C0 26 00 14 */ lfs f1, 0x14(r6) /* 8004D5F4 00049254 C0 4D 86 C8 */ lfs f2, lbl_8063D988-_SDA_BASE_(r13) /* 8004D5F8 00049258 EC 21 00 F2 */ fmuls f1, f1, f3 /* 8004D5FC 0004925C EC 44 00 B2 */ fmuls f2, f4, f2 /* 8004D600 00049260 EC 3F 00 72 */ fmuls f1, f31, f1 /* 8004D604 00049264 EC 21 00 B2 */ fmuls f1, f1, f2 /* 8004D608 00049268 EC 00 08 2A */ fadds f0, f0, f1 /* 8004D60C 0004926C D0 1E 00 24 */ stfs f0, 0x24(r30) /* 8004D610 00049270 48 1A B5 31 */ bl func_801F8B40 /* 8004D614 00049274 C0 3E 00 38 */ lfs f1, 0x38(r30) /* 8004D618 00049278 C0 1E 00 44 */ lfs f0, 0x44(r30) /* 8004D61C 0004927C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D620 00049280 40 80 00 C4 */ bge lbl_8004D6E4 /* 8004D624 00049284 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8004D628 00049288 7F C3 F3 78 */ mr r3, r30 /* 8004D62C 0004928C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D630 00049290 7D 89 03 A6 */ mtctr r12 /* 8004D634 00049294 4E 80 04 21 */ bctrl /* 8004D638 00049298 D0 3E 00 40 */ stfs f1, 0x40(r30) /* 8004D63C 0004929C 7F C3 F3 78 */ mr r3, r30 /* 8004D640 000492A0 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8004D644 000492A4 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004D648 000492A8 7D 89 03 A6 */ mtctr r12 /* 8004D64C 000492AC 4E 80 04 21 */ bctrl /* 8004D650 000492B0 C0 7E 00 38 */ lfs f3, 0x38(r30) /* 8004D654 000492B4 C0 42 83 F8 */ lfs f2, lbl_806409F8-_SDA2_BASE_(r2) /* 8004D658 000492B8 EC 21 18 28 */ fsubs f1, f1, f3 /* 8004D65C 000492BC FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8004D660 000492C0 D0 3E 00 3C */ stfs f1, 0x3c(r30) /* 8004D664 000492C4 40 81 00 80 */ ble lbl_8004D6E4 /* 8004D668 000492C8 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 8004D66C 000492CC FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8004D670 000492D0 40 81 00 74 */ ble lbl_8004D6E4 /* 8004D674 000492D4 C0 1E 00 44 */ lfs f0, 0x44(r30) /* 8004D678 000492D8 EC 00 18 28 */ fsubs f0, f0, f3 /* 8004D67C 000492DC EC 20 08 24 */ fdivs f1, f0, f1 /* 8004D680 000492E0 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8004D684 000492E4 40 80 00 08 */ bge lbl_8004D68C /* 8004D688 000492E8 FC 20 10 90 */ fmr f1, f2 lbl_8004D68C: /* 8004D68C 000492EC C0 02 84 00 */ lfs f0, lbl_80640A00-_SDA2_BASE_(r2) /* 8004D690 000492F0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004D694 000492F4 40 81 00 08 */ ble lbl_8004D69C /* 8004D698 000492F8 FC 20 00 90 */ fmr f1, f0 lbl_8004D69C: /* 8004D69C 000492FC 88 9E 00 34 */ lbz r4, 0x34(r30) /* 8004D6A0 00049300 3C 00 43 30 */ lis r0, 0x4330 /* 8004D6A4 00049304 C0 02 84 00 */ lfs f0, lbl_80640A00-_SDA2_BASE_(r2) /* 8004D6A8 00049308 7F E3 FB 78 */ mr r3, r31 /* 8004D6AC 0004930C 90 81 00 0C */ stw r4, 0xc(r1) /* 8004D6B0 00049310 A0 9E 00 1C */ lhz r4, 0x1c(r30) /* 8004D6B4 00049314 EC 00 08 28 */ fsubs f0, f0, f1 /* 8004D6B8 00049318 90 01 00 08 */ stw r0, 8(r1) /* 8004D6BC 0004931C C8 42 83 F0 */ lfd f2, lbl_806409F0-_SDA2_BASE_(r2) /* 8004D6C0 00049320 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 8004D6C4 00049324 C8 21 00 08 */ lfd f1, 8(r1) /* 8004D6C8 00049328 EC 21 10 28 */ fsubs f1, f1, f2 /* 8004D6CC 0004932C EC 01 00 32 */ fmuls f0, f1, f0 /* 8004D6D0 00049330 FC 00 00 1E */ fctiwz f0, f0 /* 8004D6D4 00049334 D8 01 00 10 */ stfd f0, 0x10(r1) /* 8004D6D8 00049338 80 A1 00 14 */ lwz r5, 0x14(r1) /* 8004D6DC 0004933C 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 8004D6E0 00049340 48 1A B4 C1 */ bl func_801F8BA0 lbl_8004D6E4: /* 8004D6E4 00049344 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8004D6E8 00049348 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004D6EC 0004934C CB E1 00 20 */ lfd f31, 0x20(r1) /* 8004D6F0 00049350 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004D6F4 00049354 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004D6F8 00049358 7C 08 03 A6 */ mtlr r0 /* 8004D6FC 0004935C 38 21 00 30 */ addi r1, r1, 0x30 /* 8004D700 00049360 4E 80 00 20 */ blr .global func_8004D704 func_8004D704: /* 8004D704 00049364 38 A0 00 01 */ li r5, 1 /* 8004D708 00049368 38 6D 98 20 */ addi r3, r13, lbl_8063EAE0-_SDA_BASE_ /* 8004D70C 0004936C 38 80 00 04 */ li r4, 4 /* 8004D710 00049370 38 00 00 00 */ li r0, 0 /* 8004D714 00049374 98 AD 98 20 */ stb r5, lbl_8063EAE0-_SDA_BASE_(r13) /* 8004D718 00049378 B0 83 00 02 */ sth r4, 2(r3) /* 8004D71C 0004937C 98 03 00 04 */ stb r0, 4(r3) /* 8004D720 00049380 4E 80 00 20 */ blr .global func_8004D724 func_8004D724: /* 8004D724 00049384 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D728 00049388 7C 08 02 A6 */ mflr r0 /* 8004D72C 0004938C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D730 00049390 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D734 00049394 83 ED 98 30 */ lwz r31, lbl_8063EAF0-_SDA_BASE_(r13) /* 8004D738 00049398 2C 1F 00 00 */ cmpwi r31, 0 /* 8004D73C 0004939C 41 82 00 80 */ beq lbl_8004D7BC /* 8004D740 000493A0 41 82 00 7C */ beq lbl_8004D7BC /* 8004D744 000493A4 34 7F 35 10 */ addic. r3, r31, 0x3510 /* 8004D748 000493A8 41 82 00 18 */ beq lbl_8004D760 /* 8004D74C 000493AC 3C 80 80 05 */ lis r4, lbl_8004ED5C@ha /* 8004D750 000493B0 38 A0 00 08 */ li r5, 8 /* 8004D754 000493B4 38 84 ED 5C */ addi r4, r4, lbl_8004ED5C@l /* 8004D758 000493B8 38 C0 00 20 */ li r6, 0x20 /* 8004D75C 000493BC 48 17 98 05 */ bl __destroy_arr lbl_8004D760: /* 8004D760 000493C0 38 7F 34 C0 */ addi r3, r31, 0x34c0 /* 8004D764 000493C4 38 80 FF FF */ li r4, -1 /* 8004D768 000493C8 48 00 12 D9 */ bl func_8004EA40 /* 8004D76C 000493CC 3C 80 80 05 */ lis r4, lbl_8004DEF8@ha /* 8004D770 000493D0 38 7F 27 C0 */ addi r3, r31, 0x27c0 /* 8004D774 000493D4 38 84 DE F8 */ addi r4, r4, lbl_8004DEF8@l /* 8004D778 000493D8 38 A0 00 68 */ li r5, 0x68 /* 8004D77C 000493DC 38 C0 00 20 */ li r6, 0x20 /* 8004D780 000493E0 48 17 97 E1 */ bl __destroy_arr /* 8004D784 000493E4 3C 80 80 04 */ lis r4, lbl_80047908@ha /* 8004D788 000493E8 38 7F 1D 40 */ addi r3, r31, 0x1d40 /* 8004D78C 000493EC 38 84 79 08 */ addi r4, r4, lbl_80047908@l /* 8004D790 000493F0 38 A0 00 38 */ li r5, 0x38 /* 8004D794 000493F4 38 C0 00 30 */ li r6, 0x30 /* 8004D798 000493F8 48 17 97 C9 */ bl __destroy_arr /* 8004D79C 000493FC 3C 80 80 05 */ lis r4, lbl_80048748@ha /* 8004D7A0 00049400 7F E3 FB 78 */ mr r3, r31 /* 8004D7A4 00049404 38 84 87 48 */ addi r4, r4, lbl_80048748@l /* 8004D7A8 00049408 38 A0 00 9C */ li r5, 0x9c /* 8004D7AC 0004940C 38 C0 00 30 */ li r6, 0x30 /* 8004D7B0 00049410 48 17 97 B1 */ bl __destroy_arr /* 8004D7B4 00049414 7F E3 FB 78 */ mr r3, r31 /* 8004D7B8 00049418 48 18 D3 01 */ bl func_801DAAB8 lbl_8004D7BC: /* 8004D7BC 0004941C 38 60 36 94 */ li r3, 0x3694 /* 8004D7C0 00049420 48 18 D2 71 */ bl func_801DAA30 /* 8004D7C4 00049424 2C 03 00 00 */ cmpwi r3, 0 /* 8004D7C8 00049428 41 82 00 08 */ beq lbl_8004D7D0 /* 8004D7CC 0004942C 48 00 00 91 */ bl func_8004D85C lbl_8004D7D0: /* 8004D7D0 00049430 3C 80 80 05 */ lis r4, lbl_8004D814@ha /* 8004D7D4 00049434 3C A0 80 05 */ lis r5, lbl_8004D848@ha /* 8004D7D8 00049438 90 6D 98 30 */ stw r3, lbl_8063EAF0-_SDA_BASE_(r13) /* 8004D7DC 0004943C 38 84 D8 14 */ addi r4, r4, lbl_8004D814@l /* 8004D7E0 00049440 80 6D A4 B8 */ lwz r3, lbl_8063F778-_SDA_BASE_(r13) /* 8004D7E4 00049444 38 A5 D8 48 */ addi r5, r5, lbl_8004D848@l /* 8004D7E8 00049448 38 C0 00 03 */ li r6, 3 /* 8004D7EC 0004944C 38 E0 00 0C */ li r7, 0xc /* 8004D7F0 00049450 48 1F 13 69 */ bl func_8023EB58 /* 8004D7F4 00049454 48 00 11 2D */ bl func_8004E920 /* 8004D7F8 00049458 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D7FC 0004945C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D800 00049460 7C 08 03 A6 */ mtlr r0 /* 8004D804 00049464 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D808 00049468 4E 80 00 20 */ blr .global func_8004D80C func_8004D80C: /* 8004D80C 0004946C 80 6D 98 30 */ lwz r3, lbl_8063EAF0-_SDA_BASE_(r13) /* 8004D810 00049470 4E 80 00 20 */ blr lbl_8004D814: /* 8004D814 00049474 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D818 00049478 7C 08 02 A6 */ mflr r0 /* 8004D81C 0004947C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D820 00049480 80 0D 98 30 */ lwz r0, lbl_8063EAF0-_SDA_BASE_(r13) /* 8004D824 00049484 2C 00 00 00 */ cmpwi r0, 0 /* 8004D828 00049488 41 82 00 10 */ beq lbl_8004D838 /* 8004D82C 0004948C 4B FB 9B 71 */ bl func_8000739C /* 8004D830 00049490 80 6D 98 30 */ lwz r3, lbl_8063EAF0-_SDA_BASE_(r13) /* 8004D834 00049494 48 00 01 A5 */ bl func_8004D9D8 lbl_8004D838: /* 8004D838 00049498 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D83C 0004949C 7C 08 03 A6 */ mtlr r0 /* 8004D840 000494A0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D844 000494A4 4E 80 00 20 */ blr lbl_8004D848: /* 8004D848 000494A8 80 6D 98 30 */ lwz r3, lbl_8063EAF0-_SDA_BASE_(r13) /* 8004D84C 000494AC 2C 03 00 00 */ cmpwi r3, 0 /* 8004D850 000494B0 4D 82 00 20 */ beqlr /* 8004D854 000494B4 48 00 02 30 */ b lbl_8004DA84 /* 8004D858 000494B8 4E 80 00 20 */ blr .global func_8004D85C func_8004D85C: /* 8004D85C 000494BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004D860 000494C0 7C 08 02 A6 */ mflr r0 /* 8004D864 000494C4 3C 80 80 05 */ lis r4, lbl_80048728@ha /* 8004D868 000494C8 3C A0 80 05 */ lis r5, lbl_80048748@ha /* 8004D86C 000494CC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004D870 000494D0 38 C0 00 9C */ li r6, 0x9c /* 8004D874 000494D4 38 84 87 28 */ addi r4, r4, lbl_80048728@l /* 8004D878 000494D8 38 A5 87 48 */ addi r5, r5, lbl_80048748@l /* 8004D87C 000494DC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004D880 000494E0 7C 7F 1B 78 */ mr r31, r3 /* 8004D884 000494E4 38 E0 00 30 */ li r7, 0x30 /* 8004D888 000494E8 48 17 95 E1 */ bl __construct_array /* 8004D88C 000494EC 3C 80 80 04 */ lis r4, lbl_800478E4@ha /* 8004D890 000494F0 3C A0 80 04 */ lis r5, lbl_80047908@ha /* 8004D894 000494F4 38 7F 1D 40 */ addi r3, r31, 0x1d40 /* 8004D898 000494F8 38 C0 00 38 */ li r6, 0x38 /* 8004D89C 000494FC 38 84 78 E4 */ addi r4, r4, lbl_800478E4@l /* 8004D8A0 00049500 38 A5 79 08 */ addi r5, r5, lbl_80047908@l /* 8004D8A4 00049504 38 E0 00 30 */ li r7, 0x30 /* 8004D8A8 00049508 48 17 95 C1 */ bl __construct_array /* 8004D8AC 0004950C 3C 80 80 05 */ lis r4, lbl_8004DE88@ha /* 8004D8B0 00049510 3C A0 80 05 */ lis r5, lbl_8004DEF8@ha /* 8004D8B4 00049514 38 7F 27 C0 */ addi r3, r31, 0x27c0 /* 8004D8B8 00049518 38 C0 00 68 */ li r6, 0x68 /* 8004D8BC 0004951C 38 84 DE 88 */ addi r4, r4, lbl_8004DE88@l /* 8004D8C0 00049520 38 A5 DE F8 */ addi r5, r5, lbl_8004DEF8@l /* 8004D8C4 00049524 38 E0 00 20 */ li r7, 0x20 /* 8004D8C8 00049528 48 17 95 A1 */ bl __construct_array /* 8004D8CC 0004952C 38 7F 34 C0 */ addi r3, r31, 0x34c0 /* 8004D8D0 00049530 48 00 11 21 */ bl func_8004E9F0 /* 8004D8D4 00049534 38 7F 35 10 */ addi r3, r31, 0x3510 /* 8004D8D8 00049538 48 00 17 E5 */ bl func_8004F0BC /* 8004D8DC 0004953C 38 7F 35 10 */ addi r3, r31, 0x3510 /* 8004D8E0 00049540 48 00 18 4D */ bl func_8004F12C /* 8004D8E4 00049544 7F E3 FB 78 */ mr r3, r31 /* 8004D8E8 00049548 48 00 00 1D */ bl func_8004D904 /* 8004D8EC 0004954C 7F E3 FB 78 */ mr r3, r31 /* 8004D8F0 00049550 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004D8F4 00049554 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004D8F8 00049558 7C 08 03 A6 */ mtlr r0 /* 8004D8FC 0004955C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004D900 00049560 4E 80 00 20 */ blr .global func_8004D904 func_8004D904: /* 8004D904 00049564 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004D908 00049568 7C 08 02 A6 */ mflr r0 /* 8004D90C 0004956C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004D910 00049570 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004D914 00049574 3B E3 1D 40 */ addi r31, r3, 0x1d40 /* 8004D918 00049578 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004D91C 0004957C 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004D920 00049580 7C 7D 1B 78 */ mr r29, r3 /* 8004D924 00049584 7F BE EB 78 */ mr r30, r29 /* 8004D928 00049588 48 00 00 10 */ b lbl_8004D938 lbl_8004D92C: /* 8004D92C 0004958C 7F C3 F3 78 */ mr r3, r30 /* 8004D930 00049590 4B FF AE 6D */ bl func_8004879C /* 8004D934 00049594 3B DE 00 9C */ addi r30, r30, 0x9c lbl_8004D938: /* 8004D938 00049598 7C 1E F8 40 */ cmplw r30, r31 /* 8004D93C 0004959C 40 82 FF F0 */ bne lbl_8004D92C /* 8004D940 000495A0 7F A3 EB 78 */ mr r3, r29 /* 8004D944 000495A4 48 00 03 89 */ bl func_8004DCCC /* 8004D948 000495A8 38 7D 35 10 */ addi r3, r29, 0x3510 /* 8004D94C 000495AC 48 00 19 B5 */ bl func_8004F300 /* 8004D950 000495B0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004D954 000495B4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004D958 000495B8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004D95C 000495BC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004D960 000495C0 7C 08 03 A6 */ mtlr r0 /* 8004D964 000495C4 38 21 00 20 */ addi r1, r1, 0x20 /* 8004D968 000495C8 4E 80 00 20 */ blr .global func_8004D96C func_8004D96C: /* 8004D96C 000495CC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004D970 000495D0 7C 08 02 A6 */ mflr r0 /* 8004D974 000495D4 90 01 00 24 */ stw r0, 0x24(r1) /* 8004D978 000495D8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004D97C 000495DC 3B E3 1D 40 */ addi r31, r3, 0x1d40 /* 8004D980 000495E0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004D984 000495E4 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004D988 000495E8 7C 7D 1B 78 */ mr r29, r3 /* 8004D98C 000495EC 7F BE EB 78 */ mr r30, r29 /* 8004D990 000495F0 48 00 00 1C */ b lbl_8004D9AC lbl_8004D994: /* 8004D994 000495F4 80 1E 00 8C */ lwz r0, 0x8c(r30) /* 8004D998 000495F8 28 00 00 0C */ cmplwi r0, 0xc /* 8004D99C 000495FC 41 82 00 0C */ beq lbl_8004D9A8 /* 8004D9A0 00049600 7F C3 F3 78 */ mr r3, r30 /* 8004D9A4 00049604 4B FF AD F9 */ bl func_8004879C lbl_8004D9A8: /* 8004D9A8 00049608 3B DE 00 9C */ addi r30, r30, 0x9c lbl_8004D9AC: /* 8004D9AC 0004960C 7C 1E F8 40 */ cmplw r30, r31 /* 8004D9B0 00049610 40 82 FF E4 */ bne lbl_8004D994 /* 8004D9B4 00049614 7F A3 EB 78 */ mr r3, r29 /* 8004D9B8 00049618 48 00 03 6D */ bl func_8004DD24 /* 8004D9BC 0004961C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004D9C0 00049620 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004D9C4 00049624 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004D9C8 00049628 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004D9CC 0004962C 7C 08 03 A6 */ mtlr r0 /* 8004D9D0 00049630 38 21 00 20 */ addi r1, r1, 0x20 /* 8004D9D4 00049634 4E 80 00 20 */ blr .global func_8004D9D8 func_8004D9D8: /* 8004D9D8 00049638 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004D9DC 0004963C 7C 08 02 A6 */ mflr r0 /* 8004D9E0 00049640 90 01 00 24 */ stw r0, 0x24(r1) /* 8004D9E4 00049644 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8004D9E8 00049648 FF E0 08 90 */ fmr f31, f1 /* 8004D9EC 0004964C 93 E1 00 14 */ stw r31, 0x14(r1) /* 8004D9F0 00049650 3B E3 1D 40 */ addi r31, r3, 0x1d40 /* 8004D9F4 00049654 93 C1 00 10 */ stw r30, 0x10(r1) /* 8004D9F8 00049658 3B C3 27 C0 */ addi r30, r3, 0x27c0 /* 8004D9FC 0004965C 93 A1 00 0C */ stw r29, 0xc(r1) /* 8004DA00 00049660 7C 7D 1B 78 */ mr r29, r3 /* 8004DA04 00049664 48 00 00 14 */ b lbl_8004DA18 lbl_8004DA08: /* 8004DA08 00049668 FC 20 F8 90 */ fmr f1, f31 /* 8004DA0C 0004966C 7F E3 FB 78 */ mr r3, r31 /* 8004DA10 00049670 4B FF A9 41 */ bl func_80048350 /* 8004DA14 00049674 3B FF 00 38 */ addi r31, r31, 0x38 lbl_8004DA18: /* 8004DA18 00049678 7C 1F F0 40 */ cmplw r31, r30 /* 8004DA1C 0004967C 40 82 FF EC */ bne lbl_8004DA08 /* 8004DA20 00049680 3B FD 34 C0 */ addi r31, r29, 0x34c0 /* 8004DA24 00049684 48 00 00 20 */ b lbl_8004DA44 lbl_8004DA28: /* 8004DA28 00049688 80 1E 00 34 */ lwz r0, 0x34(r30) /* 8004DA2C 0004968C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004DA30 00049690 41 82 00 10 */ beq lbl_8004DA40 /* 8004DA34 00049694 FC 20 F8 90 */ fmr f1, f31 /* 8004DA38 00049698 7F C3 F3 78 */ mr r3, r30 /* 8004DA3C 0004969C 48 00 0B 99 */ bl func_8004E5D4 lbl_8004DA40: /* 8004DA40 000496A0 3B DE 00 68 */ addi r30, r30, 0x68 lbl_8004DA44: /* 8004DA44 000496A4 7C 1E F8 40 */ cmplw r30, r31 /* 8004DA48 000496A8 40 82 FF E0 */ bne lbl_8004DA28 /* 8004DA4C 000496AC FC 20 F8 90 */ fmr f1, f31 /* 8004DA50 000496B0 7F E3 FB 78 */ mr r3, r31 /* 8004DA54 000496B4 48 00 12 8D */ bl func_8004ECE0 /* 8004DA58 000496B8 FC 20 F8 90 */ fmr f1, f31 /* 8004DA5C 000496BC 38 7D 35 10 */ addi r3, r29, 0x3510 /* 8004DA60 000496C0 48 00 18 45 */ bl func_8004F2A4 /* 8004DA64 000496C4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DA68 000496C8 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8004DA6C 000496CC 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8004DA70 000496D0 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8004DA74 000496D4 83 A1 00 0C */ lwz r29, 0xc(r1) /* 8004DA78 000496D8 7C 08 03 A6 */ mtlr r0 /* 8004DA7C 000496DC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DA80 000496E0 4E 80 00 20 */ blr lbl_8004DA84: /* 8004DA84 000496E4 4E 80 00 20 */ blr .global func_8004DA88 func_8004DA88: /* 8004DA88 000496E8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004DA8C 000496EC 7C 08 02 A6 */ mflr r0 /* 8004DA90 000496F0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004DA94 000496F4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004DA98 000496F8 3B E3 1D 40 */ addi r31, r3, 0x1d40 /* 8004DA9C 000496FC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004DAA0 00049700 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004DAA4 00049704 7C 9D 23 78 */ mr r29, r4 /* 8004DAA8 00049708 93 81 00 10 */ stw r28, 0x10(r1) /* 8004DAAC 0004970C 7C 7C 1B 78 */ mr r28, r3 /* 8004DAB0 00049710 7F 9E E3 78 */ mr r30, r28 /* 8004DAB4 00049714 48 00 00 3C */ b lbl_8004DAF0 lbl_8004DAB8: /* 8004DAB8 00049718 88 1E 00 00 */ lbz r0, 0(r30) /* 8004DABC 0004971C 2C 00 00 00 */ cmpwi r0, 0 /* 8004DAC0 00049720 41 82 00 2C */ beq lbl_8004DAEC /* 8004DAC4 00049724 7F A4 EB 78 */ mr r4, r29 /* 8004DAC8 00049728 38 7E 00 08 */ addi r3, r30, 8 /* 8004DACC 0004972C 48 18 09 81 */ bl strcmp /* 8004DAD0 00049730 2C 03 00 00 */ cmpwi r3, 0 /* 8004DAD4 00049734 40 82 00 18 */ bne lbl_8004DAEC /* 8004DAD8 00049738 80 9E 00 88 */ lwz r4, 0x88(r30) /* 8004DADC 0004973C 7F C3 F3 78 */ mr r3, r30 /* 8004DAE0 00049740 38 04 00 01 */ addi r0, r4, 1 /* 8004DAE4 00049744 90 1E 00 88 */ stw r0, 0x88(r30) /* 8004DAE8 00049748 48 00 00 4C */ b lbl_8004DB34 lbl_8004DAEC: /* 8004DAEC 0004974C 3B DE 00 9C */ addi r30, r30, 0x9c lbl_8004DAF0: /* 8004DAF0 00049750 7C 1E F8 40 */ cmplw r30, r31 /* 8004DAF4 00049754 40 82 FF C4 */ bne lbl_8004DAB8 /* 8004DAF8 00049758 7F 83 E3 78 */ mr r3, r28 /* 8004DAFC 0004975C 48 00 01 2D */ bl func_8004DC28 /* 8004DB00 00049760 2C 03 00 00 */ cmpwi r3, 0 /* 8004DB04 00049764 7C 7E 1B 78 */ mr r30, r3 /* 8004DB08 00049768 41 82 00 28 */ beq lbl_8004DB30 /* 8004DB0C 0004976C 7F A4 EB 78 */ mr r4, r29 /* 8004DB10 00049770 4B FF AD 55 */ bl func_80048864 /* 8004DB14 00049774 2C 03 00 00 */ cmpwi r3, 0 /* 8004DB18 00049778 41 82 00 18 */ beq lbl_8004DB30 /* 8004DB1C 0004977C 80 9E 00 88 */ lwz r4, 0x88(r30) /* 8004DB20 00049780 7F C3 F3 78 */ mr r3, r30 /* 8004DB24 00049784 38 04 00 01 */ addi r0, r4, 1 /* 8004DB28 00049788 90 1E 00 88 */ stw r0, 0x88(r30) /* 8004DB2C 0004978C 48 00 00 08 */ b lbl_8004DB34 lbl_8004DB30: /* 8004DB30 00049790 38 60 00 00 */ li r3, 0 lbl_8004DB34: /* 8004DB34 00049794 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DB38 00049798 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004DB3C 0004979C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004DB40 000497A0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004DB44 000497A4 83 81 00 10 */ lwz r28, 0x10(r1) /* 8004DB48 000497A8 7C 08 03 A6 */ mtlr r0 /* 8004DB4C 000497AC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DB50 000497B0 4E 80 00 20 */ blr .global func_8004DB54 func_8004DB54: /* 8004DB54 000497B4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004DB58 000497B8 7C 08 02 A6 */ mflr r0 /* 8004DB5C 000497BC 90 01 00 24 */ stw r0, 0x24(r1) /* 8004DB60 000497C0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004DB64 000497C4 7C BF 2B 78 */ mr r31, r5 /* 8004DB68 000497C8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004DB6C 000497CC 7C 9E 23 78 */ mr r30, r4 /* 8004DB70 000497D0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004DB74 000497D4 7C 7D 1B 78 */ mr r29, r3 /* 8004DB78 000497D8 48 00 00 71 */ bl func_8004DBE8 /* 8004DB7C 000497DC 2C 03 00 00 */ cmpwi r3, 0 /* 8004DB80 000497E0 40 82 00 20 */ bne lbl_8004DBA0 /* 8004DB84 000497E4 7F A3 EB 78 */ mr r3, r29 /* 8004DB88 000497E8 48 00 00 A1 */ bl func_8004DC28 /* 8004DB8C 000497EC 2C 03 00 00 */ cmpwi r3, 0 /* 8004DB90 000497F0 41 82 00 10 */ beq lbl_8004DBA0 /* 8004DB94 000497F4 7F C4 F3 78 */ mr r4, r30 /* 8004DB98 000497F8 7F E5 FB 78 */ mr r5, r31 /* 8004DB9C 000497FC 4B FF AD 6D */ bl func_80048908 lbl_8004DBA0: /* 8004DBA0 00049800 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004DBA4 00049804 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004DBA8 00049808 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004DBAC 0004980C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004DBB0 00049810 7C 08 03 A6 */ mtlr r0 /* 8004DBB4 00049814 38 21 00 20 */ addi r1, r1, 0x20 /* 8004DBB8 00049818 4E 80 00 20 */ blr .global func_8004DBBC func_8004DBBC: /* 8004DBBC 0004981C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DBC0 00049820 7C 08 02 A6 */ mflr r0 /* 8004DBC4 00049824 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DBC8 00049828 48 00 00 21 */ bl func_8004DBE8 /* 8004DBCC 0004982C 2C 03 00 00 */ cmpwi r3, 0 /* 8004DBD0 00049830 41 82 00 08 */ beq lbl_8004DBD8 /* 8004DBD4 00049834 4B FF AB C9 */ bl func_8004879C lbl_8004DBD8: /* 8004DBD8 00049838 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DBDC 0004983C 7C 08 03 A6 */ mtlr r0 /* 8004DBE0 00049840 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DBE4 00049844 4E 80 00 20 */ blr .global func_8004DBE8 func_8004DBE8: /* 8004DBE8 00049848 38 03 1D 40 */ addi r0, r3, 0x1d40 /* 8004DBEC 0004984C 48 00 00 2C */ b lbl_8004DC18 lbl_8004DBF0: /* 8004DBF0 00049850 88 C3 00 00 */ lbz r6, 0(r3) /* 8004DBF4 00049854 2C 06 00 00 */ cmpwi r6, 0 /* 8004DBF8 00049858 41 82 00 1C */ beq lbl_8004DC14 /* 8004DBFC 0004985C 80 C3 00 8C */ lwz r6, 0x8c(r3) /* 8004DC00 00049860 7C 04 30 40 */ cmplw r4, r6 /* 8004DC04 00049864 40 82 00 10 */ bne lbl_8004DC14 /* 8004DC08 00049868 80 C3 00 90 */ lwz r6, 0x90(r3) /* 8004DC0C 0004986C 7C 05 30 40 */ cmplw r5, r6 /* 8004DC10 00049870 4D 82 00 20 */ beqlr lbl_8004DC14: /* 8004DC14 00049874 38 63 00 9C */ addi r3, r3, 0x9c lbl_8004DC18: /* 8004DC18 00049878 7C 03 00 40 */ cmplw r3, r0 /* 8004DC1C 0004987C 40 82 FF D4 */ bne lbl_8004DBF0 /* 8004DC20 00049880 38 60 00 00 */ li r3, 0 /* 8004DC24 00049884 4E 80 00 20 */ blr .global func_8004DC28 func_8004DC28: /* 8004DC28 00049888 38 03 1D 40 */ addi r0, r3, 0x1d40 /* 8004DC2C 0004988C 48 00 00 14 */ b lbl_8004DC40 lbl_8004DC30: /* 8004DC30 00049890 88 83 00 00 */ lbz r4, 0(r3) /* 8004DC34 00049894 2C 04 00 00 */ cmpwi r4, 0 /* 8004DC38 00049898 4D 82 00 20 */ beqlr /* 8004DC3C 0004989C 38 63 00 9C */ addi r3, r3, 0x9c lbl_8004DC40: /* 8004DC40 000498A0 7C 03 00 40 */ cmplw r3, r0 /* 8004DC44 000498A4 40 82 FF EC */ bne lbl_8004DC30 /* 8004DC48 000498A8 38 60 00 00 */ li r3, 0 /* 8004DC4C 000498AC 4E 80 00 20 */ blr .global func_8004DC50 func_8004DC50: /* 8004DC50 000498B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DC54 000498B4 7C 08 02 A6 */ mflr r0 /* 8004DC58 000498B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DC5C 000498BC 38 03 34 C0 */ addi r0, r3, 0x34c0 /* 8004DC60 000498C0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DC64 000498C4 3B E3 27 C0 */ addi r31, r3, 0x27c0 /* 8004DC68 000498C8 48 00 00 24 */ b lbl_8004DC8C lbl_8004DC6C: /* 8004DC6C 000498CC 80 7F 00 34 */ lwz r3, 0x34(r31) /* 8004DC70 000498D0 54 63 07 FF */ clrlwi. r3, r3, 0x1f /* 8004DC74 000498D4 40 82 00 14 */ bne lbl_8004DC88 /* 8004DC78 000498D8 7F E3 FB 78 */ mr r3, r31 /* 8004DC7C 000498DC 48 00 02 D1 */ bl func_8004DF4C /* 8004DC80 000498E0 7F E3 FB 78 */ mr r3, r31 /* 8004DC84 000498E4 48 00 00 14 */ b lbl_8004DC98 lbl_8004DC88: /* 8004DC88 000498E8 3B FF 00 68 */ addi r31, r31, 0x68 lbl_8004DC8C: /* 8004DC8C 000498EC 7C 1F 00 40 */ cmplw r31, r0 /* 8004DC90 000498F0 40 82 FF DC */ bne lbl_8004DC6C /* 8004DC94 000498F4 38 60 00 00 */ li r3, 0 lbl_8004DC98: /* 8004DC98 000498F8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DC9C 000498FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DCA0 00049900 7C 08 03 A6 */ mtlr r0 /* 8004DCA4 00049904 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DCA8 00049908 4E 80 00 20 */ blr .global func_8004DCAC func_8004DCAC: /* 8004DCAC 0004990C 2C 04 00 00 */ cmpwi r4, 0 /* 8004DCB0 00049910 4D 82 00 20 */ beqlr /* 8004DCB4 00049914 80 04 00 34 */ lwz r0, 0x34(r4) /* 8004DCB8 00049918 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004DCBC 0004991C 4D 82 00 20 */ beqlr /* 8004DCC0 00049920 7C 83 23 78 */ mr r3, r4 /* 8004DCC4 00049924 48 00 02 B4 */ b func_8004DF78 /* 8004DCC8 00049928 4E 80 00 20 */ blr .global func_8004DCCC func_8004DCCC: /* 8004DCCC 0004992C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DCD0 00049930 7C 08 02 A6 */ mflr r0 /* 8004DCD4 00049934 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DCD8 00049938 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DCDC 0004993C 3B E3 34 C0 */ addi r31, r3, 0x34c0 /* 8004DCE0 00049940 93 C1 00 08 */ stw r30, 8(r1) /* 8004DCE4 00049944 3B C3 27 C0 */ addi r30, r3, 0x27c0 /* 8004DCE8 00049948 48 00 00 1C */ b lbl_8004DD04 lbl_8004DCEC: /* 8004DCEC 0004994C 80 1E 00 34 */ lwz r0, 0x34(r30) /* 8004DCF0 00049950 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004DCF4 00049954 41 82 00 0C */ beq lbl_8004DD00 /* 8004DCF8 00049958 7F C3 F3 78 */ mr r3, r30 /* 8004DCFC 0004995C 48 00 02 7D */ bl func_8004DF78 lbl_8004DD00: /* 8004DD00 00049960 3B DE 00 68 */ addi r30, r30, 0x68 lbl_8004DD04: /* 8004DD04 00049964 7C 1E F8 40 */ cmplw r30, r31 /* 8004DD08 00049968 40 82 FF E4 */ bne lbl_8004DCEC /* 8004DD0C 0004996C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DD10 00049970 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DD14 00049974 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DD18 00049978 7C 08 03 A6 */ mtlr r0 /* 8004DD1C 0004997C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DD20 00049980 4E 80 00 20 */ blr .global func_8004DD24 func_8004DD24: /* 8004DD24 00049984 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DD28 00049988 7C 08 02 A6 */ mflr r0 /* 8004DD2C 0004998C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DD30 00049990 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DD34 00049994 3B E3 34 C0 */ addi r31, r3, 0x34c0 /* 8004DD38 00049998 93 C1 00 08 */ stw r30, 8(r1) /* 8004DD3C 0004999C 3B C3 27 C0 */ addi r30, r3, 0x27c0 /* 8004DD40 000499A0 48 00 00 38 */ b lbl_8004DD78 lbl_8004DD44: /* 8004DD44 000499A4 80 1E 00 34 */ lwz r0, 0x34(r30) /* 8004DD48 000499A8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004DD4C 000499AC 41 82 00 28 */ beq lbl_8004DD74 /* 8004DD50 000499B0 80 1E 00 44 */ lwz r0, 0x44(r30) /* 8004DD54 000499B4 28 00 00 0C */ cmplwi r0, 0xc /* 8004DD58 000499B8 41 82 00 1C */ beq lbl_8004DD74 /* 8004DD5C 000499BC 28 00 00 64 */ cmplwi r0, 0x64 /* 8004DD60 000499C0 41 80 00 0C */ blt lbl_8004DD6C /* 8004DD64 000499C4 28 00 00 73 */ cmplwi r0, 0x73 /* 8004DD68 000499C8 40 81 00 0C */ ble lbl_8004DD74 lbl_8004DD6C: /* 8004DD6C 000499CC 7F C3 F3 78 */ mr r3, r30 /* 8004DD70 000499D0 48 00 02 09 */ bl func_8004DF78 lbl_8004DD74: /* 8004DD74 000499D4 3B DE 00 68 */ addi r30, r30, 0x68 lbl_8004DD78: /* 8004DD78 000499D8 7C 1E F8 40 */ cmplw r30, r31 /* 8004DD7C 000499DC 40 82 FF C8 */ bne lbl_8004DD44 /* 8004DD80 000499E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DD84 000499E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DD88 000499E8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DD8C 000499EC 7C 08 03 A6 */ mtlr r0 /* 8004DD90 000499F0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DD94 000499F4 4E 80 00 20 */ blr .global func_8004DD98 func_8004DD98: /* 8004DD98 000499F8 38 83 1D 40 */ addi r4, r3, 0x1d40 /* 8004DD9C 000499FC 38 03 27 C0 */ addi r0, r3, 0x27c0 /* 8004DDA0 00049A00 48 00 00 1C */ b lbl_8004DDBC lbl_8004DDA4: /* 8004DDA4 00049A04 80 64 00 00 */ lwz r3, 0(r4) /* 8004DDA8 00049A08 54 63 07 FF */ clrlwi. r3, r3, 0x1f /* 8004DDAC 00049A0C 40 82 00 0C */ bne lbl_8004DDB8 /* 8004DDB0 00049A10 7C 83 23 78 */ mr r3, r4 /* 8004DDB4 00049A14 4E 80 00 20 */ blr lbl_8004DDB8: /* 8004DDB8 00049A18 38 84 00 38 */ addi r4, r4, 0x38 lbl_8004DDBC: /* 8004DDBC 00049A1C 7C 04 00 40 */ cmplw r4, r0 /* 8004DDC0 00049A20 40 82 FF E4 */ bne lbl_8004DDA4 /* 8004DDC4 00049A24 38 60 00 00 */ li r3, 0 /* 8004DDC8 00049A28 4E 80 00 20 */ blr .global func_8004DDCC func_8004DDCC: /* 8004DDCC 00049A2C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DDD0 00049A30 7C 08 02 A6 */ mflr r0 /* 8004DDD4 00049A34 2C 04 00 00 */ cmpwi r4, 0 /* 8004DDD8 00049A38 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DDDC 00049A3C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DDE0 00049A40 41 82 00 34 */ beq lbl_8004DE14 /* 8004DDE4 00049A44 80 04 00 00 */ lwz r0, 0(r4) /* 8004DDE8 00049A48 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8004DDEC 00049A4C 41 82 00 28 */ beq lbl_8004DE14 /* 8004DDF0 00049A50 83 E4 00 24 */ lwz r31, 0x24(r4) /* 8004DDF4 00049A54 7C 83 23 78 */ mr r3, r4 /* 8004DDF8 00049A58 4B FF 9C B1 */ bl func_80047AA8 /* 8004DDFC 00049A5C 80 1F 00 88 */ lwz r0, 0x88(r31) /* 8004DE00 00049A60 34 00 FF FF */ addic. r0, r0, -1 /* 8004DE04 00049A64 90 1F 00 88 */ stw r0, 0x88(r31) /* 8004DE08 00049A68 40 82 00 0C */ bne lbl_8004DE14 /* 8004DE0C 00049A6C 7F E3 FB 78 */ mr r3, r31 /* 8004DE10 00049A70 4B FF A9 8D */ bl func_8004879C lbl_8004DE14: /* 8004DE14 00049A74 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DE18 00049A78 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DE1C 00049A7C 7C 08 03 A6 */ mtlr r0 /* 8004DE20 00049A80 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DE24 00049A84 4E 80 00 20 */ blr .global func_8004DE28 func_8004DE28: /* 8004DE28 00049A88 38 00 00 20 */ li r0, 0x20 /* 8004DE2C 00049A8C 7C 65 1B 78 */ mr r5, r3 /* 8004DE30 00049A90 38 C0 00 00 */ li r6, 0 /* 8004DE34 00049A94 7C 09 03 A6 */ mtctr r0 lbl_8004DE38: /* 8004DE38 00049A98 80 05 28 10 */ lwz r0, 0x2810(r5) /* 8004DE3C 00049A9C 7C 04 00 40 */ cmplw r4, r0 /* 8004DE40 00049AA0 40 82 00 14 */ bne lbl_8004DE54 /* 8004DE44 00049AA4 1C 06 00 68 */ mulli r0, r6, 0x68 /* 8004DE48 00049AA8 7C 63 02 14 */ add r3, r3, r0 /* 8004DE4C 00049AAC 38 63 27 C0 */ addi r3, r3, 0x27c0 /* 8004DE50 00049AB0 4E 80 00 20 */ blr lbl_8004DE54: /* 8004DE54 00049AB4 38 A5 00 68 */ addi r5, r5, 0x68 /* 8004DE58 00049AB8 38 C6 00 01 */ addi r6, r6, 1 /* 8004DE5C 00049ABC 42 00 FF DC */ bdnz lbl_8004DE38 /* 8004DE60 00049AC0 38 60 00 00 */ li r3, 0 /* 8004DE64 00049AC4 4E 80 00 20 */ blr .global func_8004DE68 func_8004DE68: /* 8004DE68 00049AC8 38 A0 00 01 */ li r5, 1 /* 8004DE6C 00049ACC 38 6D 98 28 */ addi r3, r13, lbl_8063EAE8-_SDA_BASE_ /* 8004DE70 00049AD0 38 80 00 04 */ li r4, 4 /* 8004DE74 00049AD4 38 00 00 00 */ li r0, 0 /* 8004DE78 00049AD8 98 AD 98 28 */ stb r5, lbl_8063EAE8-_SDA_BASE_(r13) /* 8004DE7C 00049ADC B0 83 00 02 */ sth r4, 2(r3) /* 8004DE80 00049AE0 98 03 00 04 */ stb r0, 4(r3) /* 8004DE84 00049AE4 4E 80 00 20 */ blr lbl_8004DE88: /* 8004DE88 00049AE8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DE8C 00049AEC 7C 08 02 A6 */ mflr r0 /* 8004DE90 00049AF0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DE94 00049AF4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DE98 00049AF8 7C 7F 1B 78 */ mr r31, r3 /* 8004DE9C 00049AFC 48 00 26 91 */ bl func_8005052C /* 8004DEA0 00049B00 C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004DEA4 00049B04 38 00 00 00 */ li r0, 0 /* 8004DEA8 00049B08 90 1F 00 40 */ stw r0, 0x40(r31) /* 8004DEAC 00049B0C 7F E3 FB 78 */ mr r3, r31 /* 8004DEB0 00049B10 90 1F 00 3C */ stw r0, 0x3c(r31) /* 8004DEB4 00049B14 90 1F 00 38 */ stw r0, 0x38(r31) /* 8004DEB8 00049B18 D0 1F 00 4C */ stfs f0, 0x4c(r31) /* 8004DEBC 00049B1C 90 1F 00 34 */ stw r0, 0x34(r31) /* 8004DEC0 00049B20 90 1F 00 44 */ stw r0, 0x44(r31) /* 8004DEC4 00049B24 90 1F 00 48 */ stw r0, 0x48(r31) /* 8004DEC8 00049B28 90 1F 00 54 */ stw r0, 0x54(r31) /* 8004DECC 00049B2C 48 00 00 81 */ bl func_8004DF4C /* 8004DED0 00049B30 C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004DED4 00049B34 7F E3 FB 78 */ mr r3, r31 /* 8004DED8 00049B38 D0 1F 00 5C */ stfs f0, 0x5c(r31) /* 8004DEDC 00049B3C D0 1F 00 60 */ stfs f0, 0x60(r31) /* 8004DEE0 00049B40 D0 1F 00 64 */ stfs f0, 0x64(r31) /* 8004DEE4 00049B44 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DEE8 00049B48 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DEEC 00049B4C 7C 08 03 A6 */ mtlr r0 /* 8004DEF0 00049B50 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DEF4 00049B54 4E 80 00 20 */ blr lbl_8004DEF8: /* 8004DEF8 00049B58 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DEFC 00049B5C 7C 08 02 A6 */ mflr r0 /* 8004DF00 00049B60 2C 03 00 00 */ cmpwi r3, 0 /* 8004DF04 00049B64 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DF08 00049B68 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DF0C 00049B6C 7C 9F 23 78 */ mr r31, r4 /* 8004DF10 00049B70 93 C1 00 08 */ stw r30, 8(r1) /* 8004DF14 00049B74 7C 7E 1B 78 */ mr r30, r3 /* 8004DF18 00049B78 41 82 00 18 */ beq lbl_8004DF30 /* 8004DF1C 00049B7C 48 00 00 5D */ bl func_8004DF78 /* 8004DF20 00049B80 2C 1F 00 00 */ cmpwi r31, 0 /* 8004DF24 00049B84 40 81 00 0C */ ble lbl_8004DF30 /* 8004DF28 00049B88 7F C3 F3 78 */ mr r3, r30 /* 8004DF2C 00049B8C 48 18 CB 8D */ bl func_801DAAB8 lbl_8004DF30: /* 8004DF30 00049B90 7F C3 F3 78 */ mr r3, r30 /* 8004DF34 00049B94 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004DF38 00049B98 83 C1 00 08 */ lwz r30, 8(r1) /* 8004DF3C 00049B9C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004DF40 00049BA0 7C 08 03 A6 */ mtlr r0 /* 8004DF44 00049BA4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004DF48 00049BA8 4E 80 00 20 */ blr .global func_8004DF4C func_8004DF4C: /* 8004DF4C 00049BAC 80 AD 81 88 */ lwz r5, lbl_8063D448-_SDA_BASE_(r13) /* 8004DF50 00049BB0 3C 00 00 01 */ lis r0, 1 /* 8004DF54 00049BB4 64 A4 82 90 */ oris r4, r5, 0x8290 /* 8004DF58 00049BB8 38 A5 00 01 */ addi r5, r5, 1 /* 8004DF5C 00049BBC 90 83 00 50 */ stw r4, 0x50(r3) /* 8004DF60 00049BC0 7C 05 00 40 */ cmplw r5, r0 /* 8004DF64 00049BC4 90 AD 81 88 */ stw r5, lbl_8063D448-_SDA_BASE_(r13) /* 8004DF68 00049BC8 4C 81 00 20 */ blelr /* 8004DF6C 00049BCC 38 00 00 01 */ li r0, 1 /* 8004DF70 00049BD0 90 0D 81 88 */ stw r0, lbl_8063D448-_SDA_BASE_(r13) /* 8004DF74 00049BD4 4E 80 00 20 */ blr .global func_8004DF78 func_8004DF78: /* 8004DF78 00049BD8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004DF7C 00049BDC 7C 08 02 A6 */ mflr r0 /* 8004DF80 00049BE0 90 01 00 14 */ stw r0, 0x14(r1) /* 8004DF84 00049BE4 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004DF88 00049BE8 93 C1 00 08 */ stw r30, 8(r1) /* 8004DF8C 00049BEC 7C 7E 1B 78 */ mr r30, r3 /* 8004DF90 00049BF0 80 03 00 40 */ lwz r0, 0x40(r3) /* 8004DF94 00049BF4 2C 00 00 00 */ cmpwi r0, 0 /* 8004DF98 00049BF8 41 82 00 28 */ beq lbl_8004DFC0 /* 8004DF9C 00049BFC 41 82 00 1C */ beq lbl_8004DFB8 /* 8004DFA0 00049C00 7C 03 03 78 */ mr r3, r0 /* 8004DFA4 00049C04 38 80 00 01 */ li r4, 1 /* 8004DFA8 00049C08 81 83 01 00 */ lwz r12, 0x100(r3) /* 8004DFAC 00049C0C 81 8C 00 08 */ lwz r12, 8(r12) /* 8004DFB0 00049C10 7D 89 03 A6 */ mtctr r12 /* 8004DFB4 00049C14 4E 80 04 21 */ bctrl lbl_8004DFB8: /* 8004DFB8 00049C18 38 00 00 00 */ li r0, 0 /* 8004DFBC 00049C1C 90 1E 00 40 */ stw r0, 0x40(r30) lbl_8004DFC0: /* 8004DFC0 00049C20 80 7E 00 3C */ lwz r3, 0x3c(r30) /* 8004DFC4 00049C24 2C 03 00 00 */ cmpwi r3, 0 /* 8004DFC8 00049C28 41 82 00 1C */ beq lbl_8004DFE4 /* 8004DFCC 00049C2C 80 9E 00 34 */ lwz r4, 0x34(r30) /* 8004DFD0 00049C30 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e /* 8004DFD4 00049C34 41 82 00 10 */ beq lbl_8004DFE4 /* 8004DFD8 00049C38 54 80 07 FA */ rlwinm r0, r4, 0, 0x1f, 0x1d /* 8004DFDC 00049C3C 90 1E 00 34 */ stw r0, 0x34(r30) /* 8004DFE0 00049C40 48 1B 8E 15 */ bl func_80206DF4 lbl_8004DFE4: /* 8004DFE4 00049C44 80 7E 00 38 */ lwz r3, 0x38(r30) /* 8004DFE8 00049C48 3B E0 00 00 */ li r31, 0 /* 8004DFEC 00049C4C 93 FE 00 3C */ stw r31, 0x3c(r30) /* 8004DFF0 00049C50 2C 03 00 00 */ cmpwi r3, 0 /* 8004DFF4 00049C54 41 82 00 0C */ beq lbl_8004E000 /* 8004DFF8 00049C58 48 18 CE AD */ bl func_801DAEA4 /* 8004DFFC 00049C5C 93 FE 00 38 */ stw r31, 0x38(r30) lbl_8004E000: /* 8004E000 00049C60 80 1E 00 34 */ lwz r0, 0x34(r30) /* 8004E004 00049C64 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 8004E008 00049C68 41 82 00 1C */ beq lbl_8004E024 /* 8004E00C 00049C6C 80 7E 00 44 */ lwz r3, 0x44(r30) /* 8004E010 00049C70 80 9E 00 48 */ lwz r4, 0x48(r30) /* 8004E014 00049C74 48 18 D5 35 */ bl func_801DB548 /* 8004E018 00049C78 38 00 00 00 */ li r0, 0 /* 8004E01C 00049C7C 90 1E 00 44 */ stw r0, 0x44(r30) /* 8004E020 00049C80 90 1E 00 48 */ stw r0, 0x48(r30) lbl_8004E024: /* 8004E024 00049C84 38 00 00 00 */ li r0, 0 /* 8004E028 00049C88 90 1E 00 34 */ stw r0, 0x34(r30) /* 8004E02C 00049C8C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004E030 00049C90 83 C1 00 08 */ lwz r30, 8(r1) /* 8004E034 00049C94 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004E038 00049C98 7C 08 03 A6 */ mtlr r0 /* 8004E03C 00049C9C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004E040 00049CA0 4E 80 00 20 */ blr .global func_8004E044 func_8004E044: /* 8004E044 00049CA4 94 21 FE D0 */ stwu r1, -0x130(r1) /* 8004E048 00049CA8 7C 08 02 A6 */ mflr r0 /* 8004E04C 00049CAC 90 01 01 34 */ stw r0, 0x134(r1) /* 8004E050 00049CB0 39 61 01 30 */ addi r11, r1, 0x130 /* 8004E054 00049CB4 48 17 90 D5 */ bl _savegpr_27 /* 8004E058 00049CB8 3C A0 80 41 */ lis r5, lbl_8040AAF8@ha /* 8004E05C 00049CBC 7C 7B 1B 78 */ mr r27, r3 /* 8004E060 00049CC0 7C 86 23 78 */ mr r6, r4 /* 8004E064 00049CC4 38 61 00 10 */ addi r3, r1, 0x10 /* 8004E068 00049CC8 38 85 AA F8 */ addi r4, r5, lbl_8040AAF8@l /* 8004E06C 00049CCC 38 AD 81 90 */ addi r5, r13, lbl_8063D450-_SDA_BASE_ /* 8004E070 00049CD0 4C C6 31 82 */ crclr 6 /* 8004E074 00049CD4 48 17 EA 89 */ bl sprintf /* 8004E078 00049CD8 38 61 00 10 */ addi r3, r1, 0x10 /* 8004E07C 00049CDC 38 81 00 08 */ addi r4, r1, 8 /* 8004E080 00049CE0 48 18 EB 41 */ bl func_801DCBC0 /* 8004E084 00049CE4 2C 03 00 00 */ cmpwi r3, 0 /* 8004E088 00049CE8 7C 7E 1B 78 */ mr r30, r3 /* 8004E08C 00049CEC 40 82 00 0C */ bne lbl_8004E098 /* 8004E090 00049CF0 38 60 00 00 */ li r3, 0 /* 8004E094 00049CF4 48 00 00 BC */ b lbl_8004E150 lbl_8004E098: /* 8004E098 00049CF8 48 1B 8C F5 */ bl func_80206D8C /* 8004E09C 00049CFC 2C 03 00 00 */ cmpwi r3, 0 /* 8004E0A0 00049D00 7C 7D 1B 78 */ mr r29, r3 /* 8004E0A4 00049D04 40 82 00 14 */ bne lbl_8004E0B8 /* 8004E0A8 00049D08 7F C3 F3 78 */ mr r3, r30 /* 8004E0AC 00049D0C 48 18 CD F9 */ bl func_801DAEA4 /* 8004E0B0 00049D10 38 60 00 00 */ li r3, 0 /* 8004E0B4 00049D14 48 00 00 9C */ b lbl_8004E150 lbl_8004E0B8: /* 8004E0B8 00049D18 48 18 CA 71 */ bl func_801DAB28 /* 8004E0BC 00049D1C 2C 03 00 00 */ cmpwi r3, 0 /* 8004E0C0 00049D20 41 82 00 14 */ beq lbl_8004E0D4 /* 8004E0C4 00049D24 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004E0C8 00049D28 38 80 01 40 */ li r4, 0x140 /* 8004E0CC 00049D2C 48 18 CB C9 */ bl func_801DAC94 /* 8004E0D0 00049D30 48 00 00 08 */ b lbl_8004E0D8 lbl_8004E0D4: /* 8004E0D4 00049D34 38 60 00 00 */ li r3, 0 lbl_8004E0D8: /* 8004E0D8 00049D38 2C 03 00 00 */ cmpwi r3, 0 /* 8004E0DC 00049D3C 7C 7F 1B 78 */ mr r31, r3 /* 8004E0E0 00049D40 41 82 00 10 */ beq lbl_8004E0F0 /* 8004E0E4 00049D44 7F A4 EB 78 */ mr r4, r29 /* 8004E0E8 00049D48 48 1A B8 05 */ bl func_801F98EC /* 8004E0EC 00049D4C 7C 7F 1B 78 */ mr r31, r3 lbl_8004E0F0: /* 8004E0F0 00049D50 2C 1F 00 00 */ cmpwi r31, 0 /* 8004E0F4 00049D54 40 82 00 1C */ bne lbl_8004E110 /* 8004E0F8 00049D58 7F A3 EB 78 */ mr r3, r29 /* 8004E0FC 00049D5C 48 1B 8C F9 */ bl func_80206DF4 /* 8004E100 00049D60 7F C3 F3 78 */ mr r3, r30 /* 8004E104 00049D64 48 18 CD A1 */ bl func_801DAEA4 /* 8004E108 00049D68 38 60 00 00 */ li r3, 0 /* 8004E10C 00049D6C 48 00 00 44 */ b lbl_8004E150 lbl_8004E110: /* 8004E110 00049D70 80 1B 00 34 */ lwz r0, 0x34(r27) /* 8004E114 00049D74 7F 63 DB 78 */ mr r3, r27 /* 8004E118 00049D78 54 1C 07 7A */ rlwinm r28, r0, 0, 0x1d, 0x1d /* 8004E11C 00049D7C 4B FF FE 5D */ bl func_8004DF78 /* 8004E120 00049D80 80 BB 00 34 */ lwz r5, 0x34(r27) /* 8004E124 00049D84 63 83 00 03 */ ori r3, r28, 3 /* 8004E128 00049D88 38 80 1E DC */ li r4, 0x1edc /* 8004E12C 00049D8C 38 00 00 00 */ li r0, 0 /* 8004E130 00049D90 7C A5 1B 78 */ or r5, r5, r3 /* 8004E134 00049D94 93 DB 00 38 */ stw r30, 0x38(r27) /* 8004E138 00049D98 38 60 00 01 */ li r3, 1 /* 8004E13C 00049D9C 93 BB 00 3C */ stw r29, 0x3c(r27) /* 8004E140 00049DA0 93 FB 00 40 */ stw r31, 0x40(r27) /* 8004E144 00049DA4 90 BB 00 34 */ stw r5, 0x34(r27) /* 8004E148 00049DA8 90 9B 00 44 */ stw r4, 0x44(r27) /* 8004E14C 00049DAC 90 1B 00 48 */ stw r0, 0x48(r27) lbl_8004E150: /* 8004E150 00049DB0 39 61 01 30 */ addi r11, r1, 0x130 /* 8004E154 00049DB4 48 17 90 21 */ bl _restgpr_27 /* 8004E158 00049DB8 80 01 01 34 */ lwz r0, 0x134(r1) /* 8004E15C 00049DBC 7C 08 03 A6 */ mtlr r0 /* 8004E160 00049DC0 38 21 01 30 */ addi r1, r1, 0x130 /* 8004E164 00049DC4 4E 80 00 20 */ blr .global func_8004E168 func_8004E168: /* 8004E168 00049DC8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004E16C 00049DCC 7C 08 02 A6 */ mflr r0 /* 8004E170 00049DD0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004E174 00049DD4 54 A0 00 01 */ rlwinm. r0, r5, 0, 0, 0 /* 8004E178 00049DD8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004E17C 00049DDC 7C BF 2B 78 */ mr r31, r5 /* 8004E180 00049DE0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004E184 00049DE4 7C 9E 23 78 */ mr r30, r4 /* 8004E188 00049DE8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004E18C 00049DEC 7C 7D 1B 78 */ mr r29, r3 /* 8004E190 00049DF0 40 82 00 4C */ bne lbl_8004E1DC /* 8004E194 00049DF4 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c /* 8004E198 00049DF8 41 82 00 2C */ beq lbl_8004E1C4 /* 8004E19C 00049DFC 54 A0 07 FF */ clrlwi. r0, r5, 0x1f /* 8004E1A0 00049E00 54 BF 07 76 */ rlwinm r31, r5, 0, 0x1d, 0x1b /* 8004E1A4 00049E04 41 82 00 08 */ beq lbl_8004E1AC /* 8004E1A8 00049E08 63 FF 00 40 */ ori r31, r31, 0x40 lbl_8004E1AC: /* 8004E1AC 00049E0C 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e /* 8004E1B0 00049E10 41 82 00 08 */ beq lbl_8004E1B8 /* 8004E1B4 00049E14 63 FF 00 80 */ ori r31, r31, 0x80 lbl_8004E1B8: /* 8004E1B8 00049E18 57 E0 07 7B */ rlwinm. r0, r31, 0, 0x1d, 0x1d /* 8004E1BC 00049E1C 41 82 00 08 */ beq lbl_8004E1C4 /* 8004E1C0 00049E20 63 FF 01 00 */ ori r31, r31, 0x100 lbl_8004E1C4: /* 8004E1C4 00049E24 57 E0 07 FF */ clrlwi. r0, r31, 0x1f /* 8004E1C8 00049E28 40 82 00 08 */ bne lbl_8004E1D0 /* 8004E1CC 00049E2C 63 FF 00 09 */ ori r31, r31, 9 lbl_8004E1D0: /* 8004E1D0 00049E30 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e /* 8004E1D4 00049E34 40 82 00 08 */ bne lbl_8004E1DC /* 8004E1D8 00049E38 63 FF 00 12 */ ori r31, r31, 0x12 lbl_8004E1DC: /* 8004E1DC 00049E3C 2C 04 00 00 */ cmpwi r4, 0 /* 8004E1E0 00049E40 41 82 00 38 */ beq lbl_8004E218 /* 8004E1E4 00049E44 80 83 00 40 */ lwz r4, 0x40(r3) /* 8004E1E8 00049E48 2C 04 00 00 */ cmpwi r4, 0 /* 8004E1EC 00049E4C 41 82 00 2C */ beq lbl_8004E218 /* 8004E1F0 00049E50 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 8004E1F4 00049E54 2C 03 00 00 */ cmpwi r3, 0 /* 8004E1F8 00049E58 41 82 00 08 */ beq lbl_8004E200 /* 8004E1FC 00049E5C 48 1A 40 2D */ bl func_801F2228 lbl_8004E200: /* 8004E200 00049E60 80 BD 00 40 */ lwz r5, 0x40(r29) /* 8004E204 00049E64 7F C3 F3 78 */ mr r3, r30 /* 8004E208 00049E68 57 E4 04 3E */ clrlwi r4, r31, 0x10 /* 8004E20C 00049E6C 38 C0 00 00 */ li r6, 0 /* 8004E210 00049E70 38 E0 00 03 */ li r7, 3 /* 8004E214 00049E74 48 1A 3F 79 */ bl func_801F218C lbl_8004E218: /* 8004E218 00049E78 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004E21C 00049E7C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004E220 00049E80 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004E224 00049E84 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004E228 00049E88 7C 08 03 A6 */ mtlr r0 /* 8004E22C 00049E8C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004E230 00049E90 4E 80 00 20 */ blr .global func_8004E234 func_8004E234: /* 8004E234 00049E94 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004E238 00049E98 7C 08 02 A6 */ mflr r0 /* 8004E23C 00049E9C 90 01 00 34 */ stw r0, 0x34(r1) /* 8004E240 00049EA0 39 61 00 30 */ addi r11, r1, 0x30 /* 8004E244 00049EA4 48 17 8E DD */ bl _savegpr_25 /* 8004E248 00049EA8 54 A0 BE BE */ rlwinm r0, r5, 0x17, 0x1a, 0x1f /* 8004E24C 00049EAC 7C 79 1B 78 */ mr r25, r3 /* 8004E250 00049EB0 28 00 00 05 */ cmplwi r0, 5 /* 8004E254 00049EB4 7C 9A 23 78 */ mr r26, r4 /* 8004E258 00049EB8 7C DC 33 78 */ mr r28, r6 /* 8004E25C 00049EBC 41 82 00 0C */ beq lbl_8004E268 /* 8004E260 00049EC0 38 60 00 00 */ li r3, 0 /* 8004E264 00049EC4 48 00 00 D8 */ b lbl_8004E33C lbl_8004E268: /* 8004E268 00049EC8 54 A0 00 5E */ rlwinm r0, r5, 0, 1, 0xf /* 8004E26C 00049ECC 7F 43 D3 78 */ mr r3, r26 /* 8004E270 00049ED0 60 1B 0E 00 */ ori r27, r0, 0xe00 /* 8004E274 00049ED4 7F 64 DB 78 */ mr r4, r27 /* 8004E278 00049ED8 48 18 D2 45 */ bl func_801DB4BC /* 8004E27C 00049EDC 2C 03 00 00 */ cmpwi r3, 0 /* 8004E280 00049EE0 7C 7E 1B 78 */ mr r30, r3 /* 8004E284 00049EE4 40 82 00 0C */ bne lbl_8004E290 /* 8004E288 00049EE8 38 60 00 00 */ li r3, 0 /* 8004E28C 00049EEC 48 00 00 B0 */ b lbl_8004E33C lbl_8004E290: /* 8004E290 00049EF0 48 18 C8 99 */ bl func_801DAB28 /* 8004E294 00049EF4 2C 03 00 00 */ cmpwi r3, 0 /* 8004E298 00049EF8 41 82 00 14 */ beq lbl_8004E2AC /* 8004E29C 00049EFC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004E2A0 00049F00 38 80 01 40 */ li r4, 0x140 /* 8004E2A4 00049F04 48 18 C9 F1 */ bl func_801DAC94 /* 8004E2A8 00049F08 48 00 00 08 */ b lbl_8004E2B0 lbl_8004E2AC: /* 8004E2AC 00049F0C 38 60 00 00 */ li r3, 0 lbl_8004E2B0: /* 8004E2B0 00049F10 2C 03 00 00 */ cmpwi r3, 0 /* 8004E2B4 00049F14 7C 7F 1B 78 */ mr r31, r3 /* 8004E2B8 00049F18 41 82 00 10 */ beq lbl_8004E2C8 /* 8004E2BC 00049F1C 7F C4 F3 78 */ mr r4, r30 /* 8004E2C0 00049F20 48 1A B6 2D */ bl func_801F98EC /* 8004E2C4 00049F24 7C 7F 1B 78 */ mr r31, r3 lbl_8004E2C8: /* 8004E2C8 00049F28 2C 1F 00 00 */ cmpwi r31, 0 /* 8004E2CC 00049F2C 40 82 00 0C */ bne lbl_8004E2D8 /* 8004E2D0 00049F30 38 60 00 00 */ li r3, 0 /* 8004E2D4 00049F34 48 00 00 68 */ b lbl_8004E33C lbl_8004E2D8: /* 8004E2D8 00049F38 80 19 00 50 */ lwz r0, 0x50(r25) /* 8004E2DC 00049F3C 7F 23 CB 78 */ mr r3, r25 /* 8004E2E0 00049F40 90 1F 01 3C */ stw r0, 0x13c(r31) /* 8004E2E4 00049F44 80 19 00 34 */ lwz r0, 0x34(r25) /* 8004E2E8 00049F48 54 1D 07 7A */ rlwinm r29, r0, 0, 0x1d, 0x1d /* 8004E2EC 00049F4C 4B FF FC 8D */ bl func_8004DF78 /* 8004E2F0 00049F50 38 00 00 00 */ li r0, 0 /* 8004E2F4 00049F54 2C 1C 00 00 */ cmpwi r28, 0 /* 8004E2F8 00049F58 90 19 00 38 */ stw r0, 0x38(r25) /* 8004E2FC 00049F5C 93 D9 00 3C */ stw r30, 0x3c(r25) /* 8004E300 00049F60 93 F9 00 40 */ stw r31, 0x40(r25) /* 8004E304 00049F64 93 59 00 44 */ stw r26, 0x44(r25) /* 8004E308 00049F68 93 79 00 48 */ stw r27, 0x48(r25) /* 8004E30C 00049F6C 41 82 00 1C */ beq lbl_8004E328 /* 8004E310 00049F70 7F 43 D3 78 */ mr r3, r26 /* 8004E314 00049F74 7F 64 DB 78 */ mr r4, r27 /* 8004E318 00049F78 48 18 D1 E5 */ bl func_801DB4FC /* 8004E31C 00049F7C 80 19 00 34 */ lwz r0, 0x34(r25) /* 8004E320 00049F80 60 00 00 40 */ ori r0, r0, 0x40 /* 8004E324 00049F84 90 19 00 34 */ stw r0, 0x34(r25) lbl_8004E328: /* 8004E328 00049F88 80 99 00 34 */ lwz r4, 0x34(r25) /* 8004E32C 00049F8C 63 A0 00 01 */ ori r0, r29, 1 /* 8004E330 00049F90 38 60 00 01 */ li r3, 1 /* 8004E334 00049F94 7C 80 03 78 */ or r0, r4, r0 /* 8004E338 00049F98 90 19 00 34 */ stw r0, 0x34(r25) lbl_8004E33C: /* 8004E33C 00049F9C 39 61 00 30 */ addi r11, r1, 0x30 /* 8004E340 00049FA0 48 17 8E 2D */ bl _restgpr_25 /* 8004E344 00049FA4 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004E348 00049FA8 7C 08 03 A6 */ mtlr r0 /* 8004E34C 00049FAC 38 21 00 30 */ addi r1, r1, 0x30 /* 8004E350 00049FB0 4E 80 00 20 */ blr .global func_8004E354 func_8004E354: /* 8004E354 00049FB4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004E358 00049FB8 7C 08 02 A6 */ mflr r0 /* 8004E35C 00049FBC 3D 40 80 40 */ lis r10, lbl_80400004@ha /* 8004E360 00049FC0 90 01 00 34 */ stw r0, 0x34(r1) /* 8004E364 00049FC4 85 2A B7 78 */ lwzu r9, -0x4888(r10) /* 8004E368 00049FC8 80 63 00 40 */ lwz r3, 0x40(r3) /* 8004E36C 00049FCC 81 0A 00 04 */ lwz r8, lbl_80400004@l(r10) /* 8004E370 00049FD0 80 EA 00 08 */ lwz r7, 8(r10) /* 8004E374 00049FD4 2C 03 00 00 */ cmpwi r3, 0 /* 8004E378 00049FD8 80 CA 00 0C */ lwz r6, 0xc(r10) /* 8004E37C 00049FDC 80 AA 00 10 */ lwz r5, 0x10(r10) /* 8004E380 00049FE0 80 0A 00 14 */ lwz r0, 0x14(r10) /* 8004E384 00049FE4 91 21 00 18 */ stw r9, 0x18(r1) /* 8004E388 00049FE8 91 01 00 1C */ stw r8, 0x1c(r1) /* 8004E38C 00049FEC 90 E1 00 20 */ stw r7, 0x20(r1) /* 8004E390 00049FF0 90 C1 00 24 */ stw r6, 0x24(r1) /* 8004E394 00049FF4 90 A1 00 28 */ stw r5, 0x28(r1) /* 8004E398 00049FF8 90 01 00 2C */ stw r0, 0x2c(r1) /* 8004E39C 00049FFC 41 82 00 F0 */ beq lbl_8004E48C /* 8004E3A0 0004A000 2C 04 00 01 */ cmpwi r4, 1 /* 8004E3A4 0004A004 41 80 00 0C */ blt lbl_8004E3B0 /* 8004E3A8 0004A008 2C 04 00 06 */ cmpwi r4, 6 /* 8004E3AC 0004A00C 40 81 00 08 */ ble lbl_8004E3B4 lbl_8004E3B0: /* 8004E3B0 0004A010 38 80 00 03 */ li r4, 3 lbl_8004E3B4: /* 8004E3B4 0004A014 38 04 FF FF */ addi r0, r4, -1 /* 8004E3B8 0004A018 38 81 00 18 */ addi r4, r1, 0x18 /* 8004E3BC 0004A01C 54 00 10 3A */ slwi r0, r0, 2 /* 8004E3C0 0004A020 2C 03 00 00 */ cmpwi r3, 0 /* 8004E3C4 0004A024 7C 04 04 2E */ lfsx f0, r4, r0 /* 8004E3C8 0004A028 EC 01 00 32 */ fmuls f0, f1, f0 /* 8004E3CC 0004A02C D0 01 00 08 */ stfs f0, 8(r1) /* 8004E3D0 0004A030 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8004E3D4 0004A034 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004E3D8 0004A038 41 82 00 B4 */ beq lbl_8004E48C /* 8004E3DC 0004A03C D0 03 00 48 */ stfs f0, 0x48(r3) /* 8004E3E0 0004A040 C0 42 84 34 */ lfs f2, lbl_80640A34-_SDA2_BASE_(r2) /* 8004E3E4 0004A044 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8004E3E8 0004A048 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 8004E3EC 0004A04C D0 03 00 50 */ stfs f0, 0x50(r3) /* 8004E3F0 0004A050 40 80 00 2C */ bge lbl_8004E41C /* 8004E3F4 0004A054 C0 23 00 48 */ lfs f1, 0x48(r3) /* 8004E3F8 0004A058 C0 62 84 38 */ lfs f3, lbl_80640A38-_SDA2_BASE_(r2) /* 8004E3FC 0004A05C FC 01 18 40 */ fcmpo cr0, f1, f3 /* 8004E400 0004A060 40 81 00 1C */ ble lbl_8004E41C /* 8004E404 0004A064 C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004E408 0004A068 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004E40C 0004A06C 40 80 00 08 */ bge lbl_8004E414 /* 8004E410 0004A070 48 00 00 08 */ b lbl_8004E418 lbl_8004E414: /* 8004E414 0004A074 FC 60 10 90 */ fmr f3, f2 lbl_8004E418: /* 8004E418 0004A078 D0 63 00 48 */ stfs f3, 0x48(r3) lbl_8004E41C: /* 8004E41C 0004A07C C0 43 00 4C */ lfs f2, 0x4c(r3) /* 8004E420 0004A080 C0 22 84 34 */ lfs f1, lbl_80640A34-_SDA2_BASE_(r2) /* 8004E424 0004A084 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004E428 0004A088 40 80 00 28 */ bge lbl_8004E450 /* 8004E42C 0004A08C C0 62 84 38 */ lfs f3, lbl_80640A38-_SDA2_BASE_(r2) /* 8004E430 0004A090 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8004E434 0004A094 40 81 00 1C */ ble lbl_8004E450 /* 8004E438 0004A098 C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004E43C 0004A09C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004E440 0004A0A0 40 80 00 08 */ bge lbl_8004E448 /* 8004E444 0004A0A4 48 00 00 08 */ b lbl_8004E44C lbl_8004E448: /* 8004E448 0004A0A8 FC 60 08 90 */ fmr f3, f1 lbl_8004E44C: /* 8004E44C 0004A0AC D0 63 00 4C */ stfs f3, 0x4c(r3) lbl_8004E450: /* 8004E450 0004A0B0 C0 43 00 50 */ lfs f2, 0x50(r3) /* 8004E454 0004A0B4 C0 22 84 34 */ lfs f1, lbl_80640A34-_SDA2_BASE_(r2) /* 8004E458 0004A0B8 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 8004E45C 0004A0BC 40 80 00 28 */ bge lbl_8004E484 /* 8004E460 0004A0C0 C0 62 84 38 */ lfs f3, lbl_80640A38-_SDA2_BASE_(r2) /* 8004E464 0004A0C4 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 8004E468 0004A0C8 40 81 00 1C */ ble lbl_8004E484 /* 8004E46C 0004A0CC C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004E470 0004A0D0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 8004E474 0004A0D4 40 80 00 08 */ bge lbl_8004E47C /* 8004E478 0004A0D8 48 00 00 08 */ b lbl_8004E480 lbl_8004E47C: /* 8004E47C 0004A0DC FC 60 08 90 */ fmr f3, f1 lbl_8004E480: /* 8004E480 0004A0E0 D0 63 00 50 */ stfs f3, 0x50(r3) lbl_8004E484: /* 8004E484 0004A0E4 38 80 00 01 */ li r4, 1 /* 8004E488 0004A0E8 48 1A 42 31 */ bl func_801F26B8 lbl_8004E48C: /* 8004E48C 0004A0EC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004E490 0004A0F0 7C 08 03 A6 */ mtlr r0 /* 8004E494 0004A0F4 38 21 00 30 */ addi r1, r1, 0x30 /* 8004E498 0004A0F8 4E 80 00 20 */ blr .global func_8004E49C func_8004E49C: /* 8004E49C 0004A0FC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004E4A0 0004A100 3D 20 80 40 */ lis r9, lbl_80400004@ha /* 8004E4A4 0004A104 2C 03 00 01 */ cmpwi r3, 1 /* 8004E4A8 0004A108 85 09 B7 90 */ lwzu r8, -0x4870(r9) /* 8004E4AC 0004A10C 80 E9 00 04 */ lwz r7, lbl_80400004@l(r9) /* 8004E4B0 0004A110 80 C9 00 08 */ lwz r6, 8(r9) /* 8004E4B4 0004A114 80 A9 00 0C */ lwz r5, 0xc(r9) /* 8004E4B8 0004A118 80 89 00 10 */ lwz r4, 0x10(r9) /* 8004E4BC 0004A11C 80 09 00 14 */ lwz r0, 0x14(r9) /* 8004E4C0 0004A120 91 01 00 08 */ stw r8, 8(r1) /* 8004E4C4 0004A124 90 E1 00 0C */ stw r7, 0xc(r1) /* 8004E4C8 0004A128 90 C1 00 10 */ stw r6, 0x10(r1) /* 8004E4CC 0004A12C 90 A1 00 14 */ stw r5, 0x14(r1) /* 8004E4D0 0004A130 90 81 00 18 */ stw r4, 0x18(r1) /* 8004E4D4 0004A134 90 01 00 1C */ stw r0, 0x1c(r1) /* 8004E4D8 0004A138 41 80 00 0C */ blt lbl_8004E4E4 /* 8004E4DC 0004A13C 2C 03 00 06 */ cmpwi r3, 6 /* 8004E4E0 0004A140 40 81 00 08 */ ble lbl_8004E4E8 lbl_8004E4E4: /* 8004E4E4 0004A144 38 60 00 03 */ li r3, 3 lbl_8004E4E8: /* 8004E4E8 0004A148 38 03 FF FF */ addi r0, r3, -1 /* 8004E4EC 0004A14C 38 61 00 08 */ addi r3, r1, 8 /* 8004E4F0 0004A150 54 00 10 3A */ slwi r0, r0, 2 /* 8004E4F4 0004A154 7C 03 04 2E */ lfsx f0, r3, r0 /* 8004E4F8 0004A158 EC 21 00 32 */ fmuls f1, f1, f0 /* 8004E4FC 0004A15C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004E500 0004A160 4E 80 00 20 */ blr .global func_8004E504 func_8004E504: /* 8004E504 0004A164 80 84 00 40 */ lwz r4, 0x40(r4) /* 8004E508 0004A168 2C 04 00 00 */ cmpwi r4, 0 /* 8004E50C 0004A16C 41 82 00 20 */ beq lbl_8004E52C /* 8004E510 0004A170 C0 04 00 20 */ lfs f0, 0x20(r4) /* 8004E514 0004A174 D0 03 00 00 */ stfs f0, 0(r3) /* 8004E518 0004A178 C0 04 00 24 */ lfs f0, 0x24(r4) /* 8004E51C 0004A17C D0 03 00 04 */ stfs f0, 4(r3) /* 8004E520 0004A180 C0 04 00 28 */ lfs f0, 0x28(r4) /* 8004E524 0004A184 D0 03 00 08 */ stfs f0, 8(r3) /* 8004E528 0004A188 4E 80 00 20 */ blr lbl_8004E52C: /* 8004E52C 0004A18C C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004E530 0004A190 D0 03 00 00 */ stfs f0, 0(r3) /* 8004E534 0004A194 D0 03 00 04 */ stfs f0, 4(r3) /* 8004E538 0004A198 D0 03 00 08 */ stfs f0, 8(r3) /* 8004E53C 0004A19C 4E 80 00 20 */ blr .global func_8004E540 func_8004E540: /* 8004E540 0004A1A0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004E544 0004A1A4 7C 08 02 A6 */ mflr r0 /* 8004E548 0004A1A8 90 01 00 44 */ stw r0, 0x44(r1) /* 8004E54C 0004A1AC DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004E550 0004A1B0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004E554 0004A1B4 FF E0 08 90 */ fmr f31, f1 /* 8004E558 0004A1B8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8004E55C 0004A1BC 7C BF 2B 78 */ mr r31, r5 /* 8004E560 0004A1C0 93 C1 00 28 */ stw r30, 0x28(r1) /* 8004E564 0004A1C4 7C 9E 23 78 */ mr r30, r4 /* 8004E568 0004A1C8 93 A1 00 24 */ stw r29, 0x24(r1) /* 8004E56C 0004A1CC 7C 7D 1B 78 */ mr r29, r3 /* 8004E570 0004A1D0 7F A4 EB 78 */ mr r4, r29 /* 8004E574 0004A1D4 38 61 00 08 */ addi r3, r1, 8 /* 8004E578 0004A1D8 4B FF FF 8D */ bl func_8004E504 /* 8004E57C 0004A1DC C0 01 00 08 */ lfs f0, 8(r1) /* 8004E580 0004A1E0 38 9D 00 5C */ addi r4, r29, 0x5c /* 8004E584 0004A1E4 FC 20 F8 90 */ fmr f1, f31 /* 8004E588 0004A1E8 7F A3 EB 78 */ mr r3, r29 /* 8004E58C 0004A1EC D0 1D 00 5C */ stfs f0, 0x5c(r29) /* 8004E590 0004A1F0 7F C5 F3 78 */ mr r5, r30 /* 8004E594 0004A1F4 7C 86 23 78 */ mr r6, r4 /* 8004E598 0004A1F8 7F E7 FB 78 */ mr r7, r31 /* 8004E59C 0004A1FC C0 01 00 0C */ lfs f0, 0xc(r1) /* 8004E5A0 0004A200 D0 1D 00 60 */ stfs f0, 0x60(r29) /* 8004E5A4 0004A204 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8004E5A8 0004A208 D0 1D 00 64 */ stfs f0, 0x64(r29) /* 8004E5AC 0004A20C 48 00 1F 99 */ bl func_80050544 /* 8004E5B0 0004A210 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004E5B4 0004A214 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004E5B8 0004A218 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004E5BC 0004A21C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004E5C0 0004A220 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8004E5C4 0004A224 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8004E5C8 0004A228 7C 08 03 A6 */ mtlr r0 /* 8004E5CC 0004A22C 38 21 00 40 */ addi r1, r1, 0x40 /* 8004E5D0 0004A230 4E 80 00 20 */ blr .global func_8004E5D4 func_8004E5D4: /* 8004E5D4 0004A234 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004E5D8 0004A238 7C 08 02 A6 */ mflr r0 /* 8004E5DC 0004A23C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004E5E0 0004A240 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004E5E4 0004A244 7C 7F 1B 78 */ mr r31, r3 /* 8004E5E8 0004A248 C0 03 00 4C */ lfs f0, 0x4c(r3) /* 8004E5EC 0004A24C EC 00 08 28 */ fsubs f0, f0, f1 /* 8004E5F0 0004A250 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8004E5F4 0004A254 81 83 00 30 */ lwz r12, 0x30(r3) /* 8004E5F8 0004A258 81 8C 00 08 */ lwz r12, 8(r12) /* 8004E5FC 0004A25C 7D 89 03 A6 */ mtctr r12 /* 8004E600 0004A260 4E 80 04 21 */ bctrl /* 8004E604 0004A264 2C 03 00 00 */ cmpwi r3, 0 /* 8004E608 0004A268 41 82 00 30 */ beq lbl_8004E638 /* 8004E60C 0004A26C 80 7F 00 40 */ lwz r3, 0x40(r31) /* 8004E610 0004A270 2C 03 00 00 */ cmpwi r3, 0 /* 8004E614 0004A274 41 82 00 24 */ beq lbl_8004E638 /* 8004E618 0004A278 C0 1F 00 5C */ lfs f0, 0x5c(r31) /* 8004E61C 0004A27C 38 80 00 01 */ li r4, 1 /* 8004E620 0004A280 D0 03 00 20 */ stfs f0, 0x20(r3) /* 8004E624 0004A284 C0 1F 00 60 */ lfs f0, 0x60(r31) /* 8004E628 0004A288 D0 03 00 24 */ stfs f0, 0x24(r3) /* 8004E62C 0004A28C C0 1F 00 64 */ lfs f0, 0x64(r31) /* 8004E630 0004A290 D0 03 00 28 */ stfs f0, 0x28(r3) /* 8004E634 0004A294 48 1A 40 85 */ bl func_801F26B8 lbl_8004E638: /* 8004E638 0004A298 80 7F 00 34 */ lwz r3, 0x34(r31) /* 8004E63C 0004A29C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 8004E640 0004A2A0 41 82 00 24 */ beq lbl_8004E664 /* 8004E644 0004A2A4 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 8004E648 0004A2A8 41 82 00 1C */ beq lbl_8004E664 /* 8004E64C 0004A2AC C0 3F 00 4C */ lfs f1, 0x4c(r31) /* 8004E650 0004A2B0 C0 02 84 30 */ lfs f0, lbl_80640A30-_SDA2_BASE_(r2) /* 8004E654 0004A2B4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004E658 0004A2B8 40 80 00 0C */ bge lbl_8004E664 /* 8004E65C 0004A2BC 7F E3 FB 78 */ mr r3, r31 /* 8004E660 0004A2C0 4B FF F9 19 */ bl func_8004DF78 lbl_8004E664: /* 8004E664 0004A2C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004E668 0004A2C8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004E66C 0004A2CC 7C 08 03 A6 */ mtlr r0 /* 8004E670 0004A2D0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004E674 0004A2D4 4E 80 00 20 */ blr .global func_8004E678 func_8004E678: /* 8004E678 0004A2D8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004E67C 0004A2DC 7C 08 02 A6 */ mflr r0 /* 8004E680 0004A2E0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004E684 0004A2E4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004E688 0004A2E8 7C BF 2B 78 */ mr r31, r5 /* 8004E68C 0004A2EC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004E690 0004A2F0 7C 9E 23 78 */ mr r30, r4 /* 8004E694 0004A2F4 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004E698 0004A2F8 7C 7D 1B 78 */ mr r29, r3 /* 8004E69C 0004A2FC 80 03 00 40 */ lwz r0, 0x40(r3) /* 8004E6A0 0004A300 2C 00 00 00 */ cmpwi r0, 0 /* 8004E6A4 0004A304 41 82 00 C0 */ beq lbl_8004E764 /* 8004E6A8 0004A308 4B FE 49 E1 */ bl func_80033088 /* 8004E6AC 0004A30C 80 9D 00 40 */ lwz r4, 0x40(r29) /* 8004E6B0 0004A310 80 84 01 38 */ lwz r4, 0x138(r4) /* 8004E6B4 0004A314 2C 04 00 00 */ cmpwi r4, 0 /* 8004E6B8 0004A318 41 82 00 10 */ beq lbl_8004E6C8 /* 8004E6BC 0004A31C A0 04 01 48 */ lhz r0, 0x148(r4) /* 8004E6C0 0004A320 60 00 00 08 */ ori r0, r0, 8 /* 8004E6C4 0004A324 B0 04 01 48 */ sth r0, 0x148(r4) lbl_8004E6C8: /* 8004E6C8 0004A328 2C 1E 00 00 */ cmpwi r30, 0 /* 8004E6CC 0004A32C 41 82 00 1C */ beq lbl_8004E6E8 /* 8004E6D0 0004A330 2C 1F 00 00 */ cmpwi r31, 0 /* 8004E6D4 0004A334 41 82 00 14 */ beq lbl_8004E6E8 /* 8004E6D8 0004A338 80 7D 00 40 */ lwz r3, 0x40(r29) /* 8004E6DC 0004A33C 38 00 00 00 */ li r0, 0 /* 8004E6E0 0004A340 90 03 01 2C */ stw r0, 0x12c(r3) /* 8004E6E4 0004A344 48 00 00 80 */ b lbl_8004E764 lbl_8004E6E8: /* 8004E6E8 0004A348 2C 1E 00 00 */ cmpwi r30, 0 /* 8004E6EC 0004A34C 41 82 00 2C */ beq lbl_8004E718 /* 8004E6F0 0004A350 2C 03 00 00 */ cmpwi r3, 0 /* 8004E6F4 0004A354 41 82 00 0C */ beq lbl_8004E700 /* 8004E6F8 0004A358 38 80 00 00 */ li r4, 0 /* 8004E6FC 0004A35C 4B FE 54 81 */ bl func_80033B7C lbl_8004E700: /* 8004E700 0004A360 2C 03 00 00 */ cmpwi r3, 0 /* 8004E704 0004A364 41 82 00 60 */ beq lbl_8004E764 /* 8004E708 0004A368 4B FE 72 69 */ bl func_80035970 /* 8004E70C 0004A36C 80 9D 00 40 */ lwz r4, 0x40(r29) /* 8004E710 0004A370 90 64 01 2C */ stw r3, 0x12c(r4) /* 8004E714 0004A374 48 00 00 50 */ b lbl_8004E764 lbl_8004E718: /* 8004E718 0004A378 2C 1F 00 00 */ cmpwi r31, 0 /* 8004E71C 0004A37C 41 82 00 2C */ beq lbl_8004E748 /* 8004E720 0004A380 2C 03 00 00 */ cmpwi r3, 0 /* 8004E724 0004A384 41 82 00 0C */ beq lbl_8004E730 /* 8004E728 0004A388 38 80 00 01 */ li r4, 1 /* 8004E72C 0004A38C 4B FE 54 51 */ bl func_80033B7C lbl_8004E730: /* 8004E730 0004A390 2C 03 00 00 */ cmpwi r3, 0 /* 8004E734 0004A394 41 82 00 30 */ beq lbl_8004E764 /* 8004E738 0004A398 4B FE 72 39 */ bl func_80035970 /* 8004E73C 0004A39C 80 9D 00 40 */ lwz r4, 0x40(r29) /* 8004E740 0004A3A0 90 64 01 2C */ stw r3, 0x12c(r4) /* 8004E744 0004A3A4 48 00 00 20 */ b lbl_8004E764 lbl_8004E748: /* 8004E748 0004A3A8 80 7D 00 40 */ lwz r3, 0x40(r29) /* 8004E74C 0004A3AC 80 63 01 38 */ lwz r3, 0x138(r3) /* 8004E750 0004A3B0 2C 03 00 00 */ cmpwi r3, 0 /* 8004E754 0004A3B4 41 82 00 10 */ beq lbl_8004E764 /* 8004E758 0004A3B8 A0 03 01 48 */ lhz r0, 0x148(r3) /* 8004E75C 0004A3BC 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 8004E760 0004A3C0 B0 03 01 48 */ sth r0, 0x148(r3) lbl_8004E764: /* 8004E764 0004A3C4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004E768 0004A3C8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004E76C 0004A3CC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004E770 0004A3D0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004E774 0004A3D4 7C 08 03 A6 */ mtlr r0 /* 8004E778 0004A3D8 38 21 00 20 */ addi r1, r1, 0x20 /* 8004E77C 0004A3DC 4E 80 00 20 */ blr .global func_8004E780 func_8004E780: /* 8004E780 0004A3E0 80 03 00 34 */ lwz r0, 0x34(r3) /* 8004E784 0004A3E4 90 83 00 54 */ stw r4, 0x54(r3) /* 8004E788 0004A3E8 60 00 00 10 */ ori r0, r0, 0x10 /* 8004E78C 0004A3EC 90 03 00 34 */ stw r0, 0x34(r3) /* 8004E790 0004A3F0 4E 80 00 20 */ blr .global func_8004E794 func_8004E794: /* 8004E794 0004A3F4 80 03 00 34 */ lwz r0, 0x34(r3) /* 8004E798 0004A3F8 80 83 00 40 */ lwz r4, 0x40(r3) /* 8004E79C 0004A3FC 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 8004E7A0 0004A400 2C 04 00 00 */ cmpwi r4, 0 /* 8004E7A4 0004A404 90 03 00 34 */ stw r0, 0x34(r3) /* 8004E7A8 0004A408 4D 82 00 20 */ beqlr /* 8004E7AC 0004A40C 80 64 01 38 */ lwz r3, 0x138(r4) /* 8004E7B0 0004A410 2C 03 00 00 */ cmpwi r3, 0 /* 8004E7B4 0004A414 4D 82 00 20 */ beqlr /* 8004E7B8 0004A418 A0 03 01 48 */ lhz r0, 0x148(r3) /* 8004E7BC 0004A41C 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 8004E7C0 0004A420 B0 03 01 48 */ sth r0, 0x148(r3) /* 8004E7C4 0004A424 4E 80 00 20 */ blr .global func_8004E7C8 func_8004E7C8: /* 8004E7C8 0004A428 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004E7CC 0004A42C 7C 08 02 A6 */ mflr r0 /* 8004E7D0 0004A430 90 01 00 14 */ stw r0, 0x14(r1) /* 8004E7D4 0004A434 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004E7D8 0004A438 7C 7F 1B 78 */ mr r31, r3 /* 8004E7DC 0004A43C 80 83 00 40 */ lwz r4, 0x40(r3) /* 8004E7E0 0004A440 2C 04 00 00 */ cmpwi r4, 0 /* 8004E7E4 0004A444 41 82 00 64 */ beq lbl_8004E848 /* 8004E7E8 0004A448 80 04 01 04 */ lwz r0, 0x104(r4) /* 8004E7EC 0004A44C 60 00 00 01 */ ori r0, r0, 1 /* 8004E7F0 0004A450 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 8004E7F4 0004A454 90 04 01 04 */ stw r0, 0x104(r4) /* 8004E7F8 0004A458 D0 24 01 08 */ stfs f1, 0x108(r4) /* 8004E7FC 0004A45C 80 63 00 40 */ lwz r3, 0x40(r3) /* 8004E800 0004A460 80 63 01 38 */ lwz r3, 0x138(r3) /* 8004E804 0004A464 48 1B 90 3D */ bl func_80207840 /* 8004E808 0004A468 80 1F 00 34 */ lwz r0, 0x34(r31) /* 8004E80C 0004A46C D0 3F 00 4C */ stfs f1, 0x4c(r31) /* 8004E810 0004A470 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8004E814 0004A474 41 82 00 20 */ beq lbl_8004E834 /* 8004E818 0004A478 80 7F 00 40 */ lwz r3, 0x40(r31) /* 8004E81C 0004A47C 80 63 01 38 */ lwz r3, 0x138(r3) /* 8004E820 0004A480 2C 03 00 00 */ cmpwi r3, 0 /* 8004E824 0004A484 41 82 00 10 */ beq lbl_8004E834 /* 8004E828 0004A488 A0 03 01 48 */ lhz r0, 0x148(r3) /* 8004E82C 0004A48C 60 00 00 20 */ ori r0, r0, 0x20 /* 8004E830 0004A490 B0 03 01 48 */ sth r0, 0x148(r3) lbl_8004E834: /* 8004E834 0004A494 80 7F 00 34 */ lwz r3, 0x34(r31) /* 8004E838 0004A498 38 00 00 00 */ li r0, 0 /* 8004E83C 0004A49C 90 1F 00 58 */ stw r0, 0x58(r31) /* 8004E840 0004A4A0 60 60 00 08 */ ori r0, r3, 8 /* 8004E844 0004A4A4 90 1F 00 34 */ stw r0, 0x34(r31) lbl_8004E848: /* 8004E848 0004A4A8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004E84C 0004A4AC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004E850 0004A4B0 7C 08 03 A6 */ mtlr r0 /* 8004E854 0004A4B4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004E858 0004A4B8 4E 80 00 20 */ blr .global func_8004E85C func_8004E85C: /* 8004E85C 0004A4BC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004E860 0004A4C0 7C 08 02 A6 */ mflr r0 /* 8004E864 0004A4C4 90 01 00 34 */ stw r0, 0x34(r1) /* 8004E868 0004A4C8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8004E86C 0004A4CC 7C DF 33 78 */ mr r31, r6 /* 8004E870 0004A4D0 93 C1 00 28 */ stw r30, 0x28(r1) /* 8004E874 0004A4D4 7C 9E 23 78 */ mr r30, r4 /* 8004E878 0004A4D8 93 A1 00 24 */ stw r29, 0x24(r1) /* 8004E87C 0004A4DC 7C 7D 1B 78 */ mr r29, r3 /* 8004E880 0004A4E0 80 03 00 34 */ lwz r0, 0x34(r3) /* 8004E884 0004A4E4 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 8004E888 0004A4E8 41 82 00 7C */ beq lbl_8004E904 /* 8004E88C 0004A4EC 4B FF 6D 05 */ bl func_80045590 /* 8004E890 0004A4F0 80 8D A4 C8 */ lwz r4, lbl_8063F788-_SDA_BASE_(r13) /* 8004E894 0004A4F4 80 BD 00 58 */ lwz r5, 0x58(r29) /* 8004E898 0004A4F8 80 04 00 88 */ lwz r0, 0x88(r4) /* 8004E89C 0004A4FC 7C 05 00 40 */ cmplw r5, r0 /* 8004E8A0 0004A500 41 82 00 64 */ beq lbl_8004E904 /* 8004E8A4 0004A504 7F C4 F3 78 */ mr r4, r30 /* 8004E8A8 0004A508 4B FF 79 E5 */ bl func_8004628C /* 8004E8AC 0004A50C 2C 03 00 00 */ cmpwi r3, 0 /* 8004E8B0 0004A510 41 82 00 54 */ beq lbl_8004E904 /* 8004E8B4 0004A514 80 6D A4 C8 */ lwz r3, lbl_8063F788-_SDA_BASE_(r13) /* 8004E8B8 0004A518 80 03 00 88 */ lwz r0, 0x88(r3) /* 8004E8BC 0004A51C 90 1D 00 58 */ stw r0, 0x58(r29) /* 8004E8C0 0004A520 4B FF EF 4D */ bl func_8004D80C /* 8004E8C4 0004A524 C0 3F 00 04 */ lfs f1, 4(r31) /* 8004E8C8 0004A528 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004E8CC 0004A52C C0 02 84 3C */ lfs f0, lbl_80640A3C-_SDA2_BASE_(r2) /* 8004E8D0 0004A530 38 C1 00 08 */ addi r6, r1, 8 /* 8004E8D4 0004A534 C0 7F 00 08 */ lfs f3, 8(r31) /* 8004E8D8 0004A538 38 63 35 10 */ addi r3, r3, 0x3510 /* 8004E8DC 0004A53C C0 5F 00 00 */ lfs f2, 0(r31) /* 8004E8E0 0004A540 EC 21 00 28 */ fsubs f1, f1, f0 /* 8004E8E4 0004A544 C0 02 84 40 */ lfs f0, lbl_80640A40-_SDA2_BASE_(r2) /* 8004E8E8 0004A548 D0 41 00 10 */ stfs f2, 0x10(r1) /* 8004E8EC 0004A54C D0 21 00 14 */ stfs f1, 0x14(r1) /* 8004E8F0 0004A550 D0 61 00 18 */ stfs f3, 0x18(r1) /* 8004E8F4 0004A554 D0 01 00 08 */ stfs f0, 8(r1) /* 8004E8F8 0004A558 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8004E8FC 0004A55C 80 9D 00 54 */ lwz r4, 0x54(r29) /* 8004E900 0004A560 48 00 08 D9 */ bl func_8004F1D8 lbl_8004E904: /* 8004E904 0004A564 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004E908 0004A568 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004E90C 0004A56C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8004E910 0004A570 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8004E914 0004A574 7C 08 03 A6 */ mtlr r0 /* 8004E918 0004A578 38 21 00 30 */ addi r1, r1, 0x30 /* 8004E91C 0004A57C 4E 80 00 20 */ blr .global func_8004E920 func_8004E920: /* 8004E920 0004A580 3C 60 80 05 */ lis r3, lbl_8004E92C@ha /* 8004E924 0004A584 38 63 E9 2C */ addi r3, r3, lbl_8004E92C@l /* 8004E928 0004A588 48 1B 6B B8 */ b func_802054E0 lbl_8004E92C: /* 8004E92C 0004A58C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004E930 0004A590 7C 08 02 A6 */ mflr r0 /* 8004E934 0004A594 2C 03 00 00 */ cmpwi r3, 0 /* 8004E938 0004A598 90 01 00 24 */ stw r0, 0x24(r1) /* 8004E93C 0004A59C DB E1 00 18 */ stfd f31, 0x18(r1) /* 8004E940 0004A5A0 FF E0 08 90 */ fmr f31, f1 /* 8004E944 0004A5A4 93 E1 00 14 */ stw r31, 0x14(r1) /* 8004E948 0004A5A8 7C DF 33 78 */ mr r31, r6 /* 8004E94C 0004A5AC 93 C1 00 10 */ stw r30, 0x10(r1) /* 8004E950 0004A5B0 7C BE 2B 78 */ mr r30, r5 /* 8004E954 0004A5B4 93 A1 00 0C */ stw r29, 0xc(r1) /* 8004E958 0004A5B8 7C 9D 23 78 */ mr r29, r4 /* 8004E95C 0004A5BC 93 81 00 08 */ stw r28, 8(r1) /* 8004E960 0004A5C0 7C 7C 1B 78 */ mr r28, r3 /* 8004E964 0004A5C4 40 82 00 0C */ bne lbl_8004E970 /* 8004E968 0004A5C8 38 60 00 00 */ li r3, 0 /* 8004E96C 0004A5CC 48 00 00 40 */ b lbl_8004E9AC lbl_8004E970: /* 8004E970 0004A5D0 4B FF EE 9D */ bl func_8004D80C /* 8004E974 0004A5D4 2C 03 00 00 */ cmpwi r3, 0 /* 8004E978 0004A5D8 41 82 00 30 */ beq lbl_8004E9A8 /* 8004E97C 0004A5DC 2C 1C 00 00 */ cmpwi r28, 0 /* 8004E980 0004A5E0 41 82 00 28 */ beq lbl_8004E9A8 /* 8004E984 0004A5E4 80 9C 01 3C */ lwz r4, 0x13c(r28) /* 8004E988 0004A5E8 4B FF F4 A1 */ bl func_8004DE28 /* 8004E98C 0004A5EC 2C 03 00 00 */ cmpwi r3, 0 /* 8004E990 0004A5F0 41 82 00 18 */ beq lbl_8004E9A8 /* 8004E994 0004A5F4 FC 20 F8 90 */ fmr f1, f31 /* 8004E998 0004A5F8 7F A4 EB 78 */ mr r4, r29 /* 8004E99C 0004A5FC 7F C5 F3 78 */ mr r5, r30 /* 8004E9A0 0004A600 7F E6 FB 78 */ mr r6, r31 /* 8004E9A4 0004A604 4B FF FE B9 */ bl func_8004E85C lbl_8004E9A8: /* 8004E9A8 0004A608 38 60 00 00 */ li r3, 0 lbl_8004E9AC: /* 8004E9AC 0004A60C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004E9B0 0004A610 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8004E9B4 0004A614 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8004E9B8 0004A618 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8004E9BC 0004A61C 83 A1 00 0C */ lwz r29, 0xc(r1) /* 8004E9C0 0004A620 83 81 00 08 */ lwz r28, 8(r1) /* 8004E9C4 0004A624 7C 08 03 A6 */ mtlr r0 /* 8004E9C8 0004A628 38 21 00 20 */ addi r1, r1, 0x20 /* 8004E9CC 0004A62C 4E 80 00 20 */ blr .global func_8004E9D0 func_8004E9D0: /* 8004E9D0 0004A630 38 A0 00 01 */ li r5, 1 /* 8004E9D4 0004A634 38 6D 98 38 */ addi r3, r13, lbl_8063EAF8-_SDA_BASE_ /* 8004E9D8 0004A638 38 80 00 04 */ li r4, 4 /* 8004E9DC 0004A63C 38 00 00 00 */ li r0, 0 /* 8004E9E0 0004A640 98 AD 98 38 */ stb r5, lbl_8063EAF8-_SDA_BASE_(r13) /* 8004E9E4 0004A644 B0 83 00 02 */ sth r4, 2(r3) /* 8004E9E8 0004A648 98 03 00 04 */ stb r0, 4(r3) /* 8004E9EC 0004A64C 4E 80 00 20 */ blr .global func_8004E9F0 func_8004E9F0: /* 8004E9F0 0004A650 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004E9F4 0004A654 7C 08 02 A6 */ mflr r0 /* 8004E9F8 0004A658 90 01 00 14 */ stw r0, 0x14(r1) /* 8004E9FC 0004A65C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004EA00 0004A660 7C 7F 1B 78 */ mr r31, r3 /* 8004EA04 0004A664 38 63 00 14 */ addi r3, r3, 0x14 /* 8004EA08 0004A668 48 00 21 2D */ bl func_80050B34 /* 8004EA0C 0004A66C C0 02 84 48 */ lfs f0, lbl_80640A48-_SDA2_BASE_(r2) /* 8004EA10 0004A670 38 00 00 00 */ li r0, 0 /* 8004EA14 0004A674 90 1F 00 00 */ stw r0, 0(r31) /* 8004EA18 0004A678 7F E3 FB 78 */ mr r3, r31 /* 8004EA1C 0004A67C D0 1F 00 04 */ stfs f0, 4(r31) /* 8004EA20 0004A680 D0 1F 00 08 */ stfs f0, 8(r31) /* 8004EA24 0004A684 D0 1F 00 0C */ stfs f0, 0xc(r31) /* 8004EA28 0004A688 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 8004EA2C 0004A68C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004EA30 0004A690 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004EA34 0004A694 7C 08 03 A6 */ mtlr r0 /* 8004EA38 0004A698 38 21 00 10 */ addi r1, r1, 0x10 /* 8004EA3C 0004A69C 4E 80 00 20 */ blr .global func_8004EA40 func_8004EA40: /* 8004EA40 0004A6A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004EA44 0004A6A4 7C 08 02 A6 */ mflr r0 /* 8004EA48 0004A6A8 2C 03 00 00 */ cmpwi r3, 0 /* 8004EA4C 0004A6AC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004EA50 0004A6B0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004EA54 0004A6B4 7C 9F 23 78 */ mr r31, r4 /* 8004EA58 0004A6B8 93 C1 00 08 */ stw r30, 8(r1) /* 8004EA5C 0004A6BC 7C 7E 1B 78 */ mr r30, r3 /* 8004EA60 0004A6C0 41 82 00 18 */ beq lbl_8004EA78 /* 8004EA64 0004A6C4 48 00 00 31 */ bl func_8004EA94 /* 8004EA68 0004A6C8 2C 1F 00 00 */ cmpwi r31, 0 /* 8004EA6C 0004A6CC 40 81 00 0C */ ble lbl_8004EA78 /* 8004EA70 0004A6D0 7F C3 F3 78 */ mr r3, r30 /* 8004EA74 0004A6D4 48 18 C0 45 */ bl func_801DAAB8 lbl_8004EA78: /* 8004EA78 0004A6D8 7F C3 F3 78 */ mr r3, r30 /* 8004EA7C 0004A6DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004EA80 0004A6E0 83 C1 00 08 */ lwz r30, 8(r1) /* 8004EA84 0004A6E4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004EA88 0004A6E8 7C 08 03 A6 */ mtlr r0 /* 8004EA8C 0004A6EC 38 21 00 10 */ addi r1, r1, 0x10 /* 8004EA90 0004A6F0 4E 80 00 20 */ blr .global func_8004EA94 func_8004EA94: /* 8004EA94 0004A6F4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004EA98 0004A6F8 7C 08 02 A6 */ mflr r0 /* 8004EA9C 0004A6FC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004EAA0 0004A700 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004EAA4 0004A704 7C 7F 1B 78 */ mr r31, r3 /* 8004EAA8 0004A708 80 03 00 00 */ lwz r0, 0(r3) /* 8004EAAC 0004A70C 2C 00 00 00 */ cmpwi r0, 0 /* 8004EAB0 0004A710 41 82 00 14 */ beq lbl_8004EAC4 /* 8004EAB4 0004A714 7C 03 03 78 */ mr r3, r0 /* 8004EAB8 0004A718 48 19 1E 4D */ bl func_801E0904 /* 8004EABC 0004A71C 38 00 00 00 */ li r0, 0 /* 8004EAC0 0004A720 90 1F 00 00 */ stw r0, 0(r31) lbl_8004EAC4: /* 8004EAC4 0004A724 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004EAC8 0004A728 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004EACC 0004A72C 7C 08 03 A6 */ mtlr r0 /* 8004EAD0 0004A730 38 21 00 10 */ addi r1, r1, 0x10 /* 8004EAD4 0004A734 4E 80 00 20 */ blr .global func_8004EAD8 func_8004EAD8: /* 8004EAD8 0004A738 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004EADC 0004A73C 3C E0 43 30 */ lis r7, 0x4330 /* 8004EAE0 0004A740 88 04 00 00 */ lbz r0, 0(r4) /* 8004EAE4 0004A744 88 C4 00 01 */ lbz r6, 1(r4) /* 8004EAE8 0004A748 90 01 00 0C */ stw r0, 0xc(r1) /* 8004EAEC 0004A74C C8 82 84 50 */ lfd f4, lbl_80640A50-_SDA2_BASE_(r2) /* 8004EAF0 0004A750 90 E1 00 08 */ stw r7, 8(r1) /* 8004EAF4 0004A754 88 64 00 02 */ lbz r3, 2(r4) /* 8004EAF8 0004A758 C8 01 00 08 */ lfd f0, 8(r1) /* 8004EAFC 0004A75C 90 E1 00 10 */ stw r7, 0x10(r1) /* 8004EB00 0004A760 EC 60 20 28 */ fsubs f3, f0, f4 /* 8004EB04 0004A764 88 04 00 03 */ lbz r0, 3(r4) /* 8004EB08 0004A768 90 C1 00 14 */ stw r6, 0x14(r1) /* 8004EB0C 0004A76C C8 01 00 10 */ lfd f0, 0x10(r1) /* 8004EB10 0004A770 90 61 00 0C */ stw r3, 0xc(r1) /* 8004EB14 0004A774 EC 40 20 28 */ fsubs f2, f0, f4 /* 8004EB18 0004A778 90 01 00 14 */ stw r0, 0x14(r1) /* 8004EB1C 0004A77C C8 21 00 08 */ lfd f1, 8(r1) /* 8004EB20 0004A780 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8004EB24 0004A784 EC 21 20 28 */ fsubs f1, f1, f4 /* 8004EB28 0004A788 D0 65 00 00 */ stfs f3, 0(r5) /* 8004EB2C 0004A78C EC 00 20 28 */ fsubs f0, f0, f4 /* 8004EB30 0004A790 D0 45 00 04 */ stfs f2, 4(r5) /* 8004EB34 0004A794 D0 25 00 08 */ stfs f1, 8(r5) /* 8004EB38 0004A798 D0 05 00 0C */ stfs f0, 0xc(r5) /* 8004EB3C 0004A79C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004EB40 0004A7A0 4E 80 00 20 */ blr .global func_8004EB44 func_8004EB44: /* 8004EB44 0004A7A4 C0 04 00 00 */ lfs f0, 0(r4) /* 8004EB48 0004A7A8 C0 44 00 04 */ lfs f2, 4(r4) /* 8004EB4C 0004A7AC C0 24 00 08 */ lfs f1, 8(r4) /* 8004EB50 0004A7B0 FC 60 00 1E */ fctiwz f3, f0 /* 8004EB54 0004A7B4 C0 04 00 0C */ lfs f0, 0xc(r4) /* 8004EB58 0004A7B8 FC 40 10 1E */ fctiwz f2, f2 /* 8004EB5C 0004A7BC FC 20 08 1E */ fctiwz f1, f1 /* 8004EB60 0004A7C0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004EB64 0004A7C4 FC 00 00 1E */ fctiwz f0, f0 /* 8004EB68 0004A7C8 D8 61 00 08 */ stfd f3, 8(r1) /* 8004EB6C 0004A7CC D8 41 00 10 */ stfd f2, 0x10(r1) /* 8004EB70 0004A7D0 80 C1 00 0C */ lwz r6, 0xc(r1) /* 8004EB74 0004A7D4 D8 21 00 18 */ stfd f1, 0x18(r1) /* 8004EB78 0004A7D8 80 81 00 14 */ lwz r4, 0x14(r1) /* 8004EB7C 0004A7DC D8 01 00 20 */ stfd f0, 0x20(r1) /* 8004EB80 0004A7E0 80 61 00 1C */ lwz r3, 0x1c(r1) /* 8004EB84 0004A7E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004EB88 0004A7E8 98 C5 00 00 */ stb r6, 0(r5) /* 8004EB8C 0004A7EC 98 85 00 01 */ stb r4, 1(r5) /* 8004EB90 0004A7F0 98 65 00 02 */ stb r3, 2(r5) /* 8004EB94 0004A7F4 98 05 00 03 */ stb r0, 3(r5) /* 8004EB98 0004A7F8 38 21 00 30 */ addi r1, r1, 0x30 /* 8004EB9C 0004A7FC 4E 80 00 20 */ blr .global func_8004EBA0 func_8004EBA0: /* 8004EBA0 0004A800 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004EBA4 0004A804 7C 08 02 A6 */ mflr r0 /* 8004EBA8 0004A808 38 A3 00 04 */ addi r5, r3, 4 /* 8004EBAC 0004A80C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004EBB0 0004A810 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004EBB4 0004A814 7C 9F 23 78 */ mr r31, r4 /* 8004EBB8 0004A818 93 C1 00 08 */ stw r30, 8(r1) /* 8004EBBC 0004A81C 7C 7E 1B 78 */ mr r30, r3 /* 8004EBC0 0004A820 4B FF FF 19 */ bl func_8004EAD8 /* 8004EBC4 0004A824 80 7E 00 00 */ lwz r3, 0(r30) /* 8004EBC8 0004A828 2C 03 00 00 */ cmpwi r3, 0 /* 8004EBCC 0004A82C 40 82 00 20 */ bne lbl_8004EBEC /* 8004EBD0 0004A830 7F E3 FB 78 */ mr r3, r31 /* 8004EBD4 0004A834 38 80 00 00 */ li r4, 0 /* 8004EBD8 0004A838 38 A0 00 00 */ li r5, 0 /* 8004EBDC 0004A83C 38 C0 00 00 */ li r6, 0 /* 8004EBE0 0004A840 48 19 1C 31 */ bl func_801E0810 /* 8004EBE4 0004A844 90 7E 00 00 */ stw r3, 0(r30) /* 8004EBE8 0004A848 48 00 00 0C */ b lbl_8004EBF4 lbl_8004EBEC: /* 8004EBEC 0004A84C 7F E4 FB 78 */ mr r4, r31 /* 8004EBF0 0004A850 48 19 1D ED */ bl func_801E09DC lbl_8004EBF4: /* 8004EBF4 0004A854 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004EBF8 0004A858 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004EBFC 0004A85C 83 C1 00 08 */ lwz r30, 8(r1) /* 8004EC00 0004A860 7C 08 03 A6 */ mtlr r0 /* 8004EC04 0004A864 38 21 00 10 */ addi r1, r1, 0x10 /* 8004EC08 0004A868 4E 80 00 20 */ blr .global func_8004EC0C func_8004EC0C: /* 8004EC0C 0004A86C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004EC10 0004A870 7C 08 02 A6 */ mflr r0 /* 8004EC14 0004A874 90 01 00 44 */ stw r0, 0x44(r1) /* 8004EC18 0004A878 DB E1 00 38 */ stfd f31, 0x38(r1) /* 8004EC1C 0004A87C FF E0 08 90 */ fmr f31, f1 /* 8004EC20 0004A880 93 E1 00 34 */ stw r31, 0x34(r1) /* 8004EC24 0004A884 7C BF 2B 78 */ mr r31, r5 /* 8004EC28 0004A888 93 C1 00 30 */ stw r30, 0x30(r1) /* 8004EC2C 0004A88C 7C 9E 23 78 */ mr r30, r4 /* 8004EC30 0004A890 93 A1 00 2C */ stw r29, 0x2c(r1) /* 8004EC34 0004A894 7C 7D 1B 78 */ mr r29, r3 /* 8004EC38 0004A898 80 03 00 00 */ lwz r0, 0(r3) /* 8004EC3C 0004A89C 2C 00 00 00 */ cmpwi r0, 0 /* 8004EC40 0004A8A0 40 82 00 30 */ bne lbl_8004EC70 /* 8004EC44 0004A8A4 38 00 00 00 */ li r0, 0 /* 8004EC48 0004A8A8 38 61 00 08 */ addi r3, r1, 8 /* 8004EC4C 0004A8AC 98 01 00 08 */ stb r0, 8(r1) /* 8004EC50 0004A8B0 38 80 00 00 */ li r4, 0 /* 8004EC54 0004A8B4 38 A0 00 00 */ li r5, 0 /* 8004EC58 0004A8B8 38 C0 00 00 */ li r6, 0 /* 8004EC5C 0004A8BC 98 01 00 09 */ stb r0, 9(r1) /* 8004EC60 0004A8C0 98 01 00 0A */ stb r0, 0xa(r1) /* 8004EC64 0004A8C4 98 01 00 0B */ stb r0, 0xb(r1) /* 8004EC68 0004A8C8 48 19 1B A9 */ bl func_801E0810 /* 8004EC6C 0004A8CC 90 7D 00 00 */ stw r3, 0(r29) lbl_8004EC70: /* 8004EC70 0004A8D0 80 7D 00 00 */ lwz r3, 0(r29) /* 8004EC74 0004A8D4 38 81 00 08 */ addi r4, r1, 8 /* 8004EC78 0004A8D8 48 19 1D 01 */ bl func_801E0978 /* 8004EC7C 0004A8DC 7F A3 EB 78 */ mr r3, r29 /* 8004EC80 0004A8E0 7F C4 F3 78 */ mr r4, r30 /* 8004EC84 0004A8E4 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004EC88 0004A8E8 4B FF FE 51 */ bl func_8004EAD8 /* 8004EC8C 0004A8EC 7F A3 EB 78 */ mr r3, r29 /* 8004EC90 0004A8F0 38 81 00 08 */ addi r4, r1, 8 /* 8004EC94 0004A8F4 38 BD 00 04 */ addi r5, r29, 4 /* 8004EC98 0004A8F8 4B FF FE 41 */ bl func_8004EAD8 /* 8004EC9C 0004A8FC FC 20 F8 90 */ fmr f1, f31 /* 8004ECA0 0004A900 38 9D 00 04 */ addi r4, r29, 4 /* 8004ECA4 0004A904 7C 86 23 78 */ mr r6, r4 /* 8004ECA8 0004A908 7F E7 FB 78 */ mr r7, r31 /* 8004ECAC 0004A90C 38 7D 00 14 */ addi r3, r29, 0x14 /* 8004ECB0 0004A910 38 A1 00 10 */ addi r5, r1, 0x10 /* 8004ECB4 0004A914 48 00 1E 99 */ bl func_80050B4C /* 8004ECB8 0004A918 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004ECBC 0004A91C CB E1 00 38 */ lfd f31, 0x38(r1) /* 8004ECC0 0004A920 83 E1 00 34 */ lwz r31, 0x34(r1) /* 8004ECC4 0004A924 83 C1 00 30 */ lwz r30, 0x30(r1) /* 8004ECC8 0004A928 83 A1 00 2C */ lwz r29, 0x2c(r1) /* 8004ECCC 0004A92C 7C 08 03 A6 */ mtlr r0 /* 8004ECD0 0004A930 38 21 00 40 */ addi r1, r1, 0x40 /* 8004ECD4 0004A934 4E 80 00 20 */ blr .global func_8004ECD8 func_8004ECD8: /* 8004ECD8 0004A938 38 63 00 14 */ addi r3, r3, 0x14 /* 8004ECDC 0004A93C 48 00 1F 04 */ b func_80050BE0 .global func_8004ECE0 func_8004ECE0: /* 8004ECE0 0004A940 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004ECE4 0004A944 7C 08 02 A6 */ mflr r0 /* 8004ECE8 0004A948 90 01 00 24 */ stw r0, 0x24(r1) /* 8004ECEC 0004A94C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004ECF0 0004A950 7C 7F 1B 78 */ mr r31, r3 /* 8004ECF4 0004A954 80 03 00 00 */ lwz r0, 0(r3) /* 8004ECF8 0004A958 2C 00 00 00 */ cmpwi r0, 0 /* 8004ECFC 0004A95C 41 82 00 3C */ beq lbl_8004ED38 /* 8004ED00 0004A960 81 83 00 4C */ lwz r12, 0x4c(r3) /* 8004ED04 0004A964 81 8C 00 08 */ lwz r12, 8(r12) /* 8004ED08 0004A968 7D 89 03 A6 */ mtctr r12 /* 8004ED0C 0004A96C 38 63 00 14 */ addi r3, r3, 0x14 /* 8004ED10 0004A970 4E 80 04 21 */ bctrl /* 8004ED14 0004A974 2C 03 00 00 */ cmpwi r3, 0 /* 8004ED18 0004A978 41 82 00 20 */ beq lbl_8004ED38 /* 8004ED1C 0004A97C 7F E3 FB 78 */ mr r3, r31 /* 8004ED20 0004A980 38 9F 00 04 */ addi r4, r31, 4 /* 8004ED24 0004A984 38 A1 00 08 */ addi r5, r1, 8 /* 8004ED28 0004A988 4B FF FE 1D */ bl func_8004EB44 /* 8004ED2C 0004A98C 80 7F 00 00 */ lwz r3, 0(r31) /* 8004ED30 0004A990 38 81 00 08 */ addi r4, r1, 8 /* 8004ED34 0004A994 48 19 1C A9 */ bl func_801E09DC lbl_8004ED38: /* 8004ED38 0004A998 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004ED3C 0004A99C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004ED40 0004A9A0 7C 08 03 A6 */ mtlr r0 /* 8004ED44 0004A9A4 38 21 00 20 */ addi r1, r1, 0x20 /* 8004ED48 0004A9A8 4E 80 00 20 */ blr lbl_8004ED4C: /* 8004ED4C 0004A9AC 38 00 00 00 */ li r0, 0 /* 8004ED50 0004A9B0 90 03 00 04 */ stw r0, 4(r3) /* 8004ED54 0004A9B4 98 03 00 00 */ stb r0, 0(r3) /* 8004ED58 0004A9B8 4E 80 00 20 */ blr lbl_8004ED5C: /* 8004ED5C 0004A9BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004ED60 0004A9C0 7C 08 02 A6 */ mflr r0 /* 8004ED64 0004A9C4 2C 03 00 00 */ cmpwi r3, 0 /* 8004ED68 0004A9C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8004ED6C 0004A9CC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004ED70 0004A9D0 7C 9F 23 78 */ mr r31, r4 /* 8004ED74 0004A9D4 93 C1 00 08 */ stw r30, 8(r1) /* 8004ED78 0004A9D8 7C 7E 1B 78 */ mr r30, r3 /* 8004ED7C 0004A9DC 41 82 00 18 */ beq lbl_8004ED94 /* 8004ED80 0004A9E0 48 00 00 31 */ bl func_8004EDB0 /* 8004ED84 0004A9E4 2C 1F 00 00 */ cmpwi r31, 0 /* 8004ED88 0004A9E8 40 81 00 0C */ ble lbl_8004ED94 /* 8004ED8C 0004A9EC 7F C3 F3 78 */ mr r3, r30 /* 8004ED90 0004A9F0 48 18 BD 29 */ bl func_801DAAB8 lbl_8004ED94: /* 8004ED94 0004A9F4 7F C3 F3 78 */ mr r3, r30 /* 8004ED98 0004A9F8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004ED9C 0004A9FC 83 C1 00 08 */ lwz r30, 8(r1) /* 8004EDA0 0004AA00 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004EDA4 0004AA04 7C 08 03 A6 */ mtlr r0 /* 8004EDA8 0004AA08 38 21 00 10 */ addi r1, r1, 0x10 /* 8004EDAC 0004AA0C 4E 80 00 20 */ blr .global func_8004EDB0 func_8004EDB0: /* 8004EDB0 0004AA10 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004EDB4 0004AA14 7C 08 02 A6 */ mflr r0 /* 8004EDB8 0004AA18 90 01 00 24 */ stw r0, 0x24(r1) /* 8004EDBC 0004AA1C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004EDC0 0004AA20 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004EDC4 0004AA24 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004EDC8 0004AA28 7C 7D 1B 78 */ mr r29, r3 /* 8004EDCC 0004AA2C 83 C3 00 04 */ lwz r30, 4(r3) /* 8004EDD0 0004AA30 2C 1E 00 00 */ cmpwi r30, 0 /* 8004EDD4 0004AA34 41 82 00 70 */ beq lbl_8004EE44 /* 8004EDD8 0004AA38 88 1E 00 08 */ lbz r0, 8(r30) /* 8004EDDC 0004AA3C 2C 00 00 00 */ cmpwi r0, 0 /* 8004EDE0 0004AA40 41 82 00 3C */ beq lbl_8004EE1C /* 8004EDE4 0004AA44 83 FE 00 04 */ lwz r31, 4(r30) /* 8004EDE8 0004AA48 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004EDEC 0004AA4C 48 1E C2 6D */ bl func_8023B058 /* 8004EDF0 0004AA50 2C 03 00 00 */ cmpwi r3, 0 /* 8004EDF4 0004AA54 41 82 00 0C */ beq lbl_8004EE00 /* 8004EDF8 0004AA58 7F E4 FB 78 */ mr r4, r31 /* 8004EDFC 0004AA5C 48 1E C6 25 */ bl func_8023B420 lbl_8004EE00: /* 8004EE00 0004AA60 81 9E 00 0C */ lwz r12, 0xc(r30) /* 8004EE04 0004AA64 7F C3 F3 78 */ mr r3, r30 /* 8004EE08 0004AA68 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8004EE0C 0004AA6C 7D 89 03 A6 */ mtctr r12 /* 8004EE10 0004AA70 4E 80 04 21 */ bctrl /* 8004EE14 0004AA74 38 00 00 00 */ li r0, 0 /* 8004EE18 0004AA78 98 1E 00 08 */ stb r0, 8(r30) lbl_8004EE1C: /* 8004EE1C 0004AA7C 80 7D 00 04 */ lwz r3, 4(r29) /* 8004EE20 0004AA80 2C 03 00 00 */ cmpwi r3, 0 /* 8004EE24 0004AA84 41 82 00 18 */ beq lbl_8004EE3C /* 8004EE28 0004AA88 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004EE2C 0004AA8C 38 80 00 01 */ li r4, 1 /* 8004EE30 0004AA90 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004EE34 0004AA94 7D 89 03 A6 */ mtctr r12 /* 8004EE38 0004AA98 4E 80 04 21 */ bctrl lbl_8004EE3C: /* 8004EE3C 0004AA9C 38 00 00 00 */ li r0, 0 /* 8004EE40 0004AAA0 90 1D 00 04 */ stw r0, 4(r29) lbl_8004EE44: /* 8004EE44 0004AAA4 38 00 00 00 */ li r0, 0 /* 8004EE48 0004AAA8 98 1D 00 00 */ stb r0, 0(r29) /* 8004EE4C 0004AAAC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004EE50 0004AAB0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004EE54 0004AAB4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004EE58 0004AAB8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004EE5C 0004AABC 7C 08 03 A6 */ mtlr r0 /* 8004EE60 0004AAC0 38 21 00 20 */ addi r1, r1, 0x20 /* 8004EE64 0004AAC4 4E 80 00 20 */ blr .global func_8004EE68 func_8004EE68: /* 8004EE68 0004AAC8 88 63 00 00 */ lbz r3, 0(r3) /* 8004EE6C 0004AACC 4E 80 00 20 */ blr .global func_8004EE70 func_8004EE70: /* 8004EE70 0004AAD0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004EE74 0004AAD4 7C 08 02 A6 */ mflr r0 /* 8004EE78 0004AAD8 90 01 00 44 */ stw r0, 0x44(r1) /* 8004EE7C 0004AADC DB E1 00 30 */ stfd f31, 0x30(r1) /* 8004EE80 0004AAE0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 8004EE84 0004AAE4 FF E0 08 90 */ fmr f31, f1 /* 8004EE88 0004AAE8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8004EE8C 0004AAEC 93 C1 00 28 */ stw r30, 0x28(r1) /* 8004EE90 0004AAF0 7C FE 3B 78 */ mr r30, r7 /* 8004EE94 0004AAF4 93 A1 00 24 */ stw r29, 0x24(r1) /* 8004EE98 0004AAF8 7C DD 33 78 */ mr r29, r6 /* 8004EE9C 0004AAFC 93 81 00 20 */ stw r28, 0x20(r1) /* 8004EEA0 0004AB00 7C 7C 1B 78 */ mr r28, r3 /* 8004EEA4 0004AB04 7C 83 23 78 */ mr r3, r4 /* 8004EEA8 0004AB08 7C A4 2B 78 */ mr r4, r5 /* 8004EEAC 0004AB0C 48 18 C6 11 */ bl func_801DB4BC /* 8004EEB0 0004AB10 2C 03 00 00 */ cmpwi r3, 0 /* 8004EEB4 0004AB14 7C 7F 1B 78 */ mr r31, r3 /* 8004EEB8 0004AB18 40 82 00 0C */ bne lbl_8004EEC4 /* 8004EEBC 0004AB1C 38 60 00 00 */ li r3, 0 /* 8004EEC0 0004AB20 48 00 00 FC */ b lbl_8004EFBC lbl_8004EEC4: /* 8004EEC4 0004AB24 7F 83 E3 78 */ mr r3, r28 /* 8004EEC8 0004AB28 4B FF FE E9 */ bl func_8004EDB0 /* 8004EECC 0004AB2C 48 18 BC 5D */ bl func_801DAB28 /* 8004EED0 0004AB30 2C 03 00 00 */ cmpwi r3, 0 /* 8004EED4 0004AB34 41 82 00 14 */ beq lbl_8004EEE8 /* 8004EED8 0004AB38 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004EEDC 0004AB3C 38 80 00 78 */ li r4, 0x78 /* 8004EEE0 0004AB40 48 18 BD B5 */ bl func_801DAC94 /* 8004EEE4 0004AB44 48 00 00 08 */ b lbl_8004EEEC lbl_8004EEE8: /* 8004EEE8 0004AB48 38 60 00 00 */ li r3, 0 lbl_8004EEEC: /* 8004EEEC 0004AB4C 2C 03 00 00 */ cmpwi r3, 0 /* 8004EEF0 0004AB50 41 82 00 0C */ beq lbl_8004EEFC /* 8004EEF4 0004AB54 7F E4 FB 78 */ mr r4, r31 /* 8004EEF8 0004AB58 48 1D 0C 4D */ bl func_8021FB44 lbl_8004EEFC: /* 8004EEFC 0004AB5C 2C 03 00 00 */ cmpwi r3, 0 /* 8004EF00 0004AB60 90 7C 00 04 */ stw r3, 4(r28) /* 8004EF04 0004AB64 40 82 00 0C */ bne lbl_8004EF10 /* 8004EF08 0004AB68 38 60 00 00 */ li r3, 0 /* 8004EF0C 0004AB6C 48 00 00 B0 */ b lbl_8004EFBC lbl_8004EF10: /* 8004EF10 0004AB70 C0 1D 00 00 */ lfs f0, 0(r29) /* 8004EF14 0004AB74 38 81 00 08 */ addi r4, r1, 8 /* 8004EF18 0004AB78 C0 3D 00 04 */ lfs f1, 4(r29) /* 8004EF1C 0004AB7C D0 03 00 14 */ stfs f0, 0x14(r3) /* 8004EF20 0004AB80 C0 1D 00 08 */ lfs f0, 8(r29) /* 8004EF24 0004AB84 D0 23 00 18 */ stfs f1, 0x18(r3) /* 8004EF28 0004AB88 C0 22 84 58 */ lfs f1, lbl_80640A58-_SDA2_BASE_(r2) /* 8004EF2C 0004AB8C D0 03 00 1C */ stfs f0, 0x1c(r3) /* 8004EF30 0004AB90 C0 02 84 5C */ lfs f0, lbl_80640A5C-_SDA2_BASE_(r2) /* 8004EF34 0004AB94 D0 21 00 08 */ stfs f1, 8(r1) /* 8004EF38 0004AB98 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8004EF3C 0004AB9C D0 21 00 10 */ stfs f1, 0x10(r1) /* 8004EF40 0004ABA0 80 7C 00 04 */ lwz r3, 4(r28) /* 8004EF44 0004ABA4 48 1D 15 C1 */ bl func_80220504 /* 8004EF48 0004ABA8 C0 02 84 58 */ lfs f0, lbl_80640A58-_SDA2_BASE_(r2) /* 8004EF4C 0004ABAC 80 7C 00 04 */ lwz r3, 4(r28) /* 8004EF50 0004ABB0 C0 3E 00 00 */ lfs f1, 0(r30) /* 8004EF54 0004ABB4 D0 03 00 44 */ stfs f0, 0x44(r3) /* 8004EF58 0004ABB8 C0 1E 00 04 */ lfs f0, 4(r30) /* 8004EF5C 0004ABBC 80 7C 00 04 */ lwz r3, 4(r28) /* 8004EF60 0004ABC0 D0 23 00 48 */ stfs f1, 0x48(r3) /* 8004EF64 0004ABC4 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 8004EF68 0004ABC8 80 7C 00 04 */ lwz r3, 4(r28) /* 8004EF6C 0004ABCC D3 E3 00 74 */ stfs f31, 0x74(r3) /* 8004EF70 0004ABD0 83 FC 00 04 */ lwz r31, 4(r28) /* 8004EF74 0004ABD4 81 9F 00 0C */ lwz r12, 0xc(r31) /* 8004EF78 0004ABD8 7F E3 FB 78 */ mr r3, r31 /* 8004EF7C 0004ABDC 81 8C 00 08 */ lwz r12, 8(r12) /* 8004EF80 0004ABE0 7D 89 03 A6 */ mtctr r12 /* 8004EF84 0004ABE4 4E 80 04 21 */ bctrl /* 8004EF88 0004ABE8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8004EF8C 0004ABEC 98 7F 00 08 */ stb r3, 8(r31) /* 8004EF90 0004ABF0 41 82 00 20 */ beq lbl_8004EFB0 /* 8004EF94 0004ABF4 83 FF 00 04 */ lwz r31, 4(r31) /* 8004EF98 0004ABF8 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004EF9C 0004ABFC 48 1E C0 BD */ bl func_8023B058 /* 8004EFA0 0004AC00 2C 03 00 00 */ cmpwi r3, 0 /* 8004EFA4 0004AC04 41 82 00 0C */ beq lbl_8004EFB0 /* 8004EFA8 0004AC08 7F E4 FB 78 */ mr r4, r31 /* 8004EFAC 0004AC0C 48 1E C4 0D */ bl func_8023B3B8 lbl_8004EFB0: /* 8004EFB0 0004AC10 38 00 00 01 */ li r0, 1 /* 8004EFB4 0004AC14 38 60 00 01 */ li r3, 1 /* 8004EFB8 0004AC18 98 1C 00 00 */ stb r0, 0(r28) lbl_8004EFBC: /* 8004EFBC 0004AC1C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 8004EFC0 0004AC20 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004EFC4 0004AC24 CB E1 00 30 */ lfd f31, 0x30(r1) /* 8004EFC8 0004AC28 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8004EFCC 0004AC2C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8004EFD0 0004AC30 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8004EFD4 0004AC34 83 81 00 20 */ lwz r28, 0x20(r1) /* 8004EFD8 0004AC38 7C 08 03 A6 */ mtlr r0 /* 8004EFDC 0004AC3C 38 21 00 40 */ addi r1, r1, 0x40 /* 8004EFE0 0004AC40 4E 80 00 20 */ blr .global func_8004EFE4 func_8004EFE4: /* 8004EFE4 0004AC44 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004EFE8 0004AC48 7C 08 02 A6 */ mflr r0 /* 8004EFEC 0004AC4C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004EFF0 0004AC50 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004EFF4 0004AC54 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004EFF8 0004AC58 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004EFFC 0004AC5C 7C 7D 1B 78 */ mr r29, r3 /* 8004F000 0004AC60 4B FF FE 69 */ bl func_8004EE68 /* 8004F004 0004AC64 2C 03 00 00 */ cmpwi r3, 0 /* 8004F008 0004AC68 41 82 00 98 */ beq lbl_8004F0A0 /* 8004F00C 0004AC6C 83 DD 00 04 */ lwz r30, 4(r29) /* 8004F010 0004AC70 C0 02 84 58 */ lfs f0, lbl_80640A58-_SDA2_BASE_(r2) /* 8004F014 0004AC74 C0 3E 00 70 */ lfs f1, 0x70(r30) /* 8004F018 0004AC78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8004F01C 0004AC7C 4C 40 13 82 */ cror 2, 0, 2 /* 8004F020 0004AC80 40 82 00 80 */ bne lbl_8004F0A0 /* 8004F024 0004AC84 38 00 00 00 */ li r0, 0 /* 8004F028 0004AC88 2C 1E 00 00 */ cmpwi r30, 0 /* 8004F02C 0004AC8C 98 1D 00 00 */ stb r0, 0(r29) /* 8004F030 0004AC90 41 82 00 70 */ beq lbl_8004F0A0 /* 8004F034 0004AC94 88 1E 00 08 */ lbz r0, 8(r30) /* 8004F038 0004AC98 2C 00 00 00 */ cmpwi r0, 0 /* 8004F03C 0004AC9C 41 82 00 3C */ beq lbl_8004F078 /* 8004F040 0004ACA0 83 FE 00 04 */ lwz r31, 4(r30) /* 8004F044 0004ACA4 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f /* 8004F048 0004ACA8 48 1E C0 11 */ bl func_8023B058 /* 8004F04C 0004ACAC 2C 03 00 00 */ cmpwi r3, 0 /* 8004F050 0004ACB0 41 82 00 0C */ beq lbl_8004F05C /* 8004F054 0004ACB4 7F E4 FB 78 */ mr r4, r31 /* 8004F058 0004ACB8 48 1E C3 C9 */ bl func_8023B420 lbl_8004F05C: /* 8004F05C 0004ACBC 81 9E 00 0C */ lwz r12, 0xc(r30) /* 8004F060 0004ACC0 7F C3 F3 78 */ mr r3, r30 /* 8004F064 0004ACC4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 8004F068 0004ACC8 7D 89 03 A6 */ mtctr r12 /* 8004F06C 0004ACCC 4E 80 04 21 */ bctrl /* 8004F070 0004ACD0 38 00 00 00 */ li r0, 0 /* 8004F074 0004ACD4 98 1E 00 08 */ stb r0, 8(r30) lbl_8004F078: /* 8004F078 0004ACD8 80 7D 00 04 */ lwz r3, 4(r29) /* 8004F07C 0004ACDC 2C 03 00 00 */ cmpwi r3, 0 /* 8004F080 0004ACE0 41 82 00 18 */ beq lbl_8004F098 /* 8004F084 0004ACE4 81 83 00 0C */ lwz r12, 0xc(r3) /* 8004F088 0004ACE8 38 80 00 01 */ li r4, 1 /* 8004F08C 0004ACEC 81 8C 00 18 */ lwz r12, 0x18(r12) /* 8004F090 0004ACF0 7D 89 03 A6 */ mtctr r12 /* 8004F094 0004ACF4 4E 80 04 21 */ bctrl lbl_8004F098: /* 8004F098 0004ACF8 38 00 00 00 */ li r0, 0 /* 8004F09C 0004ACFC 90 1D 00 04 */ stw r0, 4(r29) lbl_8004F0A0: /* 8004F0A0 0004AD00 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004F0A4 0004AD04 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004F0A8 0004AD08 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004F0AC 0004AD0C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004F0B0 0004AD10 7C 08 03 A6 */ mtlr r0 /* 8004F0B4 0004AD14 38 21 00 20 */ addi r1, r1, 0x20 /* 8004F0B8 0004AD18 4E 80 00 20 */ blr .global func_8004F0BC func_8004F0BC: /* 8004F0BC 0004AD1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F0C0 0004AD20 7C 08 02 A6 */ mflr r0 /* 8004F0C4 0004AD24 3C 80 80 05 */ lis r4, lbl_8004ED4C@ha /* 8004F0C8 0004AD28 3C A0 80 05 */ lis r5, lbl_8004ED5C@ha /* 8004F0CC 0004AD2C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F0D0 0004AD30 38 C0 00 08 */ li r6, 8 /* 8004F0D4 0004AD34 38 84 ED 4C */ addi r4, r4, lbl_8004ED4C@l /* 8004F0D8 0004AD38 38 A5 ED 5C */ addi r5, r5, lbl_8004ED5C@l /* 8004F0DC 0004AD3C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F0E0 0004AD40 7C 7F 1B 78 */ mr r31, r3 /* 8004F0E4 0004AD44 38 E0 00 20 */ li r7, 0x20 /* 8004F0E8 0004AD48 48 17 7D 81 */ bl __construct_array /* 8004F0EC 0004AD4C 38 7F 01 00 */ addi r3, r31, 0x100 /* 8004F0F0 0004AD50 38 80 00 00 */ li r4, 0 /* 8004F0F4 0004AD54 38 A0 00 80 */ li r5, 0x80 /* 8004F0F8 0004AD58 4B FB 50 0D */ bl memset /* 8004F0FC 0004AD5C 7F E3 FB 78 */ mr r3, r31 /* 8004F100 0004AD60 38 80 00 00 */ li r4, 0 /* 8004F104 0004AD64 38 A0 01 00 */ li r5, 0x100 /* 8004F108 0004AD68 4B FB 4F FD */ bl memset /* 8004F10C 0004AD6C C0 02 84 60 */ lfs f0, lbl_80640A60-_SDA2_BASE_(r2) /* 8004F110 0004AD70 7F E3 FB 78 */ mr r3, r31 /* 8004F114 0004AD74 D0 1F 01 80 */ stfs f0, 0x180(r31) /* 8004F118 0004AD78 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F11C 0004AD7C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F120 0004AD80 7C 08 03 A6 */ mtlr r0 /* 8004F124 0004AD84 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F128 0004AD88 4E 80 00 20 */ blr .global func_8004F12C func_8004F12C: /* 8004F12C 0004AD8C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F130 0004AD90 7C 08 02 A6 */ mflr r0 /* 8004F134 0004AD94 38 80 00 00 */ li r4, 0 /* 8004F138 0004AD98 38 A0 00 80 */ li r5, 0x80 /* 8004F13C 0004AD9C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F140 0004ADA0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F144 0004ADA4 7C 7F 1B 78 */ mr r31, r3 /* 8004F148 0004ADA8 38 63 01 00 */ addi r3, r3, 0x100 /* 8004F14C 0004ADAC 4B FB 4F B9 */ bl memset /* 8004F150 0004ADB0 7F E3 FB 78 */ mr r3, r31 /* 8004F154 0004ADB4 38 80 00 00 */ li r4, 0 /* 8004F158 0004ADB8 38 A0 01 00 */ li r5, 0x100 /* 8004F15C 0004ADBC 4B FB 4F A9 */ bl memset /* 8004F160 0004ADC0 C0 02 84 60 */ lfs f0, lbl_80640A60-_SDA2_BASE_(r2) /* 8004F164 0004ADC4 3C A0 11 9C */ lis r5, 0x119C0C00@ha /* 8004F168 0004ADC8 7F E3 FB 78 */ mr r3, r31 /* 8004F16C 0004ADCC 38 80 00 0C */ li r4, 0xc /* 8004F170 0004ADD0 D0 1F 01 80 */ stfs f0, 0x180(r31) /* 8004F174 0004ADD4 38 A5 0C 00 */ addi r5, r5, 0x119C0C00@l /* 8004F178 0004ADD8 48 00 00 19 */ bl func_8004F190 /* 8004F17C 0004ADDC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F180 0004ADE0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F184 0004ADE4 7C 08 03 A6 */ mtlr r0 /* 8004F188 0004ADE8 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F18C 0004ADEC 4E 80 00 20 */ blr .global func_8004F190 func_8004F190: /* 8004F190 0004ADF0 38 00 00 10 */ li r0, 0x10 /* 8004F194 0004ADF4 7C 66 1B 78 */ mr r6, r3 /* 8004F198 0004ADF8 38 E0 00 00 */ li r7, 0 /* 8004F19C 0004ADFC 7C 09 03 A6 */ mtctr r0 lbl_8004F1A0: /* 8004F1A0 0004AE00 80 06 01 00 */ lwz r0, 0x100(r6) /* 8004F1A4 0004AE04 2C 00 00 00 */ cmpwi r0, 0 /* 8004F1A8 0004AE08 40 82 00 1C */ bne lbl_8004F1C4 /* 8004F1AC 0004AE0C 54 E0 18 38 */ slwi r0, r7, 3 /* 8004F1B0 0004AE10 7C C3 02 14 */ add r6, r3, r0 /* 8004F1B4 0004AE14 38 67 00 01 */ addi r3, r7, 1 /* 8004F1B8 0004AE18 90 86 01 00 */ stw r4, 0x100(r6) /* 8004F1BC 0004AE1C 90 A6 01 04 */ stw r5, 0x104(r6) /* 8004F1C0 0004AE20 4E 80 00 20 */ blr lbl_8004F1C4: /* 8004F1C4 0004AE24 38 C6 00 08 */ addi r6, r6, 8 /* 8004F1C8 0004AE28 38 E7 00 01 */ addi r7, r7, 1 /* 8004F1CC 0004AE2C 42 00 FF D4 */ bdnz lbl_8004F1A0 /* 8004F1D0 0004AE30 38 60 00 00 */ li r3, 0 /* 8004F1D4 0004AE34 4E 80 00 20 */ blr .global func_8004F1D8 func_8004F1D8: /* 8004F1D8 0004AE38 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004F1DC 0004AE3C 7C 08 02 A6 */ mflr r0 /* 8004F1E0 0004AE40 90 01 00 24 */ stw r0, 0x24(r1) /* 8004F1E4 0004AE44 39 61 00 20 */ addi r11, r1, 0x20 /* 8004F1E8 0004AE48 48 17 7F 3D */ bl _savegpr_26 /* 8004F1EC 0004AE4C 2C 04 00 00 */ cmpwi r4, 0 /* 8004F1F0 0004AE50 7C 7A 1B 78 */ mr r26, r3 /* 8004F1F4 0004AE54 7C BB 2B 78 */ mr r27, r5 /* 8004F1F8 0004AE58 7C DC 33 78 */ mr r28, r6 /* 8004F1FC 0004AE5C 41 82 00 14 */ beq lbl_8004F210 /* 8004F200 0004AE60 28 04 00 0F */ cmplwi r4, 0xf /* 8004F204 0004AE64 41 80 00 0C */ blt lbl_8004F210 /* 8004F208 0004AE68 38 60 00 00 */ li r3, 0 /* 8004F20C 0004AE6C 48 00 00 80 */ b lbl_8004F28C lbl_8004F210: /* 8004F210 0004AE70 38 04 FF FF */ addi r0, r4, -1 /* 8004F214 0004AE74 54 00 18 38 */ slwi r0, r0, 3 /* 8004F218 0004AE78 7F E3 02 14 */ add r31, r3, r0 /* 8004F21C 0004AE7C 80 7F 01 00 */ lwz r3, 0x100(r31) /* 8004F220 0004AE80 80 9F 01 04 */ lwz r4, 0x104(r31) /* 8004F224 0004AE84 48 18 C2 99 */ bl func_801DB4BC /* 8004F228 0004AE88 2C 03 00 00 */ cmpwi r3, 0 /* 8004F22C 0004AE8C 40 82 00 0C */ bne lbl_8004F238 /* 8004F230 0004AE90 38 60 00 00 */ li r3, 0 /* 8004F234 0004AE94 48 00 00 58 */ b lbl_8004F28C lbl_8004F238: /* 8004F238 0004AE98 7F 5E D3 78 */ mr r30, r26 /* 8004F23C 0004AE9C 3B A0 00 00 */ li r29, 0 lbl_8004F240: /* 8004F240 0004AEA0 7F C3 F3 78 */ mr r3, r30 /* 8004F244 0004AEA4 4B FF FC 25 */ bl func_8004EE68 /* 8004F248 0004AEA8 2C 03 00 00 */ cmpwi r3, 0 /* 8004F24C 0004AEAC 40 82 00 2C */ bne lbl_8004F278 /* 8004F250 0004AEB0 57 A0 18 38 */ slwi r0, r29, 3 /* 8004F254 0004AEB4 80 9F 01 00 */ lwz r4, 0x100(r31) /* 8004F258 0004AEB8 80 BF 01 04 */ lwz r5, 0x104(r31) /* 8004F25C 0004AEBC 7F 66 DB 78 */ mr r6, r27 /* 8004F260 0004AEC0 C0 3A 01 80 */ lfs f1, 0x180(r26) /* 8004F264 0004AEC4 7F 87 E3 78 */ mr r7, r28 /* 8004F268 0004AEC8 7C 7A 02 14 */ add r3, r26, r0 /* 8004F26C 0004AECC 4B FF FC 05 */ bl func_8004EE70 /* 8004F270 0004AED0 38 7D 00 01 */ addi r3, r29, 1 /* 8004F274 0004AED4 48 00 00 18 */ b lbl_8004F28C lbl_8004F278: /* 8004F278 0004AED8 3B BD 00 01 */ addi r29, r29, 1 /* 8004F27C 0004AEDC 3B DE 00 08 */ addi r30, r30, 8 /* 8004F280 0004AEE0 28 1D 00 20 */ cmplwi r29, 0x20 /* 8004F284 0004AEE4 41 80 FF BC */ blt lbl_8004F240 /* 8004F288 0004AEE8 38 60 00 00 */ li r3, 0 lbl_8004F28C: /* 8004F28C 0004AEEC 39 61 00 20 */ addi r11, r1, 0x20 /* 8004F290 0004AEF0 48 17 7E E1 */ bl _restgpr_26 /* 8004F294 0004AEF4 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004F298 0004AEF8 7C 08 03 A6 */ mtlr r0 /* 8004F29C 0004AEFC 38 21 00 20 */ addi r1, r1, 0x20 /* 8004F2A0 0004AF00 4E 80 00 20 */ blr .global func_8004F2A4 func_8004F2A4: /* 8004F2A4 0004AF04 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004F2A8 0004AF08 7C 08 02 A6 */ mflr r0 /* 8004F2AC 0004AF0C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004F2B0 0004AF10 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8004F2B4 0004AF14 FF E0 08 90 */ fmr f31, f1 /* 8004F2B8 0004AF18 93 E1 00 14 */ stw r31, 0x14(r1) /* 8004F2BC 0004AF1C 7C 7F 1B 78 */ mr r31, r3 /* 8004F2C0 0004AF20 93 C1 00 10 */ stw r30, 0x10(r1) /* 8004F2C4 0004AF24 3B C0 00 00 */ li r30, 0 lbl_8004F2C8: /* 8004F2C8 0004AF28 FC 20 F8 90 */ fmr f1, f31 /* 8004F2CC 0004AF2C 7F E3 FB 78 */ mr r3, r31 /* 8004F2D0 0004AF30 4B FF FD 15 */ bl func_8004EFE4 /* 8004F2D4 0004AF34 3B DE 00 01 */ addi r30, r30, 1 /* 8004F2D8 0004AF38 3B FF 00 08 */ addi r31, r31, 8 /* 8004F2DC 0004AF3C 28 1E 00 20 */ cmplwi r30, 0x20 /* 8004F2E0 0004AF40 41 80 FF E8 */ blt lbl_8004F2C8 /* 8004F2E4 0004AF44 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004F2E8 0004AF48 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8004F2EC 0004AF4C 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8004F2F0 0004AF50 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8004F2F4 0004AF54 7C 08 03 A6 */ mtlr r0 /* 8004F2F8 0004AF58 38 21 00 20 */ addi r1, r1, 0x20 /* 8004F2FC 0004AF5C 4E 80 00 20 */ blr .global func_8004F300 func_8004F300: /* 8004F300 0004AF60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F304 0004AF64 7C 08 02 A6 */ mflr r0 /* 8004F308 0004AF68 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F30C 0004AF6C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F310 0004AF70 7C 7F 1B 78 */ mr r31, r3 /* 8004F314 0004AF74 93 C1 00 08 */ stw r30, 8(r1) /* 8004F318 0004AF78 3B C0 00 00 */ li r30, 0 lbl_8004F31C: /* 8004F31C 0004AF7C 7F E3 FB 78 */ mr r3, r31 /* 8004F320 0004AF80 4B FF FB 49 */ bl func_8004EE68 /* 8004F324 0004AF84 2C 03 00 00 */ cmpwi r3, 0 /* 8004F328 0004AF88 41 82 00 0C */ beq lbl_8004F334 /* 8004F32C 0004AF8C 7F E3 FB 78 */ mr r3, r31 /* 8004F330 0004AF90 4B FF FA 81 */ bl func_8004EDB0 lbl_8004F334: /* 8004F334 0004AF94 3B DE 00 01 */ addi r30, r30, 1 /* 8004F338 0004AF98 3B FF 00 08 */ addi r31, r31, 8 /* 8004F33C 0004AF9C 28 1E 00 20 */ cmplwi r30, 0x20 /* 8004F340 0004AFA0 41 80 FF DC */ blt lbl_8004F31C /* 8004F344 0004AFA4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F348 0004AFA8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F34C 0004AFAC 83 C1 00 08 */ lwz r30, 8(r1) /* 8004F350 0004AFB0 7C 08 03 A6 */ mtlr r0 /* 8004F354 0004AFB4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F358 0004AFB8 4E 80 00 20 */ blr .global func_8004F35C func_8004F35C: /* 8004F35C 0004AFBC 38 A0 00 01 */ li r5, 1 /* 8004F360 0004AFC0 38 6D 98 40 */ addi r3, r13, lbl_8063EB00-_SDA_BASE_ /* 8004F364 0004AFC4 38 80 00 04 */ li r4, 4 /* 8004F368 0004AFC8 38 00 00 00 */ li r0, 0 /* 8004F36C 0004AFCC 98 AD 98 40 */ stb r5, lbl_8063EB00-_SDA_BASE_(r13) /* 8004F370 0004AFD0 B0 83 00 02 */ sth r4, 2(r3) /* 8004F374 0004AFD4 98 03 00 04 */ stb r0, 4(r3) /* 8004F378 0004AFD8 4E 80 00 20 */ blr .global func_8004F37C func_8004F37C: /* 8004F37C 0004AFDC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F380 0004AFE0 7C 08 02 A6 */ mflr r0 /* 8004F384 0004AFE4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F388 0004AFE8 80 6D 98 50 */ lwz r3, lbl_8063EB10-_SDA_BASE_(r13) /* 8004F38C 0004AFEC 2C 03 00 00 */ cmpwi r3, 0 /* 8004F390 0004AFF0 41 82 00 0C */ beq lbl_8004F39C /* 8004F394 0004AFF4 38 80 00 01 */ li r4, 1 /* 8004F398 0004AFF8 48 00 00 D1 */ bl func_8004F468 lbl_8004F39C: /* 8004F39C 0004AFFC 38 60 00 08 */ li r3, 8 /* 8004F3A0 0004B000 48 18 B6 91 */ bl func_801DAA30 /* 8004F3A4 0004B004 2C 03 00 00 */ cmpwi r3, 0 /* 8004F3A8 0004B008 41 82 00 08 */ beq lbl_8004F3B0 /* 8004F3AC 0004B00C 48 00 00 79 */ bl func_8004F424 lbl_8004F3B0: /* 8004F3B0 0004B010 3C 80 80 05 */ lis r4, lbl_8004F3E4@ha /* 8004F3B4 0004B014 3C A0 80 05 */ lis r5, lbl_8004F418@ha /* 8004F3B8 0004B018 90 6D 98 50 */ stw r3, lbl_8063EB10-_SDA_BASE_(r13) /* 8004F3BC 0004B01C 38 84 F3 E4 */ addi r4, r4, lbl_8004F3E4@l /* 8004F3C0 0004B020 80 6D A4 B8 */ lwz r3, lbl_8063F778-_SDA_BASE_(r13) /* 8004F3C4 0004B024 38 A5 F4 18 */ addi r5, r5, lbl_8004F418@l /* 8004F3C8 0004B028 38 C0 00 03 */ li r6, 3 /* 8004F3CC 0004B02C 38 E0 00 0C */ li r7, 0xc /* 8004F3D0 0004B030 48 1E F7 89 */ bl func_8023EB58 /* 8004F3D4 0004B034 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F3D8 0004B038 7C 08 03 A6 */ mtlr r0 /* 8004F3DC 0004B03C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F3E0 0004B040 4E 80 00 20 */ blr lbl_8004F3E4: /* 8004F3E4 0004B044 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F3E8 0004B048 7C 08 02 A6 */ mflr r0 /* 8004F3EC 0004B04C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F3F0 0004B050 80 0D 98 50 */ lwz r0, lbl_8063EB10-_SDA_BASE_(r13) /* 8004F3F4 0004B054 2C 00 00 00 */ cmpwi r0, 0 /* 8004F3F8 0004B058 41 82 00 10 */ beq lbl_8004F408 /* 8004F3FC 0004B05C 4B FB 7F A1 */ bl func_8000739C /* 8004F400 0004B060 80 6D 98 50 */ lwz r3, lbl_8063EB10-_SDA_BASE_(r13) /* 8004F404 0004B064 48 00 00 C9 */ bl func_8004F4CC lbl_8004F408: /* 8004F408 0004B068 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F40C 0004B06C 7C 08 03 A6 */ mtlr r0 /* 8004F410 0004B070 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F414 0004B074 4E 80 00 20 */ blr lbl_8004F418: /* 8004F418 0004B078 4E 80 00 20 */ blr .global func_8004F41C func_8004F41C: /* 8004F41C 0004B07C 80 6D 98 50 */ lwz r3, lbl_8063EB10-_SDA_BASE_(r13) /* 8004F420 0004B080 4E 80 00 20 */ blr .global func_8004F424 func_8004F424: /* 8004F424 0004B084 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F428 0004B088 7C 08 02 A6 */ mflr r0 /* 8004F42C 0004B08C 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F430 0004B090 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F434 0004B094 7C 7F 1B 78 */ mr r31, r3 /* 8004F438 0004B098 38 60 01 74 */ li r3, 0x174 /* 8004F43C 0004B09C 48 18 B5 F5 */ bl func_801DAA30 /* 8004F440 0004B0A0 2C 03 00 00 */ cmpwi r3, 0 /* 8004F444 0004B0A4 41 82 00 08 */ beq lbl_8004F44C /* 8004F448 0004B0A8 48 00 00 8D */ bl func_8004F4D4 lbl_8004F44C: /* 8004F44C 0004B0AC 90 7F 00 04 */ stw r3, 4(r31) /* 8004F450 0004B0B0 7F E3 FB 78 */ mr r3, r31 /* 8004F454 0004B0B4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F458 0004B0B8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F45C 0004B0BC 7C 08 03 A6 */ mtlr r0 /* 8004F460 0004B0C0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F464 0004B0C4 4E 80 00 20 */ blr .global func_8004F468 func_8004F468: /* 8004F468 0004B0C8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F46C 0004B0CC 7C 08 02 A6 */ mflr r0 /* 8004F470 0004B0D0 2C 03 00 00 */ cmpwi r3, 0 /* 8004F474 0004B0D4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F478 0004B0D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F47C 0004B0DC 7C 9F 23 78 */ mr r31, r4 /* 8004F480 0004B0E0 93 C1 00 08 */ stw r30, 8(r1) /* 8004F484 0004B0E4 7C 7E 1B 78 */ mr r30, r3 /* 8004F488 0004B0E8 41 82 00 20 */ beq lbl_8004F4A8 /* 8004F48C 0004B0EC 80 63 00 04 */ lwz r3, 4(r3) /* 8004F490 0004B0F0 38 80 00 01 */ li r4, 1 /* 8004F494 0004B0F4 48 00 01 29 */ bl func_8004F5BC /* 8004F498 0004B0F8 2C 1F 00 00 */ cmpwi r31, 0 /* 8004F49C 0004B0FC 40 81 00 0C */ ble lbl_8004F4A8 /* 8004F4A0 0004B100 7F C3 F3 78 */ mr r3, r30 /* 8004F4A4 0004B104 48 18 B6 15 */ bl func_801DAAB8 lbl_8004F4A8: /* 8004F4A8 0004B108 7F C3 F3 78 */ mr r3, r30 /* 8004F4AC 0004B10C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F4B0 0004B110 83 C1 00 08 */ lwz r30, 8(r1) /* 8004F4B4 0004B114 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F4B8 0004B118 7C 08 03 A6 */ mtlr r0 /* 8004F4BC 0004B11C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F4C0 0004B120 4E 80 00 20 */ blr .global func_8004F4C4 func_8004F4C4: /* 8004F4C4 0004B124 80 63 00 04 */ lwz r3, 4(r3) /* 8004F4C8 0004B128 4E 80 00 20 */ blr .global func_8004F4CC func_8004F4CC: /* 8004F4CC 0004B12C 80 63 00 04 */ lwz r3, 4(r3) /* 8004F4D0 0004B130 48 00 04 30 */ b lbl_8004F900 .global func_8004F4D4 func_8004F4D4: /* 8004F4D4 0004B134 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004F4D8 0004B138 7C 08 02 A6 */ mflr r0 /* 8004F4DC 0004B13C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004F4E0 0004B140 38 00 00 00 */ li r0, 0 /* 8004F4E4 0004B144 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004F4E8 0004B148 3B E3 01 24 */ addi r31, r3, 0x124 /* 8004F4EC 0004B14C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004F4F0 0004B150 3B C3 00 4C */ addi r30, r3, 0x4c /* 8004F4F4 0004B154 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004F4F8 0004B158 7C 7D 1B 78 */ mr r29, r3 /* 8004F4FC 0004B15C 90 03 00 00 */ stw r0, 0(r3) lbl_8004F500: /* 8004F500 0004B160 7F C3 F3 78 */ mr r3, r30 /* 8004F504 0004B164 48 00 0E 21 */ bl func_80050324 /* 8004F508 0004B168 3B DE 00 24 */ addi r30, r30, 0x24 /* 8004F50C 0004B16C 7C 1E F8 40 */ cmplw r30, r31 /* 8004F510 0004B170 41 80 FF F0 */ blt lbl_8004F500 /* 8004F514 0004B174 7F E3 FB 78 */ mr r3, r31 /* 8004F518 0004B178 48 00 16 1D */ bl func_80050B34 /* 8004F51C 0004B17C C0 62 84 68 */ lfs f3, lbl_80640A68-_SDA2_BASE_(r2) /* 8004F520 0004B180 38 A0 00 00 */ li r5, 0 /* 8004F524 0004B184 C0 22 84 70 */ lfs f1, lbl_80640A70-_SDA2_BASE_(r2) /* 8004F528 0004B188 38 00 FF FF */ li r0, -1 /* 8004F52C 0004B18C C0 42 84 6C */ lfs f2, lbl_80640A6C-_SDA2_BASE_(r2) /* 8004F530 0004B190 7F A3 EB 78 */ mr r3, r29 /* 8004F534 0004B194 C0 02 84 74 */ lfs f0, lbl_80640A74-_SDA2_BASE_(r2) /* 8004F538 0004B198 38 80 00 00 */ li r4, 0 /* 8004F53C 0004B19C 90 BD 00 2C */ stw r5, 0x2c(r29) /* 8004F540 0004B1A0 90 BD 00 30 */ stw r5, 0x30(r29) /* 8004F544 0004B1A4 90 BD 00 34 */ stw r5, 0x34(r29) /* 8004F548 0004B1A8 90 BD 00 38 */ stw r5, 0x38(r29) /* 8004F54C 0004B1AC 90 BD 00 3C */ stw r5, 0x3c(r29) /* 8004F550 0004B1B0 90 BD 00 40 */ stw r5, 0x40(r29) /* 8004F554 0004B1B4 90 BD 00 44 */ stw r5, 0x44(r29) /* 8004F558 0004B1B8 90 BD 00 48 */ stw r5, 0x48(r29) /* 8004F55C 0004B1BC 90 1D 01 60 */ stw r0, 0x160(r29) /* 8004F560 0004B1C0 98 BD 01 70 */ stb r5, 0x170(r29) /* 8004F564 0004B1C4 D0 7D 00 14 */ stfs f3, 0x14(r29) /* 8004F568 0004B1C8 D0 5D 00 18 */ stfs f2, 0x18(r29) /* 8004F56C 0004B1CC D0 7D 00 1C */ stfs f3, 0x1c(r29) /* 8004F570 0004B1D0 D0 7D 00 20 */ stfs f3, 0x20(r29) /* 8004F574 0004B1D4 D0 7D 00 24 */ stfs f3, 0x24(r29) /* 8004F578 0004B1D8 D0 7D 00 28 */ stfs f3, 0x28(r29) /* 8004F57C 0004B1DC D0 3D 00 04 */ stfs f1, 4(r29) /* 8004F580 0004B1E0 D0 3D 00 08 */ stfs f1, 8(r29) /* 8004F584 0004B1E4 D0 3D 00 0C */ stfs f1, 0xc(r29) /* 8004F588 0004B1E8 D0 3D 00 10 */ stfs f1, 0x10(r29) /* 8004F58C 0004B1EC D0 1D 01 64 */ stfs f0, 0x164(r29) /* 8004F590 0004B1F0 D0 7D 01 68 */ stfs f3, 0x168(r29) /* 8004F594 0004B1F4 D0 7D 01 6C */ stfs f3, 0x16c(r29) /* 8004F598 0004B1F8 48 00 00 95 */ bl func_8004F62C /* 8004F59C 0004B1FC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004F5A0 0004B200 7F A3 EB 78 */ mr r3, r29 /* 8004F5A4 0004B204 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004F5A8 0004B208 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004F5AC 0004B20C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004F5B0 0004B210 7C 08 03 A6 */ mtlr r0 /* 8004F5B4 0004B214 38 21 00 20 */ addi r1, r1, 0x20 /* 8004F5B8 0004B218 4E 80 00 20 */ blr .global func_8004F5BC func_8004F5BC: /* 8004F5BC 0004B21C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004F5C0 0004B220 7C 08 02 A6 */ mflr r0 /* 8004F5C4 0004B224 2C 03 00 00 */ cmpwi r3, 0 /* 8004F5C8 0004B228 90 01 00 14 */ stw r0, 0x14(r1) /* 8004F5CC 0004B22C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004F5D0 0004B230 7C 9F 23 78 */ mr r31, r4 /* 8004F5D4 0004B234 93 C1 00 08 */ stw r30, 8(r1) /* 8004F5D8 0004B238 7C 7E 1B 78 */ mr r30, r3 /* 8004F5DC 0004B23C 41 82 00 34 */ beq lbl_8004F610 /* 8004F5E0 0004B240 80 63 00 00 */ lwz r3, 0(r3) /* 8004F5E4 0004B244 2C 03 00 00 */ cmpwi r3, 0 /* 8004F5E8 0004B248 41 82 00 18 */ beq lbl_8004F600 /* 8004F5EC 0004B24C 81 83 01 00 */ lwz r12, 0x100(r3) /* 8004F5F0 0004B250 38 80 00 01 */ li r4, 1 /* 8004F5F4 0004B254 81 8C 00 08 */ lwz r12, 8(r12) /* 8004F5F8 0004B258 7D 89 03 A6 */ mtctr r12 /* 8004F5FC 0004B25C 4E 80 04 21 */ bctrl lbl_8004F600: /* 8004F600 0004B260 2C 1F 00 00 */ cmpwi r31, 0 /* 8004F604 0004B264 40 81 00 0C */ ble lbl_8004F610 /* 8004F608 0004B268 7F C3 F3 78 */ mr r3, r30 /* 8004F60C 0004B26C 48 18 B4 AD */ bl func_801DAAB8 lbl_8004F610: /* 8004F610 0004B270 7F C3 F3 78 */ mr r3, r30 /* 8004F614 0004B274 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004F618 0004B278 83 C1 00 08 */ lwz r30, 8(r1) /* 8004F61C 0004B27C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004F620 0004B280 7C 08 03 A6 */ mtlr r0 /* 8004F624 0004B284 38 21 00 10 */ addi r1, r1, 0x10 /* 8004F628 0004B288 4E 80 00 20 */ blr .global func_8004F62C func_8004F62C: /* 8004F62C 0004B28C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8004F630 0004B290 7C 08 02 A6 */ mflr r0 /* 8004F634 0004B294 90 01 00 44 */ stw r0, 0x44(r1) /* 8004F638 0004B298 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8004F63C 0004B29C 7C 7F 1B 78 */ mr r31, r3 /* 8004F640 0004B2A0 93 C1 00 38 */ stw r30, 0x38(r1) /* 8004F644 0004B2A4 7C 9E 23 78 */ mr r30, r4 /* 8004F648 0004B2A8 80 A3 00 00 */ lwz r5, 0(r3) /* 8004F64C 0004B2AC 2C 05 00 00 */ cmpwi r5, 0 /* 8004F650 0004B2B0 41 82 00 10 */ beq lbl_8004F660 /* 8004F654 0004B2B4 80 03 01 60 */ lwz r0, 0x160(r3) /* 8004F658 0004B2B8 7C 00 20 00 */ cmpw r0, r4 /* 8004F65C 0004B2BC 41 82 02 8C */ beq lbl_8004F8E8 lbl_8004F660: /* 8004F660 0004B2C0 2C 05 00 00 */ cmpwi r5, 0 /* 8004F664 0004B2C4 41 82 00 20 */ beq lbl_8004F684 /* 8004F668 0004B2C8 41 82 00 1C */ beq lbl_8004F684 /* 8004F66C 0004B2CC 81 85 01 00 */ lwz r12, 0x100(r5) /* 8004F670 0004B2D0 7C A3 2B 78 */ mr r3, r5 /* 8004F674 0004B2D4 38 80 00 01 */ li r4, 1 /* 8004F678 0004B2D8 81 8C 00 08 */ lwz r12, 8(r12) /* 8004F67C 0004B2DC 7D 89 03 A6 */ mtctr r12 /* 8004F680 0004B2E0 4E 80 04 21 */ bctrl lbl_8004F684: /* 8004F684 0004B2E4 2C 1E 00 01 */ cmpwi r30, 1 /* 8004F688 0004B2E8 93 DF 01 60 */ stw r30, 0x160(r31) /* 8004F68C 0004B2EC 41 82 00 18 */ beq lbl_8004F6A4 /* 8004F690 0004B2F0 40 80 00 08 */ bge lbl_8004F698 /* 8004F694 0004B2F4 48 00 00 C0 */ b lbl_8004F754 lbl_8004F698: /* 8004F698 0004B2F8 2C 1E 00 03 */ cmpwi r30, 3 /* 8004F69C 0004B2FC 40 80 00 B8 */ bge lbl_8004F754 /* 8004F6A0 0004B300 48 00 00 5C */ b lbl_8004F6FC lbl_8004F6A4: /* 8004F6A4 0004B304 48 18 B4 85 */ bl func_801DAB28 /* 8004F6A8 0004B308 2C 03 00 00 */ cmpwi r3, 0 /* 8004F6AC 0004B30C 41 82 00 14 */ beq lbl_8004F6C0 /* 8004F6B0 0004B310 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004F6B4 0004B314 38 80 01 38 */ li r4, 0x138 /* 8004F6B8 0004B318 48 18 B5 DD */ bl func_801DAC94 /* 8004F6BC 0004B31C 48 00 00 08 */ b lbl_8004F6C4 lbl_8004F6C0: /* 8004F6C0 0004B320 38 60 00 00 */ li r3, 0 lbl_8004F6C4: /* 8004F6C4 0004B324 2C 03 00 00 */ cmpwi r3, 0 /* 8004F6C8 0004B328 41 82 00 2C */ beq lbl_8004F6F4 /* 8004F6CC 0004B32C 38 00 00 FF */ li r0, 0xff /* 8004F6D0 0004B330 38 E1 00 10 */ addi r7, r1, 0x10 /* 8004F6D4 0004B334 98 01 00 10 */ stb r0, 0x10(r1) /* 8004F6D8 0004B338 38 80 00 01 */ li r4, 1 /* 8004F6DC 0004B33C 38 A0 00 01 */ li r5, 1 /* 8004F6E0 0004B340 38 C0 00 00 */ li r6, 0 /* 8004F6E4 0004B344 98 01 00 11 */ stb r0, 0x11(r1) /* 8004F6E8 0004B348 98 01 00 12 */ stb r0, 0x12(r1) /* 8004F6EC 0004B34C 98 01 00 13 */ stb r0, 0x13(r1) /* 8004F6F0 0004B350 48 19 68 8D */ bl func_801E5F7C lbl_8004F6F4: /* 8004F6F4 0004B354 90 7F 00 00 */ stw r3, 0(r31) /* 8004F6F8 0004B358 48 00 00 B8 */ b lbl_8004F7B0 lbl_8004F6FC: /* 8004F6FC 0004B35C 48 18 B4 2D */ bl func_801DAB28 /* 8004F700 0004B360 2C 03 00 00 */ cmpwi r3, 0 /* 8004F704 0004B364 41 82 00 14 */ beq lbl_8004F718 /* 8004F708 0004B368 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004F70C 0004B36C 38 80 01 38 */ li r4, 0x138 /* 8004F710 0004B370 48 18 B5 85 */ bl func_801DAC94 /* 8004F714 0004B374 48 00 00 08 */ b lbl_8004F71C lbl_8004F718: /* 8004F718 0004B378 38 60 00 00 */ li r3, 0 lbl_8004F71C: /* 8004F71C 0004B37C 2C 03 00 00 */ cmpwi r3, 0 /* 8004F720 0004B380 41 82 00 2C */ beq lbl_8004F74C /* 8004F724 0004B384 38 00 00 FF */ li r0, 0xff /* 8004F728 0004B388 38 E1 00 0C */ addi r7, r1, 0xc /* 8004F72C 0004B38C 98 01 00 0C */ stb r0, 0xc(r1) /* 8004F730 0004B390 38 80 00 02 */ li r4, 2 /* 8004F734 0004B394 38 A0 00 01 */ li r5, 1 /* 8004F738 0004B398 38 C0 00 00 */ li r6, 0 /* 8004F73C 0004B39C 98 01 00 0D */ stb r0, 0xd(r1) /* 8004F740 0004B3A0 98 01 00 0E */ stb r0, 0xe(r1) /* 8004F744 0004B3A4 98 01 00 0F */ stb r0, 0xf(r1) /* 8004F748 0004B3A8 48 19 68 35 */ bl func_801E5F7C lbl_8004F74C: /* 8004F74C 0004B3AC 90 7F 00 00 */ stw r3, 0(r31) /* 8004F750 0004B3B0 48 00 00 60 */ b lbl_8004F7B0 lbl_8004F754: /* 8004F754 0004B3B4 48 18 B3 D5 */ bl func_801DAB28 /* 8004F758 0004B3B8 2C 03 00 00 */ cmpwi r3, 0 /* 8004F75C 0004B3BC 41 82 00 14 */ beq lbl_8004F770 /* 8004F760 0004B3C0 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8004F764 0004B3C4 38 80 01 38 */ li r4, 0x138 /* 8004F768 0004B3C8 48 18 B5 2D */ bl func_801DAC94 /* 8004F76C 0004B3CC 48 00 00 08 */ b lbl_8004F774 lbl_8004F770: /* 8004F770 0004B3D0 38 60 00 00 */ li r3, 0 lbl_8004F774: /* 8004F774 0004B3D4 2C 03 00 00 */ cmpwi r3, 0 /* 8004F778 0004B3D8 41 82 00 2C */ beq lbl_8004F7A4 /* 8004F77C 0004B3DC 38 00 00 FF */ li r0, 0xff /* 8004F780 0004B3E0 38 E1 00 08 */ addi r7, r1, 8 /* 8004F784 0004B3E4 98 01 00 08 */ stb r0, 8(r1) /* 8004F788 0004B3E8 38 80 00 00 */ li r4, 0 /* 8004F78C 0004B3EC 38 A0 00 01 */ li r5, 1 /* 8004F790 0004B3F0 38 C0 00 01 */ li r6, 1 /* 8004F794 0004B3F4 98 01 00 09 */ stb r0, 9(r1) /* 8004F798 0004B3F8 98 01 00 0A */ stb r0, 0xa(r1) /* 8004F79C 0004B3FC 98 01 00 0B */ stb r0, 0xb(r1) /* 8004F7A0 0004B400 48 19 67 DD */ bl func_801E5F7C lbl_8004F7A4: /* 8004F7A4 0004B404 38 00 00 00 */ li r0, 0 /* 8004F7A8 0004B408 90 7F 00 00 */ stw r3, 0(r31) /* 8004F7AC 0004B40C 90 1F 01 60 */ stw r0, 0x160(r31) lbl_8004F7B0: /* 8004F7B0 0004B410 88 9F 01 70 */ lbz r4, 0x170(r31) /* 8004F7B4 0004B414 7F E3 FB 78 */ mr r3, r31 /* 8004F7B8 0004B418 48 00 02 81 */ bl func_8004FA38 /* 8004F7BC 0004B41C 7F E3 FB 78 */ mr r3, r31 /* 8004F7C0 0004B420 38 9F 00 14 */ addi r4, r31, 0x14 /* 8004F7C4 0004B424 48 00 05 1D */ bl func_8004FCE0 /* 8004F7C8 0004B428 7F E3 FB 78 */ mr r3, r31 /* 8004F7CC 0004B42C 38 9F 00 20 */ addi r4, r31, 0x20 /* 8004F7D0 0004B430 48 00 06 29 */ bl func_8004FDF8 /* 8004F7D4 0004B434 7F E3 FB 78 */ mr r3, r31 /* 8004F7D8 0004B438 38 9F 01 64 */ addi r4, r31, 0x164 /* 8004F7DC 0004B43C 48 00 08 45 */ bl func_80050020 /* 8004F7E0 0004B440 C0 1F 00 04 */ lfs f0, 4(r31) /* 8004F7E4 0004B444 7F E3 FB 78 */ mr r3, r31 /* 8004F7E8 0004B448 38 81 00 14 */ addi r4, r1, 0x14 /* 8004F7EC 0004B44C FC 00 00 1E */ fctiwz f0, f0 /* 8004F7F0 0004B450 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8004F7F4 0004B454 80 01 00 1C */ lwz r0, 0x1c(r1) /* 8004F7F8 0004B458 98 01 00 14 */ stb r0, 0x14(r1) /* 8004F7FC 0004B45C C0 1F 00 08 */ lfs f0, 8(r31) /* 8004F800 0004B460 FC 00 00 1E */ fctiwz f0, f0 /* 8004F804 0004B464 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8004F808 0004B468 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004F80C 0004B46C 98 01 00 15 */ stb r0, 0x15(r1) /* 8004F810 0004B470 C0 1F 00 0C */ lfs f0, 0xc(r31) /* 8004F814 0004B474 FC 00 00 1E */ fctiwz f0, f0 /* 8004F818 0004B478 D8 01 00 28 */ stfd f0, 0x28(r1) /* 8004F81C 0004B47C 80 01 00 2C */ lwz r0, 0x2c(r1) /* 8004F820 0004B480 98 01 00 16 */ stb r0, 0x16(r1) /* 8004F824 0004B484 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8004F828 0004B488 FC 00 00 1E */ fctiwz f0, f0 /* 8004F82C 0004B48C D8 01 00 30 */ stfd f0, 0x30(r1) /* 8004F830 0004B490 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004F834 0004B494 98 01 00 17 */ stb r0, 0x17(r1) /* 8004F838 0004B498 48 00 06 BD */ bl func_8004FEF4 /* 8004F83C 0004B49C 38 00 00 02 */ li r0, 2 /* 8004F840 0004B4A0 7F E4 FB 78 */ mr r4, r31 /* 8004F844 0004B4A4 38 A0 00 00 */ li r5, 0 /* 8004F848 0004B4A8 7C 09 03 A6 */ mtctr r0 lbl_8004F84C: /* 8004F84C 0004B4AC 80 64 00 2C */ lwz r3, 0x2c(r4) /* 8004F850 0004B4B0 2C 03 00 00 */ cmpwi r3, 0 /* 8004F854 0004B4B4 41 82 00 18 */ beq lbl_8004F86C /* 8004F858 0004B4B8 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004F85C 0004B4BC 2C 03 00 00 */ cmpwi r3, 0 /* 8004F860 0004B4C0 41 82 00 0C */ beq lbl_8004F86C /* 8004F864 0004B4C4 80 1F 00 00 */ lwz r0, 0(r31) /* 8004F868 0004B4C8 90 03 00 40 */ stw r0, 0x40(r3) lbl_8004F86C: /* 8004F86C 0004B4CC 80 64 00 30 */ lwz r3, 0x30(r4) /* 8004F870 0004B4D0 2C 03 00 00 */ cmpwi r3, 0 /* 8004F874 0004B4D4 41 82 00 18 */ beq lbl_8004F88C /* 8004F878 0004B4D8 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004F87C 0004B4DC 2C 03 00 00 */ cmpwi r3, 0 /* 8004F880 0004B4E0 41 82 00 0C */ beq lbl_8004F88C /* 8004F884 0004B4E4 80 1F 00 00 */ lwz r0, 0(r31) /* 8004F888 0004B4E8 90 03 00 40 */ stw r0, 0x40(r3) lbl_8004F88C: /* 8004F88C 0004B4EC 80 64 00 34 */ lwz r3, 0x34(r4) /* 8004F890 0004B4F0 2C 03 00 00 */ cmpwi r3, 0 /* 8004F894 0004B4F4 41 82 00 18 */ beq lbl_8004F8AC /* 8004F898 0004B4F8 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004F89C 0004B4FC 2C 03 00 00 */ cmpwi r3, 0 /* 8004F8A0 0004B500 41 82 00 0C */ beq lbl_8004F8AC /* 8004F8A4 0004B504 80 1F 00 00 */ lwz r0, 0(r31) /* 8004F8A8 0004B508 90 03 00 40 */ stw r0, 0x40(r3) lbl_8004F8AC: /* 8004F8AC 0004B50C 80 64 00 38 */ lwz r3, 0x38(r4) /* 8004F8B0 0004B510 2C 03 00 00 */ cmpwi r3, 0 /* 8004F8B4 0004B514 41 82 00 18 */ beq lbl_8004F8CC /* 8004F8B8 0004B518 80 63 0C 04 */ lwz r3, 0xc04(r3) /* 8004F8BC 0004B51C 2C 03 00 00 */ cmpwi r3, 0 /* 8004F8C0 0004B520 41 82 00 0C */ beq lbl_8004F8CC /* 8004F8C4 0004B524 80 1F 00 00 */ lwz r0, 0(r31) /* 8004F8C8 0004B528 90 03 00 40 */ stw r0, 0x40(r3) lbl_8004F8CC: /* 8004F8CC 0004B52C 38 84 00 10 */ addi r4, r4, 0x10 /* 8004F8D0 0004B530 38 A5 00 03 */ addi r5, r5, 3 /* 8004F8D4 0004B534 42 00 FF 78 */ bdnz lbl_8004F84C /* 8004F8D8 0004B538 80 7F 00 00 */ lwz r3, 0(r31) /* 8004F8DC 0004B53C A0 03 00 10 */ lhz r0, 0x10(r3) /* 8004F8E0 0004B540 60 00 00 02 */ ori r0, r0, 2 /* 8004F8E4 0004B544 B0 03 00 10 */ sth r0, 0x10(r3) lbl_8004F8E8: /* 8004F8E8 0004B548 80 01 00 44 */ lwz r0, 0x44(r1) /* 8004F8EC 0004B54C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8004F8F0 0004B550 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8004F8F4 0004B554 7C 08 03 A6 */ mtlr r0 /* 8004F8F8 0004B558 38 21 00 40 */ addi r1, r1, 0x40 /* 8004F8FC 0004B55C 4E 80 00 20 */ blr lbl_8004F900: /* 8004F900 0004B560 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8004F904 0004B564 7C 08 02 A6 */ mflr r0 /* 8004F908 0004B568 90 01 00 54 */ stw r0, 0x54(r1) /* 8004F90C 0004B56C DB E1 00 40 */ stfd f31, 0x40(r1) /* 8004F910 0004B570 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 8004F914 0004B574 FF E0 08 90 */ fmr f31, f1 /* 8004F918 0004B578 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8004F91C 0004B57C 3B E3 00 4C */ addi r31, r3, 0x4c /* 8004F920 0004B580 93 C1 00 38 */ stw r30, 0x38(r1) /* 8004F924 0004B584 3B C0 00 00 */ li r30, 0 /* 8004F928 0004B588 93 A1 00 34 */ stw r29, 0x34(r1) /* 8004F92C 0004B58C 7C 7D 1B 78 */ mr r29, r3 lbl_8004F930: /* 8004F930 0004B590 81 9F 00 20 */ lwz r12, 0x20(r31) /* 8004F934 0004B594 FC 20 F8 90 */ fmr f1, f31 /* 8004F938 0004B598 7F E3 FB 78 */ mr r3, r31 /* 8004F93C 0004B59C 81 8C 00 08 */ lwz r12, 8(r12) /* 8004F940 0004B5A0 7D 89 03 A6 */ mtctr r12 /* 8004F944 0004B5A4 4E 80 04 21 */ bctrl /* 8004F948 0004B5A8 2C 03 00 00 */ cmpwi r3, 0 /* 8004F94C 0004B5AC 41 82 00 3C */ beq lbl_8004F988 /* 8004F950 0004B5B0 80 7D 00 00 */ lwz r3, 0(r29) /* 8004F954 0004B5B4 2C 03 00 00 */ cmpwi r3, 0 /* 8004F958 0004B5B8 41 82 00 30 */ beq lbl_8004F988 /* 8004F95C 0004B5BC C0 1D 00 14 */ lfs f0, 0x14(r29) /* 8004F960 0004B5C0 38 80 00 01 */ li r4, 1 /* 8004F964 0004B5C4 D0 03 00 20 */ stfs f0, 0x20(r3) /* 8004F968 0004B5C8 C0 1D 00 18 */ lfs f0, 0x18(r29) /* 8004F96C 0004B5CC D0 03 00 24 */ stfs f0, 0x24(r3) /* 8004F970 0004B5D0 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 8004F974 0004B5D4 D0 03 00 28 */ stfs f0, 0x28(r3) /* 8004F978 0004B5D8 48 1A 2D 41 */ bl func_801F26B8 /* 8004F97C 0004B5DC 80 7D 00 00 */ lwz r3, 0(r29) /* 8004F980 0004B5E0 38 9D 00 20 */ addi r4, r29, 0x20 /* 8004F984 0004B5E4 48 19 6B 59 */ bl func_801E64DC lbl_8004F988: /* 8004F988 0004B5E8 3B DE 00 01 */ addi r30, r30, 1 /* 8004F98C 0004B5EC 3B FF 00 24 */ addi r31, r31, 0x24 /* 8004F990 0004B5F0 2C 1E 00 06 */ cmpwi r30, 6 /* 8004F994 0004B5F4 41 80 FF 9C */ blt lbl_8004F930 /* 8004F998 0004B5F8 81 9D 01 5C */ lwz r12, 0x15c(r29) /* 8004F99C 0004B5FC FC 20 F8 90 */ fmr f1, f31 /* 8004F9A0 0004B600 38 7D 01 24 */ addi r3, r29, 0x124 /* 8004F9A4 0004B604 81 8C 00 08 */ lwz r12, 8(r12) /* 8004F9A8 0004B608 7D 89 03 A6 */ mtctr r12 /* 8004F9AC 0004B60C 4E 80 04 21 */ bctrl /* 8004F9B0 0004B610 2C 03 00 00 */ cmpwi r3, 0 /* 8004F9B4 0004B614 41 82 00 60 */ beq lbl_8004FA14 /* 8004F9B8 0004B618 C0 1D 00 04 */ lfs f0, 4(r29) /* 8004F9BC 0004B61C C0 5D 00 08 */ lfs f2, 8(r29) /* 8004F9C0 0004B620 FC 60 00 1E */ fctiwz f3, f0 /* 8004F9C4 0004B624 C0 3D 00 0C */ lfs f1, 0xc(r29) /* 8004F9C8 0004B628 C0 1D 00 10 */ lfs f0, 0x10(r29) /* 8004F9CC 0004B62C FC 40 10 1E */ fctiwz f2, f2 /* 8004F9D0 0004B630 FC 20 08 1E */ fctiwz f1, f1 /* 8004F9D4 0004B634 80 DD 00 00 */ lwz r6, 0(r29) /* 8004F9D8 0004B638 FC 00 00 1E */ fctiwz f0, f0 /* 8004F9DC 0004B63C D8 61 00 08 */ stfd f3, 8(r1) /* 8004F9E0 0004B640 2C 06 00 00 */ cmpwi r6, 0 /* 8004F9E4 0004B644 D8 41 00 10 */ stfd f2, 0x10(r1) /* 8004F9E8 0004B648 80 01 00 0C */ lwz r0, 0xc(r1) /* 8004F9EC 0004B64C D8 21 00 18 */ stfd f1, 0x18(r1) /* 8004F9F0 0004B650 80 61 00 14 */ lwz r3, 0x14(r1) /* 8004F9F4 0004B654 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8004F9F8 0004B658 80 81 00 1C */ lwz r4, 0x1c(r1) /* 8004F9FC 0004B65C 80 A1 00 24 */ lwz r5, 0x24(r1) /* 8004FA00 0004B660 41 82 00 14 */ beq lbl_8004FA14 /* 8004FA04 0004B664 98 06 01 10 */ stb r0, 0x110(r6) /* 8004FA08 0004B668 98 66 01 11 */ stb r3, 0x111(r6) /* 8004FA0C 0004B66C 98 86 01 12 */ stb r4, 0x112(r6) /* 8004FA10 0004B670 98 A6 01 13 */ stb r5, 0x113(r6) lbl_8004FA14: /* 8004FA14 0004B674 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 8004FA18 0004B678 80 01 00 54 */ lwz r0, 0x54(r1) /* 8004FA1C 0004B67C CB E1 00 40 */ lfd f31, 0x40(r1) /* 8004FA20 0004B680 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8004FA24 0004B684 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8004FA28 0004B688 83 A1 00 34 */ lwz r29, 0x34(r1) /* 8004FA2C 0004B68C 7C 08 03 A6 */ mtlr r0 /* 8004FA30 0004B690 38 21 00 50 */ addi r1, r1, 0x50 /* 8004FA34 0004B694 4E 80 00 20 */ blr .global func_8004FA38 func_8004FA38: /* 8004FA38 0004B698 2C 04 00 00 */ cmpwi r4, 0 /* 8004FA3C 0004B69C 98 83 01 70 */ stb r4, 0x170(r3) /* 8004FA40 0004B6A0 41 82 00 20 */ beq lbl_8004FA60 /* 8004FA44 0004B6A4 80 83 00 00 */ lwz r4, 0(r3) /* 8004FA48 0004B6A8 2C 04 00 00 */ cmpwi r4, 0 /* 8004FA4C 0004B6AC 41 82 00 14 */ beq lbl_8004FA60 /* 8004FA50 0004B6B0 80 04 01 04 */ lwz r0, 0x104(r4) /* 8004FA54 0004B6B4 60 00 00 01 */ ori r0, r0, 1 /* 8004FA58 0004B6B8 90 04 01 04 */ stw r0, 0x104(r4) /* 8004FA5C 0004B6BC 4E 80 00 20 */ blr lbl_8004FA60: /* 8004FA60 0004B6C0 80 63 00 00 */ lwz r3, 0(r3) /* 8004FA64 0004B6C4 2C 03 00 00 */ cmpwi r3, 0 /* 8004FA68 0004B6C8 4D 82 00 20 */ beqlr /* 8004FA6C 0004B6CC 80 03 01 04 */ lwz r0, 0x104(r3) /* 8004FA70 0004B6D0 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 8004FA74 0004B6D4 90 03 01 04 */ stw r0, 0x104(r3) /* 8004FA78 0004B6D8 4E 80 00 20 */ blr .global func_8004FA7C func_8004FA7C: /* 8004FA7C 0004B6DC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004FA80 0004B6E0 7C 08 02 A6 */ mflr r0 /* 8004FA84 0004B6E4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004FA88 0004B6E8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004FA8C 0004B6EC 7C 9F 23 78 */ mr r31, r4 /* 8004FA90 0004B6F0 93 C1 00 08 */ stw r30, 8(r1) /* 8004FA94 0004B6F4 7C 7E 1B 78 */ mr r30, r3 /* 8004FA98 0004B6F8 48 00 06 2D */ bl func_800500C4 /* 8004FA9C 0004B6FC 2C 03 FF FF */ cmpwi r3, -1 /* 8004FAA0 0004B700 41 81 00 58 */ bgt lbl_8004FAF8 /* 8004FAA4 0004B704 2C 1F 00 00 */ cmpwi r31, 0 /* 8004FAA8 0004B708 41 82 00 18 */ beq lbl_8004FAC0 /* 8004FAAC 0004B70C 80 7F 0C 04 */ lwz r3, 0xc04(r31) /* 8004FAB0 0004B710 2C 03 00 00 */ cmpwi r3, 0 /* 8004FAB4 0004B714 41 82 00 0C */ beq lbl_8004FAC0 /* 8004FAB8 0004B718 80 1E 00 00 */ lwz r0, 0(r30) /* 8004FABC 0004B71C 90 03 00 40 */ stw r0, 0x40(r3) lbl_8004FAC0: /* 8004FAC0 0004B720 38 00 00 08 */ li r0, 8 /* 8004FAC4 0004B724 7F C3 F3 78 */ mr r3, r30 /* 8004FAC8 0004B728 38 80 00 00 */ li r4, 0 /* 8004FACC 0004B72C 7C 09 03 A6 */ mtctr r0 lbl_8004FAD0: /* 8004FAD0 0004B730 80 03 00 2C */ lwz r0, 0x2c(r3) /* 8004FAD4 0004B734 2C 00 00 00 */ cmpwi r0, 0 /* 8004FAD8 0004B738 40 82 00 14 */ bne lbl_8004FAEC /* 8004FADC 0004B73C 54 80 10 3A */ slwi r0, r4, 2 /* 8004FAE0 0004B740 7C 7E 02 14 */ add r3, r30, r0 /* 8004FAE4 0004B744 93 E3 00 2C */ stw r31, 0x2c(r3) /* 8004FAE8 0004B748 48 00 00 10 */ b lbl_8004FAF8 lbl_8004FAEC: /* 8004FAEC 0004B74C 38 63 00 04 */ addi r3, r3, 4 /* 8004FAF0 0004B750 38 84 00 01 */ addi r4, r4, 1 /* 8004FAF4 0004B754 42 00 FF DC */ bdnz lbl_8004FAD0 lbl_8004FAF8: /* 8004FAF8 0004B758 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004FAFC 0004B75C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004FB00 0004B760 83 C1 00 08 */ lwz r30, 8(r1) /* 8004FB04 0004B764 7C 08 03 A6 */ mtlr r0 /* 8004FB08 0004B768 38 21 00 10 */ addi r1, r1, 0x10 /* 8004FB0C 0004B76C 4E 80 00 20 */ blr .global func_8004FB10 func_8004FB10: /* 8004FB10 0004B770 38 00 00 02 */ li r0, 2 /* 8004FB14 0004B774 38 C0 00 00 */ li r6, 0 /* 8004FB18 0004B778 38 80 00 00 */ li r4, 0 /* 8004FB1C 0004B77C 7C 09 03 A6 */ mtctr r0 lbl_8004FB20: /* 8004FB20 0004B780 80 A3 00 2C */ lwz r5, 0x2c(r3) /* 8004FB24 0004B784 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB28 0004B788 41 82 00 18 */ beq lbl_8004FB40 /* 8004FB2C 0004B78C 80 A5 0C 04 */ lwz r5, 0xc04(r5) /* 8004FB30 0004B790 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB34 0004B794 41 82 00 08 */ beq lbl_8004FB3C /* 8004FB38 0004B798 90 85 00 40 */ stw r4, 0x40(r5) lbl_8004FB3C: /* 8004FB3C 0004B79C 90 83 00 2C */ stw r4, 0x2c(r3) lbl_8004FB40: /* 8004FB40 0004B7A0 80 A3 00 30 */ lwz r5, 0x30(r3) /* 8004FB44 0004B7A4 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB48 0004B7A8 41 82 00 18 */ beq lbl_8004FB60 /* 8004FB4C 0004B7AC 80 A5 0C 04 */ lwz r5, 0xc04(r5) /* 8004FB50 0004B7B0 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB54 0004B7B4 41 82 00 08 */ beq lbl_8004FB5C /* 8004FB58 0004B7B8 90 85 00 40 */ stw r4, 0x40(r5) lbl_8004FB5C: /* 8004FB5C 0004B7BC 90 83 00 30 */ stw r4, 0x30(r3) lbl_8004FB60: /* 8004FB60 0004B7C0 80 A3 00 34 */ lwz r5, 0x34(r3) /* 8004FB64 0004B7C4 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB68 0004B7C8 41 82 00 18 */ beq lbl_8004FB80 /* 8004FB6C 0004B7CC 80 A5 0C 04 */ lwz r5, 0xc04(r5) /* 8004FB70 0004B7D0 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB74 0004B7D4 41 82 00 08 */ beq lbl_8004FB7C /* 8004FB78 0004B7D8 90 85 00 40 */ stw r4, 0x40(r5) lbl_8004FB7C: /* 8004FB7C 0004B7DC 90 83 00 34 */ stw r4, 0x34(r3) lbl_8004FB80: /* 8004FB80 0004B7E0 80 A3 00 38 */ lwz r5, 0x38(r3) /* 8004FB84 0004B7E4 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB88 0004B7E8 41 82 00 18 */ beq lbl_8004FBA0 /* 8004FB8C 0004B7EC 80 A5 0C 04 */ lwz r5, 0xc04(r5) /* 8004FB90 0004B7F0 2C 05 00 00 */ cmpwi r5, 0 /* 8004FB94 0004B7F4 41 82 00 08 */ beq lbl_8004FB9C /* 8004FB98 0004B7F8 90 85 00 40 */ stw r4, 0x40(r5) lbl_8004FB9C: /* 8004FB9C 0004B7FC 90 83 00 38 */ stw r4, 0x38(r3) lbl_8004FBA0: /* 8004FBA0 0004B800 38 63 00 10 */ addi r3, r3, 0x10 /* 8004FBA4 0004B804 38 C6 00 03 */ addi r6, r6, 3 /* 8004FBA8 0004B808 42 00 FF 78 */ bdnz lbl_8004FB20 /* 8004FBAC 0004B80C 4E 80 00 20 */ blr .global func_8004FBB0 func_8004FBB0: /* 8004FBB0 0004B810 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004FBB4 0004B814 7C 08 02 A6 */ mflr r0 /* 8004FBB8 0004B818 90 01 00 14 */ stw r0, 0x14(r1) /* 8004FBBC 0004B81C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004FBC0 0004B820 7C 7F 1B 78 */ mr r31, r3 /* 8004FBC4 0004B824 48 00 05 01 */ bl func_800500C4 /* 8004FBC8 0004B828 2C 03 00 00 */ cmpwi r3, 0 /* 8004FBCC 0004B82C 41 80 00 34 */ blt lbl_8004FC00 /* 8004FBD0 0004B830 54 60 10 3A */ slwi r0, r3, 2 /* 8004FBD4 0004B834 7C 7F 02 14 */ add r3, r31, r0 /* 8004FBD8 0004B838 80 83 00 2C */ lwz r4, 0x2c(r3) /* 8004FBDC 0004B83C 2C 04 00 00 */ cmpwi r4, 0 /* 8004FBE0 0004B840 41 82 00 08 */ beq lbl_8004FBE8 /* 8004FBE4 0004B844 80 84 0C 04 */ lwz r4, 0xc04(r4) lbl_8004FBE8: /* 8004FBE8 0004B848 2C 04 00 00 */ cmpwi r4, 0 /* 8004FBEC 0004B84C 41 82 00 0C */ beq lbl_8004FBF8 /* 8004FBF0 0004B850 38 00 00 00 */ li r0, 0 /* 8004FBF4 0004B854 90 04 00 40 */ stw r0, 0x40(r4) lbl_8004FBF8: /* 8004FBF8 0004B858 38 00 00 00 */ li r0, 0 /* 8004FBFC 0004B85C 90 03 00 2C */ stw r0, 0x2c(r3) lbl_8004FC00: /* 8004FC00 0004B860 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004FC04 0004B864 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004FC08 0004B868 7C 08 03 A6 */ mtlr r0 /* 8004FC0C 0004B86C 38 21 00 10 */ addi r1, r1, 0x10 /* 8004FC10 0004B870 4E 80 00 20 */ blr .global func_8004FC14 func_8004FC14: /* 8004FC14 0004B874 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004FC18 0004B878 7C 08 02 A6 */ mflr r0 /* 8004FC1C 0004B87C 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FC20 0004B880 54 A0 00 01 */ rlwinm. r0, r5, 0, 0, 0 /* 8004FC24 0004B884 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8004FC28 0004B888 7C BF 2B 78 */ mr r31, r5 /* 8004FC2C 0004B88C 93 C1 00 18 */ stw r30, 0x18(r1) /* 8004FC30 0004B890 7C 9E 23 78 */ mr r30, r4 /* 8004FC34 0004B894 93 A1 00 14 */ stw r29, 0x14(r1) /* 8004FC38 0004B898 7C 7D 1B 78 */ mr r29, r3 /* 8004FC3C 0004B89C 40 82 00 4C */ bne lbl_8004FC88 /* 8004FC40 0004B8A0 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c /* 8004FC44 0004B8A4 41 82 00 2C */ beq lbl_8004FC70 /* 8004FC48 0004B8A8 54 A0 07 FF */ clrlwi. r0, r5, 0x1f /* 8004FC4C 0004B8AC 54 BF 07 76 */ rlwinm r31, r5, 0, 0x1d, 0x1b /* 8004FC50 0004B8B0 41 82 00 08 */ beq lbl_8004FC58 /* 8004FC54 0004B8B4 63 FF 00 40 */ ori r31, r31, 0x40 lbl_8004FC58: /* 8004FC58 0004B8B8 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e /* 8004FC5C 0004B8BC 41 82 00 08 */ beq lbl_8004FC64 /* 8004FC60 0004B8C0 63 FF 00 80 */ ori r31, r31, 0x80 lbl_8004FC64: /* 8004FC64 0004B8C4 57 E0 07 7B */ rlwinm. r0, r31, 0, 0x1d, 0x1d /* 8004FC68 0004B8C8 41 82 00 08 */ beq lbl_8004FC70 /* 8004FC6C 0004B8CC 63 FF 01 00 */ ori r31, r31, 0x100 lbl_8004FC70: /* 8004FC70 0004B8D0 57 E0 07 FF */ clrlwi. r0, r31, 0x1f /* 8004FC74 0004B8D4 40 82 00 08 */ bne lbl_8004FC7C /* 8004FC78 0004B8D8 63 FF 00 09 */ ori r31, r31, 9 lbl_8004FC7C: /* 8004FC7C 0004B8DC 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e /* 8004FC80 0004B8E0 40 82 00 08 */ bne lbl_8004FC88 /* 8004FC84 0004B8E4 63 FF 00 12 */ ori r31, r31, 0x12 lbl_8004FC88: /* 8004FC88 0004B8E8 2C 04 00 00 */ cmpwi r4, 0 /* 8004FC8C 0004B8EC 41 82 00 38 */ beq lbl_8004FCC4 /* 8004FC90 0004B8F0 80 83 00 00 */ lwz r4, 0(r3) /* 8004FC94 0004B8F4 2C 04 00 00 */ cmpwi r4, 0 /* 8004FC98 0004B8F8 41 82 00 2C */ beq lbl_8004FCC4 /* 8004FC9C 0004B8FC 80 64 00 C0 */ lwz r3, 0xc0(r4) /* 8004FCA0 0004B900 2C 03 00 00 */ cmpwi r3, 0 /* 8004FCA4 0004B904 41 82 00 08 */ beq lbl_8004FCAC /* 8004FCA8 0004B908 48 1A 25 81 */ bl func_801F2228 lbl_8004FCAC: /* 8004FCAC 0004B90C 80 BD 00 00 */ lwz r5, 0(r29) /* 8004FCB0 0004B910 7F C3 F3 78 */ mr r3, r30 /* 8004FCB4 0004B914 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 8004FCB8 0004B918 38 C0 00 00 */ li r6, 0 /* 8004FCBC 0004B91C 38 E0 00 03 */ li r7, 3 /* 8004FCC0 0004B920 48 1A 24 CD */ bl func_801F218C lbl_8004FCC4: /* 8004FCC4 0004B924 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004FCC8 0004B928 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8004FCCC 0004B92C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004FCD0 0004B930 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004FCD4 0004B934 7C 08 03 A6 */ mtlr r0 /* 8004FCD8 0004B938 38 21 00 20 */ addi r1, r1, 0x20 /* 8004FCDC 0004B93C 4E 80 00 20 */ blr .global func_8004FCE0 func_8004FCE0: /* 8004FCE0 0004B940 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004FCE4 0004B944 7C 08 02 A6 */ mflr r0 /* 8004FCE8 0004B948 90 01 00 14 */ stw r0, 0x14(r1) /* 8004FCEC 0004B94C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004FCF0 0004B950 7C 9F 23 78 */ mr r31, r4 /* 8004FCF4 0004B954 93 C1 00 08 */ stw r30, 8(r1) /* 8004FCF8 0004B958 7C 7E 1B 78 */ mr r30, r3 /* 8004FCFC 0004B95C 80 A3 00 00 */ lwz r5, 0(r3) /* 8004FD00 0004B960 2C 05 00 00 */ cmpwi r5, 0 /* 8004FD04 0004B964 41 82 00 28 */ beq lbl_8004FD2C /* 8004FD08 0004B968 C0 04 00 00 */ lfs f0, 0(r4) /* 8004FD0C 0004B96C 7C A3 2B 78 */ mr r3, r5 /* 8004FD10 0004B970 D0 05 00 20 */ stfs f0, 0x20(r5) /* 8004FD14 0004B974 C0 04 00 04 */ lfs f0, 4(r4) /* 8004FD18 0004B978 D0 05 00 24 */ stfs f0, 0x24(r5) /* 8004FD1C 0004B97C C0 04 00 08 */ lfs f0, 8(r4) /* 8004FD20 0004B980 38 80 00 01 */ li r4, 1 /* 8004FD24 0004B984 D0 05 00 28 */ stfs f0, 0x28(r5) /* 8004FD28 0004B988 48 1A 29 91 */ bl func_801F26B8 lbl_8004FD2C: /* 8004FD2C 0004B98C C0 1F 00 00 */ lfs f0, 0(r31) /* 8004FD30 0004B990 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 8004FD34 0004B994 C0 1F 00 04 */ lfs f0, 4(r31) /* 8004FD38 0004B998 D0 1E 00 18 */ stfs f0, 0x18(r30) /* 8004FD3C 0004B99C C0 1F 00 08 */ lfs f0, 8(r31) /* 8004FD40 0004B9A0 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 8004FD44 0004B9A4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004FD48 0004B9A8 83 C1 00 08 */ lwz r30, 8(r1) /* 8004FD4C 0004B9AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004FD50 0004B9B0 7C 08 03 A6 */ mtlr r0 /* 8004FD54 0004B9B4 38 21 00 10 */ addi r1, r1, 0x10 /* 8004FD58 0004B9B8 4E 80 00 20 */ blr .global func_8004FD5C func_8004FD5C: /* 8004FD5C 0004B9BC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004FD60 0004B9C0 7C 08 02 A6 */ mflr r0 /* 8004FD64 0004B9C4 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FD68 0004B9C8 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8004FD6C 0004B9CC FF E0 08 90 */ fmr f31, f1 /* 8004FD70 0004B9D0 93 E1 00 14 */ stw r31, 0x14(r1) /* 8004FD74 0004B9D4 7C BF 2B 78 */ mr r31, r5 /* 8004FD78 0004B9D8 7F E7 FB 78 */ mr r7, r31 /* 8004FD7C 0004B9DC 93 C1 00 10 */ stw r30, 0x10(r1) /* 8004FD80 0004B9E0 7C 9E 23 78 */ mr r30, r4 /* 8004FD84 0004B9E4 38 83 00 14 */ addi r4, r3, 0x14 /* 8004FD88 0004B9E8 93 A1 00 0C */ stw r29, 0xc(r1) /* 8004FD8C 0004B9EC 7C 7D 1B 78 */ mr r29, r3 /* 8004FD90 0004B9F0 7F C5 F3 78 */ mr r5, r30 /* 8004FD94 0004B9F4 7C 86 23 78 */ mr r6, r4 /* 8004FD98 0004B9F8 38 63 00 4C */ addi r3, r3, 0x4c /* 8004FD9C 0004B9FC 48 00 05 A1 */ bl func_8005033C /* 8004FDA0 0004BA00 FC 20 F8 90 */ fmr f1, f31 /* 8004FDA4 0004BA04 38 9D 00 18 */ addi r4, r29, 0x18 /* 8004FDA8 0004BA08 7C 86 23 78 */ mr r6, r4 /* 8004FDAC 0004BA0C 7F E7 FB 78 */ mr r7, r31 /* 8004FDB0 0004BA10 38 7D 00 70 */ addi r3, r29, 0x70 /* 8004FDB4 0004BA14 38 BE 00 04 */ addi r5, r30, 4 /* 8004FDB8 0004BA18 48 00 05 85 */ bl func_8005033C /* 8004FDBC 0004BA1C FC 20 F8 90 */ fmr f1, f31 /* 8004FDC0 0004BA20 38 9D 00 1C */ addi r4, r29, 0x1c /* 8004FDC4 0004BA24 7C 86 23 78 */ mr r6, r4 /* 8004FDC8 0004BA28 7F E7 FB 78 */ mr r7, r31 /* 8004FDCC 0004BA2C 38 7D 00 94 */ addi r3, r29, 0x94 /* 8004FDD0 0004BA30 38 BE 00 08 */ addi r5, r30, 8 /* 8004FDD4 0004BA34 48 00 05 69 */ bl func_8005033C /* 8004FDD8 0004BA38 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004FDDC 0004BA3C CB E1 00 18 */ lfd f31, 0x18(r1) /* 8004FDE0 0004BA40 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8004FDE4 0004BA44 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8004FDE8 0004BA48 83 A1 00 0C */ lwz r29, 0xc(r1) /* 8004FDEC 0004BA4C 7C 08 03 A6 */ mtlr r0 /* 8004FDF0 0004BA50 38 21 00 20 */ addi r1, r1, 0x20 /* 8004FDF4 0004BA54 4E 80 00 20 */ blr .global func_8004FDF8 func_8004FDF8: /* 8004FDF8 0004BA58 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8004FDFC 0004BA5C 7C 08 02 A6 */ mflr r0 /* 8004FE00 0004BA60 90 01 00 14 */ stw r0, 0x14(r1) /* 8004FE04 0004BA64 93 E1 00 0C */ stw r31, 0xc(r1) /* 8004FE08 0004BA68 7C 9F 23 78 */ mr r31, r4 /* 8004FE0C 0004BA6C 93 C1 00 08 */ stw r30, 8(r1) /* 8004FE10 0004BA70 7C 7E 1B 78 */ mr r30, r3 /* 8004FE14 0004BA74 80 03 00 00 */ lwz r0, 0(r3) /* 8004FE18 0004BA78 2C 00 00 00 */ cmpwi r0, 0 /* 8004FE1C 0004BA7C 41 82 00 0C */ beq lbl_8004FE28 /* 8004FE20 0004BA80 7C 03 03 78 */ mr r3, r0 /* 8004FE24 0004BA84 48 19 66 B9 */ bl func_801E64DC lbl_8004FE28: /* 8004FE28 0004BA88 C0 1F 00 00 */ lfs f0, 0(r31) /* 8004FE2C 0004BA8C D0 1E 00 20 */ stfs f0, 0x20(r30) /* 8004FE30 0004BA90 C0 1F 00 04 */ lfs f0, 4(r31) /* 8004FE34 0004BA94 D0 1E 00 24 */ stfs f0, 0x24(r30) /* 8004FE38 0004BA98 C0 1F 00 08 */ lfs f0, 8(r31) /* 8004FE3C 0004BA9C D0 1E 00 28 */ stfs f0, 0x28(r30) /* 8004FE40 0004BAA0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004FE44 0004BAA4 83 C1 00 08 */ lwz r30, 8(r1) /* 8004FE48 0004BAA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004FE4C 0004BAAC 7C 08 03 A6 */ mtlr r0 /* 8004FE50 0004BAB0 38 21 00 10 */ addi r1, r1, 0x10 /* 8004FE54 0004BAB4 4E 80 00 20 */ blr .global func_8004FE58 func_8004FE58: /* 8004FE58 0004BAB8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004FE5C 0004BABC 7C 08 02 A6 */ mflr r0 /* 8004FE60 0004BAC0 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FE64 0004BAC4 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8004FE68 0004BAC8 FF E0 08 90 */ fmr f31, f1 /* 8004FE6C 0004BACC 93 E1 00 14 */ stw r31, 0x14(r1) /* 8004FE70 0004BAD0 7C BF 2B 78 */ mr r31, r5 /* 8004FE74 0004BAD4 7F E7 FB 78 */ mr r7, r31 /* 8004FE78 0004BAD8 93 C1 00 10 */ stw r30, 0x10(r1) /* 8004FE7C 0004BADC 7C 9E 23 78 */ mr r30, r4 /* 8004FE80 0004BAE0 38 83 00 20 */ addi r4, r3, 0x20 /* 8004FE84 0004BAE4 93 A1 00 0C */ stw r29, 0xc(r1) /* 8004FE88 0004BAE8 7C 7D 1B 78 */ mr r29, r3 /* 8004FE8C 0004BAEC 7F C5 F3 78 */ mr r5, r30 /* 8004FE90 0004BAF0 7C 86 23 78 */ mr r6, r4 /* 8004FE94 0004BAF4 38 63 00 B8 */ addi r3, r3, 0xb8 /* 8004FE98 0004BAF8 48 00 04 A5 */ bl func_8005033C /* 8004FE9C 0004BAFC FC 20 F8 90 */ fmr f1, f31 /* 8004FEA0 0004BB00 38 9D 00 24 */ addi r4, r29, 0x24 /* 8004FEA4 0004BB04 7C 86 23 78 */ mr r6, r4 /* 8004FEA8 0004BB08 7F E7 FB 78 */ mr r7, r31 /* 8004FEAC 0004BB0C 38 7D 00 DC */ addi r3, r29, 0xdc /* 8004FEB0 0004BB10 38 BE 00 04 */ addi r5, r30, 4 /* 8004FEB4 0004BB14 48 00 04 89 */ bl func_8005033C /* 8004FEB8 0004BB18 FC 20 F8 90 */ fmr f1, f31 /* 8004FEBC 0004BB1C 38 9D 00 28 */ addi r4, r29, 0x28 /* 8004FEC0 0004BB20 7C 86 23 78 */ mr r6, r4 /* 8004FEC4 0004BB24 7F E7 FB 78 */ mr r7, r31 /* 8004FEC8 0004BB28 38 7D 01 00 */ addi r3, r29, 0x100 /* 8004FECC 0004BB2C 38 BE 00 08 */ addi r5, r30, 8 /* 8004FED0 0004BB30 48 00 04 6D */ bl func_8005033C /* 8004FED4 0004BB34 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004FED8 0004BB38 CB E1 00 18 */ lfd f31, 0x18(r1) /* 8004FEDC 0004BB3C 83 E1 00 14 */ lwz r31, 0x14(r1) /* 8004FEE0 0004BB40 83 C1 00 10 */ lwz r30, 0x10(r1) /* 8004FEE4 0004BB44 83 A1 00 0C */ lwz r29, 0xc(r1) /* 8004FEE8 0004BB48 7C 08 03 A6 */ mtlr r0 /* 8004FEEC 0004BB4C 38 21 00 20 */ addi r1, r1, 0x20 /* 8004FEF0 0004BB50 4E 80 00 20 */ blr .global func_8004FEF4 func_8004FEF4: /* 8004FEF4 0004BB54 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8004FEF8 0004BB58 3C 00 43 30 */ lis r0, 0x4330 /* 8004FEFC 0004BB5C 80 A3 00 00 */ lwz r5, 0(r3) /* 8004FF00 0004BB60 90 01 00 08 */ stw r0, 8(r1) /* 8004FF04 0004BB64 2C 05 00 00 */ cmpwi r5, 0 /* 8004FF08 0004BB68 90 01 00 10 */ stw r0, 0x10(r1) /* 8004FF0C 0004BB6C 41 82 00 24 */ beq lbl_8004FF30 /* 8004FF10 0004BB70 88 04 00 00 */ lbz r0, 0(r4) /* 8004FF14 0004BB74 98 05 01 10 */ stb r0, 0x110(r5) /* 8004FF18 0004BB78 88 04 00 01 */ lbz r0, 1(r4) /* 8004FF1C 0004BB7C 98 05 01 11 */ stb r0, 0x111(r5) /* 8004FF20 0004BB80 88 04 00 02 */ lbz r0, 2(r4) /* 8004FF24 0004BB84 98 05 01 12 */ stb r0, 0x112(r5) /* 8004FF28 0004BB88 88 04 00 03 */ lbz r0, 3(r4) /* 8004FF2C 0004BB8C 98 05 01 13 */ stb r0, 0x113(r5) lbl_8004FF30: /* 8004FF30 0004BB90 88 04 00 00 */ lbz r0, 0(r4) /* 8004FF34 0004BB94 C8 22 84 78 */ lfd f1, lbl_80640A78-_SDA2_BASE_(r2) /* 8004FF38 0004BB98 90 01 00 0C */ stw r0, 0xc(r1) /* 8004FF3C 0004BB9C C8 01 00 08 */ lfd f0, 8(r1) /* 8004FF40 0004BBA0 EC 00 08 28 */ fsubs f0, f0, f1 /* 8004FF44 0004BBA4 D0 03 00 04 */ stfs f0, 4(r3) /* 8004FF48 0004BBA8 88 04 00 01 */ lbz r0, 1(r4) /* 8004FF4C 0004BBAC 90 01 00 14 */ stw r0, 0x14(r1) /* 8004FF50 0004BBB0 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8004FF54 0004BBB4 EC 00 08 28 */ fsubs f0, f0, f1 /* 8004FF58 0004BBB8 D0 03 00 08 */ stfs f0, 8(r3) /* 8004FF5C 0004BBBC 88 04 00 02 */ lbz r0, 2(r4) /* 8004FF60 0004BBC0 90 01 00 0C */ stw r0, 0xc(r1) /* 8004FF64 0004BBC4 C8 01 00 08 */ lfd f0, 8(r1) /* 8004FF68 0004BBC8 EC 00 08 28 */ fsubs f0, f0, f1 /* 8004FF6C 0004BBCC D0 03 00 0C */ stfs f0, 0xc(r3) /* 8004FF70 0004BBD0 88 04 00 03 */ lbz r0, 3(r4) /* 8004FF74 0004BBD4 90 01 00 14 */ stw r0, 0x14(r1) /* 8004FF78 0004BBD8 C8 01 00 10 */ lfd f0, 0x10(r1) /* 8004FF7C 0004BBDC EC 00 08 28 */ fsubs f0, f0, f1 /* 8004FF80 0004BBE0 D0 03 00 10 */ stfs f0, 0x10(r3) /* 8004FF84 0004BBE4 38 21 00 20 */ addi r1, r1, 0x20 /* 8004FF88 0004BBE8 4E 80 00 20 */ blr .global func_8004FF8C func_8004FF8C: /* 8004FF8C 0004BBEC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8004FF90 0004BBF0 7C 08 02 A6 */ mflr r0 /* 8004FF94 0004BBF4 3C C0 43 30 */ lis r6, 0x4330 /* 8004FF98 0004BBF8 7C A7 2B 78 */ mr r7, r5 /* 8004FF9C 0004BBFC 90 01 00 34 */ stw r0, 0x34(r1) /* 8004FFA0 0004BC00 38 A1 00 08 */ addi r5, r1, 8 /* 8004FFA4 0004BC04 C8 42 84 78 */ lfd f2, lbl_80640A78-_SDA2_BASE_(r2) /* 8004FFA8 0004BC08 88 04 00 00 */ lbz r0, 0(r4) /* 8004FFAC 0004BC0C 90 C1 00 18 */ stw r6, 0x18(r1) /* 8004FFB0 0004BC10 90 01 00 1C */ stw r0, 0x1c(r1) /* 8004FFB4 0004BC14 C8 01 00 18 */ lfd f0, 0x18(r1) /* 8004FFB8 0004BC18 90 C1 00 20 */ stw r6, 0x20(r1) /* 8004FFBC 0004BC1C EC 00 10 28 */ fsubs f0, f0, f2 /* 8004FFC0 0004BC20 D0 01 00 08 */ stfs f0, 8(r1) /* 8004FFC4 0004BC24 88 04 00 01 */ lbz r0, 1(r4) /* 8004FFC8 0004BC28 90 01 00 24 */ stw r0, 0x24(r1) /* 8004FFCC 0004BC2C C8 01 00 20 */ lfd f0, 0x20(r1) /* 8004FFD0 0004BC30 EC 00 10 28 */ fsubs f0, f0, f2 /* 8004FFD4 0004BC34 D0 01 00 0C */ stfs f0, 0xc(r1) /* 8004FFD8 0004BC38 88 04 00 02 */ lbz r0, 2(r4) /* 8004FFDC 0004BC3C 90 01 00 1C */ stw r0, 0x1c(r1) /* 8004FFE0 0004BC40 C8 01 00 18 */ lfd f0, 0x18(r1) /* 8004FFE4 0004BC44 EC 00 10 28 */ fsubs f0, f0, f2 /* 8004FFE8 0004BC48 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8004FFEC 0004BC4C 88 04 00 03 */ lbz r0, 3(r4) /* 8004FFF0 0004BC50 38 83 00 04 */ addi r4, r3, 4 /* 8004FFF4 0004BC54 7C 86 23 78 */ mr r6, r4 /* 8004FFF8 0004BC58 38 63 01 24 */ addi r3, r3, 0x124 /* 8004FFFC 0004BC5C 90 01 00 24 */ stw r0, 0x24(r1) /* 80050000 0004BC60 C8 01 00 20 */ lfd f0, 0x20(r1) /* 80050004 0004BC64 EC 00 10 28 */ fsubs f0, f0, f2 /* 80050008 0004BC68 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8005000C 0004BC6C 48 00 0B 41 */ bl func_80050B4C /* 80050010 0004BC70 80 01 00 34 */ lwz r0, 0x34(r1) /* 80050014 0004BC74 7C 08 03 A6 */ mtlr r0 /* 80050018 0004BC78 38 21 00 30 */ addi r1, r1, 0x30 /* 8005001C 0004BC7C 4E 80 00 20 */ blr .global func_80050020 func_80050020: /* 80050020 0004BC80 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80050024 0004BC84 7C 08 02 A6 */ mflr r0 /* 80050028 0004BC88 90 01 00 34 */ stw r0, 0x34(r1) /* 8005002C 0004BC8C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80050030 0004BC90 7C 7F 1B 78 */ mr r31, r3 /* 80050034 0004BC94 C0 04 00 00 */ lfs f0, 0(r4) /* 80050038 0004BC98 D0 03 01 64 */ stfs f0, 0x164(r3) /* 8005003C 0004BC9C C0 04 00 04 */ lfs f0, 4(r4) /* 80050040 0004BCA0 D0 03 01 68 */ stfs f0, 0x168(r3) /* 80050044 0004BCA4 C0 04 00 08 */ lfs f0, 8(r4) /* 80050048 0004BCA8 D0 03 01 6C */ stfs f0, 0x16c(r3) /* 8005004C 0004BCAC 38 61 00 18 */ addi r3, r1, 0x18 /* 80050050 0004BCB0 C0 44 00 08 */ lfs f2, 8(r4) /* 80050054 0004BCB4 C0 24 00 04 */ lfs f1, 4(r4) /* 80050058 0004BCB8 C0 04 00 00 */ lfs f0, 0(r4) /* 8005005C 0004BCBC 38 81 00 08 */ addi r4, r1, 8 /* 80050060 0004BCC0 D0 01 00 08 */ stfs f0, 8(r1) /* 80050064 0004BCC4 D0 21 00 0C */ stfs f1, 0xc(r1) /* 80050068 0004BCC8 D0 41 00 10 */ stfs f2, 0x10(r1) /* 8005006C 0004BCCC 48 1D 36 55 */ bl func_802236C0 /* 80050070 0004BCD0 80 7F 00 00 */ lwz r3, 0(r31) /* 80050074 0004BCD4 2C 03 00 00 */ cmpwi r3, 0 /* 80050078 0004BCD8 41 82 00 38 */ beq lbl_800500B0 /* 8005007C 0004BCDC C0 01 00 18 */ lfs f0, 0x18(r1) /* 80050080 0004BCE0 38 80 00 01 */ li r4, 1 /* 80050084 0004BCE4 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80050088 0004BCE8 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8005008C 0004BCEC D0 03 00 30 */ stfs f0, 0x30(r3) /* 80050090 0004BCF0 C0 01 00 20 */ lfs f0, 0x20(r1) /* 80050094 0004BCF4 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80050098 0004BCF8 C0 01 00 24 */ lfs f0, 0x24(r1) /* 8005009C 0004BCFC D0 03 00 38 */ stfs f0, 0x38(r3) /* 800500A0 0004BD00 A0 03 00 10 */ lhz r0, 0x10(r3) /* 800500A4 0004BD04 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 800500A8 0004BD08 B0 03 00 10 */ sth r0, 0x10(r3) /* 800500AC 0004BD0C 48 1A 26 0D */ bl func_801F26B8 lbl_800500B0: /* 800500B0 0004BD10 80 01 00 34 */ lwz r0, 0x34(r1) /* 800500B4 0004BD14 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800500B8 0004BD18 7C 08 03 A6 */ mtlr r0 /* 800500BC 0004BD1C 38 21 00 30 */ addi r1, r1, 0x30 /* 800500C0 0004BD20 4E 80 00 20 */ blr .global func_800500C4 func_800500C4: /* 800500C4 0004BD24 80 03 00 2C */ lwz r0, 0x2c(r3) /* 800500C8 0004BD28 7C 00 20 40 */ cmplw r0, r4 /* 800500CC 0004BD2C 40 82 00 0C */ bne lbl_800500D8 /* 800500D0 0004BD30 38 60 00 00 */ li r3, 0 /* 800500D4 0004BD34 4E 80 00 20 */ blr lbl_800500D8: /* 800500D8 0004BD38 80 03 00 30 */ lwz r0, 0x30(r3) /* 800500DC 0004BD3C 7C 00 20 40 */ cmplw r0, r4 /* 800500E0 0004BD40 40 82 00 0C */ bne lbl_800500EC /* 800500E4 0004BD44 38 60 00 01 */ li r3, 1 /* 800500E8 0004BD48 4E 80 00 20 */ blr lbl_800500EC: /* 800500EC 0004BD4C 80 03 00 34 */ lwz r0, 0x34(r3) /* 800500F0 0004BD50 7C 00 20 40 */ cmplw r0, r4 /* 800500F4 0004BD54 40 82 00 0C */ bne lbl_80050100 /* 800500F8 0004BD58 38 60 00 02 */ li r3, 2 /* 800500FC 0004BD5C 4E 80 00 20 */ blr lbl_80050100: /* 80050100 0004BD60 80 03 00 38 */ lwz r0, 0x38(r3) /* 80050104 0004BD64 7C 00 20 40 */ cmplw r0, r4 /* 80050108 0004BD68 40 82 00 0C */ bne lbl_80050114 /* 8005010C 0004BD6C 38 60 00 03 */ li r3, 3 /* 80050110 0004BD70 4E 80 00 20 */ blr lbl_80050114: /* 80050114 0004BD74 80 03 00 3C */ lwz r0, 0x3c(r3) /* 80050118 0004BD78 7C 00 20 40 */ cmplw r0, r4 /* 8005011C 0004BD7C 40 82 00 0C */ bne lbl_80050128 /* 80050120 0004BD80 38 60 00 04 */ li r3, 4 /* 80050124 0004BD84 4E 80 00 20 */ blr lbl_80050128: /* 80050128 0004BD88 80 03 00 40 */ lwz r0, 0x40(r3) /* 8005012C 0004BD8C 7C 00 20 40 */ cmplw r0, r4 /* 80050130 0004BD90 40 82 00 0C */ bne lbl_8005013C /* 80050134 0004BD94 38 60 00 05 */ li r3, 5 /* 80050138 0004BD98 4E 80 00 20 */ blr lbl_8005013C: /* 8005013C 0004BD9C 80 03 00 44 */ lwz r0, 0x44(r3) /* 80050140 0004BDA0 7C 00 20 40 */ cmplw r0, r4 /* 80050144 0004BDA4 40 82 00 0C */ bne lbl_80050150 /* 80050148 0004BDA8 38 60 00 06 */ li r3, 6 /* 8005014C 0004BDAC 4E 80 00 20 */ blr lbl_80050150: /* 80050150 0004BDB0 80 03 00 48 */ lwz r0, 0x48(r3) /* 80050154 0004BDB4 7C 00 20 40 */ cmplw r0, r4 /* 80050158 0004BDB8 40 82 00 0C */ bne lbl_80050164 /* 8005015C 0004BDBC 38 60 00 07 */ li r3, 7 /* 80050160 0004BDC0 4E 80 00 20 */ blr lbl_80050164: /* 80050164 0004BDC4 38 60 FF FF */ li r3, -1 /* 80050168 0004BDC8 4E 80 00 20 */ blr .global func_8005016C func_8005016C: /* 8005016C 0004BDCC 38 A0 00 01 */ li r5, 1 /* 80050170 0004BDD0 38 6D 98 48 */ addi r3, r13, lbl_8063EB08-_SDA_BASE_ /* 80050174 0004BDD4 38 80 00 04 */ li r4, 4 /* 80050178 0004BDD8 38 00 00 00 */ li r0, 0 /* 8005017C 0004BDDC 98 AD 98 48 */ stb r5, lbl_8063EB08-_SDA_BASE_(r13) /* 80050180 0004BDE0 B0 83 00 02 */ sth r4, 2(r3) /* 80050184 0004BDE4 98 03 00 04 */ stb r0, 4(r3) /* 80050188 0004BDE8 4E 80 00 20 */ blr .global func_8005018C func_8005018C: /* 8005018C 0004BDEC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80050190 0004BDF0 7C 08 02 A6 */ mflr r0 /* 80050194 0004BDF4 90 01 00 24 */ stw r0, 0x24(r1) /* 80050198 0004BDF8 DB E1 00 18 */ stfd f31, 0x18(r1) /* 8005019C 0004BDFC FF E0 08 90 */ fmr f31, f1 /* 800501A0 0004BE00 93 E1 00 14 */ stw r31, 0x14(r1) /* 800501A4 0004BE04 7C 7F 1B 78 */ mr r31, r3 /* 800501A8 0004BE08 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 800501AC 0004BE0C 88 04 04 68 */ lbz r0, 0x468(r4) /* 800501B0 0004BE10 2C 00 00 00 */ cmpwi r0, 0 /* 800501B4 0004BE14 41 82 00 0C */ beq lbl_800501C0 /* 800501B8 0004BE18 7C 83 23 78 */ mr r3, r4 /* 800501BC 0004BE1C 48 1A ED AD */ bl func_801FEF68 lbl_800501C0: /* 800501C0 0004BE20 2C 1F 00 02 */ cmpwi r31, 2 /* 800501C4 0004BE24 41 82 00 70 */ beq lbl_80050234 /* 800501C8 0004BE28 40 80 00 DC */ bge lbl_800502A4 /* 800501CC 0004BE2C 2C 1F 00 01 */ cmpwi r31, 1 /* 800501D0 0004BE30 40 80 00 08 */ bge lbl_800501D8 /* 800501D4 0004BE34 48 00 00 D0 */ b lbl_800502A4 lbl_800501D8: /* 800501D8 0004BE38 80 CD A1 50 */ lwz r6, lbl_8063F410-_SDA_BASE_(r13) /* 800501DC 0004BE3C 3C 60 1B 7A */ lis r3, 0x1B7A0C00@ha /* 800501E0 0004BE40 38 83 0C 00 */ addi r4, r3, 0x1B7A0C00@l /* 800501E4 0004BE44 3B E0 00 00 */ li r31, 0 /* 800501E8 0004BE48 D3 E6 04 58 */ stfs f31, 0x458(r6) /* 800501EC 0004BE4C 38 A0 00 17 */ li r5, 0x17 /* 800501F0 0004BE50 38 00 00 FF */ li r0, 0xff /* 800501F4 0004BE54 38 60 00 0A */ li r3, 0xa /* 800501F8 0004BE58 9B E6 04 60 */ stb r31, 0x460(r6) /* 800501FC 0004BE5C 9B E6 04 61 */ stb r31, 0x461(r6) /* 80050200 0004BE60 80 CD A1 50 */ lwz r6, lbl_8063F410-_SDA_BASE_(r13) /* 80050204 0004BE64 B0 A6 04 62 */ sth r5, 0x462(r6) /* 80050208 0004BE68 D3 E6 04 5C */ stfs f31, 0x45c(r6) /* 8005020C 0004BE6C 80 AD A1 50 */ lwz r5, lbl_8063F410-_SDA_BASE_(r13) /* 80050210 0004BE70 9B E5 04 94 */ stb r31, 0x494(r5) /* 80050214 0004BE74 9B E5 04 95 */ stb r31, 0x495(r5) /* 80050218 0004BE78 9B E5 04 96 */ stb r31, 0x496(r5) /* 8005021C 0004BE7C 98 05 04 97 */ stb r0, 0x497(r5) /* 80050220 0004BE80 48 18 B2 9D */ bl func_801DB4BC /* 80050224 0004BE84 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80050228 0004BE88 93 E4 04 9C */ stw r31, 0x49c(r4) /* 8005022C 0004BE8C 90 64 04 A0 */ stw r3, 0x4a0(r4) /* 80050230 0004BE90 48 00 00 68 */ b lbl_80050298 lbl_80050234: /* 80050234 0004BE94 80 ED A1 50 */ lwz r7, lbl_8063F410-_SDA_BASE_(r13) /* 80050238 0004BE98 3C 60 1B 7A */ lis r3, 0x1B7A0C00@ha /* 8005023C 0004BE9C 38 83 0C 00 */ addi r4, r3, 0x1B7A0C00@l /* 80050240 0004BEA0 38 C0 00 01 */ li r6, 1 /* 80050244 0004BEA4 D3 E7 04 58 */ stfs f31, 0x458(r7) /* 80050248 0004BEA8 38 A0 00 17 */ li r5, 0x17 /* 8005024C 0004BEAC 3B E0 00 00 */ li r31, 0 /* 80050250 0004BEB0 38 00 00 FF */ li r0, 0xff /* 80050254 0004BEB4 98 C7 04 60 */ stb r6, 0x460(r7) /* 80050258 0004BEB8 38 60 00 0A */ li r3, 0xa /* 8005025C 0004BEBC 98 C7 04 61 */ stb r6, 0x461(r7) /* 80050260 0004BEC0 80 CD A1 50 */ lwz r6, lbl_8063F410-_SDA_BASE_(r13) /* 80050264 0004BEC4 B0 A6 04 62 */ sth r5, 0x462(r6) /* 80050268 0004BEC8 D3 E6 04 5C */ stfs f31, 0x45c(r6) /* 8005026C 0004BECC 80 AD A1 50 */ lwz r5, lbl_8063F410-_SDA_BASE_(r13) /* 80050270 0004BED0 9B E5 04 94 */ stb r31, 0x494(r5) /* 80050274 0004BED4 9B E5 04 95 */ stb r31, 0x495(r5) /* 80050278 0004BED8 9B E5 04 96 */ stb r31, 0x496(r5) /* 8005027C 0004BEDC 98 05 04 97 */ stb r0, 0x497(r5) /* 80050280 0004BEE0 48 18 B2 3D */ bl func_801DB4BC /* 80050284 0004BEE4 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 80050288 0004BEE8 93 E4 04 9C */ stw r31, 0x49c(r4) /* 8005028C 0004BEEC 90 64 04 A0 */ stw r3, 0x4a0(r4) /* 80050290 0004BEF0 48 00 00 08 */ b lbl_80050298 /* 80050294 0004BEF4 48 00 00 10 */ b lbl_800502A4 lbl_80050298: /* 80050298 0004BEF8 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 8005029C 0004BEFC 38 80 00 01 */ li r4, 1 /* 800502A0 0004BF00 48 1A EB 8D */ bl func_801FEE2C lbl_800502A4: /* 800502A4 0004BF04 80 01 00 24 */ lwz r0, 0x24(r1) /* 800502A8 0004BF08 CB E1 00 18 */ lfd f31, 0x18(r1) /* 800502AC 0004BF0C 83 E1 00 14 */ lwz r31, 0x14(r1) /* 800502B0 0004BF10 7C 08 03 A6 */ mtlr r0 /* 800502B4 0004BF14 38 21 00 20 */ addi r1, r1, 0x20 /* 800502B8 0004BF18 4E 80 00 20 */ blr .global func_800502BC func_800502BC: /* 800502BC 0004BF1C 80 8D A1 50 */ lwz r4, lbl_8063F410-_SDA_BASE_(r13) /* 800502C0 0004BF20 88 04 04 68 */ lbz r0, 0x468(r4) /* 800502C4 0004BF24 2C 00 00 00 */ cmpwi r0, 0 /* 800502C8 0004BF28 41 82 00 34 */ beq lbl_800502FC /* 800502CC 0004BF2C C0 44 04 74 */ lfs f2, 0x474(r4) /* 800502D0 0004BF30 38 60 00 00 */ li r3, 0 /* 800502D4 0004BF34 C0 24 04 78 */ lfs f1, 0x478(r4) /* 800502D8 0004BF38 C0 02 84 80 */ lfs f0, lbl_80640A80-_SDA2_BASE_(r2) /* 800502DC 0004BF3C EC 22 08 28 */ fsubs f1, f2, f1 /* 800502E0 0004BF40 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800502E4 0004BF44 4C 80 00 20 */ bgelr /* 800502E8 0004BF48 C0 02 84 84 */ lfs f0, lbl_80640A84-_SDA2_BASE_(r2) /* 800502EC 0004BF4C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800502F0 0004BF50 4C 81 00 20 */ blelr /* 800502F4 0004BF54 38 60 00 01 */ li r3, 1 /* 800502F8 0004BF58 4E 80 00 20 */ blr lbl_800502FC: /* 800502FC 0004BF5C 38 60 00 00 */ li r3, 0 /* 80050300 0004BF60 4E 80 00 20 */ blr .global func_80050304 func_80050304: /* 80050304 0004BF64 38 A0 00 01 */ li r5, 1 /* 80050308 0004BF68 38 6D 98 58 */ addi r3, r13, lbl_8063EB18-_SDA_BASE_ /* 8005030C 0004BF6C 38 80 00 04 */ li r4, 4 /* 80050310 0004BF70 38 00 00 00 */ li r0, 0 /* 80050314 0004BF74 98 AD 98 58 */ stb r5, lbl_8063EB18-_SDA_BASE_(r13) /* 80050318 0004BF78 B0 83 00 02 */ sth r4, 2(r3) /* 8005031C 0004BF7C 98 03 00 04 */ stb r0, 4(r3) /* 80050320 0004BF80 4E 80 00 20 */ blr .global func_80050324 func_80050324: /* 80050324 0004BF84 3C 80 80 41 */ lis r4, lbl_8040AC88@ha /* 80050328 0004BF88 38 00 00 00 */ li r0, 0 /* 8005032C 0004BF8C 38 84 AC 88 */ addi r4, r4, lbl_8040AC88@l /* 80050330 0004BF90 90 03 00 00 */ stw r0, 0(r3) /* 80050334 0004BF94 90 83 00 20 */ stw r4, 0x20(r3) /* 80050338 0004BF98 4E 80 00 20 */ blr .global func_8005033C func_8005033C: /* 8005033C 0004BF9C C0 62 84 88 */ lfs f3, lbl_80640A88-_SDA2_BASE_(r2) /* 80050340 0004BFA0 FC 03 08 00 */ fcmpu cr0, f3, f1 /* 80050344 0004BFA4 40 82 00 14 */ bne lbl_80050358 /* 80050348 0004BFA8 C0 05 00 00 */ lfs f0, 0(r5) /* 8005034C 0004BFAC 38 60 00 00 */ li r3, 0 /* 80050350 0004BFB0 D0 06 00 00 */ stfs f0, 0(r6) /* 80050354 0004BFB4 4E 80 00 20 */ blr lbl_80050358: /* 80050358 0004BFB8 C0 44 00 00 */ lfs f2, 0(r4) /* 8005035C 0004BFBC 38 00 00 01 */ li r0, 1 /* 80050360 0004BFC0 C0 05 00 00 */ lfs f0, 0(r5) /* 80050364 0004BFC4 90 03 00 00 */ stw r0, 0(r3) /* 80050368 0004BFC8 D0 43 00 04 */ stfs f2, 4(r3) /* 8005036C 0004BFCC D0 03 00 08 */ stfs f0, 8(r3) /* 80050370 0004BFD0 D0 23 00 10 */ stfs f1, 0x10(r3) /* 80050374 0004BFD4 D0 63 00 14 */ stfs f3, 0x14(r3) /* 80050378 0004BFD8 90 E3 00 18 */ stw r7, 0x18(r3) /* 8005037C 0004BFDC 90 C3 00 0C */ stw r6, 0xc(r3) /* 80050380 0004BFE0 38 60 00 01 */ li r3, 1 /* 80050384 0004BFE4 4E 80 00 20 */ blr .global func_80050388 func_80050388: /* 80050388 0004BFE8 38 00 00 00 */ li r0, 0 /* 8005038C 0004BFEC 90 03 00 00 */ stw r0, 0(r3) /* 80050390 0004BFF0 4E 80 00 20 */ blr /* 80050394 0004BFF4 80 03 00 00 */ lwz r0, 0(r3) /* 80050398 0004BFF8 2C 00 00 00 */ cmpwi r0, 0 /* 8005039C 0004BFFC 40 82 00 0C */ bne lbl_800503A8 /* 800503A0 0004C000 38 60 00 00 */ li r3, 0 /* 800503A4 0004C004 4E 80 00 20 */ blr lbl_800503A8: /* 800503A8 0004C008 C0 43 00 14 */ lfs f2, 0x14(r3) /* 800503AC 0004C00C C0 03 00 10 */ lfs f0, 0x10(r3) /* 800503B0 0004C010 EC 22 08 2A */ fadds f1, f2, f1 /* 800503B4 0004C014 C0 62 84 8C */ lfs f3, lbl_80640A8C-_SDA2_BASE_(r2) /* 800503B8 0004C018 EC 81 00 24 */ fdivs f4, f1, f0 /* 800503BC 0004C01C D0 23 00 14 */ stfs f1, 0x14(r3) /* 800503C0 0004C020 FC 04 18 40 */ fcmpo cr0, f4, f3 /* 800503C4 0004C024 4C 41 13 82 */ cror 2, 1, 2 /* 800503C8 0004C028 40 82 00 20 */ bne lbl_800503E8 /* 800503CC 0004C02C C0 03 00 08 */ lfs f0, 8(r3) /* 800503D0 0004C030 38 00 00 00 */ li r0, 0 /* 800503D4 0004C034 80 83 00 0C */ lwz r4, 0xc(r3) /* 800503D8 0004C038 D0 04 00 00 */ stfs f0, 0(r4) /* 800503DC 0004C03C 90 03 00 00 */ stw r0, 0(r3) /* 800503E0 0004C040 38 60 00 01 */ li r3, 1 /* 800503E4 0004C044 4E 80 00 20 */ blr lbl_800503E8: /* 800503E8 0004C048 80 03 00 18 */ lwz r0, 0x18(r3) /* 800503EC 0004C04C 28 00 00 08 */ cmplwi r0, 8 /* 800503F0 0004C050 41 81 01 08 */ bgt lbl_800504F8 /* 800503F4 0004C054 3C 80 80 41 */ lis r4, lbl_8040AB08@ha /* 800503F8 0004C058 54 00 10 3A */ slwi r0, r0, 2 /* 800503FC 0004C05C 38 84 AB 08 */ addi r4, r4, lbl_8040AB08@l /* 80050400 0004C060 7C 84 00 2E */ lwzx r4, r4, r0 /* 80050404 0004C064 7C 89 03 A6 */ mtctr r4 /* 80050408 0004C068 4E 80 04 20 */ bctr /* 8005040C 0004C06C 48 00 00 F4 */ b lbl_80050500 /* 80050410 0004C070 EC 84 01 32 */ fmuls f4, f4, f4 /* 80050414 0004C074 48 00 00 EC */ b lbl_80050500 /* 80050418 0004C078 EC 04 01 32 */ fmuls f0, f4, f4 /* 8005041C 0004C07C EC 84 00 32 */ fmuls f4, f4, f0 /* 80050420 0004C080 48 00 00 E0 */ b lbl_80050500 /* 80050424 0004C084 EC 04 18 28 */ fsubs f0, f4, f3 /* 80050428 0004C088 EC 00 00 32 */ fmuls f0, f0, f0 /* 8005042C 0004C08C EC 83 00 28 */ fsubs f4, f3, f0 /* 80050430 0004C090 48 00 00 D0 */ b lbl_80050500 /* 80050434 0004C094 EC 24 18 28 */ fsubs f1, f4, f3 /* 80050438 0004C098 EC 01 00 72 */ fmuls f0, f1, f1 /* 8005043C 0004C09C EC 01 00 32 */ fmuls f0, f1, f0 /* 80050440 0004C0A0 EC 83 00 2A */ fadds f4, f3, f0 /* 80050444 0004C0A4 48 00 00 BC */ b lbl_80050500 /* 80050448 0004C0A8 C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 8005044C 0004C0AC FC 04 10 40 */ fcmpo cr0, f4, f2 /* 80050450 0004C0B0 40 80 00 18 */ bge lbl_80050468 /* 80050454 0004C0B4 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050458 0004C0B8 EC 20 01 32 */ fmuls f1, f0, f4 /* 8005045C 0004C0BC EC 02 00 72 */ fmuls f0, f2, f1 /* 80050460 0004C0C0 EC 80 00 72 */ fmuls f4, f0, f1 /* 80050464 0004C0C4 48 00 00 9C */ b lbl_80050500 lbl_80050468: /* 80050468 0004C0C8 EC 24 18 28 */ fsubs f1, f4, f3 /* 8005046C 0004C0CC C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050470 0004C0D0 EC 00 00 72 */ fmuls f0, f0, f1 /* 80050474 0004C0D4 EC 00 00 32 */ fmuls f0, f0, f0 /* 80050478 0004C0D8 EC 03 00 28 */ fsubs f0, f3, f0 /* 8005047C 0004C0DC EC 02 00 32 */ fmuls f0, f2, f0 /* 80050480 0004C0E0 EC 82 00 2A */ fadds f4, f2, f0 /* 80050484 0004C0E4 48 00 00 7C */ b lbl_80050500 /* 80050488 0004C0E8 C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 8005048C 0004C0EC FC 04 10 40 */ fcmpo cr0, f4, f2 /* 80050490 0004C0F0 40 80 00 1C */ bge lbl_800504AC /* 80050494 0004C0F4 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050498 0004C0F8 EC 20 01 32 */ fmuls f1, f0, f4 /* 8005049C 0004C0FC EC 02 00 72 */ fmuls f0, f2, f1 /* 800504A0 0004C100 EC 00 00 72 */ fmuls f0, f0, f1 /* 800504A4 0004C104 EC 81 00 32 */ fmuls f4, f1, f0 /* 800504A8 0004C108 48 00 00 58 */ b lbl_80050500 lbl_800504AC: /* 800504AC 0004C10C EC 24 18 28 */ fsubs f1, f4, f3 /* 800504B0 0004C110 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800504B4 0004C114 EC 20 00 72 */ fmuls f1, f0, f1 /* 800504B8 0004C118 EC 01 00 72 */ fmuls f0, f1, f1 /* 800504BC 0004C11C EC 01 00 32 */ fmuls f0, f1, f0 /* 800504C0 0004C120 EC 03 00 2A */ fadds f0, f3, f0 /* 800504C4 0004C124 EC 02 00 32 */ fmuls f0, f2, f0 /* 800504C8 0004C128 EC 82 00 2A */ fadds f4, f2, f0 /* 800504CC 0004C12C 48 00 00 34 */ b lbl_80050500 /* 800504D0 0004C130 EC 04 01 32 */ fmuls f0, f4, f4 /* 800504D4 0004C134 EC 04 00 32 */ fmuls f0, f4, f0 /* 800504D8 0004C138 EC 84 00 32 */ fmuls f4, f4, f0 /* 800504DC 0004C13C 48 00 00 24 */ b lbl_80050500 /* 800504E0 0004C140 EC 24 18 28 */ fsubs f1, f4, f3 /* 800504E4 0004C144 EC 01 00 72 */ fmuls f0, f1, f1 /* 800504E8 0004C148 EC 01 00 32 */ fmuls f0, f1, f0 /* 800504EC 0004C14C EC 01 00 32 */ fmuls f0, f1, f0 /* 800504F0 0004C150 EC 83 00 28 */ fsubs f4, f3, f0 /* 800504F4 0004C154 48 00 00 0C */ b lbl_80050500 lbl_800504F8: /* 800504F8 0004C158 38 60 00 00 */ li r3, 0 /* 800504FC 0004C15C 4E 80 00 20 */ blr lbl_80050500: /* 80050500 0004C160 C0 23 00 08 */ lfs f1, 8(r3) /* 80050504 0004C164 38 00 00 01 */ li r0, 1 /* 80050508 0004C168 C0 03 00 04 */ lfs f0, 4(r3) /* 8005050C 0004C16C 80 83 00 0C */ lwz r4, 0xc(r3) /* 80050510 0004C170 EC 21 00 28 */ fsubs f1, f1, f0 /* 80050514 0004C174 EC 21 01 32 */ fmuls f1, f1, f4 /* 80050518 0004C178 EC 21 00 2A */ fadds f1, f1, f0 /* 8005051C 0004C17C D0 24 00 00 */ stfs f1, 0(r4) /* 80050520 0004C180 90 03 00 00 */ stw r0, 0(r3) /* 80050524 0004C184 38 60 00 01 */ li r3, 1 /* 80050528 0004C188 4E 80 00 20 */ blr .global func_8005052C func_8005052C: /* 8005052C 0004C18C 3C 80 80 41 */ lis r4, lbl_8040AC00@ha /* 80050530 0004C190 38 00 00 00 */ li r0, 0 /* 80050534 0004C194 38 84 AC 00 */ addi r4, r4, lbl_8040AC00@l /* 80050538 0004C198 90 03 00 00 */ stw r0, 0(r3) /* 8005053C 0004C19C 90 83 00 30 */ stw r4, 0x30(r3) /* 80050540 0004C1A0 4E 80 00 20 */ blr .global func_80050544 func_80050544: /* 80050544 0004C1A4 C0 E2 84 88 */ lfs f7, lbl_80640A88-_SDA2_BASE_(r2) /* 80050548 0004C1A8 FC 07 08 00 */ fcmpu cr0, f7, f1 /* 8005054C 0004C1AC 40 82 00 24 */ bne lbl_80050570 /* 80050550 0004C1B0 C0 45 00 00 */ lfs f2, 0(r5) /* 80050554 0004C1B4 38 60 00 00 */ li r3, 0 /* 80050558 0004C1B8 C0 25 00 04 */ lfs f1, 4(r5) /* 8005055C 0004C1BC C0 05 00 08 */ lfs f0, 8(r5) /* 80050560 0004C1C0 D0 46 00 00 */ stfs f2, 0(r6) /* 80050564 0004C1C4 D0 26 00 04 */ stfs f1, 4(r6) /* 80050568 0004C1C8 D0 06 00 08 */ stfs f0, 8(r6) /* 8005056C 0004C1CC 4E 80 00 20 */ blr lbl_80050570: /* 80050570 0004C1D0 C0 C4 00 00 */ lfs f6, 0(r4) /* 80050574 0004C1D4 38 00 00 01 */ li r0, 1 /* 80050578 0004C1D8 C0 A4 00 04 */ lfs f5, 4(r4) /* 8005057C 0004C1DC C0 84 00 08 */ lfs f4, 8(r4) /* 80050580 0004C1E0 C0 65 00 00 */ lfs f3, 0(r5) /* 80050584 0004C1E4 C0 45 00 04 */ lfs f2, 4(r5) /* 80050588 0004C1E8 C0 05 00 08 */ lfs f0, 8(r5) /* 8005058C 0004C1EC 90 03 00 00 */ stw r0, 0(r3) /* 80050590 0004C1F0 D0 C3 00 04 */ stfs f6, 4(r3) /* 80050594 0004C1F4 D0 A3 00 08 */ stfs f5, 8(r3) /* 80050598 0004C1F8 D0 83 00 0C */ stfs f4, 0xc(r3) /* 8005059C 0004C1FC D0 63 00 10 */ stfs f3, 0x10(r3) /* 800505A0 0004C200 D0 43 00 14 */ stfs f2, 0x14(r3) /* 800505A4 0004C204 D0 03 00 18 */ stfs f0, 0x18(r3) /* 800505A8 0004C208 D0 23 00 20 */ stfs f1, 0x20(r3) /* 800505AC 0004C20C D0 E3 00 24 */ stfs f7, 0x24(r3) /* 800505B0 0004C210 90 E3 00 28 */ stw r7, 0x28(r3) /* 800505B4 0004C214 90 C3 00 1C */ stw r6, 0x1c(r3) /* 800505B8 0004C218 38 60 00 01 */ li r3, 1 /* 800505BC 0004C21C 4E 80 00 20 */ blr .global func_800505C0 func_800505C0: /* 800505C0 0004C220 38 00 00 00 */ li r0, 0 /* 800505C4 0004C224 90 03 00 00 */ stw r0, 0(r3) /* 800505C8 0004C228 4E 80 00 20 */ blr /* 800505CC 0004C22C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800505D0 0004C230 7C 08 02 A6 */ mflr r0 /* 800505D4 0004C234 90 01 00 34 */ stw r0, 0x34(r1) /* 800505D8 0004C238 DB E1 00 20 */ stfd f31, 0x20(r1) /* 800505DC 0004C23C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800505E0 0004C240 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800505E4 0004C244 7C 7F 1B 78 */ mr r31, r3 /* 800505E8 0004C248 80 03 00 00 */ lwz r0, 0(r3) /* 800505EC 0004C24C 2C 00 00 00 */ cmpwi r0, 0 /* 800505F0 0004C250 40 82 00 0C */ bne lbl_800505FC /* 800505F4 0004C254 38 60 00 00 */ li r3, 0 /* 800505F8 0004C258 48 00 01 DC */ b lbl_800507D4 lbl_800505FC: /* 800505FC 0004C25C C0 43 00 24 */ lfs f2, 0x24(r3) /* 80050600 0004C260 C0 03 00 20 */ lfs f0, 0x20(r3) /* 80050604 0004C264 EC 22 08 2A */ fadds f1, f2, f1 /* 80050608 0004C268 C0 62 84 8C */ lfs f3, lbl_80640A8C-_SDA2_BASE_(r2) /* 8005060C 0004C26C EF E1 00 24 */ fdivs f31, f1, f0 /* 80050610 0004C270 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80050614 0004C274 FC 1F 18 40 */ fcmpo cr0, f31, f3 /* 80050618 0004C278 4C 41 13 82 */ cror 2, 1, 2 /* 8005061C 0004C27C 40 82 00 30 */ bne lbl_8005064C /* 80050620 0004C280 80 83 00 1C */ lwz r4, 0x1c(r3) /* 80050624 0004C284 38 00 00 00 */ li r0, 0 /* 80050628 0004C288 C0 03 00 10 */ lfs f0, 0x10(r3) /* 8005062C 0004C28C D0 04 00 00 */ stfs f0, 0(r4) /* 80050630 0004C290 C0 03 00 14 */ lfs f0, 0x14(r3) /* 80050634 0004C294 D0 04 00 04 */ stfs f0, 4(r4) /* 80050638 0004C298 C0 03 00 18 */ lfs f0, 0x18(r3) /* 8005063C 0004C29C D0 04 00 08 */ stfs f0, 8(r4) /* 80050640 0004C2A0 90 03 00 00 */ stw r0, 0(r3) /* 80050644 0004C2A4 38 60 00 01 */ li r3, 1 /* 80050648 0004C2A8 48 00 01 8C */ b lbl_800507D4 lbl_8005064C: /* 8005064C 0004C2AC 80 03 00 28 */ lwz r0, 0x28(r3) /* 80050650 0004C2B0 28 00 00 08 */ cmplwi r0, 8 /* 80050654 0004C2B4 41 81 01 08 */ bgt lbl_8005075C /* 80050658 0004C2B8 3C 80 80 41 */ lis r4, lbl_8040AB2C@ha /* 8005065C 0004C2BC 54 00 10 3A */ slwi r0, r0, 2 /* 80050660 0004C2C0 38 84 AB 2C */ addi r4, r4, lbl_8040AB2C@l /* 80050664 0004C2C4 7C 84 00 2E */ lwzx r4, r4, r0 /* 80050668 0004C2C8 7C 89 03 A6 */ mtctr r4 /* 8005066C 0004C2CC 4E 80 04 20 */ bctr /* 80050670 0004C2D0 48 00 00 F4 */ b lbl_80050764 /* 80050674 0004C2D4 EF FF 07 F2 */ fmuls f31, f31, f31 /* 80050678 0004C2D8 48 00 00 EC */ b lbl_80050764 /* 8005067C 0004C2DC EC 1F 07 F2 */ fmuls f0, f31, f31 /* 80050680 0004C2E0 EF FF 00 32 */ fmuls f31, f31, f0 /* 80050684 0004C2E4 48 00 00 E0 */ b lbl_80050764 /* 80050688 0004C2E8 EC 1F 18 28 */ fsubs f0, f31, f3 /* 8005068C 0004C2EC EC 00 00 32 */ fmuls f0, f0, f0 /* 80050690 0004C2F0 EF E3 00 28 */ fsubs f31, f3, f0 /* 80050694 0004C2F4 48 00 00 D0 */ b lbl_80050764 /* 80050698 0004C2F8 EC 3F 18 28 */ fsubs f1, f31, f3 /* 8005069C 0004C2FC EC 01 00 72 */ fmuls f0, f1, f1 /* 800506A0 0004C300 EC 01 00 32 */ fmuls f0, f1, f0 /* 800506A4 0004C304 EF E3 00 2A */ fadds f31, f3, f0 /* 800506A8 0004C308 48 00 00 BC */ b lbl_80050764 /* 800506AC 0004C30C C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 800506B0 0004C310 FC 1F 10 40 */ fcmpo cr0, f31, f2 /* 800506B4 0004C314 40 80 00 18 */ bge lbl_800506CC /* 800506B8 0004C318 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800506BC 0004C31C EC 20 07 F2 */ fmuls f1, f0, f31 /* 800506C0 0004C320 EC 02 00 72 */ fmuls f0, f2, f1 /* 800506C4 0004C324 EF E0 00 72 */ fmuls f31, f0, f1 /* 800506C8 0004C328 48 00 00 9C */ b lbl_80050764 lbl_800506CC: /* 800506CC 0004C32C EC 3F 18 28 */ fsubs f1, f31, f3 /* 800506D0 0004C330 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800506D4 0004C334 EC 00 00 72 */ fmuls f0, f0, f1 /* 800506D8 0004C338 EC 00 00 32 */ fmuls f0, f0, f0 /* 800506DC 0004C33C EC 03 00 28 */ fsubs f0, f3, f0 /* 800506E0 0004C340 EC 02 00 32 */ fmuls f0, f2, f0 /* 800506E4 0004C344 EF E2 00 2A */ fadds f31, f2, f0 /* 800506E8 0004C348 48 00 00 7C */ b lbl_80050764 /* 800506EC 0004C34C C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 800506F0 0004C350 FC 1F 10 40 */ fcmpo cr0, f31, f2 /* 800506F4 0004C354 40 80 00 1C */ bge lbl_80050710 /* 800506F8 0004C358 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800506FC 0004C35C EC 20 07 F2 */ fmuls f1, f0, f31 /* 80050700 0004C360 EC 02 00 72 */ fmuls f0, f2, f1 /* 80050704 0004C364 EC 00 00 72 */ fmuls f0, f0, f1 /* 80050708 0004C368 EF E1 00 32 */ fmuls f31, f1, f0 /* 8005070C 0004C36C 48 00 00 58 */ b lbl_80050764 lbl_80050710: /* 80050710 0004C370 EC 3F 18 28 */ fsubs f1, f31, f3 /* 80050714 0004C374 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050718 0004C378 EC 20 00 72 */ fmuls f1, f0, f1 /* 8005071C 0004C37C EC 01 00 72 */ fmuls f0, f1, f1 /* 80050720 0004C380 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050724 0004C384 EC 03 00 2A */ fadds f0, f3, f0 /* 80050728 0004C388 EC 02 00 32 */ fmuls f0, f2, f0 /* 8005072C 0004C38C EF E2 00 2A */ fadds f31, f2, f0 /* 80050730 0004C390 48 00 00 34 */ b lbl_80050764 /* 80050734 0004C394 EC 1F 07 F2 */ fmuls f0, f31, f31 /* 80050738 0004C398 EC 1F 00 32 */ fmuls f0, f31, f0 /* 8005073C 0004C39C EF FF 00 32 */ fmuls f31, f31, f0 /* 80050740 0004C3A0 48 00 00 24 */ b lbl_80050764 /* 80050744 0004C3A4 EC 3F 18 28 */ fsubs f1, f31, f3 /* 80050748 0004C3A8 EC 01 00 72 */ fmuls f0, f1, f1 /* 8005074C 0004C3AC EC 01 00 32 */ fmuls f0, f1, f0 /* 80050750 0004C3B0 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050754 0004C3B4 EF E3 00 28 */ fsubs f31, f3, f0 /* 80050758 0004C3B8 48 00 00 0C */ b lbl_80050764 lbl_8005075C: /* 8005075C 0004C3BC 38 60 00 00 */ li r3, 0 /* 80050760 0004C3C0 48 00 00 74 */ b lbl_800507D4 lbl_80050764: /* 80050764 0004C3C4 C0 03 00 10 */ lfs f0, 0x10(r3) /* 80050768 0004C3C8 38 9F 00 04 */ addi r4, r31, 4 /* 8005076C 0004C3CC D0 01 00 08 */ stfs f0, 8(r1) /* 80050770 0004C3D0 C0 03 00 14 */ lfs f0, 0x14(r3) /* 80050774 0004C3D4 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80050778 0004C3D8 C0 03 00 18 */ lfs f0, 0x18(r3) /* 8005077C 0004C3DC 38 61 00 08 */ addi r3, r1, 8 /* 80050780 0004C3E0 7C 65 1B 78 */ mr r5, r3 /* 80050784 0004C3E4 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80050788 0004C3E8 48 22 C5 61 */ bl func_8027CCE8 /* 8005078C 0004C3EC FC 20 F8 90 */ fmr f1, f31 /* 80050790 0004C3F0 38 61 00 08 */ addi r3, r1, 8 /* 80050794 0004C3F4 7C 64 1B 78 */ mr r4, r3 /* 80050798 0004C3F8 48 22 C5 75 */ bl func_8027CD0C /* 8005079C 0004C3FC 38 61 00 08 */ addi r3, r1, 8 /* 800507A0 0004C400 38 9F 00 04 */ addi r4, r31, 4 /* 800507A4 0004C404 7C 65 1B 78 */ mr r5, r3 /* 800507A8 0004C408 48 22 C5 1D */ bl func_8027CCC4 /* 800507AC 0004C40C 80 9F 00 1C */ lwz r4, 0x1c(r31) /* 800507B0 0004C410 38 00 00 01 */ li r0, 1 /* 800507B4 0004C414 C0 01 00 08 */ lfs f0, 8(r1) /* 800507B8 0004C418 38 60 00 01 */ li r3, 1 /* 800507BC 0004C41C D0 04 00 00 */ stfs f0, 0(r4) /* 800507C0 0004C420 C0 01 00 0C */ lfs f0, 0xc(r1) /* 800507C4 0004C424 D0 04 00 04 */ stfs f0, 4(r4) /* 800507C8 0004C428 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800507CC 0004C42C D0 04 00 08 */ stfs f0, 8(r4) /* 800507D0 0004C430 90 1F 00 00 */ stw r0, 0(r31) lbl_800507D4: /* 800507D4 0004C434 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800507D8 0004C438 80 01 00 34 */ lwz r0, 0x34(r1) /* 800507DC 0004C43C CB E1 00 20 */ lfd f31, 0x20(r1) /* 800507E0 0004C440 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800507E4 0004C444 7C 08 03 A6 */ mtlr r0 /* 800507E8 0004C448 38 21 00 30 */ addi r1, r1, 0x30 /* 800507EC 0004C44C 4E 80 00 20 */ blr .global func_800507F0 func_800507F0: /* 800507F0 0004C450 3C 80 80 41 */ lis r4, lbl_8040ABC8@ha /* 800507F4 0004C454 38 00 00 00 */ li r0, 0 /* 800507F8 0004C458 38 84 AB C8 */ addi r4, r4, lbl_8040ABC8@l /* 800507FC 0004C45C 90 03 00 00 */ stw r0, 0(r3) /* 80050800 0004C460 90 83 00 20 */ stw r4, 0x20(r3) /* 80050804 0004C464 4E 80 00 20 */ blr .global func_80050808 func_80050808: /* 80050808 0004C468 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005080C 0004C46C C0 02 84 88 */ lfs f0, lbl_80640A88-_SDA2_BASE_(r2) /* 80050810 0004C470 93 E1 00 0C */ stw r31, 0xc(r1) /* 80050814 0004C474 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80050818 0004C478 93 C1 00 08 */ stw r30, 8(r1) /* 8005081C 0004C47C 40 82 00 2C */ bne lbl_80050848 /* 80050820 0004C480 89 05 00 00 */ lbz r8, 0(r5) /* 80050824 0004C484 38 60 00 00 */ li r3, 0 /* 80050828 0004C488 88 E5 00 01 */ lbz r7, 1(r5) /* 8005082C 0004C48C 88 85 00 02 */ lbz r4, 2(r5) /* 80050830 0004C490 88 05 00 03 */ lbz r0, 3(r5) /* 80050834 0004C494 99 06 00 00 */ stb r8, 0(r6) /* 80050838 0004C498 98 E6 00 01 */ stb r7, 1(r6) /* 8005083C 0004C49C 98 86 00 02 */ stb r4, 2(r6) /* 80050840 0004C4A0 98 06 00 03 */ stb r0, 3(r6) /* 80050844 0004C4A4 48 00 00 60 */ b lbl_800508A4 lbl_80050848: /* 80050848 0004C4A8 8B E4 00 00 */ lbz r31, 0(r4) /* 8005084C 0004C4AC 3B C0 00 01 */ li r30, 1 /* 80050850 0004C4B0 89 84 00 01 */ lbz r12, 1(r4) /* 80050854 0004C4B4 89 64 00 02 */ lbz r11, 2(r4) /* 80050858 0004C4B8 89 44 00 03 */ lbz r10, 3(r4) /* 8005085C 0004C4BC 89 25 00 00 */ lbz r9, 0(r5) /* 80050860 0004C4C0 89 05 00 01 */ lbz r8, 1(r5) /* 80050864 0004C4C4 88 85 00 02 */ lbz r4, 2(r5) /* 80050868 0004C4C8 88 05 00 03 */ lbz r0, 3(r5) /* 8005086C 0004C4CC 93 C3 00 00 */ stw r30, 0(r3) /* 80050870 0004C4D0 9B E3 00 04 */ stb r31, 4(r3) /* 80050874 0004C4D4 99 83 00 05 */ stb r12, 5(r3) /* 80050878 0004C4D8 99 63 00 06 */ stb r11, 6(r3) /* 8005087C 0004C4DC 99 43 00 07 */ stb r10, 7(r3) /* 80050880 0004C4E0 99 23 00 08 */ stb r9, 8(r3) /* 80050884 0004C4E4 99 03 00 09 */ stb r8, 9(r3) /* 80050888 0004C4E8 98 83 00 0A */ stb r4, 0xa(r3) /* 8005088C 0004C4EC 98 03 00 0B */ stb r0, 0xb(r3) /* 80050890 0004C4F0 D0 23 00 10 */ stfs f1, 0x10(r3) /* 80050894 0004C4F4 D0 03 00 14 */ stfs f0, 0x14(r3) /* 80050898 0004C4F8 90 E3 00 18 */ stw r7, 0x18(r3) /* 8005089C 0004C4FC 90 C3 00 0C */ stw r6, 0xc(r3) /* 800508A0 0004C500 38 60 00 01 */ li r3, 1 lbl_800508A4: /* 800508A4 0004C504 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800508A8 0004C508 83 C1 00 08 */ lwz r30, 8(r1) /* 800508AC 0004C50C 38 21 00 10 */ addi r1, r1, 0x10 /* 800508B0 0004C510 4E 80 00 20 */ blr /* 800508B4 0004C514 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800508B8 0004C518 3C 80 43 30 */ lis r4, 0x4330 /* 800508BC 0004C51C 80 03 00 00 */ lwz r0, 0(r3) /* 800508C0 0004C520 90 81 00 08 */ stw r4, 8(r1) /* 800508C4 0004C524 2C 00 00 00 */ cmpwi r0, 0 /* 800508C8 0004C528 90 81 00 10 */ stw r4, 0x10(r1) /* 800508CC 0004C52C 40 82 00 0C */ bne lbl_800508D8 /* 800508D0 0004C530 38 60 00 00 */ li r3, 0 /* 800508D4 0004C534 48 00 02 58 */ b lbl_80050B2C lbl_800508D8: /* 800508D8 0004C538 C0 43 00 14 */ lfs f2, 0x14(r3) /* 800508DC 0004C53C C0 03 00 10 */ lfs f0, 0x10(r3) /* 800508E0 0004C540 EC 22 08 2A */ fadds f1, f2, f1 /* 800508E4 0004C544 C0 62 84 8C */ lfs f3, lbl_80640A8C-_SDA2_BASE_(r2) /* 800508E8 0004C548 EC A1 00 24 */ fdivs f5, f1, f0 /* 800508EC 0004C54C D0 23 00 14 */ stfs f1, 0x14(r3) /* 800508F0 0004C550 FC 05 18 40 */ fcmpo cr0, f5, f3 /* 800508F4 0004C554 4C 41 13 82 */ cror 2, 1, 2 /* 800508F8 0004C558 40 82 00 38 */ bne lbl_80050930 /* 800508FC 0004C55C 80 A3 00 0C */ lwz r5, 0xc(r3) /* 80050900 0004C560 38 00 00 00 */ li r0, 0 /* 80050904 0004C564 88 83 00 08 */ lbz r4, 8(r3) /* 80050908 0004C568 98 85 00 00 */ stb r4, 0(r5) /* 8005090C 0004C56C 88 83 00 09 */ lbz r4, 9(r3) /* 80050910 0004C570 98 85 00 01 */ stb r4, 1(r5) /* 80050914 0004C574 88 83 00 0A */ lbz r4, 0xa(r3) /* 80050918 0004C578 98 85 00 02 */ stb r4, 2(r5) /* 8005091C 0004C57C 88 83 00 0B */ lbz r4, 0xb(r3) /* 80050920 0004C580 98 85 00 03 */ stb r4, 3(r5) /* 80050924 0004C584 90 03 00 00 */ stw r0, 0(r3) /* 80050928 0004C588 38 60 00 01 */ li r3, 1 /* 8005092C 0004C58C 48 00 02 00 */ b lbl_80050B2C lbl_80050930: /* 80050930 0004C590 80 03 00 18 */ lwz r0, 0x18(r3) /* 80050934 0004C594 28 00 00 08 */ cmplwi r0, 8 /* 80050938 0004C598 41 81 01 08 */ bgt lbl_80050A40 /* 8005093C 0004C59C 3C 80 80 41 */ lis r4, lbl_8040AB50@ha /* 80050940 0004C5A0 54 00 10 3A */ slwi r0, r0, 2 /* 80050944 0004C5A4 38 84 AB 50 */ addi r4, r4, lbl_8040AB50@l /* 80050948 0004C5A8 7C 84 00 2E */ lwzx r4, r4, r0 /* 8005094C 0004C5AC 7C 89 03 A6 */ mtctr r4 /* 80050950 0004C5B0 4E 80 04 20 */ bctr /* 80050954 0004C5B4 48 00 00 F4 */ b lbl_80050A48 /* 80050958 0004C5B8 EC A5 01 72 */ fmuls f5, f5, f5 /* 8005095C 0004C5BC 48 00 00 EC */ b lbl_80050A48 /* 80050960 0004C5C0 EC 05 01 72 */ fmuls f0, f5, f5 /* 80050964 0004C5C4 EC A5 00 32 */ fmuls f5, f5, f0 /* 80050968 0004C5C8 48 00 00 E0 */ b lbl_80050A48 /* 8005096C 0004C5CC EC 05 18 28 */ fsubs f0, f5, f3 /* 80050970 0004C5D0 EC 00 00 32 */ fmuls f0, f0, f0 /* 80050974 0004C5D4 EC A3 00 28 */ fsubs f5, f3, f0 /* 80050978 0004C5D8 48 00 00 D0 */ b lbl_80050A48 /* 8005097C 0004C5DC EC 25 18 28 */ fsubs f1, f5, f3 /* 80050980 0004C5E0 EC 01 00 72 */ fmuls f0, f1, f1 /* 80050984 0004C5E4 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050988 0004C5E8 EC A3 00 2A */ fadds f5, f3, f0 /* 8005098C 0004C5EC 48 00 00 BC */ b lbl_80050A48 /* 80050990 0004C5F0 C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 80050994 0004C5F4 FC 05 10 40 */ fcmpo cr0, f5, f2 /* 80050998 0004C5F8 40 80 00 18 */ bge lbl_800509B0 /* 8005099C 0004C5FC C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800509A0 0004C600 EC 20 01 72 */ fmuls f1, f0, f5 /* 800509A4 0004C604 EC 02 00 72 */ fmuls f0, f2, f1 /* 800509A8 0004C608 EC A0 00 72 */ fmuls f5, f0, f1 /* 800509AC 0004C60C 48 00 00 9C */ b lbl_80050A48 lbl_800509B0: /* 800509B0 0004C610 EC 25 18 28 */ fsubs f1, f5, f3 /* 800509B4 0004C614 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800509B8 0004C618 EC 00 00 72 */ fmuls f0, f0, f1 /* 800509BC 0004C61C EC 00 00 32 */ fmuls f0, f0, f0 /* 800509C0 0004C620 EC 03 00 28 */ fsubs f0, f3, f0 /* 800509C4 0004C624 EC 02 00 32 */ fmuls f0, f2, f0 /* 800509C8 0004C628 EC A2 00 2A */ fadds f5, f2, f0 /* 800509CC 0004C62C 48 00 00 7C */ b lbl_80050A48 /* 800509D0 0004C630 C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 800509D4 0004C634 FC 05 10 40 */ fcmpo cr0, f5, f2 /* 800509D8 0004C638 40 80 00 1C */ bge lbl_800509F4 /* 800509DC 0004C63C C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800509E0 0004C640 EC 20 01 72 */ fmuls f1, f0, f5 /* 800509E4 0004C644 EC 02 00 72 */ fmuls f0, f2, f1 /* 800509E8 0004C648 EC 00 00 72 */ fmuls f0, f0, f1 /* 800509EC 0004C64C EC A1 00 32 */ fmuls f5, f1, f0 /* 800509F0 0004C650 48 00 00 58 */ b lbl_80050A48 lbl_800509F4: /* 800509F4 0004C654 EC 25 18 28 */ fsubs f1, f5, f3 /* 800509F8 0004C658 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 800509FC 0004C65C EC 20 00 72 */ fmuls f1, f0, f1 /* 80050A00 0004C660 EC 01 00 72 */ fmuls f0, f1, f1 /* 80050A04 0004C664 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050A08 0004C668 EC 03 00 2A */ fadds f0, f3, f0 /* 80050A0C 0004C66C EC 02 00 32 */ fmuls f0, f2, f0 /* 80050A10 0004C670 EC A2 00 2A */ fadds f5, f2, f0 /* 80050A14 0004C674 48 00 00 34 */ b lbl_80050A48 /* 80050A18 0004C678 EC 05 01 72 */ fmuls f0, f5, f5 /* 80050A1C 0004C67C EC 05 00 32 */ fmuls f0, f5, f0 /* 80050A20 0004C680 EC A5 00 32 */ fmuls f5, f5, f0 /* 80050A24 0004C684 48 00 00 24 */ b lbl_80050A48 /* 80050A28 0004C688 EC 25 18 28 */ fsubs f1, f5, f3 /* 80050A2C 0004C68C EC 01 00 72 */ fmuls f0, f1, f1 /* 80050A30 0004C690 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050A34 0004C694 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050A38 0004C698 EC A3 00 28 */ fsubs f5, f3, f0 /* 80050A3C 0004C69C 48 00 00 0C */ b lbl_80050A48 lbl_80050A40: /* 80050A40 0004C6A0 38 60 00 00 */ li r3, 0 /* 80050A44 0004C6A4 48 00 00 E8 */ b lbl_80050B2C lbl_80050A48: /* 80050A48 0004C6A8 88 83 00 08 */ lbz r4, 8(r3) /* 80050A4C 0004C6AC 38 00 00 01 */ li r0, 1 /* 80050A50 0004C6B0 88 A3 00 04 */ lbz r5, 4(r3) /* 80050A54 0004C6B4 89 03 00 09 */ lbz r8, 9(r3) /* 80050A58 0004C6B8 7C 85 20 50 */ subf r4, r5, r4 /* 80050A5C 0004C6BC 88 C3 00 05 */ lbz r6, 5(r3) /* 80050A60 0004C6C0 54 84 06 3E */ clrlwi r4, r4, 0x18 /* 80050A64 0004C6C4 89 23 00 0A */ lbz r9, 0xa(r3) /* 80050A68 0004C6C8 90 81 00 0C */ stw r4, 0xc(r1) /* 80050A6C 0004C6CC 7D 06 40 50 */ subf r8, r6, r8 /* 80050A70 0004C6D0 55 04 06 3E */ clrlwi r4, r8, 0x18 /* 80050A74 0004C6D4 88 E3 00 06 */ lbz r7, 6(r3) /* 80050A78 0004C6D8 90 81 00 14 */ stw r4, 0x14(r1) /* 80050A7C 0004C6DC 7D 27 48 50 */ subf r9, r7, r9 /* 80050A80 0004C6E0 89 43 00 0B */ lbz r10, 0xb(r3) /* 80050A84 0004C6E4 89 03 00 07 */ lbz r8, 7(r3) /* 80050A88 0004C6E8 55 24 06 3E */ clrlwi r4, r9, 0x18 /* 80050A8C 0004C6EC C8 01 00 08 */ lfd f0, 8(r1) /* 80050A90 0004C6F0 C8 82 84 98 */ lfd f4, lbl_80640A98-_SDA2_BASE_(r2) /* 80050A94 0004C6F4 7D 48 50 50 */ subf r10, r8, r10 /* 80050A98 0004C6F8 90 81 00 0C */ stw r4, 0xc(r1) /* 80050A9C 0004C6FC 55 44 06 3E */ clrlwi r4, r10, 0x18 /* 80050AA0 0004C700 C8 21 00 10 */ lfd f1, 0x10(r1) /* 80050AA4 0004C704 EC 60 20 28 */ fsubs f3, f0, f4 /* 80050AA8 0004C708 C8 01 00 08 */ lfd f0, 8(r1) /* 80050AAC 0004C70C EC 41 20 28 */ fsubs f2, f1, f4 /* 80050AB0 0004C710 90 81 00 14 */ stw r4, 0x14(r1) /* 80050AB4 0004C714 EC 20 20 28 */ fsubs f1, f0, f4 /* 80050AB8 0004C718 80 83 00 0C */ lwz r4, 0xc(r3) /* 80050ABC 0004C71C EC 63 01 72 */ fmuls f3, f3, f5 /* 80050AC0 0004C720 C8 01 00 10 */ lfd f0, 0x10(r1) /* 80050AC4 0004C724 EC 42 01 72 */ fmuls f2, f2, f5 /* 80050AC8 0004C728 FC 60 18 1E */ fctiwz f3, f3 /* 80050ACC 0004C72C EC 00 20 28 */ fsubs f0, f0, f4 /* 80050AD0 0004C730 EC 21 01 72 */ fmuls f1, f1, f5 /* 80050AD4 0004C734 FC 40 10 1E */ fctiwz f2, f2 /* 80050AD8 0004C738 D8 61 00 18 */ stfd f3, 0x18(r1) /* 80050ADC 0004C73C EC 00 01 72 */ fmuls f0, f0, f5 /* 80050AE0 0004C740 FC 20 08 1E */ fctiwz f1, f1 /* 80050AE4 0004C744 81 21 00 1C */ lwz r9, 0x1c(r1) /* 80050AE8 0004C748 D8 41 00 20 */ stfd f2, 0x20(r1) /* 80050AEC 0004C74C 7D 29 2A 14 */ add r9, r9, r5 /* 80050AF0 0004C750 FC 00 00 1E */ fctiwz f0, f0 /* 80050AF4 0004C754 D8 21 00 28 */ stfd f1, 0x28(r1) /* 80050AF8 0004C758 80 A1 00 24 */ lwz r5, 0x24(r1) /* 80050AFC 0004C75C 81 41 00 2C */ lwz r10, 0x2c(r1) /* 80050B00 0004C760 99 24 00 00 */ stb r9, 0(r4) /* 80050B04 0004C764 7C A5 32 14 */ add r5, r5, r6 /* 80050B08 0004C768 7D 4A 3A 14 */ add r10, r10, r7 /* 80050B0C 0004C76C D8 01 00 30 */ stfd f0, 0x30(r1) /* 80050B10 0004C770 98 A4 00 01 */ stb r5, 1(r4) /* 80050B14 0004C774 80 C1 00 34 */ lwz r6, 0x34(r1) /* 80050B18 0004C778 99 44 00 02 */ stb r10, 2(r4) /* 80050B1C 0004C77C 7C C6 42 14 */ add r6, r6, r8 /* 80050B20 0004C780 98 C4 00 03 */ stb r6, 3(r4) /* 80050B24 0004C784 90 03 00 00 */ stw r0, 0(r3) /* 80050B28 0004C788 38 60 00 01 */ li r3, 1 lbl_80050B2C: /* 80050B2C 0004C78C 38 21 00 40 */ addi r1, r1, 0x40 /* 80050B30 0004C790 4E 80 00 20 */ blr .global func_80050B34 func_80050B34: /* 80050B34 0004C794 3C 80 80 41 */ lis r4, lbl_8040AB98@ha /* 80050B38 0004C798 38 00 00 00 */ li r0, 0 /* 80050B3C 0004C79C 38 84 AB 98 */ addi r4, r4, lbl_8040AB98@l /* 80050B40 0004C7A0 90 03 00 00 */ stw r0, 0(r3) /* 80050B44 0004C7A4 90 83 00 38 */ stw r4, 0x38(r3) /* 80050B48 0004C7A8 4E 80 00 20 */ blr .global func_80050B4C func_80050B4C: /* 80050B4C 0004C7AC C1 22 84 88 */ lfs f9, lbl_80640A88-_SDA2_BASE_(r2) /* 80050B50 0004C7B0 FC 09 08 00 */ fcmpu cr0, f9, f1 /* 80050B54 0004C7B4 40 82 00 2C */ bne lbl_80050B80 /* 80050B58 0004C7B8 C0 65 00 00 */ lfs f3, 0(r5) /* 80050B5C 0004C7BC 38 60 00 00 */ li r3, 0 /* 80050B60 0004C7C0 C0 45 00 04 */ lfs f2, 4(r5) /* 80050B64 0004C7C4 C0 25 00 08 */ lfs f1, 8(r5) /* 80050B68 0004C7C8 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80050B6C 0004C7CC D0 66 00 00 */ stfs f3, 0(r6) /* 80050B70 0004C7D0 D0 46 00 04 */ stfs f2, 4(r6) /* 80050B74 0004C7D4 D0 26 00 08 */ stfs f1, 8(r6) /* 80050B78 0004C7D8 D0 06 00 0C */ stfs f0, 0xc(r6) /* 80050B7C 0004C7DC 4E 80 00 20 */ blr lbl_80050B80: /* 80050B80 0004C7E0 C1 04 00 00 */ lfs f8, 0(r4) /* 80050B84 0004C7E4 38 00 00 01 */ li r0, 1 /* 80050B88 0004C7E8 C0 E4 00 04 */ lfs f7, 4(r4) /* 80050B8C 0004C7EC C0 C4 00 08 */ lfs f6, 8(r4) /* 80050B90 0004C7F0 C0 A4 00 0C */ lfs f5, 0xc(r4) /* 80050B94 0004C7F4 C0 85 00 00 */ lfs f4, 0(r5) /* 80050B98 0004C7F8 C0 65 00 04 */ lfs f3, 4(r5) /* 80050B9C 0004C7FC C0 45 00 08 */ lfs f2, 8(r5) /* 80050BA0 0004C800 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80050BA4 0004C804 90 03 00 00 */ stw r0, 0(r3) /* 80050BA8 0004C808 D1 03 00 04 */ stfs f8, 4(r3) /* 80050BAC 0004C80C D0 E3 00 08 */ stfs f7, 8(r3) /* 80050BB0 0004C810 D0 C3 00 0C */ stfs f6, 0xc(r3) /* 80050BB4 0004C814 D0 A3 00 10 */ stfs f5, 0x10(r3) /* 80050BB8 0004C818 D0 83 00 14 */ stfs f4, 0x14(r3) /* 80050BBC 0004C81C D0 63 00 18 */ stfs f3, 0x18(r3) /* 80050BC0 0004C820 D0 43 00 1C */ stfs f2, 0x1c(r3) /* 80050BC4 0004C824 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80050BC8 0004C828 D0 23 00 28 */ stfs f1, 0x28(r3) /* 80050BCC 0004C82C D1 23 00 2C */ stfs f9, 0x2c(r3) /* 80050BD0 0004C830 90 E3 00 30 */ stw r7, 0x30(r3) /* 80050BD4 0004C834 90 C3 00 24 */ stw r6, 0x24(r3) /* 80050BD8 0004C838 38 60 00 01 */ li r3, 1 /* 80050BDC 0004C83C 4E 80 00 20 */ blr .global func_80050BE0 func_80050BE0: /* 80050BE0 0004C840 38 00 00 00 */ li r0, 0 /* 80050BE4 0004C844 90 03 00 00 */ stw r0, 0(r3) /* 80050BE8 0004C848 4E 80 00 20 */ blr /* 80050BEC 0004C84C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80050BF0 0004C850 DB E1 00 30 */ stfd f31, 0x30(r1) /* 80050BF4 0004C854 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 80050BF8 0004C858 DB C1 00 20 */ stfd f30, 0x20(r1) /* 80050BFC 0004C85C F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 80050C00 0004C860 80 03 00 00 */ lwz r0, 0(r3) /* 80050C04 0004C864 2C 00 00 00 */ cmpwi r0, 0 /* 80050C08 0004C868 40 82 00 0C */ bne lbl_80050C14 /* 80050C0C 0004C86C 38 60 00 00 */ li r3, 0 /* 80050C10 0004C870 48 00 02 10 */ b lbl_80050E20 lbl_80050C14: /* 80050C14 0004C874 C0 43 00 2C */ lfs f2, 0x2c(r3) /* 80050C18 0004C878 C0 03 00 28 */ lfs f0, 0x28(r3) /* 80050C1C 0004C87C EC 22 08 2A */ fadds f1, f2, f1 /* 80050C20 0004C880 C0 62 84 8C */ lfs f3, lbl_80640A8C-_SDA2_BASE_(r2) /* 80050C24 0004C884 EF C1 00 24 */ fdivs f30, f1, f0 /* 80050C28 0004C888 D0 23 00 2C */ stfs f1, 0x2c(r3) /* 80050C2C 0004C88C FC 1E 18 40 */ fcmpo cr0, f30, f3 /* 80050C30 0004C890 4C 41 13 82 */ cror 2, 1, 2 /* 80050C34 0004C894 40 82 00 38 */ bne lbl_80050C6C /* 80050C38 0004C898 80 83 00 24 */ lwz r4, 0x24(r3) /* 80050C3C 0004C89C 38 00 00 00 */ li r0, 0 /* 80050C40 0004C8A0 C0 03 00 14 */ lfs f0, 0x14(r3) /* 80050C44 0004C8A4 D0 04 00 00 */ stfs f0, 0(r4) /* 80050C48 0004C8A8 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80050C4C 0004C8AC D0 04 00 04 */ stfs f0, 4(r4) /* 80050C50 0004C8B0 C0 03 00 1C */ lfs f0, 0x1c(r3) /* 80050C54 0004C8B4 D0 04 00 08 */ stfs f0, 8(r4) /* 80050C58 0004C8B8 C0 03 00 20 */ lfs f0, 0x20(r3) /* 80050C5C 0004C8BC D0 04 00 0C */ stfs f0, 0xc(r4) /* 80050C60 0004C8C0 90 03 00 00 */ stw r0, 0(r3) /* 80050C64 0004C8C4 38 60 00 01 */ li r3, 1 /* 80050C68 0004C8C8 48 00 01 B8 */ b lbl_80050E20 lbl_80050C6C: /* 80050C6C 0004C8CC 80 03 00 30 */ lwz r0, 0x30(r3) /* 80050C70 0004C8D0 28 00 00 08 */ cmplwi r0, 8 /* 80050C74 0004C8D4 41 81 01 08 */ bgt lbl_80050D7C /* 80050C78 0004C8D8 3C 80 80 41 */ lis r4, lbl_8040AB74@ha /* 80050C7C 0004C8DC 54 00 10 3A */ slwi r0, r0, 2 /* 80050C80 0004C8E0 38 84 AB 74 */ addi r4, r4, lbl_8040AB74@l /* 80050C84 0004C8E4 7C 84 00 2E */ lwzx r4, r4, r0 /* 80050C88 0004C8E8 7C 89 03 A6 */ mtctr r4 /* 80050C8C 0004C8EC 4E 80 04 20 */ bctr /* 80050C90 0004C8F0 48 00 00 F4 */ b lbl_80050D84 /* 80050C94 0004C8F4 EF DE 07 B2 */ fmuls f30, f30, f30 /* 80050C98 0004C8F8 48 00 00 EC */ b lbl_80050D84 /* 80050C9C 0004C8FC EC 1E 07 B2 */ fmuls f0, f30, f30 /* 80050CA0 0004C900 EF DE 00 32 */ fmuls f30, f30, f0 /* 80050CA4 0004C904 48 00 00 E0 */ b lbl_80050D84 /* 80050CA8 0004C908 EC 1E 18 28 */ fsubs f0, f30, f3 /* 80050CAC 0004C90C EC 00 00 32 */ fmuls f0, f0, f0 /* 80050CB0 0004C910 EF C3 00 28 */ fsubs f30, f3, f0 /* 80050CB4 0004C914 48 00 00 D0 */ b lbl_80050D84 /* 80050CB8 0004C918 EC 3E 18 28 */ fsubs f1, f30, f3 /* 80050CBC 0004C91C EC 01 00 72 */ fmuls f0, f1, f1 /* 80050CC0 0004C920 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050CC4 0004C924 EF C3 00 2A */ fadds f30, f3, f0 /* 80050CC8 0004C928 48 00 00 BC */ b lbl_80050D84 /* 80050CCC 0004C92C C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 80050CD0 0004C930 FC 1E 10 40 */ fcmpo cr0, f30, f2 /* 80050CD4 0004C934 40 80 00 18 */ bge lbl_80050CEC /* 80050CD8 0004C938 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050CDC 0004C93C EC 20 07 B2 */ fmuls f1, f0, f30 /* 80050CE0 0004C940 EC 02 00 72 */ fmuls f0, f2, f1 /* 80050CE4 0004C944 EF C0 00 72 */ fmuls f30, f0, f1 /* 80050CE8 0004C948 48 00 00 9C */ b lbl_80050D84 lbl_80050CEC: /* 80050CEC 0004C94C EC 3E 18 28 */ fsubs f1, f30, f3 /* 80050CF0 0004C950 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050CF4 0004C954 EC 00 00 72 */ fmuls f0, f0, f1 /* 80050CF8 0004C958 EC 00 00 32 */ fmuls f0, f0, f0 /* 80050CFC 0004C95C EC 03 00 28 */ fsubs f0, f3, f0 /* 80050D00 0004C960 EC 02 00 32 */ fmuls f0, f2, f0 /* 80050D04 0004C964 EF C2 00 2A */ fadds f30, f2, f0 /* 80050D08 0004C968 48 00 00 7C */ b lbl_80050D84 /* 80050D0C 0004C96C C0 42 84 90 */ lfs f2, lbl_80640A90-_SDA2_BASE_(r2) /* 80050D10 0004C970 FC 1E 10 40 */ fcmpo cr0, f30, f2 /* 80050D14 0004C974 40 80 00 1C */ bge lbl_80050D30 /* 80050D18 0004C978 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050D1C 0004C97C EC 20 07 B2 */ fmuls f1, f0, f30 /* 80050D20 0004C980 EC 02 00 72 */ fmuls f0, f2, f1 /* 80050D24 0004C984 EC 00 00 72 */ fmuls f0, f0, f1 /* 80050D28 0004C988 EF C1 00 32 */ fmuls f30, f1, f0 /* 80050D2C 0004C98C 48 00 00 58 */ b lbl_80050D84 lbl_80050D30: /* 80050D30 0004C990 EC 3E 18 28 */ fsubs f1, f30, f3 /* 80050D34 0004C994 C0 02 84 94 */ lfs f0, lbl_80640A94-_SDA2_BASE_(r2) /* 80050D38 0004C998 EC 20 00 72 */ fmuls f1, f0, f1 /* 80050D3C 0004C99C EC 01 00 72 */ fmuls f0, f1, f1 /* 80050D40 0004C9A0 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050D44 0004C9A4 EC 03 00 2A */ fadds f0, f3, f0 /* 80050D48 0004C9A8 EC 02 00 32 */ fmuls f0, f2, f0 /* 80050D4C 0004C9AC EF C2 00 2A */ fadds f30, f2, f0 /* 80050D50 0004C9B0 48 00 00 34 */ b lbl_80050D84 /* 80050D54 0004C9B4 EC 1E 07 B2 */ fmuls f0, f30, f30 /* 80050D58 0004C9B8 EC 1E 00 32 */ fmuls f0, f30, f0 /* 80050D5C 0004C9BC EF DE 00 32 */ fmuls f30, f30, f0 /* 80050D60 0004C9C0 48 00 00 24 */ b lbl_80050D84 /* 80050D64 0004C9C4 EC 3E 18 28 */ fsubs f1, f30, f3 /* 80050D68 0004C9C8 EC 01 00 72 */ fmuls f0, f1, f1 /* 80050D6C 0004C9CC EC 01 00 32 */ fmuls f0, f1, f0 /* 80050D70 0004C9D0 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050D74 0004C9D4 EF C3 00 28 */ fsubs f30, f3, f0 /* 80050D78 0004C9D8 48 00 00 0C */ b lbl_80050D84 lbl_80050D7C: /* 80050D7C 0004C9DC 38 60 00 00 */ li r3, 0 /* 80050D80 0004C9E0 48 00 00 A0 */ b lbl_80050E20 lbl_80050D84: /* 80050D84 0004C9E4 C3 E3 00 14 */ lfs f31, 0x14(r3) /* 80050D88 0004C9E8 38 00 00 01 */ li r0, 1 /* 80050D8C 0004C9EC C0 23 00 04 */ lfs f1, 4(r3) /* 80050D90 0004C9F0 C1 A3 00 18 */ lfs f13, 0x18(r3) /* 80050D94 0004C9F4 ED 5F 08 28 */ fsubs f10, f31, f1 /* 80050D98 0004C9F8 C1 23 00 08 */ lfs f9, 8(r3) /* 80050D9C 0004C9FC C1 83 00 1C */ lfs f12, 0x1c(r3) /* 80050DA0 0004CA00 ED 0D 48 28 */ fsubs f8, f13, f9 /* 80050DA4 0004CA04 C0 E3 00 0C */ lfs f7, 0xc(r3) /* 80050DA8 0004CA08 EC 0A 07 B2 */ fmuls f0, f10, f30 /* 80050DAC 0004CA0C C1 63 00 20 */ lfs f11, 0x20(r3) /* 80050DB0 0004CA10 EC CC 38 28 */ fsubs f6, f12, f7 /* 80050DB4 0004CA14 C0 A3 00 10 */ lfs f5, 0x10(r3) /* 80050DB8 0004CA18 EC 48 07 B2 */ fmuls f2, f8, f30 /* 80050DBC 0004CA1C 80 83 00 24 */ lwz r4, 0x24(r3) /* 80050DC0 0004CA20 EC 60 08 2A */ fadds f3, f0, f1 /* 80050DC4 0004CA24 D3 E1 00 08 */ stfs f31, 8(r1) /* 80050DC8 0004CA28 EC 8B 28 28 */ fsubs f4, f11, f5 /* 80050DCC 0004CA2C EC 26 07 B2 */ fmuls f1, f6, f30 /* 80050DD0 0004CA30 EC 42 48 2A */ fadds f2, f2, f9 /* 80050DD4 0004CA34 D0 64 00 00 */ stfs f3, 0(r4) /* 80050DD8 0004CA38 EC 04 07 B2 */ fmuls f0, f4, f30 /* 80050DDC 0004CA3C D1 A1 00 0C */ stfs f13, 0xc(r1) /* 80050DE0 0004CA40 EC 21 38 2A */ fadds f1, f1, f7 /* 80050DE4 0004CA44 D0 44 00 04 */ stfs f2, 4(r4) /* 80050DE8 0004CA48 EC 00 28 2A */ fadds f0, f0, f5 /* 80050DEC 0004CA4C D1 81 00 10 */ stfs f12, 0x10(r1) /* 80050DF0 0004CA50 D0 24 00 08 */ stfs f1, 8(r4) /* 80050DF4 0004CA54 D1 61 00 14 */ stfs f11, 0x14(r1) /* 80050DF8 0004CA58 D1 41 00 08 */ stfs f10, 8(r1) /* 80050DFC 0004CA5C D1 01 00 0C */ stfs f8, 0xc(r1) /* 80050E00 0004CA60 D0 C1 00 10 */ stfs f6, 0x10(r1) /* 80050E04 0004CA64 D0 04 00 0C */ stfs f0, 0xc(r4) /* 80050E08 0004CA68 90 03 00 00 */ stw r0, 0(r3) /* 80050E0C 0004CA6C 38 60 00 01 */ li r3, 1 /* 80050E10 0004CA70 D0 61 00 08 */ stfs f3, 8(r1) /* 80050E14 0004CA74 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80050E18 0004CA78 D0 21 00 10 */ stfs f1, 0x10(r1) /* 80050E1C 0004CA7C D0 01 00 14 */ stfs f0, 0x14(r1) lbl_80050E20: /* 80050E20 0004CA80 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 80050E24 0004CA84 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80050E28 0004CA88 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 80050E2C 0004CA8C CB C1 00 20 */ lfd f30, 0x20(r1) /* 80050E30 0004CA90 38 21 00 40 */ addi r1, r1, 0x40 /* 80050E34 0004CA94 4E 80 00 20 */ blr .global func_80050E38 func_80050E38: /* 80050E38 0004CA98 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80050E3C 0004CA9C 7C 08 02 A6 */ mflr r0 /* 80050E40 0004CAA0 90 01 00 14 */ stw r0, 0x14(r1) /* 80050E44 0004CAA4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80050E48 0004CAA8 7C 7F 1B 78 */ mr r31, r3 /* 80050E4C 0004CAAC 4B FF F4 D9 */ bl func_80050324 /* 80050E50 0004CAB0 3C 80 80 41 */ lis r4, lbl_8040AC58@ha /* 80050E54 0004CAB4 38 7F 00 3C */ addi r3, r31, 0x3c /* 80050E58 0004CAB8 38 84 AC 58 */ addi r4, r4, lbl_8040AC58@l /* 80050E5C 0004CABC 90 9F 00 20 */ stw r4, 0x20(r31) /* 80050E60 0004CAC0 4B FF F4 C5 */ bl func_80050324 /* 80050E64 0004CAC4 7F E3 FB 78 */ mr r3, r31 /* 80050E68 0004CAC8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80050E6C 0004CACC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80050E70 0004CAD0 7C 08 03 A6 */ mtlr r0 /* 80050E74 0004CAD4 38 21 00 10 */ addi r1, r1, 0x10 /* 80050E78 0004CAD8 4E 80 00 20 */ blr .global func_80050E7C func_80050E7C: /* 80050E7C 0004CADC C0 A2 84 88 */ lfs f5, lbl_80640A88-_SDA2_BASE_(r2) /* 80050E80 0004CAE0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80050E84 0004CAE4 FC 05 10 00 */ fcmpu cr0, f5, f2 /* 80050E88 0004CAE8 40 82 00 10 */ bne lbl_80050E98 /* 80050E8C 0004CAEC D0 A5 00 00 */ stfs f5, 0(r5) /* 80050E90 0004CAF0 38 60 00 00 */ li r3, 0 /* 80050E94 0004CAF4 48 00 00 68 */ b lbl_80050EFC lbl_80050E98: /* 80050E98 0004CAF8 54 89 08 3C */ slwi r9, r4, 1 /* 80050E9C 0004CAFC 3C 00 43 30 */ lis r0, 0x4330 /* 80050EA0 0004CB00 6D 24 80 00 */ xoris r4, r9, 0x8000 /* 80050EA4 0004CB04 39 40 00 01 */ li r10, 1 /* 80050EA8 0004CB08 90 81 00 0C */ stw r4, 0xc(r1) /* 80050EAC 0004CB0C 38 80 00 00 */ li r4, 0 /* 80050EB0 0004CB10 C8 82 84 A0 */ lfd f4, lbl_80640AA0-_SDA2_BASE_(r2) /* 80050EB4 0004CB14 FC 00 10 18 */ frsp f0, f2 /* 80050EB8 0004CB18 90 01 00 08 */ stw r0, 8(r1) /* 80050EBC 0004CB1C C8 61 00 08 */ lfd f3, 8(r1) /* 80050EC0 0004CB20 91 43 00 00 */ stw r10, 0(r3) /* 80050EC4 0004CB24 EC 63 20 28 */ fsubs f3, f3, f4 /* 80050EC8 0004CB28 D0 23 00 24 */ stfs f1, 0x24(r3) /* 80050ECC 0004CB2C EC 00 18 24 */ fdivs f0, f0, f3 /* 80050ED0 0004CB30 91 23 00 28 */ stw r9, 0x28(r3) /* 80050ED4 0004CB34 90 83 00 2C */ stw r4, 0x2c(r3) /* 80050ED8 0004CB38 D0 43 00 10 */ stfs f2, 0x10(r3) /* 80050EDC 0004CB3C D0 A3 00 14 */ stfs f5, 0x14(r3) /* 80050EE0 0004CB40 90 A3 00 0C */ stw r5, 0xc(r3) /* 80050EE4 0004CB44 D0 03 00 30 */ stfs f0, 0x30(r3) /* 80050EE8 0004CB48 98 E3 00 34 */ stb r7, 0x34(r3) /* 80050EEC 0004CB4C 99 03 00 35 */ stb r8, 0x35(r3) /* 80050EF0 0004CB50 D0 23 00 38 */ stfs f1, 0x38(r3) /* 80050EF4 0004CB54 90 C3 00 18 */ stw r6, 0x18(r3) /* 80050EF8 0004CB58 38 60 00 01 */ li r3, 1 lbl_80050EFC: /* 80050EFC 0004CB5C 38 21 00 10 */ addi r1, r1, 0x10 /* 80050F00 0004CB60 4E 80 00 20 */ blr /* 80050F04 0004CB64 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80050F08 0004CB68 7C 08 02 A6 */ mflr r0 /* 80050F0C 0004CB6C 90 01 00 34 */ stw r0, 0x34(r1) /* 80050F10 0004CB70 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80050F14 0004CB74 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80050F18 0004CB78 FF E0 08 90 */ fmr f31, f1 /* 80050F1C 0004CB7C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80050F20 0004CB80 93 C1 00 18 */ stw r30, 0x18(r1) /* 80050F24 0004CB84 7C 7E 1B 78 */ mr r30, r3 /* 80050F28 0004CB88 80 03 00 00 */ lwz r0, 0(r3) /* 80050F2C 0004CB8C 2C 00 00 00 */ cmpwi r0, 0 /* 80050F30 0004CB90 40 82 00 0C */ bne lbl_80050F3C /* 80050F34 0004CB94 38 60 00 00 */ li r3, 0 /* 80050F38 0004CB98 48 00 01 90 */ b lbl_800510C8 lbl_80050F3C: /* 80050F3C 0004CB9C C0 03 00 14 */ lfs f0, 0x14(r3) /* 80050F40 0004CBA0 C0 43 00 10 */ lfs f2, 0x10(r3) /* 80050F44 0004CBA4 EC 60 08 2A */ fadds f3, f0, f1 /* 80050F48 0004CBA8 C0 02 84 8C */ lfs f0, lbl_80640A8C-_SDA2_BASE_(r2) /* 80050F4C 0004CBAC EC 83 10 24 */ fdivs f4, f3, f2 /* 80050F50 0004CBB0 D0 63 00 14 */ stfs f3, 0x14(r3) /* 80050F54 0004CBB4 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 80050F58 0004CBB8 4C 41 13 82 */ cror 2, 1, 2 /* 80050F5C 0004CBBC 40 82 00 44 */ bne lbl_80050FA0 /* 80050F60 0004CBC0 88 03 00 35 */ lbz r0, 0x35(r3) /* 80050F64 0004CBC4 2C 00 00 00 */ cmpwi r0, 0 /* 80050F68 0004CBC8 41 82 00 1C */ beq lbl_80050F84 /* 80050F6C 0004CBCC C0 22 84 90 */ lfs f1, lbl_80640A90-_SDA2_BASE_(r2) /* 80050F70 0004CBD0 C0 03 00 38 */ lfs f0, 0x38(r3) /* 80050F74 0004CBD4 80 83 00 0C */ lwz r4, 0xc(r3) /* 80050F78 0004CBD8 EC 01 00 32 */ fmuls f0, f1, f0 /* 80050F7C 0004CBDC D0 04 00 00 */ stfs f0, 0(r4) /* 80050F80 0004CBE0 48 00 00 10 */ b lbl_80050F90 lbl_80050F84: /* 80050F84 0004CBE4 C0 02 84 88 */ lfs f0, lbl_80640A88-_SDA2_BASE_(r2) /* 80050F88 0004CBE8 80 83 00 0C */ lwz r4, 0xc(r3) /* 80050F8C 0004CBEC D0 04 00 00 */ stfs f0, 0(r4) lbl_80050F90: /* 80050F90 0004CBF0 38 00 00 00 */ li r0, 0 /* 80050F94 0004CBF4 90 03 00 00 */ stw r0, 0(r3) /* 80050F98 0004CBF8 38 60 00 01 */ li r3, 1 /* 80050F9C 0004CBFC 48 00 01 2C */ b lbl_800510C8 lbl_80050FA0: /* 80050FA0 0004CC00 83 E3 00 2C */ lwz r31, 0x2c(r3) /* 80050FA4 0004CC04 3C 00 43 30 */ lis r0, 0x4330 /* 80050FA8 0004CC08 90 01 00 10 */ stw r0, 0x10(r1) /* 80050FAC 0004CC0C 6F E0 80 00 */ xoris r0, r31, 0x8000 /* 80050FB0 0004CC10 C8 42 84 A0 */ lfd f2, lbl_80640AA0-_SDA2_BASE_(r2) /* 80050FB4 0004CC14 90 01 00 14 */ stw r0, 0x14(r1) /* 80050FB8 0004CC18 C0 03 00 30 */ lfs f0, 0x30(r3) /* 80050FBC 0004CC1C C8 21 00 10 */ lfd f1, 0x10(r1) /* 80050FC0 0004CC20 EC 21 10 28 */ fsubs f1, f1, f2 /* 80050FC4 0004CC24 EC 00 00 72 */ fmuls f0, f0, f1 /* 80050FC8 0004CC28 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 80050FCC 0004CC2C 4C 41 13 82 */ cror 2, 1, 2 /* 80050FD0 0004CC30 40 82 00 D4 */ bne lbl_800510A4 /* 80050FD4 0004CC34 80 83 00 28 */ lwz r4, 0x28(r3) /* 80050FD8 0004CC38 38 04 FF FF */ addi r0, r4, -1 /* 80050FDC 0004CC3C 7C 1F 00 00 */ cmpw r31, r0 /* 80050FE0 0004CC40 41 80 00 14 */ blt lbl_80050FF4 /* 80050FE4 0004CC44 C0 02 84 88 */ lfs f0, lbl_80640A88-_SDA2_BASE_(r2) /* 80050FE8 0004CC48 FC 80 00 90 */ fmr f4, f0 /* 80050FEC 0004CC4C D0 01 00 08 */ stfs f0, 8(r1) /* 80050FF0 0004CC50 48 00 00 60 */ b lbl_80051050 lbl_80050FF4: /* 80050FF4 0004CC54 88 03 00 34 */ lbz r0, 0x34(r3) /* 80050FF8 0004CC58 2C 00 00 00 */ cmpwi r0, 0 /* 80050FFC 0004CC5C 41 82 00 20 */ beq lbl_8005101C /* 80051000 0004CC60 C0 02 84 A8 */ lfs f0, lbl_80640AA8-_SDA2_BASE_(r2) /* 80051004 0004CC64 EC 20 01 32 */ fmuls f1, f0, f4 /* 80051008 0004CC68 48 18 30 71 */ bl cos /* 8005100C 0004CC6C FC 20 08 18 */ frsp f1, f1 /* 80051010 0004CC70 C0 1E 00 24 */ lfs f0, 0x24(r30) /* 80051014 0004CC74 EC 80 00 72 */ fmuls f4, f0, f1 /* 80051018 0004CC78 48 00 00 08 */ b lbl_80051020 lbl_8005101C: /* 8005101C 0004CC7C C0 83 00 24 */ lfs f4, 0x24(r3) lbl_80051020: /* 80051020 0004CC80 57 E3 0F FE */ srwi r3, r31, 0x1f /* 80051024 0004CC84 57 E0 07 FE */ clrlwi r0, r31, 0x1f /* 80051028 0004CC88 7C 00 1A 78 */ xor r0, r0, r3 /* 8005102C 0004CC8C 7C 03 00 51 */ subf. r0, r3, r0 /* 80051030 0004CC90 40 82 00 10 */ bne lbl_80051040 /* 80051034 0004CC94 C0 02 84 90 */ lfs f0, lbl_80640A90-_SDA2_BASE_(r2) /* 80051038 0004CC98 EC 00 01 32 */ fmuls f0, f0, f4 /* 8005103C 0004CC9C 48 00 00 10 */ b lbl_8005104C lbl_80051040: /* 80051040 0004CCA0 FC 20 20 50 */ fneg f1, f4 /* 80051044 0004CCA4 C0 02 84 90 */ lfs f0, lbl_80640A90-_SDA2_BASE_(r2) /* 80051048 0004CCA8 EC 00 00 72 */ fmuls f0, f0, f1 lbl_8005104C: /* 8005104C 0004CCAC D0 01 00 08 */ stfs f0, 8(r1) lbl_80051050: /* 80051050 0004CCB0 88 1E 00 35 */ lbz r0, 0x35(r30) /* 80051054 0004CCB4 2C 00 00 00 */ cmpwi r0, 0 /* 80051058 0004CCB8 41 82 00 24 */ beq lbl_8005107C /* 8005105C 0004CCBC C0 62 84 90 */ lfs f3, lbl_80640A90-_SDA2_BASE_(r2) /* 80051060 0004CCC0 FC 00 00 18 */ frsp f0, f0 /* 80051064 0004CCC4 C0 5E 00 38 */ lfs f2, 0x38(r30) /* 80051068 0004CCC8 EC 23 01 32 */ fmuls f1, f3, f4 /* 8005106C 0004CCCC EC 43 00 B2 */ fmuls f2, f3, f2 /* 80051070 0004CCD0 EC 22 08 28 */ fsubs f1, f2, f1 /* 80051074 0004CCD4 EC 00 08 2A */ fadds f0, f0, f1 /* 80051078 0004CCD8 D0 01 00 08 */ stfs f0, 8(r1) lbl_8005107C: /* 8005107C 0004CCDC 80 9E 00 0C */ lwz r4, 0xc(r30) /* 80051080 0004CCE0 38 7E 00 3C */ addi r3, r30, 0x3c /* 80051084 0004CCE4 C0 3E 00 30 */ lfs f1, 0x30(r30) /* 80051088 0004CCE8 38 A1 00 08 */ addi r5, r1, 8 /* 8005108C 0004CCEC 80 FE 00 18 */ lwz r7, 0x18(r30) /* 80051090 0004CCF0 7C 86 23 78 */ mr r6, r4 /* 80051094 0004CCF4 4B FF F2 A9 */ bl func_8005033C /* 80051098 0004CCF8 80 7E 00 2C */ lwz r3, 0x2c(r30) /* 8005109C 0004CCFC 38 03 00 01 */ addi r0, r3, 1 /* 800510A0 0004CD00 90 1E 00 2C */ stw r0, 0x2c(r30) lbl_800510A4: /* 800510A4 0004CD04 81 9E 00 5C */ lwz r12, 0x5c(r30) /* 800510A8 0004CD08 FC 20 F8 90 */ fmr f1, f31 /* 800510AC 0004CD0C 38 7E 00 3C */ addi r3, r30, 0x3c /* 800510B0 0004CD10 81 8C 00 08 */ lwz r12, 8(r12) /* 800510B4 0004CD14 7D 89 03 A6 */ mtctr r12 /* 800510B8 0004CD18 4E 80 04 21 */ bctrl /* 800510BC 0004CD1C 38 00 00 01 */ li r0, 1 /* 800510C0 0004CD20 38 60 00 01 */ li r3, 1 /* 800510C4 0004CD24 90 1E 00 00 */ stw r0, 0(r30) lbl_800510C8: /* 800510C8 0004CD28 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800510CC 0004CD2C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800510D0 0004CD30 CB E1 00 20 */ lfd f31, 0x20(r1) /* 800510D4 0004CD34 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800510D8 0004CD38 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800510DC 0004CD3C 7C 08 03 A6 */ mtlr r0 /* 800510E0 0004CD40 38 21 00 30 */ addi r1, r1, 0x30 /* 800510E4 0004CD44 4E 80 00 20 */ blr .global func_800510E8 func_800510E8: /* 800510E8 0004CD48 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800510EC 0004CD4C 7C 08 02 A6 */ mflr r0 /* 800510F0 0004CD50 90 01 00 14 */ stw r0, 0x14(r1) /* 800510F4 0004CD54 93 E1 00 0C */ stw r31, 0xc(r1) /* 800510F8 0004CD58 7C 7F 1B 78 */ mr r31, r3 /* 800510FC 0004CD5C 4B FF F2 29 */ bl func_80050324 /* 80051100 0004CD60 3C 80 80 41 */ lis r4, lbl_8040AC28@ha /* 80051104 0004CD64 38 7F 00 3C */ addi r3, r31, 0x3c /* 80051108 0004CD68 38 84 AC 28 */ addi r4, r4, lbl_8040AC28@l /* 8005110C 0004CD6C 90 9F 00 20 */ stw r4, 0x20(r31) /* 80051110 0004CD70 4B FF F2 15 */ bl func_80050324 /* 80051114 0004CD74 38 7F 00 60 */ addi r3, r31, 0x60 /* 80051118 0004CD78 4B FF FD 21 */ bl func_80050E38 /* 8005111C 0004CD7C 7F E3 FB 78 */ mr r3, r31 /* 80051120 0004CD80 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80051124 0004CD84 80 01 00 14 */ lwz r0, 0x14(r1) /* 80051128 0004CD88 7C 08 03 A6 */ mtlr r0 /* 8005112C 0004CD8C 38 21 00 10 */ addi r1, r1, 0x10 /* 80051130 0004CD90 4E 80 00 20 */ blr .global func_80051134 func_80051134: /* 80051134 0004CD94 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80051138 0004CD98 7C 08 02 A6 */ mflr r0 /* 8005113C 0004CD9C 90 01 00 54 */ stw r0, 0x54(r1) /* 80051140 0004CDA0 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80051144 0004CDA4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 80051148 0004CDA8 DB C1 00 30 */ stfd f30, 0x30(r1) /* 8005114C 0004CDAC F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 80051150 0004CDB0 DB A1 00 20 */ stfd f29, 0x20(r1) /* 80051154 0004CDB4 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 /* 80051158 0004CDB8 FF A0 18 90 */ fmr f29, f3 /* 8005115C 0004CDBC C0 C2 84 88 */ lfs f6, lbl_80640A88-_SDA2_BASE_(r2) /* 80051160 0004CDC0 FF C0 20 90 */ fmr f30, f4 /* 80051164 0004CDC4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80051168 0004CDC8 FF E0 28 90 */ fmr f31, f5 /* 8005116C 0004CDCC FC 06 10 00 */ fcmpu cr0, f6, f2 /* 80051170 0004CDD0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80051174 0004CDD4 7C BE 2B 78 */ mr r30, r5 /* 80051178 0004CDD8 7C C8 33 78 */ mr r8, r6 /* 8005117C 0004CDDC 7C FF 3B 78 */ mr r31, r7 /* 80051180 0004CDE0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80051184 0004CDE4 7C 9D 23 78 */ mr r29, r4 /* 80051188 0004CDE8 93 81 00 10 */ stw r28, 0x10(r1) /* 8005118C 0004CDEC 7C 7C 1B 78 */ mr r28, r3 /* 80051190 0004CDF0 41 82 00 0C */ beq lbl_8005119C /* 80051194 0004CDF4 FC 06 18 00 */ fcmpu cr0, f6, f3 /* 80051198 0004CDF8 40 82 00 14 */ bne lbl_800511AC lbl_8005119C: /* 8005119C 0004CDFC C0 02 84 88 */ lfs f0, lbl_80640A88-_SDA2_BASE_(r2) /* 800511A0 0004CE00 38 60 00 00 */ li r3, 0 /* 800511A4 0004CE04 D0 05 00 00 */ stfs f0, 0(r5) /* 800511A8 0004CE08 48 00 00 EC */ b lbl_80051294 lbl_800511AC: /* 800511AC 0004CE0C EC A2 18 2A */ fadds f5, f2, f3 /* 800511B0 0004CE10 38 00 00 01 */ li r0, 1 /* 800511B4 0004CE14 90 03 00 00 */ stw r0, 0(r3) /* 800511B8 0004CE18 FC 00 08 18 */ frsp f0, f1 /* 800511BC 0004CE1C 7F C4 F3 78 */ mr r4, r30 /* 800511C0 0004CE20 7F C6 F3 78 */ mr r6, r30 /* 800511C4 0004CE24 D0 C3 00 14 */ stfs f6, 0x14(r3) /* 800511C8 0004CE28 7D 07 43 78 */ mr r7, r8 /* 800511CC 0004CE2C 90 A3 00 0C */ stw r5, 0xc(r3) /* 800511D0 0004CE30 D0 23 00 24 */ stfs f1, 0x24(r3) /* 800511D4 0004CE34 D0 43 00 28 */ stfs f2, 0x28(r3) /* 800511D8 0004CE38 D0 63 00 2C */ stfs f3, 0x2c(r3) /* 800511DC 0004CE3C D0 A3 00 10 */ stfs f5, 0x10(r3) /* 800511E0 0004CE40 D0 83 00 38 */ stfs f4, 0x38(r3) /* 800511E4 0004CE44 C0 25 00 00 */ lfs f1, 0(r5) /* 800511E8 0004CE48 38 A1 00 08 */ addi r5, r1, 8 /* 800511EC 0004CE4C EC 01 00 2A */ fadds f0, f1, f0 /* 800511F0 0004CE50 D0 01 00 08 */ stfs f0, 8(r1) /* 800511F4 0004CE54 C0 23 00 28 */ lfs f1, 0x28(r3) /* 800511F8 0004CE58 38 63 00 3C */ addi r3, r3, 0x3c /* 800511FC 0004CE5C 4B FF F1 41 */ bl func_8005033C /* 80051200 0004CE60 2C 1F 00 00 */ cmpwi r31, 0 /* 80051204 0004CE64 41 82 00 50 */ beq lbl_80051254 /* 80051208 0004CE68 C0 02 84 90 */ lfs f0, lbl_80640A90-_SDA2_BASE_(r2) /* 8005120C 0004CE6C FC 20 F8 90 */ fmr f1, f31 /* 80051210 0004CE70 C0 9E 00 00 */ lfs f4, 0(r30) /* 80051214 0004CE74 FC 40 E8 90 */ fmr f2, f29 /* 80051218 0004CE78 EC 00 07 F2 */ fmuls f0, f0, f31 /* 8005121C 0004CE7C C0 7C 00 24 */ lfs f3, 0x24(r28) /* 80051220 0004CE80 7F A4 EB 78 */ mr r4, r29 /* 80051224 0004CE84 EC 84 18 2A */ fadds f4, f4, f3 /* 80051228 0004CE88 38 7C 00 60 */ addi r3, r28, 0x60 /* 8005122C 0004CE8C EC 7E 00 28 */ fsubs f3, f30, f0 /* 80051230 0004CE90 38 BC 00 34 */ addi r5, r28, 0x34 /* 80051234 0004CE94 38 C0 00 00 */ li r6, 0 /* 80051238 0004CE98 38 E0 00 01 */ li r7, 1 /* 8005123C 0004CE9C EC 04 18 28 */ fsubs f0, f4, f3 /* 80051240 0004CEA0 D0 7C 00 30 */ stfs f3, 0x30(r28) /* 80051244 0004CEA4 39 00 00 01 */ li r8, 1 /* 80051248 0004CEA8 D0 1C 00 34 */ stfs f0, 0x34(r28) /* 8005124C 0004CEAC 4B FF FC 31 */ bl func_80050E7C /* 80051250 0004CEB0 48 00 00 40 */ b lbl_80051290 lbl_80051254: /* 80051254 0004CEB4 C0 3E 00 00 */ lfs f1, 0(r30) /* 80051258 0004CEB8 FC 40 E8 90 */ fmr f2, f29 /* 8005125C 0004CEBC C0 1C 00 24 */ lfs f0, 0x24(r28) /* 80051260 0004CEC0 7F A4 EB 78 */ mr r4, r29 /* 80051264 0004CEC4 D0 3C 00 30 */ stfs f1, 0x30(r28) /* 80051268 0004CEC8 38 7C 00 60 */ addi r3, r28, 0x60 /* 8005126C 0004CECC FC 20 00 50 */ fneg f1, f0 /* 80051270 0004CED0 C0 7E 00 00 */ lfs f3, 0(r30) /* 80051274 0004CED4 38 BC 00 34 */ addi r5, r28, 0x34 /* 80051278 0004CED8 38 C0 00 00 */ li r6, 0 /* 8005127C 0004CEDC 38 E0 00 01 */ li r7, 1 /* 80051280 0004CEE0 D0 7C 00 38 */ stfs f3, 0x38(r28) /* 80051284 0004CEE4 39 00 00 00 */ li r8, 0 /* 80051288 0004CEE8 D0 1C 00 34 */ stfs f0, 0x34(r28) /* 8005128C 0004CEEC 4B FF FB F1 */ bl func_80050E7C lbl_80051290: /* 80051290 0004CEF0 38 60 00 01 */ li r3, 1 lbl_80051294: /* 80051294 0004CEF4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 80051298 0004CEF8 CB E1 00 40 */ lfd f31, 0x40(r1) /* 8005129C 0004CEFC E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 800512A0 0004CF00 CB C1 00 30 */ lfd f30, 0x30(r1) /* 800512A4 0004CF04 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 /* 800512A8 0004CF08 CB A1 00 20 */ lfd f29, 0x20(r1) /* 800512AC 0004CF0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800512B0 0004CF10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800512B4 0004CF14 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800512B8 0004CF18 80 01 00 54 */ lwz r0, 0x54(r1) /* 800512BC 0004CF1C 83 81 00 10 */ lwz r28, 0x10(r1) /* 800512C0 0004CF20 7C 08 03 A6 */ mtlr r0 /* 800512C4 0004CF24 38 21 00 50 */ addi r1, r1, 0x50 /* 800512C8 0004CF28 4E 80 00 20 */ blr /* 800512CC 0004CF2C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800512D0 0004CF30 7C 08 02 A6 */ mflr r0 /* 800512D4 0004CF34 90 01 00 14 */ stw r0, 0x14(r1) /* 800512D8 0004CF38 93 E1 00 0C */ stw r31, 0xc(r1) /* 800512DC 0004CF3C 7C 7F 1B 78 */ mr r31, r3 /* 800512E0 0004CF40 80 03 00 00 */ lwz r0, 0(r3) /* 800512E4 0004CF44 2C 00 00 00 */ cmpwi r0, 0 /* 800512E8 0004CF48 40 82 00 0C */ bne lbl_800512F4 /* 800512EC 0004CF4C 38 60 00 00 */ li r3, 0 /* 800512F0 0004CF50 48 00 00 B4 */ b lbl_800513A4 lbl_800512F4: /* 800512F4 0004CF54 C0 43 00 14 */ lfs f2, 0x14(r3) /* 800512F8 0004CF58 C0 03 00 10 */ lfs f0, 0x10(r3) /* 800512FC 0004CF5C EC 42 08 2A */ fadds f2, f2, f1 /* 80051300 0004CF60 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80051304 0004CF64 D0 43 00 14 */ stfs f2, 0x14(r3) /* 80051308 0004CF68 4C 41 13 82 */ cror 2, 1, 2 /* 8005130C 0004CF6C 40 82 00 20 */ bne lbl_8005132C /* 80051310 0004CF70 C0 03 00 38 */ lfs f0, 0x38(r3) /* 80051314 0004CF74 38 00 00 00 */ li r0, 0 /* 80051318 0004CF78 80 83 00 0C */ lwz r4, 0xc(r3) /* 8005131C 0004CF7C D0 04 00 00 */ stfs f0, 0(r4) /* 80051320 0004CF80 90 03 00 00 */ stw r0, 0(r3) /* 80051324 0004CF84 38 60 00 01 */ li r3, 1 /* 80051328 0004CF88 48 00 00 7C */ b lbl_800513A4 lbl_8005132C: /* 8005132C 0004CF8C C0 03 00 28 */ lfs f0, 0x28(r3) /* 80051330 0004CF90 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80051334 0004CF94 40 80 00 1C */ bge lbl_80051350 /* 80051338 0004CF98 81 83 00 5C */ lwz r12, 0x5c(r3) /* 8005133C 0004CF9C 81 8C 00 08 */ lwz r12, 8(r12) /* 80051340 0004CFA0 7D 89 03 A6 */ mtctr r12 /* 80051344 0004CFA4 38 63 00 3C */ addi r3, r3, 0x3c /* 80051348 0004CFA8 4E 80 04 21 */ bctrl /* 8005134C 0004CFAC 48 00 00 4C */ b lbl_80051398 lbl_80051350: /* 80051350 0004CFB0 81 83 00 80 */ lwz r12, 0x80(r3) /* 80051354 0004CFB4 81 8C 00 08 */ lwz r12, 8(r12) /* 80051358 0004CFB8 7D 89 03 A6 */ mtctr r12 /* 8005135C 0004CFBC 38 63 00 60 */ addi r3, r3, 0x60 /* 80051360 0004CFC0 4E 80 04 21 */ bctrl /* 80051364 0004CFC4 2C 03 00 00 */ cmpwi r3, 0 /* 80051368 0004CFC8 41 82 00 30 */ beq lbl_80051398 /* 8005136C 0004CFCC C0 3F 00 30 */ lfs f1, 0x30(r31) /* 80051370 0004CFD0 C0 1F 00 34 */ lfs f0, 0x34(r31) /* 80051374 0004CFD4 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80051378 0004CFD8 EC 21 00 2A */ fadds f1, f1, f0 /* 8005137C 0004CFDC C0 02 84 AC */ lfs f0, lbl_80640AAC-_SDA2_BASE_(r2) /* 80051380 0004CFE0 D0 23 00 00 */ stfs f1, 0(r3) /* 80051384 0004CFE4 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80051388 0004CFE8 C0 23 00 00 */ lfs f1, 0(r3) /* 8005138C 0004CFEC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80051390 0004CFF0 40 80 00 08 */ bge lbl_80051398 /* 80051394 0004CFF4 D0 03 00 00 */ stfs f0, 0(r3) lbl_80051398: /* 80051398 0004CFF8 38 00 00 01 */ li r0, 1 /* 8005139C 0004CFFC 38 60 00 01 */ li r3, 1 /* 800513A0 0004D000 90 1F 00 00 */ stw r0, 0(r31) lbl_800513A4: /* 800513A4 0004D004 80 01 00 14 */ lwz r0, 0x14(r1) /* 800513A8 0004D008 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800513AC 0004D00C 7C 08 03 A6 */ mtlr r0 /* 800513B0 0004D010 38 21 00 10 */ addi r1, r1, 0x10 /* 800513B4 0004D014 4E 80 00 20 */ blr .global func_800513B8 func_800513B8: /* 800513B8 0004D018 38 83 02 50 */ addi r4, r3, 0x250 /* 800513BC 0004D01C 38 03 11 C8 */ addi r0, r3, 0x11c8 /* 800513C0 0004D020 7C 84 00 40 */ cmplw cr1, r4, r0 /* 800513C4 0004D024 40 84 00 84 */ bge cr1, lbl_80051448 /* 800513C8 0004D028 7C A4 00 50 */ subf r5, r4, r0 /* 800513CC 0004D02C 3C 80 66 66 */ lis r4, 0x66666667@ha /* 800513D0 0004D030 38 C5 00 27 */ addi r6, r5, 0x27 /* 800513D4 0004D034 38 04 66 67 */ addi r0, r4, 0x66666667@l /* 800513D8 0004D038 7C 00 30 96 */ mulhw r0, r0, r6 /* 800513DC 0004D03C 7C 00 26 70 */ srawi r0, r0, 4 /* 800513E0 0004D040 54 04 0F FE */ srwi r4, r0, 0x1f /* 800513E4 0004D044 7C E0 22 14 */ add r7, r0, r4 /* 800513E8 0004D048 39 07 00 01 */ addi r8, r7, 1 /* 800513EC 0004D04C 2C 08 00 08 */ cmpwi r8, 8 /* 800513F0 0004D050 40 81 00 58 */ ble lbl_80051448 /* 800513F4 0004D054 38 80 00 00 */ li r4, 0 /* 800513F8 0004D058 41 85 00 28 */ bgt cr1, lbl_80051420 /* 800513FC 0004D05C 54 A0 00 01 */ rlwinm. r0, r5, 0, 0, 0 /* 80051400 0004D060 38 A0 00 01 */ li r5, 1 /* 80051404 0004D064 40 82 00 10 */ bne lbl_80051414 /* 80051408 0004D068 54 C0 00 01 */ rlwinm. r0, r6, 0, 0, 0 /* 8005140C 0004D06C 41 82 00 08 */ beq lbl_80051414 /* 80051410 0004D070 38 A0 00 00 */ li r5, 0 lbl_80051414: /* 80051414 0004D074 2C 05 00 00 */ cmpwi r5, 0 /* 80051418 0004D078 41 82 00 08 */ beq lbl_80051420 /* 8005141C 0004D07C 38 80 00 01 */ li r4, 1 lbl_80051420: /* 80051420 0004D080 2C 04 00 00 */ cmpwi r4, 0 /* 80051424 0004D084 41 82 00 24 */ beq lbl_80051448 /* 80051428 0004D088 54 E5 00 01 */ rlwinm. r5, r7, 0, 0, 0 /* 8005142C 0004D08C 38 80 00 01 */ li r4, 1 /* 80051430 0004D090 40 82 00 14 */ bne lbl_80051444 /* 80051434 0004D094 55 00 00 00 */ rlwinm r0, r8, 0, 0, 0 /* 80051438 0004D098 7C 05 00 00 */ cmpw r5, r0 /* 8005143C 0004D09C 41 82 00 08 */ beq lbl_80051444 /* 80051440 0004D0A0 38 80 00 00 */ li r4, 0 lbl_80051444: /* 80051444 0004D0A4 2C 04 00 00 */ cmpwi r4, 0 lbl_80051448: /* 80051448 0004D0A8 C0 02 84 B0 */ lfs f0, lbl_80640AB0-_SDA2_BASE_(r2) /* 8005144C 0004D0AC 38 00 00 14 */ li r0, 0x14 /* 80051450 0004D0B0 90 03 00 10 */ stw r0, 0x10(r3) /* 80051454 0004D0B4 D0 03 00 00 */ stfs f0, 0(r3) /* 80051458 0004D0B8 D0 03 00 04 */ stfs f0, 4(r3) /* 8005145C 0004D0BC D0 03 00 08 */ stfs f0, 8(r3) /* 80051460 0004D0C0 D0 03 00 0C */ stfs f0, 0xc(r3) /* 80051464 0004D0C4 4E 80 00 20 */ blr .global func_80051468 func_80051468: /* 80051468 0004D0C8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005146C 0004D0CC 7C 08 02 A6 */ mflr r0 /* 80051470 0004D0D0 2C 03 00 00 */ cmpwi r3, 0 /* 80051474 0004D0D4 90 01 00 14 */ stw r0, 0x14(r1) /* 80051478 0004D0D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005147C 0004D0DC 7C 7F 1B 78 */ mr r31, r3 /* 80051480 0004D0E0 41 82 00 10 */ beq lbl_80051490 /* 80051484 0004D0E4 2C 04 00 00 */ cmpwi r4, 0 /* 80051488 0004D0E8 40 81 00 08 */ ble lbl_80051490 /* 8005148C 0004D0EC 48 18 96 2D */ bl func_801DAAB8 lbl_80051490: /* 80051490 0004D0F0 7F E3 FB 78 */ mr r3, r31 /* 80051494 0004D0F4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80051498 0004D0F8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005149C 0004D0FC 7C 08 03 A6 */ mtlr r0 /* 800514A0 0004D100 38 21 00 10 */ addi r1, r1, 0x10 /* 800514A4 0004D104 4E 80 00 20 */ blr .global func_800514A8 func_800514A8: /* 800514A8 0004D108 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 800514AC 0004D10C 7C 08 02 A6 */ mflr r0 /* 800514B0 0004D110 90 01 00 A4 */ stw r0, 0xa4(r1) /* 800514B4 0004D114 DB E1 00 90 */ stfd f31, 0x90(r1) /* 800514B8 0004D118 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 800514BC 0004D11C DB C1 00 80 */ stfd f30, 0x80(r1) /* 800514C0 0004D120 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 /* 800514C4 0004D124 DB A1 00 70 */ stfd f29, 0x70(r1) /* 800514C8 0004D128 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 /* 800514CC 0004D12C DB 81 00 60 */ stfd f28, 0x60(r1) /* 800514D0 0004D130 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 /* 800514D4 0004D134 39 61 00 60 */ addi r11, r1, 0x60 /* 800514D8 0004D138 48 17 5C 25 */ bl _savegpr_16 /* 800514DC 0004D13C 7C 7F 1B 78 */ mr r31, r3 /* 800514E0 0004D140 48 18 F3 09 */ bl func_801E07E8 /* 800514E4 0004D144 2C 03 00 00 */ cmpwi r3, 0 /* 800514E8 0004D148 40 82 03 1C */ bne lbl_80051804 /* 800514EC 0004D14C 4B FB 5B 99 */ bl func_80007084 /* 800514F0 0004D150 2C 03 00 00 */ cmpwi r3, 0 /* 800514F4 0004D154 40 82 03 10 */ bne lbl_80051804 /* 800514F8 0004D158 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 800514FC 0004D15C 88 03 00 82 */ lbz r0, 0x82(r3) /* 80051500 0004D160 2C 00 00 00 */ cmpwi r0, 0 /* 80051504 0004D164 40 82 03 00 */ bne lbl_80051804 /* 80051508 0004D168 48 1F 32 C5 */ bl func_802447CC /* 8005150C 0004D16C 54 72 06 3F */ clrlwi. r18, r3, 0x18 /* 80051510 0004D170 41 82 02 F4 */ beq lbl_80051804 /* 80051514 0004D174 C3 82 84 B0 */ lfs f28, lbl_80640AB0-_SDA2_BASE_(r2) /* 80051518 0004D178 3A B2 FF FF */ addi r21, r18, -1 /* 8005151C 0004D17C CB A2 84 C0 */ lfd f29, lbl_80640AC0-_SDA2_BASE_(r2) /* 80051520 0004D180 3A 20 00 00 */ li r17, 0 /* 80051524 0004D184 C3 C2 84 BC */ lfs f30, lbl_80640ABC-_SDA2_BASE_(r2) /* 80051528 0004D188 3F C0 43 30 */ lis r30, 0x4330 /* 8005152C 0004D18C C3 E2 84 B8 */ lfs f31, lbl_80640AB8-_SDA2_BASE_(r2) /* 80051530 0004D190 3A E0 00 04 */ li r23, 4 /* 80051534 0004D194 3B 00 00 02 */ li r24, 2 /* 80051538 0004D198 3B 20 00 01 */ li r25, 1 /* 8005153C 0004D19C 3B 40 00 05 */ li r26, 5 /* 80051540 0004D1A0 3B 60 00 00 */ li r27, 0 /* 80051544 0004D1A4 3B 80 00 07 */ li r28, 7 /* 80051548 0004D1A8 3B A0 00 03 */ li r29, 3 /* 8005154C 0004D1AC 48 00 02 AC */ b lbl_800517F8 lbl_80051550: /* 80051550 0004D1B0 7C 11 A8 50 */ subf r0, r17, r21 /* 80051554 0004D1B4 54 14 06 3F */ clrlwi. r20, r0, 0x18 /* 80051558 0004D1B8 40 82 00 14 */ bne lbl_8005156C /* 8005155C 0004D1BC 38 60 00 24 */ li r3, 0x24 /* 80051560 0004D1C0 48 00 94 99 */ bl func_8005A9F8 /* 80051564 0004D1C4 7C 76 1B 78 */ mr r22, r3 /* 80051568 0004D1C8 48 00 00 10 */ b lbl_80051578 lbl_8005156C: /* 8005156C 0004D1CC 38 60 00 25 */ li r3, 0x25 /* 80051570 0004D1D0 48 00 94 89 */ bl func_8005A9F8 /* 80051574 0004D1D4 7C 76 1B 78 */ mr r22, r3 lbl_80051578: /* 80051578 0004D1D8 7F E3 FB 78 */ mr r3, r31 /* 8005157C 0004D1DC 7E 84 A3 78 */ mr r4, r20 /* 80051580 0004D1E0 48 00 03 D5 */ bl func_80051954 /* 80051584 0004D1E4 56 80 1D 78 */ rlwinm r0, r20, 3, 0x15, 0x1c /* 80051588 0004D1E8 7F E3 FB 78 */ mr r3, r31 /* 8005158C 0004D1EC 7E 7F 02 14 */ add r19, r31, r0 /* 80051590 0004D1F0 7E 85 A3 78 */ mr r5, r20 /* 80051594 0004D1F4 7E 64 9B 78 */ mr r4, r19 /* 80051598 0004D1F8 48 00 0A 3D */ bl func_80051FD4 /* 8005159C 0004D1FC C0 22 84 B4 */ lfs f1, lbl_80640AB4-_SDA2_BASE_(r2) /* 800515A0 0004D200 7E 83 A3 78 */ mr r3, r20 /* 800515A4 0004D204 FC 40 08 90 */ fmr f2, f1 /* 800515A8 0004D208 48 24 DD FD */ bl func_8029F3A4 /* 800515AC 0004D20C 92 E1 00 08 */ stw r23, 8(r1) /* 800515B0 0004D210 38 60 00 00 */ li r3, 0 /* 800515B4 0004D214 38 80 00 04 */ li r4, 4 /* 800515B8 0004D218 38 A0 00 00 */ li r5, 0 /* 800515BC 0004D21C 38 C0 00 00 */ li r6, 0 /* 800515C0 0004D220 38 E0 00 01 */ li r7, 1 /* 800515C4 0004D224 39 00 00 05 */ li r8, 5 /* 800515C8 0004D228 39 20 00 01 */ li r9, 1 /* 800515CC 0004D22C 39 40 00 01 */ li r10, 1 /* 800515D0 0004D230 48 1E B9 61 */ bl func_8023CF30 /* 800515D4 0004D234 7C 64 1B 78 */ mr r4, r3 /* 800515D8 0004D238 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 800515DC 0004D23C 48 1E 6A E1 */ bl func_802380BC /* 800515E0 0004D240 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 800515E4 0004D244 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800515E8 0004D248 93 03 01 84 */ stw r24, 0x184(r3) /* 800515EC 0004D24C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800515F0 0004D250 80 03 00 10 */ lwz r0, 0x10(r3) /* 800515F4 0004D254 60 00 00 02 */ ori r0, r0, 2 /* 800515F8 0004D258 90 03 00 10 */ stw r0, 0x10(r3) /* 800515FC 0004D25C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051600 0004D260 80 03 00 00 */ lwz r0, 0(r3) /* 80051604 0004D264 60 00 00 02 */ ori r0, r0, 2 /* 80051608 0004D268 90 03 00 00 */ stw r0, 0(r3) /* 8005160C 0004D26C 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80051610 0004D270 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051614 0004D274 93 23 0A 24 */ stw r25, 0xa24(r3) /* 80051618 0004D278 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005161C 0004D27C 92 E3 0A 28 */ stw r23, 0xa28(r3) /* 80051620 0004D280 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051624 0004D284 93 43 0A 2C */ stw r26, 0xa2c(r3) /* 80051628 0004D288 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005162C 0004D28C 93 43 0A 30 */ stw r26, 0xa30(r3) /* 80051630 0004D290 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051634 0004D294 80 03 00 64 */ lwz r0, 0x64(r3) /* 80051638 0004D298 60 00 00 01 */ ori r0, r0, 1 /* 8005163C 0004D29C 90 03 00 64 */ stw r0, 0x64(r3) /* 80051640 0004D2A0 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051644 0004D2A4 80 03 00 00 */ lwz r0, 0(r3) /* 80051648 0004D2A8 60 00 00 40 */ ori r0, r0, 0x40 /* 8005164C 0004D2AC 90 03 00 00 */ stw r0, 0(r3) /* 80051650 0004D2B0 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80051654 0004D2B4 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051658 0004D2B8 9B 23 0A 36 */ stb r25, 0xa36(r3) /* 8005165C 0004D2BC 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051660 0004D2C0 9B 23 0A 37 */ stb r25, 0xa37(r3) /* 80051664 0004D2C4 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051668 0004D2C8 9B 63 0A 38 */ stb r27, 0xa38(r3) /* 8005166C 0004D2CC 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051670 0004D2D0 80 03 00 64 */ lwz r0, 0x64(r3) /* 80051674 0004D2D4 60 00 00 04 */ ori r0, r0, 4 /* 80051678 0004D2D8 90 03 00 64 */ stw r0, 0x64(r3) /* 8005167C 0004D2DC 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051680 0004D2E0 80 03 00 00 */ lwz r0, 0(r3) /* 80051684 0004D2E4 60 00 00 40 */ ori r0, r0, 0x40 /* 80051688 0004D2E8 90 03 00 00 */ stw r0, 0(r3) /* 8005168C 0004D2EC 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80051690 0004D2F0 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051694 0004D2F4 93 83 0A 44 */ stw r28, 0xa44(r3) /* 80051698 0004D2F8 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005169C 0004D2FC 9B 63 0A 50 */ stb r27, 0xa50(r3) /* 800516A0 0004D300 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516A4 0004D304 93 63 0A 48 */ stw r27, 0xa48(r3) /* 800516A8 0004D308 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516AC 0004D30C 93 83 0A 4C */ stw r28, 0xa4c(r3) /* 800516B0 0004D310 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516B4 0004D314 9B 63 0A 51 */ stb r27, 0xa51(r3) /* 800516B8 0004D318 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516BC 0004D31C 9B 63 0A 52 */ stb r27, 0xa52(r3) /* 800516C0 0004D320 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516C4 0004D324 80 03 00 64 */ lwz r0, 0x64(r3) /* 800516C8 0004D328 60 00 00 10 */ ori r0, r0, 0x10 /* 800516CC 0004D32C 90 03 00 64 */ stw r0, 0x64(r3) /* 800516D0 0004D330 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516D4 0004D334 80 03 00 00 */ lwz r0, 0(r3) /* 800516D8 0004D338 60 00 00 40 */ ori r0, r0, 0x40 /* 800516DC 0004D33C 90 03 00 00 */ stw r0, 0(r3) /* 800516E0 0004D340 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 800516E4 0004D344 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516E8 0004D348 9B 63 0A 3C */ stb r27, 0xa3c(r3) /* 800516EC 0004D34C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516F0 0004D350 93 A3 0A 40 */ stw r29, 0xa40(r3) /* 800516F4 0004D354 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800516F8 0004D358 80 03 00 64 */ lwz r0, 0x64(r3) /* 800516FC 0004D35C 60 00 00 08 */ ori r0, r0, 8 /* 80051700 0004D360 90 03 00 64 */ stw r0, 0x64(r3) /* 80051704 0004D364 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051708 0004D368 80 03 00 00 */ lwz r0, 0(r3) /* 8005170C 0004D36C 60 00 00 40 */ ori r0, r0, 0x40 /* 80051710 0004D370 90 03 00 00 */ stw r0, 0(r3) /* 80051714 0004D374 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80051718 0004D378 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005171C 0004D37C 80 03 15 3C */ lwz r0, 0x153c(r3) /* 80051720 0004D380 7C 00 B0 40 */ cmplw r0, r22 /* 80051724 0004D384 40 82 00 14 */ bne lbl_80051738 /* 80051728 0004D388 88 16 00 07 */ lbz r0, 7(r22) /* 8005172C 0004D38C 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 80051730 0004D390 2C 00 00 01 */ cmpwi r0, 1 /* 80051734 0004D394 40 82 00 1C */ bne lbl_80051750 lbl_80051738: /* 80051738 0004D398 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005173C 0004D39C 92 C3 15 3C */ stw r22, 0x153c(r3) /* 80051740 0004D3A0 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80051744 0004D3A4 80 03 15 38 */ lwz r0, 0x1538(r3) /* 80051748 0004D3A8 60 00 00 01 */ ori r0, r0, 1 /* 8005174C 0004D3AC 90 03 15 38 */ stw r0, 0x1538(r3) lbl_80051750: /* 80051750 0004D3B0 56 80 34 B2 */ rlwinm r0, r20, 6, 0x12, 0x19 /* 80051754 0004D3B4 3A 00 00 07 */ li r16, 7 /* 80051758 0004D3B8 7E DF 02 14 */ add r22, r31, r0 /* 8005175C 0004D3BC 3A 96 00 4C */ addi r20, r22, 0x4c /* 80051760 0004D3C0 3A D6 00 38 */ addi r22, r22, 0x38 lbl_80051764: /* 80051764 0004D3C4 C0 16 00 14 */ lfs f0, 0x14(r22) /* 80051768 0004D3C8 FC 1C 00 00 */ fcmpu cr0, f28, f0 /* 8005176C 0004D3CC 40 82 00 10 */ bne lbl_8005177C /* 80051770 0004D3D0 C0 16 00 18 */ lfs f0, 0x18(r22) /* 80051774 0004D3D4 FC 1C 00 00 */ fcmpu cr0, f28, f0 /* 80051778 0004D3D8 41 82 00 44 */ beq lbl_800517BC lbl_8005177C: /* 8005177C 0004D3DC 7E 00 07 74 */ extsb r0, r16 /* 80051780 0004D3E0 93 C1 00 10 */ stw r30, 0x10(r1) /* 80051784 0004D3E4 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80051788 0004D3E8 7F E3 FB 78 */ mr r3, r31 /* 8005178C 0004D3EC 90 01 00 14 */ stw r0, 0x14(r1) /* 80051790 0004D3F0 7E 84 A3 78 */ mr r4, r20 /* 80051794 0004D3F4 C8 01 00 10 */ lfd f0, 0x10(r1) /* 80051798 0004D3F8 EC 00 E8 28 */ fsubs f0, f0, f29 /* 8005179C 0004D3FC EC 1E 00 28 */ fsubs f0, f30, f0 /* 800517A0 0004D400 EC 00 F0 24 */ fdivs f0, f0, f30 /* 800517A4 0004D404 EC 1F 00 32 */ fmuls f0, f31, f0 /* 800517A8 0004D408 FC 00 00 1E */ fctiwz f0, f0 /* 800517AC 0004D40C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800517B0 0004D410 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 800517B4 0004D414 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 800517B8 0004D418 48 00 00 85 */ bl func_8005183C lbl_800517BC: /* 800517BC 0004D41C 36 10 FF FF */ addic. r16, r16, -1 /* 800517C0 0004D420 3A D6 FF F8 */ addi r22, r22, -8 /* 800517C4 0004D424 3A 94 FF F8 */ addi r20, r20, -8 /* 800517C8 0004D428 41 81 FF 9C */ bgt lbl_80051764 /* 800517CC 0004D42C C0 13 00 00 */ lfs f0, 0(r19) /* 800517D0 0004D430 FC 1C 00 00 */ fcmpu cr0, f28, f0 /* 800517D4 0004D434 40 82 00 10 */ bne lbl_800517E4 /* 800517D8 0004D438 C0 13 00 04 */ lfs f0, 4(r19) /* 800517DC 0004D43C FC 1C 00 00 */ fcmpu cr0, f28, f0 /* 800517E0 0004D440 41 82 00 14 */ beq lbl_800517F4 lbl_800517E4: /* 800517E4 0004D444 7F E3 FB 78 */ mr r3, r31 /* 800517E8 0004D448 7E 64 9B 78 */ mr r4, r19 /* 800517EC 0004D44C 38 A0 00 FF */ li r5, 0xff /* 800517F0 0004D450 48 00 00 4D */ bl func_8005183C lbl_800517F4: /* 800517F4 0004D454 3A 31 00 01 */ addi r17, r17, 1 lbl_800517F8: /* 800517F8 0004D458 56 20 06 3E */ clrlwi r0, r17, 0x18 /* 800517FC 0004D45C 7C 00 90 40 */ cmplw r0, r18 /* 80051800 0004D460 41 80 FD 50 */ blt lbl_80051550 lbl_80051804: /* 80051804 0004D464 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 80051808 0004D468 CB E1 00 90 */ lfd f31, 0x90(r1) /* 8005180C 0004D46C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 /* 80051810 0004D470 CB C1 00 80 */ lfd f30, 0x80(r1) /* 80051814 0004D474 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 /* 80051818 0004D478 CB A1 00 70 */ lfd f29, 0x70(r1) /* 8005181C 0004D47C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 /* 80051820 0004D480 39 61 00 60 */ addi r11, r1, 0x60 /* 80051824 0004D484 CB 81 00 60 */ lfd f28, 0x60(r1) /* 80051828 0004D488 48 17 59 21 */ bl _restgpr_16 /* 8005182C 0004D48C 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80051830 0004D490 7C 08 03 A6 */ mtlr r0 /* 80051834 0004D494 38 21 00 A0 */ addi r1, r1, 0xa0 /* 80051838 0004D498 4E 80 00 20 */ blr .global func_8005183C func_8005183C: /* 8005183C 0004D49C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80051840 0004D4A0 7C 08 02 A6 */ mflr r0 /* 80051844 0004D4A4 38 C0 00 FF */ li r6, 0xff /* 80051848 0004D4A8 90 01 00 24 */ stw r0, 0x24(r1) /* 8005184C 0004D4AC 38 00 00 80 */ li r0, 0x80 /* 80051850 0004D4B0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80051854 0004D4B4 7C 9F 23 78 */ mr r31, r4 /* 80051858 0004D4B8 38 80 00 04 */ li r4, 4 /* 8005185C 0004D4BC 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80051860 0004D4C0 98 C1 00 08 */ stb r6, 8(r1) /* 80051864 0004D4C4 90 03 17 38 */ stw r0, 0x1738(r3) /* 80051868 0004D4C8 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005186C 0004D4CC 98 C1 00 09 */ stb r6, 9(r1) /* 80051870 0004D4D0 98 C1 00 0A */ stb r6, 0xa(r1) /* 80051874 0004D4D4 98 A1 00 0B */ stb r5, 0xb(r1) /* 80051878 0004D4D8 48 1E 1C B5 */ bl func_8023352C /* 8005187C 0004D4DC C0 42 84 C8 */ lfs f2, lbl_80640AC8-_SDA2_BASE_(r2) /* 80051880 0004D4E0 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 80051884 0004D4E4 C0 1F 00 00 */ lfs f0, 0(r31) /* 80051888 0004D4E8 C0 3F 00 04 */ lfs f1, 4(r31) /* 8005188C 0004D4EC EC 00 10 28 */ fsubs f0, f0, f2 /* 80051890 0004D4F0 80 01 00 08 */ lwz r0, 8(r1) /* 80051894 0004D4F4 EC 21 10 28 */ fsubs f1, f1, f2 /* 80051898 0004D4F8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) /* 8005189C 0004D4FC D0 23 80 00 */ stfs f1, -0x8000(r3) /* 800518A0 0004D500 90 03 80 00 */ stw r0, -0x8000(r3) /* 800518A4 0004D504 C0 02 84 B0 */ lfs f0, lbl_80640AB0-_SDA2_BASE_(r2) /* 800518A8 0004D508 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 800518AC 0004D50C C0 02 84 B0 */ lfs f0, lbl_80640AB0-_SDA2_BASE_(r2) /* 800518B0 0004D510 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 800518B4 0004D514 C0 1F 00 00 */ lfs f0, 0(r31) /* 800518B8 0004D518 C0 3F 00 04 */ lfs f1, 4(r31) /* 800518BC 0004D51C EC 02 00 2A */ fadds f0, f2, f0 /* 800518C0 0004D520 EC 21 10 28 */ fsubs f1, f1, f2 /* 800518C4 0004D524 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 800518C8 0004D528 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 800518CC 0004D52C 90 03 80 00 */ stw r0, -0x8000(r3) /* 800518D0 0004D530 C0 02 84 CC */ lfs f0, lbl_80640ACC-_SDA2_BASE_(r2) /* 800518D4 0004D534 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 800518D8 0004D538 C0 02 84 B0 */ lfs f0, lbl_80640AB0-_SDA2_BASE_(r2) /* 800518DC 0004D53C D0 03 80 00 */ stfs f0, -0x8000(r3) /* 800518E0 0004D540 C0 1F 00 00 */ lfs f0, 0(r31) /* 800518E4 0004D544 C0 3F 00 04 */ lfs f1, 4(r31) /* 800518E8 0004D548 EC 02 00 2A */ fadds f0, f2, f0 /* 800518EC 0004D54C EC 22 08 2A */ fadds f1, f2, f1 /* 800518F0 0004D550 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 800518F4 0004D554 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 800518F8 0004D558 90 03 80 00 */ stw r0, -0x8000(r3) /* 800518FC 0004D55C C0 02 84 CC */ lfs f0, lbl_80640ACC-_SDA2_BASE_(r2) /* 80051900 0004D560 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 80051904 0004D564 C0 02 84 CC */ lfs f0, lbl_80640ACC-_SDA2_BASE_(r2) /* 80051908 0004D568 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 8005190C 0004D56C C0 1F 00 00 */ lfs f0, 0(r31) /* 80051910 0004D570 C0 3F 00 04 */ lfs f1, 4(r31) /* 80051914 0004D574 EC 00 10 28 */ fsubs f0, f0, f2 /* 80051918 0004D578 EC 22 08 2A */ fadds f1, f2, f1 /* 8005191C 0004D57C D0 03 80 00 */ stfs f0, -0x8000(r3) /* 80051920 0004D580 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 80051924 0004D584 90 03 80 00 */ stw r0, -0x8000(r3) /* 80051928 0004D588 C0 02 84 B0 */ lfs f0, lbl_80640AB0-_SDA2_BASE_(r2) /* 8005192C 0004D58C D0 03 80 00 */ stfs f0, -0x8000(r3) /* 80051930 0004D590 C0 02 84 CC */ lfs f0, lbl_80640ACC-_SDA2_BASE_(r2) /* 80051934 0004D594 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 80051938 0004D598 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005193C 0004D59C 48 1E 1C 45 */ bl func_80233580 /* 80051940 0004D5A0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80051944 0004D5A4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80051948 0004D5A8 7C 08 03 A6 */ mtlr r0 /* 8005194C 0004D5AC 38 21 00 20 */ addi r1, r1, 0x20 /* 80051950 0004D5B0 4E 80 00 20 */ blr .global func_80051954 func_80051954: /* 80051954 0004D5B4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80051958 0004D5B8 7C 08 02 A6 */ mflr r0 /* 8005195C 0004D5BC 90 01 00 24 */ stw r0, 0x24(r1) /* 80051960 0004D5C0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80051964 0004D5C4 7C 9F 23 78 */ mr r31, r4 /* 80051968 0004D5C8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005196C 0004D5CC 7C 7E 1B 78 */ mr r30, r3 /* 80051970 0004D5D0 7F E3 FB 78 */ mr r3, r31 /* 80051974 0004D5D4 48 1F 2E 29 */ bl func_8024479C /* 80051978 0004D5D8 2C 03 00 00 */ cmpwi r3, 0 /* 8005197C 0004D5DC 41 82 01 1C */ beq lbl_80051A98 /* 80051980 0004D5E0 C0 02 84 B0 */ lfs f0, lbl_80640AB0-_SDA2_BASE_(r2) /* 80051984 0004D5E4 57 E6 1D 78 */ rlwinm r6, r31, 3, 0x15, 0x1c /* 80051988 0004D5E8 7C BE 32 14 */ add r5, r30, r6 /* 8005198C 0004D5EC 7C 1E 35 2E */ stfsx f0, r30, r6 /* 80051990 0004D5F0 D0 05 00 04 */ stfs f0, 4(r5) /* 80051994 0004D5F4 80 03 00 40 */ lwz r0, 0x40(r3) /* 80051998 0004D5F8 2C 00 00 00 */ cmpwi r0, 0 /* 8005199C 0004D5FC 41 82 00 FC */ beq lbl_80051A98 /* 800519A0 0004D600 7C 64 1B 78 */ mr r4, r3 /* 800519A4 0004D604 38 E0 00 00 */ li r7, 0 /* 800519A8 0004D608 48 00 00 E4 */ b lbl_80051A8C lbl_800519AC: /* 800519AC 0004D60C 80 03 00 40 */ lwz r0, 0x40(r3) /* 800519B0 0004D610 2C 00 00 00 */ cmpwi r0, 0 /* 800519B4 0004D614 40 81 00 0C */ ble lbl_800519C0 /* 800519B8 0004D618 7C 00 38 00 */ cmpw r0, r7 /* 800519BC 0004D61C 41 81 00 0C */ bgt lbl_800519C8 lbl_800519C0: /* 800519C0 0004D620 38 00 00 00 */ li r0, 0 /* 800519C4 0004D624 48 00 00 34 */ b lbl_800519F8 lbl_800519C8: /* 800519C8 0004D628 88 04 00 A2 */ lbz r0, 0xa2(r4) /* 800519CC 0004D62C 7C 00 07 75 */ extsb. r0, r0 /* 800519D0 0004D630 40 81 00 0C */ ble lbl_800519DC /* 800519D4 0004D634 2C 00 00 02 */ cmpwi r0, 2 /* 800519D8 0004D638 40 81 00 0C */ ble lbl_800519E4 lbl_800519DC: /* 800519DC 0004D63C 38 00 00 00 */ li r0, 0 /* 800519E0 0004D640 48 00 00 18 */ b lbl_800519F8 lbl_800519E4: /* 800519E4 0004D644 C0 04 00 64 */ lfs f0, 0x64(r4) /* 800519E8 0004D648 38 00 00 01 */ li r0, 1 /* 800519EC 0004D64C D0 05 00 00 */ stfs f0, 0(r5) /* 800519F0 0004D650 C0 04 00 68 */ lfs f0, 0x68(r4) /* 800519F4 0004D654 D0 05 00 04 */ stfs f0, 4(r5) lbl_800519F8: /* 800519F8 0004D658 2C 00 00 00 */ cmpwi r0, 0 /* 800519FC 0004D65C 41 82 00 88 */ beq lbl_80051A84 /* 80051A00 0004D660 80 7E 00 10 */ lwz r3, 0x10(r30) /* 80051A04 0004D664 3C 00 43 30 */ lis r0, 0x4330 /* 80051A08 0004D668 C0 22 84 D8 */ lfs f1, lbl_80640AD8-_SDA2_BASE_(r2) /* 80051A0C 0004D66C 7C 9E 32 14 */ add r4, r30, r6 /* 80051A10 0004D670 6C 63 80 00 */ xoris r3, r3, 0x8000 /* 80051A14 0004D674 7C 1E 34 2E */ lfsx f0, r30, r6 /* 80051A18 0004D678 90 61 00 0C */ stw r3, 0xc(r1) /* 80051A1C 0004D67C EC 21 00 32 */ fmuls f1, f1, f0 /* 80051A20 0004D680 C0 C2 84 D4 */ lfs f6, lbl_80640AD4-_SDA2_BASE_(r2) /* 80051A24 0004D684 90 01 00 08 */ stw r0, 8(r1) /* 80051A28 0004D688 C8 82 84 C0 */ lfd f4, lbl_80640AC0-_SDA2_BASE_(r2) /* 80051A2C 0004D68C C8 01 00 08 */ lfd f0, 8(r1) /* 80051A30 0004D690 EC A6 00 72 */ fmuls f5, f6, f1 /* 80051A34 0004D694 C0 22 84 D0 */ lfs f1, lbl_80640AD0-_SDA2_BASE_(r2) /* 80051A38 0004D698 EC 60 20 28 */ fsubs f3, f0, f4 /* 80051A3C 0004D69C 90 01 00 10 */ stw r0, 0x10(r1) /* 80051A40 0004D6A0 C0 42 84 E0 */ lfs f2, lbl_80640AE0-_SDA2_BASE_(r2) /* 80051A44 0004D6A4 C0 02 84 DC */ lfs f0, lbl_80640ADC-_SDA2_BASE_(r2) /* 80051A48 0004D6A8 EC 65 18 24 */ fdivs f3, f5, f3 /* 80051A4C 0004D6AC EC 21 18 2A */ fadds f1, f1, f3 /* 80051A50 0004D6B0 7C 3E 35 2E */ stfsx f1, r30, r6 /* 80051A54 0004D6B4 80 1E 00 10 */ lwz r0, 0x10(r30) /* 80051A58 0004D6B8 C0 24 00 04 */ lfs f1, 4(r4) /* 80051A5C 0004D6BC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80051A60 0004D6C0 EC 42 00 72 */ fmuls f2, f2, f1 /* 80051A64 0004D6C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80051A68 0004D6C8 C8 21 00 10 */ lfd f1, 0x10(r1) /* 80051A6C 0004D6CC EC 46 00 B2 */ fmuls f2, f6, f2 /* 80051A70 0004D6D0 EC 21 20 28 */ fsubs f1, f1, f4 /* 80051A74 0004D6D4 EC 22 08 24 */ fdivs f1, f2, f1 /* 80051A78 0004D6D8 EC 00 08 2A */ fadds f0, f0, f1 /* 80051A7C 0004D6DC D0 04 00 04 */ stfs f0, 4(r4) /* 80051A80 0004D6E0 48 00 00 18 */ b lbl_80051A98 lbl_80051A84: /* 80051A84 0004D6E4 38 84 00 84 */ addi r4, r4, 0x84 /* 80051A88 0004D6E8 38 E7 00 01 */ addi r7, r7, 1 lbl_80051A8C: /* 80051A8C 0004D6EC 80 03 00 40 */ lwz r0, 0x40(r3) /* 80051A90 0004D6F0 7C 07 00 00 */ cmpw r7, r0 /* 80051A94 0004D6F4 41 80 FF 18 */ blt lbl_800519AC lbl_80051A98: /* 80051A98 0004D6F8 57 E0 1D 78 */ rlwinm r0, r31, 3, 0x15, 0x1c /* 80051A9C 0004D6FC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80051AA0 0004D700 7C 9E 02 14 */ add r4, r30, r0 /* 80051AA4 0004D704 7C 7E 00 2E */ lwzx r3, r30, r0 /* 80051AA8 0004D708 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80051AAC 0004D70C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80051AB0 0004D710 80 84 00 04 */ lwz r4, 4(r4) /* 80051AB4 0004D714 7C 08 03 A6 */ mtlr r0 /* 80051AB8 0004D718 38 21 00 20 */ addi r1, r1, 0x20 /* 80051ABC 0004D71C 4E 80 00 20 */ blr .global func_80051AC0 func_80051AC0: /* 80051AC0 0004D720 28 04 00 64 */ cmplwi r4, 0x64 /* 80051AC4 0004D724 4C 80 00 20 */ bgelr /* 80051AC8 0004D728 1C 04 00 28 */ mulli r0, r4, 0x28 /* 80051ACC 0004D72C C0 05 00 00 */ lfs f0, 0(r5) /* 80051AD0 0004D730 7C 63 02 14 */ add r3, r3, r0 /* 80051AD4 0004D734 D0 03 02 28 */ stfs f0, 0x228(r3) /* 80051AD8 0004D738 C0 05 00 10 */ lfs f0, 0x10(r5) /* 80051ADC 0004D73C D0 03 02 2C */ stfs f0, 0x22c(r3) /* 80051AE0 0004D740 C0 05 00 04 */ lfs f0, 4(r5) /* 80051AE4 0004D744 D0 03 02 30 */ stfs f0, 0x230(r3) /* 80051AE8 0004D748 C0 05 00 14 */ lfs f0, 0x14(r5) /* 80051AEC 0004D74C D0 03 02 34 */ stfs f0, 0x234(r3) /* 80051AF0 0004D750 C0 05 00 08 */ lfs f0, 8(r5) /* 80051AF4 0004D754 D0 03 02 38 */ stfs f0, 0x238(r3) /* 80051AF8 0004D758 C0 05 00 18 */ lfs f0, 0x18(r5) /* 80051AFC 0004D75C D0 03 02 3C */ stfs f0, 0x23c(r3) /* 80051B00 0004D760 C0 05 00 0C */ lfs f0, 0xc(r5) /* 80051B04 0004D764 D0 03 02 40 */ stfs f0, 0x240(r3) /* 80051B08 0004D768 C0 05 00 1C */ lfs f0, 0x1c(r5) /* 80051B0C 0004D76C D0 03 02 44 */ stfs f0, 0x244(r3) /* 80051B10 0004D770 4E 80 00 20 */ blr lbl_80051B14: /* 80051B14 0004D774 28 04 00 64 */ cmplwi r4, 0x64 /* 80051B18 0004D778 4C 80 00 20 */ bgelr /* 80051B1C 0004D77C 1C 04 00 28 */ mulli r0, r4, 0x28 /* 80051B20 0004D780 7C 63 02 14 */ add r3, r3, r0 /* 80051B24 0004D784 C0 03 02 28 */ lfs f0, 0x228(r3) /* 80051B28 0004D788 D0 05 00 00 */ stfs f0, 0(r5) /* 80051B2C 0004D78C C0 03 02 2C */ lfs f0, 0x22c(r3) /* 80051B30 0004D790 D0 05 00 10 */ stfs f0, 0x10(r5) /* 80051B34 0004D794 C0 03 02 30 */ lfs f0, 0x230(r3) /* 80051B38 0004D798 D0 05 00 04 */ stfs f0, 4(r5) /* 80051B3C 0004D79C C0 03 02 34 */ lfs f0, 0x234(r3) /* 80051B40 0004D7A0 D0 05 00 14 */ stfs f0, 0x14(r5) /* 80051B44 0004D7A4 C0 03 02 38 */ lfs f0, 0x238(r3) /* 80051B48 0004D7A8 D0 05 00 08 */ stfs f0, 8(r5) /* 80051B4C 0004D7AC C0 03 02 3C */ lfs f0, 0x23c(r3) /* 80051B50 0004D7B0 D0 05 00 18 */ stfs f0, 0x18(r5) /* 80051B54 0004D7B4 C0 03 02 40 */ lfs f0, 0x240(r3) /* 80051B58 0004D7B8 D0 05 00 0C */ stfs f0, 0xc(r5) /* 80051B5C 0004D7BC C0 03 02 44 */ lfs f0, 0x244(r3) /* 80051B60 0004D7C0 D0 05 00 1C */ stfs f0, 0x1c(r5) /* 80051B64 0004D7C4 4E 80 00 20 */ blr .global func_80051B68 func_80051B68: /* 80051B68 0004D7C8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80051B6C 0004D7CC 7C 08 02 A6 */ mflr r0 /* 80051B70 0004D7D0 90 01 00 24 */ stw r0, 0x24(r1) /* 80051B74 0004D7D4 54 80 1D 78 */ rlwinm r0, r4, 3, 0x15, 0x1c /* 80051B78 0004D7D8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80051B7C 0004D7DC 3B E3 02 28 */ addi r31, r3, 0x228 /* 80051B80 0004D7E0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80051B84 0004D7E4 7F C3 02 14 */ add r30, r3, r0 /* 80051B88 0004D7E8 93 A1 00 14 */ stw r29, 0x14(r1) /* 80051B8C 0004D7EC 3B A0 00 00 */ li r29, 0 /* 80051B90 0004D7F0 93 81 00 10 */ stw r28, 0x10(r1) /* 80051B94 0004D7F4 7C 7C 1B 78 */ mr r28, r3 lbl_80051B98: /* 80051B98 0004D7F8 7F 83 E3 78 */ mr r3, r28 /* 80051B9C 0004D7FC 7F C4 F3 78 */ mr r4, r30 /* 80051BA0 0004D800 7F E5 FB 78 */ mr r5, r31 /* 80051BA4 0004D804 48 00 00 49 */ bl func_80051BEC /* 80051BA8 0004D808 2C 03 00 00 */ cmpwi r3, 0 /* 80051BAC 0004D80C 41 82 00 0C */ beq lbl_80051BB8 /* 80051BB0 0004D810 7F A3 EB 78 */ mr r3, r29 /* 80051BB4 0004D814 48 00 00 18 */ b lbl_80051BCC lbl_80051BB8: /* 80051BB8 0004D818 3B BD 00 01 */ addi r29, r29, 1 /* 80051BBC 0004D81C 3B FF 00 28 */ addi r31, r31, 0x28 /* 80051BC0 0004D820 2C 1D 00 64 */ cmpwi r29, 0x64 /* 80051BC4 0004D824 41 80 FF D4 */ blt lbl_80051B98 /* 80051BC8 0004D828 38 60 00 00 */ li r3, 0 lbl_80051BCC: /* 80051BCC 0004D82C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80051BD0 0004D830 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80051BD4 0004D834 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80051BD8 0004D838 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80051BDC 0004D83C 83 81 00 10 */ lwz r28, 0x10(r1) /* 80051BE0 0004D840 7C 08 03 A6 */ mtlr r0 /* 80051BE4 0004D844 38 21 00 20 */ addi r1, r1, 0x20 /* 80051BE8 0004D848 4E 80 00 20 */ blr .global func_80051BEC func_80051BEC: /* 80051BEC 0004D84C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80051BF0 0004D850 38 00 00 04 */ li r0, 4 /* 80051BF4 0004D854 7C AC 2B 78 */ mr r12, r5 /* 80051BF8 0004D858 38 C0 00 00 */ li r6, 0 /* 80051BFC 0004D85C C0 24 00 00 */ lfs f1, 0(r4) /* 80051C00 0004D860 C0 04 00 04 */ lfs f0, 4(r4) /* 80051C04 0004D864 38 80 00 00 */ li r4, 0 /* 80051C08 0004D868 FC 20 08 1E */ fctiwz f1, f1 /* 80051C0C 0004D86C FC 00 00 1E */ fctiwz f0, f0 /* 80051C10 0004D870 D8 21 00 08 */ stfd f1, 8(r1) /* 80051C14 0004D874 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80051C18 0004D878 80 E1 00 0C */ lwz r7, 0xc(r1) /* 80051C1C 0004D87C 81 01 00 14 */ lwz r8, 0x14(r1) /* 80051C20 0004D880 7C 09 03 A6 */ mtctr r0 lbl_80051C24: /* 80051C24 0004D884 C0 25 00 00 */ lfs f1, 0(r5) /* 80051C28 0004D888 2C 06 00 03 */ cmpwi r6, 3 /* 80051C2C 0004D88C C0 05 00 04 */ lfs f0, 4(r5) /* 80051C30 0004D890 38 A5 00 08 */ addi r5, r5, 8 /* 80051C34 0004D894 FC 20 08 1E */ fctiwz f1, f1 /* 80051C38 0004D898 FC 00 00 1E */ fctiwz f0, f0 /* 80051C3C 0004D89C D8 21 00 10 */ stfd f1, 0x10(r1) /* 80051C40 0004D8A0 D8 01 00 08 */ stfd f0, 8(r1) /* 80051C44 0004D8A4 81 21 00 14 */ lwz r9, 0x14(r1) /* 80051C48 0004D8A8 81 41 00 0C */ lwz r10, 0xc(r1) /* 80051C4C 0004D8AC 41 80 00 28 */ blt lbl_80051C74 /* 80051C50 0004D8B0 C0 2C 00 00 */ lfs f1, 0(r12) /* 80051C54 0004D8B4 C0 0C 00 04 */ lfs f0, 4(r12) /* 80051C58 0004D8B8 FC 20 08 1E */ fctiwz f1, f1 /* 80051C5C 0004D8BC FC 00 00 1E */ fctiwz f0, f0 /* 80051C60 0004D8C0 D8 21 00 10 */ stfd f1, 0x10(r1) /* 80051C64 0004D8C4 D8 01 00 08 */ stfd f0, 8(r1) /* 80051C68 0004D8C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 80051C6C 0004D8CC 81 61 00 0C */ lwz r11, 0xc(r1) /* 80051C70 0004D8D0 48 00 00 24 */ b lbl_80051C94 lbl_80051C74: /* 80051C74 0004D8D4 C0 25 00 00 */ lfs f1, 0(r5) /* 80051C78 0004D8D8 C0 05 00 04 */ lfs f0, 4(r5) /* 80051C7C 0004D8DC FC 20 08 1E */ fctiwz f1, f1 /* 80051C80 0004D8E0 FC 00 00 1E */ fctiwz f0, f0 /* 80051C84 0004D8E4 D8 21 00 10 */ stfd f1, 0x10(r1) /* 80051C88 0004D8E8 D8 01 00 08 */ stfd f0, 8(r1) /* 80051C8C 0004D8EC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80051C90 0004D8F0 81 61 00 0C */ lwz r11, 0xc(r1) lbl_80051C94: /* 80051C94 0004D8F4 7C 0A 40 00 */ cmpw r10, r8 /* 80051C98 0004D8F8 41 81 00 0C */ bgt lbl_80051CA4 /* 80051C9C 0004D8FC 7C 08 58 00 */ cmpw r8, r11 /* 80051CA0 0004D900 41 80 00 14 */ blt lbl_80051CB4 lbl_80051CA4: /* 80051CA4 0004D904 7C 0B 40 00 */ cmpw r11, r8 /* 80051CA8 0004D908 41 81 00 30 */ bgt lbl_80051CD8 /* 80051CAC 0004D90C 7C 08 50 00 */ cmpw r8, r10 /* 80051CB0 0004D910 40 80 00 28 */ bge lbl_80051CD8 lbl_80051CB4: /* 80051CB4 0004D914 7C 6A 40 50 */ subf r3, r10, r8 /* 80051CB8 0004D918 7C 00 48 50 */ subf r0, r0, r9 /* 80051CBC 0004D91C 7C 63 01 D6 */ mullw r3, r3, r0 /* 80051CC0 0004D920 7C 0B 50 50 */ subf r0, r11, r10 /* 80051CC4 0004D924 7C 03 03 D6 */ divw r0, r3, r0 /* 80051CC8 0004D928 7C 09 02 14 */ add r0, r9, r0 /* 80051CCC 0004D92C 7C 07 00 00 */ cmpw r7, r0 /* 80051CD0 0004D930 40 80 00 08 */ bge lbl_80051CD8 /* 80051CD4 0004D934 38 84 00 01 */ addi r4, r4, 1 lbl_80051CD8: /* 80051CD8 0004D938 38 C6 00 01 */ addi r6, r6, 1 /* 80051CDC 0004D93C 42 00 FF 48 */ bdnz lbl_80051C24 /* 80051CE0 0004D940 54 83 07 FE */ clrlwi r3, r4, 0x1f /* 80051CE4 0004D944 38 21 00 20 */ addi r1, r1, 0x20 /* 80051CE8 0004D948 4E 80 00 20 */ blr .global func_80051CEC func_80051CEC: /* 80051CEC 0004D94C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80051CF0 0004D950 7C 08 02 A6 */ mflr r0 /* 80051CF4 0004D954 90 01 00 14 */ stw r0, 0x14(r1) /* 80051CF8 0004D958 93 E1 00 0C */ stw r31, 0xc(r1) /* 80051CFC 0004D95C 7C 7F 1B 78 */ mr r31, r3 /* 80051D00 0004D960 38 60 00 00 */ li r3, 0 /* 80051D04 0004D964 48 1F 2A 99 */ bl func_8024479C /* 80051D08 0004D968 80 03 00 44 */ lwz r0, 0x44(r3) /* 80051D0C 0004D96C 90 1F 00 94 */ stw r0, 0x94(r31) /* 80051D10 0004D970 80 03 00 48 */ lwz r0, 0x48(r3) /* 80051D14 0004D974 90 1F 00 98 */ stw r0, 0x98(r31) /* 80051D18 0004D978 80 03 00 4C */ lwz r0, 0x4c(r3) /* 80051D1C 0004D97C 90 1F 00 9C */ stw r0, 0x9c(r31) /* 80051D20 0004D980 80 83 00 50 */ lwz r4, 0x50(r3) /* 80051D24 0004D984 80 03 00 54 */ lwz r0, 0x54(r3) /* 80051D28 0004D988 90 9F 00 A0 */ stw r4, 0xa0(r31) /* 80051D2C 0004D98C 90 1F 00 A4 */ stw r0, 0xa4(r31) /* 80051D30 0004D990 80 03 00 58 */ lwz r0, 0x58(r3) /* 80051D34 0004D994 90 1F 00 A8 */ stw r0, 0xa8(r31) /* 80051D38 0004D998 C0 03 00 5C */ lfs f0, 0x5c(r3) /* 80051D3C 0004D99C D0 1F 00 AC */ stfs f0, 0xac(r31) /* 80051D40 0004D9A0 C0 03 00 60 */ lfs f0, 0x60(r3) /* 80051D44 0004D9A4 D0 1F 00 B0 */ stfs f0, 0xb0(r31) /* 80051D48 0004D9A8 80 83 00 64 */ lwz r4, 0x64(r3) /* 80051D4C 0004D9AC 80 03 00 68 */ lwz r0, 0x68(r3) /* 80051D50 0004D9B0 90 9F 00 B4 */ stw r4, 0xb4(r31) /* 80051D54 0004D9B4 90 1F 00 B8 */ stw r0, 0xb8(r31) /* 80051D58 0004D9B8 80 83 00 6C */ lwz r4, 0x6c(r3) /* 80051D5C 0004D9BC 80 03 00 70 */ lwz r0, 0x70(r3) /* 80051D60 0004D9C0 90 9F 00 BC */ stw r4, 0xbc(r31) /* 80051D64 0004D9C4 90 1F 00 C0 */ stw r0, 0xc0(r31) /* 80051D68 0004D9C8 C0 03 00 74 */ lfs f0, 0x74(r3) /* 80051D6C 0004D9CC D0 1F 00 C4 */ stfs f0, 0xc4(r31) /* 80051D70 0004D9D0 80 83 00 78 */ lwz r4, 0x78(r3) /* 80051D74 0004D9D4 80 03 00 7C */ lwz r0, 0x7c(r3) /* 80051D78 0004D9D8 90 9F 00 C8 */ stw r4, 0xc8(r31) /* 80051D7C 0004D9DC 90 1F 00 CC */ stw r0, 0xcc(r31) /* 80051D80 0004D9E0 80 83 00 80 */ lwz r4, 0x80(r3) /* 80051D84 0004D9E4 80 03 00 84 */ lwz r0, 0x84(r3) /* 80051D88 0004D9E8 90 9F 00 D0 */ stw r4, 0xd0(r31) /* 80051D8C 0004D9EC 90 1F 00 D4 */ stw r0, 0xd4(r31) /* 80051D90 0004D9F0 C0 03 00 88 */ lfs f0, 0x88(r3) /* 80051D94 0004D9F4 D0 1F 00 D8 */ stfs f0, 0xd8(r31) /* 80051D98 0004D9F8 C0 23 00 8C */ lfs f1, 0x8c(r3) /* 80051D9C 0004D9FC D0 3F 00 DC */ stfs f1, 0xdc(r31) /* 80051DA0 0004DA00 C0 03 00 90 */ lfs f0, 0x90(r3) /* 80051DA4 0004DA04 D0 1F 00 E0 */ stfs f0, 0xe0(r31) /* 80051DA8 0004DA08 C0 03 00 94 */ lfs f0, 0x94(r3) /* 80051DAC 0004DA0C D0 1F 00 E4 */ stfs f0, 0xe4(r31) /* 80051DB0 0004DA10 80 83 00 98 */ lwz r4, 0x98(r3) /* 80051DB4 0004DA14 80 03 00 9C */ lwz r0, 0x9c(r3) /* 80051DB8 0004DA18 90 9F 00 E8 */ stw r4, 0xe8(r31) /* 80051DBC 0004DA1C 90 1F 00 EC */ stw r0, 0xec(r31) /* 80051DC0 0004DA20 88 03 00 A0 */ lbz r0, 0xa0(r3) /* 80051DC4 0004DA24 98 1F 00 F0 */ stb r0, 0xf0(r31) /* 80051DC8 0004DA28 88 03 00 A1 */ lbz r0, 0xa1(r3) /* 80051DCC 0004DA2C 98 1F 00 F1 */ stb r0, 0xf1(r31) /* 80051DD0 0004DA30 88 03 00 A2 */ lbz r0, 0xa2(r3) /* 80051DD4 0004DA34 98 1F 00 F2 */ stb r0, 0xf2(r31) /* 80051DD8 0004DA38 88 03 00 A3 */ lbz r0, 0xa3(r3) /* 80051DDC 0004DA3C 98 1F 00 F3 */ stb r0, 0xf3(r31) /* 80051DE0 0004DA40 80 83 00 A4 */ lwz r4, 0xa4(r3) /* 80051DE4 0004DA44 80 03 00 A8 */ lwz r0, 0xa8(r3) /* 80051DE8 0004DA48 90 9F 00 F4 */ stw r4, 0xf4(r31) /* 80051DEC 0004DA4C 90 1F 00 F8 */ stw r0, 0xf8(r31) /* 80051DF0 0004DA50 80 83 00 AC */ lwz r4, 0xac(r3) /* 80051DF4 0004DA54 80 03 00 B0 */ lwz r0, 0xb0(r3) /* 80051DF8 0004DA58 90 9F 00 FC */ stw r4, 0xfc(r31) /* 80051DFC 0004DA5C 90 1F 01 00 */ stw r0, 0x100(r31) /* 80051E00 0004DA60 80 83 00 B4 */ lwz r4, 0xb4(r3) /* 80051E04 0004DA64 80 03 00 B8 */ lwz r0, 0xb8(r3) /* 80051E08 0004DA68 90 9F 01 04 */ stw r4, 0x104(r31) /* 80051E0C 0004DA6C 90 1F 01 08 */ stw r0, 0x108(r31) /* 80051E10 0004DA70 80 83 00 BC */ lwz r4, 0xbc(r3) /* 80051E14 0004DA74 80 03 00 C0 */ lwz r0, 0xc0(r3) /* 80051E18 0004DA78 90 9F 01 0C */ stw r4, 0x10c(r31) /* 80051E1C 0004DA7C 90 1F 01 10 */ stw r0, 0x110(r31) /* 80051E20 0004DA80 80 03 00 C4 */ lwz r0, 0xc4(r3) /* 80051E24 0004DA84 90 1F 01 14 */ stw r0, 0x114(r31) /* 80051E28 0004DA88 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80051E2C 0004DA8C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80051E30 0004DA90 7C 08 03 A6 */ mtlr r0 /* 80051E34 0004DA94 38 21 00 10 */ addi r1, r1, 0x10 /* 80051E38 0004DA98 4E 80 00 20 */ blr .global func_80051E3C func_80051E3C: /* 80051E3C 0004DA9C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80051E40 0004DAA0 7C 08 02 A6 */ mflr r0 /* 80051E44 0004DAA4 90 01 00 14 */ stw r0, 0x14(r1) /* 80051E48 0004DAA8 93 E1 00 0C */ stw r31, 0xc(r1) /* 80051E4C 0004DAAC 7C 7F 1B 78 */ mr r31, r3 /* 80051E50 0004DAB0 38 60 00 00 */ li r3, 0 /* 80051E54 0004DAB4 48 1F 29 49 */ bl func_8024479C /* 80051E58 0004DAB8 80 03 00 44 */ lwz r0, 0x44(r3) /* 80051E5C 0004DABC 90 1F 00 94 */ stw r0, 0x94(r31) /* 80051E60 0004DAC0 80 03 00 48 */ lwz r0, 0x48(r3) /* 80051E64 0004DAC4 90 1F 00 98 */ stw r0, 0x98(r31) /* 80051E68 0004DAC8 80 03 00 4C */ lwz r0, 0x4c(r3) /* 80051E6C 0004DACC 90 1F 00 9C */ stw r0, 0x9c(r31) /* 80051E70 0004DAD0 80 83 00 50 */ lwz r4, 0x50(r3) /* 80051E74 0004DAD4 80 03 00 54 */ lwz r0, 0x54(r3) /* 80051E78 0004DAD8 90 9F 00 A0 */ stw r4, 0xa0(r31) /* 80051E7C 0004DADC 90 1F 00 A4 */ stw r0, 0xa4(r31) /* 80051E80 0004DAE0 C0 3F 00 A0 */ lfs f1, 0xa0(r31) /* 80051E84 0004DAE4 80 03 00 58 */ lwz r0, 0x58(r3) /* 80051E88 0004DAE8 90 1F 00 A8 */ stw r0, 0xa8(r31) /* 80051E8C 0004DAEC C0 03 00 5C */ lfs f0, 0x5c(r3) /* 80051E90 0004DAF0 D0 1F 00 AC */ stfs f0, 0xac(r31) /* 80051E94 0004DAF4 C0 03 00 60 */ lfs f0, 0x60(r3) /* 80051E98 0004DAF8 D0 1F 00 B0 */ stfs f0, 0xb0(r31) /* 80051E9C 0004DAFC 80 83 00 64 */ lwz r4, 0x64(r3) /* 80051EA0 0004DB00 80 03 00 68 */ lwz r0, 0x68(r3) /* 80051EA4 0004DB04 90 9F 00 B4 */ stw r4, 0xb4(r31) /* 80051EA8 0004DB08 90 1F 00 B8 */ stw r0, 0xb8(r31) /* 80051EAC 0004DB0C 80 83 00 6C */ lwz r4, 0x6c(r3) /* 80051EB0 0004DB10 80 03 00 70 */ lwz r0, 0x70(r3) /* 80051EB4 0004DB14 90 9F 00 BC */ stw r4, 0xbc(r31) /* 80051EB8 0004DB18 90 1F 00 C0 */ stw r0, 0xc0(r31) /* 80051EBC 0004DB1C C0 03 00 74 */ lfs f0, 0x74(r3) /* 80051EC0 0004DB20 D0 1F 00 C4 */ stfs f0, 0xc4(r31) /* 80051EC4 0004DB24 80 83 00 78 */ lwz r4, 0x78(r3) /* 80051EC8 0004DB28 80 03 00 7C */ lwz r0, 0x7c(r3) /* 80051ECC 0004DB2C 90 9F 00 C8 */ stw r4, 0xc8(r31) /* 80051ED0 0004DB30 90 1F 00 CC */ stw r0, 0xcc(r31) /* 80051ED4 0004DB34 80 83 00 80 */ lwz r4, 0x80(r3) /* 80051ED8 0004DB38 80 03 00 84 */ lwz r0, 0x84(r3) /* 80051EDC 0004DB3C 90 9F 00 D0 */ stw r4, 0xd0(r31) /* 80051EE0 0004DB40 90 1F 00 D4 */ stw r0, 0xd4(r31) /* 80051EE4 0004DB44 C0 03 00 88 */ lfs f0, 0x88(r3) /* 80051EE8 0004DB48 D0 1F 00 D8 */ stfs f0, 0xd8(r31) /* 80051EEC 0004DB4C C0 03 00 8C */ lfs f0, 0x8c(r3) /* 80051EF0 0004DB50 D0 1F 00 DC */ stfs f0, 0xdc(r31) /* 80051EF4 0004DB54 C0 03 00 90 */ lfs f0, 0x90(r3) /* 80051EF8 0004DB58 D0 1F 00 E0 */ stfs f0, 0xe0(r31) /* 80051EFC 0004DB5C C0 03 00 94 */ lfs f0, 0x94(r3) /* 80051F00 0004DB60 D0 1F 00 E4 */ stfs f0, 0xe4(r31) /* 80051F04 0004DB64 80 83 00 98 */ lwz r4, 0x98(r3) /* 80051F08 0004DB68 80 03 00 9C */ lwz r0, 0x9c(r3) /* 80051F0C 0004DB6C 90 9F 00 E8 */ stw r4, 0xe8(r31) /* 80051F10 0004DB70 90 1F 00 EC */ stw r0, 0xec(r31) /* 80051F14 0004DB74 88 03 00 A0 */ lbz r0, 0xa0(r3) /* 80051F18 0004DB78 98 1F 00 F0 */ stb r0, 0xf0(r31) /* 80051F1C 0004DB7C 88 03 00 A1 */ lbz r0, 0xa1(r3) /* 80051F20 0004DB80 98 1F 00 F1 */ stb r0, 0xf1(r31) /* 80051F24 0004DB84 88 03 00 A2 */ lbz r0, 0xa2(r3) /* 80051F28 0004DB88 98 1F 00 F2 */ stb r0, 0xf2(r31) /* 80051F2C 0004DB8C 88 03 00 A3 */ lbz r0, 0xa3(r3) /* 80051F30 0004DB90 98 1F 00 F3 */ stb r0, 0xf3(r31) /* 80051F34 0004DB94 80 83 00 A4 */ lwz r4, 0xa4(r3) /* 80051F38 0004DB98 80 03 00 A8 */ lwz r0, 0xa8(r3) /* 80051F3C 0004DB9C 90 9F 00 F4 */ stw r4, 0xf4(r31) /* 80051F40 0004DBA0 90 1F 00 F8 */ stw r0, 0xf8(r31) /* 80051F44 0004DBA4 80 83 00 AC */ lwz r4, 0xac(r3) /* 80051F48 0004DBA8 80 03 00 B0 */ lwz r0, 0xb0(r3) /* 80051F4C 0004DBAC 90 9F 00 FC */ stw r4, 0xfc(r31) /* 80051F50 0004DBB0 90 1F 01 00 */ stw r0, 0x100(r31) /* 80051F54 0004DBB4 80 83 00 B4 */ lwz r4, 0xb4(r3) /* 80051F58 0004DBB8 80 03 00 B8 */ lwz r0, 0xb8(r3) /* 80051F5C 0004DBBC 90 9F 01 04 */ stw r4, 0x104(r31) /* 80051F60 0004DBC0 90 1F 01 08 */ stw r0, 0x108(r31) /* 80051F64 0004DBC4 80 83 00 BC */ lwz r4, 0xbc(r3) /* 80051F68 0004DBC8 80 03 00 C0 */ lwz r0, 0xc0(r3) /* 80051F6C 0004DBCC 90 9F 01 0C */ stw r4, 0x10c(r31) /* 80051F70 0004DBD0 90 1F 01 10 */ stw r0, 0x110(r31) /* 80051F74 0004DBD4 80 03 00 C4 */ lwz r0, 0xc4(r3) /* 80051F78 0004DBD8 90 1F 01 14 */ stw r0, 0x114(r31) /* 80051F7C 0004DBDC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80051F80 0004DBE0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80051F84 0004DBE4 7C 08 03 A6 */ mtlr r0 /* 80051F88 0004DBE8 38 21 00 10 */ addi r1, r1, 0x10 /* 80051F8C 0004DBEC 4E 80 00 20 */ blr .global func_80051F90 func_80051F90: /* 80051F90 0004DBF0 28 04 00 64 */ cmplwi r4, 0x64 /* 80051F94 0004DBF4 4C 80 00 20 */ bgelr /* 80051F98 0004DBF8 1C 04 00 28 */ mulli r0, r4, 0x28 /* 80051F9C 0004DBFC 7C 63 02 14 */ add r3, r3, r0 /* 80051FA0 0004DC00 B0 A3 02 48 */ sth r5, 0x248(r3) /* 80051FA4 0004DC04 B0 C3 02 4A */ sth r6, 0x24a(r3) /* 80051FA8 0004DC08 B0 E3 02 4C */ sth r7, 0x24c(r3) /* 80051FAC 0004DC0C B1 03 02 4E */ sth r8, 0x24e(r3) /* 80051FB0 0004DC10 4E 80 00 20 */ blr .global func_80051FB4 func_80051FB4: /* 80051FB4 0004DC14 28 04 00 64 */ cmplwi r4, 0x64 /* 80051FB8 0004DC18 41 80 00 0C */ blt lbl_80051FC4 /* 80051FBC 0004DC1C 38 60 00 00 */ li r3, 0 /* 80051FC0 0004DC20 4E 80 00 20 */ blr lbl_80051FC4: /* 80051FC4 0004DC24 1C 04 00 28 */ mulli r0, r4, 0x28 /* 80051FC8 0004DC28 7C 63 02 14 */ add r3, r3, r0 /* 80051FCC 0004DC2C 38 63 02 48 */ addi r3, r3, 0x248 /* 80051FD0 0004DC30 4E 80 00 20 */ blr .global func_80051FD4 func_80051FD4: /* 80051FD4 0004DC34 54 A0 34 B2 */ rlwinm r0, r5, 6, 0x12, 0x19 /* 80051FD8 0004DC38 7C 63 02 14 */ add r3, r3, r0 /* 80051FDC 0004DC3C C0 03 00 44 */ lfs f0, 0x44(r3) /* 80051FE0 0004DC40 D0 03 00 4C */ stfs f0, 0x4c(r3) /* 80051FE4 0004DC44 C0 03 00 48 */ lfs f0, 0x48(r3) /* 80051FE8 0004DC48 D0 03 00 50 */ stfs f0, 0x50(r3) /* 80051FEC 0004DC4C C0 03 00 3C */ lfs f0, 0x3c(r3) /* 80051FF0 0004DC50 D0 03 00 44 */ stfs f0, 0x44(r3) /* 80051FF4 0004DC54 C0 03 00 40 */ lfs f0, 0x40(r3) /* 80051FF8 0004DC58 D0 03 00 48 */ stfs f0, 0x48(r3) /* 80051FFC 0004DC5C C0 03 00 34 */ lfs f0, 0x34(r3) /* 80052000 0004DC60 D0 03 00 3C */ stfs f0, 0x3c(r3) /* 80052004 0004DC64 C0 03 00 38 */ lfs f0, 0x38(r3) /* 80052008 0004DC68 D0 03 00 40 */ stfs f0, 0x40(r3) /* 8005200C 0004DC6C C0 03 00 2C */ lfs f0, 0x2c(r3) /* 80052010 0004DC70 D0 03 00 34 */ stfs f0, 0x34(r3) /* 80052014 0004DC74 C0 03 00 30 */ lfs f0, 0x30(r3) /* 80052018 0004DC78 D0 03 00 38 */ stfs f0, 0x38(r3) /* 8005201C 0004DC7C C0 03 00 24 */ lfs f0, 0x24(r3) /* 80052020 0004DC80 D0 03 00 2C */ stfs f0, 0x2c(r3) /* 80052024 0004DC84 C0 03 00 28 */ lfs f0, 0x28(r3) /* 80052028 0004DC88 D0 03 00 30 */ stfs f0, 0x30(r3) /* 8005202C 0004DC8C C0 03 00 1C */ lfs f0, 0x1c(r3) /* 80052030 0004DC90 D0 03 00 24 */ stfs f0, 0x24(r3) /* 80052034 0004DC94 C0 03 00 20 */ lfs f0, 0x20(r3) /* 80052038 0004DC98 D0 03 00 28 */ stfs f0, 0x28(r3) /* 8005203C 0004DC9C C0 03 00 14 */ lfs f0, 0x14(r3) /* 80052040 0004DCA0 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80052044 0004DCA4 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80052048 0004DCA8 D0 03 00 20 */ stfs f0, 0x20(r3) /* 8005204C 0004DCAC C0 04 00 00 */ lfs f0, 0(r4) /* 80052050 0004DCB0 D0 03 00 14 */ stfs f0, 0x14(r3) /* 80052054 0004DCB4 C0 04 00 04 */ lfs f0, 4(r4) /* 80052058 0004DCB8 D0 03 00 18 */ stfs f0, 0x18(r3) /* 8005205C 0004DCBC 4E 80 00 20 */ blr .global func_80052060 func_80052060: /* 80052060 0004DCC0 3C 80 80 41 */ lis r4, lbl_8040AEA4@ha /* 80052064 0004DCC4 38 84 AE A4 */ addi r4, r4, lbl_8040AEA4@l /* 80052068 0004DCC8 90 83 00 00 */ stw r4, 0(r3) /* 8005206C 0004DCCC 4E 80 00 20 */ blr lbl_80052070: /* 80052070 0004DCD0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80052074 0004DCD4 7C 08 02 A6 */ mflr r0 /* 80052078 0004DCD8 2C 03 00 00 */ cmpwi r3, 0 /* 8005207C 0004DCDC 90 01 00 14 */ stw r0, 0x14(r1) /* 80052080 0004DCE0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80052084 0004DCE4 7C 7F 1B 78 */ mr r31, r3 /* 80052088 0004DCE8 41 82 00 10 */ beq lbl_80052098 /* 8005208C 0004DCEC 2C 04 00 00 */ cmpwi r4, 0 /* 80052090 0004DCF0 40 81 00 08 */ ble lbl_80052098 /* 80052094 0004DCF4 48 18 8A 25 */ bl func_801DAAB8 lbl_80052098: /* 80052098 0004DCF8 7F E3 FB 78 */ mr r3, r31 /* 8005209C 0004DCFC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800520A0 0004DD00 80 01 00 14 */ lwz r0, 0x14(r1) /* 800520A4 0004DD04 7C 08 03 A6 */ mtlr r0 /* 800520A8 0004DD08 38 21 00 10 */ addi r1, r1, 0x10 /* 800520AC 0004DD0C 4E 80 00 20 */ blr /* 800520B0 0004DD10 4E 80 00 20 */ blr /* 800520B4 0004DD14 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800520B8 0004DD18 7C 08 02 A6 */ mflr r0 /* 800520BC 0004DD1C 38 60 03 E8 */ li r3, 0x3e8 /* 800520C0 0004DD20 90 01 00 14 */ stw r0, 0x14(r1) /* 800520C4 0004DD24 93 E1 00 0C */ stw r31, 0xc(r1) /* 800520C8 0004DD28 93 C1 00 08 */ stw r30, 8(r1) /* 800520CC 0004DD2C 48 1F 75 11 */ bl func_802495DC /* 800520D0 0004DD30 88 0D 81 CC */ lbz r0, lbl_8063D48C-_SDA_BASE_(r13) /* 800520D4 0004DD34 38 60 00 00 */ li r3, 0 /* 800520D8 0004DD38 90 6D 98 8C */ stw r3, lbl_8063EB4C-_SDA_BASE_(r13) /* 800520DC 0004DD3C 2C 00 00 00 */ cmpwi r0, 0 /* 800520E0 0004DD40 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 800520E4 0004DD44 41 82 01 BC */ beq lbl_800522A0 /* 800520E8 0004DD48 3C 80 80 05 */ lis r4, lbl_80053770@ha /* 800520EC 0004DD4C 38 60 00 00 */ li r3, 0 /* 800520F0 0004DD50 38 84 37 70 */ addi r4, r4, lbl_80053770@l /* 800520F4 0004DD54 38 A0 FF FF */ li r5, -1 /* 800520F8 0004DD58 48 20 1E 75 */ bl func_80253F6C /* 800520FC 0004DD5C 90 6D 98 68 */ stw r3, lbl_8063EB28-_SDA_BASE_(r13) /* 80052100 0004DD60 3C 60 0B 3E */ lis r3, 0x0B3E1A00@ha /* 80052104 0004DD64 38 83 1A 00 */ addi r4, r3, 0x0B3E1A00@l /* 80052108 0004DD68 38 60 03 E8 */ li r3, 0x3e8 /* 8005210C 0004DD6C 48 00 3C 8D */ bl func_80055D98 /* 80052110 0004DD70 3F E0 80 47 */ lis r31, lbl_804753B0@ha /* 80052114 0004DD74 3C 80 04 4C */ lis r4, 0x044C1A00@ha /* 80052118 0004DD78 90 7F 53 B0 */ stw r3, lbl_804753B0@l(r31) /* 8005211C 0004DD7C 38 84 1A 00 */ addi r4, r4, 0x044C1A00@l /* 80052120 0004DD80 38 60 00 0E */ li r3, 0xe /* 80052124 0004DD84 48 00 3C 75 */ bl func_80055D98 /* 80052128 0004DD88 3B DF 53 B0 */ addi r30, r31, 0x53b0 /* 8005212C 0004DD8C 3C 80 19 A5 */ lis r4, 0x19A51A00@ha /* 80052130 0004DD90 90 7E 00 04 */ stw r3, 4(r30) /* 80052134 0004DD94 38 84 1A 00 */ addi r4, r4, 0x19A51A00@l /* 80052138 0004DD98 38 60 00 0E */ li r3, 0xe /* 8005213C 0004DD9C 48 00 3C 5D */ bl func_80055D98 /* 80052140 0004DDA0 90 7E 00 08 */ stw r3, 8(r30) /* 80052144 0004DDA4 3C 60 0B 3C */ lis r3, 0x0B3C1A00@ha /* 80052148 0004DDA8 38 83 1A 00 */ addi r4, r3, 0x0B3C1A00@l /* 8005214C 0004DDAC 38 60 03 E8 */ li r3, 0x3e8 /* 80052150 0004DDB0 48 00 3C 49 */ bl func_80055D98 /* 80052154 0004DDB4 90 7E 00 0C */ stw r3, 0xc(r30) /* 80052158 0004DDB8 3C 60 0B 3D */ lis r3, 0x0B3D1A00@ha /* 8005215C 0004DDBC 38 83 1A 00 */ addi r4, r3, 0x0B3D1A00@l /* 80052160 0004DDC0 38 60 03 E8 */ li r3, 0x3e8 /* 80052164 0004DDC4 48 00 3C 35 */ bl func_80055D98 /* 80052168 0004DDC8 90 7E 00 10 */ stw r3, 0x10(r30) /* 8005216C 0004DDCC 3C 60 27 61 */ lis r3, 0x27611A00@ha /* 80052170 0004DDD0 38 83 1A 00 */ addi r4, r3, 0x27611A00@l /* 80052174 0004DDD4 38 60 03 E8 */ li r3, 0x3e8 /* 80052178 0004DDD8 48 00 3C 21 */ bl func_80055D98 /* 8005217C 0004DDDC 90 7E 00 14 */ stw r3, 0x14(r30) /* 80052180 0004DDE0 3C A0 80 05 */ lis r5, lbl_80053C48@ha /* 80052184 0004DDE4 3C C0 80 05 */ lis r6, lbl_80053D24@ha /* 80052188 0004DDE8 80 7F 53 B0 */ lwz r3, 0x53b0(r31) /* 8005218C 0004DDEC 38 A5 3C 48 */ addi r5, r5, lbl_80053C48@l /* 80052190 0004DDF0 38 80 00 00 */ li r4, 0 /* 80052194 0004DDF4 38 C6 3D 24 */ addi r6, r6, lbl_80053D24@l /* 80052198 0004DDF8 38 E0 FF FF */ li r7, -1 /* 8005219C 0004DDFC 39 00 00 00 */ li r8, 0 /* 800521A0 0004DE00 39 20 00 01 */ li r9, 1 /* 800521A4 0004DE04 39 40 00 00 */ li r10, 0 /* 800521A8 0004DE08 48 20 1A 91 */ bl func_80253C38 /* 800521AC 0004DE0C 3F E0 80 41 */ lis r31, lbl_8040ACB0@ha /* 800521B0 0004DE10 3C A0 80 05 */ lis r5, lbl_80053FE8@ha /* 800521B4 0004DE14 B0 7F AC B0 */ sth r3, lbl_8040ACB0@l(r31) /* 800521B8 0004DE18 3C C0 80 05 */ lis r6, lbl_80054054@ha /* 800521BC 0004DE1C 80 7E 00 04 */ lwz r3, 4(r30) /* 800521C0 0004DE20 38 A5 3F E8 */ addi r5, r5, lbl_80053FE8@l /* 800521C4 0004DE24 38 C6 40 54 */ addi r6, r6, lbl_80054054@l /* 800521C8 0004DE28 38 80 00 00 */ li r4, 0 /* 800521CC 0004DE2C 38 E0 FF FF */ li r7, -1 /* 800521D0 0004DE30 39 00 00 00 */ li r8, 0 /* 800521D4 0004DE34 39 20 00 01 */ li r9, 1 /* 800521D8 0004DE38 39 40 00 00 */ li r10, 0 /* 800521DC 0004DE3C 48 20 1A 5D */ bl func_80253C38 /* 800521E0 0004DE40 3B FF AC B0 */ addi r31, r31, -21328 /* 800521E4 0004DE44 3C A0 80 05 */ lis r5, lbl_800540C4@ha /* 800521E8 0004DE48 B0 7F 00 02 */ sth r3, 2(r31) /* 800521EC 0004DE4C 3C C0 80 05 */ lis r6, lbl_80054154@ha /* 800521F0 0004DE50 80 7E 00 08 */ lwz r3, 8(r30) /* 800521F4 0004DE54 38 A5 40 C4 */ addi r5, r5, lbl_800540C4@l /* 800521F8 0004DE58 38 C6 41 54 */ addi r6, r6, lbl_80054154@l /* 800521FC 0004DE5C 38 80 00 00 */ li r4, 0 /* 80052200 0004DE60 38 E0 FF FF */ li r7, -1 /* 80052204 0004DE64 39 00 00 00 */ li r8, 0 /* 80052208 0004DE68 39 20 00 01 */ li r9, 1 /* 8005220C 0004DE6C 39 40 00 00 */ li r10, 0 /* 80052210 0004DE70 48 20 1A 29 */ bl func_80253C38 /* 80052214 0004DE74 B0 7F 00 04 */ sth r3, 4(r31) /* 80052218 0004DE78 3C 80 80 05 */ lis r4, lbl_80054200@ha /* 8005221C 0004DE7C 3C A0 80 05 */ lis r5, lbl_80054210@ha /* 80052220 0004DE80 3C C0 80 05 */ lis r6, lbl_800543C0@ha /* 80052224 0004DE84 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80052228 0004DE88 38 84 42 00 */ addi r4, r4, lbl_80054200@l /* 8005222C 0004DE8C 38 A5 42 10 */ addi r5, r5, lbl_80054210@l /* 80052230 0004DE90 38 C6 43 C0 */ addi r6, r6, lbl_800543C0@l /* 80052234 0004DE94 38 E0 FF FF */ li r7, -1 /* 80052238 0004DE98 39 00 00 00 */ li r8, 0 /* 8005223C 0004DE9C 39 20 00 01 */ li r9, 1 /* 80052240 0004DEA0 39 40 00 00 */ li r10, 0 /* 80052244 0004DEA4 48 20 19 F5 */ bl func_80253C38 /* 80052248 0004DEA8 B0 7F 00 06 */ sth r3, 6(r31) /* 8005224C 0004DEAC 3C A0 80 05 */ lis r5, lbl_80053DF4@ha /* 80052250 0004DEB0 80 7E 00 10 */ lwz r3, 0x10(r30) /* 80052254 0004DEB4 38 A5 3D F4 */ addi r5, r5, lbl_80053DF4@l /* 80052258 0004DEB8 38 80 00 00 */ li r4, 0 /* 8005225C 0004DEBC 38 C0 00 00 */ li r6, 0 /* 80052260 0004DEC0 38 E0 FF C0 */ li r7, -64 /* 80052264 0004DEC4 39 00 00 00 */ li r8, 0 /* 80052268 0004DEC8 39 20 00 01 */ li r9, 1 /* 8005226C 0004DECC 39 40 00 00 */ li r10, 0 /* 80052270 0004DED0 48 20 19 C9 */ bl func_80253C38 /* 80052274 0004DED4 B0 7F 00 08 */ sth r3, 8(r31) /* 80052278 0004DED8 38 80 00 00 */ li r4, 0 /* 8005227C 0004DEDC 80 7E 00 14 */ lwz r3, 0x14(r30) /* 80052280 0004DEE0 38 A0 00 00 */ li r5, 0 /* 80052284 0004DEE4 38 C0 00 00 */ li r6, 0 /* 80052288 0004DEE8 38 E0 FF FF */ li r7, -1 /* 8005228C 0004DEEC 39 00 00 00 */ li r8, 0 /* 80052290 0004DEF0 39 20 00 01 */ li r9, 1 /* 80052294 0004DEF4 39 40 00 00 */ li r10, 0 /* 80052298 0004DEF8 48 20 19 A1 */ bl func_80253C38 /* 8005229C 0004DEFC B0 7F 00 0A */ sth r3, 0xa(r31) lbl_800522A0: /* 800522A0 0004DF00 48 00 52 B9 */ bl func_80057558 /* 800522A4 0004DF04 48 00 54 0D */ bl func_800576B0 /* 800522A8 0004DF08 88 0D 81 CE */ lbz r0, lbl_8063D48E-_SDA_BASE_(r13) /* 800522AC 0004DF0C 2C 00 00 00 */ cmpwi r0, 0 /* 800522B0 0004DF10 41 82 00 34 */ beq lbl_800522E4 /* 800522B4 0004DF14 38 60 00 0D */ li r3, 0xd /* 800522B8 0004DF18 38 00 00 00 */ li r0, 0 /* 800522BC 0004DF1C 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 800522C0 0004DF20 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800522C4 0004DF24 98 0D 81 CE */ stb r0, lbl_8063D48E-_SDA_BASE_(r13) /* 800522C8 0004DF28 48 00 2F B9 */ bl func_80055280 /* 800522CC 0004DF2C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800522D0 0004DF30 38 80 00 00 */ li r4, 0 /* 800522D4 0004DF34 48 00 27 61 */ bl func_80054A34 /* 800522D8 0004DF38 38 00 00 01 */ li r0, 1 /* 800522DC 0004DF3C 98 0D 98 88 */ stb r0, lbl_8063EB48-_SDA_BASE_(r13) /* 800522E0 0004DF40 48 00 00 34 */ b lbl_80052314 lbl_800522E4: /* 800522E4 0004DF44 38 00 00 0E */ li r0, 0xe /* 800522E8 0004DF48 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800522EC 0004DF4C 48 00 3F D1 */ bl func_800562BC /* 800522F0 0004DF50 88 0D 81 CC */ lbz r0, lbl_8063D48C-_SDA_BASE_(r13) /* 800522F4 0004DF54 2C 00 00 00 */ cmpwi r0, 0 /* 800522F8 0004DF58 40 82 00 10 */ bne lbl_80052308 /* 800522FC 0004DF5C 38 00 00 34 */ li r0, 0x34 /* 80052300 0004DF60 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052304 0004DF64 48 00 00 10 */ b lbl_80052314 lbl_80052308: /* 80052308 0004DF68 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005230C 0004DF6C 38 80 00 00 */ li r4, 0 /* 80052310 0004DF70 48 00 27 25 */ bl func_80054A34 lbl_80052314: /* 80052314 0004DF74 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052318 0004DF78 48 00 21 81 */ bl func_80054498 /* 8005231C 0004DF7C 48 11 0C B9 */ bl glplatAbortFrame /* 80052320 0004DF80 38 60 00 01 */ li r3, 1 /* 80052324 0004DF84 4B FB 52 41 */ bl func_80007564 /* 80052328 0004DF88 38 60 02 61 */ li r3, 0x261 /* 8005232C 0004DF8C 38 80 00 01 */ li r4, 1 /* 80052330 0004DF90 38 A0 00 01 */ li r5, 1 /* 80052334 0004DF94 48 11 06 0D */ bl func_80162940 /* 80052338 0004DF98 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005233C 0004DF9C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80052340 0004DFA0 83 C1 00 08 */ lwz r30, 8(r1) /* 80052344 0004DFA4 7C 08 03 A6 */ mtlr r0 /* 80052348 0004DFA8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005234C 0004DFAC 4E 80 00 20 */ blr /* 80052350 0004DFB0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80052354 0004DFB4 7C 08 02 A6 */ mflr r0 /* 80052358 0004DFB8 90 01 00 54 */ stw r0, 0x54(r1) /* 8005235C 0004DFBC 3C 00 43 30 */ lis r0, 0x4330 /* 80052360 0004DFC0 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80052364 0004DFC4 93 C1 00 48 */ stw r30, 0x48(r1) /* 80052368 0004DFC8 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8005236C 0004DFCC 90 01 00 30 */ stw r0, 0x30(r1) /* 80052370 0004DFD0 88 64 00 82 */ lbz r3, 0x82(r4) /* 80052374 0004DFD4 90 01 00 38 */ stw r0, 0x38(r1) /* 80052378 0004DFD8 2C 03 00 00 */ cmpwi r3, 0 /* 8005237C 0004DFDC 40 82 12 BC */ bne lbl_80053638 /* 80052380 0004DFE0 38 60 00 00 */ li r3, 0 /* 80052384 0004DFE4 40 82 00 10 */ bne lbl_80052394 /* 80052388 0004DFE8 88 04 00 83 */ lbz r0, 0x83(r4) /* 8005238C 0004DFEC 2C 00 00 00 */ cmpwi r0, 0 /* 80052390 0004DFF0 41 82 00 08 */ beq lbl_80052398 lbl_80052394: /* 80052394 0004DFF4 38 60 00 01 */ li r3, 1 lbl_80052398: /* 80052398 0004DFF8 2C 03 00 00 */ cmpwi r3, 0 /* 8005239C 0004DFFC 41 82 00 08 */ beq lbl_800523A4 /* 800523A0 0004E000 48 00 12 98 */ b lbl_80053638 lbl_800523A4: /* 800523A4 0004E004 3C 60 80 00 */ lis r3, 0x8000 /* 800523A8 0004E008 38 80 00 00 */ li r4, 0 /* 800523AC 0004E00C 38 A0 00 00 */ li r5, 0 /* 800523B0 0004E010 38 C0 00 01 */ li r6, 1 /* 800523B4 0004E014 48 00 76 B9 */ bl func_80059A6C /* 800523B8 0004E018 80 8D 98 6C */ lwz r4, lbl_8063EB2C-_SDA_BASE_(r13) /* 800523BC 0004E01C 7C 7E 1B 78 */ mr r30, r3 /* 800523C0 0004E020 38 04 FF F2 */ addi r0, r4, -14 /* 800523C4 0004E024 28 00 00 27 */ cmplwi r0, 0x27 /* 800523C8 0004E028 41 81 12 70 */ bgt lbl_80053638 /* 800523CC 0004E02C 3C 80 80 41 */ lis r4, lbl_8040ACD0@ha /* 800523D0 0004E030 54 00 10 3A */ slwi r0, r0, 2 /* 800523D4 0004E034 38 84 AC D0 */ addi r4, r4, lbl_8040ACD0@l /* 800523D8 0004E038 7C 84 00 2E */ lwzx r4, r4, r0 /* 800523DC 0004E03C 7C 89 03 A6 */ mtctr r4 /* 800523E0 0004E040 4E 80 04 20 */ bctr /* 800523E4 0004E044 38 60 00 01 */ li r3, 1 /* 800523E8 0004E048 4B FB 51 7D */ bl func_80007564 /* 800523EC 0004E04C 38 60 00 03 */ li r3, 3 /* 800523F0 0004E050 38 80 00 00 */ li r4, 0 /* 800523F4 0004E054 48 00 3F F9 */ bl func_800563EC /* 800523F8 0004E058 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800523FC 0004E05C 48 00 23 F9 */ bl func_800547F4 /* 80052400 0004E060 2C 03 00 00 */ cmpwi r3, 0 /* 80052404 0004E064 41 82 12 34 */ beq lbl_80053638 /* 80052408 0004E068 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005240C 0004E06C 48 00 23 E9 */ bl func_800547F4 /* 80052410 0004E070 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052414 0004E074 38 80 00 00 */ li r4, 0 /* 80052418 0004E078 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 8005241C 0004E07C 38 A0 00 00 */ li r5, 0 /* 80052420 0004E080 38 C0 00 00 */ li r6, 0 /* 80052424 0004E084 38 E0 00 00 */ li r7, 0 /* 80052428 0004E088 39 00 00 00 */ li r8, 0 /* 8005242C 0004E08C 48 1A 29 C9 */ bl func_801F4DF4 /* 80052430 0004E090 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052434 0004E094 48 00 2E A5 */ bl func_800552D8 /* 80052438 0004E098 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005243C 0004E09C 38 80 00 01 */ li r4, 1 /* 80052440 0004E0A0 48 00 25 55 */ bl func_80054994 /* 80052444 0004E0A4 38 00 00 0F */ li r0, 0xf /* 80052448 0004E0A8 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005244C 0004E0AC 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052450 0004E0B0 C8 42 85 18 */ lfd f2, lbl_80640B18-_SDA2_BASE_(r2) /* 80052454 0004E0B4 88 03 00 59 */ lbz r0, 0x59(r3) /* 80052458 0004E0B8 C8 03 00 A0 */ lfd f0, 0xa0(r3) /* 8005245C 0004E0BC 90 01 00 34 */ stw r0, 0x34(r1) /* 80052460 0004E0C0 C8 21 00 30 */ lfd f1, 0x30(r1) /* 80052464 0004E0C4 FC 21 10 28 */ fsub f1, f1, f2 /* 80052468 0004E0C8 FC 00 08 24 */ fdiv f0, f0, f1 /* 8005246C 0004E0CC D8 0D 98 78 */ stfd f0, lbl_8063EB38-_SDA_BASE_(r13) /* 80052470 0004E0D0 48 00 11 C8 */ b lbl_80053638 /* 80052474 0004E0D4 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80052478 0004E0D8 C8 82 85 18 */ lfd f4, lbl_80640B18-_SDA2_BASE_(r2) /* 8005247C 0004E0DC 88 03 00 59 */ lbz r0, 0x59(r3) /* 80052480 0004E0E0 C8 43 00 A0 */ lfd f2, 0xa0(r3) /* 80052484 0004E0E4 90 01 00 3C */ stw r0, 0x3c(r1) /* 80052488 0004E0E8 C8 2D 98 78 */ lfd f1, lbl_8063EB38-_SDA_BASE_(r13) /* 8005248C 0004E0EC C8 61 00 38 */ lfd f3, 0x38(r1) /* 80052490 0004E0F0 C8 02 84 F0 */ lfd f0, lbl_80640AF0-_SDA2_BASE_(r2) /* 80052494 0004E0F4 FC 63 20 28 */ fsub f3, f3, f4 /* 80052498 0004E0F8 FC 42 18 24 */ fdiv f2, f2, f3 /* 8005249C 0004E0FC FC 22 08 28 */ fsub f1, f2, f1 /* 800524A0 0004E100 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800524A4 0004E104 4C 41 13 82 */ cror 2, 1, 2 /* 800524A8 0004E108 40 82 11 90 */ bne lbl_80053638 /* 800524AC 0004E10C 88 0D 81 CC */ lbz r0, lbl_8063D48C-_SDA_BASE_(r13) /* 800524B0 0004E110 2C 00 00 00 */ cmpwi r0, 0 /* 800524B4 0004E114 41 82 00 34 */ beq lbl_800524E8 /* 800524B8 0004E118 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800524BC 0004E11C 48 00 29 9D */ bl func_80054E58 /* 800524C0 0004E120 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800524C4 0004E124 48 00 2D B5 */ bl func_80055278 /* 800524C8 0004E128 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 800524CC 0004E12C 38 80 00 00 */ li r4, 0 /* 800524D0 0004E130 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 800524D4 0004E134 38 A0 00 00 */ li r5, 0 /* 800524D8 0004E138 38 C0 00 00 */ li r6, 0 /* 800524DC 0004E13C 38 E0 00 00 */ li r7, 0 /* 800524E0 0004E140 39 00 00 00 */ li r8, 0 /* 800524E4 0004E144 48 1A 29 11 */ bl func_801F4DF4 lbl_800524E8: /* 800524E8 0004E148 38 00 00 10 */ li r0, 0x10 /* 800524EC 0004E14C 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800524F0 0004E150 48 00 11 48 */ b lbl_80053638 /* 800524F4 0004E154 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800524F8 0004E158 48 00 22 FD */ bl func_800547F4 /* 800524FC 0004E15C 48 1A 3A 51 */ bl func_801F5F4C /* 80052500 0004E160 2C 03 00 00 */ cmpwi r3, 0 /* 80052504 0004E164 41 82 11 34 */ beq lbl_80053638 /* 80052508 0004E168 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005250C 0004E16C 48 00 22 E9 */ bl func_800547F4 /* 80052510 0004E170 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052514 0004E174 38 80 00 01 */ li r4, 1 /* 80052518 0004E178 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 8005251C 0004E17C 38 A0 00 01 */ li r5, 1 /* 80052520 0004E180 38 C0 00 00 */ li r6, 0 /* 80052524 0004E184 38 E0 00 00 */ li r7, 0 /* 80052528 0004E188 39 00 00 00 */ li r8, 0 /* 8005252C 0004E18C 48 1A 28 C9 */ bl func_801F4DF4 /* 80052530 0004E190 38 00 00 11 */ li r0, 0x11 /* 80052534 0004E194 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80052538 0004E198 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 8005253C 0004E19C C8 42 85 18 */ lfd f2, lbl_80640B18-_SDA2_BASE_(r2) /* 80052540 0004E1A0 88 03 00 59 */ lbz r0, 0x59(r3) /* 80052544 0004E1A4 C8 03 00 A0 */ lfd f0, 0xa0(r3) /* 80052548 0004E1A8 90 01 00 34 */ stw r0, 0x34(r1) /* 8005254C 0004E1AC C8 21 00 30 */ lfd f1, 0x30(r1) /* 80052550 0004E1B0 FC 21 10 28 */ fsub f1, f1, f2 /* 80052554 0004E1B4 FC 00 08 24 */ fdiv f0, f0, f1 /* 80052558 0004E1B8 D8 0D 98 78 */ stfd f0, lbl_8063EB38-_SDA_BASE_(r13) /* 8005255C 0004E1BC 48 00 10 DC */ b lbl_80053638 /* 80052560 0004E1C0 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052564 0004E1C4 48 00 2D 15 */ bl func_80055278 /* 80052568 0004E1C8 48 1A 39 E5 */ bl func_801F5F4C /* 8005256C 0004E1CC 2C 03 00 00 */ cmpwi r3, 0 /* 80052570 0004E1D0 41 82 10 C8 */ beq lbl_80053638 /* 80052574 0004E1D4 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052578 0004E1D8 48 00 2D 01 */ bl func_80055278 /* 8005257C 0004E1DC C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052580 0004E1E0 38 80 00 01 */ li r4, 1 /* 80052584 0004E1E4 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80052588 0004E1E8 38 A0 00 01 */ li r5, 1 /* 8005258C 0004E1EC 38 C0 00 00 */ li r6, 0 /* 80052590 0004E1F0 38 E0 00 00 */ li r7, 0 /* 80052594 0004E1F4 39 00 00 00 */ li r8, 0 /* 80052598 0004E1F8 48 1A 28 5D */ bl func_801F4DF4 /* 8005259C 0004E1FC 38 00 00 12 */ li r0, 0x12 /* 800525A0 0004E200 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800525A4 0004E204 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800525A8 0004E208 48 00 22 55 */ bl func_800547FC /* 800525AC 0004E20C 48 00 10 8C */ b lbl_80053638 /* 800525B0 0004E210 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800525B4 0004E214 48 00 23 D9 */ bl func_8005498C /* 800525B8 0004E218 48 1A 39 95 */ bl func_801F5F4C /* 800525BC 0004E21C 2C 03 00 00 */ cmpwi r3, 0 /* 800525C0 0004E220 41 82 10 78 */ beq lbl_80053638 /* 800525C4 0004E224 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800525C8 0004E228 48 00 23 C5 */ bl func_8005498C /* 800525CC 0004E22C C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 800525D0 0004E230 38 80 00 01 */ li r4, 1 /* 800525D4 0004E234 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 800525D8 0004E238 38 A0 00 01 */ li r5, 1 /* 800525DC 0004E23C 38 C0 00 00 */ li r6, 0 /* 800525E0 0004E240 38 E0 00 00 */ li r7, 0 /* 800525E4 0004E244 39 00 00 00 */ li r8, 0 /* 800525E8 0004E248 48 1A 28 0D */ bl func_801F4DF4 /* 800525EC 0004E24C 38 00 00 13 */ li r0, 0x13 /* 800525F0 0004E250 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800525F4 0004E254 48 00 7E 4D */ bl func_8005A440 /* 800525F8 0004E258 48 00 10 40 */ b lbl_80053638 /* 800525FC 0004E25C 38 60 00 01 */ li r3, 1 /* 80052600 0004E260 4B FB 4F 65 */ bl func_80007564 /* 80052604 0004E264 2C 1E 00 00 */ cmpwi r30, 0 /* 80052608 0004E268 41 82 00 98 */ beq lbl_800526A0 /* 8005260C 0004E26C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052610 0004E270 48 00 21 E5 */ bl func_800547F4 /* 80052614 0004E274 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052618 0004E278 38 80 00 02 */ li r4, 2 /* 8005261C 0004E27C C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80052620 0004E280 38 A0 00 00 */ li r5, 0 /* 80052624 0004E284 38 C0 00 00 */ li r6, 0 /* 80052628 0004E288 38 E0 00 00 */ li r7, 0 /* 8005262C 0004E28C 39 00 00 00 */ li r8, 0 /* 80052630 0004E290 48 1A 27 C5 */ bl func_801F4DF4 /* 80052634 0004E294 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052638 0004E298 48 00 23 55 */ bl func_8005498C /* 8005263C 0004E29C C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052640 0004E2A0 38 80 00 02 */ li r4, 2 /* 80052644 0004E2A4 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80052648 0004E2A8 38 A0 00 00 */ li r5, 0 /* 8005264C 0004E2AC 38 C0 00 00 */ li r6, 0 /* 80052650 0004E2B0 38 E0 00 00 */ li r7, 0 /* 80052654 0004E2B4 39 00 00 00 */ li r8, 0 /* 80052658 0004E2B8 48 1A 27 9D */ bl func_801F4DF4 /* 8005265C 0004E2BC 38 00 00 14 */ li r0, 0x14 /* 80052660 0004E2C0 38 60 00 01 */ li r3, 1 /* 80052664 0004E2C4 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052668 0004E2C8 48 00 7E 65 */ bl func_8005A4CC /* 8005266C 0004E2CC 38 60 00 00 */ li r3, 0 /* 80052670 0004E2D0 48 00 3D E9 */ bl func_80056458 /* 80052674 0004E2D4 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052678 0004E2D8 38 80 00 08 */ li r4, 8 /* 8005267C 0004E2DC 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052680 0004E2E0 38 A0 00 01 */ li r5, 1 /* 80052684 0004E2E4 A8 7E 00 0C */ lha r3, 0xc(r30) /* 80052688 0004E2E8 48 20 17 69 */ bl func_80253DF0 /* 8005268C 0004E2EC A8 7E 00 0C */ lha r3, 0xc(r30) /* 80052690 0004E2F0 38 80 00 00 */ li r4, 0 /* 80052694 0004E2F4 38 A0 00 00 */ li r5, 0 /* 80052698 0004E2F8 48 20 17 19 */ bl func_80253DB0 /* 8005269C 0004E2FC 48 00 0F 9C */ b lbl_80053638 lbl_800526A0: /* 800526A0 0004E300 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 800526A4 0004E304 C8 82 85 18 */ lfd f4, lbl_80640B18-_SDA2_BASE_(r2) /* 800526A8 0004E308 88 03 00 59 */ lbz r0, 0x59(r3) /* 800526AC 0004E30C C8 43 00 A0 */ lfd f2, 0xa0(r3) /* 800526B0 0004E310 90 01 00 3C */ stw r0, 0x3c(r1) /* 800526B4 0004E314 C8 2D 98 78 */ lfd f1, lbl_8063EB38-_SDA_BASE_(r13) /* 800526B8 0004E318 C8 61 00 38 */ lfd f3, 0x38(r1) /* 800526BC 0004E31C C8 02 84 F8 */ lfd f0, lbl_80640AF8-_SDA2_BASE_(r2) /* 800526C0 0004E320 FC 63 20 28 */ fsub f3, f3, f4 /* 800526C4 0004E324 FC 42 18 24 */ fdiv f2, f2, f3 /* 800526C8 0004E328 FC 22 08 28 */ fsub f1, f2, f1 /* 800526CC 0004E32C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800526D0 0004E330 4C 41 13 82 */ cror 2, 1, 2 /* 800526D4 0004E334 40 82 0F 64 */ bne lbl_80053638 /* 800526D8 0004E338 48 00 4E 85 */ bl func_8005755C /* 800526DC 0004E33C 2C 03 00 00 */ cmpwi r3, 0 /* 800526E0 0004E340 40 82 0F 58 */ bne lbl_80053638 /* 800526E4 0004E344 38 00 00 15 */ li r0, 0x15 /* 800526E8 0004E348 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800526EC 0004E34C 48 00 3B 89 */ bl func_80056274 /* 800526F0 0004E350 38 60 00 01 */ li r3, 1 /* 800526F4 0004E354 48 00 3D 65 */ bl func_80056458 /* 800526F8 0004E358 48 00 0F 40 */ b lbl_80053638 /* 800526FC 0004E35C 48 00 3B FD */ bl func_800562F8 /* 80052700 0004E360 2C 03 00 00 */ cmpwi r3, 0 /* 80052704 0004E364 41 82 0F 34 */ beq lbl_80053638 /* 80052708 0004E368 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005270C 0004E36C 38 80 00 00 */ li r4, 0 /* 80052710 0004E370 48 00 22 85 */ bl func_80054994 /* 80052714 0004E374 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052718 0004E378 48 00 21 FD */ bl func_80054914 /* 8005271C 0004E37C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052720 0004E380 48 00 29 45 */ bl func_80055064 /* 80052724 0004E384 88 0D 98 89 */ lbz r0, lbl_8063EB49-_SDA_BASE_(r13) /* 80052728 0004E388 2C 00 00 00 */ cmpwi r0, 0 /* 8005272C 0004E38C 41 82 00 0C */ beq lbl_80052738 /* 80052730 0004E390 38 60 01 F4 */ li r3, 0x1f4 /* 80052734 0004E394 48 20 71 11 */ bl func_80259844 lbl_80052738: /* 80052738 0004E398 38 60 01 F4 */ li r3, 0x1f4 /* 8005273C 0004E39C 38 80 00 01 */ li r4, 1 /* 80052740 0004E3A0 38 A0 00 00 */ li r5, 0 /* 80052744 0004E3A4 38 C0 00 01 */ li r6, 1 /* 80052748 0004E3A8 38 E0 00 00 */ li r7, 0 /* 8005274C 0004E3AC 48 20 70 4D */ bl func_80259798 /* 80052750 0004E3B0 38 60 01 F4 */ li r3, 0x1f4 /* 80052754 0004E3B4 48 20 71 4D */ bl func_802598A0 /* 80052758 0004E3B8 38 00 00 01 */ li r0, 1 /* 8005275C 0004E3BC 98 0D 98 89 */ stb r0, lbl_8063EB49-_SDA_BASE_(r13) /* 80052760 0004E3C0 48 00 3B 5D */ bl func_800562BC /* 80052764 0004E3C4 38 00 00 16 */ li r0, 0x16 /* 80052768 0004E3C8 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 8005276C 0004E3CC 48 00 0E CC */ b lbl_80053638 /* 80052770 0004E3D0 48 00 3B 89 */ bl func_800562F8 /* 80052774 0004E3D4 2C 03 00 00 */ cmpwi r3, 0 /* 80052778 0004E3D8 41 82 0E C0 */ beq lbl_80053638 /* 8005277C 0004E3DC 38 00 00 19 */ li r0, 0x19 /* 80052780 0004E3E0 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052784 0004E3E4 48 00 0E B4 */ b lbl_80053638 /* 80052788 0004E3E8 2C 03 00 00 */ cmpwi r3, 0 /* 8005278C 0004E3EC 41 82 00 14 */ beq lbl_800527A0 /* 80052790 0004E3F0 48 00 3A E5 */ bl func_80056274 /* 80052794 0004E3F4 38 00 00 1B */ li r0, 0x1b /* 80052798 0004E3F8 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 8005279C 0004E3FC 48 00 0E 9C */ b lbl_80053638 lbl_800527A0: /* 800527A0 0004E400 38 60 01 F4 */ li r3, 0x1f4 /* 800527A4 0004E404 48 20 71 95 */ bl func_80259938 /* 800527A8 0004E408 2C 03 00 01 */ cmpwi r3, 1 /* 800527AC 0004E40C 41 82 0E 8C */ beq lbl_80053638 /* 800527B0 0004E410 38 00 00 1B */ li r0, 0x1b /* 800527B4 0004E414 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800527B8 0004E418 48 00 3A BD */ bl func_80056274 /* 800527BC 0004E41C 48 00 0E 7C */ b lbl_80053638 /* 800527C0 0004E420 38 00 00 17 */ li r0, 0x17 /* 800527C4 0004E424 38 60 01 F4 */ li r3, 0x1f4 /* 800527C8 0004E428 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800527CC 0004E42C 48 20 70 79 */ bl func_80259844 /* 800527D0 0004E430 38 00 00 00 */ li r0, 0 /* 800527D4 0004E434 98 0D 98 89 */ stb r0, lbl_8063EB49-_SDA_BASE_(r13) /* 800527D8 0004E438 48 00 0E 60 */ b lbl_80053638 /* 800527DC 0004E43C 48 00 3B 1D */ bl func_800562F8 /* 800527E0 0004E440 2C 03 00 00 */ cmpwi r3, 0 /* 800527E4 0004E444 41 82 0E 54 */ beq lbl_80053638 /* 800527E8 0004E448 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800527EC 0004E44C 38 80 00 00 */ li r4, 0 /* 800527F0 0004E450 48 00 22 45 */ bl func_80054A34 /* 800527F4 0004E454 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800527F8 0004E458 48 00 26 61 */ bl func_80054E58 /* 800527FC 0004E45C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052800 0004E460 48 00 2A 79 */ bl func_80055278 /* 80052804 0004E464 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052808 0004E468 38 80 00 01 */ li r4, 1 /* 8005280C 0004E46C C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80052810 0004E470 38 A0 00 01 */ li r5, 1 /* 80052814 0004E474 38 C0 00 00 */ li r6, 0 /* 80052818 0004E478 38 E0 00 00 */ li r7, 0 /* 8005281C 0004E47C 39 00 00 00 */ li r8, 0 /* 80052820 0004E480 48 1A 25 D5 */ bl func_801F4DF4 /* 80052824 0004E484 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052828 0004E488 48 00 1F D5 */ bl func_800547FC /* 8005282C 0004E48C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052830 0004E490 48 00 21 5D */ bl func_8005498C /* 80052834 0004E494 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80052838 0004E498 38 80 00 01 */ li r4, 1 /* 8005283C 0004E49C C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80052840 0004E4A0 38 A0 00 01 */ li r5, 1 /* 80052844 0004E4A4 38 C0 00 00 */ li r6, 0 /* 80052848 0004E4A8 38 E0 00 00 */ li r7, 0 /* 8005284C 0004E4AC 39 00 00 00 */ li r8, 0 /* 80052850 0004E4B0 48 1A 25 A5 */ bl func_801F4DF4 /* 80052854 0004E4B4 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80052858 0004E4B8 38 80 00 01 */ li r4, 1 /* 8005285C 0004E4BC 48 00 21 39 */ bl func_80054994 /* 80052860 0004E4C0 38 60 00 03 */ li r3, 3 /* 80052864 0004E4C4 38 80 00 00 */ li r4, 0 /* 80052868 0004E4C8 48 00 3B 85 */ bl func_800563EC /* 8005286C 0004E4CC 48 00 3A 51 */ bl func_800562BC /* 80052870 0004E4D0 38 00 00 18 */ li r0, 0x18 /* 80052874 0004E4D4 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052878 0004E4D8 48 00 0D C0 */ b lbl_80053638 /* 8005287C 0004E4DC 48 00 3A 7D */ bl func_800562F8 /* 80052880 0004E4E0 2C 03 00 00 */ cmpwi r3, 0 /* 80052884 0004E4E4 41 82 0D B4 */ beq lbl_80053638 /* 80052888 0004E4E8 38 00 00 13 */ li r0, 0x13 /* 8005288C 0004E4EC 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80052890 0004E4F0 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052894 0004E4F4 C8 42 85 18 */ lfd f2, lbl_80640B18-_SDA2_BASE_(r2) /* 80052898 0004E4F8 88 03 00 59 */ lbz r0, 0x59(r3) /* 8005289C 0004E4FC C8 03 00 A0 */ lfd f0, 0xa0(r3) /* 800528A0 0004E500 90 01 00 34 */ stw r0, 0x34(r1) /* 800528A4 0004E504 C8 21 00 30 */ lfd f1, 0x30(r1) /* 800528A8 0004E508 FC 21 10 28 */ fsub f1, f1, f2 /* 800528AC 0004E50C FC 00 08 24 */ fdiv f0, f0, f1 /* 800528B0 0004E510 D8 0D 98 78 */ stfd f0, lbl_8063EB38-_SDA_BASE_(r13) /* 800528B4 0004E514 48 00 0D 84 */ b lbl_80053638 /* 800528B8 0004E518 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800528BC 0004E51C 48 00 1F 39 */ bl func_800547F4 /* 800528C0 0004E520 48 1A 36 8D */ bl func_801F5F4C /* 800528C4 0004E524 2C 03 00 00 */ cmpwi r3, 0 /* 800528C8 0004E528 41 82 0D 70 */ beq lbl_80053638 /* 800528CC 0004E52C 38 00 00 1D */ li r0, 0x1d /* 800528D0 0004E530 38 60 00 00 */ li r3, 0 /* 800528D4 0004E534 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800528D8 0004E538 48 00 35 DD */ bl func_80055EB4 /* 800528DC 0004E53C 38 60 00 04 */ li r3, 4 /* 800528E0 0004E540 38 80 00 00 */ li r4, 0 /* 800528E4 0004E544 48 00 3B 09 */ bl func_800563EC /* 800528E8 0004E548 38 60 00 01 */ li r3, 1 /* 800528EC 0004E54C 48 10 AC 15 */ bl func_8015D500 /* 800528F0 0004E550 48 0E C7 55 */ bl func_8013F044 /* 800528F4 0004E554 38 60 00 00 */ li r3, 0 /* 800528F8 0004E558 4B FB 4C 6D */ bl func_80007564 /* 800528FC 0004E55C 48 00 0D 3C */ b lbl_80053638 /* 80052900 0004E560 80 8D 98 70 */ lwz r4, lbl_8063EB30-_SDA_BASE_(r13) /* 80052904 0004E564 2C 04 00 00 */ cmpwi r4, 0 /* 80052908 0004E568 40 82 00 10 */ bne lbl_80052918 /* 8005290C 0004E56C 38 00 00 1F */ li r0, 0x1f /* 80052910 0004E570 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052914 0004E574 48 00 0D 24 */ b lbl_80053638 lbl_80052918: /* 80052918 0004E578 38 04 FF FF */ addi r0, r4, -1 /* 8005291C 0004E57C 2C 03 00 00 */ cmpwi r3, 0 /* 80052920 0004E580 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052924 0004E584 41 82 0D 14 */ beq lbl_80053638 /* 80052928 0004E588 38 00 00 1F */ li r0, 0x1f /* 8005292C 0004E58C 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052930 0004E590 48 00 0D 08 */ b lbl_80053638 /* 80052934 0004E594 80 0D 98 84 */ lwz r0, lbl_8063EB44-_SDA_BASE_(r13) /* 80052938 0004E598 2C 00 00 00 */ cmpwi r0, 0 /* 8005293C 0004E59C 40 82 00 0C */ bne lbl_80052948 /* 80052940 0004E5A0 48 10 CD 51 */ bl func_8015F690 /* 80052944 0004E5A4 90 6D 98 84 */ stw r3, lbl_8063EB44-_SDA_BASE_(r13) lbl_80052948: /* 80052948 0004E5A8 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 8005294C 0004E5AC 38 80 00 08 */ li r4, 8 /* 80052950 0004E5B0 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052954 0004E5B4 38 A0 00 01 */ li r5, 1 /* 80052958 0004E5B8 A8 7E 00 08 */ lha r3, 8(r30) /* 8005295C 0004E5BC 48 20 14 95 */ bl func_80253DF0 /* 80052960 0004E5C0 80 6D 98 84 */ lwz r3, lbl_8063EB44-_SDA_BASE_(r13) /* 80052964 0004E5C4 80 03 00 4C */ lwz r0, 0x4c(r3) /* 80052968 0004E5C8 2C 00 00 01 */ cmpwi r0, 1 /* 8005296C 0004E5CC 41 82 00 28 */ beq lbl_80052994 /* 80052970 0004E5D0 40 80 00 38 */ bge lbl_800529A8 /* 80052974 0004E5D4 2C 00 00 00 */ cmpwi r0, 0 /* 80052978 0004E5D8 40 80 00 08 */ bge lbl_80052980 /* 8005297C 0004E5DC 48 00 00 2C */ b lbl_800529A8 lbl_80052980: /* 80052980 0004E5E0 A8 7E 00 08 */ lha r3, 8(r30) /* 80052984 0004E5E4 38 80 00 00 */ li r4, 0 /* 80052988 0004E5E8 38 A0 00 00 */ li r5, 0 /* 8005298C 0004E5EC 48 20 14 25 */ bl func_80253DB0 /* 80052990 0004E5F0 48 00 00 30 */ b lbl_800529C0 lbl_80052994: /* 80052994 0004E5F4 A8 7E 00 08 */ lha r3, 8(r30) /* 80052998 0004E5F8 38 80 00 02 */ li r4, 2 /* 8005299C 0004E5FC 38 A0 00 00 */ li r5, 0 /* 800529A0 0004E600 48 20 14 11 */ bl func_80253DB0 /* 800529A4 0004E604 48 00 00 1C */ b lbl_800529C0 lbl_800529A8: /* 800529A8 0004E608 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 800529AC 0004E60C 38 80 00 04 */ li r4, 4 /* 800529B0 0004E610 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 800529B4 0004E614 38 A0 00 00 */ li r5, 0 /* 800529B8 0004E618 A8 63 00 08 */ lha r3, 8(r3) /* 800529BC 0004E61C 48 20 13 F5 */ bl func_80253DB0 lbl_800529C0: /* 800529C0 0004E620 38 60 50 A1 */ li r3, 0x50a1 /* 800529C4 0004E624 38 00 00 20 */ li r0, 0x20 /* 800529C8 0004E628 90 6D 98 8C */ stw r3, lbl_8063EB4C-_SDA_BASE_(r13) /* 800529CC 0004E62C 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800529D0 0004E630 48 00 0C 68 */ b lbl_80053638 /* 800529D4 0004E634 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 800529D8 0004E638 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 800529DC 0004E63C A8 63 00 08 */ lha r3, 8(r3) /* 800529E0 0004E640 48 20 13 F1 */ bl func_80253DD0 /* 800529E4 0004E644 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 800529E8 0004E648 28 00 00 03 */ cmplwi r0, 3 /* 800529EC 0004E64C 40 82 0C 4C */ bne lbl_80053638 /* 800529F0 0004E650 38 00 00 21 */ li r0, 0x21 /* 800529F4 0004E654 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800529F8 0004E658 48 00 0C 40 */ b lbl_80053638 /* 800529FC 0004E65C 2C 03 00 00 */ cmpwi r3, 0 /* 80052A00 0004E660 41 82 0C 38 */ beq lbl_80053638 /* 80052A04 0004E664 80 6D 98 84 */ lwz r3, lbl_8063EB44-_SDA_BASE_(r13) /* 80052A08 0004E668 80 03 00 4C */ lwz r0, 0x4c(r3) /* 80052A0C 0004E66C 2C 00 00 01 */ cmpwi r0, 1 /* 80052A10 0004E670 41 82 00 30 */ beq lbl_80052A40 /* 80052A14 0004E674 40 80 00 48 */ bge lbl_80052A5C /* 80052A18 0004E678 2C 00 00 00 */ cmpwi r0, 0 /* 80052A1C 0004E67C 40 80 00 08 */ bge lbl_80052A24 /* 80052A20 0004E680 48 00 00 3C */ b lbl_80052A5C lbl_80052A24: /* 80052A24 0004E684 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052A28 0004E688 38 80 00 01 */ li r4, 1 /* 80052A2C 0004E68C 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052A30 0004E690 38 A0 00 00 */ li r5, 0 /* 80052A34 0004E694 A8 63 00 08 */ lha r3, 8(r3) /* 80052A38 0004E698 48 20 13 79 */ bl func_80253DB0 /* 80052A3C 0004E69C 48 00 00 38 */ b lbl_80052A74 lbl_80052A40: /* 80052A40 0004E6A0 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052A44 0004E6A4 38 80 00 03 */ li r4, 3 /* 80052A48 0004E6A8 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052A4C 0004E6AC 38 A0 00 00 */ li r5, 0 /* 80052A50 0004E6B0 A8 63 00 08 */ lha r3, 8(r3) /* 80052A54 0004E6B4 48 20 13 5D */ bl func_80253DB0 /* 80052A58 0004E6B8 48 00 00 1C */ b lbl_80052A74 lbl_80052A5C: /* 80052A5C 0004E6BC 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052A60 0004E6C0 38 80 00 05 */ li r4, 5 /* 80052A64 0004E6C4 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052A68 0004E6C8 38 A0 00 00 */ li r5, 0 /* 80052A6C 0004E6CC A8 63 00 08 */ lha r3, 8(r3) /* 80052A70 0004E6D0 48 20 13 41 */ bl func_80253DB0 lbl_80052A74: /* 80052A74 0004E6D4 38 00 00 22 */ li r0, 0x22 /* 80052A78 0004E6D8 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052A7C 0004E6DC 48 00 0B BC */ b lbl_80053638 /* 80052A80 0004E6E0 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052A84 0004E6E4 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052A88 0004E6E8 A8 7E 00 08 */ lha r3, 8(r30) /* 80052A8C 0004E6EC 48 20 13 45 */ bl func_80253DD0 /* 80052A90 0004E6F0 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052A94 0004E6F4 28 00 00 03 */ cmplwi r0, 3 /* 80052A98 0004E6F8 40 82 0B A0 */ bne lbl_80053638 /* 80052A9C 0004E6FC A8 7E 00 08 */ lha r3, 8(r30) /* 80052AA0 0004E700 38 80 00 08 */ li r4, 8 /* 80052AA4 0004E704 38 A0 00 00 */ li r5, 0 /* 80052AA8 0004E708 48 20 13 49 */ bl func_80253DF0 /* 80052AAC 0004E70C 38 00 00 2C */ li r0, 0x2c /* 80052AB0 0004E710 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052AB4 0004E714 48 00 0B 84 */ b lbl_80053638 /* 80052AB8 0004E718 80 8D 98 70 */ lwz r4, lbl_8063EB30-_SDA_BASE_(r13) /* 80052ABC 0004E71C 2C 04 00 00 */ cmpwi r4, 0 /* 80052AC0 0004E720 40 82 00 38 */ bne lbl_80052AF8 /* 80052AC4 0004E724 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052AC8 0004E728 38 00 00 24 */ li r0, 0x24 /* 80052ACC 0004E72C 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052AD0 0004E730 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052AD4 0004E734 A8 7E 00 0A */ lha r3, 0xa(r30) /* 80052AD8 0004E738 38 80 00 08 */ li r4, 8 /* 80052ADC 0004E73C 38 A0 00 01 */ li r5, 1 /* 80052AE0 0004E740 48 20 13 11 */ bl func_80253DF0 /* 80052AE4 0004E744 A8 7E 00 0A */ lha r3, 0xa(r30) /* 80052AE8 0004E748 38 80 00 00 */ li r4, 0 /* 80052AEC 0004E74C 38 A0 00 00 */ li r5, 0 /* 80052AF0 0004E750 48 20 12 C1 */ bl func_80253DB0 /* 80052AF4 0004E754 48 00 0B 44 */ b lbl_80053638 lbl_80052AF8: /* 80052AF8 0004E758 38 04 FF FF */ addi r0, r4, -1 /* 80052AFC 0004E75C 2C 03 00 00 */ cmpwi r3, 0 /* 80052B00 0004E760 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052B04 0004E764 41 82 0B 34 */ beq lbl_80053638 /* 80052B08 0004E768 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052B0C 0004E76C 38 00 00 24 */ li r0, 0x24 /* 80052B10 0004E770 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052B14 0004E774 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052B18 0004E778 A8 7E 00 0A */ lha r3, 0xa(r30) /* 80052B1C 0004E77C 38 80 00 08 */ li r4, 8 /* 80052B20 0004E780 38 A0 00 01 */ li r5, 1 /* 80052B24 0004E784 48 20 12 CD */ bl func_80253DF0 /* 80052B28 0004E788 A8 7E 00 0A */ lha r3, 0xa(r30) /* 80052B2C 0004E78C 38 80 00 00 */ li r4, 0 /* 80052B30 0004E790 38 A0 00 00 */ li r5, 0 /* 80052B34 0004E794 48 20 12 7D */ bl func_80253DB0 /* 80052B38 0004E798 48 00 0B 00 */ b lbl_80053638 /* 80052B3C 0004E79C 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052B40 0004E7A0 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052B44 0004E7A4 A8 63 00 0A */ lha r3, 0xa(r3) /* 80052B48 0004E7A8 48 20 12 89 */ bl func_80253DD0 /* 80052B4C 0004E7AC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052B50 0004E7B0 28 00 00 03 */ cmplwi r0, 3 /* 80052B54 0004E7B4 40 82 0A E4 */ bne lbl_80053638 /* 80052B58 0004E7B8 38 60 00 25 */ li r3, 0x25 /* 80052B5C 0004E7BC 38 00 00 00 */ li r0, 0 /* 80052B60 0004E7C0 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052B64 0004E7C4 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052B68 0004E7C8 48 00 0A D0 */ b lbl_80053638 /* 80052B6C 0004E7CC 38 60 00 00 */ li r3, 0 /* 80052B70 0004E7D0 38 80 00 00 */ li r4, 0 /* 80052B74 0004E7D4 48 00 6D 85 */ bl func_800598F8 /* 80052B78 0004E7D8 C0 42 85 00 */ lfs f2, lbl_80640B00-_SDA2_BASE_(r2) /* 80052B7C 0004E7DC 38 81 00 10 */ addi r4, r1, 0x10 /* 80052B80 0004E7E0 C0 22 85 04 */ lfs f1, lbl_80640B04-_SDA2_BASE_(r2) /* 80052B84 0004E7E4 38 60 00 32 */ li r3, 0x32 /* 80052B88 0004E7E8 C0 02 85 08 */ lfs f0, lbl_80640B08-_SDA2_BASE_(r2) /* 80052B8C 0004E7EC D0 41 00 1C */ stfs f2, 0x1c(r1) /* 80052B90 0004E7F0 D0 41 00 10 */ stfs f2, 0x10(r1) /* 80052B94 0004E7F4 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80052B98 0004E7F8 D0 21 00 14 */ stfs f1, 0x14(r1) /* 80052B9C 0004E7FC D0 41 00 24 */ stfs f2, 0x24(r1) /* 80052BA0 0004E800 D0 41 00 20 */ stfs f2, 0x20(r1) /* 80052BA4 0004E804 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 80052BA8 0004E808 D0 01 00 28 */ stfs f0, 0x28(r1) /* 80052BAC 0004E80C 48 00 6E 91 */ bl func_80059A3C /* 80052BB0 0004E810 3C 60 00 80 */ lis r3, 0x00800038@ha /* 80052BB4 0004E814 38 80 00 01 */ li r4, 1 /* 80052BB8 0004E818 38 63 00 38 */ addi r3, r3, 0x00800038@l /* 80052BBC 0004E81C 38 A0 00 00 */ li r5, 0 /* 80052BC0 0004E820 38 C0 00 01 */ li r6, 1 /* 80052BC4 0004E824 48 00 6E A9 */ bl func_80059A6C /* 80052BC8 0004E828 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052BCC 0004E82C 28 00 00 32 */ cmplwi r0, 0x32 /* 80052BD0 0004E830 40 82 00 10 */ bne lbl_80052BE0 /* 80052BD4 0004E834 80 6D 98 70 */ lwz r3, lbl_8063EB30-_SDA_BASE_(r13) /* 80052BD8 0004E838 38 03 00 01 */ addi r0, r3, 1 /* 80052BDC 0004E83C 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) lbl_80052BE0: /* 80052BE0 0004E840 C0 42 85 10 */ lfs f2, lbl_80640B10-_SDA2_BASE_(r2) /* 80052BE4 0004E844 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 80052BE8 0004E848 C0 02 85 0C */ lfs f0, lbl_80640B0C-_SDA2_BASE_(r2) /* 80052BEC 0004E84C EC 22 00 72 */ fmuls f1, f2, f1 /* 80052BF0 0004E850 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052BF4 0004E854 EC 00 08 2A */ fadds f0, f0, f1 /* 80052BF8 0004E858 FC 00 00 1E */ fctiwz f0, f0 /* 80052BFC 0004E85C D8 01 00 40 */ stfd f0, 0x40(r1) /* 80052C00 0004E860 80 61 00 44 */ lwz r3, 0x44(r1) /* 80052C04 0004E864 7C 00 18 40 */ cmplw r0, r3 /* 80052C08 0004E868 40 82 0A 30 */ bne lbl_80053638 /* 80052C0C 0004E86C 38 00 00 26 */ li r0, 0x26 /* 80052C10 0004E870 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052C14 0004E874 48 00 0A 24 */ b lbl_80053638 /* 80052C18 0004E878 3C 60 04 00 */ lis r3, 0x400 /* 80052C1C 0004E87C 38 80 00 00 */ li r4, 0 /* 80052C20 0004E880 38 A0 00 00 */ li r5, 0 /* 80052C24 0004E884 38 C0 00 01 */ li r6, 1 /* 80052C28 0004E888 48 00 6E 45 */ bl func_80059A6C /* 80052C2C 0004E88C 2C 03 00 00 */ cmpwi r3, 0 /* 80052C30 0004E890 41 82 0A 08 */ beq lbl_80053638 /* 80052C34 0004E894 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052C38 0004E898 38 80 00 01 */ li r4, 1 /* 80052C3C 0004E89C 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052C40 0004E8A0 38 A0 00 00 */ li r5, 0 /* 80052C44 0004E8A4 A8 63 00 0A */ lha r3, 0xa(r3) /* 80052C48 0004E8A8 48 20 11 69 */ bl func_80253DB0 /* 80052C4C 0004E8AC 38 00 00 27 */ li r0, 0x27 /* 80052C50 0004E8B0 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052C54 0004E8B4 48 00 09 E4 */ b lbl_80053638 /* 80052C58 0004E8B8 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052C5C 0004E8BC 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052C60 0004E8C0 A8 7E 00 0A */ lha r3, 0xa(r30) /* 80052C64 0004E8C4 48 20 11 6D */ bl func_80253DD0 /* 80052C68 0004E8C8 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052C6C 0004E8CC 28 00 00 03 */ cmplwi r0, 3 /* 80052C70 0004E8D0 40 82 09 C8 */ bne lbl_80053638 /* 80052C74 0004E8D4 A8 7E 00 0A */ lha r3, 0xa(r30) /* 80052C78 0004E8D8 38 80 00 08 */ li r4, 8 /* 80052C7C 0004E8DC 38 A0 00 00 */ li r5, 0 /* 80052C80 0004E8E0 48 20 11 71 */ bl func_80253DF0 /* 80052C84 0004E8E4 3C 60 04 00 */ lis r3, 0x400 /* 80052C88 0004E8E8 38 80 00 00 */ li r4, 0 /* 80052C8C 0004E8EC 38 A0 00 00 */ li r5, 0 /* 80052C90 0004E8F0 38 C0 00 01 */ li r6, 1 /* 80052C94 0004E8F4 48 00 6D D9 */ bl func_80059A6C /* 80052C98 0004E8F8 2C 03 00 00 */ cmpwi r3, 0 /* 80052C9C 0004E8FC 41 82 09 9C */ beq lbl_80053638 /* 80052CA0 0004E900 A8 7E 00 06 */ lha r3, 6(r30) /* 80052CA4 0004E904 38 80 00 08 */ li r4, 8 /* 80052CA8 0004E908 38 A0 00 01 */ li r5, 1 /* 80052CAC 0004E90C 48 20 11 45 */ bl func_80253DF0 /* 80052CB0 0004E910 A8 7E 00 06 */ lha r3, 6(r30) /* 80052CB4 0004E914 38 80 00 08 */ li r4, 8 /* 80052CB8 0004E918 38 A0 00 00 */ li r5, 0 /* 80052CBC 0004E91C 48 20 10 F5 */ bl func_80253DB0 /* 80052CC0 0004E920 38 60 00 28 */ li r3, 0x28 /* 80052CC4 0004E924 38 00 00 00 */ li r0, 0 /* 80052CC8 0004E928 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052CCC 0004E92C 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052CD0 0004E930 48 00 09 68 */ b lbl_80053638 /* 80052CD4 0004E934 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052CD8 0004E938 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052CDC 0004E93C A8 63 00 06 */ lha r3, 6(r3) /* 80052CE0 0004E940 48 20 10 F1 */ bl func_80253DD0 /* 80052CE4 0004E944 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052CE8 0004E948 28 00 00 03 */ cmplwi r0, 3 /* 80052CEC 0004E94C 40 82 09 4C */ bne lbl_80053638 /* 80052CF0 0004E950 38 00 00 29 */ li r0, 0x29 /* 80052CF4 0004E954 38 60 00 00 */ li r3, 0 /* 80052CF8 0004E958 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052CFC 0004E95C 38 80 00 00 */ li r4, 0 /* 80052D00 0004E960 48 00 6B F9 */ bl func_800598F8 /* 80052D04 0004E964 48 00 09 34 */ b lbl_80053638 /* 80052D08 0004E968 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052D0C 0004E96C 28 00 00 01 */ cmplwi r0, 1 /* 80052D10 0004E970 40 82 00 2C */ bne lbl_80052D3C /* 80052D14 0004E974 3C 60 04 00 */ lis r3, 0x400 /* 80052D18 0004E978 38 80 00 00 */ li r4, 0 /* 80052D1C 0004E97C 38 A0 00 00 */ li r5, 0 /* 80052D20 0004E980 38 C0 00 01 */ li r6, 1 /* 80052D24 0004E984 48 00 6D 49 */ bl func_80059A6C /* 80052D28 0004E988 2C 03 00 00 */ cmpwi r3, 0 /* 80052D2C 0004E98C 41 82 00 10 */ beq lbl_80052D3C /* 80052D30 0004E990 38 00 00 02 */ li r0, 2 /* 80052D34 0004E994 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052D38 0004E998 48 00 09 00 */ b lbl_80053638 lbl_80052D3C: /* 80052D3C 0004E99C 38 60 00 38 */ li r3, 0x38 /* 80052D40 0004E9A0 38 80 00 00 */ li r4, 0 /* 80052D44 0004E9A4 38 A0 00 00 */ li r5, 0 /* 80052D48 0004E9A8 38 C0 00 01 */ li r6, 1 /* 80052D4C 0004E9AC 48 00 6D 21 */ bl func_80059A6C /* 80052D50 0004E9B0 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 80052D54 0004E9B4 41 82 00 BC */ beq lbl_80052E10 /* 80052D58 0004E9B8 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052D5C 0004E9BC 28 00 00 02 */ cmplwi r0, 2 /* 80052D60 0004E9C0 40 82 08 D8 */ bne lbl_80053638 /* 80052D64 0004E9C4 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052D68 0004E9C8 2C 00 00 02 */ cmpwi r0, 2 /* 80052D6C 0004E9CC 41 82 00 4C */ beq lbl_80052DB8 /* 80052D70 0004E9D0 40 80 00 10 */ bge lbl_80052D80 /* 80052D74 0004E9D4 2C 00 00 01 */ cmpwi r0, 1 /* 80052D78 0004E9D8 40 80 00 14 */ bge lbl_80052D8C /* 80052D7C 0004E9DC 48 00 08 BC */ b lbl_80053638 lbl_80052D80: /* 80052D80 0004E9E0 2C 00 00 04 */ cmpwi r0, 4 /* 80052D84 0004E9E4 40 80 08 B4 */ bge lbl_80053638 /* 80052D88 0004E9E8 48 00 00 5C */ b lbl_80052DE4 lbl_80052D8C: /* 80052D8C 0004E9EC 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052D90 0004E9F0 38 80 00 03 */ li r4, 3 /* 80052D94 0004E9F4 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052D98 0004E9F8 38 A0 00 00 */ li r5, 0 /* 80052D9C 0004E9FC A8 63 00 06 */ lha r3, 6(r3) /* 80052DA0 0004EA00 48 20 10 11 */ bl func_80253DB0 /* 80052DA4 0004EA04 38 00 00 2A */ li r0, 0x2a /* 80052DA8 0004EA08 38 60 00 01 */ li r3, 1 /* 80052DAC 0004EA0C 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052DB0 0004EA10 48 00 77 1D */ bl func_8005A4CC /* 80052DB4 0004EA14 48 00 08 84 */ b lbl_80053638 lbl_80052DB8: /* 80052DB8 0004EA18 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052DBC 0004EA1C 38 80 00 04 */ li r4, 4 /* 80052DC0 0004EA20 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052DC4 0004EA24 38 A0 00 00 */ li r5, 0 /* 80052DC8 0004EA28 A8 63 00 06 */ lha r3, 6(r3) /* 80052DCC 0004EA2C 48 20 0F E5 */ bl func_80253DB0 /* 80052DD0 0004EA30 38 00 00 2A */ li r0, 0x2a /* 80052DD4 0004EA34 38 60 00 01 */ li r3, 1 /* 80052DD8 0004EA38 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052DDC 0004EA3C 48 00 76 F1 */ bl func_8005A4CC /* 80052DE0 0004EA40 48 00 08 58 */ b lbl_80053638 lbl_80052DE4: /* 80052DE4 0004EA44 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052DE8 0004EA48 38 80 00 05 */ li r4, 5 /* 80052DEC 0004EA4C 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052DF0 0004EA50 38 A0 00 00 */ li r5, 0 /* 80052DF4 0004EA54 A8 63 00 06 */ lha r3, 6(r3) /* 80052DF8 0004EA58 48 20 0F B9 */ bl func_80253DB0 /* 80052DFC 0004EA5C 38 00 00 2A */ li r0, 0x2a /* 80052E00 0004EA60 38 60 00 01 */ li r3, 1 /* 80052E04 0004EA64 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052E08 0004EA68 48 00 76 C5 */ bl func_8005A4CC /* 80052E0C 0004EA6C 48 00 08 2C */ b lbl_80053638 lbl_80052E10: /* 80052E10 0004EA70 2C 03 00 02 */ cmpwi r3, 2 /* 80052E14 0004EA74 41 82 00 58 */ beq lbl_80052E6C /* 80052E18 0004EA78 40 80 00 10 */ bge lbl_80052E28 /* 80052E1C 0004EA7C 2C 03 00 01 */ cmpwi r3, 1 /* 80052E20 0004EA80 40 80 00 14 */ bge lbl_80052E34 /* 80052E24 0004EA84 48 00 08 14 */ b lbl_80053638 lbl_80052E28: /* 80052E28 0004EA88 2C 03 00 04 */ cmpwi r3, 4 /* 80052E2C 0004EA8C 40 80 08 0C */ bge lbl_80053638 /* 80052E30 0004EA90 48 00 00 60 */ b lbl_80052E90 lbl_80052E34: /* 80052E34 0004EA94 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052E38 0004EA98 38 80 00 00 */ li r4, 0 /* 80052E3C 0004EA9C 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052E40 0004EAA0 38 A0 00 00 */ li r5, 0 /* 80052E44 0004EAA4 A8 63 00 06 */ lha r3, 6(r3) /* 80052E48 0004EAA8 48 20 0F 69 */ bl func_80253DB0 /* 80052E4C 0004EAAC 38 60 00 03 */ li r3, 3 /* 80052E50 0004EAB0 48 00 76 7D */ bl func_8005A4CC /* 80052E54 0004EAB4 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052E58 0004EAB8 2C 00 00 00 */ cmpwi r0, 0 /* 80052E5C 0004EABC 40 82 07 DC */ bne lbl_80053638 /* 80052E60 0004EAC0 38 00 00 01 */ li r0, 1 /* 80052E64 0004EAC4 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052E68 0004EAC8 48 00 07 D0 */ b lbl_80053638 lbl_80052E6C: /* 80052E6C 0004EACC 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052E70 0004EAD0 38 80 00 01 */ li r4, 1 /* 80052E74 0004EAD4 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052E78 0004EAD8 38 A0 00 00 */ li r5, 0 /* 80052E7C 0004EADC A8 63 00 06 */ lha r3, 6(r3) /* 80052E80 0004EAE0 48 20 0F 31 */ bl func_80253DB0 /* 80052E84 0004EAE4 38 60 00 03 */ li r3, 3 /* 80052E88 0004EAE8 48 00 76 45 */ bl func_8005A4CC /* 80052E8C 0004EAEC 48 00 07 AC */ b lbl_80053638 lbl_80052E90: /* 80052E90 0004EAF0 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80052E94 0004EAF4 38 80 00 02 */ li r4, 2 /* 80052E98 0004EAF8 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 80052E9C 0004EAFC 38 A0 00 00 */ li r5, 0 /* 80052EA0 0004EB00 A8 63 00 06 */ lha r3, 6(r3) /* 80052EA4 0004EB04 48 20 0F 0D */ bl func_80253DB0 /* 80052EA8 0004EB08 38 60 00 03 */ li r3, 3 /* 80052EAC 0004EB0C 48 00 76 21 */ bl func_8005A4CC /* 80052EB0 0004EB10 48 00 07 88 */ b lbl_80053638 /* 80052EB4 0004EB14 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052EB8 0004EB18 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052EBC 0004EB1C A8 7E 00 06 */ lha r3, 6(r30) /* 80052EC0 0004EB20 48 20 0F 11 */ bl func_80253DD0 /* 80052EC4 0004EB24 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052EC8 0004EB28 28 00 00 03 */ cmplwi r0, 3 /* 80052ECC 0004EB2C 40 82 07 6C */ bne lbl_80053638 /* 80052ED0 0004EB30 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052ED4 0004EB34 2C 00 00 03 */ cmpwi r0, 3 /* 80052ED8 0004EB38 41 82 00 20 */ beq lbl_80052EF8 /* 80052EDC 0004EB3C 40 80 07 5C */ bge lbl_80053638 /* 80052EE0 0004EB40 2C 00 00 02 */ cmpwi r0, 2 /* 80052EE4 0004EB44 40 80 00 08 */ bge lbl_80052EEC /* 80052EE8 0004EB48 48 00 07 50 */ b lbl_80053638 lbl_80052EEC: /* 80052EEC 0004EB4C 38 00 00 03 */ li r0, 3 /* 80052EF0 0004EB50 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80052EF4 0004EB54 48 00 07 44 */ b lbl_80053638 lbl_80052EF8: /* 80052EF8 0004EB58 3C 60 04 00 */ lis r3, 0x400 /* 80052EFC 0004EB5C 38 80 00 00 */ li r4, 0 /* 80052F00 0004EB60 38 A0 00 00 */ li r5, 0 /* 80052F04 0004EB64 38 C0 00 01 */ li r6, 1 /* 80052F08 0004EB68 48 00 6B 65 */ bl func_80059A6C /* 80052F0C 0004EB6C 2C 03 00 00 */ cmpwi r3, 0 /* 80052F10 0004EB70 41 82 07 28 */ beq lbl_80053638 /* 80052F14 0004EB74 A8 7E 00 06 */ lha r3, 6(r30) /* 80052F18 0004EB78 38 80 00 07 */ li r4, 7 /* 80052F1C 0004EB7C 38 A0 00 00 */ li r5, 0 /* 80052F20 0004EB80 48 20 0E 91 */ bl func_80253DB0 /* 80052F24 0004EB84 38 00 00 2B */ li r0, 0x2b /* 80052F28 0004EB88 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052F2C 0004EB8C 48 00 07 0C */ b lbl_80053638 /* 80052F30 0004EB90 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052F34 0004EB94 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052F38 0004EB98 A8 7E 00 06 */ lha r3, 6(r30) /* 80052F3C 0004EB9C 48 20 0E 95 */ bl func_80253DD0 /* 80052F40 0004EBA0 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80052F44 0004EBA4 28 00 00 03 */ cmplwi r0, 3 /* 80052F48 0004EBA8 40 82 06 F0 */ bne lbl_80053638 /* 80052F4C 0004EBAC A8 7E 00 06 */ lha r3, 6(r30) /* 80052F50 0004EBB0 38 80 00 08 */ li r4, 8 /* 80052F54 0004EBB4 38 A0 00 00 */ li r5, 0 /* 80052F58 0004EBB8 48 20 0E 99 */ bl func_80253DF0 /* 80052F5C 0004EBBC 38 00 00 2C */ li r0, 0x2c /* 80052F60 0004EBC0 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052F64 0004EBC4 48 00 06 D4 */ b lbl_80053638 /* 80052F68 0004EBC8 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052F6C 0004EBCC 38 A1 00 08 */ addi r5, r1, 8 /* 80052F70 0004EBD0 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 80052F74 0004EBD4 38 80 00 08 */ li r4, 8 /* 80052F78 0004EBD8 A8 7E 00 02 */ lha r3, 2(r30) /* 80052F7C 0004EBDC 48 20 0E D1 */ bl func_80253E4C /* 80052F80 0004EBE0 80 01 00 08 */ lwz r0, 8(r1) /* 80052F84 0004EBE4 2C 00 00 00 */ cmpwi r0, 0 /* 80052F88 0004EBE8 40 82 00 44 */ bne lbl_80052FCC /* 80052F8C 0004EBEC A8 7E 00 02 */ lha r3, 2(r30) /* 80052F90 0004EBF0 38 80 00 08 */ li r4, 8 /* 80052F94 0004EBF4 38 A0 00 01 */ li r5, 1 /* 80052F98 0004EBF8 48 20 0E 59 */ bl func_80253DF0 /* 80052F9C 0004EBFC A8 7E 00 04 */ lha r3, 4(r30) /* 80052FA0 0004EC00 38 80 00 08 */ li r4, 8 /* 80052FA4 0004EC04 38 A0 00 01 */ li r5, 1 /* 80052FA8 0004EC08 48 20 0E 49 */ bl func_80253DF0 /* 80052FAC 0004EC0C A8 7E 00 02 */ lha r3, 2(r30) /* 80052FB0 0004EC10 38 80 00 05 */ li r4, 5 /* 80052FB4 0004EC14 38 A0 00 00 */ li r5, 0 /* 80052FB8 0004EC18 48 20 0D F9 */ bl func_80253DB0 /* 80052FBC 0004EC1C A8 7E 00 04 */ lha r3, 4(r30) /* 80052FC0 0004EC20 38 80 00 00 */ li r4, 0 /* 80052FC4 0004EC24 38 A0 00 00 */ li r5, 0 /* 80052FC8 0004EC28 48 20 0D E9 */ bl func_80253DB0 lbl_80052FCC: /* 80052FCC 0004EC2C 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80052FD0 0004EC30 38 80 00 08 */ li r4, 8 /* 80052FD4 0004EC34 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 80052FD8 0004EC38 38 A0 00 01 */ li r5, 1 /* 80052FDC 0004EC3C 48 20 0E 15 */ bl func_80253DF0 /* 80052FE0 0004EC40 A8 7E AC B0 */ lha r3, -0x5350(r30) /* 80052FE4 0004EC44 38 80 00 08 */ li r4, 8 /* 80052FE8 0004EC48 38 A0 00 00 */ li r5, 0 /* 80052FEC 0004EC4C 48 20 0D C5 */ bl func_80253DB0 /* 80052FF0 0004EC50 38 00 00 2D */ li r0, 0x2d /* 80052FF4 0004EC54 38 60 00 00 */ li r3, 0 /* 80052FF8 0004EC58 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80052FFC 0004EC5C 38 80 00 00 */ li r4, 0 /* 80053000 0004EC60 48 00 68 F9 */ bl func_800598F8 /* 80053004 0004EC64 38 60 00 01 */ li r3, 1 /* 80053008 0004EC68 38 80 00 00 */ li r4, 0 /* 8005300C 0004EC6C 38 A0 00 00 */ li r5, 0 /* 80053010 0004EC70 38 C0 00 02 */ li r6, 2 /* 80053014 0004EC74 38 E0 00 03 */ li r7, 3 /* 80053018 0004EC78 39 00 00 00 */ li r8, 0 /* 8005301C 0004EC7C 48 00 69 AD */ bl func_800599C8 /* 80053020 0004EC80 38 60 00 02 */ li r3, 2 /* 80053024 0004EC84 38 80 00 00 */ li r4, 0 /* 80053028 0004EC88 38 A0 00 01 */ li r5, 1 /* 8005302C 0004EC8C 38 C0 00 00 */ li r6, 0 /* 80053030 0004EC90 38 E0 00 63 */ li r7, 0x63 /* 80053034 0004EC94 39 00 00 00 */ li r8, 0 /* 80053038 0004EC98 48 00 69 91 */ bl func_800599C8 /* 8005303C 0004EC9C 38 60 00 03 */ li r3, 3 /* 80053040 0004ECA0 38 80 00 01 */ li r4, 1 /* 80053044 0004ECA4 38 A0 00 00 */ li r5, 0 /* 80053048 0004ECA8 38 C0 00 63 */ li r6, 0x63 /* 8005304C 0004ECAC 38 E0 00 00 */ li r7, 0 /* 80053050 0004ECB0 39 00 00 00 */ li r8, 0 /* 80053054 0004ECB4 48 00 69 75 */ bl func_800599C8 /* 80053058 0004ECB8 38 60 00 63 */ li r3, 0x63 /* 8005305C 0004ECBC 38 80 00 02 */ li r4, 2 /* 80053060 0004ECC0 38 A0 00 03 */ li r5, 3 /* 80053064 0004ECC4 38 C0 00 00 */ li r6, 0 /* 80053068 0004ECC8 38 E0 00 00 */ li r7, 0 /* 8005306C 0004ECCC 39 00 00 00 */ li r8, 0 /* 80053070 0004ECD0 48 00 69 59 */ bl func_800599C8 /* 80053074 0004ECD4 38 00 2E 55 */ li r0, 0x2e55 /* 80053078 0004ECD8 90 0D 98 8C */ stw r0, lbl_8063EB4C-_SDA_BASE_(r13) /* 8005307C 0004ECDC 48 00 05 BC */ b lbl_80053638 /* 80053080 0004ECE0 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 80053084 0004ECE4 A8 63 AC B0 */ lha r3, lbl_8040ACB0@l(r3) /* 80053088 0004ECE8 48 20 0D 49 */ bl func_80253DD0 /* 8005308C 0004ECEC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80053090 0004ECF0 28 00 00 03 */ cmplwi r0, 3 /* 80053094 0004ECF4 40 82 05 A4 */ bne lbl_80053638 /* 80053098 0004ECF8 38 00 00 2E */ li r0, 0x2e /* 8005309C 0004ECFC 38 60 00 00 */ li r3, 0 /* 800530A0 0004ED00 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800530A4 0004ED04 48 00 13 ED */ bl func_80054490 /* 800530A8 0004ED08 38 60 00 01 */ li r3, 1 /* 800530AC 0004ED0C 48 00 13 E5 */ bl func_80054490 /* 800530B0 0004ED10 38 60 00 02 */ li r3, 2 /* 800530B4 0004ED14 48 00 13 DD */ bl func_80054490 /* 800530B8 0004ED18 38 60 00 03 */ li r3, 3 /* 800530BC 0004ED1C 48 00 13 D5 */ bl func_80054490 /* 800530C0 0004ED20 48 00 05 78 */ b lbl_80053638 /* 800530C4 0004ED24 38 60 00 29 */ li r3, 0x29 /* 800530C8 0004ED28 38 80 00 01 */ li r4, 1 /* 800530CC 0004ED2C 38 A0 00 00 */ li r5, 0 /* 800530D0 0004ED30 38 C0 00 01 */ li r6, 1 /* 800530D4 0004ED34 48 00 69 99 */ bl func_80059A6C /* 800530D8 0004ED38 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 /* 800530DC 0004ED3C 41 82 01 5C */ beq lbl_80053238 /* 800530E0 0004ED40 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 800530E4 0004ED44 2C 04 00 63 */ cmpwi r4, 0x63 /* 800530E8 0004ED48 41 82 01 0C */ beq lbl_800531F4 /* 800530EC 0004ED4C 40 80 00 28 */ bge lbl_80053114 /* 800530F0 0004ED50 2C 04 00 02 */ cmpwi r4, 2 /* 800530F4 0004ED54 41 82 00 78 */ beq lbl_8005316C /* 800530F8 0004ED58 40 80 00 10 */ bge lbl_80053108 /* 800530FC 0004ED5C 2C 04 00 01 */ cmpwi r4, 1 /* 80053100 0004ED60 40 80 00 28 */ bge lbl_80053128 /* 80053104 0004ED64 48 00 05 34 */ b lbl_80053638 lbl_80053108: /* 80053108 0004ED68 2C 04 00 04 */ cmpwi r4, 4 /* 8005310C 0004ED6C 40 80 05 2C */ bge lbl_80053638 /* 80053110 0004ED70 48 00 00 A0 */ b lbl_800531B0 lbl_80053114: /* 80053114 0004ED74 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 80053118 0004ED78 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 8005311C 0004ED7C 7C 04 00 00 */ cmpw r4, r0 /* 80053120 0004ED80 41 82 00 D4 */ beq lbl_800531F4 /* 80053124 0004ED84 48 00 05 14 */ b lbl_80053638 lbl_80053128: /* 80053128 0004ED88 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 8005312C 0004ED8C 38 80 00 03 */ li r4, 3 /* 80053130 0004ED90 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 80053134 0004ED94 38 A0 00 00 */ li r5, 0 /* 80053138 0004ED98 48 20 0C 79 */ bl func_80253DB0 /* 8005313C 0004ED9C 38 7E AC B0 */ addi r3, r30, -21328 /* 80053140 0004EDA0 38 80 00 06 */ li r4, 6 /* 80053144 0004EDA4 A8 63 00 02 */ lha r3, 2(r3) /* 80053148 0004EDA8 38 A0 00 00 */ li r5, 0 /* 8005314C 0004EDAC 48 20 0C 65 */ bl func_80253DB0 /* 80053150 0004EDB0 38 60 00 2F */ li r3, 0x2f /* 80053154 0004EDB4 38 00 00 01 */ li r0, 1 /* 80053158 0004EDB8 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 8005315C 0004EDBC 38 60 00 01 */ li r3, 1 /* 80053160 0004EDC0 90 0D 98 80 */ stw r0, lbl_8063EB40-_SDA_BASE_(r13) /* 80053164 0004EDC4 48 00 73 69 */ bl func_8005A4CC /* 80053168 0004EDC8 48 00 04 D0 */ b lbl_80053638 lbl_8005316C: /* 8005316C 0004EDCC 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80053170 0004EDD0 38 80 00 04 */ li r4, 4 /* 80053174 0004EDD4 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 80053178 0004EDD8 38 A0 00 00 */ li r5, 0 /* 8005317C 0004EDDC 48 20 0C 35 */ bl func_80253DB0 /* 80053180 0004EDE0 38 7E AC B0 */ addi r3, r30, -21328 /* 80053184 0004EDE4 38 80 00 06 */ li r4, 6 /* 80053188 0004EDE8 A8 63 00 02 */ lha r3, 2(r3) /* 8005318C 0004EDEC 38 A0 00 00 */ li r5, 0 /* 80053190 0004EDF0 48 20 0C 21 */ bl func_80253DB0 /* 80053194 0004EDF4 38 60 00 2F */ li r3, 0x2f /* 80053198 0004EDF8 38 00 00 02 */ li r0, 2 /* 8005319C 0004EDFC 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 800531A0 0004EE00 38 60 00 01 */ li r3, 1 /* 800531A4 0004EE04 90 0D 98 80 */ stw r0, lbl_8063EB40-_SDA_BASE_(r13) /* 800531A8 0004EE08 48 00 73 25 */ bl func_8005A4CC /* 800531AC 0004EE0C 48 00 04 8C */ b lbl_80053638 lbl_800531B0: /* 800531B0 0004EE10 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 800531B4 0004EE14 38 80 00 05 */ li r4, 5 /* 800531B8 0004EE18 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 800531BC 0004EE1C 38 A0 00 00 */ li r5, 0 /* 800531C0 0004EE20 48 20 0B F1 */ bl func_80253DB0 /* 800531C4 0004EE24 38 7E AC B0 */ addi r3, r30, -21328 /* 800531C8 0004EE28 38 80 00 06 */ li r4, 6 /* 800531CC 0004EE2C A8 63 00 02 */ lha r3, 2(r3) /* 800531D0 0004EE30 38 A0 00 00 */ li r5, 0 /* 800531D4 0004EE34 48 20 0B DD */ bl func_80253DB0 /* 800531D8 0004EE38 38 60 00 2F */ li r3, 0x2f /* 800531DC 0004EE3C 38 00 00 03 */ li r0, 3 /* 800531E0 0004EE40 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 800531E4 0004EE44 38 60 00 01 */ li r3, 1 /* 800531E8 0004EE48 90 0D 98 80 */ stw r0, lbl_8063EB40-_SDA_BASE_(r13) /* 800531EC 0004EE4C 48 00 72 E1 */ bl func_8005A4CC /* 800531F0 0004EE50 48 00 04 48 */ b lbl_80053638 lbl_800531F4: /* 800531F4 0004EE54 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 800531F8 0004EE58 38 80 00 06 */ li r4, 6 /* 800531FC 0004EE5C A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 80053200 0004EE60 38 A0 00 00 */ li r5, 0 /* 80053204 0004EE64 48 20 0B AD */ bl func_80253DB0 /* 80053208 0004EE68 38 7E AC B0 */ addi r3, r30, -21328 /* 8005320C 0004EE6C 38 80 00 01 */ li r4, 1 /* 80053210 0004EE70 A8 63 00 02 */ lha r3, 2(r3) /* 80053214 0004EE74 38 A0 00 00 */ li r5, 0 /* 80053218 0004EE78 48 20 0B 99 */ bl func_80253DB0 /* 8005321C 0004EE7C 38 60 00 2F */ li r3, 0x2f /* 80053220 0004EE80 38 00 00 63 */ li r0, 0x63 /* 80053224 0004EE84 90 6D 98 6C */ stw r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053228 0004EE88 38 60 00 02 */ li r3, 2 /* 8005322C 0004EE8C 90 0D 98 80 */ stw r0, lbl_8063EB40-_SDA_BASE_(r13) /* 80053230 0004EE90 48 00 72 9D */ bl func_8005A4CC /* 80053234 0004EE94 48 00 04 04 */ b lbl_80053638 lbl_80053238: /* 80053238 0004EE98 2C 03 00 03 */ cmpwi r3, 3 /* 8005323C 0004EE9C 41 82 00 8C */ beq lbl_800532C8 /* 80053240 0004EEA0 40 80 00 14 */ bge lbl_80053254 /* 80053244 0004EEA4 2C 03 00 01 */ cmpwi r3, 1 /* 80053248 0004EEA8 41 82 00 18 */ beq lbl_80053260 /* 8005324C 0004EEAC 40 80 00 48 */ bge lbl_80053294 /* 80053250 0004EEB0 48 00 03 E8 */ b lbl_80053638 lbl_80053254: /* 80053254 0004EEB4 2C 03 00 63 */ cmpwi r3, 0x63 /* 80053258 0004EEB8 41 82 00 A4 */ beq lbl_800532FC /* 8005325C 0004EEBC 48 00 03 DC */ b lbl_80053638 lbl_80053260: /* 80053260 0004EEC0 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80053264 0004EEC4 38 80 00 00 */ li r4, 0 /* 80053268 0004EEC8 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 8005326C 0004EECC 38 A0 00 00 */ li r5, 0 /* 80053270 0004EED0 48 20 0B 41 */ bl func_80253DB0 /* 80053274 0004EED4 38 7E AC B0 */ addi r3, r30, -21328 /* 80053278 0004EED8 38 80 00 06 */ li r4, 6 /* 8005327C 0004EEDC A8 63 00 02 */ lha r3, 2(r3) /* 80053280 0004EEE0 38 A0 00 00 */ li r5, 0 /* 80053284 0004EEE4 48 20 0B 2D */ bl func_80253DB0 /* 80053288 0004EEE8 38 00 2E 55 */ li r0, 0x2e55 /* 8005328C 0004EEEC 90 0D 98 8C */ stw r0, lbl_8063EB4C-_SDA_BASE_(r13) /* 80053290 0004EEF0 48 00 03 A8 */ b lbl_80053638 lbl_80053294: /* 80053294 0004EEF4 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80053298 0004EEF8 38 80 00 01 */ li r4, 1 /* 8005329C 0004EEFC A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 800532A0 0004EF00 38 A0 00 00 */ li r5, 0 /* 800532A4 0004EF04 48 20 0B 0D */ bl func_80253DB0 /* 800532A8 0004EF08 38 7E AC B0 */ addi r3, r30, -21328 /* 800532AC 0004EF0C 38 80 00 06 */ li r4, 6 /* 800532B0 0004EF10 A8 63 00 02 */ lha r3, 2(r3) /* 800532B4 0004EF14 38 A0 00 00 */ li r5, 0 /* 800532B8 0004EF18 48 20 0A F9 */ bl func_80253DB0 /* 800532BC 0004EF1C 38 00 2E 56 */ li r0, 0x2e56 /* 800532C0 0004EF20 90 0D 98 8C */ stw r0, lbl_8063EB4C-_SDA_BASE_(r13) /* 800532C4 0004EF24 48 00 03 74 */ b lbl_80053638 lbl_800532C8: /* 800532C8 0004EF28 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 800532CC 0004EF2C 38 80 00 02 */ li r4, 2 /* 800532D0 0004EF30 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 800532D4 0004EF34 38 A0 00 00 */ li r5, 0 /* 800532D8 0004EF38 48 20 0A D9 */ bl func_80253DB0 /* 800532DC 0004EF3C 38 7E AC B0 */ addi r3, r30, -21328 /* 800532E0 0004EF40 38 80 00 06 */ li r4, 6 /* 800532E4 0004EF44 A8 63 00 02 */ lha r3, 2(r3) /* 800532E8 0004EF48 38 A0 00 00 */ li r5, 0 /* 800532EC 0004EF4C 48 20 0A C5 */ bl func_80253DB0 /* 800532F0 0004EF50 38 00 2E 57 */ li r0, 0x2e57 /* 800532F4 0004EF54 90 0D 98 8C */ stw r0, lbl_8063EB4C-_SDA_BASE_(r13) /* 800532F8 0004EF58 48 00 03 40 */ b lbl_80053638 lbl_800532FC: /* 800532FC 0004EF5C 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80053300 0004EF60 38 80 00 06 */ li r4, 6 /* 80053304 0004EF64 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 80053308 0004EF68 38 A0 00 00 */ li r5, 0 /* 8005330C 0004EF6C 48 20 0A A5 */ bl func_80253DB0 /* 80053310 0004EF70 38 7E AC B0 */ addi r3, r30, -21328 /* 80053314 0004EF74 38 80 00 00 */ li r4, 0 /* 80053318 0004EF78 A8 63 00 02 */ lha r3, 2(r3) /* 8005331C 0004EF7C 38 A0 00 00 */ li r5, 0 /* 80053320 0004EF80 48 20 0A 91 */ bl func_80253DB0 /* 80053324 0004EF84 38 00 52 56 */ li r0, 0x5256 /* 80053328 0004EF88 90 0D 98 8C */ stw r0, lbl_8063EB4C-_SDA_BASE_(r13) /* 8005332C 0004EF8C 48 00 03 0C */ b lbl_80053638 /* 80053330 0004EF90 80 0D 98 80 */ lwz r0, lbl_8063EB40-_SDA_BASE_(r13) /* 80053334 0004EF94 28 00 00 63 */ cmplwi r0, 0x63 /* 80053338 0004EF98 41 82 00 58 */ beq lbl_80053390 /* 8005333C 0004EF9C 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80053340 0004EFA0 A8 7E AC B0 */ lha r3, lbl_8040ACB0@l(r30) /* 80053344 0004EFA4 48 20 0A 8D */ bl func_80253DD0 /* 80053348 0004EFA8 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005334C 0004EFAC 28 00 00 03 */ cmplwi r0, 3 /* 80053350 0004EFB0 40 82 02 E8 */ bne lbl_80053638 /* 80053354 0004EFB4 80 0D 98 80 */ lwz r0, lbl_8063EB40-_SDA_BASE_(r13) /* 80053358 0004EFB8 28 00 00 03 */ cmplwi r0, 3 /* 8005335C 0004EFBC 40 82 00 24 */ bne lbl_80053380 /* 80053360 0004EFC0 48 02 9C 59 */ bl func_8007CFB8 /* 80053364 0004EFC4 38 00 00 32 */ li r0, 0x32 /* 80053368 0004EFC8 A8 7E AC B0 */ lha r3, -0x5350(r30) /* 8005336C 0004EFCC 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053370 0004EFD0 38 80 00 07 */ li r4, 7 /* 80053374 0004EFD4 38 A0 00 00 */ li r5, 0 /* 80053378 0004EFD8 48 20 0A 39 */ bl func_80253DB0 /* 8005337C 0004EFDC 48 00 02 BC */ b lbl_80053638 lbl_80053380: /* 80053380 0004EFE0 38 00 00 31 */ li r0, 0x31 /* 80053384 0004EFE4 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053388 0004EFE8 48 00 2E ED */ bl func_80056274 /* 8005338C 0004EFEC 48 00 02 AC */ b lbl_80053638 lbl_80053390: /* 80053390 0004EFF0 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 80053394 0004EFF4 3B FE AC B0 */ addi r31, r30, lbl_8040ACB0@l /* 80053398 0004EFF8 A8 7F 00 02 */ lha r3, 2(r31) /* 8005339C 0004EFFC 48 20 0A 35 */ bl func_80253DD0 /* 800533A0 0004F000 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 800533A4 0004F004 28 00 00 03 */ cmplwi r0, 3 /* 800533A8 0004F008 40 82 02 90 */ bne lbl_80053638 /* 800533AC 0004F00C 38 00 00 30 */ li r0, 0x30 /* 800533B0 0004F010 A8 7E AC B0 */ lha r3, -0x5350(r30) /* 800533B4 0004F014 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800533B8 0004F018 38 80 00 07 */ li r4, 7 /* 800533BC 0004F01C 38 A0 00 00 */ li r5, 0 /* 800533C0 0004F020 48 20 09 F1 */ bl func_80253DB0 /* 800533C4 0004F024 A8 7F 00 02 */ lha r3, 2(r31) /* 800533C8 0004F028 38 80 00 04 */ li r4, 4 /* 800533CC 0004F02C 38 A0 00 00 */ li r5, 0 /* 800533D0 0004F030 48 20 09 E1 */ bl func_80253DB0 /* 800533D4 0004F034 A8 7F 00 04 */ lha r3, 4(r31) /* 800533D8 0004F038 38 80 00 02 */ li r4, 2 /* 800533DC 0004F03C 38 A0 00 00 */ li r5, 0 /* 800533E0 0004F040 48 20 09 D1 */ bl func_80253DB0 /* 800533E4 0004F044 A8 7F 00 0C */ lha r3, 0xc(r31) /* 800533E8 0004F048 38 80 00 02 */ li r4, 2 /* 800533EC 0004F04C 38 A0 00 00 */ li r5, 0 /* 800533F0 0004F050 48 20 09 C1 */ bl func_80253DB0 /* 800533F4 0004F054 38 60 00 00 */ li r3, 0 /* 800533F8 0004F058 48 00 30 61 */ bl func_80056458 /* 800533FC 0004F05C 48 00 02 3C */ b lbl_80053638 /* 80053400 0004F060 3F E0 80 41 */ lis r31, lbl_8040ACB0@ha /* 80053404 0004F064 A8 7F AC B0 */ lha r3, lbl_8040ACB0@l(r31) /* 80053408 0004F068 48 20 09 C9 */ bl func_80253DD0 /* 8005340C 0004F06C 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80053410 0004F070 28 00 00 03 */ cmplwi r0, 3 /* 80053414 0004F074 40 82 02 24 */ bne lbl_80053638 /* 80053418 0004F078 A8 7F AC B0 */ lha r3, -0x5350(r31) /* 8005341C 0004F07C 38 80 00 08 */ li r4, 8 /* 80053420 0004F080 38 A0 00 00 */ li r5, 0 /* 80053424 0004F084 48 20 09 CD */ bl func_80253DF0 /* 80053428 0004F088 3B FF AC B0 */ addi r31, r31, -21328 /* 8005342C 0004F08C 38 80 00 08 */ li r4, 8 /* 80053430 0004F090 A8 7F 00 02 */ lha r3, 2(r31) /* 80053434 0004F094 38 A0 00 00 */ li r5, 0 /* 80053438 0004F098 48 20 09 B9 */ bl func_80253DF0 /* 8005343C 0004F09C A8 7F 00 04 */ lha r3, 4(r31) /* 80053440 0004F0A0 38 80 00 08 */ li r4, 8 /* 80053444 0004F0A4 38 A0 00 00 */ li r5, 0 /* 80053448 0004F0A8 48 20 09 A9 */ bl func_80253DF0 /* 8005344C 0004F0AC A8 7F 00 0C */ lha r3, 0xc(r31) /* 80053450 0004F0B0 38 80 00 08 */ li r4, 8 /* 80053454 0004F0B4 38 A0 00 00 */ li r5, 0 /* 80053458 0004F0B8 48 20 09 99 */ bl func_80253DF0 /* 8005345C 0004F0BC 38 60 00 00 */ li r3, 0 /* 80053460 0004F0C0 48 00 2F F9 */ bl func_80056458 /* 80053464 0004F0C4 38 60 00 03 */ li r3, 3 /* 80053468 0004F0C8 38 80 00 01 */ li r4, 1 /* 8005346C 0004F0CC 48 00 2F 81 */ bl func_800563EC /* 80053470 0004F0D0 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053474 0004F0D4 48 00 15 19 */ bl func_8005498C /* 80053478 0004F0D8 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 8005347C 0004F0DC 38 80 00 01 */ li r4, 1 /* 80053480 0004F0E0 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80053484 0004F0E4 38 A0 00 01 */ li r5, 1 /* 80053488 0004F0E8 38 C0 00 00 */ li r6, 0 /* 8005348C 0004F0EC 38 E0 00 00 */ li r7, 0 /* 80053490 0004F0F0 39 00 00 00 */ li r8, 0 /* 80053494 0004F0F4 48 1A 19 61 */ bl func_801F4DF4 /* 80053498 0004F0F8 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005349C 0004F0FC 48 00 13 59 */ bl func_800547F4 /* 800534A0 0004F100 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 800534A4 0004F104 38 80 00 01 */ li r4, 1 /* 800534A8 0004F108 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 800534AC 0004F10C 38 A0 00 01 */ li r5, 1 /* 800534B0 0004F110 38 C0 00 00 */ li r6, 0 /* 800534B4 0004F114 38 E0 00 00 */ li r7, 0 /* 800534B8 0004F118 39 00 00 00 */ li r8, 0 /* 800534BC 0004F11C 48 1A 19 39 */ bl func_801F4DF4 /* 800534C0 0004F120 38 60 00 00 */ li r3, 0 /* 800534C4 0004F124 38 00 00 13 */ li r0, 0x13 /* 800534C8 0004F128 90 6D 98 8C */ stw r3, lbl_8063EB4C-_SDA_BASE_(r13) /* 800534CC 0004F12C 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 800534D0 0004F130 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800534D4 0004F134 C8 42 85 18 */ lfd f2, lbl_80640B18-_SDA2_BASE_(r2) /* 800534D8 0004F138 88 03 00 59 */ lbz r0, 0x59(r3) /* 800534DC 0004F13C C8 03 00 A0 */ lfd f0, 0xa0(r3) /* 800534E0 0004F140 90 01 00 3C */ stw r0, 0x3c(r1) /* 800534E4 0004F144 C8 21 00 38 */ lfd f1, 0x38(r1) /* 800534E8 0004F148 FC 21 10 28 */ fsub f1, f1, f2 /* 800534EC 0004F14C FC 00 08 24 */ fdiv f0, f0, f1 /* 800534F0 0004F150 D8 0D 98 78 */ stfd f0, lbl_8063EB38-_SDA_BASE_(r13) /* 800534F4 0004F154 48 00 01 44 */ b lbl_80053638 /* 800534F8 0004F158 48 00 2E 01 */ bl func_800562F8 /* 800534FC 0004F15C 2C 03 00 00 */ cmpwi r3, 0 /* 80053500 0004F160 41 82 01 38 */ beq lbl_80053638 /* 80053504 0004F164 80 0D 98 80 */ lwz r0, lbl_8063EB40-_SDA_BASE_(r13) /* 80053508 0004F168 2C 00 00 02 */ cmpwi r0, 2 /* 8005350C 0004F16C 41 82 00 24 */ beq lbl_80053530 /* 80053510 0004F170 40 80 01 28 */ bge lbl_80053638 /* 80053514 0004F174 2C 00 00 01 */ cmpwi r0, 1 /* 80053518 0004F178 40 80 00 08 */ bge lbl_80053520 /* 8005351C 0004F17C 48 00 01 1C */ b lbl_80053638 lbl_80053520: /* 80053520 0004F180 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 80053524 0004F184 38 80 08 34 */ li r4, 0x834 /* 80053528 0004F188 48 1D 32 81 */ bl func_802267A8 /* 8005352C 0004F18C 48 00 01 0C */ b lbl_80053638 lbl_80053530: /* 80053530 0004F190 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 80053534 0004F194 38 80 0A F1 */ li r4, 0xaf1 /* 80053538 0004F198 48 1D 32 71 */ bl func_802267A8 /* 8005353C 0004F19C 48 00 00 FC */ b lbl_80053638 /* 80053540 0004F1A0 3F E0 80 41 */ lis r31, lbl_8040ACB0@ha /* 80053544 0004F1A4 A8 7F AC B0 */ lha r3, lbl_8040ACB0@l(r31) /* 80053548 0004F1A8 48 20 08 89 */ bl func_80253DD0 /* 8005354C 0004F1AC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80053550 0004F1B0 28 00 00 03 */ cmplwi r0, 3 /* 80053554 0004F1B4 40 82 00 E4 */ bne lbl_80053638 /* 80053558 0004F1B8 A8 7F AC B0 */ lha r3, -0x5350(r31) /* 8005355C 0004F1BC 38 80 00 08 */ li r4, 8 /* 80053560 0004F1C0 38 A0 00 00 */ li r5, 0 /* 80053564 0004F1C4 48 20 08 8D */ bl func_80253DF0 /* 80053568 0004F1C8 38 80 00 33 */ li r4, 0x33 /* 8005356C 0004F1CC 38 60 00 00 */ li r3, 0 /* 80053570 0004F1D0 38 00 00 01 */ li r0, 1 /* 80053574 0004F1D4 90 8D 98 6C */ stw r4, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053578 0004F1D8 98 6D 81 CC */ stb r3, lbl_8063D48C-_SDA_BASE_(r13) /* 8005357C 0004F1DC 98 0D 81 CD */ stb r0, lbl_8063D48D-_SDA_BASE_(r13) /* 80053580 0004F1E0 48 02 9E 4D */ bl func_8007D3CC /* 80053584 0004F1E4 38 00 2E 55 */ li r0, 0x2e55 /* 80053588 0004F1E8 90 0D 98 8C */ stw r0, lbl_8063EB4C-_SDA_BASE_(r13) /* 8005358C 0004F1EC 48 00 00 AC */ b lbl_80053638 /* 80053590 0004F1F0 48 02 9E 5D */ bl func_8007D3EC /* 80053594 0004F1F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80053598 0004F1F8 41 82 00 A0 */ beq lbl_80053638 /* 8005359C 0004F1FC 48 02 9D 25 */ bl func_8007D2C0 /* 800535A0 0004F200 38 00 00 34 */ li r0, 0x34 /* 800535A4 0004F204 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800535A8 0004F208 48 00 00 90 */ b lbl_80053638 /* 800535AC 0004F20C 38 60 00 01 */ li r3, 1 /* 800535B0 0004F210 38 00 00 2C */ li r0, 0x2c /* 800535B4 0004F214 98 6D 81 CC */ stb r3, lbl_8063D48C-_SDA_BASE_(r13) /* 800535B8 0004F218 98 6D 81 CD */ stb r3, lbl_8063D48D-_SDA_BASE_(r13) /* 800535BC 0004F21C 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800535C0 0004F220 48 10 C0 D1 */ bl func_8015F690 /* 800535C4 0004F224 7C 7F 1B 78 */ mr r31, r3 /* 800535C8 0004F228 4B FB 92 21 */ bl func_8000C7E8 /* 800535CC 0004F22C 88 9F 00 45 */ lbz r4, 0x45(r31) /* 800535D0 0004F230 4B FB A2 41 */ bl func_8000D810 /* 800535D4 0004F234 80 1F 00 4C */ lwz r0, 0x4c(r31) /* 800535D8 0004F238 2C 00 00 02 */ cmpwi r0, 2 /* 800535DC 0004F23C 40 82 00 10 */ bne lbl_800535EC /* 800535E0 0004F240 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13) /* 800535E4 0004F244 48 1F 11 65 */ bl func_80244748 /* 800535E8 0004F248 48 00 00 50 */ b lbl_80053638 lbl_800535EC: /* 800535EC 0004F24C 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13) /* 800535F0 0004F250 48 1F 11 0D */ bl func_802446FC /* 800535F4 0004F254 48 00 00 44 */ b lbl_80053638 /* 800535F8 0004F258 48 10 C0 99 */ bl func_8015F690 /* 800535FC 0004F25C 7C 7F 1B 78 */ mr r31, r3 /* 80053600 0004F260 4B FB 91 E9 */ bl func_8000C7E8 /* 80053604 0004F264 88 9F 00 45 */ lbz r4, 0x45(r31) /* 80053608 0004F268 4B FB A2 09 */ bl func_8000D810 /* 8005360C 0004F26C 80 1F 00 4C */ lwz r0, 0x4c(r31) /* 80053610 0004F270 2C 00 00 02 */ cmpwi r0, 2 /* 80053614 0004F274 40 82 00 10 */ bne lbl_80053624 /* 80053618 0004F278 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13) /* 8005361C 0004F27C 48 1F 11 2D */ bl func_80244748 /* 80053620 0004F280 48 00 00 0C */ b lbl_8005362C lbl_80053624: /* 80053624 0004F284 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13) /* 80053628 0004F288 48 1F 10 D5 */ bl func_802446FC lbl_8005362C: /* 8005362C 0004F28C 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 80053630 0004F290 38 80 0A F1 */ li r4, 0xaf1 /* 80053634 0004F294 48 1D 31 75 */ bl func_802267A8 lbl_80053638: /* 80053638 0004F298 80 01 00 54 */ lwz r0, 0x54(r1) /* 8005363C 0004F29C 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 80053640 0004F2A0 83 C1 00 48 */ lwz r30, 0x48(r1) /* 80053644 0004F2A4 7C 08 03 A6 */ mtlr r0 /* 80053648 0004F2A8 38 21 00 50 */ addi r1, r1, 0x50 /* 8005364C 0004F2AC 4E 80 00 20 */ blr /* 80053650 0004F2B0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053654 0004F2B4 7C 08 02 A6 */ mflr r0 /* 80053658 0004F2B8 90 01 00 24 */ stw r0, 0x24(r1) /* 8005365C 0004F2BC 39 61 00 20 */ addi r11, r1, 0x20 /* 80053660 0004F2C0 48 17 3A C9 */ bl _savegpr_27 /* 80053664 0004F2C4 88 0D 81 CC */ lbz r0, lbl_8063D48C-_SDA_BASE_(r13) /* 80053668 0004F2C8 2C 00 00 00 */ cmpwi r0, 0 /* 8005366C 0004F2CC 41 82 00 B8 */ beq lbl_80053724 /* 80053670 0004F2D0 3F 60 80 41 */ lis r27, lbl_8040ACB0@ha /* 80053674 0004F2D4 A0 7B AC B0 */ lhz r3, lbl_8040ACB0@l(r27) /* 80053678 0004F2D8 48 20 06 55 */ bl func_80253CCC /* 8005367C 0004F2DC 3B 9B AC B0 */ addi r28, r27, -21328 /* 80053680 0004F2E0 A0 7C 00 02 */ lhz r3, 2(r28) /* 80053684 0004F2E4 48 20 06 49 */ bl func_80253CCC /* 80053688 0004F2E8 A0 7C 00 04 */ lhz r3, 4(r28) /* 8005368C 0004F2EC 48 20 06 41 */ bl func_80253CCC /* 80053690 0004F2F0 A0 7C 00 06 */ lhz r3, 6(r28) /* 80053694 0004F2F4 48 20 06 39 */ bl func_80253CCC /* 80053698 0004F2F8 A0 7C 00 08 */ lhz r3, 8(r28) /* 8005369C 0004F2FC 48 20 06 31 */ bl func_80253CCC /* 800536A0 0004F300 A0 7C 00 0A */ lhz r3, 0xa(r28) /* 800536A4 0004F304 48 20 06 29 */ bl func_80253CCC /* 800536A8 0004F308 3F A0 80 47 */ lis r29, lbl_804753B0@ha /* 800536AC 0004F30C 80 7D 53 B0 */ lwz r3, lbl_804753B0@l(r29) /* 800536B0 0004F310 48 00 27 81 */ bl func_80055E30 /* 800536B4 0004F314 3B DD 53 B0 */ addi r30, r29, 0x53b0 /* 800536B8 0004F318 80 7E 00 04 */ lwz r3, 4(r30) /* 800536BC 0004F31C 48 00 27 75 */ bl func_80055E30 /* 800536C0 0004F320 80 7E 00 08 */ lwz r3, 8(r30) /* 800536C4 0004F324 48 00 27 6D */ bl func_80055E30 /* 800536C8 0004F328 80 7E 00 0C */ lwz r3, 0xc(r30) /* 800536CC 0004F32C 48 00 27 65 */ bl func_80055E30 /* 800536D0 0004F330 80 7E 00 10 */ lwz r3, 0x10(r30) /* 800536D4 0004F334 48 00 27 5D */ bl func_80055E30 /* 800536D8 0004F338 80 7E 00 14 */ lwz r3, 0x14(r30) /* 800536DC 0004F33C 48 00 27 55 */ bl func_80055E30 /* 800536E0 0004F340 3B E0 FF FF */ li r31, -1 /* 800536E4 0004F344 38 00 00 00 */ li r0, 0 /* 800536E8 0004F348 B3 FB AC B0 */ sth r31, -0x5350(r27) /* 800536EC 0004F34C 80 6D 98 68 */ lwz r3, lbl_8063EB28-_SDA_BASE_(r13) /* 800536F0 0004F350 90 1D 53 B0 */ stw r0, 0x53b0(r29) /* 800536F4 0004F354 B3 FC 00 02 */ sth r31, 2(r28) /* 800536F8 0004F358 90 1E 00 04 */ stw r0, 4(r30) /* 800536FC 0004F35C B3 FC 00 04 */ sth r31, 4(r28) /* 80053700 0004F360 90 1E 00 08 */ stw r0, 8(r30) /* 80053704 0004F364 B3 FC 00 06 */ sth r31, 6(r28) /* 80053708 0004F368 90 1E 00 0C */ stw r0, 0xc(r30) /* 8005370C 0004F36C B3 FC 00 08 */ sth r31, 8(r28) /* 80053710 0004F370 90 1E 00 10 */ stw r0, 0x10(r30) /* 80053714 0004F374 B3 FC 00 0A */ sth r31, 0xa(r28) /* 80053718 0004F378 90 1E 00 14 */ stw r0, 0x14(r30) /* 8005371C 0004F37C 48 20 08 71 */ bl func_80253F8C /* 80053720 0004F380 93 ED 98 68 */ stw r31, lbl_8063EB28-_SDA_BASE_(r13) lbl_80053724: /* 80053724 0004F384 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053728 0004F388 48 00 10 09 */ bl func_80054730 /* 8005372C 0004F38C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053730 0004F390 48 00 11 E5 */ bl func_80054914 /* 80053734 0004F394 38 00 00 00 */ li r0, 0 /* 80053738 0004F398 38 60 03 E8 */ li r3, 0x3e8 /* 8005373C 0004F39C 90 0D 98 84 */ stw r0, lbl_8063EB44-_SDA_BASE_(r13) /* 80053740 0004F3A0 48 1F 61 51 */ bl func_80249890 /* 80053744 0004F3A4 38 60 03 E8 */ li r3, 0x3e8 /* 80053748 0004F3A8 48 18 7F 2D */ bl func_801DB674 /* 8005374C 0004F3AC 38 60 00 01 */ li r3, 1 /* 80053750 0004F3B0 4B FB 3E 15 */ bl func_80007564 /* 80053754 0004F3B4 39 61 00 20 */ addi r11, r1, 0x20 /* 80053758 0004F3B8 48 17 3A 1D */ bl _restgpr_27 /* 8005375C 0004F3BC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80053760 0004F3C0 7C 08 03 A6 */ mtlr r0 /* 80053764 0004F3C4 38 21 00 20 */ addi r1, r1, 0x20 /* 80053768 0004F3C8 4E 80 00 20 */ blr /* 8005376C 0004F3CC 4E 80 00 20 */ blr lbl_80053770: /* 80053770 0004F3D0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80053774 0004F3D4 7C 08 02 A6 */ mflr r0 /* 80053778 0004F3D8 90 01 00 34 */ stw r0, 0x34(r1) /* 8005377C 0004F3DC DB E1 00 20 */ stfd f31, 0x20(r1) /* 80053780 0004F3E0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80053784 0004F3E4 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80053788 0004F3E8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8005378C 0004F3EC FC 40 08 90 */ fmr f2, f1 /* 80053790 0004F3F0 C0 62 85 20 */ lfs f3, lbl_80640B20-_SDA2_BASE_(r2) /* 80053794 0004F3F4 FC A0 08 90 */ fmr f5, f1 /* 80053798 0004F3F8 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005379C 0004F3FC C0 82 85 24 */ lfs f4, lbl_80640B24-_SDA2_BASE_(r2) /* 800537A0 0004F400 C0 C2 85 28 */ lfs f6, lbl_80640B28-_SDA2_BASE_(r2) /* 800537A4 0004F404 48 1E 14 55 */ bl func_80234BF8 /* 800537A8 0004F408 80 0D 98 6C */ lwz r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800537AC 0004F40C 28 00 00 2E */ cmplwi r0, 0x2e /* 800537B0 0004F410 41 81 03 40 */ bgt lbl_80053AF0 /* 800537B4 0004F414 3C 60 80 41 */ lis r3, lbl_8040ADCC@ha /* 800537B8 0004F418 54 00 10 3A */ slwi r0, r0, 2 /* 800537BC 0004F41C 38 63 AD CC */ addi r3, r3, lbl_8040ADCC@l /* 800537C0 0004F420 7C 63 00 2E */ lwzx r3, r3, r0 /* 800537C4 0004F424 7C 69 03 A6 */ mtctr r3 /* 800537C8 0004F428 4E 80 04 20 */ bctr /* 800537CC 0004F42C 48 00 2A F1 */ bl func_800562BC /* 800537D0 0004F430 38 00 00 02 */ li r0, 2 /* 800537D4 0004F434 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800537D8 0004F438 48 00 03 18 */ b lbl_80053AF0 /* 800537DC 0004F43C 48 00 2B 1D */ bl func_800562F8 /* 800537E0 0004F440 2C 03 00 00 */ cmpwi r3, 0 /* 800537E4 0004F444 41 82 03 0C */ beq lbl_80053AF0 /* 800537E8 0004F448 38 60 00 01 */ li r3, 1 /* 800537EC 0004F44C 48 00 26 C9 */ bl func_80055EB4 /* 800537F0 0004F450 48 10 BF B1 */ bl func_8015F7A0 /* 800537F4 0004F454 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 800537F8 0004F458 38 00 00 03 */ li r0, 3 /* 800537FC 0004F45C 38 60 00 00 */ li r3, 0 /* 80053800 0004F460 D8 24 00 00 */ stfd f1, 0(r4) /* 80053804 0004F464 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053808 0004F468 48 00 0C 8D */ bl func_80054494 /* 8005380C 0004F46C 48 00 02 E4 */ b lbl_80053AF0 /* 80053810 0004F470 48 10 BF 91 */ bl func_8015F7A0 /* 80053814 0004F474 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053818 0004F478 C8 42 85 30 */ lfd f2, lbl_80640B30-_SDA2_BASE_(r2) /* 8005381C 0004F47C C8 63 00 00 */ lfd f3, 0(r3) /* 80053820 0004F480 C0 02 84 EC */ lfs f0, lbl_80640AEC-_SDA2_BASE_(r2) /* 80053824 0004F484 FC 21 18 28 */ fsub f1, f1, f3 /* 80053828 0004F488 FF E2 00 72 */ fmul f31, f2, f1 /* 8005382C 0004F48C FF E0 F8 18 */ frsp f31, f31 /* 80053830 0004F490 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80053834 0004F494 4C 41 13 82 */ cror 2, 1, 2 /* 80053838 0004F498 40 82 00 1C */ bne lbl_80053854 /* 8005383C 0004F49C 38 00 00 04 */ li r0, 4 /* 80053840 0004F4A0 FF E0 00 90 */ fmr f31, f0 /* 80053844 0004F4A4 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053848 0004F4A8 48 10 BF 59 */ bl func_8015F7A0 /* 8005384C 0004F4AC 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053850 0004F4B0 D8 23 00 00 */ stfd f1, 0(r3) lbl_80053854: /* 80053854 0004F4B4 C0 02 85 38 */ lfs f0, lbl_80640B38-_SDA2_BASE_(r2) /* 80053858 0004F4B8 EC 00 07 F2 */ fmuls f0, f0, f31 /* 8005385C 0004F4BC FC 00 00 1E */ fctiwz f0, f0 /* 80053860 0004F4C0 D8 01 00 08 */ stfd f0, 8(r1) /* 80053864 0004F4C4 80 61 00 0C */ lwz r3, 0xc(r1) /* 80053868 0004F4C8 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8005386C 0004F4CC 48 00 0C 29 */ bl func_80054494 /* 80053870 0004F4D0 48 00 02 80 */ b lbl_80053AF0 /* 80053874 0004F4D4 48 10 BF 2D */ bl func_8015F7A0 /* 80053878 0004F4D8 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005387C 0004F4DC C0 02 84 EC */ lfs f0, lbl_80640AEC-_SDA2_BASE_(r2) /* 80053880 0004F4E0 C8 43 00 00 */ lfd f2, 0(r3) /* 80053884 0004F4E4 FC 21 10 28 */ fsub f1, f1, f2 /* 80053888 0004F4E8 FC 20 08 18 */ frsp f1, f1 /* 8005388C 0004F4EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80053890 0004F4F0 4C 41 13 82 */ cror 2, 1, 2 /* 80053894 0004F4F4 40 82 00 0C */ bne lbl_800538A0 /* 80053898 0004F4F8 38 00 00 05 */ li r0, 5 /* 8005389C 0004F4FC 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) lbl_800538A0: /* 800538A0 0004F500 38 60 00 FF */ li r3, 0xff /* 800538A4 0004F504 48 00 0B F1 */ bl func_80054494 /* 800538A8 0004F508 48 00 02 48 */ b lbl_80053AF0 /* 800538AC 0004F50C 48 10 BE F5 */ bl func_8015F7A0 /* 800538B0 0004F510 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800538B4 0004F514 C0 02 85 3C */ lfs f0, lbl_80640B3C-_SDA2_BASE_(r2) /* 800538B8 0004F518 C8 43 00 00 */ lfd f2, 0(r3) /* 800538BC 0004F51C FC 21 10 28 */ fsub f1, f1, f2 /* 800538C0 0004F520 FC 20 08 18 */ frsp f1, f1 /* 800538C4 0004F524 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800538C8 0004F528 4C 41 13 82 */ cror 2, 1, 2 /* 800538CC 0004F52C 40 82 00 18 */ bne lbl_800538E4 /* 800538D0 0004F530 38 00 00 06 */ li r0, 6 /* 800538D4 0004F534 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800538D8 0004F538 48 10 BE C9 */ bl func_8015F7A0 /* 800538DC 0004F53C 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 800538E0 0004F540 D8 23 00 00 */ stfd f1, 0(r3) lbl_800538E4: /* 800538E4 0004F544 38 60 00 80 */ li r3, 0x80 /* 800538E8 0004F548 38 80 00 01 */ li r4, 1 /* 800538EC 0004F54C 38 A0 00 00 */ li r5, 0 /* 800538F0 0004F550 38 C0 00 01 */ li r6, 1 /* 800538F4 0004F554 48 00 61 79 */ bl func_80059A6C /* 800538F8 0004F558 3C 03 80 00 */ addis r0, r3, 0x8000 /* 800538FC 0004F55C 28 00 00 00 */ cmplwi r0, 0 /* 80053900 0004F560 40 82 00 18 */ bne lbl_80053918 /* 80053904 0004F564 38 00 00 06 */ li r0, 6 /* 80053908 0004F568 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 8005390C 0004F56C 48 10 BE 95 */ bl func_8015F7A0 /* 80053910 0004F570 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053914 0004F574 D8 23 00 00 */ stfd f1, 0(r3) lbl_80053918: /* 80053918 0004F578 38 60 00 FF */ li r3, 0xff /* 8005391C 0004F57C 48 00 0B 79 */ bl func_80054494 /* 80053920 0004F580 48 00 01 D0 */ b lbl_80053AF0 /* 80053924 0004F584 48 10 BE 7D */ bl func_8015F7A0 /* 80053928 0004F588 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 8005392C 0004F58C C8 42 85 30 */ lfd f2, lbl_80640B30-_SDA2_BASE_(r2) /* 80053930 0004F590 C8 63 00 00 */ lfd f3, 0(r3) /* 80053934 0004F594 C0 02 84 EC */ lfs f0, lbl_80640AEC-_SDA2_BASE_(r2) /* 80053938 0004F598 FC 21 18 28 */ fsub f1, f1, f3 /* 8005393C 0004F59C FF E2 00 72 */ fmul f31, f2, f1 /* 80053940 0004F5A0 FF E0 F8 18 */ frsp f31, f31 /* 80053944 0004F5A4 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 80053948 0004F5A8 4C 41 13 82 */ cror 2, 1, 2 /* 8005394C 0004F5AC 40 82 00 1C */ bne lbl_80053968 /* 80053950 0004F5B0 38 00 00 07 */ li r0, 7 /* 80053954 0004F5B4 FF E0 00 90 */ fmr f31, f0 /* 80053958 0004F5B8 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 8005395C 0004F5BC 48 10 BE 45 */ bl func_8015F7A0 /* 80053960 0004F5C0 80 6D 81 C8 */ lwz r3, lbl_8063D488-_SDA_BASE_(r13) /* 80053964 0004F5C4 D8 23 00 00 */ stfd f1, 0(r3) lbl_80053968: /* 80053968 0004F5C8 C0 22 84 EC */ lfs f1, lbl_80640AEC-_SDA2_BASE_(r2) /* 8005396C 0004F5CC C0 02 85 38 */ lfs f0, lbl_80640B38-_SDA2_BASE_(r2) /* 80053970 0004F5D0 EC 21 F8 28 */ fsubs f1, f1, f31 /* 80053974 0004F5D4 EC 00 00 72 */ fmuls f0, f0, f1 /* 80053978 0004F5D8 FC 00 00 1E */ fctiwz f0, f0 /* 8005397C 0004F5DC D8 01 00 08 */ stfd f0, 8(r1) /* 80053980 0004F5E0 80 61 00 0C */ lwz r3, 0xc(r1) /* 80053984 0004F5E4 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 80053988 0004F5E8 48 00 0B 0D */ bl func_80054494 /* 8005398C 0004F5EC 48 00 01 64 */ b lbl_80053AF0 /* 80053990 0004F5F0 C0 42 85 3C */ lfs f2, lbl_80640B3C-_SDA2_BASE_(r2) /* 80053994 0004F5F4 38 00 00 0E */ li r0, 0xe /* 80053998 0004F5F8 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 8005399C 0004F5FC 38 60 00 00 */ li r3, 0 /* 800539A0 0004F600 C0 02 85 0C */ lfs f0, lbl_80640B0C-_SDA2_BASE_(r2) /* 800539A4 0004F604 EC 22 00 72 */ fmuls f1, f2, f1 /* 800539A8 0004F608 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 800539AC 0004F60C EC 00 08 2A */ fadds f0, f0, f1 /* 800539B0 0004F610 FC 00 00 1E */ fctiwz f0, f0 /* 800539B4 0004F614 D8 01 00 08 */ stfd f0, 8(r1) /* 800539B8 0004F618 80 01 00 0C */ lwz r0, 0xc(r1) /* 800539BC 0004F61C 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 800539C0 0004F620 48 00 0A D5 */ bl func_80054494 /* 800539C4 0004F624 38 60 00 03 */ li r3, 3 /* 800539C8 0004F628 38 80 00 01 */ li r4, 1 /* 800539CC 0004F62C 48 00 2A 21 */ bl func_800563EC /* 800539D0 0004F630 48 00 01 20 */ b lbl_80053AF0 /* 800539D4 0004F634 48 00 58 69 */ bl func_8005923C /* 800539D8 0004F638 2C 03 00 00 */ cmpwi r3, 0 /* 800539DC 0004F63C 41 82 01 14 */ beq lbl_80053AF0 /* 800539E0 0004F640 C0 42 85 3C */ lfs f2, lbl_80640B3C-_SDA2_BASE_(r2) /* 800539E4 0004F644 38 00 00 0E */ li r0, 0xe /* 800539E8 0004F648 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 800539EC 0004F64C 38 60 00 03 */ li r3, 3 /* 800539F0 0004F650 C0 02 85 0C */ lfs f0, lbl_80640B0C-_SDA2_BASE_(r2) /* 800539F4 0004F654 38 80 00 01 */ li r4, 1 /* 800539F8 0004F658 EC 22 00 72 */ fmuls f1, f2, f1 /* 800539FC 0004F65C 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053A00 0004F660 EC 00 08 2A */ fadds f0, f0, f1 /* 80053A04 0004F664 FC 00 00 1E */ fctiwz f0, f0 /* 80053A08 0004F668 D8 01 00 08 */ stfd f0, 8(r1) /* 80053A0C 0004F66C 80 01 00 0C */ lwz r0, 0xc(r1) /* 80053A10 0004F670 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80053A14 0004F674 48 00 29 D9 */ bl func_800563EC /* 80053A18 0004F678 48 00 28 19 */ bl func_80056230 /* 80053A1C 0004F67C 48 00 00 D4 */ b lbl_80053AF0 /* 80053A20 0004F680 4B FB 5D D1 */ bl func_800097F0 /* 80053A24 0004F684 48 10 9B 5D */ bl func_8015D580 /* 80053A28 0004F688 2C 03 00 00 */ cmpwi r3, 0 /* 80053A2C 0004F68C 41 82 00 C4 */ beq lbl_80053AF0 /* 80053A30 0004F690 48 10 AB FD */ bl func_8015E62C /* 80053A34 0004F694 2C 03 00 00 */ cmpwi r3, 0 /* 80053A38 0004F698 41 82 00 34 */ beq lbl_80053A6C /* 80053A3C 0004F69C C0 42 85 40 */ lfs f2, lbl_80640B40-_SDA2_BASE_(r2) /* 80053A40 0004F6A0 38 00 00 1E */ li r0, 0x1e /* 80053A44 0004F6A4 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 80053A48 0004F6A8 C0 02 85 0C */ lfs f0, lbl_80640B0C-_SDA2_BASE_(r2) /* 80053A4C 0004F6AC EC 22 00 72 */ fmuls f1, f2, f1 /* 80053A50 0004F6B0 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053A54 0004F6B4 EC 00 08 2A */ fadds f0, f0, f1 /* 80053A58 0004F6B8 FC 00 00 1E */ fctiwz f0, f0 /* 80053A5C 0004F6BC D8 01 00 08 */ stfd f0, 8(r1) /* 80053A60 0004F6C0 80 01 00 0C */ lwz r0, 0xc(r1) /* 80053A64 0004F6C4 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80053A68 0004F6C8 48 00 00 48 */ b lbl_80053AB0 lbl_80053A6C: /* 80053A6C 0004F6CC C0 42 85 40 */ lfs f2, lbl_80640B40-_SDA2_BASE_(r2) /* 80053A70 0004F6D0 38 00 00 23 */ li r0, 0x23 /* 80053A74 0004F6D4 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 80053A78 0004F6D8 C0 02 85 0C */ lfs f0, lbl_80640B0C-_SDA2_BASE_(r2) /* 80053A7C 0004F6DC EC 22 00 72 */ fmuls f1, f2, f1 /* 80053A80 0004F6E0 90 0D 98 6C */ stw r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053A84 0004F6E4 EC 00 08 2A */ fadds f0, f0, f1 /* 80053A88 0004F6E8 FC 00 00 1E */ fctiwz f0, f0 /* 80053A8C 0004F6EC D8 01 00 08 */ stfd f0, 8(r1) /* 80053A90 0004F6F0 80 01 00 0C */ lwz r0, 0xc(r1) /* 80053A94 0004F6F4 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80053A98 0004F6F8 48 10 BB C9 */ bl func_8015F660 /* 80053A9C 0004F6FC 3C 03 00 01 */ addis r0, r3, 1 /* 80053AA0 0004F700 28 00 FF FF */ cmplwi r0, 0xffff /* 80053AA4 0004F704 40 82 00 0C */ bne lbl_80053AB0 /* 80053AA8 0004F708 38 00 00 00 */ li r0, 0 /* 80053AAC 0004F70C 90 0D 98 70 */ stw r0, lbl_8063EB30-_SDA_BASE_(r13) lbl_80053AB0: /* 80053AB0 0004F710 48 10 BB E1 */ bl func_8015F690 /* 80053AB4 0004F714 7C 7F 1B 78 */ mr r31, r3 /* 80053AB8 0004F718 4B FB 8D 31 */ bl func_8000C7E8 /* 80053ABC 0004F71C 88 9F 00 45 */ lbz r4, 0x45(r31) /* 80053AC0 0004F720 4B FB 9D 51 */ bl func_8000D810 /* 80053AC4 0004F724 80 1F 00 4C */ lwz r0, 0x4c(r31) /* 80053AC8 0004F728 2C 00 00 02 */ cmpwi r0, 2 /* 80053ACC 0004F72C 40 82 00 10 */ bne lbl_80053ADC /* 80053AD0 0004F730 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13) /* 80053AD4 0004F734 48 1F 0C 75 */ bl func_80244748 /* 80053AD8 0004F738 48 00 00 0C */ b lbl_80053AE4 lbl_80053ADC: /* 80053ADC 0004F73C 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13) /* 80053AE0 0004F740 48 1F 0C 1D */ bl func_802446FC lbl_80053AE4: /* 80053AE4 0004F744 4B FB 5C F5 */ bl func_800097D8 /* 80053AE8 0004F748 48 00 00 08 */ b lbl_80053AF0 /* 80053AEC 0004F74C 48 00 69 61 */ bl func_8005A44C lbl_80053AF0: /* 80053AF0 0004F750 80 6D 98 6C */ lwz r3, lbl_8063EB2C-_SDA_BASE_(r13) /* 80053AF4 0004F754 38 03 FF E2 */ addi r0, r3, -30 /* 80053AF8 0004F758 28 00 00 16 */ cmplwi r0, 0x16 /* 80053AFC 0004F75C 41 81 01 30 */ bgt lbl_80053C2C /* 80053B00 0004F760 3C 60 80 41 */ lis r3, lbl_8040AD70@ha /* 80053B04 0004F764 54 00 10 3A */ slwi r0, r0, 2 /* 80053B08 0004F768 38 63 AD 70 */ addi r3, r3, lbl_8040AD70@l /* 80053B0C 0004F76C 7C 63 00 2E */ lwzx r3, r3, r0 /* 80053B10 0004F770 7C 69 03 A6 */ mtctr r3 /* 80053B14 0004F774 4E 80 04 20 */ bctr /* 80053B18 0004F778 48 10 BB 49 */ bl func_8015F660 /* 80053B1C 0004F77C 7C 64 1B 78 */ mr r4, r3 /* 80053B20 0004F780 38 60 00 01 */ li r3, 1 /* 80053B24 0004F784 48 10 89 D1 */ bl func_8015C4F4 /* 80053B28 0004F788 48 00 01 04 */ b lbl_80053C2C /* 80053B2C 0004F78C 48 10 BB 35 */ bl func_8015F660 /* 80053B30 0004F790 7C 64 1B 78 */ mr r4, r3 /* 80053B34 0004F794 38 60 00 01 */ li r3, 1 /* 80053B38 0004F798 48 10 89 BD */ bl func_8015C4F4 /* 80053B3C 0004F79C 48 00 00 F0 */ b lbl_80053C2C /* 80053B40 0004F7A0 80 8D 98 8C */ lwz r4, lbl_8063EB4C-_SDA_BASE_(r13) /* 80053B44 0004F7A4 38 60 00 01 */ li r3, 1 /* 80053B48 0004F7A8 48 10 89 AD */ bl func_8015C4F4 /* 80053B4C 0004F7AC 48 00 00 E0 */ b lbl_80053C2C /* 80053B50 0004F7B0 80 8D 98 8C */ lwz r4, lbl_8063EB4C-_SDA_BASE_(r13) /* 80053B54 0004F7B4 38 60 00 00 */ li r3, 0 /* 80053B58 0004F7B8 48 10 89 9D */ bl func_8015C4F4 /* 80053B5C 0004F7BC 48 00 00 D0 */ b lbl_80053C2C /* 80053B60 0004F7C0 88 0D 81 CD */ lbz r0, lbl_8063D48D-_SDA_BASE_(r13) /* 80053B64 0004F7C4 2C 00 00 00 */ cmpwi r0, 0 /* 80053B68 0004F7C8 41 82 00 C4 */ beq lbl_80053C2C /* 80053B6C 0004F7CC 80 8D 98 8C */ lwz r4, lbl_8063EB4C-_SDA_BASE_(r13) /* 80053B70 0004F7D0 38 60 00 00 */ li r3, 0 /* 80053B74 0004F7D4 48 10 89 81 */ bl func_8015C4F4 /* 80053B78 0004F7D8 48 00 00 B4 */ b lbl_80053C2C /* 80053B7C 0004F7DC 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80053B80 0004F7E0 2C 00 00 01 */ cmpwi r0, 1 /* 80053B84 0004F7E4 41 82 00 20 */ beq lbl_80053BA4 /* 80053B88 0004F7E8 40 80 00 10 */ bge lbl_80053B98 /* 80053B8C 0004F7EC 2C 00 00 00 */ cmpwi r0, 0 /* 80053B90 0004F7F0 40 80 00 9C */ bge lbl_80053C2C /* 80053B94 0004F7F4 48 00 00 30 */ b lbl_80053BC4 lbl_80053B98: /* 80053B98 0004F7F8 2C 00 00 03 */ cmpwi r0, 3 /* 80053B9C 0004F7FC 40 80 00 28 */ bge lbl_80053BC4 /* 80053BA0 0004F800 48 00 00 14 */ b lbl_80053BB4 lbl_80053BA4: /* 80053BA4 0004F804 38 60 00 01 */ li r3, 1 /* 80053BA8 0004F808 38 80 43 FC */ li r4, 0x43fc /* 80053BAC 0004F80C 48 10 89 49 */ bl func_8015C4F4 /* 80053BB0 0004F810 48 00 00 7C */ b lbl_80053C2C lbl_80053BB4: /* 80053BB4 0004F814 38 60 00 01 */ li r3, 1 /* 80053BB8 0004F818 38 80 43 FD */ li r4, 0x43fd /* 80053BBC 0004F81C 48 10 89 39 */ bl func_8015C4F4 /* 80053BC0 0004F820 48 00 00 6C */ b lbl_80053C2C lbl_80053BC4: /* 80053BC4 0004F824 38 60 00 01 */ li r3, 1 /* 80053BC8 0004F828 38 80 43 FE */ li r4, 0x43fe /* 80053BCC 0004F82C 48 10 89 29 */ bl func_8015C4F4 /* 80053BD0 0004F830 48 00 00 5C */ b lbl_80053C2C /* 80053BD4 0004F834 38 60 00 01 */ li r3, 1 /* 80053BD8 0004F838 38 80 43 F9 */ li r4, 0x43f9 /* 80053BDC 0004F83C 48 10 89 19 */ bl func_8015C4F4 /* 80053BE0 0004F840 48 00 00 4C */ b lbl_80053C2C /* 80053BE4 0004F844 C0 42 85 44 */ lfs f2, lbl_80640B44-_SDA2_BASE_(r2) /* 80053BE8 0004F848 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 80053BEC 0004F84C C0 02 85 0C */ lfs f0, lbl_80640B0C-_SDA2_BASE_(r2) /* 80053BF0 0004F850 EC 22 00 72 */ fmuls f1, f2, f1 /* 80053BF4 0004F854 80 0D 98 70 */ lwz r0, lbl_8063EB30-_SDA_BASE_(r13) /* 80053BF8 0004F858 EC 00 08 2A */ fadds f0, f0, f1 /* 80053BFC 0004F85C FC 00 00 1E */ fctiwz f0, f0 /* 80053C00 0004F860 D8 01 00 08 */ stfd f0, 8(r1) /* 80053C04 0004F864 80 61 00 0C */ lwz r3, 0xc(r1) /* 80053C08 0004F868 7C 00 18 40 */ cmplw r0, r3 /* 80053C0C 0004F86C 41 80 00 20 */ blt lbl_80053C2C /* 80053C10 0004F870 38 60 00 01 */ li r3, 1 /* 80053C14 0004F874 38 80 43 FA */ li r4, 0x43fa /* 80053C18 0004F878 48 10 88 DD */ bl func_8015C4F4 /* 80053C1C 0004F87C 48 00 00 10 */ b lbl_80053C2C /* 80053C20 0004F880 38 60 00 01 */ li r3, 1 /* 80053C24 0004F884 38 80 43 FB */ li r4, 0x43fb /* 80053C28 0004F888 48 10 88 CD */ bl func_8015C4F4 lbl_80053C2C: /* 80053C2C 0004F88C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80053C30 0004F890 80 01 00 34 */ lwz r0, 0x34(r1) /* 80053C34 0004F894 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80053C38 0004F898 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80053C3C 0004F89C 7C 08 03 A6 */ mtlr r0 /* 80053C40 0004F8A0 38 21 00 30 */ addi r1, r1, 0x30 /* 80053C44 0004F8A4 4E 80 00 20 */ blr lbl_80053C48: /* 80053C48 0004F8A8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053C4C 0004F8AC 7C 08 02 A6 */ mflr r0 /* 80053C50 0004F8B0 38 A0 00 03 */ li r5, 3 /* 80053C54 0004F8B4 90 01 00 24 */ stw r0, 0x24(r1) /* 80053C58 0004F8B8 38 C1 00 08 */ addi r6, r1, 8 /* 80053C5C 0004F8BC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80053C60 0004F8C0 7C 9F 23 78 */ mr r31, r4 /* 80053C64 0004F8C4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80053C68 0004F8C8 7C 7E 1B 78 */ mr r30, r3 /* 80053C6C 0004F8CC 48 20 02 21 */ bl func_80253E8C /* 80053C70 0004F8D0 80 01 00 08 */ lwz r0, 8(r1) /* 80053C74 0004F8D4 2C 00 00 08 */ cmpwi r0, 8 /* 80053C78 0004F8D8 41 82 00 48 */ beq lbl_80053CC0 /* 80053C7C 0004F8DC 40 80 00 10 */ bge lbl_80053C8C /* 80053C80 0004F8E0 2C 00 00 05 */ cmpwi r0, 5 /* 80053C84 0004F8E4 41 82 00 14 */ beq lbl_80053C98 /* 80053C88 0004F8E8 48 00 00 84 */ b lbl_80053D0C lbl_80053C8C: /* 80053C8C 0004F8EC 2C 00 00 0A */ cmpwi r0, 0xa /* 80053C90 0004F8F0 41 82 00 58 */ beq lbl_80053CE8 /* 80053C94 0004F8F4 48 00 00 78 */ b lbl_80053D0C lbl_80053C98: /* 80053C98 0004F8F8 38 00 00 FF */ li r0, 0xff /* 80053C9C 0004F8FC 7F C3 F3 78 */ mr r3, r30 /* 80053CA0 0004F900 98 1F 00 02 */ stb r0, 2(r31) /* 80053CA4 0004F904 7F E4 FB 78 */ mr r4, r31 /* 80053CA8 0004F908 38 A0 00 02 */ li r5, 2 /* 80053CAC 0004F90C 38 C0 2E 52 */ li r6, 0x2e52 /* 80053CB0 0004F910 98 1F 00 03 */ stb r0, 3(r31) /* 80053CB4 0004F914 98 1F 00 04 */ stb r0, 4(r31) /* 80053CB8 0004F918 48 20 01 FD */ bl func_80253EB4 /* 80053CBC 0004F91C 48 00 00 50 */ b lbl_80053D0C lbl_80053CC0: /* 80053CC0 0004F920 38 00 00 FF */ li r0, 0xff /* 80053CC4 0004F924 7F C3 F3 78 */ mr r3, r30 /* 80053CC8 0004F928 98 1F 00 02 */ stb r0, 2(r31) /* 80053CCC 0004F92C 7F E4 FB 78 */ mr r4, r31 /* 80053CD0 0004F930 38 A0 00 02 */ li r5, 2 /* 80053CD4 0004F934 38 C0 2E 53 */ li r6, 0x2e53 /* 80053CD8 0004F938 98 1F 00 03 */ stb r0, 3(r31) /* 80053CDC 0004F93C 98 1F 00 04 */ stb r0, 4(r31) /* 80053CE0 0004F940 48 20 01 D5 */ bl func_80253EB4 /* 80053CE4 0004F944 48 00 00 28 */ b lbl_80053D0C lbl_80053CE8: /* 80053CE8 0004F948 38 00 00 FF */ li r0, 0xff /* 80053CEC 0004F94C 7F C3 F3 78 */ mr r3, r30 /* 80053CF0 0004F950 98 1F 00 02 */ stb r0, 2(r31) /* 80053CF4 0004F954 7F E4 FB 78 */ mr r4, r31 /* 80053CF8 0004F958 38 A0 00 02 */ li r5, 2 /* 80053CFC 0004F95C 38 C0 2E 54 */ li r6, 0x2e54 /* 80053D00 0004F960 98 1F 00 03 */ stb r0, 3(r31) /* 80053D04 0004F964 98 1F 00 04 */ stb r0, 4(r31) /* 80053D08 0004F968 48 20 01 AD */ bl func_80253EB4 lbl_80053D0C: /* 80053D0C 0004F96C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80053D10 0004F970 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80053D14 0004F974 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80053D18 0004F978 7C 08 03 A6 */ mtlr r0 /* 80053D1C 0004F97C 38 21 00 20 */ addi r1, r1, 0x20 /* 80053D20 0004F980 4E 80 00 20 */ blr lbl_80053D24: /* 80053D24 0004F984 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80053D28 0004F988 7C 08 02 A6 */ mflr r0 /* 80053D2C 0004F98C 38 A0 00 03 */ li r5, 3 /* 80053D30 0004F990 90 01 00 44 */ stw r0, 0x44(r1) /* 80053D34 0004F994 38 C1 00 08 */ addi r6, r1, 8 /* 80053D38 0004F998 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80053D3C 0004F99C 7C 9F 23 78 */ mr r31, r4 /* 80053D40 0004F9A0 93 C1 00 38 */ stw r30, 0x38(r1) /* 80053D44 0004F9A4 7C 7E 1B 78 */ mr r30, r3 /* 80053D48 0004F9A8 48 20 01 95 */ bl func_80253EDC /* 80053D4C 0004F9AC 80 01 00 08 */ lwz r0, 8(r1) /* 80053D50 0004F9B0 2C 00 00 01 */ cmpwi r0, 1 /* 80053D54 0004F9B4 41 82 00 44 */ beq lbl_80053D98 /* 80053D58 0004F9B8 40 80 00 10 */ bge lbl_80053D68 /* 80053D5C 0004F9BC 2C 00 00 00 */ cmpwi r0, 0 /* 80053D60 0004F9C0 40 80 00 14 */ bge lbl_80053D74 /* 80053D64 0004F9C4 48 00 00 78 */ b lbl_80053DDC lbl_80053D68: /* 80053D68 0004F9C8 2C 00 00 03 */ cmpwi r0, 3 /* 80053D6C 0004F9CC 40 80 00 70 */ bge lbl_80053DDC /* 80053D70 0004F9D0 48 00 00 4C */ b lbl_80053DBC lbl_80053D74: /* 80053D74 0004F9D4 7F C3 F3 78 */ mr r3, r30 /* 80053D78 0004F9D8 7F E4 FB 78 */ mr r4, r31 /* 80053D7C 0004F9DC 38 C1 00 10 */ addi r6, r1, 0x10 /* 80053D80 0004F9E0 38 A0 00 06 */ li r5, 6 /* 80053D84 0004F9E4 48 20 01 59 */ bl func_80253EDC /* 80053D88 0004F9E8 38 81 00 10 */ addi r4, r1, 0x10 /* 80053D8C 0004F9EC 38 60 00 01 */ li r3, 1 /* 80053D90 0004F9F0 48 00 5C AD */ bl func_80059A3C /* 80053D94 0004F9F4 48 00 00 48 */ b lbl_80053DDC lbl_80053D98: /* 80053D98 0004F9F8 7F C3 F3 78 */ mr r3, r30 /* 80053D9C 0004F9FC 7F E4 FB 78 */ mr r4, r31 /* 80053DA0 0004FA00 38 C1 00 10 */ addi r6, r1, 0x10 /* 80053DA4 0004FA04 38 A0 00 06 */ li r5, 6 /* 80053DA8 0004FA08 48 20 01 35 */ bl func_80253EDC /* 80053DAC 0004FA0C 38 81 00 10 */ addi r4, r1, 0x10 /* 80053DB0 0004FA10 38 60 00 02 */ li r3, 2 /* 80053DB4 0004FA14 48 00 5C 89 */ bl func_80059A3C /* 80053DB8 0004FA18 48 00 00 24 */ b lbl_80053DDC lbl_80053DBC: /* 80053DBC 0004FA1C 7F C3 F3 78 */ mr r3, r30 /* 80053DC0 0004FA20 7F E4 FB 78 */ mr r4, r31 /* 80053DC4 0004FA24 38 C1 00 10 */ addi r6, r1, 0x10 /* 80053DC8 0004FA28 38 A0 00 06 */ li r5, 6 /* 80053DCC 0004FA2C 48 20 01 11 */ bl func_80253EDC /* 80053DD0 0004FA30 38 81 00 10 */ addi r4, r1, 0x10 /* 80053DD4 0004FA34 38 60 00 03 */ li r3, 3 /* 80053DD8 0004FA38 48 00 5C 65 */ bl func_80059A3C lbl_80053DDC: /* 80053DDC 0004FA3C 80 01 00 44 */ lwz r0, 0x44(r1) /* 80053DE0 0004FA40 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80053DE4 0004FA44 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80053DE8 0004FA48 7C 08 03 A6 */ mtlr r0 /* 80053DEC 0004FA4C 38 21 00 40 */ addi r1, r1, 0x40 /* 80053DF0 0004FA50 4E 80 00 20 */ blr lbl_80053DF4: /* 80053DF4 0004FA54 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80053DF8 0004FA58 7C 08 02 A6 */ mflr r0 /* 80053DFC 0004FA5C 3D 80 80 40 */ lis r12, lbl_803FB7A8@ha /* 80053E00 0004FA60 90 01 00 34 */ stw r0, 0x34(r1) /* 80053E04 0004FA64 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80053E08 0004FA68 7C 9F 23 78 */ mr r31, r4 /* 80053E0C 0004FA6C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80053E10 0004FA70 7C 7E 1B 78 */ mr r30, r3 /* 80053E14 0004FA74 93 A1 00 24 */ stw r29, 0x24(r1) /* 80053E18 0004FA78 80 AD 98 84 */ lwz r5, lbl_8063EB44-_SDA_BASE_(r13) /* 80053E1C 0004FA7C A5 6C B7 A8 */ lhzu r11, lbl_803FB7A8@l(r12) /* 80053E20 0004FA80 80 05 00 4C */ lwz r0, 0x4c(r5) /* 80053E24 0004FA84 A1 4C 00 02 */ lhz r10, 2(r12) /* 80053E28 0004FA88 A1 2C 00 04 */ lhz r9, 4(r12) /* 80053E2C 0004FA8C 2C 00 00 01 */ cmpwi r0, 1 /* 80053E30 0004FA90 A1 0C 00 06 */ lhz r8, 6(r12) /* 80053E34 0004FA94 A0 EC 00 08 */ lhz r7, 8(r12) /* 80053E38 0004FA98 A0 CC 00 0A */ lhz r6, 0xa(r12) /* 80053E3C 0004FA9C A0 AC 00 0C */ lhz r5, 0xc(r12) /* 80053E40 0004FAA0 A0 8C 00 0E */ lhz r4, 0xe(r12) /* 80053E44 0004FAA4 A0 6C 00 10 */ lhz r3, 0x10(r12) /* 80053E48 0004FAA8 B1 61 00 0C */ sth r11, 0xc(r1) /* 80053E4C 0004FAAC B1 41 00 0E */ sth r10, 0xe(r1) /* 80053E50 0004FAB0 B1 21 00 10 */ sth r9, 0x10(r1) /* 80053E54 0004FAB4 B1 01 00 12 */ sth r8, 0x12(r1) /* 80053E58 0004FAB8 B0 E1 00 14 */ sth r7, 0x14(r1) /* 80053E5C 0004FABC B0 C1 00 16 */ sth r6, 0x16(r1) /* 80053E60 0004FAC0 B0 A1 00 18 */ sth r5, 0x18(r1) /* 80053E64 0004FAC4 B0 81 00 1A */ sth r4, 0x1a(r1) /* 80053E68 0004FAC8 B0 61 00 1C */ sth r3, 0x1c(r1) /* 80053E6C 0004FACC 41 82 00 1C */ beq lbl_80053E88 /* 80053E70 0004FAD0 40 80 00 20 */ bge lbl_80053E90 /* 80053E74 0004FAD4 2C 00 00 00 */ cmpwi r0, 0 /* 80053E78 0004FAD8 40 80 00 08 */ bge lbl_80053E80 /* 80053E7C 0004FADC 48 00 00 14 */ b lbl_80053E90 lbl_80053E80: /* 80053E80 0004FAE0 3B A0 00 00 */ li r29, 0 /* 80053E84 0004FAE4 48 00 00 10 */ b lbl_80053E94 lbl_80053E88: /* 80053E88 0004FAE8 3B A0 00 01 */ li r29, 1 /* 80053E8C 0004FAEC 48 00 00 08 */ b lbl_80053E94 lbl_80053E90: /* 80053E90 0004FAF0 3B A0 00 02 */ li r29, 2 lbl_80053E94: /* 80053E94 0004FAF4 7F C3 F3 78 */ mr r3, r30 /* 80053E98 0004FAF8 7F E4 FB 78 */ mr r4, r31 /* 80053E9C 0004FAFC 38 C1 00 08 */ addi r6, r1, 8 /* 80053EA0 0004FB00 38 A0 00 03 */ li r5, 3 /* 80053EA4 0004FB04 48 1F FF E9 */ bl func_80253E8C /* 80053EA8 0004FB08 80 61 00 08 */ lwz r3, 8(r1) /* 80053EAC 0004FB0C 38 03 FF FC */ addi r0, r3, -4 /* 80053EB0 0004FB10 28 00 00 06 */ cmplwi r0, 6 /* 80053EB4 0004FB14 41 81 01 18 */ bgt lbl_80053FCC /* 80053EB8 0004FB18 3C 60 80 41 */ lis r3, lbl_8040AE88@ha /* 80053EBC 0004FB1C 54 00 10 3A */ slwi r0, r0, 2 /* 80053EC0 0004FB20 38 63 AE 88 */ addi r3, r3, lbl_8040AE88@l /* 80053EC4 0004FB24 7C 63 00 2E */ lwzx r3, r3, r0 /* 80053EC8 0004FB28 7C 69 03 A6 */ mtctr r3 /* 80053ECC 0004FB2C 4E 80 04 20 */ bctr /* 80053ED0 0004FB30 1C 1D 00 06 */ mulli r0, r29, 6 /* 80053ED4 0004FB34 38 A1 00 0C */ addi r5, r1, 0xc /* 80053ED8 0004FB38 7F C3 F3 78 */ mr r3, r30 /* 80053EDC 0004FB3C 7F E4 FB 78 */ mr r4, r31 /* 80053EE0 0004FB40 7C C5 02 2E */ lhzx r6, r5, r0 /* 80053EE4 0004FB44 38 A0 00 02 */ li r5, 2 /* 80053EE8 0004FB48 48 1F FF CD */ bl func_80253EB4 /* 80053EEC 0004FB4C 48 00 00 E0 */ b lbl_80053FCC /* 80053EF0 0004FB50 28 1D 00 02 */ cmplwi r29, 2 /* 80053EF4 0004FB54 40 82 00 1C */ bne lbl_80053F10 /* 80053EF8 0004FB58 7F C3 F3 78 */ mr r3, r30 /* 80053EFC 0004FB5C 7F E4 FB 78 */ mr r4, r31 /* 80053F00 0004FB60 38 A0 00 02 */ li r5, 2 /* 80053F04 0004FB64 38 C0 51 77 */ li r6, 0x5177 /* 80053F08 0004FB68 48 1F FF AD */ bl func_80253EB4 /* 80053F0C 0004FB6C 48 00 00 C0 */ b lbl_80053FCC lbl_80053F10: /* 80053F10 0004FB70 7F C3 F3 78 */ mr r3, r30 /* 80053F14 0004FB74 7F E4 FB 78 */ mr r4, r31 /* 80053F18 0004FB78 38 A0 00 02 */ li r5, 2 /* 80053F1C 0004FB7C 38 C0 50 99 */ li r6, 0x5099 /* 80053F20 0004FB80 48 1F FF 95 */ bl func_80253EB4 /* 80053F24 0004FB84 48 00 00 A8 */ b lbl_80053FCC /* 80053F28 0004FB88 28 1D 00 02 */ cmplwi r29, 2 /* 80053F2C 0004FB8C 40 82 00 1C */ bne lbl_80053F48 /* 80053F30 0004FB90 7F C3 F3 78 */ mr r3, r30 /* 80053F34 0004FB94 7F E4 FB 78 */ mr r4, r31 /* 80053F38 0004FB98 38 A0 00 02 */ li r5, 2 /* 80053F3C 0004FB9C 38 C0 51 78 */ li r6, 0x5178 /* 80053F40 0004FBA0 48 1F FF 75 */ bl func_80253EB4 /* 80053F44 0004FBA4 48 00 00 88 */ b lbl_80053FCC lbl_80053F48: /* 80053F48 0004FBA8 7F C3 F3 78 */ mr r3, r30 /* 80053F4C 0004FBAC 7F E4 FB 78 */ mr r4, r31 /* 80053F50 0004FBB0 38 A0 00 02 */ li r5, 2 /* 80053F54 0004FBB4 38 C0 50 9E */ li r6, 0x509e /* 80053F58 0004FBB8 48 1F FF 5D */ bl func_80253EB4 /* 80053F5C 0004FBBC 48 00 00 70 */ b lbl_80053FCC /* 80053F60 0004FBC0 1C 1D 00 06 */ mulli r0, r29, 6 /* 80053F64 0004FBC4 38 A1 00 0E */ addi r5, r1, 0xe /* 80053F68 0004FBC8 7F C3 F3 78 */ mr r3, r30 /* 80053F6C 0004FBCC 7F E4 FB 78 */ mr r4, r31 /* 80053F70 0004FBD0 7C C5 02 2E */ lhzx r6, r5, r0 /* 80053F74 0004FBD4 38 A0 00 02 */ li r5, 2 /* 80053F78 0004FBD8 48 1F FF 3D */ bl func_80253EB4 /* 80053F7C 0004FBDC 48 00 00 50 */ b lbl_80053FCC /* 80053F80 0004FBE0 7F C3 F3 78 */ mr r3, r30 /* 80053F84 0004FBE4 7F E4 FB 78 */ mr r4, r31 /* 80053F88 0004FBE8 38 A0 00 02 */ li r5, 2 /* 80053F8C 0004FBEC 38 C0 50 9F */ li r6, 0x509f /* 80053F90 0004FBF0 48 1F FF 25 */ bl func_80253EB4 /* 80053F94 0004FBF4 48 00 00 38 */ b lbl_80053FCC /* 80053F98 0004FBF8 1C 1D 00 06 */ mulli r0, r29, 6 /* 80053F9C 0004FBFC 38 A1 00 10 */ addi r5, r1, 0x10 /* 80053FA0 0004FC00 7F C3 F3 78 */ mr r3, r30 /* 80053FA4 0004FC04 7F E4 FB 78 */ mr r4, r31 /* 80053FA8 0004FC08 7C C5 02 2E */ lhzx r6, r5, r0 /* 80053FAC 0004FC0C 38 A0 00 02 */ li r5, 2 /* 80053FB0 0004FC10 48 1F FF 05 */ bl func_80253EB4 /* 80053FB4 0004FC14 48 00 00 18 */ b lbl_80053FCC /* 80053FB8 0004FC18 7F C3 F3 78 */ mr r3, r30 /* 80053FBC 0004FC1C 7F E4 FB 78 */ mr r4, r31 /* 80053FC0 0004FC20 38 A0 00 02 */ li r5, 2 /* 80053FC4 0004FC24 38 C0 50 A0 */ li r6, 0x50a0 /* 80053FC8 0004FC28 48 1F FE ED */ bl func_80253EB4 lbl_80053FCC: /* 80053FCC 0004FC2C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80053FD0 0004FC30 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80053FD4 0004FC34 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80053FD8 0004FC38 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80053FDC 0004FC3C 7C 08 03 A6 */ mtlr r0 /* 80053FE0 0004FC40 38 21 00 30 */ addi r1, r1, 0x30 /* 80053FE4 0004FC44 4E 80 00 20 */ blr lbl_80053FE8: /* 80053FE8 0004FC48 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80053FEC 0004FC4C 7C 08 02 A6 */ mflr r0 /* 80053FF0 0004FC50 38 A0 00 03 */ li r5, 3 /* 80053FF4 0004FC54 90 01 00 24 */ stw r0, 0x24(r1) /* 80053FF8 0004FC58 38 C1 00 08 */ addi r6, r1, 8 /* 80053FFC 0004FC5C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80054000 0004FC60 7C 9F 23 78 */ mr r31, r4 /* 80054004 0004FC64 93 C1 00 18 */ stw r30, 0x18(r1) /* 80054008 0004FC68 7C 7E 1B 78 */ mr r30, r3 /* 8005400C 0004FC6C 48 1F FE 81 */ bl func_80253E8C /* 80054010 0004FC70 80 01 00 08 */ lwz r0, 8(r1) /* 80054014 0004FC74 2C 00 00 02 */ cmpwi r0, 2 /* 80054018 0004FC78 41 82 00 08 */ beq lbl_80054020 /* 8005401C 0004FC7C 48 00 00 20 */ b lbl_8005403C lbl_80054020: /* 80054020 0004FC80 38 60 00 1A */ li r3, 0x1a /* 80054024 0004FC84 48 00 69 D5 */ bl func_8005A9F8 /* 80054028 0004FC88 7C 66 1B 78 */ mr r6, r3 /* 8005402C 0004FC8C 7F C3 F3 78 */ mr r3, r30 /* 80054030 0004FC90 7F E4 FB 78 */ mr r4, r31 /* 80054034 0004FC94 38 A0 00 01 */ li r5, 1 /* 80054038 0004FC98 48 1F FE 7D */ bl func_80253EB4 lbl_8005403C: /* 8005403C 0004FC9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80054040 0004FCA0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80054044 0004FCA4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80054048 0004FCA8 7C 08 03 A6 */ mtlr r0 /* 8005404C 0004FCAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80054050 0004FCB0 4E 80 00 20 */ blr lbl_80054054: /* 80054054 0004FCB4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80054058 0004FCB8 7C 08 02 A6 */ mflr r0 /* 8005405C 0004FCBC 38 A0 00 03 */ li r5, 3 /* 80054060 0004FCC0 90 01 00 44 */ stw r0, 0x44(r1) /* 80054064 0004FCC4 38 C1 00 08 */ addi r6, r1, 8 /* 80054068 0004FCC8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8005406C 0004FCCC 7C 9F 23 78 */ mr r31, r4 /* 80054070 0004FCD0 93 C1 00 38 */ stw r30, 0x38(r1) /* 80054074 0004FCD4 7C 7E 1B 78 */ mr r30, r3 /* 80054078 0004FCD8 48 1F FE 65 */ bl func_80253EDC /* 8005407C 0004FCDC 80 01 00 08 */ lwz r0, 8(r1) /* 80054080 0004FCE0 2C 00 00 01 */ cmpwi r0, 1 /* 80054084 0004FCE4 41 82 00 08 */ beq lbl_8005408C /* 80054088 0004FCE8 48 00 00 24 */ b lbl_800540AC lbl_8005408C: /* 8005408C 0004FCEC 7F C3 F3 78 */ mr r3, r30 /* 80054090 0004FCF0 7F E4 FB 78 */ mr r4, r31 /* 80054094 0004FCF4 38 C1 00 10 */ addi r6, r1, 0x10 /* 80054098 0004FCF8 38 A0 00 06 */ li r5, 6 /* 8005409C 0004FCFC 48 1F FE 41 */ bl func_80253EDC /* 800540A0 0004FD00 38 81 00 10 */ addi r4, r1, 0x10 /* 800540A4 0004FD04 38 60 00 63 */ li r3, 0x63 /* 800540A8 0004FD08 48 00 59 95 */ bl func_80059A3C lbl_800540AC: /* 800540AC 0004FD0C 80 01 00 44 */ lwz r0, 0x44(r1) /* 800540B0 0004FD10 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800540B4 0004FD14 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800540B8 0004FD18 7C 08 03 A6 */ mtlr r0 /* 800540BC 0004FD1C 38 21 00 40 */ addi r1, r1, 0x40 /* 800540C0 0004FD20 4E 80 00 20 */ blr lbl_800540C4: /* 800540C4 0004FD24 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800540C8 0004FD28 7C 08 02 A6 */ mflr r0 /* 800540CC 0004FD2C 38 A0 00 03 */ li r5, 3 /* 800540D0 0004FD30 90 01 00 24 */ stw r0, 0x24(r1) /* 800540D4 0004FD34 38 C1 00 08 */ addi r6, r1, 8 /* 800540D8 0004FD38 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800540DC 0004FD3C 7C 9F 23 78 */ mr r31, r4 /* 800540E0 0004FD40 93 C1 00 18 */ stw r30, 0x18(r1) /* 800540E4 0004FD44 7C 7E 1B 78 */ mr r30, r3 /* 800540E8 0004FD48 48 1F FD A5 */ bl func_80253E8C /* 800540EC 0004FD4C 80 01 00 08 */ lwz r0, 8(r1) /* 800540F0 0004FD50 2C 00 00 01 */ cmpwi r0, 1 /* 800540F4 0004FD54 41 82 00 08 */ beq lbl_800540FC /* 800540F8 0004FD58 48 00 00 44 */ b lbl_8005413C lbl_800540FC: /* 800540FC 0004FD5C 80 0D 98 6C */ lwz r0, lbl_8063EB2C-_SDA_BASE_(r13) /* 80054100 0004FD60 28 00 00 32 */ cmplwi r0, 0x32 /* 80054104 0004FD64 41 82 00 38 */ beq lbl_8005413C /* 80054108 0004FD68 28 00 00 33 */ cmplwi r0, 0x33 /* 8005410C 0004FD6C 41 82 00 30 */ beq lbl_8005413C /* 80054110 0004FD70 28 00 00 34 */ cmplwi r0, 0x34 /* 80054114 0004FD74 41 82 00 28 */ beq lbl_8005413C /* 80054118 0004FD78 38 00 00 FF */ li r0, 0xff /* 8005411C 0004FD7C 7F C3 F3 78 */ mr r3, r30 /* 80054120 0004FD80 98 1F 00 02 */ stb r0, 2(r31) /* 80054124 0004FD84 7F E4 FB 78 */ mr r4, r31 /* 80054128 0004FD88 38 A0 00 02 */ li r5, 2 /* 8005412C 0004FD8C 38 C0 2E 51 */ li r6, 0x2e51 /* 80054130 0004FD90 98 1F 00 03 */ stb r0, 3(r31) /* 80054134 0004FD94 98 1F 00 04 */ stb r0, 4(r31) /* 80054138 0004FD98 48 1F FD 7D */ bl func_80253EB4 lbl_8005413C: /* 8005413C 0004FD9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80054140 0004FDA0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80054144 0004FDA4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80054148 0004FDA8 7C 08 03 A6 */ mtlr r0 /* 8005414C 0004FDAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80054150 0004FDB0 4E 80 00 20 */ blr lbl_80054154: /* 80054154 0004FDB4 4E 80 00 20 */ blr .global func_80054158 func_80054158: /* 80054158 0004FDB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005415C 0004FDBC 7C 08 02 A6 */ mflr r0 /* 80054160 0004FDC0 38 80 00 08 */ li r4, 8 /* 80054164 0004FDC4 38 A0 00 00 */ li r5, 0 /* 80054168 0004FDC8 90 01 00 14 */ stw r0, 0x14(r1) /* 8005416C 0004FDCC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80054170 0004FDD0 3F E0 80 41 */ lis r31, lbl_8040ACB0@ha /* 80054174 0004FDD4 3B FF AC B0 */ addi r31, r31, lbl_8040ACB0@l /* 80054178 0004FDD8 A8 7F 00 02 */ lha r3, 2(r31) /* 8005417C 0004FDDC 48 1F FC 75 */ bl func_80253DF0 /* 80054180 0004FDE0 A8 7F 00 04 */ lha r3, 4(r31) /* 80054184 0004FDE4 38 80 00 08 */ li r4, 8 /* 80054188 0004FDE8 38 A0 00 00 */ li r5, 0 /* 8005418C 0004FDEC 48 1F FC 65 */ bl func_80253DF0 /* 80054190 0004FDF0 38 00 00 00 */ li r0, 0 /* 80054194 0004FDF4 98 0D 81 CD */ stb r0, lbl_8063D48D-_SDA_BASE_(r13) /* 80054198 0004FDF8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005419C 0004FDFC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800541A0 0004FE00 7C 08 03 A6 */ mtlr r0 /* 800541A4 0004FE04 38 21 00 10 */ addi r1, r1, 0x10 /* 800541A8 0004FE08 4E 80 00 20 */ blr .global func_800541AC func_800541AC: /* 800541AC 0004FE0C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800541B0 0004FE10 7C 08 02 A6 */ mflr r0 /* 800541B4 0004FE14 38 80 00 08 */ li r4, 8 /* 800541B8 0004FE18 38 A0 00 01 */ li r5, 1 /* 800541BC 0004FE1C 90 01 00 14 */ stw r0, 0x14(r1) /* 800541C0 0004FE20 93 E1 00 0C */ stw r31, 0xc(r1) /* 800541C4 0004FE24 3F E0 80 41 */ lis r31, lbl_8040ACB0@ha /* 800541C8 0004FE28 3B FF AC B0 */ addi r31, r31, lbl_8040ACB0@l /* 800541CC 0004FE2C A8 7F 00 02 */ lha r3, 2(r31) /* 800541D0 0004FE30 48 1F FC 21 */ bl func_80253DF0 /* 800541D4 0004FE34 A8 7F 00 04 */ lha r3, 4(r31) /* 800541D8 0004FE38 38 80 00 08 */ li r4, 8 /* 800541DC 0004FE3C 38 A0 00 01 */ li r5, 1 /* 800541E0 0004FE40 48 1F FC 11 */ bl func_80253DF0 /* 800541E4 0004FE44 38 00 00 01 */ li r0, 1 /* 800541E8 0004FE48 98 0D 81 CD */ stb r0, lbl_8063D48D-_SDA_BASE_(r13) /* 800541EC 0004FE4C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800541F0 0004FE50 80 01 00 14 */ lwz r0, 0x14(r1) /* 800541F4 0004FE54 7C 08 03 A6 */ mtlr r0 /* 800541F8 0004FE58 38 21 00 10 */ addi r1, r1, 0x10 /* 800541FC 0004FE5C 4E 80 00 20 */ blr lbl_80054200: /* 80054200 0004FE60 C0 22 85 10 */ lfs f1, lbl_80640B10-_SDA2_BASE_(r2) /* 80054204 0004FE64 7C 63 07 34 */ extsh r3, r3 /* 80054208 0004FE68 38 80 00 04 */ li r4, 4 /* 8005420C 0004FE6C 48 1F FC 04 */ b func_80253E10 lbl_80054210: /* 80054210 0004FE70 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80054214 0004FE74 7C 08 02 A6 */ mflr r0 /* 80054218 0004FE78 38 A0 00 03 */ li r5, 3 /* 8005421C 0004FE7C 90 01 00 24 */ stw r0, 0x24(r1) /* 80054220 0004FE80 38 C1 00 0C */ addi r6, r1, 0xc /* 80054224 0004FE84 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80054228 0004FE88 7C 9F 23 78 */ mr r31, r4 /* 8005422C 0004FE8C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80054230 0004FE90 7C 7E 1B 78 */ mr r30, r3 /* 80054234 0004FE94 93 A1 00 14 */ stw r29, 0x14(r1) /* 80054238 0004FE98 48 1F FC 55 */ bl func_80253E8C /* 8005423C 0004FE9C 80 01 00 0C */ lwz r0, 0xc(r1) /* 80054240 0004FEA0 2C 00 00 06 */ cmpwi r0, 6 /* 80054244 0004FEA4 41 82 00 8C */ beq lbl_800542D0 /* 80054248 0004FEA8 40 80 00 10 */ bge lbl_80054258 /* 8005424C 0004FEAC 2C 00 00 04 */ cmpwi r0, 4 /* 80054250 0004FEB0 41 82 00 14 */ beq lbl_80054264 /* 80054254 0004FEB4 48 00 01 50 */ b lbl_800543A4 lbl_80054258: /* 80054258 0004FEB8 2C 00 00 08 */ cmpwi r0, 8 /* 8005425C 0004FEBC 41 82 00 E0 */ beq lbl_8005433C /* 80054260 0004FEC0 48 00 01 44 */ b lbl_800543A4 lbl_80054264: /* 80054264 0004FEC4 7F C3 F3 78 */ mr r3, r30 /* 80054268 0004FEC8 7F E4 FB 78 */ mr r4, r31 /* 8005426C 0004FECC 38 C1 00 08 */ addi r6, r1, 8 /* 80054270 0004FED0 38 A0 00 05 */ li r5, 5 /* 80054274 0004FED4 48 1F FC 19 */ bl func_80253E8C /* 80054278 0004FED8 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 8005427C 0004FEDC 38 60 43 FF */ li r3, 0x43ff /* 80054280 0004FEE0 83 A1 00 08 */ lwz r29, 8(r1) /* 80054284 0004FEE4 38 04 00 0C */ addi r0, r4, 0xc /* 80054288 0004FEE8 90 1D 00 00 */ stw r0, 0(r29) /* 8005428C 0004FEEC 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 80054290 0004FEF0 38 84 00 0C */ addi r4, r4, 0xc /* 80054294 0004FEF4 48 1F C1 45 */ bl func_802503D8 /* 80054298 0004FEF8 38 E0 00 FF */ li r7, 0xff /* 8005429C 0004FEFC 38 00 00 84 */ li r0, 0x84 /* 800542A0 0004FF00 98 FD 00 04 */ stb r7, 4(r29) /* 800542A4 0004FF04 7F C3 F3 78 */ mr r3, r30 /* 800542A8 0004FF08 7F E4 FB 78 */ mr r4, r31 /* 800542AC 0004FF0C 38 A0 00 02 */ li r5, 2 /* 800542B0 0004FF10 98 FD 00 05 */ stb r7, 5(r29) /* 800542B4 0004FF14 38 C0 FF FE */ li r6, -2 /* 800542B8 0004FF18 98 FD 00 06 */ stb r7, 6(r29) /* 800542BC 0004FF1C 88 FF 00 05 */ lbz r7, 5(r31) /* 800542C0 0004FF20 98 FD 00 07 */ stb r7, 7(r29) /* 800542C4 0004FF24 98 1D 00 09 */ stb r0, 9(r29) /* 800542C8 0004FF28 48 1F FB ED */ bl func_80253EB4 /* 800542CC 0004FF2C 48 00 00 D8 */ b lbl_800543A4 lbl_800542D0: /* 800542D0 0004FF30 7F C3 F3 78 */ mr r3, r30 /* 800542D4 0004FF34 7F E4 FB 78 */ mr r4, r31 /* 800542D8 0004FF38 38 C1 00 08 */ addi r6, r1, 8 /* 800542DC 0004FF3C 38 A0 00 05 */ li r5, 5 /* 800542E0 0004FF40 48 1F FB AD */ bl func_80253E8C /* 800542E4 0004FF44 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 800542E8 0004FF48 38 60 44 00 */ li r3, 0x4400 /* 800542EC 0004FF4C 83 A1 00 08 */ lwz r29, 8(r1) /* 800542F0 0004FF50 38 04 00 14 */ addi r0, r4, 0x14 /* 800542F4 0004FF54 90 1D 00 00 */ stw r0, 0(r29) /* 800542F8 0004FF58 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 800542FC 0004FF5C 38 84 00 14 */ addi r4, r4, 0x14 /* 80054300 0004FF60 48 1F C0 D9 */ bl func_802503D8 /* 80054304 0004FF64 38 E0 00 FF */ li r7, 0xff /* 80054308 0004FF68 38 00 00 84 */ li r0, 0x84 /* 8005430C 0004FF6C 98 FD 00 04 */ stb r7, 4(r29) /* 80054310 0004FF70 7F C3 F3 78 */ mr r3, r30 /* 80054314 0004FF74 7F E4 FB 78 */ mr r4, r31 /* 80054318 0004FF78 38 A0 00 02 */ li r5, 2 /* 8005431C 0004FF7C 98 FD 00 05 */ stb r7, 5(r29) /* 80054320 0004FF80 38 C0 FF FE */ li r6, -2 /* 80054324 0004FF84 98 FD 00 06 */ stb r7, 6(r29) /* 80054328 0004FF88 88 FF 00 05 */ lbz r7, 5(r31) /* 8005432C 0004FF8C 98 FD 00 07 */ stb r7, 7(r29) /* 80054330 0004FF90 98 1D 00 09 */ stb r0, 9(r29) /* 80054334 0004FF94 48 1F FB 81 */ bl func_80253EB4 /* 80054338 0004FF98 48 00 00 6C */ b lbl_800543A4 lbl_8005433C: /* 8005433C 0004FF9C 7F C3 F3 78 */ mr r3, r30 /* 80054340 0004FFA0 7F E4 FB 78 */ mr r4, r31 /* 80054344 0004FFA4 38 C1 00 08 */ addi r6, r1, 8 /* 80054348 0004FFA8 38 A0 00 05 */ li r5, 5 /* 8005434C 0004FFAC 48 1F FB 41 */ bl func_80253E8C /* 80054350 0004FFB0 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 80054354 0004FFB4 38 60 44 01 */ li r3, 0x4401 /* 80054358 0004FFB8 83 A1 00 08 */ lwz r29, 8(r1) /* 8005435C 0004FFBC 38 04 00 1C */ addi r0, r4, 0x1c /* 80054360 0004FFC0 90 1D 00 00 */ stw r0, 0(r29) /* 80054364 0004FFC4 80 8D 81 C8 */ lwz r4, lbl_8063D488-_SDA_BASE_(r13) /* 80054368 0004FFC8 38 84 00 1C */ addi r4, r4, 0x1c /* 8005436C 0004FFCC 48 1F C0 6D */ bl func_802503D8 /* 80054370 0004FFD0 38 E0 00 FF */ li r7, 0xff /* 80054374 0004FFD4 38 00 00 84 */ li r0, 0x84 /* 80054378 0004FFD8 98 FD 00 04 */ stb r7, 4(r29) /* 8005437C 0004FFDC 7F C3 F3 78 */ mr r3, r30 /* 80054380 0004FFE0 7F E4 FB 78 */ mr r4, r31 /* 80054384 0004FFE4 38 A0 00 02 */ li r5, 2 /* 80054388 0004FFE8 98 FD 00 05 */ stb r7, 5(r29) /* 8005438C 0004FFEC 38 C0 FF FE */ li r6, -2 /* 80054390 0004FFF0 98 FD 00 06 */ stb r7, 6(r29) /* 80054394 0004FFF4 88 FF 00 05 */ lbz r7, 5(r31) /* 80054398 0004FFF8 98 FD 00 07 */ stb r7, 7(r29) /* 8005439C 0004FFFC 98 1D 00 09 */ stb r0, 9(r29) /* 800543A0 00050000 48 1F FB 15 */ bl func_80253EB4 lbl_800543A4: /* 800543A4 00050004 80 01 00 24 */ lwz r0, 0x24(r1) /* 800543A8 00050008 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800543AC 0005000C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800543B0 00050010 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800543B4 00050014 7C 08 03 A6 */ mtlr r0 /* 800543B8 00050018 38 21 00 20 */ addi r1, r1, 0x20 /* 800543BC 0005001C 4E 80 00 20 */ blr lbl_800543C0: /* 800543C0 00050020 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800543C4 00050024 7C 08 02 A6 */ mflr r0 /* 800543C8 00050028 38 A0 00 03 */ li r5, 3 /* 800543CC 0005002C 90 01 00 44 */ stw r0, 0x44(r1) /* 800543D0 00050030 38 C1 00 08 */ addi r6, r1, 8 /* 800543D4 00050034 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800543D8 00050038 7C 9F 23 78 */ mr r31, r4 /* 800543DC 0005003C 93 C1 00 38 */ stw r30, 0x38(r1) /* 800543E0 00050040 7C 7E 1B 78 */ mr r30, r3 /* 800543E4 00050044 48 1F FA F9 */ bl func_80253EDC /* 800543E8 00050048 80 01 00 08 */ lwz r0, 8(r1) /* 800543EC 0005004C 2C 00 00 01 */ cmpwi r0, 1 /* 800543F0 00050050 41 82 00 44 */ beq lbl_80054434 /* 800543F4 00050054 40 80 00 10 */ bge lbl_80054404 /* 800543F8 00050058 2C 00 00 00 */ cmpwi r0, 0 /* 800543FC 0005005C 40 80 00 14 */ bge lbl_80054410 /* 80054400 00050060 48 00 00 78 */ b lbl_80054478 lbl_80054404: /* 80054404 00050064 2C 00 00 03 */ cmpwi r0, 3 /* 80054408 00050068 40 80 00 70 */ bge lbl_80054478 /* 8005440C 0005006C 48 00 00 4C */ b lbl_80054458 lbl_80054410: /* 80054410 00050070 7F C3 F3 78 */ mr r3, r30 /* 80054414 00050074 7F E4 FB 78 */ mr r4, r31 /* 80054418 00050078 38 C1 00 10 */ addi r6, r1, 0x10 /* 8005441C 0005007C 38 A0 00 06 */ li r5, 6 /* 80054420 00050080 48 1F FA BD */ bl func_80253EDC /* 80054424 00050084 38 81 00 10 */ addi r4, r1, 0x10 /* 80054428 00050088 38 60 00 01 */ li r3, 1 /* 8005442C 0005008C 48 00 56 11 */ bl func_80059A3C /* 80054430 00050090 48 00 00 48 */ b lbl_80054478 lbl_80054434: /* 80054434 00050094 7F C3 F3 78 */ mr r3, r30 /* 80054438 00050098 7F E4 FB 78 */ mr r4, r31 /* 8005443C 0005009C 38 C1 00 10 */ addi r6, r1, 0x10 /* 80054440 000500A0 38 A0 00 06 */ li r5, 6 /* 80054444 000500A4 48 1F FA 99 */ bl func_80253EDC /* 80054448 000500A8 38 81 00 10 */ addi r4, r1, 0x10 /* 8005444C 000500AC 38 60 00 02 */ li r3, 2 /* 80054450 000500B0 48 00 55 ED */ bl func_80059A3C /* 80054454 000500B4 48 00 00 24 */ b lbl_80054478 lbl_80054458: /* 80054458 000500B8 7F C3 F3 78 */ mr r3, r30 /* 8005445C 000500BC 7F E4 FB 78 */ mr r4, r31 /* 80054460 000500C0 38 C1 00 10 */ addi r6, r1, 0x10 /* 80054464 000500C4 38 A0 00 06 */ li r5, 6 /* 80054468 000500C8 48 1F FA 75 */ bl func_80253EDC /* 8005446C 000500CC 38 81 00 10 */ addi r4, r1, 0x10 /* 80054470 000500D0 38 60 00 03 */ li r3, 3 /* 80054474 000500D4 48 00 55 C9 */ bl func_80059A3C lbl_80054478: /* 80054478 000500D8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8005447C 000500DC 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80054480 000500E0 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80054484 000500E4 7C 08 03 A6 */ mtlr r0 /* 80054488 000500E8 38 21 00 40 */ addi r1, r1, 0x40 /* 8005448C 000500EC 4E 80 00 20 */ blr .global func_80054490 func_80054490: /* 80054490 000500F0 4E 80 00 20 */ blr .global func_80054494 func_80054494: /* 80054494 000500F4 4E 80 00 20 */ blr .global func_80054498 func_80054498: /* 80054498 000500F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005449C 000500FC 7C 08 02 A6 */ mflr r0 /* 800544A0 00050100 90 01 00 14 */ stw r0, 0x14(r1) /* 800544A4 00050104 93 E1 00 0C */ stw r31, 0xc(r1) /* 800544A8 00050108 7C 7F 1B 78 */ mr r31, r3 /* 800544AC 0005010C 38 60 00 04 */ li r3, 4 /* 800544B0 00050110 93 C1 00 08 */ stw r30, 8(r1) /* 800544B4 00050114 48 1E 6B A5 */ bl func_8023B058 /* 800544B8 00050118 3C 80 21 32 */ lis r4, 0x21320400@ha /* 800544BC 0005011C 7C 7E 1B 78 */ mr r30, r3 /* 800544C0 00050120 38 84 04 00 */ addi r4, r4, 0x21320400@l /* 800544C4 00050124 38 60 03 E8 */ li r3, 0x3e8 /* 800544C8 00050128 48 18 6F F5 */ bl func_801DB4BC /* 800544CC 0005012C 2C 03 00 00 */ cmpwi r3, 0 /* 800544D0 00050130 90 7F 00 54 */ stw r3, 0x54(r31) /* 800544D4 00050134 41 82 02 44 */ beq lbl_80054718 /* 800544D8 00050138 80 1F 00 28 */ lwz r0, 0x28(r31) /* 800544DC 0005013C 2C 00 00 00 */ cmpwi r0, 0 /* 800544E0 00050140 41 82 00 0C */ beq lbl_800544EC /* 800544E4 00050144 7F E3 FB 78 */ mr r3, r31 /* 800544E8 00050148 48 00 02 49 */ bl func_80054730 lbl_800544EC: /* 800544EC 0005014C 2C 1E 00 00 */ cmpwi r30, 0 /* 800544F0 00050150 41 82 00 10 */ beq lbl_80054500 /* 800544F4 00050154 80 1E 00 0C */ lwz r0, 0xc(r30) /* 800544F8 00050158 90 1F 00 4C */ stw r0, 0x4c(r31) /* 800544FC 0005015C 48 00 00 0C */ b lbl_80054508 lbl_80054500: /* 80054500 00050160 38 00 00 00 */ li r0, 0 /* 80054504 00050164 90 1F 00 4C */ stw r0, 0x4c(r31) lbl_80054508: /* 80054508 00050168 80 7F 00 54 */ lwz r3, 0x54(r31) /* 8005450C 0005016C 7C 64 1B 78 */ mr r4, r3 /* 80054510 00050170 48 18 EF CD */ bl func_801E34DC /* 80054514 00050174 48 18 66 15 */ bl func_801DAB28 /* 80054518 00050178 2C 03 00 00 */ cmpwi r3, 0 /* 8005451C 0005017C 41 82 00 14 */ beq lbl_80054530 /* 80054520 00050180 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80054524 00050184 38 80 00 14 */ li r4, 0x14 /* 80054528 00050188 48 18 67 6D */ bl func_801DAC94 /* 8005452C 0005018C 48 00 00 08 */ b lbl_80054534 lbl_80054530: /* 80054530 00050190 38 60 00 00 */ li r3, 0 lbl_80054534: /* 80054534 00050194 2C 03 00 00 */ cmpwi r3, 0 /* 80054538 00050198 41 82 00 0C */ beq lbl_80054544 /* 8005453C 0005019C 80 9F 00 54 */ lwz r4, 0x54(r31) /* 80054540 000501A0 48 1A 5B 55 */ bl func_801FA094 lbl_80054544: /* 80054544 000501A4 2C 03 00 00 */ cmpwi r3, 0 /* 80054548 000501A8 90 7F 00 28 */ stw r3, 0x28(r31) /* 8005454C 000501AC 41 82 01 CC */ beq lbl_80054718 /* 80054550 000501B0 80 83 00 04 */ lwz r4, 4(r3) /* 80054554 000501B4 2C 04 00 00 */ cmpwi r4, 0 /* 80054558 000501B8 40 82 00 0C */ bne lbl_80054564 /* 8005455C 000501BC 38 60 00 00 */ li r3, 0 /* 80054560 000501C0 48 00 00 20 */ b lbl_80054580 lbl_80054564: /* 80054564 000501C4 80 63 00 00 */ lwz r3, 0(r3) /* 80054568 000501C8 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8005456C 000501CC 2C 00 00 00 */ cmpwi r0, 0 /* 80054570 000501D0 40 82 00 0C */ bne lbl_8005457C /* 80054574 000501D4 38 60 00 00 */ li r3, 0 /* 80054578 000501D8 48 00 00 08 */ b lbl_80054580 lbl_8005457C: /* 8005457C 000501DC 80 64 00 00 */ lwz r3, 0(r4) lbl_80054580: /* 80054580 000501E0 2C 03 00 00 */ cmpwi r3, 0 /* 80054584 000501E4 90 7F 00 38 */ stw r3, 0x38(r31) /* 80054588 000501E8 41 82 00 A8 */ beq lbl_80054630 /* 8005458C 000501EC 48 1A F2 85 */ bl func_80203810 /* 80054590 000501F0 80 7F 00 38 */ lwz r3, 0x38(r31) /* 80054594 000501F4 48 1A C2 C5 */ bl func_80200858 /* 80054598 000501F8 80 7F 00 38 */ lwz r3, 0x38(r31) /* 8005459C 000501FC 80 83 00 10 */ lwz r4, 0x10(r3) /* 800545A0 00050200 2C 04 00 00 */ cmpwi r4, 0 /* 800545A4 00050204 40 82 00 0C */ bne lbl_800545B0 /* 800545A8 00050208 38 00 00 00 */ li r0, 0 /* 800545AC 0005020C 48 00 00 4C */ b lbl_800545F8 lbl_800545B0: /* 800545B0 00050210 A0 03 00 E0 */ lhz r0, 0xe0(r3) /* 800545B4 00050214 2C 00 00 00 */ cmpwi r0, 0 /* 800545B8 00050218 40 82 00 0C */ bne lbl_800545C4 /* 800545BC 0005021C 38 00 00 00 */ li r0, 0 /* 800545C0 00050220 48 00 00 38 */ b lbl_800545F8 lbl_800545C4: /* 800545C4 00050224 80 A3 00 08 */ lwz r5, 8(r3) /* 800545C8 00050228 A0 84 00 00 */ lhz r4, 0(r4) /* 800545CC 0005022C 2C 05 00 00 */ cmpwi r5, 0 /* 800545D0 00050230 40 82 00 0C */ bne lbl_800545DC /* 800545D4 00050234 38 00 00 00 */ li r0, 0 /* 800545D8 00050238 48 00 00 20 */ b lbl_800545F8 lbl_800545DC: /* 800545DC 0005023C A0 03 00 DE */ lhz r0, 0xde(r3) /* 800545E0 00050240 7C 04 00 40 */ cmplw r4, r0 /* 800545E4 00050244 41 80 00 0C */ blt lbl_800545F0 /* 800545E8 00050248 38 00 00 00 */ li r0, 0 /* 800545EC 0005024C 48 00 00 0C */ b lbl_800545F8 lbl_800545F0: /* 800545F0 00050250 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 800545F4 00050254 7C 05 00 2E */ lwzx r0, r5, r0 lbl_800545F8: /* 800545F8 00050258 2C 1E 00 00 */ cmpwi r30, 0 /* 800545FC 0005025C 41 82 00 10 */ beq lbl_8005460C /* 80054600 00050260 2C 00 00 00 */ cmpwi r0, 0 /* 80054604 00050264 41 82 00 08 */ beq lbl_8005460C /* 80054608 00050268 90 1E 00 0C */ stw r0, 0xc(r30) lbl_8005460C: /* 8005460C 0005026C 80 7F 00 38 */ lwz r3, 0x38(r31) /* 80054610 00050270 38 80 00 00 */ li r4, 0 /* 80054614 00050274 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054618 00050278 38 A0 00 01 */ li r5, 1 /* 8005461C 0005027C C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 80054620 00050280 38 C0 00 00 */ li r6, 0 /* 80054624 00050284 38 E0 00 00 */ li r7, 0 /* 80054628 00050288 39 00 00 00 */ li r8, 0 /* 8005462C 0005028C 48 1A 07 C9 */ bl func_801F4DF4 lbl_80054630: /* 80054630 00050290 38 00 00 01 */ li r0, 1 /* 80054634 00050294 7F E3 FB 78 */ mr r3, r31 /* 80054638 00050298 98 1F 00 24 */ stb r0, 0x24(r31) /* 8005463C 0005029C 38 80 00 00 */ li r4, 0 /* 80054640 000502A0 48 00 03 55 */ bl func_80054994 /* 80054644 000502A4 48 18 64 E5 */ bl func_801DAB28 /* 80054648 000502A8 2C 03 00 00 */ cmpwi r3, 0 /* 8005464C 000502AC 41 82 00 18 */ beq lbl_80054664 /* 80054650 000502B0 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80054654 000502B4 38 80 01 40 */ li r4, 0x140 /* 80054658 000502B8 48 18 66 3D */ bl func_801DAC94 /* 8005465C 000502BC 7C 7E 1B 78 */ mr r30, r3 /* 80054660 000502C0 48 00 00 08 */ b lbl_80054668 lbl_80054664: /* 80054664 000502C4 3B C0 00 00 */ li r30, 0 lbl_80054668: /* 80054668 000502C8 2C 1E 00 00 */ cmpwi r30, 0 /* 8005466C 000502CC 41 82 00 24 */ beq lbl_80054690 /* 80054670 000502D0 3C 80 2B 65 */ lis r4, 0x2B650A00@ha /* 80054674 000502D4 38 60 03 E8 */ li r3, 0x3e8 /* 80054678 000502D8 38 84 0A 00 */ addi r4, r4, 0x2B650A00@l /* 8005467C 000502DC 48 18 6E 41 */ bl func_801DB4BC /* 80054680 000502E0 7C 64 1B 78 */ mr r4, r3 /* 80054684 000502E4 7F C3 F3 78 */ mr r3, r30 /* 80054688 000502E8 48 1A 52 65 */ bl func_801F98EC /* 8005468C 000502EC 7C 7E 1B 78 */ mr r30, r3 lbl_80054690: /* 80054690 000502F0 2C 1E 00 00 */ cmpwi r30, 0 /* 80054694 000502F4 93 DF 00 64 */ stw r30, 0x64(r31) /* 80054698 000502F8 41 82 00 80 */ beq lbl_80054718 /* 8005469C 000502FC 80 7F 00 38 */ lwz r3, 0x38(r31) /* 800546A0 00050300 80 83 00 08 */ lwz r4, 8(r3) /* 800546A4 00050304 2C 04 00 00 */ cmpwi r4, 0 /* 800546A8 00050308 40 82 00 0C */ bne lbl_800546B4 /* 800546AC 0005030C 38 60 00 00 */ li r3, 0 /* 800546B0 00050310 48 00 00 1C */ b lbl_800546CC lbl_800546B4: /* 800546B4 00050314 A0 03 00 DE */ lhz r0, 0xde(r3) /* 800546B8 00050318 28 00 00 01 */ cmplwi r0, 1 /* 800546BC 0005031C 41 81 00 0C */ bgt lbl_800546C8 /* 800546C0 00050320 38 60 00 00 */ li r3, 0 /* 800546C4 00050324 48 00 00 08 */ b lbl_800546CC lbl_800546C8: /* 800546C8 00050328 80 64 00 04 */ lwz r3, 4(r4) lbl_800546CC: /* 800546CC 0005032C 7F C5 F3 78 */ mr r5, r30 /* 800546D0 00050330 38 80 00 07 */ li r4, 7 /* 800546D4 00050334 38 C0 00 00 */ li r6, 0 /* 800546D8 00050338 38 E0 00 03 */ li r7, 3 /* 800546DC 0005033C 48 19 DA B1 */ bl func_801F218C /* 800546E0 00050340 80 7F 00 64 */ lwz r3, 0x64(r31) /* 800546E4 00050344 80 63 01 38 */ lwz r3, 0x138(r3) /* 800546E8 00050348 2C 03 00 00 */ cmpwi r3, 0 /* 800546EC 0005034C 41 82 00 10 */ beq lbl_800546FC /* 800546F0 00050350 A0 03 01 48 */ lhz r0, 0x148(r3) /* 800546F4 00050354 60 00 00 10 */ ori r0, r0, 0x10 /* 800546F8 00050358 B0 03 01 48 */ sth r0, 0x148(r3) lbl_800546FC: /* 800546FC 0005035C 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80054700 00050360 80 63 01 38 */ lwz r3, 0x138(r3) /* 80054704 00050364 2C 03 00 00 */ cmpwi r3, 0 /* 80054708 00050368 41 82 00 10 */ beq lbl_80054718 /* 8005470C 0005036C A0 03 01 48 */ lhz r0, 0x148(r3) /* 80054710 00050370 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80054714 00050374 B0 03 01 48 */ sth r0, 0x148(r3) lbl_80054718: /* 80054718 00050378 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005471C 0005037C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80054720 00050380 83 C1 00 08 */ lwz r30, 8(r1) /* 80054724 00050384 7C 08 03 A6 */ mtlr r0 /* 80054728 00050388 38 21 00 10 */ addi r1, r1, 0x10 /* 8005472C 0005038C 4E 80 00 20 */ blr .global func_80054730 func_80054730: /* 80054730 00050390 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80054734 00050394 7C 08 02 A6 */ mflr r0 /* 80054738 00050398 90 01 00 14 */ stw r0, 0x14(r1) /* 8005473C 0005039C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80054740 000503A0 7C 7F 1B 78 */ mr r31, r3 /* 80054744 000503A4 38 60 00 04 */ li r3, 4 /* 80054748 000503A8 48 1E 69 11 */ bl func_8023B058 /* 8005474C 000503AC 80 1F 00 4C */ lwz r0, 0x4c(r31) /* 80054750 000503B0 2C 00 00 00 */ cmpwi r0, 0 /* 80054754 000503B4 41 82 00 10 */ beq lbl_80054764 /* 80054758 000503B8 90 03 00 0C */ stw r0, 0xc(r3) /* 8005475C 000503BC 38 00 00 00 */ li r0, 0 /* 80054760 000503C0 90 1F 00 4C */ stw r0, 0x4c(r31) lbl_80054764: /* 80054764 000503C4 80 1F 00 28 */ lwz r0, 0x28(r31) /* 80054768 000503C8 2C 00 00 00 */ cmpwi r0, 0 /* 8005476C 000503CC 41 82 00 5C */ beq lbl_800547C8 /* 80054770 000503D0 80 7F 00 64 */ lwz r3, 0x64(r31) /* 80054774 000503D4 2C 03 00 00 */ cmpwi r3, 0 /* 80054778 000503D8 41 82 00 24 */ beq lbl_8005479C /* 8005477C 000503DC 41 82 00 18 */ beq lbl_80054794 /* 80054780 000503E0 81 83 01 00 */ lwz r12, 0x100(r3) /* 80054784 000503E4 38 80 00 01 */ li r4, 1 /* 80054788 000503E8 81 8C 00 08 */ lwz r12, 8(r12) /* 8005478C 000503EC 7D 89 03 A6 */ mtctr r12 /* 80054790 000503F0 4E 80 04 21 */ bctrl lbl_80054794: /* 80054794 000503F4 38 00 00 00 */ li r0, 0 /* 80054798 000503F8 90 1F 00 64 */ stw r0, 0x64(r31) lbl_8005479C: /* 8005479C 000503FC 80 7F 00 38 */ lwz r3, 0x38(r31) /* 800547A0 00050400 2C 03 00 00 */ cmpwi r3, 0 /* 800547A4 00050404 41 82 00 10 */ beq lbl_800547B4 /* 800547A8 00050408 48 1A F1 A9 */ bl func_80203950 /* 800547AC 0005040C 38 00 00 00 */ li r0, 0 /* 800547B0 00050410 90 1F 00 38 */ stw r0, 0x38(r31) lbl_800547B4: /* 800547B4 00050414 80 7F 00 28 */ lwz r3, 0x28(r31) /* 800547B8 00050418 38 80 00 01 */ li r4, 1 /* 800547BC 0005041C 48 1A 5A D9 */ bl func_801FA294 /* 800547C0 00050420 38 00 00 00 */ li r0, 0 /* 800547C4 00050424 90 1F 00 28 */ stw r0, 0x28(r31) lbl_800547C8: /* 800547C8 00050428 80 7F 00 54 */ lwz r3, 0x54(r31) /* 800547CC 0005042C 2C 03 00 00 */ cmpwi r3, 0 /* 800547D0 00050430 41 82 00 10 */ beq lbl_800547E0 /* 800547D4 00050434 48 18 F0 1D */ bl func_801E37F0 /* 800547D8 00050438 38 00 00 00 */ li r0, 0 /* 800547DC 0005043C 90 1F 00 54 */ stw r0, 0x54(r31) lbl_800547E0: /* 800547E0 00050440 80 01 00 14 */ lwz r0, 0x14(r1) /* 800547E4 00050444 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800547E8 00050448 7C 08 03 A6 */ mtlr r0 /* 800547EC 0005044C 38 21 00 10 */ addi r1, r1, 0x10 /* 800547F0 00050450 4E 80 00 20 */ blr .global func_800547F4 func_800547F4: /* 800547F4 00050454 80 63 00 38 */ lwz r3, 0x38(r3) /* 800547F8 00050458 4E 80 00 20 */ blr .global func_800547FC func_800547FC: /* 800547FC 0005045C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80054800 00050460 7C 08 02 A6 */ mflr r0 /* 80054804 00050464 90 01 00 14 */ stw r0, 0x14(r1) /* 80054808 00050468 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005480C 0005046C 93 C1 00 08 */ stw r30, 8(r1) /* 80054810 00050470 7C 7E 1B 78 */ mr r30, r3 /* 80054814 00050474 80 03 00 2C */ lwz r0, 0x2c(r3) /* 80054818 00050478 2C 00 00 00 */ cmpwi r0, 0 /* 8005481C 0005047C 41 82 00 08 */ beq lbl_80054824 /* 80054820 00050480 48 00 00 F5 */ bl func_80054914 lbl_80054824: /* 80054824 00050484 7F C3 F3 78 */ mr r3, r30 /* 80054828 00050488 48 00 0B 01 */ bl func_80055328 /* 8005482C 0005048C 7C 7F 1B 78 */ mr r31, r3 /* 80054830 00050490 7F C3 F3 78 */ mr r3, r30 /* 80054834 00050494 48 00 0A C5 */ bl func_800552F8 /* 80054838 00050498 7F E4 FB 78 */ mr r4, r31 /* 8005483C 0005049C 48 18 6C 81 */ bl func_801DB4BC /* 80054840 000504A0 2C 03 00 00 */ cmpwi r3, 0 /* 80054844 000504A4 90 7E 00 58 */ stw r3, 0x58(r30) /* 80054848 000504A8 41 82 00 B4 */ beq lbl_800548FC /* 8005484C 000504AC 7C 64 1B 78 */ mr r4, r3 /* 80054850 000504B0 48 18 EC 8D */ bl func_801E34DC /* 80054854 000504B4 48 18 62 D5 */ bl func_801DAB28 /* 80054858 000504B8 2C 03 00 00 */ cmpwi r3, 0 /* 8005485C 000504BC 41 82 00 14 */ beq lbl_80054870 /* 80054860 000504C0 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80054864 000504C4 38 80 00 14 */ li r4, 0x14 /* 80054868 000504C8 48 18 64 2D */ bl func_801DAC94 /* 8005486C 000504CC 48 00 00 08 */ b lbl_80054874 lbl_80054870: /* 80054870 000504D0 38 60 00 00 */ li r3, 0 lbl_80054874: /* 80054874 000504D4 2C 03 00 00 */ cmpwi r3, 0 /* 80054878 000504D8 41 82 00 0C */ beq lbl_80054884 /* 8005487C 000504DC 80 9E 00 58 */ lwz r4, 0x58(r30) /* 80054880 000504E0 48 1A 58 15 */ bl func_801FA094 lbl_80054884: /* 80054884 000504E4 2C 03 00 00 */ cmpwi r3, 0 /* 80054888 000504E8 90 7E 00 2C */ stw r3, 0x2c(r30) /* 8005488C 000504EC 41 82 00 70 */ beq lbl_800548FC /* 80054890 000504F0 80 83 00 04 */ lwz r4, 4(r3) /* 80054894 000504F4 2C 04 00 00 */ cmpwi r4, 0 /* 80054898 000504F8 40 82 00 0C */ bne lbl_800548A4 /* 8005489C 000504FC 38 60 00 00 */ li r3, 0 /* 800548A0 00050500 48 00 00 20 */ b lbl_800548C0 lbl_800548A4: /* 800548A4 00050504 80 63 00 00 */ lwz r3, 0(r3) /* 800548A8 00050508 A0 03 00 18 */ lhz r0, 0x18(r3) /* 800548AC 0005050C 2C 00 00 00 */ cmpwi r0, 0 /* 800548B0 00050510 40 82 00 0C */ bne lbl_800548BC /* 800548B4 00050514 38 60 00 00 */ li r3, 0 /* 800548B8 00050518 48 00 00 08 */ b lbl_800548C0 lbl_800548BC: /* 800548BC 0005051C 80 64 00 00 */ lwz r3, 0(r4) lbl_800548C0: /* 800548C0 00050520 2C 03 00 00 */ cmpwi r3, 0 /* 800548C4 00050524 90 7E 00 40 */ stw r3, 0x40(r30) /* 800548C8 00050528 41 82 00 34 */ beq lbl_800548FC /* 800548CC 0005052C 48 1A EF 45 */ bl func_80203810 /* 800548D0 00050530 80 7E 00 40 */ lwz r3, 0x40(r30) /* 800548D4 00050534 48 1A BF 85 */ bl func_80200858 /* 800548D8 00050538 80 7E 00 40 */ lwz r3, 0x40(r30) /* 800548DC 0005053C 38 80 00 00 */ li r4, 0 /* 800548E0 00050540 C0 22 84 E8 */ lfs f1, lbl_80640AE8-_SDA2_BASE_(r2) /* 800548E4 00050544 38 A0 00 00 */ li r5, 0 /* 800548E8 00050548 C0 42 84 EC */ lfs f2, lbl_80640AEC-_SDA2_BASE_(r2) /* 800548EC 0005054C 38 C0 00 00 */ li r6, 0 /* 800548F0 00050550 38 E0 00 00 */ li r7, 0 /* 800548F4 00050554 39 00 00 00 */ li r8, 0 /* 800548F8 00050558 48 1A 04 FD */ bl func_801F4DF4 lbl_800548FC: /* 800548FC 0005055C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80054900 00050560 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80054904 00050564 83 C1 00 08 */ lwz r30, 8(r1) /* 80054908 00050568 7C 08 03 A6 */ mtlr r0 /* 8005490C 0005056C 38 21 00 10 */ addi r1, r1, 0x10 /* 80054910 00050570 4E 80 00 20 */ blr .global func_80054914 func_80054914: /* 80054914 00050574 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80054918 00050578 7C 08 02 A6 */ mflr r0 /* 8005491C 0005057C 90 01 00 14 */ stw r0, 0x14(r1) /* 80054920 00050580 93 E1 00 0C */ stw r31, 0xc(r1) /* 80054924 00050584 7C 7F 1B 78 */ mr r31, r3 /* 80054928 00050588 80 03 00 2C */ lwz r0, 0x2c(r3) /* 8005492C 0005058C 2C 00 00 00 */ cmpwi r0, 0 /* 80054930 00050590 41 82 00 30 */ beq lbl_80054960 /* 80054934 00050594 80 63 00 40 */ lwz r3, 0x40(r3) /* 80054938 00050598 2C 03 00 00 */ cmpwi r3, 0 /* 8005493C 0005059C 41 82 00 10 */ beq lbl_8005494C /* 80054940 000505A0 48 1A F0 11 */ bl func_80203950 /* 80054944 000505A4 38 00 00 00 */ li r0, 0 /* 80054948 000505A8 90 1F 00 40 */ stw r0, 0x40(r31) lbl_8005494C: /* 8005494C 000505AC 80 7F 00 2C */ lwz r3, 0x2c(r31) /* 80054950 000505B0 38 80 00 01 */ li r4, 1 /* 80054954 000505B4 48 1A 59 41 */ bl func_801FA294 /* 80054958 000505B8 38 00 00 00 */ li r0, 0 /* 8005495C 000505BC 90 1F 00 2C */ stw r0, 0x2c(r31) lbl_80054960: /* 80054960 000505C0 80 7F 00 58 */ lwz r3, 0x58(r31) /* 80054964 000505C4 2C 03 00 00 */ cmpwi r3, 0 /* 80054968 000505C8 41 82 00 10 */ beq lbl_80054978 /* 8005496C 000505CC 48 18 EE 85 */ bl func_801E37F0 /* 80054970 000505D0 38 00 00 00 */ li r0, 0 /* 80054974 000505D4 90 1F 00 58 */ stw r0, 0x58(r31) lbl_80054978: /* 80054978 000505D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005497C 000505DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80054980 000505E0 7C 08 03 A6 */ mtlr r0 /* 80054984 000505E4 38 21 00 10 */ addi r1, r1, 0x10 /* 80054988 000505E8 4E 80 00 20 */ blr .global func_8005498C func_8005498C: /* 8005498C 000505EC 80 63 00 40 */ lwz r3, 0x40(r3) /* 80054990 000505F0 4E 80 00 20 */ blr .global func_80054994 func_80054994: /* 80054994 000505F4 88 03 00 24 */ lbz r0, 0x24(r3) /* 80054998 000505F8 7C 00 20 40 */ cmplw r0, r4 /* 8005499C 000505FC 4D 82 00 20 */ beqlr /* 800549A0 00050600 80 A3 00 28 */ lwz r5, 0x28(r3) /* 800549A4 00050604 2C 05 00 00 */ cmpwi r5, 0 /* 800549A8 00050608 41 82 00 84 */ beq lbl_80054A2C /* 800549AC 0005060C 80 A5 00 00 */ lwz r5, 0(r5) /* 800549B0 00050610 39 00 00 00 */ li r8, 0 /* 800549B4 00050614 A0 05 00 18 */ lhz r0, 0x18(r5) /* 800549B8 00050618 7C 09 03 A6 */ mtctr r0 /* 800549BC 0005061C 28 00 00 00 */ cmplwi r0, 0 /* 800549C0 00050620 40 81 00 6C */ ble lbl_80054A2C lbl_800549C4: /* 800549C4 00050624 80 A3 00 28 */ lwz r5, 0x28(r3) /* 800549C8 00050628 80 E5 00 04 */ lwz r7, 4(r5) /* 800549CC 0005062C 2C 07 00 00 */ cmpwi r7, 0 /* 800549D0 00050630 40 82 00 0C */ bne lbl_800549DC /* 800549D4 00050634 38 A0 00 00 */ li r5, 0 /* 800549D8 00050638 48 00 00 28 */ b lbl_80054A00 lbl_800549DC: /* 800549DC 0005063C 80 A5 00 00 */ lwz r5, 0(r5) /* 800549E0 00050640 55 06 04 3E */ clrlwi r6, r8, 0x10 /* 800549E4 00050644 A0 05 00 18 */ lhz r0, 0x18(r5) /* 800549E8 00050648 7C 06 00 40 */ cmplw r6, r0 /* 800549EC 0005064C 41 80 00 0C */ blt lbl_800549F8 /* 800549F0 00050650 38 A0 00 00 */ li r5, 0 /* 800549F4 00050654 48 00 00 0C */ b lbl_80054A00 lbl_800549F8: /* 800549F8 00050658 55 00 13 BA */ rlwinm r0, r8, 2, 0xe, 0x1d /* 800549FC 0005065C 7C A7 00 2E */ lwzx r5, r7, r0 lbl_80054A00: /* 80054A00 00050660 2C 04 00 00 */ cmpwi r4, 0 /* 80054A04 00050664 41 82 00 14 */ beq lbl_80054A18 /* 80054A08 00050668 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80054A0C 0005066C 60 00 00 01 */ ori r0, r0, 1 /* 80054A10 00050670 B0 05 00 DC */ sth r0, 0xdc(r5) /* 80054A14 00050674 48 00 00 10 */ b lbl_80054A24 lbl_80054A18: /* 80054A18 00050678 A0 05 00 DC */ lhz r0, 0xdc(r5) /* 80054A1C 0005067C 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 80054A20 00050680 B0 05 00 DC */ sth r0, 0xdc(r5) lbl_80054A24: /* 80054A24 00050684 39 08 00 01 */ addi r8, r8, 1 /* 80054A28 00050688 42 00 FF 9C */ bdnz lbl_800549C4 lbl_80054A2C: /* 80054A2C 0005068C 98 83 00 24 */ stb r4, 0x24(r3) /* 80054A30 00050690 4E 80 00 20 */ blr .global func_80054A34 func_80054A34: /* 80054A34 00050694 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80054A38 00050698 7C 08 02 A6 */ mflr r0 /* 80054A3C 0005069C 90 01 00 34 */ stw r0, 0x34(r1) /* 80054A40 000506A0 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80054A44 000506A4 7C 9F 23 78 */ mr r31, r4 /* 80054A48 000506A8 93 C1 00 28 */ stw r30, 0x28(r1) /* 80054A4C 000506AC 7C 7E 1B 78 */ mr r30, r3 /* 80054A50 000506B0 93 A1 00 24 */ stw r29, 0x24(r1) /* 80054A54 000506B4 93 81 00 20 */ stw r28, 0x20(r1) /* 80054A58 000506B8 A0 03 00 70 */ lhz r0, 0x70(r3) /* 80054A5C 000506BC 54 00 A7 BF */ rlwinm. r0, r0, 0x14, 0x1e, 0x1f /* 80054A60 000506C0 41 82 00 08 */ beq lbl_80054A68 /* 80054A64 000506C4 48 00 06 01 */ bl func_80055064 lbl_80054A68: /* 80054A68 000506C8 2C 1F 00 02 */ cmpwi r31, 2 /* 80054A6C 000506CC 41 82 02 5C */ beq lbl_80054CC8 /* 80054A70 000506D0 40 80 00 14 */ bge lbl_80054A84 /* 80054A74 000506D4 2C 1F 00 00 */ cmpwi r31, 0 /* 80054A78 000506D8 41 82 00 18 */ beq lbl_80054A90 /* 80054A7C 000506DC 40 80 02 2C */ bge lbl_80054CA8 /* 80054A80 000506E0 48 00 02 84 */ b lbl_80054D04 lbl_80054A84: /* 80054A84 000506E4 2C 1F 00 04 */ cmpwi r31, 4 /* 80054A88 000506E8 40 80 02 7C */ bge lbl_80054D04 /* 80054A8C 000506EC 48 00 02 5C */ b lbl_80054CE8 lbl_80054A90: /* 80054A90 000506F0 7F C3 F3 78 */ mr r3, r30 /* 80054A94 000506F4 48 00 09 61 */ bl func_800553F4 /* 80054A98 000506F8 7F C3 F3 78 */ mr r3, r30 /* 80054A9C 000506FC 48 00 08 F1 */ bl func_8005538C /* 80054AA0 00050700 7C 7D 1B 78 */ mr r29, r3 /* 80054AA4 00050704 7F C3 F3 78 */ mr r3, r30 /* 80054AA8 00050708 48 00 08 51 */ bl func_800552F8 /* 80054AAC 0005070C 7F A4 EB 78 */ mr r4, r29 /* 80054AB0 00050710 48 18 6A 0D */ bl func_801DB4BC /* 80054AB4 00050714 90 7E 00 5C */ stw r3, 0x5c(r30) /* 80054AB8 00050718 48 18 60 71 */ bl func_801DAB28 /* 80054ABC 0005071C 2C 03 00 00 */ cmpwi r3, 0 /* 80054AC0 00050720 41 82 00 18 */ beq lbl_80054AD8 /* 80054AC4 00050724 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80054AC8 00050728 38 80 01 40 */ li r4, 0x140 /* 80054ACC 0005072C 48 18 61 C9 */ bl func_801DAC94 /* 80054AD0 00050730 7C 7C 1B 78 */ mr r28, r3 /* 80054AD4 00050734 48 00 00 08 */ b lbl_80054ADC lbl_80054AD8: /* 80054AD8 00050738 3B 80 00 00 */ li r28, 0 lbl_80054ADC: /* 80054ADC 0005073C 2C 1C 00 00 */ cmpwi r28, 0 /* 80054AE0 00050740 41 82 00 30 */ beq lbl_80054B10 /* 80054AE4 00050744 7F C3 F3 78 */ mr r3, r30 /* 80054AE8 00050748 48 00 08 71 */ bl func_80055358 /* 80054AEC 0005074C 7C 7D 1B 78 */ mr r29, r3 /* 80054AF0 00050750 7F C3 F3 78 */ mr r3, r30 /* 80054AF4 00050754 48 00 08 05 */ bl func_800552F8 /* 80054AF8 00050758 7F A4 EB 78 */ mr r4, r29 /* 80054AFC 0005075C 48 18 69 C1 */ bl func_801DB4BC /* 80054B00 00050760 7C 64 1B 78 */ mr r4, r3 /* 80054B04 00050764 7F 83 E3 78 */ mr r3, r28 /* 80054B08 00050768 48 1A 4D E5 */ bl func_801F98EC /* 80054B0C 0005076C 7C 7C 1B 78 */ mr r28, r3 lbl_80054B10: /* 80054B10 00050770 2C 1C 00 00 */ cmpwi r28, 0 /* 80054B14 00050774 93 9E 00 60 */ stw r28, 0x60(r30) /* 80054B18 00050778 41 82 01 28 */ beq lbl_80054C40 /* 80054B1C 0005077C C0 02 84 EC */ lfs f0, lbl_80640AEC-_SDA2_BASE_(r2) /* 80054B20 00050780 C0 42 85 48 */ lfs f2, lbl_80640B48-_SDA2_BASE_(r2) /* 80054B24 00050784 D0 1C 00 48 */ stfs f0, 0x48(r28) /* 80054B28 00050788 FC 00 10 40 */ fcmpo cr0, f0, f2 /* 80054B2C 0005078C D0 1C 00 4C */ stfs f0, 0x4c(r28) /* 80054B30 00050790 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80054B34 00050794 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80054B38 00050798 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80054B3C 0005079C D0 1C 00 50 */ stfs f0, 0x50(r28) /* 80054B40 000507A0 40 80 00 2C */ bge lbl_80054B6C /* 80054B44 000507A4 C0 3C 00 48 */ lfs f1, 0x48(r28) /* 80054B48 000507A8 C0 62 85 4C */ lfs f3, lbl_80640B4C-_SDA2_BASE_(r2) /* 80054B4C 000507AC FC 01 18 40 */ fcmpo cr0, f1, f3 /* 80054B50 000507B0 40 81 00 1C */ ble lbl_80054B6C /* 80054B54 000507B4 C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054B58 000507B8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80054B5C 000507BC 40 80 00 08 */ bge lbl_80054B64 /* 80054B60 000507C0 48 00 00 08 */ b lbl_80054B68 lbl_80054B64: /* 80054B64 000507C4 FC 60 10 90 */ fmr f3, f2 lbl_80054B68: /* 80054B68 000507C8 D0 7C 00 48 */ stfs f3, 0x48(r28) lbl_80054B6C: /* 80054B6C 000507CC C0 5C 00 4C */ lfs f2, 0x4c(r28) /* 80054B70 000507D0 C0 22 85 48 */ lfs f1, lbl_80640B48-_SDA2_BASE_(r2) /* 80054B74 000507D4 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80054B78 000507D8 40 80 00 28 */ bge lbl_80054BA0 /* 80054B7C 000507DC C0 62 85 4C */ lfs f3, lbl_80640B4C-_SDA2_BASE_(r2) /* 80054B80 000507E0 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80054B84 000507E4 40 81 00 1C */ ble lbl_80054BA0 /* 80054B88 000507E8 C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054B8C 000507EC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80054B90 000507F0 40 80 00 08 */ bge lbl_80054B98 /* 80054B94 000507F4 48 00 00 08 */ b lbl_80054B9C lbl_80054B98: /* 80054B98 000507F8 FC 60 08 90 */ fmr f3, f1 lbl_80054B9C: /* 80054B9C 000507FC D0 7C 00 4C */ stfs f3, 0x4c(r28) lbl_80054BA0: /* 80054BA0 00050800 C0 5C 00 50 */ lfs f2, 0x50(r28) /* 80054BA4 00050804 C0 22 85 48 */ lfs f1, lbl_80640B48-_SDA2_BASE_(r2) /* 80054BA8 00050808 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 80054BAC 0005080C 40 80 00 28 */ bge lbl_80054BD4 /* 80054BB0 00050810 C0 62 85 4C */ lfs f3, lbl_80640B4C-_SDA2_BASE_(r2) /* 80054BB4 00050814 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 80054BB8 00050818 40 81 00 1C */ ble lbl_80054BD4 /* 80054BBC 0005081C C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054BC0 00050820 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80054BC4 00050824 40 80 00 08 */ bge lbl_80054BCC /* 80054BC8 00050828 48 00 00 08 */ b lbl_80054BD0 lbl_80054BCC: /* 80054BCC 0005082C FC 60 08 90 */ fmr f3, f1 lbl_80054BD0: /* 80054BD0 00050830 D0 7C 00 50 */ stfs f3, 0x50(r28) lbl_80054BD4: /* 80054BD4 00050834 7F 83 E3 78 */ mr r3, r28 /* 80054BD8 00050838 38 80 00 01 */ li r4, 1 /* 80054BDC 0005083C 48 19 DA DD */ bl func_801F26B8 /* 80054BE0 00050840 80 7E 00 60 */ lwz r3, 0x60(r30) /* 80054BE4 00050844 80 63 01 38 */ lwz r3, 0x138(r3) /* 80054BE8 00050848 2C 03 00 00 */ cmpwi r3, 0 /* 80054BEC 0005084C 41 82 00 10 */ beq lbl_80054BFC /* 80054BF0 00050850 A0 03 01 48 */ lhz r0, 0x148(r3) /* 80054BF4 00050854 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 80054BF8 00050858 B0 03 01 48 */ sth r0, 0x148(r3) lbl_80054BFC: /* 80054BFC 0005085C 80 7E 00 60 */ lwz r3, 0x60(r30) /* 80054C00 00050860 80 63 01 38 */ lwz r3, 0x138(r3) /* 80054C04 00050864 2C 03 00 00 */ cmpwi r3, 0 /* 80054C08 00050868 41 82 00 10 */ beq lbl_80054C18 /* 80054C0C 0005086C A0 03 01 48 */ lhz r0, 0x148(r3) /* 80054C10 00050870 60 00 00 08 */ ori r0, r0, 8 /* 80054C14 00050874 B0 03 01 48 */ sth r0, 0x148(r3) lbl_80054C18: /* 80054C18 00050878 C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054C1C 0005087C 38 80 00 01 */ li r4, 1 /* 80054C20 00050880 80 7E 00 60 */ lwz r3, 0x60(r30) /* 80054C24 00050884 D0 01 00 08 */ stfs f0, 8(r1) /* 80054C28 00050888 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80054C2C 0005088C D0 03 00 24 */ stfs f0, 0x24(r3) /* 80054C30 00050890 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80054C34 00050894 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80054C38 00050898 D0 03 00 28 */ stfs f0, 0x28(r3) /* 80054C3C 0005089C 48 19 DA 7D */ bl func_801F26B8 lbl_80054C40: /* 80054C40 000508A0 7F C3 F3 78 */ mr r3, r30 /* 80054C44 000508A4 48 00 07 7D */ bl func_800553C0 /* 80054C48 000508A8 7C 7D 1B 78 */ mr r29, r3 /* 80054C4C 000508AC 7F C3 F3 78 */ mr r3, r30 /* 80054C50 000508B0 48 00 06 A9 */ bl func_800552F8 /* 80054C54 000508B4 7F A4 EB 78 */ mr r4, r29 /* 80054C58 000508B8 48 00 11 41 */ bl func_80055D98 /* 80054C5C 000508BC 3C C0 80 47 */ lis r6, lbl_804753B0@ha /* 80054C60 000508C0 38 80 00 00 */ li r4, 0 /* 80054C64 000508C4 38 C6 53 B0 */ addi r6, r6, lbl_804753B0@l /* 80054C68 000508C8 38 A0 00 00 */ li r5, 0 /* 80054C6C 000508CC 90 66 00 18 */ stw r3, 0x18(r6) /* 80054C70 000508D0 38 C0 00 00 */ li r6, 0 /* 80054C74 000508D4 38 E0 FF FF */ li r7, -1 /* 80054C78 000508D8 39 00 00 00 */ li r8, 0 /* 80054C7C 000508DC 39 20 00 01 */ li r9, 1 /* 80054C80 000508E0 39 40 00 00 */ li r10, 0 /* 80054C84 000508E4 48 1F EF B5 */ bl func_80253C38 /* 80054C88 000508E8 3C C0 80 41 */ lis r6, lbl_8040ACB0@ha /* 80054C8C 000508EC 38 80 00 09 */ li r4, 9 /* 80054C90 000508F0 38 C6 AC B0 */ addi r6, r6, lbl_8040ACB0@l /* 80054C94 000508F4 38 A0 00 00 */ li r5, 0 /* 80054C98 000508F8 B0 66 00 0C */ sth r3, 0xc(r6) /* 80054C9C 000508FC 7C 63 07 34 */ extsh r3, r3 /* 80054CA0 00050900 48 1F F1 51 */ bl func_80253DF0 /* 80054CA4 00050904 48 00 00 60 */ b lbl_80054D04 lbl_80054CA8: /* 80054CA8 00050908 38 60 00 6F */ li r3, 0x6f /* 80054CAC 0005090C 48 1F 49 31 */ bl func_802495DC /* 80054CB0 00050910 3C 80 0B 51 */ lis r4, 0x0B510400@ha /* 80054CB4 00050914 38 60 00 6F */ li r3, 0x6f /* 80054CB8 00050918 38 84 04 00 */ addi r4, r4, 0x0B510400@l /* 80054CBC 0005091C 48 18 68 01 */ bl func_801DB4BC /* 80054CC0 00050920 90 7E 00 5C */ stw r3, 0x5c(r30) /* 80054CC4 00050924 48 00 00 40 */ b lbl_80054D04 lbl_80054CC8: /* 80054CC8 00050928 38 60 00 6F */ li r3, 0x6f /* 80054CCC 0005092C 48 1F 49 11 */ bl func_802495DC /* 80054CD0 00050930 3C 80 0B 51 */ lis r4, 0x0B510400@ha /* 80054CD4 00050934 38 60 00 6F */ li r3, 0x6f /* 80054CD8 00050938 38 84 04 00 */ addi r4, r4, 0x0B510400@l /* 80054CDC 0005093C 48 18 67 E1 */ bl func_801DB4BC /* 80054CE0 00050940 90 7E 00 5C */ stw r3, 0x5c(r30) /* 80054CE4 00050944 48 00 00 20 */ b lbl_80054D04 lbl_80054CE8: /* 80054CE8 00050948 38 60 04 06 */ li r3, 0x406 /* 80054CEC 0005094C 48 1F 48 F1 */ bl func_802495DC /* 80054CF0 00050950 3C 80 23 9E */ lis r4, 0x239E0400@ha /* 80054CF4 00050954 38 60 04 06 */ li r3, 0x406 /* 80054CF8 00050958 38 84 04 00 */ addi r4, r4, 0x239E0400@l /* 80054CFC 0005095C 48 18 67 C1 */ bl func_801DB4BC /* 80054D00 00050960 90 7E 00 5C */ stw r3, 0x5c(r30) lbl_80054D04: /* 80054D04 00050964 80 1E 00 5C */ lwz r0, 0x5c(r30) /* 80054D08 00050968 A0 7E 00 70 */ lhz r3, 0x70(r30) /* 80054D0C 0005096C 53 E3 74 22 */ rlwimi r3, r31, 0xe, 0x10, 0x11 /* 80054D10 00050970 2C 00 00 00 */ cmpwi r0, 0 /* 80054D14 00050974 B0 7E 00 70 */ sth r3, 0x70(r30) /* 80054D18 00050978 41 82 01 20 */ beq lbl_80054E38 /* 80054D1C 0005097C 80 7E 00 30 */ lwz r3, 0x30(r30) /* 80054D20 00050980 2C 03 00 00 */ cmpwi r3, 0 /* 80054D24 00050984 41 82 00 0C */ beq lbl_80054D30 /* 80054D28 00050988 38 80 00 01 */ li r4, 1 /* 80054D2C 0005098C 48 1A 55 69 */ bl func_801FA294 lbl_80054D30: /* 80054D30 00050990 80 7E 00 5C */ lwz r3, 0x5c(r30) /* 80054D34 00050994 7C 64 1B 78 */ mr r4, r3 /* 80054D38 00050998 48 18 E7 A5 */ bl func_801E34DC /* 80054D3C 0005099C 48 18 5D ED */ bl func_801DAB28 /* 80054D40 000509A0 2C 03 00 00 */ cmpwi r3, 0 /* 80054D44 000509A4 41 82 00 14 */ beq lbl_80054D58 /* 80054D48 000509A8 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80054D4C 000509AC 38 80 00 14 */ li r4, 0x14 /* 80054D50 000509B0 48 18 5F 45 */ bl func_801DAC94 /* 80054D54 000509B4 48 00 00 08 */ b lbl_80054D5C lbl_80054D58: /* 80054D58 000509B8 38 60 00 00 */ li r3, 0 lbl_80054D5C: /* 80054D5C 000509BC 2C 03 00 00 */ cmpwi r3, 0 /* 80054D60 000509C0 41 82 00 0C */ beq lbl_80054D6C /* 80054D64 000509C4 80 9E 00 5C */ lwz r4, 0x5c(r30) /* 80054D68 000509C8 48 1A 53 2D */ bl func_801FA094 lbl_80054D6C: /* 80054D6C 000509CC 2C 03 00 00 */ cmpwi r3, 0 /* 80054D70 000509D0 90 7E 00 30 */ stw r3, 0x30(r30) /* 80054D74 000509D4 41 82 00 C4 */ beq lbl_80054E38 /* 80054D78 000509D8 80 83 00 04 */ lwz r4, 4(r3) /* 80054D7C 000509DC 2C 04 00 00 */ cmpwi r4, 0 /* 80054D80 000509E0 40 82 00 0C */ bne lbl_80054D8C /* 80054D84 000509E4 38 60 00 00 */ li r3, 0 /* 80054D88 000509E8 48 00 00 20 */ b lbl_80054DA8 lbl_80054D8C: /* 80054D8C 000509EC 80 63 00 00 */ lwz r3, 0(r3) /* 80054D90 000509F0 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80054D94 000509F4 2C 00 00 00 */ cmpwi r0, 0 /* 80054D98 000509F8 40 82 00 0C */ bne lbl_80054DA4 /* 80054D9C 000509FC 38 60 00 00 */ li r3, 0 /* 80054DA0 00050A00 48 00 00 08 */ b lbl_80054DA8 lbl_80054DA4: /* 80054DA4 00050A04 80 64 00 00 */ lwz r3, 0(r4) lbl_80054DA8: /* 80054DA8 00050A08 2C 03 00 00 */ cmpwi r3, 0 /* 80054DAC 00050A0C 90 7E 00 3C */ stw r3, 0x3c(r30) /* 80054DB0 00050A10 41 82 00 78 */ beq lbl_80054E28 /* 80054DB4 00050A14 48 1A BA A5 */ bl func_80200858 /* 80054DB8 00050A18 A0 1E 00 70 */ lhz r0, 0x70(r30) /* 80054DBC 00050A1C 54 00 97 BE */ rlwinm r0, r0, 0x12, 0x1e, 0x1f /* 80054DC0 00050A20 28 00 00 03 */ cmplwi r0, 3 /* 80054DC4 00050A24 40 82 00 64 */ bne lbl_80054E28 /* 80054DC8 00050A28 3C 80 27 52 */ lis r4, 0x27522400@ha /* 80054DCC 00050A2C 38 60 04 06 */ li r3, 0x406 /* 80054DD0 00050A30 38 84 24 00 */ addi r4, r4, 0x27522400@l /* 80054DD4 00050A34 48 18 66 E9 */ bl func_801DB4BC /* 80054DD8 00050A38 48 18 FB 99 */ bl func_801E4970 /* 80054DDC 00050A3C 2C 03 00 00 */ cmpwi r3, 0 /* 80054DE0 00050A40 90 7E 00 68 */ stw r3, 0x68(r30) /* 80054DE4 00050A44 41 82 00 44 */ beq lbl_80054E28 /* 80054DE8 00050A48 80 9E 00 3C */ lwz r4, 0x3c(r30) /* 80054DEC 00050A4C 80 A4 00 08 */ lwz r5, 8(r4) /* 80054DF0 00050A50 2C 05 00 00 */ cmpwi r5, 0 /* 80054DF4 00050A54 40 82 00 0C */ bne lbl_80054E00 /* 80054DF8 00050A58 38 80 00 00 */ li r4, 0 /* 80054DFC 00050A5C 48 00 00 1C */ b lbl_80054E18 lbl_80054E00: /* 80054E00 00050A60 A0 04 00 DE */ lhz r0, 0xde(r4) /* 80054E04 00050A64 28 00 00 09 */ cmplwi r0, 9 /* 80054E08 00050A68 41 81 00 0C */ bgt lbl_80054E14 /* 80054E0C 00050A6C 38 80 00 00 */ li r4, 0 /* 80054E10 00050A70 48 00 00 08 */ b lbl_80054E18 lbl_80054E14: /* 80054E14 00050A74 80 85 00 24 */ lwz r4, 0x24(r5) lbl_80054E18: /* 80054E18 00050A78 48 18 FD 49 */ bl func_801E4B60 /* 80054E1C 00050A7C 80 7E 00 68 */ lwz r3, 0x68(r30) /* 80054E20 00050A80 38 80 00 00 */ li r4, 0 /* 80054E24 00050A84 48 18 FD A9 */ bl func_801E4BCC lbl_80054E28: /* 80054E28 00050A88 A0 1E 00 70 */ lhz r0, 0x70(r30) /* 80054E2C 00050A8C 38 60 00 01 */ li r3, 1 /* 80054E30 00050A90 50 60 64 A6 */ rlwimi r0, r3, 0xc, 0x12, 0x13 /* 80054E34 00050A94 B0 1E 00 70 */ sth r0, 0x70(r30) lbl_80054E38: /* 80054E38 00050A98 80 01 00 34 */ lwz r0, 0x34(r1) /* 80054E3C 00050A9C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80054E40 00050AA0 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80054E44 00050AA4 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80054E48 00050AA8 83 81 00 20 */ lwz r28, 0x20(r1) /* 80054E4C 00050AAC 7C 08 03 A6 */ mtlr r0 /* 80054E50 00050AB0 38 21 00 30 */ addi r1, r1, 0x30 /* 80054E54 00050AB4 4E 80 00 20 */ blr .global func_80054E58 func_80054E58: /* 80054E58 00050AB8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80054E5C 00050ABC 7C 08 02 A6 */ mflr r0 /* 80054E60 00050AC0 90 01 00 24 */ stw r0, 0x24(r1) /* 80054E64 00050AC4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80054E68 00050AC8 7C 7F 1B 78 */ mr r31, r3 /* 80054E6C 00050ACC 38 60 00 02 */ li r3, 2 /* 80054E70 00050AD0 48 1E 61 E9 */ bl func_8023B058 /* 80054E74 00050AD4 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 80054E78 00050AD8 54 00 A7 BE */ rlwinm r0, r0, 0x14, 0x1e, 0x1f /* 80054E7C 00050ADC 28 00 00 01 */ cmplwi r0, 1 /* 80054E80 00050AE0 40 82 01 D0 */ bne lbl_80055050 /* 80054E84 00050AE4 2C 03 00 00 */ cmpwi r3, 0 /* 80054E88 00050AE8 41 82 00 10 */ beq lbl_80054E98 /* 80054E8C 00050AEC 80 03 00 0C */ lwz r0, 0xc(r3) /* 80054E90 00050AF0 90 1F 00 50 */ stw r0, 0x50(r31) /* 80054E94 00050AF4 48 00 00 0C */ b lbl_80054EA0 lbl_80054E98: /* 80054E98 00050AF8 38 00 00 00 */ li r0, 0 /* 80054E9C 00050AFC 90 1F 00 50 */ stw r0, 0x50(r31) lbl_80054EA0: /* 80054EA0 00050B00 80 BF 00 3C */ lwz r5, 0x3c(r31) /* 80054EA4 00050B04 2C 05 00 00 */ cmpwi r5, 0 /* 80054EA8 00050B08 41 82 00 74 */ beq lbl_80054F1C /* 80054EAC 00050B0C 80 85 00 10 */ lwz r4, 0x10(r5) /* 80054EB0 00050B10 2C 04 00 00 */ cmpwi r4, 0 /* 80054EB4 00050B14 40 82 00 0C */ bne lbl_80054EC0 /* 80054EB8 00050B18 38 00 00 00 */ li r0, 0 /* 80054EBC 00050B1C 48 00 00 4C */ b lbl_80054F08 lbl_80054EC0: /* 80054EC0 00050B20 A0 05 00 E0 */ lhz r0, 0xe0(r5) /* 80054EC4 00050B24 2C 00 00 00 */ cmpwi r0, 0 /* 80054EC8 00050B28 40 82 00 0C */ bne lbl_80054ED4 /* 80054ECC 00050B2C 38 00 00 00 */ li r0, 0 /* 80054ED0 00050B30 48 00 00 38 */ b lbl_80054F08 lbl_80054ED4: /* 80054ED4 00050B34 80 C5 00 08 */ lwz r6, 8(r5) /* 80054ED8 00050B38 A0 84 00 00 */ lhz r4, 0(r4) /* 80054EDC 00050B3C 2C 06 00 00 */ cmpwi r6, 0 /* 80054EE0 00050B40 40 82 00 0C */ bne lbl_80054EEC /* 80054EE4 00050B44 38 00 00 00 */ li r0, 0 /* 80054EE8 00050B48 48 00 00 20 */ b lbl_80054F08 lbl_80054EEC: /* 80054EEC 00050B4C A0 05 00 DE */ lhz r0, 0xde(r5) /* 80054EF0 00050B50 7C 04 00 40 */ cmplw r4, r0 /* 80054EF4 00050B54 41 80 00 0C */ blt lbl_80054F00 /* 80054EF8 00050B58 38 00 00 00 */ li r0, 0 /* 80054EFC 00050B5C 48 00 00 0C */ b lbl_80054F08 lbl_80054F00: /* 80054F00 00050B60 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d /* 80054F04 00050B64 7C 06 00 2E */ lwzx r0, r6, r0 lbl_80054F08: /* 80054F08 00050B68 2C 03 00 00 */ cmpwi r3, 0 /* 80054F0C 00050B6C 41 82 00 10 */ beq lbl_80054F1C /* 80054F10 00050B70 2C 00 00 00 */ cmpwi r0, 0 /* 80054F14 00050B74 41 82 00 08 */ beq lbl_80054F1C /* 80054F18 00050B78 90 03 00 0C */ stw r0, 0xc(r3) lbl_80054F1C: /* 80054F1C 00050B7C 80 7F 00 30 */ lwz r3, 0x30(r31) /* 80054F20 00050B80 2C 03 00 00 */ cmpwi r3, 0 /* 80054F24 00050B84 41 82 01 0C */ beq lbl_80055030 /* 80054F28 00050B88 80 8D A1 A8 */ lwz r4, lbl_8063F468-_SDA_BASE_(r13) /* 80054F2C 00050B8C 80 04 01 24 */ lwz r0, 0x124(r4) /* 80054F30 00050B90 90 1F 00 34 */ stw r0, 0x34(r31) /* 80054F34 00050B94 48 1A DA 9D */ bl func_802029D0 /* 80054F38 00050B98 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 80054F3C 00050B9C 54 00 97 BF */ rlwinm. r0, r0, 0x12, 0x1e, 0x1f /* 80054F40 00050BA0 40 82 00 64 */ bne lbl_80054FA4 /* 80054F44 00050BA4 80 7F 00 60 */ lwz r3, 0x60(r31) /* 80054F48 00050BA8 2C 03 00 00 */ cmpwi r3, 0 /* 80054F4C 00050BAC 41 82 00 1C */ beq lbl_80054F68 /* 80054F50 00050BB0 80 03 01 04 */ lwz r0, 0x104(r3) /* 80054F54 00050BB4 C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054F58 00050BB8 60 00 00 01 */ ori r0, r0, 1 /* 80054F5C 00050BBC 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 80054F60 00050BC0 90 03 01 04 */ stw r0, 0x104(r3) /* 80054F64 00050BC4 D0 03 01 08 */ stfs f0, 0x108(r3) lbl_80054F68: /* 80054F68 00050BC8 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054F6C 00050BCC 38 80 00 00 */ li r4, 0 /* 80054F70 00050BD0 C0 02 85 50 */ lfs f0, lbl_80640B50-_SDA2_BASE_(r2) /* 80054F74 00050BD4 98 83 04 0D */ stb r4, 0x40d(r3) /* 80054F78 00050BD8 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054F7C 00050BDC D0 03 04 50 */ stfs f0, 0x450(r3) /* 80054F80 00050BE0 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054F84 00050BE4 80 03 04 18 */ lwz r0, 0x418(r3) /* 80054F88 00050BE8 2C 00 00 00 */ cmpwi r0, 0 /* 80054F8C 00050BEC 41 82 00 10 */ beq lbl_80054F9C /* 80054F90 00050BF0 38 00 00 01 */ li r0, 1 /* 80054F94 00050BF4 98 03 04 0E */ stb r0, 0x40e(r3) /* 80054F98 00050BF8 48 00 00 98 */ b lbl_80055030 lbl_80054F9C: /* 80054F9C 00050BFC 98 83 04 0E */ stb r4, 0x40e(r3) /* 80054FA0 00050C00 48 00 00 90 */ b lbl_80055030 lbl_80054FA4: /* 80054FA4 00050C04 28 00 00 03 */ cmplwi r0, 3 /* 80054FA8 00050C08 40 82 00 88 */ bne lbl_80055030 /* 80054FAC 00050C0C 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054FB0 00050C10 38 A0 00 01 */ li r5, 1 /* 80054FB4 00050C14 C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 80054FB8 00050C18 38 00 00 32 */ li r0, 0x32 /* 80054FBC 00050C1C 98 A3 04 0D */ stb r5, 0x40d(r3) /* 80054FC0 00050C20 38 80 00 00 */ li r4, 0 /* 80054FC4 00050C24 C0 42 85 54 */ lfs f2, lbl_80640B54-_SDA2_BASE_(r2) /* 80054FC8 00050C28 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054FCC 00050C2C C0 22 85 58 */ lfs f1, lbl_80640B58-_SDA2_BASE_(r2) /* 80054FD0 00050C30 98 03 04 31 */ stb r0, 0x431(r3) /* 80054FD4 00050C34 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054FD8 00050C38 D0 01 00 08 */ stfs f0, 8(r1) /* 80054FDC 00050C3C D0 43 04 2C */ stfs f2, 0x42c(r3) /* 80054FE0 00050C40 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054FE4 00050C44 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80054FE8 00050C48 98 A3 04 30 */ stb r5, 0x430(r3) /* 80054FEC 00050C4C 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054FF0 00050C50 90 83 04 34 */ stw r4, 0x434(r3) /* 80054FF4 00050C54 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80054FF8 00050C58 D0 23 04 50 */ stfs f1, 0x450(r3) /* 80054FFC 00050C5C 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80055000 00050C60 D0 03 04 24 */ stfs f0, 0x424(r3) /* 80055004 00050C64 D0 03 04 28 */ stfs f0, 0x428(r3) /* 80055008 00050C68 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 8005500C 00050C6C 80 03 04 18 */ lwz r0, 0x418(r3) /* 80055010 00050C70 2C 00 00 00 */ cmpwi r0, 0 /* 80055014 00050C74 41 82 00 0C */ beq lbl_80055020 /* 80055018 00050C78 98 A3 04 0E */ stb r5, 0x40e(r3) /* 8005501C 00050C7C 48 00 00 08 */ b lbl_80055024 lbl_80055020: /* 80055020 00050C80 98 83 04 0E */ stb r4, 0x40e(r3) lbl_80055024: /* 80055024 00050C84 80 7F 00 68 */ lwz r3, 0x68(r31) /* 80055028 00050C88 38 80 00 01 */ li r4, 1 /* 8005502C 00050C8C 48 18 FB A1 */ bl func_801E4BCC lbl_80055030: /* 80055030 00050C90 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 80055034 00050C94 2C 03 00 00 */ cmpwi r3, 0 /* 80055038 00050C98 41 82 00 08 */ beq lbl_80055040 /* 8005503C 00050C9C 48 1A B5 59 */ bl func_80200594 lbl_80055040: /* 80055040 00050CA0 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 80055044 00050CA4 38 60 00 02 */ li r3, 2 /* 80055048 00050CA8 50 60 64 A6 */ rlwimi r0, r3, 0xc, 0x12, 0x13 /* 8005504C 00050CAC B0 1F 00 70 */ sth r0, 0x70(r31) lbl_80055050: /* 80055050 00050CB0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80055054 00050CB4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80055058 00050CB8 7C 08 03 A6 */ mtlr r0 /* 8005505C 00050CBC 38 21 00 20 */ addi r1, r1, 0x20 /* 80055060 00050CC0 4E 80 00 20 */ blr .global func_80055064 func_80055064: /* 80055064 00050CC4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055068 00050CC8 7C 08 02 A6 */ mflr r0 /* 8005506C 00050CCC 90 01 00 14 */ stw r0, 0x14(r1) /* 80055070 00050CD0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80055074 00050CD4 7C 7F 1B 78 */ mr r31, r3 /* 80055078 00050CD8 38 60 00 02 */ li r3, 2 /* 8005507C 00050CDC 93 C1 00 08 */ stw r30, 8(r1) /* 80055080 00050CE0 48 1E 5F D9 */ bl func_8023B058 /* 80055084 00050CE4 80 1F 00 34 */ lwz r0, 0x34(r31) /* 80055088 00050CE8 7C 7E 1B 78 */ mr r30, r3 /* 8005508C 00050CEC 2C 00 00 00 */ cmpwi r0, 0 /* 80055090 00050CF0 41 82 00 14 */ beq lbl_800550A4 /* 80055094 00050CF4 7C 03 03 78 */ mr r3, r0 /* 80055098 00050CF8 48 1A D9 39 */ bl func_802029D0 /* 8005509C 00050CFC 38 00 00 00 */ li r0, 0 /* 800550A0 00050D00 90 1F 00 34 */ stw r0, 0x34(r31) lbl_800550A4: /* 800550A4 00050D04 80 1F 00 50 */ lwz r0, 0x50(r31) /* 800550A8 00050D08 2C 00 00 00 */ cmpwi r0, 0 /* 800550AC 00050D0C 41 82 00 10 */ beq lbl_800550BC /* 800550B0 00050D10 90 1E 00 0C */ stw r0, 0xc(r30) /* 800550B4 00050D14 38 00 00 00 */ li r0, 0 /* 800550B8 00050D18 90 1F 00 50 */ stw r0, 0x50(r31) lbl_800550BC: /* 800550BC 00050D1C 80 1F 00 30 */ lwz r0, 0x30(r31) /* 800550C0 00050D20 2C 00 00 00 */ cmpwi r0, 0 /* 800550C4 00050D24 41 82 00 74 */ beq lbl_80055138 /* 800550C8 00050D28 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 800550CC 00050D2C 2C 03 00 00 */ cmpwi r3, 0 /* 800550D0 00050D30 41 82 00 28 */ beq lbl_800550F8 /* 800550D4 00050D34 48 1A B7 85 */ bl func_80200858 /* 800550D8 00050D38 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 800550DC 00050D3C 54 00 97 BE */ rlwinm r0, r0, 0x12, 0x1e, 0x1f /* 800550E0 00050D40 28 00 00 03 */ cmplwi r0, 3 /* 800550E4 00050D44 40 82 00 14 */ bne lbl_800550F8 /* 800550E8 00050D48 80 7F 00 68 */ lwz r3, 0x68(r31) /* 800550EC 00050D4C 48 18 F9 99 */ bl func_801E4A84 /* 800550F0 00050D50 38 00 00 00 */ li r0, 0 /* 800550F4 00050D54 90 1F 00 68 */ stw r0, 0x68(r31) lbl_800550F8: /* 800550F8 00050D58 80 7F 00 30 */ lwz r3, 0x30(r31) /* 800550FC 00050D5C 38 80 00 01 */ li r4, 1 /* 80055100 00050D60 48 1A 51 95 */ bl func_801FA294 /* 80055104 00050D64 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 80055108 00050D68 38 60 00 00 */ li r3, 0 /* 8005510C 00050D6C 90 7F 00 30 */ stw r3, 0x30(r31) /* 80055110 00050D70 54 00 97 BE */ rlwinm r0, r0, 0x12, 0x1e, 0x1f /* 80055114 00050D74 28 00 00 03 */ cmplwi r0, 3 /* 80055118 00050D78 41 82 00 0C */ beq lbl_80055124 /* 8005511C 00050D7C 2C 00 00 00 */ cmpwi r0, 0 /* 80055120 00050D80 40 82 00 18 */ bne lbl_80055138 lbl_80055124: /* 80055124 00050D84 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80055128 00050D88 38 00 00 00 */ li r0, 0 /* 8005512C 00050D8C 98 03 04 0D */ stb r0, 0x40d(r3) /* 80055130 00050D90 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80055134 00050D94 98 03 04 0E */ stb r0, 0x40e(r3) lbl_80055138: /* 80055138 00050D98 80 7F 00 5C */ lwz r3, 0x5c(r31) /* 8005513C 00050D9C 2C 03 00 00 */ cmpwi r3, 0 /* 80055140 00050DA0 41 82 00 10 */ beq lbl_80055150 /* 80055144 00050DA4 48 18 E6 AD */ bl func_801E37F0 /* 80055148 00050DA8 38 00 00 00 */ li r0, 0 /* 8005514C 00050DAC 90 1F 00 5C */ stw r0, 0x5c(r31) lbl_80055150: /* 80055150 00050DB0 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 80055154 00050DB4 54 00 97 BE */ rlwinm r0, r0, 0x12, 0x1e, 0x1f /* 80055158 00050DB8 2C 00 00 02 */ cmpwi r0, 2 /* 8005515C 00050DBC 41 82 00 D4 */ beq lbl_80055230 /* 80055160 00050DC0 40 80 00 14 */ bge lbl_80055174 /* 80055164 00050DC4 2C 00 00 00 */ cmpwi r0, 0 /* 80055168 00050DC8 41 82 00 18 */ beq lbl_80055180 /* 8005516C 00050DCC 40 80 00 B0 */ bge lbl_8005521C /* 80055170 00050DD0 48 00 00 E4 */ b lbl_80055254 lbl_80055174: /* 80055174 00050DD4 2C 00 00 04 */ cmpwi r0, 4 /* 80055178 00050DD8 40 80 00 DC */ bge lbl_80055254 /* 8005517C 00050DDC 48 00 00 C8 */ b lbl_80055244 lbl_80055180: /* 80055180 00050DE0 80 7F 00 60 */ lwz r3, 0x60(r31) /* 80055184 00050DE4 2C 03 00 00 */ cmpwi r3, 0 /* 80055188 00050DE8 41 82 00 24 */ beq lbl_800551AC /* 8005518C 00050DEC 41 82 00 18 */ beq lbl_800551A4 /* 80055190 00050DF0 81 83 01 00 */ lwz r12, 0x100(r3) /* 80055194 00050DF4 38 80 00 01 */ li r4, 1 /* 80055198 00050DF8 81 8C 00 08 */ lwz r12, 8(r12) /* 8005519C 00050DFC 7D 89 03 A6 */ mtctr r12 /* 800551A0 00050E00 4E 80 04 21 */ bctrl lbl_800551A4: /* 800551A4 00050E04 38 00 00 00 */ li r0, 0 /* 800551A8 00050E08 90 1F 00 60 */ stw r0, 0x60(r31) lbl_800551AC: /* 800551AC 00050E0C 3F C0 80 41 */ lis r30, lbl_8040ACB0@ha /* 800551B0 00050E10 38 80 00 02 */ li r4, 2 /* 800551B4 00050E14 3B DE AC B0 */ addi r30, r30, lbl_8040ACB0@l /* 800551B8 00050E18 38 A0 00 00 */ li r5, 0 /* 800551BC 00050E1C A8 7E 00 0C */ lha r3, 0xc(r30) /* 800551C0 00050E20 48 1F EB F1 */ bl func_80253DB0 /* 800551C4 00050E24 A8 1E 00 0C */ lha r0, 0xc(r30) /* 800551C8 00050E28 2C 00 FF FF */ cmpwi r0, -1 /* 800551CC 00050E2C 41 82 00 0C */ beq lbl_800551D8 /* 800551D0 00050E30 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 800551D4 00050E34 48 1F EA F9 */ bl func_80253CCC lbl_800551D8: /* 800551D8 00050E38 3C 60 80 47 */ lis r3, lbl_804753B0@ha /* 800551DC 00050E3C 38 63 53 B0 */ addi r3, r3, lbl_804753B0@l /* 800551E0 00050E40 80 63 00 18 */ lwz r3, 0x18(r3) /* 800551E4 00050E44 2C 03 00 00 */ cmpwi r3, 0 /* 800551E8 00050E48 41 82 00 08 */ beq lbl_800551F0 /* 800551EC 00050E4C 48 00 0C 45 */ bl func_80055E30 lbl_800551F0: /* 800551F0 00050E50 3C 60 80 41 */ lis r3, lbl_8040ACB0@ha /* 800551F4 00050E54 3C 80 80 47 */ lis r4, lbl_804753B0@ha /* 800551F8 00050E58 38 63 AC B0 */ addi r3, r3, lbl_8040ACB0@l /* 800551FC 00050E5C 38 A0 FF FF */ li r5, -1 /* 80055200 00050E60 B0 A3 00 0C */ sth r5, 0xc(r3) /* 80055204 00050E64 38 84 53 B0 */ addi r4, r4, lbl_804753B0@l /* 80055208 00050E68 38 00 00 00 */ li r0, 0 /* 8005520C 00050E6C 7F E3 FB 78 */ mr r3, r31 /* 80055210 00050E70 90 04 00 18 */ stw r0, 0x18(r4) /* 80055214 00050E74 48 00 02 15 */ bl func_80055428 /* 80055218 00050E78 48 00 00 3C */ b lbl_80055254 lbl_8005521C: /* 8005521C 00050E7C 38 60 00 6F */ li r3, 0x6f /* 80055220 00050E80 48 1F 46 71 */ bl func_80249890 /* 80055224 00050E84 38 60 00 6F */ li r3, 0x6f /* 80055228 00050E88 48 18 64 4D */ bl func_801DB674 /* 8005522C 00050E8C 48 00 00 28 */ b lbl_80055254 lbl_80055230: /* 80055230 00050E90 38 60 00 6F */ li r3, 0x6f /* 80055234 00050E94 48 1F 46 5D */ bl func_80249890 /* 80055238 00050E98 38 60 00 6F */ li r3, 0x6f /* 8005523C 00050E9C 48 18 64 39 */ bl func_801DB674 /* 80055240 00050EA0 48 00 00 14 */ b lbl_80055254 lbl_80055244: /* 80055244 00050EA4 38 60 04 06 */ li r3, 0x406 /* 80055248 00050EA8 48 1F 46 49 */ bl func_80249890 /* 8005524C 00050EAC 38 60 04 06 */ li r3, 0x406 /* 80055250 00050EB0 48 18 64 25 */ bl func_801DB674 lbl_80055254: /* 80055254 00050EB4 A0 1F 00 70 */ lhz r0, 0x70(r31) /* 80055258 00050EB8 54 00 05 22 */ rlwinm r0, r0, 0, 0x14, 0x11 /* 8005525C 00050EBC B0 1F 00 70 */ sth r0, 0x70(r31) /* 80055260 00050EC0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80055264 00050EC4 83 C1 00 08 */ lwz r30, 8(r1) /* 80055268 00050EC8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005526C 00050ECC 7C 08 03 A6 */ mtlr r0 /* 80055270 00050ED0 38 21 00 10 */ addi r1, r1, 0x10 /* 80055274 00050ED4 4E 80 00 20 */ blr .global func_80055278 func_80055278: /* 80055278 00050ED8 80 63 00 3C */ lwz r3, 0x3c(r3) /* 8005527C 00050EDC 4E 80 00 20 */ blr .global func_80055280 func_80055280: /* 80055280 00050EE0 A0 03 00 70 */ lhz r0, 0x70(r3) /* 80055284 00050EE4 38 80 00 00 */ li r4, 0 /* 80055288 00050EE8 90 83 00 28 */ stw r4, 0x28(r3) /* 8005528C 00050EEC 54 00 05 1E */ rlwinm r0, r0, 0, 0x14, 0xf /* 80055290 00050EF0 90 83 00 2C */ stw r4, 0x2c(r3) /* 80055294 00050EF4 90 83 00 30 */ stw r4, 0x30(r3) /* 80055298 00050EF8 90 83 00 34 */ stw r4, 0x34(r3) /* 8005529C 00050EFC 90 83 00 38 */ stw r4, 0x38(r3) /* 800552A0 00050F00 90 83 00 40 */ stw r4, 0x40(r3) /* 800552A4 00050F04 90 83 00 3C */ stw r4, 0x3c(r3) /* 800552A8 00050F08 90 83 00 44 */ stw r4, 0x44(r3) /* 800552AC 00050F0C 90 83 00 48 */ stw r4, 0x48(r3) /* 800552B0 00050F10 90 83 00 4C */ stw r4, 0x4c(r3) /* 800552B4 00050F14 90 83 00 50 */ stw r4, 0x50(r3) /* 800552B8 00050F18 90 83 00 54 */ stw r4, 0x54(r3) /* 800552BC 00050F1C 90 83 00 58 */ stw r4, 0x58(r3) /* 800552C0 00050F20 90 83 00 5C */ stw r4, 0x5c(r3) /* 800552C4 00050F24 90 83 00 60 */ stw r4, 0x60(r3) /* 800552C8 00050F28 90 83 00 64 */ stw r4, 0x64(r3) /* 800552CC 00050F2C 90 83 00 68 */ stw r4, 0x68(r3) /* 800552D0 00050F30 B0 03 00 70 */ sth r0, 0x70(r3) /* 800552D4 00050F34 4E 80 00 20 */ blr .global func_800552D8 func_800552D8: /* 800552D8 00050F38 80 63 00 64 */ lwz r3, 0x64(r3) /* 800552DC 00050F3C C0 02 84 E8 */ lfs f0, lbl_80640AE8-_SDA2_BASE_(r2) /* 800552E0 00050F40 80 03 01 04 */ lwz r0, 0x104(r3) /* 800552E4 00050F44 60 00 00 01 */ ori r0, r0, 1 /* 800552E8 00050F48 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c /* 800552EC 00050F4C 90 03 01 04 */ stw r0, 0x104(r3) /* 800552F0 00050F50 D0 03 01 08 */ stfs f0, 0x108(r3) /* 800552F4 00050F54 4E 80 00 20 */ blr .global func_800552F8 func_800552F8: /* 800552F8 00050F58 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800552FC 00050F5C 7C 08 02 A6 */ mflr r0 /* 80055300 00050F60 90 01 00 14 */ stw r0, 0x14(r1) /* 80055304 00050F64 48 00 38 A1 */ bl VMBASEIsPageValid /* 80055308 00050F68 3C 80 80 40 */ lis r4, lbl_803FB7BC@ha /* 8005530C 00050F6C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80055310 00050F70 38 84 B7 BC */ addi r4, r4, lbl_803FB7BC@l /* 80055314 00050F74 7C 64 00 2E */ lwzx r3, r4, r0 /* 80055318 00050F78 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005531C 00050F7C 7C 08 03 A6 */ mtlr r0 /* 80055320 00050F80 38 21 00 10 */ addi r1, r1, 0x10 /* 80055324 00050F84 4E 80 00 20 */ blr .global func_80055328 func_80055328: /* 80055328 00050F88 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005532C 00050F8C 7C 08 02 A6 */ mflr r0 /* 80055330 00050F90 90 01 00 14 */ stw r0, 0x14(r1) /* 80055334 00050F94 48 00 38 71 */ bl VMBASEIsPageValid /* 80055338 00050F98 3C 80 80 40 */ lis r4, lbl_803FB7D0@ha /* 8005533C 00050F9C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80055340 00050FA0 38 84 B7 D0 */ addi r4, r4, lbl_803FB7D0@l /* 80055344 00050FA4 7C 64 00 2E */ lwzx r3, r4, r0 /* 80055348 00050FA8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005534C 00050FAC 7C 08 03 A6 */ mtlr r0 /* 80055350 00050FB0 38 21 00 10 */ addi r1, r1, 0x10 /* 80055354 00050FB4 4E 80 00 20 */ blr .global func_80055358 func_80055358: /* 80055358 00050FB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005535C 00050FBC 7C 08 02 A6 */ mflr r0 /* 80055360 00050FC0 90 01 00 14 */ stw r0, 0x14(r1) /* 80055364 00050FC4 48 00 38 41 */ bl VMBASEIsPageValid /* 80055368 00050FC8 3C 80 80 40 */ lis r4, lbl_803FB7D0@ha /* 8005536C 00050FCC 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80055370 00050FD0 38 84 B7 D0 */ addi r4, r4, lbl_803FB7D0@l /* 80055374 00050FD4 7C 64 02 14 */ add r3, r4, r0 /* 80055378 00050FD8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005537C 00050FDC 80 63 00 14 */ lwz r3, 0x14(r3) /* 80055380 00050FE0 7C 08 03 A6 */ mtlr r0 /* 80055384 00050FE4 38 21 00 10 */ addi r1, r1, 0x10 /* 80055388 00050FE8 4E 80 00 20 */ blr .global func_8005538C func_8005538C: /* 8005538C 00050FEC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055390 00050FF0 7C 08 02 A6 */ mflr r0 /* 80055394 00050FF4 90 01 00 14 */ stw r0, 0x14(r1) /* 80055398 00050FF8 48 00 38 0D */ bl VMBASEIsPageValid /* 8005539C 00050FFC 3C 80 80 40 */ lis r4, lbl_803FB7D0@ha /* 800553A0 00051000 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800553A4 00051004 38 84 B7 D0 */ addi r4, r4, lbl_803FB7D0@l /* 800553A8 00051008 7C 64 02 14 */ add r3, r4, r0 /* 800553AC 0005100C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800553B0 00051010 80 63 00 28 */ lwz r3, 0x28(r3) /* 800553B4 00051014 7C 08 03 A6 */ mtlr r0 /* 800553B8 00051018 38 21 00 10 */ addi r1, r1, 0x10 /* 800553BC 0005101C 4E 80 00 20 */ blr .global func_800553C0 func_800553C0: /* 800553C0 00051020 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800553C4 00051024 7C 08 02 A6 */ mflr r0 /* 800553C8 00051028 90 01 00 14 */ stw r0, 0x14(r1) /* 800553CC 0005102C 48 00 37 D9 */ bl VMBASEIsPageValid /* 800553D0 00051030 3C 80 80 40 */ lis r4, lbl_803FB7D0@ha /* 800553D4 00051034 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800553D8 00051038 38 84 B7 D0 */ addi r4, r4, lbl_803FB7D0@l /* 800553DC 0005103C 7C 64 02 14 */ add r3, r4, r0 /* 800553E0 00051040 80 01 00 14 */ lwz r0, 0x14(r1) /* 800553E4 00051044 80 63 00 3C */ lwz r3, 0x3c(r3) /* 800553E8 00051048 7C 08 03 A6 */ mtlr r0 /* 800553EC 0005104C 38 21 00 10 */ addi r1, r1, 0x10 /* 800553F0 00051050 4E 80 00 20 */ blr .global func_800553F4 func_800553F4: /* 800553F4 00051054 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800553F8 00051058 7C 08 02 A6 */ mflr r0 /* 800553FC 0005105C 90 01 00 14 */ stw r0, 0x14(r1) /* 80055400 00051060 48 00 37 A5 */ bl VMBASEIsPageValid /* 80055404 00051064 3C 80 80 40 */ lis r4, lbl_803FB7BC@ha /* 80055408 00051068 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005540C 0005106C 38 84 B7 BC */ addi r4, r4, lbl_803FB7BC@l /* 80055410 00051070 7C 64 00 2E */ lwzx r3, r4, r0 /* 80055414 00051074 48 1F 41 C9 */ bl func_802495DC /* 80055418 00051078 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005541C 0005107C 7C 08 03 A6 */ mtlr r0 /* 80055420 00051080 38 21 00 10 */ addi r1, r1, 0x10 /* 80055424 00051084 4E 80 00 20 */ blr .global func_80055428 func_80055428: /* 80055428 00051088 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005542C 0005108C 7C 08 02 A6 */ mflr r0 /* 80055430 00051090 90 01 00 14 */ stw r0, 0x14(r1) /* 80055434 00051094 93 E1 00 0C */ stw r31, 0xc(r1) /* 80055438 00051098 48 00 37 6D */ bl VMBASEIsPageValid /* 8005543C 0005109C 3F E0 80 40 */ lis r31, lbl_803FB7BC@ha /* 80055440 000510A0 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80055444 000510A4 3B FF B7 BC */ addi r31, r31, lbl_803FB7BC@l /* 80055448 000510A8 7C 7F 00 2E */ lwzx r3, r31, r0 /* 8005544C 000510AC 48 18 62 29 */ bl func_801DB674 /* 80055450 000510B0 48 00 37 55 */ bl VMBASEIsPageValid /* 80055454 000510B4 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80055458 000510B8 7C 7F 00 2E */ lwzx r3, r31, r0 /* 8005545C 000510BC 48 1F 44 35 */ bl func_80249890 /* 80055460 000510C0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055464 000510C4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80055468 000510C8 7C 08 03 A6 */ mtlr r0 /* 8005546C 000510CC 38 21 00 10 */ addi r1, r1, 0x10 /* 80055470 000510D0 4E 80 00 20 */ blr /* 80055474 000510D4 38 60 00 00 */ li r3, 0 /* 80055478 000510D8 4E 80 00 20 */ blr .global func_8005547C func_8005547C: /* 8005547C 000510DC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055480 000510E0 7C 08 02 A6 */ mflr r0 /* 80055484 000510E4 38 60 00 01 */ li r3, 1 /* 80055488 000510E8 38 8D 98 60 */ addi r4, r13, lbl_8063EB20-_SDA_BASE_ /* 8005548C 000510EC 90 01 00 14 */ stw r0, 0x14(r1) /* 80055490 000510F0 38 A0 00 04 */ li r5, 4 /* 80055494 000510F4 38 00 00 00 */ li r0, 0 /* 80055498 000510F8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005549C 000510FC 3F E0 80 47 */ lis r31, lbl_80475338@ha /* 800554A0 00051100 3B FF 53 38 */ addi r31, r31, lbl_80475338@l /* 800554A4 00051104 98 6D 98 60 */ stb r3, lbl_8063EB20-_SDA_BASE_(r13) /* 800554A8 00051108 38 6D 98 90 */ addi r3, r13, lbl_8063EB50-_SDA_BASE_ /* 800554AC 0005110C B0 A4 00 02 */ sth r5, 2(r4) /* 800554B0 00051110 98 04 00 04 */ stb r0, 4(r4) /* 800554B4 00051114 4B FF CB AD */ bl func_80052060 /* 800554B8 00051118 3C 80 80 05 */ lis r4, lbl_80052070@ha /* 800554BC 0005111C 38 BF 00 B8 */ addi r5, r31, 0xb8 /* 800554C0 00051120 38 84 20 70 */ addi r4, r4, lbl_80052070@l /* 800554C4 00051124 38 6D 98 90 */ addi r3, r13, lbl_8063EB50-_SDA_BASE_ /* 800554C8 00051128 48 17 17 81 */ bl __register_global_object_tmp /* 800554CC 0005112C 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 800554D0 00051130 38 80 07 D0 */ li r4, 0x7d0 /* 800554D4 00051134 38 AD 98 90 */ addi r5, r13, lbl_8063EB50-_SDA_BASE_ /* 800554D8 00051138 48 1D 09 6D */ bl func_80225E44 /* 800554DC 0005113C 3C 80 80 22 */ lis r4, func_80225EE0@ha /* 800554E0 00051140 38 7F 00 D0 */ addi r3, r31, 0xd0 /* 800554E4 00051144 38 84 5E E0 */ addi r4, r4, func_80225EE0@l /* 800554E8 00051148 38 BF 00 C4 */ addi r5, r31, 0xc4 /* 800554EC 0005114C 48 17 17 5D */ bl __register_global_object_tmp /* 800554F0 00051150 80 01 00 14 */ lwz r0, 0x14(r1) /* 800554F4 00051154 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800554F8 00051158 7C 08 03 A6 */ mtlr r0 /* 800554FC 0005115C 38 21 00 10 */ addi r1, r1, 0x10 /* 80055500 00051160 4E 80 00 20 */ blr .global func_80055504 func_80055504: /* 80055504 00051164 38 6D 98 A0 */ addi r3, r13, lbl_8063EB60-_SDA_BASE_ /* 80055508 00051168 48 00 00 54 */ b lbl_8005555C .global func_8005550C func_8005550C: /* 8005550C 0005116C 3C 80 80 41 */ lis r4, lbl_8040AF00@ha /* 80055510 00051170 38 84 AF 00 */ addi r4, r4, lbl_8040AF00@l /* 80055514 00051174 90 83 00 00 */ stw r4, 0(r3) /* 80055518 00051178 4E 80 00 20 */ blr lbl_8005551C: /* 8005551C 0005117C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055520 00051180 7C 08 02 A6 */ mflr r0 /* 80055524 00051184 2C 03 00 00 */ cmpwi r3, 0 /* 80055528 00051188 90 01 00 14 */ stw r0, 0x14(r1) /* 8005552C 0005118C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80055530 00051190 7C 7F 1B 78 */ mr r31, r3 /* 80055534 00051194 41 82 00 10 */ beq lbl_80055544 /* 80055538 00051198 2C 04 00 00 */ cmpwi r4, 0 /* 8005553C 0005119C 40 81 00 08 */ ble lbl_80055544 /* 80055540 000511A0 48 18 55 79 */ bl func_801DAAB8 lbl_80055544: /* 80055544 000511A4 7F E3 FB 78 */ mr r3, r31 /* 80055548 000511A8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005554C 000511AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055550 000511B0 7C 08 03 A6 */ mtlr r0 /* 80055554 000511B4 38 21 00 10 */ addi r1, r1, 0x10 /* 80055558 000511B8 4E 80 00 20 */ blr lbl_8005555C: /* 8005555C 000511BC 4E 80 00 20 */ blr /* 80055560 000511C0 38 60 00 01 */ li r3, 1 /* 80055564 000511C4 4B FB 42 A4 */ b func_80009808 /* 80055568 000511C8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005556C 000511CC 7C 08 02 A6 */ mflr r0 /* 80055570 000511D0 2C 04 08 FC */ cmpwi r4, 0x8fc /* 80055574 000511D4 90 01 00 14 */ stw r0, 0x14(r1) /* 80055578 000511D8 41 82 01 00 */ beq lbl_80055678 /* 8005557C 000511DC 40 80 00 44 */ bge lbl_800555C0 /* 80055580 000511E0 2C 04 08 35 */ cmpwi r4, 0x835 /* 80055584 000511E4 41 82 01 10 */ beq lbl_80055694 /* 80055588 000511E8 40 80 00 20 */ bge lbl_800555A8 /* 8005558C 000511EC 2C 04 07 D2 */ cmpwi r4, 0x7d2 /* 80055590 000511F0 41 82 00 64 */ beq lbl_800555F4 /* 80055594 000511F4 40 80 00 08 */ bge lbl_8005559C /* 80055598 000511F8 48 00 00 FC */ b lbl_80055694 lbl_8005559C: /* 8005559C 000511FC 2C 04 08 34 */ cmpwi r4, 0x834 /* 800555A0 00051200 40 80 00 B0 */ bge lbl_80055650 /* 800555A4 00051204 48 00 00 F0 */ b lbl_80055694 lbl_800555A8: /* 800555A8 00051208 2C 04 08 99 */ cmpwi r4, 0x899 /* 800555AC 0005120C 41 82 00 B8 */ beq lbl_80055664 /* 800555B0 00051210 40 80 00 E4 */ bge lbl_80055694 /* 800555B4 00051214 2C 04 08 98 */ cmpwi r4, 0x898 /* 800555B8 00051218 40 80 00 A0 */ bge lbl_80055658 /* 800555BC 0005121C 48 00 00 D8 */ b lbl_80055694 lbl_800555C0: /* 800555C0 00051220 2C 04 0A F1 */ cmpwi r4, 0xaf1 /* 800555C4 00051224 41 82 00 BC */ beq lbl_80055680 /* 800555C8 00051228 40 80 00 14 */ bge lbl_800555DC /* 800555CC 0005122C 2C 04 09 60 */ cmpwi r4, 0x960 /* 800555D0 00051230 41 82 00 C4 */ beq lbl_80055694 /* 800555D4 00051234 41 80 00 C0 */ blt lbl_80055694 /* 800555D8 00051238 48 00 00 BC */ b lbl_80055694 lbl_800555DC: /* 800555DC 0005123C 2C 04 0B 54 */ cmpwi r4, 0xb54 /* 800555E0 00051240 41 82 00 B0 */ beq lbl_80055690 /* 800555E4 00051244 40 80 00 B0 */ bge lbl_80055694 /* 800555E8 00051248 2C 04 0A F3 */ cmpwi r4, 0xaf3 /* 800555EC 0005124C 40 80 00 A8 */ bge lbl_80055694 /* 800555F0 00051250 48 00 00 98 */ b lbl_80055688 lbl_800555F4: /* 800555F4 00051254 48 1C E2 3D */ bl func_80223830 /* 800555F8 00051258 3C 80 00 03 */ lis r4, 0x000343FD@ha /* 800555FC 0005125C 80 C3 00 00 */ lwz r6, 0(r3) /* 80055600 00051260 38 04 43 FD */ addi r0, r4, 0x000343FD@l /* 80055604 00051264 3C A0 88 89 */ lis r5, 0x88888889@ha /* 80055608 00051268 7C C6 01 D6 */ mullw r6, r6, r0 /* 8005560C 0005126C 38 80 00 00 */ li r4, 0 /* 80055610 00051270 38 05 88 89 */ addi r0, r5, 0x88888889@l /* 80055614 00051274 38 A0 00 00 */ li r5, 0 /* 80055618 00051278 3C C6 00 27 */ addis r6, r6, 0x27 /* 8005561C 0005127C 38 E6 9E C3 */ addi r7, r6, -24893 /* 80055620 00051280 54 E6 84 3E */ srwi r6, r7, 0x10 /* 80055624 00051284 90 E3 00 00 */ stw r7, 0(r3) /* 80055628 00051288 7C 00 30 96 */ mulhw r0, r0, r6 /* 8005562C 0005128C 7C 00 32 14 */ add r0, r0, r6 /* 80055630 00051290 7C 00 1E 70 */ srawi r0, r0, 3 /* 80055634 00051294 54 03 0F FE */ srwi r3, r0, 0x1f /* 80055638 00051298 7C 00 1A 14 */ add r0, r0, r3 /* 8005563C 0005129C 1C 00 00 0F */ mulli r0, r0, 0xf /* 80055640 000512A0 7C 60 30 50 */ subf r3, r0, r6 /* 80055644 000512A4 38 63 00 01 */ addi r3, r3, 1 /* 80055648 000512A8 48 05 4E C1 */ bl func_800AA508 /* 8005564C 000512AC 48 00 00 48 */ b lbl_80055694 lbl_80055650: /* 80055650 000512B0 48 0A ED 91 */ bl func_801043E0 /* 80055654 000512B4 48 00 00 40 */ b lbl_80055694 lbl_80055658: /* 80055658 000512B8 48 02 B5 01 */ bl func_80080B58 /* 8005565C 000512BC 48 02 BC 0D */ bl func_80081268 /* 80055660 000512C0 48 00 00 34 */ b lbl_80055694 lbl_80055664: /* 80055664 000512C4 48 04 A0 9D */ bl func_8009F700 /* 80055668 000512C8 38 60 00 00 */ li r3, 0 /* 8005566C 000512CC 38 80 00 00 */ li r4, 0 /* 80055670 000512D0 48 04 A6 E5 */ bl func_8009FD54 /* 80055674 000512D4 48 00 00 20 */ b lbl_80055694 lbl_80055678: /* 80055678 000512D8 48 06 49 B1 */ bl func_800BA028 /* 8005567C 000512DC 48 00 00 18 */ b lbl_80055694 lbl_80055680: /* 80055680 000512E0 48 0C 8B D9 */ bl func_8011E258 /* 80055684 000512E4 48 00 00 10 */ b lbl_80055694 lbl_80055688: /* 80055688 000512E8 48 0E 9C 95 */ bl func_8013F31C /* 8005568C 000512EC 48 00 00 08 */ b lbl_80055694 lbl_80055690: /* 80055690 000512F0 48 05 49 A9 */ bl func_800AA038 lbl_80055694: /* 80055694 000512F4 38 60 00 00 */ li r3, 0 /* 80055698 000512F8 4B FB 41 71 */ bl func_80009808 /* 8005569C 000512FC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800556A0 00051300 7C 08 03 A6 */ mtlr r0 /* 800556A4 00051304 38 21 00 10 */ addi r1, r1, 0x10 /* 800556A8 00051308 4E 80 00 20 */ blr /* 800556AC 0005130C 2C 04 08 FC */ cmpwi r4, 0x8fc /* 800556B0 00051310 41 82 00 7C */ beq lbl_8005572C /* 800556B4 00051314 40 80 00 3C */ bge lbl_800556F0 /* 800556B8 00051318 2C 04 08 35 */ cmpwi r4, 0x835 /* 800556BC 0005131C 4D 82 00 20 */ beqlr /* 800556C0 00051320 40 80 00 18 */ bge lbl_800556D8 /* 800556C4 00051324 2C 04 07 D3 */ cmpwi r4, 0x7d3 /* 800556C8 00051328 4D 80 00 20 */ bltlr /* 800556CC 0005132C 2C 04 08 34 */ cmpwi r4, 0x834 /* 800556D0 00051330 40 80 00 54 */ bge lbl_80055724 /* 800556D4 00051334 4E 80 00 20 */ blr lbl_800556D8: /* 800556D8 00051338 2C 04 08 99 */ cmpwi r4, 0x899 /* 800556DC 0005133C 4D 82 00 20 */ beqlr /* 800556E0 00051340 4C 80 00 20 */ bgelr /* 800556E4 00051344 2C 04 08 98 */ cmpwi r4, 0x898 /* 800556E8 00051348 40 80 00 40 */ bge lbl_80055728 /* 800556EC 0005134C 4E 80 00 20 */ blr lbl_800556F0: /* 800556F0 00051350 2C 04 0A F1 */ cmpwi r4, 0xaf1 /* 800556F4 00051354 41 82 00 3C */ beq lbl_80055730 /* 800556F8 00051358 40 80 00 14 */ bge lbl_8005570C /* 800556FC 0005135C 2C 04 09 60 */ cmpwi r4, 0x960 /* 80055700 00051360 4D 82 00 20 */ beqlr /* 80055704 00051364 4D 80 00 20 */ bltlr /* 80055708 00051368 4E 80 00 20 */ blr lbl_8005570C: /* 8005570C 0005136C 2C 04 0B 54 */ cmpwi r4, 0xb54 /* 80055710 00051370 41 82 00 28 */ beq lbl_80055738 /* 80055714 00051374 4C 80 00 20 */ bgelr /* 80055718 00051378 2C 04 0A F3 */ cmpwi r4, 0xaf3 /* 8005571C 0005137C 4C 80 00 20 */ bgelr /* 80055720 00051380 48 00 00 14 */ b lbl_80055734 lbl_80055724: /* 80055724 00051384 48 0A FB 74 */ b func_80105298 lbl_80055728: /* 80055728 00051388 48 02 BB E0 */ b func_80081308 lbl_8005572C: /* 8005572C 0005138C 48 06 C9 48 */ b func_800C2074 lbl_80055730: /* 80055730 00051390 48 0C 9A 98 */ b func_8011F1C8 lbl_80055734: /* 80055734 00051394 48 0E A9 34 */ b func_80140068 lbl_80055738: /* 80055738 00051398 48 05 49 4C */ b func_800AA084 /* 8005573C 0005139C 4E 80 00 20 */ blr /* 80055740 000513A0 2C 04 08 FC */ cmpwi r4, 0x8fc /* 80055744 000513A4 41 82 00 88 */ beq lbl_800557CC /* 80055748 000513A8 40 80 00 40 */ bge lbl_80055788 /* 8005574C 000513AC 2C 04 08 35 */ cmpwi r4, 0x835 /* 80055750 000513B0 4D 82 00 20 */ beqlr /* 80055754 000513B4 40 80 00 1C */ bge lbl_80055770 /* 80055758 000513B8 2C 04 07 D2 */ cmpwi r4, 0x7d2 /* 8005575C 000513BC 41 82 00 60 */ beq lbl_800557BC /* 80055760 000513C0 4D 80 00 20 */ bltlr /* 80055764 000513C4 2C 04 08 34 */ cmpwi r4, 0x834 /* 80055768 000513C8 40 80 00 58 */ bge lbl_800557C0 /* 8005576C 000513CC 4E 80 00 20 */ blr lbl_80055770: /* 80055770 000513D0 2C 04 08 99 */ cmpwi r4, 0x899 /* 80055774 000513D4 41 82 00 54 */ beq lbl_800557C8 /* 80055778 000513D8 4C 80 00 20 */ bgelr /* 8005577C 000513DC 2C 04 08 98 */ cmpwi r4, 0x898 /* 80055780 000513E0 40 80 00 44 */ bge lbl_800557C4 /* 80055784 000513E4 4E 80 00 20 */ blr lbl_80055788: /* 80055788 000513E8 2C 04 0A F1 */ cmpwi r4, 0xaf1 /* 8005578C 000513EC 41 82 00 44 */ beq lbl_800557D0 /* 80055790 000513F0 40 80 00 14 */ bge lbl_800557A4 /* 80055794 000513F4 2C 04 09 60 */ cmpwi r4, 0x960 /* 80055798 000513F8 4D 82 00 20 */ beqlr /* 8005579C 000513FC 4D 80 00 20 */ bltlr /* 800557A0 00051400 4E 80 00 20 */ blr lbl_800557A4: /* 800557A4 00051404 2C 04 0B 54 */ cmpwi r4, 0xb54 /* 800557A8 00051408 41 82 00 30 */ beq lbl_800557D8 /* 800557AC 0005140C 4C 80 00 20 */ bgelr /* 800557B0 00051410 2C 04 0A F3 */ cmpwi r4, 0xaf3 /* 800557B4 00051414 4C 80 00 20 */ bgelr /* 800557B8 00051418 48 00 00 1C */ b lbl_800557D4 lbl_800557BC: /* 800557BC 0005141C 48 05 62 30 */ b func_800AB9EC lbl_800557C0: /* 800557C0 00051420 48 0A F9 D0 */ b func_80105190 lbl_800557C4: /* 800557C4 00051424 48 02 B7 48 */ b func_80080F0C lbl_800557C8: /* 800557C8 00051428 48 04 A4 D4 */ b func_8009FC9C lbl_800557CC: /* 800557CC 0005142C 48 06 4A DC */ b func_800BA2A8 lbl_800557D0: /* 800557D0 00051430 48 0C 98 80 */ b func_8011F050 lbl_800557D4: /* 800557D4 00051434 48 0E A7 E4 */ b func_8013FFB8 lbl_800557D8: /* 800557D8 00051438 48 05 48 A8 */ b func_800AA080 /* 800557DC 0005143C 4E 80 00 20 */ blr /* 800557E0 00051440 4E 80 00 20 */ blr .global func_800557E4 func_800557E4: /* 800557E4 00051444 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800557E8 00051448 7C 08 02 A6 */ mflr r0 /* 800557EC 0005144C 38 60 00 01 */ li r3, 1 /* 800557F0 00051450 38 8D 98 98 */ addi r4, r13, lbl_8063EB58-_SDA_BASE_ /* 800557F4 00051454 90 01 00 14 */ stw r0, 0x14(r1) /* 800557F8 00051458 38 A0 00 04 */ li r5, 4 /* 800557FC 0005145C 38 00 00 00 */ li r0, 0 /* 80055800 00051460 93 E1 00 0C */ stw r31, 0xc(r1) /* 80055804 00051464 93 C1 00 08 */ stw r30, 8(r1) /* 80055808 00051468 3F C0 80 47 */ lis r30, lbl_80475428@ha /* 8005580C 0005146C 3B DE 54 28 */ addi r30, r30, lbl_80475428@l /* 80055810 00051470 98 6D 98 98 */ stb r3, lbl_8063EB58-_SDA_BASE_(r13) /* 80055814 00051474 38 6D 98 A0 */ addi r3, r13, lbl_8063EB60-_SDA_BASE_ /* 80055818 00051478 B0 A4 00 02 */ sth r5, 2(r4) /* 8005581C 0005147C 98 04 00 04 */ stb r0, 4(r4) /* 80055820 00051480 4B FF FC ED */ bl func_8005550C /* 80055824 00051484 3C 80 80 05 */ lis r4, lbl_8005551C@ha /* 80055828 00051488 38 BE 00 00 */ addi r5, r30, 0 /* 8005582C 0005148C 38 84 55 1C */ addi r4, r4, lbl_8005551C@l /* 80055830 00051490 38 6D 98 A0 */ addi r3, r13, lbl_8063EB60-_SDA_BASE_ /* 80055834 00051494 48 17 14 15 */ bl __register_global_object_tmp /* 80055838 00051498 38 7E 00 18 */ addi r3, r30, 0x18 /* 8005583C 0005149C 38 80 07 D1 */ li r4, 0x7d1 /* 80055840 000514A0 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055844 000514A4 48 1D 06 01 */ bl func_80225E44 /* 80055848 000514A8 3F E0 80 22 */ lis r31, func_80225EE0@ha /* 8005584C 000514AC 38 7E 00 18 */ addi r3, r30, 0x18 /* 80055850 000514B0 38 9F 5E E0 */ addi r4, r31, func_80225EE0@l /* 80055854 000514B4 38 BE 00 0C */ addi r5, r30, 0xc /* 80055858 000514B8 48 17 13 F1 */ bl __register_global_object_tmp /* 8005585C 000514BC 38 7E 00 40 */ addi r3, r30, 0x40 /* 80055860 000514C0 38 80 07 D2 */ li r4, 0x7d2 /* 80055864 000514C4 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055868 000514C8 48 1D 05 DD */ bl func_80225E44 /* 8005586C 000514CC 38 7E 00 40 */ addi r3, r30, 0x40 /* 80055870 000514D0 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055874 000514D4 38 BE 00 34 */ addi r5, r30, 0x34 /* 80055878 000514D8 48 17 13 D1 */ bl __register_global_object_tmp /* 8005587C 000514DC 38 7E 00 68 */ addi r3, r30, 0x68 /* 80055880 000514E0 38 80 08 34 */ li r4, 0x834 /* 80055884 000514E4 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055888 000514E8 48 1D 05 BD */ bl func_80225E44 /* 8005588C 000514EC 38 7E 00 68 */ addi r3, r30, 0x68 /* 80055890 000514F0 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055894 000514F4 38 BE 00 5C */ addi r5, r30, 0x5c /* 80055898 000514F8 48 17 13 B1 */ bl __register_global_object_tmp /* 8005589C 000514FC 38 7E 00 90 */ addi r3, r30, 0x90 /* 800558A0 00051500 38 80 08 98 */ li r4, 0x898 /* 800558A4 00051504 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 800558A8 00051508 48 1D 05 9D */ bl func_80225E44 /* 800558AC 0005150C 38 7E 00 90 */ addi r3, r30, 0x90 /* 800558B0 00051510 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 800558B4 00051514 38 BE 00 84 */ addi r5, r30, 0x84 /* 800558B8 00051518 48 17 13 91 */ bl __register_global_object_tmp /* 800558BC 0005151C 38 7E 00 B8 */ addi r3, r30, 0xb8 /* 800558C0 00051520 38 80 08 99 */ li r4, 0x899 /* 800558C4 00051524 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 800558C8 00051528 48 1D 05 7D */ bl func_80225E44 /* 800558CC 0005152C 38 7E 00 B8 */ addi r3, r30, 0xb8 /* 800558D0 00051530 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 800558D4 00051534 38 BE 00 AC */ addi r5, r30, 0xac /* 800558D8 00051538 48 17 13 71 */ bl __register_global_object_tmp /* 800558DC 0005153C 38 7E 00 E0 */ addi r3, r30, 0xe0 /* 800558E0 00051540 38 80 08 FC */ li r4, 0x8fc /* 800558E4 00051544 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 800558E8 00051548 48 1D 05 5D */ bl func_80225E44 /* 800558EC 0005154C 38 7E 00 E0 */ addi r3, r30, 0xe0 /* 800558F0 00051550 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 800558F4 00051554 38 BE 00 D4 */ addi r5, r30, 0xd4 /* 800558F8 00051558 48 17 13 51 */ bl __register_global_object_tmp /* 800558FC 0005155C 38 7E 01 08 */ addi r3, r30, 0x108 /* 80055900 00051560 38 80 09 60 */ li r4, 0x960 /* 80055904 00051564 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055908 00051568 48 1D 05 3D */ bl func_80225E44 /* 8005590C 0005156C 38 7E 01 08 */ addi r3, r30, 0x108 /* 80055910 00051570 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055914 00051574 38 BE 00 FC */ addi r5, r30, 0xfc /* 80055918 00051578 48 17 13 31 */ bl __register_global_object_tmp /* 8005591C 0005157C 38 7E 01 30 */ addi r3, r30, 0x130 /* 80055920 00051580 38 80 0A F0 */ li r4, 0xaf0 /* 80055924 00051584 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055928 00051588 48 1D 05 1D */ bl func_80225E44 /* 8005592C 0005158C 38 7E 01 30 */ addi r3, r30, 0x130 /* 80055930 00051590 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055934 00051594 38 BE 01 24 */ addi r5, r30, 0x124 /* 80055938 00051598 48 17 13 11 */ bl __register_global_object_tmp /* 8005593C 0005159C 38 7E 01 58 */ addi r3, r30, 0x158 /* 80055940 000515A0 38 80 0A F1 */ li r4, 0xaf1 /* 80055944 000515A4 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055948 000515A8 48 1D 04 FD */ bl func_80225E44 /* 8005594C 000515AC 38 7E 01 58 */ addi r3, r30, 0x158 /* 80055950 000515B0 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055954 000515B4 38 BE 01 4C */ addi r5, r30, 0x14c /* 80055958 000515B8 48 17 12 F1 */ bl __register_global_object_tmp /* 8005595C 000515BC 38 7E 01 80 */ addi r3, r30, 0x180 /* 80055960 000515C0 38 80 0A F2 */ li r4, 0xaf2 /* 80055964 000515C4 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055968 000515C8 48 1D 04 DD */ bl func_80225E44 /* 8005596C 000515CC 38 7E 01 80 */ addi r3, r30, 0x180 /* 80055970 000515D0 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055974 000515D4 38 BE 01 74 */ addi r5, r30, 0x174 /* 80055978 000515D8 48 17 12 D1 */ bl __register_global_object_tmp /* 8005597C 000515DC 38 7E 01 A8 */ addi r3, r30, 0x1a8 /* 80055980 000515E0 38 80 0B 54 */ li r4, 0xb54 /* 80055984 000515E4 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 80055988 000515E8 48 1D 04 BD */ bl func_80225E44 /* 8005598C 000515EC 38 7E 01 A8 */ addi r3, r30, 0x1a8 /* 80055990 000515F0 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 80055994 000515F4 38 BE 01 9C */ addi r5, r30, 0x19c /* 80055998 000515F8 48 17 12 B1 */ bl __register_global_object_tmp /* 8005599C 000515FC 38 7E 01 D0 */ addi r3, r30, 0x1d0 /* 800559A0 00051600 38 80 08 35 */ li r4, 0x835 /* 800559A4 00051604 38 AD 98 A0 */ addi r5, r13, lbl_8063EB60-_SDA_BASE_ /* 800559A8 00051608 48 1D 04 9D */ bl func_80225E44 /* 800559AC 0005160C 38 7E 01 D0 */ addi r3, r30, 0x1d0 /* 800559B0 00051610 38 9F 5E E0 */ addi r4, r31, 0x5ee0 /* 800559B4 00051614 38 BE 01 C4 */ addi r5, r30, 0x1c4 /* 800559B8 00051618 48 17 12 91 */ bl __register_global_object_tmp /* 800559BC 0005161C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800559C0 00051620 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800559C4 00051624 83 C1 00 08 */ lwz r30, 8(r1) /* 800559C8 00051628 7C 08 03 A6 */ mtlr r0 /* 800559CC 0005162C 38 21 00 10 */ addi r1, r1, 0x10 /* 800559D0 00051630 4E 80 00 20 */ blr .global func_800559D4 func_800559D4: /* 800559D4 00051634 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800559D8 00051638 7C 08 02 A6 */ mflr r0 /* 800559DC 0005163C 3C A0 80 05 */ lis r5, lbl_8005757C@ha /* 800559E0 00051640 39 20 00 01 */ li r9, 1 /* 800559E4 00051644 90 01 00 14 */ stw r0, 0x14(r1) /* 800559E8 00051648 38 00 00 00 */ li r0, 0 /* 800559EC 0005164C 38 A5 75 7C */ addi r5, r5, lbl_8005757C@l /* 800559F0 00051650 38 C0 00 00 */ li r6, 0 /* 800559F4 00051654 93 E1 00 0C */ stw r31, 0xc(r1) /* 800559F8 00051658 3F E0 00 0A */ lis r31, 0x0009FC78@ha /* 800559FC 0005165C 38 9F FC 78 */ addi r4, r31, 0x0009FC78@l /* 80055A00 00051660 38 E0 20 00 */ li r7, 0x2000 /* 80055A04 00051664 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A08 00051668 39 00 00 08 */ li r8, 8 /* 80055A0C 0005166C 90 0A 00 04 */ stw r0, 4(r10) /* 80055A10 00051670 90 0A 00 00 */ stw r0, 0(r10) /* 80055A14 00051674 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A18 00051678 54 63 00 7E */ clrlwi r3, r3, 1 /* 80055A1C 0005167C 90 6A 00 08 */ stw r3, 8(r10) /* 80055A20 00051680 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A24 00051684 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A28 00051688 54 63 00 80 */ rlwinm r3, r3, 0, 2, 0 /* 80055A2C 0005168C 90 6A 00 08 */ stw r3, 8(r10) /* 80055A30 00051690 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A34 00051694 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A38 00051698 54 63 00 C2 */ rlwinm r3, r3, 0, 3, 1 /* 80055A3C 0005169C 90 6A 00 08 */ stw r3, 8(r10) /* 80055A40 000516A0 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A44 000516A4 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A48 000516A8 54 63 01 04 */ rlwinm r3, r3, 0, 4, 2 /* 80055A4C 000516AC 90 6A 00 08 */ stw r3, 8(r10) /* 80055A50 000516B0 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A54 000516B4 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A58 000516B8 64 63 08 00 */ oris r3, r3, 0x800 /* 80055A5C 000516BC 90 6A 00 08 */ stw r3, 8(r10) /* 80055A60 000516C0 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A64 000516C4 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A68 000516C8 54 63 01 88 */ rlwinm r3, r3, 0, 6, 4 /* 80055A6C 000516CC 90 6A 00 08 */ stw r3, 8(r10) /* 80055A70 000516D0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A74 000516D4 90 03 00 20 */ stw r0, 0x20(r3) /* 80055A78 000516D8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A7C 000516DC 90 03 00 1C */ stw r0, 0x1c(r3) /* 80055A80 000516E0 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A84 000516E4 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A88 000516E8 54 63 07 76 */ rlwinm r3, r3, 0, 0x1d, 0x1b /* 80055A8C 000516EC 90 6A 00 08 */ stw r3, 8(r10) /* 80055A90 000516F0 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055A94 000516F4 80 6A 00 08 */ lwz r3, 8(r10) /* 80055A98 000516F8 54 63 02 4E */ rlwinm r3, r3, 0, 9, 7 /* 80055A9C 000516FC 90 6A 00 08 */ stw r3, 8(r10) /* 80055AA0 00051700 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AA4 00051704 80 6A 00 08 */ lwz r3, 8(r10) /* 80055AA8 00051708 54 63 02 90 */ rlwinm r3, r3, 0, 0xa, 8 /* 80055AAC 0005170C 90 6A 00 08 */ stw r3, 8(r10) /* 80055AB0 00051710 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AB4 00051714 80 6A 00 08 */ lwz r3, 8(r10) /* 80055AB8 00051718 54 63 03 14 */ rlwinm r3, r3, 0, 0xc, 0xa /* 80055ABC 0005171C 90 6A 00 08 */ stw r3, 8(r10) /* 80055AC0 00051720 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AC4 00051724 80 6A 00 08 */ lwz r3, 8(r10) /* 80055AC8 00051728 54 63 03 56 */ rlwinm r3, r3, 0, 0xd, 0xb /* 80055ACC 0005172C 90 6A 00 08 */ stw r3, 8(r10) /* 80055AD0 00051730 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AD4 00051734 80 6A 00 08 */ lwz r3, 8(r10) /* 80055AD8 00051738 54 63 05 66 */ rlwinm r3, r3, 0, 0x15, 0x13 /* 80055ADC 0005173C 90 6A 00 08 */ stw r3, 8(r10) /* 80055AE0 00051740 81 4D 81 E0 */ lwz r10, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AE4 00051744 80 6A 00 08 */ lwz r3, 8(r10) /* 80055AE8 00051748 54 63 06 B0 */ rlwinm r3, r3, 0, 0x1a, 0x18 /* 80055AEC 0005174C 90 6A 00 08 */ stw r3, 8(r10) /* 80055AF0 00051750 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AF4 00051754 98 03 10 81 */ stb r0, 0x1081(r3) /* 80055AF8 00051758 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055AFC 0005175C 90 03 10 7C */ stw r0, 0x107c(r3) /* 80055B00 00051760 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055B04 00051764 98 03 10 80 */ stb r0, 0x1080(r3) /* 80055B08 00051768 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055B0C 0005176C 80 03 00 08 */ lwz r0, 8(r3) /* 80055B10 00051770 60 00 00 08 */ ori r0, r0, 8 /* 80055B14 00051774 90 03 00 08 */ stw r0, 8(r3) /* 80055B18 00051778 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055B1C 0005177C 80 03 00 08 */ lwz r0, 8(r3) /* 80055B20 00051780 64 00 00 80 */ oris r0, r0, 0x80 /* 80055B24 00051784 90 03 00 08 */ stw r0, 8(r3) /* 80055B28 00051788 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80055B2C 0005178C 48 1C E6 E9 */ bl func_80224214 /* 80055B30 00051790 38 60 00 80 */ li r3, 0x80 /* 80055B34 00051794 48 00 6E 75 */ bl func_8005C9A8 /* 80055B38 00051798 38 60 00 60 */ li r3, 0x60 /* 80055B3C 0005179C 48 00 6E 7D */ bl func_8005C9B8 /* 80055B40 000517A0 48 00 4A 49 */ bl func_8005A588 /* 80055B44 000517A4 38 60 00 0E */ li r3, 0xe /* 80055B48 000517A8 48 1F 3A 95 */ bl func_802495DC /* 80055B4C 000517AC 4B FF F9 B9 */ bl func_80055504 /* 80055B50 000517B0 3C A0 80 05 */ lis r5, lbl_80055EDC@ha /* 80055B54 000517B4 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80055B58 000517B8 38 9F FB F1 */ addi r4, r31, -1039 /* 80055B5C 000517BC 38 C0 00 00 */ li r6, 0 /* 80055B60 000517C0 38 A5 5E DC */ addi r5, r5, lbl_80055EDC@l /* 80055B64 000517C4 38 E0 20 00 */ li r7, 0x2000 /* 80055B68 000517C8 39 00 00 08 */ li r8, 8 /* 80055B6C 000517CC 39 20 00 01 */ li r9, 1 /* 80055B70 000517D0 48 1C E6 A5 */ bl func_80224214 /* 80055B74 000517D4 3C A0 80 05 */ lis r5, lbl_8005606C@ha /* 80055B78 000517D8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80055B7C 000517DC 38 9F 2C 2A */ addi r4, r31, 0x2c2a /* 80055B80 000517E0 38 C0 00 00 */ li r6, 0 /* 80055B84 000517E4 38 A5 60 6C */ addi r5, r5, lbl_8005606C@l /* 80055B88 000517E8 38 E0 20 00 */ li r7, 0x2000 /* 80055B8C 000517EC 39 00 00 08 */ li r8, 8 /* 80055B90 000517F0 39 20 00 01 */ li r9, 1 /* 80055B94 000517F4 48 1C E6 81 */ bl func_80224214 /* 80055B98 000517F8 3C A0 80 05 */ lis r5, lbl_80056120@ha /* 80055B9C 000517FC 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80055BA0 00051800 38 9F FB FD */ addi r4, r31, -1027 /* 80055BA4 00051804 38 C0 00 00 */ li r6, 0 /* 80055BA8 00051808 38 A5 61 20 */ addi r5, r5, lbl_80056120@l /* 80055BAC 0005180C 38 E0 20 00 */ li r7, 0x2000 /* 80055BB0 00051810 39 00 00 08 */ li r8, 8 /* 80055BB4 00051814 39 20 00 01 */ li r9, 1 /* 80055BB8 00051818 48 1C E6 5D */ bl func_80224214 /* 80055BBC 0005181C 48 00 48 95 */ bl func_8005A450 /* 80055BC0 00051820 38 60 00 00 */ li r3, 0 /* 80055BC4 00051824 48 00 02 F1 */ bl func_80055EB4 /* 80055BC8 00051828 48 05 48 A9 */ bl func_800AA470 /* 80055BCC 0005182C 48 0A 2F 39 */ bl func_800F8B04 /* 80055BD0 00051830 48 0A E7 85 */ bl func_80104354 /* 80055BD4 00051834 48 09 3B 6D */ bl func_800E9740 /* 80055BD8 00051838 48 08 E7 49 */ bl func_800E4320 /* 80055BDC 0005183C 48 0C 86 21 */ bl func_8011E1FC /* 80055BE0 00051840 48 0E 4D 51 */ bl func_8013A930 /* 80055BE4 00051844 48 0D C1 0D */ bl func_80131CF0 /* 80055BE8 00051848 48 10 25 D1 */ bl func_801581B8 /* 80055BEC 0005184C 48 10 CB A5 */ bl func_80162790 /* 80055BF0 00051850 38 60 00 00 */ li r3, 0 /* 80055BF4 00051854 48 10 CC 29 */ bl func_8016281C /* 80055BF8 00051858 38 60 00 01 */ li r3, 1 /* 80055BFC 0005185C 48 10 CC 21 */ bl func_8016281C /* 80055C00 00051860 38 60 00 02 */ li r3, 2 /* 80055C04 00051864 48 10 CC 19 */ bl func_8016281C /* 80055C08 00051868 38 60 00 03 */ li r3, 3 /* 80055C0C 0005186C 48 10 CC 11 */ bl func_8016281C /* 80055C10 00051870 3C 80 1D 57 */ lis r4, 0x1D571A00@ha /* 80055C14 00051874 38 60 00 0E */ li r3, 0xe /* 80055C18 00051878 38 84 1A 00 */ addi r4, r4, 0x1D571A00@l /* 80055C1C 0005187C 48 00 01 7D */ bl func_80055D98 /* 80055C20 00051880 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055C24 00051884 3C C0 80 05 */ lis r6, lbl_800564CC@ha /* 80055C28 00051888 38 80 00 00 */ li r4, 0 /* 80055C2C 0005188C 38 E0 FF FF */ li r7, -1 /* 80055C30 00051890 90 65 10 40 */ stw r3, 0x1040(r5) /* 80055C34 00051894 38 C6 64 CC */ addi r6, r6, lbl_800564CC@l /* 80055C38 00051898 38 A0 00 00 */ li r5, 0 /* 80055C3C 0005189C 39 00 00 01 */ li r8, 1 /* 80055C40 000518A0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055C44 000518A4 39 20 00 01 */ li r9, 1 /* 80055C48 000518A8 39 40 00 00 */ li r10, 0 /* 80055C4C 000518AC 80 63 10 40 */ lwz r3, 0x1040(r3) /* 80055C50 000518B0 48 1F DF E9 */ bl func_80253C38 /* 80055C54 000518B4 80 CD 81 E0 */ lwz r6, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055C58 000518B8 38 80 00 01 */ li r4, 1 /* 80055C5C 000518BC 38 A0 00 00 */ li r5, 0 /* 80055C60 000518C0 B0 66 10 44 */ sth r3, 0x1044(r6) /* 80055C64 000518C4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055C68 000518C8 A8 63 10 44 */ lha r3, 0x1044(r3) /* 80055C6C 000518CC 48 1F E1 45 */ bl func_80253DB0 /* 80055C70 000518D0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055C74 000518D4 38 80 00 09 */ li r4, 9 /* 80055C78 000518D8 38 A0 00 03 */ li r5, 3 /* 80055C7C 000518DC A8 63 10 44 */ lha r3, 0x1044(r3) /* 80055C80 000518E0 48 1F E1 71 */ bl func_80253DF0 /* 80055C84 000518E4 3C 80 21 88 */ lis r4, 0x21881A00@ha /* 80055C88 000518E8 38 60 00 0E */ li r3, 0xe /* 80055C8C 000518EC 38 84 1A 00 */ addi r4, r4, 0x21881A00@l /* 80055C90 000518F0 48 00 01 09 */ bl func_80055D98 /* 80055C94 000518F4 80 ED 81 E0 */ lwz r7, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055C98 000518F8 3C 80 80 05 */ lis r4, lbl_8005654C@ha /* 80055C9C 000518FC 3C A0 80 05 */ lis r5, lbl_800565BC@ha /* 80055CA0 00051900 3C C0 80 05 */ lis r6, lbl_80056630@ha /* 80055CA4 00051904 90 67 10 48 */ stw r3, 0x1048(r7) /* 80055CA8 00051908 38 84 65 4C */ addi r4, r4, lbl_8005654C@l /* 80055CAC 0005190C 38 A5 65 BC */ addi r5, r5, lbl_800565BC@l /* 80055CB0 00051910 38 C6 66 30 */ addi r6, r6, lbl_80056630@l /* 80055CB4 00051914 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055CB8 00051918 38 E0 FF FF */ li r7, -1 /* 80055CBC 0005191C 39 00 00 01 */ li r8, 1 /* 80055CC0 00051920 39 20 00 01 */ li r9, 1 /* 80055CC4 00051924 80 63 10 48 */ lwz r3, 0x1048(r3) /* 80055CC8 00051928 39 40 00 00 */ li r10, 0 /* 80055CCC 0005192C 48 1F DF 6D */ bl func_80253C38 /* 80055CD0 00051930 80 CD 81 E0 */ lwz r6, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055CD4 00051934 38 80 00 00 */ li r4, 0 /* 80055CD8 00051938 38 A0 00 00 */ li r5, 0 /* 80055CDC 0005193C B0 66 10 4C */ sth r3, 0x104c(r6) /* 80055CE0 00051940 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055CE4 00051944 A8 63 10 4C */ lha r3, 0x104c(r3) /* 80055CE8 00051948 48 1F E0 C9 */ bl func_80253DB0 /* 80055CEC 0005194C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055CF0 00051950 38 80 00 09 */ li r4, 9 /* 80055CF4 00051954 38 A0 00 02 */ li r5, 2 /* 80055CF8 00051958 A8 63 10 4C */ lha r3, 0x104c(r3) /* 80055CFC 0005195C 48 1F E0 F5 */ bl func_80253DF0 /* 80055D00 00051960 3C 80 23 88 */ lis r4, 0x23881A00@ha /* 80055D04 00051964 38 60 00 0E */ li r3, 0xe /* 80055D08 00051968 38 84 1A 00 */ addi r4, r4, 0x23881A00@l /* 80055D0C 0005196C 48 00 00 8D */ bl func_80055D98 /* 80055D10 00051970 80 ED 81 E0 */ lwz r7, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055D14 00051974 3C 80 80 05 */ lis r4, lbl_800568C0@ha /* 80055D18 00051978 3C A0 80 05 */ lis r5, lbl_8005694C@ha /* 80055D1C 0005197C 3C C0 80 05 */ lis r6, lbl_80056978@ha /* 80055D20 00051980 90 67 10 50 */ stw r3, 0x1050(r7) /* 80055D24 00051984 38 84 68 C0 */ addi r4, r4, lbl_800568C0@l /* 80055D28 00051988 38 A5 69 4C */ addi r5, r5, lbl_8005694C@l /* 80055D2C 0005198C 38 C6 69 78 */ addi r6, r6, lbl_80056978@l /* 80055D30 00051990 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055D34 00051994 38 E0 FF FF */ li r7, -1 /* 80055D38 00051998 39 00 00 01 */ li r8, 1 /* 80055D3C 0005199C 39 20 00 01 */ li r9, 1 /* 80055D40 000519A0 80 63 10 50 */ lwz r3, 0x1050(r3) /* 80055D44 000519A4 39 40 00 00 */ li r10, 0 /* 80055D48 000519A8 48 1F DE F1 */ bl func_80253C38 /* 80055D4C 000519AC 80 CD 81 E0 */ lwz r6, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055D50 000519B0 38 80 00 00 */ li r4, 0 /* 80055D54 000519B4 38 A0 00 00 */ li r5, 0 /* 80055D58 000519B8 B0 66 10 54 */ sth r3, 0x1054(r6) /* 80055D5C 000519BC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055D60 000519C0 A8 63 10 54 */ lha r3, 0x1054(r3) /* 80055D64 000519C4 48 1F E0 4D */ bl func_80253DB0 /* 80055D68 000519C8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055D6C 000519CC 38 80 00 09 */ li r4, 9 /* 80055D70 000519D0 38 A0 00 02 */ li r5, 2 /* 80055D74 000519D4 A8 63 10 54 */ lha r3, 0x1054(r3) /* 80055D78 000519D8 48 1F E0 79 */ bl func_80253DF0 /* 80055D7C 000519DC 48 10 B3 E9 */ bl func_80161164 /* 80055D80 000519E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055D84 000519E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80055D88 000519E8 7C 08 03 A6 */ mtlr r0 /* 80055D8C 000519EC 38 21 00 10 */ addi r1, r1, 0x10 /* 80055D90 000519F0 4E 80 00 20 */ blr .global lbl_80055D94 lbl_80055D94: /* 80055D94 000519F4 48 00 6C 34 */ b lbl_8005C9C8 .global func_80055D98 func_80055D98: /* 80055D98 000519F8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80055D9C 000519FC 7C 08 02 A6 */ mflr r0 /* 80055DA0 00051A00 90 01 00 24 */ stw r0, 0x24(r1) /* 80055DA4 00051A04 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80055DA8 00051A08 93 C1 00 18 */ stw r30, 0x18(r1) /* 80055DAC 00051A0C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80055DB0 00051A10 7C 9D 23 78 */ mr r29, r4 /* 80055DB4 00051A14 93 81 00 10 */ stw r28, 0x10(r1) /* 80055DB8 00051A18 7C 7C 1B 78 */ mr r28, r3 /* 80055DBC 00051A1C 48 18 58 29 */ bl func_801DB5E4 /* 80055DC0 00051A20 7C 7F 1B 78 */ mr r31, r3 /* 80055DC4 00051A24 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 80055DC8 00051A28 38 1F 00 1F */ addi r0, r31, 0x1f /* 80055DCC 00051A2C 38 A0 00 20 */ li r5, 0x20 /* 80055DD0 00051A30 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 80055DD4 00051A34 48 18 4F 39 */ bl func_801DAD0C /* 80055DD8 00051A38 7C 7E 1B 78 */ mr r30, r3 /* 80055DDC 00051A3C 7F 83 E3 78 */ mr r3, r28 /* 80055DE0 00051A40 7F A4 EB 78 */ mr r4, r29 /* 80055DE4 00051A44 48 18 56 D9 */ bl func_801DB4BC /* 80055DE8 00051A48 7C 64 1B 78 */ mr r4, r3 /* 80055DEC 00051A4C 7F C3 F3 78 */ mr r3, r30 /* 80055DF0 00051A50 7F E5 FB 78 */ mr r5, r31 /* 80055DF4 00051A54 4B FA E2 0D */ bl memcpy /* 80055DF8 00051A58 7F C3 F3 78 */ mr r3, r30 /* 80055DFC 00051A5C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80055E00 00051A60 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80055E04 00051A64 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80055E08 00051A68 83 81 00 10 */ lwz r28, 0x10(r1) /* 80055E0C 00051A6C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80055E10 00051A70 7C 08 03 A6 */ mtlr r0 /* 80055E14 00051A74 38 21 00 20 */ addi r1, r1, 0x20 /* 80055E18 00051A78 4E 80 00 20 */ blr .global func_80055E1C func_80055E1C: /* 80055E1C 00051A7C 7C 64 1B 78 */ mr r4, r3 /* 80055E20 00051A80 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 80055E24 00051A84 38 04 00 1F */ addi r0, r4, 0x1f /* 80055E28 00051A88 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 80055E2C 00051A8C 48 18 4E 68 */ b func_801DAC94 .global func_80055E30 func_80055E30: /* 80055E30 00051A90 7C 64 1B 78 */ mr r4, r3 /* 80055E34 00051A94 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 80055E38 00051A98 48 18 4F 10 */ b func_801DAD48 .global func_80055E3C func_80055E3C: /* 80055E3C 00051A9C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80055E40 00051AA0 7C 08 02 A6 */ mflr r0 /* 80055E44 00051AA4 90 01 00 14 */ stw r0, 0x14(r1) /* 80055E48 00051AA8 48 18 A9 A1 */ bl func_801E07E8 /* 80055E4C 00051AAC 2C 03 00 00 */ cmpwi r3, 0 /* 80055E50 00051AB0 41 82 00 0C */ beq lbl_80055E5C /* 80055E54 00051AB4 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 80055E58 00051AB8 48 00 00 4C */ b lbl_80055EA4 lbl_80055E5C: /* 80055E5C 00051ABC 4B FB 12 29 */ bl func_80007084 /* 80055E60 00051AC0 2C 03 00 00 */ cmpwi r3, 0 /* 80055E64 00051AC4 41 82 00 0C */ beq lbl_80055E70 /* 80055E68 00051AC8 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 80055E6C 00051ACC 48 00 00 38 */ b lbl_80055EA4 lbl_80055E70: /* 80055E70 00051AD0 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80055E74 00051AD4 88 03 00 82 */ lbz r0, 0x82(r3) /* 80055E78 00051AD8 2C 00 00 00 */ cmpwi r0, 0 /* 80055E7C 00051ADC 41 82 00 0C */ beq lbl_80055E88 /* 80055E80 00051AE0 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 80055E84 00051AE4 48 00 00 20 */ b lbl_80055EA4 lbl_80055E88: /* 80055E88 00051AE8 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055E8C 00051AEC 80 64 00 00 */ lwz r3, 0(r4) /* 80055E90 00051AF0 80 84 00 04 */ lwz r4, 4(r4) /* 80055E94 00051AF4 48 17 17 E5 */ bl func_801C7678 /* 80055E98 00051AF8 C0 42 85 64 */ lfs f2, lbl_80640B64-_SDA2_BASE_(r2) /* 80055E9C 00051AFC EC 01 10 24 */ fdivs f0, f1, f2 /* 80055EA0 00051B00 EC 20 10 24 */ fdivs f1, f0, f2 lbl_80055EA4: /* 80055EA4 00051B04 80 01 00 14 */ lwz r0, 0x14(r1) /* 80055EA8 00051B08 7C 08 03 A6 */ mtlr r0 /* 80055EAC 00051B0C 38 21 00 10 */ addi r1, r1, 0x10 /* 80055EB0 00051B10 4E 80 00 20 */ blr .global func_80055EB4 func_80055EB4: /* 80055EB4 00051B14 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055EB8 00051B18 80 04 00 08 */ lwz r0, 8(r4) /* 80055EBC 00051B1C 50 60 F8 00 */ rlwimi r0, r3, 0x1f, 0, 0 /* 80055EC0 00051B20 90 04 00 08 */ stw r0, 8(r4) /* 80055EC4 00051B24 4E 80 00 20 */ blr .global func_80055EC8 func_80055EC8: /* 80055EC8 00051B28 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055ECC 00051B2C 80 03 00 08 */ lwz r0, 8(r3) /* 80055ED0 00051B30 64 00 10 00 */ oris r0, r0, 0x1000 /* 80055ED4 00051B34 90 03 00 08 */ stw r0, 8(r3) /* 80055ED8 00051B38 4E 80 00 20 */ blr lbl_80055EDC: /* 80055EDC 00051B3C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80055EE0 00051B40 7C 08 02 A6 */ mflr r0 /* 80055EE4 00051B44 90 01 00 34 */ stw r0, 0x34(r1) /* 80055EE8 00051B48 39 61 00 30 */ addi r11, r1, 0x30 /* 80055EEC 00051B4C 48 17 12 3D */ bl _savegpr_27 /* 80055EF0 00051B50 48 21 C8 C9 */ bl OSGetTime /* 80055EF4 00051B54 7C 7D 1B 78 */ mr r29, r3 /* 80055EF8 00051B58 38 60 00 04 */ li r3, 4 /* 80055EFC 00051B5C 64 63 00 04 */ oris r3, r3, 4 /* 80055F00 00051B60 7C 9C 23 78 */ mr r28, r4 /* 80055F04 00051B64 3B 60 00 00 */ li r27, 0 /* 80055F08 00051B68 7C 72 E3 A6 */ mtspr 0x392, r3 /* 80055F0C 00051B6C 38 60 00 05 */ li r3, 5 /* 80055F10 00051B70 64 63 00 05 */ oris r3, r3, 5 /* 80055F14 00051B74 7C 73 E3 A6 */ mtspr 0x393, r3 /* 80055F18 00051B78 38 60 00 06 */ li r3, 6 /* 80055F1C 00051B7C 64 63 00 06 */ oris r3, r3, 6 /* 80055F20 00051B80 7C 74 E3 A6 */ mtspr 0x394, r3 /* 80055F24 00051B84 38 60 00 07 */ li r3, 7 /* 80055F28 00051B88 64 63 00 07 */ oris r3, r3, 7 /* 80055F2C 00051B8C 7C 75 E3 A6 */ mtspr 0x395, r3 /* 80055F30 00051B90 3C 80 43 1C */ lis r4, 0x431BDE83@ha /* 80055F34 00051B94 3F E0 80 00 */ lis r31, 0x8000 /* 80055F38 00051B98 3B C4 DE 83 */ addi r30, r4, 0x431BDE83@l lbl_80055F3C: /* 80055F3C 00051B9C 48 21 C8 7D */ bl OSGetTime /* 80055F40 00051BA0 80 1F 00 F8 */ lwz r0, 0xf8(r31) /* 80055F44 00051BA4 7C FC 20 10 */ subfc r7, r28, r4 /* 80055F48 00051BA8 7C DD 19 10 */ subfe r6, r29, r3 /* 80055F4C 00051BAC 38 A0 00 00 */ li r5, 0 /* 80055F50 00051BB0 54 00 F0 BE */ srwi r0, r0, 2 /* 80055F54 00051BB4 54 E4 18 38 */ slwi r4, r7, 3 /* 80055F58 00051BB8 7C 1E 00 16 */ mulhwu r0, r30, r0 /* 80055F5C 00051BBC 54 C3 18 38 */ slwi r3, r6, 3 /* 80055F60 00051BC0 50 E3 1F 7E */ rlwimi r3, r7, 3, 0x1d, 0x1f /* 80055F64 00051BC4 54 06 8B FE */ srwi r6, r0, 0xf /* 80055F68 00051BC8 48 17 12 25 */ bl __div2u /* 80055F6C 00051BCC 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055F70 00051BD0 90 85 00 04 */ stw r4, 4(r5) /* 80055F74 00051BD4 90 65 00 00 */ stw r3, 0(r5) /* 80055F78 00051BD8 48 21 C8 41 */ bl OSGetTime /* 80055F7C 00051BDC 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055F80 00051BE0 7C 9C 23 78 */ mr r28, r4 /* 80055F84 00051BE4 7C 7D 1B 78 */ mr r29, r3 /* 80055F88 00051BE8 80 05 00 08 */ lwz r0, 8(r5) /* 80055F8C 00051BEC 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f /* 80055F90 00051BF0 41 82 00 08 */ beq lbl_80055F98 /* 80055F94 00051BF4 48 00 02 1D */ bl func_800561B0 lbl_80055F98: /* 80055F98 00051BF8 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055F9C 00051BFC 80 85 00 08 */ lwz r4, 8(r5) /* 80055FA0 00051C00 54 80 DF FF */ rlwinm. r0, r4, 0x1b, 0x1f, 0x1f /* 80055FA4 00051C04 40 82 00 30 */ bne lbl_80055FD4 /* 80055FA8 00051C08 54 80 B7 FF */ rlwinm. r0, r4, 0x16, 0x1f, 0x1f /* 80055FAC 00051C0C 41 82 00 28 */ beq lbl_80055FD4 /* 80055FB0 00051C10 C0 25 10 88 */ lfs f1, 0x1088(r5) /* 80055FB4 00051C14 C0 05 10 8C */ lfs f0, 0x108c(r5) /* 80055FB8 00051C18 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80055FBC 00051C1C 40 80 00 18 */ bge lbl_80055FD4 /* 80055FC0 00051C20 4B FF FE 7D */ bl func_80055E3C /* 80055FC4 00051C24 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055FC8 00051C28 C0 04 10 88 */ lfs f0, 0x1088(r4) /* 80055FCC 00051C2C EC 00 08 2A */ fadds f0, f0, f1 /* 80055FD0 00051C30 D0 04 10 88 */ stfs f0, 0x1088(r4) lbl_80055FD4: /* 80055FD4 00051C34 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80055FD8 00051C38 80 85 00 08 */ lwz r4, 8(r5) /* 80055FDC 00051C3C 54 80 E7 FF */ rlwinm. r0, r4, 0x1c, 0x1f, 0x1f /* 80055FE0 00051C40 40 82 00 80 */ bne lbl_80056060 /* 80055FE4 00051C44 54 80 C7 FF */ rlwinm. r0, r4, 0x18, 0x1f, 0x1f /* 80055FE8 00051C48 41 82 00 78 */ beq lbl_80056060 /* 80055FEC 00051C4C C0 25 10 90 */ lfs f1, 0x1090(r5) /* 80055FF0 00051C50 C0 05 10 94 */ lfs f0, 0x1094(r5) /* 80055FF4 00051C54 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80055FF8 00051C58 40 80 00 68 */ bge lbl_80056060 /* 80055FFC 00051C5C 4B FF FE 41 */ bl func_80055E3C /* 80056000 00051C60 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056004 00051C64 C0 04 10 90 */ lfs f0, 0x1090(r4) /* 80056008 00051C68 EC 00 08 2A */ fadds f0, f0, f1 /* 8005600C 00051C6C D0 04 10 90 */ stfs f0, 0x1090(r4) /* 80056010 00051C70 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056014 00051C74 C0 24 10 94 */ lfs f1, 0x1094(r4) /* 80056018 00051C78 C0 04 10 90 */ lfs f0, 0x1090(r4) /* 8005601C 00051C7C EC 01 00 28 */ fsubs f0, f1, f0 /* 80056020 00051C80 FC 00 00 1E */ fctiwz f0, f0 /* 80056024 00051C84 D8 01 00 08 */ stfd f0, 8(r1) /* 80056028 00051C88 80 A1 00 0C */ lwz r5, 0xc(r1) /* 8005602C 00051C8C 54 A4 04 3E */ clrlwi r4, r5, 0x10 /* 80056030 00051C90 28 04 00 05 */ cmplwi r4, 5 /* 80056034 00051C94 41 81 00 2C */ bgt lbl_80056060 /* 80056038 00051C98 57 60 04 3E */ clrlwi r0, r27, 0x10 /* 8005603C 00051C9C 7C 00 20 40 */ cmplw r0, r4 /* 80056040 00051CA0 41 82 00 20 */ beq lbl_80056060 /* 80056044 00051CA4 2C 04 00 00 */ cmpwi r4, 0 /* 80056048 00051CA8 41 82 00 18 */ beq lbl_80056060 /* 8005604C 00051CAC C0 22 85 68 */ lfs f1, lbl_80640B68-_SDA2_BASE_(r2) /* 80056050 00051CB0 7C BB 2B 78 */ mr r27, r5 /* 80056054 00051CB4 38 60 02 34 */ li r3, 0x234 /* 80056058 00051CB8 38 80 00 00 */ li r4, 0 /* 8005605C 00051CBC 4B FB 51 15 */ bl func_8000B170 lbl_80056060: /* 80056060 00051CC0 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80056064 00051CC4 48 1C E5 25 */ bl func_80224588 /* 80056068 00051CC8 4B FF FE D4 */ b lbl_80055F3C lbl_8005606C: /* 8005606C 00051CCC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056070 00051CD0 7C 08 02 A6 */ mflr r0 /* 80056074 00051CD4 38 60 00 04 */ li r3, 4 /* 80056078 00051CD8 64 63 00 04 */ oris r3, r3, 4 /* 8005607C 00051CDC 90 01 00 14 */ stw r0, 0x14(r1) /* 80056080 00051CE0 7C 72 E3 A6 */ mtspr 0x392, r3 /* 80056084 00051CE4 38 60 00 05 */ li r3, 5 /* 80056088 00051CE8 64 63 00 05 */ oris r3, r3, 5 /* 8005608C 00051CEC 7C 73 E3 A6 */ mtspr 0x393, r3 /* 80056090 00051CF0 38 60 00 06 */ li r3, 6 /* 80056094 00051CF4 64 63 00 06 */ oris r3, r3, 6 /* 80056098 00051CF8 7C 74 E3 A6 */ mtspr 0x394, r3 /* 8005609C 00051CFC 38 60 00 07 */ li r3, 7 /* 800560A0 00051D00 64 63 00 07 */ oris r3, r3, 7 /* 800560A4 00051D04 7C 75 E3 A6 */ mtspr 0x395, r3 lbl_800560A8: /* 800560A8 00051D08 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800560AC 00051D0C 80 04 00 08 */ lwz r0, 8(r4) /* 800560B0 00051D10 54 00 17 FF */ rlwinm. r0, r0, 2, 0x1f, 0x1f /* 800560B4 00051D14 41 82 00 38 */ beq lbl_800560EC /* 800560B8 00051D18 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 800560BC 00051D1C 80 84 00 10 */ lwz r4, 0x10(r4) /* 800560C0 00051D20 48 1D 06 41 */ bl func_80226700 /* 800560C4 00051D24 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 800560C8 00051D28 48 1D 09 A1 */ bl func_80226A68 /* 800560CC 00051D2C 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800560D0 00051D30 80 04 00 18 */ lwz r0, 0x18(r4) /* 800560D4 00051D34 80 84 00 14 */ lwz r4, 0x14(r4) /* 800560D8 00051D38 90 04 00 00 */ stw r0, 0(r4) /* 800560DC 00051D3C 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800560E0 00051D40 80 04 00 08 */ lwz r0, 8(r4) /* 800560E4 00051D44 54 00 00 80 */ rlwinm r0, r0, 0, 2, 0 /* 800560E8 00051D48 90 04 00 08 */ stw r0, 8(r4) lbl_800560EC: /* 800560EC 00051D4C 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800560F0 00051D50 80 04 00 08 */ lwz r0, 8(r4) /* 800560F4 00051D54 54 00 1F FF */ rlwinm. r0, r0, 3, 0x1f, 0x1f /* 800560F8 00051D58 41 82 00 1C */ beq lbl_80056114 /* 800560FC 00051D5C 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 80056100 00051D60 48 1D 06 3D */ bl func_8022673C /* 80056104 00051D64 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056108 00051D68 80 04 00 08 */ lwz r0, 8(r4) /* 8005610C 00051D6C 54 00 00 C2 */ rlwinm r0, r0, 0, 3, 1 /* 80056110 00051D70 90 04 00 08 */ stw r0, 8(r4) lbl_80056114: /* 80056114 00051D74 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80056118 00051D78 48 1C E4 71 */ bl func_80224588 /* 8005611C 00051D7C 4B FF FF 8C */ b lbl_800560A8 lbl_80056120: /* 80056120 00051D80 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056124 00051D84 7C 08 02 A6 */ mflr r0 /* 80056128 00051D88 38 60 00 04 */ li r3, 4 /* 8005612C 00051D8C 64 63 00 04 */ oris r3, r3, 4 /* 80056130 00051D90 90 01 00 14 */ stw r0, 0x14(r1) /* 80056134 00051D94 7C 72 E3 A6 */ mtspr 0x392, r3 /* 80056138 00051D98 38 60 00 05 */ li r3, 5 /* 8005613C 00051D9C 64 63 00 05 */ oris r3, r3, 5 /* 80056140 00051DA0 7C 73 E3 A6 */ mtspr 0x393, r3 /* 80056144 00051DA4 38 60 00 06 */ li r3, 6 /* 80056148 00051DA8 64 63 00 06 */ oris r3, r3, 6 /* 8005614C 00051DAC 7C 74 E3 A6 */ mtspr 0x394, r3 /* 80056150 00051DB0 38 60 00 07 */ li r3, 7 /* 80056154 00051DB4 64 63 00 07 */ oris r3, r3, 7 /* 80056158 00051DB8 7C 75 E3 A6 */ mtspr 0x395, r3 lbl_8005615C: /* 8005615C 00051DBC 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056160 00051DC0 80 04 00 08 */ lwz r0, 8(r4) /* 80056164 00051DC4 54 00 27 FF */ rlwinm. r0, r0, 4, 0x1f, 0x1f /* 80056168 00051DC8 41 82 00 18 */ beq lbl_80056180 /* 8005616C 00051DCC 48 0A BA AD */ bl func_80101C18 /* 80056170 00051DD0 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056174 00051DD4 80 04 00 08 */ lwz r0, 8(r4) /* 80056178 00051DD8 54 00 01 04 */ rlwinm r0, r0, 0, 4, 2 /* 8005617C 00051DDC 90 04 00 08 */ stw r0, 8(r4) lbl_80056180: /* 80056180 00051DE0 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056184 00051DE4 80 04 00 08 */ lwz r0, 8(r4) /* 80056188 00051DE8 54 00 37 FF */ rlwinm. r0, r0, 6, 0x1f, 0x1f /* 8005618C 00051DEC 41 82 00 18 */ beq lbl_800561A4 /* 80056190 00051DF0 48 00 15 1D */ bl func_800576AC /* 80056194 00051DF4 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056198 00051DF8 80 04 00 08 */ lwz r0, 8(r4) /* 8005619C 00051DFC 54 00 01 88 */ rlwinm r0, r0, 0, 6, 4 /* 800561A0 00051E00 90 04 00 08 */ stw r0, 8(r4) lbl_800561A4: /* 800561A4 00051E04 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 800561A8 00051E08 48 1C E3 E1 */ bl func_80224588 /* 800561AC 00051E0C 4B FF FF B0 */ b lbl_8005615C .global func_800561B0 func_800561B0: /* 800561B0 00051E10 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800561B4 00051E14 7C 08 02 A6 */ mflr r0 /* 800561B8 00051E18 90 01 00 14 */ stw r0, 0x14(r1) /* 800561BC 00051E1C DB E1 00 08 */ stfd f31, 8(r1) /* 800561C0 00051E20 48 10 95 E1 */ bl func_8015F7A0 /* 800561C4 00051E24 FF E0 08 90 */ fmr f31, f1 /* 800561C8 00051E28 4B FF FC 75 */ bl func_80055E3C /* 800561CC 00051E2C FC 3F 08 2A */ fadd f1, f31, f1 /* 800561D0 00051E30 48 10 95 89 */ bl func_8015F758 /* 800561D4 00051E34 80 01 00 14 */ lwz r0, 0x14(r1) /* 800561D8 00051E38 CB E1 00 08 */ lfd f31, 8(r1) /* 800561DC 00051E3C 7C 08 03 A6 */ mtlr r0 /* 800561E0 00051E40 38 21 00 10 */ addi r1, r1, 0x10 /* 800561E4 00051E44 4E 80 00 20 */ blr .global func_800561E8 func_800561E8: /* 800561E8 00051E48 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800561EC 00051E4C 7C 08 02 A6 */ mflr r0 /* 800561F0 00051E50 90 01 00 14 */ stw r0, 0x14(r1) /* 800561F4 00051E54 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800561F8 00051E58 A8 63 10 44 */ lha r3, 0x1044(r3) /* 800561FC 00051E5C 48 1F DB E5 */ bl func_80253DE0 /* 80056200 00051E60 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80056204 00051E64 28 00 00 02 */ cmplwi r0, 2 /* 80056208 00051E68 41 82 00 18 */ beq lbl_80056220 /* 8005620C 00051E6C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056210 00051E70 38 80 00 02 */ li r4, 2 /* 80056214 00051E74 38 A0 00 00 */ li r5, 0 /* 80056218 00051E78 A8 63 10 44 */ lha r3, 0x1044(r3) /* 8005621C 00051E7C 48 1F DB 95 */ bl func_80253DB0 lbl_80056220: /* 80056220 00051E80 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056224 00051E84 7C 08 03 A6 */ mtlr r0 /* 80056228 00051E88 38 21 00 10 */ addi r1, r1, 0x10 /* 8005622C 00051E8C 4E 80 00 20 */ blr .global func_80056230 func_80056230: /* 80056230 00051E90 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056234 00051E94 7C 08 02 A6 */ mflr r0 /* 80056238 00051E98 90 01 00 14 */ stw r0, 0x14(r1) /* 8005623C 00051E9C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056240 00051EA0 A8 63 10 44 */ lha r3, 0x1044(r3) /* 80056244 00051EA4 48 1F DB 9D */ bl func_80253DE0 /* 80056248 00051EA8 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 8005624C 00051EAC 41 82 00 18 */ beq lbl_80056264 /* 80056250 00051EB0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056254 00051EB4 38 80 00 00 */ li r4, 0 /* 80056258 00051EB8 38 A0 00 00 */ li r5, 0 /* 8005625C 00051EBC A8 63 10 44 */ lha r3, 0x1044(r3) /* 80056260 00051EC0 48 1F DB 51 */ bl func_80253DB0 lbl_80056264: /* 80056264 00051EC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056268 00051EC8 7C 08 03 A6 */ mtlr r0 /* 8005626C 00051ECC 38 21 00 10 */ addi r1, r1, 0x10 /* 80056270 00051ED0 4E 80 00 20 */ blr .global func_80056274 func_80056274: /* 80056274 00051ED4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056278 00051ED8 7C 08 02 A6 */ mflr r0 /* 8005627C 00051EDC 90 01 00 14 */ stw r0, 0x14(r1) /* 80056280 00051EE0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056284 00051EE4 A8 63 10 44 */ lha r3, 0x1044(r3) /* 80056288 00051EE8 48 1F DB 59 */ bl func_80253DE0 /* 8005628C 00051EEC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80056290 00051EF0 28 00 00 02 */ cmplwi r0, 2 /* 80056294 00051EF4 41 82 00 18 */ beq lbl_800562AC /* 80056298 00051EF8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005629C 00051EFC 38 80 00 02 */ li r4, 2 /* 800562A0 00051F00 38 A0 00 00 */ li r5, 0 /* 800562A4 00051F04 A8 63 10 44 */ lha r3, 0x1044(r3) /* 800562A8 00051F08 48 1F DB 09 */ bl func_80253DB0 lbl_800562AC: /* 800562AC 00051F0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800562B0 00051F10 7C 08 03 A6 */ mtlr r0 /* 800562B4 00051F14 38 21 00 10 */ addi r1, r1, 0x10 /* 800562B8 00051F18 4E 80 00 20 */ blr .global func_800562BC func_800562BC: /* 800562BC 00051F1C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800562C0 00051F20 38 80 00 00 */ li r4, 0 /* 800562C4 00051F24 38 A0 00 00 */ li r5, 0 /* 800562C8 00051F28 A8 63 10 44 */ lha r3, 0x1044(r3) /* 800562CC 00051F2C 48 1F DA E4 */ b func_80253DB0 .global func_800562D0 func_800562D0: /* 800562D0 00051F30 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800562D4 00051F34 38 80 00 05 */ li r4, 5 /* 800562D8 00051F38 38 A0 00 00 */ li r5, 0 /* 800562DC 00051F3C A8 63 10 44 */ lha r3, 0x1044(r3) /* 800562E0 00051F40 48 1F DA D0 */ b func_80253DB0 .global func_800562E4 func_800562E4: /* 800562E4 00051F44 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800562E8 00051F48 38 80 00 04 */ li r4, 4 /* 800562EC 00051F4C 38 A0 00 00 */ li r5, 0 /* 800562F0 00051F50 A8 63 10 44 */ lha r3, 0x1044(r3) /* 800562F4 00051F54 48 1F DA BC */ b func_80253DB0 .global func_800562F8 func_800562F8: /* 800562F8 00051F58 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800562FC 00051F5C 7C 08 02 A6 */ mflr r0 /* 80056300 00051F60 90 01 00 14 */ stw r0, 0x14(r1) /* 80056304 00051F64 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056308 00051F68 A8 63 10 44 */ lha r3, 0x1044(r3) /* 8005630C 00051F6C 48 1F DA C5 */ bl func_80253DD0 /* 80056310 00051F70 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80056314 00051F74 38 03 FF FD */ addi r0, r3, -3 /* 80056318 00051F78 7C 00 00 34 */ cntlzw r0, r0 /* 8005631C 00051F7C 54 03 D9 7E */ srwi r3, r0, 5 /* 80056320 00051F80 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056324 00051F84 7C 08 03 A6 */ mtlr r0 /* 80056328 00051F88 38 21 00 10 */ addi r1, r1, 0x10 /* 8005632C 00051F8C 4E 80 00 20 */ blr .global func_80056330 func_80056330: /* 80056330 00051F90 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056334 00051F94 38 80 00 01 */ li r4, 1 /* 80056338 00051F98 38 A0 00 00 */ li r5, 0 /* 8005633C 00051F9C A8 63 10 44 */ lha r3, 0x1044(r3) /* 80056340 00051FA0 48 1F DA 70 */ b func_80253DB0 .global func_80056344 func_80056344: /* 80056344 00051FA4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056348 00051FA8 38 80 00 03 */ li r4, 3 /* 8005634C 00051FAC 38 A0 00 00 */ li r5, 0 /* 80056350 00051FB0 A8 63 10 44 */ lha r3, 0x1044(r3) /* 80056354 00051FB4 48 1F DA 5C */ b func_80253DB0 .global func_80056358 func_80056358: /* 80056358 00051FB8 81 0D 81 E0 */ lwz r8, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005635C 00051FBC 80 08 00 08 */ lwz r0, 8(r8) /* 80056360 00051FC0 50 60 B2 52 */ rlwimi r0, r3, 0x16, 9, 9 /* 80056364 00051FC4 90 08 00 08 */ stw r0, 8(r8) /* 80056368 00051FC8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005636C 00051FCC 80 03 00 08 */ lwz r0, 8(r3) /* 80056370 00051FD0 50 80 AA 94 */ rlwimi r0, r4, 0x15, 0xa, 0xa /* 80056374 00051FD4 90 03 00 08 */ stw r0, 8(r3) /* 80056378 00051FD8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005637C 00051FDC 80 03 00 08 */ lwz r0, 8(r3) /* 80056380 00051FE0 50 A0 A2 D6 */ rlwimi r0, r5, 0x14, 0xb, 0xb /* 80056384 00051FE4 90 03 00 08 */ stw r0, 8(r3) /* 80056388 00051FE8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005638C 00051FEC 80 03 00 08 */ lwz r0, 8(r3) /* 80056390 00051FF0 50 C0 7B 60 */ rlwimi r0, r6, 0xf, 0xd, 0x10 /* 80056394 00051FF4 90 03 00 08 */ stw r0, 8(r3) /* 80056398 00051FF8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005639C 00051FFC 80 03 00 08 */ lwz r0, 8(r3) /* 800563A0 00052000 50 E0 9B 18 */ rlwimi r0, r7, 0x13, 0xc, 0xc /* 800563A4 00052004 90 03 00 08 */ stw r0, 8(r3) /* 800563A8 00052008 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800563AC 0005200C 80 83 00 0C */ lwz r4, 0xc(r3) /* 800563B0 00052010 54 84 00 80 */ rlwinm r4, r4, 0, 2, 0 /* 800563B4 00052014 90 83 00 0C */ stw r4, 0xc(r3) /* 800563B8 00052018 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800563BC 0005201C 80 03 00 0C */ lwz r0, 0xc(r3) /* 800563C0 00052020 50 80 08 00 */ rlwimi r0, r4, 1, 0, 0 /* 800563C4 00052024 90 03 00 0C */ stw r0, 0xc(r3) /* 800563C8 00052028 4E 80 00 20 */ blr .global func_800563CC func_800563CC: /* 800563CC 0005202C 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800563D0 00052030 80 04 00 08 */ lwz r0, 8(r4) /* 800563D4 00052034 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 800563D8 00052038 90 04 00 08 */ stw r0, 8(r4) /* 800563DC 0005203C 4E 80 00 20 */ blr .global func_800563E0 func_800563E0: /* 800563E0 00052040 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800563E4 00052044 98 64 10 81 */ stb r3, 0x1081(r4) /* 800563E8 00052048 4E 80 00 20 */ blr .global func_800563EC func_800563EC: /* 800563EC 0005204C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800563F0 00052050 7C 08 02 A6 */ mflr r0 /* 800563F4 00052054 2C 04 00 00 */ cmpwi r4, 0 /* 800563F8 00052058 90 01 00 14 */ stw r0, 0x14(r1) /* 800563FC 0005205C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056400 00052060 7C 7F 1B 78 */ mr r31, r3 /* 80056404 00052064 41 82 00 14 */ beq lbl_80056418 /* 80056408 00052068 C0 22 85 68 */ lfs f1, lbl_80640B68-_SDA2_BASE_(r2) /* 8005640C 0005206C 38 80 00 00 */ li r4, 0 /* 80056410 00052070 4B FB 4D 61 */ bl func_8000B170 /* 80056414 00052074 48 00 00 30 */ b lbl_80056444 lbl_80056418: /* 80056418 00052078 4B FB 0C 75 */ bl func_8000708C /* 8005641C 0005207C 2C 03 00 00 */ cmpwi r3, 0 /* 80056420 00052080 41 82 00 24 */ beq lbl_80056444 /* 80056424 00052084 7F E3 FB 78 */ mr r3, r31 /* 80056428 00052088 4B FB 50 99 */ bl func_8000B4C0 /* 8005642C 0005208C 2C 03 00 00 */ cmpwi r3, 0 /* 80056430 00052090 40 82 00 14 */ bne lbl_80056444 /* 80056434 00052094 C0 22 85 68 */ lfs f1, lbl_80640B68-_SDA2_BASE_(r2) /* 80056438 00052098 7F E3 FB 78 */ mr r3, r31 /* 8005643C 0005209C 38 80 00 00 */ li r4, 0 /* 80056440 000520A0 4B FB 4D 31 */ bl func_8000B170 lbl_80056444: /* 80056444 000520A4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056448 000520A8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005644C 000520AC 7C 08 03 A6 */ mtlr r0 /* 80056450 000520B0 38 21 00 10 */ addi r1, r1, 0x10 /* 80056454 000520B4 4E 80 00 20 */ blr .global func_80056458 func_80056458: /* 80056458 000520B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005645C 000520BC 7C 08 02 A6 */ mflr r0 /* 80056460 000520C0 2C 03 00 00 */ cmpwi r3, 0 /* 80056464 000520C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80056468 000520C8 41 82 00 2C */ beq lbl_80056494 /* 8005646C 000520CC C0 42 85 70 */ lfs f2, lbl_80640B70-_SDA2_BASE_(r2) /* 80056470 000520D0 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13) /* 80056474 000520D4 C0 02 85 6C */ lfs f0, lbl_80640B6C-_SDA2_BASE_(r2) /* 80056478 000520D8 EC 22 00 72 */ fmuls f1, f2, f1 /* 8005647C 000520DC EC 00 08 2A */ fadds f0, f0, f1 /* 80056480 000520E0 FC 00 00 1E */ fctiwz f0, f0 /* 80056484 000520E4 D8 01 00 08 */ stfd f0, 8(r1) /* 80056488 000520E8 80 61 00 0C */ lwz r3, 0xc(r1) /* 8005648C 000520EC 4B FB 50 E5 */ bl func_8000B570 /* 80056490 000520F0 48 00 00 0C */ b lbl_8005649C lbl_80056494: /* 80056494 000520F4 38 60 00 00 */ li r3, 0 /* 80056498 000520F8 4B FB 50 D9 */ bl func_8000B570 lbl_8005649C: /* 8005649C 000520FC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800564A0 00052100 7C 08 03 A6 */ mtlr r0 /* 800564A4 00052104 38 21 00 10 */ addi r1, r1, 0x10 /* 800564A8 00052108 4E 80 00 20 */ blr .global func_800564AC func_800564AC: /* 800564AC 0005210C 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800564B0 00052110 90 64 10 84 */ stw r3, 0x1084(r4) /* 800564B4 00052114 4E 80 00 20 */ blr .global func_800564B8 func_800564B8: /* 800564B8 00052118 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 800564BC 0005211C 98 65 10 80 */ stb r3, 0x1080(r5) /* 800564C0 00052120 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800564C4 00052124 90 83 10 7C */ stw r4, 0x107c(r3) /* 800564C8 00052128 4E 80 00 20 */ blr lbl_800564CC: /* 800564CC 0005212C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800564D0 00052130 7C 08 02 A6 */ mflr r0 /* 800564D4 00052134 90 01 00 14 */ stw r0, 0x14(r1) /* 800564D8 00052138 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800564DC 0005213C 80 83 10 7C */ lwz r4, 0x107c(r3) /* 800564E0 00052140 2C 04 00 00 */ cmpwi r4, 0 /* 800564E4 00052144 41 82 00 18 */ beq lbl_800564FC /* 800564E8 00052148 88 63 10 80 */ lbz r3, 0x1080(r3) /* 800564EC 0005214C 48 10 60 09 */ bl func_8015C4F4 /* 800564F0 00052150 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800564F4 00052154 38 00 00 00 */ li r0, 0 /* 800564F8 00052158 90 03 10 7C */ stw r0, 0x107c(r3) lbl_800564FC: /* 800564FC 0005215C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056500 00052160 7C 08 03 A6 */ mtlr r0 /* 80056504 00052164 38 21 00 10 */ addi r1, r1, 0x10 /* 80056508 00052168 4E 80 00 20 */ blr .global func_8005650C func_8005650C: /* 8005650C 0005216C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056510 00052170 80 83 10 84 */ lwz r4, 0x1084(r3) /* 80056514 00052174 2C 04 00 00 */ cmpwi r4, 0 /* 80056518 00052178 4D 82 00 20 */ beqlr /* 8005651C 0005217C 38 60 00 09 */ li r3, 9 /* 80056520 00052180 48 10 5F D4 */ b func_8015C4F4 /* 80056524 00052184 4E 80 00 20 */ blr .global func_80056528 func_80056528: /* 80056528 00052188 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005652C 0005218C 80 83 00 0C */ lwz r4, 0xc(r3) /* 80056530 00052190 64 84 40 00 */ oris r4, r4, 0x4000 /* 80056534 00052194 90 83 00 0C */ stw r4, 0xc(r3) /* 80056538 00052198 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005653C 0005219C 80 03 00 0C */ lwz r0, 0xc(r3) /* 80056540 000521A0 50 80 08 00 */ rlwimi r0, r4, 1, 0, 0 /* 80056544 000521A4 90 03 00 0C */ stw r0, 0xc(r3) /* 80056548 000521A8 4E 80 00 20 */ blr lbl_8005654C: /* 8005654C 000521AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056550 000521B0 7C 08 02 A6 */ mflr r0 /* 80056554 000521B4 90 01 00 14 */ stw r0, 0x14(r1) /* 80056558 000521B8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005655C 000521BC 80 03 00 08 */ lwz r0, 8(r3) /* 80056560 000521C0 54 00 57 FF */ rlwinm. r0, r0, 0xa, 0x1f, 0x1f /* 80056564 000521C4 41 82 00 10 */ beq lbl_80056574 /* 80056568 000521C8 48 10 E6 41 */ bl func_80164BA8 /* 8005656C 000521CC 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056570 000521D0 90 64 10 58 */ stw r3, 0x1058(r4) lbl_80056574: /* 80056574 000521D4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056578 000521D8 80 03 00 08 */ lwz r0, 8(r3) /* 8005657C 000521DC 54 00 6F FF */ rlwinm. r0, r0, 0xd, 0x1f, 0x1f /* 80056580 000521E0 41 82 00 2C */ beq lbl_800565AC /* 80056584 000521E4 48 10 E7 F5 */ bl func_80164D78 /* 80056588 000521E8 2C 03 00 00 */ cmpwi r3, 0 /* 8005658C 000521EC 40 82 00 20 */ bne lbl_800565AC /* 80056590 000521F0 48 10 E8 19 */ bl func_80164DA8 /* 80056594 000521F4 2C 03 00 01 */ cmpwi r3, 1 /* 80056598 000521F8 40 82 00 14 */ bne lbl_800565AC /* 8005659C 000521FC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800565A0 00052200 80 03 00 08 */ lwz r0, 8(r3) /* 800565A4 00052204 54 00 03 56 */ rlwinm r0, r0, 0, 0xd, 0xb /* 800565A8 00052208 90 03 00 08 */ stw r0, 8(r3) lbl_800565AC: /* 800565AC 0005220C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800565B0 00052210 7C 08 03 A6 */ mtlr r0 /* 800565B4 00052214 38 21 00 10 */ addi r1, r1, 0x10 /* 800565B8 00052218 4E 80 00 20 */ blr lbl_800565BC: /* 800565BC 0005221C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800565C0 00052220 7C 08 02 A6 */ mflr r0 /* 800565C4 00052224 38 A0 00 03 */ li r5, 3 /* 800565C8 00052228 90 01 00 24 */ stw r0, 0x24(r1) /* 800565CC 0005222C 38 C1 00 08 */ addi r6, r1, 8 /* 800565D0 00052230 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800565D4 00052234 7C 9F 23 78 */ mr r31, r4 /* 800565D8 00052238 93 C1 00 18 */ stw r30, 0x18(r1) /* 800565DC 0005223C 7C 7E 1B 78 */ mr r30, r3 /* 800565E0 00052240 48 1F D8 AD */ bl func_80253E8C /* 800565E4 00052244 80 01 00 08 */ lwz r0, 8(r1) /* 800565E8 00052248 2C 00 00 02 */ cmpwi r0, 2 /* 800565EC 0005224C 41 82 00 08 */ beq lbl_800565F4 /* 800565F0 00052250 48 00 00 28 */ b lbl_80056618 lbl_800565F4: /* 800565F4 00052254 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800565F8 00052258 80 03 00 08 */ lwz r0, 8(r3) /* 800565FC 0005225C 54 00 67 FF */ rlwinm. r0, r0, 0xc, 0x1f, 0x1f /* 80056600 00052260 40 82 00 18 */ bne lbl_80056618 /* 80056604 00052264 7F C3 F3 78 */ mr r3, r30 /* 80056608 00052268 7F E4 FB 78 */ mr r4, r31 /* 8005660C 0005226C 38 A0 00 01 */ li r5, 1 /* 80056610 00052270 38 C0 00 00 */ li r6, 0 /* 80056614 00052274 48 1F D8 A1 */ bl func_80253EB4 lbl_80056618: /* 80056618 00052278 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005661C 0005227C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80056620 00052280 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80056624 00052284 7C 08 03 A6 */ mtlr r0 /* 80056628 00052288 38 21 00 20 */ addi r1, r1, 0x20 /* 8005662C 0005228C 4E 80 00 20 */ blr lbl_80056630: /* 80056630 00052290 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80056634 00052294 7C 08 02 A6 */ mflr r0 /* 80056638 00052298 90 01 00 74 */ stw r0, 0x74(r1) /* 8005663C 0005229C 39 61 00 70 */ addi r11, r1, 0x70 /* 80056640 000522A0 48 17 0A E9 */ bl _savegpr_27 /* 80056644 000522A4 7C 7E 1B 78 */ mr r30, r3 /* 80056648 000522A8 7C 9F 23 78 */ mr r31, r4 /* 8005664C 000522AC 38 C1 00 08 */ addi r6, r1, 8 /* 80056650 000522B0 38 A0 00 03 */ li r5, 3 /* 80056654 000522B4 48 1F D8 89 */ bl func_80253EDC /* 80056658 000522B8 80 61 00 08 */ lwz r3, 8(r1) /* 8005665C 000522BC 2C 03 00 02 */ cmpwi r3, 2 /* 80056660 000522C0 41 82 01 1C */ beq lbl_8005677C /* 80056664 000522C4 40 80 00 10 */ bge lbl_80056674 /* 80056668 000522C8 2C 03 00 00 */ cmpwi r3, 0 /* 8005666C 000522CC 40 80 01 68 */ bge lbl_800567D4 /* 80056670 000522D0 48 00 02 38 */ b lbl_800568A8 lbl_80056674: /* 80056674 000522D4 2C 03 00 04 */ cmpwi r3, 4 /* 80056678 000522D8 40 80 02 30 */ bge lbl_800568A8 /* 8005667C 000522DC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056680 000522E0 80 03 00 0C */ lwz r0, 0xc(r3) /* 80056684 000522E4 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f /* 80056688 000522E8 41 82 00 48 */ beq lbl_800566D0 /* 8005668C 000522EC C0 1F 00 48 */ lfs f0, 0x48(r31) /* 80056690 000522F0 C0 82 85 74 */ lfs f4, lbl_80640B74-_SDA2_BASE_(r2) /* 80056694 000522F4 C0 5F 00 4C */ lfs f2, 0x4c(r31) /* 80056698 000522F8 EC 60 20 2A */ fadds f3, f0, f4 /* 8005669C 000522FC C0 3F 00 50 */ lfs f1, 0x50(r31) /* 800566A0 00052300 C0 1F 00 54 */ lfs f0, 0x54(r31) /* 800566A4 00052304 EC 42 20 2A */ fadds f2, f2, f4 /* 800566A8 00052308 EC 21 20 2A */ fadds f1, f1, f4 /* 800566AC 0005230C EC 00 20 2A */ fadds f0, f0, f4 /* 800566B0 00052310 D0 7F 00 48 */ stfs f3, 0x48(r31) /* 800566B4 00052314 D0 5F 00 4C */ stfs f2, 0x4c(r31) /* 800566B8 00052318 D0 3F 00 50 */ stfs f1, 0x50(r31) /* 800566BC 0005231C D0 1F 00 54 */ stfs f0, 0x54(r31) /* 800566C0 00052320 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800566C4 00052324 80 03 00 0C */ lwz r0, 0xc(r3) /* 800566C8 00052328 54 00 00 7E */ clrlwi r0, r0, 1 /* 800566CC 0005232C 90 03 00 0C */ stw r0, 0xc(r3) lbl_800566D0: /* 800566D0 00052330 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800566D4 00052334 80 03 00 08 */ lwz r0, 8(r3) /* 800566D8 00052338 54 00 67 FF */ rlwinm. r0, r0, 0xc, 0x1f, 0x1f /* 800566DC 0005233C 41 82 01 CC */ beq lbl_800568A8 /* 800566E0 00052340 7F C3 F3 78 */ mr r3, r30 /* 800566E4 00052344 7F E4 FB 78 */ mr r4, r31 /* 800566E8 00052348 38 C1 00 10 */ addi r6, r1, 0x10 /* 800566EC 0005234C 38 A0 00 06 */ li r5, 6 /* 800566F0 00052350 48 1F D7 ED */ bl func_80253EDC /* 800566F4 00052354 C0 A1 00 10 */ lfs f5, 0x10(r1) /* 800566F8 00052358 38 A0 FF 00 */ li r5, -256 /* 800566FC 0005235C C0 61 00 20 */ lfs f3, 0x20(r1) /* 80056700 00052360 38 60 00 08 */ li r3, 8 /* 80056704 00052364 C0 21 00 14 */ lfs f1, 0x14(r1) /* 80056708 00052368 FC 80 28 1E */ fctiwz f4, f5 /* 8005670C 0005236C C0 01 00 28 */ lfs f0, 0x28(r1) /* 80056710 00052370 FC 40 18 1E */ fctiwz f2, f3 /* 80056714 00052374 EC 21 28 28 */ fsubs f1, f1, f5 /* 80056718 00052378 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005671C 0005237C EC 00 18 28 */ fsubs f0, f0, f3 /* 80056720 00052380 D8 41 00 38 */ stfd f2, 0x38(r1) /* 80056724 00052384 FC 20 08 1E */ fctiwz f1, f1 /* 80056728 00052388 88 DF 00 11 */ lbz r6, 0x11(r31) /* 8005672C 0005238C FC 00 00 1E */ fctiwz f0, f0 /* 80056730 00052390 D8 81 00 30 */ stfd f4, 0x30(r1) /* 80056734 00052394 80 04 00 08 */ lwz r0, 8(r4) /* 80056738 00052398 7C DE 2B 78 */ or r30, r6, r5 /* 8005673C 0005239C D8 21 00 40 */ stfd f1, 0x40(r1) /* 80056740 000523A0 54 04 8F 3E */ rlwinm r4, r0, 0x11, 0x1c, 0x1f /* 80056744 000523A4 83 E1 00 34 */ lwz r31, 0x34(r1) /* 80056748 000523A8 D8 01 00 48 */ stfd f0, 0x48(r1) /* 8005674C 000523AC 83 A1 00 3C */ lwz r29, 0x3c(r1) /* 80056750 000523B0 83 81 00 44 */ lwz r28, 0x44(r1) /* 80056754 000523B4 83 61 00 4C */ lwz r27, 0x4c(r1) /* 80056758 000523B8 48 10 5B B1 */ bl func_8015C308 /* 8005675C 000523BC 7F E4 FB 78 */ mr r4, r31 /* 80056760 000523C0 7F A5 EB 78 */ mr r5, r29 /* 80056764 000523C4 7F C8 F3 78 */ mr r8, r30 /* 80056768 000523C8 7F 86 07 34 */ extsh r6, r28 /* 8005676C 000523CC 7F 67 07 34 */ extsh r7, r27 /* 80056770 000523D0 38 60 03 ED */ li r3, 0x3ed /* 80056774 000523D4 48 1F 99 C1 */ bl func_80250134 /* 80056778 000523D8 48 00 01 30 */ b lbl_800568A8 lbl_8005677C: /* 8005677C 000523DC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056780 000523E0 80 03 00 0C */ lwz r0, 0xc(r3) /* 80056784 000523E4 54 00 17 FF */ rlwinm. r0, r0, 2, 0x1f, 0x1f /* 80056788 000523E8 41 82 01 20 */ beq lbl_800568A8 /* 8005678C 000523EC C0 1F 00 48 */ lfs f0, 0x48(r31) /* 80056790 000523F0 C0 82 85 74 */ lfs f4, lbl_80640B74-_SDA2_BASE_(r2) /* 80056794 000523F4 C0 5F 00 4C */ lfs f2, 0x4c(r31) /* 80056798 000523F8 EC 60 20 2A */ fadds f3, f0, f4 /* 8005679C 000523FC C0 3F 00 50 */ lfs f1, 0x50(r31) /* 800567A0 00052400 C0 1F 00 54 */ lfs f0, 0x54(r31) /* 800567A4 00052404 EC 42 20 2A */ fadds f2, f2, f4 /* 800567A8 00052408 EC 21 20 2A */ fadds f1, f1, f4 /* 800567AC 0005240C EC 00 20 2A */ fadds f0, f0, f4 /* 800567B0 00052410 D0 7F 00 48 */ stfs f3, 0x48(r31) /* 800567B4 00052414 D0 5F 00 4C */ stfs f2, 0x4c(r31) /* 800567B8 00052418 D0 3F 00 50 */ stfs f1, 0x50(r31) /* 800567BC 0005241C D0 1F 00 54 */ stfs f0, 0x54(r31) /* 800567C0 00052420 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800567C4 00052424 80 03 00 0C */ lwz r0, 0xc(r3) /* 800567C8 00052428 54 00 00 80 */ rlwinm r0, r0, 0, 2, 0 /* 800567CC 0005242C 90 03 00 0C */ stw r0, 0xc(r3) /* 800567D0 00052430 48 00 00 D8 */ b lbl_800568A8 lbl_800567D4: /* 800567D4 00052434 28 03 00 01 */ cmplwi r3, 1 /* 800567D8 00052438 40 82 00 18 */ bne lbl_800567F0 /* 800567DC 0005243C 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 800567E0 00052440 80 05 00 08 */ lwz r0, 8(r5) /* 800567E4 00052444 38 85 00 08 */ addi r4, r5, 8 /* 800567E8 00052448 54 00 5F FF */ rlwinm. r0, r0, 0xb, 0x1f, 0x1f /* 800567EC 0005244C 40 82 00 20 */ bne lbl_8005680C lbl_800567F0: /* 800567F0 00052450 2C 03 00 00 */ cmpwi r3, 0 /* 800567F4 00052454 40 82 00 B4 */ bne lbl_800568A8 /* 800567F8 00052458 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 800567FC 0005245C 80 05 00 08 */ lwz r0, 8(r5) /* 80056800 00052460 38 85 00 08 */ addi r4, r5, 8 /* 80056804 00052464 54 00 5F FF */ rlwinm. r0, r0, 0xb, 0x1f, 0x1f /* 80056808 00052468 40 82 00 A0 */ bne lbl_800568A8 lbl_8005680C: /* 8005680C 0005246C 80 05 10 58 */ lwz r0, 0x1058(r5) /* 80056810 00052470 2C 00 00 02 */ cmpwi r0, 2 /* 80056814 00052474 41 82 00 48 */ beq lbl_8005685C /* 80056818 00052478 40 80 00 14 */ bge lbl_8005682C /* 8005681C 0005247C 2C 00 00 00 */ cmpwi r0, 0 /* 80056820 00052480 41 82 00 18 */ beq lbl_80056838 /* 80056824 00052484 40 80 00 24 */ bge lbl_80056848 /* 80056828 00052488 48 00 00 5C */ b lbl_80056884 lbl_8005682C: /* 8005682C 0005248C 2C 00 00 04 */ cmpwi r0, 4 /* 80056830 00052490 40 80 00 54 */ bge lbl_80056884 /* 80056834 00052494 48 00 00 3C */ b lbl_80056870 lbl_80056838: /* 80056838 00052498 80 04 00 00 */ lwz r0, 0(r4) /* 8005683C 0005249C 54 00 05 20 */ rlwinm r0, r0, 0, 0x14, 0x10 /* 80056840 000524A0 90 04 00 00 */ stw r0, 0(r4) /* 80056844 000524A4 48 00 00 4C */ b lbl_80056890 lbl_80056848: /* 80056848 000524A8 80 04 00 00 */ lwz r0, 0(r4) /* 8005684C 000524AC 38 60 00 01 */ li r3, 1 /* 80056850 000524B0 50 60 64 66 */ rlwimi r0, r3, 0xc, 0x11, 0x13 /* 80056854 000524B4 90 04 00 00 */ stw r0, 0(r4) /* 80056858 000524B8 48 00 00 38 */ b lbl_80056890 lbl_8005685C: /* 8005685C 000524BC 80 04 00 00 */ lwz r0, 0(r4) /* 80056860 000524C0 38 60 00 02 */ li r3, 2 /* 80056864 000524C4 50 60 64 66 */ rlwimi r0, r3, 0xc, 0x11, 0x13 /* 80056868 000524C8 90 04 00 00 */ stw r0, 0(r4) /* 8005686C 000524CC 48 00 00 24 */ b lbl_80056890 lbl_80056870: /* 80056870 000524D0 80 04 00 00 */ lwz r0, 0(r4) /* 80056874 000524D4 38 60 00 03 */ li r3, 3 /* 80056878 000524D8 50 60 64 66 */ rlwimi r0, r3, 0xc, 0x11, 0x13 /* 8005687C 000524DC 90 04 00 00 */ stw r0, 0(r4) /* 80056880 000524E0 48 00 00 10 */ b lbl_80056890 lbl_80056884: /* 80056884 000524E4 80 04 00 00 */ lwz r0, 0(r4) /* 80056888 000524E8 60 00 70 00 */ ori r0, r0, 0x7000 /* 8005688C 000524EC 90 04 00 00 */ stw r0, 0(r4) lbl_80056890: /* 80056890 000524F0 80 CD 81 E0 */ lwz r6, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056894 000524F4 7F C3 F3 78 */ mr r3, r30 /* 80056898 000524F8 7F E4 FB 78 */ mr r4, r31 /* 8005689C 000524FC 38 A0 00 06 */ li r5, 6 /* 800568A0 00052500 38 C6 10 5C */ addi r6, r6, 0x105c /* 800568A4 00052504 48 1F D6 39 */ bl func_80253EDC lbl_800568A8: /* 800568A8 00052508 39 61 00 70 */ addi r11, r1, 0x70 /* 800568AC 0005250C 48 17 08 C9 */ bl _restgpr_27 /* 800568B0 00052510 80 01 00 74 */ lwz r0, 0x74(r1) /* 800568B4 00052514 7C 08 03 A6 */ mtlr r0 /* 800568B8 00052518 38 21 00 70 */ addi r1, r1, 0x70 /* 800568BC 0005251C 4E 80 00 20 */ blr lbl_800568C0: /* 800568C0 00052520 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800568C4 00052524 7C 08 02 A6 */ mflr r0 /* 800568C8 00052528 38 80 00 08 */ li r4, 8 /* 800568CC 0005252C 90 01 00 14 */ stw r0, 0x14(r1) /* 800568D0 00052530 93 E1 00 0C */ stw r31, 0xc(r1) /* 800568D4 00052534 7C 7F 1B 78 */ mr r31, r3 /* 800568D8 00052538 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 800568DC 0005253C 80 05 00 08 */ lwz r0, 8(r5) /* 800568E0 00052540 54 05 D7 FE */ rlwinm r5, r0, 0x1a, 0x1f, 0x1f /* 800568E4 00052544 48 1F D5 0D */ bl func_80253DF0 /* 800568E8 00052548 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800568EC 0005254C 80 03 00 08 */ lwz r0, 8(r3) /* 800568F0 00052550 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 800568F4 00052554 41 82 00 44 */ beq lbl_80056938 /* 800568F8 00052558 88 03 10 81 */ lbz r0, 0x1081(r3) /* 800568FC 0005255C 2C 00 00 01 */ cmpwi r0, 1 /* 80056900 00052560 41 82 00 28 */ beq lbl_80056928 /* 80056904 00052564 40 80 00 34 */ bge lbl_80056938 /* 80056908 00052568 2C 00 00 00 */ cmpwi r0, 0 /* 8005690C 0005256C 40 80 00 08 */ bge lbl_80056914 /* 80056910 00052570 48 00 00 28 */ b lbl_80056938 lbl_80056914: /* 80056914 00052574 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 80056918 00052578 7F E3 FB 78 */ mr r3, r31 /* 8005691C 0005257C 38 80 00 04 */ li r4, 4 /* 80056920 00052580 48 1F D4 F1 */ bl func_80253E10 /* 80056924 00052584 48 00 00 14 */ b lbl_80056938 lbl_80056928: /* 80056928 00052588 C0 22 85 78 */ lfs f1, lbl_80640B78-_SDA2_BASE_(r2) /* 8005692C 0005258C 7F E3 FB 78 */ mr r3, r31 /* 80056930 00052590 38 80 00 04 */ li r4, 4 /* 80056934 00052594 48 1F D4 DD */ bl func_80253E10 lbl_80056938: /* 80056938 00052598 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005693C 0005259C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056940 000525A0 7C 08 03 A6 */ mtlr r0 /* 80056944 000525A4 38 21 00 10 */ addi r1, r1, 0x10 /* 80056948 000525A8 4E 80 00 20 */ blr lbl_8005694C: /* 8005694C 000525AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056950 000525B0 7C 08 02 A6 */ mflr r0 /* 80056954 000525B4 7C 63 07 34 */ extsh r3, r3 /* 80056958 000525B8 38 A0 00 03 */ li r5, 3 /* 8005695C 000525BC 90 01 00 14 */ stw r0, 0x14(r1) /* 80056960 000525C0 38 C1 00 08 */ addi r6, r1, 8 /* 80056964 000525C4 48 1F D5 29 */ bl func_80253E8C /* 80056968 000525C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005696C 000525CC 7C 08 03 A6 */ mtlr r0 /* 80056970 000525D0 38 21 00 10 */ addi r1, r1, 0x10 /* 80056974 000525D4 4E 80 00 20 */ blr lbl_80056978: /* 80056978 000525D8 4E 80 00 20 */ blr .global func_8005697C func_8005697C: /* 8005697C 000525DC 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80056980 000525E0 7C 08 02 A6 */ mflr r0 /* 80056984 000525E4 38 80 00 74 */ li r4, 0x74 /* 80056988 000525E8 90 01 00 54 */ stw r0, 0x54(r1) /* 8005698C 000525EC 38 A1 00 08 */ addi r5, r1, 8 /* 80056990 000525F0 48 38 45 6D */ bl func_803DAEFC /* 80056994 000525F4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056998 000525F8 38 81 00 08 */ addi r4, r1, 8 /* 8005699C 000525FC 38 A0 00 20 */ li r5, 0x20 /* 800569A0 00052600 A0 03 10 3C */ lhz r0, 0x103c(r3) /* 800569A4 00052604 54 00 35 32 */ rlwinm r0, r0, 6, 0x14, 0x19 /* 800569A8 00052608 7C 63 02 14 */ add r3, r3, r0 /* 800569AC 0005260C 38 63 00 3C */ addi r3, r3, 0x3c /* 800569B0 00052610 48 12 06 D1 */ bl func_80177080 /* 800569B4 00052614 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800569B8 00052618 A0 64 10 3C */ lhz r3, 0x103c(r4) /* 800569BC 0005261C 38 03 00 01 */ addi r0, r3, 1 /* 800569C0 00052620 B0 04 10 3C */ sth r0, 0x103c(r4) /* 800569C4 00052624 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800569C8 00052628 A0 64 10 3C */ lhz r3, 0x103c(r4) /* 800569CC 0005262C 38 03 FF FF */ addi r0, r3, -1 /* 800569D0 00052630 54 00 35 32 */ rlwinm r0, r0, 6, 0x14, 0x19 /* 800569D4 00052634 7C 64 02 14 */ add r3, r4, r0 /* 800569D8 00052638 80 01 00 54 */ lwz r0, 0x54(r1) /* 800569DC 0005263C 38 63 00 3C */ addi r3, r3, 0x3c /* 800569E0 00052640 7C 08 03 A6 */ mtlr r0 /* 800569E4 00052644 38 21 00 50 */ addi r1, r1, 0x50 /* 800569E8 00052648 4E 80 00 20 */ blr .global func_800569EC func_800569EC: /* 800569EC 0005264C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800569F0 00052650 7C 08 02 A6 */ mflr r0 /* 800569F4 00052654 38 80 00 74 */ li r4, 0x74 /* 800569F8 00052658 90 01 00 54 */ stw r0, 0x54(r1) /* 800569FC 0005265C 38 A1 00 08 */ addi r5, r1, 8 /* 80056A00 00052660 48 38 6F DD */ bl func_803DD9DC /* 80056A04 00052664 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056A08 00052668 38 81 00 08 */ addi r4, r1, 8 /* 80056A0C 0005266C 38 A0 00 20 */ li r5, 0x20 /* 80056A10 00052670 A0 03 10 3C */ lhz r0, 0x103c(r3) /* 80056A14 00052674 54 00 35 32 */ rlwinm r0, r0, 6, 0x14, 0x19 /* 80056A18 00052678 7C 63 02 14 */ add r3, r3, r0 /* 80056A1C 0005267C 38 63 00 3C */ addi r3, r3, 0x3c /* 80056A20 00052680 48 12 06 61 */ bl func_80177080 /* 80056A24 00052684 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056A28 00052688 A0 64 10 3C */ lhz r3, 0x103c(r4) /* 80056A2C 0005268C 38 03 00 01 */ addi r0, r3, 1 /* 80056A30 00052690 B0 04 10 3C */ sth r0, 0x103c(r4) /* 80056A34 00052694 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80056A38 00052698 A0 64 10 3C */ lhz r3, 0x103c(r4) /* 80056A3C 0005269C 38 03 FF FF */ addi r0, r3, -1 /* 80056A40 000526A0 54 00 35 32 */ rlwinm r0, r0, 6, 0x14, 0x19 /* 80056A44 000526A4 7C 64 02 14 */ add r3, r4, r0 /* 80056A48 000526A8 80 01 00 54 */ lwz r0, 0x54(r1) /* 80056A4C 000526AC 38 63 00 3C */ addi r3, r3, 0x3c /* 80056A50 000526B0 7C 08 03 A6 */ mtlr r0 /* 80056A54 000526B4 38 21 00 50 */ addi r1, r1, 0x50 /* 80056A58 000526B8 4E 80 00 20 */ blr .global func_80056A5C func_80056A5C: /* 80056A5C 000526BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056A60 000526C0 7C 08 02 A6 */ mflr r0 /* 80056A64 000526C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80056A68 000526C8 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056A6C 000526CC 7C 7F 1B 78 */ mr r31, r3 /* 80056A70 000526D0 48 00 01 65 */ bl func_80056BD4 /* 80056A74 000526D4 2C 03 00 00 */ cmpwi r3, 0 /* 80056A78 000526D8 40 82 00 0C */ bne lbl_80056A84 /* 80056A7C 000526DC 38 60 00 02 */ li r3, 2 /* 80056A80 000526E0 48 00 00 84 */ b lbl_80056B04 lbl_80056A84: /* 80056A84 000526E4 7F E3 FB 78 */ mr r3, r31 /* 80056A88 000526E8 38 80 00 AC */ li r4, 0xac /* 80056A8C 000526EC 38 A0 00 00 */ li r5, 0 /* 80056A90 000526F0 48 38 44 6D */ bl func_803DAEFC /* 80056A94 000526F4 2C 03 00 00 */ cmpwi r3, 0 /* 80056A98 000526F8 41 82 00 0C */ beq lbl_80056AA4 /* 80056A9C 000526FC 38 60 00 02 */ li r3, 2 /* 80056AA0 00052700 48 00 00 64 */ b lbl_80056B04 lbl_80056AA4: /* 80056AA4 00052704 7F E3 FB 78 */ mr r3, r31 /* 80056AA8 00052708 38 80 00 AF */ li r4, 0xaf /* 80056AAC 0005270C 38 A0 00 00 */ li r5, 0 /* 80056AB0 00052710 48 38 44 4D */ bl func_803DAEFC /* 80056AB4 00052714 2C 03 00 00 */ cmpwi r3, 0 /* 80056AB8 00052718 40 82 00 0C */ bne lbl_80056AC4 /* 80056ABC 0005271C 38 60 00 02 */ li r3, 2 /* 80056AC0 00052720 48 00 00 44 */ b lbl_80056B04 lbl_80056AC4: /* 80056AC4 00052724 7F E3 FB 78 */ mr r3, r31 /* 80056AC8 00052728 38 80 00 6F */ li r4, 0x6f /* 80056ACC 0005272C 38 A0 00 00 */ li r5, 0 /* 80056AD0 00052730 48 38 44 2D */ bl func_803DAEFC /* 80056AD4 00052734 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80056AD8 00052738 2C 00 00 01 */ cmpwi r0, 1 /* 80056ADC 0005273C 41 82 00 1C */ beq lbl_80056AF8 /* 80056AE0 00052740 40 80 00 20 */ bge lbl_80056B00 /* 80056AE4 00052744 2C 00 00 00 */ cmpwi r0, 0 /* 80056AE8 00052748 40 80 00 08 */ bge lbl_80056AF0 /* 80056AEC 0005274C 48 00 00 14 */ b lbl_80056B00 lbl_80056AF0: /* 80056AF0 00052750 38 60 00 00 */ li r3, 0 /* 80056AF4 00052754 48 00 00 10 */ b lbl_80056B04 lbl_80056AF8: /* 80056AF8 00052758 38 60 00 01 */ li r3, 1 /* 80056AFC 0005275C 48 00 00 08 */ b lbl_80056B04 lbl_80056B00: /* 80056B00 00052760 38 60 00 02 */ li r3, 2 lbl_80056B04: /* 80056B04 00052764 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056B08 00052768 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056B0C 0005276C 7C 08 03 A6 */ mtlr r0 /* 80056B10 00052770 38 21 00 10 */ addi r1, r1, 0x10 /* 80056B14 00052774 4E 80 00 20 */ blr .global func_80056B18 func_80056B18: /* 80056B18 00052778 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056B1C 0005277C 7C 08 02 A6 */ mflr r0 /* 80056B20 00052780 90 01 00 14 */ stw r0, 0x14(r1) /* 80056B24 00052784 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056B28 00052788 7C 7F 1B 78 */ mr r31, r3 /* 80056B2C 0005278C 48 00 01 21 */ bl func_80056C4C /* 80056B30 00052790 2C 03 00 00 */ cmpwi r3, 0 /* 80056B34 00052794 40 82 00 0C */ bne lbl_80056B40 /* 80056B38 00052798 38 60 00 02 */ li r3, 2 /* 80056B3C 0005279C 48 00 00 84 */ b lbl_80056BC0 lbl_80056B40: /* 80056B40 000527A0 7F E3 FB 78 */ mr r3, r31 /* 80056B44 000527A4 38 80 00 AC */ li r4, 0xac /* 80056B48 000527A8 38 A0 00 00 */ li r5, 0 /* 80056B4C 000527AC 48 38 6E 91 */ bl func_803DD9DC /* 80056B50 000527B0 2C 03 00 00 */ cmpwi r3, 0 /* 80056B54 000527B4 41 82 00 0C */ beq lbl_80056B60 /* 80056B58 000527B8 38 60 00 02 */ li r3, 2 /* 80056B5C 000527BC 48 00 00 64 */ b lbl_80056BC0 lbl_80056B60: /* 80056B60 000527C0 7F E3 FB 78 */ mr r3, r31 /* 80056B64 000527C4 38 80 00 AF */ li r4, 0xaf /* 80056B68 000527C8 38 A0 00 00 */ li r5, 0 /* 80056B6C 000527CC 48 38 6E 71 */ bl func_803DD9DC /* 80056B70 000527D0 2C 03 00 00 */ cmpwi r3, 0 /* 80056B74 000527D4 40 82 00 0C */ bne lbl_80056B80 /* 80056B78 000527D8 38 60 00 02 */ li r3, 2 /* 80056B7C 000527DC 48 00 00 44 */ b lbl_80056BC0 lbl_80056B80: /* 80056B80 000527E0 7F E3 FB 78 */ mr r3, r31 /* 80056B84 000527E4 38 80 00 6F */ li r4, 0x6f /* 80056B88 000527E8 38 A0 00 00 */ li r5, 0 /* 80056B8C 000527EC 48 38 6E 51 */ bl func_803DD9DC /* 80056B90 000527F0 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 80056B94 000527F4 2C 00 00 01 */ cmpwi r0, 1 /* 80056B98 000527F8 41 82 00 1C */ beq lbl_80056BB4 /* 80056B9C 000527FC 40 80 00 20 */ bge lbl_80056BBC /* 80056BA0 00052800 2C 00 00 00 */ cmpwi r0, 0 /* 80056BA4 00052804 40 80 00 08 */ bge lbl_80056BAC /* 80056BA8 00052808 48 00 00 14 */ b lbl_80056BBC lbl_80056BAC: /* 80056BAC 0005280C 38 60 00 00 */ li r3, 0 /* 80056BB0 00052810 48 00 00 10 */ b lbl_80056BC0 lbl_80056BB4: /* 80056BB4 00052814 38 60 00 01 */ li r3, 1 /* 80056BB8 00052818 48 00 00 08 */ b lbl_80056BC0 lbl_80056BBC: /* 80056BBC 0005281C 38 60 00 02 */ li r3, 2 lbl_80056BC0: /* 80056BC0 00052820 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056BC4 00052824 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056BC8 00052828 7C 08 03 A6 */ mtlr r0 /* 80056BCC 0005282C 38 21 00 10 */ addi r1, r1, 0x10 /* 80056BD0 00052830 4E 80 00 20 */ blr .global func_80056BD4 func_80056BD4: /* 80056BD4 00052834 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056BD8 00052838 7C 08 02 A6 */ mflr r0 /* 80056BDC 0005283C 2C 03 00 00 */ cmpwi r3, 0 /* 80056BE0 00052840 90 01 00 14 */ stw r0, 0x14(r1) /* 80056BE4 00052844 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056BE8 00052848 7C 7F 1B 78 */ mr r31, r3 /* 80056BEC 0005284C 40 82 00 0C */ bne lbl_80056BF8 /* 80056BF0 00052850 38 60 00 00 */ li r3, 0 /* 80056BF4 00052854 48 00 00 44 */ b lbl_80056C38 lbl_80056BF8: /* 80056BF8 00052858 38 80 00 05 */ li r4, 5 /* 80056BFC 0005285C 38 A0 00 00 */ li r5, 0 /* 80056C00 00052860 48 38 42 FD */ bl func_803DAEFC /* 80056C04 00052864 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 80056C08 00052868 41 82 00 0C */ beq lbl_80056C14 /* 80056C0C 0005286C 28 00 01 EF */ cmplwi r0, 0x1ef /* 80056C10 00052870 40 81 00 0C */ ble lbl_80056C1C lbl_80056C14: /* 80056C14 00052874 38 60 00 00 */ li r3, 0 /* 80056C18 00052878 48 00 00 20 */ b lbl_80056C38 lbl_80056C1C: /* 80056C1C 0005287C 7F E3 FB 78 */ mr r3, r31 /* 80056C20 00052880 38 80 00 AB */ li r4, 0xab /* 80056C24 00052884 38 A0 00 00 */ li r5, 0 /* 80056C28 00052888 48 38 42 D5 */ bl func_803DAEFC /* 80056C2C 0005288C 7C 03 00 D0 */ neg r0, r3 /* 80056C30 00052890 7C 00 1B 78 */ or r0, r0, r3 /* 80056C34 00052894 54 03 0F FE */ srwi r3, r0, 0x1f lbl_80056C38: /* 80056C38 00052898 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056C3C 0005289C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056C40 000528A0 7C 08 03 A6 */ mtlr r0 /* 80056C44 000528A4 38 21 00 10 */ addi r1, r1, 0x10 /* 80056C48 000528A8 4E 80 00 20 */ blr .global func_80056C4C func_80056C4C: /* 80056C4C 000528AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056C50 000528B0 7C 08 02 A6 */ mflr r0 /* 80056C54 000528B4 2C 03 00 00 */ cmpwi r3, 0 /* 80056C58 000528B8 90 01 00 14 */ stw r0, 0x14(r1) /* 80056C5C 000528BC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056C60 000528C0 7C 7F 1B 78 */ mr r31, r3 /* 80056C64 000528C4 40 82 00 0C */ bne lbl_80056C70 /* 80056C68 000528C8 38 60 00 00 */ li r3, 0 /* 80056C6C 000528CC 48 00 00 44 */ b lbl_80056CB0 lbl_80056C70: /* 80056C70 000528D0 38 80 00 05 */ li r4, 5 /* 80056C74 000528D4 38 A0 00 00 */ li r5, 0 /* 80056C78 000528D8 48 38 6D 65 */ bl func_803DD9DC /* 80056C7C 000528DC 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 80056C80 000528E0 41 82 00 0C */ beq lbl_80056C8C /* 80056C84 000528E4 28 00 01 EF */ cmplwi r0, 0x1ef /* 80056C88 000528E8 40 81 00 0C */ ble lbl_80056C94 lbl_80056C8C: /* 80056C8C 000528EC 38 60 00 00 */ li r3, 0 /* 80056C90 000528F0 48 00 00 20 */ b lbl_80056CB0 lbl_80056C94: /* 80056C94 000528F4 7F E3 FB 78 */ mr r3, r31 /* 80056C98 000528F8 38 80 00 AB */ li r4, 0xab /* 80056C9C 000528FC 38 A0 00 00 */ li r5, 0 /* 80056CA0 00052900 48 38 6D 3D */ bl func_803DD9DC /* 80056CA4 00052904 7C 03 00 D0 */ neg r0, r3 /* 80056CA8 00052908 7C 00 1B 78 */ or r0, r0, r3 /* 80056CAC 0005290C 54 03 0F FE */ srwi r3, r0, 0x1f lbl_80056CB0: /* 80056CB0 00052910 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056CB4 00052914 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056CB8 00052918 7C 08 03 A6 */ mtlr r0 /* 80056CBC 0005291C 38 21 00 10 */ addi r1, r1, 0x10 /* 80056CC0 00052920 4E 80 00 20 */ blr .global func_80056CC4 func_80056CC4: /* 80056CC4 00052924 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056CC8 00052928 7C 08 02 A6 */ mflr r0 /* 80056CCC 0005292C 90 01 00 14 */ stw r0, 0x14(r1) /* 80056CD0 00052930 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056CD4 00052934 7C 7F 1B 78 */ mr r31, r3 /* 80056CD8 00052938 4B FF FE FD */ bl func_80056BD4 /* 80056CDC 0005293C 2C 03 00 00 */ cmpwi r3, 0 /* 80056CE0 00052940 40 82 00 10 */ bne lbl_80056CF0 /* 80056CE4 00052944 38 60 00 0A */ li r3, 0xa /* 80056CE8 00052948 48 1F 96 0D */ bl func_802502F4 /* 80056CEC 0005294C 48 00 00 78 */ b lbl_80056D64 lbl_80056CF0: /* 80056CF0 00052950 7F E3 FB 78 */ mr r3, r31 /* 80056CF4 00052954 38 80 00 AC */ li r4, 0xac /* 80056CF8 00052958 38 A0 00 00 */ li r5, 0 /* 80056CFC 0005295C 48 38 42 01 */ bl func_803DAEFC /* 80056D00 00052960 2C 03 00 00 */ cmpwi r3, 0 /* 80056D04 00052964 41 82 00 34 */ beq lbl_80056D38 /* 80056D08 00052968 7F E3 FB 78 */ mr r3, r31 /* 80056D0C 0005296C 38 80 00 03 */ li r4, 3 /* 80056D10 00052970 38 A0 00 00 */ li r5, 0 /* 80056D14 00052974 48 38 41 E9 */ bl func_803DAEFC /* 80056D18 00052978 2C 03 00 00 */ cmpwi r3, 0 /* 80056D1C 0005297C 41 82 00 10 */ beq lbl_80056D2C /* 80056D20 00052980 38 60 01 F9 */ li r3, 0x1f9 /* 80056D24 00052984 48 1F 95 D1 */ bl func_802502F4 /* 80056D28 00052988 48 00 00 3C */ b lbl_80056D64 lbl_80056D2C: /* 80056D2C 0005298C 38 60 01 F8 */ li r3, 0x1f8 /* 80056D30 00052990 48 1F 95 C5 */ bl func_802502F4 /* 80056D34 00052994 48 00 00 30 */ b lbl_80056D64 lbl_80056D38: /* 80056D38 00052998 7F E3 FB 78 */ mr r3, r31 /* 80056D3C 0005299C 38 80 00 05 */ li r4, 5 /* 80056D40 000529A0 38 A0 00 00 */ li r5, 0 /* 80056D44 000529A4 48 38 41 B9 */ bl func_803DAEFC /* 80056D48 000529A8 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 80056D4C 000529AC 7C 64 1B 78 */ mr r4, r3 /* 80056D50 000529B0 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l /* 80056D54 000529B4 38 65 00 10 */ addi r3, r5, 0x10 /* 80056D58 000529B8 48 33 B2 3D */ bl func_80391F94 /* 80056D5C 000529BC 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80056D60 000529C0 48 1F 95 95 */ bl func_802502F4 lbl_80056D64: /* 80056D64 000529C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056D68 000529C8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056D6C 000529CC 7C 08 03 A6 */ mtlr r0 /* 80056D70 000529D0 38 21 00 10 */ addi r1, r1, 0x10 /* 80056D74 000529D4 4E 80 00 20 */ blr .global func_80056D78 func_80056D78: /* 80056D78 000529D8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056D7C 000529DC 7C 08 02 A6 */ mflr r0 /* 80056D80 000529E0 90 01 00 14 */ stw r0, 0x14(r1) /* 80056D84 000529E4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056D88 000529E8 7C 7F 1B 78 */ mr r31, r3 /* 80056D8C 000529EC 4B FF FE C1 */ bl func_80056C4C /* 80056D90 000529F0 2C 03 00 00 */ cmpwi r3, 0 /* 80056D94 000529F4 40 82 00 10 */ bne lbl_80056DA4 /* 80056D98 000529F8 38 60 00 0A */ li r3, 0xa /* 80056D9C 000529FC 48 1F 95 59 */ bl func_802502F4 /* 80056DA0 00052A00 48 00 00 78 */ b lbl_80056E18 lbl_80056DA4: /* 80056DA4 00052A04 7F E3 FB 78 */ mr r3, r31 /* 80056DA8 00052A08 38 80 00 AC */ li r4, 0xac /* 80056DAC 00052A0C 38 A0 00 00 */ li r5, 0 /* 80056DB0 00052A10 48 38 6C 2D */ bl func_803DD9DC /* 80056DB4 00052A14 2C 03 00 00 */ cmpwi r3, 0 /* 80056DB8 00052A18 41 82 00 34 */ beq lbl_80056DEC /* 80056DBC 00052A1C 7F E3 FB 78 */ mr r3, r31 /* 80056DC0 00052A20 38 80 00 03 */ li r4, 3 /* 80056DC4 00052A24 38 A0 00 00 */ li r5, 0 /* 80056DC8 00052A28 48 38 6C 15 */ bl func_803DD9DC /* 80056DCC 00052A2C 2C 03 00 00 */ cmpwi r3, 0 /* 80056DD0 00052A30 41 82 00 10 */ beq lbl_80056DE0 /* 80056DD4 00052A34 38 60 01 F9 */ li r3, 0x1f9 /* 80056DD8 00052A38 48 1F 95 1D */ bl func_802502F4 /* 80056DDC 00052A3C 48 00 00 3C */ b lbl_80056E18 lbl_80056DE0: /* 80056DE0 00052A40 38 60 01 F8 */ li r3, 0x1f8 /* 80056DE4 00052A44 48 1F 95 11 */ bl func_802502F4 /* 80056DE8 00052A48 48 00 00 30 */ b lbl_80056E18 lbl_80056DEC: /* 80056DEC 00052A4C 7F E3 FB 78 */ mr r3, r31 /* 80056DF0 00052A50 38 80 00 05 */ li r4, 5 /* 80056DF4 00052A54 38 A0 00 00 */ li r5, 0 /* 80056DF8 00052A58 48 38 6B E5 */ bl func_803DD9DC /* 80056DFC 00052A5C 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 80056E00 00052A60 7C 64 1B 78 */ mr r4, r3 /* 80056E04 00052A64 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l /* 80056E08 00052A68 38 65 00 10 */ addi r3, r5, 0x10 /* 80056E0C 00052A6C 48 33 B1 89 */ bl func_80391F94 /* 80056E10 00052A70 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80056E14 00052A74 48 1F 94 E1 */ bl func_802502F4 lbl_80056E18: /* 80056E18 00052A78 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056E1C 00052A7C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056E20 00052A80 7C 08 03 A6 */ mtlr r0 /* 80056E24 00052A84 38 21 00 10 */ addi r1, r1, 0x10 /* 80056E28 00052A88 4E 80 00 20 */ blr .global func_80056E2C func_80056E2C: /* 80056E2C 00052A8C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056E30 00052A90 7C 08 02 A6 */ mflr r0 /* 80056E34 00052A94 90 01 00 14 */ stw r0, 0x14(r1) /* 80056E38 00052A98 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056E3C 00052A9C 7C 7F 1B 78 */ mr r31, r3 /* 80056E40 00052AA0 4B FF FD 95 */ bl func_80056BD4 /* 80056E44 00052AA4 2C 03 00 00 */ cmpwi r3, 0 /* 80056E48 00052AA8 40 82 00 0C */ bne lbl_80056E54 /* 80056E4C 00052AAC 38 60 00 00 */ li r3, 0 /* 80056E50 00052AB0 48 00 00 20 */ b lbl_80056E70 lbl_80056E54: /* 80056E54 00052AB4 7F E3 FB 78 */ mr r3, r31 /* 80056E58 00052AB8 38 80 00 AC */ li r4, 0xac /* 80056E5C 00052ABC 38 A0 00 00 */ li r5, 0 /* 80056E60 00052AC0 48 38 40 9D */ bl func_803DAEFC /* 80056E64 00052AC4 7C 03 00 D0 */ neg r0, r3 /* 80056E68 00052AC8 7C 00 1B 78 */ or r0, r0, r3 /* 80056E6C 00052ACC 54 03 0F FE */ srwi r3, r0, 0x1f lbl_80056E70: /* 80056E70 00052AD0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056E74 00052AD4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056E78 00052AD8 7C 08 03 A6 */ mtlr r0 /* 80056E7C 00052ADC 38 21 00 10 */ addi r1, r1, 0x10 /* 80056E80 00052AE0 4E 80 00 20 */ blr .global func_80056E84 func_80056E84: /* 80056E84 00052AE4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056E88 00052AE8 7C 08 02 A6 */ mflr r0 /* 80056E8C 00052AEC 90 01 00 14 */ stw r0, 0x14(r1) /* 80056E90 00052AF0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056E94 00052AF4 7C 7F 1B 78 */ mr r31, r3 /* 80056E98 00052AF8 4B FF FD B5 */ bl func_80056C4C /* 80056E9C 00052AFC 2C 03 00 00 */ cmpwi r3, 0 /* 80056EA0 00052B00 40 82 00 0C */ bne lbl_80056EAC /* 80056EA4 00052B04 38 60 00 00 */ li r3, 0 /* 80056EA8 00052B08 48 00 00 20 */ b lbl_80056EC8 lbl_80056EAC: /* 80056EAC 00052B0C 7F E3 FB 78 */ mr r3, r31 /* 80056EB0 00052B10 38 80 00 AC */ li r4, 0xac /* 80056EB4 00052B14 38 A0 00 00 */ li r5, 0 /* 80056EB8 00052B18 48 38 6B 25 */ bl func_803DD9DC /* 80056EBC 00052B1C 7C 03 00 D0 */ neg r0, r3 /* 80056EC0 00052B20 7C 00 1B 78 */ or r0, r0, r3 /* 80056EC4 00052B24 54 03 0F FE */ srwi r3, r0, 0x1f lbl_80056EC8: /* 80056EC8 00052B28 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056ECC 00052B2C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056ED0 00052B30 7C 08 03 A6 */ mtlr r0 /* 80056ED4 00052B34 38 21 00 10 */ addi r1, r1, 0x10 /* 80056ED8 00052B38 4E 80 00 20 */ blr .global func_80056EDC func_80056EDC: /* 80056EDC 00052B3C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056EE0 00052B40 7C 08 02 A6 */ mflr r0 /* 80056EE4 00052B44 90 01 00 14 */ stw r0, 0x14(r1) /* 80056EE8 00052B48 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056EEC 00052B4C 7C 7F 1B 78 */ mr r31, r3 /* 80056EF0 00052B50 4B FF FC E5 */ bl func_80056BD4 /* 80056EF4 00052B54 2C 03 00 00 */ cmpwi r3, 0 /* 80056EF8 00052B58 40 82 00 0C */ bne lbl_80056F04 /* 80056EFC 00052B5C 38 60 00 00 */ li r3, 0 /* 80056F00 00052B60 48 00 00 20 */ b lbl_80056F20 lbl_80056F04: /* 80056F04 00052B64 7F E3 FB 78 */ mr r3, r31 /* 80056F08 00052B68 38 80 00 03 */ li r4, 3 /* 80056F0C 00052B6C 38 A0 00 00 */ li r5, 0 /* 80056F10 00052B70 48 38 3F ED */ bl func_803DAEFC /* 80056F14 00052B74 7C 03 00 D0 */ neg r0, r3 /* 80056F18 00052B78 7C 00 1B 78 */ or r0, r0, r3 /* 80056F1C 00052B7C 54 03 0F FE */ srwi r3, r0, 0x1f lbl_80056F20: /* 80056F20 00052B80 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056F24 00052B84 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056F28 00052B88 7C 08 03 A6 */ mtlr r0 /* 80056F2C 00052B8C 38 21 00 10 */ addi r1, r1, 0x10 /* 80056F30 00052B90 4E 80 00 20 */ blr .global func_80056F34 func_80056F34: /* 80056F34 00052B94 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056F38 00052B98 7C 08 02 A6 */ mflr r0 /* 80056F3C 00052B9C 90 01 00 14 */ stw r0, 0x14(r1) /* 80056F40 00052BA0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056F44 00052BA4 7C 9F 23 78 */ mr r31, r4 /* 80056F48 00052BA8 48 38 52 55 */ bl func_803DC19C /* 80056F4C 00052BAC 7F E4 FB 78 */ mr r4, r31 /* 80056F50 00052BB0 48 00 00 19 */ bl func_80056F68 /* 80056F54 00052BB4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80056F58 00052BB8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80056F5C 00052BBC 7C 08 03 A6 */ mtlr r0 /* 80056F60 00052BC0 38 21 00 10 */ addi r1, r1, 0x10 /* 80056F64 00052BC4 4E 80 00 20 */ blr .global func_80056F68 func_80056F68: /* 80056F68 00052BC8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80056F6C 00052BCC 7C 08 02 A6 */ mflr r0 /* 80056F70 00052BD0 38 A0 00 00 */ li r5, 0 /* 80056F74 00052BD4 90 01 00 14 */ stw r0, 0x14(r1) /* 80056F78 00052BD8 93 E1 00 0C */ stw r31, 0xc(r1) /* 80056F7C 00052BDC 7C 9F 23 78 */ mr r31, r4 /* 80056F80 00052BE0 38 80 00 05 */ li r4, 5 /* 80056F84 00052BE4 93 C1 00 08 */ stw r30, 8(r1) /* 80056F88 00052BE8 7C 7E 1B 78 */ mr r30, r3 /* 80056F8C 00052BEC 48 38 3F 71 */ bl func_803DAEFC /* 80056F90 00052BF0 2C 03 01 ED */ cmpwi r3, 0x1ed /* 80056F94 00052BF4 40 82 00 BC */ bne lbl_80057050 /* 80056F98 00052BF8 7F C3 F3 78 */ mr r3, r30 /* 80056F9C 00052BFC 38 80 00 70 */ li r4, 0x70 /* 80056FA0 00052C00 38 A0 00 00 */ li r5, 0 /* 80056FA4 00052C04 48 38 3F 59 */ bl func_803DAEFC /* 80056FA8 00052C08 28 03 00 11 */ cmplwi r3, 0x11 /* 80056FAC 00052C0C 41 81 00 9C */ bgt lbl_80057048 /* 80056FB0 00052C10 3C 80 80 41 */ lis r4, lbl_8040AF58@ha /* 80056FB4 00052C14 54 60 10 3A */ slwi r0, r3, 2 /* 80056FB8 00052C18 38 84 AF 58 */ addi r4, r4, lbl_8040AF58@l /* 80056FBC 00052C1C 7C 84 00 2E */ lwzx r4, r4, r0 /* 80056FC0 00052C20 7C 89 03 A6 */ mtctr r4 /* 80056FC4 00052C24 4E 80 04 20 */ bctr /* 80056FC8 00052C28 38 60 00 01 */ li r3, 1 /* 80056FCC 00052C2C 48 00 01 04 */ b lbl_800570D0 /* 80056FD0 00052C30 38 60 00 02 */ li r3, 2 /* 80056FD4 00052C34 48 00 00 FC */ b lbl_800570D0 /* 80056FD8 00052C38 38 60 00 03 */ li r3, 3 /* 80056FDC 00052C3C 48 00 00 F4 */ b lbl_800570D0 /* 80056FE0 00052C40 38 60 00 04 */ li r3, 4 /* 80056FE4 00052C44 48 00 00 EC */ b lbl_800570D0 /* 80056FE8 00052C48 38 60 00 05 */ li r3, 5 /* 80056FEC 00052C4C 48 00 00 E4 */ b lbl_800570D0 /* 80056FF0 00052C50 38 60 00 06 */ li r3, 6 /* 80056FF4 00052C54 48 00 00 DC */ b lbl_800570D0 /* 80056FF8 00052C58 38 60 00 07 */ li r3, 7 /* 80056FFC 00052C5C 48 00 00 D4 */ b lbl_800570D0 /* 80057000 00052C60 38 60 00 08 */ li r3, 8 /* 80057004 00052C64 48 00 00 CC */ b lbl_800570D0 /* 80057008 00052C68 38 60 00 0A */ li r3, 0xa /* 8005700C 00052C6C 48 00 00 C4 */ b lbl_800570D0 /* 80057010 00052C70 38 60 00 0B */ li r3, 0xb /* 80057014 00052C74 48 00 00 BC */ b lbl_800570D0 /* 80057018 00052C78 38 60 00 0C */ li r3, 0xc /* 8005701C 00052C7C 48 00 00 B4 */ b lbl_800570D0 /* 80057020 00052C80 38 60 00 0D */ li r3, 0xd /* 80057024 00052C84 48 00 00 AC */ b lbl_800570D0 /* 80057028 00052C88 38 60 00 0E */ li r3, 0xe /* 8005702C 00052C8C 48 00 00 A4 */ b lbl_800570D0 /* 80057030 00052C90 38 60 00 0F */ li r3, 0xf /* 80057034 00052C94 48 00 00 9C */ b lbl_800570D0 /* 80057038 00052C98 38 60 00 10 */ li r3, 0x10 /* 8005703C 00052C9C 48 00 00 94 */ b lbl_800570D0 /* 80057040 00052CA0 38 60 00 11 */ li r3, 0x11 /* 80057044 00052CA4 48 00 00 8C */ b lbl_800570D0 lbl_80057048: /* 80057048 00052CA8 38 60 00 00 */ li r3, 0 /* 8005704C 00052CAC 48 00 00 84 */ b lbl_800570D0 lbl_80057050: /* 80057050 00052CB0 2C 1F 00 00 */ cmpwi r31, 0 /* 80057054 00052CB4 40 82 00 1C */ bne lbl_80057070 /* 80057058 00052CB8 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 8005705C 00052CBC 7C 64 1B 78 */ mr r4, r3 /* 80057060 00052CC0 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l /* 80057064 00052CC4 38 65 00 10 */ addi r3, r5, 0x10 /* 80057068 00052CC8 48 33 A9 5D */ bl func_803919C4 /* 8005706C 00052CCC 48 00 00 64 */ b lbl_800570D0 lbl_80057070: /* 80057070 00052CD0 2C 03 01 9D */ cmpwi r3, 0x19d /* 80057074 00052CD4 40 82 00 48 */ bne lbl_800570BC /* 80057078 00052CD8 7F C3 F3 78 */ mr r3, r30 /* 8005707C 00052CDC 38 80 00 70 */ li r4, 0x70 /* 80057080 00052CE0 38 A0 00 00 */ li r5, 0 /* 80057084 00052CE4 48 38 3E 79 */ bl func_803DAEFC /* 80057088 00052CE8 2C 03 00 01 */ cmpwi r3, 1 /* 8005708C 00052CEC 41 82 00 20 */ beq lbl_800570AC /* 80057090 00052CF0 40 80 00 08 */ bge lbl_80057098 /* 80057094 00052CF4 48 00 00 10 */ b lbl_800570A4 lbl_80057098: /* 80057098 00052CF8 2C 03 00 03 */ cmpwi r3, 3 /* 8005709C 00052CFC 40 80 00 08 */ bge lbl_800570A4 /* 800570A0 00052D00 48 00 00 14 */ b lbl_800570B4 lbl_800570A4: /* 800570A4 00052D04 38 60 00 0C */ li r3, 0xc /* 800570A8 00052D08 48 00 00 28 */ b lbl_800570D0 lbl_800570AC: /* 800570AC 00052D0C 38 60 00 04 */ li r3, 4 /* 800570B0 00052D10 48 00 00 20 */ b lbl_800570D0 lbl_800570B4: /* 800570B4 00052D14 38 60 00 08 */ li r3, 8 /* 800570B8 00052D18 48 00 00 18 */ b lbl_800570D0 lbl_800570BC: /* 800570BC 00052D1C 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 800570C0 00052D20 7C 64 1B 78 */ mr r4, r3 /* 800570C4 00052D24 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l /* 800570C8 00052D28 38 65 00 10 */ addi r3, r5, 0x10 /* 800570CC 00052D2C 48 33 A9 2D */ bl func_803919F8 lbl_800570D0: /* 800570D0 00052D30 80 01 00 14 */ lwz r0, 0x14(r1) /* 800570D4 00052D34 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800570D8 00052D38 83 C1 00 08 */ lwz r30, 8(r1) /* 800570DC 00052D3C 7C 08 03 A6 */ mtlr r0 /* 800570E0 00052D40 38 21 00 10 */ addi r1, r1, 0x10 /* 800570E4 00052D44 4E 80 00 20 */ blr .global func_800570E8 func_800570E8: /* 800570E8 00052D48 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800570EC 00052D4C 7C 08 02 A6 */ mflr r0 /* 800570F0 00052D50 90 01 00 44 */ stw r0, 0x44(r1) /* 800570F4 00052D54 38 00 00 00 */ li r0, 0 /* 800570F8 00052D58 38 A1 00 08 */ addi r5, r1, 8 /* 800570FC 00052D5C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80057100 00052D60 7C 9F 23 78 */ mr r31, r4 /* 80057104 00052D64 38 80 00 97 */ li r4, 0x97 /* 80057108 00052D68 93 C1 00 38 */ stw r30, 0x38(r1) /* 8005710C 00052D6C 7C 7E 1B 78 */ mr r30, r3 /* 80057110 00052D70 90 01 00 08 */ stw r0, 8(r1) /* 80057114 00052D74 48 38 45 65 */ bl func_803DB678 /* 80057118 00052D78 7F C3 F3 78 */ mr r3, r30 /* 8005711C 00052D7C 38 A1 00 08 */ addi r5, r1, 8 /* 80057120 00052D80 38 80 00 6E */ li r4, 0x6e /* 80057124 00052D84 48 38 45 55 */ bl func_803DB678 /* 80057128 00052D88 38 00 00 37 */ li r0, 0x37 /* 8005712C 00052D8C 7F C3 F3 78 */ mr r3, r30 /* 80057130 00052D90 90 01 00 08 */ stw r0, 8(r1) /* 80057134 00052D94 38 A1 00 08 */ addi r5, r1, 8 /* 80057138 00052D98 38 80 00 98 */ li r4, 0x98 /* 8005713C 00052D9C 48 38 45 3D */ bl func_803DB678 /* 80057140 00052DA0 38 00 00 10 */ li r0, 0x10 /* 80057144 00052DA4 7F C3 F3 78 */ mr r3, r30 /* 80057148 00052DA8 90 01 00 08 */ stw r0, 8(r1) /* 8005714C 00052DAC 38 A1 00 08 */ addi r5, r1, 8 /* 80057150 00052DB0 38 80 00 79 */ li r4, 0x79 /* 80057154 00052DB4 48 38 45 25 */ bl func_803DB678 /* 80057158 00052DB8 A0 1F 00 00 */ lhz r0, 0(r31) /* 8005715C 00052DBC 7F C3 F3 78 */ mr r3, r30 /* 80057160 00052DC0 38 A1 00 08 */ addi r5, r1, 8 /* 80057164 00052DC4 38 80 00 94 */ li r4, 0x94 /* 80057168 00052DC8 90 01 00 08 */ stw r0, 8(r1) /* 8005716C 00052DCC 48 38 45 0D */ bl func_803DB678 /* 80057170 00052DD0 A0 1F 00 02 */ lhz r0, 2(r31) /* 80057174 00052DD4 7F C3 F3 78 */ mr r3, r30 /* 80057178 00052DD8 38 A1 00 08 */ addi r5, r1, 8 /* 8005717C 00052DDC 38 80 00 95 */ li r4, 0x95 /* 80057180 00052DE0 90 01 00 08 */ stw r0, 8(r1) /* 80057184 00052DE4 48 38 44 F5 */ bl func_803DB678 /* 80057188 00052DE8 A0 1F 00 04 */ lhz r0, 4(r31) /* 8005718C 00052DEC 7F C3 F3 78 */ mr r3, r30 /* 80057190 00052DF0 38 A1 00 08 */ addi r5, r1, 8 /* 80057194 00052DF4 38 80 00 96 */ li r4, 0x96 /* 80057198 00052DF8 90 01 00 08 */ stw r0, 8(r1) /* 8005719C 00052DFC 48 38 44 DD */ bl func_803DB678 /* 800571A0 00052E00 A0 1F 00 06 */ lhz r0, 6(r31) /* 800571A4 00052E04 7F C3 F3 78 */ mr r3, r30 /* 800571A8 00052E08 38 A1 00 08 */ addi r5, r1, 8 /* 800571AC 00052E0C 38 80 00 9B */ li r4, 0x9b /* 800571B0 00052E10 90 01 00 08 */ stw r0, 8(r1) /* 800571B4 00052E14 48 38 44 C5 */ bl func_803DB678 /* 800571B8 00052E18 80 1F 00 08 */ lwz r0, 8(r31) /* 800571BC 00052E1C 7F C3 F3 78 */ mr r3, r30 /* 800571C0 00052E20 38 A1 00 08 */ addi r5, r1, 8 /* 800571C4 00052E24 38 80 00 07 */ li r4, 7 /* 800571C8 00052E28 90 01 00 08 */ stw r0, 8(r1) /* 800571CC 00052E2C 48 38 44 AD */ bl func_803DB678 /* 800571D0 00052E30 38 61 00 10 */ addi r3, r1, 0x10 /* 800571D4 00052E34 38 9F 00 0C */ addi r4, r31, 0xc /* 800571D8 00052E38 38 A0 00 10 */ li r5, 0x10 /* 800571DC 00052E3C 48 11 FC D9 */ bl func_80176EB4 /* 800571E0 00052E40 7F C3 F3 78 */ mr r3, r30 /* 800571E4 00052E44 38 A1 00 10 */ addi r5, r1, 0x10 /* 800571E8 00052E48 38 80 00 8F */ li r4, 0x8f /* 800571EC 00052E4C 48 38 44 8D */ bl func_803DB678 /* 800571F0 00052E50 80 01 00 44 */ lwz r0, 0x44(r1) /* 800571F4 00052E54 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800571F8 00052E58 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800571FC 00052E5C 7C 08 03 A6 */ mtlr r0 /* 80057200 00052E60 38 21 00 40 */ addi r1, r1, 0x40 /* 80057204 00052E64 4E 80 00 20 */ blr .global func_80057208 func_80057208: /* 80057208 00052E68 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005720C 00052E6C 7C 08 02 A6 */ mflr r0 /* 80057210 00052E70 90 01 00 24 */ stw r0, 0x24(r1) /* 80057214 00052E74 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80057218 00052E78 7C 7F 1B 78 */ mr r31, r3 /* 8005721C 00052E7C 4B FF FA 31 */ bl func_80056C4C /* 80057220 00052E80 2C 03 00 00 */ cmpwi r3, 0 /* 80057224 00052E84 41 82 00 F4 */ beq lbl_80057318 /* 80057228 00052E88 7F E3 FB 78 */ mr r3, r31 /* 8005722C 00052E8C 38 80 00 36 */ li r4, 0x36 /* 80057230 00052E90 38 A0 00 00 */ li r5, 0 /* 80057234 00052E94 48 38 67 A9 */ bl func_803DD9DC /* 80057238 00052E98 2C 03 00 00 */ cmpwi r3, 0 /* 8005723C 00052E9C 41 82 00 28 */ beq lbl_80057264 /* 80057240 00052EA0 7F E3 FB 78 */ mr r3, r31 /* 80057244 00052EA4 38 80 00 42 */ li r4, 0x42 /* 80057248 00052EA8 38 A0 00 00 */ li r5, 0 /* 8005724C 00052EAC 48 38 67 91 */ bl func_803DD9DC /* 80057250 00052EB0 90 61 00 08 */ stw r3, 8(r1) /* 80057254 00052EB4 7F E3 FB 78 */ mr r3, r31 /* 80057258 00052EB8 38 A1 00 08 */ addi r5, r1, 8 /* 8005725C 00052EBC 38 80 00 3A */ li r4, 0x3a /* 80057260 00052EC0 48 38 42 C5 */ bl func_803DB524 lbl_80057264: /* 80057264 00052EC4 7F E3 FB 78 */ mr r3, r31 /* 80057268 00052EC8 38 80 00 37 */ li r4, 0x37 /* 8005726C 00052ECC 38 A0 00 00 */ li r5, 0 /* 80057270 00052ED0 48 38 67 6D */ bl func_803DD9DC /* 80057274 00052ED4 2C 03 00 00 */ cmpwi r3, 0 /* 80057278 00052ED8 41 82 00 28 */ beq lbl_800572A0 /* 8005727C 00052EDC 7F E3 FB 78 */ mr r3, r31 /* 80057280 00052EE0 38 80 00 43 */ li r4, 0x43 /* 80057284 00052EE4 38 A0 00 00 */ li r5, 0 /* 80057288 00052EE8 48 38 67 55 */ bl func_803DD9DC /* 8005728C 00052EEC 90 61 00 08 */ stw r3, 8(r1) /* 80057290 00052EF0 7F E3 FB 78 */ mr r3, r31 /* 80057294 00052EF4 38 A1 00 08 */ addi r5, r1, 8 /* 80057298 00052EF8 38 80 00 3B */ li r4, 0x3b /* 8005729C 00052EFC 48 38 42 89 */ bl func_803DB524 lbl_800572A0: /* 800572A0 00052F00 7F E3 FB 78 */ mr r3, r31 /* 800572A4 00052F04 38 80 00 38 */ li r4, 0x38 /* 800572A8 00052F08 38 A0 00 00 */ li r5, 0 /* 800572AC 00052F0C 48 38 67 31 */ bl func_803DD9DC /* 800572B0 00052F10 2C 03 00 00 */ cmpwi r3, 0 /* 800572B4 00052F14 41 82 00 28 */ beq lbl_800572DC /* 800572B8 00052F18 7F E3 FB 78 */ mr r3, r31 /* 800572BC 00052F1C 38 80 00 44 */ li r4, 0x44 /* 800572C0 00052F20 38 A0 00 00 */ li r5, 0 /* 800572C4 00052F24 48 38 67 19 */ bl func_803DD9DC /* 800572C8 00052F28 90 61 00 08 */ stw r3, 8(r1) /* 800572CC 00052F2C 7F E3 FB 78 */ mr r3, r31 /* 800572D0 00052F30 38 A1 00 08 */ addi r5, r1, 8 /* 800572D4 00052F34 38 80 00 3C */ li r4, 0x3c /* 800572D8 00052F38 48 38 42 4D */ bl func_803DB524 lbl_800572DC: /* 800572DC 00052F3C 7F E3 FB 78 */ mr r3, r31 /* 800572E0 00052F40 38 80 00 39 */ li r4, 0x39 /* 800572E4 00052F44 38 A0 00 00 */ li r5, 0 /* 800572E8 00052F48 48 38 66 F5 */ bl func_803DD9DC /* 800572EC 00052F4C 2C 03 00 00 */ cmpwi r3, 0 /* 800572F0 00052F50 41 82 00 28 */ beq lbl_80057318 /* 800572F4 00052F54 7F E3 FB 78 */ mr r3, r31 /* 800572F8 00052F58 38 80 00 45 */ li r4, 0x45 /* 800572FC 00052F5C 38 A0 00 00 */ li r5, 0 /* 80057300 00052F60 48 38 66 DD */ bl func_803DD9DC /* 80057304 00052F64 90 61 00 08 */ stw r3, 8(r1) /* 80057308 00052F68 7F E3 FB 78 */ mr r3, r31 /* 8005730C 00052F6C 38 A1 00 08 */ addi r5, r1, 8 /* 80057310 00052F70 38 80 00 3D */ li r4, 0x3d /* 80057314 00052F74 48 38 42 11 */ bl func_803DB524 lbl_80057318: /* 80057318 00052F78 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005731C 00052F7C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80057320 00052F80 7C 08 03 A6 */ mtlr r0 /* 80057324 00052F84 38 21 00 20 */ addi r1, r1, 0x20 /* 80057328 00052F88 4E 80 00 20 */ blr .global func_8005732C func_8005732C: /* 8005732C 00052F8C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80057330 00052F90 7C 08 02 A6 */ mflr r0 /* 80057334 00052F94 90 01 00 24 */ stw r0, 0x24(r1) /* 80057338 00052F98 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8005733C 00052F9C 7C 7F 1B 78 */ mr r31, r3 /* 80057340 00052FA0 4B FF F8 95 */ bl func_80056BD4 /* 80057344 00052FA4 2C 03 00 00 */ cmpwi r3, 0 /* 80057348 00052FA8 41 82 00 F4 */ beq lbl_8005743C /* 8005734C 00052FAC 7F E3 FB 78 */ mr r3, r31 /* 80057350 00052FB0 38 80 00 36 */ li r4, 0x36 /* 80057354 00052FB4 38 A0 00 00 */ li r5, 0 /* 80057358 00052FB8 48 38 3B A5 */ bl func_803DAEFC /* 8005735C 00052FBC 2C 03 00 00 */ cmpwi r3, 0 /* 80057360 00052FC0 41 82 00 28 */ beq lbl_80057388 /* 80057364 00052FC4 7F E3 FB 78 */ mr r3, r31 /* 80057368 00052FC8 38 80 00 42 */ li r4, 0x42 /* 8005736C 00052FCC 38 A0 00 00 */ li r5, 0 /* 80057370 00052FD0 48 38 3B 8D */ bl func_803DAEFC /* 80057374 00052FD4 90 61 00 08 */ stw r3, 8(r1) /* 80057378 00052FD8 7F E3 FB 78 */ mr r3, r31 /* 8005737C 00052FDC 38 A1 00 08 */ addi r5, r1, 8 /* 80057380 00052FE0 38 80 00 3A */ li r4, 0x3a /* 80057384 00052FE4 48 38 42 F5 */ bl func_803DB678 lbl_80057388: /* 80057388 00052FE8 7F E3 FB 78 */ mr r3, r31 /* 8005738C 00052FEC 38 80 00 37 */ li r4, 0x37 /* 80057390 00052FF0 38 A0 00 00 */ li r5, 0 /* 80057394 00052FF4 48 38 3B 69 */ bl func_803DAEFC /* 80057398 00052FF8 2C 03 00 00 */ cmpwi r3, 0 /* 8005739C 00052FFC 41 82 00 28 */ beq lbl_800573C4 /* 800573A0 00053000 7F E3 FB 78 */ mr r3, r31 /* 800573A4 00053004 38 80 00 43 */ li r4, 0x43 /* 800573A8 00053008 38 A0 00 00 */ li r5, 0 /* 800573AC 0005300C 48 38 3B 51 */ bl func_803DAEFC /* 800573B0 00053010 90 61 00 08 */ stw r3, 8(r1) /* 800573B4 00053014 7F E3 FB 78 */ mr r3, r31 /* 800573B8 00053018 38 A1 00 08 */ addi r5, r1, 8 /* 800573BC 0005301C 38 80 00 3B */ li r4, 0x3b /* 800573C0 00053020 48 38 42 B9 */ bl func_803DB678 lbl_800573C4: /* 800573C4 00053024 7F E3 FB 78 */ mr r3, r31 /* 800573C8 00053028 38 80 00 38 */ li r4, 0x38 /* 800573CC 0005302C 38 A0 00 00 */ li r5, 0 /* 800573D0 00053030 48 38 3B 2D */ bl func_803DAEFC /* 800573D4 00053034 2C 03 00 00 */ cmpwi r3, 0 /* 800573D8 00053038 41 82 00 28 */ beq lbl_80057400 /* 800573DC 0005303C 7F E3 FB 78 */ mr r3, r31 /* 800573E0 00053040 38 80 00 44 */ li r4, 0x44 /* 800573E4 00053044 38 A0 00 00 */ li r5, 0 /* 800573E8 00053048 48 38 3B 15 */ bl func_803DAEFC /* 800573EC 0005304C 90 61 00 08 */ stw r3, 8(r1) /* 800573F0 00053050 7F E3 FB 78 */ mr r3, r31 /* 800573F4 00053054 38 A1 00 08 */ addi r5, r1, 8 /* 800573F8 00053058 38 80 00 3C */ li r4, 0x3c /* 800573FC 0005305C 48 38 42 7D */ bl func_803DB678 lbl_80057400: /* 80057400 00053060 7F E3 FB 78 */ mr r3, r31 /* 80057404 00053064 38 80 00 39 */ li r4, 0x39 /* 80057408 00053068 38 A0 00 00 */ li r5, 0 /* 8005740C 0005306C 48 38 3A F1 */ bl func_803DAEFC /* 80057410 00053070 2C 03 00 00 */ cmpwi r3, 0 /* 80057414 00053074 41 82 00 28 */ beq lbl_8005743C /* 80057418 00053078 7F E3 FB 78 */ mr r3, r31 /* 8005741C 0005307C 38 80 00 45 */ li r4, 0x45 /* 80057420 00053080 38 A0 00 00 */ li r5, 0 /* 80057424 00053084 48 38 3A D9 */ bl func_803DAEFC /* 80057428 00053088 90 61 00 08 */ stw r3, 8(r1) /* 8005742C 0005308C 7F E3 FB 78 */ mr r3, r31 /* 80057430 00053090 38 A1 00 08 */ addi r5, r1, 8 /* 80057434 00053094 38 80 00 3D */ li r4, 0x3d /* 80057438 00053098 48 38 42 41 */ bl func_803DB678 lbl_8005743C: /* 8005743C 0005309C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80057440 000530A0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80057444 000530A4 7C 08 03 A6 */ mtlr r0 /* 80057448 000530A8 38 21 00 20 */ addi r1, r1, 0x20 /* 8005744C 000530AC 4E 80 00 20 */ blr .global func_80057450 func_80057450: /* 80057450 000530B0 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 80057454 000530B4 7C 08 02 A6 */ mflr r0 /* 80057458 000530B8 38 80 00 05 */ li r4, 5 /* 8005745C 000530BC 38 A0 00 00 */ li r5, 0 /* 80057460 000530C0 90 01 00 A4 */ stw r0, 0xa4(r1) /* 80057464 000530C4 93 E1 00 9C */ stw r31, 0x9c(r1) /* 80057468 000530C8 7C 7F 1B 78 */ mr r31, r3 /* 8005746C 000530CC 48 38 3A 91 */ bl func_803DAEFC /* 80057470 000530D0 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 80057474 000530D4 7C 64 1B 78 */ mr r4, r3 /* 80057478 000530D8 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l /* 8005747C 000530DC 38 65 00 10 */ addi r3, r5, 0x10 /* 80057480 000530E0 48 33 AB 15 */ bl func_80391F94 /* 80057484 000530E4 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80057488 000530E8 38 81 00 50 */ addi r4, r1, 0x50 /* 8005748C 000530EC 48 1F 8F 4D */ bl func_802503D8 /* 80057490 000530F0 38 61 00 10 */ addi r3, r1, 0x10 /* 80057494 000530F4 38 81 00 50 */ addi r4, r1, 0x50 /* 80057498 000530F8 38 A0 00 20 */ li r5, 0x20 /* 8005749C 000530FC 48 11 FA 19 */ bl func_80176EB4 /* 800574A0 00053100 7F E3 FB 78 */ mr r3, r31 /* 800574A4 00053104 38 A1 00 10 */ addi r5, r1, 0x10 /* 800574A8 00053108 38 80 00 74 */ li r4, 0x74 /* 800574AC 0005310C 48 38 41 CD */ bl func_803DB678 /* 800574B0 00053110 38 00 00 00 */ li r0, 0 /* 800574B4 00053114 7F E3 FB 78 */ mr r3, r31 /* 800574B8 00053118 90 01 00 08 */ stw r0, 8(r1) /* 800574BC 0005311C 38 A1 00 08 */ addi r5, r1, 8 /* 800574C0 00053120 38 80 00 4D */ li r4, 0x4d /* 800574C4 00053124 48 38 41 B5 */ bl func_803DB678 /* 800574C8 00053128 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 800574CC 0005312C 83 E1 00 9C */ lwz r31, 0x9c(r1) /* 800574D0 00053130 7C 08 03 A6 */ mtlr r0 /* 800574D4 00053134 38 21 00 A0 */ addi r1, r1, 0xa0 /* 800574D8 00053138 4E 80 00 20 */ blr .global func_800574DC func_800574DC: /* 800574DC 0005313C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800574E0 00053140 7C 08 02 A6 */ mflr r0 /* 800574E4 00053144 90 01 00 14 */ stw r0, 0x14(r1) /* 800574E8 00053148 93 E1 00 0C */ stw r31, 0xc(r1) /* 800574EC 0005314C 7C 9F 23 78 */ mr r31, r4 /* 800574F0 00053150 93 C1 00 08 */ stw r30, 8(r1) /* 800574F4 00053154 7C 7E 1B 78 */ mr r30, r3 /* 800574F8 00053158 7C A3 2B 78 */ mr r3, r5 /* 800574FC 0005315C 4B FF F5 61 */ bl func_80056A5C /* 80057500 00053160 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80057504 00053164 2C 00 00 01 */ cmpwi r0, 1 /* 80057508 00053168 41 82 00 1C */ beq lbl_80057524 /* 8005750C 0005316C 40 80 00 34 */ bge lbl_80057540 /* 80057510 00053170 2C 00 00 00 */ cmpwi r0, 0 /* 80057514 00053174 40 80 00 08 */ bge lbl_8005751C /* 80057518 00053178 48 00 00 28 */ b lbl_80057540 lbl_8005751C: /* 8005751C 0005317C 38 C0 0E 8D */ li r6, 0xe8d /* 80057520 00053180 48 00 00 10 */ b lbl_80057530 lbl_80057524: /* 80057524 00053184 38 C0 0E 90 */ li r6, 0xe90 /* 80057528 00053188 48 00 00 08 */ b lbl_80057530 /* 8005752C 0005318C 48 00 00 14 */ b lbl_80057540 lbl_80057530: /* 80057530 00053190 7F C3 F3 78 */ mr r3, r30 /* 80057534 00053194 7F E4 FB 78 */ mr r4, r31 /* 80057538 00053198 38 A0 00 02 */ li r5, 2 /* 8005753C 0005319C 48 1F C9 79 */ bl func_80253EB4 lbl_80057540: /* 80057540 000531A0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80057544 000531A4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80057548 000531A8 83 C1 00 08 */ lwz r30, 8(r1) /* 8005754C 000531AC 7C 08 03 A6 */ mtlr r0 /* 80057550 000531B0 38 21 00 10 */ addi r1, r1, 0x10 /* 80057554 000531B4 4E 80 00 20 */ blr .global func_80057558 func_80057558: /* 80057558 000531B8 4E 80 00 20 */ blr .global func_8005755C func_8005755C: /* 8005755C 000531BC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057560 000531C0 80 03 00 08 */ lwz r0, 8(r3) /* 80057564 000531C4 54 03 EF FE */ rlwinm r3, r0, 0x1d, 0x1f, 0x1f /* 80057568 000531C8 4E 80 00 20 */ blr .global func_8005756C func_8005756C: /* 8005756C 000531CC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057570 000531D0 80 03 00 08 */ lwz r0, 8(r3) /* 80057574 000531D4 54 03 4F FE */ rlwinm r3, r0, 9, 0x1f, 0x1f /* 80057578 000531D8 4E 80 00 20 */ blr lbl_8005757C: /* 8005757C 000531DC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057580 000531E0 7C 08 02 A6 */ mflr r0 /* 80057584 000531E4 90 01 00 14 */ stw r0, 0x14(r1) /* 80057588 000531E8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005758C 000531EC 3F E0 80 41 */ lis r31, lbl_8040AF58@ha /* 80057590 000531F0 3B FF AF 58 */ addi r31, r31, lbl_8040AF58@l /* 80057594 000531F4 48 00 00 0C */ b lbl_800575A0 lbl_80057598: /* 80057598 000531F8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8005759C 000531FC 48 1C CF ED */ bl func_80224588 lbl_800575A0: /* 800575A0 00053200 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800575A4 00053204 80 03 00 08 */ lwz r0, 8(r3) /* 800575A8 00053208 54 00 2F FF */ rlwinm. r0, r0, 5, 0x1f, 0x1f /* 800575AC 0005320C 41 82 FF EC */ beq lbl_80057598 /* 800575B0 00053210 38 00 00 00 */ li r0, 0 /* 800575B4 00053214 38 7F 00 48 */ addi r3, r31, 0x48 /* 800575B8 00053218 98 0D 98 AE */ stb r0, lbl_8063EB6E-_SDA_BASE_(r13) /* 800575BC 0005321C 48 18 57 D9 */ bl func_801DCD94 /* 800575C0 00053220 38 7F 00 58 */ addi r3, r31, 0x58 /* 800575C4 00053224 48 18 57 D1 */ bl func_801DCD94 /* 800575C8 00053228 38 7F 00 68 */ addi r3, r31, 0x68 /* 800575CC 0005322C 48 18 57 C9 */ bl func_801DCD94 /* 800575D0 00053230 38 7F 00 78 */ addi r3, r31, 0x78 /* 800575D4 00053234 48 18 57 C1 */ bl func_801DCD94 /* 800575D8 00053238 38 7F 00 88 */ addi r3, r31, 0x88 /* 800575DC 0005323C 48 18 57 B9 */ bl func_801DCD94 /* 800575E0 00053240 38 7F 00 98 */ addi r3, r31, 0x98 /* 800575E4 00053244 48 18 57 B1 */ bl func_801DCD94 /* 800575E8 00053248 38 7F 00 A8 */ addi r3, r31, 0xa8 /* 800575EC 0005324C 48 18 57 A9 */ bl func_801DCD94 /* 800575F0 00053250 38 7F 00 B8 */ addi r3, r31, 0xb8 /* 800575F4 00053254 48 18 57 A1 */ bl func_801DCD94 /* 800575F8 00053258 38 7F 00 C8 */ addi r3, r31, 0xc8 /* 800575FC 0005325C 48 18 57 99 */ bl func_801DCD94 /* 80057600 00053260 38 7F 00 D8 */ addi r3, r31, 0xd8 /* 80057604 00053264 48 18 57 91 */ bl func_801DCD94 /* 80057608 00053268 38 7F 00 E8 */ addi r3, r31, 0xe8 /* 8005760C 0005326C 48 18 57 89 */ bl func_801DCD94 /* 80057610 00053270 38 7F 00 F8 */ addi r3, r31, 0xf8 /* 80057614 00053274 48 18 57 81 */ bl func_801DCD94 /* 80057618 00053278 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005761C 0005327C 80 03 00 08 */ lwz r0, 8(r3) /* 80057620 00053280 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 80057624 00053284 90 03 00 08 */ stw r0, 8(r3) /* 80057628 00053288 48 00 00 0C */ b lbl_80057634 lbl_8005762C: /* 8005762C 0005328C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80057630 00053290 48 1C CF 59 */ bl func_80224588 lbl_80057634: /* 80057634 00053294 88 0D 98 AE */ lbz r0, lbl_8063EB6E-_SDA_BASE_(r13) /* 80057638 00053298 2C 00 00 00 */ cmpwi r0, 0 /* 8005763C 0005329C 41 82 FF F0 */ beq lbl_8005762C /* 80057640 000532A0 38 7F 01 08 */ addi r3, r31, 0x108 /* 80057644 000532A4 48 18 57 51 */ bl func_801DCD94 /* 80057648 000532A8 38 7F 01 18 */ addi r3, r31, 0x118 /* 8005764C 000532AC 48 18 57 49 */ bl func_801DCD94 /* 80057650 000532B0 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057654 000532B4 3C 60 00 0A */ lis r3, 0x0009FC78@ha /* 80057658 000532B8 38 83 FC 78 */ addi r4, r3, 0x0009FC78@l /* 8005765C 000532BC 80 05 00 08 */ lwz r0, 8(r5) /* 80057660 000532C0 54 00 02 4E */ rlwinm r0, r0, 0, 9, 7 /* 80057664 000532C4 90 05 00 08 */ stw r0, 8(r5) /* 80057668 000532C8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8005766C 000532CC 48 1C CE 95 */ bl func_80224500 /* 80057670 000532D0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80057674 000532D4 38 60 00 00 */ li r3, 0 /* 80057678 000532D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005767C 000532DC 7C 08 03 A6 */ mtlr r0 /* 80057680 000532E0 38 21 00 10 */ addi r1, r1, 0x10 /* 80057684 000532E4 4E 80 00 20 */ blr .global func_80057688 func_80057688: /* 80057688 000532E8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005768C 000532EC 80 03 00 08 */ lwz r0, 8(r3) /* 80057690 000532F0 64 00 04 00 */ oris r0, r0, 0x400 /* 80057694 000532F4 90 03 00 08 */ stw r0, 8(r3) /* 80057698 000532F8 4E 80 00 20 */ blr .global func_8005769C func_8005769C: /* 8005769C 000532FC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800576A0 00053300 80 03 00 08 */ lwz r0, 8(r3) /* 800576A4 00053304 54 03 37 FE */ rlwinm r3, r0, 6, 0x1f, 0x1f /* 800576A8 00053308 4E 80 00 20 */ blr .global func_800576AC func_800576AC: /* 800576AC 0005330C 48 08 CD 24 */ b func_800E43D0 .global func_800576B0 func_800576B0: /* 800576B0 00053310 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800576B4 00053314 7C 08 02 A6 */ mflr r0 /* 800576B8 00053318 90 01 00 14 */ stw r0, 0x14(r1) /* 800576BC 0005331C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800576C0 00053320 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800576C4 00053324 80 03 00 08 */ lwz r0, 8(r3) /* 800576C8 00053328 54 00 02 0A */ rlwinm r0, r0, 0, 8, 5 /* 800576CC 0005332C 90 03 00 08 */ stw r0, 8(r3) /* 800576D0 00053330 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800576D4 00053334 80 03 00 1C */ lwz r0, 0x1c(r3) /* 800576D8 00053338 2C 00 00 00 */ cmpwi r0, 0 /* 800576DC 0005333C 40 82 01 CC */ bne lbl_800578A8 /* 800576E0 00053340 38 60 04 01 */ li r3, 0x401 /* 800576E4 00053344 48 1F 1E F9 */ bl func_802495DC /* 800576E8 00053348 38 60 04 01 */ li r3, 0x401 /* 800576EC 0005334C 3C 80 04 4A */ lis r4, 0x44a /* 800576F0 00053350 4B FF E6 A9 */ bl func_80055D98 /* 800576F4 00053354 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800576F8 00053358 90 64 00 1C */ stw r3, 0x1c(r4) /* 800576FC 0005335C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057700 00053360 83 E3 00 1C */ lwz r31, 0x1c(r3) /* 80057704 00053364 7F E3 FB 78 */ mr r3, r31 /* 80057708 00053368 7F E4 FB 78 */ mr r4, r31 /* 8005770C 0005336C 48 18 BD D1 */ bl func_801E34DC /* 80057710 00053370 48 18 34 19 */ bl func_801DAB28 /* 80057714 00053374 2C 03 00 00 */ cmpwi r3, 0 /* 80057718 00053378 41 82 00 14 */ beq lbl_8005772C /* 8005771C 0005337C 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 80057720 00053380 38 80 00 14 */ li r4, 0x14 /* 80057724 00053384 48 18 35 71 */ bl func_801DAC94 /* 80057728 00053388 48 00 00 08 */ b lbl_80057730 lbl_8005772C: /* 8005772C 0005338C 38 60 00 00 */ li r3, 0 lbl_80057730: /* 80057730 00053390 2C 03 00 00 */ cmpwi r3, 0 /* 80057734 00053394 41 82 00 0C */ beq lbl_80057740 /* 80057738 00053398 7F E4 FB 78 */ mr r4, r31 /* 8005773C 0005339C 48 1A 29 59 */ bl func_801FA094 lbl_80057740: /* 80057740 000533A0 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057744 000533A4 38 00 00 00 */ li r0, 0 /* 80057748 000533A8 90 64 00 28 */ stw r3, 0x28(r4) /* 8005774C 000533AC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057750 000533B0 90 03 00 30 */ stw r0, 0x30(r3) /* 80057754 000533B4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057758 000533B8 80 63 00 28 */ lwz r3, 0x28(r3) /* 8005775C 000533BC 80 83 00 04 */ lwz r4, 4(r3) /* 80057760 000533C0 2C 04 00 00 */ cmpwi r4, 0 /* 80057764 000533C4 40 82 00 0C */ bne lbl_80057770 /* 80057768 000533C8 38 60 00 00 */ li r3, 0 /* 8005776C 000533CC 48 00 00 20 */ b lbl_8005778C lbl_80057770: /* 80057770 000533D0 80 63 00 00 */ lwz r3, 0(r3) /* 80057774 000533D4 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80057778 000533D8 2C 00 00 00 */ cmpwi r0, 0 /* 8005777C 000533DC 40 82 00 0C */ bne lbl_80057788 /* 80057780 000533E0 38 60 00 00 */ li r3, 0 /* 80057784 000533E4 48 00 00 08 */ b lbl_8005778C lbl_80057788: /* 80057788 000533E8 80 64 00 00 */ lwz r3, 0(r4) lbl_8005778C: /* 8005778C 000533EC 2C 03 00 00 */ cmpwi r3, 0 /* 80057790 000533F0 41 82 00 08 */ beq lbl_80057798 /* 80057794 000533F4 48 1A 90 C5 */ bl func_80200858 lbl_80057798: /* 80057798 000533F8 3C 80 1B 9B */ lis r4, 0x1B9B1A00@ha /* 8005779C 000533FC 38 60 04 01 */ li r3, 0x401 /* 800577A0 00053400 38 84 1A 00 */ addi r4, r4, 0x1B9B1A00@l /* 800577A4 00053404 4B FF E5 F5 */ bl func_80055D98 /* 800577A8 00053408 80 ED 81 E0 */ lwz r7, lbl_8063D4A0-_SDA_BASE_(r13) /* 800577AC 0005340C 38 80 00 00 */ li r4, 0 /* 800577B0 00053410 38 A0 00 00 */ li r5, 0 /* 800577B4 00053414 38 C0 00 00 */ li r6, 0 /* 800577B8 00053418 90 67 00 20 */ stw r3, 0x20(r7) /* 800577BC 0005341C 38 E0 FF FF */ li r7, -1 /* 800577C0 00053420 39 00 00 00 */ li r8, 0 /* 800577C4 00053424 39 20 00 01 */ li r9, 1 /* 800577C8 00053428 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800577CC 0005342C 39 40 00 00 */ li r10, 0 /* 800577D0 00053430 80 63 00 20 */ lwz r3, 0x20(r3) /* 800577D4 00053434 48 1F C4 65 */ bl func_80253C38 /* 800577D8 00053438 80 CD 81 E0 */ lwz r6, lbl_8063D4A0-_SDA_BASE_(r13) /* 800577DC 0005343C 38 80 00 0A */ li r4, 0xa /* 800577E0 00053440 38 A0 00 01 */ li r5, 1 /* 800577E4 00053444 B0 66 00 34 */ sth r3, 0x34(r6) /* 800577E8 00053448 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800577EC 0005344C A8 63 00 34 */ lha r3, 0x34(r3) /* 800577F0 00053450 48 1F C6 01 */ bl func_80253DF0 /* 800577F4 00053454 38 60 04 01 */ li r3, 0x401 /* 800577F8 00053458 3C 80 23 80 */ lis r4, 0x2380 /* 800577FC 0005345C 4B FF E5 9D */ bl func_80055D98 /* 80057800 00053460 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057804 00053464 90 64 00 24 */ stw r3, 0x24(r4) /* 80057808 00053468 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005780C 0005346C 83 E3 00 24 */ lwz r31, 0x24(r3) /* 80057810 00053470 7F E3 FB 78 */ mr r3, r31 /* 80057814 00053474 7F E4 FB 78 */ mr r4, r31 /* 80057818 00053478 48 18 BC C5 */ bl func_801E34DC /* 8005781C 0005347C 48 18 33 0D */ bl func_801DAB28 /* 80057820 00053480 2C 03 00 00 */ cmpwi r3, 0 /* 80057824 00053484 41 82 00 14 */ beq lbl_80057838 /* 80057828 00053488 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13) /* 8005782C 0005348C 38 80 00 14 */ li r4, 0x14 /* 80057830 00053490 48 18 34 65 */ bl func_801DAC94 /* 80057834 00053494 48 00 00 08 */ b lbl_8005783C lbl_80057838: /* 80057838 00053498 38 60 00 00 */ li r3, 0 lbl_8005783C: /* 8005783C 0005349C 2C 03 00 00 */ cmpwi r3, 0 /* 80057840 000534A0 41 82 00 0C */ beq lbl_8005784C /* 80057844 000534A4 7F E4 FB 78 */ mr r4, r31 /* 80057848 000534A8 48 1A 28 4D */ bl func_801FA094 lbl_8005784C: /* 8005784C 000534AC 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057850 000534B0 90 64 00 2C */ stw r3, 0x2c(r4) /* 80057854 000534B4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057858 000534B8 80 63 00 2C */ lwz r3, 0x2c(r3) /* 8005785C 000534BC 80 83 00 04 */ lwz r4, 4(r3) /* 80057860 000534C0 2C 04 00 00 */ cmpwi r4, 0 /* 80057864 000534C4 40 82 00 0C */ bne lbl_80057870 /* 80057868 000534C8 38 60 00 00 */ li r3, 0 /* 8005786C 000534CC 48 00 00 20 */ b lbl_8005788C lbl_80057870: /* 80057870 000534D0 80 63 00 00 */ lwz r3, 0(r3) /* 80057874 000534D4 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80057878 000534D8 2C 00 00 00 */ cmpwi r0, 0 /* 8005787C 000534DC 40 82 00 0C */ bne lbl_80057888 /* 80057880 000534E0 38 60 00 00 */ li r3, 0 /* 80057884 000534E4 48 00 00 08 */ b lbl_8005788C lbl_80057888: /* 80057888 000534E8 80 64 00 00 */ lwz r3, 0(r4) lbl_8005788C: /* 8005788C 000534EC 2C 03 00 00 */ cmpwi r3, 0 /* 80057890 000534F0 41 82 00 08 */ beq lbl_80057898 /* 80057894 000534F4 48 1A 8F C5 */ bl func_80200858 lbl_80057898: /* 80057898 000534F8 38 60 04 01 */ li r3, 0x401 /* 8005789C 000534FC 48 1F 1F F5 */ bl func_80249890 /* 800578A0 00053500 38 60 04 01 */ li r3, 0x401 /* 800578A4 00053504 48 18 3D D1 */ bl func_801DB674 lbl_800578A8: /* 800578A8 00053508 80 01 00 14 */ lwz r0, 0x14(r1) /* 800578AC 0005350C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800578B0 00053510 7C 08 03 A6 */ mtlr r0 /* 800578B4 00053514 38 21 00 10 */ addi r1, r1, 0x10 /* 800578B8 00053518 4E 80 00 20 */ blr .global func_800578BC func_800578BC: /* 800578BC 0005351C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800578C0 00053520 7C 08 02 A6 */ mflr r0 /* 800578C4 00053524 90 01 00 14 */ stw r0, 0x14(r1) /* 800578C8 00053528 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800578CC 0005352C 80 03 00 08 */ lwz r0, 8(r3) /* 800578D0 00053530 54 00 47 BE */ rlwinm r0, r0, 8, 0x1e, 0x1f /* 800578D4 00053534 2C 00 00 03 */ cmpwi r0, 3 /* 800578D8 00053538 41 82 00 20 */ beq lbl_800578F8 /* 800578DC 0005353C 40 80 00 24 */ bge lbl_80057900 /* 800578E0 00053540 2C 00 00 02 */ cmpwi r0, 2 /* 800578E4 00053544 40 80 00 08 */ bge lbl_800578EC /* 800578E8 00053548 48 00 00 18 */ b lbl_80057900 lbl_800578EC: /* 800578EC 0005354C 38 60 00 02 */ li r3, 2 /* 800578F0 00053550 48 00 06 C5 */ bl func_80057FB4 /* 800578F4 00053554 48 00 00 0C */ b lbl_80057900 lbl_800578F8: /* 800578F8 00053558 38 60 00 03 */ li r3, 3 /* 800578FC 0005355C 48 00 06 B9 */ bl func_80057FB4 lbl_80057900: /* 80057900 00053560 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057904 00053564 80 63 00 28 */ lwz r3, 0x28(r3) /* 80057908 00053568 2C 03 00 00 */ cmpwi r3, 0 /* 8005790C 0005356C 41 82 00 20 */ beq lbl_8005792C /* 80057910 00053570 38 80 00 01 */ li r4, 1 /* 80057914 00053574 48 1A 29 81 */ bl func_801FA294 /* 80057918 00053578 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005791C 0005357C 38 00 00 00 */ li r0, 0 /* 80057920 00053580 90 03 00 28 */ stw r0, 0x28(r3) /* 80057924 00053584 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057928 00053588 98 03 04 0D */ stb r0, 0x40d(r3) lbl_8005792C: /* 8005792C 0005358C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057930 00053590 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80057934 00053594 2C 03 00 00 */ cmpwi r3, 0 /* 80057938 00053598 41 82 00 18 */ beq lbl_80057950 /* 8005793C 0005359C 38 80 00 01 */ li r4, 1 /* 80057940 000535A0 48 1A 29 55 */ bl func_801FA294 /* 80057944 000535A4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057948 000535A8 38 00 00 00 */ li r0, 0 /* 8005794C 000535AC 90 03 00 2C */ stw r0, 0x2c(r3) lbl_80057950: /* 80057950 000535B0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057954 000535B4 80 63 00 30 */ lwz r3, 0x30(r3) /* 80057958 000535B8 2C 03 00 00 */ cmpwi r3, 0 /* 8005795C 000535BC 40 82 00 08 */ bne lbl_80057964 /* 80057960 000535C0 48 1A B0 71 */ bl func_802029D0 lbl_80057964: /* 80057964 000535C4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057968 000535C8 38 00 00 00 */ li r0, 0 /* 8005796C 000535CC 90 03 00 30 */ stw r0, 0x30(r3) /* 80057970 000535D0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057974 000535D4 A0 63 00 34 */ lhz r3, 0x34(r3) /* 80057978 000535D8 48 1F C3 55 */ bl func_80253CCC /* 8005797C 000535DC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057980 000535E0 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80057984 000535E4 2C 03 00 00 */ cmpwi r3, 0 /* 80057988 000535E8 41 82 00 14 */ beq lbl_8005799C /* 8005798C 000535EC 48 18 BE 65 */ bl func_801E37F0 /* 80057990 000535F0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057994 000535F4 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80057998 000535F8 4B FF E4 99 */ bl func_80055E30 lbl_8005799C: /* 8005799C 000535FC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800579A0 00053600 80 63 00 20 */ lwz r3, 0x20(r3) /* 800579A4 00053604 2C 03 00 00 */ cmpwi r3, 0 /* 800579A8 00053608 41 82 00 08 */ beq lbl_800579B0 /* 800579AC 0005360C 4B FF E4 85 */ bl func_80055E30 lbl_800579B0: /* 800579B0 00053610 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800579B4 00053614 80 63 00 24 */ lwz r3, 0x24(r3) /* 800579B8 00053618 2C 03 00 00 */ cmpwi r3, 0 /* 800579BC 0005361C 41 82 00 14 */ beq lbl_800579D0 /* 800579C0 00053620 48 18 BE 31 */ bl func_801E37F0 /* 800579C4 00053624 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800579C8 00053628 80 63 00 24 */ lwz r3, 0x24(r3) /* 800579CC 0005362C 4B FF E4 65 */ bl func_80055E30 lbl_800579D0: /* 800579D0 00053630 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800579D4 00053634 38 00 00 00 */ li r0, 0 /* 800579D8 00053638 90 03 00 1C */ stw r0, 0x1c(r3) /* 800579DC 0005363C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800579E0 00053640 90 03 00 20 */ stw r0, 0x20(r3) /* 800579E4 00053644 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800579E8 00053648 90 03 00 24 */ stw r0, 0x24(r3) /* 800579EC 0005364C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800579F0 00053650 7C 08 03 A6 */ mtlr r0 /* 800579F4 00053654 38 21 00 10 */ addi r1, r1, 0x10 /* 800579F8 00053658 4E 80 00 20 */ blr .global func_800579FC func_800579FC: /* 800579FC 0005365C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80057A00 00053660 7C 08 02 A6 */ mflr r0 /* 80057A04 00053664 90 01 00 34 */ stw r0, 0x34(r1) /* 80057A08 00053668 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80057A0C 0005366C 93 C1 00 28 */ stw r30, 0x28(r1) /* 80057A10 00053670 93 A1 00 24 */ stw r29, 0x24(r1) /* 80057A14 00053674 93 81 00 20 */ stw r28, 0x20(r1) /* 80057A18 00053678 7C 7C 1B 78 */ mr r28, r3 /* 80057A1C 0005367C 38 60 00 02 */ li r3, 2 /* 80057A20 00053680 48 1E 36 39 */ bl func_8023B058 /* 80057A24 00053684 2C 1C 00 02 */ cmpwi r28, 2 /* 80057A28 00053688 7C 7F 1B 78 */ mr r31, r3 /* 80057A2C 0005368C 41 82 00 F0 */ beq lbl_80057B1C /* 80057A30 00053690 40 80 00 10 */ bge lbl_80057A40 /* 80057A34 00053694 2C 1C 00 01 */ cmpwi r28, 1 /* 80057A38 00053698 40 80 00 14 */ bge lbl_80057A4C /* 80057A3C 0005369C 48 00 05 58 */ b lbl_80057F94 lbl_80057A40: /* 80057A40 000536A0 2C 1C 00 04 */ cmpwi r28, 4 /* 80057A44 000536A4 40 80 05 50 */ bge lbl_80057F94 /* 80057A48 000536A8 48 00 02 94 */ b lbl_80057CDC lbl_80057A4C: /* 80057A4C 000536AC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057A50 000536B0 80 03 00 08 */ lwz r0, 8(r3) /* 80057A54 000536B4 54 00 47 BE */ rlwinm r0, r0, 8, 0x1e, 0x1f /* 80057A58 000536B8 28 00 00 01 */ cmplwi r0, 1 /* 80057A5C 000536BC 41 82 05 38 */ beq lbl_80057F94 /* 80057A60 000536C0 28 00 00 02 */ cmplwi r0, 2 /* 80057A64 000536C4 40 82 00 8C */ bne lbl_80057AF0 /* 80057A68 000536C8 38 60 00 02 */ li r3, 2 /* 80057A6C 000536CC 48 1E 35 ED */ bl func_8023B058 /* 80057A70 000536D0 2C 03 00 00 */ cmpwi r3, 0 /* 80057A74 000536D4 41 82 00 20 */ beq lbl_80057A94 /* 80057A78 000536D8 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057A7C 000536DC 80 84 00 38 */ lwz r4, 0x38(r4) /* 80057A80 000536E0 2C 04 00 00 */ cmpwi r4, 0 /* 80057A84 000536E4 41 82 00 10 */ beq lbl_80057A94 /* 80057A88 000536E8 38 00 00 00 */ li r0, 0 /* 80057A8C 000536EC 90 03 00 20 */ stw r0, 0x20(r3) /* 80057A90 000536F0 90 83 00 0C */ stw r4, 0xc(r3) lbl_80057A94: /* 80057A94 000536F4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057A98 000536F8 80 63 00 28 */ lwz r3, 0x28(r3) /* 80057A9C 000536FC 80 83 00 04 */ lwz r4, 4(r3) /* 80057AA0 00053700 2C 04 00 00 */ cmpwi r4, 0 /* 80057AA4 00053704 40 82 00 0C */ bne lbl_80057AB0 /* 80057AA8 00053708 38 60 00 00 */ li r3, 0 /* 80057AAC 0005370C 48 00 00 20 */ b lbl_80057ACC lbl_80057AB0: /* 80057AB0 00053710 80 63 00 00 */ lwz r3, 0(r3) /* 80057AB4 00053714 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80057AB8 00053718 2C 00 00 00 */ cmpwi r0, 0 /* 80057ABC 0005371C 40 82 00 0C */ bne lbl_80057AC8 /* 80057AC0 00053720 38 60 00 00 */ li r3, 0 /* 80057AC4 00053724 48 00 00 08 */ b lbl_80057ACC lbl_80057AC8: /* 80057AC8 00053728 80 64 00 00 */ lwz r3, 0(r4) lbl_80057ACC: /* 80057ACC 0005372C 2C 03 00 00 */ cmpwi r3, 0 /* 80057AD0 00053730 41 82 00 08 */ beq lbl_80057AD8 /* 80057AD4 00053734 48 1A 8D 85 */ bl func_80200858 lbl_80057AD8: /* 80057AD8 00053738 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057ADC 0005373C 80 63 00 30 */ lwz r3, 0x30(r3) /* 80057AE0 00053740 48 1A AE F1 */ bl func_802029D0 /* 80057AE4 00053744 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057AE8 00053748 38 00 00 00 */ li r0, 0 /* 80057AEC 0005374C 98 03 04 0D */ stb r0, 0x40d(r3) lbl_80057AF0: /* 80057AF0 00053750 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057AF4 00053754 38 C0 00 01 */ li r6, 1 /* 80057AF8 00053758 38 80 00 08 */ li r4, 8 /* 80057AFC 0005375C 38 A0 00 01 */ li r5, 1 /* 80057B00 00053760 80 03 00 08 */ lwz r0, 8(r3) /* 80057B04 00053764 50 C0 C1 8E */ rlwimi r0, r6, 0x18, 6, 7 /* 80057B08 00053768 90 03 00 08 */ stw r0, 8(r3) /* 80057B0C 0005376C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057B10 00053770 A8 63 00 34 */ lha r3, 0x34(r3) /* 80057B14 00053774 48 1F C2 DD */ bl func_80253DF0 /* 80057B18 00053778 48 00 04 7C */ b lbl_80057F94 lbl_80057B1C: /* 80057B1C 0005377C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057B20 00053780 80 03 00 08 */ lwz r0, 8(r3) /* 80057B24 00053784 54 00 47 BE */ rlwinm r0, r0, 8, 0x1e, 0x1f /* 80057B28 00053788 28 00 00 02 */ cmplwi r0, 2 /* 80057B2C 0005378C 41 82 04 68 */ beq lbl_80057F94 /* 80057B30 00053790 28 00 00 01 */ cmplwi r0, 1 /* 80057B34 00053794 40 82 00 14 */ bne lbl_80057B48 /* 80057B38 00053798 A8 63 00 34 */ lha r3, 0x34(r3) /* 80057B3C 0005379C 38 80 00 08 */ li r4, 8 /* 80057B40 000537A0 38 A0 00 00 */ li r5, 0 /* 80057B44 000537A4 48 1F C2 AD */ bl func_80253DF0 lbl_80057B48: /* 80057B48 000537A8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057B4C 000537AC 80 03 00 08 */ lwz r0, 8(r3) /* 80057B50 000537B0 54 00 47 BE */ rlwinm r0, r0, 8, 0x1e, 0x1f /* 80057B54 000537B4 28 00 00 03 */ cmplwi r0, 3 /* 80057B58 000537B8 40 82 00 0C */ bne lbl_80057B64 /* 80057B5C 000537BC 38 60 00 03 */ li r3, 3 /* 80057B60 000537C0 48 00 04 55 */ bl func_80057FB4 lbl_80057B64: /* 80057B64 000537C4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057B68 000537C8 38 80 00 02 */ li r4, 2 /* 80057B6C 000537CC 2C 1F 00 00 */ cmpwi r31, 0 /* 80057B70 000537D0 80 03 00 08 */ lwz r0, 8(r3) /* 80057B74 000537D4 50 80 C1 8E */ rlwimi r0, r4, 0x18, 6, 7 /* 80057B78 000537D8 90 03 00 08 */ stw r0, 8(r3) /* 80057B7C 000537DC 41 82 00 24 */ beq lbl_80057BA0 /* 80057B80 000537E0 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80057B84 000537E4 2C 00 00 00 */ cmpwi r0, 0 /* 80057B88 000537E8 40 82 00 0C */ bne lbl_80057B94 /* 80057B8C 000537EC 80 1F 00 0C */ lwz r0, 0xc(r31) /* 80057B90 000537F0 48 00 00 08 */ b lbl_80057B98 lbl_80057B94: /* 80057B94 000537F4 80 1F 00 24 */ lwz r0, 0x24(r31) lbl_80057B98: /* 80057B98 000537F8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057B9C 000537FC 90 03 00 38 */ stw r0, 0x38(r3) lbl_80057BA0: /* 80057BA0 00053800 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057BA4 00053804 80 04 00 28 */ lwz r0, 0x28(r4) /* 80057BA8 00053808 2C 00 00 00 */ cmpwi r0, 0 /* 80057BAC 0005380C 41 82 03 E8 */ beq lbl_80057F94 /* 80057BB0 00053810 80 6D A1 A8 */ lwz r3, lbl_8063F468-_SDA_BASE_(r13) /* 80057BB4 00053814 80 03 01 24 */ lwz r0, 0x124(r3) /* 80057BB8 00053818 90 04 00 30 */ stw r0, 0x30(r4) /* 80057BBC 0005381C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057BC0 00053820 80 63 00 28 */ lwz r3, 0x28(r3) /* 80057BC4 00053824 48 1A AE 0D */ bl func_802029D0 /* 80057BC8 00053828 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057BCC 0005382C 38 00 00 01 */ li r0, 1 /* 80057BD0 00053830 C0 02 85 60 */ lfs f0, lbl_80640B60-_SDA2_BASE_(r2) /* 80057BD4 00053834 38 80 00 00 */ li r4, 0 /* 80057BD8 00053838 98 03 04 0D */ stb r0, 0x40d(r3) /* 80057BDC 0005383C 38 00 00 32 */ li r0, 0x32 /* 80057BE0 00053840 C0 22 85 7C */ lfs f1, lbl_80640B7C-_SDA2_BASE_(r2) /* 80057BE4 00053844 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057BE8 00053848 D0 01 00 10 */ stfs f0, 0x10(r1) /* 80057BEC 0005384C D0 23 04 2C */ stfs f1, 0x42c(r3) /* 80057BF0 00053850 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057BF4 00053854 D0 01 00 14 */ stfs f0, 0x14(r1) /* 80057BF8 00053858 98 83 04 30 */ stb r4, 0x430(r3) /* 80057BFC 0005385C 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057C00 00053860 90 83 04 34 */ stw r4, 0x434(r3) /* 80057C04 00053864 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057C08 00053868 98 03 04 31 */ stb r0, 0x431(r3) /* 80057C0C 0005386C 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057C10 00053870 D0 03 04 24 */ stfs f0, 0x424(r3) /* 80057C14 00053874 D0 03 04 28 */ stfs f0, 0x428(r3) /* 80057C18 00053878 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057C1C 0005387C 80 63 00 28 */ lwz r3, 0x28(r3) /* 80057C20 00053880 80 83 00 04 */ lwz r4, 4(r3) /* 80057C24 00053884 2C 04 00 00 */ cmpwi r4, 0 /* 80057C28 00053888 40 82 00 0C */ bne lbl_80057C34 /* 80057C2C 0005388C 3B C0 00 00 */ li r30, 0 /* 80057C30 00053890 48 00 00 20 */ b lbl_80057C50 lbl_80057C34: /* 80057C34 00053894 80 63 00 00 */ lwz r3, 0(r3) /* 80057C38 00053898 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80057C3C 0005389C 2C 00 00 00 */ cmpwi r0, 0 /* 80057C40 000538A0 40 82 00 0C */ bne lbl_80057C4C /* 80057C44 000538A4 3B C0 00 00 */ li r30, 0 /* 80057C48 000538A8 48 00 00 08 */ b lbl_80057C50 lbl_80057C4C: /* 80057C4C 000538AC 83 C4 00 00 */ lwz r30, 0(r4) lbl_80057C50: /* 80057C50 000538B0 2C 1E 00 00 */ cmpwi r30, 0 /* 80057C54 000538B4 41 82 03 40 */ beq lbl_80057F94 /* 80057C58 000538B8 7F C3 F3 78 */ mr r3, r30 /* 80057C5C 000538BC 48 1A 89 39 */ bl func_80200594 /* 80057C60 000538C0 80 7E 00 10 */ lwz r3, 0x10(r30) /* 80057C64 000538C4 2C 03 00 00 */ cmpwi r3, 0 /* 80057C68 000538C8 40 82 00 0C */ bne lbl_80057C74 /* 80057C6C 000538CC 38 60 00 00 */ li r3, 0 /* 80057C70 000538D0 48 00 00 4C */ b lbl_80057CBC lbl_80057C74: /* 80057C74 000538D4 A0 1E 00 E0 */ lhz r0, 0xe0(r30) /* 80057C78 000538D8 2C 00 00 00 */ cmpwi r0, 0 /* 80057C7C 000538DC 40 82 00 0C */ bne lbl_80057C88 /* 80057C80 000538E0 38 60 00 00 */ li r3, 0 /* 80057C84 000538E4 48 00 00 38 */ b lbl_80057CBC lbl_80057C88: /* 80057C88 000538E8 80 9E 00 08 */ lwz r4, 8(r30) /* 80057C8C 000538EC A0 63 00 00 */ lhz r3, 0(r3) /* 80057C90 000538F0 2C 04 00 00 */ cmpwi r4, 0 /* 80057C94 000538F4 40 82 00 0C */ bne lbl_80057CA0 /* 80057C98 000538F8 38 60 00 00 */ li r3, 0 /* 80057C9C 000538FC 48 00 00 20 */ b lbl_80057CBC lbl_80057CA0: /* 80057CA0 00053900 A0 1E 00 DE */ lhz r0, 0xde(r30) /* 80057CA4 00053904 7C 03 00 40 */ cmplw r3, r0 /* 80057CA8 00053908 41 80 00 0C */ blt lbl_80057CB4 /* 80057CAC 0005390C 38 60 00 00 */ li r3, 0 /* 80057CB0 00053910 48 00 00 0C */ b lbl_80057CBC lbl_80057CB4: /* 80057CB4 00053914 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 80057CB8 00053918 7C 64 00 2E */ lwzx r3, r4, r0 lbl_80057CBC: /* 80057CBC 0005391C 2C 1F 00 00 */ cmpwi r31, 0 /* 80057CC0 00053920 41 82 02 D4 */ beq lbl_80057F94 /* 80057CC4 00053924 2C 03 00 00 */ cmpwi r3, 0 /* 80057CC8 00053928 41 82 02 CC */ beq lbl_80057F94 /* 80057CCC 0005392C 38 00 00 00 */ li r0, 0 /* 80057CD0 00053930 90 1F 00 20 */ stw r0, 0x20(r31) /* 80057CD4 00053934 90 7F 00 0C */ stw r3, 0xc(r31) /* 80057CD8 00053938 48 00 02 BC */ b lbl_80057F94 lbl_80057CDC: /* 80057CDC 0005393C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057CE0 00053940 80 03 00 08 */ lwz r0, 8(r3) /* 80057CE4 00053944 54 00 47 BE */ rlwinm r0, r0, 8, 0x1e, 0x1f /* 80057CE8 00053948 28 00 00 03 */ cmplwi r0, 3 /* 80057CEC 0005394C 41 82 02 A8 */ beq lbl_80057F94 /* 80057CF0 00053950 28 00 00 01 */ cmplwi r0, 1 /* 80057CF4 00053954 40 82 00 14 */ bne lbl_80057D08 /* 80057CF8 00053958 A8 63 00 34 */ lha r3, 0x34(r3) /* 80057CFC 0005395C 38 80 00 08 */ li r4, 8 /* 80057D00 00053960 38 A0 00 00 */ li r5, 0 /* 80057D04 00053964 48 1F C0 ED */ bl func_80253DF0 lbl_80057D08: /* 80057D08 00053968 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057D0C 0005396C 80 03 00 08 */ lwz r0, 8(r3) /* 80057D10 00053970 54 00 47 BE */ rlwinm r0, r0, 8, 0x1e, 0x1f /* 80057D14 00053974 28 00 00 02 */ cmplwi r0, 2 /* 80057D18 00053978 40 82 00 0C */ bne lbl_80057D24 /* 80057D1C 0005397C 38 60 00 02 */ li r3, 2 /* 80057D20 00053980 48 00 02 95 */ bl func_80057FB4 lbl_80057D24: /* 80057D24 00053984 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057D28 00053988 2C 1F 00 00 */ cmpwi r31, 0 /* 80057D2C 0005398C 80 03 00 08 */ lwz r0, 8(r3) /* 80057D30 00053990 64 00 03 00 */ oris r0, r0, 0x300 /* 80057D34 00053994 90 03 00 08 */ stw r0, 8(r3) /* 80057D38 00053998 41 82 00 24 */ beq lbl_80057D5C /* 80057D3C 0005399C 80 1F 00 20 */ lwz r0, 0x20(r31) /* 80057D40 000539A0 2C 00 00 00 */ cmpwi r0, 0 /* 80057D44 000539A4 40 82 00 0C */ bne lbl_80057D50 /* 80057D48 000539A8 80 1F 00 0C */ lwz r0, 0xc(r31) /* 80057D4C 000539AC 48 00 00 08 */ b lbl_80057D54 lbl_80057D50: /* 80057D50 000539B0 80 1F 00 24 */ lwz r0, 0x24(r31) lbl_80057D54: /* 80057D54 000539B4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057D58 000539B8 90 03 00 38 */ stw r0, 0x38(r3) lbl_80057D5C: /* 80057D5C 000539BC 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057D60 000539C0 80 04 00 2C */ lwz r0, 0x2c(r4) /* 80057D64 000539C4 2C 00 00 00 */ cmpwi r0, 0 /* 80057D68 000539C8 41 82 02 2C */ beq lbl_80057F94 /* 80057D6C 000539CC 80 6D A1 A8 */ lwz r3, lbl_8063F468-_SDA_BASE_(r13) /* 80057D70 000539D0 80 03 01 24 */ lwz r0, 0x124(r3) /* 80057D74 000539D4 90 04 00 30 */ stw r0, 0x30(r4) /* 80057D78 000539D8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057D7C 000539DC 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80057D80 000539E0 48 1A AC 51 */ bl func_802029D0 /* 80057D84 000539E4 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057D88 000539E8 38 A0 00 01 */ li r5, 1 /* 80057D8C 000539EC C0 02 85 80 */ lfs f0, lbl_80640B80-_SDA2_BASE_(r2) /* 80057D90 000539F0 38 00 00 28 */ li r0, 0x28 /* 80057D94 000539F4 98 A3 04 0D */ stb r5, 0x40d(r3) /* 80057D98 000539F8 38 80 00 00 */ li r4, 0 /* 80057D9C 000539FC 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DA0 00053A00 D0 03 04 2C */ stfs f0, 0x42c(r3) /* 80057DA4 00053A04 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DA8 00053A08 98 03 04 31 */ stb r0, 0x431(r3) /* 80057DAC 00053A0C 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DB0 00053A10 98 83 04 30 */ stb r4, 0x430(r3) /* 80057DB4 00053A14 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DB8 00053A18 80 03 04 18 */ lwz r0, 0x418(r3) /* 80057DBC 00053A1C 2C 00 00 00 */ cmpwi r0, 0 /* 80057DC0 00053A20 41 82 00 0C */ beq lbl_80057DCC /* 80057DC4 00053A24 98 A3 04 0E */ stb r5, 0x40e(r3) /* 80057DC8 00053A28 48 00 00 08 */ b lbl_80057DD0 lbl_80057DCC: /* 80057DCC 00053A2C 98 83 04 0E */ stb r4, 0x40e(r3) lbl_80057DD0: /* 80057DD0 00053A30 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DD4 00053A34 38 00 00 00 */ li r0, 0 /* 80057DD8 00053A38 C0 02 85 60 */ lfs f0, lbl_80640B60-_SDA2_BASE_(r2) /* 80057DDC 00053A3C 90 03 04 34 */ stw r0, 0x434(r3) /* 80057DE0 00053A40 C0 22 85 6C */ lfs f1, lbl_80640B6C-_SDA2_BASE_(r2) /* 80057DE4 00053A44 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DE8 00053A48 D0 01 00 08 */ stfs f0, 8(r1) /* 80057DEC 00053A4C D0 23 04 50 */ stfs f1, 0x450(r3) /* 80057DF0 00053A50 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 80057DF4 00053A54 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80057DF8 00053A58 D0 03 04 24 */ stfs f0, 0x424(r3) /* 80057DFC 00053A5C D0 03 04 28 */ stfs f0, 0x428(r3) /* 80057E00 00053A60 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057E04 00053A64 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80057E08 00053A68 80 83 00 04 */ lwz r4, 4(r3) /* 80057E0C 00053A6C 2C 04 00 00 */ cmpwi r4, 0 /* 80057E10 00053A70 40 82 00 0C */ bne lbl_80057E1C /* 80057E14 00053A74 3B C0 00 00 */ li r30, 0 /* 80057E18 00053A78 48 00 00 20 */ b lbl_80057E38 lbl_80057E1C: /* 80057E1C 00053A7C 80 63 00 00 */ lwz r3, 0(r3) /* 80057E20 00053A80 A0 03 00 18 */ lhz r0, 0x18(r3) /* 80057E24 00053A84 2C 00 00 00 */ cmpwi r0, 0 /* 80057E28 00053A88 40 82 00 0C */ bne lbl_80057E34 /* 80057E2C 00053A8C 3B C0 00 00 */ li r30, 0 /* 80057E30 00053A90 48 00 00 08 */ b lbl_80057E38 lbl_80057E34: /* 80057E34 00053A94 83 C4 00 00 */ lwz r30, 0(r4) lbl_80057E38: /* 80057E38 00053A98 80 6D A1 A8 */ lwz r3, lbl_8063F468-_SDA_BASE_(r13) /* 80057E3C 00053A9C 83 A3 01 38 */ lwz r29, 0x138(r3) /* 80057E40 00053AA0 57 BC 86 3E */ rlwinm r28, r29, 0x10, 0x18, 0x1f /* 80057E44 00053AA4 7F 83 E3 78 */ mr r3, r28 /* 80057E48 00053AA8 48 1E 32 11 */ bl func_8023B058 /* 80057E4C 00053AAC 2C 03 00 00 */ cmpwi r3, 0 /* 80057E50 00053AB0 41 82 00 10 */ beq lbl_80057E60 /* 80057E54 00053AB4 7F A4 EB 78 */ mr r4, r29 /* 80057E58 00053AB8 48 1E 34 D9 */ bl func_8023B330 /* 80057E5C 00053ABC 48 00 00 08 */ b lbl_80057E64 lbl_80057E60: /* 80057E60 00053AC0 38 60 00 00 */ li r3, 0 lbl_80057E64: /* 80057E64 00053AC4 2C 03 00 00 */ cmpwi r3, 0 /* 80057E68 00053AC8 40 82 00 1C */ bne lbl_80057E84 /* 80057E6C 00053ACC 7F 83 E3 78 */ mr r3, r28 /* 80057E70 00053AD0 48 1E 31 E9 */ bl func_8023B058 /* 80057E74 00053AD4 2C 03 00 00 */ cmpwi r3, 0 /* 80057E78 00053AD8 41 82 00 0C */ beq lbl_80057E84 /* 80057E7C 00053ADC 7F A4 EB 78 */ mr r4, r29 /* 80057E80 00053AE0 48 1E 35 39 */ bl func_8023B3B8 lbl_80057E84: /* 80057E84 00053AE4 80 6D A1 A8 */ lwz r3, lbl_8063F468-_SDA_BASE_(r13) /* 80057E88 00053AE8 83 A3 01 44 */ lwz r29, 0x144(r3) /* 80057E8C 00053AEC 57 BC 86 3E */ rlwinm r28, r29, 0x10, 0x18, 0x1f /* 80057E90 00053AF0 7F 83 E3 78 */ mr r3, r28 /* 80057E94 00053AF4 48 1E 31 C5 */ bl func_8023B058 /* 80057E98 00053AF8 2C 03 00 00 */ cmpwi r3, 0 /* 80057E9C 00053AFC 41 82 00 10 */ beq lbl_80057EAC /* 80057EA0 00053B00 7F A4 EB 78 */ mr r4, r29 /* 80057EA4 00053B04 48 1E 34 8D */ bl func_8023B330 /* 80057EA8 00053B08 48 00 00 08 */ b lbl_80057EB0 lbl_80057EAC: /* 80057EAC 00053B0C 38 60 00 00 */ li r3, 0 lbl_80057EB0: /* 80057EB0 00053B10 2C 03 00 00 */ cmpwi r3, 0 /* 80057EB4 00053B14 40 82 00 1C */ bne lbl_80057ED0 /* 80057EB8 00053B18 7F 83 E3 78 */ mr r3, r28 /* 80057EBC 00053B1C 48 1E 31 9D */ bl func_8023B058 /* 80057EC0 00053B20 2C 03 00 00 */ cmpwi r3, 0 /* 80057EC4 00053B24 41 82 00 0C */ beq lbl_80057ED0 /* 80057EC8 00053B28 7F A4 EB 78 */ mr r4, r29 /* 80057ECC 00053B2C 48 1E 34 ED */ bl func_8023B3B8 lbl_80057ED0: /* 80057ED0 00053B30 2C 1E 00 00 */ cmpwi r30, 0 /* 80057ED4 00053B34 41 82 00 C0 */ beq lbl_80057F94 /* 80057ED8 00053B38 7F C3 F3 78 */ mr r3, r30 /* 80057EDC 00053B3C 48 1A 86 B9 */ bl func_80200594 /* 80057EE0 00053B40 80 7E 00 10 */ lwz r3, 0x10(r30) /* 80057EE4 00053B44 2C 03 00 00 */ cmpwi r3, 0 /* 80057EE8 00053B48 40 82 00 0C */ bne lbl_80057EF4 /* 80057EEC 00053B4C 3B C0 00 00 */ li r30, 0 /* 80057EF0 00053B50 48 00 00 4C */ b lbl_80057F3C lbl_80057EF4: /* 80057EF4 00053B54 A0 1E 00 E0 */ lhz r0, 0xe0(r30) /* 80057EF8 00053B58 2C 00 00 00 */ cmpwi r0, 0 /* 80057EFC 00053B5C 40 82 00 0C */ bne lbl_80057F08 /* 80057F00 00053B60 3B C0 00 00 */ li r30, 0 /* 80057F04 00053B64 48 00 00 38 */ b lbl_80057F3C lbl_80057F08: /* 80057F08 00053B68 80 9E 00 08 */ lwz r4, 8(r30) /* 80057F0C 00053B6C A0 63 00 00 */ lhz r3, 0(r3) /* 80057F10 00053B70 2C 04 00 00 */ cmpwi r4, 0 /* 80057F14 00053B74 40 82 00 0C */ bne lbl_80057F20 /* 80057F18 00053B78 3B C0 00 00 */ li r30, 0 /* 80057F1C 00053B7C 48 00 00 20 */ b lbl_80057F3C lbl_80057F20: /* 80057F20 00053B80 A0 1E 00 DE */ lhz r0, 0xde(r30) /* 80057F24 00053B84 7C 03 00 40 */ cmplw r3, r0 /* 80057F28 00053B88 41 80 00 0C */ blt lbl_80057F34 /* 80057F2C 00053B8C 3B C0 00 00 */ li r30, 0 /* 80057F30 00053B90 48 00 00 0C */ b lbl_80057F3C lbl_80057F34: /* 80057F34 00053B94 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 80057F38 00053B98 7F C4 00 2E */ lwzx r30, r4, r0 lbl_80057F3C: /* 80057F3C 00053B9C 2C 1F 00 00 */ cmpwi r31, 0 /* 80057F40 00053BA0 41 82 00 54 */ beq lbl_80057F94 /* 80057F44 00053BA4 2C 1E 00 00 */ cmpwi r30, 0 /* 80057F48 00053BA8 41 82 00 4C */ beq lbl_80057F94 /* 80057F4C 00053BAC 38 00 00 00 */ li r0, 0 /* 80057F50 00053BB0 7F C3 F3 78 */ mr r3, r30 /* 80057F54 00053BB4 90 1F 00 20 */ stw r0, 0x20(r31) /* 80057F58 00053BB8 38 80 00 00 */ li r4, 0 /* 80057F5C 00053BBC 93 DF 00 0C */ stw r30, 0xc(r31) /* 80057F60 00053BC0 81 9E 01 00 */ lwz r12, 0x100(r30) /* 80057F64 00053BC4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80057F68 00053BC8 7D 89 03 A6 */ mtctr r12 /* 80057F6C 00053BCC 4E 80 04 21 */ bctrl /* 80057F70 00053BD0 80 1E 01 04 */ lwz r0, 0x104(r30) /* 80057F74 00053BD4 54 00 07 BE */ clrlwi r0, r0, 0x1e /* 80057F78 00053BD8 28 00 00 01 */ cmplwi r0, 1 /* 80057F7C 00053BDC 40 82 00 18 */ bne lbl_80057F94 /* 80057F80 00053BE0 C0 02 85 84 */ lfs f0, lbl_80640B84-_SDA2_BASE_(r2) /* 80057F84 00053BE4 D0 1E 01 68 */ stfs f0, 0x168(r30) /* 80057F88 00053BE8 80 1E 01 04 */ lwz r0, 0x104(r30) /* 80057F8C 00053BEC 60 00 00 08 */ ori r0, r0, 8 /* 80057F90 00053BF0 90 1E 01 04 */ stw r0, 0x104(r30) lbl_80057F94: /* 80057F94 00053BF4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80057F98 00053BF8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80057F9C 00053BFC 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80057FA0 00053C00 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80057FA4 00053C04 83 81 00 20 */ lwz r28, 0x20(r1) /* 80057FA8 00053C08 7C 08 03 A6 */ mtlr r0 /* 80057FAC 00053C0C 38 21 00 30 */ addi r1, r1, 0x30 /* 80057FB0 00053C10 4E 80 00 20 */ blr .global func_80057FB4 func_80057FB4: /* 80057FB4 00053C14 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80057FB8 00053C18 7C 08 02 A6 */ mflr r0 /* 80057FBC 00053C1C 90 01 00 14 */ stw r0, 0x14(r1) /* 80057FC0 00053C20 93 E1 00 0C */ stw r31, 0xc(r1) /* 80057FC4 00053C24 7C 7F 1B 78 */ mr r31, r3 /* 80057FC8 00053C28 38 60 00 02 */ li r3, 2 /* 80057FCC 00053C2C 48 1E 30 8D */ bl func_8023B058 /* 80057FD0 00053C30 2C 1F 00 02 */ cmpwi r31, 2 /* 80057FD4 00053C34 41 82 00 54 */ beq lbl_80058028 /* 80057FD8 00053C38 40 80 00 10 */ bge lbl_80057FE8 /* 80057FDC 00053C3C 2C 1F 00 01 */ cmpwi r31, 1 /* 80057FE0 00053C40 40 80 00 14 */ bge lbl_80057FF4 /* 80057FE4 00053C44 48 00 01 80 */ b lbl_80058164 lbl_80057FE8: /* 80057FE8 00053C48 2C 1F 00 04 */ cmpwi r31, 4 /* 80057FEC 00053C4C 40 80 01 78 */ bge lbl_80058164 /* 80057FF0 00053C50 48 00 00 D8 */ b lbl_800580C8 lbl_80057FF4: /* 80057FF4 00053C54 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80057FF8 00053C58 80 03 00 20 */ lwz r0, 0x20(r3) /* 80057FFC 00053C5C 2C 00 00 00 */ cmpwi r0, 0 /* 80058000 00053C60 41 82 01 64 */ beq lbl_80058164 /* 80058004 00053C64 A8 63 00 34 */ lha r3, 0x34(r3) /* 80058008 00053C68 38 80 00 08 */ li r4, 8 /* 8005800C 00053C6C 38 A0 00 00 */ li r5, 0 /* 80058010 00053C70 48 1F BD E1 */ bl func_80253DF0 /* 80058014 00053C74 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058018 00053C78 80 03 00 08 */ lwz r0, 8(r3) /* 8005801C 00053C7C 54 00 02 0A */ rlwinm r0, r0, 0, 8, 5 /* 80058020 00053C80 90 03 00 08 */ stw r0, 8(r3) /* 80058024 00053C84 48 00 01 40 */ b lbl_80058164 lbl_80058028: /* 80058028 00053C88 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005802C 00053C8C 80 04 00 1C */ lwz r0, 0x1c(r4) /* 80058030 00053C90 2C 00 00 00 */ cmpwi r0, 0 /* 80058034 00053C94 41 82 01 30 */ beq lbl_80058164 /* 80058038 00053C98 2C 03 00 00 */ cmpwi r3, 0 /* 8005803C 00053C9C 41 82 00 1C */ beq lbl_80058058 /* 80058040 00053CA0 80 84 00 38 */ lwz r4, 0x38(r4) /* 80058044 00053CA4 2C 04 00 00 */ cmpwi r4, 0 /* 80058048 00053CA8 41 82 00 10 */ beq lbl_80058058 /* 8005804C 00053CAC 38 00 00 00 */ li r0, 0 /* 80058050 00053CB0 90 03 00 20 */ stw r0, 0x20(r3) /* 80058054 00053CB4 90 83 00 0C */ stw r4, 0xc(r3) lbl_80058058: /* 80058058 00053CB8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005805C 00053CBC 80 63 00 28 */ lwz r3, 0x28(r3) /* 80058060 00053CC0 80 83 00 04 */ lwz r4, 4(r3) /* 80058064 00053CC4 2C 04 00 00 */ cmpwi r4, 0 /* 80058068 00053CC8 40 82 00 0C */ bne lbl_80058074 /* 8005806C 00053CCC 38 60 00 00 */ li r3, 0 /* 80058070 00053CD0 48 00 00 20 */ b lbl_80058090 lbl_80058074: /* 80058074 00053CD4 80 63 00 00 */ lwz r3, 0(r3) /* 80058078 00053CD8 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8005807C 00053CDC 2C 00 00 00 */ cmpwi r0, 0 /* 80058080 00053CE0 40 82 00 0C */ bne lbl_8005808C /* 80058084 00053CE4 38 60 00 00 */ li r3, 0 /* 80058088 00053CE8 48 00 00 08 */ b lbl_80058090 lbl_8005808C: /* 8005808C 00053CEC 80 64 00 00 */ lwz r3, 0(r4) lbl_80058090: /* 80058090 00053CF0 2C 03 00 00 */ cmpwi r3, 0 /* 80058094 00053CF4 41 82 00 08 */ beq lbl_8005809C /* 80058098 00053CF8 48 1A 87 C1 */ bl func_80200858 lbl_8005809C: /* 8005809C 00053CFC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800580A0 00053D00 80 63 00 30 */ lwz r3, 0x30(r3) /* 800580A4 00053D04 48 1A A9 2D */ bl func_802029D0 /* 800580A8 00053D08 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 800580AC 00053D0C 38 00 00 00 */ li r0, 0 /* 800580B0 00053D10 98 03 04 0D */ stb r0, 0x40d(r3) /* 800580B4 00053D14 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800580B8 00053D18 80 03 00 08 */ lwz r0, 8(r3) /* 800580BC 00053D1C 54 00 02 0A */ rlwinm r0, r0, 0, 8, 5 /* 800580C0 00053D20 90 03 00 08 */ stw r0, 8(r3) /* 800580C4 00053D24 48 00 00 A0 */ b lbl_80058164 lbl_800580C8: /* 800580C8 00053D28 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800580CC 00053D2C 80 04 00 24 */ lwz r0, 0x24(r4) /* 800580D0 00053D30 2C 00 00 00 */ cmpwi r0, 0 /* 800580D4 00053D34 41 82 00 90 */ beq lbl_80058164 /* 800580D8 00053D38 2C 03 00 00 */ cmpwi r3, 0 /* 800580DC 00053D3C 41 82 00 1C */ beq lbl_800580F8 /* 800580E0 00053D40 80 84 00 38 */ lwz r4, 0x38(r4) /* 800580E4 00053D44 2C 04 00 00 */ cmpwi r4, 0 /* 800580E8 00053D48 41 82 00 10 */ beq lbl_800580F8 /* 800580EC 00053D4C 38 00 00 00 */ li r0, 0 /* 800580F0 00053D50 90 03 00 20 */ stw r0, 0x20(r3) /* 800580F4 00053D54 90 83 00 0C */ stw r4, 0xc(r3) lbl_800580F8: /* 800580F8 00053D58 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800580FC 00053D5C 80 63 00 2C */ lwz r3, 0x2c(r3) /* 80058100 00053D60 80 83 00 04 */ lwz r4, 4(r3) /* 80058104 00053D64 2C 04 00 00 */ cmpwi r4, 0 /* 80058108 00053D68 40 82 00 0C */ bne lbl_80058114 /* 8005810C 00053D6C 38 60 00 00 */ li r3, 0 /* 80058110 00053D70 48 00 00 20 */ b lbl_80058130 lbl_80058114: /* 80058114 00053D74 80 63 00 00 */ lwz r3, 0(r3) /* 80058118 00053D78 A0 03 00 18 */ lhz r0, 0x18(r3) /* 8005811C 00053D7C 2C 00 00 00 */ cmpwi r0, 0 /* 80058120 00053D80 40 82 00 0C */ bne lbl_8005812C /* 80058124 00053D84 38 60 00 00 */ li r3, 0 /* 80058128 00053D88 48 00 00 08 */ b lbl_80058130 lbl_8005812C: /* 8005812C 00053D8C 80 64 00 00 */ lwz r3, 0(r4) lbl_80058130: /* 80058130 00053D90 2C 03 00 00 */ cmpwi r3, 0 /* 80058134 00053D94 41 82 00 08 */ beq lbl_8005813C /* 80058138 00053D98 48 1A 87 21 */ bl func_80200858 lbl_8005813C: /* 8005813C 00053D9C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058140 00053DA0 80 63 00 30 */ lwz r3, 0x30(r3) /* 80058144 00053DA4 48 1A A8 8D */ bl func_802029D0 /* 80058148 00053DA8 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13) /* 8005814C 00053DAC 38 00 00 00 */ li r0, 0 /* 80058150 00053DB0 98 03 04 0D */ stb r0, 0x40d(r3) /* 80058154 00053DB4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058158 00053DB8 80 03 00 08 */ lwz r0, 8(r3) /* 8005815C 00053DBC 54 00 02 0A */ rlwinm r0, r0, 0, 8, 5 /* 80058160 00053DC0 90 03 00 08 */ stw r0, 8(r3) lbl_80058164: /* 80058164 00053DC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058168 00053DC8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005816C 00053DCC 7C 08 03 A6 */ mtlr r0 /* 80058170 00053DD0 38 21 00 10 */ addi r1, r1, 0x10 /* 80058174 00053DD4 4E 80 00 20 */ blr .global lbl_80058178 lbl_80058178: /* 80058178 00053DD8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005817C 00053DDC 7C 08 02 A6 */ mflr r0 /* 80058180 00053DE0 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 80058184 00053DE4 38 A0 00 06 */ li r5, 6 /* 80058188 00053DE8 90 01 00 14 */ stw r0, 0x14(r1) /* 8005818C 00053DEC 38 80 00 04 */ li r4, 4 /* 80058190 00053DF0 38 00 00 05 */ li r0, 5 /* 80058194 00053DF4 FC 40 08 90 */ fmr f2, f1 /* 80058198 00053DF8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005819C 00053DFC 3B E0 00 01 */ li r31, 1 /* 800581A0 00053E00 FC A0 08 90 */ fmr f5, f1 /* 800581A4 00053E04 C0 62 85 88 */ lfs f3, lbl_80640B88-_SDA2_BASE_(r2) /* 800581A8 00053E08 93 C1 00 08 */ stw r30, 8(r1) /* 800581AC 00053E0C 3B C0 00 00 */ li r30, 0 /* 800581B0 00053E10 C0 82 85 8C */ lfs f4, lbl_80640B8C-_SDA2_BASE_(r2) /* 800581B4 00053E14 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 800581B8 00053E18 C0 C2 85 90 */ lfs f6, lbl_80640B90-_SDA2_BASE_(r2) /* 800581BC 00053E1C 80 66 16 38 */ lwz r3, 0x1638(r6) /* 800581C0 00053E20 98 A3 01 2C */ stb r5, 0x12c(r3) /* 800581C4 00053E24 80 66 16 38 */ lwz r3, 0x1638(r6) /* 800581C8 00053E28 93 C3 01 30 */ stw r30, 0x130(r3) /* 800581CC 00053E2C 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 800581D0 00053E30 80 65 00 04 */ lwz r3, 4(r5) /* 800581D4 00053E34 60 63 00 04 */ ori r3, r3, 4 /* 800581D8 00053E38 90 65 00 04 */ stw r3, 4(r5) /* 800581DC 00053E3C 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 800581E0 00053E40 80 65 00 00 */ lwz r3, 0(r5) /* 800581E4 00053E44 60 63 00 01 */ ori r3, r3, 1 /* 800581E8 00053E48 90 65 00 00 */ stw r3, 0(r5) /* 800581EC 00053E4C 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13) /* 800581F0 00053E50 80 65 16 38 */ lwz r3, 0x1638(r5) /* 800581F4 00053E54 93 E3 0A 24 */ stw r31, 0xa24(r3) /* 800581F8 00053E58 80 65 16 38 */ lwz r3, 0x1638(r5) /* 800581FC 00053E5C 90 83 0A 28 */ stw r4, 0xa28(r3) /* 80058200 00053E60 80 65 16 38 */ lwz r3, 0x1638(r5) /* 80058204 00053E64 90 03 0A 2C */ stw r0, 0xa2c(r3) /* 80058208 00053E68 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005820C 00053E6C 90 03 0A 30 */ stw r0, 0xa30(r3) /* 80058210 00053E70 80 65 16 38 */ lwz r3, 0x1638(r5) /* 80058214 00053E74 80 03 00 64 */ lwz r0, 0x64(r3) /* 80058218 00053E78 60 00 00 01 */ ori r0, r0, 1 /* 8005821C 00053E7C 90 03 00 64 */ stw r0, 0x64(r3) /* 80058220 00053E80 80 65 16 38 */ lwz r3, 0x1638(r5) /* 80058224 00053E84 80 03 00 00 */ lwz r0, 0(r3) /* 80058228 00053E88 60 00 00 40 */ ori r0, r0, 0x40 /* 8005822C 00053E8C 90 03 00 00 */ stw r0, 0(r3) /* 80058230 00053E90 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80058234 00053E94 48 1D CD AD */ bl func_80234FE0 /* 80058238 00053E98 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 8005823C 00053E9C 38 80 00 03 */ li r4, 3 /* 80058240 00053EA0 38 00 00 07 */ li r0, 7 /* 80058244 00053EA4 80 66 16 38 */ lwz r3, 0x1638(r6) /* 80058248 00053EA8 9B E3 0A 36 */ stb r31, 0xa36(r3) /* 8005824C 00053EAC 80 66 16 38 */ lwz r3, 0x1638(r6) /* 80058250 00053EB0 9B C3 0A 37 */ stb r30, 0xa37(r3) /* 80058254 00053EB4 80 66 16 38 */ lwz r3, 0x1638(r6) /* 80058258 00053EB8 9B C3 0A 38 */ stb r30, 0xa38(r3) /* 8005825C 00053EBC 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 80058260 00053EC0 80 65 00 64 */ lwz r3, 0x64(r5) /* 80058264 00053EC4 60 63 00 04 */ ori r3, r3, 4 /* 80058268 00053EC8 90 65 00 64 */ stw r3, 0x64(r5) /* 8005826C 00053ECC 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 80058270 00053ED0 80 65 00 00 */ lwz r3, 0(r5) /* 80058274 00053ED4 60 63 00 40 */ ori r3, r3, 0x40 /* 80058278 00053ED8 90 65 00 00 */ stw r3, 0(r5) /* 8005827C 00053EDC 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13) /* 80058280 00053EE0 80 65 16 38 */ lwz r3, 0x1638(r5) /* 80058284 00053EE4 9B C3 0A 3C */ stb r30, 0xa3c(r3) /* 80058288 00053EE8 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005828C 00053EEC 90 83 0A 40 */ stw r4, 0xa40(r3) /* 80058290 00053EF0 80 85 16 38 */ lwz r4, 0x1638(r5) /* 80058294 00053EF4 80 64 00 64 */ lwz r3, 0x64(r4) /* 80058298 00053EF8 60 63 00 08 */ ori r3, r3, 8 /* 8005829C 00053EFC 90 64 00 64 */ stw r3, 0x64(r4) /* 800582A0 00053F00 80 85 16 38 */ lwz r4, 0x1638(r5) /* 800582A4 00053F04 80 64 00 00 */ lwz r3, 0(r4) /* 800582A8 00053F08 60 63 00 40 */ ori r3, r3, 0x40 /* 800582AC 00053F0C 90 64 00 00 */ stw r3, 0(r4) /* 800582B0 00053F10 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 800582B4 00053F14 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582B8 00053F18 90 03 0A 44 */ stw r0, 0xa44(r3) /* 800582BC 00053F1C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582C0 00053F20 9B C3 0A 50 */ stb r30, 0xa50(r3) /* 800582C4 00053F24 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582C8 00053F28 93 C3 0A 48 */ stw r30, 0xa48(r3) /* 800582CC 00053F2C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582D0 00053F30 90 03 0A 4C */ stw r0, 0xa4c(r3) /* 800582D4 00053F34 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582D8 00053F38 9B C3 0A 51 */ stb r30, 0xa51(r3) /* 800582DC 00053F3C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582E0 00053F40 9B E3 0A 52 */ stb r31, 0xa52(r3) /* 800582E4 00053F44 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582E8 00053F48 80 03 00 64 */ lwz r0, 0x64(r3) /* 800582EC 00053F4C 60 00 00 10 */ ori r0, r0, 0x10 /* 800582F0 00053F50 90 03 00 64 */ stw r0, 0x64(r3) /* 800582F4 00053F54 80 64 16 38 */ lwz r3, 0x1638(r4) /* 800582F8 00053F58 80 03 00 00 */ lwz r0, 0(r3) /* 800582FC 00053F5C 60 00 00 40 */ ori r0, r0, 0x40 /* 80058300 00053F60 90 03 00 00 */ stw r0, 0(r3) /* 80058304 00053F64 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80058308 00053F68 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005830C 00053F6C 93 C3 01 84 */ stw r30, 0x184(r3) /* 80058310 00053F70 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80058314 00053F74 80 03 00 10 */ lwz r0, 0x10(r3) /* 80058318 00053F78 60 00 00 02 */ ori r0, r0, 2 /* 8005831C 00053F7C 90 03 00 10 */ stw r0, 0x10(r3) /* 80058320 00053F80 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80058324 00053F84 80 03 00 00 */ lwz r0, 0(r3) /* 80058328 00053F88 60 00 00 02 */ ori r0, r0, 2 /* 8005832C 00053F8C 90 03 00 00 */ stw r0, 0(r3) /* 80058330 00053F90 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80058334 00053F94 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80058338 00053F98 93 E3 01 88 */ stw r31, 0x188(r3) /* 8005833C 00053F9C 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80058340 00053FA0 80 03 00 10 */ lwz r0, 0x10(r3) /* 80058344 00053FA4 60 00 00 04 */ ori r0, r0, 4 /* 80058348 00053FA8 90 03 00 10 */ stw r0, 0x10(r3) /* 8005834C 00053FAC 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80058350 00053FB0 80 03 00 00 */ lwz r0, 0(r3) /* 80058354 00053FB4 60 00 00 02 */ ori r0, r0, 2 /* 80058358 00053FB8 90 03 00 00 */ stw r0, 0(r3) /* 8005835C 00053FBC 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 80058360 00053FC0 80 64 16 38 */ lwz r3, 0x1638(r4) /* 80058364 00053FC4 9B C3 0A 87 */ stb r30, 0xa87(r3) /* 80058368 00053FC8 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005836C 00053FCC 80 03 00 64 */ lwz r0, 0x64(r3) /* 80058370 00053FD0 60 00 00 40 */ ori r0, r0, 0x40 /* 80058374 00053FD4 90 03 00 64 */ stw r0, 0x64(r3) /* 80058378 00053FD8 80 64 16 38 */ lwz r3, 0x1638(r4) /* 8005837C 00053FDC 80 03 00 00 */ lwz r0, 0(r3) /* 80058380 00053FE0 60 00 00 40 */ ori r0, r0, 0x40 /* 80058384 00053FE4 90 03 00 00 */ stw r0, 0(r3) /* 80058388 00053FE8 4B FF E1 85 */ bl func_8005650C /* 8005838C 00053FEC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058390 00053FF0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80058394 00053FF4 83 C1 00 08 */ lwz r30, 8(r1) /* 80058398 00053FF8 7C 08 03 A6 */ mtlr r0 /* 8005839C 00053FFC 38 21 00 10 */ addi r1, r1, 0x10 /* 800583A0 00054000 4E 80 00 20 */ blr .global func_800583A4 func_800583A4: /* 800583A4 00054004 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800583A8 00054008 80 03 00 08 */ lwz r0, 8(r3) /* 800583AC 0005400C 60 00 02 00 */ ori r0, r0, 0x200 /* 800583B0 00054010 90 03 00 08 */ stw r0, 8(r3) /* 800583B4 00054014 4E 80 00 20 */ blr .global func_800583B8 func_800583B8: /* 800583B8 00054018 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800583BC 0005401C 80 03 00 08 */ lwz r0, 8(r3) /* 800583C0 00054020 54 00 05 EA */ rlwinm r0, r0, 0, 0x17, 0x15 /* 800583C4 00054024 90 03 00 08 */ stw r0, 8(r3) /* 800583C8 00054028 4E 80 00 20 */ blr .global func_800583CC func_800583CC: /* 800583CC 0005402C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800583D0 00054030 80 03 00 08 */ lwz r0, 8(r3) /* 800583D4 00054034 54 00 05 A8 */ rlwinm r0, r0, 0, 0x16, 0x14 /* 800583D8 00054038 90 03 00 08 */ stw r0, 8(r3) /* 800583DC 0005403C 4E 80 00 20 */ blr .global func_800583E0 func_800583E0: /* 800583E0 00054040 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800583E4 00054044 80 03 00 08 */ lwz r0, 8(r3) /* 800583E8 00054048 60 00 00 80 */ ori r0, r0, 0x80 /* 800583EC 0005404C 90 03 00 08 */ stw r0, 8(r3) /* 800583F0 00054050 4E 80 00 20 */ blr .global func_800583F4 func_800583F4: /* 800583F4 00054054 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800583F8 00054058 80 03 00 08 */ lwz r0, 8(r3) /* 800583FC 0005405C 54 00 06 6E */ rlwinm r0, r0, 0, 0x19, 0x17 /* 80058400 00054060 90 03 00 08 */ stw r0, 8(r3) /* 80058404 00054064 4E 80 00 20 */ blr .global func_80058408 func_80058408: /* 80058408 00054068 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005840C 0005406C 80 03 00 08 */ lwz r0, 8(r3) /* 80058410 00054070 54 00 06 2C */ rlwinm r0, r0, 0, 0x18, 0x16 /* 80058414 00054074 90 03 00 08 */ stw r0, 8(r3) /* 80058418 00054078 4E 80 00 20 */ blr .global func_8005841C func_8005841C: /* 8005841C 0005407C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058420 00054080 80 03 00 08 */ lwz r0, 8(r3) /* 80058424 00054084 54 00 05 A8 */ rlwinm r0, r0, 0, 0x16, 0x14 /* 80058428 00054088 90 03 00 08 */ stw r0, 8(r3) /* 8005842C 0005408C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058430 00054090 80 03 00 08 */ lwz r0, 8(r3) /* 80058434 00054094 54 00 05 EA */ rlwinm r0, r0, 0, 0x17, 0x15 /* 80058438 00054098 90 03 00 08 */ stw r0, 8(r3) /* 8005843C 0005409C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058440 000540A0 80 03 00 08 */ lwz r0, 8(r3) /* 80058444 000540A4 54 00 06 2C */ rlwinm r0, r0, 0, 0x18, 0x16 /* 80058448 000540A8 90 03 00 08 */ stw r0, 8(r3) /* 8005844C 000540AC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058450 000540B0 80 03 00 08 */ lwz r0, 8(r3) /* 80058454 000540B4 54 00 06 6E */ rlwinm r0, r0, 0, 0x19, 0x17 /* 80058458 000540B8 90 03 00 08 */ stw r0, 8(r3) /* 8005845C 000540BC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058460 000540C0 80 03 00 08 */ lwz r0, 8(r3) /* 80058464 000540C4 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 80058468 000540C8 90 03 00 08 */ stw r0, 8(r3) /* 8005846C 000540CC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058470 000540D0 80 03 00 08 */ lwz r0, 8(r3) /* 80058474 000540D4 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 80058478 000540D8 90 03 00 08 */ stw r0, 8(r3) /* 8005847C 000540DC 4E 80 00 20 */ blr .global func_80058480 func_80058480: /* 80058480 000540E0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058484 000540E4 80 03 00 08 */ lwz r0, 8(r3) /* 80058488 000540E8 54 03 B7 FE */ rlwinm r3, r0, 0x16, 0x1f, 0x1f /* 8005848C 000540EC 4E 80 00 20 */ blr .global func_80058490 func_80058490: /* 80058490 000540F0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058494 000540F4 80 03 00 08 */ lwz r0, 8(r3) /* 80058498 000540F8 54 03 BF FE */ rlwinm r3, r0, 0x17, 0x1f, 0x1f /* 8005849C 000540FC 4E 80 00 20 */ blr .global func_800584A0 func_800584A0: /* 800584A0 00054100 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800584A4 00054104 80 03 00 08 */ lwz r0, 8(r3) /* 800584A8 00054108 54 03 C7 FE */ rlwinm r3, r0, 0x18, 0x1f, 0x1f /* 800584AC 0005410C 4E 80 00 20 */ blr .global func_800584B0 func_800584B0: /* 800584B0 00054110 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800584B4 00054114 80 03 00 08 */ lwz r0, 8(r3) /* 800584B8 00054118 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f /* 800584BC 0005411C 4E 80 00 20 */ blr .global func_800584C0 func_800584C0: /* 800584C0 00054120 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800584C4 00054124 80 03 00 08 */ lwz r0, 8(r3) /* 800584C8 00054128 60 00 00 10 */ ori r0, r0, 0x10 /* 800584CC 0005412C 90 03 00 08 */ stw r0, 8(r3) /* 800584D0 00054130 4E 80 00 20 */ blr .global func_800584D4 func_800584D4: /* 800584D4 00054134 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800584D8 00054138 80 03 00 08 */ lwz r0, 8(r3) /* 800584DC 0005413C 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 800584E0 00054140 90 03 00 08 */ stw r0, 8(r3) /* 800584E4 00054144 4E 80 00 20 */ blr .global func_800584E8 func_800584E8: /* 800584E8 00054148 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800584EC 0005414C 7C 08 02 A6 */ mflr r0 /* 800584F0 00054150 90 01 00 14 */ stw r0, 0x14(r1) /* 800584F4 00054154 48 0C 44 81 */ bl func_8011C974 /* 800584F8 00054158 A0 03 00 94 */ lhz r0, 0x94(r3) /* 800584FC 0005415C 2C 00 00 00 */ cmpwi r0, 0 /* 80058500 00054160 40 82 00 18 */ bne lbl_80058518 /* 80058504 00054164 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058508 00054168 80 03 00 08 */ lwz r0, 8(r3) /* 8005850C 0005416C 54 00 05 A8 */ rlwinm r0, r0, 0, 0x16, 0x14 /* 80058510 00054170 90 03 00 08 */ stw r0, 8(r3) /* 80058514 00054174 48 00 00 5C */ b lbl_80058570 lbl_80058518: /* 80058518 00054178 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005851C 0005417C 3C 00 43 30 */ lis r0, 0x4330 /* 80058520 00054180 90 01 00 08 */ stw r0, 8(r1) /* 80058524 00054184 80 04 00 08 */ lwz r0, 8(r4) /* 80058528 00054188 C8 62 85 98 */ lfd f3, lbl_80640B98-_SDA2_BASE_(r2) /* 8005852C 0005418C 60 00 04 00 */ ori r0, r0, 0x400 /* 80058530 00054190 C0 22 85 84 */ lfs f1, lbl_80640B84-_SDA2_BASE_(r2) /* 80058534 00054194 90 04 00 08 */ stw r0, 8(r4) /* 80058538 00054198 C0 02 85 60 */ lfs f0, lbl_80640B60-_SDA2_BASE_(r2) /* 8005853C 0005419C A0 03 00 94 */ lhz r0, 0x94(r3) /* 80058540 000541A0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058544 000541A4 90 01 00 0C */ stw r0, 0xc(r1) /* 80058548 000541A8 C8 41 00 08 */ lfd f2, 8(r1) /* 8005854C 000541AC EC 42 18 28 */ fsubs f2, f2, f3 /* 80058550 000541B0 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80058554 000541B4 D0 23 10 8C */ stfs f1, 0x108c(r3) /* 80058558 000541B8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005855C 000541BC D0 03 10 88 */ stfs f0, 0x1088(r3) /* 80058560 000541C0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058564 000541C4 80 03 00 08 */ lwz r0, 8(r3) /* 80058568 000541C8 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19 /* 8005856C 000541CC 90 03 00 08 */ stw r0, 8(r3) lbl_80058570: /* 80058570 000541D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058574 000541D4 7C 08 03 A6 */ mtlr r0 /* 80058578 000541D8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005857C 000541DC 4E 80 00 20 */ blr .global func_80058580 func_80058580: /* 80058580 000541E0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80058584 000541E4 7C 08 02 A6 */ mflr r0 /* 80058588 000541E8 90 01 00 14 */ stw r0, 0x14(r1) /* 8005858C 000541EC 48 0C 43 E9 */ bl func_8011C974 /* 80058590 000541F0 A0 03 00 92 */ lhz r0, 0x92(r3) /* 80058594 000541F4 2C 00 00 00 */ cmpwi r0, 0 /* 80058598 000541F8 40 82 00 18 */ bne lbl_800585B0 /* 8005859C 000541FC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800585A0 00054200 80 03 00 08 */ lwz r0, 8(r3) /* 800585A4 00054204 54 00 06 2C */ rlwinm r0, r0, 0, 0x18, 0x16 /* 800585A8 00054208 90 03 00 08 */ stw r0, 8(r3) /* 800585AC 0005420C 48 00 00 54 */ b lbl_80058600 lbl_800585B0: /* 800585B0 00054210 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800585B4 00054214 3C 00 43 30 */ lis r0, 0x4330 /* 800585B8 00054218 90 01 00 08 */ stw r0, 8(r1) /* 800585BC 0005421C 80 04 00 08 */ lwz r0, 8(r4) /* 800585C0 00054220 C8 42 85 98 */ lfd f2, lbl_80640B98-_SDA2_BASE_(r2) /* 800585C4 00054224 60 00 01 00 */ ori r0, r0, 0x100 /* 800585C8 00054228 C0 02 85 60 */ lfs f0, lbl_80640B60-_SDA2_BASE_(r2) /* 800585CC 0005422C 90 04 00 08 */ stw r0, 8(r4) /* 800585D0 00054230 A0 03 00 92 */ lhz r0, 0x92(r3) /* 800585D4 00054234 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800585D8 00054238 90 01 00 0C */ stw r0, 0xc(r1) /* 800585DC 0005423C C8 21 00 08 */ lfd f1, 8(r1) /* 800585E0 00054240 EC 21 10 28 */ fsubs f1, f1, f2 /* 800585E4 00054244 D0 23 10 94 */ stfs f1, 0x1094(r3) /* 800585E8 00054248 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800585EC 0005424C D0 03 10 90 */ stfs f0, 0x1090(r3) /* 800585F0 00054250 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800585F4 00054254 80 03 00 08 */ lwz r0, 8(r3) /* 800585F8 00054258 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a /* 800585FC 0005425C 90 03 00 08 */ stw r0, 8(r3) lbl_80058600: /* 80058600 00054260 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058604 00054264 7C 08 03 A6 */ mtlr r0 /* 80058608 00054268 38 21 00 10 */ addi r1, r1, 0x10 /* 8005860C 0005426C 4E 80 00 20 */ blr .global func_80058610 func_80058610: /* 80058610 00054270 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80058614 00054274 7C 08 02 A6 */ mflr r0 /* 80058618 00054278 90 01 00 14 */ stw r0, 0x14(r1) /* 8005861C 0005427C 48 0C 43 59 */ bl func_8011C974 /* 80058620 00054280 A0 03 00 94 */ lhz r0, 0x94(r3) /* 80058624 00054284 2C 00 00 00 */ cmpwi r0, 0 /* 80058628 00054288 40 82 00 0C */ bne lbl_80058634 /* 8005862C 0005428C 38 60 00 00 */ li r3, 0 /* 80058630 00054290 48 00 00 20 */ b lbl_80058650 lbl_80058634: /* 80058634 00054294 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058638 00054298 C0 23 10 88 */ lfs f1, 0x1088(r3) /* 8005863C 0005429C C0 03 10 8C */ lfs f0, 0x108c(r3) /* 80058640 000542A0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80058644 000542A4 4C 41 13 82 */ cror 2, 1, 2 /* 80058648 000542A8 7C 60 00 26 */ mfcr r3 /* 8005864C 000542AC 54 63 1F FE */ rlwinm r3, r3, 3, 0x1f, 0x1f lbl_80058650: /* 80058650 000542B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058654 000542B4 7C 08 03 A6 */ mtlr r0 /* 80058658 000542B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005865C 000542BC 4E 80 00 20 */ blr .global func_80058660 func_80058660: /* 80058660 000542C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80058664 000542C4 7C 08 02 A6 */ mflr r0 /* 80058668 000542C8 90 01 00 14 */ stw r0, 0x14(r1) /* 8005866C 000542CC 48 0C 43 09 */ bl func_8011C974 /* 80058670 000542D0 A0 03 00 92 */ lhz r0, 0x92(r3) /* 80058674 000542D4 2C 00 00 00 */ cmpwi r0, 0 /* 80058678 000542D8 40 82 00 0C */ bne lbl_80058684 /* 8005867C 000542DC 38 60 00 00 */ li r3, 0 /* 80058680 000542E0 48 00 00 20 */ b lbl_800586A0 lbl_80058684: /* 80058684 000542E4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80058688 000542E8 C0 23 10 90 */ lfs f1, 0x1090(r3) /* 8005868C 000542EC C0 03 10 94 */ lfs f0, 0x1094(r3) /* 80058690 000542F0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80058694 000542F4 4C 41 13 82 */ cror 2, 1, 2 /* 80058698 000542F8 7C 60 00 26 */ mfcr r3 /* 8005869C 000542FC 54 63 1F FE */ rlwinm r3, r3, 3, 0x1f, 0x1f lbl_800586A0: /* 800586A0 00054300 80 01 00 14 */ lwz r0, 0x14(r1) /* 800586A4 00054304 7C 08 03 A6 */ mtlr r0 /* 800586A8 00054308 38 21 00 10 */ addi r1, r1, 0x10 /* 800586AC 0005430C 4E 80 00 20 */ blr .global func_800586B0 func_800586B0: /* 800586B0 00054310 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800586B4 00054314 7C 08 02 A6 */ mflr r0 /* 800586B8 00054318 90 01 00 14 */ stw r0, 0x14(r1) /* 800586BC 0005431C 48 0C 42 B9 */ bl func_8011C974 /* 800586C0 00054320 A0 03 00 94 */ lhz r0, 0x94(r3) /* 800586C4 00054324 2C 00 00 00 */ cmpwi r0, 0 /* 800586C8 00054328 40 82 00 0C */ bne lbl_800586D4 /* 800586CC 0005432C 38 60 00 00 */ li r3, 0 /* 800586D0 00054330 48 00 00 34 */ b lbl_80058704 lbl_800586D4: /* 800586D4 00054334 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800586D8 00054338 C0 23 10 88 */ lfs f1, 0x1088(r3) /* 800586DC 0005433C C0 03 10 8C */ lfs f0, 0x108c(r3) /* 800586E0 00054340 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800586E4 00054344 4C 41 13 82 */ cror 2, 1, 2 /* 800586E8 00054348 40 82 00 0C */ bne lbl_800586F4 /* 800586EC 0005434C 38 60 00 00 */ li r3, 0 /* 800586F0 00054350 48 00 00 14 */ b lbl_80058704 lbl_800586F4: /* 800586F4 00054354 EC 00 08 28 */ fsubs f0, f0, f1 /* 800586F8 00054358 FC 00 00 1E */ fctiwz f0, f0 /* 800586FC 0005435C D8 01 00 08 */ stfd f0, 8(r1) /* 80058700 00054360 80 61 00 0C */ lwz r3, 0xc(r1) lbl_80058704: /* 80058704 00054364 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058708 00054368 7C 08 03 A6 */ mtlr r0 /* 8005870C 0005436C 38 21 00 10 */ addi r1, r1, 0x10 /* 80058710 00054370 4E 80 00 20 */ blr .global func_80058714 func_80058714: /* 80058714 00054374 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80058718 00054378 7C 08 02 A6 */ mflr r0 /* 8005871C 0005437C 90 01 00 14 */ stw r0, 0x14(r1) /* 80058720 00054380 48 0C 42 55 */ bl func_8011C974 /* 80058724 00054384 A0 03 00 92 */ lhz r0, 0x92(r3) /* 80058728 00054388 2C 00 00 00 */ cmpwi r0, 0 /* 8005872C 0005438C 40 82 00 0C */ bne lbl_80058738 /* 80058730 00054390 38 60 00 00 */ li r3, 0 /* 80058734 00054394 48 00 00 34 */ b lbl_80058768 lbl_80058738: /* 80058738 00054398 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005873C 0005439C C0 23 10 90 */ lfs f1, 0x1090(r3) /* 80058740 000543A0 C0 03 10 94 */ lfs f0, 0x1094(r3) /* 80058744 000543A4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80058748 000543A8 4C 41 13 82 */ cror 2, 1, 2 /* 8005874C 000543AC 40 82 00 0C */ bne lbl_80058758 /* 80058750 000543B0 38 60 00 00 */ li r3, 0 /* 80058754 000543B4 48 00 00 14 */ b lbl_80058768 lbl_80058758: /* 80058758 000543B8 EC 00 08 28 */ fsubs f0, f0, f1 /* 8005875C 000543BC FC 00 00 1E */ fctiwz f0, f0 /* 80058760 000543C0 D8 01 00 08 */ stfd f0, 8(r1) /* 80058764 000543C4 80 61 00 0C */ lwz r3, 0xc(r1) lbl_80058768: /* 80058768 000543C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005876C 000543CC 7C 08 03 A6 */ mtlr r0 /* 80058770 000543D0 38 21 00 10 */ addi r1, r1, 0x10 /* 80058774 000543D4 4E 80 00 20 */ blr .global func_80058778 func_80058778: /* 80058778 000543D8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005877C 000543DC 7C 08 02 A6 */ mflr r0 /* 80058780 000543E0 2C 03 00 00 */ cmpwi r3, 0 /* 80058784 000543E4 90 01 00 14 */ stw r0, 0x14(r1) /* 80058788 000543E8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005878C 000543EC 41 82 02 D0 */ beq lbl_80058A5C /* 80058790 000543F0 38 60 00 00 */ li r3, 0 /* 80058794 000543F4 48 00 03 7D */ bl func_80058B10 /* 80058798 000543F8 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005879C 000543FC 2C 00 00 02 */ cmpwi r0, 2 /* 800587A0 00054400 41 82 01 30 */ beq lbl_800588D0 /* 800587A4 00054404 40 80 00 14 */ bge lbl_800587B8 /* 800587A8 00054408 2C 00 00 00 */ cmpwi r0, 0 /* 800587AC 0005440C 41 82 00 1C */ beq lbl_800587C8 /* 800587B0 00054410 40 80 00 9C */ bge lbl_8005884C /* 800587B4 00054414 48 00 03 48 */ b lbl_80058AFC lbl_800587B8: /* 800587B8 00054418 2C 00 00 04 */ cmpwi r0, 4 /* 800587BC 0005441C 41 82 02 1C */ beq lbl_800589D8 /* 800587C0 00054420 40 80 03 3C */ bge lbl_80058AFC /* 800587C4 00054424 48 00 01 90 */ b lbl_80058954 lbl_800587C8: /* 800587C8 00054428 38 60 05 DC */ li r3, 0x5dc /* 800587CC 0005442C 48 1F 0E 11 */ bl func_802495DC /* 800587D0 00054430 38 60 05 DC */ li r3, 0x5dc /* 800587D4 00054434 3C 80 27 C0 */ lis r4, 0x27c0 /* 800587D8 00054438 48 18 2E 0D */ bl func_801DB5E4 /* 800587DC 0005443C 7C 7F 1B 78 */ mr r31, r3 /* 800587E0 00054440 38 60 05 DC */ li r3, 0x5dc /* 800587E4 00054444 3C 80 27 C0 */ lis r4, 0x27c0 /* 800587E8 00054448 48 18 2C D5 */ bl func_801DB4BC /* 800587EC 0005444C 7C 64 1B 78 */ mr r4, r3 /* 800587F0 00054450 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 800587F4 00054454 7F E5 FB 78 */ mr r5, r31 /* 800587F8 00054458 4B FA B8 09 */ bl memcpy /* 800587FC 0005445C 38 60 05 DC */ li r3, 0x5dc /* 80058800 00054460 3C 80 27 C1 */ lis r4, 0x27c1 /* 80058804 00054464 48 18 2D E1 */ bl func_801DB5E4 /* 80058808 00054468 7C 7F 1B 78 */ mr r31, r3 /* 8005880C 0005446C 38 60 05 DC */ li r3, 0x5dc /* 80058810 00054470 3C 80 27 C1 */ lis r4, 0x27c1 /* 80058814 00054474 48 18 2C A9 */ bl func_801DB4BC /* 80058818 00054478 7C 64 1B 78 */ mr r4, r3 /* 8005881C 0005447C 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058820 00054480 7F E5 FB 78 */ mr r5, r31 /* 80058824 00054484 4B FA B7 DD */ bl memcpy /* 80058828 00054488 38 60 05 DC */ li r3, 0x5dc /* 8005882C 0005448C 48 1F 10 65 */ bl func_80249890 /* 80058830 00054490 38 60 05 DC */ li r3, 0x5dc /* 80058834 00054494 48 18 2E 41 */ bl func_801DB674 /* 80058838 00054498 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 8005883C 0005449C 48 1F 78 21 */ bl func_8025005C /* 80058840 000544A0 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058844 000544A4 48 1F 78 29 */ bl func_8025006C /* 80058848 000544A8 48 00 02 B4 */ b lbl_80058AFC lbl_8005884C: /* 8005884C 000544AC 38 60 05 DE */ li r3, 0x5de /* 80058850 000544B0 48 1F 0D 8D */ bl func_802495DC /* 80058854 000544B4 38 60 05 DE */ li r3, 0x5de /* 80058858 000544B8 3C 80 2B 82 */ lis r4, 0x2b82 /* 8005885C 000544BC 48 18 2D 89 */ bl func_801DB5E4 /* 80058860 000544C0 7C 7F 1B 78 */ mr r31, r3 /* 80058864 000544C4 38 60 05 DE */ li r3, 0x5de /* 80058868 000544C8 3C 80 2B 82 */ lis r4, 0x2b82 /* 8005886C 000544CC 48 18 2C 51 */ bl func_801DB4BC /* 80058870 000544D0 7C 64 1B 78 */ mr r4, r3 /* 80058874 000544D4 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058878 000544D8 7F E5 FB 78 */ mr r5, r31 /* 8005887C 000544DC 4B FA B7 85 */ bl memcpy /* 80058880 000544E0 38 60 05 DE */ li r3, 0x5de /* 80058884 000544E4 3C 80 2B 83 */ lis r4, 0x2b83 /* 80058888 000544E8 48 18 2D 5D */ bl func_801DB5E4 /* 8005888C 000544EC 7C 7F 1B 78 */ mr r31, r3 /* 80058890 000544F0 38 60 05 DE */ li r3, 0x5de /* 80058894 000544F4 3C 80 2B 83 */ lis r4, 0x2b83 /* 80058898 000544F8 48 18 2C 25 */ bl func_801DB4BC /* 8005889C 000544FC 7C 64 1B 78 */ mr r4, r3 /* 800588A0 00054500 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 800588A4 00054504 7F E5 FB 78 */ mr r5, r31 /* 800588A8 00054508 4B FA B7 59 */ bl memcpy /* 800588AC 0005450C 38 60 05 DE */ li r3, 0x5de /* 800588B0 00054510 48 1F 0F E1 */ bl func_80249890 /* 800588B4 00054514 38 60 05 DE */ li r3, 0x5de /* 800588B8 00054518 48 18 2D BD */ bl func_801DB674 /* 800588BC 0005451C 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 800588C0 00054520 48 1F 77 9D */ bl func_8025005C /* 800588C4 00054524 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 800588C8 00054528 48 1F 77 A5 */ bl func_8025006C /* 800588CC 0005452C 48 00 02 30 */ b lbl_80058AFC lbl_800588D0: /* 800588D0 00054530 38 60 05 E0 */ li r3, 0x5e0 /* 800588D4 00054534 48 1F 0D 09 */ bl func_802495DC /* 800588D8 00054538 38 60 05 E0 */ li r3, 0x5e0 /* 800588DC 0005453C 3C 80 2B 86 */ lis r4, 0x2b86 /* 800588E0 00054540 48 18 2D 05 */ bl func_801DB5E4 /* 800588E4 00054544 7C 7F 1B 78 */ mr r31, r3 /* 800588E8 00054548 38 60 05 E0 */ li r3, 0x5e0 /* 800588EC 0005454C 3C 80 2B 86 */ lis r4, 0x2b86 /* 800588F0 00054550 48 18 2B CD */ bl func_801DB4BC /* 800588F4 00054554 7C 64 1B 78 */ mr r4, r3 /* 800588F8 00054558 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 800588FC 0005455C 7F E5 FB 78 */ mr r5, r31 /* 80058900 00054560 4B FA B7 01 */ bl memcpy /* 80058904 00054564 38 60 05 E0 */ li r3, 0x5e0 /* 80058908 00054568 3C 80 2B 87 */ lis r4, 0x2b87 /* 8005890C 0005456C 48 18 2C D9 */ bl func_801DB5E4 /* 80058910 00054570 7C 7F 1B 78 */ mr r31, r3 /* 80058914 00054574 38 60 05 E0 */ li r3, 0x5e0 /* 80058918 00054578 3C 80 2B 87 */ lis r4, 0x2b87 /* 8005891C 0005457C 48 18 2B A1 */ bl func_801DB4BC /* 80058920 00054580 7C 64 1B 78 */ mr r4, r3 /* 80058924 00054584 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058928 00054588 7F E5 FB 78 */ mr r5, r31 /* 8005892C 0005458C 4B FA B6 D5 */ bl memcpy /* 80058930 00054590 38 60 05 E0 */ li r3, 0x5e0 /* 80058934 00054594 48 1F 0F 5D */ bl func_80249890 /* 80058938 00054598 38 60 05 E0 */ li r3, 0x5e0 /* 8005893C 0005459C 48 18 2D 39 */ bl func_801DB674 /* 80058940 000545A0 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058944 000545A4 48 1F 77 19 */ bl func_8025005C /* 80058948 000545A8 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 8005894C 000545AC 48 1F 77 21 */ bl func_8025006C /* 80058950 000545B0 48 00 01 AC */ b lbl_80058AFC lbl_80058954: /* 80058954 000545B4 38 60 05 DD */ li r3, 0x5dd /* 80058958 000545B8 48 1F 0C 85 */ bl func_802495DC /* 8005895C 000545BC 38 60 05 DD */ li r3, 0x5dd /* 80058960 000545C0 3C 80 2B 80 */ lis r4, 0x2b80 /* 80058964 000545C4 48 18 2C 81 */ bl func_801DB5E4 /* 80058968 000545C8 7C 7F 1B 78 */ mr r31, r3 /* 8005896C 000545CC 38 60 05 DD */ li r3, 0x5dd /* 80058970 000545D0 3C 80 2B 80 */ lis r4, 0x2b80 /* 80058974 000545D4 48 18 2B 49 */ bl func_801DB4BC /* 80058978 000545D8 7C 64 1B 78 */ mr r4, r3 /* 8005897C 000545DC 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058980 000545E0 7F E5 FB 78 */ mr r5, r31 /* 80058984 000545E4 4B FA B6 7D */ bl memcpy /* 80058988 000545E8 38 60 05 DD */ li r3, 0x5dd /* 8005898C 000545EC 3C 80 2B 81 */ lis r4, 0x2b81 /* 80058990 000545F0 48 18 2C 55 */ bl func_801DB5E4 /* 80058994 000545F4 7C 7F 1B 78 */ mr r31, r3 /* 80058998 000545F8 38 60 05 DD */ li r3, 0x5dd /* 8005899C 000545FC 3C 80 2B 81 */ lis r4, 0x2b81 /* 800589A0 00054600 48 18 2B 1D */ bl func_801DB4BC /* 800589A4 00054604 7C 64 1B 78 */ mr r4, r3 /* 800589A8 00054608 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 800589AC 0005460C 7F E5 FB 78 */ mr r5, r31 /* 800589B0 00054610 4B FA B6 51 */ bl memcpy /* 800589B4 00054614 38 60 05 DD */ li r3, 0x5dd /* 800589B8 00054618 48 1F 0E D9 */ bl func_80249890 /* 800589BC 0005461C 38 60 05 DD */ li r3, 0x5dd /* 800589C0 00054620 48 18 2C B5 */ bl func_801DB674 /* 800589C4 00054624 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 800589C8 00054628 48 1F 76 95 */ bl func_8025005C /* 800589CC 0005462C 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 800589D0 00054630 48 1F 76 9D */ bl func_8025006C /* 800589D4 00054634 48 00 01 28 */ b lbl_80058AFC lbl_800589D8: /* 800589D8 00054638 38 60 05 DF */ li r3, 0x5df /* 800589DC 0005463C 48 1F 0C 01 */ bl func_802495DC /* 800589E0 00054640 38 60 05 DF */ li r3, 0x5df /* 800589E4 00054644 3C 80 2B 84 */ lis r4, 0x2b84 /* 800589E8 00054648 48 18 2B FD */ bl func_801DB5E4 /* 800589EC 0005464C 7C 7F 1B 78 */ mr r31, r3 /* 800589F0 00054650 38 60 05 DF */ li r3, 0x5df /* 800589F4 00054654 3C 80 2B 84 */ lis r4, 0x2b84 /* 800589F8 00054658 48 18 2A C5 */ bl func_801DB4BC /* 800589FC 0005465C 7C 64 1B 78 */ mr r4, r3 /* 80058A00 00054660 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058A04 00054664 7F E5 FB 78 */ mr r5, r31 /* 80058A08 00054668 4B FA B5 F9 */ bl memcpy /* 80058A0C 0005466C 38 60 05 DF */ li r3, 0x5df /* 80058A10 00054670 3C 80 2B 85 */ lis r4, 0x2b85 /* 80058A14 00054674 48 18 2B D1 */ bl func_801DB5E4 /* 80058A18 00054678 7C 7F 1B 78 */ mr r31, r3 /* 80058A1C 0005467C 38 60 05 DF */ li r3, 0x5df /* 80058A20 00054680 3C 80 2B 85 */ lis r4, 0x2b85 /* 80058A24 00054684 48 18 2A 99 */ bl func_801DB4BC /* 80058A28 00054688 7C 64 1B 78 */ mr r4, r3 /* 80058A2C 0005468C 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058A30 00054690 7F E5 FB 78 */ mr r5, r31 /* 80058A34 00054694 4B FA B5 CD */ bl memcpy /* 80058A38 00054698 38 60 05 DF */ li r3, 0x5df /* 80058A3C 0005469C 48 1F 0E 55 */ bl func_80249890 /* 80058A40 000546A0 38 60 05 DF */ li r3, 0x5df /* 80058A44 000546A4 48 18 2C 31 */ bl func_801DB674 /* 80058A48 000546A8 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058A4C 000546AC 48 1F 76 11 */ bl func_8025005C /* 80058A50 000546B0 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058A54 000546B4 48 1F 76 19 */ bl func_8025006C /* 80058A58 000546B8 48 00 00 A4 */ b lbl_80058AFC lbl_80058A5C: /* 80058A5C 000546BC 48 10 6C 35 */ bl func_8015F690 /* 80058A60 000546C0 80 03 00 48 */ lwz r0, 0x48(r3) /* 80058A64 000546C4 2C 00 00 00 */ cmpwi r0, 0 /* 80058A68 000546C8 41 82 00 14 */ beq lbl_80058A7C /* 80058A6C 000546CC 41 80 00 10 */ blt lbl_80058A7C /* 80058A70 000546D0 2C 00 00 05 */ cmpwi r0, 5 /* 80058A74 000546D4 40 80 00 08 */ bge lbl_80058A7C /* 80058A78 000546D8 48 00 00 84 */ b lbl_80058AFC lbl_80058A7C: /* 80058A7C 000546DC 38 60 05 DC */ li r3, 0x5dc /* 80058A80 000546E0 48 1F 0B 5D */ bl func_802495DC /* 80058A84 000546E4 38 60 05 DC */ li r3, 0x5dc /* 80058A88 000546E8 3C 80 27 C0 */ lis r4, 0x27c0 /* 80058A8C 000546EC 48 18 2B 59 */ bl func_801DB5E4 /* 80058A90 000546F0 7C 7F 1B 78 */ mr r31, r3 /* 80058A94 000546F4 38 60 05 DC */ li r3, 0x5dc /* 80058A98 000546F8 3C 80 27 C0 */ lis r4, 0x27c0 /* 80058A9C 000546FC 48 18 2A 21 */ bl func_801DB4BC /* 80058AA0 00054700 7C 64 1B 78 */ mr r4, r3 /* 80058AA4 00054704 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058AA8 00054708 7F E5 FB 78 */ mr r5, r31 /* 80058AAC 0005470C 4B FA B5 55 */ bl memcpy /* 80058AB0 00054710 38 60 05 DC */ li r3, 0x5dc /* 80058AB4 00054714 3C 80 27 C1 */ lis r4, 0x27c1 /* 80058AB8 00054718 48 18 2B 2D */ bl func_801DB5E4 /* 80058ABC 0005471C 7C 7F 1B 78 */ mr r31, r3 /* 80058AC0 00054720 38 60 05 DC */ li r3, 0x5dc /* 80058AC4 00054724 3C 80 27 C1 */ lis r4, 0x27c1 /* 80058AC8 00054728 48 18 29 F5 */ bl func_801DB4BC /* 80058ACC 0005472C 7C 64 1B 78 */ mr r4, r3 /* 80058AD0 00054730 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058AD4 00054734 7F E5 FB 78 */ mr r5, r31 /* 80058AD8 00054738 4B FA B5 29 */ bl memcpy /* 80058ADC 0005473C 38 60 05 DC */ li r3, 0x5dc /* 80058AE0 00054740 48 1F 0D B1 */ bl func_80249890 /* 80058AE4 00054744 38 60 05 DC */ li r3, 0x5dc /* 80058AE8 00054748 48 18 2B 8D */ bl func_801DB674 /* 80058AEC 0005474C 80 6D 96 48 */ lwz r3, lbl_8063E908-_SDA_BASE_(r13) /* 80058AF0 00054750 48 1F 75 6D */ bl func_8025005C /* 80058AF4 00054754 80 6D 96 4C */ lwz r3, lbl_8063E90C-_SDA_BASE_(r13) /* 80058AF8 00054758 48 1F 75 75 */ bl func_8025006C lbl_80058AFC: /* 80058AFC 0005475C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058B00 00054760 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80058B04 00054764 7C 08 03 A6 */ mtlr r0 /* 80058B08 00054768 38 21 00 10 */ addi r1, r1, 0x10 /* 80058B0C 0005476C 4E 80 00 20 */ blr .global func_80058B10 func_80058B10: /* 80058B10 00054770 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80058B14 00054774 7C 08 02 A6 */ mflr r0 /* 80058B18 00054778 90 01 00 14 */ stw r0, 0x14(r1) /* 80058B1C 0005477C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80058B20 00054780 7C 7F 1B 78 */ mr r31, r3 /* 80058B24 00054784 48 29 39 25 */ bl func_802EC448 /* 80058B28 00054788 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80058B2C 0005478C 2C 00 00 04 */ cmpwi r0, 4 /* 80058B30 00054790 41 82 00 38 */ beq lbl_80058B68 /* 80058B34 00054794 40 80 00 14 */ bge lbl_80058B48 /* 80058B38 00054798 2C 00 00 02 */ cmpwi r0, 2 /* 80058B3C 0005479C 41 82 00 1C */ beq lbl_80058B58 /* 80058B40 000547A0 40 80 00 20 */ bge lbl_80058B60 /* 80058B44 000547A4 48 00 00 48 */ b lbl_80058B8C lbl_80058B48: /* 80058B48 000547A8 2C 00 00 06 */ cmpwi r0, 6 /* 80058B4C 000547AC 41 82 00 2C */ beq lbl_80058B78 /* 80058B50 000547B0 40 80 00 3C */ bge lbl_80058B8C /* 80058B54 000547B4 48 00 00 1C */ b lbl_80058B70 lbl_80058B58: /* 80058B58 000547B8 38 60 00 01 */ li r3, 1 /* 80058B5C 000547BC 48 00 00 34 */ b lbl_80058B90 lbl_80058B60: /* 80058B60 000547C0 38 60 00 03 */ li r3, 3 /* 80058B64 000547C4 48 00 00 2C */ b lbl_80058B90 lbl_80058B68: /* 80058B68 000547C8 38 60 00 02 */ li r3, 2 /* 80058B6C 000547CC 48 00 00 24 */ b lbl_80058B90 lbl_80058B70: /* 80058B70 000547D0 38 60 00 04 */ li r3, 4 /* 80058B74 000547D4 48 00 00 1C */ b lbl_80058B90 lbl_80058B78: /* 80058B78 000547D8 7C 1F 00 D0 */ neg r0, r31 /* 80058B7C 000547DC 7C 00 FB 78 */ or r0, r0, r31 /* 80058B80 000547E0 7C 00 FE 70 */ srawi r0, r0, 0x1f /* 80058B84 000547E4 70 03 00 05 */ andi. r3, r0, 5 /* 80058B88 000547E8 48 00 00 08 */ b lbl_80058B90 lbl_80058B8C: /* 80058B8C 000547EC 38 60 00 00 */ li r3, 0 lbl_80058B90: /* 80058B90 000547F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058B94 000547F4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80058B98 000547F8 7C 08 03 A6 */ mtlr r0 /* 80058B9C 000547FC 38 21 00 10 */ addi r1, r1, 0x10 /* 80058BA0 00054800 4E 80 00 20 */ blr .global VMBASEIsPageValid VMBASEIsPageValid: /* 80058BA4 00054804 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80058BA8 00054808 7C 08 02 A6 */ mflr r0 /* 80058BAC 0005480C 90 01 00 14 */ stw r0, 0x14(r1) /* 80058BB0 00054810 48 10 6A E1 */ bl func_8015F690 /* 80058BB4 00054814 80 03 00 48 */ lwz r0, 0x48(r3) /* 80058BB8 00054818 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 80058BBC 0005481C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80058BC0 00054820 7C 08 03 A6 */ mtlr r0 /* 80058BC4 00054824 38 21 00 10 */ addi r1, r1, 0x10 /* 80058BC8 00054828 4E 80 00 20 */ blr .global func_80058BCC func_80058BCC: /* 80058BCC 0005482C 28 03 00 01 */ cmplwi r3, 1 /* 80058BD0 00054830 41 80 00 24 */ blt lbl_80058BF4 /* 80058BD4 00054834 28 03 00 0C */ cmplwi r3, 0xc /* 80058BD8 00054838 41 81 00 1C */ bgt lbl_80058BF4 /* 80058BDC 0005483C 38 03 FF FF */ addi r0, r3, -1 /* 80058BE0 00054840 3C 60 80 41 */ lis r3, lbl_8040B088@ha /* 80058BE4 00054844 54 00 08 3C */ slwi r0, r0, 1 /* 80058BE8 00054848 38 63 B0 88 */ addi r3, r3, lbl_8040B088@l /* 80058BEC 0005484C 7C 63 02 2E */ lhzx r3, r3, r0 /* 80058BF0 00054850 4E 80 00 20 */ blr lbl_80058BF4: /* 80058BF4 00054854 38 60 00 00 */ li r3, 0 /* 80058BF8 00054858 4E 80 00 20 */ blr .global func_80058BFC func_80058BFC: /* 80058BFC 0005485C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80058C00 00054860 7C 08 02 A6 */ mflr r0 /* 80058C04 00054864 90 01 00 24 */ stw r0, 0x24(r1) /* 80058C08 00054868 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80058C0C 0005486C 3B E0 00 00 */ li r31, 0 /* 80058C10 00054870 93 C1 00 18 */ stw r30, 0x18(r1) /* 80058C14 00054874 7C BE 2B 78 */ mr r30, r5 /* 80058C18 00054878 93 A1 00 14 */ stw r29, 0x14(r1) /* 80058C1C 0005487C 7C 9D 23 78 */ mr r29, r4 /* 80058C20 00054880 93 81 00 10 */ stw r28, 0x10(r1) /* 80058C24 00054884 7C 7C 1B 78 */ mr r28, r3 /* 80058C28 00054888 93 E1 00 08 */ stw r31, 8(r1) /* 80058C2C 0005488C B3 E1 00 0C */ sth r31, 0xc(r1) /* 80058C30 00054890 4B FF FF 75 */ bl VMBASEIsPageValid /* 80058C34 00054894 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80058C38 00054898 28 00 00 01 */ cmplwi r0, 1 /* 80058C3C 0005489C 40 82 00 18 */ bne lbl_80058C54 /* 80058C40 000548A0 38 60 00 2E */ li r3, 0x2e /* 80058C44 000548A4 38 00 00 20 */ li r0, 0x20 /* 80058C48 000548A8 B0 61 00 08 */ sth r3, 8(r1) /* 80058C4C 000548AC B0 01 00 0A */ sth r0, 0xa(r1) /* 80058C50 000548B0 48 00 00 10 */ b lbl_80058C60 lbl_80058C54: /* 80058C54 000548B4 38 00 00 20 */ li r0, 0x20 /* 80058C58 000548B8 B3 E1 00 0A */ sth r31, 0xa(r1) /* 80058C5C 000548BC B0 01 00 08 */ sth r0, 8(r1) lbl_80058C60: /* 80058C60 000548C0 38 81 00 08 */ addi r4, r1, 8 /* 80058C64 000548C4 38 60 00 0F */ li r3, 0xf /* 80058C68 000548C8 48 10 36 A1 */ bl func_8015C308 /* 80058C6C 000548CC 7F 84 E3 78 */ mr r4, r28 /* 80058C70 000548D0 7F A5 EB 78 */ mr r5, r29 /* 80058C74 000548D4 7F C8 F3 78 */ mr r8, r30 /* 80058C78 000548D8 38 60 03 F9 */ li r3, 0x3f9 /* 80058C7C 000548DC 38 C0 00 00 */ li r6, 0 /* 80058C80 000548E0 38 E0 00 00 */ li r7, 0 /* 80058C84 000548E4 48 1F 74 B1 */ bl func_80250134 /* 80058C88 000548E8 38 60 03 F9 */ li r3, 0x3f9 /* 80058C8C 000548EC 38 80 00 01 */ li r4, 1 /* 80058C90 000548F0 38 A0 00 00 */ li r5, 0 /* 80058C94 000548F4 48 1F 77 05 */ bl func_80250398 /* 80058C98 000548F8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80058C9C 000548FC 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 80058CA0 00054900 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80058CA4 00054904 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80058CA8 00054908 83 81 00 10 */ lwz r28, 0x10(r1) /* 80058CAC 0005490C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80058CB0 00054910 7C 08 03 A6 */ mtlr r0 /* 80058CB4 00054914 38 21 00 20 */ addi r1, r1, 0x20 /* 80058CB8 00054918 4E 80 00 20 */ blr .global func_80058CBC func_80058CBC: /* 80058CBC 0005491C 38 00 00 03 */ li r0, 3 /* 80058CC0 00054920 7C 65 1B 78 */ mr r5, r3 /* 80058CC4 00054924 39 00 00 00 */ li r8, 0 /* 80058CC8 00054928 7C 66 1B 78 */ mr r6, r3 /* 80058CCC 0005492C 7C 09 03 A6 */ mtctr r0 lbl_80058CD0: /* 80058CD0 00054930 A0 E5 00 04 */ lhz r7, 4(r5) /* 80058CD4 00054934 28 07 FF FF */ cmplwi r7, 0xffff /* 80058CD8 00054938 40 82 00 28 */ bne lbl_80058D00 /* 80058CDC 0005493C A0 86 00 06 */ lhz r4, 6(r6) /* 80058CE0 00054940 28 04 FF FF */ cmplwi r4, 0xffff /* 80058CE4 00054944 40 82 00 1C */ bne lbl_80058D00 /* 80058CE8 00054948 7D 00 07 34 */ extsh r0, r8 /* 80058CEC 0005494C 38 A0 00 00 */ li r5, 0 /* 80058CF0 00054950 54 00 08 3C */ slwi r0, r0, 1 /* 80058CF4 00054954 7C 83 02 14 */ add r4, r3, r0 /* 80058CF8 00054958 B0 A4 00 04 */ sth r5, 4(r4) /* 80058CFC 0005495C 48 00 00 D0 */ b lbl_80058DCC lbl_80058D00: /* 80058D00 00054960 2C 07 00 00 */ cmpwi r7, 0 /* 80058D04 00054964 41 82 00 C8 */ beq lbl_80058DCC /* 80058D08 00054968 A0 E5 00 06 */ lhz r7, 6(r5) /* 80058D0C 0005496C 39 08 00 01 */ addi r8, r8, 1 /* 80058D10 00054970 7D 00 07 34 */ extsh r0, r8 /* 80058D14 00054974 28 07 FF FF */ cmplwi r7, 0xffff /* 80058D18 00054978 40 82 00 24 */ bne lbl_80058D3C /* 80058D1C 0005497C A0 86 00 08 */ lhz r4, 8(r6) /* 80058D20 00054980 28 04 FF FF */ cmplwi r4, 0xffff /* 80058D24 00054984 40 82 00 18 */ bne lbl_80058D3C /* 80058D28 00054988 54 00 08 3C */ slwi r0, r0, 1 /* 80058D2C 0005498C 38 A0 00 00 */ li r5, 0 /* 80058D30 00054990 7C 83 02 14 */ add r4, r3, r0 /* 80058D34 00054994 B0 A4 00 04 */ sth r5, 4(r4) /* 80058D38 00054998 48 00 00 94 */ b lbl_80058DCC lbl_80058D3C: /* 80058D3C 0005499C 2C 07 00 00 */ cmpwi r7, 0 /* 80058D40 000549A0 41 82 00 8C */ beq lbl_80058DCC /* 80058D44 000549A4 A0 E5 00 08 */ lhz r7, 8(r5) /* 80058D48 000549A8 39 08 00 01 */ addi r8, r8, 1 /* 80058D4C 000549AC 7D 00 07 34 */ extsh r0, r8 /* 80058D50 000549B0 28 07 FF FF */ cmplwi r7, 0xffff /* 80058D54 000549B4 40 82 00 24 */ bne lbl_80058D78 /* 80058D58 000549B8 A0 86 00 0A */ lhz r4, 0xa(r6) /* 80058D5C 000549BC 28 04 FF FF */ cmplwi r4, 0xffff /* 80058D60 000549C0 40 82 00 18 */ bne lbl_80058D78 /* 80058D64 000549C4 54 00 08 3C */ slwi r0, r0, 1 /* 80058D68 000549C8 38 A0 00 00 */ li r5, 0 /* 80058D6C 000549CC 7C 83 02 14 */ add r4, r3, r0 /* 80058D70 000549D0 B0 A4 00 04 */ sth r5, 4(r4) /* 80058D74 000549D4 48 00 00 58 */ b lbl_80058DCC lbl_80058D78: /* 80058D78 000549D8 2C 07 00 00 */ cmpwi r7, 0 /* 80058D7C 000549DC 41 82 00 50 */ beq lbl_80058DCC /* 80058D80 000549E0 A0 E5 00 0A */ lhz r7, 0xa(r5) /* 80058D84 000549E4 39 08 00 01 */ addi r8, r8, 1 /* 80058D88 000549E8 7D 00 07 34 */ extsh r0, r8 /* 80058D8C 000549EC 28 07 FF FF */ cmplwi r7, 0xffff /* 80058D90 000549F0 40 82 00 24 */ bne lbl_80058DB4 /* 80058D94 000549F4 A0 86 00 0C */ lhz r4, 0xc(r6) /* 80058D98 000549F8 28 04 FF FF */ cmplwi r4, 0xffff /* 80058D9C 000549FC 40 82 00 18 */ bne lbl_80058DB4 /* 80058DA0 00054A00 54 00 08 3C */ slwi r0, r0, 1 /* 80058DA4 00054A04 38 A0 00 00 */ li r5, 0 /* 80058DA8 00054A08 7C 83 02 14 */ add r4, r3, r0 /* 80058DAC 00054A0C B0 A4 00 04 */ sth r5, 4(r4) /* 80058DB0 00054A10 48 00 00 1C */ b lbl_80058DCC lbl_80058DB4: /* 80058DB4 00054A14 2C 07 00 00 */ cmpwi r7, 0 /* 80058DB8 00054A18 41 82 00 14 */ beq lbl_80058DCC /* 80058DBC 00054A1C 39 08 00 01 */ addi r8, r8, 1 /* 80058DC0 00054A20 38 C6 00 08 */ addi r6, r6, 8 /* 80058DC4 00054A24 38 A5 00 08 */ addi r5, r5, 8 /* 80058DC8 00054A28 42 00 FF 08 */ bdnz lbl_80058CD0 lbl_80058DCC: /* 80058DCC 00054A2C A0 A3 00 16 */ lhz r5, 0x16(r3) /* 80058DD0 00054A30 3C 80 00 01 */ lis r4, 0x0000FFFF@ha /* 80058DD4 00054A34 38 84 FF FF */ addi r4, r4, 0x0000FFFF@l /* 80058DD8 00054A38 38 00 00 13 */ li r0, 0x13 /* 80058DDC 00054A3C B0 A3 00 1A */ sth r5, 0x1a(r3) /* 80058DE0 00054A40 A0 A3 00 14 */ lhz r5, 0x14(r3) /* 80058DE4 00054A44 B0 A3 00 18 */ sth r5, 0x18(r3) /* 80058DE8 00054A48 A0 A3 00 12 */ lhz r5, 0x12(r3) /* 80058DEC 00054A4C B0 A3 00 16 */ sth r5, 0x16(r3) /* 80058DF0 00054A50 A0 A3 00 10 */ lhz r5, 0x10(r3) /* 80058DF4 00054A54 B0 A3 00 14 */ sth r5, 0x14(r3) /* 80058DF8 00054A58 A0 A3 00 0E */ lhz r5, 0xe(r3) /* 80058DFC 00054A5C B0 A3 00 12 */ sth r5, 0x12(r3) /* 80058E00 00054A60 A0 A3 00 0C */ lhz r5, 0xc(r3) /* 80058E04 00054A64 B0 A3 00 10 */ sth r5, 0x10(r3) /* 80058E08 00054A68 A0 A3 00 0A */ lhz r5, 0xa(r3) /* 80058E0C 00054A6C B0 A3 00 0E */ sth r5, 0xe(r3) /* 80058E10 00054A70 A0 A3 00 08 */ lhz r5, 8(r3) /* 80058E14 00054A74 B0 A3 00 0C */ sth r5, 0xc(r3) /* 80058E18 00054A78 A0 A3 00 06 */ lhz r5, 6(r3) /* 80058E1C 00054A7C B0 A3 00 0A */ sth r5, 0xa(r3) /* 80058E20 00054A80 A0 A3 00 04 */ lhz r5, 4(r3) /* 80058E24 00054A84 B0 A3 00 08 */ sth r5, 8(r3) /* 80058E28 00054A88 B0 83 00 04 */ sth r4, 4(r3) /* 80058E2C 00054A8C B0 03 00 06 */ sth r0, 6(r3) /* 80058E30 00054A90 4E 80 00 20 */ blr .global func_80058E34 func_80058E34: /* 80058E34 00054A94 A0 03 00 04 */ lhz r0, 4(r3) /* 80058E38 00054A98 28 00 FF FF */ cmplwi r0, 0xffff /* 80058E3C 00054A9C 4C 82 00 20 */ bnelr /* 80058E40 00054AA0 A0 03 00 06 */ lhz r0, 6(r3) /* 80058E44 00054AA4 28 00 00 13 */ cmplwi r0, 0x13 /* 80058E48 00054AA8 4C 82 00 20 */ bnelr /* 80058E4C 00054AAC A0 03 00 08 */ lhz r0, 8(r3) /* 80058E50 00054AB0 B0 03 00 04 */ sth r0, 4(r3) /* 80058E54 00054AB4 A0 03 00 0A */ lhz r0, 0xa(r3) /* 80058E58 00054AB8 B0 03 00 06 */ sth r0, 6(r3) /* 80058E5C 00054ABC A0 03 00 0C */ lhz r0, 0xc(r3) /* 80058E60 00054AC0 B0 03 00 08 */ sth r0, 8(r3) /* 80058E64 00054AC4 A0 03 00 0E */ lhz r0, 0xe(r3) /* 80058E68 00054AC8 B0 03 00 0A */ sth r0, 0xa(r3) /* 80058E6C 00054ACC A0 03 00 10 */ lhz r0, 0x10(r3) /* 80058E70 00054AD0 B0 03 00 0C */ sth r0, 0xc(r3) /* 80058E74 00054AD4 A0 03 00 12 */ lhz r0, 0x12(r3) /* 80058E78 00054AD8 B0 03 00 0E */ sth r0, 0xe(r3) /* 80058E7C 00054ADC A0 03 00 14 */ lhz r0, 0x14(r3) /* 80058E80 00054AE0 B0 03 00 10 */ sth r0, 0x10(r3) /* 80058E84 00054AE4 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80058E88 00054AE8 B0 03 00 12 */ sth r0, 0x12(r3) /* 80058E8C 00054AEC A0 03 00 18 */ lhz r0, 0x18(r3) /* 80058E90 00054AF0 B0 03 00 14 */ sth r0, 0x14(r3) /* 80058E94 00054AF4 A0 03 00 1A */ lhz r0, 0x1a(r3) /* 80058E98 00054AF8 B0 03 00 16 */ sth r0, 0x16(r3) /* 80058E9C 00054AFC 4E 80 00 20 */ blr .global func_80058EA0 func_80058EA0: /* 80058EA0 00054B00 38 00 00 0A */ li r0, 0xa /* 80058EA4 00054B04 7C 64 1B 78 */ mr r4, r3 /* 80058EA8 00054B08 38 E0 00 00 */ li r7, 0 /* 80058EAC 00054B0C 7C 65 1B 78 */ mr r5, r3 /* 80058EB0 00054B10 7C 09 03 A6 */ mtctr r0 lbl_80058EB4: /* 80058EB4 00054B14 A0 C4 00 04 */ lhz r6, 4(r4) /* 80058EB8 00054B18 28 06 FF FF */ cmplwi r6, 0xffff /* 80058EBC 00054B1C 40 82 00 54 */ bne lbl_80058F10 /* 80058EC0 00054B20 A0 05 00 06 */ lhz r0, 6(r5) /* 80058EC4 00054B24 28 00 FF FF */ cmplwi r0, 0xffff /* 80058EC8 00054B28 40 82 00 48 */ bne lbl_80058F10 /* 80058ECC 00054B2C 7C E7 07 34 */ extsh r7, r7 /* 80058ED0 00054B30 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 80058ED4 00054B34 54 E0 08 3C */ slwi r0, r7, 1 /* 80058ED8 00054B38 38 A0 00 13 */ li r5, 0x13 /* 80058EDC 00054B3C 38 87 00 01 */ addi r4, r7, 1 /* 80058EE0 00054B40 39 06 FF FF */ addi r8, r6, 0x0000FFFF@l /* 80058EE4 00054B44 7C C3 02 14 */ add r6, r3, r0 /* 80058EE8 00054B48 38 07 00 02 */ addi r0, r7, 2 /* 80058EEC 00054B4C 54 84 08 3C */ slwi r4, r4, 1 /* 80058EF0 00054B50 B1 06 00 04 */ sth r8, 4(r6) /* 80058EF4 00054B54 7C 83 22 14 */ add r4, r3, r4 /* 80058EF8 00054B58 54 00 08 3C */ slwi r0, r0, 1 /* 80058EFC 00054B5C B0 A4 00 04 */ sth r5, 4(r4) /* 80058F00 00054B60 7C 83 02 14 */ add r4, r3, r0 /* 80058F04 00054B64 38 00 00 00 */ li r0, 0 /* 80058F08 00054B68 B0 04 00 04 */ sth r0, 4(r4) /* 80058F0C 00054B6C 48 00 00 60 */ b lbl_80058F6C lbl_80058F10: /* 80058F10 00054B70 2C 06 00 00 */ cmpwi r6, 0 /* 80058F14 00054B74 40 82 00 48 */ bne lbl_80058F5C /* 80058F18 00054B78 7C E7 07 34 */ extsh r7, r7 /* 80058F1C 00054B7C 3C C0 00 01 */ lis r6, 0x0000FFFF@ha /* 80058F20 00054B80 54 E0 08 3C */ slwi r0, r7, 1 /* 80058F24 00054B84 38 A0 00 13 */ li r5, 0x13 /* 80058F28 00054B88 38 87 00 01 */ addi r4, r7, 1 /* 80058F2C 00054B8C 39 06 FF FF */ addi r8, r6, 0x0000FFFF@l /* 80058F30 00054B90 7C C3 02 14 */ add r6, r3, r0 /* 80058F34 00054B94 38 07 00 02 */ addi r0, r7, 2 /* 80058F38 00054B98 54 84 08 3C */ slwi r4, r4, 1 /* 80058F3C 00054B9C B1 06 00 04 */ sth r8, 4(r6) /* 80058F40 00054BA0 7C 83 22 14 */ add r4, r3, r4 /* 80058F44 00054BA4 54 00 08 3C */ slwi r0, r0, 1 /* 80058F48 00054BA8 B0 A4 00 04 */ sth r5, 4(r4) /* 80058F4C 00054BAC 7C 83 02 14 */ add r4, r3, r0 /* 80058F50 00054BB0 38 00 00 00 */ li r0, 0 /* 80058F54 00054BB4 B0 04 00 04 */ sth r0, 4(r4) /* 80058F58 00054BB8 48 00 00 14 */ b lbl_80058F6C lbl_80058F5C: /* 80058F5C 00054BBC 38 E7 00 01 */ addi r7, r7, 1 /* 80058F60 00054BC0 38 A5 00 02 */ addi r5, r5, 2 /* 80058F64 00054BC4 38 84 00 02 */ addi r4, r4, 2 /* 80058F68 00054BC8 42 00 FF 4C */ bdnz lbl_80058EB4 lbl_80058F6C: /* 80058F6C 00054BCC A0 A3 00 16 */ lhz r5, 0x16(r3) /* 80058F70 00054BD0 3C 80 00 01 */ lis r4, 0x0000FFFF@ha /* 80058F74 00054BD4 38 84 FF FF */ addi r4, r4, 0x0000FFFF@l /* 80058F78 00054BD8 38 00 00 14 */ li r0, 0x14 /* 80058F7C 00054BDC B0 A3 00 1A */ sth r5, 0x1a(r3) /* 80058F80 00054BE0 A0 A3 00 14 */ lhz r5, 0x14(r3) /* 80058F84 00054BE4 B0 A3 00 18 */ sth r5, 0x18(r3) /* 80058F88 00054BE8 A0 A3 00 12 */ lhz r5, 0x12(r3) /* 80058F8C 00054BEC B0 A3 00 16 */ sth r5, 0x16(r3) /* 80058F90 00054BF0 A0 A3 00 10 */ lhz r5, 0x10(r3) /* 80058F94 00054BF4 B0 A3 00 14 */ sth r5, 0x14(r3) /* 80058F98 00054BF8 A0 A3 00 0E */ lhz r5, 0xe(r3) /* 80058F9C 00054BFC B0 A3 00 12 */ sth r5, 0x12(r3) /* 80058FA0 00054C00 A0 A3 00 0C */ lhz r5, 0xc(r3) /* 80058FA4 00054C04 B0 A3 00 10 */ sth r5, 0x10(r3) /* 80058FA8 00054C08 A0 A3 00 0A */ lhz r5, 0xa(r3) /* 80058FAC 00054C0C B0 A3 00 0E */ sth r5, 0xe(r3) /* 80058FB0 00054C10 A0 A3 00 08 */ lhz r5, 8(r3) /* 80058FB4 00054C14 B0 A3 00 0C */ sth r5, 0xc(r3) /* 80058FB8 00054C18 A0 A3 00 06 */ lhz r5, 6(r3) /* 80058FBC 00054C1C B0 A3 00 0A */ sth r5, 0xa(r3) /* 80058FC0 00054C20 A0 A3 00 04 */ lhz r5, 4(r3) /* 80058FC4 00054C24 B0 A3 00 08 */ sth r5, 8(r3) /* 80058FC8 00054C28 B0 83 00 04 */ sth r4, 4(r3) /* 80058FCC 00054C2C B0 03 00 06 */ sth r0, 6(r3) /* 80058FD0 00054C30 4E 80 00 20 */ blr .global func_80058FD4 func_80058FD4: /* 80058FD4 00054C34 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80058FD8 00054C38 7C 08 02 A6 */ mflr r0 /* 80058FDC 00054C3C 2C 04 00 00 */ cmpwi r4, 0 /* 80058FE0 00054C40 90 01 00 54 */ stw r0, 0x54(r1) /* 80058FE4 00054C44 3C 00 43 30 */ lis r0, 0x4330 /* 80058FE8 00054C48 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80058FEC 00054C4C 3B E0 FF 00 */ li r31, -256 /* 80058FF0 00054C50 50 7F 06 3E */ rlwimi r31, r3, 0, 0x18, 0x1f /* 80058FF4 00054C54 93 C1 00 48 */ stw r30, 0x48(r1) /* 80058FF8 00054C58 93 A1 00 44 */ stw r29, 0x44(r1) /* 80058FFC 00054C5C 93 81 00 40 */ stw r28, 0x40(r1) /* 80059000 00054C60 3F 80 80 40 */ lis r28, lbl_803FB820@ha /* 80059004 00054C64 3B 9C B8 20 */ addi r28, r28, lbl_803FB820@l /* 80059008 00054C68 90 01 00 28 */ stw r0, 0x28(r1) /* 8005900C 00054C6C 90 01 00 30 */ stw r0, 0x30(r1) /* 80059010 00054C70 41 82 00 F4 */ beq lbl_80059104 /* 80059014 00054C74 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80059018 00054C78 88 03 00 7A */ lbz r0, 0x7a(r3) /* 8005901C 00054C7C 2C 00 00 00 */ cmpwi r0, 0 /* 80059020 00054C80 41 82 00 78 */ beq lbl_80059098 /* 80059024 00054C84 C0 62 85 A0 */ lfs f3, lbl_80640BA0-_SDA2_BASE_(r2) /* 80059028 00054C88 38 60 00 01 */ li r3, 1 /* 8005902C 00054C8C C0 42 85 A4 */ lfs f2, lbl_80640BA4-_SDA2_BASE_(r2) /* 80059030 00054C90 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 80059034 00054C94 C0 02 85 8C */ lfs f0, lbl_80640B8C-_SDA2_BASE_(r2) /* 80059038 00054C98 D0 61 00 14 */ stfs f3, 0x14(r1) /* 8005903C 00054C9C D0 61 00 08 */ stfs f3, 8(r1) /* 80059040 00054CA0 D0 41 00 10 */ stfs f2, 0x10(r1) /* 80059044 00054CA4 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80059048 00054CA8 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 8005904C 00054CAC D0 21 00 18 */ stfs f1, 0x18(r1) /* 80059050 00054CB0 D0 01 00 24 */ stfs f0, 0x24(r1) /* 80059054 00054CB4 D0 01 00 20 */ stfs f0, 0x20(r1) /* 80059058 00054CB8 4B FF FA B9 */ bl func_80058B10 /* 8005905C 00054CBC 54 63 1D 78 */ rlwinm r3, r3, 3, 0x15, 0x1c /* 80059060 00054CC0 38 1C 00 18 */ addi r0, r28, 0x18 /* 80059064 00054CC4 7F A0 1A 14 */ add r29, r0, r3 /* 80059068 00054CC8 38 60 00 01 */ li r3, 1 /* 8005906C 00054CCC 4B FF FA A5 */ bl func_80058B10 /* 80059070 00054CD0 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80059074 00054CD4 38 7C 00 00 */ addi r3, r28, 0 /* 80059078 00054CD8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005907C 00054CDC 80 9D 00 04 */ lwz r4, 4(r29) /* 80059080 00054CE0 48 00 1B E1 */ bl func_8005AC60 /* 80059084 00054CE4 7F E5 FB 78 */ mr r5, r31 /* 80059088 00054CE8 38 81 00 08 */ addi r4, r1, 8 /* 8005908C 00054CEC 38 C0 00 00 */ li r6, 0 /* 80059090 00054CF0 48 00 1E E9 */ bl func_8005AF78 /* 80059094 00054CF4 48 00 01 54 */ b lbl_800591E8 lbl_80059098: /* 80059098 00054CF8 C0 42 85 60 */ lfs f2, lbl_80640B60-_SDA2_BASE_(r2) /* 8005909C 00054CFC 38 60 00 01 */ li r3, 1 /* 800590A0 00054D00 C0 22 85 88 */ lfs f1, lbl_80640B88-_SDA2_BASE_(r2) /* 800590A4 00054D04 C0 02 85 8C */ lfs f0, lbl_80640B8C-_SDA2_BASE_(r2) /* 800590A8 00054D08 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800590AC 00054D0C D0 41 00 08 */ stfs f2, 8(r1) /* 800590B0 00054D10 D0 21 00 10 */ stfs f1, 0x10(r1) /* 800590B4 00054D14 D0 21 00 0C */ stfs f1, 0xc(r1) /* 800590B8 00054D18 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 800590BC 00054D1C D0 41 00 18 */ stfs f2, 0x18(r1) /* 800590C0 00054D20 D0 01 00 24 */ stfs f0, 0x24(r1) /* 800590C4 00054D24 D0 01 00 20 */ stfs f0, 0x20(r1) /* 800590C8 00054D28 4B FF FA 49 */ bl func_80058B10 /* 800590CC 00054D2C 54 7E 1D 78 */ rlwinm r30, r3, 3, 0x15, 0x1c /* 800590D0 00054D30 3B BC 00 18 */ addi r29, r28, 0x18 /* 800590D4 00054D34 38 60 00 01 */ li r3, 1 /* 800590D8 00054D38 4B FF FA 39 */ bl func_80058B10 /* 800590DC 00054D3C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800590E0 00054D40 38 7C 00 00 */ addi r3, r28, 0 /* 800590E4 00054D44 7C 63 00 2E */ lwzx r3, r3, r0 /* 800590E8 00054D48 7C 9D F0 2E */ lwzx r4, r29, r30 /* 800590EC 00054D4C 48 00 1B 75 */ bl func_8005AC60 /* 800590F0 00054D50 7F E5 FB 78 */ mr r5, r31 /* 800590F4 00054D54 38 81 00 08 */ addi r4, r1, 8 /* 800590F8 00054D58 38 C0 00 00 */ li r6, 0 /* 800590FC 00054D5C 48 00 1E 7D */ bl func_8005AF78 /* 80059100 00054D60 48 00 00 E8 */ b lbl_800591E8 lbl_80059104: /* 80059104 00054D64 38 60 00 01 */ li r3, 1 /* 80059108 00054D68 4B FF FA 09 */ bl func_80058B10 /* 8005910C 00054D6C 54 7D 15 BA */ rlwinm r29, r3, 2, 0x16, 0x1d /* 80059110 00054D70 3B DC 00 48 */ addi r30, r28, 0x48 /* 80059114 00054D74 38 60 00 01 */ li r3, 1 /* 80059118 00054D78 4B FF F9 F9 */ bl func_80058B10 /* 8005911C 00054D7C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 80059120 00054D80 38 7C 00 00 */ addi r3, r28, 0 /* 80059124 00054D84 7C 63 00 2E */ lwzx r3, r3, r0 /* 80059128 00054D88 7C 9E E8 2E */ lwzx r4, r30, r29 /* 8005912C 00054D8C 48 00 1B 35 */ bl func_8005AC60 /* 80059130 00054D90 7C 7C 1B 78 */ mr r28, r3 /* 80059134 00054D94 48 1E 54 0D */ bl func_8023E540 /* 80059138 00054D98 7C 7E 1B 78 */ mr r30, r3 /* 8005913C 00054D9C 7F 83 E3 78 */ mr r3, r28 /* 80059140 00054DA0 48 1E 54 09 */ bl func_8023E548 /* 80059144 00054DA4 57 C0 04 3E */ clrlwi r0, r30, 0x10 /* 80059148 00054DA8 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005914C 00054DAC 20 60 02 80 */ subfic r3, r0, 0x280 /* 80059150 00054DB0 90 01 00 34 */ stw r0, 0x34(r1) /* 80059154 00054DB4 54 60 0F FE */ srwi r0, r3, 0x1f /* 80059158 00054DB8 C8 62 85 98 */ lfd f3, lbl_80640B98-_SDA2_BASE_(r2) /* 8005915C 00054DBC 7C 00 1A 14 */ add r0, r0, r3 /* 80059160 00054DC0 C8 01 00 30 */ lfd f0, 0x30(r1) /* 80059164 00054DC4 7C 00 0E 70 */ srawi r0, r0, 1 /* 80059168 00054DC8 C8 A2 85 A8 */ lfd f5, lbl_80640BA8-_SDA2_BASE_(r2) /* 8005916C 00054DCC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80059170 00054DD0 20 64 01 E0 */ subfic r3, r4, 0x1e0 /* 80059174 00054DD4 90 01 00 2C */ stw r0, 0x2c(r1) /* 80059178 00054DD8 54 60 0F FE */ srwi r0, r3, 0x1f /* 8005917C 00054DDC 7C 00 1A 14 */ add r0, r0, r3 /* 80059180 00054DE0 EC 40 18 28 */ fsubs f2, f0, f3 /* 80059184 00054DE4 7C 00 0E 70 */ srawi r0, r0, 1 /* 80059188 00054DE8 C8 01 00 28 */ lfd f0, 0x28(r1) /* 8005918C 00054DEC 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80059190 00054DF0 90 81 00 34 */ stw r4, 0x34(r1) /* 80059194 00054DF4 EC 80 28 28 */ fsubs f4, f0, f5 /* 80059198 00054DF8 90 01 00 2C */ stw r0, 0x2c(r1) /* 8005919C 00054DFC 7F 83 E3 78 */ mr r3, r28 /* 800591A0 00054E00 C8 01 00 30 */ lfd f0, 0x30(r1) /* 800591A4 00054E04 7F E5 FB 78 */ mr r5, r31 /* 800591A8 00054E08 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800591AC 00054E0C EC 00 18 28 */ fsubs f0, f0, f3 /* 800591B0 00054E10 D0 81 00 14 */ stfs f4, 0x14(r1) /* 800591B4 00054E14 EC 21 28 28 */ fsubs f1, f1, f5 /* 800591B8 00054E18 38 81 00 08 */ addi r4, r1, 8 /* 800591BC 00054E1C EC 44 10 2A */ fadds f2, f4, f2 /* 800591C0 00054E20 D0 81 00 08 */ stfs f4, 8(r1) /* 800591C4 00054E24 EC 01 00 2A */ fadds f0, f1, f0 /* 800591C8 00054E28 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800591CC 00054E2C 38 C0 00 00 */ li r6, 0 /* 800591D0 00054E30 D0 41 00 10 */ stfs f2, 0x10(r1) /* 800591D4 00054E34 D0 41 00 0C */ stfs f2, 0xc(r1) /* 800591D8 00054E38 D0 21 00 18 */ stfs f1, 0x18(r1) /* 800591DC 00054E3C D0 01 00 24 */ stfs f0, 0x24(r1) /* 800591E0 00054E40 D0 01 00 20 */ stfs f0, 0x20(r1) /* 800591E4 00054E44 48 00 1D 95 */ bl func_8005AF78 lbl_800591E8: /* 800591E8 00054E48 80 01 00 54 */ lwz r0, 0x54(r1) /* 800591EC 00054E4C 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 800591F0 00054E50 83 C1 00 48 */ lwz r30, 0x48(r1) /* 800591F4 00054E54 83 A1 00 44 */ lwz r29, 0x44(r1) /* 800591F8 00054E58 83 81 00 40 */ lwz r28, 0x40(r1) /* 800591FC 00054E5C 7C 08 03 A6 */ mtlr r0 /* 80059200 00054E60 38 21 00 50 */ addi r1, r1, 0x50 /* 80059204 00054E64 4E 80 00 20 */ blr .global func_80059208 func_80059208: /* 80059208 00054E68 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005920C 00054E6C 3C A0 80 06 */ lis r5, lbl_80059288@ha /* 80059210 00054E70 38 A5 92 88 */ addi r5, r5, lbl_80059288@l /* 80059214 00054E74 38 80 00 C8 */ li r4, 0xc8 /* 80059218 00054E78 80 03 00 08 */ lwz r0, 8(r3) /* 8005921C 00054E7C 38 C0 00 00 */ li r6, 0 /* 80059220 00054E80 38 E0 20 00 */ li r7, 0x2000 /* 80059224 00054E84 39 00 00 08 */ li r8, 8 /* 80059228 00054E88 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 8005922C 00054E8C 39 20 00 01 */ li r9, 1 /* 80059230 00054E90 90 03 00 08 */ stw r0, 8(r3) /* 80059234 00054E94 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 80059238 00054E98 48 1C AF DC */ b func_80224214 .global func_8005923C func_8005923C: /* 8005923C 00054E9C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059240 00054EA0 80 03 00 08 */ lwz r0, 8(r3) /* 80059244 00054EA4 54 03 F7 FE */ rlwinm r3, r0, 0x1e, 0x1f, 0x1f /* 80059248 00054EA8 4E 80 00 20 */ blr .global func_8005924C func_8005924C: /* 8005924C 00054EAC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059250 00054EB0 80 03 00 08 */ lwz r0, 8(r3) /* 80059254 00054EB4 54 03 07 FE */ clrlwi r3, r0, 0x1f /* 80059258 00054EB8 4E 80 00 20 */ blr .global func_8005925C func_8005925C: /* 8005925C 00054EBC 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059260 00054EC0 2C 03 00 00 */ cmpwi r3, 0 /* 80059264 00054EC4 80 04 00 08 */ lwz r0, 8(r4) /* 80059268 00054EC8 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e /* 8005926C 00054ECC 90 04 00 08 */ stw r0, 8(r4) /* 80059270 00054ED0 4C 82 00 20 */ bnelr /* 80059274 00054ED4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059278 00054ED8 80 03 00 08 */ lwz r0, 8(r3) /* 8005927C 00054EDC 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e /* 80059280 00054EE0 90 03 00 08 */ stw r0, 8(r3) /* 80059284 00054EE4 4E 80 00 20 */ blr lbl_80059288: /* 80059288 00054EE8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005928C 00054EEC 7C 08 02 A6 */ mflr r0 /* 80059290 00054EF0 90 01 00 24 */ stw r0, 0x24(r1) /* 80059294 00054EF4 39 61 00 20 */ addi r11, r1, 0x20 /* 80059298 00054EF8 48 16 DE 91 */ bl _savegpr_27 /* 8005929C 00054EFC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800592A0 00054F00 38 00 00 00 */ li r0, 0 /* 800592A4 00054F04 3C 80 80 06 */ lis r4, lbl_80059414@ha /* 800592A8 00054F08 C0 02 85 60 */ lfs f0, lbl_80640B60-_SDA2_BASE_(r2) /* 800592AC 00054F0C 98 03 10 A8 */ stb r0, 0x10a8(r3) /* 800592B0 00054F10 38 84 94 14 */ addi r4, r4, lbl_80059414@l /* 800592B4 00054F14 38 60 00 00 */ li r3, 0 /* 800592B8 00054F18 38 A0 FF FF */ li r5, -1 /* 800592BC 00054F1C 80 CD 81 E0 */ lwz r6, lbl_8063D4A0-_SDA_BASE_(r13) /* 800592C0 00054F20 D0 06 10 98 */ stfs f0, 0x1098(r6) /* 800592C4 00054F24 48 1F AC A9 */ bl func_80253F6C /* 800592C8 00054F28 7C 7F 1B 78 */ mr r31, r3 /* 800592CC 00054F2C 48 00 16 C9 */ bl func_8005A994 /* 800592D0 00054F30 48 00 00 0C */ b lbl_800592DC lbl_800592D4: /* 800592D4 00054F34 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 800592D8 00054F38 48 1C B2 B1 */ bl func_80224588 lbl_800592DC: /* 800592DC 00054F3C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800592E0 00054F40 80 03 00 08 */ lwz r0, 8(r3) /* 800592E4 00054F44 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 800592E8 00054F48 41 82 FF EC */ beq lbl_800592D4 /* 800592EC 00054F4C 38 60 00 01 */ li r3, 1 /* 800592F0 00054F50 4B FF F8 21 */ bl func_80058B10 /* 800592F4 00054F54 3C 80 80 40 */ lis r4, lbl_803FB820@ha /* 800592F8 00054F58 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800592FC 00054F5C 38 84 B8 20 */ addi r4, r4, lbl_803FB820@l /* 80059300 00054F60 7C 64 00 2E */ lwzx r3, r4, r0 /* 80059304 00054F64 48 1F 02 D9 */ bl func_802495DC /* 80059308 00054F68 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005930C 00054F6C 38 00 00 01 */ li r0, 1 /* 80059310 00054F70 98 03 10 A8 */ stb r0, 0x10a8(r3) /* 80059314 00054F74 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059318 00054F78 80 03 00 08 */ lwz r0, 8(r3) /* 8005931C 00054F7C 60 00 00 01 */ ori r0, r0, 1 /* 80059320 00054F80 90 03 00 08 */ stw r0, 8(r3) /* 80059324 00054F84 48 21 94 95 */ bl OSGetTime /* 80059328 00054F88 3C A0 43 1C */ lis r5, 0x431BDE83@ha /* 8005932C 00054F8C 7C 9B 23 78 */ mr r27, r4 /* 80059330 00054F90 7C 7C 1B 78 */ mr r28, r3 /* 80059334 00054F94 3F C0 80 00 */ lis r30, 0x8000 /* 80059338 00054F98 3B A5 DE 83 */ addi r29, r5, 0x431BDE83@l lbl_8005933C: /* 8005933C 00054F9C 48 21 94 7D */ bl OSGetTime /* 80059340 00054FA0 80 1E 00 F8 */ lwz r0, 0xf8(r30) /* 80059344 00054FA4 7C DB 20 10 */ subfc r6, r27, r4 /* 80059348 00054FA8 7C 7C 19 10 */ subfe r3, r28, r3 /* 8005934C 00054FAC 38 A0 00 00 */ li r5, 0 /* 80059350 00054FB0 54 00 F0 BE */ srwi r0, r0, 2 /* 80059354 00054FB4 54 C4 18 38 */ slwi r4, r6, 3 /* 80059358 00054FB8 7C 1D 00 16 */ mulhwu r0, r29, r0 /* 8005935C 00054FBC 54 63 18 38 */ slwi r3, r3, 3 /* 80059360 00054FC0 50 C3 1F 7E */ rlwimi r3, r6, 3, 0x1d, 0x1f /* 80059364 00054FC4 54 06 8B FE */ srwi r6, r0, 0xf /* 80059368 00054FC8 48 16 DE 25 */ bl __div2u /* 8005936C 00054FCC 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059370 00054FD0 90 85 10 A4 */ stw r4, 0x10a4(r5) /* 80059374 00054FD4 90 65 10 A0 */ stw r3, 0x10a0(r5) /* 80059378 00054FD8 48 21 94 41 */ bl OSGetTime /* 8005937C 00054FDC 7C 9B 23 78 */ mr r27, r4 /* 80059380 00054FE0 7C 7C 1B 78 */ mr r28, r3 /* 80059384 00054FE4 48 00 04 41 */ bl func_800597C4 /* 80059388 00054FE8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005938C 00054FEC C0 03 10 98 */ lfs f0, 0x1098(r3) /* 80059390 00054FF0 EC 00 08 2A */ fadds f0, f0, f1 /* 80059394 00054FF4 D0 03 10 98 */ stfs f0, 0x1098(r3) /* 80059398 00054FF8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8005939C 00054FFC 48 1C B1 ED */ bl func_80224588 /* 800593A0 00055000 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800593A4 00055004 88 03 10 A8 */ lbz r0, 0x10a8(r3) /* 800593A8 00055008 28 00 00 0F */ cmplwi r0, 0xf /* 800593AC 0005500C 40 82 FF 90 */ bne lbl_8005933C /* 800593B0 00055010 38 60 00 01 */ li r3, 1 /* 800593B4 00055014 4B FF F7 5D */ bl func_80058B10 /* 800593B8 00055018 3F C0 80 40 */ lis r30, lbl_803FB820@ha /* 800593BC 0005501C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800593C0 00055020 3B DE B8 20 */ addi r30, r30, lbl_803FB820@l /* 800593C4 00055024 7C 7E 00 2E */ lwzx r3, r30, r0 /* 800593C8 00055028 48 1F 04 C9 */ bl func_80249890 /* 800593CC 0005502C 38 60 00 01 */ li r3, 1 /* 800593D0 00055030 4B FF F7 41 */ bl func_80058B10 /* 800593D4 00055034 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800593D8 00055038 7C 7E 00 2E */ lwzx r3, r30, r0 /* 800593DC 0005503C 48 18 22 99 */ bl func_801DB674 /* 800593E0 00055040 7F E3 FB 78 */ mr r3, r31 /* 800593E4 00055044 48 1F AB A9 */ bl func_80253F8C /* 800593E8 00055048 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 800593EC 0005504C 39 61 00 20 */ addi r11, r1, 0x20 /* 800593F0 00055050 38 60 00 00 */ li r3, 0 /* 800593F4 00055054 80 04 00 08 */ lwz r0, 8(r4) /* 800593F8 00055058 60 00 00 04 */ ori r0, r0, 4 /* 800593FC 0005505C 90 04 00 08 */ stw r0, 8(r4) /* 80059400 00055060 48 16 DD 75 */ bl _restgpr_27 /* 80059404 00055064 80 01 00 24 */ lwz r0, 0x24(r1) /* 80059408 00055068 7C 08 03 A6 */ mtlr r0 /* 8005940C 0005506C 38 21 00 20 */ addi r1, r1, 0x20 /* 80059410 00055070 4E 80 00 20 */ blr lbl_80059414: /* 80059414 00055074 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80059418 00055078 7C 08 02 A6 */ mflr r0 /* 8005941C 0005507C 38 60 00 00 */ li r3, 0 /* 80059420 00055080 90 01 00 14 */ stw r0, 0x14(r1) /* 80059424 00055084 48 1E B3 79 */ bl func_8024479C /* 80059428 00055088 80 AD 81 E0 */ lwz r5, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005942C 0005508C 88 05 10 A8 */ lbz r0, 0x10a8(r5) /* 80059430 00055090 28 00 00 0E */ cmplwi r0, 0xe /* 80059434 00055094 41 81 03 80 */ bgt lbl_800597B4 /* 80059438 00055098 3C 80 80 41 */ lis r4, lbl_8040B0A0@ha /* 8005943C 0005509C 54 00 10 3A */ slwi r0, r0, 2 /* 80059440 000550A0 38 84 B0 A0 */ addi r4, r4, lbl_8040B0A0@l /* 80059444 000550A4 7C 84 00 2E */ lwzx r4, r4, r0 /* 80059448 000550A8 7C 89 03 A6 */ mtctr r4 /* 8005944C 000550AC 4E 80 04 20 */ bctr /* 80059450 000550B0 C0 05 10 98 */ lfs f0, 0x1098(r5) /* 80059454 000550B4 38 60 00 00 */ li r3, 0 /* 80059458 000550B8 38 80 00 01 */ li r4, 1 /* 8005945C 000550BC D0 05 10 9C */ stfs f0, 0x109c(r5) /* 80059460 000550C0 4B FF FB 75 */ bl func_80058FD4 /* 80059464 000550C4 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059468 000550C8 38 00 00 02 */ li r0, 2 /* 8005946C 000550CC 98 03 10 A8 */ stb r0, 0x10a8(r3) /* 80059470 000550D0 48 00 03 44 */ b lbl_800597B4 /* 80059474 000550D4 C0 45 10 98 */ lfs f2, 0x1098(r5) /* 80059478 000550D8 C0 05 10 9C */ lfs f0, 0x109c(r5) /* 8005947C 000550DC C0 22 85 B0 */ lfs f1, lbl_80640BB0-_SDA2_BASE_(r2) /* 80059480 000550E0 EC 42 00 28 */ fsubs f2, f2, f0 /* 80059484 000550E4 C0 02 85 68 */ lfs f0, lbl_80640B68-_SDA2_BASE_(r2) /* 80059488 000550E8 EC 21 00 B2 */ fmuls f1, f1, f2 /* 8005948C 000550EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80059490 000550F0 4C 41 13 82 */ cror 2, 1, 2 /* 80059494 000550F4 40 82 00 1C */ bne lbl_800594B0 /* 80059498 000550F8 38 00 00 03 */ li r0, 3 /* 8005949C 000550FC FC 20 00 90 */ fmr f1, f0 /* 800594A0 00055100 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 800594A4 00055104 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800594A8 00055108 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 800594AC 0005510C D0 03 10 9C */ stfs f0, 0x109c(r3) lbl_800594B0: /* 800594B0 00055110 C0 02 85 B4 */ lfs f0, lbl_80640BB4-_SDA2_BASE_(r2) /* 800594B4 00055114 38 80 00 01 */ li r4, 1 /* 800594B8 00055118 EC 00 00 72 */ fmuls f0, f0, f1 /* 800594BC 0005511C FC 00 00 1E */ fctiwz f0, f0 /* 800594C0 00055120 D8 01 00 08 */ stfd f0, 8(r1) /* 800594C4 00055124 80 61 00 0C */ lwz r3, 0xc(r1) /* 800594C8 00055128 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 800594CC 0005512C 4B FF FB 09 */ bl func_80058FD4 /* 800594D0 00055130 48 00 02 E4 */ b lbl_800597B4 /* 800594D4 00055134 C0 45 10 98 */ lfs f2, 0x1098(r5) /* 800594D8 00055138 C0 25 10 9C */ lfs f1, 0x109c(r5) /* 800594DC 0005513C C0 02 85 B0 */ lfs f0, lbl_80640BB0-_SDA2_BASE_(r2) /* 800594E0 00055140 EC 22 08 28 */ fsubs f1, f2, f1 /* 800594E4 00055144 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800594E8 00055148 4C 41 13 82 */ cror 2, 1, 2 /* 800594EC 0005514C 40 82 00 0C */ bne lbl_800594F8 /* 800594F0 00055150 38 00 00 04 */ li r0, 4 /* 800594F4 00055154 98 05 10 A8 */ stb r0, 0x10a8(r5) lbl_800594F8: /* 800594F8 00055158 38 60 00 FF */ li r3, 0xff /* 800594FC 0005515C 38 80 00 01 */ li r4, 1 /* 80059500 00055160 4B FF FA D5 */ bl func_80058FD4 /* 80059504 00055164 48 00 02 B0 */ b lbl_800597B4 /* 80059508 00055168 C0 45 10 98 */ lfs f2, 0x1098(r5) /* 8005950C 0005516C C0 25 10 9C */ lfs f1, 0x109c(r5) /* 80059510 00055170 C0 02 85 B8 */ lfs f0, lbl_80640BB8-_SDA2_BASE_(r2) /* 80059514 00055174 EC 22 08 28 */ fsubs f1, f2, f1 /* 80059518 00055178 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8005951C 0005517C 4C 41 13 82 */ cror 2, 1, 2 /* 80059520 00055180 40 82 00 1C */ bne lbl_8005953C /* 80059524 00055184 38 00 00 05 */ li r0, 5 /* 80059528 00055188 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 8005952C 0005518C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059530 00055190 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 80059534 00055194 D0 03 10 9C */ stfs f0, 0x109c(r3) /* 80059538 00055198 48 00 00 2C */ b lbl_80059564 lbl_8005953C: /* 8005953C 0005519C 2C 03 00 00 */ cmpwi r3, 0 /* 80059540 000551A0 41 82 00 24 */ beq lbl_80059564 /* 80059544 000551A4 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80059548 000551A8 70 00 1F 1F */ andi. r0, r0, 0x1f1f /* 8005954C 000551AC 41 82 00 18 */ beq lbl_80059564 /* 80059550 000551B0 38 00 00 05 */ li r0, 5 /* 80059554 000551B4 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 80059558 000551B8 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 8005955C 000551BC C0 03 10 98 */ lfs f0, 0x1098(r3) /* 80059560 000551C0 D0 03 10 9C */ stfs f0, 0x109c(r3) lbl_80059564: /* 80059564 000551C4 38 60 00 FF */ li r3, 0xff /* 80059568 000551C8 38 80 00 01 */ li r4, 1 /* 8005956C 000551CC 4B FF FA 69 */ bl func_80058FD4 /* 80059570 000551D0 48 00 02 44 */ b lbl_800597B4 /* 80059574 000551D4 C0 45 10 98 */ lfs f2, 0x1098(r5) /* 80059578 000551D8 C0 05 10 9C */ lfs f0, 0x109c(r5) /* 8005957C 000551DC C0 22 85 B0 */ lfs f1, lbl_80640BB0-_SDA2_BASE_(r2) /* 80059580 000551E0 EC 42 00 28 */ fsubs f2, f2, f0 /* 80059584 000551E4 C0 02 85 68 */ lfs f0, lbl_80640B68-_SDA2_BASE_(r2) /* 80059588 000551E8 EC 41 00 B2 */ fmuls f2, f1, f2 /* 8005958C 000551EC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80059590 000551F0 4C 41 13 82 */ cror 2, 1, 2 /* 80059594 000551F4 40 82 00 1C */ bne lbl_800595B0 /* 80059598 000551F8 38 00 00 06 */ li r0, 6 /* 8005959C 000551FC FC 40 00 90 */ fmr f2, f0 /* 800595A0 00055200 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 800595A4 00055204 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800595A8 00055208 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 800595AC 0005520C D0 03 10 9C */ stfs f0, 0x109c(r3) lbl_800595B0: /* 800595B0 00055210 C0 22 85 68 */ lfs f1, lbl_80640B68-_SDA2_BASE_(r2) /* 800595B4 00055214 38 80 00 01 */ li r4, 1 /* 800595B8 00055218 C0 02 85 B4 */ lfs f0, lbl_80640BB4-_SDA2_BASE_(r2) /* 800595BC 0005521C EC 21 10 28 */ fsubs f1, f1, f2 /* 800595C0 00055220 EC 00 00 72 */ fmuls f0, f0, f1 /* 800595C4 00055224 FC 00 00 1E */ fctiwz f0, f0 /* 800595C8 00055228 D8 01 00 08 */ stfd f0, 8(r1) /* 800595CC 0005522C 80 61 00 0C */ lwz r3, 0xc(r1) /* 800595D0 00055230 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 800595D4 00055234 4B FF FA 01 */ bl func_80058FD4 /* 800595D8 00055238 48 00 01 DC */ b lbl_800597B4 /* 800595DC 0005523C 38 60 00 00 */ li r3, 0 /* 800595E0 00055240 38 80 00 01 */ li r4, 1 /* 800595E4 00055244 4B FF F9 F1 */ bl func_80058FD4 /* 800595E8 00055248 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800595EC 0005524C 38 00 00 0D */ li r0, 0xd /* 800595F0 00055250 98 03 10 A8 */ stb r0, 0x10a8(r3) /* 800595F4 00055254 48 00 01 C0 */ b lbl_800597B4 /* 800595F8 00055258 C0 05 10 98 */ lfs f0, 0x1098(r5) /* 800595FC 0005525C 38 60 00 00 */ li r3, 0 /* 80059600 00055260 38 80 00 00 */ li r4, 0 /* 80059604 00055264 D0 05 10 9C */ stfs f0, 0x109c(r5) /* 80059608 00055268 4B FF F9 CD */ bl func_80058FD4 /* 8005960C 0005526C 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059610 00055270 38 00 00 08 */ li r0, 8 /* 80059614 00055274 98 03 10 A8 */ stb r0, 0x10a8(r3) /* 80059618 00055278 48 00 01 9C */ b lbl_800597B4 /* 8005961C 0005527C C0 45 10 98 */ lfs f2, 0x1098(r5) /* 80059620 00055280 C0 05 10 9C */ lfs f0, 0x109c(r5) /* 80059624 00055284 C0 22 85 B0 */ lfs f1, lbl_80640BB0-_SDA2_BASE_(r2) /* 80059628 00055288 EC 42 00 28 */ fsubs f2, f2, f0 /* 8005962C 0005528C C0 02 85 68 */ lfs f0, lbl_80640B68-_SDA2_BASE_(r2) /* 80059630 00055290 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80059634 00055294 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80059638 00055298 4C 41 13 82 */ cror 2, 1, 2 /* 8005963C 0005529C 40 82 00 1C */ bne lbl_80059658 /* 80059640 000552A0 38 00 00 09 */ li r0, 9 /* 80059644 000552A4 FC 20 00 90 */ fmr f1, f0 /* 80059648 000552A8 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 8005964C 000552AC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059650 000552B0 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 80059654 000552B4 D0 03 10 9C */ stfs f0, 0x109c(r3) lbl_80059658: /* 80059658 000552B8 C0 02 85 B4 */ lfs f0, lbl_80640BB4-_SDA2_BASE_(r2) /* 8005965C 000552BC 38 80 00 00 */ li r4, 0 /* 80059660 000552C0 EC 00 00 72 */ fmuls f0, f0, f1 /* 80059664 000552C4 FC 00 00 1E */ fctiwz f0, f0 /* 80059668 000552C8 D8 01 00 08 */ stfd f0, 8(r1) /* 8005966C 000552CC 80 61 00 0C */ lwz r3, 0xc(r1) /* 80059670 000552D0 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 80059674 000552D4 4B FF F9 61 */ bl func_80058FD4 /* 80059678 000552D8 48 00 01 3C */ b lbl_800597B4 /* 8005967C 000552DC C0 45 10 98 */ lfs f2, 0x1098(r5) /* 80059680 000552E0 C0 25 10 9C */ lfs f1, 0x109c(r5) /* 80059684 000552E4 C0 02 85 B0 */ lfs f0, lbl_80640BB0-_SDA2_BASE_(r2) /* 80059688 000552E8 EC 22 08 28 */ fsubs f1, f2, f1 /* 8005968C 000552EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80059690 000552F0 4C 41 13 82 */ cror 2, 1, 2 /* 80059694 000552F4 40 82 00 0C */ bne lbl_800596A0 /* 80059698 000552F8 38 00 00 0A */ li r0, 0xa /* 8005969C 000552FC 98 05 10 A8 */ stb r0, 0x10a8(r5) lbl_800596A0: /* 800596A0 00055300 38 60 00 FF */ li r3, 0xff /* 800596A4 00055304 38 80 00 00 */ li r4, 0 /* 800596A8 00055308 4B FF F9 2D */ bl func_80058FD4 /* 800596AC 0005530C 48 00 01 08 */ b lbl_800597B4 /* 800596B0 00055310 C0 45 10 98 */ lfs f2, 0x1098(r5) /* 800596B4 00055314 C0 25 10 9C */ lfs f1, 0x109c(r5) /* 800596B8 00055318 C0 02 85 BC */ lfs f0, lbl_80640BBC-_SDA2_BASE_(r2) /* 800596BC 0005531C EC 22 08 28 */ fsubs f1, f2, f1 /* 800596C0 00055320 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800596C4 00055324 4C 41 13 82 */ cror 2, 1, 2 /* 800596C8 00055328 40 82 00 1C */ bne lbl_800596E4 /* 800596CC 0005532C 38 00 00 0B */ li r0, 0xb /* 800596D0 00055330 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 800596D4 00055334 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 800596D8 00055338 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 800596DC 0005533C D0 03 10 9C */ stfs f0, 0x109c(r3) /* 800596E0 00055340 48 00 00 2C */ b lbl_8005970C lbl_800596E4: /* 800596E4 00055344 2C 03 00 00 */ cmpwi r3, 0 /* 800596E8 00055348 41 82 00 24 */ beq lbl_8005970C /* 800596EC 0005534C 80 03 00 1C */ lwz r0, 0x1c(r3) /* 800596F0 00055350 70 00 1F 1F */ andi. r0, r0, 0x1f1f /* 800596F4 00055354 41 82 00 18 */ beq lbl_8005970C /* 800596F8 00055358 38 00 00 0B */ li r0, 0xb /* 800596FC 0005535C 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 80059700 00055360 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059704 00055364 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 80059708 00055368 D0 03 10 9C */ stfs f0, 0x109c(r3) lbl_8005970C: /* 8005970C 0005536C 38 60 00 FF */ li r3, 0xff /* 80059710 00055370 38 80 00 00 */ li r4, 0 /* 80059714 00055374 4B FF F8 C1 */ bl func_80058FD4 /* 80059718 00055378 48 00 00 9C */ b lbl_800597B4 /* 8005971C 0005537C C0 45 10 98 */ lfs f2, 0x1098(r5) /* 80059720 00055380 C0 05 10 9C */ lfs f0, 0x109c(r5) /* 80059724 00055384 C0 22 85 B0 */ lfs f1, lbl_80640BB0-_SDA2_BASE_(r2) /* 80059728 00055388 EC 42 00 28 */ fsubs f2, f2, f0 /* 8005972C 0005538C C0 02 85 68 */ lfs f0, lbl_80640B68-_SDA2_BASE_(r2) /* 80059730 00055390 EC 41 00 B2 */ fmuls f2, f1, f2 /* 80059734 00055394 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80059738 00055398 4C 41 13 82 */ cror 2, 1, 2 /* 8005973C 0005539C 40 82 00 1C */ bne lbl_80059758 /* 80059740 000553A0 38 00 00 0C */ li r0, 0xc /* 80059744 000553A4 FC 40 00 90 */ fmr f2, f0 /* 80059748 000553A8 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 8005974C 000553AC 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059750 000553B0 C0 03 10 98 */ lfs f0, 0x1098(r3) /* 80059754 000553B4 D0 03 10 9C */ stfs f0, 0x109c(r3) lbl_80059758: /* 80059758 000553B8 C0 22 85 68 */ lfs f1, lbl_80640B68-_SDA2_BASE_(r2) /* 8005975C 000553BC 38 80 00 00 */ li r4, 0 /* 80059760 000553C0 C0 02 85 B4 */ lfs f0, lbl_80640BB4-_SDA2_BASE_(r2) /* 80059764 000553C4 EC 21 10 28 */ fsubs f1, f1, f2 /* 80059768 000553C8 EC 00 00 72 */ fmuls f0, f0, f1 /* 8005976C 000553CC FC 00 00 1E */ fctiwz f0, f0 /* 80059770 000553D0 D8 01 00 08 */ stfd f0, 8(r1) /* 80059774 000553D4 80 61 00 0C */ lwz r3, 0xc(r1) /* 80059778 000553D8 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8005977C 000553DC 4B FF F8 59 */ bl func_80058FD4 /* 80059780 000553E0 48 00 00 34 */ b lbl_800597B4 /* 80059784 000553E4 38 60 00 00 */ li r3, 0 /* 80059788 000553E8 38 80 00 00 */ li r4, 0 /* 8005978C 000553EC 4B FF F8 49 */ bl func_80058FD4 /* 80059790 000553F0 80 6D 81 E0 */ lwz r3, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059794 000553F4 38 00 00 0D */ li r0, 0xd /* 80059798 000553F8 98 03 10 A8 */ stb r0, 0x10a8(r3) /* 8005979C 000553FC 48 00 00 18 */ b lbl_800597B4 /* 800597A0 00055400 38 00 00 0E */ li r0, 0xe /* 800597A4 00055404 98 05 10 A8 */ stb r0, 0x10a8(r5) /* 800597A8 00055408 48 00 00 0C */ b lbl_800597B4 /* 800597AC 0005540C 38 00 00 0F */ li r0, 0xf /* 800597B0 00055410 98 05 10 A8 */ stb r0, 0x10a8(r5) lbl_800597B4: /* 800597B4 00055414 80 01 00 14 */ lwz r0, 0x14(r1) /* 800597B8 00055418 7C 08 03 A6 */ mtlr r0 /* 800597BC 0005541C 38 21 00 10 */ addi r1, r1, 0x10 /* 800597C0 00055420 4E 80 00 20 */ blr .global func_800597C4 func_800597C4: /* 800597C4 00055424 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800597C8 00055428 7C 08 02 A6 */ mflr r0 /* 800597CC 0005542C 90 01 00 14 */ stw r0, 0x14(r1) /* 800597D0 00055430 48 18 70 19 */ bl func_801E07E8 /* 800597D4 00055434 2C 03 00 00 */ cmpwi r3, 0 /* 800597D8 00055438 41 82 00 0C */ beq lbl_800597E4 /* 800597DC 0005543C C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 800597E0 00055440 48 00 00 4C */ b lbl_8005982C lbl_800597E4: /* 800597E4 00055444 4B FA D8 A1 */ bl func_80007084 /* 800597E8 00055448 2C 03 00 00 */ cmpwi r3, 0 /* 800597EC 0005544C 41 82 00 0C */ beq lbl_800597F8 /* 800597F0 00055450 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 800597F4 00055454 48 00 00 38 */ b lbl_8005982C lbl_800597F8: /* 800597F8 00055458 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 800597FC 0005545C 88 03 00 82 */ lbz r0, 0x82(r3) /* 80059800 00055460 2C 00 00 00 */ cmpwi r0, 0 /* 80059804 00055464 41 82 00 0C */ beq lbl_80059810 /* 80059808 00055468 C0 22 85 60 */ lfs f1, lbl_80640B60-_SDA2_BASE_(r2) /* 8005980C 0005546C 48 00 00 20 */ b lbl_8005982C lbl_80059810: /* 80059810 00055470 80 8D 81 E0 */ lwz r4, lbl_8063D4A0-_SDA_BASE_(r13) /* 80059814 00055474 80 64 10 A0 */ lwz r3, 0x10a0(r4) /* 80059818 00055478 80 84 10 A4 */ lwz r4, 0x10a4(r4) /* 8005981C 0005547C 48 16 DE 5D */ bl func_801C7678 /* 80059820 00055480 C0 42 85 64 */ lfs f2, lbl_80640B64-_SDA2_BASE_(r2) /* 80059824 00055484 EC 01 10 24 */ fdivs f0, f1, f2 /* 80059828 00055488 EC 20 10 24 */ fdivs f1, f0, f2 lbl_8005982C: /* 8005982C 0005548C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80059830 00055490 7C 08 03 A6 */ mtlr r0 /* 80059834 00055494 38 21 00 10 */ addi r1, r1, 0x10 /* 80059838 00055498 4E 80 00 20 */ blr .global func_8005983C func_8005983C: /* 8005983C 0005549C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80059840 000554A0 7C 08 02 A6 */ mflr r0 /* 80059844 000554A4 90 01 00 14 */ stw r0, 0x14(r1) /* 80059848 000554A8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005984C 000554AC 7C 7F 1B 78 */ mr r31, r3 /* 80059850 000554B0 4B FF F3 55 */ bl VMBASEIsPageValid /* 80059854 000554B4 1C 1F 00 14 */ mulli r0, r31, 0x14 /* 80059858 000554B8 54 64 15 BA */ rlwinm r4, r3, 2, 0x16, 0x1d /* 8005985C 000554BC 3C 60 80 40 */ lis r3, lbl_803FB880@ha /* 80059860 000554C0 38 63 B8 80 */ addi r3, r3, lbl_803FB880@l /* 80059864 000554C4 7C 04 02 14 */ add r0, r4, r0 /* 80059868 000554C8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005986C 000554CC 48 1E FD 71 */ bl func_802495DC /* 80059870 000554D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80059874 000554D4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80059878 000554D8 7C 08 03 A6 */ mtlr r0 /* 8005987C 000554DC 38 21 00 10 */ addi r1, r1, 0x10 /* 80059880 000554E0 4E 80 00 20 */ blr .global func_80059884 func_80059884: /* 80059884 000554E4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80059888 000554E8 7C 08 02 A6 */ mflr r0 /* 8005988C 000554EC 90 01 00 14 */ stw r0, 0x14(r1) /* 80059890 000554F0 1C 03 00 14 */ mulli r0, r3, 0x14 /* 80059894 000554F4 3C 60 80 40 */ lis r3, lbl_803FB880@ha /* 80059898 000554F8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005989C 000554FC 38 63 B8 80 */ addi r3, r3, lbl_803FB880@l /* 800598A0 00055500 7F E3 02 14 */ add r31, r3, r0 /* 800598A4 00055504 4B FF F3 01 */ bl VMBASEIsPageValid /* 800598A8 00055508 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800598AC 0005550C 7C 7F 00 2E */ lwzx r3, r31, r0 /* 800598B0 00055510 48 18 1D C5 */ bl func_801DB674 /* 800598B4 00055514 4B FF F2 F1 */ bl VMBASEIsPageValid /* 800598B8 00055518 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 800598BC 0005551C 7C 7F 00 2E */ lwzx r3, r31, r0 /* 800598C0 00055520 48 1E FF D1 */ bl func_80249890 /* 800598C4 00055524 80 01 00 14 */ lwz r0, 0x14(r1) /* 800598C8 00055528 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800598CC 0005552C 7C 08 03 A6 */ mtlr r0 /* 800598D0 00055530 38 21 00 10 */ addi r1, r1, 0x10 /* 800598D4 00055534 4E 80 00 20 */ blr .global func_800598D8 func_800598D8: /* 800598D8 00055538 38 A0 00 01 */ li r5, 1 /* 800598DC 0005553C 38 6D 98 A8 */ addi r3, r13, lbl_8063EB68-_SDA_BASE_ /* 800598E0 00055540 38 80 00 04 */ li r4, 4 /* 800598E4 00055544 38 00 00 00 */ li r0, 0 /* 800598E8 00055548 98 AD 98 A8 */ stb r5, lbl_8063EB68-_SDA_BASE_(r13) /* 800598EC 0005554C B0 83 00 02 */ sth r4, 2(r3) /* 800598F0 00055550 98 03 00 04 */ stb r0, 4(r3) /* 800598F4 00055554 4E 80 00 20 */ blr .global func_800598F8 func_800598F8: /* 800598F8 00055558 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800598FC 0005555C 7C 08 02 A6 */ mflr r0 /* 80059900 00055560 C0 02 85 C0 */ lfs f0, lbl_80640BC0-_SDA2_BASE_(r2) /* 80059904 00055564 90 01 00 44 */ stw r0, 0x44(r1) /* 80059908 00055568 38 00 00 00 */ li r0, 0 /* 8005990C 0005556C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 80059910 00055570 3F E0 80 47 */ lis r31, lbl_804766D8@ha /* 80059914 00055574 93 C1 00 38 */ stw r30, 0x38(r1) /* 80059918 00055578 3B C0 00 00 */ li r30, 0 /* 8005991C 0005557C 93 A1 00 34 */ stw r29, 0x34(r1) /* 80059920 00055580 7C 9D 23 78 */ mr r29, r4 /* 80059924 00055584 93 81 00 30 */ stw r28, 0x30(r1) /* 80059928 00055588 7C 7C 1B 78 */ mr r28, r3 /* 8005992C 0005558C 90 0D 98 D8 */ stw r0, lbl_8063EB98-_SDA_BASE_(r13) /* 80059930 00055590 90 0D 98 DC */ stw r0, lbl_8063EB9C-_SDA_BASE_(r13) /* 80059934 00055594 90 0D 98 E0 */ stw r0, lbl_8063EBA0-_SDA_BASE_(r13) /* 80059938 00055598 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8005993C 0005559C D0 01 00 20 */ stfs f0, 0x20(r1) /* 80059940 000555A0 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 80059944 000555A4 D0 01 00 18 */ stfs f0, 0x18(r1) /* 80059948 000555A8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 8005994C 000555AC D0 01 00 10 */ stfs f0, 0x10(r1) /* 80059950 000555B0 D0 01 00 0C */ stfs f0, 0xc(r1) /* 80059954 000555B4 D0 01 00 08 */ stfs f0, 8(r1) lbl_80059958: /* 80059958 000555B8 7F C4 F3 78 */ mr r4, r30 /* 8005995C 000555BC 38 7F 66 D8 */ addi r3, r31, lbl_804766D8@l /* 80059960 000555C0 38 A1 00 08 */ addi r5, r1, 8 /* 80059964 000555C4 4B FF 81 5D */ bl func_80051AC0 /* 80059968 000555C8 7F C4 F3 78 */ mr r4, r30 /* 8005996C 000555CC 38 7F 66 D8 */ addi r3, r31, 0x66d8 /* 80059970 000555D0 38 A0 00 00 */ li r5, 0 /* 80059974 000555D4 38 C0 00 00 */ li r6, 0 /* 80059978 000555D8 38 E0 00 00 */ li r7, 0 /* 8005997C 000555DC 39 00 00 00 */ li r8, 0 /* 80059980 000555E0 4B FF 86 11 */ bl func_80051F90 /* 80059984 000555E4 3B DE 00 01 */ addi r30, r30, 1 /* 80059988 000555E8 28 1E 00 64 */ cmplwi r30, 0x64 /* 8005998C 000555EC 41 80 FF CC */ blt lbl_80059958 /* 80059990 000555F0 38 00 00 00 */ li r0, 0 /* 80059994 000555F4 9B 8D 98 BC */ stb r28, lbl_8063EB7C-_SDA_BASE_(r13) /* 80059998 000555F8 9B AD 98 BD */ stb r29, lbl_8063EB7D-_SDA_BASE_(r13) /* 8005999C 000555FC 98 0D 98 EC */ stb r0, lbl_8063EBAC-_SDA_BASE_(r13) /* 800599A0 00055600 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800599A4 00055604 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800599A8 00055608 83 A1 00 34 */ lwz r29, 0x34(r1) /* 800599AC 0005560C 83 81 00 30 */ lwz r28, 0x30(r1) /* 800599B0 00055610 80 01 00 44 */ lwz r0, 0x44(r1) /* 800599B4 00055614 7C 08 03 A6 */ mtlr r0 /* 800599B8 00055618 38 21 00 40 */ addi r1, r1, 0x40 /* 800599BC 0005561C 4E 80 00 20 */ blr .global func_800599C0 func_800599C0: /* 800599C0 00055620 98 6D 98 EC */ stb r3, lbl_8063EBAC-_SDA_BASE_(r13) /* 800599C4 00055624 4E 80 00 20 */ blr .global func_800599C8 func_800599C8: /* 800599C8 00055628 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800599CC 0005562C 7C 08 02 A6 */ mflr r0 /* 800599D0 00055630 7C 8B 23 78 */ mr r11, r4 /* 800599D4 00055634 7C AA 2B 78 */ mr r10, r5 /* 800599D8 00055638 90 01 00 14 */ stw r0, 0x14(r1) /* 800599DC 0005563C 7C C9 33 78 */ mr r9, r6 /* 800599E0 00055640 7C E0 3B 78 */ mr r0, r7 /* 800599E4 00055644 7D 65 5B 78 */ mr r5, r11 /* 800599E8 00055648 93 E1 00 0C */ stw r31, 0xc(r1) /* 800599EC 0005564C 7D 1F 43 78 */ mr r31, r8 /* 800599F0 00055650 7D 46 53 78 */ mr r6, r10 /* 800599F4 00055654 7D 27 4B 78 */ mr r7, r9 /* 800599F8 00055658 93 C1 00 08 */ stw r30, 8(r1) /* 800599FC 0005565C 7C 7E 1B 78 */ mr r30, r3 /* 80059A00 00055660 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 80059A04 00055664 7C 08 03 78 */ mr r8, r0 /* 80059A08 00055668 7F C4 F3 78 */ mr r4, r30 /* 80059A0C 0005566C 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 80059A10 00055670 4B FF 85 81 */ bl func_80051F90 /* 80059A14 00055674 3C 60 80 47 */ lis r3, lbl_804778A0@ha /* 80059A18 00055678 57 C0 08 3C */ slwi r0, r30, 1 /* 80059A1C 0005567C 38 63 78 A0 */ addi r3, r3, lbl_804778A0@l /* 80059A20 00055680 7F E3 03 2E */ sthx r31, r3, r0 /* 80059A24 00055684 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80059A28 00055688 83 C1 00 08 */ lwz r30, 8(r1) /* 80059A2C 0005568C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80059A30 00055690 7C 08 03 A6 */ mtlr r0 /* 80059A34 00055694 38 21 00 10 */ addi r1, r1, 0x10 /* 80059A38 00055698 4E 80 00 20 */ blr .global func_80059A3C func_80059A3C: /* 80059A3C 0005569C 7C 60 1B 78 */ mr r0, r3 /* 80059A40 000556A0 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 80059A44 000556A4 7C 85 23 78 */ mr r5, r4 /* 80059A48 000556A8 7C 04 03 78 */ mr r4, r0 /* 80059A4C 000556AC 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 80059A50 000556B0 4B FF 80 70 */ b func_80051AC0 .global func_80059A54 func_80059A54: /* 80059A54 000556B4 7C 60 1B 78 */ mr r0, r3 /* 80059A58 000556B8 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 80059A5C 000556BC 7C 85 23 78 */ mr r5, r4 /* 80059A60 000556C0 7C 04 03 78 */ mr r4, r0 /* 80059A64 000556C4 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 80059A68 000556C8 4B FF 80 AC */ b lbl_80051B14 .global func_80059A6C func_80059A6C: /* 80059A6C 000556CC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80059A70 000556D0 7C 08 02 A6 */ mflr r0 /* 80059A74 000556D4 90 01 00 34 */ stw r0, 0x34(r1) /* 80059A78 000556D8 39 61 00 30 */ addi r11, r1, 0x30 /* 80059A7C 000556DC 48 16 D6 A9 */ bl _savegpr_26 /* 80059A80 000556E0 54 60 00 85 */ rlwinm. r0, r3, 0, 2, 2 /* 80059A84 000556E4 7C 7A 1B 78 */ mr r26, r3 /* 80059A88 000556E8 7C 9B 23 78 */ mr r27, r4 /* 80059A8C 000556EC 7C BC 2B 78 */ mr r28, r5 /* 80059A90 000556F0 7C DD 33 78 */ mr r29, r6 /* 80059A94 000556F4 3B C0 00 00 */ li r30, 0 /* 80059A98 000556F8 41 82 00 4C */ beq lbl_80059AE4 /* 80059A9C 000556FC 7F 63 DB 78 */ mr r3, r27 /* 80059AA0 00055700 38 81 00 08 */ addi r4, r1, 8 /* 80059AA4 00055704 48 24 F2 D5 */ bl func_802A8D78 /* 80059AA8 00055708 2C 03 00 00 */ cmpwi r3, 0 /* 80059AAC 0005570C 41 82 00 0C */ beq lbl_80059AB8 /* 80059AB0 00055710 38 60 00 00 */ li r3, 0 /* 80059AB4 00055714 48 00 09 6C */ b lbl_8005A420 lbl_80059AB8: /* 80059AB8 00055718 80 01 00 08 */ lwz r0, 8(r1) /* 80059ABC 0005571C 28 00 00 FC */ cmplwi r0, 0xfc /* 80059AC0 00055720 41 82 00 14 */ beq lbl_80059AD4 /* 80059AC4 00055724 28 00 00 FD */ cmplwi r0, 0xfd /* 80059AC8 00055728 41 82 00 0C */ beq lbl_80059AD4 /* 80059ACC 0005572C 28 00 00 FF */ cmplwi r0, 0xff /* 80059AD0 00055730 40 82 00 0C */ bne lbl_80059ADC lbl_80059AD4: /* 80059AD4 00055734 38 60 00 00 */ li r3, 0 /* 80059AD8 00055738 48 00 09 48 */ b lbl_8005A420 lbl_80059ADC: /* 80059ADC 0005573C 38 60 00 01 */ li r3, 1 /* 80059AE0 00055740 48 00 09 40 */ b lbl_8005A420 lbl_80059AE4: /* 80059AE4 00055744 48 18 6D 05 */ bl func_801E07E8 /* 80059AE8 00055748 2C 03 00 00 */ cmpwi r3, 0 /* 80059AEC 0005574C 41 82 00 0C */ beq lbl_80059AF8 /* 80059AF0 00055750 38 60 00 00 */ li r3, 0 /* 80059AF4 00055754 48 00 09 2C */ b lbl_8005A420 lbl_80059AF8: /* 80059AF8 00055758 4B FA D5 8D */ bl func_80007084 /* 80059AFC 0005575C 2C 03 00 00 */ cmpwi r3, 0 /* 80059B00 00055760 41 82 00 0C */ beq lbl_80059B0C /* 80059B04 00055764 38 60 00 00 */ li r3, 0 /* 80059B08 00055768 48 00 09 18 */ b lbl_8005A420 lbl_80059B0C: /* 80059B0C 0005576C 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 80059B10 00055770 88 03 00 82 */ lbz r0, 0x82(r3) /* 80059B14 00055774 2C 00 00 00 */ cmpwi r0, 0 /* 80059B18 00055778 41 82 00 0C */ beq lbl_80059B24 /* 80059B1C 0005577C 38 60 00 00 */ li r3, 0 /* 80059B20 00055780 48 00 09 00 */ b lbl_8005A420 lbl_80059B24: /* 80059B24 00055784 2C 1D 00 00 */ cmpwi r29, 0 /* 80059B28 00055788 41 82 00 08 */ beq lbl_80059B30 /* 80059B2C 0005578C 4B FA D9 A9 */ bl func_800074D4 lbl_80059B30: /* 80059B30 00055790 7F 83 E3 78 */ mr r3, r28 /* 80059B34 00055794 48 1E AC 69 */ bl func_8024479C /* 80059B38 00055798 2C 03 00 00 */ cmpwi r3, 0 /* 80059B3C 0005579C 7C 7F 1B 78 */ mr r31, r3 /* 80059B40 000557A0 40 82 00 0C */ bne lbl_80059B4C /* 80059B44 000557A4 38 60 00 00 */ li r3, 0 /* 80059B48 000557A8 48 00 08 D8 */ b lbl_8005A420 lbl_80059B4C: /* 80059B4C 000557AC 48 0D 54 7D */ bl func_8012EFC8 /* 80059B50 000557B0 2C 03 00 00 */ cmpwi r3, 0 /* 80059B54 000557B4 41 82 00 0C */ beq lbl_80059B60 /* 80059B58 000557B8 38 60 00 00 */ li r3, 0 /* 80059B5C 000557BC 48 00 08 C4 */ b lbl_8005A420 lbl_80059B60: /* 80059B60 000557C0 57 40 00 01 */ rlwinm. r0, r26, 0, 0, 0 /* 80059B64 000557C4 41 82 00 28 */ beq lbl_80059B8C /* 80059B68 000557C8 7F 63 DB 78 */ mr r3, r27 /* 80059B6C 000557CC 48 1E AC 31 */ bl func_8024479C /* 80059B70 000557D0 2C 03 00 00 */ cmpwi r3, 0 /* 80059B74 000557D4 40 82 00 0C */ bne lbl_80059B80 /* 80059B78 000557D8 38 60 00 00 */ li r3, 0 /* 80059B7C 000557DC 48 00 08 A4 */ b lbl_8005A420 lbl_80059B80: /* 80059B80 000557E0 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80059B84 000557E4 54 03 04 5E */ rlwinm r3, r0, 0, 0x11, 0xf /* 80059B88 000557E8 48 00 08 98 */ b lbl_8005A420 lbl_80059B8C: /* 80059B8C 000557EC 57 40 00 43 */ rlwinm. r0, r26, 0, 1, 1 /* 80059B90 000557F0 41 82 00 28 */ beq lbl_80059BB8 /* 80059B94 000557F4 7F 63 DB 78 */ mr r3, r27 /* 80059B98 000557F8 48 1E AC 05 */ bl func_8024479C /* 80059B9C 000557FC 2C 03 00 00 */ cmpwi r3, 0 /* 80059BA0 00055800 40 82 00 0C */ bne lbl_80059BAC /* 80059BA4 00055804 38 60 00 00 */ li r3, 0 /* 80059BA8 00055808 48 00 08 78 */ b lbl_8005A420 lbl_80059BAC: /* 80059BAC 0005580C 80 03 00 20 */ lwz r0, 0x20(r3) /* 80059BB0 00055810 54 03 04 5E */ rlwinm r3, r0, 0, 0x11, 0xf /* 80059BB4 00055814 48 00 08 6C */ b lbl_8005A420 lbl_80059BB8: /* 80059BB8 00055818 80 0D 98 E8 */ lwz r0, lbl_8063EBA8-_SDA_BASE_(r13) /* 80059BBC 0005581C 2C 00 00 00 */ cmpwi r0, 0 /* 80059BC0 00055820 40 82 00 0C */ bne lbl_80059BCC /* 80059BC4 00055824 48 10 5A CD */ bl func_8015F690 /* 80059BC8 00055828 90 6D 98 E8 */ stw r3, lbl_8063EBA8-_SDA_BASE_(r13) lbl_80059BCC: /* 80059BCC 0005582C 80 6D 98 E8 */ lwz r3, lbl_8063EBA8-_SDA_BASE_(r13) /* 80059BD0 00055830 88 0D 81 EE */ lbz r0, lbl_8063D4AE-_SDA_BASE_(r13) /* 80059BD4 00055834 80 63 00 4C */ lwz r3, 0x4c(r3) /* 80059BD8 00055838 7C 00 18 00 */ cmpw r0, r3 /* 80059BDC 0005583C 41 82 00 C8 */ beq lbl_80059CA4 /* 80059BE0 00055840 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80059BE4 00055844 98 6D 81 EE */ stb r3, lbl_8063D4AE-_SDA_BASE_(r13) /* 80059BE8 00055848 2C 00 00 01 */ cmpwi r0, 1 /* 80059BEC 0005584C 41 82 00 54 */ beq lbl_80059C40 /* 80059BF0 00055850 40 80 00 10 */ bge lbl_80059C00 /* 80059BF4 00055854 2C 00 00 00 */ cmpwi r0, 0 /* 80059BF8 00055858 40 80 00 14 */ bge lbl_80059C0C /* 80059BFC 0005585C 48 00 00 A8 */ b lbl_80059CA4 lbl_80059C00: /* 80059C00 00055860 2C 00 00 03 */ cmpwi r0, 3 /* 80059C04 00055864 40 80 00 A0 */ bge lbl_80059CA4 /* 80059C08 00055868 48 00 00 6C */ b lbl_80059C74 lbl_80059C0C: /* 80059C0C 0005586C 39 00 00 01 */ li r8, 1 /* 80059C10 00055870 38 E0 00 02 */ li r7, 2 /* 80059C14 00055874 38 C0 00 04 */ li r6, 4 /* 80059C18 00055878 38 A0 00 08 */ li r5, 8 /* 80059C1C 0005587C 38 80 08 00 */ li r4, 0x800 /* 80059C20 00055880 38 60 04 00 */ li r3, 0x400 /* 80059C24 00055884 91 0D 98 C0 */ stw r8, lbl_8063EB80-_SDA_BASE_(r13) /* 80059C28 00055888 90 ED 98 C4 */ stw r7, lbl_8063EB84-_SDA_BASE_(r13) /* 80059C2C 0005588C 90 CD 98 C8 */ stw r6, lbl_8063EB88-_SDA_BASE_(r13) /* 80059C30 00055890 90 AD 98 CC */ stw r5, lbl_8063EB8C-_SDA_BASE_(r13) /* 80059C34 00055894 90 8D 98 D0 */ stw r4, lbl_8063EB90-_SDA_BASE_(r13) /* 80059C38 00055898 90 6D 98 D4 */ stw r3, lbl_8063EB94-_SDA_BASE_(r13) /* 80059C3C 0005589C 48 00 00 68 */ b lbl_80059CA4 lbl_80059C40: /* 80059C40 000558A0 39 00 00 01 */ li r8, 1 /* 80059C44 000558A4 38 E0 00 02 */ li r7, 2 /* 80059C48 000558A8 38 C0 00 04 */ li r6, 4 /* 80059C4C 000558AC 38 A0 00 08 */ li r5, 8 /* 80059C50 000558B0 38 80 04 00 */ li r4, 0x400 /* 80059C54 000558B4 38 60 08 00 */ li r3, 0x800 /* 80059C58 000558B8 91 0D 98 C0 */ stw r8, lbl_8063EB80-_SDA_BASE_(r13) /* 80059C5C 000558BC 90 ED 98 C4 */ stw r7, lbl_8063EB84-_SDA_BASE_(r13) /* 80059C60 000558C0 90 CD 98 C8 */ stw r6, lbl_8063EB88-_SDA_BASE_(r13) /* 80059C64 000558C4 90 AD 98 CC */ stw r5, lbl_8063EB8C-_SDA_BASE_(r13) /* 80059C68 000558C8 90 8D 98 D0 */ stw r4, lbl_8063EB90-_SDA_BASE_(r13) /* 80059C6C 000558CC 90 6D 98 D4 */ stw r3, lbl_8063EB94-_SDA_BASE_(r13) /* 80059C70 000558D0 48 00 00 34 */ b lbl_80059CA4 lbl_80059C74: /* 80059C74 000558D4 39 00 00 08 */ li r8, 8 /* 80059C78 000558D8 38 E0 00 04 */ li r7, 4 /* 80059C7C 000558DC 38 C0 00 01 */ li r6, 1 /* 80059C80 000558E0 38 A0 00 02 */ li r5, 2 /* 80059C84 000558E4 38 80 01 00 */ li r4, 0x100 /* 80059C88 000558E8 38 60 02 00 */ li r3, 0x200 /* 80059C8C 000558EC 91 0D 98 C0 */ stw r8, lbl_8063EB80-_SDA_BASE_(r13) /* 80059C90 000558F0 90 ED 98 C4 */ stw r7, lbl_8063EB84-_SDA_BASE_(r13) /* 80059C94 000558F4 90 CD 98 C8 */ stw r6, lbl_8063EB88-_SDA_BASE_(r13) /* 80059C98 000558F8 90 AD 98 CC */ stw r5, lbl_8063EB8C-_SDA_BASE_(r13) /* 80059C9C 000558FC 90 8D 98 D0 */ stw r4, lbl_8063EB90-_SDA_BASE_(r13) /* 80059CA0 00055900 90 6D 98 D4 */ stw r3, lbl_8063EB94-_SDA_BASE_(r13) lbl_80059CA4: /* 80059CA4 00055904 57 43 00 C7 */ rlwinm. r3, r26, 0, 3, 3 /* 80059CA8 00055908 41 82 00 3C */ beq lbl_80059CE4 /* 80059CAC 0005590C 7F 63 DB 78 */ mr r3, r27 /* 80059CB0 00055910 48 1E AA ED */ bl func_8024479C /* 80059CB4 00055914 2C 03 00 00 */ cmpwi r3, 0 /* 80059CB8 00055918 41 82 00 24 */ beq lbl_80059CDC /* 80059CBC 0005591C 80 AD 98 D0 */ lwz r5, lbl_8063EB90-_SDA_BASE_(r13) /* 80059CC0 00055920 80 8D 98 D4 */ lwz r4, lbl_8063EB94-_SDA_BASE_(r13) /* 80059CC4 00055924 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80059CC8 00055928 7C A3 23 78 */ or r3, r5, r4 /* 80059CCC 0005592C 7C 60 00 39 */ and. r0, r3, r0 /* 80059CD0 00055930 41 82 00 0C */ beq lbl_80059CDC /* 80059CD4 00055934 38 60 00 01 */ li r3, 1 /* 80059CD8 00055938 48 00 07 48 */ b lbl_8005A420 lbl_80059CDC: /* 80059CDC 0005593C 38 60 00 00 */ li r3, 0 /* 80059CE0 00055940 48 00 07 40 */ b lbl_8005A420 lbl_80059CE4: /* 80059CE4 00055944 57 43 01 4B */ rlwinm. r3, r26, 0, 5, 5 /* 80059CE8 00055948 41 82 00 34 */ beq lbl_80059D1C /* 80059CEC 0005594C 7F 63 DB 78 */ mr r3, r27 /* 80059CF0 00055950 48 1E AA AD */ bl func_8024479C /* 80059CF4 00055954 2C 03 00 00 */ cmpwi r3, 0 /* 80059CF8 00055958 41 82 00 1C */ beq lbl_80059D14 /* 80059CFC 0005595C 80 8D 98 D0 */ lwz r4, lbl_8063EB90-_SDA_BASE_(r13) /* 80059D00 00055960 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80059D04 00055964 7C 80 00 39 */ and. r0, r4, r0 /* 80059D08 00055968 41 82 00 0C */ beq lbl_80059D14 /* 80059D0C 0005596C 38 60 00 01 */ li r3, 1 /* 80059D10 00055970 48 00 07 10 */ b lbl_8005A420 lbl_80059D14: /* 80059D14 00055974 38 60 00 00 */ li r3, 0 /* 80059D18 00055978 48 00 07 08 */ b lbl_8005A420 lbl_80059D1C: /* 80059D1C 0005597C 57 43 01 09 */ rlwinm. r3, r26, 0, 4, 4 /* 80059D20 00055980 41 82 00 34 */ beq lbl_80059D54 /* 80059D24 00055984 7F 63 DB 78 */ mr r3, r27 /* 80059D28 00055988 48 1E AA 75 */ bl func_8024479C /* 80059D2C 0005598C 2C 03 00 00 */ cmpwi r3, 0 /* 80059D30 00055990 41 82 00 1C */ beq lbl_80059D4C /* 80059D34 00055994 80 8D 98 D4 */ lwz r4, lbl_8063EB94-_SDA_BASE_(r13) /* 80059D38 00055998 80 03 00 1C */ lwz r0, 0x1c(r3) /* 80059D3C 0005599C 7C 80 00 39 */ and. r0, r4, r0 /* 80059D40 000559A0 41 82 00 0C */ beq lbl_80059D4C /* 80059D44 000559A4 38 60 00 01 */ li r3, 1 /* 80059D48 000559A8 48 00 06 D8 */ b lbl_8005A420 lbl_80059D4C: /* 80059D4C 000559AC 38 60 00 00 */ li r3, 0 /* 80059D50 000559B0 48 00 06 D0 */ b lbl_8005A420 lbl_80059D54: /* 80059D54 000559B4 57 43 01 CF */ rlwinm. r3, r26, 0, 7, 7 /* 80059D58 000559B8 41 82 00 34 */ beq lbl_80059D8C /* 80059D5C 000559BC 7F 63 DB 78 */ mr r3, r27 /* 80059D60 000559C0 48 1E AA 3D */ bl func_8024479C /* 80059D64 000559C4 2C 03 00 00 */ cmpwi r3, 0 /* 80059D68 000559C8 41 82 00 1C */ beq lbl_80059D84 /* 80059D6C 000559CC 80 8D 98 D0 */ lwz r4, lbl_8063EB90-_SDA_BASE_(r13) /* 80059D70 000559D0 80 03 00 20 */ lwz r0, 0x20(r3) /* 80059D74 000559D4 7C 80 00 39 */ and. r0, r4, r0 /* 80059D78 000559D8 41 82 00 0C */ beq lbl_80059D84 /* 80059D7C 000559DC 38 60 00 01 */ li r3, 1 /* 80059D80 000559E0 48 00 06 A0 */ b lbl_8005A420 lbl_80059D84: /* 80059D84 000559E4 38 60 00 00 */ li r3, 0 /* 80059D88 000559E8 48 00 06 98 */ b lbl_8005A420 lbl_80059D8C: /* 80059D8C 000559EC 57 43 01 8D */ rlwinm. r3, r26, 0, 6, 6 /* 80059D90 000559F0 41 82 00 34 */ beq lbl_80059DC4 /* 80059D94 000559F4 7F 63 DB 78 */ mr r3, r27 /* 80059D98 000559F8 48 1E AA 05 */ bl func_8024479C /* 80059D9C 000559FC 2C 03 00 00 */ cmpwi r3, 0 /* 80059DA0 00055A00 41 82 00 1C */ beq lbl_80059DBC /* 80059DA4 00055A04 80 8D 98 D4 */ lwz r4, lbl_8063EB94-_SDA_BASE_(r13) /* 80059DA8 00055A08 80 03 00 20 */ lwz r0, 0x20(r3) /* 80059DAC 00055A0C 7C 80 00 39 */ and. r0, r4, r0 /* 80059DB0 00055A10 41 82 00 0C */ beq lbl_80059DBC /* 80059DB4 00055A14 38 60 00 01 */ li r3, 1 /* 80059DB8 00055A18 48 00 06 68 */ b lbl_8005A420 lbl_80059DBC: /* 80059DBC 00055A1C 38 60 00 00 */ li r3, 0 /* 80059DC0 00055A20 48 00 06 60 */ b lbl_8005A420 lbl_80059DC4: /* 80059DC4 00055A24 57 43 06 31 */ rlwinm. r3, r26, 0, 0x18, 0x18 /* 80059DC8 00055A28 41 82 00 24 */ beq lbl_80059DEC /* 80059DCC 00055A2C 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 80059DD0 00055A30 3C 00 80 00 */ lis r0, 0x8000 /* 80059DD4 00055A34 70 64 1F 1F */ andi. r4, r3, 0x1f1f /* 80059DD8 00055A38 7C 64 00 D0 */ neg r3, r4 /* 80059DDC 00055A3C 7C 63 23 78 */ or r3, r3, r4 /* 80059DE0 00055A40 7C 63 FE 70 */ srawi r3, r3, 0x1f /* 80059DE4 00055A44 7C 03 18 38 */ and r3, r0, r3 /* 80059DE8 00055A48 48 00 06 38 */ b lbl_8005A420 lbl_80059DEC: /* 80059DEC 00055A4C 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 80059DF0 00055A50 80 AD 98 D0 */ lwz r5, lbl_8063EB90-_SDA_BASE_(r13) /* 80059DF4 00055A54 54 7D 04 5E */ rlwinm r29, r3, 0, 0x11, 0xf /* 80059DF8 00055A58 7F A3 28 39 */ and. r3, r29, r5 /* 80059DFC 00055A5C 41 82 00 0C */ beq lbl_80059E08 /* 80059E00 00055A60 38 60 00 01 */ li r3, 1 /* 80059E04 00055A64 98 6D 98 BC */ stb r3, lbl_8063EB7C-_SDA_BASE_(r13) lbl_80059E08: /* 80059E08 00055A68 80 CD 98 D4 */ lwz r6, lbl_8063EB94-_SDA_BASE_(r13) /* 80059E0C 00055A6C 7F A3 30 39 */ and. r3, r29, r6 /* 80059E10 00055A70 41 82 00 0C */ beq lbl_80059E1C /* 80059E14 00055A74 38 60 00 01 */ li r3, 1 /* 80059E18 00055A78 98 6D 98 BD */ stb r3, lbl_8063EB7D-_SDA_BASE_(r13) lbl_80059E1C: /* 80059E1C 00055A7C 80 9F 00 20 */ lwz r4, 0x20(r31) /* 80059E20 00055A80 7C A3 33 78 */ or r3, r5, r6 /* 80059E24 00055A84 54 9F 04 5E */ rlwinm r31, r4, 0, 0x11, 0xf /* 80059E28 00055A88 7F E3 18 39 */ and. r3, r31, r3 /* 80059E2C 00055A8C 41 82 00 64 */ beq lbl_80059E90 /* 80059E30 00055A90 80 CD 98 CC */ lwz r6, lbl_8063EB8C-_SDA_BASE_(r13) /* 80059E34 00055A94 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 80059E38 00055A98 80 AD 98 C8 */ lwz r5, lbl_8063EB88-_SDA_BASE_(r13) /* 80059E3C 00055A9C 28 00 00 02 */ cmplwi r0, 2 /* 80059E40 00055AA0 80 8D 98 C0 */ lwz r4, lbl_8063EB80-_SDA_BASE_(r13) /* 80059E44 00055AA4 38 00 FF FF */ li r0, -1 /* 80059E48 00055AA8 80 6D 98 C4 */ lwz r3, lbl_8063EB84-_SDA_BASE_(r13) /* 80059E4C 00055AAC 7C C5 2B 78 */ or r5, r6, r5 /* 80059E50 00055AB0 7C 83 1B 78 */ or r3, r4, r3 /* 80059E54 00055AB4 7C A3 1B 78 */ or r3, r5, r3 /* 80059E58 00055AB8 7C 60 02 78 */ xor r0, r3, r0 /* 80059E5C 00055ABC 7F BD 00 38 */ and r29, r29, r0 /* 80059E60 00055AC0 7F FF 00 38 */ and r31, r31, r0 /* 80059E64 00055AC4 41 82 00 4C */ beq lbl_80059EB0 /* 80059E68 00055AC8 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 80059E6C 00055ACC 7F 84 E3 78 */ mr r4, r28 /* 80059E70 00055AD0 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 80059E74 00055AD4 4B FF 7C F5 */ bl func_80051B68 /* 80059E78 00055AD8 57 40 02 11 */ rlwinm. r0, r26, 0, 8, 8 /* 80059E7C 00055ADC 90 6D 98 E0 */ stw r3, lbl_8063EBA0-_SDA_BASE_(r13) /* 80059E80 00055AE0 40 82 00 30 */ bne lbl_80059EB0 /* 80059E84 00055AE4 38 00 00 00 */ li r0, 0 /* 80059E88 00055AE8 90 0D 98 E0 */ stw r0, lbl_8063EBA0-_SDA_BASE_(r13) /* 80059E8C 00055AEC 48 00 00 24 */ b lbl_80059EB0 lbl_80059E90: /* 80059E90 00055AF0 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 80059E94 00055AF4 28 00 00 02 */ cmplwi r0, 2 /* 80059E98 00055AF8 41 82 00 18 */ beq lbl_80059EB0 /* 80059E9C 00055AFC 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 80059EA0 00055B00 7F 84 E3 78 */ mr r4, r28 /* 80059EA4 00055B04 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 80059EA8 00055B08 4B FF 7C C1 */ bl func_80051B68 /* 80059EAC 00055B0C 90 6D 98 E0 */ stw r3, lbl_8063EBA0-_SDA_BASE_(r13) lbl_80059EB0: /* 80059EB0 00055B10 88 0D 98 BC */ lbz r0, lbl_8063EB7C-_SDA_BASE_(r13) /* 80059EB4 00055B14 2C 00 00 00 */ cmpwi r0, 0 /* 80059EB8 00055B18 40 82 00 18 */ bne lbl_80059ED0 /* 80059EBC 00055B1C 80 6D 98 D0 */ lwz r3, lbl_8063EB90-_SDA_BASE_(r13) /* 80059EC0 00055B20 38 00 FF FF */ li r0, -1 /* 80059EC4 00055B24 7C 60 02 78 */ xor r0, r3, r0 /* 80059EC8 00055B28 7F BD 00 38 */ and r29, r29, r0 /* 80059ECC 00055B2C 7F FF 00 38 */ and r31, r31, r0 lbl_80059ED0: /* 80059ED0 00055B30 88 0D 98 BD */ lbz r0, lbl_8063EB7D-_SDA_BASE_(r13) /* 80059ED4 00055B34 2C 00 00 00 */ cmpwi r0, 0 /* 80059ED8 00055B38 40 82 00 18 */ bne lbl_80059EF0 /* 80059EDC 00055B3C 80 6D 98 D4 */ lwz r3, lbl_8063EB94-_SDA_BASE_(r13) /* 80059EE0 00055B40 38 00 FF FF */ li r0, -1 /* 80059EE4 00055B44 7C 60 02 78 */ xor r0, r3, r0 /* 80059EE8 00055B48 7F BD 00 38 */ and r29, r29, r0 /* 80059EEC 00055B4C 7F FF 00 38 */ and r31, r31, r0 lbl_80059EF0: /* 80059EF0 00055B50 80 8D 98 E0 */ lwz r4, lbl_8063EBA0-_SDA_BASE_(r13) /* 80059EF4 00055B54 2C 04 00 00 */ cmpwi r4, 0 /* 80059EF8 00055B58 40 82 00 28 */ bne lbl_80059F20 /* 80059EFC 00055B5C 80 0D 98 D8 */ lwz r0, lbl_8063EB98-_SDA_BASE_(r13) /* 80059F00 00055B60 2C 00 00 00 */ cmpwi r0, 0 /* 80059F04 00055B64 40 82 00 10 */ bne lbl_80059F14 /* 80059F08 00055B68 93 6D 98 D8 */ stw r27, lbl_8063EB98-_SDA_BASE_(r13) /* 80059F0C 00055B6C 7F 7E DB 78 */ mr r30, r27 /* 80059F10 00055B70 48 00 00 7C */ b lbl_80059F8C lbl_80059F14: /* 80059F14 00055B74 38 00 00 00 */ li r0, 0 /* 80059F18 00055B78 90 0D 98 DC */ stw r0, lbl_8063EB9C-_SDA_BASE_(r13) /* 80059F1C 00055B7C 48 00 00 70 */ b lbl_80059F8C lbl_80059F20: /* 80059F20 00055B80 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 80059F24 00055B84 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 80059F28 00055B88 4B FF 80 8D */ bl func_80051FB4 /* 80059F2C 00055B8C 80 8D 98 E0 */ lwz r4, lbl_8063EBA0-_SDA_BASE_(r13) /* 80059F30 00055B90 3C 60 80 47 */ lis r3, lbl_804778A0@ha /* 80059F34 00055B94 38 63 78 A0 */ addi r3, r3, lbl_804778A0@l /* 80059F38 00055B98 54 80 08 3C */ slwi r0, r4, 1 /* 80059F3C 00055B9C 7C 03 02 2E */ lhzx r0, r3, r0 /* 80059F40 00055BA0 2C 00 00 00 */ cmpwi r0, 0 /* 80059F44 00055BA4 41 82 00 0C */ beq lbl_80059F50 /* 80059F48 00055BA8 7C 04 03 78 */ mr r4, r0 /* 80059F4C 00055BAC 90 0D 98 E0 */ stw r0, lbl_8063EBA0-_SDA_BASE_(r13) lbl_80059F50: /* 80059F50 00055BB0 80 0D 98 D8 */ lwz r0, lbl_8063EB98-_SDA_BASE_(r13) /* 80059F54 00055BB4 7C 00 20 00 */ cmpw r0, r4 /* 80059F58 00055BB8 41 82 00 10 */ beq lbl_80059F68 /* 80059F5C 00055BBC 80 0D 98 DC */ lwz r0, lbl_8063EB9C-_SDA_BASE_(r13) /* 80059F60 00055BC0 7C 00 20 00 */ cmpw r0, r4 /* 80059F64 00055BC4 40 82 00 0C */ bne lbl_80059F70 lbl_80059F68: /* 80059F68 00055BC8 90 8D 98 DC */ stw r4, lbl_8063EB9C-_SDA_BASE_(r13) /* 80059F6C 00055BCC 48 00 00 20 */ b lbl_80059F8C lbl_80059F70: /* 80059F70 00055BD0 57 40 06 F7 */ rlwinm. r0, r26, 0, 0x1b, 0x1b /* 80059F74 00055BD4 90 8D 98 D8 */ stw r4, lbl_8063EB98-_SDA_BASE_(r13) /* 80059F78 00055BD8 7C 9E 23 78 */ mr r30, r4 /* 80059F7C 00055BDC 90 8D 98 DC */ stw r4, lbl_8063EB9C-_SDA_BASE_(r13) /* 80059F80 00055BE0 40 82 00 0C */ bne lbl_80059F8C /* 80059F84 00055BE4 38 60 00 03 */ li r3, 3 /* 80059F88 00055BE8 48 00 05 45 */ bl func_8005A4CC lbl_80059F8C: /* 80059F8C 00055BEC 57 40 07 7D */ rlwinm. r0, r26, 0, 0x1d, 0x1e /* 80059F90 00055BF0 41 82 00 AC */ beq lbl_8005A03C /* 80059F94 00055BF4 80 0D 98 C0 */ lwz r0, lbl_8063EB80-_SDA_BASE_(r13) /* 80059F98 00055BF8 7F A0 00 39 */ and. r0, r29, r0 /* 80059F9C 00055BFC 41 82 00 14 */ beq lbl_80059FB0 /* 80059FA0 00055C00 38 60 00 00 */ li r3, 0 /* 80059FA4 00055C04 38 00 00 01 */ li r0, 1 /* 80059FA8 00055C08 98 6D 98 B8 */ stb r3, lbl_8063EB78-_SDA_BASE_(r13) /* 80059FAC 00055C0C 98 0D 81 EA */ stb r0, lbl_8063D4AA-_SDA_BASE_(r13) lbl_80059FB0: /* 80059FB0 00055C10 80 0D 98 C4 */ lwz r0, lbl_8063EB84-_SDA_BASE_(r13) /* 80059FB4 00055C14 7F A0 00 39 */ and. r0, r29, r0 /* 80059FB8 00055C18 41 82 00 14 */ beq lbl_80059FCC /* 80059FBC 00055C1C 38 60 00 00 */ li r3, 0 /* 80059FC0 00055C20 38 00 00 01 */ li r0, 1 /* 80059FC4 00055C24 98 6D 98 B9 */ stb r3, lbl_8063EB79-_SDA_BASE_(r13) /* 80059FC8 00055C28 98 0D 81 EB */ stb r0, lbl_8063D4AB-_SDA_BASE_(r13) lbl_80059FCC: /* 80059FCC 00055C2C 80 0D 98 C8 */ lwz r0, lbl_8063EB88-_SDA_BASE_(r13) /* 80059FD0 00055C30 7F A0 00 39 */ and. r0, r29, r0 /* 80059FD4 00055C34 41 82 00 14 */ beq lbl_80059FE8 /* 80059FD8 00055C38 38 60 00 00 */ li r3, 0 /* 80059FDC 00055C3C 38 00 00 01 */ li r0, 1 /* 80059FE0 00055C40 98 6D 98 B7 */ stb r3, lbl_8063EB77-_SDA_BASE_(r13) /* 80059FE4 00055C44 98 0D 81 E9 */ stb r0, lbl_8063D4A9-_SDA_BASE_(r13) lbl_80059FE8: /* 80059FE8 00055C48 80 0D 98 CC */ lwz r0, lbl_8063EB8C-_SDA_BASE_(r13) /* 80059FEC 00055C4C 7F A0 00 39 */ and. r0, r29, r0 /* 80059FF0 00055C50 41 82 00 14 */ beq lbl_8005A004 /* 80059FF4 00055C54 38 60 00 00 */ li r3, 0 /* 80059FF8 00055C58 38 00 00 01 */ li r0, 1 /* 80059FFC 00055C5C 98 6D 98 B6 */ stb r3, lbl_8063EB76-_SDA_BASE_(r13) /* 8005A000 00055C60 98 0D 81 E8 */ stb r0, lbl_8063D4A8-_SDA_BASE_(r13) lbl_8005A004: /* 8005A004 00055C64 80 0D 98 D0 */ lwz r0, lbl_8063EB90-_SDA_BASE_(r13) /* 8005A008 00055C68 7F A0 00 39 */ and. r0, r29, r0 /* 8005A00C 00055C6C 41 82 00 14 */ beq lbl_8005A020 /* 8005A010 00055C70 38 60 00 00 */ li r3, 0 /* 8005A014 00055C74 38 00 00 01 */ li r0, 1 /* 8005A018 00055C78 98 6D 98 BA */ stb r3, lbl_8063EB7A-_SDA_BASE_(r13) /* 8005A01C 00055C7C 98 0D 81 EC */ stb r0, lbl_8063D4AC-_SDA_BASE_(r13) lbl_8005A020: /* 8005A020 00055C80 80 0D 98 D4 */ lwz r0, lbl_8063EB94-_SDA_BASE_(r13) /* 8005A024 00055C84 7F A0 00 39 */ and. r0, r29, r0 /* 8005A028 00055C88 41 82 00 14 */ beq lbl_8005A03C /* 8005A02C 00055C8C 38 60 00 00 */ li r3, 0 /* 8005A030 00055C90 38 00 00 01 */ li r0, 1 /* 8005A034 00055C94 98 6D 98 BB */ stb r3, lbl_8063EB7B-_SDA_BASE_(r13) /* 8005A038 00055C98 98 0D 81 ED */ stb r0, lbl_8063D4AD-_SDA_BASE_(r13) lbl_8005A03C: /* 8005A03C 00055C9C 57 40 07 BD */ rlwinm. r0, r26, 0, 0x1e, 0x1e /* 8005A040 00055CA0 41 82 01 74 */ beq lbl_8005A1B4 /* 8005A044 00055CA4 80 8D 98 C0 */ lwz r4, lbl_8063EB80-_SDA_BASE_(r13) /* 8005A048 00055CA8 7F E0 20 39 */ and. r0, r31, r4 /* 8005A04C 00055CAC 41 82 00 54 */ beq lbl_8005A0A0 /* 8005A050 00055CB0 88 6D 98 B8 */ lbz r3, lbl_8063EB78-_SDA_BASE_(r13) /* 8005A054 00055CB4 88 0D 81 EA */ lbz r0, lbl_8063D4AA-_SDA_BASE_(r13) /* 8005A058 00055CB8 38 63 00 01 */ addi r3, r3, 1 /* 8005A05C 00055CBC 2C 00 00 00 */ cmpwi r0, 0 /* 8005A060 00055CC0 98 6D 98 B8 */ stb r3, lbl_8063EB78-_SDA_BASE_(r13) /* 8005A064 00055CC4 41 82 00 24 */ beq lbl_8005A088 /* 8005A068 00055CC8 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A06C 00055CCC 28 00 00 0F */ cmplwi r0, 0xf /* 8005A070 00055CD0 40 81 00 30 */ ble lbl_8005A0A0 /* 8005A074 00055CD4 38 00 00 00 */ li r0, 0 /* 8005A078 00055CD8 7F BD 23 78 */ or r29, r29, r4 /* 8005A07C 00055CDC 98 0D 98 B8 */ stb r0, lbl_8063EB78-_SDA_BASE_(r13) /* 8005A080 00055CE0 98 0D 81 EA */ stb r0, lbl_8063D4AA-_SDA_BASE_(r13) /* 8005A084 00055CE4 48 00 00 1C */ b lbl_8005A0A0 lbl_8005A088: /* 8005A088 00055CE8 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A08C 00055CEC 28 00 00 05 */ cmplwi r0, 5 /* 8005A090 00055CF0 40 81 00 10 */ ble lbl_8005A0A0 /* 8005A094 00055CF4 38 00 00 00 */ li r0, 0 /* 8005A098 00055CF8 7F BD 23 78 */ or r29, r29, r4 /* 8005A09C 00055CFC 98 0D 98 B8 */ stb r0, lbl_8063EB78-_SDA_BASE_(r13) lbl_8005A0A0: /* 8005A0A0 00055D00 80 8D 98 C4 */ lwz r4, lbl_8063EB84-_SDA_BASE_(r13) /* 8005A0A4 00055D04 7F E0 20 39 */ and. r0, r31, r4 /* 8005A0A8 00055D08 41 82 00 54 */ beq lbl_8005A0FC /* 8005A0AC 00055D0C 88 6D 98 B9 */ lbz r3, lbl_8063EB79-_SDA_BASE_(r13) /* 8005A0B0 00055D10 88 0D 81 EB */ lbz r0, lbl_8063D4AB-_SDA_BASE_(r13) /* 8005A0B4 00055D14 38 63 00 01 */ addi r3, r3, 1 /* 8005A0B8 00055D18 2C 00 00 00 */ cmpwi r0, 0 /* 8005A0BC 00055D1C 98 6D 98 B9 */ stb r3, lbl_8063EB79-_SDA_BASE_(r13) /* 8005A0C0 00055D20 41 82 00 24 */ beq lbl_8005A0E4 /* 8005A0C4 00055D24 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A0C8 00055D28 28 00 00 0F */ cmplwi r0, 0xf /* 8005A0CC 00055D2C 40 81 00 30 */ ble lbl_8005A0FC /* 8005A0D0 00055D30 38 00 00 00 */ li r0, 0 /* 8005A0D4 00055D34 7F BD 23 78 */ or r29, r29, r4 /* 8005A0D8 00055D38 98 0D 98 B9 */ stb r0, lbl_8063EB79-_SDA_BASE_(r13) /* 8005A0DC 00055D3C 98 0D 81 EB */ stb r0, lbl_8063D4AB-_SDA_BASE_(r13) /* 8005A0E0 00055D40 48 00 00 1C */ b lbl_8005A0FC lbl_8005A0E4: /* 8005A0E4 00055D44 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A0E8 00055D48 28 00 00 05 */ cmplwi r0, 5 /* 8005A0EC 00055D4C 40 81 00 10 */ ble lbl_8005A0FC /* 8005A0F0 00055D50 38 00 00 00 */ li r0, 0 /* 8005A0F4 00055D54 7F BD 23 78 */ or r29, r29, r4 /* 8005A0F8 00055D58 98 0D 98 B9 */ stb r0, lbl_8063EB79-_SDA_BASE_(r13) lbl_8005A0FC: /* 8005A0FC 00055D5C 80 8D 98 C8 */ lwz r4, lbl_8063EB88-_SDA_BASE_(r13) /* 8005A100 00055D60 7F E0 20 39 */ and. r0, r31, r4 /* 8005A104 00055D64 41 82 00 54 */ beq lbl_8005A158 /* 8005A108 00055D68 88 6D 98 B7 */ lbz r3, lbl_8063EB77-_SDA_BASE_(r13) /* 8005A10C 00055D6C 88 0D 81 E9 */ lbz r0, lbl_8063D4A9-_SDA_BASE_(r13) /* 8005A110 00055D70 38 63 00 01 */ addi r3, r3, 1 /* 8005A114 00055D74 2C 00 00 00 */ cmpwi r0, 0 /* 8005A118 00055D78 98 6D 98 B7 */ stb r3, lbl_8063EB77-_SDA_BASE_(r13) /* 8005A11C 00055D7C 41 82 00 24 */ beq lbl_8005A140 /* 8005A120 00055D80 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A124 00055D84 28 00 00 0F */ cmplwi r0, 0xf /* 8005A128 00055D88 40 81 00 30 */ ble lbl_8005A158 /* 8005A12C 00055D8C 38 00 00 00 */ li r0, 0 /* 8005A130 00055D90 7F BD 23 78 */ or r29, r29, r4 /* 8005A134 00055D94 98 0D 98 B7 */ stb r0, lbl_8063EB77-_SDA_BASE_(r13) /* 8005A138 00055D98 98 0D 81 E9 */ stb r0, lbl_8063D4A9-_SDA_BASE_(r13) /* 8005A13C 00055D9C 48 00 00 1C */ b lbl_8005A158 lbl_8005A140: /* 8005A140 00055DA0 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A144 00055DA4 28 00 00 05 */ cmplwi r0, 5 /* 8005A148 00055DA8 40 81 00 10 */ ble lbl_8005A158 /* 8005A14C 00055DAC 38 00 00 00 */ li r0, 0 /* 8005A150 00055DB0 7F BD 23 78 */ or r29, r29, r4 /* 8005A154 00055DB4 98 0D 98 B7 */ stb r0, lbl_8063EB77-_SDA_BASE_(r13) lbl_8005A158: /* 8005A158 00055DB8 80 8D 98 CC */ lwz r4, lbl_8063EB8C-_SDA_BASE_(r13) /* 8005A15C 00055DBC 7F E0 20 39 */ and. r0, r31, r4 /* 8005A160 00055DC0 41 82 00 54 */ beq lbl_8005A1B4 /* 8005A164 00055DC4 88 6D 98 B6 */ lbz r3, lbl_8063EB76-_SDA_BASE_(r13) /* 8005A168 00055DC8 88 0D 81 E8 */ lbz r0, lbl_8063D4A8-_SDA_BASE_(r13) /* 8005A16C 00055DCC 38 63 00 01 */ addi r3, r3, 1 /* 8005A170 00055DD0 2C 00 00 00 */ cmpwi r0, 0 /* 8005A174 00055DD4 98 6D 98 B6 */ stb r3, lbl_8063EB76-_SDA_BASE_(r13) /* 8005A178 00055DD8 41 82 00 24 */ beq lbl_8005A19C /* 8005A17C 00055DDC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A180 00055DE0 28 00 00 0F */ cmplwi r0, 0xf /* 8005A184 00055DE4 40 81 00 30 */ ble lbl_8005A1B4 /* 8005A188 00055DE8 38 00 00 00 */ li r0, 0 /* 8005A18C 00055DEC 7F BD 23 78 */ or r29, r29, r4 /* 8005A190 00055DF0 98 0D 98 B6 */ stb r0, lbl_8063EB76-_SDA_BASE_(r13) /* 8005A194 00055DF4 98 0D 81 E8 */ stb r0, lbl_8063D4A8-_SDA_BASE_(r13) /* 8005A198 00055DF8 48 00 00 1C */ b lbl_8005A1B4 lbl_8005A19C: /* 8005A19C 00055DFC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A1A0 00055E00 28 00 00 05 */ cmplwi r0, 5 /* 8005A1A4 00055E04 40 81 00 10 */ ble lbl_8005A1B4 /* 8005A1A8 00055E08 38 00 00 00 */ li r0, 0 /* 8005A1AC 00055E0C 7F BD 23 78 */ or r29, r29, r4 /* 8005A1B0 00055E10 98 0D 98 B6 */ stb r0, lbl_8063EB76-_SDA_BASE_(r13) lbl_8005A1B4: /* 8005A1B4 00055E14 57 40 07 7B */ rlwinm. r0, r26, 0, 0x1d, 0x1d /* 8005A1B8 00055E18 41 82 00 BC */ beq lbl_8005A274 /* 8005A1BC 00055E1C 80 8D 98 D0 */ lwz r4, lbl_8063EB90-_SDA_BASE_(r13) /* 8005A1C0 00055E20 7F E0 20 39 */ and. r0, r31, r4 /* 8005A1C4 00055E24 41 82 00 54 */ beq lbl_8005A218 /* 8005A1C8 00055E28 88 6D 98 BA */ lbz r3, lbl_8063EB7A-_SDA_BASE_(r13) /* 8005A1CC 00055E2C 88 0D 81 EC */ lbz r0, lbl_8063D4AC-_SDA_BASE_(r13) /* 8005A1D0 00055E30 38 63 00 01 */ addi r3, r3, 1 /* 8005A1D4 00055E34 2C 00 00 00 */ cmpwi r0, 0 /* 8005A1D8 00055E38 98 6D 98 BA */ stb r3, lbl_8063EB7A-_SDA_BASE_(r13) /* 8005A1DC 00055E3C 41 82 00 24 */ beq lbl_8005A200 /* 8005A1E0 00055E40 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A1E4 00055E44 28 00 00 0F */ cmplwi r0, 0xf /* 8005A1E8 00055E48 40 81 00 30 */ ble lbl_8005A218 /* 8005A1EC 00055E4C 38 00 00 00 */ li r0, 0 /* 8005A1F0 00055E50 7F BD 23 78 */ or r29, r29, r4 /* 8005A1F4 00055E54 98 0D 98 BA */ stb r0, lbl_8063EB7A-_SDA_BASE_(r13) /* 8005A1F8 00055E58 98 0D 81 EC */ stb r0, lbl_8063D4AC-_SDA_BASE_(r13) /* 8005A1FC 00055E5C 48 00 00 1C */ b lbl_8005A218 lbl_8005A200: /* 8005A200 00055E60 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A204 00055E64 28 00 00 05 */ cmplwi r0, 5 /* 8005A208 00055E68 40 81 00 10 */ ble lbl_8005A218 /* 8005A20C 00055E6C 38 00 00 00 */ li r0, 0 /* 8005A210 00055E70 7F BD 23 78 */ or r29, r29, r4 /* 8005A214 00055E74 98 0D 98 BA */ stb r0, lbl_8063EB7A-_SDA_BASE_(r13) lbl_8005A218: /* 8005A218 00055E78 80 8D 98 D4 */ lwz r4, lbl_8063EB94-_SDA_BASE_(r13) /* 8005A21C 00055E7C 7F E0 20 39 */ and. r0, r31, r4 /* 8005A220 00055E80 41 82 00 54 */ beq lbl_8005A274 /* 8005A224 00055E84 88 6D 98 BB */ lbz r3, lbl_8063EB7B-_SDA_BASE_(r13) /* 8005A228 00055E88 88 0D 81 ED */ lbz r0, lbl_8063D4AD-_SDA_BASE_(r13) /* 8005A22C 00055E8C 38 63 00 01 */ addi r3, r3, 1 /* 8005A230 00055E90 2C 00 00 00 */ cmpwi r0, 0 /* 8005A234 00055E94 98 6D 98 BB */ stb r3, lbl_8063EB7B-_SDA_BASE_(r13) /* 8005A238 00055E98 41 82 00 24 */ beq lbl_8005A25C /* 8005A23C 00055E9C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A240 00055EA0 28 00 00 0F */ cmplwi r0, 0xf /* 8005A244 00055EA4 40 81 00 30 */ ble lbl_8005A274 /* 8005A248 00055EA8 38 00 00 00 */ li r0, 0 /* 8005A24C 00055EAC 7F BD 23 78 */ or r29, r29, r4 /* 8005A250 00055EB0 98 0D 98 BB */ stb r0, lbl_8063EB7B-_SDA_BASE_(r13) /* 8005A254 00055EB4 98 0D 81 ED */ stb r0, lbl_8063D4AD-_SDA_BASE_(r13) /* 8005A258 00055EB8 48 00 00 1C */ b lbl_8005A274 lbl_8005A25C: /* 8005A25C 00055EBC 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A260 00055EC0 28 00 00 05 */ cmplwi r0, 5 /* 8005A264 00055EC4 40 81 00 10 */ ble lbl_8005A274 /* 8005A268 00055EC8 38 00 00 00 */ li r0, 0 /* 8005A26C 00055ECC 7F BD 23 78 */ or r29, r29, r4 /* 8005A270 00055ED0 98 0D 98 BB */ stb r0, lbl_8063EB7B-_SDA_BASE_(r13) lbl_8005A274: /* 8005A274 00055ED4 80 0D 98 D0 */ lwz r0, lbl_8063EB90-_SDA_BASE_(r13) /* 8005A278 00055ED8 7F A0 00 39 */ and. r0, r29, r0 /* 8005A27C 00055EDC 41 82 00 4C */ beq lbl_8005A2C8 /* 8005A280 00055EE0 80 6D 98 D8 */ lwz r3, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A284 00055EE4 2C 03 00 00 */ cmpwi r3, 0 /* 8005A288 00055EE8 41 82 00 40 */ beq lbl_8005A2C8 /* 8005A28C 00055EEC 88 0D 98 EC */ lbz r0, lbl_8063EBAC-_SDA_BASE_(r13) /* 8005A290 00055EF0 7C 03 00 00 */ cmpw r3, r0 /* 8005A294 00055EF4 40 82 00 18 */ bne lbl_8005A2AC /* 8005A298 00055EF8 57 40 06 B5 */ rlwinm. r0, r26, 0, 0x1a, 0x1a /* 8005A29C 00055EFC 40 82 00 20 */ bne lbl_8005A2BC /* 8005A2A0 00055F00 38 60 00 02 */ li r3, 2 /* 8005A2A4 00055F04 48 00 02 29 */ bl func_8005A4CC /* 8005A2A8 00055F08 48 00 00 14 */ b lbl_8005A2BC lbl_8005A2AC: /* 8005A2AC 00055F0C 57 40 07 39 */ rlwinm. r0, r26, 0, 0x1c, 0x1c /* 8005A2B0 00055F10 40 82 00 0C */ bne lbl_8005A2BC /* 8005A2B4 00055F14 38 60 00 01 */ li r3, 1 /* 8005A2B8 00055F18 48 00 02 15 */ bl func_8005A4CC lbl_8005A2BC: /* 8005A2BC 00055F1C 80 0D 98 D8 */ lwz r0, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A2C0 00055F20 64 03 80 00 */ oris r3, r0, 0x8000 /* 8005A2C4 00055F24 48 00 01 5C */ b lbl_8005A420 lbl_8005A2C8: /* 8005A2C8 00055F28 80 0D 98 D4 */ lwz r0, lbl_8063EB94-_SDA_BASE_(r13) /* 8005A2CC 00055F2C 7F A0 00 39 */ and. r0, r29, r0 /* 8005A2D0 00055F30 41 82 00 4C */ beq lbl_8005A31C /* 8005A2D4 00055F34 57 40 06 73 */ rlwinm. r0, r26, 0, 0x19, 0x19 /* 8005A2D8 00055F38 41 82 00 24 */ beq lbl_8005A2FC /* 8005A2DC 00055F3C 57 40 06 B5 */ rlwinm. r0, r26, 0, 0x1a, 0x1a /* 8005A2E0 00055F40 40 82 00 0C */ bne lbl_8005A2EC /* 8005A2E4 00055F44 38 60 00 02 */ li r3, 2 /* 8005A2E8 00055F48 48 00 01 E5 */ bl func_8005A4CC lbl_8005A2EC: /* 8005A2EC 00055F4C 80 0D 98 D8 */ lwz r0, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A2F0 00055F50 64 03 80 00 */ oris r3, r0, 0x8000 /* 8005A2F4 00055F54 60 63 40 00 */ ori r3, r3, 0x4000 /* 8005A2F8 00055F58 48 00 01 28 */ b lbl_8005A420 lbl_8005A2FC: /* 8005A2FC 00055F5C 57 40 07 FF */ clrlwi. r0, r26, 0x1f /* 8005A300 00055F60 41 82 00 1C */ beq lbl_8005A31C /* 8005A304 00055F64 57 40 06 B5 */ rlwinm. r0, r26, 0, 0x1a, 0x1a /* 8005A308 00055F68 40 82 00 0C */ bne lbl_8005A314 /* 8005A30C 00055F6C 38 60 00 02 */ li r3, 2 /* 8005A310 00055F70 48 00 01 BD */ bl func_8005A4CC lbl_8005A314: /* 8005A314 00055F74 38 60 FF FF */ li r3, -1 /* 8005A318 00055F78 48 00 01 08 */ b lbl_8005A420 lbl_8005A31C: /* 8005A31C 00055F7C 80 AD 98 CC */ lwz r5, lbl_8063EB8C-_SDA_BASE_(r13) /* 8005A320 00055F80 80 8D 98 C8 */ lwz r4, lbl_8063EB88-_SDA_BASE_(r13) /* 8005A324 00055F84 80 6D 98 C0 */ lwz r3, lbl_8063EB80-_SDA_BASE_(r13) /* 8005A328 00055F88 80 0D 98 C4 */ lwz r0, lbl_8063EB84-_SDA_BASE_(r13) /* 8005A32C 00055F8C 7C A4 23 78 */ or r4, r5, r4 /* 8005A330 00055F90 7C 60 03 78 */ or r0, r3, r0 /* 8005A334 00055F94 7C 80 03 78 */ or r0, r4, r0 /* 8005A338 00055F98 7F A0 00 39 */ and. r0, r29, r0 /* 8005A33C 00055F9C 41 82 00 E0 */ beq lbl_8005A41C /* 8005A340 00055FA0 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 8005A344 00055FA4 80 8D 98 D8 */ lwz r4, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A348 00055FA8 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 8005A34C 00055FAC 4B FF 7C 69 */ bl func_80051FB4 /* 8005A350 00055FB0 80 0D 98 CC */ lwz r0, lbl_8063EB8C-_SDA_BASE_(r13) /* 8005A354 00055FB4 7F A0 00 39 */ and. r0, r29, r0 /* 8005A358 00055FB8 41 82 00 2C */ beq lbl_8005A384 /* 8005A35C 00055FBC A0 63 00 00 */ lhz r3, 0(r3) /* 8005A360 00055FC0 2C 03 00 00 */ cmpwi r3, 0 /* 8005A364 00055FC4 41 82 00 B8 */ beq lbl_8005A41C /* 8005A368 00055FC8 57 40 06 F7 */ rlwinm. r0, r26, 0, 0x1b, 0x1b /* 8005A36C 00055FCC 90 6D 98 D8 */ stw r3, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A370 00055FD0 40 82 00 0C */ bne lbl_8005A37C /* 8005A374 00055FD4 38 60 00 03 */ li r3, 3 /* 8005A378 00055FD8 48 00 01 55 */ bl func_8005A4CC lbl_8005A37C: /* 8005A37C 00055FDC 83 CD 98 D8 */ lwz r30, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A380 00055FE0 48 00 00 9C */ b lbl_8005A41C lbl_8005A384: /* 8005A384 00055FE4 80 0D 98 C8 */ lwz r0, lbl_8063EB88-_SDA_BASE_(r13) /* 8005A388 00055FE8 7F A0 00 39 */ and. r0, r29, r0 /* 8005A38C 00055FEC 41 82 00 2C */ beq lbl_8005A3B8 /* 8005A390 00055FF0 A0 63 00 06 */ lhz r3, 6(r3) /* 8005A394 00055FF4 2C 03 00 00 */ cmpwi r3, 0 /* 8005A398 00055FF8 41 82 00 84 */ beq lbl_8005A41C /* 8005A39C 00055FFC 57 40 06 F7 */ rlwinm. r0, r26, 0, 0x1b, 0x1b /* 8005A3A0 00056000 90 6D 98 D8 */ stw r3, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A3A4 00056004 40 82 00 0C */ bne lbl_8005A3B0 /* 8005A3A8 00056008 38 60 00 03 */ li r3, 3 /* 8005A3AC 0005600C 48 00 01 21 */ bl func_8005A4CC lbl_8005A3B0: /* 8005A3B0 00056010 83 CD 98 D8 */ lwz r30, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A3B4 00056014 48 00 00 68 */ b lbl_8005A41C lbl_8005A3B8: /* 8005A3B8 00056018 80 0D 98 C0 */ lwz r0, lbl_8063EB80-_SDA_BASE_(r13) /* 8005A3BC 0005601C 7F A0 00 39 */ and. r0, r29, r0 /* 8005A3C0 00056020 41 82 00 2C */ beq lbl_8005A3EC /* 8005A3C4 00056024 A0 63 00 02 */ lhz r3, 2(r3) /* 8005A3C8 00056028 2C 03 00 00 */ cmpwi r3, 0 /* 8005A3CC 0005602C 41 82 00 50 */ beq lbl_8005A41C /* 8005A3D0 00056030 57 40 06 F7 */ rlwinm. r0, r26, 0, 0x1b, 0x1b /* 8005A3D4 00056034 90 6D 98 D8 */ stw r3, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A3D8 00056038 40 82 00 0C */ bne lbl_8005A3E4 /* 8005A3DC 0005603C 38 60 00 03 */ li r3, 3 /* 8005A3E0 00056040 48 00 00 ED */ bl func_8005A4CC lbl_8005A3E4: /* 8005A3E4 00056044 83 CD 98 D8 */ lwz r30, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A3E8 00056048 48 00 00 34 */ b lbl_8005A41C lbl_8005A3EC: /* 8005A3EC 0005604C 80 0D 98 C4 */ lwz r0, lbl_8063EB84-_SDA_BASE_(r13) /* 8005A3F0 00056050 7F A0 00 39 */ and. r0, r29, r0 /* 8005A3F4 00056054 41 82 00 28 */ beq lbl_8005A41C /* 8005A3F8 00056058 A0 63 00 04 */ lhz r3, 4(r3) /* 8005A3FC 0005605C 2C 03 00 00 */ cmpwi r3, 0 /* 8005A400 00056060 41 82 00 1C */ beq lbl_8005A41C /* 8005A404 00056064 57 40 06 F7 */ rlwinm. r0, r26, 0, 0x1b, 0x1b /* 8005A408 00056068 90 6D 98 D8 */ stw r3, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A40C 0005606C 40 82 00 0C */ bne lbl_8005A418 /* 8005A410 00056070 38 60 00 03 */ li r3, 3 /* 8005A414 00056074 48 00 00 B9 */ bl func_8005A4CC lbl_8005A418: /* 8005A418 00056078 83 CD 98 D8 */ lwz r30, lbl_8063EB98-_SDA_BASE_(r13) lbl_8005A41C: /* 8005A41C 0005607C 7F C3 F3 78 */ mr r3, r30 lbl_8005A420: /* 8005A420 00056080 39 61 00 30 */ addi r11, r1, 0x30 /* 8005A424 00056084 48 16 CD 4D */ bl _restgpr_26 /* 8005A428 00056088 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005A42C 0005608C 7C 08 03 A6 */ mtlr r0 /* 8005A430 00056090 38 21 00 30 */ addi r1, r1, 0x30 /* 8005A434 00056094 4E 80 00 20 */ blr .global func_8005A438 func_8005A438: /* 8005A438 00056098 90 6D 98 D8 */ stw r3, lbl_8063EB98-_SDA_BASE_(r13) /* 8005A43C 0005609C 4E 80 00 20 */ blr .global func_8005A440 func_8005A440: /* 8005A440 000560A0 38 00 00 01 */ li r0, 1 /* 8005A444 000560A4 98 0D 98 E4 */ stb r0, lbl_8063EBA4-_SDA_BASE_(r13) /* 8005A448 000560A8 4E 80 00 20 */ blr .global func_8005A44C func_8005A44C: /* 8005A44C 000560AC 4E 80 00 20 */ blr .global func_8005A450 func_8005A450: /* 8005A450 000560B0 3C 60 80 06 */ lis r3, lbl_8005A45C@ha /* 8005A454 000560B4 38 63 A4 5C */ addi r3, r3, lbl_8005A45C@l /* 8005A458 000560B8 48 1F 99 48 */ b func_80253DA0 lbl_8005A45C: /* 8005A45C 000560BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005A460 000560C0 7C 08 02 A6 */ mflr r0 /* 8005A464 000560C4 90 01 00 14 */ stw r0, 0x14(r1) /* 8005A468 000560C8 88 0D 98 E4 */ lbz r0, lbl_8063EBA4-_SDA_BASE_(r13) /* 8005A46C 000560CC 2C 00 00 00 */ cmpwi r0, 0 /* 8005A470 000560D0 41 82 00 4C */ beq lbl_8005A4BC /* 8005A474 000560D4 80 0D 98 E8 */ lwz r0, lbl_8063EBA8-_SDA_BASE_(r13) /* 8005A478 000560D8 2C 00 00 00 */ cmpwi r0, 0 /* 8005A47C 000560DC 40 82 00 0C */ bne lbl_8005A488 /* 8005A480 000560E0 48 10 52 11 */ bl func_8015F690 /* 8005A484 000560E4 90 6D 98 E8 */ stw r3, lbl_8063EBA8-_SDA_BASE_(r13) lbl_8005A488: /* 8005A488 000560E8 80 6D 98 E8 */ lwz r3, lbl_8063EBA8-_SDA_BASE_(r13) /* 8005A48C 000560EC 2C 03 00 00 */ cmpwi r3, 0 /* 8005A490 000560F0 41 82 00 20 */ beq lbl_8005A4B0 /* 8005A494 000560F4 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005A498 000560F8 2C 00 00 02 */ cmpwi r0, 2 /* 8005A49C 000560FC 41 82 00 20 */ beq lbl_8005A4BC /* 8005A4A0 00056100 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 8005A4A4 00056104 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 8005A4A8 00056108 4B FF 70 01 */ bl func_800514A8 /* 8005A4AC 0005610C 48 00 00 10 */ b lbl_8005A4BC lbl_8005A4B0: /* 8005A4B0 00056110 3C 60 80 47 */ lis r3, lbl_804766D8@ha /* 8005A4B4 00056114 38 63 66 D8 */ addi r3, r3, lbl_804766D8@l /* 8005A4B8 00056118 4B FF 6F F1 */ bl func_800514A8 lbl_8005A4BC: /* 8005A4BC 0005611C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005A4C0 00056120 7C 08 03 A6 */ mtlr r0 /* 8005A4C4 00056124 38 21 00 10 */ addi r1, r1, 0x10 /* 8005A4C8 00056128 4E 80 00 20 */ blr .global func_8005A4CC func_8005A4CC: /* 8005A4CC 0005612C 2C 03 00 02 */ cmpwi r3, 2 /* 8005A4D0 00056130 41 82 00 30 */ beq lbl_8005A500 /* 8005A4D4 00056134 40 80 00 10 */ bge lbl_8005A4E4 /* 8005A4D8 00056138 2C 03 00 01 */ cmpwi r3, 1 /* 8005A4DC 0005613C 40 80 00 14 */ bge lbl_8005A4F0 /* 8005A4E0 00056140 4E 80 00 20 */ blr lbl_8005A4E4: /* 8005A4E4 00056144 2C 03 00 04 */ cmpwi r3, 4 /* 8005A4E8 00056148 4C 80 00 20 */ bgelr /* 8005A4EC 0005614C 48 00 00 24 */ b lbl_8005A510 lbl_8005A4F0: /* 8005A4F0 00056150 C0 22 85 C4 */ lfs f1, lbl_80640BC4-_SDA2_BASE_(r2) /* 8005A4F4 00056154 38 60 02 1F */ li r3, 0x21f /* 8005A4F8 00056158 38 80 00 00 */ li r4, 0 /* 8005A4FC 0005615C 4B FB 0C 74 */ b func_8000B170 lbl_8005A500: /* 8005A500 00056160 C0 22 85 C4 */ lfs f1, lbl_80640BC4-_SDA2_BASE_(r2) /* 8005A504 00056164 38 60 02 20 */ li r3, 0x220 /* 8005A508 00056168 38 80 00 00 */ li r4, 0 /* 8005A50C 0005616C 4B FB 0C 64 */ b func_8000B170 lbl_8005A510: /* 8005A510 00056170 C0 22 85 C4 */ lfs f1, lbl_80640BC4-_SDA2_BASE_(r2) /* 8005A514 00056174 38 60 02 1E */ li r3, 0x21e /* 8005A518 00056178 38 80 00 00 */ li r4, 0 /* 8005A51C 0005617C 4B FB 0C 54 */ b func_8000B170 /* 8005A520 00056180 4E 80 00 20 */ blr .global func_8005A524 func_8005A524: /* 8005A524 00056184 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005A528 00056188 7C 08 02 A6 */ mflr r0 /* 8005A52C 0005618C 38 A0 00 01 */ li r5, 1 /* 8005A530 00056190 38 8D 98 B0 */ addi r4, r13, lbl_8063EB70-_SDA_BASE_ /* 8005A534 00056194 90 01 00 14 */ stw r0, 0x14(r1) /* 8005A538 00056198 38 60 00 04 */ li r3, 4 /* 8005A53C 0005619C 38 00 00 00 */ li r0, 0 /* 8005A540 000561A0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005A544 000561A4 3F E0 80 47 */ lis r31, lbl_804766D8@ha /* 8005A548 000561A8 B0 64 00 02 */ sth r3, 2(r4) /* 8005A54C 000561AC 38 7F 66 D8 */ addi r3, r31, lbl_804766D8@l /* 8005A550 000561B0 98 AD 98 B0 */ stb r5, lbl_8063EB70-_SDA_BASE_(r13) /* 8005A554 000561B4 98 04 00 04 */ stb r0, 4(r4) /* 8005A558 000561B8 4B FF 6E 61 */ bl func_800513B8 /* 8005A55C 000561BC 3C 80 80 05 */ lis r4, func_80051468@ha /* 8005A560 000561C0 3C A0 80 47 */ lis r5, lbl_804766C8@ha /* 8005A564 000561C4 38 7F 66 D8 */ addi r3, r31, 0x66d8 /* 8005A568 000561C8 38 84 14 68 */ addi r4, r4, func_80051468@l /* 8005A56C 000561CC 38 A5 66 C8 */ addi r5, r5, lbl_804766C8@l /* 8005A570 000561D0 48 16 C6 D9 */ bl __register_global_object_tmp /* 8005A574 000561D4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005A578 000561D8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005A57C 000561DC 7C 08 03 A6 */ mtlr r0 /* 8005A580 000561E0 38 21 00 10 */ addi r1, r1, 0x10 /* 8005A584 000561E4 4E 80 00 20 */ blr .global func_8005A588 func_8005A588: /* 8005A588 000561E8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005A58C 000561EC 7C 08 02 A6 */ mflr r0 /* 8005A590 000561F0 90 01 00 34 */ stw r0, 0x34(r1) /* 8005A594 000561F4 39 61 00 30 */ addi r11, r1, 0x30 /* 8005A598 000561F8 48 16 CB 81 */ bl _savegpr_23 /* 8005A59C 000561FC 3B 00 00 00 */ li r24, 0 /* 8005A5A0 00056200 38 60 00 00 */ li r3, 0 /* 8005A5A4 00056204 4B FF E5 6D */ bl func_80058B10 /* 8005A5A8 00056208 3C 80 80 40 */ lis r4, lbl_803FB8D0@ha /* 8005A5AC 0005620C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005A5B0 00056210 38 84 B8 D0 */ addi r4, r4, lbl_803FB8D0@l /* 8005A5B4 00056214 7C 64 00 2E */ lwzx r3, r4, r0 /* 8005A5B8 00056218 48 1E F0 25 */ bl func_802495DC /* 8005A5BC 0005621C 3C A0 80 47 */ lis r5, lbl_80477D68@ha /* 8005A5C0 00056220 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005A5C4 00056224 38 00 00 10 */ li r0, 0x10 /* 8005A5C8 00056228 39 00 00 00 */ li r8, 0 /* 8005A5CC 0005622C 38 A5 7D 68 */ addi r5, r5, lbl_80477D68@l /* 8005A5D0 00056230 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005A5D4 00056234 38 80 00 00 */ li r4, 0 /* 8005A5D8 00056238 7C 09 03 A6 */ mtctr r0 lbl_8005A5DC: /* 8005A5DC 0005623C 55 00 13 BA */ rlwinm r0, r8, 2, 0xe, 0x1d /* 8005A5E0 00056240 39 08 00 08 */ addi r8, r8, 8 /* 8005A5E4 00056244 7C E3 02 14 */ add r7, r3, r0 /* 8005A5E8 00056248 7C 85 01 2E */ stwx r4, r5, r0 /* 8005A5EC 0005624C 7C C5 02 14 */ add r6, r5, r0 /* 8005A5F0 00056250 55 00 13 BA */ rlwinm r0, r8, 2, 0xe, 0x1d /* 8005A5F4 00056254 90 87 00 00 */ stw r4, 0(r7) /* 8005A5F8 00056258 39 08 00 08 */ addi r8, r8, 8 /* 8005A5FC 0005625C 90 86 00 04 */ stw r4, 4(r6) /* 8005A600 00056260 90 87 00 04 */ stw r4, 4(r7) /* 8005A604 00056264 90 86 00 08 */ stw r4, 8(r6) /* 8005A608 00056268 90 87 00 08 */ stw r4, 8(r7) /* 8005A60C 0005626C 90 86 00 0C */ stw r4, 0xc(r6) /* 8005A610 00056270 90 87 00 0C */ stw r4, 0xc(r7) /* 8005A614 00056274 90 86 00 10 */ stw r4, 0x10(r6) /* 8005A618 00056278 90 87 00 10 */ stw r4, 0x10(r7) /* 8005A61C 0005627C 90 86 00 14 */ stw r4, 0x14(r6) /* 8005A620 00056280 90 87 00 14 */ stw r4, 0x14(r7) /* 8005A624 00056284 90 86 00 18 */ stw r4, 0x18(r6) /* 8005A628 00056288 90 86 00 1C */ stw r4, 0x1c(r6) /* 8005A62C 0005628C 7C C5 02 14 */ add r6, r5, r0 /* 8005A630 00056290 90 87 00 18 */ stw r4, 0x18(r7) /* 8005A634 00056294 90 87 00 1C */ stw r4, 0x1c(r7) /* 8005A638 00056298 7C E3 02 14 */ add r7, r3, r0 /* 8005A63C 0005629C 7C 85 01 2E */ stwx r4, r5, r0 /* 8005A640 000562A0 7C 83 01 2E */ stwx r4, r3, r0 /* 8005A644 000562A4 90 86 00 04 */ stw r4, 4(r6) /* 8005A648 000562A8 90 87 00 04 */ stw r4, 4(r7) /* 8005A64C 000562AC 90 86 00 08 */ stw r4, 8(r6) /* 8005A650 000562B0 90 87 00 08 */ stw r4, 8(r7) /* 8005A654 000562B4 90 86 00 0C */ stw r4, 0xc(r6) /* 8005A658 000562B8 90 87 00 0C */ stw r4, 0xc(r7) /* 8005A65C 000562BC 90 86 00 10 */ stw r4, 0x10(r6) /* 8005A660 000562C0 90 87 00 10 */ stw r4, 0x10(r7) /* 8005A664 000562C4 90 86 00 14 */ stw r4, 0x14(r6) /* 8005A668 000562C8 90 87 00 14 */ stw r4, 0x14(r7) /* 8005A66C 000562CC 90 86 00 18 */ stw r4, 0x18(r6) /* 8005A670 000562D0 90 87 00 18 */ stw r4, 0x18(r7) /* 8005A674 000562D4 90 86 00 1C */ stw r4, 0x1c(r6) /* 8005A678 000562D8 90 87 00 1C */ stw r4, 0x1c(r7) /* 8005A67C 000562DC 42 00 FF 60 */ bdnz lbl_8005A5DC /* 8005A680 000562E0 3F 60 80 41 */ lis r27, lbl_8040B0E0@ha /* 8005A684 000562E4 3F 40 80 40 */ lis r26, lbl_803FB8E4@ha /* 8005A688 000562E8 3F 20 80 40 */ lis r25, lbl_803FB8D0@ha /* 8005A68C 000562EC 3E E0 80 47 */ lis r23, lbl_80477D68@ha /* 8005A690 000562F0 3B 7B B0 E0 */ addi r27, r27, lbl_8040B0E0@l /* 8005A694 000562F4 3B 5A B8 E4 */ addi r26, r26, lbl_803FB8E4@l /* 8005A698 000562F8 3B 39 B8 D0 */ addi r25, r25, lbl_803FB8D0@l /* 8005A69C 000562FC 3A F7 7D 68 */ addi r23, r23, lbl_80477D68@l /* 8005A6A0 00056300 3B A0 00 00 */ li r29, 0 lbl_8005A6A4: /* 8005A6A4 00056304 57 BC 13 BA */ rlwinm r28, r29, 2, 0xe, 0x1d /* 8005A6A8 00056308 38 60 00 00 */ li r3, 0 /* 8005A6AC 0005630C 4B FF E4 65 */ bl func_80058B10 /* 8005A6B0 00056310 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 8005A6B4 00056314 1C 00 01 40 */ mulli r0, r0, 0x140 /* 8005A6B8 00056318 7C 1C 02 14 */ add r0, r28, r0 /* 8005A6BC 0005631C 7F DB 00 2E */ lwzx r30, r27, r0 /* 8005A6C0 00056320 2C 1E 00 00 */ cmpwi r30, 0 /* 8005A6C4 00056324 41 82 00 50 */ beq lbl_8005A714 /* 8005A6C8 00056328 57 A0 04 3E */ clrlwi r0, r29, 0x10 /* 8005A6CC 0005632C 7C 1A 00 AE */ lbzx r0, r26, r0 /* 8005A6D0 00056330 2C 00 00 00 */ cmpwi r0, 0 /* 8005A6D4 00056334 40 82 00 0C */ bne lbl_8005A6E0 /* 8005A6D8 00056338 38 60 00 0A */ li r3, 0xa /* 8005A6DC 0005633C 48 00 00 14 */ b lbl_8005A6F0 lbl_8005A6E0: /* 8005A6E0 00056340 38 60 00 00 */ li r3, 0 /* 8005A6E4 00056344 4B FF E4 2D */ bl func_80058B10 /* 8005A6E8 00056348 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005A6EC 0005634C 7C 79 00 2E */ lwzx r3, r25, r0 lbl_8005A6F0: /* 8005A6F0 00056350 7F C4 F3 78 */ mr r4, r30 /* 8005A6F4 00056354 48 18 0E F1 */ bl func_801DB5E4 /* 8005A6F8 00056358 3B BD 00 01 */ addi r29, r29, 1 /* 8005A6FC 0005635C 38 03 01 1F */ addi r0, r3, 0x11f /* 8005A700 00056360 28 1D 01 00 */ cmplwi r29, 0x100 /* 8005A704 00056364 7F 17 E1 2E */ stwx r24, r23, r28 /* 8005A708 00056368 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a /* 8005A70C 0005636C 7F 18 02 14 */ add r24, r24, r0 /* 8005A710 00056370 41 80 FF 94 */ blt lbl_8005A6A4 lbl_8005A714: /* 8005A714 00056374 7F 03 C3 78 */ mr r3, r24 /* 8005A718 00056378 48 1F 5C 25 */ bl func_8025033C /* 8005A71C 0005637C 3C A0 80 47 */ lis r5, lbl_80477968@ha /* 8005A720 00056380 3C 80 80 47 */ lis r4, lbl_80477D68@ha /* 8005A724 00056384 90 65 79 68 */ stw r3, lbl_80477968@l(r5) /* 8005A728 00056388 38 00 00 33 */ li r0, 0x33 /* 8005A72C 0005638C 38 65 79 68 */ addi r3, r5, 0x7968 /* 8005A730 00056390 38 84 7D 68 */ addi r4, r4, lbl_80477D68@l /* 8005A734 00056394 39 00 00 01 */ li r8, 1 /* 8005A738 00056398 7C 09 03 A6 */ mtctr r0 lbl_8005A73C: /* 8005A73C 0005639C 55 07 13 BA */ rlwinm r7, r8, 2, 0xe, 0x1d /* 8005A740 000563A0 7C C4 38 2E */ lwzx r6, r4, r7 /* 8005A744 000563A4 2C 06 00 00 */ cmpwi r6, 0 /* 8005A748 000563A8 41 82 00 10 */ beq lbl_8005A758 /* 8005A74C 000563AC 80 05 79 68 */ lwz r0, 0x7968(r5) /* 8005A750 000563B0 7C 00 32 14 */ add r0, r0, r6 /* 8005A754 000563B4 7C 03 39 2E */ stwx r0, r3, r7 lbl_8005A758: /* 8005A758 000563B8 39 08 00 01 */ addi r8, r8, 1 /* 8005A75C 000563BC 55 07 13 BA */ rlwinm r7, r8, 2, 0xe, 0x1d /* 8005A760 000563C0 7C C4 38 2E */ lwzx r6, r4, r7 /* 8005A764 000563C4 2C 06 00 00 */ cmpwi r6, 0 /* 8005A768 000563C8 41 82 00 10 */ beq lbl_8005A778 /* 8005A76C 000563CC 80 05 79 68 */ lwz r0, 0x7968(r5) /* 8005A770 000563D0 7C 00 32 14 */ add r0, r0, r6 /* 8005A774 000563D4 7C 03 39 2E */ stwx r0, r3, r7 lbl_8005A778: /* 8005A778 000563D8 39 08 00 01 */ addi r8, r8, 1 /* 8005A77C 000563DC 55 07 13 BA */ rlwinm r7, r8, 2, 0xe, 0x1d /* 8005A780 000563E0 7C C4 38 2E */ lwzx r6, r4, r7 /* 8005A784 000563E4 2C 06 00 00 */ cmpwi r6, 0 /* 8005A788 000563E8 41 82 00 10 */ beq lbl_8005A798 /* 8005A78C 000563EC 80 05 79 68 */ lwz r0, 0x7968(r5) /* 8005A790 000563F0 7C 00 32 14 */ add r0, r0, r6 /* 8005A794 000563F4 7C 03 39 2E */ stwx r0, r3, r7 lbl_8005A798: /* 8005A798 000563F8 39 08 00 01 */ addi r8, r8, 1 /* 8005A79C 000563FC 55 07 13 BA */ rlwinm r7, r8, 2, 0xe, 0x1d /* 8005A7A0 00056400 7C C4 38 2E */ lwzx r6, r4, r7 /* 8005A7A4 00056404 2C 06 00 00 */ cmpwi r6, 0 /* 8005A7A8 00056408 41 82 00 10 */ beq lbl_8005A7B8 /* 8005A7AC 0005640C 80 05 79 68 */ lwz r0, 0x7968(r5) /* 8005A7B0 00056410 7C 00 32 14 */ add r0, r0, r6 /* 8005A7B4 00056414 7C 03 39 2E */ stwx r0, r3, r7 lbl_8005A7B8: /* 8005A7B8 00056418 39 08 00 01 */ addi r8, r8, 1 /* 8005A7BC 0005641C 55 07 13 BA */ rlwinm r7, r8, 2, 0xe, 0x1d /* 8005A7C0 00056420 7C C4 38 2E */ lwzx r6, r4, r7 /* 8005A7C4 00056424 2C 06 00 00 */ cmpwi r6, 0 /* 8005A7C8 00056428 41 82 00 10 */ beq lbl_8005A7D8 /* 8005A7CC 0005642C 80 05 79 68 */ lwz r0, 0x7968(r5) /* 8005A7D0 00056430 7C 00 32 14 */ add r0, r0, r6 /* 8005A7D4 00056434 7C 03 39 2E */ stwx r0, r3, r7 lbl_8005A7D8: /* 8005A7D8 00056438 39 08 00 01 */ addi r8, r8, 1 /* 8005A7DC 0005643C 42 00 FF 60 */ bdnz lbl_8005A73C /* 8005A7E0 00056440 3E E0 80 47 */ lis r23, lbl_80477968@ha /* 8005A7E4 00056444 3F A0 80 41 */ lis r29, lbl_8040B0E0@ha /* 8005A7E8 00056448 3F C0 80 40 */ lis r30, lbl_803FB8E4@ha /* 8005A7EC 0005644C 3F E0 80 40 */ lis r31, lbl_803FB8D0@ha /* 8005A7F0 00056450 3B BD B0 E0 */ addi r29, r29, lbl_8040B0E0@l /* 8005A7F4 00056454 3A F7 79 68 */ addi r23, r23, lbl_80477968@l /* 8005A7F8 00056458 3B DE B8 E4 */ addi r30, r30, lbl_803FB8E4@l /* 8005A7FC 0005645C 3B FF B8 D0 */ addi r31, r31, lbl_803FB8D0@l /* 8005A800 00056460 3B 60 00 00 */ li r27, 0 lbl_8005A804: /* 8005A804 00056464 57 7C 13 BA */ rlwinm r28, r27, 2, 0xe, 0x1d /* 8005A808 00056468 7C 17 E0 2E */ lwzx r0, r23, r28 /* 8005A80C 0005646C 2C 00 00 00 */ cmpwi r0, 0 /* 8005A810 00056470 41 82 01 30 */ beq lbl_8005A940 /* 8005A814 00056474 38 60 00 00 */ li r3, 0 /* 8005A818 00056478 4B FF E2 F9 */ bl func_80058B10 /* 8005A81C 0005647C 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8005A820 00056480 57 60 04 3E */ clrlwi r0, r27, 0x10 /* 8005A824 00056484 1C 63 01 40 */ mulli r3, r3, 0x140 /* 8005A828 00056488 7C 1E 00 AE */ lbzx r0, r30, r0 /* 8005A82C 0005648C 2C 00 00 00 */ cmpwi r0, 0 /* 8005A830 00056490 7C 1C 1A 14 */ add r0, r28, r3 /* 8005A834 00056494 7F 5D 00 2E */ lwzx r26, r29, r0 /* 8005A838 00056498 40 82 00 0C */ bne lbl_8005A844 /* 8005A83C 0005649C 3B 20 00 0A */ li r25, 0xa /* 8005A840 000564A0 48 00 00 14 */ b lbl_8005A854 lbl_8005A844: /* 8005A844 000564A4 38 60 00 00 */ li r3, 0 /* 8005A848 000564A8 4B FF E2 C9 */ bl func_80058B10 /* 8005A84C 000564AC 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005A850 000564B0 7F 3F 00 2E */ lwzx r25, r31, r0 lbl_8005A854: /* 8005A854 000564B4 7F 23 CB 78 */ mr r3, r25 /* 8005A858 000564B8 7F 44 D3 78 */ mr r4, r26 /* 8005A85C 000564BC 48 18 0D 89 */ bl func_801DB5E4 /* 8005A860 000564C0 7C 78 1B 78 */ mr r24, r3 /* 8005A864 000564C4 7F 23 CB 78 */ mr r3, r25 /* 8005A868 000564C8 7F 44 D3 78 */ mr r4, r26 /* 8005A86C 000564CC 48 18 0C 51 */ bl func_801DB4BC /* 8005A870 000564D0 88 03 00 07 */ lbz r0, 7(r3) /* 8005A874 000564D4 7C 64 1B 78 */ mr r4, r3 /* 8005A878 000564D8 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e /* 8005A87C 000564DC 98 03 00 07 */ stb r0, 7(r3) /* 8005A880 000564E0 80 A3 00 28 */ lwz r5, 0x28(r3) /* 8005A884 000564E4 54 A0 00 01 */ rlwinm. r0, r5, 0, 0, 0 /* 8005A888 000564E8 41 82 00 0C */ beq lbl_8005A894 /* 8005A88C 000564EC 7C 03 28 50 */ subf r0, r3, r5 /* 8005A890 000564F0 90 03 00 28 */ stw r0, 0x28(r3) lbl_8005A894: /* 8005A894 000564F4 80 03 00 08 */ lwz r0, 8(r3) /* 8005A898 000564F8 2C 00 00 01 */ cmpwi r0, 1 /* 8005A89C 000564FC 41 81 00 18 */ bgt lbl_8005A8B4 /* 8005A8A0 00056500 80 A3 00 48 */ lwz r5, 0x48(r3) /* 8005A8A4 00056504 54 A0 00 01 */ rlwinm. r0, r5, 0, 0, 0 /* 8005A8A8 00056508 41 82 00 0C */ beq lbl_8005A8B4 /* 8005A8AC 0005650C 7C 03 28 50 */ subf r0, r3, r5 /* 8005A8B0 00056510 90 03 00 48 */ stw r0, 0x48(r3) lbl_8005A8B4: /* 8005A8B4 00056514 7C 77 E0 2E */ lwzx r3, r23, r28 /* 8005A8B8 00056518 7F 05 C3 78 */ mr r5, r24 /* 8005A8BC 0005651C 4B FA 97 45 */ bl memcpy /* 8005A8C0 00056520 7C 77 E0 2E */ lwzx r3, r23, r28 /* 8005A8C4 00056524 48 1E 2E 09 */ bl func_8023D6CC /* 8005A8C8 00056528 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8005A8CC 0005652C 7C 7C 1B 78 */ mr r28, r3 /* 8005A8D0 00056530 88 04 00 7A */ lbz r0, 0x7a(r4) /* 8005A8D4 00056534 2C 00 00 00 */ cmpwi r0, 0 /* 8005A8D8 00056538 41 82 00 38 */ beq lbl_8005A910 /* 8005A8DC 0005653C 2C 03 00 00 */ cmpwi r3, 0 /* 8005A8E0 00056540 41 82 00 30 */ beq lbl_8005A910 /* 8005A8E4 00056544 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8005A8E8 00056548 2C 05 00 02 */ cmpwi r5, 2 /* 8005A8EC 0005654C 40 80 00 08 */ bge lbl_8005A8F4 /* 8005A8F0 00056550 38 A0 00 02 */ li r5, 2 lbl_8005A8F4: /* 8005A8F4 00056554 80 9C 00 18 */ lwz r4, 0x18(r28) /* 8005A8F8 00056558 7F 83 E3 78 */ mr r3, r28 /* 8005A8FC 0005655C 2C 04 00 02 */ cmpwi r4, 2 /* 8005A900 00056560 40 80 00 08 */ bge lbl_8005A908 /* 8005A904 00056564 38 80 00 02 */ li r4, 2 lbl_8005A908: /* 8005A908 00056568 80 DC 00 20 */ lwz r6, 0x20(r28) /* 8005A90C 0005656C 48 1E 3A BD */ bl func_8023E3C8 lbl_8005A910: /* 8005A910 00056570 7F 83 E3 78 */ mr r3, r28 /* 8005A914 00056574 7F 04 C3 78 */ mr r4, r24 /* 8005A918 00056578 48 20 FD 3D */ bl DCFlushRange /* 8005A91C 0005657C 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005A920 00056580 28 19 00 0A */ cmplwi r25, 0xa /* 8005A924 00056584 A0 03 16 FE */ lhz r0, 0x16fe(r3) /* 8005A928 00056588 60 00 00 02 */ ori r0, r0, 2 /* 8005A92C 0005658C B0 03 16 FE */ sth r0, 0x16fe(r3) /* 8005A930 00056590 40 82 00 10 */ bne lbl_8005A940 /* 8005A934 00056594 7F 23 CB 78 */ mr r3, r25 /* 8005A938 00056598 7F 44 D3 78 */ mr r4, r26 /* 8005A93C 0005659C 48 18 0D 09 */ bl func_801DB644 lbl_8005A940: /* 8005A940 000565A0 3B 7B 00 01 */ addi r27, r27, 1 /* 8005A944 000565A4 28 1B 01 00 */ cmplwi r27, 0x100 /* 8005A948 000565A8 41 80 FE BC */ blt lbl_8005A804 /* 8005A94C 000565AC 38 60 00 00 */ li r3, 0 /* 8005A950 000565B0 4B FF E1 C1 */ bl func_80058B10 /* 8005A954 000565B4 3F 00 80 40 */ lis r24, lbl_803FB8D0@ha /* 8005A958 000565B8 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005A95C 000565BC 3B 18 B8 D0 */ addi r24, r24, lbl_803FB8D0@l /* 8005A960 000565C0 7C 78 00 2E */ lwzx r3, r24, r0 /* 8005A964 000565C4 48 1E EF 2D */ bl func_80249890 /* 8005A968 000565C8 38 60 00 00 */ li r3, 0 /* 8005A96C 000565CC 4B FF E1 A5 */ bl func_80058B10 /* 8005A970 000565D0 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005A974 000565D4 7C 78 00 2E */ lwzx r3, r24, r0 /* 8005A978 000565D8 48 18 0C FD */ bl func_801DB674 /* 8005A97C 000565DC 39 61 00 30 */ addi r11, r1, 0x30 /* 8005A980 000565E0 48 16 C7 E5 */ bl _restgpr_23 /* 8005A984 000565E4 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005A988 000565E8 7C 08 03 A6 */ mtlr r0 /* 8005A98C 000565EC 38 21 00 30 */ addi r1, r1, 0x30 /* 8005A990 000565F0 4E 80 00 20 */ blr .global func_8005A994 func_8005A994: /* 8005A994 000565F4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005A998 000565F8 7C 08 02 A6 */ mflr r0 /* 8005A99C 000565FC 38 60 03 D4 */ li r3, 0x3d4 /* 8005A9A0 00056600 90 01 00 14 */ stw r0, 0x14(r1) /* 8005A9A4 00056604 48 18 00 8D */ bl func_801DAA30 /* 8005A9A8 00056608 2C 03 00 00 */ cmpwi r3, 0 /* 8005A9AC 0005660C 41 82 00 34 */ beq lbl_8005A9E0 /* 8005A9B0 00056610 38 80 00 01 */ li r4, 1 /* 8005A9B4 00056614 38 00 00 04 */ li r0, 4 /* 8005A9B8 00056618 90 81 00 08 */ stw r4, 8(r1) /* 8005A9BC 0005661C 38 80 00 00 */ li r4, 0 /* 8005A9C0 00056620 38 A0 00 04 */ li r5, 4 /* 8005A9C4 00056624 38 C0 00 00 */ li r6, 0 /* 8005A9C8 00056628 90 01 00 0C */ stw r0, 0xc(r1) /* 8005A9CC 0005662C 38 E0 00 00 */ li r7, 0 /* 8005A9D0 00056630 39 00 00 01 */ li r8, 1 /* 8005A9D4 00056634 39 20 00 05 */ li r9, 5 /* 8005A9D8 00056638 39 40 00 01 */ li r10, 1 /* 8005A9DC 0005663C 48 1E 1E 39 */ bl func_8023C814 lbl_8005A9E0: /* 8005A9E0 00056640 80 8D 81 F0 */ lwz r4, lbl_8063D4B0-_SDA_BASE_(r13) /* 8005A9E4 00056644 90 64 00 00 */ stw r3, 0(r4) /* 8005A9E8 00056648 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005A9EC 0005664C 7C 08 03 A6 */ mtlr r0 /* 8005A9F0 00056650 38 21 00 10 */ addi r1, r1, 0x10 /* 8005A9F4 00056654 4E 80 00 20 */ blr .global func_8005A9F8 func_8005A9F8: /* 8005A9F8 00056658 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005A9FC 0005665C 7C 08 02 A6 */ mflr r0 /* 8005AA00 00056660 90 01 00 14 */ stw r0, 0x14(r1) /* 8005AA04 00056664 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005AA08 00056668 7C 7F 1B 78 */ mr r31, r3 /* 8005AA0C 0005666C 80 0D 98 FC */ lwz r0, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005AA10 00056670 2C 00 00 00 */ cmpwi r0, 0 /* 8005AA14 00056674 40 82 00 0C */ bne lbl_8005AA20 /* 8005AA18 00056678 48 10 4C 79 */ bl func_8015F690 /* 8005AA1C 0005667C 90 6D 98 FC */ stw r3, lbl_8063EBBC-_SDA_BASE_(r13) lbl_8005AA20: /* 8005AA20 00056680 2C 1F 00 41 */ cmpwi r31, 0x41 /* 8005AA24 00056684 41 82 00 D8 */ beq lbl_8005AAFC /* 8005AA28 00056688 40 80 00 1C */ bge lbl_8005AA44 /* 8005AA2C 0005668C 2C 1F 00 1B */ cmpwi r31, 0x1b /* 8005AA30 00056690 41 82 00 7C */ beq lbl_8005AAAC /* 8005AA34 00056694 40 80 02 08 */ bge lbl_8005AC3C /* 8005AA38 00056698 2C 1F 00 1A */ cmpwi r31, 0x1a /* 8005AA3C 0005669C 40 80 00 20 */ bge lbl_8005AA5C /* 8005AA40 000566A0 48 00 01 FC */ b lbl_8005AC3C lbl_8005AA44: /* 8005AA44 000566A4 2C 1F 00 44 */ cmpwi r31, 0x44 /* 8005AA48 000566A8 41 82 01 A4 */ beq lbl_8005ABEC /* 8005AA4C 000566AC 40 80 01 F0 */ bge lbl_8005AC3C /* 8005AA50 000566B0 2C 1F 00 43 */ cmpwi r31, 0x43 /* 8005AA54 000566B4 40 80 01 48 */ bge lbl_8005AB9C /* 8005AA58 000566B8 48 00 00 F4 */ b lbl_8005AB4C lbl_8005AA5C: /* 8005AA5C 000566BC 80 6D 98 FC */ lwz r3, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005AA60 000566C0 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005AA64 000566C4 2C 00 00 01 */ cmpwi r0, 1 /* 8005AA68 000566C8 41 82 00 24 */ beq lbl_8005AA8C /* 8005AA6C 000566CC 40 80 00 30 */ bge lbl_8005AA9C /* 8005AA70 000566D0 2C 00 00 00 */ cmpwi r0, 0 /* 8005AA74 000566D4 40 80 00 08 */ bge lbl_8005AA7C /* 8005AA78 000566D8 48 00 00 24 */ b lbl_8005AA9C lbl_8005AA7C: /* 8005AA7C 000566DC 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AA80 000566E0 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AA84 000566E4 80 63 00 68 */ lwz r3, 0x68(r3) /* 8005AA88 000566E8 48 00 01 C4 */ b lbl_8005AC4C lbl_8005AA8C: /* 8005AA8C 000566EC 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AA90 000566F0 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AA94 000566F4 80 63 00 70 */ lwz r3, 0x70(r3) /* 8005AA98 000566F8 48 00 01 B4 */ b lbl_8005AC4C lbl_8005AA9C: /* 8005AA9C 000566FC 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AAA0 00056700 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AAA4 00056704 80 63 00 78 */ lwz r3, 0x78(r3) /* 8005AAA8 00056708 48 00 01 A4 */ b lbl_8005AC4C lbl_8005AAAC: /* 8005AAAC 0005670C 80 6D 98 FC */ lwz r3, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005AAB0 00056710 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005AAB4 00056714 2C 00 00 01 */ cmpwi r0, 1 /* 8005AAB8 00056718 41 82 00 24 */ beq lbl_8005AADC /* 8005AABC 0005671C 40 80 00 30 */ bge lbl_8005AAEC /* 8005AAC0 00056720 2C 00 00 00 */ cmpwi r0, 0 /* 8005AAC4 00056724 40 80 00 08 */ bge lbl_8005AACC /* 8005AAC8 00056728 48 00 00 24 */ b lbl_8005AAEC lbl_8005AACC: /* 8005AACC 0005672C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AAD0 00056730 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AAD4 00056734 80 63 00 6C */ lwz r3, 0x6c(r3) /* 8005AAD8 00056738 48 00 01 74 */ b lbl_8005AC4C lbl_8005AADC: /* 8005AADC 0005673C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AAE0 00056740 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AAE4 00056744 80 63 00 74 */ lwz r3, 0x74(r3) /* 8005AAE8 00056748 48 00 01 64 */ b lbl_8005AC4C lbl_8005AAEC: /* 8005AAEC 0005674C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AAF0 00056750 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AAF4 00056754 80 63 00 7C */ lwz r3, 0x7c(r3) /* 8005AAF8 00056758 48 00 01 54 */ b lbl_8005AC4C lbl_8005AAFC: /* 8005AAFC 0005675C 80 6D 98 FC */ lwz r3, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005AB00 00056760 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005AB04 00056764 2C 00 00 01 */ cmpwi r0, 1 /* 8005AB08 00056768 41 82 00 24 */ beq lbl_8005AB2C /* 8005AB0C 0005676C 40 80 00 30 */ bge lbl_8005AB3C /* 8005AB10 00056770 2C 00 00 00 */ cmpwi r0, 0 /* 8005AB14 00056774 40 80 00 08 */ bge lbl_8005AB1C /* 8005AB18 00056778 48 00 00 24 */ b lbl_8005AB3C lbl_8005AB1C: /* 8005AB1C 0005677C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AB20 00056780 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AB24 00056784 80 63 01 04 */ lwz r3, 0x104(r3) /* 8005AB28 00056788 48 00 01 24 */ b lbl_8005AC4C lbl_8005AB2C: /* 8005AB2C 0005678C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AB30 00056790 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AB34 00056794 80 63 01 14 */ lwz r3, 0x114(r3) /* 8005AB38 00056798 48 00 01 14 */ b lbl_8005AC4C lbl_8005AB3C: /* 8005AB3C 0005679C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AB40 000567A0 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AB44 000567A4 80 63 01 24 */ lwz r3, 0x124(r3) /* 8005AB48 000567A8 48 00 01 04 */ b lbl_8005AC4C lbl_8005AB4C: /* 8005AB4C 000567AC 80 6D 98 FC */ lwz r3, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005AB50 000567B0 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005AB54 000567B4 2C 00 00 01 */ cmpwi r0, 1 /* 8005AB58 000567B8 41 82 00 24 */ beq lbl_8005AB7C /* 8005AB5C 000567BC 40 80 00 30 */ bge lbl_8005AB8C /* 8005AB60 000567C0 2C 00 00 00 */ cmpwi r0, 0 /* 8005AB64 000567C4 40 80 00 08 */ bge lbl_8005AB6C /* 8005AB68 000567C8 48 00 00 24 */ b lbl_8005AB8C lbl_8005AB6C: /* 8005AB6C 000567CC 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AB70 000567D0 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AB74 000567D4 80 63 01 08 */ lwz r3, 0x108(r3) /* 8005AB78 000567D8 48 00 00 D4 */ b lbl_8005AC4C lbl_8005AB7C: /* 8005AB7C 000567DC 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AB80 000567E0 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AB84 000567E4 80 63 01 18 */ lwz r3, 0x118(r3) /* 8005AB88 000567E8 48 00 00 C4 */ b lbl_8005AC4C lbl_8005AB8C: /* 8005AB8C 000567EC 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AB90 000567F0 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AB94 000567F4 80 63 01 28 */ lwz r3, 0x128(r3) /* 8005AB98 000567F8 48 00 00 B4 */ b lbl_8005AC4C lbl_8005AB9C: /* 8005AB9C 000567FC 80 6D 98 FC */ lwz r3, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005ABA0 00056800 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005ABA4 00056804 2C 00 00 01 */ cmpwi r0, 1 /* 8005ABA8 00056808 41 82 00 24 */ beq lbl_8005ABCC /* 8005ABAC 0005680C 40 80 00 30 */ bge lbl_8005ABDC /* 8005ABB0 00056810 2C 00 00 00 */ cmpwi r0, 0 /* 8005ABB4 00056814 40 80 00 08 */ bge lbl_8005ABBC /* 8005ABB8 00056818 48 00 00 24 */ b lbl_8005ABDC lbl_8005ABBC: /* 8005ABBC 0005681C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005ABC0 00056820 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005ABC4 00056824 80 63 01 0C */ lwz r3, 0x10c(r3) /* 8005ABC8 00056828 48 00 00 84 */ b lbl_8005AC4C lbl_8005ABCC: /* 8005ABCC 0005682C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005ABD0 00056830 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005ABD4 00056834 80 63 01 1C */ lwz r3, 0x11c(r3) /* 8005ABD8 00056838 48 00 00 74 */ b lbl_8005AC4C lbl_8005ABDC: /* 8005ABDC 0005683C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005ABE0 00056840 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005ABE4 00056844 80 63 01 2C */ lwz r3, 0x12c(r3) /* 8005ABE8 00056848 48 00 00 64 */ b lbl_8005AC4C lbl_8005ABEC: /* 8005ABEC 0005684C 80 6D 98 FC */ lwz r3, lbl_8063EBBC-_SDA_BASE_(r13) /* 8005ABF0 00056850 80 03 00 4C */ lwz r0, 0x4c(r3) /* 8005ABF4 00056854 2C 00 00 01 */ cmpwi r0, 1 /* 8005ABF8 00056858 41 82 00 24 */ beq lbl_8005AC1C /* 8005ABFC 0005685C 40 80 00 30 */ bge lbl_8005AC2C /* 8005AC00 00056860 2C 00 00 00 */ cmpwi r0, 0 /* 8005AC04 00056864 40 80 00 08 */ bge lbl_8005AC0C /* 8005AC08 00056868 48 00 00 24 */ b lbl_8005AC2C lbl_8005AC0C: /* 8005AC0C 0005686C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AC10 00056870 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AC14 00056874 80 63 01 10 */ lwz r3, 0x110(r3) /* 8005AC18 00056878 48 00 00 34 */ b lbl_8005AC4C lbl_8005AC1C: /* 8005AC1C 0005687C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AC20 00056880 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AC24 00056884 80 63 01 20 */ lwz r3, 0x120(r3) /* 8005AC28 00056888 48 00 00 24 */ b lbl_8005AC4C lbl_8005AC2C: /* 8005AC2C 0005688C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AC30 00056890 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AC34 00056894 80 63 01 30 */ lwz r3, 0x130(r3) /* 8005AC38 00056898 48 00 00 14 */ b lbl_8005AC4C lbl_8005AC3C: /* 8005AC3C 0005689C 3C 60 80 47 */ lis r3, lbl_80477968@ha /* 8005AC40 000568A0 57 E0 10 3A */ slwi r0, r31, 2 /* 8005AC44 000568A4 38 63 79 68 */ addi r3, r3, lbl_80477968@l /* 8005AC48 000568A8 7C 63 00 2E */ lwzx r3, r3, r0 lbl_8005AC4C: /* 8005AC4C 000568AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005AC50 000568B0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005AC54 000568B4 7C 08 03 A6 */ mtlr r0 /* 8005AC58 000568B8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005AC5C 000568BC 4E 80 00 20 */ blr .global func_8005AC60 func_8005AC60: /* 8005AC60 000568C0 48 18 08 5C */ b func_801DB4BC .global func_8005AC64 func_8005AC64: /* 8005AC64 000568C4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 8005AC68 000568C8 7C 08 02 A6 */ mflr r0 /* 8005AC6C 000568CC 90 01 00 84 */ stw r0, 0x84(r1) /* 8005AC70 000568D0 DB E1 00 70 */ stfd f31, 0x70(r1) /* 8005AC74 000568D4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 8005AC78 000568D8 2C 06 00 00 */ cmpwi r6, 0 /* 8005AC7C 000568DC 93 E1 00 6C */ stw r31, 0x6c(r1) /* 8005AC80 000568E0 7C FF 3B 78 */ mr r31, r7 /* 8005AC84 000568E4 93 C1 00 68 */ stw r30, 0x68(r1) /* 8005AC88 000568E8 7C DE 33 78 */ mr r30, r6 /* 8005AC8C 000568EC 93 A1 00 64 */ stw r29, 0x64(r1) /* 8005AC90 000568F0 7C 9D 23 78 */ mr r29, r4 /* 8005AC94 000568F4 93 81 00 60 */ stw r28, 0x60(r1) /* 8005AC98 000568F8 7C 7C 1B 78 */ mr r28, r3 /* 8005AC9C 000568FC 41 82 01 00 */ beq lbl_8005AD9C /* 8005ACA0 00056900 38 C1 00 28 */ addi r6, r1, 0x28 /* 8005ACA4 00056904 38 A0 00 06 */ li r5, 6 /* 8005ACA8 00056908 48 1F 92 35 */ bl func_80253EDC /* 8005ACAC 0005690C 3C 00 43 30 */ lis r0, 0x4330 /* 8005ACB0 00056910 93 C1 00 4C */ stw r30, 0x4c(r1) /* 8005ACB4 00056914 C8 62 85 D8 */ lfd f3, lbl_80640BD8-_SDA2_BASE_(r2) /* 8005ACB8 00056918 38 60 00 19 */ li r3, 0x19 /* 8005ACBC 0005691C 90 01 00 48 */ stw r0, 0x48(r1) /* 8005ACC0 00056920 C0 21 00 2C */ lfs f1, 0x2c(r1) /* 8005ACC4 00056924 C8 01 00 48 */ lfd f0, 0x48(r1) /* 8005ACC8 00056928 93 E1 00 54 */ stw r31, 0x54(r1) /* 8005ACCC 0005692C EC 80 18 28 */ fsubs f4, f0, f3 /* 8005ACD0 00056930 C0 01 00 28 */ lfs f0, 0x28(r1) /* 8005ACD4 00056934 90 01 00 50 */ stw r0, 0x50(r1) /* 8005ACD8 00056938 EC A1 00 28 */ fsubs f5, f1, f0 /* 8005ACDC 0005693C C0 5D 00 38 */ lfs f2, 0x38(r29) /* 8005ACE0 00056940 C8 01 00 50 */ lfd f0, 0x50(r1) /* 8005ACE4 00056944 C0 22 85 C8 */ lfs f1, lbl_80640BC8-_SDA2_BASE_(r2) /* 8005ACE8 00056948 EC 60 18 28 */ fsubs f3, f0, f3 /* 8005ACEC 0005694C C0 02 85 CC */ lfs f0, lbl_80640BCC-_SDA2_BASE_(r2) /* 8005ACF0 00056950 EF E4 18 24 */ fdivs f31, f4, f3 /* 8005ACF4 00056954 EC 65 07 F2 */ fmuls f3, f5, f31 /* 8005ACF8 00056958 EC 42 18 2A */ fadds f2, f2, f3 /* 8005ACFC 0005695C D0 5D 00 3C */ stfs f2, 0x3c(r29) /* 8005AD00 00056960 D0 5D 00 40 */ stfs f2, 0x40(r29) /* 8005AD04 00056964 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8005AD08 00056968 D0 21 00 08 */ stfs f1, 8(r1) /* 8005AD0C 0005696C D0 21 00 14 */ stfs f1, 0x14(r1) /* 8005AD10 00056970 D0 21 00 20 */ stfs f1, 0x20(r1) /* 8005AD14 00056974 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 8005AD18 00056978 D0 01 00 10 */ stfs f0, 0x10(r1) /* 8005AD1C 0005697C D0 01 00 24 */ stfs f0, 0x24(r1) /* 8005AD20 00056980 D0 01 00 18 */ stfs f0, 0x18(r1) /* 8005AD24 00056984 4B FF FC D5 */ bl func_8005A9F8 /* 8005AD28 00056988 7C 66 1B 78 */ mr r6, r3 /* 8005AD2C 0005698C 7F 83 E3 78 */ mr r3, r28 /* 8005AD30 00056990 7F A4 EB 78 */ mr r4, r29 /* 8005AD34 00056994 38 A0 00 02 */ li r5, 2 /* 8005AD38 00056998 48 1F 91 CD */ bl func_80253F04 /* 8005AD3C 0005699C 7F 83 E3 78 */ mr r3, r28 /* 8005AD40 000569A0 7F A4 EB 78 */ mr r4, r29 /* 8005AD44 000569A4 38 C1 00 08 */ addi r6, r1, 8 /* 8005AD48 000569A8 38 A0 00 01 */ li r5, 1 /* 8005AD4C 000569AC 48 1F 91 B9 */ bl func_80253F04 /* 8005AD50 000569B0 C0 02 85 D0 */ lfs f0, lbl_80640BD0-_SDA2_BASE_(r2) /* 8005AD54 000569B4 38 00 00 00 */ li r0, 0 /* 8005AD58 000569B8 38 60 00 FF */ li r3, 0xff /* 8005AD5C 000569BC 98 1D 00 0F */ stb r0, 0xf(r29) /* 8005AD60 000569C0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8005AD64 000569C4 98 7D 00 0E */ stb r3, 0xe(r29) /* 8005AD68 000569C8 98 1D 00 10 */ stb r0, 0x10(r29) /* 8005AD6C 000569CC 40 81 00 10 */ ble lbl_8005AD7C /* 8005AD70 000569D0 98 7D 00 0E */ stb r3, 0xe(r29) /* 8005AD74 000569D4 98 7D 00 0F */ stb r3, 0xf(r29) /* 8005AD78 000569D8 98 1D 00 10 */ stb r0, 0x10(r29) lbl_8005AD7C: /* 8005AD7C 000569DC C0 02 85 D4 */ lfs f0, lbl_80640BD4-_SDA2_BASE_(r2) /* 8005AD80 000569E0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 8005AD84 000569E4 40 81 00 18 */ ble lbl_8005AD9C /* 8005AD88 000569E8 38 60 00 00 */ li r3, 0 /* 8005AD8C 000569EC 38 00 00 FF */ li r0, 0xff /* 8005AD90 000569F0 98 7D 00 0E */ stb r3, 0xe(r29) /* 8005AD94 000569F4 98 1D 00 0F */ stb r0, 0xf(r29) /* 8005AD98 000569F8 98 7D 00 10 */ stb r3, 0x10(r29) lbl_8005AD9C: /* 8005AD9C 000569FC E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 8005ADA0 00056A00 80 01 00 84 */ lwz r0, 0x84(r1) /* 8005ADA4 00056A04 CB E1 00 70 */ lfd f31, 0x70(r1) /* 8005ADA8 00056A08 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 8005ADAC 00056A0C 83 C1 00 68 */ lwz r30, 0x68(r1) /* 8005ADB0 00056A10 83 A1 00 64 */ lwz r29, 0x64(r1) /* 8005ADB4 00056A14 83 81 00 60 */ lwz r28, 0x60(r1) /* 8005ADB8 00056A18 7C 08 03 A6 */ mtlr r0 /* 8005ADBC 00056A1C 38 21 00 80 */ addi r1, r1, 0x80 /* 8005ADC0 00056A20 4E 80 00 20 */ blr .global func_8005ADC4 func_8005ADC4: /* 8005ADC4 00056A24 70 60 0F 88 */ andi. r0, r3, 0xf88 /* 8005ADC8 00056A28 41 82 00 0C */ beq lbl_8005ADD4 /* 8005ADCC 00056A2C 38 60 00 04 */ li r3, 4 /* 8005ADD0 00056A30 4B FF FC 28 */ b func_8005A9F8 lbl_8005ADD4: /* 8005ADD4 00056A34 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19 /* 8005ADD8 00056A38 41 82 00 0C */ beq lbl_8005ADE4 /* 8005ADDC 00056A3C 38 60 00 03 */ li r3, 3 /* 8005ADE0 00056A40 4B FF FC 18 */ b func_8005A9F8 lbl_8005ADE4: /* 8005ADE4 00056A44 54 60 06 B5 */ rlwinm. r0, r3, 0, 0x1a, 0x1a /* 8005ADE8 00056A48 41 82 00 0C */ beq lbl_8005ADF4 /* 8005ADEC 00056A4C 38 60 00 02 */ li r3, 2 /* 8005ADF0 00056A50 4B FF FC 08 */ b func_8005A9F8 lbl_8005ADF4: /* 8005ADF4 00056A54 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 8005ADF8 00056A58 41 82 00 0C */ beq lbl_8005AE04 /* 8005ADFC 00056A5C 38 60 00 00 */ li r3, 0 /* 8005AE00 00056A60 4B FF FB F8 */ b func_8005A9F8 lbl_8005AE04: /* 8005AE04 00056A64 54 60 07 7F */ clrlwi. r0, r3, 0x1d /* 8005AE08 00056A68 41 82 00 0C */ beq lbl_8005AE14 /* 8005AE0C 00056A6C 38 60 00 05 */ li r3, 5 /* 8005AE10 00056A70 4B FF FB E8 */ b func_8005A9F8 lbl_8005AE14: /* 8005AE14 00056A74 38 60 00 00 */ li r3, 0 /* 8005AE18 00056A78 4E 80 00 20 */ blr .global func_8005AE1C func_8005AE1C: /* 8005AE1C 00056A7C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005AE20 00056A80 7C 08 02 A6 */ mflr r0 /* 8005AE24 00056A84 90 01 00 14 */ stw r0, 0x14(r1) /* 8005AE28 00056A88 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005AE2C 00056A8C 7C 7F 1B 78 */ mr r31, r3 /* 8005AE30 00056A90 4B FF BD A5 */ bl func_80056BD4 /* 8005AE34 00056A94 2C 03 00 00 */ cmpwi r3, 0 /* 8005AE38 00056A98 41 82 00 50 */ beq lbl_8005AE88 /* 8005AE3C 00056A9C 7F E3 FB 78 */ mr r3, r31 /* 8005AE40 00056AA0 38 80 00 03 */ li r4, 3 /* 8005AE44 00056AA4 38 A0 00 00 */ li r5, 0 /* 8005AE48 00056AA8 48 38 00 B5 */ bl func_803DAEFC /* 8005AE4C 00056AAC 2C 03 00 00 */ cmpwi r3, 0 /* 8005AE50 00056AB0 41 82 00 10 */ beq lbl_8005AE60 /* 8005AE54 00056AB4 38 60 00 2D */ li r3, 0x2d /* 8005AE58 00056AB8 4B FF FB A1 */ bl func_8005A9F8 /* 8005AE5C 00056ABC 48 00 00 30 */ b lbl_8005AE8C lbl_8005AE60: /* 8005AE60 00056AC0 7F E3 FB 78 */ mr r3, r31 /* 8005AE64 00056AC4 38 80 00 9A */ li r4, 0x9a /* 8005AE68 00056AC8 38 A0 00 00 */ li r5, 0 /* 8005AE6C 00056ACC 48 38 00 91 */ bl func_803DAEFC /* 8005AE70 00056AD0 3C 80 80 41 */ lis r4, lbl_8040B720@ha /* 8005AE74 00056AD4 54 60 10 3A */ slwi r0, r3, 2 /* 8005AE78 00056AD8 38 84 B7 20 */ addi r4, r4, lbl_8040B720@l /* 8005AE7C 00056ADC 7C 64 00 2E */ lwzx r3, r4, r0 /* 8005AE80 00056AE0 4B FF FB 79 */ bl func_8005A9F8 /* 8005AE84 00056AE4 48 00 00 08 */ b lbl_8005AE8C lbl_8005AE88: /* 8005AE88 00056AE8 38 60 00 00 */ li r3, 0 lbl_8005AE8C: /* 8005AE8C 00056AEC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005AE90 00056AF0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005AE94 00056AF4 7C 08 03 A6 */ mtlr r0 /* 8005AE98 00056AF8 38 21 00 10 */ addi r1, r1, 0x10 /* 8005AE9C 00056AFC 4E 80 00 20 */ blr .global func_8005AEA0 func_8005AEA0: /* 8005AEA0 00056B00 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8005AEA4 00056B04 7C 08 02 A6 */ mflr r0 /* 8005AEA8 00056B08 2C 07 00 00 */ cmpwi r7, 0 /* 8005AEAC 00056B0C 90 01 00 44 */ stw r0, 0x44(r1) /* 8005AEB0 00056B10 3C 00 43 30 */ lis r0, 0x4330 /* 8005AEB4 00056B14 C0 64 00 00 */ lfs f3, 0(r4) /* 8005AEB8 00056B18 C0 24 00 04 */ lfs f1, 4(r4) /* 8005AEBC 00056B1C C0 84 00 10 */ lfs f4, 0x10(r4) /* 8005AEC0 00056B20 C0 04 00 18 */ lfs f0, 0x18(r4) /* 8005AEC4 00056B24 EC A1 18 28 */ fsubs f5, f1, f3 /* 8005AEC8 00056B28 90 01 00 28 */ stw r0, 0x28(r1) /* 8005AECC 00056B2C EC C0 20 28 */ fsubs f6, f0, f4 /* 8005AED0 00056B30 90 01 00 30 */ stw r0, 0x30(r1) /* 8005AED4 00056B34 41 82 00 30 */ beq lbl_8005AF04 /* 8005AED8 00056B38 90 A1 00 2C */ stw r5, 0x2c(r1) /* 8005AEDC 00056B3C C8 42 85 D8 */ lfd f2, lbl_80640BD8-_SDA2_BASE_(r2) /* 8005AEE0 00056B40 C8 01 00 28 */ lfd f0, 0x28(r1) /* 8005AEE4 00056B44 90 C1 00 34 */ stw r6, 0x34(r1) /* 8005AEE8 00056B48 EC 20 10 28 */ fsubs f1, f0, f2 /* 8005AEEC 00056B4C C8 01 00 30 */ lfd f0, 0x30(r1) /* 8005AEF0 00056B50 EC A5 08 24 */ fdivs f5, f5, f1 /* 8005AEF4 00056B54 EC 00 10 28 */ fsubs f0, f0, f2 /* 8005AEF8 00056B58 EC 05 00 32 */ fmuls f0, f5, f0 /* 8005AEFC 00056B5C EC 63 00 2A */ fadds f3, f3, f0 /* 8005AF00 00056B60 48 00 00 2C */ b lbl_8005AF2C lbl_8005AF04: /* 8005AF04 00056B64 90 A1 00 2C */ stw r5, 0x2c(r1) /* 8005AF08 00056B68 C8 42 85 D8 */ lfd f2, lbl_80640BD8-_SDA2_BASE_(r2) /* 8005AF0C 00056B6C C8 01 00 28 */ lfd f0, 0x28(r1) /* 8005AF10 00056B70 90 C1 00 34 */ stw r6, 0x34(r1) /* 8005AF14 00056B74 EC 20 10 28 */ fsubs f1, f0, f2 /* 8005AF18 00056B78 C8 01 00 30 */ lfd f0, 0x30(r1) /* 8005AF1C 00056B7C EC C6 08 24 */ fdivs f6, f6, f1 /* 8005AF20 00056B80 EC 00 10 28 */ fsubs f0, f0, f2 /* 8005AF24 00056B84 EC 06 00 32 */ fmuls f0, f6, f0 /* 8005AF28 00056B88 EC 84 00 2A */ fadds f4, f4, f0 lbl_8005AF2C: /* 8005AF2C 00056B8C EC 23 28 2A */ fadds f1, f3, f5 /* 8005AF30 00056B90 38 A0 FF 00 */ li r5, -256 /* 8005AF34 00056B94 EC 04 30 2A */ fadds f0, f4, f6 /* 8005AF38 00056B98 D0 61 00 14 */ stfs f3, 0x14(r1) /* 8005AF3C 00056B9C 38 81 00 08 */ addi r4, r1, 8 /* 8005AF40 00056BA0 51 05 06 3E */ rlwimi r5, r8, 0, 0x18, 0x1f /* 8005AF44 00056BA4 D0 61 00 08 */ stfs f3, 8(r1) /* 8005AF48 00056BA8 38 C0 00 00 */ li r6, 0 /* 8005AF4C 00056BAC D0 21 00 10 */ stfs f1, 0x10(r1) /* 8005AF50 00056BB0 D0 21 00 0C */ stfs f1, 0xc(r1) /* 8005AF54 00056BB4 D0 81 00 1C */ stfs f4, 0x1c(r1) /* 8005AF58 00056BB8 D0 81 00 18 */ stfs f4, 0x18(r1) /* 8005AF5C 00056BBC D0 01 00 24 */ stfs f0, 0x24(r1) /* 8005AF60 00056BC0 D0 01 00 20 */ stfs f0, 0x20(r1) /* 8005AF64 00056BC4 48 00 00 15 */ bl func_8005AF78 /* 8005AF68 00056BC8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8005AF6C 00056BCC 7C 08 03 A6 */ mtlr r0 /* 8005AF70 00056BD0 38 21 00 40 */ addi r1, r1, 0x40 /* 8005AF74 00056BD4 4E 80 00 20 */ blr .global func_8005AF78 func_8005AF78: /* 8005AF78 00056BD8 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8005AF7C 00056BDC 7C 08 02 A6 */ mflr r0 /* 8005AF80 00056BE0 2C 03 00 00 */ cmpwi r3, 0 /* 8005AF84 00056BE4 90 01 00 44 */ stw r0, 0x44(r1) /* 8005AF88 00056BE8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8005AF8C 00056BEC 93 C1 00 38 */ stw r30, 0x38(r1) /* 8005AF90 00056BF0 7C 9E 23 78 */ mr r30, r4 /* 8005AF94 00056BF4 41 82 02 E8 */ beq lbl_8005B27C /* 8005AF98 00056BF8 2C 06 00 00 */ cmpwi r6, 0 /* 8005AF9C 00056BFC 40 82 00 30 */ bne lbl_8005AFCC /* 8005AFA0 00056C00 C0 22 85 C8 */ lfs f1, lbl_80640BC8-_SDA2_BASE_(r2) /* 8005AFA4 00056C04 C0 02 85 CC */ lfs f0, lbl_80640BCC-_SDA2_BASE_(r2) /* 8005AFA8 00056C08 D0 21 00 28 */ stfs f1, 0x28(r1) /* 8005AFAC 00056C0C D0 21 00 10 */ stfs f1, 0x10(r1) /* 8005AFB0 00056C10 D0 01 00 20 */ stfs f0, 0x20(r1) /* 8005AFB4 00056C14 D0 01 00 18 */ stfs f0, 0x18(r1) /* 8005AFB8 00056C18 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 8005AFBC 00056C1C D0 21 00 14 */ stfs f1, 0x14(r1) /* 8005AFC0 00056C20 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 8005AFC4 00056C24 D0 01 00 24 */ stfs f0, 0x24(r1) /* 8005AFC8 00056C28 48 00 00 44 */ b lbl_8005B00C lbl_8005AFCC: /* 8005AFCC 00056C2C C0 E6 00 00 */ lfs f7, 0(r6) /* 8005AFD0 00056C30 C0 C6 00 08 */ lfs f6, 8(r6) /* 8005AFD4 00056C34 C0 A6 00 10 */ lfs f5, 0x10(r6) /* 8005AFD8 00056C38 C0 86 00 18 */ lfs f4, 0x18(r6) /* 8005AFDC 00056C3C C0 66 00 04 */ lfs f3, 4(r6) /* 8005AFE0 00056C40 C0 46 00 0C */ lfs f2, 0xc(r6) /* 8005AFE4 00056C44 C0 26 00 14 */ lfs f1, 0x14(r6) /* 8005AFE8 00056C48 C0 06 00 1C */ lfs f0, 0x1c(r6) /* 8005AFEC 00056C4C D0 E1 00 10 */ stfs f7, 0x10(r1) /* 8005AFF0 00056C50 D0 C1 00 18 */ stfs f6, 0x18(r1) /* 8005AFF4 00056C54 D0 A1 00 20 */ stfs f5, 0x20(r1) /* 8005AFF8 00056C58 D0 81 00 28 */ stfs f4, 0x28(r1) /* 8005AFFC 00056C5C D0 61 00 14 */ stfs f3, 0x14(r1) /* 8005B000 00056C60 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 8005B004 00056C64 D0 21 00 24 */ stfs f1, 0x24(r1) /* 8005B008 00056C68 D0 01 00 2C */ stfs f0, 0x2c(r1) lbl_8005B00C: /* 8005B00C 00056C6C 81 0D A3 D8 */ lwz r8, lbl_8063F698-_SDA_BASE_(r13) /* 8005B010 00056C70 54 A0 46 3E */ srwi r0, r5, 0x18 /* 8005B014 00056C74 54 A7 86 3E */ rlwinm r7, r5, 0x10, 0x18, 0x1f /* 8005B018 00056C78 54 A6 C6 3E */ rlwinm r6, r5, 0x18, 0x18, 0x1f /* 8005B01C 00056C7C 80 88 16 38 */ lwz r4, 0x1638(r8) /* 8005B020 00056C80 98 01 00 08 */ stb r0, 8(r1) /* 8005B024 00056C84 80 04 15 3C */ lwz r0, 0x153c(r4) /* 8005B028 00056C88 98 E1 00 09 */ stb r7, 9(r1) /* 8005B02C 00056C8C 7C 00 18 40 */ cmplw r0, r3 /* 8005B030 00056C90 98 C1 00 0A */ stb r6, 0xa(r1) /* 8005B034 00056C94 98 A1 00 0B */ stb r5, 0xb(r1) /* 8005B038 00056C98 40 82 00 14 */ bne lbl_8005B04C /* 8005B03C 00056C9C 88 03 00 07 */ lbz r0, 7(r3) /* 8005B040 00056CA0 54 00 07 FE */ clrlwi r0, r0, 0x1f /* 8005B044 00056CA4 2C 00 00 01 */ cmpwi r0, 1 /* 8005B048 00056CA8 40 82 00 1C */ bne lbl_8005B064 lbl_8005B04C: /* 8005B04C 00056CAC 80 88 16 38 */ lwz r4, 0x1638(r8) /* 8005B050 00056CB0 90 64 15 3C */ stw r3, 0x153c(r4) /* 8005B054 00056CB4 80 68 16 38 */ lwz r3, 0x1638(r8) /* 8005B058 00056CB8 80 03 15 38 */ lwz r0, 0x1538(r3) /* 8005B05C 00056CBC 60 00 00 01 */ ori r0, r0, 1 /* 8005B060 00056CC0 90 03 15 38 */ stw r0, 0x1538(r3) lbl_8005B064: /* 8005B064 00056CC4 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 8005B068 00056CC8 38 A0 00 02 */ li r5, 2 /* 8005B06C 00056CCC 3B E0 00 01 */ li r31, 1 /* 8005B070 00056CD0 38 80 00 04 */ li r4, 4 /* 8005B074 00056CD4 80 66 16 38 */ lwz r3, 0x1638(r6) /* 8005B078 00056CD8 38 00 00 05 */ li r0, 5 /* 8005B07C 00056CDC 90 A3 01 84 */ stw r5, 0x184(r3) /* 8005B080 00056CE0 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 8005B084 00056CE4 80 65 00 10 */ lwz r3, 0x10(r5) /* 8005B088 00056CE8 60 63 00 02 */ ori r3, r3, 2 /* 8005B08C 00056CEC 90 65 00 10 */ stw r3, 0x10(r5) /* 8005B090 00056CF0 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 8005B094 00056CF4 80 65 00 00 */ lwz r3, 0(r5) /* 8005B098 00056CF8 60 63 00 02 */ ori r3, r3, 2 /* 8005B09C 00056CFC 90 65 00 00 */ stw r3, 0(r5) /* 8005B0A0 00056D00 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13) /* 8005B0A4 00056D04 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005B0A8 00056D08 93 E3 0A 24 */ stw r31, 0xa24(r3) /* 8005B0AC 00056D0C 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005B0B0 00056D10 90 83 0A 28 */ stw r4, 0xa28(r3) /* 8005B0B4 00056D14 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005B0B8 00056D18 90 03 0A 2C */ stw r0, 0xa2c(r3) /* 8005B0BC 00056D1C 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005B0C0 00056D20 90 03 0A 30 */ stw r0, 0xa30(r3) /* 8005B0C4 00056D24 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005B0C8 00056D28 80 03 00 64 */ lwz r0, 0x64(r3) /* 8005B0CC 00056D2C 60 00 00 01 */ ori r0, r0, 1 /* 8005B0D0 00056D30 90 03 00 64 */ stw r0, 0x64(r3) /* 8005B0D4 00056D34 80 65 16 38 */ lwz r3, 0x1638(r5) /* 8005B0D8 00056D38 80 03 00 00 */ lwz r0, 0(r3) /* 8005B0DC 00056D3C 60 00 00 40 */ ori r0, r0, 0x40 /* 8005B0E0 00056D40 90 03 00 00 */ stw r0, 0(r3) /* 8005B0E4 00056D44 80 8D 81 F0 */ lwz r4, lbl_8063D4B0-_SDA_BASE_(r13) /* 8005B0E8 00056D48 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005B0EC 00056D4C 80 84 00 00 */ lwz r4, 0(r4) /* 8005B0F0 00056D50 48 1D CF CD */ bl func_802380BC /* 8005B0F4 00056D54 81 2D A3 D8 */ lwz r9, lbl_8063F698-_SDA_BASE_(r13) /* 8005B0F8 00056D58 39 00 00 00 */ li r8, 0 /* 8005B0FC 00056D5C 38 C0 00 07 */ li r6, 7 /* 8005B100 00056D60 38 A0 00 03 */ li r5, 3 /* 8005B104 00056D64 80 69 16 38 */ lwz r3, 0x1638(r9) /* 8005B108 00056D68 38 00 00 80 */ li r0, 0x80 /* 8005B10C 00056D6C 38 80 00 04 */ li r4, 4 /* 8005B110 00056D70 9B E3 0A 36 */ stb r31, 0xa36(r3) /* 8005B114 00056D74 80 69 16 38 */ lwz r3, 0x1638(r9) /* 8005B118 00056D78 9B E3 0A 37 */ stb r31, 0xa37(r3) /* 8005B11C 00056D7C 80 69 16 38 */ lwz r3, 0x1638(r9) /* 8005B120 00056D80 99 03 0A 38 */ stb r8, 0xa38(r3) /* 8005B124 00056D84 80 E9 16 38 */ lwz r7, 0x1638(r9) /* 8005B128 00056D88 80 67 00 64 */ lwz r3, 0x64(r7) /* 8005B12C 00056D8C 60 63 00 04 */ ori r3, r3, 4 /* 8005B130 00056D90 90 67 00 64 */ stw r3, 0x64(r7) /* 8005B134 00056D94 80 E9 16 38 */ lwz r7, 0x1638(r9) /* 8005B138 00056D98 80 67 00 00 */ lwz r3, 0(r7) /* 8005B13C 00056D9C 60 63 00 40 */ ori r3, r3, 0x40 /* 8005B140 00056DA0 90 67 00 00 */ stw r3, 0(r7) /* 8005B144 00056DA4 80 ED A3 D8 */ lwz r7, lbl_8063F698-_SDA_BASE_(r13) /* 8005B148 00056DA8 80 67 16 38 */ lwz r3, 0x1638(r7) /* 8005B14C 00056DAC 90 C3 0A 44 */ stw r6, 0xa44(r3) /* 8005B150 00056DB0 80 67 16 38 */ lwz r3, 0x1638(r7) /* 8005B154 00056DB4 99 03 0A 50 */ stb r8, 0xa50(r3) /* 8005B158 00056DB8 80 67 16 38 */ lwz r3, 0x1638(r7) /* 8005B15C 00056DBC 91 03 0A 48 */ stw r8, 0xa48(r3) /* 8005B160 00056DC0 80 67 16 38 */ lwz r3, 0x1638(r7) /* 8005B164 00056DC4 90 C3 0A 4C */ stw r6, 0xa4c(r3) /* 8005B168 00056DC8 80 67 16 38 */ lwz r3, 0x1638(r7) /* 8005B16C 00056DCC 99 03 0A 51 */ stb r8, 0xa51(r3) /* 8005B170 00056DD0 80 67 16 38 */ lwz r3, 0x1638(r7) /* 8005B174 00056DD4 99 03 0A 52 */ stb r8, 0xa52(r3) /* 8005B178 00056DD8 80 C7 16 38 */ lwz r6, 0x1638(r7) /* 8005B17C 00056DDC 80 66 00 64 */ lwz r3, 0x64(r6) /* 8005B180 00056DE0 60 63 00 10 */ ori r3, r3, 0x10 /* 8005B184 00056DE4 90 66 00 64 */ stw r3, 0x64(r6) /* 8005B188 00056DE8 80 C7 16 38 */ lwz r6, 0x1638(r7) /* 8005B18C 00056DEC 80 66 00 00 */ lwz r3, 0(r6) /* 8005B190 00056DF0 60 63 00 40 */ ori r3, r3, 0x40 /* 8005B194 00056DF4 90 66 00 00 */ stw r3, 0(r6) /* 8005B198 00056DF8 80 CD A3 D8 */ lwz r6, lbl_8063F698-_SDA_BASE_(r13) /* 8005B19C 00056DFC 80 66 16 38 */ lwz r3, 0x1638(r6) /* 8005B1A0 00056E00 99 03 0A 3C */ stb r8, 0xa3c(r3) /* 8005B1A4 00056E04 80 66 16 38 */ lwz r3, 0x1638(r6) /* 8005B1A8 00056E08 90 A3 0A 40 */ stw r5, 0xa40(r3) /* 8005B1AC 00056E0C 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 8005B1B0 00056E10 80 65 00 64 */ lwz r3, 0x64(r5) /* 8005B1B4 00056E14 60 63 00 08 */ ori r3, r3, 8 /* 8005B1B8 00056E18 90 65 00 64 */ stw r3, 0x64(r5) /* 8005B1BC 00056E1C 80 A6 16 38 */ lwz r5, 0x1638(r6) /* 8005B1C0 00056E20 80 65 00 00 */ lwz r3, 0(r5) /* 8005B1C4 00056E24 60 63 00 40 */ ori r3, r3, 0x40 /* 8005B1C8 00056E28 90 65 00 00 */ stw r3, 0(r5) /* 8005B1CC 00056E2C 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005B1D0 00056E30 90 03 17 38 */ stw r0, 0x1738(r3) /* 8005B1D4 00056E34 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005B1D8 00056E38 48 1D 83 55 */ bl func_8023352C /* 8005B1DC 00056E3C C0 3E 00 10 */ lfs f1, 0x10(r30) /* 8005B1E0 00056E40 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 8005B1E4 00056E44 C0 1E 00 00 */ lfs f0, 0(r30) /* 8005B1E8 00056E48 80 01 00 08 */ lwz r0, 8(r1) /* 8005B1EC 00056E4C D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) /* 8005B1F0 00056E50 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8005B1F4 00056E54 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 8005B1F8 00056E58 C0 21 00 14 */ lfs f1, 0x14(r1) /* 8005B1FC 00056E5C 90 03 80 00 */ stw r0, -0x8000(r3) /* 8005B200 00056E60 C0 41 00 18 */ lfs f2, 0x18(r1) /* 8005B204 00056E64 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 8005B208 00056E68 C0 61 00 1C */ lfs f3, 0x1c(r1) /* 8005B20C 00056E6C D0 23 80 00 */ stfs f1, -0x8000(r3) /* 8005B210 00056E70 C0 81 00 20 */ lfs f4, 0x20(r1) /* 8005B214 00056E74 C0 3E 00 14 */ lfs f1, 0x14(r30) /* 8005B218 00056E78 C0 1E 00 04 */ lfs f0, 4(r30) /* 8005B21C 00056E7C C0 A1 00 24 */ lfs f5, 0x24(r1) /* 8005B220 00056E80 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 8005B224 00056E84 C0 C1 00 28 */ lfs f6, 0x28(r1) /* 8005B228 00056E88 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 8005B22C 00056E8C C0 E1 00 2C */ lfs f7, 0x2c(r1) /* 8005B230 00056E90 90 03 80 00 */ stw r0, -0x8000(r3) /* 8005B234 00056E94 D0 43 80 00 */ stfs f2, -0x8000(r3) /* 8005B238 00056E98 D0 63 80 00 */ stfs f3, -0x8000(r3) /* 8005B23C 00056E9C C0 3E 00 18 */ lfs f1, 0x18(r30) /* 8005B240 00056EA0 C0 1E 00 08 */ lfs f0, 8(r30) /* 8005B244 00056EA4 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 8005B248 00056EA8 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 8005B24C 00056EAC 90 03 80 00 */ stw r0, -0x8000(r3) /* 8005B250 00056EB0 D0 83 80 00 */ stfs f4, -0x8000(r3) /* 8005B254 00056EB4 D0 A3 80 00 */ stfs f5, -0x8000(r3) /* 8005B258 00056EB8 C0 3E 00 1C */ lfs f1, 0x1c(r30) /* 8005B25C 00056EBC C0 1E 00 0C */ lfs f0, 0xc(r30) /* 8005B260 00056EC0 D0 03 80 00 */ stfs f0, -0x8000(r3) /* 8005B264 00056EC4 D0 23 80 00 */ stfs f1, -0x8000(r3) /* 8005B268 00056EC8 90 03 80 00 */ stw r0, -0x8000(r3) /* 8005B26C 00056ECC D0 C3 80 00 */ stfs f6, -0x8000(r3) /* 8005B270 00056ED0 D0 E3 80 00 */ stfs f7, -0x8000(r3) /* 8005B274 00056ED4 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005B278 00056ED8 48 1D 83 09 */ bl func_80233580 lbl_8005B27C: /* 8005B27C 00056EDC 80 01 00 44 */ lwz r0, 0x44(r1) /* 8005B280 00056EE0 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8005B284 00056EE4 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8005B288 00056EE8 7C 08 03 A6 */ mtlr r0 /* 8005B28C 00056EEC 38 21 00 40 */ addi r1, r1, 0x40 /* 8005B290 00056EF0 4E 80 00 20 */ blr .global func_8005B294 func_8005B294: /* 8005B294 00056EF4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005B298 00056EF8 7C 08 02 A6 */ mflr r0 /* 8005B29C 00056EFC 90 01 00 24 */ stw r0, 0x24(r1) /* 8005B2A0 00056F00 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8005B2A4 00056F04 7C BF 2B 78 */ mr r31, r5 /* 8005B2A8 00056F08 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005B2AC 00056F0C 7C 9E 23 78 */ mr r30, r4 /* 8005B2B0 00056F10 93 A1 00 14 */ stw r29, 0x14(r1) /* 8005B2B4 00056F14 7C 7D 1B 78 */ mr r29, r3 /* 8005B2B8 00056F18 7F E3 FB 78 */ mr r3, r31 /* 8005B2BC 00056F1C 4B FF B9 19 */ bl func_80056BD4 /* 8005B2C0 00056F20 2C 03 00 00 */ cmpwi r3, 0 /* 8005B2C4 00056F24 41 82 00 48 */ beq lbl_8005B30C /* 8005B2C8 00056F28 7F E3 FB 78 */ mr r3, r31 /* 8005B2CC 00056F2C 38 80 00 06 */ li r4, 6 /* 8005B2D0 00056F30 38 A0 00 00 */ li r5, 0 /* 8005B2D4 00056F34 48 37 FC 29 */ bl func_803DAEFC /* 8005B2D8 00056F38 2C 03 00 00 */ cmpwi r3, 0 /* 8005B2DC 00056F3C 41 82 00 30 */ beq lbl_8005B30C /* 8005B2E0 00056F40 7F E3 FB 78 */ mr r3, r31 /* 8005B2E4 00056F44 4B FF BB 49 */ bl func_80056E2C /* 8005B2E8 00056F48 2C 03 00 00 */ cmpwi r3, 0 /* 8005B2EC 00056F4C 40 82 00 20 */ bne lbl_8005B30C /* 8005B2F0 00056F50 38 60 00 18 */ li r3, 0x18 /* 8005B2F4 00056F54 4B FF F7 05 */ bl func_8005A9F8 /* 8005B2F8 00056F58 7C 66 1B 78 */ mr r6, r3 /* 8005B2FC 00056F5C 7F A3 EB 78 */ mr r3, r29 /* 8005B300 00056F60 7F C4 F3 78 */ mr r4, r30 /* 8005B304 00056F64 38 A0 00 01 */ li r5, 1 /* 8005B308 00056F68 48 1F 8B AD */ bl func_80253EB4 lbl_8005B30C: /* 8005B30C 00056F6C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005B310 00056F70 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005B314 00056F74 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005B318 00056F78 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8005B31C 00056F7C 7C 08 03 A6 */ mtlr r0 /* 8005B320 00056F80 38 21 00 20 */ addi r1, r1, 0x20 /* 8005B324 00056F84 4E 80 00 20 */ blr .global func_8005B328 func_8005B328: /* 8005B328 00056F88 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8005B32C 00056F8C 7C 08 02 A6 */ mflr r0 /* 8005B330 00056F90 90 01 00 44 */ stw r0, 0x44(r1) /* 8005B334 00056F94 93 E1 00 3C */ stw r31, 0x3c(r1) /* 8005B338 00056F98 7C DF 33 78 */ mr r31, r6 /* 8005B33C 00056F9C 93 C1 00 38 */ stw r30, 0x38(r1) /* 8005B340 00056FA0 7C BE 2B 78 */ mr r30, r5 /* 8005B344 00056FA4 93 A1 00 34 */ stw r29, 0x34(r1) /* 8005B348 00056FA8 7C 9D 23 78 */ mr r29, r4 /* 8005B34C 00056FAC 93 81 00 30 */ stw r28, 0x30(r1) /* 8005B350 00056FB0 7C 7C 1B 78 */ mr r28, r3 /* 8005B354 00056FB4 7F C3 F3 78 */ mr r3, r30 /* 8005B358 00056FB8 4B FF B8 7D */ bl func_80056BD4 /* 8005B35C 00056FBC 2C 03 00 00 */ cmpwi r3, 0 /* 8005B360 00056FC0 41 82 00 3C */ beq lbl_8005B39C /* 8005B364 00056FC4 7F C3 F3 78 */ mr r3, r30 /* 8005B368 00056FC8 7F E4 FB 78 */ mr r4, r31 /* 8005B36C 00056FCC 38 A1 00 08 */ addi r5, r1, 8 /* 8005B370 00056FD0 48 00 17 B5 */ bl func_8005CB24 /* 8005B374 00056FD4 7C 66 1B 78 */ mr r6, r3 /* 8005B378 00056FD8 7F 83 E3 78 */ mr r3, r28 /* 8005B37C 00056FDC 7F A4 EB 78 */ mr r4, r29 /* 8005B380 00056FE0 38 A0 00 02 */ li r5, 2 /* 8005B384 00056FE4 48 1F 8B 81 */ bl func_80253F04 /* 8005B388 00056FE8 7F 83 E3 78 */ mr r3, r28 /* 8005B38C 00056FEC 7F A4 EB 78 */ mr r4, r29 /* 8005B390 00056FF0 38 C1 00 08 */ addi r6, r1, 8 /* 8005B394 00056FF4 38 A0 00 01 */ li r5, 1 /* 8005B398 00056FF8 48 1F 8B 6D */ bl func_80253F04 lbl_8005B39C: /* 8005B39C 00056FFC 80 01 00 44 */ lwz r0, 0x44(r1) /* 8005B3A0 00057000 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 8005B3A4 00057004 83 C1 00 38 */ lwz r30, 0x38(r1) /* 8005B3A8 00057008 83 A1 00 34 */ lwz r29, 0x34(r1) /* 8005B3AC 0005700C 83 81 00 30 */ lwz r28, 0x30(r1) /* 8005B3B0 00057010 7C 08 03 A6 */ mtlr r0 /* 8005B3B4 00057014 38 21 00 40 */ addi r1, r1, 0x40 /* 8005B3B8 00057018 4E 80 00 20 */ blr .global func_8005B3BC func_8005B3BC: /* 8005B3BC 0005701C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005B3C0 00057020 7C 08 02 A6 */ mflr r0 /* 8005B3C4 00057024 90 01 00 24 */ stw r0, 0x24(r1) /* 8005B3C8 00057028 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8005B3CC 0005702C 7C BF 2B 78 */ mr r31, r5 /* 8005B3D0 00057030 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005B3D4 00057034 7C 9E 23 78 */ mr r30, r4 /* 8005B3D8 00057038 93 A1 00 14 */ stw r29, 0x14(r1) /* 8005B3DC 0005703C 7C 7D 1B 78 */ mr r29, r3 /* 8005B3E0 00057040 7F E3 FB 78 */ mr r3, r31 /* 8005B3E4 00057044 4B FF B8 69 */ bl func_80056C4C /* 8005B3E8 00057048 2C 03 00 00 */ cmpwi r3, 0 /* 8005B3EC 0005704C 41 82 00 7C */ beq lbl_8005B468 /* 8005B3F0 00057050 7F E3 FB 78 */ mr r3, r31 /* 8005B3F4 00057054 38 80 00 A2 */ li r4, 0xa2 /* 8005B3F8 00057058 38 A0 00 00 */ li r5, 0 /* 8005B3FC 0005705C 48 38 25 E1 */ bl func_803DD9DC /* 8005B400 00057060 2C 03 00 00 */ cmpwi r3, 0 /* 8005B404 00057064 40 82 00 24 */ bne lbl_8005B428 /* 8005B408 00057068 38 60 00 01 */ li r3, 1 /* 8005B40C 0005706C 4B FF F5 ED */ bl func_8005A9F8 /* 8005B410 00057070 7C 66 1B 78 */ mr r6, r3 /* 8005B414 00057074 7F A3 EB 78 */ mr r3, r29 /* 8005B418 00057078 7F C4 F3 78 */ mr r4, r30 /* 8005B41C 0005707C 38 A0 00 01 */ li r5, 1 /* 8005B420 00057080 48 1F 8A 95 */ bl func_80253EB4 /* 8005B424 00057084 48 00 00 44 */ b lbl_8005B468 lbl_8005B428: /* 8005B428 00057088 7F E3 FB 78 */ mr r3, r31 /* 8005B42C 0005708C 38 80 00 9F */ li r4, 0x9f /* 8005B430 00057090 38 A0 00 00 */ li r5, 0 /* 8005B434 00057094 48 38 25 A9 */ bl func_803DD9DC /* 8005B438 00057098 2C 03 00 00 */ cmpwi r3, 0 /* 8005B43C 0005709C 41 82 00 2C */ beq lbl_8005B468 /* 8005B440 000570A0 7F E3 FB 78 */ mr r3, r31 /* 8005B444 000570A4 38 80 00 9F */ li r4, 0x9f /* 8005B448 000570A8 38 A0 00 00 */ li r5, 0 /* 8005B44C 000570AC 48 38 25 91 */ bl func_803DD9DC /* 8005B450 000570B0 4B FF F9 75 */ bl func_8005ADC4 /* 8005B454 000570B4 7C 66 1B 78 */ mr r6, r3 /* 8005B458 000570B8 7F A3 EB 78 */ mr r3, r29 /* 8005B45C 000570BC 7F C4 F3 78 */ mr r4, r30 /* 8005B460 000570C0 38 A0 00 01 */ li r5, 1 /* 8005B464 000570C4 48 1F 8A 51 */ bl func_80253EB4 lbl_8005B468: /* 8005B468 000570C8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005B46C 000570CC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005B470 000570D0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005B474 000570D4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8005B478 000570D8 7C 08 03 A6 */ mtlr r0 /* 8005B47C 000570DC 38 21 00 20 */ addi r1, r1, 0x20 /* 8005B480 000570E0 4E 80 00 20 */ blr .global func_8005B484 func_8005B484: /* 8005B484 000570E4 38 A0 00 01 */ li r5, 1 /* 8005B488 000570E8 38 6D 98 F0 */ addi r3, r13, lbl_8063EBB0-_SDA_BASE_ /* 8005B48C 000570EC 38 80 00 04 */ li r4, 4 /* 8005B490 000570F0 38 00 00 00 */ li r0, 0 /* 8005B494 000570F4 98 AD 98 F0 */ stb r5, lbl_8063EBB0-_SDA_BASE_(r13) /* 8005B498 000570F8 B0 83 00 02 */ sth r4, 2(r3) /* 8005B49C 000570FC 98 03 00 04 */ stb r0, 4(r3) /* 8005B4A0 00057100 4E 80 00 20 */ blr lbl_8005B4A4: /* 8005B4A4 00057104 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005B4A8 00057108 7C 08 02 A6 */ mflr r0 /* 8005B4AC 0005710C 90 01 00 24 */ stw r0, 0x24(r1) /* 8005B4B0 00057110 39 61 00 20 */ addi r11, r1, 0x20 /* 8005B4B4 00057114 48 16 BC 75 */ bl _savegpr_27 /* 8005B4B8 00057118 80 03 00 24 */ lwz r0, 0x24(r3) /* 8005B4BC 0005711C 7C 7B 1B 78 */ mr r27, r3 /* 8005B4C0 00057120 90 83 00 28 */ stw r4, 0x28(r3) /* 8005B4C4 00057124 7C 9C 23 78 */ mr r28, r4 /* 8005B4C8 00057128 2C 00 00 00 */ cmpwi r0, 0 /* 8005B4CC 0005712C 40 82 00 1C */ bne lbl_8005B4E8 /* 8005B4D0 00057130 1C 84 00 28 */ mulli r4, r4, 0x28 /* 8005B4D4 00057134 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8005B4D8 00057138 38 04 00 1F */ addi r0, r4, 0x1f /* 8005B4DC 0005713C 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8005B4E0 00057140 48 17 F7 B5 */ bl func_801DAC94 /* 8005B4E4 00057144 90 7B 00 24 */ stw r3, 0x24(r27) lbl_8005B4E8: /* 8005B4E8 00057148 1C BC 00 28 */ mulli r5, r28, 0x28 /* 8005B4EC 0005714C 80 7B 00 24 */ lwz r3, 0x24(r27) /* 8005B4F0 00057150 38 80 00 00 */ li r4, 0 /* 8005B4F4 00057154 4B FA 8C 11 */ bl memset /* 8005B4F8 00057158 1C 9C 26 80 */ mulli r4, r28, 0x2680 /* 8005B4FC 0005715C 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8005B500 00057160 38 A0 00 20 */ li r5, 0x20 /* 8005B504 00057164 48 17 F8 05 */ bl func_801DAD08 /* 8005B508 00057168 7C 7D 1B 78 */ mr r29, r3 /* 8005B50C 0005716C 3B C0 00 00 */ li r30, 0 /* 8005B510 00057170 3B E0 00 00 */ li r31, 0 /* 8005B514 00057174 48 00 00 40 */ b lbl_8005B554 lbl_8005B518: /* 8005B518 00057178 80 1B 00 24 */ lwz r0, 0x24(r27) /* 8005B51C 0005717C 7C 60 FA 14 */ add r3, r0, r31 /* 8005B520 00057180 80 03 00 08 */ lwz r0, 8(r3) /* 8005B524 00057184 2C 00 00 00 */ cmpwi r0, 0 /* 8005B528 00057188 40 82 00 0C */ bne lbl_8005B534 /* 8005B52C 0005718C 93 A3 00 08 */ stw r29, 8(r3) /* 8005B530 00057190 3B BD 26 80 */ addi r29, r29, 0x2680 lbl_8005B534: /* 8005B534 00057194 80 1B 00 24 */ lwz r0, 0x24(r27) /* 8005B538 00057198 38 80 00 00 */ li r4, 0 /* 8005B53C 0005719C 38 A0 26 80 */ li r5, 0x2680 /* 8005B540 000571A0 7C 60 FA 14 */ add r3, r0, r31 /* 8005B544 000571A4 80 63 00 08 */ lwz r3, 8(r3) /* 8005B548 000571A8 4B FA 8B BD */ bl memset /* 8005B54C 000571AC 3B FF 00 28 */ addi r31, r31, 0x28 /* 8005B550 000571B0 3B DE 00 01 */ addi r30, r30, 1 lbl_8005B554: /* 8005B554 000571B4 7C 1E E0 40 */ cmplw r30, r28 /* 8005B558 000571B8 41 80 FF C0 */ blt lbl_8005B518 /* 8005B55C 000571BC 38 7B 00 30 */ addi r3, r27, 0x30 /* 8005B560 000571C0 38 80 00 00 */ li r4, 0 /* 8005B564 000571C4 38 A0 00 44 */ li r5, 0x44 /* 8005B568 000571C8 4B FA 8B 9D */ bl memset /* 8005B56C 000571CC 38 7B 00 74 */ addi r3, r27, 0x74 /* 8005B570 000571D0 38 80 00 00 */ li r4, 0 /* 8005B574 000571D4 38 A0 00 22 */ li r5, 0x22 /* 8005B578 000571D8 4B FA 8B 8D */ bl memset /* 8005B57C 000571DC 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005B580 000571E0 38 80 00 00 */ li r4, 0 /* 8005B584 000571E4 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8005B588 000571E8 B0 9B 00 96 */ sth r4, 0x96(r27) /* 8005B58C 000571EC 38 63 00 04 */ addi r3, r3, 4 /* 8005B590 000571F0 38 00 00 01 */ li r0, 1 /* 8005B594 000571F4 98 9B 00 98 */ stb r4, 0x98(r27) /* 8005B598 000571F8 39 61 00 20 */ addi r11, r1, 0x20 /* 8005B59C 000571FC 90 7B 00 20 */ stw r3, 0x20(r27) /* 8005B5A0 00057200 90 9B 00 2C */ stw r4, 0x2c(r27) /* 8005B5A4 00057204 98 0D 99 06 */ stb r0, lbl_8063EBC6-_SDA_BASE_(r13) /* 8005B5A8 00057208 48 16 BB CD */ bl _restgpr_27 /* 8005B5AC 0005720C 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005B5B0 00057210 7C 08 03 A6 */ mtlr r0 /* 8005B5B4 00057214 38 21 00 20 */ addi r1, r1, 0x20 /* 8005B5B8 00057218 4E 80 00 20 */ blr lbl_8005B5BC: /* 8005B5BC 0005721C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005B5C0 00057220 7C 08 02 A6 */ mflr r0 /* 8005B5C4 00057224 90 01 00 24 */ stw r0, 0x24(r1) /* 8005B5C8 00057228 39 61 00 20 */ addi r11, r1, 0x20 /* 8005B5CC 0005722C 48 16 BB 5D */ bl _savegpr_27 /* 8005B5D0 00057230 80 03 00 AC */ lwz r0, 0xac(r3) /* 8005B5D4 00057234 7C 7B 1B 78 */ mr r27, r3 /* 8005B5D8 00057238 90 83 00 B0 */ stw r4, 0xb0(r3) /* 8005B5DC 0005723C 7C 9C 23 78 */ mr r28, r4 /* 8005B5E0 00057240 2C 00 00 00 */ cmpwi r0, 0 /* 8005B5E4 00057244 40 82 00 1C */ bne lbl_8005B600 /* 8005B5E8 00057248 1C 84 00 28 */ mulli r4, r4, 0x28 /* 8005B5EC 0005724C 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8005B5F0 00057250 38 04 00 1F */ addi r0, r4, 0x1f /* 8005B5F4 00057254 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8005B5F8 00057258 48 17 F6 9D */ bl func_801DAC94 /* 8005B5FC 0005725C 90 7B 00 AC */ stw r3, 0xac(r27) lbl_8005B600: /* 8005B600 00057260 1C BC 00 28 */ mulli r5, r28, 0x28 /* 8005B604 00057264 80 7B 00 AC */ lwz r3, 0xac(r27) /* 8005B608 00057268 38 80 00 00 */ li r4, 0 /* 8005B60C 0005726C 4B FA 8A F9 */ bl memset /* 8005B610 00057270 1C 9C 31 C0 */ mulli r4, r28, 0x31c0 /* 8005B614 00057274 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8005B618 00057278 38 A0 00 20 */ li r5, 0x20 /* 8005B61C 0005727C 48 17 F6 ED */ bl func_801DAD08 /* 8005B620 00057280 7C 7D 1B 78 */ mr r29, r3 /* 8005B624 00057284 3B C0 00 00 */ li r30, 0 /* 8005B628 00057288 3B E0 00 00 */ li r31, 0 /* 8005B62C 0005728C 48 00 00 40 */ b lbl_8005B66C lbl_8005B630: /* 8005B630 00057290 80 1B 00 AC */ lwz r0, 0xac(r27) /* 8005B634 00057294 7C 60 FA 14 */ add r3, r0, r31 /* 8005B638 00057298 80 03 00 08 */ lwz r0, 8(r3) /* 8005B63C 0005729C 2C 00 00 00 */ cmpwi r0, 0 /* 8005B640 000572A0 40 82 00 0C */ bne lbl_8005B64C /* 8005B644 000572A4 93 A3 00 08 */ stw r29, 8(r3) /* 8005B648 000572A8 3B BD 31 C0 */ addi r29, r29, 0x31c0 lbl_8005B64C: /* 8005B64C 000572AC 80 1B 00 AC */ lwz r0, 0xac(r27) /* 8005B650 000572B0 38 80 00 00 */ li r4, 0 /* 8005B654 000572B4 38 A0 31 C0 */ li r5, 0x31c0 /* 8005B658 000572B8 7C 60 FA 14 */ add r3, r0, r31 /* 8005B65C 000572BC 80 63 00 08 */ lwz r3, 8(r3) /* 8005B660 000572C0 4B FA 8A A5 */ bl memset /* 8005B664 000572C4 3B FF 00 28 */ addi r31, r31, 0x28 /* 8005B668 000572C8 3B DE 00 01 */ addi r30, r30, 1 lbl_8005B66C: /* 8005B66C 000572CC 7C 1E E0 40 */ cmplw r30, r28 /* 8005B670 000572D0 41 80 FF C0 */ blt lbl_8005B630 /* 8005B674 000572D4 38 7B 00 B8 */ addi r3, r27, 0xb8 /* 8005B678 000572D8 38 80 00 00 */ li r4, 0 /* 8005B67C 000572DC 38 A0 00 44 */ li r5, 0x44 /* 8005B680 000572E0 4B FA 8A 85 */ bl memset /* 8005B684 000572E4 38 7B 00 FC */ addi r3, r27, 0xfc /* 8005B688 000572E8 38 80 00 00 */ li r4, 0 /* 8005B68C 000572EC 38 A0 00 22 */ li r5, 0x22 /* 8005B690 000572F0 4B FA 8A 75 */ bl memset /* 8005B694 000572F4 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005B698 000572F8 38 80 00 00 */ li r4, 0 /* 8005B69C 000572FC 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8005B6A0 00057300 B0 9B 01 1E */ sth r4, 0x11e(r27) /* 8005B6A4 00057304 38 63 00 4C */ addi r3, r3, 0x4c /* 8005B6A8 00057308 38 00 00 01 */ li r0, 1 /* 8005B6AC 0005730C 98 9B 01 20 */ stb r4, 0x120(r27) /* 8005B6B0 00057310 39 61 00 20 */ addi r11, r1, 0x20 /* 8005B6B4 00057314 90 7B 00 A8 */ stw r3, 0xa8(r27) /* 8005B6B8 00057318 90 9B 00 B4 */ stw r4, 0xb4(r27) /* 8005B6BC 0005731C 98 0D 99 07 */ stb r0, lbl_8063EBC7-_SDA_BASE_(r13) /* 8005B6C0 00057320 48 16 BA B5 */ bl _restgpr_27 /* 8005B6C4 00057324 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005B6C8 00057328 7C 08 03 A6 */ mtlr r0 /* 8005B6CC 0005732C 38 21 00 20 */ addi r1, r1, 0x20 /* 8005B6D0 00057330 4E 80 00 20 */ blr .global func_8005B6D4 func_8005B6D4: /* 8005B6D4 00057334 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005B6D8 00057338 7C 08 02 A6 */ mflr r0 /* 8005B6DC 0005733C 90 01 00 34 */ stw r0, 0x34(r1) /* 8005B6E0 00057340 39 61 00 30 */ addi r11, r1, 0x30 /* 8005B6E4 00057344 48 16 BA 3D */ bl _savegpr_25 /* 8005B6E8 00057348 2C 04 00 00 */ cmpwi r4, 0 /* 8005B6EC 0005734C 7C 7A 1B 78 */ mr r26, r3 /* 8005B6F0 00057350 7C 9B 23 78 */ mr r27, r4 /* 8005B6F4 00057354 7C BC 2B 78 */ mr r28, r5 /* 8005B6F8 00057358 7C DD 33 78 */ mr r29, r6 /* 8005B6FC 0005735C 3B E0 00 01 */ li r31, 1 /* 8005B700 00057360 41 82 00 0C */ beq lbl_8005B70C /* 8005B704 00057364 28 04 01 EF */ cmplwi r4, 0x1ef /* 8005B708 00057368 40 81 00 0C */ ble lbl_8005B714 lbl_8005B70C: /* 8005B70C 0005736C 38 60 00 01 */ li r3, 1 /* 8005B710 00057370 48 00 02 34 */ b lbl_8005B944 lbl_8005B714: /* 8005B714 00057374 80 63 00 20 */ lwz r3, 0x20(r3) /* 8005B718 00057378 48 33 52 05 */ bl func_8039091C /* 8005B71C 0005737C 3F 20 80 64 */ lis r25, lbl_8063CE34@ha /* 8005B720 00057380 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005B724 00057384 3B 39 CE 34 */ addi r25, r25, lbl_8063CE34@l /* 8005B728 00057388 38 79 00 64 */ addi r3, r25, 0x64 /* 8005B72C 0005738C 48 33 CE B5 */ bl func_803985E0 /* 8005B730 00057390 7C 7E 1B 78 */ mr r30, r3 /* 8005B734 00057394 80 7A 00 20 */ lwz r3, 0x20(r26) /* 8005B738 00057398 7F 64 DB 78 */ mr r4, r27 /* 8005B73C 0005739C 48 33 51 E1 */ bl func_8039091C /* 8005B740 000573A0 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005B744 000573A4 38 79 00 64 */ addi r3, r25, 0x64 /* 8005B748 000573A8 48 33 CF 01 */ bl func_80398648 /* 8005B74C 000573AC 7C 03 F0 40 */ cmplw r3, r30 /* 8005B750 000573B0 57 9E 82 1E */ rlwinm r30, r28, 0x10, 8, 0xf /* 8005B754 000573B4 53 7E 04 3E */ rlwimi r30, r27, 0, 0x10, 0x1f /* 8005B758 000573B8 40 82 00 08 */ bne lbl_8005B760 /* 8005B75C 000573BC 7F 7E DB 78 */ mr r30, r27 lbl_8005B760: /* 8005B760 000573C0 2C 1B 01 9E */ cmpwi r27, 0x19e /* 8005B764 000573C4 40 80 00 28 */ bge lbl_8005B78C /* 8005B768 000573C8 2C 1B 01 82 */ cmpwi r27, 0x182 /* 8005B76C 000573CC 41 82 00 44 */ beq lbl_8005B7B0 /* 8005B770 000573D0 40 80 00 10 */ bge lbl_8005B780 /* 8005B774 000573D4 2C 1B 00 C9 */ cmpwi r27, 0xc9 /* 8005B778 000573D8 41 82 00 38 */ beq lbl_8005B7B0 /* 8005B77C 000573DC 48 00 00 3C */ b lbl_8005B7B8 lbl_8005B780: /* 8005B780 000573E0 2C 1B 01 9C */ cmpwi r27, 0x19c /* 8005B784 000573E4 40 80 00 2C */ bge lbl_8005B7B0 /* 8005B788 000573E8 48 00 00 30 */ b lbl_8005B7B8 lbl_8005B78C: /* 8005B78C 000573EC 2C 1B 01 ED */ cmpwi r27, 0x1ed /* 8005B790 000573F0 40 80 00 18 */ bge lbl_8005B7A8 /* 8005B794 000573F4 2C 1B 01 A8 */ cmpwi r27, 0x1a8 /* 8005B798 000573F8 40 80 00 20 */ bge lbl_8005B7B8 /* 8005B79C 000573FC 2C 1B 01 A5 */ cmpwi r27, 0x1a5 /* 8005B7A0 00057400 40 80 00 10 */ bge lbl_8005B7B0 /* 8005B7A4 00057404 48 00 00 14 */ b lbl_8005B7B8 lbl_8005B7A8: /* 8005B7A8 00057408 2C 1B 01 EF */ cmpwi r27, 0x1ef /* 8005B7AC 0005740C 40 80 00 0C */ bge lbl_8005B7B8 lbl_8005B7B0: /* 8005B7B0 00057410 57 A0 90 1A */ slwi r0, r29, 0x12 /* 8005B7B4 00057414 7F DE 03 78 */ or r30, r30, r0 lbl_8005B7B8: /* 8005B7B8 00057418 80 BA 00 28 */ lwz r5, 0x28(r26) /* 8005B7BC 0005741C 38 C0 00 00 */ li r6, 0 /* 8005B7C0 00057420 38 60 00 00 */ li r3, 0 /* 8005B7C4 00057424 7C A9 03 A6 */ mtctr r5 /* 8005B7C8 00057428 28 05 00 00 */ cmplwi r5, 0 /* 8005B7CC 0005742C 40 81 00 38 */ ble lbl_8005B804 lbl_8005B7D0: /* 8005B7D0 00057430 80 9A 00 24 */ lwz r4, 0x24(r26) /* 8005B7D4 00057434 7C 04 18 2E */ lwzx r0, r4, r3 /* 8005B7D8 00057438 7C 1E 00 40 */ cmplw r30, r0 /* 8005B7DC 0005743C 40 82 00 1C */ bne lbl_8005B7F8 /* 8005B7E0 00057440 1C 06 00 28 */ mulli r0, r6, 0x28 /* 8005B7E4 00057444 38 A0 00 02 */ li r5, 2 /* 8005B7E8 00057448 38 60 00 00 */ li r3, 0 /* 8005B7EC 0005744C 7C 84 02 14 */ add r4, r4, r0 /* 8005B7F0 00057450 98 A4 00 0E */ stb r5, 0xe(r4) /* 8005B7F4 00057454 48 00 01 50 */ b lbl_8005B944 lbl_8005B7F8: /* 8005B7F8 00057458 38 63 00 28 */ addi r3, r3, 0x28 /* 8005B7FC 0005745C 38 C6 00 01 */ addi r6, r6, 1 /* 8005B800 00057460 42 00 FF D0 */ bdnz lbl_8005B7D0 lbl_8005B804: /* 8005B804 00057464 80 DA 00 2C */ lwz r6, 0x2c(r26) /* 8005B808 00057468 7C 06 28 50 */ subf r0, r6, r5 /* 8005B80C 0005746C 7C C7 33 78 */ mr r7, r6 /* 8005B810 00057470 1C 66 00 28 */ mulli r3, r6, 0x28 /* 8005B814 00057474 7C 09 03 A6 */ mtctr r0 /* 8005B818 00057478 7C 06 28 40 */ cmplw r6, r5 /* 8005B81C 0005747C 40 80 00 38 */ bge lbl_8005B854 lbl_8005B820: /* 8005B820 00057480 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B824 00057484 7C 80 1A 14 */ add r4, r0, r3 /* 8005B828 00057488 88 04 00 0E */ lbz r0, 0xe(r4) /* 8005B82C 0005748C 2C 00 00 00 */ cmpwi r0, 0 /* 8005B830 00057490 40 82 00 18 */ bne lbl_8005B848 /* 8005B834 00057494 88 04 00 0D */ lbz r0, 0xd(r4) /* 8005B838 00057498 28 00 00 02 */ cmplwi r0, 2 /* 8005B83C 0005749C 41 82 00 0C */ beq lbl_8005B848 /* 8005B840 000574A0 3B E0 00 00 */ li r31, 0 /* 8005B844 000574A4 48 00 00 10 */ b lbl_8005B854 lbl_8005B848: /* 8005B848 000574A8 38 63 00 28 */ addi r3, r3, 0x28 /* 8005B84C 000574AC 38 E7 00 01 */ addi r7, r7, 1 /* 8005B850 000574B0 42 00 FF D0 */ bdnz lbl_8005B820 lbl_8005B854: /* 8005B854 000574B4 2C 1F 00 00 */ cmpwi r31, 0 /* 8005B858 000574B8 41 82 00 4C */ beq lbl_8005B8A4 /* 8005B85C 000574BC 38 E0 00 00 */ li r7, 0 /* 8005B860 000574C0 38 60 00 00 */ li r3, 0 /* 8005B864 000574C4 7C C9 03 A6 */ mtctr r6 /* 8005B868 000574C8 28 06 00 00 */ cmplwi r6, 0 /* 8005B86C 000574CC 40 81 00 38 */ ble lbl_8005B8A4 lbl_8005B870: /* 8005B870 000574D0 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B874 000574D4 7C 80 1A 14 */ add r4, r0, r3 /* 8005B878 000574D8 88 04 00 0E */ lbz r0, 0xe(r4) /* 8005B87C 000574DC 2C 00 00 00 */ cmpwi r0, 0 /* 8005B880 000574E0 40 82 00 18 */ bne lbl_8005B898 /* 8005B884 000574E4 88 04 00 0D */ lbz r0, 0xd(r4) /* 8005B888 000574E8 28 00 00 02 */ cmplwi r0, 2 /* 8005B88C 000574EC 41 82 00 0C */ beq lbl_8005B898 /* 8005B890 000574F0 3B E0 00 00 */ li r31, 0 /* 8005B894 000574F4 48 00 00 10 */ b lbl_8005B8A4 lbl_8005B898: /* 8005B898 000574F8 38 63 00 28 */ addi r3, r3, 0x28 /* 8005B89C 000574FC 38 E7 00 01 */ addi r7, r7, 1 /* 8005B8A0 00057500 42 00 FF D0 */ bdnz lbl_8005B870 lbl_8005B8A4: /* 8005B8A4 00057504 2C 1F 00 00 */ cmpwi r31, 0 /* 8005B8A8 00057508 41 82 00 0C */ beq lbl_8005B8B4 /* 8005B8AC 0005750C 38 60 00 01 */ li r3, 1 /* 8005B8B0 00057510 48 00 00 94 */ b lbl_8005B944 lbl_8005B8B4: /* 8005B8B4 00057514 1F E7 00 28 */ mulli r31, r7, 0x28 /* 8005B8B8 00057518 80 7A 00 24 */ lwz r3, 0x24(r26) /* 8005B8BC 0005751C 7C 03 F8 2E */ lwzx r0, r3, r31 /* 8005B8C0 00057520 2C 00 00 00 */ cmpwi r0, 0 /* 8005B8C4 00057524 41 82 00 10 */ beq lbl_8005B8D4 /* 8005B8C8 00057528 7C 63 FA 14 */ add r3, r3, r31 /* 8005B8CC 0005752C 80 63 00 08 */ lwz r3, 8(r3) /* 8005B8D0 00057530 48 1E 2A 01 */ bl func_8023E2D0 lbl_8005B8D4: /* 8005B8D4 00057534 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B8D8 00057538 38 A0 00 01 */ li r5, 1 /* 8005B8DC 0005753C 38 80 00 02 */ li r4, 2 /* 8005B8E0 00057540 7C 60 FA 14 */ add r3, r0, r31 /* 8005B8E4 00057544 B3 63 00 04 */ sth r27, 4(r3) /* 8005B8E8 00057548 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B8EC 0005754C 7C 60 FA 14 */ add r3, r0, r31 /* 8005B8F0 00057550 9B 83 00 06 */ stb r28, 6(r3) /* 8005B8F4 00057554 80 7A 00 24 */ lwz r3, 0x24(r26) /* 8005B8F8 00057558 7F C3 F9 2E */ stwx r30, r3, r31 /* 8005B8FC 0005755C 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B900 00057560 7C 60 FA 14 */ add r3, r0, r31 /* 8005B904 00057564 98 A3 00 0D */ stb r5, 0xd(r3) /* 8005B908 00057568 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B90C 0005756C 7C 60 FA 14 */ add r3, r0, r31 /* 8005B910 00057570 98 83 00 0E */ stb r4, 0xe(r3) /* 8005B914 00057574 80 1A 00 24 */ lwz r0, 0x24(r26) /* 8005B918 00057578 7C 60 FA 14 */ add r3, r0, r31 /* 8005B91C 0005757C B3 A3 00 10 */ sth r29, 0x10(r3) /* 8005B920 00057580 80 7A 00 2C */ lwz r3, 0x2c(r26) /* 8005B924 00057584 80 1A 00 28 */ lwz r0, 0x28(r26) /* 8005B928 00057588 38 63 00 01 */ addi r3, r3, 1 /* 8005B92C 0005758C 7C 03 00 40 */ cmplw r3, r0 /* 8005B930 00057590 90 7A 00 2C */ stw r3, 0x2c(r26) /* 8005B934 00057594 40 82 00 0C */ bne lbl_8005B940 /* 8005B938 00057598 38 00 00 00 */ li r0, 0 /* 8005B93C 0005759C 90 1A 00 2C */ stw r0, 0x2c(r26) lbl_8005B940: /* 8005B940 000575A0 38 60 00 00 */ li r3, 0 lbl_8005B944: /* 8005B944 000575A4 39 61 00 30 */ addi r11, r1, 0x30 /* 8005B948 000575A8 48 16 B8 25 */ bl _restgpr_25 /* 8005B94C 000575AC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005B950 000575B0 7C 08 03 A6 */ mtlr r0 /* 8005B954 000575B4 38 21 00 30 */ addi r1, r1, 0x30 /* 8005B958 000575B8 4E 80 00 20 */ blr .global func_8005B95C func_8005B95C: /* 8005B95C 000575BC 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8005B960 000575C0 7C 08 02 A6 */ mflr r0 /* 8005B964 000575C4 90 01 00 74 */ stw r0, 0x74(r1) /* 8005B968 000575C8 DB E1 00 60 */ stfd f31, 0x60(r1) /* 8005B96C 000575CC F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 8005B970 000575D0 DB C1 00 50 */ stfd f30, 0x50(r1) /* 8005B974 000575D4 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8005B978 000575D8 DB A1 00 40 */ stfd f29, 0x40(r1) /* 8005B97C 000575DC F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 8005B980 000575E0 DB 81 00 30 */ stfd f28, 0x30(r1) /* 8005B984 000575E4 F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 8005B988 000575E8 39 61 00 30 */ addi r11, r1, 0x30 /* 8005B98C 000575EC 48 16 B7 8D */ bl _savegpr_23 /* 8005B990 000575F0 2C 04 00 00 */ cmpwi r4, 0 /* 8005B994 000575F4 7C 7B 1B 78 */ mr r27, r3 /* 8005B998 000575F8 7C 97 23 78 */ mr r23, r4 /* 8005B99C 000575FC 7C B8 2B 78 */ mr r24, r5 /* 8005B9A0 00057600 7C DC 33 78 */ mr r28, r6 /* 8005B9A4 00057604 7C FD 3B 78 */ mr r29, r7 /* 8005B9A8 00057608 7D 1E 43 78 */ mr r30, r8 /* 8005B9AC 0005760C 7D 39 4B 78 */ mr r25, r9 /* 8005B9B0 00057610 41 82 00 0C */ beq lbl_8005B9BC /* 8005B9B4 00057614 28 04 01 EF */ cmplwi r4, 0x1ef /* 8005B9B8 00057618 40 81 00 38 */ ble lbl_8005B9F0 lbl_8005B9BC: /* 8005B9BC 0005761C C0 22 85 E0 */ lfs f1, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005B9C0 00057620 38 60 00 29 */ li r3, 0x29 /* 8005B9C4 00057624 C0 02 85 E4 */ lfs f0, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005B9C8 00057628 D0 28 00 0C */ stfs f1, 0xc(r8) /* 8005B9CC 0005762C D0 28 00 04 */ stfs f1, 4(r8) /* 8005B9D0 00057630 D0 28 00 18 */ stfs f1, 0x18(r8) /* 8005B9D4 00057634 D0 28 00 00 */ stfs f1, 0(r8) /* 8005B9D8 00057638 D0 08 00 1C */ stfs f0, 0x1c(r8) /* 8005B9DC 0005763C D0 08 00 14 */ stfs f0, 0x14(r8) /* 8005B9E0 00057640 D0 08 00 10 */ stfs f0, 0x10(r8) /* 8005B9E4 00057644 D0 08 00 08 */ stfs f0, 8(r8) /* 8005B9E8 00057648 4B FF F0 11 */ bl func_8005A9F8 /* 8005B9EC 0005764C 48 00 02 30 */ b lbl_8005BC1C lbl_8005B9F0: /* 8005B9F0 00057650 80 63 00 20 */ lwz r3, 0x20(r3) /* 8005B9F4 00057654 48 33 4F 29 */ bl func_8039091C /* 8005B9F8 00057658 3F 40 80 64 */ lis r26, lbl_8063CE34@ha /* 8005B9FC 0005765C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005BA00 00057660 3B 5A CE 34 */ addi r26, r26, lbl_8063CE34@l /* 8005BA04 00057664 38 7A 00 64 */ addi r3, r26, 0x64 /* 8005BA08 00057668 48 33 CB D9 */ bl func_803985E0 /* 8005BA0C 0005766C 7C 7F 1B 78 */ mr r31, r3 /* 8005BA10 00057670 80 7B 00 20 */ lwz r3, 0x20(r27) /* 8005BA14 00057674 7E E4 BB 78 */ mr r4, r23 /* 8005BA18 00057678 48 33 4F 05 */ bl func_8039091C /* 8005BA1C 0005767C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005BA20 00057680 38 7A 00 64 */ addi r3, r26, 0x64 /* 8005BA24 00057684 48 33 CC 25 */ bl func_80398648 /* 8005BA28 00057688 7C 03 F8 40 */ cmplw r3, r31 /* 8005BA2C 0005768C 57 06 82 1E */ rlwinm r6, r24, 0x10, 8, 0xf /* 8005BA30 00057690 52 E6 04 3E */ rlwimi r6, r23, 0, 0x10, 0x1f /* 8005BA34 00057694 40 82 00 08 */ bne lbl_8005BA3C /* 8005BA38 00057698 7E E6 BB 78 */ mr r6, r23 lbl_8005BA3C: /* 8005BA3C 0005769C 2C 17 01 9E */ cmpwi r23, 0x19e /* 8005BA40 000576A0 40 80 00 28 */ bge lbl_8005BA68 /* 8005BA44 000576A4 2C 17 01 82 */ cmpwi r23, 0x182 /* 8005BA48 000576A8 41 82 00 44 */ beq lbl_8005BA8C /* 8005BA4C 000576AC 40 80 00 10 */ bge lbl_8005BA5C /* 8005BA50 000576B0 2C 17 00 C9 */ cmpwi r23, 0xc9 /* 8005BA54 000576B4 41 82 00 38 */ beq lbl_8005BA8C /* 8005BA58 000576B8 48 00 00 3C */ b lbl_8005BA94 lbl_8005BA5C: /* 8005BA5C 000576BC 2C 17 01 9C */ cmpwi r23, 0x19c /* 8005BA60 000576C0 40 80 00 2C */ bge lbl_8005BA8C /* 8005BA64 000576C4 48 00 00 30 */ b lbl_8005BA94 lbl_8005BA68: /* 8005BA68 000576C8 2C 17 01 ED */ cmpwi r23, 0x1ed /* 8005BA6C 000576CC 40 80 00 18 */ bge lbl_8005BA84 /* 8005BA70 000576D0 2C 17 01 A8 */ cmpwi r23, 0x1a8 /* 8005BA74 000576D4 40 80 00 20 */ bge lbl_8005BA94 /* 8005BA78 000576D8 2C 17 01 A5 */ cmpwi r23, 0x1a5 /* 8005BA7C 000576DC 40 80 00 10 */ bge lbl_8005BA8C /* 8005BA80 000576E0 48 00 00 14 */ b lbl_8005BA94 lbl_8005BA84: /* 8005BA84 000576E4 2C 17 01 EF */ cmpwi r23, 0x1ef /* 8005BA88 000576E8 40 80 00 0C */ bge lbl_8005BA94 lbl_8005BA8C: /* 8005BA8C 000576EC 57 20 90 1A */ slwi r0, r25, 0x12 /* 8005BA90 000576F0 7C C6 03 78 */ or r6, r6, r0 lbl_8005BA94: /* 8005BA94 000576F4 80 1B 00 28 */ lwz r0, 0x28(r27) /* 8005BA98 000576F8 38 A0 00 00 */ li r5, 0 /* 8005BA9C 000576FC 38 60 00 00 */ li r3, 0 /* 8005BAA0 00057700 7C 09 03 A6 */ mtctr r0 /* 8005BAA4 00057704 28 00 00 00 */ cmplwi r0, 0 /* 8005BAA8 00057708 40 81 01 44 */ ble lbl_8005BBEC lbl_8005BAAC: /* 8005BAAC 0005770C 80 9B 00 24 */ lwz r4, 0x24(r27) /* 8005BAB0 00057710 7C 04 18 2E */ lwzx r0, r4, r3 /* 8005BAB4 00057714 7C 06 00 40 */ cmplw r6, r0 /* 8005BAB8 00057718 40 82 01 28 */ bne lbl_8005BBE0 /* 8005BABC 0005771C 1F E5 00 28 */ mulli r31, r5, 0x28 /* 8005BAC0 00057720 7C 64 FA 14 */ add r3, r4, r31 /* 8005BAC4 00057724 88 03 00 0D */ lbz r0, 0xd(r3) /* 8005BAC8 00057728 28 00 00 03 */ cmplwi r0, 3 /* 8005BACC 0005772C 40 82 00 D0 */ bne lbl_8005BB9C /* 8005BAD0 00057730 C3 A2 85 E0 */ lfs f29, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005BAD4 00057734 C3 82 85 E4 */ lfs f28, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005BAD8 00057738 FF E0 E8 90 */ fmr f31, f29 /* 8005BADC 0005773C 80 63 00 08 */ lwz r3, 8(r3) /* 8005BAE0 00057740 FF C0 E0 90 */ fmr f30, f28 /* 8005BAE4 00057744 48 1E 2A 65 */ bl func_8023E548 /* 8005BAE8 00057748 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005BAEC 0005774C 28 00 00 30 */ cmplwi r0, 0x30 /* 8005BAF0 00057750 40 81 00 20 */ ble lbl_8005BB10 /* 8005BAF4 00057754 2C 1C 00 00 */ cmpwi r28, 0 /* 8005BAF8 00057758 41 82 00 10 */ beq lbl_8005BB08 /* 8005BAFC 0005775C C3 A2 85 E8 */ lfs f29, lbl_80640BE8-_SDA2_BASE_(r2) /* 8005BB00 00057760 C3 82 85 E4 */ lfs f28, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005BB04 00057764 48 00 00 0C */ b lbl_8005BB10 lbl_8005BB08: /* 8005BB08 00057768 C3 A2 85 E0 */ lfs f29, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005BB0C 0005776C C3 82 85 E8 */ lfs f28, lbl_80640BE8-_SDA2_BASE_(r2) lbl_8005BB10: /* 8005BB10 00057770 80 1B 00 24 */ lwz r0, 0x24(r27) /* 8005BB14 00057774 7C 60 FA 14 */ add r3, r0, r31 /* 8005BB18 00057778 80 63 00 08 */ lwz r3, 8(r3) /* 8005BB1C 0005777C 48 1E 2A 25 */ bl func_8023E540 /* 8005BB20 00057780 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005BB24 00057784 28 00 00 30 */ cmplwi r0, 0x30 /* 8005BB28 00057788 40 81 00 24 */ ble lbl_8005BB4C /* 8005BB2C 0005778C 2C 1D 00 00 */ cmpwi r29, 0 /* 8005BB30 00057790 41 82 00 10 */ beq lbl_8005BB40 /* 8005BB34 00057794 C3 E2 85 E8 */ lfs f31, lbl_80640BE8-_SDA2_BASE_(r2) /* 8005BB38 00057798 C3 C2 85 E4 */ lfs f30, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005BB3C 0005779C 48 00 00 20 */ b lbl_8005BB5C lbl_8005BB40: /* 8005BB40 000577A0 C3 E2 85 E0 */ lfs f31, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005BB44 000577A4 C3 C2 85 E8 */ lfs f30, lbl_80640BE8-_SDA2_BASE_(r2) /* 8005BB48 000577A8 48 00 00 14 */ b lbl_8005BB5C lbl_8005BB4C: /* 8005BB4C 000577AC 2C 1D 00 00 */ cmpwi r29, 0 /* 8005BB50 000577B0 41 82 00 0C */ beq lbl_8005BB5C /* 8005BB54 000577B4 C3 E2 85 E4 */ lfs f31, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005BB58 000577B8 C3 C2 85 E0 */ lfs f30, lbl_80640BE0-_SDA2_BASE_(r2) lbl_8005BB5C: /* 8005BB5C 000577BC D3 FE 00 18 */ stfs f31, 0x18(r30) /* 8005BB60 000577C0 38 80 00 02 */ li r4, 2 /* 8005BB64 000577C4 D3 FE 00 00 */ stfs f31, 0(r30) /* 8005BB68 000577C8 D3 DE 00 10 */ stfs f30, 0x10(r30) /* 8005BB6C 000577CC D3 DE 00 08 */ stfs f30, 8(r30) /* 8005BB70 000577D0 D3 BE 00 0C */ stfs f29, 0xc(r30) /* 8005BB74 000577D4 D3 BE 00 04 */ stfs f29, 4(r30) /* 8005BB78 000577D8 D3 9E 00 1C */ stfs f28, 0x1c(r30) /* 8005BB7C 000577DC D3 9E 00 14 */ stfs f28, 0x14(r30) /* 8005BB80 000577E0 80 1B 00 24 */ lwz r0, 0x24(r27) /* 8005BB84 000577E4 7C 60 FA 14 */ add r3, r0, r31 /* 8005BB88 000577E8 98 83 00 0E */ stb r4, 0xe(r3) /* 8005BB8C 000577EC 80 1B 00 24 */ lwz r0, 0x24(r27) /* 8005BB90 000577F0 7C 60 FA 14 */ add r3, r0, r31 /* 8005BB94 000577F4 80 63 00 08 */ lwz r3, 8(r3) /* 8005BB98 000577F8 48 00 00 84 */ b lbl_8005BC1C lbl_8005BB9C: /* 8005BB9C 000577FC C0 22 85 E0 */ lfs f1, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005BBA0 00057800 38 A0 00 02 */ li r5, 2 /* 8005BBA4 00057804 C0 02 85 E4 */ lfs f0, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005BBA8 00057808 38 60 00 29 */ li r3, 0x29 /* 8005BBAC 0005780C D0 3E 00 0C */ stfs f1, 0xc(r30) /* 8005BBB0 00057810 D0 3E 00 04 */ stfs f1, 4(r30) /* 8005BBB4 00057814 D0 3E 00 18 */ stfs f1, 0x18(r30) /* 8005BBB8 00057818 D0 3E 00 00 */ stfs f1, 0(r30) /* 8005BBBC 0005781C D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 8005BBC0 00057820 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 8005BBC4 00057824 D0 1E 00 10 */ stfs f0, 0x10(r30) /* 8005BBC8 00057828 D0 1E 00 08 */ stfs f0, 8(r30) /* 8005BBCC 0005782C 80 1B 00 24 */ lwz r0, 0x24(r27) /* 8005BBD0 00057830 7C 80 FA 14 */ add r4, r0, r31 /* 8005BBD4 00057834 98 A4 00 0E */ stb r5, 0xe(r4) /* 8005BBD8 00057838 4B FF EE 21 */ bl func_8005A9F8 /* 8005BBDC 0005783C 48 00 00 40 */ b lbl_8005BC1C lbl_8005BBE0: /* 8005BBE0 00057840 38 63 00 28 */ addi r3, r3, 0x28 /* 8005BBE4 00057844 38 A5 00 01 */ addi r5, r5, 1 /* 8005BBE8 00057848 42 00 FE C4 */ bdnz lbl_8005BAAC lbl_8005BBEC: /* 8005BBEC 0005784C C0 22 85 E0 */ lfs f1, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005BBF0 00057850 38 60 00 29 */ li r3, 0x29 /* 8005BBF4 00057854 C0 02 85 E4 */ lfs f0, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005BBF8 00057858 D0 3E 00 0C */ stfs f1, 0xc(r30) /* 8005BBFC 0005785C D0 3E 00 04 */ stfs f1, 4(r30) /* 8005BC00 00057860 D0 3E 00 18 */ stfs f1, 0x18(r30) /* 8005BC04 00057864 D0 3E 00 00 */ stfs f1, 0(r30) /* 8005BC08 00057868 D0 1E 00 1C */ stfs f0, 0x1c(r30) /* 8005BC0C 0005786C D0 1E 00 14 */ stfs f0, 0x14(r30) /* 8005BC10 00057870 D0 1E 00 10 */ stfs f0, 0x10(r30) /* 8005BC14 00057874 D0 1E 00 08 */ stfs f0, 8(r30) /* 8005BC18 00057878 4B FF ED E1 */ bl func_8005A9F8 lbl_8005BC1C: /* 8005BC1C 0005787C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8005BC20 00057880 CB E1 00 60 */ lfd f31, 0x60(r1) /* 8005BC24 00057884 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8005BC28 00057888 CB C1 00 50 */ lfd f30, 0x50(r1) /* 8005BC2C 0005788C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8005BC30 00057890 CB A1 00 40 */ lfd f29, 0x40(r1) /* 8005BC34 00057894 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 8005BC38 00057898 39 61 00 30 */ addi r11, r1, 0x30 /* 8005BC3C 0005789C CB 81 00 30 */ lfd f28, 0x30(r1) /* 8005BC40 000578A0 48 16 B5 25 */ bl _restgpr_23 /* 8005BC44 000578A4 80 01 00 74 */ lwz r0, 0x74(r1) /* 8005BC48 000578A8 7C 08 03 A6 */ mtlr r0 /* 8005BC4C 000578AC 38 21 00 70 */ addi r1, r1, 0x70 /* 8005BC50 000578B0 4E 80 00 20 */ blr lbl_8005BC54: /* 8005BC54 000578B4 7C 66 1B 78 */ mr r6, r3 /* 8005BC58 000578B8 38 E0 00 00 */ li r7, 0 /* 8005BC5C 000578BC 38 A0 00 01 */ li r5, 1 /* 8005BC60 000578C0 48 00 00 20 */ b lbl_8005BC80 lbl_8005BC64: /* 8005BC64 000578C4 A0 06 00 74 */ lhz r0, 0x74(r6) /* 8005BC68 000578C8 38 C6 00 02 */ addi r6, r6, 2 /* 8005BC6C 000578CC 80 83 00 24 */ lwz r4, 0x24(r3) /* 8005BC70 000578D0 38 E7 00 01 */ addi r7, r7, 1 /* 8005BC74 000578D4 1C 00 00 28 */ mulli r0, r0, 0x28 /* 8005BC78 000578D8 7C 84 02 14 */ add r4, r4, r0 /* 8005BC7C 000578DC 98 A4 00 0C */ stb r5, 0xc(r4) lbl_8005BC80: /* 8005BC80 000578E0 A0 03 00 96 */ lhz r0, 0x96(r3) /* 8005BC84 000578E4 7C 07 00 40 */ cmplw r7, r0 /* 8005BC88 000578E8 41 80 FF DC */ blt lbl_8005BC64 /* 8005BC8C 000578EC 4E 80 00 20 */ blr lbl_8005BC90: /* 8005BC90 000578F0 3C 60 80 48 */ lis r3, lbl_80478178@ha /* 8005BC94 000578F4 54 A4 04 3E */ clrlwi r4, r5, 0x10 /* 8005BC98 000578F8 38 63 81 78 */ addi r3, r3, lbl_80478178@l /* 8005BC9C 000578FC 4B FF FF B8 */ b lbl_8005BC54 .global func_8005BCA0 func_8005BCA0: /* 8005BCA0 00057900 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005BCA4 00057904 7C 08 02 A6 */ mflr r0 /* 8005BCA8 00057908 90 01 00 34 */ stw r0, 0x34(r1) /* 8005BCAC 0005790C 39 61 00 30 */ addi r11, r1, 0x30 /* 8005BCB0 00057910 48 16 B4 65 */ bl _savegpr_22 /* 8005BCB4 00057914 88 0D 99 06 */ lbz r0, lbl_8063EBC6-_SDA_BASE_(r13) /* 8005BCB8 00057918 7C 77 1B 78 */ mr r23, r3 /* 8005BCBC 0005791C 3B 40 00 00 */ li r26, 0 /* 8005BCC0 00057920 2C 00 00 00 */ cmpwi r0, 0 /* 8005BCC4 00057924 41 82 03 90 */ beq lbl_8005C054 /* 8005BCC8 00057928 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005BCCC 0005792C 3B 20 00 00 */ li r25, 0 /* 8005BCD0 00057930 3B 60 00 00 */ li r27, 0 /* 8005BCD4 00057934 3B 80 00 00 */ li r28, 0 /* 8005BCD8 00057938 3B A3 CE 34 */ addi r29, r3, lbl_8063CE34@l /* 8005BCDC 0005793C 3B E0 00 03 */ li r31, 3 /* 8005BCE0 00057940 3B C0 00 02 */ li r30, 2 /* 8005BCE4 00057944 48 00 03 08 */ b lbl_8005BFEC lbl_8005BCE8: /* 8005BCE8 00057948 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BCEC 0005794C 7C 80 DA 14 */ add r4, r0, r27 /* 8005BCF0 00057950 7C 1B 00 2E */ lwzx r0, r27, r0 /* 8005BCF4 00057954 2C 00 00 00 */ cmpwi r0, 0 /* 8005BCF8 00057958 41 82 02 EC */ beq lbl_8005BFE4 /* 8005BCFC 0005795C 88 64 00 0E */ lbz r3, 0xe(r4) /* 8005BD00 00057960 2C 03 00 00 */ cmpwi r3, 0 /* 8005BD04 00057964 41 82 00 0C */ beq lbl_8005BD10 /* 8005BD08 00057968 38 03 FF FF */ addi r0, r3, -1 /* 8005BD0C 0005796C 98 04 00 0E */ stb r0, 0xe(r4) lbl_8005BD10: /* 8005BD10 00057970 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BD14 00057974 7C 60 DA 14 */ add r3, r0, r27 /* 8005BD18 00057978 88 03 00 0D */ lbz r0, 0xd(r3) /* 8005BD1C 0005797C 2C 00 00 02 */ cmpwi r0, 2 /* 8005BD20 00057980 41 82 01 88 */ beq lbl_8005BEA8 /* 8005BD24 00057984 40 80 02 C0 */ bge lbl_8005BFE4 /* 8005BD28 00057988 2C 00 00 01 */ cmpwi r0, 1 /* 8005BD2C 0005798C 40 80 00 0C */ bge lbl_8005BD38 /* 8005BD30 00057990 48 00 02 B4 */ b lbl_8005BFE4 /* 8005BD34 00057994 48 00 02 B0 */ b lbl_8005BFE4 lbl_8005BD38: /* 8005BD38 00057998 88 17 00 98 */ lbz r0, 0x98(r23) /* 8005BD3C 0005799C A2 C3 00 04 */ lhz r22, 4(r3) /* 8005BD40 000579A0 2C 00 00 00 */ cmpwi r0, 0 /* 8005BD44 000579A4 A3 03 00 10 */ lhz r24, 0x10(r3) /* 8005BD48 000579A8 40 82 02 9C */ bne lbl_8005BFE4 /* 8005BD4C 000579AC A0 17 00 96 */ lhz r0, 0x96(r23) /* 8005BD50 000579B0 28 00 00 10 */ cmplwi r0, 0x10 /* 8005BD54 000579B4 40 80 02 90 */ bge lbl_8005BFE4 /* 8005BD58 000579B8 80 77 00 20 */ lwz r3, 0x20(r23) /* 8005BD5C 000579BC 7E C4 B3 78 */ mr r4, r22 /* 8005BD60 000579C0 48 33 4B BD */ bl func_8039091C /* 8005BD64 000579C4 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BD68 000579C8 7C 64 1B 78 */ mr r4, r3 /* 8005BD6C 000579CC 2C 16 01 9E */ cmpwi r22, 0x19e /* 8005BD70 000579D0 7C 60 DA 14 */ add r3, r0, r27 /* 8005BD74 000579D4 9B 83 00 0C */ stb r28, 0xc(r3) /* 8005BD78 000579D8 40 80 00 28 */ bge lbl_8005BDA0 /* 8005BD7C 000579DC 2C 16 01 82 */ cmpwi r22, 0x182 /* 8005BD80 000579E0 41 82 00 44 */ beq lbl_8005BDC4 /* 8005BD84 000579E4 40 80 00 10 */ bge lbl_8005BD94 /* 8005BD88 000579E8 2C 16 00 C9 */ cmpwi r22, 0xc9 /* 8005BD8C 000579EC 41 82 00 38 */ beq lbl_8005BDC4 /* 8005BD90 000579F0 48 00 00 88 */ b lbl_8005BE18 lbl_8005BD94: /* 8005BD94 000579F4 2C 16 01 9C */ cmpwi r22, 0x19c /* 8005BD98 000579F8 40 80 00 2C */ bge lbl_8005BDC4 /* 8005BD9C 000579FC 48 00 00 7C */ b lbl_8005BE18 lbl_8005BDA0: /* 8005BDA0 00057A00 2C 16 01 ED */ cmpwi r22, 0x1ed /* 8005BDA4 00057A04 40 80 00 18 */ bge lbl_8005BDBC /* 8005BDA8 00057A08 2C 16 01 A8 */ cmpwi r22, 0x1a8 /* 8005BDAC 00057A0C 40 80 00 6C */ bge lbl_8005BE18 /* 8005BDB0 00057A10 2C 16 01 A5 */ cmpwi r22, 0x1a5 /* 8005BDB4 00057A14 40 80 00 10 */ bge lbl_8005BDC4 /* 8005BDB8 00057A18 48 00 00 60 */ b lbl_8005BE18 lbl_8005BDBC: /* 8005BDBC 00057A1C 2C 16 01 EF */ cmpwi r22, 0x1ef /* 8005BDC0 00057A20 40 80 00 58 */ bge lbl_8005BE18 lbl_8005BDC4: /* 8005BDC4 00057A24 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BDC8 00057A28 7C 60 DA 14 */ add r3, r0, r27 /* 8005BDCC 00057A2C 88 03 00 06 */ lbz r0, 6(r3) /* 8005BDD0 00057A30 28 00 00 01 */ cmplwi r0, 1 /* 8005BDD4 00057A34 40 82 00 24 */ bne lbl_8005BDF8 /* 8005BDD8 00057A38 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 8005BDDC 00057A3C 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005BDE0 00057A40 7C 80 C2 14 */ add r4, r0, r24 /* 8005BDE4 00057A44 48 33 C8 65 */ bl func_80398648 /* 8005BDE8 00057A48 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BDEC 00057A4C 7C 80 DA 14 */ add r4, r0, r27 /* 8005BDF0 00057A50 90 64 00 14 */ stw r3, 0x14(r4) /* 8005BDF4 00057A54 48 00 00 6C */ b lbl_8005BE60 lbl_8005BDF8: /* 8005BDF8 00057A58 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 8005BDFC 00057A5C 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005BE00 00057A60 7C 80 C2 14 */ add r4, r0, r24 /* 8005BE04 00057A64 48 33 C7 DD */ bl func_803985E0 /* 8005BE08 00057A68 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BE0C 00057A6C 7C 80 DA 14 */ add r4, r0, r27 /* 8005BE10 00057A70 90 64 00 14 */ stw r3, 0x14(r4) /* 8005BE14 00057A74 48 00 00 4C */ b lbl_8005BE60 lbl_8005BE18: /* 8005BE18 00057A78 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BE1C 00057A7C 7C 60 DA 14 */ add r3, r0, r27 /* 8005BE20 00057A80 88 03 00 06 */ lbz r0, 6(r3) /* 8005BE24 00057A84 28 00 00 01 */ cmplwi r0, 1 /* 8005BE28 00057A88 40 82 00 20 */ bne lbl_8005BE48 /* 8005BE2C 00057A8C 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005BE30 00057A90 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8005BE34 00057A94 48 33 C8 15 */ bl func_80398648 /* 8005BE38 00057A98 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BE3C 00057A9C 7C 80 DA 14 */ add r4, r0, r27 /* 8005BE40 00057AA0 90 64 00 14 */ stw r3, 0x14(r4) /* 8005BE44 00057AA4 48 00 00 1C */ b lbl_8005BE60 lbl_8005BE48: /* 8005BE48 00057AA8 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005BE4C 00057AAC 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8005BE50 00057AB0 48 33 C7 91 */ bl func_803985E0 /* 8005BE54 00057AB4 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BE58 00057AB8 7C 80 DA 14 */ add r4, r0, r27 /* 8005BE5C 00057ABC 90 64 00 14 */ stw r3, 0x14(r4) lbl_8005BE60: /* 8005BE60 00057AC0 80 77 00 24 */ lwz r3, 0x24(r23) /* 8005BE64 00057AC4 A0 17 00 96 */ lhz r0, 0x96(r23) /* 8005BE68 00057AC8 7C 63 DA 14 */ add r3, r3, r27 /* 8005BE6C 00057ACC 54 00 10 3A */ slwi r0, r0, 2 /* 8005BE70 00057AD0 80 83 00 14 */ lwz r4, 0x14(r3) /* 8005BE74 00057AD4 7C 77 02 14 */ add r3, r23, r0 /* 8005BE78 00057AD8 90 83 00 30 */ stw r4, 0x30(r3) /* 8005BE7C 00057ADC A0 17 00 96 */ lhz r0, 0x96(r23) /* 8005BE80 00057AE0 54 00 08 3C */ slwi r0, r0, 1 /* 8005BE84 00057AE4 7C 77 02 14 */ add r3, r23, r0 /* 8005BE88 00057AE8 B3 23 00 74 */ sth r25, 0x74(r3) /* 8005BE8C 00057AEC A0 77 00 96 */ lhz r3, 0x96(r23) /* 8005BE90 00057AF0 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BE94 00057AF4 38 63 00 01 */ addi r3, r3, 1 /* 8005BE98 00057AF8 B0 77 00 96 */ sth r3, 0x96(r23) /* 8005BE9C 00057AFC 7C 60 DA 14 */ add r3, r0, r27 /* 8005BEA0 00057B00 9B C3 00 0D */ stb r30, 0xd(r3) /* 8005BEA4 00057B04 48 00 01 40 */ b lbl_8005BFE4 lbl_8005BEA8: /* 8005BEA8 00057B08 88 03 00 0C */ lbz r0, 0xc(r3) /* 8005BEAC 00057B0C 2C 00 00 00 */ cmpwi r0, 0 /* 8005BEB0 00057B10 41 82 01 34 */ beq lbl_8005BFE4 /* 8005BEB4 00057B14 80 83 00 14 */ lwz r4, 0x14(r3) /* 8005BEB8 00057B18 38 60 03 E9 */ li r3, 0x3e9 /* 8005BEBC 00057B1C 48 17 F6 01 */ bl func_801DB4BC /* 8005BEC0 00057B20 88 03 00 07 */ lbz r0, 7(r3) /* 8005BEC4 00057B24 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e /* 8005BEC8 00057B28 98 03 00 07 */ stb r0, 7(r3) /* 8005BECC 00057B2C 80 83 00 28 */ lwz r4, 0x28(r3) /* 8005BED0 00057B30 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 8005BED4 00057B34 41 82 00 0C */ beq lbl_8005BEE0 /* 8005BED8 00057B38 7C 03 20 50 */ subf r0, r3, r4 /* 8005BEDC 00057B3C 90 03 00 28 */ stw r0, 0x28(r3) lbl_8005BEE0: /* 8005BEE0 00057B40 80 03 00 08 */ lwz r0, 8(r3) /* 8005BEE4 00057B44 2C 00 00 01 */ cmpwi r0, 1 /* 8005BEE8 00057B48 41 81 00 18 */ bgt lbl_8005BF00 /* 8005BEEC 00057B4C 80 83 00 48 */ lwz r4, 0x48(r3) /* 8005BEF0 00057B50 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 8005BEF4 00057B54 41 82 00 0C */ beq lbl_8005BF00 /* 8005BEF8 00057B58 7C 03 20 50 */ subf r0, r3, r4 /* 8005BEFC 00057B5C 90 03 00 48 */ stw r0, 0x48(r3) lbl_8005BF00: /* 8005BF00 00057B60 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BF04 00057B64 7C 64 1B 78 */ mr r4, r3 /* 8005BF08 00057B68 38 A0 26 80 */ li r5, 0x2680 /* 8005BF0C 00057B6C 7C 60 DA 14 */ add r3, r0, r27 /* 8005BF10 00057B70 80 63 00 08 */ lwz r3, 8(r3) /* 8005BF14 00057B74 4B FA 80 ED */ bl memcpy /* 8005BF18 00057B78 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BF1C 00057B7C 38 60 03 E9 */ li r3, 0x3e9 /* 8005BF20 00057B80 7C 80 DA 14 */ add r4, r0, r27 /* 8005BF24 00057B84 80 84 00 14 */ lwz r4, 0x14(r4) /* 8005BF28 00057B88 48 17 F7 1D */ bl func_801DB644 /* 8005BF2C 00057B8C 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BF30 00057B90 7C 60 DA 14 */ add r3, r0, r27 /* 8005BF34 00057B94 80 63 00 08 */ lwz r3, 8(r3) /* 8005BF38 00057B98 48 1E 17 95 */ bl func_8023D6CC /* 8005BF3C 00057B9C 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8005BF40 00057BA0 7C 78 1B 78 */ mr r24, r3 /* 8005BF44 00057BA4 88 04 00 7A */ lbz r0, 0x7a(r4) /* 8005BF48 00057BA8 2C 00 00 00 */ cmpwi r0, 0 /* 8005BF4C 00057BAC 41 82 00 38 */ beq lbl_8005BF84 /* 8005BF50 00057BB0 2C 03 00 00 */ cmpwi r3, 0 /* 8005BF54 00057BB4 41 82 00 30 */ beq lbl_8005BF84 /* 8005BF58 00057BB8 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8005BF5C 00057BBC 2C 05 00 02 */ cmpwi r5, 2 /* 8005BF60 00057BC0 40 80 00 08 */ bge lbl_8005BF68 /* 8005BF64 00057BC4 38 A0 00 02 */ li r5, 2 lbl_8005BF68: /* 8005BF68 00057BC8 80 98 00 18 */ lwz r4, 0x18(r24) /* 8005BF6C 00057BCC 7F 03 C3 78 */ mr r3, r24 /* 8005BF70 00057BD0 2C 04 00 02 */ cmpwi r4, 2 /* 8005BF74 00057BD4 40 80 00 08 */ bge lbl_8005BF7C /* 8005BF78 00057BD8 38 80 00 02 */ li r4, 2 lbl_8005BF7C: /* 8005BF7C 00057BDC 80 D8 00 20 */ lwz r6, 0x20(r24) /* 8005BF80 00057BE0 48 1E 24 49 */ bl func_8023E3C8 lbl_8005BF84: /* 8005BF84 00057BE4 7F 03 C3 78 */ mr r3, r24 /* 8005BF88 00057BE8 38 80 26 80 */ li r4, 0x2680 /* 8005BF8C 00057BEC 48 20 E6 C9 */ bl DCFlushRange /* 8005BF90 00057BF0 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005BF94 00057BF4 A0 03 16 FE */ lhz r0, 0x16fe(r3) /* 8005BF98 00057BF8 60 00 00 02 */ ori r0, r0, 2 /* 8005BF9C 00057BFC B0 03 16 FE */ sth r0, 0x16fe(r3) /* 8005BFA0 00057C00 80 17 00 24 */ lwz r0, 0x24(r23) /* 8005BFA4 00057C04 7C 60 DA 14 */ add r3, r0, r27 /* 8005BFA8 00057C08 9B E3 00 0D */ stb r31, 0xd(r3) /* 8005BFAC 00057C0C A0 77 00 96 */ lhz r3, 0x96(r23) /* 8005BFB0 00057C10 38 63 FF FF */ addi r3, r3, -1 /* 8005BFB4 00057C14 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8005BFB8 00057C18 B0 77 00 96 */ sth r3, 0x96(r23) /* 8005BFBC 00057C1C 7C 77 02 14 */ add r3, r23, r0 /* 8005BFC0 00057C20 93 83 00 30 */ stw r28, 0x30(r3) /* 8005BFC4 00057C24 A0 17 00 96 */ lhz r0, 0x96(r23) /* 8005BFC8 00057C28 54 00 08 3C */ slwi r0, r0, 1 /* 8005BFCC 00057C2C 7C 77 02 14 */ add r3, r23, r0 /* 8005BFD0 00057C30 B3 83 00 74 */ sth r28, 0x74(r3) /* 8005BFD4 00057C34 A0 17 00 96 */ lhz r0, 0x96(r23) /* 8005BFD8 00057C38 2C 00 00 00 */ cmpwi r0, 0 /* 8005BFDC 00057C3C 40 82 00 08 */ bne lbl_8005BFE4 /* 8005BFE0 00057C40 3B 40 00 01 */ li r26, 1 lbl_8005BFE4: /* 8005BFE4 00057C44 3B 7B 00 28 */ addi r27, r27, 0x28 /* 8005BFE8 00057C48 3B 39 00 01 */ addi r25, r25, 1 lbl_8005BFEC: /* 8005BFEC 00057C4C 80 17 00 28 */ lwz r0, 0x28(r23) /* 8005BFF0 00057C50 7C 19 00 40 */ cmplw r25, r0 /* 8005BFF4 00057C54 41 80 FC F4 */ blt lbl_8005BCE8 /* 8005BFF8 00057C58 88 17 00 98 */ lbz r0, 0x98(r23) /* 8005BFFC 00057C5C 2C 00 00 00 */ cmpwi r0, 0 /* 8005C000 00057C60 40 82 00 3C */ bne lbl_8005C03C /* 8005C004 00057C64 A0 17 00 96 */ lhz r0, 0x96(r23) /* 8005C008 00057C68 2C 00 00 00 */ cmpwi r0, 0 /* 8005C00C 00057C6C 41 82 00 30 */ beq lbl_8005C03C /* 8005C010 00057C70 38 00 00 01 */ li r0, 1 /* 8005C014 00057C74 38 60 03 E9 */ li r3, 0x3e9 /* 8005C018 00057C78 98 17 00 98 */ stb r0, 0x98(r23) /* 8005C01C 00057C7C 48 1E D9 51 */ bl func_8024996C /* 8005C020 00057C80 3C A0 80 06 */ lis r5, lbl_8005BC90@ha /* 8005C024 00057C84 A0 F7 00 96 */ lhz r7, 0x96(r23) /* 8005C028 00057C88 38 97 00 30 */ addi r4, r23, 0x30 /* 8005C02C 00057C8C 38 60 03 E9 */ li r3, 0x3e9 /* 8005C030 00057C90 38 A5 BC 90 */ addi r5, r5, lbl_8005BC90@l /* 8005C034 00057C94 38 C0 00 00 */ li r6, 0 /* 8005C038 00057C98 48 1E D7 85 */ bl func_802497BC lbl_8005C03C: /* 8005C03C 00057C9C 2C 1A 00 00 */ cmpwi r26, 0 /* 8005C040 00057CA0 41 82 00 14 */ beq lbl_8005C054 /* 8005C044 00057CA4 38 60 03 E9 */ li r3, 0x3e9 /* 8005C048 00057CA8 48 1E D9 25 */ bl func_8024996C /* 8005C04C 00057CAC 38 00 00 00 */ li r0, 0 /* 8005C050 00057CB0 98 17 00 98 */ stb r0, 0x98(r23) lbl_8005C054: /* 8005C054 00057CB4 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C058 00057CB8 48 16 B1 09 */ bl _restgpr_22 /* 8005C05C 00057CBC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005C060 00057CC0 7C 08 03 A6 */ mtlr r0 /* 8005C064 00057CC4 38 21 00 30 */ addi r1, r1, 0x30 /* 8005C068 00057CC8 4E 80 00 20 */ blr .global func_8005C06C func_8005C06C: /* 8005C06C 00057CCC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005C070 00057CD0 7C 08 02 A6 */ mflr r0 /* 8005C074 00057CD4 90 01 00 34 */ stw r0, 0x34(r1) /* 8005C078 00057CD8 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C07C 00057CDC 48 16 B0 A5 */ bl _savegpr_25 /* 8005C080 00057CE0 2C 04 00 00 */ cmpwi r4, 0 /* 8005C084 00057CE4 7C 7A 1B 78 */ mr r26, r3 /* 8005C088 00057CE8 7C 9B 23 78 */ mr r27, r4 /* 8005C08C 00057CEC 7C BC 2B 78 */ mr r28, r5 /* 8005C090 00057CF0 7C DD 33 78 */ mr r29, r6 /* 8005C094 00057CF4 3B E0 00 01 */ li r31, 1 /* 8005C098 00057CF8 41 82 00 0C */ beq lbl_8005C0A4 /* 8005C09C 00057CFC 28 04 01 EF */ cmplwi r4, 0x1ef /* 8005C0A0 00057D00 40 81 00 0C */ ble lbl_8005C0AC lbl_8005C0A4: /* 8005C0A4 00057D04 38 60 00 01 */ li r3, 1 /* 8005C0A8 00057D08 48 00 02 34 */ b lbl_8005C2DC lbl_8005C0AC: /* 8005C0AC 00057D0C 80 63 00 A8 */ lwz r3, 0xa8(r3) /* 8005C0B0 00057D10 48 33 A9 7D */ bl func_80396A2C /* 8005C0B4 00057D14 3F 20 80 64 */ lis r25, lbl_8063CE34@ha /* 8005C0B8 00057D18 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005C0BC 00057D1C 3B 39 CE 34 */ addi r25, r25, lbl_8063CE34@l /* 8005C0C0 00057D20 38 79 00 64 */ addi r3, r25, 0x64 /* 8005C0C4 00057D24 48 33 C5 51 */ bl func_80398614 /* 8005C0C8 00057D28 7C 7E 1B 78 */ mr r30, r3 /* 8005C0CC 00057D2C 80 7A 00 A8 */ lwz r3, 0xa8(r26) /* 8005C0D0 00057D30 7F 64 DB 78 */ mr r4, r27 /* 8005C0D4 00057D34 48 33 A9 59 */ bl func_80396A2C /* 8005C0D8 00057D38 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005C0DC 00057D3C 38 79 00 64 */ addi r3, r25, 0x64 /* 8005C0E0 00057D40 48 33 C5 9D */ bl func_8039867C /* 8005C0E4 00057D44 7C 03 F0 40 */ cmplw r3, r30 /* 8005C0E8 00057D48 57 9E 82 1E */ rlwinm r30, r28, 0x10, 8, 0xf /* 8005C0EC 00057D4C 53 7E 04 3E */ rlwimi r30, r27, 0, 0x10, 0x1f /* 8005C0F0 00057D50 40 82 00 08 */ bne lbl_8005C0F8 /* 8005C0F4 00057D54 7F 7E DB 78 */ mr r30, r27 lbl_8005C0F8: /* 8005C0F8 00057D58 2C 1B 01 9E */ cmpwi r27, 0x19e /* 8005C0FC 00057D5C 40 80 00 28 */ bge lbl_8005C124 /* 8005C100 00057D60 2C 1B 01 82 */ cmpwi r27, 0x182 /* 8005C104 00057D64 41 82 00 44 */ beq lbl_8005C148 /* 8005C108 00057D68 40 80 00 10 */ bge lbl_8005C118 /* 8005C10C 00057D6C 2C 1B 00 C9 */ cmpwi r27, 0xc9 /* 8005C110 00057D70 41 82 00 38 */ beq lbl_8005C148 /* 8005C114 00057D74 48 00 00 3C */ b lbl_8005C150 lbl_8005C118: /* 8005C118 00057D78 2C 1B 01 9C */ cmpwi r27, 0x19c /* 8005C11C 00057D7C 40 80 00 2C */ bge lbl_8005C148 /* 8005C120 00057D80 48 00 00 30 */ b lbl_8005C150 lbl_8005C124: /* 8005C124 00057D84 2C 1B 01 ED */ cmpwi r27, 0x1ed /* 8005C128 00057D88 40 80 00 18 */ bge lbl_8005C140 /* 8005C12C 00057D8C 2C 1B 01 A8 */ cmpwi r27, 0x1a8 /* 8005C130 00057D90 40 80 00 20 */ bge lbl_8005C150 /* 8005C134 00057D94 2C 1B 01 A5 */ cmpwi r27, 0x1a5 /* 8005C138 00057D98 40 80 00 10 */ bge lbl_8005C148 /* 8005C13C 00057D9C 48 00 00 14 */ b lbl_8005C150 lbl_8005C140: /* 8005C140 00057DA0 2C 1B 01 EF */ cmpwi r27, 0x1ef /* 8005C144 00057DA4 40 80 00 0C */ bge lbl_8005C150 lbl_8005C148: /* 8005C148 00057DA8 57 A0 90 1A */ slwi r0, r29, 0x12 /* 8005C14C 00057DAC 7F DE 03 78 */ or r30, r30, r0 lbl_8005C150: /* 8005C150 00057DB0 80 BA 00 B0 */ lwz r5, 0xb0(r26) /* 8005C154 00057DB4 38 C0 00 00 */ li r6, 0 /* 8005C158 00057DB8 38 60 00 00 */ li r3, 0 /* 8005C15C 00057DBC 7C A9 03 A6 */ mtctr r5 /* 8005C160 00057DC0 28 05 00 00 */ cmplwi r5, 0 /* 8005C164 00057DC4 40 81 00 38 */ ble lbl_8005C19C lbl_8005C168: /* 8005C168 00057DC8 80 9A 00 AC */ lwz r4, 0xac(r26) /* 8005C16C 00057DCC 7C 04 18 2E */ lwzx r0, r4, r3 /* 8005C170 00057DD0 7C 1E 00 40 */ cmplw r30, r0 /* 8005C174 00057DD4 40 82 00 1C */ bne lbl_8005C190 /* 8005C178 00057DD8 1C 06 00 28 */ mulli r0, r6, 0x28 /* 8005C17C 00057DDC 38 A0 00 02 */ li r5, 2 /* 8005C180 00057DE0 38 60 00 00 */ li r3, 0 /* 8005C184 00057DE4 7C 84 02 14 */ add r4, r4, r0 /* 8005C188 00057DE8 98 A4 00 0E */ stb r5, 0xe(r4) /* 8005C18C 00057DEC 48 00 01 50 */ b lbl_8005C2DC lbl_8005C190: /* 8005C190 00057DF0 38 63 00 28 */ addi r3, r3, 0x28 /* 8005C194 00057DF4 38 C6 00 01 */ addi r6, r6, 1 /* 8005C198 00057DF8 42 00 FF D0 */ bdnz lbl_8005C168 lbl_8005C19C: /* 8005C19C 00057DFC 80 DA 00 B4 */ lwz r6, 0xb4(r26) /* 8005C1A0 00057E00 7C 06 28 50 */ subf r0, r6, r5 /* 8005C1A4 00057E04 7C C7 33 78 */ mr r7, r6 /* 8005C1A8 00057E08 1C 66 00 28 */ mulli r3, r6, 0x28 /* 8005C1AC 00057E0C 7C 09 03 A6 */ mtctr r0 /* 8005C1B0 00057E10 7C 06 28 40 */ cmplw r6, r5 /* 8005C1B4 00057E14 40 80 00 38 */ bge lbl_8005C1EC lbl_8005C1B8: /* 8005C1B8 00057E18 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C1BC 00057E1C 7C 80 1A 14 */ add r4, r0, r3 /* 8005C1C0 00057E20 88 04 00 0E */ lbz r0, 0xe(r4) /* 8005C1C4 00057E24 2C 00 00 00 */ cmpwi r0, 0 /* 8005C1C8 00057E28 40 82 00 18 */ bne lbl_8005C1E0 /* 8005C1CC 00057E2C 88 04 00 0D */ lbz r0, 0xd(r4) /* 8005C1D0 00057E30 28 00 00 02 */ cmplwi r0, 2 /* 8005C1D4 00057E34 41 82 00 0C */ beq lbl_8005C1E0 /* 8005C1D8 00057E38 3B E0 00 00 */ li r31, 0 /* 8005C1DC 00057E3C 48 00 00 10 */ b lbl_8005C1EC lbl_8005C1E0: /* 8005C1E0 00057E40 38 63 00 28 */ addi r3, r3, 0x28 /* 8005C1E4 00057E44 38 E7 00 01 */ addi r7, r7, 1 /* 8005C1E8 00057E48 42 00 FF D0 */ bdnz lbl_8005C1B8 lbl_8005C1EC: /* 8005C1EC 00057E4C 2C 1F 00 00 */ cmpwi r31, 0 /* 8005C1F0 00057E50 41 82 00 4C */ beq lbl_8005C23C /* 8005C1F4 00057E54 38 E0 00 00 */ li r7, 0 /* 8005C1F8 00057E58 38 60 00 00 */ li r3, 0 /* 8005C1FC 00057E5C 7C C9 03 A6 */ mtctr r6 /* 8005C200 00057E60 28 06 00 00 */ cmplwi r6, 0 /* 8005C204 00057E64 40 81 00 38 */ ble lbl_8005C23C lbl_8005C208: /* 8005C208 00057E68 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C20C 00057E6C 7C 80 1A 14 */ add r4, r0, r3 /* 8005C210 00057E70 88 04 00 0E */ lbz r0, 0xe(r4) /* 8005C214 00057E74 2C 00 00 00 */ cmpwi r0, 0 /* 8005C218 00057E78 40 82 00 18 */ bne lbl_8005C230 /* 8005C21C 00057E7C 88 04 00 0D */ lbz r0, 0xd(r4) /* 8005C220 00057E80 28 00 00 02 */ cmplwi r0, 2 /* 8005C224 00057E84 41 82 00 0C */ beq lbl_8005C230 /* 8005C228 00057E88 3B E0 00 00 */ li r31, 0 /* 8005C22C 00057E8C 48 00 00 10 */ b lbl_8005C23C lbl_8005C230: /* 8005C230 00057E90 38 63 00 28 */ addi r3, r3, 0x28 /* 8005C234 00057E94 38 E7 00 01 */ addi r7, r7, 1 /* 8005C238 00057E98 42 00 FF D0 */ bdnz lbl_8005C208 lbl_8005C23C: /* 8005C23C 00057E9C 2C 1F 00 00 */ cmpwi r31, 0 /* 8005C240 00057EA0 41 82 00 0C */ beq lbl_8005C24C /* 8005C244 00057EA4 38 60 00 01 */ li r3, 1 /* 8005C248 00057EA8 48 00 00 94 */ b lbl_8005C2DC lbl_8005C24C: /* 8005C24C 00057EAC 1F E7 00 28 */ mulli r31, r7, 0x28 /* 8005C250 00057EB0 80 7A 00 AC */ lwz r3, 0xac(r26) /* 8005C254 00057EB4 7C 03 F8 2E */ lwzx r0, r3, r31 /* 8005C258 00057EB8 2C 00 00 00 */ cmpwi r0, 0 /* 8005C25C 00057EBC 41 82 00 10 */ beq lbl_8005C26C /* 8005C260 00057EC0 7C 63 FA 14 */ add r3, r3, r31 /* 8005C264 00057EC4 80 63 00 08 */ lwz r3, 8(r3) /* 8005C268 00057EC8 48 1E 20 69 */ bl func_8023E2D0 lbl_8005C26C: /* 8005C26C 00057ECC 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C270 00057ED0 38 A0 00 01 */ li r5, 1 /* 8005C274 00057ED4 38 80 00 02 */ li r4, 2 /* 8005C278 00057ED8 7C 60 FA 14 */ add r3, r0, r31 /* 8005C27C 00057EDC B3 63 00 04 */ sth r27, 4(r3) /* 8005C280 00057EE0 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C284 00057EE4 7C 60 FA 14 */ add r3, r0, r31 /* 8005C288 00057EE8 9B 83 00 06 */ stb r28, 6(r3) /* 8005C28C 00057EEC 80 7A 00 AC */ lwz r3, 0xac(r26) /* 8005C290 00057EF0 7F C3 F9 2E */ stwx r30, r3, r31 /* 8005C294 00057EF4 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C298 00057EF8 7C 60 FA 14 */ add r3, r0, r31 /* 8005C29C 00057EFC 98 A3 00 0D */ stb r5, 0xd(r3) /* 8005C2A0 00057F00 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C2A4 00057F04 7C 60 FA 14 */ add r3, r0, r31 /* 8005C2A8 00057F08 98 83 00 0E */ stb r4, 0xe(r3) /* 8005C2AC 00057F0C 80 1A 00 AC */ lwz r0, 0xac(r26) /* 8005C2B0 00057F10 7C 60 FA 14 */ add r3, r0, r31 /* 8005C2B4 00057F14 B3 A3 00 10 */ sth r29, 0x10(r3) /* 8005C2B8 00057F18 80 7A 00 B4 */ lwz r3, 0xb4(r26) /* 8005C2BC 00057F1C 80 1A 00 B0 */ lwz r0, 0xb0(r26) /* 8005C2C0 00057F20 38 63 00 01 */ addi r3, r3, 1 /* 8005C2C4 00057F24 7C 03 00 40 */ cmplw r3, r0 /* 8005C2C8 00057F28 90 7A 00 B4 */ stw r3, 0xb4(r26) /* 8005C2CC 00057F2C 40 82 00 0C */ bne lbl_8005C2D8 /* 8005C2D0 00057F30 38 00 00 00 */ li r0, 0 /* 8005C2D4 00057F34 90 1A 00 B4 */ stw r0, 0xb4(r26) lbl_8005C2D8: /* 8005C2D8 00057F38 38 60 00 00 */ li r3, 0 lbl_8005C2DC: /* 8005C2DC 00057F3C 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C2E0 00057F40 48 16 AE 8D */ bl _restgpr_25 /* 8005C2E4 00057F44 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005C2E8 00057F48 7C 08 03 A6 */ mtlr r0 /* 8005C2EC 00057F4C 38 21 00 30 */ addi r1, r1, 0x30 /* 8005C2F0 00057F50 4E 80 00 20 */ blr .global func_8005C2F4 func_8005C2F4: /* 8005C2F4 00057F54 94 21 FF 90 */ stwu r1, -0x70(r1) /* 8005C2F8 00057F58 7C 08 02 A6 */ mflr r0 /* 8005C2FC 00057F5C 90 01 00 74 */ stw r0, 0x74(r1) /* 8005C300 00057F60 DB E1 00 60 */ stfd f31, 0x60(r1) /* 8005C304 00057F64 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 /* 8005C308 00057F68 DB C1 00 50 */ stfd f30, 0x50(r1) /* 8005C30C 00057F6C F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8005C310 00057F70 DB A1 00 40 */ stfd f29, 0x40(r1) /* 8005C314 00057F74 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 /* 8005C318 00057F78 DB 81 00 30 */ stfd f28, 0x30(r1) /* 8005C31C 00057F7C F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 8005C320 00057F80 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C324 00057F84 48 16 AD F9 */ bl _savegpr_24 /* 8005C328 00057F88 2C 04 00 00 */ cmpwi r4, 0 /* 8005C32C 00057F8C 7C 7E 1B 78 */ mr r30, r3 /* 8005C330 00057F90 7C 98 23 78 */ mr r24, r4 /* 8005C334 00057F94 7C B9 2B 78 */ mr r25, r5 /* 8005C338 00057F98 7C DA 33 78 */ mr r26, r6 /* 8005C33C 00057F9C 7C FF 3B 78 */ mr r31, r7 /* 8005C340 00057FA0 7D 1B 43 78 */ mr r27, r8 /* 8005C344 00057FA4 41 82 00 0C */ beq lbl_8005C350 /* 8005C348 00057FA8 28 04 01 EF */ cmplwi r4, 0x1ef /* 8005C34C 00057FAC 40 81 00 34 */ ble lbl_8005C380 lbl_8005C350: /* 8005C350 00057FB0 C0 22 85 E0 */ lfs f1, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005C354 00057FB4 38 60 00 00 */ li r3, 0 /* 8005C358 00057FB8 C0 02 85 E4 */ lfs f0, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005C35C 00057FBC D0 27 00 0C */ stfs f1, 0xc(r7) /* 8005C360 00057FC0 D0 27 00 04 */ stfs f1, 4(r7) /* 8005C364 00057FC4 D0 27 00 18 */ stfs f1, 0x18(r7) /* 8005C368 00057FC8 D0 27 00 00 */ stfs f1, 0(r7) /* 8005C36C 00057FCC D0 07 00 1C */ stfs f0, 0x1c(r7) /* 8005C370 00057FD0 D0 07 00 14 */ stfs f0, 0x14(r7) /* 8005C374 00057FD4 D0 07 00 10 */ stfs f0, 0x10(r7) /* 8005C378 00057FD8 D0 07 00 08 */ stfs f0, 8(r7) /* 8005C37C 00057FDC 48 00 01 DC */ b lbl_8005C558 lbl_8005C380: /* 8005C380 00057FE0 80 63 00 A8 */ lwz r3, 0xa8(r3) /* 8005C384 00057FE4 48 33 A6 A9 */ bl func_80396A2C /* 8005C388 00057FE8 3F 80 80 64 */ lis r28, lbl_8063CE34@ha /* 8005C38C 00057FEC 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005C390 00057FF0 3B 9C CE 34 */ addi r28, r28, lbl_8063CE34@l /* 8005C394 00057FF4 38 7C 00 64 */ addi r3, r28, 0x64 /* 8005C398 00057FF8 48 33 C2 7D */ bl func_80398614 /* 8005C39C 00057FFC 7C 7D 1B 78 */ mr r29, r3 /* 8005C3A0 00058000 80 7E 00 A8 */ lwz r3, 0xa8(r30) /* 8005C3A4 00058004 7F 04 C3 78 */ mr r4, r24 /* 8005C3A8 00058008 48 33 A6 85 */ bl func_80396A2C /* 8005C3AC 0005800C 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 8005C3B0 00058010 38 7C 00 64 */ addi r3, r28, 0x64 /* 8005C3B4 00058014 48 33 C2 C9 */ bl func_8039867C /* 8005C3B8 00058018 7C 03 E8 40 */ cmplw r3, r29 /* 8005C3BC 0005801C 57 26 82 1E */ rlwinm r6, r25, 0x10, 8, 0xf /* 8005C3C0 00058020 53 06 04 3E */ rlwimi r6, r24, 0, 0x10, 0x1f /* 8005C3C4 00058024 40 82 00 08 */ bne lbl_8005C3CC /* 8005C3C8 00058028 7F 06 C3 78 */ mr r6, r24 lbl_8005C3CC: /* 8005C3CC 0005802C 2C 18 01 9E */ cmpwi r24, 0x19e /* 8005C3D0 00058030 40 80 00 28 */ bge lbl_8005C3F8 /* 8005C3D4 00058034 2C 18 01 82 */ cmpwi r24, 0x182 /* 8005C3D8 00058038 41 82 00 44 */ beq lbl_8005C41C /* 8005C3DC 0005803C 40 80 00 10 */ bge lbl_8005C3EC /* 8005C3E0 00058040 2C 18 00 C9 */ cmpwi r24, 0xc9 /* 8005C3E4 00058044 41 82 00 38 */ beq lbl_8005C41C /* 8005C3E8 00058048 48 00 00 3C */ b lbl_8005C424 lbl_8005C3EC: /* 8005C3EC 0005804C 2C 18 01 9C */ cmpwi r24, 0x19c /* 8005C3F0 00058050 40 80 00 2C */ bge lbl_8005C41C /* 8005C3F4 00058054 48 00 00 30 */ b lbl_8005C424 lbl_8005C3F8: /* 8005C3F8 00058058 2C 18 01 ED */ cmpwi r24, 0x1ed /* 8005C3FC 0005805C 40 80 00 18 */ bge lbl_8005C414 /* 8005C400 00058060 2C 18 01 A8 */ cmpwi r24, 0x1a8 /* 8005C404 00058064 40 80 00 20 */ bge lbl_8005C424 /* 8005C408 00058068 2C 18 01 A5 */ cmpwi r24, 0x1a5 /* 8005C40C 0005806C 40 80 00 10 */ bge lbl_8005C41C /* 8005C410 00058070 48 00 00 14 */ b lbl_8005C424 lbl_8005C414: /* 8005C414 00058074 2C 18 01 EF */ cmpwi r24, 0x1ef /* 8005C418 00058078 40 80 00 0C */ bge lbl_8005C424 lbl_8005C41C: /* 8005C41C 0005807C 57 60 90 1A */ slwi r0, r27, 0x12 /* 8005C420 00058080 7C C6 03 78 */ or r6, r6, r0 lbl_8005C424: /* 8005C424 00058084 80 1E 00 B0 */ lwz r0, 0xb0(r30) /* 8005C428 00058088 38 A0 00 00 */ li r5, 0 /* 8005C42C 0005808C 38 60 00 00 */ li r3, 0 /* 8005C430 00058090 7C 09 03 A6 */ mtctr r0 /* 8005C434 00058094 28 00 00 00 */ cmplwi r0, 0 /* 8005C438 00058098 40 81 00 F4 */ ble lbl_8005C52C lbl_8005C43C: /* 8005C43C 0005809C 80 9E 00 AC */ lwz r4, 0xac(r30) /* 8005C440 000580A0 7C 04 18 2E */ lwzx r0, r4, r3 /* 8005C444 000580A4 7C 06 00 40 */ cmplw r6, r0 /* 8005C448 000580A8 40 82 00 D8 */ bne lbl_8005C520 /* 8005C44C 000580AC 1F 85 00 28 */ mulli r28, r5, 0x28 /* 8005C450 000580B0 7C 64 E2 14 */ add r3, r4, r28 /* 8005C454 000580B4 88 03 00 0D */ lbz r0, 0xd(r3) /* 8005C458 000580B8 28 00 00 03 */ cmplwi r0, 3 /* 8005C45C 000580BC 40 82 00 84 */ bne lbl_8005C4E0 /* 8005C460 000580C0 C3 A2 85 E0 */ lfs f29, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005C464 000580C4 C3 82 85 E4 */ lfs f28, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005C468 000580C8 FF E0 E8 90 */ fmr f31, f29 /* 8005C46C 000580CC 80 63 00 08 */ lwz r3, 8(r3) /* 8005C470 000580D0 FF C0 E0 90 */ fmr f30, f28 /* 8005C474 000580D4 48 1E 20 D5 */ bl func_8023E548 /* 8005C478 000580D8 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005C47C 000580DC 28 00 00 36 */ cmplwi r0, 0x36 /* 8005C480 000580E0 40 81 00 20 */ ble lbl_8005C4A0 /* 8005C484 000580E4 2C 1A 00 00 */ cmpwi r26, 0 /* 8005C488 000580E8 41 82 00 10 */ beq lbl_8005C498 /* 8005C48C 000580EC C3 A2 85 E8 */ lfs f29, lbl_80640BE8-_SDA2_BASE_(r2) /* 8005C490 000580F0 C3 82 85 E4 */ lfs f28, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005C494 000580F4 48 00 00 0C */ b lbl_8005C4A0 lbl_8005C498: /* 8005C498 000580F8 C3 A2 85 E0 */ lfs f29, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005C49C 000580FC C3 82 85 E8 */ lfs f28, lbl_80640BE8-_SDA2_BASE_(r2) lbl_8005C4A0: /* 8005C4A0 00058100 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 8005C4A4 00058104 38 80 00 02 */ li r4, 2 /* 8005C4A8 00058108 D3 FF 00 00 */ stfs f31, 0(r31) /* 8005C4AC 0005810C D3 DF 00 10 */ stfs f30, 0x10(r31) /* 8005C4B0 00058110 D3 DF 00 08 */ stfs f30, 8(r31) /* 8005C4B4 00058114 D3 BF 00 0C */ stfs f29, 0xc(r31) /* 8005C4B8 00058118 D3 BF 00 04 */ stfs f29, 4(r31) /* 8005C4BC 0005811C D3 9F 00 1C */ stfs f28, 0x1c(r31) /* 8005C4C0 00058120 D3 9F 00 14 */ stfs f28, 0x14(r31) /* 8005C4C4 00058124 80 1E 00 AC */ lwz r0, 0xac(r30) /* 8005C4C8 00058128 7C 60 E2 14 */ add r3, r0, r28 /* 8005C4CC 0005812C 98 83 00 0E */ stb r4, 0xe(r3) /* 8005C4D0 00058130 80 1E 00 AC */ lwz r0, 0xac(r30) /* 8005C4D4 00058134 7C 60 E2 14 */ add r3, r0, r28 /* 8005C4D8 00058138 80 63 00 08 */ lwz r3, 8(r3) /* 8005C4DC 0005813C 48 00 00 7C */ b lbl_8005C558 lbl_8005C4E0: /* 8005C4E0 00058140 C0 22 85 E0 */ lfs f1, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005C4E4 00058144 38 A0 00 02 */ li r5, 2 /* 8005C4E8 00058148 C0 02 85 E4 */ lfs f0, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005C4EC 0005814C 38 60 00 00 */ li r3, 0 /* 8005C4F0 00058150 D0 3F 00 0C */ stfs f1, 0xc(r31) /* 8005C4F4 00058154 D0 3F 00 04 */ stfs f1, 4(r31) /* 8005C4F8 00058158 D0 3F 00 18 */ stfs f1, 0x18(r31) /* 8005C4FC 0005815C D0 3F 00 00 */ stfs f1, 0(r31) /* 8005C500 00058160 D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 8005C504 00058164 D0 1F 00 14 */ stfs f0, 0x14(r31) /* 8005C508 00058168 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 8005C50C 0005816C D0 1F 00 08 */ stfs f0, 8(r31) /* 8005C510 00058170 80 1E 00 AC */ lwz r0, 0xac(r30) /* 8005C514 00058174 7C 80 E2 14 */ add r4, r0, r28 /* 8005C518 00058178 98 A4 00 0E */ stb r5, 0xe(r4) /* 8005C51C 0005817C 48 00 00 3C */ b lbl_8005C558 lbl_8005C520: /* 8005C520 00058180 38 63 00 28 */ addi r3, r3, 0x28 /* 8005C524 00058184 38 A5 00 01 */ addi r5, r5, 1 /* 8005C528 00058188 42 00 FF 14 */ bdnz lbl_8005C43C lbl_8005C52C: /* 8005C52C 0005818C C0 22 85 E0 */ lfs f1, lbl_80640BE0-_SDA2_BASE_(r2) /* 8005C530 00058190 38 60 00 00 */ li r3, 0 /* 8005C534 00058194 C0 02 85 E4 */ lfs f0, lbl_80640BE4-_SDA2_BASE_(r2) /* 8005C538 00058198 D0 3F 00 0C */ stfs f1, 0xc(r31) /* 8005C53C 0005819C D0 3F 00 04 */ stfs f1, 4(r31) /* 8005C540 000581A0 D0 3F 00 18 */ stfs f1, 0x18(r31) /* 8005C544 000581A4 D0 3F 00 00 */ stfs f1, 0(r31) /* 8005C548 000581A8 D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 8005C54C 000581AC D0 1F 00 14 */ stfs f0, 0x14(r31) /* 8005C550 000581B0 D0 1F 00 10 */ stfs f0, 0x10(r31) /* 8005C554 000581B4 D0 1F 00 08 */ stfs f0, 8(r31) lbl_8005C558: /* 8005C558 000581B8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 /* 8005C55C 000581BC CB E1 00 60 */ lfd f31, 0x60(r1) /* 8005C560 000581C0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8005C564 000581C4 CB C1 00 50 */ lfd f30, 0x50(r1) /* 8005C568 000581C8 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 /* 8005C56C 000581CC CB A1 00 40 */ lfd f29, 0x40(r1) /* 8005C570 000581D0 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 8005C574 000581D4 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C578 000581D8 CB 81 00 30 */ lfd f28, 0x30(r1) /* 8005C57C 000581DC 48 16 AB ED */ bl _restgpr_24 /* 8005C580 000581E0 80 01 00 74 */ lwz r0, 0x74(r1) /* 8005C584 000581E4 7C 08 03 A6 */ mtlr r0 /* 8005C588 000581E8 38 21 00 70 */ addi r1, r1, 0x70 /* 8005C58C 000581EC 4E 80 00 20 */ blr lbl_8005C590: /* 8005C590 000581F0 7C 66 1B 78 */ mr r6, r3 /* 8005C594 000581F4 38 E0 00 00 */ li r7, 0 /* 8005C598 000581F8 38 A0 00 01 */ li r5, 1 /* 8005C59C 000581FC 48 00 00 20 */ b lbl_8005C5BC lbl_8005C5A0: /* 8005C5A0 00058200 A0 06 00 FC */ lhz r0, 0xfc(r6) /* 8005C5A4 00058204 38 C6 00 02 */ addi r6, r6, 2 /* 8005C5A8 00058208 80 83 00 AC */ lwz r4, 0xac(r3) /* 8005C5AC 0005820C 38 E7 00 01 */ addi r7, r7, 1 /* 8005C5B0 00058210 1C 00 00 28 */ mulli r0, r0, 0x28 /* 8005C5B4 00058214 7C 84 02 14 */ add r4, r4, r0 /* 8005C5B8 00058218 98 A4 00 0C */ stb r5, 0xc(r4) lbl_8005C5BC: /* 8005C5BC 0005821C A0 03 01 1E */ lhz r0, 0x11e(r3) /* 8005C5C0 00058220 7C 07 00 40 */ cmplw r7, r0 /* 8005C5C4 00058224 41 80 FF DC */ blt lbl_8005C5A0 /* 8005C5C8 00058228 4E 80 00 20 */ blr lbl_8005C5CC: /* 8005C5CC 0005822C 3C 60 80 48 */ lis r3, lbl_80478178@ha /* 8005C5D0 00058230 54 A4 04 3E */ clrlwi r4, r5, 0x10 /* 8005C5D4 00058234 38 63 81 78 */ addi r3, r3, lbl_80478178@l /* 8005C5D8 00058238 4B FF FF B8 */ b lbl_8005C590 .global func_8005C5DC func_8005C5DC: /* 8005C5DC 0005823C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005C5E0 00058240 7C 08 02 A6 */ mflr r0 /* 8005C5E4 00058244 90 01 00 34 */ stw r0, 0x34(r1) /* 8005C5E8 00058248 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C5EC 0005824C 48 16 AB 29 */ bl _savegpr_22 /* 8005C5F0 00058250 88 0D 99 07 */ lbz r0, lbl_8063EBC7-_SDA_BASE_(r13) /* 8005C5F4 00058254 7C 77 1B 78 */ mr r23, r3 /* 8005C5F8 00058258 3B 40 00 00 */ li r26, 0 /* 8005C5FC 0005825C 2C 00 00 00 */ cmpwi r0, 0 /* 8005C600 00058260 41 82 03 90 */ beq lbl_8005C990 /* 8005C604 00058264 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005C608 00058268 3B 20 00 00 */ li r25, 0 /* 8005C60C 0005826C 3B 60 00 00 */ li r27, 0 /* 8005C610 00058270 3B 80 00 00 */ li r28, 0 /* 8005C614 00058274 3B A3 CE 34 */ addi r29, r3, lbl_8063CE34@l /* 8005C618 00058278 3B E0 00 03 */ li r31, 3 /* 8005C61C 0005827C 3B C0 00 02 */ li r30, 2 /* 8005C620 00058280 48 00 03 08 */ b lbl_8005C928 lbl_8005C624: /* 8005C624 00058284 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C628 00058288 7C 80 DA 14 */ add r4, r0, r27 /* 8005C62C 0005828C 7C 1B 00 2E */ lwzx r0, r27, r0 /* 8005C630 00058290 2C 00 00 00 */ cmpwi r0, 0 /* 8005C634 00058294 41 82 02 EC */ beq lbl_8005C920 /* 8005C638 00058298 88 64 00 0E */ lbz r3, 0xe(r4) /* 8005C63C 0005829C 2C 03 00 00 */ cmpwi r3, 0 /* 8005C640 000582A0 41 82 00 0C */ beq lbl_8005C64C /* 8005C644 000582A4 38 03 FF FF */ addi r0, r3, -1 /* 8005C648 000582A8 98 04 00 0E */ stb r0, 0xe(r4) lbl_8005C64C: /* 8005C64C 000582AC 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C650 000582B0 7C 60 DA 14 */ add r3, r0, r27 /* 8005C654 000582B4 88 03 00 0D */ lbz r0, 0xd(r3) /* 8005C658 000582B8 2C 00 00 02 */ cmpwi r0, 2 /* 8005C65C 000582BC 41 82 01 88 */ beq lbl_8005C7E4 /* 8005C660 000582C0 40 80 02 C0 */ bge lbl_8005C920 /* 8005C664 000582C4 2C 00 00 01 */ cmpwi r0, 1 /* 8005C668 000582C8 40 80 00 0C */ bge lbl_8005C674 /* 8005C66C 000582CC 48 00 02 B4 */ b lbl_8005C920 /* 8005C670 000582D0 48 00 02 B0 */ b lbl_8005C920 lbl_8005C674: /* 8005C674 000582D4 88 17 01 20 */ lbz r0, 0x120(r23) /* 8005C678 000582D8 A2 C3 00 04 */ lhz r22, 4(r3) /* 8005C67C 000582DC 2C 00 00 00 */ cmpwi r0, 0 /* 8005C680 000582E0 A3 03 00 10 */ lhz r24, 0x10(r3) /* 8005C684 000582E4 40 82 02 9C */ bne lbl_8005C920 /* 8005C688 000582E8 A0 17 01 1E */ lhz r0, 0x11e(r23) /* 8005C68C 000582EC 28 00 00 10 */ cmplwi r0, 0x10 /* 8005C690 000582F0 40 80 02 90 */ bge lbl_8005C920 /* 8005C694 000582F4 80 77 00 A8 */ lwz r3, 0xa8(r23) /* 8005C698 000582F8 7E C4 B3 78 */ mr r4, r22 /* 8005C69C 000582FC 48 33 A3 91 */ bl func_80396A2C /* 8005C6A0 00058300 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C6A4 00058304 7C 64 1B 78 */ mr r4, r3 /* 8005C6A8 00058308 2C 16 01 9E */ cmpwi r22, 0x19e /* 8005C6AC 0005830C 7C 60 DA 14 */ add r3, r0, r27 /* 8005C6B0 00058310 9B 83 00 0C */ stb r28, 0xc(r3) /* 8005C6B4 00058314 40 80 00 28 */ bge lbl_8005C6DC /* 8005C6B8 00058318 2C 16 01 82 */ cmpwi r22, 0x182 /* 8005C6BC 0005831C 41 82 00 44 */ beq lbl_8005C700 /* 8005C6C0 00058320 40 80 00 10 */ bge lbl_8005C6D0 /* 8005C6C4 00058324 2C 16 00 C9 */ cmpwi r22, 0xc9 /* 8005C6C8 00058328 41 82 00 38 */ beq lbl_8005C700 /* 8005C6CC 0005832C 48 00 00 88 */ b lbl_8005C754 lbl_8005C6D0: /* 8005C6D0 00058330 2C 16 01 9C */ cmpwi r22, 0x19c /* 8005C6D4 00058334 40 80 00 2C */ bge lbl_8005C700 /* 8005C6D8 00058338 48 00 00 7C */ b lbl_8005C754 lbl_8005C6DC: /* 8005C6DC 0005833C 2C 16 01 ED */ cmpwi r22, 0x1ed /* 8005C6E0 00058340 40 80 00 18 */ bge lbl_8005C6F8 /* 8005C6E4 00058344 2C 16 01 A8 */ cmpwi r22, 0x1a8 /* 8005C6E8 00058348 40 80 00 6C */ bge lbl_8005C754 /* 8005C6EC 0005834C 2C 16 01 A5 */ cmpwi r22, 0x1a5 /* 8005C6F0 00058350 40 80 00 10 */ bge lbl_8005C700 /* 8005C6F4 00058354 48 00 00 60 */ b lbl_8005C754 lbl_8005C6F8: /* 8005C6F8 00058358 2C 16 01 EF */ cmpwi r22, 0x1ef /* 8005C6FC 0005835C 40 80 00 58 */ bge lbl_8005C754 lbl_8005C700: /* 8005C700 00058360 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C704 00058364 7C 60 DA 14 */ add r3, r0, r27 /* 8005C708 00058368 88 03 00 06 */ lbz r0, 6(r3) /* 8005C70C 0005836C 28 00 00 01 */ cmplwi r0, 1 /* 8005C710 00058370 40 82 00 24 */ bne lbl_8005C734 /* 8005C714 00058374 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 8005C718 00058378 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005C71C 0005837C 7C 80 C2 14 */ add r4, r0, r24 /* 8005C720 00058380 48 33 BF 5D */ bl func_8039867C /* 8005C724 00058384 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C728 00058388 7C 80 DA 14 */ add r4, r0, r27 /* 8005C72C 0005838C 90 64 00 14 */ stw r3, 0x14(r4) /* 8005C730 00058390 48 00 00 6C */ b lbl_8005C79C lbl_8005C734: /* 8005C734 00058394 54 80 04 3E */ clrlwi r0, r4, 0x10 /* 8005C738 00058398 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005C73C 0005839C 7C 80 C2 14 */ add r4, r0, r24 /* 8005C740 000583A0 48 33 BE D5 */ bl func_80398614 /* 8005C744 000583A4 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C748 000583A8 7C 80 DA 14 */ add r4, r0, r27 /* 8005C74C 000583AC 90 64 00 14 */ stw r3, 0x14(r4) /* 8005C750 000583B0 48 00 00 4C */ b lbl_8005C79C lbl_8005C754: /* 8005C754 000583B4 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C758 000583B8 7C 60 DA 14 */ add r3, r0, r27 /* 8005C75C 000583BC 88 03 00 06 */ lbz r0, 6(r3) /* 8005C760 000583C0 28 00 00 01 */ cmplwi r0, 1 /* 8005C764 000583C4 40 82 00 20 */ bne lbl_8005C784 /* 8005C768 000583C8 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005C76C 000583CC 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8005C770 000583D0 48 33 BF 0D */ bl func_8039867C /* 8005C774 000583D4 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C778 000583D8 7C 80 DA 14 */ add r4, r0, r27 /* 8005C77C 000583DC 90 64 00 14 */ stw r3, 0x14(r4) /* 8005C780 000583E0 48 00 00 1C */ b lbl_8005C79C lbl_8005C784: /* 8005C784 000583E4 38 7D 00 64 */ addi r3, r29, 0x64 /* 8005C788 000583E8 54 84 04 3E */ clrlwi r4, r4, 0x10 /* 8005C78C 000583EC 48 33 BE 89 */ bl func_80398614 /* 8005C790 000583F0 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C794 000583F4 7C 80 DA 14 */ add r4, r0, r27 /* 8005C798 000583F8 90 64 00 14 */ stw r3, 0x14(r4) lbl_8005C79C: /* 8005C79C 000583FC 80 77 00 AC */ lwz r3, 0xac(r23) /* 8005C7A0 00058400 A0 17 01 1E */ lhz r0, 0x11e(r23) /* 8005C7A4 00058404 7C 63 DA 14 */ add r3, r3, r27 /* 8005C7A8 00058408 54 00 10 3A */ slwi r0, r0, 2 /* 8005C7AC 0005840C 80 83 00 14 */ lwz r4, 0x14(r3) /* 8005C7B0 00058410 7C 77 02 14 */ add r3, r23, r0 /* 8005C7B4 00058414 90 83 00 B8 */ stw r4, 0xb8(r3) /* 8005C7B8 00058418 A0 17 01 1E */ lhz r0, 0x11e(r23) /* 8005C7BC 0005841C 54 00 08 3C */ slwi r0, r0, 1 /* 8005C7C0 00058420 7C 77 02 14 */ add r3, r23, r0 /* 8005C7C4 00058424 B3 23 00 FC */ sth r25, 0xfc(r3) /* 8005C7C8 00058428 A0 77 01 1E */ lhz r3, 0x11e(r23) /* 8005C7CC 0005842C 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C7D0 00058430 38 63 00 01 */ addi r3, r3, 1 /* 8005C7D4 00058434 B0 77 01 1E */ sth r3, 0x11e(r23) /* 8005C7D8 00058438 7C 60 DA 14 */ add r3, r0, r27 /* 8005C7DC 0005843C 9B C3 00 0D */ stb r30, 0xd(r3) /* 8005C7E0 00058440 48 00 01 40 */ b lbl_8005C920 lbl_8005C7E4: /* 8005C7E4 00058444 88 03 00 0C */ lbz r0, 0xc(r3) /* 8005C7E8 00058448 2C 00 00 00 */ cmpwi r0, 0 /* 8005C7EC 0005844C 41 82 01 34 */ beq lbl_8005C920 /* 8005C7F0 00058450 80 83 00 14 */ lwz r4, 0x14(r3) /* 8005C7F4 00058454 38 60 03 EE */ li r3, 0x3ee /* 8005C7F8 00058458 48 17 EC C5 */ bl func_801DB4BC /* 8005C7FC 0005845C 88 03 00 07 */ lbz r0, 7(r3) /* 8005C800 00058460 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e /* 8005C804 00058464 98 03 00 07 */ stb r0, 7(r3) /* 8005C808 00058468 80 83 00 28 */ lwz r4, 0x28(r3) /* 8005C80C 0005846C 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 8005C810 00058470 41 82 00 0C */ beq lbl_8005C81C /* 8005C814 00058474 7C 03 20 50 */ subf r0, r3, r4 /* 8005C818 00058478 90 03 00 28 */ stw r0, 0x28(r3) lbl_8005C81C: /* 8005C81C 0005847C 80 03 00 08 */ lwz r0, 8(r3) /* 8005C820 00058480 2C 00 00 01 */ cmpwi r0, 1 /* 8005C824 00058484 41 81 00 18 */ bgt lbl_8005C83C /* 8005C828 00058488 80 83 00 48 */ lwz r4, 0x48(r3) /* 8005C82C 0005848C 54 80 00 01 */ rlwinm. r0, r4, 0, 0, 0 /* 8005C830 00058490 41 82 00 0C */ beq lbl_8005C83C /* 8005C834 00058494 7C 03 20 50 */ subf r0, r3, r4 /* 8005C838 00058498 90 03 00 48 */ stw r0, 0x48(r3) lbl_8005C83C: /* 8005C83C 0005849C 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C840 000584A0 7C 64 1B 78 */ mr r4, r3 /* 8005C844 000584A4 38 A0 31 C0 */ li r5, 0x31c0 /* 8005C848 000584A8 7C 60 DA 14 */ add r3, r0, r27 /* 8005C84C 000584AC 80 63 00 08 */ lwz r3, 8(r3) /* 8005C850 000584B0 4B FA 77 B1 */ bl memcpy /* 8005C854 000584B4 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C858 000584B8 38 60 03 EE */ li r3, 0x3ee /* 8005C85C 000584BC 7C 80 DA 14 */ add r4, r0, r27 /* 8005C860 000584C0 80 84 00 14 */ lwz r4, 0x14(r4) /* 8005C864 000584C4 48 17 ED E1 */ bl func_801DB644 /* 8005C868 000584C8 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C86C 000584CC 7C 60 DA 14 */ add r3, r0, r27 /* 8005C870 000584D0 80 63 00 08 */ lwz r3, 8(r3) /* 8005C874 000584D4 48 1E 0E 59 */ bl func_8023D6CC /* 8005C878 000584D8 80 8D A3 D8 */ lwz r4, lbl_8063F698-_SDA_BASE_(r13) /* 8005C87C 000584DC 7C 78 1B 78 */ mr r24, r3 /* 8005C880 000584E0 88 04 00 7A */ lbz r0, 0x7a(r4) /* 8005C884 000584E4 2C 00 00 00 */ cmpwi r0, 0 /* 8005C888 000584E8 41 82 00 38 */ beq lbl_8005C8C0 /* 8005C88C 000584EC 2C 03 00 00 */ cmpwi r3, 0 /* 8005C890 000584F0 41 82 00 30 */ beq lbl_8005C8C0 /* 8005C894 000584F4 80 A3 00 1C */ lwz r5, 0x1c(r3) /* 8005C898 000584F8 2C 05 00 02 */ cmpwi r5, 2 /* 8005C89C 000584FC 40 80 00 08 */ bge lbl_8005C8A4 /* 8005C8A0 00058500 38 A0 00 02 */ li r5, 2 lbl_8005C8A4: /* 8005C8A4 00058504 80 98 00 18 */ lwz r4, 0x18(r24) /* 8005C8A8 00058508 7F 03 C3 78 */ mr r3, r24 /* 8005C8AC 0005850C 2C 04 00 02 */ cmpwi r4, 2 /* 8005C8B0 00058510 40 80 00 08 */ bge lbl_8005C8B8 /* 8005C8B4 00058514 38 80 00 02 */ li r4, 2 lbl_8005C8B8: /* 8005C8B8 00058518 80 D8 00 20 */ lwz r6, 0x20(r24) /* 8005C8BC 0005851C 48 1E 1B 0D */ bl func_8023E3C8 lbl_8005C8C0: /* 8005C8C0 00058520 7F 03 C3 78 */ mr r3, r24 /* 8005C8C4 00058524 38 80 31 C0 */ li r4, 0x31c0 /* 8005C8C8 00058528 48 20 DD 8D */ bl DCFlushRange /* 8005C8CC 0005852C 80 6D A3 D8 */ lwz r3, lbl_8063F698-_SDA_BASE_(r13) /* 8005C8D0 00058530 A0 03 16 FE */ lhz r0, 0x16fe(r3) /* 8005C8D4 00058534 60 00 00 02 */ ori r0, r0, 2 /* 8005C8D8 00058538 B0 03 16 FE */ sth r0, 0x16fe(r3) /* 8005C8DC 0005853C 80 17 00 AC */ lwz r0, 0xac(r23) /* 8005C8E0 00058540 7C 60 DA 14 */ add r3, r0, r27 /* 8005C8E4 00058544 9B E3 00 0D */ stb r31, 0xd(r3) /* 8005C8E8 00058548 A0 77 01 1E */ lhz r3, 0x11e(r23) /* 8005C8EC 0005854C 38 63 FF FF */ addi r3, r3, -1 /* 8005C8F0 00058550 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d /* 8005C8F4 00058554 B0 77 01 1E */ sth r3, 0x11e(r23) /* 8005C8F8 00058558 7C 77 02 14 */ add r3, r23, r0 /* 8005C8FC 0005855C 93 83 00 B8 */ stw r28, 0xb8(r3) /* 8005C900 00058560 A0 17 01 1E */ lhz r0, 0x11e(r23) /* 8005C904 00058564 54 00 08 3C */ slwi r0, r0, 1 /* 8005C908 00058568 7C 77 02 14 */ add r3, r23, r0 /* 8005C90C 0005856C B3 83 00 FC */ sth r28, 0xfc(r3) /* 8005C910 00058570 A0 17 01 1E */ lhz r0, 0x11e(r23) /* 8005C914 00058574 2C 00 00 00 */ cmpwi r0, 0 /* 8005C918 00058578 40 82 00 08 */ bne lbl_8005C920 /* 8005C91C 0005857C 3B 40 00 01 */ li r26, 1 lbl_8005C920: /* 8005C920 00058580 3B 7B 00 28 */ addi r27, r27, 0x28 /* 8005C924 00058584 3B 39 00 01 */ addi r25, r25, 1 lbl_8005C928: /* 8005C928 00058588 80 17 00 B0 */ lwz r0, 0xb0(r23) /* 8005C92C 0005858C 7C 19 00 40 */ cmplw r25, r0 /* 8005C930 00058590 41 80 FC F4 */ blt lbl_8005C624 /* 8005C934 00058594 88 17 01 20 */ lbz r0, 0x120(r23) /* 8005C938 00058598 2C 00 00 00 */ cmpwi r0, 0 /* 8005C93C 0005859C 40 82 00 3C */ bne lbl_8005C978 /* 8005C940 000585A0 A0 17 01 1E */ lhz r0, 0x11e(r23) /* 8005C944 000585A4 2C 00 00 00 */ cmpwi r0, 0 /* 8005C948 000585A8 41 82 00 30 */ beq lbl_8005C978 /* 8005C94C 000585AC 38 00 00 01 */ li r0, 1 /* 8005C950 000585B0 38 60 03 EE */ li r3, 0x3ee /* 8005C954 000585B4 98 17 01 20 */ stb r0, 0x120(r23) /* 8005C958 000585B8 48 1E D0 15 */ bl func_8024996C /* 8005C95C 000585BC 3C A0 80 06 */ lis r5, lbl_8005C5CC@ha /* 8005C960 000585C0 A0 F7 01 1E */ lhz r7, 0x11e(r23) /* 8005C964 000585C4 38 97 00 B8 */ addi r4, r23, 0xb8 /* 8005C968 000585C8 38 60 03 EE */ li r3, 0x3ee /* 8005C96C 000585CC 38 A5 C5 CC */ addi r5, r5, lbl_8005C5CC@l /* 8005C970 000585D0 38 C0 00 00 */ li r6, 0 /* 8005C974 000585D4 48 1E CE 49 */ bl func_802497BC lbl_8005C978: /* 8005C978 000585D8 2C 1A 00 00 */ cmpwi r26, 0 /* 8005C97C 000585DC 41 82 00 14 */ beq lbl_8005C990 /* 8005C980 000585E0 38 60 03 EE */ li r3, 0x3ee /* 8005C984 000585E4 48 1E CF E9 */ bl func_8024996C /* 8005C988 000585E8 38 00 00 00 */ li r0, 0 /* 8005C98C 000585EC 98 17 01 20 */ stb r0, 0x120(r23) lbl_8005C990: /* 8005C990 000585F0 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C994 000585F4 48 16 A7 CD */ bl _restgpr_22 /* 8005C998 000585F8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005C99C 000585FC 7C 08 03 A6 */ mtlr r0 /* 8005C9A0 00058600 38 21 00 30 */ addi r1, r1, 0x30 /* 8005C9A4 00058604 4E 80 00 20 */ blr .global func_8005C9A8 func_8005C9A8: /* 8005C9A8 00058608 3C A0 80 48 */ lis r5, lbl_80478178@ha /* 8005C9AC 0005860C 7C 64 1B 78 */ mr r4, r3 /* 8005C9B0 00058610 38 65 81 78 */ addi r3, r5, lbl_80478178@l /* 8005C9B4 00058614 4B FF EA F0 */ b lbl_8005B4A4 .global func_8005C9B8 func_8005C9B8: /* 8005C9B8 00058618 3C A0 80 48 */ lis r5, lbl_80478178@ha /* 8005C9BC 0005861C 7C 64 1B 78 */ mr r4, r3 /* 8005C9C0 00058620 38 65 81 78 */ addi r3, r5, lbl_80478178@l /* 8005C9C4 00058624 4B FF EB F8 */ b lbl_8005B5BC lbl_8005C9C8: /* 8005C9C8 00058628 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005C9CC 0005862C 7C 08 02 A6 */ mflr r0 /* 8005C9D0 00058630 90 01 00 14 */ stw r0, 0x14(r1) /* 8005C9D4 00058634 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005C9D8 00058638 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005C9DC 0005863C 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005C9E0 00058640 4B FF F2 C1 */ bl func_8005BCA0 /* 8005C9E4 00058644 38 7F 81 78 */ addi r3, r31, -32392 /* 8005C9E8 00058648 4B FF FB F5 */ bl func_8005C5DC /* 8005C9EC 0005864C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005C9F0 00058650 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005C9F4 00058654 7C 08 03 A6 */ mtlr r0 /* 8005C9F8 00058658 38 21 00 10 */ addi r1, r1, 0x10 /* 8005C9FC 0005865C 4E 80 00 20 */ blr .global func_8005CA00 func_8005CA00: /* 8005CA00 00058660 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005CA04 00058664 7C 08 02 A6 */ mflr r0 /* 8005CA08 00058668 90 01 00 24 */ stw r0, 0x24(r1) /* 8005CA0C 0005866C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8005CA10 00058670 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005CA14 00058674 93 A1 00 14 */ stw r29, 0x14(r1) /* 8005CA18 00058678 93 81 00 10 */ stw r28, 0x10(r1) /* 8005CA1C 0005867C 7C 7C 1B 78 */ mr r28, r3 /* 8005CA20 00058680 4B FF A1 B5 */ bl func_80056BD4 /* 8005CA24 00058684 2C 03 00 00 */ cmpwi r3, 0 /* 8005CA28 00058688 40 82 00 20 */ bne lbl_8005CA48 /* 8005CA2C 0005868C 3C 60 80 48 */ lis r3, lbl_80478178@ha /* 8005CA30 00058690 38 80 00 00 */ li r4, 0 /* 8005CA34 00058694 38 63 81 78 */ addi r3, r3, lbl_80478178@l /* 8005CA38 00058698 38 A0 00 00 */ li r5, 0 /* 8005CA3C 0005869C 38 C0 00 00 */ li r6, 0 /* 8005CA40 000586A0 4B FF EC 95 */ bl func_8005B6D4 /* 8005CA44 000586A4 48 00 00 C0 */ b lbl_8005CB04 lbl_8005CA48: /* 8005CA48 000586A8 7F 83 E3 78 */ mr r3, r28 /* 8005CA4C 000586AC 38 80 00 05 */ li r4, 5 /* 8005CA50 000586B0 38 A0 00 00 */ li r5, 0 /* 8005CA54 000586B4 48 37 E4 A9 */ bl func_803DAEFC /* 8005CA58 000586B8 54 7F 04 3E */ clrlwi r31, r3, 0x10 /* 8005CA5C 000586BC 7F 83 E3 78 */ mr r3, r28 /* 8005CA60 000586C0 38 80 00 6F */ li r4, 0x6f /* 8005CA64 000586C4 38 A0 00 00 */ li r5, 0 /* 8005CA68 000586C8 48 37 E4 95 */ bl func_803DAEFC /* 8005CA6C 000586CC 54 7E 06 3E */ clrlwi r30, r3, 0x18 /* 8005CA70 000586D0 7F 83 E3 78 */ mr r3, r28 /* 8005CA74 000586D4 4B FF A3 B9 */ bl func_80056E2C /* 8005CA78 000586D8 2C 03 00 00 */ cmpwi r3, 0 /* 8005CA7C 000586DC 41 82 00 18 */ beq lbl_8005CA94 /* 8005CA80 000586E0 28 1F 01 EA */ cmplwi r31, 0x1ea /* 8005CA84 000586E4 3B A0 00 00 */ li r29, 0 /* 8005CA88 000586E8 40 82 00 08 */ bne lbl_8005CA90 /* 8005CA8C 000586EC 3B A0 00 01 */ li r29, 1 lbl_8005CA90: /* 8005CA90 000586F0 3B E0 01 EE */ li r31, 0x1ee lbl_8005CA94: /* 8005CA94 000586F4 2C 1F 01 EE */ cmpwi r31, 0x1ee /* 8005CA98 000586F8 41 82 00 18 */ beq lbl_8005CAB0 /* 8005CA9C 000586FC 7F 83 E3 78 */ mr r3, r28 /* 8005CAA0 00058700 38 80 00 70 */ li r4, 0x70 /* 8005CAA4 00058704 38 A0 00 00 */ li r5, 0 /* 8005CAA8 00058708 48 37 E4 55 */ bl func_803DAEFC /* 8005CAAC 0005870C 54 7D 04 3E */ clrlwi r29, r3, 0x10 lbl_8005CAB0: /* 8005CAB0 00058710 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005CAB4 00058714 7F E4 FB 78 */ mr r4, r31 /* 8005CAB8 00058718 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8005CABC 0005871C 38 63 00 04 */ addi r3, r3, 4 /* 8005CAC0 00058720 48 33 3E 91 */ bl func_80390950 /* 8005CAC4 00058724 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005CAC8 00058728 7C 1D 00 40 */ cmplw r29, r0 /* 8005CACC 0005872C 41 80 00 20 */ blt lbl_8005CAEC /* 8005CAD0 00058730 3C 60 80 48 */ lis r3, lbl_80478178@ha /* 8005CAD4 00058734 38 80 00 00 */ li r4, 0 /* 8005CAD8 00058738 38 63 81 78 */ addi r3, r3, lbl_80478178@l /* 8005CADC 0005873C 38 A0 00 00 */ li r5, 0 /* 8005CAE0 00058740 38 C0 00 00 */ li r6, 0 /* 8005CAE4 00058744 4B FF EB F1 */ bl func_8005B6D4 /* 8005CAE8 00058748 48 00 00 1C */ b lbl_8005CB04 lbl_8005CAEC: /* 8005CAEC 0005874C 3C 60 80 48 */ lis r3, lbl_80478178@ha /* 8005CAF0 00058750 7F E4 FB 78 */ mr r4, r31 /* 8005CAF4 00058754 7F C5 F3 78 */ mr r5, r30 /* 8005CAF8 00058758 7F A6 EB 78 */ mr r6, r29 /* 8005CAFC 0005875C 38 63 81 78 */ addi r3, r3, lbl_80478178@l /* 8005CB00 00058760 4B FF EB D5 */ bl func_8005B6D4 lbl_8005CB04: /* 8005CB04 00058764 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005CB08 00058768 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005CB0C 0005876C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005CB10 00058770 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8005CB14 00058774 83 81 00 10 */ lwz r28, 0x10(r1) /* 8005CB18 00058778 7C 08 03 A6 */ mtlr r0 /* 8005CB1C 0005877C 38 21 00 20 */ addi r1, r1, 0x20 /* 8005CB20 00058780 4E 80 00 20 */ blr .global func_8005CB24 func_8005CB24: /* 8005CB24 00058784 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005CB28 00058788 7C 08 02 A6 */ mflr r0 /* 8005CB2C 0005878C 90 01 00 34 */ stw r0, 0x34(r1) /* 8005CB30 00058790 39 61 00 30 */ addi r11, r1, 0x30 /* 8005CB34 00058794 48 16 A5 E9 */ bl _savegpr_24 /* 8005CB38 00058798 7C 78 1B 78 */ mr r24, r3 /* 8005CB3C 0005879C 7C 99 23 78 */ mr r25, r4 /* 8005CB40 000587A0 7C BA 2B 78 */ mr r26, r5 /* 8005CB44 000587A4 4B FF A0 91 */ bl func_80056BD4 /* 8005CB48 000587A8 2C 03 00 00 */ cmpwi r3, 0 /* 8005CB4C 000587AC 40 82 00 40 */ bne lbl_8005CB8C /* 8005CB50 000587B0 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005CB54 000587B4 38 80 00 00 */ li r4, 0 /* 8005CB58 000587B8 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005CB5C 000587BC 38 A0 00 00 */ li r5, 0 /* 8005CB60 000587C0 38 C0 00 00 */ li r6, 0 /* 8005CB64 000587C4 4B FF EB 71 */ bl func_8005B6D4 /* 8005CB68 000587C8 7F 48 D3 78 */ mr r8, r26 /* 8005CB6C 000587CC 38 7F 81 78 */ addi r3, r31, -32392 /* 8005CB70 000587D0 38 80 00 00 */ li r4, 0 /* 8005CB74 000587D4 38 A0 00 00 */ li r5, 0 /* 8005CB78 000587D8 38 C0 00 00 */ li r6, 0 /* 8005CB7C 000587DC 38 E0 00 00 */ li r7, 0 /* 8005CB80 000587E0 39 20 00 00 */ li r9, 0 /* 8005CB84 000587E4 4B FF ED D9 */ bl func_8005B95C /* 8005CB88 000587E8 48 00 01 34 */ b lbl_8005CCBC lbl_8005CB8C: /* 8005CB8C 000587EC 7F 03 C3 78 */ mr r3, r24 /* 8005CB90 000587F0 38 80 00 05 */ li r4, 5 /* 8005CB94 000587F4 38 A0 00 00 */ li r5, 0 /* 8005CB98 000587F8 48 37 E3 65 */ bl func_803DAEFC /* 8005CB9C 000587FC 54 7E 04 3E */ clrlwi r30, r3, 0x10 /* 8005CBA0 00058800 7F 03 C3 78 */ mr r3, r24 /* 8005CBA4 00058804 38 80 00 6F */ li r4, 0x6f /* 8005CBA8 00058808 38 A0 00 00 */ li r5, 0 /* 8005CBAC 0005880C 48 37 E3 51 */ bl func_803DAEFC /* 8005CBB0 00058810 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8005CBB4 00058814 7F 03 C3 78 */ mr r3, r24 /* 8005CBB8 00058818 3B 80 00 00 */ li r28, 0 /* 8005CBBC 0005881C 4B FF A2 71 */ bl func_80056E2C /* 8005CBC0 00058820 2C 03 00 00 */ cmpwi r3, 0 /* 8005CBC4 00058824 41 82 00 20 */ beq lbl_8005CBE4 /* 8005CBC8 00058828 28 1E 01 EA */ cmplwi r30, 0x1ea /* 8005CBCC 0005882C 3B 60 00 00 */ li r27, 0 /* 8005CBD0 00058830 40 82 00 08 */ bne lbl_8005CBD8 /* 8005CBD4 00058834 3B 60 00 01 */ li r27, 1 lbl_8005CBD8: /* 8005CBD8 00058838 3B A0 00 02 */ li r29, 2 /* 8005CBDC 0005883C 3B C0 01 EE */ li r30, 0x1ee /* 8005CBE0 00058840 48 00 00 2C */ b lbl_8005CC0C lbl_8005CBE4: /* 8005CBE4 00058844 3F E0 80 48 */ lis r31, lbl_804782A8@ha /* 8005CBE8 00058848 7F 03 C3 78 */ mr r3, r24 /* 8005CBEC 0005884C 38 9F 82 A8 */ addi r4, r31, lbl_804782A8@l /* 8005CBF0 00058850 48 37 FB 59 */ bl func_803DC748 /* 8005CBF4 00058854 38 7F 82 A8 */ addi r3, r31, -32088 /* 8005CBF8 00058858 48 37 F4 D9 */ bl func_803DC0D0 /* 8005CBFC 0005885C 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8005CC00 00058860 7C 03 00 D0 */ neg r0, r3 /* 8005CC04 00058864 7C 00 1B 78 */ or r0, r0, r3 /* 8005CC08 00058868 54 1C 0F FE */ srwi r28, r0, 0x1f lbl_8005CC0C: /* 8005CC0C 0005886C 2C 1E 01 EE */ cmpwi r30, 0x1ee /* 8005CC10 00058870 41 82 00 18 */ beq lbl_8005CC28 /* 8005CC14 00058874 7F 03 C3 78 */ mr r3, r24 /* 8005CC18 00058878 38 80 00 70 */ li r4, 0x70 /* 8005CC1C 0005887C 38 A0 00 00 */ li r5, 0 /* 8005CC20 00058880 48 37 E2 DD */ bl func_803DAEFC /* 8005CC24 00058884 54 7B 04 3E */ clrlwi r27, r3, 0x10 lbl_8005CC28: /* 8005CC28 00058888 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005CC2C 0005888C 7F C4 F3 78 */ mr r4, r30 /* 8005CC30 00058890 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8005CC34 00058894 38 63 00 04 */ addi r3, r3, 4 /* 8005CC38 00058898 48 33 3D 19 */ bl func_80390950 /* 8005CC3C 0005889C 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005CC40 000588A0 7C 1B 00 40 */ cmplw r27, r0 /* 8005CC44 000588A4 41 80 00 40 */ blt lbl_8005CC84 /* 8005CC48 000588A8 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005CC4C 000588AC 38 80 00 00 */ li r4, 0 /* 8005CC50 000588B0 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005CC54 000588B4 38 A0 00 00 */ li r5, 0 /* 8005CC58 000588B8 38 C0 00 00 */ li r6, 0 /* 8005CC5C 000588BC 4B FF EA 79 */ bl func_8005B6D4 /* 8005CC60 000588C0 7F 48 D3 78 */ mr r8, r26 /* 8005CC64 000588C4 38 7F 81 78 */ addi r3, r31, -32392 /* 8005CC68 000588C8 38 80 00 00 */ li r4, 0 /* 8005CC6C 000588CC 38 A0 00 00 */ li r5, 0 /* 8005CC70 000588D0 38 C0 00 00 */ li r6, 0 /* 8005CC74 000588D4 38 E0 00 00 */ li r7, 0 /* 8005CC78 000588D8 39 20 00 00 */ li r9, 0 /* 8005CC7C 000588DC 4B FF EC E1 */ bl func_8005B95C /* 8005CC80 000588E0 48 00 00 3C */ b lbl_8005CCBC lbl_8005CC84: /* 8005CC84 000588E4 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005CC88 000588E8 7F C4 F3 78 */ mr r4, r30 /* 8005CC8C 000588EC 7F A5 EB 78 */ mr r5, r29 /* 8005CC90 000588F0 7F 66 DB 78 */ mr r6, r27 /* 8005CC94 000588F4 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005CC98 000588F8 4B FF EA 3D */ bl func_8005B6D4 /* 8005CC9C 000588FC 7F C4 F3 78 */ mr r4, r30 /* 8005CCA0 00058900 7F A5 EB 78 */ mr r5, r29 /* 8005CCA4 00058904 7F 86 E3 78 */ mr r6, r28 /* 8005CCA8 00058908 7F 27 CB 78 */ mr r7, r25 /* 8005CCAC 0005890C 7F 48 D3 78 */ mr r8, r26 /* 8005CCB0 00058910 7F 69 DB 78 */ mr r9, r27 /* 8005CCB4 00058914 38 7F 81 78 */ addi r3, r31, -32392 /* 8005CCB8 00058918 4B FF EC A5 */ bl func_8005B95C lbl_8005CCBC: /* 8005CCBC 0005891C 39 61 00 30 */ addi r11, r1, 0x30 /* 8005CCC0 00058920 48 16 A4 A9 */ bl _restgpr_24 /* 8005CCC4 00058924 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005CCC8 00058928 7C 08 03 A6 */ mtlr r0 /* 8005CCCC 0005892C 38 21 00 30 */ addi r1, r1, 0x30 /* 8005CCD0 00058930 4E 80 00 20 */ blr .global func_8005CCD4 func_8005CCD4: /* 8005CCD4 00058934 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005CCD8 00058938 7C 08 02 A6 */ mflr r0 /* 8005CCDC 0005893C 90 01 00 34 */ stw r0, 0x34(r1) /* 8005CCE0 00058940 39 61 00 30 */ addi r11, r1, 0x30 /* 8005CCE4 00058944 48 16 A4 3D */ bl _savegpr_25 /* 8005CCE8 00058948 7C 79 1B 78 */ mr r25, r3 /* 8005CCEC 0005894C 7C BA 2B 78 */ mr r26, r5 /* 8005CCF0 00058950 4B FF 9E E5 */ bl func_80056BD4 /* 8005CCF4 00058954 2C 03 00 00 */ cmpwi r3, 0 /* 8005CCF8 00058958 40 82 00 3C */ bne lbl_8005CD34 /* 8005CCFC 0005895C 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005CD00 00058960 38 80 00 00 */ li r4, 0 /* 8005CD04 00058964 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005CD08 00058968 38 A0 00 00 */ li r5, 0 /* 8005CD0C 0005896C 38 C0 00 00 */ li r6, 0 /* 8005CD10 00058970 4B FF F3 5D */ bl func_8005C06C /* 8005CD14 00058974 7F 47 D3 78 */ mr r7, r26 /* 8005CD18 00058978 38 7F 81 78 */ addi r3, r31, -32392 /* 8005CD1C 0005897C 38 80 00 00 */ li r4, 0 /* 8005CD20 00058980 38 A0 00 00 */ li r5, 0 /* 8005CD24 00058984 38 C0 00 00 */ li r6, 0 /* 8005CD28 00058988 39 00 00 00 */ li r8, 0 /* 8005CD2C 0005898C 4B FF F5 C9 */ bl func_8005C2F4 /* 8005CD30 00058990 48 00 01 2C */ b lbl_8005CE5C lbl_8005CD34: /* 8005CD34 00058994 7F 23 CB 78 */ mr r3, r25 /* 8005CD38 00058998 38 80 00 05 */ li r4, 5 /* 8005CD3C 0005899C 38 A0 00 00 */ li r5, 0 /* 8005CD40 000589A0 48 37 E1 BD */ bl func_803DAEFC /* 8005CD44 000589A4 54 7E 04 3E */ clrlwi r30, r3, 0x10 /* 8005CD48 000589A8 7F 23 CB 78 */ mr r3, r25 /* 8005CD4C 000589AC 38 80 00 6F */ li r4, 0x6f /* 8005CD50 000589B0 38 A0 00 00 */ li r5, 0 /* 8005CD54 000589B4 48 37 E1 A9 */ bl func_803DAEFC /* 8005CD58 000589B8 54 7D 06 3E */ clrlwi r29, r3, 0x18 /* 8005CD5C 000589BC 7F 23 CB 78 */ mr r3, r25 /* 8005CD60 000589C0 3B 80 00 00 */ li r28, 0 /* 8005CD64 000589C4 4B FF A0 C9 */ bl func_80056E2C /* 8005CD68 000589C8 2C 03 00 00 */ cmpwi r3, 0 /* 8005CD6C 000589CC 41 82 00 20 */ beq lbl_8005CD8C /* 8005CD70 000589D0 28 1E 01 EA */ cmplwi r30, 0x1ea /* 8005CD74 000589D4 3B 60 00 00 */ li r27, 0 /* 8005CD78 000589D8 40 82 00 08 */ bne lbl_8005CD80 /* 8005CD7C 000589DC 3B 60 00 01 */ li r27, 1 lbl_8005CD80: /* 8005CD80 000589E0 3B C0 01 EE */ li r30, 0x1ee /* 8005CD84 000589E4 3B A0 00 02 */ li r29, 2 /* 8005CD88 000589E8 48 00 00 2C */ b lbl_8005CDB4 lbl_8005CD8C: /* 8005CD8C 000589EC 3F E0 80 48 */ lis r31, lbl_804782A8@ha /* 8005CD90 000589F0 7F 23 CB 78 */ mr r3, r25 /* 8005CD94 000589F4 38 9F 82 A8 */ addi r4, r31, lbl_804782A8@l /* 8005CD98 000589F8 48 37 F9 B1 */ bl func_803DC748 /* 8005CD9C 000589FC 38 7F 82 A8 */ addi r3, r31, -32088 /* 8005CDA0 00058A00 48 37 F3 31 */ bl func_803DC0D0 /* 8005CDA4 00058A04 54 63 06 3E */ clrlwi r3, r3, 0x18 /* 8005CDA8 00058A08 7C 03 00 D0 */ neg r0, r3 /* 8005CDAC 00058A0C 7C 00 1B 78 */ or r0, r0, r3 /* 8005CDB0 00058A10 54 1C 0F FE */ srwi r28, r0, 0x1f lbl_8005CDB4: /* 8005CDB4 00058A14 2C 1E 01 EE */ cmpwi r30, 0x1ee /* 8005CDB8 00058A18 41 82 00 18 */ beq lbl_8005CDD0 /* 8005CDBC 00058A1C 7F 23 CB 78 */ mr r3, r25 /* 8005CDC0 00058A20 38 80 00 70 */ li r4, 0x70 /* 8005CDC4 00058A24 38 A0 00 00 */ li r5, 0 /* 8005CDC8 00058A28 48 37 E1 35 */ bl func_803DAEFC /* 8005CDCC 00058A2C 54 7B 04 3E */ clrlwi r27, r3, 0x10 lbl_8005CDD0: /* 8005CDD0 00058A30 3C 60 80 64 */ lis r3, lbl_8063CE34@ha /* 8005CDD4 00058A34 7F C4 F3 78 */ mr r4, r30 /* 8005CDD8 00058A38 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l /* 8005CDDC 00058A3C 38 63 00 4C */ addi r3, r3, 0x4c /* 8005CDE0 00058A40 48 33 9C 81 */ bl func_80396A60 /* 8005CDE4 00058A44 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005CDE8 00058A48 7C 1B 00 40 */ cmplw r27, r0 /* 8005CDEC 00058A4C 41 80 00 3C */ blt lbl_8005CE28 /* 8005CDF0 00058A50 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005CDF4 00058A54 38 80 00 00 */ li r4, 0 /* 8005CDF8 00058A58 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005CDFC 00058A5C 38 A0 00 00 */ li r5, 0 /* 8005CE00 00058A60 38 C0 00 00 */ li r6, 0 /* 8005CE04 00058A64 4B FF F2 69 */ bl func_8005C06C /* 8005CE08 00058A68 7F 47 D3 78 */ mr r7, r26 /* 8005CE0C 00058A6C 38 7F 81 78 */ addi r3, r31, -32392 /* 8005CE10 00058A70 38 80 00 00 */ li r4, 0 /* 8005CE14 00058A74 38 A0 00 00 */ li r5, 0 /* 8005CE18 00058A78 38 C0 00 00 */ li r6, 0 /* 8005CE1C 00058A7C 39 00 00 00 */ li r8, 0 /* 8005CE20 00058A80 4B FF F4 D5 */ bl func_8005C2F4 /* 8005CE24 00058A84 48 00 00 38 */ b lbl_8005CE5C lbl_8005CE28: /* 8005CE28 00058A88 3F E0 80 48 */ lis r31, lbl_80478178@ha /* 8005CE2C 00058A8C 7F C4 F3 78 */ mr r4, r30 /* 8005CE30 00058A90 7F A5 EB 78 */ mr r5, r29 /* 8005CE34 00058A94 7F 66 DB 78 */ mr r6, r27 /* 8005CE38 00058A98 38 7F 81 78 */ addi r3, r31, lbl_80478178@l /* 8005CE3C 00058A9C 4B FF F2 31 */ bl func_8005C06C /* 8005CE40 00058AA0 7F C4 F3 78 */ mr r4, r30 /* 8005CE44 00058AA4 7F A5 EB 78 */ mr r5, r29 /* 8005CE48 00058AA8 7F 86 E3 78 */ mr r6, r28 /* 8005CE4C 00058AAC 7F 47 D3 78 */ mr r7, r26 /* 8005CE50 00058AB0 7F 68 DB 78 */ mr r8, r27 /* 8005CE54 00058AB4 38 7F 81 78 */ addi r3, r31, -32392 /* 8005CE58 00058AB8 4B FF F4 9D */ bl func_8005C2F4 lbl_8005CE5C: /* 8005CE5C 00058ABC 39 61 00 30 */ addi r11, r1, 0x30 /* 8005CE60 00058AC0 48 16 A3 0D */ bl _restgpr_25 /* 8005CE64 00058AC4 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005CE68 00058AC8 7C 08 03 A6 */ mtlr r0 /* 8005CE6C 00058ACC 38 21 00 30 */ addi r1, r1, 0x30 /* 8005CE70 00058AD0 4E 80 00 20 */ blr .global func_8005CE74 func_8005CE74: /* 8005CE74 00058AD4 39 00 00 01 */ li r8, 1 /* 8005CE78 00058AD8 38 CD 99 00 */ addi r6, r13, lbl_8063EBC0-_SDA_BASE_ /* 8005CE7C 00058ADC 38 E0 00 04 */ li r7, 4 /* 8005CE80 00058AE0 38 00 00 00 */ li r0, 0 /* 8005CE84 00058AE4 3C 60 80 48 */ lis r3, lbl_80478178@ha /* 8005CE88 00058AE8 3C 80 80 06 */ lis r4, lbl_8005CEAC@ha /* 8005CE8C 00058AEC 3C A0 80 48 */ lis r5, lbl_80478168@ha /* 8005CE90 00058AF0 99 0D 99 00 */ stb r8, lbl_8063EBC0-_SDA_BASE_(r13) /* 8005CE94 00058AF4 38 63 81 78 */ addi r3, r3, lbl_80478178@l /* 8005CE98 00058AF8 38 84 CE AC */ addi r4, r4, lbl_8005CEAC@l /* 8005CE9C 00058AFC B0 E6 00 02 */ sth r7, 2(r6) /* 8005CEA0 00058B00 38 A5 81 68 */ addi r5, r5, lbl_80478168@l /* 8005CEA4 00058B04 98 06 00 04 */ stb r0, 4(r6) /* 8005CEA8 00058B08 48 16 9D A0 */ b __register_global_object_tmp lbl_8005CEAC: /* 8005CEAC 00058B0C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005CEB0 00058B10 7C 08 02 A6 */ mflr r0 /* 8005CEB4 00058B14 2C 03 00 00 */ cmpwi r3, 0 /* 8005CEB8 00058B18 90 01 00 14 */ stw r0, 0x14(r1) /* 8005CEBC 00058B1C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8005CEC0 00058B20 7C 7F 1B 78 */ mr r31, r3 /* 8005CEC4 00058B24 41 82 00 10 */ beq lbl_8005CED4 /* 8005CEC8 00058B28 2C 04 00 00 */ cmpwi r4, 0 /* 8005CECC 00058B2C 40 81 00 08 */ ble lbl_8005CED4 /* 8005CED0 00058B30 48 17 DB E9 */ bl func_801DAAB8 lbl_8005CED4: /* 8005CED4 00058B34 7F E3 FB 78 */ mr r3, r31 /* 8005CED8 00058B38 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8005CEDC 00058B3C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005CEE0 00058B40 7C 08 03 A6 */ mtlr r0 /* 8005CEE4 00058B44 38 21 00 10 */ addi r1, r1, 0x10 /* 8005CEE8 00058B48 4E 80 00 20 */ blr .global func_8005CEEC func_8005CEEC: /* 8005CEEC 00058B4C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8005CEF0 00058B50 7C 08 02 A6 */ mflr r0 /* 8005CEF4 00058B54 38 60 00 00 */ li r3, 0 /* 8005CEF8 00058B58 90 01 00 14 */ stw r0, 0x14(r1) /* 8005CEFC 00058B5C 4B FF C9 41 */ bl func_8005983C /* 8005CF00 00058B60 38 60 03 F7 */ li r3, 0x3f7 /* 8005CF04 00058B64 48 1E C6 D9 */ bl func_802495DC /* 8005CF08 00058B68 48 01 16 4D */ bl func_8006E554 /* 8005CF0C 00058B6C 3C A0 80 48 */ lis r5, lbl_80478408@ha /* 8005CF10 00058B70 38 00 00 20 */ li r0, 0x20 /* 8005CF14 00058B74 38 A5 84 08 */ addi r5, r5, lbl_80478408@l /* 8005CF18 00058B78 38 C0 00 00 */ li r6, 0 /* 8005CF1C 00058B7C 38 60 00 00 */ li r3, 0 /* 8005CF20 00058B80 7C 09 03 A6 */ mtctr r0 lbl_8005CF24: /* 8005CF24 00058B84 7C 85 1A 14 */ add r4, r5, r3 /* 8005CF28 00058B88 38 63 00 02 */ addi r3, r3, 2 /* 8005CF2C 00058B8C B0 C4 00 64 */ sth r6, 0x64(r4) /* 8005CF30 00058B90 42 00 FF F4 */ bdnz lbl_8005CF24 /* 8005CF34 00058B94 C0 22 85 F0 */ lfs f1, lbl_80640BF0-_SDA2_BASE_(r2) /* 8005CF38 00058B98 48 1F 3F 95 */ bl func_80250ECC /* 8005CF3C 00058B9C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005CF40 00058BA0 7C 08 03 A6 */ mtlr r0 /* 8005CF44 00058BA4 38 21 00 10 */ addi r1, r1, 0x10 /* 8005CF48 00058BA8 4E 80 00 20 */ blr .global func_8005CF4C func_8005CF4C: /* 8005CF4C 00058BAC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005CF50 00058BB0 7C 08 02 A6 */ mflr r0 /* 8005CF54 00058BB4 90 01 00 24 */ stw r0, 0x24(r1) /* 8005CF58 00058BB8 39 61 00 20 */ addi r11, r1, 0x20 /* 8005CF5C 00058BBC 48 16 A1 D5 */ bl _savegpr_29 /* 8005CF60 00058BC0 3F A0 80 48 */ lis r29, lbl_80478388@ha /* 8005CF64 00058BC4 3B BD 83 88 */ addi r29, r29, lbl_80478388@l /* 8005CF68 00058BC8 4B FF B4 B5 */ bl func_8005841C /* 8005CF6C 00058BCC 38 00 00 16 */ li r0, 0x16 /* 8005CF70 00058BD0 39 1D 01 3C */ addi r8, r29, 0x13c /* 8005CF74 00058BD4 98 0D 99 22 */ stb r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005CF78 00058BD8 38 DD 00 80 */ addi r6, r29, 0x80 /* 8005CF7C 00058BDC 39 20 00 00 */ li r9, 0 /* 8005CF80 00058BE0 38 00 00 06 */ li r0, 6 lbl_8005CF84: /* 8005CF84 00058BE4 39 40 00 00 */ li r10, 0 /* 8005CF88 00058BE8 38 60 00 00 */ li r3, 0 /* 8005CF8C 00058BEC 38 80 00 00 */ li r4, 0 /* 8005CF90 00058BF0 7C 09 03 A6 */ mtctr r0 lbl_8005CF94: /* 8005CF94 00058BF4 2C 09 00 02 */ cmpwi r9, 2 /* 8005CF98 00058BF8 41 82 00 4C */ beq lbl_8005CFE4 /* 8005CF9C 00058BFC 40 80 00 14 */ bge lbl_8005CFB0 /* 8005CFA0 00058C00 2C 09 00 00 */ cmpwi r9, 0 /* 8005CFA4 00058C04 41 82 00 18 */ beq lbl_8005CFBC /* 8005CFA8 00058C08 40 80 00 24 */ bge lbl_8005CFCC /* 8005CFAC 00058C0C 48 00 00 64 */ b lbl_8005D010 lbl_8005CFB0: /* 8005CFB0 00058C10 2C 09 00 04 */ cmpwi r9, 4 /* 8005CFB4 00058C14 40 80 00 5C */ bge lbl_8005D010 /* 8005CFB8 00058C18 48 00 00 44 */ b lbl_8005CFFC lbl_8005CFBC: /* 8005CFBC 00058C1C 7C E8 1A 14 */ add r7, r8, r3 /* 8005CFC0 00058C20 7C A6 22 14 */ add r5, r6, r4 /* 8005CFC4 00058C24 90 E5 00 04 */ stw r7, 4(r5) /* 8005CFC8 00058C28 48 00 00 48 */ b lbl_8005D010 lbl_8005CFCC: /* 8005CFCC 00058C2C 38 EA 00 06 */ addi r7, r10, 6 /* 8005CFD0 00058C30 7C A6 22 14 */ add r5, r6, r4 /* 8005CFD4 00058C34 1C E7 00 DC */ mulli r7, r7, 0xdc /* 8005CFD8 00058C38 7C E8 3A 14 */ add r7, r8, r7 /* 8005CFDC 00058C3C 90 E5 00 34 */ stw r7, 0x34(r5) /* 8005CFE0 00058C40 48 00 00 30 */ b lbl_8005D010 lbl_8005CFE4: /* 8005CFE4 00058C44 38 EA 00 0C */ addi r7, r10, 0xc /* 8005CFE8 00058C48 7C A6 22 14 */ add r5, r6, r4 /* 8005CFEC 00058C4C 1C E7 00 DC */ mulli r7, r7, 0xdc /* 8005CFF0 00058C50 7C E8 3A 14 */ add r7, r8, r7 /* 8005CFF4 00058C54 90 E5 00 1C */ stw r7, 0x1c(r5) /* 8005CFF8 00058C58 48 00 00 18 */ b lbl_8005D010 lbl_8005CFFC: /* 8005CFFC 00058C5C 38 EA 00 12 */ addi r7, r10, 0x12 /* 8005D000 00058C60 7C A6 22 14 */ add r5, r6, r4 /* 8005D004 00058C64 1C E7 00 DC */ mulli r7, r7, 0xdc /* 8005D008 00058C68 7C E8 3A 14 */ add r7, r8, r7 /* 8005D00C 00058C6C 90 E5 00 4C */ stw r7, 0x4c(r5) lbl_8005D010: /* 8005D010 00058C70 39 4A 00 01 */ addi r10, r10, 1 /* 8005D014 00058C74 38 63 00 DC */ addi r3, r3, 0xdc /* 8005D018 00058C78 38 84 00 04 */ addi r4, r4, 4 /* 8005D01C 00058C7C 42 00 FF 78 */ bdnz lbl_8005CF94 /* 8005D020 00058C80 39 29 00 01 */ addi r9, r9, 1 /* 8005D024 00058C84 28 09 00 04 */ cmplwi r9, 4 /* 8005D028 00058C88 41 80 FF 5C */ blt lbl_8005CF84 /* 8005D02C 00058C8C 3B DD 00 80 */ addi r30, r29, 0x80 /* 8005D030 00058C90 38 80 00 00 */ li r4, 0 /* 8005D034 00058C94 A0 1E 00 B2 */ lhz r0, 0xb2(r30) /* 8005D038 00058C98 38 6D 99 19 */ addi r3, r13, lbl_8063EBD9-_SDA_BASE_ /* 8005D03C 00058C9C 98 83 00 01 */ stb r4, 1(r3) /* 8005D040 00058CA0 54 00 05 E4 */ rlwinm r0, r0, 0, 0x17, 0x12 /* 8005D044 00058CA4 98 8D 99 19 */ stb r4, lbl_8063EBD9-_SDA_BASE_(r13) /* 8005D048 00058CA8 B0 1E 00 B2 */ sth r0, 0xb2(r30) /* 8005D04C 00058CAC 4B FF BB 59 */ bl VMBASEIsPageValid /* 8005D050 00058CB0 3C 80 80 40 */ lis r4, lbl_803FB938@ha /* 8005D054 00058CB4 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005D058 00058CB8 38 84 B9 38 */ addi r4, r4, lbl_803FB938@l /* 8005D05C 00058CBC 7C 64 00 2E */ lwzx r3, r4, r0 /* 8005D060 00058CC0 48 1E C5 7D */ bl func_802495DC /* 8005D064 00058CC4 38 60 03 EA */ li r3, 0x3ea /* 8005D068 00058CC8 48 1E C5 75 */ bl func_802495DC /* 8005D06C 00058CCC 38 60 03 F6 */ li r3, 0x3f6 /* 8005D070 00058CD0 48 1E C5 6D */ bl func_802495DC /* 8005D074 00058CD4 38 60 03 FF */ li r3, 0x3ff /* 8005D078 00058CD8 48 1E C5 65 */ bl func_802495DC /* 8005D07C 00058CDC 48 10 26 15 */ bl func_8015F690 /* 8005D080 00058CE0 7C 7F 1B 78 */ mr r31, r3 /* 8005D084 00058CE4 48 0B F8 F1 */ bl func_8011C974 /* 8005D088 00058CE8 90 7E 00 B4 */ stw r3, 0xb4(r30) /* 8005D08C 00058CEC 80 1F 00 4C */ lwz r0, 0x4c(r31) /* 8005D090 00058CF0 B0 1E 00 A4 */ sth r0, 0xa4(r30) /* 8005D094 00058CF4 48 01 16 95 */ bl func_8006E728 /* 8005D098 00058CF8 A0 1E 00 B2 */ lhz r0, 0xb2(r30) /* 8005D09C 00058CFC 3C 60 05 F9 */ lis r3, 0x05F91A00@ha /* 8005D0A0 00058D00 38 83 1A 00 */ addi r4, r3, 0x05F91A00@l /* 8005D0A4 00058D04 60 00 20 00 */ ori r0, r0, 0x2000 /* 8005D0A8 00058D08 38 60 03 F6 */ li r3, 0x3f6 /* 8005D0AC 00058D0C B0 1E 00 B2 */ sth r0, 0xb2(r30) /* 8005D0B0 00058D10 4B FF 8C E9 */ bl func_80055D98 /* 8005D0B4 00058D14 90 7D 00 00 */ stw r3, 0(r29) /* 8005D0B8 00058D18 3C 60 05 FA */ lis r3, 0x05FA1A00@ha /* 8005D0BC 00058D1C 38 83 1A 00 */ addi r4, r3, 0x05FA1A00@l /* 8005D0C0 00058D20 38 60 03 F6 */ li r3, 0x3f6 /* 8005D0C4 00058D24 4B FF 8C D5 */ bl func_80055D98 /* 8005D0C8 00058D28 3B FD 00 00 */ addi r31, r29, 0 /* 8005D0CC 00058D2C 3C 80 05 FB */ lis r4, 0x05FB1A00@ha /* 8005D0D0 00058D30 90 7F 00 04 */ stw r3, 4(r31) /* 8005D0D4 00058D34 38 84 1A 00 */ addi r4, r4, 0x05FB1A00@l /* 8005D0D8 00058D38 38 60 03 F6 */ li r3, 0x3f6 /* 8005D0DC 00058D3C 4B FF 8C BD */ bl func_80055D98 /* 8005D0E0 00058D40 90 7F 00 08 */ stw r3, 8(r31) /* 8005D0E4 00058D44 3C 60 04 4B */ lis r3, 0x044B1A00@ha /* 8005D0E8 00058D48 38 83 1A 00 */ addi r4, r3, 0x044B1A00@l /* 8005D0EC 00058D4C 38 60 00 0E */ li r3, 0xe /* 8005D0F0 00058D50 4B FF 8C A9 */ bl func_80055D98 /* 8005D0F4 00058D54 90 7F 00 0C */ stw r3, 0xc(r31) /* 8005D0F8 00058D58 3C 60 05 FC */ lis r3, 0x05FC1A00@ha /* 8005D0FC 00058D5C 38 83 1A 00 */ addi r4, r3, 0x05FC1A00@l /* 8005D100 00058D60 38 60 03 F6 */ li r3, 0x3f6 /* 8005D104 00058D64 4B FF 8C 95 */ bl func_80055D98 /* 8005D108 00058D68 90 7F 00 10 */ stw r3, 0x10(r31) /* 8005D10C 00058D6C 3C 60 04 4C */ lis r3, 0x044C1A00@ha /* 8005D110 00058D70 38 83 1A 00 */ addi r4, r3, 0x044C1A00@l /* 8005D114 00058D74 38 60 00 0E */ li r3, 0xe /* 8005D118 00058D78 4B FF 8C 81 */ bl func_80055D98 /* 8005D11C 00058D7C 90 7F 00 14 */ stw r3, 0x14(r31) /* 8005D120 00058D80 3C 60 1B AE */ lis r3, 0x1BAE1A00@ha /* 8005D124 00058D84 38 83 1A 00 */ addi r4, r3, 0x1BAE1A00@l /* 8005D128 00058D88 38 60 03 F6 */ li r3, 0x3f6 /* 8005D12C 00058D8C 4B FF 8C 6D */ bl func_80055D98 /* 8005D130 00058D90 90 7F 00 18 */ stw r3, 0x18(r31) /* 8005D134 00058D94 3C 60 04 50 */ lis r3, 0x04501A00@ha /* 8005D138 00058D98 38 83 1A 00 */ addi r4, r3, 0x04501A00@l /* 8005D13C 00058D9C 38 60 00 0E */ li r3, 0xe /* 8005D140 00058DA0 4B FF 8C 59 */ bl func_80055D98 /* 8005D144 00058DA4 90 7F 00 28 */ stw r3, 0x28(r31) /* 8005D148 00058DA8 3C A0 80 07 */ lis r5, func_8006A878@ha /* 8005D14C 00058DAC 3C C0 80 07 */ lis r6, func_8006BE3C@ha /* 8005D150 00058DB0 80 7D 00 00 */ lwz r3, 0(r29) /* 8005D154 00058DB4 38 A5 A8 78 */ addi r5, r5, func_8006A878@l /* 8005D158 00058DB8 38 80 00 00 */ li r4, 0 /* 8005D15C 00058DBC 38 C6 BE 3C */ addi r6, r6, func_8006BE3C@l /* 8005D160 00058DC0 38 E0 FF FF */ li r7, -1 /* 8005D164 00058DC4 39 00 00 00 */ li r8, 0 /* 8005D168 00058DC8 39 20 00 01 */ li r9, 1 /* 8005D16C 00058DCC 39 40 00 00 */ li r10, 0 /* 8005D170 00058DD0 48 1F 6A C9 */ bl func_80253C38 /* 8005D174 00058DD4 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005D178 00058DD8 3C A0 80 07 */ lis r5, func_8006AAB4@ha /* 8005D17C 00058DDC B0 7D B7 68 */ sth r3, lbl_8040B768@l(r29) /* 8005D180 00058DE0 3C C0 80 07 */ lis r6, func_8006BF58@ha /* 8005D184 00058DE4 80 7F 00 04 */ lwz r3, 4(r31) /* 8005D188 00058DE8 38 A5 AA B4 */ addi r5, r5, func_8006AAB4@l /* 8005D18C 00058DEC 38 C6 BF 58 */ addi r6, r6, func_8006BF58@l /* 8005D190 00058DF0 38 80 00 00 */ li r4, 0 /* 8005D194 00058DF4 38 E0 FF FF */ li r7, -1 /* 8005D198 00058DF8 39 00 00 00 */ li r8, 0 /* 8005D19C 00058DFC 39 20 00 01 */ li r9, 1 /* 8005D1A0 00058E00 39 40 00 00 */ li r10, 0 /* 8005D1A4 00058E04 48 1F 6A 95 */ bl func_80253C38 /* 8005D1A8 00058E08 3B BD B7 68 */ addi r29, r29, -18584 /* 8005D1AC 00058E0C 3C A0 80 07 */ lis r5, func_8006B5F0@ha /* 8005D1B0 00058E10 B0 7D 00 02 */ sth r3, 2(r29) /* 8005D1B4 00058E14 3C C0 80 07 */ lis r6, func_8006C128@ha /* 8005D1B8 00058E18 80 7F 00 08 */ lwz r3, 8(r31) /* 8005D1BC 00058E1C 38 A5 B5 F0 */ addi r5, r5, func_8006B5F0@l /* 8005D1C0 00058E20 38 C6 C1 28 */ addi r6, r6, func_8006C128@l /* 8005D1C4 00058E24 38 80 00 00 */ li r4, 0 /* 8005D1C8 00058E28 38 E0 FF FF */ li r7, -1 /* 8005D1CC 00058E2C 39 00 00 00 */ li r8, 0 /* 8005D1D0 00058E30 39 20 00 01 */ li r9, 1 /* 8005D1D4 00058E34 39 40 00 00 */ li r10, 0 /* 8005D1D8 00058E38 48 1F 6A 61 */ bl func_80253C38 /* 8005D1DC 00058E3C B0 7D 00 04 */ sth r3, 4(r29) /* 8005D1E0 00058E40 3C 80 80 07 */ lis r4, func_8006BC5C@ha /* 8005D1E4 00058E44 3C A0 80 07 */ lis r5, func_8006BCBC@ha /* 8005D1E8 00058E48 80 7F 00 0C */ lwz r3, 0xc(r31) /* 8005D1EC 00058E4C 38 84 BC 5C */ addi r4, r4, func_8006BC5C@l /* 8005D1F0 00058E50 38 C0 00 00 */ li r6, 0 /* 8005D1F4 00058E54 38 A5 BC BC */ addi r5, r5, func_8006BCBC@l /* 8005D1F8 00058E58 38 E0 FF FF */ li r7, -1 /* 8005D1FC 00058E5C 39 00 00 00 */ li r8, 0 /* 8005D200 00058E60 39 20 00 01 */ li r9, 1 /* 8005D204 00058E64 39 40 00 00 */ li r10, 0 /* 8005D208 00058E68 48 1F 6A 31 */ bl func_80253C38 /* 8005D20C 00058E6C B0 7D 00 06 */ sth r3, 6(r29) /* 8005D210 00058E70 3C A0 80 07 */ lis r5, func_8006C3F0@ha /* 8005D214 00058E74 3C C0 80 07 */ lis r6, func_8006CE28@ha /* 8005D218 00058E78 80 7F 00 10 */ lwz r3, 0x10(r31) /* 8005D21C 00058E7C 38 A5 C3 F0 */ addi r5, r5, func_8006C3F0@l /* 8005D220 00058E80 38 80 00 00 */ li r4, 0 /* 8005D224 00058E84 38 C6 CE 28 */ addi r6, r6, func_8006CE28@l /* 8005D228 00058E88 38 E0 FF FF */ li r7, -1 /* 8005D22C 00058E8C 39 00 00 00 */ li r8, 0 /* 8005D230 00058E90 39 20 00 01 */ li r9, 1 /* 8005D234 00058E94 39 40 00 00 */ li r10, 0 /* 8005D238 00058E98 48 1F 6A 01 */ bl func_80253C38 /* 8005D23C 00058E9C B0 7D 00 08 */ sth r3, 8(r29) /* 8005D240 00058EA0 3C A0 80 07 */ lis r5, func_8006E234@ha /* 8005D244 00058EA4 3C C0 80 07 */ lis r6, func_8006E2A0@ha /* 8005D248 00058EA8 80 7F 00 14 */ lwz r3, 0x14(r31) /* 8005D24C 00058EAC 38 A5 E2 34 */ addi r5, r5, func_8006E234@l /* 8005D250 00058EB0 38 80 00 00 */ li r4, 0 /* 8005D254 00058EB4 38 C6 E2 A0 */ addi r6, r6, func_8006E2A0@l /* 8005D258 00058EB8 38 E0 FF FF */ li r7, -1 /* 8005D25C 00058EBC 39 00 00 00 */ li r8, 0 /* 8005D260 00058EC0 39 20 00 01 */ li r9, 1 /* 8005D264 00058EC4 39 40 00 00 */ li r10, 0 /* 8005D268 00058EC8 48 1F 69 D1 */ bl func_80253C38 /* 8005D26C 00058ECC B0 7D 00 0A */ sth r3, 0xa(r29) /* 8005D270 00058ED0 3C 80 80 06 */ lis r4, func_8006318C@ha /* 8005D274 00058ED4 3C A0 80 06 */ lis r5, func_800631B0@ha /* 8005D278 00058ED8 3C C0 80 06 */ lis r6, func_80063510@ha /* 8005D27C 00058EDC 80 7F 00 18 */ lwz r3, 0x18(r31) /* 8005D280 00058EE0 38 84 31 8C */ addi r4, r4, func_8006318C@l /* 8005D284 00058EE4 38 A5 31 B0 */ addi r5, r5, func_800631B0@l /* 8005D288 00058EE8 38 C6 35 10 */ addi r6, r6, func_80063510@l /* 8005D28C 00058EEC 38 E0 FF FF */ li r7, -1 /* 8005D290 00058EF0 39 00 00 00 */ li r8, 0 /* 8005D294 00058EF4 39 20 00 01 */ li r9, 1 /* 8005D298 00058EF8 39 40 00 00 */ li r10, 0 /* 8005D29C 00058EFC 48 1F 69 9D */ bl func_80253C38 /* 8005D2A0 00058F00 B0 7D 00 0C */ sth r3, 0xc(r29) /* 8005D2A4 00058F04 3C 80 80 07 */ lis r4, func_8006E340@ha /* 8005D2A8 00058F08 3C A0 80 07 */ lis r5, func_8006E350@ha /* 8005D2AC 00058F0C 3C C0 80 07 */ lis r6, func_8006E494@ha /* 8005D2B0 00058F10 80 7F 00 28 */ lwz r3, 0x28(r31) /* 8005D2B4 00058F14 38 84 E3 40 */ addi r4, r4, func_8006E340@l /* 8005D2B8 00058F18 38 A5 E3 50 */ addi r5, r5, func_8006E350@l /* 8005D2BC 00058F1C 38 C6 E4 94 */ addi r6, r6, func_8006E494@l /* 8005D2C0 00058F20 38 E0 FF FF */ li r7, -1 /* 8005D2C4 00058F24 39 00 00 00 */ li r8, 0 /* 8005D2C8 00058F28 39 20 00 01 */ li r9, 1 /* 8005D2CC 00058F2C 39 40 00 00 */ li r10, 0 /* 8005D2D0 00058F30 48 1F 69 69 */ bl func_80253C38 /* 8005D2D4 00058F34 B0 7D 00 14 */ sth r3, 0x14(r29) /* 8005D2D8 00058F38 3C 60 1C C7 */ lis r3, 0x1CC71A00@ha /* 8005D2DC 00058F3C 38 83 1A 00 */ addi r4, r3, 0x1CC71A00@l /* 8005D2E0 00058F40 38 60 03 F6 */ li r3, 0x3f6 /* 8005D2E4 00058F44 4B FF 8A B5 */ bl func_80055D98 /* 8005D2E8 00058F48 90 7F 00 40 */ stw r3, 0x40(r31) /* 8005D2EC 00058F4C 3C 60 1C C8 */ lis r3, 0x1CC81A00@ha /* 8005D2F0 00058F50 38 83 1A 00 */ addi r4, r3, 0x1CC81A00@l /* 8005D2F4 00058F54 38 60 03 F6 */ li r3, 0x3f6 /* 8005D2F8 00058F58 4B FF 8A A1 */ bl func_80055D98 /* 8005D2FC 00058F5C 90 7F 00 44 */ stw r3, 0x44(r31) /* 8005D300 00058F60 3C 60 1C C9 */ lis r3, 0x1CC91A00@ha /* 8005D304 00058F64 38 83 1A 00 */ addi r4, r3, 0x1CC91A00@l /* 8005D308 00058F68 38 60 03 F6 */ li r3, 0x3f6 /* 8005D30C 00058F6C 4B FF 8A 8D */ bl func_80055D98 /* 8005D310 00058F70 90 7F 00 48 */ stw r3, 0x48(r31) /* 8005D314 00058F74 3C 60 1C CA */ lis r3, 0x1CCA1A00@ha /* 8005D318 00058F78 38 83 1A 00 */ addi r4, r3, 0x1CCA1A00@l /* 8005D31C 00058F7C 38 60 03 F6 */ li r3, 0x3f6 /* 8005D320 00058F80 4B FF 8A 79 */ bl func_80055D98 /* 8005D324 00058F84 90 7F 00 4C */ stw r3, 0x4c(r31) /* 8005D328 00058F88 3C 60 1C CB */ lis r3, 0x1CCB1A00@ha /* 8005D32C 00058F8C 38 83 1A 00 */ addi r4, r3, 0x1CCB1A00@l /* 8005D330 00058F90 38 60 03 F6 */ li r3, 0x3f6 /* 8005D334 00058F94 4B FF 8A 65 */ bl func_80055D98 /* 8005D338 00058F98 90 7F 00 50 */ stw r3, 0x50(r31) /* 8005D33C 00058F9C 3C 60 1C CC */ lis r3, 0x1CCC1A00@ha /* 8005D340 00058FA0 38 83 1A 00 */ addi r4, r3, 0x1CCC1A00@l /* 8005D344 00058FA4 38 60 03 F6 */ li r3, 0x3f6 /* 8005D348 00058FA8 4B FF 8A 51 */ bl func_80055D98 /* 8005D34C 00058FAC 90 7F 00 54 */ stw r3, 0x54(r31) /* 8005D350 00058FB0 3C 80 80 06 */ lis r4, func_80063514@ha /* 8005D354 00058FB4 3C A0 80 06 */ lis r5, func_800635A8@ha /* 8005D358 00058FB8 3C C0 80 06 */ lis r6, func_80063B20@ha /* 8005D35C 00058FBC 80 7F 00 40 */ lwz r3, 0x40(r31) /* 8005D360 00058FC0 38 84 35 14 */ addi r4, r4, func_80063514@l /* 8005D364 00058FC4 38 A5 35 A8 */ addi r5, r5, func_800635A8@l /* 8005D368 00058FC8 38 C6 3B 20 */ addi r6, r6, func_80063B20@l /* 8005D36C 00058FCC 38 E0 FF FF */ li r7, -1 /* 8005D370 00058FD0 39 00 00 00 */ li r8, 0 /* 8005D374 00058FD4 39 20 00 01 */ li r9, 1 /* 8005D378 00058FD8 39 40 00 00 */ li r10, 0 /* 8005D37C 00058FDC 48 1F 68 BD */ bl func_80253C38 /* 8005D380 00058FE0 B0 7D 00 20 */ sth r3, 0x20(r29) /* 8005D384 00058FE4 3C 80 80 06 */ lis r4, func_80064558@ha /* 8005D388 00058FE8 3C A0 80 06 */ lis r5, func_8006455C@ha /* 8005D38C 00058FEC 3C C0 80 06 */ lis r6, func_80064900@ha /* 8005D390 00058FF0 80 7F 00 44 */ lwz r3, 0x44(r31) /* 8005D394 00058FF4 38 84 45 58 */ addi r4, r4, func_80064558@l /* 8005D398 00058FF8 38 A5 45 5C */ addi r5, r5, func_8006455C@l /* 8005D39C 00058FFC 38 C6 49 00 */ addi r6, r6, func_80064900@l /* 8005D3A0 00059000 38 E0 FF FF */ li r7, -1 /* 8005D3A4 00059004 39 00 00 00 */ li r8, 0 /* 8005D3A8 00059008 39 20 00 01 */ li r9, 1 /* 8005D3AC 0005900C 39 40 00 00 */ li r10, 0 /* 8005D3B0 00059010 48 1F 68 89 */ bl func_80253C38 /* 8005D3B4 00059014 B0 7D 00 22 */ sth r3, 0x22(r29) /* 8005D3B8 00059018 3C 80 80 06 */ lis r4, func_800649CC@ha /* 8005D3BC 0005901C 3C A0 80 06 */ lis r5, func_80064A1C@ha /* 8005D3C0 00059020 3C C0 80 06 */ lis r6, func_800654FC@ha /* 8005D3C4 00059024 80 7F 00 48 */ lwz r3, 0x48(r31) /* 8005D3C8 00059028 38 84 49 CC */ addi r4, r4, func_800649CC@l /* 8005D3CC 0005902C 38 A5 4A 1C */ addi r5, r5, func_80064A1C@l /* 8005D3D0 00059030 38 C6 54 FC */ addi r6, r6, func_800654FC@l /* 8005D3D4 00059034 38 E0 FF FF */ li r7, -1 /* 8005D3D8 00059038 39 00 00 00 */ li r8, 0 /* 8005D3DC 0005903C 39 20 00 01 */ li r9, 1 /* 8005D3E0 00059040 39 40 00 00 */ li r10, 0 /* 8005D3E4 00059044 48 1F 68 55 */ bl func_80253C38 /* 8005D3E8 00059048 B0 7D 00 24 */ sth r3, 0x24(r29) /* 8005D3EC 0005904C 3C 80 80 06 */ lis r4, func_80066B40@ha /* 8005D3F0 00059050 3C A0 80 06 */ lis r5, func_80066B6C@ha /* 8005D3F4 00059054 3C C0 80 06 */ lis r6, func_80066DBC@ha /* 8005D3F8 00059058 80 7F 00 4C */ lwz r3, 0x4c(r31) /* 8005D3FC 0005905C 38 84 6B 40 */ addi r4, r4, func_80066B40@l /* 8005D400 00059060 38 A5 6B 6C */ addi r5, r5, func_80066B6C@l /* 8005D404 00059064 38 C6 6D BC */ addi r6, r6, func_80066DBC@l /* 8005D408 00059068 38 E0 FF FF */ li r7, -1 /* 8005D40C 0005906C 39 00 00 00 */ li r8, 0 /* 8005D410 00059070 39 20 00 01 */ li r9, 1 /* 8005D414 00059074 39 40 00 00 */ li r10, 0 /* 8005D418 00059078 48 1F 68 21 */ bl func_80253C38 /* 8005D41C 0005907C B0 7D 00 26 */ sth r3, 0x26(r29) /* 8005D420 00059080 3C 80 80 06 */ lis r4, func_800675A0@ha /* 8005D424 00059084 3C A0 80 06 */ lis r5, func_800675CC@ha /* 8005D428 00059088 3C C0 80 06 */ lis r6, func_80067B50@ha /* 8005D42C 0005908C 80 7F 00 50 */ lwz r3, 0x50(r31) /* 8005D430 00059090 38 84 75 A0 */ addi r4, r4, func_800675A0@l /* 8005D434 00059094 38 A5 75 CC */ addi r5, r5, func_800675CC@l /* 8005D438 00059098 38 C6 7B 50 */ addi r6, r6, func_80067B50@l /* 8005D43C 0005909C 38 E0 FF FF */ li r7, -1 /* 8005D440 000590A0 39 00 00 00 */ li r8, 0 /* 8005D444 000590A4 39 20 00 01 */ li r9, 1 /* 8005D448 000590A8 39 40 00 00 */ li r10, 0 /* 8005D44C 000590AC 48 1F 67 ED */ bl func_80253C38 /* 8005D450 000590B0 B0 7D 00 28 */ sth r3, 0x28(r29) /* 8005D454 000590B4 3C 80 80 06 */ lis r4, func_80067FD8@ha /* 8005D458 000590B8 3C A0 80 07 */ lis r5, func_8006806C@ha /* 8005D45C 000590BC 3C C0 80 07 */ lis r6, func_80068338@ha /* 8005D460 000590C0 80 7F 00 54 */ lwz r3, 0x54(r31) /* 8005D464 000590C4 38 84 7F D8 */ addi r4, r4, func_80067FD8@l /* 8005D468 000590C8 38 A5 80 6C */ addi r5, r5, func_8006806C@l /* 8005D46C 000590CC 38 C6 83 38 */ addi r6, r6, func_80068338@l /* 8005D470 000590D0 38 E0 FF FF */ li r7, -1 /* 8005D474 000590D4 39 00 00 00 */ li r8, 0 /* 8005D478 000590D8 39 20 00 01 */ li r9, 1 /* 8005D47C 000590DC 39 40 00 00 */ li r10, 0 /* 8005D480 000590E0 48 1F 67 B9 */ bl func_80253C38 /* 8005D484 000590E4 B0 7D 00 2A */ sth r3, 0x2a(r29) /* 8005D488 000590E8 3C 60 21 C0 */ lis r3, 0x21C01A00@ha /* 8005D48C 000590EC 38 83 1A 00 */ addi r4, r3, 0x21C01A00@l /* 8005D490 000590F0 38 60 03 F6 */ li r3, 0x3f6 /* 8005D494 000590F4 4B FF 89 05 */ bl func_80055D98 /* 8005D498 000590F8 90 7F 00 68 */ stw r3, 0x68(r31) /* 8005D49C 000590FC 3C 60 21 C1 */ lis r3, 0x21C11A00@ha /* 8005D4A0 00059100 38 83 1A 00 */ addi r4, r3, 0x21C11A00@l /* 8005D4A4 00059104 38 60 03 F6 */ li r3, 0x3f6 /* 8005D4A8 00059108 4B FF 88 F1 */ bl func_80055D98 /* 8005D4AC 0005910C 90 7F 00 6C */ stw r3, 0x6c(r31) /* 8005D4B0 00059110 3C A0 80 07 */ lis r5, func_80068F34@ha /* 8005D4B4 00059114 3C C0 80 07 */ lis r6, func_80068FEC@ha /* 8005D4B8 00059118 80 7F 00 68 */ lwz r3, 0x68(r31) /* 8005D4BC 0005911C 38 A5 8F 34 */ addi r5, r5, func_80068F34@l /* 8005D4C0 00059120 38 80 00 00 */ li r4, 0 /* 8005D4C4 00059124 38 C6 8F EC */ addi r6, r6, func_80068FEC@l /* 8005D4C8 00059128 38 E0 FF FF */ li r7, -1 /* 8005D4CC 0005912C 39 00 00 01 */ li r8, 1 /* 8005D4D0 00059130 39 20 00 01 */ li r9, 1 /* 8005D4D4 00059134 39 40 00 00 */ li r10, 0 /* 8005D4D8 00059138 48 1F 67 61 */ bl func_80253C38 /* 8005D4DC 0005913C B0 7D 00 34 */ sth r3, 0x34(r29) /* 8005D4E0 00059140 3C 80 80 07 */ lis r4, func_80069130@ha /* 8005D4E4 00059144 3C A0 80 07 */ lis r5, func_80069230@ha /* 8005D4E8 00059148 3C C0 80 07 */ lis r6, func_800692D8@ha /* 8005D4EC 0005914C 80 7F 00 6C */ lwz r3, 0x6c(r31) /* 8005D4F0 00059150 38 84 91 30 */ addi r4, r4, func_80069130@l /* 8005D4F4 00059154 38 A5 92 30 */ addi r5, r5, func_80069230@l /* 8005D4F8 00059158 38 C6 92 D8 */ addi r6, r6, func_800692D8@l /* 8005D4FC 0005915C 38 E0 FF FF */ li r7, -1 /* 8005D500 00059160 39 00 00 01 */ li r8, 1 /* 8005D504 00059164 39 20 00 01 */ li r9, 1 /* 8005D508 00059168 39 40 00 00 */ li r10, 0 /* 8005D50C 0005916C 48 1F 67 2D */ bl func_80253C38 /* 8005D510 00059170 B0 7D 00 36 */ sth r3, 0x36(r29) /* 8005D514 00059174 3C 60 27 54 */ lis r3, 0x27541A00@ha /* 8005D518 00059178 38 83 1A 00 */ addi r4, r3, 0x27541A00@l /* 8005D51C 0005917C 38 60 03 F6 */ li r3, 0x3f6 /* 8005D520 00059180 4B FF 88 79 */ bl func_80055D98 /* 8005D524 00059184 3C 80 80 07 */ lis r4, func_80069510@ha /* 8005D528 00059188 3C A0 80 07 */ lis r5, func_80069600@ha /* 8005D52C 0005918C 3C C0 80 07 */ lis r6, func_80069668@ha /* 8005D530 00059190 90 7F 00 70 */ stw r3, 0x70(r31) /* 8005D534 00059194 38 84 95 10 */ addi r4, r4, func_80069510@l /* 8005D538 00059198 38 A5 96 00 */ addi r5, r5, func_80069600@l /* 8005D53C 0005919C 38 C6 96 68 */ addi r6, r6, func_80069668@l /* 8005D540 000591A0 38 E0 FF FF */ li r7, -1 /* 8005D544 000591A4 39 00 00 00 */ li r8, 0 /* 8005D548 000591A8 39 20 00 01 */ li r9, 1 /* 8005D54C 000591AC 39 40 00 00 */ li r10, 0 /* 8005D550 000591B0 48 1F 66 E9 */ bl func_80253C38 /* 8005D554 000591B4 B0 7D 00 38 */ sth r3, 0x38(r29) /* 8005D558 000591B8 38 60 00 00 */ li r3, 0 /* 8005D55C 000591BC 38 80 00 00 */ li r4, 0 /* 8005D560 000591C0 38 A0 FF FF */ li r5, -1 /* 8005D564 000591C4 48 1F 6A 09 */ bl func_80253F6C /* 8005D568 000591C8 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005D56C 000591CC 38 60 00 00 */ li r3, 0 /* 8005D570 000591D0 38 80 00 00 */ li r4, 0 /* 8005D574 000591D4 38 A0 FF FF */ li r5, -1 /* 8005D578 000591D8 48 1F 69 F5 */ bl func_80253F6C /* 8005D57C 000591DC 90 6D 82 00 */ stw r3, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005D580 000591E0 38 60 00 00 */ li r3, 0 /* 8005D584 000591E4 38 80 00 00 */ li r4, 0 /* 8005D588 000591E8 38 A0 FF FF */ li r5, -1 /* 8005D58C 000591EC 48 1F 69 E1 */ bl func_80253F6C /* 8005D590 000591F0 90 6D 82 04 */ stw r3, lbl_8063D4C4-_SDA_BASE_(r13) /* 8005D594 000591F4 38 60 00 00 */ li r3, 0 /* 8005D598 000591F8 38 80 00 00 */ li r4, 0 /* 8005D59C 000591FC 38 A0 FF FF */ li r5, -1 /* 8005D5A0 00059200 48 1F 69 CD */ bl func_80253F6C /* 8005D5A4 00059204 90 6D 82 08 */ stw r3, lbl_8063D4C8-_SDA_BASE_(r13) /* 8005D5A8 00059208 38 60 00 00 */ li r3, 0 /* 8005D5AC 0005920C 38 80 00 00 */ li r4, 0 /* 8005D5B0 00059210 38 A0 FF FF */ li r5, -1 /* 8005D5B4 00059214 48 1F 69 B9 */ bl func_80253F6C /* 8005D5B8 00059218 90 6D 82 0C */ stw r3, lbl_8063D4CC-_SDA_BASE_(r13) /* 8005D5BC 0005921C 38 60 00 00 */ li r3, 0 /* 8005D5C0 00059220 48 09 B6 35 */ bl func_800F8BF4 /* 8005D5C4 00059224 38 60 03 FF */ li r3, 0x3ff /* 8005D5C8 00059228 48 1E C2 C9 */ bl func_80249890 /* 8005D5CC 0005922C 38 60 03 FF */ li r3, 0x3ff /* 8005D5D0 00059230 48 17 E0 A5 */ bl func_801DB674 /* 8005D5D4 00059234 38 60 03 F6 */ li r3, 0x3f6 /* 8005D5D8 00059238 48 1E C2 B9 */ bl func_80249890 /* 8005D5DC 0005923C 38 60 03 F6 */ li r3, 0x3f6 /* 8005D5E0 00059240 48 17 E0 95 */ bl func_801DB674 /* 8005D5E4 00059244 A0 7E 00 B2 */ lhz r3, 0xb2(r30) /* 8005D5E8 00059248 38 00 00 01 */ li r0, 1 /* 8005D5EC 0005924C C8 02 85 F8 */ lfd f0, lbl_80640BF8-_SDA2_BASE_(r2) /* 8005D5F0 00059250 38 80 00 03 */ li r4, 3 /* 8005D5F4 00059254 54 63 04 9E */ rlwinm r3, r3, 0, 0x12, 0xf /* 8005D5F8 00059258 98 9E 00 B0 */ stb r4, 0xb0(r30) /* 8005D5FC 0005925C 39 61 00 20 */ addi r11, r1, 0x20 /* 8005D600 00059260 98 9E 00 B1 */ stb r4, 0xb1(r30) /* 8005D604 00059264 B0 7E 00 B2 */ sth r3, 0xb2(r30) /* 8005D608 00059268 D8 0D 99 60 */ stfd f0, lbl_8063EC20-_SDA_BASE_(r13) /* 8005D60C 0005926C D8 0D 99 58 */ stfd f0, lbl_8063EC18-_SDA_BASE_(r13) /* 8005D610 00059270 D8 0D 99 48 */ stfd f0, lbl_8063EC08-_SDA_BASE_(r13) /* 8005D614 00059274 D8 0D 99 40 */ stfd f0, lbl_8063EC00-_SDA_BASE_(r13) /* 8005D618 00059278 D8 0D 99 30 */ stfd f0, lbl_8063EBF0-_SDA_BASE_(r13) /* 8005D61C 0005927C D8 0D 99 28 */ stfd f0, lbl_8063EBE8-_SDA_BASE_(r13) /* 8005D620 00059280 98 0D 99 68 */ stb r0, lbl_8063EC28-_SDA_BASE_(r13) /* 8005D624 00059284 98 0D 99 50 */ stb r0, lbl_8063EC10-_SDA_BASE_(r13) /* 8005D628 00059288 98 0D 99 38 */ stb r0, lbl_8063EBF8-_SDA_BASE_(r13) /* 8005D62C 0005928C 48 16 9B 51 */ bl _restgpr_29 /* 8005D630 00059290 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005D634 00059294 7C 08 03 A6 */ mtlr r0 /* 8005D638 00059298 38 21 00 20 */ addi r1, r1, 0x20 /* 8005D63C 0005929C 4E 80 00 20 */ blr .global func_8005D640 func_8005D640: /* 8005D640 000592A0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8005D644 000592A4 7C 08 02 A6 */ mflr r0 /* 8005D648 000592A8 90 01 00 34 */ stw r0, 0x34(r1) /* 8005D64C 000592AC 39 61 00 30 */ addi r11, r1, 0x30 /* 8005D650 000592B0 48 16 9A D1 */ bl _savegpr_25 /* 8005D654 000592B4 38 60 00 00 */ li r3, 0 /* 8005D658 000592B8 48 0F FC E9 */ bl func_8015D340 /* 8005D65C 000592BC 3F 80 80 41 */ lis r28, lbl_8040B768@ha /* 8005D660 000592C0 A8 1C B7 68 */ lha r0, lbl_8040B768@l(r28) /* 8005D664 000592C4 2C 00 FF FF */ cmpwi r0, -1 /* 8005D668 000592C8 41 82 01 0C */ beq lbl_8005D774 /* 8005D66C 000592CC 48 01 1A D1 */ bl func_8006F13C /* 8005D670 000592D0 48 01 1C 99 */ bl func_8006F308 /* 8005D674 000592D4 3F 60 80 48 */ lis r27, lbl_80478388@ha /* 8005D678 000592D8 3B BC B7 68 */ addi r29, r28, -18584 /* 8005D67C 000592DC 3B 20 00 00 */ li r25, 0 /* 8005D680 000592E0 3B C0 FF FF */ li r30, -1 /* 8005D684 000592E4 3B 7B 83 88 */ addi r27, r27, lbl_80478388@l /* 8005D688 000592E8 3B E0 00 00 */ li r31, 0 lbl_8005D68C: /* 8005D68C 000592EC 57 3A 13 BA */ rlwinm r26, r25, 2, 0xe, 0x1d /* 8005D690 000592F0 7C 1B D0 2E */ lwzx r0, r27, r26 /* 8005D694 000592F4 2C 00 00 00 */ cmpwi r0, 0 /* 8005D698 000592F8 41 82 00 20 */ beq lbl_8005D6B8 /* 8005D69C 000592FC 57 3C 0B FC */ rlwinm r28, r25, 1, 0xf, 0x1e /* 8005D6A0 00059300 7C 7D E2 2E */ lhzx r3, r29, r28 /* 8005D6A4 00059304 48 1F 66 29 */ bl func_80253CCC /* 8005D6A8 00059308 7C 7B D0 2E */ lwzx r3, r27, r26 /* 8005D6AC 0005930C 4B FF 87 85 */ bl func_80055E30 /* 8005D6B0 00059310 7F DD E3 2E */ sthx r30, r29, r28 /* 8005D6B4 00059314 7F FB D1 2E */ stwx r31, r27, r26 lbl_8005D6B8: /* 8005D6B8 00059318 3B 39 00 01 */ addi r25, r25, 1 /* 8005D6BC 0005931C 28 19 00 20 */ cmplwi r25, 0x20 /* 8005D6C0 00059320 41 80 FF CC */ blt lbl_8005D68C /* 8005D6C4 00059324 38 00 00 00 */ li r0, 0 /* 8005D6C8 00059328 80 6D 81 FC */ lwz r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005D6CC 0005932C B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005D6D0 00059330 B0 0D 99 16 */ sth r0, lbl_8063EBD6-_SDA_BASE_(r13) /* 8005D6D4 00059334 48 1F 68 B9 */ bl func_80253F8C /* 8005D6D8 00059338 3B E0 FF FF */ li r31, -1 /* 8005D6DC 0005933C 80 6D 82 00 */ lwz r3, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005D6E0 00059340 93 ED 81 FC */ stw r31, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005D6E4 00059344 48 1F 68 A9 */ bl func_80253F8C /* 8005D6E8 00059348 93 ED 82 00 */ stw r31, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005D6EC 0005934C 80 6D 82 04 */ lwz r3, lbl_8063D4C4-_SDA_BASE_(r13) /* 8005D6F0 00059350 48 1F 68 9D */ bl func_80253F8C /* 8005D6F4 00059354 93 ED 82 04 */ stw r31, lbl_8063D4C4-_SDA_BASE_(r13) /* 8005D6F8 00059358 80 6D 82 08 */ lwz r3, lbl_8063D4C8-_SDA_BASE_(r13) /* 8005D6FC 0005935C 48 1F 68 91 */ bl func_80253F8C /* 8005D700 00059360 93 ED 82 08 */ stw r31, lbl_8063D4C8-_SDA_BASE_(r13) /* 8005D704 00059364 80 6D 82 0C */ lwz r3, lbl_8063D4CC-_SDA_BASE_(r13) /* 8005D708 00059368 48 1F 68 85 */ bl func_80253F8C /* 8005D70C 0005936C 93 ED 82 0C */ stw r31, lbl_8063D4CC-_SDA_BASE_(r13) /* 8005D710 00059370 48 01 17 01 */ bl func_8006EE10 /* 8005D714 00059374 38 60 03 EA */ li r3, 0x3ea /* 8005D718 00059378 48 1E C1 79 */ bl func_80249890 /* 8005D71C 0005937C 38 60 03 EA */ li r3, 0x3ea /* 8005D720 00059380 48 17 DF 55 */ bl func_801DB674 /* 8005D724 00059384 4B FF B4 81 */ bl VMBASEIsPageValid /* 8005D728 00059388 3F E0 80 40 */ lis r31, lbl_803FB938@ha /* 8005D72C 0005938C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005D730 00059390 3B FF B9 38 */ addi r31, r31, lbl_803FB938@l /* 8005D734 00059394 7C 7F 00 2E */ lwzx r3, r31, r0 /* 8005D738 00059398 48 1E C1 59 */ bl func_80249890 /* 8005D73C 0005939C 4B FF B4 69 */ bl VMBASEIsPageValid /* 8005D740 000593A0 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 8005D744 000593A4 7C 7F 00 2E */ lwzx r3, r31, r0 /* 8005D748 000593A8 48 17 DF 2D */ bl func_801DB674 /* 8005D74C 000593AC 48 09 BB 8D */ bl func_800F92D8 /* 8005D750 000593B0 38 60 03 F7 */ li r3, 0x3f7 /* 8005D754 000593B4 48 1E C1 3D */ bl func_80249890 /* 8005D758 000593B8 38 60 03 F7 */ li r3, 0x3f7 /* 8005D75C 000593BC 48 17 DF 19 */ bl func_801DB674 /* 8005D760 000593C0 38 60 00 00 */ li r3, 0 /* 8005D764 000593C4 4B FF C1 21 */ bl func_80059884 /* 8005D768 000593C8 38 00 00 16 */ li r0, 0x16 /* 8005D76C 000593CC 98 0D 99 22 */ stb r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005D770 000593D0 48 1F 37 65 */ bl func_80250ED4 lbl_8005D774: /* 8005D774 000593D4 39 61 00 30 */ addi r11, r1, 0x30 /* 8005D778 000593D8 48 16 99 F5 */ bl _restgpr_25 /* 8005D77C 000593DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005D780 000593E0 7C 08 03 A6 */ mtlr r0 /* 8005D784 000593E4 38 21 00 30 */ addi r1, r1, 0x30 /* 8005D788 000593E8 4E 80 00 20 */ blr .global func_8005D78C func_8005D78C: /* 8005D78C 000593EC 28 04 00 09 */ cmplwi r4, 9 /* 8005D790 000593F0 40 82 00 1C */ bne lbl_8005D7AC /* 8005D794 000593F4 3C E0 80 48 */ lis r7, lbl_80478408@ha /* 8005D798 000593F8 38 00 00 00 */ li r0, 0 /* 8005D79C 000593FC 38 E7 84 08 */ addi r7, r7, lbl_80478408@l /* 8005D7A0 00059400 B0 A7 00 84 */ sth r5, 0x84(r7) /* 8005D7A4 00059404 B0 C7 00 86 */ sth r6, 0x86(r7) /* 8005D7A8 00059408 90 07 00 B8 */ stw r0, 0xb8(r7) lbl_8005D7AC: /* 8005D7AC 0005940C 38 C0 00 01 */ li r6, 1 /* 8005D7B0 00059410 48 00 00 20 */ b func_8005D7D0 .global func_8005D7B4 func_8005D7B4: /* 8005D7B4 00059414 3C C0 80 48 */ lis r6, lbl_80478408@ha /* 8005D7B8 00059418 38 A0 00 0F */ li r5, 0xf /* 8005D7BC 0005941C 38 C6 84 08 */ addi r6, r6, lbl_80478408@l /* 8005D7C0 00059420 90 86 00 B8 */ stw r4, 0xb8(r6) /* 8005D7C4 00059424 38 80 00 09 */ li r4, 9 /* 8005D7C8 00059428 38 C0 00 01 */ li r6, 1 /* 8005D7CC 0005942C 48 00 00 04 */ b func_8005D7D0 .global func_8005D7D0 func_8005D7D0: /* 8005D7D0 00059430 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8005D7D4 00059434 7C 08 02 A6 */ mflr r0 /* 8005D7D8 00059438 90 01 00 44 */ stw r0, 0x44(r1) /* 8005D7DC 0005943C 39 61 00 40 */ addi r11, r1, 0x40 /* 8005D7E0 00059440 48 16 99 45 */ bl _savegpr_26 /* 8005D7E4 00059444 28 03 00 02 */ cmplwi r3, 2 /* 8005D7E8 00059448 7C 7A 1B 78 */ mr r26, r3 /* 8005D7EC 0005944C 7C 9D 23 78 */ mr r29, r4 /* 8005D7F0 00059450 7C BE 2B 78 */ mr r30, r5 /* 8005D7F4 00059454 41 80 00 24 */ blt lbl_8005D818 /* 8005D7F8 00059458 2C 04 00 14 */ cmpwi r4, 0x14 /* 8005D7FC 0005945C 41 82 00 1C */ beq lbl_8005D818 /* 8005D800 00059460 40 80 14 08 */ bge lbl_8005EC08 /* 8005D804 00059464 2C 04 00 11 */ cmpwi r4, 0x11 /* 8005D808 00059468 40 80 14 00 */ bge lbl_8005EC08 /* 8005D80C 0005946C 2C 04 00 0D */ cmpwi r4, 0xd /* 8005D810 00059470 40 80 00 08 */ bge lbl_8005D818 /* 8005D814 00059474 48 00 13 F4 */ b lbl_8005EC08 lbl_8005D818: /* 8005D818 00059478 3C E0 80 48 */ lis r7, lbl_80478408@ha /* 8005D81C 0005947C 38 E7 84 08 */ addi r7, r7, lbl_80478408@l /* 8005D820 00059480 80 E7 00 B4 */ lwz r7, 0xb4(r7) /* 8005D824 00059484 80 07 00 0C */ lwz r0, 0xc(r7) /* 8005D828 00059488 2C 00 00 03 */ cmpwi r0, 3 /* 8005D82C 0005948C 40 82 00 70 */ bne lbl_8005D89C /* 8005D830 00059490 28 04 00 12 */ cmplwi r4, 0x12 /* 8005D834 00059494 40 82 00 20 */ bne lbl_8005D854 /* 8005D838 00059498 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005D83C 0005949C 38 80 00 08 */ li r4, 8 /* 8005D840 000594A0 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005D844 000594A4 38 A0 00 01 */ li r5, 1 /* 8005D848 000594A8 A8 63 00 38 */ lha r3, 0x38(r3) /* 8005D84C 000594AC 48 1F 65 A5 */ bl func_80253DF0 /* 8005D850 000594B0 48 00 13 B8 */ b lbl_8005EC08 lbl_8005D854: /* 8005D854 000594B4 28 04 00 13 */ cmplwi r4, 0x13 /* 8005D858 000594B8 40 82 00 20 */ bne lbl_8005D878 /* 8005D85C 000594BC 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005D860 000594C0 38 80 00 08 */ li r4, 8 /* 8005D864 000594C4 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005D868 000594C8 38 A0 00 00 */ li r5, 0 /* 8005D86C 000594CC A8 63 00 38 */ lha r3, 0x38(r3) /* 8005D870 000594D0 48 1F 65 81 */ bl func_80253DF0 /* 8005D874 000594D4 48 00 13 94 */ b lbl_8005EC08 lbl_8005D878: /* 8005D878 000594D8 28 04 00 11 */ cmplwi r4, 0x11 /* 8005D87C 000594DC 40 82 00 20 */ bne lbl_8005D89C /* 8005D880 000594E0 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005D884 000594E4 38 80 00 08 */ li r4, 8 /* 8005D888 000594E8 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005D88C 000594EC 38 A0 00 00 */ li r5, 0 /* 8005D890 000594F0 A8 63 00 06 */ lha r3, 6(r3) /* 8005D894 000594F4 48 1F 65 5D */ bl func_80253DF0 /* 8005D898 000594F8 48 00 13 70 */ b lbl_8005EC08 lbl_8005D89C: /* 8005D89C 000594FC 2C 00 00 01 */ cmpwi r0, 1 /* 8005D8A0 00059500 40 82 01 14 */ bne lbl_8005D9B4 /* 8005D8A4 00059504 88 07 00 1B */ lbz r0, 0x1b(r7) /* 8005D8A8 00059508 28 00 00 02 */ cmplwi r0, 2 /* 8005D8AC 0005950C 40 82 01 08 */ bne lbl_8005D9B4 /* 8005D8B0 00059510 2C 06 00 00 */ cmpwi r6, 0 /* 8005D8B4 00059514 41 82 01 00 */ beq lbl_8005D9B4 /* 8005D8B8 00059518 28 04 00 15 */ cmplwi r4, 0x15 /* 8005D8BC 0005951C 40 82 00 BC */ bne lbl_8005D978 /* 8005D8C0 00059520 3F A0 80 48 */ lis r29, lbl_80478408@ha /* 8005D8C4 00059524 3B BD 84 08 */ addi r29, r29, lbl_80478408@l /* 8005D8C8 00059528 A0 1D 00 6E */ lhz r0, 0x6e(r29) /* 8005D8CC 0005952C 2C 00 00 00 */ cmpwi r0, 0 /* 8005D8D0 00059530 40 82 13 38 */ bne lbl_8005EC08 /* 8005D8D4 00059534 3F 80 80 41 */ lis r28, lbl_8040B768@ha /* 8005D8D8 00059538 38 80 00 08 */ li r4, 8 /* 8005D8DC 0005953C 3B 9C B7 68 */ addi r28, r28, lbl_8040B768@l /* 8005D8E0 00059540 38 A0 00 00 */ li r5, 0 /* 8005D8E4 00059544 A8 7C 00 14 */ lha r3, 0x14(r28) /* 8005D8E8 00059548 48 1F 65 09 */ bl func_80253DF0 /* 8005D8EC 0005954C A8 7C 00 20 */ lha r3, 0x20(r28) /* 8005D8F0 00059550 38 80 00 08 */ li r4, 8 /* 8005D8F4 00059554 38 A0 00 00 */ li r5, 0 /* 8005D8F8 00059558 48 1F 64 F9 */ bl func_80253DF0 /* 8005D8FC 0005955C A8 7C 00 22 */ lha r3, 0x22(r28) /* 8005D900 00059560 38 80 00 08 */ li r4, 8 /* 8005D904 00059564 38 A0 00 00 */ li r5, 0 /* 8005D908 00059568 48 1F 64 E9 */ bl func_80253DF0 /* 8005D90C 0005956C A8 7C 00 24 */ lha r3, 0x24(r28) /* 8005D910 00059570 38 80 00 08 */ li r4, 8 /* 8005D914 00059574 38 A0 00 00 */ li r5, 0 /* 8005D918 00059578 48 1F 64 D9 */ bl func_80253DF0 /* 8005D91C 0005957C A8 7C 00 26 */ lha r3, 0x26(r28) /* 8005D920 00059580 38 80 00 08 */ li r4, 8 /* 8005D924 00059584 38 A0 00 00 */ li r5, 0 /* 8005D928 00059588 48 1F 64 C9 */ bl func_80253DF0 /* 8005D92C 0005958C A8 7C 00 28 */ lha r3, 0x28(r28) /* 8005D930 00059590 38 80 00 08 */ li r4, 8 /* 8005D934 00059594 38 A0 00 00 */ li r5, 0 /* 8005D938 00059598 48 1F 64 B9 */ bl func_80253DF0 /* 8005D93C 0005959C A8 7C 00 2A */ lha r3, 0x2a(r28) /* 8005D940 000595A0 38 80 00 08 */ li r4, 8 /* 8005D944 000595A4 38 A0 00 00 */ li r5, 0 /* 8005D948 000595A8 48 1F 64 A9 */ bl func_80253DF0 /* 8005D94C 000595AC 38 00 00 08 */ li r0, 8 /* 8005D950 000595B0 A0 7D 00 84 */ lhz r3, 0x84(r29) /* 8005D954 000595B4 B0 1D 00 90 */ sth r0, 0x90(r29) /* 8005D958 000595B8 48 1F 29 7D */ bl func_802502D4 /* 8005D95C 000595BC A0 1D 00 B2 */ lhz r0, 0xb2(r29) /* 8005D960 000595C0 38 60 00 00 */ li r3, 0 /* 8005D964 000595C4 98 7D 00 B0 */ stb r3, 0xb0(r29) /* 8005D968 000595C8 54 00 04 9E */ rlwinm r0, r0, 0, 0x12, 0xf /* 8005D96C 000595CC B0 7D 00 8E */ sth r3, 0x8e(r29) /* 8005D970 000595D0 B0 1D 00 B2 */ sth r0, 0xb2(r29) /* 8005D974 000595D4 48 00 12 94 */ b lbl_8005EC08 lbl_8005D978: /* 8005D978 000595D8 3C E0 80 48 */ lis r7, lbl_80478408@ha /* 8005D97C 000595DC 54 68 0D FC */ rlwinm r8, r3, 1, 0x17, 0x1e /* 8005D980 000595E0 38 E7 84 08 */ addi r7, r7, lbl_80478408@l /* 8005D984 000595E4 28 03 00 01 */ cmplwi r3, 1 /* 8005D988 000595E8 7C C7 1A 14 */ add r6, r7, r3 /* 8005D98C 000595EC 38 00 00 0F */ li r0, 0xf /* 8005D990 000595F0 98 66 00 A6 */ stb r3, 0xa6(r6) /* 8005D994 000595F4 7C 67 42 14 */ add r3, r7, r8 /* 8005D998 000595F8 B0 83 00 A8 */ sth r4, 0xa8(r3) /* 8005D99C 000595FC B0 A3 00 AC */ sth r5, 0xac(r3) /* 8005D9A0 00059600 98 06 00 B0 */ stb r0, 0xb0(r6) /* 8005D9A4 00059604 40 82 12 64 */ bne lbl_8005EC08 /* 8005D9A8 00059608 38 00 00 11 */ li r0, 0x11 /* 8005D9AC 0005960C 98 06 00 B0 */ stb r0, 0xb0(r6) /* 8005D9B0 00059610 48 00 12 58 */ b lbl_8005EC08 lbl_8005D9B4: /* 8005D9B4 00059614 3F E0 80 48 */ lis r31, lbl_80478408@ha /* 8005D9B8 00059618 3C 80 80 41 */ lis r4, lbl_8040B768@ha /* 8005D9BC 0005961C 3B FF 84 08 */ addi r31, r31, lbl_80478408@l /* 8005D9C0 00059620 38 A1 00 18 */ addi r5, r1, 0x18 /* 8005D9C4 00059624 38 84 B7 68 */ addi r4, r4, lbl_8040B768@l /* 8005D9C8 00059628 B0 7F 00 6E */ sth r3, 0x6e(r31) /* 8005D9CC 0005962C A8 64 00 06 */ lha r3, 6(r4) /* 8005D9D0 00059630 38 80 00 08 */ li r4, 8 /* 8005D9D4 00059634 48 1F 64 79 */ bl func_80253E4C /* 8005D9D8 00059638 2C 1D 00 10 */ cmpwi r29, 0x10 /* 8005D9DC 0005963C 9B AD 99 22 */ stb r29, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005D9E0 00059640 41 82 01 F8 */ beq lbl_8005DBD8 /* 8005D9E4 00059644 40 80 00 1C */ bge lbl_8005DA00 /* 8005D9E8 00059648 2C 1D 00 0E */ cmpwi r29, 0xe /* 8005D9EC 0005964C 41 82 01 54 */ beq lbl_8005DB40 /* 8005D9F0 00059650 40 80 01 B8 */ bge lbl_8005DBA8 /* 8005D9F4 00059654 2C 1D 00 0D */ cmpwi r29, 0xd /* 8005D9F8 00059658 40 80 00 14 */ bge lbl_8005DA0C /* 8005D9FC 0005965C 48 00 02 18 */ b lbl_8005DC14 lbl_8005DA00: /* 8005DA00 00059660 2C 1D 00 14 */ cmpwi r29, 0x14 /* 8005DA04 00059664 41 82 01 D4 */ beq lbl_8005DBD8 /* 8005DA08 00059668 48 00 02 0C */ b lbl_8005DC14 lbl_8005DA0C: /* 8005DA0C 0005966C A0 1F 00 A0 */ lhz r0, 0xa0(r31) /* 8005DA10 00059670 28 00 00 26 */ cmplwi r0, 0x26 /* 8005DA14 00059674 41 82 01 14 */ beq lbl_8005DB28 /* 8005DA18 00059678 48 01 15 B1 */ bl func_8006EFC8 /* 8005DA1C 0005967C 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8005DA20 00059680 80 03 00 08 */ lwz r0, 8(r3) /* 8005DA24 00059684 2C 00 00 03 */ cmpwi r0, 3 /* 8005DA28 00059688 41 82 00 48 */ beq lbl_8005DA70 /* 8005DA2C 0005968C 40 80 00 14 */ bge lbl_8005DA40 /* 8005DA30 00059690 2C 00 00 01 */ cmpwi r0, 1 /* 8005DA34 00059694 41 82 00 18 */ beq lbl_8005DA4C /* 8005DA38 00059698 40 80 00 20 */ bge lbl_8005DA58 /* 8005DA3C 0005969C 48 00 00 34 */ b lbl_8005DA70 lbl_8005DA40: /* 8005DA40 000596A0 2C 00 00 05 */ cmpwi r0, 5 /* 8005DA44 000596A4 40 80 00 2C */ bge lbl_8005DA70 /* 8005DA48 000596A8 48 00 00 1C */ b lbl_8005DA64 lbl_8005DA4C: /* 8005DA4C 000596AC 38 00 00 02 */ li r0, 2 /* 8005DA50 000596B0 B0 1F 00 9C */ sth r0, 0x9c(r31) /* 8005DA54 000596B4 48 00 00 2C */ b lbl_8005DA80 lbl_8005DA58: /* 8005DA58 000596B8 38 00 00 02 */ li r0, 2 /* 8005DA5C 000596BC B0 1F 00 9C */ sth r0, 0x9c(r31) /* 8005DA60 000596C0 48 00 00 20 */ b lbl_8005DA80 lbl_8005DA64: /* 8005DA64 000596C4 38 00 00 04 */ li r0, 4 /* 8005DA68 000596C8 B0 1F 00 9C */ sth r0, 0x9c(r31) /* 8005DA6C 000596CC 48 00 00 14 */ b lbl_8005DA80 lbl_8005DA70: /* 8005DA70 000596D0 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005DA74 000596D4 38 00 00 02 */ li r0, 2 /* 8005DA78 000596D8 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005DA7C 000596DC B0 03 00 9C */ sth r0, 0x9c(r3) lbl_8005DA80: /* 8005DA80 000596E0 57 C0 06 F7 */ rlwinm. r0, r30, 0, 0x1b, 0x1b /* 8005DA84 000596E4 41 82 00 1C */ beq lbl_8005DAA0 /* 8005DA88 000596E8 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005DA8C 000596EC 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005DA90 000596F0 A0 03 00 8C */ lhz r0, 0x8c(r3) /* 8005DA94 000596F4 7C 00 F3 78 */ or r0, r0, r30 /* 8005DA98 000596F8 B0 03 00 8C */ sth r0, 0x8c(r3) /* 8005DA9C 000596FC 48 00 00 10 */ b lbl_8005DAAC lbl_8005DAA0: /* 8005DAA0 00059700 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005DAA4 00059704 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005DAA8 00059708 B3 C3 00 8C */ sth r30, 0x8c(r3) lbl_8005DAAC: /* 8005DAAC 0005970C 3C E0 80 48 */ lis r7, lbl_80478408@ha /* 8005DAB0 00059710 3C 60 80 06 */ lis r3, func_80062F08@ha /* 8005DAB4 00059714 38 E7 84 08 */ addi r7, r7, lbl_80478408@l /* 8005DAB8 00059718 38 A0 08 00 */ li r5, 0x800 /* 8005DABC 0005971C 38 C0 00 00 */ li r6, 0 /* 8005DAC0 00059720 38 00 00 25 */ li r0, 0x25 /* 8005DAC4 00059724 3C 80 80 06 */ lis r4, func_80062FF8@ha /* 8005DAC8 00059728 B0 A7 00 6A */ sth r5, 0x6a(r7) /* 8005DACC 0005972C 80 AD 82 04 */ lwz r5, lbl_8063D4C4-_SDA_BASE_(r13) /* 8005DAD0 00059730 38 63 2F 08 */ addi r3, r3, func_80062F08@l /* 8005DAD4 00059734 B0 C7 00 9E */ sth r6, 0x9e(r7) /* 8005DAD8 00059738 38 84 2F F8 */ addi r4, r4, func_80062FF8@l /* 8005DADC 0005973C B0 07 00 A0 */ sth r0, 0xa0(r7) /* 8005DAE0 00059740 48 1F 64 8D */ bl func_80253F6C /* 8005DAE4 00059744 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005DAE8 00059748 90 6D 82 04 */ stw r3, lbl_8063D4C4-_SDA_BASE_(r13) /* 8005DAEC 0005974C 2C 00 00 00 */ cmpwi r0, 0 /* 8005DAF0 00059750 40 82 00 2C */ bne lbl_8005DB1C /* 8005DAF4 00059754 3F 80 80 41 */ lis r28, lbl_8040B768@ha /* 8005DAF8 00059758 38 80 00 08 */ li r4, 8 /* 8005DAFC 0005975C 3B 9C B7 68 */ addi r28, r28, lbl_8040B768@l /* 8005DB00 00059760 38 A0 00 01 */ li r5, 1 /* 8005DB04 00059764 A8 7C 00 06 */ lha r3, 6(r28) /* 8005DB08 00059768 48 1F 62 E9 */ bl func_80253DF0 /* 8005DB0C 0005976C A8 7C 00 06 */ lha r3, 6(r28) /* 8005DB10 00059770 38 80 00 00 */ li r4, 0 /* 8005DB14 00059774 38 A0 00 00 */ li r5, 0 /* 8005DB18 00059778 48 1F 62 99 */ bl func_80253DB0 lbl_8005DB1C: /* 8005DB1C 0005977C 38 60 00 01 */ li r3, 1 /* 8005DB20 00059780 48 00 49 75 */ bl func_80062494 /* 8005DB24 00059784 48 00 10 E4 */ b lbl_8005EC08 lbl_8005DB28: /* 8005DB28 00059788 57 C0 06 F7 */ rlwinm. r0, r30, 0, 0x1b, 0x1b /* 8005DB2C 0005978C 41 82 10 DC */ beq lbl_8005EC08 /* 8005DB30 00059790 A0 1F 00 8C */ lhz r0, 0x8c(r31) /* 8005DB34 00059794 7C 00 F3 78 */ or r0, r0, r30 /* 8005DB38 00059798 B0 1F 00 8C */ sth r0, 0x8c(r31) /* 8005DB3C 0005979C 48 00 10 CC */ b lbl_8005EC08 lbl_8005DB40: /* 8005DB40 000597A0 2C 1A 00 02 */ cmpwi r26, 2 /* 8005DB44 000597A4 41 82 00 44 */ beq lbl_8005DB88 /* 8005DB48 000597A8 40 80 00 14 */ bge lbl_8005DB5C /* 8005DB4C 000597AC 2C 1A 00 00 */ cmpwi r26, 0 /* 8005DB50 000597B0 41 82 00 18 */ beq lbl_8005DB68 /* 8005DB54 000597B4 40 80 00 24 */ bge lbl_8005DB78 /* 8005DB58 000597B8 48 00 10 B0 */ b lbl_8005EC08 lbl_8005DB5C: /* 8005DB5C 000597BC 2C 1A 00 04 */ cmpwi r26, 4 /* 8005DB60 000597C0 40 80 10 A8 */ bge lbl_8005EC08 /* 8005DB64 000597C4 48 00 00 34 */ b lbl_8005DB98 lbl_8005DB68: /* 8005DB68 000597C8 A0 1F 00 9E */ lhz r0, 0x9e(r31) /* 8005DB6C 000597CC 60 00 00 01 */ ori r0, r0, 1 /* 8005DB70 000597D0 B0 1F 00 9E */ sth r0, 0x9e(r31) /* 8005DB74 000597D4 48 00 10 94 */ b lbl_8005EC08 lbl_8005DB78: /* 8005DB78 000597D8 A0 1F 00 9E */ lhz r0, 0x9e(r31) /* 8005DB7C 000597DC 60 00 00 02 */ ori r0, r0, 2 /* 8005DB80 000597E0 B0 1F 00 9E */ sth r0, 0x9e(r31) /* 8005DB84 000597E4 48 00 10 84 */ b lbl_8005EC08 lbl_8005DB88: /* 8005DB88 000597E8 A0 1F 00 9E */ lhz r0, 0x9e(r31) /* 8005DB8C 000597EC 60 00 00 04 */ ori r0, r0, 4 /* 8005DB90 000597F0 B0 1F 00 9E */ sth r0, 0x9e(r31) /* 8005DB94 000597F4 48 00 10 74 */ b lbl_8005EC08 lbl_8005DB98: /* 8005DB98 000597F8 A0 1F 00 9E */ lhz r0, 0x9e(r31) /* 8005DB9C 000597FC 60 00 00 08 */ ori r0, r0, 8 /* 8005DBA0 00059800 B0 1F 00 9E */ sth r0, 0x9e(r31) /* 8005DBA4 00059804 48 00 10 64 */ b lbl_8005EC08 lbl_8005DBA8: /* 8005DBA8 00059808 38 A0 00 27 */ li r5, 0x27 /* 8005DBAC 0005980C 38 00 00 1D */ li r0, 0x1d /* 8005DBB0 00059810 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005DBB4 00059814 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005DBB8 00059818 B0 BF 00 A0 */ sth r5, 0xa0(r31) /* 8005DBBC 0005981C 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005DBC0 00059820 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005DBC4 00059824 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005DBC8 00059828 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005DBCC 0005982C 48 1F 63 A1 */ bl func_80253F6C /* 8005DBD0 00059830 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005DBD4 00059834 48 00 10 34 */ b lbl_8005EC08 lbl_8005DBD8: /* 8005DBD8 00059838 3C A0 80 48 */ lis r5, lbl_80478408@ha /* 8005DBDC 0005983C 38 A5 84 08 */ addi r5, r5, lbl_80478408@l /* 8005DBE0 00059840 A0 05 00 9A */ lhz r0, 0x9a(r5) /* 8005DBE4 00059844 2C 00 00 00 */ cmpwi r0, 0 /* 8005DBE8 00059848 40 82 10 20 */ bne lbl_8005EC08 /* 8005DBEC 0005984C 38 00 00 01 */ li r0, 1 /* 8005DBF0 00059850 3C 60 80 06 */ lis r3, func_80062FFC@ha /* 8005DBF4 00059854 3C 80 80 06 */ lis r4, func_8006314C@ha /* 8005DBF8 00059858 B0 05 00 9A */ sth r0, 0x9a(r5) /* 8005DBFC 0005985C 80 AD 82 08 */ lwz r5, lbl_8063D4C8-_SDA_BASE_(r13) /* 8005DC00 00059860 38 63 2F FC */ addi r3, r3, func_80062FFC@l /* 8005DC04 00059864 38 84 31 4C */ addi r4, r4, func_8006314C@l /* 8005DC08 00059868 48 1F 63 65 */ bl func_80253F6C /* 8005DC0C 0005986C 90 6D 82 08 */ stw r3, lbl_8063D4C8-_SDA_BASE_(r13) /* 8005DC10 00059870 48 00 0F F8 */ b lbl_8005EC08 lbl_8005DC14: /* 8005DC14 00059874 38 00 00 00 */ li r0, 0 /* 8005DC18 00059878 2C 1D 00 0D */ cmpwi r29, 0xd /* 8005DC1C 0005987C 9B AD 99 22 */ stb r29, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005DC20 00059880 B0 0D 99 16 */ sth r0, lbl_8063EBD6-_SDA_BASE_(r13) /* 8005DC24 00059884 40 80 00 0C */ bge lbl_8005DC30 /* 8005DC28 00059888 2C 1D 00 09 */ cmpwi r29, 9 /* 8005DC2C 0005988C 40 80 01 1C */ bge lbl_8005DD48 lbl_8005DC30: /* 8005DC30 00059890 38 60 00 01 */ li r3, 1 /* 8005DC34 00059894 48 00 48 61 */ bl func_80062494 /* 8005DC38 00059898 3F 80 80 48 */ lis r28, lbl_80478408@ha /* 8005DC3C 0005989C 3B 60 00 00 */ li r27, 0 /* 8005DC40 000598A0 3B 9C 84 08 */ addi r28, r28, lbl_80478408@l /* 8005DC44 000598A4 3B E0 00 00 */ li r31, 0 lbl_8005DC48: /* 8005DC48 000598A8 7C 7C FA 14 */ add r3, r28, r31 /* 8005DC4C 000598AC 83 43 00 04 */ lwz r26, 4(r3) /* 8005DC50 000598B0 7F 43 D3 78 */ mr r3, r26 /* 8005DC54 000598B4 4B FF 8F F9 */ bl func_80056C4C /* 8005DC58 000598B8 2C 03 00 00 */ cmpwi r3, 0 /* 8005DC5C 000598BC 41 82 00 10 */ beq lbl_8005DC6C /* 8005DC60 000598C0 7F 43 D3 78 */ mr r3, r26 /* 8005DC64 000598C4 48 37 E5 39 */ bl func_803DC19C /* 8005DC68 000598C8 4B FF ED 99 */ bl func_8005CA00 lbl_8005DC6C: /* 8005DC6C 000598CC 3B 7B 00 01 */ addi r27, r27, 1 /* 8005DC70 000598D0 3B FF 00 04 */ addi r31, r31, 4 /* 8005DC74 000598D4 28 1B 00 06 */ cmplwi r27, 6 /* 8005DC78 000598D8 41 80 FF D0 */ blt lbl_8005DC48 /* 8005DC7C 000598DC 3F 80 80 48 */ lis r28, lbl_80478408@ha /* 8005DC80 000598E0 3B 60 00 00 */ li r27, 0 /* 8005DC84 000598E4 3B 9C 84 08 */ addi r28, r28, lbl_80478408@l /* 8005DC88 000598E8 3B E0 00 00 */ li r31, 0 lbl_8005DC8C: /* 8005DC8C 000598EC 7C 7C FA 14 */ add r3, r28, r31 /* 8005DC90 000598F0 83 43 00 1C */ lwz r26, 0x1c(r3) /* 8005DC94 000598F4 7F 43 D3 78 */ mr r3, r26 /* 8005DC98 000598F8 4B FF 8F B5 */ bl func_80056C4C /* 8005DC9C 000598FC 2C 03 00 00 */ cmpwi r3, 0 /* 8005DCA0 00059900 41 82 00 10 */ beq lbl_8005DCB0 /* 8005DCA4 00059904 7F 43 D3 78 */ mr r3, r26 /* 8005DCA8 00059908 48 37 E4 F5 */ bl func_803DC19C /* 8005DCAC 0005990C 4B FF ED 55 */ bl func_8005CA00 lbl_8005DCB0: /* 8005DCB0 00059910 3B 7B 00 01 */ addi r27, r27, 1 /* 8005DCB4 00059914 3B FF 00 04 */ addi r31, r31, 4 /* 8005DCB8 00059918 28 1B 00 06 */ cmplwi r27, 6 /* 8005DCBC 0005991C 41 80 FF D0 */ blt lbl_8005DC8C /* 8005DCC0 00059920 3F 80 80 48 */ lis r28, lbl_80478408@ha /* 8005DCC4 00059924 3B 60 00 00 */ li r27, 0 /* 8005DCC8 00059928 3B 9C 84 08 */ addi r28, r28, lbl_80478408@l /* 8005DCCC 0005992C 3B E0 00 00 */ li r31, 0 lbl_8005DCD0: /* 8005DCD0 00059930 7C 7C FA 14 */ add r3, r28, r31 /* 8005DCD4 00059934 83 43 00 34 */ lwz r26, 0x34(r3) /* 8005DCD8 00059938 7F 43 D3 78 */ mr r3, r26 /* 8005DCDC 0005993C 4B FF 8F 71 */ bl func_80056C4C /* 8005DCE0 00059940 2C 03 00 00 */ cmpwi r3, 0 /* 8005DCE4 00059944 41 82 00 10 */ beq lbl_8005DCF4 /* 8005DCE8 00059948 7F 43 D3 78 */ mr r3, r26 /* 8005DCEC 0005994C 48 37 E4 B1 */ bl func_803DC19C /* 8005DCF0 00059950 4B FF ED 11 */ bl func_8005CA00 lbl_8005DCF4: /* 8005DCF4 00059954 3B 7B 00 01 */ addi r27, r27, 1 /* 8005DCF8 00059958 3B FF 00 04 */ addi r31, r31, 4 /* 8005DCFC 0005995C 28 1B 00 06 */ cmplwi r27, 6 /* 8005DD00 00059960 41 80 FF D0 */ blt lbl_8005DCD0 /* 8005DD04 00059964 3F 80 80 48 */ lis r28, lbl_80478408@ha /* 8005DD08 00059968 3B 60 00 00 */ li r27, 0 /* 8005DD0C 0005996C 3B 9C 84 08 */ addi r28, r28, lbl_80478408@l /* 8005DD10 00059970 3B E0 00 00 */ li r31, 0 lbl_8005DD14: /* 8005DD14 00059974 7C 7C FA 14 */ add r3, r28, r31 /* 8005DD18 00059978 83 43 00 4C */ lwz r26, 0x4c(r3) /* 8005DD1C 0005997C 7F 43 D3 78 */ mr r3, r26 /* 8005DD20 00059980 4B FF 8F 2D */ bl func_80056C4C /* 8005DD24 00059984 2C 03 00 00 */ cmpwi r3, 0 /* 8005DD28 00059988 41 82 00 10 */ beq lbl_8005DD38 /* 8005DD2C 0005998C 7F 43 D3 78 */ mr r3, r26 /* 8005DD30 00059990 48 37 E4 6D */ bl func_803DC19C /* 8005DD34 00059994 4B FF EC CD */ bl func_8005CA00 lbl_8005DD38: /* 8005DD38 00059998 3B 7B 00 01 */ addi r27, r27, 1 /* 8005DD3C 0005999C 3B FF 00 04 */ addi r31, r31, 4 /* 8005DD40 000599A0 28 1B 00 06 */ cmplwi r27, 6 /* 8005DD44 000599A4 41 80 FF D0 */ blt lbl_8005DD14 lbl_8005DD48: /* 8005DD48 000599A8 28 1D 00 09 */ cmplwi r29, 9 /* 8005DD4C 000599AC 41 82 00 14 */ beq lbl_8005DD60 /* 8005DD50 000599B0 28 1D 00 0B */ cmplwi r29, 0xb /* 8005DD54 000599B4 41 82 00 0C */ beq lbl_8005DD60 /* 8005DD58 000599B8 38 00 00 01 */ li r0, 1 /* 8005DD5C 000599BC 98 0D 81 F8 */ stb r0, lbl_8063D4B8-_SDA_BASE_(r13) lbl_8005DD60: /* 8005DD60 000599C0 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005DD64 000599C4 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005DD68 000599C8 A0 03 00 6E */ lhz r0, 0x6e(r3) /* 8005DD6C 000599CC 2C 00 00 00 */ cmpwi r0, 0 /* 8005DD70 000599D0 40 82 00 3C */ bne lbl_8005DDAC /* 8005DD74 000599D4 88 6D 99 22 */ lbz r3, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005DD78 000599D8 28 03 00 03 */ cmplwi r3, 3 /* 8005DD7C 000599DC 40 82 00 14 */ bne lbl_8005DD90 /* 8005DD80 000599E0 28 1E 00 01 */ cmplwi r30, 1 /* 8005DD84 000599E4 40 82 00 0C */ bne lbl_8005DD90 /* 8005DD88 000599E8 38 00 00 00 */ li r0, 0 /* 8005DD8C 000599EC 98 0D 81 F8 */ stb r0, lbl_8063D4B8-_SDA_BASE_(r13) lbl_8005DD90: /* 8005DD90 000599F0 28 03 00 08 */ cmplwi r3, 8 /* 8005DD94 000599F4 40 82 00 4C */ bne lbl_8005DDE0 /* 8005DD98 000599F8 28 1E 00 01 */ cmplwi r30, 1 /* 8005DD9C 000599FC 40 82 00 44 */ bne lbl_8005DDE0 /* 8005DDA0 00059A00 38 00 00 00 */ li r0, 0 /* 8005DDA4 00059A04 98 0D 81 F8 */ stb r0, lbl_8063D4B8-_SDA_BASE_(r13) /* 8005DDA8 00059A08 48 00 00 38 */ b lbl_8005DDE0 lbl_8005DDAC: /* 8005DDAC 00059A0C 88 6D 99 22 */ lbz r3, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005DDB0 00059A10 28 03 00 03 */ cmplwi r3, 3 /* 8005DDB4 00059A14 40 82 00 14 */ bne lbl_8005DDC8 /* 8005DDB8 00059A18 28 1E 00 01 */ cmplwi r30, 1 /* 8005DDBC 00059A1C 40 82 00 0C */ bne lbl_8005DDC8 /* 8005DDC0 00059A20 38 00 00 00 */ li r0, 0 /* 8005DDC4 00059A24 98 0D 81 F8 */ stb r0, lbl_8063D4B8-_SDA_BASE_(r13) lbl_8005DDC8: /* 8005DDC8 00059A28 28 03 00 08 */ cmplwi r3, 8 /* 8005DDCC 00059A2C 40 82 00 14 */ bne lbl_8005DDE0 /* 8005DDD0 00059A30 28 1E 00 01 */ cmplwi r30, 1 /* 8005DDD4 00059A34 40 82 00 0C */ bne lbl_8005DDE0 /* 8005DDD8 00059A38 38 00 00 00 */ li r0, 0 /* 8005DDDC 00059A3C 98 0D 81 F8 */ stb r0, lbl_8063D4B8-_SDA_BASE_(r13) lbl_8005DDE0: /* 8005DDE0 00059A40 3F E0 80 48 */ lis r31, lbl_80478408@ha /* 8005DDE4 00059A44 3B FF 84 08 */ addi r31, r31, lbl_80478408@l /* 8005DDE8 00059A48 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8005DDEC 00059A4C 80 03 00 0C */ lwz r0, 0xc(r3) /* 8005DDF0 00059A50 2C 00 00 01 */ cmpwi r0, 1 /* 8005DDF4 00059A54 40 82 07 9C */ bne lbl_8005E590 /* 8005DDF8 00059A58 88 03 00 1B */ lbz r0, 0x1b(r3) /* 8005DDFC 00059A5C 28 00 00 02 */ cmplwi r0, 2 /* 8005DE00 00059A60 40 82 07 90 */ bne lbl_8005E590 /* 8005DE04 00059A64 28 1D 00 0C */ cmplwi r29, 0xc /* 8005DE08 00059A68 41 81 02 F0 */ bgt lbl_8005E0F8 /* 8005DE0C 00059A6C 3C 60 80 41 */ lis r3, lbl_8040B85C@ha /* 8005DE10 00059A70 57 A0 10 3A */ slwi r0, r29, 2 /* 8005DE14 00059A74 38 63 B8 5C */ addi r3, r3, lbl_8040B85C@l /* 8005DE18 00059A78 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005DE1C 00059A7C 7C 69 03 A6 */ mtctr r3 /* 8005DE20 00059A80 4E 80 04 20 */ bctr /* 8005DE24 00059A84 48 01 11 A5 */ bl func_8006EFC8 /* 8005DE28 00059A88 38 00 00 00 */ li r0, 0 /* 8005DE2C 00059A8C 38 60 00 00 */ li r3, 0 /* 8005DE30 00059A90 B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DE34 00059A94 48 00 30 01 */ bl func_80060E34 /* 8005DE38 00059A98 A0 1F 00 B2 */ lhz r0, 0xb2(r31) /* 8005DE3C 00059A9C B3 DF 00 8A */ sth r30, 0x8a(r31) /* 8005DE40 00059AA0 54 00 04 9E */ rlwinm r0, r0, 0, 0x12, 0xf /* 8005DE44 00059AA4 B0 1F 00 B2 */ sth r0, 0xb2(r31) /* 8005DE48 00059AA8 48 00 02 B0 */ b lbl_8005E0F8 /* 8005DE4C 00059AAC 48 01 11 7D */ bl func_8006EFC8 /* 8005DE50 00059AB0 38 00 00 01 */ li r0, 1 /* 8005DE54 00059AB4 38 60 00 02 */ li r3, 2 /* 8005DE58 00059AB8 B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DE5C 00059ABC 48 00 2F D9 */ bl func_80060E34 /* 8005DE60 00059AC0 A0 1F 00 B2 */ lhz r0, 0xb2(r31) /* 8005DE64 00059AC4 B3 DF 00 8A */ sth r30, 0x8a(r31) /* 8005DE68 00059AC8 54 00 04 9E */ rlwinm r0, r0, 0, 0x12, 0xf /* 8005DE6C 00059ACC B0 1F 00 B2 */ sth r0, 0xb2(r31) /* 8005DE70 00059AD0 48 00 02 88 */ b lbl_8005E0F8 /* 8005DE74 00059AD4 48 01 11 55 */ bl func_8006EFC8 /* 8005DE78 00059AD8 38 00 00 00 */ li r0, 0 /* 8005DE7C 00059ADC B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DE80 00059AE0 48 00 02 78 */ b lbl_8005E0F8 /* 8005DE84 00059AE4 48 01 11 45 */ bl func_8006EFC8 /* 8005DE88 00059AE8 38 00 00 00 */ li r0, 0 /* 8005DE8C 00059AEC B3 DF 00 A2 */ sth r30, 0xa2(r31) /* 8005DE90 00059AF0 B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DE94 00059AF4 48 00 02 64 */ b lbl_8005E0F8 /* 8005DE98 00059AF8 48 01 11 31 */ bl func_8006EFC8 /* 8005DE9C 00059AFC 38 00 00 01 */ li r0, 1 /* 8005DEA0 00059B00 B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DEA4 00059B04 48 00 02 54 */ b lbl_8005E0F8 /* 8005DEA8 00059B08 48 01 11 21 */ bl func_8006EFC8 /* 8005DEAC 00059B0C 38 00 00 01 */ li r0, 1 /* 8005DEB0 00059B10 B3 DF 00 A2 */ sth r30, 0xa2(r31) /* 8005DEB4 00059B14 B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DEB8 00059B18 48 00 02 40 */ b lbl_8005E0F8 /* 8005DEBC 00059B1C 48 01 11 0D */ bl func_8006EFC8 /* 8005DEC0 00059B20 38 00 00 FF */ li r0, 0xff /* 8005DEC4 00059B24 28 1D 00 03 */ cmplwi r29, 3 /* 8005DEC8 00059B28 B0 0D 99 1E */ sth r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005DECC 00059B2C 40 82 00 18 */ bne lbl_8005DEE4 /* 8005DED0 00059B30 38 60 00 01 */ li r3, 1 /* 8005DED4 00059B34 38 00 00 00 */ li r0, 0 /* 8005DED8 00059B38 B0 6D 99 20 */ sth r3, lbl_8063EBE0-_SDA_BASE_(r13) /* 8005DEDC 00059B3C B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DEE0 00059B40 48 00 02 18 */ b lbl_8005E0F8 lbl_8005DEE4: /* 8005DEE4 00059B44 38 60 00 02 */ li r3, 2 /* 8005DEE8 00059B48 38 00 00 01 */ li r0, 1 /* 8005DEEC 00059B4C B0 6D 99 20 */ sth r3, lbl_8063EBE0-_SDA_BASE_(r13) /* 8005DEF0 00059B50 B0 1F 00 64 */ sth r0, 0x64(r31) /* 8005DEF4 00059B54 48 00 02 04 */ b lbl_8005E0F8 /* 8005DEF8 00059B58 38 00 00 1D */ li r0, 0x1d /* 8005DEFC 00059B5C 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005DF00 00059B60 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005DF04 00059B64 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005DF08 00059B68 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005DF0C 00059B6C 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005DF10 00059B70 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005DF14 00059B74 48 1F 60 59 */ bl func_80253F6C /* 8005DF18 00059B78 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005DF1C 00059B7C 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005DF20 00059B80 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005DF24 00059B84 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005DF28 00059B88 A8 7E 00 20 */ lha r3, 0x20(r30) /* 8005DF2C 00059B8C 38 80 00 08 */ li r4, 8 /* 8005DF30 00059B90 48 1F 5F 1D */ bl func_80253E4C /* 8005DF34 00059B94 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005DF38 00059B98 2C 00 00 00 */ cmpwi r0, 0 /* 8005DF3C 00059B9C 41 82 00 14 */ beq lbl_8005DF50 /* 8005DF40 00059BA0 A8 7E 00 20 */ lha r3, 0x20(r30) /* 8005DF44 00059BA4 38 80 00 08 */ li r4, 8 /* 8005DF48 00059BA8 38 A0 00 00 */ li r5, 0 /* 8005DF4C 00059BAC 48 1F 5E A5 */ bl func_80253DF0 lbl_8005DF50: /* 8005DF50 00059BB0 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005DF54 00059BB4 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005DF58 00059BB8 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005DF5C 00059BBC 38 80 00 08 */ li r4, 8 /* 8005DF60 00059BC0 A8 7E 00 22 */ lha r3, 0x22(r30) /* 8005DF64 00059BC4 48 1F 5E E9 */ bl func_80253E4C /* 8005DF68 00059BC8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005DF6C 00059BCC 2C 00 00 00 */ cmpwi r0, 0 /* 8005DF70 00059BD0 41 82 00 14 */ beq lbl_8005DF84 /* 8005DF74 00059BD4 A8 7E 00 22 */ lha r3, 0x22(r30) /* 8005DF78 00059BD8 38 80 00 08 */ li r4, 8 /* 8005DF7C 00059BDC 38 A0 00 00 */ li r5, 0 /* 8005DF80 00059BE0 48 1F 5E 71 */ bl func_80253DF0 lbl_8005DF84: /* 8005DF84 00059BE4 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005DF88 00059BE8 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005DF8C 00059BEC 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005DF90 00059BF0 38 80 00 08 */ li r4, 8 /* 8005DF94 00059BF4 A8 7E 00 24 */ lha r3, 0x24(r30) /* 8005DF98 00059BF8 48 1F 5E B5 */ bl func_80253E4C /* 8005DF9C 00059BFC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005DFA0 00059C00 2C 00 00 00 */ cmpwi r0, 0 /* 8005DFA4 00059C04 41 82 00 14 */ beq lbl_8005DFB8 /* 8005DFA8 00059C08 A8 7E 00 24 */ lha r3, 0x24(r30) /* 8005DFAC 00059C0C 38 80 00 08 */ li r4, 8 /* 8005DFB0 00059C10 38 A0 00 00 */ li r5, 0 /* 8005DFB4 00059C14 48 1F 5E 3D */ bl func_80253DF0 lbl_8005DFB8: /* 8005DFB8 00059C18 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005DFBC 00059C1C 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005DFC0 00059C20 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005DFC4 00059C24 38 80 00 08 */ li r4, 8 /* 8005DFC8 00059C28 A8 7E 00 26 */ lha r3, 0x26(r30) /* 8005DFCC 00059C2C 48 1F 5E 81 */ bl func_80253E4C /* 8005DFD0 00059C30 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005DFD4 00059C34 2C 00 00 00 */ cmpwi r0, 0 /* 8005DFD8 00059C38 41 82 00 14 */ beq lbl_8005DFEC /* 8005DFDC 00059C3C A8 7E 00 26 */ lha r3, 0x26(r30) /* 8005DFE0 00059C40 38 80 00 08 */ li r4, 8 /* 8005DFE4 00059C44 38 A0 00 00 */ li r5, 0 /* 8005DFE8 00059C48 48 1F 5E 09 */ bl func_80253DF0 lbl_8005DFEC: /* 8005DFEC 00059C4C 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005DFF0 00059C50 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005DFF4 00059C54 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005DFF8 00059C58 38 80 00 08 */ li r4, 8 /* 8005DFFC 00059C5C A8 7E 00 28 */ lha r3, 0x28(r30) /* 8005E000 00059C60 48 1F 5E 4D */ bl func_80253E4C /* 8005E004 00059C64 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005E008 00059C68 2C 00 00 00 */ cmpwi r0, 0 /* 8005E00C 00059C6C 41 82 00 14 */ beq lbl_8005E020 /* 8005E010 00059C70 A8 7E 00 28 */ lha r3, 0x28(r30) /* 8005E014 00059C74 38 80 00 08 */ li r4, 8 /* 8005E018 00059C78 38 A0 00 00 */ li r5, 0 /* 8005E01C 00059C7C 48 1F 5D D5 */ bl func_80253DF0 lbl_8005E020: /* 8005E020 00059C80 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005E024 00059C84 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005E028 00059C88 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005E02C 00059C8C 38 80 00 08 */ li r4, 8 /* 8005E030 00059C90 A8 7E 00 2A */ lha r3, 0x2a(r30) /* 8005E034 00059C94 48 1F 5E 19 */ bl func_80253E4C /* 8005E038 00059C98 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005E03C 00059C9C 2C 00 00 00 */ cmpwi r0, 0 /* 8005E040 00059CA0 41 82 00 14 */ beq lbl_8005E054 /* 8005E044 00059CA4 A8 7E 00 2A */ lha r3, 0x2a(r30) /* 8005E048 00059CA8 38 80 00 08 */ li r4, 8 /* 8005E04C 00059CAC 38 A0 00 00 */ li r5, 0 /* 8005E050 00059CB0 48 1F 5D A1 */ bl func_80253DF0 lbl_8005E054: /* 8005E054 00059CB4 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005E058 00059CB8 38 A1 00 14 */ addi r5, r1, 0x14 /* 8005E05C 00059CBC 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005E060 00059CC0 38 80 00 08 */ li r4, 8 /* 8005E064 00059CC4 A8 7E 00 14 */ lha r3, 0x14(r30) /* 8005E068 00059CC8 48 1F 5D E5 */ bl func_80253E4C /* 8005E06C 00059CCC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8005E070 00059CD0 2C 00 00 00 */ cmpwi r0, 0 /* 8005E074 00059CD4 41 82 00 14 */ beq lbl_8005E088 /* 8005E078 00059CD8 A8 7E 00 14 */ lha r3, 0x14(r30) /* 8005E07C 00059CDC 38 80 00 08 */ li r4, 8 /* 8005E080 00059CE0 38 A0 00 00 */ li r5, 0 /* 8005E084 00059CE4 48 1F 5D 6D */ bl func_80253DF0 lbl_8005E088: /* 8005E088 00059CE8 3C A0 80 48 */ lis r5, lbl_80478408@ha /* 8005E08C 00059CEC 38 00 00 20 */ li r0, 0x20 /* 8005E090 00059CF0 38 A5 84 08 */ addi r5, r5, lbl_80478408@l /* 8005E094 00059CF4 38 E0 00 00 */ li r7, 0 /* 8005E098 00059CF8 38 60 00 00 */ li r3, 0 /* 8005E09C 00059CFC 38 C0 00 00 */ li r6, 0 /* 8005E0A0 00059D00 7C 09 03 A6 */ mtctr r0 lbl_8005E0A4: /* 8005E0A4 00059D04 28 07 00 10 */ cmplwi r7, 0x10 /* 8005E0A8 00059D08 41 82 00 0C */ beq lbl_8005E0B4 /* 8005E0AC 00059D0C 7C 85 1A 14 */ add r4, r5, r3 /* 8005E0B0 00059D10 B0 C4 00 64 */ sth r6, 0x64(r4) lbl_8005E0B4: /* 8005E0B4 00059D14 38 E7 00 01 */ addi r7, r7, 1 /* 8005E0B8 00059D18 38 63 00 02 */ addi r3, r3, 2 /* 8005E0BC 00059D1C 42 00 FF E8 */ bdnz lbl_8005E0A4 /* 8005E0C0 00059D20 3F C0 80 48 */ lis r30, lbl_80478408@ha /* 8005E0C4 00059D24 3B DE 84 08 */ addi r30, r30, lbl_80478408@l /* 8005E0C8 00059D28 A0 7E 00 84 */ lhz r3, 0x84(r30) /* 8005E0CC 00059D2C 48 1F 22 09 */ bl func_802502D4 /* 8005E0D0 00059D30 A0 9E 00 B2 */ lhz r4, 0xb2(r30) /* 8005E0D4 00059D34 38 60 00 03 */ li r3, 3 /* 8005E0D8 00059D38 38 A0 00 08 */ li r5, 8 /* 8005E0DC 00059D3C 38 00 00 01 */ li r0, 1 /* 8005E0E0 00059D40 54 84 04 9E */ rlwinm r4, r4, 0, 0x12, 0xf /* 8005E0E4 00059D44 B0 BE 00 90 */ sth r5, 0x90(r30) /* 8005E0E8 00059D48 98 7E 00 B0 */ stb r3, 0xb0(r30) /* 8005E0EC 00059D4C B0 9E 00 B2 */ sth r4, 0xb2(r30) /* 8005E0F0 00059D50 98 7E 00 B1 */ stb r3, 0xb1(r30) /* 8005E0F4 00059D54 B0 1E 00 8E */ sth r0, 0x8e(r30) lbl_8005E0F8: /* 8005E0F8 00059D58 3F E0 80 48 */ lis r31, lbl_80478408@ha /* 8005E0FC 00059D5C 3B FF 84 08 */ addi r31, r31, lbl_80478408@l /* 8005E100 00059D60 A0 1F 00 8E */ lhz r0, 0x8e(r31) /* 8005E104 00059D64 28 00 00 01 */ cmplwi r0, 1 /* 8005E108 00059D68 41 82 03 60 */ beq lbl_8005E468 /* 8005E10C 00059D6C 28 1D 00 0B */ cmplwi r29, 0xb /* 8005E110 00059D70 41 81 0A F8 */ bgt lbl_8005EC08 /* 8005E114 00059D74 3C 60 80 41 */ lis r3, lbl_8040B82C@ha /* 8005E118 00059D78 57 A0 10 3A */ slwi r0, r29, 2 /* 8005E11C 00059D7C 38 63 B8 2C */ addi r3, r3, lbl_8040B82C@l /* 8005E120 00059D80 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005E124 00059D84 7C 69 03 A6 */ mtctr r3 /* 8005E128 00059D88 4E 80 04 20 */ bctr /* 8005E12C 00059D8C 38 00 00 FF */ li r0, 0xff /* 8005E130 00059D90 38 A0 00 00 */ li r5, 0 /* 8005E134 00059D94 3B A0 00 01 */ li r29, 1 /* 8005E138 00059D98 3C 60 80 07 */ lis r3, func_8006966C@ha /* 8005E13C 00059D9C 3C 80 80 07 */ lis r4, func_8006A74C@ha /* 8005E140 00059DA0 B0 AD 99 14 */ sth r5, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E144 00059DA4 80 AD 82 00 */ lwz r5, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E148 00059DA8 38 63 96 6C */ addi r3, r3, func_8006966C@l /* 8005E14C 00059DAC B3 BF 00 90 */ sth r29, 0x90(r31) /* 8005E150 00059DB0 38 84 A7 4C */ addi r4, r4, func_8006A74C@l /* 8005E154 00059DB4 B0 1F 00 92 */ sth r0, 0x92(r31) /* 8005E158 00059DB8 B0 1F 00 94 */ sth r0, 0x94(r31) /* 8005E15C 00059DBC B0 1F 00 96 */ sth r0, 0x96(r31) /* 8005E160 00059DC0 48 1F 5E 0D */ bl func_80253F6C /* 8005E164 00059DC4 90 6D 82 00 */ stw r3, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E168 00059DC8 B3 BF 00 8E */ sth r29, 0x8e(r31) /* 8005E16C 00059DCC 48 00 0A 9C */ b lbl_8005EC08 /* 8005E170 00059DD0 A0 1F 00 B2 */ lhz r0, 0xb2(r31) /* 8005E174 00059DD4 54 00 97 FF */ rlwinm. r0, r0, 0x12, 0x1f, 0x1f /* 8005E178 00059DD8 41 82 0A 90 */ beq lbl_8005EC08 /* 8005E17C 00059DDC 38 80 00 FF */ li r4, 0xff /* 8005E180 00059DE0 38 60 00 03 */ li r3, 3 /* 8005E184 00059DE4 38 00 00 01 */ li r0, 1 /* 8005E188 00059DE8 B0 9F 00 92 */ sth r4, 0x92(r31) /* 8005E18C 00059DEC B0 9F 00 94 */ sth r4, 0x94(r31) /* 8005E190 00059DF0 B0 9F 00 96 */ sth r4, 0x96(r31) /* 8005E194 00059DF4 B0 7F 00 90 */ sth r3, 0x90(r31) /* 8005E198 00059DF8 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E19C 00059DFC 48 00 0A 6C */ b lbl_8005EC08 /* 8005E1A0 00059E00 A0 1F 00 B2 */ lhz r0, 0xb2(r31) /* 8005E1A4 00059E04 54 00 8F FF */ rlwinm. r0, r0, 0x11, 0x1f, 0x1f /* 8005E1A8 00059E08 41 82 00 2C */ beq lbl_8005E1D4 /* 8005E1AC 00059E0C 38 60 00 FF */ li r3, 0xff /* 8005E1B0 00059E10 38 A0 00 05 */ li r5, 5 /* 8005E1B4 00059E14 38 80 00 FD */ li r4, 0xfd /* 8005E1B8 00059E18 38 00 00 01 */ li r0, 1 /* 8005E1BC 00059E1C B0 BF 00 90 */ sth r5, 0x90(r31) /* 8005E1C0 00059E20 B0 9F 00 92 */ sth r4, 0x92(r31) /* 8005E1C4 00059E24 B0 7F 00 94 */ sth r3, 0x94(r31) /* 8005E1C8 00059E28 B0 7F 00 96 */ sth r3, 0x96(r31) /* 8005E1CC 00059E2C B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E1D0 00059E30 48 00 0A 38 */ b lbl_8005EC08 lbl_8005E1D4: /* 8005E1D4 00059E34 88 0D 81 F8 */ lbz r0, lbl_8063D4B8-_SDA_BASE_(r13) /* 8005E1D8 00059E38 2C 00 00 00 */ cmpwi r0, 0 /* 8005E1DC 00059E3C 40 82 0A 2C */ bne lbl_8005EC08 /* 8005E1E0 00059E40 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E1E4 00059E44 38 00 00 FF */ li r0, 0xff /* 8005E1E8 00059E48 38 60 00 05 */ li r3, 5 /* 8005E1EC 00059E4C 38 A0 00 FD */ li r5, 0xfd /* 8005E1F0 00059E50 B0 BF 00 92 */ sth r5, 0x92(r31) /* 8005E1F4 00059E54 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E1F8 00059E58 38 80 00 08 */ li r4, 8 /* 8005E1FC 00059E5C 38 A0 00 01 */ li r5, 1 /* 8005E200 00059E60 B0 7F 00 90 */ sth r3, 0x90(r31) /* 8005E204 00059E64 A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E208 00059E68 B0 1F 00 94 */ sth r0, 0x94(r31) /* 8005E20C 00059E6C B0 1F 00 96 */ sth r0, 0x96(r31) /* 8005E210 00059E70 48 1F 5B E1 */ bl func_80253DF0 /* 8005E214 00059E74 A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E218 00059E78 38 80 00 08 */ li r4, 8 /* 8005E21C 00059E7C 38 A0 00 01 */ li r5, 1 /* 8005E220 00059E80 48 1F 5B D1 */ bl func_80253DF0 /* 8005E224 00059E84 A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E228 00059E88 38 80 00 08 */ li r4, 8 /* 8005E22C 00059E8C 38 A0 00 01 */ li r5, 1 /* 8005E230 00059E90 48 1F 5B C1 */ bl func_80253DF0 /* 8005E234 00059E94 A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E238 00059E98 38 80 00 02 */ li r4, 2 /* 8005E23C 00059E9C 38 A0 00 00 */ li r5, 0 /* 8005E240 00059EA0 48 1F 5B 71 */ bl func_80253DB0 /* 8005E244 00059EA4 A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E248 00059EA8 38 80 00 02 */ li r4, 2 /* 8005E24C 00059EAC 38 A0 00 00 */ li r5, 0 /* 8005E250 00059EB0 48 1F 5B 61 */ bl func_80253DB0 /* 8005E254 00059EB4 A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E258 00059EB8 38 80 00 02 */ li r4, 2 /* 8005E25C 00059EBC 38 A0 00 00 */ li r5, 0 /* 8005E260 00059EC0 48 1F 5B 51 */ bl func_80253DB0 /* 8005E264 00059EC4 3C 60 80 07 */ lis r3, func_8006966C@ha /* 8005E268 00059EC8 3C 80 80 07 */ lis r4, func_8006A74C@ha /* 8005E26C 00059ECC 80 AD 82 00 */ lwz r5, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E270 00059ED0 38 63 96 6C */ addi r3, r3, func_8006966C@l /* 8005E274 00059ED4 38 84 A7 4C */ addi r4, r4, func_8006A74C@l /* 8005E278 00059ED8 48 1F 5C F5 */ bl func_80253F6C /* 8005E27C 00059EDC 38 00 00 01 */ li r0, 1 /* 8005E280 00059EE0 90 6D 82 00 */ stw r3, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E284 00059EE4 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E288 00059EE8 48 00 09 80 */ b lbl_8005EC08 /* 8005E28C 00059EEC 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E290 00059EF0 38 60 00 05 */ li r3, 5 /* 8005E294 00059EF4 38 00 00 FF */ li r0, 0xff /* 8005E298 00059EF8 B0 7F 00 90 */ sth r3, 0x90(r31) /* 8005E29C 00059EFC 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E2A0 00059F00 38 A1 00 10 */ addi r5, r1, 0x10 /* 8005E2A4 00059F04 A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E2A8 00059F08 38 80 00 08 */ li r4, 8 /* 8005E2AC 00059F0C B0 1F 00 96 */ sth r0, 0x96(r31) /* 8005E2B0 00059F10 48 1F 5B 9D */ bl func_80253E4C /* 8005E2B4 00059F14 80 01 00 10 */ lwz r0, 0x10(r1) /* 8005E2B8 00059F18 2C 00 00 00 */ cmpwi r0, 0 /* 8005E2BC 00059F1C 41 82 00 18 */ beq lbl_8005E2D4 /* 8005E2C0 00059F20 A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E2C4 00059F24 48 1F 5B 1D */ bl func_80253DE0 /* 8005E2C8 00059F28 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005E2CC 00059F2C 28 00 00 02 */ cmplwi r0, 2 /* 8005E2D0 00059F30 41 82 00 2C */ beq lbl_8005E2FC lbl_8005E2D4: /* 8005E2D4 00059F34 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E2D8 00059F38 38 80 00 08 */ li r4, 8 /* 8005E2DC 00059F3C 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E2E0 00059F40 38 A0 00 01 */ li r5, 1 /* 8005E2E4 00059F44 A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E2E8 00059F48 48 1F 5B 09 */ bl func_80253DF0 /* 8005E2EC 00059F4C A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E2F0 00059F50 38 80 00 02 */ li r4, 2 /* 8005E2F4 00059F54 38 A0 00 00 */ li r5, 0 /* 8005E2F8 00059F58 48 1F 5A B9 */ bl func_80253DB0 lbl_8005E2FC: /* 8005E2FC 00059F5C 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E300 00059F60 38 A1 00 10 */ addi r5, r1, 0x10 /* 8005E304 00059F64 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E308 00059F68 38 80 00 08 */ li r4, 8 /* 8005E30C 00059F6C A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E310 00059F70 48 1F 5B 3D */ bl func_80253E4C /* 8005E314 00059F74 80 01 00 10 */ lwz r0, 0x10(r1) /* 8005E318 00059F78 2C 00 00 00 */ cmpwi r0, 0 /* 8005E31C 00059F7C 41 82 00 18 */ beq lbl_8005E334 /* 8005E320 00059F80 A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E324 00059F84 48 1F 5A BD */ bl func_80253DE0 /* 8005E328 00059F88 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005E32C 00059F8C 28 00 00 02 */ cmplwi r0, 2 /* 8005E330 00059F90 41 82 00 2C */ beq lbl_8005E35C lbl_8005E334: /* 8005E334 00059F94 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E338 00059F98 38 80 00 08 */ li r4, 8 /* 8005E33C 00059F9C 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E340 00059FA0 38 A0 00 01 */ li r5, 1 /* 8005E344 00059FA4 A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E348 00059FA8 48 1F 5A A9 */ bl func_80253DF0 /* 8005E34C 00059FAC A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E350 00059FB0 38 80 00 02 */ li r4, 2 /* 8005E354 00059FB4 38 A0 00 00 */ li r5, 0 /* 8005E358 00059FB8 48 1F 5A 59 */ bl func_80253DB0 lbl_8005E35C: /* 8005E35C 00059FBC 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E360 00059FC0 38 A1 00 10 */ addi r5, r1, 0x10 /* 8005E364 00059FC4 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E368 00059FC8 38 80 00 08 */ li r4, 8 /* 8005E36C 00059FCC A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E370 00059FD0 48 1F 5A DD */ bl func_80253E4C /* 8005E374 00059FD4 80 01 00 10 */ lwz r0, 0x10(r1) /* 8005E378 00059FD8 2C 00 00 00 */ cmpwi r0, 0 /* 8005E37C 00059FDC 41 82 00 18 */ beq lbl_8005E394 /* 8005E380 00059FE0 A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E384 00059FE4 48 1F 5A 5D */ bl func_80253DE0 /* 8005E388 00059FE8 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8005E38C 00059FEC 28 00 00 02 */ cmplwi r0, 2 /* 8005E390 00059FF0 41 82 00 2C */ beq lbl_8005E3BC lbl_8005E394: /* 8005E394 00059FF4 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E398 00059FF8 38 80 00 08 */ li r4, 8 /* 8005E39C 00059FFC 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E3A0 0005A000 38 A0 00 01 */ li r5, 1 /* 8005E3A4 0005A004 A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E3A8 0005A008 48 1F 5A 49 */ bl func_80253DF0 /* 8005E3AC 0005A00C A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E3B0 0005A010 38 80 00 02 */ li r4, 2 /* 8005E3B4 0005A014 38 A0 00 00 */ li r5, 0 /* 8005E3B8 0005A018 48 1F 59 F9 */ bl func_80253DB0 lbl_8005E3BC: /* 8005E3BC 0005A01C 3C 60 80 07 */ lis r3, func_8006966C@ha /* 8005E3C0 0005A020 3C 80 80 07 */ lis r4, func_8006A74C@ha /* 8005E3C4 0005A024 80 AD 82 00 */ lwz r5, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E3C8 0005A028 38 63 96 6C */ addi r3, r3, func_8006966C@l /* 8005E3CC 0005A02C 38 84 A7 4C */ addi r4, r4, func_8006A74C@l /* 8005E3D0 0005A030 48 1F 5B 9D */ bl func_80253F6C /* 8005E3D4 0005A034 3C 80 80 48 */ lis r4, lbl_80478408@ha /* 8005E3D8 0005A038 38 00 00 01 */ li r0, 1 /* 8005E3DC 0005A03C 38 84 84 08 */ addi r4, r4, lbl_80478408@l /* 8005E3E0 0005A040 90 6D 82 00 */ stw r3, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E3E4 0005A044 B0 04 00 8E */ sth r0, 0x8e(r4) /* 8005E3E8 0005A048 48 00 08 20 */ b lbl_8005EC08 /* 8005E3EC 0005A04C 38 00 00 20 */ li r0, 0x20 /* 8005E3F0 0005A050 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005E3F4 0005A054 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E3F8 0005A058 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E3FC 0005A05C 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E400 0005A060 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005E404 0005A064 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E408 0005A068 48 1F 5B 65 */ bl func_80253F6C /* 8005E40C 0005A06C 38 00 00 01 */ li r0, 1 /* 8005E410 0005A070 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E414 0005A074 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E418 0005A078 48 00 07 F0 */ b lbl_8005EC08 /* 8005E41C 0005A07C 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E420 0005A080 38 80 00 01 */ li r4, 1 /* 8005E424 0005A084 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E428 0005A088 38 A0 00 00 */ li r5, 0 /* 8005E42C 0005A08C A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E430 0005A090 48 1F 59 81 */ bl func_80253DB0 /* 8005E434 0005A094 A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E438 0005A098 38 80 00 01 */ li r4, 1 /* 8005E43C 0005A09C 38 A0 00 00 */ li r5, 0 /* 8005E440 0005A0A0 48 1F 59 71 */ bl func_80253DB0 /* 8005E444 0005A0A4 A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E448 0005A0A8 38 80 00 01 */ li r4, 1 /* 8005E44C 0005A0AC 38 A0 00 00 */ li r5, 0 /* 8005E450 0005A0B0 48 1F 59 61 */ bl func_80253DB0 /* 8005E454 0005A0B4 38 60 00 06 */ li r3, 6 /* 8005E458 0005A0B8 38 00 00 01 */ li r0, 1 /* 8005E45C 0005A0BC B0 7F 00 90 */ sth r3, 0x90(r31) /* 8005E460 0005A0C0 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E464 0005A0C4 48 00 07 A4 */ b lbl_8005EC08 lbl_8005E468: /* 8005E468 0005A0C8 28 1D 00 0B */ cmplwi r29, 0xb /* 8005E46C 0005A0CC 41 81 07 9C */ bgt lbl_8005EC08 /* 8005E470 0005A0D0 3C 60 80 41 */ lis r3, lbl_8040B7FC@ha /* 8005E474 0005A0D4 57 A0 10 3A */ slwi r0, r29, 2 /* 8005E478 0005A0D8 38 63 B7 FC */ addi r3, r3, lbl_8040B7FC@l /* 8005E47C 0005A0DC 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005E480 0005A0E0 7C 69 03 A6 */ mtctr r3 /* 8005E484 0005A0E4 4E 80 04 20 */ bctr /* 8005E488 0005A0E8 38 00 00 20 */ li r0, 0x20 /* 8005E48C 0005A0EC 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005E490 0005A0F0 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E494 0005A0F4 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E498 0005A0F8 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E49C 0005A0FC 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005E4A0 0005A100 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E4A4 0005A104 48 1F 5A C9 */ bl func_80253F6C /* 8005E4A8 0005A108 38 00 00 01 */ li r0, 1 /* 8005E4AC 0005A10C 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E4B0 0005A110 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E4B4 0005A114 48 00 07 54 */ b lbl_8005EC08 /* 8005E4B8 0005A118 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E4BC 0005A11C 38 A1 00 0C */ addi r5, r1, 0xc /* 8005E4C0 0005A120 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E4C4 0005A124 38 80 00 08 */ li r4, 8 /* 8005E4C8 0005A128 A8 7D 00 28 */ lha r3, 0x28(r29) /* 8005E4CC 0005A12C 48 1F 59 81 */ bl func_80253E4C /* 8005E4D0 0005A130 80 01 00 0C */ lwz r0, 0xc(r1) /* 8005E4D4 0005A134 2C 00 00 00 */ cmpwi r0, 0 /* 8005E4D8 0005A138 41 82 07 30 */ beq lbl_8005EC08 /* 8005E4DC 0005A13C A8 7D 00 28 */ lha r3, 0x28(r29) /* 8005E4E0 0005A140 38 80 00 01 */ li r4, 1 /* 8005E4E4 0005A144 38 A0 00 00 */ li r5, 0 /* 8005E4E8 0005A148 48 1F 58 C9 */ bl func_80253DB0 /* 8005E4EC 0005A14C 38 60 00 04 */ li r3, 4 /* 8005E4F0 0005A150 38 00 00 01 */ li r0, 1 /* 8005E4F4 0005A154 B0 7F 00 90 */ sth r3, 0x90(r31) /* 8005E4F8 0005A158 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E4FC 0005A15C 48 00 07 0C */ b lbl_8005EC08 /* 8005E500 0005A160 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E504 0005A164 38 80 00 01 */ li r4, 1 /* 8005E508 0005A168 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E50C 0005A16C 38 A0 00 00 */ li r5, 0 /* 8005E510 0005A170 A8 7D 00 20 */ lha r3, 0x20(r29) /* 8005E514 0005A174 48 1F 58 9D */ bl func_80253DB0 /* 8005E518 0005A178 A8 7D 00 22 */ lha r3, 0x22(r29) /* 8005E51C 0005A17C 38 80 00 01 */ li r4, 1 /* 8005E520 0005A180 38 A0 00 00 */ li r5, 0 /* 8005E524 0005A184 48 1F 58 8D */ bl func_80253DB0 /* 8005E528 0005A188 A8 7D 00 26 */ lha r3, 0x26(r29) /* 8005E52C 0005A18C 38 80 00 01 */ li r4, 1 /* 8005E530 0005A190 38 A0 00 00 */ li r5, 0 /* 8005E534 0005A194 48 1F 58 7D */ bl func_80253DB0 /* 8005E538 0005A198 38 60 00 06 */ li r3, 6 /* 8005E53C 0005A19C 38 00 00 01 */ li r0, 1 /* 8005E540 0005A1A0 B0 7F 00 90 */ sth r3, 0x90(r31) /* 8005E544 0005A1A4 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005E548 0005A1A8 48 00 06 C0 */ b lbl_8005EC08 /* 8005E54C 0005A1AC 38 00 00 FF */ li r0, 0xff /* 8005E550 0005A1B0 38 A0 00 00 */ li r5, 0 /* 8005E554 0005A1B4 3B A0 00 01 */ li r29, 1 /* 8005E558 0005A1B8 3C 60 80 07 */ lis r3, func_8006966C@ha /* 8005E55C 0005A1BC 3C 80 80 07 */ lis r4, func_8006A74C@ha /* 8005E560 0005A1C0 B0 AD 99 14 */ sth r5, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E564 0005A1C4 80 AD 82 00 */ lwz r5, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E568 0005A1C8 38 63 96 6C */ addi r3, r3, func_8006966C@l /* 8005E56C 0005A1CC B3 BF 00 90 */ sth r29, 0x90(r31) /* 8005E570 0005A1D0 38 84 A7 4C */ addi r4, r4, func_8006A74C@l /* 8005E574 0005A1D4 B0 1F 00 92 */ sth r0, 0x92(r31) /* 8005E578 0005A1D8 B0 1F 00 94 */ sth r0, 0x94(r31) /* 8005E57C 0005A1DC B0 1F 00 96 */ sth r0, 0x96(r31) /* 8005E580 0005A1E0 48 1F 59 ED */ bl func_80253F6C /* 8005E584 0005A1E4 90 6D 82 00 */ stw r3, lbl_8063D4C0-_SDA_BASE_(r13) /* 8005E588 0005A1E8 B3 BF 00 8E */ sth r29, 0x8e(r31) /* 8005E58C 0005A1EC 48 00 06 7C */ b lbl_8005EC08 lbl_8005E590: /* 8005E590 0005A1F0 28 1D 00 0C */ cmplwi r29, 0xc /* 8005E594 0005A1F4 41 81 06 74 */ bgt lbl_8005EC08 /* 8005E598 0005A1F8 3C 60 80 41 */ lis r3, lbl_8040B7C8@ha /* 8005E59C 0005A1FC 57 A0 10 3A */ slwi r0, r29, 2 /* 8005E5A0 0005A200 38 63 B7 C8 */ addi r3, r3, lbl_8040B7C8@l /* 8005E5A4 0005A204 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005E5A8 0005A208 7C 69 03 A6 */ mtctr r3 /* 8005E5AC 0005A20C 4E 80 04 20 */ bctr /* 8005E5B0 0005A210 48 01 0A 19 */ bl func_8006EFC8 /* 8005E5B4 0005A214 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E5B8 0005A218 38 60 00 01 */ li r3, 1 /* 8005E5BC 0005A21C B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E5C0 0005A220 2C 00 00 00 */ cmpwi r0, 0 /* 8005E5C4 0005A224 40 82 00 2C */ bne lbl_8005E5F0 /* 8005E5C8 0005A228 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E5CC 0005A22C 38 80 00 08 */ li r4, 8 /* 8005E5D0 0005A230 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E5D4 0005A234 38 A0 00 01 */ li r5, 1 /* 8005E5D8 0005A238 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E5DC 0005A23C 48 1F 58 15 */ bl func_80253DF0 /* 8005E5E0 0005A240 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E5E4 0005A244 38 80 00 00 */ li r4, 0 /* 8005E5E8 0005A248 38 A0 00 00 */ li r5, 0 /* 8005E5EC 0005A24C 48 1F 57 C5 */ bl func_80253DB0 lbl_8005E5F0: /* 8005E5F0 0005A250 38 60 00 00 */ li r3, 0 /* 8005E5F4 0005A254 48 00 28 41 */ bl func_80060E34 /* 8005E5F8 0005A258 3C A0 80 48 */ lis r5, lbl_80478408@ha /* 8005E5FC 0005A25C 3C 60 80 06 */ lis r3, func_8005F310@ha /* 8005E600 0005A260 38 A5 84 08 */ addi r5, r5, lbl_80478408@l /* 8005E604 0005A264 38 00 00 00 */ li r0, 0 /* 8005E608 0005A268 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E60C 0005A26C B0 05 00 64 */ sth r0, 0x64(r5) /* 8005E610 0005A270 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E614 0005A274 38 63 F3 10 */ addi r3, r3, func_8005F310@l /* 8005E618 0005A278 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E61C 0005A27C 48 1F 59 51 */ bl func_80253F6C /* 8005E620 0005A280 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E624 0005A284 48 00 05 E4 */ b lbl_8005EC08 /* 8005E628 0005A288 48 01 09 A1 */ bl func_8006EFC8 /* 8005E62C 0005A28C 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E630 0005A290 38 60 00 01 */ li r3, 1 /* 8005E634 0005A294 B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E638 0005A298 2C 00 00 00 */ cmpwi r0, 0 /* 8005E63C 0005A29C 40 82 00 2C */ bne lbl_8005E668 /* 8005E640 0005A2A0 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E644 0005A2A4 38 80 00 08 */ li r4, 8 /* 8005E648 0005A2A8 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E64C 0005A2AC 38 A0 00 01 */ li r5, 1 /* 8005E650 0005A2B0 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E654 0005A2B4 48 1F 57 9D */ bl func_80253DF0 /* 8005E658 0005A2B8 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E65C 0005A2BC 38 80 00 00 */ li r4, 0 /* 8005E660 0005A2C0 38 A0 00 00 */ li r5, 0 /* 8005E664 0005A2C4 48 1F 57 4D */ bl func_80253DB0 lbl_8005E668: /* 8005E668 0005A2C8 38 60 00 02 */ li r3, 2 /* 8005E66C 0005A2CC 48 00 27 C9 */ bl func_80060E34 /* 8005E670 0005A2D0 3C C0 80 48 */ lis r6, lbl_80478408@ha /* 8005E674 0005A2D4 3C 60 80 06 */ lis r3, func_8005F310@ha /* 8005E678 0005A2D8 38 C6 84 08 */ addi r6, r6, lbl_80478408@l /* 8005E67C 0005A2DC 38 00 00 01 */ li r0, 1 /* 8005E680 0005A2E0 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E684 0005A2E4 B0 06 00 64 */ sth r0, 0x64(r6) /* 8005E688 0005A2E8 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E68C 0005A2EC 38 63 F3 10 */ addi r3, r3, func_8005F310@l /* 8005E690 0005A2F0 B3 C6 00 74 */ sth r30, 0x74(r6) /* 8005E694 0005A2F4 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E698 0005A2F8 48 1F 58 D5 */ bl func_80253F6C /* 8005E69C 0005A2FC 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E6A0 0005A300 48 00 05 68 */ b lbl_8005EC08 /* 8005E6A4 0005A304 48 01 09 25 */ bl func_8006EFC8 /* 8005E6A8 0005A308 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E6AC 0005A30C 38 60 00 0A */ li r3, 0xa /* 8005E6B0 0005A310 B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E6B4 0005A314 2C 00 00 00 */ cmpwi r0, 0 /* 8005E6B8 0005A318 40 82 00 2C */ bne lbl_8005E6E4 /* 8005E6BC 0005A31C 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E6C0 0005A320 38 80 00 08 */ li r4, 8 /* 8005E6C4 0005A324 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E6C8 0005A328 38 A0 00 01 */ li r5, 1 /* 8005E6CC 0005A32C A8 7D 00 06 */ lha r3, 6(r29) /* 8005E6D0 0005A330 48 1F 57 21 */ bl func_80253DF0 /* 8005E6D4 0005A334 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E6D8 0005A338 38 80 00 00 */ li r4, 0 /* 8005E6DC 0005A33C 38 A0 00 00 */ li r5, 0 /* 8005E6E0 0005A340 48 1F 56 D1 */ bl func_80253DB0 lbl_8005E6E4: /* 8005E6E4 0005A344 38 60 00 00 */ li r3, 0 /* 8005E6E8 0005A348 48 00 27 4D */ bl func_80060E34 /* 8005E6EC 0005A34C 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005E6F0 0005A350 38 80 00 00 */ li r4, 0 /* 8005E6F4 0005A354 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005E6F8 0005A358 A0 03 00 B2 */ lhz r0, 0xb2(r3) /* 8005E6FC 0005A35C B0 83 00 64 */ sth r4, 0x64(r3) /* 8005E700 0005A360 54 00 97 FF */ rlwinm. r0, r0, 0x12, 0x1f, 0x1f /* 8005E704 0005A364 41 82 00 0C */ beq lbl_8005E710 /* 8005E708 0005A368 38 00 00 0B */ li r0, 0xb /* 8005E70C 0005A36C B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) lbl_8005E710: /* 8005E710 0005A370 3C 60 80 06 */ lis r3, func_8005F9BC@ha /* 8005E714 0005A374 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E718 0005A378 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E71C 0005A37C 38 63 F9 BC */ addi r3, r3, func_8005F9BC@l /* 8005E720 0005A380 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E724 0005A384 48 1F 58 49 */ bl func_80253F6C /* 8005E728 0005A388 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E72C 0005A38C 48 00 04 DC */ b lbl_8005EC08 /* 8005E730 0005A390 48 01 08 99 */ bl func_8006EFC8 /* 8005E734 0005A394 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E738 0005A398 38 60 00 10 */ li r3, 0x10 /* 8005E73C 0005A39C B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E740 0005A3A0 2C 00 00 00 */ cmpwi r0, 0 /* 8005E744 0005A3A4 40 82 00 2C */ bne lbl_8005E770 /* 8005E748 0005A3A8 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E74C 0005A3AC 38 80 00 08 */ li r4, 8 /* 8005E750 0005A3B0 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E754 0005A3B4 38 A0 00 01 */ li r5, 1 /* 8005E758 0005A3B8 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E75C 0005A3BC 48 1F 56 95 */ bl func_80253DF0 /* 8005E760 0005A3C0 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E764 0005A3C4 38 80 00 00 */ li r4, 0 /* 8005E768 0005A3C8 38 A0 00 00 */ li r5, 0 /* 8005E76C 0005A3CC 48 1F 56 45 */ bl func_80253DB0 lbl_8005E770: /* 8005E770 0005A3D0 38 60 00 01 */ li r3, 1 /* 8005E774 0005A3D4 48 00 26 C1 */ bl func_80060E34 /* 8005E778 0005A3D8 3C C0 80 48 */ lis r6, lbl_80478408@ha /* 8005E77C 0005A3DC 3C 60 80 06 */ lis r3, func_800600B4@ha /* 8005E780 0005A3E0 38 C6 84 08 */ addi r6, r6, lbl_80478408@l /* 8005E784 0005A3E4 38 00 00 00 */ li r0, 0 /* 8005E788 0005A3E8 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E78C 0005A3EC B0 06 00 64 */ sth r0, 0x64(r6) /* 8005E790 0005A3F0 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E794 0005A3F4 38 63 00 B4 */ addi r3, r3, func_800600B4@l /* 8005E798 0005A3F8 B3 C6 00 A2 */ sth r30, 0xa2(r6) /* 8005E79C 0005A3FC 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E7A0 0005A400 48 1F 57 CD */ bl func_80253F6C /* 8005E7A4 0005A404 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E7A8 0005A408 48 00 04 60 */ b lbl_8005EC08 /* 8005E7AC 0005A40C 48 01 08 1D */ bl func_8006EFC8 /* 8005E7B0 0005A410 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E7B4 0005A414 38 60 00 0A */ li r3, 0xa /* 8005E7B8 0005A418 B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E7BC 0005A41C 2C 00 00 00 */ cmpwi r0, 0 /* 8005E7C0 0005A420 40 82 00 2C */ bne lbl_8005E7EC /* 8005E7C4 0005A424 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E7C8 0005A428 38 80 00 08 */ li r4, 8 /* 8005E7CC 0005A42C 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E7D0 0005A430 38 A0 00 01 */ li r5, 1 /* 8005E7D4 0005A434 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E7D8 0005A438 48 1F 56 19 */ bl func_80253DF0 /* 8005E7DC 0005A43C A8 7D 00 06 */ lha r3, 6(r29) /* 8005E7E0 0005A440 38 80 00 00 */ li r4, 0 /* 8005E7E4 0005A444 38 A0 00 00 */ li r5, 0 /* 8005E7E8 0005A448 48 1F 55 C9 */ bl func_80253DB0 lbl_8005E7EC: /* 8005E7EC 0005A44C 38 60 00 02 */ li r3, 2 /* 8005E7F0 0005A450 48 00 26 45 */ bl func_80060E34 /* 8005E7F4 0005A454 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005E7F8 0005A458 38 80 00 01 */ li r4, 1 /* 8005E7FC 0005A45C 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005E800 0005A460 A0 03 00 B2 */ lhz r0, 0xb2(r3) /* 8005E804 0005A464 B0 83 00 64 */ sth r4, 0x64(r3) /* 8005E808 0005A468 54 00 97 FF */ rlwinm. r0, r0, 0x12, 0x1f, 0x1f /* 8005E80C 0005A46C 41 82 00 0C */ beq lbl_8005E818 /* 8005E810 0005A470 38 00 00 0B */ li r0, 0xb /* 8005E814 0005A474 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) lbl_8005E818: /* 8005E818 0005A478 3C 60 80 06 */ lis r3, func_8005F9BC@ha /* 8005E81C 0005A47C 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E820 0005A480 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E824 0005A484 38 63 F9 BC */ addi r3, r3, func_8005F9BC@l /* 8005E828 0005A488 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E82C 0005A48C 48 1F 57 41 */ bl func_80253F6C /* 8005E830 0005A490 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E834 0005A494 48 00 03 D4 */ b lbl_8005EC08 /* 8005E838 0005A498 48 01 07 91 */ bl func_8006EFC8 /* 8005E83C 0005A49C 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E840 0005A4A0 38 60 00 10 */ li r3, 0x10 /* 8005E844 0005A4A4 B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E848 0005A4A8 2C 00 00 00 */ cmpwi r0, 0 /* 8005E84C 0005A4AC 40 82 00 2C */ bne lbl_8005E878 /* 8005E850 0005A4B0 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E854 0005A4B4 38 80 00 08 */ li r4, 8 /* 8005E858 0005A4B8 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E85C 0005A4BC 38 A0 00 01 */ li r5, 1 /* 8005E860 0005A4C0 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E864 0005A4C4 48 1F 55 8D */ bl func_80253DF0 /* 8005E868 0005A4C8 A8 7D 00 06 */ lha r3, 6(r29) /* 8005E86C 0005A4CC 38 80 00 00 */ li r4, 0 /* 8005E870 0005A4D0 38 A0 00 00 */ li r5, 0 /* 8005E874 0005A4D4 48 1F 55 3D */ bl func_80253DB0 lbl_8005E878: /* 8005E878 0005A4D8 38 60 00 03 */ li r3, 3 /* 8005E87C 0005A4DC 48 00 25 B9 */ bl func_80060E34 /* 8005E880 0005A4E0 3C C0 80 48 */ lis r6, lbl_80478408@ha /* 8005E884 0005A4E4 3C 60 80 06 */ lis r3, func_800600B4@ha /* 8005E888 0005A4E8 38 C6 84 08 */ addi r6, r6, lbl_80478408@l /* 8005E88C 0005A4EC 38 00 00 01 */ li r0, 1 /* 8005E890 0005A4F0 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E894 0005A4F4 B0 06 00 64 */ sth r0, 0x64(r6) /* 8005E898 0005A4F8 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E89C 0005A4FC 38 63 00 B4 */ addi r3, r3, func_800600B4@l /* 8005E8A0 0005A500 B3 C6 00 A2 */ sth r30, 0xa2(r6) /* 8005E8A4 0005A504 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E8A8 0005A508 48 1F 56 C5 */ bl func_80253F6C /* 8005E8AC 0005A50C 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E8B0 0005A510 48 00 03 58 */ b lbl_8005EC08 /* 8005E8B4 0005A514 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005E8B8 0005A518 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005E8BC 0005A51C A0 03 00 B2 */ lhz r0, 0xb2(r3) /* 8005E8C0 0005A520 54 00 8F FF */ rlwinm. r0, r0, 0x11, 0x1f, 0x1f /* 8005E8C4 0005A524 41 82 00 2C */ beq lbl_8005E8F0 /* 8005E8C8 0005A528 38 00 00 28 */ li r0, 0x28 /* 8005E8CC 0005A52C 3C 60 80 06 */ lis r3, func_80060E84@ha /* 8005E8D0 0005A530 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E8D4 0005A534 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E8D8 0005A538 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E8DC 0005A53C 38 63 0E 84 */ addi r3, r3, func_80060E84@l /* 8005E8E0 0005A540 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E8E4 0005A544 48 1F 56 89 */ bl func_80253F6C /* 8005E8E8 0005A548 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E8EC 0005A54C 48 00 03 1C */ b lbl_8005EC08 lbl_8005E8F0: /* 8005E8F0 0005A550 80 01 00 18 */ lwz r0, 0x18(r1) /* 8005E8F4 0005A554 38 60 00 16 */ li r3, 0x16 /* 8005E8F8 0005A558 B0 6D 99 14 */ sth r3, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E8FC 0005A55C 2C 00 00 00 */ cmpwi r0, 0 /* 8005E900 0005A560 40 82 00 2C */ bne lbl_8005E92C /* 8005E904 0005A564 3F C0 80 41 */ lis r30, lbl_8040B768@ha /* 8005E908 0005A568 38 80 00 08 */ li r4, 8 /* 8005E90C 0005A56C 3B DE B7 68 */ addi r30, r30, lbl_8040B768@l /* 8005E910 0005A570 38 A0 00 01 */ li r5, 1 /* 8005E914 0005A574 A8 7E 00 06 */ lha r3, 6(r30) /* 8005E918 0005A578 48 1F 54 D9 */ bl func_80253DF0 /* 8005E91C 0005A57C A8 7E 00 06 */ lha r3, 6(r30) /* 8005E920 0005A580 38 80 00 00 */ li r4, 0 /* 8005E924 0005A584 38 A0 00 00 */ li r5, 0 /* 8005E928 0005A588 48 1F 54 89 */ bl func_80253DB0 lbl_8005E92C: /* 8005E92C 0005A58C 48 01 08 09 */ bl func_8006F134 /* 8005E930 0005A590 38 60 00 04 */ li r3, 4 /* 8005E934 0005A594 48 00 25 01 */ bl func_80060E34 /* 8005E938 0005A598 38 00 00 FF */ li r0, 0xff /* 8005E93C 0005A59C 28 1D 00 03 */ cmplwi r29, 3 /* 8005E940 0005A5A0 B0 0D 99 1E */ sth r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005E944 0005A5A4 40 82 00 20 */ bne lbl_8005E964 /* 8005E948 0005A5A8 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005E94C 0005A5AC 38 80 00 01 */ li r4, 1 /* 8005E950 0005A5B0 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005E954 0005A5B4 38 00 00 00 */ li r0, 0 /* 8005E958 0005A5B8 B0 8D 99 20 */ sth r4, lbl_8063EBE0-_SDA_BASE_(r13) /* 8005E95C 0005A5BC B0 03 00 64 */ sth r0, 0x64(r3) /* 8005E960 0005A5C0 48 00 00 1C */ b lbl_8005E97C lbl_8005E964: /* 8005E964 0005A5C4 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005E968 0005A5C8 38 80 00 02 */ li r4, 2 /* 8005E96C 0005A5CC 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005E970 0005A5D0 38 00 00 01 */ li r0, 1 /* 8005E974 0005A5D4 B0 8D 99 20 */ sth r4, lbl_8063EBE0-_SDA_BASE_(r13) /* 8005E978 0005A5D8 B0 03 00 64 */ sth r0, 0x64(r3) lbl_8005E97C: /* 8005E97C 0005A5DC 3C 60 80 06 */ lis r3, func_80060E84@ha /* 8005E980 0005A5E0 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E984 0005A5E4 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E988 0005A5E8 38 63 0E 84 */ addi r3, r3, func_80060E84@l /* 8005E98C 0005A5EC 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E990 0005A5F0 48 1F 55 DD */ bl func_80253F6C /* 8005E994 0005A5F4 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E998 0005A5F8 48 00 02 70 */ b lbl_8005EC08 /* 8005E99C 0005A5FC 38 00 00 1D */ li r0, 0x1d /* 8005E9A0 0005A600 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005E9A4 0005A604 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005E9A8 0005A608 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005E9AC 0005A60C 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E9B0 0005A610 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005E9B4 0005A614 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005E9B8 0005A618 48 1F 55 B5 */ bl func_80253F6C /* 8005E9BC 0005A61C 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E9C0 0005A620 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005E9C4 0005A624 A8 7D B7 68 */ lha r3, lbl_8040B768@l(r29) /* 8005E9C8 0005A628 38 A1 00 08 */ addi r5, r1, 8 /* 8005E9CC 0005A62C 38 80 00 08 */ li r4, 8 /* 8005E9D0 0005A630 48 1F 54 7D */ bl func_80253E4C /* 8005E9D4 0005A634 80 01 00 08 */ lwz r0, 8(r1) /* 8005E9D8 0005A638 2C 00 00 00 */ cmpwi r0, 0 /* 8005E9DC 0005A63C 41 82 00 14 */ beq lbl_8005E9F0 /* 8005E9E0 0005A640 A8 7D B7 68 */ lha r3, -0x4898(r29) /* 8005E9E4 0005A644 38 80 00 08 */ li r4, 8 /* 8005E9E8 0005A648 38 A0 00 00 */ li r5, 0 /* 8005E9EC 0005A64C 48 1F 54 05 */ bl func_80253DF0 lbl_8005E9F0: /* 8005E9F0 0005A650 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005E9F4 0005A654 38 A1 00 08 */ addi r5, r1, 8 /* 8005E9F8 0005A658 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005E9FC 0005A65C 38 80 00 08 */ li r4, 8 /* 8005EA00 0005A660 A8 7D 00 02 */ lha r3, 2(r29) /* 8005EA04 0005A664 48 1F 54 49 */ bl func_80253E4C /* 8005EA08 0005A668 80 01 00 08 */ lwz r0, 8(r1) /* 8005EA0C 0005A66C 2C 00 00 00 */ cmpwi r0, 0 /* 8005EA10 0005A670 41 82 00 14 */ beq lbl_8005EA24 /* 8005EA14 0005A674 A8 7D 00 02 */ lha r3, 2(r29) /* 8005EA18 0005A678 38 80 00 08 */ li r4, 8 /* 8005EA1C 0005A67C 38 A0 00 00 */ li r5, 0 /* 8005EA20 0005A680 48 1F 53 D1 */ bl func_80253DF0 lbl_8005EA24: /* 8005EA24 0005A684 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005EA28 0005A688 38 A1 00 08 */ addi r5, r1, 8 /* 8005EA2C 0005A68C 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005EA30 0005A690 38 80 00 08 */ li r4, 8 /* 8005EA34 0005A694 A8 7D 00 04 */ lha r3, 4(r29) /* 8005EA38 0005A698 48 1F 54 15 */ bl func_80253E4C /* 8005EA3C 0005A69C 80 01 00 08 */ lwz r0, 8(r1) /* 8005EA40 0005A6A0 2C 00 00 00 */ cmpwi r0, 0 /* 8005EA44 0005A6A4 41 82 00 14 */ beq lbl_8005EA58 /* 8005EA48 0005A6A8 A8 7D 00 04 */ lha r3, 4(r29) /* 8005EA4C 0005A6AC 38 80 00 08 */ li r4, 8 /* 8005EA50 0005A6B0 38 A0 00 00 */ li r5, 0 /* 8005EA54 0005A6B4 48 1F 53 9D */ bl func_80253DF0 lbl_8005EA58: /* 8005EA58 0005A6B8 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005EA5C 0005A6BC 38 A1 00 08 */ addi r5, r1, 8 /* 8005EA60 0005A6C0 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005EA64 0005A6C4 38 80 00 08 */ li r4, 8 /* 8005EA68 0005A6C8 A8 7D 00 06 */ lha r3, 6(r29) /* 8005EA6C 0005A6CC 48 1F 53 E1 */ bl func_80253E4C /* 8005EA70 0005A6D0 80 01 00 08 */ lwz r0, 8(r1) /* 8005EA74 0005A6D4 2C 00 00 00 */ cmpwi r0, 0 /* 8005EA78 0005A6D8 41 82 00 14 */ beq lbl_8005EA8C /* 8005EA7C 0005A6DC A8 7D 00 06 */ lha r3, 6(r29) /* 8005EA80 0005A6E0 38 80 00 08 */ li r4, 8 /* 8005EA84 0005A6E4 38 A0 00 00 */ li r5, 0 /* 8005EA88 0005A6E8 48 1F 53 69 */ bl func_80253DF0 lbl_8005EA8C: /* 8005EA8C 0005A6EC 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005EA90 0005A6F0 38 A1 00 08 */ addi r5, r1, 8 /* 8005EA94 0005A6F4 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005EA98 0005A6F8 38 80 00 08 */ li r4, 8 /* 8005EA9C 0005A6FC A8 7D 00 08 */ lha r3, 8(r29) /* 8005EAA0 0005A700 48 1F 53 AD */ bl func_80253E4C /* 8005EAA4 0005A704 80 01 00 08 */ lwz r0, 8(r1) /* 8005EAA8 0005A708 2C 00 00 00 */ cmpwi r0, 0 /* 8005EAAC 0005A70C 41 82 00 14 */ beq lbl_8005EAC0 /* 8005EAB0 0005A710 A8 7D 00 08 */ lha r3, 8(r29) /* 8005EAB4 0005A714 38 80 00 08 */ li r4, 8 /* 8005EAB8 0005A718 38 A0 00 00 */ li r5, 0 /* 8005EABC 0005A71C 48 1F 53 35 */ bl func_80253DF0 lbl_8005EAC0: /* 8005EAC0 0005A720 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005EAC4 0005A724 38 A1 00 08 */ addi r5, r1, 8 /* 8005EAC8 0005A728 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005EACC 0005A72C 38 80 00 08 */ li r4, 8 /* 8005EAD0 0005A730 A8 7D 00 0A */ lha r3, 0xa(r29) /* 8005EAD4 0005A734 48 1F 53 79 */ bl func_80253E4C /* 8005EAD8 0005A738 80 01 00 08 */ lwz r0, 8(r1) /* 8005EADC 0005A73C 2C 00 00 00 */ cmpwi r0, 0 /* 8005EAE0 0005A740 41 82 00 14 */ beq lbl_8005EAF4 /* 8005EAE4 0005A744 A8 7D 00 0A */ lha r3, 0xa(r29) /* 8005EAE8 0005A748 38 80 00 08 */ li r4, 8 /* 8005EAEC 0005A74C 38 A0 00 00 */ li r5, 0 /* 8005EAF0 0005A750 48 1F 53 01 */ bl func_80253DF0 lbl_8005EAF4: /* 8005EAF4 0005A754 3F A0 80 41 */ lis r29, lbl_8040B768@ha /* 8005EAF8 0005A758 38 A1 00 08 */ addi r5, r1, 8 /* 8005EAFC 0005A75C 3B BD B7 68 */ addi r29, r29, lbl_8040B768@l /* 8005EB00 0005A760 38 80 00 08 */ li r4, 8 /* 8005EB04 0005A764 A8 7D 00 14 */ lha r3, 0x14(r29) /* 8005EB08 0005A768 48 1F 53 45 */ bl func_80253E4C /* 8005EB0C 0005A76C 80 01 00 08 */ lwz r0, 8(r1) /* 8005EB10 0005A770 2C 00 00 00 */ cmpwi r0, 0 /* 8005EB14 0005A774 41 82 00 14 */ beq lbl_8005EB28 /* 8005EB18 0005A778 A8 7D 00 14 */ lha r3, 0x14(r29) /* 8005EB1C 0005A77C 38 80 00 08 */ li r4, 8 /* 8005EB20 0005A780 38 A0 00 00 */ li r5, 0 /* 8005EB24 0005A784 48 1F 52 CD */ bl func_80253DF0 lbl_8005EB28: /* 8005EB28 0005A788 48 09 AB 05 */ bl func_800F962C /* 8005EB2C 0005A78C 3F A0 80 48 */ lis r29, lbl_80478408@ha /* 8005EB30 0005A790 3B BD 84 08 */ addi r29, r29, lbl_80478408@l /* 8005EB34 0005A794 A0 7D 00 84 */ lhz r3, 0x84(r29) /* 8005EB38 0005A798 48 1F 17 9D */ bl func_802502D4 /* 8005EB3C 0005A79C A0 7D 00 B2 */ lhz r3, 0xb2(r29) /* 8005EB40 0005A7A0 38 00 00 03 */ li r0, 3 /* 8005EB44 0005A7A4 98 1D 00 B0 */ stb r0, 0xb0(r29) /* 8005EB48 0005A7A8 98 1D 00 B1 */ stb r0, 0xb1(r29) /* 8005EB4C 0005A7AC 54 60 04 9E */ rlwinm r0, r3, 0, 0x12, 0xf /* 8005EB50 0005A7B0 B0 1D 00 B2 */ sth r0, 0xb2(r29) /* 8005EB54 0005A7B4 48 00 00 B4 */ b lbl_8005EC08 /* 8005EB58 0005A7B8 38 00 00 20 */ li r0, 0x20 /* 8005EB5C 0005A7BC 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005EB60 0005A7C0 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005EB64 0005A7C4 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005EB68 0005A7C8 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005EB6C 0005A7CC 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005EB70 0005A7D0 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005EB74 0005A7D4 48 1F 53 F9 */ bl func_80253F6C /* 8005EB78 0005A7D8 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005EB7C 0005A7DC 48 00 00 8C */ b lbl_8005EC08 /* 8005EB80 0005A7E0 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005EB84 0005A7E4 38 00 00 22 */ li r0, 0x22 /* 8005EB88 0005A7E8 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005EB8C 0005A7EC B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005EB90 0005A7F0 A0 03 00 B2 */ lhz r0, 0xb2(r3) /* 8005EB94 0005A7F4 54 00 8F FF */ rlwinm. r0, r0, 0x11, 0x1f, 0x1f /* 8005EB98 0005A7F8 41 82 00 14 */ beq lbl_8005EBAC /* 8005EB9C 0005A7FC A0 03 00 64 */ lhz r0, 0x64(r3) /* 8005EBA0 0005A800 38 80 00 00 */ li r4, 0 /* 8005EBA4 0005A804 38 6D 99 19 */ addi r3, r13, lbl_8063EBD9-_SDA_BASE_ /* 8005EBA8 0005A808 7C 83 01 AE */ stbx r4, r3, r0 lbl_8005EBAC: /* 8005EBAC 0005A80C 3C 60 80 06 */ lis r3, func_80060B30@ha /* 8005EBB0 0005A810 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005EBB4 0005A814 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005EBB8 0005A818 38 63 0B 30 */ addi r3, r3, func_80060B30@l /* 8005EBBC 0005A81C 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005EBC0 0005A820 48 1F 53 AD */ bl func_80253F6C /* 8005EBC4 0005A824 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005EBC8 0005A828 48 00 00 40 */ b lbl_8005EC08 /* 8005EBCC 0005A82C 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005EBD0 0005A830 38 00 00 0E */ li r0, 0xe /* 8005EBD4 0005A834 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005EBD8 0005A838 B0 0D 99 14 */ sth r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005EBDC 0005A83C A8 63 00 02 */ lha r3, 2(r3) /* 8005EBE0 0005A840 38 80 00 09 */ li r4, 9 /* 8005EBE4 0005A844 38 A0 00 00 */ li r5, 0 /* 8005EBE8 0005A848 48 1F 51 C9 */ bl func_80253DB0 /* 8005EBEC 0005A84C 3C 60 80 06 */ lis r3, func_8005F9BC@ha /* 8005EBF0 0005A850 3C 80 80 06 */ lis r4, func_80060E04@ha /* 8005EBF4 0005A854 80 AD 81 FC */ lwz r5, lbl_8063D4BC-_SDA_BASE_(r13) /* 8005EBF8 0005A858 38 63 F9 BC */ addi r3, r3, func_8005F9BC@l /* 8005EBFC 0005A85C 38 84 0E 04 */ addi r4, r4, func_80060E04@l /* 8005EC00 0005A860 48 1F 53 6D */ bl func_80253F6C /* 8005EC04 0005A864 90 6D 81 FC */ stw r3, lbl_8063D4BC-_SDA_BASE_(r13) lbl_8005EC08: /* 8005EC08 0005A868 39 61 00 40 */ addi r11, r1, 0x40 /* 8005EC0C 0005A86C 48 16 85 65 */ bl _restgpr_26 /* 8005EC10 0005A870 80 01 00 44 */ lwz r0, 0x44(r1) /* 8005EC14 0005A874 7C 08 03 A6 */ mtlr r0 /* 8005EC18 0005A878 38 21 00 40 */ addi r1, r1, 0x40 /* 8005EC1C 0005A87C 4E 80 00 20 */ blr .global func_8005EC20 func_8005EC20: /* 8005EC20 0005A880 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8005EC24 0005A884 7C 08 02 A6 */ mflr r0 /* 8005EC28 0005A888 28 03 00 02 */ cmplwi r3, 2 /* 8005EC2C 0005A88C 90 01 00 24 */ stw r0, 0x24(r1) /* 8005EC30 0005A890 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8005EC34 0005A894 93 C1 00 18 */ stw r30, 0x18(r1) /* 8005EC38 0005A898 7C 7E 1B 78 */ mr r30, r3 /* 8005EC3C 0005A89C 41 80 00 24 */ blt lbl_8005EC60 /* 8005EC40 0005A8A0 88 0D 99 22 */ lbz r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005EC44 0005A8A4 2C 00 00 11 */ cmpwi r0, 0x11 /* 8005EC48 0005A8A8 40 80 00 0C */ bge lbl_8005EC54 /* 8005EC4C 0005A8AC 2C 00 00 0D */ cmpwi r0, 0xd /* 8005EC50 0005A8B0 40 80 00 10 */ bge lbl_8005EC60 lbl_8005EC54: /* 8005EC54 0005A8B4 3C 60 00 01 */ lis r3, 0x0000F4FA@ha /* 8005EC58 0005A8B8 38 63 F4 FA */ addi r3, r3, 0x0000F4FA@l /* 8005EC5C 0005A8BC 48 00 05 24 */ b lbl_8005F180 lbl_8005EC60: /* 8005EC60 0005A8C0 3F E0 80 48 */ lis r31, lbl_80478408@ha /* 8005EC64 0005A8C4 3B FF 84 08 */ addi r31, r31, lbl_80478408@l /* 8005EC68 0005A8C8 B0 7F 00 70 */ sth r3, 0x70(r31) /* 8005EC6C 0005A8CC 80 7F 00 B4 */ lwz r3, 0xb4(r31) /* 8005EC70 0005A8D0 80 03 00 0C */ lwz r0, 0xc(r3) /* 8005EC74 0005A8D4 2C 00 00 01 */ cmpwi r0, 1 /* 8005EC78 0005A8D8 40 82 01 94 */ bne lbl_8005EE0C /* 8005EC7C 0005A8DC 88 03 00 1B */ lbz r0, 0x1b(r3) /* 8005EC80 0005A8E0 28 00 00 02 */ cmplwi r0, 2 /* 8005EC84 0005A8E4 40 82 01 88 */ bne lbl_8005EE0C /* 8005EC88 0005A8E8 88 1F 00 B0 */ lbz r0, 0xb0(r31) /* 8005EC8C 0005A8EC 28 00 00 0F */ cmplwi r0, 0xf /* 8005EC90 0005A8F0 40 82 00 24 */ bne lbl_8005ECB4 /* 8005EC94 0005A8F4 88 7F 00 A6 */ lbz r3, 0xa6(r31) /* 8005EC98 0005A8F8 38 C0 00 00 */ li r6, 0 /* 8005EC9C 0005A8FC A0 9F 00 A8 */ lhz r4, 0xa8(r31) /* 8005ECA0 0005A900 A0 BF 00 AC */ lhz r5, 0xac(r31) /* 8005ECA4 0005A904 4B FF EB 2D */ bl func_8005D7D0 /* 8005ECA8 0005A908 38 00 00 0E */ li r0, 0xe /* 8005ECAC 0005A90C 98 1F 00 B0 */ stb r0, 0xb0(r31) /* 8005ECB0 0005A910 48 00 00 80 */ b lbl_8005ED30 lbl_8005ECB4: /* 8005ECB4 0005A914 2C 00 00 00 */ cmpwi r0, 0 /* 8005ECB8 0005A918 40 82 00 44 */ bne lbl_8005ECFC /* 8005ECBC 0005A91C 88 7F 00 B1 */ lbz r3, 0xb1(r31) /* 8005ECC0 0005A920 2C 03 00 0F */ cmpwi r3, 0xf /* 8005ECC4 0005A924 41 82 00 1C */ beq lbl_8005ECE0 /* 8005ECC8 0005A928 41 80 00 34 */ blt lbl_8005ECFC /* 8005ECCC 0005A92C 2C 03 00 1A */ cmpwi r3, 0x1a /* 8005ECD0 0005A930 40 80 00 2C */ bge lbl_8005ECFC /* 8005ECD4 0005A934 38 03 FF FF */ addi r0, r3, -1 /* 8005ECD8 0005A938 98 1F 00 B1 */ stb r0, 0xb1(r31) /* 8005ECDC 0005A93C 48 00 00 20 */ b lbl_8005ECFC lbl_8005ECE0: /* 8005ECE0 0005A940 88 7F 00 A7 */ lbz r3, 0xa7(r31) /* 8005ECE4 0005A944 38 C0 00 00 */ li r6, 0 /* 8005ECE8 0005A948 A0 9F 00 AA */ lhz r4, 0xaa(r31) /* 8005ECEC 0005A94C A0 BF 00 AE */ lhz r5, 0xae(r31) /* 8005ECF0 0005A950 4B FF EA E1 */ bl func_8005D7D0 /* 8005ECF4 0005A954 38 00 00 0E */ li r0, 0xe /* 8005ECF8 0005A958 98 1F 00 B1 */ stb r0, 0xb1(r31) lbl_8005ECFC: /* 8005ECFC 0005A95C 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005ED00 0005A960 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005ED04 0005A964 88 03 00 B0 */ lbz r0, 0xb0(r3) /* 8005ED08 0005A968 2C 00 00 0E */ cmpwi r0, 0xe /* 8005ED0C 0005A96C 41 82 00 24 */ beq lbl_8005ED30 /* 8005ED10 0005A970 40 80 00 0C */ bge lbl_8005ED1C /* 8005ED14 0005A974 2C 00 00 00 */ cmpwi r0, 0 /* 8005ED18 0005A978 41 82 00 18 */ beq lbl_8005ED30 lbl_8005ED1C: /* 8005ED1C 0005A97C 3C 80 80 48 */ lis r4, lbl_80478408@ha /* 8005ED20 0005A980 38 84 84 08 */ addi r4, r4, lbl_80478408@l /* 8005ED24 0005A984 88 64 00 B0 */ lbz r3, 0xb0(r4) /* 8005ED28 0005A988 38 03 FF FF */ addi r0, r3, -1 /* 8005ED2C 0005A98C 98 04 00 B0 */ stb r0, 0xb0(r4) lbl_8005ED30: /* 8005ED30 0005A990 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005ED34 0005A994 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005ED38 0005A998 7C 63 F2 14 */ add r3, r3, r30 /* 8005ED3C 0005A99C 88 03 00 B0 */ lbz r0, 0xb0(r3) /* 8005ED40 0005A9A0 2C 00 00 0E */ cmpwi r0, 0xe /* 8005ED44 0005A9A4 41 82 00 0C */ beq lbl_8005ED50 /* 8005ED48 0005A9A8 38 60 FF FF */ li r3, -1 /* 8005ED4C 0005A9AC 48 00 04 34 */ b lbl_8005F180 lbl_8005ED50: /* 8005ED50 0005A9B0 88 0D 99 22 */ lbz r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005ED54 0005A9B4 2C 00 00 04 */ cmpwi r0, 4 /* 8005ED58 0005A9B8 41 82 00 34 */ beq lbl_8005ED8C /* 8005ED5C 0005A9BC 40 80 00 1C */ bge lbl_8005ED78 /* 8005ED60 0005A9C0 2C 00 00 01 */ cmpwi r0, 1 /* 8005ED64 0005A9C4 41 82 00 A8 */ beq lbl_8005EE0C /* 8005ED68 0005A9C8 40 80 00 64 */ bge lbl_8005EDCC /* 8005ED6C 0005A9CC 2C 00 00 00 */ cmpwi r0, 0 /* 8005ED70 0005A9D0 40 80 00 1C */ bge lbl_8005ED8C /* 8005ED74 0005A9D4 48 00 00 98 */ b lbl_8005EE0C lbl_8005ED78: /* 8005ED78 0005A9D8 2C 00 00 09 */ cmpwi r0, 9 /* 8005ED7C 0005A9DC 40 80 00 90 */ bge lbl_8005EE0C /* 8005ED80 0005A9E0 2C 00 00 07 */ cmpwi r0, 7 /* 8005ED84 0005A9E4 40 80 00 48 */ bge lbl_8005EDCC /* 8005ED88 0005A9E8 48 00 00 84 */ b lbl_8005EE0C lbl_8005ED8C: /* 8005ED8C 0005A9EC 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005ED90 0005A9F0 38 A1 00 10 */ addi r5, r1, 0x10 /* 8005ED94 0005A9F4 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005ED98 0005A9F8 38 80 00 08 */ li r4, 8 /* 8005ED9C 0005A9FC A8 63 00 28 */ lha r3, 0x28(r3) /* 8005EDA0 0005AA00 48 1F 50 AD */ bl func_80253E4C /* 8005EDA4 0005AA04 80 01 00 10 */ lwz r0, 0x10(r1) /* 8005EDA8 0005AA08 2C 00 00 00 */ cmpwi r0, 0 /* 8005EDAC 0005AA0C 41 82 00 60 */ beq lbl_8005EE0C /* 8005EDB0 0005AA10 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005EDB4 0005AA14 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005EDB8 0005AA18 A0 03 00 90 */ lhz r0, 0x90(r3) /* 8005EDBC 0005AA1C 28 00 00 08 */ cmplwi r0, 8 /* 8005EDC0 0005AA20 41 82 00 4C */ beq lbl_8005EE0C /* 8005EDC4 0005AA24 38 60 FF FF */ li r3, -1 /* 8005EDC8 0005AA28 48 00 03 B8 */ b lbl_8005F180 lbl_8005EDCC: /* 8005EDCC 0005AA2C 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005EDD0 0005AA30 38 A1 00 10 */ addi r5, r1, 0x10 /* 8005EDD4 0005AA34 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005EDD8 0005AA38 38 80 00 08 */ li r4, 8 /* 8005EDDC 0005AA3C A8 63 00 26 */ lha r3, 0x26(r3) /* 8005EDE0 0005AA40 48 1F 50 6D */ bl func_80253E4C /* 8005EDE4 0005AA44 80 01 00 10 */ lwz r0, 0x10(r1) /* 8005EDE8 0005AA48 2C 00 00 00 */ cmpwi r0, 0 /* 8005EDEC 0005AA4C 41 82 00 20 */ beq lbl_8005EE0C /* 8005EDF0 0005AA50 3C 60 80 48 */ lis r3, lbl_80478408@ha /* 8005EDF4 0005AA54 38 63 84 08 */ addi r3, r3, lbl_80478408@l /* 8005EDF8 0005AA58 A0 03 00 90 */ lhz r0, 0x90(r3) /* 8005EDFC 0005AA5C 28 00 00 08 */ cmplwi r0, 8 /* 8005EE00 0005AA60 41 82 00 0C */ beq lbl_8005EE0C /* 8005EE04 0005AA64 38 60 FF FF */ li r3, -1 /* 8005EE08 0005AA68 48 00 03 78 */ b lbl_8005F180 lbl_8005EE0C: /* 8005EE0C 0005AA6C 3F E0 80 48 */ lis r31, lbl_80478408@ha /* 8005EE10 0005AA70 3B FF 84 08 */ addi r31, r31, lbl_80478408@l /* 8005EE14 0005AA74 A0 1F 00 8E */ lhz r0, 0x8e(r31) /* 8005EE18 0005AA78 2C 00 00 00 */ cmpwi r0, 0 /* 8005EE1C 0005AA7C 41 82 02 5C */ beq lbl_8005F078 /* 8005EE20 0005AA80 28 00 00 02 */ cmplwi r0, 2 /* 8005EE24 0005AA84 40 82 00 0C */ bne lbl_8005EE30 /* 8005EE28 0005AA88 38 60 FF FF */ li r3, -1 /* 8005EE2C 0005AA8C 48 00 03 54 */ b lbl_8005F180 lbl_8005EE30: /* 8005EE30 0005AA90 88 0D 99 22 */ lbz r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005EE34 0005AA94 28 00 00 0C */ cmplwi r0, 0xc /* 8005EE38 0005AA98 41 81 02 38 */ bgt lbl_8005F070 /* 8005EE3C 0005AA9C 3C 60 80 41 */ lis r3, lbl_8040B904@ha /* 8005EE40 0005AAA0 54 00 10 3A */ slwi r0, r0, 2 /* 8005EE44 0005AAA4 38 63 B9 04 */ addi r3, r3, lbl_8040B904@l /* 8005EE48 0005AAA8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005EE4C 0005AAAC 7C 69 03 A6 */ mtctr r3 /* 8005EE50 0005AAB0 4E 80 04 20 */ bctr /* 8005EE54 0005AAB4 A0 1F 00 92 */ lhz r0, 0x92(r31) /* 8005EE58 0005AAB8 28 00 00 FF */ cmplwi r0, 0xff /* 8005EE5C 0005AABC 41 82 00 34 */ beq lbl_8005EE90 /* 8005EE60 0005AAC0 28 00 00 FB */ cmplwi r0, 0xfb /* 8005EE64 0005AAC4 40 82 00 0C */ bne lbl_8005EE70 /* 8005EE68 0005AAC8 38 00 00 02 */ li r0, 2 /* 8005EE6C 0005AACC B0 1F 00 8E */ sth r0, 0x8e(r31) lbl_8005EE70: /* 8005EE70 0005AAD0 3C 80 80 48 */ lis r4, lbl_80478408@ha /* 8005EE74 0005AAD4 38 00 00 0D */ li r0, 0xd /* 8005EE78 0005AAD8 38 84 84 08 */ addi r4, r4, lbl_80478408@l /* 8005EE7C 0005AADC 7C 64 F2 14 */ add r3, r4, r30 /* 8005EE80 0005AAE0 98 03 00 B0 */ stb r0, 0xb0(r3) /* 8005EE84 0005AAE4 A0 04 00 92 */ lhz r0, 0x92(r4) /* 8005EE88 0005AAE8 60 03 F0 00 */ ori r3, r0, 0xf000 /* 8005EE8C 0005AAEC 48 00 02 F4 */ b lbl_8005F180 lbl_8005EE90: /* 8005EE90 0005AAF0 48 01 01 39 */ bl func_8006EFC8 /* 8005EE94 0005AAF4 38 60 FF FF */ li r3, -1 /* 8005EE98 0005AAF8 48 00 02 E8 */ b lbl_8005F180 /* 8005EE9C 0005AAFC A0 1F 00 94 */ lhz r0, 0x94(r31) /* 8005EEA0 0005AB00 28 00 00 FF */ cmplwi r0, 0xff /* 8005EEA4 0005AB04 41 82 00 34 */ beq lbl_8005EED8 /* 8005EEA8 0005AB08 28 00 00 FB */ cmplwi r0, 0xfb /* 8005EEAC 0005AB0C 40 82 00 0C */ bne lbl_8005EEB8 /* 8005EEB0 0005AB10 38 00 00 02 */ li r0, 2 /* 8005EEB4 0005AB14 B0 1F 00 8E */ sth r0, 0x8e(r31) lbl_8005EEB8: /* 8005EEB8 0005AB18 3C 80 80 48 */ lis r4, lbl_80478408@ha /* 8005EEBC 0005AB1C 38 00 00 0D */ li r0, 0xd /* 8005EEC0 0005AB20 38 84 84 08 */ addi r4, r4, lbl_80478408@l /* 8005EEC4 0005AB24 7C 64 F2 14 */ add r3, r4, r30 /* 8005EEC8 0005AB28 98 03 00 B0 */ stb r0, 0xb0(r3) /* 8005EECC 0005AB2C A0 04 00 94 */ lhz r0, 0x94(r4) /* 8005EED0 0005AB30 60 03 F1 00 */ ori r3, r0, 0xf100 /* 8005EED4 0005AB34 48 00 02 AC */ b lbl_8005F180 lbl_8005EED8: /* 8005EED8 0005AB38 48 01 00 F1 */ bl func_8006EFC8 /* 8005EEDC 0005AB3C 38 60 FF FF */ li r3, -1 /* 8005EEE0 0005AB40 48 00 02 A0 */ b lbl_8005F180 /* 8005EEE4 0005AB44 A0 1F 00 96 */ lhz r0, 0x96(r31) /* 8005EEE8 0005AB48 28 00 00 FF */ cmplwi r0, 0xff /* 8005EEEC 0005AB4C 41 82 00 38 */ beq lbl_8005EF24 /* 8005EEF0 0005AB50 A0 1F 00 94 */ lhz r0, 0x94(r31) /* 8005EEF4 0005AB54 28 00 00 FB */ cmplwi r0, 0xfb /* 8005EEF8 0005AB58 41 82 00 0C */ beq lbl_8005EF04 /* 8005EEFC 0005AB5C 38 00 00 02 */ li r0, 2 /* 8005EF00 0005AB60 B0 1F 00 8E */ sth r0, 0x8e(r31) lbl_8005EF04: /* 8005EF04 0005AB64 3C 80 80 48 */ lis r4, lbl_80478408@ha /* 8005EF08 0005AB68 38 00 00 0D */ li r0, 0xd /* 8005EF0C 0005AB6C 38 84 84 08 */ addi r4, r4, lbl_80478408@l /* 8005EF10 0005AB70 7C 64 F2 14 */ add r3, r4, r30 /* 8005EF14 0005AB74 98 03 00 B0 */ stb r0, 0xb0(r3) /* 8005EF18 0005AB78 A0 04 00 96 */ lhz r0, 0x96(r4) /* 8005EF1C 0005AB7C 60 03 F2 00 */ ori r3, r0, 0xf200 /* 8005EF20 0005AB80 48 00 02 60 */ b lbl_8005F180 lbl_8005EF24: /* 8005EF24 0005AB84 48 01 00 A5 */ bl func_8006EFC8 /* 8005EF28 0005AB88 38 60 FF FF */ li r3, -1 /* 8005EF2C 0005AB8C 48 00 02 54 */ b lbl_8005F180 /* 8005EF30 0005AB90 A0 1F 00 96 */ lhz r0, 0x96(r31) /* 8005EF34 0005AB94 28 00 00 FF */ cmplwi r0, 0xff /* 8005EF38 0005AB98 41 82 00 24 */ beq lbl_8005EF5C /* 8005EF3C 0005AB9C 38 00 00 02 */ li r0, 2 /* 8005EF40 0005ABA0 7C 7F F2 14 */ add r3, r31, r30 /* 8005EF44 0005ABA4 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005EF48 0005ABA8 38 00 00 0D */ li r0, 0xd /* 8005EF4C 0005ABAC 98 03 00 B0 */ stb r0, 0xb0(r3) /* 8005EF50 0005ABB0 A0 1F 00 96 */ lhz r0, 0x96(r31) /* 8005EF54 0005ABB4 60 03 F3 00 */ ori r3, r0, 0xf300 /* 8005EF58 0005ABB8 48 00 02 28 */ b lbl_8005F180 lbl_8005EF5C: /* 8005EF5C 0005ABBC 48 01 00 6D */ bl func_8006EFC8 /* 8005EF60 0005ABC0 38 60 FF FF */ li r3, -1 /* 8005EF64 0005ABC4 48 00 02 1C */ b lbl_8005F180 /* 8005EF68 0005ABC8 A0 CD 99 1E */ lhz r6, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005EF6C 0005ABCC 28 06 00 FA */ cmplwi r6, 0xfa /* 8005EF70 0005ABD0 40 82 00 28 */ bne lbl_8005EF98 /* 8005EF74 0005ABD4 38 A0 00 FF */ li r5, 0xff /* 8005EF78 0005ABD8 38 80 00 02 */ li r4, 2 /* 8005EF7C 0005ABDC B0 BF 00 92 */ sth r5, 0x92(r31) /* 8005EF80 0005ABE0 7C 7F F2 14 */ add r3, r31, r30 /* 8005EF84 0005ABE4 38 00 00 0D */ li r0, 0xd /* 8005EF88 0005ABE8 B0 BF 00 94 */ sth r5, 0x94(r31) /* 8005EF8C 0005ABEC B0 BF 00 96 */ sth r5, 0x96(r31) /* 8005EF90 0005ABF0 B0 9F 00 8E */ sth r4, 0x8e(r31) /* 8005EF94 0005ABF4 98 03 00 B0 */ stb r0, 0xb0(r3) lbl_8005EF98: /* 8005EF98 0005ABF8 54 C0 06 3E */ clrlwi r0, r6, 0x18 /* 8005EF9C 0005ABFC 60 03 F4 00 */ ori r3, r0, 0xf400 /* 8005EFA0 0005AC00 48 00 01 E0 */ b lbl_8005F180 /* 8005EFA4 0005AC04 A0 0D 99 14 */ lhz r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005EFA8 0005AC08 28 00 00 15 */ cmplwi r0, 0x15 /* 8005EFAC 0005AC0C 41 82 00 0C */ beq lbl_8005EFB8 /* 8005EFB0 0005AC10 38 60 FF FF */ li r3, -1 /* 8005EFB4 0005AC14 48 00 01 CC */ b lbl_8005F180 lbl_8005EFB8: /* 8005EFB8 0005AC18 38 00 00 02 */ li r0, 2 /* 8005EFBC 0005AC1C 3C 60 00 01 */ lis r3, 0x0000F5FA@ha /* 8005EFC0 0005AC20 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005EFC4 0005AC24 7C 9F F2 14 */ add r4, r31, r30 /* 8005EFC8 0005AC28 38 00 00 0D */ li r0, 0xd /* 8005EFCC 0005AC2C 38 63 F5 FA */ addi r3, r3, 0x0000F5FA@l /* 8005EFD0 0005AC30 98 04 00 B0 */ stb r0, 0xb0(r4) /* 8005EFD4 0005AC34 48 00 01 AC */ b lbl_8005F180 /* 8005EFD8 0005AC38 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005EFDC 0005AC3C 38 A1 00 0C */ addi r5, r1, 0xc /* 8005EFE0 0005AC40 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005EFE4 0005AC44 38 80 00 08 */ li r4, 8 /* 8005EFE8 0005AC48 A8 63 00 26 */ lha r3, 0x26(r3) /* 8005EFEC 0005AC4C 48 1F 4E 61 */ bl func_80253E4C /* 8005EFF0 0005AC50 80 01 00 0C */ lwz r0, 0xc(r1) /* 8005EFF4 0005AC54 2C 00 00 00 */ cmpwi r0, 0 /* 8005EFF8 0005AC58 41 82 00 0C */ beq lbl_8005F004 /* 8005EFFC 0005AC5C 38 60 FF FF */ li r3, -1 /* 8005F000 0005AC60 48 00 01 80 */ b lbl_8005F180 lbl_8005F004: /* 8005F004 0005AC64 38 00 00 02 */ li r0, 2 /* 8005F008 0005AC68 3C 60 00 01 */ lis r3, 0x0000F5FA@ha /* 8005F00C 0005AC6C B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005F010 0005AC70 7C 9F F2 14 */ add r4, r31, r30 /* 8005F014 0005AC74 38 00 00 0D */ li r0, 0xd /* 8005F018 0005AC78 38 63 F5 FA */ addi r3, r3, 0x0000F5FA@l /* 8005F01C 0005AC7C 98 04 00 B0 */ stb r0, 0xb0(r4) /* 8005F020 0005AC80 48 00 01 60 */ b lbl_8005F180 /* 8005F024 0005AC84 3C 60 80 41 */ lis r3, lbl_8040B768@ha /* 8005F028 0005AC88 38 A1 00 08 */ addi r5, r1, 8 /* 8005F02C 0005AC8C 38 63 B7 68 */ addi r3, r3, lbl_8040B768@l /* 8005F030 0005AC90 38 80 00 08 */ li r4, 8 /* 8005F034 0005AC94 A8 63 00 28 */ lha r3, 0x28(r3) /* 8005F038 0005AC98 48 1F 4E 15 */ bl func_80253E4C /* 8005F03C 0005AC9C 80 01 00 08 */ lwz r0, 8(r1) /* 8005F040 0005ACA0 2C 00 00 00 */ cmpwi r0, 0 /* 8005F044 0005ACA4 41 82 00 0C */ beq lbl_8005F050 /* 8005F048 0005ACA8 38 60 FF FF */ li r3, -1 /* 8005F04C 0005ACAC 48 00 01 34 */ b lbl_8005F180 lbl_8005F050: /* 8005F050 0005ACB0 38 00 00 02 */ li r0, 2 /* 8005F054 0005ACB4 3C 60 00 01 */ lis r3, 0x0000F5FA@ha /* 8005F058 0005ACB8 B0 1F 00 8E */ sth r0, 0x8e(r31) /* 8005F05C 0005ACBC 7C 9F F2 14 */ add r4, r31, r30 /* 8005F060 0005ACC0 38 00 00 0D */ li r0, 0xd /* 8005F064 0005ACC4 38 63 F5 FA */ addi r3, r3, 0x0000F5FA@l /* 8005F068 0005ACC8 98 04 00 B0 */ stb r0, 0xb0(r4) /* 8005F06C 0005ACCC 48 00 01 14 */ b lbl_8005F180 lbl_8005F070: /* 8005F070 0005ACD0 38 60 FF FF */ li r3, -1 /* 8005F074 0005ACD4 48 00 01 0C */ b lbl_8005F180 lbl_8005F078: /* 8005F078 0005ACD8 88 0D 99 22 */ lbz r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005F07C 0005ACDC 28 00 00 0F */ cmplwi r0, 0xf /* 8005F080 0005ACE0 41 81 00 50 */ bgt lbl_8005F0D0 /* 8005F084 0005ACE4 3C 60 80 41 */ lis r3, lbl_8040B8C4@ha /* 8005F088 0005ACE8 54 00 10 3A */ slwi r0, r0, 2 /* 8005F08C 0005ACEC 38 63 B8 C4 */ addi r3, r3, lbl_8040B8C4@l /* 8005F090 0005ACF0 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005F094 0005ACF4 7C 69 03 A6 */ mtctr r3 /* 8005F098 0005ACF8 4E 80 04 20 */ bctr /* 8005F09C 0005ACFC 48 00 FF 2D */ bl func_8006EFC8 /* 8005F0A0 0005AD00 48 00 00 30 */ b lbl_8005F0D0 /* 8005F0A4 0005AD04 3C 60 00 01 */ lis r3, 0x0000F4FA@ha /* 8005F0A8 0005AD08 38 63 F4 FA */ addi r3, r3, 0x0000F4FA@l /* 8005F0AC 0005AD0C 48 00 00 D4 */ b lbl_8005F180 /* 8005F0B0 0005AD10 A0 0D 99 14 */ lhz r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005F0B4 0005AD14 38 60 FF FF */ li r3, -1 /* 8005F0B8 0005AD18 28 00 00 15 */ cmplwi r0, 0x15 /* 8005F0BC 0005AD1C 40 82 00 C4 */ bne lbl_8005F180 /* 8005F0C0 0005AD20 A0 0D 99 1E */ lhz r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005F0C4 0005AD24 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8005F0C8 0005AD28 60 03 F4 00 */ ori r3, r0, 0xf400 /* 8005F0CC 0005AD2C 48 00 00 B4 */ b lbl_8005F180 lbl_8005F0D0: /* 8005F0D0 0005AD30 A0 0D 99 14 */ lhz r0, lbl_8063EBD4-_SDA_BASE_(r13) /* 8005F0D4 0005AD34 28 00 00 15 */ cmplwi r0, 0x15 /* 8005F0D8 0005AD38 41 82 00 0C */ beq lbl_8005F0E4 /* 8005F0DC 0005AD3C 38 60 FF FF */ li r3, -1 /* 8005F0E0 0005AD40 48 00 00 A0 */ b lbl_8005F180 lbl_8005F0E4: /* 8005F0E4 0005AD44 88 0D 99 22 */ lbz r0, lbl_8063EBE2-_SDA_BASE_(r13) /* 8005F0E8 0005AD48 28 00 00 0C */ cmplwi r0, 0xc /* 8005F0EC 0005AD4C 41 81 00 90 */ bgt lbl_8005F17C /* 8005F0F0 0005AD50 3C 60 80 41 */ lis r3, lbl_8040B890@ha /* 8005F0F4 0005AD54 54 00 10 3A */ slwi r0, r0, 2 /* 8005F0F8 0005AD58 38 63 B8 90 */ addi r3, r3, lbl_8040B890@l /* 8005F0FC 0005AD5C 7C 63 00 2E */ lwzx r3, r3, r0 /* 8005F100 0005AD60 7C 69 03 A6 */ mtctr r3 /* 8005F104 0005AD64 4E 80 04 20 */ bctr /* 8005F108 0005AD68 A0 0D 99 1E */ lhz r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005F10C 0005AD6C 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8005F110 0005AD70 60 03 F0 00 */ ori r3, r0, 0xf000 /* 8005F114 0005AD74 48 00 00 6C */ b lbl_8005F180 /* 8005F118 0005AD78 A0 0D 99 1E */ lhz r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005F11C 0005AD7C 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8005F120 0005AD80 60 03 F1 00 */ ori r3, r0, 0xf100 /* 8005F124 0005AD84 48 00 00 5C */ b lbl_8005F180 /* 8005F128 0005AD88 A0 0D 99 1E */ lhz r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005F12C 0005AD8C 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8005F130 0005AD90 60 03 F2 00 */ ori r3, r0, 0xf200 /* 8005F134 0005AD94 48 00 00 4C */ b lbl_8005F180 /* 8005F138 0005AD98 A0 0D 99 1E */ lhz r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005F13C 0005AD9C 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8005F140 0005ADA0 60 03 F3 00 */ ori r3, r0, 0xf300 /* 8005F144 0005ADA4 48 00 00 3C */ b lbl_8005F180 /* 8005F148 0005ADA8 A0 0D 99 1E */ lhz r0, lbl_8063EBDE-_SDA_BASE_(r13) /* 8005F14C 0005ADAC 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 8005F150 0005ADB0 60 03 F4 00 */ ori r3, r0, 0xf400 /* 8005F154 0005ADB4 48 00 00 2C */ b lbl_8005F180 /* 8005F158 0005ADB8 3C 60 00 01 */ lis r3, 0x0000F5FA@ha /* 8005F15C 0005ADBC 38 63 F5 FA */ addi r3, r3, 0x0000F5FA@l /* 8005F160 0005ADC0 48 00 00 20 */ b lbl_8005F180 /* 8005F164 0005ADC4 3C 60 00 01 */ lis r3, 0x0000F5FA@ha /* 8005F168 0005ADC8 38 63 F5 FA */ addi r3, r3, 0x0000F5FA@l /* 8005F16C 0005ADCC 48 00 00 14 */ b lbl_8005F180 /* 8005F170 0005ADD0 3C 60 00 01 */ lis r3, 0x0000F5FA@ha /* 8005F174 0005ADD4 38 63 F5 FA */ addi r3, r3, 0x0000F5FA@l /* 8005F178 0005ADD8 48 00 00 08 */ b lbl_8005F180 lbl_8005F17C: /* 8005F17C 0005ADDC 38 60 FF FF */ li r3, -1 lbl_8005F180: /* 8005F180 0005ADE0 80 01 00 24 */ lwz r0, 0x24(r1) /* 8005F184 0005ADE4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8005F188 0005ADE8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8005F18C 0005ADEC 7C 08 03 A6 */ mtlr r0 /* 8005F190 0005ADF0 38 21 00 20 */ addi r1, r1, 0x20 /* 8005F194 0005ADF4 4E 80 00 20 */ blr