tp/asm/clib.s

21002 lines
979 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 80361B14
.global func_80361B14
func_80361B14:
/* 80361B14 0035EA54 88 E3 00 00 */ lbz r7, 0(r3)
/* 80361B18 0035EA58 2C 04 00 03 */ cmpwi r4, 3
/* 80361B1C 0035EA5C 7C 66 1B 78 */ mr r6, r3
/* 80361B20 0035EA60 38 00 00 08 */ li r0, 8
/* 80361B24 0035EA64 39 00 00 04 */ li r8, 4
/* 80361B28 0035EA68 7C E7 07 74 */ extsb r7, r7
/* 80361B2C 0035EA6C 39 20 00 01 */ li r9, 1
/* 80361B30 0035EA70 38 A0 00 00 */ li r5, 0
/* 80361B34 0035EA74 39 40 00 00 */ li r10, 0
/* 80361B38 0035EA78 39 60 00 04 */ li r11, 4
/* 80361B3C 0035EA7C 40 82 00 1C */ bne lbl_80361B58
/* 80361B40 0035EA80 88 E3 00 01 */ lbz r7, 1(r3)
/* 80361B44 0035EA84 38 C3 00 01 */ addi r6, r3, 1
/* 80361B48 0035EA88 39 00 00 08 */ li r8, 8
/* 80361B4C 0035EA8C 39 40 00 20 */ li r10, 0x20
/* 80361B50 0035EA90 7C E7 07 74 */ extsb r7, r7
/* 80361B54 0035EA94 39 60 00 08 */ li r11, 8
lbl_80361B58:
/* 80361B58 0035EA98 2C 04 00 02 */ cmpwi r4, 2
/* 80361B5C 0035EA9C 40 82 00 1C */ bne lbl_80361B78
/* 80361B60 0035EAA0 54 E0 07 FF */ clrlwi. r0, r7, 0x1f
/* 80361B64 0035EAA4 39 00 00 08 */ li r8, 8
/* 80361B68 0035EAA8 38 00 00 07 */ li r0, 7
/* 80361B6C 0035EAAC 41 82 00 08 */ beq lbl_80361B74
/* 80361B70 0035EAB0 38 A0 00 01 */ li r5, 1
lbl_80361B74:
/* 80361B74 0035EAB4 39 20 00 02 */ li r9, 2
lbl_80361B78:
/* 80361B78 0035EAB8 7C 07 00 00 */ cmpw r7, r0
/* 80361B7C 0035EABC 40 80 00 24 */ bge lbl_80361BA0
/* 80361B80 0035EAC0 7C E7 2A 14 */ add r7, r7, r5
/* 80361B84 0035EAC4 80 A3 00 08 */ lwz r5, 8(r3)
/* 80361B88 0035EAC8 7C 67 59 D6 */ mullw r3, r7, r11
/* 80361B8C 0035EACC 7C 07 4A 14 */ add r0, r7, r9
/* 80361B90 0035EAD0 98 06 00 00 */ stb r0, 0(r6)
/* 80361B94 0035EAD4 7C CA 1A 14 */ add r6, r10, r3
/* 80361B98 0035EAD8 7C C5 32 14 */ add r6, r5, r6
/* 80361B9C 0035EADC 48 00 00 2C */ b lbl_80361BC8
lbl_80361BA0:
/* 80361BA0 0035EAE0 38 A0 00 08 */ li r5, 8
/* 80361BA4 0035EAE4 38 08 FF FF */ addi r0, r8, -1
/* 80361BA8 0035EAE8 98 A6 00 00 */ stb r5, 0(r6)
/* 80361BAC 0035EAEC 7C 06 00 F8 */ nor r6, r0, r0
/* 80361BB0 0035EAF0 80 03 00 04 */ lwz r0, 4(r3)
/* 80361BB4 0035EAF4 7C A8 02 14 */ add r5, r8, r0
/* 80361BB8 0035EAF8 38 05 FF FF */ addi r0, r5, -1
/* 80361BBC 0035EAFC 7C C6 00 38 */ and r6, r6, r0
/* 80361BC0 0035EB00 7C 06 42 14 */ add r0, r6, r8
/* 80361BC4 0035EB04 90 03 00 04 */ stw r0, 4(r3)
lbl_80361BC8:
/* 80361BC8 0035EB08 2C 04 00 00 */ cmpwi r4, 0
/* 80361BCC 0035EB0C 40 82 00 08 */ bne lbl_80361BD4
/* 80361BD0 0035EB10 80 C6 00 00 */ lwz r6, 0(r6)
lbl_80361BD4:
/* 80361BD4 0035EB14 7C C3 33 78 */ mr r3, r6
/* 80361BD8 0035EB18 4E 80 00 20 */ blr
.global func_80361BDC
func_80361BDC:
/* 80361BDC 0035EB1C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80361BE0 0035EB20 7C 08 02 A6 */ mflr r0
/* 80361BE4 0035EB24 90 01 00 14 */ stw r0, 0x14(r1)
/* 80361BE8 0035EB28 48 00 00 20 */ b lbl_80361C08
lbl_80361BEC:
/* 80361BEC 0035EB2C 80 03 00 00 */ lwz r0, 0(r3)
/* 80361BF0 0035EB30 38 80 FF FF */ li r4, -1
/* 80361BF4 0035EB34 90 0D 94 08 */ stw r0, lbl_80451988-_SDA_BASE_(r13)
/* 80361BF8 0035EB38 81 83 00 04 */ lwz r12, 4(r3)
/* 80361BFC 0035EB3C 80 63 00 08 */ lwz r3, 8(r3)
/* 80361C00 0035EB40 7D 89 03 A6 */ mtctr r12
/* 80361C04 0035EB44 4E 80 04 21 */ bctrl
lbl_80361C08:
/* 80361C08 0035EB48 80 6D 94 08 */ lwz r3, lbl_80451988-_SDA_BASE_(r13)
/* 80361C0C 0035EB4C 28 03 00 00 */ cmplwi r3, 0
/* 80361C10 0035EB50 40 82 FF DC */ bne lbl_80361BEC
/* 80361C14 0035EB54 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80361C18 0035EB58 7C 08 03 A6 */ mtlr r0
/* 80361C1C 0035EB5C 38 21 00 10 */ addi r1, r1, 0x10
/* 80361C20 0035EB60 4E 80 00 20 */ blr
.global func_80361C24
func_80361C24:
/* 80361C24 0035EB64 80 0D 94 08 */ lwz r0, lbl_80451988-_SDA_BASE_(r13)
/* 80361C28 0035EB68 90 05 00 00 */ stw r0, 0(r5)
/* 80361C2C 0035EB6C 90 85 00 04 */ stw r4, 4(r5)
/* 80361C30 0035EB70 90 65 00 08 */ stw r3, 8(r5)
/* 80361C34 0035EB74 90 AD 94 08 */ stw r5, lbl_80451988-_SDA_BASE_(r13)
/* 80361C38 0035EB78 4E 80 00 20 */ blr
/* 80361C3C 0035EB7C 28 03 00 00 */ cmplwi r3, 0
/* 80361C40 0035EB80 4D 82 00 20 */ beqlr
/* 80361C44 0035EB84 28 05 00 00 */ cmplwi r5, 0
/* 80361C48 0035EB88 4D 82 00 20 */ beqlr
/* 80361C4C 0035EB8C 7C 66 1B 78 */ mr r6, r3
lbl_80361C50:
/* 80361C50 0035EB90 88 04 00 00 */ lbz r0, 0(r4)
/* 80361C54 0035EB94 34 A5 FF FF */ addic. r5, r5, -1
/* 80361C58 0035EB98 38 84 00 01 */ addi r4, r4, 1
/* 80361C5C 0035EB9C 98 06 00 00 */ stb r0, 0(r6)
/* 80361C60 0035EBA0 38 C6 00 01 */ addi r6, r6, 1
/* 80361C64 0035EBA4 40 82 FF EC */ bne lbl_80361C50
/* 80361C68 0035EBA8 4E 80 00 20 */ blr
.global func_80361C6C
func_80361C6C:
/* 80361C6C 0035EBAC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80361C70 0035EBB0 7C 08 02 A6 */ mflr r0
/* 80361C74 0035EBB4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80361C78 0035EBB8 BF 41 00 08 */ stmw r26, 8(r1)
/* 80361C7C 0035EBBC 7C 7A 1B 79 */ or. r26, r3, r3
/* 80361C80 0035EBC0 7C 9B 23 78 */ mr r27, r4
/* 80361C84 0035EBC4 41 82 00 50 */ beq lbl_80361CD4
/* 80361C88 0035EBC8 28 1B 00 00 */ cmplwi r27, 0
/* 80361C8C 0035EBCC 41 82 00 40 */ beq lbl_80361CCC
/* 80361C90 0035EBD0 83 BA FF F0 */ lwz r29, -0x10(r26)
/* 80361C94 0035EBD4 3B E0 00 00 */ li r31, 0
/* 80361C98 0035EBD8 83 DA FF F4 */ lwz r30, -0xc(r26)
/* 80361C9C 0035EBDC 7C 1D F1 D6 */ mullw r0, r29, r30
/* 80361CA0 0035EBE0 7F 9A 02 14 */ add r28, r26, r0
/* 80361CA4 0035EBE4 48 00 00 20 */ b lbl_80361CC4
lbl_80361CA8:
/* 80361CA8 0035EBE8 7F 9D E0 50 */ subf r28, r29, r28
/* 80361CAC 0035EBEC 7F 6C DB 78 */ mr r12, r27
/* 80361CB0 0035EBF0 7F 83 E3 78 */ mr r3, r28
/* 80361CB4 0035EBF4 38 80 FF FF */ li r4, -1
/* 80361CB8 0035EBF8 7D 89 03 A6 */ mtctr r12
/* 80361CBC 0035EBFC 4E 80 04 21 */ bctrl
/* 80361CC0 0035EC00 3B FF 00 01 */ addi r31, r31, 1
lbl_80361CC4:
/* 80361CC4 0035EC04 7C 1F F0 40 */ cmplw r31, r30
/* 80361CC8 0035EC08 41 80 FF E0 */ blt lbl_80361CA8
lbl_80361CCC:
/* 80361CCC 0035EC0C 38 7A FF F0 */ addi r3, r26, -16
/* 80361CD0 0035EC10 4B F6 D0 91 */ bl __dla__FPv
lbl_80361CD4:
/* 80361CD4 0035EC14 BB 41 00 08 */ lmw r26, 8(r1)
/* 80361CD8 0035EC18 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80361CDC 0035EC1C 7C 08 03 A6 */ mtlr r0
/* 80361CE0 0035EC20 38 21 00 20 */ addi r1, r1, 0x20
/* 80361CE4 0035EC24 4E 80 00 20 */ blr
.global func_80361CE8
func_80361CE8:
/* 80361CE8 0035EC28 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80361CEC 0035EC2C 7C 08 02 A6 */ mflr r0
/* 80361CF0 0035EC30 90 01 00 24 */ stw r0, 0x24(r1)
/* 80361CF4 0035EC34 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80361CF8 0035EC38 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80361CFC 0035EC3C 7C DE 33 78 */ mr r30, r6
/* 80361D00 0035EC40 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80361D04 0035EC44 7C BD 2B 78 */ mr r29, r5
/* 80361D08 0035EC48 7C 1D F1 D6 */ mullw r0, r29, r30
/* 80361D0C 0035EC4C 93 81 00 10 */ stw r28, 0x10(r1)
/* 80361D10 0035EC50 7C 9C 23 78 */ mr r28, r4
/* 80361D14 0035EC54 7F E3 02 14 */ add r31, r3, r0
/* 80361D18 0035EC58 48 00 00 20 */ b lbl_80361D38
lbl_80361D1C:
/* 80361D1C 0035EC5C 7F FD F8 50 */ subf r31, r29, r31
/* 80361D20 0035EC60 7F 8C E3 78 */ mr r12, r28
/* 80361D24 0035EC64 7F E3 FB 78 */ mr r3, r31
/* 80361D28 0035EC68 38 80 FF FF */ li r4, -1
/* 80361D2C 0035EC6C 7D 89 03 A6 */ mtctr r12
/* 80361D30 0035EC70 4E 80 04 21 */ bctrl
/* 80361D34 0035EC74 3B DE FF FF */ addi r30, r30, -1
lbl_80361D38:
/* 80361D38 0035EC78 28 1E 00 00 */ cmplwi r30, 0
/* 80361D3C 0035EC7C 40 82 FF E0 */ bne lbl_80361D1C
/* 80361D40 0035EC80 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80361D44 0035EC84 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80361D48 0035EC88 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80361D4C 0035EC8C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80361D50 0035EC90 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80361D54 0035EC94 7C 08 03 A6 */ mtlr r0
/* 80361D58 0035EC98 38 21 00 20 */ addi r1, r1, 0x20
/* 80361D5C 0035EC9C 4E 80 00 20 */ blr
.global func_80361D60
func_80361D60:
/* 80361D60 0035ECA0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80361D64 0035ECA4 7C 08 02 A6 */ mflr r0
/* 80361D68 0035ECA8 90 01 00 34 */ stw r0, 0x34(r1)
/* 80361D6C 0035ECAC 38 00 00 00 */ li r0, 0
/* 80361D70 0035ECB0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80361D74 0035ECB4 7C 7F 1B 78 */ mr r31, r3
/* 80361D78 0035ECB8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80361D7C 0035ECBC 7C FE 3B 78 */ mr r30, r7
/* 80361D80 0035ECC0 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80361D84 0035ECC4 7C DD 33 78 */ mr r29, r6
/* 80361D88 0035ECC8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80361D8C 0035ECCC 93 81 00 20 */ stw r28, 0x20(r1)
/* 80361D90 0035ECD0 7C 9C 23 78 */ mr r28, r4
/* 80361D94 0035ECD4 90 61 00 08 */ stw r3, 8(r1)
/* 80361D98 0035ECD8 93 A1 00 0C */ stw r29, 0xc(r1)
/* 80361D9C 0035ECDC 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80361DA0 0035ECE0 90 A1 00 14 */ stw r5, 0x14(r1)
/* 80361DA4 0035ECE4 90 01 00 18 */ stw r0, 0x18(r1)
/* 80361DA8 0035ECE8 48 00 00 28 */ b lbl_80361DD0
lbl_80361DAC:
/* 80361DAC 0035ECEC 7F 8C E3 78 */ mr r12, r28
/* 80361DB0 0035ECF0 7F E3 FB 78 */ mr r3, r31
/* 80361DB4 0035ECF4 38 80 00 01 */ li r4, 1
/* 80361DB8 0035ECF8 7D 89 03 A6 */ mtctr r12
/* 80361DBC 0035ECFC 4E 80 04 21 */ bctrl
/* 80361DC0 0035ED00 80 61 00 18 */ lwz r3, 0x18(r1)
/* 80361DC4 0035ED04 7F FF EA 14 */ add r31, r31, r29
/* 80361DC8 0035ED08 38 03 00 01 */ addi r0, r3, 1
/* 80361DCC 0035ED0C 90 01 00 18 */ stw r0, 0x18(r1)
lbl_80361DD0:
/* 80361DD0 0035ED10 80 81 00 18 */ lwz r4, 0x18(r1)
/* 80361DD4 0035ED14 7C 04 F0 40 */ cmplw r4, r30
/* 80361DD8 0035ED18 41 80 FF D4 */ blt lbl_80361DAC
/* 80361DDC 0035ED1C 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80361DE0 0035ED20 7C 04 00 40 */ cmplw r4, r0
/* 80361DE4 0035ED24 40 80 00 58 */ bge lbl_80361E3C
/* 80361DE8 0035ED28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80361DEC 0035ED2C 28 00 00 00 */ cmplwi r0, 0
/* 80361DF0 0035ED30 41 82 00 4C */ beq lbl_80361E3C
/* 80361DF4 0035ED34 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80361DF8 0035ED38 80 61 00 08 */ lwz r3, 8(r1)
/* 80361DFC 0035ED3C 7C 00 21 D6 */ mullw r0, r0, r4
/* 80361E00 0035ED40 7F E3 02 14 */ add r31, r3, r0
/* 80361E04 0035ED44 48 00 00 2C */ b lbl_80361E30
lbl_80361E08:
/* 80361E08 0035ED48 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80361E0C 0035ED4C 38 80 FF FF */ li r4, -1
/* 80361E10 0035ED50 81 81 00 14 */ lwz r12, 0x14(r1)
/* 80361E14 0035ED54 7F E0 F8 50 */ subf r31, r0, r31
/* 80361E18 0035ED58 7F E3 FB 78 */ mr r3, r31
/* 80361E1C 0035ED5C 7D 89 03 A6 */ mtctr r12
/* 80361E20 0035ED60 4E 80 04 21 */ bctrl
/* 80361E24 0035ED64 80 61 00 18 */ lwz r3, 0x18(r1)
/* 80361E28 0035ED68 38 03 FF FF */ addi r0, r3, -1
/* 80361E2C 0035ED6C 90 01 00 18 */ stw r0, 0x18(r1)
lbl_80361E30:
/* 80361E30 0035ED70 80 01 00 18 */ lwz r0, 0x18(r1)
/* 80361E34 0035ED74 28 00 00 00 */ cmplwi r0, 0
/* 80361E38 0035ED78 40 82 FF D0 */ bne lbl_80361E08
lbl_80361E3C:
/* 80361E3C 0035ED7C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80361E40 0035ED80 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80361E44 0035ED84 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80361E48 0035ED88 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80361E4C 0035ED8C 83 81 00 20 */ lwz r28, 0x20(r1)
/* 80361E50 0035ED90 7C 08 03 A6 */ mtlr r0
/* 80361E54 0035ED94 38 21 00 30 */ addi r1, r1, 0x30
/* 80361E58 0035ED98 4E 80 00 20 */ blr
/* 80361E5C 0035ED9C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80361E60 0035EDA0 7C 08 02 A6 */ mflr r0
/* 80361E64 0035EDA4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80361E68 0035EDA8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80361E6C 0035EDAC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80361E70 0035EDB0 7C 9E 23 78 */ mr r30, r4
/* 80361E74 0035EDB4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80361E78 0035EDB8 7C 7D 1B 79 */ or. r29, r3, r3
/* 80361E7C 0035EDBC 41 82 00 78 */ beq lbl_80361EF4
/* 80361E80 0035EDC0 80 9D 00 10 */ lwz r4, 0x10(r29)
/* 80361E84 0035EDC4 80 1D 00 08 */ lwz r0, 8(r29)
/* 80361E88 0035EDC8 7C 04 00 40 */ cmplw r4, r0
/* 80361E8C 0035EDCC 40 80 00 58 */ bge lbl_80361EE4
/* 80361E90 0035EDD0 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80361E94 0035EDD4 28 00 00 00 */ cmplwi r0, 0
/* 80361E98 0035EDD8 41 82 00 4C */ beq lbl_80361EE4
/* 80361E9C 0035EDDC 80 1D 00 04 */ lwz r0, 4(r29)
/* 80361EA0 0035EDE0 80 7D 00 00 */ lwz r3, 0(r29)
/* 80361EA4 0035EDE4 7C 00 21 D6 */ mullw r0, r0, r4
/* 80361EA8 0035EDE8 7F E3 02 14 */ add r31, r3, r0
/* 80361EAC 0035EDEC 48 00 00 2C */ b lbl_80361ED8
lbl_80361EB0:
/* 80361EB0 0035EDF0 80 1D 00 04 */ lwz r0, 4(r29)
/* 80361EB4 0035EDF4 38 80 FF FF */ li r4, -1
/* 80361EB8 0035EDF8 81 9D 00 0C */ lwz r12, 0xc(r29)
/* 80361EBC 0035EDFC 7F E0 F8 50 */ subf r31, r0, r31
/* 80361EC0 0035EE00 7F E3 FB 78 */ mr r3, r31
/* 80361EC4 0035EE04 7D 89 03 A6 */ mtctr r12
/* 80361EC8 0035EE08 4E 80 04 21 */ bctrl
/* 80361ECC 0035EE0C 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 80361ED0 0035EE10 38 03 FF FF */ addi r0, r3, -1
/* 80361ED4 0035EE14 90 1D 00 10 */ stw r0, 0x10(r29)
lbl_80361ED8:
/* 80361ED8 0035EE18 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 80361EDC 0035EE1C 28 00 00 00 */ cmplwi r0, 0
/* 80361EE0 0035EE20 40 82 FF D0 */ bne lbl_80361EB0
lbl_80361EE4:
/* 80361EE4 0035EE24 7F C0 07 35 */ extsh. r0, r30
/* 80361EE8 0035EE28 40 81 00 0C */ ble lbl_80361EF4
/* 80361EEC 0035EE2C 7F A3 EB 78 */ mr r3, r29
/* 80361EF0 0035EE30 4B F6 CE 4D */ bl __dl__FPv
lbl_80361EF4:
/* 80361EF4 0035EE34 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80361EF8 0035EE38 7F A3 EB 78 */ mr r3, r29
/* 80361EFC 0035EE3C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80361F00 0035EE40 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80361F04 0035EE44 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80361F08 0035EE48 7C 08 03 A6 */ mtlr r0
/* 80361F0C 0035EE4C 38 21 00 20 */ addi r1, r1, 0x20
/* 80361F10 0035EE50 4E 80 00 20 */ blr
.global func_80361F14
func_80361F14:
/* 80361F14 0035EE54 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80361F18 0035EE58 7C 08 02 A6 */ mflr r0
/* 80361F1C 0035EE5C 90 01 00 44 */ stw r0, 0x44(r1)
/* 80361F20 0035EE60 BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 80361F24 0035EE64 7C 7E 1B 79 */ or. r30, r3, r3
/* 80361F28 0035EE68 7C 9B 23 78 */ mr r27, r4
/* 80361F2C 0035EE6C 7C DC 33 78 */ mr r28, r6
/* 80361F30 0035EE70 7C FD 3B 78 */ mr r29, r7
/* 80361F34 0035EE74 41 82 00 CC */ beq lbl_80362000
/* 80361F38 0035EE78 93 9E 00 00 */ stw r28, 0(r30)
/* 80361F3C 0035EE7C 28 1B 00 00 */ cmplwi r27, 0
/* 80361F40 0035EE80 93 BE 00 04 */ stw r29, 4(r30)
/* 80361F44 0035EE84 3B DE 00 10 */ addi r30, r30, 0x10
/* 80361F48 0035EE88 41 82 00 B8 */ beq lbl_80362000
/* 80361F4C 0035EE8C 93 A1 00 18 */ stw r29, 0x18(r1)
/* 80361F50 0035EE90 38 00 00 00 */ li r0, 0
/* 80361F54 0035EE94 7F DF F3 78 */ mr r31, r30
/* 80361F58 0035EE98 93 C1 00 08 */ stw r30, 8(r1)
/* 80361F5C 0035EE9C 93 81 00 0C */ stw r28, 0xc(r1)
/* 80361F60 0035EEA0 93 A1 00 10 */ stw r29, 0x10(r1)
/* 80361F64 0035EEA4 90 A1 00 14 */ stw r5, 0x14(r1)
/* 80361F68 0035EEA8 90 01 00 18 */ stw r0, 0x18(r1)
/* 80361F6C 0035EEAC 48 00 00 28 */ b lbl_80361F94
lbl_80361F70:
/* 80361F70 0035EEB0 7F 6C DB 78 */ mr r12, r27
/* 80361F74 0035EEB4 7F E3 FB 78 */ mr r3, r31
/* 80361F78 0035EEB8 38 80 00 01 */ li r4, 1
/* 80361F7C 0035EEBC 7D 89 03 A6 */ mtctr r12
/* 80361F80 0035EEC0 4E 80 04 21 */ bctrl
/* 80361F84 0035EEC4 80 61 00 18 */ lwz r3, 0x18(r1)
/* 80361F88 0035EEC8 7F FF E2 14 */ add r31, r31, r28
/* 80361F8C 0035EECC 38 03 00 01 */ addi r0, r3, 1
/* 80361F90 0035EED0 90 01 00 18 */ stw r0, 0x18(r1)
lbl_80361F94:
/* 80361F94 0035EED4 80 81 00 18 */ lwz r4, 0x18(r1)
/* 80361F98 0035EED8 7C 04 E8 40 */ cmplw r4, r29
/* 80361F9C 0035EEDC 41 80 FF D4 */ blt lbl_80361F70
/* 80361FA0 0035EEE0 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80361FA4 0035EEE4 7C 04 00 40 */ cmplw r4, r0
/* 80361FA8 0035EEE8 40 80 00 58 */ bge lbl_80362000
/* 80361FAC 0035EEEC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80361FB0 0035EEF0 28 00 00 00 */ cmplwi r0, 0
/* 80361FB4 0035EEF4 41 82 00 4C */ beq lbl_80362000
/* 80361FB8 0035EEF8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80361FBC 0035EEFC 80 61 00 08 */ lwz r3, 8(r1)
/* 80361FC0 0035EF00 7C 00 21 D6 */ mullw r0, r0, r4
/* 80361FC4 0035EF04 7F E3 02 14 */ add r31, r3, r0
/* 80361FC8 0035EF08 48 00 00 2C */ b lbl_80361FF4
lbl_80361FCC:
/* 80361FCC 0035EF0C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80361FD0 0035EF10 38 80 FF FF */ li r4, -1
/* 80361FD4 0035EF14 81 81 00 14 */ lwz r12, 0x14(r1)
/* 80361FD8 0035EF18 7F E0 F8 50 */ subf r31, r0, r31
/* 80361FDC 0035EF1C 7F E3 FB 78 */ mr r3, r31
/* 80361FE0 0035EF20 7D 89 03 A6 */ mtctr r12
/* 80361FE4 0035EF24 4E 80 04 21 */ bctrl
/* 80361FE8 0035EF28 80 61 00 18 */ lwz r3, 0x18(r1)
/* 80361FEC 0035EF2C 38 03 FF FF */ addi r0, r3, -1
/* 80361FF0 0035EF30 90 01 00 18 */ stw r0, 0x18(r1)
lbl_80361FF4:
/* 80361FF4 0035EF34 80 01 00 18 */ lwz r0, 0x18(r1)
/* 80361FF8 0035EF38 28 00 00 00 */ cmplwi r0, 0
/* 80361FFC 0035EF3C 40 82 FF D0 */ bne lbl_80361FCC
lbl_80362000:
/* 80362000 0035EF40 7F C3 F3 78 */ mr r3, r30
/* 80362004 0035EF44 BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 80362008 0035EF48 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8036200C 0035EF4C 7C 08 03 A6 */ mtlr r0
/* 80362010 0035EF50 38 21 00 40 */ addi r1, r1, 0x40
/* 80362014 0035EF54 4E 80 00 20 */ blr
.global func_80362018
func_80362018:
/* 80362018 0035EF58 80 A3 00 00 */ lwz r5, 0(r3)
/* 8036201C 0035EF5C 80 C3 00 04 */ lwz r6, 4(r3)
/* 80362020 0035EF60 80 E3 00 08 */ lwz r7, 8(r3)
/* 80362024 0035EF64 38 60 00 01 */ li r3, 1
/* 80362028 0035EF68 2C 05 00 00 */ cmpwi r5, 0
/* 8036202C 0035EF6C 2F 06 00 00 */ cmpwi cr6, r6, 0
/* 80362030 0035EF70 2F 87 00 00 */ cmpwi cr7, r7, 0
/* 80362034 0035EF74 4C 82 00 20 */ bnelr
/* 80362038 0035EF78 4C 9A 00 20 */ bnelr cr6
/* 8036203C 0035EF7C 4C 9E 00 20 */ bnelr cr7
/* 80362040 0035EF80 38 60 00 00 */ li r3, 0
/* 80362044 0035EF84 4E 80 00 20 */ blr
/* 80362048 0035EF88 80 A3 00 00 */ lwz r5, 0(r3)
/* 8036204C 0035EF8C 80 C4 00 00 */ lwz r6, 0(r4)
/* 80362050 0035EF90 80 E3 00 04 */ lwz r7, 4(r3)
/* 80362054 0035EF94 81 04 00 04 */ lwz r8, 4(r4)
/* 80362058 0035EF98 81 23 00 08 */ lwz r9, 8(r3)
/* 8036205C 0035EF9C 81 44 00 08 */ lwz r10, 8(r4)
/* 80362060 0035EFA0 38 60 00 01 */ li r3, 1
/* 80362064 0035EFA4 7C 05 30 00 */ cmpw r5, r6
/* 80362068 0035EFA8 7F 07 40 00 */ cmpw cr6, r7, r8
/* 8036206C 0035EFAC 7F 89 50 00 */ cmpw cr7, r9, r10
/* 80362070 0035EFB0 4C 82 00 20 */ bnelr
/* 80362074 0035EFB4 4C 9A 00 20 */ bnelr cr6
/* 80362078 0035EFB8 4C 9E 00 20 */ bnelr cr7
/* 8036207C 0035EFBC 38 60 00 00 */ li r3, 0
/* 80362080 0035EFC0 4E 80 00 20 */ blr
.global func_80362084
func_80362084:
/* 80362084 0035EFC4 80 0C 00 00 */ lwz r0, 0(r12)
/* 80362088 0035EFC8 81 6C 00 04 */ lwz r11, 4(r12)
/* 8036208C 0035EFCC 81 8C 00 08 */ lwz r12, 8(r12)
/* 80362090 0035EFD0 7C 63 02 14 */ add r3, r3, r0
/* 80362094 0035EFD4 2C 0B 00 00 */ cmpwi r11, 0
/* 80362098 0035EFD8 41 80 00 0C */ blt lbl_803620A4
/* 8036209C 0035EFDC 7D 83 60 2E */ lwzx r12, r3, r12
/* 803620A0 0035EFE0 7D 8C 58 2E */ lwzx r12, r12, r11
lbl_803620A4:
/* 803620A4 0035EFE4 7D 89 03 A6 */ mtctr r12
/* 803620A8 0035EFE8 4E 80 04 20 */ bctr
.global func_803620AC
func_803620AC:
/* 803620AC 0035EFEC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803620B0 0035EFF0 3C 80 80 3A */ lis r4, lbl_803A2190@h
/* 803620B4 0035EFF4 60 84 21 90 */ ori r4, r4, lbl_803A2190@l
/* 803620B8 0035EFF8 38 60 00 00 */ li r3, 0
/* 803620BC 0035EFFC C8 04 00 00 */ lfd f0, 0(r4)
/* 803620C0 0035F000 C8 64 00 08 */ lfd f3, 8(r4)
/* 803620C4 0035F004 C8 84 00 10 */ lfd f4, 0x10(r4)
/* 803620C8 0035F008 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 803620CC 0035F00C FF 01 18 00 */ fcmpu cr6, f1, f3
/* 803620D0 0035F010 41 80 00 30 */ blt lbl_80362100
/* 803620D4 0035F014 38 63 FF FF */ addi r3, r3, -1
/* 803620D8 0035F018 40 98 00 28 */ bge cr6, lbl_80362100
/* 803620DC 0035F01C FF 81 20 00 */ fcmpu cr7, f1, f4
/* 803620E0 0035F020 FC 40 08 90 */ fmr f2, f1
/* 803620E4 0035F024 41 9C 00 08 */ blt cr7, lbl_803620EC
/* 803620E8 0035F028 FC 41 20 28 */ fsub f2, f1, f4
lbl_803620EC:
/* 803620EC 0035F02C FC 40 10 1E */ fctiwz f2, f2
/* 803620F0 0035F030 D8 41 00 08 */ stfd f2, 8(r1)
/* 803620F4 0035F034 80 61 00 0C */ lwz r3, 0xc(r1)
/* 803620F8 0035F038 41 9C 00 08 */ blt cr7, lbl_80362100
/* 803620FC 0035F03C 3C 63 80 00 */ addis r3, r3, 0x8000
lbl_80362100:
/* 80362100 0035F040 38 21 00 10 */ addi r1, r1, 0x10
/* 80362104 0035F044 4E 80 00 20 */ blr
/* 80362108 0035F048 D9 CB FF 70 */ stfd f14, -0x90(r11)
/* 8036210C 0035F04C D9 EB FF 78 */ stfd f15, -0x88(r11)
/* 80362110 0035F050 DA 0B FF 80 */ stfd f16, -0x80(r11)
/* 80362114 0035F054 DA 2B FF 88 */ stfd f17, -0x78(r11)
/* 80362118 0035F058 DA 4B FF 90 */ stfd f18, -0x70(r11)
/* 8036211C 0035F05C DA 6B FF 98 */ stfd f19, -0x68(r11)
/* 80362120 0035F060 DA 8B FF A0 */ stfd f20, -0x60(r11)
/* 80362124 0035F064 DA AB FF A8 */ stfd f21, -0x58(r11)
/* 80362128 0035F068 DA CB FF B0 */ stfd f22, -0x50(r11)
/* 8036212C 0035F06C DA EB FF B8 */ stfd f23, -0x48(r11)
/* 80362130 0035F070 DB 0B FF C0 */ stfd f24, -0x40(r11)
.global _savefpr_25
_savefpr_25:
/* 80362134 0035F074 DB 2B FF C8 */ stfd f25, -0x38(r11)
.global _savefpr_26
_savefpr_26:
/* 80362138 0035F078 DB 4B FF D0 */ stfd f26, -0x30(r11)
.global _savefpr_27
_savefpr_27:
/* 8036213C 0035F07C DB 6B FF D8 */ stfd f27, -0x28(r11)
.global _savefpr_28
_savefpr_28:
/* 80362140 0035F080 DB 8B FF E0 */ stfd f28, -0x20(r11)
.global _savefpr_29
_savefpr_29:
/* 80362144 0035F084 DB AB FF E8 */ stfd f29, -0x18(r11)
/* 80362148 0035F088 DB CB FF F0 */ stfd f30, -0x10(r11)
/* 8036214C 0035F08C DB EB FF F8 */ stfd f31, -8(r11)
/* 80362150 0035F090 4E 80 00 20 */ blr
/* 80362154 0035F094 C9 CB FF 70 */ lfd f14, -0x90(r11)
/* 80362158 0035F098 C9 EB FF 78 */ lfd f15, -0x88(r11)
/* 8036215C 0035F09C CA 0B FF 80 */ lfd f16, -0x80(r11)
/* 80362160 0035F0A0 CA 2B FF 88 */ lfd f17, -0x78(r11)
/* 80362164 0035F0A4 CA 4B FF 90 */ lfd f18, -0x70(r11)
/* 80362168 0035F0A8 CA 6B FF 98 */ lfd f19, -0x68(r11)
/* 8036216C 0035F0AC CA 8B FF A0 */ lfd f20, -0x60(r11)
/* 80362170 0035F0B0 CA AB FF A8 */ lfd f21, -0x58(r11)
/* 80362174 0035F0B4 CA CB FF B0 */ lfd f22, -0x50(r11)
/* 80362178 0035F0B8 CA EB FF B8 */ lfd f23, -0x48(r11)
/* 8036217C 0035F0BC CB 0B FF C0 */ lfd f24, -0x40(r11)
.global _restfpr_25
_restfpr_25:
/* 80362180 0035F0C0 CB 2B FF C8 */ lfd f25, -0x38(r11)
.global _restfpr_26
_restfpr_26:
/* 80362184 0035F0C4 CB 4B FF D0 */ lfd f26, -0x30(r11)
.global _restfpr_27
_restfpr_27:
/* 80362188 0035F0C8 CB 6B FF D8 */ lfd f27, -0x28(r11)
.global _restfpr_28
_restfpr_28:
/* 8036218C 0035F0CC CB 8B FF E0 */ lfd f28, -0x20(r11)
.global _restfpr_29
_restfpr_29:
/* 80362190 0035F0D0 CB AB FF E8 */ lfd f29, -0x18(r11)
/* 80362194 0035F0D4 CB CB FF F0 */ lfd f30, -0x10(r11)
/* 80362198 0035F0D8 CB EB FF F8 */ lfd f31, -8(r11)
/* 8036219C 0035F0DC 4E 80 00 20 */ blr
.global _savegpr_14
_savegpr_14:
/* 803621A0 0035F0E0 91 CB FF B8 */ stw r14, -0x48(r11)
.global _savegpr_15
_savegpr_15:
/* 803621A4 0035F0E4 91 EB FF BC */ stw r15, -0x44(r11)
.global _savegpr_16
_savegpr_16:
/* 803621A8 0035F0E8 92 0B FF C0 */ stw r16, -0x40(r11)
.global _savegpr_17
_savegpr_17:
/* 803621AC 0035F0EC 92 2B FF C4 */ stw r17, -0x3c(r11)
.global _savegpr_18
_savegpr_18:
/* 803621B0 0035F0F0 92 4B FF C8 */ stw r18, -0x38(r11)
.global _savegpr_19
_savegpr_19:
/* 803621B4 0035F0F4 92 6B FF CC */ stw r19, -0x34(r11)
.global _savegpr_20
_savegpr_20:
/* 803621B8 0035F0F8 92 8B FF D0 */ stw r20, -0x30(r11)
.global _savegpr_21
_savegpr_21:
/* 803621BC 0035F0FC 92 AB FF D4 */ stw r21, -0x2c(r11)
.global _savegpr_22
_savegpr_22:
/* 803621C0 0035F100 92 CB FF D8 */ stw r22, -0x28(r11)
.global _savegpr_23
_savegpr_23:
/* 803621C4 0035F104 92 EB FF DC */ stw r23, -0x24(r11)
.global _savegpr_24
_savegpr_24:
/* 803621C8 0035F108 93 0B FF E0 */ stw r24, -0x20(r11)
.global _savegpr_25
_savegpr_25:
/* 803621CC 0035F10C 93 2B FF E4 */ stw r25, -0x1c(r11)
.global _savegpr_26
_savegpr_26:
/* 803621D0 0035F110 93 4B FF E8 */ stw r26, -0x18(r11)
.global _savegpr_27
_savegpr_27:
/* 803621D4 0035F114 93 6B FF EC */ stw r27, -0x14(r11)
.global _savegpr_28
_savegpr_28:
/* 803621D8 0035F118 93 8B FF F0 */ stw r28, -0x10(r11)
.global _savegpr_29
_savegpr_29:
/* 803621DC 0035F11C 93 AB FF F4 */ stw r29, -0xc(r11)
/* 803621E0 0035F120 93 CB FF F8 */ stw r30, -8(r11)
/* 803621E4 0035F124 93 EB FF FC */ stw r31, -4(r11)
/* 803621E8 0035F128 4E 80 00 20 */ blr
.global _restgpr_14
_restgpr_14:
/* 803621EC 0035F12C 81 CB FF B8 */ lwz r14, -0x48(r11)
.global _restgpr_15
_restgpr_15:
/* 803621F0 0035F130 81 EB FF BC */ lwz r15, -0x44(r11)
.global _restgpr_16
_restgpr_16:
/* 803621F4 0035F134 82 0B FF C0 */ lwz r16, -0x40(r11)
.global _restgpr_17
_restgpr_17:
/* 803621F8 0035F138 82 2B FF C4 */ lwz r17, -0x3c(r11)
.global _restgpr_18
_restgpr_18:
/* 803621FC 0035F13C 82 4B FF C8 */ lwz r18, -0x38(r11)
.global _restgpr_19
_restgpr_19:
/* 80362200 0035F140 82 6B FF CC */ lwz r19, -0x34(r11)
.global _restgpr_20
_restgpr_20:
/* 80362204 0035F144 82 8B FF D0 */ lwz r20, -0x30(r11)
.global _restgpr_21
_restgpr_21:
/* 80362208 0035F148 82 AB FF D4 */ lwz r21, -0x2c(r11)
.global _restgpr_22
_restgpr_22:
/* 8036220C 0035F14C 82 CB FF D8 */ lwz r22, -0x28(r11)
.global _restgpr_23
_restgpr_23:
/* 80362210 0035F150 82 EB FF DC */ lwz r23, -0x24(r11)
.global _restgpr_24
_restgpr_24:
/* 80362214 0035F154 83 0B FF E0 */ lwz r24, -0x20(r11)
.global _restgpr_25
_restgpr_25:
/* 80362218 0035F158 83 2B FF E4 */ lwz r25, -0x1c(r11)
.global _restgpr_26
_restgpr_26:
/* 8036221C 0035F15C 83 4B FF E8 */ lwz r26, -0x18(r11)
.global _restgpr_27
_restgpr_27:
/* 80362220 0035F160 83 6B FF EC */ lwz r27, -0x14(r11)
.global _restgpr_28
_restgpr_28:
/* 80362224 0035F164 83 8B FF F0 */ lwz r28, -0x10(r11)
.global _restgpr_29
_restgpr_29:
/* 80362228 0035F168 83 AB FF F4 */ lwz r29, -0xc(r11)
/* 8036222C 0035F16C 83 CB FF F8 */ lwz r30, -8(r11)
/* 80362230 0035F170 83 EB FF FC */ lwz r31, -4(r11)
/* 80362234 0035F174 4E 80 00 20 */ blr
.global func_80362238
func_80362238:
/* 80362238 0035F178 2C 03 00 00 */ cmpwi r3, 0
/* 8036223C 0035F17C 7C 60 00 34 */ cntlzw r0, r3
/* 80362240 0035F180 7C 89 00 34 */ cntlzw r9, r4
/* 80362244 0035F184 40 82 00 08 */ bne lbl_8036224C
/* 80362248 0035F188 38 09 00 20 */ addi r0, r9, 0x20
lbl_8036224C:
/* 8036224C 0035F18C 2C 05 00 00 */ cmpwi r5, 0
/* 80362250 0035F190 7C A9 00 34 */ cntlzw r9, r5
/* 80362254 0035F194 7C CA 00 34 */ cntlzw r10, r6
/* 80362258 0035F198 40 82 00 08 */ bne lbl_80362260
/* 8036225C 0035F19C 39 2A 00 20 */ addi r9, r10, 0x20
lbl_80362260:
/* 80362260 0035F1A0 7C 00 48 00 */ cmpw r0, r9
/* 80362264 0035F1A4 21 40 00 40 */ subfic r10, r0, 0x40
/* 80362268 0035F1A8 41 81 00 B0 */ bgt lbl_80362318
/* 8036226C 0035F1AC 39 29 00 01 */ addi r9, r9, 1
/* 80362270 0035F1B0 21 29 00 40 */ subfic r9, r9, 0x40
/* 80362274 0035F1B4 7C 00 4A 14 */ add r0, r0, r9
/* 80362278 0035F1B8 7D 29 50 50 */ subf r9, r9, r10
/* 8036227C 0035F1BC 7D 29 03 A6 */ mtctr r9
/* 80362280 0035F1C0 2C 09 00 20 */ cmpwi r9, 0x20
/* 80362284 0035F1C4 38 E9 FF E0 */ addi r7, r9, -32
/* 80362288 0035F1C8 41 80 00 10 */ blt lbl_80362298
/* 8036228C 0035F1CC 7C 68 3C 30 */ srw r8, r3, r7
/* 80362290 0035F1D0 38 E0 00 00 */ li r7, 0
/* 80362294 0035F1D4 48 00 00 18 */ b lbl_803622AC
lbl_80362298:
/* 80362298 0035F1D8 7C 88 4C 30 */ srw r8, r4, r9
/* 8036229C 0035F1DC 20 E9 00 20 */ subfic r7, r9, 0x20
/* 803622A0 0035F1E0 7C 67 38 30 */ slw r7, r3, r7
/* 803622A4 0035F1E4 7D 08 3B 78 */ or r8, r8, r7
/* 803622A8 0035F1E8 7C 67 4C 30 */ srw r7, r3, r9
lbl_803622AC:
/* 803622AC 0035F1EC 2C 00 00 20 */ cmpwi r0, 0x20
/* 803622B0 0035F1F0 31 20 FF E0 */ addic r9, r0, -32
/* 803622B4 0035F1F4 41 80 00 10 */ blt lbl_803622C4
/* 803622B8 0035F1F8 7C 83 48 30 */ slw r3, r4, r9
/* 803622BC 0035F1FC 38 80 00 00 */ li r4, 0
/* 803622C0 0035F200 48 00 00 18 */ b lbl_803622D8
lbl_803622C4:
/* 803622C4 0035F204 7C 63 00 30 */ slw r3, r3, r0
/* 803622C8 0035F208 21 20 00 20 */ subfic r9, r0, 0x20
/* 803622CC 0035F20C 7C 89 4C 30 */ srw r9, r4, r9
/* 803622D0 0035F210 7C 63 4B 78 */ or r3, r3, r9
/* 803622D4 0035F214 7C 84 00 30 */ slw r4, r4, r0
lbl_803622D8:
/* 803622D8 0035F218 39 40 FF FF */ li r10, -1
/* 803622DC 0035F21C 30 E7 00 00 */ addic r7, r7, 0
lbl_803622E0:
/* 803622E0 0035F220 7C 84 21 14 */ adde r4, r4, r4
/* 803622E4 0035F224 7C 63 19 14 */ adde r3, r3, r3
/* 803622E8 0035F228 7D 08 41 14 */ adde r8, r8, r8
/* 803622EC 0035F22C 7C E7 39 14 */ adde r7, r7, r7
/* 803622F0 0035F230 7C 06 40 10 */ subfc r0, r6, r8
/* 803622F4 0035F234 7D 25 39 11 */ subfe. r9, r5, r7
/* 803622F8 0035F238 41 80 00 10 */ blt lbl_80362308
/* 803622FC 0035F23C 7C 08 03 78 */ mr r8, r0
/* 80362300 0035F240 7D 27 4B 78 */ mr r7, r9
/* 80362304 0035F244 30 0A 00 01 */ addic r0, r10, 1
lbl_80362308:
/* 80362308 0035F248 42 00 FF D8 */ bdnz lbl_803622E0
/* 8036230C 0035F24C 7C 84 21 14 */ adde r4, r4, r4
/* 80362310 0035F250 7C 63 19 14 */ adde r3, r3, r3
/* 80362314 0035F254 4E 80 00 20 */ blr
lbl_80362318:
/* 80362318 0035F258 38 80 00 00 */ li r4, 0
/* 8036231C 0035F25C 38 60 00 00 */ li r3, 0
/* 80362320 0035F260 4E 80 00 20 */ blr
.global func_80362324
func_80362324:
/* 80362324 0035F264 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362328 0035F268 54 69 00 01 */ rlwinm. r9, r3, 0, 0, 0
/* 8036232C 0035F26C 41 82 00 0C */ beq lbl_80362338
/* 80362330 0035F270 20 84 00 00 */ subfic r4, r4, 0
/* 80362334 0035F274 7C 63 01 90 */ subfze r3, r3
lbl_80362338:
/* 80362338 0035F278 91 21 00 08 */ stw r9, 8(r1)
/* 8036233C 0035F27C 54 AA 00 01 */ rlwinm. r10, r5, 0, 0, 0
/* 80362340 0035F280 41 82 00 0C */ beq lbl_8036234C
/* 80362344 0035F284 20 C6 00 00 */ subfic r6, r6, 0
/* 80362348 0035F288 7C A5 01 90 */ subfze r5, r5
lbl_8036234C:
/* 8036234C 0035F28C 91 41 00 0C */ stw r10, 0xc(r1)
/* 80362350 0035F290 2C 03 00 00 */ cmpwi r3, 0
/* 80362354 0035F294 7C 60 00 34 */ cntlzw r0, r3
/* 80362358 0035F298 7C 89 00 34 */ cntlzw r9, r4
/* 8036235C 0035F29C 40 82 00 08 */ bne lbl_80362364
/* 80362360 0035F2A0 38 09 00 20 */ addi r0, r9, 0x20
lbl_80362364:
/* 80362364 0035F2A4 2C 05 00 00 */ cmpwi r5, 0
/* 80362368 0035F2A8 7C A9 00 34 */ cntlzw r9, r5
/* 8036236C 0035F2AC 7C CA 00 34 */ cntlzw r10, r6
/* 80362370 0035F2B0 40 82 00 08 */ bne lbl_80362378
/* 80362374 0035F2B4 39 2A 00 20 */ addi r9, r10, 0x20
lbl_80362378:
/* 80362378 0035F2B8 7C 00 48 00 */ cmpw r0, r9
/* 8036237C 0035F2BC 21 40 00 40 */ subfic r10, r0, 0x40
/* 80362380 0035F2C0 41 81 00 CC */ bgt lbl_8036244C
/* 80362384 0035F2C4 39 29 00 01 */ addi r9, r9, 1
/* 80362388 0035F2C8 21 29 00 40 */ subfic r9, r9, 0x40
/* 8036238C 0035F2CC 7C 00 4A 14 */ add r0, r0, r9
/* 80362390 0035F2D0 7D 29 50 50 */ subf r9, r9, r10
/* 80362394 0035F2D4 7D 29 03 A6 */ mtctr r9
/* 80362398 0035F2D8 2C 09 00 20 */ cmpwi r9, 0x20
/* 8036239C 0035F2DC 38 E9 FF E0 */ addi r7, r9, -32
/* 803623A0 0035F2E0 41 80 00 10 */ blt lbl_803623B0
/* 803623A4 0035F2E4 7C 68 3C 30 */ srw r8, r3, r7
/* 803623A8 0035F2E8 38 E0 00 00 */ li r7, 0
/* 803623AC 0035F2EC 48 00 00 18 */ b lbl_803623C4
lbl_803623B0:
/* 803623B0 0035F2F0 7C 88 4C 30 */ srw r8, r4, r9
/* 803623B4 0035F2F4 20 E9 00 20 */ subfic r7, r9, 0x20
/* 803623B8 0035F2F8 7C 67 38 30 */ slw r7, r3, r7
/* 803623BC 0035F2FC 7D 08 3B 78 */ or r8, r8, r7
/* 803623C0 0035F300 7C 67 4C 30 */ srw r7, r3, r9
lbl_803623C4:
/* 803623C4 0035F304 2C 00 00 20 */ cmpwi r0, 0x20
/* 803623C8 0035F308 31 20 FF E0 */ addic r9, r0, -32
/* 803623CC 0035F30C 41 80 00 10 */ blt lbl_803623DC
/* 803623D0 0035F310 7C 83 48 30 */ slw r3, r4, r9
/* 803623D4 0035F314 38 80 00 00 */ li r4, 0
/* 803623D8 0035F318 48 00 00 18 */ b lbl_803623F0
lbl_803623DC:
/* 803623DC 0035F31C 7C 63 00 30 */ slw r3, r3, r0
/* 803623E0 0035F320 21 20 00 20 */ subfic r9, r0, 0x20
/* 803623E4 0035F324 7C 89 4C 30 */ srw r9, r4, r9
/* 803623E8 0035F328 7C 63 4B 78 */ or r3, r3, r9
/* 803623EC 0035F32C 7C 84 00 30 */ slw r4, r4, r0
lbl_803623F0:
/* 803623F0 0035F330 39 40 FF FF */ li r10, -1
/* 803623F4 0035F334 30 E7 00 00 */ addic r7, r7, 0
lbl_803623F8:
/* 803623F8 0035F338 7C 84 21 14 */ adde r4, r4, r4
/* 803623FC 0035F33C 7C 63 19 14 */ adde r3, r3, r3
/* 80362400 0035F340 7D 08 41 14 */ adde r8, r8, r8
/* 80362404 0035F344 7C E7 39 14 */ adde r7, r7, r7
/* 80362408 0035F348 7C 06 40 10 */ subfc r0, r6, r8
/* 8036240C 0035F34C 7D 25 39 11 */ subfe. r9, r5, r7
/* 80362410 0035F350 41 80 00 10 */ blt lbl_80362420
/* 80362414 0035F354 7C 08 03 78 */ mr r8, r0
/* 80362418 0035F358 7D 27 4B 78 */ mr r7, r9
/* 8036241C 0035F35C 30 0A 00 01 */ addic r0, r10, 1
lbl_80362420:
/* 80362420 0035F360 42 00 FF D8 */ bdnz lbl_803623F8
/* 80362424 0035F364 7C 84 21 14 */ adde r4, r4, r4
/* 80362428 0035F368 7C 63 19 14 */ adde r3, r3, r3
/* 8036242C 0035F36C 81 21 00 08 */ lwz r9, 8(r1)
/* 80362430 0035F370 81 41 00 0C */ lwz r10, 0xc(r1)
/* 80362434 0035F374 7D 27 52 79 */ xor. r7, r9, r10
/* 80362438 0035F378 41 82 00 1C */ beq lbl_80362454
/* 8036243C 0035F37C 2C 09 00 00 */ cmpwi r9, 0
/* 80362440 0035F380 20 84 00 00 */ subfic r4, r4, 0
/* 80362444 0035F384 7C 63 01 90 */ subfze r3, r3
/* 80362448 0035F388 48 00 00 0C */ b lbl_80362454
lbl_8036244C:
/* 8036244C 0035F38C 38 80 00 00 */ li r4, 0
/* 80362450 0035F390 38 60 00 00 */ li r3, 0
lbl_80362454:
/* 80362454 0035F394 38 21 00 10 */ addi r1, r1, 0x10
/* 80362458 0035F398 4E 80 00 20 */ blr
.global func_8036245C
func_8036245C:
/* 8036245C 0035F39C 2C 03 00 00 */ cmpwi r3, 0
/* 80362460 0035F3A0 7C 60 00 34 */ cntlzw r0, r3
/* 80362464 0035F3A4 7C 89 00 34 */ cntlzw r9, r4
/* 80362468 0035F3A8 40 82 00 08 */ bne lbl_80362470
/* 8036246C 0035F3AC 38 09 00 20 */ addi r0, r9, 0x20
lbl_80362470:
/* 80362470 0035F3B0 2C 05 00 00 */ cmpwi r5, 0
/* 80362474 0035F3B4 7C A9 00 34 */ cntlzw r9, r5
/* 80362478 0035F3B8 7C CA 00 34 */ cntlzw r10, r6
/* 8036247C 0035F3BC 40 82 00 08 */ bne lbl_80362484
/* 80362480 0035F3C0 39 2A 00 20 */ addi r9, r10, 0x20
lbl_80362484:
/* 80362484 0035F3C4 7C 00 48 00 */ cmpw r0, r9
/* 80362488 0035F3C8 21 40 00 40 */ subfic r10, r0, 0x40
/* 8036248C 0035F3CC 4D 81 00 20 */ bgtlr
/* 80362490 0035F3D0 39 29 00 01 */ addi r9, r9, 1
/* 80362494 0035F3D4 21 29 00 40 */ subfic r9, r9, 0x40
/* 80362498 0035F3D8 7C 00 4A 14 */ add r0, r0, r9
/* 8036249C 0035F3DC 7D 29 50 50 */ subf r9, r9, r10
/* 803624A0 0035F3E0 7D 29 03 A6 */ mtctr r9
/* 803624A4 0035F3E4 2C 09 00 20 */ cmpwi r9, 0x20
/* 803624A8 0035F3E8 38 E9 FF E0 */ addi r7, r9, -32
/* 803624AC 0035F3EC 41 80 00 10 */ blt lbl_803624BC
/* 803624B0 0035F3F0 7C 68 3C 30 */ srw r8, r3, r7
/* 803624B4 0035F3F4 38 E0 00 00 */ li r7, 0
/* 803624B8 0035F3F8 48 00 00 18 */ b lbl_803624D0
lbl_803624BC:
/* 803624BC 0035F3FC 7C 88 4C 30 */ srw r8, r4, r9
/* 803624C0 0035F400 20 E9 00 20 */ subfic r7, r9, 0x20
/* 803624C4 0035F404 7C 67 38 30 */ slw r7, r3, r7
/* 803624C8 0035F408 7D 08 3B 78 */ or r8, r8, r7
/* 803624CC 0035F40C 7C 67 4C 30 */ srw r7, r3, r9
lbl_803624D0:
/* 803624D0 0035F410 2C 00 00 20 */ cmpwi r0, 0x20
/* 803624D4 0035F414 31 20 FF E0 */ addic r9, r0, -32
/* 803624D8 0035F418 41 80 00 10 */ blt lbl_803624E8
/* 803624DC 0035F41C 7C 83 48 30 */ slw r3, r4, r9
/* 803624E0 0035F420 38 80 00 00 */ li r4, 0
/* 803624E4 0035F424 48 00 00 18 */ b lbl_803624FC
lbl_803624E8:
/* 803624E8 0035F428 7C 63 00 30 */ slw r3, r3, r0
/* 803624EC 0035F42C 21 20 00 20 */ subfic r9, r0, 0x20
/* 803624F0 0035F430 7C 89 4C 30 */ srw r9, r4, r9
/* 803624F4 0035F434 7C 63 4B 78 */ or r3, r3, r9
/* 803624F8 0035F438 7C 84 00 30 */ slw r4, r4, r0
lbl_803624FC:
/* 803624FC 0035F43C 39 40 FF FF */ li r10, -1
/* 80362500 0035F440 30 E7 00 00 */ addic r7, r7, 0
lbl_80362504:
/* 80362504 0035F444 7C 84 21 14 */ adde r4, r4, r4
/* 80362508 0035F448 7C 63 19 14 */ adde r3, r3, r3
/* 8036250C 0035F44C 7D 08 41 14 */ adde r8, r8, r8
/* 80362510 0035F450 7C E7 39 14 */ adde r7, r7, r7
/* 80362514 0035F454 7C 06 40 10 */ subfc r0, r6, r8
/* 80362518 0035F458 7D 25 39 11 */ subfe. r9, r5, r7
/* 8036251C 0035F45C 41 80 00 10 */ blt lbl_8036252C
/* 80362520 0035F460 7C 08 03 78 */ mr r8, r0
/* 80362524 0035F464 7D 27 4B 78 */ mr r7, r9
/* 80362528 0035F468 30 0A 00 01 */ addic r0, r10, 1
lbl_8036252C:
/* 8036252C 0035F46C 42 00 FF D8 */ bdnz lbl_80362504
/* 80362530 0035F470 7D 04 43 78 */ mr r4, r8
/* 80362534 0035F474 7C E3 3B 78 */ mr r3, r7
/* 80362538 0035F478 4E 80 00 20 */ blr
/* 8036253C 0035F47C 4E 80 00 20 */ blr
.global func_80362540
func_80362540:
/* 80362540 0035F480 2F 83 00 00 */ cmpwi cr7, r3, 0
/* 80362544 0035F484 40 9C 00 0C */ bge cr7, lbl_80362550
/* 80362548 0035F488 20 84 00 00 */ subfic r4, r4, 0
/* 8036254C 0035F48C 7C 63 01 90 */ subfze r3, r3
lbl_80362550:
/* 80362550 0035F490 2C 05 00 00 */ cmpwi r5, 0
/* 80362554 0035F494 40 80 00 0C */ bge lbl_80362560
/* 80362558 0035F498 20 C6 00 00 */ subfic r6, r6, 0
/* 8036255C 0035F49C 7C A5 01 90 */ subfze r5, r5
lbl_80362560:
/* 80362560 0035F4A0 2C 03 00 00 */ cmpwi r3, 0
/* 80362564 0035F4A4 7C 60 00 34 */ cntlzw r0, r3
/* 80362568 0035F4A8 7C 89 00 34 */ cntlzw r9, r4
/* 8036256C 0035F4AC 40 82 00 08 */ bne lbl_80362574
/* 80362570 0035F4B0 38 09 00 20 */ addi r0, r9, 0x20
lbl_80362574:
/* 80362574 0035F4B4 2C 05 00 00 */ cmpwi r5, 0
/* 80362578 0035F4B8 7C A9 00 34 */ cntlzw r9, r5
/* 8036257C 0035F4BC 7C CA 00 34 */ cntlzw r10, r6
/* 80362580 0035F4C0 40 82 00 08 */ bne lbl_80362588
/* 80362584 0035F4C4 39 2A 00 20 */ addi r9, r10, 0x20
lbl_80362588:
/* 80362588 0035F4C8 7C 00 48 00 */ cmpw r0, r9
/* 8036258C 0035F4CC 21 40 00 40 */ subfic r10, r0, 0x40
/* 80362590 0035F4D0 41 81 00 AC */ bgt lbl_8036263C
/* 80362594 0035F4D4 39 29 00 01 */ addi r9, r9, 1
/* 80362598 0035F4D8 21 29 00 40 */ subfic r9, r9, 0x40
/* 8036259C 0035F4DC 7C 00 4A 14 */ add r0, r0, r9
/* 803625A0 0035F4E0 7D 29 50 50 */ subf r9, r9, r10
/* 803625A4 0035F4E4 7D 29 03 A6 */ mtctr r9
/* 803625A8 0035F4E8 2C 09 00 20 */ cmpwi r9, 0x20
/* 803625AC 0035F4EC 38 E9 FF E0 */ addi r7, r9, -32
/* 803625B0 0035F4F0 41 80 00 10 */ blt lbl_803625C0
/* 803625B4 0035F4F4 7C 68 3C 30 */ srw r8, r3, r7
/* 803625B8 0035F4F8 38 E0 00 00 */ li r7, 0
/* 803625BC 0035F4FC 48 00 00 18 */ b lbl_803625D4
lbl_803625C0:
/* 803625C0 0035F500 7C 88 4C 30 */ srw r8, r4, r9
/* 803625C4 0035F504 20 E9 00 20 */ subfic r7, r9, 0x20
/* 803625C8 0035F508 7C 67 38 30 */ slw r7, r3, r7
/* 803625CC 0035F50C 7D 08 3B 78 */ or r8, r8, r7
/* 803625D0 0035F510 7C 67 4C 30 */ srw r7, r3, r9
lbl_803625D4:
/* 803625D4 0035F514 2C 00 00 20 */ cmpwi r0, 0x20
/* 803625D8 0035F518 31 20 FF E0 */ addic r9, r0, -32
/* 803625DC 0035F51C 41 80 00 10 */ blt lbl_803625EC
/* 803625E0 0035F520 7C 83 48 30 */ slw r3, r4, r9
/* 803625E4 0035F524 38 80 00 00 */ li r4, 0
/* 803625E8 0035F528 48 00 00 18 */ b lbl_80362600
lbl_803625EC:
/* 803625EC 0035F52C 7C 63 00 30 */ slw r3, r3, r0
/* 803625F0 0035F530 21 20 00 20 */ subfic r9, r0, 0x20
/* 803625F4 0035F534 7C 89 4C 30 */ srw r9, r4, r9
/* 803625F8 0035F538 7C 63 4B 78 */ or r3, r3, r9
/* 803625FC 0035F53C 7C 84 00 30 */ slw r4, r4, r0
lbl_80362600:
/* 80362600 0035F540 39 40 FF FF */ li r10, -1
/* 80362604 0035F544 30 E7 00 00 */ addic r7, r7, 0
lbl_80362608:
/* 80362608 0035F548 7C 84 21 14 */ adde r4, r4, r4
/* 8036260C 0035F54C 7C 63 19 14 */ adde r3, r3, r3
/* 80362610 0035F550 7D 08 41 14 */ adde r8, r8, r8
/* 80362614 0035F554 7C E7 39 14 */ adde r7, r7, r7
/* 80362618 0035F558 7C 06 40 10 */ subfc r0, r6, r8
/* 8036261C 0035F55C 7D 25 39 11 */ subfe. r9, r5, r7
/* 80362620 0035F560 41 80 00 10 */ blt lbl_80362630
/* 80362624 0035F564 7C 08 03 78 */ mr r8, r0
/* 80362628 0035F568 7D 27 4B 78 */ mr r7, r9
/* 8036262C 0035F56C 30 0A 00 01 */ addic r0, r10, 1
lbl_80362630:
/* 80362630 0035F570 42 00 FF D8 */ bdnz lbl_80362608
/* 80362634 0035F574 7D 04 43 78 */ mr r4, r8
/* 80362638 0035F578 7C E3 3B 78 */ mr r3, r7
lbl_8036263C:
/* 8036263C 0035F57C 4C 9C 00 20 */ bgelr cr7
/* 80362640 0035F580 20 84 00 00 */ subfic r4, r4, 0
/* 80362644 0035F584 7C 63 01 90 */ subfze r3, r3
/* 80362648 0035F588 4E 80 00 20 */ blr
.global func_8036264C
func_8036264C:
/* 8036264C 0035F58C 21 05 00 20 */ subfic r8, r5, 0x20
/* 80362650 0035F590 31 25 FF E0 */ addic r9, r5, -32
/* 80362654 0035F594 7C 63 28 30 */ slw r3, r3, r5
/* 80362658 0035F598 7C 8A 44 30 */ srw r10, r4, r8
/* 8036265C 0035F59C 7C 63 53 78 */ or r3, r3, r10
/* 80362660 0035F5A0 7C 8A 48 30 */ slw r10, r4, r9
/* 80362664 0035F5A4 7C 63 53 78 */ or r3, r3, r10
/* 80362668 0035F5A8 7C 84 28 30 */ slw r4, r4, r5
/* 8036266C 0035F5AC 4E 80 00 20 */ blr
.global func_80362670
func_80362670:
/* 80362670 0035F5B0 21 05 00 20 */ subfic r8, r5, 0x20
/* 80362674 0035F5B4 31 25 FF E0 */ addic r9, r5, -32
/* 80362678 0035F5B8 7C 84 2C 30 */ srw r4, r4, r5
/* 8036267C 0035F5BC 7C 6A 40 30 */ slw r10, r3, r8
/* 80362680 0035F5C0 7C 84 53 78 */ or r4, r4, r10
/* 80362684 0035F5C4 7C 6A 4C 30 */ srw r10, r3, r9
/* 80362688 0035F5C8 7C 84 53 78 */ or r4, r4, r10
/* 8036268C 0035F5CC 7C 63 2C 30 */ srw r3, r3, r5
/* 80362690 0035F5D0 4E 80 00 20 */ blr
.global func_80362694
func_80362694:
/* 80362694 0035F5D4 21 05 00 20 */ subfic r8, r5, 0x20
/* 80362698 0035F5D8 35 25 FF E0 */ addic. r9, r5, -32
/* 8036269C 0035F5DC 7C 84 2C 30 */ srw r4, r4, r5
/* 803626A0 0035F5E0 7C 6A 40 30 */ slw r10, r3, r8
/* 803626A4 0035F5E4 7C 84 53 78 */ or r4, r4, r10
/* 803626A8 0035F5E8 7C 6A 4E 30 */ sraw r10, r3, r9
/* 803626AC 0035F5EC 40 81 00 08 */ ble lbl_803626B4
/* 803626B0 0035F5F0 7C 84 53 78 */ or r4, r4, r10
lbl_803626B4:
/* 803626B4 0035F5F4 7C 63 2E 30 */ sraw r3, r3, r5
/* 803626B8 0035F5F8 4E 80 00 20 */ blr
.global func_803626BC
func_803626BC:
/* 803626BC 0035F5FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803626C0 0035F600 54 65 00 01 */ rlwinm. r5, r3, 0, 0, 0
/* 803626C4 0035F604 41 82 00 0C */ beq lbl_803626D0
/* 803626C8 0035F608 20 84 00 00 */ subfic r4, r4, 0
/* 803626CC 0035F60C 7C 63 01 90 */ subfze r3, r3
lbl_803626D0:
/* 803626D0 0035F610 7C 67 23 79 */ or. r7, r3, r4
/* 803626D4 0035F614 38 C0 00 00 */ li r6, 0
/* 803626D8 0035F618 41 82 00 80 */ beq lbl_80362758
/* 803626DC 0035F61C 7C 67 00 34 */ cntlzw r7, r3
/* 803626E0 0035F620 7C 88 00 34 */ cntlzw r8, r4
/* 803626E4 0035F624 54 E9 D0 08 */ rlwinm r9, r7, 0x1a, 0, 4
/* 803626E8 0035F628 7D 29 FE 70 */ srawi r9, r9, 0x1f
/* 803626EC 0035F62C 7D 29 40 38 */ and r9, r9, r8
/* 803626F0 0035F630 7C E7 4A 14 */ add r7, r7, r9
/* 803626F4 0035F634 21 07 00 20 */ subfic r8, r7, 0x20
/* 803626F8 0035F638 31 27 FF E0 */ addic r9, r7, -32
/* 803626FC 0035F63C 7C 63 38 30 */ slw r3, r3, r7
/* 80362700 0035F640 7C 8A 44 30 */ srw r10, r4, r8
/* 80362704 0035F644 7C 63 53 78 */ or r3, r3, r10
/* 80362708 0035F648 7C 8A 48 30 */ slw r10, r4, r9
/* 8036270C 0035F64C 7C 63 53 78 */ or r3, r3, r10
/* 80362710 0035F650 7C 84 38 30 */ slw r4, r4, r7
/* 80362714 0035F654 7C C7 30 50 */ subf r6, r7, r6
/* 80362718 0035F658 54 87 05 7E */ clrlwi r7, r4, 0x15
/* 8036271C 0035F65C 2C 07 04 00 */ cmpwi r7, 0x400
/* 80362720 0035F660 38 C6 04 3E */ addi r6, r6, 0x43e
/* 80362724 0035F664 41 80 00 1C */ blt lbl_80362740
/* 80362728 0035F668 41 81 00 0C */ bgt lbl_80362734
/* 8036272C 0035F66C 54 87 05 29 */ rlwinm. r7, r4, 0, 0x14, 0x14
/* 80362730 0035F670 41 82 00 10 */ beq lbl_80362740
lbl_80362734:
/* 80362734 0035F674 30 84 08 00 */ addic r4, r4, 0x800
/* 80362738 0035F678 7C 63 01 94 */ addze r3, r3
/* 8036273C 0035F67C 7C C6 01 94 */ addze r6, r6
lbl_80362740:
/* 80362740 0035F680 54 84 A8 3E */ rotlwi r4, r4, 0x15
/* 80362744 0035F684 50 64 A8 14 */ rlwimi r4, r3, 0x15, 0, 0xa
/* 80362748 0035F688 54 63 AB 3E */ rlwinm r3, r3, 0x15, 0xc, 0x1f
/* 8036274C 0035F68C 54 C6 A0 16 */ slwi r6, r6, 0x14
/* 80362750 0035F690 7C C3 1B 78 */ or r3, r6, r3
/* 80362754 0035F694 7C A3 1B 78 */ or r3, r5, r3
lbl_80362758:
/* 80362758 0035F698 90 61 00 08 */ stw r3, 8(r1)
/* 8036275C 0035F69C 90 81 00 0C */ stw r4, 0xc(r1)
/* 80362760 0035F6A0 C8 21 00 08 */ lfd f1, 8(r1)
/* 80362764 0035F6A4 FC 20 08 18 */ frsp f1, f1
/* 80362768 0035F6A8 38 21 00 10 */ addi r1, r1, 0x10
/* 8036276C 0035F6AC 4E 80 00 20 */ blr
.global func_80362770
func_80362770:
/* 80362770 0035F6B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362774 0035F6B4 D8 21 00 08 */ stfd f1, 8(r1)
/* 80362778 0035F6B8 80 61 00 08 */ lwz r3, 8(r1)
/* 8036277C 0035F6BC 80 81 00 0C */ lwz r4, 0xc(r1)
/* 80362780 0035F6C0 54 65 65 7E */ rlwinm r5, r3, 0xc, 0x15, 0x1f
/* 80362784 0035F6C4 28 05 03 FF */ cmplwi r5, 0x3ff
/* 80362788 0035F6C8 40 80 00 10 */ bge lbl_80362798
/* 8036278C 0035F6CC 38 60 00 00 */ li r3, 0
/* 80362790 0035F6D0 38 80 00 00 */ li r4, 0
/* 80362794 0035F6D4 48 00 00 A0 */ b lbl_80362834
lbl_80362798:
/* 80362798 0035F6D8 7C 66 1B 78 */ mr r6, r3
/* 8036279C 0035F6DC 54 63 03 3E */ clrlwi r3, r3, 0xc
/* 803627A0 0035F6E0 64 63 00 10 */ oris r3, r3, 0x10
/* 803627A4 0035F6E4 38 A5 FB CD */ addi r5, r5, -1075
/* 803627A8 0035F6E8 2C 05 00 00 */ cmpwi r5, 0
/* 803627AC 0035F6EC 40 80 00 2C */ bge lbl_803627D8
/* 803627B0 0035F6F0 7C A5 00 D0 */ neg r5, r5
/* 803627B4 0035F6F4 21 05 00 20 */ subfic r8, r5, 0x20
/* 803627B8 0035F6F8 31 25 FF E0 */ addic r9, r5, -32
/* 803627BC 0035F6FC 7C 84 2C 30 */ srw r4, r4, r5
/* 803627C0 0035F700 7C 6A 40 30 */ slw r10, r3, r8
/* 803627C4 0035F704 7C 84 53 78 */ or r4, r4, r10
/* 803627C8 0035F708 7C 6A 4C 30 */ srw r10, r3, r9
/* 803627CC 0035F70C 7C 84 53 78 */ or r4, r4, r10
/* 803627D0 0035F710 7C 63 2C 30 */ srw r3, r3, r5
/* 803627D4 0035F714 48 00 00 50 */ b lbl_80362824
lbl_803627D8:
/* 803627D8 0035F718 2C 05 00 0A */ cmpwi r5, 0xa
/* 803627DC 0035F71C 40 A1 00 28 */ ble+ lbl_80362804
/* 803627E0 0035F720 54 C6 00 01 */ rlwinm. r6, r6, 0, 0, 0
/* 803627E4 0035F724 41 82 00 10 */ beq lbl_803627F4
/* 803627E8 0035F728 3C 60 80 00 */ lis r3, 0x8000
/* 803627EC 0035F72C 38 80 00 00 */ li r4, 0
/* 803627F0 0035F730 48 00 00 44 */ b lbl_80362834
lbl_803627F4:
/* 803627F4 0035F734 3C 60 7F FF */ lis r3, 0x7FFFFFFF@h
/* 803627F8 0035F738 60 63 FF FF */ ori r3, r3, 0x7FFFFFFF@l
/* 803627FC 0035F73C 38 80 FF FF */ li r4, -1
/* 80362800 0035F740 48 00 00 34 */ b lbl_80362834
lbl_80362804:
/* 80362804 0035F744 21 05 00 20 */ subfic r8, r5, 0x20
/* 80362808 0035F748 31 25 FF E0 */ addic r9, r5, -32
/* 8036280C 0035F74C 7C 63 28 30 */ slw r3, r3, r5
/* 80362810 0035F750 7C 8A 44 30 */ srw r10, r4, r8
/* 80362814 0035F754 7C 63 53 78 */ or r3, r3, r10
/* 80362818 0035F758 7C 8A 48 30 */ slw r10, r4, r9
/* 8036281C 0035F75C 7C 63 53 78 */ or r3, r3, r10
/* 80362820 0035F760 7C 84 28 30 */ slw r4, r4, r5
lbl_80362824:
/* 80362824 0035F764 54 C6 00 01 */ rlwinm. r6, r6, 0, 0, 0
/* 80362828 0035F768 41 82 00 0C */ beq lbl_80362834
/* 8036282C 0035F76C 20 84 00 00 */ subfic r4, r4, 0
/* 80362830 0035F770 7C 63 01 90 */ subfze r3, r3
lbl_80362834:
/* 80362834 0035F774 38 21 00 10 */ addi r1, r1, 0x10
/* 80362838 0035F778 4E 80 00 20 */ blr
/* 8036283C 0035F77C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362840 0035F780 7C 08 02 A6 */ mflr r0
/* 80362844 0035F784 90 01 00 14 */ stw r0, 0x14(r1)
/* 80362848 0035F788 80 6D 85 50 */ lwz r3, lbl_80450AD0-_SDA_BASE_(r13)
/* 8036284C 0035F78C 2C 03 FF FE */ cmpwi r3, -2
/* 80362850 0035F790 41 82 00 10 */ beq lbl_80362860
/* 80362854 0035F794 48 00 00 59 */ bl func_803628AC
/* 80362858 0035F798 38 00 FF FE */ li r0, -2
/* 8036285C 0035F79C 90 0D 85 50 */ stw r0, lbl_80450AD0-_SDA_BASE_(r13)
lbl_80362860:
/* 80362860 0035F7A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80362864 0035F7A4 7C 08 03 A6 */ mtlr r0
/* 80362868 0035F7A8 38 21 00 10 */ addi r1, r1, 0x10
/* 8036286C 0035F7AC 4E 80 00 20 */ blr
/* 80362870 0035F7B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362874 0035F7B4 7C 08 02 A6 */ mflr r0
/* 80362878 0035F7B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036287C 0035F7BC 80 0D 85 50 */ lwz r0, lbl_80450AD0-_SDA_BASE_(r13)
/* 80362880 0035F7C0 2C 00 FF FE */ cmpwi r0, -2
/* 80362884 0035F7C4 40 82 00 18 */ bne lbl_8036289C
/* 80362888 0035F7C8 3C 60 80 00 */ lis r3, lbl_8000569C@ha
/* 8036288C 0035F7CC 7C 44 13 78 */ mr r4, r2
/* 80362890 0035F7D0 38 63 56 9C */ addi r3, r3, lbl_8000569C@l
/* 80362894 0035F7D4 48 00 00 4D */ bl func_803628E0
/* 80362898 0035F7D8 90 6D 85 50 */ stw r3, lbl_80450AD0-_SDA_BASE_(r13)
lbl_8036289C:
/* 8036289C 0035F7DC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803628A0 0035F7E0 7C 08 03 A6 */ mtlr r0
/* 803628A4 0035F7E4 38 21 00 10 */ addi r1, r1, 0x10
/* 803628A8 0035F7E8 4E 80 00 20 */ blr
.global func_803628AC
func_803628AC:
/* 803628AC 0035F7EC 2C 03 00 00 */ cmpwi r3, 0
/* 803628B0 0035F7F0 4D 80 00 20 */ bltlr
/* 803628B4 0035F7F4 2C 03 00 01 */ cmpwi r3, 1
/* 803628B8 0035F7F8 4C 80 00 20 */ bgelr
/* 803628BC 0035F7FC 1C 83 00 0C */ mulli r4, r3, 0xc
/* 803628C0 0035F800 3C 60 80 45 */ lis r3, lbl_8044D430@ha
/* 803628C4 0035F804 38 00 00 00 */ li r0, 0
/* 803628C8 0035F808 38 63 D4 30 */ addi r3, r3, lbl_8044D430@l
/* 803628CC 0035F80C 7C 63 22 14 */ add r3, r3, r4
/* 803628D0 0035F810 90 03 00 00 */ stw r0, 0(r3)
/* 803628D4 0035F814 90 03 00 04 */ stw r0, 4(r3)
/* 803628D8 0035F818 90 03 00 08 */ stw r0, 8(r3)
/* 803628DC 0035F81C 4E 80 00 20 */ blr
.global func_803628E0
func_803628E0:
/* 803628E0 0035F820 3C A0 80 45 */ lis r5, lbl_8044D430@ha
/* 803628E4 0035F824 38 A5 D4 30 */ addi r5, r5, lbl_8044D430@l
/* 803628E8 0035F828 80 05 00 08 */ lwz r0, 8(r5)
/* 803628EC 0035F82C 2C 00 00 00 */ cmpwi r0, 0
/* 803628F0 0035F830 40 82 00 1C */ bne lbl_8036290C
/* 803628F4 0035F834 90 65 00 00 */ stw r3, 0(r5)
/* 803628F8 0035F838 38 00 00 01 */ li r0, 1
/* 803628FC 0035F83C 38 60 00 00 */ li r3, 0
/* 80362900 0035F840 90 85 00 04 */ stw r4, 4(r5)
/* 80362904 0035F844 90 05 00 08 */ stw r0, 8(r5)
/* 80362908 0035F848 4E 80 00 20 */ blr
lbl_8036290C:
/* 8036290C 0035F84C 38 60 FF FF */ li r3, -1
/* 80362910 0035F850 4E 80 00 20 */ blr
.global func_80362914
func_80362914:
/* 80362914 0035F854 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80362918 0035F858 7C 08 02 A6 */ mflr r0
/* 8036291C 0035F85C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80362920 0035F860 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80362924 0035F864 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80362928 0035F868 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036292C 0035F86C 7C 7D 1B 78 */ mr r29, r3
/* 80362930 0035F870 80 0D 84 10 */ lwz r0, lbl_80450990-_SDA_BASE_(r13)
/* 80362934 0035F874 2C 00 FF FF */ cmpwi r0, -1
/* 80362938 0035F878 40 82 00 6C */ bne lbl_803629A4
/* 8036293C 0035F87C 3C 60 80 3A */ lis r3, lbl_803A21A8@ha
/* 80362940 0035F880 38 63 21 A8 */ addi r3, r3, lbl_803A21A8@l
/* 80362944 0035F884 4C C6 31 82 */ crclr 6
/* 80362948 0035F888 4B CA 41 75 */ bl OSReport
/* 8036294C 0035F88C 3C 60 80 3A */ lis r3, lbl_803A21E0@ha
/* 80362950 0035F890 38 63 21 E0 */ addi r3, r3, lbl_803A21E0@l
/* 80362954 0035F894 4C C6 31 82 */ crclr 6
/* 80362958 0035F898 4B CA 41 65 */ bl OSReport
/* 8036295C 0035F89C 4B FD 89 39 */ bl OSGetArenaLo
/* 80362960 0035F8A0 7C 7F 1B 78 */ mr r31, r3
/* 80362964 0035F8A4 4B FD 89 29 */ bl OSGetArenaHi
/* 80362968 0035F8A8 7C 7E 1B 78 */ mr r30, r3
/* 8036296C 0035F8AC 7F E3 FB 78 */ mr r3, r31
/* 80362970 0035F8B0 38 A0 00 01 */ li r5, 1
/* 80362974 0035F8B4 7F C4 F3 78 */ mr r4, r30
/* 80362978 0035F8B8 4B FD 88 39 */ bl OSInitAlloc
/* 8036297C 0035F8BC 7C 7F 1B 78 */ mr r31, r3
/* 80362980 0035F8C0 4B FD 89 25 */ bl OSSetArenaLo
/* 80362984 0035F8C4 38 1F 00 1F */ addi r0, r31, 0x1f
/* 80362988 0035F8C8 57 DE 00 34 */ rlwinm r30, r30, 0, 0, 0x1a
/* 8036298C 0035F8CC 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a
/* 80362990 0035F8D0 7F C4 F3 78 */ mr r4, r30
/* 80362994 0035F8D4 4B FD 88 8D */ bl OSCreateHeap
/* 80362998 0035F8D8 4B FD 88 09 */ bl OSSetCurrentHeap
/* 8036299C 0035F8DC 7F C3 F3 78 */ mr r3, r30
/* 803629A0 0035F8E0 4B FD 89 05 */ bl OSSetArenaLo
lbl_803629A4:
/* 803629A4 0035F8E4 80 6D 84 10 */ lwz r3, lbl_80450990-_SDA_BASE_(r13)
/* 803629A8 0035F8E8 7F A4 EB 78 */ mr r4, r29
/* 803629AC 0035F8EC 4B FD 87 79 */ bl OSFreeToHeap
/* 803629B0 0035F8F0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803629B4 0035F8F4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803629B8 0035F8F8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803629BC 0035F8FC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803629C0 0035F900 7C 08 03 A6 */ mtlr r0
/* 803629C4 0035F904 38 21 00 20 */ addi r1, r1, 0x20
/* 803629C8 0035F908 4E 80 00 20 */ blr
.global func_803629CC
func_803629CC:
/* 803629CC 0035F90C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803629D0 0035F910 7C 08 02 A6 */ mflr r0
/* 803629D4 0035F914 90 01 00 14 */ stw r0, 0x14(r1)
/* 803629D8 0035F918 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803629DC 0035F91C 80 0D 94 10 */ lwz r0, lbl_80451990-_SDA_BASE_(r13)
/* 803629E0 0035F920 2C 00 00 00 */ cmpwi r0, 0
/* 803629E4 0035F924 40 82 00 5C */ bne lbl_80362A40
/* 803629E8 0035F928 38 60 00 00 */ li r3, 0
/* 803629EC 0035F92C 48 00 2A 7D */ bl func_80365468
/* 803629F0 0035F930 38 60 00 00 */ li r3, 0
/* 803629F4 0035F934 48 00 2A 71 */ bl func_80365464
/* 803629F8 0035F938 4B FF F1 E5 */ bl func_80361BDC
/* 803629FC 0035F93C 3C 60 80 37 */ lis r3, lbl_80373980@ha
/* 80362A00 0035F940 38 03 39 80 */ addi r0, r3, lbl_80373980@l
/* 80362A04 0035F944 7C 1F 03 78 */ mr r31, r0
/* 80362A08 0035F948 48 00 00 10 */ b lbl_80362A18
lbl_80362A0C:
/* 80362A0C 0035F94C 7D 89 03 A6 */ mtctr r12
/* 80362A10 0035F950 4E 80 04 21 */ bctrl
/* 80362A14 0035F954 3B FF 00 04 */ addi r31, r31, 4
lbl_80362A18:
/* 80362A18 0035F958 81 9F 00 00 */ lwz r12, 0(r31)
/* 80362A1C 0035F95C 28 0C 00 00 */ cmplwi r12, 0
/* 80362A20 0035F960 40 82 FF EC */ bne lbl_80362A0C
/* 80362A24 0035F964 81 8D 94 18 */ lwz r12, lbl_80451998-_SDA_BASE_(r13)
/* 80362A28 0035F968 28 0C 00 00 */ cmplwi r12, 0
/* 80362A2C 0035F96C 41 82 00 14 */ beq lbl_80362A40
/* 80362A30 0035F970 7D 89 03 A6 */ mtctr r12
/* 80362A34 0035F974 4E 80 04 21 */ bctrl
/* 80362A38 0035F978 38 00 00 00 */ li r0, 0
/* 80362A3C 0035F97C 90 0D 94 18 */ stw r0, lbl_80451998-_SDA_BASE_(r13)
lbl_80362A40:
/* 80362A40 0035F980 38 60 00 00 */ li r3, 0
/* 80362A44 0035F984 48 00 2A 25 */ bl func_80365468
/* 80362A48 0035F988 3C 60 80 45 */ lis r3, lbl_8044D440@ha
/* 80362A4C 0035F98C 3B E3 D4 40 */ addi r31, r3, lbl_8044D440@l
/* 80362A50 0035F990 48 00 00 20 */ b lbl_80362A70
lbl_80362A54:
/* 80362A54 0035F994 80 6D 94 14 */ lwz r3, lbl_80451994-_SDA_BASE_(r13)
/* 80362A58 0035F998 38 63 FF FF */ addi r3, r3, -1
/* 80362A5C 0035F99C 54 60 10 3A */ slwi r0, r3, 2
/* 80362A60 0035F9A0 90 6D 94 14 */ stw r3, lbl_80451994-_SDA_BASE_(r13)
/* 80362A64 0035F9A4 7D 9F 00 2E */ lwzx r12, r31, r0
/* 80362A68 0035F9A8 7D 89 03 A6 */ mtctr r12
/* 80362A6C 0035F9AC 4E 80 04 21 */ bctrl
lbl_80362A70:
/* 80362A70 0035F9B0 80 0D 94 14 */ lwz r0, lbl_80451994-_SDA_BASE_(r13)
/* 80362A74 0035F9B4 2C 00 00 00 */ cmpwi r0, 0
/* 80362A78 0035F9B8 41 81 FF DC */ bgt lbl_80362A54
/* 80362A7C 0035F9BC 38 60 00 00 */ li r3, 0
/* 80362A80 0035F9C0 48 00 29 E5 */ bl func_80365464
/* 80362A84 0035F9C4 48 00 29 E9 */ bl func_8036546C
/* 80362A88 0035F9C8 81 8D 94 1C */ lwz r12, lbl_8045199C-_SDA_BASE_(r13)
/* 80362A8C 0035F9CC 28 0C 00 00 */ cmplwi r12, 0
/* 80362A90 0035F9D0 41 82 00 14 */ beq lbl_80362AA4
/* 80362A94 0035F9D4 7D 89 03 A6 */ mtctr r12
/* 80362A98 0035F9D8 4E 80 04 21 */ bctrl
/* 80362A9C 0035F9DC 38 00 00 00 */ li r0, 0
/* 80362AA0 0035F9E0 90 0D 94 1C */ stw r0, lbl_8045199C-_SDA_BASE_(r13)
lbl_80362AA4:
/* 80362AA4 0035F9E4 4B FE 01 49 */ bl _ExitProcess
/* 80362AA8 0035F9E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80362AAC 0035F9EC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80362AB0 0035F9F0 7C 08 03 A6 */ mtlr r0
/* 80362AB4 0035F9F4 38 21 00 10 */ addi r1, r1, 0x10
/* 80362AB8 0035F9F8 4E 80 00 20 */ blr
.global func_80362ABC
func_80362ABC:
/* 80362ABC 0035F9FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362AC0 0035FA00 7C 08 02 A6 */ mflr r0
/* 80362AC4 0035FA04 38 60 00 01 */ li r3, 1
/* 80362AC8 0035FA08 90 01 00 14 */ stw r0, 0x14(r1)
/* 80362ACC 0035FA0C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80362AD0 0035FA10 48 00 5D 4D */ bl func_8036881C
/* 80362AD4 0035FA14 38 00 00 01 */ li r0, 1
/* 80362AD8 0035FA18 38 60 00 00 */ li r3, 0
/* 80362ADC 0035FA1C 90 0D 94 10 */ stw r0, lbl_80451990-_SDA_BASE_(r13)
/* 80362AE0 0035FA20 48 00 29 89 */ bl func_80365468
/* 80362AE4 0035FA24 3C 60 80 45 */ lis r3, lbl_8044D440@ha
/* 80362AE8 0035FA28 3B E3 D4 40 */ addi r31, r3, lbl_8044D440@l
/* 80362AEC 0035FA2C 48 00 00 20 */ b lbl_80362B0C
lbl_80362AF0:
/* 80362AF0 0035FA30 80 6D 94 14 */ lwz r3, lbl_80451994-_SDA_BASE_(r13)
/* 80362AF4 0035FA34 38 63 FF FF */ addi r3, r3, -1
/* 80362AF8 0035FA38 54 60 10 3A */ slwi r0, r3, 2
/* 80362AFC 0035FA3C 90 6D 94 14 */ stw r3, lbl_80451994-_SDA_BASE_(r13)
/* 80362B00 0035FA40 7D 9F 00 2E */ lwzx r12, r31, r0
/* 80362B04 0035FA44 7D 89 03 A6 */ mtctr r12
/* 80362B08 0035FA48 4E 80 04 21 */ bctrl
lbl_80362B0C:
/* 80362B0C 0035FA4C 80 0D 94 14 */ lwz r0, lbl_80451994-_SDA_BASE_(r13)
/* 80362B10 0035FA50 2C 00 00 00 */ cmpwi r0, 0
/* 80362B14 0035FA54 41 81 FF DC */ bgt lbl_80362AF0
/* 80362B18 0035FA58 38 60 00 00 */ li r3, 0
/* 80362B1C 0035FA5C 48 00 29 49 */ bl func_80365464
/* 80362B20 0035FA60 48 00 29 4D */ bl func_8036546C
/* 80362B24 0035FA64 81 8D 94 1C */ lwz r12, lbl_8045199C-_SDA_BASE_(r13)
/* 80362B28 0035FA68 28 0C 00 00 */ cmplwi r12, 0
/* 80362B2C 0035FA6C 41 82 00 14 */ beq lbl_80362B40
/* 80362B30 0035FA70 7D 89 03 A6 */ mtctr r12
/* 80362B34 0035FA74 4E 80 04 21 */ bctrl
/* 80362B38 0035FA78 38 00 00 00 */ li r0, 0
/* 80362B3C 0035FA7C 90 0D 94 1C */ stw r0, lbl_8045199C-_SDA_BASE_(r13)
lbl_80362B40:
/* 80362B40 0035FA80 4B FE 00 AD */ bl _ExitProcess
/* 80362B44 0035FA84 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80362B48 0035FA88 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80362B4C 0035FA8C 7C 08 03 A6 */ mtlr r0
/* 80362B50 0035FA90 38 21 00 10 */ addi r1, r1, 0x10
/* 80362B54 0035FA94 4E 80 00 20 */ blr
.global func_80362B58
func_80362B58:
/* 80362B58 0035FA98 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362B5C 0035FA9C 7C 08 02 A6 */ mflr r0
/* 80362B60 0035FAA0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80362B64 0035FAA4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80362B68 0035FAA8 7C 7F 1B 78 */ mr r31, r3
/* 80362B6C 0035FAAC 38 60 00 01 */ li r3, 1
/* 80362B70 0035FAB0 48 00 28 F9 */ bl func_80365468
/* 80362B74 0035FAB4 88 0D 94 20 */ lbz r0, lbl_804519A0-_SDA_BASE_(r13)
/* 80362B78 0035FAB8 28 00 00 00 */ cmplwi r0, 0
/* 80362B7C 0035FABC 40 82 00 20 */ bne lbl_80362B9C
/* 80362B80 0035FAC0 3C 60 80 45 */ lis r3, lbl_8044D540@ha
/* 80362B84 0035FAC4 38 80 00 00 */ li r4, 0
/* 80362B88 0035FAC8 38 63 D5 40 */ addi r3, r3, lbl_8044D540@l
/* 80362B8C 0035FACC 38 A0 00 34 */ li r5, 0x34
/* 80362B90 0035FAD0 4B CA 08 C9 */ bl func_80003458
/* 80362B94 0035FAD4 38 00 00 01 */ li r0, 1
/* 80362B98 0035FAD8 98 0D 94 20 */ stb r0, lbl_804519A0-_SDA_BASE_(r13)
lbl_80362B9C:
/* 80362B9C 0035FADC 3C 60 80 45 */ lis r3, lbl_8044D540@ha
/* 80362BA0 0035FAE0 7F E4 FB 78 */ mr r4, r31
/* 80362BA4 0035FAE4 38 63 D5 40 */ addi r3, r3, lbl_8044D540@l
/* 80362BA8 0035FAE8 48 00 00 21 */ bl func_80362BC8
/* 80362BAC 0035FAEC 38 60 00 01 */ li r3, 1
/* 80362BB0 0035FAF0 48 00 28 B5 */ bl func_80365464
/* 80362BB4 0035FAF4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80362BB8 0035FAF8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80362BBC 0035FAFC 7C 08 03 A6 */ mtlr r0
/* 80362BC0 0035FB00 38 21 00 10 */ addi r1, r1, 0x10
/* 80362BC4 0035FB04 4E 80 00 20 */ blr
.global func_80362BC8
func_80362BC8:
/* 80362BC8 0035FB08 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362BCC 0035FB0C 7C 08 02 A6 */ mflr r0
/* 80362BD0 0035FB10 28 04 00 00 */ cmplwi r4, 0
/* 80362BD4 0035FB14 90 01 00 14 */ stw r0, 0x14(r1)
/* 80362BD8 0035FB18 41 82 00 38 */ beq lbl_80362C10
/* 80362BDC 0035FB1C 80 A4 FF FC */ lwz r5, -4(r4)
/* 80362BE0 0035FB20 54 A0 07 FF */ clrlwi. r0, r5, 0x1f
/* 80362BE4 0035FB24 40 82 00 0C */ bne lbl_80362BF0
/* 80362BE8 0035FB28 80 A5 00 08 */ lwz r5, 8(r5)
/* 80362BEC 0035FB2C 48 00 00 10 */ b lbl_80362BFC
lbl_80362BF0:
/* 80362BF0 0035FB30 80 04 FF F8 */ lwz r0, -8(r4)
/* 80362BF4 0035FB34 54 05 00 38 */ rlwinm r5, r0, 0, 0, 0x1c
/* 80362BF8 0035FB38 38 A5 FF F8 */ addi r5, r5, -8
lbl_80362BFC:
/* 80362BFC 0035FB3C 28 05 00 44 */ cmplwi r5, 0x44
/* 80362C00 0035FB40 41 81 00 0C */ bgt lbl_80362C0C
/* 80362C04 0035FB44 48 00 00 1D */ bl func_80362C20
/* 80362C08 0035FB48 48 00 00 08 */ b lbl_80362C10
lbl_80362C0C:
/* 80362C0C 0035FB4C 48 00 01 6D */ bl func_80362D78
lbl_80362C10:
/* 80362C10 0035FB50 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80362C14 0035FB54 7C 08 03 A6 */ mtlr r0
/* 80362C18 0035FB58 38 21 00 10 */ addi r1, r1, 0x10
/* 80362C1C 0035FB5C 4E 80 00 20 */ blr
.global func_80362C20
func_80362C20:
/* 80362C20 0035FB60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362C24 0035FB64 7C 08 02 A6 */ mflr r0
/* 80362C28 0035FB68 3C C0 80 3A */ lis r6, lbl_803A2220@ha
/* 80362C2C 0035FB6C 38 E0 00 00 */ li r7, 0
/* 80362C30 0035FB70 90 01 00 14 */ stw r0, 0x14(r1)
/* 80362C34 0035FB74 38 C6 22 20 */ addi r6, r6, lbl_803A2220@l
/* 80362C38 0035FB78 48 00 00 0C */ b lbl_80362C44
lbl_80362C3C:
/* 80362C3C 0035FB7C 38 C6 00 04 */ addi r6, r6, 4
/* 80362C40 0035FB80 38 E7 00 01 */ addi r7, r7, 1
lbl_80362C44:
/* 80362C44 0035FB84 80 06 00 00 */ lwz r0, 0(r6)
/* 80362C48 0035FB88 7C 05 00 40 */ cmplw r5, r0
/* 80362C4C 0035FB8C 41 81 FF F0 */ bgt lbl_80362C3C
/* 80362C50 0035FB90 39 04 FF FC */ addi r8, r4, -4
/* 80362C54 0035FB94 54 E5 18 38 */ slwi r5, r7, 3
/* 80362C58 0035FB98 80 84 FF FC */ lwz r4, -4(r4)
/* 80362C5C 0035FB9C 38 A5 00 04 */ addi r5, r5, 4
/* 80362C60 0035FBA0 7C A3 2A 14 */ add r5, r3, r5
/* 80362C64 0035FBA4 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80362C68 0035FBA8 28 00 00 00 */ cmplwi r0, 0
/* 80362C6C 0035FBAC 40 82 00 74 */ bne lbl_80362CE0
/* 80362C70 0035FBB0 80 C5 00 04 */ lwz r6, 4(r5)
/* 80362C74 0035FBB4 7C 06 20 40 */ cmplw r6, r4
/* 80362C78 0035FBB8 41 82 00 68 */ beq lbl_80362CE0
/* 80362C7C 0035FBBC 80 05 00 00 */ lwz r0, 0(r5)
/* 80362C80 0035FBC0 7C 00 20 40 */ cmplw r0, r4
/* 80362C84 0035FBC4 40 82 00 1C */ bne lbl_80362CA0
/* 80362C88 0035FBC8 80 06 00 00 */ lwz r0, 0(r6)
/* 80362C8C 0035FBCC 90 05 00 04 */ stw r0, 4(r5)
/* 80362C90 0035FBD0 80 C5 00 00 */ lwz r6, 0(r5)
/* 80362C94 0035FBD4 80 06 00 00 */ lwz r0, 0(r6)
/* 80362C98 0035FBD8 90 05 00 00 */ stw r0, 0(r5)
/* 80362C9C 0035FBDC 48 00 00 44 */ b lbl_80362CE0
lbl_80362CA0:
/* 80362CA0 0035FBE0 80 04 00 04 */ lwz r0, 4(r4)
/* 80362CA4 0035FBE4 80 C4 00 00 */ lwz r6, 0(r4)
/* 80362CA8 0035FBE8 90 06 00 04 */ stw r0, 4(r6)
/* 80362CAC 0035FBEC 80 04 00 00 */ lwz r0, 0(r4)
/* 80362CB0 0035FBF0 80 C4 00 04 */ lwz r6, 4(r4)
/* 80362CB4 0035FBF4 90 06 00 00 */ stw r0, 0(r6)
/* 80362CB8 0035FBF8 80 05 00 04 */ lwz r0, 4(r5)
/* 80362CBC 0035FBFC 90 04 00 04 */ stw r0, 4(r4)
/* 80362CC0 0035FC00 80 C4 00 04 */ lwz r6, 4(r4)
/* 80362CC4 0035FC04 80 06 00 00 */ lwz r0, 0(r6)
/* 80362CC8 0035FC08 90 04 00 00 */ stw r0, 0(r4)
/* 80362CCC 0035FC0C 80 C4 00 00 */ lwz r6, 0(r4)
/* 80362CD0 0035FC10 90 86 00 04 */ stw r4, 4(r6)
/* 80362CD4 0035FC14 80 C4 00 04 */ lwz r6, 4(r4)
/* 80362CD8 0035FC18 90 86 00 00 */ stw r4, 0(r6)
/* 80362CDC 0035FC1C 90 85 00 04 */ stw r4, 4(r5)
lbl_80362CE0:
/* 80362CE0 0035FC20 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80362CE4 0035FC24 90 08 00 04 */ stw r0, 4(r8)
/* 80362CE8 0035FC28 91 04 00 0C */ stw r8, 0xc(r4)
/* 80362CEC 0035FC2C 80 C4 00 10 */ lwz r6, 0x10(r4)
/* 80362CF0 0035FC30 34 06 FF FF */ addic. r0, r6, -1
/* 80362CF4 0035FC34 90 04 00 10 */ stw r0, 0x10(r4)
/* 80362CF8 0035FC38 40 82 00 70 */ bne lbl_80362D68
/* 80362CFC 0035FC3C 80 05 00 04 */ lwz r0, 4(r5)
/* 80362D00 0035FC40 7C 00 20 40 */ cmplw r0, r4
/* 80362D04 0035FC44 40 82 00 0C */ bne lbl_80362D10
/* 80362D08 0035FC48 80 04 00 04 */ lwz r0, 4(r4)
/* 80362D0C 0035FC4C 90 05 00 04 */ stw r0, 4(r5)
lbl_80362D10:
/* 80362D10 0035FC50 80 05 00 00 */ lwz r0, 0(r5)
/* 80362D14 0035FC54 7C 00 20 40 */ cmplw r0, r4
/* 80362D18 0035FC58 40 82 00 0C */ bne lbl_80362D24
/* 80362D1C 0035FC5C 80 04 00 00 */ lwz r0, 0(r4)
/* 80362D20 0035FC60 90 05 00 00 */ stw r0, 0(r5)
lbl_80362D24:
/* 80362D24 0035FC64 80 04 00 04 */ lwz r0, 4(r4)
/* 80362D28 0035FC68 80 C4 00 00 */ lwz r6, 0(r4)
/* 80362D2C 0035FC6C 90 06 00 04 */ stw r0, 4(r6)
/* 80362D30 0035FC70 80 04 00 00 */ lwz r0, 0(r4)
/* 80362D34 0035FC74 80 C4 00 04 */ lwz r6, 4(r4)
/* 80362D38 0035FC78 90 06 00 00 */ stw r0, 0(r6)
/* 80362D3C 0035FC7C 80 05 00 04 */ lwz r0, 4(r5)
/* 80362D40 0035FC80 7C 00 20 40 */ cmplw r0, r4
/* 80362D44 0035FC84 40 82 00 0C */ bne lbl_80362D50
/* 80362D48 0035FC88 38 00 00 00 */ li r0, 0
/* 80362D4C 0035FC8C 90 05 00 04 */ stw r0, 4(r5)
lbl_80362D50:
/* 80362D50 0035FC90 80 05 00 00 */ lwz r0, 0(r5)
/* 80362D54 0035FC94 7C 00 20 40 */ cmplw r0, r4
/* 80362D58 0035FC98 40 82 00 0C */ bne lbl_80362D64
/* 80362D5C 0035FC9C 38 00 00 00 */ li r0, 0
/* 80362D60 0035FCA0 90 05 00 00 */ stw r0, 0(r5)
lbl_80362D64:
/* 80362D64 0035FCA4 48 00 00 15 */ bl func_80362D78
lbl_80362D68:
/* 80362D68 0035FCA8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80362D6C 0035FCAC 7C 08 03 A6 */ mtlr r0
/* 80362D70 0035FCB0 38 21 00 10 */ addi r1, r1, 0x10
/* 80362D74 0035FCB4 4E 80 00 20 */ blr
.global func_80362D78
func_80362D78:
/* 80362D78 0035FCB8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80362D7C 0035FCBC 7C 08 02 A6 */ mflr r0
/* 80362D80 0035FCC0 39 04 FF F8 */ addi r8, r4, -8
/* 80362D84 0035FCC4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80362D88 0035FCC8 80 84 FF F8 */ lwz r4, -8(r4)
/* 80362D8C 0035FCCC 80 A8 00 04 */ lwz r5, 4(r8)
/* 80362D90 0035FCD0 54 80 07 FA */ rlwinm r0, r4, 0, 0x1f, 0x1d
/* 80362D94 0035FCD4 54 86 00 38 */ rlwinm r6, r4, 0, 0, 0x1c
/* 80362D98 0035FCD8 90 08 00 00 */ stw r0, 0(r8)
/* 80362D9C 0035FCDC 7C E8 32 14 */ add r7, r8, r6
/* 80362DA0 0035FCE0 54 A4 00 3C */ rlwinm r4, r5, 0, 0, 0x1e
/* 80362DA4 0035FCE4 80 07 00 00 */ lwz r0, 0(r7)
/* 80362DA8 0035FCE8 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80362DAC 0035FCEC 90 07 00 00 */ stw r0, 0(r7)
/* 80362DB0 0035FCF0 90 C7 FF FC */ stw r6, -4(r7)
/* 80362DB4 0035FCF4 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80362DB8 0035FCF8 54 05 00 38 */ rlwinm r5, r0, 0, 0, 0x1c
/* 80362DBC 0035FCFC 38 05 FF FC */ addi r0, r5, -4
/* 80362DC0 0035FD00 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362DC4 0035FD04 28 05 00 00 */ cmplwi r5, 0
/* 80362DC8 0035FD08 41 82 01 8C */ beq lbl_80362F54
/* 80362DCC 0035FD0C 80 A5 00 08 */ lwz r5, 8(r5)
/* 80362DD0 0035FD10 90 A8 00 08 */ stw r5, 8(r8)
/* 80362DD4 0035FD14 80 A8 00 08 */ lwz r5, 8(r8)
/* 80362DD8 0035FD18 91 05 00 0C */ stw r8, 0xc(r5)
/* 80362DDC 0035FD1C 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362DE0 0035FD20 90 A8 00 0C */ stw r5, 0xc(r8)
/* 80362DE4 0035FD24 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362DE8 0035FD28 91 05 00 08 */ stw r8, 8(r5)
/* 80362DEC 0035FD2C 7D 04 01 2E */ stwx r8, r4, r0
/* 80362DF0 0035FD30 7D 24 00 2E */ lwzx r9, r4, r0
/* 80362DF4 0035FD34 80 A9 00 00 */ lwz r5, 0(r9)
/* 80362DF8 0035FD38 54 A5 07 7B */ rlwinm. r5, r5, 0, 0x1d, 0x1d
/* 80362DFC 0035FD3C 40 82 00 94 */ bne lbl_80362E90
/* 80362E00 0035FD40 81 09 FF FC */ lwz r8, -4(r9)
/* 80362E04 0035FD44 55 05 07 BD */ rlwinm. r5, r8, 0, 0x1e, 0x1e
/* 80362E08 0035FD48 41 82 00 0C */ beq lbl_80362E14
/* 80362E0C 0035FD4C 7D 27 4B 78 */ mr r7, r9
/* 80362E10 0035FD50 48 00 00 84 */ b lbl_80362E94
lbl_80362E14:
/* 80362E14 0035FD54 7C E8 48 50 */ subf r7, r8, r9
/* 80362E18 0035FD58 80 A7 00 00 */ lwz r5, 0(r7)
/* 80362E1C 0035FD5C 54 A5 07 7E */ clrlwi r5, r5, 0x1d
/* 80362E20 0035FD60 90 A7 00 00 */ stw r5, 0(r7)
/* 80362E24 0035FD64 80 A9 00 00 */ lwz r5, 0(r9)
/* 80362E28 0035FD68 80 C7 00 00 */ lwz r6, 0(r7)
/* 80362E2C 0035FD6C 54 A5 00 38 */ rlwinm r5, r5, 0, 0, 0x1c
/* 80362E30 0035FD70 7C A8 2A 14 */ add r5, r8, r5
/* 80362E34 0035FD74 54 A5 00 38 */ rlwinm r5, r5, 0, 0, 0x1c
/* 80362E38 0035FD78 7C C5 2B 78 */ or r5, r6, r5
/* 80362E3C 0035FD7C 90 A7 00 00 */ stw r5, 0(r7)
/* 80362E40 0035FD80 80 A7 00 00 */ lwz r5, 0(r7)
/* 80362E44 0035FD84 54 A5 07 BD */ rlwinm. r5, r5, 0, 0x1e, 0x1e
/* 80362E48 0035FD88 40 82 00 18 */ bne lbl_80362E60
/* 80362E4C 0035FD8C 80 A9 00 00 */ lwz r5, 0(r9)
/* 80362E50 0035FD90 54 A5 00 38 */ rlwinm r5, r5, 0, 0, 0x1c
/* 80362E54 0035FD94 7C C8 2A 14 */ add r6, r8, r5
/* 80362E58 0035FD98 38 A6 FF FC */ addi r5, r6, -4
/* 80362E5C 0035FD9C 7C C7 29 2E */ stwx r6, r7, r5
lbl_80362E60:
/* 80362E60 0035FDA0 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362E64 0035FDA4 7C 05 48 40 */ cmplw r5, r9
/* 80362E68 0035FDA8 40 82 00 0C */ bne lbl_80362E74
/* 80362E6C 0035FDAC 80 A5 00 0C */ lwz r5, 0xc(r5)
/* 80362E70 0035FDB0 7C A4 01 2E */ stwx r5, r4, r0
lbl_80362E74:
/* 80362E74 0035FDB4 80 C9 00 08 */ lwz r6, 8(r9)
/* 80362E78 0035FDB8 80 A9 00 0C */ lwz r5, 0xc(r9)
/* 80362E7C 0035FDBC 90 C5 00 08 */ stw r6, 8(r5)
/* 80362E80 0035FDC0 80 C9 00 0C */ lwz r6, 0xc(r9)
/* 80362E84 0035FDC4 80 A6 00 08 */ lwz r5, 8(r6)
/* 80362E88 0035FDC8 90 C5 00 0C */ stw r6, 0xc(r5)
/* 80362E8C 0035FDCC 48 00 00 08 */ b lbl_80362E94
lbl_80362E90:
/* 80362E90 0035FDD0 7D 27 4B 78 */ mr r7, r9
lbl_80362E94:
/* 80362E94 0035FDD4 7C E4 01 2E */ stwx r7, r4, r0
/* 80362E98 0035FDD8 7D 24 00 2E */ lwzx r9, r4, r0
/* 80362E9C 0035FDDC 80 C9 00 00 */ lwz r6, 0(r9)
/* 80362EA0 0035FDE0 54 CA 00 38 */ rlwinm r10, r6, 0, 0, 0x1c
/* 80362EA4 0035FDE4 7D 09 52 14 */ add r8, r9, r10
/* 80362EA8 0035FDE8 80 E8 00 00 */ lwz r7, 0(r8)
/* 80362EAC 0035FDEC 54 E5 07 BD */ rlwinm. r5, r7, 0, 0x1e, 0x1e
/* 80362EB0 0035FDF0 40 82 00 B0 */ bne lbl_80362F60
/* 80362EB4 0035FDF4 54 C5 07 7E */ clrlwi r5, r6, 0x1d
/* 80362EB8 0035FDF8 54 E6 00 38 */ rlwinm r6, r7, 0, 0, 0x1c
/* 80362EBC 0035FDFC 90 A9 00 00 */ stw r5, 0(r9)
/* 80362EC0 0035FE00 7C EA 32 14 */ add r7, r10, r6
/* 80362EC4 0035FE04 54 E5 00 38 */ rlwinm r5, r7, 0, 0, 0x1c
/* 80362EC8 0035FE08 80 C9 00 00 */ lwz r6, 0(r9)
/* 80362ECC 0035FE0C 7C C5 2B 78 */ or r5, r6, r5
/* 80362ED0 0035FE10 90 A9 00 00 */ stw r5, 0(r9)
/* 80362ED4 0035FE14 80 A9 00 00 */ lwz r5, 0(r9)
/* 80362ED8 0035FE18 54 A5 07 BD */ rlwinm. r5, r5, 0, 0x1e, 0x1e
/* 80362EDC 0035FE1C 40 82 00 0C */ bne lbl_80362EE8
/* 80362EE0 0035FE20 38 A7 FF FC */ addi r5, r7, -4
/* 80362EE4 0035FE24 7C E9 29 2E */ stwx r7, r9, r5
lbl_80362EE8:
/* 80362EE8 0035FE28 80 A9 00 00 */ lwz r5, 0(r9)
/* 80362EEC 0035FE2C 54 A5 07 BD */ rlwinm. r5, r5, 0, 0x1e, 0x1e
/* 80362EF0 0035FE30 40 82 00 14 */ bne lbl_80362F04
/* 80362EF4 0035FE34 7C A9 38 2E */ lwzx r5, r9, r7
/* 80362EF8 0035FE38 54 A5 07 B8 */ rlwinm r5, r5, 0, 0x1e, 0x1c
/* 80362EFC 0035FE3C 7C A9 39 2E */ stwx r5, r9, r7
/* 80362F00 0035FE40 48 00 00 10 */ b lbl_80362F10
lbl_80362F04:
/* 80362F04 0035FE44 7C A9 38 2E */ lwzx r5, r9, r7
/* 80362F08 0035FE48 60 A5 00 04 */ ori r5, r5, 4
/* 80362F0C 0035FE4C 7C A9 39 2E */ stwx r5, r9, r7
lbl_80362F10:
/* 80362F10 0035FE50 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362F14 0035FE54 7C 05 40 40 */ cmplw r5, r8
/* 80362F18 0035FE58 40 82 00 0C */ bne lbl_80362F24
/* 80362F1C 0035FE5C 80 A5 00 0C */ lwz r5, 0xc(r5)
/* 80362F20 0035FE60 7C A4 01 2E */ stwx r5, r4, r0
lbl_80362F24:
/* 80362F24 0035FE64 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362F28 0035FE68 7C 05 40 40 */ cmplw r5, r8
/* 80362F2C 0035FE6C 40 82 00 0C */ bne lbl_80362F38
/* 80362F30 0035FE70 38 A0 00 00 */ li r5, 0
/* 80362F34 0035FE74 7C A4 01 2E */ stwx r5, r4, r0
lbl_80362F38:
/* 80362F38 0035FE78 80 C8 00 08 */ lwz r6, 8(r8)
/* 80362F3C 0035FE7C 80 A8 00 0C */ lwz r5, 0xc(r8)
/* 80362F40 0035FE80 90 C5 00 08 */ stw r6, 8(r5)
/* 80362F44 0035FE84 80 C8 00 0C */ lwz r6, 0xc(r8)
/* 80362F48 0035FE88 80 A8 00 08 */ lwz r5, 8(r8)
/* 80362F4C 0035FE8C 90 C5 00 0C */ stw r6, 0xc(r5)
/* 80362F50 0035FE90 48 00 00 10 */ b lbl_80362F60
lbl_80362F54:
/* 80362F54 0035FE94 7D 04 01 2E */ stwx r8, r4, r0
/* 80362F58 0035FE98 91 08 00 08 */ stw r8, 8(r8)
/* 80362F5C 0035FE9C 91 08 00 0C */ stw r8, 0xc(r8)
lbl_80362F60:
/* 80362F60 0035FEA0 7C A4 00 2E */ lwzx r5, r4, r0
/* 80362F64 0035FEA4 80 C4 00 08 */ lwz r6, 8(r4)
/* 80362F68 0035FEA8 80 05 00 00 */ lwz r0, 0(r5)
/* 80362F6C 0035FEAC 54 00 00 38 */ rlwinm r0, r0, 0, 0, 0x1c
/* 80362F70 0035FEB0 7C 06 00 40 */ cmplw r6, r0
/* 80362F74 0035FEB4 40 80 00 08 */ bge lbl_80362F7C
/* 80362F78 0035FEB8 90 04 00 08 */ stw r0, 8(r4)
lbl_80362F7C:
/* 80362F7C 0035FEBC 80 A4 00 10 */ lwz r5, 0x10(r4)
/* 80362F80 0035FEC0 38 E0 00 00 */ li r7, 0
/* 80362F84 0035FEC4 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e
/* 80362F88 0035FEC8 40 82 00 20 */ bne lbl_80362FA8
/* 80362F8C 0035FECC 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80362F90 0035FED0 54 A6 00 38 */ rlwinm r6, r5, 0, 0, 0x1c
/* 80362F94 0035FED4 54 05 00 38 */ rlwinm r5, r0, 0, 0, 0x1c
/* 80362F98 0035FED8 38 05 FF E8 */ addi r0, r5, -24
/* 80362F9C 0035FEDC 7C 06 00 40 */ cmplw r6, r0
/* 80362FA0 0035FEE0 40 82 00 08 */ bne lbl_80362FA8
/* 80362FA4 0035FEE4 38 E0 00 01 */ li r7, 1
lbl_80362FA8:
/* 80362FA8 0035FEE8 2C 07 00 00 */ cmpwi r7, 0
/* 80362FAC 0035FEEC 41 82 00 50 */ beq lbl_80362FFC
/* 80362FB0 0035FEF0 80 A4 00 04 */ lwz r5, 4(r4)
/* 80362FB4 0035FEF4 7C 05 20 40 */ cmplw r5, r4
/* 80362FB8 0035FEF8 40 82 00 08 */ bne lbl_80362FC0
/* 80362FBC 0035FEFC 38 A0 00 00 */ li r5, 0
lbl_80362FC0:
/* 80362FC0 0035FF00 80 03 00 00 */ lwz r0, 0(r3)
/* 80362FC4 0035FF04 7C 00 20 40 */ cmplw r0, r4
/* 80362FC8 0035FF08 40 82 00 08 */ bne lbl_80362FD0
/* 80362FCC 0035FF0C 90 A3 00 00 */ stw r5, 0(r3)
lbl_80362FD0:
/* 80362FD0 0035FF10 28 05 00 00 */ cmplwi r5, 0
/* 80362FD4 0035FF14 41 82 00 14 */ beq lbl_80362FE8
/* 80362FD8 0035FF18 80 04 00 00 */ lwz r0, 0(r4)
/* 80362FDC 0035FF1C 90 05 00 00 */ stw r0, 0(r5)
/* 80362FE0 0035FF20 80 65 00 00 */ lwz r3, 0(r5)
/* 80362FE4 0035FF24 90 A3 00 04 */ stw r5, 4(r3)
lbl_80362FE8:
/* 80362FE8 0035FF28 38 00 00 00 */ li r0, 0
/* 80362FEC 0035FF2C 7C 83 23 78 */ mr r3, r4
/* 80362FF0 0035FF30 90 04 00 04 */ stw r0, 4(r4)
/* 80362FF4 0035FF34 90 04 00 00 */ stw r0, 0(r4)
/* 80362FF8 0035FF38 4B FF F9 1D */ bl func_80362914
lbl_80362FFC:
/* 80362FFC 0035FF3C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80363000 0035FF40 7C 08 03 A6 */ mtlr r0
/* 80363004 0035FF44 38 21 00 10 */ addi r1, r1, 0x10
/* 80363008 0035FF48 4E 80 00 20 */ blr
.global func_8036300C
func_8036300C:
/* 8036300C 0035FF4C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363010 0035FF50 7C 08 02 A6 */ mflr r0
/* 80363014 0035FF54 3C 60 80 3D */ lis r3, lbl_803D29B0@ha
/* 80363018 0035FF58 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036301C 0035FF5C 38 03 29 B0 */ addi r0, r3, lbl_803D29B0@l
/* 80363020 0035FF60 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80363024 0035FF64 3B E0 00 00 */ li r31, 0
/* 80363028 0035FF68 93 C1 00 08 */ stw r30, 8(r1)
/* 8036302C 0035FF6C 7C 1E 03 78 */ mr r30, r0
/* 80363030 0035FF70 48 00 00 28 */ b lbl_80363058
lbl_80363034:
/* 80363034 0035FF74 A0 1E 00 04 */ lhz r0, 4(r30)
/* 80363038 0035FF78 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 8036303C 0035FF7C 41 82 00 18 */ beq lbl_80363054
/* 80363040 0035FF80 7F C3 F3 78 */ mr r3, r30
/* 80363044 0035FF84 48 00 28 7D */ bl func_803658C0
/* 80363048 0035FF88 2C 03 00 00 */ cmpwi r3, 0
/* 8036304C 0035FF8C 41 82 00 08 */ beq lbl_80363054
/* 80363050 0035FF90 3B E0 FF FF */ li r31, -1
lbl_80363054:
/* 80363054 0035FF94 83 DE 00 4C */ lwz r30, 0x4c(r30)
lbl_80363058:
/* 80363058 0035FF98 28 1E 00 00 */ cmplwi r30, 0
/* 8036305C 0035FF9C 40 82 FF D8 */ bne lbl_80363034
/* 80363060 0035FFA0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80363064 0035FFA4 7F E3 FB 78 */ mr r3, r31
/* 80363068 0035FFA8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8036306C 0035FFAC 83 C1 00 08 */ lwz r30, 8(r1)
/* 80363070 0035FFB0 7C 08 03 A6 */ mtlr r0
/* 80363074 0035FFB4 38 21 00 10 */ addi r1, r1, 0x10
/* 80363078 0035FFB8 4E 80 00 20 */ blr
lbl_8036307C:
/* 8036307C 0035FFBC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363080 0035FFC0 7C 08 02 A6 */ mflr r0
/* 80363084 0035FFC4 3C 80 80 3D */ lis r4, lbl_803D29B0@ha
/* 80363088 0035FFC8 38 60 00 02 */ li r3, 2
/* 8036308C 0035FFCC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80363090 0035FFD0 38 04 29 B0 */ addi r0, r4, lbl_803D29B0@l
/* 80363094 0035FFD4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80363098 0035FFD8 7C 1F 03 78 */ mr r31, r0
/* 8036309C 0035FFDC 48 00 23 CD */ bl func_80365468
/* 803630A0 0035FFE0 48 00 00 60 */ b lbl_80363100
lbl_803630A4:
/* 803630A4 0035FFE4 A0 1F 00 04 */ lhz r0, 4(r31)
/* 803630A8 0035FFE8 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 803630AC 0035FFEC 41 82 00 0C */ beq lbl_803630B8
/* 803630B0 0035FFF0 7F E3 FB 78 */ mr r3, r31
/* 803630B4 0035FFF4 48 00 29 45 */ bl func_803659F8
lbl_803630B8:
/* 803630B8 0035FFF8 7F E3 FB 78 */ mr r3, r31
/* 803630BC 0035FFFC 83 FF 00 4C */ lwz r31, 0x4c(r31)
/* 803630C0 00360000 88 03 00 0C */ lbz r0, 0xc(r3)
/* 803630C4 00360004 28 00 00 00 */ cmplwi r0, 0
/* 803630C8 00360008 41 82 00 0C */ beq lbl_803630D4
/* 803630CC 0036000C 4B FF FA 8D */ bl func_80362B58
/* 803630D0 00360010 48 00 00 30 */ b lbl_80363100
lbl_803630D4:
/* 803630D4 00360014 A0 03 00 04 */ lhz r0, 4(r3)
/* 803630D8 00360018 38 80 00 03 */ li r4, 3
/* 803630DC 0036001C 50 80 35 F2 */ rlwimi r0, r4, 6, 0x17, 0x19
/* 803630E0 00360020 28 1F 00 00 */ cmplwi r31, 0
/* 803630E4 00360024 B0 03 00 04 */ sth r0, 4(r3)
/* 803630E8 00360028 41 82 00 18 */ beq lbl_80363100
/* 803630EC 0036002C 88 1F 00 0C */ lbz r0, 0xc(r31)
/* 803630F0 00360030 28 00 00 00 */ cmplwi r0, 0
/* 803630F4 00360034 41 82 00 0C */ beq lbl_80363100
/* 803630F8 00360038 38 00 00 00 */ li r0, 0
/* 803630FC 0036003C 90 03 00 4C */ stw r0, 0x4c(r3)
lbl_80363100:
/* 80363100 00360040 28 1F 00 00 */ cmplwi r31, 0
/* 80363104 00360044 40 82 FF A0 */ bne lbl_803630A4
/* 80363108 00360048 38 60 00 02 */ li r3, 2
/* 8036310C 0036004C 48 00 23 59 */ bl func_80365464
/* 80363110 00360050 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80363114 00360054 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80363118 00360058 7C 08 03 A6 */ mtlr r0
/* 8036311C 0036005C 38 21 00 10 */ addi r1, r1, 0x10
/* 80363120 00360060 4E 80 00 20 */ blr
.global func_80363124
func_80363124:
/* 80363124 00360064 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363128 00360068 7C 08 02 A6 */ mflr r0
/* 8036312C 0036006C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80363130 00360070 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80363134 00360074 7C 9F 23 78 */ mr r31, r4
/* 80363138 00360078 93 C1 00 08 */ stw r30, 8(r1)
/* 8036313C 0036007C AB C3 00 02 */ lha r30, 2(r3)
/* 80363140 00360080 7F E3 FB 78 */ mr r3, r31
/* 80363144 00360084 48 00 01 85 */ bl func_803632C8
/* 80363148 00360088 88 1F 00 05 */ lbz r0, 5(r31)
/* 8036314C 0036008C 28 00 00 09 */ cmplwi r0, 9
/* 80363150 00360090 41 81 01 60 */ bgt lbl_803632B0
/* 80363154 00360094 7F C0 07 34 */ extsh r0, r30
/* 80363158 00360098 2C 00 00 24 */ cmpwi r0, 0x24
/* 8036315C 0036009C 40 81 00 08 */ ble lbl_80363164
/* 80363160 003600A0 3B C0 00 24 */ li r30, 0x24
lbl_80363164:
/* 80363164 003600A4 7F C6 07 35 */ extsh. r6, r30
/* 80363168 003600A8 40 81 00 E8 */ ble lbl_80363250
/* 8036316C 003600AC 88 1F 00 04 */ lbz r0, 4(r31)
/* 80363170 003600B0 7C 06 00 00 */ cmpw r6, r0
/* 80363174 003600B4 40 80 00 DC */ bge lbl_80363250
/* 80363178 003600B8 7C BF 32 14 */ add r5, r31, r6
/* 8036317C 003600BC 88 05 00 05 */ lbz r0, 5(r5)
/* 80363180 003600C0 28 00 00 05 */ cmplwi r0, 5
/* 80363184 003600C4 40 81 00 0C */ ble lbl_80363190
/* 80363188 003600C8 38 00 00 01 */ li r0, 1
/* 8036318C 003600CC 48 00 00 64 */ b lbl_803631F0
lbl_80363190:
/* 80363190 003600D0 40 80 00 0C */ bge lbl_8036319C
/* 80363194 003600D4 38 00 FF FF */ li r0, -1
/* 80363198 003600D8 48 00 00 58 */ b lbl_803631F0
lbl_8036319C:
/* 8036319C 003600DC 88 7F 00 04 */ lbz r3, 4(r31)
/* 803631A0 003600E0 38 85 00 06 */ addi r4, r5, 6
/* 803631A4 003600E4 38 63 00 05 */ addi r3, r3, 5
/* 803631A8 003600E8 7C 7F 1A 14 */ add r3, r31, r3
/* 803631AC 003600EC 7C 04 18 50 */ subf r0, r4, r3
/* 803631B0 003600F0 7C 09 03 A6 */ mtctr r0
/* 803631B4 003600F4 7C 04 18 40 */ cmplw r4, r3
/* 803631B8 003600F8 40 80 00 20 */ bge lbl_803631D8
lbl_803631BC:
/* 803631BC 003600FC 88 04 00 00 */ lbz r0, 0(r4)
/* 803631C0 00360100 28 00 00 00 */ cmplwi r0, 0
/* 803631C4 00360104 41 82 00 0C */ beq lbl_803631D0
/* 803631C8 00360108 38 00 00 01 */ li r0, 1
/* 803631CC 0036010C 48 00 00 24 */ b lbl_803631F0
lbl_803631D0:
/* 803631D0 00360110 38 84 00 01 */ addi r4, r4, 1
/* 803631D4 00360114 42 00 FF E8 */ bdnz lbl_803631BC
lbl_803631D8:
/* 803631D8 00360118 88 05 00 04 */ lbz r0, 4(r5)
/* 803631DC 0036011C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 803631E0 00360120 41 82 00 0C */ beq lbl_803631EC
/* 803631E4 00360124 38 00 00 01 */ li r0, 1
/* 803631E8 00360128 48 00 00 08 */ b lbl_803631F0
lbl_803631EC:
/* 803631EC 0036012C 38 00 FF FF */ li r0, -1
lbl_803631F0:
/* 803631F0 00360130 2C 00 00 00 */ cmpwi r0, 0
/* 803631F4 00360134 98 DF 00 04 */ stb r6, 4(r31)
/* 803631F8 00360138 41 80 00 58 */ blt lbl_80363250
/* 803631FC 0036013C 38 BF 00 05 */ addi r5, r31, 5
/* 80363200 00360140 38 86 FF FF */ addi r4, r6, -1
/* 80363204 00360144 7C 85 22 14 */ add r4, r5, r4
/* 80363208 00360148 38 00 00 00 */ li r0, 0
lbl_8036320C:
/* 8036320C 0036014C 88 64 00 00 */ lbz r3, 0(r4)
/* 80363210 00360150 28 03 00 09 */ cmplwi r3, 9
/* 80363214 00360154 40 80 00 10 */ bge lbl_80363224
/* 80363218 00360158 38 03 00 01 */ addi r0, r3, 1
/* 8036321C 0036015C 98 04 00 00 */ stb r0, 0(r4)
/* 80363220 00360160 48 00 00 30 */ b lbl_80363250
lbl_80363224:
/* 80363224 00360164 7C 04 28 40 */ cmplw r4, r5
/* 80363228 00360168 40 82 00 1C */ bne lbl_80363244
/* 8036322C 0036016C 38 00 00 01 */ li r0, 1
/* 80363230 00360170 98 04 00 00 */ stb r0, 0(r4)
/* 80363234 00360174 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363238 00360178 38 03 00 01 */ addi r0, r3, 1
/* 8036323C 0036017C B0 1F 00 02 */ sth r0, 2(r31)
/* 80363240 00360180 48 00 00 10 */ b lbl_80363250
lbl_80363244:
/* 80363244 00360184 98 04 00 00 */ stb r0, 0(r4)
/* 80363248 00360188 38 84 FF FF */ addi r4, r4, -1
/* 8036324C 0036018C 4B FF FF C0 */ b lbl_8036320C
lbl_80363250:
/* 80363250 00360190 38 A0 00 00 */ li r5, 0
/* 80363254 00360194 48 00 00 18 */ b lbl_8036326C
lbl_80363258:
/* 80363258 00360198 88 9F 00 04 */ lbz r4, 4(r31)
/* 8036325C 0036019C 38 64 00 01 */ addi r3, r4, 1
/* 80363260 003601A0 38 04 00 05 */ addi r0, r4, 5
/* 80363264 003601A4 98 7F 00 04 */ stb r3, 4(r31)
/* 80363268 003601A8 7C BF 01 AE */ stbx r5, r31, r0
lbl_8036326C:
/* 8036326C 003601AC 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363270 003601B0 7C 03 30 00 */ cmpw r3, r6
/* 80363274 003601B4 41 80 FF E4 */ blt lbl_80363258
/* 80363278 003601B8 A8 1F 00 02 */ lha r0, 2(r31)
/* 8036327C 003601BC 38 63 FF FF */ addi r3, r3, -1
/* 80363280 003601C0 38 A0 00 00 */ li r5, 0
/* 80363284 003601C4 7C 03 00 50 */ subf r0, r3, r0
/* 80363288 003601C8 B0 1F 00 02 */ sth r0, 2(r31)
/* 8036328C 003601CC 48 00 00 18 */ b lbl_803632A4
lbl_80363290:
/* 80363290 003601D0 38 85 00 05 */ addi r4, r5, 5
/* 80363294 003601D4 38 A5 00 01 */ addi r5, r5, 1
/* 80363298 003601D8 7C 7F 20 AE */ lbzx r3, r31, r4
/* 8036329C 003601DC 38 03 00 30 */ addi r0, r3, 0x30
/* 803632A0 003601E0 7C 1F 21 AE */ stbx r0, r31, r4
lbl_803632A4:
/* 803632A4 003601E4 88 1F 00 04 */ lbz r0, 4(r31)
/* 803632A8 003601E8 7C 05 00 00 */ cmpw r5, r0
/* 803632AC 003601EC 41 80 FF E4 */ blt lbl_80363290
lbl_803632B0:
/* 803632B0 003601F0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803632B4 003601F4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803632B8 003601F8 83 C1 00 08 */ lwz r30, 8(r1)
/* 803632BC 003601FC 7C 08 03 A6 */ mtlr r0
/* 803632C0 00360200 38 21 00 10 */ addi r1, r1, 0x10
/* 803632C4 00360204 4E 80 00 20 */ blr
.global func_803632C8
func_803632C8:
/* 803632C8 00360208 94 21 FF 50 */ stwu r1, -0xb0(r1)
/* 803632CC 0036020C 7C 08 02 A6 */ mflr r0
/* 803632D0 00360210 C8 02 CC 60 */ lfd f0, lbl_80456660-_SDA2_BASE_(r2)
/* 803632D4 00360214 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 803632D8 00360218 FC 00 08 00 */ fcmpu cr0, f0, f1
/* 803632DC 0036021C DB E1 00 A8 */ stfd f31, 0xa8(r1)
/* 803632E0 00360220 BF 41 00 90 */ stmw r26, 0x90(r1)
/* 803632E4 00360224 7C 7E 1B 78 */ mr r30, r3
/* 803632E8 00360228 D8 21 00 08 */ stfd f1, 8(r1)
/* 803632EC 0036022C 80 01 00 08 */ lwz r0, 8(r1)
/* 803632F0 00360230 54 00 0F FE */ srwi r0, r0, 0x1f
/* 803632F4 00360234 7C 1F 07 74 */ extsb r31, r0
/* 803632F8 00360238 40 82 00 20 */ bne lbl_80363318
/* 803632FC 0036023C 9B FE 00 00 */ stb r31, 0(r30)
/* 80363300 00360240 38 60 00 00 */ li r3, 0
/* 80363304 00360244 38 00 00 01 */ li r0, 1
/* 80363308 00360248 B0 7E 00 02 */ sth r3, 2(r30)
/* 8036330C 0036024C 98 1E 00 04 */ stb r0, 4(r30)
/* 80363310 00360250 98 7E 00 05 */ stb r3, 5(r30)
/* 80363314 00360254 48 00 03 50 */ b lbl_80363664
lbl_80363318:
/* 80363318 00360258 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 8036331C 0036025C 3C 00 7F F0 */ lis r0, 0x7ff0
/* 80363320 00360260 80 81 00 28 */ lwz r4, 0x28(r1)
/* 80363324 00360264 54 83 00 56 */ rlwinm r3, r4, 0, 1, 0xb
/* 80363328 00360268 7C 03 00 00 */ cmpw r3, r0
/* 8036332C 0036026C 41 82 00 14 */ beq lbl_80363340
/* 80363330 00360270 40 80 00 58 */ bge lbl_80363388
/* 80363334 00360274 2C 03 00 00 */ cmpwi r3, 0
/* 80363338 00360278 41 82 00 2C */ beq lbl_80363364
/* 8036333C 0036027C 48 00 00 4C */ b lbl_80363388
lbl_80363340:
/* 80363340 00360280 54 80 03 3F */ clrlwi. r0, r4, 0xc
/* 80363344 00360284 40 82 00 10 */ bne lbl_80363354
/* 80363348 00360288 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 8036334C 0036028C 2C 00 00 00 */ cmpwi r0, 0
/* 80363350 00360290 41 82 00 0C */ beq lbl_8036335C
lbl_80363354:
/* 80363354 00360294 38 00 00 01 */ li r0, 1
/* 80363358 00360298 48 00 00 34 */ b lbl_8036338C
lbl_8036335C:
/* 8036335C 0036029C 38 00 00 02 */ li r0, 2
/* 80363360 003602A0 48 00 00 2C */ b lbl_8036338C
lbl_80363364:
/* 80363364 003602A4 54 80 03 3F */ clrlwi. r0, r4, 0xc
/* 80363368 003602A8 40 82 00 10 */ bne lbl_80363378
/* 8036336C 003602AC 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80363370 003602B0 2C 00 00 00 */ cmpwi r0, 0
/* 80363374 003602B4 41 82 00 0C */ beq lbl_80363380
lbl_80363378:
/* 80363378 003602B8 38 00 00 05 */ li r0, 5
/* 8036337C 003602BC 48 00 00 10 */ b lbl_8036338C
lbl_80363380:
/* 80363380 003602C0 38 00 00 03 */ li r0, 3
/* 80363384 003602C4 48 00 00 08 */ b lbl_8036338C
lbl_80363388:
/* 80363388 003602C8 38 00 00 04 */ li r0, 4
lbl_8036338C:
/* 8036338C 003602CC 2C 00 00 02 */ cmpwi r0, 2
/* 80363390 003602D0 41 81 00 A8 */ bgt lbl_80363438
/* 80363394 003602D4 C8 01 00 08 */ lfd f0, 8(r1)
/* 80363398 003602D8 38 60 00 00 */ li r3, 0
/* 8036339C 003602DC 9B FE 00 00 */ stb r31, 0(r30)
/* 803633A0 003602E0 3C 00 7F F0 */ lis r0, 0x7ff0
/* 803633A4 003602E4 38 80 00 01 */ li r4, 1
/* 803633A8 003602E8 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 803633AC 003602EC 80 A1 00 20 */ lwz r5, 0x20(r1)
/* 803633B0 003602F0 B0 7E 00 02 */ sth r3, 2(r30)
/* 803633B4 003602F4 54 A3 00 56 */ rlwinm r3, r5, 0, 1, 0xb
/* 803633B8 003602F8 7C 03 00 00 */ cmpw r3, r0
/* 803633BC 003602FC 98 9E 00 04 */ stb r4, 4(r30)
/* 803633C0 00360300 41 82 00 14 */ beq lbl_803633D4
/* 803633C4 00360304 40 80 00 58 */ bge lbl_8036341C
/* 803633C8 00360308 2C 03 00 00 */ cmpwi r3, 0
/* 803633CC 0036030C 41 82 00 2C */ beq lbl_803633F8
/* 803633D0 00360310 48 00 00 4C */ b lbl_8036341C
lbl_803633D4:
/* 803633D4 00360314 54 A0 03 3F */ clrlwi. r0, r5, 0xc
/* 803633D8 00360318 40 82 00 10 */ bne lbl_803633E8
/* 803633DC 0036031C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803633E0 00360320 2C 00 00 00 */ cmpwi r0, 0
/* 803633E4 00360324 41 82 00 0C */ beq lbl_803633F0
lbl_803633E8:
/* 803633E8 00360328 38 00 00 01 */ li r0, 1
/* 803633EC 0036032C 48 00 00 34 */ b lbl_80363420
lbl_803633F0:
/* 803633F0 00360330 38 00 00 02 */ li r0, 2
/* 803633F4 00360334 48 00 00 2C */ b lbl_80363420
lbl_803633F8:
/* 803633F8 00360338 54 A0 03 3F */ clrlwi. r0, r5, 0xc
/* 803633FC 0036033C 40 82 00 10 */ bne lbl_8036340C
/* 80363400 00360340 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80363404 00360344 2C 00 00 00 */ cmpwi r0, 0
/* 80363408 00360348 41 82 00 0C */ beq lbl_80363414
lbl_8036340C:
/* 8036340C 0036034C 38 00 00 05 */ li r0, 5
/* 80363410 00360350 48 00 00 10 */ b lbl_80363420
lbl_80363414:
/* 80363414 00360354 38 00 00 03 */ li r0, 3
/* 80363418 00360358 48 00 00 08 */ b lbl_80363420
lbl_8036341C:
/* 8036341C 0036035C 38 00 00 04 */ li r0, 4
lbl_80363420:
/* 80363420 00360360 2C 00 00 01 */ cmpwi r0, 1
/* 80363424 00360364 38 00 00 49 */ li r0, 0x49
/* 80363428 00360368 40 82 00 08 */ bne lbl_80363430
/* 8036342C 0036036C 38 00 00 4E */ li r0, 0x4e
lbl_80363430:
/* 80363430 00360370 98 1E 00 05 */ stb r0, 5(r30)
/* 80363434 00360374 48 00 02 30 */ b lbl_80363664
lbl_80363438:
/* 80363438 00360378 7F E0 07 75 */ extsb. r0, r31
/* 8036343C 0036037C 41 82 00 0C */ beq lbl_80363448
/* 80363440 00360380 FC 00 08 50 */ fneg f0, f1
/* 80363444 00360384 D8 01 00 08 */ stfd f0, 8(r1)
lbl_80363448:
/* 80363448 00360388 C8 21 00 08 */ lfd f1, 8(r1)
/* 8036344C 0036038C 38 61 00 10 */ addi r3, r1, 0x10
/* 80363450 00360390 48 00 8D F5 */ bl func_8036C244
/* 80363454 00360394 FF E0 08 90 */ fmr f31, f1
/* 80363458 00360398 DB E1 00 18 */ stfd f31, 0x18(r1)
/* 8036345C 0036039C 81 01 00 1C */ lwz r8, 0x1c(r1)
/* 80363460 003603A0 28 08 00 00 */ cmplwi r8, 0
/* 80363464 003603A4 41 82 00 70 */ beq lbl_803634D4
/* 80363468 003603A8 38 A0 00 10 */ li r5, 0x10
/* 8036346C 003603AC 3C 60 00 01 */ lis r3, 0x0000FFFF@ha
/* 80363470 003603B0 38 E0 00 00 */ li r7, 0
/* 80363474 003603B4 38 C0 00 20 */ li r6, 0x20
/* 80363478 003603B8 7C A4 2B 78 */ mr r4, r5
/* 8036347C 003603BC 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l
/* 80363480 003603C0 48 00 00 48 */ b lbl_803634C8
lbl_80363484:
/* 80363484 003603C4 7D 00 18 39 */ and. r0, r8, r3
/* 80363488 003603C8 40 82 00 14 */ bne lbl_8036349C
/* 8036348C 003603CC 7C E7 22 14 */ add r7, r7, r4
/* 80363490 003603D0 7D 08 24 30 */ srw r8, r8, r4
/* 80363494 003603D4 7C C4 30 50 */ subf r6, r4, r6
/* 80363498 003603D8 48 00 00 0C */ b lbl_803634A4
lbl_8036349C:
/* 8036349C 003603DC 28 03 00 01 */ cmplwi r3, 1
/* 803634A0 003603E0 41 82 00 A8 */ beq lbl_80363548
lbl_803634A4:
/* 803634A4 003603E4 2C 05 00 01 */ cmpwi r5, 1
/* 803634A8 003603E8 40 81 00 10 */ ble lbl_803634B8
/* 803634AC 003603EC 54 A0 0F FE */ srwi r0, r5, 0x1f
/* 803634B0 003603F0 7C 00 2A 14 */ add r0, r0, r5
/* 803634B4 003603F4 7C 05 0E 70 */ srawi r5, r0, 1
lbl_803634B8:
/* 803634B8 003603F8 28 03 00 01 */ cmplwi r3, 1
/* 803634BC 003603FC 40 81 00 0C */ ble lbl_803634C8
/* 803634C0 00360400 7C 63 2C 30 */ srw r3, r3, r5
/* 803634C4 00360404 7C 85 20 50 */ subf r4, r5, r4
lbl_803634C8:
/* 803634C8 00360408 2C 06 00 00 */ cmpwi r6, 0
/* 803634CC 0036040C 40 82 FF B8 */ bne lbl_80363484
/* 803634D0 00360410 48 00 00 78 */ b lbl_80363548
lbl_803634D4:
/* 803634D4 00360414 80 01 00 18 */ lwz r0, 0x18(r1)
/* 803634D8 00360418 38 A0 00 10 */ li r5, 0x10
/* 803634DC 0036041C 3C 60 00 01 */ lis r3, 0x0000FFFF@ha
/* 803634E0 00360420 38 E0 00 00 */ li r7, 0
/* 803634E4 00360424 7C A4 2B 78 */ mr r4, r5
/* 803634E8 00360428 64 08 00 10 */ oris r8, r0, 0x10
/* 803634EC 0036042C 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l
/* 803634F0 00360430 38 C0 00 20 */ li r6, 0x20
/* 803634F4 00360434 48 00 00 48 */ b lbl_8036353C
lbl_803634F8:
/* 803634F8 00360438 7D 00 18 39 */ and. r0, r8, r3
/* 803634FC 0036043C 40 82 00 14 */ bne lbl_80363510
/* 80363500 00360440 7C E7 22 14 */ add r7, r7, r4
/* 80363504 00360444 7D 08 24 30 */ srw r8, r8, r4
/* 80363508 00360448 7C C4 30 50 */ subf r6, r4, r6
/* 8036350C 0036044C 48 00 00 0C */ b lbl_80363518
lbl_80363510:
/* 80363510 00360450 28 03 00 01 */ cmplwi r3, 1
/* 80363514 00360454 41 82 00 30 */ beq lbl_80363544
lbl_80363518:
/* 80363518 00360458 2C 05 00 01 */ cmpwi r5, 1
/* 8036351C 0036045C 40 81 00 10 */ ble lbl_8036352C
/* 80363520 00360460 54 A0 0F FE */ srwi r0, r5, 0x1f
/* 80363524 00360464 7C 00 2A 14 */ add r0, r0, r5
/* 80363528 00360468 7C 05 0E 70 */ srawi r5, r0, 1
lbl_8036352C:
/* 8036352C 0036046C 28 03 00 01 */ cmplwi r3, 1
/* 80363530 00360470 40 81 00 0C */ ble lbl_8036353C
/* 80363534 00360474 7C 63 2C 30 */ srw r3, r3, r5
/* 80363538 00360478 7C 85 20 50 */ subf r4, r5, r4
lbl_8036353C:
/* 8036353C 0036047C 2C 06 00 00 */ cmpwi r6, 0
/* 80363540 00360480 40 82 FF B8 */ bne lbl_803634F8
lbl_80363544:
/* 80363544 00360484 38 E7 00 20 */ addi r7, r7, 0x20
lbl_80363548:
/* 80363548 00360488 80 01 00 10 */ lwz r0, 0x10(r1)
/* 8036354C 0036048C 23 47 00 35 */ subfic r26, r7, 0x35
/* 80363550 00360490 38 61 00 38 */ addi r3, r1, 0x38
/* 80363554 00360494 7C 9A 00 50 */ subf r4, r26, r0
/* 80363558 00360498 48 00 01 25 */ bl func_8036367C
/* 8036355C 0036049C FC 20 F8 90 */ fmr f1, f31
/* 80363560 003604A0 7F 43 D3 78 */ mr r3, r26
/* 80363564 003604A4 48 00 8D 6D */ bl func_8036C2D0
/* 80363568 003604A8 38 61 00 30 */ addi r3, r1, 0x30
/* 8036356C 003604AC 48 00 8F 29 */ bl func_8036C494
/* 80363570 003604B0 C8 21 00 30 */ lfd f1, 0x30(r1)
/* 80363574 003604B4 4B FF F1 FD */ bl func_80362770
/* 80363578 003604B8 3B 80 00 00 */ li r28, 0
/* 8036357C 003604BC 7C 7B 1B 78 */ mr r27, r3
/* 80363580 003604C0 7C 9A 23 78 */ mr r26, r4
/* 80363584 003604C4 9B 81 00 64 */ stb r28, 0x64(r1)
/* 80363588 003604C8 7F 43 E2 78 */ xor r3, r26, r28
/* 8036358C 003604CC 7F 60 E2 78 */ xor r0, r27, r28
/* 80363590 003604D0 7C 60 03 79 */ or. r0, r3, r0
/* 80363594 003604D4 40 82 00 18 */ bne lbl_803635AC
/* 80363598 003604D8 38 00 00 01 */ li r0, 1
/* 8036359C 003604DC B3 81 00 66 */ sth r28, 0x66(r1)
/* 803635A0 003604E0 98 01 00 68 */ stb r0, 0x68(r1)
/* 803635A4 003604E4 9B 81 00 69 */ stb r28, 0x69(r1)
/* 803635A8 003604E8 48 00 00 A8 */ b lbl_80363650
lbl_803635AC:
/* 803635AC 003604EC 9B 81 00 68 */ stb r28, 0x68(r1)
/* 803635B0 003604F0 3B A1 00 64 */ addi r29, r1, 0x64
/* 803635B4 003604F4 48 00 00 48 */ b lbl_803635FC
lbl_803635B8:
/* 803635B8 003604F8 7F 63 DB 78 */ mr r3, r27
/* 803635BC 003604FC 7F 44 D3 78 */ mr r4, r26
/* 803635C0 00360500 38 A0 00 00 */ li r5, 0
/* 803635C4 00360504 38 C0 00 0A */ li r6, 0xa
/* 803635C8 00360508 4B FF EE 95 */ bl func_8036245C
/* 803635CC 0036050C 89 01 00 68 */ lbz r8, 0x68(r1)
/* 803635D0 00360510 7F 63 DB 78 */ mr r3, r27
/* 803635D4 00360514 38 A0 00 00 */ li r5, 0
/* 803635D8 00360518 38 C0 00 0A */ li r6, 0xa
/* 803635DC 0036051C 38 E8 00 01 */ addi r7, r8, 1
/* 803635E0 00360520 38 08 00 05 */ addi r0, r8, 5
/* 803635E4 00360524 98 E1 00 68 */ stb r7, 0x68(r1)
/* 803635E8 00360528 7C 9D 01 AE */ stbx r4, r29, r0
/* 803635EC 0036052C 7F 44 D3 78 */ mr r4, r26
/* 803635F0 00360530 4B FF EC 49 */ bl func_80362238
/* 803635F4 00360534 7C 9A 23 78 */ mr r26, r4
/* 803635F8 00360538 7C 7B 1B 78 */ mr r27, r3
lbl_803635FC:
/* 803635FC 0036053C 7F 43 E2 78 */ xor r3, r26, r28
/* 80363600 00360540 7F 60 E2 78 */ xor r0, r27, r28
/* 80363604 00360544 7C 60 03 79 */ or. r0, r3, r0
/* 80363608 00360548 40 82 FF B0 */ bne lbl_803635B8
/* 8036360C 0036054C 88 61 00 68 */ lbz r3, 0x68(r1)
/* 80363610 00360550 38 01 00 64 */ addi r0, r1, 0x64
/* 80363614 00360554 38 A1 00 69 */ addi r5, r1, 0x69
/* 80363618 00360558 38 83 00 05 */ addi r4, r3, 5
/* 8036361C 0036055C 7C 80 22 14 */ add r4, r0, r4
/* 80363620 00360560 48 00 00 18 */ b lbl_80363638
lbl_80363624:
/* 80363624 00360564 88 65 00 00 */ lbz r3, 0(r5)
/* 80363628 00360568 88 04 00 00 */ lbz r0, 0(r4)
/* 8036362C 0036056C 98 05 00 00 */ stb r0, 0(r5)
/* 80363630 00360570 38 A5 00 01 */ addi r5, r5, 1
/* 80363634 00360574 98 64 00 00 */ stb r3, 0(r4)
lbl_80363638:
/* 80363638 00360578 38 84 FF FF */ addi r4, r4, -1
/* 8036363C 0036057C 7C 05 20 40 */ cmplw r5, r4
/* 80363640 00360580 41 80 FF E4 */ blt lbl_80363624
/* 80363644 00360584 88 61 00 68 */ lbz r3, 0x68(r1)
/* 80363648 00360588 38 03 FF FF */ addi r0, r3, -1
/* 8036364C 0036058C B0 01 00 66 */ sth r0, 0x66(r1)
lbl_80363650:
/* 80363650 00360590 7F C3 F3 78 */ mr r3, r30
/* 80363654 00360594 38 81 00 64 */ addi r4, r1, 0x64
/* 80363658 00360598 38 A1 00 38 */ addi r5, r1, 0x38
/* 8036365C 0036059C 48 00 17 A5 */ bl func_80364E00
/* 80363660 003605A0 9B FE 00 00 */ stb r31, 0(r30)
lbl_80363664:
/* 80363664 003605A4 CB E1 00 A8 */ lfd f31, 0xa8(r1)
/* 80363668 003605A8 BB 41 00 90 */ lmw r26, 0x90(r1)
/* 8036366C 003605AC 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 80363670 003605B0 7C 08 03 A6 */ mtlr r0
/* 80363674 003605B4 38 21 00 B0 */ addi r1, r1, 0xb0
/* 80363678 003605B8 4E 80 00 20 */ blr
.global func_8036367C
func_8036367C:
/* 8036367C 003605BC 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80363680 003605C0 7C 08 02 A6 */ mflr r0
/* 80363684 003605C4 90 01 00 74 */ stw r0, 0x74(r1)
/* 80363688 003605C8 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8036368C 003605CC 7C 7F 1B 78 */ mr r31, r3
/* 80363690 003605D0 93 C1 00 68 */ stw r30, 0x68(r1)
/* 80363694 003605D4 7C 9E 23 78 */ mr r30, r4
/* 80363698 003605D8 38 1E 00 40 */ addi r0, r30, 0x40
/* 8036369C 003605DC 28 00 00 48 */ cmplwi r0, 0x48
/* 803636A0 003605E0 41 81 14 B8 */ bgt lbl_80364B58
/* 803636A4 003605E4 3C 60 80 3D */ lis r3, lbl_803D2AF0@ha
/* 803636A8 003605E8 54 00 10 3A */ slwi r0, r0, 2
/* 803636AC 003605EC 38 63 2A F0 */ addi r3, r3, lbl_803D2AF0@l
/* 803636B0 003605F0 7C 03 00 2E */ lwzx r0, r3, r0
/* 803636B4 003605F4 7C 09 03 A6 */ mtctr r0
/* 803636B8 003605F8 4E 80 04 20 */ bctr
/* 803636BC 003605FC 38 00 FF EC */ li r0, -20
/* 803636C0 00360600 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 803636C4 00360604 B0 1F 00 02 */ sth r0, 2(r31)
/* 803636C8 00360608 38 80 00 00 */ li r4, 0
/* 803636CC 0036060C 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 803636D0 00360610 98 9F 00 00 */ stb r4, 0(r31)
/* 803636D4 00360614 38 A3 00 25 */ addi r5, r3, 0x25
/* 803636D8 00360618 48 00 00 1C */ b lbl_803636F4
lbl_803636DC:
/* 803636DC 0036061C 88 65 00 00 */ lbz r3, 0(r5)
/* 803636E0 00360620 38 04 00 05 */ addi r0, r4, 5
/* 803636E4 00360624 38 A5 00 01 */ addi r5, r5, 1
/* 803636E8 00360628 38 84 00 01 */ addi r4, r4, 1
/* 803636EC 0036062C 38 63 FF D0 */ addi r3, r3, -48
/* 803636F0 00360630 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803636F4:
/* 803636F4 00360634 2C 04 00 24 */ cmpwi r4, 0x24
/* 803636F8 00360638 40 80 00 10 */ bge lbl_80363708
/* 803636FC 0036063C 88 05 00 00 */ lbz r0, 0(r5)
/* 80363700 00360640 7C 00 07 75 */ extsb. r0, r0
/* 80363704 00360644 40 82 FF D8 */ bne lbl_803636DC
lbl_80363708:
/* 80363708 00360648 98 9F 00 04 */ stb r4, 4(r31)
/* 8036370C 0036064C 88 65 00 00 */ lbz r3, 0(r5)
/* 80363710 00360650 7C 60 07 75 */ extsb. r0, r3
/* 80363714 00360654 41 82 16 D4 */ beq lbl_80364DE8
/* 80363718 00360658 7C 60 07 74 */ extsb r0, r3
/* 8036371C 0036065C 2C 00 00 05 */ cmpwi r0, 5
/* 80363720 00360660 41 80 16 C8 */ blt lbl_80364DE8
/* 80363724 00360664 41 81 00 38 */ bgt lbl_8036375C
/* 80363728 00360668 38 65 00 01 */ addi r3, r5, 1
/* 8036372C 0036066C 48 00 00 14 */ b lbl_80363740
lbl_80363730:
/* 80363730 00360670 7C A0 07 74 */ extsb r0, r5
/* 80363734 00360674 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363738 00360678 40 82 00 24 */ bne lbl_8036375C
/* 8036373C 0036067C 38 63 00 01 */ addi r3, r3, 1
lbl_80363740:
/* 80363740 00360680 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363744 00360684 7C A0 07 75 */ extsb. r0, r5
/* 80363748 00360688 40 82 FF E8 */ bne lbl_80363730
/* 8036374C 0036068C 7C 7F 22 14 */ add r3, r31, r4
/* 80363750 00360690 88 03 00 04 */ lbz r0, 4(r3)
/* 80363754 00360694 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363758 00360698 41 82 16 90 */ beq lbl_80364DE8
lbl_8036375C:
/* 8036375C 0036069C 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363760 003606A0 38 BF 00 05 */ addi r5, r31, 5
/* 80363764 003606A4 38 00 00 00 */ li r0, 0
/* 80363768 003606A8 38 83 FF FF */ addi r4, r3, -1
/* 8036376C 003606AC 7C 85 22 14 */ add r4, r5, r4
lbl_80363770:
/* 80363770 003606B0 88 64 00 00 */ lbz r3, 0(r4)
/* 80363774 003606B4 28 03 00 09 */ cmplwi r3, 9
/* 80363778 003606B8 40 80 00 10 */ bge lbl_80363788
/* 8036377C 003606BC 38 03 00 01 */ addi r0, r3, 1
/* 80363780 003606C0 98 04 00 00 */ stb r0, 0(r4)
/* 80363784 003606C4 48 00 16 64 */ b lbl_80364DE8
lbl_80363788:
/* 80363788 003606C8 7C 04 28 40 */ cmplw r4, r5
/* 8036378C 003606CC 40 82 00 1C */ bne lbl_803637A8
/* 80363790 003606D0 38 00 00 01 */ li r0, 1
/* 80363794 003606D4 98 04 00 00 */ stb r0, 0(r4)
/* 80363798 003606D8 A8 7F 00 02 */ lha r3, 2(r31)
/* 8036379C 003606DC 38 03 00 01 */ addi r0, r3, 1
/* 803637A0 003606E0 B0 1F 00 02 */ sth r0, 2(r31)
/* 803637A4 003606E4 48 00 16 44 */ b lbl_80364DE8
lbl_803637A8:
/* 803637A8 003606E8 98 04 00 00 */ stb r0, 0(r4)
/* 803637AC 003606EC 38 84 FF FF */ addi r4, r4, -1
/* 803637B0 003606F0 4B FF FF C0 */ b lbl_80363770
/* 803637B4 003606F4 48 00 16 34 */ b lbl_80364DE8
/* 803637B8 003606F8 38 00 FF F0 */ li r0, -16
/* 803637BC 003606FC 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 803637C0 00360700 B0 1F 00 02 */ sth r0, 2(r31)
/* 803637C4 00360704 38 80 00 00 */ li r4, 0
/* 803637C8 00360708 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 803637CC 0036070C 98 9F 00 00 */ stb r4, 0(r31)
/* 803637D0 00360710 38 A3 00 53 */ addi r5, r3, 0x53
/* 803637D4 00360714 48 00 00 1C */ b lbl_803637F0
lbl_803637D8:
/* 803637D8 00360718 88 65 00 00 */ lbz r3, 0(r5)
/* 803637DC 0036071C 38 04 00 05 */ addi r0, r4, 5
/* 803637E0 00360720 38 A5 00 01 */ addi r5, r5, 1
/* 803637E4 00360724 38 84 00 01 */ addi r4, r4, 1
/* 803637E8 00360728 38 63 FF D0 */ addi r3, r3, -48
/* 803637EC 0036072C 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803637F0:
/* 803637F0 00360730 2C 04 00 24 */ cmpwi r4, 0x24
/* 803637F4 00360734 40 80 00 10 */ bge lbl_80363804
/* 803637F8 00360738 88 05 00 00 */ lbz r0, 0(r5)
/* 803637FC 0036073C 7C 00 07 75 */ extsb. r0, r0
/* 80363800 00360740 40 82 FF D8 */ bne lbl_803637D8
lbl_80363804:
/* 80363804 00360744 98 9F 00 04 */ stb r4, 4(r31)
/* 80363808 00360748 88 65 00 00 */ lbz r3, 0(r5)
/* 8036380C 0036074C 7C 60 07 75 */ extsb. r0, r3
/* 80363810 00360750 41 82 15 D8 */ beq lbl_80364DE8
/* 80363814 00360754 7C 60 07 74 */ extsb r0, r3
/* 80363818 00360758 2C 00 00 05 */ cmpwi r0, 5
/* 8036381C 0036075C 41 80 15 CC */ blt lbl_80364DE8
/* 80363820 00360760 41 81 00 38 */ bgt lbl_80363858
/* 80363824 00360764 38 65 00 01 */ addi r3, r5, 1
/* 80363828 00360768 48 00 00 14 */ b lbl_8036383C
lbl_8036382C:
/* 8036382C 0036076C 7C A0 07 74 */ extsb r0, r5
/* 80363830 00360770 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363834 00360774 40 82 00 24 */ bne lbl_80363858
/* 80363838 00360778 38 63 00 01 */ addi r3, r3, 1
lbl_8036383C:
/* 8036383C 0036077C 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363840 00360780 7C A0 07 75 */ extsb. r0, r5
/* 80363844 00360784 40 82 FF E8 */ bne lbl_8036382C
/* 80363848 00360788 7C 7F 22 14 */ add r3, r31, r4
/* 8036384C 0036078C 88 03 00 04 */ lbz r0, 4(r3)
/* 80363850 00360790 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363854 00360794 41 82 15 94 */ beq lbl_80364DE8
lbl_80363858:
/* 80363858 00360798 88 7F 00 04 */ lbz r3, 4(r31)
/* 8036385C 0036079C 38 BF 00 05 */ addi r5, r31, 5
/* 80363860 003607A0 38 00 00 00 */ li r0, 0
/* 80363864 003607A4 38 83 FF FF */ addi r4, r3, -1
/* 80363868 003607A8 7C 85 22 14 */ add r4, r5, r4
lbl_8036386C:
/* 8036386C 003607AC 88 64 00 00 */ lbz r3, 0(r4)
/* 80363870 003607B0 28 03 00 09 */ cmplwi r3, 9
/* 80363874 003607B4 40 80 00 10 */ bge lbl_80363884
/* 80363878 003607B8 38 03 00 01 */ addi r0, r3, 1
/* 8036387C 003607BC 98 04 00 00 */ stb r0, 0(r4)
/* 80363880 003607C0 48 00 15 68 */ b lbl_80364DE8
lbl_80363884:
/* 80363884 003607C4 7C 04 28 40 */ cmplw r4, r5
/* 80363888 003607C8 40 82 00 1C */ bne lbl_803638A4
/* 8036388C 003607CC 38 00 00 01 */ li r0, 1
/* 80363890 003607D0 98 04 00 00 */ stb r0, 0(r4)
/* 80363894 003607D4 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363898 003607D8 38 03 00 01 */ addi r0, r3, 1
/* 8036389C 003607DC B0 1F 00 02 */ sth r0, 2(r31)
/* 803638A0 003607E0 48 00 15 48 */ b lbl_80364DE8
lbl_803638A4:
/* 803638A4 003607E4 98 04 00 00 */ stb r0, 0(r4)
/* 803638A8 003607E8 38 84 FF FF */ addi r4, r4, -1
/* 803638AC 003607EC 4B FF FF C0 */ b lbl_8036386C
/* 803638B0 003607F0 48 00 15 38 */ b lbl_80364DE8
/* 803638B4 003607F4 38 00 FF F6 */ li r0, -10
/* 803638B8 003607F8 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 803638BC 003607FC B0 1F 00 02 */ sth r0, 2(r31)
/* 803638C0 00360800 38 80 00 00 */ li r4, 0
/* 803638C4 00360804 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 803638C8 00360808 98 9F 00 00 */ stb r4, 0(r31)
/* 803638CC 0036080C 38 A3 00 7A */ addi r5, r3, 0x7a
/* 803638D0 00360810 48 00 00 1C */ b lbl_803638EC
lbl_803638D4:
/* 803638D4 00360814 88 65 00 00 */ lbz r3, 0(r5)
/* 803638D8 00360818 38 04 00 05 */ addi r0, r4, 5
/* 803638DC 0036081C 38 A5 00 01 */ addi r5, r5, 1
/* 803638E0 00360820 38 84 00 01 */ addi r4, r4, 1
/* 803638E4 00360824 38 63 FF D0 */ addi r3, r3, -48
/* 803638E8 00360828 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803638EC:
/* 803638EC 0036082C 2C 04 00 24 */ cmpwi r4, 0x24
/* 803638F0 00360830 40 80 00 10 */ bge lbl_80363900
/* 803638F4 00360834 88 05 00 00 */ lbz r0, 0(r5)
/* 803638F8 00360838 7C 00 07 75 */ extsb. r0, r0
/* 803638FC 0036083C 40 82 FF D8 */ bne lbl_803638D4
lbl_80363900:
/* 80363900 00360840 98 9F 00 04 */ stb r4, 4(r31)
/* 80363904 00360844 88 65 00 00 */ lbz r3, 0(r5)
/* 80363908 00360848 7C 60 07 75 */ extsb. r0, r3
/* 8036390C 0036084C 41 82 14 DC */ beq lbl_80364DE8
/* 80363910 00360850 7C 60 07 74 */ extsb r0, r3
/* 80363914 00360854 2C 00 00 05 */ cmpwi r0, 5
/* 80363918 00360858 41 80 14 D0 */ blt lbl_80364DE8
/* 8036391C 0036085C 41 81 00 38 */ bgt lbl_80363954
/* 80363920 00360860 38 65 00 01 */ addi r3, r5, 1
/* 80363924 00360864 48 00 00 14 */ b lbl_80363938
lbl_80363928:
/* 80363928 00360868 7C A0 07 74 */ extsb r0, r5
/* 8036392C 0036086C 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363930 00360870 40 82 00 24 */ bne lbl_80363954
/* 80363934 00360874 38 63 00 01 */ addi r3, r3, 1
lbl_80363938:
/* 80363938 00360878 88 A3 00 00 */ lbz r5, 0(r3)
/* 8036393C 0036087C 7C A0 07 75 */ extsb. r0, r5
/* 80363940 00360880 40 82 FF E8 */ bne lbl_80363928
/* 80363944 00360884 7C 7F 22 14 */ add r3, r31, r4
/* 80363948 00360888 88 03 00 04 */ lbz r0, 4(r3)
/* 8036394C 0036088C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363950 00360890 41 82 14 98 */ beq lbl_80364DE8
lbl_80363954:
/* 80363954 00360894 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363958 00360898 38 BF 00 05 */ addi r5, r31, 5
/* 8036395C 0036089C 38 00 00 00 */ li r0, 0
/* 80363960 003608A0 38 83 FF FF */ addi r4, r3, -1
/* 80363964 003608A4 7C 85 22 14 */ add r4, r5, r4
lbl_80363968:
/* 80363968 003608A8 88 64 00 00 */ lbz r3, 0(r4)
/* 8036396C 003608AC 28 03 00 09 */ cmplwi r3, 9
/* 80363970 003608B0 40 80 00 10 */ bge lbl_80363980
/* 80363974 003608B4 38 03 00 01 */ addi r0, r3, 1
/* 80363978 003608B8 98 04 00 00 */ stb r0, 0(r4)
/* 8036397C 003608BC 48 00 14 6C */ b lbl_80364DE8
lbl_80363980:
/* 80363980 003608C0 7C 04 28 40 */ cmplw r4, r5
/* 80363984 003608C4 40 82 00 1C */ bne lbl_803639A0
/* 80363988 003608C8 38 00 00 01 */ li r0, 1
/* 8036398C 003608CC 98 04 00 00 */ stb r0, 0(r4)
/* 80363990 003608D0 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363994 003608D4 38 03 00 01 */ addi r0, r3, 1
/* 80363998 003608D8 B0 1F 00 02 */ sth r0, 2(r31)
/* 8036399C 003608DC 48 00 14 4C */ b lbl_80364DE8
lbl_803639A0:
/* 803639A0 003608E0 98 04 00 00 */ stb r0, 0(r4)
/* 803639A4 003608E4 38 84 FF FF */ addi r4, r4, -1
/* 803639A8 003608E8 4B FF FF C0 */ b lbl_80363968
/* 803639AC 003608EC 48 00 14 3C */ b lbl_80364DE8
/* 803639B0 003608F0 38 00 FF FB */ li r0, -5
/* 803639B4 003608F4 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 803639B8 003608F8 B0 1F 00 02 */ sth r0, 2(r31)
/* 803639BC 003608FC 38 80 00 00 */ li r4, 0
/* 803639C0 00360900 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 803639C4 00360904 98 9F 00 00 */ stb r4, 0(r31)
/* 803639C8 00360908 38 A3 00 92 */ addi r5, r3, 0x92
/* 803639CC 0036090C 48 00 00 1C */ b lbl_803639E8
lbl_803639D0:
/* 803639D0 00360910 88 65 00 00 */ lbz r3, 0(r5)
/* 803639D4 00360914 38 04 00 05 */ addi r0, r4, 5
/* 803639D8 00360918 38 A5 00 01 */ addi r5, r5, 1
/* 803639DC 0036091C 38 84 00 01 */ addi r4, r4, 1
/* 803639E0 00360920 38 63 FF D0 */ addi r3, r3, -48
/* 803639E4 00360924 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803639E8:
/* 803639E8 00360928 2C 04 00 24 */ cmpwi r4, 0x24
/* 803639EC 0036092C 40 80 00 10 */ bge lbl_803639FC
/* 803639F0 00360930 88 05 00 00 */ lbz r0, 0(r5)
/* 803639F4 00360934 7C 00 07 75 */ extsb. r0, r0
/* 803639F8 00360938 40 82 FF D8 */ bne lbl_803639D0
lbl_803639FC:
/* 803639FC 0036093C 98 9F 00 04 */ stb r4, 4(r31)
/* 80363A00 00360940 88 65 00 00 */ lbz r3, 0(r5)
/* 80363A04 00360944 7C 60 07 75 */ extsb. r0, r3
/* 80363A08 00360948 41 82 13 E0 */ beq lbl_80364DE8
/* 80363A0C 0036094C 7C 60 07 74 */ extsb r0, r3
/* 80363A10 00360950 2C 00 00 05 */ cmpwi r0, 5
/* 80363A14 00360954 41 80 13 D4 */ blt lbl_80364DE8
/* 80363A18 00360958 41 81 00 38 */ bgt lbl_80363A50
/* 80363A1C 0036095C 38 65 00 01 */ addi r3, r5, 1
/* 80363A20 00360960 48 00 00 14 */ b lbl_80363A34
lbl_80363A24:
/* 80363A24 00360964 7C A0 07 74 */ extsb r0, r5
/* 80363A28 00360968 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363A2C 0036096C 40 82 00 24 */ bne lbl_80363A50
/* 80363A30 00360970 38 63 00 01 */ addi r3, r3, 1
lbl_80363A34:
/* 80363A34 00360974 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363A38 00360978 7C A0 07 75 */ extsb. r0, r5
/* 80363A3C 0036097C 40 82 FF E8 */ bne lbl_80363A24
/* 80363A40 00360980 7C 7F 22 14 */ add r3, r31, r4
/* 80363A44 00360984 88 03 00 04 */ lbz r0, 4(r3)
/* 80363A48 00360988 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363A4C 0036098C 41 82 13 9C */ beq lbl_80364DE8
lbl_80363A50:
/* 80363A50 00360990 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363A54 00360994 38 BF 00 05 */ addi r5, r31, 5
/* 80363A58 00360998 38 00 00 00 */ li r0, 0
/* 80363A5C 0036099C 38 83 FF FF */ addi r4, r3, -1
/* 80363A60 003609A0 7C 85 22 14 */ add r4, r5, r4
lbl_80363A64:
/* 80363A64 003609A4 88 64 00 00 */ lbz r3, 0(r4)
/* 80363A68 003609A8 28 03 00 09 */ cmplwi r3, 9
/* 80363A6C 003609AC 40 80 00 10 */ bge lbl_80363A7C
/* 80363A70 003609B0 38 03 00 01 */ addi r0, r3, 1
/* 80363A74 003609B4 98 04 00 00 */ stb r0, 0(r4)
/* 80363A78 003609B8 48 00 13 70 */ b lbl_80364DE8
lbl_80363A7C:
/* 80363A7C 003609BC 7C 04 28 40 */ cmplw r4, r5
/* 80363A80 003609C0 40 82 00 1C */ bne lbl_80363A9C
/* 80363A84 003609C4 38 00 00 01 */ li r0, 1
/* 80363A88 003609C8 98 04 00 00 */ stb r0, 0(r4)
/* 80363A8C 003609CC A8 7F 00 02 */ lha r3, 2(r31)
/* 80363A90 003609D0 38 03 00 01 */ addi r0, r3, 1
/* 80363A94 003609D4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363A98 003609D8 48 00 13 50 */ b lbl_80364DE8
lbl_80363A9C:
/* 80363A9C 003609DC 98 04 00 00 */ stb r0, 0(r4)
/* 80363AA0 003609E0 38 84 FF FF */ addi r4, r4, -1
/* 80363AA4 003609E4 4B FF FF C0 */ b lbl_80363A64
/* 80363AA8 003609E8 48 00 13 40 */ b lbl_80364DE8
/* 80363AAC 003609EC 38 00 FF FD */ li r0, -3
/* 80363AB0 003609F0 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80363AB4 003609F4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363AB8 003609F8 38 80 00 00 */ li r4, 0
/* 80363ABC 003609FC 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80363AC0 00360A00 98 9F 00 00 */ stb r4, 0(r31)
/* 80363AC4 00360A04 38 A3 00 9F */ addi r5, r3, 0x9f
/* 80363AC8 00360A08 48 00 00 1C */ b lbl_80363AE4
lbl_80363ACC:
/* 80363ACC 00360A0C 88 65 00 00 */ lbz r3, 0(r5)
/* 80363AD0 00360A10 38 04 00 05 */ addi r0, r4, 5
/* 80363AD4 00360A14 38 A5 00 01 */ addi r5, r5, 1
/* 80363AD8 00360A18 38 84 00 01 */ addi r4, r4, 1
/* 80363ADC 00360A1C 38 63 FF D0 */ addi r3, r3, -48
/* 80363AE0 00360A20 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80363AE4:
/* 80363AE4 00360A24 2C 04 00 24 */ cmpwi r4, 0x24
/* 80363AE8 00360A28 40 80 00 10 */ bge lbl_80363AF8
/* 80363AEC 00360A2C 88 05 00 00 */ lbz r0, 0(r5)
/* 80363AF0 00360A30 7C 00 07 75 */ extsb. r0, r0
/* 80363AF4 00360A34 40 82 FF D8 */ bne lbl_80363ACC
lbl_80363AF8:
/* 80363AF8 00360A38 98 9F 00 04 */ stb r4, 4(r31)
/* 80363AFC 00360A3C 88 65 00 00 */ lbz r3, 0(r5)
/* 80363B00 00360A40 7C 60 07 75 */ extsb. r0, r3
/* 80363B04 00360A44 41 82 12 E4 */ beq lbl_80364DE8
/* 80363B08 00360A48 7C 60 07 74 */ extsb r0, r3
/* 80363B0C 00360A4C 2C 00 00 05 */ cmpwi r0, 5
/* 80363B10 00360A50 41 80 12 D8 */ blt lbl_80364DE8
/* 80363B14 00360A54 41 81 00 38 */ bgt lbl_80363B4C
/* 80363B18 00360A58 38 65 00 01 */ addi r3, r5, 1
/* 80363B1C 00360A5C 48 00 00 14 */ b lbl_80363B30
lbl_80363B20:
/* 80363B20 00360A60 7C A0 07 74 */ extsb r0, r5
/* 80363B24 00360A64 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363B28 00360A68 40 82 00 24 */ bne lbl_80363B4C
/* 80363B2C 00360A6C 38 63 00 01 */ addi r3, r3, 1
lbl_80363B30:
/* 80363B30 00360A70 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363B34 00360A74 7C A0 07 75 */ extsb. r0, r5
/* 80363B38 00360A78 40 82 FF E8 */ bne lbl_80363B20
/* 80363B3C 00360A7C 7C 7F 22 14 */ add r3, r31, r4
/* 80363B40 00360A80 88 03 00 04 */ lbz r0, 4(r3)
/* 80363B44 00360A84 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363B48 00360A88 41 82 12 A0 */ beq lbl_80364DE8
lbl_80363B4C:
/* 80363B4C 00360A8C 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363B50 00360A90 38 BF 00 05 */ addi r5, r31, 5
/* 80363B54 00360A94 38 00 00 00 */ li r0, 0
/* 80363B58 00360A98 38 83 FF FF */ addi r4, r3, -1
/* 80363B5C 00360A9C 7C 85 22 14 */ add r4, r5, r4
lbl_80363B60:
/* 80363B60 00360AA0 88 64 00 00 */ lbz r3, 0(r4)
/* 80363B64 00360AA4 28 03 00 09 */ cmplwi r3, 9
/* 80363B68 00360AA8 40 80 00 10 */ bge lbl_80363B78
/* 80363B6C 00360AAC 38 03 00 01 */ addi r0, r3, 1
/* 80363B70 00360AB0 98 04 00 00 */ stb r0, 0(r4)
/* 80363B74 00360AB4 48 00 12 74 */ b lbl_80364DE8
lbl_80363B78:
/* 80363B78 00360AB8 7C 04 28 40 */ cmplw r4, r5
/* 80363B7C 00360ABC 40 82 00 1C */ bne lbl_80363B98
/* 80363B80 00360AC0 38 00 00 01 */ li r0, 1
/* 80363B84 00360AC4 98 04 00 00 */ stb r0, 0(r4)
/* 80363B88 00360AC8 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363B8C 00360ACC 38 03 00 01 */ addi r0, r3, 1
/* 80363B90 00360AD0 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363B94 00360AD4 48 00 12 54 */ b lbl_80364DE8
lbl_80363B98:
/* 80363B98 00360AD8 98 04 00 00 */ stb r0, 0(r4)
/* 80363B9C 00360ADC 38 84 FF FF */ addi r4, r4, -1
/* 80363BA0 00360AE0 4B FF FF C0 */ b lbl_80363B60
/* 80363BA4 00360AE4 48 00 12 44 */ b lbl_80364DE8
/* 80363BA8 00360AE8 38 00 FF FD */ li r0, -3
/* 80363BAC 00360AEC 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80363BB0 00360AF0 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363BB4 00360AF4 38 80 00 00 */ li r4, 0
/* 80363BB8 00360AF8 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80363BBC 00360AFC 98 9F 00 00 */ stb r4, 0(r31)
/* 80363BC0 00360B00 38 A3 00 A6 */ addi r5, r3, 0xa6
/* 80363BC4 00360B04 48 00 00 1C */ b lbl_80363BE0
lbl_80363BC8:
/* 80363BC8 00360B08 88 65 00 00 */ lbz r3, 0(r5)
/* 80363BCC 00360B0C 38 04 00 05 */ addi r0, r4, 5
/* 80363BD0 00360B10 38 A5 00 01 */ addi r5, r5, 1
/* 80363BD4 00360B14 38 84 00 01 */ addi r4, r4, 1
/* 80363BD8 00360B18 38 63 FF D0 */ addi r3, r3, -48
/* 80363BDC 00360B1C 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80363BE0:
/* 80363BE0 00360B20 2C 04 00 24 */ cmpwi r4, 0x24
/* 80363BE4 00360B24 40 80 00 10 */ bge lbl_80363BF4
/* 80363BE8 00360B28 88 05 00 00 */ lbz r0, 0(r5)
/* 80363BEC 00360B2C 7C 00 07 75 */ extsb. r0, r0
/* 80363BF0 00360B30 40 82 FF D8 */ bne lbl_80363BC8
lbl_80363BF4:
/* 80363BF4 00360B34 98 9F 00 04 */ stb r4, 4(r31)
/* 80363BF8 00360B38 88 65 00 00 */ lbz r3, 0(r5)
/* 80363BFC 00360B3C 7C 60 07 75 */ extsb. r0, r3
/* 80363C00 00360B40 41 82 11 E8 */ beq lbl_80364DE8
/* 80363C04 00360B44 7C 60 07 74 */ extsb r0, r3
/* 80363C08 00360B48 2C 00 00 05 */ cmpwi r0, 5
/* 80363C0C 00360B4C 41 80 11 DC */ blt lbl_80364DE8
/* 80363C10 00360B50 41 81 00 38 */ bgt lbl_80363C48
/* 80363C14 00360B54 38 65 00 01 */ addi r3, r5, 1
/* 80363C18 00360B58 48 00 00 14 */ b lbl_80363C2C
lbl_80363C1C:
/* 80363C1C 00360B5C 7C A0 07 74 */ extsb r0, r5
/* 80363C20 00360B60 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363C24 00360B64 40 82 00 24 */ bne lbl_80363C48
/* 80363C28 00360B68 38 63 00 01 */ addi r3, r3, 1
lbl_80363C2C:
/* 80363C2C 00360B6C 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363C30 00360B70 7C A0 07 75 */ extsb. r0, r5
/* 80363C34 00360B74 40 82 FF E8 */ bne lbl_80363C1C
/* 80363C38 00360B78 7C 7F 22 14 */ add r3, r31, r4
/* 80363C3C 00360B7C 88 03 00 04 */ lbz r0, 4(r3)
/* 80363C40 00360B80 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363C44 00360B84 41 82 11 A4 */ beq lbl_80364DE8
lbl_80363C48:
/* 80363C48 00360B88 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363C4C 00360B8C 38 BF 00 05 */ addi r5, r31, 5
/* 80363C50 00360B90 38 00 00 00 */ li r0, 0
/* 80363C54 00360B94 38 83 FF FF */ addi r4, r3, -1
/* 80363C58 00360B98 7C 85 22 14 */ add r4, r5, r4
lbl_80363C5C:
/* 80363C5C 00360B9C 88 64 00 00 */ lbz r3, 0(r4)
/* 80363C60 00360BA0 28 03 00 09 */ cmplwi r3, 9
/* 80363C64 00360BA4 40 80 00 10 */ bge lbl_80363C74
/* 80363C68 00360BA8 38 03 00 01 */ addi r0, r3, 1
/* 80363C6C 00360BAC 98 04 00 00 */ stb r0, 0(r4)
/* 80363C70 00360BB0 48 00 11 78 */ b lbl_80364DE8
lbl_80363C74:
/* 80363C74 00360BB4 7C 04 28 40 */ cmplw r4, r5
/* 80363C78 00360BB8 40 82 00 1C */ bne lbl_80363C94
/* 80363C7C 00360BBC 38 00 00 01 */ li r0, 1
/* 80363C80 00360BC0 98 04 00 00 */ stb r0, 0(r4)
/* 80363C84 00360BC4 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363C88 00360BC8 38 03 00 01 */ addi r0, r3, 1
/* 80363C8C 00360BCC B0 1F 00 02 */ sth r0, 2(r31)
/* 80363C90 00360BD0 48 00 11 58 */ b lbl_80364DE8
lbl_80363C94:
/* 80363C94 00360BD4 98 04 00 00 */ stb r0, 0(r4)
/* 80363C98 00360BD8 38 84 FF FF */ addi r4, r4, -1
/* 80363C9C 00360BDC 4B FF FF C0 */ b lbl_80363C5C
/* 80363CA0 00360BE0 48 00 11 48 */ b lbl_80364DE8
/* 80363CA4 00360BE4 38 00 FF FE */ li r0, -2
/* 80363CA8 00360BE8 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80363CAC 00360BEC B0 1F 00 02 */ sth r0, 2(r31)
/* 80363CB0 00360BF0 38 80 00 00 */ li r4, 0
/* 80363CB4 00360BF4 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80363CB8 00360BF8 98 9F 00 00 */ stb r4, 0(r31)
/* 80363CBC 00360BFC 38 A3 00 AC */ addi r5, r3, 0xac
/* 80363CC0 00360C00 48 00 00 1C */ b lbl_80363CDC
lbl_80363CC4:
/* 80363CC4 00360C04 88 65 00 00 */ lbz r3, 0(r5)
/* 80363CC8 00360C08 38 04 00 05 */ addi r0, r4, 5
/* 80363CCC 00360C0C 38 A5 00 01 */ addi r5, r5, 1
/* 80363CD0 00360C10 38 84 00 01 */ addi r4, r4, 1
/* 80363CD4 00360C14 38 63 FF D0 */ addi r3, r3, -48
/* 80363CD8 00360C18 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80363CDC:
/* 80363CDC 00360C1C 2C 04 00 24 */ cmpwi r4, 0x24
/* 80363CE0 00360C20 40 80 00 10 */ bge lbl_80363CF0
/* 80363CE4 00360C24 88 05 00 00 */ lbz r0, 0(r5)
/* 80363CE8 00360C28 7C 00 07 75 */ extsb. r0, r0
/* 80363CEC 00360C2C 40 82 FF D8 */ bne lbl_80363CC4
lbl_80363CF0:
/* 80363CF0 00360C30 98 9F 00 04 */ stb r4, 4(r31)
/* 80363CF4 00360C34 88 65 00 00 */ lbz r3, 0(r5)
/* 80363CF8 00360C38 7C 60 07 75 */ extsb. r0, r3
/* 80363CFC 00360C3C 41 82 10 EC */ beq lbl_80364DE8
/* 80363D00 00360C40 7C 60 07 74 */ extsb r0, r3
/* 80363D04 00360C44 2C 00 00 05 */ cmpwi r0, 5
/* 80363D08 00360C48 41 80 10 E0 */ blt lbl_80364DE8
/* 80363D0C 00360C4C 41 81 00 38 */ bgt lbl_80363D44
/* 80363D10 00360C50 38 65 00 01 */ addi r3, r5, 1
/* 80363D14 00360C54 48 00 00 14 */ b lbl_80363D28
lbl_80363D18:
/* 80363D18 00360C58 7C A0 07 74 */ extsb r0, r5
/* 80363D1C 00360C5C 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363D20 00360C60 40 82 00 24 */ bne lbl_80363D44
/* 80363D24 00360C64 38 63 00 01 */ addi r3, r3, 1
lbl_80363D28:
/* 80363D28 00360C68 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363D2C 00360C6C 7C A0 07 75 */ extsb. r0, r5
/* 80363D30 00360C70 40 82 FF E8 */ bne lbl_80363D18
/* 80363D34 00360C74 7C 7F 22 14 */ add r3, r31, r4
/* 80363D38 00360C78 88 03 00 04 */ lbz r0, 4(r3)
/* 80363D3C 00360C7C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363D40 00360C80 41 82 10 A8 */ beq lbl_80364DE8
lbl_80363D44:
/* 80363D44 00360C84 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363D48 00360C88 38 BF 00 05 */ addi r5, r31, 5
/* 80363D4C 00360C8C 38 00 00 00 */ li r0, 0
/* 80363D50 00360C90 38 83 FF FF */ addi r4, r3, -1
/* 80363D54 00360C94 7C 85 22 14 */ add r4, r5, r4
lbl_80363D58:
/* 80363D58 00360C98 88 64 00 00 */ lbz r3, 0(r4)
/* 80363D5C 00360C9C 28 03 00 09 */ cmplwi r3, 9
/* 80363D60 00360CA0 40 80 00 10 */ bge lbl_80363D70
/* 80363D64 00360CA4 38 03 00 01 */ addi r0, r3, 1
/* 80363D68 00360CA8 98 04 00 00 */ stb r0, 0(r4)
/* 80363D6C 00360CAC 48 00 10 7C */ b lbl_80364DE8
lbl_80363D70:
/* 80363D70 00360CB0 7C 04 28 40 */ cmplw r4, r5
/* 80363D74 00360CB4 40 82 00 1C */ bne lbl_80363D90
/* 80363D78 00360CB8 38 00 00 01 */ li r0, 1
/* 80363D7C 00360CBC 98 04 00 00 */ stb r0, 0(r4)
/* 80363D80 00360CC0 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363D84 00360CC4 38 03 00 01 */ addi r0, r3, 1
/* 80363D88 00360CC8 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363D8C 00360CCC 48 00 10 5C */ b lbl_80364DE8
lbl_80363D90:
/* 80363D90 00360CD0 98 04 00 00 */ stb r0, 0(r4)
/* 80363D94 00360CD4 38 84 FF FF */ addi r4, r4, -1
/* 80363D98 00360CD8 4B FF FF C0 */ b lbl_80363D58
/* 80363D9C 00360CDC 48 00 10 4C */ b lbl_80364DE8
/* 80363DA0 00360CE0 38 00 FF FE */ li r0, -2
/* 80363DA4 00360CE4 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80363DA8 00360CE8 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363DAC 00360CEC 38 80 00 00 */ li r4, 0
/* 80363DB0 00360CF0 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80363DB4 00360CF4 98 9F 00 00 */ stb r4, 0(r31)
/* 80363DB8 00360CF8 38 A3 00 B2 */ addi r5, r3, 0xb2
/* 80363DBC 00360CFC 48 00 00 1C */ b lbl_80363DD8
lbl_80363DC0:
/* 80363DC0 00360D00 88 65 00 00 */ lbz r3, 0(r5)
/* 80363DC4 00360D04 38 04 00 05 */ addi r0, r4, 5
/* 80363DC8 00360D08 38 A5 00 01 */ addi r5, r5, 1
/* 80363DCC 00360D0C 38 84 00 01 */ addi r4, r4, 1
/* 80363DD0 00360D10 38 63 FF D0 */ addi r3, r3, -48
/* 80363DD4 00360D14 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80363DD8:
/* 80363DD8 00360D18 2C 04 00 24 */ cmpwi r4, 0x24
/* 80363DDC 00360D1C 40 80 00 10 */ bge lbl_80363DEC
/* 80363DE0 00360D20 88 05 00 00 */ lbz r0, 0(r5)
/* 80363DE4 00360D24 7C 00 07 75 */ extsb. r0, r0
/* 80363DE8 00360D28 40 82 FF D8 */ bne lbl_80363DC0
lbl_80363DEC:
/* 80363DEC 00360D2C 98 9F 00 04 */ stb r4, 4(r31)
/* 80363DF0 00360D30 88 65 00 00 */ lbz r3, 0(r5)
/* 80363DF4 00360D34 7C 60 07 75 */ extsb. r0, r3
/* 80363DF8 00360D38 41 82 0F F0 */ beq lbl_80364DE8
/* 80363DFC 00360D3C 7C 60 07 74 */ extsb r0, r3
/* 80363E00 00360D40 2C 00 00 05 */ cmpwi r0, 5
/* 80363E04 00360D44 41 80 0F E4 */ blt lbl_80364DE8
/* 80363E08 00360D48 41 81 00 38 */ bgt lbl_80363E40
/* 80363E0C 00360D4C 38 65 00 01 */ addi r3, r5, 1
/* 80363E10 00360D50 48 00 00 14 */ b lbl_80363E24
lbl_80363E14:
/* 80363E14 00360D54 7C A0 07 74 */ extsb r0, r5
/* 80363E18 00360D58 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363E1C 00360D5C 40 82 00 24 */ bne lbl_80363E40
/* 80363E20 00360D60 38 63 00 01 */ addi r3, r3, 1
lbl_80363E24:
/* 80363E24 00360D64 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363E28 00360D68 7C A0 07 75 */ extsb. r0, r5
/* 80363E2C 00360D6C 40 82 FF E8 */ bne lbl_80363E14
/* 80363E30 00360D70 7C 7F 22 14 */ add r3, r31, r4
/* 80363E34 00360D74 88 03 00 04 */ lbz r0, 4(r3)
/* 80363E38 00360D78 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363E3C 00360D7C 41 82 0F AC */ beq lbl_80364DE8
lbl_80363E40:
/* 80363E40 00360D80 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363E44 00360D84 38 BF 00 05 */ addi r5, r31, 5
/* 80363E48 00360D88 38 00 00 00 */ li r0, 0
/* 80363E4C 00360D8C 38 83 FF FF */ addi r4, r3, -1
/* 80363E50 00360D90 7C 85 22 14 */ add r4, r5, r4
lbl_80363E54:
/* 80363E54 00360D94 88 64 00 00 */ lbz r3, 0(r4)
/* 80363E58 00360D98 28 03 00 09 */ cmplwi r3, 9
/* 80363E5C 00360D9C 40 80 00 10 */ bge lbl_80363E6C
/* 80363E60 00360DA0 38 03 00 01 */ addi r0, r3, 1
/* 80363E64 00360DA4 98 04 00 00 */ stb r0, 0(r4)
/* 80363E68 00360DA8 48 00 0F 80 */ b lbl_80364DE8
lbl_80363E6C:
/* 80363E6C 00360DAC 7C 04 28 40 */ cmplw r4, r5
/* 80363E70 00360DB0 40 82 00 1C */ bne lbl_80363E8C
/* 80363E74 00360DB4 38 00 00 01 */ li r0, 1
/* 80363E78 00360DB8 98 04 00 00 */ stb r0, 0(r4)
/* 80363E7C 00360DBC A8 7F 00 02 */ lha r3, 2(r31)
/* 80363E80 00360DC0 38 03 00 01 */ addi r0, r3, 1
/* 80363E84 00360DC4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363E88 00360DC8 48 00 0F 60 */ b lbl_80364DE8
lbl_80363E8C:
/* 80363E8C 00360DCC 98 04 00 00 */ stb r0, 0(r4)
/* 80363E90 00360DD0 38 84 FF FF */ addi r4, r4, -1
/* 80363E94 00360DD4 4B FF FF C0 */ b lbl_80363E54
/* 80363E98 00360DD8 48 00 0F 50 */ b lbl_80364DE8
/* 80363E9C 00360DDC 38 00 FF FE */ li r0, -2
/* 80363EA0 00360DE0 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80363EA4 00360DE4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363EA8 00360DE8 38 80 00 00 */ li r4, 0
/* 80363EAC 00360DEC 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80363EB0 00360DF0 98 9F 00 00 */ stb r4, 0(r31)
/* 80363EB4 00360DF4 38 A3 00 B7 */ addi r5, r3, 0xb7
/* 80363EB8 00360DF8 48 00 00 1C */ b lbl_80363ED4
lbl_80363EBC:
/* 80363EBC 00360DFC 88 65 00 00 */ lbz r3, 0(r5)
/* 80363EC0 00360E00 38 04 00 05 */ addi r0, r4, 5
/* 80363EC4 00360E04 38 A5 00 01 */ addi r5, r5, 1
/* 80363EC8 00360E08 38 84 00 01 */ addi r4, r4, 1
/* 80363ECC 00360E0C 38 63 FF D0 */ addi r3, r3, -48
/* 80363ED0 00360E10 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80363ED4:
/* 80363ED4 00360E14 2C 04 00 24 */ cmpwi r4, 0x24
/* 80363ED8 00360E18 40 80 00 10 */ bge lbl_80363EE8
/* 80363EDC 00360E1C 88 05 00 00 */ lbz r0, 0(r5)
/* 80363EE0 00360E20 7C 00 07 75 */ extsb. r0, r0
/* 80363EE4 00360E24 40 82 FF D8 */ bne lbl_80363EBC
lbl_80363EE8:
/* 80363EE8 00360E28 98 9F 00 04 */ stb r4, 4(r31)
/* 80363EEC 00360E2C 88 65 00 00 */ lbz r3, 0(r5)
/* 80363EF0 00360E30 7C 60 07 75 */ extsb. r0, r3
/* 80363EF4 00360E34 41 82 0E F4 */ beq lbl_80364DE8
/* 80363EF8 00360E38 7C 60 07 74 */ extsb r0, r3
/* 80363EFC 00360E3C 2C 00 00 05 */ cmpwi r0, 5
/* 80363F00 00360E40 41 80 0E E8 */ blt lbl_80364DE8
/* 80363F04 00360E44 41 81 00 38 */ bgt lbl_80363F3C
/* 80363F08 00360E48 38 65 00 01 */ addi r3, r5, 1
/* 80363F0C 00360E4C 48 00 00 14 */ b lbl_80363F20
lbl_80363F10:
/* 80363F10 00360E50 7C A0 07 74 */ extsb r0, r5
/* 80363F14 00360E54 2C 00 00 30 */ cmpwi r0, 0x30
/* 80363F18 00360E58 40 82 00 24 */ bne lbl_80363F3C
/* 80363F1C 00360E5C 38 63 00 01 */ addi r3, r3, 1
lbl_80363F20:
/* 80363F20 00360E60 88 A3 00 00 */ lbz r5, 0(r3)
/* 80363F24 00360E64 7C A0 07 75 */ extsb. r0, r5
/* 80363F28 00360E68 40 82 FF E8 */ bne lbl_80363F10
/* 80363F2C 00360E6C 7C 7F 22 14 */ add r3, r31, r4
/* 80363F30 00360E70 88 03 00 04 */ lbz r0, 4(r3)
/* 80363F34 00360E74 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80363F38 00360E78 41 82 0E B0 */ beq lbl_80364DE8
lbl_80363F3C:
/* 80363F3C 00360E7C 88 7F 00 04 */ lbz r3, 4(r31)
/* 80363F40 00360E80 38 BF 00 05 */ addi r5, r31, 5
/* 80363F44 00360E84 38 00 00 00 */ li r0, 0
/* 80363F48 00360E88 38 83 FF FF */ addi r4, r3, -1
/* 80363F4C 00360E8C 7C 85 22 14 */ add r4, r5, r4
lbl_80363F50:
/* 80363F50 00360E90 88 64 00 00 */ lbz r3, 0(r4)
/* 80363F54 00360E94 28 03 00 09 */ cmplwi r3, 9
/* 80363F58 00360E98 40 80 00 10 */ bge lbl_80363F68
/* 80363F5C 00360E9C 38 03 00 01 */ addi r0, r3, 1
/* 80363F60 00360EA0 98 04 00 00 */ stb r0, 0(r4)
/* 80363F64 00360EA4 48 00 0E 84 */ b lbl_80364DE8
lbl_80363F68:
/* 80363F68 00360EA8 7C 04 28 40 */ cmplw r4, r5
/* 80363F6C 00360EAC 40 82 00 1C */ bne lbl_80363F88
/* 80363F70 00360EB0 38 00 00 01 */ li r0, 1
/* 80363F74 00360EB4 98 04 00 00 */ stb r0, 0(r4)
/* 80363F78 00360EB8 A8 7F 00 02 */ lha r3, 2(r31)
/* 80363F7C 00360EBC 38 03 00 01 */ addi r0, r3, 1
/* 80363F80 00360EC0 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363F84 00360EC4 48 00 0E 64 */ b lbl_80364DE8
lbl_80363F88:
/* 80363F88 00360EC8 98 04 00 00 */ stb r0, 0(r4)
/* 80363F8C 00360ECC 38 84 FF FF */ addi r4, r4, -1
/* 80363F90 00360ED0 4B FF FF C0 */ b lbl_80363F50
/* 80363F94 00360ED4 48 00 0E 54 */ b lbl_80364DE8
/* 80363F98 00360ED8 38 00 FF FF */ li r0, -1
/* 80363F9C 00360EDC 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80363FA0 00360EE0 B0 1F 00 02 */ sth r0, 2(r31)
/* 80363FA4 00360EE4 38 80 00 00 */ li r4, 0
/* 80363FA8 00360EE8 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80363FAC 00360EEC 98 9F 00 00 */ stb r4, 0(r31)
/* 80363FB0 00360EF0 38 A3 00 BB */ addi r5, r3, 0xbb
/* 80363FB4 00360EF4 48 00 00 1C */ b lbl_80363FD0
lbl_80363FB8:
/* 80363FB8 00360EF8 88 65 00 00 */ lbz r3, 0(r5)
/* 80363FBC 00360EFC 38 04 00 05 */ addi r0, r4, 5
/* 80363FC0 00360F00 38 A5 00 01 */ addi r5, r5, 1
/* 80363FC4 00360F04 38 84 00 01 */ addi r4, r4, 1
/* 80363FC8 00360F08 38 63 FF D0 */ addi r3, r3, -48
/* 80363FCC 00360F0C 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80363FD0:
/* 80363FD0 00360F10 2C 04 00 24 */ cmpwi r4, 0x24
/* 80363FD4 00360F14 40 80 00 10 */ bge lbl_80363FE4
/* 80363FD8 00360F18 88 05 00 00 */ lbz r0, 0(r5)
/* 80363FDC 00360F1C 7C 00 07 75 */ extsb. r0, r0
/* 80363FE0 00360F20 40 82 FF D8 */ bne lbl_80363FB8
lbl_80363FE4:
/* 80363FE4 00360F24 98 9F 00 04 */ stb r4, 4(r31)
/* 80363FE8 00360F28 88 65 00 00 */ lbz r3, 0(r5)
/* 80363FEC 00360F2C 7C 60 07 75 */ extsb. r0, r3
/* 80363FF0 00360F30 41 82 0D F8 */ beq lbl_80364DE8
/* 80363FF4 00360F34 7C 60 07 74 */ extsb r0, r3
/* 80363FF8 00360F38 2C 00 00 05 */ cmpwi r0, 5
/* 80363FFC 00360F3C 41 80 0D EC */ blt lbl_80364DE8
/* 80364000 00360F40 41 81 00 38 */ bgt lbl_80364038
/* 80364004 00360F44 38 65 00 01 */ addi r3, r5, 1
/* 80364008 00360F48 48 00 00 14 */ b lbl_8036401C
lbl_8036400C:
/* 8036400C 00360F4C 7C A0 07 74 */ extsb r0, r5
/* 80364010 00360F50 2C 00 00 30 */ cmpwi r0, 0x30
/* 80364014 00360F54 40 82 00 24 */ bne lbl_80364038
/* 80364018 00360F58 38 63 00 01 */ addi r3, r3, 1
lbl_8036401C:
/* 8036401C 00360F5C 88 A3 00 00 */ lbz r5, 0(r3)
/* 80364020 00360F60 7C A0 07 75 */ extsb. r0, r5
/* 80364024 00360F64 40 82 FF E8 */ bne lbl_8036400C
/* 80364028 00360F68 7C 7F 22 14 */ add r3, r31, r4
/* 8036402C 00360F6C 88 03 00 04 */ lbz r0, 4(r3)
/* 80364030 00360F70 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364034 00360F74 41 82 0D B4 */ beq lbl_80364DE8
lbl_80364038:
/* 80364038 00360F78 88 7F 00 04 */ lbz r3, 4(r31)
/* 8036403C 00360F7C 38 BF 00 05 */ addi r5, r31, 5
/* 80364040 00360F80 38 00 00 00 */ li r0, 0
/* 80364044 00360F84 38 83 FF FF */ addi r4, r3, -1
/* 80364048 00360F88 7C 85 22 14 */ add r4, r5, r4
lbl_8036404C:
/* 8036404C 00360F8C 88 64 00 00 */ lbz r3, 0(r4)
/* 80364050 00360F90 28 03 00 09 */ cmplwi r3, 9
/* 80364054 00360F94 40 80 00 10 */ bge lbl_80364064
/* 80364058 00360F98 38 03 00 01 */ addi r0, r3, 1
/* 8036405C 00360F9C 98 04 00 00 */ stb r0, 0(r4)
/* 80364060 00360FA0 48 00 0D 88 */ b lbl_80364DE8
lbl_80364064:
/* 80364064 00360FA4 7C 04 28 40 */ cmplw r4, r5
/* 80364068 00360FA8 40 82 00 1C */ bne lbl_80364084
/* 8036406C 00360FAC 38 00 00 01 */ li r0, 1
/* 80364070 00360FB0 98 04 00 00 */ stb r0, 0(r4)
/* 80364074 00360FB4 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364078 00360FB8 38 03 00 01 */ addi r0, r3, 1
/* 8036407C 00360FBC B0 1F 00 02 */ sth r0, 2(r31)
/* 80364080 00360FC0 48 00 0D 68 */ b lbl_80364DE8
lbl_80364084:
/* 80364084 00360FC4 98 04 00 00 */ stb r0, 0(r4)
/* 80364088 00360FC8 38 84 FF FF */ addi r4, r4, -1
/* 8036408C 00360FCC 4B FF FF C0 */ b lbl_8036404C
/* 80364090 00360FD0 48 00 0D 58 */ b lbl_80364DE8
/* 80364094 00360FD4 38 00 FF FF */ li r0, -1
/* 80364098 00360FD8 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 8036409C 00360FDC B0 1F 00 02 */ sth r0, 2(r31)
/* 803640A0 00360FE0 38 80 00 00 */ li r4, 0
/* 803640A4 00360FE4 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 803640A8 00360FE8 98 9F 00 00 */ stb r4, 0(r31)
/* 803640AC 00360FEC 38 A3 00 BF */ addi r5, r3, 0xbf
/* 803640B0 00360FF0 48 00 00 1C */ b lbl_803640CC
lbl_803640B4:
/* 803640B4 00360FF4 88 65 00 00 */ lbz r3, 0(r5)
/* 803640B8 00360FF8 38 04 00 05 */ addi r0, r4, 5
/* 803640BC 00360FFC 38 A5 00 01 */ addi r5, r5, 1
/* 803640C0 00361000 38 84 00 01 */ addi r4, r4, 1
/* 803640C4 00361004 38 63 FF D0 */ addi r3, r3, -48
/* 803640C8 00361008 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803640CC:
/* 803640CC 0036100C 2C 04 00 24 */ cmpwi r4, 0x24
/* 803640D0 00361010 40 80 00 10 */ bge lbl_803640E0
/* 803640D4 00361014 88 05 00 00 */ lbz r0, 0(r5)
/* 803640D8 00361018 7C 00 07 75 */ extsb. r0, r0
/* 803640DC 0036101C 40 82 FF D8 */ bne lbl_803640B4
lbl_803640E0:
/* 803640E0 00361020 98 9F 00 04 */ stb r4, 4(r31)
/* 803640E4 00361024 88 65 00 00 */ lbz r3, 0(r5)
/* 803640E8 00361028 7C 60 07 75 */ extsb. r0, r3
/* 803640EC 0036102C 41 82 0C FC */ beq lbl_80364DE8
/* 803640F0 00361030 7C 60 07 74 */ extsb r0, r3
/* 803640F4 00361034 2C 00 00 05 */ cmpwi r0, 5
/* 803640F8 00361038 41 80 0C F0 */ blt lbl_80364DE8
/* 803640FC 0036103C 41 81 00 38 */ bgt lbl_80364134
/* 80364100 00361040 38 65 00 01 */ addi r3, r5, 1
/* 80364104 00361044 48 00 00 14 */ b lbl_80364118
lbl_80364108:
/* 80364108 00361048 7C A0 07 74 */ extsb r0, r5
/* 8036410C 0036104C 2C 00 00 30 */ cmpwi r0, 0x30
/* 80364110 00361050 40 82 00 24 */ bne lbl_80364134
/* 80364114 00361054 38 63 00 01 */ addi r3, r3, 1
lbl_80364118:
/* 80364118 00361058 88 A3 00 00 */ lbz r5, 0(r3)
/* 8036411C 0036105C 7C A0 07 75 */ extsb. r0, r5
/* 80364120 00361060 40 82 FF E8 */ bne lbl_80364108
/* 80364124 00361064 7C 7F 22 14 */ add r3, r31, r4
/* 80364128 00361068 88 03 00 04 */ lbz r0, 4(r3)
/* 8036412C 0036106C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364130 00361070 41 82 0C B8 */ beq lbl_80364DE8
lbl_80364134:
/* 80364134 00361074 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364138 00361078 38 BF 00 05 */ addi r5, r31, 5
/* 8036413C 0036107C 38 00 00 00 */ li r0, 0
/* 80364140 00361080 38 83 FF FF */ addi r4, r3, -1
/* 80364144 00361084 7C 85 22 14 */ add r4, r5, r4
lbl_80364148:
/* 80364148 00361088 88 64 00 00 */ lbz r3, 0(r4)
/* 8036414C 0036108C 28 03 00 09 */ cmplwi r3, 9
/* 80364150 00361090 40 80 00 10 */ bge lbl_80364160
/* 80364154 00361094 38 03 00 01 */ addi r0, r3, 1
/* 80364158 00361098 98 04 00 00 */ stb r0, 0(r4)
/* 8036415C 0036109C 48 00 0C 8C */ b lbl_80364DE8
lbl_80364160:
/* 80364160 003610A0 7C 04 28 40 */ cmplw r4, r5
/* 80364164 003610A4 40 82 00 1C */ bne lbl_80364180
/* 80364168 003610A8 38 00 00 01 */ li r0, 1
/* 8036416C 003610AC 98 04 00 00 */ stb r0, 0(r4)
/* 80364170 003610B0 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364174 003610B4 38 03 00 01 */ addi r0, r3, 1
/* 80364178 003610B8 B0 1F 00 02 */ sth r0, 2(r31)
/* 8036417C 003610BC 48 00 0C 6C */ b lbl_80364DE8
lbl_80364180:
/* 80364180 003610C0 98 04 00 00 */ stb r0, 0(r4)
/* 80364184 003610C4 38 84 FF FF */ addi r4, r4, -1
/* 80364188 003610C8 4B FF FF C0 */ b lbl_80364148
/* 8036418C 003610CC 48 00 0C 5C */ b lbl_80364DE8
/* 80364190 003610D0 38 00 FF FF */ li r0, -1
/* 80364194 003610D4 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364198 003610D8 B0 1F 00 02 */ sth r0, 2(r31)
/* 8036419C 003610DC 38 80 00 00 */ li r4, 0
/* 803641A0 003610E0 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 803641A4 003610E4 98 9F 00 00 */ stb r4, 0(r31)
/* 803641A8 003610E8 38 A3 00 C2 */ addi r5, r3, 0xc2
/* 803641AC 003610EC 48 00 00 1C */ b lbl_803641C8
lbl_803641B0:
/* 803641B0 003610F0 88 65 00 00 */ lbz r3, 0(r5)
/* 803641B4 003610F4 38 04 00 05 */ addi r0, r4, 5
/* 803641B8 003610F8 38 A5 00 01 */ addi r5, r5, 1
/* 803641BC 003610FC 38 84 00 01 */ addi r4, r4, 1
/* 803641C0 00361100 38 63 FF D0 */ addi r3, r3, -48
/* 803641C4 00361104 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803641C8:
/* 803641C8 00361108 2C 04 00 24 */ cmpwi r4, 0x24
/* 803641CC 0036110C 40 80 00 10 */ bge lbl_803641DC
/* 803641D0 00361110 88 05 00 00 */ lbz r0, 0(r5)
/* 803641D4 00361114 7C 00 07 75 */ extsb. r0, r0
/* 803641D8 00361118 40 82 FF D8 */ bne lbl_803641B0
lbl_803641DC:
/* 803641DC 0036111C 98 9F 00 04 */ stb r4, 4(r31)
/* 803641E0 00361120 88 65 00 00 */ lbz r3, 0(r5)
/* 803641E4 00361124 7C 60 07 75 */ extsb. r0, r3
/* 803641E8 00361128 41 82 0C 00 */ beq lbl_80364DE8
/* 803641EC 0036112C 7C 60 07 74 */ extsb r0, r3
/* 803641F0 00361130 2C 00 00 05 */ cmpwi r0, 5
/* 803641F4 00361134 41 80 0B F4 */ blt lbl_80364DE8
/* 803641F8 00361138 41 81 00 38 */ bgt lbl_80364230
/* 803641FC 0036113C 38 65 00 01 */ addi r3, r5, 1
/* 80364200 00361140 48 00 00 14 */ b lbl_80364214
lbl_80364204:
/* 80364204 00361144 7C A0 07 74 */ extsb r0, r5
/* 80364208 00361148 2C 00 00 30 */ cmpwi r0, 0x30
/* 8036420C 0036114C 40 82 00 24 */ bne lbl_80364230
/* 80364210 00361150 38 63 00 01 */ addi r3, r3, 1
lbl_80364214:
/* 80364214 00361154 88 A3 00 00 */ lbz r5, 0(r3)
/* 80364218 00361158 7C A0 07 75 */ extsb. r0, r5
/* 8036421C 0036115C 40 82 FF E8 */ bne lbl_80364204
/* 80364220 00361160 7C 7F 22 14 */ add r3, r31, r4
/* 80364224 00361164 88 03 00 04 */ lbz r0, 4(r3)
/* 80364228 00361168 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8036422C 0036116C 41 82 0B BC */ beq lbl_80364DE8
lbl_80364230:
/* 80364230 00361170 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364234 00361174 38 BF 00 05 */ addi r5, r31, 5
/* 80364238 00361178 38 00 00 00 */ li r0, 0
/* 8036423C 0036117C 38 83 FF FF */ addi r4, r3, -1
/* 80364240 00361180 7C 85 22 14 */ add r4, r5, r4
lbl_80364244:
/* 80364244 00361184 88 64 00 00 */ lbz r3, 0(r4)
/* 80364248 00361188 28 03 00 09 */ cmplwi r3, 9
/* 8036424C 0036118C 40 80 00 10 */ bge lbl_8036425C
/* 80364250 00361190 38 03 00 01 */ addi r0, r3, 1
/* 80364254 00361194 98 04 00 00 */ stb r0, 0(r4)
/* 80364258 00361198 48 00 0B 90 */ b lbl_80364DE8
lbl_8036425C:
/* 8036425C 0036119C 7C 04 28 40 */ cmplw r4, r5
/* 80364260 003611A0 40 82 00 1C */ bne lbl_8036427C
/* 80364264 003611A4 38 00 00 01 */ li r0, 1
/* 80364268 003611A8 98 04 00 00 */ stb r0, 0(r4)
/* 8036426C 003611AC A8 7F 00 02 */ lha r3, 2(r31)
/* 80364270 003611B0 38 03 00 01 */ addi r0, r3, 1
/* 80364274 003611B4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364278 003611B8 48 00 0B 70 */ b lbl_80364DE8
lbl_8036427C:
/* 8036427C 003611BC 98 04 00 00 */ stb r0, 0(r4)
/* 80364280 003611C0 38 84 FF FF */ addi r4, r4, -1
/* 80364284 003611C4 4B FF FF C0 */ b lbl_80364244
/* 80364288 003611C8 48 00 0B 60 */ b lbl_80364DE8
/* 8036428C 003611CC 38 80 00 00 */ li r4, 0
/* 80364290 003611D0 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364294 003611D4 B0 9F 00 02 */ sth r4, 2(r31)
/* 80364298 003611D8 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 8036429C 003611DC 38 A3 00 C4 */ addi r5, r3, 0xc4
/* 803642A0 003611E0 98 9F 00 00 */ stb r4, 0(r31)
/* 803642A4 003611E4 48 00 00 1C */ b lbl_803642C0
lbl_803642A8:
/* 803642A8 003611E8 88 65 00 00 */ lbz r3, 0(r5)
/* 803642AC 003611EC 38 04 00 05 */ addi r0, r4, 5
/* 803642B0 003611F0 38 A5 00 01 */ addi r5, r5, 1
/* 803642B4 003611F4 38 84 00 01 */ addi r4, r4, 1
/* 803642B8 003611F8 38 63 FF D0 */ addi r3, r3, -48
/* 803642BC 003611FC 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803642C0:
/* 803642C0 00361200 2C 04 00 24 */ cmpwi r4, 0x24
/* 803642C4 00361204 40 80 00 10 */ bge lbl_803642D4
/* 803642C8 00361208 88 05 00 00 */ lbz r0, 0(r5)
/* 803642CC 0036120C 7C 00 07 75 */ extsb. r0, r0
/* 803642D0 00361210 40 82 FF D8 */ bne lbl_803642A8
lbl_803642D4:
/* 803642D4 00361214 98 9F 00 04 */ stb r4, 4(r31)
/* 803642D8 00361218 88 65 00 00 */ lbz r3, 0(r5)
/* 803642DC 0036121C 7C 60 07 75 */ extsb. r0, r3
/* 803642E0 00361220 41 82 0B 08 */ beq lbl_80364DE8
/* 803642E4 00361224 7C 60 07 74 */ extsb r0, r3
/* 803642E8 00361228 2C 00 00 05 */ cmpwi r0, 5
/* 803642EC 0036122C 41 80 0A FC */ blt lbl_80364DE8
/* 803642F0 00361230 41 81 00 38 */ bgt lbl_80364328
/* 803642F4 00361234 38 65 00 01 */ addi r3, r5, 1
/* 803642F8 00361238 48 00 00 14 */ b lbl_8036430C
lbl_803642FC:
/* 803642FC 0036123C 7C A0 07 74 */ extsb r0, r5
/* 80364300 00361240 2C 00 00 30 */ cmpwi r0, 0x30
/* 80364304 00361244 40 82 00 24 */ bne lbl_80364328
/* 80364308 00361248 38 63 00 01 */ addi r3, r3, 1
lbl_8036430C:
/* 8036430C 0036124C 88 A3 00 00 */ lbz r5, 0(r3)
/* 80364310 00361250 7C A0 07 75 */ extsb. r0, r5
/* 80364314 00361254 40 82 FF E8 */ bne lbl_803642FC
/* 80364318 00361258 7C 7F 22 14 */ add r3, r31, r4
/* 8036431C 0036125C 88 03 00 04 */ lbz r0, 4(r3)
/* 80364320 00361260 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364324 00361264 41 82 0A C4 */ beq lbl_80364DE8
lbl_80364328:
/* 80364328 00361268 88 7F 00 04 */ lbz r3, 4(r31)
/* 8036432C 0036126C 38 BF 00 05 */ addi r5, r31, 5
/* 80364330 00361270 38 00 00 00 */ li r0, 0
/* 80364334 00361274 38 83 FF FF */ addi r4, r3, -1
/* 80364338 00361278 7C 85 22 14 */ add r4, r5, r4
lbl_8036433C:
/* 8036433C 0036127C 88 64 00 00 */ lbz r3, 0(r4)
/* 80364340 00361280 28 03 00 09 */ cmplwi r3, 9
/* 80364344 00361284 40 80 00 10 */ bge lbl_80364354
/* 80364348 00361288 38 03 00 01 */ addi r0, r3, 1
/* 8036434C 0036128C 98 04 00 00 */ stb r0, 0(r4)
/* 80364350 00361290 48 00 0A 98 */ b lbl_80364DE8
lbl_80364354:
/* 80364354 00361294 7C 04 28 40 */ cmplw r4, r5
/* 80364358 00361298 40 82 00 1C */ bne lbl_80364374
/* 8036435C 0036129C 38 00 00 01 */ li r0, 1
/* 80364360 003612A0 98 04 00 00 */ stb r0, 0(r4)
/* 80364364 003612A4 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364368 003612A8 38 03 00 01 */ addi r0, r3, 1
/* 8036436C 003612AC B0 1F 00 02 */ sth r0, 2(r31)
/* 80364370 003612B0 48 00 0A 78 */ b lbl_80364DE8
lbl_80364374:
/* 80364374 003612B4 98 04 00 00 */ stb r0, 0(r4)
/* 80364378 003612B8 38 84 FF FF */ addi r4, r4, -1
/* 8036437C 003612BC 4B FF FF C0 */ b lbl_8036433C
/* 80364380 003612C0 48 00 0A 68 */ b lbl_80364DE8
/* 80364384 003612C4 38 80 00 00 */ li r4, 0
/* 80364388 003612C8 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 8036438C 003612CC B0 9F 00 02 */ sth r4, 2(r31)
/* 80364390 003612D0 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364394 003612D4 38 A3 00 C6 */ addi r5, r3, 0xc6
/* 80364398 003612D8 98 9F 00 00 */ stb r4, 0(r31)
/* 8036439C 003612DC 48 00 00 1C */ b lbl_803643B8
lbl_803643A0:
/* 803643A0 003612E0 88 65 00 00 */ lbz r3, 0(r5)
/* 803643A4 003612E4 38 04 00 05 */ addi r0, r4, 5
/* 803643A8 003612E8 38 A5 00 01 */ addi r5, r5, 1
/* 803643AC 003612EC 38 84 00 01 */ addi r4, r4, 1
/* 803643B0 003612F0 38 63 FF D0 */ addi r3, r3, -48
/* 803643B4 003612F4 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803643B8:
/* 803643B8 003612F8 2C 04 00 24 */ cmpwi r4, 0x24
/* 803643BC 003612FC 40 80 00 10 */ bge lbl_803643CC
/* 803643C0 00361300 88 05 00 00 */ lbz r0, 0(r5)
/* 803643C4 00361304 7C 00 07 75 */ extsb. r0, r0
/* 803643C8 00361308 40 82 FF D8 */ bne lbl_803643A0
lbl_803643CC:
/* 803643CC 0036130C 98 9F 00 04 */ stb r4, 4(r31)
/* 803643D0 00361310 88 65 00 00 */ lbz r3, 0(r5)
/* 803643D4 00361314 7C 60 07 75 */ extsb. r0, r3
/* 803643D8 00361318 41 82 0A 10 */ beq lbl_80364DE8
/* 803643DC 0036131C 7C 60 07 74 */ extsb r0, r3
/* 803643E0 00361320 2C 00 00 05 */ cmpwi r0, 5
/* 803643E4 00361324 41 80 0A 04 */ blt lbl_80364DE8
/* 803643E8 00361328 41 81 00 38 */ bgt lbl_80364420
/* 803643EC 0036132C 38 65 00 01 */ addi r3, r5, 1
/* 803643F0 00361330 48 00 00 14 */ b lbl_80364404
lbl_803643F4:
/* 803643F4 00361334 7C A0 07 74 */ extsb r0, r5
/* 803643F8 00361338 2C 00 00 30 */ cmpwi r0, 0x30
/* 803643FC 0036133C 40 82 00 24 */ bne lbl_80364420
/* 80364400 00361340 38 63 00 01 */ addi r3, r3, 1
lbl_80364404:
/* 80364404 00361344 88 A3 00 00 */ lbz r5, 0(r3)
/* 80364408 00361348 7C A0 07 75 */ extsb. r0, r5
/* 8036440C 0036134C 40 82 FF E8 */ bne lbl_803643F4
/* 80364410 00361350 7C 7F 22 14 */ add r3, r31, r4
/* 80364414 00361354 88 03 00 04 */ lbz r0, 4(r3)
/* 80364418 00361358 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8036441C 0036135C 41 82 09 CC */ beq lbl_80364DE8
lbl_80364420:
/* 80364420 00361360 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364424 00361364 38 BF 00 05 */ addi r5, r31, 5
/* 80364428 00361368 38 00 00 00 */ li r0, 0
/* 8036442C 0036136C 38 83 FF FF */ addi r4, r3, -1
/* 80364430 00361370 7C 85 22 14 */ add r4, r5, r4
lbl_80364434:
/* 80364434 00361374 88 64 00 00 */ lbz r3, 0(r4)
/* 80364438 00361378 28 03 00 09 */ cmplwi r3, 9
/* 8036443C 0036137C 40 80 00 10 */ bge lbl_8036444C
/* 80364440 00361380 38 03 00 01 */ addi r0, r3, 1
/* 80364444 00361384 98 04 00 00 */ stb r0, 0(r4)
/* 80364448 00361388 48 00 09 A0 */ b lbl_80364DE8
lbl_8036444C:
/* 8036444C 0036138C 7C 04 28 40 */ cmplw r4, r5
/* 80364450 00361390 40 82 00 1C */ bne lbl_8036446C
/* 80364454 00361394 38 00 00 01 */ li r0, 1
/* 80364458 00361398 98 04 00 00 */ stb r0, 0(r4)
/* 8036445C 0036139C A8 7F 00 02 */ lha r3, 2(r31)
/* 80364460 003613A0 38 03 00 01 */ addi r0, r3, 1
/* 80364464 003613A4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364468 003613A8 48 00 09 80 */ b lbl_80364DE8
lbl_8036446C:
/* 8036446C 003613AC 98 04 00 00 */ stb r0, 0(r4)
/* 80364470 003613B0 38 84 FF FF */ addi r4, r4, -1
/* 80364474 003613B4 4B FF FF C0 */ b lbl_80364434
/* 80364478 003613B8 48 00 09 70 */ b lbl_80364DE8
/* 8036447C 003613BC 38 80 00 00 */ li r4, 0
/* 80364480 003613C0 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364484 003613C4 B0 9F 00 02 */ sth r4, 2(r31)
/* 80364488 003613C8 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 8036448C 003613CC 38 A3 00 C8 */ addi r5, r3, 0xc8
/* 80364490 003613D0 98 9F 00 00 */ stb r4, 0(r31)
/* 80364494 003613D4 48 00 00 1C */ b lbl_803644B0
lbl_80364498:
/* 80364498 003613D8 88 65 00 00 */ lbz r3, 0(r5)
/* 8036449C 003613DC 38 04 00 05 */ addi r0, r4, 5
/* 803644A0 003613E0 38 A5 00 01 */ addi r5, r5, 1
/* 803644A4 003613E4 38 84 00 01 */ addi r4, r4, 1
/* 803644A8 003613E8 38 63 FF D0 */ addi r3, r3, -48
/* 803644AC 003613EC 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803644B0:
/* 803644B0 003613F0 2C 04 00 24 */ cmpwi r4, 0x24
/* 803644B4 003613F4 40 80 00 10 */ bge lbl_803644C4
/* 803644B8 003613F8 88 05 00 00 */ lbz r0, 0(r5)
/* 803644BC 003613FC 7C 00 07 75 */ extsb. r0, r0
/* 803644C0 00361400 40 82 FF D8 */ bne lbl_80364498
lbl_803644C4:
/* 803644C4 00361404 98 9F 00 04 */ stb r4, 4(r31)
/* 803644C8 00361408 88 65 00 00 */ lbz r3, 0(r5)
/* 803644CC 0036140C 7C 60 07 75 */ extsb. r0, r3
/* 803644D0 00361410 41 82 09 18 */ beq lbl_80364DE8
/* 803644D4 00361414 7C 60 07 74 */ extsb r0, r3
/* 803644D8 00361418 2C 00 00 05 */ cmpwi r0, 5
/* 803644DC 0036141C 41 80 09 0C */ blt lbl_80364DE8
/* 803644E0 00361420 41 81 00 38 */ bgt lbl_80364518
/* 803644E4 00361424 38 65 00 01 */ addi r3, r5, 1
/* 803644E8 00361428 48 00 00 14 */ b lbl_803644FC
lbl_803644EC:
/* 803644EC 0036142C 7C A0 07 74 */ extsb r0, r5
/* 803644F0 00361430 2C 00 00 30 */ cmpwi r0, 0x30
/* 803644F4 00361434 40 82 00 24 */ bne lbl_80364518
/* 803644F8 00361438 38 63 00 01 */ addi r3, r3, 1
lbl_803644FC:
/* 803644FC 0036143C 88 A3 00 00 */ lbz r5, 0(r3)
/* 80364500 00361440 7C A0 07 75 */ extsb. r0, r5
/* 80364504 00361444 40 82 FF E8 */ bne lbl_803644EC
/* 80364508 00361448 7C 7F 22 14 */ add r3, r31, r4
/* 8036450C 0036144C 88 03 00 04 */ lbz r0, 4(r3)
/* 80364510 00361450 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364514 00361454 41 82 08 D4 */ beq lbl_80364DE8
lbl_80364518:
/* 80364518 00361458 88 7F 00 04 */ lbz r3, 4(r31)
/* 8036451C 0036145C 38 BF 00 05 */ addi r5, r31, 5
/* 80364520 00361460 38 00 00 00 */ li r0, 0
/* 80364524 00361464 38 83 FF FF */ addi r4, r3, -1
/* 80364528 00361468 7C 85 22 14 */ add r4, r5, r4
lbl_8036452C:
/* 8036452C 0036146C 88 64 00 00 */ lbz r3, 0(r4)
/* 80364530 00361470 28 03 00 09 */ cmplwi r3, 9
/* 80364534 00361474 40 80 00 10 */ bge lbl_80364544
/* 80364538 00361478 38 03 00 01 */ addi r0, r3, 1
/* 8036453C 0036147C 98 04 00 00 */ stb r0, 0(r4)
/* 80364540 00361480 48 00 08 A8 */ b lbl_80364DE8
lbl_80364544:
/* 80364544 00361484 7C 04 28 40 */ cmplw r4, r5
/* 80364548 00361488 40 82 00 1C */ bne lbl_80364564
/* 8036454C 0036148C 38 00 00 01 */ li r0, 1
/* 80364550 00361490 98 04 00 00 */ stb r0, 0(r4)
/* 80364554 00361494 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364558 00361498 38 03 00 01 */ addi r0, r3, 1
/* 8036455C 0036149C B0 1F 00 02 */ sth r0, 2(r31)
/* 80364560 003614A0 48 00 08 88 */ b lbl_80364DE8
lbl_80364564:
/* 80364564 003614A4 98 04 00 00 */ stb r0, 0(r4)
/* 80364568 003614A8 38 84 FF FF */ addi r4, r4, -1
/* 8036456C 003614AC 4B FF FF C0 */ b lbl_8036452C
/* 80364570 003614B0 48 00 08 78 */ b lbl_80364DE8
/* 80364574 003614B4 38 80 00 00 */ li r4, 0
/* 80364578 003614B8 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 8036457C 003614BC B0 9F 00 02 */ sth r4, 2(r31)
/* 80364580 003614C0 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364584 003614C4 38 A3 00 CA */ addi r5, r3, 0xca
/* 80364588 003614C8 98 9F 00 00 */ stb r4, 0(r31)
/* 8036458C 003614CC 48 00 00 1C */ b lbl_803645A8
lbl_80364590:
/* 80364590 003614D0 88 65 00 00 */ lbz r3, 0(r5)
/* 80364594 003614D4 38 04 00 05 */ addi r0, r4, 5
/* 80364598 003614D8 38 A5 00 01 */ addi r5, r5, 1
/* 8036459C 003614DC 38 84 00 01 */ addi r4, r4, 1
/* 803645A0 003614E0 38 63 FF D0 */ addi r3, r3, -48
/* 803645A4 003614E4 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803645A8:
/* 803645A8 003614E8 2C 04 00 24 */ cmpwi r4, 0x24
/* 803645AC 003614EC 40 80 00 10 */ bge lbl_803645BC
/* 803645B0 003614F0 88 05 00 00 */ lbz r0, 0(r5)
/* 803645B4 003614F4 7C 00 07 75 */ extsb. r0, r0
/* 803645B8 003614F8 40 82 FF D8 */ bne lbl_80364590
lbl_803645BC:
/* 803645BC 003614FC 98 9F 00 04 */ stb r4, 4(r31)
/* 803645C0 00361500 88 65 00 00 */ lbz r3, 0(r5)
/* 803645C4 00361504 7C 60 07 75 */ extsb. r0, r3
/* 803645C8 00361508 41 82 08 20 */ beq lbl_80364DE8
/* 803645CC 0036150C 7C 60 07 74 */ extsb r0, r3
/* 803645D0 00361510 2C 00 00 05 */ cmpwi r0, 5
/* 803645D4 00361514 41 80 08 14 */ blt lbl_80364DE8
/* 803645D8 00361518 41 81 00 38 */ bgt lbl_80364610
/* 803645DC 0036151C 38 65 00 01 */ addi r3, r5, 1
/* 803645E0 00361520 48 00 00 14 */ b lbl_803645F4
lbl_803645E4:
/* 803645E4 00361524 7C A0 07 74 */ extsb r0, r5
/* 803645E8 00361528 2C 00 00 30 */ cmpwi r0, 0x30
/* 803645EC 0036152C 40 82 00 24 */ bne lbl_80364610
/* 803645F0 00361530 38 63 00 01 */ addi r3, r3, 1
lbl_803645F4:
/* 803645F4 00361534 88 A3 00 00 */ lbz r5, 0(r3)
/* 803645F8 00361538 7C A0 07 75 */ extsb. r0, r5
/* 803645FC 0036153C 40 82 FF E8 */ bne lbl_803645E4
/* 80364600 00361540 7C 7F 22 14 */ add r3, r31, r4
/* 80364604 00361544 88 03 00 04 */ lbz r0, 4(r3)
/* 80364608 00361548 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8036460C 0036154C 41 82 07 DC */ beq lbl_80364DE8
lbl_80364610:
/* 80364610 00361550 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364614 00361554 38 BF 00 05 */ addi r5, r31, 5
/* 80364618 00361558 38 00 00 00 */ li r0, 0
/* 8036461C 0036155C 38 83 FF FF */ addi r4, r3, -1
/* 80364620 00361560 7C 85 22 14 */ add r4, r5, r4
lbl_80364624:
/* 80364624 00361564 88 64 00 00 */ lbz r3, 0(r4)
/* 80364628 00361568 28 03 00 09 */ cmplwi r3, 9
/* 8036462C 0036156C 40 80 00 10 */ bge lbl_8036463C
/* 80364630 00361570 38 03 00 01 */ addi r0, r3, 1
/* 80364634 00361574 98 04 00 00 */ stb r0, 0(r4)
/* 80364638 00361578 48 00 07 B0 */ b lbl_80364DE8
lbl_8036463C:
/* 8036463C 0036157C 7C 04 28 40 */ cmplw r4, r5
/* 80364640 00361580 40 82 00 1C */ bne lbl_8036465C
/* 80364644 00361584 38 00 00 01 */ li r0, 1
/* 80364648 00361588 98 04 00 00 */ stb r0, 0(r4)
/* 8036464C 0036158C A8 7F 00 02 */ lha r3, 2(r31)
/* 80364650 00361590 38 03 00 01 */ addi r0, r3, 1
/* 80364654 00361594 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364658 00361598 48 00 07 90 */ b lbl_80364DE8
lbl_8036465C:
/* 8036465C 0036159C 98 04 00 00 */ stb r0, 0(r4)
/* 80364660 003615A0 38 84 FF FF */ addi r4, r4, -1
/* 80364664 003615A4 4B FF FF C0 */ b lbl_80364624
/* 80364668 003615A8 48 00 07 80 */ b lbl_80364DE8
/* 8036466C 003615AC 38 00 00 01 */ li r0, 1
/* 80364670 003615B0 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364674 003615B4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364678 003615B8 38 80 00 00 */ li r4, 0
/* 8036467C 003615BC 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364680 003615C0 98 9F 00 00 */ stb r4, 0(r31)
/* 80364684 003615C4 38 A3 00 CC */ addi r5, r3, 0xcc
/* 80364688 003615C8 48 00 00 1C */ b lbl_803646A4
lbl_8036468C:
/* 8036468C 003615CC 88 65 00 00 */ lbz r3, 0(r5)
/* 80364690 003615D0 38 04 00 05 */ addi r0, r4, 5
/* 80364694 003615D4 38 A5 00 01 */ addi r5, r5, 1
/* 80364698 003615D8 38 84 00 01 */ addi r4, r4, 1
/* 8036469C 003615DC 38 63 FF D0 */ addi r3, r3, -48
/* 803646A0 003615E0 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803646A4:
/* 803646A4 003615E4 2C 04 00 24 */ cmpwi r4, 0x24
/* 803646A8 003615E8 40 80 00 10 */ bge lbl_803646B8
/* 803646AC 003615EC 88 05 00 00 */ lbz r0, 0(r5)
/* 803646B0 003615F0 7C 00 07 75 */ extsb. r0, r0
/* 803646B4 003615F4 40 82 FF D8 */ bne lbl_8036468C
lbl_803646B8:
/* 803646B8 003615F8 98 9F 00 04 */ stb r4, 4(r31)
/* 803646BC 003615FC 88 65 00 00 */ lbz r3, 0(r5)
/* 803646C0 00361600 7C 60 07 75 */ extsb. r0, r3
/* 803646C4 00361604 41 82 07 24 */ beq lbl_80364DE8
/* 803646C8 00361608 7C 60 07 74 */ extsb r0, r3
/* 803646CC 0036160C 2C 00 00 05 */ cmpwi r0, 5
/* 803646D0 00361610 41 80 07 18 */ blt lbl_80364DE8
/* 803646D4 00361614 41 81 00 38 */ bgt lbl_8036470C
/* 803646D8 00361618 38 65 00 01 */ addi r3, r5, 1
/* 803646DC 0036161C 48 00 00 14 */ b lbl_803646F0
lbl_803646E0:
/* 803646E0 00361620 7C A0 07 74 */ extsb r0, r5
/* 803646E4 00361624 2C 00 00 30 */ cmpwi r0, 0x30
/* 803646E8 00361628 40 82 00 24 */ bne lbl_8036470C
/* 803646EC 0036162C 38 63 00 01 */ addi r3, r3, 1
lbl_803646F0:
/* 803646F0 00361630 88 A3 00 00 */ lbz r5, 0(r3)
/* 803646F4 00361634 7C A0 07 75 */ extsb. r0, r5
/* 803646F8 00361638 40 82 FF E8 */ bne lbl_803646E0
/* 803646FC 0036163C 7C 7F 22 14 */ add r3, r31, r4
/* 80364700 00361640 88 03 00 04 */ lbz r0, 4(r3)
/* 80364704 00361644 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364708 00361648 41 82 06 E0 */ beq lbl_80364DE8
lbl_8036470C:
/* 8036470C 0036164C 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364710 00361650 38 BF 00 05 */ addi r5, r31, 5
/* 80364714 00361654 38 00 00 00 */ li r0, 0
/* 80364718 00361658 38 83 FF FF */ addi r4, r3, -1
/* 8036471C 0036165C 7C 85 22 14 */ add r4, r5, r4
lbl_80364720:
/* 80364720 00361660 88 64 00 00 */ lbz r3, 0(r4)
/* 80364724 00361664 28 03 00 09 */ cmplwi r3, 9
/* 80364728 00361668 40 80 00 10 */ bge lbl_80364738
/* 8036472C 0036166C 38 03 00 01 */ addi r0, r3, 1
/* 80364730 00361670 98 04 00 00 */ stb r0, 0(r4)
/* 80364734 00361674 48 00 06 B4 */ b lbl_80364DE8
lbl_80364738:
/* 80364738 00361678 7C 04 28 40 */ cmplw r4, r5
/* 8036473C 0036167C 40 82 00 1C */ bne lbl_80364758
/* 80364740 00361680 38 00 00 01 */ li r0, 1
/* 80364744 00361684 98 04 00 00 */ stb r0, 0(r4)
/* 80364748 00361688 A8 7F 00 02 */ lha r3, 2(r31)
/* 8036474C 0036168C 38 03 00 01 */ addi r0, r3, 1
/* 80364750 00361690 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364754 00361694 48 00 06 94 */ b lbl_80364DE8
lbl_80364758:
/* 80364758 00361698 98 04 00 00 */ stb r0, 0(r4)
/* 8036475C 0036169C 38 84 FF FF */ addi r4, r4, -1
/* 80364760 003616A0 4B FF FF C0 */ b lbl_80364720
/* 80364764 003616A4 48 00 06 84 */ b lbl_80364DE8
/* 80364768 003616A8 38 00 00 01 */ li r0, 1
/* 8036476C 003616AC 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364770 003616B0 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364774 003616B4 38 80 00 00 */ li r4, 0
/* 80364778 003616B8 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 8036477C 003616BC 98 9F 00 00 */ stb r4, 0(r31)
/* 80364780 003616C0 38 A3 00 CF */ addi r5, r3, 0xcf
/* 80364784 003616C4 48 00 00 1C */ b lbl_803647A0
lbl_80364788:
/* 80364788 003616C8 88 65 00 00 */ lbz r3, 0(r5)
/* 8036478C 003616CC 38 04 00 05 */ addi r0, r4, 5
/* 80364790 003616D0 38 A5 00 01 */ addi r5, r5, 1
/* 80364794 003616D4 38 84 00 01 */ addi r4, r4, 1
/* 80364798 003616D8 38 63 FF D0 */ addi r3, r3, -48
/* 8036479C 003616DC 7C 7F 01 AE */ stbx r3, r31, r0
lbl_803647A0:
/* 803647A0 003616E0 2C 04 00 24 */ cmpwi r4, 0x24
/* 803647A4 003616E4 40 80 00 10 */ bge lbl_803647B4
/* 803647A8 003616E8 88 05 00 00 */ lbz r0, 0(r5)
/* 803647AC 003616EC 7C 00 07 75 */ extsb. r0, r0
/* 803647B0 003616F0 40 82 FF D8 */ bne lbl_80364788
lbl_803647B4:
/* 803647B4 003616F4 98 9F 00 04 */ stb r4, 4(r31)
/* 803647B8 003616F8 88 65 00 00 */ lbz r3, 0(r5)
/* 803647BC 003616FC 7C 60 07 75 */ extsb. r0, r3
/* 803647C0 00361700 41 82 06 28 */ beq lbl_80364DE8
/* 803647C4 00361704 7C 60 07 74 */ extsb r0, r3
/* 803647C8 00361708 2C 00 00 05 */ cmpwi r0, 5
/* 803647CC 0036170C 41 80 06 1C */ blt lbl_80364DE8
/* 803647D0 00361710 41 81 00 38 */ bgt lbl_80364808
/* 803647D4 00361714 38 65 00 01 */ addi r3, r5, 1
/* 803647D8 00361718 48 00 00 14 */ b lbl_803647EC
lbl_803647DC:
/* 803647DC 0036171C 7C A0 07 74 */ extsb r0, r5
/* 803647E0 00361720 2C 00 00 30 */ cmpwi r0, 0x30
/* 803647E4 00361724 40 82 00 24 */ bne lbl_80364808
/* 803647E8 00361728 38 63 00 01 */ addi r3, r3, 1
lbl_803647EC:
/* 803647EC 0036172C 88 A3 00 00 */ lbz r5, 0(r3)
/* 803647F0 00361730 7C A0 07 75 */ extsb. r0, r5
/* 803647F4 00361734 40 82 FF E8 */ bne lbl_803647DC
/* 803647F8 00361738 7C 7F 22 14 */ add r3, r31, r4
/* 803647FC 0036173C 88 03 00 04 */ lbz r0, 4(r3)
/* 80364800 00361740 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364804 00361744 41 82 05 E4 */ beq lbl_80364DE8
lbl_80364808:
/* 80364808 00361748 88 7F 00 04 */ lbz r3, 4(r31)
/* 8036480C 0036174C 38 BF 00 05 */ addi r5, r31, 5
/* 80364810 00361750 38 00 00 00 */ li r0, 0
/* 80364814 00361754 38 83 FF FF */ addi r4, r3, -1
/* 80364818 00361758 7C 85 22 14 */ add r4, r5, r4
lbl_8036481C:
/* 8036481C 0036175C 88 64 00 00 */ lbz r3, 0(r4)
/* 80364820 00361760 28 03 00 09 */ cmplwi r3, 9
/* 80364824 00361764 40 80 00 10 */ bge lbl_80364834
/* 80364828 00361768 38 03 00 01 */ addi r0, r3, 1
/* 8036482C 0036176C 98 04 00 00 */ stb r0, 0(r4)
/* 80364830 00361770 48 00 05 B8 */ b lbl_80364DE8
lbl_80364834:
/* 80364834 00361774 7C 04 28 40 */ cmplw r4, r5
/* 80364838 00361778 40 82 00 1C */ bne lbl_80364854
/* 8036483C 0036177C 38 00 00 01 */ li r0, 1
/* 80364840 00361780 98 04 00 00 */ stb r0, 0(r4)
/* 80364844 00361784 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364848 00361788 38 03 00 01 */ addi r0, r3, 1
/* 8036484C 0036178C B0 1F 00 02 */ sth r0, 2(r31)
/* 80364850 00361790 48 00 05 98 */ b lbl_80364DE8
lbl_80364854:
/* 80364854 00361794 98 04 00 00 */ stb r0, 0(r4)
/* 80364858 00361798 38 84 FF FF */ addi r4, r4, -1
/* 8036485C 0036179C 4B FF FF C0 */ b lbl_8036481C
/* 80364860 003617A0 48 00 05 88 */ b lbl_80364DE8
/* 80364864 003617A4 38 00 00 01 */ li r0, 1
/* 80364868 003617A8 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 8036486C 003617AC B0 1F 00 02 */ sth r0, 2(r31)
/* 80364870 003617B0 38 80 00 00 */ li r4, 0
/* 80364874 003617B4 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364878 003617B8 98 9F 00 00 */ stb r4, 0(r31)
/* 8036487C 003617BC 38 A3 00 D2 */ addi r5, r3, 0xd2
/* 80364880 003617C0 48 00 00 1C */ b lbl_8036489C
lbl_80364884:
/* 80364884 003617C4 88 65 00 00 */ lbz r3, 0(r5)
/* 80364888 003617C8 38 04 00 05 */ addi r0, r4, 5
/* 8036488C 003617CC 38 A5 00 01 */ addi r5, r5, 1
/* 80364890 003617D0 38 84 00 01 */ addi r4, r4, 1
/* 80364894 003617D4 38 63 FF D0 */ addi r3, r3, -48
/* 80364898 003617D8 7C 7F 01 AE */ stbx r3, r31, r0
lbl_8036489C:
/* 8036489C 003617DC 2C 04 00 24 */ cmpwi r4, 0x24
/* 803648A0 003617E0 40 80 00 10 */ bge lbl_803648B0
/* 803648A4 003617E4 88 05 00 00 */ lbz r0, 0(r5)
/* 803648A8 003617E8 7C 00 07 75 */ extsb. r0, r0
/* 803648AC 003617EC 40 82 FF D8 */ bne lbl_80364884
lbl_803648B0:
/* 803648B0 003617F0 98 9F 00 04 */ stb r4, 4(r31)
/* 803648B4 003617F4 88 65 00 00 */ lbz r3, 0(r5)
/* 803648B8 003617F8 7C 60 07 75 */ extsb. r0, r3
/* 803648BC 003617FC 41 82 05 2C */ beq lbl_80364DE8
/* 803648C0 00361800 7C 60 07 74 */ extsb r0, r3
/* 803648C4 00361804 2C 00 00 05 */ cmpwi r0, 5
/* 803648C8 00361808 41 80 05 20 */ blt lbl_80364DE8
/* 803648CC 0036180C 41 81 00 38 */ bgt lbl_80364904
/* 803648D0 00361810 38 65 00 01 */ addi r3, r5, 1
/* 803648D4 00361814 48 00 00 14 */ b lbl_803648E8
lbl_803648D8:
/* 803648D8 00361818 7C A0 07 74 */ extsb r0, r5
/* 803648DC 0036181C 2C 00 00 30 */ cmpwi r0, 0x30
/* 803648E0 00361820 40 82 00 24 */ bne lbl_80364904
/* 803648E4 00361824 38 63 00 01 */ addi r3, r3, 1
lbl_803648E8:
/* 803648E8 00361828 88 A3 00 00 */ lbz r5, 0(r3)
/* 803648EC 0036182C 7C A0 07 75 */ extsb. r0, r5
/* 803648F0 00361830 40 82 FF E8 */ bne lbl_803648D8
/* 803648F4 00361834 7C 7F 22 14 */ add r3, r31, r4
/* 803648F8 00361838 88 03 00 04 */ lbz r0, 4(r3)
/* 803648FC 0036183C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364900 00361840 41 82 04 E8 */ beq lbl_80364DE8
lbl_80364904:
/* 80364904 00361844 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364908 00361848 38 BF 00 05 */ addi r5, r31, 5
/* 8036490C 0036184C 38 00 00 00 */ li r0, 0
/* 80364910 00361850 38 83 FF FF */ addi r4, r3, -1
/* 80364914 00361854 7C 85 22 14 */ add r4, r5, r4
lbl_80364918:
/* 80364918 00361858 88 64 00 00 */ lbz r3, 0(r4)
/* 8036491C 0036185C 28 03 00 09 */ cmplwi r3, 9
/* 80364920 00361860 40 80 00 10 */ bge lbl_80364930
/* 80364924 00361864 38 03 00 01 */ addi r0, r3, 1
/* 80364928 00361868 98 04 00 00 */ stb r0, 0(r4)
/* 8036492C 0036186C 48 00 04 BC */ b lbl_80364DE8
lbl_80364930:
/* 80364930 00361870 7C 04 28 40 */ cmplw r4, r5
/* 80364934 00361874 40 82 00 1C */ bne lbl_80364950
/* 80364938 00361878 38 00 00 01 */ li r0, 1
/* 8036493C 0036187C 98 04 00 00 */ stb r0, 0(r4)
/* 80364940 00361880 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364944 00361884 38 03 00 01 */ addi r0, r3, 1
/* 80364948 00361888 B0 1F 00 02 */ sth r0, 2(r31)
/* 8036494C 0036188C 48 00 04 9C */ b lbl_80364DE8
lbl_80364950:
/* 80364950 00361890 98 04 00 00 */ stb r0, 0(r4)
/* 80364954 00361894 38 84 FF FF */ addi r4, r4, -1
/* 80364958 00361898 4B FF FF C0 */ b lbl_80364918
/* 8036495C 0036189C 48 00 04 8C */ b lbl_80364DE8
/* 80364960 003618A0 38 00 00 02 */ li r0, 2
/* 80364964 003618A4 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364968 003618A8 B0 1F 00 02 */ sth r0, 2(r31)
/* 8036496C 003618AC 38 80 00 00 */ li r4, 0
/* 80364970 003618B0 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364974 003618B4 98 9F 00 00 */ stb r4, 0(r31)
/* 80364978 003618B8 38 A3 00 D5 */ addi r5, r3, 0xd5
/* 8036497C 003618BC 48 00 00 1C */ b lbl_80364998
lbl_80364980:
/* 80364980 003618C0 88 65 00 00 */ lbz r3, 0(r5)
/* 80364984 003618C4 38 04 00 05 */ addi r0, r4, 5
/* 80364988 003618C8 38 A5 00 01 */ addi r5, r5, 1
/* 8036498C 003618CC 38 84 00 01 */ addi r4, r4, 1
/* 80364990 003618D0 38 63 FF D0 */ addi r3, r3, -48
/* 80364994 003618D4 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80364998:
/* 80364998 003618D8 2C 04 00 24 */ cmpwi r4, 0x24
/* 8036499C 003618DC 40 80 00 10 */ bge lbl_803649AC
/* 803649A0 003618E0 88 05 00 00 */ lbz r0, 0(r5)
/* 803649A4 003618E4 7C 00 07 75 */ extsb. r0, r0
/* 803649A8 003618E8 40 82 FF D8 */ bne lbl_80364980
lbl_803649AC:
/* 803649AC 003618EC 98 9F 00 04 */ stb r4, 4(r31)
/* 803649B0 003618F0 88 65 00 00 */ lbz r3, 0(r5)
/* 803649B4 003618F4 7C 60 07 75 */ extsb. r0, r3
/* 803649B8 003618F8 41 82 04 30 */ beq lbl_80364DE8
/* 803649BC 003618FC 7C 60 07 74 */ extsb r0, r3
/* 803649C0 00361900 2C 00 00 05 */ cmpwi r0, 5
/* 803649C4 00361904 41 80 04 24 */ blt lbl_80364DE8
/* 803649C8 00361908 41 81 00 38 */ bgt lbl_80364A00
/* 803649CC 0036190C 38 65 00 01 */ addi r3, r5, 1
/* 803649D0 00361910 48 00 00 14 */ b lbl_803649E4
lbl_803649D4:
/* 803649D4 00361914 7C A0 07 74 */ extsb r0, r5
/* 803649D8 00361918 2C 00 00 30 */ cmpwi r0, 0x30
/* 803649DC 0036191C 40 82 00 24 */ bne lbl_80364A00
/* 803649E0 00361920 38 63 00 01 */ addi r3, r3, 1
lbl_803649E4:
/* 803649E4 00361924 88 A3 00 00 */ lbz r5, 0(r3)
/* 803649E8 00361928 7C A0 07 75 */ extsb. r0, r5
/* 803649EC 0036192C 40 82 FF E8 */ bne lbl_803649D4
/* 803649F0 00361930 7C 7F 22 14 */ add r3, r31, r4
/* 803649F4 00361934 88 03 00 04 */ lbz r0, 4(r3)
/* 803649F8 00361938 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 803649FC 0036193C 41 82 03 EC */ beq lbl_80364DE8
lbl_80364A00:
/* 80364A00 00361940 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364A04 00361944 38 BF 00 05 */ addi r5, r31, 5
/* 80364A08 00361948 38 00 00 00 */ li r0, 0
/* 80364A0C 0036194C 38 83 FF FF */ addi r4, r3, -1
/* 80364A10 00361950 7C 85 22 14 */ add r4, r5, r4
lbl_80364A14:
/* 80364A14 00361954 88 64 00 00 */ lbz r3, 0(r4)
/* 80364A18 00361958 28 03 00 09 */ cmplwi r3, 9
/* 80364A1C 0036195C 40 80 00 10 */ bge lbl_80364A2C
/* 80364A20 00361960 38 03 00 01 */ addi r0, r3, 1
/* 80364A24 00361964 98 04 00 00 */ stb r0, 0(r4)
/* 80364A28 00361968 48 00 03 C0 */ b lbl_80364DE8
lbl_80364A2C:
/* 80364A2C 0036196C 7C 04 28 40 */ cmplw r4, r5
/* 80364A30 00361970 40 82 00 1C */ bne lbl_80364A4C
/* 80364A34 00361974 38 00 00 01 */ li r0, 1
/* 80364A38 00361978 98 04 00 00 */ stb r0, 0(r4)
/* 80364A3C 0036197C A8 7F 00 02 */ lha r3, 2(r31)
/* 80364A40 00361980 38 03 00 01 */ addi r0, r3, 1
/* 80364A44 00361984 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364A48 00361988 48 00 03 A0 */ b lbl_80364DE8
lbl_80364A4C:
/* 80364A4C 0036198C 98 04 00 00 */ stb r0, 0(r4)
/* 80364A50 00361990 38 84 FF FF */ addi r4, r4, -1
/* 80364A54 00361994 4B FF FF C0 */ b lbl_80364A14
/* 80364A58 00361998 48 00 03 90 */ b lbl_80364DE8
/* 80364A5C 0036199C 38 00 00 02 */ li r0, 2
/* 80364A60 003619A0 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364A64 003619A4 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364A68 003619A8 38 80 00 00 */ li r4, 0
/* 80364A6C 003619AC 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364A70 003619B0 98 9F 00 00 */ stb r4, 0(r31)
/* 80364A74 003619B4 38 A3 00 D9 */ addi r5, r3, 0xd9
/* 80364A78 003619B8 48 00 00 1C */ b lbl_80364A94
lbl_80364A7C:
/* 80364A7C 003619BC 88 65 00 00 */ lbz r3, 0(r5)
/* 80364A80 003619C0 38 04 00 05 */ addi r0, r4, 5
/* 80364A84 003619C4 38 A5 00 01 */ addi r5, r5, 1
/* 80364A88 003619C8 38 84 00 01 */ addi r4, r4, 1
/* 80364A8C 003619CC 38 63 FF D0 */ addi r3, r3, -48
/* 80364A90 003619D0 7C 7F 01 AE */ stbx r3, r31, r0
lbl_80364A94:
/* 80364A94 003619D4 2C 04 00 24 */ cmpwi r4, 0x24
/* 80364A98 003619D8 40 80 00 10 */ bge lbl_80364AA8
/* 80364A9C 003619DC 88 05 00 00 */ lbz r0, 0(r5)
/* 80364AA0 003619E0 7C 00 07 75 */ extsb. r0, r0
/* 80364AA4 003619E4 40 82 FF D8 */ bne lbl_80364A7C
lbl_80364AA8:
/* 80364AA8 003619E8 98 9F 00 04 */ stb r4, 4(r31)
/* 80364AAC 003619EC 88 65 00 00 */ lbz r3, 0(r5)
/* 80364AB0 003619F0 7C 60 07 75 */ extsb. r0, r3
/* 80364AB4 003619F4 41 82 03 34 */ beq lbl_80364DE8
/* 80364AB8 003619F8 7C 60 07 74 */ extsb r0, r3
/* 80364ABC 003619FC 2C 00 00 05 */ cmpwi r0, 5
/* 80364AC0 00361A00 41 80 03 28 */ blt lbl_80364DE8
/* 80364AC4 00361A04 41 81 00 38 */ bgt lbl_80364AFC
/* 80364AC8 00361A08 38 65 00 01 */ addi r3, r5, 1
/* 80364ACC 00361A0C 48 00 00 14 */ b lbl_80364AE0
lbl_80364AD0:
/* 80364AD0 00361A10 7C A0 07 74 */ extsb r0, r5
/* 80364AD4 00361A14 2C 00 00 30 */ cmpwi r0, 0x30
/* 80364AD8 00361A18 40 82 00 24 */ bne lbl_80364AFC
/* 80364ADC 00361A1C 38 63 00 01 */ addi r3, r3, 1
lbl_80364AE0:
/* 80364AE0 00361A20 88 A3 00 00 */ lbz r5, 0(r3)
/* 80364AE4 00361A24 7C A0 07 75 */ extsb. r0, r5
/* 80364AE8 00361A28 40 82 FF E8 */ bne lbl_80364AD0
/* 80364AEC 00361A2C 7C 7F 22 14 */ add r3, r31, r4
/* 80364AF0 00361A30 88 03 00 04 */ lbz r0, 4(r3)
/* 80364AF4 00361A34 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364AF8 00361A38 41 82 02 F0 */ beq lbl_80364DE8
lbl_80364AFC:
/* 80364AFC 00361A3C 88 7F 00 04 */ lbz r3, 4(r31)
/* 80364B00 00361A40 38 BF 00 05 */ addi r5, r31, 5
/* 80364B04 00361A44 38 00 00 00 */ li r0, 0
/* 80364B08 00361A48 38 83 FF FF */ addi r4, r3, -1
/* 80364B0C 00361A4C 7C 85 22 14 */ add r4, r5, r4
lbl_80364B10:
/* 80364B10 00361A50 88 64 00 00 */ lbz r3, 0(r4)
/* 80364B14 00361A54 28 03 00 09 */ cmplwi r3, 9
/* 80364B18 00361A58 40 80 00 10 */ bge lbl_80364B28
/* 80364B1C 00361A5C 38 03 00 01 */ addi r0, r3, 1
/* 80364B20 00361A60 98 04 00 00 */ stb r0, 0(r4)
/* 80364B24 00361A64 48 00 02 C4 */ b lbl_80364DE8
lbl_80364B28:
/* 80364B28 00361A68 7C 04 28 40 */ cmplw r4, r5
/* 80364B2C 00361A6C 40 82 00 1C */ bne lbl_80364B48
/* 80364B30 00361A70 38 00 00 01 */ li r0, 1
/* 80364B34 00361A74 98 04 00 00 */ stb r0, 0(r4)
/* 80364B38 00361A78 A8 7F 00 02 */ lha r3, 2(r31)
/* 80364B3C 00361A7C 38 03 00 01 */ addi r0, r3, 1
/* 80364B40 00361A80 B0 1F 00 02 */ sth r0, 2(r31)
/* 80364B44 00361A84 48 00 02 A4 */ b lbl_80364DE8
lbl_80364B48:
/* 80364B48 00361A88 98 04 00 00 */ stb r0, 0(r4)
/* 80364B4C 00361A8C 38 84 FF FF */ addi r4, r4, -1
/* 80364B50 00361A90 4B FF FF C0 */ b lbl_80364B10
/* 80364B54 00361A94 48 00 02 94 */ b lbl_80364DE8
lbl_80364B58:
/* 80364B58 00361A98 57 C0 0F FE */ srwi r0, r30, 0x1f
/* 80364B5C 00361A9C 38 61 00 34 */ addi r3, r1, 0x34
/* 80364B60 00361AA0 7C 00 F2 14 */ add r0, r0, r30
/* 80364B64 00361AA4 7C 04 0E 70 */ srawi r4, r0, 1
/* 80364B68 00361AA8 4B FF EB 15 */ bl func_8036367C
/* 80364B6C 00361AAC 38 81 00 34 */ addi r4, r1, 0x34
/* 80364B70 00361AB0 7F E3 FB 78 */ mr r3, r31
/* 80364B74 00361AB4 7C 85 23 78 */ mr r5, r4
/* 80364B78 00361AB8 48 00 02 89 */ bl func_80364E00
/* 80364B7C 00361ABC 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
/* 80364B80 00361AC0 41 82 02 68 */ beq lbl_80364DE8
/* 80364B84 00361AC4 80 7F 00 00 */ lwz r3, 0(r31)
/* 80364B88 00361AC8 2C 1E 00 00 */ cmpwi r30, 0
/* 80364B8C 00361ACC 80 1F 00 04 */ lwz r0, 4(r31)
/* 80364B90 00361AD0 90 61 00 08 */ stw r3, 8(r1)
/* 80364B94 00361AD4 90 01 00 0C */ stw r0, 0xc(r1)
/* 80364B98 00361AD8 80 7F 00 08 */ lwz r3, 8(r31)
/* 80364B9C 00361ADC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80364BA0 00361AE0 90 61 00 10 */ stw r3, 0x10(r1)
/* 80364BA4 00361AE4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80364BA8 00361AE8 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80364BAC 00361AEC 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 80364BB0 00361AF0 90 61 00 18 */ stw r3, 0x18(r1)
/* 80364BB4 00361AF4 90 01 00 1C */ stw r0, 0x1c(r1)
/* 80364BB8 00361AF8 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80364BBC 00361AFC 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 80364BC0 00361B00 90 61 00 20 */ stw r3, 0x20(r1)
/* 80364BC4 00361B04 90 01 00 24 */ stw r0, 0x24(r1)
/* 80364BC8 00361B08 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 80364BCC 00361B0C 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 80364BD0 00361B10 90 61 00 28 */ stw r3, 0x28(r1)
/* 80364BD4 00361B14 90 01 00 2C */ stw r0, 0x2c(r1)
/* 80364BD8 00361B18 A0 1F 00 28 */ lhz r0, 0x28(r31)
/* 80364BDC 00361B1C B0 01 00 30 */ sth r0, 0x30(r1)
/* 80364BE0 00361B20 40 81 00 FC */ ble lbl_80364CDC
/* 80364BE4 00361B24 38 A0 00 00 */ li r5, 0
/* 80364BE8 00361B28 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364BEC 00361B2C 38 83 22 38 */ addi r4, r3, lbl_803A2238@l
/* 80364BF0 00361B30 B0 A1 00 36 */ sth r5, 0x36(r1)
/* 80364BF4 00361B34 38 61 00 34 */ addi r3, r1, 0x34
/* 80364BF8 00361B38 98 A1 00 34 */ stb r5, 0x34(r1)
/* 80364BFC 00361B3C 38 C4 00 C6 */ addi r6, r4, 0xc6
/* 80364C00 00361B40 48 00 00 1C */ b lbl_80364C1C
lbl_80364C04:
/* 80364C04 00361B44 88 86 00 00 */ lbz r4, 0(r6)
/* 80364C08 00361B48 38 05 00 05 */ addi r0, r5, 5
/* 80364C0C 00361B4C 38 C6 00 01 */ addi r6, r6, 1
/* 80364C10 00361B50 38 A5 00 01 */ addi r5, r5, 1
/* 80364C14 00361B54 38 84 FF D0 */ addi r4, r4, -48
/* 80364C18 00361B58 7C 83 01 AE */ stbx r4, r3, r0
lbl_80364C1C:
/* 80364C1C 00361B5C 2C 05 00 24 */ cmpwi r5, 0x24
/* 80364C20 00361B60 40 80 00 10 */ bge lbl_80364C30
/* 80364C24 00361B64 88 06 00 00 */ lbz r0, 0(r6)
/* 80364C28 00361B68 7C 00 07 75 */ extsb. r0, r0
/* 80364C2C 00361B6C 40 82 FF D8 */ bne lbl_80364C04
lbl_80364C30:
/* 80364C30 00361B70 98 A1 00 38 */ stb r5, 0x38(r1)
/* 80364C34 00361B74 88 66 00 00 */ lbz r3, 0(r6)
/* 80364C38 00361B78 7C 60 07 75 */ extsb. r0, r3
/* 80364C3C 00361B7C 41 82 01 9C */ beq lbl_80364DD8
/* 80364C40 00361B80 7C 60 07 74 */ extsb r0, r3
/* 80364C44 00361B84 2C 00 00 05 */ cmpwi r0, 5
/* 80364C48 00361B88 41 80 01 90 */ blt lbl_80364DD8
/* 80364C4C 00361B8C 41 81 00 38 */ bgt lbl_80364C84
/* 80364C50 00361B90 38 66 00 01 */ addi r3, r6, 1
/* 80364C54 00361B94 48 00 00 14 */ b lbl_80364C68
lbl_80364C58:
/* 80364C58 00361B98 7C 80 07 74 */ extsb r0, r4
/* 80364C5C 00361B9C 2C 00 00 30 */ cmpwi r0, 0x30
/* 80364C60 00361BA0 40 82 00 24 */ bne lbl_80364C84
/* 80364C64 00361BA4 38 63 00 01 */ addi r3, r3, 1
lbl_80364C68:
/* 80364C68 00361BA8 88 83 00 00 */ lbz r4, 0(r3)
/* 80364C6C 00361BAC 7C 80 07 75 */ extsb. r0, r4
/* 80364C70 00361BB0 40 82 FF E8 */ bne lbl_80364C58
/* 80364C74 00361BB4 38 61 00 38 */ addi r3, r1, 0x38
/* 80364C78 00361BB8 7C 03 28 AE */ lbzx r0, r3, r5
/* 80364C7C 00361BBC 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364C80 00361BC0 41 82 01 58 */ beq lbl_80364DD8
lbl_80364C84:
/* 80364C84 00361BC4 88 61 00 38 */ lbz r3, 0x38(r1)
/* 80364C88 00361BC8 38 A1 00 39 */ addi r5, r1, 0x39
/* 80364C8C 00361BCC 38 00 00 00 */ li r0, 0
/* 80364C90 00361BD0 38 83 FF FF */ addi r4, r3, -1
/* 80364C94 00361BD4 7C 85 22 14 */ add r4, r5, r4
lbl_80364C98:
/* 80364C98 00361BD8 88 64 00 00 */ lbz r3, 0(r4)
/* 80364C9C 00361BDC 28 03 00 09 */ cmplwi r3, 9
/* 80364CA0 00361BE0 40 80 00 10 */ bge lbl_80364CB0
/* 80364CA4 00361BE4 38 03 00 01 */ addi r0, r3, 1
/* 80364CA8 00361BE8 98 04 00 00 */ stb r0, 0(r4)
/* 80364CAC 00361BEC 48 00 01 2C */ b lbl_80364DD8
lbl_80364CB0:
/* 80364CB0 00361BF0 7C 04 28 40 */ cmplw r4, r5
/* 80364CB4 00361BF4 40 82 00 1C */ bne lbl_80364CD0
/* 80364CB8 00361BF8 38 00 00 01 */ li r0, 1
/* 80364CBC 00361BFC 98 04 00 00 */ stb r0, 0(r4)
/* 80364CC0 00361C00 A8 61 00 36 */ lha r3, 0x36(r1)
/* 80364CC4 00361C04 38 03 00 01 */ addi r0, r3, 1
/* 80364CC8 00361C08 B0 01 00 36 */ sth r0, 0x36(r1)
/* 80364CCC 00361C0C 48 00 01 0C */ b lbl_80364DD8
lbl_80364CD0:
/* 80364CD0 00361C10 98 04 00 00 */ stb r0, 0(r4)
/* 80364CD4 00361C14 38 84 FF FF */ addi r4, r4, -1
/* 80364CD8 00361C18 4B FF FF C0 */ b lbl_80364C98
lbl_80364CDC:
/* 80364CDC 00361C1C 38 A0 00 00 */ li r5, 0
/* 80364CE0 00361C20 3C 60 80 3A */ lis r3, lbl_803A2238@ha
/* 80364CE4 00361C24 38 00 FF FF */ li r0, -1
/* 80364CE8 00361C28 98 A1 00 34 */ stb r5, 0x34(r1)
/* 80364CEC 00361C2C 38 63 22 38 */ addi r3, r3, lbl_803A2238@l
/* 80364CF0 00361C30 38 C3 00 C2 */ addi r6, r3, 0xc2
/* 80364CF4 00361C34 B0 01 00 36 */ sth r0, 0x36(r1)
/* 80364CF8 00361C38 38 61 00 34 */ addi r3, r1, 0x34
/* 80364CFC 00361C3C 48 00 00 1C */ b lbl_80364D18
lbl_80364D00:
/* 80364D00 00361C40 88 86 00 00 */ lbz r4, 0(r6)
/* 80364D04 00361C44 38 05 00 05 */ addi r0, r5, 5
/* 80364D08 00361C48 38 C6 00 01 */ addi r6, r6, 1
/* 80364D0C 00361C4C 38 A5 00 01 */ addi r5, r5, 1
/* 80364D10 00361C50 38 84 FF D0 */ addi r4, r4, -48
/* 80364D14 00361C54 7C 83 01 AE */ stbx r4, r3, r0
lbl_80364D18:
/* 80364D18 00361C58 2C 05 00 24 */ cmpwi r5, 0x24
/* 80364D1C 00361C5C 40 80 00 10 */ bge lbl_80364D2C
/* 80364D20 00361C60 88 06 00 00 */ lbz r0, 0(r6)
/* 80364D24 00361C64 7C 00 07 75 */ extsb. r0, r0
/* 80364D28 00361C68 40 82 FF D8 */ bne lbl_80364D00
lbl_80364D2C:
/* 80364D2C 00361C6C 98 A1 00 38 */ stb r5, 0x38(r1)
/* 80364D30 00361C70 88 66 00 00 */ lbz r3, 0(r6)
/* 80364D34 00361C74 7C 60 07 75 */ extsb. r0, r3
/* 80364D38 00361C78 41 82 00 A0 */ beq lbl_80364DD8
/* 80364D3C 00361C7C 7C 60 07 74 */ extsb r0, r3
/* 80364D40 00361C80 2C 00 00 05 */ cmpwi r0, 5
/* 80364D44 00361C84 41 80 00 94 */ blt lbl_80364DD8
/* 80364D48 00361C88 41 81 00 38 */ bgt lbl_80364D80
/* 80364D4C 00361C8C 38 66 00 01 */ addi r3, r6, 1
/* 80364D50 00361C90 48 00 00 14 */ b lbl_80364D64
lbl_80364D54:
/* 80364D54 00361C94 7C 80 07 74 */ extsb r0, r4
/* 80364D58 00361C98 2C 00 00 30 */ cmpwi r0, 0x30
/* 80364D5C 00361C9C 40 82 00 24 */ bne lbl_80364D80
/* 80364D60 00361CA0 38 63 00 01 */ addi r3, r3, 1
lbl_80364D64:
/* 80364D64 00361CA4 88 83 00 00 */ lbz r4, 0(r3)
/* 80364D68 00361CA8 7C 80 07 75 */ extsb. r0, r4
/* 80364D6C 00361CAC 40 82 FF E8 */ bne lbl_80364D54
/* 80364D70 00361CB0 38 61 00 38 */ addi r3, r1, 0x38
/* 80364D74 00361CB4 7C 03 28 AE */ lbzx r0, r3, r5
/* 80364D78 00361CB8 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80364D7C 00361CBC 41 82 00 5C */ beq lbl_80364DD8
lbl_80364D80:
/* 80364D80 00361CC0 88 61 00 38 */ lbz r3, 0x38(r1)
/* 80364D84 00361CC4 38 A1 00 39 */ addi r5, r1, 0x39
/* 80364D88 00361CC8 38 00 00 00 */ li r0, 0
/* 80364D8C 00361CCC 38 83 FF FF */ addi r4, r3, -1
/* 80364D90 00361CD0 7C 85 22 14 */ add r4, r5, r4
lbl_80364D94:
/* 80364D94 00361CD4 88 64 00 00 */ lbz r3, 0(r4)
/* 80364D98 00361CD8 28 03 00 09 */ cmplwi r3, 9
/* 80364D9C 00361CDC 40 80 00 10 */ bge lbl_80364DAC
/* 80364DA0 00361CE0 38 03 00 01 */ addi r0, r3, 1
/* 80364DA4 00361CE4 98 04 00 00 */ stb r0, 0(r4)
/* 80364DA8 00361CE8 48 00 00 30 */ b lbl_80364DD8
lbl_80364DAC:
/* 80364DAC 00361CEC 7C 04 28 40 */ cmplw r4, r5
/* 80364DB0 00361CF0 40 82 00 1C */ bne lbl_80364DCC
/* 80364DB4 00361CF4 38 00 00 01 */ li r0, 1
/* 80364DB8 00361CF8 98 04 00 00 */ stb r0, 0(r4)
/* 80364DBC 00361CFC A8 61 00 36 */ lha r3, 0x36(r1)
/* 80364DC0 00361D00 38 03 00 01 */ addi r0, r3, 1
/* 80364DC4 00361D04 B0 01 00 36 */ sth r0, 0x36(r1)
/* 80364DC8 00361D08 48 00 00 10 */ b lbl_80364DD8
lbl_80364DCC:
/* 80364DCC 00361D0C 98 04 00 00 */ stb r0, 0(r4)
/* 80364DD0 00361D10 38 84 FF FF */ addi r4, r4, -1
/* 80364DD4 00361D14 4B FF FF C0 */ b lbl_80364D94
lbl_80364DD8:
/* 80364DD8 00361D18 7F E3 FB 78 */ mr r3, r31
/* 80364DDC 00361D1C 38 81 00 08 */ addi r4, r1, 8
/* 80364DE0 00361D20 38 A1 00 34 */ addi r5, r1, 0x34
/* 80364DE4 00361D24 48 00 00 1D */ bl func_80364E00
lbl_80364DE8:
/* 80364DE8 00361D28 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80364DEC 00361D2C 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 80364DF0 00361D30 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 80364DF4 00361D34 7C 08 03 A6 */ mtlr r0
/* 80364DF8 00361D38 38 21 00 70 */ addi r1, r1, 0x70
/* 80364DFC 00361D3C 4E 80 00 20 */ blr
.global func_80364E00
func_80364E00:
/* 80364E00 00361D40 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80364E04 00361D44 3C E0 CC CD */ lis r7, 0xCCCCCCCD@ha
/* 80364E08 00361D48 89 85 00 04 */ lbz r12, 4(r5)
/* 80364E0C 00361D4C 38 00 00 00 */ li r0, 0
/* 80364E10 00361D50 BF 61 00 5C */ stmw r27, 0x5c(r1)
/* 80364E14 00361D54 39 01 00 08 */ addi r8, r1, 8
/* 80364E18 00361D58 8B E4 00 04 */ lbz r31, 4(r4)
/* 80364E1C 00361D5C 3B AC FF FF */ addi r29, r12, -1
/* 80364E20 00361D60 39 27 CC CD */ addi r9, r7, 0xCCCCCCCD@l
/* 80364E24 00361D64 3B C0 00 00 */ li r30, 0
/* 80364E28 00361D68 7F BF EA 14 */ add r29, r31, r29
/* 80364E2C 00361D6C 38 DD 00 01 */ addi r6, r29, 1
/* 80364E30 00361D70 7C C8 32 14 */ add r6, r8, r6
/* 80364E34 00361D74 98 03 00 00 */ stb r0, 0(r3)
/* 80364E38 00361D78 7C C0 33 78 */ mr r0, r6
/* 80364E3C 00361D7C 48 00 01 2C */ b lbl_80364F68
lbl_80364E40:
/* 80364E40 00361D80 39 0C FF FF */ addi r8, r12, -1
/* 80364E44 00361D84 7C E8 E8 50 */ subf r7, r8, r29
/* 80364E48 00361D88 34 E7 FF FF */ addic. r7, r7, -1
/* 80364E4C 00361D8C 40 80 00 0C */ bge lbl_80364E58
/* 80364E50 00361D90 38 E0 00 00 */ li r7, 0
/* 80364E54 00361D94 39 1D FF FF */ addi r8, r29, -1
lbl_80364E58:
/* 80364E58 00361D98 39 48 00 01 */ addi r10, r8, 1
/* 80364E5C 00361D9C 7D 67 F8 50 */ subf r11, r7, r31
/* 80364E60 00361DA0 7C 0A 58 00 */ cmpw r10, r11
/* 80364E64 00361DA4 3B 87 00 05 */ addi r28, r7, 5
/* 80364E68 00361DA8 3B 68 00 05 */ addi r27, r8, 5
/* 80364E6C 00361DAC 7F 84 E2 14 */ add r28, r4, r28
/* 80364E70 00361DB0 7F 65 DA 14 */ add r27, r5, r27
/* 80364E74 00361DB4 40 81 00 08 */ ble lbl_80364E7C
/* 80364E78 00361DB8 7D 6A 5B 78 */ mr r10, r11
lbl_80364E7C:
/* 80364E7C 00361DBC 2C 0A 00 00 */ cmpwi r10, 0
/* 80364E80 00361DC0 7D 48 53 78 */ mr r8, r10
/* 80364E84 00361DC4 40 81 00 C4 */ ble lbl_80364F48
/* 80364E88 00361DC8 55 47 E8 FF */ rlwinm. r7, r10, 0x1d, 3, 0x1f
/* 80364E8C 00361DCC 7C E9 03 A6 */ mtctr r7
/* 80364E90 00361DD0 41 82 00 98 */ beq lbl_80364F28
lbl_80364E94:
/* 80364E94 00361DD4 89 7C 00 00 */ lbz r11, 0(r28)
/* 80364E98 00361DD8 89 5B 00 00 */ lbz r10, 0(r27)
/* 80364E9C 00361DDC 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364EA0 00361DE0 89 7C 00 01 */ lbz r11, 1(r28)
/* 80364EA4 00361DE4 89 5B FF FF */ lbz r10, -1(r27)
/* 80364EA8 00361DE8 7F DE 3A 14 */ add r30, r30, r7
/* 80364EAC 00361DEC 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364EB0 00361DF0 89 7C 00 02 */ lbz r11, 2(r28)
/* 80364EB4 00361DF4 89 5B FF FE */ lbz r10, -2(r27)
/* 80364EB8 00361DF8 7F DE 3A 14 */ add r30, r30, r7
/* 80364EBC 00361DFC 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364EC0 00361E00 89 7C 00 03 */ lbz r11, 3(r28)
/* 80364EC4 00361E04 89 5B FF FD */ lbz r10, -3(r27)
/* 80364EC8 00361E08 7F DE 3A 14 */ add r30, r30, r7
/* 80364ECC 00361E0C 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364ED0 00361E10 89 7C 00 04 */ lbz r11, 4(r28)
/* 80364ED4 00361E14 89 5B FF FC */ lbz r10, -4(r27)
/* 80364ED8 00361E18 7F DE 3A 14 */ add r30, r30, r7
/* 80364EDC 00361E1C 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364EE0 00361E20 89 7C 00 05 */ lbz r11, 5(r28)
/* 80364EE4 00361E24 89 5B FF FB */ lbz r10, -5(r27)
/* 80364EE8 00361E28 7F DE 3A 14 */ add r30, r30, r7
/* 80364EEC 00361E2C 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364EF0 00361E30 89 7C 00 06 */ lbz r11, 6(r28)
/* 80364EF4 00361E34 89 5B FF FA */ lbz r10, -6(r27)
/* 80364EF8 00361E38 7F DE 3A 14 */ add r30, r30, r7
/* 80364EFC 00361E3C 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364F00 00361E40 89 7C 00 07 */ lbz r11, 7(r28)
/* 80364F04 00361E44 89 5B FF F9 */ lbz r10, -7(r27)
/* 80364F08 00361E48 3B 9C 00 08 */ addi r28, r28, 8
/* 80364F0C 00361E4C 3B 7B FF F8 */ addi r27, r27, -8
/* 80364F10 00361E50 7F DE 3A 14 */ add r30, r30, r7
/* 80364F14 00361E54 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364F18 00361E58 7F DE 3A 14 */ add r30, r30, r7
/* 80364F1C 00361E5C 42 00 FF 78 */ bdnz lbl_80364E94
/* 80364F20 00361E60 71 08 00 07 */ andi. r8, r8, 7
/* 80364F24 00361E64 41 82 00 24 */ beq lbl_80364F48
lbl_80364F28:
/* 80364F28 00361E68 7D 09 03 A6 */ mtctr r8
lbl_80364F2C:
/* 80364F2C 00361E6C 89 7C 00 00 */ lbz r11, 0(r28)
/* 80364F30 00361E70 3B 9C 00 01 */ addi r28, r28, 1
/* 80364F34 00361E74 89 5B 00 00 */ lbz r10, 0(r27)
/* 80364F38 00361E78 3B 7B FF FF */ addi r27, r27, -1
/* 80364F3C 00361E7C 7C EB 51 D6 */ mullw r7, r11, r10
/* 80364F40 00361E80 7F DE 3A 14 */ add r30, r30, r7
/* 80364F44 00361E84 42 00 FF E8 */ bdnz lbl_80364F2C
lbl_80364F48:
/* 80364F48 00361E88 7D 09 F0 16 */ mulhwu r8, r9, r30
/* 80364F4C 00361E8C 3B BD FF FF */ addi r29, r29, -1
/* 80364F50 00361E90 7D 07 43 78 */ mr r7, r8
/* 80364F54 00361E94 55 08 E8 FE */ srwi r8, r8, 3
/* 80364F58 00361E98 1D 08 00 0A */ mulli r8, r8, 0xa
/* 80364F5C 00361E9C 7D 08 F0 50 */ subf r8, r8, r30
/* 80364F60 00361EA0 54 FE E8 FE */ srwi r30, r7, 3
/* 80364F64 00361EA4 9D 06 FF FF */ stbu r8, -1(r6)
lbl_80364F68:
/* 80364F68 00361EA8 2C 1D 00 00 */ cmpwi r29, 0
/* 80364F6C 00361EAC 41 81 FE D4 */ bgt lbl_80364E40
/* 80364F70 00361EB0 A8 E4 00 02 */ lha r7, 2(r4)
/* 80364F74 00361EB4 28 1E 00 00 */ cmplwi r30, 0
/* 80364F78 00361EB8 A8 85 00 02 */ lha r4, 2(r5)
/* 80364F7C 00361EBC 7C 87 22 14 */ add r4, r7, r4
/* 80364F80 00361EC0 B0 83 00 02 */ sth r4, 2(r3)
/* 80364F84 00361EC4 41 82 00 14 */ beq lbl_80364F98
/* 80364F88 00361EC8 9F C6 FF FF */ stbu r30, -1(r6)
/* 80364F8C 00361ECC A8 83 00 02 */ lha r4, 2(r3)
/* 80364F90 00361ED0 38 84 00 01 */ addi r4, r4, 1
/* 80364F94 00361ED4 B0 83 00 02 */ sth r4, 2(r3)
lbl_80364F98:
/* 80364F98 00361ED8 38 E0 00 00 */ li r7, 0
/* 80364F9C 00361EDC 48 00 00 18 */ b lbl_80364FB4
lbl_80364FA0:
/* 80364FA0 00361EE0 88 A6 00 00 */ lbz r5, 0(r6)
/* 80364FA4 00361EE4 38 87 00 05 */ addi r4, r7, 5
/* 80364FA8 00361EE8 38 E7 00 01 */ addi r7, r7, 1
/* 80364FAC 00361EEC 38 C6 00 01 */ addi r6, r6, 1
/* 80364FB0 00361EF0 7C A3 21 AE */ stbx r5, r3, r4
lbl_80364FB4:
/* 80364FB4 00361EF4 2C 07 00 24 */ cmpwi r7, 0x24
/* 80364FB8 00361EF8 40 80 00 0C */ bge lbl_80364FC4
/* 80364FBC 00361EFC 7C 06 00 40 */ cmplw r6, r0
/* 80364FC0 00361F00 41 80 FF E0 */ blt lbl_80364FA0
lbl_80364FC4:
/* 80364FC4 00361F04 7C 06 00 40 */ cmplw r6, r0
/* 80364FC8 00361F08 98 E3 00 04 */ stb r7, 4(r3)
/* 80364FCC 00361F0C 40 80 00 A0 */ bge lbl_8036506C
/* 80364FD0 00361F10 88 86 00 00 */ lbz r4, 0(r6)
/* 80364FD4 00361F14 28 04 00 05 */ cmplwi r4, 5
/* 80364FD8 00361F18 41 80 00 94 */ blt lbl_8036506C
/* 80364FDC 00361F1C 40 82 00 38 */ bne lbl_80365014
/* 80364FE0 00361F20 38 A6 00 01 */ addi r5, r6, 1
/* 80364FE4 00361F24 7C 85 00 50 */ subf r4, r5, r0
/* 80364FE8 00361F28 7C 89 03 A6 */ mtctr r4
/* 80364FEC 00361F2C 7C 05 00 40 */ cmplw r5, r0
/* 80364FF0 00361F30 40 80 00 18 */ bge lbl_80365008
lbl_80364FF4:
/* 80364FF4 00361F34 88 05 00 00 */ lbz r0, 0(r5)
/* 80364FF8 00361F38 28 00 00 00 */ cmplwi r0, 0
/* 80364FFC 00361F3C 40 82 00 18 */ bne lbl_80365014
/* 80365000 00361F40 38 A5 00 01 */ addi r5, r5, 1
/* 80365004 00361F44 42 00 FF F0 */ bdnz lbl_80364FF4
lbl_80365008:
/* 80365008 00361F48 88 06 FF FF */ lbz r0, -1(r6)
/* 8036500C 00361F4C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80365010 00361F50 41 82 00 5C */ beq lbl_8036506C
lbl_80365014:
/* 80365014 00361F54 88 83 00 04 */ lbz r4, 4(r3)
/* 80365018 00361F58 38 C3 00 05 */ addi r6, r3, 5
/* 8036501C 00361F5C 38 00 00 00 */ li r0, 0
/* 80365020 00361F60 38 A4 FF FF */ addi r5, r4, -1
/* 80365024 00361F64 7C A6 2A 14 */ add r5, r6, r5
lbl_80365028:
/* 80365028 00361F68 88 85 00 00 */ lbz r4, 0(r5)
/* 8036502C 00361F6C 28 04 00 09 */ cmplwi r4, 9
/* 80365030 00361F70 40 80 00 10 */ bge lbl_80365040
/* 80365034 00361F74 38 04 00 01 */ addi r0, r4, 1
/* 80365038 00361F78 98 05 00 00 */ stb r0, 0(r5)
/* 8036503C 00361F7C 48 00 00 30 */ b lbl_8036506C
lbl_80365040:
/* 80365040 00361F80 7C 05 30 40 */ cmplw r5, r6
/* 80365044 00361F84 40 82 00 1C */ bne lbl_80365060
/* 80365048 00361F88 38 00 00 01 */ li r0, 1
/* 8036504C 00361F8C 98 05 00 00 */ stb r0, 0(r5)
/* 80365050 00361F90 A8 83 00 02 */ lha r4, 2(r3)
/* 80365054 00361F94 38 04 00 01 */ addi r0, r4, 1
/* 80365058 00361F98 B0 03 00 02 */ sth r0, 2(r3)
/* 8036505C 00361F9C 48 00 00 10 */ b lbl_8036506C
lbl_80365060:
/* 80365060 00361FA0 98 05 00 00 */ stb r0, 0(r5)
/* 80365064 00361FA4 38 A5 FF FF */ addi r5, r5, -1
/* 80365068 00361FA8 4B FF FF C0 */ b lbl_80365028
lbl_8036506C:
/* 8036506C 00361FAC BB 61 00 5C */ lmw r27, 0x5c(r1)
/* 80365070 00361FB0 38 21 00 70 */ addi r1, r1, 0x70
/* 80365074 00361FB4 4E 80 00 20 */ blr
.global func_80365078
func_80365078:
/* 80365078 00361FB8 7C 67 1B 79 */ or. r7, r3, r3
/* 8036507C 00361FBC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80365080 00361FC0 38 A0 00 01 */ li r5, 1
/* 80365084 00361FC4 38 C0 00 01 */ li r6, 1
/* 80365088 00361FC8 40 80 00 0C */ bge lbl_80365094
/* 8036508C 00361FCC 7C E7 00 D0 */ neg r7, r7
/* 80365090 00361FD0 38 A0 FF FF */ li r5, -1
lbl_80365094:
/* 80365094 00361FD4 2C 04 00 00 */ cmpwi r4, 0
/* 80365098 00361FD8 40 80 00 0C */ bge lbl_803650A4
/* 8036509C 00361FDC 7C 84 00 D0 */ neg r4, r4
/* 803650A0 00361FE0 38 C0 FF FF */ li r6, -1
lbl_803650A4:
/* 803650A4 00361FE4 7C 67 23 D6 */ divw r3, r7, r4
/* 803650A8 00361FE8 7C 05 31 D6 */ mullw r0, r5, r6
/* 803650AC 00361FEC 7C 63 01 D6 */ mullw r3, r3, r0
/* 803650B0 00361FF0 7C 03 21 D6 */ mullw r0, r3, r4
/* 803650B4 00361FF4 90 61 00 08 */ stw r3, 8(r1)
/* 803650B8 00361FF8 7C 86 01 D6 */ mullw r4, r6, r0
/* 803650BC 00361FFC 7C 07 29 D6 */ mullw r0, r7, r5
/* 803650C0 00362000 7C 84 00 50 */ subf r4, r4, r0
/* 803650C4 00362004 90 81 00 0C */ stw r4, 0xc(r1)
/* 803650C8 00362008 38 21 00 10 */ addi r1, r1, 0x10
/* 803650CC 0036200C 4E 80 00 20 */ blr
.global func_803650D0
func_803650D0:
/* 803650D0 00362010 7C 64 FE 70 */ srawi r4, r3, 0x1f
/* 803650D4 00362014 7C 80 1A 78 */ xor r0, r4, r3
/* 803650D8 00362018 7C 64 00 50 */ subf r3, r4, r0
/* 803650DC 0036201C 4E 80 00 20 */ blr
.global func_803650E0
func_803650E0:
/* 803650E0 00362020 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803650E4 00362024 7C 08 02 A6 */ mflr r0
/* 803650E8 00362028 90 01 00 14 */ stw r0, 0x14(r1)
/* 803650EC 0036202C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803650F0 00362030 7C 7F 1B 78 */ mr r31, r3
/* 803650F4 00362034 93 C1 00 08 */ stw r30, 8(r1)
/* 803650F8 00362038 7C 9E 23 78 */ mr r30, r4
/* 803650FC 0036203C 80 63 00 1C */ lwz r3, 0x1c(r3)
/* 80365100 00362040 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 80365104 00362044 7C 03 00 51 */ subf. r0, r3, r0
/* 80365108 00362048 41 82 00 50 */ beq lbl_80365158
/* 8036510C 0036204C 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365110 00362050 38 BF 00 28 */ addi r5, r31, 0x28
/* 80365114 00362054 81 9F 00 40 */ lwz r12, 0x40(r31)
/* 80365118 00362058 80 7F 00 00 */ lwz r3, 0(r31)
/* 8036511C 0036205C 80 9F 00 1C */ lwz r4, 0x1c(r31)
/* 80365120 00362060 80 DF 00 48 */ lwz r6, 0x48(r31)
/* 80365124 00362064 7D 89 03 A6 */ mtctr r12
/* 80365128 00362068 4E 80 04 21 */ bctrl
/* 8036512C 0036206C 28 1E 00 00 */ cmplwi r30, 0
/* 80365130 00362070 41 82 00 0C */ beq lbl_8036513C
/* 80365134 00362074 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80365138 00362078 90 1E 00 00 */ stw r0, 0(r30)
lbl_8036513C:
/* 8036513C 0036207C 2C 03 00 00 */ cmpwi r3, 0
/* 80365140 00362080 41 82 00 08 */ beq lbl_80365148
/* 80365144 00362084 48 00 00 48 */ b lbl_8036518C
lbl_80365148:
/* 80365148 00362088 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 8036514C 0036208C 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80365150 00362090 7C 03 02 14 */ add r0, r3, r0
/* 80365154 00362094 90 1F 00 18 */ stw r0, 0x18(r31)
lbl_80365158:
/* 80365158 00362098 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 8036515C 0036209C 38 60 00 00 */ li r3, 0
/* 80365160 003620A0 90 1F 00 24 */ stw r0, 0x24(r31)
/* 80365164 003620A4 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 80365168 003620A8 90 1F 00 28 */ stw r0, 0x28(r31)
/* 8036516C 003620AC 80 BF 00 18 */ lwz r5, 0x18(r31)
/* 80365170 003620B0 80 9F 00 2C */ lwz r4, 0x2c(r31)
/* 80365174 003620B4 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80365178 003620B8 7C A4 20 38 */ and r4, r5, r4
/* 8036517C 003620BC 7C 04 00 50 */ subf r0, r4, r0
/* 80365180 003620C0 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365184 003620C4 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 80365188 003620C8 90 1F 00 34 */ stw r0, 0x34(r31)
lbl_8036518C:
/* 8036518C 003620CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80365190 003620D0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80365194 003620D4 83 C1 00 08 */ lwz r30, 8(r1)
/* 80365198 003620D8 7C 08 03 A6 */ mtlr r0
/* 8036519C 003620DC 38 21 00 10 */ addi r1, r1, 0x10
/* 803651A0 003620E0 4E 80 00 20 */ blr
.global func_803651A4
func_803651A4:
/* 803651A4 003620E4 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 803651A8 003620E8 90 03 00 24 */ stw r0, 0x24(r3)
/* 803651AC 003620EC 80 03 00 20 */ lwz r0, 0x20(r3)
/* 803651B0 003620F0 90 03 00 28 */ stw r0, 0x28(r3)
/* 803651B4 003620F4 80 A3 00 18 */ lwz r5, 0x18(r3)
/* 803651B8 003620F8 80 83 00 2C */ lwz r4, 0x2c(r3)
/* 803651BC 003620FC 80 03 00 28 */ lwz r0, 0x28(r3)
/* 803651C0 00362100 7C A4 20 38 */ and r4, r5, r4
/* 803651C4 00362104 7C 04 00 50 */ subf r0, r4, r0
/* 803651C8 00362108 90 03 00 28 */ stw r0, 0x28(r3)
/* 803651CC 0036210C 80 03 00 18 */ lwz r0, 0x18(r3)
/* 803651D0 00362110 90 03 00 34 */ stw r0, 0x34(r3)
/* 803651D4 00362114 4E 80 00 20 */ blr
.global func_803651D8
func_803651D8:
/* 803651D8 00362118 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803651DC 0036211C 7C 08 02 A6 */ mflr r0
/* 803651E0 00362120 90 01 00 24 */ stw r0, 0x24(r1)
/* 803651E4 00362124 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803651E8 00362128 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803651EC 0036212C 3B C0 00 00 */ li r30, 0
/* 803651F0 00362130 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803651F4 00362134 7C 9D 23 78 */ mr r29, r4
/* 803651F8 00362138 93 81 00 10 */ stw r28, 0x10(r1)
/* 803651FC 0036213C 7C 7C 1B 78 */ mr r28, r3
/* 80365200 00362140 38 60 00 02 */ li r3, 2
/* 80365204 00362144 48 00 02 65 */ bl func_80365468
/* 80365208 00362148 48 00 00 68 */ b lbl_80365270
lbl_8036520C:
/* 8036520C 0036214C 7F A3 EB 78 */ mr r3, r29
/* 80365210 00362150 38 80 FF FF */ li r4, -1
/* 80365214 00362154 48 00 3F 01 */ bl func_80369114
/* 80365218 00362158 2C 03 00 00 */ cmpwi r3, 0
/* 8036521C 0036215C 41 80 00 0C */ blt lbl_80365228
/* 80365220 00362160 38 60 FF FF */ li r3, -1
/* 80365224 00362164 48 00 00 3C */ b lbl_80365260
lbl_80365228:
/* 80365228 00362168 80 7D 00 28 */ lwz r3, 0x28(r29)
/* 8036522C 0036216C 38 03 FF FF */ addi r0, r3, -1
/* 80365230 00362170 28 03 00 00 */ cmplwi r3, 0
/* 80365234 00362174 90 1D 00 28 */ stw r0, 0x28(r29)
/* 80365238 00362178 41 82 00 1C */ beq lbl_80365254
/* 8036523C 0036217C 80 9D 00 24 */ lwz r4, 0x24(r29)
/* 80365240 00362180 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 80365244 00362184 38 04 00 01 */ addi r0, r4, 1
/* 80365248 00362188 90 1D 00 24 */ stw r0, 0x24(r29)
/* 8036524C 0036218C 9B E4 00 00 */ stb r31, 0(r4)
/* 80365250 00362190 48 00 00 10 */ b lbl_80365260
lbl_80365254:
/* 80365254 00362194 7F E3 FB 78 */ mr r3, r31
/* 80365258 00362198 7F A4 EB 78 */ mr r4, r29
/* 8036525C 0036219C 48 00 00 51 */ bl func_803652AC
lbl_80365260:
/* 80365260 003621A0 2C 03 FF FF */ cmpwi r3, -1
/* 80365264 003621A4 40 82 00 0C */ bne lbl_80365270
/* 80365268 003621A8 3B C0 FF FF */ li r30, -1
/* 8036526C 003621AC 48 00 00 14 */ b lbl_80365280
lbl_80365270:
/* 80365270 003621B0 88 1C 00 00 */ lbz r0, 0(r28)
/* 80365274 003621B4 3B 9C 00 01 */ addi r28, r28, 1
/* 80365278 003621B8 7C 1F 07 75 */ extsb. r31, r0
/* 8036527C 003621BC 40 82 FF 90 */ bne lbl_8036520C
lbl_80365280:
/* 80365280 003621C0 38 60 00 02 */ li r3, 2
/* 80365284 003621C4 48 00 01 E1 */ bl func_80365464
/* 80365288 003621C8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036528C 003621CC 7F C3 F3 78 */ mr r3, r30
/* 80365290 003621D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365294 003621D4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365298 003621D8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036529C 003621DC 83 81 00 10 */ lwz r28, 0x10(r1)
/* 803652A0 003621E0 7C 08 03 A6 */ mtlr r0
/* 803652A4 003621E4 38 21 00 20 */ addi r1, r1, 0x20
/* 803652A8 003621E8 4E 80 00 20 */ blr
.global func_803652AC
func_803652AC:
/* 803652AC 003621EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803652B0 003621F0 7C 08 02 A6 */ mflr r0
/* 803652B4 003621F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 803652B8 003621F8 38 00 00 00 */ li r0, 0
/* 803652BC 003621FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803652C0 00362200 7C 9F 23 78 */ mr r31, r4
/* 803652C4 00362204 93 C1 00 08 */ stw r30, 8(r1)
/* 803652C8 00362208 7C 7E 1B 78 */ mr r30, r3
/* 803652CC 0036220C A0 84 00 04 */ lhz r4, 4(r4)
/* 803652D0 00362210 90 1F 00 28 */ stw r0, 0x28(r31)
/* 803652D4 00362214 54 83 D7 7E */ rlwinm r3, r4, 0x1a, 0x1d, 0x1f
/* 803652D8 00362218 88 1F 00 0A */ lbz r0, 0xa(r31)
/* 803652DC 0036221C 28 00 00 00 */ cmplwi r0, 0
/* 803652E0 00362220 40 82 00 0C */ bne lbl_803652EC
/* 803652E4 00362224 2C 03 00 00 */ cmpwi r3, 0
/* 803652E8 00362228 40 82 00 0C */ bne lbl_803652F4
lbl_803652EC:
/* 803652EC 0036222C 38 60 FF FF */ li r3, -1
/* 803652F0 00362230 48 00 01 5C */ b lbl_8036544C
lbl_803652F4:
/* 803652F4 00362234 2C 03 00 02 */ cmpwi r3, 2
/* 803652F8 00362238 40 82 00 08 */ bne lbl_80365300
/* 803652FC 0036223C 48 00 11 D1 */ bl func_803664CC
lbl_80365300:
/* 80365300 00362240 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365304 00362244 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f
/* 80365308 00362248 40 82 00 54 */ bne lbl_8036535C
/* 8036530C 0036224C 88 7F 00 04 */ lbz r3, 4(r31)
/* 80365310 00362250 54 60 EF BD */ rlwinm. r0, r3, 0x1d, 0x1e, 0x1e
/* 80365314 00362254 54 63 EF 7E */ rlwinm r3, r3, 0x1d, 0x1d, 0x1f
/* 80365318 00362258 41 82 00 44 */ beq lbl_8036535C
/* 8036531C 0036225C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 80365320 00362260 41 82 00 24 */ beq lbl_80365344
/* 80365324 00362264 7F E3 FB 78 */ mr r3, r31
/* 80365328 00362268 38 80 00 00 */ li r4, 0
/* 8036532C 0036226C 38 A0 00 02 */ li r5, 2
/* 80365330 00362270 48 00 08 85 */ bl func_80365BB4
/* 80365334 00362274 2C 03 00 00 */ cmpwi r3, 0
/* 80365338 00362278 41 82 00 0C */ beq lbl_80365344
/* 8036533C 0036227C 38 60 00 00 */ li r3, 0
/* 80365340 00362280 48 00 01 0C */ b lbl_8036544C
lbl_80365344:
/* 80365344 00362284 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365348 00362288 38 60 00 01 */ li r3, 1
/* 8036534C 0036228C 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a
/* 80365350 00362290 7F E3 FB 78 */ mr r3, r31
/* 80365354 00362294 98 1F 00 08 */ stb r0, 8(r31)
/* 80365358 00362298 4B FF FE 4D */ bl func_803651A4
lbl_8036535C:
/* 8036535C 0036229C 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365360 003622A0 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365364 003622A4 28 00 00 01 */ cmplwi r0, 1
/* 80365368 003622A8 41 82 00 1C */ beq lbl_80365384
/* 8036536C 003622AC 38 60 00 01 */ li r3, 1
/* 80365370 003622B0 38 00 00 00 */ li r0, 0
/* 80365374 003622B4 98 7F 00 0A */ stb r3, 0xa(r31)
/* 80365378 003622B8 38 60 FF FF */ li r3, -1
/* 8036537C 003622BC 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365380 003622C0 48 00 00 CC */ b lbl_8036544C
lbl_80365384:
/* 80365384 003622C4 88 1F 00 04 */ lbz r0, 4(r31)
/* 80365388 003622C8 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 8036538C 003622CC 28 00 00 02 */ cmplwi r0, 2
/* 80365390 003622D0 41 82 00 1C */ beq lbl_803653AC
/* 80365394 003622D4 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 80365398 003622D8 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 8036539C 003622DC 80 9F 00 20 */ lwz r4, 0x20(r31)
/* 803653A0 003622E0 7C 03 00 50 */ subf r0, r3, r0
/* 803653A4 003622E4 7C 04 00 40 */ cmplw r4, r0
/* 803653A8 003622E8 40 82 00 30 */ bne lbl_803653D8
lbl_803653AC:
/* 803653AC 003622EC 7F E3 FB 78 */ mr r3, r31
/* 803653B0 003622F0 38 80 00 00 */ li r4, 0
/* 803653B4 003622F4 4B FF FD 2D */ bl func_803650E0
/* 803653B8 003622F8 2C 03 00 00 */ cmpwi r3, 0
/* 803653BC 003622FC 41 82 00 1C */ beq lbl_803653D8
/* 803653C0 00362300 38 60 00 01 */ li r3, 1
/* 803653C4 00362304 38 00 00 00 */ li r0, 0
/* 803653C8 00362308 98 7F 00 0A */ stb r3, 0xa(r31)
/* 803653CC 0036230C 38 60 FF FF */ li r3, -1
/* 803653D0 00362310 90 1F 00 28 */ stw r0, 0x28(r31)
/* 803653D4 00362314 48 00 00 78 */ b lbl_8036544C
lbl_803653D8:
/* 803653D8 00362318 80 7F 00 28 */ lwz r3, 0x28(r31)
/* 803653DC 0036231C 38 03 FF FF */ addi r0, r3, -1
/* 803653E0 00362320 90 1F 00 28 */ stw r0, 0x28(r31)
/* 803653E4 00362324 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 803653E8 00362328 38 03 00 01 */ addi r0, r3, 1
/* 803653EC 0036232C 90 1F 00 24 */ stw r0, 0x24(r31)
/* 803653F0 00362330 9B C3 00 00 */ stb r30, 0(r3)
/* 803653F4 00362334 88 1F 00 04 */ lbz r0, 4(r31)
/* 803653F8 00362338 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 803653FC 0036233C 28 00 00 02 */ cmplwi r0, 2
/* 80365400 00362340 41 82 00 48 */ beq lbl_80365448
/* 80365404 00362344 28 00 00 00 */ cmplwi r0, 0
/* 80365408 00362348 41 82 00 0C */ beq lbl_80365414
/* 8036540C 0036234C 2C 1E 00 0A */ cmpwi r30, 0xa
/* 80365410 00362350 40 82 00 30 */ bne lbl_80365440
lbl_80365414:
/* 80365414 00362354 7F E3 FB 78 */ mr r3, r31
/* 80365418 00362358 38 80 00 00 */ li r4, 0
/* 8036541C 0036235C 4B FF FC C5 */ bl func_803650E0
/* 80365420 00362360 2C 03 00 00 */ cmpwi r3, 0
/* 80365424 00362364 41 82 00 1C */ beq lbl_80365440
/* 80365428 00362368 38 60 00 01 */ li r3, 1
/* 8036542C 0036236C 38 00 00 00 */ li r0, 0
/* 80365430 00362370 98 7F 00 0A */ stb r3, 0xa(r31)
/* 80365434 00362374 38 60 FF FF */ li r3, -1
/* 80365438 00362378 90 1F 00 28 */ stw r0, 0x28(r31)
/* 8036543C 0036237C 48 00 00 10 */ b lbl_8036544C
lbl_80365440:
/* 80365440 00362380 38 00 00 00 */ li r0, 0
/* 80365444 00362384 90 1F 00 28 */ stw r0, 0x28(r31)
lbl_80365448:
/* 80365448 00362388 57 C3 06 3E */ clrlwi r3, r30, 0x18
lbl_8036544C:
/* 8036544C 0036238C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80365450 00362390 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80365454 00362394 83 C1 00 08 */ lwz r30, 8(r1)
/* 80365458 00362398 7C 08 03 A6 */ mtlr r0
/* 8036545C 0036239C 38 21 00 10 */ addi r1, r1, 0x10
/* 80365460 003623A0 4E 80 00 20 */ blr
.global func_80365464
func_80365464:
/* 80365464 003623A4 4E 80 00 20 */ blr
.global func_80365468
func_80365468:
/* 80365468 003623A8 4E 80 00 20 */ blr
.global func_8036546C
func_8036546C:
/* 8036546C 003623AC 4E 80 00 20 */ blr
.global func_80365470
func_80365470:
/* 80365470 003623B0 2C 03 FF FF */ cmpwi r3, -1
/* 80365474 003623B4 40 82 00 0C */ bne lbl_80365480
/* 80365478 003623B8 38 60 FF FF */ li r3, -1
/* 8036547C 003623BC 4E 80 00 20 */ blr
lbl_80365480:
/* 80365480 003623C0 3C 80 80 3D */ lis r4, lbl_803D2D18@ha
/* 80365484 003623C4 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80365488 003623C8 38 64 2D 18 */ addi r3, r4, lbl_803D2D18@l
/* 8036548C 003623CC 7C 63 00 AE */ lbzx r3, r3, r0
/* 80365490 003623D0 4E 80 00 20 */ blr
.global func_80365494
func_80365494:
/* 80365494 003623D4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80365498 003623D8 7C 08 02 A6 */ mflr r0
/* 8036549C 003623DC 90 01 00 34 */ stw r0, 0x34(r1)
/* 803654A0 003623E0 BF 21 00 14 */ stmw r25, 0x14(r1)
/* 803654A4 003623E4 7C 99 23 78 */ mr r25, r4
/* 803654A8 003623E8 7C DA 33 78 */ mr r26, r6
/* 803654AC 003623EC 7C 7B 1B 78 */ mr r27, r3
/* 803654B0 003623F0 7C BC 2B 78 */ mr r28, r5
/* 803654B4 003623F4 38 80 00 00 */ li r4, 0
/* 803654B8 003623F8 7F 43 D3 78 */ mr r3, r26
/* 803654BC 003623FC 48 00 3C 59 */ bl func_80369114
/* 803654C0 00362400 2C 03 00 00 */ cmpwi r3, 0
/* 803654C4 00362404 40 82 00 10 */ bne lbl_803654D4
/* 803654C8 00362408 7F 43 D3 78 */ mr r3, r26
/* 803654CC 0036240C 38 80 FF FF */ li r4, -1
/* 803654D0 00362410 48 00 3C 45 */ bl func_80369114
lbl_803654D4:
/* 803654D4 00362414 7F B9 E1 D7 */ mullw. r29, r25, r28
/* 803654D8 00362418 41 82 00 1C */ beq lbl_803654F4
/* 803654DC 0036241C 88 1A 00 0A */ lbz r0, 0xa(r26)
/* 803654E0 00362420 28 00 00 00 */ cmplwi r0, 0
/* 803654E4 00362424 40 82 00 10 */ bne lbl_803654F4
/* 803654E8 00362428 A0 1A 00 04 */ lhz r0, 4(r26)
/* 803654EC 0036242C 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 803654F0 00362430 40 82 00 0C */ bne lbl_803654FC
lbl_803654F4:
/* 803654F4 00362434 38 60 00 00 */ li r3, 0
/* 803654F8 00362438 48 00 02 94 */ b lbl_8036578C
lbl_803654FC:
/* 803654FC 0036243C 28 00 00 02 */ cmplwi r0, 2
/* 80365500 00362440 40 82 00 08 */ bne lbl_80365508
/* 80365504 00362444 48 00 0F C9 */ bl func_803664CC
lbl_80365508:
/* 80365508 00362448 88 1A 00 05 */ lbz r0, 5(r26)
/* 8036550C 0036244C 3B E0 00 01 */ li r31, 1
/* 80365510 00362450 38 60 00 00 */ li r3, 0
/* 80365514 00362454 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
/* 80365518 00362458 41 82 00 14 */ beq lbl_8036552C
/* 8036551C 0036245C 88 1A 00 04 */ lbz r0, 4(r26)
/* 80365520 00362460 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365524 00362464 28 00 00 02 */ cmplwi r0, 2
/* 80365528 00362468 40 82 00 08 */ bne lbl_80365530
lbl_8036552C:
/* 8036552C 0036246C 38 60 00 01 */ li r3, 1
lbl_80365530:
/* 80365530 00362470 2C 03 00 00 */ cmpwi r3, 0
/* 80365534 00362474 40 82 00 18 */ bne lbl_8036554C
/* 80365538 00362478 88 1A 00 04 */ lbz r0, 4(r26)
/* 8036553C 0036247C 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365540 00362480 28 00 00 01 */ cmplwi r0, 1
/* 80365544 00362484 41 82 00 08 */ beq lbl_8036554C
/* 80365548 00362488 3B E0 00 00 */ li r31, 0
lbl_8036554C:
/* 8036554C 0036248C 88 1A 00 08 */ lbz r0, 8(r26)
/* 80365550 00362490 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f
/* 80365554 00362494 40 82 00 54 */ bne lbl_803655A8
/* 80365558 00362498 88 7A 00 04 */ lbz r3, 4(r26)
/* 8036555C 0036249C 54 60 EF BD */ rlwinm. r0, r3, 0x1d, 0x1e, 0x1e
/* 80365560 003624A0 54 63 EF 7E */ rlwinm r3, r3, 0x1d, 0x1d, 0x1f
/* 80365564 003624A4 41 82 00 44 */ beq lbl_803655A8
/* 80365568 003624A8 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8036556C 003624AC 41 82 00 24 */ beq lbl_80365590
/* 80365570 003624B0 7F 43 D3 78 */ mr r3, r26
/* 80365574 003624B4 38 80 00 00 */ li r4, 0
/* 80365578 003624B8 38 A0 00 02 */ li r5, 2
/* 8036557C 003624BC 48 00 06 39 */ bl func_80365BB4
/* 80365580 003624C0 2C 03 00 00 */ cmpwi r3, 0
/* 80365584 003624C4 41 82 00 0C */ beq lbl_80365590
/* 80365588 003624C8 38 60 00 00 */ li r3, 0
/* 8036558C 003624CC 48 00 02 00 */ b lbl_8036578C
lbl_80365590:
/* 80365590 003624D0 88 1A 00 08 */ lbz r0, 8(r26)
/* 80365594 003624D4 38 60 00 01 */ li r3, 1
/* 80365598 003624D8 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a
/* 8036559C 003624DC 7F 43 D3 78 */ mr r3, r26
/* 803655A0 003624E0 98 1A 00 08 */ stb r0, 8(r26)
/* 803655A4 003624E4 4B FF FC 01 */ bl func_803651A4
lbl_803655A8:
/* 803655A8 003624E8 88 1A 00 08 */ lbz r0, 8(r26)
/* 803655AC 003624EC 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 803655B0 003624F0 28 00 00 01 */ cmplwi r0, 1
/* 803655B4 003624F4 41 82 00 1C */ beq lbl_803655D0
/* 803655B8 003624F8 38 60 00 01 */ li r3, 1
/* 803655BC 003624FC 38 00 00 00 */ li r0, 0
/* 803655C0 00362500 98 7A 00 0A */ stb r3, 0xa(r26)
/* 803655C4 00362504 38 60 00 00 */ li r3, 0
/* 803655C8 00362508 90 1A 00 28 */ stw r0, 0x28(r26)
/* 803655CC 0036250C 48 00 01 C0 */ b lbl_8036578C
lbl_803655D0:
/* 803655D0 00362510 28 1D 00 00 */ cmplwi r29, 0
/* 803655D4 00362514 7F 7E DB 78 */ mr r30, r27
/* 803655D8 00362518 3B 80 00 00 */ li r28, 0
/* 803655DC 0036251C 41 82 01 20 */ beq lbl_803656FC
/* 803655E0 00362520 80 9A 00 24 */ lwz r4, 0x24(r26)
/* 803655E4 00362524 80 7A 00 1C */ lwz r3, 0x1c(r26)
/* 803655E8 00362528 7C 04 18 40 */ cmplw r4, r3
/* 803655EC 0036252C 40 82 00 0C */ bne lbl_803655F8
/* 803655F0 00362530 2C 1F 00 00 */ cmpwi r31, 0
/* 803655F4 00362534 41 82 01 08 */ beq lbl_803656FC
lbl_803655F8:
/* 803655F8 00362538 80 1A 00 20 */ lwz r0, 0x20(r26)
/* 803655FC 0036253C 7C 63 20 50 */ subf r3, r3, r4
/* 80365600 00362540 7C 03 00 50 */ subf r0, r3, r0
/* 80365604 00362544 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365608:
/* 80365608 00362548 80 1A 00 28 */ lwz r0, 0x28(r26)
/* 8036560C 0036254C 3B 60 00 00 */ li r27, 0
/* 80365610 00362550 7C 00 E8 40 */ cmplw r0, r29
/* 80365614 00362554 90 01 00 08 */ stw r0, 8(r1)
/* 80365618 00362558 40 81 00 08 */ ble lbl_80365620
/* 8036561C 0036255C 93 A1 00 08 */ stw r29, 8(r1)
lbl_80365620:
/* 80365620 00362560 88 1A 00 04 */ lbz r0, 4(r26)
/* 80365624 00362564 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365628 00362568 28 00 00 01 */ cmplwi r0, 1
/* 8036562C 0036256C 40 82 00 30 */ bne lbl_8036565C
/* 80365630 00362570 80 A1 00 08 */ lwz r5, 8(r1)
/* 80365634 00362574 28 05 00 00 */ cmplwi r5, 0
/* 80365638 00362578 41 82 00 24 */ beq lbl_8036565C
/* 8036563C 0036257C 7F C3 F3 78 */ mr r3, r30
/* 80365640 00362580 38 80 00 0A */ li r4, 0xa
/* 80365644 00362584 48 00 0A 95 */ bl func_803660D8
/* 80365648 00362588 7C 7B 1B 79 */ or. r27, r3, r3
/* 8036564C 0036258C 41 82 00 10 */ beq lbl_8036565C
/* 80365650 00362590 38 1B 00 01 */ addi r0, r27, 1
/* 80365654 00362594 7C 1E 00 50 */ subf r0, r30, r0
/* 80365658 00362598 90 01 00 08 */ stw r0, 8(r1)
lbl_8036565C:
/* 8036565C 0036259C 80 A1 00 08 */ lwz r5, 8(r1)
/* 80365660 003625A0 28 05 00 00 */ cmplwi r5, 0
/* 80365664 003625A4 41 82 00 3C */ beq lbl_803656A0
/* 80365668 003625A8 80 7A 00 24 */ lwz r3, 0x24(r26)
/* 8036566C 003625AC 7F C4 F3 78 */ mr r4, r30
/* 80365670 003625B0 4B C9 DE D1 */ bl memcpy
/* 80365674 003625B4 80 61 00 08 */ lwz r3, 8(r1)
/* 80365678 003625B8 80 1A 00 24 */ lwz r0, 0x24(r26)
/* 8036567C 003625BC 7F DE 1A 14 */ add r30, r30, r3
/* 80365680 003625C0 7F 9C 1A 14 */ add r28, r28, r3
/* 80365684 003625C4 7C 00 1A 14 */ add r0, r0, r3
/* 80365688 003625C8 7F A3 E8 50 */ subf r29, r3, r29
/* 8036568C 003625CC 90 1A 00 24 */ stw r0, 0x24(r26)
/* 80365690 003625D0 80 61 00 08 */ lwz r3, 8(r1)
/* 80365694 003625D4 80 1A 00 28 */ lwz r0, 0x28(r26)
/* 80365698 003625D8 7C 03 00 50 */ subf r0, r3, r0
/* 8036569C 003625DC 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_803656A0:
/* 803656A0 003625E0 80 1A 00 28 */ lwz r0, 0x28(r26)
/* 803656A4 003625E4 28 00 00 00 */ cmplwi r0, 0
/* 803656A8 003625E8 41 82 00 18 */ beq lbl_803656C0
/* 803656AC 003625EC 28 1B 00 00 */ cmplwi r27, 0
/* 803656B0 003625F0 40 82 00 10 */ bne lbl_803656C0
/* 803656B4 003625F4 88 1A 00 04 */ lbz r0, 4(r26)
/* 803656B8 003625F8 54 00 FF BF */ rlwinm. r0, r0, 0x1f, 0x1e, 0x1f
/* 803656BC 003625FC 40 82 00 30 */ bne lbl_803656EC
lbl_803656C0:
/* 803656C0 00362600 7F 43 D3 78 */ mr r3, r26
/* 803656C4 00362604 38 80 00 00 */ li r4, 0
/* 803656C8 00362608 4B FF FA 19 */ bl func_803650E0
/* 803656CC 0036260C 2C 03 00 00 */ cmpwi r3, 0
/* 803656D0 00362610 41 82 00 1C */ beq lbl_803656EC
/* 803656D4 00362614 38 60 00 01 */ li r3, 1
/* 803656D8 00362618 38 00 00 00 */ li r0, 0
/* 803656DC 0036261C 98 7A 00 0A */ stb r3, 0xa(r26)
/* 803656E0 00362620 3B A0 00 00 */ li r29, 0
/* 803656E4 00362624 90 1A 00 28 */ stw r0, 0x28(r26)
/* 803656E8 00362628 48 00 00 14 */ b lbl_803656FC
lbl_803656EC:
/* 803656EC 0036262C 28 1D 00 00 */ cmplwi r29, 0
/* 803656F0 00362630 41 82 00 0C */ beq lbl_803656FC
/* 803656F4 00362634 2C 1F 00 00 */ cmpwi r31, 0
/* 803656F8 00362638 40 82 FF 10 */ bne lbl_80365608
lbl_803656FC:
/* 803656FC 0036263C 28 1D 00 00 */ cmplwi r29, 0
/* 80365700 00362640 41 82 00 68 */ beq lbl_80365768
/* 80365704 00362644 2C 1F 00 00 */ cmpwi r31, 0
/* 80365708 00362648 40 82 00 60 */ bne lbl_80365768
/* 8036570C 0036264C 83 7A 00 1C */ lwz r27, 0x1c(r26)
/* 80365710 00362650 7C 1E EA 14 */ add r0, r30, r29
/* 80365714 00362654 83 FA 00 20 */ lwz r31, 0x20(r26)
/* 80365718 00362658 7F 43 D3 78 */ mr r3, r26
/* 8036571C 0036265C 38 81 00 08 */ addi r4, r1, 8
/* 80365720 00362660 93 DA 00 1C */ stw r30, 0x1c(r26)
/* 80365724 00362664 93 BA 00 20 */ stw r29, 0x20(r26)
/* 80365728 00362668 90 1A 00 24 */ stw r0, 0x24(r26)
/* 8036572C 0036266C 4B FF F9 B5 */ bl func_803650E0
/* 80365730 00362670 2C 03 00 00 */ cmpwi r3, 0
/* 80365734 00362674 41 82 00 14 */ beq lbl_80365748
/* 80365738 00362678 38 60 00 01 */ li r3, 1
/* 8036573C 0036267C 38 00 00 00 */ li r0, 0
/* 80365740 00362680 98 7A 00 0A */ stb r3, 0xa(r26)
/* 80365744 00362684 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365748:
/* 80365748 00362688 80 01 00 08 */ lwz r0, 8(r1)
/* 8036574C 0036268C 7F 43 D3 78 */ mr r3, r26
/* 80365750 00362690 93 7A 00 1C */ stw r27, 0x1c(r26)
/* 80365754 00362694 7F 9C 02 14 */ add r28, r28, r0
/* 80365758 00362698 93 FA 00 20 */ stw r31, 0x20(r26)
/* 8036575C 0036269C 4B FF FA 49 */ bl func_803651A4
/* 80365760 003626A0 38 00 00 00 */ li r0, 0
/* 80365764 003626A4 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365768:
/* 80365768 003626A8 88 1A 00 04 */ lbz r0, 4(r26)
/* 8036576C 003626AC 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365770 003626B0 28 00 00 02 */ cmplwi r0, 2
/* 80365774 003626B4 41 82 00 0C */ beq lbl_80365780
/* 80365778 003626B8 38 00 00 00 */ li r0, 0
/* 8036577C 003626BC 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365780:
/* 80365780 003626C0 38 19 FF FF */ addi r0, r25, -1
/* 80365784 003626C4 7C 1C 02 14 */ add r0, r28, r0
/* 80365788 003626C8 7C 60 CB 96 */ divwu r3, r0, r25
lbl_8036578C:
/* 8036578C 003626CC BB 21 00 14 */ lmw r25, 0x14(r1)
/* 80365790 003626D0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80365794 003626D4 7C 08 03 A6 */ mtlr r0
/* 80365798 003626D8 38 21 00 30 */ addi r1, r1, 0x30
/* 8036579C 003626DC 4E 80 00 20 */ blr
.global func_803657A0
func_803657A0:
/* 803657A0 003626E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803657A4 003626E4 7C 08 02 A6 */ mflr r0
/* 803657A8 003626E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 803657AC 003626EC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803657B0 003626F0 7C DF 33 78 */ mr r31, r6
/* 803657B4 003626F4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803657B8 003626F8 7C BE 2B 78 */ mr r30, r5
/* 803657BC 003626FC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803657C0 00362700 7C 9D 23 78 */ mr r29, r4
/* 803657C4 00362704 93 81 00 10 */ stw r28, 0x10(r1)
/* 803657C8 00362708 7C 7C 1B 78 */ mr r28, r3
/* 803657CC 0036270C 38 60 00 02 */ li r3, 2
/* 803657D0 00362710 4B FF FC 99 */ bl func_80365468
/* 803657D4 00362714 7F 83 E3 78 */ mr r3, r28
/* 803657D8 00362718 7F A4 EB 78 */ mr r4, r29
/* 803657DC 0036271C 7F C5 F3 78 */ mr r5, r30
/* 803657E0 00362720 7F E6 FB 78 */ mr r6, r31
/* 803657E4 00362724 4B FF FC B1 */ bl func_80365494
/* 803657E8 00362728 7C 60 1B 78 */ mr r0, r3
/* 803657EC 0036272C 38 60 00 02 */ li r3, 2
/* 803657F0 00362730 7C 1F 03 78 */ mr r31, r0
/* 803657F4 00362734 4B FF FC 71 */ bl func_80365464
/* 803657F8 00362738 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803657FC 0036273C 7F E3 FB 78 */ mr r3, r31
/* 80365800 00362740 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365804 00362744 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365808 00362748 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036580C 0036274C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80365810 00362750 7C 08 03 A6 */ mtlr r0
/* 80365814 00362754 38 21 00 20 */ addi r1, r1, 0x20
/* 80365818 00362758 4E 80 00 20 */ blr
.global func_8036581C
func_8036581C:
/* 8036581C 0036275C 7C A9 03 A6 */ mtctr r5
/* 80365820 00362760 2C 05 00 00 */ cmpwi r5, 0
/* 80365824 00362764 40 81 00 94 */ ble lbl_803658B8
lbl_80365828:
/* 80365828 00362768 88 03 00 00 */ lbz r0, 0(r3)
/* 8036582C 0036276C 38 63 00 01 */ addi r3, r3, 1
/* 80365830 00362770 7C 00 07 74 */ extsb r0, r0
/* 80365834 00362774 2C 00 FF FF */ cmpwi r0, -1
/* 80365838 00362778 40 82 00 0C */ bne lbl_80365844
/* 8036583C 0036277C 38 A0 FF FF */ li r5, -1
/* 80365840 00362780 48 00 00 14 */ b lbl_80365854
lbl_80365844:
/* 80365844 00362784 3C A0 80 3D */ lis r5, lbl_803D2D18@ha
/* 80365848 00362788 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 8036584C 0036278C 38 A5 2D 18 */ addi r5, r5, lbl_803D2D18@l
/* 80365850 00362790 7C A5 00 AE */ lbzx r5, r5, r0
lbl_80365854:
/* 80365854 00362794 88 04 00 00 */ lbz r0, 0(r4)
/* 80365858 00362798 7C A6 07 74 */ extsb r6, r5
/* 8036585C 0036279C 38 84 00 01 */ addi r4, r4, 1
/* 80365860 003627A0 7C 00 07 74 */ extsb r0, r0
/* 80365864 003627A4 2C 00 FF FF */ cmpwi r0, -1
/* 80365868 003627A8 40 82 00 0C */ bne lbl_80365874
/* 8036586C 003627AC 38 00 FF FF */ li r0, -1
/* 80365870 003627B0 48 00 00 14 */ b lbl_80365884
lbl_80365874:
/* 80365874 003627B4 3C A0 80 3D */ lis r5, lbl_803D2D18@ha
/* 80365878 003627B8 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 8036587C 003627BC 38 A5 2D 18 */ addi r5, r5, lbl_803D2D18@l
/* 80365880 003627C0 7C 05 00 AE */ lbzx r0, r5, r0
lbl_80365884:
/* 80365884 003627C4 7C 00 07 74 */ extsb r0, r0
/* 80365888 003627C8 7C 06 00 00 */ cmpw r6, r0
/* 8036588C 003627CC 40 80 00 0C */ bge lbl_80365898
/* 80365890 003627D0 38 60 FF FF */ li r3, -1
/* 80365894 003627D4 4E 80 00 20 */ blr
lbl_80365898:
/* 80365898 003627D8 40 81 00 0C */ ble lbl_803658A4
/* 8036589C 003627DC 38 60 00 01 */ li r3, 1
/* 803658A0 003627E0 4E 80 00 20 */ blr
lbl_803658A4:
/* 803658A4 003627E4 7C C0 07 75 */ extsb. r0, r6
/* 803658A8 003627E8 40 82 00 0C */ bne lbl_803658B4
/* 803658AC 003627EC 38 60 00 00 */ li r3, 0
/* 803658B0 003627F0 4E 80 00 20 */ blr
lbl_803658B4:
/* 803658B4 003627F4 42 00 FF 74 */ bdnz lbl_80365828
lbl_803658B8:
/* 803658B8 003627F8 38 60 00 00 */ li r3, 0
/* 803658BC 003627FC 4E 80 00 20 */ blr
.global func_803658C0
func_803658C0:
/* 803658C0 00362800 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803658C4 00362804 7C 08 02 A6 */ mflr r0
/* 803658C8 00362808 90 01 00 14 */ stw r0, 0x14(r1)
/* 803658CC 0036280C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803658D0 00362810 7C 7F 1B 79 */ or. r31, r3, r3
/* 803658D4 00362814 93 C1 00 08 */ stw r30, 8(r1)
/* 803658D8 00362818 40 82 00 0C */ bne lbl_803658E4
/* 803658DC 0036281C 4B FF D7 31 */ bl func_8036300C
/* 803658E0 00362820 48 00 01 00 */ b lbl_803659E0
lbl_803658E4:
/* 803658E4 00362824 88 1F 00 0A */ lbz r0, 0xa(r31)
/* 803658E8 00362828 28 00 00 00 */ cmplwi r0, 0
/* 803658EC 0036282C 40 82 00 10 */ bne lbl_803658FC
/* 803658F0 00362830 A0 1F 00 04 */ lhz r0, 4(r31)
/* 803658F4 00362834 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 803658F8 00362838 40 82 00 0C */ bne lbl_80365904
lbl_803658FC:
/* 803658FC 0036283C 38 60 FF FF */ li r3, -1
/* 80365900 00362840 48 00 00 E0 */ b lbl_803659E0
lbl_80365904:
/* 80365904 00362844 88 1F 00 04 */ lbz r0, 4(r31)
/* 80365908 00362848 54 00 EF 7E */ rlwinm r0, r0, 0x1d, 0x1d, 0x1f
/* 8036590C 0036284C 28 00 00 01 */ cmplwi r0, 1
/* 80365910 00362850 40 82 00 0C */ bne lbl_8036591C
/* 80365914 00362854 38 60 00 00 */ li r3, 0
/* 80365918 00362858 48 00 00 C8 */ b lbl_803659E0
lbl_8036591C:
/* 8036591C 0036285C 88 7F 00 08 */ lbz r3, 8(r31)
/* 80365920 00362860 54 60 DF 7E */ rlwinm r0, r3, 0x1b, 0x1d, 0x1f
/* 80365924 00362864 28 00 00 03 */ cmplwi r0, 3
/* 80365928 00362868 41 80 00 10 */ blt lbl_80365938
/* 8036592C 0036286C 38 00 00 02 */ li r0, 2
/* 80365930 00362870 50 03 2E 34 */ rlwimi r3, r0, 5, 0x18, 0x1a
/* 80365934 00362874 98 7F 00 08 */ stb r3, 8(r31)
lbl_80365938:
/* 80365938 00362878 88 1F 00 08 */ lbz r0, 8(r31)
/* 8036593C 0036287C 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365940 00362880 28 00 00 02 */ cmplwi r0, 2
/* 80365944 00362884 40 82 00 0C */ bne lbl_80365950
/* 80365948 00362888 38 00 00 00 */ li r0, 0
/* 8036594C 0036288C 90 1F 00 28 */ stw r0, 0x28(r31)
lbl_80365950:
/* 80365950 00362890 88 9F 00 08 */ lbz r4, 8(r31)
/* 80365954 00362894 54 80 DF 7E */ rlwinm r0, r4, 0x1b, 0x1d, 0x1f
/* 80365958 00362898 28 00 00 01 */ cmplwi r0, 1
/* 8036595C 0036289C 41 82 00 18 */ beq lbl_80365974
/* 80365960 003628A0 38 00 00 00 */ li r0, 0
/* 80365964 003628A4 38 60 00 00 */ li r3, 0
/* 80365968 003628A8 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
/* 8036596C 003628AC 98 9F 00 08 */ stb r4, 8(r31)
/* 80365970 003628B0 48 00 00 70 */ b lbl_803659E0
lbl_80365974:
/* 80365974 003628B4 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365978 003628B8 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 8036597C 003628BC 28 00 00 01 */ cmplwi r0, 1
/* 80365980 003628C0 41 82 00 0C */ beq lbl_8036598C
/* 80365984 003628C4 3B C0 00 00 */ li r30, 0
/* 80365988 003628C8 48 00 00 10 */ b lbl_80365998
lbl_8036598C:
/* 8036598C 003628CC 7F E3 FB 78 */ mr r3, r31
/* 80365990 003628D0 48 00 05 01 */ bl func_80365E90
/* 80365994 003628D4 7C 7E 1B 78 */ mr r30, r3
lbl_80365998:
/* 80365998 003628D8 7F E3 FB 78 */ mr r3, r31
/* 8036599C 003628DC 38 80 00 00 */ li r4, 0
/* 803659A0 003628E0 4B FF F7 41 */ bl func_803650E0
/* 803659A4 003628E4 2C 03 00 00 */ cmpwi r3, 0
/* 803659A8 003628E8 41 82 00 1C */ beq lbl_803659C4
/* 803659AC 003628EC 38 60 00 01 */ li r3, 1
/* 803659B0 003628F0 38 00 00 00 */ li r0, 0
/* 803659B4 003628F4 98 7F 00 0A */ stb r3, 0xa(r31)
/* 803659B8 003628F8 38 60 FF FF */ li r3, -1
/* 803659BC 003628FC 90 1F 00 28 */ stw r0, 0x28(r31)
/* 803659C0 00362900 48 00 00 20 */ b lbl_803659E0
lbl_803659C4:
/* 803659C4 00362904 88 1F 00 08 */ lbz r0, 8(r31)
/* 803659C8 00362908 38 80 00 00 */ li r4, 0
/* 803659CC 0036290C 50 80 2E 34 */ rlwimi r0, r4, 5, 0x18, 0x1a
/* 803659D0 00362910 38 60 00 00 */ li r3, 0
/* 803659D4 00362914 98 1F 00 08 */ stb r0, 8(r31)
/* 803659D8 00362918 93 DF 00 18 */ stw r30, 0x18(r31)
/* 803659DC 0036291C 90 9F 00 28 */ stw r4, 0x28(r31)
lbl_803659E0:
/* 803659E0 00362920 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803659E4 00362924 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803659E8 00362928 83 C1 00 08 */ lwz r30, 8(r1)
/* 803659EC 0036292C 7C 08 03 A6 */ mtlr r0
/* 803659F0 00362930 38 21 00 10 */ addi r1, r1, 0x10
/* 803659F4 00362934 4E 80 00 20 */ blr
.global func_803659F8
func_803659F8:
/* 803659F8 00362938 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803659FC 0036293C 7C 08 02 A6 */ mflr r0
/* 80365A00 00362940 90 01 00 24 */ stw r0, 0x24(r1)
/* 80365A04 00362944 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80365A08 00362948 7C 7F 1B 79 */ or. r31, r3, r3
/* 80365A0C 0036294C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80365A10 00362950 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80365A14 00362954 40 82 00 0C */ bne lbl_80365A20
/* 80365A18 00362958 38 60 FF FF */ li r3, -1
/* 80365A1C 0036295C 48 00 01 7C */ b lbl_80365B98
lbl_80365A20:
/* 80365A20 00362960 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365A24 00362964 54 03 D7 7F */ rlwinm. r3, r0, 0x1a, 0x1d, 0x1f
/* 80365A28 00362968 40 82 00 0C */ bne lbl_80365A34
/* 80365A2C 0036296C 38 60 00 00 */ li r3, 0
/* 80365A30 00362970 48 00 01 68 */ b lbl_80365B98
lbl_80365A34:
/* 80365A34 00362974 28 1F 00 00 */ cmplwi r31, 0
/* 80365A38 00362978 40 82 00 10 */ bne lbl_80365A48
/* 80365A3C 0036297C 4B FF D5 D1 */ bl func_8036300C
/* 80365A40 00362980 7C 7D 1B 78 */ mr r29, r3
/* 80365A44 00362984 48 00 00 F4 */ b lbl_80365B38
lbl_80365A48:
/* 80365A48 00362988 88 1F 00 0A */ lbz r0, 0xa(r31)
/* 80365A4C 0036298C 28 00 00 00 */ cmplwi r0, 0
/* 80365A50 00362990 40 82 00 0C */ bne lbl_80365A5C
/* 80365A54 00362994 28 03 00 00 */ cmplwi r3, 0
/* 80365A58 00362998 40 82 00 0C */ bne lbl_80365A64
lbl_80365A5C:
/* 80365A5C 0036299C 3B A0 FF FF */ li r29, -1
/* 80365A60 003629A0 48 00 00 D8 */ b lbl_80365B38
lbl_80365A64:
/* 80365A64 003629A4 88 1F 00 04 */ lbz r0, 4(r31)
/* 80365A68 003629A8 54 00 EF 7E */ rlwinm r0, r0, 0x1d, 0x1d, 0x1f
/* 80365A6C 003629AC 28 00 00 01 */ cmplwi r0, 1
/* 80365A70 003629B0 40 82 00 0C */ bne lbl_80365A7C
/* 80365A74 003629B4 3B A0 00 00 */ li r29, 0
/* 80365A78 003629B8 48 00 00 C0 */ b lbl_80365B38
lbl_80365A7C:
/* 80365A7C 003629BC 88 7F 00 08 */ lbz r3, 8(r31)
/* 80365A80 003629C0 54 60 DF 7E */ rlwinm r0, r3, 0x1b, 0x1d, 0x1f
/* 80365A84 003629C4 28 00 00 03 */ cmplwi r0, 3
/* 80365A88 003629C8 41 80 00 10 */ blt lbl_80365A98
/* 80365A8C 003629CC 38 00 00 02 */ li r0, 2
/* 80365A90 003629D0 50 03 2E 34 */ rlwimi r3, r0, 5, 0x18, 0x1a
/* 80365A94 003629D4 98 7F 00 08 */ stb r3, 8(r31)
lbl_80365A98:
/* 80365A98 003629D8 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365A9C 003629DC 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365AA0 003629E0 28 00 00 02 */ cmplwi r0, 2
/* 80365AA4 003629E4 40 82 00 0C */ bne lbl_80365AB0
/* 80365AA8 003629E8 38 00 00 00 */ li r0, 0
/* 80365AAC 003629EC 90 1F 00 28 */ stw r0, 0x28(r31)
lbl_80365AB0:
/* 80365AB0 003629F0 88 7F 00 08 */ lbz r3, 8(r31)
/* 80365AB4 003629F4 54 60 DF 7E */ rlwinm r0, r3, 0x1b, 0x1d, 0x1f
/* 80365AB8 003629F8 28 00 00 01 */ cmplwi r0, 1
/* 80365ABC 003629FC 41 82 00 14 */ beq lbl_80365AD0
/* 80365AC0 00362A00 3B A0 00 00 */ li r29, 0
/* 80365AC4 00362A04 53 A3 2E 34 */ rlwimi r3, r29, 5, 0x18, 0x1a
/* 80365AC8 00362A08 98 7F 00 08 */ stb r3, 8(r31)
/* 80365ACC 00362A0C 48 00 00 6C */ b lbl_80365B38
lbl_80365AD0:
/* 80365AD0 00362A10 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365AD4 00362A14 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 80365AD8 00362A18 28 00 00 01 */ cmplwi r0, 1
/* 80365ADC 00362A1C 41 82 00 0C */ beq lbl_80365AE8
/* 80365AE0 00362A20 3B C0 00 00 */ li r30, 0
/* 80365AE4 00362A24 48 00 00 10 */ b lbl_80365AF4
lbl_80365AE8:
/* 80365AE8 00362A28 7F E3 FB 78 */ mr r3, r31
/* 80365AEC 00362A2C 48 00 03 A5 */ bl func_80365E90
/* 80365AF0 00362A30 7C 7E 1B 78 */ mr r30, r3
lbl_80365AF4:
/* 80365AF4 00362A34 7F E3 FB 78 */ mr r3, r31
/* 80365AF8 00362A38 38 80 00 00 */ li r4, 0
/* 80365AFC 00362A3C 4B FF F5 E5 */ bl func_803650E0
/* 80365B00 00362A40 2C 03 00 00 */ cmpwi r3, 0
/* 80365B04 00362A44 41 82 00 1C */ beq lbl_80365B20
/* 80365B08 00362A48 38 60 00 01 */ li r3, 1
/* 80365B0C 00362A4C 38 00 00 00 */ li r0, 0
/* 80365B10 00362A50 98 7F 00 0A */ stb r3, 0xa(r31)
/* 80365B14 00362A54 3B A0 FF FF */ li r29, -1
/* 80365B18 00362A58 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365B1C 00362A5C 48 00 00 1C */ b lbl_80365B38
lbl_80365B20:
/* 80365B20 00362A60 3B A0 00 00 */ li r29, 0
/* 80365B24 00362A64 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365B28 00362A68 53 A0 2E 34 */ rlwimi r0, r29, 5, 0x18, 0x1a
/* 80365B2C 00362A6C 98 1F 00 08 */ stb r0, 8(r31)
/* 80365B30 00362A70 93 DF 00 18 */ stw r30, 0x18(r31)
/* 80365B34 00362A74 93 BF 00 28 */ stw r29, 0x28(r31)
lbl_80365B38:
/* 80365B38 00362A78 81 9F 00 44 */ lwz r12, 0x44(r31)
/* 80365B3C 00362A7C 80 7F 00 00 */ lwz r3, 0(r31)
/* 80365B40 00362A80 7D 89 03 A6 */ mtctr r12
/* 80365B44 00362A84 4E 80 04 21 */ bctrl
/* 80365B48 00362A88 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365B4C 00362A8C 38 80 00 00 */ li r4, 0
/* 80365B50 00362A90 50 80 35 F2 */ rlwimi r0, r4, 6, 0x17, 0x19
/* 80365B54 00362A94 7C 7E 1B 78 */ mr r30, r3
/* 80365B58 00362A98 B0 1F 00 04 */ sth r0, 4(r31)
/* 80365B5C 00362A9C 90 9F 00 00 */ stw r4, 0(r31)
/* 80365B60 00362AA0 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365B64 00362AA4 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f
/* 80365B68 00362AA8 41 82 00 0C */ beq lbl_80365B74
/* 80365B6C 00362AAC 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 80365B70 00362AB0 4B FF CF E9 */ bl func_80362B58
lbl_80365B74:
/* 80365B74 00362AB4 2C 1D 00 00 */ cmpwi r29, 0
/* 80365B78 00362AB8 38 60 00 00 */ li r3, 0
/* 80365B7C 00362ABC 40 82 00 0C */ bne lbl_80365B88
/* 80365B80 00362AC0 2C 1E 00 00 */ cmpwi r30, 0
/* 80365B84 00362AC4 41 82 00 08 */ beq lbl_80365B8C
lbl_80365B88:
/* 80365B88 00362AC8 38 60 00 01 */ li r3, 1
lbl_80365B8C:
/* 80365B8C 00362ACC 7C 03 00 D0 */ neg r0, r3
/* 80365B90 00362AD0 7C 00 1B 78 */ or r0, r0, r3
/* 80365B94 00362AD4 7C 03 FE 70 */ srawi r3, r0, 0x1f
lbl_80365B98:
/* 80365B98 00362AD8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80365B9C 00362ADC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365BA0 00362AE0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365BA4 00362AE4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80365BA8 00362AE8 7C 08 03 A6 */ mtlr r0
/* 80365BAC 00362AEC 38 21 00 20 */ addi r1, r1, 0x20
/* 80365BB0 00362AF0 4E 80 00 20 */ blr
.global func_80365BB4
func_80365BB4:
/* 80365BB4 00362AF4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80365BB8 00362AF8 7C 08 02 A6 */ mflr r0
/* 80365BBC 00362AFC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80365BC0 00362B00 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80365BC4 00362B04 7C BF 2B 78 */ mr r31, r5
/* 80365BC8 00362B08 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80365BCC 00362B0C 7C 9E 23 78 */ mr r30, r4
/* 80365BD0 00362B10 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80365BD4 00362B14 7C 7D 1B 78 */ mr r29, r3
/* 80365BD8 00362B18 38 60 00 02 */ li r3, 2
/* 80365BDC 00362B1C 4B FF F8 8D */ bl func_80365468
/* 80365BE0 00362B20 7F A3 EB 78 */ mr r3, r29
/* 80365BE4 00362B24 7F C4 F3 78 */ mr r4, r30
/* 80365BE8 00362B28 7F E5 FB 78 */ mr r5, r31
/* 80365BEC 00362B2C 48 00 00 35 */ bl func_80365C20
/* 80365BF0 00362B30 7C 60 1B 78 */ mr r0, r3
/* 80365BF4 00362B34 38 60 00 02 */ li r3, 2
/* 80365BF8 00362B38 7C 1F 03 78 */ mr r31, r0
/* 80365BFC 00362B3C 4B FF F8 69 */ bl func_80365464
/* 80365C00 00362B40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80365C04 00362B44 7F E3 FB 78 */ mr r3, r31
/* 80365C08 00362B48 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365C0C 00362B4C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365C10 00362B50 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80365C14 00362B54 7C 08 03 A6 */ mtlr r0
/* 80365C18 00362B58 38 21 00 20 */ addi r1, r1, 0x20
/* 80365C1C 00362B5C 4E 80 00 20 */ blr
.global func_80365C20
func_80365C20:
/* 80365C20 00362B60 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80365C24 00362B64 7C 08 02 A6 */ mflr r0
/* 80365C28 00362B68 90 01 00 24 */ stw r0, 0x24(r1)
/* 80365C2C 00362B6C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80365C30 00362B70 7C BF 2B 78 */ mr r31, r5
/* 80365C34 00362B74 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80365C38 00362B78 7C 7E 1B 78 */ mr r30, r3
/* 80365C3C 00362B7C 90 81 00 08 */ stw r4, 8(r1)
/* 80365C40 00362B80 A0 03 00 04 */ lhz r0, 4(r3)
/* 80365C44 00362B84 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 80365C48 00362B88 28 00 00 01 */ cmplwi r0, 1
/* 80365C4C 00362B8C 40 82 00 10 */ bne lbl_80365C5C
/* 80365C50 00362B90 88 1E 00 0A */ lbz r0, 0xa(r30)
/* 80365C54 00362B94 28 00 00 00 */ cmplwi r0, 0
/* 80365C58 00362B98 41 82 00 14 */ beq lbl_80365C6C
lbl_80365C5C:
/* 80365C5C 00362B9C 38 00 00 28 */ li r0, 0x28
/* 80365C60 00362BA0 38 60 FF FF */ li r3, -1
/* 80365C64 00362BA4 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80365C68 00362BA8 48 00 02 10 */ b lbl_80365E78
lbl_80365C6C:
/* 80365C6C 00362BAC 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365C70 00362BB0 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365C74 00362BB4 28 00 00 01 */ cmplwi r0, 1
/* 80365C78 00362BB8 40 82 00 34 */ bne lbl_80365CAC
/* 80365C7C 00362BBC 38 80 00 00 */ li r4, 0
/* 80365C80 00362BC0 4B FF F4 61 */ bl func_803650E0
/* 80365C84 00362BC4 2C 03 00 00 */ cmpwi r3, 0
/* 80365C88 00362BC8 41 82 00 24 */ beq lbl_80365CAC
/* 80365C8C 00362BCC 38 00 00 01 */ li r0, 1
/* 80365C90 00362BD0 38 80 00 00 */ li r4, 0
/* 80365C94 00362BD4 98 1E 00 0A */ stb r0, 0xa(r30)
/* 80365C98 00362BD8 38 00 00 28 */ li r0, 0x28
/* 80365C9C 00362BDC 38 60 FF FF */ li r3, -1
/* 80365CA0 00362BE0 90 9E 00 28 */ stw r4, 0x28(r30)
/* 80365CA4 00362BE4 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80365CA8 00362BE8 48 00 01 D0 */ b lbl_80365E78
lbl_80365CAC:
/* 80365CAC 00362BEC 2C 1F 00 01 */ cmpwi r31, 1
/* 80365CB0 00362BF0 40 82 00 B4 */ bne lbl_80365D64
/* 80365CB4 00362BF4 A0 1E 00 04 */ lhz r0, 4(r30)
/* 80365CB8 00362BF8 3B E0 00 00 */ li r31, 0
/* 80365CBC 00362BFC 38 80 00 00 */ li r4, 0
/* 80365CC0 00362C00 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 80365CC4 00362C04 28 00 00 01 */ cmplwi r0, 1
/* 80365CC8 00362C08 41 82 00 0C */ beq lbl_80365CD4
/* 80365CCC 00362C0C 28 00 00 02 */ cmplwi r0, 2
/* 80365CD0 00362C10 40 82 00 10 */ bne lbl_80365CE0
lbl_80365CD4:
/* 80365CD4 00362C14 88 1E 00 0A */ lbz r0, 0xa(r30)
/* 80365CD8 00362C18 28 00 00 00 */ cmplwi r0, 0
/* 80365CDC 00362C1C 41 82 00 14 */ beq lbl_80365CF0
lbl_80365CE0:
/* 80365CE0 00362C20 38 00 00 28 */ li r0, 0x28
/* 80365CE4 00362C24 38 60 FF FF */ li r3, -1
/* 80365CE8 00362C28 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80365CEC 00362C2C 48 00 00 6C */ b lbl_80365D58
lbl_80365CF0:
/* 80365CF0 00362C30 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365CF4 00362C34 54 05 DF 7F */ rlwinm. r5, r0, 0x1b, 0x1d, 0x1f
/* 80365CF8 00362C38 40 82 00 0C */ bne lbl_80365D04
/* 80365CFC 00362C3C 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 80365D00 00362C40 48 00 00 58 */ b lbl_80365D58
lbl_80365D04:
/* 80365D04 00362C44 80 FE 00 1C */ lwz r7, 0x1c(r30)
/* 80365D08 00362C48 28 05 00 03 */ cmplwi r5, 3
/* 80365D0C 00362C4C 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 80365D10 00362C50 80 7E 00 34 */ lwz r3, 0x34(r30)
/* 80365D14 00362C54 7C C7 00 50 */ subf r6, r7, r0
/* 80365D18 00362C58 7C 63 32 14 */ add r3, r3, r6
/* 80365D1C 00362C5C 41 80 00 0C */ blt lbl_80365D28
/* 80365D20 00362C60 38 85 FF FE */ addi r4, r5, -2
/* 80365D24 00362C64 7C 64 18 50 */ subf r3, r4, r3
lbl_80365D28:
/* 80365D28 00362C68 88 1E 00 05 */ lbz r0, 5(r30)
/* 80365D2C 00362C6C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
/* 80365D30 00362C70 40 82 00 28 */ bne lbl_80365D58
/* 80365D34 00362C74 7C 04 30 51 */ subf. r0, r4, r6
/* 80365D38 00362C78 7C 09 03 A6 */ mtctr r0
/* 80365D3C 00362C7C 41 82 00 1C */ beq lbl_80365D58
lbl_80365D40:
/* 80365D40 00362C80 88 07 00 00 */ lbz r0, 0(r7)
/* 80365D44 00362C84 38 E7 00 01 */ addi r7, r7, 1
/* 80365D48 00362C88 28 00 00 0A */ cmplwi r0, 0xa
/* 80365D4C 00362C8C 40 82 00 08 */ bne lbl_80365D54
/* 80365D50 00362C90 38 63 00 01 */ addi r3, r3, 1
lbl_80365D54:
/* 80365D54 00362C94 42 00 FF EC */ bdnz lbl_80365D40
lbl_80365D58:
/* 80365D58 00362C98 80 01 00 08 */ lwz r0, 8(r1)
/* 80365D5C 00362C9C 7C 00 1A 14 */ add r0, r0, r3
/* 80365D60 00362CA0 90 01 00 08 */ stw r0, 8(r1)
lbl_80365D64:
/* 80365D64 00362CA4 2C 1F 00 02 */ cmpwi r31, 2
/* 80365D68 00362CA8 41 82 00 90 */ beq lbl_80365DF8
/* 80365D6C 00362CAC 88 1E 00 04 */ lbz r0, 4(r30)
/* 80365D70 00362CB0 54 00 EF 7E */ rlwinm r0, r0, 0x1d, 0x1d, 0x1f
/* 80365D74 00362CB4 28 00 00 03 */ cmplwi r0, 3
/* 80365D78 00362CB8 41 82 00 80 */ beq lbl_80365DF8
/* 80365D7C 00362CBC 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365D80 00362CC0 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365D84 00362CC4 28 00 00 02 */ cmplwi r0, 2
/* 80365D88 00362CC8 41 82 00 0C */ beq lbl_80365D94
/* 80365D8C 00362CCC 28 00 00 03 */ cmplwi r0, 3
/* 80365D90 00362CD0 40 82 00 68 */ bne lbl_80365DF8
lbl_80365D94:
/* 80365D94 00362CD4 80 61 00 08 */ lwz r3, 8(r1)
/* 80365D98 00362CD8 80 1E 00 18 */ lwz r0, 0x18(r30)
/* 80365D9C 00362CDC 7C 03 00 40 */ cmplw r3, r0
/* 80365DA0 00362CE0 40 80 00 10 */ bge lbl_80365DB0
/* 80365DA4 00362CE4 80 1E 00 34 */ lwz r0, 0x34(r30)
/* 80365DA8 00362CE8 7C 03 00 40 */ cmplw r3, r0
/* 80365DAC 00362CEC 40 80 00 18 */ bge lbl_80365DC4
lbl_80365DB0:
/* 80365DB0 00362CF0 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365DB4 00362CF4 38 60 00 00 */ li r3, 0
/* 80365DB8 00362CF8 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a
/* 80365DBC 00362CFC 98 1E 00 08 */ stb r0, 8(r30)
/* 80365DC0 00362D00 48 00 00 48 */ b lbl_80365E08
lbl_80365DC4:
/* 80365DC4 00362D04 80 9E 00 1C */ lwz r4, 0x1c(r30)
/* 80365DC8 00362D08 7C 00 18 50 */ subf r0, r0, r3
/* 80365DCC 00362D0C 38 60 00 02 */ li r3, 2
/* 80365DD0 00362D10 7C 04 02 14 */ add r0, r4, r0
/* 80365DD4 00362D14 90 1E 00 24 */ stw r0, 0x24(r30)
/* 80365DD8 00362D18 80 81 00 08 */ lwz r4, 8(r1)
/* 80365DDC 00362D1C 80 1E 00 18 */ lwz r0, 0x18(r30)
/* 80365DE0 00362D20 7C 04 00 50 */ subf r0, r4, r0
/* 80365DE4 00362D24 90 1E 00 28 */ stw r0, 0x28(r30)
/* 80365DE8 00362D28 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365DEC 00362D2C 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a
/* 80365DF0 00362D30 98 1E 00 08 */ stb r0, 8(r30)
/* 80365DF4 00362D34 48 00 00 14 */ b lbl_80365E08
lbl_80365DF8:
/* 80365DF8 00362D38 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365DFC 00362D3C 38 60 00 00 */ li r3, 0
/* 80365E00 00362D40 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a
/* 80365E04 00362D44 98 1E 00 08 */ stb r0, 8(r30)
lbl_80365E08:
/* 80365E08 00362D48 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365E0C 00362D4C 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f
/* 80365E10 00362D50 40 82 00 64 */ bne lbl_80365E74
/* 80365E14 00362D54 81 9E 00 38 */ lwz r12, 0x38(r30)
/* 80365E18 00362D58 28 0C 00 00 */ cmplwi r12, 0
/* 80365E1C 00362D5C 41 82 00 44 */ beq lbl_80365E60
/* 80365E20 00362D60 7F E5 FB 78 */ mr r5, r31
/* 80365E24 00362D64 38 81 00 08 */ addi r4, r1, 8
/* 80365E28 00362D68 80 7E 00 00 */ lwz r3, 0(r30)
/* 80365E2C 00362D6C 80 DE 00 48 */ lwz r6, 0x48(r30)
/* 80365E30 00362D70 7D 89 03 A6 */ mtctr r12
/* 80365E34 00362D74 4E 80 04 21 */ bctrl
/* 80365E38 00362D78 2C 03 00 00 */ cmpwi r3, 0
/* 80365E3C 00362D7C 41 82 00 24 */ beq lbl_80365E60
/* 80365E40 00362D80 38 00 00 01 */ li r0, 1
/* 80365E44 00362D84 38 80 00 00 */ li r4, 0
/* 80365E48 00362D88 98 1E 00 0A */ stb r0, 0xa(r30)
/* 80365E4C 00362D8C 38 00 00 28 */ li r0, 0x28
/* 80365E50 00362D90 38 60 FF FF */ li r3, -1
/* 80365E54 00362D94 90 9E 00 28 */ stw r4, 0x28(r30)
/* 80365E58 00362D98 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80365E5C 00362D9C 48 00 00 1C */ b lbl_80365E78
lbl_80365E60:
/* 80365E60 00362DA0 38 60 00 00 */ li r3, 0
/* 80365E64 00362DA4 98 7E 00 09 */ stb r3, 9(r30)
/* 80365E68 00362DA8 80 01 00 08 */ lwz r0, 8(r1)
/* 80365E6C 00362DAC 90 1E 00 18 */ stw r0, 0x18(r30)
/* 80365E70 00362DB0 90 7E 00 28 */ stw r3, 0x28(r30)
lbl_80365E74:
/* 80365E74 00362DB4 38 60 00 00 */ li r3, 0
lbl_80365E78:
/* 80365E78 00362DB8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80365E7C 00362DBC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365E80 00362DC0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365E84 00362DC4 7C 08 03 A6 */ mtlr r0
/* 80365E88 00362DC8 38 21 00 20 */ addi r1, r1, 0x20
/* 80365E8C 00362DCC 4E 80 00 20 */ blr
.global func_80365E90
func_80365E90:
/* 80365E90 00362DD0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80365E94 00362DD4 7C 08 02 A6 */ mflr r0
/* 80365E98 00362DD8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80365E9C 00362DDC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80365EA0 00362DE0 93 C1 00 08 */ stw r30, 8(r1)
/* 80365EA4 00362DE4 7C 7E 1B 78 */ mr r30, r3
/* 80365EA8 00362DE8 38 60 00 02 */ li r3, 2
/* 80365EAC 00362DEC 4B FF F5 BD */ bl func_80365468
/* 80365EB0 00362DF0 A0 1E 00 04 */ lhz r0, 4(r30)
/* 80365EB4 00362DF4 38 80 00 00 */ li r4, 0
/* 80365EB8 00362DF8 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 80365EBC 00362DFC 28 00 00 01 */ cmplwi r0, 1
/* 80365EC0 00362E00 41 82 00 0C */ beq lbl_80365ECC
/* 80365EC4 00362E04 28 00 00 02 */ cmplwi r0, 2
/* 80365EC8 00362E08 40 82 00 10 */ bne lbl_80365ED8
lbl_80365ECC:
/* 80365ECC 00362E0C 88 1E 00 0A */ lbz r0, 0xa(r30)
/* 80365ED0 00362E10 28 00 00 00 */ cmplwi r0, 0
/* 80365ED4 00362E14 41 82 00 14 */ beq lbl_80365EE8
lbl_80365ED8:
/* 80365ED8 00362E18 38 00 00 28 */ li r0, 0x28
/* 80365EDC 00362E1C 3B E0 FF FF */ li r31, -1
/* 80365EE0 00362E20 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80365EE4 00362E24 48 00 00 6C */ b lbl_80365F50
lbl_80365EE8:
/* 80365EE8 00362E28 88 1E 00 08 */ lbz r0, 8(r30)
/* 80365EEC 00362E2C 54 05 DF 7F */ rlwinm. r5, r0, 0x1b, 0x1d, 0x1f
/* 80365EF0 00362E30 40 82 00 0C */ bne lbl_80365EFC
/* 80365EF4 00362E34 83 FE 00 18 */ lwz r31, 0x18(r30)
/* 80365EF8 00362E38 48 00 00 58 */ b lbl_80365F50
lbl_80365EFC:
/* 80365EFC 00362E3C 80 FE 00 1C */ lwz r7, 0x1c(r30)
/* 80365F00 00362E40 28 05 00 03 */ cmplwi r5, 3
/* 80365F04 00362E44 80 1E 00 24 */ lwz r0, 0x24(r30)
/* 80365F08 00362E48 80 7E 00 34 */ lwz r3, 0x34(r30)
/* 80365F0C 00362E4C 7C C7 00 50 */ subf r6, r7, r0
/* 80365F10 00362E50 7F E3 32 14 */ add r31, r3, r6
/* 80365F14 00362E54 41 80 00 0C */ blt lbl_80365F20
/* 80365F18 00362E58 38 85 FF FE */ addi r4, r5, -2
/* 80365F1C 00362E5C 7F E4 F8 50 */ subf r31, r4, r31
lbl_80365F20:
/* 80365F20 00362E60 88 1E 00 05 */ lbz r0, 5(r30)
/* 80365F24 00362E64 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
/* 80365F28 00362E68 40 82 00 28 */ bne lbl_80365F50
/* 80365F2C 00362E6C 7C 04 30 51 */ subf. r0, r4, r6
/* 80365F30 00362E70 7C 09 03 A6 */ mtctr r0
/* 80365F34 00362E74 41 82 00 1C */ beq lbl_80365F50
lbl_80365F38:
/* 80365F38 00362E78 88 07 00 00 */ lbz r0, 0(r7)
/* 80365F3C 00362E7C 38 E7 00 01 */ addi r7, r7, 1
/* 80365F40 00362E80 28 00 00 0A */ cmplwi r0, 0xa
/* 80365F44 00362E84 40 82 00 08 */ bne lbl_80365F4C
/* 80365F48 00362E88 3B FF 00 01 */ addi r31, r31, 1
lbl_80365F4C:
/* 80365F4C 00362E8C 42 00 FF EC */ bdnz lbl_80365F38
lbl_80365F50:
/* 80365F50 00362E90 38 60 00 02 */ li r3, 2
/* 80365F54 00362E94 4B FF F5 11 */ bl func_80365464
/* 80365F58 00362E98 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80365F5C 00362E9C 7F E3 FB 78 */ mr r3, r31
/* 80365F60 00362EA0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80365F64 00362EA4 83 C1 00 08 */ lwz r30, 8(r1)
/* 80365F68 00362EA8 7C 08 03 A6 */ mtlr r0
/* 80365F6C 00362EAC 38 21 00 10 */ addi r1, r1, 0x10
/* 80365F70 00362EB0 4E 80 00 20 */ blr
.global func_80365F74
func_80365F74:
/* 80365F74 00362EB4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80365F78 00362EB8 7C 08 02 A6 */ mflr r0
/* 80365F7C 00362EBC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80365F80 00362EC0 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 80365F84 00362EC4 7C 7C 1B 79 */ or. r28, r3, r3
/* 80365F88 00362EC8 7C BD 2B 78 */ mr r29, r5
/* 80365F8C 00362ECC 3B E0 00 00 */ li r31, 0
/* 80365F90 00362ED0 41 82 00 0C */ beq lbl_80365F9C
/* 80365F94 00362ED4 28 04 00 00 */ cmplwi r4, 0
/* 80365F98 00362ED8 40 82 00 0C */ bne lbl_80365FA4
lbl_80365F9C:
/* 80365F9C 00362EDC 38 60 00 00 */ li r3, 0
/* 80365FA0 00362EE0 48 00 00 D8 */ b lbl_80366078
lbl_80365FA4:
/* 80365FA4 00362EE4 7C 9E 23 78 */ mr r30, r4
/* 80365FA8 00362EE8 48 00 00 C4 */ b lbl_8036606C
lbl_80365FAC:
/* 80365FAC 00362EEC A0 DE 00 00 */ lhz r6, 0(r30)
/* 80365FB0 00362EF0 28 06 00 00 */ cmplwi r6, 0
/* 80365FB4 00362EF4 40 82 00 10 */ bne lbl_80365FC4
/* 80365FB8 00362EF8 38 00 00 00 */ li r0, 0
/* 80365FBC 00362EFC 7C 1C F9 AE */ stbx r0, r28, r31
/* 80365FC0 00362F00 48 00 00 B8 */ b lbl_80366078
lbl_80365FC4:
/* 80365FC4 00362F04 80 02 CC 68 */ lwz r0, lbl_80456668-_SDA2_BASE_(r2)
/* 80365FC8 00362F08 28 06 00 80 */ cmplwi r6, 0x80
/* 80365FCC 00362F0C 3B DE 00 02 */ addi r30, r30, 2
/* 80365FD0 00362F10 90 01 00 08 */ stw r0, 8(r1)
/* 80365FD4 00362F14 40 80 00 0C */ bge lbl_80365FE0
/* 80365FD8 00362F18 3B 60 00 01 */ li r27, 1
/* 80365FDC 00362F1C 48 00 00 18 */ b lbl_80365FF4
lbl_80365FE0:
/* 80365FE0 00362F20 28 06 08 00 */ cmplwi r6, 0x800
/* 80365FE4 00362F24 40 80 00 0C */ bge lbl_80365FF0
/* 80365FE8 00362F28 3B 60 00 02 */ li r27, 2
/* 80365FEC 00362F2C 48 00 00 08 */ b lbl_80365FF4
lbl_80365FF0:
/* 80365FF0 00362F30 3B 60 00 03 */ li r27, 3
lbl_80365FF4:
/* 80365FF4 00362F34 2C 1B 00 02 */ cmpwi r27, 2
/* 80365FF8 00362F38 38 A1 00 0C */ addi r5, r1, 0xc
/* 80365FFC 00362F3C 7C A5 DA 14 */ add r5, r5, r27
/* 80366000 00362F40 41 82 00 2C */ beq lbl_8036602C
/* 80366004 00362F44 40 80 00 10 */ bge lbl_80366014
/* 80366008 00362F48 2C 1B 00 01 */ cmpwi r27, 1
/* 8036600C 00362F4C 40 80 00 30 */ bge lbl_8036603C
/* 80366010 00362F50 48 00 00 3C */ b lbl_8036604C
lbl_80366014:
/* 80366014 00362F54 2C 1B 00 04 */ cmpwi r27, 4
/* 80366018 00362F58 40 80 00 34 */ bge lbl_8036604C
/* 8036601C 00362F5C 54 C0 06 BE */ clrlwi r0, r6, 0x1a
/* 80366020 00362F60 54 C6 D5 BE */ rlwinm r6, r6, 0x1a, 0x16, 0x1f
/* 80366024 00362F64 60 00 00 80 */ ori r0, r0, 0x80
/* 80366028 00362F68 9C 05 FF FF */ stbu r0, -1(r5)
lbl_8036602C:
/* 8036602C 00362F6C 54 C0 06 BE */ clrlwi r0, r6, 0x1a
/* 80366030 00362F70 54 C6 D5 BE */ rlwinm r6, r6, 0x1a, 0x16, 0x1f
/* 80366034 00362F74 60 00 00 80 */ ori r0, r0, 0x80
/* 80366038 00362F78 9C 05 FF FF */ stbu r0, -1(r5)
lbl_8036603C:
/* 8036603C 00362F7C 38 81 00 08 */ addi r4, r1, 8
/* 80366040 00362F80 7C 04 D8 AE */ lbzx r0, r4, r27
/* 80366044 00362F84 7C C0 03 78 */ or r0, r6, r0
/* 80366048 00362F88 98 05 FF FF */ stb r0, -1(r5)
lbl_8036604C:
/* 8036604C 00362F8C 7C 1F DA 14 */ add r0, r31, r27
/* 80366050 00362F90 7C 00 E8 40 */ cmplw r0, r29
/* 80366054 00362F94 41 81 00 24 */ bgt lbl_80366078
/* 80366058 00362F98 7F 65 DB 78 */ mr r5, r27
/* 8036605C 00362F9C 7C 7C FA 14 */ add r3, r28, r31
/* 80366060 00362FA0 38 81 00 0C */ addi r4, r1, 0xc
/* 80366064 00362FA4 48 00 2A 85 */ bl func_80368AE8
/* 80366068 00362FA8 7F FF DA 14 */ add r31, r31, r27
lbl_8036606C:
/* 8036606C 00362FAC 7C 1F E8 40 */ cmplw r31, r29
/* 80366070 00362FB0 7F E3 FB 78 */ mr r3, r31
/* 80366074 00362FB4 40 81 FF 38 */ ble lbl_80365FAC
lbl_80366078:
/* 80366078 00362FB8 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 8036607C 00362FBC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80366080 00362FC0 7C 08 03 A6 */ mtlr r0
/* 80366084 00362FC4 38 21 00 30 */ addi r1, r1, 0x30
/* 80366088 00362FC8 4E 80 00 20 */ blr
.global func_8036608C
func_8036608C:
/* 8036608C 00362FCC 38 C3 FF FF */ addi r6, r3, -1
/* 80366090 00362FD0 38 E4 FF FF */ addi r7, r4, -1
/* 80366094 00362FD4 38 85 00 01 */ addi r4, r5, 1
/* 80366098 00362FD8 48 00 00 30 */ b lbl_803660C8
lbl_8036609C:
/* 8036609C 00362FDC 8C 66 00 01 */ lbzu r3, 1(r6)
/* 803660A0 00362FE0 8C 07 00 01 */ lbzu r0, 1(r7)
/* 803660A4 00362FE4 7C 03 00 40 */ cmplw r3, r0
/* 803660A8 00362FE8 41 82 00 20 */ beq lbl_803660C8
/* 803660AC 00362FEC 88 86 00 00 */ lbz r4, 0(r6)
/* 803660B0 00362FF0 38 60 00 01 */ li r3, 1
/* 803660B4 00362FF4 88 07 00 00 */ lbz r0, 0(r7)
/* 803660B8 00362FF8 7C 04 00 40 */ cmplw r4, r0
/* 803660BC 00362FFC 4C 80 00 20 */ bgelr
/* 803660C0 00363000 38 60 FF FF */ li r3, -1
/* 803660C4 00363004 4E 80 00 20 */ blr
lbl_803660C8:
/* 803660C8 00363008 34 84 FF FF */ addic. r4, r4, -1
/* 803660CC 0036300C 40 82 FF D0 */ bne lbl_8036609C
/* 803660D0 00363010 38 60 00 00 */ li r3, 0
/* 803660D4 00363014 4E 80 00 20 */ blr
.global func_803660D8
func_803660D8:
/* 803660D8 00363018 54 84 06 3E */ clrlwi r4, r4, 0x18
/* 803660DC 0036301C 7C 63 2A 14 */ add r3, r3, r5
/* 803660E0 00363020 38 A5 00 01 */ addi r5, r5, 1
/* 803660E4 00363024 48 00 00 10 */ b lbl_803660F4
lbl_803660E8:
/* 803660E8 00363028 8C 03 FF FF */ lbzu r0, -1(r3)
/* 803660EC 0036302C 7C 00 20 40 */ cmplw r0, r4
/* 803660F0 00363030 4D 82 00 20 */ beqlr
lbl_803660F4:
/* 803660F4 00363034 34 A5 FF FF */ addic. r5, r5, -1
/* 803660F8 00363038 40 82 FF F0 */ bne lbl_803660E8
/* 803660FC 0036303C 38 60 00 00 */ li r3, 0
/* 80366100 00363040 4E 80 00 20 */ blr
.global func_80366104
func_80366104:
/* 80366104 00363044 54 84 06 3E */ clrlwi r4, r4, 0x18
/* 80366108 00363048 38 63 FF FF */ addi r3, r3, -1
/* 8036610C 0036304C 38 A5 00 01 */ addi r5, r5, 1
/* 80366110 00363050 48 00 00 10 */ b lbl_80366120
lbl_80366114:
/* 80366114 00363054 8C 03 00 01 */ lbzu r0, 1(r3)
/* 80366118 00363058 7C 00 20 40 */ cmplw r0, r4
/* 8036611C 0036305C 4D 82 00 20 */ beqlr
lbl_80366120:
/* 80366120 00363060 34 A5 FF FF */ addic. r5, r5, -1
/* 80366124 00363064 40 82 FF F0 */ bne lbl_80366114
/* 80366128 00363068 38 60 00 00 */ li r3, 0
/* 8036612C 0036306C 4E 80 00 20 */ blr
.global func_80366130
func_80366130:
/* 80366130 00363070 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80366134 00363074 7C 08 02 A6 */ mflr r0
/* 80366138 00363078 28 05 00 20 */ cmplwi r5, 0x20
/* 8036613C 0036307C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80366140 00363080 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80366144 00363084 7C 7F 1B 78 */ mr r31, r3
/* 80366148 00363088 7F E6 22 78 */ xor r6, r31, r4
/* 8036614C 0036308C 7C C0 00 34 */ cntlzw r0, r6
/* 80366150 00363090 7F E0 00 30 */ slw r0, r31, r0
/* 80366154 00363094 54 07 0F FE */ srwi r7, r0, 0x1f
/* 80366158 00363098 41 80 00 40 */ blt lbl_80366198
/* 8036615C 0036309C 54 C0 07 BF */ clrlwi. r0, r6, 0x1e
/* 80366160 003630A0 41 82 00 1C */ beq lbl_8036617C
/* 80366164 003630A4 2C 07 00 00 */ cmpwi r7, 0
/* 80366168 003630A8 40 82 00 0C */ bne lbl_80366174
/* 8036616C 003630AC 48 00 01 3D */ bl func_803662A8
/* 80366170 003630B0 48 00 00 20 */ b lbl_80366190
lbl_80366174:
/* 80366174 003630B4 48 00 00 89 */ bl func_803661FC
/* 80366178 003630B8 48 00 00 18 */ b lbl_80366190
lbl_8036617C:
/* 8036617C 003630BC 2C 07 00 00 */ cmpwi r7, 0
/* 80366180 003630C0 40 82 00 0C */ bne lbl_8036618C
/* 80366184 003630C4 48 00 02 8D */ bl func_80366410
/* 80366188 003630C8 48 00 00 08 */ b lbl_80366190
lbl_8036618C:
/* 8036618C 003630CC 48 00 01 DD */ bl func_80366368
lbl_80366190:
/* 80366190 003630D0 7F E3 FB 78 */ mr r3, r31
/* 80366194 003630D4 48 00 00 54 */ b lbl_803661E8
lbl_80366198:
/* 80366198 003630D8 2C 07 00 00 */ cmpwi r7, 0
/* 8036619C 003630DC 40 82 00 28 */ bne lbl_803661C4
/* 803661A0 003630E0 38 64 FF FF */ addi r3, r4, -1
/* 803661A4 003630E4 38 9F FF FF */ addi r4, r31, -1
/* 803661A8 003630E8 38 A5 00 01 */ addi r5, r5, 1
/* 803661AC 003630EC 48 00 00 0C */ b lbl_803661B8
lbl_803661B0:
/* 803661B0 003630F0 8C 03 00 01 */ lbzu r0, 1(r3)
/* 803661B4 003630F4 9C 04 00 01 */ stbu r0, 1(r4)
lbl_803661B8:
/* 803661B8 003630F8 34 A5 FF FF */ addic. r5, r5, -1
/* 803661BC 003630FC 40 82 FF F4 */ bne lbl_803661B0
/* 803661C0 00363100 48 00 00 24 */ b lbl_803661E4
lbl_803661C4:
/* 803661C4 00363104 7C 64 2A 14 */ add r3, r4, r5
/* 803661C8 00363108 7C 9F 2A 14 */ add r4, r31, r5
/* 803661CC 0036310C 38 A5 00 01 */ addi r5, r5, 1
/* 803661D0 00363110 48 00 00 0C */ b lbl_803661DC
lbl_803661D4:
/* 803661D4 00363114 8C 03 FF FF */ lbzu r0, -1(r3)
/* 803661D8 00363118 9C 04 FF FF */ stbu r0, -1(r4)
lbl_803661DC:
/* 803661DC 0036311C 34 A5 FF FF */ addic. r5, r5, -1
/* 803661E0 00363120 40 82 FF F4 */ bne lbl_803661D4
lbl_803661E4:
/* 803661E4 00363124 7F E3 FB 78 */ mr r3, r31
lbl_803661E8:
/* 803661E8 00363128 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803661EC 0036312C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803661F0 00363130 7C 08 03 A6 */ mtlr r0
/* 803661F4 00363134 38 21 00 10 */ addi r1, r1, 0x10
/* 803661F8 00363138 4E 80 00 20 */ blr
.global func_803661FC
func_803661FC:
/* 803661FC 0036313C 7D 63 2A 14 */ add r11, r3, r5
/* 80366200 00363140 7D 44 2A 14 */ add r10, r4, r5
/* 80366204 00363144 55 63 07 BF */ clrlwi. r3, r11, 0x1e
/* 80366208 00363148 41 82 00 18 */ beq lbl_80366220
/* 8036620C 0036314C 7C A3 28 50 */ subf r5, r3, r5
lbl_80366210:
/* 80366210 00363150 8C 0A FF FF */ lbzu r0, -1(r10)
/* 80366214 00363154 34 63 FF FF */ addic. r3, r3, -1
/* 80366218 00363158 9C 0B FF FF */ stbu r0, -1(r11)
/* 8036621C 0036315C 40 82 FF F4 */ bne lbl_80366210
lbl_80366220:
/* 80366220 00363160 55 48 1E F8 */ rlwinm r8, r10, 3, 0x1b, 0x1c
/* 80366224 00363164 55 47 07 BE */ clrlwi r7, r10, 0x1e
/* 80366228 00363168 21 28 00 20 */ subfic r9, r8, 0x20
/* 8036622C 0036316C 54 A6 E8 FE */ srwi r6, r5, 3
/* 80366230 00363170 20 07 00 04 */ subfic r0, r7, 4
/* 80366234 00363174 7D 4A 02 14 */ add r10, r10, r0
/* 80366238 00363178 84 8A FF FC */ lwzu r4, -4(r10)
lbl_8036623C:
/* 8036623C 0036317C 80 0A FF FC */ lwz r0, -4(r10)
/* 80366240 00363180 7C 83 4C 30 */ srw r3, r4, r9
/* 80366244 00363184 34 C6 FF FF */ addic. r6, r6, -1
/* 80366248 00363188 7C 04 40 30 */ slw r4, r0, r8
/* 8036624C 0036318C 7C 00 4C 30 */ srw r0, r0, r9
/* 80366250 00363190 7C 83 1B 78 */ or r3, r4, r3
/* 80366254 00363194 90 6B FF FC */ stw r3, -4(r11)
/* 80366258 00363198 84 8A FF F8 */ lwzu r4, -8(r10)
/* 8036625C 0036319C 7C 83 40 30 */ slw r3, r4, r8
/* 80366260 003631A0 7C 60 03 78 */ or r0, r3, r0
/* 80366264 003631A4 94 0B FF F8 */ stwu r0, -8(r11)
/* 80366268 003631A8 40 82 FF D4 */ bne lbl_8036623C
/* 8036626C 003631AC 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
/* 80366270 003631B0 41 82 00 18 */ beq lbl_80366288
/* 80366274 003631B4 84 6A FF FC */ lwzu r3, -4(r10)
/* 80366278 003631B8 7C 80 4C 30 */ srw r0, r4, r9
/* 8036627C 003631BC 7C 63 40 30 */ slw r3, r3, r8
/* 80366280 003631C0 7C 60 03 78 */ or r0, r3, r0
/* 80366284 003631C4 94 0B FF FC */ stwu r0, -4(r11)
lbl_80366288:
/* 80366288 003631C8 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 8036628C 003631CC 4D 82 00 20 */ beqlr
/* 80366290 003631D0 7D 4A 3A 14 */ add r10, r10, r7
lbl_80366294:
/* 80366294 003631D4 8C 0A FF FF */ lbzu r0, -1(r10)
/* 80366298 003631D8 34 A5 FF FF */ addic. r5, r5, -1
/* 8036629C 003631DC 9C 0B FF FF */ stbu r0, -1(r11)
/* 803662A0 003631E0 40 82 FF F4 */ bne lbl_80366294
/* 803662A4 003631E4 4E 80 00 20 */ blr
.global func_803662A8
func_803662A8:
/* 803662A8 003631E8 7C 03 00 D0 */ neg r0, r3
/* 803662AC 003631EC 39 04 FF FF */ addi r8, r4, -1
/* 803662B0 003631F0 54 06 07 BF */ clrlwi. r6, r0, 0x1e
/* 803662B4 003631F4 38 63 FF FF */ addi r3, r3, -1
/* 803662B8 003631F8 41 82 00 18 */ beq lbl_803662D0
/* 803662BC 003631FC 7C A6 28 50 */ subf r5, r6, r5
lbl_803662C0:
/* 803662C0 00363200 8C 08 00 01 */ lbzu r0, 1(r8)
/* 803662C4 00363204 34 C6 FF FF */ addic. r6, r6, -1
/* 803662C8 00363208 9C 03 00 01 */ stbu r0, 1(r3)
/* 803662CC 0036320C 40 82 FF F4 */ bne lbl_803662C0
lbl_803662D0:
/* 803662D0 00363210 38 08 00 01 */ addi r0, r8, 1
/* 803662D4 00363214 38 C3 FF FD */ addi r6, r3, -3
/* 803662D8 00363218 54 09 07 BE */ clrlwi r9, r0, 0x1e
/* 803662DC 0036321C 54 A7 E8 FE */ srwi r7, r5, 3
/* 803662E0 00363220 7D 09 40 50 */ subf r8, r9, r8
/* 803662E4 00363224 54 0A 1E F8 */ rlwinm r10, r0, 3, 0x1b, 0x1c
/* 803662E8 00363228 84 88 00 01 */ lwzu r4, 1(r8)
/* 803662EC 0036322C 21 6A 00 20 */ subfic r11, r10, 0x20
lbl_803662F0:
/* 803662F0 00363230 80 68 00 04 */ lwz r3, 4(r8)
/* 803662F4 00363234 7C 84 50 30 */ slw r4, r4, r10
/* 803662F8 00363238 34 E7 FF FF */ addic. r7, r7, -1
/* 803662FC 0036323C 7C 60 5C 30 */ srw r0, r3, r11
/* 80366300 00363240 7C 63 50 30 */ slw r3, r3, r10
/* 80366304 00363244 7C 80 03 78 */ or r0, r4, r0
/* 80366308 00363248 90 06 00 04 */ stw r0, 4(r6)
/* 8036630C 0036324C 84 88 00 08 */ lwzu r4, 8(r8)
/* 80366310 00363250 7C 80 5C 30 */ srw r0, r4, r11
/* 80366314 00363254 7C 60 03 78 */ or r0, r3, r0
/* 80366318 00363258 94 06 00 08 */ stwu r0, 8(r6)
/* 8036631C 0036325C 40 82 FF D4 */ bne lbl_803662F0
/* 80366320 00363260 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
/* 80366324 00363264 41 82 00 18 */ beq lbl_8036633C
/* 80366328 00363268 84 08 00 04 */ lwzu r0, 4(r8)
/* 8036632C 0036326C 7C 83 50 30 */ slw r3, r4, r10
/* 80366330 00363270 7C 00 5C 30 */ srw r0, r0, r11
/* 80366334 00363274 7C 60 03 78 */ or r0, r3, r0
/* 80366338 00363278 94 06 00 04 */ stwu r0, 4(r6)
lbl_8036633C:
/* 8036633C 0036327C 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 80366340 00363280 38 88 00 03 */ addi r4, r8, 3
/* 80366344 00363284 38 66 00 03 */ addi r3, r6, 3
/* 80366348 00363288 4D 82 00 20 */ beqlr
/* 8036634C 0036328C 20 09 00 04 */ subfic r0, r9, 4
/* 80366350 00363290 7C 80 20 50 */ subf r4, r0, r4
lbl_80366354:
/* 80366354 00363294 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80366358 00363298 34 A5 FF FF */ addic. r5, r5, -1
/* 8036635C 0036329C 9C 03 00 01 */ stbu r0, 1(r3)
/* 80366360 003632A0 40 82 FF F4 */ bne lbl_80366354
/* 80366364 003632A4 4E 80 00 20 */ blr
.global func_80366368
func_80366368:
/* 80366368 003632A8 7C E3 2A 14 */ add r7, r3, r5
/* 8036636C 003632AC 7C C4 2A 14 */ add r6, r4, r5
/* 80366370 003632B0 54 E3 07 BF */ clrlwi. r3, r7, 0x1e
/* 80366374 003632B4 41 82 00 18 */ beq lbl_8036638C
/* 80366378 003632B8 7C A3 28 50 */ subf r5, r3, r5
lbl_8036637C:
/* 8036637C 003632BC 8C 06 FF FF */ lbzu r0, -1(r6)
/* 80366380 003632C0 34 63 FF FF */ addic. r3, r3, -1
/* 80366384 003632C4 9C 07 FF FF */ stbu r0, -1(r7)
/* 80366388 003632C8 40 82 FF F4 */ bne lbl_8036637C
lbl_8036638C:
/* 8036638C 003632CC 54 A4 D9 7F */ rlwinm. r4, r5, 0x1b, 5, 0x1f
/* 80366390 003632D0 41 82 00 4C */ beq lbl_803663DC
lbl_80366394:
/* 80366394 003632D4 80 66 FF FC */ lwz r3, -4(r6)
/* 80366398 003632D8 34 84 FF FF */ addic. r4, r4, -1
/* 8036639C 003632DC 80 06 FF F8 */ lwz r0, -8(r6)
/* 803663A0 003632E0 90 67 FF FC */ stw r3, -4(r7)
/* 803663A4 003632E4 80 66 FF F4 */ lwz r3, -0xc(r6)
/* 803663A8 003632E8 90 07 FF F8 */ stw r0, -8(r7)
/* 803663AC 003632EC 80 06 FF F0 */ lwz r0, -0x10(r6)
/* 803663B0 003632F0 90 67 FF F4 */ stw r3, -0xc(r7)
/* 803663B4 003632F4 80 66 FF EC */ lwz r3, -0x14(r6)
/* 803663B8 003632F8 90 07 FF F0 */ stw r0, -0x10(r7)
/* 803663BC 003632FC 80 06 FF E8 */ lwz r0, -0x18(r6)
/* 803663C0 00363300 90 67 FF EC */ stw r3, -0x14(r7)
/* 803663C4 00363304 80 66 FF E4 */ lwz r3, -0x1c(r6)
/* 803663C8 00363308 90 07 FF E8 */ stw r0, -0x18(r7)
/* 803663CC 0036330C 84 06 FF E0 */ lwzu r0, -0x20(r6)
/* 803663D0 00363310 90 67 FF E4 */ stw r3, -0x1c(r7)
/* 803663D4 00363314 94 07 FF E0 */ stwu r0, -0x20(r7)
/* 803663D8 00363318 40 82 FF BC */ bne lbl_80366394
lbl_803663DC:
/* 803663DC 0036331C 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
/* 803663E0 00363320 41 82 00 14 */ beq lbl_803663F4
lbl_803663E4:
/* 803663E4 00363324 84 06 FF FC */ lwzu r0, -4(r6)
/* 803663E8 00363328 34 63 FF FF */ addic. r3, r3, -1
/* 803663EC 0036332C 94 07 FF FC */ stwu r0, -4(r7)
/* 803663F0 00363330 40 82 FF F4 */ bne lbl_803663E4
lbl_803663F4:
/* 803663F4 00363334 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 803663F8 00363338 4D 82 00 20 */ beqlr
lbl_803663FC:
/* 803663FC 0036333C 8C 06 FF FF */ lbzu r0, -1(r6)
/* 80366400 00363340 34 A5 FF FF */ addic. r5, r5, -1
/* 80366404 00363344 9C 07 FF FF */ stbu r0, -1(r7)
/* 80366408 00363348 40 82 FF F4 */ bne lbl_803663FC
/* 8036640C 0036334C 4E 80 00 20 */ blr
.global func_80366410
func_80366410:
/* 80366410 00363350 7C 03 00 D0 */ neg r0, r3
/* 80366414 00363354 38 84 FF FF */ addi r4, r4, -1
/* 80366418 00363358 54 06 07 BF */ clrlwi. r6, r0, 0x1e
/* 8036641C 0036335C 38 63 FF FF */ addi r3, r3, -1
/* 80366420 00363360 41 82 00 18 */ beq lbl_80366438
/* 80366424 00363364 7C A6 28 50 */ subf r5, r6, r5
lbl_80366428:
/* 80366428 00363368 8C 04 00 01 */ lbzu r0, 1(r4)
/* 8036642C 0036336C 34 C6 FF FF */ addic. r6, r6, -1
/* 80366430 00363370 9C 03 00 01 */ stbu r0, 1(r3)
/* 80366434 00363374 40 82 FF F4 */ bne lbl_80366428
lbl_80366438:
/* 80366438 00363378 54 A6 D9 7F */ rlwinm. r6, r5, 0x1b, 5, 0x1f
/* 8036643C 0036337C 38 E4 FF FD */ addi r7, r4, -3
/* 80366440 00363380 38 83 FF FD */ addi r4, r3, -3
/* 80366444 00363384 41 82 00 4C */ beq lbl_80366490
lbl_80366448:
/* 80366448 00363388 80 67 00 04 */ lwz r3, 4(r7)
/* 8036644C 0036338C 34 C6 FF FF */ addic. r6, r6, -1
/* 80366450 00363390 80 07 00 08 */ lwz r0, 8(r7)
/* 80366454 00363394 90 64 00 04 */ stw r3, 4(r4)
/* 80366458 00363398 80 67 00 0C */ lwz r3, 0xc(r7)
/* 8036645C 0036339C 90 04 00 08 */ stw r0, 8(r4)
/* 80366460 003633A0 80 07 00 10 */ lwz r0, 0x10(r7)
/* 80366464 003633A4 90 64 00 0C */ stw r3, 0xc(r4)
/* 80366468 003633A8 80 67 00 14 */ lwz r3, 0x14(r7)
/* 8036646C 003633AC 90 04 00 10 */ stw r0, 0x10(r4)
/* 80366470 003633B0 80 07 00 18 */ lwz r0, 0x18(r7)
/* 80366474 003633B4 90 64 00 14 */ stw r3, 0x14(r4)
/* 80366478 003633B8 80 67 00 1C */ lwz r3, 0x1c(r7)
/* 8036647C 003633BC 90 04 00 18 */ stw r0, 0x18(r4)
/* 80366480 003633C0 84 07 00 20 */ lwzu r0, 0x20(r7)
/* 80366484 003633C4 90 64 00 1C */ stw r3, 0x1c(r4)
/* 80366488 003633C8 94 04 00 20 */ stwu r0, 0x20(r4)
/* 8036648C 003633CC 40 82 FF BC */ bne lbl_80366448
lbl_80366490:
/* 80366490 003633D0 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
/* 80366494 003633D4 41 82 00 14 */ beq lbl_803664A8
lbl_80366498:
/* 80366498 003633D8 84 07 00 04 */ lwzu r0, 4(r7)
/* 8036649C 003633DC 34 63 FF FF */ addic. r3, r3, -1
/* 803664A0 003633E0 94 04 00 04 */ stwu r0, 4(r4)
/* 803664A4 003633E4 40 82 FF F4 */ bne lbl_80366498
lbl_803664A8:
/* 803664A8 003633E8 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 803664AC 003633EC 38 C7 00 03 */ addi r6, r7, 3
/* 803664B0 003633F0 38 64 00 03 */ addi r3, r4, 3
/* 803664B4 003633F4 4D 82 00 20 */ beqlr
lbl_803664B8:
/* 803664B8 003633F8 8C 06 00 01 */ lbzu r0, 1(r6)
/* 803664BC 003633FC 34 A5 FF FF */ addic. r5, r5, -1
/* 803664C0 00363400 9C 03 00 01 */ stbu r0, 1(r3)
/* 803664C4 00363404 40 82 FF F4 */ bne lbl_803664B8
/* 803664C8 00363408 4E 80 00 20 */ blr
.global func_803664CC
func_803664CC:
/* 803664CC 0036340C 3C 60 80 36 */ lis r3, lbl_8036307C@ha
/* 803664D0 00363410 38 03 30 7C */ addi r0, r3, lbl_8036307C@l
/* 803664D4 00363414 90 0D 94 18 */ stw r0, lbl_80451998-_SDA_BASE_(r13)
/* 803664D8 00363418 4E 80 00 20 */ blr
.global func_803664DC
func_803664DC:
/* 803664DC 0036341C 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 803664E0 00363420 7C 08 02 A6 */ mflr r0
/* 803664E4 00363424 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 803664E8 00363428 BF 21 00 84 */ stmw r25, 0x84(r1)
/* 803664EC 0036342C 7C 79 1B 78 */ mr r25, r3
/* 803664F0 00363430 7C 9A 23 78 */ mr r26, r4
/* 803664F4 00363434 40 86 00 24 */ bne cr1, lbl_80366518
/* 803664F8 00363438 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 803664FC 0036343C D8 41 00 30 */ stfd f2, 0x30(r1)
/* 80366500 00363440 D8 61 00 38 */ stfd f3, 0x38(r1)
/* 80366504 00363444 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 80366508 00363448 D8 A1 00 48 */ stfd f5, 0x48(r1)
/* 8036650C 0036344C D8 C1 00 50 */ stfd f6, 0x50(r1)
/* 80366510 00363450 D8 E1 00 58 */ stfd f7, 0x58(r1)
/* 80366514 00363454 D9 01 00 60 */ stfd f8, 0x60(r1)
lbl_80366518:
/* 80366518 00363458 3B A1 00 A8 */ addi r29, r1, 0xa8
/* 8036651C 0036345C 3B C1 00 08 */ addi r30, r1, 8
/* 80366520 00363460 3F 80 02 00 */ lis r28, 0x200
/* 80366524 00363464 3B E0 FF FF */ li r31, -1
/* 80366528 00363468 39 80 00 00 */ li r12, 0
/* 8036652C 0036346C 3D 60 80 36 */ lis r11, lbl_80366964@ha
/* 80366530 00363470 90 81 00 0C */ stw r4, 0xc(r1)
/* 80366534 00363474 3B 61 00 74 */ addi r27, r1, 0x74
/* 80366538 00363478 38 0B 69 64 */ addi r0, r11, lbl_80366964@l
/* 8036653C 0036347C 38 81 00 68 */ addi r4, r1, 0x68
/* 80366540 00363480 90 61 00 08 */ stw r3, 8(r1)
/* 80366544 00363484 7C 03 03 78 */ mr r3, r0
/* 80366548 00363488 90 A1 00 10 */ stw r5, 0x10(r1)
/* 8036654C 0036348C 7F 45 D3 78 */ mr r5, r26
/* 80366550 00363490 90 C1 00 14 */ stw r6, 0x14(r1)
/* 80366554 00363494 7F 66 DB 78 */ mr r6, r27
/* 80366558 00363498 90 E1 00 18 */ stw r7, 0x18(r1)
/* 8036655C 0036349C 91 01 00 1C */ stw r8, 0x1c(r1)
/* 80366560 003634A0 91 21 00 20 */ stw r9, 0x20(r1)
/* 80366564 003634A4 91 41 00 24 */ stw r10, 0x24(r1)
/* 80366568 003634A8 93 81 00 74 */ stw r28, 0x74(r1)
/* 8036656C 003634AC 93 A1 00 78 */ stw r29, 0x78(r1)
/* 80366570 003634B0 93 C1 00 7C */ stw r30, 0x7c(r1)
/* 80366574 003634B4 93 21 00 68 */ stw r25, 0x68(r1)
/* 80366578 003634B8 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8036657C 003634BC 91 81 00 70 */ stw r12, 0x70(r1)
/* 80366580 003634C0 48 00 04 A9 */ bl func_80366A28
/* 80366584 003634C4 28 19 00 00 */ cmplwi r25, 0
/* 80366588 003634C8 41 82 00 20 */ beq lbl_803665A8
/* 8036658C 003634CC 38 00 FF FF */ li r0, -1
/* 80366590 003634D0 38 80 FF FE */ li r4, -2
/* 80366594 003634D4 7C 03 00 40 */ cmplw r3, r0
/* 80366598 003634D8 40 80 00 08 */ bge lbl_803665A0
/* 8036659C 003634DC 7C 64 1B 78 */ mr r4, r3
lbl_803665A0:
/* 803665A0 003634E0 38 00 00 00 */ li r0, 0
/* 803665A4 003634E4 7C 19 21 AE */ stbx r0, r25, r4
lbl_803665A8:
/* 803665A8 003634E8 BB 21 00 84 */ lmw r25, 0x84(r1)
/* 803665AC 003634EC 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 803665B0 003634F0 7C 08 03 A6 */ mtlr r0
/* 803665B4 003634F4 38 21 00 A0 */ addi r1, r1, 0xa0
/* 803665B8 003634F8 4E 80 00 20 */ blr
.global func_803665BC
func_803665BC:
/* 803665BC 003634FC 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 803665C0 00363500 7C 08 02 A6 */ mflr r0
/* 803665C4 00363504 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 803665C8 00363508 BF 41 00 88 */ stmw r26, 0x88(r1)
/* 803665CC 0036350C 7C 7A 1B 78 */ mr r26, r3
/* 803665D0 00363510 7C 9B 23 78 */ mr r27, r4
/* 803665D4 00363514 40 86 00 24 */ bne cr1, lbl_803665F8
/* 803665D8 00363518 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 803665DC 0036351C D8 41 00 30 */ stfd f2, 0x30(r1)
/* 803665E0 00363520 D8 61 00 38 */ stfd f3, 0x38(r1)
/* 803665E4 00363524 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 803665E8 00363528 D8 A1 00 48 */ stfd f5, 0x48(r1)
/* 803665EC 0036352C D8 C1 00 50 */ stfd f6, 0x50(r1)
/* 803665F0 00363530 D8 E1 00 58 */ stfd f7, 0x58(r1)
/* 803665F4 00363534 D9 01 00 60 */ stfd f8, 0x60(r1)
lbl_803665F8:
/* 803665F8 00363538 3B C1 00 A8 */ addi r30, r1, 0xa8
/* 803665FC 0036353C 3B E1 00 08 */ addi r31, r1, 8
/* 80366600 00363540 3F A0 03 00 */ lis r29, 0x300
/* 80366604 00363544 39 80 00 00 */ li r12, 0
/* 80366608 00363548 3D 60 80 36 */ lis r11, lbl_80366964@ha
/* 8036660C 0036354C 90 81 00 0C */ stw r4, 0xc(r1)
/* 80366610 00363550 3B 81 00 74 */ addi r28, r1, 0x74
/* 80366614 00363554 38 81 00 68 */ addi r4, r1, 0x68
/* 80366618 00363558 90 C1 00 14 */ stw r6, 0x14(r1)
/* 8036661C 0036355C 38 0B 69 64 */ addi r0, r11, lbl_80366964@l
/* 80366620 00363560 7F 86 E3 78 */ mr r6, r28
/* 80366624 00363564 90 61 00 08 */ stw r3, 8(r1)
/* 80366628 00363568 7C 03 03 78 */ mr r3, r0
/* 8036662C 0036356C 90 A1 00 10 */ stw r5, 0x10(r1)
/* 80366630 00363570 90 E1 00 18 */ stw r7, 0x18(r1)
/* 80366634 00363574 91 01 00 1C */ stw r8, 0x1c(r1)
/* 80366638 00363578 91 21 00 20 */ stw r9, 0x20(r1)
/* 8036663C 0036357C 91 41 00 24 */ stw r10, 0x24(r1)
/* 80366640 00363580 93 A1 00 74 */ stw r29, 0x74(r1)
/* 80366644 00363584 93 C1 00 78 */ stw r30, 0x78(r1)
/* 80366648 00363588 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 8036664C 0036358C 93 41 00 68 */ stw r26, 0x68(r1)
/* 80366650 00363590 93 61 00 6C */ stw r27, 0x6c(r1)
/* 80366654 00363594 91 81 00 70 */ stw r12, 0x70(r1)
/* 80366658 00363598 48 00 03 D1 */ bl func_80366A28
/* 8036665C 0036359C 28 1A 00 00 */ cmplwi r26, 0
/* 80366660 003635A0 41 82 00 1C */ beq lbl_8036667C
/* 80366664 003635A4 7C 03 D8 40 */ cmplw r3, r27
/* 80366668 003635A8 38 9B FF FF */ addi r4, r27, -1
/* 8036666C 003635AC 40 80 00 08 */ bge lbl_80366674
/* 80366670 003635B0 7C 64 1B 78 */ mr r4, r3
lbl_80366674:
/* 80366674 003635B4 38 00 00 00 */ li r0, 0
/* 80366678 003635B8 7C 1A 21 AE */ stbx r0, r26, r4
lbl_8036667C:
/* 8036667C 003635BC BB 41 00 88 */ lmw r26, 0x88(r1)
/* 80366680 003635C0 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 80366684 003635C4 7C 08 03 A6 */ mtlr r0
/* 80366688 003635C8 38 21 00 A0 */ addi r1, r1, 0xa0
/* 8036668C 003635CC 4E 80 00 20 */ blr
.global func_80366690
func_80366690:
/* 80366690 003635D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80366694 003635D4 7C 08 02 A6 */ mflr r0
/* 80366698 003635D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036669C 003635DC 38 00 00 00 */ li r0, 0
/* 803666A0 003635E0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803666A4 003635E4 7C 9F 23 78 */ mr r31, r4
/* 803666A8 003635E8 38 81 00 08 */ addi r4, r1, 8
/* 803666AC 003635EC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803666B0 003635F0 7C 7E 1B 78 */ mr r30, r3
/* 803666B4 003635F4 3C 60 80 36 */ lis r3, lbl_80366964@ha
/* 803666B8 003635F8 93 C1 00 08 */ stw r30, 8(r1)
/* 803666BC 003635FC 38 63 69 64 */ addi r3, r3, lbl_80366964@l
/* 803666C0 00363600 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803666C4 00363604 90 01 00 10 */ stw r0, 0x10(r1)
/* 803666C8 00363608 48 00 03 61 */ bl func_80366A28
/* 803666CC 0036360C 28 1E 00 00 */ cmplwi r30, 0
/* 803666D0 00363610 41 82 00 1C */ beq lbl_803666EC
/* 803666D4 00363614 7C 03 F8 40 */ cmplw r3, r31
/* 803666D8 00363618 38 9F FF FF */ addi r4, r31, -1
/* 803666DC 0036361C 40 80 00 08 */ bge lbl_803666E4
/* 803666E0 00363620 7C 64 1B 78 */ mr r4, r3
lbl_803666E4:
/* 803666E4 00363624 38 00 00 00 */ li r0, 0
/* 803666E8 00363628 7C 1E 21 AE */ stbx r0, r30, r4
lbl_803666EC:
/* 803666EC 0036362C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803666F0 00363630 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803666F4 00363634 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803666F8 00363638 7C 08 03 A6 */ mtlr r0
/* 803666FC 0036363C 38 21 00 20 */ addi r1, r1, 0x20
/* 80366700 00363640 4E 80 00 20 */ blr
.global func_80366704
func_80366704:
/* 80366704 00363644 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80366708 00363648 7C 08 02 A6 */ mflr r0
/* 8036670C 0036364C 3C A0 80 3D */ lis r5, lbl_803D29B0@ha
/* 80366710 00363650 90 01 00 24 */ stw r0, 0x24(r1)
/* 80366714 00363654 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80366718 00363658 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036671C 0036365C 7C 9E 23 78 */ mr r30, r4
/* 80366720 00363660 38 85 29 B0 */ addi r4, r5, lbl_803D29B0@l
/* 80366724 00363664 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80366728 00363668 3B E4 00 50 */ addi r31, r4, 0x50
/* 8036672C 0036366C 7C 7D 1B 78 */ mr r29, r3
/* 80366730 00363670 38 80 FF FF */ li r4, -1
/* 80366734 00363674 7F E3 FB 78 */ mr r3, r31
/* 80366738 00363678 48 00 29 DD */ bl func_80369114
/* 8036673C 0036367C 2C 03 00 00 */ cmpwi r3, 0
/* 80366740 00363680 41 80 00 0C */ blt lbl_8036674C
/* 80366744 00363684 38 60 FF FF */ li r3, -1
/* 80366748 00363688 48 00 00 38 */ b lbl_80366780
lbl_8036674C:
/* 8036674C 0036368C 38 60 00 02 */ li r3, 2
/* 80366750 00363690 4B FF ED 19 */ bl func_80365468
/* 80366754 00363694 3C 60 80 36 */ lis r3, lbl_803669D0@ha
/* 80366758 00363698 7F E4 FB 78 */ mr r4, r31
/* 8036675C 0036369C 38 63 69 D0 */ addi r3, r3, lbl_803669D0@l
/* 80366760 003636A0 7F A5 EB 78 */ mr r5, r29
/* 80366764 003636A4 7F C6 F3 78 */ mr r6, r30
/* 80366768 003636A8 48 00 02 C1 */ bl func_80366A28
/* 8036676C 003636AC 7C 60 1B 78 */ mr r0, r3
/* 80366770 003636B0 38 60 00 02 */ li r3, 2
/* 80366774 003636B4 7C 1F 03 78 */ mr r31, r0
/* 80366778 003636B8 4B FF EC ED */ bl func_80365464
/* 8036677C 003636BC 7F E3 FB 78 */ mr r3, r31
lbl_80366780:
/* 80366780 003636C0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80366784 003636C4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80366788 003636C8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036678C 003636CC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80366790 003636D0 7C 08 03 A6 */ mtlr r0
/* 80366794 003636D4 38 21 00 20 */ addi r1, r1, 0x20
/* 80366798 003636D8 4E 80 00 20 */ blr
.global func_8036679C
func_8036679C:
/* 8036679C 003636DC 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 803667A0 003636E0 7C 08 02 A6 */ mflr r0
/* 803667A4 003636E4 90 01 00 84 */ stw r0, 0x84(r1)
/* 803667A8 003636E8 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 803667AC 003636EC 7C 9F 23 78 */ mr r31, r4
/* 803667B0 003636F0 93 C1 00 78 */ stw r30, 0x78(r1)
/* 803667B4 003636F4 7C 7E 1B 78 */ mr r30, r3
/* 803667B8 003636F8 40 86 00 24 */ bne cr1, lbl_803667DC
/* 803667BC 003636FC D8 21 00 28 */ stfd f1, 0x28(r1)
/* 803667C0 00363700 D8 41 00 30 */ stfd f2, 0x30(r1)
/* 803667C4 00363704 D8 61 00 38 */ stfd f3, 0x38(r1)
/* 803667C8 00363708 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 803667CC 0036370C D8 A1 00 48 */ stfd f5, 0x48(r1)
/* 803667D0 00363710 D8 C1 00 50 */ stfd f6, 0x50(r1)
/* 803667D4 00363714 D8 E1 00 58 */ stfd f7, 0x58(r1)
/* 803667D8 00363718 D9 01 00 60 */ stfd f8, 0x60(r1)
lbl_803667DC:
/* 803667DC 0036371C 90 61 00 08 */ stw r3, 8(r1)
/* 803667E0 00363720 7F C3 F3 78 */ mr r3, r30
/* 803667E4 00363724 90 81 00 0C */ stw r4, 0xc(r1)
/* 803667E8 00363728 38 80 FF FF */ li r4, -1
/* 803667EC 0036372C 90 A1 00 10 */ stw r5, 0x10(r1)
/* 803667F0 00363730 90 C1 00 14 */ stw r6, 0x14(r1)
/* 803667F4 00363734 90 E1 00 18 */ stw r7, 0x18(r1)
/* 803667F8 00363738 91 01 00 1C */ stw r8, 0x1c(r1)
/* 803667FC 0036373C 91 21 00 20 */ stw r9, 0x20(r1)
/* 80366800 00363740 91 41 00 24 */ stw r10, 0x24(r1)
/* 80366804 00363744 48 00 29 11 */ bl func_80369114
/* 80366808 00363748 2C 03 00 00 */ cmpwi r3, 0
/* 8036680C 0036374C 41 80 00 0C */ blt lbl_80366818
/* 80366810 00363750 38 60 FF FF */ li r3, -1
/* 80366814 00363754 48 00 00 50 */ b lbl_80366864
lbl_80366818:
/* 80366818 00363758 38 60 00 02 */ li r3, 2
/* 8036681C 0036375C 4B FF EC 4D */ bl func_80365468
/* 80366820 00363760 38 A1 00 88 */ addi r5, r1, 0x88
/* 80366824 00363764 38 01 00 08 */ addi r0, r1, 8
/* 80366828 00363768 3C 80 02 00 */ lis r4, 0x200
/* 8036682C 0036376C 3C 60 80 36 */ lis r3, lbl_803669D0@ha
/* 80366830 00363770 90 81 00 68 */ stw r4, 0x68(r1)
/* 80366834 00363774 38 C1 00 68 */ addi r6, r1, 0x68
/* 80366838 00363778 38 63 69 D0 */ addi r3, r3, lbl_803669D0@l
/* 8036683C 0036377C 7F C4 F3 78 */ mr r4, r30
/* 80366840 00363780 90 A1 00 6C */ stw r5, 0x6c(r1)
/* 80366844 00363784 7F E5 FB 78 */ mr r5, r31
/* 80366848 00363788 90 01 00 70 */ stw r0, 0x70(r1)
/* 8036684C 0036378C 48 00 01 DD */ bl func_80366A28
/* 80366850 00363790 7C 60 1B 78 */ mr r0, r3
/* 80366854 00363794 38 60 00 02 */ li r3, 2
/* 80366858 00363798 7C 1F 03 78 */ mr r31, r0
/* 8036685C 0036379C 4B FF EC 09 */ bl func_80365464
/* 80366860 003637A0 7F E3 FB 78 */ mr r3, r31
lbl_80366864:
/* 80366864 003637A4 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80366868 003637A8 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 8036686C 003637AC 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 80366870 003637B0 7C 08 03 A6 */ mtlr r0
/* 80366874 003637B4 38 21 00 80 */ addi r1, r1, 0x80
/* 80366878 003637B8 4E 80 00 20 */ blr
.global func_8036687C
func_8036687C:
/* 8036687C 003637BC 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 80366880 003637C0 7C 08 02 A6 */ mflr r0
/* 80366884 003637C4 90 01 00 84 */ stw r0, 0x84(r1)
/* 80366888 003637C8 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 8036688C 003637CC 93 C1 00 78 */ stw r30, 0x78(r1)
/* 80366890 003637D0 7C 7E 1B 78 */ mr r30, r3
/* 80366894 003637D4 40 86 00 24 */ bne cr1, lbl_803668B8
/* 80366898 003637D8 D8 21 00 28 */ stfd f1, 0x28(r1)
/* 8036689C 003637DC D8 41 00 30 */ stfd f2, 0x30(r1)
/* 803668A0 003637E0 D8 61 00 38 */ stfd f3, 0x38(r1)
/* 803668A4 003637E4 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 803668A8 003637E8 D8 A1 00 48 */ stfd f5, 0x48(r1)
/* 803668AC 003637EC D8 C1 00 50 */ stfd f6, 0x50(r1)
/* 803668B0 003637F0 D8 E1 00 58 */ stfd f7, 0x58(r1)
/* 803668B4 003637F4 D9 01 00 60 */ stfd f8, 0x60(r1)
lbl_803668B8:
/* 803668B8 003637F8 3D 60 80 3D */ lis r11, lbl_803D29B0@ha
/* 803668BC 003637FC 90 81 00 0C */ stw r4, 0xc(r1)
/* 803668C0 00363800 39 6B 29 B0 */ addi r11, r11, lbl_803D29B0@l
/* 803668C4 00363804 38 80 FF FF */ li r4, -1
/* 803668C8 00363808 90 61 00 08 */ stw r3, 8(r1)
/* 803668CC 0036380C 3B EB 00 50 */ addi r31, r11, 0x50
/* 803668D0 00363810 7F E3 FB 78 */ mr r3, r31
/* 803668D4 00363814 90 A1 00 10 */ stw r5, 0x10(r1)
/* 803668D8 00363818 90 C1 00 14 */ stw r6, 0x14(r1)
/* 803668DC 0036381C 90 E1 00 18 */ stw r7, 0x18(r1)
/* 803668E0 00363820 91 01 00 1C */ stw r8, 0x1c(r1)
/* 803668E4 00363824 91 21 00 20 */ stw r9, 0x20(r1)
/* 803668E8 00363828 91 41 00 24 */ stw r10, 0x24(r1)
/* 803668EC 0036382C 48 00 28 29 */ bl func_80369114
/* 803668F0 00363830 2C 03 00 00 */ cmpwi r3, 0
/* 803668F4 00363834 41 80 00 0C */ blt lbl_80366900
/* 803668F8 00363838 38 60 FF FF */ li r3, -1
/* 803668FC 0036383C 48 00 00 50 */ b lbl_8036694C
lbl_80366900:
/* 80366900 00363840 38 60 00 02 */ li r3, 2
/* 80366904 00363844 4B FF EB 65 */ bl func_80365468
/* 80366908 00363848 38 A1 00 88 */ addi r5, r1, 0x88
/* 8036690C 0036384C 38 01 00 08 */ addi r0, r1, 8
/* 80366910 00363850 3C 80 01 00 */ lis r4, 0x100
/* 80366914 00363854 3C 60 80 36 */ lis r3, lbl_803669D0@ha
/* 80366918 00363858 90 81 00 68 */ stw r4, 0x68(r1)
/* 8036691C 0036385C 38 C1 00 68 */ addi r6, r1, 0x68
/* 80366920 00363860 38 63 69 D0 */ addi r3, r3, lbl_803669D0@l
/* 80366924 00363864 7F E4 FB 78 */ mr r4, r31
/* 80366928 00363868 90 A1 00 6C */ stw r5, 0x6c(r1)
/* 8036692C 0036386C 7F C5 F3 78 */ mr r5, r30
/* 80366930 00363870 90 01 00 70 */ stw r0, 0x70(r1)
/* 80366934 00363874 48 00 00 F5 */ bl func_80366A28
/* 80366938 00363878 7C 60 1B 78 */ mr r0, r3
/* 8036693C 0036387C 38 60 00 02 */ li r3, 2
/* 80366940 00363880 7C 1F 03 78 */ mr r31, r0
/* 80366944 00363884 4B FF EB 21 */ bl func_80365464
/* 80366948 00363888 7F E3 FB 78 */ mr r3, r31
lbl_8036694C:
/* 8036694C 0036388C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80366950 00363890 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 80366954 00363894 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 80366958 00363898 7C 08 03 A6 */ mtlr r0
/* 8036695C 0036389C 38 21 00 80 */ addi r1, r1, 0x80
/* 80366960 003638A0 4E 80 00 20 */ blr
lbl_80366964:
/* 80366964 003638A4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80366968 003638A8 7C 08 02 A6 */ mflr r0
/* 8036696C 003638AC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80366970 003638B0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80366974 003638B4 93 C1 00 08 */ stw r30, 8(r1)
/* 80366978 003638B8 7C 7E 1B 78 */ mr r30, r3
/* 8036697C 003638BC 80 63 00 08 */ lwz r3, 8(r3)
/* 80366980 003638C0 80 DE 00 04 */ lwz r6, 4(r30)
/* 80366984 003638C4 7C 03 2A 14 */ add r0, r3, r5
/* 80366988 003638C8 7C 00 30 40 */ cmplw r0, r6
/* 8036698C 003638CC 7F E3 30 50 */ subf r31, r3, r6
/* 80366990 003638D0 41 81 00 08 */ bgt lbl_80366998
/* 80366994 003638D4 7C BF 2B 78 */ mr r31, r5
lbl_80366998:
/* 80366998 003638D8 80 1E 00 00 */ lwz r0, 0(r30)
/* 8036699C 003638DC 7F E5 FB 78 */ mr r5, r31
/* 803669A0 003638E0 7C 60 1A 14 */ add r3, r0, r3
/* 803669A4 003638E4 4B C9 CB 9D */ bl memcpy
/* 803669A8 003638E8 80 1E 00 08 */ lwz r0, 8(r30)
/* 803669AC 003638EC 38 60 00 01 */ li r3, 1
/* 803669B0 003638F0 7C 00 FA 14 */ add r0, r0, r31
/* 803669B4 003638F4 90 1E 00 08 */ stw r0, 8(r30)
/* 803669B8 003638F8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803669BC 003638FC 83 C1 00 08 */ lwz r30, 8(r1)
/* 803669C0 00363900 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803669C4 00363904 7C 08 03 A6 */ mtlr r0
/* 803669C8 00363908 38 21 00 10 */ addi r1, r1, 0x10
/* 803669CC 0036390C 4E 80 00 20 */ blr
lbl_803669D0:
/* 803669D0 00363910 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803669D4 00363914 7C 08 02 A6 */ mflr r0
/* 803669D8 00363918 90 01 00 14 */ stw r0, 0x14(r1)
/* 803669DC 0036391C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803669E0 00363920 7C BF 2B 78 */ mr r31, r5
/* 803669E4 00363924 93 C1 00 08 */ stw r30, 8(r1)
/* 803669E8 00363928 7C 7E 1B 78 */ mr r30, r3
/* 803669EC 0036392C 7C 83 23 78 */ mr r3, r4
/* 803669F0 00363930 38 80 00 01 */ li r4, 1
/* 803669F4 00363934 7F C6 F3 78 */ mr r6, r30
/* 803669F8 00363938 4B FF ED A9 */ bl func_803657A0
/* 803669FC 0036393C 7C 1F 18 40 */ cmplw r31, r3
/* 80366A00 00363940 40 82 00 0C */ bne lbl_80366A0C
/* 80366A04 00363944 7F C3 F3 78 */ mr r3, r30
/* 80366A08 00363948 48 00 00 08 */ b lbl_80366A10
lbl_80366A0C:
/* 80366A0C 0036394C 38 60 00 00 */ li r3, 0
lbl_80366A10:
/* 80366A10 00363950 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80366A14 00363954 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80366A18 00363958 83 C1 00 08 */ lwz r30, 8(r1)
/* 80366A1C 0036395C 7C 08 03 A6 */ mtlr r0
/* 80366A20 00363960 38 21 00 10 */ addi r1, r1, 0x10
/* 80366A24 00363964 4E 80 00 20 */ blr
.global func_80366A28
func_80366A28:
/* 80366A28 00363968 94 21 FD 40 */ stwu r1, -0x2c0(r1)
/* 80366A2C 0036396C 7C 08 02 A6 */ mflr r0
/* 80366A30 00363970 90 01 02 C4 */ stw r0, 0x2c4(r1)
/* 80366A34 00363974 38 00 00 20 */ li r0, 0x20
/* 80366A38 00363978 BE 61 02 8C */ stmw r19, 0x28c(r1)
/* 80366A3C 0036397C 7C 7F 1B 78 */ mr r31, r3
/* 80366A40 00363980 7C 9E 23 78 */ mr r30, r4
/* 80366A44 00363984 7C DD 33 78 */ mr r29, r6
/* 80366A48 00363988 7C BA 2B 78 */ mr r26, r5
/* 80366A4C 0036398C 3B 01 02 7C */ addi r24, r1, 0x27c
/* 80366A50 00363990 3A A1 02 7B */ addi r21, r1, 0x27b
/* 80366A54 00363994 3B 60 00 00 */ li r27, 0
/* 80366A58 00363998 98 01 00 09 */ stb r0, 9(r1)
/* 80366A5C 0036399C 48 00 07 1C */ b lbl_80367178
lbl_80366A60:
/* 80366A60 003639A0 7F 43 D3 78 */ mr r3, r26
/* 80366A64 003639A4 38 80 00 25 */ li r4, 0x25
/* 80366A68 003639A8 48 00 1E BD */ bl func_80368924
/* 80366A6C 003639AC 7C 79 1B 79 */ or. r25, r3, r3
/* 80366A70 003639B0 40 82 00 3C */ bne lbl_80366AAC
/* 80366A74 003639B4 7F 43 D3 78 */ mr r3, r26
/* 80366A78 003639B8 48 00 21 6D */ bl func_80368BE4
/* 80366A7C 003639BC 7C 65 1B 79 */ or. r5, r3, r3
/* 80366A80 003639C0 7F 7B 2A 14 */ add r27, r27, r5
/* 80366A84 003639C4 41 82 07 00 */ beq lbl_80367184
/* 80366A88 003639C8 7F EC FB 78 */ mr r12, r31
/* 80366A8C 003639CC 7F C3 F3 78 */ mr r3, r30
/* 80366A90 003639D0 7F 44 D3 78 */ mr r4, r26
/* 80366A94 003639D4 7D 89 03 A6 */ mtctr r12
/* 80366A98 003639D8 4E 80 04 21 */ bctrl
/* 80366A9C 003639DC 28 03 00 00 */ cmplwi r3, 0
/* 80366AA0 003639E0 40 82 06 E4 */ bne lbl_80367184
/* 80366AA4 003639E4 38 60 FF FF */ li r3, -1
/* 80366AA8 003639E8 48 00 06 E0 */ b lbl_80367188
lbl_80366AAC:
/* 80366AAC 003639EC 7C BA C8 51 */ subf. r5, r26, r25
/* 80366AB0 003639F0 7F 7B 2A 14 */ add r27, r27, r5
/* 80366AB4 003639F4 41 82 00 28 */ beq lbl_80366ADC
/* 80366AB8 003639F8 7F EC FB 78 */ mr r12, r31
/* 80366ABC 003639FC 7F C3 F3 78 */ mr r3, r30
/* 80366AC0 00363A00 7F 44 D3 78 */ mr r4, r26
/* 80366AC4 00363A04 7D 89 03 A6 */ mtctr r12
/* 80366AC8 00363A08 4E 80 04 21 */ bctrl
/* 80366ACC 00363A0C 28 03 00 00 */ cmplwi r3, 0
/* 80366AD0 00363A10 40 82 00 0C */ bne lbl_80366ADC
/* 80366AD4 00363A14 38 60 FF FF */ li r3, -1
/* 80366AD8 00363A18 48 00 06 B0 */ b lbl_80367188
lbl_80366ADC:
/* 80366ADC 00363A1C 7F 23 CB 78 */ mr r3, r25
/* 80366AE0 00363A20 7F A4 EB 78 */ mr r4, r29
/* 80366AE4 00363A24 38 A1 00 6C */ addi r5, r1, 0x6c
/* 80366AE8 00363A28 48 00 17 A1 */ bl func_80368288
/* 80366AEC 00363A2C 88 01 00 71 */ lbz r0, 0x71(r1)
/* 80366AF0 00363A30 7C 7A 1B 78 */ mr r26, r3
/* 80366AF4 00363A34 2C 00 00 68 */ cmpwi r0, 0x68
/* 80366AF8 00363A38 41 82 05 00 */ beq lbl_80366FF8
/* 80366AFC 00363A3C 40 80 00 60 */ bge lbl_80366B5C
/* 80366B00 00363A40 2C 00 00 58 */ cmpwi r0, 0x58
/* 80366B04 00363A44 41 82 01 B0 */ beq lbl_80366CB4
/* 80366B08 00363A48 40 80 00 30 */ bge lbl_80366B38
/* 80366B0C 00363A4C 2C 00 00 41 */ cmpwi r0, 0x41
/* 80366B10 00363A50 41 82 03 0C */ beq lbl_80366E1C
/* 80366B14 00363A54 40 80 00 10 */ bge lbl_80366B24
/* 80366B18 00363A58 2C 00 00 25 */ cmpwi r0, 0x25
/* 80366B1C 00363A5C 41 82 04 C8 */ beq lbl_80366FE4
/* 80366B20 00363A60 48 00 04 D8 */ b lbl_80366FF8
lbl_80366B24:
/* 80366B24 00363A64 2C 00 00 48 */ cmpwi r0, 0x48
/* 80366B28 00363A68 40 80 04 D0 */ bge lbl_80366FF8
/* 80366B2C 00363A6C 2C 00 00 45 */ cmpwi r0, 0x45
/* 80366B30 00363A70 40 80 02 80 */ bge lbl_80366DB0
/* 80366B34 00363A74 48 00 04 C4 */ b lbl_80366FF8
lbl_80366B38:
/* 80366B38 00363A78 2C 00 00 63 */ cmpwi r0, 0x63
/* 80366B3C 00363A7C 41 82 04 88 */ beq lbl_80366FC4
/* 80366B40 00363A80 40 80 00 10 */ bge lbl_80366B50
/* 80366B44 00363A84 2C 00 00 61 */ cmpwi r0, 0x61
/* 80366B48 00363A88 41 82 02 D4 */ beq lbl_80366E1C
/* 80366B4C 00363A8C 48 00 04 AC */ b lbl_80366FF8
lbl_80366B50:
/* 80366B50 00363A90 2C 00 00 65 */ cmpwi r0, 0x65
/* 80366B54 00363A94 40 80 02 5C */ bge lbl_80366DB0
/* 80366B58 00363A98 48 00 00 60 */ b lbl_80366BB8
lbl_80366B5C:
/* 80366B5C 00363A9C 2C 00 00 74 */ cmpwi r0, 0x74
/* 80366B60 00363AA0 41 82 04 98 */ beq lbl_80366FF8
/* 80366B64 00363AA4 40 80 00 30 */ bge lbl_80366B94
/* 80366B68 00363AA8 2C 00 00 6F */ cmpwi r0, 0x6f
/* 80366B6C 00363AAC 41 82 01 48 */ beq lbl_80366CB4
/* 80366B70 00363AB0 40 80 00 18 */ bge lbl_80366B88
/* 80366B74 00363AB4 2C 00 00 6E */ cmpwi r0, 0x6e
/* 80366B78 00363AB8 40 80 03 E8 */ bge lbl_80366F60
/* 80366B7C 00363ABC 2C 00 00 6A */ cmpwi r0, 0x6a
/* 80366B80 00363AC0 40 80 04 78 */ bge lbl_80366FF8
/* 80366B84 00363AC4 48 00 00 34 */ b lbl_80366BB8
lbl_80366B88:
/* 80366B88 00363AC8 2C 00 00 73 */ cmpwi r0, 0x73
/* 80366B8C 00363ACC 40 80 02 FC */ bge lbl_80366E88
/* 80366B90 00363AD0 48 00 04 68 */ b lbl_80366FF8
lbl_80366B94:
/* 80366B94 00363AD4 2C 00 00 78 */ cmpwi r0, 0x78
/* 80366B98 00363AD8 41 82 01 1C */ beq lbl_80366CB4
/* 80366B9C 00363ADC 40 80 00 10 */ bge lbl_80366BAC
/* 80366BA0 00363AE0 2C 00 00 76 */ cmpwi r0, 0x76
/* 80366BA4 00363AE4 40 80 04 54 */ bge lbl_80366FF8
/* 80366BA8 00363AE8 48 00 01 0C */ b lbl_80366CB4
lbl_80366BAC:
/* 80366BAC 00363AEC 2C 00 00 FF */ cmpwi r0, 0xff
/* 80366BB0 00363AF0 41 82 04 48 */ beq lbl_80366FF8
/* 80366BB4 00363AF4 48 00 04 44 */ b lbl_80366FF8
lbl_80366BB8:
/* 80366BB8 00363AF8 88 01 00 70 */ lbz r0, 0x70(r1)
/* 80366BBC 00363AFC 28 00 00 03 */ cmplwi r0, 3
/* 80366BC0 00363B00 40 82 00 18 */ bne lbl_80366BD8
/* 80366BC4 00363B04 7F A3 EB 78 */ mr r3, r29
/* 80366BC8 00363B08 38 80 00 01 */ li r4, 1
/* 80366BCC 00363B0C 4B FF AF 49 */ bl func_80361B14
/* 80366BD0 00363B10 83 83 00 00 */ lwz r28, 0(r3)
/* 80366BD4 00363B14 48 00 00 34 */ b lbl_80366C08
lbl_80366BD8:
/* 80366BD8 00363B18 28 00 00 04 */ cmplwi r0, 4
/* 80366BDC 00363B1C 40 82 00 1C */ bne lbl_80366BF8
/* 80366BE0 00363B20 7F A3 EB 78 */ mr r3, r29
/* 80366BE4 00363B24 38 80 00 02 */ li r4, 2
/* 80366BE8 00363B28 4B FF AF 2D */ bl func_80361B14
/* 80366BEC 00363B2C 82 C3 00 00 */ lwz r22, 0(r3)
/* 80366BF0 00363B30 82 E3 00 04 */ lwz r23, 4(r3)
/* 80366BF4 00363B34 48 00 00 14 */ b lbl_80366C08
lbl_80366BF8:
/* 80366BF8 00363B38 7F A3 EB 78 */ mr r3, r29
/* 80366BFC 00363B3C 38 80 00 01 */ li r4, 1
/* 80366C00 00363B40 4B FF AF 15 */ bl func_80361B14
/* 80366C04 00363B44 83 83 00 00 */ lwz r28, 0(r3)
lbl_80366C08:
/* 80366C08 00363B48 88 61 00 70 */ lbz r3, 0x70(r1)
/* 80366C0C 00363B4C 28 03 00 02 */ cmplwi r3, 2
/* 80366C10 00363B50 40 82 00 0C */ bne lbl_80366C1C
/* 80366C14 00363B54 7F 80 07 34 */ extsh r0, r28
/* 80366C18 00363B58 7C 1C 03 78 */ mr r28, r0
lbl_80366C1C:
/* 80366C1C 00363B5C 28 03 00 01 */ cmplwi r3, 1
/* 80366C20 00363B60 40 82 00 0C */ bne lbl_80366C2C
/* 80366C24 00363B64 7F 80 07 74 */ extsb r0, r28
/* 80366C28 00363B68 7C 1C 03 78 */ mr r28, r0
lbl_80366C2C:
/* 80366C2C 00363B6C 28 03 00 04 */ cmplwi r3, 4
/* 80366C30 00363B70 40 82 00 44 */ bne lbl_80366C74
/* 80366C34 00363B74 81 21 00 6C */ lwz r9, 0x6c(r1)
/* 80366C38 00363B78 7E E4 BB 78 */ mr r4, r23
/* 80366C3C 00363B7C 81 01 00 70 */ lwz r8, 0x70(r1)
/* 80366C40 00363B80 7E C3 B3 78 */ mr r3, r22
/* 80366C44 00363B84 80 E1 00 74 */ lwz r7, 0x74(r1)
/* 80366C48 00363B88 7F 05 C3 78 */ mr r5, r24
/* 80366C4C 00363B8C 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366C50 00363B90 38 C1 00 5C */ addi r6, r1, 0x5c
/* 80366C54 00363B94 91 21 00 5C */ stw r9, 0x5c(r1)
/* 80366C58 00363B98 91 01 00 60 */ stw r8, 0x60(r1)
/* 80366C5C 00363B9C 90 E1 00 64 */ stw r7, 0x64(r1)
/* 80366C60 00363BA0 90 01 00 68 */ stw r0, 0x68(r1)
/* 80366C64 00363BA4 48 00 10 B9 */ bl func_80367D1C
/* 80366C68 00363BA8 7C 74 1B 79 */ or. r20, r3, r3
/* 80366C6C 00363BAC 41 82 03 8C */ beq lbl_80366FF8
/* 80366C70 00363BB0 48 00 00 3C */ b lbl_80366CAC
lbl_80366C74:
/* 80366C74 00363BB4 81 01 00 6C */ lwz r8, 0x6c(r1)
/* 80366C78 00363BB8 7F 83 E3 78 */ mr r3, r28
/* 80366C7C 00363BBC 80 E1 00 70 */ lwz r7, 0x70(r1)
/* 80366C80 00363BC0 7F 04 C3 78 */ mr r4, r24
/* 80366C84 00363BC4 80 C1 00 74 */ lwz r6, 0x74(r1)
/* 80366C88 00363BC8 38 A1 00 4C */ addi r5, r1, 0x4c
/* 80366C8C 00363BCC 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366C90 00363BD0 91 01 00 4C */ stw r8, 0x4c(r1)
/* 80366C94 00363BD4 90 E1 00 50 */ stw r7, 0x50(r1)
/* 80366C98 00363BD8 90 C1 00 54 */ stw r6, 0x54(r1)
/* 80366C9C 00363BDC 90 01 00 58 */ stw r0, 0x58(r1)
/* 80366CA0 00363BE0 48 00 13 91 */ bl func_80368030
/* 80366CA4 00363BE4 7C 74 1B 79 */ or. r20, r3, r3
/* 80366CA8 00363BE8 41 82 03 50 */ beq lbl_80366FF8
lbl_80366CAC:
/* 80366CAC 00363BEC 7F 34 A8 50 */ subf r25, r20, r21
/* 80366CB0 00363BF0 48 00 03 88 */ b lbl_80367038
lbl_80366CB4:
/* 80366CB4 00363BF4 88 01 00 70 */ lbz r0, 0x70(r1)
/* 80366CB8 00363BF8 28 00 00 03 */ cmplwi r0, 3
/* 80366CBC 00363BFC 40 82 00 18 */ bne lbl_80366CD4
/* 80366CC0 00363C00 7F A3 EB 78 */ mr r3, r29
/* 80366CC4 00363C04 38 80 00 01 */ li r4, 1
/* 80366CC8 00363C08 4B FF AE 4D */ bl func_80361B14
/* 80366CCC 00363C0C 83 83 00 00 */ lwz r28, 0(r3)
/* 80366CD0 00363C10 48 00 00 34 */ b lbl_80366D04
lbl_80366CD4:
/* 80366CD4 00363C14 28 00 00 04 */ cmplwi r0, 4
/* 80366CD8 00363C18 40 82 00 1C */ bne lbl_80366CF4
/* 80366CDC 00363C1C 7F A3 EB 78 */ mr r3, r29
/* 80366CE0 00363C20 38 80 00 02 */ li r4, 2
/* 80366CE4 00363C24 4B FF AE 31 */ bl func_80361B14
/* 80366CE8 00363C28 82 C3 00 00 */ lwz r22, 0(r3)
/* 80366CEC 00363C2C 82 E3 00 04 */ lwz r23, 4(r3)
/* 80366CF0 00363C30 48 00 00 14 */ b lbl_80366D04
lbl_80366CF4:
/* 80366CF4 00363C34 7F A3 EB 78 */ mr r3, r29
/* 80366CF8 00363C38 38 80 00 01 */ li r4, 1
/* 80366CFC 00363C3C 4B FF AE 19 */ bl func_80361B14
/* 80366D00 00363C40 83 83 00 00 */ lwz r28, 0(r3)
lbl_80366D04:
/* 80366D04 00363C44 88 61 00 70 */ lbz r3, 0x70(r1)
/* 80366D08 00363C48 28 03 00 02 */ cmplwi r3, 2
/* 80366D0C 00363C4C 40 82 00 0C */ bne lbl_80366D18
/* 80366D10 00363C50 57 80 04 3E */ clrlwi r0, r28, 0x10
/* 80366D14 00363C54 7C 1C 03 78 */ mr r28, r0
lbl_80366D18:
/* 80366D18 00363C58 28 03 00 01 */ cmplwi r3, 1
/* 80366D1C 00363C5C 40 82 00 0C */ bne lbl_80366D28
/* 80366D20 00363C60 57 80 06 3E */ clrlwi r0, r28, 0x18
/* 80366D24 00363C64 7C 1C 03 78 */ mr r28, r0
lbl_80366D28:
/* 80366D28 00363C68 28 03 00 04 */ cmplwi r3, 4
/* 80366D2C 00363C6C 40 82 00 44 */ bne lbl_80366D70
/* 80366D30 00363C70 81 21 00 6C */ lwz r9, 0x6c(r1)
/* 80366D34 00363C74 7E E4 BB 78 */ mr r4, r23
/* 80366D38 00363C78 81 01 00 70 */ lwz r8, 0x70(r1)
/* 80366D3C 00363C7C 7E C3 B3 78 */ mr r3, r22
/* 80366D40 00363C80 80 E1 00 74 */ lwz r7, 0x74(r1)
/* 80366D44 00363C84 7F 05 C3 78 */ mr r5, r24
/* 80366D48 00363C88 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366D4C 00363C8C 38 C1 00 3C */ addi r6, r1, 0x3c
/* 80366D50 00363C90 91 21 00 3C */ stw r9, 0x3c(r1)
/* 80366D54 00363C94 91 01 00 40 */ stw r8, 0x40(r1)
/* 80366D58 00363C98 90 E1 00 44 */ stw r7, 0x44(r1)
/* 80366D5C 00363C9C 90 01 00 48 */ stw r0, 0x48(r1)
/* 80366D60 00363CA0 48 00 0F BD */ bl func_80367D1C
/* 80366D64 00363CA4 7C 74 1B 79 */ or. r20, r3, r3
/* 80366D68 00363CA8 41 82 02 90 */ beq lbl_80366FF8
/* 80366D6C 00363CAC 48 00 00 3C */ b lbl_80366DA8
lbl_80366D70:
/* 80366D70 00363CB0 81 01 00 6C */ lwz r8, 0x6c(r1)
/* 80366D74 00363CB4 7F 83 E3 78 */ mr r3, r28
/* 80366D78 00363CB8 80 E1 00 70 */ lwz r7, 0x70(r1)
/* 80366D7C 00363CBC 7F 04 C3 78 */ mr r4, r24
/* 80366D80 00363CC0 80 C1 00 74 */ lwz r6, 0x74(r1)
/* 80366D84 00363CC4 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80366D88 00363CC8 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366D8C 00363CCC 91 01 00 2C */ stw r8, 0x2c(r1)
/* 80366D90 00363CD0 90 E1 00 30 */ stw r7, 0x30(r1)
/* 80366D94 00363CD4 90 C1 00 34 */ stw r6, 0x34(r1)
/* 80366D98 00363CD8 90 01 00 38 */ stw r0, 0x38(r1)
/* 80366D9C 00363CDC 48 00 12 95 */ bl func_80368030
/* 80366DA0 00363CE0 7C 74 1B 79 */ or. r20, r3, r3
/* 80366DA4 00363CE4 41 82 02 54 */ beq lbl_80366FF8
lbl_80366DA8:
/* 80366DA8 00363CE8 7F 34 A8 50 */ subf r25, r20, r21
/* 80366DAC 00363CEC 48 00 02 8C */ b lbl_80367038
lbl_80366DB0:
/* 80366DB0 00363CF0 88 01 00 70 */ lbz r0, 0x70(r1)
/* 80366DB4 00363CF4 28 00 00 05 */ cmplwi r0, 5
/* 80366DB8 00363CF8 40 82 00 18 */ bne lbl_80366DD0
/* 80366DBC 00363CFC 7F A3 EB 78 */ mr r3, r29
/* 80366DC0 00363D00 38 80 00 03 */ li r4, 3
/* 80366DC4 00363D04 4B FF AD 51 */ bl func_80361B14
/* 80366DC8 00363D08 C8 23 00 00 */ lfd f1, 0(r3)
/* 80366DCC 00363D0C 48 00 00 14 */ b lbl_80366DE0
lbl_80366DD0:
/* 80366DD0 00363D10 7F A3 EB 78 */ mr r3, r29
/* 80366DD4 00363D14 38 80 00 03 */ li r4, 3
/* 80366DD8 00363D18 4B FF AD 3D */ bl func_80361B14
/* 80366DDC 00363D1C C8 23 00 00 */ lfd f1, 0(r3)
lbl_80366DE0:
/* 80366DE0 00363D20 80 E1 00 6C */ lwz r7, 0x6c(r1)
/* 80366DE4 00363D24 7F 03 C3 78 */ mr r3, r24
/* 80366DE8 00363D28 80 C1 00 70 */ lwz r6, 0x70(r1)
/* 80366DEC 00363D2C 38 81 00 1C */ addi r4, r1, 0x1c
/* 80366DF0 00363D30 80 A1 00 74 */ lwz r5, 0x74(r1)
/* 80366DF4 00363D34 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366DF8 00363D38 90 E1 00 1C */ stw r7, 0x1c(r1)
/* 80366DFC 00363D3C 90 C1 00 20 */ stw r6, 0x20(r1)
/* 80366E00 00363D40 90 A1 00 24 */ stw r5, 0x24(r1)
/* 80366E04 00363D44 90 01 00 28 */ stw r0, 0x28(r1)
/* 80366E08 00363D48 48 00 03 95 */ bl func_8036719C
/* 80366E0C 00363D4C 7C 74 1B 79 */ or. r20, r3, r3
/* 80366E10 00363D50 41 82 01 E8 */ beq lbl_80366FF8
/* 80366E14 00363D54 7F 34 A8 50 */ subf r25, r20, r21
/* 80366E18 00363D58 48 00 02 20 */ b lbl_80367038
lbl_80366E1C:
/* 80366E1C 00363D5C 88 01 00 70 */ lbz r0, 0x70(r1)
/* 80366E20 00363D60 28 00 00 05 */ cmplwi r0, 5
/* 80366E24 00363D64 40 82 00 18 */ bne lbl_80366E3C
/* 80366E28 00363D68 7F A3 EB 78 */ mr r3, r29
/* 80366E2C 00363D6C 38 80 00 03 */ li r4, 3
/* 80366E30 00363D70 4B FF AC E5 */ bl func_80361B14
/* 80366E34 00363D74 C8 23 00 00 */ lfd f1, 0(r3)
/* 80366E38 00363D78 48 00 00 14 */ b lbl_80366E4C
lbl_80366E3C:
/* 80366E3C 00363D7C 7F A3 EB 78 */ mr r3, r29
/* 80366E40 00363D80 38 80 00 03 */ li r4, 3
/* 80366E44 00363D84 4B FF AC D1 */ bl func_80361B14
/* 80366E48 00363D88 C8 23 00 00 */ lfd f1, 0(r3)
lbl_80366E4C:
/* 80366E4C 00363D8C 80 E1 00 6C */ lwz r7, 0x6c(r1)
/* 80366E50 00363D90 7F 03 C3 78 */ mr r3, r24
/* 80366E54 00363D94 80 C1 00 70 */ lwz r6, 0x70(r1)
/* 80366E58 00363D98 38 81 00 0C */ addi r4, r1, 0xc
/* 80366E5C 00363D9C 80 A1 00 74 */ lwz r5, 0x74(r1)
/* 80366E60 00363DA0 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366E64 00363DA4 90 E1 00 0C */ stw r7, 0xc(r1)
/* 80366E68 00363DA8 90 C1 00 10 */ stw r6, 0x10(r1)
/* 80366E6C 00363DAC 90 A1 00 14 */ stw r5, 0x14(r1)
/* 80366E70 00363DB0 90 01 00 18 */ stw r0, 0x18(r1)
/* 80366E74 00363DB4 48 00 0B 71 */ bl func_803679E4
/* 80366E78 00363DB8 7C 74 1B 79 */ or. r20, r3, r3
/* 80366E7C 00363DBC 41 82 01 7C */ beq lbl_80366FF8
/* 80366E80 00363DC0 7F 34 A8 50 */ subf r25, r20, r21
/* 80366E84 00363DC4 48 00 01 B4 */ b lbl_80367038
lbl_80366E88:
/* 80366E88 00363DC8 88 01 00 70 */ lbz r0, 0x70(r1)
/* 80366E8C 00363DCC 28 00 00 06 */ cmplwi r0, 6
/* 80366E90 00363DD0 40 82 00 3C */ bne lbl_80366ECC
/* 80366E94 00363DD4 7F A3 EB 78 */ mr r3, r29
/* 80366E98 00363DD8 38 80 00 01 */ li r4, 1
/* 80366E9C 00363DDC 4B FF AC 79 */ bl func_80361B14
/* 80366EA0 00363DE0 80 83 00 00 */ lwz r4, 0(r3)
/* 80366EA4 00363DE4 28 04 00 00 */ cmplwi r4, 0
/* 80366EA8 00363DE8 40 82 00 08 */ bne lbl_80366EB0
/* 80366EAC 00363DEC 38 8D 85 58 */ addi r4, r13, lbl_80450AD8-_SDA_BASE_
lbl_80366EB0:
/* 80366EB0 00363DF0 38 61 00 7C */ addi r3, r1, 0x7c
/* 80366EB4 00363DF4 38 A0 02 00 */ li r5, 0x200
/* 80366EB8 00363DF8 4B FF F0 BD */ bl func_80365F74
/* 80366EBC 00363DFC 2C 03 00 00 */ cmpwi r3, 0
/* 80366EC0 00363E00 41 80 01 38 */ blt lbl_80366FF8
/* 80366EC4 00363E04 3A 81 00 7C */ addi r20, r1, 0x7c
/* 80366EC8 00363E08 48 00 00 14 */ b lbl_80366EDC
lbl_80366ECC:
/* 80366ECC 00363E0C 7F A3 EB 78 */ mr r3, r29
/* 80366ED0 00363E10 38 80 00 01 */ li r4, 1
/* 80366ED4 00363E14 4B FF AC 41 */ bl func_80361B14
/* 80366ED8 00363E18 82 83 00 00 */ lwz r20, 0(r3)
lbl_80366EDC:
/* 80366EDC 00363E1C 28 14 00 00 */ cmplwi r20, 0
/* 80366EE0 00363E20 40 82 00 0C */ bne lbl_80366EEC
/* 80366EE4 00363E24 3C 60 80 3A */ lis r3, lbl_803A2318@ha
/* 80366EE8 00363E28 3A 83 23 18 */ addi r20, r3, lbl_803A2318@l
lbl_80366EEC:
/* 80366EEC 00363E2C 88 01 00 6F */ lbz r0, 0x6f(r1)
/* 80366EF0 00363E30 28 00 00 00 */ cmplwi r0, 0
/* 80366EF4 00363E34 41 82 00 2C */ beq lbl_80366F20
/* 80366EF8 00363E38 88 01 00 6E */ lbz r0, 0x6e(r1)
/* 80366EFC 00363E3C 8B 34 00 00 */ lbz r25, 0(r20)
/* 80366F00 00363E40 3A 94 00 01 */ addi r20, r20, 1
/* 80366F04 00363E44 28 00 00 00 */ cmplwi r0, 0
/* 80366F08 00363E48 41 82 01 30 */ beq lbl_80367038
/* 80366F0C 00363E4C 80 01 00 78 */ lwz r0, 0x78(r1)
/* 80366F10 00363E50 7C 19 00 00 */ cmpw r25, r0
/* 80366F14 00363E54 40 81 01 24 */ ble lbl_80367038
/* 80366F18 00363E58 7C 19 03 78 */ mr r25, r0
/* 80366F1C 00363E5C 48 00 01 1C */ b lbl_80367038
lbl_80366F20:
/* 80366F20 00363E60 88 01 00 6E */ lbz r0, 0x6e(r1)
/* 80366F24 00363E64 28 00 00 00 */ cmplwi r0, 0
/* 80366F28 00363E68 41 82 00 28 */ beq lbl_80366F50
/* 80366F2C 00363E6C 83 21 00 78 */ lwz r25, 0x78(r1)
/* 80366F30 00363E70 7E 83 A3 78 */ mr r3, r20
/* 80366F34 00363E74 38 80 00 00 */ li r4, 0
/* 80366F38 00363E78 7F 25 CB 78 */ mr r5, r25
/* 80366F3C 00363E7C 4B FF F1 C9 */ bl func_80366104
/* 80366F40 00363E80 28 03 00 00 */ cmplwi r3, 0
/* 80366F44 00363E84 41 82 00 F4 */ beq lbl_80367038
/* 80366F48 00363E88 7F 34 18 50 */ subf r25, r20, r3
/* 80366F4C 00363E8C 48 00 00 EC */ b lbl_80367038
lbl_80366F50:
/* 80366F50 00363E90 7E 83 A3 78 */ mr r3, r20
/* 80366F54 00363E94 48 00 1C 91 */ bl func_80368BE4
/* 80366F58 00363E98 7C 79 1B 78 */ mr r25, r3
/* 80366F5C 00363E9C 48 00 00 DC */ b lbl_80367038
lbl_80366F60:
/* 80366F60 00363EA0 7F A3 EB 78 */ mr r3, r29
/* 80366F64 00363EA4 38 80 00 01 */ li r4, 1
/* 80366F68 00363EA8 4B FF AB AD */ bl func_80361B14
/* 80366F6C 00363EAC 88 01 00 70 */ lbz r0, 0x70(r1)
/* 80366F70 00363EB0 80 63 00 00 */ lwz r3, 0(r3)
/* 80366F74 00363EB4 2C 00 00 02 */ cmpwi r0, 2
/* 80366F78 00363EB8 41 82 00 2C */ beq lbl_80366FA4
/* 80366F7C 00363EBC 40 80 00 10 */ bge lbl_80366F8C
/* 80366F80 00363EC0 2C 00 00 00 */ cmpwi r0, 0
/* 80366F84 00363EC4 41 82 00 18 */ beq lbl_80366F9C
/* 80366F88 00363EC8 48 00 01 F0 */ b lbl_80367178
lbl_80366F8C:
/* 80366F8C 00363ECC 2C 00 00 04 */ cmpwi r0, 4
/* 80366F90 00363ED0 41 82 00 24 */ beq lbl_80366FB4
/* 80366F94 00363ED4 40 80 01 E4 */ bge lbl_80367178
/* 80366F98 00363ED8 48 00 00 14 */ b lbl_80366FAC
lbl_80366F9C:
/* 80366F9C 00363EDC 93 63 00 00 */ stw r27, 0(r3)
/* 80366FA0 00363EE0 48 00 01 D8 */ b lbl_80367178
lbl_80366FA4:
/* 80366FA4 00363EE4 B3 63 00 00 */ sth r27, 0(r3)
/* 80366FA8 00363EE8 48 00 01 D0 */ b lbl_80367178
lbl_80366FAC:
/* 80366FAC 00363EEC 93 63 00 00 */ stw r27, 0(r3)
/* 80366FB0 00363EF0 48 00 01 C8 */ b lbl_80367178
lbl_80366FB4:
/* 80366FB4 00363EF4 93 63 00 04 */ stw r27, 4(r3)
/* 80366FB8 00363EF8 7F 60 FE 70 */ srawi r0, r27, 0x1f
/* 80366FBC 00363EFC 90 03 00 00 */ stw r0, 0(r3)
/* 80366FC0 00363F00 48 00 01 B8 */ b lbl_80367178
lbl_80366FC4:
/* 80366FC4 00363F04 7F A3 EB 78 */ mr r3, r29
/* 80366FC8 00363F08 3A 81 00 7C */ addi r20, r1, 0x7c
/* 80366FCC 00363F0C 38 80 00 01 */ li r4, 1
/* 80366FD0 00363F10 4B FF AB 45 */ bl func_80361B14
/* 80366FD4 00363F14 80 03 00 00 */ lwz r0, 0(r3)
/* 80366FD8 00363F18 3B 20 00 01 */ li r25, 1
/* 80366FDC 00363F1C 98 01 00 7C */ stb r0, 0x7c(r1)
/* 80366FE0 00363F20 48 00 00 58 */ b lbl_80367038
lbl_80366FE4:
/* 80366FE4 00363F24 38 00 00 25 */ li r0, 0x25
/* 80366FE8 00363F28 3A 81 00 7C */ addi r20, r1, 0x7c
/* 80366FEC 00363F2C 98 01 00 7C */ stb r0, 0x7c(r1)
/* 80366FF0 00363F30 3B 20 00 01 */ li r25, 1
/* 80366FF4 00363F34 48 00 00 44 */ b lbl_80367038
lbl_80366FF8:
/* 80366FF8 00363F38 7F 23 CB 78 */ mr r3, r25
/* 80366FFC 00363F3C 48 00 1B E9 */ bl func_80368BE4
/* 80367000 00363F40 7C 65 1B 79 */ or. r5, r3, r3
/* 80367004 00363F44 7F 7B 2A 14 */ add r27, r27, r5
/* 80367008 00363F48 41 82 00 28 */ beq lbl_80367030
/* 8036700C 00363F4C 7F EC FB 78 */ mr r12, r31
/* 80367010 00363F50 7F C3 F3 78 */ mr r3, r30
/* 80367014 00363F54 7F 24 CB 78 */ mr r4, r25
/* 80367018 00363F58 7D 89 03 A6 */ mtctr r12
/* 8036701C 00363F5C 4E 80 04 21 */ bctrl
/* 80367020 00363F60 28 03 00 00 */ cmplwi r3, 0
/* 80367024 00363F64 40 82 00 0C */ bne lbl_80367030
/* 80367028 00363F68 38 60 FF FF */ li r3, -1
/* 8036702C 00363F6C 48 00 01 5C */ b lbl_80367188
lbl_80367030:
/* 80367030 00363F70 7F 63 DB 78 */ mr r3, r27
/* 80367034 00363F74 48 00 01 54 */ b lbl_80367188
lbl_80367038:
/* 80367038 00363F78 88 01 00 6C */ lbz r0, 0x6c(r1)
/* 8036703C 00363F7C 7F 33 CB 78 */ mr r19, r25
/* 80367040 00363F80 28 00 00 00 */ cmplwi r0, 0
/* 80367044 00363F84 41 82 00 B0 */ beq lbl_803670F4
/* 80367048 00363F88 28 00 00 02 */ cmplwi r0, 2
/* 8036704C 00363F8C 38 00 00 20 */ li r0, 0x20
/* 80367050 00363F90 40 82 00 08 */ bne lbl_80367058
/* 80367054 00363F94 38 00 00 30 */ li r0, 0x30
lbl_80367058:
/* 80367058 00363F98 98 01 00 09 */ stb r0, 9(r1)
/* 8036705C 00363F9C 88 14 00 00 */ lbz r0, 0(r20)
/* 80367060 00363FA0 7C 00 07 74 */ extsb r0, r0
/* 80367064 00363FA4 2C 00 00 2B */ cmpwi r0, 0x2b
/* 80367068 00363FA8 41 82 00 14 */ beq lbl_8036707C
/* 8036706C 00363FAC 2C 00 00 2D */ cmpwi r0, 0x2d
/* 80367070 00363FB0 41 82 00 0C */ beq lbl_8036707C
/* 80367074 00363FB4 2C 00 00 20 */ cmpwi r0, 0x20
/* 80367078 00363FB8 40 82 00 70 */ bne lbl_803670E8
lbl_8036707C:
/* 8036707C 00363FBC 88 01 00 09 */ lbz r0, 9(r1)
/* 80367080 00363FC0 2C 00 00 30 */ cmpwi r0, 0x30
/* 80367084 00363FC4 40 82 00 64 */ bne lbl_803670E8
/* 80367088 00363FC8 7F EC FB 78 */ mr r12, r31
/* 8036708C 00363FCC 7F C3 F3 78 */ mr r3, r30
/* 80367090 00363FD0 7E 84 A3 78 */ mr r4, r20
/* 80367094 00363FD4 38 A0 00 01 */ li r5, 1
/* 80367098 00363FD8 7D 89 03 A6 */ mtctr r12
/* 8036709C 00363FDC 4E 80 04 21 */ bctrl
/* 803670A0 00363FE0 28 03 00 00 */ cmplwi r3, 0
/* 803670A4 00363FE4 40 82 00 0C */ bne lbl_803670B0
/* 803670A8 00363FE8 38 60 FF FF */ li r3, -1
/* 803670AC 00363FEC 48 00 00 DC */ b lbl_80367188
lbl_803670B0:
/* 803670B0 00363FF0 3A 94 00 01 */ addi r20, r20, 1
/* 803670B4 00363FF4 3B 39 FF FF */ addi r25, r25, -1
/* 803670B8 00363FF8 48 00 00 30 */ b lbl_803670E8
lbl_803670BC:
/* 803670BC 00363FFC 7F EC FB 78 */ mr r12, r31
/* 803670C0 00364000 7F C3 F3 78 */ mr r3, r30
/* 803670C4 00364004 38 81 00 09 */ addi r4, r1, 9
/* 803670C8 00364008 38 A0 00 01 */ li r5, 1
/* 803670CC 0036400C 7D 89 03 A6 */ mtctr r12
/* 803670D0 00364010 4E 80 04 21 */ bctrl
/* 803670D4 00364014 28 03 00 00 */ cmplwi r3, 0
/* 803670D8 00364018 40 82 00 0C */ bne lbl_803670E4
/* 803670DC 0036401C 38 60 FF FF */ li r3, -1
/* 803670E0 00364020 48 00 00 A8 */ b lbl_80367188
lbl_803670E4:
/* 803670E4 00364024 3A 73 00 01 */ addi r19, r19, 1
lbl_803670E8:
/* 803670E8 00364028 80 01 00 74 */ lwz r0, 0x74(r1)
/* 803670EC 0036402C 7C 13 00 00 */ cmpw r19, r0
/* 803670F0 00364030 41 80 FF CC */ blt lbl_803670BC
lbl_803670F4:
/* 803670F4 00364034 2C 19 00 00 */ cmpwi r25, 0
/* 803670F8 00364038 41 82 00 2C */ beq lbl_80367124
/* 803670FC 0036403C 7F EC FB 78 */ mr r12, r31
/* 80367100 00364040 7F C3 F3 78 */ mr r3, r30
/* 80367104 00364044 7E 84 A3 78 */ mr r4, r20
/* 80367108 00364048 7F 25 CB 78 */ mr r5, r25
/* 8036710C 0036404C 7D 89 03 A6 */ mtctr r12
/* 80367110 00364050 4E 80 04 21 */ bctrl
/* 80367114 00364054 28 03 00 00 */ cmplwi r3, 0
/* 80367118 00364058 40 82 00 0C */ bne lbl_80367124
/* 8036711C 0036405C 38 60 FF FF */ li r3, -1
/* 80367120 00364060 48 00 00 68 */ b lbl_80367188
lbl_80367124:
/* 80367124 00364064 88 01 00 6C */ lbz r0, 0x6c(r1)
/* 80367128 00364068 28 00 00 00 */ cmplwi r0, 0
/* 8036712C 0036406C 40 82 00 48 */ bne lbl_80367174
/* 80367130 00364070 3A 80 00 20 */ li r20, 0x20
/* 80367134 00364074 48 00 00 34 */ b lbl_80367168
lbl_80367138:
/* 80367138 00364078 7F EC FB 78 */ mr r12, r31
/* 8036713C 0036407C 7F C3 F3 78 */ mr r3, r30
/* 80367140 00364080 9A 81 00 08 */ stb r20, 8(r1)
/* 80367144 00364084 38 81 00 08 */ addi r4, r1, 8
/* 80367148 00364088 38 A0 00 01 */ li r5, 1
/* 8036714C 0036408C 7D 89 03 A6 */ mtctr r12
/* 80367150 00364090 4E 80 04 21 */ bctrl
/* 80367154 00364094 28 03 00 00 */ cmplwi r3, 0
/* 80367158 00364098 40 82 00 0C */ bne lbl_80367164
/* 8036715C 0036409C 38 60 FF FF */ li r3, -1
/* 80367160 003640A0 48 00 00 28 */ b lbl_80367188
lbl_80367164:
/* 80367164 003640A4 3A 73 00 01 */ addi r19, r19, 1
lbl_80367168:
/* 80367168 003640A8 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8036716C 003640AC 7C 13 00 00 */ cmpw r19, r0
/* 80367170 003640B0 41 80 FF C8 */ blt lbl_80367138
lbl_80367174:
/* 80367174 003640B4 7F 7B 9A 14 */ add r27, r27, r19
lbl_80367178:
/* 80367178 003640B8 88 1A 00 00 */ lbz r0, 0(r26)
/* 8036717C 003640BC 7C 00 07 75 */ extsb. r0, r0
/* 80367180 003640C0 40 82 F8 E0 */ bne lbl_80366A60
lbl_80367184:
/* 80367184 003640C4 7F 63 DB 78 */ mr r3, r27
lbl_80367188:
/* 80367188 003640C8 BA 61 02 8C */ lmw r19, 0x28c(r1)
/* 8036718C 003640CC 80 01 02 C4 */ lwz r0, 0x2c4(r1)
/* 80367190 003640D0 7C 08 03 A6 */ mtlr r0
/* 80367194 003640D4 38 21 02 C0 */ addi r1, r1, 0x2c0
/* 80367198 003640D8 4E 80 00 20 */ blr
.global func_8036719C
func_8036719C:
/* 8036719C 003640DC 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 803671A0 003640E0 7C 08 02 A6 */ mflr r0
/* 803671A4 003640E4 90 01 00 54 */ stw r0, 0x54(r1)
/* 803671A8 003640E8 80 04 00 0C */ lwz r0, 0xc(r4)
/* 803671AC 003640EC DB E1 00 48 */ stfd f31, 0x48(r1)
/* 803671B0 003640F0 FF E0 08 90 */ fmr f31, f1
/* 803671B4 003640F4 2C 00 01 FD */ cmpwi r0, 0x1fd
/* 803671B8 003640F8 93 E1 00 44 */ stw r31, 0x44(r1)
/* 803671BC 003640FC 93 C1 00 40 */ stw r30, 0x40(r1)
/* 803671C0 00364100 93 A1 00 3C */ stw r29, 0x3c(r1)
/* 803671C4 00364104 7C 9D 23 78 */ mr r29, r4
/* 803671C8 00364108 93 81 00 38 */ stw r28, 0x38(r1)
/* 803671CC 0036410C 7C 7C 1B 78 */ mr r28, r3
/* 803671D0 00364110 40 81 00 0C */ ble lbl_803671DC
/* 803671D4 00364114 38 60 00 00 */ li r3, 0
/* 803671D8 00364118 48 00 06 BC */ b lbl_80367894
lbl_803671DC:
/* 803671DC 0036411C 38 60 00 00 */ li r3, 0
/* 803671E0 00364120 38 00 00 20 */ li r0, 0x20
/* 803671E4 00364124 98 61 00 08 */ stb r3, 8(r1)
/* 803671E8 00364128 38 61 00 08 */ addi r3, r1, 8
/* 803671EC 0036412C 38 81 00 0C */ addi r4, r1, 0xc
/* 803671F0 00364130 B0 01 00 0A */ sth r0, 0xa(r1)
/* 803671F4 00364134 4B FF BF 31 */ bl func_80363124
/* 803671F8 00364138 88 01 00 10 */ lbz r0, 0x10(r1)
/* 803671FC 0036413C 3B E1 00 11 */ addi r31, r1, 0x11
/* 80367200 00364140 7C BF 02 14 */ add r5, r31, r0
/* 80367204 00364144 48 00 00 1C */ b lbl_80367220
lbl_80367208:
/* 80367208 00364148 88 81 00 10 */ lbz r4, 0x10(r1)
/* 8036720C 0036414C A8 61 00 0E */ lha r3, 0xe(r1)
/* 80367210 00364150 38 84 FF FF */ addi r4, r4, -1
/* 80367214 00364154 38 03 00 01 */ addi r0, r3, 1
/* 80367218 00364158 98 81 00 10 */ stb r4, 0x10(r1)
/* 8036721C 0036415C B0 01 00 0E */ sth r0, 0xe(r1)
lbl_80367220:
/* 80367220 00364160 88 01 00 10 */ lbz r0, 0x10(r1)
/* 80367224 00364164 28 00 00 01 */ cmplwi r0, 1
/* 80367228 00364168 40 81 00 10 */ ble lbl_80367238
/* 8036722C 0036416C 8C 05 FF FF */ lbzu r0, -1(r5)
/* 80367230 00364170 2C 00 00 30 */ cmpwi r0, 0x30
/* 80367234 00364174 41 82 FF D4 */ beq lbl_80367208
lbl_80367238:
/* 80367238 00364178 88 01 00 11 */ lbz r0, 0x11(r1)
/* 8036723C 0036417C 2C 00 00 49 */ cmpwi r0, 0x49
/* 80367240 00364180 41 82 00 2C */ beq lbl_8036726C
/* 80367244 00364184 40 80 00 10 */ bge lbl_80367254
/* 80367248 00364188 2C 00 00 30 */ cmpwi r0, 0x30
/* 8036724C 0036418C 41 82 00 14 */ beq lbl_80367260
/* 80367250 00364190 48 00 01 6C */ b lbl_803673BC
lbl_80367254:
/* 80367254 00364194 2C 00 00 4E */ cmpwi r0, 0x4e
/* 80367258 00364198 41 82 00 BC */ beq lbl_80367314
/* 8036725C 0036419C 48 00 01 60 */ b lbl_803673BC
lbl_80367260:
/* 80367260 003641A0 38 00 00 00 */ li r0, 0
/* 80367264 003641A4 B0 01 00 0E */ sth r0, 0xe(r1)
/* 80367268 003641A8 48 00 01 54 */ b lbl_803673BC
lbl_8036726C:
/* 8036726C 003641AC C8 02 CC 70 */ lfd f0, lbl_80456670-_SDA2_BASE_(r2)
/* 80367270 003641B0 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 80367274 003641B4 40 80 00 50 */ bge lbl_803672C4
/* 80367278 003641B8 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 8036727C 003641BC 88 1D 00 05 */ lbz r0, 5(r29)
/* 80367280 003641C0 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 80367284 003641C4 3B 9C FF FB */ addi r28, r28, -5
/* 80367288 003641C8 7C 03 00 AE */ lbzx r0, r3, r0
/* 8036728C 003641CC 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 80367290 003641D0 41 82 00 1C */ beq lbl_803672AC
/* 80367294 003641D4 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367298 003641D8 7F 83 E3 78 */ mr r3, r28
/* 8036729C 003641DC 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 803672A0 003641E0 38 84 00 01 */ addi r4, r4, 1
/* 803672A4 003641E4 48 00 18 89 */ bl strcpy
/* 803672A8 003641E8 48 00 00 64 */ b lbl_8036730C
lbl_803672AC:
/* 803672AC 003641EC 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 803672B0 003641F0 7F 83 E3 78 */ mr r3, r28
/* 803672B4 003641F4 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 803672B8 003641F8 38 84 00 06 */ addi r4, r4, 6
/* 803672BC 003641FC 48 00 18 71 */ bl strcpy
/* 803672C0 00364200 48 00 00 4C */ b lbl_8036730C
lbl_803672C4:
/* 803672C4 00364204 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 803672C8 00364208 88 1D 00 05 */ lbz r0, 5(r29)
/* 803672CC 0036420C 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 803672D0 00364210 3B 9C FF FC */ addi r28, r28, -4
/* 803672D4 00364214 7C 03 00 AE */ lbzx r0, r3, r0
/* 803672D8 00364218 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 803672DC 0036421C 41 82 00 1C */ beq lbl_803672F8
/* 803672E0 00364220 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 803672E4 00364224 7F 83 E3 78 */ mr r3, r28
/* 803672E8 00364228 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 803672EC 0036422C 38 84 00 0B */ addi r4, r4, 0xb
/* 803672F0 00364230 48 00 18 3D */ bl strcpy
/* 803672F4 00364234 48 00 00 18 */ b lbl_8036730C
lbl_803672F8:
/* 803672F8 00364238 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 803672FC 0036423C 7F 83 E3 78 */ mr r3, r28
/* 80367300 00364240 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367304 00364244 38 84 00 0F */ addi r4, r4, 0xf
/* 80367308 00364248 48 00 18 25 */ bl strcpy
lbl_8036730C:
/* 8036730C 0036424C 7F 83 E3 78 */ mr r3, r28
/* 80367310 00364250 48 00 05 84 */ b lbl_80367894
lbl_80367314:
/* 80367314 00364254 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80367318 00364258 7C 00 07 75 */ extsb. r0, r0
/* 8036731C 0036425C 41 82 00 50 */ beq lbl_8036736C
/* 80367320 00364260 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 80367324 00364264 88 1D 00 05 */ lbz r0, 5(r29)
/* 80367328 00364268 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 8036732C 0036426C 3B 9C FF FB */ addi r28, r28, -5
/* 80367330 00364270 7C 03 00 AE */ lbzx r0, r3, r0
/* 80367334 00364274 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 80367338 00364278 41 82 00 1C */ beq lbl_80367354
/* 8036733C 0036427C 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367340 00364280 7F 83 E3 78 */ mr r3, r28
/* 80367344 00364284 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367348 00364288 38 84 00 13 */ addi r4, r4, 0x13
/* 8036734C 0036428C 48 00 17 E1 */ bl strcpy
/* 80367350 00364290 48 00 00 64 */ b lbl_803673B4
lbl_80367354:
/* 80367354 00364294 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367358 00364298 7F 83 E3 78 */ mr r3, r28
/* 8036735C 0036429C 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367360 003642A0 38 84 00 18 */ addi r4, r4, 0x18
/* 80367364 003642A4 48 00 17 C9 */ bl strcpy
/* 80367368 003642A8 48 00 00 4C */ b lbl_803673B4
lbl_8036736C:
/* 8036736C 003642AC 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 80367370 003642B0 88 1D 00 05 */ lbz r0, 5(r29)
/* 80367374 003642B4 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 80367378 003642B8 3B 9C FF FC */ addi r28, r28, -4
/* 8036737C 003642BC 7C 03 00 AE */ lbzx r0, r3, r0
/* 80367380 003642C0 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 80367384 003642C4 41 82 00 1C */ beq lbl_803673A0
/* 80367388 003642C8 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 8036738C 003642CC 7F 83 E3 78 */ mr r3, r28
/* 80367390 003642D0 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367394 003642D4 38 84 00 1D */ addi r4, r4, 0x1d
/* 80367398 003642D8 48 00 17 95 */ bl strcpy
/* 8036739C 003642DC 48 00 00 18 */ b lbl_803673B4
lbl_803673A0:
/* 803673A0 003642E0 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 803673A4 003642E4 7F 83 E3 78 */ mr r3, r28
/* 803673A8 003642E8 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 803673AC 003642EC 38 84 00 21 */ addi r4, r4, 0x21
/* 803673B0 003642F0 48 00 17 7D */ bl strcpy
lbl_803673B4:
/* 803673B4 003642F4 7F 83 E3 78 */ mr r3, r28
/* 803673B8 003642F8 48 00 04 DC */ b lbl_80367894
lbl_803673BC:
/* 803673BC 003642FC A8 A1 00 0E */ lha r5, 0xe(r1)
/* 803673C0 00364300 38 60 00 00 */ li r3, 0
/* 803673C4 00364304 88 81 00 10 */ lbz r4, 0x10(r1)
/* 803673C8 00364308 3B DC FF FF */ addi r30, r28, -1
/* 803673CC 0036430C 88 1D 00 05 */ lbz r0, 5(r29)
/* 803673D0 00364310 7C 84 2A 14 */ add r4, r4, r5
/* 803673D4 00364314 38 84 FF FF */ addi r4, r4, -1
/* 803673D8 00364318 2C 00 00 65 */ cmpwi r0, 0x65
/* 803673DC 0036431C B0 81 00 0E */ sth r4, 0xe(r1)
/* 803673E0 00364320 98 7C FF FF */ stb r3, -1(r28)
/* 803673E4 00364324 41 82 00 F4 */ beq lbl_803674D8
/* 803673E8 00364328 40 80 00 28 */ bge lbl_80367410
/* 803673EC 0036432C 2C 00 00 46 */ cmpwi r0, 0x46
/* 803673F0 00364330 41 82 02 4C */ beq lbl_8036763C
/* 803673F4 00364334 40 80 00 10 */ bge lbl_80367404
/* 803673F8 00364338 2C 00 00 45 */ cmpwi r0, 0x45
/* 803673FC 0036433C 40 80 00 DC */ bge lbl_803674D8
/* 80367400 00364340 48 00 04 90 */ b lbl_80367890
lbl_80367404:
/* 80367404 00364344 2C 00 00 48 */ cmpwi r0, 0x48
/* 80367408 00364348 40 80 04 88 */ bge lbl_80367890
/* 8036740C 0036434C 48 00 00 14 */ b lbl_80367420
lbl_80367410:
/* 80367410 00364350 2C 00 00 67 */ cmpwi r0, 0x67
/* 80367414 00364354 41 82 00 0C */ beq lbl_80367420
/* 80367418 00364358 40 80 04 78 */ bge lbl_80367890
/* 8036741C 0036435C 48 00 02 20 */ b lbl_8036763C
lbl_80367420:
/* 80367420 00364360 88 01 00 10 */ lbz r0, 0x10(r1)
/* 80367424 00364364 80 9D 00 0C */ lwz r4, 0xc(r29)
/* 80367428 00364368 7C 00 20 00 */ cmpw r0, r4
/* 8036742C 0036436C 40 81 00 0C */ ble lbl_80367438
/* 80367430 00364370 38 61 00 0C */ addi r3, r1, 0xc
/* 80367434 00364374 48 00 04 85 */ bl func_803678B8
lbl_80367438:
/* 80367438 00364378 A8 81 00 0E */ lha r4, 0xe(r1)
/* 8036743C 0036437C 2C 04 FF FC */ cmpwi r4, -4
/* 80367440 00364380 41 80 00 10 */ blt lbl_80367450
/* 80367444 00364384 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80367448 00364388 7C 04 18 00 */ cmpw r4, r3
/* 8036744C 0036438C 41 80 00 50 */ blt lbl_8036749C
lbl_80367450:
/* 80367450 00364390 88 1D 00 03 */ lbz r0, 3(r29)
/* 80367454 00364394 28 00 00 00 */ cmplwi r0, 0
/* 80367458 00364398 41 82 00 14 */ beq lbl_8036746C
/* 8036745C 0036439C 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80367460 003643A0 38 03 FF FF */ addi r0, r3, -1
/* 80367464 003643A4 90 1D 00 0C */ stw r0, 0xc(r29)
/* 80367468 003643A8 48 00 00 10 */ b lbl_80367478
lbl_8036746C:
/* 8036746C 003643AC 88 61 00 10 */ lbz r3, 0x10(r1)
/* 80367470 003643B0 38 03 FF FF */ addi r0, r3, -1
/* 80367474 003643B4 90 1D 00 0C */ stw r0, 0xc(r29)
lbl_80367478:
/* 80367478 003643B8 88 1D 00 05 */ lbz r0, 5(r29)
/* 8036747C 003643BC 28 00 00 67 */ cmplwi r0, 0x67
/* 80367480 003643C0 40 82 00 10 */ bne lbl_80367490
/* 80367484 003643C4 38 00 00 65 */ li r0, 0x65
/* 80367488 003643C8 98 1D 00 05 */ stb r0, 5(r29)
/* 8036748C 003643CC 48 00 00 4C */ b lbl_803674D8
lbl_80367490:
/* 80367490 003643D0 38 00 00 45 */ li r0, 0x45
/* 80367494 003643D4 98 1D 00 05 */ stb r0, 5(r29)
/* 80367498 003643D8 48 00 00 40 */ b lbl_803674D8
lbl_8036749C:
/* 8036749C 003643DC 88 1D 00 03 */ lbz r0, 3(r29)
/* 803674A0 003643E0 28 00 00 00 */ cmplwi r0, 0
/* 803674A4 003643E4 41 82 00 14 */ beq lbl_803674B8
/* 803674A8 003643E8 38 04 00 01 */ addi r0, r4, 1
/* 803674AC 003643EC 7C 00 18 50 */ subf r0, r0, r3
/* 803674B0 003643F0 90 1D 00 0C */ stw r0, 0xc(r29)
/* 803674B4 003643F4 48 00 01 88 */ b lbl_8036763C
lbl_803674B8:
/* 803674B8 003643F8 88 01 00 10 */ lbz r0, 0x10(r1)
/* 803674BC 003643FC 38 64 00 01 */ addi r3, r4, 1
/* 803674C0 00364400 7C 03 00 51 */ subf. r0, r3, r0
/* 803674C4 00364404 90 1D 00 0C */ stw r0, 0xc(r29)
/* 803674C8 00364408 40 80 01 74 */ bge lbl_8036763C
/* 803674CC 0036440C 38 00 00 00 */ li r0, 0
/* 803674D0 00364410 90 1D 00 0C */ stw r0, 0xc(r29)
/* 803674D4 00364414 48 00 01 68 */ b lbl_8036763C
lbl_803674D8:
/* 803674D8 00364418 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 803674DC 0036441C 88 01 00 10 */ lbz r0, 0x10(r1)
/* 803674E0 00364420 38 83 00 01 */ addi r4, r3, 1
/* 803674E4 00364424 7C 00 20 00 */ cmpw r0, r4
/* 803674E8 00364428 40 81 00 0C */ ble lbl_803674F4
/* 803674EC 0036442C 38 61 00 0C */ addi r3, r1, 0xc
/* 803674F0 00364430 48 00 03 C9 */ bl func_803678B8
lbl_803674F4:
/* 803674F4 00364434 A8 C1 00 0E */ lha r6, 0xe(r1)
/* 803674F8 00364438 39 00 00 2B */ li r8, 0x2b
/* 803674FC 0036443C 2C 06 00 00 */ cmpwi r6, 0
/* 80367500 00364440 40 80 00 0C */ bge lbl_8036750C
/* 80367504 00364444 7C C6 00 D0 */ neg r6, r6
/* 80367508 00364448 39 00 00 2D */ li r8, 0x2d
lbl_8036750C:
/* 8036750C 0036444C 3C 60 66 66 */ lis r3, 0x66666667@ha
/* 80367510 00364450 38 E0 00 00 */ li r7, 0
/* 80367514 00364454 38 A3 66 67 */ addi r5, r3, 0x66666667@l
/* 80367518 00364458 48 00 00 38 */ b lbl_80367550
lbl_8036751C:
/* 8036751C 0036445C 7C 05 30 96 */ mulhw r0, r5, r6
/* 80367520 00364460 38 E7 00 01 */ addi r7, r7, 1
/* 80367524 00364464 7C 03 16 70 */ srawi r3, r0, 2
/* 80367528 00364468 54 64 0F FE */ srwi r4, r3, 0x1f
/* 8036752C 0036446C 7C 00 16 70 */ srawi r0, r0, 2
/* 80367530 00364470 7C 63 22 14 */ add r3, r3, r4
/* 80367534 00364474 1C 83 00 0A */ mulli r4, r3, 0xa
/* 80367538 00364478 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8036753C 0036447C 7C 84 30 50 */ subf r4, r4, r6
/* 80367540 00364480 7C C0 1A 14 */ add r6, r0, r3
/* 80367544 00364484 38 04 00 30 */ addi r0, r4, 0x30
/* 80367548 00364488 98 1E FF FF */ stb r0, -1(r30)
/* 8036754C 0036448C 3B DE FF FF */ addi r30, r30, -1
lbl_80367550:
/* 80367550 00364490 2C 06 00 00 */ cmpwi r6, 0
/* 80367554 00364494 40 82 FF C8 */ bne lbl_8036751C
/* 80367558 00364498 2C 07 00 02 */ cmpwi r7, 2
/* 8036755C 0036449C 41 80 FF C0 */ blt lbl_8036751C
/* 80367560 003644A0 88 1D 00 05 */ lbz r0, 5(r29)
/* 80367564 003644A4 99 1E FF FF */ stb r8, -1(r30)
/* 80367568 003644A8 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8036756C 003644AC 9C 1E FF FE */ stbu r0, -2(r30)
/* 80367570 003644B0 7C 1E E0 50 */ subf r0, r30, r28
/* 80367574 003644B4 7C 03 02 14 */ add r0, r3, r0
/* 80367578 003644B8 2C 00 01 FD */ cmpwi r0, 0x1fd
/* 8036757C 003644BC 40 81 00 0C */ ble lbl_80367588
/* 80367580 003644C0 38 60 00 00 */ li r3, 0
/* 80367584 003644C4 48 00 03 10 */ b lbl_80367894
lbl_80367588:
/* 80367588 003644C8 88 81 00 10 */ lbz r4, 0x10(r1)
/* 8036758C 003644CC 38 03 00 01 */ addi r0, r3, 1
/* 80367590 003644D0 7C 04 00 00 */ cmpw r4, r0
/* 80367594 003644D4 40 80 00 20 */ bge lbl_803675B4
/* 80367598 003644D8 38 63 00 02 */ addi r3, r3, 2
/* 8036759C 003644DC 38 00 00 30 */ li r0, 0x30
/* 803675A0 003644E0 7C 64 18 50 */ subf r3, r4, r3
/* 803675A4 003644E4 48 00 00 08 */ b lbl_803675AC
lbl_803675A8:
/* 803675A8 003644E8 9C 1E FF FF */ stbu r0, -1(r30)
lbl_803675AC:
/* 803675AC 003644EC 34 63 FF FF */ addic. r3, r3, -1
/* 803675B0 003644F0 40 82 FF F8 */ bne lbl_803675A8
lbl_803675B4:
/* 803675B4 003644F4 88 61 00 10 */ lbz r3, 0x10(r1)
/* 803675B8 003644F8 7C 9F 1A 14 */ add r4, r31, r3
/* 803675BC 003644FC 48 00 00 0C */ b lbl_803675C8
lbl_803675C0:
/* 803675C0 00364500 8C 04 FF FF */ lbzu r0, -1(r4)
/* 803675C4 00364504 9C 1E FF FF */ stbu r0, -1(r30)
lbl_803675C8:
/* 803675C8 00364508 34 63 FF FF */ addic. r3, r3, -1
/* 803675CC 0036450C 40 82 FF F4 */ bne lbl_803675C0
/* 803675D0 00364510 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803675D4 00364514 2C 00 00 00 */ cmpwi r0, 0
/* 803675D8 00364518 40 82 00 10 */ bne lbl_803675E8
/* 803675DC 0036451C 88 1D 00 03 */ lbz r0, 3(r29)
/* 803675E0 00364520 28 00 00 00 */ cmplwi r0, 0
/* 803675E4 00364524 41 82 00 0C */ beq lbl_803675F0
lbl_803675E8:
/* 803675E8 00364528 38 00 00 2E */ li r0, 0x2e
/* 803675EC 0036452C 9C 1E FF FF */ stbu r0, -1(r30)
lbl_803675F0:
/* 803675F0 00364530 88 01 00 11 */ lbz r0, 0x11(r1)
/* 803675F4 00364534 9C 1E FF FF */ stbu r0, -1(r30)
/* 803675F8 00364538 88 01 00 0C */ lbz r0, 0xc(r1)
/* 803675FC 0036453C 7C 00 07 75 */ extsb. r0, r0
/* 80367600 00364540 41 82 00 10 */ beq lbl_80367610
/* 80367604 00364544 38 00 00 2D */ li r0, 0x2d
/* 80367608 00364548 9C 1E FF FF */ stbu r0, -1(r30)
/* 8036760C 0036454C 48 00 02 84 */ b lbl_80367890
lbl_80367610:
/* 80367610 00364550 88 1D 00 01 */ lbz r0, 1(r29)
/* 80367614 00364554 28 00 00 01 */ cmplwi r0, 1
/* 80367618 00364558 40 82 00 10 */ bne lbl_80367628
/* 8036761C 0036455C 38 00 00 2B */ li r0, 0x2b
/* 80367620 00364560 9C 1E FF FF */ stbu r0, -1(r30)
/* 80367624 00364564 48 00 02 6C */ b lbl_80367890
lbl_80367628:
/* 80367628 00364568 28 00 00 02 */ cmplwi r0, 2
/* 8036762C 0036456C 40 82 02 64 */ bne lbl_80367890
/* 80367630 00364570 38 00 00 20 */ li r0, 0x20
/* 80367634 00364574 9C 1E FF FF */ stbu r0, -1(r30)
/* 80367638 00364578 48 00 02 58 */ b lbl_80367890
lbl_8036763C:
/* 8036763C 0036457C A8 01 00 0E */ lha r0, 0xe(r1)
/* 80367640 00364580 88 81 00 10 */ lbz r4, 0x10(r1)
/* 80367644 00364584 7C 60 20 50 */ subf r3, r0, r4
/* 80367648 00364588 34 E3 FF FF */ addic. r7, r3, -1
/* 8036764C 0036458C 40 80 00 08 */ bge lbl_80367654
/* 80367650 00364590 38 E0 00 00 */ li r7, 0
lbl_80367654:
/* 80367654 00364594 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80367658 00364598 7C 07 00 00 */ cmpw r7, r0
/* 8036765C 0036459C 40 81 00 2C */ ble lbl_80367688
/* 80367660 003645A0 7C 00 38 50 */ subf r0, r0, r7
/* 80367664 003645A4 38 61 00 0C */ addi r3, r1, 0xc
/* 80367668 003645A8 7C 80 20 50 */ subf r4, r0, r4
/* 8036766C 003645AC 48 00 02 4D */ bl func_803678B8
/* 80367670 003645B0 A8 61 00 0E */ lha r3, 0xe(r1)
/* 80367674 003645B4 88 01 00 10 */ lbz r0, 0x10(r1)
/* 80367678 003645B8 7C 63 00 50 */ subf r3, r3, r0
/* 8036767C 003645BC 34 E3 FF FF */ addic. r7, r3, -1
/* 80367680 003645C0 40 80 00 08 */ bge lbl_80367688
/* 80367684 003645C4 38 E0 00 00 */ li r7, 0
lbl_80367688:
/* 80367688 003645C8 A8 61 00 0E */ lha r3, 0xe(r1)
/* 8036768C 003645CC 34 C3 00 01 */ addic. r6, r3, 1
/* 80367690 003645D0 40 80 00 08 */ bge lbl_80367698
/* 80367694 003645D4 38 C0 00 00 */ li r6, 0
lbl_80367698:
/* 80367698 003645D8 7C 06 3A 14 */ add r0, r6, r7
/* 8036769C 003645DC 2C 00 01 FD */ cmpwi r0, 0x1fd
/* 803676A0 003645E0 40 81 00 0C */ ble lbl_803676AC
/* 803676A4 003645E4 38 60 00 00 */ li r3, 0
/* 803676A8 003645E8 48 00 01 EC */ b lbl_80367894
lbl_803676AC:
/* 803676AC 003645EC 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803676B0 003645F0 38 80 00 30 */ li r4, 0x30
/* 803676B4 003645F4 88 A1 00 10 */ lbz r5, 0x10(r1)
/* 803676B8 003645F8 7C 67 00 51 */ subf. r3, r7, r0
/* 803676BC 003645FC 7C BF 2A 14 */ add r5, r31, r5
/* 803676C0 00364600 40 81 00 48 */ ble lbl_80367708
/* 803676C4 00364604 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 803676C8 00364608 7C 09 03 A6 */ mtctr r0
/* 803676CC 0036460C 41 82 00 30 */ beq lbl_803676FC
lbl_803676D0:
/* 803676D0 00364610 98 9E FF FF */ stb r4, -1(r30)
/* 803676D4 00364614 98 9E FF FE */ stb r4, -2(r30)
/* 803676D8 00364618 98 9E FF FD */ stb r4, -3(r30)
/* 803676DC 0036461C 98 9E FF FC */ stb r4, -4(r30)
/* 803676E0 00364620 98 9E FF FB */ stb r4, -5(r30)
/* 803676E4 00364624 98 9E FF FA */ stb r4, -6(r30)
/* 803676E8 00364628 98 9E FF F9 */ stb r4, -7(r30)
/* 803676EC 0036462C 9C 9E FF F8 */ stbu r4, -8(r30)
/* 803676F0 00364630 42 00 FF E0 */ bdnz lbl_803676D0
/* 803676F4 00364634 70 63 00 07 */ andi. r3, r3, 7
/* 803676F8 00364638 41 82 00 10 */ beq lbl_80367708
lbl_803676FC:
/* 803676FC 0036463C 7C 69 03 A6 */ mtctr r3
lbl_80367700:
/* 80367700 00364640 9C 9E FF FF */ stbu r4, -1(r30)
/* 80367704 00364644 42 00 FF FC */ bdnz lbl_80367700
lbl_80367708:
/* 80367708 00364648 38 60 00 00 */ li r3, 0
/* 8036770C 0036464C 48 00 00 10 */ b lbl_8036771C
lbl_80367710:
/* 80367710 00364650 8C 05 FF FF */ lbzu r0, -1(r5)
/* 80367714 00364654 38 63 00 01 */ addi r3, r3, 1
/* 80367718 00364658 9C 1E FF FF */ stbu r0, -1(r30)
lbl_8036771C:
/* 8036771C 0036465C 7C 03 38 00 */ cmpw r3, r7
/* 80367720 00364660 40 80 00 10 */ bge lbl_80367730
/* 80367724 00364664 88 01 00 10 */ lbz r0, 0x10(r1)
/* 80367728 00364668 7C 03 00 00 */ cmpw r3, r0
/* 8036772C 0036466C 41 80 FF E4 */ blt lbl_80367710
lbl_80367730:
/* 80367730 00364670 7C 03 38 00 */ cmpw r3, r7
/* 80367734 00364674 7C 63 38 50 */ subf r3, r3, r7
/* 80367738 00364678 38 80 00 30 */ li r4, 0x30
/* 8036773C 0036467C 40 80 00 48 */ bge lbl_80367784
/* 80367740 00364680 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 80367744 00364684 7C 09 03 A6 */ mtctr r0
/* 80367748 00364688 41 82 00 30 */ beq lbl_80367778
lbl_8036774C:
/* 8036774C 0036468C 98 9E FF FF */ stb r4, -1(r30)
/* 80367750 00364690 98 9E FF FE */ stb r4, -2(r30)
/* 80367754 00364694 98 9E FF FD */ stb r4, -3(r30)
/* 80367758 00364698 98 9E FF FC */ stb r4, -4(r30)
/* 8036775C 0036469C 98 9E FF FB */ stb r4, -5(r30)
/* 80367760 003646A0 98 9E FF FA */ stb r4, -6(r30)
/* 80367764 003646A4 98 9E FF F9 */ stb r4, -7(r30)
/* 80367768 003646A8 9C 9E FF F8 */ stbu r4, -8(r30)
/* 8036776C 003646AC 42 00 FF E0 */ bdnz lbl_8036774C
/* 80367770 003646B0 70 63 00 07 */ andi. r3, r3, 7
/* 80367774 003646B4 41 82 00 10 */ beq lbl_80367784
lbl_80367778:
/* 80367778 003646B8 7C 69 03 A6 */ mtctr r3
lbl_8036777C:
/* 8036777C 003646BC 9C 9E FF FF */ stbu r4, -1(r30)
/* 80367780 003646C0 42 00 FF FC */ bdnz lbl_8036777C
lbl_80367784:
/* 80367784 003646C4 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80367788 003646C8 2C 00 00 00 */ cmpwi r0, 0
/* 8036778C 003646CC 40 82 00 10 */ bne lbl_8036779C
/* 80367790 003646D0 88 1D 00 03 */ lbz r0, 3(r29)
/* 80367794 003646D4 28 00 00 00 */ cmplwi r0, 0
/* 80367798 003646D8 41 82 00 0C */ beq lbl_803677A4
lbl_8036779C:
/* 8036779C 003646DC 38 00 00 2E */ li r0, 0x2e
/* 803677A0 003646E0 9C 1E FF FF */ stbu r0, -1(r30)
lbl_803677A4:
/* 803677A4 003646E4 2C 06 00 00 */ cmpwi r6, 0
/* 803677A8 003646E8 41 82 00 A0 */ beq lbl_80367848
/* 803677AC 003646EC 38 80 00 00 */ li r4, 0
/* 803677B0 003646F0 38 60 00 30 */ li r3, 0x30
/* 803677B4 003646F4 48 00 00 0C */ b lbl_803677C0
lbl_803677B8:
/* 803677B8 003646F8 9C 7E FF FF */ stbu r3, -1(r30)
/* 803677BC 003646FC 38 84 00 01 */ addi r4, r4, 1
lbl_803677C0:
/* 803677C0 00364700 88 01 00 10 */ lbz r0, 0x10(r1)
/* 803677C4 00364704 7C 00 30 50 */ subf r0, r0, r6
/* 803677C8 00364708 7C 04 00 00 */ cmpw r4, r0
/* 803677CC 0036470C 41 80 FF EC */ blt lbl_803677B8
/* 803677D0 00364710 7C 04 30 00 */ cmpw r4, r6
/* 803677D4 00364714 7C 64 30 50 */ subf r3, r4, r6
/* 803677D8 00364718 40 80 00 78 */ bge lbl_80367850
/* 803677DC 0036471C 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 803677E0 00364720 7C 09 03 A6 */ mtctr r0
/* 803677E4 00364724 41 82 00 50 */ beq lbl_80367834
lbl_803677E8:
/* 803677E8 00364728 88 05 FF FF */ lbz r0, -1(r5)
/* 803677EC 0036472C 98 1E FF FF */ stb r0, -1(r30)
/* 803677F0 00364730 88 05 FF FE */ lbz r0, -2(r5)
/* 803677F4 00364734 98 1E FF FE */ stb r0, -2(r30)
/* 803677F8 00364738 88 05 FF FD */ lbz r0, -3(r5)
/* 803677FC 0036473C 98 1E FF FD */ stb r0, -3(r30)
/* 80367800 00364740 88 05 FF FC */ lbz r0, -4(r5)
/* 80367804 00364744 98 1E FF FC */ stb r0, -4(r30)
/* 80367808 00364748 88 05 FF FB */ lbz r0, -5(r5)
/* 8036780C 0036474C 98 1E FF FB */ stb r0, -5(r30)
/* 80367810 00364750 88 05 FF FA */ lbz r0, -6(r5)
/* 80367814 00364754 98 1E FF FA */ stb r0, -6(r30)
/* 80367818 00364758 88 05 FF F9 */ lbz r0, -7(r5)
/* 8036781C 0036475C 98 1E FF F9 */ stb r0, -7(r30)
/* 80367820 00364760 8C 05 FF F8 */ lbzu r0, -8(r5)
/* 80367824 00364764 9C 1E FF F8 */ stbu r0, -8(r30)
/* 80367828 00364768 42 00 FF C0 */ bdnz lbl_803677E8
/* 8036782C 0036476C 70 63 00 07 */ andi. r3, r3, 7
/* 80367830 00364770 41 82 00 20 */ beq lbl_80367850
lbl_80367834:
/* 80367834 00364774 7C 69 03 A6 */ mtctr r3
lbl_80367838:
/* 80367838 00364778 8C 05 FF FF */ lbzu r0, -1(r5)
/* 8036783C 0036477C 9C 1E FF FF */ stbu r0, -1(r30)
/* 80367840 00364780 42 00 FF F8 */ bdnz lbl_80367838
/* 80367844 00364784 48 00 00 0C */ b lbl_80367850
lbl_80367848:
/* 80367848 00364788 38 00 00 30 */ li r0, 0x30
/* 8036784C 0036478C 9C 1E FF FF */ stbu r0, -1(r30)
lbl_80367850:
/* 80367850 00364790 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80367854 00364794 7C 00 07 75 */ extsb. r0, r0
/* 80367858 00364798 41 82 00 10 */ beq lbl_80367868
/* 8036785C 0036479C 38 00 00 2D */ li r0, 0x2d
/* 80367860 003647A0 9C 1E FF FF */ stbu r0, -1(r30)
/* 80367864 003647A4 48 00 00 2C */ b lbl_80367890
lbl_80367868:
/* 80367868 003647A8 88 1D 00 01 */ lbz r0, 1(r29)
/* 8036786C 003647AC 28 00 00 01 */ cmplwi r0, 1
/* 80367870 003647B0 40 82 00 10 */ bne lbl_80367880
/* 80367874 003647B4 38 00 00 2B */ li r0, 0x2b
/* 80367878 003647B8 9C 1E FF FF */ stbu r0, -1(r30)
/* 8036787C 003647BC 48 00 00 14 */ b lbl_80367890
lbl_80367880:
/* 80367880 003647C0 28 00 00 02 */ cmplwi r0, 2
/* 80367884 003647C4 40 82 00 0C */ bne lbl_80367890
/* 80367888 003647C8 38 00 00 20 */ li r0, 0x20
/* 8036788C 003647CC 9C 1E FF FF */ stbu r0, -1(r30)
lbl_80367890:
/* 80367890 003647D0 7F C3 F3 78 */ mr r3, r30
lbl_80367894:
/* 80367894 003647D4 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80367898 003647D8 CB E1 00 48 */ lfd f31, 0x48(r1)
/* 8036789C 003647DC 83 E1 00 44 */ lwz r31, 0x44(r1)
/* 803678A0 003647E0 83 C1 00 40 */ lwz r30, 0x40(r1)
/* 803678A4 003647E4 83 A1 00 3C */ lwz r29, 0x3c(r1)
/* 803678A8 003647E8 83 81 00 38 */ lwz r28, 0x38(r1)
/* 803678AC 003647EC 7C 08 03 A6 */ mtlr r0
/* 803678B0 003647F0 38 21 00 50 */ addi r1, r1, 0x50
/* 803678B4 003647F4 4E 80 00 20 */ blr
.global func_803678B8
func_803678B8:
/* 803678B8 003647F8 2C 04 00 00 */ cmpwi r4, 0
/* 803678BC 003647FC 40 80 00 20 */ bge lbl_803678DC
lbl_803678C0:
/* 803678C0 00364800 38 00 00 00 */ li r0, 0
/* 803678C4 00364804 38 80 00 01 */ li r4, 1
/* 803678C8 00364808 B0 03 00 02 */ sth r0, 2(r3)
/* 803678CC 0036480C 38 00 00 30 */ li r0, 0x30
/* 803678D0 00364810 98 83 00 04 */ stb r4, 4(r3)
/* 803678D4 00364814 98 03 00 05 */ stb r0, 5(r3)
/* 803678D8 00364818 4E 80 00 20 */ blr
lbl_803678DC:
/* 803678DC 0036481C 88 E3 00 04 */ lbz r7, 4(r3)
/* 803678E0 00364820 7C 04 38 00 */ cmpw r4, r7
/* 803678E4 00364824 4C 80 00 20 */ bgelr
/* 803678E8 00364828 7C C3 22 14 */ add r6, r3, r4
/* 803678EC 0036482C 88 A6 00 05 */ lbz r5, 5(r6)
/* 803678F0 00364830 39 06 00 05 */ addi r8, r6, 5
/* 803678F4 00364834 38 05 FF D0 */ addi r0, r5, -48
/* 803678F8 00364838 7C 06 07 74 */ extsb r6, r0
/* 803678FC 0036483C 2C 06 00 05 */ cmpwi r6, 5
/* 80367900 00364840 40 82 00 40 */ bne lbl_80367940
/* 80367904 00364844 7C A3 3A 14 */ add r5, r3, r7
/* 80367908 00364848 38 A5 00 05 */ addi r5, r5, 5
lbl_8036790C:
/* 8036790C 0036484C 38 A5 FF FF */ addi r5, r5, -1
/* 80367910 00364850 7C 05 40 40 */ cmplw r5, r8
/* 80367914 00364854 40 81 00 10 */ ble lbl_80367924
/* 80367918 00364858 88 05 00 00 */ lbz r0, 0(r5)
/* 8036791C 0036485C 2C 00 00 30 */ cmpwi r0, 0x30
/* 80367920 00364860 41 82 FF EC */ beq lbl_8036790C
lbl_80367924:
/* 80367924 00364864 7C 05 40 40 */ cmplw r5, r8
/* 80367928 00364868 40 82 00 10 */ bne lbl_80367938
/* 8036792C 0036486C 88 08 FF FF */ lbz r0, -1(r8)
/* 80367930 00364870 54 05 07 FE */ clrlwi r5, r0, 0x1f
/* 80367934 00364874 48 00 00 6C */ b lbl_803679A0
lbl_80367938:
/* 80367938 00364878 38 A0 00 01 */ li r5, 1
/* 8036793C 0036487C 48 00 00 64 */ b lbl_803679A0
lbl_80367940:
/* 80367940 00364880 38 00 00 05 */ li r0, 5
/* 80367944 00364884 7C C0 02 78 */ xor r0, r6, r0
/* 80367948 00364888 7C 05 0E 70 */ srawi r5, r0, 1
/* 8036794C 0036488C 7C 00 30 38 */ and r0, r0, r6
/* 80367950 00364890 7C 00 28 50 */ subf r0, r0, r5
/* 80367954 00364894 54 05 0F FE */ srwi r5, r0, 0x1f
/* 80367958 00364898 48 00 00 48 */ b lbl_803679A0
lbl_8036795C:
/* 8036795C 0036489C 8C 08 FF FF */ lbzu r0, -1(r8)
/* 80367960 003648A0 7C A0 2A 14 */ add r5, r0, r5
/* 80367964 003648A4 38 05 FF D0 */ addi r0, r5, -48
/* 80367968 003648A8 7C 07 07 74 */ extsb r7, r0
/* 8036796C 003648AC 7C E0 32 78 */ xor r0, r7, r6
/* 80367970 003648B0 7C 05 0E 70 */ srawi r5, r0, 1
/* 80367974 003648B4 7C 00 38 38 */ and r0, r0, r7
/* 80367978 003648B8 7C 00 28 50 */ subf r0, r0, r5
/* 8036797C 003648BC 54 05 0F FF */ rlwinm. r5, r0, 1, 0x1f, 0x1f
/* 80367980 003648C0 40 82 00 0C */ bne lbl_8036798C
/* 80367984 003648C4 7C E0 07 75 */ extsb. r0, r7
/* 80367988 003648C8 40 82 00 0C */ bne lbl_80367994
lbl_8036798C:
/* 8036798C 003648CC 38 84 FF FF */ addi r4, r4, -1
/* 80367990 003648D0 48 00 00 14 */ b lbl_803679A4
lbl_80367994:
/* 80367994 003648D4 38 07 00 30 */ addi r0, r7, 0x30
/* 80367998 003648D8 98 08 00 00 */ stb r0, 0(r8)
/* 8036799C 003648DC 48 00 00 10 */ b lbl_803679AC
lbl_803679A0:
/* 803679A0 003648E0 38 C0 00 09 */ li r6, 9
lbl_803679A4:
/* 803679A4 003648E4 2C 04 00 00 */ cmpwi r4, 0
/* 803679A8 003648E8 40 82 FF B4 */ bne lbl_8036795C
lbl_803679AC:
/* 803679AC 003648EC 2C 05 00 00 */ cmpwi r5, 0
/* 803679B0 003648F0 41 82 00 24 */ beq lbl_803679D4
/* 803679B4 003648F4 A8 A3 00 02 */ lha r5, 2(r3)
/* 803679B8 003648F8 38 80 00 01 */ li r4, 1
/* 803679BC 003648FC 38 00 00 31 */ li r0, 0x31
/* 803679C0 00364900 38 A5 00 01 */ addi r5, r5, 1
/* 803679C4 00364904 B0 A3 00 02 */ sth r5, 2(r3)
/* 803679C8 00364908 98 83 00 04 */ stb r4, 4(r3)
/* 803679CC 0036490C 98 03 00 05 */ stb r0, 5(r3)
/* 803679D0 00364910 4E 80 00 20 */ blr
lbl_803679D4:
/* 803679D4 00364914 2C 04 00 00 */ cmpwi r4, 0
/* 803679D8 00364918 41 82 FE E8 */ beq lbl_803678C0
/* 803679DC 0036491C 98 83 00 04 */ stb r4, 4(r3)
/* 803679E0 00364920 4E 80 00 20 */ blr
.global func_803679E4
func_803679E4:
/* 803679E4 00364924 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 803679E8 00364928 7C 08 02 A6 */ mflr r0
/* 803679EC 0036492C 90 01 00 84 */ stw r0, 0x84(r1)
/* 803679F0 00364930 80 04 00 0C */ lwz r0, 0xc(r4)
/* 803679F4 00364934 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 803679F8 00364938 7C 9F 23 78 */ mr r31, r4
/* 803679FC 0036493C 2C 00 01 FD */ cmpwi r0, 0x1fd
/* 80367A00 00364940 93 C1 00 78 */ stw r30, 0x78(r1)
/* 80367A04 00364944 7C 7E 1B 78 */ mr r30, r3
/* 80367A08 00364948 D8 21 00 08 */ stfd f1, 8(r1)
/* 80367A0C 0036494C D8 21 00 18 */ stfd f1, 0x18(r1)
/* 80367A10 00364950 40 81 00 0C */ ble lbl_80367A1C
/* 80367A14 00364954 38 60 00 00 */ li r3, 0
/* 80367A18 00364958 48 00 02 EC */ b lbl_80367D04
lbl_80367A1C:
/* 80367A1C 0036495C 38 60 00 00 */ li r3, 0
/* 80367A20 00364960 38 00 00 20 */ li r0, 0x20
/* 80367A24 00364964 98 61 00 10 */ stb r3, 0x10(r1)
/* 80367A28 00364968 38 61 00 10 */ addi r3, r1, 0x10
/* 80367A2C 0036496C 38 81 00 40 */ addi r4, r1, 0x40
/* 80367A30 00364970 B0 01 00 12 */ sth r0, 0x12(r1)
/* 80367A34 00364974 4B FF B6 F1 */ bl func_80363124
/* 80367A38 00364978 88 01 00 45 */ lbz r0, 0x45(r1)
/* 80367A3C 0036497C 28 00 00 49 */ cmplwi r0, 0x49
/* 80367A40 00364980 40 82 00 94 */ bne lbl_80367AD4
/* 80367A44 00364984 A8 01 00 18 */ lha r0, 0x18(r1)
/* 80367A48 00364988 54 00 04 21 */ rlwinm. r0, r0, 0, 0x10, 0x10
/* 80367A4C 0036498C 41 82 00 44 */ beq lbl_80367A90
/* 80367A50 00364990 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367A54 00364994 3B DE FF FB */ addi r30, r30, -5
/* 80367A58 00364998 28 00 00 41 */ cmplwi r0, 0x41
/* 80367A5C 0036499C 40 82 00 1C */ bne lbl_80367A78
/* 80367A60 003649A0 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367A64 003649A4 7F C3 F3 78 */ mr r3, r30
/* 80367A68 003649A8 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367A6C 003649AC 38 84 00 01 */ addi r4, r4, 1
/* 80367A70 003649B0 48 00 10 BD */ bl strcpy
/* 80367A74 003649B4 48 00 00 58 */ b lbl_80367ACC
lbl_80367A78:
/* 80367A78 003649B8 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367A7C 003649BC 7F C3 F3 78 */ mr r3, r30
/* 80367A80 003649C0 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367A84 003649C4 38 84 00 06 */ addi r4, r4, 6
/* 80367A88 003649C8 48 00 10 A5 */ bl strcpy
/* 80367A8C 003649CC 48 00 00 40 */ b lbl_80367ACC
lbl_80367A90:
/* 80367A90 003649D0 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367A94 003649D4 3B DE FF FC */ addi r30, r30, -4
/* 80367A98 003649D8 28 00 00 41 */ cmplwi r0, 0x41
/* 80367A9C 003649DC 40 82 00 1C */ bne lbl_80367AB8
/* 80367AA0 003649E0 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367AA4 003649E4 7F C3 F3 78 */ mr r3, r30
/* 80367AA8 003649E8 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367AAC 003649EC 38 84 00 0B */ addi r4, r4, 0xb
/* 80367AB0 003649F0 48 00 10 7D */ bl strcpy
/* 80367AB4 003649F4 48 00 00 18 */ b lbl_80367ACC
lbl_80367AB8:
/* 80367AB8 003649F8 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367ABC 003649FC 7F C3 F3 78 */ mr r3, r30
/* 80367AC0 00364A00 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367AC4 00364A04 38 84 00 0F */ addi r4, r4, 0xf
/* 80367AC8 00364A08 48 00 10 65 */ bl strcpy
lbl_80367ACC:
/* 80367ACC 00364A0C 7F C3 F3 78 */ mr r3, r30
/* 80367AD0 00364A10 48 00 02 34 */ b lbl_80367D04
lbl_80367AD4:
/* 80367AD4 00364A14 28 00 00 4E */ cmplwi r0, 0x4e
/* 80367AD8 00364A18 40 82 00 94 */ bne lbl_80367B6C
/* 80367ADC 00364A1C 88 01 00 08 */ lbz r0, 8(r1)
/* 80367AE0 00364A20 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 80367AE4 00364A24 41 82 00 44 */ beq lbl_80367B28
/* 80367AE8 00364A28 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367AEC 00364A2C 3B DE FF FB */ addi r30, r30, -5
/* 80367AF0 00364A30 28 00 00 41 */ cmplwi r0, 0x41
/* 80367AF4 00364A34 40 82 00 1C */ bne lbl_80367B10
/* 80367AF8 00364A38 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367AFC 00364A3C 7F C3 F3 78 */ mr r3, r30
/* 80367B00 00364A40 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367B04 00364A44 38 84 00 13 */ addi r4, r4, 0x13
/* 80367B08 00364A48 48 00 10 25 */ bl strcpy
/* 80367B0C 00364A4C 48 00 00 58 */ b lbl_80367B64
lbl_80367B10:
/* 80367B10 00364A50 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367B14 00364A54 7F C3 F3 78 */ mr r3, r30
/* 80367B18 00364A58 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367B1C 00364A5C 38 84 00 18 */ addi r4, r4, 0x18
/* 80367B20 00364A60 48 00 10 0D */ bl strcpy
/* 80367B24 00364A64 48 00 00 40 */ b lbl_80367B64
lbl_80367B28:
/* 80367B28 00364A68 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367B2C 00364A6C 3B DE FF FC */ addi r30, r30, -4
/* 80367B30 00364A70 28 00 00 41 */ cmplwi r0, 0x41
/* 80367B34 00364A74 40 82 00 1C */ bne lbl_80367B50
/* 80367B38 00364A78 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367B3C 00364A7C 7F C3 F3 78 */ mr r3, r30
/* 80367B40 00364A80 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367B44 00364A84 38 84 00 1D */ addi r4, r4, 0x1d
/* 80367B48 00364A88 48 00 0F E5 */ bl strcpy
/* 80367B4C 00364A8C 48 00 00 18 */ b lbl_80367B64
lbl_80367B50:
/* 80367B50 00364A90 3C 80 80 3A */ lis r4, lbl_803A2318@ha
/* 80367B54 00364A94 7F C3 F3 78 */ mr r3, r30
/* 80367B58 00364A98 38 84 23 18 */ addi r4, r4, lbl_803A2318@l
/* 80367B5C 00364A9C 38 84 00 21 */ addi r4, r4, 0x21
/* 80367B60 00364AA0 48 00 0F CD */ bl strcpy
lbl_80367B64:
/* 80367B64 00364AA4 7F C3 F3 78 */ mr r3, r30
/* 80367B68 00364AA8 48 00 01 9C */ b lbl_80367D04
lbl_80367B6C:
/* 80367B6C 00364AAC 39 00 00 00 */ li r8, 0
/* 80367B70 00364AB0 39 20 00 01 */ li r9, 1
/* 80367B74 00364AB4 A8 01 00 18 */ lha r0, 0x18(r1)
/* 80367B78 00364AB8 38 E0 00 64 */ li r7, 0x64
/* 80367B7C 00364ABC 99 21 00 30 */ stb r9, 0x30(r1)
/* 80367B80 00364AC0 7F C4 F3 78 */ mr r4, r30
/* 80367B84 00364AC4 54 00 E5 7E */ rlwinm r0, r0, 0x1c, 0x15, 0x1f
/* 80367B88 00364AC8 38 A1 00 20 */ addi r5, r1, 0x20
/* 80367B8C 00364ACC 7C 03 07 34 */ extsh r3, r0
/* 80367B90 00364AD0 99 21 00 31 */ stb r9, 0x31(r1)
/* 80367B94 00364AD4 38 63 FC 01 */ addi r3, r3, -1023
/* 80367B98 00364AD8 99 01 00 32 */ stb r8, 0x32(r1)
/* 80367B9C 00364ADC 99 01 00 33 */ stb r8, 0x33(r1)
/* 80367BA0 00364AE0 80 C1 00 30 */ lwz r6, 0x30(r1)
/* 80367BA4 00364AE4 99 01 00 34 */ stb r8, 0x34(r1)
/* 80367BA8 00364AE8 98 E1 00 35 */ stb r7, 0x35(r1)
/* 80367BAC 00364AEC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80367BB0 00364AF0 91 01 00 38 */ stw r8, 0x38(r1)
/* 80367BB4 00364AF4 91 21 00 3C */ stw r9, 0x3c(r1)
/* 80367BB8 00364AF8 90 C1 00 20 */ stw r6, 0x20(r1)
/* 80367BBC 00364AFC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80367BC0 00364B00 91 01 00 28 */ stw r8, 0x28(r1)
/* 80367BC4 00364B04 91 21 00 2C */ stw r9, 0x2c(r1)
/* 80367BC8 00364B08 48 00 04 69 */ bl func_80368030
/* 80367BCC 00364B0C 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367BD0 00364B10 28 00 00 61 */ cmplwi r0, 0x61
/* 80367BD4 00364B14 40 82 00 14 */ bne lbl_80367BE8
/* 80367BD8 00364B18 38 00 00 70 */ li r0, 0x70
/* 80367BDC 00364B1C 38 83 FF FF */ addi r4, r3, -1
/* 80367BE0 00364B20 98 03 FF FF */ stb r0, -1(r3)
/* 80367BE4 00364B24 48 00 00 10 */ b lbl_80367BF4
lbl_80367BE8:
/* 80367BE8 00364B28 38 00 00 50 */ li r0, 0x50
/* 80367BEC 00364B2C 38 83 FF FF */ addi r4, r3, -1
/* 80367BF0 00364B30 98 03 FF FF */ stb r0, -1(r3)
lbl_80367BF4:
/* 80367BF4 00364B34 81 1F 00 0C */ lwz r8, 0xc(r31)
/* 80367BF8 00364B38 38 C1 00 08 */ addi r6, r1, 8
/* 80367BFC 00364B3C 7D 09 03 A6 */ mtctr r8
/* 80367C00 00364B40 2C 08 00 01 */ cmpwi r8, 1
/* 80367C04 00364B44 41 80 00 6C */ blt lbl_80367C70
lbl_80367C08:
/* 80367C08 00364B48 55 05 0F FE */ srwi r5, r8, 0x1f
/* 80367C0C 00364B4C 55 00 07 FE */ clrlwi r0, r8, 0x1f
/* 80367C10 00364B50 7C 65 42 14 */ add r3, r5, r8
/* 80367C14 00364B54 7C 63 0E 70 */ srawi r3, r3, 1
/* 80367C18 00364B58 7C 00 2A 78 */ xor r0, r0, r5
/* 80367C1C 00364B5C 38 63 00 01 */ addi r3, r3, 1
/* 80367C20 00364B60 7C E6 18 AE */ lbzx r7, r6, r3
/* 80367C24 00364B64 7C 05 00 51 */ subf. r0, r5, r0
/* 80367C28 00364B68 54 E0 E7 3E */ rlwinm r0, r7, 0x1c, 0x1c, 0x1f
/* 80367C2C 00364B6C 7C 03 07 74 */ extsb r3, r0
/* 80367C30 00364B70 41 82 00 08 */ beq lbl_80367C38
/* 80367C34 00364B74 54 E3 07 3E */ clrlwi r3, r7, 0x1c
lbl_80367C38:
/* 80367C38 00364B78 7C 60 07 74 */ extsb r0, r3
/* 80367C3C 00364B7C 2C 00 00 0A */ cmpwi r0, 0xa
/* 80367C40 00364B80 40 80 00 0C */ bge lbl_80367C4C
/* 80367C44 00364B84 38 03 00 30 */ addi r0, r3, 0x30
/* 80367C48 00364B88 48 00 00 1C */ b lbl_80367C64
lbl_80367C4C:
/* 80367C4C 00364B8C 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367C50 00364B90 28 00 00 61 */ cmplwi r0, 0x61
/* 80367C54 00364B94 40 82 00 0C */ bne lbl_80367C60
/* 80367C58 00364B98 38 03 00 57 */ addi r0, r3, 0x57
/* 80367C5C 00364B9C 48 00 00 08 */ b lbl_80367C64
lbl_80367C60:
/* 80367C60 00364BA0 38 03 00 37 */ addi r0, r3, 0x37
lbl_80367C64:
/* 80367C64 00364BA4 9C 04 FF FF */ stbu r0, -1(r4)
/* 80367C68 00364BA8 39 08 FF FF */ addi r8, r8, -1
/* 80367C6C 00364BAC 42 00 FF 9C */ bdnz lbl_80367C08
lbl_80367C70:
/* 80367C70 00364BB0 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80367C74 00364BB4 2C 00 00 00 */ cmpwi r0, 0
/* 80367C78 00364BB8 40 82 00 10 */ bne lbl_80367C88
/* 80367C7C 00364BBC 88 1F 00 03 */ lbz r0, 3(r31)
/* 80367C80 00364BC0 28 00 00 00 */ cmplwi r0, 0
/* 80367C84 00364BC4 41 82 00 0C */ beq lbl_80367C90
lbl_80367C88:
/* 80367C88 00364BC8 38 00 00 2E */ li r0, 0x2e
/* 80367C8C 00364BCC 9C 04 FF FF */ stbu r0, -1(r4)
lbl_80367C90:
/* 80367C90 00364BD0 88 1F 00 05 */ lbz r0, 5(r31)
/* 80367C94 00364BD4 38 60 00 31 */ li r3, 0x31
/* 80367C98 00364BD8 98 64 FF FF */ stb r3, -1(r4)
/* 80367C9C 00364BDC 28 00 00 61 */ cmplwi r0, 0x61
/* 80367CA0 00364BE0 40 82 00 10 */ bne lbl_80367CB0
/* 80367CA4 00364BE4 38 00 00 78 */ li r0, 0x78
/* 80367CA8 00364BE8 9C 04 FF FE */ stbu r0, -2(r4)
/* 80367CAC 00364BEC 48 00 00 0C */ b lbl_80367CB8
lbl_80367CB0:
/* 80367CB0 00364BF0 38 00 00 58 */ li r0, 0x58
/* 80367CB4 00364BF4 9C 04 FF FE */ stbu r0, -2(r4)
lbl_80367CB8:
/* 80367CB8 00364BF8 A8 01 00 18 */ lha r0, 0x18(r1)
/* 80367CBC 00364BFC 38 60 00 30 */ li r3, 0x30
/* 80367CC0 00364C00 9C 64 FF FF */ stbu r3, -1(r4)
/* 80367CC4 00364C04 54 00 04 21 */ rlwinm. r0, r0, 0, 0x10, 0x10
/* 80367CC8 00364C08 41 82 00 10 */ beq lbl_80367CD8
/* 80367CCC 00364C0C 38 00 00 2D */ li r0, 0x2d
/* 80367CD0 00364C10 9C 04 FF FF */ stbu r0, -1(r4)
/* 80367CD4 00364C14 48 00 00 2C */ b lbl_80367D00
lbl_80367CD8:
/* 80367CD8 00364C18 88 1F 00 01 */ lbz r0, 1(r31)
/* 80367CDC 00364C1C 28 00 00 01 */ cmplwi r0, 1
/* 80367CE0 00364C20 40 82 00 10 */ bne lbl_80367CF0
/* 80367CE4 00364C24 38 00 00 2B */ li r0, 0x2b
/* 80367CE8 00364C28 9C 04 FF FF */ stbu r0, -1(r4)
/* 80367CEC 00364C2C 48 00 00 14 */ b lbl_80367D00
lbl_80367CF0:
/* 80367CF0 00364C30 28 00 00 02 */ cmplwi r0, 2
/* 80367CF4 00364C34 40 82 00 0C */ bne lbl_80367D00
/* 80367CF8 00364C38 38 00 00 20 */ li r0, 0x20
/* 80367CFC 00364C3C 9C 04 FF FF */ stbu r0, -1(r4)
lbl_80367D00:
/* 80367D00 00364C40 7C 83 23 78 */ mr r3, r4
lbl_80367D04:
/* 80367D04 00364C44 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80367D08 00364C48 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 80367D0C 00364C4C 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 80367D10 00364C50 7C 08 03 A6 */ mtlr r0
/* 80367D14 00364C54 38 21 00 80 */ addi r1, r1, 0x80
/* 80367D18 00364C58 4E 80 00 20 */ blr
.global func_80367D1C
func_80367D1C:
/* 80367D1C 00364C5C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80367D20 00364C60 7C 08 02 A6 */ mflr r0
/* 80367D24 00364C64 90 01 00 34 */ stw r0, 0x34(r1)
/* 80367D28 00364C68 38 00 00 00 */ li r0, 0
/* 80367D2C 00364C6C BE C1 00 08 */ stmw r22, 8(r1)
/* 80367D30 00364C70 7C B7 2B 78 */ mr r23, r5
/* 80367D34 00364C74 7C 85 02 78 */ xor r5, r4, r0
/* 80367D38 00364C78 7C D8 33 78 */ mr r24, r6
/* 80367D3C 00364C7C 7C 9E 23 78 */ mr r30, r4
/* 80367D40 00364C80 7C 7F 1B 78 */ mr r31, r3
/* 80367D44 00364C84 3B 77 FF FF */ addi r27, r23, -1
/* 80367D48 00364C88 3B 20 00 00 */ li r25, 0
/* 80367D4C 00364C8C 3B 40 00 00 */ li r26, 0
/* 80367D50 00364C90 98 17 FF FF */ stb r0, -1(r23)
/* 80367D54 00364C94 7C 60 02 78 */ xor r0, r3, r0
/* 80367D58 00364C98 7C A0 03 79 */ or. r0, r5, r0
/* 80367D5C 00364C9C 40 82 00 30 */ bne lbl_80367D8C
/* 80367D60 00364CA0 80 18 00 0C */ lwz r0, 0xc(r24)
/* 80367D64 00364CA4 2C 00 00 00 */ cmpwi r0, 0
/* 80367D68 00364CA8 40 82 00 24 */ bne lbl_80367D8C
/* 80367D6C 00364CAC 88 18 00 03 */ lbz r0, 3(r24)
/* 80367D70 00364CB0 28 00 00 00 */ cmplwi r0, 0
/* 80367D74 00364CB4 41 82 00 10 */ beq lbl_80367D84
/* 80367D78 00364CB8 88 18 00 05 */ lbz r0, 5(r24)
/* 80367D7C 00364CBC 28 00 00 6F */ cmplwi r0, 0x6f
/* 80367D80 00364CC0 41 82 00 0C */ beq lbl_80367D8C
lbl_80367D84:
/* 80367D84 00364CC4 7F 63 DB 78 */ mr r3, r27
/* 80367D88 00364CC8 48 00 02 94 */ b lbl_8036801C
lbl_80367D8C:
/* 80367D8C 00364CCC 88 B8 00 05 */ lbz r5, 5(r24)
/* 80367D90 00364CD0 38 05 FF A8 */ addi r0, r5, -88
/* 80367D94 00364CD4 28 00 00 20 */ cmplwi r0, 0x20
/* 80367D98 00364CD8 41 81 00 8C */ bgt lbl_80367E24
/* 80367D9C 00364CDC 3C A0 80 3D */ lis r5, lbl_803D2F18@ha
/* 80367DA0 00364CE0 54 00 10 3A */ slwi r0, r0, 2
/* 80367DA4 00364CE4 38 A5 2F 18 */ addi r5, r5, lbl_803D2F18@l
/* 80367DA8 00364CE8 7C 05 00 2E */ lwzx r0, r5, r0
/* 80367DAC 00364CEC 7C 09 03 A6 */ mtctr r0
/* 80367DB0 00364CF0 4E 80 04 20 */ bctr
/* 80367DB4 00364CF4 38 00 00 00 */ li r0, 0
/* 80367DB8 00364CF8 6C 65 80 00 */ xoris r5, r3, 0x8000
/* 80367DBC 00364CFC 6C 03 80 00 */ xoris r3, r0, 0x8000
/* 80367DC0 00364D00 3B 80 00 0A */ li r28, 0xa
/* 80367DC4 00364D04 7C 00 20 10 */ subfc r0, r0, r4
/* 80367DC8 00364D08 3B A0 00 00 */ li r29, 0
/* 80367DCC 00364D0C 7C 63 29 10 */ subfe r3, r3, r5
/* 80367DD0 00364D10 7C 65 29 10 */ subfe r3, r5, r5
/* 80367DD4 00364D14 7C 63 00 D1 */ neg. r3, r3
/* 80367DD8 00364D18 41 82 00 4C */ beq lbl_80367E24
/* 80367DDC 00364D1C 23 DE 00 00 */ subfic r30, r30, 0
/* 80367DE0 00364D20 3B 20 00 01 */ li r25, 1
/* 80367DE4 00364D24 7F FF 01 90 */ subfze r31, r31
/* 80367DE8 00364D28 48 00 00 3C */ b lbl_80367E24
/* 80367DEC 00364D2C 38 00 00 00 */ li r0, 0
/* 80367DF0 00364D30 3B 80 00 08 */ li r28, 8
/* 80367DF4 00364D34 98 18 00 01 */ stb r0, 1(r24)
/* 80367DF8 00364D38 3B A0 00 00 */ li r29, 0
/* 80367DFC 00364D3C 48 00 00 28 */ b lbl_80367E24
/* 80367E00 00364D40 38 00 00 00 */ li r0, 0
/* 80367E04 00364D44 3B 80 00 0A */ li r28, 0xa
/* 80367E08 00364D48 98 18 00 01 */ stb r0, 1(r24)
/* 80367E0C 00364D4C 3B A0 00 00 */ li r29, 0
/* 80367E10 00364D50 48 00 00 14 */ b lbl_80367E24
/* 80367E14 00364D54 38 00 00 00 */ li r0, 0
/* 80367E18 00364D58 3B 80 00 10 */ li r28, 0x10
/* 80367E1C 00364D5C 98 18 00 01 */ stb r0, 1(r24)
/* 80367E20 00364D60 3B A0 00 00 */ li r29, 0
lbl_80367E24:
/* 80367E24 00364D64 7F E3 FB 78 */ mr r3, r31
/* 80367E28 00364D68 7F C4 F3 78 */ mr r4, r30
/* 80367E2C 00364D6C 7F A5 EB 78 */ mr r5, r29
/* 80367E30 00364D70 7F 86 E3 78 */ mr r6, r28
/* 80367E34 00364D74 4B FF A6 29 */ bl func_8036245C
/* 80367E38 00364D78 7C 96 23 78 */ mr r22, r4
/* 80367E3C 00364D7C 7F E3 FB 78 */ mr r3, r31
/* 80367E40 00364D80 7F C4 F3 78 */ mr r4, r30
/* 80367E44 00364D84 7F A5 EB 78 */ mr r5, r29
/* 80367E48 00364D88 7F 86 E3 78 */ mr r6, r28
/* 80367E4C 00364D8C 4B FF A3 ED */ bl func_80362238
/* 80367E50 00364D90 2C 16 00 0A */ cmpwi r22, 0xa
/* 80367E54 00364D94 7C 9E 23 78 */ mr r30, r4
/* 80367E58 00364D98 7C 7F 1B 78 */ mr r31, r3
/* 80367E5C 00364D9C 40 80 00 0C */ bge lbl_80367E68
/* 80367E60 00364DA0 38 16 00 30 */ addi r0, r22, 0x30
/* 80367E64 00364DA4 48 00 00 1C */ b lbl_80367E80
lbl_80367E68:
/* 80367E68 00364DA8 88 18 00 05 */ lbz r0, 5(r24)
/* 80367E6C 00364DAC 28 00 00 78 */ cmplwi r0, 0x78
/* 80367E70 00364DB0 40 82 00 0C */ bne lbl_80367E7C
/* 80367E74 00364DB4 38 16 00 57 */ addi r0, r22, 0x57
/* 80367E78 00364DB8 48 00 00 08 */ b lbl_80367E80
lbl_80367E7C:
/* 80367E7C 00364DBC 38 16 00 37 */ addi r0, r22, 0x37
lbl_80367E80:
/* 80367E80 00364DC0 38 80 00 00 */ li r4, 0
/* 80367E84 00364DC4 9C 1B FF FF */ stbu r0, -1(r27)
/* 80367E88 00364DC8 7F C3 22 78 */ xor r3, r30, r4
/* 80367E8C 00364DCC 3B 5A 00 01 */ addi r26, r26, 1
/* 80367E90 00364DD0 7F E0 22 78 */ xor r0, r31, r4
/* 80367E94 00364DD4 7C 60 03 79 */ or. r0, r3, r0
/* 80367E98 00364DD8 40 82 FF 8C */ bne lbl_80367E24
/* 80367E9C 00364DDC 38 60 00 08 */ li r3, 8
/* 80367EA0 00364DE0 7F A0 22 78 */ xor r0, r29, r4
/* 80367EA4 00364DE4 7F 83 1A 78 */ xor r3, r28, r3
/* 80367EA8 00364DE8 7C 60 03 79 */ or. r0, r3, r0
/* 80367EAC 00364DEC 40 82 00 28 */ bne lbl_80367ED4
/* 80367EB0 00364DF0 88 18 00 03 */ lbz r0, 3(r24)
/* 80367EB4 00364DF4 28 00 00 00 */ cmplwi r0, 0
/* 80367EB8 00364DF8 41 82 00 1C */ beq lbl_80367ED4
/* 80367EBC 00364DFC 88 1B 00 00 */ lbz r0, 0(r27)
/* 80367EC0 00364E00 2C 00 00 30 */ cmpwi r0, 0x30
/* 80367EC4 00364E04 41 82 00 10 */ beq lbl_80367ED4
/* 80367EC8 00364E08 38 00 00 30 */ li r0, 0x30
/* 80367ECC 00364E0C 3B 5A 00 01 */ addi r26, r26, 1
/* 80367ED0 00364E10 9C 1B FF FF */ stbu r0, -1(r27)
lbl_80367ED4:
/* 80367ED4 00364E14 88 18 00 00 */ lbz r0, 0(r24)
/* 80367ED8 00364E18 28 00 00 02 */ cmplwi r0, 2
/* 80367EDC 00364E1C 40 82 00 5C */ bne lbl_80367F38
/* 80367EE0 00364E20 80 18 00 08 */ lwz r0, 8(r24)
/* 80367EE4 00364E24 2C 19 00 00 */ cmpwi r25, 0
/* 80367EE8 00364E28 90 18 00 0C */ stw r0, 0xc(r24)
/* 80367EEC 00364E2C 40 82 00 10 */ bne lbl_80367EFC
/* 80367EF0 00364E30 88 18 00 01 */ lbz r0, 1(r24)
/* 80367EF4 00364E34 28 00 00 00 */ cmplwi r0, 0
/* 80367EF8 00364E38 41 82 00 10 */ beq lbl_80367F08
lbl_80367EFC:
/* 80367EFC 00364E3C 80 78 00 0C */ lwz r3, 0xc(r24)
/* 80367F00 00364E40 38 03 FF FF */ addi r0, r3, -1
/* 80367F04 00364E44 90 18 00 0C */ stw r0, 0xc(r24)
lbl_80367F08:
/* 80367F08 00364E48 38 60 00 10 */ li r3, 0x10
/* 80367F0C 00364E4C 38 00 00 00 */ li r0, 0
/* 80367F10 00364E50 7F 83 1A 78 */ xor r3, r28, r3
/* 80367F14 00364E54 7F A0 02 78 */ xor r0, r29, r0
/* 80367F18 00364E58 7C 60 03 79 */ or. r0, r3, r0
/* 80367F1C 00364E5C 40 82 00 1C */ bne lbl_80367F38
/* 80367F20 00364E60 88 18 00 03 */ lbz r0, 3(r24)
/* 80367F24 00364E64 28 00 00 00 */ cmplwi r0, 0
/* 80367F28 00364E68 41 82 00 10 */ beq lbl_80367F38
/* 80367F2C 00364E6C 80 78 00 0C */ lwz r3, 0xc(r24)
/* 80367F30 00364E70 38 03 FF FE */ addi r0, r3, -2
/* 80367F34 00364E74 90 18 00 0C */ stw r0, 0xc(r24)
lbl_80367F38:
/* 80367F38 00364E78 80 78 00 0C */ lwz r3, 0xc(r24)
/* 80367F3C 00364E7C 7C 1B B8 50 */ subf r0, r27, r23
/* 80367F40 00364E80 7C 03 02 14 */ add r0, r3, r0
/* 80367F44 00364E84 2C 00 01 FD */ cmpwi r0, 0x1fd
/* 80367F48 00364E88 40 81 00 0C */ ble lbl_80367F54
/* 80367F4C 00364E8C 38 60 00 00 */ li r3, 0
/* 80367F50 00364E90 48 00 00 CC */ b lbl_8036801C
lbl_80367F54:
/* 80367F54 00364E94 7C 1A 18 00 */ cmpw r26, r3
/* 80367F58 00364E98 7C 7A 18 50 */ subf r3, r26, r3
/* 80367F5C 00364E9C 38 80 00 30 */ li r4, 0x30
/* 80367F60 00364EA0 40 80 00 48 */ bge lbl_80367FA8
/* 80367F64 00364EA4 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 80367F68 00364EA8 7C 09 03 A6 */ mtctr r0
/* 80367F6C 00364EAC 41 82 00 30 */ beq lbl_80367F9C
lbl_80367F70:
/* 80367F70 00364EB0 98 9B FF FF */ stb r4, -1(r27)
/* 80367F74 00364EB4 98 9B FF FE */ stb r4, -2(r27)
/* 80367F78 00364EB8 98 9B FF FD */ stb r4, -3(r27)
/* 80367F7C 00364EBC 98 9B FF FC */ stb r4, -4(r27)
/* 80367F80 00364EC0 98 9B FF FB */ stb r4, -5(r27)
/* 80367F84 00364EC4 98 9B FF FA */ stb r4, -6(r27)
/* 80367F88 00364EC8 98 9B FF F9 */ stb r4, -7(r27)
/* 80367F8C 00364ECC 9C 9B FF F8 */ stbu r4, -8(r27)
/* 80367F90 00364ED0 42 00 FF E0 */ bdnz lbl_80367F70
/* 80367F94 00364ED4 70 63 00 07 */ andi. r3, r3, 7
/* 80367F98 00364ED8 41 82 00 10 */ beq lbl_80367FA8
lbl_80367F9C:
/* 80367F9C 00364EDC 7C 69 03 A6 */ mtctr r3
lbl_80367FA0:
/* 80367FA0 00364EE0 9C 9B FF FF */ stbu r4, -1(r27)
/* 80367FA4 00364EE4 42 00 FF FC */ bdnz lbl_80367FA0
lbl_80367FA8:
/* 80367FA8 00364EE8 38 60 00 10 */ li r3, 0x10
/* 80367FAC 00364EEC 38 00 00 00 */ li r0, 0
/* 80367FB0 00364EF0 7F 83 1A 78 */ xor r3, r28, r3
/* 80367FB4 00364EF4 7F A0 02 78 */ xor r0, r29, r0
/* 80367FB8 00364EF8 7C 60 03 79 */ or. r0, r3, r0
/* 80367FBC 00364EFC 40 82 00 20 */ bne lbl_80367FDC
/* 80367FC0 00364F00 88 18 00 03 */ lbz r0, 3(r24)
/* 80367FC4 00364F04 28 00 00 00 */ cmplwi r0, 0
/* 80367FC8 00364F08 41 82 00 14 */ beq lbl_80367FDC
/* 80367FCC 00364F0C 88 78 00 05 */ lbz r3, 5(r24)
/* 80367FD0 00364F10 38 00 00 30 */ li r0, 0x30
/* 80367FD4 00364F14 98 7B FF FF */ stb r3, -1(r27)
/* 80367FD8 00364F18 9C 1B FF FE */ stbu r0, -2(r27)
lbl_80367FDC:
/* 80367FDC 00364F1C 2C 19 00 00 */ cmpwi r25, 0
/* 80367FE0 00364F20 41 82 00 10 */ beq lbl_80367FF0
/* 80367FE4 00364F24 38 00 00 2D */ li r0, 0x2d
/* 80367FE8 00364F28 9C 1B FF FF */ stbu r0, -1(r27)
/* 80367FEC 00364F2C 48 00 00 2C */ b lbl_80368018
lbl_80367FF0:
/* 80367FF0 00364F30 88 18 00 01 */ lbz r0, 1(r24)
/* 80367FF4 00364F34 28 00 00 01 */ cmplwi r0, 1
/* 80367FF8 00364F38 40 82 00 10 */ bne lbl_80368008
/* 80367FFC 00364F3C 38 00 00 2B */ li r0, 0x2b
/* 80368000 00364F40 9C 1B FF FF */ stbu r0, -1(r27)
/* 80368004 00364F44 48 00 00 14 */ b lbl_80368018
lbl_80368008:
/* 80368008 00364F48 28 00 00 02 */ cmplwi r0, 2
/* 8036800C 00364F4C 40 82 00 0C */ bne lbl_80368018
/* 80368010 00364F50 38 00 00 20 */ li r0, 0x20
/* 80368014 00364F54 9C 1B FF FF */ stbu r0, -1(r27)
lbl_80368018:
/* 80368018 00364F58 7F 63 DB 78 */ mr r3, r27
lbl_8036801C:
/* 8036801C 00364F5C BA C1 00 08 */ lmw r22, 8(r1)
/* 80368020 00364F60 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80368024 00364F64 7C 08 03 A6 */ mtlr r0
/* 80368028 00364F68 38 21 00 30 */ addi r1, r1, 0x30
/* 8036802C 00364F6C 4E 80 00 20 */ blr
.global func_80368030
func_80368030:
/* 80368030 00364F70 38 C0 00 00 */ li r6, 0
/* 80368034 00364F74 2C 03 00 00 */ cmpwi r3, 0
/* 80368038 00364F78 98 C4 FF FF */ stb r6, -1(r4)
/* 8036803C 00364F7C 38 C4 FF FF */ addi r6, r4, -1
/* 80368040 00364F80 39 00 00 00 */ li r8, 0
/* 80368044 00364F84 38 E0 00 00 */ li r7, 0
/* 80368048 00364F88 40 82 00 30 */ bne lbl_80368078
/* 8036804C 00364F8C 81 25 00 0C */ lwz r9, 0xc(r5)
/* 80368050 00364F90 2C 09 00 00 */ cmpwi r9, 0
/* 80368054 00364F94 40 82 00 24 */ bne lbl_80368078
/* 80368058 00364F98 89 25 00 03 */ lbz r9, 3(r5)
/* 8036805C 00364F9C 28 09 00 00 */ cmplwi r9, 0
/* 80368060 00364FA0 41 82 00 10 */ beq lbl_80368070
/* 80368064 00364FA4 89 25 00 05 */ lbz r9, 5(r5)
/* 80368068 00364FA8 28 09 00 6F */ cmplwi r9, 0x6f
/* 8036806C 00364FAC 41 82 00 0C */ beq lbl_80368078
lbl_80368070:
/* 80368070 00364FB0 7C C3 33 78 */ mr r3, r6
/* 80368074 00364FB4 4E 80 00 20 */ blr
lbl_80368078:
/* 80368078 00364FB8 89 25 00 05 */ lbz r9, 5(r5)
/* 8036807C 00364FBC 39 49 FF A8 */ addi r10, r9, -88
/* 80368080 00364FC0 28 0A 00 20 */ cmplwi r10, 0x20
/* 80368084 00364FC4 41 81 00 60 */ bgt lbl_803680E4
/* 80368088 00364FC8 3D 20 80 3D */ lis r9, lbl_803D2F9C@ha
/* 8036808C 00364FCC 55 4A 10 3A */ slwi r10, r10, 2
/* 80368090 00364FD0 39 29 2F 9C */ addi r9, r9, lbl_803D2F9C@l
/* 80368094 00364FD4 7D 29 50 2E */ lwzx r9, r9, r10
/* 80368098 00364FD8 7D 29 03 A6 */ mtctr r9
/* 8036809C 00364FDC 4E 80 04 20 */ bctr
/* 803680A0 00364FE0 2C 03 00 00 */ cmpwi r3, 0
/* 803680A4 00364FE4 38 00 00 0A */ li r0, 0xa
/* 803680A8 00364FE8 40 80 00 3C */ bge lbl_803680E4
/* 803680AC 00364FEC 7C 63 00 D0 */ neg r3, r3
/* 803680B0 00364FF0 39 00 00 01 */ li r8, 1
/* 803680B4 00364FF4 48 00 00 30 */ b lbl_803680E4
/* 803680B8 00364FF8 39 20 00 00 */ li r9, 0
/* 803680BC 00364FFC 38 00 00 08 */ li r0, 8
/* 803680C0 00365000 99 25 00 01 */ stb r9, 1(r5)
/* 803680C4 00365004 48 00 00 20 */ b lbl_803680E4
/* 803680C8 00365008 39 20 00 00 */ li r9, 0
/* 803680CC 0036500C 38 00 00 0A */ li r0, 0xa
/* 803680D0 00365010 99 25 00 01 */ stb r9, 1(r5)
/* 803680D4 00365014 48 00 00 10 */ b lbl_803680E4
/* 803680D8 00365018 39 20 00 00 */ li r9, 0
/* 803680DC 0036501C 38 00 00 10 */ li r0, 0x10
/* 803680E0 00365020 99 25 00 01 */ stb r9, 1(r5)
lbl_803680E4:
/* 803680E4 00365024 89 25 00 05 */ lbz r9, 5(r5)
lbl_803680E8:
/* 803680E8 00365028 7D 43 03 96 */ divwu r10, r3, r0
/* 803680EC 0036502C 7D 4A 01 D6 */ mullw r10, r10, r0
/* 803680F0 00365030 7D 4A 18 50 */ subf r10, r10, r3
/* 803680F4 00365034 7C 63 03 96 */ divwu r3, r3, r0
/* 803680F8 00365038 2C 0A 00 0A */ cmpwi r10, 0xa
/* 803680FC 0036503C 40 80 00 0C */ bge lbl_80368108
/* 80368100 00365040 39 4A 00 30 */ addi r10, r10, 0x30
/* 80368104 00365044 48 00 00 18 */ b lbl_8036811C
lbl_80368108:
/* 80368108 00365048 28 09 00 78 */ cmplwi r9, 0x78
/* 8036810C 0036504C 40 82 00 0C */ bne lbl_80368118
/* 80368110 00365050 39 4A 00 57 */ addi r10, r10, 0x57
/* 80368114 00365054 48 00 00 08 */ b lbl_8036811C
lbl_80368118:
/* 80368118 00365058 39 4A 00 37 */ addi r10, r10, 0x37
lbl_8036811C:
/* 8036811C 0036505C 28 03 00 00 */ cmplwi r3, 0
/* 80368120 00365060 99 46 FF FF */ stb r10, -1(r6)
/* 80368124 00365064 38 C6 FF FF */ addi r6, r6, -1
/* 80368128 00365068 38 E7 00 01 */ addi r7, r7, 1
/* 8036812C 0036506C 40 82 FF BC */ bne lbl_803680E8
/* 80368130 00365070 28 00 00 08 */ cmplwi r0, 8
/* 80368134 00365074 40 82 00 28 */ bne lbl_8036815C
/* 80368138 00365078 88 65 00 03 */ lbz r3, 3(r5)
/* 8036813C 0036507C 28 03 00 00 */ cmplwi r3, 0
/* 80368140 00365080 41 82 00 1C */ beq lbl_8036815C
/* 80368144 00365084 88 66 00 00 */ lbz r3, 0(r6)
/* 80368148 00365088 2C 03 00 30 */ cmpwi r3, 0x30
/* 8036814C 0036508C 41 82 00 10 */ beq lbl_8036815C
/* 80368150 00365090 38 60 00 30 */ li r3, 0x30
/* 80368154 00365094 38 E7 00 01 */ addi r7, r7, 1
/* 80368158 00365098 9C 66 FF FF */ stbu r3, -1(r6)
lbl_8036815C:
/* 8036815C 0036509C 88 65 00 00 */ lbz r3, 0(r5)
/* 80368160 003650A0 28 03 00 02 */ cmplwi r3, 2
/* 80368164 003650A4 40 82 00 4C */ bne lbl_803681B0
/* 80368168 003650A8 80 65 00 08 */ lwz r3, 8(r5)
/* 8036816C 003650AC 2C 08 00 00 */ cmpwi r8, 0
/* 80368170 003650B0 90 65 00 0C */ stw r3, 0xc(r5)
/* 80368174 003650B4 40 82 00 10 */ bne lbl_80368184
/* 80368178 003650B8 88 65 00 01 */ lbz r3, 1(r5)
/* 8036817C 003650BC 28 03 00 00 */ cmplwi r3, 0
/* 80368180 003650C0 41 82 00 10 */ beq lbl_80368190
lbl_80368184:
/* 80368184 003650C4 80 65 00 0C */ lwz r3, 0xc(r5)
/* 80368188 003650C8 38 63 FF FF */ addi r3, r3, -1
/* 8036818C 003650CC 90 65 00 0C */ stw r3, 0xc(r5)
lbl_80368190:
/* 80368190 003650D0 28 00 00 10 */ cmplwi r0, 0x10
/* 80368194 003650D4 40 82 00 1C */ bne lbl_803681B0
/* 80368198 003650D8 88 65 00 03 */ lbz r3, 3(r5)
/* 8036819C 003650DC 28 03 00 00 */ cmplwi r3, 0
/* 803681A0 003650E0 41 82 00 10 */ beq lbl_803681B0
/* 803681A4 003650E4 80 65 00 0C */ lwz r3, 0xc(r5)
/* 803681A8 003650E8 38 63 FF FE */ addi r3, r3, -2
/* 803681AC 003650EC 90 65 00 0C */ stw r3, 0xc(r5)
lbl_803681B0:
/* 803681B0 003650F0 81 25 00 0C */ lwz r9, 0xc(r5)
/* 803681B4 003650F4 7C 66 20 50 */ subf r3, r6, r4
/* 803681B8 003650F8 7C 69 1A 14 */ add r3, r9, r3
/* 803681BC 003650FC 2C 03 01 FD */ cmpwi r3, 0x1fd
/* 803681C0 00365100 40 81 00 0C */ ble lbl_803681CC
/* 803681C4 00365104 38 60 00 00 */ li r3, 0
/* 803681C8 00365108 4E 80 00 20 */ blr
lbl_803681CC:
/* 803681CC 0036510C 7C 07 48 00 */ cmpw r7, r9
/* 803681D0 00365110 7C 87 48 50 */ subf r4, r7, r9
/* 803681D4 00365114 38 E0 00 30 */ li r7, 0x30
/* 803681D8 00365118 40 80 00 48 */ bge lbl_80368220
/* 803681DC 0036511C 54 83 E8 FF */ rlwinm. r3, r4, 0x1d, 3, 0x1f
/* 803681E0 00365120 7C 69 03 A6 */ mtctr r3
/* 803681E4 00365124 41 82 00 30 */ beq lbl_80368214
lbl_803681E8:
/* 803681E8 00365128 98 E6 FF FF */ stb r7, -1(r6)
/* 803681EC 0036512C 98 E6 FF FE */ stb r7, -2(r6)
/* 803681F0 00365130 98 E6 FF FD */ stb r7, -3(r6)
/* 803681F4 00365134 98 E6 FF FC */ stb r7, -4(r6)
/* 803681F8 00365138 98 E6 FF FB */ stb r7, -5(r6)
/* 803681FC 0036513C 98 E6 FF FA */ stb r7, -6(r6)
/* 80368200 00365140 98 E6 FF F9 */ stb r7, -7(r6)
/* 80368204 00365144 9C E6 FF F8 */ stbu r7, -8(r6)
/* 80368208 00365148 42 00 FF E0 */ bdnz lbl_803681E8
/* 8036820C 0036514C 70 84 00 07 */ andi. r4, r4, 7
/* 80368210 00365150 41 82 00 10 */ beq lbl_80368220
lbl_80368214:
/* 80368214 00365154 7C 89 03 A6 */ mtctr r4
lbl_80368218:
/* 80368218 00365158 9C E6 FF FF */ stbu r7, -1(r6)
/* 8036821C 0036515C 42 00 FF FC */ bdnz lbl_80368218
lbl_80368220:
/* 80368220 00365160 28 00 00 10 */ cmplwi r0, 0x10
/* 80368224 00365164 40 82 00 20 */ bne lbl_80368244
/* 80368228 00365168 88 05 00 03 */ lbz r0, 3(r5)
/* 8036822C 0036516C 28 00 00 00 */ cmplwi r0, 0
/* 80368230 00365170 41 82 00 14 */ beq lbl_80368244
/* 80368234 00365174 88 65 00 05 */ lbz r3, 5(r5)
/* 80368238 00365178 38 00 00 30 */ li r0, 0x30
/* 8036823C 0036517C 98 66 FF FF */ stb r3, -1(r6)
/* 80368240 00365180 9C 06 FF FE */ stbu r0, -2(r6)
lbl_80368244:
/* 80368244 00365184 2C 08 00 00 */ cmpwi r8, 0
/* 80368248 00365188 41 82 00 10 */ beq lbl_80368258
/* 8036824C 0036518C 38 00 00 2D */ li r0, 0x2d
/* 80368250 00365190 9C 06 FF FF */ stbu r0, -1(r6)
/* 80368254 00365194 48 00 00 2C */ b lbl_80368280
lbl_80368258:
/* 80368258 00365198 88 05 00 01 */ lbz r0, 1(r5)
/* 8036825C 0036519C 28 00 00 01 */ cmplwi r0, 1
/* 80368260 003651A0 40 82 00 10 */ bne lbl_80368270
/* 80368264 003651A4 38 00 00 2B */ li r0, 0x2b
/* 80368268 003651A8 9C 06 FF FF */ stbu r0, -1(r6)
/* 8036826C 003651AC 48 00 00 14 */ b lbl_80368280
lbl_80368270:
/* 80368270 003651B0 28 00 00 02 */ cmplwi r0, 2
/* 80368274 003651B4 40 82 00 0C */ bne lbl_80368280
/* 80368278 003651B8 38 00 00 20 */ li r0, 0x20
/* 8036827C 003651BC 9C 06 FF FF */ stbu r0, -1(r6)
lbl_80368280:
/* 80368280 003651C0 7C C3 33 78 */ mr r3, r6
/* 80368284 003651C4 4E 80 00 20 */ blr
.global func_80368288
func_80368288:
/* 80368288 003651C8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036828C 003651CC 7C 08 02 A6 */ mflr r0
/* 80368290 003651D0 38 E0 00 00 */ li r7, 0
/* 80368294 003651D4 88 C3 00 01 */ lbz r6, 1(r3)
/* 80368298 003651D8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036829C 003651DC 38 00 00 01 */ li r0, 1
/* 803682A0 003651E0 7C C6 07 74 */ extsb r6, r6
/* 803682A4 003651E4 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 803682A8 003651E8 2C 06 00 25 */ cmpwi r6, 0x25
/* 803682AC 003651EC 3B E3 00 01 */ addi r31, r3, 1
/* 803682B0 003651F0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 803682B4 003651F4 7C BE 2B 78 */ mr r30, r5
/* 803682B8 003651F8 93 A1 00 24 */ stw r29, 0x24(r1)
/* 803682BC 003651FC 7C 9D 23 78 */ mr r29, r4
/* 803682C0 00365200 98 E1 00 09 */ stb r7, 9(r1)
/* 803682C4 00365204 98 01 00 08 */ stb r0, 8(r1)
/* 803682C8 00365208 98 E1 00 0A */ stb r7, 0xa(r1)
/* 803682CC 0036520C 98 E1 00 0B */ stb r7, 0xb(r1)
/* 803682D0 00365210 98 E1 00 0C */ stb r7, 0xc(r1)
/* 803682D4 00365214 90 E1 00 10 */ stw r7, 0x10(r1)
/* 803682D8 00365218 90 E1 00 14 */ stw r7, 0x14(r1)
/* 803682DC 0036521C 40 82 00 28 */ bne lbl_80368304
/* 803682E0 00365220 98 C1 00 0D */ stb r6, 0xd(r1)
/* 803682E4 00365224 38 7F 00 01 */ addi r3, r31, 1
/* 803682E8 00365228 80 81 00 08 */ lwz r4, 8(r1)
/* 803682EC 0036522C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803682F0 00365230 90 9E 00 00 */ stw r4, 0(r30)
/* 803682F4 00365234 90 1E 00 04 */ stw r0, 4(r30)
/* 803682F8 00365238 90 FE 00 08 */ stw r7, 8(r30)
/* 803682FC 0036523C 90 FE 00 0C */ stw r7, 0xc(r30)
/* 80368300 00365240 48 00 04 70 */ b lbl_80368770
lbl_80368304:
/* 80368304 00365244 38 06 FF E0 */ addi r0, r6, -32
/* 80368308 00365248 38 80 00 01 */ li r4, 1
/* 8036830C 0036524C 28 00 00 10 */ cmplwi r0, 0x10
/* 80368310 00365250 41 81 00 70 */ bgt lbl_80368380
/* 80368314 00365254 3C 60 80 3D */ lis r3, lbl_803D3100@ha
/* 80368318 00365258 54 00 10 3A */ slwi r0, r0, 2
/* 8036831C 0036525C 38 63 31 00 */ addi r3, r3, lbl_803D3100@l
/* 80368320 00365260 7C 03 00 2E */ lwzx r0, r3, r0
/* 80368324 00365264 7C 09 03 A6 */ mtctr r0
/* 80368328 00365268 4E 80 04 20 */ bctr
/* 8036832C 0036526C 38 00 00 00 */ li r0, 0
/* 80368330 00365270 98 01 00 08 */ stb r0, 8(r1)
/* 80368334 00365274 48 00 00 50 */ b lbl_80368384
/* 80368338 00365278 38 00 00 01 */ li r0, 1
/* 8036833C 0036527C 98 01 00 09 */ stb r0, 9(r1)
/* 80368340 00365280 48 00 00 44 */ b lbl_80368384
/* 80368344 00365284 88 01 00 09 */ lbz r0, 9(r1)
/* 80368348 00365288 28 00 00 01 */ cmplwi r0, 1
/* 8036834C 0036528C 41 82 00 38 */ beq lbl_80368384
/* 80368350 00365290 38 00 00 02 */ li r0, 2
/* 80368354 00365294 98 01 00 09 */ stb r0, 9(r1)
/* 80368358 00365298 48 00 00 2C */ b lbl_80368384
/* 8036835C 0036529C 38 00 00 01 */ li r0, 1
/* 80368360 003652A0 98 01 00 0B */ stb r0, 0xb(r1)
/* 80368364 003652A4 48 00 00 20 */ b lbl_80368384
/* 80368368 003652A8 88 01 00 08 */ lbz r0, 8(r1)
/* 8036836C 003652AC 28 00 00 00 */ cmplwi r0, 0
/* 80368370 003652B0 41 82 00 14 */ beq lbl_80368384
/* 80368374 003652B4 38 00 00 02 */ li r0, 2
/* 80368378 003652B8 98 01 00 08 */ stb r0, 8(r1)
/* 8036837C 003652BC 48 00 00 08 */ b lbl_80368384
lbl_80368380:
/* 80368380 003652C0 38 80 00 00 */ li r4, 0
lbl_80368384:
/* 80368384 003652C4 2C 04 00 00 */ cmpwi r4, 0
/* 80368388 003652C8 41 82 00 10 */ beq lbl_80368398
/* 8036838C 003652CC 8C DF 00 01 */ lbzu r6, 1(r31)
/* 80368390 003652D0 7C C6 07 74 */ extsb r6, r6
/* 80368394 003652D4 4B FF FF 70 */ b lbl_80368304
lbl_80368398:
/* 80368398 003652D8 2C 06 00 2A */ cmpwi r6, 0x2a
/* 8036839C 003652DC 40 82 00 3C */ bne lbl_803683D8
/* 803683A0 003652E0 7F A3 EB 78 */ mr r3, r29
/* 803683A4 003652E4 38 80 00 01 */ li r4, 1
/* 803683A8 003652E8 4B FF 97 6D */ bl func_80361B14
/* 803683AC 003652EC 80 03 00 00 */ lwz r0, 0(r3)
/* 803683B0 003652F0 2C 00 00 00 */ cmpwi r0, 0
/* 803683B4 003652F4 90 01 00 10 */ stw r0, 0x10(r1)
/* 803683B8 003652F8 40 80 00 14 */ bge lbl_803683CC
/* 803683BC 003652FC 7C 00 00 D0 */ neg r0, r0
/* 803683C0 00365300 38 60 00 00 */ li r3, 0
/* 803683C4 00365304 98 61 00 08 */ stb r3, 8(r1)
/* 803683C8 00365308 90 01 00 10 */ stw r0, 0x10(r1)
lbl_803683CC:
/* 803683CC 0036530C 8C DF 00 01 */ lbzu r6, 1(r31)
/* 803683D0 00365310 7C C6 07 74 */ extsb r6, r6
/* 803683D4 00365314 48 00 00 3C */ b lbl_80368410
lbl_803683D8:
/* 803683D8 00365318 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 803683DC 0036531C 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 803683E0 00365320 48 00 00 20 */ b lbl_80368400
lbl_803683E4:
/* 803683E4 00365324 80 01 00 10 */ lwz r0, 0x10(r1)
/* 803683E8 00365328 1C 00 00 0A */ mulli r0, r0, 0xa
/* 803683EC 0036532C 7C 86 02 14 */ add r4, r6, r0
/* 803683F0 00365330 8C DF 00 01 */ lbzu r6, 1(r31)
/* 803683F4 00365334 38 04 FF D0 */ addi r0, r4, -48
/* 803683F8 00365338 90 01 00 10 */ stw r0, 0x10(r1)
/* 803683FC 0036533C 7C C6 07 74 */ extsb r6, r6
lbl_80368400:
/* 80368400 00365340 54 C0 06 3E */ clrlwi r0, r6, 0x18
/* 80368404 00365344 7C 03 00 AE */ lbzx r0, r3, r0
/* 80368408 00365348 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8036840C 0036534C 40 82 FF D8 */ bne lbl_803683E4
lbl_80368410:
/* 80368410 00365350 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 80368414 00365354 2C 05 01 FD */ cmpwi r5, 0x1fd
/* 80368418 00365358 40 81 00 30 */ ble lbl_80368448
/* 8036841C 0036535C 38 00 00 FF */ li r0, 0xff
/* 80368420 00365360 80 81 00 08 */ lwz r4, 8(r1)
/* 80368424 00365364 98 01 00 0D */ stb r0, 0xd(r1)
/* 80368428 00365368 38 7F 00 01 */ addi r3, r31, 1
/* 8036842C 0036536C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80368430 00365370 90 9E 00 00 */ stw r4, 0(r30)
/* 80368434 00365374 80 81 00 0C */ lwz r4, 0xc(r1)
/* 80368438 00365378 90 9E 00 04 */ stw r4, 4(r30)
/* 8036843C 0036537C 90 BE 00 08 */ stw r5, 8(r30)
/* 80368440 00365380 90 1E 00 0C */ stw r0, 0xc(r30)
/* 80368444 00365384 48 00 03 2C */ b lbl_80368770
lbl_80368448:
/* 80368448 00365388 2C 06 00 2E */ cmpwi r6, 0x2e
/* 8036844C 0036538C 40 82 00 84 */ bne lbl_803684D0
/* 80368450 00365390 8C DF 00 01 */ lbzu r6, 1(r31)
/* 80368454 00365394 38 00 00 01 */ li r0, 1
/* 80368458 00365398 98 01 00 0A */ stb r0, 0xa(r1)
/* 8036845C 0036539C 7C C6 07 74 */ extsb r6, r6
/* 80368460 003653A0 2C 06 00 2A */ cmpwi r6, 0x2a
/* 80368464 003653A4 40 82 00 34 */ bne lbl_80368498
/* 80368468 003653A8 7F A3 EB 78 */ mr r3, r29
/* 8036846C 003653AC 38 80 00 01 */ li r4, 1
/* 80368470 003653B0 4B FF 96 A5 */ bl func_80361B14
/* 80368474 003653B4 80 03 00 00 */ lwz r0, 0(r3)
/* 80368478 003653B8 2C 00 00 00 */ cmpwi r0, 0
/* 8036847C 003653BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80368480 003653C0 40 80 00 0C */ bge lbl_8036848C
/* 80368484 003653C4 38 00 00 00 */ li r0, 0
/* 80368488 003653C8 98 01 00 0A */ stb r0, 0xa(r1)
lbl_8036848C:
/* 8036848C 003653CC 8C DF 00 01 */ lbzu r6, 1(r31)
/* 80368490 003653D0 7C C6 07 74 */ extsb r6, r6
/* 80368494 003653D4 48 00 00 3C */ b lbl_803684D0
lbl_80368498:
/* 80368498 003653D8 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 8036849C 003653DC 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 803684A0 003653E0 48 00 00 20 */ b lbl_803684C0
lbl_803684A4:
/* 803684A4 003653E4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803684A8 003653E8 1C 00 00 0A */ mulli r0, r0, 0xa
/* 803684AC 003653EC 7C 86 02 14 */ add r4, r6, r0
/* 803684B0 003653F0 8C DF 00 01 */ lbzu r6, 1(r31)
/* 803684B4 003653F4 38 04 FF D0 */ addi r0, r4, -48
/* 803684B8 003653F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 803684BC 003653FC 7C C6 07 74 */ extsb r6, r6
lbl_803684C0:
/* 803684C0 00365400 54 C0 06 3E */ clrlwi r0, r6, 0x18
/* 803684C4 00365404 7C 03 00 AE */ lbzx r0, r3, r0
/* 803684C8 00365408 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 803684CC 0036540C 40 82 FF D8 */ bne lbl_803684A4
lbl_803684D0:
/* 803684D0 00365410 2C 06 00 68 */ cmpwi r6, 0x68
/* 803684D4 00365414 38 80 00 01 */ li r4, 1
/* 803684D8 00365418 41 82 00 20 */ beq lbl_803684F8
/* 803684DC 0036541C 40 80 00 10 */ bge lbl_803684EC
/* 803684E0 00365420 2C 06 00 4C */ cmpwi r6, 0x4c
/* 803684E4 00365424 41 82 00 68 */ beq lbl_8036854C
/* 803684E8 00365428 48 00 00 70 */ b lbl_80368558
lbl_803684EC:
/* 803684EC 0036542C 2C 06 00 6C */ cmpwi r6, 0x6c
/* 803684F0 00365430 41 82 00 30 */ beq lbl_80368520
/* 803684F4 00365434 48 00 00 64 */ b lbl_80368558
lbl_803684F8:
/* 803684F8 00365438 88 1F 00 01 */ lbz r0, 1(r31)
/* 803684FC 0036543C 38 60 00 02 */ li r3, 2
/* 80368500 00365440 98 61 00 0C */ stb r3, 0xc(r1)
/* 80368504 00365444 7C 00 07 74 */ extsb r0, r0
/* 80368508 00365448 2C 00 00 68 */ cmpwi r0, 0x68
/* 8036850C 0036544C 40 82 00 50 */ bne lbl_8036855C
/* 80368510 00365450 98 81 00 0C */ stb r4, 0xc(r1)
/* 80368514 00365454 7C 06 03 78 */ mr r6, r0
/* 80368518 00365458 3B FF 00 01 */ addi r31, r31, 1
/* 8036851C 0036545C 48 00 00 40 */ b lbl_8036855C
lbl_80368520:
/* 80368520 00365460 88 1F 00 01 */ lbz r0, 1(r31)
/* 80368524 00365464 38 60 00 03 */ li r3, 3
/* 80368528 00365468 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036852C 0036546C 7C 03 07 74 */ extsb r3, r0
/* 80368530 00365470 2C 03 00 6C */ cmpwi r3, 0x6c
/* 80368534 00365474 40 82 00 28 */ bne lbl_8036855C
/* 80368538 00365478 38 00 00 04 */ li r0, 4
/* 8036853C 0036547C 7C 66 1B 78 */ mr r6, r3
/* 80368540 00365480 98 01 00 0C */ stb r0, 0xc(r1)
/* 80368544 00365484 3B FF 00 01 */ addi r31, r31, 1
/* 80368548 00365488 48 00 00 14 */ b lbl_8036855C
lbl_8036854C:
/* 8036854C 0036548C 38 00 00 05 */ li r0, 5
/* 80368550 00365490 98 01 00 0C */ stb r0, 0xc(r1)
/* 80368554 00365494 48 00 00 08 */ b lbl_8036855C
lbl_80368558:
/* 80368558 00365498 38 80 00 00 */ li r4, 0
lbl_8036855C:
/* 8036855C 0036549C 2C 04 00 00 */ cmpwi r4, 0
/* 80368560 003654A0 41 82 00 0C */ beq lbl_8036856C
/* 80368564 003654A4 8C DF 00 01 */ lbzu r6, 1(r31)
/* 80368568 003654A8 7C C6 07 74 */ extsb r6, r6
lbl_8036856C:
/* 8036856C 003654AC 38 06 FF BF */ addi r0, r6, -65
/* 80368570 003654B0 98 C1 00 0D */ stb r6, 0xd(r1)
/* 80368574 003654B4 28 00 00 37 */ cmplwi r0, 0x37
/* 80368578 003654B8 41 81 01 CC */ bgt lbl_80368744
/* 8036857C 003654BC 3C 60 80 3D */ lis r3, lbl_803D3020@ha
/* 80368580 003654C0 54 00 10 3A */ slwi r0, r0, 2
/* 80368584 003654C4 38 63 30 20 */ addi r3, r3, lbl_803D3020@l
/* 80368588 003654C8 7C 03 00 2E */ lwzx r0, r3, r0
/* 8036858C 003654CC 7C 09 03 A6 */ mtctr r0
/* 80368590 003654D0 4E 80 04 20 */ bctr
/* 80368594 003654D4 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80368598 003654D8 28 00 00 05 */ cmplwi r0, 5
/* 8036859C 003654DC 40 82 00 10 */ bne lbl_803685AC
/* 803685A0 003654E0 38 00 00 FF */ li r0, 0xff
/* 803685A4 003654E4 98 01 00 0D */ stb r0, 0xd(r1)
/* 803685A8 003654E8 48 00 01 A4 */ b lbl_8036874C
lbl_803685AC:
/* 803685AC 003654EC 88 01 00 0A */ lbz r0, 0xa(r1)
/* 803685B0 003654F0 28 00 00 00 */ cmplwi r0, 0
/* 803685B4 003654F4 40 82 00 10 */ bne lbl_803685C4
/* 803685B8 003654F8 38 00 00 01 */ li r0, 1
/* 803685BC 003654FC 90 01 00 14 */ stw r0, 0x14(r1)
/* 803685C0 00365500 48 00 01 8C */ b lbl_8036874C
lbl_803685C4:
/* 803685C4 00365504 88 01 00 08 */ lbz r0, 8(r1)
/* 803685C8 00365508 28 00 00 02 */ cmplwi r0, 2
/* 803685CC 0036550C 40 82 01 80 */ bne lbl_8036874C
/* 803685D0 00365510 38 00 00 01 */ li r0, 1
/* 803685D4 00365514 98 01 00 08 */ stb r0, 8(r1)
/* 803685D8 00365518 48 00 01 74 */ b lbl_8036874C
/* 803685DC 0036551C 88 01 00 0C */ lbz r0, 0xc(r1)
/* 803685E0 00365520 28 00 00 02 */ cmplwi r0, 2
/* 803685E4 00365524 41 82 00 0C */ beq lbl_803685F0
/* 803685E8 00365528 28 00 00 04 */ cmplwi r0, 4
/* 803685EC 0036552C 40 82 00 10 */ bne lbl_803685FC
lbl_803685F0:
/* 803685F0 00365530 38 00 00 FF */ li r0, 0xff
/* 803685F4 00365534 98 01 00 0D */ stb r0, 0xd(r1)
/* 803685F8 00365538 48 00 01 54 */ b lbl_8036874C
lbl_803685FC:
/* 803685FC 0036553C 88 01 00 0A */ lbz r0, 0xa(r1)
/* 80368600 00365540 28 00 00 00 */ cmplwi r0, 0
/* 80368604 00365544 40 82 01 48 */ bne lbl_8036874C
/* 80368608 00365548 38 00 00 06 */ li r0, 6
/* 8036860C 0036554C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80368610 00365550 48 00 01 3C */ b lbl_8036874C
/* 80368614 00365554 88 01 00 0A */ lbz r0, 0xa(r1)
/* 80368618 00365558 28 00 00 00 */ cmplwi r0, 0
/* 8036861C 0036555C 40 82 00 0C */ bne lbl_80368628
/* 80368620 00365560 38 00 00 0D */ li r0, 0xd
/* 80368624 00365564 90 01 00 14 */ stw r0, 0x14(r1)
lbl_80368628:
/* 80368628 00365568 88 01 00 0C */ lbz r0, 0xc(r1)
/* 8036862C 0036556C 28 00 00 02 */ cmplwi r0, 2
/* 80368630 00365570 41 82 00 14 */ beq lbl_80368644
/* 80368634 00365574 28 00 00 04 */ cmplwi r0, 4
/* 80368638 00365578 41 82 00 0C */ beq lbl_80368644
/* 8036863C 0036557C 28 00 00 01 */ cmplwi r0, 1
/* 80368640 00365580 40 82 01 0C */ bne lbl_8036874C
lbl_80368644:
/* 80368644 00365584 38 00 00 FF */ li r0, 0xff
/* 80368648 00365588 98 01 00 0D */ stb r0, 0xd(r1)
/* 8036864C 0036558C 48 00 01 00 */ b lbl_8036874C
/* 80368650 00365590 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80368654 00365594 2C 00 00 00 */ cmpwi r0, 0
/* 80368658 00365598 40 82 00 0C */ bne lbl_80368664
/* 8036865C 0036559C 38 00 00 01 */ li r0, 1
/* 80368660 003655A0 90 01 00 14 */ stw r0, 0x14(r1)
lbl_80368664:
/* 80368664 003655A4 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80368668 003655A8 28 00 00 02 */ cmplwi r0, 2
/* 8036866C 003655AC 41 82 00 14 */ beq lbl_80368680
/* 80368670 003655B0 28 00 00 04 */ cmplwi r0, 4
/* 80368674 003655B4 41 82 00 0C */ beq lbl_80368680
/* 80368678 003655B8 28 00 00 01 */ cmplwi r0, 1
/* 8036867C 003655BC 40 82 00 10 */ bne lbl_8036868C
lbl_80368680:
/* 80368680 003655C0 38 00 00 FF */ li r0, 0xff
/* 80368684 003655C4 98 01 00 0D */ stb r0, 0xd(r1)
/* 80368688 003655C8 48 00 00 C4 */ b lbl_8036874C
lbl_8036868C:
/* 8036868C 003655CC 88 01 00 0A */ lbz r0, 0xa(r1)
/* 80368690 003655D0 28 00 00 00 */ cmplwi r0, 0
/* 80368694 003655D4 40 82 00 B8 */ bne lbl_8036874C
/* 80368698 003655D8 38 00 00 06 */ li r0, 6
/* 8036869C 003655DC 90 01 00 14 */ stw r0, 0x14(r1)
/* 803686A0 003655E0 48 00 00 AC */ b lbl_8036874C
/* 803686A4 003655E4 38 A0 00 78 */ li r5, 0x78
/* 803686A8 003655E8 38 80 00 01 */ li r4, 1
/* 803686AC 003655EC 38 60 00 03 */ li r3, 3
/* 803686B0 003655F0 38 00 00 08 */ li r0, 8
/* 803686B4 003655F4 98 A1 00 0D */ stb r5, 0xd(r1)
/* 803686B8 003655F8 98 81 00 0B */ stb r4, 0xb(r1)
/* 803686BC 003655FC 98 61 00 0C */ stb r3, 0xc(r1)
/* 803686C0 00365600 90 01 00 14 */ stw r0, 0x14(r1)
/* 803686C4 00365604 48 00 00 88 */ b lbl_8036874C
/* 803686C8 00365608 88 61 00 0C */ lbz r3, 0xc(r1)
/* 803686CC 0036560C 28 03 00 03 */ cmplwi r3, 3
/* 803686D0 00365610 40 82 00 10 */ bne lbl_803686E0
/* 803686D4 00365614 38 00 00 06 */ li r0, 6
/* 803686D8 00365618 98 01 00 0C */ stb r0, 0xc(r1)
/* 803686DC 0036561C 48 00 00 70 */ b lbl_8036874C
lbl_803686E0:
/* 803686E0 00365620 88 01 00 0A */ lbz r0, 0xa(r1)
/* 803686E4 00365624 28 00 00 00 */ cmplwi r0, 0
/* 803686E8 00365628 40 82 00 0C */ bne lbl_803686F4
/* 803686EC 0036562C 28 03 00 00 */ cmplwi r3, 0
/* 803686F0 00365630 41 82 00 5C */ beq lbl_8036874C
lbl_803686F4:
/* 803686F4 00365634 38 00 00 FF */ li r0, 0xff
/* 803686F8 00365638 98 01 00 0D */ stb r0, 0xd(r1)
/* 803686FC 0036563C 48 00 00 50 */ b lbl_8036874C
/* 80368700 00365640 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80368704 00365644 28 00 00 03 */ cmplwi r0, 3
/* 80368708 00365648 40 82 00 10 */ bne lbl_80368718
/* 8036870C 0036564C 38 00 00 06 */ li r0, 6
/* 80368710 00365650 98 01 00 0C */ stb r0, 0xc(r1)
/* 80368714 00365654 48 00 00 38 */ b lbl_8036874C
lbl_80368718:
/* 80368718 00365658 28 00 00 00 */ cmplwi r0, 0
/* 8036871C 0036565C 41 82 00 30 */ beq lbl_8036874C
/* 80368720 00365660 38 00 00 FF */ li r0, 0xff
/* 80368724 00365664 98 01 00 0D */ stb r0, 0xd(r1)
/* 80368728 00365668 48 00 00 24 */ b lbl_8036874C
/* 8036872C 0036566C 88 01 00 0C */ lbz r0, 0xc(r1)
/* 80368730 00365670 28 00 00 05 */ cmplwi r0, 5
/* 80368734 00365674 40 82 00 18 */ bne lbl_8036874C
/* 80368738 00365678 38 00 00 FF */ li r0, 0xff
/* 8036873C 0036567C 98 01 00 0D */ stb r0, 0xd(r1)
/* 80368740 00365680 48 00 00 0C */ b lbl_8036874C
lbl_80368744:
/* 80368744 00365684 38 00 00 FF */ li r0, 0xff
/* 80368748 00365688 98 01 00 0D */ stb r0, 0xd(r1)
lbl_8036874C:
/* 8036874C 0036568C 80 81 00 08 */ lwz r4, 8(r1)
/* 80368750 00365690 38 7F 00 01 */ addi r3, r31, 1
/* 80368754 00365694 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80368758 00365698 90 9E 00 00 */ stw r4, 0(r30)
/* 8036875C 0036569C 80 81 00 10 */ lwz r4, 0x10(r1)
/* 80368760 003656A0 90 1E 00 04 */ stw r0, 4(r30)
/* 80368764 003656A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80368768 003656A8 90 9E 00 08 */ stw r4, 8(r30)
/* 8036876C 003656AC 90 1E 00 0C */ stw r0, 0xc(r30)
lbl_80368770:
/* 80368770 003656B0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80368774 003656B4 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80368778 003656B8 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8036877C 003656BC 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80368780 003656C0 7C 08 03 A6 */ mtlr r0
/* 80368784 003656C4 38 21 00 30 */ addi r1, r1, 0x30
/* 80368788 003656C8 4E 80 00 20 */ blr
lbl_8036878C:
/* 8036878C 003656CC 2C 05 00 01 */ cmpwi r5, 1
/* 80368790 003656D0 7C 66 1B 78 */ mr r6, r3
/* 80368794 003656D4 41 82 00 4C */ beq lbl_803687E0
/* 80368798 003656D8 40 80 00 10 */ bge lbl_803687A8
/* 8036879C 003656DC 2C 05 00 00 */ cmpwi r5, 0
/* 803687A0 003656E0 40 80 00 14 */ bge lbl_803687B4
/* 803687A4 003656E4 48 00 00 70 */ b lbl_80368814
lbl_803687A8:
/* 803687A8 003656E8 2C 05 00 03 */ cmpwi r5, 3
/* 803687AC 003656EC 40 80 00 68 */ bge lbl_80368814
/* 803687B0 003656F0 48 00 00 5C */ b lbl_8036880C
lbl_803687B4:
/* 803687B4 003656F4 80 86 00 00 */ lwz r4, 0(r6)
/* 803687B8 003656F8 88 64 00 00 */ lbz r3, 0(r4)
/* 803687BC 003656FC 7C 60 07 75 */ extsb. r0, r3
/* 803687C0 00365700 40 82 00 14 */ bne lbl_803687D4
/* 803687C4 00365704 38 00 00 01 */ li r0, 1
/* 803687C8 00365708 38 60 FF FF */ li r3, -1
/* 803687CC 0036570C 90 06 00 04 */ stw r0, 4(r6)
/* 803687D0 00365710 4E 80 00 20 */ blr
lbl_803687D4:
/* 803687D4 00365714 38 04 00 01 */ addi r0, r4, 1
/* 803687D8 00365718 90 06 00 00 */ stw r0, 0(r6)
/* 803687DC 0036571C 4E 80 00 20 */ blr
lbl_803687E0:
/* 803687E0 00365720 80 06 00 04 */ lwz r0, 4(r6)
/* 803687E4 00365724 2C 00 00 00 */ cmpwi r0, 0
/* 803687E8 00365728 40 82 00 14 */ bne lbl_803687FC
/* 803687EC 0036572C 80 66 00 00 */ lwz r3, 0(r6)
/* 803687F0 00365730 38 03 FF FF */ addi r0, r3, -1
/* 803687F4 00365734 90 06 00 00 */ stw r0, 0(r6)
/* 803687F8 00365738 48 00 00 0C */ b lbl_80368804
lbl_803687FC:
/* 803687FC 0036573C 38 00 00 00 */ li r0, 0
/* 80368800 00365740 90 06 00 04 */ stw r0, 4(r6)
lbl_80368804:
/* 80368804 00365744 7C 83 23 78 */ mr r3, r4
/* 80368808 00365748 4E 80 00 20 */ blr
lbl_8036880C:
/* 8036880C 0036574C 80 66 00 04 */ lwz r3, 4(r6)
/* 80368810 00365750 4E 80 00 20 */ blr
lbl_80368814:
/* 80368814 00365754 38 60 00 00 */ li r3, 0
/* 80368818 00365758 4E 80 00 20 */ blr
.global func_8036881C
func_8036881C:
/* 8036881C 0036575C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80368820 00365760 7C 08 02 A6 */ mflr r0
/* 80368824 00365764 90 01 00 14 */ stw r0, 0x14(r1)
/* 80368828 00365768 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036882C 0036576C 93 C1 00 08 */ stw r30, 8(r1)
/* 80368830 00365770 7C 7E 1B 78 */ mr r30, r3
/* 80368834 00365774 2C 1E 00 01 */ cmpwi r30, 1
/* 80368838 00365778 41 80 00 0C */ blt lbl_80368844
/* 8036883C 0036577C 2C 1E 00 06 */ cmpwi r30, 6
/* 80368840 00365780 40 81 00 0C */ ble lbl_8036884C
lbl_80368844:
/* 80368844 00365784 38 60 FF FF */ li r3, -1
/* 80368848 00365788 48 00 00 7C */ b lbl_803688C4
lbl_8036884C:
/* 8036884C 0036578C 38 60 00 04 */ li r3, 4
/* 80368850 00365790 4B FF CC 19 */ bl func_80365468
/* 80368854 00365794 3C 60 80 45 */ lis r3, lbl_8044D878@ha
/* 80368858 00365798 57 C0 10 3A */ slwi r0, r30, 2
/* 8036885C 0036579C 38 63 D8 78 */ addi r3, r3, lbl_8044D878@l
/* 80368860 003657A0 7C 63 02 14 */ add r3, r3, r0
/* 80368864 003657A4 87 E3 FF FC */ lwzu r31, -4(r3)
/* 80368868 003657A8 28 1F 00 01 */ cmplwi r31, 1
/* 8036886C 003657AC 41 82 00 0C */ beq lbl_80368878
/* 80368870 003657B0 38 00 00 00 */ li r0, 0
/* 80368874 003657B4 90 03 00 00 */ stw r0, 0(r3)
lbl_80368878:
/* 80368878 003657B8 38 60 00 04 */ li r3, 4
/* 8036887C 003657BC 4B FF CB E9 */ bl func_80365464
/* 80368880 003657C0 28 1F 00 01 */ cmplwi r31, 1
/* 80368884 003657C4 41 82 00 14 */ beq lbl_80368898
/* 80368888 003657C8 28 1F 00 00 */ cmplwi r31, 0
/* 8036888C 003657CC 40 82 00 14 */ bne lbl_803688A0
/* 80368890 003657D0 2C 1E 00 01 */ cmpwi r30, 1
/* 80368894 003657D4 40 82 00 0C */ bne lbl_803688A0
lbl_80368898:
/* 80368898 003657D8 38 60 00 00 */ li r3, 0
/* 8036889C 003657DC 48 00 00 28 */ b lbl_803688C4
lbl_803688A0:
/* 803688A0 003657E0 28 1F 00 00 */ cmplwi r31, 0
/* 803688A4 003657E4 40 82 00 0C */ bne lbl_803688B0
/* 803688A8 003657E8 38 60 00 00 */ li r3, 0
/* 803688AC 003657EC 4B FF A1 21 */ bl func_803629CC
lbl_803688B0:
/* 803688B0 003657F0 7F EC FB 78 */ mr r12, r31
/* 803688B4 003657F4 7F C3 F3 78 */ mr r3, r30
/* 803688B8 003657F8 7D 89 03 A6 */ mtctr r12
/* 803688BC 003657FC 4E 80 04 21 */ bctrl
/* 803688C0 00365800 38 60 00 00 */ li r3, 0
lbl_803688C4:
/* 803688C4 00365804 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803688C8 00365808 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803688CC 0036580C 83 C1 00 08 */ lwz r30, 8(r1)
/* 803688D0 00365810 7C 08 03 A6 */ mtlr r0
/* 803688D4 00365814 38 21 00 10 */ addi r1, r1, 0x10
/* 803688D8 00365818 4E 80 00 20 */ blr
.global func_803688DC
func_803688DC:
/* 803688DC 0036581C 38 A3 FF FF */ addi r5, r3, -1
/* 803688E0 00365820 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 803688E4 00365824 38 60 00 00 */ li r3, 0
/* 803688E8 00365828 48 00 00 10 */ b lbl_803688F8
lbl_803688EC:
/* 803688EC 0036582C 7C 04 00 40 */ cmplw r4, r0
/* 803688F0 00365830 40 82 00 08 */ bne lbl_803688F8
/* 803688F4 00365834 7C A3 2B 78 */ mr r3, r5
lbl_803688F8:
/* 803688F8 00365838 8C 85 00 01 */ lbzu r4, 1(r5)
/* 803688FC 0036583C 28 04 00 00 */ cmplwi r4, 0
/* 80368900 00365840 40 82 FF EC */ bne lbl_803688EC
/* 80368904 00365844 28 03 00 00 */ cmplwi r3, 0
/* 80368908 00365848 4C 82 00 20 */ bnelr
/* 8036890C 0036584C 28 00 00 00 */ cmplwi r0, 0
/* 80368910 00365850 41 82 00 0C */ beq lbl_8036891C
/* 80368914 00365854 38 60 00 00 */ li r3, 0
/* 80368918 00365858 4E 80 00 20 */ blr
lbl_8036891C:
/* 8036891C 0036585C 7C A3 2B 78 */ mr r3, r5
/* 80368920 00365860 4E 80 00 20 */ blr
.global func_80368924
func_80368924:
/* 80368924 00365864 38 63 FF FF */ addi r3, r3, -1
/* 80368928 00365868 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 8036892C 0036586C 48 00 00 0C */ b lbl_80368938
lbl_80368930:
/* 80368930 00365870 7C 04 00 40 */ cmplw r4, r0
/* 80368934 00365874 4D 82 00 20 */ beqlr
lbl_80368938:
/* 80368938 00365878 8C 83 00 01 */ lbzu r4, 1(r3)
/* 8036893C 0036587C 28 04 00 00 */ cmplwi r4, 0
/* 80368940 00365880 40 82 FF F0 */ bne lbl_80368930
/* 80368944 00365884 28 00 00 00 */ cmplwi r0, 0
/* 80368948 00365888 4D 82 00 20 */ beqlr
/* 8036894C 0036588C 38 60 00 00 */ li r3, 0
/* 80368950 00365890 4E 80 00 20 */ blr
.global func_80368954
func_80368954:
/* 80368954 00365894 38 63 FF FF */ addi r3, r3, -1
/* 80368958 00365898 38 84 FF FF */ addi r4, r4, -1
/* 8036895C 0036589C 38 C5 00 01 */ addi r6, r5, 1
/* 80368960 003658A0 48 00 00 24 */ b lbl_80368984
lbl_80368964:
/* 80368964 003658A4 8C 03 00 01 */ lbzu r0, 1(r3)
/* 80368968 003658A8 8C A4 00 01 */ lbzu r5, 1(r4)
/* 8036896C 003658AC 7C 00 28 40 */ cmplw r0, r5
/* 80368970 003658B0 41 82 00 0C */ beq lbl_8036897C
/* 80368974 003658B4 7C 65 00 50 */ subf r3, r5, r0
/* 80368978 003658B8 4E 80 00 20 */ blr
lbl_8036897C:
/* 8036897C 003658BC 28 00 00 00 */ cmplwi r0, 0
/* 80368980 003658C0 41 82 00 0C */ beq lbl_8036898C
lbl_80368984:
/* 80368984 003658C4 34 C6 FF FF */ addic. r6, r6, -1
/* 80368988 003658C8 40 82 FF DC */ bne lbl_80368964
lbl_8036898C:
/* 8036898C 003658CC 38 60 00 00 */ li r3, 0
/* 80368990 003658D0 4E 80 00 20 */ blr
.global strcmp
strcmp:
/* 80368994 003658D4 88 A3 00 00 */ lbz r5, 0(r3)
/* 80368998 003658D8 88 04 00 00 */ lbz r0, 0(r4)
/* 8036899C 003658DC 7C 00 28 51 */ subf. r0, r0, r5
/* 803689A0 003658E0 41 82 00 0C */ beq lbl_803689AC
/* 803689A4 003658E4 7C 03 03 78 */ mr r3, r0
/* 803689A8 003658E8 4E 80 00 20 */ blr
lbl_803689AC:
/* 803689AC 003658EC 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 803689B0 003658F0 54 66 07 BE */ clrlwi r6, r3, 0x1e
/* 803689B4 003658F4 7C 00 30 40 */ cmplw r0, r6
/* 803689B8 003658F8 40 82 00 CC */ bne lbl_80368A84
/* 803689BC 003658FC 28 06 00 00 */ cmplwi r6, 0
/* 803689C0 00365900 41 82 00 58 */ beq lbl_80368A18
/* 803689C4 00365904 28 05 00 00 */ cmplwi r5, 0
/* 803689C8 00365908 40 82 00 0C */ bne lbl_803689D4
/* 803689CC 0036590C 38 60 00 00 */ li r3, 0
/* 803689D0 00365910 4E 80 00 20 */ blr
lbl_803689D4:
/* 803689D4 00365914 20 06 00 03 */ subfic r0, r6, 3
/* 803689D8 00365918 7C 09 03 A6 */ mtctr r0
/* 803689DC 0036591C 28 00 00 00 */ cmplwi r0, 0
/* 803689E0 00365920 41 82 00 30 */ beq lbl_80368A10
lbl_803689E4:
/* 803689E4 00365924 8C A3 00 01 */ lbzu r5, 1(r3)
/* 803689E8 00365928 8C 04 00 01 */ lbzu r0, 1(r4)
/* 803689EC 0036592C 7C 00 28 51 */ subf. r0, r0, r5
/* 803689F0 00365930 41 82 00 0C */ beq lbl_803689FC
/* 803689F4 00365934 7C 03 03 78 */ mr r3, r0
/* 803689F8 00365938 4E 80 00 20 */ blr
lbl_803689FC:
/* 803689FC 0036593C 28 05 00 00 */ cmplwi r5, 0
/* 80368A00 00365940 40 82 00 0C */ bne lbl_80368A0C
/* 80368A04 00365944 38 60 00 00 */ li r3, 0
/* 80368A08 00365948 4E 80 00 20 */ blr
lbl_80368A0C:
/* 80368A0C 0036594C 42 00 FF D8 */ bdnz lbl_803689E4
lbl_80368A10:
/* 80368A10 00365950 38 63 00 01 */ addi r3, r3, 1
/* 80368A14 00365954 38 84 00 01 */ addi r4, r4, 1
lbl_80368A18:
/* 80368A18 00365958 80 E3 00 00 */ lwz r7, 0(r3)
/* 80368A1C 0036595C 3C A0 80 81 */ lis r5, 0x80808080@ha
/* 80368A20 00365960 38 C5 80 80 */ addi r6, r5, 0x80808080@l
/* 80368A24 00365964 81 04 00 00 */ lwz r8, 0(r4)
/* 80368A28 00365968 3C A7 FE FF */ addis r5, r7, 0xfeff
/* 80368A2C 0036596C 38 05 FE FF */ addi r0, r5, -257
/* 80368A30 00365970 7C 00 30 39 */ and. r0, r0, r6
/* 80368A34 00365974 40 82 00 38 */ bne lbl_80368A6C
/* 80368A38 00365978 48 00 00 1C */ b lbl_80368A54
lbl_80368A3C:
/* 80368A3C 0036597C 84 E3 00 04 */ lwzu r7, 4(r3)
/* 80368A40 00365980 85 04 00 04 */ lwzu r8, 4(r4)
/* 80368A44 00365984 3C A7 FE FF */ addis r5, r7, 0xfeff
/* 80368A48 00365988 38 05 FE FF */ addi r0, r5, -257
/* 80368A4C 0036598C 7C 00 30 39 */ and. r0, r0, r6
/* 80368A50 00365990 40 82 00 1C */ bne lbl_80368A6C
lbl_80368A54:
/* 80368A54 00365994 7C 07 40 40 */ cmplw r7, r8
/* 80368A58 00365998 41 82 FF E4 */ beq lbl_80368A3C
/* 80368A5C 0036599C 38 60 FF FF */ li r3, -1
/* 80368A60 003659A0 4C 81 00 20 */ blelr
/* 80368A64 003659A4 38 60 00 01 */ li r3, 1
/* 80368A68 003659A8 4E 80 00 20 */ blr
lbl_80368A6C:
/* 80368A6C 003659AC 88 A3 00 00 */ lbz r5, 0(r3)
/* 80368A70 003659B0 88 04 00 00 */ lbz r0, 0(r4)
/* 80368A74 003659B4 7C 00 28 51 */ subf. r0, r0, r5
/* 80368A78 003659B8 41 82 00 0C */ beq lbl_80368A84
/* 80368A7C 003659BC 7C 03 03 78 */ mr r3, r0
/* 80368A80 003659C0 4E 80 00 20 */ blr
lbl_80368A84:
/* 80368A84 003659C4 28 05 00 00 */ cmplwi r5, 0
/* 80368A88 003659C8 40 82 00 0C */ bne lbl_80368A94
/* 80368A8C 003659CC 38 60 00 00 */ li r3, 0
/* 80368A90 003659D0 4E 80 00 20 */ blr
lbl_80368A94:
/* 80368A94 003659D4 8C A3 00 01 */ lbzu r5, 1(r3)
/* 80368A98 003659D8 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80368A9C 003659DC 7C 00 28 51 */ subf. r0, r0, r5
/* 80368AA0 003659E0 41 82 00 0C */ beq lbl_80368AAC
/* 80368AA4 003659E4 7C 03 03 78 */ mr r3, r0
/* 80368AA8 003659E8 4E 80 00 20 */ blr
lbl_80368AAC:
/* 80368AAC 003659EC 28 05 00 00 */ cmplwi r5, 0
/* 80368AB0 003659F0 40 82 FF E4 */ bne lbl_80368A94
/* 80368AB4 003659F4 38 60 00 00 */ li r3, 0
/* 80368AB8 003659F8 4E 80 00 20 */ blr
.global func_80368ABC
func_80368ABC:
/* 80368ABC 003659FC 38 84 FF FF */ addi r4, r4, -1
/* 80368AC0 00365A00 38 A3 FF FF */ addi r5, r3, -1
lbl_80368AC4:
/* 80368AC4 00365A04 8C 05 00 01 */ lbzu r0, 1(r5)
/* 80368AC8 00365A08 28 00 00 00 */ cmplwi r0, 0
/* 80368ACC 00365A0C 40 82 FF F8 */ bne lbl_80368AC4
/* 80368AD0 00365A10 38 A5 FF FF */ addi r5, r5, -1
lbl_80368AD4:
/* 80368AD4 00365A14 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80368AD8 00365A18 28 00 00 00 */ cmplwi r0, 0
/* 80368ADC 00365A1C 9C 05 00 01 */ stbu r0, 1(r5)
/* 80368AE0 00365A20 40 82 FF F4 */ bne lbl_80368AD4
/* 80368AE4 00365A24 4E 80 00 20 */ blr
.global func_80368AE8
func_80368AE8:
/* 80368AE8 00365A28 38 84 FF FF */ addi r4, r4, -1
/* 80368AEC 00365A2C 38 C3 FF FF */ addi r6, r3, -1
/* 80368AF0 00365A30 38 A5 00 01 */ addi r5, r5, 1
/* 80368AF4 00365A34 48 00 00 2C */ b lbl_80368B20
lbl_80368AF8:
/* 80368AF8 00365A38 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80368AFC 00365A3C 28 00 00 00 */ cmplwi r0, 0
/* 80368B00 00365A40 9C 06 00 01 */ stbu r0, 1(r6)
/* 80368B04 00365A44 40 82 00 1C */ bne lbl_80368B20
/* 80368B08 00365A48 38 00 00 00 */ li r0, 0
/* 80368B0C 00365A4C 48 00 00 08 */ b lbl_80368B14
lbl_80368B10:
/* 80368B10 00365A50 9C 06 00 01 */ stbu r0, 1(r6)
lbl_80368B14:
/* 80368B14 00365A54 34 A5 FF FF */ addic. r5, r5, -1
/* 80368B18 00365A58 40 82 FF F8 */ bne lbl_80368B10
/* 80368B1C 00365A5C 4E 80 00 20 */ blr
lbl_80368B20:
/* 80368B20 00365A60 34 A5 FF FF */ addic. r5, r5, -1
/* 80368B24 00365A64 40 82 FF D4 */ bne lbl_80368AF8
/* 80368B28 00365A68 4E 80 00 20 */ blr
.global strcpy
strcpy:
/* 80368B2C 00365A6C 54 60 07 BE */ clrlwi r0, r3, 0x1e
/* 80368B30 00365A70 54 85 07 BE */ clrlwi r5, r4, 0x1e
/* 80368B34 00365A74 7C 00 28 40 */ cmplw r0, r5
/* 80368B38 00365A78 7C 67 1B 78 */ mr r7, r3
/* 80368B3C 00365A7C 40 82 00 84 */ bne lbl_80368BC0
/* 80368B40 00365A80 28 05 00 00 */ cmplwi r5, 0
/* 80368B44 00365A84 41 82 00 40 */ beq lbl_80368B84
/* 80368B48 00365A88 88 04 00 00 */ lbz r0, 0(r4)
/* 80368B4C 00365A8C 28 00 00 00 */ cmplwi r0, 0
/* 80368B50 00365A90 98 07 00 00 */ stb r0, 0(r7)
/* 80368B54 00365A94 4D 82 00 20 */ beqlr
/* 80368B58 00365A98 20 05 00 03 */ subfic r0, r5, 3
/* 80368B5C 00365A9C 7C 09 03 A6 */ mtctr r0
/* 80368B60 00365AA0 28 00 00 00 */ cmplwi r0, 0
/* 80368B64 00365AA4 41 82 00 18 */ beq lbl_80368B7C
lbl_80368B68:
/* 80368B68 00365AA8 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80368B6C 00365AAC 28 00 00 00 */ cmplwi r0, 0
/* 80368B70 00365AB0 9C 07 00 01 */ stbu r0, 1(r7)
/* 80368B74 00365AB4 4D 82 00 20 */ beqlr
/* 80368B78 00365AB8 42 00 FF F0 */ bdnz lbl_80368B68
lbl_80368B7C:
/* 80368B7C 00365ABC 38 E7 00 01 */ addi r7, r7, 1
/* 80368B80 00365AC0 38 84 00 01 */ addi r4, r4, 1
lbl_80368B84:
/* 80368B84 00365AC4 81 04 00 00 */ lwz r8, 0(r4)
/* 80368B88 00365AC8 3C A0 80 81 */ lis r5, 0x80808080@ha
/* 80368B8C 00365ACC 38 C5 80 80 */ addi r6, r5, 0x80808080@l
/* 80368B90 00365AD0 3C A8 FE FF */ addis r5, r8, 0xfeff
/* 80368B94 00365AD4 38 05 FE FF */ addi r0, r5, -257
/* 80368B98 00365AD8 7C 00 30 39 */ and. r0, r0, r6
/* 80368B9C 00365ADC 40 82 00 24 */ bne lbl_80368BC0
/* 80368BA0 00365AE0 38 E7 FF FC */ addi r7, r7, -4
lbl_80368BA4:
/* 80368BA4 00365AE4 95 07 00 04 */ stwu r8, 4(r7)
/* 80368BA8 00365AE8 85 04 00 04 */ lwzu r8, 4(r4)
/* 80368BAC 00365AEC 3C A8 FE FF */ addis r5, r8, 0xfeff
/* 80368BB0 00365AF0 38 05 FE FF */ addi r0, r5, -257
/* 80368BB4 00365AF4 7C 00 30 39 */ and. r0, r0, r6
/* 80368BB8 00365AF8 41 82 FF EC */ beq lbl_80368BA4
/* 80368BBC 00365AFC 38 E7 00 04 */ addi r7, r7, 4
lbl_80368BC0:
/* 80368BC0 00365B00 88 04 00 00 */ lbz r0, 0(r4)
/* 80368BC4 00365B04 28 00 00 00 */ cmplwi r0, 0
/* 80368BC8 00365B08 98 07 00 00 */ stb r0, 0(r7)
/* 80368BCC 00365B0C 4D 82 00 20 */ beqlr
lbl_80368BD0:
/* 80368BD0 00365B10 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80368BD4 00365B14 28 00 00 00 */ cmplwi r0, 0
/* 80368BD8 00365B18 9C 07 00 01 */ stbu r0, 1(r7)
/* 80368BDC 00365B1C 40 82 FF F4 */ bne lbl_80368BD0
/* 80368BE0 00365B20 4E 80 00 20 */ blr
.global func_80368BE4
func_80368BE4:
/* 80368BE4 00365B24 38 83 FF FF */ addi r4, r3, -1
/* 80368BE8 00365B28 38 60 FF FF */ li r3, -1
lbl_80368BEC:
/* 80368BEC 00365B2C 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80368BF0 00365B30 38 63 00 01 */ addi r3, r3, 1
/* 80368BF4 00365B34 28 00 00 00 */ cmplwi r0, 0
/* 80368BF8 00365B38 40 82 FF F4 */ bne lbl_80368BEC
/* 80368BFC 00365B3C 4E 80 00 20 */ blr
.global func_80368C00
func_80368C00:
/* 80368C00 00365B40 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80368C04 00365B44 7C 08 02 A6 */ mflr r0
/* 80368C08 00365B48 38 E0 00 00 */ li r7, 0
/* 80368C0C 00365B4C 3C C0 80 00 */ lis r6, 0x7FFFFFFF@ha
/* 80368C10 00365B50 90 01 00 34 */ stw r0, 0x34(r1)
/* 80368C14 00365B54 39 01 00 0C */ addi r8, r1, 0xc
/* 80368C18 00365B58 39 21 00 08 */ addi r9, r1, 8
/* 80368C1C 00365B5C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80368C20 00365B60 7C 9F 23 78 */ mr r31, r4
/* 80368C24 00365B64 38 86 FF FF */ addi r4, r6, 0x7FFFFFFF@l
/* 80368C28 00365B68 38 C1 00 14 */ addi r6, r1, 0x14
/* 80368C2C 00365B6C 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80368C30 00365B70 7C 7E 1B 78 */ mr r30, r3
/* 80368C34 00365B74 3C 60 80 37 */ lis r3, lbl_8036878C@ha
/* 80368C38 00365B78 38 03 87 8C */ addi r0, r3, lbl_8036878C@l
/* 80368C3C 00365B7C 90 E1 00 18 */ stw r7, 0x18(r1)
/* 80368C40 00365B80 7C A3 2B 78 */ mr r3, r5
/* 80368C44 00365B84 38 E1 00 10 */ addi r7, r1, 0x10
/* 80368C48 00365B88 93 C1 00 14 */ stw r30, 0x14(r1)
/* 80368C4C 00365B8C 7C 05 03 78 */ mr r5, r0
/* 80368C50 00365B90 48 00 01 4D */ bl func_80368D9C
/* 80368C54 00365B94 28 1F 00 00 */ cmplwi r31, 0
/* 80368C58 00365B98 41 82 00 10 */ beq lbl_80368C68
/* 80368C5C 00365B9C 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80368C60 00365BA0 7C 1E 02 14 */ add r0, r30, r0
/* 80368C64 00365BA4 90 1F 00 00 */ stw r0, 0(r31)
lbl_80368C68:
/* 80368C68 00365BA8 80 01 00 08 */ lwz r0, 8(r1)
/* 80368C6C 00365BAC 2C 00 00 00 */ cmpwi r0, 0
/* 80368C70 00365BB0 40 82 00 34 */ bne lbl_80368CA4
/* 80368C74 00365BB4 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80368C78 00365BB8 2C 05 00 00 */ cmpwi r5, 0
/* 80368C7C 00365BBC 40 82 00 14 */ bne lbl_80368C90
/* 80368C80 00365BC0 3C 80 80 00 */ lis r4, 0x7FFFFFFF@ha
/* 80368C84 00365BC4 38 04 FF FF */ addi r0, r4, 0x7FFFFFFF@l
/* 80368C88 00365BC8 7C 03 00 40 */ cmplw r3, r0
/* 80368C8C 00365BCC 41 81 00 18 */ bgt lbl_80368CA4
lbl_80368C90:
/* 80368C90 00365BD0 2C 05 00 00 */ cmpwi r5, 0
/* 80368C94 00365BD4 41 82 00 38 */ beq lbl_80368CCC
/* 80368C98 00365BD8 3C 00 80 00 */ lis r0, 0x8000
/* 80368C9C 00365BDC 7C 03 00 40 */ cmplw r3, r0
/* 80368CA0 00365BE0 40 81 00 2C */ ble lbl_80368CCC
lbl_80368CA4:
/* 80368CA4 00365BE4 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80368CA8 00365BE8 3C 60 80 00 */ lis r3, 0x7FFFFFFF@ha
/* 80368CAC 00365BEC 38 00 00 22 */ li r0, 0x22
/* 80368CB0 00365BF0 7C 85 00 D0 */ neg r4, r5
/* 80368CB4 00365BF4 38 63 FF FF */ addi r3, r3, 0x7FFFFFFF@l
/* 80368CB8 00365BF8 7C 84 2B 78 */ or r4, r4, r5
/* 80368CBC 00365BFC 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80368CC0 00365C00 54 80 0F FE */ srwi r0, r4, 0x1f
/* 80368CC4 00365C04 7C 60 1A 14 */ add r3, r0, r3
/* 80368CC8 00365C08 48 00 00 10 */ b lbl_80368CD8
lbl_80368CCC:
/* 80368CCC 00365C0C 2C 05 00 00 */ cmpwi r5, 0
/* 80368CD0 00365C10 41 82 00 08 */ beq lbl_80368CD8
/* 80368CD4 00365C14 7C 63 00 D0 */ neg r3, r3
lbl_80368CD8:
/* 80368CD8 00365C18 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80368CDC 00365C1C 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80368CE0 00365C20 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80368CE4 00365C24 7C 08 03 A6 */ mtlr r0
/* 80368CE8 00365C28 38 21 00 30 */ addi r1, r1, 0x30
/* 80368CEC 00365C2C 4E 80 00 20 */ blr
.global func_80368CF0
func_80368CF0:
/* 80368CF0 00365C30 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80368CF4 00365C34 7C 08 02 A6 */ mflr r0
/* 80368CF8 00365C38 38 E0 00 00 */ li r7, 0
/* 80368CFC 00365C3C 3C C0 80 00 */ lis r6, 0x7FFFFFFF@ha
/* 80368D00 00365C40 90 01 00 34 */ stw r0, 0x34(r1)
/* 80368D04 00365C44 39 01 00 0C */ addi r8, r1, 0xc
/* 80368D08 00365C48 39 21 00 08 */ addi r9, r1, 8
/* 80368D0C 00365C4C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80368D10 00365C50 7C 9F 23 78 */ mr r31, r4
/* 80368D14 00365C54 38 86 FF FF */ addi r4, r6, 0x7FFFFFFF@l
/* 80368D18 00365C58 38 C1 00 14 */ addi r6, r1, 0x14
/* 80368D1C 00365C5C 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80368D20 00365C60 7C 7E 1B 78 */ mr r30, r3
/* 80368D24 00365C64 3C 60 80 37 */ lis r3, lbl_8036878C@ha
/* 80368D28 00365C68 38 03 87 8C */ addi r0, r3, lbl_8036878C@l
/* 80368D2C 00365C6C 90 E1 00 18 */ stw r7, 0x18(r1)
/* 80368D30 00365C70 7C A3 2B 78 */ mr r3, r5
/* 80368D34 00365C74 38 E1 00 10 */ addi r7, r1, 0x10
/* 80368D38 00365C78 93 C1 00 14 */ stw r30, 0x14(r1)
/* 80368D3C 00365C7C 7C 05 03 78 */ mr r5, r0
/* 80368D40 00365C80 48 00 00 5D */ bl func_80368D9C
/* 80368D44 00365C84 28 1F 00 00 */ cmplwi r31, 0
/* 80368D48 00365C88 41 82 00 10 */ beq lbl_80368D58
/* 80368D4C 00365C8C 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80368D50 00365C90 7C 1E 02 14 */ add r0, r30, r0
/* 80368D54 00365C94 90 1F 00 00 */ stw r0, 0(r31)
lbl_80368D58:
/* 80368D58 00365C98 80 01 00 08 */ lwz r0, 8(r1)
/* 80368D5C 00365C9C 2C 00 00 00 */ cmpwi r0, 0
/* 80368D60 00365CA0 41 82 00 14 */ beq lbl_80368D74
/* 80368D64 00365CA4 38 00 00 22 */ li r0, 0x22
/* 80368D68 00365CA8 38 60 FF FF */ li r3, -1
/* 80368D6C 00365CAC 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 80368D70 00365CB0 48 00 00 14 */ b lbl_80368D84
lbl_80368D74:
/* 80368D74 00365CB4 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80368D78 00365CB8 2C 00 00 00 */ cmpwi r0, 0
/* 80368D7C 00365CBC 41 82 00 08 */ beq lbl_80368D84
/* 80368D80 00365CC0 7C 63 00 D0 */ neg r3, r3
lbl_80368D84:
/* 80368D84 00365CC4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80368D88 00365CC8 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80368D8C 00365CCC 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80368D90 00365CD0 7C 08 03 A6 */ mtlr r0
/* 80368D94 00365CD4 38 21 00 30 */ addi r1, r1, 0x30
/* 80368D98 00365CD8 4E 80 00 20 */ blr
.global func_80368D9C
func_80368D9C:
/* 80368D9C 00365CDC 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80368DA0 00365CE0 7C 08 02 A6 */ mflr r0
/* 80368DA4 00365CE4 90 01 00 44 */ stw r0, 0x44(r1)
/* 80368DA8 00365CE8 38 00 00 00 */ li r0, 0
/* 80368DAC 00365CEC BE 81 00 10 */ stmw r20, 0x10(r1)
/* 80368DB0 00365CF0 7C 7D 1B 79 */ or. r29, r3, r3
/* 80368DB4 00365CF4 7D 38 4B 78 */ mr r24, r9
/* 80368DB8 00365CF8 7D 15 43 78 */ mr r21, r8
/* 80368DBC 00365CFC 7C 96 23 78 */ mr r22, r4
/* 80368DC0 00365D00 7C BE 2B 78 */ mr r30, r5
/* 80368DC4 00365D04 7C DC 33 78 */ mr r28, r6
/* 80368DC8 00365D08 7C F4 3B 78 */ mr r20, r7
/* 80368DCC 00365D0C 3B 20 00 01 */ li r25, 1
/* 80368DD0 00365D10 3B E0 00 00 */ li r31, 0
/* 80368DD4 00365D14 3A E0 00 00 */ li r23, 0
/* 80368DD8 00365D18 3B 60 00 00 */ li r27, 0
/* 80368DDC 00365D1C 3B 40 00 00 */ li r26, 0
/* 80368DE0 00365D20 90 09 00 00 */ stw r0, 0(r9)
/* 80368DE4 00365D24 90 08 00 00 */ stw r0, 0(r8)
/* 80368DE8 00365D28 41 80 00 1C */ blt lbl_80368E04
/* 80368DEC 00365D2C 2C 1D 00 01 */ cmpwi r29, 1
/* 80368DF0 00365D30 41 82 00 14 */ beq lbl_80368E04
/* 80368DF4 00365D34 2C 1D 00 24 */ cmpwi r29, 0x24
/* 80368DF8 00365D38 41 81 00 0C */ bgt lbl_80368E04
/* 80368DFC 00365D3C 2C 16 00 01 */ cmpwi r22, 1
/* 80368E00 00365D40 40 80 00 0C */ bge lbl_80368E0C
lbl_80368E04:
/* 80368E04 00365D44 3B 20 00 40 */ li r25, 0x40
/* 80368E08 00365D48 48 00 00 24 */ b lbl_80368E2C
lbl_80368E0C:
/* 80368E0C 00365D4C 7F CC F3 78 */ mr r12, r30
/* 80368E10 00365D50 7F 83 E3 78 */ mr r3, r28
/* 80368E14 00365D54 38 80 00 00 */ li r4, 0
/* 80368E18 00365D58 38 A0 00 00 */ li r5, 0
/* 80368E1C 00365D5C 7D 89 03 A6 */ mtctr r12
/* 80368E20 00365D60 3B E0 00 01 */ li r31, 1
/* 80368E24 00365D64 4E 80 04 21 */ bctrl
/* 80368E28 00365D68 7C 64 1B 78 */ mr r4, r3
lbl_80368E2C:
/* 80368E2C 00365D6C 2C 1D 00 00 */ cmpwi r29, 0
/* 80368E30 00365D70 41 82 02 7C */ beq lbl_803690AC
/* 80368E34 00365D74 38 00 FF FF */ li r0, -1
/* 80368E38 00365D78 7F 40 EB 96 */ divwu r26, r0, r29
/* 80368E3C 00365D7C 48 00 02 70 */ b lbl_803690AC
lbl_80368E40:
/* 80368E40 00365D80 28 19 00 10 */ cmplwi r25, 0x10
/* 80368E44 00365D84 41 81 02 68 */ bgt lbl_803690AC
/* 80368E48 00365D88 3C 60 80 3D */ lis r3, lbl_803D3148@ha
/* 80368E4C 00365D8C 57 20 10 3A */ slwi r0, r25, 2
/* 80368E50 00365D90 38 63 31 48 */ addi r3, r3, lbl_803D3148@l
/* 80368E54 00365D94 7C 03 00 2E */ lwzx r0, r3, r0
/* 80368E58 00365D98 7C 09 03 A6 */ mtctr r0
/* 80368E5C 00365D9C 4E 80 04 20 */ bctr
/* 80368E60 00365DA0 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 80368E64 00365DA4 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 80368E68 00365DA8 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 80368E6C 00365DAC 7C 03 00 AE */ lbzx r0, r3, r0
/* 80368E70 00365DB0 54 00 07 7D */ rlwinm. r0, r0, 0, 0x1d, 0x1e
/* 80368E74 00365DB4 41 82 00 28 */ beq lbl_80368E9C
/* 80368E78 00365DB8 7F CC F3 78 */ mr r12, r30
/* 80368E7C 00365DBC 7F 83 E3 78 */ mr r3, r28
/* 80368E80 00365DC0 38 80 00 00 */ li r4, 0
/* 80368E84 00365DC4 38 A0 00 00 */ li r5, 0
/* 80368E88 00365DC8 7D 89 03 A6 */ mtctr r12
/* 80368E8C 00365DCC 4E 80 04 21 */ bctrl
/* 80368E90 00365DD0 7C 64 1B 78 */ mr r4, r3
/* 80368E94 00365DD4 3A F7 00 01 */ addi r23, r23, 1
/* 80368E98 00365DD8 48 00 02 14 */ b lbl_803690AC
lbl_80368E9C:
/* 80368E9C 00365DDC 2C 04 00 2B */ cmpwi r4, 0x2b
/* 80368EA0 00365DE0 40 82 00 28 */ bne lbl_80368EC8
/* 80368EA4 00365DE4 7F CC F3 78 */ mr r12, r30
/* 80368EA8 00365DE8 7F 83 E3 78 */ mr r3, r28
/* 80368EAC 00365DEC 38 80 00 00 */ li r4, 0
/* 80368EB0 00365DF0 38 A0 00 00 */ li r5, 0
/* 80368EB4 00365DF4 7D 89 03 A6 */ mtctr r12
/* 80368EB8 00365DF8 3B FF 00 01 */ addi r31, r31, 1
/* 80368EBC 00365DFC 4E 80 04 21 */ bctrl
/* 80368EC0 00365E00 7C 64 1B 78 */ mr r4, r3
/* 80368EC4 00365E04 48 00 00 34 */ b lbl_80368EF8
lbl_80368EC8:
/* 80368EC8 00365E08 2C 04 00 2D */ cmpwi r4, 0x2d
/* 80368ECC 00365E0C 40 82 00 2C */ bne lbl_80368EF8
/* 80368ED0 00365E10 7F CC F3 78 */ mr r12, r30
/* 80368ED4 00365E14 7F 83 E3 78 */ mr r3, r28
/* 80368ED8 00365E18 38 80 00 00 */ li r4, 0
/* 80368EDC 00365E1C 38 A0 00 00 */ li r5, 0
/* 80368EE0 00365E20 7D 89 03 A6 */ mtctr r12
/* 80368EE4 00365E24 3B FF 00 01 */ addi r31, r31, 1
/* 80368EE8 00365E28 4E 80 04 21 */ bctrl
/* 80368EEC 00365E2C 38 00 00 01 */ li r0, 1
/* 80368EF0 00365E30 7C 64 1B 78 */ mr r4, r3
/* 80368EF4 00365E34 90 15 00 00 */ stw r0, 0(r21)
lbl_80368EF8:
/* 80368EF8 00365E38 3B 20 00 02 */ li r25, 2
/* 80368EFC 00365E3C 48 00 01 B0 */ b lbl_803690AC
/* 80368F00 00365E40 2C 1D 00 00 */ cmpwi r29, 0
/* 80368F04 00365E44 41 82 00 0C */ beq lbl_80368F10
/* 80368F08 00365E48 2C 1D 00 10 */ cmpwi r29, 0x10
/* 80368F0C 00365E4C 40 82 00 34 */ bne lbl_80368F40
lbl_80368F10:
/* 80368F10 00365E50 2C 04 00 30 */ cmpwi r4, 0x30
/* 80368F14 00365E54 40 82 00 2C */ bne lbl_80368F40
/* 80368F18 00365E58 7F CC F3 78 */ mr r12, r30
/* 80368F1C 00365E5C 7F 83 E3 78 */ mr r3, r28
/* 80368F20 00365E60 3B 20 00 04 */ li r25, 4
/* 80368F24 00365E64 38 80 00 00 */ li r4, 0
/* 80368F28 00365E68 38 A0 00 00 */ li r5, 0
/* 80368F2C 00365E6C 7D 89 03 A6 */ mtctr r12
/* 80368F30 00365E70 3B FF 00 01 */ addi r31, r31, 1
/* 80368F34 00365E74 4E 80 04 21 */ bctrl
/* 80368F38 00365E78 7C 64 1B 78 */ mr r4, r3
/* 80368F3C 00365E7C 48 00 01 70 */ b lbl_803690AC
lbl_80368F40:
/* 80368F40 00365E80 3B 20 00 08 */ li r25, 8
/* 80368F44 00365E84 48 00 01 68 */ b lbl_803690AC
/* 80368F48 00365E88 2C 04 00 58 */ cmpwi r4, 0x58
/* 80368F4C 00365E8C 41 82 00 0C */ beq lbl_80368F58
/* 80368F50 00365E90 2C 04 00 78 */ cmpwi r4, 0x78
/* 80368F54 00365E94 40 82 00 30 */ bne lbl_80368F84
lbl_80368F58:
/* 80368F58 00365E98 7F CC F3 78 */ mr r12, r30
/* 80368F5C 00365E9C 7F 83 E3 78 */ mr r3, r28
/* 80368F60 00365EA0 3B A0 00 10 */ li r29, 0x10
/* 80368F64 00365EA4 3B 20 00 08 */ li r25, 8
/* 80368F68 00365EA8 38 80 00 00 */ li r4, 0
/* 80368F6C 00365EAC 38 A0 00 00 */ li r5, 0
/* 80368F70 00365EB0 7D 89 03 A6 */ mtctr r12
/* 80368F74 00365EB4 3B FF 00 01 */ addi r31, r31, 1
/* 80368F78 00365EB8 4E 80 04 21 */ bctrl
/* 80368F7C 00365EBC 7C 64 1B 78 */ mr r4, r3
/* 80368F80 00365EC0 48 00 01 2C */ b lbl_803690AC
lbl_80368F84:
/* 80368F84 00365EC4 2C 1D 00 00 */ cmpwi r29, 0
/* 80368F88 00365EC8 40 82 00 08 */ bne lbl_80368F90
/* 80368F8C 00365ECC 3B A0 00 08 */ li r29, 8
lbl_80368F90:
/* 80368F90 00365ED0 3B 20 00 10 */ li r25, 0x10
/* 80368F94 00365ED4 48 00 01 18 */ b lbl_803690AC
/* 80368F98 00365ED8 2C 1D 00 00 */ cmpwi r29, 0
/* 80368F9C 00365EDC 40 82 00 08 */ bne lbl_80368FA4
/* 80368FA0 00365EE0 3B A0 00 0A */ li r29, 0xa
lbl_80368FA4:
/* 80368FA4 00365EE4 28 1A 00 00 */ cmplwi r26, 0
/* 80368FA8 00365EE8 40 82 00 0C */ bne lbl_80368FB4
/* 80368FAC 00365EEC 38 00 FF FF */ li r0, -1
/* 80368FB0 00365EF0 7F 40 EB 96 */ divwu r26, r0, r29
lbl_80368FB4:
/* 80368FB4 00365EF4 3C 60 80 3D */ lis r3, lbl_803D2C18@ha
/* 80368FB8 00365EF8 54 85 06 3E */ clrlwi r5, r4, 0x18
/* 80368FBC 00365EFC 38 63 2C 18 */ addi r3, r3, lbl_803D2C18@l
/* 80368FC0 00365F00 7C 63 28 AE */ lbzx r3, r3, r5
/* 80368FC4 00365F04 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 80368FC8 00365F08 41 82 00 2C */ beq lbl_80368FF4
/* 80368FCC 00365F0C 38 84 FF D0 */ addi r4, r4, -48
/* 80368FD0 00365F10 7C 04 E8 00 */ cmpw r4, r29
/* 80368FD4 00365F14 41 80 00 88 */ blt lbl_8036905C
/* 80368FD8 00365F18 2C 19 00 10 */ cmpwi r25, 0x10
/* 80368FDC 00365F1C 38 00 00 40 */ li r0, 0x40
/* 80368FE0 00365F20 40 82 00 08 */ bne lbl_80368FE8
/* 80368FE4 00365F24 38 00 00 20 */ li r0, 0x20
lbl_80368FE8:
/* 80368FE8 00365F28 7C 19 03 78 */ mr r25, r0
/* 80368FEC 00365F2C 38 84 00 30 */ addi r4, r4, 0x30
/* 80368FF0 00365F30 48 00 00 BC */ b lbl_803690AC
lbl_80368FF4:
/* 80368FF4 00365F34 54 60 06 33 */ rlwinm. r0, r3, 0, 0x18, 0x19
/* 80368FF8 00365F38 41 82 00 2C */ beq lbl_80369024
/* 80368FFC 00365F3C 2C 04 FF FF */ cmpwi r4, -1
/* 80369000 00365F40 40 82 00 0C */ bne lbl_8036900C
/* 80369004 00365F44 38 60 FF FF */ li r3, -1
/* 80369008 00365F48 48 00 00 10 */ b lbl_80369018
lbl_8036900C:
/* 8036900C 00365F4C 3C 60 80 3D */ lis r3, lbl_803D2E18@ha
/* 80369010 00365F50 38 63 2E 18 */ addi r3, r3, lbl_803D2E18@l
/* 80369014 00365F54 7C 63 28 AE */ lbzx r3, r3, r5
lbl_80369018:
/* 80369018 00365F58 38 03 FF C9 */ addi r0, r3, -55
/* 8036901C 00365F5C 7C 00 E8 00 */ cmpw r0, r29
/* 80369020 00365F60 41 80 00 1C */ blt lbl_8036903C
lbl_80369024:
/* 80369024 00365F64 2C 19 00 10 */ cmpwi r25, 0x10
/* 80369028 00365F68 40 82 00 0C */ bne lbl_80369034
/* 8036902C 00365F6C 3B 20 00 20 */ li r25, 0x20
/* 80369030 00365F70 48 00 00 7C */ b lbl_803690AC
lbl_80369034:
/* 80369034 00365F74 3B 20 00 40 */ li r25, 0x40
/* 80369038 00365F78 48 00 00 74 */ b lbl_803690AC
lbl_8036903C:
/* 8036903C 00365F7C 2C 04 FF FF */ cmpwi r4, -1
/* 80369040 00365F80 40 82 00 0C */ bne lbl_8036904C
/* 80369044 00365F84 38 60 FF FF */ li r3, -1
/* 80369048 00365F88 48 00 00 10 */ b lbl_80369058
lbl_8036904C:
/* 8036904C 00365F8C 3C 60 80 3D */ lis r3, lbl_803D2E18@ha
/* 80369050 00365F90 38 63 2E 18 */ addi r3, r3, lbl_803D2E18@l
/* 80369054 00365F94 7C 63 28 AE */ lbzx r3, r3, r5
lbl_80369058:
/* 80369058 00365F98 38 83 FF C9 */ addi r4, r3, -55
lbl_8036905C:
/* 8036905C 00365F9C 7C 1B D0 40 */ cmplw r27, r26
/* 80369060 00365FA0 40 81 00 0C */ ble lbl_8036906C
/* 80369064 00365FA4 38 00 00 01 */ li r0, 1
/* 80369068 00365FA8 90 18 00 00 */ stw r0, 0(r24)
lbl_8036906C:
/* 8036906C 00365FAC 7F 7B E9 D6 */ mullw r27, r27, r29
/* 80369070 00365FB0 20 1B FF FF */ subfic r0, r27, -1
/* 80369074 00365FB4 7C 04 00 40 */ cmplw r4, r0
/* 80369078 00365FB8 40 81 00 0C */ ble lbl_80369084
/* 8036907C 00365FBC 38 00 00 01 */ li r0, 1
/* 80369080 00365FC0 90 18 00 00 */ stw r0, 0(r24)
lbl_80369084:
/* 80369084 00365FC4 7F CC F3 78 */ mr r12, r30
/* 80369088 00365FC8 7F 83 E3 78 */ mr r3, r28
/* 8036908C 00365FCC 7F 7B 22 14 */ add r27, r27, r4
/* 80369090 00365FD0 3B 20 00 10 */ li r25, 0x10
/* 80369094 00365FD4 38 80 00 00 */ li r4, 0
/* 80369098 00365FD8 38 A0 00 00 */ li r5, 0
/* 8036909C 00365FDC 7D 89 03 A6 */ mtctr r12
/* 803690A0 00365FE0 3B FF 00 01 */ addi r31, r31, 1
/* 803690A4 00365FE4 4E 80 04 21 */ bctrl
/* 803690A8 00365FE8 7C 64 1B 78 */ mr r4, r3
lbl_803690AC:
/* 803690AC 00365FEC 7C 1F B0 00 */ cmpw r31, r22
/* 803690B0 00365FF0 41 81 00 14 */ bgt lbl_803690C4
/* 803690B4 00365FF4 2C 04 FF FF */ cmpwi r4, -1
/* 803690B8 00365FF8 41 82 00 0C */ beq lbl_803690C4
/* 803690BC 00365FFC 57 20 06 75 */ rlwinm. r0, r25, 0, 0x19, 0x1a
/* 803690C0 00366000 41 82 FD 80 */ beq lbl_80368E40
lbl_803690C4:
/* 803690C4 00366004 73 20 00 34 */ andi. r0, r25, 0x34
/* 803690C8 00366008 40 82 00 14 */ bne lbl_803690DC
/* 803690CC 0036600C 38 00 00 00 */ li r0, 0
/* 803690D0 00366010 3B 60 00 00 */ li r27, 0
/* 803690D4 00366014 90 14 00 00 */ stw r0, 0(r20)
/* 803690D8 00366018 48 00 00 10 */ b lbl_803690E8
lbl_803690DC:
/* 803690DC 0036601C 7C 7F BA 14 */ add r3, r31, r23
/* 803690E0 00366020 38 03 FF FF */ addi r0, r3, -1
/* 803690E4 00366024 90 14 00 00 */ stw r0, 0(r20)
lbl_803690E8:
/* 803690E8 00366028 7F CC F3 78 */ mr r12, r30
/* 803690EC 0036602C 7F 83 E3 78 */ mr r3, r28
/* 803690F0 00366030 38 A0 00 01 */ li r5, 1
/* 803690F4 00366034 7D 89 03 A6 */ mtctr r12
/* 803690F8 00366038 4E 80 04 21 */ bctrl
/* 803690FC 0036603C 7F 63 DB 78 */ mr r3, r27
/* 80369100 00366040 BA 81 00 10 */ lmw r20, 0x10(r1)
/* 80369104 00366044 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80369108 00366048 7C 08 03 A6 */ mtlr r0
/* 8036910C 0036604C 38 21 00 40 */ addi r1, r1, 0x40
/* 80369110 00366050 4E 80 00 20 */ blr
.global func_80369114
func_80369114:
/* 80369114 00366054 28 03 00 00 */ cmplwi r3, 0
/* 80369118 00366058 41 82 00 10 */ beq lbl_80369128
/* 8036911C 0036605C A0 03 00 04 */ lhz r0, 4(r3)
/* 80369120 00366060 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 80369124 00366064 40 82 00 0C */ bne lbl_80369130
lbl_80369128:
/* 80369128 00366068 38 60 00 00 */ li r3, 0
/* 8036912C 0036606C 4E 80 00 20 */ blr
lbl_80369130:
/* 80369130 00366070 88 A3 00 05 */ lbz r5, 5(r3)
/* 80369134 00366074 54 A0 E7 BE */ rlwinm r0, r5, 0x1c, 0x1e, 0x1f
/* 80369138 00366078 2C 00 00 01 */ cmpwi r0, 1
/* 8036913C 0036607C 41 82 00 58 */ beq lbl_80369194
/* 80369140 00366080 40 80 00 10 */ bge lbl_80369150
/* 80369144 00366084 2C 00 00 00 */ cmpwi r0, 0
/* 80369148 00366088 40 80 00 14 */ bge lbl_8036915C
/* 8036914C 0036608C 4E 80 00 20 */ blr
lbl_80369150:
/* 80369150 00366090 2C 00 00 03 */ cmpwi r0, 3
/* 80369154 00366094 4C 80 00 20 */ bgelr
/* 80369158 00366098 48 00 00 34 */ b lbl_8036918C
lbl_8036915C:
/* 8036915C 0036609C 2C 04 00 00 */ cmpwi r4, 0
/* 80369160 003660A0 40 81 00 14 */ ble lbl_80369174
/* 80369164 003660A4 38 00 00 02 */ li r0, 2
/* 80369168 003660A8 50 05 26 B6 */ rlwimi r5, r0, 4, 0x1a, 0x1b
/* 8036916C 003660AC 98 A3 00 05 */ stb r5, 5(r3)
/* 80369170 003660B0 48 00 00 14 */ b lbl_80369184
lbl_80369174:
/* 80369174 003660B4 40 80 00 10 */ bge lbl_80369184
/* 80369178 003660B8 38 00 00 01 */ li r0, 1
/* 8036917C 003660BC 50 05 26 B6 */ rlwimi r5, r0, 4, 0x1a, 0x1b
/* 80369180 003660C0 98 A3 00 05 */ stb r5, 5(r3)
lbl_80369184:
/* 80369184 003660C4 7C 83 23 78 */ mr r3, r4
/* 80369188 003660C8 4E 80 00 20 */ blr
lbl_8036918C:
/* 8036918C 003660CC 38 60 00 01 */ li r3, 1
/* 80369190 003660D0 4E 80 00 20 */ blr
lbl_80369194:
/* 80369194 003660D4 38 60 FF FF */ li r3, -1
/* 80369198 003660D8 4E 80 00 20 */ blr
/* 8036919C 003660DC 38 60 00 00 */ li r3, 0
/* 803691A0 003660E0 4E 80 00 20 */ blr
/* 803691A4 003660E4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803691A8 003660E8 7C 08 02 A6 */ mflr r0
/* 803691AC 003660EC 90 01 00 24 */ stw r0, 0x24(r1)
/* 803691B0 003660F0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803691B4 003660F4 7C DF 33 78 */ mr r31, r6
/* 803691B8 003660F8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803691BC 003660FC 7C BE 2B 78 */ mr r30, r5
/* 803691C0 00366100 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803691C4 00366104 7C 9D 23 78 */ mr r29, r4
/* 803691C8 00366108 93 81 00 10 */ stw r28, 0x10(r1)
/* 803691CC 0036610C 7C 7C 1B 78 */ mr r28, r3
/* 803691D0 00366110 4B FD 0D 2D */ bl OSGetConsoleType
/* 803691D4 00366114 54 60 00 85 */ rlwinm. r0, r3, 0, 2, 2
/* 803691D8 00366118 40 82 00 64 */ bne lbl_8036923C
/* 803691DC 0036611C 80 0D 94 30 */ lwz r0, lbl_804519B0-_SDA_BASE_(r13)
/* 803691E0 00366120 38 60 00 00 */ li r3, 0
/* 803691E4 00366124 2C 00 00 00 */ cmpwi r0, 0
/* 803691E8 00366128 40 82 00 20 */ bne lbl_80369208
/* 803691EC 0036612C 3C 60 00 01 */ lis r3, 0x0000E100@ha
/* 803691F0 00366130 38 63 E1 00 */ addi r3, r3, 0x0000E100@l
/* 803691F4 00366134 4B FD B7 3D */ bl InitializeUART
/* 803691F8 00366138 2C 03 00 00 */ cmpwi r3, 0
/* 803691FC 0036613C 40 82 00 0C */ bne lbl_80369208
/* 80369200 00366140 38 00 00 01 */ li r0, 1
/* 80369204 00366144 90 0D 94 30 */ stw r0, lbl_804519B0-_SDA_BASE_(r13)
lbl_80369208:
/* 80369208 00366148 2C 03 00 00 */ cmpwi r3, 0
/* 8036920C 0036614C 41 82 00 0C */ beq lbl_80369218
/* 80369210 00366150 38 60 00 01 */ li r3, 1
/* 80369214 00366154 48 00 00 40 */ b lbl_80369254
lbl_80369218:
/* 80369218 00366158 80 9E 00 00 */ lwz r4, 0(r30)
/* 8036921C 0036615C 7F A3 EB 78 */ mr r3, r29
/* 80369220 00366160 4B FD B7 81 */ bl WriteUARTN
/* 80369224 00366164 2C 03 00 00 */ cmpwi r3, 0
/* 80369228 00366168 41 82 00 14 */ beq lbl_8036923C
/* 8036922C 0036616C 38 00 00 00 */ li r0, 0
/* 80369230 00366170 38 60 00 01 */ li r3, 1
/* 80369234 00366174 90 1E 00 00 */ stw r0, 0(r30)
/* 80369238 00366178 48 00 00 1C */ b lbl_80369254
lbl_8036923C:
/* 8036923C 0036617C 7F 83 E3 78 */ mr r3, r28
/* 80369240 00366180 7F A4 EB 78 */ mr r4, r29
/* 80369244 00366184 7F C5 F3 78 */ mr r5, r30
/* 80369248 00366188 7F E6 FB 78 */ mr r6, r31
/* 8036924C 0036618C 48 00 8F 51 */ bl func_8037219C
/* 80369250 00366190 38 60 00 00 */ li r3, 0
lbl_80369254:
/* 80369254 00366194 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80369258 00366198 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036925C 0036619C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80369260 003661A0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80369264 003661A4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80369268 003661A8 7C 08 03 A6 */ mtlr r0
/* 8036926C 003661AC 38 21 00 20 */ addi r1, r1, 0x20
/* 80369270 003661B0 4E 80 00 20 */ blr
.global func_80369274
func_80369274:
/* 80369274 003661B4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80369278 003661B8 7C 08 02 A6 */ mflr r0
/* 8036927C 003661BC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80369280 003661C0 DB E1 00 20 */ stfd f31, 0x20(r1)
/* 80369284 003661C4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0
/* 80369288 003661C8 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036928C 003661CC 3C 00 3F F0 */ lis r0, 0x3ff0
/* 80369290 003661D0 80 81 00 08 */ lwz r4, 8(r1)
/* 80369294 003661D4 54 83 00 7E */ clrlwi r3, r4, 1
/* 80369298 003661D8 7C 03 00 00 */ cmpw r3, r0
/* 8036929C 003661DC 41 80 00 38 */ blt lbl_803692D4
/* 803692A0 003661E0 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803692A4 003661E4 3C 63 C0 10 */ addis r3, r3, 0xc010
/* 803692A8 003661E8 7C 60 03 79 */ or. r0, r3, r0
/* 803692AC 003661EC 40 82 00 1C */ bne lbl_803692C8
/* 803692B0 003661F0 2C 04 00 00 */ cmpwi r4, 0
/* 803692B4 003661F4 40 81 00 0C */ ble lbl_803692C0
/* 803692B8 003661F8 C8 22 CC 78 */ lfd f1, lbl_80456678-_SDA2_BASE_(r2)
/* 803692BC 003661FC 48 00 01 DC */ b lbl_80369498
lbl_803692C0:
/* 803692C0 00366200 C8 22 CC 80 */ lfd f1, lbl_80456680-_SDA2_BASE_(r2)
/* 803692C4 00366204 48 00 01 D4 */ b lbl_80369498
lbl_803692C8:
/* 803692C8 00366208 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 803692CC 0036620C C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
/* 803692D0 00366210 48 00 01 C8 */ b lbl_80369498
lbl_803692D4:
/* 803692D4 00366214 3C 00 3F E0 */ lis r0, 0x3fe0
/* 803692D8 00366218 7C 03 00 00 */ cmpw r3, r0
/* 803692DC 0036621C 40 80 00 8C */ bge lbl_80369368
/* 803692E0 00366220 3C 00 3C 60 */ lis r0, 0x3c60
/* 803692E4 00366224 7C 03 00 00 */ cmpw r3, r0
/* 803692E8 00366228 41 81 00 0C */ bgt lbl_803692F4
/* 803692EC 0036622C C8 22 CC 88 */ lfd f1, lbl_80456688-_SDA2_BASE_(r2)
/* 803692F0 00366230 48 00 01 A8 */ b lbl_80369498
lbl_803692F4:
/* 803692F4 00366234 FD 41 00 72 */ fmul f10, f1, f1
/* 803692F8 00366238 C8 42 CC C0 */ lfd f2, lbl_804566C0-_SDA2_BASE_(r2)
/* 803692FC 0036623C C8 02 CC B8 */ lfd f0, lbl_804566B8-_SDA2_BASE_(r2)
/* 80369300 00366240 C8 62 CC B0 */ lfd f3, lbl_804566B0-_SDA2_BASE_(r2)
/* 80369304 00366244 C9 02 CC A8 */ lfd f8, lbl_804566A8-_SDA2_BASE_(r2)
/* 80369308 00366248 FC 82 02 BA */ fmadd f4, f2, f10, f0
/* 8036930C 0036624C C8 42 CC E8 */ lfd f2, lbl_804566E8-_SDA2_BASE_(r2)
/* 80369310 00366250 C8 02 CC E0 */ lfd f0, lbl_804566E0-_SDA2_BASE_(r2)
/* 80369314 00366254 C8 E2 CC A0 */ lfd f7, lbl_804566A0-_SDA2_BASE_(r2)
/* 80369318 00366258 FD 2A 19 3A */ fmadd f9, f10, f4, f3
/* 8036931C 0036625C C8 82 CC D8 */ lfd f4, lbl_804566D8-_SDA2_BASE_(r2)
/* 80369320 00366260 C8 C2 CC 98 */ lfd f6, lbl_80456698-_SDA2_BASE_(r2)
/* 80369324 00366264 FC A2 02 BA */ fmadd f5, f2, f10, f0
/* 80369328 00366268 C8 62 CC D0 */ lfd f3, lbl_804566D0-_SDA2_BASE_(r2)
/* 8036932C 0036626C C8 42 CC C8 */ lfd f2, lbl_804566C8-_SDA2_BASE_(r2)
/* 80369330 00366270 FD 0A 42 7A */ fmadd f8, f10, f9, f8
/* 80369334 00366274 C8 02 CC 90 */ lfd f0, lbl_80456690-_SDA2_BASE_(r2)
/* 80369338 00366278 C9 22 CC 88 */ lfd f9, lbl_80456688-_SDA2_BASE_(r2)
/* 8036933C 0036627C FC 8A 21 7A */ fmadd f4, f10, f5, f4
/* 80369340 00366280 FC AA 3A 3A */ fmadd f5, f10, f8, f7
/* 80369344 00366284 FC 6A 19 3A */ fmadd f3, f10, f4, f3
/* 80369348 00366288 FC 8A 31 7A */ fmadd f4, f10, f5, f6
/* 8036934C 0036628C FC 4A 10 FA */ fmadd f2, f10, f3, f2
/* 80369350 00366290 FC 6A 01 32 */ fmul f3, f10, f4
/* 80369354 00366294 FC 43 10 24 */ fdiv f2, f3, f2
/* 80369358 00366298 FC 01 00 BC */ fnmsub f0, f1, f2, f0
/* 8036935C 0036629C FC 01 00 28 */ fsub f0, f1, f0
/* 80369360 003662A0 FC 29 00 28 */ fsub f1, f9, f0
/* 80369364 003662A4 48 00 01 34 */ b lbl_80369498
lbl_80369368:
/* 80369368 003662A8 2C 04 00 00 */ cmpwi r4, 0
/* 8036936C 003662AC 40 80 00 90 */ bge lbl_803693FC
/* 80369370 003662B0 C8 02 CC C8 */ lfd f0, lbl_804566C8-_SDA2_BASE_(r2)
/* 80369374 003662B4 C8 42 CC F0 */ lfd f2, lbl_804566F0-_SDA2_BASE_(r2)
/* 80369378 003662B8 FC 00 08 2A */ fadd f0, f0, f1
/* 8036937C 003662BC FF E2 00 32 */ fmul f31, f2, f0
/* 80369380 003662C0 FC 20 F8 90 */ fmr f1, f31
/* 80369384 003662C4 48 00 36 D1 */ bl func_8036CA54
/* 80369388 003662C8 C8 62 CC C0 */ lfd f3, lbl_804566C0-_SDA2_BASE_(r2)
/* 8036938C 003662CC C8 42 CC B8 */ lfd f2, lbl_804566B8-_SDA2_BASE_(r2)
/* 80369390 003662D0 C8 02 CC B0 */ lfd f0, lbl_804566B0-_SDA2_BASE_(r2)
/* 80369394 003662D4 FC 83 17 FA */ fmadd f4, f3, f31, f2
/* 80369398 003662D8 C8 A2 CC A8 */ lfd f5, lbl_804566A8-_SDA2_BASE_(r2)
/* 8036939C 003662DC C8 62 CC E8 */ lfd f3, lbl_804566E8-_SDA2_BASE_(r2)
/* 803693A0 003662E0 C8 42 CC E0 */ lfd f2, lbl_804566E0-_SDA2_BASE_(r2)
/* 803693A4 003662E4 C8 E2 CC A0 */ lfd f7, lbl_804566A0-_SDA2_BASE_(r2)
/* 803693A8 003662E8 FD 1F 01 3A */ fmadd f8, f31, f4, f0
/* 803693AC 003662EC C8 02 CC D8 */ lfd f0, lbl_804566D8-_SDA2_BASE_(r2)
/* 803693B0 003662F0 FC 43 17 FA */ fmadd f2, f3, f31, f2
/* 803693B4 003662F4 C8 C2 CC 98 */ lfd f6, lbl_80456698-_SDA2_BASE_(r2)
/* 803693B8 003662F8 C8 82 CC D0 */ lfd f4, lbl_804566D0-_SDA2_BASE_(r2)
/* 803693BC 003662FC FD 1F 2A 3A */ fmadd f8, f31, f8, f5
/* 803693C0 00366300 C8 62 CC C8 */ lfd f3, lbl_804566C8-_SDA2_BASE_(r2)
/* 803693C4 00366304 FC BF 00 BA */ fmadd f5, f31, f2, f0
/* 803693C8 00366308 C8 42 CC 90 */ lfd f2, lbl_80456690-_SDA2_BASE_(r2)
/* 803693CC 0036630C FC FF 3A 3A */ fmadd f7, f31, f8, f7
/* 803693D0 00366310 C9 02 CC F8 */ lfd f8, lbl_804566F8-_SDA2_BASE_(r2)
/* 803693D4 00366314 C8 02 CC 80 */ lfd f0, lbl_80456680-_SDA2_BASE_(r2)
/* 803693D8 00366318 FC 9F 21 7A */ fmadd f4, f31, f5, f4
/* 803693DC 0036631C FC BF 31 FA */ fmadd f5, f31, f7, f6
/* 803693E0 00366320 FC 7F 19 3A */ fmadd f3, f31, f4, f3
/* 803693E4 00366324 FC 9F 01 72 */ fmul f4, f31, f5
/* 803693E8 00366328 FC 64 18 24 */ fdiv f3, f4, f3
/* 803693EC 0036632C FC 43 10 78 */ fmsub f2, f3, f1, f2
/* 803693F0 00366330 FC 21 10 2A */ fadd f1, f1, f2
/* 803693F4 00366334 FC 28 00 7C */ fnmsub f1, f8, f1, f0
/* 803693F8 00366338 48 00 00 A0 */ b lbl_80369498
lbl_803693FC:
/* 803693FC 0036633C C8 02 CC C8 */ lfd f0, lbl_804566C8-_SDA2_BASE_(r2)
/* 80369400 00366340 C8 42 CC F0 */ lfd f2, lbl_804566F0-_SDA2_BASE_(r2)
/* 80369404 00366344 FC 00 08 28 */ fsub f0, f0, f1
/* 80369408 00366348 FF E2 00 32 */ fmul f31, f2, f0
/* 8036940C 0036634C FC 20 F8 90 */ fmr f1, f31
/* 80369410 00366350 48 00 36 45 */ bl func_8036CA54
/* 80369414 00366354 C8 42 CC C0 */ lfd f2, lbl_804566C0-_SDA2_BASE_(r2)
/* 80369418 00366358 38 00 00 00 */ li r0, 0
/* 8036941C 0036635C C8 02 CC B8 */ lfd f0, lbl_804566B8-_SDA2_BASE_(r2)
/* 80369420 00366360 D8 21 00 10 */ stfd f1, 0x10(r1)
/* 80369424 00366364 FC 62 07 FA */ fmadd f3, f2, f31, f0
/* 80369428 00366368 C8 02 CC B0 */ lfd f0, lbl_804566B0-_SDA2_BASE_(r2)
/* 8036942C 0036636C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80369430 00366370 C8 42 CC A8 */ lfd f2, lbl_804566A8-_SDA2_BASE_(r2)
/* 80369434 00366374 C9 21 00 10 */ lfd f9, 0x10(r1)
/* 80369438 00366378 FC BF 00 FA */ fmadd f5, f31, f3, f0
/* 8036943C 0036637C C8 82 CC E8 */ lfd f4, lbl_804566E8-_SDA2_BASE_(r2)
/* 80369440 00366380 C8 02 CC E0 */ lfd f0, lbl_804566E0-_SDA2_BASE_(r2)
/* 80369444 00366384 FC 69 FA 7C */ fnmsub f3, f9, f9, f31
/* 80369448 00366388 C8 E2 CC A0 */ lfd f7, lbl_804566A0-_SDA2_BASE_(r2)
/* 8036944C 0036638C FD 1F 11 7A */ fmadd f8, f31, f5, f2
/* 80369450 00366390 C8 42 CC D8 */ lfd f2, lbl_804566D8-_SDA2_BASE_(r2)
/* 80369454 00366394 FC A4 07 FA */ fmadd f5, f4, f31, f0
/* 80369458 00366398 C8 C2 CC 98 */ lfd f6, lbl_80456698-_SDA2_BASE_(r2)
/* 8036945C 0036639C C8 02 CC D0 */ lfd f0, lbl_804566D0-_SDA2_BASE_(r2)
/* 80369460 003663A0 FC FF 3A 3A */ fmadd f7, f31, f8, f7
/* 80369464 003663A4 C8 82 CC C8 */ lfd f4, lbl_804566C8-_SDA2_BASE_(r2)
/* 80369468 003663A8 FC BF 11 7A */ fmadd f5, f31, f5, f2
/* 8036946C 003663AC C8 42 CC F8 */ lfd f2, lbl_804566F8-_SDA2_BASE_(r2)
/* 80369470 003663B0 FC DF 31 FA */ fmadd f6, f31, f7, f6
/* 80369474 003663B4 FC BF 01 7A */ fmadd f5, f31, f5, f0
/* 80369478 003663B8 FC 01 48 2A */ fadd f0, f1, f9
/* 8036947C 003663BC FC DF 01 B2 */ fmul f6, f31, f6
/* 80369480 003663C0 FC 9F 21 7A */ fmadd f4, f31, f5, f4
/* 80369484 003663C4 FC 03 00 24 */ fdiv f0, f3, f0
/* 80369488 003663C8 FC 66 20 24 */ fdiv f3, f6, f4
/* 8036948C 003663CC FC 03 00 7A */ fmadd f0, f3, f1, f0
/* 80369490 003663D0 FC 09 00 2A */ fadd f0, f9, f0
/* 80369494 003663D4 FC 22 00 32 */ fmul f1, f2, f0
lbl_80369498:
/* 80369498 003663D8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 8036949C 003663DC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 803694A0 003663E0 CB E1 00 20 */ lfd f31, 0x20(r1)
/* 803694A4 003663E4 7C 08 03 A6 */ mtlr r0
/* 803694A8 003663E8 38 21 00 30 */ addi r1, r1, 0x30
/* 803694AC 003663EC 4E 80 00 20 */ blr
.global func_803694B0
func_803694B0:
/* 803694B0 003663F0 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 803694B4 003663F4 7C 08 02 A6 */ mflr r0
/* 803694B8 003663F8 90 01 00 54 */ stw r0, 0x54(r1)
/* 803694BC 003663FC DB E1 00 40 */ stfd f31, 0x40(r1)
/* 803694C0 00366400 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0
/* 803694C4 00366404 DB C1 00 30 */ stfd f30, 0x30(r1)
/* 803694C8 00366408 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0
/* 803694CC 0036640C DB A1 00 20 */ stfd f29, 0x20(r1)
/* 803694D0 00366410 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0
/* 803694D4 00366414 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803694D8 00366418 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803694DC 0036641C D8 21 00 08 */ stfd f1, 8(r1)
/* 803694E0 00366420 3C 00 3F F0 */ lis r0, 0x3ff0
/* 803694E4 00366424 83 E1 00 08 */ lwz r31, 8(r1)
/* 803694E8 00366428 57 FE 00 7E */ clrlwi r30, r31, 1
/* 803694EC 0036642C 7C 1E 00 00 */ cmpw r30, r0
/* 803694F0 00366430 41 80 00 34 */ blt lbl_80369524
/* 803694F4 00366434 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803694F8 00366438 3C 7E C0 10 */ addis r3, r30, 0xc010
/* 803694FC 0036643C 7C 60 03 79 */ or. r0, r3, r0
/* 80369500 00366440 40 82 00 18 */ bne lbl_80369518
/* 80369504 00366444 C8 02 CD 08 */ lfd f0, lbl_80456708-_SDA2_BASE_(r2)
/* 80369508 00366448 C8 42 CD 00 */ lfd f2, lbl_80456700-_SDA2_BASE_(r2)
/* 8036950C 0036644C FC 00 00 72 */ fmul f0, f0, f1
/* 80369510 00366450 FC 22 00 7A */ fmadd f1, f2, f1, f0
/* 80369514 00366454 48 00 01 A4 */ b lbl_803696B8
lbl_80369518:
/* 80369518 00366458 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 8036951C 0036645C C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
/* 80369520 00366460 48 00 01 98 */ b lbl_803696B8
lbl_80369524:
/* 80369524 00366464 3C 00 3F E0 */ lis r0, 0x3fe0
/* 80369528 00366468 7C 1E 00 00 */ cmpw r30, r0
/* 8036952C 0036646C 40 80 00 94 */ bge lbl_803695C0
/* 80369530 00366470 3C 00 3E 40 */ lis r0, 0x3e40
/* 80369534 00366474 7C 1E 00 00 */ cmpw r30, r0
/* 80369538 00366478 40 80 00 1C */ bge lbl_80369554
/* 8036953C 0036647C C8 42 CD 10 */ lfd f2, lbl_80456710-_SDA2_BASE_(r2)
/* 80369540 00366480 C8 02 CD 18 */ lfd f0, lbl_80456718-_SDA2_BASE_(r2)
/* 80369544 00366484 FC 42 08 2A */ fadd f2, f2, f1
/* 80369548 00366488 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8036954C 0036648C 40 81 00 0C */ ble lbl_80369558
/* 80369550 00366490 48 00 01 68 */ b lbl_803696B8
lbl_80369554:
/* 80369554 00366494 FF E1 00 72 */ fmul f31, f1, f1
lbl_80369558:
/* 80369558 00366498 C8 22 CD 48 */ lfd f1, lbl_80456748-_SDA2_BASE_(r2)
/* 8036955C 0036649C C8 02 CD 40 */ lfd f0, lbl_80456740-_SDA2_BASE_(r2)
/* 80369560 003664A0 C8 42 CD 38 */ lfd f2, lbl_80456738-_SDA2_BASE_(r2)
/* 80369564 003664A4 FC 61 07 FA */ fmadd f3, f1, f31, f0
/* 80369568 003664A8 C8 C2 CD 30 */ lfd f6, lbl_80456730-_SDA2_BASE_(r2)
/* 8036956C 003664AC C8 22 CD 68 */ lfd f1, lbl_80456768-_SDA2_BASE_(r2)
/* 80369570 003664B0 C8 02 CD 60 */ lfd f0, lbl_80456760-_SDA2_BASE_(r2)
/* 80369574 003664B4 C8 A2 CD 28 */ lfd f5, lbl_80456728-_SDA2_BASE_(r2)
/* 80369578 003664B8 FC FF 10 FA */ fmadd f7, f31, f3, f2
/* 8036957C 003664BC C8 42 CD 58 */ lfd f2, lbl_80456758-_SDA2_BASE_(r2)
/* 80369580 003664C0 FC 61 07 FA */ fmadd f3, f1, f31, f0
/* 80369584 003664C4 C8 82 CD 20 */ lfd f4, lbl_80456720-_SDA2_BASE_(r2)
/* 80369588 003664C8 C8 22 CD 50 */ lfd f1, lbl_80456750-_SDA2_BASE_(r2)
/* 8036958C 003664CC FC DF 31 FA */ fmadd f6, f31, f7, f6
/* 80369590 003664D0 C8 02 CD 18 */ lfd f0, lbl_80456718-_SDA2_BASE_(r2)
/* 80369594 003664D4 FC 5F 10 FA */ fmadd f2, f31, f3, f2
/* 80369598 003664D8 C8 E1 00 08 */ lfd f7, 8(r1)
/* 8036959C 003664DC FC 7F 29 BA */ fmadd f3, f31, f6, f5
/* 803695A0 003664E0 FC 3F 08 BA */ fmadd f1, f31, f2, f1
/* 803695A4 003664E4 FC 5F 20 FA */ fmadd f2, f31, f3, f4
/* 803695A8 003664E8 FC 1F 00 7A */ fmadd f0, f31, f1, f0
/* 803695AC 003664EC FC 3F 00 B2 */ fmul f1, f31, f2
/* 803695B0 003664F0 FC 01 00 24 */ fdiv f0, f1, f0
/* 803695B4 003664F4 FC 27 38 3A */ fmadd f1, f7, f0, f7
/* 803695B8 003664F8 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 803695BC 003664FC 48 00 00 FC */ b lbl_803696B8
lbl_803695C0:
/* 803695C0 00366500 FC 20 0A 10 */ fabs f1, f1
/* 803695C4 00366504 C9 22 CD 18 */ lfd f9, lbl_80456718-_SDA2_BASE_(r2)
/* 803695C8 00366508 C8 02 CD 70 */ lfd f0, lbl_80456770-_SDA2_BASE_(r2)
/* 803695CC 0036650C C8 E2 CD 48 */ lfd f7, lbl_80456748-_SDA2_BASE_(r2)
/* 803695D0 00366510 FD 09 08 28 */ fsub f8, f9, f1
/* 803695D4 00366514 C8 62 CD 40 */ lfd f3, lbl_80456740-_SDA2_BASE_(r2)
/* 803695D8 00366518 C8 C2 CD 38 */ lfd f6, lbl_80456738-_SDA2_BASE_(r2)
/* 803695DC 0036651C C8 A2 CD 30 */ lfd f5, lbl_80456730-_SDA2_BASE_(r2)
/* 803695E0 00366520 FF E0 02 32 */ fmul f31, f0, f8
/* 803695E4 00366524 C8 42 CD 68 */ lfd f2, lbl_80456768-_SDA2_BASE_(r2)
/* 803695E8 00366528 C8 02 CD 60 */ lfd f0, lbl_80456760-_SDA2_BASE_(r2)
/* 803695EC 0036652C C8 82 CD 28 */ lfd f4, lbl_80456728-_SDA2_BASE_(r2)
/* 803695F0 00366530 C8 22 CD 58 */ lfd f1, lbl_80456758-_SDA2_BASE_(r2)
/* 803695F4 00366534 FC E7 1F FA */ fmadd f7, f7, f31, f3
/* 803695F8 00366538 C8 62 CD 20 */ lfd f3, lbl_80456720-_SDA2_BASE_(r2)
/* 803695FC 0036653C FC 42 07 FA */ fmadd f2, f2, f31, f0
/* 80369600 00366540 C8 02 CD 50 */ lfd f0, lbl_80456750-_SDA2_BASE_(r2)
/* 80369604 00366544 D9 01 00 10 */ stfd f8, 0x10(r1)
/* 80369608 00366548 FC DF 31 FA */ fmadd f6, f31, f7, f6
/* 8036960C 0036654C FC 3F 08 BA */ fmadd f1, f31, f2, f1
/* 80369610 00366550 FC 5F 29 BA */ fmadd f2, f31, f6, f5
/* 80369614 00366554 FC 1F 00 7A */ fmadd f0, f31, f1, f0
/* 80369618 00366558 FC 3F 20 BA */ fmadd f1, f31, f2, f4
/* 8036961C 0036655C FF BF 48 3A */ fmadd f29, f31, f0, f9
/* 80369620 00366560 FC 1F 18 7A */ fmadd f0, f31, f1, f3
/* 80369624 00366564 FC 20 F8 90 */ fmr f1, f31
/* 80369628 00366568 FF DF 00 32 */ fmul f30, f31, f0
/* 8036962C 0036656C 48 00 34 29 */ bl func_8036CA54
/* 80369630 00366570 3C 60 3F EF */ lis r3, 0x3FEF3333@ha
/* 80369634 00366574 38 03 33 33 */ addi r0, r3, 0x3FEF3333@l
/* 80369638 00366578 7C 1E 00 00 */ cmpw r30, r0
/* 8036963C 0036657C 41 80 00 28 */ blt lbl_80369664
/* 80369640 00366580 FC 9E E8 24 */ fdiv f4, f30, f29
/* 80369644 00366584 C8 42 CD 78 */ lfd f2, lbl_80456778-_SDA2_BASE_(r2)
/* 80369648 00366588 C8 02 CD 08 */ lfd f0, lbl_80456708-_SDA2_BASE_(r2)
/* 8036964C 0036658C C8 62 CD 00 */ lfd f3, lbl_80456700-_SDA2_BASE_(r2)
/* 80369650 00366590 FC 21 09 3A */ fmadd f1, f1, f4, f1
/* 80369654 00366594 D8 81 00 10 */ stfd f4, 0x10(r1)
/* 80369658 00366598 FC 02 00 78 */ fmsub f0, f2, f1, f0
/* 8036965C 0036659C FC 23 00 28 */ fsub f1, f3, f0
/* 80369660 003665A0 48 00 00 48 */ b lbl_803696A8
lbl_80369664:
/* 80369664 003665A4 D8 21 00 10 */ stfd f1, 0x10(r1)
/* 80369668 003665A8 38 00 00 00 */ li r0, 0
/* 8036966C 003665AC C8 E2 CD 78 */ lfd f7, lbl_80456778-_SDA2_BASE_(r2)
/* 80369670 003665B0 FC BE E8 24 */ fdiv f5, f30, f29
/* 80369674 003665B4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80369678 003665B8 C8 02 CD 08 */ lfd f0, lbl_80456708-_SDA2_BASE_(r2)
/* 8036967C 003665BC C9 01 00 10 */ lfd f8, 0x10(r1)
/* 80369680 003665C0 C8 42 CD 80 */ lfd f2, lbl_80456780-_SDA2_BASE_(r2)
/* 80369684 003665C4 FC 88 FA 3C */ fnmsub f4, f8, f8, f31
/* 80369688 003665C8 FC 61 40 2A */ fadd f3, f1, f8
/* 8036968C 003665CC FC C7 00 72 */ fmul f6, f7, f1
/* 80369690 003665D0 FC 24 18 24 */ fdiv f1, f4, f3
/* 80369694 003665D4 FC 27 00 7C */ fnmsub f1, f7, f1, f0
/* 80369698 003665D8 FC 07 12 3C */ fnmsub f0, f7, f8, f2
/* 8036969C 003665DC FC 26 09 78 */ fmsub f1, f6, f5, f1
/* 803696A0 003665E0 FC 01 00 28 */ fsub f0, f1, f0
/* 803696A4 003665E4 FC 22 00 28 */ fsub f1, f2, f0
lbl_803696A8:
/* 803696A8 003665E8 2C 1F 00 00 */ cmpwi r31, 0
/* 803696AC 003665EC 40 81 00 08 */ ble lbl_803696B4
/* 803696B0 003665F0 48 00 00 08 */ b lbl_803696B8
lbl_803696B4:
/* 803696B4 003665F4 FC 20 08 50 */ fneg f1, f1
lbl_803696B8:
/* 803696B8 003665F8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0
/* 803696BC 003665FC CB E1 00 40 */ lfd f31, 0x40(r1)
/* 803696C0 00366600 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0
/* 803696C4 00366604 CB C1 00 30 */ lfd f30, 0x30(r1)
/* 803696C8 00366608 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0
/* 803696CC 0036660C CB A1 00 20 */ lfd f29, 0x20(r1)
/* 803696D0 00366610 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803696D4 00366614 80 01 00 54 */ lwz r0, 0x54(r1)
/* 803696D8 00366618 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803696DC 0036661C 7C 08 03 A6 */ mtlr r0
/* 803696E0 00366620 38 21 00 50 */ addi r1, r1, 0x50
/* 803696E4 00366624 4E 80 00 20 */ blr
.global func_803696E8
func_803696E8:
/* 803696E8 00366628 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 803696EC 0036662C 7C 08 02 A6 */ mflr r0
/* 803696F0 00366630 3C 60 7F F0 */ lis r3, 0x7ff0
/* 803696F4 00366634 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 803696F8 00366638 81 01 00 14 */ lwz r8, 0x14(r1)
/* 803696FC 0036663C 90 01 00 34 */ stw r0, 0x34(r1)
/* 80369700 00366640 7C 08 00 D0 */ neg r0, r8
/* 80369704 00366644 80 81 00 10 */ lwz r4, 0x10(r1)
/* 80369708 00366648 7D 00 03 78 */ or r0, r8, r0
/* 8036970C 0036664C D8 21 00 08 */ stfd f1, 8(r1)
/* 80369710 00366650 54 86 00 7E */ clrlwi r6, r4, 1
/* 80369714 00366654 54 00 0F FE */ srwi r0, r0, 0x1f
/* 80369718 00366658 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036971C 0036665C 7C C0 03 78 */ or r0, r6, r0
/* 80369720 00366660 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80369724 00366664 7C 00 18 40 */ cmplw r0, r3
/* 80369728 00366668 81 21 00 0C */ lwz r9, 0xc(r1)
/* 8036972C 0036666C 54 A7 00 7E */ clrlwi r7, r5, 1
/* 80369730 00366670 41 81 00 1C */ bgt lbl_8036974C
/* 80369734 00366674 7C 09 00 D0 */ neg r0, r9
/* 80369738 00366678 7D 20 03 78 */ or r0, r9, r0
/* 8036973C 0036667C 54 00 0F FE */ srwi r0, r0, 0x1f
/* 80369740 00366680 7C E0 03 78 */ or r0, r7, r0
/* 80369744 00366684 7C 00 18 40 */ cmplw r0, r3
/* 80369748 00366688 40 81 00 14 */ ble lbl_8036975C
lbl_8036974C:
/* 8036974C 0036668C C8 21 00 10 */ lfd f1, 0x10(r1)
/* 80369750 00366690 C8 01 00 08 */ lfd f0, 8(r1)
/* 80369754 00366694 FC 21 00 2A */ fadd f1, f1, f0
/* 80369758 00366698 48 00 02 0C */ b lbl_80369964
lbl_8036975C:
/* 8036975C 0036669C 3C 04 C0 10 */ addis r0, r4, 0xc010
/* 80369760 003666A0 7C 00 43 79 */ or. r0, r0, r8
/* 80369764 003666A4 40 82 00 0C */ bne lbl_80369770
/* 80369768 003666A8 48 00 25 3D */ bl func_8036BCA4
/* 8036976C 003666AC 48 00 01 F8 */ b lbl_80369964
lbl_80369770:
/* 80369770 003666B0 7C E0 4B 79 */ or. r0, r7, r9
/* 80369774 003666B4 54 80 17 BC */ rlwinm r0, r4, 2, 0x1e, 0x1e
/* 80369778 003666B8 7C 1F 03 78 */ mr r31, r0
/* 8036977C 003666BC 50 BF 0F FE */ rlwimi r31, r5, 1, 0x1f, 0x1f
/* 80369780 003666C0 40 82 00 3C */ bne lbl_803697BC
/* 80369784 003666C4 2C 1F 00 02 */ cmpwi r31, 2
/* 80369788 003666C8 41 82 00 24 */ beq lbl_803697AC
/* 8036978C 003666CC 40 80 00 10 */ bge lbl_8036979C
/* 80369790 003666D0 2C 1F 00 00 */ cmpwi r31, 0
/* 80369794 003666D4 40 80 01 D0 */ bge lbl_80369964
/* 80369798 003666D8 48 00 00 24 */ b lbl_803697BC
lbl_8036979C:
/* 8036979C 003666DC 2C 1F 00 04 */ cmpwi r31, 4
/* 803697A0 003666E0 40 80 00 1C */ bge lbl_803697BC
/* 803697A4 003666E4 48 00 00 10 */ b lbl_803697B4
/* 803697A8 003666E8 48 00 01 BC */ b lbl_80369964
lbl_803697AC:
/* 803697AC 003666EC C8 22 CD 88 */ lfd f1, lbl_80456788-_SDA2_BASE_(r2)
/* 803697B0 003666F0 48 00 01 B4 */ b lbl_80369964
lbl_803697B4:
/* 803697B4 003666F4 C8 22 CD 90 */ lfd f1, lbl_80456790-_SDA2_BASE_(r2)
/* 803697B8 003666F8 48 00 01 AC */ b lbl_80369964
lbl_803697BC:
/* 803697BC 003666FC 7C C0 43 79 */ or. r0, r6, r8
/* 803697C0 00366700 40 82 00 1C */ bne lbl_803697DC
/* 803697C4 00366704 2C 05 00 00 */ cmpwi r5, 0
/* 803697C8 00366708 40 80 00 0C */ bge lbl_803697D4
/* 803697CC 0036670C C8 22 CD 98 */ lfd f1, lbl_80456798-_SDA2_BASE_(r2)
/* 803697D0 00366710 48 00 01 94 */ b lbl_80369964
lbl_803697D4:
/* 803697D4 00366714 C8 22 CD A0 */ lfd f1, lbl_804567A0-_SDA2_BASE_(r2)
/* 803697D8 00366718 48 00 01 8C */ b lbl_80369964
lbl_803697DC:
/* 803697DC 0036671C 3C 06 80 10 */ addis r0, r6, 0x8010
/* 803697E0 00366720 28 00 00 00 */ cmplwi r0, 0
/* 803697E4 00366724 40 82 00 A0 */ bne lbl_80369884
/* 803697E8 00366728 3C 07 80 10 */ addis r0, r7, 0x8010
/* 803697EC 0036672C 28 00 00 00 */ cmplwi r0, 0
/* 803697F0 00366730 40 82 00 4C */ bne lbl_8036983C
/* 803697F4 00366734 2C 1F 00 02 */ cmpwi r31, 2
/* 803697F8 00366738 41 82 00 34 */ beq lbl_8036982C
/* 803697FC 0036673C 40 80 00 14 */ bge lbl_80369810
/* 80369800 00366740 2C 1F 00 00 */ cmpwi r31, 0
/* 80369804 00366744 41 82 00 18 */ beq lbl_8036981C
/* 80369808 00366748 40 80 00 1C */ bge lbl_80369824
/* 8036980C 0036674C 48 00 00 78 */ b lbl_80369884
lbl_80369810:
/* 80369810 00366750 2C 1F 00 04 */ cmpwi r31, 4
/* 80369814 00366754 40 80 00 70 */ bge lbl_80369884
/* 80369818 00366758 48 00 00 1C */ b lbl_80369834
lbl_8036981C:
/* 8036981C 0036675C C8 22 CD A8 */ lfd f1, lbl_804567A8-_SDA2_BASE_(r2)
/* 80369820 00366760 48 00 01 44 */ b lbl_80369964
lbl_80369824:
/* 80369824 00366764 C8 22 CD B0 */ lfd f1, lbl_804567B0-_SDA2_BASE_(r2)
/* 80369828 00366768 48 00 01 3C */ b lbl_80369964
lbl_8036982C:
/* 8036982C 0036676C C8 22 CD B8 */ lfd f1, lbl_804567B8-_SDA2_BASE_(r2)
/* 80369830 00366770 48 00 01 34 */ b lbl_80369964
lbl_80369834:
/* 80369834 00366774 C8 22 CD C0 */ lfd f1, lbl_804567C0-_SDA2_BASE_(r2)
/* 80369838 00366778 48 00 01 2C */ b lbl_80369964
lbl_8036983C:
/* 8036983C 0036677C 2C 1F 00 02 */ cmpwi r31, 2
/* 80369840 00366780 41 82 00 34 */ beq lbl_80369874
/* 80369844 00366784 40 80 00 14 */ bge lbl_80369858
/* 80369848 00366788 2C 1F 00 00 */ cmpwi r31, 0
/* 8036984C 0036678C 41 82 00 18 */ beq lbl_80369864
/* 80369850 00366790 40 80 00 1C */ bge lbl_8036986C
/* 80369854 00366794 48 00 00 30 */ b lbl_80369884
lbl_80369858:
/* 80369858 00366798 2C 1F 00 04 */ cmpwi r31, 4
/* 8036985C 0036679C 40 80 00 28 */ bge lbl_80369884
/* 80369860 003667A0 48 00 00 1C */ b lbl_8036987C
lbl_80369864:
/* 80369864 003667A4 C8 22 CD C8 */ lfd f1, lbl_804567C8-_SDA2_BASE_(r2)
/* 80369868 003667A8 48 00 00 FC */ b lbl_80369964
lbl_8036986C:
/* 8036986C 003667AC C8 22 CD D0 */ lfd f1, lbl_804567D0-_SDA2_BASE_(r2)
/* 80369870 003667B0 48 00 00 F4 */ b lbl_80369964
lbl_80369874:
/* 80369874 003667B4 C8 22 CD 88 */ lfd f1, lbl_80456788-_SDA2_BASE_(r2)
/* 80369878 003667B8 48 00 00 EC */ b lbl_80369964
lbl_8036987C:
/* 8036987C 003667BC C8 22 CD 90 */ lfd f1, lbl_80456790-_SDA2_BASE_(r2)
/* 80369880 003667C0 48 00 00 E4 */ b lbl_80369964
lbl_80369884:
/* 80369884 003667C4 3C 07 80 10 */ addis r0, r7, 0x8010
/* 80369888 003667C8 28 00 00 00 */ cmplwi r0, 0
/* 8036988C 003667CC 40 82 00 1C */ bne lbl_803698A8
/* 80369890 003667D0 2C 05 00 00 */ cmpwi r5, 0
/* 80369894 003667D4 40 80 00 0C */ bge lbl_803698A0
/* 80369898 003667D8 C8 22 CD 98 */ lfd f1, lbl_80456798-_SDA2_BASE_(r2)
/* 8036989C 003667DC 48 00 00 C8 */ b lbl_80369964
lbl_803698A0:
/* 803698A0 003667E0 C8 22 CD A0 */ lfd f1, lbl_804567A0-_SDA2_BASE_(r2)
/* 803698A4 003667E4 48 00 00 C0 */ b lbl_80369964
lbl_803698A8:
/* 803698A8 003667E8 7C 06 38 50 */ subf r0, r6, r7
/* 803698AC 003667EC 7C 00 A6 70 */ srawi r0, r0, 0x14
/* 803698B0 003667F0 2C 00 00 3C */ cmpwi r0, 0x3c
/* 803698B4 003667F4 40 81 00 10 */ ble lbl_803698C4
/* 803698B8 003667F8 C8 02 CD A0 */ lfd f0, lbl_804567A0-_SDA2_BASE_(r2)
/* 803698BC 003667FC D8 01 00 18 */ stfd f0, 0x18(r1)
/* 803698C0 00366800 48 00 00 38 */ b lbl_803698F8
lbl_803698C4:
/* 803698C4 00366804 2C 04 00 00 */ cmpwi r4, 0
/* 803698C8 00366808 40 80 00 18 */ bge lbl_803698E0
/* 803698CC 0036680C 2C 00 FF C4 */ cmpwi r0, -60
/* 803698D0 00366810 40 80 00 10 */ bge lbl_803698E0
/* 803698D4 00366814 C8 02 CD C8 */ lfd f0, lbl_804567C8-_SDA2_BASE_(r2)
/* 803698D8 00366818 D8 01 00 18 */ stfd f0, 0x18(r1)
/* 803698DC 0036681C 48 00 00 1C */ b lbl_803698F8
lbl_803698E0:
/* 803698E0 00366820 C8 21 00 08 */ lfd f1, 8(r1)
/* 803698E4 00366824 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 803698E8 00366828 FC 01 00 24 */ fdiv f0, f1, f0
/* 803698EC 0036682C FC 20 02 10 */ fabs f1, f0
/* 803698F0 00366830 48 00 23 B5 */ bl func_8036BCA4
/* 803698F4 00366834 D8 21 00 18 */ stfd f1, 0x18(r1)
lbl_803698F8:
/* 803698F8 00366838 2C 1F 00 01 */ cmpwi r31, 1
/* 803698FC 0036683C 41 82 00 28 */ beq lbl_80369924
/* 80369900 00366840 40 80 00 10 */ bge lbl_80369910
/* 80369904 00366844 2C 1F 00 00 */ cmpwi r31, 0
/* 80369908 00366848 40 80 00 14 */ bge lbl_8036991C
/* 8036990C 0036684C 48 00 00 44 */ b lbl_80369950
lbl_80369910:
/* 80369910 00366850 2C 1F 00 03 */ cmpwi r31, 3
/* 80369914 00366854 40 80 00 3C */ bge lbl_80369950
/* 80369918 00366858 48 00 00 20 */ b lbl_80369938
lbl_8036991C:
/* 8036991C 0036685C C8 21 00 18 */ lfd f1, 0x18(r1)
/* 80369920 00366860 48 00 00 44 */ b lbl_80369964
lbl_80369924:
/* 80369924 00366864 80 01 00 18 */ lwz r0, 0x18(r1)
/* 80369928 00366868 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036992C 0036686C 90 01 00 18 */ stw r0, 0x18(r1)
/* 80369930 00366870 C8 21 00 18 */ lfd f1, 0x18(r1)
/* 80369934 00366874 48 00 00 30 */ b lbl_80369964
lbl_80369938:
/* 80369938 00366878 C8 21 00 18 */ lfd f1, 0x18(r1)
/* 8036993C 0036687C C8 02 CD D8 */ lfd f0, lbl_804567D8-_SDA2_BASE_(r2)
/* 80369940 00366880 C8 42 CD 88 */ lfd f2, lbl_80456788-_SDA2_BASE_(r2)
/* 80369944 00366884 FC 01 00 28 */ fsub f0, f1, f0
/* 80369948 00366888 FC 22 00 28 */ fsub f1, f2, f0
/* 8036994C 0036688C 48 00 00 18 */ b lbl_80369964
lbl_80369950:
/* 80369950 00366890 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 80369954 00366894 C8 22 CD D8 */ lfd f1, lbl_804567D8-_SDA2_BASE_(r2)
/* 80369958 00366898 C8 02 CD 88 */ lfd f0, lbl_80456788-_SDA2_BASE_(r2)
/* 8036995C 0036689C FC 22 08 28 */ fsub f1, f2, f1
/* 80369960 003668A0 FC 21 00 28 */ fsub f1, f1, f0
lbl_80369964:
/* 80369964 003668A4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80369968 003668A8 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8036996C 003668AC 7C 08 03 A6 */ mtlr r0
/* 80369970 003668B0 38 21 00 30 */ addi r1, r1, 0x30
/* 80369974 003668B4 4E 80 00 20 */ blr
.global func_80369978
func_80369978:
/* 80369978 003668B8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036997C 003668BC 3C 60 40 86 */ lis r3, 0x40862E42@ha
/* 80369980 003668C0 3C 80 80 3A */ lis r4, lbl_803A2340@ha
/* 80369984 003668C4 D8 21 00 08 */ stfd f1, 8(r1)
/* 80369988 003668C8 38 03 2E 42 */ addi r0, r3, 0x40862E42@l
/* 8036998C 003668CC 38 A4 23 40 */ addi r5, r4, lbl_803A2340@l
/* 80369990 003668D0 81 01 00 08 */ lwz r8, 8(r1)
/* 80369994 003668D4 55 04 00 7E */ clrlwi r4, r8, 1
/* 80369998 003668D8 55 07 0F FE */ srwi r7, r8, 0x1f
/* 8036999C 003668DC 7C 04 00 40 */ cmplw r4, r0
/* 803699A0 003668E0 41 80 00 64 */ blt lbl_80369A04
/* 803699A4 003668E4 3C 00 7F F0 */ lis r0, 0x7ff0
/* 803699A8 003668E8 7C 04 00 40 */ cmplw r4, r0
/* 803699AC 003668EC 41 80 00 30 */ blt lbl_803699DC
/* 803699B0 003668F0 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803699B4 003668F4 55 03 03 3E */ clrlwi r3, r8, 0xc
/* 803699B8 003668F8 7C 60 03 79 */ or. r0, r3, r0
/* 803699BC 003668FC 41 82 00 0C */ beq lbl_803699C8
/* 803699C0 00366900 FC 21 08 2A */ fadd f1, f1, f1
/* 803699C4 00366904 48 00 01 D0 */ b lbl_80369B94
lbl_803699C8:
/* 803699C8 00366908 2C 07 00 00 */ cmpwi r7, 0
/* 803699CC 0036690C 40 82 00 08 */ bne lbl_803699D4
/* 803699D0 00366910 48 00 01 C4 */ b lbl_80369B94
lbl_803699D4:
/* 803699D4 00366914 C8 22 CD E0 */ lfd f1, lbl_804567E0-_SDA2_BASE_(r2)
/* 803699D8 00366918 48 00 01 BC */ b lbl_80369B94
lbl_803699DC:
/* 803699DC 0036691C C8 02 CD E8 */ lfd f0, lbl_804567E8-_SDA2_BASE_(r2)
/* 803699E0 00366920 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 803699E4 00366924 40 81 00 0C */ ble lbl_803699F0
/* 803699E8 00366928 C8 22 CD F0 */ lfd f1, lbl_804567F0-_SDA2_BASE_(r2)
/* 803699EC 0036692C 48 00 01 A8 */ b lbl_80369B94
lbl_803699F0:
/* 803699F0 00366930 C8 02 CD F8 */ lfd f0, lbl_804567F8-_SDA2_BASE_(r2)
/* 803699F4 00366934 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 803699F8 00366938 40 80 00 0C */ bge lbl_80369A04
/* 803699FC 0036693C C8 22 CD E0 */ lfd f1, lbl_804567E0-_SDA2_BASE_(r2)
/* 80369A00 00366940 48 00 01 94 */ b lbl_80369B94
lbl_80369A04:
/* 80369A04 00366944 3C 60 3F D6 */ lis r3, 0x3FD62E42@ha
/* 80369A08 00366948 38 03 2E 42 */ addi r0, r3, 0x3FD62E42@l
/* 80369A0C 0036694C 7C 04 00 40 */ cmplw r4, r0
/* 80369A10 00366950 40 81 00 98 */ ble lbl_80369AA8
/* 80369A14 00366954 3C 60 3F F1 */ lis r3, 0x3FF0A2B2@ha
/* 80369A18 00366958 38 03 A2 B2 */ addi r0, r3, 0x3FF0A2B2@l
/* 80369A1C 0036695C 7C 04 00 40 */ cmplw r4, r0
/* 80369A20 00366960 40 80 00 2C */ bge lbl_80369A4C
/* 80369A24 00366964 54 E6 18 38 */ slwi r6, r7, 3
/* 80369A28 00366968 38 85 00 10 */ addi r4, r5, 0x10
/* 80369A2C 0036696C C8 21 00 08 */ lfd f1, 8(r1)
/* 80369A30 00366970 38 65 00 20 */ addi r3, r5, 0x20
/* 80369A34 00366974 7C 04 34 AE */ lfdx f0, r4, r6
/* 80369A38 00366978 20 07 00 01 */ subfic r0, r7, 1
/* 80369A3C 0036697C 7D 03 34 AE */ lfdx f8, r3, r6
/* 80369A40 00366980 7C C7 00 50 */ subf r6, r7, r0
/* 80369A44 00366984 FC E1 00 28 */ fsub f7, f1, f0
/* 80369A48 00366988 48 00 00 54 */ b lbl_80369A9C
lbl_80369A4C:
/* 80369A4C 0036698C 54 E4 18 38 */ slwi r4, r7, 3
/* 80369A50 00366990 38 65 00 00 */ addi r3, r5, 0
/* 80369A54 00366994 C8 22 CE 00 */ lfd f1, lbl_80456800-_SDA2_BASE_(r2)
/* 80369A58 00366998 3C 00 43 30 */ lis r0, 0x4330
/* 80369A5C 0036699C C8 81 00 08 */ lfd f4, 8(r1)
/* 80369A60 003669A0 7C 03 24 AE */ lfdx f0, r3, r4
/* 80369A64 003669A4 90 01 00 20 */ stw r0, 0x20(r1)
/* 80369A68 003669A8 FC 41 01 3A */ fmadd f2, f1, f4, f0
/* 80369A6C 003669AC C8 62 CE 50 */ lfd f3, lbl_80456850-_SDA2_BASE_(r2)
/* 80369A70 003669B0 C8 25 00 10 */ lfd f1, 0x10(r5)
/* 80369A74 003669B4 C8 05 00 20 */ lfd f0, 0x20(r5)
/* 80369A78 003669B8 FC 40 10 1E */ fctiwz f2, f2
/* 80369A7C 003669BC D8 41 00 18 */ stfd f2, 0x18(r1)
/* 80369A80 003669C0 80 C1 00 1C */ lwz r6, 0x1c(r1)
/* 80369A84 003669C4 6C C0 80 00 */ xoris r0, r6, 0x8000
/* 80369A88 003669C8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80369A8C 003669CC C8 41 00 20 */ lfd f2, 0x20(r1)
/* 80369A90 003669D0 FC 42 18 28 */ fsub f2, f2, f3
/* 80369A94 003669D4 FC E2 20 7C */ fnmsub f7, f2, f1, f4
/* 80369A98 003669D8 FD 02 00 32 */ fmul f8, f2, f0
lbl_80369A9C:
/* 80369A9C 003669DC FC 07 40 28 */ fsub f0, f7, f8
/* 80369AA0 003669E0 D8 01 00 08 */ stfd f0, 8(r1)
/* 80369AA4 003669E4 48 00 00 34 */ b lbl_80369AD8
lbl_80369AA8:
/* 80369AA8 003669E8 3C 00 3E 30 */ lis r0, 0x3e30
/* 80369AAC 003669EC 7C 04 00 40 */ cmplw r4, r0
/* 80369AB0 003669F0 40 80 00 24 */ bge lbl_80369AD4
/* 80369AB4 003669F4 C8 22 CE 08 */ lfd f1, lbl_80456808-_SDA2_BASE_(r2)
/* 80369AB8 003669F8 C8 41 00 08 */ lfd f2, 8(r1)
/* 80369ABC 003669FC C8 02 CE 10 */ lfd f0, lbl_80456810-_SDA2_BASE_(r2)
/* 80369AC0 00366A00 FC 21 10 2A */ fadd f1, f1, f2
/* 80369AC4 00366A04 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80369AC8 00366A08 40 81 00 10 */ ble lbl_80369AD8
/* 80369ACC 00366A0C FC 20 10 2A */ fadd f1, f0, f2
/* 80369AD0 00366A10 48 00 00 C4 */ b lbl_80369B94
lbl_80369AD4:
/* 80369AD4 00366A14 38 C0 00 00 */ li r6, 0
lbl_80369AD8:
/* 80369AD8 00366A18 C8 A1 00 08 */ lfd f5, 8(r1)
/* 80369ADC 00366A1C 2C 06 00 00 */ cmpwi r6, 0
/* 80369AE0 00366A20 C8 82 CE 38 */ lfd f4, lbl_80456838-_SDA2_BASE_(r2)
/* 80369AE4 00366A24 FC C5 01 72 */ fmul f6, f5, f5
/* 80369AE8 00366A28 C8 62 CE 30 */ lfd f3, lbl_80456830-_SDA2_BASE_(r2)
/* 80369AEC 00366A2C C8 42 CE 28 */ lfd f2, lbl_80456828-_SDA2_BASE_(r2)
/* 80369AF0 00366A30 C8 22 CE 20 */ lfd f1, lbl_80456820-_SDA2_BASE_(r2)
/* 80369AF4 00366A34 C8 02 CE 18 */ lfd f0, lbl_80456818-_SDA2_BASE_(r2)
/* 80369AF8 00366A38 FC 64 19 BA */ fmadd f3, f4, f6, f3
/* 80369AFC 00366A3C FC 46 10 FA */ fmadd f2, f6, f3, f2
/* 80369B00 00366A40 FC 26 08 BA */ fmadd f1, f6, f2, f1
/* 80369B04 00366A44 FC 06 00 7A */ fmadd f0, f6, f1, f0
/* 80369B08 00366A48 FC 66 28 3C */ fnmsub f3, f6, f0, f5
/* 80369B0C 00366A4C 40 82 00 24 */ bne lbl_80369B30
/* 80369B10 00366A50 C8 02 CE 40 */ lfd f0, lbl_80456840-_SDA2_BASE_(r2)
/* 80369B14 00366A54 FC 25 00 F2 */ fmul f1, f5, f3
/* 80369B18 00366A58 C8 42 CE 10 */ lfd f2, lbl_80456810-_SDA2_BASE_(r2)
/* 80369B1C 00366A5C FC 03 00 28 */ fsub f0, f3, f0
/* 80369B20 00366A60 FC 01 00 24 */ fdiv f0, f1, f0
/* 80369B24 00366A64 FC 00 28 28 */ fsub f0, f0, f5
/* 80369B28 00366A68 FC 22 00 28 */ fsub f1, f2, f0
/* 80369B2C 00366A6C 48 00 00 68 */ b lbl_80369B94
lbl_80369B30:
/* 80369B30 00366A70 C8 02 CE 40 */ lfd f0, lbl_80456840-_SDA2_BASE_(r2)
/* 80369B34 00366A74 FC 25 00 F2 */ fmul f1, f5, f3
/* 80369B38 00366A78 C8 42 CE 10 */ lfd f2, lbl_80456810-_SDA2_BASE_(r2)
/* 80369B3C 00366A7C 2C 06 FC 03 */ cmpwi r6, -1021
/* 80369B40 00366A80 FC 00 18 28 */ fsub f0, f0, f3
/* 80369B44 00366A84 FC 01 00 24 */ fdiv f0, f1, f0
/* 80369B48 00366A88 FC 08 00 28 */ fsub f0, f8, f0
/* 80369B4C 00366A8C FC 00 38 28 */ fsub f0, f0, f7
/* 80369B50 00366A90 FC 02 00 28 */ fsub f0, f2, f0
/* 80369B54 00366A94 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80369B58 00366A98 41 80 00 1C */ blt lbl_80369B74
/* 80369B5C 00366A9C 80 61 00 10 */ lwz r3, 0x10(r1)
/* 80369B60 00366AA0 54 C0 A0 16 */ slwi r0, r6, 0x14
/* 80369B64 00366AA4 7C 03 02 14 */ add r0, r3, r0
/* 80369B68 00366AA8 90 01 00 10 */ stw r0, 0x10(r1)
/* 80369B6C 00366AAC C8 21 00 10 */ lfd f1, 0x10(r1)
/* 80369B70 00366AB0 48 00 00 24 */ b lbl_80369B94
lbl_80369B74:
/* 80369B74 00366AB4 38 06 03 E8 */ addi r0, r6, 0x3e8
/* 80369B78 00366AB8 80 61 00 10 */ lwz r3, 0x10(r1)
/* 80369B7C 00366ABC 54 00 A0 16 */ slwi r0, r0, 0x14
/* 80369B80 00366AC0 C8 22 CE 48 */ lfd f1, lbl_80456848-_SDA2_BASE_(r2)
/* 80369B84 00366AC4 7C 03 02 14 */ add r0, r3, r0
/* 80369B88 00366AC8 90 01 00 10 */ stw r0, 0x10(r1)
/* 80369B8C 00366ACC C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80369B90 00366AD0 FC 21 00 32 */ fmul f1, f1, f0
lbl_80369B94:
/* 80369B94 00366AD4 38 21 00 30 */ addi r1, r1, 0x30
/* 80369B98 00366AD8 4E 80 00 20 */ blr
.global func_80369B9C
func_80369B9C:
/* 80369B9C 00366ADC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80369BA0 00366AE0 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 80369BA4 00366AE4 D8 21 00 08 */ stfd f1, 8(r1)
/* 80369BA8 00366AE8 81 41 00 10 */ lwz r10, 0x10(r1)
/* 80369BAC 00366AEC 80 C1 00 08 */ lwz r6, 8(r1)
/* 80369BB0 00366AF0 80 A1 00 14 */ lwz r5, 0x14(r1)
/* 80369BB4 00366AF4 55 48 00 7E */ clrlwi r8, r10, 1
/* 80369BB8 00366AF8 54 C0 00 00 */ rlwinm r0, r6, 0, 0, 0
/* 80369BBC 00366AFC 80 81 00 0C */ lwz r4, 0xc(r1)
/* 80369BC0 00366B00 7D 03 2B 79 */ or. r3, r8, r5
/* 80369BC4 00366B04 7C C7 02 78 */ xor r7, r6, r0
/* 80369BC8 00366B08 41 82 00 28 */ beq lbl_80369BF0
/* 80369BCC 00366B0C 3C C0 7F F0 */ lis r6, 0x7ff0
/* 80369BD0 00366B10 7C 07 30 00 */ cmpw r7, r6
/* 80369BD4 00366B14 40 80 00 1C */ bge lbl_80369BF0
/* 80369BD8 00366B18 7C 65 00 D0 */ neg r3, r5
/* 80369BDC 00366B1C 7C A3 1B 78 */ or r3, r5, r3
/* 80369BE0 00366B20 54 63 0F FE */ srwi r3, r3, 0x1f
/* 80369BE4 00366B24 7D 03 1B 78 */ or r3, r8, r3
/* 80369BE8 00366B28 7C 03 30 40 */ cmplw r3, r6
/* 80369BEC 00366B2C 40 81 00 18 */ ble lbl_80369C04
lbl_80369BF0:
/* 80369BF0 00366B30 C8 21 00 08 */ lfd f1, 8(r1)
/* 80369BF4 00366B34 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80369BF8 00366B38 FC 01 00 32 */ fmul f0, f1, f0
/* 80369BFC 00366B3C FC 20 00 24 */ fdiv f1, f0, f0
/* 80369C00 00366B40 48 00 02 D0 */ b lbl_80369ED0
lbl_80369C04:
/* 80369C04 00366B44 7C 07 40 00 */ cmpw r7, r8
/* 80369C08 00366B48 41 81 00 30 */ bgt lbl_80369C38
/* 80369C0C 00366B4C 41 80 00 0C */ blt lbl_80369C18
/* 80369C10 00366B50 7C 04 28 40 */ cmplw r4, r5
/* 80369C14 00366B54 40 80 00 0C */ bge lbl_80369C20
lbl_80369C18:
/* 80369C18 00366B58 C8 21 00 08 */ lfd f1, 8(r1)
/* 80369C1C 00366B5C 48 00 02 B4 */ b lbl_80369ED0
lbl_80369C20:
/* 80369C20 00366B60 40 82 00 18 */ bne lbl_80369C38
/* 80369C24 00366B64 3C 60 80 3A */ lis r3, lbl_803A2370@ha
/* 80369C28 00366B68 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
/* 80369C2C 00366B6C 38 63 23 70 */ addi r3, r3, lbl_803A2370@l
/* 80369C30 00366B70 7C 23 04 AE */ lfdx f1, r3, r0
/* 80369C34 00366B74 48 00 02 9C */ b lbl_80369ED0
lbl_80369C38:
/* 80369C38 00366B78 3C 60 00 10 */ lis r3, 0x10
/* 80369C3C 00366B7C 7C 07 18 00 */ cmpw r7, r3
/* 80369C40 00366B80 40 80 00 4C */ bge lbl_80369C8C
/* 80369C44 00366B84 2C 07 00 00 */ cmpwi r7, 0
/* 80369C48 00366B88 40 82 00 24 */ bne lbl_80369C6C
/* 80369C4C 00366B8C 7C 83 23 78 */ mr r3, r4
/* 80369C50 00366B90 39 60 FB ED */ li r11, -1043
/* 80369C54 00366B94 48 00 00 0C */ b lbl_80369C60
lbl_80369C58:
/* 80369C58 00366B98 54 63 08 3C */ slwi r3, r3, 1
/* 80369C5C 00366B9C 39 6B FF FF */ addi r11, r11, -1
lbl_80369C60:
/* 80369C60 00366BA0 2C 03 00 00 */ cmpwi r3, 0
/* 80369C64 00366BA4 41 81 FF F4 */ bgt lbl_80369C58
/* 80369C68 00366BA8 48 00 00 2C */ b lbl_80369C94
lbl_80369C6C:
/* 80369C6C 00366BAC 54 E3 58 28 */ slwi r3, r7, 0xb
/* 80369C70 00366BB0 39 60 FC 02 */ li r11, -1022
/* 80369C74 00366BB4 48 00 00 0C */ b lbl_80369C80
lbl_80369C78:
/* 80369C78 00366BB8 54 63 08 3C */ slwi r3, r3, 1
/* 80369C7C 00366BBC 39 6B FF FF */ addi r11, r11, -1
lbl_80369C80:
/* 80369C80 00366BC0 2C 03 00 00 */ cmpwi r3, 0
/* 80369C84 00366BC4 41 81 FF F4 */ bgt lbl_80369C78
/* 80369C88 00366BC8 48 00 00 0C */ b lbl_80369C94
lbl_80369C8C:
/* 80369C8C 00366BCC 7C E3 A6 70 */ srawi r3, r7, 0x14
/* 80369C90 00366BD0 39 63 FC 01 */ addi r11, r3, -1023
lbl_80369C94:
/* 80369C94 00366BD4 3C 60 00 10 */ lis r3, 0x10
/* 80369C98 00366BD8 7C 08 18 00 */ cmpw r8, r3
/* 80369C9C 00366BDC 40 80 00 4C */ bge lbl_80369CE8
/* 80369CA0 00366BE0 2C 08 00 00 */ cmpwi r8, 0
/* 80369CA4 00366BE4 40 82 00 24 */ bne lbl_80369CC8
/* 80369CA8 00366BE8 7C A6 2B 78 */ mr r6, r5
/* 80369CAC 00366BEC 38 60 FB ED */ li r3, -1043
/* 80369CB0 00366BF0 48 00 00 0C */ b lbl_80369CBC
lbl_80369CB4:
/* 80369CB4 00366BF4 54 C6 08 3C */ slwi r6, r6, 1
/* 80369CB8 00366BF8 38 63 FF FF */ addi r3, r3, -1
lbl_80369CBC:
/* 80369CBC 00366BFC 2C 06 00 00 */ cmpwi r6, 0
/* 80369CC0 00366C00 41 81 FF F4 */ bgt lbl_80369CB4
/* 80369CC4 00366C04 48 00 00 2C */ b lbl_80369CF0
lbl_80369CC8:
/* 80369CC8 00366C08 55 06 58 28 */ slwi r6, r8, 0xb
/* 80369CCC 00366C0C 38 60 FC 02 */ li r3, -1022
/* 80369CD0 00366C10 48 00 00 0C */ b lbl_80369CDC
lbl_80369CD4:
/* 80369CD4 00366C14 54 C6 08 3C */ slwi r6, r6, 1
/* 80369CD8 00366C18 38 63 FF FF */ addi r3, r3, -1
lbl_80369CDC:
/* 80369CDC 00366C1C 2C 06 00 00 */ cmpwi r6, 0
/* 80369CE0 00366C20 41 81 FF F4 */ bgt lbl_80369CD4
/* 80369CE4 00366C24 48 00 00 0C */ b lbl_80369CF0
lbl_80369CE8:
/* 80369CE8 00366C28 7D 03 A6 70 */ srawi r3, r8, 0x14
/* 80369CEC 00366C2C 38 63 FC 01 */ addi r3, r3, -1023
lbl_80369CF0:
/* 80369CF0 00366C30 2C 0B FC 02 */ cmpwi r11, -1022
/* 80369CF4 00366C34 41 80 00 10 */ blt lbl_80369D04
/* 80369CF8 00366C38 54 E6 03 3E */ clrlwi r6, r7, 0xc
/* 80369CFC 00366C3C 64 C9 00 10 */ oris r9, r6, 0x10
/* 80369D00 00366C40 48 00 00 34 */ b lbl_80369D34
lbl_80369D04:
/* 80369D04 00366C44 21 2B FC 02 */ subfic r9, r11, -1022
/* 80369D08 00366C48 2C 09 00 1F */ cmpwi r9, 0x1f
/* 80369D0C 00366C4C 41 81 00 1C */ bgt lbl_80369D28
/* 80369D10 00366C50 20 C9 00 20 */ subfic r6, r9, 0x20
/* 80369D14 00366C54 7C E7 48 30 */ slw r7, r7, r9
/* 80369D18 00366C58 7C 86 34 30 */ srw r6, r4, r6
/* 80369D1C 00366C5C 7C 84 48 30 */ slw r4, r4, r9
/* 80369D20 00366C60 7C E9 33 78 */ or r9, r7, r6
/* 80369D24 00366C64 48 00 00 10 */ b lbl_80369D34
lbl_80369D28:
/* 80369D28 00366C68 38 C9 FF E0 */ addi r6, r9, -32
/* 80369D2C 00366C6C 7C 89 30 30 */ slw r9, r4, r6
/* 80369D30 00366C70 38 80 00 00 */ li r4, 0
lbl_80369D34:
/* 80369D34 00366C74 2C 03 FC 02 */ cmpwi r3, -1022
/* 80369D38 00366C78 41 80 00 10 */ blt lbl_80369D48
/* 80369D3C 00366C7C 55 46 03 3E */ clrlwi r6, r10, 0xc
/* 80369D40 00366C80 64 C7 00 10 */ oris r7, r6, 0x10
/* 80369D44 00366C84 48 00 00 34 */ b lbl_80369D78
lbl_80369D48:
/* 80369D48 00366C88 21 43 FC 02 */ subfic r10, r3, -1022
/* 80369D4C 00366C8C 2C 0A 00 1F */ cmpwi r10, 0x1f
/* 80369D50 00366C90 41 81 00 1C */ bgt lbl_80369D6C
/* 80369D54 00366C94 20 CA 00 20 */ subfic r6, r10, 0x20
/* 80369D58 00366C98 7D 07 50 30 */ slw r7, r8, r10
/* 80369D5C 00366C9C 7C A6 34 30 */ srw r6, r5, r6
/* 80369D60 00366CA0 7C A5 50 30 */ slw r5, r5, r10
/* 80369D64 00366CA4 7C E7 33 78 */ or r7, r7, r6
/* 80369D68 00366CA8 48 00 00 10 */ b lbl_80369D78
lbl_80369D6C:
/* 80369D6C 00366CAC 38 CA FF E0 */ addi r6, r10, -32
/* 80369D70 00366CB0 7C A7 30 30 */ slw r7, r5, r6
/* 80369D74 00366CB4 38 A0 00 00 */ li r5, 0
lbl_80369D78:
/* 80369D78 00366CB8 7C C3 58 51 */ subf. r6, r3, r11
/* 80369D7C 00366CBC 7C C9 03 A6 */ mtctr r6
/* 80369D80 00366CC0 41 82 00 64 */ beq lbl_80369DE4
lbl_80369D84:
/* 80369D84 00366CC4 7C 04 28 40 */ cmplw r4, r5
/* 80369D88 00366CC8 7D 07 48 50 */ subf r8, r7, r9
/* 80369D8C 00366CCC 7D 45 20 50 */ subf r10, r5, r4
/* 80369D90 00366CD0 40 80 00 08 */ bge lbl_80369D98
/* 80369D94 00366CD4 39 08 FF FF */ addi r8, r8, -1
lbl_80369D98:
/* 80369D98 00366CD8 2C 08 00 00 */ cmpwi r8, 0
/* 80369D9C 00366CDC 40 80 00 18 */ bge lbl_80369DB4
/* 80369DA0 00366CE0 54 86 0F FE */ srwi r6, r4, 0x1f
/* 80369DA4 00366CE4 7C 84 22 14 */ add r4, r4, r4
/* 80369DA8 00366CE8 7C C9 32 14 */ add r6, r9, r6
/* 80369DAC 00366CEC 7D 29 32 14 */ add r9, r9, r6
/* 80369DB0 00366CF0 48 00 00 30 */ b lbl_80369DE0
lbl_80369DB4:
/* 80369DB4 00366CF4 7D 04 53 79 */ or. r4, r8, r10
/* 80369DB8 00366CF8 40 82 00 18 */ bne lbl_80369DD0
/* 80369DBC 00366CFC 3C 60 80 3A */ lis r3, lbl_803A2370@ha
/* 80369DC0 00366D00 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
/* 80369DC4 00366D04 38 63 23 70 */ addi r3, r3, lbl_803A2370@l
/* 80369DC8 00366D08 7C 23 04 AE */ lfdx f1, r3, r0
/* 80369DCC 00366D0C 48 00 01 04 */ b lbl_80369ED0
lbl_80369DD0:
/* 80369DD0 00366D10 55 46 0F FE */ srwi r6, r10, 0x1f
/* 80369DD4 00366D14 7C 8A 52 14 */ add r4, r10, r10
/* 80369DD8 00366D18 7D 28 32 14 */ add r9, r8, r6
/* 80369DDC 00366D1C 7D 28 4A 14 */ add r9, r8, r9
lbl_80369DE0:
/* 80369DE0 00366D20 42 00 FF A4 */ bdnz lbl_80369D84
lbl_80369DE4:
/* 80369DE4 00366D24 7C 04 28 40 */ cmplw r4, r5
/* 80369DE8 00366D28 7C C7 48 50 */ subf r6, r7, r9
/* 80369DEC 00366D2C 7C A5 20 50 */ subf r5, r5, r4
/* 80369DF0 00366D30 40 80 00 08 */ bge lbl_80369DF8
/* 80369DF4 00366D34 38 C6 FF FF */ addi r6, r6, -1
lbl_80369DF8:
/* 80369DF8 00366D38 2C 06 00 00 */ cmpwi r6, 0
/* 80369DFC 00366D3C 41 80 00 0C */ blt lbl_80369E08
/* 80369E00 00366D40 7C C9 33 78 */ mr r9, r6
/* 80369E04 00366D44 7C A4 2B 78 */ mr r4, r5
lbl_80369E08:
/* 80369E08 00366D48 7D 25 23 79 */ or. r5, r9, r4
/* 80369E0C 00366D4C 40 82 00 18 */ bne lbl_80369E24
/* 80369E10 00366D50 3C 60 80 3A */ lis r3, lbl_803A2370@ha
/* 80369E14 00366D54 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
/* 80369E18 00366D58 38 63 23 70 */ addi r3, r3, lbl_803A2370@l
/* 80369E1C 00366D5C 7C 23 04 AE */ lfdx f1, r3, r0
/* 80369E20 00366D60 48 00 00 B0 */ b lbl_80369ED0
lbl_80369E24:
/* 80369E24 00366D64 3C A0 00 10 */ lis r5, 0x10
/* 80369E28 00366D68 48 00 00 18 */ b lbl_80369E40
lbl_80369E2C:
/* 80369E2C 00366D6C 54 86 0F FE */ srwi r6, r4, 0x1f
/* 80369E30 00366D70 7C 84 22 14 */ add r4, r4, r4
/* 80369E34 00366D74 7C C9 32 14 */ add r6, r9, r6
/* 80369E38 00366D78 38 63 FF FF */ addi r3, r3, -1
/* 80369E3C 00366D7C 7D 29 32 14 */ add r9, r9, r6
lbl_80369E40:
/* 80369E40 00366D80 7C 09 28 00 */ cmpw r9, r5
/* 80369E44 00366D84 41 80 FF E8 */ blt lbl_80369E2C
/* 80369E48 00366D88 2C 03 FC 02 */ cmpwi r3, -1022
/* 80369E4C 00366D8C 41 80 00 24 */ blt lbl_80369E70
/* 80369E50 00366D90 38 63 03 FF */ addi r3, r3, 0x3ff
/* 80369E54 00366D94 3C A9 FF F0 */ addis r5, r9, 0xfff0
/* 80369E58 00366D98 54 63 A0 16 */ slwi r3, r3, 0x14
/* 80369E5C 00366D9C 90 81 00 0C */ stw r4, 0xc(r1)
/* 80369E60 00366DA0 7C A3 1B 78 */ or r3, r5, r3
/* 80369E64 00366DA4 7C 60 03 78 */ or r0, r3, r0
/* 80369E68 00366DA8 90 01 00 08 */ stw r0, 8(r1)
/* 80369E6C 00366DAC 48 00 00 60 */ b lbl_80369ECC
lbl_80369E70:
/* 80369E70 00366DB0 20 C3 FC 02 */ subfic r6, r3, -1022
/* 80369E74 00366DB4 2C 06 00 14 */ cmpwi r6, 0x14
/* 80369E78 00366DB8 41 81 00 1C */ bgt lbl_80369E94
/* 80369E7C 00366DBC 20 66 00 20 */ subfic r3, r6, 0x20
/* 80369E80 00366DC0 7C 84 34 30 */ srw r4, r4, r6
/* 80369E84 00366DC4 7D 23 18 30 */ slw r3, r9, r3
/* 80369E88 00366DC8 7D 29 36 30 */ sraw r9, r9, r6
/* 80369E8C 00366DCC 7C 83 1B 78 */ or r3, r4, r3
/* 80369E90 00366DD0 48 00 00 30 */ b lbl_80369EC0
lbl_80369E94:
/* 80369E94 00366DD4 2C 06 00 1F */ cmpwi r6, 0x1f
/* 80369E98 00366DD8 41 81 00 1C */ bgt lbl_80369EB4
/* 80369E9C 00366DDC 20 A6 00 20 */ subfic r5, r6, 0x20
/* 80369EA0 00366DE0 7C 83 34 30 */ srw r3, r4, r6
/* 80369EA4 00366DE4 7D 24 28 30 */ slw r4, r9, r5
/* 80369EA8 00366DE8 7C 09 03 78 */ mr r9, r0
/* 80369EAC 00366DEC 7C 83 1B 78 */ or r3, r4, r3
/* 80369EB0 00366DF0 48 00 00 10 */ b lbl_80369EC0
lbl_80369EB4:
/* 80369EB4 00366DF4 38 66 FF E0 */ addi r3, r6, -32
/* 80369EB8 00366DF8 7D 23 1E 30 */ sraw r3, r9, r3
/* 80369EBC 00366DFC 7C 09 03 78 */ mr r9, r0
lbl_80369EC0:
/* 80369EC0 00366E00 7D 20 03 78 */ or r0, r9, r0
/* 80369EC4 00366E04 90 61 00 0C */ stw r3, 0xc(r1)
/* 80369EC8 00366E08 90 01 00 08 */ stw r0, 8(r1)
lbl_80369ECC:
/* 80369ECC 00366E0C C8 21 00 08 */ lfd f1, 8(r1)
lbl_80369ED0:
/* 80369ED0 00366E10 38 21 00 20 */ addi r1, r1, 0x20
/* 80369ED4 00366E14 4E 80 00 20 */ blr
.global func_80369ED8
func_80369ED8:
/* 80369ED8 00366E18 94 21 FF 50 */ stwu r1, -0xb0(r1)
/* 80369EDC 00366E1C 7C 08 02 A6 */ mflr r0
/* 80369EE0 00366E20 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 80369EE4 00366E24 DB E1 00 A0 */ stfd f31, 0xa0(r1)
/* 80369EE8 00366E28 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0
/* 80369EEC 00366E2C DB C1 00 90 */ stfd f30, 0x90(r1)
/* 80369EF0 00366E30 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0
/* 80369EF4 00366E34 DB A1 00 80 */ stfd f29, 0x80(r1)
/* 80369EF8 00366E38 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0
/* 80369EFC 00366E3C DB 81 00 70 */ stfd f28, 0x70(r1)
/* 80369F00 00366E40 F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0
/* 80369F04 00366E44 DB 61 00 60 */ stfd f27, 0x60(r1)
/* 80369F08 00366E48 F3 61 00 68 */ psq_st f27, 104(r1), 0, qr0
/* 80369F0C 00366E4C D8 41 00 10 */ stfd f2, 0x10(r1)
/* 80369F10 00366E50 3C 60 80 3A */ lis r3, lbl_803A2380@ha
/* 80369F14 00366E54 38 63 23 80 */ addi r3, r3, lbl_803A2380@l
/* 80369F18 00366E58 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 80369F1C 00366E5C D8 21 00 08 */ stfd f1, 8(r1)
/* 80369F20 00366E60 81 61 00 14 */ lwz r11, 0x14(r1)
/* 80369F24 00366E64 54 A7 00 7E */ clrlwi r7, r5, 1
/* 80369F28 00366E68 80 01 00 08 */ lwz r0, 8(r1)
/* 80369F2C 00366E6C 7C E4 5B 79 */ or. r4, r7, r11
/* 80369F30 00366E70 81 41 00 0C */ lwz r10, 0xc(r1)
/* 80369F34 00366E74 54 06 00 7E */ clrlwi r6, r0, 1
/* 80369F38 00366E78 40 82 00 0C */ bne lbl_80369F44
/* 80369F3C 00366E7C C8 22 CE 58 */ lfd f1, lbl_80456858-_SDA2_BASE_(r2)
/* 80369F40 00366E80 48 00 07 90 */ b lbl_8036A6D0
lbl_80369F44:
/* 80369F44 00366E84 3C 80 7F F0 */ lis r4, 0x7ff0
/* 80369F48 00366E88 7C 06 20 00 */ cmpw r6, r4
/* 80369F4C 00366E8C 41 81 00 38 */ bgt lbl_80369F84
/* 80369F50 00366E90 3C 86 80 10 */ addis r4, r6, 0x8010
/* 80369F54 00366E94 28 04 00 00 */ cmplwi r4, 0
/* 80369F58 00366E98 40 82 00 0C */ bne lbl_80369F64
/* 80369F5C 00366E9C 28 0A 00 00 */ cmplwi r10, 0
/* 80369F60 00366EA0 40 82 00 24 */ bne lbl_80369F84
lbl_80369F64:
/* 80369F64 00366EA4 3C 80 7F F0 */ lis r4, 0x7ff0
/* 80369F68 00366EA8 7C 07 20 00 */ cmpw r7, r4
/* 80369F6C 00366EAC 41 81 00 18 */ bgt lbl_80369F84
/* 80369F70 00366EB0 3C 87 80 10 */ addis r4, r7, 0x8010
/* 80369F74 00366EB4 28 04 00 00 */ cmplwi r4, 0
/* 80369F78 00366EB8 40 82 00 1C */ bne lbl_80369F94
/* 80369F7C 00366EBC 28 0B 00 00 */ cmplwi r11, 0
/* 80369F80 00366EC0 41 82 00 14 */ beq lbl_80369F94
lbl_80369F84:
/* 80369F84 00366EC4 C8 21 00 08 */ lfd f1, 8(r1)
/* 80369F88 00366EC8 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80369F8C 00366ECC FC 21 00 2A */ fadd f1, f1, f0
/* 80369F90 00366ED0 48 00 07 40 */ b lbl_8036A6D0
lbl_80369F94:
/* 80369F94 00366ED4 2C 00 00 00 */ cmpwi r0, 0
/* 80369F98 00366ED8 38 80 00 00 */ li r4, 0
/* 80369F9C 00366EDC 40 80 00 78 */ bge lbl_8036A014
/* 80369FA0 00366EE0 3D 00 43 40 */ lis r8, 0x4340
/* 80369FA4 00366EE4 7C 07 40 00 */ cmpw r7, r8
/* 80369FA8 00366EE8 41 80 00 0C */ blt lbl_80369FB4
/* 80369FAC 00366EEC 38 80 00 02 */ li r4, 2
/* 80369FB0 00366EF0 48 00 00 64 */ b lbl_8036A014
lbl_80369FB4:
/* 80369FB4 00366EF4 3D 00 3F F0 */ lis r8, 0x3ff0
/* 80369FB8 00366EF8 7C 07 40 00 */ cmpw r7, r8
/* 80369FBC 00366EFC 41 80 00 58 */ blt lbl_8036A014
/* 80369FC0 00366F00 7C E8 A6 70 */ srawi r8, r7, 0x14
/* 80369FC4 00366F04 39 08 FC 01 */ addi r8, r8, -1023
/* 80369FC8 00366F08 2C 08 00 14 */ cmpwi r8, 0x14
/* 80369FCC 00366F0C 40 81 00 24 */ ble lbl_80369FF0
/* 80369FD0 00366F10 21 08 00 34 */ subfic r8, r8, 0x34
/* 80369FD4 00366F14 7D 69 44 30 */ srw r9, r11, r8
/* 80369FD8 00366F18 7D 28 40 30 */ slw r8, r9, r8
/* 80369FDC 00366F1C 7C 0B 40 40 */ cmplw r11, r8
/* 80369FE0 00366F20 40 82 00 34 */ bne lbl_8036A014
/* 80369FE4 00366F24 55 24 07 FE */ clrlwi r4, r9, 0x1f
/* 80369FE8 00366F28 20 84 00 02 */ subfic r4, r4, 2
/* 80369FEC 00366F2C 48 00 00 28 */ b lbl_8036A014
lbl_80369FF0:
/* 80369FF0 00366F30 28 0B 00 00 */ cmplwi r11, 0
/* 80369FF4 00366F34 40 82 00 20 */ bne lbl_8036A014
/* 80369FF8 00366F38 21 08 00 14 */ subfic r8, r8, 0x14
/* 80369FFC 00366F3C 7C E9 46 30 */ sraw r9, r7, r8
/* 8036A000 00366F40 7D 28 40 30 */ slw r8, r9, r8
/* 8036A004 00366F44 7C 07 40 00 */ cmpw r7, r8
/* 8036A008 00366F48 40 82 00 0C */ bne lbl_8036A014
/* 8036A00C 00366F4C 55 24 07 FE */ clrlwi r4, r9, 0x1f
/* 8036A010 00366F50 20 84 00 02 */ subfic r4, r4, 2
lbl_8036A014:
/* 8036A014 00366F54 28 0B 00 00 */ cmplwi r11, 0
/* 8036A018 00366F58 40 82 00 CC */ bne lbl_8036A0E4
/* 8036A01C 00366F5C 3D 07 80 10 */ addis r8, r7, 0x8010
/* 8036A020 00366F60 28 08 00 00 */ cmplwi r8, 0
/* 8036A024 00366F64 40 82 00 5C */ bne lbl_8036A080
/* 8036A028 00366F68 3C 06 C0 10 */ addis r0, r6, 0xc010
/* 8036A02C 00366F6C 7C 00 53 79 */ or. r0, r0, r10
/* 8036A030 00366F70 40 82 00 10 */ bne lbl_8036A040
/* 8036A034 00366F74 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 8036A038 00366F78 FC 20 00 28 */ fsub f1, f0, f0
/* 8036A03C 00366F7C 48 00 06 94 */ b lbl_8036A6D0
lbl_8036A040:
/* 8036A040 00366F80 3C 00 3F F0 */ lis r0, 0x3ff0
/* 8036A044 00366F84 7C 06 00 00 */ cmpw r6, r0
/* 8036A048 00366F88 41 80 00 1C */ blt lbl_8036A064
/* 8036A04C 00366F8C 2C 05 00 00 */ cmpwi r5, 0
/* 8036A050 00366F90 41 80 00 0C */ blt lbl_8036A05C
/* 8036A054 00366F94 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036A058 00366F98 48 00 06 78 */ b lbl_8036A6D0
lbl_8036A05C:
/* 8036A05C 00366F9C C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A060 00366FA0 48 00 06 70 */ b lbl_8036A6D0
lbl_8036A064:
/* 8036A064 00366FA4 2C 05 00 00 */ cmpwi r5, 0
/* 8036A068 00366FA8 40 80 00 10 */ bge lbl_8036A078
/* 8036A06C 00366FAC C8 01 00 10 */ lfd f0, 0x10(r1)
/* 8036A070 00366FB0 FC 20 00 50 */ fneg f1, f0
/* 8036A074 00366FB4 48 00 06 5C */ b lbl_8036A6D0
lbl_8036A078:
/* 8036A078 00366FB8 C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A07C 00366FBC 48 00 06 54 */ b lbl_8036A6D0
lbl_8036A080:
/* 8036A080 00366FC0 3D 07 C0 10 */ addis r8, r7, 0xc010
/* 8036A084 00366FC4 28 08 00 00 */ cmplwi r8, 0
/* 8036A088 00366FC8 40 82 00 24 */ bne lbl_8036A0AC
/* 8036A08C 00366FCC 2C 05 00 00 */ cmpwi r5, 0
/* 8036A090 00366FD0 40 80 00 14 */ bge lbl_8036A0A4
/* 8036A094 00366FD4 C8 22 CE 58 */ lfd f1, lbl_80456858-_SDA2_BASE_(r2)
/* 8036A098 00366FD8 C8 01 00 08 */ lfd f0, 8(r1)
/* 8036A09C 00366FDC FC 21 00 24 */ fdiv f1, f1, f0
/* 8036A0A0 00366FE0 48 00 06 30 */ b lbl_8036A6D0
lbl_8036A0A4:
/* 8036A0A4 00366FE4 C8 21 00 08 */ lfd f1, 8(r1)
/* 8036A0A8 00366FE8 48 00 06 28 */ b lbl_8036A6D0
lbl_8036A0AC:
/* 8036A0AC 00366FEC 3D 05 C0 00 */ addis r8, r5, 0xc000
/* 8036A0B0 00366FF0 28 08 00 00 */ cmplwi r8, 0
/* 8036A0B4 00366FF4 40 82 00 10 */ bne lbl_8036A0C4
/* 8036A0B8 00366FF8 C8 01 00 08 */ lfd f0, 8(r1)
/* 8036A0BC 00366FFC FC 20 00 32 */ fmul f1, f0, f0
/* 8036A0C0 00367000 48 00 06 10 */ b lbl_8036A6D0
lbl_8036A0C4:
/* 8036A0C4 00367004 3D 05 C0 20 */ addis r8, r5, 0xc020
/* 8036A0C8 00367008 28 08 00 00 */ cmplwi r8, 0
/* 8036A0CC 0036700C 40 82 00 18 */ bne lbl_8036A0E4
/* 8036A0D0 00367010 2C 00 00 00 */ cmpwi r0, 0
/* 8036A0D4 00367014 41 80 00 10 */ blt lbl_8036A0E4
/* 8036A0D8 00367018 C8 21 00 08 */ lfd f1, 8(r1)
/* 8036A0DC 0036701C 48 00 29 79 */ bl func_8036CA54
/* 8036A0E0 00367020 48 00 05 F0 */ b lbl_8036A6D0
lbl_8036A0E4:
/* 8036A0E4 00367024 C8 01 00 08 */ lfd f0, 8(r1)
/* 8036A0E8 00367028 28 0A 00 00 */ cmplwi r10, 0
/* 8036A0EC 0036702C FC 20 02 10 */ fabs f1, f0
/* 8036A0F0 00367030 D8 21 00 48 */ stfd f1, 0x48(r1)
/* 8036A0F4 00367034 40 82 00 80 */ bne lbl_8036A174
/* 8036A0F8 00367038 3D 06 80 10 */ addis r8, r6, 0x8010
/* 8036A0FC 0036703C 28 08 00 00 */ cmplwi r8, 0
/* 8036A100 00367040 41 82 00 18 */ beq lbl_8036A118
/* 8036A104 00367044 2C 06 00 00 */ cmpwi r6, 0
/* 8036A108 00367048 41 82 00 10 */ beq lbl_8036A118
/* 8036A10C 0036704C 3D 06 C0 10 */ addis r8, r6, 0xc010
/* 8036A110 00367050 28 08 00 00 */ cmplwi r8, 0
/* 8036A114 00367054 40 82 00 60 */ bne lbl_8036A174
lbl_8036A118:
/* 8036A118 00367058 2C 05 00 00 */ cmpwi r5, 0
/* 8036A11C 0036705C D8 21 00 50 */ stfd f1, 0x50(r1)
/* 8036A120 00367060 40 80 00 10 */ bge lbl_8036A130
/* 8036A124 00367064 C8 02 CE 58 */ lfd f0, lbl_80456858-_SDA2_BASE_(r2)
/* 8036A128 00367068 FC 00 08 24 */ fdiv f0, f0, f1
/* 8036A12C 0036706C D8 01 00 50 */ stfd f0, 0x50(r1)
lbl_8036A130:
/* 8036A130 00367070 2C 00 00 00 */ cmpwi r0, 0
/* 8036A134 00367074 40 80 00 38 */ bge lbl_8036A16C
/* 8036A138 00367078 3C 06 C0 10 */ addis r0, r6, 0xc010
/* 8036A13C 0036707C 7C 00 23 79 */ or. r0, r0, r4
/* 8036A140 00367080 40 82 00 18 */ bne lbl_8036A158
/* 8036A144 00367084 C8 01 00 50 */ lfd f0, 0x50(r1)
/* 8036A148 00367088 FC 00 00 28 */ fsub f0, f0, f0
/* 8036A14C 0036708C FC 00 00 24 */ fdiv f0, f0, f0
/* 8036A150 00367090 D8 01 00 50 */ stfd f0, 0x50(r1)
/* 8036A154 00367094 48 00 00 18 */ b lbl_8036A16C
lbl_8036A158:
/* 8036A158 00367098 2C 04 00 01 */ cmpwi r4, 1
/* 8036A15C 0036709C 40 82 00 10 */ bne lbl_8036A16C
/* 8036A160 003670A0 C8 01 00 50 */ lfd f0, 0x50(r1)
/* 8036A164 003670A4 FC 00 00 50 */ fneg f0, f0
/* 8036A168 003670A8 D8 01 00 50 */ stfd f0, 0x50(r1)
lbl_8036A16C:
/* 8036A16C 003670AC C8 21 00 50 */ lfd f1, 0x50(r1)
/* 8036A170 003670B0 48 00 05 60 */ b lbl_8036A6D0
lbl_8036A174:
/* 8036A174 003670B4 7C 08 FE 70 */ srawi r8, r0, 0x1f
/* 8036A178 003670B8 38 08 00 01 */ addi r0, r8, 1
/* 8036A17C 003670BC 7C 08 23 79 */ or. r8, r0, r4
/* 8036A180 003670C0 40 82 00 18 */ bne lbl_8036A198
/* 8036A184 003670C4 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 8036A188 003670C8 38 00 00 21 */ li r0, 0x21
/* 8036A18C 003670CC 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 8036A190 003670D0 C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
/* 8036A194 003670D4 48 00 05 3C */ b lbl_8036A6D0
lbl_8036A198:
/* 8036A198 003670D8 3D 00 41 E0 */ lis r8, 0x41e0
/* 8036A19C 003670DC 7C 07 40 00 */ cmpw r7, r8
/* 8036A1A0 003670E0 40 81 01 04 */ ble lbl_8036A2A4
/* 8036A1A4 003670E4 3C 60 43 F0 */ lis r3, 0x43f0
/* 8036A1A8 003670E8 7C 07 18 00 */ cmpw r7, r3
/* 8036A1AC 003670EC 40 81 00 4C */ ble lbl_8036A1F8
/* 8036A1B0 003670F0 3C 60 3F F0 */ lis r3, 0x3FEFFFFF@ha
/* 8036A1B4 003670F4 38 E3 FF FF */ addi r7, r3, 0x3FEFFFFF@l
/* 8036A1B8 003670F8 7C 06 38 00 */ cmpw r6, r7
/* 8036A1BC 003670FC 41 81 00 1C */ bgt lbl_8036A1D8
/* 8036A1C0 00367100 2C 05 00 00 */ cmpwi r5, 0
/* 8036A1C4 00367104 40 80 00 0C */ bge lbl_8036A1D0
/* 8036A1C8 00367108 C8 22 CE 68 */ lfd f1, lbl_80456868-_SDA2_BASE_(r2)
/* 8036A1CC 0036710C 48 00 05 04 */ b lbl_8036A6D0
lbl_8036A1D0:
/* 8036A1D0 00367110 C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A1D4 00367114 48 00 04 FC */ b lbl_8036A6D0
lbl_8036A1D8:
/* 8036A1D8 00367118 7C 06 18 00 */ cmpw r6, r3
/* 8036A1DC 0036711C 41 80 00 1C */ blt lbl_8036A1F8
/* 8036A1E0 00367120 2C 05 00 00 */ cmpwi r5, 0
/* 8036A1E4 00367124 40 81 00 0C */ ble lbl_8036A1F0
/* 8036A1E8 00367128 C8 22 CE 68 */ lfd f1, lbl_80456868-_SDA2_BASE_(r2)
/* 8036A1EC 0036712C 48 00 04 E4 */ b lbl_8036A6D0
lbl_8036A1F0:
/* 8036A1F0 00367130 C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A1F4 00367134 48 00 04 DC */ b lbl_8036A6D0
lbl_8036A1F8:
/* 8036A1F8 00367138 3C 60 3F F0 */ lis r3, 0x3FEFFFFF@ha
/* 8036A1FC 0036713C 38 E3 FF FF */ addi r7, r3, 0x3FEFFFFF@l
/* 8036A200 00367140 7C 06 38 00 */ cmpw r6, r7
/* 8036A204 00367144 40 80 00 1C */ bge lbl_8036A220
/* 8036A208 00367148 2C 05 00 00 */ cmpwi r5, 0
/* 8036A20C 0036714C 40 80 00 0C */ bge lbl_8036A218
/* 8036A210 00367150 C8 22 CE 68 */ lfd f1, lbl_80456868-_SDA2_BASE_(r2)
/* 8036A214 00367154 48 00 04 BC */ b lbl_8036A6D0
lbl_8036A218:
/* 8036A218 00367158 C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A21C 0036715C 48 00 04 B4 */ b lbl_8036A6D0
lbl_8036A220:
/* 8036A220 00367160 7C 06 18 00 */ cmpw r6, r3
/* 8036A224 00367164 40 81 00 1C */ ble lbl_8036A240
/* 8036A228 00367168 2C 05 00 00 */ cmpwi r5, 0
/* 8036A22C 0036716C 40 81 00 0C */ ble lbl_8036A238
/* 8036A230 00367170 C8 22 CE 68 */ lfd f1, lbl_80456868-_SDA2_BASE_(r2)
/* 8036A234 00367174 48 00 04 9C */ b lbl_8036A6D0
lbl_8036A238:
/* 8036A238 00367178 C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A23C 0036717C 48 00 04 94 */ b lbl_8036A6D0
lbl_8036A240:
/* 8036A240 00367180 C8 41 00 08 */ lfd f2, 8(r1)
/* 8036A244 00367184 38 60 00 00 */ li r3, 0
/* 8036A248 00367188 C8 02 CE 58 */ lfd f0, lbl_80456858-_SDA2_BASE_(r2)
/* 8036A24C 0036718C C8 22 CE 80 */ lfd f1, lbl_80456880-_SDA2_BASE_(r2)
/* 8036A250 00367190 FC C2 00 28 */ fsub f6, f2, f0
/* 8036A254 00367194 C8 02 CE 78 */ lfd f0, lbl_80456878-_SDA2_BASE_(r2)
/* 8036A258 00367198 C8 42 CE 88 */ lfd f2, lbl_80456888-_SDA2_BASE_(r2)
/* 8036A25C 0036719C C8 62 CE 70 */ lfd f3, lbl_80456870-_SDA2_BASE_(r2)
/* 8036A260 003671A0 FC 81 01 BC */ fnmsub f4, f1, f6, f0
/* 8036A264 003671A4 C8 02 CE 98 */ lfd f0, lbl_80456898-_SDA2_BASE_(r2)
/* 8036A268 003671A8 C8 22 CE 90 */ lfd f1, lbl_80456890-_SDA2_BASE_(r2)
/* 8036A26C 003671AC FC A6 01 B2 */ fmul f5, f6, f6
/* 8036A270 003671B0 D8 C1 00 28 */ stfd f6, 0x28(r1)
/* 8036A274 003671B4 FC 66 19 3C */ fnmsub f3, f6, f4, f3
/* 8036A278 003671B8 FC 42 01 B2 */ fmul f2, f2, f6
/* 8036A27C 003671BC FC 65 00 F2 */ fmul f3, f5, f3
/* 8036A280 003671C0 FC 00 00 F2 */ fmul f0, f0, f3
/* 8036A284 003671C4 FC 21 01 B8 */ fmsub f1, f1, f6, f0
/* 8036A288 003671C8 FC 02 08 2A */ fadd f0, f2, f1
/* 8036A28C 003671CC D8 01 00 30 */ stfd f0, 0x30(r1)
/* 8036A290 003671D0 90 61 00 34 */ stw r3, 0x34(r1)
/* 8036A294 003671D4 C8 01 00 30 */ lfd f0, 0x30(r1)
/* 8036A298 003671D8 FC 00 10 28 */ fsub f0, f0, f2
/* 8036A29C 003671DC FC 01 00 28 */ fsub f0, f1, f0
/* 8036A2A0 003671E0 48 00 01 EC */ b lbl_8036A48C
lbl_8036A2A4:
/* 8036A2A4 003671E4 3C A0 00 10 */ lis r5, 0x10
/* 8036A2A8 003671E8 39 40 00 00 */ li r10, 0
/* 8036A2AC 003671EC 7C 06 28 00 */ cmpw r6, r5
/* 8036A2B0 003671F0 40 80 00 1C */ bge lbl_8036A2CC
/* 8036A2B4 003671F4 C8 21 00 48 */ lfd f1, 0x48(r1)
/* 8036A2B8 003671F8 39 40 FF CB */ li r10, -53
/* 8036A2BC 003671FC C8 02 CE A0 */ lfd f0, lbl_804568A0-_SDA2_BASE_(r2)
/* 8036A2C0 00367200 FC 01 00 32 */ fmul f0, f1, f0
/* 8036A2C4 00367204 D8 01 00 48 */ stfd f0, 0x48(r1)
/* 8036A2C8 00367208 80 C1 00 48 */ lwz r6, 0x48(r1)
lbl_8036A2CC:
/* 8036A2CC 0036720C 3C A0 00 04 */ lis r5, 0x0003988E@ha
/* 8036A2D0 00367210 54 C8 03 3E */ clrlwi r8, r6, 0xc
/* 8036A2D4 00367214 38 A5 98 8E */ addi r5, r5, 0x0003988E@l
/* 8036A2D8 00367218 7C C6 A6 70 */ srawi r6, r6, 0x14
/* 8036A2DC 0036721C 7C 08 28 00 */ cmpw r8, r5
/* 8036A2E0 00367220 65 07 3F F0 */ oris r7, r8, 0x3ff0
/* 8036A2E4 00367224 7D 46 52 14 */ add r10, r6, r10
/* 8036A2E8 00367228 39 4A FC 01 */ addi r10, r10, -1023
/* 8036A2EC 0036722C 41 81 00 0C */ bgt lbl_8036A2F8
/* 8036A2F0 00367230 39 60 00 00 */ li r11, 0
/* 8036A2F4 00367234 48 00 00 28 */ b lbl_8036A31C
lbl_8036A2F8:
/* 8036A2F8 00367238 3C A0 00 0C */ lis r5, 0x000BB67A@ha
/* 8036A2FC 0036723C 38 A5 B6 7A */ addi r5, r5, 0x000BB67A@l
/* 8036A300 00367240 7C 08 28 00 */ cmpw r8, r5
/* 8036A304 00367244 40 80 00 0C */ bge lbl_8036A310
/* 8036A308 00367248 39 60 00 01 */ li r11, 1
/* 8036A30C 0036724C 48 00 00 10 */ b lbl_8036A31C
lbl_8036A310:
/* 8036A310 00367250 3C E7 FF F0 */ addis r7, r7, 0xfff0
/* 8036A314 00367254 39 60 00 00 */ li r11, 0
/* 8036A318 00367258 39 4A 00 01 */ addi r10, r10, 1
lbl_8036A31C:
/* 8036A31C 0036725C 90 E1 00 48 */ stw r7, 0x48(r1)
/* 8036A320 00367260 7C E5 0E 70 */ srawi r5, r7, 1
/* 8036A324 00367264 55 69 18 38 */ slwi r9, r11, 3
/* 8036A328 00367268 38 C3 00 00 */ addi r6, r3, 0
/* 8036A32C 0036726C CB C1 00 48 */ lfd f30, 0x48(r1)
/* 8036A330 00367270 64 A8 20 00 */ oris r8, r5, 0x2000
/* 8036A334 00367274 7C A6 4C AE */ lfdx f5, r6, r9
/* 8036A338 00367278 38 E3 00 20 */ addi r7, r3, 0x20
/* 8036A33C 0036727C C8 22 CE 60 */ lfd f1, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A340 00367280 6D 46 80 00 */ xoris r6, r10, 0x8000
/* 8036A344 00367284 FC 1E 28 2A */ fadd f0, f30, f5
/* 8036A348 00367288 C8 42 CE 58 */ lfd f2, lbl_80456858-_SDA2_BASE_(r2)
/* 8036A34C 0036728C 3C A0 43 30 */ lis r5, 0x4330
/* 8036A350 00367290 39 43 00 10 */ addi r10, r3, 0x10
/* 8036A354 00367294 FF FE 28 28 */ fsub f31, f30, f5
/* 8036A358 00367298 C8 82 CE D0 */ lfd f4, lbl_804568D0-_SDA2_BASE_(r2)
/* 8036A35C 0036729C FF 82 00 24 */ fdiv f28, f2, f0
/* 8036A360 003672A0 C8 02 CE C8 */ lfd f0, lbl_804568C8-_SDA2_BASE_(r2)
/* 8036A364 003672A4 C8 62 CE C0 */ lfd f3, lbl_804568C0-_SDA2_BASE_(r2)
/* 8036A368 003672A8 3D 08 00 08 */ addis r8, r8, 8
/* 8036A36C 003672AC 55 63 90 1A */ slwi r3, r11, 0x12
/* 8036A370 003672B0 D8 21 00 18 */ stfd f1, 0x18(r1)
/* 8036A374 003672B4 FC 3F 07 32 */ fmul f1, f31, f28
/* 8036A378 003672B8 7C 68 1A 14 */ add r3, r8, r3
/* 8036A37C 003672BC 90 61 00 18 */ stw r3, 0x18(r1)
/* 8036A380 003672C0 38 60 00 00 */ li r3, 0
/* 8036A384 003672C4 C8 42 CE B8 */ lfd f2, lbl_804568B8-_SDA2_BASE_(r2)
/* 8036A388 003672C8 C9 81 00 18 */ lfd f12, 0x18(r1)
/* 8036A38C 003672CC FF 61 00 72 */ fmul f27, f1, f1
/* 8036A390 003672D0 D8 21 00 20 */ stfd f1, 0x20(r1)
/* 8036A394 003672D4 C9 62 CE B0 */ lfd f11, lbl_804568B0-_SDA2_BASE_(r2)
/* 8036A398 003672D8 90 61 00 24 */ stw r3, 0x24(r1)
/* 8036A39C 003672DC FD AC 28 28 */ fsub f13, f12, f5
/* 8036A3A0 003672E0 C9 22 CE A8 */ lfd f9, lbl_804568A8-_SDA2_BASE_(r2)
/* 8036A3A4 003672E4 FC 84 06 FA */ fmadd f4, f4, f27, f0
/* 8036A3A8 003672E8 CB A1 00 20 */ lfd f29, 0x20(r1)
/* 8036A3AC 003672EC C9 42 CE D8 */ lfd f10, lbl_804568D8-_SDA2_BASE_(r2)
/* 8036A3B0 003672F0 FC 1D 07 72 */ fmul f0, f29, f29
/* 8036A3B4 003672F4 C8 A2 CE F0 */ lfd f5, lbl_804568F0-_SDA2_BASE_(r2)
/* 8036A3B8 003672F8 C8 C2 CE E8 */ lfd f6, lbl_804568E8-_SDA2_BASE_(r2)
/* 8036A3BC 003672FC FC 7B 19 3A */ fmadd f3, f27, f4, f3
/* 8036A3C0 00367300 C9 02 CE E0 */ lfd f8, lbl_804568E0-_SDA2_BASE_(r2)
/* 8036A3C4 00367304 7C E7 4C AE */ lfdx f7, r7, r9
/* 8036A3C8 00367308 FF FD FB 3C */ fnmsub f31, f29, f12, f31
/* 8036A3CC 0036730C 90 C1 00 5C */ stw r6, 0x5c(r1)
/* 8036A3D0 00367310 C8 82 CF 60 */ lfd f4, lbl_80456960-_SDA2_BASE_(r2)
/* 8036A3D4 00367314 FD 9B 10 FA */ fmadd f12, f27, f3, f2
/* 8036A3D8 00367318 90 A1 00 58 */ stw r5, 0x58(r1)
/* 8036A3DC 0036731C 7C 4A 4C AE */ lfdx f2, r10, r9
/* 8036A3E0 00367320 FF DE 68 28 */ fsub f30, f30, f13
/* 8036A3E4 00367324 C8 61 00 58 */ lfd f3, 0x58(r1)
/* 8036A3E8 00367328 FD BB 06 F2 */ fmul f13, f27, f27
/* 8036A3EC 0036732C FD 7B 5B 3A */ fmadd f11, f27, f12, f11
/* 8036A3F0 00367330 FD 9D FF BC */ fnmsub f12, f29, f30, f31
/* 8036A3F4 00367334 FD 3B 4A FA */ fmadd f9, f27, f11, f9
/* 8036A3F8 00367338 FF 7C 03 32 */ fmul f27, f28, f12
/* 8036A3FC 0036733C FD 8D 02 72 */ fmul f12, f13, f9
/* 8036A400 00367340 FD 7D 08 2A */ fadd f11, f29, f1
/* 8036A404 00367344 FD 2A 00 2A */ fadd f9, f10, f0
/* 8036A408 00367348 FC 63 20 28 */ fsub f3, f3, f4
/* 8036A40C 0036734C FD 9B 62 FA */ fmadd f12, f27, f11, f12
/* 8036A410 00367350 D8 61 00 28 */ stfd f3, 0x28(r1)
/* 8036A414 00367354 FC 89 60 2A */ fadd f4, f9, f12
/* 8036A418 00367358 D8 81 00 18 */ stfd f4, 0x18(r1)
/* 8036A41C 0036735C 90 61 00 1C */ stw r3, 0x1c(r1)
/* 8036A420 00367360 C9 21 00 18 */ lfd f9, 0x18(r1)
/* 8036A424 00367364 FC 89 50 28 */ fsub f4, f9, f10
/* 8036A428 00367368 FD 5D 02 72 */ fmul f10, f29, f9
/* 8036A42C 0036736C FC 04 00 28 */ fsub f0, f4, f0
/* 8036A430 00367370 FC 0C 00 28 */ fsub f0, f12, f0
/* 8036A434 00367374 FC 00 00 72 */ fmul f0, f0, f1
/* 8036A438 00367378 FC 9B 02 7A */ fmadd f4, f27, f9, f0
/* 8036A43C 0036737C FC 0A 20 2A */ fadd f0, f10, f4
/* 8036A440 00367380 D8 01 00 40 */ stfd f0, 0x40(r1)
/* 8036A444 00367384 90 61 00 44 */ stw r3, 0x44(r1)
/* 8036A448 00367388 C8 21 00 40 */ lfd f1, 0x40(r1)
/* 8036A44C 0036738C FC 01 50 28 */ fsub f0, f1, f10
/* 8036A450 00367390 FD 08 00 72 */ fmul f8, f8, f1
/* 8036A454 00367394 FC 04 00 28 */ fsub f0, f4, f0
/* 8036A458 00367398 FC 05 00 32 */ fmul f0, f5, f0
/* 8036A45C 0036739C FC 06 00 7A */ fmadd f0, f6, f1, f0
/* 8036A460 003673A0 FC 27 00 2A */ fadd f1, f7, f0
/* 8036A464 003673A4 FC 08 08 2A */ fadd f0, f8, f1
/* 8036A468 003673A8 FC 00 10 2A */ fadd f0, f0, f2
/* 8036A46C 003673AC FC 03 00 2A */ fadd f0, f3, f0
/* 8036A470 003673B0 D8 01 00 30 */ stfd f0, 0x30(r1)
/* 8036A474 003673B4 90 61 00 34 */ stw r3, 0x34(r1)
/* 8036A478 003673B8 C8 01 00 30 */ lfd f0, 0x30(r1)
/* 8036A47C 003673BC FC 00 18 28 */ fsub f0, f0, f3
/* 8036A480 003673C0 FC 00 10 28 */ fsub f0, f0, f2
/* 8036A484 003673C4 FC 00 40 28 */ fsub f0, f0, f8
/* 8036A488 003673C8 FC 01 00 28 */ fsub f0, f1, f0
lbl_8036A48C:
/* 8036A48C 003673CC 38 64 FF FF */ addi r3, r4, -1
/* 8036A490 003673D0 CB E2 CE 58 */ lfd f31, lbl_80456858-_SDA2_BASE_(r2)
/* 8036A494 003673D4 7C 00 1B 79 */ or. r0, r0, r3
/* 8036A498 003673D8 40 82 00 08 */ bne lbl_8036A4A0
/* 8036A49C 003673DC CB E2 CE F8 */ lfd f31, lbl_804568F8-_SDA2_BASE_(r2)
lbl_8036A4A0:
/* 8036A4A0 003673E0 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036A4A4 003673E4 38 60 00 00 */ li r3, 0
/* 8036A4A8 003673E8 C8 61 00 30 */ lfd f3, 0x30(r1)
/* 8036A4AC 003673EC 3C 00 40 90 */ lis r0, 0x4090
/* 8036A4B0 003673F0 D8 21 00 38 */ stfd f1, 0x38(r1)
/* 8036A4B4 003673F4 FC 01 00 32 */ fmul f0, f1, f0
/* 8036A4B8 003673F8 90 61 00 3C */ stw r3, 0x3c(r1)
/* 8036A4BC 003673FC C8 41 00 38 */ lfd f2, 0x38(r1)
/* 8036A4C0 00367400 FC 21 10 28 */ fsub f1, f1, f2
/* 8036A4C4 00367404 FC 42 00 F2 */ fmul f2, f2, f3
/* 8036A4C8 00367408 FD 83 00 7A */ fmadd f12, f3, f1, f0
/* 8036A4CC 0036740C D8 41 00 40 */ stfd f2, 0x40(r1)
/* 8036A4D0 00367410 FC 0C 10 2A */ fadd f0, f12, f2
/* 8036A4D4 00367414 D8 01 00 50 */ stfd f0, 0x50(r1)
/* 8036A4D8 00367418 80 C1 00 50 */ lwz r6, 0x50(r1)
/* 8036A4DC 0036741C 80 A1 00 54 */ lwz r5, 0x54(r1)
/* 8036A4E0 00367420 7C 06 00 00 */ cmpw r6, r0
/* 8036A4E4 00367424 41 80 00 44 */ blt lbl_8036A528
/* 8036A4E8 00367428 3C 06 BF 70 */ addis r0, r6, 0xbf70
/* 8036A4EC 0036742C 7C 00 2B 79 */ or. r0, r0, r5
/* 8036A4F0 00367430 41 82 00 14 */ beq lbl_8036A504
/* 8036A4F4 00367434 C8 22 CF 00 */ lfd f1, lbl_80456900-_SDA2_BASE_(r2)
/* 8036A4F8 00367438 FC 01 07 F2 */ fmul f0, f1, f31
/* 8036A4FC 0036743C FC 21 00 32 */ fmul f1, f1, f0
/* 8036A500 00367440 48 00 01 D0 */ b lbl_8036A6D0
lbl_8036A504:
/* 8036A504 00367444 C8 22 CF 08 */ lfd f1, lbl_80456908-_SDA2_BASE_(r2)
/* 8036A508 00367448 FC 00 10 28 */ fsub f0, f0, f2
/* 8036A50C 0036744C FC 21 60 2A */ fadd f1, f1, f12
/* 8036A510 00367450 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036A514 00367454 40 81 00 68 */ ble lbl_8036A57C
/* 8036A518 00367458 C8 22 CF 00 */ lfd f1, lbl_80456900-_SDA2_BASE_(r2)
/* 8036A51C 0036745C FC 01 07 F2 */ fmul f0, f1, f31
/* 8036A520 00367460 FC 21 00 32 */ fmul f1, f1, f0
/* 8036A524 00367464 48 00 01 AC */ b lbl_8036A6D0
lbl_8036A528:
/* 8036A528 00367468 3C 60 40 91 */ lis r3, 0x4090CC00@ha
/* 8036A52C 0036746C 54 C4 00 7E */ clrlwi r4, r6, 1
/* 8036A530 00367470 38 03 CC 00 */ addi r0, r3, 0x4090CC00@l
/* 8036A534 00367474 7C 04 00 00 */ cmpw r4, r0
/* 8036A538 00367478 41 80 00 44 */ blt lbl_8036A57C
/* 8036A53C 0036747C 3C 66 3F 6F */ addis r3, r6, 0x3f6f
/* 8036A540 00367480 38 03 34 00 */ addi r0, r3, 0x3400
/* 8036A544 00367484 7C 00 2B 79 */ or. r0, r0, r5
/* 8036A548 00367488 41 82 00 14 */ beq lbl_8036A55C
/* 8036A54C 0036748C C8 22 CF 10 */ lfd f1, lbl_80456910-_SDA2_BASE_(r2)
/* 8036A550 00367490 FC 01 07 F2 */ fmul f0, f1, f31
/* 8036A554 00367494 FC 21 00 32 */ fmul f1, f1, f0
/* 8036A558 00367498 48 00 01 78 */ b lbl_8036A6D0
lbl_8036A55C:
/* 8036A55C 0036749C FC 00 10 28 */ fsub f0, f0, f2
/* 8036A560 003674A0 FC 0C 00 40 */ fcmpo cr0, f12, f0
/* 8036A564 003674A4 4C 40 13 82 */ cror 2, 0, 2
/* 8036A568 003674A8 40 82 00 14 */ bne lbl_8036A57C
/* 8036A56C 003674AC C8 22 CF 10 */ lfd f1, lbl_80456910-_SDA2_BASE_(r2)
/* 8036A570 003674B0 FC 01 07 F2 */ fmul f0, f1, f31
/* 8036A574 003674B4 FC 21 00 32 */ fmul f1, f1, f0
/* 8036A578 003674B8 48 00 01 58 */ b lbl_8036A6D0
lbl_8036A57C:
/* 8036A57C 003674BC 54 C3 00 7E */ clrlwi r3, r6, 1
/* 8036A580 003674C0 3C 00 3F E0 */ lis r0, 0x3fe0
/* 8036A584 003674C4 7C 03 00 00 */ cmpw r3, r0
/* 8036A588 003674C8 54 C4 65 7E */ rlwinm r4, r6, 0xc, 0x15, 0x1f
/* 8036A58C 003674CC 38 60 00 00 */ li r3, 0
/* 8036A590 003674D0 40 81 00 64 */ ble lbl_8036A5F4
/* 8036A594 003674D4 3C 60 00 10 */ lis r3, 0x000FFFFF@ha
/* 8036A598 003674D8 38 04 FC 02 */ addi r0, r4, -1022
/* 8036A59C 003674DC 7C 60 06 30 */ sraw r0, r3, r0
/* 8036A5A0 003674E0 C8 02 CE 60 */ lfd f0, lbl_80456860-_SDA2_BASE_(r2)
/* 8036A5A4 003674E4 7C E6 02 14 */ add r7, r6, r0
/* 8036A5A8 003674E8 38 63 FF FF */ addi r3, r3, 0x000FFFFF@l
/* 8036A5AC 003674EC 54 E0 00 7E */ clrlwi r0, r7, 1
/* 8036A5B0 003674F0 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 8036A5B4 003674F4 7C 04 A6 70 */ srawi r4, r0, 0x14
/* 8036A5B8 003674F8 54 E0 03 3E */ clrlwi r0, r7, 0xc
/* 8036A5BC 003674FC 38 A4 FC 01 */ addi r5, r4, -1023
/* 8036A5C0 00367500 2C 06 00 00 */ cmpwi r6, 0
/* 8036A5C4 00367504 7C 64 2E 30 */ sraw r4, r3, r5
/* 8036A5C8 00367508 64 03 00 10 */ oris r3, r0, 0x10
/* 8036A5CC 0036750C 7C E4 20 78 */ andc r4, r7, r4
/* 8036A5D0 00367510 20 05 00 14 */ subfic r0, r5, 0x14
/* 8036A5D4 00367514 90 81 00 28 */ stw r4, 0x28(r1)
/* 8036A5D8 00367518 7C 63 06 30 */ sraw r3, r3, r0
/* 8036A5DC 0036751C 40 80 00 08 */ bge lbl_8036A5E4
/* 8036A5E0 00367520 7C 63 00 D0 */ neg r3, r3
lbl_8036A5E4:
/* 8036A5E4 00367524 C8 21 00 40 */ lfd f1, 0x40(r1)
/* 8036A5E8 00367528 C8 01 00 28 */ lfd f0, 0x28(r1)
/* 8036A5EC 0036752C FC 01 00 28 */ fsub f0, f1, f0
/* 8036A5F0 00367530 D8 01 00 40 */ stfd f0, 0x40(r1)
lbl_8036A5F4:
/* 8036A5F4 00367534 C8 41 00 40 */ lfd f2, 0x40(r1)
/* 8036A5F8 00367538 38 00 00 00 */ li r0, 0
/* 8036A5FC 0036753C C8 22 CF 28 */ lfd f1, lbl_80456928-_SDA2_BASE_(r2)
/* 8036A600 00367540 54 64 A0 16 */ slwi r4, r3, 0x14
/* 8036A604 00367544 FC 0C 10 2A */ fadd f0, f12, f2
/* 8036A608 00367548 C9 42 CF 18 */ lfd f10, lbl_80456918-_SDA2_BASE_(r2)
/* 8036A60C 0036754C C9 22 CF 20 */ lfd f9, lbl_80456920-_SDA2_BASE_(r2)
/* 8036A610 00367550 C8 C2 CF 50 */ lfd f6, lbl_80456950-_SDA2_BASE_(r2)
/* 8036A614 00367554 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 8036A618 00367558 C8 A2 CF 48 */ lfd f5, lbl_80456948-_SDA2_BASE_(r2)
/* 8036A61C 0036755C 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8036A620 00367560 C8 02 CF 40 */ lfd f0, lbl_80456940-_SDA2_BASE_(r2)
/* 8036A624 00367564 C9 61 00 28 */ lfd f11, 0x28(r1)
/* 8036A628 00367568 C8 82 CF 38 */ lfd f4, lbl_80456938-_SDA2_BASE_(r2)
/* 8036A62C 0036756C FD 0B 10 28 */ fsub f8, f11, f2
/* 8036A630 00367570 C8 62 CF 30 */ lfd f3, lbl_80456930-_SDA2_BASE_(r2)
/* 8036A634 00367574 FC E1 02 F2 */ fmul f7, f1, f11
/* 8036A638 00367578 C8 42 CF 58 */ lfd f2, lbl_80456958-_SDA2_BASE_(r2)
/* 8036A63C 0036757C C8 22 CE 58 */ lfd f1, lbl_80456858-_SDA2_BASE_(r2)
/* 8036A640 00367580 FD 0C 40 28 */ fsub f8, f12, f8
/* 8036A644 00367584 FD 4A 02 F2 */ fmul f10, f10, f11
/* 8036A648 00367588 FD 69 3A 3A */ fmadd f11, f9, f8, f7
/* 8036A64C 0036758C FD 2A 58 2A */ fadd f9, f10, f11
/* 8036A650 00367590 FC E9 02 72 */ fmul f7, f9, f9
/* 8036A654 00367594 D9 21 00 50 */ stfd f9, 0x50(r1)
/* 8036A658 00367598 FD 09 50 28 */ fsub f8, f9, f10
/* 8036A65C 0036759C FC A6 29 FA */ fmadd f5, f6, f7, f5
/* 8036A660 003675A0 D8 E1 00 28 */ stfd f7, 0x28(r1)
/* 8036A664 003675A4 FC CB 40 28 */ fsub f6, f11, f8
/* 8036A668 003675A8 FC A7 01 7A */ fmadd f5, f7, f5, f0
/* 8036A66C 003675AC FC 09 31 BA */ fmadd f0, f9, f6, f6
/* 8036A670 003675B0 FC 87 21 7A */ fmadd f4, f7, f5, f4
/* 8036A674 003675B4 FC 67 19 3A */ fmadd f3, f7, f4, f3
/* 8036A678 003675B8 FC 67 00 F2 */ fmul f3, f7, f3
/* 8036A67C 003675BC FC 89 18 28 */ fsub f4, f9, f3
/* 8036A680 003675C0 FC 69 01 32 */ fmul f3, f9, f4
/* 8036A684 003675C4 D8 81 00 30 */ stfd f4, 0x30(r1)
/* 8036A688 003675C8 FC 44 10 28 */ fsub f2, f4, f2
/* 8036A68C 003675CC FC 43 10 24 */ fdiv f2, f3, f2
/* 8036A690 003675D0 FC 02 00 28 */ fsub f0, f2, f0
/* 8036A694 003675D4 FC 00 48 28 */ fsub f0, f0, f9
/* 8036A698 003675D8 FC 21 00 28 */ fsub f1, f1, f0
/* 8036A69C 003675DC D8 21 00 50 */ stfd f1, 0x50(r1)
/* 8036A6A0 003675E0 80 01 00 50 */ lwz r0, 0x50(r1)
/* 8036A6A4 003675E4 7C 00 22 14 */ add r0, r0, r4
/* 8036A6A8 003675E8 7C 00 A6 71 */ srawi. r0, r0, 0x14
/* 8036A6AC 003675EC 41 81 00 10 */ bgt lbl_8036A6BC
/* 8036A6B0 003675F0 48 00 1C 21 */ bl func_8036C2D0
/* 8036A6B4 003675F4 D8 21 00 50 */ stfd f1, 0x50(r1)
/* 8036A6B8 003675F8 48 00 00 10 */ b lbl_8036A6C8
lbl_8036A6BC:
/* 8036A6BC 003675FC 80 01 00 50 */ lwz r0, 0x50(r1)
/* 8036A6C0 00367600 7C 00 22 14 */ add r0, r0, r4
/* 8036A6C4 00367604 90 01 00 50 */ stw r0, 0x50(r1)
lbl_8036A6C8:
/* 8036A6C8 00367608 C8 01 00 50 */ lfd f0, 0x50(r1)
/* 8036A6CC 0036760C FC 3F 00 32 */ fmul f1, f31, f0
lbl_8036A6D0:
/* 8036A6D0 00367610 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0
/* 8036A6D4 00367614 CB E1 00 A0 */ lfd f31, 0xa0(r1)
/* 8036A6D8 00367618 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0
/* 8036A6DC 0036761C CB C1 00 90 */ lfd f30, 0x90(r1)
/* 8036A6E0 00367620 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0
/* 8036A6E4 00367624 CB A1 00 80 */ lfd f29, 0x80(r1)
/* 8036A6E8 00367628 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0
/* 8036A6EC 0036762C CB 81 00 70 */ lfd f28, 0x70(r1)
/* 8036A6F0 00367630 E3 61 00 68 */ psq_l f27, 104(r1), 0, qr0
/* 8036A6F4 00367634 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 8036A6F8 00367638 CB 61 00 60 */ lfd f27, 0x60(r1)
/* 8036A6FC 0036763C 7C 08 03 A6 */ mtlr r0
/* 8036A700 00367640 38 21 00 B0 */ addi r1, r1, 0xb0
/* 8036A704 00367644 4E 80 00 20 */ blr
.global func_8036A708
func_8036A708:
/* 8036A708 00367648 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8036A70C 0036764C 7C 08 02 A6 */ mflr r0
/* 8036A710 00367650 3C 80 3F E9 */ lis r4, 0x3FE921FB@ha
/* 8036A714 00367654 90 01 00 64 */ stw r0, 0x64(r1)
/* 8036A718 00367658 38 04 21 FB */ addi r0, r4, 0x3FE921FB@l
/* 8036A71C 0036765C 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 8036A720 00367660 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036A724 00367664 83 E1 00 08 */ lwz r31, 8(r1)
/* 8036A728 00367668 93 C1 00 58 */ stw r30, 0x58(r1)
/* 8036A72C 0036766C 7C 7E 1B 78 */ mr r30, r3
/* 8036A730 00367670 57 E6 00 7E */ clrlwi r6, r31, 1
/* 8036A734 00367674 7C 06 00 00 */ cmpw r6, r0
/* 8036A738 00367678 41 81 00 18 */ bgt lbl_8036A750
/* 8036A73C 0036767C D8 3E 00 00 */ stfd f1, 0(r30)
/* 8036A740 00367680 38 60 00 00 */ li r3, 0
/* 8036A744 00367684 C8 02 CF 68 */ lfd f0, lbl_80456968-_SDA2_BASE_(r2)
/* 8036A748 00367688 D8 1E 00 08 */ stfd f0, 8(r30)
/* 8036A74C 0036768C 48 00 03 44 */ b lbl_8036AA90
lbl_8036A750:
/* 8036A750 00367690 3C 60 40 03 */ lis r3, 0x4002D97C@ha
/* 8036A754 00367694 38 03 D9 7C */ addi r0, r3, 0x4002D97C@l
/* 8036A758 00367698 7C 06 00 00 */ cmpw r6, r0
/* 8036A75C 0036769C 40 80 00 DC */ bge lbl_8036A838
/* 8036A760 003676A0 2C 1F 00 00 */ cmpwi r31, 0
/* 8036A764 003676A4 40 81 00 6C */ ble lbl_8036A7D0
/* 8036A768 003676A8 C8 02 CF 70 */ lfd f0, lbl_80456970-_SDA2_BASE_(r2)
/* 8036A76C 003676AC 3C 06 C0 07 */ addis r0, r6, 0xc007
/* 8036A770 003676B0 28 00 21 FB */ cmplwi r0, 0x21fb
/* 8036A774 003676B4 FC 41 00 28 */ fsub f2, f1, f0
/* 8036A778 003676B8 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 8036A77C 003676BC 41 82 00 24 */ beq lbl_8036A7A0
/* 8036A780 003676C0 C8 22 CF 78 */ lfd f1, lbl_80456978-_SDA2_BASE_(r2)
/* 8036A784 003676C4 FC 02 08 28 */ fsub f0, f2, f1
/* 8036A788 003676C8 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A78C 003676CC C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036A790 003676D0 FC 02 00 28 */ fsub f0, f2, f0
/* 8036A794 003676D4 FC 00 08 28 */ fsub f0, f0, f1
/* 8036A798 003676D8 D8 1E 00 08 */ stfd f0, 8(r30)
/* 8036A79C 003676DC 48 00 00 2C */ b lbl_8036A7C8
lbl_8036A7A0:
/* 8036A7A0 003676E0 C8 02 CF 80 */ lfd f0, lbl_80456980-_SDA2_BASE_(r2)
/* 8036A7A4 003676E4 C8 22 CF 88 */ lfd f1, lbl_80456988-_SDA2_BASE_(r2)
/* 8036A7A8 003676E8 FC 42 00 28 */ fsub f2, f2, f0
/* 8036A7AC 003676EC FC 02 08 28 */ fsub f0, f2, f1
/* 8036A7B0 003676F0 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 8036A7B4 003676F4 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A7B8 003676F8 C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036A7BC 003676FC FC 02 00 28 */ fsub f0, f2, f0
/* 8036A7C0 00367700 FC 00 08 28 */ fsub f0, f0, f1
/* 8036A7C4 00367704 D8 1E 00 08 */ stfd f0, 8(r30)
lbl_8036A7C8:
/* 8036A7C8 00367708 38 60 00 01 */ li r3, 1
/* 8036A7CC 0036770C 48 00 02 C4 */ b lbl_8036AA90
lbl_8036A7D0:
/* 8036A7D0 00367710 C8 02 CF 70 */ lfd f0, lbl_80456970-_SDA2_BASE_(r2)
/* 8036A7D4 00367714 3C 06 C0 07 */ addis r0, r6, 0xc007
/* 8036A7D8 00367718 28 00 21 FB */ cmplwi r0, 0x21fb
/* 8036A7DC 0036771C FC 40 08 2A */ fadd f2, f0, f1
/* 8036A7E0 00367720 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 8036A7E4 00367724 41 82 00 24 */ beq lbl_8036A808
/* 8036A7E8 00367728 C8 22 CF 78 */ lfd f1, lbl_80456978-_SDA2_BASE_(r2)
/* 8036A7EC 0036772C FC 01 10 2A */ fadd f0, f1, f2
/* 8036A7F0 00367730 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A7F4 00367734 C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036A7F8 00367738 FC 02 00 28 */ fsub f0, f2, f0
/* 8036A7FC 0036773C FC 01 00 2A */ fadd f0, f1, f0
/* 8036A800 00367740 D8 1E 00 08 */ stfd f0, 8(r30)
/* 8036A804 00367744 48 00 00 2C */ b lbl_8036A830
lbl_8036A808:
/* 8036A808 00367748 C8 02 CF 80 */ lfd f0, lbl_80456980-_SDA2_BASE_(r2)
/* 8036A80C 0036774C C8 22 CF 88 */ lfd f1, lbl_80456988-_SDA2_BASE_(r2)
/* 8036A810 00367750 FC 42 00 2A */ fadd f2, f2, f0
/* 8036A814 00367754 FC 01 10 2A */ fadd f0, f1, f2
/* 8036A818 00367758 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 8036A81C 0036775C D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A820 00367760 C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036A824 00367764 FC 02 00 28 */ fsub f0, f2, f0
/* 8036A828 00367768 FC 01 00 2A */ fadd f0, f1, f0
/* 8036A82C 0036776C D8 1E 00 08 */ stfd f0, 8(r30)
lbl_8036A830:
/* 8036A830 00367770 38 60 FF FF */ li r3, -1
/* 8036A834 00367774 48 00 02 5C */ b lbl_8036AA90
lbl_8036A838:
/* 8036A838 00367778 3C 60 41 39 */ lis r3, 0x413921FB@ha
/* 8036A83C 0036777C 38 03 21 FB */ addi r0, r3, 0x413921FB@l
/* 8036A840 00367780 7C 06 00 00 */ cmpw r6, r0
/* 8036A844 00367784 41 81 01 3C */ bgt lbl_8036A980
/* 8036A848 00367788 FC 80 0A 10 */ fabs f4, f1
/* 8036A84C 0036778C 3C 00 43 30 */ lis r0, 0x4330
/* 8036A850 00367790 C8 22 CF 98 */ lfd f1, lbl_80456998-_SDA2_BASE_(r2)
/* 8036A854 00367794 C8 02 CF 90 */ lfd f0, lbl_80456990-_SDA2_BASE_(r2)
/* 8036A858 00367798 90 01 00 38 */ stw r0, 0x38(r1)
/* 8036A85C 0036779C FC 41 01 3A */ fmadd f2, f1, f4, f0
/* 8036A860 003677A0 C8 62 CF B8 */ lfd f3, lbl_804569B8-_SDA2_BASE_(r2)
/* 8036A864 003677A4 C8 22 CF 70 */ lfd f1, lbl_80456970-_SDA2_BASE_(r2)
/* 8036A868 003677A8 C8 02 CF 78 */ lfd f0, lbl_80456978-_SDA2_BASE_(r2)
/* 8036A86C 003677AC FC 40 10 1E */ fctiwz f2, f2
/* 8036A870 003677B0 D8 41 00 30 */ stfd f2, 0x30(r1)
/* 8036A874 003677B4 80 61 00 34 */ lwz r3, 0x34(r1)
/* 8036A878 003677B8 6C 60 80 00 */ xoris r0, r3, 0x8000
/* 8036A87C 003677BC 2C 03 00 20 */ cmpwi r3, 0x20
/* 8036A880 003677C0 90 01 00 3C */ stw r0, 0x3c(r1)
/* 8036A884 003677C4 C8 41 00 38 */ lfd f2, 0x38(r1)
/* 8036A888 003677C8 FC A2 18 28 */ fsub f5, f2, f3
/* 8036A88C 003677CC FC 81 21 7C */ fnmsub f4, f1, f5, f4
/* 8036A890 003677D0 FC 20 01 72 */ fmul f1, f0, f5
/* 8036A894 003677D4 40 80 00 2C */ bge lbl_8036A8C0
/* 8036A898 003677D8 3C 80 80 3A */ lis r4, lbl_803A24B8@ha
/* 8036A89C 003677DC 54 60 10 3A */ slwi r0, r3, 2
/* 8036A8A0 003677E0 38 84 24 B8 */ addi r4, r4, lbl_803A24B8@l
/* 8036A8A4 003677E4 7C 84 02 14 */ add r4, r4, r0
/* 8036A8A8 003677E8 80 04 FF FC */ lwz r0, -4(r4)
/* 8036A8AC 003677EC 7C 06 00 00 */ cmpw r6, r0
/* 8036A8B0 003677F0 41 82 00 10 */ beq lbl_8036A8C0
/* 8036A8B4 003677F4 FC 04 08 28 */ fsub f0, f4, f1
/* 8036A8B8 003677F8 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A8BC 003677FC 48 00 00 88 */ b lbl_8036A944
lbl_8036A8C0:
/* 8036A8C0 00367800 FC 04 08 28 */ fsub f0, f4, f1
/* 8036A8C4 00367804 7C C4 A6 70 */ srawi r4, r6, 0x14
/* 8036A8C8 00367808 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A8CC 0036780C 80 1E 00 00 */ lwz r0, 0(r30)
/* 8036A8D0 00367810 54 00 65 7E */ rlwinm r0, r0, 0xc, 0x15, 0x1f
/* 8036A8D4 00367814 7C 00 20 50 */ subf r0, r0, r4
/* 8036A8D8 00367818 2C 00 00 10 */ cmpwi r0, 0x10
/* 8036A8DC 0036781C 40 81 00 68 */ ble lbl_8036A944
/* 8036A8E0 00367820 C8 02 CF 80 */ lfd f0, lbl_80456980-_SDA2_BASE_(r2)
/* 8036A8E4 00367824 FC 60 20 90 */ fmr f3, f4
/* 8036A8E8 00367828 C8 22 CF 88 */ lfd f1, lbl_80456988-_SDA2_BASE_(r2)
/* 8036A8EC 0036782C FC 40 01 72 */ fmul f2, f0, f5
/* 8036A8F0 00367830 FC 84 10 28 */ fsub f4, f4, f2
/* 8036A8F4 00367834 FC 03 20 28 */ fsub f0, f3, f4
/* 8036A8F8 00367838 FC 00 10 28 */ fsub f0, f0, f2
/* 8036A8FC 0036783C FC 21 01 78 */ fmsub f1, f1, f5, f0
/* 8036A900 00367840 FC 04 08 28 */ fsub f0, f4, f1
/* 8036A904 00367844 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A908 00367848 80 1E 00 00 */ lwz r0, 0(r30)
/* 8036A90C 0036784C 54 00 65 7E */ rlwinm r0, r0, 0xc, 0x15, 0x1f
/* 8036A910 00367850 7C 00 20 50 */ subf r0, r0, r4
/* 8036A914 00367854 2C 00 00 31 */ cmpwi r0, 0x31
/* 8036A918 00367858 40 81 00 2C */ ble lbl_8036A944
/* 8036A91C 0036785C C8 02 CF A0 */ lfd f0, lbl_804569A0-_SDA2_BASE_(r2)
/* 8036A920 00367860 FC 40 20 90 */ fmr f2, f4
/* 8036A924 00367864 C8 22 CF A8 */ lfd f1, lbl_804569A8-_SDA2_BASE_(r2)
/* 8036A928 00367868 FC 60 01 72 */ fmul f3, f0, f5
/* 8036A92C 0036786C FC 84 18 28 */ fsub f4, f4, f3
/* 8036A930 00367870 FC 02 20 28 */ fsub f0, f2, f4
/* 8036A934 00367874 FC 00 18 28 */ fsub f0, f0, f3
/* 8036A938 00367878 FC 21 01 78 */ fmsub f1, f1, f5, f0
/* 8036A93C 0036787C FC 04 08 28 */ fsub f0, f4, f1
/* 8036A940 00367880 D8 1E 00 00 */ stfd f0, 0(r30)
lbl_8036A944:
/* 8036A944 00367884 C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036A948 00367888 2C 1F 00 00 */ cmpwi r31, 0
/* 8036A94C 0036788C FC 04 00 28 */ fsub f0, f4, f0
/* 8036A950 00367890 FC 00 08 28 */ fsub f0, f0, f1
/* 8036A954 00367894 D8 1E 00 08 */ stfd f0, 8(r30)
/* 8036A958 00367898 40 80 01 38 */ bge lbl_8036AA90
/* 8036A95C 0036789C C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036A960 003678A0 7C 63 00 D0 */ neg r3, r3
/* 8036A964 003678A4 FC 00 00 50 */ fneg f0, f0
/* 8036A968 003678A8 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A96C 003678AC C8 1E 00 08 */ lfd f0, 8(r30)
/* 8036A970 003678B0 FC 00 00 50 */ fneg f0, f0
/* 8036A974 003678B4 D8 1E 00 08 */ stfd f0, 8(r30)
/* 8036A978 003678B8 48 00 01 18 */ b lbl_8036AA90
/* 8036A97C 003678BC 48 00 01 14 */ b lbl_8036AA90
lbl_8036A980:
/* 8036A980 003678C0 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036A984 003678C4 7C 06 00 00 */ cmpw r6, r0
/* 8036A988 003678C8 41 80 00 18 */ blt lbl_8036A9A0
/* 8036A98C 003678CC FC 01 08 28 */ fsub f0, f1, f1
/* 8036A990 003678D0 38 60 00 00 */ li r3, 0
/* 8036A994 003678D4 D8 1E 00 08 */ stfd f0, 8(r30)
/* 8036A998 003678D8 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036A99C 003678DC 48 00 00 F4 */ b lbl_8036AA90
lbl_8036A9A0:
/* 8036A9A0 003678E0 7C C3 A6 70 */ srawi r3, r6, 0x14
/* 8036A9A4 003678E4 3C 00 43 30 */ lis r0, 0x4330
/* 8036A9A8 003678E8 38 A3 FB EA */ addi r5, r3, -1046
/* 8036A9AC 003678EC 80 81 00 0C */ lwz r4, 0xc(r1)
/* 8036A9B0 003678F0 54 A3 A0 16 */ slwi r3, r5, 0x14
/* 8036A9B4 003678F4 90 01 00 30 */ stw r0, 0x30(r1)
/* 8036A9B8 003678F8 7C 63 30 50 */ subf r3, r3, r6
/* 8036A9BC 003678FC C8 A2 CF B8 */ lfd f5, lbl_804569B8-_SDA2_BASE_(r2)
/* 8036A9C0 00367900 90 81 00 14 */ stw r4, 0x14(r1)
/* 8036A9C4 00367904 38 81 00 30 */ addi r4, r1, 0x30
/* 8036A9C8 00367908 C8 82 CF B0 */ lfd f4, lbl_804569B0-_SDA2_BASE_(r2)
/* 8036A9CC 0036790C 38 C0 00 03 */ li r6, 3
/* 8036A9D0 00367910 90 61 00 10 */ stw r3, 0x10(r1)
/* 8036A9D4 00367914 C8 22 CF 68 */ lfd f1, lbl_80456968-_SDA2_BASE_(r2)
/* 8036A9D8 00367918 C8 61 00 10 */ lfd f3, 0x10(r1)
/* 8036A9DC 0036791C 90 01 00 48 */ stw r0, 0x48(r1)
/* 8036A9E0 00367920 FC 00 18 1E */ fctiwz f0, f3
/* 8036A9E4 00367924 D8 01 00 38 */ stfd f0, 0x38(r1)
/* 8036A9E8 00367928 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 8036A9EC 0036792C 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036A9F0 00367930 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036A9F4 00367934 C8 01 00 30 */ lfd f0, 0x30(r1)
/* 8036A9F8 00367938 FC 40 28 28 */ fsub f2, f0, f5
/* 8036A9FC 0036793C FC 03 10 28 */ fsub f0, f3, f2
/* 8036AA00 00367940 D8 41 00 18 */ stfd f2, 0x18(r1)
/* 8036AA04 00367944 FC 64 00 32 */ fmul f3, f4, f0
/* 8036AA08 00367948 FC 00 18 1E */ fctiwz f0, f3
/* 8036AA0C 0036794C D8 61 00 10 */ stfd f3, 0x10(r1)
/* 8036AA10 00367950 D8 01 00 40 */ stfd f0, 0x40(r1)
/* 8036AA14 00367954 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8036AA18 00367958 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036AA1C 0036795C 90 01 00 4C */ stw r0, 0x4c(r1)
/* 8036AA20 00367960 C8 01 00 48 */ lfd f0, 0x48(r1)
/* 8036AA24 00367964 FC 40 28 28 */ fsub f2, f0, f5
/* 8036AA28 00367968 FC 03 10 28 */ fsub f0, f3, f2
/* 8036AA2C 0036796C D8 41 00 20 */ stfd f2, 0x20(r1)
/* 8036AA30 00367970 FC 04 00 32 */ fmul f0, f4, f0
/* 8036AA34 00367974 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 8036AA38 00367978 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 8036AA3C 0036797C 48 00 00 0C */ b lbl_8036AA48
lbl_8036AA40:
/* 8036AA40 00367980 38 84 FF F8 */ addi r4, r4, -8
/* 8036AA44 00367984 38 C6 FF FF */ addi r6, r6, -1
lbl_8036AA48:
/* 8036AA48 00367988 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036AA4C 0036798C FC 01 00 00 */ fcmpu cr0, f1, f0
/* 8036AA50 00367990 41 82 FF F0 */ beq lbl_8036AA40
/* 8036AA54 00367994 3C 60 80 3A */ lis r3, lbl_803A23B0@ha
/* 8036AA58 00367998 7F C4 F3 78 */ mr r4, r30
/* 8036AA5C 0036799C 39 03 23 B0 */ addi r8, r3, lbl_803A23B0@l
/* 8036AA60 003679A0 38 E0 00 02 */ li r7, 2
/* 8036AA64 003679A4 38 61 00 18 */ addi r3, r1, 0x18
/* 8036AA68 003679A8 48 00 01 35 */ bl func_8036AB9C
/* 8036AA6C 003679AC 2C 1F 00 00 */ cmpwi r31, 0
/* 8036AA70 003679B0 40 80 00 20 */ bge lbl_8036AA90
/* 8036AA74 003679B4 C8 1E 00 00 */ lfd f0, 0(r30)
/* 8036AA78 003679B8 7C 63 00 D0 */ neg r3, r3
/* 8036AA7C 003679BC FC 00 00 50 */ fneg f0, f0
/* 8036AA80 003679C0 D8 1E 00 00 */ stfd f0, 0(r30)
/* 8036AA84 003679C4 C8 1E 00 08 */ lfd f0, 8(r30)
/* 8036AA88 003679C8 FC 00 00 50 */ fneg f0, f0
/* 8036AA8C 003679CC D8 1E 00 08 */ stfd f0, 8(r30)
lbl_8036AA90:
/* 8036AA90 003679D0 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8036AA94 003679D4 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 8036AA98 003679D8 83 C1 00 58 */ lwz r30, 0x58(r1)
/* 8036AA9C 003679DC 7C 08 03 A6 */ mtlr r0
/* 8036AAA0 003679E0 38 21 00 60 */ addi r1, r1, 0x60
/* 8036AAA4 003679E4 4E 80 00 20 */ blr
.global func_8036AAA8
func_8036AAA8:
/* 8036AAA8 003679E8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036AAAC 003679EC 3C 00 3E 40 */ lis r0, 0x3e40
/* 8036AAB0 003679F0 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036AAB4 003679F4 80 61 00 08 */ lwz r3, 8(r1)
/* 8036AAB8 003679F8 54 64 00 7E */ clrlwi r4, r3, 1
/* 8036AABC 003679FC 7C 04 00 00 */ cmpw r4, r0
/* 8036AAC0 00367A00 40 80 00 20 */ bge lbl_8036AAE0
/* 8036AAC4 00367A04 FC 00 08 1E */ fctiwz f0, f1
/* 8036AAC8 00367A08 D8 01 00 18 */ stfd f0, 0x18(r1)
/* 8036AACC 00367A0C 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 8036AAD0 00367A10 2C 00 00 00 */ cmpwi r0, 0
/* 8036AAD4 00367A14 40 82 00 0C */ bne lbl_8036AAE0
/* 8036AAD8 00367A18 C8 22 CF C0 */ lfd f1, lbl_804569C0-_SDA2_BASE_(r2)
/* 8036AADC 00367A1C 48 00 00 B8 */ b lbl_8036AB94
lbl_8036AAE0:
/* 8036AAE0 00367A20 C8 C1 00 08 */ lfd f6, 8(r1)
/* 8036AAE4 00367A24 3C 60 3F D3 */ lis r3, 0x3FD33333@ha
/* 8036AAE8 00367A28 38 03 33 33 */ addi r0, r3, 0x3FD33333@l
/* 8036AAEC 00367A2C C8 A2 CF F0 */ lfd f5, lbl_804569F0-_SDA2_BASE_(r2)
/* 8036AAF0 00367A30 FC E6 01 B2 */ fmul f7, f6, f6
/* 8036AAF4 00367A34 C8 02 CF E8 */ lfd f0, lbl_804569E8-_SDA2_BASE_(r2)
/* 8036AAF8 00367A38 C8 82 CF E0 */ lfd f4, lbl_804569E0-_SDA2_BASE_(r2)
/* 8036AAFC 00367A3C 7C 04 00 00 */ cmpw r4, r0
/* 8036AB00 00367A40 C8 62 CF D8 */ lfd f3, lbl_804569D8-_SDA2_BASE_(r2)
/* 8036AB04 00367A44 C8 22 CF D0 */ lfd f1, lbl_804569D0-_SDA2_BASE_(r2)
/* 8036AB08 00367A48 FC A5 01 FA */ fmadd f5, f5, f7, f0
/* 8036AB0C 00367A4C C8 02 CF C8 */ lfd f0, lbl_804569C8-_SDA2_BASE_(r2)
/* 8036AB10 00367A50 FC 87 21 7A */ fmadd f4, f7, f5, f4
/* 8036AB14 00367A54 FC 67 19 3A */ fmadd f3, f7, f4, f3
/* 8036AB18 00367A58 FC 27 08 FA */ fmadd f1, f7, f3, f1
/* 8036AB1C 00367A5C FC 07 00 7A */ fmadd f0, f7, f1, f0
/* 8036AB20 00367A60 FC 87 00 32 */ fmul f4, f7, f0
/* 8036AB24 00367A64 40 80 00 20 */ bge lbl_8036AB44
/* 8036AB28 00367A68 FC 06 00 B2 */ fmul f0, f6, f2
/* 8036AB2C 00367A6C C8 22 CF F8 */ lfd f1, lbl_804569F8-_SDA2_BASE_(r2)
/* 8036AB30 00367A70 C8 42 CF C0 */ lfd f2, lbl_804569C0-_SDA2_BASE_(r2)
/* 8036AB34 00367A74 FC 07 01 38 */ fmsub f0, f7, f4, f0
/* 8036AB38 00367A78 FC 01 01 F8 */ fmsub f0, f1, f7, f0
/* 8036AB3C 00367A7C FC 22 00 28 */ fsub f1, f2, f0
/* 8036AB40 00367A80 48 00 00 54 */ b lbl_8036AB94
lbl_8036AB44:
/* 8036AB44 00367A84 3C 00 3F E9 */ lis r0, 0x3fe9
/* 8036AB48 00367A88 7C 04 00 00 */ cmpw r4, r0
/* 8036AB4C 00367A8C 40 81 00 10 */ ble lbl_8036AB5C
/* 8036AB50 00367A90 C8 02 D0 00 */ lfd f0, lbl_80456A00-_SDA2_BASE_(r2)
/* 8036AB54 00367A94 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 8036AB58 00367A98 48 00 00 14 */ b lbl_8036AB6C
lbl_8036AB5C:
/* 8036AB5C 00367A9C 3C 64 FF E0 */ addis r3, r4, 0xffe0
/* 8036AB60 00367AA0 38 00 00 00 */ li r0, 0
/* 8036AB64 00367AA4 90 61 00 10 */ stw r3, 0x10(r1)
/* 8036AB68 00367AA8 90 01 00 14 */ stw r0, 0x14(r1)
lbl_8036AB6C:
/* 8036AB6C 00367AAC C8 01 00 08 */ lfd f0, 8(r1)
/* 8036AB70 00367AB0 C8 61 00 10 */ lfd f3, 0x10(r1)
/* 8036AB74 00367AB4 FC 00 00 B2 */ fmul f0, f0, f2
/* 8036AB78 00367AB8 C8 22 CF F8 */ lfd f1, lbl_804569F8-_SDA2_BASE_(r2)
/* 8036AB7C 00367ABC C8 42 CF C0 */ lfd f2, lbl_804569C0-_SDA2_BASE_(r2)
/* 8036AB80 00367AC0 FC 21 19 F8 */ fmsub f1, f1, f7, f3
/* 8036AB84 00367AC4 FC 07 01 38 */ fmsub f0, f7, f4, f0
/* 8036AB88 00367AC8 FC 42 18 28 */ fsub f2, f2, f3
/* 8036AB8C 00367ACC FC 01 00 28 */ fsub f0, f1, f0
/* 8036AB90 00367AD0 FC 22 00 28 */ fsub f1, f2, f0
lbl_8036AB94:
/* 8036AB94 00367AD4 38 21 00 20 */ addi r1, r1, 0x20
/* 8036AB98 00367AD8 4E 80 00 20 */ blr
.global func_8036AB9C
func_8036AB9C:
/* 8036AB9C 00367ADC 94 21 FD 30 */ stwu r1, -0x2d0(r1)
/* 8036ABA0 00367AE0 7C 08 02 A6 */ mflr r0
/* 8036ABA4 00367AE4 90 01 02 D4 */ stw r0, 0x2d4(r1)
/* 8036ABA8 00367AE8 39 61 02 D0 */ addi r11, r1, 0x2d0
/* 8036ABAC 00367AEC 4B FF 75 89 */ bl _savefpr_25
/* 8036ABB0 00367AF0 BE 01 02 58 */ stmw r16, 0x258(r1)
/* 8036ABB4 00367AF4 3D 20 2A AB */ lis r9, 0x2AAAAAAB@ha
/* 8036ABB8 00367AF8 7C F7 3B 78 */ mr r23, r7
/* 8036ABBC 00367AFC 38 05 FF FD */ addi r0, r5, -3
/* 8036ABC0 00367B00 3D 40 80 3A */ lis r10, lbl_803A2538@ha
/* 8036ABC4 00367B04 38 E9 AA AB */ addi r7, r9, 0x2AAAAAAB@l
/* 8036ABC8 00367B08 56 E9 10 3A */ slwi r9, r23, 2
/* 8036ABCC 00367B0C 7C 07 00 96 */ mulhw r0, r7, r0
/* 8036ABD0 00367B10 38 EA 25 38 */ addi r7, r10, lbl_803A2538@l
/* 8036ABD4 00367B14 7F 87 48 2E */ lwzx r28, r7, r9
/* 8036ABD8 00367B18 7C 75 1B 78 */ mr r21, r3
/* 8036ABDC 00367B1C 7C 96 23 78 */ mr r22, r4
/* 8036ABE0 00367B20 7D 18 43 78 */ mr r24, r8
/* 8036ABE4 00367B24 7C 00 16 70 */ srawi r0, r0, 2
/* 8036ABE8 00367B28 3B C6 FF FF */ addi r30, r6, -1
/* 8036ABEC 00367B2C 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8036ABF0 00367B30 7F A0 1A 15 */ add. r29, r0, r3
/* 8036ABF4 00367B34 40 80 00 08 */ bge lbl_8036ABFC
/* 8036ABF8 00367B38 3B A0 00 00 */ li r29, 0
lbl_8036ABFC:
/* 8036ABFC 00367B3C 38 1D 00 01 */ addi r0, r29, 1
/* 8036AC00 00367B40 7C FE E2 15 */ add. r7, r30, r28
/* 8036AC04 00367B44 1C 80 00 18 */ mulli r4, r0, 0x18
/* 8036AC08 00367B48 7C DE E8 50 */ subf r6, r30, r29
/* 8036AC0C 00367B4C C8 22 D0 40 */ lfd f1, lbl_80456A40-_SDA2_BASE_(r2)
/* 8036AC10 00367B50 54 C3 10 3A */ slwi r3, r6, 2
/* 8036AC14 00367B54 7F 44 28 50 */ subf r26, r4, r5
/* 8036AC18 00367B58 38 07 00 01 */ addi r0, r7, 1
/* 8036AC1C 00367B5C 7C 98 1A 14 */ add r4, r24, r3
/* 8036AC20 00367B60 38 A1 01 98 */ addi r5, r1, 0x198
/* 8036AC24 00367B64 3C 60 43 30 */ lis r3, 0x4330
/* 8036AC28 00367B68 7C 09 03 A6 */ mtctr r0
/* 8036AC2C 00367B6C 41 80 00 40 */ blt lbl_8036AC6C
lbl_8036AC30:
/* 8036AC30 00367B70 2C 06 00 00 */ cmpwi r6, 0
/* 8036AC34 00367B74 40 80 00 0C */ bge lbl_8036AC40
/* 8036AC38 00367B78 C8 02 D0 08 */ lfd f0, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036AC3C 00367B7C 48 00 00 1C */ b lbl_8036AC58
lbl_8036AC40:
/* 8036AC40 00367B80 80 04 00 00 */ lwz r0, 0(r4)
/* 8036AC44 00367B84 90 61 02 38 */ stw r3, 0x238(r1)
/* 8036AC48 00367B88 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036AC4C 00367B8C 90 01 02 3C */ stw r0, 0x23c(r1)
/* 8036AC50 00367B90 C8 01 02 38 */ lfd f0, 0x238(r1)
/* 8036AC54 00367B94 FC 00 08 28 */ fsub f0, f0, f1
lbl_8036AC58:
/* 8036AC58 00367B98 D8 05 00 00 */ stfd f0, 0(r5)
/* 8036AC5C 00367B9C 38 A5 00 08 */ addi r5, r5, 8
/* 8036AC60 00367BA0 38 84 00 04 */ addi r4, r4, 4
/* 8036AC64 00367BA4 38 C6 00 01 */ addi r6, r6, 1
/* 8036AC68 00367BA8 42 00 FF C8 */ bdnz lbl_8036AC30
lbl_8036AC6C:
/* 8036AC6C 00367BAC 38 A1 00 58 */ addi r5, r1, 0x58
/* 8036AC70 00367BB0 38 E0 00 00 */ li r7, 0
/* 8036AC74 00367BB4 48 00 01 5C */ b lbl_8036ADD0
lbl_8036AC78:
/* 8036AC78 00367BB8 2C 1E 00 00 */ cmpwi r30, 0
/* 8036AC7C 00367BBC C8 82 D0 08 */ lfd f4, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036AC80 00367BC0 38 C0 00 00 */ li r6, 0
/* 8036AC84 00367BC4 41 80 01 40 */ blt lbl_8036ADC4
/* 8036AC88 00367BC8 38 1E 00 01 */ addi r0, r30, 1
/* 8036AC8C 00367BCC 39 3E FF F8 */ addi r9, r30, -8
/* 8036AC90 00367BD0 2C 00 00 08 */ cmpwi r0, 8
/* 8036AC94 00367BD4 40 81 00 EC */ ble lbl_8036AD80
/* 8036AC98 00367BD8 39 09 00 08 */ addi r8, r9, 8
/* 8036AC9C 00367BDC 7E A4 AB 78 */ mr r4, r21
/* 8036ACA0 00367BE0 55 08 E8 FE */ srwi r8, r8, 3
/* 8036ACA4 00367BE4 7C 1E 3A 14 */ add r0, r30, r7
/* 8036ACA8 00367BE8 38 61 01 98 */ addi r3, r1, 0x198
/* 8036ACAC 00367BEC 7D 09 03 A6 */ mtctr r8
/* 8036ACB0 00367BF0 2C 09 00 00 */ cmpwi r9, 0
/* 8036ACB4 00367BF4 41 80 00 CC */ blt lbl_8036AD80
lbl_8036ACB8:
/* 8036ACB8 00367BF8 7D 06 00 50 */ subf r8, r6, r0
/* 8036ACBC 00367BFC 39 26 00 01 */ addi r9, r6, 1
/* 8036ACC0 00367C00 55 0A 18 38 */ slwi r10, r8, 3
/* 8036ACC4 00367C04 C8 24 00 00 */ lfd f1, 0(r4)
/* 8036ACC8 00367C08 7C 03 54 AE */ lfdx f0, r3, r10
/* 8036ACCC 00367C0C 7D 29 00 50 */ subf r9, r9, r0
/* 8036ACD0 00367C10 55 2A 18 38 */ slwi r10, r9, 3
/* 8036ACD4 00367C14 39 06 00 02 */ addi r8, r6, 2
/* 8036ACD8 00367C18 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036ACDC 00367C1C 7D 28 00 50 */ subf r9, r8, r0
/* 8036ACE0 00367C20 39 06 00 03 */ addi r8, r6, 3
/* 8036ACE4 00367C24 C8 24 00 08 */ lfd f1, 8(r4)
/* 8036ACE8 00367C28 7C 03 54 AE */ lfdx f0, r3, r10
/* 8036ACEC 00367C2C 7D 08 00 50 */ subf r8, r8, r0
/* 8036ACF0 00367C30 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036ACF4 00367C34 55 29 18 38 */ slwi r9, r9, 3
/* 8036ACF8 00367C38 C8 24 00 10 */ lfd f1, 0x10(r4)
/* 8036ACFC 00367C3C 55 0A 18 38 */ slwi r10, r8, 3
/* 8036AD00 00367C40 7C 03 4C AE */ lfdx f0, r3, r9
/* 8036AD04 00367C44 39 06 00 04 */ addi r8, r6, 4
/* 8036AD08 00367C48 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036AD0C 00367C4C C8 24 00 18 */ lfd f1, 0x18(r4)
/* 8036AD10 00367C50 7C 03 54 AE */ lfdx f0, r3, r10
/* 8036AD14 00367C54 7D 28 00 50 */ subf r9, r8, r0
/* 8036AD18 00367C58 55 2A 18 38 */ slwi r10, r9, 3
/* 8036AD1C 00367C5C 39 06 00 05 */ addi r8, r6, 5
/* 8036AD20 00367C60 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036AD24 00367C64 C8 44 00 20 */ lfd f2, 0x20(r4)
/* 8036AD28 00367C68 7C 03 54 AE */ lfdx f0, r3, r10
/* 8036AD2C 00367C6C 7D 08 00 50 */ subf r8, r8, r0
/* 8036AD30 00367C70 55 0A 18 38 */ slwi r10, r8, 3
/* 8036AD34 00367C74 39 26 00 06 */ addi r9, r6, 6
/* 8036AD38 00367C78 FC 82 20 3A */ fmadd f4, f2, f0, f4
/* 8036AD3C 00367C7C 7D 29 00 50 */ subf r9, r9, r0
/* 8036AD40 00367C80 55 29 18 38 */ slwi r9, r9, 3
/* 8036AD44 00367C84 C8 24 00 28 */ lfd f1, 0x28(r4)
/* 8036AD48 00367C88 7C 03 54 AE */ lfdx f0, r3, r10
/* 8036AD4C 00367C8C 39 06 00 07 */ addi r8, r6, 7
/* 8036AD50 00367C90 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036AD54 00367C94 7D 08 00 50 */ subf r8, r8, r0
/* 8036AD58 00367C98 55 08 18 38 */ slwi r8, r8, 3
/* 8036AD5C 00367C9C C8 64 00 30 */ lfd f3, 0x30(r4)
/* 8036AD60 00367CA0 7C 43 4C AE */ lfdx f2, r3, r9
/* 8036AD64 00367CA4 38 C6 00 08 */ addi r6, r6, 8
/* 8036AD68 00367CA8 C8 24 00 38 */ lfd f1, 0x38(r4)
/* 8036AD6C 00367CAC FC 83 20 BA */ fmadd f4, f3, f2, f4
/* 8036AD70 00367CB0 7C 03 44 AE */ lfdx f0, r3, r8
/* 8036AD74 00367CB4 38 84 00 40 */ addi r4, r4, 0x40
/* 8036AD78 00367CB8 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036AD7C 00367CBC 42 00 FF 3C */ bdnz lbl_8036ACB8
lbl_8036AD80:
/* 8036AD80 00367CC0 38 1E 00 01 */ addi r0, r30, 1
/* 8036AD84 00367CC4 54 C3 18 38 */ slwi r3, r6, 3
/* 8036AD88 00367CC8 7C 06 00 50 */ subf r0, r6, r0
/* 8036AD8C 00367CCC 7D 1E 3A 14 */ add r8, r30, r7
/* 8036AD90 00367CD0 7C 95 1A 14 */ add r4, r21, r3
/* 8036AD94 00367CD4 38 61 01 98 */ addi r3, r1, 0x198
/* 8036AD98 00367CD8 7C 09 03 A6 */ mtctr r0
/* 8036AD9C 00367CDC 7C 06 F0 00 */ cmpw r6, r30
/* 8036ADA0 00367CE0 41 81 00 24 */ bgt lbl_8036ADC4
lbl_8036ADA4:
/* 8036ADA4 00367CE4 7C 06 40 50 */ subf r0, r6, r8
/* 8036ADA8 00367CE8 C8 24 00 00 */ lfd f1, 0(r4)
/* 8036ADAC 00367CEC 54 00 18 38 */ slwi r0, r0, 3
/* 8036ADB0 00367CF0 38 84 00 08 */ addi r4, r4, 8
/* 8036ADB4 00367CF4 7C 03 04 AE */ lfdx f0, r3, r0
/* 8036ADB8 00367CF8 38 C6 00 01 */ addi r6, r6, 1
/* 8036ADBC 00367CFC FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036ADC0 00367D00 42 00 FF E4 */ bdnz lbl_8036ADA4
lbl_8036ADC4:
/* 8036ADC4 00367D04 D8 85 00 00 */ stfd f4, 0(r5)
/* 8036ADC8 00367D08 38 A5 00 08 */ addi r5, r5, 8
/* 8036ADCC 00367D0C 38 E7 00 01 */ addi r7, r7, 1
lbl_8036ADD0:
/* 8036ADD0 00367D10 7C 07 E0 00 */ cmpw r7, r28
/* 8036ADD4 00367D14 40 81 FE A4 */ ble lbl_8036AC78
/* 8036ADD8 00367D18 22 5A 00 18 */ subfic r18, r26, 0x18
/* 8036ADDC 00367D1C CB 42 D0 10 */ lfd f26, lbl_80456A10-_SDA2_BASE_(r2)
/* 8036ADE0 00367D20 CB 62 D0 40 */ lfd f27, lbl_80456A40-_SDA2_BASE_(r2)
/* 8036ADE4 00367D24 3A 01 00 08 */ addi r16, r1, 8
/* 8036ADE8 00367D28 CB 82 D0 18 */ lfd f28, lbl_80456A18-_SDA2_BASE_(r2)
/* 8036ADEC 00367D2C 7F 9F E3 78 */ mr r31, r28
/* 8036ADF0 00367D30 CB A2 D0 28 */ lfd f29, lbl_80456A28-_SDA2_BASE_(r2)
/* 8036ADF4 00367D34 22 3A 00 17 */ subfic r17, r26, 0x17
/* 8036ADF8 00367D38 CB C2 D0 20 */ lfd f30, lbl_80456A20-_SDA2_BASE_(r2)
/* 8036ADFC 00367D3C 3A 81 01 98 */ addi r20, r1, 0x198
/* 8036AE00 00367D40 CB E2 D0 08 */ lfd f31, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036AE04 00367D44 3E 60 43 30 */ lis r19, 0x4330
lbl_8036AE08:
/* 8036AE08 00367D48 57 E0 18 38 */ slwi r0, r31, 3
/* 8036AE0C 00367D4C 38 A1 00 58 */ addi r5, r1, 0x58
/* 8036AE10 00367D50 7C A5 02 14 */ add r5, r5, r0
/* 8036AE14 00367D54 2C 1F 00 00 */ cmpwi r31, 0
/* 8036AE18 00367D58 C8 25 00 00 */ lfd f1, 0(r5)
/* 8036AE1C 00367D5C 7E 04 83 78 */ mr r4, r16
/* 8036AE20 00367D60 7F E3 FB 78 */ mr r3, r31
/* 8036AE24 00367D64 40 81 00 EC */ ble lbl_8036AF10
/* 8036AE28 00367D68 57 E0 F8 7F */ rlwinm. r0, r31, 0x1f, 1, 0x1f
/* 8036AE2C 00367D6C 7C 09 03 A6 */ mtctr r0
/* 8036AE30 00367D70 41 82 00 94 */ beq lbl_8036AEC4
lbl_8036AE34:
/* 8036AE34 00367D74 FC 7A 00 72 */ fmul f3, f26, f1
/* 8036AE38 00367D78 92 61 02 40 */ stw r19, 0x240(r1)
/* 8036AE3C 00367D7C C8 05 FF F8 */ lfd f0, -8(r5)
/* 8036AE40 00367D80 FC 40 18 1E */ fctiwz f2, f3
/* 8036AE44 00367D84 D8 41 02 38 */ stfd f2, 0x238(r1)
/* 8036AE48 00367D88 80 01 02 3C */ lwz r0, 0x23c(r1)
/* 8036AE4C 00367D8C 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036AE50 00367D90 90 01 02 44 */ stw r0, 0x244(r1)
/* 8036AE54 00367D94 C8 41 02 40 */ lfd f2, 0x240(r1)
/* 8036AE58 00367D98 FC 62 D8 28 */ fsub f3, f2, f27
/* 8036AE5C 00367D9C 92 61 02 40 */ stw r19, 0x240(r1)
/* 8036AE60 00367DA0 FC 5C 08 FC */ fnmsub f2, f28, f3, f1
/* 8036AE64 00367DA4 FC 23 00 2A */ fadd f1, f3, f0
/* 8036AE68 00367DA8 CC 05 FF F0 */ lfdu f0, -0x10(r5)
/* 8036AE6C 00367DAC FC 40 10 1E */ fctiwz f2, f2
/* 8036AE70 00367DB0 FC 7A 00 72 */ fmul f3, f26, f1
/* 8036AE74 00367DB4 D8 41 02 48 */ stfd f2, 0x248(r1)
/* 8036AE78 00367DB8 FC 40 18 1E */ fctiwz f2, f3
/* 8036AE7C 00367DBC 80 01 02 4C */ lwz r0, 0x24c(r1)
/* 8036AE80 00367DC0 90 04 00 00 */ stw r0, 0(r4)
/* 8036AE84 00367DC4 D8 41 02 38 */ stfd f2, 0x238(r1)
/* 8036AE88 00367DC8 80 01 02 3C */ lwz r0, 0x23c(r1)
/* 8036AE8C 00367DCC 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036AE90 00367DD0 90 01 02 44 */ stw r0, 0x244(r1)
/* 8036AE94 00367DD4 C8 41 02 40 */ lfd f2, 0x240(r1)
/* 8036AE98 00367DD8 FC 62 D8 28 */ fsub f3, f2, f27
/* 8036AE9C 00367DDC FC 5C 08 FC */ fnmsub f2, f28, f3, f1
/* 8036AEA0 00367DE0 FC 23 00 2A */ fadd f1, f3, f0
/* 8036AEA4 00367DE4 FC 40 10 1E */ fctiwz f2, f2
/* 8036AEA8 00367DE8 D8 41 02 48 */ stfd f2, 0x248(r1)
/* 8036AEAC 00367DEC 80 01 02 4C */ lwz r0, 0x24c(r1)
/* 8036AEB0 00367DF0 90 04 00 04 */ stw r0, 4(r4)
/* 8036AEB4 00367DF4 38 84 00 08 */ addi r4, r4, 8
/* 8036AEB8 00367DF8 42 00 FF 7C */ bdnz lbl_8036AE34
/* 8036AEBC 00367DFC 70 63 00 01 */ andi. r3, r3, 1
/* 8036AEC0 00367E00 41 82 00 50 */ beq lbl_8036AF10
lbl_8036AEC4:
/* 8036AEC4 00367E04 7C 69 03 A6 */ mtctr r3
lbl_8036AEC8:
/* 8036AEC8 00367E08 FC 7A 00 72 */ fmul f3, f26, f1
/* 8036AECC 00367E0C 92 61 02 40 */ stw r19, 0x240(r1)
/* 8036AED0 00367E10 CC 05 FF F8 */ lfdu f0, -8(r5)
/* 8036AED4 00367E14 FC 40 18 1E */ fctiwz f2, f3
/* 8036AED8 00367E18 D8 41 02 38 */ stfd f2, 0x238(r1)
/* 8036AEDC 00367E1C 80 01 02 3C */ lwz r0, 0x23c(r1)
/* 8036AEE0 00367E20 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036AEE4 00367E24 90 01 02 44 */ stw r0, 0x244(r1)
/* 8036AEE8 00367E28 C8 41 02 40 */ lfd f2, 0x240(r1)
/* 8036AEEC 00367E2C FC 62 D8 28 */ fsub f3, f2, f27
/* 8036AEF0 00367E30 FC 5C 08 FC */ fnmsub f2, f28, f3, f1
/* 8036AEF4 00367E34 FC 23 00 2A */ fadd f1, f3, f0
/* 8036AEF8 00367E38 FC 40 10 1E */ fctiwz f2, f2
/* 8036AEFC 00367E3C D8 41 02 48 */ stfd f2, 0x248(r1)
/* 8036AF00 00367E40 80 01 02 4C */ lwz r0, 0x24c(r1)
/* 8036AF04 00367E44 90 04 00 00 */ stw r0, 0(r4)
/* 8036AF08 00367E48 38 84 00 04 */ addi r4, r4, 4
/* 8036AF0C 00367E4C 42 00 FF BC */ bdnz lbl_8036AEC8
lbl_8036AF10:
/* 8036AF10 00367E50 7F 43 D3 78 */ mr r3, r26
/* 8036AF14 00367E54 48 00 13 BD */ bl func_8036C2D0
/* 8036AF18 00367E58 FF 20 08 90 */ fmr f25, f1
/* 8036AF1C 00367E5C FC 3D 06 72 */ fmul f1, f29, f25
/* 8036AF20 00367E60 48 00 11 DD */ bl func_8036C0FC
/* 8036AF24 00367E64 FF 3E C8 7C */ fnmsub f25, f30, f1, f25
/* 8036AF28 00367E68 92 61 02 40 */ stw r19, 0x240(r1)
/* 8036AF2C 00367E6C 2C 1A 00 00 */ cmpwi r26, 0
/* 8036AF30 00367E70 3B 20 00 00 */ li r25, 0
/* 8036AF34 00367E74 FC 00 C8 1E */ fctiwz f0, f25
/* 8036AF38 00367E78 D8 01 02 48 */ stfd f0, 0x248(r1)
/* 8036AF3C 00367E7C 83 61 02 4C */ lwz r27, 0x24c(r1)
/* 8036AF40 00367E80 6F 60 80 00 */ xoris r0, r27, 0x8000
/* 8036AF44 00367E84 90 01 02 44 */ stw r0, 0x244(r1)
/* 8036AF48 00367E88 C8 01 02 40 */ lfd f0, 0x240(r1)
/* 8036AF4C 00367E8C FC 00 D8 28 */ fsub f0, f0, f27
/* 8036AF50 00367E90 FF 39 00 28 */ fsub f25, f25, f0
/* 8036AF54 00367E94 40 81 00 34 */ ble lbl_8036AF88
/* 8036AF58 00367E98 57 E3 10 3A */ slwi r3, r31, 2
/* 8036AF5C 00367E9C 38 81 00 08 */ addi r4, r1, 8
/* 8036AF60 00367EA0 38 A3 FF FC */ addi r5, r3, -4
/* 8036AF64 00367EA4 7C 64 28 2E */ lwzx r3, r4, r5
/* 8036AF68 00367EA8 7C 66 96 30 */ sraw r6, r3, r18
/* 8036AF6C 00367EAC 7C C0 90 30 */ slw r0, r6, r18
/* 8036AF70 00367EB0 7C 00 18 50 */ subf r0, r0, r3
/* 8036AF74 00367EB4 7F 7B 32 14 */ add r27, r27, r6
/* 8036AF78 00367EB8 7C 04 29 2E */ stwx r0, r4, r5
/* 8036AF7C 00367EBC 7C 04 28 2E */ lwzx r0, r4, r5
/* 8036AF80 00367EC0 7C 19 8E 30 */ sraw r25, r0, r17
/* 8036AF84 00367EC4 48 00 00 34 */ b lbl_8036AFB8
lbl_8036AF88:
/* 8036AF88 00367EC8 40 82 00 1C */ bne lbl_8036AFA4
/* 8036AF8C 00367ECC 57 E4 10 3A */ slwi r4, r31, 2
/* 8036AF90 00367ED0 38 61 00 08 */ addi r3, r1, 8
/* 8036AF94 00367ED4 38 04 FF FC */ addi r0, r4, -4
/* 8036AF98 00367ED8 7C 03 00 2E */ lwzx r0, r3, r0
/* 8036AF9C 00367EDC 7C 19 BE 70 */ srawi r25, r0, 0x17
/* 8036AFA0 00367EE0 48 00 00 18 */ b lbl_8036AFB8
lbl_8036AFA4:
/* 8036AFA4 00367EE4 C8 02 D0 30 */ lfd f0, lbl_80456A30-_SDA2_BASE_(r2)
/* 8036AFA8 00367EE8 FC 19 00 40 */ fcmpo cr0, f25, f0
/* 8036AFAC 00367EEC 4C 41 13 82 */ cror 2, 1, 2
/* 8036AFB0 00367EF0 40 82 00 08 */ bne lbl_8036AFB8
/* 8036AFB4 00367EF4 3B 20 00 02 */ li r25, 2
lbl_8036AFB8:
/* 8036AFB8 00367EF8 2C 19 00 00 */ cmpwi r25, 0
/* 8036AFBC 00367EFC 40 81 00 D0 */ ble lbl_8036B08C
/* 8036AFC0 00367F00 3C A0 01 00 */ lis r5, 0x00FFFFFF@ha
/* 8036AFC4 00367F04 7E 06 83 78 */ mr r6, r16
/* 8036AFC8 00367F08 38 00 00 00 */ li r0, 0
/* 8036AFCC 00367F0C 38 85 FF FF */ addi r4, r5, 0x00FFFFFF@l
/* 8036AFD0 00367F10 7F E9 03 A6 */ mtctr r31
/* 8036AFD4 00367F14 2C 1F 00 00 */ cmpwi r31, 0
/* 8036AFD8 00367F18 3B 7B 00 01 */ addi r27, r27, 1
/* 8036AFDC 00367F1C 40 81 00 38 */ ble lbl_8036B014
lbl_8036AFE0:
/* 8036AFE0 00367F20 2C 00 00 00 */ cmpwi r0, 0
/* 8036AFE4 00367F24 80 66 00 00 */ lwz r3, 0(r6)
/* 8036AFE8 00367F28 40 82 00 1C */ bne lbl_8036B004
/* 8036AFEC 00367F2C 2C 03 00 00 */ cmpwi r3, 0
/* 8036AFF0 00367F30 41 82 00 1C */ beq lbl_8036B00C
/* 8036AFF4 00367F34 7C 63 28 50 */ subf r3, r3, r5
/* 8036AFF8 00367F38 38 00 00 01 */ li r0, 1
/* 8036AFFC 00367F3C 90 66 00 00 */ stw r3, 0(r6)
/* 8036B000 00367F40 48 00 00 0C */ b lbl_8036B00C
lbl_8036B004:
/* 8036B004 00367F44 7C 63 20 50 */ subf r3, r3, r4
/* 8036B008 00367F48 90 66 00 00 */ stw r3, 0(r6)
lbl_8036B00C:
/* 8036B00C 00367F4C 38 C6 00 04 */ addi r6, r6, 4
/* 8036B010 00367F50 42 00 FF D0 */ bdnz lbl_8036AFE0
lbl_8036B014:
/* 8036B014 00367F54 2C 1A 00 00 */ cmpwi r26, 0
/* 8036B018 00367F58 40 81 00 50 */ ble lbl_8036B068
/* 8036B01C 00367F5C 2C 1A 00 02 */ cmpwi r26, 2
/* 8036B020 00367F60 41 82 00 30 */ beq lbl_8036B050
/* 8036B024 00367F64 40 80 00 44 */ bge lbl_8036B068
/* 8036B028 00367F68 2C 1A 00 01 */ cmpwi r26, 1
/* 8036B02C 00367F6C 40 80 00 08 */ bge lbl_8036B034
/* 8036B030 00367F70 48 00 00 38 */ b lbl_8036B068
lbl_8036B034:
/* 8036B034 00367F74 57 E3 10 3A */ slwi r3, r31, 2
/* 8036B038 00367F78 38 A1 00 08 */ addi r5, r1, 8
/* 8036B03C 00367F7C 38 83 FF FC */ addi r4, r3, -4
/* 8036B040 00367F80 7C 65 20 2E */ lwzx r3, r5, r4
/* 8036B044 00367F84 54 63 02 7E */ clrlwi r3, r3, 9
/* 8036B048 00367F88 7C 65 21 2E */ stwx r3, r5, r4
/* 8036B04C 00367F8C 48 00 00 1C */ b lbl_8036B068
lbl_8036B050:
/* 8036B050 00367F90 57 E3 10 3A */ slwi r3, r31, 2
/* 8036B054 00367F94 38 A1 00 08 */ addi r5, r1, 8
/* 8036B058 00367F98 38 83 FF FC */ addi r4, r3, -4
/* 8036B05C 00367F9C 7C 65 20 2E */ lwzx r3, r5, r4
/* 8036B060 00367FA0 54 63 02 BE */ clrlwi r3, r3, 0xa
/* 8036B064 00367FA4 7C 65 21 2E */ stwx r3, r5, r4
lbl_8036B068:
/* 8036B068 00367FA8 2C 19 00 02 */ cmpwi r25, 2
/* 8036B06C 00367FAC 40 82 00 20 */ bne lbl_8036B08C
/* 8036B070 00367FB0 C8 22 D0 38 */ lfd f1, lbl_80456A38-_SDA2_BASE_(r2)
/* 8036B074 00367FB4 2C 00 00 00 */ cmpwi r0, 0
/* 8036B078 00367FB8 FF 21 C8 28 */ fsub f25, f1, f25
/* 8036B07C 00367FBC 41 82 00 10 */ beq lbl_8036B08C
/* 8036B080 00367FC0 7F 43 D3 78 */ mr r3, r26
/* 8036B084 00367FC4 48 00 12 4D */ bl func_8036C2D0
/* 8036B088 00367FC8 FF 39 08 28 */ fsub f25, f25, f1
lbl_8036B08C:
/* 8036B08C 00367FCC FC 1F C8 00 */ fcmpu cr0, f31, f25
/* 8036B090 00367FD0 40 82 02 64 */ bne lbl_8036B2F4
/* 8036B094 00367FD4 38 7F FF FF */ addi r3, r31, -1
/* 8036B098 00367FD8 38 81 00 08 */ addi r4, r1, 8
/* 8036B09C 00367FDC 7C 03 E0 00 */ cmpw r3, r28
/* 8036B0A0 00367FE0 38 A0 00 00 */ li r5, 0
/* 8036B0A4 00367FE4 54 60 10 3A */ slwi r0, r3, 2
/* 8036B0A8 00367FE8 38 63 00 01 */ addi r3, r3, 1
/* 8036B0AC 00367FEC 7C 84 02 14 */ add r4, r4, r0
/* 8036B0B0 00367FF0 7C 7C 18 50 */ subf r3, r28, r3
/* 8036B0B4 00367FF4 41 80 00 74 */ blt lbl_8036B128
/* 8036B0B8 00367FF8 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 8036B0BC 00367FFC 7C 09 03 A6 */ mtctr r0
/* 8036B0C0 00368000 41 82 00 54 */ beq lbl_8036B114
lbl_8036B0C4:
/* 8036B0C4 00368004 80 04 00 00 */ lwz r0, 0(r4)
/* 8036B0C8 00368008 7C A5 03 78 */ or r5, r5, r0
/* 8036B0CC 0036800C 80 04 FF FC */ lwz r0, -4(r4)
/* 8036B0D0 00368010 7C A5 03 78 */ or r5, r5, r0
/* 8036B0D4 00368014 80 04 FF F8 */ lwz r0, -8(r4)
/* 8036B0D8 00368018 7C A5 03 78 */ or r5, r5, r0
/* 8036B0DC 0036801C 80 04 FF F4 */ lwz r0, -0xc(r4)
/* 8036B0E0 00368020 7C A5 03 78 */ or r5, r5, r0
/* 8036B0E4 00368024 80 04 FF F0 */ lwz r0, -0x10(r4)
/* 8036B0E8 00368028 7C A5 03 78 */ or r5, r5, r0
/* 8036B0EC 0036802C 80 04 FF EC */ lwz r0, -0x14(r4)
/* 8036B0F0 00368030 7C A5 03 78 */ or r5, r5, r0
/* 8036B0F4 00368034 80 04 FF E8 */ lwz r0, -0x18(r4)
/* 8036B0F8 00368038 7C A5 03 78 */ or r5, r5, r0
/* 8036B0FC 0036803C 80 04 FF E4 */ lwz r0, -0x1c(r4)
/* 8036B100 00368040 38 84 FF E0 */ addi r4, r4, -32
/* 8036B104 00368044 7C A5 03 78 */ or r5, r5, r0
/* 8036B108 00368048 42 00 FF BC */ bdnz lbl_8036B0C4
/* 8036B10C 0036804C 70 63 00 07 */ andi. r3, r3, 7
/* 8036B110 00368050 41 82 00 18 */ beq lbl_8036B128
lbl_8036B114:
/* 8036B114 00368054 7C 69 03 A6 */ mtctr r3
lbl_8036B118:
/* 8036B118 00368058 80 04 00 00 */ lwz r0, 0(r4)
/* 8036B11C 0036805C 38 84 FF FC */ addi r4, r4, -4
/* 8036B120 00368060 7C A5 03 78 */ or r5, r5, r0
/* 8036B124 00368064 42 00 FF F4 */ bdnz lbl_8036B118
lbl_8036B128:
/* 8036B128 00368068 2C 05 00 00 */ cmpwi r5, 0
/* 8036B12C 0036806C 40 82 01 C8 */ bne lbl_8036B2F4
/* 8036B130 00368070 39 40 00 01 */ li r10, 1
/* 8036B134 00368074 48 00 00 08 */ b lbl_8036B13C
lbl_8036B138:
/* 8036B138 00368078 39 4A 00 01 */ addi r10, r10, 1
lbl_8036B13C:
/* 8036B13C 0036807C 7C 0A E0 50 */ subf r0, r10, r28
/* 8036B140 00368080 54 00 10 3A */ slwi r0, r0, 2
/* 8036B144 00368084 7C 10 00 2E */ lwzx r0, r16, r0
/* 8036B148 00368088 2C 00 00 00 */ cmpwi r0, 0
/* 8036B14C 0036808C 41 82 FF EC */ beq lbl_8036B138
/* 8036B150 00368090 39 3F 00 01 */ addi r9, r31, 1
/* 8036B154 00368094 38 A1 00 58 */ addi r5, r1, 0x58
/* 8036B158 00368098 55 20 18 38 */ slwi r0, r9, 3
/* 8036B15C 0036809C 7C DF 52 14 */ add r6, r31, r10
/* 8036B160 003680A0 7C A5 02 14 */ add r5, r5, r0
/* 8036B164 003680A4 48 00 01 80 */ b lbl_8036B2E4
lbl_8036B168:
/* 8036B168 003680A8 7C 1D 4A 14 */ add r0, r29, r9
/* 8036B16C 003680AC 7C FE 4A 14 */ add r7, r30, r9
/* 8036B170 003680B0 54 00 10 3A */ slwi r0, r0, 2
/* 8036B174 003680B4 92 61 02 48 */ stw r19, 0x248(r1)
/* 8036B178 003680B8 7C 78 00 2E */ lwzx r3, r24, r0
/* 8036B17C 003680BC 2C 1E 00 00 */ cmpwi r30, 0
/* 8036B180 003680C0 54 E0 18 38 */ slwi r0, r7, 3
/* 8036B184 003680C4 C8 82 D0 08 */ lfd f4, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036B188 003680C8 6C 63 80 00 */ xoris r3, r3, 0x8000
/* 8036B18C 003680CC 39 00 00 00 */ li r8, 0
/* 8036B190 003680D0 90 61 02 4C */ stw r3, 0x24c(r1)
/* 8036B194 003680D4 C8 01 02 48 */ lfd f0, 0x248(r1)
/* 8036B198 003680D8 FC 00 D8 28 */ fsub f0, f0, f27
/* 8036B19C 003680DC 7C 14 05 AE */ stfdx f0, r20, r0
/* 8036B1A0 003680E0 41 80 01 38 */ blt lbl_8036B2D8
/* 8036B1A4 003680E4 38 1E 00 01 */ addi r0, r30, 1
/* 8036B1A8 003680E8 39 7E FF F8 */ addi r11, r30, -8
/* 8036B1AC 003680EC 2C 00 00 08 */ cmpwi r0, 8
/* 8036B1B0 003680F0 40 81 00 E8 */ ble lbl_8036B298
/* 8036B1B4 003680F4 38 0B 00 08 */ addi r0, r11, 8
/* 8036B1B8 003680F8 7E A4 AB 78 */ mr r4, r21
/* 8036B1BC 003680FC 54 00 E8 FE */ srwi r0, r0, 3
/* 8036B1C0 00368100 38 61 01 98 */ addi r3, r1, 0x198
/* 8036B1C4 00368104 7C 09 03 A6 */ mtctr r0
/* 8036B1C8 00368108 2C 0B 00 00 */ cmpwi r11, 0
/* 8036B1CC 0036810C 41 80 00 CC */ blt lbl_8036B298
lbl_8036B1D0:
/* 8036B1D0 00368110 7D 68 38 50 */ subf r11, r8, r7
/* 8036B1D4 00368114 38 08 00 01 */ addi r0, r8, 1
/* 8036B1D8 00368118 55 6C 18 38 */ slwi r12, r11, 3
/* 8036B1DC 0036811C C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B1E0 00368120 7C 03 64 AE */ lfdx f0, r3, r12
/* 8036B1E4 00368124 7C 00 38 50 */ subf r0, r0, r7
/* 8036B1E8 00368128 39 68 00 02 */ addi r11, r8, 2
/* 8036B1EC 0036812C C8 44 00 20 */ lfd f2, 0x20(r4)
/* 8036B1F0 00368130 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B1F4 00368134 7D 8B 38 50 */ subf r12, r11, r7
/* 8036B1F8 00368138 54 00 18 38 */ slwi r0, r0, 3
/* 8036B1FC 0036813C 39 68 00 03 */ addi r11, r8, 3
/* 8036B200 00368140 7C 03 04 AE */ lfdx f0, r3, r0
/* 8036B204 00368144 55 99 18 38 */ slwi r25, r12, 3
/* 8036B208 00368148 C8 24 00 08 */ lfd f1, 8(r4)
/* 8036B20C 0036814C 7D 6B 38 50 */ subf r11, r11, r7
/* 8036B210 00368150 55 6C 18 38 */ slwi r12, r11, 3
/* 8036B214 00368154 38 08 00 04 */ addi r0, r8, 4
/* 8036B218 00368158 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B21C 0036815C C8 24 00 10 */ lfd f1, 0x10(r4)
/* 8036B220 00368160 7C 03 CC AE */ lfdx f0, r3, r25
/* 8036B224 00368164 7D 60 38 50 */ subf r11, r0, r7
/* 8036B228 00368168 38 08 00 05 */ addi r0, r8, 5
/* 8036B22C 0036816C C8 64 00 30 */ lfd f3, 0x30(r4)
/* 8036B230 00368170 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B234 00368174 7C 03 64 AE */ lfdx f0, r3, r12
/* 8036B238 00368178 C8 24 00 18 */ lfd f1, 0x18(r4)
/* 8036B23C 0036817C 55 6C 18 38 */ slwi r12, r11, 3
/* 8036B240 00368180 39 68 00 06 */ addi r11, r8, 6
/* 8036B244 00368184 7C 00 38 50 */ subf r0, r0, r7
/* 8036B248 00368188 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B24C 0036818C 7C 03 64 AE */ lfdx f0, r3, r12
/* 8036B250 00368190 54 0C 18 38 */ slwi r12, r0, 3
/* 8036B254 00368194 C8 24 00 28 */ lfd f1, 0x28(r4)
/* 8036B258 00368198 38 08 00 07 */ addi r0, r8, 7
/* 8036B25C 0036819C 7D 6B 38 50 */ subf r11, r11, r7
/* 8036B260 003681A0 FC 82 20 3A */ fmadd f4, f2, f0, f4
/* 8036B264 003681A4 7C 03 64 AE */ lfdx f0, r3, r12
/* 8036B268 003681A8 55 6B 18 38 */ slwi r11, r11, 3
/* 8036B26C 003681AC 7C 00 38 50 */ subf r0, r0, r7
/* 8036B270 003681B0 7C 43 5C AE */ lfdx f2, r3, r11
/* 8036B274 003681B4 54 00 18 38 */ slwi r0, r0, 3
/* 8036B278 003681B8 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B27C 003681BC C8 24 00 38 */ lfd f1, 0x38(r4)
/* 8036B280 003681C0 7C 03 04 AE */ lfdx f0, r3, r0
/* 8036B284 003681C4 38 84 00 40 */ addi r4, r4, 0x40
/* 8036B288 003681C8 39 08 00 08 */ addi r8, r8, 8
/* 8036B28C 003681CC FC 83 20 BA */ fmadd f4, f3, f2, f4
/* 8036B290 003681D0 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B294 003681D4 42 00 FF 3C */ bdnz lbl_8036B1D0
lbl_8036B298:
/* 8036B298 003681D8 38 1E 00 01 */ addi r0, r30, 1
/* 8036B29C 003681DC 55 04 18 38 */ slwi r4, r8, 3
/* 8036B2A0 003681E0 7C 08 00 50 */ subf r0, r8, r0
/* 8036B2A4 003681E4 38 61 01 98 */ addi r3, r1, 0x198
/* 8036B2A8 003681E8 7C 95 22 14 */ add r4, r21, r4
/* 8036B2AC 003681EC 7C 09 03 A6 */ mtctr r0
/* 8036B2B0 003681F0 7C 08 F0 00 */ cmpw r8, r30
/* 8036B2B4 003681F4 41 81 00 24 */ bgt lbl_8036B2D8
lbl_8036B2B8:
/* 8036B2B8 003681F8 7C 08 38 50 */ subf r0, r8, r7
/* 8036B2BC 003681FC C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B2C0 00368200 54 00 18 38 */ slwi r0, r0, 3
/* 8036B2C4 00368204 38 84 00 08 */ addi r4, r4, 8
/* 8036B2C8 00368208 7C 03 04 AE */ lfdx f0, r3, r0
/* 8036B2CC 0036820C 39 08 00 01 */ addi r8, r8, 1
/* 8036B2D0 00368210 FC 81 20 3A */ fmadd f4, f1, f0, f4
/* 8036B2D4 00368214 42 00 FF E4 */ bdnz lbl_8036B2B8
lbl_8036B2D8:
/* 8036B2D8 00368218 D8 85 00 00 */ stfd f4, 0(r5)
/* 8036B2DC 0036821C 38 A5 00 08 */ addi r5, r5, 8
/* 8036B2E0 00368220 39 29 00 01 */ addi r9, r9, 1
lbl_8036B2E4:
/* 8036B2E4 00368224 7C 09 30 00 */ cmpw r9, r6
/* 8036B2E8 00368228 40 81 FE 80 */ ble lbl_8036B168
/* 8036B2EC 0036822C 7F FF 52 14 */ add r31, r31, r10
/* 8036B2F0 00368230 4B FF FB 18 */ b lbl_8036AE08
lbl_8036B2F4:
/* 8036B2F4 00368234 C8 02 D0 08 */ lfd f0, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036B2F8 00368238 FC 00 C8 00 */ fcmpu cr0, f0, f25
/* 8036B2FC 0036823C 40 82 00 38 */ bne lbl_8036B334
/* 8036B300 00368240 3B FF FF FF */ addi r31, r31, -1
/* 8036B304 00368244 38 61 00 08 */ addi r3, r1, 8
/* 8036B308 00368248 57 E0 10 3A */ slwi r0, r31, 2
/* 8036B30C 0036824C 3B 5A FF E8 */ addi r26, r26, -24
/* 8036B310 00368250 7C 63 02 14 */ add r3, r3, r0
/* 8036B314 00368254 48 00 00 10 */ b lbl_8036B324
lbl_8036B318:
/* 8036B318 00368258 38 63 FF FC */ addi r3, r3, -4
/* 8036B31C 0036825C 3B FF FF FF */ addi r31, r31, -1
/* 8036B320 00368260 3B 5A FF E8 */ addi r26, r26, -24
lbl_8036B324:
/* 8036B324 00368264 80 03 00 00 */ lwz r0, 0(r3)
/* 8036B328 00368268 2C 00 00 00 */ cmpwi r0, 0
/* 8036B32C 0036826C 41 82 FF EC */ beq lbl_8036B318
/* 8036B330 00368270 48 00 00 A4 */ b lbl_8036B3D4
lbl_8036B334:
/* 8036B334 00368274 FC 20 C8 90 */ fmr f1, f25
/* 8036B338 00368278 7C 7A 00 D0 */ neg r3, r26
/* 8036B33C 0036827C 48 00 0F 95 */ bl func_8036C2D0
/* 8036B340 00368280 C8 62 D0 18 */ lfd f3, lbl_80456A18-_SDA2_BASE_(r2)
/* 8036B344 00368284 FC 01 18 40 */ fcmpo cr0, f1, f3
/* 8036B348 00368288 4C 41 13 82 */ cror 2, 1, 2
/* 8036B34C 0036828C 40 82 00 70 */ bne lbl_8036B3BC
/* 8036B350 00368290 C8 02 D0 10 */ lfd f0, lbl_80456A10-_SDA2_BASE_(r2)
/* 8036B354 00368294 3C 00 43 30 */ lis r0, 0x4330
/* 8036B358 00368298 57 E5 10 3A */ slwi r5, r31, 2
/* 8036B35C 0036829C 90 01 02 40 */ stw r0, 0x240(r1)
/* 8036B360 003682A0 FC 00 00 72 */ fmul f0, f0, f1
/* 8036B364 003682A4 3B FF 00 01 */ addi r31, r31, 1
/* 8036B368 003682A8 C8 42 D0 40 */ lfd f2, lbl_80456A40-_SDA2_BASE_(r2)
/* 8036B36C 003682AC 38 81 00 08 */ addi r4, r1, 8
/* 8036B370 003682B0 57 E0 10 3A */ slwi r0, r31, 2
/* 8036B374 003682B4 3B 5A 00 18 */ addi r26, r26, 0x18
/* 8036B378 003682B8 FC 00 00 1E */ fctiwz f0, f0
/* 8036B37C 003682BC D8 01 02 48 */ stfd f0, 0x248(r1)
/* 8036B380 003682C0 80 61 02 4C */ lwz r3, 0x24c(r1)
/* 8036B384 003682C4 6C 63 80 00 */ xoris r3, r3, 0x8000
/* 8036B388 003682C8 90 61 02 44 */ stw r3, 0x244(r1)
/* 8036B38C 003682CC C8 01 02 40 */ lfd f0, 0x240(r1)
/* 8036B390 003682D0 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B394 003682D4 FC 23 08 3C */ fnmsub f1, f3, f0, f1
/* 8036B398 003682D8 FC 00 00 1E */ fctiwz f0, f0
/* 8036B39C 003682DC FC 20 08 1E */ fctiwz f1, f1
/* 8036B3A0 003682E0 D8 01 02 50 */ stfd f0, 0x250(r1)
/* 8036B3A4 003682E4 D8 21 02 38 */ stfd f1, 0x238(r1)
/* 8036B3A8 003682E8 80 61 02 54 */ lwz r3, 0x254(r1)
/* 8036B3AC 003682EC 80 C1 02 3C */ lwz r6, 0x23c(r1)
/* 8036B3B0 003682F0 7C C4 29 2E */ stwx r6, r4, r5
/* 8036B3B4 003682F4 7C 64 01 2E */ stwx r3, r4, r0
/* 8036B3B8 003682F8 48 00 00 1C */ b lbl_8036B3D4
lbl_8036B3BC:
/* 8036B3BC 003682FC FC 00 08 1E */ fctiwz f0, f1
/* 8036B3C0 00368300 57 E0 10 3A */ slwi r0, r31, 2
/* 8036B3C4 00368304 38 61 00 08 */ addi r3, r1, 8
/* 8036B3C8 00368308 D8 01 02 50 */ stfd f0, 0x250(r1)
/* 8036B3CC 0036830C 80 81 02 54 */ lwz r4, 0x254(r1)
/* 8036B3D0 00368310 7C 83 01 2E */ stwx r4, r3, r0
lbl_8036B3D4:
/* 8036B3D4 00368314 C8 22 D0 38 */ lfd f1, lbl_80456A38-_SDA2_BASE_(r2)
/* 8036B3D8 00368318 7F 43 D3 78 */ mr r3, r26
/* 8036B3DC 0036831C 48 00 0E F5 */ bl func_8036C2D0
/* 8036B3E0 00368320 2C 1F 00 00 */ cmpwi r31, 0
/* 8036B3E4 00368324 57 E0 10 3A */ slwi r0, r31, 2
/* 8036B3E8 00368328 38 C1 00 08 */ addi r6, r1, 8
/* 8036B3EC 0036832C 57 E8 18 38 */ slwi r8, r31, 3
/* 8036B3F0 00368330 38 E1 00 58 */ addi r7, r1, 0x58
/* 8036B3F4 00368334 C8 A2 D0 40 */ lfd f5, lbl_80456A40-_SDA2_BASE_(r2)
/* 8036B3F8 00368338 C8 02 D0 10 */ lfd f0, lbl_80456A10-_SDA2_BASE_(r2)
/* 8036B3FC 0036833C 7C C6 02 14 */ add r6, r6, r0
/* 8036B400 00368340 7C E7 42 14 */ add r7, r7, r8
/* 8036B404 00368344 38 7F 00 01 */ addi r3, r31, 1
/* 8036B408 00368348 3C 80 43 30 */ lis r4, 0x4330
/* 8036B40C 0036834C 41 80 00 E8 */ blt lbl_8036B4F4
/* 8036B410 00368350 54 60 F0 BF */ rlwinm. r0, r3, 0x1e, 2, 0x1f
/* 8036B414 00368354 7C 09 03 A6 */ mtctr r0
/* 8036B418 00368358 41 82 00 A8 */ beq lbl_8036B4C0
lbl_8036B41C:
/* 8036B41C 0036835C 80 A6 00 00 */ lwz r5, 0(r6)
/* 8036B420 00368360 90 81 02 50 */ stw r4, 0x250(r1)
/* 8036B424 00368364 6C A0 80 00 */ xoris r0, r5, 0x8000
/* 8036B428 00368368 80 A6 FF FC */ lwz r5, -4(r6)
/* 8036B42C 0036836C 90 01 02 54 */ stw r0, 0x254(r1)
/* 8036B430 00368370 6C A0 80 00 */ xoris r0, r5, 0x8000
/* 8036B434 00368374 80 A6 FF F8 */ lwz r5, -8(r6)
/* 8036B438 00368378 C8 81 02 50 */ lfd f4, 0x250(r1)
/* 8036B43C 0036837C 90 01 02 54 */ stw r0, 0x254(r1)
/* 8036B440 00368380 FC 64 28 28 */ fsub f3, f4, f5
/* 8036B444 00368384 6C A0 80 00 */ xoris r0, r5, 0x8000
/* 8036B448 00368388 80 A6 FF F4 */ lwz r5, -0xc(r6)
/* 8036B44C 0036838C 90 81 02 50 */ stw r4, 0x250(r1)
/* 8036B450 00368390 38 C6 FF F0 */ addi r6, r6, -16
/* 8036B454 00368394 FC 41 00 F2 */ fmul f2, f1, f3
/* 8036B458 00368398 C8 81 02 50 */ lfd f4, 0x250(r1)
/* 8036B45C 0036839C FC 21 00 32 */ fmul f1, f1, f0
/* 8036B460 003683A0 90 01 02 54 */ stw r0, 0x254(r1)
/* 8036B464 003683A4 6C A0 80 00 */ xoris r0, r5, 0x8000
/* 8036B468 003683A8 FC 64 28 28 */ fsub f3, f4, f5
/* 8036B46C 003683AC 90 81 02 50 */ stw r4, 0x250(r1)
/* 8036B470 003683B0 C8 81 02 50 */ lfd f4, 0x250(r1)
/* 8036B474 003683B4 D8 47 00 00 */ stfd f2, 0(r7)
/* 8036B478 003683B8 FC 41 00 F2 */ fmul f2, f1, f3
/* 8036B47C 003683BC FC 21 00 32 */ fmul f1, f1, f0
/* 8036B480 003683C0 90 01 02 54 */ stw r0, 0x254(r1)
/* 8036B484 003683C4 90 81 02 50 */ stw r4, 0x250(r1)
/* 8036B488 003683C8 FC 64 28 28 */ fsub f3, f4, f5
/* 8036B48C 003683CC D8 47 FF F8 */ stfd f2, -8(r7)
/* 8036B490 003683D0 FC 41 00 F2 */ fmul f2, f1, f3
/* 8036B494 003683D4 C8 81 02 50 */ lfd f4, 0x250(r1)
/* 8036B498 003683D8 FC 21 00 32 */ fmul f1, f1, f0
/* 8036B49C 003683DC FC 64 28 28 */ fsub f3, f4, f5
/* 8036B4A0 003683E0 D8 47 FF F0 */ stfd f2, -0x10(r7)
/* 8036B4A4 003683E4 FC 41 00 F2 */ fmul f2, f1, f3
/* 8036B4A8 003683E8 FC 21 00 32 */ fmul f1, f1, f0
/* 8036B4AC 003683EC D8 47 FF E8 */ stfd f2, -0x18(r7)
/* 8036B4B0 003683F0 38 E7 FF E0 */ addi r7, r7, -32
/* 8036B4B4 003683F4 42 00 FF 68 */ bdnz lbl_8036B41C
/* 8036B4B8 003683F8 70 63 00 03 */ andi. r3, r3, 3
/* 8036B4BC 003683FC 41 82 00 38 */ beq lbl_8036B4F4
lbl_8036B4C0:
/* 8036B4C0 00368400 7C 69 03 A6 */ mtctr r3
lbl_8036B4C4:
/* 8036B4C4 00368404 80 A6 00 00 */ lwz r5, 0(r6)
/* 8036B4C8 00368408 38 C6 FF FC */ addi r6, r6, -4
/* 8036B4CC 0036840C 90 81 02 50 */ stw r4, 0x250(r1)
/* 8036B4D0 00368410 6C A0 80 00 */ xoris r0, r5, 0x8000
/* 8036B4D4 00368414 90 01 02 54 */ stw r0, 0x254(r1)
/* 8036B4D8 00368418 C8 81 02 50 */ lfd f4, 0x250(r1)
/* 8036B4DC 0036841C FC 64 28 28 */ fsub f3, f4, f5
/* 8036B4E0 00368420 FC 41 00 F2 */ fmul f2, f1, f3
/* 8036B4E4 00368424 FC 21 00 32 */ fmul f1, f1, f0
/* 8036B4E8 00368428 D8 47 00 00 */ stfd f2, 0(r7)
/* 8036B4EC 0036842C 38 E7 FF F8 */ addi r7, r7, -8
/* 8036B4F0 00368430 42 00 FF D4 */ bdnz lbl_8036B4C4
lbl_8036B4F4:
/* 8036B4F4 00368434 3C 60 80 3A */ lis r3, lbl_803A2548@ha
/* 8036B4F8 00368438 38 1F 00 01 */ addi r0, r31, 1
/* 8036B4FC 0036843C 7F E9 FB 78 */ mr r9, r31
/* 8036B500 00368440 38 81 00 58 */ addi r4, r1, 0x58
/* 8036B504 00368444 38 A3 25 48 */ addi r5, r3, lbl_803A2548@l
/* 8036B508 00368448 38 61 00 F8 */ addi r3, r1, 0xf8
/* 8036B50C 0036844C 7C 09 03 A6 */ mtctr r0
/* 8036B510 00368450 2C 1F 00 00 */ cmpwi r31, 0
/* 8036B514 00368454 41 80 00 54 */ blt lbl_8036B568
lbl_8036B518:
/* 8036B518 00368458 C8 42 D0 08 */ lfd f2, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036B51C 0036845C 7C A6 2B 78 */ mr r6, r5
/* 8036B520 00368460 7C E9 F8 50 */ subf r7, r9, r31
/* 8036B524 00368464 39 40 00 00 */ li r10, 0
/* 8036B528 00368468 48 00 00 20 */ b lbl_8036B548
lbl_8036B52C:
/* 8036B52C 0036846C 7C 09 52 14 */ add r0, r9, r10
/* 8036B530 00368470 C8 26 00 00 */ lfd f1, 0(r6)
/* 8036B534 00368474 54 00 18 38 */ slwi r0, r0, 3
/* 8036B538 00368478 38 C6 00 08 */ addi r6, r6, 8
/* 8036B53C 0036847C 7C 04 04 AE */ lfdx f0, r4, r0
/* 8036B540 00368480 39 4A 00 01 */ addi r10, r10, 1
/* 8036B544 00368484 FC 41 10 3A */ fmadd f2, f1, f0, f2
lbl_8036B548:
/* 8036B548 00368488 7C 0A E0 00 */ cmpw r10, r28
/* 8036B54C 0036848C 41 81 00 0C */ bgt lbl_8036B558
/* 8036B550 00368490 7C 0A 38 00 */ cmpw r10, r7
/* 8036B554 00368494 40 81 FF D8 */ ble lbl_8036B52C
lbl_8036B558:
/* 8036B558 00368498 54 E0 18 38 */ slwi r0, r7, 3
/* 8036B55C 0036849C 39 29 FF FF */ addi r9, r9, -1
/* 8036B560 003684A0 7C 43 05 AE */ stfdx f2, r3, r0
/* 8036B564 003684A4 42 00 FF B4 */ bdnz lbl_8036B518
lbl_8036B568:
/* 8036B568 003684A8 2C 17 00 03 */ cmpwi r23, 3
/* 8036B56C 003684AC 41 82 02 24 */ beq lbl_8036B790
/* 8036B570 003684B0 40 80 04 60 */ bge lbl_8036B9D0
/* 8036B574 003684B4 2C 17 00 00 */ cmpwi r23, 0
/* 8036B578 003684B8 41 82 00 0C */ beq lbl_8036B584
/* 8036B57C 003684BC 40 80 00 A8 */ bge lbl_8036B624
/* 8036B580 003684C0 48 00 04 50 */ b lbl_8036B9D0
lbl_8036B584:
/* 8036B584 003684C4 2C 1F 00 00 */ cmpwi r31, 0
/* 8036B588 003684C8 38 81 00 F8 */ addi r4, r1, 0xf8
/* 8036B58C 003684CC C8 22 D0 08 */ lfd f1, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036B590 003684D0 7C 84 42 14 */ add r4, r4, r8
/* 8036B594 003684D4 38 7F 00 01 */ addi r3, r31, 1
/* 8036B598 003684D8 41 80 00 74 */ blt lbl_8036B60C
/* 8036B59C 003684DC 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 8036B5A0 003684E0 7C 09 03 A6 */ mtctr r0
/* 8036B5A4 003684E4 41 82 00 54 */ beq lbl_8036B5F8
lbl_8036B5A8:
/* 8036B5A8 003684E8 C8 04 00 00 */ lfd f0, 0(r4)
/* 8036B5AC 003684EC FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5B0 003684F0 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036B5B4 003684F4 FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5B8 003684F8 C8 04 FF F0 */ lfd f0, -0x10(r4)
/* 8036B5BC 003684FC FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5C0 00368500 C8 04 FF E8 */ lfd f0, -0x18(r4)
/* 8036B5C4 00368504 FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5C8 00368508 C8 04 FF E0 */ lfd f0, -0x20(r4)
/* 8036B5CC 0036850C FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5D0 00368510 C8 04 FF D8 */ lfd f0, -0x28(r4)
/* 8036B5D4 00368514 FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5D8 00368518 C8 04 FF D0 */ lfd f0, -0x30(r4)
/* 8036B5DC 0036851C FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5E0 00368520 C8 04 FF C8 */ lfd f0, -0x38(r4)
/* 8036B5E4 00368524 38 84 FF C0 */ addi r4, r4, -64
/* 8036B5E8 00368528 FC 21 00 2A */ fadd f1, f1, f0
/* 8036B5EC 0036852C 42 00 FF BC */ bdnz lbl_8036B5A8
/* 8036B5F0 00368530 70 63 00 07 */ andi. r3, r3, 7
/* 8036B5F4 00368534 41 82 00 18 */ beq lbl_8036B60C
lbl_8036B5F8:
/* 8036B5F8 00368538 7C 69 03 A6 */ mtctr r3
lbl_8036B5FC:
/* 8036B5FC 0036853C C8 04 00 00 */ lfd f0, 0(r4)
/* 8036B600 00368540 38 84 FF F8 */ addi r4, r4, -8
/* 8036B604 00368544 FC 21 00 2A */ fadd f1, f1, f0
/* 8036B608 00368548 42 00 FF F4 */ bdnz lbl_8036B5FC
lbl_8036B60C:
/* 8036B60C 0036854C 2C 19 00 00 */ cmpwi r25, 0
/* 8036B610 00368550 40 82 00 08 */ bne lbl_8036B618
/* 8036B614 00368554 48 00 00 08 */ b lbl_8036B61C
lbl_8036B618:
/* 8036B618 00368558 FC 20 08 50 */ fneg f1, f1
lbl_8036B61C:
/* 8036B61C 0036855C D8 36 00 00 */ stfd f1, 0(r22)
/* 8036B620 00368560 48 00 03 B0 */ b lbl_8036B9D0
lbl_8036B624:
/* 8036B624 00368564 2C 1F 00 00 */ cmpwi r31, 0
/* 8036B628 00368568 38 81 00 F8 */ addi r4, r1, 0xf8
/* 8036B62C 0036856C C8 42 D0 08 */ lfd f2, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036B630 00368570 7C 84 42 14 */ add r4, r4, r8
/* 8036B634 00368574 38 7F 00 01 */ addi r3, r31, 1
/* 8036B638 00368578 41 80 00 74 */ blt lbl_8036B6AC
/* 8036B63C 0036857C 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 8036B640 00368580 7C 09 03 A6 */ mtctr r0
/* 8036B644 00368584 41 82 00 54 */ beq lbl_8036B698
lbl_8036B648:
/* 8036B648 00368588 C8 04 00 00 */ lfd f0, 0(r4)
/* 8036B64C 0036858C FC 42 00 2A */ fadd f2, f2, f0
/* 8036B650 00368590 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036B654 00368594 FC 42 00 2A */ fadd f2, f2, f0
/* 8036B658 00368598 C8 04 FF F0 */ lfd f0, -0x10(r4)
/* 8036B65C 0036859C FC 42 00 2A */ fadd f2, f2, f0
/* 8036B660 003685A0 C8 04 FF E8 */ lfd f0, -0x18(r4)
/* 8036B664 003685A4 FC 42 00 2A */ fadd f2, f2, f0
/* 8036B668 003685A8 C8 04 FF E0 */ lfd f0, -0x20(r4)
/* 8036B66C 003685AC FC 42 00 2A */ fadd f2, f2, f0
/* 8036B670 003685B0 C8 04 FF D8 */ lfd f0, -0x28(r4)
/* 8036B674 003685B4 FC 42 00 2A */ fadd f2, f2, f0
/* 8036B678 003685B8 C8 04 FF D0 */ lfd f0, -0x30(r4)
/* 8036B67C 003685BC FC 42 00 2A */ fadd f2, f2, f0
/* 8036B680 003685C0 C8 04 FF C8 */ lfd f0, -0x38(r4)
/* 8036B684 003685C4 38 84 FF C0 */ addi r4, r4, -64
/* 8036B688 003685C8 FC 42 00 2A */ fadd f2, f2, f0
/* 8036B68C 003685CC 42 00 FF BC */ bdnz lbl_8036B648
/* 8036B690 003685D0 70 63 00 07 */ andi. r3, r3, 7
/* 8036B694 003685D4 41 82 00 18 */ beq lbl_8036B6AC
lbl_8036B698:
/* 8036B698 003685D8 7C 69 03 A6 */ mtctr r3
lbl_8036B69C:
/* 8036B69C 003685DC C8 04 00 00 */ lfd f0, 0(r4)
/* 8036B6A0 003685E0 38 84 FF F8 */ addi r4, r4, -8
/* 8036B6A4 003685E4 FC 42 00 2A */ fadd f2, f2, f0
/* 8036B6A8 003685E8 42 00 FF F4 */ bdnz lbl_8036B69C
lbl_8036B6AC:
/* 8036B6AC 003685EC 2C 19 00 00 */ cmpwi r25, 0
/* 8036B6B0 003685F0 40 82 00 0C */ bne lbl_8036B6BC
/* 8036B6B4 003685F4 FC 20 10 90 */ fmr f1, f2
/* 8036B6B8 003685F8 48 00 00 08 */ b lbl_8036B6C0
lbl_8036B6BC:
/* 8036B6BC 003685FC FC 20 10 50 */ fneg f1, f2
lbl_8036B6C0:
/* 8036B6C0 00368600 C8 01 00 F8 */ lfd f0, 0xf8(r1)
/* 8036B6C4 00368604 2C 1F 00 01 */ cmpwi r31, 1
/* 8036B6C8 00368608 D8 36 00 00 */ stfd f1, 0(r22)
/* 8036B6CC 0036860C 38 A0 00 01 */ li r5, 1
/* 8036B6D0 00368610 FC C0 10 28 */ fsub f6, f0, f2
/* 8036B6D4 00368614 41 80 00 A4 */ blt lbl_8036B778
/* 8036B6D8 00368618 2C 1F 00 08 */ cmpwi r31, 8
/* 8036B6DC 0036861C 38 7F FF F8 */ addi r3, r31, -8
/* 8036B6E0 00368620 40 81 00 68 */ ble lbl_8036B748
/* 8036B6E4 00368624 38 03 00 07 */ addi r0, r3, 7
/* 8036B6E8 00368628 38 81 01 00 */ addi r4, r1, 0x100
/* 8036B6EC 0036862C 54 00 E8 FE */ srwi r0, r0, 3
/* 8036B6F0 00368630 7C 09 03 A6 */ mtctr r0
/* 8036B6F4 00368634 2C 03 00 01 */ cmpwi r3, 1
/* 8036B6F8 00368638 41 80 00 50 */ blt lbl_8036B748
lbl_8036B6FC:
/* 8036B6FC 0036863C C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B700 00368640 38 A5 00 08 */ addi r5, r5, 8
/* 8036B704 00368644 C8 04 00 08 */ lfd f0, 8(r4)
/* 8036B708 00368648 FC C6 08 2A */ fadd f6, f6, f1
/* 8036B70C 0036864C C8 A4 00 10 */ lfd f5, 0x10(r4)
/* 8036B710 00368650 C8 84 00 18 */ lfd f4, 0x18(r4)
/* 8036B714 00368654 C8 64 00 20 */ lfd f3, 0x20(r4)
/* 8036B718 00368658 FC C6 00 2A */ fadd f6, f6, f0
/* 8036B71C 0036865C C8 44 00 28 */ lfd f2, 0x28(r4)
/* 8036B720 00368660 C8 24 00 30 */ lfd f1, 0x30(r4)
/* 8036B724 00368664 C8 04 00 38 */ lfd f0, 0x38(r4)
/* 8036B728 00368668 38 84 00 40 */ addi r4, r4, 0x40
/* 8036B72C 0036866C FC C6 28 2A */ fadd f6, f6, f5
/* 8036B730 00368670 FC C6 20 2A */ fadd f6, f6, f4
/* 8036B734 00368674 FC C6 18 2A */ fadd f6, f6, f3
/* 8036B738 00368678 FC C6 10 2A */ fadd f6, f6, f2
/* 8036B73C 0036867C FC C6 08 2A */ fadd f6, f6, f1
/* 8036B740 00368680 FC C6 00 2A */ fadd f6, f6, f0
/* 8036B744 00368684 42 00 FF B8 */ bdnz lbl_8036B6FC
lbl_8036B748:
/* 8036B748 00368688 38 1F 00 01 */ addi r0, r31, 1
/* 8036B74C 0036868C 54 A3 18 38 */ slwi r3, r5, 3
/* 8036B750 00368690 38 81 00 F8 */ addi r4, r1, 0xf8
/* 8036B754 00368694 7C 05 00 50 */ subf r0, r5, r0
/* 8036B758 00368698 7C 84 1A 14 */ add r4, r4, r3
/* 8036B75C 0036869C 7C 09 03 A6 */ mtctr r0
/* 8036B760 003686A0 7C 05 F8 00 */ cmpw r5, r31
/* 8036B764 003686A4 41 81 00 14 */ bgt lbl_8036B778
lbl_8036B768:
/* 8036B768 003686A8 C8 04 00 00 */ lfd f0, 0(r4)
/* 8036B76C 003686AC 38 84 00 08 */ addi r4, r4, 8
/* 8036B770 003686B0 FC C6 00 2A */ fadd f6, f6, f0
/* 8036B774 003686B4 42 00 FF F4 */ bdnz lbl_8036B768
lbl_8036B778:
/* 8036B778 003686B8 2C 19 00 00 */ cmpwi r25, 0
/* 8036B77C 003686BC 40 82 00 08 */ bne lbl_8036B784
/* 8036B780 003686C0 48 00 00 08 */ b lbl_8036B788
lbl_8036B784:
/* 8036B784 003686C4 FC C0 30 50 */ fneg f6, f6
lbl_8036B788:
/* 8036B788 003686C8 D8 D6 00 08 */ stfd f6, 8(r22)
/* 8036B78C 003686CC 48 00 02 44 */ b lbl_8036B9D0
lbl_8036B790:
/* 8036B790 003686D0 38 A1 00 F8 */ addi r5, r1, 0xf8
/* 8036B794 003686D4 2C 1F 00 00 */ cmpwi r31, 0
/* 8036B798 003686D8 7C A5 42 14 */ add r5, r5, r8
/* 8036B79C 003686DC 7F E3 FB 78 */ mr r3, r31
/* 8036B7A0 003686E0 7C A4 2B 78 */ mr r4, r5
/* 8036B7A4 003686E4 40 81 00 B0 */ ble lbl_8036B854
/* 8036B7A8 003686E8 57 E0 F0 BF */ rlwinm. r0, r31, 0x1e, 2, 0x1f
/* 8036B7AC 003686EC 7C 09 03 A6 */ mtctr r0
/* 8036B7B0 003686F0 41 82 00 80 */ beq lbl_8036B830
lbl_8036B7B4:
/* 8036B7B4 003686F4 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036B7B8 003686F8 C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B7BC 003686FC FC 40 08 2A */ fadd f2, f0, f1
/* 8036B7C0 00368700 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B7C4 00368704 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B7C8 00368708 D8 04 00 00 */ stfd f0, 0(r4)
/* 8036B7CC 0036870C D8 44 FF F8 */ stfd f2, -8(r4)
/* 8036B7D0 00368710 C8 04 FF F0 */ lfd f0, -0x10(r4)
/* 8036B7D4 00368714 C8 24 FF F8 */ lfd f1, -8(r4)
/* 8036B7D8 00368718 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B7DC 0036871C FC 00 10 28 */ fsub f0, f0, f2
/* 8036B7E0 00368720 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B7E4 00368724 D8 04 FF F8 */ stfd f0, -8(r4)
/* 8036B7E8 00368728 D8 44 FF F0 */ stfd f2, -0x10(r4)
/* 8036B7EC 0036872C C8 04 FF E8 */ lfd f0, -0x18(r4)
/* 8036B7F0 00368730 C8 24 FF F0 */ lfd f1, -0x10(r4)
/* 8036B7F4 00368734 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B7F8 00368738 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B7FC 0036873C FC 01 00 2A */ fadd f0, f1, f0
/* 8036B800 00368740 D8 04 FF F0 */ stfd f0, -0x10(r4)
/* 8036B804 00368744 D8 44 FF E8 */ stfd f2, -0x18(r4)
/* 8036B808 00368748 C8 04 FF E0 */ lfd f0, -0x20(r4)
/* 8036B80C 0036874C C8 24 FF E8 */ lfd f1, -0x18(r4)
/* 8036B810 00368750 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B814 00368754 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B818 00368758 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B81C 0036875C D8 04 FF E8 */ stfd f0, -0x18(r4)
/* 8036B820 00368760 DC 44 FF E0 */ stfdu f2, -0x20(r4)
/* 8036B824 00368764 42 00 FF 90 */ bdnz lbl_8036B7B4
/* 8036B828 00368768 70 63 00 03 */ andi. r3, r3, 3
/* 8036B82C 0036876C 41 82 00 28 */ beq lbl_8036B854
lbl_8036B830:
/* 8036B830 00368770 7C 69 03 A6 */ mtctr r3
lbl_8036B834:
/* 8036B834 00368774 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036B838 00368778 C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B83C 0036877C FC 40 08 2A */ fadd f2, f0, f1
/* 8036B840 00368780 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B844 00368784 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B848 00368788 D8 04 00 00 */ stfd f0, 0(r4)
/* 8036B84C 0036878C DC 44 FF F8 */ stfdu f2, -8(r4)
/* 8036B850 00368790 42 00 FF E4 */ bdnz lbl_8036B834
lbl_8036B854:
/* 8036B854 00368794 2C 1F 00 01 */ cmpwi r31, 1
/* 8036B858 00368798 7C A4 2B 78 */ mr r4, r5
/* 8036B85C 0036879C 38 7F FF FF */ addi r3, r31, -1
/* 8036B860 003687A0 40 81 00 B0 */ ble lbl_8036B910
/* 8036B864 003687A4 54 60 F0 BF */ rlwinm. r0, r3, 0x1e, 2, 0x1f
/* 8036B868 003687A8 7C 09 03 A6 */ mtctr r0
/* 8036B86C 003687AC 41 82 00 80 */ beq lbl_8036B8EC
lbl_8036B870:
/* 8036B870 003687B0 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036B874 003687B4 C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B878 003687B8 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B87C 003687BC FC 00 10 28 */ fsub f0, f0, f2
/* 8036B880 003687C0 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B884 003687C4 D8 04 00 00 */ stfd f0, 0(r4)
/* 8036B888 003687C8 D8 44 FF F8 */ stfd f2, -8(r4)
/* 8036B88C 003687CC C8 04 FF F0 */ lfd f0, -0x10(r4)
/* 8036B890 003687D0 C8 24 FF F8 */ lfd f1, -8(r4)
/* 8036B894 003687D4 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B898 003687D8 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B89C 003687DC FC 01 00 2A */ fadd f0, f1, f0
/* 8036B8A0 003687E0 D8 04 FF F8 */ stfd f0, -8(r4)
/* 8036B8A4 003687E4 D8 44 FF F0 */ stfd f2, -0x10(r4)
/* 8036B8A8 003687E8 C8 04 FF E8 */ lfd f0, -0x18(r4)
/* 8036B8AC 003687EC C8 24 FF F0 */ lfd f1, -0x10(r4)
/* 8036B8B0 003687F0 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B8B4 003687F4 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B8B8 003687F8 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B8BC 003687FC D8 04 FF F0 */ stfd f0, -0x10(r4)
/* 8036B8C0 00368800 D8 44 FF E8 */ stfd f2, -0x18(r4)
/* 8036B8C4 00368804 C8 04 FF E0 */ lfd f0, -0x20(r4)
/* 8036B8C8 00368808 C8 24 FF E8 */ lfd f1, -0x18(r4)
/* 8036B8CC 0036880C FC 40 08 2A */ fadd f2, f0, f1
/* 8036B8D0 00368810 FC 00 10 28 */ fsub f0, f0, f2
/* 8036B8D4 00368814 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B8D8 00368818 D8 04 FF E8 */ stfd f0, -0x18(r4)
/* 8036B8DC 0036881C DC 44 FF E0 */ stfdu f2, -0x20(r4)
/* 8036B8E0 00368820 42 00 FF 90 */ bdnz lbl_8036B870
/* 8036B8E4 00368824 70 63 00 03 */ andi. r3, r3, 3
/* 8036B8E8 00368828 41 82 00 28 */ beq lbl_8036B910
lbl_8036B8EC:
/* 8036B8EC 0036882C 7C 69 03 A6 */ mtctr r3
lbl_8036B8F0:
/* 8036B8F0 00368830 C8 04 FF F8 */ lfd f0, -8(r4)
/* 8036B8F4 00368834 C8 24 00 00 */ lfd f1, 0(r4)
/* 8036B8F8 00368838 FC 40 08 2A */ fadd f2, f0, f1
/* 8036B8FC 0036883C FC 00 10 28 */ fsub f0, f0, f2
/* 8036B900 00368840 FC 01 00 2A */ fadd f0, f1, f0
/* 8036B904 00368844 D8 04 00 00 */ stfd f0, 0(r4)
/* 8036B908 00368848 DC 44 FF F8 */ stfdu f2, -8(r4)
/* 8036B90C 0036884C 42 00 FF E4 */ bdnz lbl_8036B8F0
lbl_8036B910:
/* 8036B910 00368850 2C 1F 00 02 */ cmpwi r31, 2
/* 8036B914 00368854 C8 62 D0 08 */ lfd f3, lbl_80456A08-_SDA2_BASE_(r2)
/* 8036B918 00368858 38 7F FF FF */ addi r3, r31, -1
/* 8036B91C 0036885C 41 80 00 74 */ blt lbl_8036B990
/* 8036B920 00368860 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 8036B924 00368864 7C 09 03 A6 */ mtctr r0
/* 8036B928 00368868 41 82 00 54 */ beq lbl_8036B97C
lbl_8036B92C:
/* 8036B92C 0036886C C8 05 00 00 */ lfd f0, 0(r5)
/* 8036B930 00368870 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B934 00368874 C8 05 FF F8 */ lfd f0, -8(r5)
/* 8036B938 00368878 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B93C 0036887C C8 05 FF F0 */ lfd f0, -0x10(r5)
/* 8036B940 00368880 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B944 00368884 C8 05 FF E8 */ lfd f0, -0x18(r5)
/* 8036B948 00368888 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B94C 0036888C C8 05 FF E0 */ lfd f0, -0x20(r5)
/* 8036B950 00368890 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B954 00368894 C8 05 FF D8 */ lfd f0, -0x28(r5)
/* 8036B958 00368898 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B95C 0036889C C8 05 FF D0 */ lfd f0, -0x30(r5)
/* 8036B960 003688A0 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B964 003688A4 C8 05 FF C8 */ lfd f0, -0x38(r5)
/* 8036B968 003688A8 38 A5 FF C0 */ addi r5, r5, -64
/* 8036B96C 003688AC FC 63 00 2A */ fadd f3, f3, f0
/* 8036B970 003688B0 42 00 FF BC */ bdnz lbl_8036B92C
/* 8036B974 003688B4 70 63 00 07 */ andi. r3, r3, 7
/* 8036B978 003688B8 41 82 00 18 */ beq lbl_8036B990
lbl_8036B97C:
/* 8036B97C 003688BC 7C 69 03 A6 */ mtctr r3
lbl_8036B980:
/* 8036B980 003688C0 C8 05 00 00 */ lfd f0, 0(r5)
/* 8036B984 003688C4 38 A5 FF F8 */ addi r5, r5, -8
/* 8036B988 003688C8 FC 63 00 2A */ fadd f3, f3, f0
/* 8036B98C 003688CC 42 00 FF F4 */ bdnz lbl_8036B980
lbl_8036B990:
/* 8036B990 003688D0 2C 19 00 00 */ cmpwi r25, 0
/* 8036B994 003688D4 40 82 00 1C */ bne lbl_8036B9B0
/* 8036B998 003688D8 C8 21 00 F8 */ lfd f1, 0xf8(r1)
/* 8036B99C 003688DC C8 01 01 00 */ lfd f0, 0x100(r1)
/* 8036B9A0 003688E0 D8 36 00 00 */ stfd f1, 0(r22)
/* 8036B9A4 003688E4 D8 16 00 08 */ stfd f0, 8(r22)
/* 8036B9A8 003688E8 D8 76 00 10 */ stfd f3, 0x10(r22)
/* 8036B9AC 003688EC 48 00 00 24 */ b lbl_8036B9D0
lbl_8036B9B0:
/* 8036B9B0 003688F0 C8 41 00 F8 */ lfd f2, 0xf8(r1)
/* 8036B9B4 003688F4 FC 00 18 50 */ fneg f0, f3
/* 8036B9B8 003688F8 C8 21 01 00 */ lfd f1, 0x100(r1)
/* 8036B9BC 003688FC FC 40 10 50 */ fneg f2, f2
/* 8036B9C0 00368900 FC 20 08 50 */ fneg f1, f1
/* 8036B9C4 00368904 D8 56 00 00 */ stfd f2, 0(r22)
/* 8036B9C8 00368908 D8 36 00 08 */ stfd f1, 8(r22)
/* 8036B9CC 0036890C D8 16 00 10 */ stfd f0, 0x10(r22)
lbl_8036B9D0:
/* 8036B9D0 00368910 57 63 07 7E */ clrlwi r3, r27, 0x1d
/* 8036B9D4 00368914 39 61 02 D0 */ addi r11, r1, 0x2d0
/* 8036B9D8 00368918 4B FF 67 A9 */ bl _restfpr_25
/* 8036B9DC 0036891C BA 01 02 58 */ lmw r16, 0x258(r1)
/* 8036B9E0 00368920 80 01 02 D4 */ lwz r0, 0x2d4(r1)
/* 8036B9E4 00368924 7C 08 03 A6 */ mtlr r0
/* 8036B9E8 00368928 38 21 02 D0 */ addi r1, r1, 0x2d0
/* 8036B9EC 0036892C 4E 80 00 20 */ blr
.global func_8036B9F0
func_8036B9F0:
/* 8036B9F0 00368930 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036B9F4 00368934 3C 00 3E 40 */ lis r0, 0x3e40
/* 8036B9F8 00368938 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036B9FC 0036893C 80 81 00 08 */ lwz r4, 8(r1)
/* 8036BA00 00368940 54 84 00 7E */ clrlwi r4, r4, 1
/* 8036BA04 00368944 7C 04 00 00 */ cmpw r4, r0
/* 8036BA08 00368948 40 80 00 1C */ bge lbl_8036BA24
/* 8036BA0C 0036894C FC 00 08 1E */ fctiwz f0, f1
/* 8036BA10 00368950 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 8036BA14 00368954 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036BA18 00368958 2C 00 00 00 */ cmpwi r0, 0
/* 8036BA1C 0036895C 40 82 00 08 */ bne lbl_8036BA24
/* 8036BA20 00368960 48 00 00 68 */ b lbl_8036BA88
lbl_8036BA24:
/* 8036BA24 00368964 C8 C1 00 08 */ lfd f6, 8(r1)
/* 8036BA28 00368968 2C 03 00 00 */ cmpwi r3, 0
/* 8036BA2C 0036896C C8 A2 D0 68 */ lfd f5, lbl_80456A68-_SDA2_BASE_(r2)
/* 8036BA30 00368970 FC E6 01 B2 */ fmul f7, f6, f6
/* 8036BA34 00368974 C8 82 D0 60 */ lfd f4, lbl_80456A60-_SDA2_BASE_(r2)
/* 8036BA38 00368978 C8 62 D0 58 */ lfd f3, lbl_80456A58-_SDA2_BASE_(r2)
/* 8036BA3C 0036897C C8 22 D0 50 */ lfd f1, lbl_80456A50-_SDA2_BASE_(r2)
/* 8036BA40 00368980 C8 02 D0 48 */ lfd f0, lbl_80456A48-_SDA2_BASE_(r2)
/* 8036BA44 00368984 FC 85 21 FA */ fmadd f4, f5, f7, f4
/* 8036BA48 00368988 FC A7 01 B2 */ fmul f5, f7, f6
/* 8036BA4C 0036898C FC 67 19 3A */ fmadd f3, f7, f4, f3
/* 8036BA50 00368990 FC 27 08 FA */ fmadd f1, f7, f3, f1
/* 8036BA54 00368994 FC 27 00 7A */ fmadd f1, f7, f1, f0
/* 8036BA58 00368998 40 82 00 14 */ bne lbl_8036BA6C
/* 8036BA5C 0036899C C8 02 D0 70 */ lfd f0, lbl_80456A70-_SDA2_BASE_(r2)
/* 8036BA60 003689A0 FC 07 00 7A */ fmadd f0, f7, f1, f0
/* 8036BA64 003689A4 FC 25 30 3A */ fmadd f1, f5, f0, f6
/* 8036BA68 003689A8 48 00 00 20 */ b lbl_8036BA88
lbl_8036BA6C:
/* 8036BA6C 003689AC FC 05 00 72 */ fmul f0, f5, f1
/* 8036BA70 003689B0 C8 22 D0 78 */ lfd f1, lbl_80456A78-_SDA2_BASE_(r2)
/* 8036BA74 003689B4 C8 62 D0 70 */ lfd f3, lbl_80456A70-_SDA2_BASE_(r2)
/* 8036BA78 003689B8 FC 01 00 B8 */ fmsub f0, f1, f2, f0
/* 8036BA7C 003689BC FC 07 10 38 */ fmsub f0, f7, f0, f2
/* 8036BA80 003689C0 FC 03 01 7C */ fnmsub f0, f3, f5, f0
/* 8036BA84 003689C4 FC 26 00 28 */ fsub f1, f6, f0
lbl_8036BA88:
/* 8036BA88 003689C8 38 21 00 20 */ addi r1, r1, 0x20
/* 8036BA8C 003689CC 4E 80 00 20 */ blr
.global func_8036BA90
func_8036BA90:
/* 8036BA90 003689D0 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8036BA94 003689D4 DB E1 00 30 */ stfd f31, 0x30(r1)
/* 8036BA98 003689D8 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
/* 8036BA9C 003689DC D8 21 00 08 */ stfd f1, 8(r1)
/* 8036BAA0 003689E0 3C 00 3E 30 */ lis r0, 0x3e30
/* 8036BAA4 003689E4 80 E1 00 08 */ lwz r7, 8(r1)
/* 8036BAA8 003689E8 54 E6 00 7E */ clrlwi r6, r7, 1
/* 8036BAAC 003689EC 7C 06 00 00 */ cmpw r6, r0
/* 8036BAB0 003689F0 40 80 00 54 */ bge lbl_8036BB04
/* 8036BAB4 003689F4 FC 00 08 1E */ fctiwz f0, f1
/* 8036BAB8 003689F8 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 8036BABC 003689FC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036BAC0 00368A00 2C 00 00 00 */ cmpwi r0, 0
/* 8036BAC4 00368A04 40 82 00 40 */ bne lbl_8036BB04
/* 8036BAC8 00368A08 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036BACC 00368A0C 38 83 00 01 */ addi r4, r3, 1
/* 8036BAD0 00368A10 7C C0 03 78 */ or r0, r6, r0
/* 8036BAD4 00368A14 7C 80 03 79 */ or. r0, r4, r0
/* 8036BAD8 00368A18 40 82 00 14 */ bne lbl_8036BAEC
/* 8036BADC 00368A1C FC 20 0A 10 */ fabs f1, f1
/* 8036BAE0 00368A20 C8 02 D0 80 */ lfd f0, lbl_80456A80-_SDA2_BASE_(r2)
/* 8036BAE4 00368A24 FC 20 08 24 */ fdiv f1, f0, f1
/* 8036BAE8 00368A28 48 00 01 AC */ b lbl_8036BC94
lbl_8036BAEC:
/* 8036BAEC 00368A2C 2C 03 00 01 */ cmpwi r3, 1
/* 8036BAF0 00368A30 40 82 00 08 */ bne lbl_8036BAF8
/* 8036BAF4 00368A34 48 00 01 A0 */ b lbl_8036BC94
lbl_8036BAF8:
/* 8036BAF8 00368A38 C8 02 D0 88 */ lfd f0, lbl_80456A88-_SDA2_BASE_(r2)
/* 8036BAFC 00368A3C FC 20 08 24 */ fdiv f1, f0, f1
/* 8036BB00 00368A40 48 00 01 94 */ b lbl_8036BC94
lbl_8036BB04:
/* 8036BB04 00368A44 3C 80 3F E6 */ lis r4, 0x3FE59428@ha
/* 8036BB08 00368A48 38 04 94 28 */ addi r0, r4, 0x3FE59428@l
/* 8036BB0C 00368A4C 7C 06 00 00 */ cmpw r6, r0
/* 8036BB10 00368A50 41 80 00 40 */ blt lbl_8036BB50
/* 8036BB14 00368A54 2C 07 00 00 */ cmpwi r7, 0
/* 8036BB18 00368A58 40 80 00 14 */ bge lbl_8036BB2C
/* 8036BB1C 00368A5C C8 01 00 08 */ lfd f0, 8(r1)
/* 8036BB20 00368A60 FC 40 10 50 */ fneg f2, f2
/* 8036BB24 00368A64 FC 00 00 50 */ fneg f0, f0
/* 8036BB28 00368A68 D8 01 00 08 */ stfd f0, 8(r1)
lbl_8036BB2C:
/* 8036BB2C 00368A6C C8 02 D0 98 */ lfd f0, lbl_80456A98-_SDA2_BASE_(r2)
/* 8036BB30 00368A70 C8 62 D0 90 */ lfd f3, lbl_80456A90-_SDA2_BASE_(r2)
/* 8036BB34 00368A74 C8 21 00 08 */ lfd f1, 8(r1)
/* 8036BB38 00368A78 FC 00 10 28 */ fsub f0, f0, f2
/* 8036BB3C 00368A7C C8 42 D0 A0 */ lfd f2, lbl_80456AA0-_SDA2_BASE_(r2)
/* 8036BB40 00368A80 FC 23 08 28 */ fsub f1, f3, f1
/* 8036BB44 00368A84 FC 01 00 2A */ fadd f0, f1, f0
/* 8036BB48 00368A88 D8 21 00 18 */ stfd f1, 0x18(r1)
/* 8036BB4C 00368A8C D8 01 00 08 */ stfd f0, 8(r1)
lbl_8036BB50:
/* 8036BB50 00368A90 C8 01 00 08 */ lfd f0, 8(r1)
/* 8036BB54 00368A94 3C 80 80 3A */ lis r4, lbl_803A2588@ha
/* 8036BB58 00368A98 38 A4 25 88 */ addi r5, r4, lbl_803A2588@l
/* 8036BB5C 00368A9C 3C 80 3F E6 */ lis r4, 0x3FE59428@ha
/* 8036BB60 00368AA0 FD A0 00 32 */ fmul f13, f0, f0
/* 8036BB64 00368AA4 38 04 94 28 */ addi r0, r4, 0x3FE59428@l
/* 8036BB68 00368AA8 C8 A5 00 60 */ lfd f5, 0x60(r5)
/* 8036BB6C 00368AAC 7C 06 00 00 */ cmpw r6, r0
/* 8036BB70 00368AB0 C8 85 00 50 */ lfd f4, 0x50(r5)
/* 8036BB74 00368AB4 C9 25 00 58 */ lfd f9, 0x58(r5)
/* 8036BB78 00368AB8 FF ED 03 72 */ fmul f31, f13, f13
/* 8036BB7C 00368ABC C9 05 00 48 */ lfd f8, 0x48(r5)
/* 8036BB80 00368AC0 C8 65 00 40 */ lfd f3, 0x40(r5)
/* 8036BB84 00368AC4 C9 65 00 38 */ lfd f11, 0x38(r5)
/* 8036BB88 00368AC8 FC 2D 00 32 */ fmul f1, f13, f0
/* 8036BB8C 00368ACC C8 C5 00 30 */ lfd f6, 0x30(r5)
/* 8036BB90 00368AD0 FC FF 21 7A */ fmadd f7, f31, f5, f4
/* 8036BB94 00368AD4 C9 45 00 28 */ lfd f10, 0x28(r5)
/* 8036BB98 00368AD8 C8 A5 00 20 */ lfd f5, 0x20(r5)
/* 8036BB9C 00368ADC FD 9F 42 7A */ fmadd f12, f31, f9, f8
/* 8036BBA0 00368AE0 C9 25 00 18 */ lfd f9, 0x18(r5)
/* 8036BBA4 00368AE4 C8 85 00 10 */ lfd f4, 0x10(r5)
/* 8036BBA8 00368AE8 FC FF 19 FA */ fmadd f7, f31, f7, f3
/* 8036BBAC 00368AEC C9 05 00 08 */ lfd f8, 8(r5)
/* 8036BBB0 00368AF0 C8 65 00 00 */ lfd f3, 0(r5)
/* 8036BBB4 00368AF4 FD 7F 5B 3A */ fmadd f11, f31, f12, f11
/* 8036BBB8 00368AF8 D9 A1 00 18 */ stfd f13, 0x18(r1)
/* 8036BBBC 00368AFC FC DF 31 FA */ fmadd f6, f31, f7, f6
/* 8036BBC0 00368B00 FC FF 52 FA */ fmadd f7, f31, f11, f10
/* 8036BBC4 00368B04 FC BF 29 BA */ fmadd f5, f31, f6, f5
/* 8036BBC8 00368B08 FC DF 49 FA */ fmadd f6, f31, f7, f9
/* 8036BBCC 00368B0C FC 9F 21 7A */ fmadd f4, f31, f5, f4
/* 8036BBD0 00368B10 FC BF 41 BA */ fmadd f5, f31, f6, f8
/* 8036BBD4 00368B14 FC 8D 01 32 */ fmul f4, f13, f4
/* 8036BBD8 00368B18 FC 85 20 2A */ fadd f4, f5, f4
/* 8036BBDC 00368B1C FC 81 11 3A */ fmadd f4, f1, f4, f2
/* 8036BBE0 00368B20 FC CD 11 3A */ fmadd f6, f13, f4, f2
/* 8036BBE4 00368B24 FC C3 30 7A */ fmadd f6, f3, f1, f6
/* 8036BBE8 00368B28 FC 20 30 2A */ fadd f1, f0, f6
/* 8036BBEC 00368B2C 41 80 00 60 */ blt lbl_8036BC4C
/* 8036BBF0 00368B30 3C 80 43 30 */ lis r4, 0x4330
/* 8036BBF4 00368B34 6C 60 80 00 */ xoris r0, r3, 0x8000
/* 8036BBF8 00368B38 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036BBFC 00368B3C 54 E0 17 BC */ rlwinm r0, r7, 2, 0x1e, 0x1e
/* 8036BC00 00368B40 20 00 00 01 */ subfic r0, r0, 1
/* 8036BC04 00368B44 C8 A2 D0 B0 */ lfd f5, lbl_80456AB0-_SDA2_BASE_(r2)
/* 8036BC08 00368B48 90 81 00 20 */ stw r4, 0x20(r1)
/* 8036BC0C 00368B4C 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 8036BC10 00368B50 FC 41 00 72 */ fmul f2, f1, f1
/* 8036BC14 00368B54 C8 62 D0 A8 */ lfd f3, lbl_80456AA8-_SDA2_BASE_(r2)
/* 8036BC18 00368B58 C8 81 00 20 */ lfd f4, 0x20(r1)
/* 8036BC1C 00368B5C 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8036BC20 00368B60 FC E4 28 28 */ fsub f7, f4, f5
/* 8036BC24 00368B64 90 81 00 28 */ stw r4, 0x28(r1)
/* 8036BC28 00368B68 FC 21 38 2A */ fadd f1, f1, f7
/* 8036BC2C 00368B6C C8 81 00 28 */ lfd f4, 0x28(r1)
/* 8036BC30 00368B70 FC 84 28 28 */ fsub f4, f4, f5
/* 8036BC34 00368B74 FC 22 08 24 */ fdiv f1, f2, f1
/* 8036BC38 00368B78 FC 21 30 28 */ fsub f1, f1, f6
/* 8036BC3C 00368B7C FC 00 08 28 */ fsub f0, f0, f1
/* 8036BC40 00368B80 FC 03 38 3C */ fnmsub f0, f3, f0, f7
/* 8036BC44 00368B84 FC 24 00 32 */ fmul f1, f4, f0
/* 8036BC48 00368B88 48 00 00 4C */ b lbl_8036BC94
lbl_8036BC4C:
/* 8036BC4C 00368B8C 2C 03 00 01 */ cmpwi r3, 1
/* 8036BC50 00368B90 40 82 00 08 */ bne lbl_8036BC58
/* 8036BC54 00368B94 48 00 00 40 */ b lbl_8036BC94
lbl_8036BC58:
/* 8036BC58 00368B98 C8 42 D0 88 */ lfd f2, lbl_80456A88-_SDA2_BASE_(r2)
/* 8036BC5C 00368B9C 38 00 00 00 */ li r0, 0
/* 8036BC60 00368BA0 D8 21 00 18 */ stfd f1, 0x18(r1)
/* 8036BC64 00368BA4 FC 82 08 24 */ fdiv f4, f2, f1
/* 8036BC68 00368BA8 C8 22 D0 80 */ lfd f1, lbl_80456A80-_SDA2_BASE_(r2)
/* 8036BC6C 00368BAC 90 01 00 1C */ stw r0, 0x1c(r1)
/* 8036BC70 00368BB0 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036BC74 00368BB4 D8 81 00 10 */ stfd f4, 0x10(r1)
/* 8036BC78 00368BB8 FC 02 00 28 */ fsub f0, f2, f0
/* 8036BC7C 00368BBC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036BC80 00368BC0 FC 06 00 28 */ fsub f0, f6, f0
/* 8036BC84 00368BC4 C8 61 00 10 */ lfd f3, 0x10(r1)
/* 8036BC88 00368BC8 FC 23 08 BA */ fmadd f1, f3, f2, f1
/* 8036BC8C 00368BCC FC 03 08 3A */ fmadd f0, f3, f0, f1
/* 8036BC90 00368BD0 FC 24 18 3A */ fmadd f1, f4, f0, f3
lbl_8036BC94:
/* 8036BC94 00368BD4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
/* 8036BC98 00368BD8 CB E1 00 30 */ lfd f31, 0x30(r1)
/* 8036BC9C 00368BDC 38 21 00 40 */ addi r1, r1, 0x40
/* 8036BCA0 00368BE0 4E 80 00 20 */ blr
.global func_8036BCA4
func_8036BCA4:
/* 8036BCA4 00368BE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036BCA8 00368BE8 3C 60 80 3A */ lis r3, lbl_803A25F0@ha
/* 8036BCAC 00368BEC 3C 00 44 10 */ lis r0, 0x4410
/* 8036BCB0 00368BF0 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036BCB4 00368BF4 38 A3 25 F0 */ addi r5, r3, lbl_803A25F0@l
/* 8036BCB8 00368BF8 80 C1 00 08 */ lwz r6, 8(r1)
/* 8036BCBC 00368BFC 54 C4 00 7E */ clrlwi r4, r6, 1
/* 8036BCC0 00368C00 7C 04 00 00 */ cmpw r4, r0
/* 8036BCC4 00368C04 41 80 00 70 */ blt lbl_8036BD34
/* 8036BCC8 00368C08 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036BCCC 00368C0C 7C 04 00 00 */ cmpw r4, r0
/* 8036BCD0 00368C10 41 81 00 1C */ bgt lbl_8036BCEC
/* 8036BCD4 00368C14 3C 04 80 10 */ addis r0, r4, 0x8010
/* 8036BCD8 00368C18 28 00 00 00 */ cmplwi r0, 0
/* 8036BCDC 00368C1C 40 82 00 1C */ bne lbl_8036BCF8
/* 8036BCE0 00368C20 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036BCE4 00368C24 2C 00 00 00 */ cmpwi r0, 0
/* 8036BCE8 00368C28 41 82 00 10 */ beq lbl_8036BCF8
lbl_8036BCEC:
/* 8036BCEC 00368C2C C8 01 00 08 */ lfd f0, 8(r1)
/* 8036BCF0 00368C30 FC 20 00 2A */ fadd f1, f0, f0
/* 8036BCF4 00368C34 48 00 01 C0 */ b lbl_8036BEB4
lbl_8036BCF8:
/* 8036BCF8 00368C38 2C 06 00 00 */ cmpwi r6, 0
/* 8036BCFC 00368C3C 40 81 00 1C */ ble lbl_8036BD18
/* 8036BD00 00368C40 38 85 00 00 */ addi r4, r5, 0
/* 8036BD04 00368C44 38 65 00 20 */ addi r3, r5, 0x20
/* 8036BD08 00368C48 C8 24 00 18 */ lfd f1, 0x18(r4)
/* 8036BD0C 00368C4C C8 03 00 18 */ lfd f0, 0x18(r3)
/* 8036BD10 00368C50 FC 21 00 2A */ fadd f1, f1, f0
/* 8036BD14 00368C54 48 00 01 A0 */ b lbl_8036BEB4
lbl_8036BD18:
/* 8036BD18 00368C58 38 85 00 00 */ addi r4, r5, 0
/* 8036BD1C 00368C5C 38 65 00 20 */ addi r3, r5, 0x20
/* 8036BD20 00368C60 C8 24 00 18 */ lfd f1, 0x18(r4)
/* 8036BD24 00368C64 C8 03 00 18 */ lfd f0, 0x18(r3)
/* 8036BD28 00368C68 FC 20 08 50 */ fneg f1, f1
/* 8036BD2C 00368C6C FC 21 00 28 */ fsub f1, f1, f0
/* 8036BD30 00368C70 48 00 01 84 */ b lbl_8036BEB4
lbl_8036BD34:
/* 8036BD34 00368C74 3C 00 3F DC */ lis r0, 0x3fdc
/* 8036BD38 00368C78 7C 04 00 00 */ cmpw r4, r0
/* 8036BD3C 00368C7C 40 80 00 30 */ bge lbl_8036BD6C
/* 8036BD40 00368C80 3C 00 3E 20 */ lis r0, 0x3e20
/* 8036BD44 00368C84 7C 04 00 00 */ cmpw r4, r0
/* 8036BD48 00368C88 40 80 00 1C */ bge lbl_8036BD64
/* 8036BD4C 00368C8C C8 42 D0 B8 */ lfd f2, lbl_80456AB8-_SDA2_BASE_(r2)
/* 8036BD50 00368C90 C8 02 D0 C0 */ lfd f0, lbl_80456AC0-_SDA2_BASE_(r2)
/* 8036BD54 00368C94 FC 42 08 2A */ fadd f2, f2, f1
/* 8036BD58 00368C98 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8036BD5C 00368C9C 40 81 00 08 */ ble lbl_8036BD64
/* 8036BD60 00368CA0 48 00 01 54 */ b lbl_8036BEB4
lbl_8036BD64:
/* 8036BD64 00368CA4 38 00 FF FF */ li r0, -1
/* 8036BD68 00368CA8 48 00 00 A0 */ b lbl_8036BE08
lbl_8036BD6C:
/* 8036BD6C 00368CAC FC 60 0A 10 */ fabs f3, f1
/* 8036BD70 00368CB0 3C 00 3F F3 */ lis r0, 0x3ff3
/* 8036BD74 00368CB4 7C 04 00 00 */ cmpw r4, r0
/* 8036BD78 00368CB8 D8 61 00 08 */ stfd f3, 8(r1)
/* 8036BD7C 00368CBC 40 80 00 4C */ bge lbl_8036BDC8
/* 8036BD80 00368CC0 3C 00 3F E6 */ lis r0, 0x3fe6
/* 8036BD84 00368CC4 7C 04 00 00 */ cmpw r4, r0
/* 8036BD88 00368CC8 40 80 00 24 */ bge lbl_8036BDAC
/* 8036BD8C 00368CCC C8 42 D0 C8 */ lfd f2, lbl_80456AC8-_SDA2_BASE_(r2)
/* 8036BD90 00368CD0 38 00 00 00 */ li r0, 0
/* 8036BD94 00368CD4 C8 22 D0 C0 */ lfd f1, lbl_80456AC0-_SDA2_BASE_(r2)
/* 8036BD98 00368CD8 FC 02 18 2A */ fadd f0, f2, f3
/* 8036BD9C 00368CDC FC 22 08 F8 */ fmsub f1, f2, f3, f1
/* 8036BDA0 00368CE0 FC 01 00 24 */ fdiv f0, f1, f0
/* 8036BDA4 00368CE4 D8 01 00 08 */ stfd f0, 8(r1)
/* 8036BDA8 00368CE8 48 00 00 60 */ b lbl_8036BE08
lbl_8036BDAC:
/* 8036BDAC 00368CEC C8 02 D0 C0 */ lfd f0, lbl_80456AC0-_SDA2_BASE_(r2)
/* 8036BDB0 00368CF0 38 00 00 01 */ li r0, 1
/* 8036BDB4 00368CF4 FC 23 00 28 */ fsub f1, f3, f0
/* 8036BDB8 00368CF8 FC 00 18 2A */ fadd f0, f0, f3
/* 8036BDBC 00368CFC FC 01 00 24 */ fdiv f0, f1, f0
/* 8036BDC0 00368D00 D8 01 00 08 */ stfd f0, 8(r1)
/* 8036BDC4 00368D04 48 00 00 44 */ b lbl_8036BE08
lbl_8036BDC8:
/* 8036BDC8 00368D08 3C 60 40 04 */ lis r3, 0x40038000@ha
/* 8036BDCC 00368D0C 38 03 80 00 */ addi r0, r3, 0x40038000@l
/* 8036BDD0 00368D10 7C 04 00 00 */ cmpw r4, r0
/* 8036BDD4 00368D14 40 80 00 24 */ bge lbl_8036BDF8
/* 8036BDD8 00368D18 C8 42 D0 D0 */ lfd f2, lbl_80456AD0-_SDA2_BASE_(r2)
/* 8036BDDC 00368D1C 38 00 00 02 */ li r0, 2
/* 8036BDE0 00368D20 C8 02 D0 C0 */ lfd f0, lbl_80456AC0-_SDA2_BASE_(r2)
/* 8036BDE4 00368D24 FC 23 10 28 */ fsub f1, f3, f2
/* 8036BDE8 00368D28 FC 02 00 FA */ fmadd f0, f2, f3, f0
/* 8036BDEC 00368D2C FC 01 00 24 */ fdiv f0, f1, f0
/* 8036BDF0 00368D30 D8 01 00 08 */ stfd f0, 8(r1)
/* 8036BDF4 00368D34 48 00 00 14 */ b lbl_8036BE08
lbl_8036BDF8:
/* 8036BDF8 00368D38 C8 02 D0 D8 */ lfd f0, lbl_80456AD8-_SDA2_BASE_(r2)
/* 8036BDFC 00368D3C 38 00 00 03 */ li r0, 3
/* 8036BE00 00368D40 FC 00 18 24 */ fdiv f0, f0, f3
/* 8036BE04 00368D44 D8 01 00 08 */ stfd f0, 8(r1)
lbl_8036BE08:
/* 8036BE08 00368D48 C9 21 00 08 */ lfd f9, 8(r1)
/* 8036BE0C 00368D4C 38 65 00 40 */ addi r3, r5, 0x40
/* 8036BE10 00368D50 C8 83 00 50 */ lfd f4, 0x50(r3)
/* 8036BE14 00368D54 2C 00 00 00 */ cmpwi r0, 0
/* 8036BE18 00368D58 FD 69 02 72 */ fmul f11, f9, f9
/* 8036BE1C 00368D5C C8 23 00 40 */ lfd f1, 0x40(r3)
/* 8036BE20 00368D60 C8 E3 00 30 */ lfd f7, 0x30(r3)
/* 8036BE24 00368D64 C8 63 00 48 */ lfd f3, 0x48(r3)
/* 8036BE28 00368D68 C8 03 00 38 */ lfd f0, 0x38(r3)
/* 8036BE2C 00368D6C FD 4B 02 F2 */ fmul f10, f11, f11
/* 8036BE30 00368D70 C8 C3 00 20 */ lfd f6, 0x20(r3)
/* 8036BE34 00368D74 C8 43 00 28 */ lfd f2, 0x28(r3)
/* 8036BE38 00368D78 C8 A3 00 10 */ lfd f5, 0x10(r3)
/* 8036BE3C 00368D7C FD 0A 09 3A */ fmadd f8, f10, f4, f1
/* 8036BE40 00368D80 C8 23 00 18 */ lfd f1, 0x18(r3)
/* 8036BE44 00368D84 C8 85 00 40 */ lfd f4, 0x40(r5)
/* 8036BE48 00368D88 FC 6A 00 FA */ fmadd f3, f10, f3, f0
/* 8036BE4C 00368D8C C8 03 00 08 */ lfd f0, 8(r3)
/* 8036BE50 00368D90 FC EA 3A 3A */ fmadd f7, f10, f8, f7
/* 8036BE54 00368D94 FC 4A 10 FA */ fmadd f2, f10, f3, f2
/* 8036BE58 00368D98 FC 6A 31 FA */ fmadd f3, f10, f7, f6
/* 8036BE5C 00368D9C FC 2A 08 BA */ fmadd f1, f10, f2, f1
/* 8036BE60 00368DA0 FC 4A 28 FA */ fmadd f2, f10, f3, f5
/* 8036BE64 00368DA4 FC 0A 00 7A */ fmadd f0, f10, f1, f0
/* 8036BE68 00368DA8 FC 2A 20 BA */ fmadd f1, f10, f2, f4
/* 8036BE6C 00368DAC FC 4A 00 32 */ fmul f2, f10, f0
/* 8036BE70 00368DB0 FC 0B 00 72 */ fmul f0, f11, f1
/* 8036BE74 00368DB4 40 80 00 10 */ bge lbl_8036BE84
/* 8036BE78 00368DB8 FC 00 10 2A */ fadd f0, f0, f2
/* 8036BE7C 00368DBC FC 29 48 3C */ fnmsub f1, f9, f0, f9
/* 8036BE80 00368DC0 48 00 00 34 */ b lbl_8036BEB4
lbl_8036BE84:
/* 8036BE84 00368DC4 54 00 18 38 */ slwi r0, r0, 3
/* 8036BE88 00368DC8 38 65 00 20 */ addi r3, r5, 0x20
/* 8036BE8C 00368DCC FC 20 10 2A */ fadd f1, f0, f2
/* 8036BE90 00368DD0 7C 03 04 AE */ lfdx f0, r3, r0
/* 8036BE94 00368DD4 38 65 00 00 */ addi r3, r5, 0
/* 8036BE98 00368DD8 2C 06 00 00 */ cmpwi r6, 0
/* 8036BE9C 00368DDC 7C 43 04 AE */ lfdx f2, r3, r0
/* 8036BEA0 00368DE0 FC 09 00 78 */ fmsub f0, f9, f1, f0
/* 8036BEA4 00368DE4 FC 00 48 28 */ fsub f0, f0, f9
/* 8036BEA8 00368DE8 FC 22 00 28 */ fsub f1, f2, f0
/* 8036BEAC 00368DEC 40 80 00 08 */ bge lbl_8036BEB4
/* 8036BEB0 00368DF0 FC 20 08 50 */ fneg f1, f1
lbl_8036BEB4:
/* 8036BEB4 00368DF4 38 21 00 10 */ addi r1, r1, 0x10
/* 8036BEB8 00368DF8 4E 80 00 20 */ blr
.global func_8036BEBC
func_8036BEBC:
/* 8036BEBC 00368DFC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036BEC0 00368E00 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036BEC4 00368E04 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036BEC8 00368E08 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8036BECC 00368E0C 54 A3 65 7E */ rlwinm r3, r5, 0xc, 0x15, 0x1f
/* 8036BED0 00368E10 38 E3 FC 01 */ addi r7, r3, -1023
/* 8036BED4 00368E14 2C 07 00 14 */ cmpwi r7, 0x14
/* 8036BED8 00368E18 40 80 00 94 */ bge lbl_8036BF6C
/* 8036BEDC 00368E1C 2C 07 00 00 */ cmpwi r7, 0
/* 8036BEE0 00368E20 40 80 00 40 */ bge lbl_8036BF20
/* 8036BEE4 00368E24 C8 42 D0 E0 */ lfd f2, lbl_80456AE0-_SDA2_BASE_(r2)
/* 8036BEE8 00368E28 C8 02 D0 E8 */ lfd f0, lbl_80456AE8-_SDA2_BASE_(r2)
/* 8036BEEC 00368E2C FC 22 08 2A */ fadd f1, f2, f1
/* 8036BEF0 00368E30 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036BEF4 00368E34 40 81 00 F8 */ ble lbl_8036BFEC
/* 8036BEF8 00368E38 2C 05 00 00 */ cmpwi r5, 0
/* 8036BEFC 00368E3C 40 80 00 10 */ bge lbl_8036BF0C
/* 8036BF00 00368E40 3C A0 80 00 */ lis r5, 0x8000
/* 8036BF04 00368E44 38 C0 00 00 */ li r6, 0
/* 8036BF08 00368E48 48 00 00 E4 */ b lbl_8036BFEC
lbl_8036BF0C:
/* 8036BF0C 00368E4C 7C A0 33 79 */ or. r0, r5, r6
/* 8036BF10 00368E50 41 82 00 DC */ beq lbl_8036BFEC
/* 8036BF14 00368E54 3C A0 3F F0 */ lis r5, 0x3ff0
/* 8036BF18 00368E58 38 C0 00 00 */ li r6, 0
/* 8036BF1C 00368E5C 48 00 00 D0 */ b lbl_8036BFEC
lbl_8036BF20:
/* 8036BF20 00368E60 3C 60 00 10 */ lis r3, 0x000FFFFF@ha
/* 8036BF24 00368E64 38 03 FF FF */ addi r0, r3, 0x000FFFFF@l
/* 8036BF28 00368E68 7C 04 3E 30 */ sraw r4, r0, r7
/* 8036BF2C 00368E6C 7C A0 20 38 */ and r0, r5, r4
/* 8036BF30 00368E70 7C C0 03 79 */ or. r0, r6, r0
/* 8036BF34 00368E74 40 82 00 08 */ bne lbl_8036BF3C
/* 8036BF38 00368E78 48 00 00 C0 */ b lbl_8036BFF8
lbl_8036BF3C:
/* 8036BF3C 00368E7C C8 42 D0 E0 */ lfd f2, lbl_80456AE0-_SDA2_BASE_(r2)
/* 8036BF40 00368E80 C8 02 D0 E8 */ lfd f0, lbl_80456AE8-_SDA2_BASE_(r2)
/* 8036BF44 00368E84 FC 22 08 2A */ fadd f1, f2, f1
/* 8036BF48 00368E88 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036BF4C 00368E8C 40 81 00 A0 */ ble lbl_8036BFEC
/* 8036BF50 00368E90 2C 05 00 00 */ cmpwi r5, 0
/* 8036BF54 00368E94 40 81 00 0C */ ble lbl_8036BF60
/* 8036BF58 00368E98 7C 60 3E 30 */ sraw r0, r3, r7
/* 8036BF5C 00368E9C 7C A5 02 14 */ add r5, r5, r0
lbl_8036BF60:
/* 8036BF60 00368EA0 7C A5 20 78 */ andc r5, r5, r4
/* 8036BF64 00368EA4 38 C0 00 00 */ li r6, 0
/* 8036BF68 00368EA8 48 00 00 84 */ b lbl_8036BFEC
lbl_8036BF6C:
/* 8036BF6C 00368EAC 2C 07 00 33 */ cmpwi r7, 0x33
/* 8036BF70 00368EB0 40 81 00 14 */ ble lbl_8036BF84
/* 8036BF74 00368EB4 2C 07 04 00 */ cmpwi r7, 0x400
/* 8036BF78 00368EB8 40 82 00 80 */ bne lbl_8036BFF8
/* 8036BF7C 00368EBC FC 21 08 2A */ fadd f1, f1, f1
/* 8036BF80 00368EC0 48 00 00 78 */ b lbl_8036BFF8
lbl_8036BF84:
/* 8036BF84 00368EC4 38 07 FF EC */ addi r0, r7, -20
/* 8036BF88 00368EC8 38 60 FF FF */ li r3, -1
/* 8036BF8C 00368ECC 7C 64 04 30 */ srw r4, r3, r0
/* 8036BF90 00368ED0 7C C0 20 39 */ and. r0, r6, r4
/* 8036BF94 00368ED4 40 82 00 08 */ bne lbl_8036BF9C
/* 8036BF98 00368ED8 48 00 00 60 */ b lbl_8036BFF8
lbl_8036BF9C:
/* 8036BF9C 00368EDC C8 42 D0 E0 */ lfd f2, lbl_80456AE0-_SDA2_BASE_(r2)
/* 8036BFA0 00368EE0 C8 02 D0 E8 */ lfd f0, lbl_80456AE8-_SDA2_BASE_(r2)
/* 8036BFA4 00368EE4 FC 22 08 2A */ fadd f1, f2, f1
/* 8036BFA8 00368EE8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036BFAC 00368EEC 40 81 00 40 */ ble lbl_8036BFEC
/* 8036BFB0 00368EF0 2C 05 00 00 */ cmpwi r5, 0
/* 8036BFB4 00368EF4 40 81 00 34 */ ble lbl_8036BFE8
/* 8036BFB8 00368EF8 2C 07 00 14 */ cmpwi r7, 0x14
/* 8036BFBC 00368EFC 40 82 00 0C */ bne lbl_8036BFC8
/* 8036BFC0 00368F00 38 A5 00 01 */ addi r5, r5, 1
/* 8036BFC4 00368F04 48 00 00 24 */ b lbl_8036BFE8
lbl_8036BFC8:
/* 8036BFC8 00368F08 20 07 00 34 */ subfic r0, r7, 0x34
/* 8036BFCC 00368F0C 38 60 00 01 */ li r3, 1
/* 8036BFD0 00368F10 7C 60 00 30 */ slw r0, r3, r0
/* 8036BFD4 00368F14 7C 06 02 14 */ add r0, r6, r0
/* 8036BFD8 00368F18 7C 00 30 40 */ cmplw r0, r6
/* 8036BFDC 00368F1C 40 80 00 08 */ bge lbl_8036BFE4
/* 8036BFE0 00368F20 38 A5 00 01 */ addi r5, r5, 1
lbl_8036BFE4:
/* 8036BFE4 00368F24 7C 06 03 78 */ mr r6, r0
lbl_8036BFE8:
/* 8036BFE8 00368F28 7C C6 20 78 */ andc r6, r6, r4
lbl_8036BFEC:
/* 8036BFEC 00368F2C 90 A1 00 08 */ stw r5, 8(r1)
/* 8036BFF0 00368F30 90 C1 00 0C */ stw r6, 0xc(r1)
/* 8036BFF4 00368F34 C8 21 00 08 */ lfd f1, 8(r1)
lbl_8036BFF8:
/* 8036BFF8 00368F38 38 21 00 10 */ addi r1, r1, 0x10
/* 8036BFFC 00368F3C 4E 80 00 20 */ blr
.global func_8036C000
func_8036C000:
/* 8036C000 00368F40 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036C004 00368F44 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C008 00368F48 D8 41 00 10 */ stfd f2, 0x10(r1)
/* 8036C00C 00368F4C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036C010 00368F50 80 01 00 10 */ lwz r0, 0x10(r1)
/* 8036C014 00368F54 50 60 00 7E */ rlwimi r0, r3, 0, 1, 0x1f
/* 8036C018 00368F58 90 01 00 08 */ stw r0, 8(r1)
/* 8036C01C 00368F5C C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C020 00368F60 38 21 00 20 */ addi r1, r1, 0x20
/* 8036C024 00368F64 4E 80 00 20 */ blr
.global func_8036C028
func_8036C028:
/* 8036C028 00368F68 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036C02C 00368F6C 7C 08 02 A6 */ mflr r0
/* 8036C030 00368F70 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha
/* 8036C034 00368F74 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C038 00368F78 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036C03C 00368F7C 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l
/* 8036C040 00368F80 80 61 00 08 */ lwz r3, 8(r1)
/* 8036C044 00368F84 54 63 00 7E */ clrlwi r3, r3, 1
/* 8036C048 00368F88 7C 03 00 00 */ cmpw r3, r0
/* 8036C04C 00368F8C 41 81 00 10 */ bgt lbl_8036C05C
/* 8036C050 00368F90 C8 42 D0 F0 */ lfd f2, lbl_80456AF0-_SDA2_BASE_(r2)
/* 8036C054 00368F94 4B FF EA 55 */ bl func_8036AAA8
/* 8036C058 00368F98 48 00 00 94 */ b lbl_8036C0EC
lbl_8036C05C:
/* 8036C05C 00368F9C 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036C060 00368FA0 7C 03 00 00 */ cmpw r3, r0
/* 8036C064 00368FA4 41 80 00 0C */ blt lbl_8036C070
/* 8036C068 00368FA8 FC 21 08 28 */ fsub f1, f1, f1
/* 8036C06C 00368FAC 48 00 00 80 */ b lbl_8036C0EC
lbl_8036C070:
/* 8036C070 00368FB0 38 61 00 10 */ addi r3, r1, 0x10
/* 8036C074 00368FB4 4B FF E6 95 */ bl func_8036A708
/* 8036C078 00368FB8 54 60 07 BE */ clrlwi r0, r3, 0x1e
/* 8036C07C 00368FBC 2C 00 00 01 */ cmpwi r0, 1
/* 8036C080 00368FC0 41 82 00 30 */ beq lbl_8036C0B0
/* 8036C084 00368FC4 40 80 00 10 */ bge lbl_8036C094
/* 8036C088 00368FC8 2C 00 00 00 */ cmpwi r0, 0
/* 8036C08C 00368FCC 40 80 00 14 */ bge lbl_8036C0A0
/* 8036C090 00368FD0 48 00 00 4C */ b lbl_8036C0DC
lbl_8036C094:
/* 8036C094 00368FD4 2C 00 00 03 */ cmpwi r0, 3
/* 8036C098 00368FD8 40 80 00 44 */ bge lbl_8036C0DC
/* 8036C09C 00368FDC 48 00 00 2C */ b lbl_8036C0C8
lbl_8036C0A0:
/* 8036C0A0 00368FE0 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C0A4 00368FE4 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C0A8 00368FE8 4B FF EA 01 */ bl func_8036AAA8
/* 8036C0AC 00368FEC 48 00 00 40 */ b lbl_8036C0EC
lbl_8036C0B0:
/* 8036C0B0 00368FF0 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C0B4 00368FF4 38 60 00 01 */ li r3, 1
/* 8036C0B8 00368FF8 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C0BC 00368FFC 4B FF F9 35 */ bl func_8036B9F0
/* 8036C0C0 00369000 FC 20 08 50 */ fneg f1, f1
/* 8036C0C4 00369004 48 00 00 28 */ b lbl_8036C0EC
lbl_8036C0C8:
/* 8036C0C8 00369008 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C0CC 0036900C C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C0D0 00369010 4B FF E9 D9 */ bl func_8036AAA8
/* 8036C0D4 00369014 FC 20 08 50 */ fneg f1, f1
/* 8036C0D8 00369018 48 00 00 14 */ b lbl_8036C0EC
lbl_8036C0DC:
/* 8036C0DC 0036901C C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C0E0 00369020 38 60 00 01 */ li r3, 1
/* 8036C0E4 00369024 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C0E8 00369028 4B FF F9 09 */ bl func_8036B9F0
lbl_8036C0EC:
/* 8036C0EC 0036902C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036C0F0 00369030 7C 08 03 A6 */ mtlr r0
/* 8036C0F4 00369034 38 21 00 20 */ addi r1, r1, 0x20
/* 8036C0F8 00369038 4E 80 00 20 */ blr
.global func_8036C0FC
func_8036C0FC:
/* 8036C0FC 0036903C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C100 00369040 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C104 00369044 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036C108 00369048 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8036C10C 0036904C 54 A3 65 7E */ rlwinm r3, r5, 0xc, 0x15, 0x1f
/* 8036C110 00369050 38 E3 FC 01 */ addi r7, r3, -1023
/* 8036C114 00369054 2C 07 00 14 */ cmpwi r7, 0x14
/* 8036C118 00369058 40 80 00 98 */ bge lbl_8036C1B0
/* 8036C11C 0036905C 2C 07 00 00 */ cmpwi r7, 0
/* 8036C120 00369060 40 80 00 44 */ bge lbl_8036C164
/* 8036C124 00369064 C8 42 D0 F8 */ lfd f2, lbl_80456AF8-_SDA2_BASE_(r2)
/* 8036C128 00369068 C8 02 D1 00 */ lfd f0, lbl_80456B00-_SDA2_BASE_(r2)
/* 8036C12C 0036906C FC 22 08 2A */ fadd f1, f2, f1
/* 8036C130 00369070 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036C134 00369074 40 81 00 FC */ ble lbl_8036C230
/* 8036C138 00369078 2C 05 00 00 */ cmpwi r5, 0
/* 8036C13C 0036907C 41 80 00 10 */ blt lbl_8036C14C
/* 8036C140 00369080 38 C0 00 00 */ li r6, 0
/* 8036C144 00369084 38 A0 00 00 */ li r5, 0
/* 8036C148 00369088 48 00 00 E8 */ b lbl_8036C230
lbl_8036C14C:
/* 8036C14C 0036908C 54 A0 00 7E */ clrlwi r0, r5, 1
/* 8036C150 00369090 7C 00 33 79 */ or. r0, r0, r6
/* 8036C154 00369094 41 82 00 DC */ beq lbl_8036C230
/* 8036C158 00369098 3C A0 BF F0 */ lis r5, 0xbff0
/* 8036C15C 0036909C 38 C0 00 00 */ li r6, 0
/* 8036C160 003690A0 48 00 00 D0 */ b lbl_8036C230
lbl_8036C164:
/* 8036C164 003690A4 3C 60 00 10 */ lis r3, 0x000FFFFF@ha
/* 8036C168 003690A8 38 03 FF FF */ addi r0, r3, 0x000FFFFF@l
/* 8036C16C 003690AC 7C 04 3E 30 */ sraw r4, r0, r7
/* 8036C170 003690B0 7C A0 20 38 */ and r0, r5, r4
/* 8036C174 003690B4 7C C0 03 79 */ or. r0, r6, r0
/* 8036C178 003690B8 40 82 00 08 */ bne lbl_8036C180
/* 8036C17C 003690BC 48 00 00 C0 */ b lbl_8036C23C
lbl_8036C180:
/* 8036C180 003690C0 C8 42 D0 F8 */ lfd f2, lbl_80456AF8-_SDA2_BASE_(r2)
/* 8036C184 003690C4 C8 02 D1 00 */ lfd f0, lbl_80456B00-_SDA2_BASE_(r2)
/* 8036C188 003690C8 FC 22 08 2A */ fadd f1, f2, f1
/* 8036C18C 003690CC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036C190 003690D0 40 81 00 A0 */ ble lbl_8036C230
/* 8036C194 003690D4 2C 05 00 00 */ cmpwi r5, 0
/* 8036C198 003690D8 40 80 00 0C */ bge lbl_8036C1A4
/* 8036C19C 003690DC 7C 60 3E 30 */ sraw r0, r3, r7
/* 8036C1A0 003690E0 7C A5 02 14 */ add r5, r5, r0
lbl_8036C1A4:
/* 8036C1A4 003690E4 7C A5 20 78 */ andc r5, r5, r4
/* 8036C1A8 003690E8 38 C0 00 00 */ li r6, 0
/* 8036C1AC 003690EC 48 00 00 84 */ b lbl_8036C230
lbl_8036C1B0:
/* 8036C1B0 003690F0 2C 07 00 33 */ cmpwi r7, 0x33
/* 8036C1B4 003690F4 40 81 00 14 */ ble lbl_8036C1C8
/* 8036C1B8 003690F8 2C 07 04 00 */ cmpwi r7, 0x400
/* 8036C1BC 003690FC 40 82 00 80 */ bne lbl_8036C23C
/* 8036C1C0 00369100 FC 21 08 2A */ fadd f1, f1, f1
/* 8036C1C4 00369104 48 00 00 78 */ b lbl_8036C23C
lbl_8036C1C8:
/* 8036C1C8 00369108 38 07 FF EC */ addi r0, r7, -20
/* 8036C1CC 0036910C 38 60 FF FF */ li r3, -1
/* 8036C1D0 00369110 7C 64 04 30 */ srw r4, r3, r0
/* 8036C1D4 00369114 7C C0 20 39 */ and. r0, r6, r4
/* 8036C1D8 00369118 40 82 00 08 */ bne lbl_8036C1E0
/* 8036C1DC 0036911C 48 00 00 60 */ b lbl_8036C23C
lbl_8036C1E0:
/* 8036C1E0 00369120 C8 42 D0 F8 */ lfd f2, lbl_80456AF8-_SDA2_BASE_(r2)
/* 8036C1E4 00369124 C8 02 D1 00 */ lfd f0, lbl_80456B00-_SDA2_BASE_(r2)
/* 8036C1E8 00369128 FC 22 08 2A */ fadd f1, f2, f1
/* 8036C1EC 0036912C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8036C1F0 00369130 40 81 00 40 */ ble lbl_8036C230
/* 8036C1F4 00369134 2C 05 00 00 */ cmpwi r5, 0
/* 8036C1F8 00369138 40 80 00 34 */ bge lbl_8036C22C
/* 8036C1FC 0036913C 2C 07 00 14 */ cmpwi r7, 0x14
/* 8036C200 00369140 40 82 00 0C */ bne lbl_8036C20C
/* 8036C204 00369144 38 A5 00 01 */ addi r5, r5, 1
/* 8036C208 00369148 48 00 00 24 */ b lbl_8036C22C
lbl_8036C20C:
/* 8036C20C 0036914C 20 07 00 34 */ subfic r0, r7, 0x34
/* 8036C210 00369150 38 60 00 01 */ li r3, 1
/* 8036C214 00369154 7C 60 00 30 */ slw r0, r3, r0
/* 8036C218 00369158 7C 06 02 14 */ add r0, r6, r0
/* 8036C21C 0036915C 7C 00 30 40 */ cmplw r0, r6
/* 8036C220 00369160 40 80 00 08 */ bge lbl_8036C228
/* 8036C224 00369164 38 A5 00 01 */ addi r5, r5, 1
lbl_8036C228:
/* 8036C228 00369168 7C 06 03 78 */ mr r6, r0
lbl_8036C22C:
/* 8036C22C 0036916C 7C C6 20 78 */ andc r6, r6, r4
lbl_8036C230:
/* 8036C230 00369170 90 A1 00 08 */ stw r5, 8(r1)
/* 8036C234 00369174 90 C1 00 0C */ stw r6, 0xc(r1)
/* 8036C238 00369178 C8 21 00 08 */ lfd f1, 8(r1)
lbl_8036C23C:
/* 8036C23C 0036917C 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C240 00369180 4E 80 00 20 */ blr
.global func_8036C244
func_8036C244:
/* 8036C244 00369184 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C248 00369188 38 80 00 00 */ li r4, 0
/* 8036C24C 0036918C 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036C250 00369190 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C254 00369194 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036C258 00369198 90 83 00 00 */ stw r4, 0(r3)
/* 8036C25C 0036919C 54 A4 00 7E */ clrlwi r4, r5, 1
/* 8036C260 003691A0 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8036C264 003691A4 7C 04 00 00 */ cmpw r4, r0
/* 8036C268 003691A8 40 80 00 0C */ bge lbl_8036C274
/* 8036C26C 003691AC 7C 80 33 79 */ or. r0, r4, r6
/* 8036C270 003691B0 40 82 00 0C */ bne lbl_8036C27C
lbl_8036C274:
/* 8036C274 003691B4 C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C278 003691B8 48 00 00 50 */ b lbl_8036C2C8
lbl_8036C27C:
/* 8036C27C 003691BC 3C 00 00 10 */ lis r0, 0x10
/* 8036C280 003691C0 7C 04 00 00 */ cmpw r4, r0
/* 8036C284 003691C4 40 80 00 20 */ bge lbl_8036C2A4
/* 8036C288 003691C8 C8 02 D1 08 */ lfd f0, lbl_80456B08-_SDA2_BASE_(r2)
/* 8036C28C 003691CC 38 00 FF CA */ li r0, -54
/* 8036C290 003691D0 90 03 00 00 */ stw r0, 0(r3)
/* 8036C294 003691D4 FC 01 00 32 */ fmul f0, f1, f0
/* 8036C298 003691D8 D8 01 00 08 */ stfd f0, 8(r1)
/* 8036C29C 003691DC 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036C2A0 003691E0 54 A4 00 7E */ clrlwi r4, r5, 1
lbl_8036C2A4:
/* 8036C2A4 003691E4 54 A0 03 00 */ rlwinm r0, r5, 0, 0xc, 0
/* 8036C2A8 003691E8 80 A3 00 00 */ lwz r5, 0(r3)
/* 8036C2AC 003691EC 7C 84 A6 70 */ srawi r4, r4, 0x14
/* 8036C2B0 003691F0 64 00 3F E0 */ oris r0, r0, 0x3fe0
/* 8036C2B4 003691F4 90 01 00 08 */ stw r0, 8(r1)
/* 8036C2B8 003691F8 7C 84 2A 14 */ add r4, r4, r5
/* 8036C2BC 003691FC 38 04 FC 02 */ addi r0, r4, -1022
/* 8036C2C0 00369200 90 03 00 00 */ stw r0, 0(r3)
/* 8036C2C4 00369204 C8 21 00 08 */ lfd f1, 8(r1)
lbl_8036C2C8:
/* 8036C2C8 00369208 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C2CC 0036920C 4E 80 00 20 */ blr
.global func_8036C2D0
func_8036C2D0:
/* 8036C2D0 00369210 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036C2D4 00369214 7C 08 02 A6 */ mflr r0
/* 8036C2D8 00369218 D8 21 00 10 */ stfd f1, 0x10(r1)
/* 8036C2DC 0036921C 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 8036C2E0 00369220 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036C2E4 00369224 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036C2E8 00369228 54 A4 00 56 */ rlwinm r4, r5, 0, 1, 0xb
/* 8036C2EC 0036922C 7C 04 00 00 */ cmpw r4, r0
/* 8036C2F0 00369230 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C2F4 00369234 41 82 00 14 */ beq lbl_8036C308
/* 8036C2F8 00369238 40 80 00 58 */ bge lbl_8036C350
/* 8036C2FC 0036923C 2C 04 00 00 */ cmpwi r4, 0
/* 8036C300 00369240 41 82 00 2C */ beq lbl_8036C32C
/* 8036C304 00369244 48 00 00 4C */ b lbl_8036C350
lbl_8036C308:
/* 8036C308 00369248 54 A0 03 3F */ clrlwi. r0, r5, 0xc
/* 8036C30C 0036924C 40 82 00 10 */ bne lbl_8036C31C
/* 8036C310 00369250 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C314 00369254 2C 00 00 00 */ cmpwi r0, 0
/* 8036C318 00369258 41 82 00 0C */ beq lbl_8036C324
lbl_8036C31C:
/* 8036C31C 0036925C 38 00 00 01 */ li r0, 1
/* 8036C320 00369260 48 00 00 34 */ b lbl_8036C354
lbl_8036C324:
/* 8036C324 00369264 38 00 00 02 */ li r0, 2
/* 8036C328 00369268 48 00 00 2C */ b lbl_8036C354
lbl_8036C32C:
/* 8036C32C 0036926C 54 A0 03 3F */ clrlwi. r0, r5, 0xc
/* 8036C330 00369270 40 82 00 10 */ bne lbl_8036C340
/* 8036C334 00369274 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C338 00369278 2C 00 00 00 */ cmpwi r0, 0
/* 8036C33C 0036927C 41 82 00 0C */ beq lbl_8036C348
lbl_8036C340:
/* 8036C340 00369280 38 00 00 05 */ li r0, 5
/* 8036C344 00369284 48 00 00 10 */ b lbl_8036C354
lbl_8036C348:
/* 8036C348 00369288 38 00 00 03 */ li r0, 3
/* 8036C34C 0036928C 48 00 00 08 */ b lbl_8036C354
lbl_8036C350:
/* 8036C350 00369290 38 00 00 04 */ li r0, 4
lbl_8036C354:
/* 8036C354 00369294 2C 00 00 02 */ cmpwi r0, 2
/* 8036C358 00369298 40 81 01 2C */ ble lbl_8036C484
/* 8036C35C 0036929C C8 02 D1 10 */ lfd f0, lbl_80456B10-_SDA2_BASE_(r2)
/* 8036C360 003692A0 FC 00 08 00 */ fcmpu cr0, f0, f1
/* 8036C364 003692A4 40 82 00 08 */ bne lbl_8036C36C
/* 8036C368 003692A8 48 00 01 1C */ b lbl_8036C484
lbl_8036C36C:
/* 8036C36C 003692AC 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036C370 003692B0 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8036C374 003692B4 54 A4 65 7F */ rlwinm. r4, r5, 0xc, 0x15, 0x1f
/* 8036C378 003692B8 40 82 00 4C */ bne lbl_8036C3C4
/* 8036C37C 003692BC 54 A0 00 7E */ clrlwi r0, r5, 1
/* 8036C380 003692C0 7C C0 03 79 */ or. r0, r6, r0
/* 8036C384 003692C4 40 82 00 08 */ bne lbl_8036C38C
/* 8036C388 003692C8 48 00 00 FC */ b lbl_8036C484
lbl_8036C38C:
/* 8036C38C 003692CC C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C390 003692D0 3C 80 FF FF */ lis r4, 0xFFFF3CB0@ha
/* 8036C394 003692D4 C8 02 D1 18 */ lfd f0, lbl_80456B18-_SDA2_BASE_(r2)
/* 8036C398 003692D8 38 04 3C B0 */ addi r0, r4, 0xFFFF3CB0@l
/* 8036C39C 003692DC 7C 03 00 00 */ cmpw r3, r0
/* 8036C3A0 003692E0 FC 21 00 32 */ fmul f1, f1, f0
/* 8036C3A4 003692E4 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C3A8 003692E8 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036C3AC 003692EC 54 A4 65 7E */ rlwinm r4, r5, 0xc, 0x15, 0x1f
/* 8036C3B0 003692F0 38 84 FF CA */ addi r4, r4, -54
/* 8036C3B4 003692F4 40 80 00 10 */ bge lbl_8036C3C4
/* 8036C3B8 003692F8 C8 02 D1 20 */ lfd f0, lbl_80456B20-_SDA2_BASE_(r2)
/* 8036C3BC 003692FC FC 20 00 72 */ fmul f1, f0, f1
/* 8036C3C0 00369300 48 00 00 C4 */ b lbl_8036C484
lbl_8036C3C4:
/* 8036C3C4 00369304 2C 04 07 FF */ cmpwi r4, 0x7ff
/* 8036C3C8 00369308 40 82 00 10 */ bne lbl_8036C3D8
/* 8036C3CC 0036930C C8 01 00 08 */ lfd f0, 8(r1)
/* 8036C3D0 00369310 FC 20 00 2A */ fadd f1, f0, f0
/* 8036C3D4 00369314 48 00 00 B0 */ b lbl_8036C484
lbl_8036C3D8:
/* 8036C3D8 00369318 7C 84 1A 14 */ add r4, r4, r3
/* 8036C3DC 0036931C 2C 04 07 FE */ cmpwi r4, 0x7fe
/* 8036C3E0 00369320 40 81 00 1C */ ble lbl_8036C3FC
/* 8036C3E4 00369324 C8 22 D1 28 */ lfd f1, lbl_80456B28-_SDA2_BASE_(r2)
/* 8036C3E8 00369328 C8 41 00 08 */ lfd f2, 8(r1)
/* 8036C3EC 0036932C 4B FF FC 15 */ bl func_8036C000
/* 8036C3F0 00369330 C8 02 D1 28 */ lfd f0, lbl_80456B28-_SDA2_BASE_(r2)
/* 8036C3F4 00369334 FC 20 00 72 */ fmul f1, f0, f1
/* 8036C3F8 00369338 48 00 00 8C */ b lbl_8036C484
lbl_8036C3FC:
/* 8036C3FC 0036933C 2C 04 00 00 */ cmpwi r4, 0
/* 8036C400 00369340 40 81 00 1C */ ble lbl_8036C41C
/* 8036C404 00369344 54 A3 03 00 */ rlwinm r3, r5, 0, 0xc, 0
/* 8036C408 00369348 54 80 A0 16 */ slwi r0, r4, 0x14
/* 8036C40C 0036934C 7C 60 03 78 */ or r0, r3, r0
/* 8036C410 00369350 90 01 00 08 */ stw r0, 8(r1)
/* 8036C414 00369354 C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C418 00369358 48 00 00 6C */ b lbl_8036C484
lbl_8036C41C:
/* 8036C41C 0036935C 2C 04 FF CA */ cmpwi r4, -54
/* 8036C420 00369360 41 81 00 44 */ bgt lbl_8036C464
/* 8036C424 00369364 3C 80 00 01 */ lis r4, 0x0000C350@ha
/* 8036C428 00369368 38 04 C3 50 */ addi r0, r4, 0x0000C350@l
/* 8036C42C 0036936C 7C 03 00 00 */ cmpw r3, r0
/* 8036C430 00369370 40 81 00 1C */ ble lbl_8036C44C
/* 8036C434 00369374 C8 22 D1 28 */ lfd f1, lbl_80456B28-_SDA2_BASE_(r2)
/* 8036C438 00369378 C8 41 00 08 */ lfd f2, 8(r1)
/* 8036C43C 0036937C 4B FF FB C5 */ bl func_8036C000
/* 8036C440 00369380 C8 02 D1 28 */ lfd f0, lbl_80456B28-_SDA2_BASE_(r2)
/* 8036C444 00369384 FC 20 00 72 */ fmul f1, f0, f1
/* 8036C448 00369388 48 00 00 3C */ b lbl_8036C484
lbl_8036C44C:
/* 8036C44C 0036938C C8 22 D1 20 */ lfd f1, lbl_80456B20-_SDA2_BASE_(r2)
/* 8036C450 00369390 C8 41 00 08 */ lfd f2, 8(r1)
/* 8036C454 00369394 4B FF FB AD */ bl func_8036C000
/* 8036C458 00369398 C8 02 D1 20 */ lfd f0, lbl_80456B20-_SDA2_BASE_(r2)
/* 8036C45C 0036939C FC 20 00 72 */ fmul f1, f0, f1
/* 8036C460 003693A0 48 00 00 24 */ b lbl_8036C484
lbl_8036C464:
/* 8036C464 003693A4 38 04 00 36 */ addi r0, r4, 0x36
/* 8036C468 003693A8 54 A3 03 00 */ rlwinm r3, r5, 0, 0xc, 0
/* 8036C46C 003693AC 54 00 A0 16 */ slwi r0, r0, 0x14
/* 8036C470 003693B0 C8 22 D1 30 */ lfd f1, lbl_80456B30-_SDA2_BASE_(r2)
/* 8036C474 003693B4 7C 60 03 78 */ or r0, r3, r0
/* 8036C478 003693B8 90 01 00 08 */ stw r0, 8(r1)
/* 8036C47C 003693BC C8 01 00 08 */ lfd f0, 8(r1)
/* 8036C480 003693C0 FC 21 00 32 */ fmul f1, f1, f0
lbl_8036C484:
/* 8036C484 003693C4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036C488 003693C8 7C 08 03 A6 */ mtlr r0
/* 8036C48C 003693CC 38 21 00 20 */ addi r1, r1, 0x20
/* 8036C490 003693D0 4E 80 00 20 */ blr
.global func_8036C494
func_8036C494:
/* 8036C494 003693D4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C498 003693D8 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C49C 003693DC 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036C4A0 003693E0 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8036C4A4 003693E4 54 A4 65 7E */ rlwinm r4, r5, 0xc, 0x15, 0x1f
/* 8036C4A8 003693E8 38 E4 FC 01 */ addi r7, r4, -1023
/* 8036C4AC 003693EC 2C 07 00 14 */ cmpwi r7, 0x14
/* 8036C4B0 003693F0 40 80 00 70 */ bge lbl_8036C520
/* 8036C4B4 003693F4 2C 07 00 00 */ cmpwi r7, 0
/* 8036C4B8 003693F8 40 80 00 18 */ bge lbl_8036C4D0
/* 8036C4BC 003693FC 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
/* 8036C4C0 00369400 38 00 00 00 */ li r0, 0
/* 8036C4C4 00369404 90 83 00 00 */ stw r4, 0(r3)
/* 8036C4C8 00369408 90 03 00 04 */ stw r0, 4(r3)
/* 8036C4CC 0036940C 48 00 00 BC */ b lbl_8036C588
lbl_8036C4D0:
/* 8036C4D0 00369410 3C 80 00 10 */ lis r4, 0x000FFFFF@ha
/* 8036C4D4 00369414 38 04 FF FF */ addi r0, r4, 0x000FFFFF@l
/* 8036C4D8 00369418 7C 04 3E 30 */ sraw r4, r0, r7
/* 8036C4DC 0036941C 7C A0 20 38 */ and r0, r5, r4
/* 8036C4E0 00369420 7C C0 03 79 */ or. r0, r6, r0
/* 8036C4E4 00369424 40 82 00 20 */ bne lbl_8036C504
/* 8036C4E8 00369428 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
/* 8036C4EC 0036942C 38 00 00 00 */ li r0, 0
/* 8036C4F0 00369430 90 81 00 08 */ stw r4, 8(r1)
/* 8036C4F4 00369434 90 01 00 0C */ stw r0, 0xc(r1)
/* 8036C4F8 00369438 D8 23 00 00 */ stfd f1, 0(r3)
/* 8036C4FC 0036943C C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C500 00369440 48 00 00 88 */ b lbl_8036C588
lbl_8036C504:
/* 8036C504 00369444 7C A4 20 78 */ andc r4, r5, r4
/* 8036C508 00369448 38 00 00 00 */ li r0, 0
/* 8036C50C 0036944C 90 83 00 00 */ stw r4, 0(r3)
/* 8036C510 00369450 90 03 00 04 */ stw r0, 4(r3)
/* 8036C514 00369454 C8 03 00 00 */ lfd f0, 0(r3)
/* 8036C518 00369458 FC 21 00 28 */ fsub f1, f1, f0
/* 8036C51C 0036945C 48 00 00 6C */ b lbl_8036C588
lbl_8036C520:
/* 8036C520 00369460 2C 07 00 33 */ cmpwi r7, 0x33
/* 8036C524 00369464 40 81 00 20 */ ble lbl_8036C544
/* 8036C528 00369468 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
/* 8036C52C 0036946C 38 00 00 00 */ li r0, 0
/* 8036C530 00369470 90 81 00 08 */ stw r4, 8(r1)
/* 8036C534 00369474 90 01 00 0C */ stw r0, 0xc(r1)
/* 8036C538 00369478 D8 23 00 00 */ stfd f1, 0(r3)
/* 8036C53C 0036947C C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C540 00369480 48 00 00 48 */ b lbl_8036C588
lbl_8036C544:
/* 8036C544 00369484 38 07 FF EC */ addi r0, r7, -20
/* 8036C548 00369488 38 80 FF FF */ li r4, -1
/* 8036C54C 0036948C 7C 84 04 30 */ srw r4, r4, r0
/* 8036C550 00369490 7C C0 20 39 */ and. r0, r6, r4
/* 8036C554 00369494 40 82 00 20 */ bne lbl_8036C574
/* 8036C558 00369498 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
/* 8036C55C 0036949C 38 00 00 00 */ li r0, 0
/* 8036C560 003694A0 90 81 00 08 */ stw r4, 8(r1)
/* 8036C564 003694A4 90 01 00 0C */ stw r0, 0xc(r1)
/* 8036C568 003694A8 D8 23 00 00 */ stfd f1, 0(r3)
/* 8036C56C 003694AC C8 21 00 08 */ lfd f1, 8(r1)
/* 8036C570 003694B0 48 00 00 18 */ b lbl_8036C588
lbl_8036C574:
/* 8036C574 003694B4 90 A3 00 00 */ stw r5, 0(r3)
/* 8036C578 003694B8 7C C0 20 78 */ andc r0, r6, r4
/* 8036C57C 003694BC 90 03 00 04 */ stw r0, 4(r3)
/* 8036C580 003694C0 C8 03 00 00 */ lfd f0, 0(r3)
/* 8036C584 003694C4 FC 21 00 28 */ fsub f1, f1, f0
lbl_8036C588:
/* 8036C588 003694C8 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C58C 003694CC 4E 80 00 20 */ blr
.global func_8036C590
func_8036C590:
/* 8036C590 003694D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036C594 003694D4 7C 08 02 A6 */ mflr r0
/* 8036C598 003694D8 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha
/* 8036C59C 003694DC D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C5A0 003694E0 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036C5A4 003694E4 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l
/* 8036C5A8 003694E8 80 61 00 08 */ lwz r3, 8(r1)
/* 8036C5AC 003694EC 54 63 00 7E */ clrlwi r3, r3, 1
/* 8036C5B0 003694F0 7C 03 00 00 */ cmpw r3, r0
/* 8036C5B4 003694F4 41 81 00 14 */ bgt lbl_8036C5C8
/* 8036C5B8 003694F8 C8 42 D1 38 */ lfd f2, lbl_80456B38-_SDA2_BASE_(r2)
/* 8036C5BC 003694FC 38 60 00 00 */ li r3, 0
/* 8036C5C0 00369500 4B FF F4 31 */ bl func_8036B9F0
/* 8036C5C4 00369504 48 00 00 94 */ b lbl_8036C658
lbl_8036C5C8:
/* 8036C5C8 00369508 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036C5CC 0036950C 7C 03 00 00 */ cmpw r3, r0
/* 8036C5D0 00369510 41 80 00 0C */ blt lbl_8036C5DC
/* 8036C5D4 00369514 FC 21 08 28 */ fsub f1, f1, f1
/* 8036C5D8 00369518 48 00 00 80 */ b lbl_8036C658
lbl_8036C5DC:
/* 8036C5DC 0036951C 38 61 00 10 */ addi r3, r1, 0x10
/* 8036C5E0 00369520 4B FF E1 29 */ bl func_8036A708
/* 8036C5E4 00369524 54 60 07 BE */ clrlwi r0, r3, 0x1e
/* 8036C5E8 00369528 2C 00 00 01 */ cmpwi r0, 1
/* 8036C5EC 0036952C 41 82 00 34 */ beq lbl_8036C620
/* 8036C5F0 00369530 40 80 00 10 */ bge lbl_8036C600
/* 8036C5F4 00369534 2C 00 00 00 */ cmpwi r0, 0
/* 8036C5F8 00369538 40 80 00 14 */ bge lbl_8036C60C
/* 8036C5FC 0036953C 48 00 00 4C */ b lbl_8036C648
lbl_8036C600:
/* 8036C600 00369540 2C 00 00 03 */ cmpwi r0, 3
/* 8036C604 00369544 40 80 00 44 */ bge lbl_8036C648
/* 8036C608 00369548 48 00 00 28 */ b lbl_8036C630
lbl_8036C60C:
/* 8036C60C 0036954C C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C610 00369550 38 60 00 01 */ li r3, 1
/* 8036C614 00369554 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C618 00369558 4B FF F3 D9 */ bl func_8036B9F0
/* 8036C61C 0036955C 48 00 00 3C */ b lbl_8036C658
lbl_8036C620:
/* 8036C620 00369560 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C624 00369564 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C628 00369568 4B FF E4 81 */ bl func_8036AAA8
/* 8036C62C 0036956C 48 00 00 2C */ b lbl_8036C658
lbl_8036C630:
/* 8036C630 00369570 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C634 00369574 38 60 00 01 */ li r3, 1
/* 8036C638 00369578 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C63C 0036957C 4B FF F3 B5 */ bl func_8036B9F0
/* 8036C640 00369580 FC 20 08 50 */ fneg f1, f1
/* 8036C644 00369584 48 00 00 14 */ b lbl_8036C658
lbl_8036C648:
/* 8036C648 00369588 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C64C 0036958C C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C650 00369590 4B FF E4 59 */ bl func_8036AAA8
/* 8036C654 00369594 FC 20 08 50 */ fneg f1, f1
lbl_8036C658:
/* 8036C658 00369598 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036C65C 0036959C 7C 08 03 A6 */ mtlr r0
/* 8036C660 003695A0 38 21 00 20 */ addi r1, r1, 0x20
/* 8036C664 003695A4 4E 80 00 20 */ blr
.global func_8036C668
func_8036C668:
/* 8036C668 003695A8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036C66C 003695AC 7C 08 02 A6 */ mflr r0
/* 8036C670 003695B0 3C 60 3F E9 */ lis r3, 0x3FE921FB@ha
/* 8036C674 003695B4 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C678 003695B8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036C67C 003695BC 38 03 21 FB */ addi r0, r3, 0x3FE921FB@l
/* 8036C680 003695C0 80 61 00 08 */ lwz r3, 8(r1)
/* 8036C684 003695C4 54 63 00 7E */ clrlwi r3, r3, 1
/* 8036C688 003695C8 7C 03 00 00 */ cmpw r3, r0
/* 8036C68C 003695CC 41 81 00 14 */ bgt lbl_8036C6A0
/* 8036C690 003695D0 C8 42 D1 40 */ lfd f2, lbl_80456B40-_SDA2_BASE_(r2)
/* 8036C694 003695D4 38 60 00 01 */ li r3, 1
/* 8036C698 003695D8 4B FF F3 F9 */ bl func_8036BA90
/* 8036C69C 003695DC 48 00 00 34 */ b lbl_8036C6D0
lbl_8036C6A0:
/* 8036C6A0 003695E0 3C 00 7F F0 */ lis r0, 0x7ff0
/* 8036C6A4 003695E4 7C 03 00 00 */ cmpw r3, r0
/* 8036C6A8 003695E8 41 80 00 0C */ blt lbl_8036C6B4
/* 8036C6AC 003695EC FC 21 08 28 */ fsub f1, f1, f1
/* 8036C6B0 003695F0 48 00 00 20 */ b lbl_8036C6D0
lbl_8036C6B4:
/* 8036C6B4 003695F4 38 61 00 10 */ addi r3, r1, 0x10
/* 8036C6B8 003695F8 4B FF E0 51 */ bl func_8036A708
/* 8036C6BC 003695FC 54 60 0F BC */ rlwinm r0, r3, 1, 0x1e, 0x1e
/* 8036C6C0 00369600 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8036C6C4 00369604 C8 41 00 18 */ lfd f2, 0x18(r1)
/* 8036C6C8 00369608 20 60 00 01 */ subfic r3, r0, 1
/* 8036C6CC 0036960C 4B FF F3 C5 */ bl func_8036BA90
lbl_8036C6D0:
/* 8036C6D0 00369610 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036C6D4 00369614 7C 08 03 A6 */ mtlr r0
/* 8036C6D8 00369618 38 21 00 20 */ addi r1, r1, 0x20
/* 8036C6DC 0036961C 4E 80 00 20 */ blr
.global func_8036C6E0
func_8036C6E0:
/* 8036C6E0 00369620 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C6E4 00369624 7C 08 02 A6 */ mflr r0
/* 8036C6E8 00369628 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C6EC 0036962C 4B FF CB 89 */ bl func_80369274
/* 8036C6F0 00369630 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C6F4 00369634 7C 08 03 A6 */ mtlr r0
/* 8036C6F8 00369638 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C6FC 0036963C 4E 80 00 20 */ blr
.global func_8036C700
func_8036C700:
/* 8036C700 00369640 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C704 00369644 7C 08 02 A6 */ mflr r0
/* 8036C708 00369648 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C70C 0036964C 4B FF CD A5 */ bl func_803694B0
/* 8036C710 00369650 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C714 00369654 7C 08 03 A6 */ mtlr r0
/* 8036C718 00369658 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C71C 0036965C 4E 80 00 20 */ blr
.global func_8036C720
func_8036C720:
/* 8036C720 00369660 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C724 00369664 7C 08 02 A6 */ mflr r0
/* 8036C728 00369668 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C72C 0036966C 4B FF CF BD */ bl func_803696E8
/* 8036C730 00369670 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C734 00369674 7C 08 03 A6 */ mtlr r0
/* 8036C738 00369678 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C73C 0036967C 4E 80 00 20 */ blr
.global func_8036C740
func_8036C740:
/* 8036C740 00369680 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C744 00369684 7C 08 02 A6 */ mflr r0
/* 8036C748 00369688 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C74C 0036968C 4B FF D2 2D */ bl func_80369978
/* 8036C750 00369690 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C754 00369694 7C 08 03 A6 */ mtlr r0
/* 8036C758 00369698 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C75C 0036969C 4E 80 00 20 */ blr
.global func_8036C760
func_8036C760:
/* 8036C760 003696A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C764 003696A4 7C 08 02 A6 */ mflr r0
/* 8036C768 003696A8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C76C 003696AC 4B FF D4 31 */ bl func_80369B9C
/* 8036C770 003696B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C774 003696B4 7C 08 03 A6 */ mtlr r0
/* 8036C778 003696B8 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C77C 003696BC 4E 80 00 20 */ blr
.global func_8036C780
func_8036C780:
/* 8036C780 003696C0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C784 003696C4 7C 08 02 A6 */ mflr r0
/* 8036C788 003696C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C78C 003696CC 4B FF D7 4D */ bl func_80369ED8
/* 8036C790 003696D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C794 003696D4 7C 08 03 A6 */ mtlr r0
/* 8036C798 003696D8 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C79C 003696DC 4E 80 00 20 */ blr
.global func_8036C7A0
func_8036C7A0:
/* 8036C7A0 003696E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036C7A4 003696E4 D8 21 00 08 */ stfd f1, 8(r1)
/* 8036C7A8 003696E8 80 C1 00 08 */ lwz r6, 8(r1)
/* 8036C7AC 003696EC 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036C7B0 003696F0 54 C3 00 56 */ rlwinm r3, r6, 0, 1, 0xb
/* 8036C7B4 003696F4 3C 63 80 10 */ addis r3, r3, 0x8010
/* 8036C7B8 003696F8 28 03 00 00 */ cmplwi r3, 0
/* 8036C7BC 003696FC 40 82 00 14 */ bne lbl_8036C7D0
/* 8036C7C0 00369700 FC 21 08 7A */ fmadd f1, f1, f1, f1
/* 8036C7C4 00369704 38 00 00 21 */ li r0, 0x21
/* 8036C7C8 00369708 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 8036C7CC 0036970C 48 00 01 F0 */ b lbl_8036C9BC
lbl_8036C7D0:
/* 8036C7D0 00369710 2C 06 00 00 */ cmpwi r6, 0
/* 8036C7D4 00369714 41 81 00 30 */ bgt lbl_8036C804
/* 8036C7D8 00369718 54 C3 00 7E */ clrlwi r3, r6, 1
/* 8036C7DC 0036971C 7C 03 1B 79 */ or. r3, r0, r3
/* 8036C7E0 00369720 40 82 00 08 */ bne lbl_8036C7E8
/* 8036C7E4 00369724 48 00 01 D8 */ b lbl_8036C9BC
lbl_8036C7E8:
/* 8036C7E8 00369728 2C 06 00 00 */ cmpwi r6, 0
/* 8036C7EC 0036972C 40 80 00 18 */ bge lbl_8036C804
/* 8036C7F0 00369730 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 8036C7F4 00369734 38 00 00 21 */ li r0, 0x21
/* 8036C7F8 00369738 90 0D 94 28 */ stw r0, lbl_804519A8-_SDA_BASE_(r13)
/* 8036C7FC 0036973C C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
/* 8036C800 00369740 48 00 01 BC */ b lbl_8036C9BC
lbl_8036C804:
/* 8036C804 00369744 7C C3 A6 71 */ srawi. r3, r6, 0x14
/* 8036C808 00369748 40 82 00 50 */ bne lbl_8036C858
/* 8036C80C 0036974C 48 00 00 14 */ b lbl_8036C820
lbl_8036C810:
/* 8036C810 00369750 54 04 AA FE */ srwi r4, r0, 0xb
/* 8036C814 00369754 54 00 A8 14 */ slwi r0, r0, 0x15
/* 8036C818 00369758 7C C6 23 78 */ or r6, r6, r4
/* 8036C81C 0036975C 38 63 FF EB */ addi r3, r3, -21
lbl_8036C820:
/* 8036C820 00369760 2C 06 00 00 */ cmpwi r6, 0
/* 8036C824 00369764 41 82 FF EC */ beq lbl_8036C810
/* 8036C828 00369768 38 E0 00 00 */ li r7, 0
/* 8036C82C 0036976C 48 00 00 0C */ b lbl_8036C838
lbl_8036C830:
/* 8036C830 00369770 54 C6 08 3C */ slwi r6, r6, 1
/* 8036C834 00369774 38 E7 00 01 */ addi r7, r7, 1
lbl_8036C838:
/* 8036C838 00369778 54 C4 02 D7 */ rlwinm. r4, r6, 0, 0xb, 0xb
/* 8036C83C 0036977C 41 82 FF F4 */ beq lbl_8036C830
/* 8036C840 00369780 20 87 00 20 */ subfic r4, r7, 0x20
/* 8036C844 00369784 38 A7 FF FF */ addi r5, r7, -1
/* 8036C848 00369788 7C 04 24 30 */ srw r4, r0, r4
/* 8036C84C 0036978C 7C 00 38 30 */ slw r0, r0, r7
/* 8036C850 00369790 7C 65 18 50 */ subf r3, r5, r3
/* 8036C854 00369794 7C C6 23 78 */ or r6, r6, r4
lbl_8036C858:
/* 8036C858 00369798 38 83 FC 01 */ addi r4, r3, -1023
/* 8036C85C 0036979C 54 C5 03 3E */ clrlwi r5, r6, 0xc
/* 8036C860 003697A0 54 84 07 FF */ clrlwi. r4, r4, 0x1f
/* 8036C864 003697A4 64 A5 00 10 */ oris r5, r5, 0x10
/* 8036C868 003697A8 41 82 00 14 */ beq lbl_8036C87C
/* 8036C86C 003697AC 54 04 0F FE */ srwi r4, r0, 0x1f
/* 8036C870 003697B0 7C 00 02 14 */ add r0, r0, r0
/* 8036C874 003697B4 7C 84 2A 14 */ add r4, r4, r5
/* 8036C878 003697B8 7C A5 22 14 */ add r5, r5, r4
lbl_8036C87C:
/* 8036C87C 003697BC 54 04 0F FE */ srwi r4, r0, 0x1f
/* 8036C880 003697C0 7C 00 02 14 */ add r0, r0, r0
/* 8036C884 003697C4 7C 84 2A 14 */ add r4, r4, r5
/* 8036C888 003697C8 39 20 00 00 */ li r9, 0
/* 8036C88C 003697CC 7C A5 22 14 */ add r5, r5, r4
/* 8036C890 003697D0 39 60 00 00 */ li r11, 0
/* 8036C894 003697D4 39 40 00 00 */ li r10, 0
/* 8036C898 003697D8 39 80 00 00 */ li r12, 0
/* 8036C89C 003697DC 3C C0 00 20 */ lis r6, 0x20
/* 8036C8A0 003697E0 48 00 00 30 */ b lbl_8036C8D0
lbl_8036C8A4:
/* 8036C8A4 003697E4 7C 8B 32 14 */ add r4, r11, r6
/* 8036C8A8 003697E8 7C 04 28 00 */ cmpw r4, r5
/* 8036C8AC 003697EC 41 81 00 10 */ bgt lbl_8036C8BC
/* 8036C8B0 003697F0 7D 64 32 14 */ add r11, r4, r6
/* 8036C8B4 003697F4 7C A4 28 50 */ subf r5, r4, r5
/* 8036C8B8 003697F8 7D 8C 32 14 */ add r12, r12, r6
lbl_8036C8BC:
/* 8036C8BC 003697FC 54 04 0F FE */ srwi r4, r0, 0x1f
/* 8036C8C0 00369800 7C 00 02 14 */ add r0, r0, r0
/* 8036C8C4 00369804 7C 84 2A 14 */ add r4, r4, r5
/* 8036C8C8 00369808 54 C6 F8 7E */ srwi r6, r6, 1
/* 8036C8CC 0036980C 7C A5 22 14 */ add r5, r5, r4
lbl_8036C8D0:
/* 8036C8D0 00369810 28 06 00 00 */ cmplwi r6, 0
/* 8036C8D4 00369814 40 82 FF D0 */ bne lbl_8036C8A4
/* 8036C8D8 00369818 3C C0 80 00 */ lis r6, 0x8000
/* 8036C8DC 0036981C 48 00 00 6C */ b lbl_8036C948
lbl_8036C8E0:
/* 8036C8E0 00369820 7C 0B 28 00 */ cmpw r11, r5
/* 8036C8E4 00369824 7D 67 5B 78 */ mr r7, r11
/* 8036C8E8 00369828 7D 09 32 14 */ add r8, r9, r6
/* 8036C8EC 0036982C 41 80 00 10 */ blt lbl_8036C8FC
/* 8036C8F0 00369830 40 82 00 44 */ bne lbl_8036C934
/* 8036C8F4 00369834 7C 08 00 40 */ cmplw r8, r0
/* 8036C8F8 00369838 41 81 00 3C */ bgt lbl_8036C934
lbl_8036C8FC:
/* 8036C8FC 0036983C 55 04 00 00 */ rlwinm r4, r8, 0, 0, 0
/* 8036C900 00369840 7D 28 32 14 */ add r9, r8, r6
/* 8036C904 00369844 3C 84 80 00 */ addis r4, r4, 0x8000
/* 8036C908 00369848 28 04 00 00 */ cmplwi r4, 0
/* 8036C90C 0036984C 40 82 00 10 */ bne lbl_8036C91C
/* 8036C910 00369850 55 24 00 01 */ rlwinm. r4, r9, 0, 0, 0
/* 8036C914 00369854 40 82 00 08 */ bne lbl_8036C91C
/* 8036C918 00369858 39 6B 00 01 */ addi r11, r11, 1
lbl_8036C91C:
/* 8036C91C 0036985C 7C 00 40 40 */ cmplw r0, r8
/* 8036C920 00369860 7C A7 28 50 */ subf r5, r7, r5
/* 8036C924 00369864 40 80 00 08 */ bge lbl_8036C92C
/* 8036C928 00369868 38 A5 FF FF */ addi r5, r5, -1
lbl_8036C92C:
/* 8036C92C 0036986C 7C 08 00 50 */ subf r0, r8, r0
/* 8036C930 00369870 7D 4A 32 14 */ add r10, r10, r6
lbl_8036C934:
/* 8036C934 00369874 54 04 0F FE */ srwi r4, r0, 0x1f
/* 8036C938 00369878 7C 00 02 14 */ add r0, r0, r0
/* 8036C93C 0036987C 7C 84 2A 14 */ add r4, r4, r5
/* 8036C940 00369880 54 C6 F8 7E */ srwi r6, r6, 1
/* 8036C944 00369884 7C A5 22 14 */ add r5, r5, r4
lbl_8036C948:
/* 8036C948 00369888 28 06 00 00 */ cmplwi r6, 0
/* 8036C94C 0036988C 40 82 FF 94 */ bne lbl_8036C8E0
/* 8036C950 00369890 7C A0 03 79 */ or. r0, r5, r0
/* 8036C954 00369894 41 82 00 30 */ beq lbl_8036C984
/* 8036C958 00369898 C8 02 D1 48 */ lfd f0, lbl_80456B48-_SDA2_BASE_(r2)
/* 8036C95C 0036989C 3C 0A 00 01 */ addis r0, r10, 1
/* 8036C960 003698A0 28 00 FF FF */ cmplwi r0, 0xffff
/* 8036C964 003698A4 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 8036C968 003698A8 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 8036C96C 003698AC 40 82 00 10 */ bne lbl_8036C97C
/* 8036C970 003698B0 39 40 00 00 */ li r10, 0
/* 8036C974 003698B4 39 8C 00 01 */ addi r12, r12, 1
/* 8036C978 003698B8 48 00 00 0C */ b lbl_8036C984
lbl_8036C97C:
/* 8036C97C 003698BC 55 40 07 FE */ clrlwi r0, r10, 0x1f
/* 8036C980 003698C0 7D 4A 02 14 */ add r10, r10, r0
lbl_8036C984:
/* 8036C984 003698C4 55 80 07 FE */ clrlwi r0, r12, 0x1f
/* 8036C988 003698C8 7D 84 0E 70 */ srawi r4, r12, 1
/* 8036C98C 003698CC 2C 00 00 01 */ cmpwi r0, 1
/* 8036C990 003698D0 55 45 F8 7E */ srwi r5, r10, 1
/* 8036C994 003698D4 3C 84 3F E0 */ addis r4, r4, 0x3fe0
/* 8036C998 003698D8 40 82 00 08 */ bne lbl_8036C9A0
/* 8036C99C 003698DC 64 A5 80 00 */ oris r5, r5, 0x8000
lbl_8036C9A0:
/* 8036C9A0 003698E0 38 03 FC 01 */ addi r0, r3, -1023
/* 8036C9A4 003698E4 90 A1 00 14 */ stw r5, 0x14(r1)
/* 8036C9A8 003698E8 7C 00 0E 70 */ srawi r0, r0, 1
/* 8036C9AC 003698EC 54 00 A0 16 */ slwi r0, r0, 0x14
/* 8036C9B0 003698F0 7C 84 02 14 */ add r4, r4, r0
/* 8036C9B4 003698F4 90 81 00 10 */ stw r4, 0x10(r1)
/* 8036C9B8 003698F8 C8 21 00 10 */ lfd f1, 0x10(r1)
lbl_8036C9BC:
/* 8036C9BC 003698FC 38 21 00 20 */ addi r1, r1, 0x20
/* 8036C9C0 00369900 4E 80 00 20 */ blr
.global func_8036C9C4
func_8036C9C4:
/* 8036C9C4 00369904 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C9C8 00369908 7C 08 02 A6 */ mflr r0
/* 8036C9CC 0036990C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C9D0 00369910 4B FF FC 99 */ bl func_8036C668
/* 8036C9D4 00369914 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C9D8 00369918 FC 20 08 18 */ frsp f1, f1
/* 8036C9DC 0036991C 7C 08 03 A6 */ mtlr r0
/* 8036C9E0 00369920 38 21 00 10 */ addi r1, r1, 0x10
/* 8036C9E4 00369924 4E 80 00 20 */ blr
.global func_8036C9E8
func_8036C9E8:
/* 8036C9E8 00369928 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036C9EC 0036992C 7C 08 02 A6 */ mflr r0
/* 8036C9F0 00369930 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036C9F4 00369934 4B FF FB 9D */ bl func_8036C590
/* 8036C9F8 00369938 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036C9FC 0036993C FC 20 08 18 */ frsp f1, f1
/* 8036CA00 00369940 7C 08 03 A6 */ mtlr r0
/* 8036CA04 00369944 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CA08 00369948 4E 80 00 20 */ blr
.global func_8036CA0C
func_8036CA0C:
/* 8036CA0C 0036994C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CA10 00369950 7C 08 02 A6 */ mflr r0
/* 8036CA14 00369954 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CA18 00369958 4B FF F6 11 */ bl func_8036C028
/* 8036CA1C 0036995C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CA20 00369960 FC 20 08 18 */ frsp f1, f1
/* 8036CA24 00369964 7C 08 03 A6 */ mtlr r0
/* 8036CA28 00369968 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CA2C 0036996C 4E 80 00 20 */ blr
.global func_8036CA30
func_8036CA30:
/* 8036CA30 00369970 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CA34 00369974 7C 08 02 A6 */ mflr r0
/* 8036CA38 00369978 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CA3C 0036997C 4B FF FC A5 */ bl func_8036C6E0
/* 8036CA40 00369980 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CA44 00369984 FC 20 08 18 */ frsp f1, f1
/* 8036CA48 00369988 7C 08 03 A6 */ mtlr r0
/* 8036CA4C 0036998C 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CA50 00369990 4E 80 00 20 */ blr
.global func_8036CA54
func_8036CA54:
/* 8036CA54 00369994 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CA58 00369998 7C 08 02 A6 */ mflr r0
/* 8036CA5C 0036999C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CA60 003699A0 4B FF FD 41 */ bl func_8036C7A0
/* 8036CA64 003699A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CA68 003699A8 7C 08 03 A6 */ mtlr r0
/* 8036CA6C 003699AC 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CA70 003699B0 4E 80 00 20 */ blr
.global func_8036CA74
func_8036CA74:
/* 8036CA74 003699B4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CA78 003699B8 7C 08 02 A6 */ mflr r0
/* 8036CA7C 003699BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CA80 003699C0 4B FF 8D 9D */ bl func_8036581C
/* 8036CA84 003699C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CA88 003699C8 7C 08 03 A6 */ mtlr r0
/* 8036CA8C 003699CC 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CA90 003699D0 4E 80 00 20 */ blr
.global func_8036CA94
func_8036CA94:
/* 8036CA94 003699D4 88 03 00 00 */ lbz r0, 0(r3)
/* 8036CA98 003699D8 38 63 00 01 */ addi r3, r3, 1
/* 8036CA9C 003699DC 7C 00 07 74 */ extsb r0, r0
/* 8036CAA0 003699E0 2C 00 FF FF */ cmpwi r0, -1
/* 8036CAA4 003699E4 40 82 00 0C */ bne lbl_8036CAB0
/* 8036CAA8 003699E8 38 A0 FF FF */ li r5, -1
/* 8036CAAC 003699EC 48 00 00 14 */ b lbl_8036CAC0
lbl_8036CAB0:
/* 8036CAB0 003699F0 3C A0 80 3D */ lis r5, lbl_803D2D18@ha
/* 8036CAB4 003699F4 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 8036CAB8 003699F8 38 A5 2D 18 */ addi r5, r5, lbl_803D2D18@l
/* 8036CABC 003699FC 7C A5 00 AE */ lbzx r5, r5, r0
lbl_8036CAC0:
/* 8036CAC0 00369A00 88 04 00 00 */ lbz r0, 0(r4)
/* 8036CAC4 00369A04 7C A6 07 74 */ extsb r6, r5
/* 8036CAC8 00369A08 38 84 00 01 */ addi r4, r4, 1
/* 8036CACC 00369A0C 7C 00 07 74 */ extsb r0, r0
/* 8036CAD0 00369A10 2C 00 FF FF */ cmpwi r0, -1
/* 8036CAD4 00369A14 40 82 00 0C */ bne lbl_8036CAE0
/* 8036CAD8 00369A18 38 00 FF FF */ li r0, -1
/* 8036CADC 00369A1C 48 00 00 14 */ b lbl_8036CAF0
lbl_8036CAE0:
/* 8036CAE0 00369A20 3C A0 80 3D */ lis r5, lbl_803D2D18@ha
/* 8036CAE4 00369A24 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 8036CAE8 00369A28 38 A5 2D 18 */ addi r5, r5, lbl_803D2D18@l
/* 8036CAEC 00369A2C 7C 05 00 AE */ lbzx r0, r5, r0
lbl_8036CAF0:
/* 8036CAF0 00369A30 7C 00 07 74 */ extsb r0, r0
/* 8036CAF4 00369A34 7C 06 00 00 */ cmpw r6, r0
/* 8036CAF8 00369A38 40 80 00 0C */ bge lbl_8036CB04
/* 8036CAFC 00369A3C 38 60 FF FF */ li r3, -1
/* 8036CB00 00369A40 4E 80 00 20 */ blr
lbl_8036CB04:
/* 8036CB04 00369A44 40 81 00 0C */ ble lbl_8036CB10
/* 8036CB08 00369A48 38 60 00 01 */ li r3, 1
/* 8036CB0C 00369A4C 4E 80 00 20 */ blr
lbl_8036CB10:
/* 8036CB10 00369A50 7C C0 07 75 */ extsb. r0, r6
/* 8036CB14 00369A54 40 82 FF 80 */ bne func_8036CA94
/* 8036CB18 00369A58 38 60 00 00 */ li r3, 0
/* 8036CB1C 00369A5C 4E 80 00 20 */ blr
.global func_8036CB20
func_8036CB20:
/* 8036CB20 00369A60 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036CB24 00369A64 7C 08 02 A6 */ mflr r0
/* 8036CB28 00369A68 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036CB2C 00369A6C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036CB30 00369A70 3B E0 00 00 */ li r31, 0
/* 8036CB34 00369A74 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036CB38 00369A78 3B C0 00 00 */ li r30, 0
/* 8036CB3C 00369A7C 48 00 00 BC */ b lbl_8036CBF8
lbl_8036CB40:
/* 8036CB40 00369A80 38 61 00 08 */ addi r3, r1, 8
/* 8036CB44 00369A84 48 00 01 F1 */ bl func_8036CD34
/* 8036CB48 00369A88 2C 03 00 00 */ cmpwi r3, 0
/* 8036CB4C 00369A8C 41 82 00 6C */ beq lbl_8036CBB8
/* 8036CB50 00369A90 80 01 00 08 */ lwz r0, 8(r1)
/* 8036CB54 00369A94 3B C0 00 00 */ li r30, 0
/* 8036CB58 00369A98 2C 00 00 02 */ cmpwi r0, 2
/* 8036CB5C 00369A9C 41 82 00 28 */ beq lbl_8036CB84
/* 8036CB60 00369AA0 40 80 00 14 */ bge lbl_8036CB74
/* 8036CB64 00369AA4 2C 00 00 00 */ cmpwi r0, 0
/* 8036CB68 00369AA8 41 82 00 44 */ beq lbl_8036CBAC
/* 8036CB6C 00369AAC 40 80 00 28 */ bge lbl_8036CB94
/* 8036CB70 00369AB0 48 00 00 3C */ b lbl_8036CBAC
lbl_8036CB74:
/* 8036CB74 00369AB4 2C 00 00 05 */ cmpwi r0, 5
/* 8036CB78 00369AB8 41 82 00 30 */ beq lbl_8036CBA8
/* 8036CB7C 00369ABC 40 80 00 30 */ bge lbl_8036CBAC
/* 8036CB80 00369AC0 48 00 00 1C */ b lbl_8036CB9C
lbl_8036CB84:
/* 8036CB84 00369AC4 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036CB88 00369AC8 48 00 0B 69 */ bl func_8036D6F0
/* 8036CB8C 00369ACC 48 00 10 11 */ bl func_8036DB9C
/* 8036CB90 00369AD0 48 00 00 1C */ b lbl_8036CBAC
lbl_8036CB94:
/* 8036CB94 00369AD4 3B E0 00 01 */ li r31, 1
/* 8036CB98 00369AD8 48 00 00 14 */ b lbl_8036CBAC
lbl_8036CB9C:
/* 8036CB9C 00369ADC 38 61 00 08 */ addi r3, r1, 8
/* 8036CBA0 00369AE0 48 00 34 05 */ bl func_8036FFA4
/* 8036CBA4 00369AE4 48 00 00 08 */ b lbl_8036CBAC
lbl_8036CBA8:
/* 8036CBA8 00369AE8 48 00 2F 79 */ bl func_8036FB20
lbl_8036CBAC:
/* 8036CBAC 00369AEC 38 61 00 08 */ addi r3, r1, 8
/* 8036CBB0 00369AF0 48 00 00 69 */ bl func_8036CC18
/* 8036CBB4 00369AF4 48 00 00 44 */ b lbl_8036CBF8
lbl_8036CBB8:
/* 8036CBB8 00369AF8 2C 1E 00 00 */ cmpwi r30, 0
/* 8036CBBC 00369AFC 41 82 00 1C */ beq lbl_8036CBD8
/* 8036CBC0 00369B00 3C 60 80 45 */ lis r3, lbl_804519B8@ha
/* 8036CBC4 00369B04 38 63 19 B8 */ addi r3, r3, lbl_804519B8@l
/* 8036CBC8 00369B08 80 63 00 00 */ lwz r3, 0(r3)
/* 8036CBCC 00369B0C 88 03 00 00 */ lbz r0, 0(r3)
/* 8036CBD0 00369B10 28 00 00 00 */ cmplwi r0, 0
/* 8036CBD4 00369B14 41 82 00 10 */ beq lbl_8036CBE4
lbl_8036CBD8:
/* 8036CBD8 00369B18 3B C0 00 01 */ li r30, 1
/* 8036CBDC 00369B1C 48 00 0D 99 */ bl func_8036D974
/* 8036CBE0 00369B20 48 00 00 18 */ b lbl_8036CBF8
lbl_8036CBE4:
/* 8036CBE4 00369B24 48 00 2F 2D */ bl func_8036FB10
/* 8036CBE8 00369B28 2C 03 00 00 */ cmpwi r3, 0
/* 8036CBEC 00369B2C 40 82 00 08 */ bne lbl_8036CBF4
/* 8036CBF0 00369B30 48 00 55 5D */ bl func_8037214C
lbl_8036CBF4:
/* 8036CBF4 00369B34 3B C0 00 00 */ li r30, 0
lbl_8036CBF8:
/* 8036CBF8 00369B38 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CBFC 00369B3C 41 82 FF 44 */ beq lbl_8036CB40
/* 8036CC00 00369B40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036CC04 00369B44 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036CC08 00369B48 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036CC0C 00369B4C 7C 08 03 A6 */ mtlr r0
/* 8036CC10 00369B50 38 21 00 20 */ addi r1, r1, 0x20
/* 8036CC14 00369B54 4E 80 00 20 */ blr
.global func_8036CC18
func_8036CC18:
/* 8036CC18 00369B58 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CC1C 00369B5C 7C 08 02 A6 */ mflr r0
/* 8036CC20 00369B60 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CC24 00369B64 80 63 00 08 */ lwz r3, 8(r3)
/* 8036CC28 00369B68 48 00 0A 65 */ bl func_8036D68C
/* 8036CC2C 00369B6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CC30 00369B70 7C 08 03 A6 */ mtlr r0
/* 8036CC34 00369B74 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CC38 00369B78 4E 80 00 20 */ blr
.global func_8036CC3C
func_8036CC3C:
/* 8036CC3C 00369B7C 90 83 00 00 */ stw r4, 0(r3)
/* 8036CC40 00369B80 38 80 00 00 */ li r4, 0
/* 8036CC44 00369B84 38 00 FF FF */ li r0, -1
/* 8036CC48 00369B88 90 83 00 04 */ stw r4, 4(r3)
/* 8036CC4C 00369B8C 90 03 00 08 */ stw r0, 8(r3)
/* 8036CC50 00369B90 4E 80 00 20 */ blr
.global func_8036CC54
func_8036CC54:
/* 8036CC54 00369B94 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036CC58 00369B98 7C 08 02 A6 */ mflr r0
/* 8036CC5C 00369B9C 3C 80 80 45 */ lis r4, lbl_8044D890@ha
/* 8036CC60 00369BA0 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036CC64 00369BA4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036CC68 00369BA8 3B E0 00 00 */ li r31, 0
/* 8036CC6C 00369BAC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036CC70 00369BB0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036CC74 00369BB4 7C 7D 1B 78 */ mr r29, r3
/* 8036CC78 00369BB8 38 64 D8 90 */ addi r3, r4, lbl_8044D890@l
/* 8036CC7C 00369BBC 48 00 28 25 */ bl func_8036F4A0
/* 8036CC80 00369BC0 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CC84 00369BC4 3B C3 D8 90 */ addi r30, r3, lbl_8044D890@l
/* 8036CC88 00369BC8 80 7E 00 04 */ lwz r3, 4(r30)
/* 8036CC8C 00369BCC 2C 03 00 02 */ cmpwi r3, 2
/* 8036CC90 00369BD0 40 82 00 0C */ bne lbl_8036CC9C
/* 8036CC94 00369BD4 3B E0 01 00 */ li r31, 0x100
/* 8036CC98 00369BD8 48 00 00 70 */ b lbl_8036CD08
lbl_8036CC9C:
/* 8036CC9C 00369BDC 80 1E 00 08 */ lwz r0, 8(r30)
/* 8036CCA0 00369BE0 7F A4 EB 78 */ mr r4, r29
/* 8036CCA4 00369BE4 38 A0 00 0C */ li r5, 0xc
/* 8036CCA8 00369BE8 7C 00 1A 14 */ add r0, r0, r3
/* 8036CCAC 00369BEC 54 03 0F FE */ srwi r3, r0, 0x1f
/* 8036CCB0 00369BF0 54 00 07 FE */ clrlwi r0, r0, 0x1f
/* 8036CCB4 00369BF4 7C 00 1A 78 */ xor r0, r0, r3
/* 8036CCB8 00369BF8 7C 03 00 50 */ subf r0, r3, r0
/* 8036CCBC 00369BFC 1F A0 00 0C */ mulli r29, r0, 0xc
/* 8036CCC0 00369C00 7C 7E EA 14 */ add r3, r30, r29
/* 8036CCC4 00369C04 38 63 00 0C */ addi r3, r3, 0xc
/* 8036CCC8 00369C08 4B C9 68 F9 */ bl func_800035C0
/* 8036CCCC 00369C0C 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CCD0 00369C10 38 83 D8 90 */ addi r4, r3, lbl_8044D890@l
/* 8036CCD4 00369C14 80 04 00 24 */ lwz r0, 0x24(r4)
/* 8036CCD8 00369C18 7C 64 EA 14 */ add r3, r4, r29
/* 8036CCDC 00369C1C 90 03 00 10 */ stw r0, 0x10(r3)
/* 8036CCE0 00369C20 80 64 00 24 */ lwz r3, 0x24(r4)
/* 8036CCE4 00369C24 38 03 00 01 */ addi r0, r3, 1
/* 8036CCE8 00369C28 28 00 01 00 */ cmplwi r0, 0x100
/* 8036CCEC 00369C2C 90 04 00 24 */ stw r0, 0x24(r4)
/* 8036CCF0 00369C30 40 80 00 0C */ bge lbl_8036CCFC
/* 8036CCF4 00369C34 38 00 01 00 */ li r0, 0x100
/* 8036CCF8 00369C38 90 04 00 24 */ stw r0, 0x24(r4)
lbl_8036CCFC:
/* 8036CCFC 00369C3C 80 7E 00 04 */ lwz r3, 4(r30)
/* 8036CD00 00369C40 38 03 00 01 */ addi r0, r3, 1
/* 8036CD04 00369C44 90 1E 00 04 */ stw r0, 4(r30)
lbl_8036CD08:
/* 8036CD08 00369C48 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CD0C 00369C4C 38 63 D8 90 */ addi r3, r3, lbl_8044D890@l
/* 8036CD10 00369C50 48 00 27 89 */ bl func_8036F498
/* 8036CD14 00369C54 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036CD18 00369C58 7F E3 FB 78 */ mr r3, r31
/* 8036CD1C 00369C5C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036CD20 00369C60 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036CD24 00369C64 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036CD28 00369C68 7C 08 03 A6 */ mtlr r0
/* 8036CD2C 00369C6C 38 21 00 20 */ addi r1, r1, 0x20
/* 8036CD30 00369C70 4E 80 00 20 */ blr
.global func_8036CD34
func_8036CD34:
/* 8036CD34 00369C74 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036CD38 00369C78 7C 08 02 A6 */ mflr r0
/* 8036CD3C 00369C7C 3C 80 80 45 */ lis r4, lbl_8044D890@ha
/* 8036CD40 00369C80 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036CD44 00369C84 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036CD48 00369C88 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036CD4C 00369C8C 3B C0 00 00 */ li r30, 0
/* 8036CD50 00369C90 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036CD54 00369C94 7C 7D 1B 78 */ mr r29, r3
/* 8036CD58 00369C98 38 64 D8 90 */ addi r3, r4, lbl_8044D890@l
/* 8036CD5C 00369C9C 48 00 27 45 */ bl func_8036F4A0
/* 8036CD60 00369CA0 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CD64 00369CA4 3B E3 D8 90 */ addi r31, r3, lbl_8044D890@l
/* 8036CD68 00369CA8 80 1F 00 04 */ lwz r0, 4(r31)
/* 8036CD6C 00369CAC 2C 00 00 00 */ cmpwi r0, 0
/* 8036CD70 00369CB0 40 81 00 4C */ ble lbl_8036CDBC
/* 8036CD74 00369CB4 80 1F 00 08 */ lwz r0, 8(r31)
/* 8036CD78 00369CB8 7F A3 EB 78 */ mr r3, r29
/* 8036CD7C 00369CBC 38 A0 00 0C */ li r5, 0xc
/* 8036CD80 00369CC0 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8036CD84 00369CC4 7C 9F 02 14 */ add r4, r31, r0
/* 8036CD88 00369CC8 38 84 00 0C */ addi r4, r4, 0xc
/* 8036CD8C 00369CCC 4B C9 68 35 */ bl func_800035C0
/* 8036CD90 00369CD0 80 7F 00 08 */ lwz r3, 8(r31)
/* 8036CD94 00369CD4 80 9F 00 04 */ lwz r4, 4(r31)
/* 8036CD98 00369CD8 38 03 00 01 */ addi r0, r3, 1
/* 8036CD9C 00369CDC 38 64 FF FF */ addi r3, r4, -1
/* 8036CDA0 00369CE0 90 1F 00 08 */ stw r0, 8(r31)
/* 8036CDA4 00369CE4 2C 00 00 02 */ cmpwi r0, 2
/* 8036CDA8 00369CE8 90 7F 00 04 */ stw r3, 4(r31)
/* 8036CDAC 00369CEC 40 82 00 0C */ bne lbl_8036CDB8
/* 8036CDB0 00369CF0 38 00 00 00 */ li r0, 0
/* 8036CDB4 00369CF4 90 1F 00 08 */ stw r0, 8(r31)
lbl_8036CDB8:
/* 8036CDB8 00369CF8 3B C0 00 01 */ li r30, 1
lbl_8036CDBC:
/* 8036CDBC 00369CFC 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CDC0 00369D00 38 63 D8 90 */ addi r3, r3, lbl_8044D890@l
/* 8036CDC4 00369D04 48 00 26 D5 */ bl func_8036F498
/* 8036CDC8 00369D08 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036CDCC 00369D0C 7F C3 F3 78 */ mr r3, r30
/* 8036CDD0 00369D10 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036CDD4 00369D14 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036CDD8 00369D18 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036CDDC 00369D1C 7C 08 03 A6 */ mtlr r0
/* 8036CDE0 00369D20 38 21 00 20 */ addi r1, r1, 0x20
/* 8036CDE4 00369D24 4E 80 00 20 */ blr
.global func_8036CDE8
func_8036CDE8:
/* 8036CDE8 00369D28 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CDEC 00369D2C 7C 08 02 A6 */ mflr r0
/* 8036CDF0 00369D30 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CDF4 00369D34 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CDF8 00369D38 38 63 D8 90 */ addi r3, r3, lbl_8044D890@l
/* 8036CDFC 00369D3C 48 00 26 AD */ bl func_8036F4A8
/* 8036CE00 00369D40 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CE04 00369D44 38 63 D8 90 */ addi r3, r3, lbl_8044D890@l
/* 8036CE08 00369D48 48 00 26 99 */ bl func_8036F4A0
/* 8036CE0C 00369D4C 3C 60 80 45 */ lis r3, lbl_8044D890@ha
/* 8036CE10 00369D50 38 80 00 00 */ li r4, 0
/* 8036CE14 00369D54 38 63 D8 90 */ addi r3, r3, lbl_8044D890@l
/* 8036CE18 00369D58 38 00 01 00 */ li r0, 0x100
/* 8036CE1C 00369D5C 90 83 00 04 */ stw r4, 4(r3)
/* 8036CE20 00369D60 90 83 00 08 */ stw r4, 8(r3)
/* 8036CE24 00369D64 90 03 00 24 */ stw r0, 0x24(r3)
/* 8036CE28 00369D68 48 00 26 71 */ bl func_8036F498
/* 8036CE2C 00369D6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CE30 00369D70 38 60 00 00 */ li r3, 0
/* 8036CE34 00369D74 7C 08 03 A6 */ mtlr r0
/* 8036CE38 00369D78 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CE3C 00369D7C 4E 80 00 20 */ blr
.global func_8036CE40
func_8036CE40:
/* 8036CE40 00369D80 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CE44 00369D84 7C 08 02 A6 */ mflr r0
/* 8036CE48 00369D88 3C 60 80 3A */ lis r3, lbl_803A2688@ha
/* 8036CE4C 00369D8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CE50 00369D90 38 63 26 88 */ addi r3, r3, lbl_803A2688@l
/* 8036CE54 00369D94 48 00 4E 85 */ bl func_80371CD8
/* 8036CE58 00369D98 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CE5C 00369D9C 7C 08 03 A6 */ mtlr r0
/* 8036CE60 00369DA0 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CE64 00369DA4 4E 80 00 20 */ blr
.global func_8036CE68
func_8036CE68:
/* 8036CE68 00369DA8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CE6C 00369DAC 7C 08 02 A6 */ mflr r0
/* 8036CE70 00369DB0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CE74 00369DB4 48 00 09 E5 */ bl func_8036D858
/* 8036CE78 00369DB8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036CE7C 00369DBC 38 60 00 00 */ li r3, 0
/* 8036CE80 00369DC0 7C 08 03 A6 */ mtlr r0
/* 8036CE84 00369DC4 38 21 00 10 */ addi r1, r1, 0x10
/* 8036CE88 00369DC8 4E 80 00 20 */ blr
.global func_8036CE8C
func_8036CE8C:
/* 8036CE8C 00369DCC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036CE90 00369DD0 7C 08 02 A6 */ mflr r0
/* 8036CE94 00369DD4 38 A0 00 12 */ li r5, 0x12
/* 8036CE98 00369DD8 38 80 00 34 */ li r4, 0x34
/* 8036CE9C 00369DDC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036CEA0 00369DE0 38 60 00 56 */ li r3, 0x56
/* 8036CEA4 00369DE4 38 00 00 78 */ li r0, 0x78
/* 8036CEA8 00369DE8 38 C0 00 01 */ li r6, 1
/* 8036CEAC 00369DEC 98 A1 00 08 */ stb r5, 8(r1)
/* 8036CEB0 00369DF0 3C A0 80 45 */ lis r5, lbl_8044D8B8@ha
/* 8036CEB4 00369DF4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036CEB8 00369DF8 3B E0 00 00 */ li r31, 0
/* 8036CEBC 00369DFC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036CEC0 00369E00 98 81 00 09 */ stb r4, 9(r1)
/* 8036CEC4 00369E04 98 61 00 0A */ stb r3, 0xa(r1)
/* 8036CEC8 00369E08 98 01 00 0B */ stb r0, 0xb(r1)
/* 8036CECC 00369E0C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036CED0 00369E10 94 C5 D8 B8 */ stwu r6, lbl_8044D8B8@l(r5)
/* 8036CED4 00369E14 3C 03 ED CC */ addis r0, r3, 0xedcc
/* 8036CED8 00369E18 28 00 56 78 */ cmplwi r0, 0x5678
/* 8036CEDC 00369E1C 40 82 00 0C */ bne lbl_8036CEE8
/* 8036CEE0 00369E20 90 C5 00 00 */ stw r6, 0(r5)
/* 8036CEE4 00369E24 48 00 00 1C */ b lbl_8036CF00
lbl_8036CEE8:
/* 8036CEE8 00369E28 3C 03 87 AA */ addis r0, r3, 0x87aa
/* 8036CEEC 00369E2C 28 00 34 12 */ cmplwi r0, 0x3412
/* 8036CEF0 00369E30 40 82 00 0C */ bne lbl_8036CEFC
/* 8036CEF4 00369E34 93 E5 00 00 */ stw r31, 0(r5)
/* 8036CEF8 00369E38 48 00 00 08 */ b lbl_8036CF00
lbl_8036CEFC:
/* 8036CEFC 00369E3C 7C DF 33 78 */ mr r31, r6
lbl_8036CF00:
/* 8036CF00 00369E40 3C 60 80 3A */ lis r3, lbl_803A26A4@ha
/* 8036CF04 00369E44 38 83 26 A4 */ addi r4, r3, lbl_803A26A4@l
/* 8036CF08 00369E48 38 60 00 01 */ li r3, 1
/* 8036CF0C 00369E4C 4C C6 31 82 */ crclr 6
/* 8036CF10 00369E50 48 00 5D 45 */ bl func_80372C54
/* 8036CF14 00369E54 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF18 00369E58 40 82 00 08 */ bne lbl_8036CF20
/* 8036CF1C 00369E5C 48 00 0B F5 */ bl func_8036DB10
lbl_8036CF20:
/* 8036CF20 00369E60 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF24 00369E64 40 82 00 0C */ bne lbl_8036CF30
/* 8036CF28 00369E68 4B FF FE C1 */ bl func_8036CDE8
/* 8036CF2C 00369E6C 7C 7F 1B 78 */ mr r31, r3
lbl_8036CF30:
/* 8036CF30 00369E70 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF34 00369E74 40 82 00 0C */ bne lbl_8036CF40
/* 8036CF38 00369E78 48 00 08 AD */ bl func_8036D7E4
/* 8036CF3C 00369E7C 7C 7F 1B 78 */ mr r31, r3
lbl_8036CF40:
/* 8036CF40 00369E80 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF44 00369E84 40 82 00 0C */ bne lbl_8036CF50
/* 8036CF48 00369E88 48 00 0D C5 */ bl func_8036DD0C
/* 8036CF4C 00369E8C 7C 7F 1B 78 */ mr r31, r3
lbl_8036CF50:
/* 8036CF50 00369E90 48 00 4D 31 */ bl func_80371C80
/* 8036CF54 00369E94 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF58 00369E98 40 82 00 0C */ bne lbl_8036CF64
/* 8036CF5C 00369E9C 48 00 09 05 */ bl func_8036D860
/* 8036CF60 00369EA0 7C 7F 1B 78 */ mr r31, r3
lbl_8036CF64:
/* 8036CF64 00369EA4 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF68 00369EA8 40 82 00 0C */ bne lbl_8036CF74
/* 8036CF6C 00369EAC 48 00 4A 41 */ bl func_803719AC
/* 8036CF70 00369EB0 7C 7F 1B 78 */ mr r31, r3
lbl_8036CF74:
/* 8036CF74 00369EB4 2C 1F 00 00 */ cmpwi r31, 0
/* 8036CF78 00369EB8 40 82 00 44 */ bne lbl_8036CFBC
/* 8036CF7C 00369EBC 3C 60 80 45 */ lis r3, lbl_804519B8@ha
/* 8036CF80 00369EC0 3C A0 00 01 */ lis r5, 0x0000E100@ha
/* 8036CF84 00369EC4 38 C3 19 B8 */ addi r6, r3, lbl_804519B8@l
/* 8036CF88 00369EC8 38 80 00 01 */ li r4, 1
/* 8036CF8C 00369ECC 38 65 E1 00 */ addi r3, r5, 0x0000E100@l
/* 8036CF90 00369ED0 38 A0 00 00 */ li r5, 0
/* 8036CF94 00369ED4 48 00 4E C5 */ bl func_80371E58
/* 8036CF98 00369ED8 3C 80 80 45 */ lis r4, lbl_804519B8@ha
/* 8036CF9C 00369EDC 7C 60 1B 78 */ mr r0, r3
/* 8036CFA0 00369EE0 38 64 19 B8 */ addi r3, r4, lbl_804519B8@l
/* 8036CFA4 00369EE4 80 63 00 00 */ lwz r3, 0(r3)
/* 8036CFA8 00369EE8 7C 1E 03 78 */ mr r30, r0
/* 8036CFAC 00369EEC 48 00 2B 2D */ bl func_8036FAD8
/* 8036CFB0 00369EF0 2C 1E 00 00 */ cmpwi r30, 0
/* 8036CFB4 00369EF4 41 82 00 08 */ beq lbl_8036CFBC
/* 8036CFB8 00369EF8 7F DF F3 78 */ mr r31, r30
lbl_8036CFBC:
/* 8036CFBC 00369EFC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036CFC0 00369F00 7F E3 FB 78 */ mr r3, r31
/* 8036CFC4 00369F04 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036CFC8 00369F08 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036CFCC 00369F0C 7C 08 03 A6 */ mtlr r0
/* 8036CFD0 00369F10 38 21 00 20 */ addi r1, r1, 0x20
/* 8036CFD4 00369F14 4E 80 00 20 */ blr
.global func_8036CFD8
func_8036CFD8:
/* 8036CFD8 00369F18 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036CFDC 00369F1C 7C 08 02 A6 */ mflr r0
/* 8036CFE0 00369F20 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036CFE4 00369F24 80 83 00 08 */ lwz r4, 8(r3)
/* 8036CFE8 00369F28 38 63 00 10 */ addi r3, r3, 0x10
/* 8036CFEC 00369F2C 48 00 4D 7D */ bl func_80371D68
/* 8036CFF0 00369F30 3C 80 80 3A */ lis r4, lbl_803A26B8@ha
/* 8036CFF4 00369F34 7C 65 1B 78 */ mr r5, r3
/* 8036CFF8 00369F38 38 60 00 01 */ li r3, 1
/* 8036CFFC 00369F3C 38 84 26 B8 */ addi r4, r4, lbl_803A26B8@l
/* 8036D000 00369F40 4C C6 31 82 */ crclr 6
/* 8036D004 00369F44 48 00 5C 51 */ bl func_80372C54
/* 8036D008 00369F48 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036D00C 00369F4C 38 60 00 00 */ li r3, 0
/* 8036D010 00369F50 7C 08 03 A6 */ mtlr r0
/* 8036D014 00369F54 38 21 00 10 */ addi r1, r1, 0x10
/* 8036D018 00369F58 4E 80 00 20 */ blr
.global func_8036D01C
func_8036D01C:
/* 8036D01C 00369F5C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036D020 00369F60 7C 08 02 A6 */ mflr r0
/* 8036D024 00369F64 3C C0 80 45 */ lis r6, lbl_8044D8B8@ha
/* 8036D028 00369F68 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036D02C 00369F6C BF 01 00 10 */ stmw r24, 0x10(r1)
/* 8036D030 00369F70 7C 7C 1B 78 */ mr r28, r3
/* 8036D034 00369F74 7C BD 2B 78 */ mr r29, r5
/* 8036D038 00369F78 7C 9F 23 78 */ mr r31, r4
/* 8036D03C 00369F7C 3B 66 D8 B8 */ addi r27, r6, lbl_8044D8B8@l
/* 8036D040 00369F80 3B C0 00 00 */ li r30, 0
/* 8036D044 00369F84 38 60 00 00 */ li r3, 0
/* 8036D048 00369F88 48 00 00 A0 */ b lbl_8036D0E8
lbl_8036D04C:
/* 8036D04C 00369F8C 80 1B 00 00 */ lwz r0, 0(r27)
/* 8036D050 00369F90 2C 00 00 00 */ cmpwi r0, 0
/* 8036D054 00369F94 41 82 00 0C */ beq lbl_8036D060
/* 8036D058 00369F98 7F F9 FB 78 */ mr r25, r31
/* 8036D05C 00369F9C 48 00 00 08 */ b lbl_8036D064
lbl_8036D060:
/* 8036D060 00369FA0 3B 21 00 08 */ addi r25, r1, 8
lbl_8036D064:
/* 8036D064 00369FA4 80 7C 00 0C */ lwz r3, 0xc(r28)
/* 8036D068 00369FA8 3B 00 00 04 */ li r24, 4
/* 8036D06C 00369FAC 80 1C 00 08 */ lwz r0, 8(r28)
/* 8036D070 00369FB0 3B 40 00 00 */ li r26, 0
/* 8036D074 00369FB4 7C 03 00 50 */ subf r0, r3, r0
/* 8036D078 00369FB8 7C 18 00 40 */ cmplw r24, r0
/* 8036D07C 00369FBC 40 81 00 0C */ ble lbl_8036D088
/* 8036D080 00369FC0 3B 40 03 02 */ li r26, 0x302
/* 8036D084 00369FC4 7C 18 03 78 */ mr r24, r0
lbl_8036D088:
/* 8036D088 00369FC8 38 83 00 10 */ addi r4, r3, 0x10
/* 8036D08C 00369FCC 7F 23 CB 78 */ mr r3, r25
/* 8036D090 00369FD0 7F 05 C3 78 */ mr r5, r24
/* 8036D094 00369FD4 7C 9C 22 14 */ add r4, r28, r4
/* 8036D098 00369FD8 4B C9 65 29 */ bl func_800035C0
/* 8036D09C 00369FDC 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 8036D0A0 00369FE0 7C 00 C2 14 */ add r0, r0, r24
/* 8036D0A4 00369FE4 90 1C 00 0C */ stw r0, 0xc(r28)
/* 8036D0A8 00369FE8 80 1B 00 00 */ lwz r0, 0(r27)
/* 8036D0AC 00369FEC 2C 00 00 00 */ cmpwi r0, 0
/* 8036D0B0 00369FF0 40 82 00 2C */ bne lbl_8036D0DC
/* 8036D0B4 00369FF4 2C 1A 00 00 */ cmpwi r26, 0
/* 8036D0B8 00369FF8 40 82 00 24 */ bne lbl_8036D0DC
/* 8036D0BC 00369FFC 88 19 00 03 */ lbz r0, 3(r25)
/* 8036D0C0 0036A000 98 1F 00 00 */ stb r0, 0(r31)
/* 8036D0C4 0036A004 88 19 00 02 */ lbz r0, 2(r25)
/* 8036D0C8 0036A008 98 1F 00 01 */ stb r0, 1(r31)
/* 8036D0CC 0036A00C 88 19 00 01 */ lbz r0, 1(r25)
/* 8036D0D0 0036A010 98 1F 00 02 */ stb r0, 2(r31)
/* 8036D0D4 0036A014 88 19 00 00 */ lbz r0, 0(r25)
/* 8036D0D8 0036A018 98 1F 00 03 */ stb r0, 3(r31)
lbl_8036D0DC:
/* 8036D0DC 0036A01C 7F 43 D3 78 */ mr r3, r26
/* 8036D0E0 0036A020 3B FF 00 04 */ addi r31, r31, 4
/* 8036D0E4 0036A024 3B DE 00 01 */ addi r30, r30, 1
lbl_8036D0E8:
/* 8036D0E8 0036A028 2C 03 00 00 */ cmpwi r3, 0
/* 8036D0EC 0036A02C 40 82 00 0C */ bne lbl_8036D0F8
/* 8036D0F0 0036A030 7C 1E E8 00 */ cmpw r30, r29
/* 8036D0F4 0036A034 41 80 FF 58 */ blt lbl_8036D04C
lbl_8036D0F8:
/* 8036D0F8 0036A038 BB 01 00 10 */ lmw r24, 0x10(r1)
/* 8036D0FC 0036A03C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8036D100 0036A040 7C 08 03 A6 */ mtlr r0
/* 8036D104 0036A044 38 21 00 30 */ addi r1, r1, 0x30
/* 8036D108 0036A048 4E 80 00 20 */ blr
.global func_8036D10C
func_8036D10C:
/* 8036D10C 0036A04C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D110 0036A050 7C 08 02 A6 */ mflr r0
/* 8036D114 0036A054 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D118 0036A058 BF 41 00 08 */ stmw r26, 8(r1)
/* 8036D11C 0036A05C 7C 7A 1B 78 */ mr r26, r3
/* 8036D120 0036A060 7C 9B 23 78 */ mr r27, r4
/* 8036D124 0036A064 7C BC 2B 78 */ mr r28, r5
/* 8036D128 0036A068 3B A0 00 00 */ li r29, 0
/* 8036D12C 0036A06C 38 60 00 00 */ li r3, 0
/* 8036D130 0036A070 48 00 00 50 */ b lbl_8036D180
lbl_8036D134:
/* 8036D134 0036A074 80 7A 00 0C */ lwz r3, 0xc(r26)
/* 8036D138 0036A078 3B C0 00 01 */ li r30, 1
/* 8036D13C 0036A07C 80 1A 00 08 */ lwz r0, 8(r26)
/* 8036D140 0036A080 3B E0 00 00 */ li r31, 0
/* 8036D144 0036A084 7C 03 00 50 */ subf r0, r3, r0
/* 8036D148 0036A088 7C 1E 00 40 */ cmplw r30, r0
/* 8036D14C 0036A08C 40 81 00 0C */ ble lbl_8036D158
/* 8036D150 0036A090 3B E0 03 02 */ li r31, 0x302
/* 8036D154 0036A094 7C 1E 03 78 */ mr r30, r0
lbl_8036D158:
/* 8036D158 0036A098 38 83 00 10 */ addi r4, r3, 0x10
/* 8036D15C 0036A09C 7F C5 F3 78 */ mr r5, r30
/* 8036D160 0036A0A0 7C 7B EA 14 */ add r3, r27, r29
/* 8036D164 0036A0A4 7C 9A 22 14 */ add r4, r26, r4
/* 8036D168 0036A0A8 4B C9 64 59 */ bl func_800035C0
/* 8036D16C 0036A0AC 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 8036D170 0036A0B0 7F E3 FB 78 */ mr r3, r31
/* 8036D174 0036A0B4 3B BD 00 01 */ addi r29, r29, 1
/* 8036D178 0036A0B8 7C 00 F2 14 */ add r0, r0, r30
/* 8036D17C 0036A0BC 90 1A 00 0C */ stw r0, 0xc(r26)
lbl_8036D180:
/* 8036D180 0036A0C0 2C 03 00 00 */ cmpwi r3, 0
/* 8036D184 0036A0C4 40 82 00 0C */ bne lbl_8036D190
/* 8036D188 0036A0C8 7C 1D E0 00 */ cmpw r29, r28
/* 8036D18C 0036A0CC 41 80 FF A8 */ blt lbl_8036D134
lbl_8036D190:
/* 8036D190 0036A0D0 BB 41 00 08 */ lmw r26, 8(r1)
/* 8036D194 0036A0D4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D198 0036A0D8 7C 08 03 A6 */ mtlr r0
/* 8036D19C 0036A0DC 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D1A0 0036A0E0 4E 80 00 20 */ blr
.global func_8036D1A4
func_8036D1A4:
/* 8036D1A4 0036A0E4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036D1A8 0036A0E8 7C 08 02 A6 */ mflr r0
/* 8036D1AC 0036A0EC 3C A0 80 45 */ lis r5, lbl_8044D8B8@ha
/* 8036D1B0 0036A0F0 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036D1B4 0036A0F4 BF 61 00 1C */ stmw r27, 0x1c(r1)
/* 8036D1B8 0036A0F8 7C 7B 1B 78 */ mr r27, r3
/* 8036D1BC 0036A0FC 7C 9E 23 78 */ mr r30, r4
/* 8036D1C0 0036A100 80 05 D8 B8 */ lwz r0, lbl_8044D8B8@l(r5)
/* 8036D1C4 0036A104 2C 00 00 00 */ cmpwi r0, 0
/* 8036D1C8 0036A108 41 82 00 0C */ beq lbl_8036D1D4
/* 8036D1CC 0036A10C 7F DF F3 78 */ mr r31, r30
/* 8036D1D0 0036A110 48 00 00 08 */ b lbl_8036D1D8
lbl_8036D1D4:
/* 8036D1D4 0036A114 3B E1 00 08 */ addi r31, r1, 8
lbl_8036D1D8:
/* 8036D1D8 0036A118 80 7B 00 0C */ lwz r3, 0xc(r27)
/* 8036D1DC 0036A11C 3B 80 00 08 */ li r28, 8
/* 8036D1E0 0036A120 80 1B 00 08 */ lwz r0, 8(r27)
/* 8036D1E4 0036A124 3B A0 00 00 */ li r29, 0
/* 8036D1E8 0036A128 7C 03 00 50 */ subf r0, r3, r0
/* 8036D1EC 0036A12C 7C 1C 00 40 */ cmplw r28, r0
/* 8036D1F0 0036A130 40 81 00 0C */ ble lbl_8036D1FC
/* 8036D1F4 0036A134 3B A0 03 02 */ li r29, 0x302
/* 8036D1F8 0036A138 7C 1C 03 78 */ mr r28, r0
lbl_8036D1FC:
/* 8036D1FC 0036A13C 38 83 00 10 */ addi r4, r3, 0x10
/* 8036D200 0036A140 7F E3 FB 78 */ mr r3, r31
/* 8036D204 0036A144 7F 85 E3 78 */ mr r5, r28
/* 8036D208 0036A148 7C 9B 22 14 */ add r4, r27, r4
/* 8036D20C 0036A14C 4B C9 63 B5 */ bl func_800035C0
/* 8036D210 0036A150 80 1B 00 0C */ lwz r0, 0xc(r27)
/* 8036D214 0036A154 3C 60 80 45 */ lis r3, lbl_8044D8B8@ha
/* 8036D218 0036A158 7C 00 E2 14 */ add r0, r0, r28
/* 8036D21C 0036A15C 90 1B 00 0C */ stw r0, 0xc(r27)
/* 8036D220 0036A160 80 03 D8 B8 */ lwz r0, lbl_8044D8B8@l(r3)
/* 8036D224 0036A164 2C 00 00 00 */ cmpwi r0, 0
/* 8036D228 0036A168 40 82 00 4C */ bne lbl_8036D274
/* 8036D22C 0036A16C 2C 1D 00 00 */ cmpwi r29, 0
/* 8036D230 0036A170 40 82 00 44 */ bne lbl_8036D274
/* 8036D234 0036A174 88 1F 00 07 */ lbz r0, 7(r31)
/* 8036D238 0036A178 98 1E 00 00 */ stb r0, 0(r30)
/* 8036D23C 0036A17C 88 1F 00 06 */ lbz r0, 6(r31)
/* 8036D240 0036A180 98 1E 00 01 */ stb r0, 1(r30)
/* 8036D244 0036A184 88 1F 00 05 */ lbz r0, 5(r31)
/* 8036D248 0036A188 98 1E 00 02 */ stb r0, 2(r30)
/* 8036D24C 0036A18C 88 1F 00 04 */ lbz r0, 4(r31)
/* 8036D250 0036A190 98 1E 00 03 */ stb r0, 3(r30)
/* 8036D254 0036A194 88 1F 00 03 */ lbz r0, 3(r31)
/* 8036D258 0036A198 98 1E 00 04 */ stb r0, 4(r30)
/* 8036D25C 0036A19C 88 1F 00 02 */ lbz r0, 2(r31)
/* 8036D260 0036A1A0 98 1E 00 05 */ stb r0, 5(r30)
/* 8036D264 0036A1A4 88 1F 00 01 */ lbz r0, 1(r31)
/* 8036D268 0036A1A8 98 1E 00 06 */ stb r0, 6(r30)
/* 8036D26C 0036A1AC 88 1F 00 00 */ lbz r0, 0(r31)
/* 8036D270 0036A1B0 98 1E 00 07 */ stb r0, 7(r30)
lbl_8036D274:
/* 8036D274 0036A1B4 7F A3 EB 78 */ mr r3, r29
/* 8036D278 0036A1B8 BB 61 00 1C */ lmw r27, 0x1c(r1)
/* 8036D27C 0036A1BC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8036D280 0036A1C0 7C 08 03 A6 */ mtlr r0
/* 8036D284 0036A1C4 38 21 00 30 */ addi r1, r1, 0x30
/* 8036D288 0036A1C8 4E 80 00 20 */ blr
.global func_8036D28C
func_8036D28C:
/* 8036D28C 0036A1CC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036D290 0036A1D0 7C 08 02 A6 */ mflr r0
/* 8036D294 0036A1D4 3C C0 80 45 */ lis r6, lbl_8044D8B8@ha
/* 8036D298 0036A1D8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036D29C 0036A1DC BF 21 00 14 */ stmw r25, 0x14(r1)
/* 8036D2A0 0036A1E0 7C 7B 1B 78 */ mr r27, r3
/* 8036D2A4 0036A1E4 7C BC 2B 78 */ mr r28, r5
/* 8036D2A8 0036A1E8 7C 9E 23 78 */ mr r30, r4
/* 8036D2AC 0036A1EC 3B E6 D8 B8 */ addi r31, r6, lbl_8044D8B8@l
/* 8036D2B0 0036A1F0 3B A0 00 00 */ li r29, 0
/* 8036D2B4 0036A1F4 38 60 00 00 */ li r3, 0
/* 8036D2B8 0036A1F8 48 00 00 AC */ b lbl_8036D364
lbl_8036D2BC:
/* 8036D2BC 0036A1FC 80 1F 00 00 */ lwz r0, 0(r31)
/* 8036D2C0 0036A200 80 7E 00 00 */ lwz r3, 0(r30)
/* 8036D2C4 0036A204 2C 00 00 00 */ cmpwi r0, 0
/* 8036D2C8 0036A208 90 61 00 08 */ stw r3, 8(r1)
/* 8036D2CC 0036A20C 41 82 00 0C */ beq lbl_8036D2D8
/* 8036D2D0 0036A210 38 81 00 08 */ addi r4, r1, 8
/* 8036D2D4 0036A214 48 00 00 28 */ b lbl_8036D2FC
lbl_8036D2D8:
/* 8036D2D8 0036A218 88 C1 00 0B */ lbz r6, 0xb(r1)
/* 8036D2DC 0036A21C 38 81 00 0C */ addi r4, r1, 0xc
/* 8036D2E0 0036A220 88 A1 00 0A */ lbz r5, 0xa(r1)
/* 8036D2E4 0036A224 88 61 00 09 */ lbz r3, 9(r1)
/* 8036D2E8 0036A228 88 01 00 08 */ lbz r0, 8(r1)
/* 8036D2EC 0036A22C 98 C1 00 0C */ stb r6, 0xc(r1)
/* 8036D2F0 0036A230 98 A1 00 0D */ stb r5, 0xd(r1)
/* 8036D2F4 0036A234 98 61 00 0E */ stb r3, 0xe(r1)
/* 8036D2F8 0036A238 98 01 00 0F */ stb r0, 0xf(r1)
lbl_8036D2FC:
/* 8036D2FC 0036A23C 80 BB 00 0C */ lwz r5, 0xc(r27)
/* 8036D300 0036A240 3B 20 00 04 */ li r25, 4
/* 8036D304 0036A244 3B 40 00 00 */ li r26, 0
/* 8036D308 0036A248 20 05 08 80 */ subfic r0, r5, 0x880
/* 8036D30C 0036A24C 28 00 00 04 */ cmplwi r0, 4
/* 8036D310 0036A250 40 80 00 0C */ bge lbl_8036D31C
/* 8036D314 0036A254 3B 40 03 01 */ li r26, 0x301
/* 8036D318 0036A258 7C 19 03 78 */ mr r25, r0
lbl_8036D31C:
/* 8036D31C 0036A25C 28 19 00 01 */ cmplwi r25, 1
/* 8036D320 0036A260 40 82 00 14 */ bne lbl_8036D334
/* 8036D324 0036A264 88 64 00 00 */ lbz r3, 0(r4)
/* 8036D328 0036A268 38 05 00 10 */ addi r0, r5, 0x10
/* 8036D32C 0036A26C 7C 7B 01 AE */ stbx r3, r27, r0
/* 8036D330 0036A270 48 00 00 14 */ b lbl_8036D344
lbl_8036D334:
/* 8036D334 0036A274 38 65 00 10 */ addi r3, r5, 0x10
/* 8036D338 0036A278 7F 25 CB 78 */ mr r5, r25
/* 8036D33C 0036A27C 7C 7B 1A 14 */ add r3, r27, r3
/* 8036D340 0036A280 4B C9 62 81 */ bl func_800035C0
lbl_8036D344:
/* 8036D344 0036A284 80 1B 00 0C */ lwz r0, 0xc(r27)
/* 8036D348 0036A288 7F 43 D3 78 */ mr r3, r26
/* 8036D34C 0036A28C 3B DE 00 04 */ addi r30, r30, 4
/* 8036D350 0036A290 3B BD 00 01 */ addi r29, r29, 1
/* 8036D354 0036A294 7C 00 CA 14 */ add r0, r0, r25
/* 8036D358 0036A298 90 1B 00 0C */ stw r0, 0xc(r27)
/* 8036D35C 0036A29C 80 1B 00 0C */ lwz r0, 0xc(r27)
/* 8036D360 0036A2A0 90 1B 00 08 */ stw r0, 8(r27)
lbl_8036D364:
/* 8036D364 0036A2A4 2C 03 00 00 */ cmpwi r3, 0
/* 8036D368 0036A2A8 40 82 00 0C */ bne lbl_8036D374
/* 8036D36C 0036A2AC 7C 1D E0 00 */ cmpw r29, r28
/* 8036D370 0036A2B0 41 80 FF 4C */ blt lbl_8036D2BC
lbl_8036D374:
/* 8036D374 0036A2B4 BB 21 00 14 */ lmw r25, 0x14(r1)
/* 8036D378 0036A2B8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8036D37C 0036A2BC 7C 08 03 A6 */ mtlr r0
/* 8036D380 0036A2C0 38 21 00 30 */ addi r1, r1, 0x30
/* 8036D384 0036A2C4 4E 80 00 20 */ blr
.global func_8036D388
func_8036D388:
/* 8036D388 0036A2C8 39 20 00 00 */ li r9, 0
/* 8036D38C 0036A2CC 38 00 00 00 */ li r0, 0
/* 8036D390 0036A2D0 48 00 00 48 */ b lbl_8036D3D8
lbl_8036D394:
/* 8036D394 0036A2D4 80 E3 00 0C */ lwz r7, 0xc(r3)
/* 8036D398 0036A2D8 89 04 00 00 */ lbz r8, 0(r4)
/* 8036D39C 0036A2DC 28 07 08 80 */ cmplwi r7, 0x880
/* 8036D3A0 0036A2E0 41 80 00 0C */ blt lbl_8036D3AC
/* 8036D3A4 0036A2E4 38 E0 03 01 */ li r7, 0x301
/* 8036D3A8 0036A2E8 48 00 00 24 */ b lbl_8036D3CC
lbl_8036D3AC:
/* 8036D3AC 0036A2EC 38 C7 00 01 */ addi r6, r7, 1
/* 8036D3B0 0036A2F0 38 07 00 10 */ addi r0, r7, 0x10
/* 8036D3B4 0036A2F4 90 C3 00 0C */ stw r6, 0xc(r3)
/* 8036D3B8 0036A2F8 38 E0 00 00 */ li r7, 0
/* 8036D3BC 0036A2FC 7D 03 01 AE */ stbx r8, r3, r0
/* 8036D3C0 0036A300 80 C3 00 08 */ lwz r6, 8(r3)
/* 8036D3C4 0036A304 38 06 00 01 */ addi r0, r6, 1
/* 8036D3C8 0036A308 90 03 00 08 */ stw r0, 8(r3)
lbl_8036D3CC:
/* 8036D3CC 0036A30C 7C E0 3B 78 */ mr r0, r7
/* 8036D3D0 0036A310 39 29 00 01 */ addi r9, r9, 1
/* 8036D3D4 0036A314 38 84 00 01 */ addi r4, r4, 1
lbl_8036D3D8:
/* 8036D3D8 0036A318 2C 00 00 00 */ cmpwi r0, 0
/* 8036D3DC 0036A31C 40 82 00 0C */ bne lbl_8036D3E8
/* 8036D3E0 0036A320 7C 09 28 00 */ cmpw r9, r5
/* 8036D3E4 0036A324 41 80 FF B0 */ blt lbl_8036D394
lbl_8036D3E8:
/* 8036D3E8 0036A328 7C 03 03 78 */ mr r3, r0
/* 8036D3EC 0036A32C 4E 80 00 20 */ blr
.global func_8036D3F0
func_8036D3F0:
/* 8036D3F0 0036A330 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036D3F4 0036A334 7C 08 02 A6 */ mflr r0
/* 8036D3F8 0036A338 3C 80 80 45 */ lis r4, lbl_8044D8B8@ha
/* 8036D3FC 0036A33C 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036D400 0036A340 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8036D404 0036A344 7C 7F 1B 78 */ mr r31, r3
/* 8036D408 0036A348 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8036D40C 0036A34C 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8036D410 0036A350 80 04 D8 B8 */ lwz r0, lbl_8044D8B8@l(r4)
/* 8036D414 0036A354 90 A1 00 08 */ stw r5, 8(r1)
/* 8036D418 0036A358 2C 00 00 00 */ cmpwi r0, 0
/* 8036D41C 0036A35C 90 C1 00 0C */ stw r6, 0xc(r1)
/* 8036D420 0036A360 41 82 00 0C */ beq lbl_8036D42C
/* 8036D424 0036A364 38 81 00 08 */ addi r4, r1, 8
/* 8036D428 0036A368 48 00 00 48 */ b lbl_8036D470
lbl_8036D42C:
/* 8036D42C 0036A36C 89 41 00 0F */ lbz r10, 0xf(r1)
/* 8036D430 0036A370 38 81 00 10 */ addi r4, r1, 0x10
/* 8036D434 0036A374 89 21 00 0E */ lbz r9, 0xe(r1)
/* 8036D438 0036A378 89 01 00 0D */ lbz r8, 0xd(r1)
/* 8036D43C 0036A37C 88 E1 00 0C */ lbz r7, 0xc(r1)
/* 8036D440 0036A380 88 C1 00 0B */ lbz r6, 0xb(r1)
/* 8036D444 0036A384 88 A1 00 0A */ lbz r5, 0xa(r1)
/* 8036D448 0036A388 88 61 00 09 */ lbz r3, 9(r1)
/* 8036D44C 0036A38C 88 01 00 08 */ lbz r0, 8(r1)
/* 8036D450 0036A390 99 41 00 10 */ stb r10, 0x10(r1)
/* 8036D454 0036A394 99 21 00 11 */ stb r9, 0x11(r1)
/* 8036D458 0036A398 99 01 00 12 */ stb r8, 0x12(r1)
/* 8036D45C 0036A39C 98 E1 00 13 */ stb r7, 0x13(r1)
/* 8036D460 0036A3A0 98 C1 00 14 */ stb r6, 0x14(r1)
/* 8036D464 0036A3A4 98 A1 00 15 */ stb r5, 0x15(r1)
/* 8036D468 0036A3A8 98 61 00 16 */ stb r3, 0x16(r1)
/* 8036D46C 0036A3AC 98 01 00 17 */ stb r0, 0x17(r1)
lbl_8036D470:
/* 8036D470 0036A3B0 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 8036D474 0036A3B4 3B A0 00 08 */ li r29, 8
/* 8036D478 0036A3B8 3B C0 00 00 */ li r30, 0
/* 8036D47C 0036A3BC 20 03 08 80 */ subfic r0, r3, 0x880
/* 8036D480 0036A3C0 28 00 00 08 */ cmplwi r0, 8
/* 8036D484 0036A3C4 40 80 00 0C */ bge lbl_8036D490
/* 8036D488 0036A3C8 3B C0 03 01 */ li r30, 0x301
/* 8036D48C 0036A3CC 7C 1D 03 78 */ mr r29, r0
lbl_8036D490:
/* 8036D490 0036A3D0 28 1D 00 01 */ cmplwi r29, 1
/* 8036D494 0036A3D4 40 82 00 14 */ bne lbl_8036D4A8
/* 8036D498 0036A3D8 88 04 00 00 */ lbz r0, 0(r4)
/* 8036D49C 0036A3DC 7C 7F 1A 14 */ add r3, r31, r3
/* 8036D4A0 0036A3E0 98 03 00 10 */ stb r0, 0x10(r3)
/* 8036D4A4 0036A3E4 48 00 00 14 */ b lbl_8036D4B8
lbl_8036D4A8:
/* 8036D4A8 0036A3E8 38 63 00 10 */ addi r3, r3, 0x10
/* 8036D4AC 0036A3EC 7F A5 EB 78 */ mr r5, r29
/* 8036D4B0 0036A3F0 7C 7F 1A 14 */ add r3, r31, r3
/* 8036D4B4 0036A3F4 4B C9 61 0D */ bl func_800035C0
lbl_8036D4B8:
/* 8036D4B8 0036A3F8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8036D4BC 0036A3FC 7F C3 F3 78 */ mr r3, r30
/* 8036D4C0 0036A400 7C 00 EA 14 */ add r0, r0, r29
/* 8036D4C4 0036A404 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8036D4C8 0036A408 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8036D4CC 0036A40C 90 1F 00 08 */ stw r0, 8(r31)
/* 8036D4D0 0036A410 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8036D4D4 0036A414 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8036D4D8 0036A418 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8036D4DC 0036A41C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8036D4E0 0036A420 7C 08 03 A6 */ mtlr r0
/* 8036D4E4 0036A424 38 21 00 30 */ addi r1, r1, 0x30
/* 8036D4E8 0036A428 4E 80 00 20 */ blr
.global func_8036D4EC
func_8036D4EC:
/* 8036D4EC 0036A42C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D4F0 0036A430 7C 08 02 A6 */ mflr r0
/* 8036D4F4 0036A434 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D4F8 0036A438 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036D4FC 0036A43C 3B E0 00 00 */ li r31, 0
/* 8036D500 0036A440 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036D504 0036A444 7C BE 2B 79 */ or. r30, r5, r5
/* 8036D508 0036A448 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036D50C 0036A44C 7C 7D 1B 78 */ mr r29, r3
/* 8036D510 0036A450 7C 83 23 78 */ mr r3, r4
/* 8036D514 0036A454 40 82 00 0C */ bne lbl_8036D520
/* 8036D518 0036A458 38 60 00 00 */ li r3, 0
/* 8036D51C 0036A45C 48 00 00 40 */ b lbl_8036D55C
lbl_8036D520:
/* 8036D520 0036A460 80 9D 00 0C */ lwz r4, 0xc(r29)
/* 8036D524 0036A464 80 1D 00 08 */ lwz r0, 8(r29)
/* 8036D528 0036A468 7C 04 00 50 */ subf r0, r4, r0
/* 8036D52C 0036A46C 7C 1E 00 40 */ cmplw r30, r0
/* 8036D530 0036A470 40 81 00 0C */ ble lbl_8036D53C
/* 8036D534 0036A474 3B E0 03 02 */ li r31, 0x302
/* 8036D538 0036A478 7C 1E 03 78 */ mr r30, r0
lbl_8036D53C:
/* 8036D53C 0036A47C 38 84 00 10 */ addi r4, r4, 0x10
/* 8036D540 0036A480 7F C5 F3 78 */ mr r5, r30
/* 8036D544 0036A484 7C 9D 22 14 */ add r4, r29, r4
/* 8036D548 0036A488 4B C9 60 79 */ bl func_800035C0
/* 8036D54C 0036A48C 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 8036D550 0036A490 7F E3 FB 78 */ mr r3, r31
/* 8036D554 0036A494 7C 00 F2 14 */ add r0, r0, r30
/* 8036D558 0036A498 90 1D 00 0C */ stw r0, 0xc(r29)
lbl_8036D55C:
/* 8036D55C 0036A49C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D560 0036A4A0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036D564 0036A4A4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036D568 0036A4A8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036D56C 0036A4AC 7C 08 03 A6 */ mtlr r0
/* 8036D570 0036A4B0 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D574 0036A4B4 4E 80 00 20 */ blr
.global func_8036D578
func_8036D578:
/* 8036D578 0036A4B8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D57C 0036A4BC 7C 08 02 A6 */ mflr r0
/* 8036D580 0036A4C0 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D584 0036A4C4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036D588 0036A4C8 3B E0 00 00 */ li r31, 0
/* 8036D58C 0036A4CC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036D590 0036A4D0 7C BE 2B 79 */ or. r30, r5, r5
/* 8036D594 0036A4D4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036D598 0036A4D8 7C 7D 1B 78 */ mr r29, r3
/* 8036D59C 0036A4DC 40 82 00 0C */ bne lbl_8036D5A8
/* 8036D5A0 0036A4E0 38 60 00 00 */ li r3, 0
/* 8036D5A4 0036A4E4 48 00 00 5C */ b lbl_8036D600
lbl_8036D5A8:
/* 8036D5A8 0036A4E8 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8036D5AC 0036A4EC 20 03 08 80 */ subfic r0, r3, 0x880
/* 8036D5B0 0036A4F0 7C 00 F0 40 */ cmplw r0, r30
/* 8036D5B4 0036A4F4 40 80 00 0C */ bge lbl_8036D5C0
/* 8036D5B8 0036A4F8 3B E0 03 01 */ li r31, 0x301
/* 8036D5BC 0036A4FC 7C 1E 03 78 */ mr r30, r0
lbl_8036D5C0:
/* 8036D5C0 0036A500 28 1E 00 01 */ cmplwi r30, 1
/* 8036D5C4 0036A504 40 82 00 14 */ bne lbl_8036D5D8
/* 8036D5C8 0036A508 88 04 00 00 */ lbz r0, 0(r4)
/* 8036D5CC 0036A50C 7C 7D 1A 14 */ add r3, r29, r3
/* 8036D5D0 0036A510 98 03 00 10 */ stb r0, 0x10(r3)
/* 8036D5D4 0036A514 48 00 00 14 */ b lbl_8036D5E8
lbl_8036D5D8:
/* 8036D5D8 0036A518 38 63 00 10 */ addi r3, r3, 0x10
/* 8036D5DC 0036A51C 7F C5 F3 78 */ mr r5, r30
/* 8036D5E0 0036A520 7C 7D 1A 14 */ add r3, r29, r3
/* 8036D5E4 0036A524 4B C9 5F DD */ bl func_800035C0
lbl_8036D5E8:
/* 8036D5E8 0036A528 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 8036D5EC 0036A52C 7F E3 FB 78 */ mr r3, r31
/* 8036D5F0 0036A530 7C 00 F2 14 */ add r0, r0, r30
/* 8036D5F4 0036A534 90 1D 00 0C */ stw r0, 0xc(r29)
/* 8036D5F8 0036A538 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 8036D5FC 0036A53C 90 1D 00 08 */ stw r0, 8(r29)
lbl_8036D600:
/* 8036D600 0036A540 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D604 0036A544 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036D608 0036A548 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036D60C 0036A54C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036D610 0036A550 7C 08 03 A6 */ mtlr r0
/* 8036D614 0036A554 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D618 0036A558 4E 80 00 20 */ blr
.global func_8036D61C
func_8036D61C:
/* 8036D61C 0036A55C 28 04 08 80 */ cmplwi r4, 0x880
/* 8036D620 0036A560 38 A0 00 00 */ li r5, 0
/* 8036D624 0036A564 40 81 00 0C */ ble lbl_8036D630
/* 8036D628 0036A568 38 A0 03 01 */ li r5, 0x301
/* 8036D62C 0036A56C 48 00 00 18 */ b lbl_8036D644
lbl_8036D630:
/* 8036D630 0036A570 90 83 00 0C */ stw r4, 0xc(r3)
/* 8036D634 0036A574 80 03 00 08 */ lwz r0, 8(r3)
/* 8036D638 0036A578 7C 04 00 40 */ cmplw r4, r0
/* 8036D63C 0036A57C 40 81 00 08 */ ble lbl_8036D644
/* 8036D640 0036A580 90 83 00 08 */ stw r4, 8(r3)
lbl_8036D644:
/* 8036D644 0036A584 7C A3 2B 78 */ mr r3, r5
/* 8036D648 0036A588 4E 80 00 20 */ blr
.global func_8036D64C
func_8036D64C:
/* 8036D64C 0036A58C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036D650 0036A590 7C 08 02 A6 */ mflr r0
/* 8036D654 0036A594 2C 04 00 00 */ cmpwi r4, 0
/* 8036D658 0036A598 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036D65C 0036A59C 38 00 00 00 */ li r0, 0
/* 8036D660 0036A5A0 90 03 00 08 */ stw r0, 8(r3)
/* 8036D664 0036A5A4 90 03 00 0C */ stw r0, 0xc(r3)
/* 8036D668 0036A5A8 40 82 00 14 */ bne lbl_8036D67C
/* 8036D66C 0036A5AC 38 63 00 10 */ addi r3, r3, 0x10
/* 8036D670 0036A5B0 38 80 00 00 */ li r4, 0
/* 8036D674 0036A5B4 38 A0 08 80 */ li r5, 0x880
/* 8036D678 0036A5B8 4B C9 5F 19 */ bl func_80003590
lbl_8036D67C:
/* 8036D67C 0036A5BC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036D680 0036A5C0 7C 08 03 A6 */ mtlr r0
/* 8036D684 0036A5C4 38 21 00 10 */ addi r1, r1, 0x10
/* 8036D688 0036A5C8 4E 80 00 20 */ blr
.global func_8036D68C
func_8036D68C:
/* 8036D68C 0036A5CC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036D690 0036A5D0 7C 08 02 A6 */ mflr r0
/* 8036D694 0036A5D4 2C 03 FF FF */ cmpwi r3, -1
/* 8036D698 0036A5D8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036D69C 0036A5DC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036D6A0 0036A5E0 41 82 00 3C */ beq lbl_8036D6DC
/* 8036D6A4 0036A5E4 2C 03 00 00 */ cmpwi r3, 0
/* 8036D6A8 0036A5E8 41 80 00 34 */ blt lbl_8036D6DC
/* 8036D6AC 0036A5EC 2C 03 00 03 */ cmpwi r3, 3
/* 8036D6B0 0036A5F0 40 80 00 2C */ bge lbl_8036D6DC
/* 8036D6B4 0036A5F4 1C 83 08 90 */ mulli r4, r3, 0x890
/* 8036D6B8 0036A5F8 3C 60 80 45 */ lis r3, lbl_8044D8C0@ha
/* 8036D6BC 0036A5FC 38 03 D8 C0 */ addi r0, r3, lbl_8044D8C0@l
/* 8036D6C0 0036A600 7F E0 22 14 */ add r31, r0, r4
/* 8036D6C4 0036A604 7F E3 FB 78 */ mr r3, r31
/* 8036D6C8 0036A608 48 00 1D D9 */ bl func_8036F4A0
/* 8036D6CC 0036A60C 38 00 00 00 */ li r0, 0
/* 8036D6D0 0036A610 7F E3 FB 78 */ mr r3, r31
/* 8036D6D4 0036A614 90 1F 00 04 */ stw r0, 4(r31)
/* 8036D6D8 0036A618 48 00 1D C1 */ bl func_8036F498
lbl_8036D6DC:
/* 8036D6DC 0036A61C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036D6E0 0036A620 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8036D6E4 0036A624 7C 08 03 A6 */ mtlr r0
/* 8036D6E8 0036A628 38 21 00 10 */ addi r1, r1, 0x10
/* 8036D6EC 0036A62C 4E 80 00 20 */ blr
.global func_8036D6F0
func_8036D6F0:
/* 8036D6F0 0036A630 2C 03 00 00 */ cmpwi r3, 0
/* 8036D6F4 0036A634 38 00 00 00 */ li r0, 0
/* 8036D6F8 0036A638 41 80 00 1C */ blt lbl_8036D714
/* 8036D6FC 0036A63C 2C 03 00 03 */ cmpwi r3, 3
/* 8036D700 0036A640 40 80 00 14 */ bge lbl_8036D714
/* 8036D704 0036A644 1C 83 08 90 */ mulli r4, r3, 0x890
/* 8036D708 0036A648 3C 60 80 45 */ lis r3, lbl_8044D8C0@ha
/* 8036D70C 0036A64C 38 03 D8 C0 */ addi r0, r3, lbl_8044D8C0@l
/* 8036D710 0036A650 7C 00 22 14 */ add r0, r0, r4
lbl_8036D714:
/* 8036D714 0036A654 7C 03 03 78 */ mr r3, r0
/* 8036D718 0036A658 4E 80 00 20 */ blr
.global func_8036D71C
func_8036D71C:
/* 8036D71C 0036A65C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D720 0036A660 7C 08 02 A6 */ mflr r0
/* 8036D724 0036A664 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D728 0036A668 38 00 00 00 */ li r0, 0
/* 8036D72C 0036A66C BF 61 00 0C */ stmw r27, 0xc(r1)
/* 8036D730 0036A670 7C 9C 23 78 */ mr r28, r4
/* 8036D734 0036A674 7C 7B 1B 78 */ mr r27, r3
/* 8036D738 0036A678 3B C0 03 00 */ li r30, 0x300
/* 8036D73C 0036A67C 3B A0 00 00 */ li r29, 0
/* 8036D740 0036A680 90 04 00 00 */ stw r0, 0(r4)
/* 8036D744 0036A684 48 00 00 6C */ b lbl_8036D7B0
lbl_8036D748:
/* 8036D748 0036A688 2C 1D 00 00 */ cmpwi r29, 0
/* 8036D74C 0036A68C 3B E0 00 00 */ li r31, 0
/* 8036D750 0036A690 41 80 00 1C */ blt lbl_8036D76C
/* 8036D754 0036A694 2C 1D 00 03 */ cmpwi r29, 3
/* 8036D758 0036A698 40 80 00 14 */ bge lbl_8036D76C
/* 8036D75C 0036A69C 1C 9D 08 90 */ mulli r4, r29, 0x890
/* 8036D760 0036A6A0 3C 60 80 45 */ lis r3, lbl_8044D8C0@ha
/* 8036D764 0036A6A4 38 03 D8 C0 */ addi r0, r3, lbl_8044D8C0@l
/* 8036D768 0036A6A8 7F E0 22 14 */ add r31, r0, r4
lbl_8036D76C:
/* 8036D76C 0036A6AC 7F E3 FB 78 */ mr r3, r31
/* 8036D770 0036A6B0 48 00 1D 31 */ bl func_8036F4A0
/* 8036D774 0036A6B4 80 1F 00 04 */ lwz r0, 4(r31)
/* 8036D778 0036A6B8 2C 00 00 00 */ cmpwi r0, 0
/* 8036D77C 0036A6BC 40 82 00 28 */ bne lbl_8036D7A4
/* 8036D780 0036A6C0 38 60 00 00 */ li r3, 0
/* 8036D784 0036A6C4 38 00 00 01 */ li r0, 1
/* 8036D788 0036A6C8 90 7F 00 08 */ stw r3, 8(r31)
/* 8036D78C 0036A6CC 3B C0 00 00 */ li r30, 0
/* 8036D790 0036A6D0 90 7F 00 0C */ stw r3, 0xc(r31)
/* 8036D794 0036A6D4 90 1F 00 04 */ stw r0, 4(r31)
/* 8036D798 0036A6D8 93 FC 00 00 */ stw r31, 0(r28)
/* 8036D79C 0036A6DC 93 BB 00 00 */ stw r29, 0(r27)
/* 8036D7A0 0036A6E0 3B A0 00 03 */ li r29, 3
lbl_8036D7A4:
/* 8036D7A4 0036A6E4 7F E3 FB 78 */ mr r3, r31
/* 8036D7A8 0036A6E8 48 00 1C F1 */ bl func_8036F498
/* 8036D7AC 0036A6EC 3B BD 00 01 */ addi r29, r29, 1
lbl_8036D7B0:
/* 8036D7B0 0036A6F0 2C 1D 00 03 */ cmpwi r29, 3
/* 8036D7B4 0036A6F4 41 80 FF 94 */ blt lbl_8036D748
/* 8036D7B8 0036A6F8 2C 1E 03 00 */ cmpwi r30, 0x300
/* 8036D7BC 0036A6FC 40 82 00 10 */ bne lbl_8036D7CC
/* 8036D7C0 0036A700 3C 60 80 3A */ lis r3, lbl_803A26E0@ha
/* 8036D7C4 0036A704 38 63 26 E0 */ addi r3, r3, lbl_803A26E0@l
/* 8036D7C8 0036A708 48 00 03 4D */ bl func_8036DB14
lbl_8036D7CC:
/* 8036D7CC 0036A70C 7F C3 F3 78 */ mr r3, r30
/* 8036D7D0 0036A710 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 8036D7D4 0036A714 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D7D8 0036A718 7C 08 03 A6 */ mtlr r0
/* 8036D7DC 0036A71C 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D7E0 0036A720 4E 80 00 20 */ blr
.global func_8036D7E4
func_8036D7E4:
/* 8036D7E4 0036A724 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D7E8 0036A728 7C 08 02 A6 */ mflr r0
/* 8036D7EC 0036A72C 3C 60 80 45 */ lis r3, lbl_8044D8C0@ha
/* 8036D7F0 0036A730 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D7F4 0036A734 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036D7F8 0036A738 3B E0 00 00 */ li r31, 0
/* 8036D7FC 0036A73C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036D800 0036A740 3B C3 D8 C0 */ addi r30, r3, lbl_8044D8C0@l
/* 8036D804 0036A744 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036D808 0036A748 3B A0 00 00 */ li r29, 0
lbl_8036D80C:
/* 8036D80C 0036A74C 7F C3 F3 78 */ mr r3, r30
/* 8036D810 0036A750 48 00 1C 99 */ bl func_8036F4A8
/* 8036D814 0036A754 7F C3 F3 78 */ mr r3, r30
/* 8036D818 0036A758 48 00 1C 89 */ bl func_8036F4A0
/* 8036D81C 0036A75C 93 FE 00 04 */ stw r31, 4(r30)
/* 8036D820 0036A760 7F C3 F3 78 */ mr r3, r30
/* 8036D824 0036A764 48 00 1C 75 */ bl func_8036F498
/* 8036D828 0036A768 3B BD 00 01 */ addi r29, r29, 1
/* 8036D82C 0036A76C 3B DE 08 90 */ addi r30, r30, 0x890
/* 8036D830 0036A770 2C 1D 00 03 */ cmpwi r29, 3
/* 8036D834 0036A774 41 80 FF D8 */ blt lbl_8036D80C
/* 8036D838 0036A778 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D83C 0036A77C 38 60 00 00 */ li r3, 0
/* 8036D840 0036A780 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036D844 0036A784 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036D848 0036A788 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036D84C 0036A78C 7C 08 03 A6 */ mtlr r0
/* 8036D850 0036A790 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D854 0036A794 4E 80 00 20 */ blr
.global func_8036D858
func_8036D858:
/* 8036D858 0036A798 38 60 00 00 */ li r3, 0
/* 8036D85C 0036A79C 4E 80 00 20 */ blr
.global func_8036D860
func_8036D860:
/* 8036D860 0036A7A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036D864 0036A7A4 7C 08 02 A6 */ mflr r0
/* 8036D868 0036A7A8 3C 60 80 45 */ lis r3, lbl_8044F270@ha
/* 8036D86C 0036A7AC 3C 80 80 3A */ lis r4, lbl_803A2700@ha
/* 8036D870 0036A7B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036D874 0036A7B4 38 C3 F2 70 */ addi r6, r3, lbl_8044F270@l
/* 8036D878 0036A7B8 38 00 00 00 */ li r0, 0
/* 8036D87C 0036A7BC 38 60 FF FF */ li r3, -1
/* 8036D880 0036A7C0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036D884 0036A7C4 3B E4 27 00 */ addi r31, r4, lbl_803A2700@l
/* 8036D888 0036A7C8 38 9F 00 00 */ addi r4, r31, 0
/* 8036D88C 0036A7CC 38 A0 00 40 */ li r5, 0x40
/* 8036D890 0036A7D0 90 66 00 00 */ stw r3, 0(r6)
/* 8036D894 0036A7D4 38 60 00 01 */ li r3, 1
/* 8036D898 0036A7D8 90 06 00 08 */ stw r0, 8(r6)
/* 8036D89C 0036A7DC 90 06 00 0C */ stw r0, 0xc(r6)
/* 8036D8A0 0036A7E0 4C C6 31 82 */ crclr 6
/* 8036D8A4 0036A7E4 48 00 53 B1 */ bl func_80372C54
/* 8036D8A8 0036A7E8 38 9F 00 24 */ addi r4, r31, 0x24
/* 8036D8AC 0036A7EC 38 60 00 01 */ li r3, 1
/* 8036D8B0 0036A7F0 38 A0 00 40 */ li r5, 0x40
/* 8036D8B4 0036A7F4 4C C6 31 82 */ crclr 6
/* 8036D8B8 0036A7F8 48 00 53 9D */ bl func_80372C54
/* 8036D8BC 0036A7FC 38 9F 00 48 */ addi r4, r31, 0x48
/* 8036D8C0 0036A800 38 60 00 01 */ li r3, 1
/* 8036D8C4 0036A804 38 A0 00 40 */ li r5, 0x40
/* 8036D8C8 0036A808 4C C6 31 82 */ crclr 6
/* 8036D8CC 0036A80C 48 00 53 89 */ bl func_80372C54
/* 8036D8D0 0036A810 38 9F 00 6C */ addi r4, r31, 0x6c
/* 8036D8D4 0036A814 38 60 00 01 */ li r3, 1
/* 8036D8D8 0036A818 38 A0 00 40 */ li r5, 0x40
/* 8036D8DC 0036A81C 4C C6 31 82 */ crclr 6
/* 8036D8E0 0036A820 48 00 53 75 */ bl func_80372C54
/* 8036D8E4 0036A824 38 9F 00 8C */ addi r4, r31, 0x8c
/* 8036D8E8 0036A828 38 60 00 01 */ li r3, 1
/* 8036D8EC 0036A82C 38 A0 00 40 */ li r5, 0x40
/* 8036D8F0 0036A830 4C C6 31 82 */ crclr 6
/* 8036D8F4 0036A834 48 00 53 61 */ bl func_80372C54
/* 8036D8F8 0036A838 38 9F 00 AC */ addi r4, r31, 0xac
/* 8036D8FC 0036A83C 38 60 00 01 */ li r3, 1
/* 8036D900 0036A840 38 A0 00 40 */ li r5, 0x40
/* 8036D904 0036A844 4C C6 31 82 */ crclr 6
/* 8036D908 0036A848 48 00 53 4D */ bl func_80372C54
/* 8036D90C 0036A84C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036D910 0036A850 38 60 00 00 */ li r3, 0
/* 8036D914 0036A854 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8036D918 0036A858 7C 08 03 A6 */ mtlr r0
/* 8036D91C 0036A85C 38 21 00 10 */ addi r1, r1, 0x10
/* 8036D920 0036A860 4E 80 00 20 */ blr
.global func_8036D924
func_8036D924:
/* 8036D924 0036A864 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D928 0036A868 7C 08 02 A6 */ mflr r0
/* 8036D92C 0036A86C 38 80 00 02 */ li r4, 2
/* 8036D930 0036A870 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D934 0036A874 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036D938 0036A878 7C 7F 1B 78 */ mr r31, r3
/* 8036D93C 0036A87C 38 61 00 08 */ addi r3, r1, 8
/* 8036D940 0036A880 4B FF F2 FD */ bl func_8036CC3C
/* 8036D944 0036A884 3C 60 80 45 */ lis r3, lbl_8044F270@ha
/* 8036D948 0036A888 38 00 FF FF */ li r0, -1
/* 8036D94C 0036A88C 38 83 F2 70 */ addi r4, r3, lbl_8044F270@l
/* 8036D950 0036A890 93 E1 00 10 */ stw r31, 0x10(r1)
/* 8036D954 0036A894 38 61 00 08 */ addi r3, r1, 8
/* 8036D958 0036A898 90 04 00 00 */ stw r0, 0(r4)
/* 8036D95C 0036A89C 4B FF F2 F9 */ bl func_8036CC54
/* 8036D960 0036A8A0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D964 0036A8A4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036D968 0036A8A8 7C 08 03 A6 */ mtlr r0
/* 8036D96C 0036A8AC 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D970 0036A8B0 4E 80 00 20 */ blr
.global func_8036D974
func_8036D974:
/* 8036D974 0036A8B4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036D978 0036A8B8 7C 08 02 A6 */ mflr r0
/* 8036D97C 0036A8BC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036D980 0036A8C0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036D984 0036A8C4 48 00 00 51 */ bl func_8036D9D4
/* 8036D988 0036A8C8 7C 7F 1B 78 */ mr r31, r3
/* 8036D98C 0036A8CC 2C 1F FF FF */ cmpwi r31, -1
/* 8036D990 0036A8D0 41 82 00 30 */ beq lbl_8036D9C0
/* 8036D994 0036A8D4 4B FF FD 5D */ bl func_8036D6F0
/* 8036D998 0036A8D8 38 61 00 08 */ addi r3, r1, 8
/* 8036D99C 0036A8DC 38 80 00 02 */ li r4, 2
/* 8036D9A0 0036A8E0 4B FF F2 9D */ bl func_8036CC3C
/* 8036D9A4 0036A8E4 3C 60 80 45 */ lis r3, lbl_8044F270@ha
/* 8036D9A8 0036A8E8 38 00 FF FF */ li r0, -1
/* 8036D9AC 0036A8EC 38 83 F2 70 */ addi r4, r3, lbl_8044F270@l
/* 8036D9B0 0036A8F0 93 E1 00 10 */ stw r31, 0x10(r1)
/* 8036D9B4 0036A8F4 38 61 00 08 */ addi r3, r1, 8
/* 8036D9B8 0036A8F8 90 04 00 00 */ stw r0, 0(r4)
/* 8036D9BC 0036A8FC 4B FF F2 99 */ bl func_8036CC54
lbl_8036D9C0:
/* 8036D9C0 0036A900 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036D9C4 0036A904 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036D9C8 0036A908 7C 08 03 A6 */ mtlr r0
/* 8036D9CC 0036A90C 38 21 00 20 */ addi r1, r1, 0x20
/* 8036D9D0 0036A910 4E 80 00 20 */ blr
.global func_8036D9D4
func_8036D9D4:
/* 8036D9D4 0036A914 94 21 F7 20 */ stwu r1, -0x8e0(r1)
/* 8036D9D8 0036A918 7C 08 02 A6 */ mflr r0
/* 8036D9DC 0036A91C 3C 60 80 3A */ lis r3, lbl_803A2700@ha
/* 8036D9E0 0036A920 90 01 08 E4 */ stw r0, 0x8e4(r1)
/* 8036D9E4 0036A924 93 E1 08 DC */ stw r31, 0x8dc(r1)
/* 8036D9E8 0036A928 3B E3 27 00 */ addi r31, r3, lbl_803A2700@l
/* 8036D9EC 0036A92C 93 C1 08 D8 */ stw r30, 0x8d8(r1)
/* 8036D9F0 0036A930 48 00 43 F1 */ bl func_80371DE0
/* 8036D9F4 0036A934 2C 03 00 00 */ cmpwi r3, 0
/* 8036D9F8 0036A938 41 81 00 0C */ bgt lbl_8036DA04
/* 8036D9FC 0036A93C 38 60 FF FF */ li r3, -1
/* 8036DA00 0036A940 48 00 00 F8 */ b lbl_8036DAF8
lbl_8036DA04:
/* 8036DA04 0036A944 38 61 00 0C */ addi r3, r1, 0xc
/* 8036DA08 0036A948 38 81 00 08 */ addi r4, r1, 8
/* 8036DA0C 0036A94C 4B FF FD 11 */ bl func_8036D71C
/* 8036DA10 0036A950 7C 7E 1B 78 */ mr r30, r3
/* 8036DA14 0036A954 38 9F 00 D0 */ addi r4, r31, 0xd0
/* 8036DA18 0036A958 38 60 00 04 */ li r3, 4
/* 8036DA1C 0036A95C 7F C5 F3 78 */ mr r5, r30
/* 8036DA20 0036A960 4C C6 31 82 */ crclr 6
/* 8036DA24 0036A964 48 00 52 31 */ bl func_80372C54
/* 8036DA28 0036A968 80 61 00 08 */ lwz r3, 8(r1)
/* 8036DA2C 0036A96C 38 80 00 00 */ li r4, 0
/* 8036DA30 0036A970 4B FF FB ED */ bl func_8036D61C
/* 8036DA34 0036A974 38 61 00 10 */ addi r3, r1, 0x10
/* 8036DA38 0036A978 38 80 00 40 */ li r4, 0x40
/* 8036DA3C 0036A97C 48 00 43 69 */ bl func_80371DA4
/* 8036DA40 0036A980 2C 03 00 00 */ cmpwi r3, 0
/* 8036DA44 0036A984 40 82 00 80 */ bne lbl_8036DAC4
/* 8036DA48 0036A988 80 61 00 08 */ lwz r3, 8(r1)
/* 8036DA4C 0036A98C 38 81 00 10 */ addi r4, r1, 0x10
/* 8036DA50 0036A990 38 A0 00 40 */ li r5, 0x40
/* 8036DA54 0036A994 4B FF F9 35 */ bl func_8036D388
/* 8036DA58 0036A998 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036DA5C 0036A99C 83 C1 00 0C */ lwz r30, 0xc(r1)
/* 8036DA60 0036A9A0 34 A3 FF C0 */ addic. r5, r3, -64
/* 8036DA64 0036A9A4 40 81 00 7C */ ble lbl_8036DAE0
/* 8036DA68 0036A9A8 38 9F 00 F4 */ addi r4, r31, 0xf4
/* 8036DA6C 0036A9AC 38 60 00 01 */ li r3, 1
/* 8036DA70 0036A9B0 4C C6 31 82 */ crclr 6
/* 8036DA74 0036A9B4 48 00 51 E1 */ bl func_80372C54
/* 8036DA78 0036A9B8 80 81 00 10 */ lwz r4, 0x10(r1)
/* 8036DA7C 0036A9BC 38 61 00 50 */ addi r3, r1, 0x50
/* 8036DA80 0036A9C0 38 84 FF C0 */ addi r4, r4, -64
/* 8036DA84 0036A9C4 48 00 43 21 */ bl func_80371DA4
/* 8036DA88 0036A9C8 2C 03 00 00 */ cmpwi r3, 0
/* 8036DA8C 0036A9CC 40 82 00 18 */ bne lbl_8036DAA4
/* 8036DA90 0036A9D0 80 61 00 08 */ lwz r3, 8(r1)
/* 8036DA94 0036A9D4 38 81 00 50 */ addi r4, r1, 0x50
/* 8036DA98 0036A9D8 80 A1 00 10 */ lwz r5, 0x10(r1)
/* 8036DA9C 0036A9DC 4B FF F8 ED */ bl func_8036D388
/* 8036DAA0 0036A9E0 48 00 00 40 */ b lbl_8036DAE0
lbl_8036DAA4:
/* 8036DAA4 0036A9E4 38 9F 01 10 */ addi r4, r31, 0x110
/* 8036DAA8 0036A9E8 38 60 00 08 */ li r3, 8
/* 8036DAAC 0036A9EC 4C C6 31 82 */ crclr 6
/* 8036DAB0 0036A9F0 48 00 51 A5 */ bl func_80372C54
/* 8036DAB4 0036A9F4 7F C3 F3 78 */ mr r3, r30
/* 8036DAB8 0036A9F8 4B FF FB D5 */ bl func_8036D68C
/* 8036DABC 0036A9FC 3B C0 FF FF */ li r30, -1
/* 8036DAC0 0036AA00 48 00 00 20 */ b lbl_8036DAE0
lbl_8036DAC4:
/* 8036DAC4 0036AA04 38 9F 01 44 */ addi r4, r31, 0x144
/* 8036DAC8 0036AA08 38 60 00 08 */ li r3, 8
/* 8036DACC 0036AA0C 4C C6 31 82 */ crclr 6
/* 8036DAD0 0036AA10 48 00 51 85 */ bl func_80372C54
/* 8036DAD4 0036AA14 7F C3 F3 78 */ mr r3, r30
/* 8036DAD8 0036AA18 4B FF FB B5 */ bl func_8036D68C
/* 8036DADC 0036AA1C 3B C0 FF FF */ li r30, -1
lbl_8036DAE0:
/* 8036DAE0 0036AA20 7F C5 F3 78 */ mr r5, r30
/* 8036DAE4 0036AA24 38 9F 01 6C */ addi r4, r31, 0x16c
/* 8036DAE8 0036AA28 38 60 00 01 */ li r3, 1
/* 8036DAEC 0036AA2C 4C C6 31 82 */ crclr 6
/* 8036DAF0 0036AA30 48 00 51 65 */ bl func_80372C54
/* 8036DAF4 0036AA34 7F C3 F3 78 */ mr r3, r30
lbl_8036DAF8:
/* 8036DAF8 0036AA38 80 01 08 E4 */ lwz r0, 0x8e4(r1)
/* 8036DAFC 0036AA3C 83 E1 08 DC */ lwz r31, 0x8dc(r1)
/* 8036DB00 0036AA40 83 C1 08 D8 */ lwz r30, 0x8d8(r1)
/* 8036DB04 0036AA44 7C 08 03 A6 */ mtlr r0
/* 8036DB08 0036AA48 38 21 08 E0 */ addi r1, r1, 0x8e0
/* 8036DB0C 0036AA4C 4E 80 00 20 */ blr
.global func_8036DB10
func_8036DB10:
/* 8036DB10 0036AA50 4E 80 00 20 */ blr
.global func_8036DB14
func_8036DB14:
/* 8036DB14 0036AA54 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036DB18 0036AA58 7C 08 02 A6 */ mflr r0
/* 8036DB1C 0036AA5C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036DB20 0036AA60 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036DB24 0036AA64 3B E0 00 00 */ li r31, 0
/* 8036DB28 0036AA68 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036DB2C 0036AA6C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8036DB30 0036AA70 7C 7D 1B 78 */ mr r29, r3
/* 8036DB34 0036AA74 38 60 00 00 */ li r3, 0
/* 8036DB38 0036AA78 48 00 00 30 */ b lbl_8036DB68
lbl_8036DB3C:
/* 8036DB3C 0036AA7C 48 00 11 91 */ bl func_8036ECCC
/* 8036DB40 0036AA80 9B C1 00 08 */ stb r30, 8(r1)
/* 8036DB44 0036AA84 7C 7E 1B 78 */ mr r30, r3
/* 8036DB48 0036AA88 38 60 00 00 */ li r3, 0
/* 8036DB4C 0036AA8C 9B E1 00 09 */ stb r31, 9(r1)
/* 8036DB50 0036AA90 48 00 11 71 */ bl func_8036ECC0
/* 8036DB54 0036AA94 38 61 00 08 */ addi r3, r1, 8
/* 8036DB58 0036AA98 4B C9 8F 65 */ bl OSReport
/* 8036DB5C 0036AA9C 7F C3 F3 78 */ mr r3, r30
/* 8036DB60 0036AAA0 48 00 11 61 */ bl func_8036ECC0
/* 8036DB64 0036AAA4 38 60 00 00 */ li r3, 0
lbl_8036DB68:
/* 8036DB68 0036AAA8 2C 03 00 00 */ cmpwi r3, 0
/* 8036DB6C 0036AAAC 40 82 00 14 */ bne lbl_8036DB80
/* 8036DB70 0036AAB0 88 1D 00 00 */ lbz r0, 0(r29)
/* 8036DB74 0036AAB4 3B BD 00 01 */ addi r29, r29, 1
/* 8036DB78 0036AAB8 7C 1E 07 75 */ extsb. r30, r0
/* 8036DB7C 0036AABC 40 82 FF C0 */ bne lbl_8036DB3C
lbl_8036DB80:
/* 8036DB80 0036AAC0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036DB84 0036AAC4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036DB88 0036AAC8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036DB8C 0036AACC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036DB90 0036AAD0 7C 08 03 A6 */ mtlr r0
/* 8036DB94 0036AAD4 38 21 00 20 */ addi r1, r1, 0x20
/* 8036DB98 0036AAD8 4E 80 00 20 */ blr
.global func_8036DB9C
func_8036DB9C:
/* 8036DB9C 0036AADC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036DBA0 0036AAE0 7C 08 02 A6 */ mflr r0
/* 8036DBA4 0036AAE4 38 80 00 00 */ li r4, 0
/* 8036DBA8 0036AAE8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036DBAC 0036AAEC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036DBB0 0036AAF0 3B E0 05 00 */ li r31, 0x500
/* 8036DBB4 0036AAF4 93 C1 00 08 */ stw r30, 8(r1)
/* 8036DBB8 0036AAF8 7C 7E 1B 78 */ mr r30, r3
/* 8036DBBC 0036AAFC 4B FF FA 61 */ bl func_8036D61C
/* 8036DBC0 0036AB00 3C 60 80 3A */ lis r3, lbl_803A2890@ha
/* 8036DBC4 0036AB04 88 BE 00 14 */ lbz r5, 0x14(r30)
/* 8036DBC8 0036AB08 38 83 28 90 */ addi r4, r3, lbl_803A2890@l
/* 8036DBCC 0036AB0C 38 60 00 01 */ li r3, 1
/* 8036DBD0 0036AB10 4C C6 31 82 */ crclr 6
/* 8036DBD4 0036AB14 48 00 50 81 */ bl func_80372C54
/* 8036DBD8 0036AB18 88 1E 00 14 */ lbz r0, 0x14(r30)
/* 8036DBDC 0036AB1C 28 00 00 1A */ cmplwi r0, 0x1a
/* 8036DBE0 0036AB20 41 81 00 F8 */ bgt lbl_8036DCD8
/* 8036DBE4 0036AB24 3C 60 80 3D */ lis r3, lbl_803D3190@ha
/* 8036DBE8 0036AB28 54 00 10 3A */ slwi r0, r0, 2
/* 8036DBEC 0036AB2C 38 63 31 90 */ addi r3, r3, lbl_803D3190@l
/* 8036DBF0 0036AB30 7C 03 00 2E */ lwzx r0, r3, r0
/* 8036DBF4 0036AB34 7C 09 03 A6 */ mtctr r0
/* 8036DBF8 0036AB38 4E 80 04 20 */ bctr
/* 8036DBFC 0036AB3C 7F C3 F3 78 */ mr r3, r30
/* 8036DC00 0036AB40 48 00 10 5D */ bl func_8036EC5C
/* 8036DC04 0036AB44 7C 7F 1B 78 */ mr r31, r3
/* 8036DC08 0036AB48 48 00 00 D0 */ b lbl_8036DCD8
/* 8036DC0C 0036AB4C 7F C3 F3 78 */ mr r3, r30
/* 8036DC10 0036AB50 48 00 0F D5 */ bl func_8036EBE4
/* 8036DC14 0036AB54 7C 7F 1B 78 */ mr r31, r3
/* 8036DC18 0036AB58 48 00 00 C0 */ b lbl_8036DCD8
/* 8036DC1C 0036AB5C 7F C3 F3 78 */ mr r3, r30
/* 8036DC20 0036AB60 48 00 0F 6D */ bl func_8036EB8C
/* 8036DC24 0036AB64 7C 7F 1B 78 */ mr r31, r3
/* 8036DC28 0036AB68 48 00 00 B0 */ b lbl_8036DCD8
/* 8036DC2C 0036AB6C 7F C3 F3 78 */ mr r3, r30
/* 8036DC30 0036AB70 48 00 0F 05 */ bl func_8036EB34
/* 8036DC34 0036AB74 7C 7F 1B 78 */ mr r31, r3
/* 8036DC38 0036AB78 48 00 00 A0 */ b lbl_8036DCD8
/* 8036DC3C 0036AB7C 7F C3 F3 78 */ mr r3, r30
/* 8036DC40 0036AB80 48 00 0E ED */ bl func_8036EB2C
/* 8036DC44 0036AB84 7C 7F 1B 78 */ mr r31, r3
/* 8036DC48 0036AB88 48 00 00 90 */ b lbl_8036DCD8
/* 8036DC4C 0036AB8C 7F C3 F3 78 */ mr r3, r30
/* 8036DC50 0036AB90 48 00 0E D5 */ bl func_8036EB24
/* 8036DC54 0036AB94 7C 7F 1B 78 */ mr r31, r3
/* 8036DC58 0036AB98 48 00 00 80 */ b lbl_8036DCD8
/* 8036DC5C 0036AB9C 7F C3 F3 78 */ mr r3, r30
/* 8036DC60 0036ABA0 48 00 0C 81 */ bl func_8036E8E0
/* 8036DC64 0036ABA4 7C 7F 1B 78 */ mr r31, r3
/* 8036DC68 0036ABA8 48 00 00 70 */ b lbl_8036DCD8
/* 8036DC6C 0036ABAC 7F C3 F3 78 */ mr r3, r30
/* 8036DC70 0036ABB0 48 00 0A 35 */ bl func_8036E6A4
/* 8036DC74 0036ABB4 7C 7F 1B 78 */ mr r31, r3
/* 8036DC78 0036ABB8 48 00 00 60 */ b lbl_8036DCD8
/* 8036DC7C 0036ABBC 7F C3 F3 78 */ mr r3, r30
/* 8036DC80 0036ABC0 48 00 07 45 */ bl func_8036E3C4
/* 8036DC84 0036ABC4 7C 7F 1B 78 */ mr r31, r3
/* 8036DC88 0036ABC8 48 00 00 50 */ b lbl_8036DCD8
/* 8036DC8C 0036ABCC 7F C3 F3 78 */ mr r3, r30
/* 8036DC90 0036ABD0 48 00 04 A5 */ bl func_8036E134
/* 8036DC94 0036ABD4 7C 7F 1B 78 */ mr r31, r3
/* 8036DC98 0036ABD8 48 00 00 40 */ b lbl_8036DCD8
/* 8036DC9C 0036ABDC 7F C3 F3 78 */ mr r3, r30
/* 8036DCA0 0036ABE0 48 00 03 E5 */ bl func_8036E084
/* 8036DCA4 0036ABE4 7C 7F 1B 78 */ mr r31, r3
/* 8036DCA8 0036ABE8 48 00 00 30 */ b lbl_8036DCD8
/* 8036DCAC 0036ABEC 7F C3 F3 78 */ mr r3, r30
/* 8036DCB0 0036ABF0 48 00 01 B5 */ bl func_8036DE64
/* 8036DCB4 0036ABF4 7C 7F 1B 78 */ mr r31, r3
/* 8036DCB8 0036ABF8 48 00 00 20 */ b lbl_8036DCD8
/* 8036DCBC 0036ABFC 7F C3 F3 78 */ mr r3, r30
/* 8036DCC0 0036AC00 48 00 00 FD */ bl func_8036DDBC
/* 8036DCC4 0036AC04 7C 7F 1B 78 */ mr r31, r3
/* 8036DCC8 0036AC08 48 00 00 10 */ b lbl_8036DCD8
/* 8036DCCC 0036AC0C 7F C3 F3 78 */ mr r3, r30
/* 8036DCD0 0036AC10 48 00 00 45 */ bl func_8036DD14
/* 8036DCD4 0036AC14 7C 7F 1B 78 */ mr r31, r3
lbl_8036DCD8:
/* 8036DCD8 0036AC18 3C 60 80 3A */ lis r3, lbl_803A28AC@ha
/* 8036DCDC 0036AC1C 7F E5 FB 78 */ mr r5, r31
/* 8036DCE0 0036AC20 38 83 28 AC */ addi r4, r3, lbl_803A28AC@l
/* 8036DCE4 0036AC24 38 60 00 01 */ li r3, 1
/* 8036DCE8 0036AC28 4C C6 31 82 */ crclr 6
/* 8036DCEC 0036AC2C 48 00 4F 69 */ bl func_80372C54
/* 8036DCF0 0036AC30 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036DCF4 0036AC34 7F E3 FB 78 */ mr r3, r31
/* 8036DCF8 0036AC38 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8036DCFC 0036AC3C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8036DD00 0036AC40 7C 08 03 A6 */ mtlr r0
/* 8036DD04 0036AC44 38 21 00 10 */ addi r1, r1, 0x10
/* 8036DD08 0036AC48 4E 80 00 20 */ blr
.global func_8036DD0C
func_8036DD0C:
/* 8036DD0C 0036AC4C 38 60 00 00 */ li r3, 0
/* 8036DD10 0036AC50 4E 80 00 20 */ blr
.global func_8036DD14
func_8036DD14:
/* 8036DD14 0036AC54 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8036DD18 0036AC58 7C 08 02 A6 */ mflr r0
/* 8036DD1C 0036AC5C 3C 80 80 3A */ lis r4, lbl_803A28D0@ha
/* 8036DD20 0036AC60 90 01 00 54 */ stw r0, 0x54(r1)
/* 8036DD24 0036AC64 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8036DD28 0036AC68 3B E4 28 D0 */ addi r31, r4, lbl_803A28D0@l
/* 8036DD2C 0036AC6C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8036DD30 0036AC70 88 03 00 18 */ lbz r0, 0x18(r3)
/* 8036DD34 0036AC74 8B C3 00 1C */ lbz r30, 0x1c(r3)
/* 8036DD38 0036AC78 28 00 00 01 */ cmplwi r0, 1
/* 8036DD3C 0036AC7C 40 82 00 30 */ bne lbl_8036DD6C
/* 8036DD40 0036AC80 38 7F 00 00 */ addi r3, r31, 0
/* 8036DD44 0036AC84 4B FF FD D1 */ bl func_8036DB14
/* 8036DD48 0036AC88 28 1E 00 00 */ cmplwi r30, 0
/* 8036DD4C 0036AC8C 41 82 00 10 */ beq lbl_8036DD5C
/* 8036DD50 0036AC90 38 7F 00 20 */ addi r3, r31, 0x20
/* 8036DD54 0036AC94 4B FF FD C1 */ bl func_8036DB14
/* 8036DD58 0036AC98 48 00 00 0C */ b lbl_8036DD64
lbl_8036DD5C:
/* 8036DD5C 0036AC9C 38 7F 00 28 */ addi r3, r31, 0x28
/* 8036DD60 0036ACA0 4B FF FD B5 */ bl func_8036DB14
lbl_8036DD64:
/* 8036DD64 0036ACA4 7F C3 F3 78 */ mr r3, r30
/* 8036DD68 0036ACA8 48 00 44 29 */ bl func_80372190
lbl_8036DD6C:
/* 8036DD6C 0036ACAC 38 61 00 08 */ addi r3, r1, 8
/* 8036DD70 0036ACB0 38 80 00 00 */ li r4, 0
/* 8036DD74 0036ACB4 38 A0 00 40 */ li r5, 0x40
/* 8036DD78 0036ACB8 4B C9 56 E1 */ bl func_80003458
/* 8036DD7C 0036ACBC 38 60 00 80 */ li r3, 0x80
/* 8036DD80 0036ACC0 38 A0 00 40 */ li r5, 0x40
/* 8036DD84 0036ACC4 38 00 00 00 */ li r0, 0
/* 8036DD88 0036ACC8 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036DD8C 0036ACCC 38 61 00 08 */ addi r3, r1, 8
/* 8036DD90 0036ACD0 38 80 00 40 */ li r4, 0x40
/* 8036DD94 0036ACD4 90 A1 00 08 */ stw r5, 8(r1)
/* 8036DD98 0036ACD8 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036DD9C 0036ACDC 48 00 3F CD */ bl func_80371D68
/* 8036DDA0 0036ACE0 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8036DDA4 0036ACE4 38 60 00 00 */ li r3, 0
/* 8036DDA8 0036ACE8 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8036DDAC 0036ACEC 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8036DDB0 0036ACF0 7C 08 03 A6 */ mtlr r0
/* 8036DDB4 0036ACF4 38 21 00 50 */ addi r1, r1, 0x50
/* 8036DDB8 0036ACF8 4E 80 00 20 */ blr
.global func_8036DDBC
func_8036DDBC:
/* 8036DDBC 0036ACFC 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8036DDC0 0036AD00 7C 08 02 A6 */ mflr r0
/* 8036DDC4 0036AD04 90 01 00 54 */ stw r0, 0x54(r1)
/* 8036DDC8 0036AD08 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8036DDCC 0036AD0C 48 00 1D 1D */ bl func_8036FAE8
/* 8036DDD0 0036AD10 2C 03 07 04 */ cmpwi r3, 0x704
/* 8036DDD4 0036AD14 41 82 00 2C */ beq lbl_8036DE00
/* 8036DDD8 0036AD18 40 80 00 10 */ bge lbl_8036DDE8
/* 8036DDDC 0036AD1C 2C 03 00 00 */ cmpwi r3, 0
/* 8036DDE0 0036AD20 41 82 00 18 */ beq lbl_8036DDF8
/* 8036DDE4 0036AD24 48 00 00 34 */ b lbl_8036DE18
lbl_8036DDE8:
/* 8036DDE8 0036AD28 2C 03 07 06 */ cmpwi r3, 0x706
/* 8036DDEC 0036AD2C 41 82 00 24 */ beq lbl_8036DE10
/* 8036DDF0 0036AD30 40 80 00 28 */ bge lbl_8036DE18
/* 8036DDF4 0036AD34 48 00 00 14 */ b lbl_8036DE08
lbl_8036DDF8:
/* 8036DDF8 0036AD38 3B E0 00 00 */ li r31, 0
/* 8036DDFC 0036AD3C 48 00 00 20 */ b lbl_8036DE1C
lbl_8036DE00:
/* 8036DE00 0036AD40 3B E0 00 21 */ li r31, 0x21
/* 8036DE04 0036AD44 48 00 00 18 */ b lbl_8036DE1C
lbl_8036DE08:
/* 8036DE08 0036AD48 3B E0 00 22 */ li r31, 0x22
/* 8036DE0C 0036AD4C 48 00 00 10 */ b lbl_8036DE1C
lbl_8036DE10:
/* 8036DE10 0036AD50 3B E0 00 20 */ li r31, 0x20
/* 8036DE14 0036AD54 48 00 00 08 */ b lbl_8036DE1C
lbl_8036DE18:
/* 8036DE18 0036AD58 3B E0 00 01 */ li r31, 1
lbl_8036DE1C:
/* 8036DE1C 0036AD5C 38 61 00 08 */ addi r3, r1, 8
/* 8036DE20 0036AD60 38 80 00 00 */ li r4, 0
/* 8036DE24 0036AD64 38 A0 00 40 */ li r5, 0x40
/* 8036DE28 0036AD68 4B C9 56 31 */ bl func_80003458
/* 8036DE2C 0036AD6C 38 60 00 80 */ li r3, 0x80
/* 8036DE30 0036AD70 38 00 00 40 */ li r0, 0x40
/* 8036DE34 0036AD74 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036DE38 0036AD78 38 61 00 08 */ addi r3, r1, 8
/* 8036DE3C 0036AD7C 38 80 00 40 */ li r4, 0x40
/* 8036DE40 0036AD80 90 01 00 08 */ stw r0, 8(r1)
/* 8036DE44 0036AD84 9B E1 00 10 */ stb r31, 0x10(r1)
/* 8036DE48 0036AD88 48 00 3F 21 */ bl func_80371D68
/* 8036DE4C 0036AD8C 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8036DE50 0036AD90 38 60 00 00 */ li r3, 0
/* 8036DE54 0036AD94 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8036DE58 0036AD98 7C 08 03 A6 */ mtlr r0
/* 8036DE5C 0036AD9C 38 21 00 50 */ addi r1, r1, 0x50
/* 8036DE60 0036ADA0 4E 80 00 20 */ blr
.global func_8036DE64
func_8036DE64:
/* 8036DE64 0036ADA4 94 21 FE A0 */ stwu r1, -0x160(r1)
/* 8036DE68 0036ADA8 7C 08 02 A6 */ mflr r0
/* 8036DE6C 0036ADAC 38 80 00 00 */ li r4, 0
/* 8036DE70 0036ADB0 90 01 01 64 */ stw r0, 0x164(r1)
/* 8036DE74 0036ADB4 BF 61 01 4C */ stmw r27, 0x14c(r1)
/* 8036DE78 0036ADB8 7C 7B 1B 78 */ mr r27, r3
/* 8036DE7C 0036ADBC 4B FF F7 A1 */ bl func_8036D61C
/* 8036DE80 0036ADC0 8B FB 00 18 */ lbz r31, 0x18(r27)
/* 8036DE84 0036ADC4 83 BB 00 20 */ lwz r29, 0x20(r27)
/* 8036DE88 0036ADC8 2C 1F 00 10 */ cmpwi r31, 0x10
/* 8036DE8C 0036ADCC 83 9B 00 24 */ lwz r28, 0x24(r27)
/* 8036DE90 0036ADD0 41 82 00 2C */ beq lbl_8036DEBC
/* 8036DE94 0036ADD4 40 80 00 1C */ bge lbl_8036DEB0
/* 8036DE98 0036ADD8 2C 1F 00 01 */ cmpwi r31, 1
/* 8036DE9C 0036ADDC 41 82 00 68 */ beq lbl_8036DF04
/* 8036DEA0 0036ADE0 40 80 00 B4 */ bge lbl_8036DF54
/* 8036DEA4 0036ADE4 2C 1F 00 00 */ cmpwi r31, 0
/* 8036DEA8 0036ADE8 40 80 00 14 */ bge lbl_8036DEBC
/* 8036DEAC 0036ADEC 48 00 00 A8 */ b lbl_8036DF54
lbl_8036DEB0:
/* 8036DEB0 0036ADF0 2C 1F 00 12 */ cmpwi r31, 0x12
/* 8036DEB4 0036ADF4 40 80 00 A0 */ bge lbl_8036DF54
/* 8036DEB8 0036ADF8 48 00 00 4C */ b lbl_8036DF04
lbl_8036DEBC:
/* 8036DEBC 0036ADFC 8B DB 00 1C */ lbz r30, 0x1c(r27)
/* 8036DEC0 0036AE00 28 1E 00 01 */ cmplwi r30, 1
/* 8036DEC4 0036AE04 40 80 00 CC */ bge lbl_8036DF90
/* 8036DEC8 0036AE08 38 61 01 08 */ addi r3, r1, 0x108
/* 8036DECC 0036AE0C 38 80 00 00 */ li r4, 0
/* 8036DED0 0036AE10 38 A0 00 40 */ li r5, 0x40
/* 8036DED4 0036AE14 4B C9 55 85 */ bl func_80003458
/* 8036DED8 0036AE18 38 60 00 80 */ li r3, 0x80
/* 8036DEDC 0036AE1C 38 A0 00 40 */ li r5, 0x40
/* 8036DEE0 0036AE20 38 00 00 11 */ li r0, 0x11
/* 8036DEE4 0036AE24 98 61 01 0C */ stb r3, 0x10c(r1)
/* 8036DEE8 0036AE28 38 61 01 08 */ addi r3, r1, 0x108
/* 8036DEEC 0036AE2C 38 80 00 40 */ li r4, 0x40
/* 8036DEF0 0036AE30 90 A1 01 08 */ stw r5, 0x108(r1)
/* 8036DEF4 0036AE34 98 01 01 10 */ stb r0, 0x110(r1)
/* 8036DEF8 0036AE38 48 00 3E 71 */ bl func_80371D68
/* 8036DEFC 0036AE3C 38 60 00 00 */ li r3, 0
/* 8036DF00 0036AE40 48 00 01 70 */ b lbl_8036E070
lbl_8036DF04:
/* 8036DF04 0036AE44 48 00 1E 1D */ bl func_8036FD20
/* 8036DF08 0036AE48 7C 03 E8 40 */ cmplw r3, r29
/* 8036DF0C 0036AE4C 41 80 00 0C */ blt lbl_8036DF18
/* 8036DF10 0036AE50 7C 03 E0 40 */ cmplw r3, r28
/* 8036DF14 0036AE54 40 81 00 7C */ ble lbl_8036DF90
lbl_8036DF18:
/* 8036DF18 0036AE58 38 61 00 C8 */ addi r3, r1, 0xc8
/* 8036DF1C 0036AE5C 38 80 00 00 */ li r4, 0
/* 8036DF20 0036AE60 38 A0 00 40 */ li r5, 0x40
/* 8036DF24 0036AE64 4B C9 55 35 */ bl func_80003458
/* 8036DF28 0036AE68 38 60 00 80 */ li r3, 0x80
/* 8036DF2C 0036AE6C 38 A0 00 40 */ li r5, 0x40
/* 8036DF30 0036AE70 38 00 00 11 */ li r0, 0x11
/* 8036DF34 0036AE74 98 61 00 CC */ stb r3, 0xcc(r1)
/* 8036DF38 0036AE78 38 61 00 C8 */ addi r3, r1, 0xc8
/* 8036DF3C 0036AE7C 38 80 00 40 */ li r4, 0x40
/* 8036DF40 0036AE80 90 A1 00 C8 */ stw r5, 0xc8(r1)
/* 8036DF44 0036AE84 98 01 00 D0 */ stb r0, 0xd0(r1)
/* 8036DF48 0036AE88 48 00 3E 21 */ bl func_80371D68
/* 8036DF4C 0036AE8C 38 60 00 00 */ li r3, 0
/* 8036DF50 0036AE90 48 00 01 20 */ b lbl_8036E070
lbl_8036DF54:
/* 8036DF54 0036AE94 38 61 00 88 */ addi r3, r1, 0x88
/* 8036DF58 0036AE98 38 80 00 00 */ li r4, 0
/* 8036DF5C 0036AE9C 38 A0 00 40 */ li r5, 0x40
/* 8036DF60 0036AEA0 4B C9 54 F9 */ bl func_80003458
/* 8036DF64 0036AEA4 38 60 00 80 */ li r3, 0x80
/* 8036DF68 0036AEA8 38 A0 00 40 */ li r5, 0x40
/* 8036DF6C 0036AEAC 38 00 00 12 */ li r0, 0x12
/* 8036DF70 0036AEB0 98 61 00 8C */ stb r3, 0x8c(r1)
/* 8036DF74 0036AEB4 38 61 00 88 */ addi r3, r1, 0x88
/* 8036DF78 0036AEB8 38 80 00 40 */ li r4, 0x40
/* 8036DF7C 0036AEBC 90 A1 00 88 */ stw r5, 0x88(r1)
/* 8036DF80 0036AEC0 98 01 00 90 */ stb r0, 0x90(r1)
/* 8036DF84 0036AEC4 48 00 3D E5 */ bl func_80371D68
/* 8036DF88 0036AEC8 38 60 00 00 */ li r3, 0
/* 8036DF8C 0036AECC 48 00 00 E4 */ b lbl_8036E070
lbl_8036DF90:
/* 8036DF90 0036AED0 48 00 1B 81 */ bl func_8036FB10
/* 8036DF94 0036AED4 2C 03 00 00 */ cmpwi r3, 0
/* 8036DF98 0036AED8 40 82 00 40 */ bne lbl_8036DFD8
/* 8036DF9C 0036AEDC 38 61 00 48 */ addi r3, r1, 0x48
/* 8036DFA0 0036AEE0 38 80 00 00 */ li r4, 0
/* 8036DFA4 0036AEE4 38 A0 00 40 */ li r5, 0x40
/* 8036DFA8 0036AEE8 4B C9 54 B1 */ bl func_80003458
/* 8036DFAC 0036AEEC 38 60 00 80 */ li r3, 0x80
/* 8036DFB0 0036AEF0 38 A0 00 40 */ li r5, 0x40
/* 8036DFB4 0036AEF4 38 00 00 16 */ li r0, 0x16
/* 8036DFB8 0036AEF8 98 61 00 4C */ stb r3, 0x4c(r1)
/* 8036DFBC 0036AEFC 38 61 00 48 */ addi r3, r1, 0x48
/* 8036DFC0 0036AF00 38 80 00 40 */ li r4, 0x40
/* 8036DFC4 0036AF04 90 A1 00 48 */ stw r5, 0x48(r1)
/* 8036DFC8 0036AF08 98 01 00 50 */ stb r0, 0x50(r1)
/* 8036DFCC 0036AF0C 48 00 3D 9D */ bl func_80371D68
/* 8036DFD0 0036AF10 38 60 00 00 */ li r3, 0
/* 8036DFD4 0036AF14 48 00 00 9C */ b lbl_8036E070
lbl_8036DFD8:
/* 8036DFD8 0036AF18 38 61 00 08 */ addi r3, r1, 8
/* 8036DFDC 0036AF1C 38 80 00 00 */ li r4, 0
/* 8036DFE0 0036AF20 38 A0 00 40 */ li r5, 0x40
/* 8036DFE4 0036AF24 4B C9 54 75 */ bl func_80003458
/* 8036DFE8 0036AF28 38 60 00 80 */ li r3, 0x80
/* 8036DFEC 0036AF2C 38 A0 00 40 */ li r5, 0x40
/* 8036DFF0 0036AF30 38 00 00 00 */ li r0, 0
/* 8036DFF4 0036AF34 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036DFF8 0036AF38 38 61 00 08 */ addi r3, r1, 8
/* 8036DFFC 0036AF3C 38 80 00 40 */ li r4, 0x40
/* 8036E000 0036AF40 90 A1 00 08 */ stw r5, 8(r1)
/* 8036E004 0036AF44 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036E008 0036AF48 48 00 3D 61 */ bl func_80371D68
/* 8036E00C 0036AF4C 2C 1F 00 10 */ cmpwi r31, 0x10
/* 8036E010 0036AF50 38 60 00 00 */ li r3, 0
/* 8036E014 0036AF54 41 82 00 2C */ beq lbl_8036E040
/* 8036E018 0036AF58 40 80 00 1C */ bge lbl_8036E034
/* 8036E01C 0036AF5C 2C 1F 00 01 */ cmpwi r31, 1
/* 8036E020 0036AF60 41 82 00 38 */ beq lbl_8036E058
/* 8036E024 0036AF64 40 80 00 4C */ bge lbl_8036E070
/* 8036E028 0036AF68 2C 1F 00 00 */ cmpwi r31, 0
/* 8036E02C 0036AF6C 40 80 00 14 */ bge lbl_8036E040
/* 8036E030 0036AF70 48 00 00 40 */ b lbl_8036E070
lbl_8036E034:
/* 8036E034 0036AF74 2C 1F 00 12 */ cmpwi r31, 0x12
/* 8036E038 0036AF78 40 80 00 38 */ bge lbl_8036E070
/* 8036E03C 0036AF7C 48 00 00 1C */ b lbl_8036E058
lbl_8036E040:
/* 8036E040 0036AF80 20 1F 00 10 */ subfic r0, r31, 0x10
/* 8036E044 0036AF84 7F C3 F3 78 */ mr r3, r30
/* 8036E048 0036AF88 7C 00 00 34 */ cntlzw r0, r0
/* 8036E04C 0036AF8C 54 04 D9 7E */ srwi r4, r0, 5
/* 8036E050 0036AF90 48 00 1D 99 */ bl func_8036FDE8
/* 8036E054 0036AF94 48 00 00 1C */ b lbl_8036E070
lbl_8036E058:
/* 8036E058 0036AF98 20 1F 00 11 */ subfic r0, r31, 0x11
/* 8036E05C 0036AF9C 7F A3 EB 78 */ mr r3, r29
/* 8036E060 0036AFA0 7C 00 00 34 */ cntlzw r0, r0
/* 8036E064 0036AFA4 7F 84 E3 78 */ mr r4, r28
/* 8036E068 0036AFA8 54 05 D9 7E */ srwi r5, r0, 5
/* 8036E06C 0036AFAC 48 00 1C C5 */ bl func_8036FD30
lbl_8036E070:
/* 8036E070 0036AFB0 BB 61 01 4C */ lmw r27, 0x14c(r1)
/* 8036E074 0036AFB4 80 01 01 64 */ lwz r0, 0x164(r1)
/* 8036E078 0036AFB8 7C 08 03 A6 */ mtlr r0
/* 8036E07C 0036AFBC 38 21 01 60 */ addi r1, r1, 0x160
/* 8036E080 0036AFC0 4E 80 00 20 */ blr
.global func_8036E084
func_8036E084:
/* 8036E084 0036AFC4 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 8036E088 0036AFC8 7C 08 02 A6 */ mflr r0
/* 8036E08C 0036AFCC 3C 80 80 3A */ lis r4, lbl_803A2904@ha
/* 8036E090 0036AFD0 38 60 00 01 */ li r3, 1
/* 8036E094 0036AFD4 90 01 00 94 */ stw r0, 0x94(r1)
/* 8036E098 0036AFD8 38 84 29 04 */ addi r4, r4, lbl_803A2904@l
/* 8036E09C 0036AFDC 4C C6 31 82 */ crclr 6
/* 8036E0A0 0036AFE0 48 00 4B B5 */ bl func_80372C54
/* 8036E0A4 0036AFE4 48 00 1A 6D */ bl func_8036FB10
/* 8036E0A8 0036AFE8 2C 03 00 00 */ cmpwi r3, 0
/* 8036E0AC 0036AFEC 40 82 00 40 */ bne lbl_8036E0EC
/* 8036E0B0 0036AFF0 38 61 00 48 */ addi r3, r1, 0x48
/* 8036E0B4 0036AFF4 38 80 00 00 */ li r4, 0
/* 8036E0B8 0036AFF8 38 A0 00 40 */ li r5, 0x40
/* 8036E0BC 0036AFFC 4B C9 53 9D */ bl func_80003458
/* 8036E0C0 0036B000 38 60 00 80 */ li r3, 0x80
/* 8036E0C4 0036B004 38 A0 00 40 */ li r5, 0x40
/* 8036E0C8 0036B008 38 00 00 16 */ li r0, 0x16
/* 8036E0CC 0036B00C 98 61 00 4C */ stb r3, 0x4c(r1)
/* 8036E0D0 0036B010 38 61 00 48 */ addi r3, r1, 0x48
/* 8036E0D4 0036B014 38 80 00 40 */ li r4, 0x40
/* 8036E0D8 0036B018 90 A1 00 48 */ stw r5, 0x48(r1)
/* 8036E0DC 0036B01C 98 01 00 50 */ stb r0, 0x50(r1)
/* 8036E0E0 0036B020 48 00 3C 89 */ bl func_80371D68
/* 8036E0E4 0036B024 38 60 00 00 */ li r3, 0
/* 8036E0E8 0036B028 48 00 00 3C */ b lbl_8036E124
lbl_8036E0EC:
/* 8036E0EC 0036B02C 38 61 00 08 */ addi r3, r1, 8
/* 8036E0F0 0036B030 38 80 00 00 */ li r4, 0
/* 8036E0F4 0036B034 38 A0 00 40 */ li r5, 0x40
/* 8036E0F8 0036B038 4B C9 53 61 */ bl func_80003458
/* 8036E0FC 0036B03C 38 60 00 80 */ li r3, 0x80
/* 8036E100 0036B040 38 A0 00 40 */ li r5, 0x40
/* 8036E104 0036B044 38 00 00 00 */ li r0, 0
/* 8036E108 0036B048 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036E10C 0036B04C 38 61 00 08 */ addi r3, r1, 8
/* 8036E110 0036B050 38 80 00 40 */ li r4, 0x40
/* 8036E114 0036B054 90 A1 00 08 */ stw r5, 8(r1)
/* 8036E118 0036B058 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036E11C 0036B05C 48 00 3C 4D */ bl func_80371D68
/* 8036E120 0036B060 48 00 40 2D */ bl func_8037214C
lbl_8036E124:
/* 8036E124 0036B064 80 01 00 94 */ lwz r0, 0x94(r1)
/* 8036E128 0036B068 7C 08 03 A6 */ mtlr r0
/* 8036E12C 0036B06C 38 21 00 90 */ addi r1, r1, 0x90
/* 8036E130 0036B070 4E 80 00 20 */ blr
.global func_8036E134
func_8036E134:
/* 8036E134 0036B074 94 21 FF 20 */ stwu r1, -0xe0(r1)
/* 8036E138 0036B078 7C 08 02 A6 */ mflr r0
/* 8036E13C 0036B07C 38 80 00 00 */ li r4, 0
/* 8036E140 0036B080 90 01 00 E4 */ stw r0, 0xe4(r1)
/* 8036E144 0036B084 93 E1 00 DC */ stw r31, 0xdc(r1)
/* 8036E148 0036B088 93 C1 00 D8 */ stw r30, 0xd8(r1)
/* 8036E14C 0036B08C 93 A1 00 D4 */ stw r29, 0xd4(r1)
/* 8036E150 0036B090 93 81 00 D0 */ stw r28, 0xd0(r1)
/* 8036E154 0036B094 7C 7C 1B 78 */ mr r28, r3
/* 8036E158 0036B098 8B E3 00 18 */ lbz r31, 0x18(r3)
/* 8036E15C 0036B09C A3 C3 00 1C */ lhz r30, 0x1c(r3)
/* 8036E160 0036B0A0 A3 A3 00 20 */ lhz r29, 0x20(r3)
/* 8036E164 0036B0A4 4B FF F4 B9 */ bl func_8036D61C
/* 8036E168 0036B0A8 7C 1E E8 40 */ cmplw r30, r29
/* 8036E16C 0036B0AC 40 81 00 40 */ ble lbl_8036E1AC
/* 8036E170 0036B0B0 38 61 00 4C */ addi r3, r1, 0x4c
/* 8036E174 0036B0B4 38 80 00 00 */ li r4, 0
/* 8036E178 0036B0B8 38 A0 00 40 */ li r5, 0x40
/* 8036E17C 0036B0BC 4B C9 52 DD */ bl func_80003458
/* 8036E180 0036B0C0 38 60 00 80 */ li r3, 0x80
/* 8036E184 0036B0C4 38 A0 00 40 */ li r5, 0x40
/* 8036E188 0036B0C8 38 00 00 14 */ li r0, 0x14
/* 8036E18C 0036B0CC 98 61 00 50 */ stb r3, 0x50(r1)
/* 8036E190 0036B0D0 38 61 00 4C */ addi r3, r1, 0x4c
/* 8036E194 0036B0D4 38 80 00 40 */ li r4, 0x40
/* 8036E198 0036B0D8 90 A1 00 4C */ stw r5, 0x4c(r1)
/* 8036E19C 0036B0DC 98 01 00 54 */ stb r0, 0x54(r1)
/* 8036E1A0 0036B0E0 48 00 3B C9 */ bl func_80371D68
/* 8036E1A4 0036B0E4 38 60 00 00 */ li r3, 0
/* 8036E1A8 0036B0E8 48 00 01 FC */ b lbl_8036E3A4
lbl_8036E1AC:
/* 8036E1AC 0036B0EC 7F 83 E3 78 */ mr r3, r28
/* 8036E1B0 0036B0F0 38 80 00 40 */ li r4, 0x40
/* 8036E1B4 0036B0F4 4B FF F4 69 */ bl func_8036D61C
/* 8036E1B8 0036B0F8 2C 1F 00 02 */ cmpwi r31, 2
/* 8036E1BC 0036B0FC 41 82 00 64 */ beq lbl_8036E220
/* 8036E1C0 0036B100 40 80 00 14 */ bge lbl_8036E1D4
/* 8036E1C4 0036B104 2C 1F 00 00 */ cmpwi r31, 0
/* 8036E1C8 0036B108 41 82 00 18 */ beq lbl_8036E1E0
/* 8036E1CC 0036B10C 40 80 00 34 */ bge lbl_8036E200
/* 8036E1D0 0036B110 48 00 00 90 */ b lbl_8036E260
lbl_8036E1D4:
/* 8036E1D4 0036B114 2C 1F 00 04 */ cmpwi r31, 4
/* 8036E1D8 0036B118 40 80 00 88 */ bge lbl_8036E260
/* 8036E1DC 0036B11C 48 00 00 64 */ b lbl_8036E240
lbl_8036E1E0:
/* 8036E1E0 0036B120 7F C3 F3 78 */ mr r3, r30
/* 8036E1E4 0036B124 7F A4 EB 78 */ mr r4, r29
/* 8036E1E8 0036B128 7F 85 E3 78 */ mr r5, r28
/* 8036E1EC 0036B12C 38 C1 00 08 */ addi r6, r1, 8
/* 8036E1F0 0036B130 38 E0 00 00 */ li r7, 0
/* 8036E1F4 0036B134 48 00 2A A1 */ bl func_80370C94
/* 8036E1F8 0036B138 7C 7F 1B 78 */ mr r31, r3
/* 8036E1FC 0036B13C 48 00 00 68 */ b lbl_8036E264
lbl_8036E200:
/* 8036E200 0036B140 7F C3 F3 78 */ mr r3, r30
/* 8036E204 0036B144 7F A4 EB 78 */ mr r4, r29
/* 8036E208 0036B148 7F 85 E3 78 */ mr r5, r28
/* 8036E20C 0036B14C 38 C1 00 08 */ addi r6, r1, 8
/* 8036E210 0036B150 38 E0 00 00 */ li r7, 0
/* 8036E214 0036B154 48 00 25 75 */ bl func_80370788
/* 8036E218 0036B158 7C 7F 1B 78 */ mr r31, r3
/* 8036E21C 0036B15C 48 00 00 48 */ b lbl_8036E264
lbl_8036E220:
/* 8036E220 0036B160 7F C3 F3 78 */ mr r3, r30
/* 8036E224 0036B164 7F A4 EB 78 */ mr r4, r29
/* 8036E228 0036B168 7F 85 E3 78 */ mr r5, r28
/* 8036E22C 0036B16C 38 C1 00 08 */ addi r6, r1, 8
/* 8036E230 0036B170 38 E0 00 00 */ li r7, 0
/* 8036E234 0036B174 48 00 23 E5 */ bl func_80370618
/* 8036E238 0036B178 7C 7F 1B 78 */ mr r31, r3
/* 8036E23C 0036B17C 48 00 00 28 */ b lbl_8036E264
lbl_8036E240:
/* 8036E240 0036B180 7F C3 F3 78 */ mr r3, r30
/* 8036E244 0036B184 7F A4 EB 78 */ mr r4, r29
/* 8036E248 0036B188 7F 85 E3 78 */ mr r5, r28
/* 8036E24C 0036B18C 38 C1 00 08 */ addi r6, r1, 8
/* 8036E250 0036B190 38 E0 00 00 */ li r7, 0
/* 8036E254 0036B194 48 00 1F 8D */ bl func_803701E0
/* 8036E258 0036B198 7C 7F 1B 78 */ mr r31, r3
/* 8036E25C 0036B19C 48 00 00 08 */ b lbl_8036E264
lbl_8036E260:
/* 8036E260 0036B1A0 3B E0 07 03 */ li r31, 0x703
lbl_8036E264:
/* 8036E264 0036B1A4 7F 83 E3 78 */ mr r3, r28
/* 8036E268 0036B1A8 38 80 00 00 */ li r4, 0
/* 8036E26C 0036B1AC 4B FF F3 E1 */ bl func_8036D64C
/* 8036E270 0036B1B0 2C 1F 00 00 */ cmpwi r31, 0
/* 8036E274 0036B1B4 40 82 00 3C */ bne lbl_8036E2B0
/* 8036E278 0036B1B8 38 61 00 8C */ addi r3, r1, 0x8c
/* 8036E27C 0036B1BC 38 80 00 00 */ li r4, 0
/* 8036E280 0036B1C0 38 A0 00 40 */ li r5, 0x40
/* 8036E284 0036B1C4 4B C9 51 D5 */ bl func_80003458
/* 8036E288 0036B1C8 38 60 00 40 */ li r3, 0x40
/* 8036E28C 0036B1CC 38 00 00 80 */ li r0, 0x80
/* 8036E290 0036B1D0 90 61 00 8C */ stw r3, 0x8c(r1)
/* 8036E294 0036B1D4 7F 83 E3 78 */ mr r3, r28
/* 8036E298 0036B1D8 38 81 00 8C */ addi r4, r1, 0x8c
/* 8036E29C 0036B1DC 38 A0 00 40 */ li r5, 0x40
/* 8036E2A0 0036B1E0 98 01 00 90 */ stb r0, 0x90(r1)
/* 8036E2A4 0036B1E4 9B E1 00 94 */ stb r31, 0x94(r1)
/* 8036E2A8 0036B1E8 4B FF F2 D1 */ bl func_8036D578
/* 8036E2AC 0036B1EC 7C 7F 1B 78 */ mr r31, r3
lbl_8036E2B0:
/* 8036E2B0 0036B1F0 2C 1F 00 00 */ cmpwi r31, 0
/* 8036E2B4 0036B1F4 41 82 00 B4 */ beq lbl_8036E368
/* 8036E2B8 0036B1F8 2C 1F 07 03 */ cmpwi r31, 0x703
/* 8036E2BC 0036B1FC 41 82 00 38 */ beq lbl_8036E2F4
/* 8036E2C0 0036B200 40 80 00 1C */ bge lbl_8036E2DC
/* 8036E2C4 0036B204 2C 1F 07 01 */ cmpwi r31, 0x701
/* 8036E2C8 0036B208 41 82 00 34 */ beq lbl_8036E2FC
/* 8036E2CC 0036B20C 40 80 00 40 */ bge lbl_8036E30C
/* 8036E2D0 0036B210 2C 1F 03 02 */ cmpwi r31, 0x302
/* 8036E2D4 0036B214 41 82 00 30 */ beq lbl_8036E304
/* 8036E2D8 0036B218 48 00 00 54 */ b lbl_8036E32C
lbl_8036E2DC:
/* 8036E2DC 0036B21C 2C 1F 07 06 */ cmpwi r31, 0x706
/* 8036E2E0 0036B220 41 82 00 44 */ beq lbl_8036E324
/* 8036E2E4 0036B224 40 80 00 48 */ bge lbl_8036E32C
/* 8036E2E8 0036B228 2C 1F 07 05 */ cmpwi r31, 0x705
/* 8036E2EC 0036B22C 40 80 00 30 */ bge lbl_8036E31C
/* 8036E2F0 0036B230 48 00 00 24 */ b lbl_8036E314
lbl_8036E2F4:
/* 8036E2F4 0036B234 3B E0 00 12 */ li r31, 0x12
/* 8036E2F8 0036B238 48 00 00 38 */ b lbl_8036E330
lbl_8036E2FC:
/* 8036E2FC 0036B23C 3B E0 00 14 */ li r31, 0x14
/* 8036E300 0036B240 48 00 00 30 */ b lbl_8036E330
lbl_8036E304:
/* 8036E304 0036B244 3B E0 00 02 */ li r31, 2
/* 8036E308 0036B248 48 00 00 28 */ b lbl_8036E330
lbl_8036E30C:
/* 8036E30C 0036B24C 3B E0 00 15 */ li r31, 0x15
/* 8036E310 0036B250 48 00 00 20 */ b lbl_8036E330
lbl_8036E314:
/* 8036E314 0036B254 3B E0 00 21 */ li r31, 0x21
/* 8036E318 0036B258 48 00 00 18 */ b lbl_8036E330
lbl_8036E31C:
/* 8036E31C 0036B25C 3B E0 00 22 */ li r31, 0x22
/* 8036E320 0036B260 48 00 00 10 */ b lbl_8036E330
lbl_8036E324:
/* 8036E324 0036B264 3B E0 00 20 */ li r31, 0x20
/* 8036E328 0036B268 48 00 00 08 */ b lbl_8036E330
lbl_8036E32C:
/* 8036E32C 0036B26C 3B E0 00 03 */ li r31, 3
lbl_8036E330:
/* 8036E330 0036B270 38 61 00 0C */ addi r3, r1, 0xc
/* 8036E334 0036B274 38 80 00 00 */ li r4, 0
/* 8036E338 0036B278 38 A0 00 40 */ li r5, 0x40
/* 8036E33C 0036B27C 4B C9 51 1D */ bl func_80003458
/* 8036E340 0036B280 38 60 00 80 */ li r3, 0x80
/* 8036E344 0036B284 38 00 00 40 */ li r0, 0x40
/* 8036E348 0036B288 98 61 00 10 */ stb r3, 0x10(r1)
/* 8036E34C 0036B28C 38 61 00 0C */ addi r3, r1, 0xc
/* 8036E350 0036B290 38 80 00 40 */ li r4, 0x40
/* 8036E354 0036B294 90 01 00 0C */ stw r0, 0xc(r1)
/* 8036E358 0036B298 9B E1 00 14 */ stb r31, 0x14(r1)
/* 8036E35C 0036B29C 48 00 3A 0D */ bl func_80371D68
/* 8036E360 0036B2A0 38 60 00 00 */ li r3, 0
/* 8036E364 0036B2A4 48 00 00 40 */ b lbl_8036E3A4
lbl_8036E368:
/* 8036E368 0036B2A8 3C 80 80 3A */ lis r4, lbl_803A2930@ha
/* 8036E36C 0036B2AC 38 60 00 01 */ li r3, 1
/* 8036E370 0036B2B0 38 84 29 30 */ addi r4, r4, lbl_803A2930@l
/* 8036E374 0036B2B4 4C C6 31 82 */ crclr 6
/* 8036E378 0036B2B8 48 00 48 DD */ bl func_80372C54
/* 8036E37C 0036B2BC 7F 83 E3 78 */ mr r3, r28
/* 8036E380 0036B2C0 4B FF EC 59 */ bl func_8036CFD8
/* 8036E384 0036B2C4 7C 7F 1B 78 */ mr r31, r3
/* 8036E388 0036B2C8 3C 80 80 3A */ lis r4, lbl_803A2950@ha
/* 8036E38C 0036B2CC 38 60 00 01 */ li r3, 1
/* 8036E390 0036B2D0 38 84 29 50 */ addi r4, r4, lbl_803A2950@l
/* 8036E394 0036B2D4 7F E5 FB 78 */ mr r5, r31
/* 8036E398 0036B2D8 4C C6 31 82 */ crclr 6
/* 8036E39C 0036B2DC 48 00 48 B9 */ bl func_80372C54
/* 8036E3A0 0036B2E0 7F E3 FB 78 */ mr r3, r31
lbl_8036E3A4:
/* 8036E3A4 0036B2E4 80 01 00 E4 */ lwz r0, 0xe4(r1)
/* 8036E3A8 0036B2E8 83 E1 00 DC */ lwz r31, 0xdc(r1)
/* 8036E3AC 0036B2EC 83 C1 00 D8 */ lwz r30, 0xd8(r1)
/* 8036E3B0 0036B2F0 83 A1 00 D4 */ lwz r29, 0xd4(r1)
/* 8036E3B4 0036B2F4 83 81 00 D0 */ lwz r28, 0xd0(r1)
/* 8036E3B8 0036B2F8 7C 08 03 A6 */ mtlr r0
/* 8036E3BC 0036B2FC 38 21 00 E0 */ addi r1, r1, 0xe0
/* 8036E3C0 0036B300 4E 80 00 20 */ blr
.global func_8036E3C4
func_8036E3C4:
/* 8036E3C4 0036B304 94 21 FF 20 */ stwu r1, -0xe0(r1)
/* 8036E3C8 0036B308 7C 08 02 A6 */ mflr r0
/* 8036E3CC 0036B30C 3C A0 80 3A */ lis r5, lbl_803A28D0@ha
/* 8036E3D0 0036B310 90 01 00 E4 */ stw r0, 0xe4(r1)
/* 8036E3D4 0036B314 93 E1 00 DC */ stw r31, 0xdc(r1)
/* 8036E3D8 0036B318 3B E5 28 D0 */ addi r31, r5, lbl_803A28D0@l
/* 8036E3DC 0036B31C 93 C1 00 D8 */ stw r30, 0xd8(r1)
/* 8036E3E0 0036B320 93 A1 00 D4 */ stw r29, 0xd4(r1)
/* 8036E3E4 0036B324 7C 7D 1B 78 */ mr r29, r3
/* 8036E3E8 0036B328 A0 83 00 1C */ lhz r4, 0x1c(r3)
/* 8036E3EC 0036B32C A0 03 00 20 */ lhz r0, 0x20(r3)
/* 8036E3F0 0036B330 7C 04 00 40 */ cmplw r4, r0
/* 8036E3F4 0036B334 40 81 00 40 */ ble lbl_8036E434
/* 8036E3F8 0036B338 38 61 00 4C */ addi r3, r1, 0x4c
/* 8036E3FC 0036B33C 38 80 00 00 */ li r4, 0
/* 8036E400 0036B340 38 A0 00 40 */ li r5, 0x40
/* 8036E404 0036B344 4B C9 50 55 */ bl func_80003458
/* 8036E408 0036B348 38 60 00 80 */ li r3, 0x80
/* 8036E40C 0036B34C 38 A0 00 40 */ li r5, 0x40
/* 8036E410 0036B350 38 00 00 14 */ li r0, 0x14
/* 8036E414 0036B354 98 61 00 50 */ stb r3, 0x50(r1)
/* 8036E418 0036B358 38 61 00 4C */ addi r3, r1, 0x4c
/* 8036E41C 0036B35C 38 80 00 40 */ li r4, 0x40
/* 8036E420 0036B360 90 A1 00 4C */ stw r5, 0x4c(r1)
/* 8036E424 0036B364 98 01 00 54 */ stb r0, 0x54(r1)
/* 8036E428 0036B368 48 00 39 41 */ bl func_80371D68
/* 8036E42C 0036B36C 38 60 00 00 */ li r3, 0
/* 8036E430 0036B370 48 00 02 58 */ b lbl_8036E688
lbl_8036E434:
/* 8036E434 0036B374 38 80 00 80 */ li r4, 0x80
/* 8036E438 0036B378 38 00 04 68 */ li r0, 0x468
/* 8036E43C 0036B37C 98 81 00 90 */ stb r4, 0x90(r1)
/* 8036E440 0036B380 38 80 00 00 */ li r4, 0
/* 8036E444 0036B384 90 01 00 8C */ stw r0, 0x8c(r1)
/* 8036E448 0036B388 4B FF F2 05 */ bl func_8036D64C
/* 8036E44C 0036B38C 80 BD 00 08 */ lwz r5, 8(r29)
/* 8036E450 0036B390 38 9F 00 98 */ addi r4, r31, 0x98
/* 8036E454 0036B394 38 60 00 04 */ li r3, 4
/* 8036E458 0036B398 4C C6 31 82 */ crclr 6
/* 8036E45C 0036B39C 48 00 47 F9 */ bl func_80372C54
/* 8036E460 0036B3A0 7F A3 EB 78 */ mr r3, r29
/* 8036E464 0036B3A4 38 81 00 8C */ addi r4, r1, 0x8c
/* 8036E468 0036B3A8 38 A0 00 40 */ li r5, 0x40
/* 8036E46C 0036B3AC 4B FF EF 1D */ bl func_8036D388
/* 8036E470 0036B3B0 80 BD 00 08 */ lwz r5, 8(r29)
/* 8036E474 0036B3B4 38 9F 00 98 */ addi r4, r31, 0x98
/* 8036E478 0036B3B8 38 60 00 04 */ li r3, 4
/* 8036E47C 0036B3BC 4C C6 31 82 */ crclr 6
/* 8036E480 0036B3C0 48 00 47 D5 */ bl func_80372C54
/* 8036E484 0036B3C4 7F A5 EB 78 */ mr r5, r29
/* 8036E488 0036B3C8 38 C1 00 08 */ addi r6, r1, 8
/* 8036E48C 0036B3CC 38 60 00 00 */ li r3, 0
/* 8036E490 0036B3D0 38 80 00 24 */ li r4, 0x24
/* 8036E494 0036B3D4 38 E0 00 01 */ li r7, 1
/* 8036E498 0036B3D8 48 00 27 FD */ bl func_80370C94
/* 8036E49C 0036B3DC 7C 7E 1B 78 */ mr r30, r3
/* 8036E4A0 0036B3E0 38 9F 00 C0 */ addi r4, r31, 0xc0
/* 8036E4A4 0036B3E4 38 60 00 04 */ li r3, 4
/* 8036E4A8 0036B3E8 7F C5 F3 78 */ mr r5, r30
/* 8036E4AC 0036B3EC 4C C6 31 82 */ crclr 6
/* 8036E4B0 0036B3F0 48 00 47 A5 */ bl func_80372C54
/* 8036E4B4 0036B3F4 80 BD 00 08 */ lwz r5, 8(r29)
/* 8036E4B8 0036B3F8 38 9F 00 98 */ addi r4, r31, 0x98
/* 8036E4BC 0036B3FC 38 60 00 04 */ li r3, 4
/* 8036E4C0 0036B400 4C C6 31 82 */ crclr 6
/* 8036E4C4 0036B404 48 00 47 91 */ bl func_80372C54
/* 8036E4C8 0036B408 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E4CC 0036B40C 40 82 00 20 */ bne lbl_8036E4EC
/* 8036E4D0 0036B410 7F A5 EB 78 */ mr r5, r29
/* 8036E4D4 0036B414 38 C1 00 08 */ addi r6, r1, 8
/* 8036E4D8 0036B418 38 60 00 00 */ li r3, 0
/* 8036E4DC 0036B41C 38 80 00 21 */ li r4, 0x21
/* 8036E4E0 0036B420 38 E0 00 01 */ li r7, 1
/* 8036E4E4 0036B424 48 00 22 A5 */ bl func_80370788
/* 8036E4E8 0036B428 7C 7E 1B 78 */ mr r30, r3
lbl_8036E4EC:
/* 8036E4EC 0036B42C 7F C5 F3 78 */ mr r5, r30
/* 8036E4F0 0036B430 38 9F 00 F8 */ addi r4, r31, 0xf8
/* 8036E4F4 0036B434 38 60 00 04 */ li r3, 4
/* 8036E4F8 0036B438 4C C6 31 82 */ crclr 6
/* 8036E4FC 0036B43C 48 00 47 59 */ bl func_80372C54
/* 8036E500 0036B440 80 BD 00 08 */ lwz r5, 8(r29)
/* 8036E504 0036B444 38 9F 00 98 */ addi r4, r31, 0x98
/* 8036E508 0036B448 38 60 00 04 */ li r3, 4
/* 8036E50C 0036B44C 4C C6 31 82 */ crclr 6
/* 8036E510 0036B450 48 00 47 45 */ bl func_80372C54
/* 8036E514 0036B454 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E518 0036B458 40 82 00 20 */ bne lbl_8036E538
/* 8036E51C 0036B45C 7F A5 EB 78 */ mr r5, r29
/* 8036E520 0036B460 38 C1 00 08 */ addi r6, r1, 8
/* 8036E524 0036B464 38 60 00 00 */ li r3, 0
/* 8036E528 0036B468 38 80 00 60 */ li r4, 0x60
/* 8036E52C 0036B46C 38 E0 00 01 */ li r7, 1
/* 8036E530 0036B470 48 00 20 E9 */ bl func_80370618
/* 8036E534 0036B474 7C 7E 1B 78 */ mr r30, r3
lbl_8036E538:
/* 8036E538 0036B478 7F C5 F3 78 */ mr r5, r30
/* 8036E53C 0036B47C 38 9F 01 20 */ addi r4, r31, 0x120
/* 8036E540 0036B480 38 60 00 04 */ li r3, 4
/* 8036E544 0036B484 4C C6 31 82 */ crclr 6
/* 8036E548 0036B488 48 00 47 0D */ bl func_80372C54
/* 8036E54C 0036B48C 80 BD 00 08 */ lwz r5, 8(r29)
/* 8036E550 0036B490 38 9F 00 98 */ addi r4, r31, 0x98
/* 8036E554 0036B494 38 60 00 04 */ li r3, 4
/* 8036E558 0036B498 4C C6 31 82 */ crclr 6
/* 8036E55C 0036B49C 48 00 46 F9 */ bl func_80372C54
/* 8036E560 0036B4A0 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E564 0036B4A4 40 82 00 20 */ bne lbl_8036E584
/* 8036E568 0036B4A8 7F A5 EB 78 */ mr r5, r29
/* 8036E56C 0036B4AC 38 C1 00 08 */ addi r6, r1, 8
/* 8036E570 0036B4B0 38 60 00 00 */ li r3, 0
/* 8036E574 0036B4B4 38 80 00 1F */ li r4, 0x1f
/* 8036E578 0036B4B8 38 E0 00 01 */ li r7, 1
/* 8036E57C 0036B4BC 48 00 1C 65 */ bl func_803701E0
/* 8036E580 0036B4C0 7C 7E 1B 78 */ mr r30, r3
lbl_8036E584:
/* 8036E584 0036B4C4 7F C5 F3 78 */ mr r5, r30
/* 8036E588 0036B4C8 38 9F 01 50 */ addi r4, r31, 0x150
/* 8036E58C 0036B4CC 38 60 00 04 */ li r3, 4
/* 8036E590 0036B4D0 4C C6 31 82 */ crclr 6
/* 8036E594 0036B4D4 48 00 46 C1 */ bl func_80372C54
/* 8036E598 0036B4D8 80 BD 00 08 */ lwz r5, 8(r29)
/* 8036E59C 0036B4DC 38 9F 00 98 */ addi r4, r31, 0x98
/* 8036E5A0 0036B4E0 38 60 00 04 */ li r3, 4
/* 8036E5A4 0036B4E4 4C C6 31 82 */ crclr 6
/* 8036E5A8 0036B4E8 48 00 46 AD */ bl func_80372C54
/* 8036E5AC 0036B4EC 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E5B0 0036B4F0 41 82 00 A4 */ beq lbl_8036E654
/* 8036E5B4 0036B4F4 2C 1E 07 04 */ cmpwi r30, 0x704
/* 8036E5B8 0036B4F8 41 82 00 48 */ beq lbl_8036E600
/* 8036E5BC 0036B4FC 40 80 00 1C */ bge lbl_8036E5D8
/* 8036E5C0 0036B500 2C 1E 07 02 */ cmpwi r30, 0x702
/* 8036E5C4 0036B504 41 82 00 34 */ beq lbl_8036E5F8
/* 8036E5C8 0036B508 40 80 00 20 */ bge lbl_8036E5E8
/* 8036E5CC 0036B50C 2C 1E 07 01 */ cmpwi r30, 0x701
/* 8036E5D0 0036B510 40 80 00 20 */ bge lbl_8036E5F0
/* 8036E5D4 0036B514 48 00 00 44 */ b lbl_8036E618
lbl_8036E5D8:
/* 8036E5D8 0036B518 2C 1E 07 06 */ cmpwi r30, 0x706
/* 8036E5DC 0036B51C 41 82 00 34 */ beq lbl_8036E610
/* 8036E5E0 0036B520 40 80 00 38 */ bge lbl_8036E618
/* 8036E5E4 0036B524 48 00 00 24 */ b lbl_8036E608
lbl_8036E5E8:
/* 8036E5E8 0036B528 3B C0 00 12 */ li r30, 0x12
/* 8036E5EC 0036B52C 48 00 00 30 */ b lbl_8036E61C
lbl_8036E5F0:
/* 8036E5F0 0036B530 3B C0 00 14 */ li r30, 0x14
/* 8036E5F4 0036B534 48 00 00 28 */ b lbl_8036E61C
lbl_8036E5F8:
/* 8036E5F8 0036B538 3B C0 00 15 */ li r30, 0x15
/* 8036E5FC 0036B53C 48 00 00 20 */ b lbl_8036E61C
lbl_8036E600:
/* 8036E600 0036B540 3B C0 00 21 */ li r30, 0x21
/* 8036E604 0036B544 48 00 00 18 */ b lbl_8036E61C
lbl_8036E608:
/* 8036E608 0036B548 3B C0 00 22 */ li r30, 0x22
/* 8036E60C 0036B54C 48 00 00 10 */ b lbl_8036E61C
lbl_8036E610:
/* 8036E610 0036B550 3B C0 00 20 */ li r30, 0x20
/* 8036E614 0036B554 48 00 00 08 */ b lbl_8036E61C
lbl_8036E618:
/* 8036E618 0036B558 3B C0 00 03 */ li r30, 3
lbl_8036E61C:
/* 8036E61C 0036B55C 38 61 00 0C */ addi r3, r1, 0xc
/* 8036E620 0036B560 38 80 00 00 */ li r4, 0
/* 8036E624 0036B564 38 A0 00 40 */ li r5, 0x40
/* 8036E628 0036B568 4B C9 4E 31 */ bl func_80003458
/* 8036E62C 0036B56C 38 60 00 80 */ li r3, 0x80
/* 8036E630 0036B570 38 00 00 40 */ li r0, 0x40
/* 8036E634 0036B574 98 61 00 10 */ stb r3, 0x10(r1)
/* 8036E638 0036B578 38 61 00 0C */ addi r3, r1, 0xc
/* 8036E63C 0036B57C 38 80 00 40 */ li r4, 0x40
/* 8036E640 0036B580 90 01 00 0C */ stw r0, 0xc(r1)
/* 8036E644 0036B584 9B C1 00 14 */ stb r30, 0x14(r1)
/* 8036E648 0036B588 48 00 37 21 */ bl func_80371D68
/* 8036E64C 0036B58C 38 60 00 00 */ li r3, 0
/* 8036E650 0036B590 48 00 00 38 */ b lbl_8036E688
lbl_8036E654:
/* 8036E654 0036B594 38 9F 00 60 */ addi r4, r31, 0x60
/* 8036E658 0036B598 38 60 00 01 */ li r3, 1
/* 8036E65C 0036B59C 4C C6 31 82 */ crclr 6
/* 8036E660 0036B5A0 48 00 45 F5 */ bl func_80372C54
/* 8036E664 0036B5A4 7F A3 EB 78 */ mr r3, r29
/* 8036E668 0036B5A8 4B FF E9 71 */ bl func_8036CFD8
/* 8036E66C 0036B5AC 38 9F 00 80 */ addi r4, r31, 0x80
/* 8036E670 0036B5B0 7C 7F 1B 78 */ mr r31, r3
/* 8036E674 0036B5B4 38 60 00 01 */ li r3, 1
/* 8036E678 0036B5B8 7F E5 FB 78 */ mr r5, r31
/* 8036E67C 0036B5BC 4C C6 31 82 */ crclr 6
/* 8036E680 0036B5C0 48 00 45 D5 */ bl func_80372C54
/* 8036E684 0036B5C4 7F E3 FB 78 */ mr r3, r31
lbl_8036E688:
/* 8036E688 0036B5C8 80 01 00 E4 */ lwz r0, 0xe4(r1)
/* 8036E68C 0036B5CC 83 E1 00 DC */ lwz r31, 0xdc(r1)
/* 8036E690 0036B5D0 83 C1 00 D8 */ lwz r30, 0xd8(r1)
/* 8036E694 0036B5D4 83 A1 00 D4 */ lwz r29, 0xd4(r1)
/* 8036E698 0036B5D8 7C 08 03 A6 */ mtlr r0
/* 8036E69C 0036B5DC 38 21 00 E0 */ addi r1, r1, 0xe0
/* 8036E6A0 0036B5E0 4E 80 00 20 */ blr
.global func_8036E6A4
func_8036E6A4:
/* 8036E6A4 0036B5E4 54 2B 06 FE */ clrlwi r11, r1, 0x1b
/* 8036E6A8 0036B5E8 7C 2C 0B 78 */ mr r12, r1
/* 8036E6AC 0036B5EC 21 6B F6 C0 */ subfic r11, r11, -2368
/* 8036E6B0 0036B5F0 7C 21 59 6E */ stwux r1, r1, r11
/* 8036E6B4 0036B5F4 7C 08 02 A6 */ mflr r0
/* 8036E6B8 0036B5F8 90 0C 00 04 */ stw r0, 4(r12)
/* 8036E6BC 0036B5FC BF 6C FF EC */ stmw r27, -0x14(r12)
/* 8036E6C0 0036B600 7C 7B 1B 78 */ mr r27, r3
/* 8036E6C4 0036B604 3C 60 80 3A */ lis r3, lbl_803A28D0@ha
/* 8036E6C8 0036B608 3B E3 28 D0 */ addi r31, r3, lbl_803A28D0@l
/* 8036E6CC 0036B60C 38 9F 01 80 */ addi r4, r31, 0x180
/* 8036E6D0 0036B610 38 60 00 01 */ li r3, 1
/* 8036E6D4 0036B614 83 9B 00 20 */ lwz r28, 0x20(r27)
/* 8036E6D8 0036B618 A3 BB 00 1C */ lhz r29, 0x1c(r27)
/* 8036E6DC 0036B61C 8B DB 00 18 */ lbz r30, 0x18(r27)
/* 8036E6E0 0036B620 7F 86 E3 78 */ mr r6, r28
/* 8036E6E4 0036B624 88 BB 00 14 */ lbz r5, 0x14(r27)
/* 8036E6E8 0036B628 7F A7 EB 78 */ mr r7, r29
/* 8036E6EC 0036B62C 7F C8 F3 78 */ mr r8, r30
/* 8036E6F0 0036B630 4C C6 31 82 */ crclr 6
/* 8036E6F4 0036B634 48 00 45 61 */ bl func_80372C54
/* 8036E6F8 0036B638 57 C0 07 BD */ rlwinm. r0, r30, 0, 0x1e, 0x1e
/* 8036E6FC 0036B63C 41 82 00 40 */ beq lbl_8036E73C
/* 8036E700 0036B640 38 61 00 64 */ addi r3, r1, 0x64
/* 8036E704 0036B644 38 80 00 00 */ li r4, 0
/* 8036E708 0036B648 38 A0 00 40 */ li r5, 0x40
/* 8036E70C 0036B64C 4B C9 4D 4D */ bl func_80003458
/* 8036E710 0036B650 38 60 00 80 */ li r3, 0x80
/* 8036E714 0036B654 38 A0 00 40 */ li r5, 0x40
/* 8036E718 0036B658 38 00 00 12 */ li r0, 0x12
/* 8036E71C 0036B65C 98 61 00 68 */ stb r3, 0x68(r1)
/* 8036E720 0036B660 38 61 00 64 */ addi r3, r1, 0x64
/* 8036E724 0036B664 38 80 00 40 */ li r4, 0x40
/* 8036E728 0036B668 90 A1 00 64 */ stw r5, 0x64(r1)
/* 8036E72C 0036B66C 98 01 00 6C */ stb r0, 0x6c(r1)
/* 8036E730 0036B670 48 00 36 39 */ bl func_80371D68
/* 8036E734 0036B674 38 60 00 00 */ li r3, 0
/* 8036E738 0036B678 48 00 01 90 */ b lbl_8036E8C8
lbl_8036E73C:
/* 8036E73C 0036B67C 93 A1 00 20 */ stw r29, 0x20(r1)
/* 8036E740 0036B680 7F 63 DB 78 */ mr r3, r27
/* 8036E744 0036B684 38 80 00 40 */ li r4, 0x40
/* 8036E748 0036B688 4B FF EE D5 */ bl func_8036D61C
/* 8036E74C 0036B68C 57 C0 06 73 */ rlwinm. r0, r30, 0, 0x19, 0x19
/* 8036E750 0036B690 41 82 00 38 */ beq lbl_8036E788
/* 8036E754 0036B694 57 80 06 FE */ clrlwi r0, r28, 0x1b
/* 8036E758 0036B698 38 81 01 00 */ addi r4, r1, 0x100
/* 8036E75C 0036B69C 80 A1 00 20 */ lwz r5, 0x20(r1)
/* 8036E760 0036B6A0 7F 63 DB 78 */ mr r3, r27
/* 8036E764 0036B6A4 7C 84 02 14 */ add r4, r4, r0
/* 8036E768 0036B6A8 4B FF ED 85 */ bl func_8036D4EC
/* 8036E76C 0036B6AC 7F 84 E3 78 */ mr r4, r28
/* 8036E770 0036B6B0 38 61 01 00 */ addi r3, r1, 0x100
/* 8036E774 0036B6B4 38 A1 00 20 */ addi r5, r1, 0x20
/* 8036E778 0036B6B8 38 C0 00 00 */ li r6, 0
/* 8036E77C 0036B6BC 48 00 12 99 */ bl func_8036FA14
/* 8036E780 0036B6C0 7C 7E 1B 78 */ mr r30, r3
/* 8036E784 0036B6C4 48 00 00 34 */ b lbl_8036E7B8
lbl_8036E788:
/* 8036E788 0036B6C8 80 A1 00 20 */ lwz r5, 0x20(r1)
/* 8036E78C 0036B6CC 7F 63 DB 78 */ mr r3, r27
/* 8036E790 0036B6D0 38 81 01 00 */ addi r4, r1, 0x100
/* 8036E794 0036B6D4 4B FF ED 59 */ bl func_8036D4EC
/* 8036E798 0036B6D8 57 C0 EF FE */ rlwinm r0, r30, 0x1d, 0x1f, 0x1f
/* 8036E79C 0036B6DC 7F 84 E3 78 */ mr r4, r28
/* 8036E7A0 0036B6E0 38 61 01 00 */ addi r3, r1, 0x100
/* 8036E7A4 0036B6E4 38 A1 00 20 */ addi r5, r1, 0x20
/* 8036E7A8 0036B6E8 68 06 00 01 */ xori r6, r0, 1
/* 8036E7AC 0036B6EC 38 E0 00 00 */ li r7, 0
/* 8036E7B0 0036B6F0 48 00 26 25 */ bl func_80370DD4
/* 8036E7B4 0036B6F4 7C 7E 1B 78 */ mr r30, r3
lbl_8036E7B8:
/* 8036E7B8 0036B6F8 7F 63 DB 78 */ mr r3, r27
/* 8036E7BC 0036B6FC 38 80 00 00 */ li r4, 0
/* 8036E7C0 0036B700 4B FF EE 8D */ bl func_8036D64C
/* 8036E7C4 0036B704 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E7C8 0036B708 40 82 00 3C */ bne lbl_8036E804
/* 8036E7CC 0036B70C 38 61 00 A4 */ addi r3, r1, 0xa4
/* 8036E7D0 0036B710 38 80 00 00 */ li r4, 0
/* 8036E7D4 0036B714 38 A0 00 40 */ li r5, 0x40
/* 8036E7D8 0036B718 4B C9 4C 81 */ bl func_80003458
/* 8036E7DC 0036B71C 38 60 00 40 */ li r3, 0x40
/* 8036E7E0 0036B720 38 00 00 80 */ li r0, 0x80
/* 8036E7E4 0036B724 90 61 00 A4 */ stw r3, 0xa4(r1)
/* 8036E7E8 0036B728 7F 63 DB 78 */ mr r3, r27
/* 8036E7EC 0036B72C 38 81 00 A4 */ addi r4, r1, 0xa4
/* 8036E7F0 0036B730 38 A0 00 40 */ li r5, 0x40
/* 8036E7F4 0036B734 98 01 00 A8 */ stb r0, 0xa8(r1)
/* 8036E7F8 0036B738 9B C1 00 AC */ stb r30, 0xac(r1)
/* 8036E7FC 0036B73C 4B FF ED 7D */ bl func_8036D578
/* 8036E800 0036B740 7C 7E 1B 78 */ mr r30, r3
lbl_8036E804:
/* 8036E804 0036B744 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E808 0036B748 41 82 00 8C */ beq lbl_8036E894
/* 8036E80C 0036B74C 38 1E F9 00 */ addi r0, r30, -1792
/* 8036E810 0036B750 28 00 00 06 */ cmplwi r0, 6
/* 8036E814 0036B754 41 81 00 44 */ bgt lbl_8036E858
/* 8036E818 0036B758 3C 60 80 3D */ lis r3, lbl_803D3200@ha
/* 8036E81C 0036B75C 54 00 10 3A */ slwi r0, r0, 2
/* 8036E820 0036B760 38 63 32 00 */ addi r3, r3, lbl_803D3200@l
/* 8036E824 0036B764 7C 03 00 2E */ lwzx r0, r3, r0
/* 8036E828 0036B768 7C 09 03 A6 */ mtctr r0
/* 8036E82C 0036B76C 4E 80 04 20 */ bctr
/* 8036E830 0036B770 3B C0 00 15 */ li r30, 0x15
/* 8036E834 0036B774 48 00 00 28 */ b lbl_8036E85C
/* 8036E838 0036B778 3B C0 00 13 */ li r30, 0x13
/* 8036E83C 0036B77C 48 00 00 20 */ b lbl_8036E85C
/* 8036E840 0036B780 3B C0 00 21 */ li r30, 0x21
/* 8036E844 0036B784 48 00 00 18 */ b lbl_8036E85C
/* 8036E848 0036B788 3B C0 00 22 */ li r30, 0x22
/* 8036E84C 0036B78C 48 00 00 10 */ b lbl_8036E85C
/* 8036E850 0036B790 3B C0 00 20 */ li r30, 0x20
/* 8036E854 0036B794 48 00 00 08 */ b lbl_8036E85C
lbl_8036E858:
/* 8036E858 0036B798 3B C0 00 03 */ li r30, 3
lbl_8036E85C:
/* 8036E85C 0036B79C 38 61 00 24 */ addi r3, r1, 0x24
/* 8036E860 0036B7A0 38 80 00 00 */ li r4, 0
/* 8036E864 0036B7A4 38 A0 00 40 */ li r5, 0x40
/* 8036E868 0036B7A8 4B C9 4B F1 */ bl func_80003458
/* 8036E86C 0036B7AC 38 60 00 80 */ li r3, 0x80
/* 8036E870 0036B7B0 38 00 00 40 */ li r0, 0x40
/* 8036E874 0036B7B4 98 61 00 28 */ stb r3, 0x28(r1)
/* 8036E878 0036B7B8 38 61 00 24 */ addi r3, r1, 0x24
/* 8036E87C 0036B7BC 38 80 00 40 */ li r4, 0x40
/* 8036E880 0036B7C0 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036E884 0036B7C4 9B C1 00 2C */ stb r30, 0x2c(r1)
/* 8036E888 0036B7C8 48 00 34 E1 */ bl func_80371D68
/* 8036E88C 0036B7CC 38 60 00 00 */ li r3, 0
/* 8036E890 0036B7D0 48 00 00 38 */ b lbl_8036E8C8
lbl_8036E894:
/* 8036E894 0036B7D4 38 9F 00 60 */ addi r4, r31, 0x60
/* 8036E898 0036B7D8 38 60 00 01 */ li r3, 1
/* 8036E89C 0036B7DC 4C C6 31 82 */ crclr 6
/* 8036E8A0 0036B7E0 48 00 43 B5 */ bl func_80372C54
/* 8036E8A4 0036B7E4 7F 63 DB 78 */ mr r3, r27
/* 8036E8A8 0036B7E8 4B FF E7 31 */ bl func_8036CFD8
/* 8036E8AC 0036B7EC 38 9F 00 80 */ addi r4, r31, 0x80
/* 8036E8B0 0036B7F0 7C 7F 1B 78 */ mr r31, r3
/* 8036E8B4 0036B7F4 38 60 00 01 */ li r3, 1
/* 8036E8B8 0036B7F8 7F E5 FB 78 */ mr r5, r31
/* 8036E8BC 0036B7FC 4C C6 31 82 */ crclr 6
/* 8036E8C0 0036B800 48 00 43 95 */ bl func_80372C54
/* 8036E8C4 0036B804 7F E3 FB 78 */ mr r3, r31
lbl_8036E8C8:
/* 8036E8C8 0036B808 81 41 00 00 */ lwz r10, 0(r1)
/* 8036E8CC 0036B80C BB 6A FF EC */ lmw r27, -0x14(r10)
/* 8036E8D0 0036B810 80 0A 00 04 */ lwz r0, 4(r10)
/* 8036E8D4 0036B814 7C 08 03 A6 */ mtlr r0
/* 8036E8D8 0036B818 7D 41 53 78 */ mr r1, r10
/* 8036E8DC 0036B81C 4E 80 00 20 */ blr
.global func_8036E8E0
func_8036E8E0:
/* 8036E8E0 0036B820 54 2B 06 FE */ clrlwi r11, r1, 0x1b
/* 8036E8E4 0036B824 7C 2C 0B 78 */ mr r12, r1
/* 8036E8E8 0036B828 21 6B F6 C0 */ subfic r11, r11, -2368
/* 8036E8EC 0036B82C 7C 21 59 6E */ stwux r1, r1, r11
/* 8036E8F0 0036B830 7C 08 02 A6 */ mflr r0
/* 8036E8F4 0036B834 90 0C 00 04 */ stw r0, 4(r12)
/* 8036E8F8 0036B838 BF 4C FF E8 */ stmw r26, -0x18(r12)
/* 8036E8FC 0036B83C 7C 7F 1B 78 */ mr r31, r3
/* 8036E900 0036B840 3C 60 80 3A */ lis r3, lbl_803A28D0@ha
/* 8036E904 0036B844 3B A3 28 D0 */ addi r29, r3, lbl_803A28D0@l
/* 8036E908 0036B848 38 9D 01 B0 */ addi r4, r29, 0x1b0
/* 8036E90C 0036B84C 38 60 00 01 */ li r3, 1
/* 8036E910 0036B850 83 5F 00 20 */ lwz r26, 0x20(r31)
/* 8036E914 0036B854 A3 7F 00 1C */ lhz r27, 0x1c(r31)
/* 8036E918 0036B858 8B DF 00 18 */ lbz r30, 0x18(r31)
/* 8036E91C 0036B85C 7F 46 D3 78 */ mr r6, r26
/* 8036E920 0036B860 88 BF 00 14 */ lbz r5, 0x14(r31)
/* 8036E924 0036B864 7F 67 DB 78 */ mr r7, r27
/* 8036E928 0036B868 7F C8 F3 78 */ mr r8, r30
/* 8036E92C 0036B86C 4C C6 31 82 */ crclr 6
/* 8036E930 0036B870 48 00 43 25 */ bl func_80372C54
/* 8036E934 0036B874 57 C0 07 BD */ rlwinm. r0, r30, 0, 0x1e, 0x1e
/* 8036E938 0036B878 41 82 00 40 */ beq lbl_8036E978
/* 8036E93C 0036B87C 38 61 00 64 */ addi r3, r1, 0x64
/* 8036E940 0036B880 38 80 00 00 */ li r4, 0
/* 8036E944 0036B884 38 A0 00 40 */ li r5, 0x40
/* 8036E948 0036B888 4B C9 4B 11 */ bl func_80003458
/* 8036E94C 0036B88C 38 60 00 80 */ li r3, 0x80
/* 8036E950 0036B890 38 A0 00 40 */ li r5, 0x40
/* 8036E954 0036B894 38 00 00 12 */ li r0, 0x12
/* 8036E958 0036B898 98 61 00 68 */ stb r3, 0x68(r1)
/* 8036E95C 0036B89C 38 61 00 64 */ addi r3, r1, 0x64
/* 8036E960 0036B8A0 38 80 00 40 */ li r4, 0x40
/* 8036E964 0036B8A4 90 A1 00 64 */ stw r5, 0x64(r1)
/* 8036E968 0036B8A8 98 01 00 6C */ stb r0, 0x6c(r1)
/* 8036E96C 0036B8AC 48 00 33 FD */ bl func_80371D68
/* 8036E970 0036B8B0 38 60 00 00 */ li r3, 0
/* 8036E974 0036B8B4 48 00 01 98 */ b lbl_8036EB0C
lbl_8036E978:
/* 8036E978 0036B8B8 57 DC 06 73 */ rlwinm. r28, r30, 0, 0x19, 0x19
/* 8036E97C 0036B8BC 93 61 00 20 */ stw r27, 0x20(r1)
/* 8036E980 0036B8C0 41 82 00 20 */ beq lbl_8036E9A0
/* 8036E984 0036B8C4 7F 44 D3 78 */ mr r4, r26
/* 8036E988 0036B8C8 38 61 01 00 */ addi r3, r1, 0x100
/* 8036E98C 0036B8CC 38 A1 00 20 */ addi r5, r1, 0x20
/* 8036E990 0036B8D0 38 C0 00 01 */ li r6, 1
/* 8036E994 0036B8D4 48 00 10 81 */ bl func_8036FA14
/* 8036E998 0036B8D8 7C 7E 1B 78 */ mr r30, r3
/* 8036E99C 0036B8DC 48 00 00 24 */ b lbl_8036E9C0
lbl_8036E9A0:
/* 8036E9A0 0036B8E0 57 C0 EF FE */ rlwinm r0, r30, 0x1d, 0x1f, 0x1f
/* 8036E9A4 0036B8E4 7F 44 D3 78 */ mr r4, r26
/* 8036E9A8 0036B8E8 38 61 01 00 */ addi r3, r1, 0x100
/* 8036E9AC 0036B8EC 38 A1 00 20 */ addi r5, r1, 0x20
/* 8036E9B0 0036B8F0 68 06 00 01 */ xori r6, r0, 1
/* 8036E9B4 0036B8F4 38 E0 00 01 */ li r7, 1
/* 8036E9B8 0036B8F8 48 00 24 1D */ bl func_80370DD4
/* 8036E9BC 0036B8FC 7C 7E 1B 78 */ mr r30, r3
lbl_8036E9C0:
/* 8036E9C0 0036B900 7F E3 FB 78 */ mr r3, r31
/* 8036E9C4 0036B904 38 80 00 00 */ li r4, 0
/* 8036E9C8 0036B908 4B FF EC 85 */ bl func_8036D64C
/* 8036E9CC 0036B90C 2C 1E 00 00 */ cmpwi r30, 0
/* 8036E9D0 0036B910 40 82 00 78 */ bne lbl_8036EA48
/* 8036E9D4 0036B914 38 61 00 A4 */ addi r3, r1, 0xa4
/* 8036E9D8 0036B918 38 80 00 00 */ li r4, 0
/* 8036E9DC 0036B91C 38 A0 00 40 */ li r5, 0x40
/* 8036E9E0 0036B920 4B C9 4A 79 */ bl func_80003458
/* 8036E9E4 0036B924 80 81 00 20 */ lwz r4, 0x20(r1)
/* 8036E9E8 0036B928 38 00 00 80 */ li r0, 0x80
/* 8036E9EC 0036B92C 9B C1 00 AC */ stb r30, 0xac(r1)
/* 8036E9F0 0036B930 7F E3 FB 78 */ mr r3, r31
/* 8036E9F4 0036B934 38 84 00 40 */ addi r4, r4, 0x40
/* 8036E9F8 0036B938 38 A0 00 40 */ li r5, 0x40
/* 8036E9FC 0036B93C 90 81 00 A4 */ stw r4, 0xa4(r1)
/* 8036EA00 0036B940 38 81 00 A4 */ addi r4, r1, 0xa4
/* 8036EA04 0036B944 98 01 00 A8 */ stb r0, 0xa8(r1)
/* 8036EA08 0036B948 4B FF EB 71 */ bl func_8036D578
/* 8036EA0C 0036B94C 2C 1C 00 00 */ cmpwi r28, 0
/* 8036EA10 0036B950 41 82 00 24 */ beq lbl_8036EA34
/* 8036EA14 0036B954 57 40 06 FE */ clrlwi r0, r26, 0x1b
/* 8036EA18 0036B958 38 81 01 00 */ addi r4, r1, 0x100
/* 8036EA1C 0036B95C 80 A1 00 20 */ lwz r5, 0x20(r1)
/* 8036EA20 0036B960 7F E3 FB 78 */ mr r3, r31
/* 8036EA24 0036B964 7C 84 02 14 */ add r4, r4, r0
/* 8036EA28 0036B968 4B FF EB 51 */ bl func_8036D578
/* 8036EA2C 0036B96C 7C 7E 1B 78 */ mr r30, r3
/* 8036EA30 0036B970 48 00 00 18 */ b lbl_8036EA48
lbl_8036EA34:
/* 8036EA34 0036B974 80 A1 00 20 */ lwz r5, 0x20(r1)
/* 8036EA38 0036B978 7F E3 FB 78 */ mr r3, r31
/* 8036EA3C 0036B97C 38 81 01 00 */ addi r4, r1, 0x100
/* 8036EA40 0036B980 4B FF EB 39 */ bl func_8036D578
/* 8036EA44 0036B984 7C 7E 1B 78 */ mr r30, r3
lbl_8036EA48:
/* 8036EA48 0036B988 2C 1E 00 00 */ cmpwi r30, 0
/* 8036EA4C 0036B98C 41 82 00 8C */ beq lbl_8036EAD8
/* 8036EA50 0036B990 38 1E F9 00 */ addi r0, r30, -1792
/* 8036EA54 0036B994 28 00 00 06 */ cmplwi r0, 6
/* 8036EA58 0036B998 41 81 00 44 */ bgt lbl_8036EA9C
/* 8036EA5C 0036B99C 3C 60 80 3D */ lis r3, lbl_803D321C@ha
/* 8036EA60 0036B9A0 54 00 10 3A */ slwi r0, r0, 2
/* 8036EA64 0036B9A4 38 63 32 1C */ addi r3, r3, lbl_803D321C@l
/* 8036EA68 0036B9A8 7C 03 00 2E */ lwzx r0, r3, r0
/* 8036EA6C 0036B9AC 7C 09 03 A6 */ mtctr r0
/* 8036EA70 0036B9B0 4E 80 04 20 */ bctr
/* 8036EA74 0036B9B4 3B 80 00 15 */ li r28, 0x15
/* 8036EA78 0036B9B8 48 00 00 28 */ b lbl_8036EAA0
/* 8036EA7C 0036B9BC 3B 80 00 13 */ li r28, 0x13
/* 8036EA80 0036B9C0 48 00 00 20 */ b lbl_8036EAA0
/* 8036EA84 0036B9C4 3B 80 00 21 */ li r28, 0x21
/* 8036EA88 0036B9C8 48 00 00 18 */ b lbl_8036EAA0
/* 8036EA8C 0036B9CC 3B 80 00 22 */ li r28, 0x22
/* 8036EA90 0036B9D0 48 00 00 10 */ b lbl_8036EAA0
/* 8036EA94 0036B9D4 3B 80 00 20 */ li r28, 0x20
/* 8036EA98 0036B9D8 48 00 00 08 */ b lbl_8036EAA0
lbl_8036EA9C:
/* 8036EA9C 0036B9DC 3B 80 00 03 */ li r28, 3
lbl_8036EAA0:
/* 8036EAA0 0036B9E0 38 61 00 24 */ addi r3, r1, 0x24
/* 8036EAA4 0036B9E4 38 80 00 00 */ li r4, 0
/* 8036EAA8 0036B9E8 38 A0 00 40 */ li r5, 0x40
/* 8036EAAC 0036B9EC 4B C9 49 AD */ bl func_80003458
/* 8036EAB0 0036B9F0 38 60 00 80 */ li r3, 0x80
/* 8036EAB4 0036B9F4 38 00 00 40 */ li r0, 0x40
/* 8036EAB8 0036B9F8 98 61 00 28 */ stb r3, 0x28(r1)
/* 8036EABC 0036B9FC 38 61 00 24 */ addi r3, r1, 0x24
/* 8036EAC0 0036BA00 38 80 00 40 */ li r4, 0x40
/* 8036EAC4 0036BA04 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036EAC8 0036BA08 9B 81 00 2C */ stb r28, 0x2c(r1)
/* 8036EACC 0036BA0C 48 00 32 9D */ bl func_80371D68
/* 8036EAD0 0036BA10 38 60 00 00 */ li r3, 0
/* 8036EAD4 0036BA14 48 00 00 38 */ b lbl_8036EB0C
lbl_8036EAD8:
/* 8036EAD8 0036BA18 38 9D 00 60 */ addi r4, r29, 0x60
/* 8036EADC 0036BA1C 38 60 00 01 */ li r3, 1
/* 8036EAE0 0036BA20 4C C6 31 82 */ crclr 6
/* 8036EAE4 0036BA24 48 00 41 71 */ bl func_80372C54
/* 8036EAE8 0036BA28 7F E3 FB 78 */ mr r3, r31
/* 8036EAEC 0036BA2C 4B FF E4 ED */ bl func_8036CFD8
/* 8036EAF0 0036BA30 38 9D 00 80 */ addi r4, r29, 0x80
/* 8036EAF4 0036BA34 7C 7D 1B 78 */ mr r29, r3
/* 8036EAF8 0036BA38 38 60 00 01 */ li r3, 1
/* 8036EAFC 0036BA3C 7F A5 EB 78 */ mr r5, r29
/* 8036EB00 0036BA40 4C C6 31 82 */ crclr 6
/* 8036EB04 0036BA44 48 00 41 51 */ bl func_80372C54
/* 8036EB08 0036BA48 7F A3 EB 78 */ mr r3, r29
lbl_8036EB0C:
/* 8036EB0C 0036BA4C 81 41 00 00 */ lwz r10, 0(r1)
/* 8036EB10 0036BA50 BB 4A FF E8 */ lmw r26, -0x18(r10)
/* 8036EB14 0036BA54 80 0A 00 04 */ lwz r0, 4(r10)
/* 8036EB18 0036BA58 7C 08 03 A6 */ mtlr r0
/* 8036EB1C 0036BA5C 7D 41 53 78 */ mr r1, r10
/* 8036EB20 0036BA60 4E 80 00 20 */ blr
.global func_8036EB24
func_8036EB24:
/* 8036EB24 0036BA64 38 60 00 00 */ li r3, 0
/* 8036EB28 0036BA68 4E 80 00 20 */ blr
.global func_8036EB2C
func_8036EB2C:
/* 8036EB2C 0036BA6C 38 60 00 00 */ li r3, 0
/* 8036EB30 0036BA70 4E 80 00 20 */ blr
.global func_8036EB34
func_8036EB34:
/* 8036EB34 0036BA74 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8036EB38 0036BA78 7C 08 02 A6 */ mflr r0
/* 8036EB3C 0036BA7C 38 80 00 00 */ li r4, 0
/* 8036EB40 0036BA80 38 A0 00 40 */ li r5, 0x40
/* 8036EB44 0036BA84 90 01 00 54 */ stw r0, 0x54(r1)
/* 8036EB48 0036BA88 38 61 00 08 */ addi r3, r1, 8
/* 8036EB4C 0036BA8C 4B C9 49 0D */ bl func_80003458
/* 8036EB50 0036BA90 38 60 00 80 */ li r3, 0x80
/* 8036EB54 0036BA94 38 A0 00 40 */ li r5, 0x40
/* 8036EB58 0036BA98 38 00 00 00 */ li r0, 0
/* 8036EB5C 0036BA9C 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036EB60 0036BAA0 38 61 00 08 */ addi r3, r1, 8
/* 8036EB64 0036BAA4 38 80 00 40 */ li r4, 0x40
/* 8036EB68 0036BAA8 90 A1 00 08 */ stw r5, 8(r1)
/* 8036EB6C 0036BAAC 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036EB70 0036BAB0 48 00 31 F9 */ bl func_80371D68
/* 8036EB74 0036BAB4 48 00 2E 85 */ bl func_803719F8
/* 8036EB78 0036BAB8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8036EB7C 0036BABC 38 60 00 00 */ li r3, 0
/* 8036EB80 0036BAC0 7C 08 03 A6 */ mtlr r0
/* 8036EB84 0036BAC4 38 21 00 50 */ addi r1, r1, 0x50
/* 8036EB88 0036BAC8 4E 80 00 20 */ blr
.global func_8036EB8C
func_8036EB8C:
/* 8036EB8C 0036BACC 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8036EB90 0036BAD0 7C 08 02 A6 */ mflr r0
/* 8036EB94 0036BAD4 38 80 00 00 */ li r4, 0
/* 8036EB98 0036BAD8 38 A0 00 40 */ li r5, 0x40
/* 8036EB9C 0036BADC 90 01 00 54 */ stw r0, 0x54(r1)
/* 8036EBA0 0036BAE0 38 61 00 08 */ addi r3, r1, 8
/* 8036EBA4 0036BAE4 4B C9 48 B5 */ bl func_80003458
/* 8036EBA8 0036BAE8 38 60 00 80 */ li r3, 0x80
/* 8036EBAC 0036BAEC 38 A0 00 40 */ li r5, 0x40
/* 8036EBB0 0036BAF0 38 00 00 00 */ li r0, 0
/* 8036EBB4 0036BAF4 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036EBB8 0036BAF8 38 61 00 08 */ addi r3, r1, 8
/* 8036EBBC 0036BAFC 38 80 00 40 */ li r4, 0x40
/* 8036EBC0 0036BB00 90 A1 00 08 */ stw r5, 8(r1)
/* 8036EBC4 0036BB04 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036EBC8 0036BB08 48 00 31 A1 */ bl func_80371D68
/* 8036EBCC 0036BB0C 4B C9 69 4D */ bl func_80005518
/* 8036EBD0 0036BB10 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8036EBD4 0036BB14 38 60 00 00 */ li r3, 0
/* 8036EBD8 0036BB18 7C 08 03 A6 */ mtlr r0
/* 8036EBDC 0036BB1C 38 21 00 50 */ addi r1, r1, 0x50
/* 8036EBE0 0036BB20 4E 80 00 20 */ blr
.global func_8036EBE4
func_8036EBE4:
/* 8036EBE4 0036BB24 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8036EBE8 0036BB28 7C 08 02 A6 */ mflr r0
/* 8036EBEC 0036BB2C 3C 60 80 45 */ lis r3, lbl_8044F288@ha
/* 8036EBF0 0036BB30 38 A0 00 40 */ li r5, 0x40
/* 8036EBF4 0036BB34 90 01 00 64 */ stw r0, 0x64(r1)
/* 8036EBF8 0036BB38 38 83 F2 88 */ addi r4, r3, lbl_8044F288@l
/* 8036EBFC 0036BB3C 38 00 00 00 */ li r0, 0
/* 8036EC00 0036BB40 38 61 00 14 */ addi r3, r1, 0x14
/* 8036EC04 0036BB44 90 04 00 00 */ stw r0, 0(r4)
/* 8036EC08 0036BB48 38 80 00 00 */ li r4, 0
/* 8036EC0C 0036BB4C 4B C9 48 4D */ bl func_80003458
/* 8036EC10 0036BB50 38 60 00 80 */ li r3, 0x80
/* 8036EC14 0036BB54 38 A0 00 40 */ li r5, 0x40
/* 8036EC18 0036BB58 38 00 00 00 */ li r0, 0
/* 8036EC1C 0036BB5C 98 61 00 18 */ stb r3, 0x18(r1)
/* 8036EC20 0036BB60 38 61 00 14 */ addi r3, r1, 0x14
/* 8036EC24 0036BB64 38 80 00 40 */ li r4, 0x40
/* 8036EC28 0036BB68 90 A1 00 14 */ stw r5, 0x14(r1)
/* 8036EC2C 0036BB6C 98 01 00 1C */ stb r0, 0x1c(r1)
/* 8036EC30 0036BB70 48 00 31 39 */ bl func_80371D68
/* 8036EC34 0036BB74 38 61 00 08 */ addi r3, r1, 8
/* 8036EC38 0036BB78 38 80 00 01 */ li r4, 1
/* 8036EC3C 0036BB7C 4B FF E0 01 */ bl func_8036CC3C
/* 8036EC40 0036BB80 38 61 00 08 */ addi r3, r1, 8
/* 8036EC44 0036BB84 4B FF E0 11 */ bl func_8036CC54
/* 8036EC48 0036BB88 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8036EC4C 0036BB8C 38 60 00 00 */ li r3, 0
/* 8036EC50 0036BB90 7C 08 03 A6 */ mtlr r0
/* 8036EC54 0036BB94 38 21 00 60 */ addi r1, r1, 0x60
/* 8036EC58 0036BB98 4E 80 00 20 */ blr
.global func_8036EC5C
func_8036EC5C:
/* 8036EC5C 0036BB9C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8036EC60 0036BBA0 7C 08 02 A6 */ mflr r0
/* 8036EC64 0036BBA4 3C 60 80 45 */ lis r3, lbl_8044F288@ha
/* 8036EC68 0036BBA8 38 A0 00 40 */ li r5, 0x40
/* 8036EC6C 0036BBAC 90 01 00 54 */ stw r0, 0x54(r1)
/* 8036EC70 0036BBB0 38 83 F2 88 */ addi r4, r3, lbl_8044F288@l
/* 8036EC74 0036BBB4 38 00 00 01 */ li r0, 1
/* 8036EC78 0036BBB8 38 61 00 08 */ addi r3, r1, 8
/* 8036EC7C 0036BBBC 90 04 00 00 */ stw r0, 0(r4)
/* 8036EC80 0036BBC0 38 80 00 00 */ li r4, 0
/* 8036EC84 0036BBC4 4B C9 47 D5 */ bl func_80003458
/* 8036EC88 0036BBC8 38 60 00 80 */ li r3, 0x80
/* 8036EC8C 0036BBCC 38 A0 00 40 */ li r5, 0x40
/* 8036EC90 0036BBD0 38 00 00 00 */ li r0, 0
/* 8036EC94 0036BBD4 98 61 00 0C */ stb r3, 0xc(r1)
/* 8036EC98 0036BBD8 38 61 00 08 */ addi r3, r1, 8
/* 8036EC9C 0036BBDC 38 80 00 40 */ li r4, 0x40
/* 8036ECA0 0036BBE0 90 A1 00 08 */ stw r5, 8(r1)
/* 8036ECA4 0036BBE4 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036ECA8 0036BBE8 48 00 30 C1 */ bl func_80371D68
/* 8036ECAC 0036BBEC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8036ECB0 0036BBF0 38 60 00 00 */ li r3, 0
/* 8036ECB4 0036BBF4 7C 08 03 A6 */ mtlr r0
/* 8036ECB8 0036BBF8 38 21 00 50 */ addi r1, r1, 0x50
/* 8036ECBC 0036BBFC 4E 80 00 20 */ blr
.global func_8036ECC0
func_8036ECC0:
/* 8036ECC0 0036BC00 3C 80 80 45 */ lis r4, lbl_8044F288@ha
/* 8036ECC4 0036BC04 90 64 F2 88 */ stw r3, lbl_8044F288@l(r4)
/* 8036ECC8 0036BC08 4E 80 00 20 */ blr
.global func_8036ECCC
func_8036ECCC:
/* 8036ECCC 0036BC0C 3C 60 80 45 */ lis r3, lbl_8044F288@ha
/* 8036ECD0 0036BC10 38 63 F2 88 */ addi r3, r3, lbl_8044F288@l
/* 8036ECD4 0036BC14 80 63 00 00 */ lwz r3, 0(r3)
/* 8036ECD8 0036BC18 4E 80 00 20 */ blr
.global func_8036ECDC
func_8036ECDC:
/* 8036ECDC 0036BC1C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036ECE0 0036BC20 7C 08 02 A6 */ mflr r0
/* 8036ECE4 0036BC24 3C C0 80 3A */ lis r6, lbl_803A2AAC@ha
/* 8036ECE8 0036BC28 3C A0 80 3A */ lis r5, lbl_803A2AB4@ha
/* 8036ECEC 0036BC2C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036ECF0 0036BC30 BF 61 00 0C */ stmw r27, 0xc(r1)
/* 8036ECF4 0036BC34 7C 9B 23 78 */ mr r27, r4
/* 8036ECF8 0036BC38 7C 7F 1B 78 */ mr r31, r3
/* 8036ECFC 0036BC3C 3B A6 2A AC */ addi r29, r6, lbl_803A2AAC@l
/* 8036ED00 0036BC40 3B C5 2A B4 */ addi r30, r5, lbl_803A2AB4@l
/* 8036ED04 0036BC44 3B 80 00 00 */ li r28, 0
/* 8036ED08 0036BC48 48 00 00 4C */ b lbl_8036ED54
lbl_8036ED0C:
/* 8036ED0C 0036BC4C 88 BF 00 00 */ lbz r5, 0(r31)
/* 8036ED10 0036BC50 7F A4 EB 78 */ mr r4, r29
/* 8036ED14 0036BC54 38 60 00 08 */ li r3, 8
/* 8036ED18 0036BC58 4C C6 31 82 */ crclr 6
/* 8036ED1C 0036BC5C 48 00 3F 39 */ bl func_80372C54
/* 8036ED20 0036BC60 57 80 E0 06 */ slwi r0, r28, 0x1c
/* 8036ED24 0036BC64 57 83 0F FE */ srwi r3, r28, 0x1f
/* 8036ED28 0036BC68 7C 03 00 50 */ subf r0, r3, r0
/* 8036ED2C 0036BC6C 54 00 20 3E */ rotlwi r0, r0, 4
/* 8036ED30 0036BC70 7C 00 1A 14 */ add r0, r0, r3
/* 8036ED34 0036BC74 2C 00 00 0F */ cmpwi r0, 0xf
/* 8036ED38 0036BC78 40 82 00 14 */ bne lbl_8036ED4C
/* 8036ED3C 0036BC7C 7F C4 F3 78 */ mr r4, r30
/* 8036ED40 0036BC80 38 60 00 08 */ li r3, 8
/* 8036ED44 0036BC84 4C C6 31 82 */ crclr 6
/* 8036ED48 0036BC88 48 00 3F 0D */ bl func_80372C54
lbl_8036ED4C:
/* 8036ED4C 0036BC8C 3B 9C 00 01 */ addi r28, r28, 1
/* 8036ED50 0036BC90 3B FF 00 01 */ addi r31, r31, 1
lbl_8036ED54:
/* 8036ED54 0036BC94 7C 1C D8 00 */ cmpw r28, r27
/* 8036ED58 0036BC98 41 80 FF B4 */ blt lbl_8036ED0C
/* 8036ED5C 0036BC9C 3C 80 80 3A */ lis r4, lbl_803A2AB4@ha
/* 8036ED60 0036BCA0 38 60 00 08 */ li r3, 8
/* 8036ED64 0036BCA4 38 84 2A B4 */ addi r4, r4, lbl_803A2AB4@l
/* 8036ED68 0036BCA8 4C C6 31 82 */ crclr 6
/* 8036ED6C 0036BCAC 48 00 3E E9 */ bl func_80372C54
/* 8036ED70 0036BCB0 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 8036ED74 0036BCB4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036ED78 0036BCB8 7C 08 03 A6 */ mtlr r0
/* 8036ED7C 0036BCBC 38 21 00 20 */ addi r1, r1, 0x20
/* 8036ED80 0036BCC0 4E 80 00 20 */ blr
.global func_8036ED84
func_8036ED84:
/* 8036ED84 0036BCC4 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 8036ED88 0036BCC8 7C 08 02 A6 */ mflr r0
/* 8036ED8C 0036BCCC 90 01 00 74 */ stw r0, 0x74(r1)
/* 8036ED90 0036BCD0 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8036ED94 0036BCD4 7C BF 2B 78 */ mr r31, r5
/* 8036ED98 0036BCD8 38 A0 00 40 */ li r5, 0x40
/* 8036ED9C 0036BCDC 93 C1 00 68 */ stw r30, 0x68(r1)
/* 8036EDA0 0036BCE0 7C DE 33 78 */ mr r30, r6
/* 8036EDA4 0036BCE4 93 A1 00 64 */ stw r29, 0x64(r1)
/* 8036EDA8 0036BCE8 7C 9D 23 78 */ mr r29, r4
/* 8036EDAC 0036BCEC 38 80 00 00 */ li r4, 0
/* 8036EDB0 0036BCF0 93 81 00 60 */ stw r28, 0x60(r1)
/* 8036EDB4 0036BCF4 7C 7C 1B 78 */ mr r28, r3
/* 8036EDB8 0036BCF8 38 61 00 14 */ addi r3, r1, 0x14
/* 8036EDBC 0036BCFC 4B C9 46 9D */ bl func_80003458
/* 8036EDC0 0036BD00 38 60 00 D4 */ li r3, 0xd4
/* 8036EDC4 0036BD04 38 00 00 40 */ li r0, 0x40
/* 8036EDC8 0036BD08 98 61 00 18 */ stb r3, 0x18(r1)
/* 8036EDCC 0036BD0C 38 61 00 0C */ addi r3, r1, 0xc
/* 8036EDD0 0036BD10 38 81 00 08 */ addi r4, r1, 8
/* 8036EDD4 0036BD14 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036EDD8 0036BD18 93 81 00 1C */ stw r28, 0x1c(r1)
/* 8036EDDC 0036BD1C 80 1D 00 00 */ lwz r0, 0(r29)
/* 8036EDE0 0036BD20 90 01 00 20 */ stw r0, 0x20(r1)
/* 8036EDE4 0036BD24 9B E1 00 24 */ stb r31, 0x24(r1)
/* 8036EDE8 0036BD28 4B FF E9 35 */ bl func_8036D71C
/* 8036EDEC 0036BD2C 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036EDF0 0036BD30 40 82 00 18 */ bne lbl_8036EE08
/* 8036EDF4 0036BD34 80 61 00 08 */ lwz r3, 8(r1)
/* 8036EDF8 0036BD38 38 81 00 14 */ addi r4, r1, 0x14
/* 8036EDFC 0036BD3C 38 A0 00 40 */ li r5, 0x40
/* 8036EE00 0036BD40 4B FF E5 89 */ bl func_8036D388
/* 8036EE04 0036BD44 7C 7F 1B 78 */ mr r31, r3
lbl_8036EE08:
/* 8036EE08 0036BD48 2C 1F 00 00 */ cmpwi r31, 0
/* 8036EE0C 0036BD4C 40 82 00 5C */ bne lbl_8036EE68
/* 8036EE10 0036BD50 38 60 00 00 */ li r3, 0
/* 8036EE14 0036BD54 38 00 FF FF */ li r0, -1
/* 8036EE18 0036BD58 90 7E 00 00 */ stw r3, 0(r30)
/* 8036EE1C 0036BD5C 38 81 00 10 */ addi r4, r1, 0x10
/* 8036EE20 0036BD60 38 A0 00 03 */ li r5, 3
/* 8036EE24 0036BD64 38 C0 00 03 */ li r6, 3
/* 8036EE28 0036BD68 90 1D 00 00 */ stw r0, 0(r29)
/* 8036EE2C 0036BD6C 38 E0 00 00 */ li r7, 0
/* 8036EE30 0036BD70 80 61 00 08 */ lwz r3, 8(r1)
/* 8036EE34 0036BD74 48 00 02 65 */ bl func_8036F098
/* 8036EE38 0036BD78 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036EE3C 0036BD7C 40 82 00 24 */ bne lbl_8036EE60
/* 8036EE40 0036BD80 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036EE44 0036BD84 4B FF E8 AD */ bl func_8036D6F0
/* 8036EE48 0036BD88 28 03 00 00 */ cmplwi r3, 0
/* 8036EE4C 0036BD8C 41 82 00 14 */ beq lbl_8036EE60
/* 8036EE50 0036BD90 80 03 00 20 */ lwz r0, 0x20(r3)
/* 8036EE54 0036BD94 90 1E 00 00 */ stw r0, 0(r30)
/* 8036EE58 0036BD98 80 03 00 28 */ lwz r0, 0x28(r3)
/* 8036EE5C 0036BD9C 90 1D 00 00 */ stw r0, 0(r29)
lbl_8036EE60:
/* 8036EE60 0036BDA0 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036EE64 0036BDA4 4B FF E8 29 */ bl func_8036D68C
lbl_8036EE68:
/* 8036EE68 0036BDA8 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8036EE6C 0036BDAC 4B FF E8 21 */ bl func_8036D68C
/* 8036EE70 0036BDB0 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8036EE74 0036BDB4 7F E3 FB 78 */ mr r3, r31
/* 8036EE78 0036BDB8 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 8036EE7C 0036BDBC 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 8036EE80 0036BDC0 83 A1 00 64 */ lwz r29, 0x64(r1)
/* 8036EE84 0036BDC4 83 81 00 60 */ lwz r28, 0x60(r1)
/* 8036EE88 0036BDC8 7C 08 03 A6 */ mtlr r0
/* 8036EE8C 0036BDCC 38 21 00 70 */ addi r1, r1, 0x70
/* 8036EE90 0036BDD0 4E 80 00 20 */ blr
.global func_8036EE94
func_8036EE94:
/* 8036EE94 0036BDD4 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 8036EE98 0036BDD8 7C 08 02 A6 */ mflr r0
/* 8036EE9C 0036BDDC 38 A0 00 40 */ li r5, 0x40
/* 8036EEA0 0036BDE0 90 01 00 74 */ stw r0, 0x74(r1)
/* 8036EEA4 0036BDE4 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8036EEA8 0036BDE8 7C 7F 1B 78 */ mr r31, r3
/* 8036EEAC 0036BDEC 38 61 00 14 */ addi r3, r1, 0x14
/* 8036EEB0 0036BDF0 93 C1 00 68 */ stw r30, 0x68(r1)
/* 8036EEB4 0036BDF4 93 A1 00 64 */ stw r29, 0x64(r1)
/* 8036EEB8 0036BDF8 7C 9D 23 78 */ mr r29, r4
/* 8036EEBC 0036BDFC 38 80 00 00 */ li r4, 0
/* 8036EEC0 0036BE00 4B C9 45 99 */ bl func_80003458
/* 8036EEC4 0036BE04 38 60 00 D3 */ li r3, 0xd3
/* 8036EEC8 0036BE08 38 00 00 40 */ li r0, 0x40
/* 8036EECC 0036BE0C 98 61 00 18 */ stb r3, 0x18(r1)
/* 8036EED0 0036BE10 38 61 00 0C */ addi r3, r1, 0xc
/* 8036EED4 0036BE14 38 81 00 08 */ addi r4, r1, 8
/* 8036EED8 0036BE18 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036EEDC 0036BE1C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036EEE0 0036BE20 4B FF E8 3D */ bl func_8036D71C
/* 8036EEE4 0036BE24 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036EEE8 0036BE28 40 82 00 18 */ bne lbl_8036EF00
/* 8036EEEC 0036BE2C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036EEF0 0036BE30 38 81 00 14 */ addi r4, r1, 0x14
/* 8036EEF4 0036BE34 38 A0 00 40 */ li r5, 0x40
/* 8036EEF8 0036BE38 4B FF E4 91 */ bl func_8036D388
/* 8036EEFC 0036BE3C 7C 7F 1B 78 */ mr r31, r3
lbl_8036EF00:
/* 8036EF00 0036BE40 2C 1F 00 00 */ cmpwi r31, 0
/* 8036EF04 0036BE44 40 82 00 50 */ bne lbl_8036EF54
/* 8036EF08 0036BE48 38 00 00 00 */ li r0, 0
/* 8036EF0C 0036BE4C 38 81 00 10 */ addi r4, r1, 0x10
/* 8036EF10 0036BE50 90 1D 00 00 */ stw r0, 0(r29)
/* 8036EF14 0036BE54 38 A0 00 03 */ li r5, 3
/* 8036EF18 0036BE58 38 C0 00 03 */ li r6, 3
/* 8036EF1C 0036BE5C 38 E0 00 00 */ li r7, 0
/* 8036EF20 0036BE60 80 61 00 08 */ lwz r3, 8(r1)
/* 8036EF24 0036BE64 48 00 01 75 */ bl func_8036F098
/* 8036EF28 0036BE68 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036EF2C 0036BE6C 40 82 00 10 */ bne lbl_8036EF3C
/* 8036EF30 0036BE70 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036EF34 0036BE74 4B FF E7 BD */ bl func_8036D6F0
/* 8036EF38 0036BE78 7C 7E 1B 78 */ mr r30, r3
lbl_8036EF3C:
/* 8036EF3C 0036BE7C 2C 1F 00 00 */ cmpwi r31, 0
/* 8036EF40 0036BE80 40 82 00 0C */ bne lbl_8036EF4C
/* 8036EF44 0036BE84 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 8036EF48 0036BE88 90 1D 00 00 */ stw r0, 0(r29)
lbl_8036EF4C:
/* 8036EF4C 0036BE8C 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036EF50 0036BE90 4B FF E7 3D */ bl func_8036D68C
lbl_8036EF54:
/* 8036EF54 0036BE94 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8036EF58 0036BE98 4B FF E7 35 */ bl func_8036D68C
/* 8036EF5C 0036BE9C 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8036EF60 0036BEA0 7F E3 FB 78 */ mr r3, r31
/* 8036EF64 0036BEA4 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 8036EF68 0036BEA8 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 8036EF6C 0036BEAC 83 A1 00 64 */ lwz r29, 0x64(r1)
/* 8036EF70 0036BEB0 7C 08 03 A6 */ mtlr r0
/* 8036EF74 0036BEB4 38 21 00 70 */ addi r1, r1, 0x70
/* 8036EF78 0036BEB8 4E 80 00 20 */ blr
.global func_8036EF7C
func_8036EF7C:
/* 8036EF7C 0036BEBC 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 8036EF80 0036BEC0 7C 08 02 A6 */ mflr r0
/* 8036EF84 0036BEC4 90 01 00 74 */ stw r0, 0x74(r1)
/* 8036EF88 0036BEC8 BF 61 00 5C */ stmw r27, 0x5c(r1)
/* 8036EF8C 0036BECC 7C 7B 1B 78 */ mr r27, r3
/* 8036EF90 0036BED0 7C 9F 23 78 */ mr r31, r4
/* 8036EF94 0036BED4 7C BC 2B 78 */ mr r28, r5
/* 8036EF98 0036BED8 7C DD 33 78 */ mr r29, r6
/* 8036EF9C 0036BEDC 38 61 00 14 */ addi r3, r1, 0x14
/* 8036EFA0 0036BEE0 38 80 00 00 */ li r4, 0
/* 8036EFA4 0036BEE4 38 A0 00 40 */ li r5, 0x40
/* 8036EFA8 0036BEE8 4B C9 44 B1 */ bl func_80003458
/* 8036EFAC 0036BEEC 38 60 00 00 */ li r3, 0
/* 8036EFB0 0036BEF0 38 00 00 D2 */ li r0, 0xd2
/* 8036EFB4 0036BEF4 90 7C 00 00 */ stw r3, 0(r28)
/* 8036EFB8 0036BEF8 7F 63 DB 78 */ mr r3, r27
/* 8036EFBC 0036BEFC 98 01 00 18 */ stb r0, 0x18(r1)
/* 8036EFC0 0036BF00 4B FF 9C 25 */ bl func_80368BE4
/* 8036EFC4 0036BF04 38 03 00 41 */ addi r0, r3, 0x41
/* 8036EFC8 0036BF08 9B E1 00 1C */ stb r31, 0x1c(r1)
/* 8036EFCC 0036BF0C 7F 63 DB 78 */ mr r3, r27
/* 8036EFD0 0036BF10 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036EFD4 0036BF14 4B FF 9C 11 */ bl func_80368BE4
/* 8036EFD8 0036BF18 38 03 00 01 */ addi r0, r3, 1
/* 8036EFDC 0036BF1C 38 61 00 0C */ addi r3, r1, 0xc
/* 8036EFE0 0036BF20 B0 01 00 20 */ sth r0, 0x20(r1)
/* 8036EFE4 0036BF24 38 81 00 08 */ addi r4, r1, 8
/* 8036EFE8 0036BF28 4B FF E7 35 */ bl func_8036D71C
/* 8036EFEC 0036BF2C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036EFF0 0036BF30 38 81 00 14 */ addi r4, r1, 0x14
/* 8036EFF4 0036BF34 38 A0 00 40 */ li r5, 0x40
/* 8036EFF8 0036BF38 4B FF E3 91 */ bl func_8036D388
/* 8036EFFC 0036BF3C 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036F000 0036BF40 40 82 00 24 */ bne lbl_8036F024
/* 8036F004 0036BF44 7F 63 DB 78 */ mr r3, r27
/* 8036F008 0036BF48 4B FF 9B DD */ bl func_80368BE4
/* 8036F00C 0036BF4C 7C 65 1B 78 */ mr r5, r3
/* 8036F010 0036BF50 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F014 0036BF54 7F 64 DB 78 */ mr r4, r27
/* 8036F018 0036BF58 38 A5 00 01 */ addi r5, r5, 1
/* 8036F01C 0036BF5C 4B FF E3 6D */ bl func_8036D388
/* 8036F020 0036BF60 7C 7F 1B 78 */ mr r31, r3
lbl_8036F024:
/* 8036F024 0036BF64 2C 1F 00 00 */ cmpwi r31, 0
/* 8036F028 0036BF68 40 82 00 50 */ bne lbl_8036F078
/* 8036F02C 0036BF6C 38 00 00 00 */ li r0, 0
/* 8036F030 0036BF70 38 81 00 10 */ addi r4, r1, 0x10
/* 8036F034 0036BF74 90 1D 00 00 */ stw r0, 0(r29)
/* 8036F038 0036BF78 38 A0 00 07 */ li r5, 7
/* 8036F03C 0036BF7C 38 C0 00 03 */ li r6, 3
/* 8036F040 0036BF80 38 E0 00 00 */ li r7, 0
/* 8036F044 0036BF84 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F048 0036BF88 48 00 00 51 */ bl func_8036F098
/* 8036F04C 0036BF8C 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036F050 0036BF90 40 82 00 10 */ bne lbl_8036F060
/* 8036F054 0036BF94 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036F058 0036BF98 4B FF E6 99 */ bl func_8036D6F0
/* 8036F05C 0036BF9C 7C 7E 1B 78 */ mr r30, r3
lbl_8036F060:
/* 8036F060 0036BFA0 80 1E 00 20 */ lwz r0, 0x20(r30)
/* 8036F064 0036BFA4 90 1D 00 00 */ stw r0, 0(r29)
/* 8036F068 0036BFA8 80 1E 00 18 */ lwz r0, 0x18(r30)
/* 8036F06C 0036BFAC 90 1C 00 00 */ stw r0, 0(r28)
/* 8036F070 0036BFB0 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036F074 0036BFB4 4B FF E6 19 */ bl func_8036D68C
lbl_8036F078:
/* 8036F078 0036BFB8 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8036F07C 0036BFBC 4B FF E6 11 */ bl func_8036D68C
/* 8036F080 0036BFC0 7F E3 FB 78 */ mr r3, r31
/* 8036F084 0036BFC4 BB 61 00 5C */ lmw r27, 0x5c(r1)
/* 8036F088 0036BFC8 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8036F08C 0036BFCC 7C 08 03 A6 */ mtlr r0
/* 8036F090 0036BFD0 38 21 00 70 */ addi r1, r1, 0x70
/* 8036F094 0036BFD4 4E 80 00 20 */ blr
.global func_8036F098
func_8036F098:
/* 8036F098 0036BFD8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8036F09C 0036BFDC 7C 08 02 A6 */ mflr r0
/* 8036F0A0 0036BFE0 90 01 00 44 */ stw r0, 0x44(r1)
/* 8036F0A4 0036BFE4 38 00 FF FF */ li r0, -1
/* 8036F0A8 0036BFE8 BE A1 00 14 */ stmw r21, 0x14(r1)
/* 8036F0AC 0036BFEC 7C 96 23 78 */ mr r22, r4
/* 8036F0B0 0036BFF0 3C 80 80 3A */ lis r4, lbl_803A2AB8@ha
/* 8036F0B4 0036BFF4 7C 75 1B 78 */ mr r21, r3
/* 8036F0B8 0036BFF8 7C F7 3B 78 */ mr r23, r7
/* 8036F0BC 0036BFFC 3B 66 00 01 */ addi r27, r6, 1
/* 8036F0C0 0036C000 3B E4 2A B8 */ addi r31, r4, lbl_803A2AB8@l
/* 8036F0C4 0036C004 3B C0 00 00 */ li r30, 0
/* 8036F0C8 0036C008 3B 00 00 01 */ li r24, 1
/* 8036F0CC 0036C00C 90 16 00 00 */ stw r0, 0(r22)
/* 8036F0D0 0036C010 48 00 01 64 */ b lbl_8036F234
lbl_8036F0D4:
/* 8036F0D4 0036C014 38 9F 00 00 */ addi r4, r31, 0
/* 8036F0D8 0036C018 38 60 00 01 */ li r3, 1
/* 8036F0DC 0036C01C 4C C6 31 82 */ crclr 6
/* 8036F0E0 0036C020 48 00 3B 75 */ bl func_80372C54
/* 8036F0E4 0036C024 7E A3 AB 78 */ mr r3, r21
/* 8036F0E8 0036C028 4B FF DE F1 */ bl func_8036CFD8
/* 8036F0EC 0036C02C 7C 7E 1B 79 */ or. r30, r3, r3
/* 8036F0F0 0036C030 40 82 01 40 */ bne lbl_8036F230
/* 8036F0F4 0036C034 2C 17 00 00 */ cmpwi r23, 0
/* 8036F0F8 0036C038 41 82 00 08 */ beq lbl_8036F100
/* 8036F0FC 0036C03C 3B 80 00 00 */ li r28, 0
lbl_8036F100:
/* 8036F100 0036C040 4B FF E8 D5 */ bl func_8036D9D4
/* 8036F104 0036C044 90 76 00 00 */ stw r3, 0(r22)
/* 8036F108 0036C048 80 76 00 00 */ lwz r3, 0(r22)
/* 8036F10C 0036C04C 2C 03 FF FF */ cmpwi r3, -1
/* 8036F110 0036C050 40 82 00 20 */ bne lbl_8036F130
/* 8036F114 0036C054 2C 17 00 00 */ cmpwi r23, 0
/* 8036F118 0036C058 41 82 FF E8 */ beq lbl_8036F100
/* 8036F11C 0036C05C 3C 80 04 C5 */ lis r4, 0x04C4B3EC@ha
/* 8036F120 0036C060 3B 9C 00 01 */ addi r28, r28, 1
/* 8036F124 0036C064 38 04 B3 EC */ addi r0, r4, 0x04C4B3EC@l
/* 8036F128 0036C068 7C 1C 00 40 */ cmplw r28, r0
/* 8036F12C 0036C06C 41 80 FF D4 */ blt lbl_8036F100
lbl_8036F130:
/* 8036F130 0036C070 2C 03 FF FF */ cmpwi r3, -1
/* 8036F134 0036C074 41 82 00 5C */ beq lbl_8036F190
/* 8036F138 0036C078 3B 00 00 00 */ li r24, 0
/* 8036F13C 0036C07C 4B FF E5 B5 */ bl func_8036D6F0
/* 8036F140 0036C080 38 80 00 00 */ li r4, 0
/* 8036F144 0036C084 7C 7D 1B 78 */ mr r29, r3
/* 8036F148 0036C088 4B FF E4 D5 */ bl func_8036D61C
/* 8036F14C 0036C08C 80 9D 00 08 */ lwz r4, 8(r29)
/* 8036F150 0036C090 38 7D 00 10 */ addi r3, r29, 0x10
/* 8036F154 0036C094 4B FF FB 89 */ bl func_8036ECDC
/* 8036F158 0036C098 8B 5D 00 14 */ lbz r26, 0x14(r29)
/* 8036F15C 0036C09C 38 9F 00 18 */ addi r4, r31, 0x18
/* 8036F160 0036C0A0 38 60 00 01 */ li r3, 1
/* 8036F164 0036C0A4 7F 45 D3 78 */ mr r5, r26
/* 8036F168 0036C0A8 7F 46 D3 78 */ mr r6, r26
/* 8036F16C 0036C0AC 4C C6 31 82 */ crclr 6
/* 8036F170 0036C0B0 48 00 3A E5 */ bl func_80372C54
/* 8036F174 0036C0B4 28 1A 00 80 */ cmplwi r26, 0x80
/* 8036F178 0036C0B8 40 80 00 18 */ bge lbl_8036F190
/* 8036F17C 0036C0BC 80 76 00 00 */ lwz r3, 0(r22)
/* 8036F180 0036C0C0 4B FF E7 A5 */ bl func_8036D924
/* 8036F184 0036C0C4 38 00 FF FF */ li r0, -1
/* 8036F188 0036C0C8 90 16 00 00 */ stw r0, 0(r22)
/* 8036F18C 0036C0CC 4B FF FF 74 */ b lbl_8036F100
lbl_8036F190:
/* 8036F190 0036C0D0 80 16 00 00 */ lwz r0, 0(r22)
/* 8036F194 0036C0D4 2C 00 FF FF */ cmpwi r0, -1
/* 8036F198 0036C0D8 41 82 00 98 */ beq lbl_8036F230
/* 8036F19C 0036C0DC 80 1D 00 08 */ lwz r0, 8(r29)
/* 8036F1A0 0036C0E0 28 00 00 40 */ cmplwi r0, 0x40
/* 8036F1A4 0036C0E4 40 80 00 08 */ bge lbl_8036F1AC
/* 8036F1A8 0036C0E8 3B 00 00 01 */ li r24, 1
lbl_8036F1AC:
/* 8036F1AC 0036C0EC 2C 1E 00 00 */ cmpwi r30, 0
/* 8036F1B0 0036C0F0 40 82 00 24 */ bne lbl_8036F1D4
/* 8036F1B4 0036C0F4 2C 18 00 00 */ cmpwi r24, 0
/* 8036F1B8 0036C0F8 40 82 00 1C */ bne lbl_8036F1D4
/* 8036F1BC 0036C0FC 8B 3D 00 18 */ lbz r25, 0x18(r29)
/* 8036F1C0 0036C100 38 9F 00 40 */ addi r4, r31, 0x40
/* 8036F1C4 0036C104 38 60 00 01 */ li r3, 1
/* 8036F1C8 0036C108 7F 25 CB 78 */ mr r5, r25
/* 8036F1CC 0036C10C 4C C6 31 82 */ crclr 6
/* 8036F1D0 0036C110 48 00 3A 85 */ bl func_80372C54
lbl_8036F1D4:
/* 8036F1D4 0036C114 2C 1E 00 00 */ cmpwi r30, 0
/* 8036F1D8 0036C118 40 82 00 38 */ bne lbl_8036F210
/* 8036F1DC 0036C11C 2C 18 00 00 */ cmpwi r24, 0
/* 8036F1E0 0036C120 40 82 00 30 */ bne lbl_8036F210
/* 8036F1E4 0036C124 2C 1A 00 80 */ cmpwi r26, 0x80
/* 8036F1E8 0036C128 7F 45 D3 78 */ mr r5, r26
/* 8036F1EC 0036C12C 40 82 00 0C */ bne lbl_8036F1F8
/* 8036F1F0 0036C130 2C 19 00 00 */ cmpwi r25, 0
/* 8036F1F4 0036C134 41 82 00 1C */ beq lbl_8036F210
lbl_8036F1F8:
/* 8036F1F8 0036C138 7F 26 CB 78 */ mr r6, r25
/* 8036F1FC 0036C13C 38 9F 00 54 */ addi r4, r31, 0x54
/* 8036F200 0036C140 38 60 00 08 */ li r3, 8
/* 8036F204 0036C144 4C C6 31 82 */ crclr 6
/* 8036F208 0036C148 48 00 3A 4D */ bl func_80372C54
/* 8036F20C 0036C14C 3B 00 00 01 */ li r24, 1
lbl_8036F210:
/* 8036F210 0036C150 2C 1E 00 00 */ cmpwi r30, 0
/* 8036F214 0036C154 40 82 00 0C */ bne lbl_8036F220
/* 8036F218 0036C158 2C 18 00 00 */ cmpwi r24, 0
/* 8036F21C 0036C15C 41 82 00 14 */ beq lbl_8036F230
lbl_8036F220:
/* 8036F220 0036C160 80 76 00 00 */ lwz r3, 0(r22)
/* 8036F224 0036C164 4B FF E4 69 */ bl func_8036D68C
/* 8036F228 0036C168 38 00 FF FF */ li r0, -1
/* 8036F22C 0036C16C 90 16 00 00 */ stw r0, 0(r22)
lbl_8036F230:
/* 8036F230 0036C170 3B 7B FF FF */ addi r27, r27, -1
lbl_8036F234:
/* 8036F234 0036C174 2C 1B 00 00 */ cmpwi r27, 0
/* 8036F238 0036C178 41 82 00 18 */ beq lbl_8036F250
/* 8036F23C 0036C17C 80 16 00 00 */ lwz r0, 0(r22)
/* 8036F240 0036C180 2C 00 FF FF */ cmpwi r0, -1
/* 8036F244 0036C184 40 82 00 0C */ bne lbl_8036F250
/* 8036F248 0036C188 2C 1E 00 00 */ cmpwi r30, 0
/* 8036F24C 0036C18C 41 82 FE 88 */ beq lbl_8036F0D4
lbl_8036F250:
/* 8036F250 0036C190 80 16 00 00 */ lwz r0, 0(r22)
/* 8036F254 0036C194 2C 00 FF FF */ cmpwi r0, -1
/* 8036F258 0036C198 40 82 00 08 */ bne lbl_8036F260
/* 8036F25C 0036C19C 3B C0 08 00 */ li r30, 0x800
lbl_8036F260:
/* 8036F260 0036C1A0 7F C3 F3 78 */ mr r3, r30
/* 8036F264 0036C1A4 BA A1 00 14 */ lmw r21, 0x14(r1)
/* 8036F268 0036C1A8 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8036F26C 0036C1AC 7C 08 03 A6 */ mtlr r0
/* 8036F270 0036C1B0 38 21 00 40 */ addi r1, r1, 0x40
/* 8036F274 0036C1B4 4E 80 00 20 */ blr
.global func_8036F278
func_8036F278:
/* 8036F278 0036C1B8 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 8036F27C 0036C1BC 7C 08 02 A6 */ mflr r0
/* 8036F280 0036C1C0 90 01 00 94 */ stw r0, 0x94(r1)
/* 8036F284 0036C1C4 BE 61 00 5C */ stmw r19, 0x5c(r1)
/* 8036F288 0036C1C8 7C 98 23 79 */ or. r24, r4, r4
/* 8036F28C 0036C1CC 7C 77 1B 78 */ mr r23, r3
/* 8036F290 0036C1D0 7C B9 2B 78 */ mr r25, r5
/* 8036F294 0036C1D4 7C DA 33 78 */ mr r26, r6
/* 8036F298 0036C1D8 7C FB 3B 78 */ mr r27, r7
/* 8036F29C 0036C1DC 7D 1C 43 78 */ mr r28, r8
/* 8036F2A0 0036C1E0 41 82 00 10 */ beq lbl_8036F2B0
/* 8036F2A4 0036C1E4 80 19 00 00 */ lwz r0, 0(r25)
/* 8036F2A8 0036C1E8 28 00 00 00 */ cmplwi r0, 0
/* 8036F2AC 0036C1EC 40 82 00 0C */ bne lbl_8036F2B8
lbl_8036F2B0:
/* 8036F2B0 0036C1F0 38 60 00 02 */ li r3, 2
/* 8036F2B4 0036C1F4 48 00 01 D0 */ b lbl_8036F484
lbl_8036F2B8:
/* 8036F2B8 0036C1F8 38 00 00 00 */ li r0, 0
/* 8036F2BC 0036C1FC 3B A0 00 00 */ li r29, 0
/* 8036F2C0 0036C200 90 1A 00 00 */ stw r0, 0(r26)
/* 8036F2C4 0036C204 3B C0 00 00 */ li r30, 0
/* 8036F2C8 0036C208 3A A0 00 00 */ li r21, 0
/* 8036F2CC 0036C20C 48 00 01 88 */ b lbl_8036F454
lbl_8036F2D0:
/* 8036F2D0 0036C210 38 61 00 14 */ addi r3, r1, 0x14
/* 8036F2D4 0036C214 38 80 00 00 */ li r4, 0
/* 8036F2D8 0036C218 38 A0 00 40 */ li r5, 0x40
/* 8036F2DC 0036C21C 4B C9 41 7D */ bl func_80003458
/* 8036F2E0 0036C220 80 19 00 00 */ lwz r0, 0(r25)
/* 8036F2E4 0036C224 38 60 08 00 */ li r3, 0x800
/* 8036F2E8 0036C228 7C 1E 00 50 */ subf r0, r30, r0
/* 8036F2EC 0036C22C 28 00 08 00 */ cmplwi r0, 0x800
/* 8036F2F0 0036C230 41 81 00 08 */ bgt lbl_8036F2F8
/* 8036F2F4 0036C234 7C 03 03 78 */ mr r3, r0
lbl_8036F2F8:
/* 8036F2F8 0036C238 2C 1C 00 00 */ cmpwi r28, 0
/* 8036F2FC 0036C23C 7C 7F 1B 78 */ mr r31, r3
/* 8036F300 0036C240 38 00 00 D0 */ li r0, 0xd0
/* 8036F304 0036C244 41 82 00 08 */ beq lbl_8036F30C
/* 8036F308 0036C248 38 00 00 D1 */ li r0, 0xd1
lbl_8036F30C:
/* 8036F30C 0036C24C 2C 1C 00 00 */ cmpwi r28, 0
/* 8036F310 0036C250 98 01 00 18 */ stb r0, 0x18(r1)
/* 8036F314 0036C254 38 00 00 40 */ li r0, 0x40
/* 8036F318 0036C258 40 82 00 08 */ bne lbl_8036F320
/* 8036F31C 0036C25C 38 1F 00 40 */ addi r0, r31, 0x40
lbl_8036F320:
/* 8036F320 0036C260 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036F324 0036C264 38 61 00 0C */ addi r3, r1, 0xc
/* 8036F328 0036C268 38 81 00 08 */ addi r4, r1, 8
/* 8036F32C 0036C26C 92 E1 00 1C */ stw r23, 0x1c(r1)
/* 8036F330 0036C270 B3 E1 00 20 */ sth r31, 0x20(r1)
/* 8036F334 0036C274 4B FF E3 E9 */ bl func_8036D71C
/* 8036F338 0036C278 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F33C 0036C27C 38 81 00 14 */ addi r4, r1, 0x14
/* 8036F340 0036C280 38 A0 00 40 */ li r5, 0x40
/* 8036F344 0036C284 4B FF E0 45 */ bl func_8036D388
/* 8036F348 0036C288 2C 1C 00 00 */ cmpwi r28, 0
/* 8036F34C 0036C28C 7C 75 1B 78 */ mr r21, r3
/* 8036F350 0036C290 40 82 00 20 */ bne lbl_8036F370
/* 8036F354 0036C294 2C 15 00 00 */ cmpwi r21, 0
/* 8036F358 0036C298 40 82 00 18 */ bne lbl_8036F370
/* 8036F35C 0036C29C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F360 0036C2A0 7F E5 FB 78 */ mr r5, r31
/* 8036F364 0036C2A4 7C 98 F2 14 */ add r4, r24, r30
/* 8036F368 0036C2A8 4B FF E0 21 */ bl func_8036D388
/* 8036F36C 0036C2AC 7C 75 1B 78 */ mr r21, r3
lbl_8036F370:
/* 8036F370 0036C2B0 2C 15 00 00 */ cmpwi r21, 0
/* 8036F374 0036C2B4 40 82 00 D4 */ bne lbl_8036F448
/* 8036F378 0036C2B8 2C 1B 00 00 */ cmpwi r27, 0
/* 8036F37C 0036C2BC 41 82 00 C0 */ beq lbl_8036F43C
/* 8036F380 0036C2C0 2C 1C 00 00 */ cmpwi r28, 0
/* 8036F384 0036C2C4 38 00 00 00 */ li r0, 0
/* 8036F388 0036C2C8 41 82 00 10 */ beq lbl_8036F398
/* 8036F38C 0036C2CC 28 17 00 00 */ cmplwi r23, 0
/* 8036F390 0036C2D0 40 82 00 08 */ bne lbl_8036F398
/* 8036F394 0036C2D4 38 00 00 01 */ li r0, 1
lbl_8036F398:
/* 8036F398 0036C2D8 2C 1C 00 00 */ cmpwi r28, 0
/* 8036F39C 0036C2DC 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F3A0 0036C2E0 38 81 00 10 */ addi r4, r1, 0x10
/* 8036F3A4 0036C2E4 38 A0 00 05 */ li r5, 5
/* 8036F3A8 0036C2E8 7C 00 00 34 */ cntlzw r0, r0
/* 8036F3AC 0036C2EC 38 C0 00 03 */ li r6, 3
/* 8036F3B0 0036C2F0 54 07 D9 7E */ srwi r7, r0, 5
/* 8036F3B4 0036C2F4 4B FF FC E5 */ bl func_8036F098
/* 8036F3B8 0036C2F8 7C 75 1B 79 */ or. r21, r3, r3
/* 8036F3BC 0036C2FC 40 82 00 10 */ bne lbl_8036F3CC
/* 8036F3C0 0036C300 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036F3C4 0036C304 4B FF E3 2D */ bl func_8036D6F0
/* 8036F3C8 0036C308 7C 76 1B 78 */ mr r22, r3
lbl_8036F3CC:
/* 8036F3CC 0036C30C 80 16 00 20 */ lwz r0, 0x20(r22)
/* 8036F3D0 0036C310 2C 1C 00 00 */ cmpwi r28, 0
/* 8036F3D4 0036C314 A2 76 00 24 */ lhz r19, 0x24(r22)
/* 8036F3D8 0036C318 54 14 06 3E */ clrlwi r20, r0, 0x18
/* 8036F3DC 0036C31C 41 82 00 40 */ beq lbl_8036F41C
/* 8036F3E0 0036C320 2C 15 00 00 */ cmpwi r21, 0
/* 8036F3E4 0036C324 40 82 00 38 */ bne lbl_8036F41C
/* 8036F3E8 0036C328 7C 13 F8 40 */ cmplw r19, r31
/* 8036F3EC 0036C32C 41 81 00 30 */ bgt lbl_8036F41C
/* 8036F3F0 0036C330 7E C3 B3 78 */ mr r3, r22
/* 8036F3F4 0036C334 38 80 00 40 */ li r4, 0x40
/* 8036F3F8 0036C338 4B FF E2 25 */ bl func_8036D61C
/* 8036F3FC 0036C33C 7E C3 B3 78 */ mr r3, r22
/* 8036F400 0036C340 7E 65 9B 78 */ mr r5, r19
/* 8036F404 0036C344 7C 98 F2 14 */ add r4, r24, r30
/* 8036F408 0036C348 4B FF DD 05 */ bl func_8036D10C
/* 8036F40C 0036C34C 7C 75 1B 78 */ mr r21, r3
/* 8036F410 0036C350 2C 15 03 02 */ cmpwi r21, 0x302
/* 8036F414 0036C354 40 82 00 08 */ bne lbl_8036F41C
/* 8036F418 0036C358 3A A0 00 00 */ li r21, 0
lbl_8036F41C:
/* 8036F41C 0036C35C 7C 13 F8 40 */ cmplw r19, r31
/* 8036F420 0036C360 41 82 00 0C */ beq lbl_8036F42C
/* 8036F424 0036C364 7E 7F 9B 78 */ mr r31, r19
/* 8036F428 0036C368 3B A0 00 01 */ li r29, 1
lbl_8036F42C:
/* 8036F42C 0036C36C 92 9A 00 00 */ stw r20, 0(r26)
/* 8036F430 0036C370 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036F434 0036C374 4B FF E2 59 */ bl func_8036D68C
/* 8036F438 0036C378 48 00 00 10 */ b lbl_8036F448
lbl_8036F43C:
/* 8036F43C 0036C37C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F440 0036C380 4B FF DB 99 */ bl func_8036CFD8
/* 8036F444 0036C384 7C 75 1B 78 */ mr r21, r3
lbl_8036F448:
/* 8036F448 0036C388 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8036F44C 0036C38C 4B FF E2 41 */ bl func_8036D68C
/* 8036F450 0036C390 7F DE FA 14 */ add r30, r30, r31
lbl_8036F454:
/* 8036F454 0036C394 2C 1D 00 00 */ cmpwi r29, 0
/* 8036F458 0036C398 40 82 00 24 */ bne lbl_8036F47C
/* 8036F45C 0036C39C 80 19 00 00 */ lwz r0, 0(r25)
/* 8036F460 0036C3A0 7C 1E 00 40 */ cmplw r30, r0
/* 8036F464 0036C3A4 40 80 00 18 */ bge lbl_8036F47C
/* 8036F468 0036C3A8 2C 15 00 00 */ cmpwi r21, 0
/* 8036F46C 0036C3AC 40 82 00 10 */ bne lbl_8036F47C
/* 8036F470 0036C3B0 80 1A 00 00 */ lwz r0, 0(r26)
/* 8036F474 0036C3B4 2C 00 00 00 */ cmpwi r0, 0
/* 8036F478 0036C3B8 41 82 FE 58 */ beq lbl_8036F2D0
lbl_8036F47C:
/* 8036F47C 0036C3BC 93 D9 00 00 */ stw r30, 0(r25)
/* 8036F480 0036C3C0 7E A3 AB 78 */ mr r3, r21
lbl_8036F484:
/* 8036F484 0036C3C4 BA 61 00 5C */ lmw r19, 0x5c(r1)
/* 8036F488 0036C3C8 80 01 00 94 */ lwz r0, 0x94(r1)
/* 8036F48C 0036C3CC 7C 08 03 A6 */ mtlr r0
/* 8036F490 0036C3D0 38 21 00 90 */ addi r1, r1, 0x90
/* 8036F494 0036C3D4 4E 80 00 20 */ blr
.global func_8036F498
func_8036F498:
/* 8036F498 0036C3D8 38 60 00 00 */ li r3, 0
/* 8036F49C 0036C3DC 4E 80 00 20 */ blr
.global func_8036F4A0
func_8036F4A0:
/* 8036F4A0 0036C3E0 38 60 00 00 */ li r3, 0
/* 8036F4A4 0036C3E4 4E 80 00 20 */ blr
.global func_8036F4A8
func_8036F4A8:
/* 8036F4A8 0036C3E8 38 60 00 00 */ li r3, 0
/* 8036F4AC 0036C3EC 4E 80 00 20 */ blr
.global func_8036F4B0
func_8036F4B0:
/* 8036F4B0 0036C3F0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8036F4B4 0036C3F4 7C 08 02 A6 */ mflr r0
/* 8036F4B8 0036C3F8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8036F4BC 0036C3FC 38 81 00 08 */ addi r4, r1, 8
/* 8036F4C0 0036C400 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8036F4C4 0036C404 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8036F4C8 0036C408 7C 7E 1B 78 */ mr r30, r3
/* 8036F4CC 0036C40C 38 61 00 0C */ addi r3, r1, 0xc
/* 8036F4D0 0036C410 4B FF E2 4D */ bl func_8036D71C
/* 8036F4D4 0036C414 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036F4D8 0036C418 40 82 00 54 */ bne lbl_8036F52C
/* 8036F4DC 0036C41C 40 82 00 20 */ bne lbl_8036F4FC
/* 8036F4E0 0036C420 2C 1E 00 90 */ cmpwi r30, 0x90
/* 8036F4E4 0036C424 40 82 00 10 */ bne lbl_8036F4F4
/* 8036F4E8 0036C428 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F4EC 0036C42C 48 00 0A 2D */ bl func_8036FF18
/* 8036F4F0 0036C430 48 00 00 0C */ b lbl_8036F4FC
lbl_8036F4F4:
/* 8036F4F4 0036C434 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F4F8 0036C438 48 00 09 9D */ bl func_8036FE94
lbl_8036F4FC:
/* 8036F4FC 0036C43C 80 61 00 08 */ lwz r3, 8(r1)
/* 8036F500 0036C440 38 81 00 10 */ addi r4, r1, 0x10
/* 8036F504 0036C444 38 A0 00 02 */ li r5, 2
/* 8036F508 0036C448 38 C0 00 03 */ li r6, 3
/* 8036F50C 0036C44C 38 E0 00 01 */ li r7, 1
/* 8036F510 0036C450 4B FF FB 89 */ bl func_8036F098
/* 8036F514 0036C454 7C 7F 1B 79 */ or. r31, r3, r3
/* 8036F518 0036C458 40 82 00 0C */ bne lbl_8036F524
/* 8036F51C 0036C45C 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8036F520 0036C460 4B FF E1 6D */ bl func_8036D68C
lbl_8036F524:
/* 8036F524 0036C464 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8036F528 0036C468 4B FF E1 65 */ bl func_8036D68C
lbl_8036F52C:
/* 8036F52C 0036C46C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8036F530 0036C470 7F E3 FB 78 */ mr r3, r31
/* 8036F534 0036C474 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8036F538 0036C478 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8036F53C 0036C47C 7C 08 03 A6 */ mtlr r0
/* 8036F540 0036C480 38 21 00 20 */ addi r1, r1, 0x20
/* 8036F544 0036C484 4E 80 00 20 */ blr
.global func_8036F548
func_8036F548:
/* 8036F548 0036C488 3C A0 FF FF */ lis r5, 0xFFFFFFF1@h
/* 8036F54C 0036C48C 60 A5 FF F1 */ ori r5, r5, 0xFFFFFFF1@l
/* 8036F550 0036C490 7C A5 18 38 */ and r5, r5, r3
/* 8036F554 0036C494 7C 65 18 50 */ subf r3, r5, r3
/* 8036F558 0036C498 7C 84 1A 14 */ add r4, r4, r3
lbl_8036F55C:
/* 8036F55C 0036C49C 7C 00 28 6C */ dcbst 0, r5
/* 8036F560 0036C4A0 7C 00 28 AC */ dcbf 0, r5
/* 8036F564 0036C4A4 7C 00 04 AC */ sync 0
/* 8036F568 0036C4A8 7C 00 2F AC */ icbi 0, r5
/* 8036F56C 0036C4AC 30 A5 00 08 */ addic r5, r5, 8
/* 8036F570 0036C4B0 34 84 FF F8 */ addic. r4, r4, -8
/* 8036F574 0036C4B4 40 80 FF E8 */ bge lbl_8036F55C
/* 8036F578 0036C4B8 4C 00 01 2C */ isync
/* 8036F57C 0036C4BC 4E 80 00 20 */ blr
.global func_8036F580
func_8036F580:
/* 8036F580 0036C4C0 28 05 00 20 */ cmplwi r5, 0x20
/* 8036F584 0036C4C4 54 84 06 3E */ clrlwi r4, r4, 0x18
/* 8036F588 0036C4C8 38 C3 FF FF */ addi r6, r3, -1
/* 8036F58C 0036C4CC 7C 87 23 78 */ mr r7, r4
/* 8036F590 0036C4D0 41 80 00 90 */ blt lbl_8036F620
/* 8036F594 0036C4D4 7C C0 30 F8 */ nor r0, r6, r6
/* 8036F598 0036C4D8 54 03 07 BF */ clrlwi. r3, r0, 0x1e
/* 8036F59C 0036C4DC 41 82 00 14 */ beq lbl_8036F5B0
/* 8036F5A0 0036C4E0 7C A3 28 50 */ subf r5, r3, r5
lbl_8036F5A4:
/* 8036F5A4 0036C4E4 34 63 FF FF */ addic. r3, r3, -1
/* 8036F5A8 0036C4E8 9C E6 00 01 */ stbu r7, 1(r6)
/* 8036F5AC 0036C4EC 40 82 FF F8 */ bne lbl_8036F5A4
lbl_8036F5B0:
/* 8036F5B0 0036C4F0 28 07 00 00 */ cmplwi r7, 0
/* 8036F5B4 0036C4F4 41 82 00 1C */ beq lbl_8036F5D0
/* 8036F5B8 0036C4F8 54 E3 C0 0E */ slwi r3, r7, 0x18
/* 8036F5BC 0036C4FC 54 E0 80 1E */ slwi r0, r7, 0x10
/* 8036F5C0 0036C500 54 E4 40 2E */ slwi r4, r7, 8
/* 8036F5C4 0036C504 7C 60 03 78 */ or r0, r3, r0
/* 8036F5C8 0036C508 7C 80 03 78 */ or r0, r4, r0
/* 8036F5CC 0036C50C 7C E7 03 78 */ or r7, r7, r0
lbl_8036F5D0:
/* 8036F5D0 0036C510 54 A4 D9 7F */ rlwinm. r4, r5, 0x1b, 5, 0x1f
/* 8036F5D4 0036C514 38 66 FF FD */ addi r3, r6, -3
/* 8036F5D8 0036C518 41 82 00 2C */ beq lbl_8036F604
lbl_8036F5DC:
/* 8036F5DC 0036C51C 90 E3 00 04 */ stw r7, 4(r3)
/* 8036F5E0 0036C520 34 84 FF FF */ addic. r4, r4, -1
/* 8036F5E4 0036C524 90 E3 00 08 */ stw r7, 8(r3)
/* 8036F5E8 0036C528 90 E3 00 0C */ stw r7, 0xc(r3)
/* 8036F5EC 0036C52C 90 E3 00 10 */ stw r7, 0x10(r3)
/* 8036F5F0 0036C530 90 E3 00 14 */ stw r7, 0x14(r3)
/* 8036F5F4 0036C534 90 E3 00 18 */ stw r7, 0x18(r3)
/* 8036F5F8 0036C538 90 E3 00 1C */ stw r7, 0x1c(r3)
/* 8036F5FC 0036C53C 94 E3 00 20 */ stwu r7, 0x20(r3)
/* 8036F600 0036C540 40 82 FF DC */ bne lbl_8036F5DC
lbl_8036F604:
/* 8036F604 0036C544 54 A4 F7 7F */ rlwinm. r4, r5, 0x1e, 0x1d, 0x1f
/* 8036F608 0036C548 41 82 00 10 */ beq lbl_8036F618
lbl_8036F60C:
/* 8036F60C 0036C54C 34 84 FF FF */ addic. r4, r4, -1
/* 8036F610 0036C550 94 E3 00 04 */ stwu r7, 4(r3)
/* 8036F614 0036C554 40 82 FF F8 */ bne lbl_8036F60C
lbl_8036F618:
/* 8036F618 0036C558 38 C3 00 03 */ addi r6, r3, 3
/* 8036F61C 0036C55C 54 A5 07 BE */ clrlwi r5, r5, 0x1e
lbl_8036F620:
/* 8036F620 0036C560 28 05 00 00 */ cmplwi r5, 0
/* 8036F624 0036C564 4D 82 00 20 */ beqlr
lbl_8036F628:
/* 8036F628 0036C568 34 A5 FF FF */ addic. r5, r5, -1
/* 8036F62C 0036C56C 9C E6 00 01 */ stbu r7, 1(r6)
/* 8036F630 0036C570 40 82 FF F8 */ bne lbl_8036F628
/* 8036F634 0036C574 4E 80 00 20 */ blr
.global func_8036F638
func_8036F638:
/* 8036F638 0036C578 7C 60 00 A6 */ mfmsr r3
/* 8036F63C 0036C57C 4E 80 00 20 */ blr
.global func_8036F640
func_8036F640:
/* 8036F640 0036C580 7C 60 01 24 */ mtmsr r3
/* 8036F644 0036C584 4E 80 00 20 */ blr
.global func_8036F648
func_8036F648:
/* 8036F648 0036C588 7D 00 00 A6 */ mfmsr r8
/* 8036F64C 0036C58C 39 40 00 00 */ li r10, 0
lbl_8036F650:
/* 8036F650 0036C590 7C 0A 28 00 */ cmpw r10, r5
/* 8036F654 0036C594 41 82 00 24 */ beq lbl_8036F678
/* 8036F658 0036C598 7C E0 01 24 */ mtmsr r7
/* 8036F65C 0036C59C 7C 00 04 AC */ sync 0
/* 8036F660 0036C5A0 7D 2A 20 AE */ lbzx r9, r10, r4
/* 8036F664 0036C5A4 7C C0 01 24 */ mtmsr r6
/* 8036F668 0036C5A8 7C 00 04 AC */ sync 0
/* 8036F66C 0036C5AC 7D 2A 19 AE */ stbx r9, r10, r3
/* 8036F670 0036C5B0 39 4A 00 01 */ addi r10, r10, 1
/* 8036F674 0036C5B4 4B FF FF DC */ b lbl_8036F650
lbl_8036F678:
/* 8036F678 0036C5B8 7D 00 01 24 */ mtmsr r8
/* 8036F67C 0036C5BC 7C 00 04 AC */ sync 0
/* 8036F680 0036C5C0 4E 80 00 20 */ blr
.global lbl_8036F684
lbl_8036F684:
/* 8036F684 0036C5C4 7C 5A 03 A6 */ mtspr 0x1a, r2
/* 8036F688 0036C5C8 7C 9B 03 A6 */ mtspr 0x1b, r4
/* 8036F68C 0036C5CC 7C 93 42 A6 */ mfspr r4, 0x113
/* 8036F690 0036C5D0 7C 40 00 26 */ mfcr r2
/* 8036F694 0036C5D4 7C 53 43 A6 */ mtspr 0x113, r2
/* 8036F698 0036C5D8 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F69C 0036C5DC 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F6A0 0036C5E0 80 42 00 8C */ lwz r2, 0x8c(r2)
/* 8036F6A4 0036C5E4 60 42 80 02 */ ori r2, r2, 0x8002
/* 8036F6A8 0036C5E8 68 42 80 02 */ xori r2, r2, 0x8002
/* 8036F6AC 0036C5EC 7C 00 04 AC */ sync 0
/* 8036F6B0 0036C5F0 7C 40 01 24 */ mtmsr r2
/* 8036F6B4 0036C5F4 7C 00 04 AC */ sync 0
/* 8036F6B8 0036C5F8 3C 40 80 44 */ lis r2, lbl_8044F290@h
/* 8036F6BC 0036C5FC 60 42 F2 90 */ ori r2, r2, lbl_8044F290@l
/* 8036F6C0 0036C600 B0 62 00 00 */ sth r3, 0(r2)
/* 8036F6C4 0036C604 2C 03 05 00 */ cmpwi r3, 0x500
/* 8036F6C8 0036C608 40 82 00 84 */ bne lbl_8036F74C
/* 8036F6CC 0036C60C 3C 40 80 44 */ lis r2, lbl_8044F338@h
/* 8036F6D0 0036C610 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
/* 8036F6D4 0036C614 7C 68 02 A6 */ mflr r3
/* 8036F6D8 0036C618 90 62 04 2C */ stw r3, 0x42c(r2)
/* 8036F6DC 0036C61C 48 00 25 A1 */ bl func_80371C7C
/* 8036F6E0 0036C620 3C 40 80 44 */ lis r2, lbl_8044F338@h
/* 8036F6E4 0036C624 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
/* 8036F6E8 0036C628 80 62 04 2C */ lwz r3, 0x42c(r2)
/* 8036F6EC 0036C62C 7C 68 03 A6 */ mtlr r3
/* 8036F6F0 0036C630 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F6F4 0036C634 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F6F8 0036C638 80 42 00 A0 */ lwz r2, 0xa0(r2)
/* 8036F6FC 0036C63C 88 42 00 00 */ lbz r2, 0(r2)
/* 8036F700 0036C640 2C 02 00 00 */ cmpwi r2, 0
/* 8036F704 0036C644 41 82 00 2C */ beq lbl_8036F730
/* 8036F708 0036C648 3C 40 80 3D */ lis r2, lbl_803D3244@h
/* 8036F70C 0036C64C 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
/* 8036F710 0036C650 88 42 00 0C */ lbz r2, 0xc(r2)
/* 8036F714 0036C654 2C 02 00 01 */ cmpwi r2, 1
/* 8036F718 0036C658 41 82 00 18 */ beq lbl_8036F730
/* 8036F71C 0036C65C 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F720 0036C660 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F724 0036C664 38 60 00 01 */ li r3, 1
/* 8036F728 0036C668 98 62 00 9C */ stb r3, 0x9c(r2)
/* 8036F72C 0036C66C 48 00 00 20 */ b lbl_8036F74C
lbl_8036F730:
/* 8036F730 0036C670 3C 40 80 44 */ lis r2, lbl_8044F768@h
/* 8036F734 0036C674 60 42 F7 68 */ ori r2, r2, lbl_8044F768@l
/* 8036F738 0036C678 80 62 00 88 */ lwz r3, 0x88(r2)
/* 8036F73C 0036C67C 7C 6F F1 20 */ mtcrf 0xff, r3
/* 8036F740 0036C680 80 62 00 0C */ lwz r3, 0xc(r2)
/* 8036F744 0036C684 80 42 00 08 */ lwz r2, 8(r2)
/* 8036F748 0036C688 4C 00 00 64 */ rfi
lbl_8036F74C:
/* 8036F74C 0036C68C 3C 40 80 44 */ lis r2, lbl_8044F290@h
/* 8036F750 0036C690 60 42 F2 90 */ ori r2, r2, lbl_8044F290@l
/* 8036F754 0036C694 A0 62 00 00 */ lhz r3, 0(r2)
/* 8036F758 0036C698 3C 40 80 3D */ lis r2, lbl_803D3244@h
/* 8036F75C 0036C69C 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
/* 8036F760 0036C6A0 88 42 00 0C */ lbz r2, 0xc(r2)
/* 8036F764 0036C6A4 2C 02 00 00 */ cmpwi r2, 0
/* 8036F768 0036C6A8 40 82 00 B0 */ bne lbl_8036F818
/* 8036F76C 0036C6AC 3C 40 80 44 */ lis r2, lbl_8044F338@h
/* 8036F770 0036C6B0 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
/* 8036F774 0036C6B4 90 02 00 00 */ stw r0, 0(r2)
/* 8036F778 0036C6B8 90 22 00 04 */ stw r1, 4(r2)
/* 8036F77C 0036C6BC 7C 11 42 A6 */ mfspr r0, 0x111
/* 8036F780 0036C6C0 90 02 00 08 */ stw r0, 8(r2)
/* 8036F784 0036C6C4 B0 62 02 F8 */ sth r3, 0x2f8(r2)
/* 8036F788 0036C6C8 B0 62 02 FA */ sth r3, 0x2fa(r2)
/* 8036F78C 0036C6CC 7C 12 42 A6 */ mfspr r0, 0x112
/* 8036F790 0036C6D0 90 02 00 0C */ stw r0, 0xc(r2)
/* 8036F794 0036C6D4 BC 82 00 10 */ stmw r4, 0x10(r2)
/* 8036F798 0036C6D8 7F 7A 02 A6 */ mfspr r27, 0x1a
/* 8036F79C 0036C6DC 7F 88 02 A6 */ mflr r28
/* 8036F7A0 0036C6E0 7F B3 42 A6 */ mfspr r29, 0x113
/* 8036F7A4 0036C6E4 7F C9 02 A6 */ mfctr r30
/* 8036F7A8 0036C6E8 7F E1 02 A6 */ mfxer r31
/* 8036F7AC 0036C6EC BF 62 00 80 */ stmw r27, 0x80(r2)
/* 8036F7B0 0036C6F0 48 00 1A 41 */ bl func_803711F0
/* 8036F7B4 0036C6F4 3C 40 80 3D */ lis r2, lbl_803D3244@h
/* 8036F7B8 0036C6F8 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
/* 8036F7BC 0036C6FC 38 60 00 01 */ li r3, 1
/* 8036F7C0 0036C700 98 62 00 0C */ stb r3, 0xc(r2)
/* 8036F7C4 0036C704 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F7C8 0036C708 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F7CC 0036C70C 80 02 00 8C */ lwz r0, 0x8c(r2)
/* 8036F7D0 0036C710 7C 00 04 AC */ sync 0
/* 8036F7D4 0036C714 7C 00 01 24 */ mtmsr r0
/* 8036F7D8 0036C718 7C 00 04 AC */ sync 0
/* 8036F7DC 0036C71C 80 02 00 80 */ lwz r0, 0x80(r2)
/* 8036F7E0 0036C720 7C 08 03 A6 */ mtlr r0
/* 8036F7E4 0036C724 80 02 00 84 */ lwz r0, 0x84(r2)
/* 8036F7E8 0036C728 7C 09 03 A6 */ mtctr r0
/* 8036F7EC 0036C72C 80 02 00 88 */ lwz r0, 0x88(r2)
/* 8036F7F0 0036C730 7C 01 03 A6 */ mtxer r0
/* 8036F7F4 0036C734 80 02 00 94 */ lwz r0, 0x94(r2)
/* 8036F7F8 0036C738 7C 12 03 A6 */ mtdsisr r0
/* 8036F7FC 0036C73C 80 02 00 90 */ lwz r0, 0x90(r2)
/* 8036F800 0036C740 7C 13 03 A6 */ mtdar r0
/* 8036F804 0036C744 B8 62 00 0C */ lmw r3, 0xc(r2)
/* 8036F808 0036C748 80 02 00 00 */ lwz r0, 0(r2)
/* 8036F80C 0036C74C 80 22 00 04 */ lwz r1, 4(r2)
/* 8036F810 0036C750 80 42 00 08 */ lwz r2, 8(r2)
/* 8036F814 0036C754 48 00 09 20 */ b lbl_80370134
lbl_8036F818:
/* 8036F818 0036C758 3C 40 80 3D */ lis r2, lbl_803D3244@h
/* 8036F81C 0036C75C 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
/* 8036F820 0036C760 B0 62 00 08 */ sth r3, 8(r2)
/* 8036F824 0036C764 7C 7A 02 A6 */ mfspr r3, 0x1a
/* 8036F828 0036C768 90 62 00 00 */ stw r3, 0(r2)
/* 8036F82C 0036C76C A0 62 00 08 */ lhz r3, 8(r2)
/* 8036F830 0036C770 2C 03 02 00 */ cmpwi r3, 0x200
/* 8036F834 0036C774 41 82 00 50 */ beq lbl_8036F884
/* 8036F838 0036C778 2C 03 03 00 */ cmpwi r3, 0x300
/* 8036F83C 0036C77C 41 82 00 48 */ beq lbl_8036F884
/* 8036F840 0036C780 2C 03 04 00 */ cmpwi r3, 0x400
/* 8036F844 0036C784 41 82 00 40 */ beq lbl_8036F884
/* 8036F848 0036C788 2C 03 06 00 */ cmpwi r3, 0x600
/* 8036F84C 0036C78C 41 82 00 38 */ beq lbl_8036F884
/* 8036F850 0036C790 2C 03 07 00 */ cmpwi r3, 0x700
/* 8036F854 0036C794 41 82 00 30 */ beq lbl_8036F884
/* 8036F858 0036C798 2C 03 08 00 */ cmpwi r3, 0x800
/* 8036F85C 0036C79C 41 82 00 28 */ beq lbl_8036F884
/* 8036F860 0036C7A0 2C 03 10 00 */ cmpwi r3, 0x1000
/* 8036F864 0036C7A4 41 82 00 20 */ beq lbl_8036F884
/* 8036F868 0036C7A8 2C 03 11 00 */ cmpwi r3, 0x1100
/* 8036F86C 0036C7AC 41 82 00 18 */ beq lbl_8036F884
/* 8036F870 0036C7B0 2C 03 12 00 */ cmpwi r3, 0x1200
/* 8036F874 0036C7B4 41 82 00 10 */ beq lbl_8036F884
/* 8036F878 0036C7B8 2C 03 13 00 */ cmpwi r3, 0x1300
/* 8036F87C 0036C7BC 41 82 00 08 */ beq lbl_8036F884
/* 8036F880 0036C7C0 48 00 00 10 */ b lbl_8036F890
lbl_8036F884:
/* 8036F884 0036C7C4 7C 7A 02 A6 */ mfspr r3, 0x1a
/* 8036F888 0036C7C8 38 63 00 04 */ addi r3, r3, 4
/* 8036F88C 0036C7CC 7C 7A 03 A6 */ mtspr 0x1a, r3
lbl_8036F890:
/* 8036F890 0036C7D0 3C 40 80 3D */ lis r2, lbl_803D3244@h
/* 8036F894 0036C7D4 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
/* 8036F898 0036C7D8 38 60 00 01 */ li r3, 1
/* 8036F89C 0036C7DC 98 62 00 0D */ stb r3, 0xd(r2)
/* 8036F8A0 0036C7E0 7C 73 42 A6 */ mfspr r3, 0x113
/* 8036F8A4 0036C7E4 7C 6F F1 20 */ mtcrf 0xff, r3
/* 8036F8A8 0036C7E8 7C 51 42 A6 */ mfspr r2, 0x111
/* 8036F8AC 0036C7EC 7C 72 42 A6 */ mfspr r3, 0x112
/* 8036F8B0 0036C7F0 4C 00 00 64 */ rfi
.global func_8036F8B4
func_8036F8B4:
/* 8036F8B4 0036C7F4 3C 60 80 44 */ lis r3, lbl_8044F294@h
/* 8036F8B8 0036C7F8 60 63 F2 94 */ ori r3, r3, lbl_8044F294@l
/* 8036F8BC 0036C7FC BC 03 00 00 */ stmw r0, 0(r3)
/* 8036F8C0 0036C800 7C 00 00 A6 */ mfmsr r0
/* 8036F8C4 0036C804 90 03 00 8C */ stw r0, 0x8c(r3)
/* 8036F8C8 0036C808 7C 08 02 A6 */ mflr r0
/* 8036F8CC 0036C80C 90 03 00 80 */ stw r0, 0x80(r3)
/* 8036F8D0 0036C810 7C 09 02 A6 */ mfctr r0
/* 8036F8D4 0036C814 90 03 00 84 */ stw r0, 0x84(r3)
/* 8036F8D8 0036C818 7C 01 02 A6 */ mfxer r0
/* 8036F8DC 0036C81C 90 03 00 88 */ stw r0, 0x88(r3)
/* 8036F8E0 0036C820 7C 12 02 A6 */ mfdsisr r0
/* 8036F8E4 0036C824 90 03 00 94 */ stw r0, 0x94(r3)
/* 8036F8E8 0036C828 7C 13 02 A6 */ mfdar r0
/* 8036F8EC 0036C82C 90 03 00 90 */ stw r0, 0x90(r3)
/* 8036F8F0 0036C830 38 20 80 02 */ li r1, -32766
/* 8036F8F4 0036C834 7C 21 08 F8 */ nor r1, r1, r1
/* 8036F8F8 0036C838 7C 60 00 A6 */ mfmsr r3
/* 8036F8FC 0036C83C 7C 63 08 38 */ and r3, r3, r1
/* 8036F900 0036C840 7C 60 01 24 */ mtmsr r3
/* 8036F904 0036C844 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F908 0036C848 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F90C 0036C84C 80 42 00 A0 */ lwz r2, 0xa0(r2)
/* 8036F910 0036C850 88 42 00 00 */ lbz r2, 0(r2)
/* 8036F914 0036C854 2C 02 00 00 */ cmpwi r2, 0
/* 8036F918 0036C858 41 82 00 18 */ beq lbl_8036F930
/* 8036F91C 0036C85C 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F920 0036C860 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F924 0036C864 38 60 00 01 */ li r3, 1
/* 8036F928 0036C868 98 62 00 9C */ stb r3, 0x9c(r2)
/* 8036F92C 0036C86C 48 00 00 4C */ b lbl_8036F978
lbl_8036F930:
/* 8036F930 0036C870 3C 40 80 3D */ lis r2, lbl_803D3244@h
/* 8036F934 0036C874 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
/* 8036F938 0036C878 38 60 00 00 */ li r3, 0
/* 8036F93C 0036C87C 98 62 00 0C */ stb r3, 0xc(r2)
/* 8036F940 0036C880 48 00 1A 69 */ bl func_803713A8
/* 8036F944 0036C884 3C 40 80 44 */ lis r2, lbl_8044F338@h
/* 8036F948 0036C888 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
/* 8036F94C 0036C88C BB 62 00 80 */ lmw r27, 0x80(r2)
/* 8036F950 0036C890 7F 7A 03 A6 */ mtspr 0x1a, r27
/* 8036F954 0036C894 7F 88 03 A6 */ mtlr r28
/* 8036F958 0036C898 7F AF F1 20 */ mtcrf 0xff, r29
/* 8036F95C 0036C89C 7F C9 03 A6 */ mtctr r30
/* 8036F960 0036C8A0 7F E1 03 A6 */ mtxer r31
/* 8036F964 0036C8A4 B8 62 00 0C */ lmw r3, 0xc(r2)
/* 8036F968 0036C8A8 80 02 00 00 */ lwz r0, 0(r2)
/* 8036F96C 0036C8AC 80 22 00 04 */ lwz r1, 4(r2)
/* 8036F970 0036C8B0 80 42 00 08 */ lwz r2, 8(r2)
/* 8036F974 0036C8B4 4C 00 00 64 */ rfi
lbl_8036F978:
/* 8036F978 0036C8B8 3C 40 80 44 */ lis r2, lbl_8044F294@h
/* 8036F97C 0036C8BC 60 42 F2 94 */ ori r2, r2, lbl_8044F294@l
/* 8036F980 0036C8C0 80 02 00 8C */ lwz r0, 0x8c(r2)
/* 8036F984 0036C8C4 7C 00 04 AC */ sync 0
/* 8036F988 0036C8C8 7C 00 01 24 */ mtmsr r0
/* 8036F98C 0036C8CC 7C 00 04 AC */ sync 0
/* 8036F990 0036C8D0 80 02 00 80 */ lwz r0, 0x80(r2)
/* 8036F994 0036C8D4 7C 08 03 A6 */ mtlr r0
/* 8036F998 0036C8D8 80 02 00 84 */ lwz r0, 0x84(r2)
/* 8036F99C 0036C8DC 7C 09 03 A6 */ mtctr r0
/* 8036F9A0 0036C8E0 80 02 00 88 */ lwz r0, 0x88(r2)
/* 8036F9A4 0036C8E4 7C 01 03 A6 */ mtxer r0
/* 8036F9A8 0036C8E8 80 02 00 94 */ lwz r0, 0x94(r2)
/* 8036F9AC 0036C8EC 7C 12 03 A6 */ mtdsisr r0
/* 8036F9B0 0036C8F0 80 02 00 90 */ lwz r0, 0x90(r2)
/* 8036F9B4 0036C8F4 7C 13 03 A6 */ mtdar r0
/* 8036F9B8 0036C8F8 B8 62 00 0C */ lmw r3, 0xc(r2)
/* 8036F9BC 0036C8FC 80 02 00 00 */ lwz r0, 0(r2)
/* 8036F9C0 0036C900 80 22 00 04 */ lwz r1, 4(r2)
/* 8036F9C4 0036C904 80 42 00 08 */ lwz r2, 8(r2)
/* 8036F9C8 0036C908 48 00 07 6C */ b lbl_80370134
.global func_8036F9CC
func_8036F9CC:
/* 8036F9CC 0036C90C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8036F9D0 0036C910 DB E1 00 10 */ stfd f31, 0x10(r1)
/* 8036F9D4 0036C914 F3 E1 00 20 */ psq_st f31, 32(r1), 0, qr0
/* 8036F9D8 0036C918 FF E0 04 8E */ mffs f31
/* 8036F9DC 0036C91C DB E3 00 00 */ stfd f31, 0(r3)
/* 8036F9E0 0036C920 E3 E1 00 20 */ psq_l f31, 32(r1), 0, qr0
/* 8036F9E4 0036C924 CB E1 00 10 */ lfd f31, 0x10(r1)
/* 8036F9E8 0036C928 38 21 00 40 */ addi r1, r1, 0x40
/* 8036F9EC 0036C92C 4E 80 00 20 */ blr
.global func_8036F9F0
func_8036F9F0:
/* 8036F9F0 0036C930 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8036F9F4 0036C934 DB E1 00 10 */ stfd f31, 0x10(r1)
/* 8036F9F8 0036C938 F3 E1 00 20 */ psq_st f31, 32(r1), 0, qr0
/* 8036F9FC 0036C93C CB E3 00 00 */ lfd f31, 0(r3)
/* 8036FA00 0036C940 FD FE FD 8E */ mtfsf 0xff, f31
/* 8036FA04 0036C944 E3 E1 00 20 */ psq_l f31, 32(r1), 0, qr0
/* 8036FA08 0036C948 CB E1 00 10 */ lfd f31, 0x10(r1)
/* 8036FA0C 0036C94C 38 21 00 40 */ addi r1, r1, 0x40
/* 8036FA10 0036C950 4E 80 00 20 */ blr
.global func_8036FA14
func_8036FA14:
/* 8036FA14 0036C954 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036FA18 0036C958 7C 08 02 A6 */ mflr r0
/* 8036FA1C 0036C95C 3C E0 80 3D */ lis r7, lbl_803D3244@ha
/* 8036FA20 0036C960 2C 06 00 00 */ cmpwi r6, 0
/* 8036FA24 0036C964 90 01 00 34 */ stw r0, 0x34(r1)
/* 8036FA28 0036C968 38 00 00 00 */ li r0, 0
/* 8036FA2C 0036C96C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8036FA30 0036C970 3B E7 32 44 */ addi r31, r7, lbl_803D3244@l
/* 8036FA34 0036C974 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8036FA38 0036C978 3B C0 00 00 */ li r30, 0
/* 8036FA3C 0036C97C 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8036FA40 0036C980 7C BD 2B 78 */ mr r29, r5
/* 8036FA44 0036C984 80 DF 00 0C */ lwz r6, 0xc(r31)
/* 8036FA48 0036C988 81 3F 00 00 */ lwz r9, 0(r31)
/* 8036FA4C 0036C98C 81 1F 00 04 */ lwz r8, 4(r31)
/* 8036FA50 0036C990 80 FF 00 08 */ lwz r7, 8(r31)
/* 8036FA54 0036C994 91 21 00 08 */ stw r9, 8(r1)
/* 8036FA58 0036C998 91 01 00 0C */ stw r8, 0xc(r1)
/* 8036FA5C 0036C99C 90 E1 00 10 */ stw r7, 0x10(r1)
/* 8036FA60 0036C9A0 90 C1 00 14 */ stw r6, 0x14(r1)
/* 8036FA64 0036C9A4 98 1F 00 0D */ stb r0, 0xd(r31)
/* 8036FA68 0036C9A8 41 82 00 0C */ beq lbl_8036FA74
/* 8036FA6C 0036C9AC 48 00 1E 0D */ bl func_80371878
/* 8036FA70 0036C9B0 48 00 00 08 */ b lbl_8036FA78
lbl_8036FA74:
/* 8036FA74 0036C9B4 48 00 1C 19 */ bl func_8037168C
lbl_8036FA78:
/* 8036FA78 0036C9B8 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 8036FA7C 0036C9BC 28 00 00 00 */ cmplwi r0, 0
/* 8036FA80 0036C9C0 41 82 00 10 */ beq lbl_8036FA90
/* 8036FA84 0036C9C4 38 00 00 00 */ li r0, 0
/* 8036FA88 0036C9C8 3B C0 07 02 */ li r30, 0x702
/* 8036FA8C 0036C9CC 90 1D 00 00 */ stw r0, 0(r29)
lbl_8036FA90:
/* 8036FA90 0036C9D0 3C 60 80 3D */ lis r3, lbl_803D3244@ha
/* 8036FA94 0036C9D4 80 C1 00 08 */ lwz r6, 8(r1)
/* 8036FA98 0036C9D8 38 E3 32 44 */ addi r7, r3, lbl_803D3244@l
/* 8036FA9C 0036C9DC 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 8036FAA0 0036C9E0 80 81 00 10 */ lwz r4, 0x10(r1)
/* 8036FAA4 0036C9E4 7F C3 F3 78 */ mr r3, r30
/* 8036FAA8 0036C9E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036FAAC 0036C9EC 90 C7 00 00 */ stw r6, 0(r7)
/* 8036FAB0 0036C9F0 90 A7 00 04 */ stw r5, 4(r7)
/* 8036FAB4 0036C9F4 90 87 00 08 */ stw r4, 8(r7)
/* 8036FAB8 0036C9F8 90 07 00 0C */ stw r0, 0xc(r7)
/* 8036FABC 0036C9FC 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8036FAC0 0036CA00 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8036FAC4 0036CA04 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8036FAC8 0036CA08 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8036FACC 0036CA0C 7C 08 03 A6 */ mtlr r0
/* 8036FAD0 0036CA10 38 21 00 30 */ addi r1, r1, 0x30
/* 8036FAD4 0036CA14 4E 80 00 20 */ blr
.global func_8036FAD8
func_8036FAD8:
/* 8036FAD8 0036CA18 3C 80 80 45 */ lis r4, lbl_8044F294@ha
/* 8036FADC 0036CA1C 38 84 F2 94 */ addi r4, r4, lbl_8044F294@l
/* 8036FAE0 0036CA20 90 64 00 A0 */ stw r3, 0xa0(r4)
/* 8036FAE4 0036CA24 4E 80 00 20 */ blr
.global func_8036FAE8
func_8036FAE8:
/* 8036FAE8 0036CA28 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 8036FAEC 0036CA2C 38 00 00 01 */ li r0, 1
/* 8036FAF0 0036CA30 38 83 F2 94 */ addi r4, r3, lbl_8044F294@l
/* 8036FAF4 0036CA34 38 60 00 00 */ li r3, 0
/* 8036FAF8 0036CA38 90 04 00 98 */ stw r0, 0x98(r4)
/* 8036FAFC 0036CA3C 4E 80 00 20 */ blr
.global func_8036FB00
func_8036FB00:
/* 8036FB00 0036CA40 3C 80 80 45 */ lis r4, lbl_8044F294@ha
/* 8036FB04 0036CA44 38 84 F2 94 */ addi r4, r4, lbl_8044F294@l
/* 8036FB08 0036CA48 90 64 00 98 */ stw r3, 0x98(r4)
/* 8036FB0C 0036CA4C 4E 80 00 20 */ blr
.global func_8036FB10
func_8036FB10:
/* 8036FB10 0036CA50 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 8036FB14 0036CA54 38 63 F2 94 */ addi r3, r3, lbl_8044F294@l
/* 8036FB18 0036CA58 80 63 00 98 */ lwz r3, 0x98(r3)
/* 8036FB1C 0036CA5C 4E 80 00 20 */ blr
.global func_8036FB20
func_8036FB20:
/* 8036FB20 0036CA60 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8036FB24 0036CA64 7C 08 02 A6 */ mflr r0
/* 8036FB28 0036CA68 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FB2C 0036CA6C 90 01 00 44 */ stw r0, 0x44(r1)
/* 8036FB30 0036CA70 BF 61 00 2C */ stmw r27, 0x2c(r1)
/* 8036FB34 0036CA74 3B E3 F3 38 */ addi r31, r3, lbl_8044F338@l
/* 8036FB38 0036CA78 83 7F 00 0C */ lwz r27, 0xc(r31)
/* 8036FB3C 0036CA7C 2C 1B 00 D1 */ cmpwi r27, 0xd1
/* 8036FB40 0036CA80 41 82 00 40 */ beq lbl_8036FB80
/* 8036FB44 0036CA84 2C 1B 00 D0 */ cmpwi r27, 0xd0
/* 8036FB48 0036CA88 41 82 00 38 */ beq lbl_8036FB80
/* 8036FB4C 0036CA8C 2C 1B 00 D2 */ cmpwi r27, 0xd2
/* 8036FB50 0036CA90 41 82 00 30 */ beq lbl_8036FB80
/* 8036FB54 0036CA94 2C 1B 00 D3 */ cmpwi r27, 0xd3
/* 8036FB58 0036CA98 41 82 00 28 */ beq lbl_8036FB80
/* 8036FB5C 0036CA9C 2C 1B 00 D4 */ cmpwi r27, 0xd4
/* 8036FB60 0036CAA0 41 82 00 20 */ beq lbl_8036FB80
/* 8036FB64 0036CAA4 38 61 00 10 */ addi r3, r1, 0x10
/* 8036FB68 0036CAA8 38 80 00 04 */ li r4, 4
/* 8036FB6C 0036CAAC 4B FF D0 D1 */ bl func_8036CC3C
/* 8036FB70 0036CAB0 38 61 00 10 */ addi r3, r1, 0x10
/* 8036FB74 0036CAB4 4B FF D0 E1 */ bl func_8036CC54
/* 8036FB78 0036CAB8 38 60 00 00 */ li r3, 0
/* 8036FB7C 0036CABC 48 00 01 90 */ b lbl_8036FD0C
lbl_8036FB80:
/* 8036FB80 0036CAC0 2C 1B 00 D2 */ cmpwi r27, 0xd2
/* 8036FB84 0036CAC4 40 82 00 50 */ bne lbl_8036FBD4
/* 8036FB88 0036CAC8 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FB8C 0036CACC 38 C1 00 0C */ addi r6, r1, 0xc
/* 8036FB90 0036CAD0 38 83 F3 38 */ addi r4, r3, lbl_8044F338@l
/* 8036FB94 0036CAD4 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8036FB98 0036CAD8 80 64 00 10 */ lwz r3, 0x10(r4)
/* 8036FB9C 0036CADC 80 A4 00 18 */ lwz r5, 0x18(r4)
/* 8036FBA0 0036CAE0 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 8036FBA4 0036CAE4 4B FF F3 D9 */ bl func_8036EF7C
/* 8036FBA8 0036CAE8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FBAC 0036CAEC 7C 7E 1B 78 */ mr r30, r3
/* 8036FBB0 0036CAF0 2C 00 00 00 */ cmpwi r0, 0
/* 8036FBB4 0036CAF4 40 82 00 14 */ bne lbl_8036FBC8
/* 8036FBB8 0036CAF8 2C 1E 00 00 */ cmpwi r30, 0
/* 8036FBBC 0036CAFC 41 82 00 0C */ beq lbl_8036FBC8
/* 8036FBC0 0036CB00 38 00 00 01 */ li r0, 1
/* 8036FBC4 0036CB04 90 01 00 0C */ stw r0, 0xc(r1)
lbl_8036FBC8:
/* 8036FBC8 0036CB08 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FBCC 0036CB0C 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8036FBD0 0036CB10 48 00 01 24 */ b lbl_8036FCF4
lbl_8036FBD4:
/* 8036FBD4 0036CB14 2C 1B 00 D3 */ cmpwi r27, 0xd3
/* 8036FBD8 0036CB18 40 82 00 44 */ bne lbl_8036FC1C
/* 8036FBDC 0036CB1C 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FBE0 0036CB20 38 81 00 0C */ addi r4, r1, 0xc
/* 8036FBE4 0036CB24 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 8036FBE8 0036CB28 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8036FBEC 0036CB2C 4B FF F2 A9 */ bl func_8036EE94
/* 8036FBF0 0036CB30 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FBF4 0036CB34 7C 7E 1B 78 */ mr r30, r3
/* 8036FBF8 0036CB38 2C 00 00 00 */ cmpwi r0, 0
/* 8036FBFC 0036CB3C 40 82 00 14 */ bne lbl_8036FC10
/* 8036FC00 0036CB40 2C 1E 00 00 */ cmpwi r30, 0
/* 8036FC04 0036CB44 41 82 00 0C */ beq lbl_8036FC10
/* 8036FC08 0036CB48 38 00 00 01 */ li r0, 1
/* 8036FC0C 0036CB4C 90 01 00 0C */ stw r0, 0xc(r1)
lbl_8036FC10:
/* 8036FC10 0036CB50 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FC14 0036CB54 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8036FC18 0036CB58 48 00 00 DC */ b lbl_8036FCF4
lbl_8036FC1C:
/* 8036FC1C 0036CB5C 2C 1B 00 D4 */ cmpwi r27, 0xd4
/* 8036FC20 0036CB60 40 82 00 68 */ bne lbl_8036FC88
/* 8036FC24 0036CB64 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FC28 0036CB68 38 81 00 08 */ addi r4, r1, 8
/* 8036FC2C 0036CB6C 3B A3 F3 38 */ addi r29, r3, lbl_8044F338@l
/* 8036FC30 0036CB70 38 C1 00 0C */ addi r6, r1, 0xc
/* 8036FC34 0036CB74 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 8036FC38 0036CB78 80 1D 00 18 */ lwz r0, 0x18(r29)
/* 8036FC3C 0036CB7C 80 E3 00 00 */ lwz r7, 0(r3)
/* 8036FC40 0036CB80 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 8036FC44 0036CB84 54 05 06 3E */ clrlwi r5, r0, 0x18
/* 8036FC48 0036CB88 90 E1 00 08 */ stw r7, 8(r1)
/* 8036FC4C 0036CB8C 4B FF F1 39 */ bl func_8036ED84
/* 8036FC50 0036CB90 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FC54 0036CB94 7C 7E 1B 78 */ mr r30, r3
/* 8036FC58 0036CB98 2C 00 00 00 */ cmpwi r0, 0
/* 8036FC5C 0036CB9C 40 82 00 14 */ bne lbl_8036FC70
/* 8036FC60 0036CBA0 2C 1E 00 00 */ cmpwi r30, 0
/* 8036FC64 0036CBA4 41 82 00 0C */ beq lbl_8036FC70
/* 8036FC68 0036CBA8 38 00 00 01 */ li r0, 1
/* 8036FC6C 0036CBAC 90 01 00 0C */ stw r0, 0xc(r1)
lbl_8036FC70:
/* 8036FC70 0036CBB0 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8036FC74 0036CBB4 80 01 00 08 */ lwz r0, 8(r1)
/* 8036FC78 0036CBB8 90 7F 00 0C */ stw r3, 0xc(r31)
/* 8036FC7C 0036CBBC 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 8036FC80 0036CBC0 90 03 00 00 */ stw r0, 0(r3)
/* 8036FC84 0036CBC4 48 00 00 70 */ b lbl_8036FCF4
lbl_8036FC88:
/* 8036FC88 0036CBC8 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FC8C 0036CBCC 20 1B 00 D1 */ subfic r0, r27, 0xd1
/* 8036FC90 0036CBD0 3B A3 F3 38 */ addi r29, r3, lbl_8044F338@l
/* 8036FC94 0036CBD4 38 C1 00 0C */ addi r6, r1, 0xc
/* 8036FC98 0036CBD8 83 9D 00 14 */ lwz r28, 0x14(r29)
/* 8036FC9C 0036CBDC 7C 00 00 34 */ cntlzw r0, r0
/* 8036FCA0 0036CBE0 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 8036FCA4 0036CBE4 54 08 D9 7E */ srwi r8, r0, 5
/* 8036FCA8 0036CBE8 80 9D 00 18 */ lwz r4, 0x18(r29)
/* 8036FCAC 0036CBEC 7F 85 E3 78 */ mr r5, r28
/* 8036FCB0 0036CBF0 38 E0 00 01 */ li r7, 1
/* 8036FCB4 0036CBF4 4B FF F5 C5 */ bl func_8036F278
/* 8036FCB8 0036CBF8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FCBC 0036CBFC 7C 7E 1B 78 */ mr r30, r3
/* 8036FCC0 0036CC00 2C 00 00 00 */ cmpwi r0, 0
/* 8036FCC4 0036CC04 40 82 00 14 */ bne lbl_8036FCD8
/* 8036FCC8 0036CC08 2C 1E 00 00 */ cmpwi r30, 0
/* 8036FCCC 0036CC0C 41 82 00 0C */ beq lbl_8036FCD8
/* 8036FCD0 0036CC10 38 00 00 01 */ li r0, 1
/* 8036FCD4 0036CC14 90 01 00 0C */ stw r0, 0xc(r1)
lbl_8036FCD8:
/* 8036FCD8 0036CC18 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8036FCDC 0036CC1C 2C 1B 00 D1 */ cmpwi r27, 0xd1
/* 8036FCE0 0036CC20 90 1F 00 0C */ stw r0, 0xc(r31)
/* 8036FCE4 0036CC24 40 82 00 10 */ bne lbl_8036FCF4
/* 8036FCE8 0036CC28 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 8036FCEC 0036CC2C 80 9C 00 00 */ lwz r4, 0(r28)
/* 8036FCF0 0036CC30 4B FF F8 59 */ bl func_8036F548
lbl_8036FCF4:
/* 8036FCF4 0036CC34 3C 80 80 45 */ lis r4, lbl_8044F338@ha
/* 8036FCF8 0036CC38 7F C3 F3 78 */ mr r3, r30
/* 8036FCFC 0036CC3C 38 A4 F3 38 */ addi r5, r4, lbl_8044F338@l
/* 8036FD00 0036CC40 80 85 00 80 */ lwz r4, 0x80(r5)
/* 8036FD04 0036CC44 38 04 00 04 */ addi r0, r4, 4
/* 8036FD08 0036CC48 90 05 00 80 */ stw r0, 0x80(r5)
lbl_8036FD0C:
/* 8036FD0C 0036CC4C BB 61 00 2C */ lmw r27, 0x2c(r1)
/* 8036FD10 0036CC50 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8036FD14 0036CC54 7C 08 03 A6 */ mtlr r0
/* 8036FD18 0036CC58 38 21 00 40 */ addi r1, r1, 0x40
/* 8036FD1C 0036CC5C 4E 80 00 20 */ blr
.global func_8036FD20
func_8036FD20:
/* 8036FD20 0036CC60 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FD24 0036CC64 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 8036FD28 0036CC68 80 63 00 80 */ lwz r3, 0x80(r3)
/* 8036FD2C 0036CC6C 4E 80 00 20 */ blr
.global func_8036FD30
func_8036FD30:
/* 8036FD30 0036CC70 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036FD34 0036CC74 7C 08 02 A6 */ mflr r0
/* 8036FD38 0036CC78 2C 05 00 00 */ cmpwi r5, 0
/* 8036FD3C 0036CC7C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036FD40 0036CC80 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036FD44 0036CC84 41 82 00 0C */ beq lbl_8036FD50
/* 8036FD48 0036CC88 38 60 07 03 */ li r3, 0x703
/* 8036FD4C 0036CC8C 48 00 00 88 */ b lbl_8036FDD4
lbl_8036FD50:
/* 8036FD50 0036CC90 3C C0 80 3D */ lis r6, lbl_803D3254@ha
/* 8036FD54 0036CC94 3C A0 80 3A */ lis r5, lbl_803A2BE8@ha
/* 8036FD58 0036CC98 3B E6 32 54 */ addi r31, r6, lbl_803D3254@l
/* 8036FD5C 0036CC9C 38 C0 00 01 */ li r6, 1
/* 8036FD60 0036CCA0 90 7F 00 0C */ stw r3, 0xc(r31)
/* 8036FD64 0036CCA4 38 05 2B E8 */ addi r0, r5, lbl_803A2BE8@l
/* 8036FD68 0036CCA8 38 60 00 01 */ li r3, 1
/* 8036FD6C 0036CCAC 90 9F 00 10 */ stw r4, 0x10(r31)
/* 8036FD70 0036CCB0 7C 04 03 78 */ mr r4, r0
/* 8036FD74 0036CCB4 90 DF 00 04 */ stw r6, 4(r31)
/* 8036FD78 0036CCB8 90 DF 00 00 */ stw r6, 0(r31)
/* 8036FD7C 0036CCBC 4C C6 31 82 */ crclr 6
/* 8036FD80 0036CCC0 48 00 2E D5 */ bl func_80372C54
/* 8036FD84 0036CCC4 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FD88 0036CCC8 80 9F 00 04 */ lwz r4, 4(r31)
/* 8036FD8C 0036CCCC 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 8036FD90 0036CCD0 80 03 01 F8 */ lwz r0, 0x1f8(r3)
/* 8036FD94 0036CCD4 2C 04 00 00 */ cmpwi r4, 0
/* 8036FD98 0036CCD8 60 00 04 00 */ ori r0, r0, 0x400
/* 8036FD9C 0036CCDC 90 03 01 F8 */ stw r0, 0x1f8(r3)
/* 8036FDA0 0036CCE0 41 82 00 0C */ beq lbl_8036FDAC
/* 8036FDA4 0036CCE4 2C 04 00 10 */ cmpwi r4, 0x10
/* 8036FDA8 0036CCE8 40 82 00 18 */ bne lbl_8036FDC0
lbl_8036FDAC:
/* 8036FDAC 0036CCEC 3C 60 80 3D */ lis r3, lbl_803D3254@ha
/* 8036FDB0 0036CCF0 38 83 32 54 */ addi r4, r3, lbl_803D3254@l
/* 8036FDB4 0036CCF4 80 64 00 08 */ lwz r3, 8(r4)
/* 8036FDB8 0036CCF8 38 03 FF FF */ addi r0, r3, -1
/* 8036FDBC 0036CCFC 90 04 00 08 */ stw r0, 8(r4)
lbl_8036FDC0:
/* 8036FDC0 0036CD00 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 8036FDC4 0036CD04 38 00 00 00 */ li r0, 0
/* 8036FDC8 0036CD08 38 83 F2 94 */ addi r4, r3, lbl_8044F294@l
/* 8036FDCC 0036CD0C 38 60 00 00 */ li r3, 0
/* 8036FDD0 0036CD10 90 04 00 98 */ stw r0, 0x98(r4)
lbl_8036FDD4:
/* 8036FDD4 0036CD14 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036FDD8 0036CD18 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8036FDDC 0036CD1C 7C 08 03 A6 */ mtlr r0
/* 8036FDE0 0036CD20 38 21 00 10 */ addi r1, r1, 0x10
/* 8036FDE4 0036CD24 4E 80 00 20 */ blr
.global func_8036FDE8
func_8036FDE8:
/* 8036FDE8 0036CD28 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036FDEC 0036CD2C 7C 08 02 A6 */ mflr r0
/* 8036FDF0 0036CD30 2C 04 00 00 */ cmpwi r4, 0
/* 8036FDF4 0036CD34 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036FDF8 0036CD38 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036FDFC 0036CD3C 41 82 00 0C */ beq lbl_8036FE08
/* 8036FE00 0036CD40 38 60 07 03 */ li r3, 0x703
/* 8036FE04 0036CD44 48 00 00 7C */ b lbl_8036FE80
lbl_8036FE08:
/* 8036FE08 0036CD48 3C A0 80 3D */ lis r5, lbl_803D3254@ha
/* 8036FE0C 0036CD4C 3C 80 80 3A */ lis r4, lbl_803A2BE8@ha
/* 8036FE10 0036CD50 3B E5 32 54 */ addi r31, r5, lbl_803D3254@l
/* 8036FE14 0036CD54 38 00 00 01 */ li r0, 1
/* 8036FE18 0036CD58 38 A0 00 00 */ li r5, 0
/* 8036FE1C 0036CD5C 90 7F 00 08 */ stw r3, 8(r31)
/* 8036FE20 0036CD60 38 84 2B E8 */ addi r4, r4, lbl_803A2BE8@l
/* 8036FE24 0036CD64 38 60 00 01 */ li r3, 1
/* 8036FE28 0036CD68 90 BF 00 04 */ stw r5, 4(r31)
/* 8036FE2C 0036CD6C 90 1F 00 00 */ stw r0, 0(r31)
/* 8036FE30 0036CD70 4C C6 31 82 */ crclr 6
/* 8036FE34 0036CD74 48 00 2E 21 */ bl func_80372C54
/* 8036FE38 0036CD78 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FE3C 0036CD7C 80 9F 00 04 */ lwz r4, 4(r31)
/* 8036FE40 0036CD80 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 8036FE44 0036CD84 80 03 01 F8 */ lwz r0, 0x1f8(r3)
/* 8036FE48 0036CD88 2C 04 00 00 */ cmpwi r4, 0
/* 8036FE4C 0036CD8C 60 00 04 00 */ ori r0, r0, 0x400
/* 8036FE50 0036CD90 90 03 01 F8 */ stw r0, 0x1f8(r3)
/* 8036FE54 0036CD94 41 82 00 0C */ beq lbl_8036FE60
/* 8036FE58 0036CD98 2C 04 00 10 */ cmpwi r4, 0x10
/* 8036FE5C 0036CD9C 40 82 00 10 */ bne lbl_8036FE6C
lbl_8036FE60:
/* 8036FE60 0036CDA0 80 7F 00 08 */ lwz r3, 8(r31)
/* 8036FE64 0036CDA4 38 03 FF FF */ addi r0, r3, -1
/* 8036FE68 0036CDA8 90 1F 00 08 */ stw r0, 8(r31)
lbl_8036FE6C:
/* 8036FE6C 0036CDAC 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 8036FE70 0036CDB0 38 00 00 00 */ li r0, 0
/* 8036FE74 0036CDB4 38 83 F2 94 */ addi r4, r3, lbl_8044F294@l
/* 8036FE78 0036CDB8 38 60 00 00 */ li r3, 0
/* 8036FE7C 0036CDBC 90 04 00 98 */ stw r0, 0x98(r4)
lbl_8036FE80:
/* 8036FE80 0036CDC0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036FE84 0036CDC4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8036FE88 0036CDC8 7C 08 03 A6 */ mtlr r0
/* 8036FE8C 0036CDCC 38 21 00 10 */ addi r1, r1, 0x10
/* 8036FE90 0036CDD0 4E 80 00 20 */ blr
.global func_8036FE94
func_8036FE94:
/* 8036FE94 0036CDD4 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8036FE98 0036CDD8 7C 08 02 A6 */ mflr r0
/* 8036FE9C 0036CDDC 38 80 00 00 */ li r4, 0
/* 8036FEA0 0036CDE0 38 A0 00 40 */ li r5, 0x40
/* 8036FEA4 0036CDE4 90 01 00 64 */ stw r0, 0x64(r1)
/* 8036FEA8 0036CDE8 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 8036FEAC 0036CDEC 7C 7F 1B 78 */ mr r31, r3
/* 8036FEB0 0036CDF0 38 61 00 0C */ addi r3, r1, 0xc
/* 8036FEB4 0036CDF4 4B C9 35 A5 */ bl func_80003458
/* 8036FEB8 0036CDF8 3C 60 80 3D */ lis r3, lbl_803D3244@ha
/* 8036FEBC 0036CDFC 38 A0 00 40 */ li r5, 0x40
/* 8036FEC0 0036CE00 80 83 32 44 */ lwz r4, lbl_803D3244@l(r3)
/* 8036FEC4 0036CE04 38 00 00 91 */ li r0, 0x91
/* 8036FEC8 0036CE08 90 A1 00 0C */ stw r5, 0xc(r1)
/* 8036FECC 0036CE0C 38 61 00 08 */ addi r3, r1, 8
/* 8036FED0 0036CE10 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036FED4 0036CE14 90 81 00 14 */ stw r4, 0x14(r1)
/* 8036FED8 0036CE18 48 00 0E B1 */ bl func_80370D88
/* 8036FEDC 0036CE1C 3C 60 80 3D */ lis r3, lbl_803D3244@ha
/* 8036FEE0 0036CE20 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036FEE4 0036CE24 38 83 32 44 */ addi r4, r3, lbl_803D3244@l
/* 8036FEE8 0036CE28 7F E3 FB 78 */ mr r3, r31
/* 8036FEEC 0036CE2C A0 04 00 08 */ lhz r0, 8(r4)
/* 8036FEF0 0036CE30 38 81 00 0C */ addi r4, r1, 0xc
/* 8036FEF4 0036CE34 90 A1 00 18 */ stw r5, 0x18(r1)
/* 8036FEF8 0036CE38 38 A0 00 40 */ li r5, 0x40
/* 8036FEFC 0036CE3C 90 01 00 1C */ stw r0, 0x1c(r1)
/* 8036FF00 0036CE40 4B FF D4 89 */ bl func_8036D388
/* 8036FF04 0036CE44 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8036FF08 0036CE48 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 8036FF0C 0036CE4C 7C 08 03 A6 */ mtlr r0
/* 8036FF10 0036CE50 38 21 00 60 */ addi r1, r1, 0x60
/* 8036FF14 0036CE54 4E 80 00 20 */ blr
.global func_8036FF18
func_8036FF18:
/* 8036FF18 0036CE58 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8036FF1C 0036CE5C 7C 08 02 A6 */ mflr r0
/* 8036FF20 0036CE60 38 80 00 00 */ li r4, 0
/* 8036FF24 0036CE64 38 A0 00 40 */ li r5, 0x40
/* 8036FF28 0036CE68 90 01 00 64 */ stw r0, 0x64(r1)
/* 8036FF2C 0036CE6C 93 E1 00 5C */ stw r31, 0x5c(r1)
/* 8036FF30 0036CE70 7C 7F 1B 78 */ mr r31, r3
/* 8036FF34 0036CE74 38 61 00 0C */ addi r3, r1, 0xc
/* 8036FF38 0036CE78 4B C9 35 21 */ bl func_80003458
/* 8036FF3C 0036CE7C 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FF40 0036CE80 38 A0 00 40 */ li r5, 0x40
/* 8036FF44 0036CE84 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 8036FF48 0036CE88 38 00 00 90 */ li r0, 0x90
/* 8036FF4C 0036CE8C 80 83 00 80 */ lwz r4, 0x80(r3)
/* 8036FF50 0036CE90 38 61 00 08 */ addi r3, r1, 8
/* 8036FF54 0036CE94 90 A1 00 0C */ stw r5, 0xc(r1)
/* 8036FF58 0036CE98 98 01 00 10 */ stb r0, 0x10(r1)
/* 8036FF5C 0036CE9C 90 81 00 14 */ stw r4, 0x14(r1)
/* 8036FF60 0036CEA0 48 00 0E 29 */ bl func_80370D88
/* 8036FF64 0036CEA4 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FF68 0036CEA8 80 A1 00 08 */ lwz r5, 8(r1)
/* 8036FF6C 0036CEAC 38 83 F3 38 */ addi r4, r3, lbl_8044F338@l
/* 8036FF70 0036CEB0 7F E3 FB 78 */ mr r3, r31
/* 8036FF74 0036CEB4 80 04 02 F8 */ lwz r0, 0x2f8(r4)
/* 8036FF78 0036CEB8 38 81 00 0C */ addi r4, r1, 0xc
/* 8036FF7C 0036CEBC 90 A1 00 18 */ stw r5, 0x18(r1)
/* 8036FF80 0036CEC0 38 A0 00 40 */ li r5, 0x40
/* 8036FF84 0036CEC4 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 8036FF88 0036CEC8 90 01 00 1C */ stw r0, 0x1c(r1)
/* 8036FF8C 0036CECC 4B FF D3 FD */ bl func_8036D388
/* 8036FF90 0036CED0 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8036FF94 0036CED4 83 E1 00 5C */ lwz r31, 0x5c(r1)
/* 8036FF98 0036CED8 7C 08 03 A6 */ mtlr r0
/* 8036FF9C 0036CEDC 38 21 00 60 */ addi r1, r1, 0x60
/* 8036FFA0 0036CEE0 4E 80 00 20 */ blr
.global func_8036FFA4
func_8036FFA4:
/* 8036FFA4 0036CEE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036FFA8 0036CEE8 7C 08 02 A6 */ mflr r0
/* 8036FFAC 0036CEEC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036FFB0 0036CEF0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036FFB4 0036CEF4 93 C1 00 08 */ stw r30, 8(r1)
/* 8036FFB8 0036CEF8 3B C0 00 00 */ li r30, 0
/* 8036FFBC 0036CEFC 80 03 00 00 */ lwz r0, 0(r3)
/* 8036FFC0 0036CF00 2C 00 00 05 */ cmpwi r0, 5
/* 8036FFC4 0036CF04 40 80 01 54 */ bge lbl_80370118
/* 8036FFC8 0036CF08 2C 00 00 03 */ cmpwi r0, 3
/* 8036FFCC 0036CF0C 40 80 00 08 */ bge lbl_8036FFD4
/* 8036FFD0 0036CF10 48 00 01 48 */ b lbl_80370118
lbl_8036FFD4:
/* 8036FFD4 0036CF14 3C 60 80 3D */ lis r3, lbl_803D3254@ha
/* 8036FFD8 0036CF18 38 83 32 54 */ addi r4, r3, lbl_803D3254@l
/* 8036FFDC 0036CF1C 80 04 00 00 */ lwz r0, 0(r4)
/* 8036FFE0 0036CF20 2C 00 00 00 */ cmpwi r0, 0
/* 8036FFE4 0036CF24 41 82 01 08 */ beq lbl_803700EC
/* 8036FFE8 0036CF28 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 8036FFEC 0036CF2C 38 A0 00 01 */ li r5, 1
/* 8036FFF0 0036CF30 3B E3 F3 38 */ addi r31, r3, lbl_8044F338@l
/* 8036FFF4 0036CF34 80 1F 01 F8 */ lwz r0, 0x1f8(r31)
/* 8036FFF8 0036CF38 54 00 05 A8 */ rlwinm r0, r0, 0, 0x16, 0x14
/* 8036FFFC 0036CF3C 90 1F 01 F8 */ stw r0, 0x1f8(r31)
/* 80370000 0036CF40 41 82 00 64 */ beq lbl_80370064
/* 80370004 0036CF44 80 1F 02 F8 */ lwz r0, 0x2f8(r31)
/* 80370008 0036CF48 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 8037000C 0036CF4C 28 00 0D 00 */ cmplwi r0, 0xd00
/* 80370010 0036CF50 40 82 00 54 */ bne lbl_80370064
/* 80370014 0036CF54 80 04 00 04 */ lwz r0, 4(r4)
/* 80370018 0036CF58 2C 00 00 01 */ cmpwi r0, 1
/* 8037001C 0036CF5C 41 82 00 28 */ beq lbl_80370044
/* 80370020 0036CF60 40 80 00 44 */ bge lbl_80370064
/* 80370024 0036CF64 2C 00 00 00 */ cmpwi r0, 0
/* 80370028 0036CF68 40 80 00 08 */ bge lbl_80370030
/* 8037002C 0036CF6C 48 00 00 38 */ b lbl_80370064
lbl_80370030:
/* 80370030 0036CF70 80 04 00 08 */ lwz r0, 8(r4)
/* 80370034 0036CF74 28 00 00 00 */ cmplwi r0, 0
/* 80370038 0036CF78 41 82 00 2C */ beq lbl_80370064
/* 8037003C 0036CF7C 38 A0 00 00 */ li r5, 0
/* 80370040 0036CF80 48 00 00 24 */ b lbl_80370064
lbl_80370044:
/* 80370044 0036CF84 80 7F 00 80 */ lwz r3, 0x80(r31)
/* 80370048 0036CF88 80 04 00 0C */ lwz r0, 0xc(r4)
/* 8037004C 0036CF8C 7C 03 00 40 */ cmplw r3, r0
/* 80370050 0036CF90 41 80 00 14 */ blt lbl_80370064
/* 80370054 0036CF94 80 04 00 10 */ lwz r0, 0x10(r4)
/* 80370058 0036CF98 7C 03 00 40 */ cmplw r3, r0
/* 8037005C 0036CF9C 41 81 00 08 */ bgt lbl_80370064
/* 80370060 0036CFA0 38 A0 00 00 */ li r5, 0
lbl_80370064:
/* 80370064 0036CFA4 2C 05 00 00 */ cmpwi r5, 0
/* 80370068 0036CFA8 41 82 00 14 */ beq lbl_8037007C
/* 8037006C 0036CFAC 3C 60 80 3D */ lis r3, lbl_803D3254@ha
/* 80370070 0036CFB0 38 00 00 00 */ li r0, 0
/* 80370074 0036CFB4 90 03 32 54 */ stw r0, lbl_803D3254@l(r3)
/* 80370078 0036CFB8 48 00 00 74 */ b lbl_803700EC
lbl_8037007C:
/* 8037007C 0036CFBC 3C 80 80 3D */ lis r4, lbl_803D3254@ha
/* 80370080 0036CFC0 38 00 00 01 */ li r0, 1
/* 80370084 0036CFC4 38 A4 32 54 */ addi r5, r4, lbl_803D3254@l
/* 80370088 0036CFC8 3C 60 80 3A */ lis r3, lbl_803A2BE8@ha
/* 8037008C 0036CFCC 90 05 00 00 */ stw r0, 0(r5)
/* 80370090 0036CFD0 38 83 2B E8 */ addi r4, r3, lbl_803A2BE8@l
/* 80370094 0036CFD4 38 60 00 01 */ li r3, 1
/* 80370098 0036CFD8 4C C6 31 82 */ crclr 6
/* 8037009C 0036CFDC 48 00 2B B9 */ bl func_80372C54
/* 803700A0 0036CFE0 3C 60 80 3D */ lis r3, lbl_803D3254@ha
/* 803700A4 0036CFE4 80 1F 01 F8 */ lwz r0, 0x1f8(r31)
/* 803700A8 0036CFE8 38 63 32 54 */ addi r3, r3, lbl_803D3254@l
/* 803700AC 0036CFEC 80 63 00 04 */ lwz r3, 4(r3)
/* 803700B0 0036CFF0 60 00 04 00 */ ori r0, r0, 0x400
/* 803700B4 0036CFF4 90 1F 01 F8 */ stw r0, 0x1f8(r31)
/* 803700B8 0036CFF8 2C 03 00 00 */ cmpwi r3, 0
/* 803700BC 0036CFFC 41 82 00 0C */ beq lbl_803700C8
/* 803700C0 0036D000 2C 03 00 10 */ cmpwi r3, 0x10
/* 803700C4 0036D004 40 82 00 18 */ bne lbl_803700DC
lbl_803700C8:
/* 803700C8 0036D008 3C 60 80 3D */ lis r3, lbl_803D3254@ha
/* 803700CC 0036D00C 38 83 32 54 */ addi r4, r3, lbl_803D3254@l
/* 803700D0 0036D010 80 64 00 08 */ lwz r3, 8(r4)
/* 803700D4 0036D014 38 03 FF FF */ addi r0, r3, -1
/* 803700D8 0036D018 90 04 00 08 */ stw r0, 8(r4)
lbl_803700DC:
/* 803700DC 0036D01C 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 803700E0 0036D020 38 00 00 00 */ li r0, 0
/* 803700E4 0036D024 38 63 F2 94 */ addi r3, r3, lbl_8044F294@l
/* 803700E8 0036D028 90 03 00 98 */ stw r0, 0x98(r3)
lbl_803700EC:
/* 803700EC 0036D02C 3C 60 80 3D */ lis r3, lbl_803D3254@ha
/* 803700F0 0036D030 80 03 32 54 */ lwz r0, lbl_803D3254@l(r3)
/* 803700F4 0036D034 2C 00 00 00 */ cmpwi r0, 0
/* 803700F8 0036D038 40 82 00 20 */ bne lbl_80370118
/* 803700FC 0036D03C 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 80370100 0036D040 38 00 00 01 */ li r0, 1
/* 80370104 0036D044 38 83 F2 94 */ addi r4, r3, lbl_8044F294@l
/* 80370108 0036D048 38 60 00 90 */ li r3, 0x90
/* 8037010C 0036D04C 90 04 00 98 */ stw r0, 0x98(r4)
/* 80370110 0036D050 4B FF F3 A1 */ bl func_8036F4B0
/* 80370114 0036D054 7C 7E 1B 78 */ mr r30, r3
lbl_80370118:
/* 80370118 0036D058 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8037011C 0036D05C 7F C3 F3 78 */ mr r3, r30
/* 80370120 0036D060 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80370124 0036D064 83 C1 00 08 */ lwz r30, 8(r1)
/* 80370128 0036D068 7C 08 03 A6 */ mtlr r0
/* 8037012C 0036D06C 38 21 00 10 */ addi r1, r1, 0x10
/* 80370130 0036D070 4E 80 00 20 */ blr
lbl_80370134:
/* 80370134 0036D074 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80370138 0036D078 7C 08 02 A6 */ mflr r0
/* 8037013C 0036D07C 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 80370140 0036D080 90 01 00 24 */ stw r0, 0x24(r1)
/* 80370144 0036D084 38 63 F2 94 */ addi r3, r3, lbl_8044F294@l
/* 80370148 0036D088 80 03 00 9C */ lwz r0, 0x9c(r3)
/* 8037014C 0036D08C 2C 00 00 00 */ cmpwi r0, 0
/* 80370150 0036D090 41 82 00 10 */ beq lbl_80370160
/* 80370154 0036D094 38 00 00 00 */ li r0, 0
/* 80370158 0036D098 90 03 00 9C */ stw r0, 0x9c(r3)
/* 8037015C 0036D09C 48 00 00 74 */ b lbl_803701D0
lbl_80370160:
/* 80370160 0036D0A0 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 80370164 0036D0A4 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 80370168 0036D0A8 80 03 02 F8 */ lwz r0, 0x2f8(r3)
/* 8037016C 0036D0AC 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 80370170 0036D0B0 2C 00 0D 00 */ cmpwi r0, 0xd00
/* 80370174 0036D0B4 41 82 00 14 */ beq lbl_80370188
/* 80370178 0036D0B8 40 80 00 44 */ bge lbl_803701BC
/* 8037017C 0036D0BC 2C 00 07 00 */ cmpwi r0, 0x700
/* 80370180 0036D0C0 41 82 00 08 */ beq lbl_80370188
/* 80370184 0036D0C4 48 00 00 38 */ b lbl_803701BC
lbl_80370188:
/* 80370188 0036D0C8 3C 80 80 45 */ lis r4, lbl_8044F338@ha
/* 8037018C 0036D0CC 38 61 00 08 */ addi r3, r1, 8
/* 80370190 0036D0D0 38 84 F3 38 */ addi r4, r4, lbl_8044F338@l
/* 80370194 0036D0D4 80 84 00 80 */ lwz r4, 0x80(r4)
/* 80370198 0036D0D8 48 00 0B F1 */ bl func_80370D88
/* 8037019C 0036D0DC 80 61 00 08 */ lwz r3, 8(r1)
/* 803701A0 0036D0E0 3C 03 F0 20 */ addis r0, r3, 0xf020
/* 803701A4 0036D0E4 28 00 00 00 */ cmplwi r0, 0
/* 803701A8 0036D0E8 40 82 00 0C */ bne lbl_803701B4
/* 803701AC 0036D0EC 38 80 00 05 */ li r4, 5
/* 803701B0 0036D0F0 48 00 00 10 */ b lbl_803701C0
lbl_803701B4:
/* 803701B4 0036D0F4 38 80 00 03 */ li r4, 3
/* 803701B8 0036D0F8 48 00 00 08 */ b lbl_803701C0
lbl_803701BC:
/* 803701BC 0036D0FC 38 80 00 04 */ li r4, 4
lbl_803701C0:
/* 803701C0 0036D100 38 61 00 0C */ addi r3, r1, 0xc
/* 803701C4 0036D104 4B FF CA 79 */ bl func_8036CC3C
/* 803701C8 0036D108 38 61 00 0C */ addi r3, r1, 0xc
/* 803701CC 0036D10C 4B FF CA 89 */ bl func_8036CC54
lbl_803701D0:
/* 803701D0 0036D110 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803701D4 0036D114 7C 08 03 A6 */ mtlr r0
/* 803701D8 0036D118 38 21 00 20 */ addi r1, r1, 0x20
/* 803701DC 0036D11C 4E 80 00 20 */ blr
.global func_803701E0
func_803701E0:
/* 803701E0 0036D120 94 21 FE D0 */ stwu r1, -0x130(r1)
/* 803701E4 0036D124 7C 08 02 A6 */ mflr r0
/* 803701E8 0036D128 90 01 01 34 */ stw r0, 0x134(r1)
/* 803701EC 0036D12C BE 61 00 FC */ stmw r19, 0xfc(r1)
/* 803701F0 0036D130 7C 97 23 78 */ mr r23, r4
/* 803701F4 0036D134 28 17 00 1F */ cmplwi r23, 0x1f
/* 803701F8 0036D138 7C 7B 1B 78 */ mr r27, r3
/* 803701FC 0036D13C 7C B8 2B 78 */ mr r24, r5
/* 80370200 0036D140 7C D9 33 78 */ mr r25, r6
/* 80370204 0036D144 7C FA 3B 78 */ mr r26, r7
/* 80370208 0036D148 40 81 00 0C */ ble lbl_80370214
/* 8037020C 0036D14C 38 60 07 01 */ li r3, 0x701
/* 80370210 0036D150 48 00 03 F4 */ b lbl_80370604
lbl_80370214:
/* 80370214 0036D154 3C 60 80 3A */ lis r3, lbl_803A2B70@ha
/* 80370218 0036D158 3C A0 80 3D */ lis r5, lbl_803D3244@ha
/* 8037021C 0036D15C 3B A3 2B 70 */ addi r29, r3, lbl_803A2B70@l
/* 80370220 0036D160 3C 80 7C 99 */ lis r4, 0x7C98E2A6@ha
/* 80370224 0036D164 80 1D 00 00 */ lwz r0, 0(r29)
/* 80370228 0036D168 3B E5 32 44 */ addi r31, r5, lbl_803D3244@l
/* 8037022C 0036D16C 81 1D 00 04 */ lwz r8, 4(r29)
/* 80370230 0036D170 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 80370234 0036D174 80 FD 00 24 */ lwz r7, 0x24(r29)
/* 80370238 0036D178 38 C4 E2 A6 */ addi r6, r4, 0x7C98E2A6@l
/* 8037023C 0036D17C 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80370240 0036D180 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 80370244 0036D184 82 7F 00 00 */ lwz r19, 0(r31)
/* 80370248 0036D188 3B C0 00 00 */ li r30, 0
/* 8037024C 0036D18C 82 DF 00 0C */ lwz r22, 0xc(r31)
/* 80370250 0036D190 3C A0 90 83 */ lis r5, 0x9083
/* 80370254 0036D194 91 01 00 C8 */ stw r8, 0xc8(r1)
/* 80370258 0036D198 38 61 00 C4 */ addi r3, r1, 0xc4
/* 8037025C 0036D19C 82 9F 00 04 */ lwz r20, 4(r31)
/* 80370260 0036D1A0 38 80 00 28 */ li r4, 0x28
/* 80370264 0036D1A4 90 E1 00 E8 */ stw r7, 0xe8(r1)
/* 80370268 0036D1A8 82 BF 00 08 */ lwz r21, 8(r31)
/* 8037026C 0036D1AC 83 9D 00 08 */ lwz r28, 8(r29)
/* 80370270 0036D1B0 81 9D 00 0C */ lwz r12, 0xc(r29)
/* 80370274 0036D1B4 81 7D 00 10 */ lwz r11, 0x10(r29)
/* 80370278 0036D1B8 81 5D 00 14 */ lwz r10, 0x14(r29)
/* 8037027C 0036D1BC 81 3D 00 18 */ lwz r9, 0x18(r29)
/* 80370280 0036D1C0 81 1D 00 1C */ lwz r8, 0x1c(r29)
/* 80370284 0036D1C4 80 FD 00 20 */ lwz r7, 0x20(r29)
/* 80370288 0036D1C8 92 61 00 14 */ stw r19, 0x14(r1)
/* 8037028C 0036D1CC 92 81 00 18 */ stw r20, 0x18(r1)
/* 80370290 0036D1D0 92 A1 00 1C */ stw r21, 0x1c(r1)
/* 80370294 0036D1D4 92 C1 00 20 */ stw r22, 0x20(r1)
/* 80370298 0036D1D8 9B DF 00 0D */ stb r30, 0xd(r31)
/* 8037029C 0036D1DC 93 81 00 CC */ stw r28, 0xcc(r1)
/* 803702A0 0036D1E0 91 81 00 D0 */ stw r12, 0xd0(r1)
/* 803702A4 0036D1E4 91 61 00 D4 */ stw r11, 0xd4(r1)
/* 803702A8 0036D1E8 91 41 00 D8 */ stw r10, 0xd8(r1)
/* 803702AC 0036D1EC 91 21 00 DC */ stw r9, 0xdc(r1)
/* 803702B0 0036D1F0 91 01 00 E0 */ stw r8, 0xe0(r1)
/* 803702B4 0036D1F4 90 E1 00 E4 */ stw r7, 0xe4(r1)
/* 803702B8 0036D1F8 90 C1 00 C4 */ stw r6, 0xc4(r1)
/* 803702BC 0036D1FC 90 A1 00 C8 */ stw r5, 0xc8(r1)
/* 803702C0 0036D200 90 01 00 E8 */ stw r0, 0xe8(r1)
/* 803702C4 0036D204 4B FF F2 85 */ bl func_8036F548
/* 803702C8 0036D208 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 803702CC 0036D20C 39 81 00 C4 */ addi r12, r1, 0xc4
/* 803702D0 0036D210 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 803702D4 0036D214 38 61 00 08 */ addi r3, r1, 8
/* 803702D8 0036D218 7D 89 03 A6 */ mtctr r12
/* 803702DC 0036D21C 4E 80 04 21 */ bctrl
/* 803702E0 0036D220 3C 60 80 3A */ lis r3, lbl_803A2B70@ha
/* 803702E4 0036D224 80 A1 00 08 */ lwz r5, 8(r1)
/* 803702E8 0036D228 3B A3 2B 70 */ addi r29, r3, lbl_803A2B70@l
/* 803702EC 0036D22C 3C 80 7C 99 */ lis r4, 0x7C98E3A6@ha
/* 803702F0 0036D230 81 1D 00 00 */ lwz r8, 0(r29)
/* 803702F4 0036D234 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 803702F8 0036D238 80 1D 00 04 */ lwz r0, 4(r29)
/* 803702FC 0036D23C 64 BE A0 00 */ oris r30, r5, 0xa000
/* 80370300 0036D240 80 FD 00 24 */ lwz r7, 0x24(r29)
/* 80370304 0036D244 38 A4 E3 A6 */ addi r5, r4, 0x7C98E3A6@l
/* 80370308 0036D248 90 01 00 A0 */ stw r0, 0xa0(r1)
/* 8037030C 0036D24C 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 80370310 0036D250 83 9D 00 08 */ lwz r28, 8(r29)
/* 80370314 0036D254 3C C0 80 83 */ lis r6, 0x8083
/* 80370318 0036D258 91 01 00 9C */ stw r8, 0x9c(r1)
/* 8037031C 0036D25C 38 61 00 9C */ addi r3, r1, 0x9c
/* 80370320 0036D260 81 9D 00 0C */ lwz r12, 0xc(r29)
/* 80370324 0036D264 38 80 00 28 */ li r4, 0x28
/* 80370328 0036D268 90 E1 00 C0 */ stw r7, 0xc0(r1)
/* 8037032C 0036D26C 81 7D 00 10 */ lwz r11, 0x10(r29)
/* 80370330 0036D270 81 5D 00 14 */ lwz r10, 0x14(r29)
/* 80370334 0036D274 81 3D 00 18 */ lwz r9, 0x18(r29)
/* 80370338 0036D278 81 1D 00 1C */ lwz r8, 0x1c(r29)
/* 8037033C 0036D27C 80 FD 00 20 */ lwz r7, 0x20(r29)
/* 80370340 0036D280 93 C1 00 08 */ stw r30, 8(r1)
/* 80370344 0036D284 93 81 00 A4 */ stw r28, 0xa4(r1)
/* 80370348 0036D288 91 81 00 A8 */ stw r12, 0xa8(r1)
/* 8037034C 0036D28C 91 61 00 AC */ stw r11, 0xac(r1)
/* 80370350 0036D290 91 41 00 B0 */ stw r10, 0xb0(r1)
/* 80370354 0036D294 91 21 00 B4 */ stw r9, 0xb4(r1)
/* 80370358 0036D298 91 01 00 B8 */ stw r8, 0xb8(r1)
/* 8037035C 0036D29C 90 E1 00 BC */ stw r7, 0xbc(r1)
/* 80370360 0036D2A0 90 C1 00 9C */ stw r6, 0x9c(r1)
/* 80370364 0036D2A4 90 A1 00 A0 */ stw r5, 0xa0(r1)
/* 80370368 0036D2A8 90 01 00 C0 */ stw r0, 0xc0(r1)
/* 8037036C 0036D2AC 4B FF F1 DD */ bl func_8036F548
/* 80370370 0036D2B0 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 80370374 0036D2B4 39 81 00 9C */ addi r12, r1, 0x9c
/* 80370378 0036D2B8 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 8037037C 0036D2BC 38 61 00 08 */ addi r3, r1, 8
/* 80370380 0036D2C0 7D 89 03 A6 */ mtctr r12
/* 80370384 0036D2C4 4E 80 04 21 */ bctrl
/* 80370388 0036D2C8 3C 60 80 3A */ lis r3, lbl_803A2B70@ha
/* 8037038C 0036D2CC 3C 80 7C 91 */ lis r4, 0x7C90E3A6@ha
/* 80370390 0036D2D0 3B A3 2B 70 */ addi r29, r3, lbl_803A2B70@l
/* 80370394 0036D2D4 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 80370398 0036D2D8 81 1D 00 00 */ lwz r8, 0(r29)
/* 8037039C 0036D2DC 3B C0 00 00 */ li r30, 0
/* 803703A0 0036D2E0 80 DD 00 04 */ lwz r6, 4(r29)
/* 803703A4 0036D2E4 38 A4 E3 A6 */ addi r5, r4, 0x7C90E3A6@l
/* 803703A8 0036D2E8 80 FD 00 24 */ lwz r7, 0x24(r29)
/* 803703AC 0036D2EC 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 803703B0 0036D2F0 90 C1 00 78 */ stw r6, 0x78(r1)
/* 803703B4 0036D2F4 3C C0 80 83 */ lis r6, 0x8083
/* 803703B8 0036D2F8 83 9D 00 08 */ lwz r28, 8(r29)
/* 803703BC 0036D2FC 38 61 00 74 */ addi r3, r1, 0x74
/* 803703C0 0036D300 91 01 00 74 */ stw r8, 0x74(r1)
/* 803703C4 0036D304 38 80 00 28 */ li r4, 0x28
/* 803703C8 0036D308 81 9D 00 0C */ lwz r12, 0xc(r29)
/* 803703CC 0036D30C 90 E1 00 98 */ stw r7, 0x98(r1)
/* 803703D0 0036D310 81 7D 00 10 */ lwz r11, 0x10(r29)
/* 803703D4 0036D314 81 5D 00 14 */ lwz r10, 0x14(r29)
/* 803703D8 0036D318 81 3D 00 18 */ lwz r9, 0x18(r29)
/* 803703DC 0036D31C 81 1D 00 1C */ lwz r8, 0x1c(r29)
/* 803703E0 0036D320 80 FD 00 20 */ lwz r7, 0x20(r29)
/* 803703E4 0036D324 93 C1 00 08 */ stw r30, 8(r1)
/* 803703E8 0036D328 93 81 00 7C */ stw r28, 0x7c(r1)
/* 803703EC 0036D32C 91 81 00 80 */ stw r12, 0x80(r1)
/* 803703F0 0036D330 91 61 00 84 */ stw r11, 0x84(r1)
/* 803703F4 0036D334 91 41 00 88 */ stw r10, 0x88(r1)
/* 803703F8 0036D338 91 21 00 8C */ stw r9, 0x8c(r1)
/* 803703FC 0036D33C 91 01 00 90 */ stw r8, 0x90(r1)
/* 80370400 0036D340 90 E1 00 94 */ stw r7, 0x94(r1)
/* 80370404 0036D344 90 C1 00 74 */ stw r6, 0x74(r1)
/* 80370408 0036D348 90 A1 00 78 */ stw r5, 0x78(r1)
/* 8037040C 0036D34C 90 01 00 98 */ stw r0, 0x98(r1)
/* 80370410 0036D350 4B FF F1 39 */ bl func_8036F548
/* 80370414 0036D354 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 80370418 0036D358 39 81 00 74 */ addi r12, r1, 0x74
/* 8037041C 0036D35C 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 80370420 0036D360 38 61 00 08 */ addi r3, r1, 8
/* 80370424 0036D364 7D 89 03 A6 */ mtctr r12
/* 80370428 0036D368 4E 80 04 21 */ bctrl
/* 8037042C 0036D36C 38 00 00 00 */ li r0, 0
/* 80370430 0036D370 57 7E A8 14 */ slwi r30, r27, 0x15
/* 80370434 0036D374 90 19 00 00 */ stw r0, 0(r25)
/* 80370438 0036D378 3B A1 00 4C */ addi r29, r1, 0x4c
/* 8037043C 0036D37C 3B 81 00 24 */ addi r28, r1, 0x24
/* 80370440 0036D380 38 60 00 00 */ li r3, 0
/* 80370444 0036D384 48 00 01 70 */ b lbl_803705B4
lbl_80370448:
/* 80370448 0036D388 2C 1A 00 00 */ cmpwi r26, 0
/* 8037044C 0036D38C 41 82 00 AC */ beq lbl_803704F8
/* 80370450 0036D390 3C 60 80 3A */ lis r3, lbl_803A0004@ha
/* 80370454 0036D394 85 83 2B 98 */ lwzu r12, 0x2b98(r3)
/* 80370458 0036D398 67 C0 E0 03 */ oris r0, r30, 0xe003
/* 8037045C 0036D39C 81 63 00 04 */ lwz r11, lbl_803A0004@l(r3)
/* 80370460 0036D3A0 81 43 00 08 */ lwz r10, 8(r3)
/* 80370464 0036D3A4 81 23 00 0C */ lwz r9, 0xc(r3)
/* 80370468 0036D3A8 81 03 00 10 */ lwz r8, 0x10(r3)
/* 8037046C 0036D3AC 80 E3 00 14 */ lwz r7, 0x14(r3)
/* 80370470 0036D3B0 80 C3 00 18 */ lwz r6, 0x18(r3)
/* 80370474 0036D3B4 80 A3 00 1C */ lwz r5, 0x1c(r3)
/* 80370478 0036D3B8 80 83 00 20 */ lwz r4, 0x20(r3)
/* 8037047C 0036D3BC 80 63 00 24 */ lwz r3, 0x24(r3)
/* 80370480 0036D3C0 91 81 00 4C */ stw r12, 0x4c(r1)
/* 80370484 0036D3C4 91 61 00 50 */ stw r11, 0x50(r1)
/* 80370488 0036D3C8 91 41 00 54 */ stw r10, 0x54(r1)
/* 8037048C 0036D3CC 91 21 00 58 */ stw r9, 0x58(r1)
/* 80370490 0036D3D0 91 01 00 5C */ stw r8, 0x5c(r1)
/* 80370494 0036D3D4 90 E1 00 60 */ stw r7, 0x60(r1)
/* 80370498 0036D3D8 90 C1 00 64 */ stw r6, 0x64(r1)
/* 8037049C 0036D3DC 90 A1 00 68 */ stw r5, 0x68(r1)
/* 803704A0 0036D3E0 90 81 00 6C */ stw r4, 0x6c(r1)
/* 803704A4 0036D3E4 90 61 00 70 */ stw r3, 0x70(r1)
/* 803704A8 0036D3E8 41 82 00 08 */ beq lbl_803704B0
/* 803704AC 0036D3EC 67 C0 F0 03 */ oris r0, r30, 0xf003
lbl_803704B0:
/* 803704B0 0036D3F0 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 803704B4 0036D3F4 90 01 00 4C */ stw r0, 0x4c(r1)
/* 803704B8 0036D3F8 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 803704BC 0036D3FC 7F A3 EB 78 */ mr r3, r29
/* 803704C0 0036D400 90 01 00 70 */ stw r0, 0x70(r1)
/* 803704C4 0036D404 38 80 00 28 */ li r4, 0x28
/* 803704C8 0036D408 4B FF F0 81 */ bl func_8036F548
/* 803704CC 0036D40C 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 803704D0 0036D410 39 81 00 4C */ addi r12, r1, 0x4c
/* 803704D4 0036D414 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 803704D8 0036D418 38 61 00 0C */ addi r3, r1, 0xc
/* 803704DC 0036D41C 7D 89 03 A6 */ mtctr r12
/* 803704E0 0036D420 4E 80 04 21 */ bctrl
/* 803704E4 0036D424 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 803704E8 0036D428 7F 03 C3 78 */ mr r3, r24
/* 803704EC 0036D42C 80 C1 00 10 */ lwz r6, 0x10(r1)
/* 803704F0 0036D430 4B FF CF 01 */ bl func_8036D3F0
/* 803704F4 0036D434 48 00 00 AC */ b lbl_803705A0
lbl_803704F8:
/* 803704F8 0036D438 7F 03 C3 78 */ mr r3, r24
/* 803704FC 0036D43C 38 81 00 0C */ addi r4, r1, 0xc
/* 80370500 0036D440 4B FF CC A5 */ bl func_8036D1A4
/* 80370504 0036D444 3C 60 80 3A */ lis r3, lbl_803A0004@ha
/* 80370508 0036D448 85 83 2B 98 */ lwzu r12, 0x2b98(r3)
/* 8037050C 0036D44C 2C 1A 00 00 */ cmpwi r26, 0
/* 80370510 0036D450 67 C0 E0 03 */ oris r0, r30, 0xe003
/* 80370514 0036D454 81 63 00 04 */ lwz r11, lbl_803A0004@l(r3)
/* 80370518 0036D458 81 43 00 08 */ lwz r10, 8(r3)
/* 8037051C 0036D45C 81 23 00 0C */ lwz r9, 0xc(r3)
/* 80370520 0036D460 81 03 00 10 */ lwz r8, 0x10(r3)
/* 80370524 0036D464 80 E3 00 14 */ lwz r7, 0x14(r3)
/* 80370528 0036D468 80 C3 00 18 */ lwz r6, 0x18(r3)
/* 8037052C 0036D46C 80 A3 00 1C */ lwz r5, 0x1c(r3)
/* 80370530 0036D470 80 83 00 20 */ lwz r4, 0x20(r3)
/* 80370534 0036D474 80 63 00 24 */ lwz r3, 0x24(r3)
/* 80370538 0036D478 91 81 00 24 */ stw r12, 0x24(r1)
/* 8037053C 0036D47C 91 61 00 28 */ stw r11, 0x28(r1)
/* 80370540 0036D480 91 41 00 2C */ stw r10, 0x2c(r1)
/* 80370544 0036D484 91 21 00 30 */ stw r9, 0x30(r1)
/* 80370548 0036D488 91 01 00 34 */ stw r8, 0x34(r1)
/* 8037054C 0036D48C 90 E1 00 38 */ stw r7, 0x38(r1)
/* 80370550 0036D490 90 C1 00 3C */ stw r6, 0x3c(r1)
/* 80370554 0036D494 90 A1 00 40 */ stw r5, 0x40(r1)
/* 80370558 0036D498 90 81 00 44 */ stw r4, 0x44(r1)
/* 8037055C 0036D49C 90 61 00 48 */ stw r3, 0x48(r1)
/* 80370560 0036D4A0 41 82 00 08 */ beq lbl_80370568
/* 80370564 0036D4A4 67 C0 F0 03 */ oris r0, r30, 0xf003
lbl_80370568:
/* 80370568 0036D4A8 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 8037056C 0036D4AC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80370570 0036D4B0 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 80370574 0036D4B4 7F 83 E3 78 */ mr r3, r28
/* 80370578 0036D4B8 90 01 00 48 */ stw r0, 0x48(r1)
/* 8037057C 0036D4BC 38 80 00 28 */ li r4, 0x28
/* 80370580 0036D4C0 4B FF EF C9 */ bl func_8036F548
/* 80370584 0036D4C4 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 80370588 0036D4C8 39 81 00 24 */ addi r12, r1, 0x24
/* 8037058C 0036D4CC 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 80370590 0036D4D0 38 61 00 0C */ addi r3, r1, 0xc
/* 80370594 0036D4D4 7D 89 03 A6 */ mtctr r12
/* 80370598 0036D4D8 4E 80 04 21 */ bctrl
/* 8037059C 0036D4DC 38 60 00 00 */ li r3, 0
lbl_803705A0:
/* 803705A0 0036D4E0 80 99 00 00 */ lwz r4, 0(r25)
/* 803705A4 0036D4E4 3F DE 00 20 */ addis r30, r30, 0x20
/* 803705A8 0036D4E8 3B 7B 00 01 */ addi r27, r27, 1
/* 803705AC 0036D4EC 38 04 00 08 */ addi r0, r4, 8
/* 803705B0 0036D4F0 90 19 00 00 */ stw r0, 0(r25)
lbl_803705B4:
/* 803705B4 0036D4F4 7C 1B B8 40 */ cmplw r27, r23
/* 803705B8 0036D4F8 41 81 00 0C */ bgt lbl_803705C4
/* 803705BC 0036D4FC 2C 03 00 00 */ cmpwi r3, 0
/* 803705C0 0036D500 41 82 FE 88 */ beq lbl_80370448
lbl_803705C4:
/* 803705C4 0036D504 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 803705C8 0036D508 28 00 00 00 */ cmplwi r0, 0
/* 803705CC 0036D50C 41 82 00 10 */ beq lbl_803705DC
/* 803705D0 0036D510 38 00 00 00 */ li r0, 0
/* 803705D4 0036D514 38 60 07 02 */ li r3, 0x702
/* 803705D8 0036D518 90 19 00 00 */ stw r0, 0(r25)
lbl_803705DC:
/* 803705DC 0036D51C 3C 80 80 3D */ lis r4, lbl_803D3244@ha
/* 803705E0 0036D520 80 C1 00 14 */ lwz r6, 0x14(r1)
/* 803705E4 0036D524 38 E4 32 44 */ addi r7, r4, lbl_803D3244@l
/* 803705E8 0036D528 80 A1 00 18 */ lwz r5, 0x18(r1)
/* 803705EC 0036D52C 80 81 00 1C */ lwz r4, 0x1c(r1)
/* 803705F0 0036D530 80 01 00 20 */ lwz r0, 0x20(r1)
/* 803705F4 0036D534 90 C7 00 00 */ stw r6, 0(r7)
/* 803705F8 0036D538 90 A7 00 04 */ stw r5, 4(r7)
/* 803705FC 0036D53C 90 87 00 08 */ stw r4, 8(r7)
/* 80370600 0036D540 90 07 00 0C */ stw r0, 0xc(r7)
lbl_80370604:
/* 80370604 0036D544 BA 61 00 FC */ lmw r19, 0xfc(r1)
/* 80370608 0036D548 80 01 01 34 */ lwz r0, 0x134(r1)
/* 8037060C 0036D54C 7C 08 03 A6 */ mtlr r0
/* 80370610 0036D550 38 21 01 30 */ addi r1, r1, 0x130
/* 80370614 0036D554 4E 80 00 20 */ blr
.global func_80370618
func_80370618:
/* 80370618 0036D558 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8037061C 0036D55C 7C 08 02 A6 */ mflr r0
/* 80370620 0036D560 28 04 00 60 */ cmplwi r4, 0x60
/* 80370624 0036D564 90 01 00 24 */ stw r0, 0x24(r1)
/* 80370628 0036D568 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8037062C 0036D56C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80370630 0036D570 7C DE 33 78 */ mr r30, r6
/* 80370634 0036D574 40 81 00 0C */ ble lbl_80370640
/* 80370638 0036D578 38 60 07 01 */ li r3, 0x701
/* 8037063C 0036D57C 48 00 01 34 */ b lbl_80370770
lbl_80370640:
/* 80370640 0036D580 3C C0 80 3D */ lis r6, lbl_803D3244@ha
/* 80370644 0036D584 38 00 00 00 */ li r0, 0
/* 80370648 0036D588 3B E6 32 44 */ addi r31, r6, lbl_803D3244@l
/* 8037064C 0036D58C 7C 03 20 40 */ cmplw r3, r4
/* 80370650 0036D590 80 DF 00 0C */ lwz r6, 0xc(r31)
/* 80370654 0036D594 81 5F 00 00 */ lwz r10, 0(r31)
/* 80370658 0036D598 81 3F 00 04 */ lwz r9, 4(r31)
/* 8037065C 0036D59C 81 1F 00 08 */ lwz r8, 8(r31)
/* 80370660 0036D5A0 98 1F 00 0D */ stb r0, 0xd(r31)
/* 80370664 0036D5A4 91 41 00 08 */ stw r10, 8(r1)
/* 80370668 0036D5A8 91 21 00 0C */ stw r9, 0xc(r1)
/* 8037066C 0036D5AC 91 01 00 10 */ stw r8, 0x10(r1)
/* 80370670 0036D5B0 90 C1 00 14 */ stw r6, 0x14(r1)
/* 80370674 0036D5B4 90 1E 00 00 */ stw r0, 0(r30)
/* 80370678 0036D5B8 41 81 00 B8 */ bgt lbl_80370730
/* 8037067C 0036D5BC 7C 83 20 50 */ subf r4, r3, r4
/* 80370680 0036D5C0 3D 00 80 45 */ lis r8, lbl_8044F338@ha
/* 80370684 0036D5C4 38 04 00 01 */ addi r0, r4, 1
/* 80370688 0036D5C8 80 9E 00 00 */ lwz r4, 0(r30)
/* 8037068C 0036D5CC 54 06 10 3A */ slwi r6, r0, 2
/* 80370690 0036D5D0 2C 07 00 00 */ cmpwi r7, 0
/* 80370694 0036D5D4 7C 84 32 14 */ add r4, r4, r6
/* 80370698 0036D5D8 38 E8 F3 38 */ addi r7, r8, lbl_8044F338@l
/* 8037069C 0036D5DC 54 63 10 3A */ slwi r3, r3, 2
/* 803706A0 0036D5E0 90 9E 00 00 */ stw r4, 0(r30)
/* 803706A4 0036D5E4 7C 87 1A 14 */ add r4, r7, r3
/* 803706A8 0036D5E8 38 84 01 A8 */ addi r4, r4, 0x1a8
/* 803706AC 0036D5EC 41 82 00 14 */ beq lbl_803706C0
/* 803706B0 0036D5F0 7C A3 2B 78 */ mr r3, r5
/* 803706B4 0036D5F4 7C 05 03 78 */ mr r5, r0
/* 803706B8 0036D5F8 4B FF CB D5 */ bl func_8036D28C
/* 803706BC 0036D5FC 48 00 00 74 */ b lbl_80370730
lbl_803706C0:
/* 803706C0 0036D600 38 67 01 EC */ addi r3, r7, 0x1ec
/* 803706C4 0036D604 7C 04 18 40 */ cmplw r4, r3
/* 803706C8 0036D608 41 81 00 24 */ bgt lbl_803706EC
/* 803706CC 0036D60C 38 C6 FF FC */ addi r6, r6, -4
/* 803706D0 0036D610 38 67 01 E8 */ addi r3, r7, 0x1e8
/* 803706D4 0036D614 7C C4 32 14 */ add r6, r4, r6
/* 803706D8 0036D618 7C 06 18 40 */ cmplw r6, r3
/* 803706DC 0036D61C 41 80 00 10 */ blt lbl_803706EC
/* 803706E0 0036D620 3C 60 80 3D */ lis r3, lbl_803D3238@ha
/* 803706E4 0036D624 38 C0 00 01 */ li r6, 1
/* 803706E8 0036D628 98 C3 32 38 */ stb r6, lbl_803D3238@l(r3)
lbl_803706EC:
/* 803706EC 0036D62C 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 803706F0 0036D630 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 803706F4 0036D634 38 C3 02 78 */ addi r6, r3, 0x278
/* 803706F8 0036D638 7C 04 30 40 */ cmplw r4, r6
/* 803706FC 0036D63C 41 81 00 28 */ bgt lbl_80370724
/* 80370700 0036D640 54 03 10 3A */ slwi r3, r0, 2
/* 80370704 0036D644 38 63 FF FC */ addi r3, r3, -4
/* 80370708 0036D648 7C 64 1A 14 */ add r3, r4, r3
/* 8037070C 0036D64C 7C 03 30 40 */ cmplw r3, r6
/* 80370710 0036D650 41 80 00 14 */ blt lbl_80370724
/* 80370714 0036D654 3C 60 80 3D */ lis r3, lbl_803D3238@ha
/* 80370718 0036D658 38 C0 00 01 */ li r6, 1
/* 8037071C 0036D65C 38 63 32 38 */ addi r3, r3, lbl_803D3238@l
/* 80370720 0036D660 98 C3 00 01 */ stb r6, 1(r3)
lbl_80370724:
/* 80370724 0036D664 7C A3 2B 78 */ mr r3, r5
/* 80370728 0036D668 7C 05 03 78 */ mr r5, r0
/* 8037072C 0036D66C 4B FF C8 F1 */ bl func_8036D01C
lbl_80370730:
/* 80370730 0036D670 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 80370734 0036D674 28 00 00 00 */ cmplwi r0, 0
/* 80370738 0036D678 41 82 00 10 */ beq lbl_80370748
/* 8037073C 0036D67C 38 00 00 00 */ li r0, 0
/* 80370740 0036D680 38 60 07 02 */ li r3, 0x702
/* 80370744 0036D684 90 1E 00 00 */ stw r0, 0(r30)
lbl_80370748:
/* 80370748 0036D688 3C 80 80 3D */ lis r4, lbl_803D3244@ha
/* 8037074C 0036D68C 80 C1 00 08 */ lwz r6, 8(r1)
/* 80370750 0036D690 38 E4 32 44 */ addi r7, r4, lbl_803D3244@l
/* 80370754 0036D694 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80370758 0036D698 80 81 00 10 */ lwz r4, 0x10(r1)
/* 8037075C 0036D69C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80370760 0036D6A0 90 C7 00 00 */ stw r6, 0(r7)
/* 80370764 0036D6A4 90 A7 00 04 */ stw r5, 4(r7)
/* 80370768 0036D6A8 90 87 00 08 */ stw r4, 8(r7)
/* 8037076C 0036D6AC 90 07 00 0C */ stw r0, 0xc(r7)
lbl_80370770:
/* 80370770 0036D6B0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80370774 0036D6B4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80370778 0036D6B8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8037077C 0036D6BC 7C 08 03 A6 */ mtlr r0
/* 80370780 0036D6C0 38 21 00 20 */ addi r1, r1, 0x20
/* 80370784 0036D6C4 4E 80 00 20 */ blr
.global func_80370788
func_80370788:
/* 80370788 0036D6C8 94 21 FF 10 */ stwu r1, -0xf0(r1)
/* 8037078C 0036D6CC 7C 08 02 A6 */ mflr r0
/* 80370790 0036D6D0 90 01 00 F4 */ stw r0, 0xf4(r1)
/* 80370794 0036D6D4 BE 81 00 C0 */ stmw r20, 0xc0(r1)
/* 80370798 0036D6D8 7C 9C 23 78 */ mr r28, r4
/* 8037079C 0036D6DC 28 1C 00 21 */ cmplwi r28, 0x21
/* 803707A0 0036D6E0 7C 74 1B 78 */ mr r20, r3
/* 803707A4 0036D6E4 7C BD 2B 78 */ mr r29, r5
/* 803707A8 0036D6E8 7C DE 33 78 */ mr r30, r6
/* 803707AC 0036D6EC 7C FF 3B 78 */ mr r31, r7
/* 803707B0 0036D6F0 40 81 00 0C */ ble lbl_803707BC
/* 803707B4 0036D6F4 38 60 07 01 */ li r3, 0x701
/* 803707B8 0036D6F8 48 00 04 C8 */ b lbl_80370C80
lbl_803707BC:
/* 803707BC 0036D6FC 3C 60 80 3D */ lis r3, lbl_803D3244@ha
/* 803707C0 0036D700 38 00 00 00 */ li r0, 0
/* 803707C4 0036D704 3B 63 32 44 */ addi r27, r3, lbl_803D3244@l
/* 803707C8 0036D708 80 7B 00 0C */ lwz r3, 0xc(r27)
/* 803707CC 0036D70C 80 DB 00 00 */ lwz r6, 0(r27)
/* 803707D0 0036D710 80 BB 00 04 */ lwz r5, 4(r27)
/* 803707D4 0036D714 80 9B 00 08 */ lwz r4, 8(r27)
/* 803707D8 0036D718 90 C1 00 10 */ stw r6, 0x10(r1)
/* 803707DC 0036D71C 90 A1 00 14 */ stw r5, 0x14(r1)
/* 803707E0 0036D720 90 81 00 18 */ stw r4, 0x18(r1)
/* 803707E4 0036D724 90 61 00 1C */ stw r3, 0x1c(r1)
/* 803707E8 0036D728 98 1B 00 0D */ stb r0, 0xd(r27)
/* 803707EC 0036D72C 4B FF EE 4D */ bl func_8036F638
/* 803707F0 0036D730 60 63 20 00 */ ori r3, r3, 0x2000
/* 803707F4 0036D734 4B FF EE 4D */ bl func_8036F640
/* 803707F8 0036D738 38 00 00 00 */ li r0, 0
/* 803707FC 0036D73C 7E 95 A3 78 */ mr r21, r20
/* 80370800 0036D740 90 1E 00 00 */ stw r0, 0(r30)
/* 80370804 0036D744 56 9A A8 14 */ slwi r26, r20, 0x15
/* 80370808 0036D748 3B 21 00 98 */ addi r25, r1, 0x98
/* 8037080C 0036D74C 3B 01 00 48 */ addi r24, r1, 0x48
/* 80370810 0036D750 3A E1 00 70 */ addi r23, r1, 0x70
/* 80370814 0036D754 3A C1 00 20 */ addi r22, r1, 0x20
/* 80370818 0036D758 38 60 00 00 */ li r3, 0
/* 8037081C 0036D75C 48 00 04 14 */ b lbl_80370C30
lbl_80370820:
/* 80370820 0036D760 2C 1F 00 00 */ cmpwi r31, 0
/* 80370824 0036D764 41 82 01 FC */ beq lbl_80370A20
/* 80370828 0036D768 3C 60 80 3A */ lis r3, lbl_803A2BC0@ha
/* 8037082C 0036D76C 28 15 00 20 */ cmplwi r21, 0x20
/* 80370830 0036D770 39 83 2B C0 */ addi r12, r3, lbl_803A2BC0@l
/* 80370834 0036D774 81 6C 00 00 */ lwz r11, 0(r12)
/* 80370838 0036D778 81 4C 00 04 */ lwz r10, 4(r12)
/* 8037083C 0036D77C 81 2C 00 08 */ lwz r9, 8(r12)
/* 80370840 0036D780 81 0C 00 0C */ lwz r8, 0xc(r12)
/* 80370844 0036D784 80 EC 00 10 */ lwz r7, 0x10(r12)
/* 80370848 0036D788 80 CC 00 14 */ lwz r6, 0x14(r12)
/* 8037084C 0036D78C 80 AC 00 18 */ lwz r5, 0x18(r12)
/* 80370850 0036D790 80 8C 00 1C */ lwz r4, 0x1c(r12)
/* 80370854 0036D794 80 6C 00 20 */ lwz r3, 0x20(r12)
/* 80370858 0036D798 80 0C 00 24 */ lwz r0, 0x24(r12)
/* 8037085C 0036D79C 91 61 00 98 */ stw r11, 0x98(r1)
/* 80370860 0036D7A0 91 41 00 9C */ stw r10, 0x9c(r1)
/* 80370864 0036D7A4 91 21 00 A0 */ stw r9, 0xa0(r1)
/* 80370868 0036D7A8 91 01 00 A4 */ stw r8, 0xa4(r1)
/* 8037086C 0036D7AC 90 E1 00 A8 */ stw r7, 0xa8(r1)
/* 80370870 0036D7B0 90 C1 00 AC */ stw r6, 0xac(r1)
/* 80370874 0036D7B4 90 A1 00 B0 */ stw r5, 0xb0(r1)
/* 80370878 0036D7B8 90 81 00 B4 */ stw r4, 0xb4(r1)
/* 8037087C 0036D7BC 90 61 00 B8 */ stw r3, 0xb8(r1)
/* 80370880 0036D7C0 90 01 00 BC */ stw r0, 0xbc(r1)
/* 80370884 0036D7C4 40 80 00 4C */ bge lbl_803708D0
/* 80370888 0036D7C8 2C 1F 00 00 */ cmpwi r31, 0
/* 8037088C 0036D7CC 67 40 C8 03 */ oris r0, r26, 0xc803
/* 80370890 0036D7D0 41 82 00 08 */ beq lbl_80370898
/* 80370894 0036D7D4 67 40 D8 03 */ oris r0, r26, 0xd803
lbl_80370898:
/* 80370898 0036D7D8 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 8037089C 0036D7DC 90 01 00 98 */ stw r0, 0x98(r1)
/* 803708A0 0036D7E0 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 803708A4 0036D7E4 7F 23 CB 78 */ mr r3, r25
/* 803708A8 0036D7E8 90 01 00 BC */ stw r0, 0xbc(r1)
/* 803708AC 0036D7EC 38 80 00 28 */ li r4, 0x28
/* 803708B0 0036D7F0 4B FF EC 99 */ bl func_8036F548
/* 803708B4 0036D7F4 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 803708B8 0036D7F8 39 81 00 98 */ addi r12, r1, 0x98
/* 803708BC 0036D7FC 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 803708C0 0036D800 38 61 00 08 */ addi r3, r1, 8
/* 803708C4 0036D804 7D 89 03 A6 */ mtctr r12
/* 803708C8 0036D808 4E 80 04 21 */ bctrl
/* 803708CC 0036D80C 48 00 01 40 */ b lbl_80370A0C
lbl_803708D0:
/* 803708D0 0036D810 40 82 00 44 */ bne lbl_80370914
/* 803708D4 0036D814 2C 1F 00 00 */ cmpwi r31, 0
/* 803708D8 0036D818 41 82 00 10 */ beq lbl_803708E8
/* 803708DC 0036D81C 38 61 00 08 */ addi r3, r1, 8
/* 803708E0 0036D820 4B FF F0 ED */ bl func_8036F9CC
/* 803708E4 0036D824 48 00 00 0C */ b lbl_803708F0
lbl_803708E8:
/* 803708E8 0036D828 38 61 00 08 */ addi r3, r1, 8
/* 803708EC 0036D82C 4B FF F1 05 */ bl func_8036F9F0
lbl_803708F0:
/* 803708F0 0036D830 80 81 00 08 */ lwz r4, 8(r1)
/* 803708F4 0036D834 38 00 00 00 */ li r0, 0
/* 803708F8 0036D838 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 803708FC 0036D83C 38 60 FF FF */ li r3, -1
/* 80370900 0036D840 7C 80 00 38 */ and r0, r4, r0
/* 80370904 0036D844 7C A3 18 38 */ and r3, r5, r3
/* 80370908 0036D848 90 01 00 08 */ stw r0, 8(r1)
/* 8037090C 0036D84C 90 61 00 0C */ stw r3, 0xc(r1)
/* 80370910 0036D850 48 00 00 FC */ b lbl_80370A0C
lbl_80370914:
/* 80370914 0036D854 28 15 00 21 */ cmplwi r21, 0x21
/* 80370918 0036D858 40 82 00 F4 */ bne lbl_80370A0C
/* 8037091C 0036D85C 2C 1F 00 00 */ cmpwi r31, 0
/* 80370920 0036D860 40 82 00 0C */ bne lbl_8037092C
/* 80370924 0036D864 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80370928 0036D868 90 01 00 08 */ stw r0, 8(r1)
lbl_8037092C:
/* 8037092C 0036D86C 3C 60 80 3A */ lis r3, lbl_803A2B70@ha
/* 80370930 0036D870 2C 1F 00 00 */ cmpwi r31, 0
/* 80370934 0036D874 39 83 2B 70 */ addi r12, r3, lbl_803A2B70@l
/* 80370938 0036D878 81 6C 00 00 */ lwz r11, 0(r12)
/* 8037093C 0036D87C 81 4C 00 04 */ lwz r10, 4(r12)
/* 80370940 0036D880 81 2C 00 08 */ lwz r9, 8(r12)
/* 80370944 0036D884 81 0C 00 0C */ lwz r8, 0xc(r12)
/* 80370948 0036D888 80 EC 00 10 */ lwz r7, 0x10(r12)
/* 8037094C 0036D88C 80 CC 00 14 */ lwz r6, 0x14(r12)
/* 80370950 0036D890 80 AC 00 18 */ lwz r5, 0x18(r12)
/* 80370954 0036D894 80 8C 00 1C */ lwz r4, 0x1c(r12)
/* 80370958 0036D898 80 6C 00 20 */ lwz r3, 0x20(r12)
/* 8037095C 0036D89C 80 0C 00 24 */ lwz r0, 0x24(r12)
/* 80370960 0036D8A0 91 61 00 48 */ stw r11, 0x48(r1)
/* 80370964 0036D8A4 91 41 00 4C */ stw r10, 0x4c(r1)
/* 80370968 0036D8A8 91 21 00 50 */ stw r9, 0x50(r1)
/* 8037096C 0036D8AC 91 01 00 54 */ stw r8, 0x54(r1)
/* 80370970 0036D8B0 90 E1 00 58 */ stw r7, 0x58(r1)
/* 80370974 0036D8B4 90 C1 00 5C */ stw r6, 0x5c(r1)
/* 80370978 0036D8B8 90 A1 00 60 */ stw r5, 0x60(r1)
/* 8037097C 0036D8BC 90 81 00 64 */ stw r4, 0x64(r1)
/* 80370980 0036D8C0 90 61 00 68 */ stw r3, 0x68(r1)
/* 80370984 0036D8C4 90 01 00 6C */ stw r0, 0x6c(r1)
/* 80370988 0036D8C8 41 82 00 1C */ beq lbl_803709A4
/* 8037098C 0036D8CC 3C 60 7C 9F */ lis r3, 0x7C9EFAA6@ha
/* 80370990 0036D8D0 3C 00 90 83 */ lis r0, 0x9083
/* 80370994 0036D8D4 38 63 FA A6 */ addi r3, r3, 0x7C9EFAA6@l
/* 80370998 0036D8D8 90 01 00 4C */ stw r0, 0x4c(r1)
/* 8037099C 0036D8DC 90 61 00 48 */ stw r3, 0x48(r1)
/* 803709A0 0036D8E0 48 00 00 18 */ b lbl_803709B8
lbl_803709A4:
/* 803709A4 0036D8E4 3C 60 7C 9F */ lis r3, 0x7C9EFBA6@ha
/* 803709A8 0036D8E8 3C 80 80 83 */ lis r4, 0x8083
/* 803709AC 0036D8EC 38 03 FB A6 */ addi r0, r3, 0x7C9EFBA6@l
/* 803709B0 0036D8F0 90 81 00 48 */ stw r4, 0x48(r1)
/* 803709B4 0036D8F4 90 01 00 4C */ stw r0, 0x4c(r1)
lbl_803709B8:
/* 803709B8 0036D8F8 3C 80 4E 80 */ lis r4, 0x4E800020@ha
/* 803709BC 0036D8FC 7F 03 C3 78 */ mr r3, r24
/* 803709C0 0036D900 38 04 00 20 */ addi r0, r4, 0x4E800020@l
/* 803709C4 0036D904 38 80 00 28 */ li r4, 0x28
/* 803709C8 0036D908 90 01 00 6C */ stw r0, 0x6c(r1)
/* 803709CC 0036D90C 4B FF EB 7D */ bl func_8036F548
/* 803709D0 0036D910 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 803709D4 0036D914 39 81 00 48 */ addi r12, r1, 0x48
/* 803709D8 0036D918 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 803709DC 0036D91C 38 61 00 08 */ addi r3, r1, 8
/* 803709E0 0036D920 7D 89 03 A6 */ mtctr r12
/* 803709E4 0036D924 4E 80 04 21 */ bctrl
/* 803709E8 0036D928 2C 1F 00 00 */ cmpwi r31, 0
/* 803709EC 0036D92C 41 82 00 20 */ beq lbl_80370A0C
/* 803709F0 0036D930 80 61 00 08 */ lwz r3, 8(r1)
/* 803709F4 0036D934 38 80 00 00 */ li r4, 0
/* 803709F8 0036D938 38 00 FF FF */ li r0, -1
/* 803709FC 0036D93C 7C 63 00 38 */ and r3, r3, r0
/* 80370A00 0036D940 7C 80 20 38 */ and r0, r4, r4
/* 80370A04 0036D944 90 61 00 0C */ stw r3, 0xc(r1)
/* 80370A08 0036D948 90 01 00 08 */ stw r0, 8(r1)
lbl_80370A0C:
/* 80370A0C 0036D94C 80 A1 00 08 */ lwz r5, 8(r1)
/* 80370A10 0036D950 7F A3 EB 78 */ mr r3, r29
/* 80370A14 0036D954 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 80370A18 0036D958 4B FF C9 D9 */ bl func_8036D3F0
/* 80370A1C 0036D95C 48 00 02 00 */ b lbl_80370C1C
lbl_80370A20:
/* 80370A20 0036D960 7F A3 EB 78 */ mr r3, r29
/* 80370A24 0036D964 38 81 00 08 */ addi r4, r1, 8
/* 80370A28 0036D968 4B FF C7 7D */ bl func_8036D1A4
/* 80370A2C 0036D96C 3C 60 80 3A */ lis r3, lbl_803A2BC0@ha
/* 80370A30 0036D970 28 15 00 20 */ cmplwi r21, 0x20
/* 80370A34 0036D974 39 83 2B C0 */ addi r12, r3, lbl_803A2BC0@l
/* 80370A38 0036D978 3A 80 00 00 */ li r20, 0
/* 80370A3C 0036D97C 81 6C 00 00 */ lwz r11, 0(r12)
/* 80370A40 0036D980 81 4C 00 04 */ lwz r10, 4(r12)
/* 80370A44 0036D984 81 2C 00 08 */ lwz r9, 8(r12)
/* 80370A48 0036D988 81 0C 00 0C */ lwz r8, 0xc(r12)
/* 80370A4C 0036D98C 80 EC 00 10 */ lwz r7, 0x10(r12)
/* 80370A50 0036D990 80 CC 00 14 */ lwz r6, 0x14(r12)
/* 80370A54 0036D994 80 AC 00 18 */ lwz r5, 0x18(r12)
/* 80370A58 0036D998 80 8C 00 1C */ lwz r4, 0x1c(r12)
/* 80370A5C 0036D99C 80 6C 00 20 */ lwz r3, 0x20(r12)
/* 80370A60 0036D9A0 80 0C 00 24 */ lwz r0, 0x24(r12)
/* 80370A64 0036D9A4 91 61 00 70 */ stw r11, 0x70(r1)
/* 80370A68 0036D9A8 91 41 00 74 */ stw r10, 0x74(r1)
/* 80370A6C 0036D9AC 91 21 00 78 */ stw r9, 0x78(r1)
/* 80370A70 0036D9B0 91 01 00 7C */ stw r8, 0x7c(r1)
/* 80370A74 0036D9B4 90 E1 00 80 */ stw r7, 0x80(r1)
/* 80370A78 0036D9B8 90 C1 00 84 */ stw r6, 0x84(r1)
/* 80370A7C 0036D9BC 90 A1 00 88 */ stw r5, 0x88(r1)
/* 80370A80 0036D9C0 90 81 00 8C */ stw r4, 0x8c(r1)
/* 80370A84 0036D9C4 90 61 00 90 */ stw r3, 0x90(r1)
/* 80370A88 0036D9C8 90 01 00 94 */ stw r0, 0x94(r1)
/* 80370A8C 0036D9CC 40 80 00 50 */ bge lbl_80370ADC
/* 80370A90 0036D9D0 2C 1F 00 00 */ cmpwi r31, 0
/* 80370A94 0036D9D4 67 40 C8 03 */ oris r0, r26, 0xc803
/* 80370A98 0036D9D8 41 82 00 08 */ beq lbl_80370AA0
/* 80370A9C 0036D9DC 67 40 D8 03 */ oris r0, r26, 0xd803
lbl_80370AA0:
/* 80370AA0 0036D9E0 3C 60 4E 80 */ lis r3, 0x4E800020@ha
/* 80370AA4 0036D9E4 90 01 00 70 */ stw r0, 0x70(r1)
/* 80370AA8 0036D9E8 38 03 00 20 */ addi r0, r3, 0x4E800020@l
/* 80370AAC 0036D9EC 7E E3 BB 78 */ mr r3, r23
/* 80370AB0 0036D9F0 90 01 00 94 */ stw r0, 0x94(r1)
/* 80370AB4 0036D9F4 38 80 00 28 */ li r4, 0x28
/* 80370AB8 0036D9F8 4B FF EA 91 */ bl func_8036F548
/* 80370ABC 0036D9FC 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 80370AC0 0036DA00 39 81 00 70 */ addi r12, r1, 0x70
/* 80370AC4 0036DA04 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 80370AC8 0036DA08 38 61 00 08 */ addi r3, r1, 8
/* 80370ACC 0036DA0C 7D 89 03 A6 */ mtctr r12
/* 80370AD0 0036DA10 4E 80 04 21 */ bctrl
/* 80370AD4 0036DA14 3A 80 00 00 */ li r20, 0
/* 80370AD8 0036DA18 48 00 01 40 */ b lbl_80370C18
lbl_80370ADC:
/* 80370ADC 0036DA1C 40 82 00 44 */ bne lbl_80370B20
/* 80370AE0 0036DA20 2C 1F 00 00 */ cmpwi r31, 0
/* 80370AE4 0036DA24 41 82 00 10 */ beq lbl_80370AF4
/* 80370AE8 0036DA28 38 61 00 08 */ addi r3, r1, 8
/* 80370AEC 0036DA2C 4B FF EE E1 */ bl func_8036F9CC
/* 80370AF0 0036DA30 48 00 00 0C */ b lbl_80370AFC
lbl_80370AF4:
/* 80370AF4 0036DA34 38 61 00 08 */ addi r3, r1, 8
/* 80370AF8 0036DA38 4B FF EE F9 */ bl func_8036F9F0
lbl_80370AFC:
/* 80370AFC 0036DA3C 80 81 00 08 */ lwz r4, 8(r1)
/* 80370B00 0036DA40 38 00 00 00 */ li r0, 0
/* 80370B04 0036DA44 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80370B08 0036DA48 38 60 FF FF */ li r3, -1
/* 80370B0C 0036DA4C 7C 80 00 38 */ and r0, r4, r0
/* 80370B10 0036DA50 7C A3 18 38 */ and r3, r5, r3
/* 80370B14 0036DA54 90 01 00 08 */ stw r0, 8(r1)
/* 80370B18 0036DA58 90 61 00 0C */ stw r3, 0xc(r1)
/* 80370B1C 0036DA5C 48 00 00 FC */ b lbl_80370C18
lbl_80370B20:
/* 80370B20 0036DA60 28 15 00 21 */ cmplwi r21, 0x21
/* 80370B24 0036DA64 40 82 00 F4 */ bne lbl_80370C18
/* 80370B28 0036DA68 2C 1F 00 00 */ cmpwi r31, 0
/* 80370B2C 0036DA6C 40 82 00 0C */ bne lbl_80370B38
/* 80370B30 0036DA70 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80370B34 0036DA74 90 01 00 08 */ stw r0, 8(r1)
lbl_80370B38:
/* 80370B38 0036DA78 3C 60 80 3A */ lis r3, lbl_803A2B70@ha
/* 80370B3C 0036DA7C 2C 1F 00 00 */ cmpwi r31, 0
/* 80370B40 0036DA80 39 83 2B 70 */ addi r12, r3, lbl_803A2B70@l
/* 80370B44 0036DA84 81 6C 00 00 */ lwz r11, 0(r12)
/* 80370B48 0036DA88 81 4C 00 04 */ lwz r10, 4(r12)
/* 80370B4C 0036DA8C 81 2C 00 08 */ lwz r9, 8(r12)
/* 80370B50 0036DA90 81 0C 00 0C */ lwz r8, 0xc(r12)
/* 80370B54 0036DA94 80 EC 00 10 */ lwz r7, 0x10(r12)
/* 80370B58 0036DA98 80 CC 00 14 */ lwz r6, 0x14(r12)
/* 80370B5C 0036DA9C 80 AC 00 18 */ lwz r5, 0x18(r12)
/* 80370B60 0036DAA0 80 8C 00 1C */ lwz r4, 0x1c(r12)
/* 80370B64 0036DAA4 80 6C 00 20 */ lwz r3, 0x20(r12)
/* 80370B68 0036DAA8 80 0C 00 24 */ lwz r0, 0x24(r12)
/* 80370B6C 0036DAAC 91 61 00 20 */ stw r11, 0x20(r1)
/* 80370B70 0036DAB0 91 41 00 24 */ stw r10, 0x24(r1)
/* 80370B74 0036DAB4 91 21 00 28 */ stw r9, 0x28(r1)
/* 80370B78 0036DAB8 91 01 00 2C */ stw r8, 0x2c(r1)
/* 80370B7C 0036DABC 90 E1 00 30 */ stw r7, 0x30(r1)
/* 80370B80 0036DAC0 90 C1 00 34 */ stw r6, 0x34(r1)
/* 80370B84 0036DAC4 90 A1 00 38 */ stw r5, 0x38(r1)
/* 80370B88 0036DAC8 90 81 00 3C */ stw r4, 0x3c(r1)
/* 80370B8C 0036DACC 90 61 00 40 */ stw r3, 0x40(r1)
/* 80370B90 0036DAD0 90 01 00 44 */ stw r0, 0x44(r1)
/* 80370B94 0036DAD4 41 82 00 1C */ beq lbl_80370BB0
/* 80370B98 0036DAD8 3C 60 7C 9F */ lis r3, 0x7C9EFAA6@ha
/* 80370B9C 0036DADC 3C 00 90 83 */ lis r0, 0x9083
/* 80370BA0 0036DAE0 38 63 FA A6 */ addi r3, r3, 0x7C9EFAA6@l
/* 80370BA4 0036DAE4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80370BA8 0036DAE8 90 61 00 20 */ stw r3, 0x20(r1)
/* 80370BAC 0036DAEC 48 00 00 18 */ b lbl_80370BC4
lbl_80370BB0:
/* 80370BB0 0036DAF0 3C 60 7C 9F */ lis r3, 0x7C9EFBA6@ha
/* 80370BB4 0036DAF4 3C 80 80 83 */ lis r4, 0x8083
/* 80370BB8 0036DAF8 38 03 FB A6 */ addi r0, r3, 0x7C9EFBA6@l
/* 80370BBC 0036DAFC 90 81 00 20 */ stw r4, 0x20(r1)
/* 80370BC0 0036DB00 90 01 00 24 */ stw r0, 0x24(r1)
lbl_80370BC4:
/* 80370BC4 0036DB04 3C 80 4E 80 */ lis r4, 0x4E800020@ha
/* 80370BC8 0036DB08 7E C3 B3 78 */ mr r3, r22
/* 80370BCC 0036DB0C 38 04 00 20 */ addi r0, r4, 0x4E800020@l
/* 80370BD0 0036DB10 38 80 00 28 */ li r4, 0x28
/* 80370BD4 0036DB14 90 01 00 44 */ stw r0, 0x44(r1)
/* 80370BD8 0036DB18 4B FF E9 71 */ bl func_8036F548
/* 80370BDC 0036DB1C 3C 60 80 45 */ lis r3, lbl_8044F7FC@ha
/* 80370BE0 0036DB20 39 81 00 20 */ addi r12, r1, 0x20
/* 80370BE4 0036DB24 38 83 F7 FC */ addi r4, r3, lbl_8044F7FC@l
/* 80370BE8 0036DB28 38 61 00 08 */ addi r3, r1, 8
/* 80370BEC 0036DB2C 7D 89 03 A6 */ mtctr r12
/* 80370BF0 0036DB30 4E 80 04 21 */ bctrl
/* 80370BF4 0036DB34 2C 1F 00 00 */ cmpwi r31, 0
/* 80370BF8 0036DB38 3A 80 00 00 */ li r20, 0
/* 80370BFC 0036DB3C 41 82 00 1C */ beq lbl_80370C18
/* 80370C00 0036DB40 80 81 00 08 */ lwz r4, 8(r1)
/* 80370C04 0036DB44 38 60 FF FF */ li r3, -1
/* 80370C08 0036DB48 7E 80 A0 38 */ and r0, r20, r20
/* 80370C0C 0036DB4C 7C 83 18 38 */ and r3, r4, r3
/* 80370C10 0036DB50 90 01 00 08 */ stw r0, 8(r1)
/* 80370C14 0036DB54 90 61 00 0C */ stw r3, 0xc(r1)
lbl_80370C18:
/* 80370C18 0036DB58 7E 83 A3 78 */ mr r3, r20
lbl_80370C1C:
/* 80370C1C 0036DB5C 80 9E 00 00 */ lwz r4, 0(r30)
/* 80370C20 0036DB60 3F 5A 00 20 */ addis r26, r26, 0x20
/* 80370C24 0036DB64 3A B5 00 01 */ addi r21, r21, 1
/* 80370C28 0036DB68 38 04 00 08 */ addi r0, r4, 8
/* 80370C2C 0036DB6C 90 1E 00 00 */ stw r0, 0(r30)
lbl_80370C30:
/* 80370C30 0036DB70 7C 15 E0 40 */ cmplw r21, r28
/* 80370C34 0036DB74 41 81 00 0C */ bgt lbl_80370C40
/* 80370C38 0036DB78 2C 03 00 00 */ cmpwi r3, 0
/* 80370C3C 0036DB7C 41 82 FB E4 */ beq lbl_80370820
lbl_80370C40:
/* 80370C40 0036DB80 88 1B 00 0D */ lbz r0, 0xd(r27)
/* 80370C44 0036DB84 28 00 00 00 */ cmplwi r0, 0
/* 80370C48 0036DB88 41 82 00 10 */ beq lbl_80370C58
/* 80370C4C 0036DB8C 38 00 00 00 */ li r0, 0
/* 80370C50 0036DB90 38 60 07 02 */ li r3, 0x702
/* 80370C54 0036DB94 90 1E 00 00 */ stw r0, 0(r30)
lbl_80370C58:
/* 80370C58 0036DB98 3C 80 80 3D */ lis r4, lbl_803D3244@ha
/* 80370C5C 0036DB9C 80 C1 00 10 */ lwz r6, 0x10(r1)
/* 80370C60 0036DBA0 38 E4 32 44 */ addi r7, r4, lbl_803D3244@l
/* 80370C64 0036DBA4 80 A1 00 14 */ lwz r5, 0x14(r1)
/* 80370C68 0036DBA8 80 81 00 18 */ lwz r4, 0x18(r1)
/* 80370C6C 0036DBAC 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80370C70 0036DBB0 90 C7 00 00 */ stw r6, 0(r7)
/* 80370C74 0036DBB4 90 A7 00 04 */ stw r5, 4(r7)
/* 80370C78 0036DBB8 90 87 00 08 */ stw r4, 8(r7)
/* 80370C7C 0036DBBC 90 07 00 0C */ stw r0, 0xc(r7)
lbl_80370C80:
/* 80370C80 0036DBC0 BA 81 00 C0 */ lmw r20, 0xc0(r1)
/* 80370C84 0036DBC4 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 80370C88 0036DBC8 7C 08 03 A6 */ mtlr r0
/* 80370C8C 0036DBCC 38 21 00 F0 */ addi r1, r1, 0xf0
/* 80370C90 0036DBD0 4E 80 00 20 */ blr
.global func_80370C94
func_80370C94:
/* 80370C94 0036DBD4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80370C98 0036DBD8 7C 08 02 A6 */ mflr r0
/* 80370C9C 0036DBDC 28 04 00 24 */ cmplwi r4, 0x24
/* 80370CA0 0036DBE0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80370CA4 0036DBE4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80370CA8 0036DBE8 7C DF 33 78 */ mr r31, r6
/* 80370CAC 0036DBEC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80370CB0 0036DBF0 40 81 00 0C */ ble lbl_80370CBC
/* 80370CB4 0036DBF4 38 60 07 01 */ li r3, 0x701
/* 80370CB8 0036DBF8 48 00 00 B8 */ b lbl_80370D70
lbl_80370CBC:
/* 80370CBC 0036DBFC 3C C0 80 3D */ lis r6, lbl_803D3244@ha
/* 80370CC0 0036DC00 7C 83 20 50 */ subf r4, r3, r4
/* 80370CC4 0036DC04 3B C6 32 44 */ addi r30, r6, lbl_803D3244@l
/* 80370CC8 0036DC08 3C C0 80 45 */ lis r6, lbl_8044F338@ha
/* 80370CCC 0036DC0C 81 3E 00 0C */ lwz r9, 0xc(r30)
/* 80370CD0 0036DC10 39 00 00 00 */ li r8, 0
/* 80370CD4 0036DC14 39 84 00 01 */ addi r12, r4, 1
/* 80370CD8 0036DC18 81 7E 00 00 */ lwz r11, 0(r30)
/* 80370CDC 0036DC1C 81 5E 00 04 */ lwz r10, 4(r30)
/* 80370CE0 0036DC20 2C 07 00 00 */ cmpwi r7, 0
/* 80370CE4 0036DC24 80 FE 00 08 */ lwz r7, 8(r30)
/* 80370CE8 0036DC28 55 80 10 3A */ slwi r0, r12, 2
/* 80370CEC 0036DC2C 99 1E 00 0D */ stb r8, 0xd(r30)
/* 80370CF0 0036DC30 54 64 10 3A */ slwi r4, r3, 2
/* 80370CF4 0036DC34 38 66 F3 38 */ addi r3, r6, lbl_8044F338@l
/* 80370CF8 0036DC38 91 61 00 08 */ stw r11, 8(r1)
/* 80370CFC 0036DC3C 7C 83 22 14 */ add r4, r3, r4
/* 80370D00 0036DC40 91 41 00 0C */ stw r10, 0xc(r1)
/* 80370D04 0036DC44 90 E1 00 10 */ stw r7, 0x10(r1)
/* 80370D08 0036DC48 91 21 00 14 */ stw r9, 0x14(r1)
/* 80370D0C 0036DC4C 90 1F 00 00 */ stw r0, 0(r31)
/* 80370D10 0036DC50 41 82 00 14 */ beq lbl_80370D24
/* 80370D14 0036DC54 7C A3 2B 78 */ mr r3, r5
/* 80370D18 0036DC58 7D 85 63 78 */ mr r5, r12
/* 80370D1C 0036DC5C 4B FF C5 71 */ bl func_8036D28C
/* 80370D20 0036DC60 48 00 00 10 */ b lbl_80370D30
lbl_80370D24:
/* 80370D24 0036DC64 7C A3 2B 78 */ mr r3, r5
/* 80370D28 0036DC68 7D 85 63 78 */ mr r5, r12
/* 80370D2C 0036DC6C 4B FF C2 F1 */ bl func_8036D01C
lbl_80370D30:
/* 80370D30 0036DC70 88 1E 00 0D */ lbz r0, 0xd(r30)
/* 80370D34 0036DC74 28 00 00 00 */ cmplwi r0, 0
/* 80370D38 0036DC78 41 82 00 10 */ beq lbl_80370D48
/* 80370D3C 0036DC7C 38 00 00 00 */ li r0, 0
/* 80370D40 0036DC80 38 60 07 02 */ li r3, 0x702
/* 80370D44 0036DC84 90 1F 00 00 */ stw r0, 0(r31)
lbl_80370D48:
/* 80370D48 0036DC88 3C 80 80 3D */ lis r4, lbl_803D3244@ha
/* 80370D4C 0036DC8C 80 C1 00 08 */ lwz r6, 8(r1)
/* 80370D50 0036DC90 38 E4 32 44 */ addi r7, r4, lbl_803D3244@l
/* 80370D54 0036DC94 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80370D58 0036DC98 80 81 00 10 */ lwz r4, 0x10(r1)
/* 80370D5C 0036DC9C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80370D60 0036DCA0 90 C7 00 00 */ stw r6, 0(r7)
/* 80370D64 0036DCA4 90 A7 00 04 */ stw r5, 4(r7)
/* 80370D68 0036DCA8 90 87 00 08 */ stw r4, 8(r7)
/* 80370D6C 0036DCAC 90 07 00 0C */ stw r0, 0xc(r7)
lbl_80370D70:
/* 80370D70 0036DCB0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80370D74 0036DCB4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80370D78 0036DCB8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80370D7C 0036DCBC 7C 08 03 A6 */ mtlr r0
/* 80370D80 0036DCC0 38 21 00 20 */ addi r1, r1, 0x20
/* 80370D84 0036DCC4 4E 80 00 20 */ blr
.global func_80370D88
func_80370D88:
/* 80370D88 0036DCC8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80370D8C 0036DCCC 7C 08 02 A6 */ mflr r0
/* 80370D90 0036DCD0 38 C0 00 00 */ li r6, 0
/* 80370D94 0036DCD4 38 E0 00 01 */ li r7, 1
/* 80370D98 0036DCD8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80370D9C 0036DCDC 38 00 00 04 */ li r0, 4
/* 80370DA0 0036DCE0 38 A1 00 08 */ addi r5, r1, 8
/* 80370DA4 0036DCE4 90 01 00 08 */ stw r0, 8(r1)
/* 80370DA8 0036DCE8 48 00 00 2D */ bl func_80370DD4
/* 80370DAC 0036DCEC 2C 03 00 00 */ cmpwi r3, 0
/* 80370DB0 0036DCF0 40 82 00 14 */ bne lbl_80370DC4
/* 80370DB4 0036DCF4 80 01 00 08 */ lwz r0, 8(r1)
/* 80370DB8 0036DCF8 28 00 00 04 */ cmplwi r0, 4
/* 80370DBC 0036DCFC 41 82 00 08 */ beq lbl_80370DC4
/* 80370DC0 0036DD00 38 60 07 00 */ li r3, 0x700
lbl_80370DC4:
/* 80370DC4 0036DD04 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80370DC8 0036DD08 7C 08 03 A6 */ mtlr r0
/* 80370DCC 0036DD0C 38 21 00 10 */ addi r1, r1, 0x10
/* 80370DD0 0036DD10 4E 80 00 20 */ blr
.global func_80370DD4
func_80370DD4:
/* 80370DD4 0036DD14 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80370DD8 0036DD18 7C 08 02 A6 */ mflr r0
/* 80370DDC 0036DD1C 3C C0 80 3D */ lis r6, lbl_803D3244@ha
/* 80370DE0 0036DD20 90 01 00 44 */ stw r0, 0x44(r1)
/* 80370DE4 0036DD24 38 00 00 00 */ li r0, 0
/* 80370DE8 0036DD28 BF 21 00 24 */ stmw r25, 0x24(r1)
/* 80370DEC 0036DD2C 3B E6 32 44 */ addi r31, r6, lbl_803D3244@l
/* 80370DF0 0036DD30 7C 9B 23 78 */ mr r27, r4
/* 80370DF4 0036DD34 7C BC 2B 78 */ mr r28, r5
/* 80370DF8 0036DD38 7C 7A 1B 78 */ mr r26, r3
/* 80370DFC 0036DD3C 7C FD 3B 78 */ mr r29, r7
/* 80370E00 0036DD40 7F 63 DB 78 */ mr r3, r27
/* 80370E04 0036DD44 80 9F 00 0C */ lwz r4, 0xc(r31)
/* 80370E08 0036DD48 81 1F 00 00 */ lwz r8, 0(r31)
/* 80370E0C 0036DD4C 80 DF 00 04 */ lwz r6, 4(r31)
/* 80370E10 0036DD50 80 BF 00 08 */ lwz r5, 8(r31)
/* 80370E14 0036DD54 91 01 00 08 */ stw r8, 8(r1)
/* 80370E18 0036DD58 90 C1 00 0C */ stw r6, 0xc(r1)
/* 80370E1C 0036DD5C 90 A1 00 10 */ stw r5, 0x10(r1)
/* 80370E20 0036DD60 90 81 00 14 */ stw r4, 0x14(r1)
/* 80370E24 0036DD64 98 1F 00 0D */ stb r0, 0xd(r31)
/* 80370E28 0036DD68 48 00 0C FD */ bl func_80371B24
/* 80370E2C 0036DD6C 7F A0 00 34 */ cntlzw r0, r29
/* 80370E30 0036DD70 80 9C 00 00 */ lwz r4, 0(r28)
/* 80370E34 0036DD74 7C 79 1B 78 */ mr r25, r3
/* 80370E38 0036DD78 54 05 D9 7E */ srwi r5, r0, 5
/* 80370E3C 0036DD7C 48 00 00 E5 */ bl func_80370F20
/* 80370E40 0036DD80 7C 7E 1B 79 */ or. r30, r3, r3
/* 80370E44 0036DD84 41 82 00 10 */ beq lbl_80370E54
/* 80370E48 0036DD88 38 00 00 00 */ li r0, 0
/* 80370E4C 0036DD8C 90 1C 00 00 */ stw r0, 0(r28)
/* 80370E50 0036DD90 48 00 00 78 */ b lbl_80370EC8
lbl_80370E54:
/* 80370E54 0036DD94 4B FF E7 E5 */ bl func_8036F638
/* 80370E58 0036DD98 3C 80 80 45 */ lis r4, lbl_8044F338@ha
/* 80370E5C 0036DD9C 2C 1D 00 00 */ cmpwi r29, 0
/* 80370E60 0036DDA0 38 84 F3 38 */ addi r4, r4, lbl_8044F338@l
/* 80370E64 0036DDA4 7C 68 1B 78 */ mr r8, r3
/* 80370E68 0036DDA8 80 04 01 F8 */ lwz r0, 0x1f8(r4)
/* 80370E6C 0036DDAC 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b
/* 80370E70 0036DDB0 7D 07 03 78 */ or r7, r8, r0
/* 80370E74 0036DDB4 41 82 00 1C */ beq lbl_80370E90
/* 80370E78 0036DDB8 80 BC 00 00 */ lwz r5, 0(r28)
/* 80370E7C 0036DDBC 7F 43 D3 78 */ mr r3, r26
/* 80370E80 0036DDC0 7F 24 CB 78 */ mr r4, r25
/* 80370E84 0036DDC4 7D 06 43 78 */ mr r6, r8
/* 80370E88 0036DDC8 4B FF E7 C1 */ bl func_8036F648
/* 80370E8C 0036DDCC 48 00 00 3C */ b lbl_80370EC8
lbl_80370E90:
/* 80370E90 0036DDD0 80 BC 00 00 */ lwz r5, 0(r28)
/* 80370E94 0036DDD4 7F 23 CB 78 */ mr r3, r25
/* 80370E98 0036DDD8 7F 44 D3 78 */ mr r4, r26
/* 80370E9C 0036DDDC 7C E6 3B 78 */ mr r6, r7
/* 80370EA0 0036DDE0 7D 07 43 78 */ mr r7, r8
/* 80370EA4 0036DDE4 4B FF E7 A5 */ bl func_8036F648
/* 80370EA8 0036DDE8 80 9C 00 00 */ lwz r4, 0(r28)
/* 80370EAC 0036DDEC 7F 23 CB 78 */ mr r3, r25
/* 80370EB0 0036DDF0 4B FF E6 99 */ bl func_8036F548
/* 80370EB4 0036DDF4 7C 1B C8 40 */ cmplw r27, r25
/* 80370EB8 0036DDF8 41 82 00 10 */ beq lbl_80370EC8
/* 80370EBC 0036DDFC 80 9C 00 00 */ lwz r4, 0(r28)
/* 80370EC0 0036DE00 7F 63 DB 78 */ mr r3, r27
/* 80370EC4 0036DE04 4B FF E6 85 */ bl func_8036F548
lbl_80370EC8:
/* 80370EC8 0036DE08 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 80370ECC 0036DE0C 28 00 00 00 */ cmplwi r0, 0
/* 80370ED0 0036DE10 41 82 00 10 */ beq lbl_80370EE0
/* 80370ED4 0036DE14 38 00 00 00 */ li r0, 0
/* 80370ED8 0036DE18 3B C0 07 02 */ li r30, 0x702
/* 80370EDC 0036DE1C 90 1C 00 00 */ stw r0, 0(r28)
lbl_80370EE0:
/* 80370EE0 0036DE20 3C 60 80 3D */ lis r3, lbl_803D3244@ha
/* 80370EE4 0036DE24 80 C1 00 08 */ lwz r6, 8(r1)
/* 80370EE8 0036DE28 38 E3 32 44 */ addi r7, r3, lbl_803D3244@l
/* 80370EEC 0036DE2C 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80370EF0 0036DE30 80 81 00 10 */ lwz r4, 0x10(r1)
/* 80370EF4 0036DE34 7F C3 F3 78 */ mr r3, r30
/* 80370EF8 0036DE38 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80370EFC 0036DE3C 90 C7 00 00 */ stw r6, 0(r7)
/* 80370F00 0036DE40 90 A7 00 04 */ stw r5, 4(r7)
/* 80370F04 0036DE44 90 87 00 08 */ stw r4, 8(r7)
/* 80370F08 0036DE48 90 07 00 0C */ stw r0, 0xc(r7)
/* 80370F0C 0036DE4C BB 21 00 24 */ lmw r25, 0x24(r1)
/* 80370F10 0036DE50 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80370F14 0036DE54 7C 08 03 A6 */ mtlr r0
/* 80370F18 0036DE58 38 21 00 40 */ addi r1, r1, 0x40
/* 80370F1C 0036DE5C 4E 80 00 20 */ blr
.global func_80370F20
func_80370F20:
/* 80370F20 0036DE60 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80370F24 0036DE64 7C 08 02 A6 */ mflr r0
/* 80370F28 0036DE68 90 01 00 24 */ stw r0, 0x24(r1)
/* 80370F2C 0036DE6C BF 41 00 08 */ stmw r26, 8(r1)
/* 80370F30 0036DE70 7F 64 1A 14 */ add r27, r4, r3
/* 80370F34 0036DE74 3B 7B FF FF */ addi r27, r27, -1
/* 80370F38 0036DE78 7C BA 2B 78 */ mr r26, r5
/* 80370F3C 0036DE7C 7C 1B 18 40 */ cmplw r27, r3
/* 80370F40 0036DE80 38 A0 07 00 */ li r5, 0x700
/* 80370F44 0036DE84 40 80 00 0C */ bge lbl_80370F50
/* 80370F48 0036DE88 38 60 07 00 */ li r3, 0x700
/* 80370F4C 0036DE8C 48 00 02 64 */ b lbl_803711B0
lbl_80370F50:
/* 80370F50 0036DE90 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 80370F54 0036DE94 38 C0 00 00 */ li r6, 0
/* 80370F58 0036DE98 3B E4 2B 60 */ addi r31, r4, lbl_803A2B60@l
/* 80370F5C 0036DE9C 80 1F 00 04 */ lwz r0, 4(r31)
/* 80370F60 0036DEA0 7C 03 00 40 */ cmplw r3, r0
/* 80370F64 0036DEA4 41 81 02 48 */ bgt lbl_803711AC
/* 80370F68 0036DEA8 80 1F 00 00 */ lwz r0, 0(r31)
/* 80370F6C 0036DEAC 7C 1B 00 40 */ cmplw r27, r0
/* 80370F70 0036DEB0 41 80 02 3C */ blt lbl_803711AC
/* 80370F74 0036DEB4 2C 1A 00 00 */ cmpwi r26, 0
/* 80370F78 0036DEB8 40 82 00 18 */ bne lbl_80370F90
/* 80370F7C 0036DEBC 54 C0 20 36 */ slwi r0, r6, 4
/* 80370F80 0036DEC0 7C 9F 02 14 */ add r4, r31, r0
/* 80370F84 0036DEC4 80 04 00 08 */ lwz r0, 8(r4)
/* 80370F88 0036DEC8 2C 00 00 00 */ cmpwi r0, 0
/* 80370F8C 0036DECC 41 82 00 28 */ beq lbl_80370FB4
lbl_80370F90:
/* 80370F90 0036DED0 2C 1A 00 01 */ cmpwi r26, 1
/* 80370F94 0036DED4 40 82 00 28 */ bne lbl_80370FBC
/* 80370F98 0036DED8 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 80370F9C 0036DEDC 54 C0 20 36 */ slwi r0, r6, 4
/* 80370FA0 0036DEE0 38 84 2B 60 */ addi r4, r4, lbl_803A2B60@l
/* 80370FA4 0036DEE4 7C 84 02 14 */ add r4, r4, r0
/* 80370FA8 0036DEE8 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80370FAC 0036DEEC 2C 00 00 00 */ cmpwi r0, 0
/* 80370FB0 0036DEF0 40 82 00 0C */ bne lbl_80370FBC
lbl_80370FB4:
/* 80370FB4 0036DEF4 38 A0 07 00 */ li r5, 0x700
/* 80370FB8 0036DEF8 48 00 01 F4 */ b lbl_803711AC
lbl_80370FBC:
/* 80370FBC 0036DEFC 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 80370FC0 0036DF00 54 DD 20 36 */ slwi r29, r6, 4
/* 80370FC4 0036DF04 38 84 2B 60 */ addi r4, r4, lbl_803A2B60@l
/* 80370FC8 0036DF08 38 A0 00 00 */ li r5, 0
/* 80370FCC 0036DF0C 7C 04 E8 2E */ lwzx r0, r4, r29
/* 80370FD0 0036DF10 7C 03 00 40 */ cmplw r3, r0
/* 80370FD4 0036DF14 40 80 00 E4 */ bge lbl_803710B8
/* 80370FD8 0036DF18 7C 03 00 50 */ subf r0, r3, r0
/* 80370FDC 0036DF1C 38 C0 07 00 */ li r6, 0x700
/* 80370FE0 0036DF20 7F C0 1A 14 */ add r30, r0, r3
/* 80370FE4 0036DF24 3B DE FF FF */ addi r30, r30, -1
/* 80370FE8 0036DF28 7C 1E 18 40 */ cmplw r30, r3
/* 80370FEC 0036DF2C 40 80 00 08 */ bge lbl_80370FF4
/* 80370FF0 0036DF30 48 00 00 C4 */ b lbl_803710B4
lbl_80370FF4:
/* 80370FF4 0036DF34 80 1F 00 04 */ lwz r0, 4(r31)
/* 80370FF8 0036DF38 38 A0 00 00 */ li r5, 0
/* 80370FFC 0036DF3C 7C 03 00 40 */ cmplw r3, r0
/* 80371000 0036DF40 41 81 00 B4 */ bgt lbl_803710B4
/* 80371004 0036DF44 80 1F 00 00 */ lwz r0, 0(r31)
/* 80371008 0036DF48 7C 1E 00 40 */ cmplw r30, r0
/* 8037100C 0036DF4C 41 80 00 A8 */ blt lbl_803710B4
/* 80371010 0036DF50 2C 1A 00 00 */ cmpwi r26, 0
/* 80371014 0036DF54 40 82 00 18 */ bne lbl_8037102C
/* 80371018 0036DF58 54 A0 20 36 */ slwi r0, r5, 4
/* 8037101C 0036DF5C 7C 84 02 14 */ add r4, r4, r0
/* 80371020 0036DF60 80 04 00 08 */ lwz r0, 8(r4)
/* 80371024 0036DF64 2C 00 00 00 */ cmpwi r0, 0
/* 80371028 0036DF68 41 82 00 28 */ beq lbl_80371050
lbl_8037102C:
/* 8037102C 0036DF6C 2C 1A 00 01 */ cmpwi r26, 1
/* 80371030 0036DF70 40 82 00 28 */ bne lbl_80371058
/* 80371034 0036DF74 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 80371038 0036DF78 54 A0 20 36 */ slwi r0, r5, 4
/* 8037103C 0036DF7C 38 84 2B 60 */ addi r4, r4, lbl_803A2B60@l
/* 80371040 0036DF80 7C 84 02 14 */ add r4, r4, r0
/* 80371044 0036DF84 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80371048 0036DF88 2C 00 00 00 */ cmpwi r0, 0
/* 8037104C 0036DF8C 40 82 00 0C */ bne lbl_80371058
lbl_80371050:
/* 80371050 0036DF90 38 C0 07 00 */ li r6, 0x700
/* 80371054 0036DF94 48 00 00 60 */ b lbl_803710B4
lbl_80371058:
/* 80371058 0036DF98 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 8037105C 0036DF9C 54 BC 20 36 */ slwi r28, r5, 4
/* 80371060 0036DFA0 38 84 2B 60 */ addi r4, r4, lbl_803A2B60@l
/* 80371064 0036DFA4 38 C0 00 00 */ li r6, 0
/* 80371068 0036DFA8 7C 04 E0 2E */ lwzx r0, r4, r28
/* 8037106C 0036DFAC 7C 03 00 40 */ cmplw r3, r0
/* 80371070 0036DFB0 40 80 00 14 */ bge lbl_80371084
/* 80371074 0036DFB4 7F 45 D3 78 */ mr r5, r26
/* 80371078 0036DFB8 7C 83 00 50 */ subf r4, r3, r0
/* 8037107C 0036DFBC 4B FF FE A5 */ bl func_80370F20
/* 80371080 0036DFC0 7C 66 1B 78 */ mr r6, r3
lbl_80371084:
/* 80371084 0036DFC4 2C 06 00 00 */ cmpwi r6, 0
/* 80371088 0036DFC8 40 82 00 2C */ bne lbl_803710B4
/* 8037108C 0036DFCC 3C 60 80 3A */ lis r3, lbl_803A2B60@ha
/* 80371090 0036DFD0 38 03 2B 60 */ addi r0, r3, lbl_803A2B60@l
/* 80371094 0036DFD4 7C 60 E2 14 */ add r3, r0, r28
/* 80371098 0036DFD8 80 63 00 04 */ lwz r3, 4(r3)
/* 8037109C 0036DFDC 7C 1E 18 40 */ cmplw r30, r3
/* 803710A0 0036DFE0 40 81 00 14 */ ble lbl_803710B4
/* 803710A4 0036DFE4 7F 45 D3 78 */ mr r5, r26
/* 803710A8 0036DFE8 7C 83 F0 50 */ subf r4, r3, r30
/* 803710AC 0036DFEC 4B FF FE 75 */ bl func_80370F20
/* 803710B0 0036DFF0 7C 66 1B 78 */ mr r6, r3
lbl_803710B4:
/* 803710B4 0036DFF4 7C C5 33 78 */ mr r5, r6
lbl_803710B8:
/* 803710B8 0036DFF8 2C 05 00 00 */ cmpwi r5, 0
/* 803710BC 0036DFFC 40 82 00 F0 */ bne lbl_803711AC
/* 803710C0 0036E000 3C 60 80 3A */ lis r3, lbl_803A2B60@ha
/* 803710C4 0036E004 38 83 2B 60 */ addi r4, r3, lbl_803A2B60@l
/* 803710C8 0036E008 3B 84 00 04 */ addi r28, r4, 4
/* 803710CC 0036E00C 7C 7C E8 2E */ lwzx r3, r28, r29
/* 803710D0 0036E010 7C 1B 18 40 */ cmplw r27, r3
/* 803710D4 0036E014 40 81 00 D8 */ ble lbl_803711AC
/* 803710D8 0036E018 7C 03 D8 50 */ subf r0, r3, r27
/* 803710DC 0036E01C 38 C0 07 00 */ li r6, 0x700
/* 803710E0 0036E020 7F C0 1A 14 */ add r30, r0, r3
/* 803710E4 0036E024 3B DE FF FF */ addi r30, r30, -1
/* 803710E8 0036E028 7C 1E 18 40 */ cmplw r30, r3
/* 803710EC 0036E02C 40 80 00 08 */ bge lbl_803710F4
/* 803710F0 0036E030 48 00 00 B8 */ b lbl_803711A8
lbl_803710F4:
/* 803710F4 0036E034 80 1F 00 04 */ lwz r0, 4(r31)
/* 803710F8 0036E038 38 A0 00 00 */ li r5, 0
/* 803710FC 0036E03C 7C 03 00 40 */ cmplw r3, r0
/* 80371100 0036E040 41 81 00 A8 */ bgt lbl_803711A8
/* 80371104 0036E044 80 1F 00 00 */ lwz r0, 0(r31)
/* 80371108 0036E048 7C 1E 00 40 */ cmplw r30, r0
/* 8037110C 0036E04C 41 80 00 9C */ blt lbl_803711A8
/* 80371110 0036E050 2C 1A 00 00 */ cmpwi r26, 0
/* 80371114 0036E054 40 82 00 18 */ bne lbl_8037112C
/* 80371118 0036E058 54 A0 20 36 */ slwi r0, r5, 4
/* 8037111C 0036E05C 7C 84 02 14 */ add r4, r4, r0
/* 80371120 0036E060 80 04 00 08 */ lwz r0, 8(r4)
/* 80371124 0036E064 2C 00 00 00 */ cmpwi r0, 0
/* 80371128 0036E068 41 82 00 28 */ beq lbl_80371150
lbl_8037112C:
/* 8037112C 0036E06C 2C 1A 00 01 */ cmpwi r26, 1
/* 80371130 0036E070 40 82 00 28 */ bne lbl_80371158
/* 80371134 0036E074 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 80371138 0036E078 54 A0 20 36 */ slwi r0, r5, 4
/* 8037113C 0036E07C 38 84 2B 60 */ addi r4, r4, lbl_803A2B60@l
/* 80371140 0036E080 7C 84 02 14 */ add r4, r4, r0
/* 80371144 0036E084 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80371148 0036E088 2C 00 00 00 */ cmpwi r0, 0
/* 8037114C 0036E08C 40 82 00 0C */ bne lbl_80371158
lbl_80371150:
/* 80371150 0036E090 38 C0 07 00 */ li r6, 0x700
/* 80371154 0036E094 48 00 00 54 */ b lbl_803711A8
lbl_80371158:
/* 80371158 0036E098 3C 80 80 3A */ lis r4, lbl_803A2B60@ha
/* 8037115C 0036E09C 54 BB 20 36 */ slwi r27, r5, 4
/* 80371160 0036E0A0 38 84 2B 60 */ addi r4, r4, lbl_803A2B60@l
/* 80371164 0036E0A4 38 C0 00 00 */ li r6, 0
/* 80371168 0036E0A8 7C 04 D8 2E */ lwzx r0, r4, r27
/* 8037116C 0036E0AC 7C 03 00 40 */ cmplw r3, r0
/* 80371170 0036E0B0 40 80 00 14 */ bge lbl_80371184
/* 80371174 0036E0B4 7F 45 D3 78 */ mr r5, r26
/* 80371178 0036E0B8 7C 83 00 50 */ subf r4, r3, r0
/* 8037117C 0036E0BC 4B FF FD A5 */ bl func_80370F20
/* 80371180 0036E0C0 7C 66 1B 78 */ mr r6, r3
lbl_80371184:
/* 80371184 0036E0C4 2C 06 00 00 */ cmpwi r6, 0
/* 80371188 0036E0C8 40 82 00 20 */ bne lbl_803711A8
/* 8037118C 0036E0CC 7C 7C D8 2E */ lwzx r3, r28, r27
/* 80371190 0036E0D0 7C 1E 18 40 */ cmplw r30, r3
/* 80371194 0036E0D4 40 81 00 14 */ ble lbl_803711A8
/* 80371198 0036E0D8 7F 45 D3 78 */ mr r5, r26
/* 8037119C 0036E0DC 7C 83 F0 50 */ subf r4, r3, r30
/* 803711A0 0036E0E0 4B FF FD 81 */ bl func_80370F20
/* 803711A4 0036E0E4 7C 66 1B 78 */ mr r6, r3
lbl_803711A8:
/* 803711A8 0036E0E8 7C C5 33 78 */ mr r5, r6
lbl_803711AC:
/* 803711AC 0036E0EC 7C A3 2B 78 */ mr r3, r5
lbl_803711B0:
/* 803711B0 0036E0F0 BB 41 00 08 */ lmw r26, 8(r1)
/* 803711B4 0036E0F4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803711B8 0036E0F8 7C 08 03 A6 */ mtlr r0
/* 803711BC 0036E0FC 38 21 00 20 */ addi r1, r1, 0x20
/* 803711C0 0036E100 4E 80 00 20 */ blr
/* 803711C4 0036E104 00 00 00 00 */ .4byte 0x00000000 /* unknown instruction */
/* 803711C8 0036E108 00 00 00 00 */ .4byte 0x00000000 /* unknown instruction */
/* 803711CC 0036E10C 00 00 00 00 */ .4byte 0x00000000 /* unknown instruction */
.global func_803711D0
func_803711D0:
/* 803711D0 0036E110 0F E0 00 00 */ twui r0, 0
/* 803711D4 0036E114 4E 80 00 20 */ blr
/* 803711D8 0036E118 0F E0 00 00 */ twui r0, 0
/* 803711DC 0036E11C 4E 80 00 20 */ blr
/* 803711E0 0036E120 0F E0 00 00 */ twui r0, 0
/* 803711E4 0036E124 4E 80 00 20 */ blr
/* 803711E8 0036E128 0F E0 00 00 */ twui r0, 0
/* 803711EC 0036E12C 4E 80 00 20 */ blr
.global func_803711F0
func_803711F0:
/* 803711F0 0036E130 3C 40 80 44 */ lis r2, lbl_8044F338@h
/* 803711F4 0036E134 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
/* 803711F8 0036E138 7E 00 04 A6 */ mfsr r16, 0
/* 803711FC 0036E13C 7E 21 04 A6 */ mfsr r17, 1
/* 80371200 0036E140 7E 42 04 A6 */ mfsr r18, 2
/* 80371204 0036E144 7E 63 04 A6 */ mfsr r19, 3
/* 80371208 0036E148 7E 84 04 A6 */ mfsr r20, 4
/* 8037120C 0036E14C 7E A5 04 A6 */ mfsr r21, 5
/* 80371210 0036E150 7E C6 04 A6 */ mfsr r22, 6
/* 80371214 0036E154 7E E7 04 A6 */ mfsr r23, 7
/* 80371218 0036E158 7F 08 04 A6 */ mfsr r24, 8
/* 8037121C 0036E15C 7F 29 04 A6 */ mfsr r25, 9
/* 80371220 0036E160 7F 4A 04 A6 */ mfsr r26, 0xa
/* 80371224 0036E164 7F 6B 04 A6 */ mfsr r27, 0xb
/* 80371228 0036E168 7F 8C 04 A6 */ mfsr r28, 0xc
/* 8037122C 0036E16C 7F AD 04 A6 */ mfsr r29, 0xd
/* 80371230 0036E170 7F CE 04 A6 */ mfsr r30, 0xe
/* 80371234 0036E174 7F EF 04 A6 */ mfsr r31, 0xf
/* 80371238 0036E178 BE 02 01 A8 */ stmw r16, 0x1a8(r2)
/* 8037123C 0036E17C 7D 4C 42 E6 */ mftb r10, 0x10c
/* 80371240 0036E180 7D 6D 42 E6 */ mftbu r11
/* 80371244 0036E184 7D 90 FA A6 */ mfspr r12, 0x3f0
/* 80371248 0036E188 7D B1 FA A6 */ mfspr r13, 0x3f1
/* 8037124C 0036E18C 7D DB 02 A6 */ mfspr r14, 0x1b
/* 80371250 0036E190 7D FF 42 A6 */ mfpvr r15
/* 80371254 0036E194 7E 10 82 A6 */ mfibatu r16, 0
/* 80371258 0036E198 7E 31 82 A6 */ mfibatl r17, 0
/* 8037125C 0036E19C 7E 52 82 A6 */ mfibatu r18, 1
/* 80371260 0036E1A0 7E 73 82 A6 */ mfibatl r19, 1
/* 80371264 0036E1A4 7E 94 82 A6 */ mfibatu r20, 2
/* 80371268 0036E1A8 7E B5 82 A6 */ mfibatl r21, 2
/* 8037126C 0036E1AC 7E D6 82 A6 */ mfibatu r22, 3
/* 80371270 0036E1B0 7E F7 82 A6 */ mfibatl r23, 3
/* 80371274 0036E1B4 7F 18 82 A6 */ mfdbatu r24, 0
/* 80371278 0036E1B8 7F 39 82 A6 */ mfdbatl r25, 0
/* 8037127C 0036E1BC 7F 5A 82 A6 */ mfdbatu r26, 1
/* 80371280 0036E1C0 7F 7B 82 A6 */ mfdbatl r27, 1
/* 80371284 0036E1C4 7F 9C 82 A6 */ mfdbatu r28, 2
/* 80371288 0036E1C8 7F BD 82 A6 */ mfdbatl r29, 2
/* 8037128C 0036E1CC 7F DE 82 A6 */ mfdbatu r30, 3
/* 80371290 0036E1D0 7F FF 82 A6 */ mfdbatl r31, 3
/* 80371294 0036E1D4 BD 42 01 E8 */ stmw r10, 0x1e8(r2)
/* 80371298 0036E1D8 7E D9 02 A6 */ mfspr r22, 0x19
/* 8037129C 0036E1DC 7E F3 02 A6 */ mfdar r23
/* 803712A0 0036E1E0 7F 12 02 A6 */ mfdsisr r24
/* 803712A4 0036E1E4 7F 30 42 A6 */ mfspr r25, 0x110
/* 803712A8 0036E1E8 7F 51 42 A6 */ mfspr r26, 0x111
/* 803712AC 0036E1EC 7F 72 42 A6 */ mfspr r27, 0x112
/* 803712B0 0036E1F0 7F 93 42 A6 */ mfspr r28, 0x113
/* 803712B4 0036E1F4 3B A0 00 00 */ li r29, 0
/* 803712B8 0036E1F8 7F D2 FA A6 */ mfspr r30, 0x3f2
/* 803712BC 0036E1FC 7F FA 42 A6 */ mfspr r31, 0x11a
/* 803712C0 0036E200 BE C2 02 5C */ stmw r22, 0x25c(r2)
/* 803712C4 0036E204 7E 90 E2 A6 */ mfspr r20, 0x390
/* 803712C8 0036E208 7E B1 E2 A6 */ mfspr r21, 0x391
/* 803712CC 0036E20C 7E D2 E2 A6 */ mfspr r22, 0x392
/* 803712D0 0036E210 7E F3 E2 A6 */ mfspr r23, 0x393
/* 803712D4 0036E214 7F 14 E2 A6 */ mfspr r24, 0x394
/* 803712D8 0036E218 7F 35 E2 A6 */ mfspr r25, 0x395
/* 803712DC 0036E21C 7F 56 E2 A6 */ mfspr r26, 0x396
/* 803712E0 0036E220 7F 77 E2 A6 */ mfspr r27, 0x397
/* 803712E4 0036E224 7F 98 E2 A6 */ mfspr r28, 0x398
/* 803712E8 0036E228 7F B9 E2 A6 */ mfspr r29, 0x399
/* 803712EC 0036E22C 7F DA E2 A6 */ mfspr r30, 0x39a
/* 803712F0 0036E230 7F FB E2 A6 */ mfspr r31, 0x39b
/* 803712F4 0036E234 BE 82 02 FC */ stmw r20, 0x2fc(r2)
/* 803712F8 0036E238 48 00 00 48 */ b lbl_80371340
/* 803712FC 0036E23C 7E 00 EA A6 */ mfspr r16, 0x3a0
/* 80371300 0036E240 7E 27 EA A6 */ mfspr r17, 0x3a7
/* 80371304 0036E244 7E 48 EA A6 */ mfspr r18, 0x3a8
/* 80371308 0036E248 7E 69 EA A6 */ mfspr r19, 0x3a9
/* 8037130C 0036E24C 7E 8A EA A6 */ mfspr r20, 0x3aa
/* 80371310 0036E250 7E AB EA A6 */ mfspr r21, 0x3ab
/* 80371314 0036E254 7E CC EA A6 */ mfspr r22, 0x3ac
/* 80371318 0036E258 7E ED EA A6 */ mfspr r23, 0x3ad
/* 8037131C 0036E25C 7F 0E EA A6 */ mfspr r24, 0x3ae
/* 80371320 0036E260 7F 2F EA A6 */ mfspr r25, 0x3af
/* 80371324 0036E264 7F 50 EA A6 */ mfspr r26, 0x3b0
/* 80371328 0036E268 7F 77 EA A6 */ mfspr r27, 0x3b7
/* 8037132C 0036E26C 7F 9F EA A6 */ mfspr r28, 0x3bf
/* 80371330 0036E270 7F B6 FA A6 */ mfspr r29, 0x3f6
/* 80371334 0036E274 7F D7 FA A6 */ mfspr r30, 0x3f7
/* 80371338 0036E278 7F FF FA A6 */ mfspr r31, 0x3ff
/* 8037133C 0036E27C BE 02 02 B8 */ stmw r16, 0x2b8(r2)
lbl_80371340:
/* 80371340 0036E280 7E 75 FA A6 */ mfspr r19, 0x3f5
/* 80371344 0036E284 7E 99 EA A6 */ mfspr r20, 0x3b9
/* 80371348 0036E288 7E BA EA A6 */ mfspr r21, 0x3ba
/* 8037134C 0036E28C 7E DD EA A6 */ mfspr r22, 0x3bd
/* 80371350 0036E290 7E FE EA A6 */ mfspr r23, 0x3be
/* 80371354 0036E294 7F 1B EA A6 */ mfspr r24, 0x3bb
/* 80371358 0036E298 7F 38 EA A6 */ mfspr r25, 0x3b8
/* 8037135C 0036E29C 7F 5C EA A6 */ mfspr r26, 0x3bc
/* 80371360 0036E2A0 7F 7C FA A6 */ mfspr r27, 0x3fc
/* 80371364 0036E2A4 7F 9D FA A6 */ mfspr r28, 0x3fd
/* 80371368 0036E2A8 7F BE FA A6 */ mfspr r29, 0x3fe
/* 8037136C 0036E2AC 7F DB FA A6 */ mfspr r30, 0x3FB
/* 80371370 0036E2B0 7F F9 FA A6 */ mfspr r31, 0x3f9
/* 80371374 0036E2B4 BE 62 02 84 */ stmw r19, 0x284(r2)
/* 80371378 0036E2B8 4E 80 00 20 */ blr
/* 8037137C 0036E2BC 7F 30 F2 A6 */ mfspr r25, 0x3d0
/* 80371380 0036E2C0 7F 51 F2 A6 */ mfspr r26, 0x3d1
/* 80371384 0036E2C4 7F 72 F2 A6 */ mfspr r27, 0x3d2
/* 80371388 0036E2C8 7F 93 F2 A6 */ mfspr r28, 0x3d3
/* 8037138C 0036E2CC 7F B4 F2 A6 */ mfspr r29, 0x3D4
/* 80371390 0036E2D0 7F D5 F2 A6 */ mfspr r30, 0x3D5
/* 80371394 0036E2D4 7F F6 F2 A6 */ mfspr r31, 0x3d6
/* 80371398 0036E2D8 BF 22 02 40 */ stmw r25, 0x240(r2)
/* 8037139C 0036E2DC 7F F6 02 A6 */ mfspr r31, 0x16
/* 803713A0 0036E2E0 93 E2 02 78 */ stw r31, 0x278(r2)
/* 803713A4 0036E2E4 4E 80 00 20 */ blr
.global func_803713A8
func_803713A8:
/* 803713A8 0036E2E8 3C 40 80 44 */ lis r2, lbl_8044F338@h
/* 803713AC 0036E2EC 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
/* 803713B0 0036E2F0 3C A0 80 3D */ lis r5, lbl_803D3238@h
/* 803713B4 0036E2F4 60 A5 32 38 */ ori r5, r5, lbl_803D3238@l
/* 803713B8 0036E2F8 88 65 00 00 */ lbz r3, 0(r5)
/* 803713BC 0036E2FC 88 C5 00 01 */ lbz r6, 1(r5)
/* 803713C0 0036E300 38 00 00 00 */ li r0, 0
/* 803713C4 0036E304 98 05 00 00 */ stb r0, 0(r5)
/* 803713C8 0036E308 98 05 00 01 */ stb r0, 1(r5)
/* 803713CC 0036E30C 2C 03 00 00 */ cmpwi r3, 0
/* 803713D0 0036E310 41 82 00 14 */ beq lbl_803713E4
/* 803713D4 0036E314 83 02 01 E8 */ lwz r24, 0x1e8(r2)
/* 803713D8 0036E318 83 22 01 EC */ lwz r25, 0x1ec(r2)
/* 803713DC 0036E31C 7F 1C 43 A6 */ mttbl r24
/* 803713E0 0036E320 7F 3D 43 A6 */ mttbu r25
lbl_803713E4:
/* 803713E4 0036E324 BA 82 02 FC */ lmw r20, 0x2fc(r2)
/* 803713E8 0036E328 7E 90 E3 A6 */ mtspr 0x390, r20
/* 803713EC 0036E32C 7E B1 E3 A6 */ mtspr 0x391, r21
/* 803713F0 0036E330 7E D2 E3 A6 */ mtspr 0x392, r22
/* 803713F4 0036E334 7E F3 E3 A6 */ mtspr 0x393, r23
/* 803713F8 0036E338 7F 14 E3 A6 */ mtspr 0x394, r24
/* 803713FC 0036E33C 7F 35 E3 A6 */ mtspr 0x395, r25
/* 80371400 0036E340 7F 56 E3 A6 */ mtspr 0x396, r26
/* 80371404 0036E344 7F 77 E3 A6 */ mtspr 0x397, r27
/* 80371408 0036E348 7F 98 E3 A6 */ mtspr 0x398, r28
/* 8037140C 0036E34C 7F DA E3 A6 */ mtspr 0x39a, r30
/* 80371410 0036E350 7F FB E3 A6 */ mtspr 0x39b, r31
/* 80371414 0036E354 48 00 00 1C */ b lbl_80371430
/* 80371418 0036E358 BB 42 02 E0 */ lmw r26, 0x2e0(r2)
/* 8037141C 0036E35C 7F 50 EB A6 */ mtspr 0x3b0, r26
/* 80371420 0036E360 7F 77 EB A6 */ mtspr 0x3b7, r27
/* 80371424 0036E364 7F B6 FB A6 */ mtspr 0x3f6, r29
/* 80371428 0036E368 7F D7 FB A6 */ mtspr 0x3f7, r30
/* 8037142C 0036E36C 7F FF FB A6 */ mtspr 0x3ff, r31
lbl_80371430:
/* 80371430 0036E370 BA 62 02 84 */ lmw r19, 0x284(r2)
/* 80371434 0036E374 7E 75 FB A6 */ mtspr 0x3f5, r19
/* 80371438 0036E378 7E 99 EB A6 */ mtspr 0x3b9, r20
/* 8037143C 0036E37C 7E BA EB A6 */ mtspr 0x3ba, r21
/* 80371440 0036E380 7E DD EB A6 */ mtspr 0x3bd, r22
/* 80371444 0036E384 7E FE EB A6 */ mtspr 0x3be, r23
/* 80371448 0036E388 7F 1B EB A6 */ mtspr 0x3bb, r24
/* 8037144C 0036E38C 7F 38 EB A6 */ mtspr 0x3b8, r25
/* 80371450 0036E390 7F 5C EB A6 */ mtspr 0x3bc, r26
/* 80371454 0036E394 7F 7C FB A6 */ mtspr 0x3fc, r27
/* 80371458 0036E398 7F 9D FB A6 */ mtspr 0x3fd, r28
/* 8037145C 0036E39C 7F BE FB A6 */ mtspr 0x3fe, r29
/* 80371460 0036E3A0 7F DB FB A6 */ mtictc r30
/* 80371464 0036E3A4 7F F9 FB A6 */ mtspr 0x3f9, r31
/* 80371468 0036E3A8 48 00 00 34 */ b lbl_8037149C
/* 8037146C 0036E3AC 2C 06 00 00 */ cmpwi r6, 0
/* 80371470 0036E3B0 41 82 00 0C */ beq lbl_8037147C
/* 80371474 0036E3B4 83 42 02 78 */ lwz r26, 0x278(r2)
/* 80371478 0036E3B8 7F 56 03 A6 */ mtspr 0x16, r26
lbl_8037147C:
/* 8037147C 0036E3BC BB 22 02 40 */ lmw r25, 0x240(r2)
/* 80371480 0036E3C0 7F 30 F3 A6 */ mtspr 0x3d0, r25
/* 80371484 0036E3C4 7F 51 F3 A6 */ mtspr 0x3d1, r26
/* 80371488 0036E3C8 7F 72 F3 A6 */ mtspr 0x3d2, r27
/* 8037148C 0036E3CC 7F 93 F3 A6 */ mtspr 0x3d3, r28
/* 80371490 0036E3D0 7F B4 F3 A6 */ mtspr 0x3D4, r29
/* 80371494 0036E3D4 7F D5 F3 A6 */ mtspr 0x3D5, r30
/* 80371498 0036E3D8 7F F6 F3 A6 */ mtspr 0x3d6, r31
lbl_8037149C:
/* 8037149C 0036E3DC BA 02 01 A8 */ lmw r16, 0x1a8(r2)
/* 803714A0 0036E3E0 7E 00 01 A4 */ mtsr 0, r16
/* 803714A4 0036E3E4 7E 21 01 A4 */ mtsr 1, r17
/* 803714A8 0036E3E8 7E 42 01 A4 */ mtsr 2, r18
/* 803714AC 0036E3EC 7E 63 01 A4 */ mtsr 3, r19
/* 803714B0 0036E3F0 7E 84 01 A4 */ mtsr 4, r20
/* 803714B4 0036E3F4 7E A5 01 A4 */ mtsr 5, r21
/* 803714B8 0036E3F8 7E C6 01 A4 */ mtsr 6, r22
/* 803714BC 0036E3FC 7E E7 01 A4 */ mtsr 7, r23
/* 803714C0 0036E400 7F 08 01 A4 */ mtsr 8, r24
/* 803714C4 0036E404 7F 29 01 A4 */ mtsr 9, r25
/* 803714C8 0036E408 7F 4A 01 A4 */ mtsr 0xa, r26
/* 803714CC 0036E40C 7F 6B 01 A4 */ mtsr 0xb, r27
/* 803714D0 0036E410 7F 8C 01 A4 */ mtsr 0xc, r28
/* 803714D4 0036E414 7F AD 01 A4 */ mtsr 0xd, r29
/* 803714D8 0036E418 7F CE 01 A4 */ mtsr 0xe, r30
/* 803714DC 0036E41C 7F EF 01 A4 */ mtsr 0xf, r31
/* 803714E0 0036E420 B9 82 01 F0 */ lmw r12, 0x1f0(r2)
/* 803714E4 0036E424 7D 90 FB A6 */ mtspr 0x3f0, r12
/* 803714E8 0036E428 7D B1 FB A6 */ mtspr 0x3f1, r13
/* 803714EC 0036E42C 7D DB 03 A6 */ mtspr 0x1b, r14
/* 803714F0 0036E430 7D FF 43 A6 */ mtspr 0x11f, r15
/* 803714F4 0036E434 7E 10 83 A6 */ mtibatu 0, r16
/* 803714F8 0036E438 7E 31 83 A6 */ mtibatl 0, r17
/* 803714FC 0036E43C 7E 52 83 A6 */ mtibatu 1, r18
/* 80371500 0036E440 7E 73 83 A6 */ mtibatl 1, r19
/* 80371504 0036E444 7E 94 83 A6 */ mtibatu 2, r20
/* 80371508 0036E448 7E B5 83 A6 */ mtibatl 2, r21
/* 8037150C 0036E44C 7E D6 83 A6 */ mtibatu 3, r22
/* 80371510 0036E450 7E F7 83 A6 */ mtibatl 3, r23
/* 80371514 0036E454 7F 18 83 A6 */ mtdbatu 0, r24
/* 80371518 0036E458 7F 39 83 A6 */ mtdbatl 0, r25
/* 8037151C 0036E45C 7F 5A 83 A6 */ mtdbatu 1, r26
/* 80371520 0036E460 7F 7B 83 A6 */ mtdbatl 1, r27
/* 80371524 0036E464 7F 9C 83 A6 */ mtdbatu 2, r28
/* 80371528 0036E468 7F BD 83 A6 */ mtdbatl 2, r29
/* 8037152C 0036E46C 7F DE 83 A6 */ mtdbatu 3, r30
/* 80371530 0036E470 7F FF 83 A6 */ mtdbatl 3, r31
/* 80371534 0036E474 BA C2 02 5C */ lmw r22, 0x25c(r2)
/* 80371538 0036E478 7E D9 03 A6 */ mtspr 0x19, r22
/* 8037153C 0036E47C 7E F3 03 A6 */ mtdar r23
/* 80371540 0036E480 7F 12 03 A6 */ mtdsisr r24
/* 80371544 0036E484 7F 30 43 A6 */ mtspr 0x110, r25
/* 80371548 0036E488 7F 51 43 A6 */ mtspr 0x111, r26
/* 8037154C 0036E48C 7F 72 43 A6 */ mtspr 0x112, r27
/* 80371550 0036E490 7F 93 43 A6 */ mtspr 0x113, r28
/* 80371554 0036E494 7F D2 FB A6 */ mtspr 0x3f2, r30
/* 80371558 0036E498 7F FA 43 A6 */ mtspr 0x11a, r31
/* 8037155C 0036E49C 4E 80 00 20 */ blr
.global lbl_80371560
lbl_80371560:
/* 80371560 0036E4A0 38 21 FF FC */ addi r1, r1, -4
/* 80371564 0036E4A4 90 61 00 00 */ stw r3, 0(r1)
/* 80371568 0036E4A8 3C 60 80 44 */ lis r3, lbl_8044F338@h
/* 8037156C 0036E4AC 60 63 F3 38 */ ori r3, r3, lbl_8044F338@l
/* 80371570 0036E4B0 BC 03 00 00 */ stmw r0, 0(r3)
/* 80371574 0036E4B4 80 81 00 00 */ lwz r4, 0(r1)
/* 80371578 0036E4B8 38 21 00 04 */ addi r1, r1, 4
/* 8037157C 0036E4BC 90 23 00 04 */ stw r1, 4(r3)
/* 80371580 0036E4C0 90 83 00 0C */ stw r4, 0xc(r3)
/* 80371584 0036E4C4 7C 88 02 A6 */ mflr r4
/* 80371588 0036E4C8 90 83 00 84 */ stw r4, 0x84(r3)
/* 8037158C 0036E4CC 90 83 00 80 */ stw r4, 0x80(r3)
/* 80371590 0036E4D0 7C 80 00 26 */ mfcr r4
/* 80371594 0036E4D4 90 83 00 88 */ stw r4, 0x88(r3)
/* 80371598 0036E4D8 7C 80 00 A6 */ mfmsr r4
/* 8037159C 0036E4DC 60 83 80 00 */ ori r3, r4, 0x8000
/* 803715A0 0036E4E0 68 63 80 00 */ xori r3, r3, 0x8000
/* 803715A4 0036E4E4 7C 60 01 24 */ mtmsr r3
/* 803715A8 0036E4E8 7C 9B 03 A6 */ mtspr 0x1b, r4
/* 803715AC 0036E4EC 4B FF FC 45 */ bl func_803711F0
/* 803715B0 0036E4F0 3C 60 80 44 */ lis r3, lbl_8044F338@h
/* 803715B4 0036E4F4 60 63 F3 38 */ ori r3, r3, lbl_8044F338@l
/* 803715B8 0036E4F8 B8 03 00 00 */ .4byte 0xB8030000 /* illegal lmw r0, 0(r3) */
/* 803715BC 0036E4FC 38 00 00 00 */ li r0, 0
/* 803715C0 0036E500 7C 12 FB A6 */ mtspr 0x3f2, r0
/* 803715C4 0036E504 7C 15 FB A6 */ mtspr 0x3f5, r0
/* 803715C8 0036E508 3C 20 80 45 */ lis r1, 0x80459BC8@h
/* 803715CC 0036E50C 60 21 9B C8 */ ori r1, r1, 0x80459BC8@l
/* 803715D0 0036E510 7C A3 2B 78 */ mr r3, r5
/* 803715D4 0036E514 48 00 08 D5 */ bl func_80371EA8
/* 803715D8 0036E518 2C 03 00 01 */ cmpwi r3, 1
/* 803715DC 0036E51C 40 82 00 14 */ bne lbl_803715F0
/* 803715E0 0036E520 80 83 00 84 */ lwz r4, 0x84(r3)
/* 803715E4 0036E524 7C 88 03 A6 */ mtlr r4
/* 803715E8 0036E528 B8 03 00 00 */ .4byte 0xB8030000 /* illegal lmw r0, 0(r3) */
/* 803715EC 0036E52C 4E 80 00 20 */ blr
lbl_803715F0:
/* 803715F0 0036E530 48 00 05 AC */ b lbl_80371B9C
/* 803715F4 0036E534 4E 80 00 20 */ blr
.global func_803715F8
func_803715F8:
/* 803715F8 0036E538 38 21 FF FC */ addi r1, r1, -4
/* 803715FC 0036E53C 90 61 00 00 */ stw r3, 0(r1)
/* 80371600 0036E540 3C 60 80 44 */ lis r3, lbl_8044F338@h
/* 80371604 0036E544 60 63 F3 38 */ ori r3, r3, lbl_8044F338@l
/* 80371608 0036E548 BC 03 00 00 */ stmw r0, 0(r3)
/* 8037160C 0036E54C 80 81 00 00 */ lwz r4, 0(r1)
/* 80371610 0036E550 38 21 00 04 */ addi r1, r1, 4
/* 80371614 0036E554 90 23 00 04 */ stw r1, 4(r3)
/* 80371618 0036E558 90 83 00 0C */ stw r4, 0xc(r3)
/* 8037161C 0036E55C 7C 88 02 A6 */ mflr r4
/* 80371620 0036E560 90 83 00 84 */ stw r4, 0x84(r3)
/* 80371624 0036E564 90 83 00 80 */ stw r4, 0x80(r3)
/* 80371628 0036E568 7C 80 00 26 */ mfcr r4
/* 8037162C 0036E56C 90 83 00 88 */ stw r4, 0x88(r3)
/* 80371630 0036E570 7C 80 00 A6 */ mfmsr r4
/* 80371634 0036E574 60 83 80 00 */ ori r3, r4, 0x8000
/* 80371638 0036E578 7C 60 01 24 */ mtmsr r3
/* 8037163C 0036E57C 7C 9B 03 A6 */ mtspr 0x1b, r4
/* 80371640 0036E580 4B FF FB B1 */ bl func_803711F0
/* 80371644 0036E584 3C 60 80 44 */ lis r3, lbl_8044F338@h
/* 80371648 0036E588 60 63 F3 38 */ ori r3, r3, lbl_8044F338@l
/* 8037164C 0036E58C B8 03 00 00 */ .4byte 0xB8030000 /* illegal lmw r0, 0(r3) */
/* 80371650 0036E590 38 00 00 00 */ li r0, 0
/* 80371654 0036E594 7C 12 FB A6 */ mtspr 0x3f2, r0
/* 80371658 0036E598 7C 15 FB A6 */ mtspr 0x3f5, r0
/* 8037165C 0036E59C 3C 20 80 45 */ lis r1, 0x80459BC8@h
/* 80371660 0036E5A0 60 21 9B C8 */ ori r1, r1, 0x80459BC8@l
/* 80371664 0036E5A4 38 60 00 02 */ li r3, 2
/* 80371668 0036E5A8 48 00 08 41 */ bl func_80371EA8
/* 8037166C 0036E5AC 2C 03 00 01 */ cmpwi r3, 1
/* 80371670 0036E5B0 40 82 00 14 */ bne lbl_80371684
/* 80371674 0036E5B4 80 83 00 84 */ lwz r4, 0x84(r3)
/* 80371678 0036E5B8 7C 88 03 A6 */ mtlr r4
/* 8037167C 0036E5BC B8 03 00 00 */ .4byte 0xB8030000 /* illegal lmw r0, 0(r3) */
/* 80371680 0036E5C0 4E 80 00 20 */ blr
lbl_80371684:
/* 80371684 0036E5C4 48 00 05 18 */ b lbl_80371B9C
/* 80371688 0036E5C8 4E 80 00 20 */ blr
.global func_8037168C
func_8037168C:
/* 8037168C 0036E5CC 54 2B 06 FE */ clrlwi r11, r1, 0x1b
/* 80371690 0036E5D0 7C 2C 0B 78 */ mr r12, r1
/* 80371694 0036E5D4 21 6B FF 80 */ subfic r11, r11, -128
/* 80371698 0036E5D8 7C 21 59 6E */ stwux r1, r1, r11
/* 8037169C 0036E5DC 7C 08 02 A6 */ mflr r0
/* 803716A0 0036E5E0 90 0C 00 04 */ stw r0, 4(r12)
/* 803716A4 0036E5E4 BE EC FF DC */ stmw r23, -0x24(r12)
/* 803716A8 0036E5E8 7C 9F 23 78 */ mr r31, r4
/* 803716AC 0036E5EC 28 1F 40 00 */ cmplwi r31, 0x4000
/* 803716B0 0036E5F0 7C 7E 1B 78 */ mr r30, r3
/* 803716B4 0036E5F4 7C B7 2B 78 */ mr r23, r5
/* 803716B8 0036E5F8 41 80 01 A8 */ blt lbl_80371860
/* 803716BC 0036E5FC 80 97 00 00 */ lwz r4, 0(r23)
/* 803716C0 0036E600 3C 00 08 00 */ lis r0, 0x800
/* 803716C4 0036E604 7C 7F 22 14 */ add r3, r31, r4
/* 803716C8 0036E608 7C 03 00 40 */ cmplw r3, r0
/* 803716CC 0036E60C 40 81 00 08 */ ble lbl_803716D4
/* 803716D0 0036E610 48 00 01 90 */ b lbl_80371860
lbl_803716D4:
/* 803716D4 0036E614 57 E0 06 FE */ clrlwi r0, r31, 0x1b
/* 803716D8 0036E618 57 FB 00 34 */ rlwinm r27, r31, 0, 0, 0x1a
/* 803716DC 0036E61C 7F 44 02 14 */ add r26, r4, r0
/* 803716E0 0036E620 3B 00 00 00 */ li r24, 0
/* 803716E4 0036E624 38 1A 00 1F */ addi r0, r26, 0x1f
/* 803716E8 0036E628 54 1A 00 34 */ rlwinm r26, r0, 0, 0, 0x1a
/* 803716EC 0036E62C 28 1A 00 00 */ cmplwi r26, 0
/* 803716F0 0036E630 38 7A 00 1F */ addi r3, r26, 0x1f
/* 803716F4 0036E634 54 63 D9 7E */ srwi r3, r3, 5
/* 803716F8 0036E638 40 81 00 6C */ ble lbl_80371764
/* 803716FC 0036E63C 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 80371700 0036E640 7C 09 03 A6 */ mtctr r0
/* 80371704 0036E644 41 82 00 50 */ beq lbl_80371754
lbl_80371708:
/* 80371708 0036E648 7C 18 F0 AC */ dcbf r24, r30
/* 8037170C 0036E64C 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371710 0036E650 7C 18 F0 AC */ dcbf r24, r30
/* 80371714 0036E654 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371718 0036E658 7C 18 F0 AC */ dcbf r24, r30
/* 8037171C 0036E65C 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371720 0036E660 7C 18 F0 AC */ dcbf r24, r30
/* 80371724 0036E664 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371728 0036E668 7C 18 F0 AC */ dcbf r24, r30
/* 8037172C 0036E66C 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371730 0036E670 7C 18 F0 AC */ dcbf r24, r30
/* 80371734 0036E674 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371738 0036E678 7C 18 F0 AC */ dcbf r24, r30
/* 8037173C 0036E67C 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371740 0036E680 7C 18 F0 AC */ dcbf r24, r30
/* 80371744 0036E684 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371748 0036E688 42 00 FF C0 */ bdnz lbl_80371708
/* 8037174C 0036E68C 70 63 00 07 */ andi. r3, r3, 7
/* 80371750 0036E690 41 82 00 14 */ beq lbl_80371764
lbl_80371754:
/* 80371754 0036E694 7C 69 03 A6 */ mtctr r3
lbl_80371758:
/* 80371758 0036E698 7C 18 F0 AC */ dcbf r24, r30
/* 8037175C 0036E69C 3B 18 00 20 */ addi r24, r24, 0x20
/* 80371760 0036E6A0 42 00 FF F8 */ bdnz lbl_80371758
lbl_80371764:
/* 80371764 0036E6A4 4B FD EE 35 */ bl ARGetDMAStatus
/* 80371768 0036E6A8 28 03 00 00 */ cmplwi r3, 0
/* 8037176C 0036E6AC 40 82 FF F8 */ bne lbl_80371764
/* 80371770 0036E6B0 4B FD F1 21 */ bl __ARGetInterruptStatus
/* 80371774 0036E6B4 57 F8 06 FF */ clrlwi. r24, r31, 0x1b
/* 80371778 0036E6B8 7C 7D 1B 78 */ mr r29, r3
/* 8037177C 0036E6BC 3F 20 08 00 */ lis r25, 0x800
/* 80371780 0036E6C0 41 82 00 48 */ beq lbl_803717C8
/* 80371784 0036E6C4 3B 81 00 20 */ addi r28, r1, 0x20
/* 80371788 0036E6C8 7F 79 DB 78 */ mr r25, r27
/* 8037178C 0036E6CC 7C 00 E3 AC */ dcbi 0, r28
/* 80371790 0036E6D0 4B FD F0 E1 */ bl __ARClearInterrupt
/* 80371794 0036E6D4 7F 84 E3 78 */ mr r4, r28
/* 80371798 0036E6D8 7F 65 DB 78 */ mr r5, r27
/* 8037179C 0036E6DC 38 60 00 01 */ li r3, 1
/* 803717A0 0036E6E0 38 C0 00 20 */ li r6, 0x20
/* 803717A4 0036E6E4 4B FD EE 31 */ bl ARStartDMA
lbl_803717A8:
/* 803717A8 0036E6E8 4B FD F0 E9 */ bl __ARGetInterruptStatus
/* 803717AC 0036E6EC 54 60 04 3F */ clrlwi. r0, r3, 0x10
/* 803717B0 0036E6F0 41 82 FF F8 */ beq lbl_803717A8
/* 803717B4 0036E6F4 7F C3 F3 78 */ mr r3, r30
/* 803717B8 0036E6F8 7F 05 C3 78 */ mr r5, r24
/* 803717BC 0036E6FC 38 81 00 20 */ addi r4, r1, 0x20
/* 803717C0 0036E700 4B C9 1E 01 */ bl func_800035C0
/* 803717C4 0036E704 7C 00 F0 AC */ dcbf 0, r30
lbl_803717C8:
/* 803717C8 0036E708 80 17 00 00 */ lwz r0, 0(r23)
/* 803717CC 0036E70C 7F FF 02 14 */ add r31, r31, r0
/* 803717D0 0036E710 57 F8 06 FF */ clrlwi. r24, r31, 0x1b
/* 803717D4 0036E714 41 82 00 58 */ beq lbl_8037182C
/* 803717D8 0036E718 57 F7 00 34 */ rlwinm r23, r31, 0, 0, 0x1a
/* 803717DC 0036E71C 7C 17 C8 40 */ cmplw r23, r25
/* 803717E0 0036E720 41 82 00 30 */ beq lbl_80371810
/* 803717E4 0036E724 3B 81 00 20 */ addi r28, r1, 0x20
/* 803717E8 0036E728 7C 00 E3 AC */ dcbi 0, r28
/* 803717EC 0036E72C 4B FD F0 85 */ bl __ARClearInterrupt
/* 803717F0 0036E730 7F 84 E3 78 */ mr r4, r28
/* 803717F4 0036E734 7E E5 BB 78 */ mr r5, r23
/* 803717F8 0036E738 38 60 00 01 */ li r3, 1
/* 803717FC 0036E73C 38 C0 00 20 */ li r6, 0x20
/* 80371800 0036E740 4B FD ED D5 */ bl ARStartDMA
lbl_80371804:
/* 80371804 0036E744 4B FD F0 8D */ bl __ARGetInterruptStatus
/* 80371808 0036E748 54 60 04 3F */ clrlwi. r0, r3, 0x10
/* 8037180C 0036E74C 41 82 FF F8 */ beq lbl_80371804
lbl_80371810:
/* 80371810 0036E750 7F 3E FA 14 */ add r25, r30, r31
/* 80371814 0036E754 38 81 00 20 */ addi r4, r1, 0x20
/* 80371818 0036E758 7F 23 CB 78 */ mr r3, r25
/* 8037181C 0036E75C 20 B8 00 20 */ subfic r5, r24, 0x20
/* 80371820 0036E760 7C 84 C2 14 */ add r4, r4, r24
/* 80371824 0036E764 4B C9 1D 9D */ bl func_800035C0
/* 80371828 0036E768 7C 00 C8 AC */ dcbf 0, r25
lbl_8037182C:
/* 8037182C 0036E76C 7C 00 04 AC */ sync 0
/* 80371830 0036E770 4B FD F0 41 */ bl __ARClearInterrupt
/* 80371834 0036E774 7F C4 F3 78 */ mr r4, r30
/* 80371838 0036E778 7F 65 DB 78 */ mr r5, r27
/* 8037183C 0036E77C 7F 46 D3 78 */ mr r6, r26
/* 80371840 0036E780 38 60 00 00 */ li r3, 0
/* 80371844 0036E784 4B FD ED 91 */ bl ARStartDMA
/* 80371848 0036E788 57 A0 04 3F */ clrlwi. r0, r29, 0x10
/* 8037184C 0036E78C 40 82 00 14 */ bne lbl_80371860
lbl_80371850:
/* 80371850 0036E790 4B FD F0 41 */ bl __ARGetInterruptStatus
/* 80371854 0036E794 54 60 04 3F */ clrlwi. r0, r3, 0x10
/* 80371858 0036E798 41 82 FF F8 */ beq lbl_80371850
/* 8037185C 0036E79C 4B FD F0 15 */ bl __ARClearInterrupt
lbl_80371860:
/* 80371860 0036E7A0 81 41 00 00 */ lwz r10, 0(r1)
/* 80371864 0036E7A4 BA EA FF DC */ lmw r23, -0x24(r10)
/* 80371868 0036E7A8 80 0A 00 04 */ lwz r0, 4(r10)
/* 8037186C 0036E7AC 7C 08 03 A6 */ mtlr r0
/* 80371870 0036E7B0 7D 41 53 78 */ mr r1, r10
/* 80371874 0036E7B4 4E 80 00 20 */ blr
.global func_80371878
func_80371878:
/* 80371878 0036E7B8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8037187C 0036E7BC 7C 08 02 A6 */ mflr r0
/* 80371880 0036E7C0 28 04 40 00 */ cmplwi r4, 0x4000
/* 80371884 0036E7C4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80371888 0036E7C8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8037188C 0036E7CC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80371890 0036E7D0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80371894 0036E7D4 93 81 00 10 */ stw r28, 0x10(r1)
/* 80371898 0036E7D8 7C 7C 1B 78 */ mr r28, r3
/* 8037189C 0036E7DC 41 80 00 F0 */ blt lbl_8037198C
/* 803718A0 0036E7E0 80 A5 00 00 */ lwz r5, 0(r5)
/* 803718A4 0036E7E4 3C 00 08 00 */ lis r0, 0x800
/* 803718A8 0036E7E8 7C 64 2A 14 */ add r3, r4, r5
/* 803718AC 0036E7EC 7C 03 00 40 */ cmplw r3, r0
/* 803718B0 0036E7F0 40 81 00 08 */ ble lbl_803718B8
/* 803718B4 0036E7F4 48 00 00 D8 */ b lbl_8037198C
lbl_803718B8:
/* 803718B8 0036E7F8 54 80 06 FE */ clrlwi r0, r4, 0x1b
/* 803718BC 0036E7FC 54 9E 00 34 */ rlwinm r30, r4, 0, 0, 0x1a
/* 803718C0 0036E800 7F A5 02 14 */ add r29, r5, r0
/* 803718C4 0036E804 38 80 00 00 */ li r4, 0
/* 803718C8 0036E808 38 1D 00 1F */ addi r0, r29, 0x1f
/* 803718CC 0036E80C 54 1D 00 34 */ rlwinm r29, r0, 0, 0, 0x1a
/* 803718D0 0036E810 28 1D 00 00 */ cmplwi r29, 0
/* 803718D4 0036E814 38 7D 00 1F */ addi r3, r29, 0x1f
/* 803718D8 0036E818 54 63 D9 7E */ srwi r3, r3, 5
/* 803718DC 0036E81C 40 81 00 6C */ ble lbl_80371948
/* 803718E0 0036E820 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 803718E4 0036E824 7C 09 03 A6 */ mtctr r0
/* 803718E8 0036E828 41 82 00 50 */ beq lbl_80371938
lbl_803718EC:
/* 803718EC 0036E82C 7C 04 E3 AC */ dcbi r4, r28
/* 803718F0 0036E830 38 84 00 20 */ addi r4, r4, 0x20
/* 803718F4 0036E834 7C 04 E3 AC */ dcbi r4, r28
/* 803718F8 0036E838 38 84 00 20 */ addi r4, r4, 0x20
/* 803718FC 0036E83C 7C 04 E3 AC */ dcbi r4, r28
/* 80371900 0036E840 38 84 00 20 */ addi r4, r4, 0x20
/* 80371904 0036E844 7C 04 E3 AC */ dcbi r4, r28
/* 80371908 0036E848 38 84 00 20 */ addi r4, r4, 0x20
/* 8037190C 0036E84C 7C 04 E3 AC */ dcbi r4, r28
/* 80371910 0036E850 38 84 00 20 */ addi r4, r4, 0x20
/* 80371914 0036E854 7C 04 E3 AC */ dcbi r4, r28
/* 80371918 0036E858 38 84 00 20 */ addi r4, r4, 0x20
/* 8037191C 0036E85C 7C 04 E3 AC */ dcbi r4, r28
/* 80371920 0036E860 38 84 00 20 */ addi r4, r4, 0x20
/* 80371924 0036E864 7C 04 E3 AC */ dcbi r4, r28
/* 80371928 0036E868 38 84 00 20 */ addi r4, r4, 0x20
/* 8037192C 0036E86C 42 00 FF C0 */ bdnz lbl_803718EC
/* 80371930 0036E870 70 63 00 07 */ andi. r3, r3, 7
/* 80371934 0036E874 41 82 00 14 */ beq lbl_80371948
lbl_80371938:
/* 80371938 0036E878 7C 69 03 A6 */ mtctr r3
lbl_8037193C:
/* 8037193C 0036E87C 7C 04 E3 AC */ dcbi r4, r28
/* 80371940 0036E880 38 84 00 20 */ addi r4, r4, 0x20
/* 80371944 0036E884 42 00 FF F8 */ bdnz lbl_8037193C
lbl_80371948:
/* 80371948 0036E888 4B FD EC 51 */ bl ARGetDMAStatus
/* 8037194C 0036E88C 28 03 00 00 */ cmplwi r3, 0
/* 80371950 0036E890 40 82 FF F8 */ bne lbl_80371948
/* 80371954 0036E894 4B FD EF 3D */ bl __ARGetInterruptStatus
/* 80371958 0036E898 7C 7F 1B 78 */ mr r31, r3
/* 8037195C 0036E89C 4B FD EF 15 */ bl __ARClearInterrupt
/* 80371960 0036E8A0 7F 84 E3 78 */ mr r4, r28
/* 80371964 0036E8A4 7F C5 F3 78 */ mr r5, r30
/* 80371968 0036E8A8 7F A6 EB 78 */ mr r6, r29
/* 8037196C 0036E8AC 38 60 00 01 */ li r3, 1
/* 80371970 0036E8B0 4B FD EC 65 */ bl ARStartDMA
lbl_80371974:
/* 80371974 0036E8B4 4B FD EF 1D */ bl __ARGetInterruptStatus
/* 80371978 0036E8B8 54 60 04 3F */ clrlwi. r0, r3, 0x10
/* 8037197C 0036E8BC 41 82 FF F8 */ beq lbl_80371974
/* 80371980 0036E8C0 57 E0 04 3F */ clrlwi. r0, r31, 0x10
/* 80371984 0036E8C4 40 82 00 08 */ bne lbl_8037198C
/* 80371988 0036E8C8 4B FD EE E9 */ bl __ARClearInterrupt
lbl_8037198C:
/* 8037198C 0036E8CC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80371990 0036E8D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80371994 0036E8D4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80371998 0036E8D8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8037199C 0036E8DC 83 81 00 10 */ lwz r28, 0x10(r1)
/* 803719A0 0036E8E0 7C 08 03 A6 */ mtlr r0
/* 803719A4 0036E8E4 38 21 00 20 */ addi r1, r1, 0x20
/* 803719A8 0036E8E8 4E 80 00 20 */ blr
.global func_803719AC
func_803719AC:
/* 803719AC 0036E8EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803719B0 0036E8F0 7C 08 02 A6 */ mflr r0
/* 803719B4 0036E8F4 3C 60 80 45 */ lis r3, lbl_8044F294@ha
/* 803719B8 0036E8F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 803719BC 0036E8FC 38 00 00 01 */ li r0, 1
/* 803719C0 0036E900 38 63 F2 94 */ addi r3, r3, lbl_8044F294@l
/* 803719C4 0036E904 90 03 00 98 */ stw r0, 0x98(r3)
/* 803719C8 0036E908 4B FF DC 71 */ bl func_8036F638
/* 803719CC 0036E90C 3C A0 80 45 */ lis r5, lbl_8044F294@ha
/* 803719D0 0036E910 3C 80 80 45 */ lis r4, lbl_8044F810@ha
/* 803719D4 0036E914 38 A5 F2 94 */ addi r5, r5, lbl_8044F294@l
/* 803719D8 0036E918 3C 00 E0 00 */ lis r0, 0xe000
/* 803719DC 0036E91C 90 65 00 8C */ stw r3, 0x8c(r5)
/* 803719E0 0036E920 38 60 00 00 */ li r3, 0
/* 803719E4 0036E924 90 04 F8 10 */ stw r0, lbl_8044F810@l(r4)
/* 803719E8 0036E928 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803719EC 0036E92C 7C 08 03 A6 */ mtlr r0
/* 803719F0 0036E930 38 21 00 10 */ addi r1, r1, 0x10
/* 803719F4 0036E934 4E 80 00 20 */ blr
.global func_803719F8
func_803719F8:
/* 803719F8 0036E938 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803719FC 0036E93C 7C 08 02 A6 */ mflr r0
/* 80371A00 0036E940 3C 60 80 45 */ lis r3, lbl_8044F810@ha
/* 80371A04 0036E944 90 01 00 24 */ stw r0, 0x24(r1)
/* 80371A08 0036E948 38 63 F8 10 */ addi r3, r3, lbl_8044F810@l
/* 80371A0C 0036E94C BF 61 00 0C */ stmw r27, 0xc(r1)
/* 80371A10 0036E950 80 63 00 00 */ lwz r3, 0(r3)
/* 80371A14 0036E954 28 03 00 44 */ cmplwi r3, 0x44
/* 80371A18 0036E958 41 81 00 2C */ bgt lbl_80371A44
/* 80371A1C 0036E95C 38 03 40 00 */ addi r0, r3, 0x4000
/* 80371A20 0036E960 28 00 00 44 */ cmplwi r0, 0x44
/* 80371A24 0036E964 40 81 00 20 */ ble lbl_80371A44
/* 80371A28 0036E968 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 80371A2C 0036E96C 38 63 F3 38 */ addi r3, r3, lbl_8044F338@l
/* 80371A30 0036E970 80 03 02 38 */ lwz r0, 0x238(r3)
/* 80371A34 0036E974 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80371A38 0036E978 41 82 00 0C */ beq lbl_80371A44
/* 80371A3C 0036E97C 38 A0 00 44 */ li r5, 0x44
/* 80371A40 0036E980 48 00 00 0C */ b lbl_80371A4C
lbl_80371A44:
/* 80371A44 0036E984 3C 60 80 00 */ lis r3, 0x80000044@ha
/* 80371A48 0036E988 38 A3 00 44 */ addi r5, r3, 0x80000044@l
lbl_80371A4C:
/* 80371A4C 0036E98C 3C 80 80 3D */ lis r4, lbl_803D3268@ha
/* 80371A50 0036E990 3C 60 80 45 */ lis r3, lbl_8044F338@ha
/* 80371A54 0036E994 83 A5 00 00 */ lwz r29, 0(r5)
/* 80371A58 0036E998 3B E4 32 68 */ addi r31, r4, lbl_803D3268@l
/* 80371A5C 0036E99C 3B 83 F3 38 */ addi r28, r3, lbl_8044F338@l
/* 80371A60 0036E9A0 3B C0 00 00 */ li r30, 0
lbl_80371A64:
/* 80371A64 0036E9A4 38 00 00 01 */ li r0, 1
/* 80371A68 0036E9A8 7C 00 F0 30 */ slw r0, r0, r30
/* 80371A6C 0036E9AC 7F A0 00 39 */ and. r0, r29, r0
/* 80371A70 0036E9B0 41 82 00 90 */ beq lbl_80371B00
/* 80371A74 0036E9B4 2C 1E 00 04 */ cmpwi r30, 4
/* 80371A78 0036E9B8 41 82 00 88 */ beq lbl_80371B00
/* 80371A7C 0036E9BC 3C 60 80 45 */ lis r3, lbl_8044F810@ha
/* 80371A80 0036E9C0 80 DF 00 00 */ lwz r6, 0(r31)
/* 80371A84 0036E9C4 38 63 F8 10 */ addi r3, r3, lbl_8044F810@l
/* 80371A88 0036E9C8 80 63 00 00 */ lwz r3, 0(r3)
/* 80371A8C 0036E9CC 7C 06 18 40 */ cmplw r6, r3
/* 80371A90 0036E9D0 41 80 00 24 */ blt lbl_80371AB4
/* 80371A94 0036E9D4 38 03 40 00 */ addi r0, r3, 0x4000
/* 80371A98 0036E9D8 7C 06 00 40 */ cmplw r6, r0
/* 80371A9C 0036E9DC 40 80 00 18 */ bge lbl_80371AB4
/* 80371AA0 0036E9E0 80 1C 02 38 */ lwz r0, 0x238(r28)
/* 80371AA4 0036E9E4 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80371AA8 0036E9E8 41 82 00 0C */ beq lbl_80371AB4
/* 80371AAC 0036E9EC 7C DB 33 78 */ mr r27, r6
/* 80371AB0 0036E9F0 48 00 00 2C */ b lbl_80371ADC
lbl_80371AB4:
/* 80371AB4 0036E9F4 3C 00 7E 00 */ lis r0, 0x7e00
/* 80371AB8 0036E9F8 7C 06 00 40 */ cmplw r6, r0
/* 80371ABC 0036E9FC 41 80 00 18 */ blt lbl_80371AD4
/* 80371AC0 0036EA00 3C 00 80 00 */ lis r0, 0x8000
/* 80371AC4 0036EA04 7C 06 00 40 */ cmplw r6, r0
/* 80371AC8 0036EA08 41 81 00 0C */ bgt lbl_80371AD4
/* 80371ACC 0036EA0C 7C DB 33 78 */ mr r27, r6
/* 80371AD0 0036EA10 48 00 00 0C */ b lbl_80371ADC
lbl_80371AD4:
/* 80371AD4 0036EA14 54 C0 00 BE */ clrlwi r0, r6, 2
/* 80371AD8 0036EA18 64 1B 80 00 */ oris r27, r0, 0x8000
lbl_80371ADC:
/* 80371ADC 0036EA1C 3C 80 80 00 */ lis r4, lbl_800035E4@ha
/* 80371AE0 0036EA20 7F 63 DB 78 */ mr r3, r27
/* 80371AE4 0036EA24 38 04 35 E4 */ addi r0, r4, lbl_800035E4@l
/* 80371AE8 0036EA28 38 A0 01 00 */ li r5, 0x100
/* 80371AEC 0036EA2C 7C 80 32 14 */ add r4, r0, r6
/* 80371AF0 0036EA30 4B C9 1A D1 */ bl func_800035C0
/* 80371AF4 0036EA34 7F 63 DB 78 */ mr r3, r27
/* 80371AF8 0036EA38 38 80 01 00 */ li r4, 0x100
/* 80371AFC 0036EA3C 4B FF DA 4D */ bl func_8036F548
lbl_80371B00:
/* 80371B00 0036EA40 3B DE 00 01 */ addi r30, r30, 1
/* 80371B04 0036EA44 3B FF 00 04 */ addi r31, r31, 4
/* 80371B08 0036EA48 2C 1E 00 0E */ cmpwi r30, 0xe
/* 80371B0C 0036EA4C 40 81 FF 58 */ ble lbl_80371A64
/* 80371B10 0036EA50 BB 61 00 0C */ lmw r27, 0xc(r1)
/* 80371B14 0036EA54 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80371B18 0036EA58 7C 08 03 A6 */ mtlr r0
/* 80371B1C 0036EA5C 38 21 00 20 */ addi r1, r1, 0x20
/* 80371B20 0036EA60 4E 80 00 20 */ blr
.global func_80371B24
func_80371B24:
/* 80371B24 0036EA64 3C 80 80 45 */ lis r4, lbl_8044F810@ha
/* 80371B28 0036EA68 38 84 F8 10 */ addi r4, r4, lbl_8044F810@l
/* 80371B2C 0036EA6C 80 84 00 00 */ lwz r4, 0(r4)
/* 80371B30 0036EA70 7C 03 20 40 */ cmplw r3, r4
/* 80371B34 0036EA74 41 80 00 24 */ blt lbl_80371B58
/* 80371B38 0036EA78 38 04 40 00 */ addi r0, r4, 0x4000
/* 80371B3C 0036EA7C 7C 03 00 40 */ cmplw r3, r0
/* 80371B40 0036EA80 40 80 00 18 */ bge lbl_80371B58
/* 80371B44 0036EA84 3C 80 80 45 */ lis r4, lbl_8044F338@ha
/* 80371B48 0036EA88 38 84 F3 38 */ addi r4, r4, lbl_8044F338@l
/* 80371B4C 0036EA8C 80 04 02 38 */ lwz r0, 0x238(r4)
/* 80371B50 0036EA90 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 80371B54 0036EA94 4C 82 00 20 */ bnelr
lbl_80371B58:
/* 80371B58 0036EA98 3C 00 7E 00 */ lis r0, 0x7e00
/* 80371B5C 0036EA9C 7C 03 00 40 */ cmplw r3, r0
/* 80371B60 0036EAA0 41 80 00 10 */ blt lbl_80371B70
/* 80371B64 0036EAA4 3C 00 80 00 */ lis r0, 0x8000
/* 80371B68 0036EAA8 7C 03 00 40 */ cmplw r3, r0
/* 80371B6C 0036EAAC 4C 81 00 20 */ blelr
lbl_80371B70:
/* 80371B70 0036EAB0 54 60 00 BE */ clrlwi r0, r3, 2
/* 80371B74 0036EAB4 64 03 80 00 */ oris r3, r0, 0x8000
/* 80371B78 0036EAB8 4E 80 00 20 */ blr
.global func_80371B7C
func_80371B7C:
/* 80371B7C 0036EABC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371B80 0036EAC0 7C 08 02 A6 */ mflr r0
/* 80371B84 0036EAC4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371B88 0036EAC8 48 00 02 89 */ bl func_80371E10
/* 80371B8C 0036EACC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371B90 0036EAD0 7C 08 03 A6 */ mtlr r0
/* 80371B94 0036EAD4 38 21 00 10 */ addi r1, r1, 0x10
/* 80371B98 0036EAD8 4E 80 00 20 */ blr
lbl_80371B9C:
/* 80371B9C 0036EADC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371BA0 0036EAE0 7C 08 02 A6 */ mflr r0
/* 80371BA4 0036EAE4 3C 80 80 3A */ lis r4, lbl_803A2BF8@ha
/* 80371BA8 0036EAE8 38 60 00 01 */ li r3, 1
/* 80371BAC 0036EAEC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371BB0 0036EAF0 38 84 2B F8 */ addi r4, r4, lbl_803A2BF8@l
/* 80371BB4 0036EAF4 4C C6 31 82 */ crclr 6
/* 80371BB8 0036EAF8 48 00 10 9D */ bl func_80372C54
/* 80371BBC 0036EAFC 4B FF B2 D1 */ bl func_8036CE8C
/* 80371BC0 0036EB00 3C 80 80 45 */ lis r4, lbl_8044F818@ha
/* 80371BC4 0036EB04 2C 03 00 00 */ cmpwi r3, 0
/* 80371BC8 0036EB08 90 64 F8 18 */ stw r3, lbl_8044F818@l(r4)
/* 80371BCC 0036EB0C 40 82 00 0C */ bne lbl_80371BD8
/* 80371BD0 0036EB10 4B FF B2 71 */ bl func_8036CE40
/* 80371BD4 0036EB14 4B FF AF 4D */ bl func_8036CB20
lbl_80371BD8:
/* 80371BD8 0036EB18 4B FF B2 91 */ bl func_8036CE68
/* 80371BDC 0036EB1C 3C 80 80 45 */ lis r4, lbl_8044F818@ha
/* 80371BE0 0036EB20 90 64 F8 18 */ stw r3, lbl_8044F818@l(r4)
/* 80371BE4 0036EB24 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371BE8 0036EB28 7C 08 03 A6 */ mtlr r0
/* 80371BEC 0036EB2C 38 21 00 10 */ addi r1, r1, 0x10
/* 80371BF0 0036EB30 4E 80 00 20 */ blr
.global func_80371BF4
func_80371BF4:
/* 80371BF4 0036EB34 80 03 00 00 */ lwz r0, 0(r3)
/* 80371BF8 0036EB38 80 23 00 04 */ lwz r1, 4(r3)
/* 80371BFC 0036EB3C 80 43 00 08 */ lwz r2, 8(r3)
/* 80371C00 0036EB40 A0 A3 01 A2 */ lhz r5, 0x1a2(r3)
/* 80371C04 0036EB44 54 A6 07 BD */ rlwinm. r6, r5, 0, 0x1e, 0x1e
/* 80371C08 0036EB48 41 82 00 14 */ beq lbl_80371C1C
/* 80371C0C 0036EB4C 54 A5 07 FA */ rlwinm r5, r5, 0, 0x1f, 0x1d
/* 80371C10 0036EB50 B0 A3 01 A2 */ sth r5, 0x1a2(r3)
/* 80371C14 0036EB54 B8 A3 00 14 */ lmw r5, 0x14(r3)
/* 80371C18 0036EB58 48 00 00 08 */ b lbl_80371C20
lbl_80371C1C:
/* 80371C1C 0036EB5C B9 A3 00 34 */ lmw r13, 0x34(r3)
lbl_80371C20:
/* 80371C20 0036EB60 7C 7F 1B 78 */ mr r31, r3
/* 80371C24 0036EB64 7C 83 23 78 */ mr r3, r4
/* 80371C28 0036EB68 80 9F 00 80 */ lwz r4, 0x80(r31)
/* 80371C2C 0036EB6C 7C 8F F1 20 */ mtcrf 0xff, r4
/* 80371C30 0036EB70 80 9F 00 84 */ lwz r4, 0x84(r31)
/* 80371C34 0036EB74 7C 88 03 A6 */ mtlr r4
/* 80371C38 0036EB78 80 9F 00 88 */ lwz r4, 0x88(r31)
/* 80371C3C 0036EB7C 7C 89 03 A6 */ mtctr r4
/* 80371C40 0036EB80 80 9F 00 8C */ lwz r4, 0x8c(r31)
/* 80371C44 0036EB84 7C 81 03 A6 */ mtxer r4
/* 80371C48 0036EB88 7C 80 00 A6 */ mfmsr r4
/* 80371C4C 0036EB8C 54 84 04 5E */ rlwinm r4, r4, 0, 0x11, 0xf
/* 80371C50 0036EB90 54 84 07 FA */ rlwinm r4, r4, 0, 0x1f, 0x1d
/* 80371C54 0036EB94 7C 80 01 24 */ mtmsr r4
/* 80371C58 0036EB98 7C 51 43 A6 */ mtspr 0x111, r2
/* 80371C5C 0036EB9C 80 9F 00 0C */ lwz r4, 0xc(r31)
/* 80371C60 0036EBA0 7C 92 43 A6 */ mtspr 0x112, r4
/* 80371C64 0036EBA4 80 9F 00 10 */ lwz r4, 0x10(r31)
/* 80371C68 0036EBA8 7C 93 43 A6 */ mtspr 0x113, r4
/* 80371C6C 0036EBAC 80 5F 01 98 */ lwz r2, 0x198(r31)
/* 80371C70 0036EBB0 80 9F 01 9C */ lwz r4, 0x19c(r31)
/* 80371C74 0036EBB4 83 FF 00 7C */ lwz r31, 0x7c(r31)
/* 80371C78 0036EBB8 4B FF DA 0C */ b lbl_8036F684
.global func_80371C7C
func_80371C7C:
/* 80371C7C 0036EBBC 4E 80 00 20 */ blr
.global func_80371C80
func_80371C80:
/* 80371C80 0036EBC0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371C84 0036EBC4 7C 08 02 A6 */ mflr r0
/* 80371C88 0036EBC8 3C 80 80 34 */ lis r4, PPCHalt@ha
/* 80371C8C 0036EBCC 3C 60 80 3A */ lis r3, lbl_803A2C08@ha
/* 80371C90 0036EBD0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371C94 0036EBD4 38 A0 00 04 */ li r5, 4
/* 80371C98 0036EBD8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80371C9C 0036EBDC 3B E4 9D 00 */ addi r31, r4, PPCHalt@l
/* 80371CA0 0036EBE0 38 83 2C 08 */ addi r4, r3, lbl_803A2C08@l
/* 80371CA4 0036EBE4 38 7F 00 04 */ addi r3, r31, 4
/* 80371CA8 0036EBE8 4B C9 19 19 */ bl func_800035C0
/* 80371CAC 0036EBEC 38 7F 00 04 */ addi r3, r31, 4
/* 80371CB0 0036EBF0 38 80 00 04 */ li r4, 4
/* 80371CB4 0036EBF4 4B FC 99 DD */ bl ICInvalidateRange
/* 80371CB8 0036EBF8 38 7F 00 04 */ addi r3, r31, 4
/* 80371CBC 0036EBFC 38 80 00 04 */ li r4, 4
/* 80371CC0 0036EC00 4B FC 98 ED */ bl DCFlushRange
/* 80371CC4 0036EC04 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371CC8 0036EC08 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80371CCC 0036EC0C 7C 08 03 A6 */ mtlr r0
/* 80371CD0 0036EC10 38 21 00 10 */ addi r1, r1, 0x10
/* 80371CD4 0036EC14 4E 80 00 20 */ blr
.global func_80371CD8
func_80371CD8:
/* 80371CD8 0036EC18 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371CDC 0036EC1C 7C 08 02 A6 */ mflr r0
/* 80371CE0 0036EC20 3C A0 80 3A */ lis r5, lbl_803A2C0C@ha
/* 80371CE4 0036EC24 7C 64 1B 78 */ mr r4, r3
/* 80371CE8 0036EC28 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371CEC 0036EC2C 38 65 2C 0C */ addi r3, r5, lbl_803A2C0C@l
/* 80371CF0 0036EC30 4C C6 31 82 */ crclr 6
/* 80371CF4 0036EC34 4B C9 4D C9 */ bl OSReport
/* 80371CF8 0036EC38 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371CFC 0036EC3C 7C 08 03 A6 */ mtlr r0
/* 80371D00 0036EC40 38 21 00 10 */ addi r1, r1, 0x10
/* 80371D04 0036EC44 4E 80 00 20 */ blr
.global func_80371D08
func_80371D08:
/* 80371D08 0036EC48 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371D0C 0036EC4C 7C 08 02 A6 */ mflr r0
/* 80371D10 0036EC50 3C 60 80 3D */ lis r3, lbl_803D32A8@ha
/* 80371D14 0036EC54 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371D18 0036EC58 38 63 32 A8 */ addi r3, r3, lbl_803D32A8@l
/* 80371D1C 0036EC5C 81 83 00 20 */ lwz r12, 0x20(r3)
/* 80371D20 0036EC60 7D 89 03 A6 */ mtctr r12
/* 80371D24 0036EC64 4E 80 04 21 */ bctrl
/* 80371D28 0036EC68 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371D2C 0036EC6C 7C 08 03 A6 */ mtlr r0
/* 80371D30 0036EC70 38 21 00 10 */ addi r1, r1, 0x10
/* 80371D34 0036EC74 4E 80 00 20 */ blr
.global func_80371D38
func_80371D38:
/* 80371D38 0036EC78 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371D3C 0036EC7C 7C 08 02 A6 */ mflr r0
/* 80371D40 0036EC80 3C 60 80 3D */ lis r3, lbl_803D32A8@ha
/* 80371D44 0036EC84 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371D48 0036EC88 38 63 32 A8 */ addi r3, r3, lbl_803D32A8@l
/* 80371D4C 0036EC8C 81 83 00 24 */ lwz r12, 0x24(r3)
/* 80371D50 0036EC90 7D 89 03 A6 */ mtctr r12
/* 80371D54 0036EC94 4E 80 04 21 */ bctrl
/* 80371D58 0036EC98 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371D5C 0036EC9C 7C 08 03 A6 */ mtlr r0
/* 80371D60 0036ECA0 38 21 00 10 */ addi r1, r1, 0x10
/* 80371D64 0036ECA4 4E 80 00 20 */ blr
.global func_80371D68
func_80371D68:
/* 80371D68 0036ECA8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371D6C 0036ECAC 7C 08 02 A6 */ mflr r0
/* 80371D70 0036ECB0 3C A0 80 3D */ lis r5, lbl_803D32A8@ha
/* 80371D74 0036ECB4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371D78 0036ECB8 38 A5 32 A8 */ addi r5, r5, lbl_803D32A8@l
/* 80371D7C 0036ECBC 81 85 00 14 */ lwz r12, 0x14(r5)
/* 80371D80 0036ECC0 7D 89 03 A6 */ mtctr r12
/* 80371D84 0036ECC4 4E 80 04 21 */ bctrl
/* 80371D88 0036ECC8 7C 03 00 D0 */ neg r0, r3
/* 80371D8C 0036ECCC 7C 00 1B 78 */ or r0, r0, r3
/* 80371D90 0036ECD0 7C 03 FE 70 */ srawi r3, r0, 0x1f
/* 80371D94 0036ECD4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371D98 0036ECD8 7C 08 03 A6 */ mtlr r0
/* 80371D9C 0036ECDC 38 21 00 10 */ addi r1, r1, 0x10
/* 80371DA0 0036ECE0 4E 80 00 20 */ blr
.global func_80371DA4
func_80371DA4:
/* 80371DA4 0036ECE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371DA8 0036ECE8 7C 08 02 A6 */ mflr r0
/* 80371DAC 0036ECEC 3C A0 80 3D */ lis r5, lbl_803D32A8@ha
/* 80371DB0 0036ECF0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371DB4 0036ECF4 38 A5 32 A8 */ addi r5, r5, lbl_803D32A8@l
/* 80371DB8 0036ECF8 81 85 00 10 */ lwz r12, 0x10(r5)
/* 80371DBC 0036ECFC 7D 89 03 A6 */ mtctr r12
/* 80371DC0 0036ED00 4E 80 04 21 */ bctrl
/* 80371DC4 0036ED04 7C 03 00 D0 */ neg r0, r3
/* 80371DC8 0036ED08 7C 00 1B 78 */ or r0, r0, r3
/* 80371DCC 0036ED0C 7C 03 FE 70 */ srawi r3, r0, 0x1f
/* 80371DD0 0036ED10 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371DD4 0036ED14 7C 08 03 A6 */ mtlr r0
/* 80371DD8 0036ED18 38 21 00 10 */ addi r1, r1, 0x10
/* 80371DDC 0036ED1C 4E 80 00 20 */ blr
.global func_80371DE0
func_80371DE0:
/* 80371DE0 0036ED20 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371DE4 0036ED24 7C 08 02 A6 */ mflr r0
/* 80371DE8 0036ED28 3C 60 80 3D */ lis r3, lbl_803D32A8@ha
/* 80371DEC 0036ED2C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371DF0 0036ED30 38 63 32 A8 */ addi r3, r3, lbl_803D32A8@l
/* 80371DF4 0036ED34 81 83 00 0C */ lwz r12, 0xc(r3)
/* 80371DF8 0036ED38 7D 89 03 A6 */ mtctr r12
/* 80371DFC 0036ED3C 4E 80 04 21 */ bctrl
/* 80371E00 0036ED40 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371E04 0036ED44 7C 08 03 A6 */ mtlr r0
/* 80371E08 0036ED48 38 21 00 10 */ addi r1, r1, 0x10
/* 80371E0C 0036ED4C 4E 80 00 20 */ blr
.global func_80371E10
func_80371E10:
/* 80371E10 0036ED50 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371E14 0036ED54 7C 08 02 A6 */ mflr r0
/* 80371E18 0036ED58 3C 60 80 45 */ lis r3, lbl_8044F820@ha
/* 80371E1C 0036ED5C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371E20 0036ED60 88 03 F8 20 */ lbz r0, lbl_8044F820@l(r3)
/* 80371E24 0036ED64 28 00 00 00 */ cmplwi r0, 0
/* 80371E28 0036ED68 40 82 00 20 */ bne lbl_80371E48
/* 80371E2C 0036ED6C 3C 60 80 3D */ lis r3, lbl_803D32A8@ha
/* 80371E30 0036ED70 38 63 32 A8 */ addi r3, r3, lbl_803D32A8@l
/* 80371E34 0036ED74 81 83 00 04 */ lwz r12, 4(r3)
/* 80371E38 0036ED78 28 0C 00 00 */ cmplwi r12, 0
/* 80371E3C 0036ED7C 41 82 00 0C */ beq lbl_80371E48
/* 80371E40 0036ED80 7D 89 03 A6 */ mtctr r12
/* 80371E44 0036ED84 4E 80 04 21 */ bctrl
lbl_80371E48:
/* 80371E48 0036ED88 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371E4C 0036ED8C 7C 08 03 A6 */ mtlr r0
/* 80371E50 0036ED90 38 21 00 10 */ addi r1, r1, 0x10
/* 80371E54 0036ED94 4E 80 00 20 */ blr
.global func_80371E58
func_80371E58:
/* 80371E58 0036ED98 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80371E5C 0036ED9C 7C 08 02 A6 */ mflr r0
/* 80371E60 0036EDA0 3C 80 80 37 */ lis r4, lbl_80372114@ha
/* 80371E64 0036EDA4 3C 60 80 3D */ lis r3, lbl_803D32A8@ha
/* 80371E68 0036EDA8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80371E6C 0036EDAC 38 84 21 14 */ addi r4, r4, lbl_80372114@l
/* 80371E70 0036EDB0 81 83 32 A8 */ lwz r12, lbl_803D32A8@l(r3)
/* 80371E74 0036EDB4 7C C3 33 78 */ mr r3, r6
/* 80371E78 0036EDB8 7D 89 03 A6 */ mtctr r12
/* 80371E7C 0036EDBC 4E 80 04 21 */ bctrl
/* 80371E80 0036EDC0 3C 60 80 3D */ lis r3, lbl_803D32A8@ha
/* 80371E84 0036EDC4 38 63 32 A8 */ addi r3, r3, lbl_803D32A8@l
/* 80371E88 0036EDC8 81 83 00 18 */ lwz r12, 0x18(r3)
/* 80371E8C 0036EDCC 7D 89 03 A6 */ mtctr r12
/* 80371E90 0036EDD0 4E 80 04 21 */ bctrl
/* 80371E94 0036EDD4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80371E98 0036EDD8 38 60 00 00 */ li r3, 0
/* 80371E9C 0036EDDC 7C 08 03 A6 */ mtlr r0
/* 80371EA0 0036EDE0 38 21 00 10 */ addi r1, r1, 0x10
/* 80371EA4 0036EDE4 4E 80 00 20 */ blr
.global func_80371EA8
func_80371EA8:
/* 80371EA8 0036EDE8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80371EAC 0036EDEC 7C 08 02 A6 */ mflr r0
/* 80371EB0 0036EDF0 3C 80 80 3A */ lis r4, lbl_803A2C08@ha
/* 80371EB4 0036EDF4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80371EB8 0036EDF8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80371EBC 0036EDFC 3B E0 00 01 */ li r31, 1
/* 80371EC0 0036EE00 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80371EC4 0036EE04 7C 7E 1B 78 */ mr r30, r3
/* 80371EC8 0036EE08 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80371ECC 0036EE0C 3B A4 2C 08 */ addi r29, r4, lbl_803A2C08@l
/* 80371ED0 0036EE10 7F C4 F3 78 */ mr r4, r30
/* 80371ED4 0036EE14 38 7D 00 08 */ addi r3, r29, 8
/* 80371ED8 0036EE18 4C C6 31 82 */ crclr 6
/* 80371EDC 0036EE1C 4B C9 4B E1 */ bl OSReport
/* 80371EE0 0036EE20 3C 60 80 45 */ lis r3, lbl_8044F820@ha
/* 80371EE4 0036EE24 38 00 00 00 */ li r0, 0
/* 80371EE8 0036EE28 2C 1E 00 02 */ cmpwi r30, 2
/* 80371EEC 0036EE2C 98 03 F8 20 */ stb r0, lbl_8044F820@l(r3)
/* 80371EF0 0036EE30 40 82 00 A4 */ bne lbl_80371F94
/* 80371EF4 0036EE34 38 7D 00 20 */ addi r3, r29, 0x20
/* 80371EF8 0036EE38 4C C6 31 82 */ crclr 6
/* 80371EFC 0036EE3C 4B C9 4B C1 */ bl OSReport
/* 80371F00 0036EE40 3F C0 80 45 */ lis r30, lbl_8044F820@ha
/* 80371F04 0036EE44 3D 80 80 37 */ lis r12, lbl_80372354@ha
/* 80371F08 0036EE48 3D 60 80 3D */ lis r11, lbl_803D32A8@ha
/* 80371F0C 0036EE4C 3D 40 80 37 */ lis r10, lbl_80372344@ha
/* 80371F10 0036EE50 3D 20 80 37 */ lis r9, lbl_8037233C@ha
/* 80371F14 0036EE54 3D 00 80 37 */ lis r8, lbl_80372334@ha
/* 80371F18 0036EE58 3C E0 80 37 */ lis r7, lbl_8037232C@ha
/* 80371F1C 0036EE5C 3C C0 80 37 */ lis r6, lbl_8037234C@ha
/* 80371F20 0036EE60 3C A0 80 37 */ lis r5, lbl_80372324@ha
/* 80371F24 0036EE64 3C 80 80 37 */ lis r4, lbl_8037231C@ha
/* 80371F28 0036EE68 3C 60 80 37 */ lis r3, lbl_80372314@ha
/* 80371F2C 0036EE6C 3B FE F8 20 */ addi r31, r30, lbl_8044F820@l
/* 80371F30 0036EE70 3B A0 00 01 */ li r29, 1
/* 80371F34 0036EE74 3B CC 23 54 */ addi r30, r12, lbl_80372354@l
/* 80371F38 0036EE78 39 8B 32 A8 */ addi r12, r11, lbl_803D32A8@l
/* 80371F3C 0036EE7C 39 6A 23 44 */ addi r11, r10, lbl_80372344@l
/* 80371F40 0036EE80 39 49 23 3C */ addi r10, r9, lbl_8037233C@l
/* 80371F44 0036EE84 39 28 23 34 */ addi r9, r8, lbl_80372334@l
/* 80371F48 0036EE88 39 07 23 2C */ addi r8, r7, lbl_8037232C@l
/* 80371F4C 0036EE8C 38 E6 23 4C */ addi r7, r6, lbl_8037234C@l
/* 80371F50 0036EE90 38 C5 23 24 */ addi r6, r5, lbl_80372324@l
/* 80371F54 0036EE94 38 A4 23 1C */ addi r5, r4, lbl_8037231C@l
/* 80371F58 0036EE98 38 83 23 14 */ addi r4, r3, lbl_80372314@l
/* 80371F5C 0036EE9C 38 00 00 00 */ li r0, 0
/* 80371F60 0036EEA0 9B BF 00 00 */ stb r29, 0(r31)
/* 80371F64 0036EEA4 38 60 00 00 */ li r3, 0
/* 80371F68 0036EEA8 93 CC 00 00 */ stw r30, 0(r12)
/* 80371F6C 0036EEAC 91 6C 00 18 */ stw r11, 0x18(r12)
/* 80371F70 0036EEB0 91 4C 00 1C */ stw r10, 0x1c(r12)
/* 80371F74 0036EEB4 91 2C 00 10 */ stw r9, 0x10(r12)
/* 80371F78 0036EEB8 91 0C 00 14 */ stw r8, 0x14(r12)
/* 80371F7C 0036EEBC 90 EC 00 08 */ stw r7, 8(r12)
/* 80371F80 0036EEC0 90 CC 00 0C */ stw r6, 0xc(r12)
/* 80371F84 0036EEC4 90 AC 00 20 */ stw r5, 0x20(r12)
/* 80371F88 0036EEC8 90 8C 00 24 */ stw r4, 0x24(r12)
/* 80371F8C 0036EECC 90 0C 00 04 */ stw r0, 4(r12)
/* 80371F90 0036EED0 48 00 01 68 */ b lbl_803720F8
lbl_80371F94:
/* 80371F94 0036EED4 2C 1E 00 01 */ cmpwi r30, 1
/* 80371F98 0036EED8 40 82 00 98 */ bne lbl_80372030
/* 80371F9C 0036EEDC 38 7D 00 38 */ addi r3, r29, 0x38
/* 80371FA0 0036EEE0 4C C6 31 82 */ crclr 6
/* 80371FA4 0036EEE4 4B C9 4B 19 */ bl OSReport
/* 80371FA8 0036EEE8 48 00 18 05 */ bl func_803737AC
/* 80371FAC 0036EEEC 3F E0 80 37 */ lis r31, lbl_80372BCC@ha
/* 80371FB0 0036EEF0 3D 80 80 37 */ lis r12, lbl_80372BA0@ha
/* 80371FB4 0036EEF4 3B FF 2B CC */ addi r31, r31, lbl_80372BCC@l
/* 80371FB8 0036EEF8 3F C0 80 3D */ lis r30, lbl_803D32A8@ha
/* 80371FBC 0036EEFC 3D 60 80 37 */ lis r11, lbl_80372B98@ha
/* 80371FC0 0036EF00 3D 40 80 37 */ lis r10, lbl_80372AA4@ha
/* 80371FC4 0036EF04 3D 20 80 37 */ lis r9, lbl_803729E4@ha
/* 80371FC8 0036EF08 3D 00 80 37 */ lis r8, lbl_80372BC4@ha
/* 80371FCC 0036EF0C 3C E0 80 37 */ lis r7, lbl_8037292C@ha
/* 80371FD0 0036EF10 3C C0 80 37 */ lis r6, lbl_803729C0@ha
/* 80371FD4 0036EF14 3C A0 80 37 */ lis r5, lbl_8037299C@ha
/* 80371FD8 0036EF18 3C 80 80 37 */ lis r4, lbl_80372908@ha
/* 80371FDC 0036EF1C 97 FE 32 A8 */ stwu r31, lbl_803D32A8@l(r30)
/* 80371FE0 0036EF20 39 8C 2B A0 */ addi r12, r12, lbl_80372BA0@l
/* 80371FE4 0036EF24 39 6B 2B 98 */ addi r11, r11, lbl_80372B98@l
/* 80371FE8 0036EF28 39 4A 2A A4 */ addi r10, r10, lbl_80372AA4@l
/* 80371FEC 0036EF2C 39 29 29 E4 */ addi r9, r9, lbl_803729E4@l
/* 80371FF0 0036EF30 39 08 2B C4 */ addi r8, r8, lbl_80372BC4@l
/* 80371FF4 0036EF34 38 E7 29 2C */ addi r7, r7, lbl_8037292C@l
/* 80371FF8 0036EF38 38 C6 29 C0 */ addi r6, r6, lbl_803729C0@l
/* 80371FFC 0036EF3C 38 A5 29 9C */ addi r5, r5, lbl_8037299C@l
/* 80372000 0036EF40 38 04 29 08 */ addi r0, r4, lbl_80372908@l
/* 80372004 0036EF44 91 9E 00 18 */ stw r12, 0x18(r30)
/* 80372008 0036EF48 7C 7F 1B 78 */ mr r31, r3
/* 8037200C 0036EF4C 91 7E 00 1C */ stw r11, 0x1c(r30)
/* 80372010 0036EF50 91 5E 00 10 */ stw r10, 0x10(r30)
/* 80372014 0036EF54 91 3E 00 14 */ stw r9, 0x14(r30)
/* 80372018 0036EF58 91 1E 00 08 */ stw r8, 8(r30)
/* 8037201C 0036EF5C 90 FE 00 0C */ stw r7, 0xc(r30)
/* 80372020 0036EF60 90 DE 00 20 */ stw r6, 0x20(r30)
/* 80372024 0036EF64 90 BE 00 24 */ stw r5, 0x24(r30)
/* 80372028 0036EF68 90 1E 00 04 */ stw r0, 4(r30)
/* 8037202C 0036EF6C 48 00 00 C8 */ b lbl_803720F4
lbl_80372030:
/* 80372030 0036EF70 2C 1E 00 00 */ cmpwi r30, 0
/* 80372034 0036EF74 40 82 00 98 */ bne lbl_803720CC
/* 80372038 0036EF78 38 7D 00 5C */ addi r3, r29, 0x5c
/* 8037203C 0036EF7C 4C C6 31 82 */ crclr 6
/* 80372040 0036EF80 4B C9 4A 7D */ bl OSReport
/* 80372044 0036EF84 48 00 0C E1 */ bl func_80372D24
/* 80372048 0036EF88 3F E0 80 37 */ lis r31, lbl_80372618@ha
/* 8037204C 0036EF8C 3D 80 80 37 */ lis r12, lbl_803725EC@ha
/* 80372050 0036EF90 3B FF 26 18 */ addi r31, r31, lbl_80372618@l
/* 80372054 0036EF94 3F C0 80 3D */ lis r30, lbl_803D32A8@ha
/* 80372058 0036EF98 3D 60 80 37 */ lis r11, lbl_803725E4@ha
/* 8037205C 0036EF9C 3D 40 80 37 */ lis r10, lbl_803724F8@ha
/* 80372060 0036EFA0 3D 20 80 37 */ lis r9, lbl_80372438@ha
/* 80372064 0036EFA4 3D 00 80 37 */ lis r8, lbl_80372610@ha
/* 80372068 0036EFA8 3C E0 80 37 */ lis r7, lbl_80372380@ha
/* 8037206C 0036EFAC 3C C0 80 37 */ lis r6, lbl_80372414@ha
/* 80372070 0036EFB0 3C A0 80 37 */ lis r5, lbl_803723F0@ha
/* 80372074 0036EFB4 3C 80 80 37 */ lis r4, lbl_8037235C@ha
/* 80372078 0036EFB8 97 FE 32 A8 */ stwu r31, lbl_803D32A8@l(r30)
/* 8037207C 0036EFBC 39 8C 25 EC */ addi r12, r12, lbl_803725EC@l
/* 80372080 0036EFC0 39 6B 25 E4 */ addi r11, r11, lbl_803725E4@l
/* 80372084 0036EFC4 39 4A 24 F8 */ addi r10, r10, lbl_803724F8@l
/* 80372088 0036EFC8 39 29 24 38 */ addi r9, r9, lbl_80372438@l
/* 8037208C 0036EFCC 39 08 26 10 */ addi r8, r8, lbl_80372610@l
/* 80372090 0036EFD0 38 E7 23 80 */ addi r7, r7, lbl_80372380@l
/* 80372094 0036EFD4 38 C6 24 14 */ addi r6, r6, lbl_80372414@l
/* 80372098 0036EFD8 38 A5 23 F0 */ addi r5, r5, lbl_803723F0@l
/* 8037209C 0036EFDC 38 04 23 5C */ addi r0, r4, lbl_8037235C@l
/* 803720A0 0036EFE0 91 9E 00 18 */ stw r12, 0x18(r30)
/* 803720A4 0036EFE4 7C 7F 1B 78 */ mr r31, r3
/* 803720A8 0036EFE8 91 7E 00 1C */ stw r11, 0x1c(r30)
/* 803720AC 0036EFEC 91 5E 00 10 */ stw r10, 0x10(r30)
/* 803720B0 0036EFF0 91 3E 00 14 */ stw r9, 0x14(r30)
/* 803720B4 0036EFF4 91 1E 00 08 */ stw r8, 8(r30)
/* 803720B8 0036EFF8 90 FE 00 0C */ stw r7, 0xc(r30)
/* 803720BC 0036EFFC 90 DE 00 20 */ stw r6, 0x20(r30)
/* 803720C0 0036F000 90 BE 00 24 */ stw r5, 0x24(r30)
/* 803720C4 0036F004 90 1E 00 04 */ stw r0, 4(r30)
/* 803720C8 0036F008 48 00 00 2C */ b lbl_803720F4
lbl_803720CC:
/* 803720CC 0036F00C 7F C4 F3 78 */ mr r4, r30
/* 803720D0 0036F010 38 7D 00 80 */ addi r3, r29, 0x80
/* 803720D4 0036F014 4C C6 31 82 */ crclr 6
/* 803720D8 0036F018 4B C9 49 E5 */ bl OSReport
/* 803720DC 0036F01C 38 7D 00 AC */ addi r3, r29, 0xac
/* 803720E0 0036F020 4C C6 31 82 */ crclr 6
/* 803720E4 0036F024 4B C9 49 D9 */ bl OSReport
/* 803720E8 0036F028 38 7D 00 DC */ addi r3, r29, 0xdc
/* 803720EC 0036F02C 4C C6 31 82 */ crclr 6
/* 803720F0 0036F030 4B C9 49 CD */ bl OSReport
lbl_803720F4:
/* 803720F4 0036F034 7F E3 FB 78 */ mr r3, r31
lbl_803720F8:
/* 803720F8 0036F038 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803720FC 0036F03C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80372100 0036F040 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80372104 0036F044 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80372108 0036F048 7C 08 03 A6 */ mtlr r0
/* 8037210C 0036F04C 38 21 00 20 */ addi r1, r1, 0x20
/* 80372110 0036F050 4E 80 00 20 */ blr
lbl_80372114:
/* 80372114 0036F054 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372118 0036F058 7C 08 02 A6 */ mflr r0
/* 8037211C 0036F05C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372120 0036F060 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80372124 0036F064 7C 9F 23 78 */ mr r31, r4
/* 80372128 0036F068 4B FC EB DD */ bl OSEnableScheduler
/* 8037212C 0036F06C 7F E3 FB 78 */ mr r3, r31
/* 80372130 0036F070 38 80 05 00 */ li r4, 0x500
/* 80372134 0036F074 4B FF FA C1 */ bl func_80371BF4
/* 80372138 0036F078 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8037213C 0036F07C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372140 0036F080 7C 08 03 A6 */ mtlr r0
/* 80372144 0036F084 38 21 00 10 */ addi r1, r1, 0x10
/* 80372148 0036F088 4E 80 00 20 */ blr
.global func_8037214C
func_8037214C:
/* 8037214C 0036F08C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372150 0036F090 7C 08 02 A6 */ mflr r0
/* 80372154 0036F094 38 60 00 00 */ li r3, 0
/* 80372158 0036F098 90 01 00 14 */ stw r0, 0x14(r1)
/* 8037215C 0036F09C 4B FF D9 A5 */ bl func_8036FB00
/* 80372160 0036F0A0 4B FF FB A9 */ bl func_80371D08
/* 80372164 0036F0A4 4B FF D7 51 */ bl func_8036F8B4
/* 80372168 0036F0A8 4B FF FB D1 */ bl func_80371D38
/* 8037216C 0036F0AC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372170 0036F0B0 38 60 00 00 */ li r3, 0
/* 80372174 0036F0B4 7C 08 03 A6 */ mtlr r0
/* 80372178 0036F0B8 38 21 00 10 */ addi r1, r1, 0x10
/* 8037217C 0036F0BC 4E 80 00 20 */ blr
.global func_80372180
func_80372180:
/* 80372180 0036F0C0 3C 60 80 45 */ lis r3, lbl_8044F828@ha
/* 80372184 0036F0C4 38 63 F8 28 */ addi r3, r3, lbl_8044F828@l
/* 80372188 0036F0C8 88 63 00 00 */ lbz r3, 0(r3)
/* 8037218C 0036F0CC 4E 80 00 20 */ blr
.global func_80372190
func_80372190:
/* 80372190 0036F0D0 3C 80 80 45 */ lis r4, lbl_8044F828@ha
/* 80372194 0036F0D4 98 64 F8 28 */ stb r3, lbl_8044F828@l(r4)
/* 80372198 0036F0D8 4E 80 00 20 */ blr
.global func_8037219C
func_8037219C:
/* 8037219C 0036F0DC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803721A0 0036F0E0 7C 08 02 A6 */ mflr r0
/* 803721A4 0036F0E4 90 01 00 24 */ stw r0, 0x24(r1)
/* 803721A8 0036F0E8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803721AC 0036F0EC 7C BF 2B 78 */ mr r31, r5
/* 803721B0 0036F0F0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803721B4 0036F0F4 7C 9E 23 78 */ mr r30, r4
/* 803721B8 0036F0F8 4B FF FF C9 */ bl func_80372180
/* 803721BC 0036F0FC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 803721C0 0036F100 40 82 00 0C */ bne lbl_803721CC
/* 803721C4 0036F104 38 60 00 01 */ li r3, 1
/* 803721C8 0036F108 48 00 00 78 */ b lbl_80372240
lbl_803721CC:
/* 803721CC 0036F10C 4B FF CB 01 */ bl func_8036ECCC
/* 803721D0 0036F110 2C 03 00 00 */ cmpwi r3, 0
/* 803721D4 0036F114 40 82 00 0C */ bne lbl_803721E0
/* 803721D8 0036F118 38 60 00 01 */ li r3, 1
/* 803721DC 0036F11C 48 00 00 64 */ b lbl_80372240
lbl_803721E0:
/* 803721E0 0036F120 80 1F 00 00 */ lwz r0, 0(r31)
/* 803721E4 0036F124 7F C6 F3 78 */ mr r6, r30
/* 803721E8 0036F128 38 A1 00 08 */ addi r5, r1, 8
/* 803721EC 0036F12C 38 60 00 D0 */ li r3, 0xd0
/* 803721F0 0036F130 90 01 00 08 */ stw r0, 8(r1)
/* 803721F4 0036F134 38 80 00 01 */ li r4, 1
/* 803721F8 0036F138 4B FF EF D9 */ bl func_803711D0
/* 803721FC 0036F13C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80372200 0036F140 80 61 00 08 */ lwz r3, 8(r1)
/* 80372204 0036F144 2C 00 00 01 */ cmpwi r0, 1
/* 80372208 0036F148 90 7F 00 00 */ stw r3, 0(r31)
/* 8037220C 0036F14C 41 82 00 30 */ beq lbl_8037223C
/* 80372210 0036F150 40 80 00 10 */ bge lbl_80372220
/* 80372214 0036F154 2C 00 00 00 */ cmpwi r0, 0
/* 80372218 0036F158 40 80 00 14 */ bge lbl_8037222C
/* 8037221C 0036F15C 48 00 00 20 */ b lbl_8037223C
lbl_80372220:
/* 80372220 0036F160 2C 00 00 03 */ cmpwi r0, 3
/* 80372224 0036F164 40 80 00 18 */ bge lbl_8037223C
/* 80372228 0036F168 48 00 00 0C */ b lbl_80372234
lbl_8037222C:
/* 8037222C 0036F16C 38 60 00 00 */ li r3, 0
/* 80372230 0036F170 48 00 00 10 */ b lbl_80372240
lbl_80372234:
/* 80372234 0036F174 38 60 00 02 */ li r3, 2
/* 80372238 0036F178 48 00 00 08 */ b lbl_80372240
lbl_8037223C:
/* 8037223C 0036F17C 38 60 00 01 */ li r3, 1
lbl_80372240:
/* 80372240 0036F180 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80372244 0036F184 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80372248 0036F188 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8037224C 0036F18C 7C 08 03 A6 */ mtlr r0
/* 80372250 0036F190 38 21 00 20 */ addi r1, r1, 0x20
/* 80372254 0036F194 4E 80 00 20 */ blr
/* 80372258 0036F198 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8037225C 0036F19C 7C 08 02 A6 */ mflr r0
/* 80372260 0036F1A0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80372264 0036F1A4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80372268 0036F1A8 7C BF 2B 78 */ mr r31, r5
/* 8037226C 0036F1AC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80372270 0036F1B0 7C 9E 23 78 */ mr r30, r4
/* 80372274 0036F1B4 4B FF FF 0D */ bl func_80372180
/* 80372278 0036F1B8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8037227C 0036F1BC 40 82 00 0C */ bne lbl_80372288
/* 80372280 0036F1C0 38 60 00 01 */ li r3, 1
/* 80372284 0036F1C4 48 00 00 78 */ b lbl_803722FC
lbl_80372288:
/* 80372288 0036F1C8 4B FF CA 45 */ bl func_8036ECCC
/* 8037228C 0036F1CC 2C 03 00 00 */ cmpwi r3, 0
/* 80372290 0036F1D0 40 82 00 0C */ bne lbl_8037229C
/* 80372294 0036F1D4 38 60 00 01 */ li r3, 1
/* 80372298 0036F1D8 48 00 00 64 */ b lbl_803722FC
lbl_8037229C:
/* 8037229C 0036F1DC 80 1F 00 00 */ lwz r0, 0(r31)
/* 803722A0 0036F1E0 7F C6 F3 78 */ mr r6, r30
/* 803722A4 0036F1E4 38 A1 00 08 */ addi r5, r1, 8
/* 803722A8 0036F1E8 38 60 00 D1 */ li r3, 0xd1
/* 803722AC 0036F1EC 90 01 00 08 */ stw r0, 8(r1)
/* 803722B0 0036F1F0 38 80 00 00 */ li r4, 0
/* 803722B4 0036F1F4 4B FF EF 1D */ bl func_803711D0
/* 803722B8 0036F1F8 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 803722BC 0036F1FC 80 61 00 08 */ lwz r3, 8(r1)
/* 803722C0 0036F200 2C 00 00 01 */ cmpwi r0, 1
/* 803722C4 0036F204 90 7F 00 00 */ stw r3, 0(r31)
/* 803722C8 0036F208 41 82 00 30 */ beq lbl_803722F8
/* 803722CC 0036F20C 40 80 00 10 */ bge lbl_803722DC
/* 803722D0 0036F210 2C 00 00 00 */ cmpwi r0, 0
/* 803722D4 0036F214 40 80 00 14 */ bge lbl_803722E8
/* 803722D8 0036F218 48 00 00 20 */ b lbl_803722F8
lbl_803722DC:
/* 803722DC 0036F21C 2C 00 00 03 */ cmpwi r0, 3
/* 803722E0 0036F220 40 80 00 18 */ bge lbl_803722F8
/* 803722E4 0036F224 48 00 00 0C */ b lbl_803722F0
lbl_803722E8:
/* 803722E8 0036F228 38 60 00 00 */ li r3, 0
/* 803722EC 0036F22C 48 00 00 10 */ b lbl_803722FC
lbl_803722F0:
/* 803722F0 0036F230 38 60 00 02 */ li r3, 2
/* 803722F4 0036F234 48 00 00 08 */ b lbl_803722FC
lbl_803722F8:
/* 803722F8 0036F238 38 60 00 01 */ li r3, 1
lbl_803722FC:
/* 803722FC 0036F23C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80372300 0036F240 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80372304 0036F244 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80372308 0036F248 7C 08 03 A6 */ mtlr r0
/* 8037230C 0036F24C 38 21 00 20 */ addi r1, r1, 0x20
/* 80372310 0036F250 4E 80 00 20 */ blr
lbl_80372314:
/* 80372314 0036F254 38 60 FF FF */ li r3, -1
/* 80372318 0036F258 4E 80 00 20 */ blr
lbl_8037231C:
/* 8037231C 0036F25C 38 60 FF FF */ li r3, -1
/* 80372320 0036F260 4E 80 00 20 */ blr
lbl_80372324:
/* 80372324 0036F264 38 60 00 00 */ li r3, 0
/* 80372328 0036F268 4E 80 00 20 */ blr
lbl_8037232C:
/* 8037232C 0036F26C 38 60 00 00 */ li r3, 0
/* 80372330 0036F270 4E 80 00 20 */ blr
lbl_80372334:
/* 80372334 0036F274 38 60 00 00 */ li r3, 0
/* 80372338 0036F278 4E 80 00 20 */ blr
lbl_8037233C:
/* 8037233C 0036F27C 38 60 FF FF */ li r3, -1
/* 80372340 0036F280 4E 80 00 20 */ blr
lbl_80372344:
/* 80372344 0036F284 38 60 FF FF */ li r3, -1
/* 80372348 0036F288 4E 80 00 20 */ blr
lbl_8037234C:
/* 8037234C 0036F28C 38 60 FF FF */ li r3, -1
/* 80372350 0036F290 4E 80 00 20 */ blr
lbl_80372354:
/* 80372354 0036F294 38 60 FF FF */ li r3, -1
/* 80372358 0036F298 4E 80 00 20 */ blr
lbl_8037235C:
/* 8037235C 0036F29C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372360 0036F2A0 7C 08 02 A6 */ mflr r0
/* 80372364 0036F2A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372368 0036F2A8 48 00 09 99 */ bl func_80372D00
/* 8037236C 0036F2AC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372370 0036F2B0 38 60 00 00 */ li r3, 0
/* 80372374 0036F2B4 7C 08 03 A6 */ mtlr r0
/* 80372378 0036F2B8 38 21 00 10 */ addi r1, r1, 0x10
/* 8037237C 0036F2BC 4E 80 00 20 */ blr
lbl_80372380:
/* 80372380 0036F2C0 94 21 F7 F0 */ stwu r1, -0x810(r1)
/* 80372384 0036F2C4 7C 08 02 A6 */ mflr r0
/* 80372388 0036F2C8 90 01 08 14 */ stw r0, 0x814(r1)
/* 8037238C 0036F2CC 93 E1 08 0C */ stw r31, 0x80c(r1)
/* 80372390 0036F2D0 48 00 09 75 */ bl func_80372D04
/* 80372394 0036F2D4 7C 7F 1B 79 */ or. r31, r3, r3
/* 80372398 0036F2D8 41 81 00 0C */ bgt lbl_803723A4
/* 8037239C 0036F2DC 38 60 00 00 */ li r3, 0
/* 803723A0 0036F2E0 48 00 00 3C */ b lbl_803723DC
lbl_803723A4:
/* 803723A4 0036F2E4 7F E4 FB 78 */ mr r4, r31
/* 803723A8 0036F2E8 38 61 00 08 */ addi r3, r1, 8
/* 803723AC 0036F2EC 48 00 09 61 */ bl func_80372D0C
/* 803723B0 0036F2F0 2C 03 00 00 */ cmpwi r3, 0
/* 803723B4 0036F2F4 40 82 00 1C */ bne lbl_803723D0
/* 803723B8 0036F2F8 3C 60 80 45 */ lis r3, lbl_80450030@ha
/* 803723BC 0036F2FC 7F E5 FB 78 */ mr r5, r31
/* 803723C0 0036F300 38 63 00 30 */ addi r3, r3, lbl_80450030@l
/* 803723C4 0036F304 38 81 00 08 */ addi r4, r1, 8
/* 803723C8 0036F308 48 00 03 E1 */ bl func_803727A8
/* 803723CC 0036F30C 48 00 00 0C */ b lbl_803723D8
lbl_803723D0:
/* 803723D0 0036F310 38 60 D8 E7 */ li r3, -10009
/* 803723D4 0036F314 48 00 00 08 */ b lbl_803723DC
lbl_803723D8:
/* 803723D8 0036F318 7F E3 FB 78 */ mr r3, r31
lbl_803723DC:
/* 803723DC 0036F31C 80 01 08 14 */ lwz r0, 0x814(r1)
/* 803723E0 0036F320 83 E1 08 0C */ lwz r31, 0x80c(r1)
/* 803723E4 0036F324 7C 08 03 A6 */ mtlr r0
/* 803723E8 0036F328 38 21 08 10 */ addi r1, r1, 0x810
/* 803723EC 0036F32C 4E 80 00 20 */ blr
lbl_803723F0:
/* 803723F0 0036F330 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803723F4 0036F334 7C 08 02 A6 */ mflr r0
/* 803723F8 0036F338 90 01 00 14 */ stw r0, 0x14(r1)
/* 803723FC 0036F33C 48 00 09 21 */ bl func_80372D1C
/* 80372400 0036F340 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372404 0036F344 38 60 00 00 */ li r3, 0
/* 80372408 0036F348 7C 08 03 A6 */ mtlr r0
/* 8037240C 0036F34C 38 21 00 10 */ addi r1, r1, 0x10
/* 80372410 0036F350 4E 80 00 20 */ blr
lbl_80372414:
/* 80372414 0036F354 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372418 0036F358 7C 08 02 A6 */ mflr r0
/* 8037241C 0036F35C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372420 0036F360 48 00 09 01 */ bl func_80372D20
/* 80372424 0036F364 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372428 0036F368 38 60 00 00 */ li r3, 0
/* 8037242C 0036F36C 7C 08 03 A6 */ mtlr r0
/* 80372430 0036F370 38 21 00 10 */ addi r1, r1, 0x10
/* 80372434 0036F374 4E 80 00 20 */ blr
lbl_80372438:
/* 80372438 0036F378 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8037243C 0036F37C 7C 08 02 A6 */ mflr r0
/* 80372440 0036F380 3C A0 80 3A */ lis r5, lbl_803A2D10@ha
/* 80372444 0036F384 90 01 00 24 */ stw r0, 0x24(r1)
/* 80372448 0036F388 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8037244C 0036F38C 3B E5 2D 10 */ addi r31, r5, lbl_803A2D10@l
/* 80372450 0036F390 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80372454 0036F394 7C 9E 23 78 */ mr r30, r4
/* 80372458 0036F398 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8037245C 0036F39C 7C 7D 1B 78 */ mr r29, r3
/* 80372460 0036F3A0 80 0D 94 40 */ lwz r0, lbl_804519C0-_SDA_BASE_(r13)
/* 80372464 0036F3A4 2C 00 00 00 */ cmpwi r0, 0
/* 80372468 0036F3A8 40 82 00 1C */ bne lbl_80372484
/* 8037246C 0036F3AC 38 9F 00 00 */ addi r4, r31, 0
/* 80372470 0036F3B0 38 60 00 08 */ li r3, 8
/* 80372474 0036F3B4 4C C6 31 82 */ crclr 6
/* 80372478 0036F3B8 48 00 07 DD */ bl func_80372C54
/* 8037247C 0036F3BC 38 60 D8 EF */ li r3, -10001
/* 80372480 0036F3C0 48 00 00 5C */ b lbl_803724DC
lbl_80372484:
/* 80372484 0036F3C4 7C 65 1B 78 */ mr r5, r3
/* 80372488 0036F3C8 7C 86 23 78 */ mr r6, r4
/* 8037248C 0036F3CC 38 9F 00 14 */ addi r4, r31, 0x14
/* 80372490 0036F3D0 38 60 00 08 */ li r3, 8
/* 80372494 0036F3D4 4C C6 31 82 */ crclr 6
/* 80372498 0036F3D8 48 00 07 BD */ bl func_80372C54
/* 8037249C 0036F3DC 48 00 00 34 */ b lbl_803724D0
lbl_803724A0:
/* 803724A0 0036F3E0 7F C5 F3 78 */ mr r5, r30
/* 803724A4 0036F3E4 38 9F 00 40 */ addi r4, r31, 0x40
/* 803724A8 0036F3E8 38 60 00 01 */ li r3, 1
/* 803724AC 0036F3EC 4C C6 31 82 */ crclr 6
/* 803724B0 0036F3F0 48 00 07 A5 */ bl func_80372C54
/* 803724B4 0036F3F4 7F A3 EB 78 */ mr r3, r29
/* 803724B8 0036F3F8 7F C4 F3 78 */ mr r4, r30
/* 803724BC 0036F3FC 48 00 08 59 */ bl func_80372D14
/* 803724C0 0036F400 2C 03 00 00 */ cmpwi r3, 0
/* 803724C4 0036F404 41 82 00 14 */ beq lbl_803724D8
/* 803724C8 0036F408 7F BD 1A 14 */ add r29, r29, r3
/* 803724CC 0036F40C 7F C3 F0 50 */ subf r30, r3, r30
lbl_803724D0:
/* 803724D0 0036F410 2C 1E 00 00 */ cmpwi r30, 0
/* 803724D4 0036F414 41 81 FF CC */ bgt lbl_803724A0
lbl_803724D8:
/* 803724D8 0036F418 38 60 00 00 */ li r3, 0
lbl_803724DC:
/* 803724DC 0036F41C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803724E0 0036F420 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803724E4 0036F424 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803724E8 0036F428 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803724EC 0036F42C 7C 08 03 A6 */ mtlr r0
/* 803724F0 0036F430 38 21 00 20 */ addi r1, r1, 0x20
/* 803724F4 0036F434 4E 80 00 20 */ blr
lbl_803724F8:
/* 803724F8 0036F438 94 21 F7 E0 */ stwu r1, -0x820(r1)
/* 803724FC 0036F43C 7C 08 02 A6 */ mflr r0
/* 80372500 0036F440 90 01 08 24 */ stw r0, 0x824(r1)
/* 80372504 0036F444 BF 61 08 0C */ stmw r27, 0x80c(r1)
/* 80372508 0036F448 7C 7B 1B 78 */ mr r27, r3
/* 8037250C 0036F44C 7C 9E 23 78 */ mr r30, r4
/* 80372510 0036F450 3B A0 00 00 */ li r29, 0
/* 80372514 0036F454 80 0D 94 40 */ lwz r0, lbl_804519C0-_SDA_BASE_(r13)
/* 80372518 0036F458 2C 00 00 00 */ cmpwi r0, 0
/* 8037251C 0036F45C 40 82 00 0C */ bne lbl_80372528
/* 80372520 0036F460 38 60 D8 EF */ li r3, -10001
/* 80372524 0036F464 48 00 00 AC */ b lbl_803725D0
lbl_80372528:
/* 80372528 0036F468 3C 60 80 3A */ lis r3, lbl_803A2D6C@ha
/* 8037252C 0036F46C 7F C5 F3 78 */ mr r5, r30
/* 80372530 0036F470 38 83 2D 6C */ addi r4, r3, lbl_803A2D6C@l
/* 80372534 0036F474 7F C6 F3 78 */ mr r6, r30
/* 80372538 0036F478 38 60 00 01 */ li r3, 1
/* 8037253C 0036F47C 4C C6 31 82 */ crclr 6
/* 80372540 0036F480 48 00 07 15 */ bl func_80372C54
/* 80372544 0036F484 3C 60 80 45 */ lis r3, lbl_80450030@ha
/* 80372548 0036F488 3B E3 00 30 */ addi r31, r3, lbl_80450030@l
/* 8037254C 0036F48C 48 00 00 38 */ b lbl_80372584
lbl_80372550:
/* 80372550 0036F490 3B A0 00 00 */ li r29, 0
/* 80372554 0036F494 48 00 07 B1 */ bl func_80372D04
/* 80372558 0036F498 7C 7C 1B 79 */ or. r28, r3, r3
/* 8037255C 0036F49C 41 82 00 28 */ beq lbl_80372584
/* 80372560 0036F4A0 7F 84 E3 78 */ mr r4, r28
/* 80372564 0036F4A4 38 61 00 08 */ addi r3, r1, 8
/* 80372568 0036F4A8 48 00 07 A5 */ bl func_80372D0C
/* 8037256C 0036F4AC 7C 7D 1B 79 */ or. r29, r3, r3
/* 80372570 0036F4B0 40 82 00 14 */ bne lbl_80372584
/* 80372574 0036F4B4 7F E3 FB 78 */ mr r3, r31
/* 80372578 0036F4B8 7F 85 E3 78 */ mr r5, r28
/* 8037257C 0036F4BC 38 81 00 08 */ addi r4, r1, 8
/* 80372580 0036F4C0 48 00 02 29 */ bl func_803727A8
lbl_80372584:
/* 80372584 0036F4C4 7F E3 FB 78 */ mr r3, r31
/* 80372588 0036F4C8 48 00 03 79 */ bl func_80372900
/* 8037258C 0036F4CC 7C 03 F0 40 */ cmplw r3, r30
/* 80372590 0036F4D0 41 80 FF C0 */ blt lbl_80372550
/* 80372594 0036F4D4 28 1D 00 00 */ cmplwi r29, 0
/* 80372598 0036F4D8 40 82 00 1C */ bne lbl_803725B4
/* 8037259C 0036F4DC 3C 60 80 45 */ lis r3, lbl_80450030@ha
/* 803725A0 0036F4E0 7F 64 DB 78 */ mr r4, r27
/* 803725A4 0036F4E4 38 63 00 30 */ addi r3, r3, lbl_80450030@l
/* 803725A8 0036F4E8 7F C5 F3 78 */ mr r5, r30
/* 803725AC 0036F4EC 48 00 00 F5 */ bl func_803726A0
/* 803725B0 0036F4F0 48 00 00 1C */ b lbl_803725CC
lbl_803725B4:
/* 803725B4 0036F4F4 3C 60 80 3A */ lis r3, lbl_803A2D94@ha
/* 803725B8 0036F4F8 7F A5 EB 78 */ mr r5, r29
/* 803725BC 0036F4FC 38 83 2D 94 */ addi r4, r3, lbl_803A2D94@l
/* 803725C0 0036F500 38 60 00 08 */ li r3, 8
/* 803725C4 0036F504 4C C6 31 82 */ crclr 6
/* 803725C8 0036F508 48 00 06 8D */ bl func_80372C54
lbl_803725CC:
/* 803725CC 0036F50C 7F A3 EB 78 */ mr r3, r29
lbl_803725D0:
/* 803725D0 0036F510 BB 61 08 0C */ lmw r27, 0x80c(r1)
/* 803725D4 0036F514 80 01 08 24 */ lwz r0, 0x824(r1)
/* 803725D8 0036F518 7C 08 03 A6 */ mtlr r0
/* 803725DC 0036F51C 38 21 08 20 */ addi r1, r1, 0x820
/* 803725E0 0036F520 4E 80 00 20 */ blr
lbl_803725E4:
/* 803725E4 0036F524 38 60 00 00 */ li r3, 0
/* 803725E8 0036F528 4E 80 00 20 */ blr
lbl_803725EC:
/* 803725EC 0036F52C 80 0D 94 40 */ lwz r0, lbl_804519C0-_SDA_BASE_(r13)
/* 803725F0 0036F530 2C 00 00 00 */ cmpwi r0, 0
/* 803725F4 0036F534 41 82 00 0C */ beq lbl_80372600
/* 803725F8 0036F538 38 60 D8 EB */ li r3, -10005
/* 803725FC 0036F53C 4E 80 00 20 */ blr
lbl_80372600:
/* 80372600 0036F540 38 00 00 01 */ li r0, 1
/* 80372604 0036F544 38 60 00 00 */ li r3, 0
/* 80372608 0036F548 90 0D 94 40 */ stw r0, lbl_804519C0-_SDA_BASE_(r13)
/* 8037260C 0036F54C 4E 80 00 20 */ blr
lbl_80372610:
/* 80372610 0036F550 38 60 00 00 */ li r3, 0
/* 80372614 0036F554 4E 80 00 20 */ blr
lbl_80372618:
/* 80372618 0036F558 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8037261C 0036F55C 7C 08 02 A6 */ mflr r0
/* 80372620 0036F560 3C A0 80 3A */ lis r5, lbl_803A2DC4@ha
/* 80372624 0036F564 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372628 0036F568 38 05 2D C4 */ addi r0, r5, lbl_803A2DC4@l
/* 8037262C 0036F56C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80372630 0036F570 7C 9F 23 78 */ mr r31, r4
/* 80372634 0036F574 7C 04 03 78 */ mr r4, r0
/* 80372638 0036F578 93 C1 00 08 */ stw r30, 8(r1)
/* 8037263C 0036F57C 7C 7E 1B 78 */ mr r30, r3
/* 80372640 0036F580 38 60 00 01 */ li r3, 1
/* 80372644 0036F584 4C C6 31 82 */ crclr 6
/* 80372648 0036F588 48 00 06 0D */ bl func_80372C54
/* 8037264C 0036F58C 7F C3 F3 78 */ mr r3, r30
/* 80372650 0036F590 7F E4 FB 78 */ mr r4, r31
/* 80372654 0036F594 48 00 06 A9 */ bl func_80372CFC
/* 80372658 0036F598 3C 80 80 3A */ lis r4, lbl_803A2DD8@ha
/* 8037265C 0036F59C 38 60 00 01 */ li r3, 1
/* 80372660 0036F5A0 38 84 2D D8 */ addi r4, r4, lbl_803A2DD8@l
/* 80372664 0036F5A4 4C C6 31 82 */ crclr 6
/* 80372668 0036F5A8 48 00 05 ED */ bl func_80372C54
/* 8037266C 0036F5AC 3C 60 80 45 */ lis r3, lbl_80450030@ha
/* 80372670 0036F5B0 3C 80 80 45 */ lis r4, lbl_8044F830@ha
/* 80372674 0036F5B4 38 63 00 30 */ addi r3, r3, lbl_80450030@l
/* 80372678 0036F5B8 38 A0 08 00 */ li r5, 0x800
/* 8037267C 0036F5BC 38 84 F8 30 */ addi r4, r4, lbl_8044F830@l
/* 80372680 0036F5C0 48 00 02 31 */ bl func_803728B0
/* 80372684 0036F5C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372688 0036F5C8 38 60 00 00 */ li r3, 0
/* 8037268C 0036F5CC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372690 0036F5D0 83 C1 00 08 */ lwz r30, 8(r1)
/* 80372694 0036F5D4 7C 08 03 A6 */ mtlr r0
/* 80372698 0036F5D8 38 21 00 10 */ addi r1, r1, 0x10
/* 8037269C 0036F5DC 4E 80 00 20 */ blr
.global func_803726A0
func_803726A0:
/* 803726A0 0036F5E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803726A4 0036F5E4 7C 08 02 A6 */ mflr r0
/* 803726A8 0036F5E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 803726AC 0036F5EC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803726B0 0036F5F0 7C BF 2B 78 */ mr r31, r5
/* 803726B4 0036F5F4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803726B8 0036F5F8 7C 7E 1B 78 */ mr r30, r3
/* 803726BC 0036F5FC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803726C0 0036F600 93 81 00 10 */ stw r28, 0x10(r1)
/* 803726C4 0036F604 7C 9C 23 78 */ mr r28, r4
/* 803726C8 0036F608 80 03 00 10 */ lwz r0, 0x10(r3)
/* 803726CC 0036F60C 7C 1F 00 40 */ cmplw r31, r0
/* 803726D0 0036F610 40 81 00 0C */ ble lbl_803726DC
/* 803726D4 0036F614 38 60 FF FF */ li r3, -1
/* 803726D8 0036F618 48 00 00 B0 */ b lbl_80372788
lbl_803726DC:
/* 803726DC 0036F61C 38 7E 00 18 */ addi r3, r30, 0x18
/* 803726E0 0036F620 48 00 05 E9 */ bl func_80372CC8
/* 803726E4 0036F624 80 7E 00 08 */ lwz r3, 8(r30)
/* 803726E8 0036F628 80 9E 00 00 */ lwz r4, 0(r30)
/* 803726EC 0036F62C 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 803726F0 0036F630 7C 63 20 50 */ subf r3, r3, r4
/* 803726F4 0036F634 7F A3 00 50 */ subf r29, r3, r0
/* 803726F8 0036F638 7C 1F E8 40 */ cmplw r31, r29
/* 803726FC 0036F63C 40 80 00 20 */ bge lbl_8037271C
/* 80372700 0036F640 7F 83 E3 78 */ mr r3, r28
/* 80372704 0036F644 7F E5 FB 78 */ mr r5, r31
/* 80372708 0036F648 4B C9 0E 39 */ bl memcpy
/* 8037270C 0036F64C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372710 0036F650 7C 00 FA 14 */ add r0, r0, r31
/* 80372714 0036F654 90 1E 00 00 */ stw r0, 0(r30)
/* 80372718 0036F658 48 00 00 30 */ b lbl_80372748
lbl_8037271C:
/* 8037271C 0036F65C 7F 83 E3 78 */ mr r3, r28
/* 80372720 0036F660 7F A5 EB 78 */ mr r5, r29
/* 80372724 0036F664 4B C9 0E 1D */ bl memcpy
/* 80372728 0036F668 80 9E 00 08 */ lwz r4, 8(r30)
/* 8037272C 0036F66C 7C 7C EA 14 */ add r3, r28, r29
/* 80372730 0036F670 7C BD F8 50 */ subf r5, r29, r31
/* 80372734 0036F674 4B C9 0E 0D */ bl memcpy
/* 80372738 0036F678 80 1E 00 08 */ lwz r0, 8(r30)
/* 8037273C 0036F67C 7C 00 FA 14 */ add r0, r0, r31
/* 80372740 0036F680 7C 1D 00 50 */ subf r0, r29, r0
/* 80372744 0036F684 90 1E 00 00 */ stw r0, 0(r30)
lbl_80372748:
/* 80372748 0036F688 80 9E 00 08 */ lwz r4, 8(r30)
/* 8037274C 0036F68C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372750 0036F690 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80372754 0036F694 7C 04 00 50 */ subf r0, r4, r0
/* 80372758 0036F698 7C 03 00 40 */ cmplw r3, r0
/* 8037275C 0036F69C 40 82 00 08 */ bne lbl_80372764
/* 80372760 0036F6A0 90 9E 00 00 */ stw r4, 0(r30)
lbl_80372764:
/* 80372764 0036F6A4 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 80372768 0036F6A8 38 7E 00 18 */ addi r3, r30, 0x18
/* 8037276C 0036F6AC 7C 00 FA 14 */ add r0, r0, r31
/* 80372770 0036F6B0 90 1E 00 14 */ stw r0, 0x14(r30)
/* 80372774 0036F6B4 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 80372778 0036F6B8 7C 1F 00 50 */ subf r0, r31, r0
/* 8037277C 0036F6BC 90 1E 00 10 */ stw r0, 0x10(r30)
/* 80372780 0036F6C0 48 00 05 25 */ bl func_80372CA4
/* 80372784 0036F6C4 38 60 00 00 */ li r3, 0
lbl_80372788:
/* 80372788 0036F6C8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8037278C 0036F6CC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80372790 0036F6D0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80372794 0036F6D4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80372798 0036F6D8 83 81 00 10 */ lwz r28, 0x10(r1)
/* 8037279C 0036F6DC 7C 08 03 A6 */ mtlr r0
/* 803727A0 0036F6E0 38 21 00 20 */ addi r1, r1, 0x20
/* 803727A4 0036F6E4 4E 80 00 20 */ blr
.global func_803727A8
func_803727A8:
/* 803727A8 0036F6E8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803727AC 0036F6EC 7C 08 02 A6 */ mflr r0
/* 803727B0 0036F6F0 90 01 00 24 */ stw r0, 0x24(r1)
/* 803727B4 0036F6F4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803727B8 0036F6F8 7C BF 2B 78 */ mr r31, r5
/* 803727BC 0036F6FC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803727C0 0036F700 7C 7E 1B 78 */ mr r30, r3
/* 803727C4 0036F704 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803727C8 0036F708 93 81 00 10 */ stw r28, 0x10(r1)
/* 803727CC 0036F70C 7C 9C 23 78 */ mr r28, r4
/* 803727D0 0036F710 80 03 00 14 */ lwz r0, 0x14(r3)
/* 803727D4 0036F714 7C 1F 00 40 */ cmplw r31, r0
/* 803727D8 0036F718 40 81 00 0C */ ble lbl_803727E4
/* 803727DC 0036F71C 38 60 FF FF */ li r3, -1
/* 803727E0 0036F720 48 00 00 B0 */ b lbl_80372890
lbl_803727E4:
/* 803727E4 0036F724 38 7E 00 18 */ addi r3, r30, 0x18
/* 803727E8 0036F728 48 00 04 E1 */ bl func_80372CC8
/* 803727EC 0036F72C 80 9E 00 08 */ lwz r4, 8(r30)
/* 803727F0 0036F730 80 7E 00 04 */ lwz r3, 4(r30)
/* 803727F4 0036F734 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 803727F8 0036F738 7C 84 18 50 */ subf r4, r4, r3
/* 803727FC 0036F73C 7F A4 00 50 */ subf r29, r4, r0
/* 80372800 0036F740 7C 1D F8 40 */ cmplw r29, r31
/* 80372804 0036F744 41 80 00 20 */ blt lbl_80372824
/* 80372808 0036F748 7F 84 E3 78 */ mr r4, r28
/* 8037280C 0036F74C 7F E5 FB 78 */ mr r5, r31
/* 80372810 0036F750 4B C9 0D 31 */ bl memcpy
/* 80372814 0036F754 80 1E 00 04 */ lwz r0, 4(r30)
/* 80372818 0036F758 7C 00 FA 14 */ add r0, r0, r31
/* 8037281C 0036F75C 90 1E 00 04 */ stw r0, 4(r30)
/* 80372820 0036F760 48 00 00 30 */ b lbl_80372850
lbl_80372824:
/* 80372824 0036F764 7F 84 E3 78 */ mr r4, r28
/* 80372828 0036F768 7F A5 EB 78 */ mr r5, r29
/* 8037282C 0036F76C 4B C9 0D 15 */ bl memcpy
/* 80372830 0036F770 80 7E 00 08 */ lwz r3, 8(r30)
/* 80372834 0036F774 7C 9C EA 14 */ add r4, r28, r29
/* 80372838 0036F778 7C BD F8 50 */ subf r5, r29, r31
/* 8037283C 0036F77C 4B C9 0D 05 */ bl memcpy
/* 80372840 0036F780 80 1E 00 08 */ lwz r0, 8(r30)
/* 80372844 0036F784 7C 00 FA 14 */ add r0, r0, r31
/* 80372848 0036F788 7C 1D 00 50 */ subf r0, r29, r0
/* 8037284C 0036F78C 90 1E 00 04 */ stw r0, 4(r30)
lbl_80372850:
/* 80372850 0036F790 80 9E 00 08 */ lwz r4, 8(r30)
/* 80372854 0036F794 80 1E 00 04 */ lwz r0, 4(r30)
/* 80372858 0036F798 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 8037285C 0036F79C 7C 04 00 50 */ subf r0, r4, r0
/* 80372860 0036F7A0 7C 03 00 40 */ cmplw r3, r0
/* 80372864 0036F7A4 40 82 00 08 */ bne lbl_8037286C
/* 80372868 0036F7A8 90 9E 00 04 */ stw r4, 4(r30)
lbl_8037286C:
/* 8037286C 0036F7AC 80 1E 00 14 */ lwz r0, 0x14(r30)
/* 80372870 0036F7B0 38 7E 00 18 */ addi r3, r30, 0x18
/* 80372874 0036F7B4 7C 1F 00 50 */ subf r0, r31, r0
/* 80372878 0036F7B8 90 1E 00 14 */ stw r0, 0x14(r30)
/* 8037287C 0036F7BC 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 80372880 0036F7C0 7C 00 FA 14 */ add r0, r0, r31
/* 80372884 0036F7C4 90 1E 00 10 */ stw r0, 0x10(r30)
/* 80372888 0036F7C8 48 00 04 1D */ bl func_80372CA4
/* 8037288C 0036F7CC 38 60 00 00 */ li r3, 0
lbl_80372890:
/* 80372890 0036F7D0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80372894 0036F7D4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80372898 0036F7D8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8037289C 0036F7DC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803728A0 0036F7E0 83 81 00 10 */ lwz r28, 0x10(r1)
/* 803728A4 0036F7E4 7C 08 03 A6 */ mtlr r0
/* 803728A8 0036F7E8 38 21 00 20 */ addi r1, r1, 0x20
/* 803728AC 0036F7EC 4E 80 00 20 */ blr
.global func_803728B0
func_803728B0:
/* 803728B0 0036F7F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803728B4 0036F7F4 7C 08 02 A6 */ mflr r0
/* 803728B8 0036F7F8 7C 66 1B 78 */ mr r6, r3
/* 803728BC 0036F7FC 90 01 00 14 */ stw r0, 0x14(r1)
/* 803728C0 0036F800 38 00 00 00 */ li r0, 0
/* 803728C4 0036F804 90 83 00 08 */ stw r4, 8(r3)
/* 803728C8 0036F808 38 66 00 18 */ addi r3, r6, 0x18
/* 803728CC 0036F80C 90 A6 00 0C */ stw r5, 0xc(r6)
/* 803728D0 0036F810 80 86 00 08 */ lwz r4, 8(r6)
/* 803728D4 0036F814 90 86 00 00 */ stw r4, 0(r6)
/* 803728D8 0036F818 80 86 00 08 */ lwz r4, 8(r6)
/* 803728DC 0036F81C 90 86 00 04 */ stw r4, 4(r6)
/* 803728E0 0036F820 90 06 00 10 */ stw r0, 0x10(r6)
/* 803728E4 0036F824 80 06 00 0C */ lwz r0, 0xc(r6)
/* 803728E8 0036F828 90 06 00 14 */ stw r0, 0x14(r6)
/* 803728EC 0036F82C 48 00 04 0D */ bl func_80372CF8
/* 803728F0 0036F830 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803728F4 0036F834 7C 08 03 A6 */ mtlr r0
/* 803728F8 0036F838 38 21 00 10 */ addi r1, r1, 0x10
/* 803728FC 0036F83C 4E 80 00 20 */ blr
.global func_80372900
func_80372900:
/* 80372900 0036F840 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80372904 0036F844 4E 80 00 20 */ blr
lbl_80372908:
/* 80372908 0036F848 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8037290C 0036F84C 7C 08 02 A6 */ mflr r0
/* 80372910 0036F850 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372914 0036F854 48 00 07 A9 */ bl func_803730BC
/* 80372918 0036F858 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8037291C 0036F85C 38 60 00 00 */ li r3, 0
/* 80372920 0036F860 7C 08 03 A6 */ mtlr r0
/* 80372924 0036F864 38 21 00 10 */ addi r1, r1, 0x10
/* 80372928 0036F868 4E 80 00 20 */ blr
lbl_8037292C:
/* 8037292C 0036F86C 94 21 FA F0 */ stwu r1, -0x510(r1)
/* 80372930 0036F870 7C 08 02 A6 */ mflr r0
/* 80372934 0036F874 90 01 05 14 */ stw r0, 0x514(r1)
/* 80372938 0036F878 93 E1 05 0C */ stw r31, 0x50c(r1)
/* 8037293C 0036F87C 48 00 06 E5 */ bl func_80373020
/* 80372940 0036F880 7C 7F 1B 79 */ or. r31, r3, r3
/* 80372944 0036F884 41 81 00 0C */ bgt lbl_80372950
/* 80372948 0036F888 38 60 00 00 */ li r3, 0
/* 8037294C 0036F88C 48 00 00 3C */ b lbl_80372988
lbl_80372950:
/* 80372950 0036F890 7F E4 FB 78 */ mr r4, r31
/* 80372954 0036F894 38 61 00 08 */ addi r3, r1, 8
/* 80372958 0036F898 48 00 06 3D */ bl func_80372F94
/* 8037295C 0036F89C 2C 03 00 00 */ cmpwi r3, 0
/* 80372960 0036F8A0 40 82 00 1C */ bne lbl_8037297C
/* 80372964 0036F8A4 3C 60 80 45 */ lis r3, lbl_80450550@ha
/* 80372968 0036F8A8 7F E5 FB 78 */ mr r5, r31
/* 8037296C 0036F8AC 38 63 05 50 */ addi r3, r3, lbl_80450550@l
/* 80372970 0036F8B0 38 81 00 08 */ addi r4, r1, 8
/* 80372974 0036F8B4 4B FF FE 35 */ bl func_803727A8
/* 80372978 0036F8B8 48 00 00 0C */ b lbl_80372984
lbl_8037297C:
/* 8037297C 0036F8BC 38 60 D8 E7 */ li r3, -10009
/* 80372980 0036F8C0 48 00 00 08 */ b lbl_80372988
lbl_80372984:
/* 80372984 0036F8C4 7F E3 FB 78 */ mr r3, r31
lbl_80372988:
/* 80372988 0036F8C8 80 01 05 14 */ lwz r0, 0x514(r1)
/* 8037298C 0036F8CC 83 E1 05 0C */ lwz r31, 0x50c(r1)
/* 80372990 0036F8D0 7C 08 03 A6 */ mtlr r0
/* 80372994 0036F8D4 38 21 05 10 */ addi r1, r1, 0x510
/* 80372998 0036F8D8 4E 80 00 20 */ blr
lbl_8037299C:
/* 8037299C 0036F8DC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803729A0 0036F8E0 7C 08 02 A6 */ mflr r0
/* 803729A4 0036F8E4 90 01 00 14 */ stw r0, 0x14(r1)
/* 803729A8 0036F8E8 48 00 03 89 */ bl func_80372D30
/* 803729AC 0036F8EC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803729B0 0036F8F0 38 60 00 00 */ li r3, 0
/* 803729B4 0036F8F4 7C 08 03 A6 */ mtlr r0
/* 803729B8 0036F8F8 38 21 00 10 */ addi r1, r1, 0x10
/* 803729BC 0036F8FC 4E 80 00 20 */ blr
lbl_803729C0:
/* 803729C0 0036F900 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803729C4 0036F904 7C 08 02 A6 */ mflr r0
/* 803729C8 0036F908 90 01 00 14 */ stw r0, 0x14(r1)
/* 803729CC 0036F90C 48 00 03 61 */ bl func_80372D2C
/* 803729D0 0036F910 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803729D4 0036F914 38 60 00 00 */ li r3, 0
/* 803729D8 0036F918 7C 08 03 A6 */ mtlr r0
/* 803729DC 0036F91C 38 21 00 10 */ addi r1, r1, 0x10
/* 803729E0 0036F920 4E 80 00 20 */ blr
lbl_803729E4:
/* 803729E4 0036F924 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803729E8 0036F928 7C 08 02 A6 */ mflr r0
/* 803729EC 0036F92C 3C A0 80 3A */ lis r5, lbl_803A2DF0@ha
/* 803729F0 0036F930 90 01 00 24 */ stw r0, 0x24(r1)
/* 803729F4 0036F934 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803729F8 0036F938 3B E5 2D F0 */ addi r31, r5, lbl_803A2DF0@l
/* 803729FC 0036F93C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80372A00 0036F940 7C 9E 23 78 */ mr r30, r4
/* 80372A04 0036F944 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80372A08 0036F948 7C 7D 1B 78 */ mr r29, r3
/* 80372A0C 0036F94C 80 0D 94 48 */ lwz r0, lbl_804519C8-_SDA_BASE_(r13)
/* 80372A10 0036F950 2C 00 00 00 */ cmpwi r0, 0
/* 80372A14 0036F954 40 82 00 1C */ bne lbl_80372A30
/* 80372A18 0036F958 38 9F 00 00 */ addi r4, r31, 0
/* 80372A1C 0036F95C 38 60 00 08 */ li r3, 8
/* 80372A20 0036F960 4C C6 31 82 */ crclr 6
/* 80372A24 0036F964 48 00 02 31 */ bl func_80372C54
/* 80372A28 0036F968 38 60 D8 EF */ li r3, -10001
/* 80372A2C 0036F96C 48 00 00 5C */ b lbl_80372A88
lbl_80372A30:
/* 80372A30 0036F970 7C 65 1B 78 */ mr r5, r3
/* 80372A34 0036F974 7C 86 23 78 */ mr r6, r4
/* 80372A38 0036F978 38 9F 00 14 */ addi r4, r31, 0x14
/* 80372A3C 0036F97C 38 60 00 08 */ li r3, 8
/* 80372A40 0036F980 4C C6 31 82 */ crclr 6
/* 80372A44 0036F984 48 00 02 11 */ bl func_80372C54
/* 80372A48 0036F988 48 00 00 34 */ b lbl_80372A7C
lbl_80372A4C:
/* 80372A4C 0036F98C 7F C5 F3 78 */ mr r5, r30
/* 80372A50 0036F990 38 9F 00 40 */ addi r4, r31, 0x40
/* 80372A54 0036F994 38 60 00 01 */ li r3, 1
/* 80372A58 0036F998 4C C6 31 82 */ crclr 6
/* 80372A5C 0036F99C 48 00 01 F9 */ bl func_80372C54
/* 80372A60 0036F9A0 7F A3 EB 78 */ mr r3, r29
/* 80372A64 0036F9A4 7F C4 F3 78 */ mr r4, r30
/* 80372A68 0036F9A8 48 00 02 CD */ bl func_80372D34
/* 80372A6C 0036F9AC 2C 03 00 00 */ cmpwi r3, 0
/* 80372A70 0036F9B0 41 82 00 14 */ beq lbl_80372A84
/* 80372A74 0036F9B4 7F BD 1A 14 */ add r29, r29, r3
/* 80372A78 0036F9B8 7F C3 F0 50 */ subf r30, r3, r30
lbl_80372A7C:
/* 80372A7C 0036F9BC 2C 1E 00 00 */ cmpwi r30, 0
/* 80372A80 0036F9C0 41 81 FF CC */ bgt lbl_80372A4C
lbl_80372A84:
/* 80372A84 0036F9C4 38 60 00 00 */ li r3, 0
lbl_80372A88:
/* 80372A88 0036F9C8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80372A8C 0036F9CC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80372A90 0036F9D0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80372A94 0036F9D4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80372A98 0036F9D8 7C 08 03 A6 */ mtlr r0
/* 80372A9C 0036F9DC 38 21 00 20 */ addi r1, r1, 0x20
/* 80372AA0 0036F9E0 4E 80 00 20 */ blr
lbl_80372AA4:
/* 80372AA4 0036F9E4 94 21 FA E0 */ stwu r1, -0x520(r1)
/* 80372AA8 0036F9E8 7C 08 02 A6 */ mflr r0
/* 80372AAC 0036F9EC 90 01 05 24 */ stw r0, 0x524(r1)
/* 80372AB0 0036F9F0 BF 41 05 08 */ stmw r26, 0x508(r1)
/* 80372AB4 0036F9F4 7C 7A 1B 78 */ mr r26, r3
/* 80372AB8 0036F9F8 7C 9B 23 78 */ mr r27, r4
/* 80372ABC 0036F9FC 3B 80 00 00 */ li r28, 0
/* 80372AC0 0036FA00 80 0D 94 48 */ lwz r0, lbl_804519C8-_SDA_BASE_(r13)
/* 80372AC4 0036FA04 2C 00 00 00 */ cmpwi r0, 0
/* 80372AC8 0036FA08 40 82 00 0C */ bne lbl_80372AD4
/* 80372ACC 0036FA0C 38 60 D8 EF */ li r3, -10001
/* 80372AD0 0036FA10 48 00 00 B4 */ b lbl_80372B84
lbl_80372AD4:
/* 80372AD4 0036FA14 3C 60 80 3A */ lis r3, lbl_803A2E4C@ha
/* 80372AD8 0036FA18 7F 65 DB 78 */ mr r5, r27
/* 80372ADC 0036FA1C 38 83 2E 4C */ addi r4, r3, lbl_803A2E4C@l
/* 80372AE0 0036FA20 7F 66 DB 78 */ mr r6, r27
/* 80372AE4 0036FA24 38 60 00 01 */ li r3, 1
/* 80372AE8 0036FA28 4C C6 31 82 */ crclr 6
/* 80372AEC 0036FA2C 48 00 01 69 */ bl func_80372C54
/* 80372AF0 0036FA30 3C 60 80 45 */ lis r3, lbl_80450550@ha
/* 80372AF4 0036FA34 7F 7D DB 78 */ mr r29, r27
/* 80372AF8 0036FA38 3B E3 05 50 */ addi r31, r3, lbl_80450550@l
/* 80372AFC 0036FA3C 7F 7E DB 78 */ mr r30, r27
/* 80372B00 0036FA40 48 00 00 38 */ b lbl_80372B38
lbl_80372B04:
/* 80372B04 0036FA44 3B 80 00 00 */ li r28, 0
/* 80372B08 0036FA48 48 00 05 19 */ bl func_80373020
/* 80372B0C 0036FA4C 7C 7B 1B 79 */ or. r27, r3, r3
/* 80372B10 0036FA50 41 82 00 28 */ beq lbl_80372B38
/* 80372B14 0036FA54 7F C4 F3 78 */ mr r4, r30
/* 80372B18 0036FA58 38 61 00 08 */ addi r3, r1, 8
/* 80372B1C 0036FA5C 48 00 04 79 */ bl func_80372F94
/* 80372B20 0036FA60 7C 7C 1B 79 */ or. r28, r3, r3
/* 80372B24 0036FA64 40 82 00 14 */ bne lbl_80372B38
/* 80372B28 0036FA68 7F E3 FB 78 */ mr r3, r31
/* 80372B2C 0036FA6C 7F 65 DB 78 */ mr r5, r27
/* 80372B30 0036FA70 38 81 00 08 */ addi r4, r1, 8
/* 80372B34 0036FA74 4B FF FC 75 */ bl func_803727A8
lbl_80372B38:
/* 80372B38 0036FA78 7F E3 FB 78 */ mr r3, r31
/* 80372B3C 0036FA7C 4B FF FD C5 */ bl func_80372900
/* 80372B40 0036FA80 7C 03 F0 40 */ cmplw r3, r30
/* 80372B44 0036FA84 41 80 FF C0 */ blt lbl_80372B04
/* 80372B48 0036FA88 28 1C 00 00 */ cmplwi r28, 0
/* 80372B4C 0036FA8C 40 82 00 1C */ bne lbl_80372B68
/* 80372B50 0036FA90 3C 60 80 45 */ lis r3, lbl_80450550@ha
/* 80372B54 0036FA94 7F 44 D3 78 */ mr r4, r26
/* 80372B58 0036FA98 38 63 05 50 */ addi r3, r3, lbl_80450550@l
/* 80372B5C 0036FA9C 7F A5 EB 78 */ mr r5, r29
/* 80372B60 0036FAA0 4B FF FB 41 */ bl func_803726A0
/* 80372B64 0036FAA4 48 00 00 1C */ b lbl_80372B80
lbl_80372B68:
/* 80372B68 0036FAA8 3C 60 80 3A */ lis r3, lbl_803A2E74@ha
/* 80372B6C 0036FAAC 7F 85 E3 78 */ mr r5, r28
/* 80372B70 0036FAB0 38 83 2E 74 */ addi r4, r3, lbl_803A2E74@l
/* 80372B74 0036FAB4 38 60 00 08 */ li r3, 8
/* 80372B78 0036FAB8 4C C6 31 82 */ crclr 6
/* 80372B7C 0036FABC 48 00 00 D9 */ bl func_80372C54
lbl_80372B80:
/* 80372B80 0036FAC0 7F 83 E3 78 */ mr r3, r28
lbl_80372B84:
/* 80372B84 0036FAC4 BB 41 05 08 */ lmw r26, 0x508(r1)
/* 80372B88 0036FAC8 80 01 05 24 */ lwz r0, 0x524(r1)
/* 80372B8C 0036FACC 7C 08 03 A6 */ mtlr r0
/* 80372B90 0036FAD0 38 21 05 20 */ addi r1, r1, 0x520
/* 80372B94 0036FAD4 4E 80 00 20 */ blr
lbl_80372B98:
/* 80372B98 0036FAD8 38 60 00 00 */ li r3, 0
/* 80372B9C 0036FADC 4E 80 00 20 */ blr
lbl_80372BA0:
/* 80372BA0 0036FAE0 80 0D 94 48 */ lwz r0, lbl_804519C8-_SDA_BASE_(r13)
/* 80372BA4 0036FAE4 2C 00 00 00 */ cmpwi r0, 0
/* 80372BA8 0036FAE8 41 82 00 0C */ beq lbl_80372BB4
/* 80372BAC 0036FAEC 38 60 D8 EB */ li r3, -10005
/* 80372BB0 0036FAF0 4E 80 00 20 */ blr
lbl_80372BB4:
/* 80372BB4 0036FAF4 38 00 00 01 */ li r0, 1
/* 80372BB8 0036FAF8 38 60 00 00 */ li r3, 0
/* 80372BBC 0036FAFC 90 0D 94 48 */ stw r0, lbl_804519C8-_SDA_BASE_(r13)
/* 80372BC0 0036FB00 4E 80 00 20 */ blr
lbl_80372BC4:
/* 80372BC4 0036FB04 38 60 00 00 */ li r3, 0
/* 80372BC8 0036FB08 4E 80 00 20 */ blr
lbl_80372BCC:
/* 80372BCC 0036FB0C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372BD0 0036FB10 7C 08 02 A6 */ mflr r0
/* 80372BD4 0036FB14 3C A0 80 3A */ lis r5, lbl_803A2EA4@ha
/* 80372BD8 0036FB18 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372BDC 0036FB1C 38 05 2E A4 */ addi r0, r5, lbl_803A2EA4@l
/* 80372BE0 0036FB20 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80372BE4 0036FB24 7C 9F 23 78 */ mr r31, r4
/* 80372BE8 0036FB28 7C 04 03 78 */ mr r4, r0
/* 80372BEC 0036FB2C 93 C1 00 08 */ stw r30, 8(r1)
/* 80372BF0 0036FB30 7C 7E 1B 78 */ mr r30, r3
/* 80372BF4 0036FB34 38 60 00 01 */ li r3, 1
/* 80372BF8 0036FB38 4C C6 31 82 */ crclr 6
/* 80372BFC 0036FB3C 48 00 00 59 */ bl func_80372C54
/* 80372C00 0036FB40 7F C3 F3 78 */ mr r3, r30
/* 80372C04 0036FB44 7F E4 FB 78 */ mr r4, r31
/* 80372C08 0036FB48 48 00 05 09 */ bl func_80373110
/* 80372C0C 0036FB4C 3C 80 80 3A */ lis r4, lbl_803A2EB8@ha
/* 80372C10 0036FB50 38 60 00 01 */ li r3, 1
/* 80372C14 0036FB54 38 84 2E B8 */ addi r4, r4, lbl_803A2EB8@l
/* 80372C18 0036FB58 4C C6 31 82 */ crclr 6
/* 80372C1C 0036FB5C 48 00 00 39 */ bl func_80372C54
/* 80372C20 0036FB60 3C 60 80 45 */ lis r3, lbl_80450550@ha
/* 80372C24 0036FB64 3C 80 80 45 */ lis r4, lbl_80450050@ha
/* 80372C28 0036FB68 38 63 05 50 */ addi r3, r3, lbl_80450550@l
/* 80372C2C 0036FB6C 38 A0 05 00 */ li r5, 0x500
/* 80372C30 0036FB70 38 84 00 50 */ addi r4, r4, lbl_80450050@l
/* 80372C34 0036FB74 4B FF FC 7D */ bl func_803728B0
/* 80372C38 0036FB78 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372C3C 0036FB7C 38 60 00 00 */ li r3, 0
/* 80372C40 0036FB80 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372C44 0036FB84 83 C1 00 08 */ lwz r30, 8(r1)
/* 80372C48 0036FB88 7C 08 03 A6 */ mtlr r0
/* 80372C4C 0036FB8C 38 21 00 10 */ addi r1, r1, 0x10
/* 80372C50 0036FB90 4E 80 00 20 */ blr
.global func_80372C54
func_80372C54:
/* 80372C54 0036FB94 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80372C58 0036FB98 40 86 00 24 */ bne cr1, lbl_80372C7C
/* 80372C5C 0036FB9C D8 21 00 28 */ stfd f1, 0x28(r1)
/* 80372C60 0036FBA0 D8 41 00 30 */ stfd f2, 0x30(r1)
/* 80372C64 0036FBA4 D8 61 00 38 */ stfd f3, 0x38(r1)
/* 80372C68 0036FBA8 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 80372C6C 0036FBAC D8 A1 00 48 */ stfd f5, 0x48(r1)
/* 80372C70 0036FBB0 D8 C1 00 50 */ stfd f6, 0x50(r1)
/* 80372C74 0036FBB4 D8 E1 00 58 */ stfd f7, 0x58(r1)
/* 80372C78 0036FBB8 D9 01 00 60 */ stfd f8, 0x60(r1)
lbl_80372C7C:
/* 80372C7C 0036FBBC 90 61 00 08 */ stw r3, 8(r1)
/* 80372C80 0036FBC0 90 81 00 0C */ stw r4, 0xc(r1)
/* 80372C84 0036FBC4 90 A1 00 10 */ stw r5, 0x10(r1)
/* 80372C88 0036FBC8 90 C1 00 14 */ stw r6, 0x14(r1)
/* 80372C8C 0036FBCC 90 E1 00 18 */ stw r7, 0x18(r1)
/* 80372C90 0036FBD0 91 01 00 1C */ stw r8, 0x1c(r1)
/* 80372C94 0036FBD4 91 21 00 20 */ stw r9, 0x20(r1)
/* 80372C98 0036FBD8 91 41 00 24 */ stw r10, 0x24(r1)
/* 80372C9C 0036FBDC 38 21 00 70 */ addi r1, r1, 0x70
/* 80372CA0 0036FBE0 4E 80 00 20 */ blr
.global func_80372CA4
func_80372CA4:
/* 80372CA4 0036FBE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372CA8 0036FBE8 7C 08 02 A6 */ mflr r0
/* 80372CAC 0036FBEC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372CB0 0036FBF0 80 63 00 00 */ lwz r3, 0(r3)
/* 80372CB4 0036FBF4 4B FC AA 69 */ bl OSRestoreInterrupts
/* 80372CB8 0036FBF8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372CBC 0036FBFC 7C 08 03 A6 */ mtlr r0
/* 80372CC0 0036FC00 38 21 00 10 */ addi r1, r1, 0x10
/* 80372CC4 0036FC04 4E 80 00 20 */ blr
.global func_80372CC8
func_80372CC8:
/* 80372CC8 0036FC08 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80372CCC 0036FC0C 7C 08 02 A6 */ mflr r0
/* 80372CD0 0036FC10 90 01 00 14 */ stw r0, 0x14(r1)
/* 80372CD4 0036FC14 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80372CD8 0036FC18 7C 7F 1B 78 */ mr r31, r3
/* 80372CDC 0036FC1C 4B FC AA 19 */ bl __RAS_OSDisableInterrupts_begin
/* 80372CE0 0036FC20 90 7F 00 00 */ stw r3, 0(r31)
/* 80372CE4 0036FC24 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80372CE8 0036FC28 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80372CEC 0036FC2C 7C 08 03 A6 */ mtlr r0
/* 80372CF0 0036FC30 38 21 00 10 */ addi r1, r1, 0x10
/* 80372CF4 0036FC34 4E 80 00 20 */ blr
.global func_80372CF8
func_80372CF8:
/* 80372CF8 0036FC38 4E 80 00 20 */ blr
.global func_80372CFC
func_80372CFC:
/* 80372CFC 0036FC3C 4E 80 00 20 */ blr
.global func_80372D00
func_80372D00:
/* 80372D00 0036FC40 4E 80 00 20 */ blr
.global func_80372D04
func_80372D04:
/* 80372D04 0036FC44 38 60 00 00 */ li r3, 0
/* 80372D08 0036FC48 4E 80 00 20 */ blr
.global func_80372D0C
func_80372D0C:
/* 80372D0C 0036FC4C 38 60 00 00 */ li r3, 0
/* 80372D10 0036FC50 4E 80 00 20 */ blr
.global func_80372D14
func_80372D14:
/* 80372D14 0036FC54 38 60 00 00 */ li r3, 0
/* 80372D18 0036FC58 4E 80 00 20 */ blr
.global func_80372D1C
func_80372D1C:
/* 80372D1C 0036FC5C 4E 80 00 20 */ blr
.global func_80372D20
func_80372D20:
/* 80372D20 0036FC60 4E 80 00 20 */ blr
.global func_80372D24
func_80372D24:
/* 80372D24 0036FC64 38 60 00 01 */ li r3, 1
/* 80372D28 0036FC68 4E 80 00 20 */ blr
.global func_80372D2C
func_80372D2C:
/* 80372D2C 0036FC6C 4E 80 00 20 */ blr
.global func_80372D30
func_80372D30:
/* 80372D30 0036FC70 4E 80 00 20 */ blr
.global func_80372D34
func_80372D34:
/* 80372D34 0036FC74 7C 08 02 A6 */ mflr r0
/* 80372D38 0036FC78 90 01 00 04 */ stw r0, 4(r1)
/* 80372D3C 0036FC7C 94 21 FF 88 */ stwu r1, -0x78(r1)
/* 80372D40 0036FC80 BF 01 00 58 */ stmw r24, 0x58(r1)
/* 80372D44 0036FC84 3B 43 00 00 */ addi r26, r3, 0
/* 80372D48 0036FC88 3B 64 00 00 */ addi r27, r4, 0
/* 80372D4C 0036FC8C 4B FC A9 A9 */ bl __RAS_OSDisableInterrupts_begin
/* 80372D50 0036FC90 3B 83 00 00 */ addi r28, r3, 0
/* 80372D54 0036FC94 3F 20 CC 00 */ lis r25, 0xCC006828@ha
/* 80372D58 0036FC98 3F E0 40 00 */ lis r31, 0x4000
lbl_80372D5C:
/* 80372D5C 0036FC9C 80 19 68 28 */ lwz r0, 0xCC006828@l(r25)
/* 80372D60 0036FCA0 3B D9 68 00 */ addi r30, r25, 0x6800
/* 80372D64 0036FCA4 38 61 00 50 */ addi r3, r1, 0x50
/* 80372D68 0036FCA8 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372D6C 0036FCAC 38 80 00 02 */ li r4, 2
/* 80372D70 0036FCB0 38 A0 00 01 */ li r5, 1
/* 80372D74 0036FCB4 60 00 00 C0 */ ori r0, r0, 0xc0
/* 80372D78 0036FCB8 94 1E 00 28 */ stwu r0, 0x28(r30)
/* 80372D7C 0036FCBC 93 E1 00 50 */ stw r31, 0x50(r1)
/* 80372D80 0036FCC0 48 00 07 95 */ bl func_80373514
/* 80372D84 0036FCC4 7C 60 00 34 */ cntlzw r0, r3
/* 80372D88 0036FCC8 54 18 D9 7E */ srwi r24, r0, 5
lbl_80372D8C:
/* 80372D8C 0036FCCC 3B B9 68 00 */ addi r29, r25, 0x6800
/* 80372D90 0036FCD0 84 1D 00 34 */ lwzu r0, 0x34(r29)
/* 80372D94 0036FCD4 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372D98 0036FCD8 40 82 FF F4 */ bne lbl_80372D8C
/* 80372D9C 0036FCDC 38 61 00 54 */ addi r3, r1, 0x54
/* 80372DA0 0036FCE0 38 80 00 04 */ li r4, 4
/* 80372DA4 0036FCE4 38 A0 00 00 */ li r5, 0
/* 80372DA8 0036FCE8 48 00 07 6D */ bl func_80373514
lbl_80372DAC:
/* 80372DAC 0036FCEC 80 1D 00 00 */ lwz r0, 0(r29)
/* 80372DB0 0036FCF0 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372DB4 0036FCF4 40 82 FF F8 */ bne lbl_80372DAC
/* 80372DB8 0036FCF8 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372DBC 0036FCFC 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372DC0 0036FD00 90 1E 00 00 */ stw r0, 0(r30)
/* 80372DC4 0036FD04 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80372DC8 0036FD08 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80372DCC 0036FD0C 40 82 FF 90 */ bne lbl_80372D5C
/* 80372DD0 0036FD10 88 6D 85 70 */ lbz r3, lbl_80450AF0-_SDA_BASE_(r13)
/* 80372DD4 0036FD14 38 03 00 01 */ addi r0, r3, 1
/* 80372DD8 0036FD18 98 0D 85 70 */ stb r0, lbl_80450AF0-_SDA_BASE_(r13)
/* 80372DDC 0036FD1C 88 0D 85 70 */ lbz r0, lbl_80450AF0-_SDA_BASE_(r13)
/* 80372DE0 0036FD20 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372DE4 0036FD24 41 82 00 0C */ beq lbl_80372DF0
/* 80372DE8 0036FD28 38 60 10 00 */ li r3, 0x1000
/* 80372DEC 0036FD2C 48 00 00 08 */ b lbl_80372DF4
lbl_80372DF0:
/* 80372DF0 0036FD30 38 60 00 00 */ li r3, 0
lbl_80372DF4:
/* 80372DF4 0036FD34 38 1B 00 03 */ addi r0, r27, 3
/* 80372DF8 0036FD38 64 79 00 01 */ oris r25, r3, 1
/* 80372DFC 0036FD3C 54 18 00 3A */ rlwinm r24, r0, 0, 0, 0x1d
/* 80372E00 0036FD40 63 39 C0 00 */ ori r25, r25, 0xc000
lbl_80372E04:
/* 80372E04 0036FD44 38 79 00 00 */ addi r3, r25, 0
/* 80372E08 0036FD48 38 9A 00 00 */ addi r4, r26, 0
/* 80372E0C 0036FD4C 38 B8 00 00 */ addi r5, r24, 0
/* 80372E10 0036FD50 48 00 04 A1 */ bl func_803732B0
/* 80372E14 0036FD54 2C 03 00 00 */ cmpwi r3, 0
/* 80372E18 0036FD58 41 82 FF EC */ beq lbl_80372E04
/* 80372E1C 0036FD5C 3F E0 40 00 */ lis r31, 0x4000
lbl_80372E20:
/* 80372E20 0036FD60 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372E24 0036FD64 38 61 00 4C */ addi r3, r1, 0x4c
/* 80372E28 0036FD68 38 80 00 02 */ li r4, 2
/* 80372E2C 0036FD6C 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372E30 0036FD70 38 A0 00 01 */ li r5, 1
/* 80372E34 0036FD74 60 00 00 C0 */ ori r0, r0, 0xc0
/* 80372E38 0036FD78 90 1E 00 00 */ stw r0, 0(r30)
/* 80372E3C 0036FD7C 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 80372E40 0036FD80 48 00 06 D5 */ bl func_80373514
/* 80372E44 0036FD84 7C 60 00 34 */ cntlzw r0, r3
/* 80372E48 0036FD88 54 1A D9 7E */ srwi r26, r0, 5
lbl_80372E4C:
/* 80372E4C 0036FD8C 80 1D 00 00 */ lwz r0, 0(r29)
/* 80372E50 0036FD90 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372E54 0036FD94 40 82 FF F8 */ bne lbl_80372E4C
/* 80372E58 0036FD98 38 61 00 54 */ addi r3, r1, 0x54
/* 80372E5C 0036FD9C 38 80 00 04 */ li r4, 4
/* 80372E60 0036FDA0 38 A0 00 00 */ li r5, 0
/* 80372E64 0036FDA4 48 00 06 B1 */ bl func_80373514
lbl_80372E68:
/* 80372E68 0036FDA8 80 1D 00 00 */ lwz r0, 0(r29)
/* 80372E6C 0036FDAC 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372E70 0036FDB0 40 82 FF F8 */ bne lbl_80372E68
/* 80372E74 0036FDB4 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372E78 0036FDB8 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372E7C 0036FDBC 90 1E 00 00 */ stw r0, 0(r30)
/* 80372E80 0036FDC0 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80372E84 0036FDC4 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80372E88 0036FDC8 40 82 FF 98 */ bne lbl_80372E20
/* 80372E8C 0036FDCC 88 0D 85 70 */ lbz r0, lbl_80450AF0-_SDA_BASE_(r13)
/* 80372E90 0036FDD0 54 00 80 1E */ slwi r0, r0, 0x10
/* 80372E94 0036FDD4 64 00 1F 00 */ oris r0, r0, 0x1f00
/* 80372E98 0036FDD8 7C 00 DB 78 */ or r0, r0, r27
/* 80372E9C 0036FDDC 54 00 00 FE */ clrlwi r0, r0, 3
/* 80372EA0 0036FDE0 64 18 C0 00 */ oris r24, r0, 0xc000
lbl_80372EA4:
/* 80372EA4 0036FDE4 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372EA8 0036FDE8 38 61 00 44 */ addi r3, r1, 0x44
/* 80372EAC 0036FDEC 38 80 00 04 */ li r4, 4
/* 80372EB0 0036FDF0 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372EB4 0036FDF4 38 A0 00 01 */ li r5, 1
/* 80372EB8 0036FDF8 60 00 00 C0 */ ori r0, r0, 0xc0
/* 80372EBC 0036FDFC 90 1E 00 00 */ stw r0, 0(r30)
/* 80372EC0 0036FE00 93 01 00 44 */ stw r24, 0x44(r1)
/* 80372EC4 0036FE04 48 00 06 51 */ bl func_80373514
/* 80372EC8 0036FE08 7C 60 00 34 */ cntlzw r0, r3
/* 80372ECC 0036FE0C 54 03 D9 7E */ srwi r3, r0, 5
lbl_80372ED0:
/* 80372ED0 0036FE10 80 1D 00 00 */ lwz r0, 0(r29)
/* 80372ED4 0036FE14 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372ED8 0036FE18 40 82 FF F8 */ bne lbl_80372ED0
/* 80372EDC 0036FE1C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372EE0 0036FE20 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372EE4 0036FE24 2C 03 00 00 */ cmpwi r3, 0
/* 80372EE8 0036FE28 90 1E 00 00 */ stw r0, 0(r30)
/* 80372EEC 0036FE2C 40 82 FF B8 */ bne lbl_80372EA4
/* 80372EF0 0036FE30 3F 60 40 00 */ lis r27, 0x4000
lbl_80372EF4:
/* 80372EF4 0036FE34 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372EF8 0036FE38 38 61 00 3C */ addi r3, r1, 0x3c
/* 80372EFC 0036FE3C 38 80 00 02 */ li r4, 2
/* 80372F00 0036FE40 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372F04 0036FE44 38 A0 00 01 */ li r5, 1
/* 80372F08 0036FE48 60 00 00 C0 */ ori r0, r0, 0xc0
/* 80372F0C 0036FE4C 90 1E 00 00 */ stw r0, 0(r30)
/* 80372F10 0036FE50 93 61 00 3C */ stw r27, 0x3c(r1)
/* 80372F14 0036FE54 48 00 06 01 */ bl func_80373514
/* 80372F18 0036FE58 7C 60 00 34 */ cntlzw r0, r3
/* 80372F1C 0036FE5C 54 1A D9 7E */ srwi r26, r0, 5
lbl_80372F20:
/* 80372F20 0036FE60 80 1D 00 00 */ lwz r0, 0(r29)
/* 80372F24 0036FE64 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372F28 0036FE68 40 82 FF F8 */ bne lbl_80372F20
/* 80372F2C 0036FE6C 38 61 00 54 */ addi r3, r1, 0x54
/* 80372F30 0036FE70 38 80 00 04 */ li r4, 4
/* 80372F34 0036FE74 38 A0 00 00 */ li r5, 0
/* 80372F38 0036FE78 48 00 05 DD */ bl func_80373514
/* 80372F3C 0036FE7C 7C 60 00 34 */ cntlzw r0, r3
/* 80372F40 0036FE80 54 00 D9 7E */ srwi r0, r0, 5
/* 80372F44 0036FE84 7F 43 03 78 */ or r3, r26, r0
lbl_80372F48:
/* 80372F48 0036FE88 80 1D 00 00 */ lwz r0, 0(r29)
/* 80372F4C 0036FE8C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80372F50 0036FE90 40 82 FF F8 */ bne lbl_80372F48
/* 80372F54 0036FE94 80 1E 00 00 */ lwz r0, 0(r30)
/* 80372F58 0036FE98 70 00 04 05 */ andi. r0, r0, 0x405
/* 80372F5C 0036FE9C 2C 03 00 00 */ cmpwi r3, 0
/* 80372F60 0036FEA0 90 1E 00 00 */ stw r0, 0(r30)
/* 80372F64 0036FEA4 40 82 FF 90 */ bne lbl_80372EF4
/* 80372F68 0036FEA8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80372F6C 0036FEAC 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80372F70 0036FEB0 40 82 FF 84 */ bne lbl_80372EF4
/* 80372F74 0036FEB4 7F 83 E3 78 */ mr r3, r28
/* 80372F78 0036FEB8 4B FC A7 A5 */ bl OSRestoreInterrupts
/* 80372F7C 0036FEBC BB 01 00 58 */ lmw r24, 0x58(r1)
/* 80372F80 0036FEC0 38 60 00 00 */ li r3, 0
/* 80372F84 0036FEC4 80 01 00 7C */ lwz r0, 0x7c(r1)
/* 80372F88 0036FEC8 38 21 00 78 */ addi r1, r1, 0x78
/* 80372F8C 0036FECC 7C 08 03 A6 */ mtlr r0
/* 80372F90 0036FED0 4E 80 00 20 */ blr
.global func_80372F94
func_80372F94:
/* 80372F94 0036FED4 7C 08 02 A6 */ mflr r0
/* 80372F98 0036FED8 90 01 00 04 */ stw r0, 4(r1)
/* 80372F9C 0036FEDC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80372FA0 0036FEE0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80372FA4 0036FEE4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80372FA8 0036FEE8 3B C4 00 00 */ addi r30, r4, 0
/* 80372FAC 0036FEEC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80372FB0 0036FEF0 3B A3 00 00 */ addi r29, r3, 0
/* 80372FB4 0036FEF4 4B FC A7 41 */ bl __RAS_OSDisableInterrupts_begin
/* 80372FB8 0036FEF8 80 0D 94 58 */ lwz r0, lbl_804519D8-_SDA_BASE_(r13)
/* 80372FBC 0036FEFC 3B E3 00 00 */ addi r31, r3, 0
/* 80372FC0 0036FF00 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf
/* 80372FC4 0036FF04 41 82 00 0C */ beq lbl_80372FD0
/* 80372FC8 0036FF08 38 60 10 00 */ li r3, 0x1000
/* 80372FCC 0036FF0C 48 00 00 08 */ b lbl_80372FD4
lbl_80372FD0:
/* 80372FD0 0036FF10 38 60 00 00 */ li r3, 0
lbl_80372FD4:
/* 80372FD4 0036FF14 3C 63 00 02 */ addis r3, r3, 2
/* 80372FD8 0036FF18 38 1E 00 03 */ addi r0, r30, 3
/* 80372FDC 0036FF1C 38 9D 00 00 */ addi r4, r29, 0
/* 80372FE0 0036FF20 54 05 00 3A */ rlwinm r5, r0, 0, 0, 0x1d
/* 80372FE4 0036FF24 38 63 E0 00 */ addi r3, r3, -8192
/* 80372FE8 0036FF28 48 00 03 A5 */ bl func_8037338C
/* 80372FEC 0036FF2C 38 00 00 00 */ li r0, 0
/* 80372FF0 0036FF30 90 0D 94 5C */ stw r0, lbl_804519DC-_SDA_BASE_(r13)
/* 80372FF4 0036FF34 7F E3 FB 78 */ mr r3, r31
/* 80372FF8 0036FF38 98 0D 94 64 */ stb r0, lbl_804519E4-_SDA_BASE_(r13)
/* 80372FFC 0036FF3C 4B FC A7 21 */ bl OSRestoreInterrupts
/* 80373000 0036FF40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373004 0036FF44 38 60 00 00 */ li r3, 0
/* 80373008 0036FF48 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8037300C 0036FF4C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373010 0036FF50 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80373014 0036FF54 38 21 00 20 */ addi r1, r1, 0x20
/* 80373018 0036FF58 7C 08 03 A6 */ mtlr r0
/* 8037301C 0036FF5C 4E 80 00 20 */ blr
.global func_80373020
func_80373020:
/* 80373020 0036FF60 7C 08 02 A6 */ mflr r0
/* 80373024 0036FF64 38 60 00 00 */ li r3, 0
/* 80373028 0036FF68 90 01 00 04 */ stw r0, 4(r1)
/* 8037302C 0036FF6C 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80373030 0036FF70 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80373034 0036FF74 80 0D 94 5C */ lwz r0, lbl_804519DC-_SDA_BASE_(r13)
/* 80373038 0036FF78 98 6D 94 64 */ stb r3, lbl_804519E4-_SDA_BASE_(r13)
/* 8037303C 0036FF7C 2C 00 00 00 */ cmpwi r0, 0
/* 80373040 0036FF80 40 82 00 64 */ bne lbl_803730A4
/* 80373044 0036FF84 4B FC A6 B1 */ bl __RAS_OSDisableInterrupts_begin
/* 80373048 0036FF88 3B E3 00 00 */ addi r31, r3, 0
/* 8037304C 0036FF8C 38 61 00 08 */ addi r3, r1, 8
/* 80373050 0036FF90 48 00 01 B5 */ bl func_80373204
/* 80373054 0036FF94 80 01 00 08 */ lwz r0, 8(r1)
/* 80373058 0036FF98 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8037305C 0036FF9C 41 82 00 40 */ beq lbl_8037309C
/* 80373060 0036FFA0 38 61 00 08 */ addi r3, r1, 8
/* 80373064 0036FFA4 48 00 04 05 */ bl func_80373468
/* 80373068 0036FFA8 80 01 00 08 */ lwz r0, 8(r1)
/* 8037306C 0036FFAC 54 00 00 FE */ clrlwi r0, r0, 3
/* 80373070 0036FFB0 90 01 00 08 */ stw r0, 8(r1)
/* 80373074 0036FFB4 80 81 00 08 */ lwz r4, 8(r1)
/* 80373078 0036FFB8 54 83 00 CE */ rlwinm r3, r4, 0, 3, 7
/* 8037307C 0036FFBC 3C 03 E1 00 */ addis r0, r3, 0xe100
/* 80373080 0036FFC0 28 00 00 00 */ cmplwi r0, 0
/* 80373084 0036FFC4 40 82 00 18 */ bne lbl_8037309C
/* 80373088 0036FFC8 54 83 04 7E */ clrlwi r3, r4, 0x11
/* 8037308C 0036FFCC 90 8D 94 58 */ stw r4, lbl_804519D8-_SDA_BASE_(r13)
/* 80373090 0036FFD0 38 00 00 01 */ li r0, 1
/* 80373094 0036FFD4 90 6D 94 5C */ stw r3, lbl_804519DC-_SDA_BASE_(r13)
/* 80373098 0036FFD8 98 0D 94 64 */ stb r0, lbl_804519E4-_SDA_BASE_(r13)
lbl_8037309C:
/* 8037309C 0036FFDC 7F E3 FB 78 */ mr r3, r31
/* 803730A0 0036FFE0 4B FC A6 7D */ bl OSRestoreInterrupts
lbl_803730A4:
/* 803730A4 0036FFE4 80 6D 94 5C */ lwz r3, lbl_804519DC-_SDA_BASE_(r13)
/* 803730A8 0036FFE8 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803730AC 0036FFEC 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803730B0 0036FFF0 38 21 00 18 */ addi r1, r1, 0x18
/* 803730B4 0036FFF4 7C 08 03 A6 */ mtlr r0
/* 803730B8 0036FFF8 4E 80 00 20 */ blr
.global func_803730BC
func_803730BC:
/* 803730BC 0036FFFC 7C 08 02 A6 */ mflr r0
/* 803730C0 00370000 3C 60 00 02 */ lis r3, 0x00018000@ha
/* 803730C4 00370004 90 01 00 04 */ stw r0, 4(r1)
/* 803730C8 00370008 38 63 80 00 */ addi r3, r3, 0x00018000@l
/* 803730CC 0037000C 94 21 FF F8 */ stwu r1, -8(r1)
/* 803730D0 00370010 4B FC A9 ED */ bl __OSMaskInterrupts
/* 803730D4 00370014 38 60 00 40 */ li r3, 0x40
/* 803730D8 00370018 4B FC A9 E5 */ bl __OSMaskInterrupts
/* 803730DC 0037001C 3C 60 80 37 */ lis r3, lbl_803731C8@ha
/* 803730E0 00370020 38 03 31 C8 */ addi r0, r3, lbl_803731C8@l
/* 803730E4 00370024 3C 60 80 37 */ lis r3, lbl_80373188@ha
/* 803730E8 00370028 90 0D 94 54 */ stw r0, lbl_804519D4-_SDA_BASE_(r13)
/* 803730EC 0037002C 38 83 31 88 */ addi r4, r3, lbl_80373188@l
/* 803730F0 00370030 38 60 00 19 */ li r3, 0x19
/* 803730F4 00370034 4B FC A6 4D */ bl __OSSetInterruptHandler
/* 803730F8 00370038 38 60 00 40 */ li r3, 0x40
/* 803730FC 0037003C 4B FC AA 49 */ bl __OSUnmaskInterrupts
/* 80373100 00370040 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80373104 00370044 38 21 00 08 */ addi r1, r1, 8
/* 80373108 00370048 7C 08 03 A6 */ mtlr r0
/* 8037310C 0037004C 4E 80 00 20 */ blr
.global func_80373110
func_80373110:
/* 80373110 00370050 7C 08 02 A6 */ mflr r0
/* 80373114 00370054 90 01 00 04 */ stw r0, 4(r1)
/* 80373118 00370058 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8037311C 0037005C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80373120 00370060 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80373124 00370064 3B C4 00 00 */ addi r30, r4, 0
/* 80373128 00370068 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8037312C 0037006C 3B A3 00 00 */ addi r29, r3, 0
/* 80373130 00370070 4B FC A5 C5 */ bl __RAS_OSDisableInterrupts_begin
/* 80373134 00370074 38 0D 94 64 */ addi r0, r13, lbl_804519E4-_SDA_BASE_
/* 80373138 00370078 90 0D 94 60 */ stw r0, lbl_804519E0-_SDA_BASE_(r13)
/* 8037313C 0037007C 3C 80 00 02 */ lis r4, 0x00018000@ha
/* 80373140 00370080 3B E3 00 00 */ addi r31, r3, 0
/* 80373144 00370084 80 0D 94 60 */ lwz r0, lbl_804519E0-_SDA_BASE_(r13)
/* 80373148 00370088 38 64 80 00 */ addi r3, r4, 0x00018000@l
/* 8037314C 0037008C 90 1D 00 00 */ stw r0, 0(r29)
/* 80373150 00370090 93 CD 94 50 */ stw r30, lbl_804519D0-_SDA_BASE_(r13)
/* 80373154 00370094 4B FC A9 69 */ bl __OSMaskInterrupts
/* 80373158 00370098 3C 60 CC 00 */ lis r3, 0xCC006828@ha
/* 8037315C 0037009C 38 00 00 00 */ li r0, 0
/* 80373160 003700A0 90 03 68 28 */ stw r0, 0xCC006828@l(r3)
/* 80373164 003700A4 7F E3 FB 78 */ mr r3, r31
/* 80373168 003700A8 4B FC A5 B5 */ bl OSRestoreInterrupts
/* 8037316C 003700AC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80373170 003700B0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80373174 003700B4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80373178 003700B8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8037317C 003700BC 38 21 00 20 */ addi r1, r1, 0x20
/* 80373180 003700C0 7C 08 03 A6 */ mtlr r0
/* 80373184 003700C4 4E 80 00 20 */ blr
lbl_80373188:
/* 80373188 003700C8 7C 08 02 A6 */ mflr r0
/* 8037318C 003700CC 3C A0 CC 00 */ lis r5, 0xCC003000@ha
/* 80373190 003700D0 90 01 00 04 */ stw r0, 4(r1)
/* 80373194 003700D4 38 00 10 00 */ li r0, 0x1000
/* 80373198 003700D8 94 21 FF F8 */ stwu r1, -8(r1)
/* 8037319C 003700DC 81 8D 94 54 */ lwz r12, lbl_804519D4-_SDA_BASE_(r13)
/* 803731A0 003700E0 90 05 30 00 */ stw r0, 0xCC003000@l(r5)
/* 803731A4 003700E4 28 0C 00 00 */ cmplwi r12, 0
/* 803731A8 003700E8 41 82 00 10 */ beq lbl_803731B8
/* 803731AC 003700EC 7D 88 03 A6 */ mtlr r12
/* 803731B0 003700F0 7C 63 07 34 */ extsh r3, r3
/* 803731B4 003700F4 4E 80 00 21 */ blrl
lbl_803731B8:
/* 803731B8 003700F8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803731BC 003700FC 38 21 00 08 */ addi r1, r1, 8
/* 803731C0 00370100 7C 08 03 A6 */ mtlr r0
/* 803731C4 00370104 4E 80 00 20 */ blr
lbl_803731C8:
/* 803731C8 00370108 7C 08 02 A6 */ mflr r0
/* 803731CC 0037010C 90 01 00 04 */ stw r0, 4(r1)
/* 803731D0 00370110 38 00 00 01 */ li r0, 1
/* 803731D4 00370114 94 21 FF F8 */ stwu r1, -8(r1)
/* 803731D8 00370118 81 8D 94 50 */ lwz r12, lbl_804519D0-_SDA_BASE_(r13)
/* 803731DC 0037011C 98 0D 94 64 */ stb r0, lbl_804519E4-_SDA_BASE_(r13)
/* 803731E0 00370120 28 0C 00 00 */ cmplwi r12, 0
/* 803731E4 00370124 41 82 00 10 */ beq lbl_803731F4
/* 803731E8 00370128 7D 88 03 A6 */ mtlr r12
/* 803731EC 0037012C 38 60 00 00 */ li r3, 0
/* 803731F0 00370130 4E 80 00 21 */ blrl
lbl_803731F4:
/* 803731F4 00370134 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803731F8 00370138 38 21 00 08 */ addi r1, r1, 8
/* 803731FC 0037013C 7C 08 03 A6 */ mtlr r0
/* 80373200 00370140 4E 80 00 20 */ blr
.global func_80373204
func_80373204:
/* 80373204 00370144 7C 08 02 A6 */ mflr r0
/* 80373208 00370148 38 80 00 02 */ li r4, 2
/* 8037320C 0037014C 90 01 00 04 */ stw r0, 4(r1)
/* 80373210 00370150 3C 00 40 00 */ lis r0, 0x4000
/* 80373214 00370154 94 21 FF C8 */ stwu r1, -0x38(r1)
/* 80373218 00370158 BF 61 00 24 */ stmw r27, 0x24(r1)
/* 8037321C 0037015C 3F C0 CC 00 */ lis r30, 0xCC006800@ha
/* 80373220 00370160 3B 63 00 00 */ addi r27, r3, 0
/* 80373224 00370164 3B BE 68 00 */ addi r29, r30, 0xCC006800@l
/* 80373228 00370168 38 61 00 18 */ addi r3, r1, 0x18
/* 8037322C 0037016C 80 BE 68 28 */ lwz r5, 0x6828(r30)
/* 80373230 00370170 70 A5 04 05 */ andi. r5, r5, 0x405
/* 80373234 00370174 60 A5 00 C0 */ ori r5, r5, 0xc0
/* 80373238 00370178 94 BD 00 28 */ stwu r5, 0x28(r29)
/* 8037323C 0037017C 38 A0 00 01 */ li r5, 1
/* 80373240 00370180 90 01 00 18 */ stw r0, 0x18(r1)
/* 80373244 00370184 48 00 02 D1 */ bl func_80373514
/* 80373248 00370188 7C 60 00 34 */ cntlzw r0, r3
/* 8037324C 0037018C 54 1F D9 7E */ srwi r31, r0, 5
lbl_80373250:
/* 80373250 00370190 3B 9E 68 00 */ addi r28, r30, 0x6800
/* 80373254 00370194 84 1C 00 34 */ lwzu r0, 0x34(r28)
/* 80373258 00370198 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8037325C 0037019C 40 82 FF F4 */ bne lbl_80373250
/* 80373260 003701A0 38 7B 00 00 */ addi r3, r27, 0
/* 80373264 003701A4 38 80 00 04 */ li r4, 4
/* 80373268 003701A8 38 A0 00 00 */ li r5, 0
/* 8037326C 003701AC 48 00 02 A9 */ bl func_80373514
/* 80373270 003701B0 7C 60 00 34 */ cntlzw r0, r3
/* 80373274 003701B4 54 00 D9 7E */ srwi r0, r0, 5
/* 80373278 003701B8 7F E3 03 78 */ or r3, r31, r0
lbl_8037327C:
/* 8037327C 003701BC 80 1C 00 00 */ lwz r0, 0(r28)
/* 80373280 003701C0 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80373284 003701C4 40 82 FF F8 */ bne lbl_8037327C
/* 80373288 003701C8 80 9D 00 00 */ lwz r4, 0(r29)
/* 8037328C 003701CC 7C 60 00 34 */ cntlzw r0, r3
/* 80373290 003701D0 54 03 D9 7E */ srwi r3, r0, 5
/* 80373294 003701D4 70 80 04 05 */ andi. r0, r4, 0x405
/* 80373298 003701D8 90 1D 00 00 */ stw r0, 0(r29)
/* 8037329C 003701DC BB 61 00 24 */ lmw r27, 0x24(r1)
/* 803732A0 003701E0 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 803732A4 003701E4 38 21 00 38 */ addi r1, r1, 0x38
/* 803732A8 003701E8 7C 08 03 A6 */ mtlr r0
/* 803732AC 003701EC 4E 80 00 20 */ blr
.global func_803732B0
func_803732B0:
/* 803732B0 003701F0 7C 08 02 A6 */ mflr r0
/* 803732B4 003701F4 90 01 00 04 */ stw r0, 4(r1)
/* 803732B8 003701F8 54 60 41 EA */ rlwinm r0, r3, 8, 7, 0x15
/* 803732BC 003701FC 64 00 A0 00 */ oris r0, r0, 0xa000
/* 803732C0 00370200 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 803732C4 00370204 BF 41 00 28 */ stmw r26, 0x28(r1)
/* 803732C8 00370208 3F A0 CC 00 */ lis r29, 0xCC006800@ha
/* 803732CC 0037020C 3B C5 00 00 */ addi r30, r5, 0
/* 803732D0 00370210 3B 44 00 00 */ addi r26, r4, 0
/* 803732D4 00370214 3B FD 68 00 */ addi r31, r29, 0xCC006800@l
/* 803732D8 00370218 38 61 00 24 */ addi r3, r1, 0x24
/* 803732DC 0037021C 38 80 00 04 */ li r4, 4
/* 803732E0 00370220 38 A0 00 01 */ li r5, 1
/* 803732E4 00370224 80 DD 68 28 */ lwz r6, 0x6828(r29)
/* 803732E8 00370228 70 C6 04 05 */ andi. r6, r6, 0x405
/* 803732EC 0037022C 60 C6 00 C0 */ ori r6, r6, 0xc0
/* 803732F0 00370230 94 DF 00 28 */ stwu r6, 0x28(r31)
/* 803732F4 00370234 90 01 00 24 */ stw r0, 0x24(r1)
/* 803732F8 00370238 48 00 02 1D */ bl func_80373514
/* 803732FC 0037023C 7C 60 00 34 */ cntlzw r0, r3
/* 80373300 00370240 54 00 D9 7E */ srwi r0, r0, 5
/* 80373304 00370244 7C 1B 03 78 */ mr r27, r0
lbl_80373308:
/* 80373308 00370248 3B 9D 68 00 */ addi r28, r29, 0x6800
/* 8037330C 0037024C 84 1C 00 34 */ lwzu r0, 0x34(r28)
/* 80373310 00370250 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80373314 00370254 40 82 FF F4 */ bne lbl_80373308
/* 80373318 00370258 48 00 00 44 */ b lbl_8037335C
lbl_8037331C:
/* 8037331C 0037025C 80 1A 00 00 */ lwz r0, 0(r26)
/* 80373320 00370260 38 61 00 20 */ addi r3, r1, 0x20
/* 80373324 00370264 38 80 00 04 */ li r4, 4
/* 80373328 00370268 90 01 00 20 */ stw r0, 0x20(r1)
/* 8037332C 0037026C 38 A0 00 01 */ li r5, 1
/* 80373330 00370270 3B 5A 00 04 */ addi r26, r26, 4
/* 80373334 00370274 48 00 01 E1 */ bl func_80373514
/* 80373338 00370278 7C 60 00 34 */ cntlzw r0, r3
/* 8037333C 0037027C 54 00 D9 7E */ srwi r0, r0, 5
/* 80373340 00370280 7F 7B 03 78 */ or r27, r27, r0
lbl_80373344:
/* 80373344 00370284 80 1C 00 00 */ lwz r0, 0(r28)
/* 80373348 00370288 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8037334C 0037028C 40 82 FF F8 */ bne lbl_80373344
/* 80373350 00370290 37 DE FF FC */ addic. r30, r30, -4
/* 80373354 00370294 40 80 00 08 */ bge lbl_8037335C
/* 80373358 00370298 3B C0 00 00 */ li r30, 0
lbl_8037335C:
/* 8037335C 0037029C 2C 1E 00 00 */ cmpwi r30, 0
/* 80373360 003702A0 40 82 FF BC */ bne lbl_8037331C
/* 80373364 003702A4 80 9F 00 00 */ lwz r4, 0(r31)
/* 80373368 003702A8 7F 60 00 34 */ cntlzw r0, r27
/* 8037336C 003702AC 54 03 D9 7E */ srwi r3, r0, 5
/* 80373370 003702B0 70 80 04 05 */ andi. r0, r4, 0x405
/* 80373374 003702B4 90 1F 00 00 */ stw r0, 0(r31)
/* 80373378 003702B8 BB 41 00 28 */ lmw r26, 0x28(r1)
/* 8037337C 003702BC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80373380 003702C0 38 21 00 40 */ addi r1, r1, 0x40
/* 80373384 003702C4 7C 08 03 A6 */ mtlr r0
/* 80373388 003702C8 4E 80 00 20 */ blr
.global func_8037338C
func_8037338C:
/* 8037338C 003702CC 7C 08 02 A6 */ mflr r0
/* 80373390 003702D0 90 01 00 04 */ stw r0, 4(r1)
/* 80373394 003702D4 54 60 41 EA */ rlwinm r0, r3, 8, 7, 0x15
/* 80373398 003702D8 64 00 20 00 */ oris r0, r0, 0x2000
/* 8037339C 003702DC 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 803733A0 003702E0 BF 41 00 28 */ stmw r26, 0x28(r1)
/* 803733A4 003702E4 3F A0 CC 00 */ lis r29, 0xCC006800@ha
/* 803733A8 003702E8 3B C5 00 00 */ addi r30, r5, 0
/* 803733AC 003702EC 3B 44 00 00 */ addi r26, r4, 0
/* 803733B0 003702F0 3B FD 68 00 */ addi r31, r29, 0xCC006800@l
/* 803733B4 003702F4 38 61 00 24 */ addi r3, r1, 0x24
/* 803733B8 003702F8 38 80 00 04 */ li r4, 4
/* 803733BC 003702FC 38 A0 00 01 */ li r5, 1
/* 803733C0 00370300 80 DD 68 28 */ lwz r6, 0x6828(r29)
/* 803733C4 00370304 70 C6 04 05 */ andi. r6, r6, 0x405
/* 803733C8 00370308 60 C6 00 C0 */ ori r6, r6, 0xc0
/* 803733CC 0037030C 94 DF 00 28 */ stwu r6, 0x28(r31)
/* 803733D0 00370310 90 01 00 24 */ stw r0, 0x24(r1)
/* 803733D4 00370314 48 00 01 41 */ bl func_80373514
/* 803733D8 00370318 7C 60 00 34 */ cntlzw r0, r3
/* 803733DC 0037031C 54 00 D9 7E */ srwi r0, r0, 5
/* 803733E0 00370320 7C 1B 03 78 */ mr r27, r0
lbl_803733E4:
/* 803733E4 00370324 3B 9D 68 00 */ addi r28, r29, 0x6800
/* 803733E8 00370328 84 1C 00 34 */ lwzu r0, 0x34(r28)
/* 803733EC 0037032C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 803733F0 00370330 40 82 FF F4 */ bne lbl_803733E4
/* 803733F4 00370334 48 00 00 44 */ b lbl_80373438
lbl_803733F8:
/* 803733F8 00370338 38 61 00 20 */ addi r3, r1, 0x20
/* 803733FC 0037033C 38 80 00 04 */ li r4, 4
/* 80373400 00370340 38 A0 00 00 */ li r5, 0
/* 80373404 00370344 48 00 01 11 */ bl func_80373514
/* 80373408 00370348 7C 60 00 34 */ cntlzw r0, r3
/* 8037340C 0037034C 54 00 D9 7E */ srwi r0, r0, 5
/* 80373410 00370350 7F 7B 03 78 */ or r27, r27, r0
lbl_80373414:
/* 80373414 00370354 80 1C 00 00 */ lwz r0, 0(r28)
/* 80373418 00370358 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8037341C 0037035C 40 82 FF F8 */ bne lbl_80373414
/* 80373420 00370360 80 01 00 20 */ lwz r0, 0x20(r1)
/* 80373424 00370364 37 DE FF FC */ addic. r30, r30, -4
/* 80373428 00370368 90 1A 00 00 */ stw r0, 0(r26)
/* 8037342C 0037036C 3B 5A 00 04 */ addi r26, r26, 4
/* 80373430 00370370 40 80 00 08 */ bge lbl_80373438
/* 80373434 00370374 3B C0 00 00 */ li r30, 0
lbl_80373438:
/* 80373438 00370378 2C 1E 00 00 */ cmpwi r30, 0
/* 8037343C 0037037C 40 82 FF BC */ bne lbl_803733F8
/* 80373440 00370380 80 9F 00 00 */ lwz r4, 0(r31)
/* 80373444 00370384 7F 60 00 34 */ cntlzw r0, r27
/* 80373448 00370388 54 03 D9 7E */ srwi r3, r0, 5
/* 8037344C 0037038C 70 80 04 05 */ andi. r0, r4, 0x405
/* 80373450 00370390 90 1F 00 00 */ stw r0, 0(r31)
/* 80373454 00370394 BB 41 00 28 */ lmw r26, 0x28(r1)
/* 80373458 00370398 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8037345C 0037039C 38 21 00 40 */ addi r1, r1, 0x40
/* 80373460 003703A0 7C 08 03 A6 */ mtlr r0
/* 80373464 003703A4 4E 80 00 20 */ blr
.global func_80373468
func_80373468:
/* 80373468 003703A8 7C 08 02 A6 */ mflr r0
/* 8037346C 003703AC 38 80 00 02 */ li r4, 2
/* 80373470 003703B0 90 01 00 04 */ stw r0, 4(r1)
/* 80373474 003703B4 3C 00 60 00 */ lis r0, 0x6000
/* 80373478 003703B8 94 21 FF C8 */ stwu r1, -0x38(r1)
/* 8037347C 003703BC BF 61 00 24 */ stmw r27, 0x24(r1)
/* 80373480 003703C0 3F C0 CC 00 */ lis r30, 0xCC006800@ha
/* 80373484 003703C4 3B 63 00 00 */ addi r27, r3, 0
/* 80373488 003703C8 3B BE 68 00 */ addi r29, r30, 0xCC006800@l
/* 8037348C 003703CC 38 61 00 18 */ addi r3, r1, 0x18
/* 80373490 003703D0 80 BE 68 28 */ lwz r5, 0x6828(r30)
/* 80373494 003703D4 70 A5 04 05 */ andi. r5, r5, 0x405
/* 80373498 003703D8 60 A5 00 C0 */ ori r5, r5, 0xc0
/* 8037349C 003703DC 94 BD 00 28 */ stwu r5, 0x28(r29)
/* 803734A0 003703E0 38 A0 00 01 */ li r5, 1
/* 803734A4 003703E4 90 01 00 18 */ stw r0, 0x18(r1)
/* 803734A8 003703E8 48 00 00 6D */ bl func_80373514
/* 803734AC 003703EC 7C 60 00 34 */ cntlzw r0, r3
/* 803734B0 003703F0 54 1F D9 7E */ srwi r31, r0, 5
lbl_803734B4:
/* 803734B4 003703F4 3B 9E 68 00 */ addi r28, r30, 0x6800
/* 803734B8 003703F8 84 1C 00 34 */ lwzu r0, 0x34(r28)
/* 803734BC 003703FC 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 803734C0 00370400 40 82 FF F4 */ bne lbl_803734B4
/* 803734C4 00370404 38 7B 00 00 */ addi r3, r27, 0
/* 803734C8 00370408 38 80 00 04 */ li r4, 4
/* 803734CC 0037040C 38 A0 00 00 */ li r5, 0
/* 803734D0 00370410 48 00 00 45 */ bl func_80373514
/* 803734D4 00370414 7C 60 00 34 */ cntlzw r0, r3
/* 803734D8 00370418 54 00 D9 7E */ srwi r0, r0, 5
/* 803734DC 0037041C 7F E3 03 78 */ or r3, r31, r0
lbl_803734E0:
/* 803734E0 00370420 80 1C 00 00 */ lwz r0, 0(r28)
/* 803734E4 00370424 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 803734E8 00370428 40 82 FF F8 */ bne lbl_803734E0
/* 803734EC 0037042C 80 9D 00 00 */ lwz r4, 0(r29)
/* 803734F0 00370430 7C 60 00 34 */ cntlzw r0, r3
/* 803734F4 00370434 54 03 D9 7E */ srwi r3, r0, 5
/* 803734F8 00370438 70 80 04 05 */ andi. r0, r4, 0x405
/* 803734FC 0037043C 90 1D 00 00 */ stw r0, 0(r29)
/* 80373500 00370440 BB 61 00 24 */ lmw r27, 0x24(r1)
/* 80373504 00370444 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 80373508 00370448 38 21 00 38 */ addi r1, r1, 0x38
/* 8037350C 0037044C 7C 08 03 A6 */ mtlr r0
/* 80373510 00370450 4E 80 00 20 */ blr
.global func_80373514
func_80373514:
/* 80373514 00370454 94 21 FF B8 */ stwu r1, -0x48(r1)
/* 80373518 00370458 28 05 00 00 */ cmplwi r5, 0
/* 8037351C 0037045C BE C1 00 20 */ stmw r22, 0x20(r1)
/* 80373520 00370460 41 82 01 38 */ beq lbl_80373658
/* 80373524 00370464 3B A0 00 00 */ li r29, 0
/* 80373528 00370468 7C 1D 20 00 */ cmpw r29, r4
/* 8037352C 0037046C 3B C0 00 00 */ li r30, 0
/* 80373530 00370470 40 80 01 20 */ bge lbl_80373650
/* 80373534 00370474 2C 04 00 08 */ cmpwi r4, 8
/* 80373538 00370478 38 C4 FF F8 */ addi r6, r4, -8
/* 8037353C 0037047C 40 81 02 5C */ ble lbl_80373798
/* 80373540 00370480 38 06 00 07 */ addi r0, r6, 7
/* 80373544 00370484 54 00 E8 FE */ srwi r0, r0, 3
/* 80373548 00370488 2C 06 00 00 */ cmpwi r6, 0
/* 8037354C 0037048C 7C 09 03 A6 */ mtctr r0
/* 80373550 00370490 3B E3 00 00 */ addi r31, r3, 0
/* 80373554 00370494 40 81 02 44 */ ble lbl_80373798
lbl_80373558:
/* 80373558 00370498 20 DD 00 03 */ subfic r6, r29, 3
/* 8037355C 0037049C 89 9F 00 00 */ lbz r12, 0(r31)
/* 80373560 003704A0 38 1D 00 01 */ addi r0, r29, 1
/* 80373564 003704A4 89 7F 00 01 */ lbz r11, 1(r31)
/* 80373568 003704A8 54 CA 18 38 */ slwi r10, r6, 3
/* 8037356C 003704AC 89 3F 00 02 */ lbz r9, 2(r31)
/* 80373570 003704B0 21 00 00 03 */ subfic r8, r0, 3
/* 80373574 003704B4 88 FF 00 03 */ lbz r7, 3(r31)
/* 80373578 003704B8 38 DD 00 02 */ addi r6, r29, 2
/* 8037357C 003704BC 88 1F 00 04 */ lbz r0, 4(r31)
/* 80373580 003704C0 7D 8C 50 30 */ slw r12, r12, r10
/* 80373584 003704C4 8A FF 00 05 */ lbz r23, 5(r31)
/* 80373588 003704C8 55 0A 18 38 */ slwi r10, r8, 3
/* 8037358C 003704CC 8B 3F 00 06 */ lbz r25, 6(r31)
/* 80373590 003704D0 20 C6 00 03 */ subfic r6, r6, 3
/* 80373594 003704D4 8B 7F 00 07 */ lbz r27, 7(r31)
/* 80373598 003704D8 54 C8 18 38 */ slwi r8, r6, 3
/* 8037359C 003704DC 7C DD 00 D0 */ neg r6, r29
/* 803735A0 003704E0 3A DD 00 04 */ addi r22, r29, 4
/* 803735A4 003704E4 54 C6 18 38 */ slwi r6, r6, 3
/* 803735A8 003704E8 22 D6 00 03 */ subfic r22, r22, 3
/* 803735AC 003704EC 3B 1D 00 05 */ addi r24, r29, 5
/* 803735B0 003704F0 56 D6 18 38 */ slwi r22, r22, 3
/* 803735B4 003704F4 23 18 00 03 */ subfic r24, r24, 3
/* 803735B8 003704F8 3B 5D 00 06 */ addi r26, r29, 6
/* 803735BC 003704FC 57 18 18 38 */ slwi r24, r24, 3
/* 803735C0 00370500 23 5A 00 03 */ subfic r26, r26, 3
/* 803735C4 00370504 3B 9D 00 07 */ addi r28, r29, 7
/* 803735C8 00370508 57 5A 18 38 */ slwi r26, r26, 3
/* 803735CC 0037050C 23 9C 00 03 */ subfic r28, r28, 3
/* 803735D0 00370510 57 9C 18 38 */ slwi r28, r28, 3
/* 803735D4 00370514 7F DE 63 78 */ or r30, r30, r12
/* 803735D8 00370518 7D 6A 50 30 */ slw r10, r11, r10
/* 803735DC 0037051C 7F DE 53 78 */ or r30, r30, r10
/* 803735E0 00370520 7D 28 40 30 */ slw r8, r9, r8
/* 803735E4 00370524 7F DE 43 78 */ or r30, r30, r8
/* 803735E8 00370528 7C E6 30 30 */ slw r6, r7, r6
/* 803735EC 0037052C 7F DE 33 78 */ or r30, r30, r6
/* 803735F0 00370530 7C 00 B0 30 */ slw r0, r0, r22
/* 803735F4 00370534 7F DE 03 78 */ or r30, r30, r0
/* 803735F8 00370538 7E E0 C0 30 */ slw r0, r23, r24
/* 803735FC 0037053C 7F DE 03 78 */ or r30, r30, r0
/* 80373600 00370540 7F 20 D0 30 */ slw r0, r25, r26
/* 80373604 00370544 7F DE 03 78 */ or r30, r30, r0
/* 80373608 00370548 7F 60 E0 30 */ slw r0, r27, r28
/* 8037360C 0037054C 7F DE 03 78 */ or r30, r30, r0
/* 80373610 00370550 3B FF 00 08 */ addi r31, r31, 8
/* 80373614 00370554 3B BD 00 08 */ addi r29, r29, 8
/* 80373618 00370558 42 00 FF 40 */ bdnz lbl_80373558
/* 8037361C 0037055C 48 00 01 7C */ b lbl_80373798
lbl_80373620:
/* 80373620 00370560 7C 1D 20 50 */ subf r0, r29, r4
/* 80373624 00370564 7C 1D 20 00 */ cmpw r29, r4
/* 80373628 00370568 7C 09 03 A6 */ mtctr r0
/* 8037362C 0037056C 40 80 00 24 */ bge lbl_80373650
lbl_80373630:
/* 80373630 00370570 20 1D 00 03 */ subfic r0, r29, 3
/* 80373634 00370574 88 C7 00 00 */ lbz r6, 0(r7)
/* 80373638 00370578 54 00 18 38 */ slwi r0, r0, 3
/* 8037363C 0037057C 7C C0 00 30 */ slw r0, r6, r0
/* 80373640 00370580 7F DE 03 78 */ or r30, r30, r0
/* 80373644 00370584 38 E7 00 01 */ addi r7, r7, 1
/* 80373648 00370588 3B BD 00 01 */ addi r29, r29, 1
/* 8037364C 0037058C 42 00 FF E4 */ bdnz lbl_80373630
lbl_80373650:
/* 80373650 00370590 3C C0 CC 00 */ lis r6, 0xCC006838@ha
/* 80373654 00370594 93 C6 68 38 */ stw r30, 0xCC006838@l(r6)
lbl_80373658:
/* 80373658 00370598 38 04 FF FF */ addi r0, r4, -1
/* 8037365C 0037059C 3C C0 CC 00 */ lis r6, 0xCC006800@ha
/* 80373660 003705A0 54 A7 10 3A */ slwi r7, r5, 2
/* 80373664 003705A4 39 06 68 00 */ addi r8, r6, 0xCC006800@l
/* 80373668 003705A8 60 E6 00 01 */ ori r6, r7, 1
/* 8037366C 003705AC 54 00 20 36 */ slwi r0, r0, 4
/* 80373670 003705B0 7C C0 03 78 */ or r0, r6, r0
/* 80373674 003705B4 94 08 00 34 */ stwu r0, 0x34(r8)
lbl_80373678:
/* 80373678 003705B8 80 08 00 00 */ lwz r0, 0(r8)
/* 8037367C 003705BC 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80373680 003705C0 40 82 FF F8 */ bne lbl_80373678
/* 80373684 003705C4 28 05 00 00 */ cmplwi r5, 0
/* 80373688 003705C8 40 82 01 08 */ bne lbl_80373790
/* 8037368C 003705CC 38 A0 00 00 */ li r5, 0
/* 80373690 003705D0 3C C0 CC 00 */ lis r6, 0xCC006838@ha
/* 80373694 003705D4 7C 05 20 00 */ cmpw r5, r4
/* 80373698 003705D8 80 06 68 38 */ lwz r0, 0xCC006838@l(r6)
/* 8037369C 003705DC 40 80 00 F4 */ bge lbl_80373790
/* 803736A0 003705E0 2C 04 00 08 */ cmpwi r4, 8
/* 803736A4 003705E4 38 E4 FF F8 */ addi r7, r4, -8
/* 803736A8 003705E8 40 81 00 BC */ ble lbl_80373764
/* 803736AC 003705EC 38 C7 00 07 */ addi r6, r7, 7
/* 803736B0 003705F0 54 C6 E8 FE */ srwi r6, r6, 3
/* 803736B4 003705F4 2C 07 00 00 */ cmpwi r7, 0
/* 803736B8 003705F8 7C C9 03 A6 */ mtctr r6
/* 803736BC 003705FC 40 81 00 A8 */ ble lbl_80373764
lbl_803736C0:
/* 803736C0 00370600 20 C5 00 03 */ subfic r6, r5, 3
/* 803736C4 00370604 54 C7 18 38 */ slwi r7, r6, 3
/* 803736C8 00370608 38 C5 00 01 */ addi r6, r5, 1
/* 803736CC 0037060C 7C 08 3C 30 */ srw r8, r0, r7
/* 803736D0 00370610 20 C6 00 03 */ subfic r6, r6, 3
/* 803736D4 00370614 99 03 00 00 */ stb r8, 0(r3)
/* 803736D8 00370618 54 C7 18 38 */ slwi r7, r6, 3
/* 803736DC 0037061C 38 C5 00 02 */ addi r6, r5, 2
/* 803736E0 00370620 7C 0C 3C 30 */ srw r12, r0, r7
/* 803736E4 00370624 20 C6 00 03 */ subfic r6, r6, 3
/* 803736E8 00370628 99 83 00 01 */ stb r12, 1(r3)
/* 803736EC 0037062C 54 C6 18 38 */ slwi r6, r6, 3
/* 803736F0 00370630 7C 0B 34 30 */ srw r11, r0, r6
/* 803736F4 00370634 7C C5 00 D0 */ neg r6, r5
/* 803736F8 00370638 99 63 00 02 */ stb r11, 2(r3)
/* 803736FC 0037063C 54 C7 18 38 */ slwi r7, r6, 3
/* 80373700 00370640 38 C5 00 04 */ addi r6, r5, 4
/* 80373704 00370644 7C 0A 3C 30 */ srw r10, r0, r7
/* 80373708 00370648 20 C6 00 03 */ subfic r6, r6, 3
/* 8037370C 0037064C 99 43 00 03 */ stb r10, 3(r3)
/* 80373710 00370650 54 C7 18 38 */ slwi r7, r6, 3
/* 80373714 00370654 38 C5 00 05 */ addi r6, r5, 5
/* 80373718 00370658 7C 09 3C 30 */ srw r9, r0, r7
/* 8037371C 0037065C 20 C6 00 03 */ subfic r6, r6, 3
/* 80373720 00370660 99 23 00 04 */ stb r9, 4(r3)
/* 80373724 00370664 54 C7 18 38 */ slwi r7, r6, 3
/* 80373728 00370668 7C 08 3C 30 */ srw r8, r0, r7
/* 8037372C 0037066C 38 C5 00 06 */ addi r6, r5, 6
/* 80373730 00370670 99 03 00 05 */ stb r8, 5(r3)
/* 80373734 00370674 20 E6 00 03 */ subfic r7, r6, 3
/* 80373738 00370678 38 C5 00 07 */ addi r6, r5, 7
/* 8037373C 0037067C 54 E7 18 38 */ slwi r7, r7, 3
/* 80373740 00370680 7C 07 3C 30 */ srw r7, r0, r7
/* 80373744 00370684 20 C6 00 03 */ subfic r6, r6, 3
/* 80373748 00370688 98 E3 00 06 */ stb r7, 6(r3)
/* 8037374C 0037068C 54 C6 18 38 */ slwi r6, r6, 3
/* 80373750 00370690 7C 06 34 30 */ srw r6, r0, r6
/* 80373754 00370694 98 C3 00 07 */ stb r6, 7(r3)
/* 80373758 00370698 38 63 00 08 */ addi r3, r3, 8
/* 8037375C 0037069C 38 A5 00 08 */ addi r5, r5, 8
/* 80373760 003706A0 42 00 FF 60 */ bdnz lbl_803736C0
lbl_80373764:
/* 80373764 003706A4 7C C5 20 50 */ subf r6, r5, r4
/* 80373768 003706A8 7C 05 20 00 */ cmpw r5, r4
/* 8037376C 003706AC 7C C9 03 A6 */ mtctr r6
/* 80373770 003706B0 40 80 00 20 */ bge lbl_80373790
lbl_80373774:
/* 80373774 003706B4 20 85 00 03 */ subfic r4, r5, 3
/* 80373778 003706B8 54 84 18 38 */ slwi r4, r4, 3
/* 8037377C 003706BC 7C 04 24 30 */ srw r4, r0, r4
/* 80373780 003706C0 98 83 00 00 */ stb r4, 0(r3)
/* 80373784 003706C4 38 63 00 01 */ addi r3, r3, 1
/* 80373788 003706C8 38 A5 00 01 */ addi r5, r5, 1
/* 8037378C 003706CC 42 00 FF E8 */ bdnz lbl_80373774
lbl_80373790:
/* 80373790 003706D0 38 60 00 01 */ li r3, 1
/* 80373794 003706D4 48 00 00 0C */ b lbl_803737A0
lbl_80373798:
/* 80373798 003706D8 7C E3 EA 14 */ add r7, r3, r29
/* 8037379C 003706DC 4B FF FE 84 */ b lbl_80373620
lbl_803737A0:
/* 803737A0 003706E0 BA C1 00 20 */ lmw r22, 0x20(r1)
/* 803737A4 003706E4 38 21 00 48 */ addi r1, r1, 0x48
/* 803737A8 003706E8 4E 80 00 20 */ blr
.global func_803737AC
func_803737AC:
/* 803737AC 003706EC 38 60 00 00 */ li r3, 0
/* 803737B0 003706F0 4E 80 00 20 */ blr
/* 803737B4 003706F4 00 00 00 00 */ .4byte 0x00000000 /* unknown instruction */
/* 803737B8 003706F8 00 00 00 00 */ .4byte 0x00000000 /* unknown instruction */
/* 803737BC 003706FC 00 00 00 00 */ .4byte 0x00000000 /* unknown instruction */