.include "macros.inc"
.section .text
.global func_8036fac4
.type func_8036fac4, @function
func_8036fac4:
mflr r0
stw r0, 4(r1)
stwu r1, -0x28(r1)
stw r31, 0x24(r1)
addi r31, r5, 0x0
stw r30, 0x20(r1)
addi r30, r4, 0x0
stw r29, 0x1c(r1)
addi r29, r3, 0x0
bl func_80371748
addi r3, r29, 0x8
bl func_80371748
stw r30, 0x10(r29)
li r0, 0x0
stw r31, 0x14(r29)
stw r0, 0x18(r29)
stw r0, 0x1c(r29)
lwz r0, 0x2c(r1)
lwz r31, 0x24(r1)
lwz r30, 0x20(r1)
lwz r29, 0x1c(r1)
addi r1, r1, 0x28
mtlr r0
blr
.size func_8036fac4, . - func_8036fac4
.global func_8036fb24
.type func_8036fb24, @function
func_8036fb24:
mflr r0
stw r0, 4(r1)
stwu r1, -0x28(r1)
stw r31, 0x24(r1)
addi r31, r5, 0x0
stw r30, 0x20(r1)
stw r29, 0x1c(r1)
addi r29, r4, 0x0
stw r28, 0x18(r1)
addi r28, r3, 0x0
bl func_8036ead4
addi r30, r3, 0x0
clrlwi r31, r31, 0x1f
b lbl_8036fb7c
lbl_8036fb5c:
cmpwi r31, 0x0
bne- lbl_8036fb74
mr r3, r30
bl func_8036eafc
li r3, 0x0
b lbl_8036fbcc
lbl_8036fb74:
mr r3, r28
bl func_8037250c
lbl_8036fb7c:
lwz r6, 0x14(r28)
lwz r4, 0x1c(r28)
cmpw r6, r4
ble+ lbl_8036fb5c
lwz r0, 0x18(r28)
addi r3, r28, 0x8
lwz r5, 0x10(r28)
add r4, r0, r4
divw r0, r4, r6
mullw r0, r0, r6
subf r0, r0, r4
slwi r0, r0, 2
stwx r29, r5, r0
lwz r4, 0x1c(r28)
addi r0, r4, 0x1
stw r0, 0x1c(r28)
bl func_803725f8
mr r3, r30
bl func_8036eafc
li r3, 0x1
lbl_8036fbcc:
lwz r0, 0x2c(r1)
lwz r31, 0x24(r1)
lwz r30, 0x20(r1)
lwz r29, 0x1c(r1)
lwz r28, 0x18(r1)
addi r1, r1, 0x28
mtlr r0
blr
.size func_8036fb24, . - func_8036fb24
.global func_8036fbec
.type func_8036fbec, @function
func_8036fbec:
mflr r0
stw r0, 4(r1)
stwu r1, -0x28(r1)
stw r31, 0x24(r1)
addi r31, r3, 0x0
stw r30, 0x20(r1)
addi r30, r5, 0x0
stw r29, 0x1c(r1)
stw r28, 0x18(r1)
addi r28, r4, 0x0
bl func_8036ead4
addi r29, r3, 0x0
clrlwi r30, r30, 0x1f
b lbl_8036fc44
lbl_8036fc24:
cmpwi r30, 0x0
bne- lbl_8036fc3c
mr r3, r29
bl func_8036eafc
li r3, 0x0
b lbl_8036fca8
lbl_8036fc3c:
addi r3, r31, 0x8
bl func_8037250c
lbl_8036fc44:
lwz r0, 0x1c(r31)
cmpwi r0, 0x0
beq+ lbl_8036fc24
cmplwi r28, 0
beq- lbl_8036fc6c
lwz r0, 0x18(r31)
lwz r3, 0x10(r31)
slwi r0, r0, 2
lwzx r0, r3, r0
stw r0, 0(r28)
lbl_8036fc6c:
lwz r5, 0x18(r31)
mr r3, r31
lwz r4, 0x14(r31)
addi r5, r5, 0x1
divw r0, r5, r4
mullw r0, r0, r4
subf r0, r0, r5
stw r0, 0x18(r31)
lwz r4, 0x1c(r31)
addi r0, r4, -0x1
stw r0, 0x1c(r31)
bl func_803725f8
mr r3, r29
bl func_8036eafc
li r3, 0x1
lbl_8036fca8:
lwz r0, 0x2c(r1)
lwz r31, 0x24(r1)
lwz r30, 0x20(r1)
lwz r29, 0x1c(r1)
lwz r28, 0x18(r1)
addi r1, r1, 0x28
mtlr r0
blr
.size func_8036fbec, . - func_8036fbec