.include "macros.inc" .section .text, "ax" # 0x80003640 - 0x803CB1C0 .global inflate_flush inflate_flush: /* 8034440C 0034136C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80344410 00341370 7C 08 02 A6 */ mflr r0 /* 80344414 00341374 90 01 00 24 */ stw r0, 0x24(r1) /* 80344418 00341378 BF 41 00 08 */ stmw r26, 8(r1) /* 8034441C 0034137C 7C 7B 1B 78 */ mr r27, r3 /* 80344420 00341380 7C 9C 23 78 */ mr r28, r4 /* 80344424 00341384 7C BD 2B 78 */ mr r29, r5 /* 80344428 00341388 83 C3 00 30 */ lwz r30, 0x30(r3) /* 8034442C 0034138C 80 03 00 34 */ lwz r0, 0x34(r3) /* 80344430 00341390 83 E4 00 0C */ lwz r31, 0xc(r4) /* 80344434 00341394 7C 1E 00 40 */ cmplw r30, r0 /* 80344438 00341398 41 81 00 08 */ bgt lbl_80344440 /* 8034443C 0034139C 48 00 00 08 */ b lbl_80344444 lbl_80344440: /* 80344440 003413A0 80 1B 00 2C */ lwz r0, 0x2c(r27) lbl_80344444: /* 80344444 003413A4 80 7C 00 10 */ lwz r3, 0x10(r28) /* 80344448 003413A8 7F 5E 00 50 */ subf r26, r30, r0 /* 8034444C 003413AC 7C 1A 18 40 */ cmplw r26, r3 /* 80344450 003413B0 40 81 00 08 */ ble lbl_80344458 /* 80344454 003413B4 7C 7A 1B 78 */ mr r26, r3 lbl_80344458: /* 80344458 003413B8 28 1A 00 00 */ cmplwi r26, 0 /* 8034445C 003413BC 41 82 00 10 */ beq lbl_8034446C /* 80344460 003413C0 2C 1D FF FB */ cmpwi r29, -5 /* 80344464 003413C4 40 82 00 08 */ bne lbl_8034446C /* 80344468 003413C8 3B A0 00 00 */ li r29, 0 lbl_8034446C: /* 8034446C 003413CC 80 1C 00 10 */ lwz r0, 0x10(r28) /* 80344470 003413D0 7C 1A 00 50 */ subf r0, r26, r0 /* 80344474 003413D4 90 1C 00 10 */ stw r0, 0x10(r28) /* 80344478 003413D8 80 1C 00 14 */ lwz r0, 0x14(r28) /* 8034447C 003413DC 7C 00 D2 14 */ add r0, r0, r26 /* 80344480 003413E0 90 1C 00 14 */ stw r0, 0x14(r28) /* 80344484 003413E4 81 9B 00 38 */ lwz r12, 0x38(r27) /* 80344488 003413E8 28 0C 00 00 */ cmplwi r12, 0 /* 8034448C 003413EC 41 82 00 20 */ beq lbl_803444AC /* 80344490 003413F0 7F C4 F3 78 */ mr r4, r30 /* 80344494 003413F4 7F 45 D3 78 */ mr r5, r26 /* 80344498 003413F8 80 7B 00 3C */ lwz r3, 0x3c(r27) /* 8034449C 003413FC 7D 89 03 A6 */ mtctr r12 /* 803444A0 00341400 4E 80 04 21 */ bctrl /* 803444A4 00341404 90 7B 00 3C */ stw r3, 0x3c(r27) /* 803444A8 00341408 90 7C 00 30 */ stw r3, 0x30(r28) lbl_803444AC: /* 803444AC 0034140C 7F E3 FB 78 */ mr r3, r31 /* 803444B0 00341410 7F C4 F3 78 */ mr r4, r30 /* 803444B4 00341414 7F 45 D3 78 */ mr r5, r26 /* 803444B8 00341418 4B CB EF D9 */ bl memcpy /* 803444BC 0034141C 80 7B 00 2C */ lwz r3, 0x2c(r27) /* 803444C0 00341420 7F DE D2 14 */ add r30, r30, r26 /* 803444C4 00341424 7F FF D2 14 */ add r31, r31, r26 /* 803444C8 00341428 7C 1E 18 40 */ cmplw r30, r3 /* 803444CC 0034142C 40 82 00 A0 */ bne lbl_8034456C /* 803444D0 00341430 80 1B 00 34 */ lwz r0, 0x34(r27) /* 803444D4 00341434 80 9B 00 28 */ lwz r4, 0x28(r27) /* 803444D8 00341438 7C 00 18 40 */ cmplw r0, r3 /* 803444DC 0034143C 7C 9E 23 78 */ mr r30, r4 /* 803444E0 00341440 40 82 00 08 */ bne lbl_803444E8 /* 803444E4 00341444 90 9B 00 34 */ stw r4, 0x34(r27) lbl_803444E8: /* 803444E8 00341448 80 1B 00 34 */ lwz r0, 0x34(r27) /* 803444EC 0034144C 80 7C 00 10 */ lwz r3, 0x10(r28) /* 803444F0 00341450 7F 5E 00 50 */ subf r26, r30, r0 /* 803444F4 00341454 7C 1A 18 40 */ cmplw r26, r3 /* 803444F8 00341458 40 81 00 08 */ ble lbl_80344500 /* 803444FC 0034145C 7C 7A 1B 78 */ mr r26, r3 lbl_80344500: /* 80344500 00341460 28 1A 00 00 */ cmplwi r26, 0 /* 80344504 00341464 41 82 00 10 */ beq lbl_80344514 /* 80344508 00341468 2C 1D FF FB */ cmpwi r29, -5 /* 8034450C 0034146C 40 82 00 08 */ bne lbl_80344514 /* 80344510 00341470 3B A0 00 00 */ li r29, 0 lbl_80344514: /* 80344514 00341474 80 1C 00 10 */ lwz r0, 0x10(r28) /* 80344518 00341478 7C 1A 00 50 */ subf r0, r26, r0 /* 8034451C 0034147C 90 1C 00 10 */ stw r0, 0x10(r28) /* 80344520 00341480 80 1C 00 14 */ lwz r0, 0x14(r28) /* 80344524 00341484 7C 00 D2 14 */ add r0, r0, r26 /* 80344528 00341488 90 1C 00 14 */ stw r0, 0x14(r28) /* 8034452C 0034148C 81 9B 00 38 */ lwz r12, 0x38(r27) /* 80344530 00341490 28 0C 00 00 */ cmplwi r12, 0 /* 80344534 00341494 41 82 00 20 */ beq lbl_80344554 /* 80344538 00341498 7F C4 F3 78 */ mr r4, r30 /* 8034453C 0034149C 7F 45 D3 78 */ mr r5, r26 /* 80344540 003414A0 80 7B 00 3C */ lwz r3, 0x3c(r27) /* 80344544 003414A4 7D 89 03 A6 */ mtctr r12 /* 80344548 003414A8 4E 80 04 21 */ bctrl /* 8034454C 003414AC 90 7B 00 3C */ stw r3, 0x3c(r27) /* 80344550 003414B0 90 7C 00 30 */ stw r3, 0x30(r28) lbl_80344554: /* 80344554 003414B4 7F E3 FB 78 */ mr r3, r31 /* 80344558 003414B8 7F C4 F3 78 */ mr r4, r30 /* 8034455C 003414BC 7F 45 D3 78 */ mr r5, r26 /* 80344560 003414C0 4B CB EF 31 */ bl memcpy /* 80344564 003414C4 7F FF D2 14 */ add r31, r31, r26 /* 80344568 003414C8 7F DE D2 14 */ add r30, r30, r26 lbl_8034456C: /* 8034456C 003414CC 93 FC 00 0C */ stw r31, 0xc(r28) /* 80344570 003414D0 7F A3 EB 78 */ mr r3, r29 /* 80344574 003414D4 93 DB 00 30 */ stw r30, 0x30(r27) /* 80344578 003414D8 BB 41 00 08 */ lmw r26, 8(r1) /* 8034457C 003414DC 80 01 00 24 */ lwz r0, 0x24(r1) /* 80344580 003414E0 7C 08 03 A6 */ mtlr r0 /* 80344584 003414E4 38 21 00 20 */ addi r1, r1, 0x20 /* 80344588 003414E8 4E 80 00 20 */ blr .global zcfree zcfree: /* 8034458C 003414EC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80344590 003414F0 7C 08 02 A6 */ mflr r0 /* 80344594 003414F4 90 01 00 14 */ stw r0, 0x14(r1) /* 80344598 003414F8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8034459C 003414FC 7C 7F 1B 78 */ mr r31, r3 /* 803445A0 00341500 7C 83 23 78 */ mr r3, r4 /* 803445A4 00341504 48 04 5D B5 */ bl sub_8038a358 /* 803445A8 00341508 28 1F 00 00 */ cmplwi r31, 0 /* 803445AC 0034150C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803445B0 00341510 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803445B4 00341514 7C 08 03 A6 */ mtlr r0 /* 803445B8 00341518 38 21 00 10 */ addi r1, r1, 0x10 /* 803445BC 0034151C 4E 80 00 20 */ blr .global zcalloc zcalloc: /* 803445C0 00341520 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803445C4 00341524 7C 08 02 A6 */ mflr r0 /* 803445C8 00341528 7C 83 23 78 */ mr r3, r4 /* 803445CC 0034152C 7C A4 2B 78 */ mr r4, r5 /* 803445D0 00341530 90 01 00 14 */ stw r0, 0x14(r1) /* 803445D4 00341534 48 04 5C C1 */ bl calloc /* 803445D8 00341538 80 01 00 14 */ lwz r0, 0x14(r1) /* 803445DC 0034153C 7C 08 03 A6 */ mtlr r0 /* 803445E0 00341540 38 21 00 10 */ addi r1, r1, 0x10 /* 803445E4 00341544 4E 80 00 20 */ blr