.include "macros.inc" .section .sbss, "wa" .balign 8 .global lbl_805A9340 lbl_805A9340: .skip 0x1 .global lbl_805A9341 lbl_805A9341: .skip 0x1 .global lbl_805A9342 lbl_805A9342: .skip 0x2 .global lbl_805A9344 lbl_805A9344: .skip 0x4 .global lbl_805A9348 lbl_805A9348: .skip 0x4 .global lbl_805A934C lbl_805A934C: .skip 0x4 .global lbl_805A9350 lbl_805A9350: .skip 0x8 .section .text, "ax" .global sub_80306630 sub_80306630: /* 80306630 00303590 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80306634 00303594 7C 08 02 A6 */ mflr r0 /* 80306638 00303598 3C E0 80 5A */ lis r7, lbl_805A53EC@ha /* 8030663C 0030359C 90 01 00 24 */ stw r0, 0x24(r1) /* 80306640 003035A0 38 E7 53 EC */ addi r7, r7, lbl_805A53EC@l /* 80306644 003035A4 BF 61 00 0C */ stmw r27, 0xc(r1) /* 80306648 003035A8 7C 7C 1B 78 */ mr r28, r3 /* 8030664C 003035AC 7C 9D 23 78 */ mr r29, r4 /* 80306650 003035B0 7C BE 2B 78 */ mr r30, r5 /* 80306654 003035B4 7C DF 33 78 */ mr r31, r6 /* 80306658 003035B8 88 07 00 51 */ lbz r0, 0x51(r7) /* 8030665C 003035BC 28 00 00 00 */ cmplwi r0, 0 /* 80306660 003035C0 41 82 00 14 */ beq lbl_80306674 /* 80306664 003035C4 38 00 00 00 */ li r0, 0 /* 80306668 003035C8 38 60 00 00 */ li r3, 0 /* 8030666C 003035CC 98 07 00 51 */ stb r0, 0x51(r7) /* 80306670 003035D0 48 07 4C 49 */ bl GXSetNumIndStages lbl_80306674: /* 80306674 003035D4 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80306678 003035D8 38 83 53 EC */ addi r4, r3, lbl_805A53EC@l /* 8030667C 003035DC 88 04 00 50 */ lbz r0, 0x50(r4) /* 80306680 003035E0 28 00 00 01 */ cmplwi r0, 1 /* 80306684 003035E4 41 82 00 14 */ beq lbl_80306698 /* 80306688 003035E8 38 00 00 01 */ li r0, 1 /* 8030668C 003035EC 38 60 00 01 */ li r3, 1 /* 80306690 003035F0 98 04 00 50 */ stb r0, 0x50(r4) /* 80306694 003035F4 48 07 55 39 */ bl GXSetNumTevStages lbl_80306698: /* 80306698 003035F8 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 8030669C 003035FC 38 83 53 EC */ addi r4, r3, lbl_805A53EC@l /* 803066A0 00303600 88 04 00 4F */ lbz r0, 0x4f(r4) /* 803066A4 00303604 28 00 00 01 */ cmplwi r0, 1 /* 803066A8 00303608 41 82 00 14 */ beq lbl_803066BC /* 803066AC 0030360C 38 00 00 01 */ li r0, 1 /* 803066B0 00303610 38 60 00 01 */ li r3, 1 /* 803066B4 00303614 98 04 00 4F */ stb r0, 0x4f(r4) /* 803066B8 00303618 48 07 1B AD */ bl GXSetNumTexGens lbl_803066BC: /* 803066BC 0030361C 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803066C0 00303620 38 83 53 EC */ addi r4, r3, lbl_805A53EC@l /* 803066C4 00303624 88 04 00 52 */ lbz r0, 0x52(r4) /* 803066C8 00303628 28 00 00 0F */ cmplwi r0, 0xf /* 803066CC 0030362C 41 82 00 1C */ beq lbl_803066E8 /* 803066D0 00303630 38 00 00 0F */ li r0, 0xf /* 803066D4 00303634 38 60 00 01 */ li r3, 1 /* 803066D8 00303638 98 04 00 52 */ stb r0, 0x52(r4) /* 803066DC 0030363C 38 80 00 03 */ li r4, 3 /* 803066E0 00303640 38 A0 00 01 */ li r5, 1 /* 803066E4 00303644 48 07 58 75 */ bl GXSetZMode lbl_803066E8: /* 803066E8 00303648 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803066EC 0030364C 3B 63 53 EC */ addi r27, r3, lbl_805A53EC@l /* 803066F0 00303650 80 7B 00 7C */ lwz r3, 0x7c(r27) /* 803066F4 00303654 3C 03 FF 01 */ addis r0, r3, 0xff01 /* 803066F8 00303658 28 00 FF FF */ cmplwi r0, 0xffff /* 803066FC 0030365C 41 82 00 24 */ beq lbl_80306720 /* 80306700 00303660 3C 80 01 00 */ lis r4, 0x00FFFFFF@ha /* 80306704 00303664 38 60 00 00 */ li r3, 0 /* 80306708 00303668 38 04 FF FF */ addi r0, r4, 0x00FFFFFF@l /* 8030670C 0030366C 38 80 00 FF */ li r4, 0xff /* 80306710 00303670 90 1B 00 7C */ stw r0, 0x7c(r27) /* 80306714 00303674 38 A0 00 FF */ li r5, 0xff /* 80306718 00303678 38 C0 00 FF */ li r6, 0xff /* 8030671C 0030367C 48 07 52 D9 */ bl GXSetTevOrder lbl_80306720: /* 80306720 00303680 80 7B 00 68 */ lwz r3, 0x68(r27) /* 80306724 00303684 3C 03 FF F9 */ addis r0, r3, 0xfff9 /* 80306728 00303688 28 00 BD EF */ cmplwi r0, 0xbdef /* 8030672C 0030368C 41 82 00 28 */ beq lbl_80306754 /* 80306730 00303690 3C 80 00 08 */ lis r4, 0x0007BDEF@ha /* 80306734 00303694 38 60 00 00 */ li r3, 0 /* 80306738 00303698 38 04 BD EF */ addi r0, r4, 0x0007BDEF@l /* 8030673C 0030369C 38 80 00 0F */ li r4, 0xf /* 80306740 003036A0 90 1B 00 68 */ stw r0, 0x68(r27) /* 80306744 003036A4 38 A0 00 0F */ li r5, 0xf /* 80306748 003036A8 38 C0 00 0F */ li r6, 0xf /* 8030674C 003036AC 38 E0 00 0F */ li r7, 0xf /* 80306750 003036B0 48 07 4D 55 */ bl GXSetTevColorIn lbl_80306754: /* 80306754 003036B4 80 7B 00 6C */ lwz r3, 0x6c(r27) /* 80306758 003036B8 3C 03 FF FD */ addis r0, r3, 0xfffd /* 8030675C 003036BC 28 00 9C E7 */ cmplwi r0, 0x9ce7 /* 80306760 003036C0 41 82 00 28 */ beq lbl_80306788 /* 80306764 003036C4 3C 80 00 04 */ lis r4, 0x00039CE7@ha /* 80306768 003036C8 38 60 00 00 */ li r3, 0 /* 8030676C 003036CC 38 04 9C E7 */ addi r0, r4, 0x00039CE7@l /* 80306770 003036D0 38 80 00 07 */ li r4, 7 /* 80306774 003036D4 90 1B 00 6C */ stw r0, 0x6c(r27) /* 80306778 003036D8 38 A0 00 07 */ li r5, 7 /* 8030677C 003036DC 38 C0 00 07 */ li r6, 7 /* 80306780 003036E0 38 E0 00 07 */ li r7, 7 /* 80306784 003036E4 48 07 4D 65 */ bl GXSetTevAlphaIn lbl_80306788: /* 80306788 003036E8 38 60 00 00 */ li r3, 0 /* 8030678C 003036EC 48 00 14 C5 */ bl SetStandardTevColorAlphaOp__3CGXF13_GXTevStageID /* 80306790 003036F0 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80306794 003036F4 3B 63 53 EC */ addi r27, r3, lbl_805A53EC@l /* 80306798 003036F8 A0 1B 00 56 */ lhz r0, 0x56(r27) /* 8030679C 003036FC 28 00 00 21 */ cmplwi r0, 0x21 /* 803067A0 00303700 41 82 00 28 */ beq lbl_803067C8 /* 803067A4 00303704 38 60 00 21 */ li r3, 0x21 /* 803067A8 00303708 4B DA DB D1 */ bl update_fog__3CGXFUi /* 803067AC 0030370C 38 00 00 21 */ li r0, 0x21 /* 803067B0 00303710 38 60 00 01 */ li r3, 1 /* 803067B4 00303714 B0 1B 00 56 */ sth r0, 0x56(r27) /* 803067B8 00303718 38 80 00 00 */ li r4, 0 /* 803067BC 0030371C 38 A0 00 01 */ li r5, 1 /* 803067C0 00303720 38 C0 00 00 */ li r6, 0 /* 803067C4 00303724 48 07 56 E9 */ bl GXSetBlendMode lbl_803067C8: /* 803067C8 00303728 7F 83 E3 78 */ mr r3, r28 /* 803067CC 0030372C 7F A4 EB 78 */ mr r4, r29 /* 803067D0 00303730 7F C5 F3 78 */ mr r5, r30 /* 803067D4 00303734 7F E6 FB 78 */ mr r6, r31 /* 803067D8 00303738 48 00 02 19 */ bl DrawFlat__10CCubeModelCFPCfPCf17ESurfaceSelection /* 803067DC 0030373C BB 61 00 0C */ lmw r27, 0xc(r1) /* 803067E0 00303740 80 01 00 24 */ lwz r0, 0x24(r1) /* 803067E4 00303744 7C 08 03 A6 */ mtlr r0 /* 803067E8 00303748 38 21 00 20 */ addi r1, r1, 0x20 /* 803067EC 0030374C 4E 80 00 20 */ blr .global "RemapMaterialData__10CCubeModelFPCvPQ24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>" "RemapMaterialData__10CCubeModelFPCvPQ24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>": /* 803067F0 00303750 90 83 00 04 */ stw r4, 4(r3) /* 803067F4 00303754 38 80 00 00 */ li r4, 0 /* 803067F8 00303758 90 A3 00 1C */ stw r5, 0x1c(r3) /* 803067FC 0030375C 88 03 00 40 */ lbz r0, 0x40(r3) /* 80306800 00303760 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 /* 80306804 00303764 98 03 00 40 */ stb r0, 0x40(r3) /* 80306808 00303768 4E 80 00 20 */ blr .global UnlockTextures__10CCubeModelCFv UnlockTextures__10CCubeModelCFv: /* 8030680C 0030376C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80306810 00303770 7C 08 02 A6 */ mflr r0 /* 80306814 00303774 90 01 00 24 */ stw r0, 0x24(r1) /* 80306818 00303778 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8030681C 0030377C 3B E0 00 00 */ li r31, 0 /* 80306820 00303780 93 C1 00 18 */ stw r30, 0x18(r1) /* 80306824 00303784 93 A1 00 14 */ stw r29, 0x14(r1) /* 80306828 00303788 7C 7D 1B 78 */ mr r29, r3 /* 8030682C 0030378C 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80306830 00303790 83 C3 00 0C */ lwz r30, 0xc(r3) /* 80306834 00303794 48 00 00 14 */ b lbl_80306848 lbl_80306838: /* 80306838 00303798 93 FE 00 08 */ stw r31, 8(r30) /* 8030683C 0030379C 7F C3 F3 78 */ mr r3, r30 /* 80306840 003037A0 48 03 A5 01 */ bl Unlock__6CTokenFv /* 80306844 003037A4 3B DE 00 0C */ addi r30, r30, 0xc lbl_80306848: /* 80306848 003037A8 80 7D 00 1C */ lwz r3, 0x1c(r29) /* 8030684C 003037AC 80 03 00 04 */ lwz r0, 4(r3) /* 80306850 003037B0 80 63 00 0C */ lwz r3, 0xc(r3) /* 80306854 003037B4 1C 00 00 0C */ mulli r0, r0, 0xc /* 80306858 003037B8 7C 03 02 14 */ add r0, r3, r0 /* 8030685C 003037BC 7C 1E 00 40 */ cmplw r30, r0 /* 80306860 003037C0 40 82 FF D8 */ bne lbl_80306838 /* 80306864 003037C4 88 1D 00 40 */ lbz r0, 0x40(r29) /* 80306868 003037C8 38 60 00 00 */ li r3, 0 /* 8030686C 003037CC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 80306870 003037D0 98 1D 00 40 */ stb r0, 0x40(r29) /* 80306874 003037D4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80306878 003037D8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8030687C 003037DC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80306880 003037E0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80306884 003037E4 7C 08 03 A6 */ mtlr r0 /* 80306888 003037E8 38 21 00 20 */ addi r1, r1, 0x20 /* 8030688C 003037EC 4E 80 00 20 */ blr .global SetModelWireframe__10CCubeModelFb SetModelWireframe__10CCubeModelFb: /* 80306890 003037F0 98 6D A7 81 */ stb r3, lbl_805A9341@sda21(r13) /* 80306894 003037F4 4E 80 00 20 */ blr .global SetDrawingOccluders__10CCubeModelFb SetDrawingOccluders__10CCubeModelFb: /* 80306898 003037F8 98 6D A7 80 */ stb r3, lbl_805A9340@sda21(r13) /* 8030689C 003037FC 4E 80 00 20 */ blr .global DrawAlpha__10CCubeModelCFRC11CModelFlags DrawAlpha__10CCubeModelCFRC11CModelFlags: /* 803068A0 00303800 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803068A4 00303804 7C 08 02 A6 */ mflr r0 /* 803068A8 00303808 90 01 00 14 */ stw r0, 0x14(r1) /* 803068AC 0030380C 93 E1 00 0C */ stw r31, 0xc(r1) /* 803068B0 00303810 7C 9F 23 78 */ mr r31, r4 /* 803068B4 00303814 93 C1 00 08 */ stw r30, 8(r1) /* 803068B8 00303818 7C 7E 1B 78 */ mr r30, r3 /* 803068BC 0030381C 48 03 F0 85 */ bl KillCachedViewDepState__13CCubeMaterialFv /* 803068C0 00303820 7F C3 F3 78 */ mr r3, r30 /* 803068C4 00303824 48 00 0D 5D */ bl SetArraysCurrent__10CCubeModelCFv /* 803068C8 00303828 7F C3 F3 78 */ mr r3, r30 /* 803068CC 0030382C 7F E4 FB 78 */ mr r4, r31 /* 803068D0 00303830 48 00 02 61 */ bl DrawAlphaSurfaces__10CCubeModelCFRC11CModelFlags /* 803068D4 00303834 80 01 00 14 */ lwz r0, 0x14(r1) /* 803068D8 00303838 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803068DC 0030383C 83 C1 00 08 */ lwz r30, 8(r1) /* 803068E0 00303840 7C 08 03 A6 */ mtlr r0 /* 803068E4 00303844 38 21 00 10 */ addi r1, r1, 0x10 /* 803068E8 00303848 4E 80 00 20 */ blr .global DrawNormal__10CCubeModelCFRC11CModelFlags DrawNormal__10CCubeModelCFRC11CModelFlags: /* 803068EC 0030384C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803068F0 00303850 7C 08 02 A6 */ mflr r0 /* 803068F4 00303854 90 01 00 14 */ stw r0, 0x14(r1) /* 803068F8 00303858 93 E1 00 0C */ stw r31, 0xc(r1) /* 803068FC 0030385C 7C 9F 23 78 */ mr r31, r4 /* 80306900 00303860 93 C1 00 08 */ stw r30, 8(r1) /* 80306904 00303864 7C 7E 1B 78 */ mr r30, r3 /* 80306908 00303868 48 03 F0 39 */ bl KillCachedViewDepState__13CCubeMaterialFv /* 8030690C 0030386C 7F C3 F3 78 */ mr r3, r30 /* 80306910 00303870 48 00 0D 11 */ bl SetArraysCurrent__10CCubeModelCFv /* 80306914 00303874 7F C3 F3 78 */ mr r3, r30 /* 80306918 00303878 7F E4 FB 78 */ mr r4, r31 /* 8030691C 0030387C 48 00 02 C9 */ bl DrawNormalSurfaces__10CCubeModelCFRC11CModelFlags /* 80306920 00303880 80 01 00 14 */ lwz r0, 0x14(r1) /* 80306924 00303884 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80306928 00303888 83 C1 00 08 */ lwz r30, 8(r1) /* 8030692C 0030388C 7C 08 03 A6 */ mtlr r0 /* 80306930 00303890 38 21 00 10 */ addi r1, r1, 0x10 /* 80306934 00303894 4E 80 00 20 */ blr .global Draw__10CCubeModelCFPCfPCfRC11CModelFlags Draw__10CCubeModelCFPCfPCfRC11CModelFlags: /* 80306938 00303898 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8030693C 0030389C 7C 08 02 A6 */ mflr r0 /* 80306940 003038A0 90 01 00 24 */ stw r0, 0x24(r1) /* 80306944 003038A4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80306948 003038A8 7C DF 33 78 */ mr r31, r6 /* 8030694C 003038AC 93 C1 00 18 */ stw r30, 0x18(r1) /* 80306950 003038B0 7C BE 2B 78 */ mr r30, r5 /* 80306954 003038B4 93 A1 00 14 */ stw r29, 0x14(r1) /* 80306958 003038B8 7C 9D 23 78 */ mr r29, r4 /* 8030695C 003038BC 93 81 00 10 */ stw r28, 0x10(r1) /* 80306960 003038C0 7C 7C 1B 78 */ mr r28, r3 /* 80306964 003038C4 48 03 EF DD */ bl KillCachedViewDepState__13CCubeMaterialFv /* 80306968 003038C8 7F 83 E3 78 */ mr r3, r28 /* 8030696C 003038CC 7F A4 EB 78 */ mr r4, r29 /* 80306970 003038D0 7F C5 F3 78 */ mr r5, r30 /* 80306974 003038D4 48 00 0C 71 */ bl SetSkinningArraysCurrent__10CCubeModelCFPCfPCf /* 80306978 003038D8 7F 83 E3 78 */ mr r3, r28 /* 8030697C 003038DC 7F E4 FB 78 */ mr r4, r31 /* 80306980 003038E0 48 00 03 19 */ bl DrawSurfaces__10CCubeModelCFRC11CModelFlags /* 80306984 003038E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80306988 003038E8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8030698C 003038EC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80306990 003038F0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80306994 003038F4 83 81 00 10 */ lwz r28, 0x10(r1) /* 80306998 003038F8 7C 08 03 A6 */ mtlr r0 /* 8030699C 003038FC 38 21 00 20 */ addi r1, r1, 0x20 /* 803069A0 00303900 4E 80 00 20 */ blr .global Draw__10CCubeModelCFRC11CModelFlags Draw__10CCubeModelCFRC11CModelFlags: /* 803069A4 00303904 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803069A8 00303908 7C 08 02 A6 */ mflr r0 /* 803069AC 0030390C 90 01 00 14 */ stw r0, 0x14(r1) /* 803069B0 00303910 93 E1 00 0C */ stw r31, 0xc(r1) /* 803069B4 00303914 7C 9F 23 78 */ mr r31, r4 /* 803069B8 00303918 93 C1 00 08 */ stw r30, 8(r1) /* 803069BC 0030391C 7C 7E 1B 78 */ mr r30, r3 /* 803069C0 00303920 48 03 EF 81 */ bl KillCachedViewDepState__13CCubeMaterialFv /* 803069C4 00303924 7F C3 F3 78 */ mr r3, r30 /* 803069C8 00303928 48 00 0C 59 */ bl SetArraysCurrent__10CCubeModelCFv /* 803069CC 0030392C 7F C3 F3 78 */ mr r3, r30 /* 803069D0 00303930 7F E4 FB 78 */ mr r4, r31 /* 803069D4 00303934 48 00 02 C5 */ bl DrawSurfaces__10CCubeModelCFRC11CModelFlags /* 803069D8 00303938 80 01 00 14 */ lwz r0, 0x14(r1) /* 803069DC 0030393C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803069E0 00303940 83 C1 00 08 */ lwz r30, 8(r1) /* 803069E4 00303944 7C 08 03 A6 */ mtlr r0 /* 803069E8 00303948 38 21 00 10 */ addi r1, r1, 0x10 /* 803069EC 0030394C 4E 80 00 20 */ blr .global DrawFlat__10CCubeModelCFPCfPCf17ESurfaceSelection DrawFlat__10CCubeModelCFPCfPCf17ESurfaceSelection: /* 803069F0 00303950 94 21 FF D0 */ stwu r1, -0x30(r1) /* 803069F4 00303954 7C 08 02 A6 */ mflr r0 /* 803069F8 00303958 28 04 00 00 */ cmplwi r4, 0 /* 803069FC 0030395C 90 01 00 34 */ stw r0, 0x34(r1) /* 80306A00 00303960 BF 41 00 18 */ stmw r26, 0x18(r1) /* 80306A04 00303964 7C 7F 1B 78 */ mr r31, r3 /* 80306A08 00303968 7C DA 33 78 */ mr r26, r6 /* 80306A0C 0030396C 41 82 00 0C */ beq lbl_80306A18 /* 80306A10 00303970 48 00 0B D5 */ bl SetSkinningArraysCurrent__10CCubeModelCFPCfPCf /* 80306A14 00303974 48 00 00 08 */ b lbl_80306A1C lbl_80306A18: /* 80306A18 00303978 48 00 0C 09 */ bl SetArraysCurrent__10CCubeModelCFv lbl_80306A1C: /* 80306A1C 0030397C 2C 1A 00 01 */ cmpwi r26, 1 /* 80306A20 00303980 41 82 00 7C */ beq lbl_80306A9C /* 80306A24 00303984 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80306A28 00303988 83 7F 00 38 */ lwz r27, 0x38(r31) /* 80306A2C 0030398C 3B C3 53 EC */ addi r30, r3, lbl_805A53EC@l /* 80306A30 00303990 48 00 00 64 */ b lbl_80306A94 lbl_80306A34: /* 80306A34 00303994 80 BB 00 0C */ lwz r5, 0xc(r27) /* 80306A38 00303998 7F E4 FB 78 */ mr r4, r31 /* 80306A3C 0030399C 38 61 00 0C */ addi r3, r1, 0xc /* 80306A40 003039A0 48 00 0A CD */ bl GetMaterialByIndex__10CCubeModelCFi /* 80306A44 003039A4 80 81 00 0C */ lwz r4, 0xc(r1) /* 80306A48 003039A8 80 04 00 04 */ lwz r0, 4(r4) /* 80306A4C 003039AC 54 03 10 3A */ slwi r3, r0, 2 /* 80306A50 003039B0 38 03 00 08 */ addi r0, r3, 8 /* 80306A54 003039B4 7C 64 00 2E */ lwzx r3, r4, r0 /* 80306A58 003039B8 48 00 14 A5 */ bl SetVtxDescv_Compressed__3CGXFUi /* 80306A5C 003039BC 80 7B 00 1C */ lwz r3, 0x1c(r27) /* 80306A60 003039C0 88 1E 00 4C */ lbz r0, 0x4c(r30) /* 80306A64 003039C4 38 63 00 4B */ addi r3, r3, 0x4b /* 80306A68 003039C8 80 9B 00 10 */ lwz r4, 0x10(r27) /* 80306A6C 003039CC 54 63 00 34 */ rlwinm r3, r3, 0, 0, 0x1a /* 80306A70 003039D0 28 00 00 00 */ cmplwi r0, 0 /* 80306A74 003039D4 54 9D 00 7E */ clrlwi r29, r4, 1 /* 80306A78 003039D8 7F 9B 1A 14 */ add r28, r27, r3 /* 80306A7C 003039DC 41 82 00 08 */ beq lbl_80306A84 /* 80306A80 003039E0 48 00 15 65 */ bl FlushState__3CGXFv lbl_80306A84: /* 80306A84 003039E4 7F 83 E3 78 */ mr r3, r28 /* 80306A88 003039E8 7F A4 EB 78 */ mr r4, r29 /* 80306A8C 003039EC 48 07 57 49 */ bl GXCallDisplayList /* 80306A90 003039F0 83 7B 00 18 */ lwz r27, 0x18(r27) lbl_80306A94: /* 80306A94 003039F4 28 1B 00 00 */ cmplwi r27, 0 /* 80306A98 003039F8 40 82 FF 9C */ bne lbl_80306A34 lbl_80306A9C: /* 80306A9C 003039FC 2C 1A 00 00 */ cmpwi r26, 0 /* 80306AA0 00303A00 41 82 00 7C */ beq lbl_80306B1C /* 80306AA4 00303A04 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80306AA8 00303A08 83 7F 00 3C */ lwz r27, 0x3c(r31) /* 80306AAC 00303A0C 3B C3 53 EC */ addi r30, r3, lbl_805A53EC@l /* 80306AB0 00303A10 48 00 00 64 */ b lbl_80306B14 lbl_80306AB4: /* 80306AB4 00303A14 80 BB 00 0C */ lwz r5, 0xc(r27) /* 80306AB8 00303A18 7F E4 FB 78 */ mr r4, r31 /* 80306ABC 00303A1C 38 61 00 08 */ addi r3, r1, 8 /* 80306AC0 00303A20 48 00 0A 4D */ bl GetMaterialByIndex__10CCubeModelCFi /* 80306AC4 00303A24 80 81 00 08 */ lwz r4, 8(r1) /* 80306AC8 00303A28 80 04 00 04 */ lwz r0, 4(r4) /* 80306ACC 00303A2C 54 03 10 3A */ slwi r3, r0, 2 /* 80306AD0 00303A30 38 03 00 08 */ addi r0, r3, 8 /* 80306AD4 00303A34 7C 64 00 2E */ lwzx r3, r4, r0 /* 80306AD8 00303A38 48 00 14 25 */ bl SetVtxDescv_Compressed__3CGXFUi /* 80306ADC 00303A3C 80 7B 00 1C */ lwz r3, 0x1c(r27) /* 80306AE0 00303A40 88 1E 00 4C */ lbz r0, 0x4c(r30) /* 80306AE4 00303A44 38 63 00 4B */ addi r3, r3, 0x4b /* 80306AE8 00303A48 80 9B 00 10 */ lwz r4, 0x10(r27) /* 80306AEC 00303A4C 54 63 00 34 */ rlwinm r3, r3, 0, 0, 0x1a /* 80306AF0 00303A50 28 00 00 00 */ cmplwi r0, 0 /* 80306AF4 00303A54 54 9D 00 7E */ clrlwi r29, r4, 1 /* 80306AF8 00303A58 7F 9B 1A 14 */ add r28, r27, r3 /* 80306AFC 00303A5C 41 82 00 08 */ beq lbl_80306B04 /* 80306B00 00303A60 48 00 14 E5 */ bl FlushState__3CGXFv lbl_80306B04: /* 80306B04 00303A64 7F 83 E3 78 */ mr r3, r28 /* 80306B08 00303A68 7F A4 EB 78 */ mr r4, r29 /* 80306B0C 00303A6C 48 07 56 C9 */ bl GXCallDisplayList /* 80306B10 00303A70 83 7B 00 18 */ lwz r27, 0x18(r27) lbl_80306B14: /* 80306B14 00303A74 28 1B 00 00 */ cmplwi r27, 0 /* 80306B18 00303A78 40 82 FF 9C */ bne lbl_80306AB4 lbl_80306B1C: /* 80306B1C 00303A7C BB 41 00 18 */ lmw r26, 0x18(r1) /* 80306B20 00303A80 80 01 00 34 */ lwz r0, 0x34(r1) /* 80306B24 00303A84 7C 08 03 A6 */ mtlr r0 /* 80306B28 00303A88 38 21 00 30 */ addi r1, r1, 0x30 /* 80306B2C 00303A8C 4E 80 00 20 */ blr .global DrawAlphaSurfaces__10CCubeModelCFRC11CModelFlags DrawAlphaSurfaces__10CCubeModelCFRC11CModelFlags: /* 80306B30 00303A90 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80306B34 00303A94 7C 08 02 A6 */ mflr r0 /* 80306B38 00303A98 90 01 00 24 */ stw r0, 0x24(r1) /* 80306B3C 00303A9C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80306B40 00303AA0 7C 9F 23 78 */ mr r31, r4 /* 80306B44 00303AA4 93 C1 00 18 */ stw r30, 0x18(r1) /* 80306B48 00303AA8 7C 7E 1B 78 */ mr r30, r3 /* 80306B4C 00303AAC 88 0D A7 81 */ lbz r0, lbl_805A9341@sda21(r13) /* 80306B50 00303AB0 28 00 00 00 */ cmplwi r0, 0 /* 80306B54 00303AB4 41 82 00 38 */ beq lbl_80306B8C /* 80306B58 00303AB8 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80306B5C 00303ABC 90 01 00 0C */ stw r0, 0xc(r1) /* 80306B60 00303AC0 48 00 00 1C */ b lbl_80306B7C lbl_80306B64: /* 80306B64 00303AC4 7F C3 F3 78 */ mr r3, r30 /* 80306B68 00303AC8 38 81 00 0C */ addi r4, r1, 0xc /* 80306B6C 00303ACC 48 00 03 6D */ bl DrawSurfaceWireframe__10CCubeModelCFRC12CCubeSurface /* 80306B70 00303AD0 80 61 00 0C */ lwz r3, 0xc(r1) /* 80306B74 00303AD4 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306B78 00303AD8 90 01 00 0C */ stw r0, 0xc(r1) lbl_80306B7C: /* 80306B7C 00303ADC 80 01 00 0C */ lwz r0, 0xc(r1) /* 80306B80 00303AE0 28 00 00 00 */ cmplwi r0, 0 /* 80306B84 00303AE4 40 82 FF E0 */ bne lbl_80306B64 /* 80306B88 00303AE8 48 00 00 44 */ b lbl_80306BCC lbl_80306B8C: /* 80306B8C 00303AEC 48 00 02 31 */ bl TryLockTextures__10CCubeModelCFv /* 80306B90 00303AF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80306B94 00303AF4 41 82 00 38 */ beq lbl_80306BCC /* 80306B98 00303AF8 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80306B9C 00303AFC 90 01 00 08 */ stw r0, 8(r1) /* 80306BA0 00303B00 48 00 00 20 */ b lbl_80306BC0 lbl_80306BA4: /* 80306BA4 00303B04 7F C3 F3 78 */ mr r3, r30 /* 80306BA8 00303B08 7F E5 FB 78 */ mr r5, r31 /* 80306BAC 00303B0C 38 81 00 08 */ addi r4, r1, 8 /* 80306BB0 00303B10 48 00 08 95 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 80306BB4 00303B14 80 61 00 08 */ lwz r3, 8(r1) /* 80306BB8 00303B18 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306BBC 00303B1C 90 01 00 08 */ stw r0, 8(r1) lbl_80306BC0: /* 80306BC0 00303B20 80 01 00 08 */ lwz r0, 8(r1) /* 80306BC4 00303B24 28 00 00 00 */ cmplwi r0, 0 /* 80306BC8 00303B28 40 82 FF DC */ bne lbl_80306BA4 lbl_80306BCC: /* 80306BCC 00303B2C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80306BD0 00303B30 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80306BD4 00303B34 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80306BD8 00303B38 7C 08 03 A6 */ mtlr r0 /* 80306BDC 00303B3C 38 21 00 20 */ addi r1, r1, 0x20 /* 80306BE0 00303B40 4E 80 00 20 */ blr .global DrawNormalSurfaces__10CCubeModelCFRC11CModelFlags DrawNormalSurfaces__10CCubeModelCFRC11CModelFlags: /* 80306BE4 00303B44 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80306BE8 00303B48 7C 08 02 A6 */ mflr r0 /* 80306BEC 00303B4C 90 01 00 24 */ stw r0, 0x24(r1) /* 80306BF0 00303B50 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80306BF4 00303B54 7C 9F 23 78 */ mr r31, r4 /* 80306BF8 00303B58 93 C1 00 18 */ stw r30, 0x18(r1) /* 80306BFC 00303B5C 7C 7E 1B 78 */ mr r30, r3 /* 80306C00 00303B60 88 0D A7 81 */ lbz r0, lbl_805A9341@sda21(r13) /* 80306C04 00303B64 28 00 00 00 */ cmplwi r0, 0 /* 80306C08 00303B68 41 82 00 38 */ beq lbl_80306C40 /* 80306C0C 00303B6C 80 1E 00 38 */ lwz r0, 0x38(r30) /* 80306C10 00303B70 90 01 00 0C */ stw r0, 0xc(r1) /* 80306C14 00303B74 48 00 00 1C */ b lbl_80306C30 lbl_80306C18: /* 80306C18 00303B78 7F C3 F3 78 */ mr r3, r30 /* 80306C1C 00303B7C 38 81 00 0C */ addi r4, r1, 0xc /* 80306C20 00303B80 48 00 02 B9 */ bl DrawSurfaceWireframe__10CCubeModelCFRC12CCubeSurface /* 80306C24 00303B84 80 61 00 0C */ lwz r3, 0xc(r1) /* 80306C28 00303B88 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306C2C 00303B8C 90 01 00 0C */ stw r0, 0xc(r1) lbl_80306C30: /* 80306C30 00303B90 80 01 00 0C */ lwz r0, 0xc(r1) /* 80306C34 00303B94 28 00 00 00 */ cmplwi r0, 0 /* 80306C38 00303B98 40 82 FF E0 */ bne lbl_80306C18 /* 80306C3C 00303B9C 48 00 00 44 */ b lbl_80306C80 lbl_80306C40: /* 80306C40 00303BA0 48 00 01 7D */ bl TryLockTextures__10CCubeModelCFv /* 80306C44 00303BA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80306C48 00303BA8 41 82 00 38 */ beq lbl_80306C80 /* 80306C4C 00303BAC 80 1E 00 38 */ lwz r0, 0x38(r30) /* 80306C50 00303BB0 90 01 00 08 */ stw r0, 8(r1) /* 80306C54 00303BB4 48 00 00 20 */ b lbl_80306C74 lbl_80306C58: /* 80306C58 00303BB8 7F C3 F3 78 */ mr r3, r30 /* 80306C5C 00303BBC 7F E5 FB 78 */ mr r5, r31 /* 80306C60 00303BC0 38 81 00 08 */ addi r4, r1, 8 /* 80306C64 00303BC4 48 00 07 E1 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 80306C68 00303BC8 80 61 00 08 */ lwz r3, 8(r1) /* 80306C6C 00303BCC 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306C70 00303BD0 90 01 00 08 */ stw r0, 8(r1) lbl_80306C74: /* 80306C74 00303BD4 80 01 00 08 */ lwz r0, 8(r1) /* 80306C78 00303BD8 28 00 00 00 */ cmplwi r0, 0 /* 80306C7C 00303BDC 40 82 FF DC */ bne lbl_80306C58 lbl_80306C80: /* 80306C80 00303BE0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80306C84 00303BE4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80306C88 00303BE8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80306C8C 00303BEC 7C 08 03 A6 */ mtlr r0 /* 80306C90 00303BF0 38 21 00 20 */ addi r1, r1, 0x20 /* 80306C94 00303BF4 4E 80 00 20 */ blr .global DrawSurfaces__10CCubeModelCFRC11CModelFlags DrawSurfaces__10CCubeModelCFRC11CModelFlags: /* 80306C98 00303BF8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80306C9C 00303BFC 7C 08 02 A6 */ mflr r0 /* 80306CA0 00303C00 90 01 00 24 */ stw r0, 0x24(r1) /* 80306CA4 00303C04 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80306CA8 00303C08 7C 7F 1B 78 */ mr r31, r3 /* 80306CAC 00303C0C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80306CB0 00303C10 7C 9E 23 78 */ mr r30, r4 /* 80306CB4 00303C14 88 0D A7 81 */ lbz r0, lbl_805A9341@sda21(r13) /* 80306CB8 00303C18 28 00 00 00 */ cmplwi r0, 0 /* 80306CBC 00303C1C 41 82 00 68 */ beq lbl_80306D24 /* 80306CC0 00303C20 80 1F 00 38 */ lwz r0, 0x38(r31) /* 80306CC4 00303C24 90 01 00 14 */ stw r0, 0x14(r1) /* 80306CC8 00303C28 48 00 00 1C */ b lbl_80306CE4 lbl_80306CCC: /* 80306CCC 00303C2C 7F E3 FB 78 */ mr r3, r31 /* 80306CD0 00303C30 38 81 00 14 */ addi r4, r1, 0x14 /* 80306CD4 00303C34 48 00 02 05 */ bl DrawSurfaceWireframe__10CCubeModelCFRC12CCubeSurface /* 80306CD8 00303C38 80 61 00 14 */ lwz r3, 0x14(r1) /* 80306CDC 00303C3C 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306CE0 00303C40 90 01 00 14 */ stw r0, 0x14(r1) lbl_80306CE4: /* 80306CE4 00303C44 80 01 00 14 */ lwz r0, 0x14(r1) /* 80306CE8 00303C48 28 00 00 00 */ cmplwi r0, 0 /* 80306CEC 00303C4C 40 82 FF E0 */ bne lbl_80306CCC /* 80306CF0 00303C50 80 1F 00 3C */ lwz r0, 0x3c(r31) /* 80306CF4 00303C54 90 01 00 10 */ stw r0, 0x10(r1) /* 80306CF8 00303C58 48 00 00 1C */ b lbl_80306D14 lbl_80306CFC: /* 80306CFC 00303C5C 7F E3 FB 78 */ mr r3, r31 /* 80306D00 00303C60 38 81 00 10 */ addi r4, r1, 0x10 /* 80306D04 00303C64 48 00 01 D5 */ bl DrawSurfaceWireframe__10CCubeModelCFRC12CCubeSurface /* 80306D08 00303C68 80 61 00 10 */ lwz r3, 0x10(r1) /* 80306D0C 00303C6C 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306D10 00303C70 90 01 00 10 */ stw r0, 0x10(r1) lbl_80306D14: /* 80306D14 00303C74 80 01 00 10 */ lwz r0, 0x10(r1) /* 80306D18 00303C78 28 00 00 00 */ cmplwi r0, 0 /* 80306D1C 00303C7C 40 82 FF E0 */ bne lbl_80306CFC /* 80306D20 00303C80 48 00 00 84 */ b lbl_80306DA4 lbl_80306D24: /* 80306D24 00303C84 A0 1E 00 02 */ lhz r0, 2(r30) /* 80306D28 00303C88 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 80306D2C 00303C8C 40 82 00 10 */ bne lbl_80306D3C /* 80306D30 00303C90 48 00 00 8D */ bl TryLockTextures__10CCubeModelCFv /* 80306D34 00303C94 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80306D38 00303C98 41 82 00 6C */ beq lbl_80306DA4 lbl_80306D3C: /* 80306D3C 00303C9C 80 1F 00 38 */ lwz r0, 0x38(r31) /* 80306D40 00303CA0 90 01 00 0C */ stw r0, 0xc(r1) /* 80306D44 00303CA4 48 00 00 20 */ b lbl_80306D64 lbl_80306D48: /* 80306D48 00303CA8 7F E3 FB 78 */ mr r3, r31 /* 80306D4C 00303CAC 7F C5 F3 78 */ mr r5, r30 /* 80306D50 00303CB0 38 81 00 0C */ addi r4, r1, 0xc /* 80306D54 00303CB4 48 00 06 F1 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 80306D58 00303CB8 80 61 00 0C */ lwz r3, 0xc(r1) /* 80306D5C 00303CBC 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306D60 00303CC0 90 01 00 0C */ stw r0, 0xc(r1) lbl_80306D64: /* 80306D64 00303CC4 80 01 00 0C */ lwz r0, 0xc(r1) /* 80306D68 00303CC8 28 00 00 00 */ cmplwi r0, 0 /* 80306D6C 00303CCC 40 82 FF DC */ bne lbl_80306D48 /* 80306D70 00303CD0 80 1F 00 3C */ lwz r0, 0x3c(r31) /* 80306D74 00303CD4 90 01 00 08 */ stw r0, 8(r1) /* 80306D78 00303CD8 48 00 00 20 */ b lbl_80306D98 lbl_80306D7C: /* 80306D7C 00303CDC 7F E3 FB 78 */ mr r3, r31 /* 80306D80 00303CE0 7F C5 F3 78 */ mr r5, r30 /* 80306D84 00303CE4 38 81 00 08 */ addi r4, r1, 8 /* 80306D88 00303CE8 48 00 06 BD */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 80306D8C 00303CEC 80 61 00 08 */ lwz r3, 8(r1) /* 80306D90 00303CF0 80 03 00 18 */ lwz r0, 0x18(r3) /* 80306D94 00303CF4 90 01 00 08 */ stw r0, 8(r1) lbl_80306D98: /* 80306D98 00303CF8 80 01 00 08 */ lwz r0, 8(r1) /* 80306D9C 00303CFC 28 00 00 00 */ cmplwi r0, 0 /* 80306DA0 00303D00 40 82 FF DC */ bne lbl_80306D7C lbl_80306DA4: /* 80306DA4 00303D04 80 01 00 24 */ lwz r0, 0x24(r1) /* 80306DA8 00303D08 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80306DAC 00303D0C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80306DB0 00303D10 7C 08 03 A6 */ mtlr r0 /* 80306DB4 00303D14 38 21 00 20 */ addi r1, r1, 0x20 /* 80306DB8 00303D18 4E 80 00 20 */ blr .global TryLockTextures__10CCubeModelCFv TryLockTextures__10CCubeModelCFv: /* 80306DBC 00303D1C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80306DC0 00303D20 7C 08 02 A6 */ mflr r0 /* 80306DC4 00303D24 90 01 00 24 */ stw r0, 0x24(r1) /* 80306DC8 00303D28 BF 61 00 0C */ stmw r27, 0xc(r1) /* 80306DCC 00303D2C 7C 7C 1B 78 */ mr r28, r3 /* 80306DD0 00303D30 88 03 00 40 */ lbz r0, 0x40(r3) /* 80306DD4 00303D34 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 80306DD8 00303D38 40 82 00 D8 */ bne lbl_80306EB0 /* 80306DDC 00303D3C 3B C0 00 00 */ li r30, 0 /* 80306DE0 00303D40 3B A0 00 00 */ li r29, 0 /* 80306DE4 00303D44 3B E0 00 00 */ li r31, 0 /* 80306DE8 00303D48 48 00 00 A0 */ b lbl_80306E88 lbl_80306DEC: /* 80306DEC 00303D4C 80 03 00 0C */ lwz r0, 0xc(r3) /* 80306DF0 00303D50 7C 60 FA 14 */ add r3, r0, r31 /* 80306DF4 00303D54 48 03 9F 91 */ bl Lock__6CTokenFv /* 80306DF8 00303D58 80 7C 00 1C */ lwz r3, 0x1c(r28) /* 80306DFC 00303D5C 80 03 00 0C */ lwz r0, 0xc(r3) /* 80306E00 00303D60 7F 60 FA 14 */ add r27, r0, r31 /* 80306E04 00303D64 80 1B 00 08 */ lwz r0, 8(r27) /* 80306E08 00303D68 28 00 00 00 */ cmplwi r0, 0 /* 80306E0C 00303D6C 41 82 00 0C */ beq lbl_80306E18 /* 80306E10 00303D70 38 60 00 01 */ li r3, 1 /* 80306E14 00303D74 48 00 00 3C */ b lbl_80306E50 lbl_80306E18: /* 80306E18 00303D78 88 1B 00 04 */ lbz r0, 4(r27) /* 80306E1C 00303D7C 28 00 00 00 */ cmplwi r0, 0 /* 80306E20 00303D80 41 82 00 2C */ beq lbl_80306E4C /* 80306E24 00303D84 80 7B 00 00 */ lwz r3, 0(r27) /* 80306E28 00303D88 80 03 00 10 */ lwz r0, 0x10(r3) /* 80306E2C 00303D8C 28 00 00 00 */ cmplwi r0, 0 /* 80306E30 00303D90 41 82 00 1C */ beq lbl_80306E4C /* 80306E34 00303D94 7F 63 DB 78 */ mr r3, r27 /* 80306E38 00303D98 48 03 9F D5 */ bl GetObj__6CTokenFv /* 80306E3C 00303D9C 80 03 00 04 */ lwz r0, 4(r3) /* 80306E40 00303DA0 38 60 00 01 */ li r3, 1 /* 80306E44 00303DA4 90 1B 00 08 */ stw r0, 8(r27) /* 80306E48 00303DA8 48 00 00 08 */ b lbl_80306E50 lbl_80306E4C: /* 80306E4C 00303DAC 38 60 00 00 */ li r3, 0 lbl_80306E50: /* 80306E50 00303DB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80306E54 00303DB4 40 82 00 0C */ bne lbl_80306E60 /* 80306E58 00303DB8 3B C0 00 01 */ li r30, 1 /* 80306E5C 00303DBC 48 00 00 24 */ b lbl_80306E80 lbl_80306E60: /* 80306E60 00303DC0 80 7C 00 1C */ lwz r3, 0x1c(r28) /* 80306E64 00303DC4 38 1F 00 08 */ addi r0, r31, 8 /* 80306E68 00303DC8 80 63 00 0C */ lwz r3, 0xc(r3) /* 80306E6C 00303DCC 7C 63 00 2E */ lwzx r3, r3, r0 /* 80306E70 00303DD0 48 00 7D B9 */ bl LoadToMRAM__8CTextureCFv /* 80306E74 00303DD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80306E78 00303DD8 40 82 00 08 */ bne lbl_80306E80 /* 80306E7C 00303DDC 3B C0 00 01 */ li r30, 1 lbl_80306E80: /* 80306E80 00303DE0 3B FF 00 0C */ addi r31, r31, 0xc /* 80306E84 00303DE4 3B BD 00 01 */ addi r29, r29, 1 lbl_80306E88: /* 80306E88 00303DE8 80 7C 00 1C */ lwz r3, 0x1c(r28) /* 80306E8C 00303DEC 80 03 00 04 */ lwz r0, 4(r3) /* 80306E90 00303DF0 7C 1D 00 00 */ cmpw r29, r0 /* 80306E94 00303DF4 41 80 FF 58 */ blt lbl_80306DEC /* 80306E98 00303DF8 57 C0 06 3F */ clrlwi. r0, r30, 0x18 /* 80306E9C 00303DFC 40 82 00 14 */ bne lbl_80306EB0 /* 80306EA0 00303E00 88 1C 00 40 */ lbz r0, 0x40(r28) /* 80306EA4 00303E04 38 60 00 01 */ li r3, 1 /* 80306EA8 00303E08 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 80306EAC 00303E0C 98 1C 00 40 */ stb r0, 0x40(r28) lbl_80306EB0: /* 80306EB0 00303E10 88 1C 00 40 */ lbz r0, 0x40(r28) /* 80306EB4 00303E14 BB 61 00 0C */ lmw r27, 0xc(r1) /* 80306EB8 00303E18 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f /* 80306EBC 00303E1C 7C 03 00 D0 */ neg r0, r3 /* 80306EC0 00303E20 7C 00 1B 78 */ or r0, r0, r3 /* 80306EC4 00303E24 54 03 0F FE */ srwi r3, r0, 0x1f /* 80306EC8 00303E28 80 01 00 24 */ lwz r0, 0x24(r1) /* 80306ECC 00303E2C 7C 08 03 A6 */ mtlr r0 /* 80306ED0 00303E30 38 21 00 20 */ addi r1, r1, 0x20 /* 80306ED4 00303E34 4E 80 00 20 */ blr .global DrawSurfaceWireframe__10CCubeModelCFRC12CCubeSurface DrawSurfaceWireframe__10CCubeModelCFRC12CCubeSurface: /* 80306ED8 00303E38 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80306EDC 00303E3C 7C 08 02 A6 */ mflr r0 /* 80306EE0 00303E40 90 01 00 84 */ stw r0, 0x84(r1) /* 80306EE4 00303E44 BE 61 00 4C */ stmw r19, 0x4c(r1) /* 80306EE8 00303E48 7C 94 23 78 */ mr r20, r4 /* 80306EEC 00303E4C 80 A4 00 00 */ lwz r5, 0(r4) /* 80306EF0 00303E50 7C 64 1B 78 */ mr r4, r3 /* 80306EF4 00303E54 38 61 00 44 */ addi r3, r1, 0x44 /* 80306EF8 00303E58 80 A5 00 0C */ lwz r5, 0xc(r5) /* 80306EFC 00303E5C 48 00 06 11 */ bl GetMaterialByIndex__10CCubeModelCFi /* 80306F00 00303E60 88 0D A7 88 */ lbz r0, lbl_805A9348@sda21(r13) /* 80306F04 00303E64 80 81 00 44 */ lwz r4, 0x44(r1) /* 80306F08 00303E68 7C 00 07 75 */ extsb. r0, r0 /* 80306F0C 00303E6C 40 82 00 14 */ bne lbl_80306F20 /* 80306F10 00303E70 38 60 00 00 */ li r3, 0 /* 80306F14 00303E74 38 00 00 01 */ li r0, 1 /* 80306F18 00303E78 90 6D A7 84 */ stw r3, lbl_805A9344@sda21(r13) /* 80306F1C 00303E7C 98 0D A7 88 */ stb r0, lbl_805A9348@sda21(r13) lbl_80306F20: /* 80306F20 00303E80 88 0D A7 90 */ lbz r0, lbl_805A9350@sda21(r13) /* 80306F24 00303E84 7C 00 07 75 */ extsb. r0, r0 /* 80306F28 00303E88 40 82 00 14 */ bne lbl_80306F3C /* 80306F2C 00303E8C 38 60 00 00 */ li r3, 0 /* 80306F30 00303E90 38 00 00 01 */ li r0, 1 /* 80306F34 00303E94 90 6D A7 8C */ stw r3, lbl_805A934C@sda21(r13) /* 80306F38 00303E98 98 0D A7 90 */ stb r0, lbl_805A9350@sda21(r13) lbl_80306F3C: /* 80306F3C 00303E9C 80 64 00 04 */ lwz r3, 4(r4) /* 80306F40 00303EA0 80 0D A7 84 */ lwz r0, lbl_805A9344@sda21(r13) /* 80306F44 00303EA4 54 63 10 3A */ slwi r3, r3, 2 /* 80306F48 00303EA8 7C 64 1A 14 */ add r3, r4, r3 /* 80306F4C 00303EAC 80 83 00 08 */ lwz r4, 8(r3) /* 80306F50 00303EB0 7C 04 00 40 */ cmplw r4, r0 /* 80306F54 00303EB4 41 82 00 94 */ beq lbl_80306FE8 /* 80306F58 00303EB8 38 A0 00 00 */ li r5, 0 /* 80306F5C 00303EBC 38 00 00 04 */ li r0, 4 /* 80306F60 00303EC0 90 AD A7 8C */ stw r5, lbl_805A934C@sda21(r13) /* 80306F64 00303EC4 38 C0 00 00 */ li r6, 0 /* 80306F68 00303EC8 7C 09 03 A6 */ mtctr r0 lbl_80306F6C: /* 80306F6C 00303ECC 7C 80 2C 30 */ srw r0, r4, r5 /* 80306F70 00303ED0 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 80306F74 00303ED4 41 82 00 10 */ beq lbl_80306F84 /* 80306F78 00303ED8 80 6D A7 8C */ lwz r3, lbl_805A934C@sda21(r13) /* 80306F7C 00303EDC 38 03 00 01 */ addi r0, r3, 1 /* 80306F80 00303EE0 90 0D A7 8C */ stw r0, lbl_805A934C@sda21(r13) lbl_80306F84: /* 80306F84 00303EE4 38 A5 00 02 */ addi r5, r5, 2 /* 80306F88 00303EE8 7C 80 2C 30 */ srw r0, r4, r5 /* 80306F8C 00303EEC 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 80306F90 00303EF0 41 82 00 10 */ beq lbl_80306FA0 /* 80306F94 00303EF4 80 6D A7 8C */ lwz r3, lbl_805A934C@sda21(r13) /* 80306F98 00303EF8 38 03 00 01 */ addi r0, r3, 1 /* 80306F9C 00303EFC 90 0D A7 8C */ stw r0, lbl_805A934C@sda21(r13) lbl_80306FA0: /* 80306FA0 00303F00 38 A5 00 02 */ addi r5, r5, 2 /* 80306FA4 00303F04 7C 80 2C 30 */ srw r0, r4, r5 /* 80306FA8 00303F08 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 80306FAC 00303F0C 41 82 00 10 */ beq lbl_80306FBC /* 80306FB0 00303F10 80 6D A7 8C */ lwz r3, lbl_805A934C@sda21(r13) /* 80306FB4 00303F14 38 03 00 01 */ addi r0, r3, 1 /* 80306FB8 00303F18 90 0D A7 8C */ stw r0, lbl_805A934C@sda21(r13) lbl_80306FBC: /* 80306FBC 00303F1C 38 A5 00 02 */ addi r5, r5, 2 /* 80306FC0 00303F20 7C 80 2C 30 */ srw r0, r4, r5 /* 80306FC4 00303F24 54 00 07 BF */ clrlwi. r0, r0, 0x1e /* 80306FC8 00303F28 41 82 00 10 */ beq lbl_80306FD8 /* 80306FCC 00303F2C 80 6D A7 8C */ lwz r3, lbl_805A934C@sda21(r13) /* 80306FD0 00303F30 38 03 00 01 */ addi r0, r3, 1 /* 80306FD4 00303F34 90 0D A7 8C */ stw r0, lbl_805A934C@sda21(r13) lbl_80306FD8: /* 80306FD8 00303F38 38 A5 00 02 */ addi r5, r5, 2 /* 80306FDC 00303F3C 38 C6 00 03 */ addi r6, r6, 3 /* 80306FE0 00303F40 42 00 FF 8C */ bdnz lbl_80306F6C /* 80306FE4 00303F44 90 8D A7 84 */ stw r4, lbl_805A9344@sda21(r13) lbl_80306FE8: /* 80306FE8 00303F48 80 0D A7 8C */ lwz r0, lbl_805A934C@sda21(r13) /* 80306FEC 00303F4C 3C 60 80 3D */ lis r3, lbl_803D7388@ha /* 80306FF0 00303F50 38 63 73 88 */ addi r3, r3, lbl_803D7388@l /* 80306FF4 00303F54 54 19 08 3C */ slwi r25, r0, 1 /* 80306FF8 00303F58 48 00 0E 31 */ bl SetVtxDescv__3CGXFPC14_GXVtxDescList /* 80306FFC 00303F5C 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80307000 00303F60 3A A3 53 EC */ addi r21, r3, lbl_805A53EC@l /* 80307004 00303F64 80 15 00 78 */ lwz r0, 0x78(r21) /* 80307008 00303F68 28 00 00 00 */ cmplwi r0, 0 /* 8030700C 00303F6C 41 82 00 14 */ beq lbl_80307020 /* 80307010 00303F70 38 00 00 00 */ li r0, 0 /* 80307014 00303F74 38 60 00 00 */ li r3, 0 /* 80307018 00303F78 90 15 00 78 */ stw r0, 0x78(r21) /* 8030701C 00303F7C 48 07 42 C5 */ bl GXSetTevDirect lbl_80307020: /* 80307020 00303F80 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80307024 00303F84 38 83 53 EC */ addi r4, r3, lbl_805A53EC@l /* 80307028 00303F88 88 04 00 51 */ lbz r0, 0x51(r4) /* 8030702C 00303F8C 28 00 00 00 */ cmplwi r0, 0 /* 80307030 00303F90 41 82 00 14 */ beq lbl_80307044 /* 80307034 00303F94 38 00 00 00 */ li r0, 0 /* 80307038 00303F98 38 60 00 00 */ li r3, 0 /* 8030703C 00303F9C 98 04 00 51 */ stb r0, 0x51(r4) /* 80307040 00303FA0 48 07 42 79 */ bl GXSetNumIndStages lbl_80307044: /* 80307044 00303FA4 80 75 00 68 */ lwz r3, 0x68(r21) /* 80307048 00303FA8 3C 03 FF FA */ addis r0, r3, 0xfffa /* 8030704C 00303FAC 28 00 3D EF */ cmplwi r0, 0x3def /* 80307050 00303FB0 41 82 00 28 */ beq lbl_80307078 /* 80307054 00303FB4 3C 80 00 06 */ lis r4, 0x00063DEF@ha /* 80307058 00303FB8 38 60 00 00 */ li r3, 0 /* 8030705C 00303FBC 38 04 3D EF */ addi r0, r4, 0x00063DEF@l /* 80307060 00303FC0 38 80 00 0F */ li r4, 0xf /* 80307064 00303FC4 90 15 00 68 */ stw r0, 0x68(r21) /* 80307068 00303FC8 38 A0 00 0F */ li r5, 0xf /* 8030706C 00303FCC 38 C0 00 0F */ li r6, 0xf /* 80307070 00303FD0 38 E0 00 0C */ li r7, 0xc /* 80307074 00303FD4 48 07 44 31 */ bl GXSetTevColorIn lbl_80307078: /* 80307078 00303FD8 80 15 00 70 */ lwz r0, 0x70(r21) /* 8030707C 00303FDC 28 00 01 00 */ cmplwi r0, 0x100 /* 80307080 00303FE0 41 82 00 28 */ beq lbl_803070A8 /* 80307084 00303FE4 38 00 01 00 */ li r0, 0x100 /* 80307088 00303FE8 38 60 00 00 */ li r3, 0 /* 8030708C 00303FEC 90 15 00 70 */ stw r0, 0x70(r21) /* 80307090 00303FF0 38 80 00 00 */ li r4, 0 /* 80307094 00303FF4 38 A0 00 00 */ li r5, 0 /* 80307098 00303FF8 38 C0 00 00 */ li r6, 0 /* 8030709C 00303FFC 38 E0 00 01 */ li r7, 1 /* 803070A0 00304000 39 00 00 00 */ li r8, 0 /* 803070A4 00304004 48 07 44 89 */ bl GXSetTevColorOp lbl_803070A8: /* 803070A8 00304008 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803070AC 0030400C 38 C0 00 00 */ li r6, 0 /* 803070B0 00304010 3B A3 53 EC */ addi r29, r3, lbl_805A53EC@l /* 803070B4 00304014 88 BD 00 4D */ lbz r5, 0x4d(r29) /* 803070B8 00304018 88 1D 00 4F */ lbz r0, 0x4f(r29) /* 803070BC 0030401C 7C 85 00 D0 */ neg r4, r5 /* 803070C0 00304020 88 7D 00 4C */ lbz r3, 0x4c(r29) /* 803070C4 00304024 7C 84 2B 78 */ or r4, r4, r5 /* 803070C8 00304028 28 00 00 01 */ cmplwi r0, 1 /* 803070CC 0030402C 50 83 0F FE */ rlwimi r3, r4, 1, 0x1f, 0x1f /* 803070D0 00304030 98 DD 00 4E */ stb r6, 0x4e(r29) /* 803070D4 00304034 98 7D 00 4C */ stb r3, 0x4c(r29) /* 803070D8 00304038 41 82 00 14 */ beq lbl_803070EC /* 803070DC 0030403C 38 00 00 01 */ li r0, 1 /* 803070E0 00304040 38 60 00 01 */ li r3, 1 /* 803070E4 00304044 98 1D 00 4F */ stb r0, 0x4f(r29) /* 803070E8 00304048 48 07 11 7D */ bl GXSetNumTexGens lbl_803070EC: /* 803070EC 0030404C 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803070F0 00304050 3A A3 53 EC */ addi r21, r3, lbl_805A53EC@l /* 803070F4 00304054 A0 15 00 56 */ lhz r0, 0x56(r21) /* 803070F8 00304058 28 00 00 05 */ cmplwi r0, 5 /* 803070FC 0030405C 41 82 00 28 */ beq lbl_80307124 /* 80307100 00304060 38 60 00 05 */ li r3, 5 /* 80307104 00304064 4B DA D2 75 */ bl update_fog__3CGXFUi /* 80307108 00304068 38 00 00 05 */ li r0, 5 /* 8030710C 0030406C 38 60 00 01 */ li r3, 1 /* 80307110 00304070 B0 15 00 56 */ sth r0, 0x56(r21) /* 80307114 00304074 38 80 00 01 */ li r4, 1 /* 80307118 00304078 38 A0 00 00 */ li r5, 0 /* 8030711C 0030407C 38 C0 00 00 */ li r6, 0 /* 80307120 00304080 48 07 4D 8D */ bl GXSetBlendMode lbl_80307124: /* 80307124 00304084 80 B4 00 00 */ lwz r5, 0(r20) /* 80307128 00304088 1F 59 00 03 */ mulli r26, r25, 3 /* 8030712C 0030408C 57 3B 08 3C */ slwi r27, r25, 1 /* 80307130 00304090 80 65 00 1C */ lwz r3, 0x1c(r5) /* 80307134 00304094 3A C0 00 00 */ li r22, 0 /* 80307138 00304098 80 85 00 10 */ lwz r4, 0x10(r5) /* 8030713C 0030409C 3F C0 CC 01 */ lis r30, 0xcc01 /* 80307140 003040A0 38 03 00 4B */ addi r0, r3, 0x4b /* 80307144 003040A4 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a /* 80307148 003040A8 54 98 00 7E */ clrlwi r24, r4, 1 /* 8030714C 003040AC 7E E5 02 14 */ add r23, r5, r0 /* 80307150 003040B0 48 00 02 D8 */ b lbl_80307428 lbl_80307154: /* 80307154 003040B4 88 17 00 00 */ lbz r0, 0(r23) /* 80307158 003040B8 54 1F 06 39 */ rlwinm. r31, r0, 0, 0x18, 0x1c /* 8030715C 003040BC 41 82 02 D4 */ beq lbl_80307430 /* 80307160 003040C0 88 77 00 01 */ lbz r3, 1(r23) /* 80307164 003040C4 3A D6 00 03 */ addi r22, r22, 3 /* 80307168 003040C8 88 17 00 02 */ lbz r0, 2(r23) /* 8030716C 003040CC 3A F7 00 03 */ addi r23, r23, 3 /* 80307170 003040D0 98 61 00 40 */ stb r3, 0x40(r1) /* 80307174 003040D4 98 01 00 41 */ stb r0, 0x41(r1) /* 80307178 003040D8 A3 81 00 40 */ lhz r28, 0x40(r1) /* 8030717C 003040DC 28 1C 00 03 */ cmplwi r28, 3 /* 80307180 003040E0 41 80 02 B0 */ blt lbl_80307430 /* 80307184 003040E4 88 1D 00 4C */ lbz r0, 0x4c(r29) /* 80307188 003040E8 28 00 00 00 */ cmplwi r0, 0 /* 8030718C 003040EC 41 82 00 08 */ beq lbl_80307194 /* 80307190 003040F0 48 00 0E 55 */ bl FlushState__3CGXFv lbl_80307194: /* 80307194 003040F4 38 60 00 B0 */ li r3, 0xb0 /* 80307198 003040F8 38 80 00 00 */ li r4, 0 /* 8030719C 003040FC 38 A0 00 04 */ li r5, 4 /* 803071A0 00304100 48 07 17 55 */ bl GXBegin /* 803071A4 00304104 88 97 00 00 */ lbz r4, 0(r23) /* 803071A8 00304108 7C 1C C9 D6 */ mullw r0, r28, r25 /* 803071AC 0030410C 88 77 00 01 */ lbz r3, 1(r23) /* 803071B0 00304110 7C B9 BA 14 */ add r5, r25, r23 /* 803071B4 00304114 98 81 00 3C */ stb r4, 0x3c(r1) /* 803071B8 00304118 7C 9B BA 14 */ add r4, r27, r23 /* 803071BC 0030411C 28 1F 00 90 */ cmplwi r31, 0x90 /* 803071C0 00304120 98 61 00 3D */ stb r3, 0x3d(r1) /* 803071C4 00304124 7E D6 02 14 */ add r22, r22, r0 /* 803071C8 00304128 A0 01 00 3C */ lhz r0, 0x3c(r1) /* 803071CC 0030412C B0 1E 80 00 */ sth r0, 0xCC008000@l(r30) /* 803071D0 00304130 88 65 00 00 */ lbz r3, 0(r5) /* 803071D4 00304134 88 05 00 01 */ lbz r0, 1(r5) /* 803071D8 00304138 98 61 00 38 */ stb r3, 0x38(r1) /* 803071DC 0030413C 98 01 00 39 */ stb r0, 0x39(r1) /* 803071E0 00304140 A0 01 00 38 */ lhz r0, 0x38(r1) /* 803071E4 00304144 B0 1E 80 00 */ sth r0, 0xCC008000@l(r30) /* 803071E8 00304148 88 64 00 00 */ lbz r3, 0(r4) /* 803071EC 0030414C 88 04 00 01 */ lbz r0, 1(r4) /* 803071F0 00304150 98 61 00 34 */ stb r3, 0x34(r1) /* 803071F4 00304154 98 01 00 35 */ stb r0, 0x35(r1) /* 803071F8 00304158 A0 01 00 34 */ lhz r0, 0x34(r1) /* 803071FC 0030415C B0 1E 80 00 */ sth r0, 0xCC008000@l(r30) /* 80307200 00304160 88 77 00 00 */ lbz r3, 0(r23) /* 80307204 00304164 88 17 00 01 */ lbz r0, 1(r23) /* 80307208 00304168 7E F7 D2 14 */ add r23, r23, r26 /* 8030720C 0030416C 98 61 00 30 */ stb r3, 0x30(r1) /* 80307210 00304170 98 01 00 31 */ stb r0, 0x31(r1) /* 80307214 00304174 A0 01 00 30 */ lhz r0, 0x30(r1) /* 80307218 00304178 B0 1E 80 00 */ sth r0, 0xCC008000@l(r30) /* 8030721C 0030417C 40 82 00 B4 */ bne lbl_803072D0 /* 80307220 00304180 3B 9C FF FD */ addi r28, r28, -3 /* 80307224 00304184 3A A0 00 00 */ li r21, 0 /* 80307228 00304188 57 9C 04 3E */ clrlwi r28, r28, 0x10 /* 8030722C 0030418C 3F E0 CC 01 */ lis r31, 0xcc01 /* 80307230 00304190 48 00 00 94 */ b lbl_803072C4 lbl_80307234: /* 80307234 00304194 88 1D 00 4C */ lbz r0, 0x4c(r29) /* 80307238 00304198 28 00 00 00 */ cmplwi r0, 0 /* 8030723C 0030419C 41 82 00 08 */ beq lbl_80307244 /* 80307240 003041A0 48 00 0D A5 */ bl FlushState__3CGXFv lbl_80307244: /* 80307244 003041A4 38 60 00 B0 */ li r3, 0xb0 /* 80307248 003041A8 38 80 00 00 */ li r4, 0 /* 8030724C 003041AC 38 A0 00 04 */ li r5, 4 /* 80307250 003041B0 48 07 16 A5 */ bl GXBegin /* 80307254 003041B4 88 77 00 00 */ lbz r3, 0(r23) /* 80307258 003041B8 7C 99 BA 14 */ add r4, r25, r23 /* 8030725C 003041BC 88 17 00 01 */ lbz r0, 1(r23) /* 80307260 003041C0 7C BB BA 14 */ add r5, r27, r23 /* 80307264 003041C4 98 61 00 2C */ stb r3, 0x2c(r1) /* 80307268 003041C8 3A B5 00 03 */ addi r21, r21, 3 /* 8030726C 003041CC 98 01 00 2D */ stb r0, 0x2d(r1) /* 80307270 003041D0 A0 01 00 2C */ lhz r0, 0x2c(r1) /* 80307274 003041D4 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 80307278 003041D8 88 64 00 00 */ lbz r3, 0(r4) /* 8030727C 003041DC 88 04 00 01 */ lbz r0, 1(r4) /* 80307280 003041E0 98 61 00 28 */ stb r3, 0x28(r1) /* 80307284 003041E4 98 01 00 29 */ stb r0, 0x29(r1) /* 80307288 003041E8 A0 01 00 28 */ lhz r0, 0x28(r1) /* 8030728C 003041EC B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 80307290 003041F0 88 65 00 00 */ lbz r3, 0(r5) /* 80307294 003041F4 88 05 00 01 */ lbz r0, 1(r5) /* 80307298 003041F8 98 61 00 24 */ stb r3, 0x24(r1) /* 8030729C 003041FC 98 01 00 25 */ stb r0, 0x25(r1) /* 803072A0 00304200 A0 01 00 24 */ lhz r0, 0x24(r1) /* 803072A4 00304204 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 803072A8 00304208 88 77 00 00 */ lbz r3, 0(r23) /* 803072AC 0030420C 88 17 00 01 */ lbz r0, 1(r23) /* 803072B0 00304210 7E F7 D2 14 */ add r23, r23, r26 /* 803072B4 00304214 98 61 00 20 */ stb r3, 0x20(r1) /* 803072B8 00304218 98 01 00 21 */ stb r0, 0x21(r1) /* 803072BC 0030421C A0 01 00 20 */ lhz r0, 0x20(r1) /* 803072C0 00304220 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) lbl_803072C4: /* 803072C4 00304224 7C 15 E0 00 */ cmpw r21, r28 /* 803072C8 00304228 41 80 FF 6C */ blt lbl_80307234 /* 803072CC 0030422C 48 00 01 5C */ b lbl_80307428 lbl_803072D0: /* 803072D0 00304230 28 1F 00 98 */ cmplwi r31, 0x98 /* 803072D4 00304234 40 82 00 B8 */ bne lbl_8030738C /* 803072D8 00304238 3B 9C FF FD */ addi r28, r28, -3 /* 803072DC 0030423C 3A A0 00 01 */ li r21, 1 /* 803072E0 00304240 57 9C 04 3E */ clrlwi r28, r28, 0x10 /* 803072E4 00304244 3A 80 00 00 */ li r20, 0 /* 803072E8 00304248 3F E0 CC 01 */ lis r31, 0xcc01 /* 803072EC 0030424C 48 00 00 94 */ b lbl_80307380 lbl_803072F0: /* 803072F0 00304250 88 1D 00 4C */ lbz r0, 0x4c(r29) /* 803072F4 00304254 28 00 00 00 */ cmplwi r0, 0 /* 803072F8 00304258 41 82 00 08 */ beq lbl_80307300 /* 803072FC 0030425C 48 00 0C E9 */ bl FlushState__3CGXFv lbl_80307300: /* 80307300 00304260 38 60 00 B0 */ li r3, 0xb0 /* 80307304 00304264 38 80 00 00 */ li r4, 0 /* 80307308 00304268 38 A0 00 03 */ li r5, 3 /* 8030730C 0030426C 48 07 15 E9 */ bl GXBegin /* 80307310 00304270 38 15 00 01 */ addi r0, r21, 1 /* 80307314 00304274 6A A3 00 01 */ xori r3, r21, 1 /* 80307318 00304278 7C 19 01 D6 */ mullw r0, r25, r0 /* 8030731C 0030427C 6A B5 00 01 */ xori r21, r21, 1 /* 80307320 00304280 38 83 00 01 */ addi r4, r3, 1 /* 80307324 00304284 3A 94 00 01 */ addi r20, r20, 1 /* 80307328 00304288 7C A0 B8 50 */ subf r5, r0, r23 /* 8030732C 0030428C 88 65 00 00 */ lbz r3, 0(r5) /* 80307330 00304290 7C 99 21 D6 */ mullw r4, r25, r4 /* 80307334 00304294 88 05 00 01 */ lbz r0, 1(r5) /* 80307338 00304298 98 61 00 1C */ stb r3, 0x1c(r1) /* 8030733C 0030429C 98 01 00 1D */ stb r0, 0x1d(r1) /* 80307340 003042A0 7C 84 B8 50 */ subf r4, r4, r23 /* 80307344 003042A4 A0 01 00 1C */ lhz r0, 0x1c(r1) /* 80307348 003042A8 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 8030734C 003042AC 88 77 00 00 */ lbz r3, 0(r23) /* 80307350 003042B0 88 17 00 01 */ lbz r0, 1(r23) /* 80307354 003042B4 7E F7 CA 14 */ add r23, r23, r25 /* 80307358 003042B8 98 61 00 18 */ stb r3, 0x18(r1) /* 8030735C 003042BC 98 01 00 19 */ stb r0, 0x19(r1) /* 80307360 003042C0 A0 01 00 18 */ lhz r0, 0x18(r1) /* 80307364 003042C4 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 80307368 003042C8 88 64 00 00 */ lbz r3, 0(r4) /* 8030736C 003042CC 88 04 00 01 */ lbz r0, 1(r4) /* 80307370 003042D0 98 61 00 14 */ stb r3, 0x14(r1) /* 80307374 003042D4 98 01 00 15 */ stb r0, 0x15(r1) /* 80307378 003042D8 A0 01 00 14 */ lhz r0, 0x14(r1) /* 8030737C 003042DC B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) lbl_80307380: /* 80307380 003042E0 7C 14 E0 00 */ cmpw r20, r28 /* 80307384 003042E4 41 80 FF 6C */ blt lbl_803072F0 /* 80307388 003042E8 48 00 00 A0 */ b lbl_80307428 lbl_8030738C: /* 8030738C 003042EC 28 1F 00 A0 */ cmplwi r31, 0xa0 /* 80307390 003042F0 40 82 00 A0 */ bne lbl_80307430 /* 80307394 003042F4 3B 9C FF FD */ addi r28, r28, -3 /* 80307398 003042F8 7E 9A B8 50 */ subf r20, r26, r23 /* 8030739C 003042FC 57 9C 04 3E */ clrlwi r28, r28, 0x10 /* 803073A0 00304300 3A A0 00 00 */ li r21, 0 /* 803073A4 00304304 3F E0 CC 01 */ lis r31, 0xcc01 /* 803073A8 00304308 48 00 00 78 */ b lbl_80307420 lbl_803073AC: /* 803073AC 0030430C 88 1D 00 4C */ lbz r0, 0x4c(r29) /* 803073B0 00304310 7E 79 B8 50 */ subf r19, r25, r23 /* 803073B4 00304314 28 00 00 00 */ cmplwi r0, 0 /* 803073B8 00304318 41 82 00 08 */ beq lbl_803073C0 /* 803073BC 0030431C 48 00 0C 29 */ bl FlushState__3CGXFv lbl_803073C0: /* 803073C0 00304320 38 60 00 B0 */ li r3, 0xb0 /* 803073C4 00304324 38 80 00 00 */ li r4, 0 /* 803073C8 00304328 38 A0 00 03 */ li r5, 3 /* 803073CC 0030432C 48 07 15 29 */ bl GXBegin /* 803073D0 00304330 88 73 00 00 */ lbz r3, 0(r19) /* 803073D4 00304334 3A B5 00 01 */ addi r21, r21, 1 /* 803073D8 00304338 88 13 00 01 */ lbz r0, 1(r19) /* 803073DC 0030433C 98 61 00 10 */ stb r3, 0x10(r1) /* 803073E0 00304340 98 01 00 11 */ stb r0, 0x11(r1) /* 803073E4 00304344 A0 01 00 10 */ lhz r0, 0x10(r1) /* 803073E8 00304348 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 803073EC 0030434C 88 77 00 00 */ lbz r3, 0(r23) /* 803073F0 00304350 88 17 00 01 */ lbz r0, 1(r23) /* 803073F4 00304354 7E F7 CA 14 */ add r23, r23, r25 /* 803073F8 00304358 98 61 00 0C */ stb r3, 0xc(r1) /* 803073FC 0030435C 98 01 00 0D */ stb r0, 0xd(r1) /* 80307400 00304360 A0 01 00 0C */ lhz r0, 0xc(r1) /* 80307404 00304364 B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) /* 80307408 00304368 88 74 00 00 */ lbz r3, 0(r20) /* 8030740C 0030436C 88 14 00 01 */ lbz r0, 1(r20) /* 80307410 00304370 98 61 00 08 */ stb r3, 8(r1) /* 80307414 00304374 98 01 00 09 */ stb r0, 9(r1) /* 80307418 00304378 A0 01 00 08 */ lhz r0, 8(r1) /* 8030741C 0030437C B0 1F 80 00 */ sth r0, 0xCC008000@l(r31) lbl_80307420: /* 80307420 00304380 7C 15 E0 00 */ cmpw r21, r28 /* 80307424 00304384 41 80 FF 88 */ blt lbl_803073AC lbl_80307428: /* 80307428 00304388 7C 16 C0 00 */ cmpw r22, r24 /* 8030742C 0030438C 41 80 FD 28 */ blt lbl_80307154 lbl_80307430: /* 80307430 00304390 BA 61 00 4C */ lmw r19, 0x4c(r1) /* 80307434 00304394 80 01 00 84 */ lwz r0, 0x84(r1) /* 80307438 00304398 7C 08 03 A6 */ mtlr r0 /* 8030743C 0030439C 38 21 00 80 */ addi r1, r1, 0x80 /* 80307440 003043A0 4E 80 00 20 */ blr .global DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags: /* 80307444 003043A4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80307448 003043A8 7C 08 02 A6 */ mflr r0 /* 8030744C 003043AC 90 01 00 24 */ stw r0, 0x24(r1) /* 80307450 003043B0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80307454 003043B4 7C 9F 23 78 */ mr r31, r4 /* 80307458 003043B8 93 C1 00 18 */ stw r30, 0x18(r1) /* 8030745C 003043BC 7C BE 2B 78 */ mr r30, r5 /* 80307460 003043C0 93 A1 00 14 */ stw r29, 0x14(r1) /* 80307464 003043C4 7C 7D 1B 78 */ mr r29, r3 /* 80307468 003043C8 38 61 00 08 */ addi r3, r1, 8 /* 8030746C 003043CC 80 C4 00 00 */ lwz r6, 0(r4) /* 80307470 003043D0 7F A4 EB 78 */ mr r4, r29 /* 80307474 003043D4 80 A6 00 0C */ lwz r5, 0xc(r6) /* 80307478 003043D8 48 00 00 95 */ bl GetMaterialByIndex__10CCubeModelCFi /* 8030747C 003043DC 80 61 00 08 */ lwz r3, 8(r1) /* 80307480 003043E0 90 61 00 0C */ stw r3, 0xc(r1) /* 80307484 003043E4 80 03 00 00 */ lwz r0, 0(r3) /* 80307488 003043E8 54 00 05 AD */ rlwinm. r0, r0, 0, 0x16, 0x16 /* 8030748C 003043EC 41 82 00 10 */ beq lbl_8030749C /* 80307490 003043F0 88 0D A7 80 */ lbz r0, lbl_805A9340@sda21(r13) /* 80307494 003043F4 28 00 00 00 */ cmplwi r0, 0 /* 80307498 003043F8 41 82 00 58 */ beq lbl_803074F0 lbl_8030749C: /* 8030749C 003043FC 7F C4 F3 78 */ mr r4, r30 /* 803074A0 00304400 7F E5 FB 78 */ mr r5, r31 /* 803074A4 00304404 7F A6 EB 78 */ mr r6, r29 /* 803074A8 00304408 38 61 00 0C */ addi r3, r1, 0xc /* 803074AC 0030440C 48 03 E9 B1 */ bl SetCurrent__13CCubeMaterialCFRC11CModelFlagsRC12CCubeSurfaceRC10CCubeModel /* 803074B0 00304410 80 BF 00 00 */ lwz r5, 0(r31) /* 803074B4 00304414 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803074B8 00304418 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 803074BC 0030441C 80 85 00 1C */ lwz r4, 0x1c(r5) /* 803074C0 00304420 88 03 00 4C */ lbz r0, 0x4c(r3) /* 803074C4 00304424 38 64 00 4B */ addi r3, r4, 0x4b /* 803074C8 00304428 80 85 00 10 */ lwz r4, 0x10(r5) /* 803074CC 0030442C 54 63 00 34 */ rlwinm r3, r3, 0, 0, 0x1a /* 803074D0 00304430 28 00 00 00 */ cmplwi r0, 0 /* 803074D4 00304434 54 9F 00 7E */ clrlwi r31, r4, 1 /* 803074D8 00304438 7F C5 1A 14 */ add r30, r5, r3 /* 803074DC 0030443C 41 82 00 08 */ beq lbl_803074E4 /* 803074E0 00304440 48 00 0B 05 */ bl FlushState__3CGXFv lbl_803074E4: /* 803074E4 00304444 7F C3 F3 78 */ mr r3, r30 /* 803074E8 00304448 7F E4 FB 78 */ mr r4, r31 /* 803074EC 0030444C 48 07 4C E9 */ bl GXCallDisplayList lbl_803074F0: /* 803074F0 00304450 80 01 00 24 */ lwz r0, 0x24(r1) /* 803074F4 00304454 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 803074F8 00304458 83 C1 00 18 */ lwz r30, 0x18(r1) /* 803074FC 0030445C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80307500 00304460 7C 08 03 A6 */ mtlr r0 /* 80307504 00304464 38 21 00 20 */ addi r1, r1, 0x20 /* 80307508 00304468 4E 80 00 20 */ blr .global GetMaterialByIndex__10CCubeModelCFi GetMaterialByIndex__10CCubeModelCFi: /* 8030750C 0030446C 80 C4 00 1C */ lwz r6, 0x1c(r4) /* 80307510 00304470 2C 05 00 00 */ cmpwi r5, 0 /* 80307514 00304474 80 E4 00 04 */ lwz r7, 4(r4) /* 80307518 00304478 39 00 00 00 */ li r8, 0 /* 8030751C 0030447C 80 86 00 04 */ lwz r4, 4(r6) /* 80307520 00304480 38 04 00 01 */ addi r0, r4, 1 /* 80307524 00304484 54 00 10 3A */ slwi r0, r0, 2 /* 80307528 00304488 7C E7 02 14 */ add r7, r7, r0 /* 8030752C 0030448C 80 C7 00 00 */ lwz r6, 0(r7) /* 80307530 00304490 38 E7 00 04 */ addi r7, r7, 4 /* 80307534 00304494 41 82 00 10 */ beq lbl_80307544 /* 80307538 00304498 54 A0 10 3A */ slwi r0, r5, 2 /* 8030753C 0030449C 7C 87 02 14 */ add r4, r7, r0 /* 80307540 003044A0 81 04 FF FC */ lwz r8, -4(r4) lbl_80307544: /* 80307544 003044A4 54 C0 10 3A */ slwi r0, r6, 2 /* 80307548 003044A8 7C E7 02 14 */ add r7, r7, r0 /* 8030754C 003044AC 7C E7 42 14 */ add r7, r7, r8 /* 80307550 003044B0 90 E3 00 00 */ stw r7, 0(r3) /* 80307554 003044B4 4E 80 00 20 */ blr .global SetUsingPackedLightmaps__10CCubeModelCFb SetUsingPackedLightmaps__10CCubeModelCFb: /* 80307558 003044B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8030755C 003044BC 7C 08 02 A6 */ mflr r0 /* 80307560 003044C0 90 01 00 14 */ stw r0, 0x14(r1) /* 80307564 003044C4 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 80307568 003044C8 98 8D A7 82 */ stb r4, lbl_805A9342@sda21(r13) /* 8030756C 003044CC 41 82 00 38 */ beq lbl_803075A4 /* 80307570 003044D0 80 83 00 18 */ lwz r4, 0x18(r3) /* 80307574 003044D4 28 04 00 00 */ cmplwi r4, 0 /* 80307578 003044D8 41 82 00 5C */ beq lbl_803075D4 /* 8030757C 003044DC 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80307580 003044E0 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 80307584 003044E4 80 03 00 10 */ lwz r0, 0x10(r3) /* 80307588 003044E8 7C 00 20 40 */ cmplw r0, r4 /* 8030758C 003044EC 41 82 00 48 */ beq lbl_803075D4 /* 80307590 003044F0 90 83 00 10 */ stw r4, 0x10(r3) /* 80307594 003044F4 38 60 00 0D */ li r3, 0xd /* 80307598 003044F8 38 A0 00 04 */ li r5, 4 /* 8030759C 003044FC 48 07 09 5D */ bl GXSetArray /* 803075A0 00304500 48 00 00 34 */ b lbl_803075D4 lbl_803075A4: /* 803075A4 00304504 80 83 00 14 */ lwz r4, 0x14(r3) /* 803075A8 00304508 28 04 00 00 */ cmplwi r4, 0 /* 803075AC 0030450C 41 82 00 28 */ beq lbl_803075D4 /* 803075B0 00304510 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803075B4 00304514 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 803075B8 00304518 80 03 00 10 */ lwz r0, 0x10(r3) /* 803075BC 0030451C 7C 00 20 40 */ cmplw r0, r4 /* 803075C0 00304520 41 82 00 14 */ beq lbl_803075D4 /* 803075C4 00304524 90 83 00 10 */ stw r4, 0x10(r3) /* 803075C8 00304528 38 60 00 0D */ li r3, 0xd /* 803075CC 0030452C 38 A0 00 08 */ li r5, 8 /* 803075D0 00304530 48 07 09 29 */ bl GXSetArray lbl_803075D4: /* 803075D4 00304534 80 01 00 14 */ lwz r0, 0x14(r1) /* 803075D8 00304538 7C 08 03 A6 */ mtlr r0 /* 803075DC 0030453C 38 21 00 10 */ addi r1, r1, 0x10 /* 803075E0 00304540 4E 80 00 20 */ blr .global SetSkinningArraysCurrent__10CCubeModelCFPCfPCf SetSkinningArraysCurrent__10CCubeModelCFPCfPCf: /* 803075E4 00304544 94 21 FF F0 */ stwu r1, -0x10(r1) /* 803075E8 00304548 7C 08 02 A6 */ mflr r0 /* 803075EC 0030454C 90 01 00 14 */ stw r0, 0x14(r1) /* 803075F0 00304550 93 E1 00 0C */ stw r31, 0xc(r1) /* 803075F4 00304554 7C 7F 1B 78 */ mr r31, r3 /* 803075F8 00304558 38 6D A7 B8 */ addi r3, r13, sRenderState__9CGraphics@sda21 /* 803075FC 0030455C 80 DF 00 10 */ lwz r6, 0x10(r31) /* 80307600 00304560 48 00 1D 69 */ bl SetVtxState__Q29CGraphics12CRenderStateFPCfPCfPCUi /* 80307604 00304564 7F E3 FB 78 */ mr r3, r31 /* 80307608 00304568 48 00 00 B9 */ bl SetStaticArraysCurrent__10CCubeModelCFv /* 8030760C 0030456C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80307610 00304570 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80307614 00304574 7C 08 03 A6 */ mtlr r0 /* 80307618 00304578 38 21 00 10 */ addi r1, r1, 0x10 /* 8030761C 0030457C 4E 80 00 20 */ blr .global SetArraysCurrent__10CCubeModelCFv SetArraysCurrent__10CCubeModelCFv: /* 80307620 00304580 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80307624 00304584 7C 08 02 A6 */ mflr r0 /* 80307628 00304588 90 01 00 14 */ stw r0, 0x14(r1) /* 8030762C 0030458C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80307630 00304590 7C 7F 1B 78 */ mr r31, r3 /* 80307634 00304594 80 83 00 08 */ lwz r4, 8(r3) /* 80307638 00304598 28 04 00 00 */ cmplwi r4, 0 /* 8030763C 0030459C 41 82 00 24 */ beq lbl_80307660 /* 80307640 003045A0 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80307644 003045A4 84 03 53 EC */ lwzu r0, lbl_805A53EC@l(r3) /* 80307648 003045A8 7C 00 20 40 */ cmplw r0, r4 /* 8030764C 003045AC 41 82 00 14 */ beq lbl_80307660 /* 80307650 003045B0 90 83 00 00 */ stw r4, 0(r3) /* 80307654 003045B4 38 60 00 09 */ li r3, 9 /* 80307658 003045B8 38 A0 00 0C */ li r5, 0xc /* 8030765C 003045BC 48 07 08 9D */ bl GXSetArray lbl_80307660: /* 80307660 003045C0 88 1F 00 41 */ lbz r0, 0x41(r31) /* 80307664 003045C4 38 A0 00 0C */ li r5, 0xc /* 80307668 003045C8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 8030766C 003045CC 41 82 00 08 */ beq lbl_80307674 /* 80307670 003045D0 38 A0 00 06 */ li r5, 6 lbl_80307674: /* 80307674 003045D4 80 9F 00 0C */ lwz r4, 0xc(r31) /* 80307678 003045D8 28 04 00 00 */ cmplwi r4, 0 /* 8030767C 003045DC 41 82 00 28 */ beq lbl_803076A4 /* 80307680 003045E0 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 80307684 003045E4 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 80307688 003045E8 80 03 00 04 */ lwz r0, 4(r3) /* 8030768C 003045EC 7C 00 20 40 */ cmplw r0, r4 /* 80307690 003045F0 41 82 00 14 */ beq lbl_803076A4 /* 80307694 003045F4 90 83 00 04 */ stw r4, 4(r3) /* 80307698 003045F8 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 8030769C 003045FC 38 60 00 0A */ li r3, 0xa /* 803076A0 00304600 48 07 08 59 */ bl GXSetArray lbl_803076A4: /* 803076A4 00304604 7F E3 FB 78 */ mr r3, r31 /* 803076A8 00304608 48 00 00 19 */ bl SetStaticArraysCurrent__10CCubeModelCFv /* 803076AC 0030460C 80 01 00 14 */ lwz r0, 0x14(r1) /* 803076B0 00304610 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803076B4 00304614 7C 08 03 A6 */ mtlr r0 /* 803076B8 00304618 38 21 00 10 */ addi r1, r1, 0x10 /* 803076BC 0030461C 4E 80 00 20 */ blr .global SetStaticArraysCurrent__10CCubeModelCFv SetStaticArraysCurrent__10CCubeModelCFv: /* 803076C0 00304620 94 21 FF E0 */ stwu r1, -0x20(r1) /* 803076C4 00304624 7C 08 02 A6 */ mflr r0 /* 803076C8 00304628 90 01 00 24 */ stw r0, 0x24(r1) /* 803076CC 0030462C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 803076D0 00304630 93 C1 00 18 */ stw r30, 0x18(r1) /* 803076D4 00304634 93 A1 00 14 */ stw r29, 0x14(r1) /* 803076D8 00304638 7C 7D 1B 78 */ mr r29, r3 /* 803076DC 0030463C 80 83 00 10 */ lwz r4, 0x10(r3) /* 803076E0 00304640 28 04 00 00 */ cmplwi r4, 0 /* 803076E4 00304644 41 82 00 28 */ beq lbl_8030770C /* 803076E8 00304648 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 803076EC 0030464C 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 803076F0 00304650 80 03 00 08 */ lwz r0, 8(r3) /* 803076F4 00304654 7C 00 20 40 */ cmplw r0, r4 /* 803076F8 00304658 41 82 00 14 */ beq lbl_8030770C /* 803076FC 0030465C 90 83 00 08 */ stw r4, 8(r3) /* 80307700 00304660 38 60 00 0B */ li r3, 0xb /* 80307704 00304664 38 A0 00 04 */ li r5, 4 /* 80307708 00304668 48 07 07 F1 */ bl GXSetArray lbl_8030770C: /* 8030770C 0030466C 80 9D 00 18 */ lwz r4, 0x18(r29) /* 80307710 00304670 83 DD 00 14 */ lwz r30, 0x14(r29) /* 80307714 00304674 28 04 00 00 */ cmplwi r4, 0 /* 80307718 00304678 40 82 00 0C */ bne lbl_80307724 /* 8030771C 0030467C 38 00 00 00 */ li r0, 0 /* 80307720 00304680 98 0D A7 82 */ stb r0, lbl_805A9342@sda21(r13) lbl_80307724: /* 80307724 00304684 88 0D A7 82 */ lbz r0, lbl_805A9342@sda21(r13) /* 80307728 00304688 28 00 00 00 */ cmplwi r0, 0 /* 8030772C 0030468C 41 82 00 34 */ beq lbl_80307760 /* 80307730 00304690 28 04 00 00 */ cmplwi r4, 0 /* 80307734 00304694 41 82 00 5C */ beq lbl_80307790 /* 80307738 00304698 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 8030773C 0030469C 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 80307740 003046A0 80 03 00 10 */ lwz r0, 0x10(r3) /* 80307744 003046A4 7C 00 20 40 */ cmplw r0, r4 /* 80307748 003046A8 41 82 00 48 */ beq lbl_80307790 /* 8030774C 003046AC 90 83 00 10 */ stw r4, 0x10(r3) /* 80307750 003046B0 38 60 00 0D */ li r3, 0xd /* 80307754 003046B4 38 A0 00 04 */ li r5, 4 /* 80307758 003046B8 48 07 07 A1 */ bl GXSetArray /* 8030775C 003046BC 48 00 00 34 */ b lbl_80307790 lbl_80307760: /* 80307760 003046C0 28 1E 00 00 */ cmplwi r30, 0 /* 80307764 003046C4 41 82 00 2C */ beq lbl_80307790 /* 80307768 003046C8 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 8030776C 003046CC 38 63 53 EC */ addi r3, r3, lbl_805A53EC@l /* 80307770 003046D0 80 03 00 10 */ lwz r0, 0x10(r3) /* 80307774 003046D4 7C 00 F0 40 */ cmplw r0, r30 /* 80307778 003046D8 41 82 00 18 */ beq lbl_80307790 /* 8030777C 003046DC 93 C3 00 10 */ stw r30, 0x10(r3) /* 80307780 003046E0 7F C4 F3 78 */ mr r4, r30 /* 80307784 003046E4 38 60 00 0D */ li r3, 0xd /* 80307788 003046E8 38 A0 00 08 */ li r5, 8 /* 8030778C 003046EC 48 07 07 6D */ bl GXSetArray lbl_80307790: /* 80307790 003046F0 28 1E 00 00 */ cmplwi r30, 0 /* 80307794 003046F4 41 82 00 4C */ beq lbl_803077E0 /* 80307798 003046F8 3C 60 80 5A */ lis r3, lbl_805A53EC@ha /* 8030779C 003046FC 3B A0 00 01 */ li r29, 1 /* 803077A0 00304700 3B E3 53 EC */ addi r31, r3, lbl_805A53EC@l lbl_803077A4: /* 803077A4 00304704 28 1E 00 00 */ cmplwi r30, 0 /* 803077A8 00304708 38 7D 00 0D */ addi r3, r29, 0xd /* 803077AC 0030470C 38 03 FF F7 */ addi r0, r3, -9 /* 803077B0 00304710 41 82 00 24 */ beq lbl_803077D4 /* 803077B4 00304714 54 04 10 3A */ slwi r4, r0, 2 /* 803077B8 00304718 7C 1F 20 2E */ lwzx r0, r31, r4 /* 803077BC 0030471C 7C 00 F0 40 */ cmplw r0, r30 /* 803077C0 00304720 41 82 00 14 */ beq lbl_803077D4 /* 803077C4 00304724 7F DF 21 2E */ stwx r30, r31, r4 /* 803077C8 00304728 7F C4 F3 78 */ mr r4, r30 /* 803077CC 0030472C 38 A0 00 08 */ li r5, 8 /* 803077D0 00304730 48 07 07 29 */ bl GXSetArray lbl_803077D4: /* 803077D4 00304734 3B BD 00 01 */ addi r29, r29, 1 /* 803077D8 00304738 2C 1D 00 07 */ cmpwi r29, 7 /* 803077DC 0030473C 40 81 FF C8 */ ble lbl_803077A4 lbl_803077E0: /* 803077E0 00304740 48 03 E1 61 */ bl KillCachedViewDepState__13CCubeMaterialFv /* 803077E4 00304744 80 01 00 24 */ lwz r0, 0x24(r1) /* 803077E8 00304748 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 803077EC 0030474C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 803077F0 00304750 83 A1 00 14 */ lwz r29, 0x14(r1) /* 803077F4 00304754 7C 08 03 A6 */ mtlr r0 /* 803077F8 00304758 38 21 00 20 */ addi r1, r1, 0x20 /* 803077FC 0030475C 4E 80 00 20 */ blr .global "MakeTexturesFromMats__10CCubeModelFPCvRQ24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>R12IObjectStoreb" "MakeTexturesFromMats__10CCubeModelFPCvRQ24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>R12IObjectStoreb": /* 80307800 00304760 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80307804 00304764 7C 08 02 A6 */ mflr r0 /* 80307808 00304768 7C 67 1B 78 */ mr r7, r3 /* 8030780C 0030476C 90 01 00 54 */ stw r0, 0x54(r1) /* 80307810 00304770 BF 01 00 30 */ stmw r24, 0x30(r1) /* 80307814 00304774 7C 9A 23 78 */ mr r26, r4 /* 80307818 00304778 7C BB 2B 78 */ mr r27, r5 /* 8030781C 0030477C 7C D8 33 78 */ mr r24, r6 /* 80307820 00304780 3B C7 00 04 */ addi r30, r7, 4 /* 80307824 00304784 83 A3 00 00 */ lwz r29, 0(r3) /* 80307828 00304788 7F 43 D3 78 */ mr r3, r26 /* 8030782C 0030478C 7F A4 EB 78 */ mr r4, r29 /* 80307830 00304790 48 00 02 89 */ bl "reserve__Q24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>Fi" /* 80307834 00304794 3C 60 54 58 */ lis r3, 0x54585452@ha /* 80307838 00304798 57 19 06 3E */ clrlwi r25, r24, 0x18 /* 8030783C 0030479C 3B E3 54 52 */ addi r31, r3, 0x54585452@l /* 80307840 003047A0 3B 80 00 00 */ li r28, 0 /* 80307844 003047A4 48 00 00 F4 */ b lbl_80307938 lbl_80307848: /* 80307848 003047A8 80 1E 00 00 */ lwz r0, 0(r30) /* 8030784C 003047AC 7F 64 DB 78 */ mr r4, r27 /* 80307850 003047B0 93 E1 00 10 */ stw r31, 0x10(r1) /* 80307854 003047B4 38 61 00 08 */ addi r3, r1, 8 /* 80307858 003047B8 38 A1 00 10 */ addi r5, r1, 0x10 /* 8030785C 003047BC 90 01 00 14 */ stw r0, 0x14(r1) /* 80307860 003047C0 81 9B 00 00 */ lwz r12, 0(r27) /* 80307864 003047C4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 80307868 003047C8 7D 89 03 A6 */ mtctr r12 /* 8030786C 003047CC 4E 80 04 21 */ bctrl /* 80307870 003047D0 38 61 00 18 */ addi r3, r1, 0x18 /* 80307874 003047D4 38 81 00 08 */ addi r4, r1, 8 /* 80307878 003047D8 48 03 96 31 */ bl __ct__6CTokenFRC6CToken /* 8030787C 003047DC 38 00 00 00 */ li r0, 0 /* 80307880 003047E0 90 01 00 20 */ stw r0, 0x20(r1) /* 80307884 003047E4 80 1A 00 04 */ lwz r0, 4(r26) /* 80307888 003047E8 80 BA 00 08 */ lwz r5, 8(r26) /* 8030788C 003047EC 7C 00 28 00 */ cmpw r0, r5 /* 80307890 003047F0 41 80 00 1C */ blt lbl_803078AC /* 80307894 003047F4 2C 05 00 00 */ cmpwi r5, 0 /* 80307898 003047F8 7F 43 D3 78 */ mr r3, r26 /* 8030789C 003047FC 38 80 00 04 */ li r4, 4 /* 803078A0 00304800 41 82 00 08 */ beq lbl_803078A8 /* 803078A4 00304804 54 A4 08 3C */ slwi r4, r5, 1 lbl_803078A8: /* 803078A8 00304808 48 00 02 11 */ bl "reserve__Q24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>Fi" lbl_803078AC: /* 803078AC 0030480C 80 1A 00 04 */ lwz r0, 4(r26) /* 803078B0 00304810 80 7A 00 0C */ lwz r3, 0xc(r26) /* 803078B4 00304814 1C 00 00 0C */ mulli r0, r0, 0xc /* 803078B8 00304818 7F 03 02 15 */ add. r24, r3, r0 /* 803078BC 0030481C 41 82 00 18 */ beq lbl_803078D4 /* 803078C0 00304820 7F 03 C3 78 */ mr r3, r24 /* 803078C4 00304824 38 81 00 18 */ addi r4, r1, 0x18 /* 803078C8 00304828 48 03 95 E1 */ bl __ct__6CTokenFRC6CToken /* 803078CC 0030482C 80 01 00 20 */ lwz r0, 0x20(r1) /* 803078D0 00304830 90 18 00 08 */ stw r0, 8(r24) lbl_803078D4: /* 803078D4 00304834 80 BA 00 04 */ lwz r5, 4(r26) /* 803078D8 00304838 38 61 00 18 */ addi r3, r1, 0x18 /* 803078DC 0030483C 38 80 00 00 */ li r4, 0 /* 803078E0 00304840 38 05 00 01 */ addi r0, r5, 1 /* 803078E4 00304844 90 1A 00 04 */ stw r0, 4(r26) /* 803078E8 00304848 48 03 95 59 */ bl __dt__6CTokenFv /* 803078EC 0030484C 38 61 00 08 */ addi r3, r1, 8 /* 803078F0 00304850 38 80 FF FF */ li r4, -1 /* 803078F4 00304854 48 03 95 4D */ bl __dt__6CTokenFv /* 803078F8 00304858 28 19 00 00 */ cmplwi r25, 0 /* 803078FC 0030485C 40 82 00 34 */ bne lbl_80307930 /* 80307900 00304860 80 7A 00 04 */ lwz r3, 4(r26) /* 80307904 00304864 80 9A 00 0C */ lwz r4, 0xc(r26) /* 80307908 00304868 38 03 FF FF */ addi r0, r3, -1 /* 8030790C 0030486C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80307910 00304870 7F 04 02 14 */ add r24, r4, r0 /* 80307914 00304874 80 18 00 08 */ lwz r0, 8(r24) /* 80307918 00304878 28 00 00 00 */ cmplwi r0, 0 /* 8030791C 0030487C 40 82 00 14 */ bne lbl_80307930 /* 80307920 00304880 7F 03 C3 78 */ mr r3, r24 /* 80307924 00304884 48 03 94 E9 */ bl GetObj__6CTokenFv /* 80307928 00304888 80 03 00 04 */ lwz r0, 4(r3) /* 8030792C 0030488C 90 18 00 08 */ stw r0, 8(r24) lbl_80307930: /* 80307930 00304890 3B DE 00 04 */ addi r30, r30, 4 /* 80307934 00304894 3B 9C 00 01 */ addi r28, r28, 1 lbl_80307938: /* 80307938 00304898 7C 1C E8 40 */ cmplw r28, r29 /* 8030793C 0030489C 41 80 FF 0C */ blt lbl_80307848 /* 80307940 003048A0 BB 01 00 30 */ lmw r24, 0x30(r1) /* 80307944 003048A4 80 01 00 54 */ lwz r0, 0x54(r1) /* 80307948 003048A8 7C 08 03 A6 */ mtlr r0 /* 8030794C 003048AC 38 21 00 50 */ addi r1, r1, 0x50 /* 80307950 003048B0 4E 80 00 20 */ blr .global "__ct__10CCubeModelFPQ24rstl37vectorPQ24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>PCvPCvPCvPCvPCvPCvRC6CAABoxUcb" "__ct__10CCubeModelFPQ24rstl37vectorPQ24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>PCvPCvPCvPCvPCvPCvRC6CAABoxUcb": /* 80307954 003048B4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80307958 003048B8 7C 08 02 A6 */ mflr r0 /* 8030795C 003048BC 90 01 00 34 */ stw r0, 0x34(r1) /* 80307960 003048C0 88 01 00 47 */ lbz r0, 0x47(r1) /* 80307964 003048C4 BF 61 00 1C */ stmw r27, 0x1c(r1) /* 80307968 003048C8 7C 7E 1B 78 */ mr r30, r3 /* 8030796C 003048CC 81 81 00 38 */ lwz r12, 0x38(r1) /* 80307970 003048D0 7C 00 00 34 */ cntlzw r0, r0 /* 80307974 003048D4 81 61 00 3C */ lwz r11, 0x3c(r1) /* 80307978 003048D8 90 83 00 00 */ stw r4, 0(r3) /* 8030797C 003048DC 38 80 00 00 */ li r4, 0 /* 80307980 003048E0 90 C3 00 04 */ stw r6, 4(r3) /* 80307984 003048E4 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f /* 80307988 003048E8 80 C1 00 48 */ lwz r6, 0x48(r1) /* 8030798C 003048EC 90 FE 00 08 */ stw r7, 8(r30) /* 80307990 003048F0 88 E1 00 43 */ lbz r7, 0x43(r1) /* 80307994 003048F4 91 1E 00 0C */ stw r8, 0xc(r30) /* 80307998 003048F8 91 3E 00 10 */ stw r9, 0x10(r30) /* 8030799C 003048FC 91 5E 00 14 */ stw r10, 0x14(r30) /* 803079A0 00304900 91 9E 00 18 */ stw r12, 0x18(r30) /* 803079A4 00304904 90 BE 00 1C */ stw r5, 0x1c(r30) /* 803079A8 00304908 C0 0B 00 00 */ lfs f0, 0(r11) /* 803079AC 0030490C D0 1E 00 20 */ stfs f0, 0x20(r30) /* 803079B0 00304910 C0 0B 00 04 */ lfs f0, 4(r11) /* 803079B4 00304914 D0 1E 00 24 */ stfs f0, 0x24(r30) /* 803079B8 00304918 C0 0B 00 08 */ lfs f0, 8(r11) /* 803079BC 0030491C D0 1E 00 28 */ stfs f0, 0x28(r30) /* 803079C0 00304920 C0 0B 00 0C */ lfs f0, 0xc(r11) /* 803079C4 00304924 D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 803079C8 00304928 C0 0B 00 10 */ lfs f0, 0x10(r11) /* 803079CC 0030492C D0 1E 00 30 */ stfs f0, 0x30(r30) /* 803079D0 00304930 C0 0B 00 14 */ lfs f0, 0x14(r11) /* 803079D4 00304934 D0 1E 00 34 */ stfs f0, 0x34(r30) /* 803079D8 00304938 90 9E 00 38 */ stw r4, 0x38(r30) /* 803079DC 0030493C 90 9E 00 3C */ stw r4, 0x3c(r30) /* 803079E0 00304940 88 1E 00 40 */ lbz r0, 0x40(r30) /* 803079E4 00304944 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 803079E8 00304948 98 1E 00 40 */ stb r0, 0x40(r30) /* 803079EC 0030494C 88 1E 00 40 */ lbz r0, 0x40(r30) /* 803079F0 00304950 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 /* 803079F4 00304954 98 1E 00 40 */ stb r0, 0x40(r30) /* 803079F8 00304958 98 FE 00 41 */ stb r7, 0x41(r30) /* 803079FC 0030495C 90 DE 00 44 */ stw r6, 0x44(r30) /* 80307A00 00304960 83 FE 00 00 */ lwz r31, 0(r30) /* 80307A04 00304964 80 9F 00 0C */ lwz r4, 0xc(r31) /* 80307A08 00304968 48 00 00 10 */ b lbl_80307A18 lbl_80307A0C: /* 80307A0C 0030496C 80 64 00 00 */ lwz r3, 0(r4) /* 80307A10 00304970 38 84 00 04 */ addi r4, r4, 4 /* 80307A14 00304974 93 C3 00 14 */ stw r30, 0x14(r3) lbl_80307A18: /* 80307A18 00304978 80 BF 00 04 */ lwz r5, 4(r31) /* 80307A1C 0030497C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80307A20 00304980 54 A0 10 3A */ slwi r0, r5, 2 /* 80307A24 00304984 7C 03 02 14 */ add r0, r3, r0 /* 80307A28 00304988 7C 04 00 40 */ cmplw r4, r0 /* 80307A2C 0030498C 40 82 FF E0 */ bne lbl_80307A0C /* 80307A30 00304990 7C BB 2B 78 */ mr r27, r5 /* 80307A34 00304994 48 00 00 64 */ b lbl_80307A98 lbl_80307A38: /* 80307A38 00304998 38 1B FF FF */ addi r0, r27, -1 /* 80307A3C 0030499C 83 9F 00 0C */ lwz r28, 0xc(r31) /* 80307A40 003049A0 54 1D 10 3A */ slwi r29, r0, 2 /* 80307A44 003049A4 7F C4 F3 78 */ mr r4, r30 /* 80307A48 003049A8 7C BC E8 2E */ lwzx r5, r28, r29 /* 80307A4C 003049AC 38 61 00 08 */ addi r3, r1, 8 /* 80307A50 003049B0 80 A5 00 0C */ lwz r5, 0xc(r5) /* 80307A54 003049B4 4B FF FA B9 */ bl GetMaterialByIndex__10CCubeModelCFi /* 80307A58 003049B8 80 61 00 08 */ lwz r3, 8(r1) /* 80307A5C 003049BC 80 03 00 00 */ lwz r0, 0(r3) /* 80307A60 003049C0 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 80307A64 003049C4 41 82 00 1C */ beq lbl_80307A80 /* 80307A68 003049C8 80 1E 00 3C */ lwz r0, 0x3c(r30) /* 80307A6C 003049CC 7C 7C E8 2E */ lwzx r3, r28, r29 /* 80307A70 003049D0 90 03 00 18 */ stw r0, 0x18(r3) /* 80307A74 003049D4 7C 1C E8 2E */ lwzx r0, r28, r29 /* 80307A78 003049D8 90 1E 00 3C */ stw r0, 0x3c(r30) /* 80307A7C 003049DC 48 00 00 18 */ b lbl_80307A94 lbl_80307A80: /* 80307A80 003049E0 80 1E 00 38 */ lwz r0, 0x38(r30) /* 80307A84 003049E4 7C 7C E8 2E */ lwzx r3, r28, r29 /* 80307A88 003049E8 90 03 00 18 */ stw r0, 0x18(r3) /* 80307A8C 003049EC 7C 1C E8 2E */ lwzx r0, r28, r29 /* 80307A90 003049F0 90 1E 00 38 */ stw r0, 0x38(r30) lbl_80307A94: /* 80307A94 003049F4 3B 7B FF FF */ addi r27, r27, -1 lbl_80307A98: /* 80307A98 003049F8 2C 1B 00 00 */ cmpwi r27, 0 /* 80307A9C 003049FC 41 81 FF 9C */ bgt lbl_80307A38 /* 80307AA0 00304A00 7F C3 F3 78 */ mr r3, r30 /* 80307AA4 00304A04 BB 61 00 1C */ lmw r27, 0x1c(r1) /* 80307AA8 00304A08 80 01 00 34 */ lwz r0, 0x34(r1) /* 80307AAC 00304A0C 7C 08 03 A6 */ mtlr r0 /* 80307AB0 00304A10 38 21 00 30 */ addi r1, r1, 0x30 /* 80307AB4 00304A14 4E 80 00 20 */ blr .global "reserve__Q24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>Fi" "reserve__Q24rstl60vector<23TCachedToken<8CTexture>,Q24rstl17rmemory_allocator>Fi": /* 80307AB8 00304A18 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80307ABC 00304A1C 7C 08 02 A6 */ mflr r0 /* 80307AC0 00304A20 90 01 00 34 */ stw r0, 0x34(r1) /* 80307AC4 00304A24 BF 41 00 18 */ stmw r26, 0x18(r1) /* 80307AC8 00304A28 7C 9F 23 78 */ mr r31, r4 /* 80307ACC 00304A2C 7C 7E 1B 78 */ mr r30, r3 /* 80307AD0 00304A30 80 03 00 08 */ lwz r0, 8(r3) /* 80307AD4 00304A34 7C 1F 00 00 */ cmpw r31, r0 /* 80307AD8 00304A38 40 81 00 D0 */ ble lbl_80307BA8 /* 80307ADC 00304A3C 1C 7F 00 0C */ mulli r3, r31, 0xc /* 80307AE0 00304A40 2C 03 00 00 */ cmpwi r3, 0 /* 80307AE4 00304A44 40 82 00 0C */ bne lbl_80307AF0 /* 80307AE8 00304A48 3B 80 00 00 */ li r28, 0 /* 80307AEC 00304A4C 48 00 00 18 */ b lbl_80307B04 lbl_80307AF0: /* 80307AF0 00304A50 3C 80 80 3D */ lis r4, lbl_803D7398@ha /* 80307AF4 00304A54 38 A0 00 00 */ li r5, 0 /* 80307AF8 00304A58 38 84 73 98 */ addi r4, r4, lbl_803D7398@l /* 80307AFC 00304A5C 48 00 DD 1D */ bl __nwa__FUlPCcPCc /* 80307B00 00304A60 7C 7C 1B 78 */ mr r28, r3 lbl_80307B04: /* 80307B04 00304A64 80 1E 00 04 */ lwz r0, 4(r30) /* 80307B08 00304A68 7F 9B E3 78 */ mr r27, r28 /* 80307B0C 00304A6C 83 5E 00 0C */ lwz r26, 0xc(r30) /* 80307B10 00304A70 1C 00 00 0C */ mulli r0, r0, 0xc /* 80307B14 00304A74 93 41 00 10 */ stw r26, 0x10(r1) /* 80307B18 00304A78 7F BA 02 14 */ add r29, r26, r0 /* 80307B1C 00304A7C 93 41 00 14 */ stw r26, 0x14(r1) /* 80307B20 00304A80 93 A1 00 08 */ stw r29, 8(r1) /* 80307B24 00304A84 93 A1 00 0C */ stw r29, 0xc(r1) /* 80307B28 00304A88 48 00 00 28 */ b lbl_80307B50 lbl_80307B2C: /* 80307B2C 00304A8C 28 1B 00 00 */ cmplwi r27, 0 /* 80307B30 00304A90 41 82 00 18 */ beq lbl_80307B48 /* 80307B34 00304A94 7F 63 DB 78 */ mr r3, r27 /* 80307B38 00304A98 7F 44 D3 78 */ mr r4, r26 /* 80307B3C 00304A9C 48 03 93 6D */ bl __ct__6CTokenFRC6CToken /* 80307B40 00304AA0 80 1A 00 08 */ lwz r0, 8(r26) /* 80307B44 00304AA4 90 1B 00 08 */ stw r0, 8(r27) lbl_80307B48: /* 80307B48 00304AA8 3B 7B 00 0C */ addi r27, r27, 0xc /* 80307B4C 00304AAC 3B 5A 00 0C */ addi r26, r26, 0xc lbl_80307B50: /* 80307B50 00304AB0 7C 1A E8 40 */ cmplw r26, r29 /* 80307B54 00304AB4 40 82 FF D8 */ bne lbl_80307B2C /* 80307B58 00304AB8 80 1E 00 04 */ lwz r0, 4(r30) /* 80307B5C 00304ABC 83 5E 00 0C */ lwz r26, 0xc(r30) /* 80307B60 00304AC0 1C 00 00 0C */ mulli r0, r0, 0xc /* 80307B64 00304AC4 7F 7A 02 14 */ add r27, r26, r0 /* 80307B68 00304AC8 48 00 00 20 */ b lbl_80307B88 lbl_80307B6C: /* 80307B6C 00304ACC 28 1A 00 00 */ cmplwi r26, 0 /* 80307B70 00304AD0 41 82 00 14 */ beq lbl_80307B84 /* 80307B74 00304AD4 41 82 00 10 */ beq lbl_80307B84 /* 80307B78 00304AD8 7F 43 D3 78 */ mr r3, r26 /* 80307B7C 00304ADC 38 80 00 00 */ li r4, 0 /* 80307B80 00304AE0 48 03 92 C1 */ bl __dt__6CTokenFv lbl_80307B84: /* 80307B84 00304AE4 3B 5A 00 0C */ addi r26, r26, 0xc lbl_80307B88: /* 80307B88 00304AE8 7C 1A D8 40 */ cmplw r26, r27 /* 80307B8C 00304AEC 40 82 FF E0 */ bne lbl_80307B6C /* 80307B90 00304AF0 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80307B94 00304AF4 28 03 00 00 */ cmplwi r3, 0 /* 80307B98 00304AF8 41 82 00 08 */ beq lbl_80307BA0 /* 80307B9C 00304AFC 48 00 DD 95 */ bl Free__7CMemoryFPCv lbl_80307BA0: /* 80307BA0 00304B00 93 9E 00 0C */ stw r28, 0xc(r30) /* 80307BA4 00304B04 93 FE 00 08 */ stw r31, 8(r30) lbl_80307BA8: /* 80307BA8 00304B08 BB 41 00 18 */ lmw r26, 0x18(r1) /* 80307BAC 00304B0C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80307BB0 00304B10 7C 08 03 A6 */ mtlr r0 /* 80307BB4 00304B14 38 21 00 30 */ addi r1, r1, 0x30 /* 80307BB8 00304B18 4E 80 00 20 */ blr .section .rodata .balign 8 .global lbl_803D7388 lbl_803D7388: # ROM: 0x3D4388 .4byte 0x00000009 .4byte 0x00000003 .4byte 0x000000FF .4byte 0 .global lbl_803D7398 lbl_803D7398: # ROM: 0x3D4398 .asciz "??(??)" .balign 4