.include "macros.inc" .section .text .global func_8036ffa8 .type func_8036ffa8, @function func_8036ffa8: /* 8036FFA8 7C0802A6 */ mflr r0 /* 8036FFAC 90010004 */ stw r0, 4(r1) /* 8036FFB0 9421FFE8 */ stwu r1, -0x18(r1) /* 8036FFB4 93E10014 */ stw r31, 0x14(r1) /* 8036FFB8 7C7F1B78 */ mr r31, r3 /* 8036FFBC 4800178D */ bl func_80371748 /* 8036FFC0 38000000 */ li r0, 0x0 /* 8036FFC4 901F0008 */ stw r0, 8(r31) /* 8036FFC8 901F000C */ stw r0, 0xc(r31) /* 8036FFCC 8001001C */ lwz r0, 0x1c(r1) /* 8036FFD0 83E10014 */ lwz r31, 0x14(r1) /* 8036FFD4 38210018 */ addi r1, r1, 0x18 /* 8036FFD8 7C0803A6 */ mtlr r0 /* 8036FFDC 4E800020 */ blr .size func_8036ffa8, . - func_8036ffa8 .global func_8036ffe0 .type func_8036ffe0, @function func_8036ffe0: /* 8036FFE0 7C0802A6 */ mflr r0 /* 8036FFE4 90010004 */ stw r0, 4(r1) /* 8036FFE8 9421FFE0 */ stwu r1, -0x20(r1) /* 8036FFEC 93E1001C */ stw r31, 0x1c(r1) /* 8036FFF0 93C10018 */ stw r30, 0x18(r1) /* 8036FFF4 93A10014 */ stw r29, 0x14(r1) /* 8036FFF8 93810010 */ stw r28, 0x10(r1) /* 8036FFFC 7C7C1B78 */ mr r28, r3 /* 80370000 4BFFEAD5 */ bl func_8036ead4 /* 80370004 7C7D1B78 */ mr r29, r3 /* 80370008 48001751 */ bl func_80371758 /* 8037000C 3BC30000 */ addi r30, r3, 0x0 /* 80370010 3BE00000 */ li r31, 0x0 lbl_80370014: /* 80370014 801C0008 */ lwz r0, 8(r28) /* 80370018 28000000 */ cmplwi r0, 0 /* 8037001C 40820040 */ bne- lbl_8037005c /* 80370020 93DC0008 */ stw r30, 8(r28) /* 80370024 807C000C */ lwz r3, 0xc(r28) /* 80370028 38030001 */ addi r0, r3, 0x1 /* 8037002C 901C000C */ stw r0, 0xc(r28) /* 80370030 807E02F8 */ lwz r3, 0x2f8(r30) /* 80370034 28030000 */ cmplwi r3, 0 /* 80370038 4082000C */ bne- lbl_80370044 /* 8037003C 939E02F4 */ stw r28, 0x2f4(r30) /* 80370040 48000008 */ b lbl_80370048 lbl_80370044: /* 80370044 93830010 */ stw r28, 0x10(r3) lbl_80370048: /* 80370048 907C0014 */ stw r3, 0x14(r28) /* 8037004C 38000000 */ li r0, 0x0 /* 80370050 901C0010 */ stw r0, 0x10(r28) /* 80370054 939E02F8 */ stw r28, 0x2f8(r30) /* 80370058 4800003C */ b lbl_80370094 lbl_8037005c: /* 8037005C 7C00F040 */ cmplw r0, r30 /* 80370060 40820014 */ bne- lbl_80370074 /* 80370064 807C000C */ lwz r3, 0xc(r28) /* 80370068 38030001 */ addi r0, r3, 0x1 /* 8037006C 901C000C */ stw r0, 0xc(r28) /* 80370070 48000024 */ b lbl_80370094 lbl_80370074: /* 80370074 939E02F0 */ stw r28, 0x2f0(r30) /* 80370078 807C0008 */ lwz r3, 8(r28) /* 8037007C 809E02D0 */ lwz r4, 0x2d0(r30) /* 80370080 48001A19 */ bl func_80371a98 /* 80370084 7F83E378 */ mr r3, r28 /* 80370088 48002485 */ bl func_8037250c /* 8037008C 93FE02F0 */ stw r31, 0x2f0(r30) /* 80370090 4BFFFF84 */ b lbl_80370014 lbl_80370094: /* 80370094 7FA3EB78 */ mr r3, r29 /* 80370098 4BFFEA65 */ bl func_8036eafc /* 8037009C 80010024 */ lwz r0, 0x24(r1) /* 803700A0 83E1001C */ lwz r31, 0x1c(r1) /* 803700A4 83C10018 */ lwz r30, 0x18(r1) /* 803700A8 83A10014 */ lwz r29, 0x14(r1) /* 803700AC 83810010 */ lwz r28, 0x10(r1) /* 803700B0 38210020 */ addi r1, r1, 0x20 /* 803700B4 7C0803A6 */ mtlr r0 /* 803700B8 4E800020 */ blr .size func_8036ffe0, . - func_8036ffe0 .global func_803700bc .type func_803700bc, @function func_803700bc: /* 803700BC 7C0802A6 */ mflr r0 /* 803700C0 90010004 */ stw r0, 4(r1) /* 803700C4 9421FFE0 */ stwu r1, -0x20(r1) /* 803700C8 93E1001C */ stw r31, 0x1c(r1) /* 803700CC 93C10018 */ stw r30, 0x18(r1) /* 803700D0 93A10014 */ stw r29, 0x14(r1) /* 803700D4 7C7D1B78 */ mr r29, r3 /* 803700D8 4BFFE9FD */ bl func_8036ead4 /* 803700DC 7C7F1B78 */ mr r31, r3 /* 803700E0 48001679 */ bl func_80371758 /* 803700E4 801D0008 */ lwz r0, 8(r29) /* 803700E8 3BC30000 */ addi r30, r3, 0x0 /* 803700EC 7C00F040 */ cmplw r0, r30 /* 803700F0 40820070 */ bne- lbl_80370160 /* 803700F4 807D000C */ lwz r3, 0xc(r29) /* 803700F8 3403FFFF */ addic. r0, r3, -0x1 /* 803700FC 901D000C */ stw r0, 0xc(r29) /* 80370100 40820060 */ bne- lbl_80370160 /* 80370104 807D0010 */ lwz r3, 0x10(r29) /* 80370108 809D0014 */ lwz r4, 0x14(r29) /* 8037010C 28030000 */ cmplwi r3, 0 /* 80370110 4082000C */ bne- lbl_8037011c /* 80370114 909E02F8 */ stw r4, 0x2f8(r30) /* 80370118 48000008 */ b lbl_80370120 lbl_8037011c: /* 8037011C 90830014 */ stw r4, 0x14(r3) lbl_80370120: /* 80370120 28040000 */ cmplwi r4, 0 /* 80370124 4082000C */ bne- lbl_80370130 /* 80370128 907E02F4 */ stw r3, 0x2f4(r30) /* 8037012C 48000008 */ b lbl_80370134 lbl_80370130: /* 80370130 90640010 */ stw r3, 0x10(r4) lbl_80370134: /* 80370134 38000000 */ li r0, 0x0 /* 80370138 901D0008 */ stw r0, 8(r29) /* 8037013C 807E02D0 */ lwz r3, 0x2d0(r30) /* 80370140 801E02D4 */ lwz r0, 0x2d4(r30) /* 80370144 7C030000 */ cmpw r3, r0 /* 80370148 40800010 */ bge- lbl_80370158 /* 8037014C 7FC3F378 */ mr r3, r30 /* 80370150 4800174D */ bl func_8037189c /* 80370154 907E02D0 */ stw r3, 0x2d0(r30) lbl_80370158: /* 80370158 7FA3EB78 */ mr r3, r29 /* 8037015C 4800249D */ bl func_803725f8 lbl_80370160: /* 80370160 7FE3FB78 */ mr r3, r31 /* 80370164 4BFFE999 */ bl func_8036eafc /* 80370168 80010024 */ lwz r0, 0x24(r1) /* 8037016C 83E1001C */ lwz r31, 0x1c(r1) /* 80370170 83C10018 */ lwz r30, 0x18(r1) /* 80370174 83A10014 */ lwz r29, 0x14(r1) /* 80370178 38210020 */ addi r1, r1, 0x20 /* 8037017C 7C0803A6 */ mtlr r0 /* 80370180 4E800020 */ blr .size func_803700bc, . - func_803700bc .global func_80370184 .type func_80370184, @function func_80370184: /* 80370184 7C0802A6 */ mflr r0 /* 80370188 90010004 */ stw r0, 4(r1) /* 8037018C 9421FFE8 */ stwu r1, -0x18(r1) /* 80370190 93E10014 */ stw r31, 0x14(r1) /* 80370194 3BE00000 */ li r31, 0x0 /* 80370198 93C10010 */ stw r30, 0x10(r1) /* 8037019C 3BC30000 */ addi r30, r3, 0x0 /* 803701A0 48000030 */ b lbl_803701d0 lbl_803701a4: /* 803701A4 80A40010 */ lwz r5, 0x10(r4) /* 803701A8 38640000 */ addi r3, r4, 0x0 /* 803701AC 28050000 */ cmplwi r5, 0 /* 803701B0 4082000C */ bne- lbl_803701bc /* 803701B4 93FE02F8 */ stw r31, 0x2f8(r30) /* 803701B8 48000008 */ b lbl_803701c0 lbl_803701bc: /* 803701BC 93E50014 */ stw r31, 0x14(r5) lbl_803701c0: /* 803701C0 90BE02F4 */ stw r5, 0x2f4(r30) /* 803701C4 93E4000C */ stw r31, 0xc(r4) /* 803701C8 93E40008 */ stw r31, 8(r4) /* 803701CC 4800242D */ bl func_803725f8 lbl_803701d0: /* 803701D0 809E02F4 */ lwz r4, 0x2f4(r30) /* 803701D4 28040000 */ cmplwi r4, 0 /* 803701D8 4082FFCC */ bne+ lbl_803701a4 /* 803701DC 8001001C */ lwz r0, 0x1c(r1) /* 803701E0 83E10014 */ lwz r31, 0x14(r1) /* 803701E4 83C10010 */ lwz r30, 0x10(r1) /* 803701E8 38210018 */ addi r1, r1, 0x18 /* 803701EC 7C0803A6 */ mtlr r0 /* 803701F0 4E800020 */ blr .size func_80370184, . - func_80370184