.include "macros.inc" .section .text, "ax" # 802f2ad0 .global J2DMaterialFactory J2DMaterialFactory: /* 802F2AD0 002EFA10 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802F2AD4 002EFA14 7C 08 02 A6 */ mflr r0 /* 802F2AD8 002EFA18 90 01 00 14 */ stw r0, 0x14(r1) /* 802F2ADC 002EFA1C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802F2AE0 002EFA20 93 C1 00 08 */ stw r30, 8(r1) /* 802F2AE4 002EFA24 7C 7E 1B 78 */ mr r30, r3 /* 802F2AE8 002EFA28 7C 9F 23 78 */ mr r31, r4 /* 802F2AEC 002EFA2C A0 04 00 08 */ lhz r0, 8(r4) /* 802F2AF0 002EFA30 B0 03 00 00 */ sth r0, 0(r3) /* 802F2AF4 002EFA34 7F E3 FB 78 */ mr r3, r31 /* 802F2AF8 002EFA38 80 84 00 0C */ lwz r4, 0xc(r4) /* 802F2AFC 002EFA3C 48 00 17 DD */ bl JSUConvertOffsetToPtr_X29_ /* 802F2B00 002EFA40 90 7E 00 04 */ stw r3, 4(r30) /* 802F2B04 002EFA44 7F E3 FB 78 */ mr r3, r31 /* 802F2B08 002EFA48 80 9F 00 10 */ lwz r4, 0x10(r31) /* 802F2B0C 002EFA4C 48 00 17 B5 */ bl JSUConvertOffsetToPtr_X28_ /* 802F2B10 002EFA50 90 7E 00 08 */ stw r3, 8(r30) /* 802F2B14 002EFA54 80 9F 00 18 */ lwz r4, 0x18(r31) /* 802F2B18 002EFA58 28 04 00 00 */ cmplwi r4, 0 /* 802F2B1C 002EFA5C 41 82 00 24 */ beq lbl_802F2B40 /* 802F2B20 002EFA60 80 1F 00 14 */ lwz r0, 0x14(r31) /* 802F2B24 002EFA64 7C 00 20 50 */ subf r0, r0, r4 /* 802F2B28 002EFA68 28 00 00 04 */ cmplwi r0, 4 /* 802F2B2C 002EFA6C 40 81 00 14 */ ble lbl_802F2B40 /* 802F2B30 002EFA70 7F E3 FB 78 */ mr r3, r31 /* 802F2B34 002EFA74 48 00 17 75 */ bl JSUConvertOffsetToPtr_X27_ /* 802F2B38 002EFA78 90 7E 00 0C */ stw r3, 0xc(r30) /* 802F2B3C 002EFA7C 48 00 00 0C */ b lbl_802F2B48 lbl_802F2B40: /* 802F2B40 002EFA80 38 00 00 00 */ li r0, 0 /* 802F2B44 002EFA84 90 1E 00 0C */ stw r0, 0xc(r30) lbl_802F2B48: /* 802F2B48 002EFA88 7F E3 FB 78 */ mr r3, r31 /* 802F2B4C 002EFA8C 80 9F 00 1C */ lwz r4, 0x1c(r31) /* 802F2B50 002EFA90 48 00 17 41 */ bl JSUConvertOffsetToPtr_X26_ /* 802F2B54 002EFA94 90 7E 00 30 */ stw r3, 0x30(r30) /* 802F2B58 002EFA98 7F E3 FB 78 */ mr r3, r31 /* 802F2B5C 002EFA9C 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802F2B60 002EFAA0 48 00 17 19 */ bl JSUConvertOffsetToPtr_X25_ /* 802F2B64 002EFAA4 90 7E 00 10 */ stw r3, 0x10(r30) /* 802F2B68 002EFAA8 7F E3 FB 78 */ mr r3, r31 /* 802F2B6C 002EFAAC 80 9F 00 24 */ lwz r4, 0x24(r31) /* 802F2B70 002EFAB0 48 00 16 F1 */ bl JSUConvertOffsetToPtr_X24_ /* 802F2B74 002EFAB4 90 7E 00 14 */ stw r3, 0x14(r30) /* 802F2B78 002EFAB8 7F E3 FB 78 */ mr r3, r31 /* 802F2B7C 002EFABC 80 9F 00 28 */ lwz r4, 0x28(r31) /* 802F2B80 002EFAC0 48 00 16 C9 */ bl JSUConvertOffsetToPtr_X23_ /* 802F2B84 002EFAC4 90 7E 00 18 */ stw r3, 0x18(r30) /* 802F2B88 002EFAC8 7F E3 FB 78 */ mr r3, r31 /* 802F2B8C 002EFACC 80 9F 00 2C */ lwz r4, 0x2c(r31) /* 802F2B90 002EFAD0 48 00 16 D1 */ bl JSUConvertOffsetToPtr_X24_ /* 802F2B94 002EFAD4 90 7E 00 1C */ stw r3, 0x1c(r30) /* 802F2B98 002EFAD8 7F E3 FB 78 */ mr r3, r31 /* 802F2B9C 002EFADC 80 9F 00 30 */ lwz r4, 0x30(r31) /* 802F2BA0 002EFAE0 48 00 16 91 */ bl JSUConvertOffsetToPtr_X22_ /* 802F2BA4 002EFAE4 90 7E 00 20 */ stw r3, 0x20(r30) /* 802F2BA8 002EFAE8 7F E3 FB 78 */ mr r3, r31 /* 802F2BAC 002EFAEC 80 9F 00 34 */ lwz r4, 0x34(r31) /* 802F2BB0 002EFAF0 48 00 16 69 */ bl JSUConvertOffsetToPtr_X21_ /* 802F2BB4 002EFAF4 90 7E 00 24 */ stw r3, 0x24(r30) /* 802F2BB8 002EFAF8 7F E3 FB 78 */ mr r3, r31 /* 802F2BBC 002EFAFC 80 9F 00 38 */ lwz r4, 0x38(r31) /* 802F2BC0 002EFB00 48 00 17 01 */ bl JSUConvertOffsetToPtr_X28_ /* 802F2BC4 002EFB04 90 7E 00 28 */ stw r3, 0x28(r30) /* 802F2BC8 002EFB08 7F E3 FB 78 */ mr r3, r31 /* 802F2BCC 002EFB0C 80 9F 00 3C */ lwz r4, 0x3c(r31) /* 802F2BD0 002EFB10 48 00 16 F1 */ bl JSUConvertOffsetToPtr_X28_ /* 802F2BD4 002EFB14 90 7E 00 2C */ stw r3, 0x2c(r30) /* 802F2BD8 002EFB18 7F E3 FB 78 */ mr r3, r31 /* 802F2BDC 002EFB1C 80 9F 00 40 */ lwz r4, 0x40(r31) /* 802F2BE0 002EFB20 48 00 16 21 */ bl JSUConvertOffsetToPtr_X20_ /* 802F2BE4 002EFB24 90 7E 00 34 */ stw r3, 0x34(r30) /* 802F2BE8 002EFB28 7F E3 FB 78 */ mr r3, r31 /* 802F2BEC 002EFB2C 80 9F 00 44 */ lwz r4, 0x44(r31) /* 802F2BF0 002EFB30 48 00 15 F9 */ bl JSUConvertOffsetToPtr_X19_ /* 802F2BF4 002EFB34 90 7E 00 38 */ stw r3, 0x38(r30) /* 802F2BF8 002EFB38 7F E3 FB 78 */ mr r3, r31 /* 802F2BFC 002EFB3C 80 9F 00 48 */ lwz r4, 0x48(r31) /* 802F2C00 002EFB40 48 00 16 79 */ bl JSUConvertOffsetToPtr_X25_ /* 802F2C04 002EFB44 90 7E 00 3C */ stw r3, 0x3c(r30) /* 802F2C08 002EFB48 7F E3 FB 78 */ mr r3, r31 /* 802F2C0C 002EFB4C 80 9F 00 4C */ lwz r4, 0x4c(r31) /* 802F2C10 002EFB50 48 00 16 51 */ bl JSUConvertOffsetToPtr_X24_ /* 802F2C14 002EFB54 90 7E 00 40 */ stw r3, 0x40(r30) /* 802F2C18 002EFB58 7F E3 FB 78 */ mr r3, r31 /* 802F2C1C 002EFB5C 80 9F 00 50 */ lwz r4, 0x50(r31) /* 802F2C20 002EFB60 48 00 15 B1 */ bl JSUConvertOffsetToPtr_X18_ /* 802F2C24 002EFB64 90 7E 00 44 */ stw r3, 0x44(r30) /* 802F2C28 002EFB68 7F E3 FB 78 */ mr r3, r31 /* 802F2C2C 002EFB6C 80 9F 00 54 */ lwz r4, 0x54(r31) /* 802F2C30 002EFB70 48 00 15 89 */ bl JSUConvertOffsetToPtr_X17_ /* 802F2C34 002EFB74 90 7E 00 48 */ stw r3, 0x48(r30) /* 802F2C38 002EFB78 7F E3 FB 78 */ mr r3, r31 /* 802F2C3C 002EFB7C 80 9F 00 58 */ lwz r4, 0x58(r31) /* 802F2C40 002EFB80 48 00 15 61 */ bl JSUConvertOffsetToPtr_X16_ /* 802F2C44 002EFB84 90 7E 00 4C */ stw r3, 0x4c(r30) /* 802F2C48 002EFB88 7F E3 FB 78 */ mr r3, r31 /* 802F2C4C 002EFB8C 80 9F 00 5C */ lwz r4, 0x5c(r31) /* 802F2C50 002EFB90 48 00 15 39 */ bl JSUConvertOffsetToPtr_X15_ /* 802F2C54 002EFB94 90 7E 00 50 */ stw r3, 0x50(r30) /* 802F2C58 002EFB98 7F E3 FB 78 */ mr r3, r31 /* 802F2C5C 002EFB9C 80 9F 00 60 */ lwz r4, 0x60(r31) /* 802F2C60 002EFBA0 48 00 15 11 */ bl JSUConvertOffsetToPtr_X14_ /* 802F2C64 002EFBA4 90 7E 00 54 */ stw r3, 0x54(r30) /* 802F2C68 002EFBA8 7F E3 FB 78 */ mr r3, r31 /* 802F2C6C 002EFBAC 80 9F 00 64 */ lwz r4, 0x64(r31) /* 802F2C70 002EFBB0 48 00 15 F1 */ bl JSUConvertOffsetToPtr_X24_ /* 802F2C74 002EFBB4 90 7E 00 58 */ stw r3, 0x58(r30) /* 802F2C78 002EFBB8 7F C3 F3 78 */ mr r3, r30 /* 802F2C7C 002EFBBC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802F2C80 002EFBC0 83 C1 00 08 */ lwz r30, 8(r1) /* 802F2C84 002EFBC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 802F2C88 002EFBC8 7C 08 03 A6 */ mtlr r0 /* 802F2C8C 002EFBCC 38 21 00 10 */ addi r1, r1, 0x10 /* 802F2C90 002EFBD0 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_countStages J2DMaterialFactory_NS_countStages: /* 802F2C94 002EFBD4 80 C3 00 04 */ lwz r6, 4(r3) /* 802F2C98 002EFBD8 80 A3 00 08 */ lwz r5, 8(r3) /* 802F2C9C 002EFBDC 54 80 08 3C */ slwi r0, r4, 1 /* 802F2CA0 002EFBE0 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F2CA4 002EFBE4 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F2CA8 002EFBE8 7C 86 02 14 */ add r4, r6, r0 /* 802F2CAC 002EFBEC 38 A0 00 00 */ li r5, 0 /* 802F2CB0 002EFBF0 38 C0 00 00 */ li r6, 0 /* 802F2CB4 002EFBF4 88 04 00 04 */ lbz r0, 4(r4) /* 802F2CB8 002EFBF8 28 00 00 FF */ cmplwi r0, 0xff /* 802F2CBC 002EFBFC 41 82 00 0C */ beq lbl_802F2CC8 /* 802F2CC0 002EFC00 80 63 00 40 */ lwz r3, 0x40(r3) /* 802F2CC4 002EFC04 7C C3 00 AE */ lbzx r6, r3, r0 lbl_802F2CC8: /* 802F2CC8 002EFC08 38 60 00 00 */ li r3, 0 /* 802F2CCC 002EFC0C 38 00 00 08 */ li r0, 8 /* 802F2CD0 002EFC10 7C 09 03 A6 */ mtctr r0 lbl_802F2CD4: /* 802F2CD4 002EFC14 38 03 00 38 */ addi r0, r3, 0x38 /* 802F2CD8 002EFC18 7C 04 02 2E */ lhzx r0, r4, r0 /* 802F2CDC 002EFC1C 28 00 FF FF */ cmplwi r0, 0xffff /* 802F2CE0 002EFC20 41 82 00 08 */ beq lbl_802F2CE8 /* 802F2CE4 002EFC24 38 A5 00 01 */ addi r5, r5, 1 lbl_802F2CE8: /* 802F2CE8 002EFC28 38 63 00 02 */ addi r3, r3, 2 /* 802F2CEC 002EFC2C 42 00 FF E8 */ bdnz lbl_802F2CD4 /* 802F2CF0 002EFC30 7C 06 28 40 */ cmplw r6, r5 /* 802F2CF4 002EFC34 41 82 00 20 */ beq lbl_802F2D14 /* 802F2CF8 002EFC38 28 05 00 00 */ cmplwi r5, 0 /* 802F2CFC 002EFC3C 41 82 00 18 */ beq lbl_802F2D14 /* 802F2D00 002EFC40 7C 06 28 40 */ cmplw r6, r5 /* 802F2D04 002EFC44 7C A3 2B 78 */ mr r3, r5 /* 802F2D08 002EFC48 4C 81 00 20 */ blelr /* 802F2D0C 002EFC4C 7C C3 33 78 */ mr r3, r6 /* 802F2D10 002EFC50 4E 80 00 20 */ blr lbl_802F2D14: /* 802F2D14 002EFC54 7C C3 33 78 */ mr r3, r6 /* 802F2D18 002EFC58 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_create J2DMaterialFactory_NS_create: /* 802F2D1C 002EFC5C 94 21 FC 30 */ stwu r1, -0x3d0(r1) /* 802F2D20 002EFC60 7C 08 02 A6 */ mflr r0 /* 802F2D24 002EFC64 90 01 03 D4 */ stw r0, 0x3d4(r1) /* 802F2D28 002EFC68 39 61 03 D0 */ addi r11, r1, 0x3d0 /* 802F2D2C 002EFC6C 48 06 F4 89 */ bl _savegpr_19 /* 802F2D30 002EFC70 7C 7E 1B 78 */ mr r30, r3 /* 802F2D34 002EFC74 7C 9F 23 78 */ mr r31, r4 /* 802F2D38 002EFC78 7C BD 2B 78 */ mr r29, r5 /* 802F2D3C 002EFC7C 7C D3 33 78 */ mr r19, r6 /* 802F2D40 002EFC80 7C F8 3B 78 */ mr r24, r7 /* 802F2D44 002EFC84 7D 16 43 78 */ mr r22, r8 /* 802F2D48 002EFC88 7D 3B 4B 78 */ mr r27, r9 /* 802F2D4C 002EFC8C 7F A4 EB 78 */ mr r4, r29 /* 802F2D50 002EFC90 4B FF FF 45 */ bl J2DMaterialFactory_NS_countStages /* 802F2D54 002EFC94 56 64 02 DE */ rlwinm r4, r19, 0, 0xb, 0xf /* 802F2D58 002EFC98 56 60 86 FE */ rlwinm r0, r19, 0x10, 0x1b, 0x1f /* 802F2D5C 002EFC9C 7C 03 00 40 */ cmplw r3, r0 /* 802F2D60 002EFCA0 7C 1C 03 78 */ mr r28, r0 /* 802F2D64 002EFCA4 40 81 00 08 */ ble lbl_802F2D6C /* 802F2D68 002EFCA8 7C 7C 1B 78 */ mr r28, r3 lbl_802F2D6C: /* 802F2D6C 002EFCAC 28 1C 00 08 */ cmplwi r28, 8 /* 802F2D70 002EFCB0 3B 20 00 08 */ li r25, 8 /* 802F2D74 002EFCB4 41 81 00 08 */ bgt lbl_802F2D7C /* 802F2D78 002EFCB8 7F 99 E3 78 */ mr r25, r28 lbl_802F2D7C: /* 802F2D7C 002EFCBC 56 63 47 FE */ rlwinm r3, r19, 8, 0x1f, 0x1f /* 802F2D80 002EFCC0 20 04 00 00 */ subfic r0, r4, 0 /* 802F2D84 002EFCC4 7C 00 01 10 */ subfe r0, r0, r0 /* 802F2D88 002EFCC8 7C 74 00 38 */ and r20, r3, r0 /* 802F2D8C 002EFCCC 30 04 FF FF */ addic r0, r4, -1 /* 802F2D90 002EFCD0 7C 00 21 10 */ subfe r0, r0, r4 /* 802F2D94 002EFCD4 54 04 06 3E */ clrlwi r4, r0, 0x18 /* 802F2D98 002EFCD8 7C 93 23 78 */ mr r19, r4 /* 802F2D9C 002EFCDC 57 83 04 3E */ clrlwi r3, r28, 0x10 /* 802F2DA0 002EFCE0 4B FF 76 71 */ bl J2DMaterial_NS_createTevBlock /* 802F2DA4 002EFCE4 90 7F 00 70 */ stw r3, 0x70(r31) /* 802F2DA8 002EFCE8 7E 83 A3 78 */ mr r3, r20 /* 802F2DAC 002EFCEC 7E 64 9B 78 */ mr r4, r19 /* 802F2DB0 002EFCF0 4B FF 78 15 */ bl J2DMaterial_NS_createIndBlock /* 802F2DB4 002EFCF4 90 7F 00 74 */ stw r3, 0x74(r31) /* 802F2DB8 002EFCF8 B3 BF 00 0C */ sth r29, 0xc(r31) /* 802F2DBC 002EFCFC 80 9E 00 04 */ lwz r4, 4(r30) /* 802F2DC0 002EFD00 80 7E 00 08 */ lwz r3, 8(r30) /* 802F2DC4 002EFD04 57 BA 08 3C */ slwi r26, r29, 1 /* 802F2DC8 002EFD08 7C 03 D2 2E */ lhzx r0, r3, r26 /* 802F2DCC 002EFD0C 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F2DD0 002EFD10 7C 04 00 AE */ lbzx r0, r4, r0 /* 802F2DD4 002EFD14 90 1F 00 08 */ stw r0, 8(r31) /* 802F2DD8 002EFD18 7F C3 F3 78 */ mr r3, r30 /* 802F2DDC 002EFD1C 7F A4 EB 78 */ mr r4, r29 /* 802F2DE0 002EFD20 48 00 08 ED */ bl J2DMaterialFactory_NS_newColorChanNum /* 802F2DE4 002EFD24 98 7F 00 18 */ stb r3, 0x18(r31) /* 802F2DE8 002EFD28 7F C3 F3 78 */ mr r3, r30 /* 802F2DEC 002EFD2C 7F A4 EB 78 */ mr r4, r29 /* 802F2DF0 002EFD30 48 00 0A F1 */ bl J2DMaterialFactory_NS_newCullMode /* 802F2DF4 002EFD34 98 7F 00 22 */ stb r3, 0x22(r31) /* 802F2DF8 002EFD38 7F C3 F3 78 */ mr r3, r30 /* 802F2DFC 002EFD3C 7F A4 EB 78 */ mr r4, r29 /* 802F2E00 002EFD40 48 00 09 59 */ bl J2DMaterialFactory_NS_newTexGenNum /* 802F2E04 002EFD44 90 7F 00 28 */ stw r3, 0x28(r31) /* 802F2E08 002EFD48 38 61 00 4C */ addi r3, r1, 0x4c /* 802F2E0C 002EFD4C 7F C4 F3 78 */ mr r4, r30 /* 802F2E10 002EFD50 7F A5 EB 78 */ mr r5, r29 /* 802F2E14 002EFD54 48 00 11 CD */ bl J2DMaterialFactory_NS_newAlphaComp /* 802F2E18 002EFD58 80 01 00 4C */ lwz r0, 0x4c(r1) /* 802F2E1C 002EFD5C 90 01 00 50 */ stw r0, 0x50(r1) /* 802F2E20 002EFD60 A0 01 00 50 */ lhz r0, 0x50(r1) /* 802F2E24 002EFD64 B0 1F 00 78 */ sth r0, 0x78(r31) /* 802F2E28 002EFD68 88 01 00 52 */ lbz r0, 0x52(r1) /* 802F2E2C 002EFD6C 98 1F 00 7A */ stb r0, 0x7a(r31) /* 802F2E30 002EFD70 88 01 00 53 */ lbz r0, 0x53(r1) /* 802F2E34 002EFD74 98 1F 00 7B */ stb r0, 0x7b(r31) /* 802F2E38 002EFD78 38 61 00 44 */ addi r3, r1, 0x44 /* 802F2E3C 002EFD7C 7F C4 F3 78 */ mr r4, r30 /* 802F2E40 002EFD80 7F A5 EB 78 */ mr r5, r29 /* 802F2E44 002EFD84 48 00 12 19 */ bl J2DMaterialFactory_NS_newBlend /* 802F2E48 002EFD88 80 01 00 44 */ lwz r0, 0x44(r1) /* 802F2E4C 002EFD8C 90 01 00 48 */ stw r0, 0x48(r1) /* 802F2E50 002EFD90 88 01 00 48 */ lbz r0, 0x48(r1) /* 802F2E54 002EFD94 98 1F 00 7C */ stb r0, 0x7c(r31) /* 802F2E58 002EFD98 88 01 00 49 */ lbz r0, 0x49(r1) /* 802F2E5C 002EFD9C 98 1F 00 7D */ stb r0, 0x7d(r31) /* 802F2E60 002EFDA0 88 01 00 4A */ lbz r0, 0x4a(r1) /* 802F2E64 002EFDA4 98 1F 00 7E */ stb r0, 0x7e(r31) /* 802F2E68 002EFDA8 88 01 00 4B */ lbz r0, 0x4b(r1) /* 802F2E6C 002EFDAC 98 1F 00 7F */ stb r0, 0x7f(r31) /* 802F2E70 002EFDB0 7F C3 F3 78 */ mr r3, r30 /* 802F2E74 002EFDB4 7F A4 EB 78 */ mr r4, r29 /* 802F2E78 002EFDB8 48 00 12 61 */ bl J2DMaterialFactory_NS_newDither /* 802F2E7C 002EFDBC 98 7F 00 80 */ stb r3, 0x80(r31) /* 802F2E80 002EFDC0 82 7F 00 70 */ lwz r19, 0x70(r31) /* 802F2E84 002EFDC4 7F C3 F3 78 */ mr r3, r30 /* 802F2E88 002EFDC8 7F A4 EB 78 */ mr r4, r29 /* 802F2E8C 002EFDCC 48 00 0C C9 */ bl J2DMaterialFactory_NS_newTevStageNum /* 802F2E90 002EFDD0 7C 64 1B 78 */ mr r4, r3 /* 802F2E94 002EFDD4 7E 63 9B 78 */ mr r3, r19 /* 802F2E98 002EFDD8 81 93 00 00 */ lwz r12, 0(r19) /* 802F2E9C 002EFDDC 81 8C 00 54 */ lwz r12, 0x54(r12) /* 802F2EA0 002EFDE0 7D 89 03 A6 */ mtctr r12 /* 802F2EA4 002EFDE4 4E 80 04 21 */ bctrl /* 802F2EA8 002EFDE8 80 9E 00 04 */ lwz r4, 4(r30) /* 802F2EAC 002EFDEC 80 7E 00 08 */ lwz r3, 8(r30) /* 802F2EB0 002EFDF0 7C 03 D2 2E */ lhzx r0, r3, r26 /* 802F2EB4 002EFDF4 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F2EB8 002EFDF8 7C 64 02 14 */ add r3, r4, r0 /* 802F2EBC 002EFDFC 88 03 00 06 */ lbz r0, 6(r3) /* 802F2EC0 002EFE00 98 1F 00 0F */ stb r0, 0xf(r31) /* 802F2EC4 002EFE04 38 00 00 00 */ li r0, 0 /* 802F2EC8 002EFE08 98 01 02 94 */ stb r0, 0x294(r1) /* 802F2ECC 002EFE0C 3A E0 00 00 */ li r23, 0 /* 802F2ED0 002EFE10 48 00 00 E8 */ b lbl_802F2FB8 lbl_802F2ED4: /* 802F2ED4 002EFE14 7F C3 F3 78 */ mr r3, r30 /* 802F2ED8 002EFE18 7F A4 EB 78 */ mr r4, r29 /* 802F2EDC 002EFE1C 48 00 0A 45 */ bl J2DMaterialFactory_NS_newTexNo /* 802F2EE0 002EFE20 7C 75 1B 78 */ mr r21, r3 /* 802F2EE4 002EFE24 7F 03 C3 78 */ mr r3, r24 /* 802F2EE8 002EFE28 7E A4 AB 78 */ mr r4, r21 /* 802F2EEC 002EFE2C 48 01 A0 25 */ bl J2DResReference_NS_getResReference /* 802F2EF0 002EFE30 7C 73 1B 79 */ or. r19, r3, r3 /* 802F2EF4 002EFE34 38 A0 00 00 */ li r5, 0 /* 802F2EF8 002EFE38 41 82 00 84 */ beq lbl_802F2F7C /* 802F2EFC 002EFE3C 38 61 02 94 */ addi r3, r1, 0x294 /* 802F2F00 002EFE40 7E 64 9B 78 */ mr r4, r19 /* 802F2F04 002EFE44 3C A0 54 49 */ lis r5, 0x54494D47@ha /* 802F2F08 002EFE48 38 A5 4D 47 */ addi r5, r5, 0x54494D47@l /* 802F2F0C 002EFE4C 7F 66 DB 78 */ mr r6, r27 /* 802F2F10 002EFE50 4B FE B2 11 */ bl JUTResReference_NS_getResource_X1_ /* 802F2F14 002EFE54 7C 65 1B 79 */ or. r5, r3, r3 /* 802F2F18 002EFE58 40 82 00 28 */ bne lbl_802F2F40 /* 802F2F1C 002EFE5C 28 1B 00 00 */ cmplwi r27, 0 /* 802F2F20 002EFE60 41 82 00 20 */ beq lbl_802F2F40 /* 802F2F24 002EFE64 38 61 02 94 */ addi r3, r1, 0x294 /* 802F2F28 002EFE68 7E 64 9B 78 */ mr r4, r19 /* 802F2F2C 002EFE6C 3C A0 54 49 */ lis r5, 0x54494D47@ha /* 802F2F30 002EFE70 38 A5 4D 47 */ addi r5, r5, 0x54494D47@l /* 802F2F34 002EFE74 38 C0 00 00 */ li r6, 0 /* 802F2F38 002EFE78 4B FE B1 E9 */ bl JUTResReference_NS_getResource_X1_ /* 802F2F3C 002EFE7C 7C 65 1B 78 */ mr r5, r3 lbl_802F2F40: /* 802F2F40 002EFE80 28 05 00 00 */ cmplwi r5, 0 /* 802F2F44 002EFE84 40 82 00 38 */ bne lbl_802F2F7C /* 802F2F48 002EFE88 80 0D 90 10 */ lwz r0, lbl_80451590-_SDA_BASE_(r13) /* 802F2F4C 002EFE8C 28 00 00 00 */ cmplwi r0, 0 /* 802F2F50 002EFE90 41 82 00 2C */ beq lbl_802F2F7C /* 802F2F54 002EFE94 7F 03 C3 78 */ mr r3, r24 /* 802F2F58 002EFE98 7E A4 AB 78 */ mr r4, r21 /* 802F2F5C 002EFE9C 48 01 9F E9 */ bl J2DResReference_NS_getName /* 802F2F60 002EFEA0 7C 64 1B 78 */ mr r4, r3 /* 802F2F64 002EFEA4 38 61 01 90 */ addi r3, r1, 0x190 /* 802F2F68 002EFEA8 48 07 5B C5 */ bl strcpy /* 802F2F6C 002EFEAC 80 6D 90 10 */ lwz r3, lbl_80451590-_SDA_BASE_(r13) /* 802F2F70 002EFEB0 38 81 01 90 */ addi r4, r1, 0x190 /* 802F2F74 002EFEB4 48 01 9E A5 */ bl J2DDataManage_NS_get /* 802F2F78 002EFEB8 7C 65 1B 78 */ mr r5, r3 lbl_802F2F7C: /* 802F2F7C 002EFEBC 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F2F80 002EFEC0 56 F3 06 3E */ clrlwi r19, r23, 0x18 /* 802F2F84 002EFEC4 7E 64 9B 78 */ mr r4, r19 /* 802F2F88 002EFEC8 81 83 00 00 */ lwz r12, 0(r3) /* 802F2F8C 002EFECC 81 8C 00 78 */ lwz r12, 0x78(r12) /* 802F2F90 002EFED0 7D 89 03 A6 */ mtctr r12 /* 802F2F94 002EFED4 4E 80 04 21 */ bctrl /* 802F2F98 002EFED8 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F2F9C 002EFEDC 7E 64 9B 78 */ mr r4, r19 /* 802F2FA0 002EFEE0 7E A5 AB 78 */ mr r5, r21 /* 802F2FA4 002EFEE4 81 83 00 00 */ lwz r12, 0(r3) /* 802F2FA8 002EFEE8 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 802F2FAC 002EFEEC 7D 89 03 A6 */ mtctr r12 /* 802F2FB0 002EFEF0 4E 80 04 21 */ bctrl /* 802F2FB4 002EFEF4 3A F7 00 01 */ addi r23, r23, 1 lbl_802F2FB8: /* 802F2FB8 002EFEF8 56 E5 06 3E */ clrlwi r5, r23, 0x18 /* 802F2FBC 002EFEFC 7C 05 C8 40 */ cmplw r5, r25 /* 802F2FC0 002EFF00 41 80 FF 14 */ blt lbl_802F2ED4 /* 802F2FC4 002EFF04 7F C3 F3 78 */ mr r3, r30 /* 802F2FC8 002EFF08 7F A4 EB 78 */ mr r4, r29 /* 802F2FCC 002EFF0C 48 00 09 9D */ bl J2DMaterialFactory_NS_newFontNo /* 802F2FD0 002EFF10 7C 64 1B 78 */ mr r4, r3 /* 802F2FD4 002EFF14 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F2FD8 002EFF18 81 83 00 00 */ lwz r12, 0(r3) /* 802F2FDC 002EFF1C 81 8C 00 24 */ lwz r12, 0x24(r12) /* 802F2FE0 002EFF20 7D 89 03 A6 */ mtctr r12 /* 802F2FE4 002EFF24 4E 80 04 21 */ bctrl /* 802F2FE8 002EFF28 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F2FEC 002EFF2C 81 83 00 00 */ lwz r12, 0(r3) /* 802F2FF0 002EFF30 81 8C 00 28 */ lwz r12, 0x28(r12) /* 802F2FF4 002EFF34 7D 89 03 A6 */ mtctr r12 /* 802F2FF8 002EFF38 4E 80 04 21 */ bctrl /* 802F2FFC 002EFF3C 7C 64 1B 78 */ mr r4, r3 /* 802F3000 002EFF40 7E C3 B3 78 */ mr r3, r22 /* 802F3004 002EFF44 48 01 9F 0D */ bl J2DResReference_NS_getResReference /* 802F3008 002EFF48 7C 73 1B 79 */ or. r19, r3, r3 /* 802F300C 002EFF4C 38 80 00 00 */ li r4, 0 /* 802F3010 002EFF50 41 82 00 98 */ beq lbl_802F30A8 /* 802F3014 002EFF54 38 61 02 94 */ addi r3, r1, 0x294 /* 802F3018 002EFF58 7E 64 9B 78 */ mr r4, r19 /* 802F301C 002EFF5C 3C A0 46 4F */ lis r5, 0x464F4E54@ha /* 802F3020 002EFF60 38 A5 4E 54 */ addi r5, r5, 0x464F4E54@l /* 802F3024 002EFF64 7F 66 DB 78 */ mr r6, r27 /* 802F3028 002EFF68 4B FE B0 F9 */ bl JUTResReference_NS_getResource_X1_ /* 802F302C 002EFF6C 7C 64 1B 79 */ or. r4, r3, r3 /* 802F3030 002EFF70 40 82 00 28 */ bne lbl_802F3058 /* 802F3034 002EFF74 28 1B 00 00 */ cmplwi r27, 0 /* 802F3038 002EFF78 41 82 00 20 */ beq lbl_802F3058 /* 802F303C 002EFF7C 38 61 02 94 */ addi r3, r1, 0x294 /* 802F3040 002EFF80 7E 64 9B 78 */ mr r4, r19 /* 802F3044 002EFF84 3C A0 46 4F */ lis r5, 0x464F4E54@ha /* 802F3048 002EFF88 38 A5 4E 54 */ addi r5, r5, 0x464F4E54@l /* 802F304C 002EFF8C 38 C0 00 00 */ li r6, 0 /* 802F3050 002EFF90 4B FE B0 D1 */ bl JUTResReference_NS_getResource_X1_ /* 802F3054 002EFF94 7C 64 1B 78 */ mr r4, r3 lbl_802F3058: /* 802F3058 002EFF98 28 04 00 00 */ cmplwi r4, 0 /* 802F305C 002EFF9C 40 82 00 4C */ bne lbl_802F30A8 /* 802F3060 002EFFA0 80 0D 90 10 */ lwz r0, lbl_80451590-_SDA_BASE_(r13) /* 802F3064 002EFFA4 28 00 00 00 */ cmplwi r0, 0 /* 802F3068 002EFFA8 41 82 00 40 */ beq lbl_802F30A8 /* 802F306C 002EFFAC 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F3070 002EFFB0 81 83 00 00 */ lwz r12, 0(r3) /* 802F3074 002EFFB4 81 8C 00 28 */ lwz r12, 0x28(r12) /* 802F3078 002EFFB8 7D 89 03 A6 */ mtctr r12 /* 802F307C 002EFFBC 4E 80 04 21 */ bctrl /* 802F3080 002EFFC0 7C 64 1B 78 */ mr r4, r3 /* 802F3084 002EFFC4 7E C3 B3 78 */ mr r3, r22 /* 802F3088 002EFFC8 48 01 9E BD */ bl J2DResReference_NS_getName /* 802F308C 002EFFCC 7C 64 1B 78 */ mr r4, r3 /* 802F3090 002EFFD0 38 61 00 8C */ addi r3, r1, 0x8c /* 802F3094 002EFFD4 48 07 5A 99 */ bl strcpy /* 802F3098 002EFFD8 80 6D 90 10 */ lwz r3, lbl_80451590-_SDA_BASE_(r13) /* 802F309C 002EFFDC 38 81 00 8C */ addi r4, r1, 0x8c /* 802F30A0 002EFFE0 48 01 9D 79 */ bl J2DDataManage_NS_get /* 802F30A4 002EFFE4 7C 64 1B 78 */ mr r4, r3 lbl_802F30A8: /* 802F30A8 002EFFE8 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F30AC 002EFFEC 81 83 00 00 */ lwz r12, 0(r3) /* 802F30B0 002EFFF0 81 8C 00 90 */ lwz r12, 0x90(r12) /* 802F30B4 002EFFF4 7D 89 03 A6 */ mtctr r12 /* 802F30B8 002EFFF8 4E 80 04 21 */ bctrl /* 802F30BC 002EFFFC 3A 60 00 00 */ li r19, 0 /* 802F30C0 002F0000 48 00 00 3C */ b lbl_802F30FC lbl_802F30C4: /* 802F30C4 002F0004 38 61 00 3C */ addi r3, r1, 0x3c /* 802F30C8 002F0008 7F C4 F3 78 */ mr r4, r30 /* 802F30CC 002F000C 7F A5 EB 78 */ mr r5, r29 /* 802F30D0 002F0010 48 00 08 D9 */ bl J2DMaterialFactory_NS_newTevOrder /* 802F30D4 002F0014 80 01 00 3C */ lwz r0, 0x3c(r1) /* 802F30D8 002F0018 90 01 00 40 */ stw r0, 0x40(r1) /* 802F30DC 002F001C 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F30E0 002F0020 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 802F30E4 002F0024 38 A1 00 40 */ addi r5, r1, 0x40 /* 802F30E8 002F0028 81 83 00 00 */ lwz r12, 0(r3) /* 802F30EC 002F002C 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 802F30F0 002F0030 7D 89 03 A6 */ mtctr r12 /* 802F30F4 002F0034 4E 80 04 21 */ bctrl /* 802F30F8 002F0038 3A 73 00 01 */ addi r19, r19, 1 lbl_802F30FC: /* 802F30FC 002F003C 56 66 06 3E */ clrlwi r6, r19, 0x18 /* 802F3100 002F0040 7C 06 E0 40 */ cmplw r6, r28 /* 802F3104 002F0044 41 80 FF C0 */ blt lbl_802F30C4 /* 802F3108 002F0048 3B 20 00 00 */ li r25, 0 /* 802F310C 002F004C 82 DE 00 04 */ lwz r22, 4(r30) /* 802F3110 002F0050 82 BE 00 08 */ lwz r21, 8(r30) /* 802F3114 002F0054 48 00 00 DC */ b lbl_802F31F0 lbl_802F3118: /* 802F3118 002F0058 7C 1A AA 2E */ lhzx r0, r26, r21 /* 802F311C 002F005C 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3120 002F0060 7F 76 02 14 */ add r27, r22, r0 /* 802F3124 002F0064 38 61 00 60 */ addi r3, r1, 0x60 /* 802F3128 002F0068 7F C4 F3 78 */ mr r4, r30 /* 802F312C 002F006C 7F A5 EB 78 */ mr r5, r29 /* 802F3130 002F0070 48 00 0A 5D */ bl J2DMaterialFactory_NS_newTevStage /* 802F3134 002F0074 80 61 00 60 */ lwz r3, 0x60(r1) /* 802F3138 002F0078 80 01 00 64 */ lwz r0, 0x64(r1) /* 802F313C 002F007C 90 61 00 68 */ stw r3, 0x68(r1) /* 802F3140 002F0080 90 01 00 6C */ stw r0, 0x6c(r1) /* 802F3144 002F0084 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F3148 002F0088 57 37 06 3E */ clrlwi r23, r25, 0x18 /* 802F314C 002F008C 7E E4 BB 78 */ mr r4, r23 /* 802F3150 002F0090 38 A1 00 68 */ addi r5, r1, 0x68 /* 802F3154 002F0094 81 83 00 00 */ lwz r12, 0(r3) /* 802F3158 002F0098 81 8C 00 5C */ lwz r12, 0x5c(r12) /* 802F315C 002F009C 7D 89 03 A6 */ mtctr r12 /* 802F3160 002F00A0 4E 80 04 21 */ bctrl /* 802F3164 002F00A4 56 E3 08 3C */ slwi r3, r23, 1 /* 802F3168 002F00A8 3B 03 00 BA */ addi r24, r3, 0xba /* 802F316C 002F00AC 7C 1B C2 2E */ lhzx r0, r27, r24 /* 802F3170 002F00B0 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3174 002F00B4 41 82 00 78 */ beq lbl_802F31EC /* 802F3178 002F00B8 80 9E 00 48 */ lwz r4, 0x48(r30) /* 802F317C 002F00BC 54 03 13 BA */ rlwinm r3, r0, 2, 0xe, 0x1d /* 802F3180 002F00C0 38 03 00 01 */ addi r0, r3, 1 /* 802F3184 002F00C4 7E 64 00 AE */ lbzx r19, r4, r0 /* 802F3188 002F00C8 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F318C 002F00CC 7E E4 BB 78 */ mr r4, r23 /* 802F3190 002F00D0 81 83 00 00 */ lwz r12, 0(r3) /* 802F3194 002F00D4 81 8C 00 60 */ lwz r12, 0x60(r12) /* 802F3198 002F00D8 7D 89 03 A6 */ mtctr r12 /* 802F319C 002F00DC 4E 80 04 21 */ bctrl /* 802F31A0 002F00E0 88 03 00 07 */ lbz r0, 7(r3) /* 802F31A4 002F00E4 54 04 07 B6 */ rlwinm r4, r0, 0, 0x1e, 0x1b /* 802F31A8 002F00E8 56 60 15 BA */ rlwinm r0, r19, 2, 0x16, 0x1d /* 802F31AC 002F00EC 7C 80 03 78 */ or r0, r4, r0 /* 802F31B0 002F00F0 98 03 00 07 */ stb r0, 7(r3) /* 802F31B4 002F00F4 80 7E 00 48 */ lwz r3, 0x48(r30) /* 802F31B8 002F00F8 7C 1B C2 2E */ lhzx r0, r27, r24 /* 802F31BC 002F00FC 54 00 10 3A */ slwi r0, r0, 2 /* 802F31C0 002F0100 7E 63 00 AE */ lbzx r19, r3, r0 /* 802F31C4 002F0104 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F31C8 002F0108 7E E4 BB 78 */ mr r4, r23 /* 802F31CC 002F010C 81 83 00 00 */ lwz r12, 0(r3) /* 802F31D0 002F0110 81 8C 00 60 */ lwz r12, 0x60(r12) /* 802F31D4 002F0114 7D 89 03 A6 */ mtctr r12 /* 802F31D8 002F0118 4E 80 04 21 */ bctrl /* 802F31DC 002F011C 88 03 00 07 */ lbz r0, 7(r3) /* 802F31E0 002F0120 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 802F31E4 002F0124 7C 00 9B 78 */ or r0, r0, r19 /* 802F31E8 002F0128 98 03 00 07 */ stb r0, 7(r3) lbl_802F31EC: /* 802F31EC 002F012C 3B 39 00 01 */ addi r25, r25, 1 lbl_802F31F0: /* 802F31F0 002F0130 57 26 06 3E */ clrlwi r6, r25, 0x18 /* 802F31F4 002F0134 7C 06 E0 40 */ cmplw r6, r28 /* 802F31F8 002F0138 41 80 FF 20 */ blt lbl_802F3118 /* 802F31FC 002F013C 3A 60 00 00 */ li r19, 0 /* 802F3200 002F0140 48 00 00 40 */ b lbl_802F3240 lbl_802F3204: /* 802F3204 002F0144 38 61 00 34 */ addi r3, r1, 0x34 /* 802F3208 002F0148 7F C4 F3 78 */ mr r4, r30 /* 802F320C 002F014C 7F A5 EB 78 */ mr r5, r29 /* 802F3210 002F0150 56 66 06 3E */ clrlwi r6, r19, 0x18 /* 802F3214 002F0154 48 00 08 A1 */ bl J2DMaterialFactory_NS_newTevKColor /* 802F3218 002F0158 80 01 00 34 */ lwz r0, 0x34(r1) /* 802F321C 002F015C 90 01 00 38 */ stw r0, 0x38(r1) /* 802F3220 002F0160 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F3224 002F0164 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 802F3228 002F0168 38 A1 00 38 */ addi r5, r1, 0x38 /* 802F322C 002F016C 81 83 00 00 */ lwz r12, 0(r3) /* 802F3230 002F0170 81 8C 00 3C */ lwz r12, 0x3c(r12) /* 802F3234 002F0174 7D 89 03 A6 */ mtctr r12 /* 802F3238 002F0178 4E 80 04 21 */ bctrl /* 802F323C 002F017C 3A 73 00 01 */ addi r19, r19, 1 lbl_802F3240: /* 802F3240 002F0180 56 60 06 3E */ clrlwi r0, r19, 0x18 /* 802F3244 002F0184 28 00 00 04 */ cmplwi r0, 4 /* 802F3248 002F0188 41 80 FF BC */ blt lbl_802F3204 /* 802F324C 002F018C 3A A0 00 00 */ li r21, 0 /* 802F3250 002F0190 48 00 00 3C */ b lbl_802F328C lbl_802F3254: /* 802F3254 002F0194 82 7F 00 70 */ lwz r19, 0x70(r31) /* 802F3258 002F0198 38 61 00 58 */ addi r3, r1, 0x58 /* 802F325C 002F019C 7F C4 F3 78 */ mr r4, r30 /* 802F3260 002F01A0 7F A5 EB 78 */ mr r5, r29 /* 802F3264 002F01A4 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F3268 002F01A8 48 00 07 B5 */ bl J2DMaterialFactory_NS_newTevColor /* 802F326C 002F01AC 7E 63 9B 78 */ mr r3, r19 /* 802F3270 002F01B0 56 A4 06 3E */ clrlwi r4, r21, 0x18 /* 802F3274 002F01B4 38 A1 00 58 */ addi r5, r1, 0x58 /* 802F3278 002F01B8 81 93 00 00 */ lwz r12, 0(r19) /* 802F327C 002F01BC 81 8C 00 34 */ lwz r12, 0x34(r12) /* 802F3280 002F01C0 7D 89 03 A6 */ mtctr r12 /* 802F3284 002F01C4 4E 80 04 21 */ bctrl /* 802F3288 002F01C8 3A B5 00 01 */ addi r21, r21, 1 lbl_802F328C: /* 802F328C 002F01CC 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F3290 002F01D0 28 00 00 04 */ cmplwi r0, 4 /* 802F3294 002F01D4 41 80 FF C0 */ blt lbl_802F3254 /* 802F3298 002F01D8 3A 60 00 00 */ li r19, 0 /* 802F329C 002F01DC 48 00 00 40 */ b lbl_802F32DC lbl_802F32A0: /* 802F32A0 002F01E0 38 61 00 08 */ addi r3, r1, 8 /* 802F32A4 002F01E4 7F C4 F3 78 */ mr r4, r30 /* 802F32A8 002F01E8 7F A5 EB 78 */ mr r5, r29 /* 802F32AC 002F01EC 56 66 06 3E */ clrlwi r6, r19, 0x18 /* 802F32B0 002F01F0 48 00 09 3D */ bl J2DMaterialFactory_NS_newTevSwapModeTable /* 802F32B4 002F01F4 88 01 00 08 */ lbz r0, 8(r1) /* 802F32B8 002F01F8 98 01 00 0C */ stb r0, 0xc(r1) /* 802F32BC 002F01FC 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F32C0 002F0200 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 802F32C4 002F0204 38 A1 00 0C */ addi r5, r1, 0xc /* 802F32C8 002F0208 81 83 00 00 */ lwz r12, 0(r3) /* 802F32CC 002F020C 81 8C 00 68 */ lwz r12, 0x68(r12) /* 802F32D0 002F0210 7D 89 03 A6 */ mtctr r12 /* 802F32D4 002F0214 4E 80 04 21 */ bctrl /* 802F32D8 002F0218 3A 73 00 01 */ addi r19, r19, 1 lbl_802F32DC: /* 802F32DC 002F021C 56 60 06 3E */ clrlwi r0, r19, 0x18 /* 802F32E0 002F0220 28 00 00 04 */ cmplwi r0, 4 /* 802F32E4 002F0224 41 80 FF BC */ blt lbl_802F32A0 /* 802F32E8 002F0228 3A A0 00 00 */ li r21, 0 /* 802F32EC 002F022C 3A 7F 00 10 */ addi r19, r31, 0x10 /* 802F32F0 002F0230 48 00 00 4C */ b lbl_802F333C lbl_802F32F4: /* 802F32F4 002F0234 38 61 00 2C */ addi r3, r1, 0x2c /* 802F32F8 002F0238 7F C4 F3 78 */ mr r4, r30 /* 802F32FC 002F023C 7F A5 EB 78 */ mr r5, r29 /* 802F3300 002F0240 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F3304 002F0244 48 00 03 29 */ bl J2DMaterialFactory_NS_newMatColor /* 802F3308 002F0248 80 01 00 2C */ lwz r0, 0x2c(r1) /* 802F330C 002F024C 90 01 00 30 */ stw r0, 0x30(r1) /* 802F3310 002F0250 88 61 00 30 */ lbz r3, 0x30(r1) /* 802F3314 002F0254 56 A0 15 BA */ rlwinm r0, r21, 2, 0x16, 0x1d /* 802F3318 002F0258 7C 93 02 14 */ add r4, r19, r0 /* 802F331C 002F025C 98 64 00 00 */ stb r3, 0(r4) /* 802F3320 002F0260 88 01 00 31 */ lbz r0, 0x31(r1) /* 802F3324 002F0264 98 04 00 01 */ stb r0, 1(r4) /* 802F3328 002F0268 88 01 00 32 */ lbz r0, 0x32(r1) /* 802F332C 002F026C 98 04 00 02 */ stb r0, 2(r4) /* 802F3330 002F0270 88 01 00 33 */ lbz r0, 0x33(r1) /* 802F3334 002F0274 98 04 00 03 */ stb r0, 3(r4) /* 802F3338 002F0278 3A B5 00 01 */ addi r21, r21, 1 lbl_802F333C: /* 802F333C 002F027C 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F3340 002F0280 28 00 00 02 */ cmplwi r0, 2 /* 802F3344 002F0284 41 80 FF B0 */ blt lbl_802F32F4 /* 802F3348 002F0288 3A A0 00 00 */ li r21, 0 /* 802F334C 002F028C 3A 7F 00 10 */ addi r19, r31, 0x10 /* 802F3350 002F0290 48 00 00 2C */ b lbl_802F337C lbl_802F3354: /* 802F3354 002F0294 38 61 00 1C */ addi r3, r1, 0x1c /* 802F3358 002F0298 7F C4 F3 78 */ mr r4, r30 /* 802F335C 002F029C 7F A5 EB 78 */ mr r5, r29 /* 802F3360 002F02A0 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F3364 002F02A4 48 00 03 A1 */ bl J2DMaterialFactory_NS_newColorChan /* 802F3368 002F02A8 A0 81 00 1C */ lhz r4, 0x1c(r1) /* 802F336C 002F02AC 56 A3 0D FC */ rlwinm r3, r21, 1, 0x17, 0x1e /* 802F3370 002F02B0 38 03 00 0A */ addi r0, r3, 0xa /* 802F3374 002F02B4 7C 93 03 2E */ sthx r4, r19, r0 /* 802F3378 002F02B8 3A B5 00 01 */ addi r21, r21, 1 lbl_802F337C: /* 802F337C 002F02BC 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F3380 002F02C0 28 00 00 04 */ cmplwi r0, 4 /* 802F3384 002F02C4 41 80 FF D0 */ blt lbl_802F3354 /* 802F3388 002F02C8 3A A0 00 00 */ li r21, 0 /* 802F338C 002F02CC 3A 7F 00 28 */ addi r19, r31, 0x28 /* 802F3390 002F02D0 48 00 00 44 */ b lbl_802F33D4 lbl_802F3394: /* 802F3394 002F02D4 38 61 00 28 */ addi r3, r1, 0x28 /* 802F3398 002F02D8 7F C4 F3 78 */ mr r4, r30 /* 802F339C 002F02DC 7F A5 EB 78 */ mr r5, r29 /* 802F33A0 002F02E0 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F33A4 002F02E4 48 00 03 ED */ bl J2DMaterialFactory_NS_newTexCoord /* 802F33A8 002F02E8 80 01 00 28 */ lwz r0, 0x28(r1) /* 802F33AC 002F02EC 90 01 00 54 */ stw r0, 0x54(r1) /* 802F33B0 002F02F0 88 61 00 54 */ lbz r3, 0x54(r1) /* 802F33B4 002F02F4 56 A0 15 BA */ rlwinm r0, r21, 2, 0x16, 0x1d /* 802F33B8 002F02F8 7C 93 02 14 */ add r4, r19, r0 /* 802F33BC 002F02FC 98 64 00 04 */ stb r3, 4(r4) /* 802F33C0 002F0300 88 01 00 55 */ lbz r0, 0x55(r1) /* 802F33C4 002F0304 98 04 00 05 */ stb r0, 5(r4) /* 802F33C8 002F0308 88 01 00 56 */ lbz r0, 0x56(r1) /* 802F33CC 002F030C 98 04 00 06 */ stb r0, 6(r4) /* 802F33D0 002F0310 3A B5 00 01 */ addi r21, r21, 1 lbl_802F33D4: /* 802F33D4 002F0314 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F33D8 002F0318 28 00 00 08 */ cmplwi r0, 8 /* 802F33DC 002F031C 41 80 FF B8 */ blt lbl_802F3394 /* 802F33E0 002F0320 3A A0 00 00 */ li r21, 0 /* 802F33E4 002F0324 3A 7F 00 28 */ addi r19, r31, 0x28 /* 802F33E8 002F0328 48 00 00 24 */ b lbl_802F340C lbl_802F33EC: /* 802F33EC 002F032C 7F C3 F3 78 */ mr r3, r30 /* 802F33F0 002F0330 7F A4 EB 78 */ mr r4, r29 /* 802F33F4 002F0334 56 A5 06 3E */ clrlwi r5, r21, 0x18 /* 802F33F8 002F0338 48 00 04 0D */ bl J2DMaterialFactory_NS_newTexMtx /* 802F33FC 002F033C 56 A4 15 BA */ rlwinm r4, r21, 2, 0x16, 0x1d /* 802F3400 002F0340 38 04 00 24 */ addi r0, r4, 0x24 /* 802F3404 002F0344 7C 73 01 2E */ stwx r3, r19, r0 /* 802F3408 002F0348 3A B5 00 01 */ addi r21, r21, 1 lbl_802F340C: /* 802F340C 002F034C 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F3410 002F0350 28 00 00 08 */ cmplwi r0, 8 /* 802F3414 002F0354 41 80 FF D8 */ blt lbl_802F33EC /* 802F3418 002F0358 80 9E 00 04 */ lwz r4, 4(r30) /* 802F341C 002F035C 80 7E 00 08 */ lwz r3, 8(r30) /* 802F3420 002F0360 7C 03 D2 2E */ lhzx r0, r3, r26 /* 802F3424 002F0364 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3428 002F0368 7E 64 02 14 */ add r19, r4, r0 /* 802F342C 002F036C 3A A0 00 00 */ li r21, 0 /* 802F3430 002F0370 48 00 00 28 */ b lbl_802F3458 lbl_802F3434: /* 802F3434 002F0374 56 A4 06 3E */ clrlwi r4, r21, 0x18 /* 802F3438 002F0378 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F343C 002F037C 38 04 00 52 */ addi r0, r4, 0x52 /* 802F3440 002F0380 7C B3 00 AE */ lbzx r5, r19, r0 /* 802F3444 002F0384 81 83 00 00 */ lwz r12, 0(r3) /* 802F3448 002F0388 81 8C 00 44 */ lwz r12, 0x44(r12) /* 802F344C 002F038C 7D 89 03 A6 */ mtctr r12 /* 802F3450 002F0390 4E 80 04 21 */ bctrl /* 802F3454 002F0394 3A B5 00 01 */ addi r21, r21, 1 lbl_802F3458: /* 802F3458 002F0398 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F345C 002F039C 7C 00 E0 40 */ cmplw r0, r28 /* 802F3460 002F03A0 41 80 FF D4 */ blt lbl_802F3434 /* 802F3464 002F03A4 3A A0 00 00 */ li r21, 0 /* 802F3468 002F03A8 48 00 00 28 */ b lbl_802F3490 lbl_802F346C: /* 802F346C 002F03AC 56 A4 06 3E */ clrlwi r4, r21, 0x18 /* 802F3470 002F03B0 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F3474 002F03B4 38 04 00 62 */ addi r0, r4, 0x62 /* 802F3478 002F03B8 7C B3 00 AE */ lbzx r5, r19, r0 /* 802F347C 002F03BC 81 83 00 00 */ lwz r12, 0(r3) /* 802F3480 002F03C0 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 802F3484 002F03C4 7D 89 03 A6 */ mtctr r12 /* 802F3488 002F03C8 4E 80 04 21 */ bctrl /* 802F348C 002F03CC 3A B5 00 01 */ addi r21, r21, 1 lbl_802F3490: /* 802F3490 002F03D0 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F3494 002F03D4 7C 00 E0 40 */ cmplw r0, r28 /* 802F3498 002F03D8 41 80 FF D4 */ blt lbl_802F346C /* 802F349C 002F03DC 80 1E 00 0C */ lwz r0, 0xc(r30) /* 802F34A0 002F03E0 28 00 00 00 */ cmplwi r0, 0 /* 802F34A4 002F03E4 40 82 00 0C */ bne lbl_802F34B0 /* 802F34A8 002F03E8 2C 14 00 00 */ cmpwi r20, 0 /* 802F34AC 002F03EC 41 82 01 64 */ beq lbl_802F3610 lbl_802F34B0: /* 802F34B0 002F03F0 7F C3 F3 78 */ mr r3, r30 /* 802F34B4 002F03F4 7F A4 EB 78 */ mr r4, r29 /* 802F34B8 002F03F8 48 00 07 D1 */ bl J2DMaterialFactory_NS_newIndTexStageNum /* 802F34BC 002F03FC 7C 73 1B 78 */ mr r19, r3 /* 802F34C0 002F0400 80 7F 00 74 */ lwz r3, 0x74(r31) /* 802F34C4 002F0404 7E 64 9B 78 */ mr r4, r19 /* 802F34C8 002F0408 81 83 00 00 */ lwz r12, 0(r3) /* 802F34CC 002F040C 81 8C 00 14 */ lwz r12, 0x14(r12) /* 802F34D0 002F0410 7D 89 03 A6 */ mtctr r12 /* 802F34D4 002F0414 4E 80 04 21 */ bctrl /* 802F34D8 002F0418 3A A0 00 00 */ li r21, 0 /* 802F34DC 002F041C 56 74 06 3E */ clrlwi r20, r19, 0x18 /* 802F34E0 002F0420 48 00 00 38 */ b lbl_802F3518 lbl_802F34E4: /* 802F34E4 002F0424 38 61 00 70 */ addi r3, r1, 0x70 /* 802F34E8 002F0428 7F C4 F3 78 */ mr r4, r30 /* 802F34EC 002F042C 7F A5 EB 78 */ mr r5, r29 /* 802F34F0 002F0430 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F34F4 002F0434 48 00 08 2D */ bl J2DMaterialFactory_NS_newIndTexMtx /* 802F34F8 002F0438 80 7F 00 74 */ lwz r3, 0x74(r31) /* 802F34FC 002F043C 56 A4 06 3E */ clrlwi r4, r21, 0x18 /* 802F3500 002F0440 38 A1 00 70 */ addi r5, r1, 0x70 /* 802F3504 002F0444 81 83 00 00 */ lwz r12, 0(r3) /* 802F3508 002F0448 81 8C 00 24 */ lwz r12, 0x24(r12) /* 802F350C 002F044C 7D 89 03 A6 */ mtctr r12 /* 802F3510 002F0450 4E 80 04 21 */ bctrl /* 802F3514 002F0454 3A B5 00 01 */ addi r21, r21, 1 lbl_802F3518: /* 802F3518 002F0458 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F351C 002F045C 7C 00 A0 40 */ cmplw r0, r20 /* 802F3520 002F0460 41 80 FF C4 */ blt lbl_802F34E4 /* 802F3524 002F0464 3A A0 00 00 */ li r21, 0 /* 802F3528 002F0468 56 74 06 3E */ clrlwi r20, r19, 0x18 /* 802F352C 002F046C 48 00 00 40 */ b lbl_802F356C lbl_802F3530: /* 802F3530 002F0470 38 61 00 14 */ addi r3, r1, 0x14 /* 802F3534 002F0474 7F C4 F3 78 */ mr r4, r30 /* 802F3538 002F0478 7F A5 EB 78 */ mr r5, r29 /* 802F353C 002F047C 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F3540 002F0480 48 00 07 79 */ bl J2DMaterialFactory_NS_newIndTexOrder /* 802F3544 002F0484 A0 01 00 14 */ lhz r0, 0x14(r1) /* 802F3548 002F0488 B0 01 00 18 */ sth r0, 0x18(r1) /* 802F354C 002F048C 80 7F 00 74 */ lwz r3, 0x74(r31) /* 802F3550 002F0490 56 A4 06 3E */ clrlwi r4, r21, 0x18 /* 802F3554 002F0494 38 A1 00 18 */ addi r5, r1, 0x18 /* 802F3558 002F0498 81 83 00 00 */ lwz r12, 0(r3) /* 802F355C 002F049C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 802F3560 002F04A0 7D 89 03 A6 */ mtctr r12 /* 802F3564 002F04A4 4E 80 04 21 */ bctrl /* 802F3568 002F04A8 3A B5 00 01 */ addi r21, r21, 1 lbl_802F356C: /* 802F356C 002F04AC 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F3570 002F04B0 7C 00 A0 40 */ cmplw r0, r20 /* 802F3574 002F04B4 41 80 FF BC */ blt lbl_802F3530 /* 802F3578 002F04B8 3A A0 00 00 */ li r21, 0 /* 802F357C 002F04BC 56 74 06 3E */ clrlwi r20, r19, 0x18 /* 802F3580 002F04C0 48 00 00 38 */ b lbl_802F35B8 lbl_802F3584: /* 802F3584 002F04C4 38 61 00 10 */ addi r3, r1, 0x10 /* 802F3588 002F04C8 7F C4 F3 78 */ mr r4, r30 /* 802F358C 002F04CC 7F A5 EB 78 */ mr r5, r29 /* 802F3590 002F04D0 56 A6 06 3E */ clrlwi r6, r21, 0x18 /* 802F3594 002F04D4 48 00 09 E5 */ bl J2DMaterialFactory_NS_newIndTexCoordScale /* 802F3598 002F04D8 80 7F 00 74 */ lwz r3, 0x74(r31) /* 802F359C 002F04DC 56 A4 06 3E */ clrlwi r4, r21, 0x18 /* 802F35A0 002F04E0 38 A1 00 10 */ addi r5, r1, 0x10 /* 802F35A4 002F04E4 81 83 00 00 */ lwz r12, 0(r3) /* 802F35A8 002F04E8 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 802F35AC 002F04EC 7D 89 03 A6 */ mtctr r12 /* 802F35B0 002F04F0 4E 80 04 21 */ bctrl /* 802F35B4 002F04F4 3A B5 00 01 */ addi r21, r21, 1 lbl_802F35B8: /* 802F35B8 002F04F8 56 A0 06 3E */ clrlwi r0, r21, 0x18 /* 802F35BC 002F04FC 7C 00 A0 40 */ cmplw r0, r20 /* 802F35C0 002F0500 41 80 FF C4 */ blt lbl_802F3584 /* 802F35C4 002F0504 3A 60 00 00 */ li r19, 0 /* 802F35C8 002F0508 48 00 00 3C */ b lbl_802F3604 lbl_802F35CC: /* 802F35CC 002F050C 38 61 00 20 */ addi r3, r1, 0x20 /* 802F35D0 002F0510 7F C4 F3 78 */ mr r4, r30 /* 802F35D4 002F0514 7F A5 EB 78 */ mr r5, r29 /* 802F35D8 002F0518 48 00 08 4D */ bl J2DMaterialFactory_NS_newIndTevStage /* 802F35DC 002F051C 80 01 00 20 */ lwz r0, 0x20(r1) /* 802F35E0 002F0520 90 01 00 24 */ stw r0, 0x24(r1) /* 802F35E4 002F0524 80 7F 00 70 */ lwz r3, 0x70(r31) /* 802F35E8 002F0528 56 64 06 3E */ clrlwi r4, r19, 0x18 /* 802F35EC 002F052C 38 A1 00 24 */ addi r5, r1, 0x24 /* 802F35F0 002F0530 81 83 00 00 */ lwz r12, 0(r3) /* 802F35F4 002F0534 81 8C 00 70 */ lwz r12, 0x70(r12) /* 802F35F8 002F0538 7D 89 03 A6 */ mtctr r12 /* 802F35FC 002F053C 4E 80 04 21 */ bctrl /* 802F3600 002F0540 3A 73 00 01 */ addi r19, r19, 1 lbl_802F3604: /* 802F3604 002F0544 56 66 06 3E */ clrlwi r6, r19, 0x18 /* 802F3608 002F0548 7C 06 E0 40 */ cmplw r6, r28 /* 802F360C 002F054C 41 80 FF C0 */ blt lbl_802F35CC lbl_802F3610: /* 802F3610 002F0550 7F E3 FB 78 */ mr r3, r31 /* 802F3614 002F0554 39 61 03 D0 */ addi r11, r1, 0x3d0 /* 802F3618 002F0558 48 06 EB E9 */ bl _restgpr_19 /* 802F361C 002F055C 80 01 03 D4 */ lwz r0, 0x3d4(r1) /* 802F3620 002F0560 7C 08 03 A6 */ mtlr r0 /* 802F3624 002F0564 38 21 03 D0 */ addi r1, r1, 0x3d0 /* 802F3628 002F0568 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newMatColor J2DMaterialFactory_NS_newMatColor: /* 802F362C 002F056C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802F3630 002F0570 80 02 C7 C0 */ lwz r0, lbl_804561C0-_SDA2_BASE_(r2) /* 802F3634 002F0574 90 01 00 10 */ stw r0, 0x10(r1) /* 802F3638 002F0578 90 01 00 0C */ stw r0, 0xc(r1) /* 802F363C 002F057C 88 01 00 0C */ lbz r0, 0xc(r1) /* 802F3640 002F0580 98 01 00 14 */ stb r0, 0x14(r1) /* 802F3644 002F0584 88 01 00 0D */ lbz r0, 0xd(r1) /* 802F3648 002F0588 98 01 00 15 */ stb r0, 0x15(r1) /* 802F364C 002F058C 88 01 00 0E */ lbz r0, 0xe(r1) /* 802F3650 002F0590 98 01 00 16 */ stb r0, 0x16(r1) /* 802F3654 002F0594 88 01 00 0F */ lbz r0, 0xf(r1) /* 802F3658 002F0598 98 01 00 17 */ stb r0, 0x17(r1) /* 802F365C 002F059C 81 04 00 04 */ lwz r8, 4(r4) /* 802F3660 002F05A0 80 E4 00 08 */ lwz r7, 8(r4) /* 802F3664 002F05A4 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3668 002F05A8 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F366C 002F05AC 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3670 002F05B0 7C A8 02 14 */ add r5, r8, r0 /* 802F3674 002F05B4 54 C0 08 3C */ slwi r0, r6, 1 /* 802F3678 002F05B8 7C A5 02 14 */ add r5, r5, r0 /* 802F367C 002F05BC A0 05 00 08 */ lhz r0, 8(r5) /* 802F3680 002F05C0 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3684 002F05C4 41 82 00 38 */ beq lbl_802F36BC /* 802F3688 002F05C8 80 84 00 10 */ lwz r4, 0x10(r4) /* 802F368C 002F05CC 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d /* 802F3690 002F05D0 7C 04 00 2E */ lwzx r0, r4, r0 /* 802F3694 002F05D4 90 01 00 08 */ stw r0, 8(r1) /* 802F3698 002F05D8 88 01 00 08 */ lbz r0, 8(r1) /* 802F369C 002F05DC 98 03 00 00 */ stb r0, 0(r3) /* 802F36A0 002F05E0 88 01 00 09 */ lbz r0, 9(r1) /* 802F36A4 002F05E4 98 03 00 01 */ stb r0, 1(r3) /* 802F36A8 002F05E8 88 01 00 0A */ lbz r0, 0xa(r1) /* 802F36AC 002F05EC 98 03 00 02 */ stb r0, 2(r3) /* 802F36B0 002F05F0 88 01 00 0B */ lbz r0, 0xb(r1) /* 802F36B4 002F05F4 98 03 00 03 */ stb r0, 3(r3) /* 802F36B8 002F05F8 48 00 00 0C */ b lbl_802F36C4 lbl_802F36BC: /* 802F36BC 002F05FC 80 01 00 14 */ lwz r0, 0x14(r1) /* 802F36C0 002F0600 90 03 00 00 */ stw r0, 0(r3) lbl_802F36C4: /* 802F36C4 002F0604 38 21 00 20 */ addi r1, r1, 0x20 /* 802F36C8 002F0608 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newColorChanNum J2DMaterialFactory_NS_newColorChanNum: /* 802F36CC 002F060C 80 C3 00 04 */ lwz r6, 4(r3) /* 802F36D0 002F0610 80 A3 00 08 */ lwz r5, 8(r3) /* 802F36D4 002F0614 54 80 08 3C */ slwi r0, r4, 1 /* 802F36D8 002F0618 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F36DC 002F061C 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F36E0 002F0620 7C 86 02 14 */ add r4, r6, r0 /* 802F36E4 002F0624 88 04 00 02 */ lbz r0, 2(r4) /* 802F36E8 002F0628 28 00 00 FF */ cmplwi r0, 0xff /* 802F36EC 002F062C 41 82 00 10 */ beq lbl_802F36FC /* 802F36F0 002F0630 80 63 00 14 */ lwz r3, 0x14(r3) /* 802F36F4 002F0634 7C 63 00 AE */ lbzx r3, r3, r0 /* 802F36F8 002F0638 4E 80 00 20 */ blr lbl_802F36FC: /* 802F36FC 002F063C 38 60 00 00 */ li r3, 0 /* 802F3700 002F0640 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newColorChan J2DMaterialFactory_NS_newColorChan: /* 802F3704 002F0644 81 04 00 04 */ lwz r8, 4(r4) /* 802F3708 002F0648 80 E4 00 08 */ lwz r7, 8(r4) /* 802F370C 002F064C 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3710 002F0650 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F3714 002F0654 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3718 002F0658 7C A8 02 14 */ add r5, r8, r0 /* 802F371C 002F065C 54 C0 08 3C */ slwi r0, r6, 1 /* 802F3720 002F0660 7C A5 02 14 */ add r5, r5, r0 /* 802F3724 002F0664 A0 05 00 0C */ lhz r0, 0xc(r5) /* 802F3728 002F0668 28 00 FF FF */ cmplwi r0, 0xffff /* 802F372C 002F066C 41 82 00 1C */ beq lbl_802F3748 /* 802F3730 002F0670 80 A4 00 18 */ lwz r5, 0x18(r4) /* 802F3734 002F0674 54 04 13 BA */ rlwinm r4, r0, 2, 0xe, 0x1d /* 802F3738 002F0678 38 04 00 01 */ addi r0, r4, 1 /* 802F373C 002F067C 7C 05 00 AE */ lbzx r0, r5, r0 /* 802F3740 002F0680 B0 03 00 00 */ sth r0, 0(r3) /* 802F3744 002F0684 4E 80 00 20 */ blr lbl_802F3748: /* 802F3748 002F0688 38 82 C7 A8 */ addi r4, r2, lbl_804561A8-_SDA2_BASE_ /* 802F374C 002F068C 88 04 00 01 */ lbz r0, 1(r4) /* 802F3750 002F0690 B0 03 00 00 */ sth r0, 0(r3) /* 802F3754 002F0694 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTexGenNum J2DMaterialFactory_NS_newTexGenNum: /* 802F3758 002F0698 80 C3 00 04 */ lwz r6, 4(r3) /* 802F375C 002F069C 80 A3 00 08 */ lwz r5, 8(r3) /* 802F3760 002F06A0 54 80 08 3C */ slwi r0, r4, 1 /* 802F3764 002F06A4 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F3768 002F06A8 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F376C 002F06AC 7C 86 02 14 */ add r4, r6, r0 /* 802F3770 002F06B0 88 04 00 03 */ lbz r0, 3(r4) /* 802F3774 002F06B4 28 00 00 FF */ cmplwi r0, 0xff /* 802F3778 002F06B8 41 82 00 10 */ beq lbl_802F3788 /* 802F377C 002F06BC 80 63 00 1C */ lwz r3, 0x1c(r3) /* 802F3780 002F06C0 7C 63 00 AE */ lbzx r3, r3, r0 /* 802F3784 002F06C4 4E 80 00 20 */ blr lbl_802F3788: /* 802F3788 002F06C8 38 60 00 00 */ li r3, 0 /* 802F378C 002F06CC 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTexCoord J2DMaterialFactory_NS_newTexCoord: /* 802F3790 002F06D0 81 04 00 04 */ lwz r8, 4(r4) /* 802F3794 002F06D4 80 E4 00 08 */ lwz r7, 8(r4) /* 802F3798 002F06D8 54 A0 08 3C */ slwi r0, r5, 1 /* 802F379C 002F06DC 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F37A0 002F06E0 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F37A4 002F06E4 7C A8 02 14 */ add r5, r8, r0 /* 802F37A8 002F06E8 54 C0 08 3C */ slwi r0, r6, 1 /* 802F37AC 002F06EC 7C A5 02 14 */ add r5, r5, r0 /* 802F37B0 002F06F0 A0 05 00 14 */ lhz r0, 0x14(r5) /* 802F37B4 002F06F4 28 00 FF FF */ cmplwi r0, 0xffff /* 802F37B8 002F06F8 41 82 00 2C */ beq lbl_802F37E4 /* 802F37BC 002F06FC 80 84 00 20 */ lwz r4, 0x20(r4) /* 802F37C0 002F0700 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d /* 802F37C4 002F0704 7C 84 02 14 */ add r4, r4, r0 /* 802F37C8 002F0708 88 04 00 00 */ lbz r0, 0(r4) /* 802F37CC 002F070C 98 03 00 00 */ stb r0, 0(r3) /* 802F37D0 002F0710 88 04 00 01 */ lbz r0, 1(r4) /* 802F37D4 002F0714 98 03 00 01 */ stb r0, 1(r3) /* 802F37D8 002F0718 88 04 00 02 */ lbz r0, 2(r4) /* 802F37DC 002F071C 98 03 00 02 */ stb r0, 2(r3) /* 802F37E0 002F0720 4E 80 00 20 */ blr lbl_802F37E4: /* 802F37E4 002F0724 3C 80 80 3A */ lis r4, lbl_803A1B80@ha /* 802F37E8 002F0728 8C 04 1B 80 */ lbzu r0, lbl_803A1B80@l(r4) /* 802F37EC 002F072C 98 03 00 00 */ stb r0, 0(r3) /* 802F37F0 002F0730 88 04 00 01 */ lbz r0, 1(r4) /* 802F37F4 002F0734 98 03 00 01 */ stb r0, 1(r3) /* 802F37F8 002F0738 88 04 00 02 */ lbz r0, 2(r4) /* 802F37FC 002F073C 98 03 00 02 */ stb r0, 2(r3) /* 802F3800 002F0740 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTexMtx J2DMaterialFactory_NS_newTexMtx: /* 802F3804 002F0744 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802F3808 002F0748 7C 08 02 A6 */ mflr r0 /* 802F380C 002F074C 90 01 00 24 */ stw r0, 0x24(r1) /* 802F3810 002F0750 39 61 00 20 */ addi r11, r1, 0x20 /* 802F3814 002F0754 48 06 E9 C9 */ bl _savegpr_29 /* 802F3818 002F0758 7C 7D 1B 78 */ mr r29, r3 /* 802F381C 002F075C 3B C0 00 00 */ li r30, 0 /* 802F3820 002F0760 80 C3 00 04 */ lwz r6, 4(r3) /* 802F3824 002F0764 80 63 00 08 */ lwz r3, 8(r3) /* 802F3828 002F0768 54 80 08 3C */ slwi r0, r4, 1 /* 802F382C 002F076C 7C 03 02 2E */ lhzx r0, r3, r0 /* 802F3830 002F0770 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3834 002F0774 7C 66 02 14 */ add r3, r6, r0 /* 802F3838 002F0778 54 A0 08 3C */ slwi r0, r5, 1 /* 802F383C 002F077C 7F E3 02 14 */ add r31, r3, r0 /* 802F3840 002F0780 A0 1F 00 24 */ lhz r0, 0x24(r31) /* 802F3844 002F0784 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3848 002F0788 41 82 00 7C */ beq lbl_802F38C4 /* 802F384C 002F078C 38 60 00 54 */ li r3, 0x54 /* 802F3850 002F0790 4B FD B3 FD */ bl __nw__FUl /* 802F3854 002F0794 28 03 00 00 */ cmplwi r3, 0 /* 802F3858 002F0798 41 82 00 64 */ beq lbl_802F38BC /* 802F385C 002F079C 80 9D 00 24 */ lwz r4, 0x24(r29) /* 802F3860 002F07A0 A0 1F 00 24 */ lhz r0, 0x24(r31) /* 802F3864 002F07A4 1C 00 00 24 */ mulli r0, r0, 0x24 /* 802F3868 002F07A8 7C 84 02 14 */ add r4, r4, r0 /* 802F386C 002F07AC C0 04 00 04 */ lfs f0, 4(r4) /* 802F3870 002F07B0 D0 03 00 04 */ stfs f0, 4(r3) /* 802F3874 002F07B4 C0 04 00 08 */ lfs f0, 8(r4) /* 802F3878 002F07B8 D0 03 00 08 */ stfs f0, 8(r3) /* 802F387C 002F07BC C0 04 00 0C */ lfs f0, 0xc(r4) /* 802F3880 002F07C0 D0 03 00 0C */ stfs f0, 0xc(r3) /* 802F3884 002F07C4 88 04 00 00 */ lbz r0, 0(r4) /* 802F3888 002F07C8 98 03 00 00 */ stb r0, 0(r3) /* 802F388C 002F07CC 88 04 00 01 */ lbz r0, 1(r4) /* 802F3890 002F07D0 98 03 00 01 */ stb r0, 1(r3) /* 802F3894 002F07D4 C0 04 00 10 */ lfs f0, 0x10(r4) /* 802F3898 002F07D8 D0 03 00 10 */ stfs f0, 0x10(r3) /* 802F389C 002F07DC C0 04 00 14 */ lfs f0, 0x14(r4) /* 802F38A0 002F07E0 D0 03 00 14 */ stfs f0, 0x14(r3) /* 802F38A4 002F07E4 C0 04 00 18 */ lfs f0, 0x18(r4) /* 802F38A8 002F07E8 D0 03 00 18 */ stfs f0, 0x18(r3) /* 802F38AC 002F07EC C0 04 00 1C */ lfs f0, 0x1c(r4) /* 802F38B0 002F07F0 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 802F38B4 002F07F4 C0 04 00 20 */ lfs f0, 0x20(r4) /* 802F38B8 002F07F8 D0 03 00 20 */ stfs f0, 0x20(r3) lbl_802F38BC: /* 802F38BC 002F07FC 7C 7E 1B 78 */ mr r30, r3 /* 802F38C0 002F0800 4B FF 64 05 */ bl J2DTexMtx_NS_calc lbl_802F38C4: /* 802F38C4 002F0804 7F C3 F3 78 */ mr r3, r30 /* 802F38C8 002F0808 39 61 00 20 */ addi r11, r1, 0x20 /* 802F38CC 002F080C 48 06 E9 5D */ bl _restgpr_29 /* 802F38D0 002F0810 80 01 00 24 */ lwz r0, 0x24(r1) /* 802F38D4 002F0814 7C 08 03 A6 */ mtlr r0 /* 802F38D8 002F0818 38 21 00 20 */ addi r1, r1, 0x20 /* 802F38DC 002F081C 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newCullMode J2DMaterialFactory_NS_newCullMode: /* 802F38E0 002F0820 80 C3 00 04 */ lwz r6, 4(r3) /* 802F38E4 002F0824 80 A3 00 08 */ lwz r5, 8(r3) /* 802F38E8 002F0828 54 80 08 3C */ slwi r0, r4, 1 /* 802F38EC 002F082C 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F38F0 002F0830 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F38F4 002F0834 7C 86 02 14 */ add r4, r6, r0 /* 802F38F8 002F0838 88 04 00 01 */ lbz r0, 1(r4) /* 802F38FC 002F083C 28 00 00 FF */ cmplwi r0, 0xff /* 802F3900 002F0840 41 82 00 18 */ beq lbl_802F3918 /* 802F3904 002F0844 80 63 00 30 */ lwz r3, 0x30(r3) /* 802F3908 002F0848 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d /* 802F390C 002F084C 7C 03 00 2E */ lwzx r0, r3, r0 /* 802F3910 002F0850 54 03 06 3E */ clrlwi r3, r0, 0x18 /* 802F3914 002F0854 4E 80 00 20 */ blr lbl_802F3918: /* 802F3918 002F0858 38 60 00 FF */ li r3, 0xff /* 802F391C 002F085C 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTexNo J2DMaterialFactory_NS_newTexNo: /* 802F3920 002F0860 80 E3 00 04 */ lwz r7, 4(r3) /* 802F3924 002F0864 80 C3 00 08 */ lwz r6, 8(r3) /* 802F3928 002F0868 54 80 08 3C */ slwi r0, r4, 1 /* 802F392C 002F086C 7C 06 02 2E */ lhzx r0, r6, r0 /* 802F3930 002F0870 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3934 002F0874 7C 87 02 14 */ add r4, r7, r0 /* 802F3938 002F0878 54 A0 08 3C */ slwi r0, r5, 1 /* 802F393C 002F087C 7C 84 02 14 */ add r4, r4, r0 /* 802F3940 002F0880 A0 04 00 38 */ lhz r0, 0x38(r4) /* 802F3944 002F0884 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3948 002F0888 41 82 00 14 */ beq lbl_802F395C /* 802F394C 002F088C 80 63 00 28 */ lwz r3, 0x28(r3) /* 802F3950 002F0890 54 00 0B FC */ rlwinm r0, r0, 1, 0xf, 0x1e /* 802F3954 002F0894 7C 63 02 2E */ lhzx r3, r3, r0 /* 802F3958 002F0898 4E 80 00 20 */ blr lbl_802F395C: /* 802F395C 002F089C 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802F3960 002F08A0 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l /* 802F3964 002F08A4 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newFontNo J2DMaterialFactory_NS_newFontNo: /* 802F3968 002F08A8 80 C3 00 04 */ lwz r6, 4(r3) /* 802F396C 002F08AC 80 A3 00 08 */ lwz r5, 8(r3) /* 802F3970 002F08B0 54 80 08 3C */ slwi r0, r4, 1 /* 802F3974 002F08B4 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F3978 002F08B8 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F397C 002F08BC 7C 86 02 14 */ add r4, r6, r0 /* 802F3980 002F08C0 A0 04 00 48 */ lhz r0, 0x48(r4) /* 802F3984 002F08C4 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3988 002F08C8 41 82 00 14 */ beq lbl_802F399C /* 802F398C 002F08CC 80 63 00 2C */ lwz r3, 0x2c(r3) /* 802F3990 002F08D0 54 00 0B FC */ rlwinm r0, r0, 1, 0xf, 0x1e /* 802F3994 002F08D4 7C 63 02 2E */ lhzx r3, r3, r0 /* 802F3998 002F08D8 4E 80 00 20 */ blr lbl_802F399C: /* 802F399C 002F08DC 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802F39A0 002F08E0 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l /* 802F39A4 002F08E4 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTevOrder J2DMaterialFactory_NS_newTevOrder: /* 802F39A8 002F08E8 81 04 00 04 */ lwz r8, 4(r4) /* 802F39AC 002F08EC 80 E4 00 08 */ lwz r7, 8(r4) /* 802F39B0 002F08F0 54 A0 08 3C */ slwi r0, r5, 1 /* 802F39B4 002F08F4 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F39B8 002F08F8 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F39BC 002F08FC 7C A8 02 14 */ add r5, r8, r0 /* 802F39C0 002F0900 54 C0 08 3C */ slwi r0, r6, 1 /* 802F39C4 002F0904 7C A5 02 14 */ add r5, r5, r0 /* 802F39C8 002F0908 A0 05 00 72 */ lhz r0, 0x72(r5) /* 802F39CC 002F090C 28 00 FF FF */ cmplwi r0, 0xffff /* 802F39D0 002F0910 41 82 00 2C */ beq lbl_802F39FC /* 802F39D4 002F0914 80 84 00 34 */ lwz r4, 0x34(r4) /* 802F39D8 002F0918 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d /* 802F39DC 002F091C 7C 84 02 14 */ add r4, r4, r0 /* 802F39E0 002F0920 88 04 00 00 */ lbz r0, 0(r4) /* 802F39E4 002F0924 98 03 00 00 */ stb r0, 0(r3) /* 802F39E8 002F0928 88 04 00 01 */ lbz r0, 1(r4) /* 802F39EC 002F092C 98 03 00 01 */ stb r0, 1(r3) /* 802F39F0 002F0930 88 04 00 02 */ lbz r0, 2(r4) /* 802F39F4 002F0934 98 03 00 02 */ stb r0, 2(r3) /* 802F39F8 002F0938 4E 80 00 20 */ blr lbl_802F39FC: /* 802F39FC 002F093C 88 02 C7 80 */ lbz r0, lbl_80456180-_SDA2_BASE_(r2) /* 802F3A00 002F0940 98 03 00 00 */ stb r0, 0(r3) /* 802F3A04 002F0944 38 82 C7 80 */ addi r4, r2, lbl_80456180-_SDA2_BASE_ /* 802F3A08 002F0948 88 04 00 01 */ lbz r0, 1(r4) /* 802F3A0C 002F094C 98 03 00 01 */ stb r0, 1(r3) /* 802F3A10 002F0950 88 04 00 02 */ lbz r0, 2(r4) /* 802F3A14 002F0954 98 03 00 02 */ stb r0, 2(r3) /* 802F3A18 002F0958 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTevColor J2DMaterialFactory_NS_newTevColor: /* 802F3A1C 002F095C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802F3A20 002F0960 80 E2 D1 B0 */ lwz r7, lbl_80456BB0-_SDA2_BASE_(r2) /* 802F3A24 002F0964 80 02 D1 B4 */ lwz r0, lbl_80456BB4-_SDA2_BASE_(r2) /* 802F3A28 002F0968 90 E1 00 08 */ stw r7, 8(r1) /* 802F3A2C 002F096C 90 01 00 0C */ stw r0, 0xc(r1) /* 802F3A30 002F0970 A9 21 00 0A */ lha r9, 0xa(r1) /* 802F3A34 002F0974 A9 41 00 0C */ lha r10, 0xc(r1) /* 802F3A38 002F0978 A9 61 00 0E */ lha r11, 0xe(r1) /* 802F3A3C 002F097C 81 04 00 04 */ lwz r8, 4(r4) /* 802F3A40 002F0980 80 E4 00 08 */ lwz r7, 8(r4) /* 802F3A44 002F0984 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3A48 002F0988 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F3A4C 002F098C 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3A50 002F0990 7C A8 02 14 */ add r5, r8, r0 /* 802F3A54 002F0994 54 C0 08 3C */ slwi r0, r6, 1 /* 802F3A58 002F0998 7C A5 02 14 */ add r5, r5, r0 /* 802F3A5C 002F099C A0 05 00 92 */ lhz r0, 0x92(r5) /* 802F3A60 002F09A0 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3A64 002F09A4 41 82 00 34 */ beq lbl_802F3A98 /* 802F3A68 002F09A8 80 84 00 38 */ lwz r4, 0x38(r4) /* 802F3A6C 002F09AC 54 00 1B 78 */ rlwinm r0, r0, 3, 0xd, 0x1c /* 802F3A70 002F09B0 7C 84 02 14 */ add r4, r4, r0 /* 802F3A74 002F09B4 A8 04 00 00 */ lha r0, 0(r4) /* 802F3A78 002F09B8 B0 03 00 00 */ sth r0, 0(r3) /* 802F3A7C 002F09BC A8 04 00 02 */ lha r0, 2(r4) /* 802F3A80 002F09C0 B0 03 00 02 */ sth r0, 2(r3) /* 802F3A84 002F09C4 A8 04 00 04 */ lha r0, 4(r4) /* 802F3A88 002F09C8 B0 03 00 04 */ sth r0, 4(r3) /* 802F3A8C 002F09CC A8 04 00 06 */ lha r0, 6(r4) /* 802F3A90 002F09D0 B0 03 00 06 */ sth r0, 6(r3) /* 802F3A94 002F09D4 48 00 00 18 */ b lbl_802F3AAC lbl_802F3A98: /* 802F3A98 002F09D8 A8 01 00 08 */ lha r0, 8(r1) /* 802F3A9C 002F09DC B0 03 00 00 */ sth r0, 0(r3) /* 802F3AA0 002F09E0 B1 23 00 02 */ sth r9, 2(r3) /* 802F3AA4 002F09E4 B1 43 00 04 */ sth r10, 4(r3) /* 802F3AA8 002F09E8 B1 63 00 06 */ sth r11, 6(r3) lbl_802F3AAC: /* 802F3AAC 002F09EC 38 21 00 10 */ addi r1, r1, 0x10 /* 802F3AB0 002F09F0 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTevKColor J2DMaterialFactory_NS_newTevKColor: /* 802F3AB4 002F09F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802F3AB8 002F09F8 80 02 C7 C4 */ lwz r0, lbl_804561C4-_SDA2_BASE_(r2) /* 802F3ABC 002F09FC 90 01 00 10 */ stw r0, 0x10(r1) /* 802F3AC0 002F0A00 90 01 00 0C */ stw r0, 0xc(r1) /* 802F3AC4 002F0A04 88 01 00 0C */ lbz r0, 0xc(r1) /* 802F3AC8 002F0A08 98 01 00 14 */ stb r0, 0x14(r1) /* 802F3ACC 002F0A0C 88 01 00 0D */ lbz r0, 0xd(r1) /* 802F3AD0 002F0A10 98 01 00 15 */ stb r0, 0x15(r1) /* 802F3AD4 002F0A14 88 01 00 0E */ lbz r0, 0xe(r1) /* 802F3AD8 002F0A18 98 01 00 16 */ stb r0, 0x16(r1) /* 802F3ADC 002F0A1C 88 01 00 0F */ lbz r0, 0xf(r1) /* 802F3AE0 002F0A20 98 01 00 17 */ stb r0, 0x17(r1) /* 802F3AE4 002F0A24 81 04 00 04 */ lwz r8, 4(r4) /* 802F3AE8 002F0A28 80 E4 00 08 */ lwz r7, 8(r4) /* 802F3AEC 002F0A2C 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3AF0 002F0A30 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F3AF4 002F0A34 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3AF8 002F0A38 7C A8 02 14 */ add r5, r8, r0 /* 802F3AFC 002F0A3C 54 C0 08 3C */ slwi r0, r6, 1 /* 802F3B00 002F0A40 7C A5 02 14 */ add r5, r5, r0 /* 802F3B04 002F0A44 A0 05 00 4A */ lhz r0, 0x4a(r5) /* 802F3B08 002F0A48 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3B0C 002F0A4C 41 82 00 38 */ beq lbl_802F3B44 /* 802F3B10 002F0A50 80 84 00 3C */ lwz r4, 0x3c(r4) /* 802F3B14 002F0A54 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d /* 802F3B18 002F0A58 7C 04 00 2E */ lwzx r0, r4, r0 /* 802F3B1C 002F0A5C 90 01 00 08 */ stw r0, 8(r1) /* 802F3B20 002F0A60 88 01 00 08 */ lbz r0, 8(r1) /* 802F3B24 002F0A64 98 03 00 00 */ stb r0, 0(r3) /* 802F3B28 002F0A68 88 01 00 09 */ lbz r0, 9(r1) /* 802F3B2C 002F0A6C 98 03 00 01 */ stb r0, 1(r3) /* 802F3B30 002F0A70 88 01 00 0A */ lbz r0, 0xa(r1) /* 802F3B34 002F0A74 98 03 00 02 */ stb r0, 2(r3) /* 802F3B38 002F0A78 88 01 00 0B */ lbz r0, 0xb(r1) /* 802F3B3C 002F0A7C 98 03 00 03 */ stb r0, 3(r3) /* 802F3B40 002F0A80 48 00 00 0C */ b lbl_802F3B4C lbl_802F3B44: /* 802F3B44 002F0A84 80 01 00 14 */ lwz r0, 0x14(r1) /* 802F3B48 002F0A88 90 03 00 00 */ stw r0, 0(r3) lbl_802F3B4C: /* 802F3B4C 002F0A8C 38 21 00 20 */ addi r1, r1, 0x20 /* 802F3B50 002F0A90 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTevStageNum J2DMaterialFactory_NS_newTevStageNum: /* 802F3B54 002F0A94 80 C3 00 04 */ lwz r6, 4(r3) /* 802F3B58 002F0A98 80 A3 00 08 */ lwz r5, 8(r3) /* 802F3B5C 002F0A9C 54 80 08 3C */ slwi r0, r4, 1 /* 802F3B60 002F0AA0 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F3B64 002F0AA4 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3B68 002F0AA8 7C 86 02 14 */ add r4, r6, r0 /* 802F3B6C 002F0AAC 88 04 00 04 */ lbz r0, 4(r4) /* 802F3B70 002F0AB0 28 00 00 FF */ cmplwi r0, 0xff /* 802F3B74 002F0AB4 41 82 00 10 */ beq lbl_802F3B84 /* 802F3B78 002F0AB8 80 63 00 40 */ lwz r3, 0x40(r3) /* 802F3B7C 002F0ABC 7C 63 00 AE */ lbzx r3, r3, r0 /* 802F3B80 002F0AC0 4E 80 00 20 */ blr lbl_802F3B84: /* 802F3B84 002F0AC4 38 60 00 FF */ li r3, 0xff /* 802F3B88 002F0AC8 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTevStage J2DMaterialFactory_NS_newTevStage: /* 802F3B8C 002F0ACC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802F3B90 002F0AD0 7C 08 02 A6 */ mflr r0 /* 802F3B94 002F0AD4 90 01 00 14 */ stw r0, 0x14(r1) /* 802F3B98 002F0AD8 81 04 00 04 */ lwz r8, 4(r4) /* 802F3B9C 002F0ADC 80 E4 00 08 */ lwz r7, 8(r4) /* 802F3BA0 002F0AE0 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3BA4 002F0AE4 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F3BA8 002F0AE8 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3BAC 002F0AEC 7C A8 02 14 */ add r5, r8, r0 /* 802F3BB0 002F0AF0 54 C0 08 3C */ slwi r0, r6, 1 /* 802F3BB4 002F0AF4 7C A5 02 14 */ add r5, r5, r0 /* 802F3BB8 002F0AF8 A0 05 00 9A */ lhz r0, 0x9a(r5) /* 802F3BBC 002F0AFC 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3BC0 002F0B00 41 82 00 18 */ beq lbl_802F3BD8 /* 802F3BC4 002F0B04 80 84 00 44 */ lwz r4, 0x44(r4) /* 802F3BC8 002F0B08 1C 00 00 14 */ mulli r0, r0, 0x14 /* 802F3BCC 002F0B0C 7C 84 02 14 */ add r4, r4, r0 /* 802F3BD0 002F0B10 48 00 05 41 */ bl J2DTevStage_X1_ /* 802F3BD4 002F0B14 48 00 00 08 */ b lbl_802F3BDC lbl_802F3BD8: /* 802F3BD8 002F0B18 4B FF DD 69 */ bl J2DTevStage lbl_802F3BDC: /* 802F3BDC 002F0B1C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802F3BE0 002F0B20 7C 08 03 A6 */ mtlr r0 /* 802F3BE4 002F0B24 38 21 00 10 */ addi r1, r1, 0x10 /* 802F3BE8 002F0B28 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newTevSwapModeTable J2DMaterialFactory_NS_newTevSwapModeTable: /* 802F3BEC 002F0B2C 81 04 00 04 */ lwz r8, 4(r4) /* 802F3BF0 002F0B30 80 E4 00 08 */ lwz r7, 8(r4) /* 802F3BF4 002F0B34 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3BF8 002F0B38 7C 07 02 2E */ lhzx r0, r7, r0 /* 802F3BFC 002F0B3C 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3C00 002F0B40 7C A8 02 14 */ add r5, r8, r0 /* 802F3C04 002F0B44 54 C0 08 3C */ slwi r0, r6, 1 /* 802F3C08 002F0B48 7C A5 02 14 */ add r5, r5, r0 /* 802F3C0C 002F0B4C A0 05 00 DA */ lhz r0, 0xda(r5) /* 802F3C10 002F0B50 28 00 FF FF */ cmplwi r0, 0xffff /* 802F3C14 002F0B54 41 82 00 40 */ beq lbl_802F3C54 /* 802F3C18 002F0B58 80 84 00 4C */ lwz r4, 0x4c(r4) /* 802F3C1C 002F0B5C 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d /* 802F3C20 002F0B60 7C E4 02 14 */ add r7, r4, r0 /* 802F3C24 002F0B64 88 87 00 00 */ lbz r4, 0(r7) /* 802F3C28 002F0B68 88 C7 00 03 */ lbz r6, 3(r7) /* 802F3C2C 002F0B6C 88 07 00 02 */ lbz r0, 2(r7) /* 802F3C30 002F0B70 54 05 15 BA */ rlwinm r5, r0, 2, 0x16, 0x1d /* 802F3C34 002F0B74 54 84 30 32 */ slwi r4, r4, 6 /* 802F3C38 002F0B78 88 07 00 01 */ lbz r0, 1(r7) /* 802F3C3C 002F0B7C 54 00 25 36 */ rlwinm r0, r0, 4, 0x14, 0x1b /* 802F3C40 002F0B80 7C 00 2A 14 */ add r0, r0, r5 /* 802F3C44 002F0B84 7C 00 32 14 */ add r0, r0, r6 /* 802F3C48 002F0B88 7C 04 02 14 */ add r0, r4, r0 /* 802F3C4C 002F0B8C 98 03 00 00 */ stb r0, 0(r3) /* 802F3C50 002F0B90 4E 80 00 20 */ blr lbl_802F3C54: /* 802F3C54 002F0B94 38 82 C7 9C */ addi r4, r2, lbl_8045619C-_SDA2_BASE_ /* 802F3C58 002F0B98 88 E4 00 01 */ lbz r7, 1(r4) /* 802F3C5C 002F0B9C 88 C4 00 03 */ lbz r6, 3(r4) /* 802F3C60 002F0BA0 88 04 00 02 */ lbz r0, 2(r4) /* 802F3C64 002F0BA4 54 05 15 BA */ rlwinm r5, r0, 2, 0x16, 0x1d /* 802F3C68 002F0BA8 88 02 C7 9C */ lbz r0, lbl_8045619C-_SDA2_BASE_(r2) /* 802F3C6C 002F0BAC 54 04 34 B2 */ rlwinm r4, r0, 6, 0x12, 0x19 /* 802F3C70 002F0BB0 54 E0 20 36 */ slwi r0, r7, 4 /* 802F3C74 002F0BB4 7C 00 2A 14 */ add r0, r0, r5 /* 802F3C78 002F0BB8 7C 00 32 14 */ add r0, r0, r6 /* 802F3C7C 002F0BBC 7C 04 02 14 */ add r0, r4, r0 /* 802F3C80 002F0BC0 98 03 00 00 */ stb r0, 0(r3) /* 802F3C84 002F0BC4 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newIndTexStageNum J2DMaterialFactory_NS_newIndTexStageNum: /* 802F3C88 002F0BC8 80 63 00 0C */ lwz r3, 0xc(r3) /* 802F3C8C 002F0BCC 28 03 00 00 */ cmplwi r3, 0 /* 802F3C90 002F0BD0 41 82 00 20 */ beq lbl_802F3CB0 /* 802F3C94 002F0BD4 1C 84 01 28 */ mulli r4, r4, 0x128 /* 802F3C98 002F0BD8 7C 03 20 AE */ lbzx r0, r3, r4 /* 802F3C9C 002F0BDC 28 00 00 01 */ cmplwi r0, 1 /* 802F3CA0 002F0BE0 40 82 00 10 */ bne lbl_802F3CB0 /* 802F3CA4 002F0BE4 7C 63 22 14 */ add r3, r3, r4 /* 802F3CA8 002F0BE8 88 63 00 01 */ lbz r3, 1(r3) /* 802F3CAC 002F0BEC 4E 80 00 20 */ blr lbl_802F3CB0: /* 802F3CB0 002F0BF0 38 60 00 00 */ li r3, 0 /* 802F3CB4 002F0BF4 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newIndTexOrder J2DMaterialFactory_NS_newIndTexOrder: /* 802F3CB8 002F0BF8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802F3CBC 002F0BFC 88 02 C7 84 */ lbz r0, lbl_80456184-_SDA2_BASE_(r2) /* 802F3CC0 002F0C00 98 01 00 08 */ stb r0, 8(r1) /* 802F3CC4 002F0C04 38 E2 C7 84 */ addi r7, r2, lbl_80456184-_SDA2_BASE_ /* 802F3CC8 002F0C08 88 07 00 01 */ lbz r0, 1(r7) /* 802F3CCC 002F0C0C 98 01 00 09 */ stb r0, 9(r1) /* 802F3CD0 002F0C10 80 84 00 0C */ lwz r4, 0xc(r4) /* 802F3CD4 002F0C14 28 04 00 00 */ cmplwi r4, 0 /* 802F3CD8 002F0C18 41 82 00 38 */ beq lbl_802F3D10 /* 802F3CDC 002F0C1C 1C 05 01 28 */ mulli r0, r5, 0x128 /* 802F3CE0 002F0C20 7C A4 02 14 */ add r5, r4, r0 /* 802F3CE4 002F0C24 88 05 00 00 */ lbz r0, 0(r5) /* 802F3CE8 002F0C28 28 00 00 01 */ cmplwi r0, 1 /* 802F3CEC 002F0C2C 40 82 00 24 */ bne lbl_802F3D10 /* 802F3CF0 002F0C30 54 C4 08 3C */ slwi r4, r6, 1 /* 802F3CF4 002F0C34 38 84 00 04 */ addi r4, r4, 4 /* 802F3CF8 002F0C38 7C 85 22 14 */ add r4, r5, r4 /* 802F3CFC 002F0C3C 88 04 00 00 */ lbz r0, 0(r4) /* 802F3D00 002F0C40 98 03 00 00 */ stb r0, 0(r3) /* 802F3D04 002F0C44 88 04 00 01 */ lbz r0, 1(r4) /* 802F3D08 002F0C48 98 03 00 01 */ stb r0, 1(r3) /* 802F3D0C 002F0C4C 48 00 00 0C */ b lbl_802F3D18 lbl_802F3D10: /* 802F3D10 002F0C50 A0 01 00 08 */ lhz r0, 8(r1) /* 802F3D14 002F0C54 B0 03 00 00 */ sth r0, 0(r3) lbl_802F3D18: /* 802F3D18 002F0C58 38 21 00 10 */ addi r1, r1, 0x10 /* 802F3D1C 002F0C5C 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newIndTexMtx J2DMaterialFactory_NS_newIndTexMtx: /* 802F3D20 002F0C60 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802F3D24 002F0C64 39 40 00 00 */ li r10, 0 /* 802F3D28 002F0C68 38 E0 00 00 */ li r7, 0 /* 802F3D2C 002F0C6C 3D 00 80 3A */ lis r8, lbl_803A1BC4@ha /* 802F3D30 002F0C70 39 08 1B C4 */ addi r8, r8, lbl_803A1BC4@l lbl_802F3D34: /* 802F3D34 002F0C74 39 20 00 00 */ li r9, 0 /* 802F3D38 002F0C78 7D 68 3A 14 */ add r11, r8, r7 /* 802F3D3C 002F0C7C 39 81 00 08 */ addi r12, r1, 8 /* 802F3D40 002F0C80 7D 8C 3A 14 */ add r12, r12, r7 /* 802F3D44 002F0C84 38 00 00 03 */ li r0, 3 /* 802F3D48 002F0C88 7C 09 03 A6 */ mtctr r0 lbl_802F3D4C: /* 802F3D4C 002F0C8C 7C 0B 4C 2E */ lfsx f0, r11, r9 /* 802F3D50 002F0C90 7C 0C 4D 2E */ stfsx f0, r12, r9 /* 802F3D54 002F0C94 39 29 00 04 */ addi r9, r9, 4 /* 802F3D58 002F0C98 42 00 FF F4 */ bdnz lbl_802F3D4C /* 802F3D5C 002F0C9C 39 4A 00 01 */ addi r10, r10, 1 /* 802F3D60 002F0CA0 2C 0A 00 02 */ cmpwi r10, 2 /* 802F3D64 002F0CA4 38 E7 00 0C */ addi r7, r7, 0xc /* 802F3D68 002F0CA8 41 80 FF CC */ blt lbl_802F3D34 /* 802F3D6C 002F0CAC 3C E0 80 3A */ lis r7, lbl_803A1BC4@ha /* 802F3D70 002F0CB0 38 E7 1B C4 */ addi r7, r7, lbl_803A1BC4@l /* 802F3D74 002F0CB4 88 07 00 18 */ lbz r0, 0x18(r7) /* 802F3D78 002F0CB8 98 01 00 20 */ stb r0, 0x20(r1) /* 802F3D7C 002F0CBC 80 84 00 0C */ lwz r4, 0xc(r4) /* 802F3D80 002F0CC0 28 04 00 00 */ cmplwi r4, 0 /* 802F3D84 002F0CC4 41 82 00 6C */ beq lbl_802F3DF0 /* 802F3D88 002F0CC8 1C 05 01 28 */ mulli r0, r5, 0x128 /* 802F3D8C 002F0CCC 7C A4 02 14 */ add r5, r4, r0 /* 802F3D90 002F0CD0 88 05 00 00 */ lbz r0, 0(r5) /* 802F3D94 002F0CD4 28 00 00 01 */ cmplwi r0, 1 /* 802F3D98 002F0CD8 40 82 00 58 */ bne lbl_802F3DF0 /* 802F3D9C 002F0CDC 1C 86 00 1C */ mulli r4, r6, 0x1c /* 802F3DA0 002F0CE0 38 C4 00 0C */ addi r6, r4, 0xc /* 802F3DA4 002F0CE4 7C C5 32 14 */ add r6, r5, r6 /* 802F3DA8 002F0CE8 38 E0 00 00 */ li r7, 0 /* 802F3DAC 002F0CEC 38 80 00 00 */ li r4, 0 lbl_802F3DB0: /* 802F3DB0 002F0CF0 38 A0 00 00 */ li r5, 0 /* 802F3DB4 002F0CF4 7D 06 22 14 */ add r8, r6, r4 /* 802F3DB8 002F0CF8 7D 23 22 14 */ add r9, r3, r4 /* 802F3DBC 002F0CFC 38 00 00 03 */ li r0, 3 /* 802F3DC0 002F0D00 7C 09 03 A6 */ mtctr r0 lbl_802F3DC4: /* 802F3DC4 002F0D04 7C 08 2C 2E */ lfsx f0, r8, r5 /* 802F3DC8 002F0D08 7C 09 2D 2E */ stfsx f0, r9, r5 /* 802F3DCC 002F0D0C 38 A5 00 04 */ addi r5, r5, 4 /* 802F3DD0 002F0D10 42 00 FF F4 */ bdnz lbl_802F3DC4 /* 802F3DD4 002F0D14 38 E7 00 01 */ addi r7, r7, 1 /* 802F3DD8 002F0D18 2C 07 00 02 */ cmpwi r7, 2 /* 802F3DDC 002F0D1C 38 84 00 0C */ addi r4, r4, 0xc /* 802F3DE0 002F0D20 41 80 FF D0 */ blt lbl_802F3DB0 /* 802F3DE4 002F0D24 88 06 00 18 */ lbz r0, 0x18(r6) /* 802F3DE8 002F0D28 98 03 00 18 */ stb r0, 0x18(r3) /* 802F3DEC 002F0D2C 48 00 00 30 */ b lbl_802F3E1C lbl_802F3DF0: /* 802F3DF0 002F0D30 38 A3 FF FC */ addi r5, r3, -4 /* 802F3DF4 002F0D34 38 81 00 04 */ addi r4, r1, 4 /* 802F3DF8 002F0D38 38 00 00 03 */ li r0, 3 /* 802F3DFC 002F0D3C 7C 09 03 A6 */ mtctr r0 lbl_802F3E00: /* 802F3E00 002F0D40 80 64 00 04 */ lwz r3, 4(r4) /* 802F3E04 002F0D44 84 04 00 08 */ lwzu r0, 8(r4) /* 802F3E08 002F0D48 90 65 00 04 */ stw r3, 4(r5) /* 802F3E0C 002F0D4C 94 05 00 08 */ stwu r0, 8(r5) /* 802F3E10 002F0D50 42 00 FF F0 */ bdnz lbl_802F3E00 /* 802F3E14 002F0D54 80 04 00 04 */ lwz r0, 4(r4) /* 802F3E18 002F0D58 90 05 00 04 */ stw r0, 4(r5) lbl_802F3E1C: /* 802F3E1C 002F0D5C 38 21 00 30 */ addi r1, r1, 0x30 /* 802F3E20 002F0D60 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newIndTevStage J2DMaterialFactory_NS_newIndTevStage: /* 802F3E24 002F0D64 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802F3E28 002F0D68 93 E1 00 2C */ stw r31, 0x2c(r1) /* 802F3E2C 002F0D6C 93 C1 00 28 */ stw r30, 0x28(r1) /* 802F3E30 002F0D70 3C E0 80 3A */ lis r7, lbl_803A1BF4@ha /* 802F3E34 002F0D74 39 07 1B F4 */ addi r8, r7, lbl_803A1BF4@l /* 802F3E38 002F0D78 80 E8 00 00 */ lwz r7, 0(r8) /* 802F3E3C 002F0D7C 80 08 00 04 */ lwz r0, 4(r8) /* 802F3E40 002F0D80 90 E1 00 14 */ stw r7, 0x14(r1) /* 802F3E44 002F0D84 90 01 00 18 */ stw r0, 0x18(r1) /* 802F3E48 002F0D88 80 08 00 08 */ lwz r0, 8(r8) /* 802F3E4C 002F0D8C 90 01 00 1C */ stw r0, 0x1c(r1) /* 802F3E50 002F0D90 8B C1 00 14 */ lbz r30, 0x14(r1) /* 802F3E54 002F0D94 88 01 00 15 */ lbz r0, 0x15(r1) /* 802F3E58 002F0D98 54 1F 10 3A */ slwi r31, r0, 2 /* 802F3E5C 002F0D9C 88 01 00 16 */ lbz r0, 0x16(r1) /* 802F3E60 002F0DA0 54 0C 20 36 */ slwi r12, r0, 4 /* 802F3E64 002F0DA4 88 01 00 18 */ lbz r0, 0x18(r1) /* 802F3E68 002F0DA8 54 0B 40 2E */ slwi r11, r0, 8 /* 802F3E6C 002F0DAC 88 01 00 19 */ lbz r0, 0x19(r1) /* 802F3E70 002F0DB0 54 0A 58 28 */ slwi r10, r0, 0xb /* 802F3E74 002F0DB4 88 01 00 17 */ lbz r0, 0x17(r1) /* 802F3E78 002F0DB8 54 09 80 1E */ slwi r9, r0, 0x10 /* 802F3E7C 002F0DBC 88 01 00 1A */ lbz r0, 0x1a(r1) /* 802F3E80 002F0DC0 54 08 A0 16 */ slwi r8, r0, 0x14 /* 802F3E84 002F0DC4 88 01 00 1C */ lbz r0, 0x1c(r1) /* 802F3E88 002F0DC8 54 07 B0 12 */ slwi r7, r0, 0x16 /* 802F3E8C 002F0DCC 88 01 00 1B */ lbz r0, 0x1b(r1) /* 802F3E90 002F0DD0 54 00 A8 14 */ slwi r0, r0, 0x15 /* 802F3E94 002F0DD4 7C E0 03 78 */ or r0, r7, r0 /* 802F3E98 002F0DD8 7D 00 03 78 */ or r0, r8, r0 /* 802F3E9C 002F0DDC 7D 20 03 78 */ or r0, r9, r0 /* 802F3EA0 002F0DE0 7D 40 03 78 */ or r0, r10, r0 /* 802F3EA4 002F0DE4 7D 60 03 78 */ or r0, r11, r0 /* 802F3EA8 002F0DE8 7D 80 03 78 */ or r0, r12, r0 /* 802F3EAC 002F0DEC 7F E0 03 78 */ or r0, r31, r0 /* 802F3EB0 002F0DF0 7F C7 03 78 */ or r7, r30, r0 /* 802F3EB4 002F0DF4 80 84 00 0C */ lwz r4, 0xc(r4) /* 802F3EB8 002F0DF8 28 04 00 00 */ cmplwi r4, 0 /* 802F3EBC 002F0DFC 41 82 00 A8 */ beq lbl_802F3F64 /* 802F3EC0 002F0E00 1C 05 01 28 */ mulli r0, r5, 0x128 /* 802F3EC4 002F0E04 7C A4 02 14 */ add r5, r4, r0 /* 802F3EC8 002F0E08 88 05 00 00 */ lbz r0, 0(r5) /* 802F3ECC 002F0E0C 28 00 00 01 */ cmplwi r0, 1 /* 802F3ED0 002F0E10 40 82 00 94 */ bne lbl_802F3F64 /* 802F3ED4 002F0E14 1C 86 00 0C */ mulli r4, r6, 0xc /* 802F3ED8 002F0E18 38 04 00 68 */ addi r0, r4, 0x68 /* 802F3EDC 002F0E1C 7C A5 02 14 */ add r5, r5, r0 /* 802F3EE0 002F0E20 80 85 00 00 */ lwz r4, 0(r5) /* 802F3EE4 002F0E24 80 05 00 04 */ lwz r0, 4(r5) /* 802F3EE8 002F0E28 90 81 00 08 */ stw r4, 8(r1) /* 802F3EEC 002F0E2C 90 01 00 0C */ stw r0, 0xc(r1) /* 802F3EF0 002F0E30 80 05 00 08 */ lwz r0, 8(r5) /* 802F3EF4 002F0E34 90 01 00 10 */ stw r0, 0x10(r1) /* 802F3EF8 002F0E38 89 61 00 08 */ lbz r11, 8(r1) /* 802F3EFC 002F0E3C 88 01 00 09 */ lbz r0, 9(r1) /* 802F3F00 002F0E40 54 0A 10 3A */ slwi r10, r0, 2 /* 802F3F04 002F0E44 88 01 00 0A */ lbz r0, 0xa(r1) /* 802F3F08 002F0E48 54 09 20 36 */ slwi r9, r0, 4 /* 802F3F0C 002F0E4C 88 01 00 0C */ lbz r0, 0xc(r1) /* 802F3F10 002F0E50 54 08 40 2E */ slwi r8, r0, 8 /* 802F3F14 002F0E54 88 01 00 0D */ lbz r0, 0xd(r1) /* 802F3F18 002F0E58 54 07 58 28 */ slwi r7, r0, 0xb /* 802F3F1C 002F0E5C 88 01 00 0B */ lbz r0, 0xb(r1) /* 802F3F20 002F0E60 54 06 80 1E */ slwi r6, r0, 0x10 /* 802F3F24 002F0E64 88 01 00 0E */ lbz r0, 0xe(r1) /* 802F3F28 002F0E68 54 05 A0 16 */ slwi r5, r0, 0x14 /* 802F3F2C 002F0E6C 88 01 00 10 */ lbz r0, 0x10(r1) /* 802F3F30 002F0E70 54 04 B0 12 */ slwi r4, r0, 0x16 /* 802F3F34 002F0E74 88 01 00 0F */ lbz r0, 0xf(r1) /* 802F3F38 002F0E78 54 00 A8 14 */ slwi r0, r0, 0x15 /* 802F3F3C 002F0E7C 7C 80 03 78 */ or r0, r4, r0 /* 802F3F40 002F0E80 7C A0 03 78 */ or r0, r5, r0 /* 802F3F44 002F0E84 7C C0 03 78 */ or r0, r6, r0 /* 802F3F48 002F0E88 7C E0 03 78 */ or r0, r7, r0 /* 802F3F4C 002F0E8C 7D 00 03 78 */ or r0, r8, r0 /* 802F3F50 002F0E90 7D 20 03 78 */ or r0, r9, r0 /* 802F3F54 002F0E94 7D 40 03 78 */ or r0, r10, r0 /* 802F3F58 002F0E98 7D 60 03 78 */ or r0, r11, r0 /* 802F3F5C 002F0E9C 90 03 00 00 */ stw r0, 0(r3) /* 802F3F60 002F0EA0 48 00 00 08 */ b lbl_802F3F68 lbl_802F3F64: /* 802F3F64 002F0EA4 90 E3 00 00 */ stw r7, 0(r3) lbl_802F3F68: /* 802F3F68 002F0EA8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 802F3F6C 002F0EAC 83 C1 00 28 */ lwz r30, 0x28(r1) /* 802F3F70 002F0EB0 38 21 00 30 */ addi r1, r1, 0x30 /* 802F3F74 002F0EB4 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newIndTexCoordScale J2DMaterialFactory_NS_newIndTexCoordScale: /* 802F3F78 002F0EB8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802F3F7C 002F0EBC 88 02 C7 90 */ lbz r0, lbl_80456190-_SDA2_BASE_(r2) /* 802F3F80 002F0EC0 98 01 00 08 */ stb r0, 8(r1) /* 802F3F84 002F0EC4 38 E2 C7 90 */ addi r7, r2, lbl_80456190-_SDA2_BASE_ /* 802F3F88 002F0EC8 88 07 00 01 */ lbz r0, 1(r7) /* 802F3F8C 002F0ECC 98 01 00 09 */ stb r0, 9(r1) /* 802F3F90 002F0ED0 80 84 00 0C */ lwz r4, 0xc(r4) /* 802F3F94 002F0ED4 28 04 00 00 */ cmplwi r4, 0 /* 802F3F98 002F0ED8 41 82 00 38 */ beq lbl_802F3FD0 /* 802F3F9C 002F0EDC 1C 05 01 28 */ mulli r0, r5, 0x128 /* 802F3FA0 002F0EE0 7C A4 02 14 */ add r5, r4, r0 /* 802F3FA4 002F0EE4 88 05 00 00 */ lbz r0, 0(r5) /* 802F3FA8 002F0EE8 28 00 00 01 */ cmplwi r0, 1 /* 802F3FAC 002F0EEC 40 82 00 24 */ bne lbl_802F3FD0 /* 802F3FB0 002F0EF0 54 C4 08 3C */ slwi r4, r6, 1 /* 802F3FB4 002F0EF4 38 84 00 60 */ addi r4, r4, 0x60 /* 802F3FB8 002F0EF8 7C 85 22 14 */ add r4, r5, r4 /* 802F3FBC 002F0EFC 88 04 00 00 */ lbz r0, 0(r4) /* 802F3FC0 002F0F00 98 03 00 00 */ stb r0, 0(r3) /* 802F3FC4 002F0F04 88 04 00 01 */ lbz r0, 1(r4) /* 802F3FC8 002F0F08 98 03 00 01 */ stb r0, 1(r3) /* 802F3FCC 002F0F0C 48 00 00 0C */ b lbl_802F3FD8 lbl_802F3FD0: /* 802F3FD0 002F0F10 A0 01 00 08 */ lhz r0, 8(r1) /* 802F3FD4 002F0F14 B0 03 00 00 */ sth r0, 0(r3) lbl_802F3FD8: /* 802F3FD8 002F0F18 38 21 00 10 */ addi r1, r1, 0x10 /* 802F3FDC 002F0F1C 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newAlphaComp J2DMaterialFactory_NS_newAlphaComp: /* 802F3FE0 002F0F20 80 E4 00 04 */ lwz r7, 4(r4) /* 802F3FE4 002F0F24 80 C4 00 08 */ lwz r6, 8(r4) /* 802F3FE8 002F0F28 54 A0 08 3C */ slwi r0, r5, 1 /* 802F3FEC 002F0F2C 7C 06 02 2E */ lhzx r0, r6, r0 /* 802F3FF0 002F0F30 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F3FF4 002F0F34 7C A7 02 14 */ add r5, r7, r0 /* 802F3FF8 002F0F38 A0 05 00 E2 */ lhz r0, 0xe2(r5) /* 802F3FFC 002F0F3C 28 00 FF FF */ cmplwi r0, 0xffff /* 802F4000 002F0F40 41 82 00 44 */ beq lbl_802F4044 /* 802F4004 002F0F44 80 84 00 50 */ lwz r4, 0x50(r4) /* 802F4008 002F0F48 54 00 1B 78 */ rlwinm r0, r0, 3, 0xd, 0x1c /* 802F400C 002F0F4C 7C C4 02 14 */ add r6, r4, r0 /* 802F4010 002F0F50 88 06 00 00 */ lbz r0, 0(r6) /* 802F4014 002F0F54 88 A6 00 03 */ lbz r5, 3(r6) /* 802F4018 002F0F58 54 04 28 34 */ slwi r4, r0, 5 /* 802F401C 002F0F5C 88 06 00 02 */ lbz r0, 2(r6) /* 802F4020 002F0F60 54 00 1D 78 */ rlwinm r0, r0, 3, 0x15, 0x1c /* 802F4024 002F0F64 7C 80 03 78 */ or r0, r4, r0 /* 802F4028 002F0F68 7C A0 03 78 */ or r0, r5, r0 /* 802F402C 002F0F6C B0 03 00 00 */ sth r0, 0(r3) /* 802F4030 002F0F70 88 06 00 01 */ lbz r0, 1(r6) /* 802F4034 002F0F74 98 03 00 02 */ stb r0, 2(r3) /* 802F4038 002F0F78 88 06 00 04 */ lbz r0, 4(r6) /* 802F403C 002F0F7C 98 03 00 03 */ stb r0, 3(r3) /* 802F4040 002F0F80 4E 80 00 20 */ blr lbl_802F4044: /* 802F4044 002F0F84 A0 02 C7 AE */ lhz r0, lbl_804561AE-_SDA2_BASE_(r2) /* 802F4048 002F0F88 B0 03 00 00 */ sth r0, 0(r3) /* 802F404C 002F0F8C 38 00 00 00 */ li r0, 0 /* 802F4050 002F0F90 98 03 00 02 */ stb r0, 2(r3) /* 802F4054 002F0F94 98 03 00 03 */ stb r0, 3(r3) /* 802F4058 002F0F98 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newBlend J2DMaterialFactory_NS_newBlend: /* 802F405C 002F0F9C 80 E4 00 04 */ lwz r7, 4(r4) /* 802F4060 002F0FA0 80 C4 00 08 */ lwz r6, 8(r4) /* 802F4064 002F0FA4 54 A0 08 3C */ slwi r0, r5, 1 /* 802F4068 002F0FA8 7C 06 02 2E */ lhzx r0, r6, r0 /* 802F406C 002F0FAC 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F4070 002F0FB0 7C A7 02 14 */ add r5, r7, r0 /* 802F4074 002F0FB4 A0 05 00 E4 */ lhz r0, 0xe4(r5) /* 802F4078 002F0FB8 28 00 FF FF */ cmplwi r0, 0xffff /* 802F407C 002F0FBC 41 82 00 34 */ beq lbl_802F40B0 /* 802F4080 002F0FC0 80 84 00 54 */ lwz r4, 0x54(r4) /* 802F4084 002F0FC4 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d /* 802F4088 002F0FC8 7C 84 02 14 */ add r4, r4, r0 /* 802F408C 002F0FCC 88 04 00 00 */ lbz r0, 0(r4) /* 802F4090 002F0FD0 98 03 00 00 */ stb r0, 0(r3) /* 802F4094 002F0FD4 88 04 00 01 */ lbz r0, 1(r4) /* 802F4098 002F0FD8 98 03 00 01 */ stb r0, 1(r3) /* 802F409C 002F0FDC 88 04 00 02 */ lbz r0, 2(r4) /* 802F40A0 002F0FE0 98 03 00 02 */ stb r0, 2(r3) /* 802F40A4 002F0FE4 88 04 00 03 */ lbz r0, 3(r4) /* 802F40A8 002F0FE8 98 03 00 03 */ stb r0, 3(r3) /* 802F40AC 002F0FEC 4E 80 00 20 */ blr lbl_802F40B0: /* 802F40B0 002F0FF0 88 02 C7 A0 */ lbz r0, lbl_804561A0-_SDA2_BASE_(r2) /* 802F40B4 002F0FF4 98 03 00 00 */ stb r0, 0(r3) /* 802F40B8 002F0FF8 38 82 C7 A0 */ addi r4, r2, lbl_804561A0-_SDA2_BASE_ /* 802F40BC 002F0FFC 88 04 00 01 */ lbz r0, 1(r4) /* 802F40C0 002F1000 98 03 00 01 */ stb r0, 1(r3) /* 802F40C4 002F1004 88 04 00 02 */ lbz r0, 2(r4) /* 802F40C8 002F1008 98 03 00 02 */ stb r0, 2(r3) /* 802F40CC 002F100C 88 04 00 03 */ lbz r0, 3(r4) /* 802F40D0 002F1010 98 03 00 03 */ stb r0, 3(r3) /* 802F40D4 002F1014 4E 80 00 20 */ blr .global J2DMaterialFactory_NS_newDither J2DMaterialFactory_NS_newDither: /* 802F40D8 002F1018 80 C3 00 04 */ lwz r6, 4(r3) /* 802F40DC 002F101C 80 A3 00 08 */ lwz r5, 8(r3) /* 802F40E0 002F1020 54 80 08 3C */ slwi r0, r4, 1 /* 802F40E4 002F1024 7C 05 02 2E */ lhzx r0, r5, r0 /* 802F40E8 002F1028 1C 00 00 E8 */ mulli r0, r0, 0xe8 /* 802F40EC 002F102C 7C 86 02 14 */ add r4, r6, r0 /* 802F40F0 002F1030 88 04 00 05 */ lbz r0, 5(r4) /* 802F40F4 002F1034 28 00 00 FF */ cmplwi r0, 0xff /* 802F40F8 002F1038 41 82 00 10 */ beq lbl_802F4108 /* 802F40FC 002F103C 80 63 00 58 */ lwz r3, 0x58(r3) /* 802F4100 002F1040 7C 63 00 AE */ lbzx r3, r3, r0 /* 802F4104 002F1044 4E 80 00 20 */ blr lbl_802F4108: /* 802F4108 002F1048 38 60 00 00 */ li r3, 0 /* 802F410C 002F104C 4E 80 00 20 */ blr .global J2DTevStage_X1_ J2DTevStage_X1_: /* 802F4110 002F1050 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802F4114 002F1054 7C 08 02 A6 */ mflr r0 /* 802F4118 002F1058 90 01 00 14 */ stw r0, 0x14(r1) /* 802F411C 002F105C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802F4120 002F1060 7C 7F 1B 78 */ mr r31, r3 /* 802F4124 002F1064 4B FF D8 85 */ bl J2DTevStage_NS_setTevStageInfo /* 802F4128 002F1068 88 1F 00 07 */ lbz r0, 7(r31) /* 802F412C 002F106C 54 04 07 B6 */ rlwinm r4, r0, 0, 0x1e, 0x1b /* 802F4130 002F1070 38 62 C7 98 */ addi r3, r2, lbl_80456198-_SDA2_BASE_ /* 802F4134 002F1074 88 03 00 01 */ lbz r0, 1(r3) /* 802F4138 002F1078 54 00 15 BA */ rlwinm r0, r0, 2, 0x16, 0x1d /* 802F413C 002F107C 7C 80 03 78 */ or r0, r4, r0 /* 802F4140 002F1080 98 1F 00 07 */ stb r0, 7(r31) /* 802F4144 002F1084 88 1F 00 07 */ lbz r0, 7(r31) /* 802F4148 002F1088 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d /* 802F414C 002F108C 88 02 C7 98 */ lbz r0, lbl_80456198-_SDA2_BASE_(r2) /* 802F4150 002F1090 7C 60 03 78 */ or r0, r3, r0 /* 802F4154 002F1094 98 1F 00 07 */ stb r0, 7(r31) /* 802F4158 002F1098 7F E3 FB 78 */ mr r3, r31 /* 802F415C 002F109C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802F4160 002F10A0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802F4164 002F10A4 7C 08 03 A6 */ mtlr r0 /* 802F4168 002F10A8 38 21 00 10 */ addi r1, r1, 0x10 /* 802F416C 002F10AC 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X14_ JSUConvertOffsetToPtr_X14_: /* 802F4170 002F10B0 28 04 00 00 */ cmplwi r4, 0 /* 802F4174 002F10B4 40 82 00 0C */ bne lbl_802F4180 /* 802F4178 002F10B8 38 60 00 00 */ li r3, 0 /* 802F417C 002F10BC 4E 80 00 20 */ blr lbl_802F4180: /* 802F4180 002F10C0 7C 63 22 14 */ add r3, r3, r4 /* 802F4184 002F10C4 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X15_ JSUConvertOffsetToPtr_X15_: /* 802F4188 002F10C8 28 04 00 00 */ cmplwi r4, 0 /* 802F418C 002F10CC 40 82 00 0C */ bne lbl_802F4198 /* 802F4190 002F10D0 38 60 00 00 */ li r3, 0 /* 802F4194 002F10D4 4E 80 00 20 */ blr lbl_802F4198: /* 802F4198 002F10D8 7C 63 22 14 */ add r3, r3, r4 /* 802F419C 002F10DC 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X16_ JSUConvertOffsetToPtr_X16_: /* 802F41A0 002F10E0 28 04 00 00 */ cmplwi r4, 0 /* 802F41A4 002F10E4 40 82 00 0C */ bne lbl_802F41B0 /* 802F41A8 002F10E8 38 60 00 00 */ li r3, 0 /* 802F41AC 002F10EC 4E 80 00 20 */ blr lbl_802F41B0: /* 802F41B0 002F10F0 7C 63 22 14 */ add r3, r3, r4 /* 802F41B4 002F10F4 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X17_ JSUConvertOffsetToPtr_X17_: /* 802F41B8 002F10F8 28 04 00 00 */ cmplwi r4, 0 /* 802F41BC 002F10FC 40 82 00 0C */ bne lbl_802F41C8 /* 802F41C0 002F1100 38 60 00 00 */ li r3, 0 /* 802F41C4 002F1104 4E 80 00 20 */ blr lbl_802F41C8: /* 802F41C8 002F1108 7C 63 22 14 */ add r3, r3, r4 /* 802F41CC 002F110C 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X18_ JSUConvertOffsetToPtr_X18_: /* 802F41D0 002F1110 28 04 00 00 */ cmplwi r4, 0 /* 802F41D4 002F1114 40 82 00 0C */ bne lbl_802F41E0 /* 802F41D8 002F1118 38 60 00 00 */ li r3, 0 /* 802F41DC 002F111C 4E 80 00 20 */ blr lbl_802F41E0: /* 802F41E0 002F1120 7C 63 22 14 */ add r3, r3, r4 /* 802F41E4 002F1124 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X19_ JSUConvertOffsetToPtr_X19_: /* 802F41E8 002F1128 28 04 00 00 */ cmplwi r4, 0 /* 802F41EC 002F112C 40 82 00 0C */ bne lbl_802F41F8 /* 802F41F0 002F1130 38 60 00 00 */ li r3, 0 /* 802F41F4 002F1134 4E 80 00 20 */ blr lbl_802F41F8: /* 802F41F8 002F1138 7C 63 22 14 */ add r3, r3, r4 /* 802F41FC 002F113C 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X20_ JSUConvertOffsetToPtr_X20_: /* 802F4200 002F1140 28 04 00 00 */ cmplwi r4, 0 /* 802F4204 002F1144 40 82 00 0C */ bne lbl_802F4210 /* 802F4208 002F1148 38 60 00 00 */ li r3, 0 /* 802F420C 002F114C 4E 80 00 20 */ blr lbl_802F4210: /* 802F4210 002F1150 7C 63 22 14 */ add r3, r3, r4 /* 802F4214 002F1154 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X21_ JSUConvertOffsetToPtr_X21_: /* 802F4218 002F1158 28 04 00 00 */ cmplwi r4, 0 /* 802F421C 002F115C 40 82 00 0C */ bne lbl_802F4228 /* 802F4220 002F1160 38 60 00 00 */ li r3, 0 /* 802F4224 002F1164 4E 80 00 20 */ blr lbl_802F4228: /* 802F4228 002F1168 7C 63 22 14 */ add r3, r3, r4 /* 802F422C 002F116C 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X22_ JSUConvertOffsetToPtr_X22_: /* 802F4230 002F1170 28 04 00 00 */ cmplwi r4, 0 /* 802F4234 002F1174 40 82 00 0C */ bne lbl_802F4240 /* 802F4238 002F1178 38 60 00 00 */ li r3, 0 /* 802F423C 002F117C 4E 80 00 20 */ blr lbl_802F4240: /* 802F4240 002F1180 7C 63 22 14 */ add r3, r3, r4 /* 802F4244 002F1184 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X23_ JSUConvertOffsetToPtr_X23_: /* 802F4248 002F1188 28 04 00 00 */ cmplwi r4, 0 /* 802F424C 002F118C 40 82 00 0C */ bne lbl_802F4258 /* 802F4250 002F1190 38 60 00 00 */ li r3, 0 /* 802F4254 002F1194 4E 80 00 20 */ blr lbl_802F4258: /* 802F4258 002F1198 7C 63 22 14 */ add r3, r3, r4 /* 802F425C 002F119C 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X24_ JSUConvertOffsetToPtr_X24_: /* 802F4260 002F11A0 28 04 00 00 */ cmplwi r4, 0 /* 802F4264 002F11A4 40 82 00 0C */ bne lbl_802F4270 /* 802F4268 002F11A8 38 60 00 00 */ li r3, 0 /* 802F426C 002F11AC 4E 80 00 20 */ blr lbl_802F4270: /* 802F4270 002F11B0 7C 63 22 14 */ add r3, r3, r4 /* 802F4274 002F11B4 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X25_ JSUConvertOffsetToPtr_X25_: /* 802F4278 002F11B8 28 04 00 00 */ cmplwi r4, 0 /* 802F427C 002F11BC 40 82 00 0C */ bne lbl_802F4288 /* 802F4280 002F11C0 38 60 00 00 */ li r3, 0 /* 802F4284 002F11C4 4E 80 00 20 */ blr lbl_802F4288: /* 802F4288 002F11C8 7C 63 22 14 */ add r3, r3, r4 /* 802F428C 002F11CC 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X26_ JSUConvertOffsetToPtr_X26_: /* 802F4290 002F11D0 28 04 00 00 */ cmplwi r4, 0 /* 802F4294 002F11D4 40 82 00 0C */ bne lbl_802F42A0 /* 802F4298 002F11D8 38 60 00 00 */ li r3, 0 /* 802F429C 002F11DC 4E 80 00 20 */ blr lbl_802F42A0: /* 802F42A0 002F11E0 7C 63 22 14 */ add r3, r3, r4 /* 802F42A4 002F11E4 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X27_ JSUConvertOffsetToPtr_X27_: /* 802F42A8 002F11E8 28 04 00 00 */ cmplwi r4, 0 /* 802F42AC 002F11EC 40 82 00 0C */ bne lbl_802F42B8 /* 802F42B0 002F11F0 38 60 00 00 */ li r3, 0 /* 802F42B4 002F11F4 4E 80 00 20 */ blr lbl_802F42B8: /* 802F42B8 002F11F8 7C 63 22 14 */ add r3, r3, r4 /* 802F42BC 002F11FC 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X28_ JSUConvertOffsetToPtr_X28_: /* 802F42C0 002F1200 28 04 00 00 */ cmplwi r4, 0 /* 802F42C4 002F1204 40 82 00 0C */ bne lbl_802F42D0 /* 802F42C8 002F1208 38 60 00 00 */ li r3, 0 /* 802F42CC 002F120C 4E 80 00 20 */ blr lbl_802F42D0: /* 802F42D0 002F1210 7C 63 22 14 */ add r3, r3, r4 /* 802F42D4 002F1214 4E 80 00 20 */ blr .global JSUConvertOffsetToPtr_X29_ JSUConvertOffsetToPtr_X29_: /* 802F42D8 002F1218 28 04 00 00 */ cmplwi r4, 0 /* 802F42DC 002F121C 40 82 00 0C */ bne lbl_802F42E8 /* 802F42E0 002F1220 38 60 00 00 */ li r3, 0 /* 802F42E4 002F1224 4E 80 00 20 */ blr lbl_802F42E8: /* 802F42E8 002F1228 7C 63 22 14 */ add r3, r3, r4 /* 802F42EC 002F122C 4E 80 00 20 */ blr