.include "macros.inc" .section .sdata .global lbl_805A8900 lbl_805A8900: # ROM: 0x3F62A0 .byte 0x01 .global lbl_805A8901 lbl_805A8901: # ROM: 0x3F62A1 .byte 0x00 .global lbl_805A8902 lbl_805A8902: # ROM: 0x3F62A2 .byte 0x01 .global lbl_805A8903 lbl_805A8903: # ROM: 0x3F62A3 .byte 0x01 .global lbl_805A8904 lbl_805A8904: # ROM: 0x3F62A4 .byte 0x00 .global lbl_805A8905 lbl_805A8905: # ROM: 0x3F62A5 .byte 0x01, 0x00, 0x00 .global lbl_805A8908 lbl_805A8908: # ROM: 0x3F62A8 .4byte 0x00000002 .section .text, "ax" .global FourCCToTypeIdx__11CFactoryMgrFUi FourCCToTypeIdx__11CFactoryMgrFUi: /* 803385CC 0033552C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803385D0 00335530 90 61 00 08 */ stw r3, 8(r1) /* 803385D4 00335534 88 01 00 08 */ lbz r0, 8(r1) /* 803385D8 00335538 7C 00 07 74 */ extsb r0, r0 /* 803385DC 0033553C 2C 00 FF FF */ cmpwi r0, -1 /* 803385E0 00335540 40 82 00 0C */ bne lbl_803385EC /* 803385E4 00335544 38 00 FF FF */ li r0, -1 /* 803385E8 00335548 48 00 00 14 */ b lbl_803385FC lbl_803385EC: /* 803385EC 0033554C 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 803385F0 00335550 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 803385F4 00335554 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 803385F8 00335558 7C 03 00 AE */ lbzx r0, r3, r0 lbl_803385FC: /* 803385FC 0033555C 88 81 00 09 */ lbz r4, 9(r1) /* 80338600 00335560 98 01 00 08 */ stb r0, 8(r1) /* 80338604 00335564 7C 84 07 74 */ extsb r4, r4 /* 80338608 00335568 2C 04 FF FF */ cmpwi r4, -1 /* 8033860C 0033556C 40 82 00 0C */ bne lbl_80338618 /* 80338610 00335570 38 00 FF FF */ li r0, -1 /* 80338614 00335574 48 00 00 14 */ b lbl_80338628 lbl_80338618: /* 80338618 00335578 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 8033861C 0033557C 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80338620 00335580 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 80338624 00335584 7C 03 00 AE */ lbzx r0, r3, r0 lbl_80338628: /* 80338628 00335588 88 81 00 0A */ lbz r4, 0xa(r1) /* 8033862C 0033558C 98 01 00 09 */ stb r0, 9(r1) /* 80338630 00335590 7C 84 07 74 */ extsb r4, r4 /* 80338634 00335594 2C 04 FF FF */ cmpwi r4, -1 /* 80338638 00335598 40 82 00 0C */ bne lbl_80338644 /* 8033863C 0033559C 38 00 FF FF */ li r0, -1 /* 80338640 003355A0 48 00 00 14 */ b lbl_80338654 lbl_80338644: /* 80338644 003355A4 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 80338648 003355A8 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 8033864C 003355AC 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 80338650 003355B0 7C 03 00 AE */ lbzx r0, r3, r0 lbl_80338654: /* 80338654 003355B4 88 81 00 0B */ lbz r4, 0xb(r1) /* 80338658 003355B8 98 01 00 0A */ stb r0, 0xa(r1) /* 8033865C 003355BC 7C 84 07 74 */ extsb r4, r4 /* 80338660 003355C0 2C 04 FF FF */ cmpwi r4, -1 /* 80338664 003355C4 40 82 00 0C */ bne lbl_80338670 /* 80338668 003355C8 38 00 FF FF */ li r0, -1 /* 8033866C 003355CC 48 00 00 14 */ b lbl_80338680 lbl_80338670: /* 80338670 003355D0 3C 60 80 3F */ lis r3, lbl_803F2C20@ha /* 80338674 003355D4 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80338678 003355D8 38 63 2C 20 */ addi r3, r3, lbl_803F2C20@l /* 8033867C 003355DC 7C 03 00 AE */ lbzx r0, r3, r0 lbl_80338680: /* 80338680 003355E0 98 01 00 0B */ stb r0, 0xb(r1) /* 80338684 003355E4 3C 60 80 3D */ lis r3, lbl_803D7988@ha /* 80338688 003355E8 38 00 00 13 */ li r0, 0x13 /* 8033868C 003355EC 38 83 79 88 */ addi r4, r3, lbl_803D7988@l /* 80338690 003355F0 80 A1 00 08 */ lwz r5, 8(r1) /* 80338694 003355F4 38 60 00 00 */ li r3, 0 /* 80338698 003355F8 7C 09 03 A6 */ mtctr r0 lbl_8033869C: /* 8033869C 003355FC 80 04 00 00 */ lwz r0, 0(r4) /* 803386A0 00335600 7C 05 00 40 */ cmplw r5, r0 /* 803386A4 00335604 40 82 00 08 */ bne lbl_803386AC /* 803386A8 00335608 48 00 00 28 */ b lbl_803386D0 lbl_803386AC: /* 803386AC 0033560C 84 04 00 04 */ lwzu r0, 4(r4) /* 803386B0 00335610 38 63 00 01 */ addi r3, r3, 1 /* 803386B4 00335614 7C 05 00 40 */ cmplw r5, r0 /* 803386B8 00335618 40 82 00 08 */ bne lbl_803386C0 /* 803386BC 0033561C 48 00 00 14 */ b lbl_803386D0 lbl_803386C0: /* 803386C0 00335620 38 84 00 04 */ addi r4, r4, 4 /* 803386C4 00335624 38 63 00 01 */ addi r3, r3, 1 /* 803386C8 00335628 42 00 FF D4 */ bdnz lbl_8033869C /* 803386CC 0033562C 38 60 FF FF */ li r3, -1 lbl_803386D0: /* 803386D0 00335630 38 21 00 10 */ addi r1, r1, 0x10 /* 803386D4 00335634 4E 80 00 20 */ blr .global TypeIdxToFourCC__11CFactoryMgrFUi TypeIdxToFourCC__11CFactoryMgrFUi: /* 803386D8 00335638 3C 80 80 3D */ lis r4, lbl_803D7988@ha /* 803386DC 0033563C 54 60 10 3A */ slwi r0, r3, 2 /* 803386E0 00335640 38 64 79 88 */ addi r3, r4, lbl_803D7988@l /* 803386E4 00335644 7C 63 00 2E */ lwzx r3, r3, r0 /* 803386E8 00335648 4E 80 00 20 */ blr .global MakeObjectFromMemory__11CFactoryMgrFRC10SObjectTagPvibRC15CVParamTransfer MakeObjectFromMemory__11CFactoryMgrFRC10SObjectTagPvibRC15CVParamTransfer: /* 803386EC 0033564C 94 21 FE F0 */ stwu r1, -0x110(r1) /* 803386F0 00335650 7C 08 02 A6 */ mflr r0 /* 803386F4 00335654 90 01 01 14 */ stw r0, 0x114(r1) /* 803386F8 00335658 BF 21 00 F4 */ stmw r25, 0xf4(r1) /* 803386FC 0033565C 7C BE 2B 78 */ mr r30, r5 /* 80338700 00335660 7C DA 33 78 */ mr r26, r6 /* 80338704 00335664 7C 7D 1B 78 */ mr r29, r3 /* 80338708 00335668 7C FB 3B 78 */ mr r27, r7 /* 8033870C 0033566C 7D 3F 4B 78 */ mr r31, r9 /* 80338710 00335670 38 C0 00 00 */ li r6, 0 /* 80338714 00335674 81 44 00 24 */ lwz r10, 0x24(r4) /* 80338718 00335678 80 A5 00 00 */ lwz r5, 0(r5) /* 8033871C 0033567C 48 00 00 20 */ b lbl_8033873C lbl_80338720: /* 80338720 00335680 80 0A 00 10 */ lwz r0, 0x10(r10) /* 80338724 00335684 7C 00 28 00 */ cmpw r0, r5 /* 80338728 00335688 41 80 00 10 */ blt lbl_80338738 /* 8033872C 0033568C 7D 46 53 78 */ mr r6, r10 /* 80338730 00335690 81 4A 00 00 */ lwz r10, 0(r10) /* 80338734 00335694 48 00 00 08 */ b lbl_8033873C lbl_80338738: /* 80338738 00335698 81 4A 00 04 */ lwz r10, 4(r10) lbl_8033873C: /* 8033873C 0033569C 28 0A 00 00 */ cmplwi r10, 0 /* 80338740 003356A0 40 82 FF E0 */ bne lbl_80338720 /* 80338744 003356A4 28 06 00 00 */ cmplwi r6, 0 /* 80338748 003356A8 38 60 00 00 */ li r3, 0 /* 8033874C 003356AC 41 82 00 10 */ beq lbl_8033875C /* 80338750 003356B0 80 06 00 10 */ lwz r0, 0x10(r6) /* 80338754 003356B4 7C 05 00 00 */ cmpw r5, r0 /* 80338758 003356B8 40 80 00 08 */ bge lbl_80338760 lbl_8033875C: /* 8033875C 003356BC 38 60 00 01 */ li r3, 1 lbl_80338760: /* 80338760 003356C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80338764 003356C4 41 82 00 08 */ beq lbl_8033876C /* 80338768 003356C8 38 C0 00 00 */ li r6, 0 lbl_8033876C: /* 8033876C 003356CC 38 00 00 00 */ li r0, 0 /* 80338770 003356D0 38 64 00 1C */ addi r3, r4, 0x1c /* 80338774 003356D4 7C 06 00 40 */ cmplw r6, r0 /* 80338778 003356D8 90 C1 00 40 */ stw r6, 0x40(r1) /* 8033877C 003356DC 90 61 00 44 */ stw r3, 0x44(r1) /* 80338780 003356E0 90 01 00 38 */ stw r0, 0x38(r1) /* 80338784 003356E4 90 61 00 3C */ stw r3, 0x3c(r1) /* 80338788 003356E8 40 82 00 0C */ bne lbl_80338794 /* 8033878C 003356EC 7C 03 18 40 */ cmplw r3, r3 /* 80338790 003356F0 41 82 00 08 */ beq lbl_80338798 lbl_80338794: /* 80338794 003356F4 38 00 00 01 */ li r0, 1 lbl_80338798: /* 80338798 003356F8 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8033879C 003356FC 41 82 02 08 */ beq lbl_803389A4 /* 803387A0 00335700 55 00 06 3F */ clrlwi. r0, r8, 0x18 /* 803387A4 00335704 83 86 00 14 */ lwz r28, 0x14(r6) /* 803387A8 00335708 41 82 01 7C */ beq lbl_80338924 /* 803387AC 0033570C 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 803387B0 00335710 38 60 00 24 */ li r3, 0x24 /* 803387B4 00335714 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 803387B8 00335718 38 A0 00 00 */ li r5, 0 /* 803387BC 0033571C 4B FD D0 B1 */ bl __nw__FUlPCcPCc /* 803387C0 00335720 7C 64 1B 79 */ or. r4, r3, r3 /* 803387C4 00335724 41 82 00 18 */ beq lbl_803387DC /* 803387C8 00335728 7F 44 D3 78 */ mr r4, r26 /* 803387CC 0033572C 7F 65 DB 78 */ mr r5, r27 /* 803387D0 00335730 38 C0 00 00 */ li r6, 0 /* 803387D4 00335734 48 00 6A 39 */ bl __ct__15CMemoryInStreamFPvUlQ215CMemoryInStream10EOwnerShip /* 803387D8 00335738 7C 64 1B 78 */ mr r4, r3 lbl_803387DC: /* 803387DC 0033573C 7C 04 00 D0 */ neg r0, r4 /* 803387E0 00335740 90 81 00 5C */ stw r4, 0x5c(r1) /* 803387E4 00335744 7C 00 23 78 */ or r0, r0, r4 /* 803387E8 00335748 7C 83 23 78 */ mr r3, r4 /* 803387EC 0033574C 54 00 0F FE */ srwi r0, r0, 0x1f /* 803387F0 00335750 98 01 00 58 */ stb r0, 0x58(r1) /* 803387F4 00335754 48 00 64 91 */ bl ReadLong__12CInputStreamFv /* 803387F8 00335758 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 803387FC 0033575C 7C 7A 1B 78 */ mr r26, r3 /* 80338800 00335760 38 A0 00 00 */ li r5, 0 /* 80338804 00335764 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 80338808 00335768 4B FD D0 11 */ bl __nwa__FUlPCcPCc /* 8033880C 0033576C 7C 03 00 D0 */ neg r0, r3 /* 80338810 00335770 88 C1 00 58 */ lbz r6, 0x58(r1) /* 80338814 00335774 7C 00 1B 78 */ or r0, r0, r3 /* 80338818 00335778 80 A1 00 5C */ lwz r5, 0x5c(r1) /* 8033881C 0033577C 54 07 0F FE */ srwi r7, r0, 0x1f /* 80338820 00335780 38 00 00 00 */ li r0, 0 /* 80338824 00335784 90 61 00 54 */ stw r3, 0x54(r1) /* 80338828 00335788 38 61 00 B8 */ addi r3, r1, 0xb8 /* 8033882C 0033578C 38 81 00 30 */ addi r4, r1, 0x30 /* 80338830 00335790 98 E1 00 50 */ stb r7, 0x50(r1) /* 80338834 00335794 98 C1 00 30 */ stb r6, 0x30(r1) /* 80338838 00335798 90 A1 00 34 */ stw r5, 0x34(r1) /* 8033883C 0033579C 98 01 00 58 */ stb r0, 0x58(r1) /* 80338840 003357A0 48 00 70 C1 */ bl "__ct__15CZipInputStreamFQ24rstl24auto_ptr<12CInputStream>" /* 80338844 003357A4 88 01 00 30 */ lbz r0, 0x30(r1) /* 80338848 003357A8 28 00 00 00 */ cmplwi r0, 0 /* 8033884C 003357AC 41 82 00 24 */ beq lbl_80338870 /* 80338850 003357B0 80 61 00 34 */ lwz r3, 0x34(r1) /* 80338854 003357B4 28 03 00 00 */ cmplwi r3, 0 /* 80338858 003357B8 41 82 00 18 */ beq lbl_80338870 /* 8033885C 003357BC 81 83 00 00 */ lwz r12, 0(r3) /* 80338860 003357C0 38 80 00 01 */ li r4, 1 /* 80338864 003357C4 81 8C 00 08 */ lwz r12, 8(r12) /* 80338868 003357C8 7D 89 03 A6 */ mtctr r12 /* 8033886C 003357CC 4E 80 04 21 */ bctrl lbl_80338870: /* 80338870 003357D0 80 81 00 54 */ lwz r4, 0x54(r1) /* 80338874 003357D4 7F 45 D3 78 */ mr r5, r26 /* 80338878 003357D8 38 61 00 B8 */ addi r3, r1, 0xb8 /* 8033887C 003357DC 48 00 66 D9 */ bl Get__12CInputStreamFPvUl /* 80338880 003357E0 38 61 00 B8 */ addi r3, r1, 0xb8 /* 80338884 003357E4 38 80 FF FF */ li r4, -1 /* 80338888 003357E8 48 00 6F B9 */ bl __dt__15CZipInputStreamFv /* 8033888C 003357EC 7F 8C E3 78 */ mr r12, r28 /* 80338890 003357F0 7F C4 F3 78 */ mr r4, r30 /* 80338894 003357F4 7F 46 D3 78 */ mr r6, r26 /* 80338898 003357F8 7F E7 FB 78 */ mr r7, r31 /* 8033889C 003357FC 38 61 00 28 */ addi r3, r1, 0x28 /* 803388A0 00335800 38 A1 00 50 */ addi r5, r1, 0x50 /* 803388A4 00335804 7D 89 03 A6 */ mtctr r12 /* 803388A8 00335808 4E 80 04 21 */ bctrl /* 803388AC 0033580C 88 61 00 28 */ lbz r3, 0x28(r1) /* 803388B0 00335810 38 00 00 00 */ li r0, 0 /* 803388B4 00335814 98 7D 00 00 */ stb r3, 0(r29) /* 803388B8 00335818 80 61 00 2C */ lwz r3, 0x2c(r1) /* 803388BC 0033581C 90 7D 00 04 */ stw r3, 4(r29) /* 803388C0 00335820 98 01 00 28 */ stb r0, 0x28(r1) /* 803388C4 00335824 48 00 00 1C */ b lbl_803388E0 /* 803388C8 00335828 41 82 00 18 */ beq lbl_803388E0 /* 803388CC 0033582C 81 83 00 00 */ lwz r12, 0(r3) /* 803388D0 00335830 38 80 00 01 */ li r4, 1 /* 803388D4 00335834 81 8C 00 08 */ lwz r12, 8(r12) /* 803388D8 00335838 7D 89 03 A6 */ mtctr r12 /* 803388DC 0033583C 4E 80 04 21 */ bctrl lbl_803388E0: /* 803388E0 00335840 88 01 00 50 */ lbz r0, 0x50(r1) /* 803388E4 00335844 28 00 00 00 */ cmplwi r0, 0 /* 803388E8 00335848 41 82 00 0C */ beq lbl_803388F4 /* 803388EC 0033584C 80 61 00 54 */ lwz r3, 0x54(r1) /* 803388F0 00335850 4B FD D0 41 */ bl Free__7CMemoryFPCv lbl_803388F4: /* 803388F4 00335854 88 01 00 58 */ lbz r0, 0x58(r1) /* 803388F8 00335858 28 00 00 00 */ cmplwi r0, 0 /* 803388FC 0033585C 41 82 02 70 */ beq lbl_80338B6C /* 80338900 00335860 80 61 00 5C */ lwz r3, 0x5c(r1) /* 80338904 00335864 28 03 00 00 */ cmplwi r3, 0 /* 80338908 00335868 41 82 02 64 */ beq lbl_80338B6C /* 8033890C 0033586C 81 83 00 00 */ lwz r12, 0(r3) /* 80338910 00335870 38 80 00 01 */ li r4, 1 /* 80338914 00335874 81 8C 00 08 */ lwz r12, 8(r12) /* 80338918 00335878 7D 89 03 A6 */ mtctr r12 /* 8033891C 0033587C 4E 80 04 21 */ bctrl /* 80338920 00335880 48 00 02 4C */ b lbl_80338B6C lbl_80338924: /* 80338924 00335884 7C 1A 00 D0 */ neg r0, r26 /* 80338928 00335888 7F 8C E3 78 */ mr r12, r28 /* 8033892C 0033588C 7C 00 D3 78 */ or r0, r0, r26 /* 80338930 00335890 7F C4 F3 78 */ mr r4, r30 /* 80338934 00335894 54 00 0F FE */ srwi r0, r0, 0x1f /* 80338938 00335898 7F 66 DB 78 */ mr r6, r27 /* 8033893C 0033589C 7F E7 FB 78 */ mr r7, r31 /* 80338940 003358A0 98 01 00 48 */ stb r0, 0x48(r1) /* 80338944 003358A4 38 61 00 20 */ addi r3, r1, 0x20 /* 80338948 003358A8 38 A1 00 48 */ addi r5, r1, 0x48 /* 8033894C 003358AC 93 41 00 4C */ stw r26, 0x4c(r1) /* 80338950 003358B0 7D 89 03 A6 */ mtctr r12 /* 80338954 003358B4 4E 80 04 21 */ bctrl /* 80338958 003358B8 88 61 00 20 */ lbz r3, 0x20(r1) /* 8033895C 003358BC 38 00 00 00 */ li r0, 0 /* 80338960 003358C0 98 7D 00 00 */ stb r3, 0(r29) /* 80338964 003358C4 80 61 00 24 */ lwz r3, 0x24(r1) /* 80338968 003358C8 90 7D 00 04 */ stw r3, 4(r29) /* 8033896C 003358CC 98 01 00 20 */ stb r0, 0x20(r1) /* 80338970 003358D0 48 00 00 1C */ b lbl_8033898C /* 80338974 003358D4 41 82 00 18 */ beq lbl_8033898C /* 80338978 003358D8 81 83 00 00 */ lwz r12, 0(r3) /* 8033897C 003358DC 38 80 00 01 */ li r4, 1 /* 80338980 003358E0 81 8C 00 08 */ lwz r12, 8(r12) /* 80338984 003358E4 7D 89 03 A6 */ mtctr r12 /* 80338988 003358E8 4E 80 04 21 */ bctrl lbl_8033898C: /* 8033898C 003358EC 88 01 00 48 */ lbz r0, 0x48(r1) /* 80338990 003358F0 28 00 00 00 */ cmplwi r0, 0 /* 80338994 003358F4 41 82 01 D8 */ beq lbl_80338B6C /* 80338998 003358F8 80 61 00 4C */ lwz r3, 0x4c(r1) /* 8033899C 003358FC 4B FD CF 95 */ bl Free__7CMemoryFPCv /* 803389A0 00335900 48 00 01 CC */ b lbl_80338B6C lbl_803389A4: /* 803389A4 00335904 80 BE 00 00 */ lwz r5, 0(r30) /* 803389A8 00335908 38 C0 00 00 */ li r6, 0 /* 803389AC 0033590C 80 64 00 10 */ lwz r3, 0x10(r4) /* 803389B0 00335910 48 00 00 20 */ b lbl_803389D0 lbl_803389B4: /* 803389B4 00335914 80 03 00 10 */ lwz r0, 0x10(r3) /* 803389B8 00335918 7C 00 28 00 */ cmpw r0, r5 /* 803389BC 0033591C 41 80 00 10 */ blt lbl_803389CC /* 803389C0 00335920 7C 66 1B 78 */ mr r6, r3 /* 803389C4 00335924 80 63 00 00 */ lwz r3, 0(r3) /* 803389C8 00335928 48 00 00 08 */ b lbl_803389D0 lbl_803389CC: /* 803389CC 0033592C 80 63 00 04 */ lwz r3, 4(r3) lbl_803389D0: /* 803389D0 00335930 28 03 00 00 */ cmplwi r3, 0 /* 803389D4 00335934 40 82 FF E0 */ bne lbl_803389B4 /* 803389D8 00335938 28 06 00 00 */ cmplwi r6, 0 /* 803389DC 0033593C 38 60 00 00 */ li r3, 0 /* 803389E0 00335940 41 82 00 10 */ beq lbl_803389F0 /* 803389E4 00335944 80 06 00 10 */ lwz r0, 0x10(r6) /* 803389E8 00335948 7C 05 00 00 */ cmpw r5, r0 /* 803389EC 0033594C 40 80 00 08 */ bge lbl_803389F4 lbl_803389F0: /* 803389F0 00335950 38 60 00 01 */ li r3, 1 lbl_803389F4: /* 803389F4 00335954 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 803389F8 00335958 41 82 00 08 */ beq lbl_80338A00 /* 803389FC 0033595C 38 C0 00 00 */ li r6, 0 lbl_80338A00: /* 80338A00 00335960 55 00 06 3F */ clrlwi. r0, r8, 0x18 /* 80338A04 00335964 83 26 00 14 */ lwz r25, 0x14(r6) /* 80338A08 00335968 41 82 00 E8 */ beq lbl_80338AF0 /* 80338A0C 0033596C 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 80338A10 00335970 38 60 00 24 */ li r3, 0x24 /* 80338A14 00335974 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 80338A18 00335978 38 A0 00 00 */ li r5, 0 /* 80338A1C 0033597C 4B FD CE 51 */ bl __nw__FUlPCcPCc /* 80338A20 00335980 7C 7C 1B 79 */ or. r28, r3, r3 /* 80338A24 00335984 41 82 00 18 */ beq lbl_80338A3C /* 80338A28 00335988 7F 44 D3 78 */ mr r4, r26 /* 80338A2C 0033598C 7F 65 DB 78 */ mr r5, r27 /* 80338A30 00335990 38 C0 00 00 */ li r6, 0 /* 80338A34 00335994 48 00 67 D9 */ bl __ct__15CMemoryInStreamFPvUlQ215CMemoryInStream10EOwnerShip /* 80338A38 00335998 7C 7C 1B 78 */ mr r28, r3 lbl_80338A3C: /* 80338A3C 0033599C 7F 83 E3 78 */ mr r3, r28 /* 80338A40 003359A0 48 00 62 45 */ bl ReadLong__12CInputStreamFv /* 80338A44 003359A4 7C 1C 00 D0 */ neg r0, r28 /* 80338A48 003359A8 93 81 00 1C */ stw r28, 0x1c(r1) /* 80338A4C 003359AC 7C 00 E3 78 */ or r0, r0, r28 /* 80338A50 003359B0 38 61 00 84 */ addi r3, r1, 0x84 /* 80338A54 003359B4 54 00 0F FE */ srwi r0, r0, 0x1f /* 80338A58 003359B8 38 81 00 18 */ addi r4, r1, 0x18 /* 80338A5C 003359BC 98 01 00 18 */ stb r0, 0x18(r1) /* 80338A60 003359C0 48 00 6E A1 */ bl "__ct__15CZipInputStreamFQ24rstl24auto_ptr<12CInputStream>" /* 80338A64 003359C4 88 01 00 18 */ lbz r0, 0x18(r1) /* 80338A68 003359C8 28 00 00 00 */ cmplwi r0, 0 /* 80338A6C 003359CC 41 82 00 24 */ beq lbl_80338A90 /* 80338A70 003359D0 80 61 00 1C */ lwz r3, 0x1c(r1) /* 80338A74 003359D4 28 03 00 00 */ cmplwi r3, 0 /* 80338A78 003359D8 41 82 00 18 */ beq lbl_80338A90 /* 80338A7C 003359DC 81 83 00 00 */ lwz r12, 0(r3) /* 80338A80 003359E0 38 80 00 01 */ li r4, 1 /* 80338A84 003359E4 81 8C 00 08 */ lwz r12, 8(r12) /* 80338A88 003359E8 7D 89 03 A6 */ mtctr r12 /* 80338A8C 003359EC 4E 80 04 21 */ bctrl lbl_80338A90: /* 80338A90 003359F0 7F 2C CB 78 */ mr r12, r25 /* 80338A94 003359F4 7F C4 F3 78 */ mr r4, r30 /* 80338A98 003359F8 7F E6 FB 78 */ mr r6, r31 /* 80338A9C 003359FC 38 61 00 10 */ addi r3, r1, 0x10 /* 80338AA0 00335A00 38 A1 00 84 */ addi r5, r1, 0x84 /* 80338AA4 00335A04 7D 89 03 A6 */ mtctr r12 /* 80338AA8 00335A08 4E 80 04 21 */ bctrl /* 80338AAC 00335A0C 88 61 00 10 */ lbz r3, 0x10(r1) /* 80338AB0 00335A10 38 00 00 00 */ li r0, 0 /* 80338AB4 00335A14 98 7D 00 00 */ stb r3, 0(r29) /* 80338AB8 00335A18 80 61 00 14 */ lwz r3, 0x14(r1) /* 80338ABC 00335A1C 90 7D 00 04 */ stw r3, 4(r29) /* 80338AC0 00335A20 98 01 00 10 */ stb r0, 0x10(r1) /* 80338AC4 00335A24 48 00 00 1C */ b lbl_80338AE0 /* 80338AC8 00335A28 41 82 00 18 */ beq lbl_80338AE0 /* 80338ACC 00335A2C 81 83 00 00 */ lwz r12, 0(r3) /* 80338AD0 00335A30 38 80 00 01 */ li r4, 1 /* 80338AD4 00335A34 81 8C 00 08 */ lwz r12, 8(r12) /* 80338AD8 00335A38 7D 89 03 A6 */ mtctr r12 /* 80338ADC 00335A3C 4E 80 04 21 */ bctrl lbl_80338AE0: /* 80338AE0 00335A40 38 61 00 84 */ addi r3, r1, 0x84 /* 80338AE4 00335A44 38 80 FF FF */ li r4, -1 /* 80338AE8 00335A48 48 00 6D 59 */ bl __dt__15CZipInputStreamFv /* 80338AEC 00335A4C 48 00 00 80 */ b lbl_80338B6C lbl_80338AF0: /* 80338AF0 00335A50 7F 44 D3 78 */ mr r4, r26 /* 80338AF4 00335A54 7F 65 DB 78 */ mr r5, r27 /* 80338AF8 00335A58 38 61 00 60 */ addi r3, r1, 0x60 /* 80338AFC 00335A5C 38 C0 00 00 */ li r6, 0 /* 80338B00 00335A60 48 00 67 0D */ bl __ct__15CMemoryInStreamFPvUlQ215CMemoryInStream10EOwnerShip /* 80338B04 00335A64 7F 2C CB 78 */ mr r12, r25 /* 80338B08 00335A68 7F C4 F3 78 */ mr r4, r30 /* 80338B0C 00335A6C 7F E6 FB 78 */ mr r6, r31 /* 80338B10 00335A70 38 61 00 08 */ addi r3, r1, 8 /* 80338B14 00335A74 38 A1 00 60 */ addi r5, r1, 0x60 /* 80338B18 00335A78 7D 89 03 A6 */ mtctr r12 /* 80338B1C 00335A7C 4E 80 04 21 */ bctrl /* 80338B20 00335A80 88 61 00 08 */ lbz r3, 8(r1) /* 80338B24 00335A84 38 00 00 00 */ li r0, 0 /* 80338B28 00335A88 98 7D 00 00 */ stb r3, 0(r29) /* 80338B2C 00335A8C 80 61 00 0C */ lwz r3, 0xc(r1) /* 80338B30 00335A90 90 7D 00 04 */ stw r3, 4(r29) /* 80338B34 00335A94 98 01 00 08 */ stb r0, 8(r1) /* 80338B38 00335A98 48 00 00 1C */ b lbl_80338B54 /* 80338B3C 00335A9C 41 82 00 18 */ beq lbl_80338B54 /* 80338B40 00335AA0 81 83 00 00 */ lwz r12, 0(r3) /* 80338B44 00335AA4 38 80 00 01 */ li r4, 1 /* 80338B48 00335AA8 81 8C 00 08 */ lwz r12, 8(r12) /* 80338B4C 00335AAC 7D 89 03 A6 */ mtctr r12 /* 80338B50 00335AB0 4E 80 04 21 */ bctrl lbl_80338B54: /* 80338B54 00335AB4 3C 80 80 3F */ lis r4, __vt__15CMemoryInStream@ha /* 80338B58 00335AB8 38 61 00 60 */ addi r3, r1, 0x60 /* 80338B5C 00335ABC 38 04 E3 98 */ addi r0, r4, __vt__15CMemoryInStream@l /* 80338B60 00335AC0 38 80 00 00 */ li r4, 0 /* 80338B64 00335AC4 90 01 00 60 */ stw r0, 0x60(r1) /* 80338B68 00335AC8 48 00 65 45 */ bl __dt__12CInputStreamFv lbl_80338B6C: /* 80338B6C 00335ACC BB 21 00 F4 */ lmw r25, 0xf4(r1) /* 80338B70 00335AD0 80 01 01 14 */ lwz r0, 0x114(r1) /* 80338B74 00335AD4 7C 08 03 A6 */ mtlr r0 /* 80338B78 00335AD8 38 21 01 10 */ addi r1, r1, 0x110 /* 80338B7C 00335ADC 4E 80 00 20 */ blr .global MakeObject__11CFactoryMgrFRC10SObjectTagR12CInputStreamRC15CVParamTransfer MakeObject__11CFactoryMgrFRC10SObjectTagR12CInputStreamRC15CVParamTransfer: /* 80338B80 00335AE0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80338B84 00335AE4 7C 08 02 A6 */ mflr r0 /* 80338B88 00335AE8 39 20 00 00 */ li r9, 0 /* 80338B8C 00335AEC 90 01 00 24 */ stw r0, 0x24(r1) /* 80338B90 00335AF0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80338B94 00335AF4 7C 7F 1B 78 */ mr r31, r3 /* 80338B98 00335AF8 80 84 00 10 */ lwz r4, 0x10(r4) /* 80338B9C 00335AFC 81 05 00 00 */ lwz r8, 0(r5) /* 80338BA0 00335B00 48 00 00 20 */ b lbl_80338BC0 lbl_80338BA4: /* 80338BA4 00335B04 80 04 00 10 */ lwz r0, 0x10(r4) /* 80338BA8 00335B08 7C 00 40 00 */ cmpw r0, r8 /* 80338BAC 00335B0C 41 80 00 10 */ blt lbl_80338BBC /* 80338BB0 00335B10 7C 89 23 78 */ mr r9, r4 /* 80338BB4 00335B14 80 84 00 00 */ lwz r4, 0(r4) /* 80338BB8 00335B18 48 00 00 08 */ b lbl_80338BC0 lbl_80338BBC: /* 80338BBC 00335B1C 80 84 00 04 */ lwz r4, 4(r4) lbl_80338BC0: /* 80338BC0 00335B20 28 04 00 00 */ cmplwi r4, 0 /* 80338BC4 00335B24 40 82 FF E0 */ bne lbl_80338BA4 /* 80338BC8 00335B28 28 09 00 00 */ cmplwi r9, 0 /* 80338BCC 00335B2C 7C A4 2B 78 */ mr r4, r5 /* 80338BD0 00335B30 7C C5 33 78 */ mr r5, r6 /* 80338BD4 00335B34 7C E6 3B 78 */ mr r6, r7 /* 80338BD8 00335B38 38 61 00 08 */ addi r3, r1, 8 /* 80338BDC 00335B3C 38 E0 00 00 */ li r7, 0 /* 80338BE0 00335B40 41 82 00 10 */ beq lbl_80338BF0 /* 80338BE4 00335B44 80 09 00 10 */ lwz r0, 0x10(r9) /* 80338BE8 00335B48 7C 08 00 00 */ cmpw r8, r0 /* 80338BEC 00335B4C 40 80 00 08 */ bge lbl_80338BF4 lbl_80338BF0: /* 80338BF0 00335B50 38 E0 00 01 */ li r7, 1 lbl_80338BF4: /* 80338BF4 00335B54 54 E0 06 3F */ clrlwi. r0, r7, 0x18 /* 80338BF8 00335B58 41 82 00 08 */ beq lbl_80338C00 /* 80338BFC 00335B5C 39 20 00 00 */ li r9, 0 lbl_80338C00: /* 80338C00 00335B60 81 89 00 14 */ lwz r12, 0x14(r9) /* 80338C04 00335B64 7D 89 03 A6 */ mtctr r12 /* 80338C08 00335B68 4E 80 04 21 */ bctrl /* 80338C0C 00335B6C 88 61 00 08 */ lbz r3, 8(r1) /* 80338C10 00335B70 38 00 00 00 */ li r0, 0 /* 80338C14 00335B74 98 7F 00 00 */ stb r3, 0(r31) /* 80338C18 00335B78 80 61 00 0C */ lwz r3, 0xc(r1) /* 80338C1C 00335B7C 90 7F 00 04 */ stw r3, 4(r31) /* 80338C20 00335B80 98 01 00 08 */ stb r0, 8(r1) /* 80338C24 00335B84 48 00 00 1C */ b lbl_80338C40 /* 80338C28 00335B88 41 82 00 18 */ beq lbl_80338C40 /* 80338C2C 00335B8C 81 83 00 00 */ lwz r12, 0(r3) /* 80338C30 00335B90 38 80 00 01 */ li r4, 1 /* 80338C34 00335B94 81 8C 00 08 */ lwz r12, 8(r12) /* 80338C38 00335B98 7D 89 03 A6 */ mtctr r12 /* 80338C3C 00335B9C 4E 80 04 21 */ bctrl lbl_80338C40: /* 80338C40 00335BA0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80338C44 00335BA4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80338C48 00335BA8 7C 08 03 A6 */ mtlr r0 /* 80338C4C 00335BAC 38 21 00 20 */ addi r1, r1, 0x20 /* 80338C50 00335BB0 4E 80 00 20 */ blr .global CanMakeMemory__11CFactoryMgrFRC10SObjectTag CanMakeMemory__11CFactoryMgrFRC10SObjectTag: /* 80338C54 00335BB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80338C58 00335BB8 38 C3 00 1C */ addi r6, r3, 0x1c /* 80338C5C 00335BBC 38 A0 00 00 */ li r5, 0 /* 80338C60 00335BC0 80 84 00 00 */ lwz r4, 0(r4) /* 80338C64 00335BC4 80 63 00 24 */ lwz r3, 0x24(r3) /* 80338C68 00335BC8 48 00 00 20 */ b lbl_80338C88 lbl_80338C6C: /* 80338C6C 00335BCC 80 03 00 10 */ lwz r0, 0x10(r3) /* 80338C70 00335BD0 7C 00 20 00 */ cmpw r0, r4 /* 80338C74 00335BD4 41 80 00 10 */ blt lbl_80338C84 /* 80338C78 00335BD8 7C 65 1B 78 */ mr r5, r3 /* 80338C7C 00335BDC 80 63 00 00 */ lwz r3, 0(r3) /* 80338C80 00335BE0 48 00 00 08 */ b lbl_80338C88 lbl_80338C84: /* 80338C84 00335BE4 80 63 00 04 */ lwz r3, 4(r3) lbl_80338C88: /* 80338C88 00335BE8 28 03 00 00 */ cmplwi r3, 0 /* 80338C8C 00335BEC 40 82 FF E0 */ bne lbl_80338C6C /* 80338C90 00335BF0 28 05 00 00 */ cmplwi r5, 0 /* 80338C94 00335BF4 38 60 00 00 */ li r3, 0 /* 80338C98 00335BF8 41 82 00 10 */ beq lbl_80338CA8 /* 80338C9C 00335BFC 80 05 00 10 */ lwz r0, 0x10(r5) /* 80338CA0 00335C00 7C 04 00 00 */ cmpw r4, r0 /* 80338CA4 00335C04 40 80 00 08 */ bge lbl_80338CAC lbl_80338CA8: /* 80338CA8 00335C08 38 60 00 01 */ li r3, 1 lbl_80338CAC: /* 80338CAC 00335C0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80338CB0 00335C10 41 82 00 08 */ beq lbl_80338CB8 /* 80338CB4 00335C14 38 A0 00 00 */ li r5, 0 lbl_80338CB8: /* 80338CB8 00335C18 28 05 00 00 */ cmplwi r5, 0 /* 80338CBC 00335C1C 90 A1 00 08 */ stw r5, 8(r1) /* 80338CC0 00335C20 38 60 00 00 */ li r3, 0 /* 80338CC4 00335C24 90 C1 00 0C */ stw r6, 0xc(r1) /* 80338CC8 00335C28 40 82 00 0C */ bne lbl_80338CD4 /* 80338CCC 00335C2C 7C 06 30 40 */ cmplw r6, r6 /* 80338CD0 00335C30 41 82 00 08 */ beq lbl_80338CD8 lbl_80338CD4: /* 80338CD4 00335C34 38 60 00 01 */ li r3, 1 lbl_80338CD8: /* 80338CD8 00335C38 38 21 00 10 */ addi r1, r1, 0x10 /* 80338CDC 00335C3C 4E 80 00 20 */ blr .global "AddFactory__11CFactoryMgrFUiPFRC10SObjectTagRCQ24rstl12auto_ptriRC15CVParamTransfer_C16CFactoryFnReturn" "AddFactory__11CFactoryMgrFUiPFRC10SObjectTagRCQ24rstl12auto_ptriRC15CVParamTransfer_C16CFactoryFnReturn": /* 80338CE0 00335C40 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80338CE4 00335C44 7C 08 02 A6 */ mflr r0 /* 80338CE8 00335C48 7C 67 1B 78 */ mr r7, r3 /* 80338CEC 00335C4C 38 C0 00 00 */ li r6, 0 /* 80338CF0 00335C50 90 01 00 34 */ stw r0, 0x34(r1) /* 80338CF4 00335C54 80 63 00 24 */ lwz r3, 0x24(r3) /* 80338CF8 00335C58 48 00 00 20 */ b lbl_80338D18 lbl_80338CFC: /* 80338CFC 00335C5C 80 03 00 10 */ lwz r0, 0x10(r3) /* 80338D00 00335C60 7C 00 20 00 */ cmpw r0, r4 /* 80338D04 00335C64 41 80 00 10 */ blt lbl_80338D14 /* 80338D08 00335C68 7C 66 1B 78 */ mr r6, r3 /* 80338D0C 00335C6C 80 63 00 00 */ lwz r3, 0(r3) /* 80338D10 00335C70 48 00 00 08 */ b lbl_80338D18 lbl_80338D14: /* 80338D14 00335C74 80 63 00 04 */ lwz r3, 4(r3) lbl_80338D18: /* 80338D18 00335C78 28 03 00 00 */ cmplwi r3, 0 /* 80338D1C 00335C7C 40 82 FF E0 */ bne lbl_80338CFC /* 80338D20 00335C80 28 06 00 00 */ cmplwi r6, 0 /* 80338D24 00335C84 38 60 00 00 */ li r3, 0 /* 80338D28 00335C88 41 82 00 10 */ beq lbl_80338D38 /* 80338D2C 00335C8C 80 06 00 10 */ lwz r0, 0x10(r6) /* 80338D30 00335C90 7C 04 00 00 */ cmpw r4, r0 /* 80338D34 00335C94 40 80 00 08 */ bge lbl_80338D3C lbl_80338D38: /* 80338D38 00335C98 38 60 00 01 */ li r3, 1 lbl_80338D3C: /* 80338D3C 00335C9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80338D40 00335CA0 41 82 00 08 */ beq lbl_80338D48 /* 80338D44 00335CA4 38 C0 00 00 */ li r6, 0 lbl_80338D48: /* 80338D48 00335CA8 38 00 00 00 */ li r0, 0 /* 80338D4C 00335CAC 38 67 00 1C */ addi r3, r7, 0x1c /* 80338D50 00335CB0 7C 06 00 40 */ cmplw r6, r0 /* 80338D54 00335CB4 90 01 00 10 */ stw r0, 0x10(r1) /* 80338D58 00335CB8 90 61 00 14 */ stw r3, 0x14(r1) /* 80338D5C 00335CBC 40 82 00 0C */ bne lbl_80338D68 /* 80338D60 00335CC0 7C 03 18 40 */ cmplw r3, r3 /* 80338D64 00335CC4 41 82 00 08 */ beq lbl_80338D6C lbl_80338D68: /* 80338D68 00335CC8 38 00 00 01 */ li r0, 1 lbl_80338D6C: /* 80338D6C 00335CCC 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80338D70 00335CD0 40 82 00 20 */ bne lbl_80338D90 /* 80338D74 00335CD4 90 81 00 08 */ stw r4, 8(r1) /* 80338D78 00335CD8 38 61 00 18 */ addi r3, r1, 0x18 /* 80338D7C 00335CDC 38 87 00 14 */ addi r4, r7, 0x14 /* 80338D80 00335CE0 38 C1 00 08 */ addi r6, r1, 8 /* 80338D84 00335CE4 90 A1 00 0C */ stw r5, 0xc(r1) /* 80338D88 00335CE8 80 A7 00 24 */ lwz r5, 0x24(r7) /* 80338D8C 00335CEC 48 00 04 E5 */ bl sub_80339270 lbl_80338D90: /* 80338D90 00335CF0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80338D94 00335CF4 7C 08 03 A6 */ mtlr r0 /* 80338D98 00335CF8 38 21 00 30 */ addi r1, r1, 0x30 /* 80338D9C 00335CFC 4E 80 00 20 */ blr .global AddFactory__11CFactoryMgrFUiPFRC10SObjectTagR12CInputStreamRC15CVParamTransfer_C16CFactoryFnReturn AddFactory__11CFactoryMgrFUiPFRC10SObjectTagR12CInputStreamRC15CVParamTransfer_C16CFactoryFnReturn: /* 80338DA0 00335D00 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80338DA4 00335D04 7C 08 02 A6 */ mflr r0 /* 80338DA8 00335D08 7C 67 1B 78 */ mr r7, r3 /* 80338DAC 00335D0C 38 C0 00 00 */ li r6, 0 /* 80338DB0 00335D10 90 01 00 34 */ stw r0, 0x34(r1) /* 80338DB4 00335D14 80 63 00 10 */ lwz r3, 0x10(r3) /* 80338DB8 00335D18 48 00 00 20 */ b lbl_80338DD8 lbl_80338DBC: /* 80338DBC 00335D1C 80 03 00 10 */ lwz r0, 0x10(r3) /* 80338DC0 00335D20 7C 00 20 00 */ cmpw r0, r4 /* 80338DC4 00335D24 41 80 00 10 */ blt lbl_80338DD4 /* 80338DC8 00335D28 7C 66 1B 78 */ mr r6, r3 /* 80338DCC 00335D2C 80 63 00 00 */ lwz r3, 0(r3) /* 80338DD0 00335D30 48 00 00 08 */ b lbl_80338DD8 lbl_80338DD4: /* 80338DD4 00335D34 80 63 00 04 */ lwz r3, 4(r3) lbl_80338DD8: /* 80338DD8 00335D38 28 03 00 00 */ cmplwi r3, 0 /* 80338DDC 00335D3C 40 82 FF E0 */ bne lbl_80338DBC /* 80338DE0 00335D40 28 06 00 00 */ cmplwi r6, 0 /* 80338DE4 00335D44 38 60 00 00 */ li r3, 0 /* 80338DE8 00335D48 41 82 00 10 */ beq lbl_80338DF8 /* 80338DEC 00335D4C 80 06 00 10 */ lwz r0, 0x10(r6) /* 80338DF0 00335D50 7C 04 00 00 */ cmpw r4, r0 /* 80338DF4 00335D54 40 80 00 08 */ bge lbl_80338DFC lbl_80338DF8: /* 80338DF8 00335D58 38 60 00 01 */ li r3, 1 lbl_80338DFC: /* 80338DFC 00335D5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80338E00 00335D60 41 82 00 08 */ beq lbl_80338E08 /* 80338E04 00335D64 38 C0 00 00 */ li r6, 0 lbl_80338E08: /* 80338E08 00335D68 38 00 00 00 */ li r0, 0 /* 80338E0C 00335D6C 38 67 00 08 */ addi r3, r7, 8 /* 80338E10 00335D70 7C 06 00 40 */ cmplw r6, r0 /* 80338E14 00335D74 90 01 00 10 */ stw r0, 0x10(r1) /* 80338E18 00335D78 90 61 00 14 */ stw r3, 0x14(r1) /* 80338E1C 00335D7C 40 82 00 0C */ bne lbl_80338E28 /* 80338E20 00335D80 7C 03 18 40 */ cmplw r3, r3 /* 80338E24 00335D84 41 82 00 08 */ beq lbl_80338E2C lbl_80338E28: /* 80338E28 00335D88 38 00 00 01 */ li r0, 1 lbl_80338E2C: /* 80338E2C 00335D8C 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 80338E30 00335D90 40 82 00 20 */ bne lbl_80338E50 /* 80338E34 00335D94 90 81 00 08 */ stw r4, 8(r1) /* 80338E38 00335D98 7C E4 3B 78 */ mr r4, r7 /* 80338E3C 00335D9C 38 61 00 18 */ addi r3, r1, 0x18 /* 80338E40 00335DA0 38 C1 00 08 */ addi r6, r1, 8 /* 80338E44 00335DA4 90 A1 00 0C */ stw r5, 0xc(r1) /* 80338E48 00335DA8 80 A7 00 10 */ lwz r5, 0x10(r7) /* 80338E4C 00335DAC 48 00 01 85 */ bl sub_80338fd0 lbl_80338E50: /* 80338E50 00335DB0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80338E54 00335DB4 7C 08 03 A6 */ mtlr r0 /* 80338E58 00335DB8 38 21 00 30 */ addi r1, r1, 0x30 /* 80338E5C 00335DBC 4E 80 00 20 */ blr .global sub_80338e60 sub_80338e60: /* 80338E60 00335DC0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80338E64 00335DC4 7C 08 02 A6 */ mflr r0 /* 80338E68 00335DC8 90 01 00 14 */ stw r0, 0x14(r1) /* 80338E6C 00335DCC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80338E70 00335DD0 7C 9F 23 78 */ mr r31, r4 /* 80338E74 00335DD4 93 C1 00 08 */ stw r30, 8(r1) /* 80338E78 00335DD8 7C 7E 1B 79 */ or. r30, r3, r3 /* 80338E7C 00335DDC 41 82 00 80 */ beq lbl_80338EFC /* 80338E80 00335DE0 34 1E 00 14 */ addic. r0, r30, 0x14 /* 80338E84 00335DE4 41 82 00 34 */ beq lbl_80338EB8 /* 80338E88 00335DE8 34 1E 00 14 */ addic. r0, r30, 0x14 /* 80338E8C 00335DEC 41 82 00 2C */ beq lbl_80338EB8 /* 80338E90 00335DF0 80 9E 00 24 */ lwz r4, 0x24(r30) /* 80338E94 00335DF4 28 04 00 00 */ cmplwi r4, 0 /* 80338E98 00335DF8 41 82 00 0C */ beq lbl_80338EA4 /* 80338E9C 00335DFC 38 7E 00 14 */ addi r3, r30, 0x14 /* 80338EA0 00335E00 48 00 03 69 */ bl sub_80339208 lbl_80338EA4: /* 80338EA4 00335E04 38 00 00 00 */ li r0, 0 /* 80338EA8 00335E08 90 1E 00 24 */ stw r0, 0x24(r30) /* 80338EAC 00335E0C 90 1E 00 1C */ stw r0, 0x1c(r30) /* 80338EB0 00335E10 90 1E 00 20 */ stw r0, 0x20(r30) /* 80338EB4 00335E14 90 1E 00 18 */ stw r0, 0x18(r30) lbl_80338EB8: /* 80338EB8 00335E18 28 1E 00 00 */ cmplwi r30, 0 /* 80338EBC 00335E1C 41 82 00 30 */ beq lbl_80338EEC /* 80338EC0 00335E20 41 82 00 2C */ beq lbl_80338EEC /* 80338EC4 00335E24 80 9E 00 10 */ lwz r4, 0x10(r30) /* 80338EC8 00335E28 28 04 00 00 */ cmplwi r4, 0 /* 80338ECC 00335E2C 41 82 00 0C */ beq lbl_80338ED8 /* 80338ED0 00335E30 7F C3 F3 78 */ mr r3, r30 /* 80338ED4 00335E34 48 00 00 95 */ bl sub_80338f68 lbl_80338ED8: /* 80338ED8 00335E38 38 00 00 00 */ li r0, 0 /* 80338EDC 00335E3C 90 1E 00 10 */ stw r0, 0x10(r30) /* 80338EE0 00335E40 90 1E 00 08 */ stw r0, 8(r30) /* 80338EE4 00335E44 90 1E 00 0C */ stw r0, 0xc(r30) /* 80338EE8 00335E48 90 1E 00 04 */ stw r0, 4(r30) lbl_80338EEC: /* 80338EEC 00335E4C 7F E0 07 35 */ extsh. r0, r31 /* 80338EF0 00335E50 40 81 00 0C */ ble lbl_80338EFC /* 80338EF4 00335E54 7F C3 F3 78 */ mr r3, r30 /* 80338EF8 00335E58 4B FD CA 39 */ bl Free__7CMemoryFPCv lbl_80338EFC: /* 80338EFC 00335E5C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80338F00 00335E60 7F C3 F3 78 */ mr r3, r30 /* 80338F04 00335E64 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80338F08 00335E68 83 C1 00 08 */ lwz r30, 8(r1) /* 80338F0C 00335E6C 7C 08 03 A6 */ mtlr r0 /* 80338F10 00335E70 38 21 00 10 */ addi r1, r1, 0x10 /* 80338F14 00335E74 4E 80 00 20 */ blr .global __ct__11CFactoryMgrFv __ct__11CFactoryMgrFv: /* 80338F18 00335E78 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80338F1C 00335E7C 38 A0 00 00 */ li r5, 0 /* 80338F20 00335E80 88 81 00 0C */ lbz r4, 0xc(r1) /* 80338F24 00335E84 88 01 00 14 */ lbz r0, 0x14(r1) /* 80338F28 00335E88 98 83 00 00 */ stb r4, 0(r3) /* 80338F2C 00335E8C 88 81 00 08 */ lbz r4, 8(r1) /* 80338F30 00335E90 98 03 00 01 */ stb r0, 1(r3) /* 80338F34 00335E94 88 01 00 10 */ lbz r0, 0x10(r1) /* 80338F38 00335E98 90 A3 00 04 */ stw r5, 4(r3) /* 80338F3C 00335E9C 90 A3 00 08 */ stw r5, 8(r3) /* 80338F40 00335EA0 90 A3 00 0C */ stw r5, 0xc(r3) /* 80338F44 00335EA4 90 A3 00 10 */ stw r5, 0x10(r3) /* 80338F48 00335EA8 98 83 00 14 */ stb r4, 0x14(r3) /* 80338F4C 00335EAC 98 03 00 15 */ stb r0, 0x15(r3) /* 80338F50 00335EB0 90 A3 00 18 */ stw r5, 0x18(r3) /* 80338F54 00335EB4 90 A3 00 1C */ stw r5, 0x1c(r3) /* 80338F58 00335EB8 90 A3 00 20 */ stw r5, 0x20(r3) /* 80338F5C 00335EBC 90 A3 00 24 */ stw r5, 0x24(r3) /* 80338F60 00335EC0 38 21 00 20 */ addi r1, r1, 0x20 /* 80338F64 00335EC4 4E 80 00 20 */ blr .global sub_80338f68 sub_80338f68: /* 80338F68 00335EC8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80338F6C 00335ECC 7C 08 02 A6 */ mflr r0 /* 80338F70 00335ED0 90 01 00 14 */ stw r0, 0x14(r1) /* 80338F74 00335ED4 93 E1 00 0C */ stw r31, 0xc(r1) /* 80338F78 00335ED8 7C 9F 23 78 */ mr r31, r4 /* 80338F7C 00335EDC 93 C1 00 08 */ stw r30, 8(r1) /* 80338F80 00335EE0 7C 7E 1B 78 */ mr r30, r3 /* 80338F84 00335EE4 80 84 00 00 */ lwz r4, 0(r4) /* 80338F88 00335EE8 28 04 00 00 */ cmplwi r4, 0 /* 80338F8C 00335EEC 41 82 00 08 */ beq lbl_80338F94 /* 80338F90 00335EF0 4B FF FF D9 */ bl sub_80338f68 lbl_80338F94: /* 80338F94 00335EF4 80 9F 00 04 */ lwz r4, 4(r31) /* 80338F98 00335EF8 28 04 00 00 */ cmplwi r4, 0 /* 80338F9C 00335EFC 41 82 00 0C */ beq lbl_80338FA8 /* 80338FA0 00335F00 7F C3 F3 78 */ mr r3, r30 /* 80338FA4 00335F04 4B FF FF C5 */ bl sub_80338f68 lbl_80338FA8: /* 80338FA8 00335F08 28 1F 00 00 */ cmplwi r31, 0 /* 80338FAC 00335F0C 41 82 00 0C */ beq lbl_80338FB8 /* 80338FB0 00335F10 7F E3 FB 78 */ mr r3, r31 /* 80338FB4 00335F14 4B FD C9 7D */ bl Free__7CMemoryFPCv lbl_80338FB8: /* 80338FB8 00335F18 80 01 00 14 */ lwz r0, 0x14(r1) /* 80338FBC 00335F1C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80338FC0 00335F20 83 C1 00 08 */ lwz r30, 8(r1) /* 80338FC4 00335F24 7C 08 03 A6 */ mtlr r0 /* 80338FC8 00335F28 38 21 00 10 */ addi r1, r1, 0x10 /* 80338FCC 00335F2C 4E 80 00 20 */ blr .global sub_80338fd0 sub_80338fd0: /* 80338FD0 00335F30 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80338FD4 00335F34 7C 08 02 A6 */ mflr r0 /* 80338FD8 00335F38 28 05 00 00 */ cmplwi r5, 0 /* 80338FDC 00335F3C 90 01 00 24 */ stw r0, 0x24(r1) /* 80338FE0 00335F40 BF 61 00 0C */ stmw r27, 0xc(r1) /* 80338FE4 00335F44 7C 7C 1B 78 */ mr r28, r3 /* 80338FE8 00335F48 7C 9D 23 78 */ mr r29, r4 /* 80338FEC 00335F4C 7C DE 33 78 */ mr r30, r6 /* 80338FF0 00335F50 40 82 00 88 */ bne lbl_80339078 /* 80338FF4 00335F54 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 80338FF8 00335F58 38 60 00 18 */ li r3, 0x18 /* 80338FFC 00335F5C 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 80339000 00335F60 38 A0 00 00 */ li r5, 0 /* 80339004 00335F64 4B FD C8 15 */ bl __nwa__FUlPCcPCc /* 80339008 00335F68 28 03 00 00 */ cmplwi r3, 0 /* 8033900C 00335F6C 41 82 00 30 */ beq lbl_8033903C /* 80339010 00335F70 38 00 00 00 */ li r0, 0 /* 80339014 00335F74 34 83 00 10 */ addic. r4, r3, 0x10 /* 80339018 00335F78 90 03 00 00 */ stw r0, 0(r3) /* 8033901C 00335F7C 90 03 00 04 */ stw r0, 4(r3) /* 80339020 00335F80 90 03 00 08 */ stw r0, 8(r3) /* 80339024 00335F84 90 03 00 0C */ stw r0, 0xc(r3) /* 80339028 00335F88 41 82 00 14 */ beq lbl_8033903C /* 8033902C 00335F8C 80 1E 00 00 */ lwz r0, 0(r30) /* 80339030 00335F90 90 04 00 00 */ stw r0, 0(r4) /* 80339034 00335F94 80 1E 00 04 */ lwz r0, 4(r30) /* 80339038 00335F98 90 04 00 04 */ stw r0, 4(r4) lbl_8033903C: /* 8033903C 00335F9C 90 7D 00 10 */ stw r3, 0x10(r29) /* 80339040 00335FA0 38 1D 00 08 */ addi r0, r29, 8 /* 80339044 00335FA4 80 7D 00 04 */ lwz r3, 4(r29) /* 80339048 00335FA8 38 63 00 01 */ addi r3, r3, 1 /* 8033904C 00335FAC 90 7D 00 04 */ stw r3, 4(r29) /* 80339050 00335FB0 80 7D 00 10 */ lwz r3, 0x10(r29) /* 80339054 00335FB4 90 7D 00 08 */ stw r3, 8(r29) /* 80339058 00335FB8 80 7D 00 10 */ lwz r3, 0x10(r29) /* 8033905C 00335FBC 90 7D 00 0C */ stw r3, 0xc(r29) /* 80339060 00335FC0 80 7D 00 10 */ lwz r3, 0x10(r29) /* 80339064 00335FC4 90 7C 00 00 */ stw r3, 0(r28) /* 80339068 00335FC8 90 1C 00 04 */ stw r0, 4(r28) /* 8033906C 00335FCC 88 0D 9D 43 */ lbz r0, lbl_805A8903@sda21(r13) /* 80339070 00335FD0 98 1C 00 08 */ stb r0, 8(r28) /* 80339074 00335FD4 48 00 01 80 */ b lbl_803391F4 lbl_80339078: /* 80339078 00335FD8 7C BF 2B 78 */ mr r31, r5 /* 8033907C 00335FDC 3B 60 00 00 */ li r27, 0 /* 80339080 00335FE0 48 00 01 40 */ b lbl_803391C0 lbl_80339084: /* 80339084 00335FE4 80 9E 00 00 */ lwz r4, 0(r30) /* 80339088 00335FE8 80 BF 00 10 */ lwz r5, 0x10(r31) /* 8033908C 00335FEC 7C A0 22 78 */ xor r0, r5, r4 /* 80339090 00335FF0 7C 03 0E 70 */ srawi r3, r0, 1 /* 80339094 00335FF4 7C 00 28 38 */ and r0, r0, r5 /* 80339098 00335FF8 7C 00 18 50 */ subf r0, r0, r3 /* 8033909C 00335FFC 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f /* 803390A0 00336000 40 82 00 24 */ bne lbl_803390C4 /* 803390A4 00336004 7C 05 20 00 */ cmpw r5, r4 /* 803390A8 00336008 41 80 00 1C */ blt lbl_803390C4 /* 803390AC 0033600C 93 FC 00 00 */ stw r31, 0(r28) /* 803390B0 00336010 38 1D 00 08 */ addi r0, r29, 8 /* 803390B4 00336014 90 1C 00 04 */ stw r0, 4(r28) /* 803390B8 00336018 88 0D 9D 44 */ lbz r0, lbl_805A8904@sda21(r13) /* 803390BC 0033601C 98 1C 00 08 */ stb r0, 8(r28) /* 803390C0 00336020 48 00 01 34 */ b lbl_803391F4 lbl_803390C4: /* 803390C4 00336024 28 00 00 00 */ cmplwi r0, 0 /* 803390C8 00336028 41 82 00 80 */ beq lbl_80339148 /* 803390CC 0033602C 80 1F 00 00 */ lwz r0, 0(r31) /* 803390D0 00336030 28 00 00 00 */ cmplwi r0, 0 /* 803390D4 00336034 40 82 00 6C */ bne lbl_80339140 /* 803390D8 00336038 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 803390DC 0033603C 38 60 00 18 */ li r3, 0x18 /* 803390E0 00336040 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 803390E4 00336044 38 A0 00 00 */ li r5, 0 /* 803390E8 00336048 4B FD C7 31 */ bl __nwa__FUlPCcPCc /* 803390EC 0033604C 28 03 00 00 */ cmplwi r3, 0 /* 803390F0 00336050 41 82 00 34 */ beq lbl_80339124 /* 803390F4 00336054 38 80 00 00 */ li r4, 0 /* 803390F8 00336058 34 A3 00 10 */ addic. r5, r3, 0x10 /* 803390FC 0033605C 90 83 00 00 */ stw r4, 0(r3) /* 80339100 00336060 38 00 00 01 */ li r0, 1 /* 80339104 00336064 90 83 00 04 */ stw r4, 4(r3) /* 80339108 00336068 93 E3 00 08 */ stw r31, 8(r3) /* 8033910C 0033606C 90 03 00 0C */ stw r0, 0xc(r3) /* 80339110 00336070 41 82 00 14 */ beq lbl_80339124 /* 80339114 00336074 80 1E 00 00 */ lwz r0, 0(r30) /* 80339118 00336078 90 05 00 00 */ stw r0, 0(r5) /* 8033911C 0033607C 80 1E 00 04 */ lwz r0, 4(r30) /* 80339120 00336080 90 05 00 04 */ stw r0, 4(r5) lbl_80339124: /* 80339124 00336084 90 7F 00 00 */ stw r3, 0(r31) /* 80339128 00336088 7C 7B 1B 78 */ mr r27, r3 /* 8033912C 0033608C 80 1D 00 08 */ lwz r0, 8(r29) /* 80339130 00336090 7C 1F 00 40 */ cmplw r31, r0 /* 80339134 00336094 40 82 00 8C */ bne lbl_803391C0 /* 80339138 00336098 90 7D 00 08 */ stw r3, 8(r29) /* 8033913C 0033609C 48 00 00 84 */ b lbl_803391C0 lbl_80339140: /* 80339140 003360A0 7C 1F 03 78 */ mr r31, r0 /* 80339144 003360A4 48 00 00 7C */ b lbl_803391C0 lbl_80339148: /* 80339148 003360A8 80 1F 00 04 */ lwz r0, 4(r31) /* 8033914C 003360AC 28 00 00 00 */ cmplwi r0, 0 /* 80339150 003360B0 40 82 00 6C */ bne lbl_803391BC /* 80339154 003360B4 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 80339158 003360B8 38 60 00 18 */ li r3, 0x18 /* 8033915C 003360BC 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 80339160 003360C0 38 A0 00 00 */ li r5, 0 /* 80339164 003360C4 4B FD C6 B5 */ bl __nwa__FUlPCcPCc /* 80339168 003360C8 28 03 00 00 */ cmplwi r3, 0 /* 8033916C 003360CC 41 82 00 34 */ beq lbl_803391A0 /* 80339170 003360D0 38 80 00 00 */ li r4, 0 /* 80339174 003360D4 34 A3 00 10 */ addic. r5, r3, 0x10 /* 80339178 003360D8 90 83 00 00 */ stw r4, 0(r3) /* 8033917C 003360DC 38 00 00 01 */ li r0, 1 /* 80339180 003360E0 90 83 00 04 */ stw r4, 4(r3) /* 80339184 003360E4 93 E3 00 08 */ stw r31, 8(r3) /* 80339188 003360E8 90 03 00 0C */ stw r0, 0xc(r3) /* 8033918C 003360EC 41 82 00 14 */ beq lbl_803391A0 /* 80339190 003360F0 80 1E 00 00 */ lwz r0, 0(r30) /* 80339194 003360F4 90 05 00 00 */ stw r0, 0(r5) /* 80339198 003360F8 80 1E 00 04 */ lwz r0, 4(r30) /* 8033919C 003360FC 90 05 00 04 */ stw r0, 4(r5) lbl_803391A0: /* 803391A0 00336100 90 7F 00 04 */ stw r3, 4(r31) /* 803391A4 00336104 7C 7B 1B 78 */ mr r27, r3 /* 803391A8 00336108 80 1D 00 0C */ lwz r0, 0xc(r29) /* 803391AC 0033610C 7C 1F 00 40 */ cmplw r31, r0 /* 803391B0 00336110 40 82 00 10 */ bne lbl_803391C0 /* 803391B4 00336114 90 7D 00 0C */ stw r3, 0xc(r29) /* 803391B8 00336118 48 00 00 08 */ b lbl_803391C0 lbl_803391BC: /* 803391BC 0033611C 7C 1F 03 78 */ mr r31, r0 lbl_803391C0: /* 803391C0 00336120 28 1B 00 00 */ cmplwi r27, 0 /* 803391C4 00336124 41 82 FE C0 */ beq lbl_80339084 /* 803391C8 00336128 80 BD 00 04 */ lwz r5, 4(r29) /* 803391CC 0033612C 7F 64 DB 78 */ mr r4, r27 /* 803391D0 00336130 38 7D 00 08 */ addi r3, r29, 8 /* 803391D4 00336134 38 05 00 01 */ addi r0, r5, 1 /* 803391D8 00336138 90 1D 00 04 */ stw r0, 4(r29) /* 803391DC 0033613C 48 00 38 BD */ bl rbtree_rebalance__4rstlFPvPv /* 803391E0 00336140 93 7C 00 00 */ stw r27, 0(r28) /* 803391E4 00336144 38 1D 00 08 */ addi r0, r29, 8 /* 803391E8 00336148 90 1C 00 04 */ stw r0, 4(r28) /* 803391EC 0033614C 88 0D 9D 45 */ lbz r0, lbl_805A8905@sda21(r13) /* 803391F0 00336150 98 1C 00 08 */ stb r0, 8(r28) lbl_803391F4: /* 803391F4 00336154 BB 61 00 0C */ lmw r27, 0xc(r1) /* 803391F8 00336158 80 01 00 24 */ lwz r0, 0x24(r1) /* 803391FC 0033615C 7C 08 03 A6 */ mtlr r0 /* 80339200 00336160 38 21 00 20 */ addi r1, r1, 0x20 /* 80339204 00336164 4E 80 00 20 */ blr .global sub_80339208 sub_80339208: /* 80339208 00336168 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8033920C 0033616C 7C 08 02 A6 */ mflr r0 /* 80339210 00336170 90 01 00 14 */ stw r0, 0x14(r1) /* 80339214 00336174 93 E1 00 0C */ stw r31, 0xc(r1) /* 80339218 00336178 7C 9F 23 78 */ mr r31, r4 /* 8033921C 0033617C 93 C1 00 08 */ stw r30, 8(r1) /* 80339220 00336180 7C 7E 1B 78 */ mr r30, r3 /* 80339224 00336184 80 84 00 00 */ lwz r4, 0(r4) /* 80339228 00336188 28 04 00 00 */ cmplwi r4, 0 /* 8033922C 0033618C 41 82 00 08 */ beq lbl_80339234 /* 80339230 00336190 4B FF FF D9 */ bl sub_80339208 lbl_80339234: /* 80339234 00336194 80 9F 00 04 */ lwz r4, 4(r31) /* 80339238 00336198 28 04 00 00 */ cmplwi r4, 0 /* 8033923C 0033619C 41 82 00 0C */ beq lbl_80339248 /* 80339240 003361A0 7F C3 F3 78 */ mr r3, r30 /* 80339244 003361A4 4B FF FF C5 */ bl sub_80339208 lbl_80339248: /* 80339248 003361A8 28 1F 00 00 */ cmplwi r31, 0 /* 8033924C 003361AC 41 82 00 0C */ beq lbl_80339258 /* 80339250 003361B0 7F E3 FB 78 */ mr r3, r31 /* 80339254 003361B4 4B FD C6 DD */ bl Free__7CMemoryFPCv lbl_80339258: /* 80339258 003361B8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8033925C 003361BC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80339260 003361C0 83 C1 00 08 */ lwz r30, 8(r1) /* 80339264 003361C4 7C 08 03 A6 */ mtlr r0 /* 80339268 003361C8 38 21 00 10 */ addi r1, r1, 0x10 /* 8033926C 003361CC 4E 80 00 20 */ blr .global sub_80339270 sub_80339270: /* 80339270 003361D0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80339274 003361D4 7C 08 02 A6 */ mflr r0 /* 80339278 003361D8 28 05 00 00 */ cmplwi r5, 0 /* 8033927C 003361DC 90 01 00 24 */ stw r0, 0x24(r1) /* 80339280 003361E0 BF 61 00 0C */ stmw r27, 0xc(r1) /* 80339284 003361E4 7C 7C 1B 78 */ mr r28, r3 /* 80339288 003361E8 7C 9D 23 78 */ mr r29, r4 /* 8033928C 003361EC 7C DE 33 78 */ mr r30, r6 /* 80339290 003361F0 40 82 00 88 */ bne lbl_80339318 /* 80339294 003361F4 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 80339298 003361F8 38 60 00 18 */ li r3, 0x18 /* 8033929C 003361FC 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 803392A0 00336200 38 A0 00 00 */ li r5, 0 /* 803392A4 00336204 4B FD C5 75 */ bl __nwa__FUlPCcPCc /* 803392A8 00336208 28 03 00 00 */ cmplwi r3, 0 /* 803392AC 0033620C 41 82 00 30 */ beq lbl_803392DC /* 803392B0 00336210 38 00 00 00 */ li r0, 0 /* 803392B4 00336214 34 83 00 10 */ addic. r4, r3, 0x10 /* 803392B8 00336218 90 03 00 00 */ stw r0, 0(r3) /* 803392BC 0033621C 90 03 00 04 */ stw r0, 4(r3) /* 803392C0 00336220 90 03 00 08 */ stw r0, 8(r3) /* 803392C4 00336224 90 03 00 0C */ stw r0, 0xc(r3) /* 803392C8 00336228 41 82 00 14 */ beq lbl_803392DC /* 803392CC 0033622C 80 1E 00 00 */ lwz r0, 0(r30) /* 803392D0 00336230 90 04 00 00 */ stw r0, 0(r4) /* 803392D4 00336234 80 1E 00 04 */ lwz r0, 4(r30) /* 803392D8 00336238 90 04 00 04 */ stw r0, 4(r4) lbl_803392DC: /* 803392DC 0033623C 90 7D 00 10 */ stw r3, 0x10(r29) /* 803392E0 00336240 38 1D 00 08 */ addi r0, r29, 8 /* 803392E4 00336244 80 7D 00 04 */ lwz r3, 4(r29) /* 803392E8 00336248 38 63 00 01 */ addi r3, r3, 1 /* 803392EC 0033624C 90 7D 00 04 */ stw r3, 4(r29) /* 803392F0 00336250 80 7D 00 10 */ lwz r3, 0x10(r29) /* 803392F4 00336254 90 7D 00 08 */ stw r3, 8(r29) /* 803392F8 00336258 80 7D 00 10 */ lwz r3, 0x10(r29) /* 803392FC 0033625C 90 7D 00 0C */ stw r3, 0xc(r29) /* 80339300 00336260 80 7D 00 10 */ lwz r3, 0x10(r29) /* 80339304 00336264 90 7C 00 00 */ stw r3, 0(r28) /* 80339308 00336268 90 1C 00 04 */ stw r0, 4(r28) /* 8033930C 0033626C 88 0D 9D 40 */ lbz r0, lbl_805A8900@sda21(r13) /* 80339310 00336270 98 1C 00 08 */ stb r0, 8(r28) /* 80339314 00336274 48 00 01 80 */ b lbl_80339494 lbl_80339318: /* 80339318 00336278 7C BF 2B 78 */ mr r31, r5 /* 8033931C 0033627C 3B 60 00 00 */ li r27, 0 /* 80339320 00336280 48 00 01 40 */ b lbl_80339460 lbl_80339324: /* 80339324 00336284 80 9E 00 00 */ lwz r4, 0(r30) /* 80339328 00336288 80 BF 00 10 */ lwz r5, 0x10(r31) /* 8033932C 0033628C 7C A0 22 78 */ xor r0, r5, r4 /* 80339330 00336290 7C 03 0E 70 */ srawi r3, r0, 1 /* 80339334 00336294 7C 00 28 38 */ and r0, r0, r5 /* 80339338 00336298 7C 00 18 50 */ subf r0, r0, r3 /* 8033933C 0033629C 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f /* 80339340 003362A0 40 82 00 24 */ bne lbl_80339364 /* 80339344 003362A4 7C 05 20 00 */ cmpw r5, r4 /* 80339348 003362A8 41 80 00 1C */ blt lbl_80339364 /* 8033934C 003362AC 93 FC 00 00 */ stw r31, 0(r28) /* 80339350 003362B0 38 1D 00 08 */ addi r0, r29, 8 /* 80339354 003362B4 90 1C 00 04 */ stw r0, 4(r28) /* 80339358 003362B8 88 0D 9D 41 */ lbz r0, lbl_805A8901@sda21(r13) /* 8033935C 003362BC 98 1C 00 08 */ stb r0, 8(r28) /* 80339360 003362C0 48 00 01 34 */ b lbl_80339494 lbl_80339364: /* 80339364 003362C4 28 00 00 00 */ cmplwi r0, 0 /* 80339368 003362C8 41 82 00 80 */ beq lbl_803393E8 /* 8033936C 003362CC 80 1F 00 00 */ lwz r0, 0(r31) /* 80339370 003362D0 28 00 00 00 */ cmplwi r0, 0 /* 80339374 003362D4 40 82 00 6C */ bne lbl_803393E0 /* 80339378 003362D8 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 8033937C 003362DC 38 60 00 18 */ li r3, 0x18 /* 80339380 003362E0 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 80339384 003362E4 38 A0 00 00 */ li r5, 0 /* 80339388 003362E8 4B FD C4 91 */ bl __nwa__FUlPCcPCc /* 8033938C 003362EC 28 03 00 00 */ cmplwi r3, 0 /* 80339390 003362F0 41 82 00 34 */ beq lbl_803393C4 /* 80339394 003362F4 38 80 00 00 */ li r4, 0 /* 80339398 003362F8 34 A3 00 10 */ addic. r5, r3, 0x10 /* 8033939C 003362FC 90 83 00 00 */ stw r4, 0(r3) /* 803393A0 00336300 38 00 00 01 */ li r0, 1 /* 803393A4 00336304 90 83 00 04 */ stw r4, 4(r3) /* 803393A8 00336308 93 E3 00 08 */ stw r31, 8(r3) /* 803393AC 0033630C 90 03 00 0C */ stw r0, 0xc(r3) /* 803393B0 00336310 41 82 00 14 */ beq lbl_803393C4 /* 803393B4 00336314 80 1E 00 00 */ lwz r0, 0(r30) /* 803393B8 00336318 90 05 00 00 */ stw r0, 0(r5) /* 803393BC 0033631C 80 1E 00 04 */ lwz r0, 4(r30) /* 803393C0 00336320 90 05 00 04 */ stw r0, 4(r5) lbl_803393C4: /* 803393C4 00336324 90 7F 00 00 */ stw r3, 0(r31) /* 803393C8 00336328 7C 7B 1B 78 */ mr r27, r3 /* 803393CC 0033632C 80 1D 00 08 */ lwz r0, 8(r29) /* 803393D0 00336330 7C 1F 00 40 */ cmplw r31, r0 /* 803393D4 00336334 40 82 00 8C */ bne lbl_80339460 /* 803393D8 00336338 90 7D 00 08 */ stw r3, 8(r29) /* 803393DC 0033633C 48 00 00 84 */ b lbl_80339460 lbl_803393E0: /* 803393E0 00336340 7C 1F 03 78 */ mr r31, r0 /* 803393E4 00336344 48 00 00 7C */ b lbl_80339460 lbl_803393E8: /* 803393E8 00336348 80 1F 00 04 */ lwz r0, 4(r31) /* 803393EC 0033634C 28 00 00 00 */ cmplwi r0, 0 /* 803393F0 00336350 40 82 00 6C */ bne lbl_8033945C /* 803393F4 00336354 3C 80 80 3D */ lis r4, lbl_803D7A20@ha /* 803393F8 00336358 38 60 00 18 */ li r3, 0x18 /* 803393FC 0033635C 38 84 7A 20 */ addi r4, r4, lbl_803D7A20@l /* 80339400 00336360 38 A0 00 00 */ li r5, 0 /* 80339404 00336364 4B FD C4 15 */ bl __nwa__FUlPCcPCc /* 80339408 00336368 28 03 00 00 */ cmplwi r3, 0 /* 8033940C 0033636C 41 82 00 34 */ beq lbl_80339440 /* 80339410 00336370 38 80 00 00 */ li r4, 0 /* 80339414 00336374 34 A3 00 10 */ addic. r5, r3, 0x10 /* 80339418 00336378 90 83 00 00 */ stw r4, 0(r3) /* 8033941C 0033637C 38 00 00 01 */ li r0, 1 /* 80339420 00336380 90 83 00 04 */ stw r4, 4(r3) /* 80339424 00336384 93 E3 00 08 */ stw r31, 8(r3) /* 80339428 00336388 90 03 00 0C */ stw r0, 0xc(r3) /* 8033942C 0033638C 41 82 00 14 */ beq lbl_80339440 /* 80339430 00336390 80 1E 00 00 */ lwz r0, 0(r30) /* 80339434 00336394 90 05 00 00 */ stw r0, 0(r5) /* 80339438 00336398 80 1E 00 04 */ lwz r0, 4(r30) /* 8033943C 0033639C 90 05 00 04 */ stw r0, 4(r5) lbl_80339440: /* 80339440 003363A0 90 7F 00 04 */ stw r3, 4(r31) /* 80339444 003363A4 7C 7B 1B 78 */ mr r27, r3 /* 80339448 003363A8 80 1D 00 0C */ lwz r0, 0xc(r29) /* 8033944C 003363AC 7C 1F 00 40 */ cmplw r31, r0 /* 80339450 003363B0 40 82 00 10 */ bne lbl_80339460 /* 80339454 003363B4 90 7D 00 0C */ stw r3, 0xc(r29) /* 80339458 003363B8 48 00 00 08 */ b lbl_80339460 lbl_8033945C: /* 8033945C 003363BC 7C 1F 03 78 */ mr r31, r0 lbl_80339460: /* 80339460 003363C0 28 1B 00 00 */ cmplwi r27, 0 /* 80339464 003363C4 41 82 FE C0 */ beq lbl_80339324 /* 80339468 003363C8 80 BD 00 04 */ lwz r5, 4(r29) /* 8033946C 003363CC 7F 64 DB 78 */ mr r4, r27 /* 80339470 003363D0 38 7D 00 08 */ addi r3, r29, 8 /* 80339474 003363D4 38 05 00 01 */ addi r0, r5, 1 /* 80339478 003363D8 90 1D 00 04 */ stw r0, 4(r29) /* 8033947C 003363DC 48 00 36 1D */ bl rbtree_rebalance__4rstlFPvPv /* 80339480 003363E0 93 7C 00 00 */ stw r27, 0(r28) /* 80339484 003363E4 38 1D 00 08 */ addi r0, r29, 8 /* 80339488 003363E8 90 1C 00 04 */ stw r0, 4(r28) /* 8033948C 003363EC 88 0D 9D 42 */ lbz r0, lbl_805A8902@sda21(r13) /* 80339490 003363F0 98 1C 00 08 */ stb r0, 8(r28) lbl_80339494: /* 80339494 003363F4 BB 61 00 0C */ lmw r27, 0xc(r1) /* 80339498 003363F8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8033949C 003363FC 7C 08 03 A6 */ mtlr r0 /* 803394A0 00336400 38 21 00 20 */ addi r1, r1, 0x20 /* 803394A4 00336404 4E 80 00 20 */ blr