/* create__10JKRExpHeapFUlP7JKRHeapb __ct__10JKRExpHeapFPvUlP7JKRHeapb::create(unsigned long, JKRHeap *, bool) */ /* JKRExpHeap_NS_create */ /* 802CEE2C 002CBD6C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802CEE30 002CBD70 7C 08 02 A6 */ mflr r0 /* 802CEE34 002CBD74 90 01 00 24 */ stw r0, 0x24(r1) /* 802CEE38 002CBD78 39 61 00 20 */ addi r11, r1, 0x20 /* 802CEE3C 002CBD7C 48 09 33 9D */ bl _savegpr_28 /* 802CEE40 002CBD80 7C 9C 23 79 */ or. r28, r4, r4 /* 802CEE44 002CBD84 7C BD 2B 78 */ mr r29, r5 /* 802CEE48 002CBD88 40 82 00 08 */ bne lbl_802CEE50 /* 802CEE4C 002CBD8C 83 8D 8D F8 */ lwz r28, lbl_80451378-_SDA_BASE_(r13) lbl_802CEE50: /* 802CEE50 002CBD90 3C 03 00 01 */ addis r0, r3, 1 /* 802CEE54 002CBD94 28 00 FF FF */ cmplwi r0, 0xffff /* 802CEE58 002CBD98 40 82 00 10 */ bne lbl_802CEE68 /* 802CEE5C 002CBD9C 7F 83 E3 78 */ mr r3, r28 /* 802CEE60 002CBDA0 38 80 00 10 */ li r4, 0x10 /* 802CEE64 002CBDA4 4B FF F9 79 */ bl getMaxAllocatableSize__7JKRHeapFi lbl_802CEE68: /* 802CEE68 002CBDA8 54 7F 00 36 */ rlwinm r31, r3, 0, 0, 0x1b /* 802CEE6C 002CBDAC 28 1F 00 A0 */ cmplwi r31, 0xa0 /* 802CEE70 002CBDB0 40 80 00 0C */ bge lbl_802CEE7C /* 802CEE74 002CBDB4 38 60 00 00 */ li r3, 0 /* 802CEE78 002CBDB8 48 00 00 70 */ b lbl_802CEEE8 lbl_802CEE7C: /* 802CEE7C 002CBDBC 7F E3 FB 78 */ mr r3, r31 /* 802CEE80 002CBDC0 38 80 00 10 */ li r4, 0x10 /* 802CEE84 002CBDC4 7F 85 E3 78 */ mr r5, r28 /* 802CEE88 002CBDC8 4B FF F5 ED */ bl alloc__7JKRHeapFUliP7JKRHeap /* 802CEE8C 002CBDCC 7C 60 1B 78 */ mr r0, r3 /* 802CEE90 002CBDD0 7C 1E 03 79 */ or. r30, r0, r0 /* 802CEE94 002CBDD4 38 9E 00 90 */ addi r4, r30, 0x90 /* 802CEE98 002CBDD8 40 82 00 0C */ bne lbl_802CEEA4 /* 802CEE9C 002CBDDC 38 60 00 00 */ li r3, 0 /* 802CEEA0 002CBDE0 48 00 00 48 */ b lbl_802CEEE8 lbl_802CEEA4: /* 802CEEA4 002CBDE4 7F C5 F3 78 */ mr r5, r30 /* 802CEEA8 002CBDE8 41 82 00 18 */ beq lbl_802CEEC0 /* 802CEEAC 002CBDEC 38 BF FF 70 */ addi r5, r31, -144 /* 802CEEB0 002CBDF0 7F 86 E3 78 */ mr r6, r28 /* 802CEEB4 002CBDF4 7F A7 EB 78 */ mr r7, r29 /* 802CEEB8 002CBDF8 48 00 01 79 */ bl __ct__10JKRExpHeapFPvUlP7JKRHeapb /* 802CEEBC 002CBDFC 7C 65 1B 78 */ mr r5, r3 lbl_802CEEC0: /* 802CEEC0 002CBE00 28 05 00 00 */ cmplwi r5, 0 /* 802CEEC4 002CBE04 40 82 00 18 */ bne lbl_802CEEDC /* 802CEEC8 002CBE08 7F C3 F3 78 */ mr r3, r30 /* 802CEECC 002CBE0C 38 80 00 00 */ li r4, 0 /* 802CEED0 002CBE10 4B FF F6 31 */ bl free__7JKRHeapFPvP7JKRHeap /* 802CEED4 002CBE14 38 60 00 00 */ li r3, 0 /* 802CEED8 002CBE18 48 00 00 10 */ b lbl_802CEEE8 lbl_802CEEDC: /* 802CEEDC 002CBE1C 38 00 00 00 */ li r0, 0 /* 802CEEE0 002CBE20 98 05 00 6E */ stb r0, 0x6e(r5) /* 802CEEE4 002CBE24 7C A3 2B 78 */ mr r3, r5 lbl_802CEEE8: /* 802CEEE8 002CBE28 39 61 00 20 */ addi r11, r1, 0x20 /* 802CEEEC 002CBE2C 48 09 33 39 */ bl _restgpr_28 /* 802CEEF0 002CBE30 80 01 00 24 */ lwz r0, 0x24(r1) /* 802CEEF4 002CBE34 7C 08 03 A6 */ mtlr r0 /* 802CEEF8 002CBE38 38 21 00 20 */ addi r1, r1, 0x20 /* 802CEEFC 002CBE3C 4E 80 00 20 */ blr