prime/asm/Weapons/CDecalDataFactory.s

1298 lines
60 KiB
ArmAsm

.include "macros.inc"
.section .data
.global lbl_803EC548
lbl_803EC548:
# ROM: 0x3E9548
.4byte 0
.4byte 0
.4byte sub_802b4218
.global lbl_803EC554
lbl_803EC554:
# ROM: 0x3E9554
.4byte 0
.4byte 0
.4byte __dt__12CRealElementFv
.4byte 0
.4byte IsConstant__12CRealElementCFv
.global lbl_803EC568
lbl_803EC568:
# ROM: 0x3E9568
.4byte 0
.4byte 0
.4byte __dt__10CUVElementFv
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.global lbl_803EC584
lbl_803EC584:
# ROM: 0x3E9584
.4byte 0
.4byte 0
.4byte __dt__11CIntElement
.4byte 0
.global lbl_803EC594
lbl_803EC594:
# ROM: 0x3E9594
.4byte 0
.4byte 0
.4byte __dt__14CVectorElement
.4byte 0
.4byte IsFastConstant__14CVectorElementCFv
.global lbl_803EC5A8
lbl_803EC5A8:
# ROM: 0x3E95A8
.4byte 0
.4byte 0
.4byte 0
.global lbl_803EC5B4
lbl_803EC5B4:
# ROM: 0x3E95B4
.4byte 0
.4byte 0
.4byte __dt__13CColorElement
.4byte 0
.4byte 0
.section .text, "ax"
.global CreateDPSM__17CDecalDataFactoryFP17CDecalDescriptionR12CInputStreamP11CSimplePool
CreateDPSM__17CDecalDataFactoryFP17CDecalDescriptionR12CInputStreamP11CSimplePool:
/* 802B3780 002B06E0 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 802B3784 002B06E4 7C 08 02 A6 */ mflr r0
/* 802B3788 002B06E8 90 01 00 74 */ stw r0, 0x74(r1)
/* 802B378C 002B06EC BF 41 00 58 */ stmw r26, 0x58(r1)
/* 802B3790 002B06F0 7C 7B 1B 78 */ mr r27, r3
/* 802B3794 002B06F4 7C 9C 23 78 */ mr r28, r4
/* 802B3798 002B06F8 7C BD 2B 78 */ mr r29, r5
/* 802B379C 002B06FC 38 61 00 08 */ addi r3, r1, 8
/* 802B37A0 002B0700 3B C0 00 00 */ li r30, 0
/* 802B37A4 002B0704 38 80 00 63 */ li r4, 0x63
/* 802B37A8 002B0708 48 05 EE 45 */ bl __ct__9CRandom16FUi
/* 802B37AC 002B070C 3C 60 32 52 */ lis r3, 0x32524F54@ha
/* 802B37B0 002B0710 3B E3 4F 54 */ addi r31, r3, 0x32524F54@l
/* 802B37B4 002B0714 48 00 05 30 */ b lbl_802B3CE4
lbl_802B37B8:
/* 802B37B8 002B0718 38 61 00 40 */ addi r3, r1, 0x40
/* 802B37BC 002B071C 38 81 00 08 */ addi r4, r1, 8
/* 802B37C0 002B0720 48 05 EE C1 */ bl __ct__13CGlobalRandomFR9CRandom16
/* 802B37C4 002B0724 7F 83 E3 78 */ mr r3, r28
/* 802B37C8 002B0728 48 07 4C 95 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B37CC 002B072C 7C 65 1B 78 */ mr r5, r3
/* 802B37D0 002B0730 38 C0 00 00 */ li r6, 0
/* 802B37D4 002B0734 7C 05 F8 00 */ cmpw r5, r31
/* 802B37D8 002B0738 41 82 01 AC */ beq lbl_802B3984
/* 802B37DC 002B073C 40 80 00 E0 */ bge lbl_802B38BC
/* 802B37E0 002B0740 3C 60 31 53 */ lis r3, 0x31535A45@ha
/* 802B37E4 002B0744 38 03 5A 45 */ addi r0, r3, 0x31535A45@l
/* 802B37E8 002B0748 7C 05 00 00 */ cmpw r5, r0
/* 802B37EC 002B074C 41 82 01 94 */ beq lbl_802B3980
/* 802B37F0 002B0750 40 80 00 68 */ bge lbl_802B3858
/* 802B37F4 002B0754 3C 60 31 4C */ lis r3, 0x314C4654@ha
/* 802B37F8 002B0758 38 03 46 54 */ addi r0, r3, 0x314C4654@l
/* 802B37FC 002B075C 7C 05 00 00 */ cmpw r5, r0
/* 802B3800 002B0760 41 82 01 80 */ beq lbl_802B3980
/* 802B3804 002B0764 40 80 00 2C */ bge lbl_802B3830
/* 802B3808 002B0768 3C 60 31 43 */ lis r3, 0x31434C52@ha
/* 802B380C 002B076C 38 03 4C 52 */ addi r0, r3, 0x31434C52@l
/* 802B3810 002B0770 7C 05 00 00 */ cmpw r5, r0
/* 802B3814 002B0774 41 82 01 6C */ beq lbl_802B3980
/* 802B3818 002B0778 40 80 04 AC */ bge lbl_802B3CC4
/* 802B381C 002B077C 3C 60 31 41 */ lis r3, 0x31414444@ha
/* 802B3820 002B0780 38 03 44 44 */ addi r0, r3, 0x31414444@l
/* 802B3824 002B0784 7C 05 00 00 */ cmpw r5, r0
/* 802B3828 002B0788 41 82 01 58 */ beq lbl_802B3980
/* 802B382C 002B078C 48 00 04 98 */ b lbl_802B3CC4
lbl_802B3830:
/* 802B3830 002B0790 3C 60 31 52 */ lis r3, 0x31524F54@ha
/* 802B3834 002B0794 38 03 4F 54 */ addi r0, r3, 0x31524F54@l
/* 802B3838 002B0798 7C 05 00 00 */ cmpw r5, r0
/* 802B383C 002B079C 41 82 01 44 */ beq lbl_802B3980
/* 802B3840 002B07A0 40 80 04 84 */ bge lbl_802B3CC4
/* 802B3844 002B07A4 3C 60 31 4F */ lis r3, 0x314F4646@ha
/* 802B3848 002B07A8 38 03 46 46 */ addi r0, r3, 0x314F4646@l
/* 802B384C 002B07AC 7C 05 00 00 */ cmpw r5, r0
/* 802B3850 002B07B0 41 82 01 30 */ beq lbl_802B3980
/* 802B3854 002B07B4 48 00 04 70 */ b lbl_802B3CC4
lbl_802B3858:
/* 802B3858 002B07B8 3C 60 32 43 */ lis r3, 0x32434C52@ha
/* 802B385C 002B07BC 38 03 4C 52 */ addi r0, r3, 0x32434C52@l
/* 802B3860 002B07C0 7C 05 00 00 */ cmpw r5, r0
/* 802B3864 002B07C4 41 82 01 20 */ beq lbl_802B3984
/* 802B3868 002B07C8 40 80 00 2C */ bge lbl_802B3894
/* 802B386C 002B07CC 3C 60 32 41 */ lis r3, 0x32414444@ha
/* 802B3870 002B07D0 38 03 44 44 */ addi r0, r3, 0x32414444@l
/* 802B3874 002B07D4 7C 05 00 00 */ cmpw r5, r0
/* 802B3878 002B07D8 41 82 01 0C */ beq lbl_802B3984
/* 802B387C 002B07DC 40 80 04 48 */ bge lbl_802B3CC4
/* 802B3880 002B07E0 3C 60 31 54 */ lis r3, 0x31544558@ha
/* 802B3884 002B07E4 38 03 45 58 */ addi r0, r3, 0x31544558@l
/* 802B3888 002B07E8 7C 05 00 00 */ cmpw r5, r0
/* 802B388C 002B07EC 41 82 00 F4 */ beq lbl_802B3980
/* 802B3890 002B07F0 48 00 04 34 */ b lbl_802B3CC4
lbl_802B3894:
/* 802B3894 002B07F4 3C 60 32 4F */ lis r3, 0x324F4646@ha
/* 802B3898 002B07F8 38 03 46 46 */ addi r0, r3, 0x324F4646@l
/* 802B389C 002B07FC 7C 05 00 00 */ cmpw r5, r0
/* 802B38A0 002B0800 41 82 00 E4 */ beq lbl_802B3984
/* 802B38A4 002B0804 40 80 04 20 */ bge lbl_802B3CC4
/* 802B38A8 002B0808 3C 60 32 4C */ lis r3, 0x324C4654@ha
/* 802B38AC 002B080C 38 03 46 54 */ addi r0, r3, 0x324C4654@l
/* 802B38B0 002B0810 7C 05 00 00 */ cmpw r5, r0
/* 802B38B4 002B0814 41 82 00 D0 */ beq lbl_802B3984
/* 802B38B8 002B0818 48 00 04 0C */ b lbl_802B3CC4
lbl_802B38BC:
/* 802B38BC 002B081C 3C 80 44 4D */ lis r4, 0x444D444C@ha
/* 802B38C0 002B0820 38 04 44 4C */ addi r0, r4, 0x444D444C@l
/* 802B38C4 002B0824 7C 05 00 00 */ cmpw r5, r0
/* 802B38C8 002B0828 41 82 00 E0 */ beq lbl_802B39A8
/* 802B38CC 002B082C 40 80 00 60 */ bge lbl_802B392C
/* 802B38D0 002B0830 3C 60 44 4C */ lis r3, 0x444C4654@ha
/* 802B38D4 002B0834 38 03 46 54 */ addi r0, r3, 0x444C4654@l
/* 802B38D8 002B0838 7C 05 00 00 */ cmpw r5, r0
/* 802B38DC 002B083C 41 82 02 98 */ beq lbl_802B3B74
/* 802B38E0 002B0840 40 80 00 2C */ bge lbl_802B390C
/* 802B38E4 002B0844 3C 60 32 54 */ lis r3, 0x32544558@ha
/* 802B38E8 002B0848 38 03 45 58 */ addi r0, r3, 0x32544558@l
/* 802B38EC 002B084C 7C 05 00 00 */ cmpw r5, r0
/* 802B38F0 002B0850 41 82 00 94 */ beq lbl_802B3984
/* 802B38F4 002B0854 40 80 03 D0 */ bge lbl_802B3CC4
/* 802B38F8 002B0858 3C 60 32 53 */ lis r3, 0x32535A45@ha
/* 802B38FC 002B085C 38 03 5A 45 */ addi r0, r3, 0x32535A45@l
/* 802B3900 002B0860 7C 05 00 00 */ cmpw r5, r0
/* 802B3904 002B0864 41 82 00 80 */ beq lbl_802B3984
/* 802B3908 002B0868 48 00 03 BC */ b lbl_802B3CC4
lbl_802B390C:
/* 802B390C 002B086C 38 04 43 4C */ addi r0, r4, 0x434c
/* 802B3910 002B0870 7C 05 00 00 */ cmpw r5, r0
/* 802B3914 002B0874 41 82 03 40 */ beq lbl_802B3C54
/* 802B3918 002B0878 40 80 03 AC */ bge lbl_802B3CC4
/* 802B391C 002B087C 38 04 41 42 */ addi r0, r4, 0x4142
/* 802B3920 002B0880 7C 05 00 00 */ cmpw r5, r0
/* 802B3924 002B0884 41 82 03 68 */ beq lbl_802B3C8C
/* 802B3928 002B0888 48 00 03 9C */ b lbl_802B3CC4
lbl_802B392C:
/* 802B392C 002B088C 38 04 52 54 */ addi r0, r4, 0x5254
/* 802B3930 002B0890 7C 05 00 00 */ cmpw r5, r0
/* 802B3934 002B0894 41 82 02 B0 */ beq lbl_802B3BE4
/* 802B3938 002B0898 40 80 00 24 */ bge lbl_802B395C
/* 802B393C 002B089C 38 04 4F 50 */ addi r0, r4, 0x4f50
/* 802B3940 002B08A0 7C 05 00 00 */ cmpw r5, r0
/* 802B3944 002B08A4 41 82 02 68 */ beq lbl_802B3BAC
/* 802B3948 002B08A8 40 80 03 7C */ bge lbl_802B3CC4
/* 802B394C 002B08AC 38 04 4F 4F */ addi r0, r4, 0x4f4f
/* 802B3950 002B08B0 7C 05 00 00 */ cmpw r5, r0
/* 802B3954 002B08B4 40 80 03 50 */ bge lbl_802B3CA4
/* 802B3958 002B08B8 48 00 03 6C */ b lbl_802B3CC4
lbl_802B395C:
/* 802B395C 002B08BC 3C 60 5F 45 */ lis r3, 0x5F454E44@ha
/* 802B3960 002B08C0 38 03 4E 44 */ addi r0, r3, 0x5F454E44@l
/* 802B3964 002B08C4 7C 05 00 00 */ cmpw r5, r0
/* 802B3968 002B08C8 41 82 03 54 */ beq lbl_802B3CBC
/* 802B396C 002B08CC 40 80 03 58 */ bge lbl_802B3CC4
/* 802B3970 002B08D0 38 04 53 43 */ addi r0, r4, 0x5343
/* 802B3974 002B08D4 7C 05 00 00 */ cmpw r5, r0
/* 802B3978 002B08D8 41 82 02 A4 */ beq lbl_802B3C1C
/* 802B397C 002B08DC 48 00 03 48 */ b lbl_802B3CC4
lbl_802B3980:
/* 802B3980 002B08E0 38 C0 00 01 */ li r6, 1
lbl_802B3984:
/* 802B3984 002B08E4 54 C0 06 3F */ clrlwi. r0, r6, 0x18
/* 802B3988 002B08E8 41 82 00 0C */ beq lbl_802B3994
/* 802B398C 002B08EC 7F 66 DB 78 */ mr r6, r27
/* 802B3990 002B08F0 48 00 00 08 */ b lbl_802B3998
lbl_802B3994:
/* 802B3994 002B08F4 38 DB 00 1C */ addi r6, r27, 0x1c
lbl_802B3998:
/* 802B3998 002B08F8 7F 83 E3 78 */ mr r3, r28
/* 802B399C 002B08FC 7F A4 EB 78 */ mr r4, r29
/* 802B39A0 002B0900 48 00 04 85 */ bl GetQuadDecalInfo__17CDecalDataFactoryFR12CInputStreamP11CSimplePoolUiRQ217CDecalDescription10SQuadDescr
/* 802B39A4 002B0904 48 00 03 34 */ b lbl_802B3CD8
lbl_802B39A8:
/* 802B39A8 002B0908 7F 84 E3 78 */ mr r4, r28
/* 802B39AC 002B090C 7F A5 EB 78 */ mr r5, r29
/* 802B39B0 002B0910 38 61 00 28 */ addi r3, r1, 0x28
/* 802B39B4 002B0914 48 07 10 2D */ bl GetModel__20CParticleDataFactoryFR12CInputStreamP11CSimplePool
/* 802B39B8 002B0918 88 01 00 30 */ lbz r0, 0x30(r1)
/* 802B39BC 002B091C 28 00 00 00 */ cmplwi r0, 0
/* 802B39C0 002B0920 98 01 00 3C */ stb r0, 0x3c(r1)
/* 802B39C4 002B0924 41 82 00 14 */ beq lbl_802B39D8
/* 802B39C8 002B0928 34 61 00 34 */ addic. r3, r1, 0x34
/* 802B39CC 002B092C 38 81 00 28 */ addi r4, r1, 0x28
/* 802B39D0 002B0930 41 82 00 08 */ beq lbl_802B39D8
/* 802B39D4 002B0934 48 08 D4 D5 */ bl __ct__6CTokenFRC6CToken
lbl_802B39D8:
/* 802B39D8 002B0938 88 01 00 30 */ lbz r0, 0x30(r1)
/* 802B39DC 002B093C 28 00 00 00 */ cmplwi r0, 0
/* 802B39E0 002B0940 41 82 00 14 */ beq lbl_802B39F4
/* 802B39E4 002B0944 34 61 00 28 */ addic. r3, r1, 0x28
/* 802B39E8 002B0948 41 82 00 0C */ beq lbl_802B39F4
/* 802B39EC 002B094C 38 80 00 00 */ li r4, 0
/* 802B39F0 002B0950 48 08 D4 51 */ bl __dt__6CTokenFv
lbl_802B39F4:
/* 802B39F4 002B0954 88 01 00 3C */ lbz r0, 0x3c(r1)
/* 802B39F8 002B0958 38 60 00 00 */ li r3, 0
/* 802B39FC 002B095C 98 61 00 30 */ stb r3, 0x30(r1)
/* 802B3A00 002B0960 28 00 00 00 */ cmplwi r0, 0
/* 802B3A04 002B0964 41 82 00 88 */ beq lbl_802B3A8C
/* 802B3A08 002B0968 3B 41 00 1C */ addi r26, r1, 0x1c
/* 802B3A0C 002B096C 38 81 00 34 */ addi r4, r1, 0x34
/* 802B3A10 002B0970 7F 43 D3 78 */ mr r3, r26
/* 802B3A14 002B0974 48 08 D4 95 */ bl __ct__6CTokenFRC6CToken
/* 802B3A18 002B0978 7F 43 D3 78 */ mr r3, r26
/* 802B3A1C 002B097C 48 08 D3 F1 */ bl GetObj__6CTokenFv
/* 802B3A20 002B0980 80 03 00 04 */ lwz r0, 4(r3)
/* 802B3A24 002B0984 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B3A28 002B0988 88 1B 00 44 */ lbz r0, 0x44(r27)
/* 802B3A2C 002B098C 28 00 00 00 */ cmplwi r0, 0
/* 802B3A30 002B0990 40 82 00 34 */ bne lbl_802B3A64
/* 802B3A34 002B0994 37 5B 00 38 */ addic. r26, r27, 0x38
/* 802B3A38 002B0998 41 82 00 20 */ beq lbl_802B3A58
/* 802B3A3C 002B099C 7F 43 D3 78 */ mr r3, r26
/* 802B3A40 002B09A0 38 81 00 1C */ addi r4, r1, 0x1c
/* 802B3A44 002B09A4 48 08 D4 65 */ bl __ct__6CTokenFRC6CToken
/* 802B3A48 002B09A8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B3A4C 002B09AC 7F 43 D3 78 */ mr r3, r26
/* 802B3A50 002B09B0 90 1A 00 08 */ stw r0, 8(r26)
/* 802B3A54 002B09B4 48 08 D3 31 */ bl Lock__6CTokenFv
lbl_802B3A58:
/* 802B3A58 002B09B8 38 00 00 01 */ li r0, 1
/* 802B3A5C 002B09BC 98 1B 00 44 */ stb r0, 0x44(r27)
/* 802B3A60 002B09C0 48 00 00 1C */ b lbl_802B3A7C
lbl_802B3A64:
/* 802B3A64 002B09C4 3B 5B 00 38 */ addi r26, r27, 0x38
/* 802B3A68 002B09C8 38 81 00 1C */ addi r4, r1, 0x1c
/* 802B3A6C 002B09CC 7F 43 D3 78 */ mr r3, r26
/* 802B3A70 002B09D0 48 08 D2 55 */ bl __as__6CTokenFRC6CToken
/* 802B3A74 002B09D4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B3A78 002B09D8 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B3A7C:
/* 802B3A7C 002B09DC 38 61 00 1C */ addi r3, r1, 0x1c
/* 802B3A80 002B09E0 38 80 00 00 */ li r4, 0
/* 802B3A84 002B09E4 48 08 D3 BD */ bl __dt__6CTokenFv
/* 802B3A88 002B09E8 48 00 00 C4 */ b lbl_802B3B4C
lbl_802B3A8C:
/* 802B3A8C 002B09EC 3B 5B 00 38 */ addi r26, r27, 0x38
/* 802B3A90 002B09F0 38 81 00 0C */ addi r4, r1, 0xc
/* 802B3A94 002B09F4 7C 1A 20 40 */ cmplw r26, r4
/* 802B3A98 002B09F8 98 61 00 18 */ stb r3, 0x18(r1)
/* 802B3A9C 002B09FC 41 82 00 84 */ beq lbl_802B3B20
/* 802B3AA0 002B0A00 28 03 00 00 */ cmplwi r3, 0
/* 802B3AA4 002B0A04 41 82 00 50 */ beq lbl_802B3AF4
/* 802B3AA8 002B0A08 88 1B 00 44 */ lbz r0, 0x44(r27)
/* 802B3AAC 002B0A0C 28 00 00 00 */ cmplwi r0, 0
/* 802B3AB0 002B0A10 40 82 00 30 */ bne lbl_802B3AE0
/* 802B3AB4 002B0A14 37 5B 00 38 */ addic. r26, r27, 0x38
/* 802B3AB8 002B0A18 41 82 00 1C */ beq lbl_802B3AD4
/* 802B3ABC 002B0A1C 7F 43 D3 78 */ mr r3, r26
/* 802B3AC0 002B0A20 48 08 D3 E9 */ bl __ct__6CTokenFRC6CToken
/* 802B3AC4 002B0A24 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B3AC8 002B0A28 7F 43 D3 78 */ mr r3, r26
/* 802B3ACC 002B0A2C 90 1A 00 08 */ stw r0, 8(r26)
/* 802B3AD0 002B0A30 48 08 D2 B5 */ bl Lock__6CTokenFv
lbl_802B3AD4:
/* 802B3AD4 002B0A34 38 00 00 01 */ li r0, 1
/* 802B3AD8 002B0A38 98 1B 00 44 */ stb r0, 0x44(r27)
/* 802B3ADC 002B0A3C 48 00 00 44 */ b lbl_802B3B20
lbl_802B3AE0:
/* 802B3AE0 002B0A40 7F 43 D3 78 */ mr r3, r26
/* 802B3AE4 002B0A44 48 08 D1 E1 */ bl __as__6CTokenFRC6CToken
/* 802B3AE8 002B0A48 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B3AEC 002B0A4C 90 1A 00 08 */ stw r0, 8(r26)
/* 802B3AF0 002B0A50 48 00 00 30 */ b lbl_802B3B20
lbl_802B3AF4:
/* 802B3AF4 002B0A54 88 1B 00 44 */ lbz r0, 0x44(r27)
/* 802B3AF8 002B0A58 28 00 00 00 */ cmplwi r0, 0
/* 802B3AFC 002B0A5C 41 82 00 1C */ beq lbl_802B3B18
/* 802B3B00 002B0A60 34 7B 00 38 */ addic. r3, r27, 0x38
/* 802B3B04 002B0A64 41 82 00 14 */ beq lbl_802B3B18
/* 802B3B08 002B0A68 28 03 00 00 */ cmplwi r3, 0
/* 802B3B0C 002B0A6C 41 82 00 0C */ beq lbl_802B3B18
/* 802B3B10 002B0A70 38 80 00 00 */ li r4, 0
/* 802B3B14 002B0A74 48 08 D3 2D */ bl __dt__6CTokenFv
lbl_802B3B18:
/* 802B3B18 002B0A78 38 00 00 00 */ li r0, 0
/* 802B3B1C 002B0A7C 98 1B 00 44 */ stb r0, 0x44(r27)
lbl_802B3B20:
/* 802B3B20 002B0A80 88 01 00 18 */ lbz r0, 0x18(r1)
/* 802B3B24 002B0A84 28 00 00 00 */ cmplwi r0, 0
/* 802B3B28 002B0A88 41 82 00 1C */ beq lbl_802B3B44
/* 802B3B2C 002B0A8C 34 61 00 0C */ addic. r3, r1, 0xc
/* 802B3B30 002B0A90 41 82 00 14 */ beq lbl_802B3B44
/* 802B3B34 002B0A94 28 03 00 00 */ cmplwi r3, 0
/* 802B3B38 002B0A98 41 82 00 0C */ beq lbl_802B3B44
/* 802B3B3C 002B0A9C 38 80 00 00 */ li r4, 0
/* 802B3B40 002B0AA0 48 08 D3 01 */ bl __dt__6CTokenFv
lbl_802B3B44:
/* 802B3B44 002B0AA4 38 00 00 00 */ li r0, 0
/* 802B3B48 002B0AA8 98 01 00 18 */ stb r0, 0x18(r1)
lbl_802B3B4C:
/* 802B3B4C 002B0AAC 88 01 00 3C */ lbz r0, 0x3c(r1)
/* 802B3B50 002B0AB0 28 00 00 00 */ cmplwi r0, 0
/* 802B3B54 002B0AB4 41 82 00 14 */ beq lbl_802B3B68
/* 802B3B58 002B0AB8 34 61 00 34 */ addic. r3, r1, 0x34
/* 802B3B5C 002B0ABC 41 82 00 0C */ beq lbl_802B3B68
/* 802B3B60 002B0AC0 38 80 00 00 */ li r4, 0
/* 802B3B64 002B0AC4 48 08 D2 DD */ bl __dt__6CTokenFv
lbl_802B3B68:
/* 802B3B68 002B0AC8 38 00 00 00 */ li r0, 0
/* 802B3B6C 002B0ACC 98 01 00 3C */ stb r0, 0x3c(r1)
/* 802B3B70 002B0AD0 48 00 01 68 */ b lbl_802B3CD8
lbl_802B3B74:
/* 802B3B74 002B0AD4 7F 83 E3 78 */ mr r3, r28
/* 802B3B78 002B0AD8 48 07 40 2D */ bl GetIntElement__20CParticleDataFactoryFR12CInputStream
/* 802B3B7C 002B0ADC 80 1B 00 48 */ lwz r0, 0x48(r27)
/* 802B3B80 002B0AE0 7C 7A 1B 78 */ mr r26, r3
/* 802B3B84 002B0AE4 28 00 00 00 */ cmplwi r0, 0
/* 802B3B88 002B0AE8 41 82 00 1C */ beq lbl_802B3BA4
/* 802B3B8C 002B0AEC 7C 03 03 78 */ mr r3, r0
/* 802B3B90 002B0AF0 38 80 00 01 */ li r4, 1
/* 802B3B94 002B0AF4 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3B98 002B0AF8 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3B9C 002B0AFC 7D 89 03 A6 */ mtctr r12
/* 802B3BA0 002B0B00 4E 80 04 21 */ bctrl
lbl_802B3BA4:
/* 802B3BA4 002B0B04 93 5B 00 48 */ stw r26, 0x48(r27)
/* 802B3BA8 002B0B08 48 00 01 30 */ b lbl_802B3CD8
lbl_802B3BAC:
/* 802B3BAC 002B0B0C 7F 83 E3 78 */ mr r3, r28
/* 802B3BB0 002B0B10 48 07 26 A5 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B3BB4 002B0B14 80 1B 00 4C */ lwz r0, 0x4c(r27)
/* 802B3BB8 002B0B18 7C 7A 1B 78 */ mr r26, r3
/* 802B3BBC 002B0B1C 28 00 00 00 */ cmplwi r0, 0
/* 802B3BC0 002B0B20 41 82 00 1C */ beq lbl_802B3BDC
/* 802B3BC4 002B0B24 7C 03 03 78 */ mr r3, r0
/* 802B3BC8 002B0B28 38 80 00 01 */ li r4, 1
/* 802B3BCC 002B0B2C 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3BD0 002B0B30 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3BD4 002B0B34 7D 89 03 A6 */ mtctr r12
/* 802B3BD8 002B0B38 4E 80 04 21 */ bctrl
lbl_802B3BDC:
/* 802B3BDC 002B0B3C 93 5B 00 4C */ stw r26, 0x4c(r27)
/* 802B3BE0 002B0B40 48 00 00 F8 */ b lbl_802B3CD8
lbl_802B3BE4:
/* 802B3BE4 002B0B44 7F 83 E3 78 */ mr r3, r28
/* 802B3BE8 002B0B48 48 07 26 6D */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B3BEC 002B0B4C 80 1B 00 50 */ lwz r0, 0x50(r27)
/* 802B3BF0 002B0B50 7C 7A 1B 78 */ mr r26, r3
/* 802B3BF4 002B0B54 28 00 00 00 */ cmplwi r0, 0
/* 802B3BF8 002B0B58 41 82 00 1C */ beq lbl_802B3C14
/* 802B3BFC 002B0B5C 7C 03 03 78 */ mr r3, r0
/* 802B3C00 002B0B60 38 80 00 01 */ li r4, 1
/* 802B3C04 002B0B64 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3C08 002B0B68 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3C0C 002B0B6C 7D 89 03 A6 */ mtctr r12
/* 802B3C10 002B0B70 4E 80 04 21 */ bctrl
lbl_802B3C14:
/* 802B3C14 002B0B74 93 5B 00 50 */ stw r26, 0x50(r27)
/* 802B3C18 002B0B78 48 00 00 C0 */ b lbl_802B3CD8
lbl_802B3C1C:
/* 802B3C1C 002B0B7C 7F 83 E3 78 */ mr r3, r28
/* 802B3C20 002B0B80 48 07 26 35 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B3C24 002B0B84 80 1B 00 54 */ lwz r0, 0x54(r27)
/* 802B3C28 002B0B88 7C 7A 1B 78 */ mr r26, r3
/* 802B3C2C 002B0B8C 28 00 00 00 */ cmplwi r0, 0
/* 802B3C30 002B0B90 41 82 00 1C */ beq lbl_802B3C4C
/* 802B3C34 002B0B94 7C 03 03 78 */ mr r3, r0
/* 802B3C38 002B0B98 38 80 00 01 */ li r4, 1
/* 802B3C3C 002B0B9C 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3C40 002B0BA0 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3C44 002B0BA4 7D 89 03 A6 */ mtctr r12
/* 802B3C48 002B0BA8 4E 80 04 21 */ bctrl
lbl_802B3C4C:
/* 802B3C4C 002B0BAC 93 5B 00 54 */ stw r26, 0x54(r27)
/* 802B3C50 002B0BB0 48 00 00 88 */ b lbl_802B3CD8
lbl_802B3C54:
/* 802B3C54 002B0BB4 7F 83 E3 78 */ mr r3, r28
/* 802B3C58 002B0BB8 48 07 16 05 */ bl GetColorElement__20CParticleDataFactoryFR12CInputStream
/* 802B3C5C 002B0BBC 80 1B 00 58 */ lwz r0, 0x58(r27)
/* 802B3C60 002B0BC0 7C 7A 1B 78 */ mr r26, r3
/* 802B3C64 002B0BC4 28 00 00 00 */ cmplwi r0, 0
/* 802B3C68 002B0BC8 41 82 00 1C */ beq lbl_802B3C84
/* 802B3C6C 002B0BCC 7C 03 03 78 */ mr r3, r0
/* 802B3C70 002B0BD0 38 80 00 01 */ li r4, 1
/* 802B3C74 002B0BD4 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3C78 002B0BD8 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3C7C 002B0BDC 7D 89 03 A6 */ mtctr r12
/* 802B3C80 002B0BE0 4E 80 04 21 */ bctrl
lbl_802B3C84:
/* 802B3C84 002B0BE4 93 5B 00 58 */ stw r26, 0x58(r27)
/* 802B3C88 002B0BE8 48 00 00 50 */ b lbl_802B3CD8
lbl_802B3C8C:
/* 802B3C8C 002B0BEC 7F 83 E3 78 */ mr r3, r28
/* 802B3C90 002B0BF0 48 07 47 99 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B3C94 002B0BF4 88 1B 00 5C */ lbz r0, 0x5c(r27)
/* 802B3C98 002B0BF8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18
/* 802B3C9C 002B0BFC 98 1B 00 5C */ stb r0, 0x5c(r27)
/* 802B3CA0 002B0C00 48 00 00 38 */ b lbl_802B3CD8
lbl_802B3CA4:
/* 802B3CA4 002B0C04 7F 83 E3 78 */ mr r3, r28
/* 802B3CA8 002B0C08 48 07 47 81 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B3CAC 002B0C0C 88 1B 00 5C */ lbz r0, 0x5c(r27)
/* 802B3CB0 002B0C10 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19
/* 802B3CB4 002B0C14 98 1B 00 5C */ stb r0, 0x5c(r27)
/* 802B3CB8 002B0C18 48 00 00 20 */ b lbl_802B3CD8
lbl_802B3CBC:
/* 802B3CBC 002B0C1C 3B C0 00 01 */ li r30, 1
/* 802B3CC0 002B0C20 48 00 00 18 */ b lbl_802B3CD8
lbl_802B3CC4:
/* 802B3CC4 002B0C24 38 61 00 40 */ addi r3, r1, 0x40
/* 802B3CC8 002B0C28 38 80 FF FF */ li r4, -1
/* 802B3CCC 002B0C2C 48 05 E9 39 */ bl __dt__13CGlobalRandomFv
/* 802B3CD0 002B0C30 38 60 00 00 */ li r3, 0
/* 802B3CD4 002B0C34 48 00 00 1C */ b lbl_802B3CF0
lbl_802B3CD8:
/* 802B3CD8 002B0C38 38 61 00 40 */ addi r3, r1, 0x40
/* 802B3CDC 002B0C3C 38 80 FF FF */ li r4, -1
/* 802B3CE0 002B0C40 48 05 E9 25 */ bl __dt__13CGlobalRandomFv
lbl_802B3CE4:
/* 802B3CE4 002B0C44 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 802B3CE8 002B0C48 41 82 FA D0 */ beq lbl_802B37B8
/* 802B3CEC 002B0C4C 38 60 00 01 */ li r3, 1
lbl_802B3CF0:
/* 802B3CF0 002B0C50 BB 41 00 58 */ lmw r26, 0x58(r1)
/* 802B3CF4 002B0C54 80 01 00 74 */ lwz r0, 0x74(r1)
/* 802B3CF8 002B0C58 7C 08 03 A6 */ mtlr r0
/* 802B3CFC 002B0C5C 38 21 00 70 */ addi r1, r1, 0x70
/* 802B3D00 002B0C60 4E 80 00 20 */ blr
.global __dt__13CColorElement
__dt__13CColorElement:
/* 802B3D04 002B0C64 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B3D08 002B0C68 7C 08 02 A6 */ mflr r0
/* 802B3D0C 002B0C6C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B3D10 002B0C70 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B3D14 002B0C74 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B3D18 002B0C78 41 82 00 34 */ beq lbl_802B3D4C
/* 802B3D1C 002B0C7C 3C 60 80 3F */ lis r3, lbl_803EC5B4@ha
/* 802B3D20 002B0C80 38 03 C5 B4 */ addi r0, r3, lbl_803EC5B4@l
/* 802B3D24 002B0C84 90 1F 00 00 */ stw r0, 0(r31)
/* 802B3D28 002B0C88 41 82 00 10 */ beq lbl_802B3D38
/* 802B3D2C 002B0C8C 3C 60 80 3F */ lis r3, lbl_803EC5A8@ha
/* 802B3D30 002B0C90 38 03 C5 A8 */ addi r0, r3, lbl_803EC5A8@l
/* 802B3D34 002B0C94 90 1F 00 00 */ stw r0, 0(r31)
lbl_802B3D38:
/* 802B3D38 002B0C98 7C 80 07 35 */ extsh. r0, r4
/* 802B3D3C 002B0C9C 40 81 00 10 */ ble lbl_802B3D4C
/* 802B3D40 002B0CA0 7F E3 FB 78 */ mr r3, r31
/* 802B3D44 002B0CA4 38 80 00 04 */ li r4, 4
/* 802B3D48 002B0CA8 48 0B 8D 1D */ bl sub_8036ca64
lbl_802B3D4C:
/* 802B3D4C 002B0CAC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B3D50 002B0CB0 7F E3 FB 78 */ mr r3, r31
/* 802B3D54 002B0CB4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B3D58 002B0CB8 7C 08 03 A6 */ mtlr r0
/* 802B3D5C 002B0CBC 38 21 00 10 */ addi r1, r1, 0x10
/* 802B3D60 002B0CC0 4E 80 00 20 */ blr
.global __dt__14CVectorElement
__dt__14CVectorElement:
/* 802B3D64 002B0CC4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B3D68 002B0CC8 7C 08 02 A6 */ mflr r0
/* 802B3D6C 002B0CCC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B3D70 002B0CD0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B3D74 002B0CD4 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B3D78 002B0CD8 41 82 00 34 */ beq lbl_802B3DAC
/* 802B3D7C 002B0CDC 3C 60 80 3F */ lis r3, lbl_803EC594@ha
/* 802B3D80 002B0CE0 38 03 C5 94 */ addi r0, r3, lbl_803EC594@l
/* 802B3D84 002B0CE4 90 1F 00 00 */ stw r0, 0(r31)
/* 802B3D88 002B0CE8 41 82 00 10 */ beq lbl_802B3D98
/* 802B3D8C 002B0CEC 3C 60 80 3F */ lis r3, lbl_803EC5A8@ha
/* 802B3D90 002B0CF0 38 03 C5 A8 */ addi r0, r3, lbl_803EC5A8@l
/* 802B3D94 002B0CF4 90 1F 00 00 */ stw r0, 0(r31)
lbl_802B3D98:
/* 802B3D98 002B0CF8 7C 80 07 35 */ extsh. r0, r4
/* 802B3D9C 002B0CFC 40 81 00 10 */ ble lbl_802B3DAC
/* 802B3DA0 002B0D00 7F E3 FB 78 */ mr r3, r31
/* 802B3DA4 002B0D04 38 80 00 04 */ li r4, 4
/* 802B3DA8 002B0D08 48 0B 8C BD */ bl sub_8036ca64
lbl_802B3DAC:
/* 802B3DAC 002B0D0C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B3DB0 002B0D10 7F E3 FB 78 */ mr r3, r31
/* 802B3DB4 002B0D14 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B3DB8 002B0D18 7C 08 03 A6 */ mtlr r0
/* 802B3DBC 002B0D1C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B3DC0 002B0D20 4E 80 00 20 */ blr
.global __dt__11CIntElement
__dt__11CIntElement:
/* 802B3DC4 002B0D24 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B3DC8 002B0D28 7C 08 02 A6 */ mflr r0
/* 802B3DCC 002B0D2C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B3DD0 002B0D30 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B3DD4 002B0D34 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B3DD8 002B0D38 41 82 00 34 */ beq lbl_802B3E0C
/* 802B3DDC 002B0D3C 3C 60 80 3F */ lis r3, lbl_803EC584@ha
/* 802B3DE0 002B0D40 38 03 C5 84 */ addi r0, r3, lbl_803EC584@l
/* 802B3DE4 002B0D44 90 1F 00 00 */ stw r0, 0(r31)
/* 802B3DE8 002B0D48 41 82 00 10 */ beq lbl_802B3DF8
/* 802B3DEC 002B0D4C 3C 60 80 3F */ lis r3, lbl_803EC5A8@ha
/* 802B3DF0 002B0D50 38 03 C5 A8 */ addi r0, r3, lbl_803EC5A8@l
/* 802B3DF4 002B0D54 90 1F 00 00 */ stw r0, 0(r31)
lbl_802B3DF8:
/* 802B3DF8 002B0D58 7C 80 07 35 */ extsh. r0, r4
/* 802B3DFC 002B0D5C 40 81 00 10 */ ble lbl_802B3E0C
/* 802B3E00 002B0D60 7F E3 FB 78 */ mr r3, r31
/* 802B3E04 002B0D64 38 80 00 04 */ li r4, 4
/* 802B3E08 002B0D68 48 0B 8C 5D */ bl sub_8036ca64
lbl_802B3E0C:
/* 802B3E0C 002B0D6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B3E10 002B0D70 7F E3 FB 78 */ mr r3, r31
/* 802B3E14 002B0D74 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B3E18 002B0D78 7C 08 03 A6 */ mtlr r0
/* 802B3E1C 002B0D7C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B3E20 002B0D80 4E 80 00 20 */ blr
.global GetQuadDecalInfo__17CDecalDataFactoryFR12CInputStreamP11CSimplePoolUiRQ217CDecalDescription10SQuadDescr
GetQuadDecalInfo__17CDecalDataFactoryFR12CInputStreamP11CSimplePoolUiRQ217CDecalDescription10SQuadDescr:
/* 802B3E24 002B0D84 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B3E28 002B0D88 7C 08 02 A6 */ mflr r0
/* 802B3E2C 002B0D8C 3C E0 32 41 */ lis r7, 0x32414444@ha
/* 802B3E30 002B0D90 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B3E34 002B0D94 38 07 44 44 */ addi r0, r7, 0x32414444@l
/* 802B3E38 002B0D98 7C 05 00 00 */ cmpw r5, r0
/* 802B3E3C 002B0D9C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B3E40 002B0DA0 7C DF 33 78 */ mr r31, r6
/* 802B3E44 002B0DA4 93 C1 00 08 */ stw r30, 8(r1)
/* 802B3E48 002B0DA8 41 82 02 44 */ beq lbl_802B408C
/* 802B3E4C 002B0DAC 40 80 00 90 */ bge lbl_802B3EDC
/* 802B3E50 002B0DB0 3C C0 31 4F */ lis r6, 0x314F4646@ha
/* 802B3E54 002B0DB4 38 06 46 46 */ addi r0, r6, 0x314F4646@l
/* 802B3E58 002B0DB8 7C 05 00 00 */ cmpw r5, r0
/* 802B3E5C 002B0DBC 41 82 01 94 */ beq lbl_802B3FF0
/* 802B3E60 002B0DC0 40 80 00 40 */ bge lbl_802B3EA0
/* 802B3E64 002B0DC4 3C 80 31 43 */ lis r4, 0x31434C52@ha
/* 802B3E68 002B0DC8 38 04 4C 52 */ addi r0, r4, 0x31434C52@l
/* 802B3E6C 002B0DCC 7C 05 00 00 */ cmpw r5, r0
/* 802B3E70 002B0DD0 41 82 01 B4 */ beq lbl_802B4024
/* 802B3E74 002B0DD4 40 80 00 18 */ bge lbl_802B3E8C
/* 802B3E78 002B0DD8 3C 80 31 41 */ lis r4, 0x31414444@ha
/* 802B3E7C 002B0DDC 38 04 44 44 */ addi r0, r4, 0x31414444@l
/* 802B3E80 002B0DE0 7C 05 00 00 */ cmpw r5, r0
/* 802B3E84 002B0DE4 41 82 02 08 */ beq lbl_802B408C
/* 802B3E88 002B0DE8 48 00 02 0C */ b lbl_802B4094
lbl_802B3E8C:
/* 802B3E8C 002B0DEC 3C 80 31 4C */ lis r4, 0x314C4654@ha
/* 802B3E90 002B0DF0 38 04 46 54 */ addi r0, r4, 0x314C4654@l
/* 802B3E94 002B0DF4 7C 05 00 00 */ cmpw r5, r0
/* 802B3E98 002B0DF8 41 82 00 BC */ beq lbl_802B3F54
/* 802B3E9C 002B0DFC 48 00 01 F8 */ b lbl_802B4094
lbl_802B3EA0:
/* 802B3EA0 002B0E00 3C C0 31 53 */ lis r6, 0x31535A45@ha
/* 802B3EA4 002B0E04 38 06 5A 45 */ addi r0, r6, 0x31535A45@l
/* 802B3EA8 002B0E08 7C 05 00 00 */ cmpw r5, r0
/* 802B3EAC 002B0E0C 41 82 00 DC */ beq lbl_802B3F88
/* 802B3EB0 002B0E10 40 80 00 18 */ bge lbl_802B3EC8
/* 802B3EB4 002B0E14 3C 80 31 52 */ lis r4, 0x31524F54@ha
/* 802B3EB8 002B0E18 38 04 4F 54 */ addi r0, r4, 0x31524F54@l
/* 802B3EBC 002B0E1C 7C 05 00 00 */ cmpw r5, r0
/* 802B3EC0 002B0E20 41 82 00 FC */ beq lbl_802B3FBC
/* 802B3EC4 002B0E24 48 00 01 D0 */ b lbl_802B4094
lbl_802B3EC8:
/* 802B3EC8 002B0E28 3C C0 31 54 */ lis r6, 0x31544558@ha
/* 802B3ECC 002B0E2C 38 06 45 58 */ addi r0, r6, 0x31544558@l
/* 802B3ED0 002B0E30 7C 05 00 00 */ cmpw r5, r0
/* 802B3ED4 002B0E34 41 82 01 84 */ beq lbl_802B4058
/* 802B3ED8 002B0E38 48 00 01 BC */ b lbl_802B4094
lbl_802B3EDC:
/* 802B3EDC 002B0E3C 3C C0 32 52 */ lis r6, 0x32524F54@ha
/* 802B3EE0 002B0E40 38 06 4F 54 */ addi r0, r6, 0x32524F54@l
/* 802B3EE4 002B0E44 7C 05 00 00 */ cmpw r5, r0
/* 802B3EE8 002B0E48 41 82 00 D4 */ beq lbl_802B3FBC
/* 802B3EEC 002B0E4C 40 80 00 40 */ bge lbl_802B3F2C
/* 802B3EF0 002B0E50 3C 80 32 4C */ lis r4, 0x324C4654@ha
/* 802B3EF4 002B0E54 38 04 46 54 */ addi r0, r4, 0x324C4654@l
/* 802B3EF8 002B0E58 7C 05 00 00 */ cmpw r5, r0
/* 802B3EFC 002B0E5C 41 82 00 58 */ beq lbl_802B3F54
/* 802B3F00 002B0E60 40 80 00 18 */ bge lbl_802B3F18
/* 802B3F04 002B0E64 3C 80 32 43 */ lis r4, 0x32434C52@ha
/* 802B3F08 002B0E68 38 04 4C 52 */ addi r0, r4, 0x32434C52@l
/* 802B3F0C 002B0E6C 7C 05 00 00 */ cmpw r5, r0
/* 802B3F10 002B0E70 41 82 01 14 */ beq lbl_802B4024
/* 802B3F14 002B0E74 48 00 01 80 */ b lbl_802B4094
lbl_802B3F18:
/* 802B3F18 002B0E78 3C 80 32 4F */ lis r4, 0x324F4646@ha
/* 802B3F1C 002B0E7C 38 04 46 46 */ addi r0, r4, 0x324F4646@l
/* 802B3F20 002B0E80 7C 05 00 00 */ cmpw r5, r0
/* 802B3F24 002B0E84 41 82 00 CC */ beq lbl_802B3FF0
/* 802B3F28 002B0E88 48 00 01 6C */ b lbl_802B4094
lbl_802B3F2C:
/* 802B3F2C 002B0E8C 3C C0 32 54 */ lis r6, 0x32544558@ha
/* 802B3F30 002B0E90 38 06 45 58 */ addi r0, r6, 0x32544558@l
/* 802B3F34 002B0E94 7C 05 00 00 */ cmpw r5, r0
/* 802B3F38 002B0E98 41 82 01 20 */ beq lbl_802B4058
/* 802B3F3C 002B0E9C 40 80 01 58 */ bge lbl_802B4094
/* 802B3F40 002B0EA0 3C 80 32 53 */ lis r4, 0x32535A45@ha
/* 802B3F44 002B0EA4 38 04 5A 45 */ addi r0, r4, 0x32535A45@l
/* 802B3F48 002B0EA8 7C 05 00 00 */ cmpw r5, r0
/* 802B3F4C 002B0EAC 41 82 00 3C */ beq lbl_802B3F88
/* 802B3F50 002B0EB0 48 00 01 44 */ b lbl_802B4094
lbl_802B3F54:
/* 802B3F54 002B0EB4 48 07 3C 51 */ bl GetIntElement__20CParticleDataFactoryFR12CInputStream
/* 802B3F58 002B0EB8 80 1F 00 00 */ lwz r0, 0(r31)
/* 802B3F5C 002B0EBC 7C 7E 1B 78 */ mr r30, r3
/* 802B3F60 002B0EC0 28 00 00 00 */ cmplwi r0, 0
/* 802B3F64 002B0EC4 41 82 00 1C */ beq lbl_802B3F80
/* 802B3F68 002B0EC8 7C 03 03 78 */ mr r3, r0
/* 802B3F6C 002B0ECC 38 80 00 01 */ li r4, 1
/* 802B3F70 002B0ED0 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3F74 002B0ED4 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3F78 002B0ED8 7D 89 03 A6 */ mtctr r12
/* 802B3F7C 002B0EDC 4E 80 04 21 */ bctrl
lbl_802B3F80:
/* 802B3F80 002B0EE0 93 DF 00 00 */ stw r30, 0(r31)
/* 802B3F84 002B0EE4 48 00 01 10 */ b lbl_802B4094
lbl_802B3F88:
/* 802B3F88 002B0EE8 48 07 2D 09 */ bl GetRealElement__20CParticleDataFactoryFR12CInputStream
/* 802B3F8C 002B0EEC 80 1F 00 04 */ lwz r0, 4(r31)
/* 802B3F90 002B0EF0 7C 7E 1B 78 */ mr r30, r3
/* 802B3F94 002B0EF4 28 00 00 00 */ cmplwi r0, 0
/* 802B3F98 002B0EF8 41 82 00 1C */ beq lbl_802B3FB4
/* 802B3F9C 002B0EFC 7C 03 03 78 */ mr r3, r0
/* 802B3FA0 002B0F00 38 80 00 01 */ li r4, 1
/* 802B3FA4 002B0F04 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3FA8 002B0F08 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3FAC 002B0F0C 7D 89 03 A6 */ mtctr r12
/* 802B3FB0 002B0F10 4E 80 04 21 */ bctrl
lbl_802B3FB4:
/* 802B3FB4 002B0F14 93 DF 00 04 */ stw r30, 4(r31)
/* 802B3FB8 002B0F18 48 00 00 DC */ b lbl_802B4094
lbl_802B3FBC:
/* 802B3FBC 002B0F1C 48 07 2C D5 */ bl GetRealElement__20CParticleDataFactoryFR12CInputStream
/* 802B3FC0 002B0F20 80 1F 00 08 */ lwz r0, 8(r31)
/* 802B3FC4 002B0F24 7C 7E 1B 78 */ mr r30, r3
/* 802B3FC8 002B0F28 28 00 00 00 */ cmplwi r0, 0
/* 802B3FCC 002B0F2C 41 82 00 1C */ beq lbl_802B3FE8
/* 802B3FD0 002B0F30 7C 03 03 78 */ mr r3, r0
/* 802B3FD4 002B0F34 38 80 00 01 */ li r4, 1
/* 802B3FD8 002B0F38 81 83 00 00 */ lwz r12, 0(r3)
/* 802B3FDC 002B0F3C 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B3FE0 002B0F40 7D 89 03 A6 */ mtctr r12
/* 802B3FE4 002B0F44 4E 80 04 21 */ bctrl
lbl_802B3FE8:
/* 802B3FE8 002B0F48 93 DF 00 08 */ stw r30, 8(r31)
/* 802B3FEC 002B0F4C 48 00 00 A8 */ b lbl_802B4094
lbl_802B3FF0:
/* 802B3FF0 002B0F50 48 07 22 65 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B3FF4 002B0F54 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 802B3FF8 002B0F58 7C 7E 1B 78 */ mr r30, r3
/* 802B3FFC 002B0F5C 28 00 00 00 */ cmplwi r0, 0
/* 802B4000 002B0F60 41 82 00 1C */ beq lbl_802B401C
/* 802B4004 002B0F64 7C 03 03 78 */ mr r3, r0
/* 802B4008 002B0F68 38 80 00 01 */ li r4, 1
/* 802B400C 002B0F6C 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4010 002B0F70 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4014 002B0F74 7D 89 03 A6 */ mtctr r12
/* 802B4018 002B0F78 4E 80 04 21 */ bctrl
lbl_802B401C:
/* 802B401C 002B0F7C 93 DF 00 0C */ stw r30, 0xc(r31)
/* 802B4020 002B0F80 48 00 00 74 */ b lbl_802B4094
lbl_802B4024:
/* 802B4024 002B0F84 48 07 12 39 */ bl GetColorElement__20CParticleDataFactoryFR12CInputStream
/* 802B4028 002B0F88 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 802B402C 002B0F8C 7C 7E 1B 78 */ mr r30, r3
/* 802B4030 002B0F90 28 00 00 00 */ cmplwi r0, 0
/* 802B4034 002B0F94 41 82 00 1C */ beq lbl_802B4050
/* 802B4038 002B0F98 7C 03 03 78 */ mr r3, r0
/* 802B403C 002B0F9C 38 80 00 01 */ li r4, 1
/* 802B4040 002B0FA0 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4044 002B0FA4 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4048 002B0FA8 7D 89 03 A6 */ mtctr r12
/* 802B404C 002B0FAC 4E 80 04 21 */ bctrl
lbl_802B4050:
/* 802B4050 002B0FB0 93 DF 00 10 */ stw r30, 0x10(r31)
/* 802B4054 002B0FB4 48 00 00 40 */ b lbl_802B4094
lbl_802B4058:
/* 802B4058 002B0FB8 48 07 0D D9 */ bl GetTextureElement__20CParticleDataFactoryFR12CInputStreamP11CSimplePool
/* 802B405C 002B0FBC 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 802B4060 002B0FC0 7C 7E 1B 78 */ mr r30, r3
/* 802B4064 002B0FC4 28 00 00 00 */ cmplwi r0, 0
/* 802B4068 002B0FC8 41 82 00 1C */ beq lbl_802B4084
/* 802B406C 002B0FCC 7C 03 03 78 */ mr r3, r0
/* 802B4070 002B0FD0 38 80 00 01 */ li r4, 1
/* 802B4074 002B0FD4 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4078 002B0FD8 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B407C 002B0FDC 7D 89 03 A6 */ mtctr r12
/* 802B4080 002B0FE0 4E 80 04 21 */ bctrl
lbl_802B4084:
/* 802B4084 002B0FE4 93 DF 00 14 */ stw r30, 0x14(r31)
/* 802B4088 002B0FE8 48 00 00 0C */ b lbl_802B4094
lbl_802B408C:
/* 802B408C 002B0FEC 48 07 43 9D */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B4090 002B0FF0 98 7F 00 18 */ stb r3, 0x18(r31)
lbl_802B4094:
/* 802B4094 002B0FF4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4098 002B0FF8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B409C 002B0FFC 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B40A0 002B1000 7C 08 03 A6 */ mtlr r0
/* 802B40A4 002B1004 38 21 00 10 */ addi r1, r1, 0x10
/* 802B40A8 002B1008 4E 80 00 20 */ blr
.global __dt__10CUVElementFv
__dt__10CUVElementFv:
/* 802B40AC 002B100C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B40B0 002B1010 7C 08 02 A6 */ mflr r0
/* 802B40B4 002B1014 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B40B8 002B1018 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B40BC 002B101C 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B40C0 002B1020 41 82 00 34 */ beq lbl_802B40F4
/* 802B40C4 002B1024 3C 60 80 3F */ lis r3, lbl_803EC568@ha
/* 802B40C8 002B1028 38 03 C5 68 */ addi r0, r3, lbl_803EC568@l
/* 802B40CC 002B102C 90 1F 00 00 */ stw r0, 0(r31)
/* 802B40D0 002B1030 41 82 00 10 */ beq lbl_802B40E0
/* 802B40D4 002B1034 3C 60 80 3F */ lis r3, lbl_803EC5A8@ha
/* 802B40D8 002B1038 38 03 C5 A8 */ addi r0, r3, lbl_803EC5A8@l
/* 802B40DC 002B103C 90 1F 00 00 */ stw r0, 0(r31)
lbl_802B40E0:
/* 802B40E0 002B1040 7C 80 07 35 */ extsh. r0, r4
/* 802B40E4 002B1044 40 81 00 10 */ ble lbl_802B40F4
/* 802B40E8 002B1048 7F E3 FB 78 */ mr r3, r31
/* 802B40EC 002B104C 38 80 00 04 */ li r4, 4
/* 802B40F0 002B1050 48 0B 89 75 */ bl sub_8036ca64
lbl_802B40F4:
/* 802B40F4 002B1054 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B40F8 002B1058 7F E3 FB 78 */ mr r3, r31
/* 802B40FC 002B105C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4100 002B1060 7C 08 03 A6 */ mtlr r0
/* 802B4104 002B1064 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4108 002B1068 4E 80 00 20 */ blr
.global __dt__12CRealElementFv
__dt__12CRealElementFv:
/* 802B410C 002B106C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B4110 002B1070 7C 08 02 A6 */ mflr r0
/* 802B4114 002B1074 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4118 002B1078 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B411C 002B107C 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B4120 002B1080 41 82 00 34 */ beq lbl_802B4154
/* 802B4124 002B1084 3C 60 80 3F */ lis r3, lbl_803EC554@ha
/* 802B4128 002B1088 38 03 C5 54 */ addi r0, r3, lbl_803EC554@l
/* 802B412C 002B108C 90 1F 00 00 */ stw r0, 0(r31)
/* 802B4130 002B1090 41 82 00 10 */ beq lbl_802B4140
/* 802B4134 002B1094 3C 60 80 3F */ lis r3, lbl_803EC5A8@ha
/* 802B4138 002B1098 38 03 C5 A8 */ addi r0, r3, lbl_803EC5A8@l
/* 802B413C 002B109C 90 1F 00 00 */ stw r0, 0(r31)
lbl_802B4140:
/* 802B4140 002B10A0 7C 80 07 35 */ extsh. r0, r4
/* 802B4144 002B10A4 40 81 00 10 */ ble lbl_802B4154
/* 802B4148 002B10A8 7F E3 FB 78 */ mr r3, r31
/* 802B414C 002B10AC 38 80 00 04 */ li r4, 4
/* 802B4150 002B10B0 48 0B 89 15 */ bl sub_8036ca64
lbl_802B4154:
/* 802B4154 002B10B4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4158 002B10B8 7F E3 FB 78 */ mr r3, r31
/* 802B415C 002B10BC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4160 002B10C0 7C 08 03 A6 */ mtlr r0
/* 802B4164 002B10C4 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4168 002B10C8 4E 80 00 20 */ blr
.global CreateGeneratorDescription__17CDecalDataFactoryFR12CInputStreamP11CSimplePool
CreateGeneratorDescription__17CDecalDataFactoryFR12CInputStreamP11CSimplePool:
/* 802B416C 002B10CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B4170 002B10D0 7C 08 02 A6 */ mflr r0
/* 802B4174 002B10D4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B4178 002B10D8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B417C 002B10DC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B4180 002B10E0 7C 9E 23 78 */ mr r30, r4
/* 802B4184 002B10E4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B4188 002B10E8 7C 7D 1B 78 */ mr r29, r3
/* 802B418C 002B10EC 48 07 42 D1 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B4190 002B10F0 3C 03 BB B0 */ addis r0, r3, 0xbbb0
/* 802B4194 002B10F4 28 00 53 4D */ cmplwi r0, 0x534d
/* 802B4198 002B10F8 41 82 00 0C */ beq lbl_802B41A4
/* 802B419C 002B10FC 38 60 00 00 */ li r3, 0
/* 802B41A0 002B1100 48 00 00 3C */ b lbl_802B41DC
lbl_802B41A4:
/* 802B41A4 002B1104 3C 80 80 3D */ lis r4, lbl_803D6548@ha
/* 802B41A8 002B1108 38 60 00 60 */ li r3, 0x60
/* 802B41AC 002B110C 38 84 65 48 */ addi r4, r4, lbl_803D6548@l
/* 802B41B0 002B1110 38 A0 00 00 */ li r5, 0
/* 802B41B4 002B1114 48 06 16 B9 */ bl __nw__FUlPCcPCc
/* 802B41B8 002B1118 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B41BC 002B111C 41 82 00 0C */ beq lbl_802B41C8
/* 802B41C0 002B1120 48 00 1B 25 */ bl __ct__17CDecalDescriptionFv
/* 802B41C4 002B1124 7C 7F 1B 78 */ mr r31, r3
lbl_802B41C8:
/* 802B41C8 002B1128 7F E3 FB 78 */ mr r3, r31
/* 802B41CC 002B112C 7F A4 EB 78 */ mr r4, r29
/* 802B41D0 002B1130 7F C5 F3 78 */ mr r5, r30
/* 802B41D4 002B1134 4B FF F5 AD */ bl CreateDPSM__17CDecalDataFactoryFP17CDecalDescriptionR12CInputStreamP11CSimplePool
/* 802B41D8 002B1138 7F E3 FB 78 */ mr r3, r31
lbl_802B41DC:
/* 802B41DC 002B113C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B41E0 002B1140 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B41E4 002B1144 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B41E8 002B1148 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B41EC 002B114C 7C 08 03 A6 */ mtlr r0
/* 802B41F0 002B1150 38 21 00 20 */ addi r1, r1, 0x20
/* 802B41F4 002B1154 4E 80 00 20 */ blr
.global GetGeneratorDesc__17CDecalDataFactoryFR12CInputStreamP11CSimplePool
GetGeneratorDesc__17CDecalDataFactoryFR12CInputStreamP11CSimplePool:
/* 802B41F8 002B1158 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B41FC 002B115C 7C 08 02 A6 */ mflr r0
/* 802B4200 002B1160 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4204 002B1164 4B FF FF 69 */ bl CreateGeneratorDescription__17CDecalDataFactoryFR12CInputStreamP11CSimplePool
/* 802B4208 002B1168 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B420C 002B116C 7C 08 03 A6 */ mtlr r0
/* 802B4210 002B1170 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4214 002B1174 4E 80 00 20 */ blr
.global sub_802b4218
sub_802b4218:
/* 802B4218 002B1178 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B421C 002B117C 7C 08 02 A6 */ mflr r0
/* 802B4220 002B1180 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4224 002B1184 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4228 002B1188 7C 9F 23 78 */ mr r31, r4
/* 802B422C 002B118C 93 C1 00 08 */ stw r30, 8(r1)
/* 802B4230 002B1190 7C 7E 1B 79 */ or. r30, r3, r3
/* 802B4234 002B1194 41 82 00 58 */ beq lbl_802B428C
/* 802B4238 002B1198 3C 60 80 3F */ lis r3, lbl_803EC548@ha
/* 802B423C 002B119C 38 03 C5 48 */ addi r0, r3, lbl_803EC548@l
/* 802B4240 002B11A0 90 1E 00 00 */ stw r0, 0(r30)
/* 802B4244 002B11A4 80 7E 00 04 */ lwz r3, 4(r30)
/* 802B4248 002B11A8 28 03 00 00 */ cmplwi r3, 0
/* 802B424C 002B11AC 41 82 00 0C */ beq lbl_802B4258
/* 802B4250 002B11B0 38 80 00 01 */ li r4, 1
/* 802B4254 002B11B4 48 00 00 55 */ bl sub_802b42a8
lbl_802B4258:
/* 802B4258 002B11B8 28 1E 00 00 */ cmplwi r30, 0
/* 802B425C 002B11BC 41 82 00 20 */ beq lbl_802B427C
/* 802B4260 002B11C0 3C 60 80 3E */ lis r3, __vt__31TObjOwnerDerivedFromIObjUntyped@ha
/* 802B4264 002B11C4 38 03 8D 78 */ addi r0, r3, __vt__31TObjOwnerDerivedFromIObjUntyped@l
/* 802B4268 002B11C8 90 1E 00 00 */ stw r0, 0(r30)
/* 802B426C 002B11CC 41 82 00 10 */ beq lbl_802B427C
/* 802B4270 002B11D0 3C 60 80 3E */ lis r3, __vt__4IObj@ha
/* 802B4274 002B11D4 38 03 8D 6C */ addi r0, r3, __vt__4IObj@l
/* 802B4278 002B11D8 90 1E 00 00 */ stw r0, 0(r30)
lbl_802B427C:
/* 802B427C 002B11DC 7F E0 07 35 */ extsh. r0, r31
/* 802B4280 002B11E0 40 81 00 0C */ ble lbl_802B428C
/* 802B4284 002B11E4 7F C3 F3 78 */ mr r3, r30
/* 802B4288 002B11E8 48 06 16 A9 */ bl Free__7CMemoryFPCv
lbl_802B428C:
/* 802B428C 002B11EC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4290 002B11F0 7F C3 F3 78 */ mr r3, r30
/* 802B4294 002B11F4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4298 002B11F8 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B429C 002B11FC 7C 08 03 A6 */ mtlr r0
/* 802B42A0 002B1200 38 21 00 10 */ addi r1, r1, 0x10
/* 802B42A4 002B1204 4E 80 00 20 */ blr
.global sub_802b42a8
sub_802b42a8:
/* 802B42A8 002B1208 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B42AC 002B120C 7C 08 02 A6 */ mflr r0
/* 802B42B0 002B1210 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B42B4 002B1214 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B42B8 002B1218 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B42BC 002B121C 93 C1 00 08 */ stw r30, 8(r1)
/* 802B42C0 002B1220 7C 9E 23 78 */ mr r30, r4
/* 802B42C4 002B1224 41 82 03 00 */ beq lbl_802B45C4
/* 802B42C8 002B1228 34 1F 00 58 */ addic. r0, r31, 0x58
/* 802B42CC 002B122C 41 82 00 24 */ beq lbl_802B42F0
/* 802B42D0 002B1230 80 7F 00 58 */ lwz r3, 0x58(r31)
/* 802B42D4 002B1234 28 03 00 00 */ cmplwi r3, 0
/* 802B42D8 002B1238 41 82 00 18 */ beq lbl_802B42F0
/* 802B42DC 002B123C 81 83 00 00 */ lwz r12, 0(r3)
/* 802B42E0 002B1240 38 80 00 01 */ li r4, 1
/* 802B42E4 002B1244 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B42E8 002B1248 7D 89 03 A6 */ mtctr r12
/* 802B42EC 002B124C 4E 80 04 21 */ bctrl
lbl_802B42F0:
/* 802B42F0 002B1250 34 1F 00 54 */ addic. r0, r31, 0x54
/* 802B42F4 002B1254 41 82 00 24 */ beq lbl_802B4318
/* 802B42F8 002B1258 80 7F 00 54 */ lwz r3, 0x54(r31)
/* 802B42FC 002B125C 28 03 00 00 */ cmplwi r3, 0
/* 802B4300 002B1260 41 82 00 18 */ beq lbl_802B4318
/* 802B4304 002B1264 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4308 002B1268 38 80 00 01 */ li r4, 1
/* 802B430C 002B126C 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4310 002B1270 7D 89 03 A6 */ mtctr r12
/* 802B4314 002B1274 4E 80 04 21 */ bctrl
lbl_802B4318:
/* 802B4318 002B1278 34 1F 00 50 */ addic. r0, r31, 0x50
/* 802B431C 002B127C 41 82 00 24 */ beq lbl_802B4340
/* 802B4320 002B1280 80 7F 00 50 */ lwz r3, 0x50(r31)
/* 802B4324 002B1284 28 03 00 00 */ cmplwi r3, 0
/* 802B4328 002B1288 41 82 00 18 */ beq lbl_802B4340
/* 802B432C 002B128C 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4330 002B1290 38 80 00 01 */ li r4, 1
/* 802B4334 002B1294 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4338 002B1298 7D 89 03 A6 */ mtctr r12
/* 802B433C 002B129C 4E 80 04 21 */ bctrl
lbl_802B4340:
/* 802B4340 002B12A0 34 1F 00 4C */ addic. r0, r31, 0x4c
/* 802B4344 002B12A4 41 82 00 24 */ beq lbl_802B4368
/* 802B4348 002B12A8 80 7F 00 4C */ lwz r3, 0x4c(r31)
/* 802B434C 002B12AC 28 03 00 00 */ cmplwi r3, 0
/* 802B4350 002B12B0 41 82 00 18 */ beq lbl_802B4368
/* 802B4354 002B12B4 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4358 002B12B8 38 80 00 01 */ li r4, 1
/* 802B435C 002B12BC 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4360 002B12C0 7D 89 03 A6 */ mtctr r12
/* 802B4364 002B12C4 4E 80 04 21 */ bctrl
lbl_802B4368:
/* 802B4368 002B12C8 34 1F 00 48 */ addic. r0, r31, 0x48
/* 802B436C 002B12CC 41 82 00 24 */ beq lbl_802B4390
/* 802B4370 002B12D0 80 7F 00 48 */ lwz r3, 0x48(r31)
/* 802B4374 002B12D4 28 03 00 00 */ cmplwi r3, 0
/* 802B4378 002B12D8 41 82 00 18 */ beq lbl_802B4390
/* 802B437C 002B12DC 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4380 002B12E0 38 80 00 01 */ li r4, 1
/* 802B4384 002B12E4 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4388 002B12E8 7D 89 03 A6 */ mtctr r12
/* 802B438C 002B12EC 4E 80 04 21 */ bctrl
lbl_802B4390:
/* 802B4390 002B12F0 34 1F 00 38 */ addic. r0, r31, 0x38
/* 802B4394 002B12F4 41 82 00 30 */ beq lbl_802B43C4
/* 802B4398 002B12F8 88 1F 00 44 */ lbz r0, 0x44(r31)
/* 802B439C 002B12FC 28 00 00 00 */ cmplwi r0, 0
/* 802B43A0 002B1300 41 82 00 1C */ beq lbl_802B43BC
/* 802B43A4 002B1304 34 7F 00 38 */ addic. r3, r31, 0x38
/* 802B43A8 002B1308 41 82 00 14 */ beq lbl_802B43BC
/* 802B43AC 002B130C 28 03 00 00 */ cmplwi r3, 0
/* 802B43B0 002B1310 41 82 00 0C */ beq lbl_802B43BC
/* 802B43B4 002B1314 38 80 00 00 */ li r4, 0
/* 802B43B8 002B1318 48 08 CA 89 */ bl __dt__6CTokenFv
lbl_802B43BC:
/* 802B43BC 002B131C 38 00 00 00 */ li r0, 0
/* 802B43C0 002B1320 98 1F 00 44 */ stb r0, 0x44(r31)
lbl_802B43C4:
/* 802B43C4 002B1324 34 1F 00 1C */ addic. r0, r31, 0x1c
/* 802B43C8 002B1328 41 82 00 F4 */ beq lbl_802B44BC
/* 802B43CC 002B132C 34 1F 00 30 */ addic. r0, r31, 0x30
/* 802B43D0 002B1330 41 82 00 24 */ beq lbl_802B43F4
/* 802B43D4 002B1334 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 802B43D8 002B1338 28 03 00 00 */ cmplwi r3, 0
/* 802B43DC 002B133C 41 82 00 18 */ beq lbl_802B43F4
/* 802B43E0 002B1340 81 83 00 00 */ lwz r12, 0(r3)
/* 802B43E4 002B1344 38 80 00 01 */ li r4, 1
/* 802B43E8 002B1348 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B43EC 002B134C 7D 89 03 A6 */ mtctr r12
/* 802B43F0 002B1350 4E 80 04 21 */ bctrl
lbl_802B43F4:
/* 802B43F4 002B1354 34 1F 00 2C */ addic. r0, r31, 0x2c
/* 802B43F8 002B1358 41 82 00 24 */ beq lbl_802B441C
/* 802B43FC 002B135C 80 7F 00 2C */ lwz r3, 0x2c(r31)
/* 802B4400 002B1360 28 03 00 00 */ cmplwi r3, 0
/* 802B4404 002B1364 41 82 00 18 */ beq lbl_802B441C
/* 802B4408 002B1368 81 83 00 00 */ lwz r12, 0(r3)
/* 802B440C 002B136C 38 80 00 01 */ li r4, 1
/* 802B4410 002B1370 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4414 002B1374 7D 89 03 A6 */ mtctr r12
/* 802B4418 002B1378 4E 80 04 21 */ bctrl
lbl_802B441C:
/* 802B441C 002B137C 34 1F 00 28 */ addic. r0, r31, 0x28
/* 802B4420 002B1380 41 82 00 24 */ beq lbl_802B4444
/* 802B4424 002B1384 80 7F 00 28 */ lwz r3, 0x28(r31)
/* 802B4428 002B1388 28 03 00 00 */ cmplwi r3, 0
/* 802B442C 002B138C 41 82 00 18 */ beq lbl_802B4444
/* 802B4430 002B1390 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4434 002B1394 38 80 00 01 */ li r4, 1
/* 802B4438 002B1398 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B443C 002B139C 7D 89 03 A6 */ mtctr r12
/* 802B4440 002B13A0 4E 80 04 21 */ bctrl
lbl_802B4444:
/* 802B4444 002B13A4 34 1F 00 24 */ addic. r0, r31, 0x24
/* 802B4448 002B13A8 41 82 00 24 */ beq lbl_802B446C
/* 802B444C 002B13AC 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 802B4450 002B13B0 28 03 00 00 */ cmplwi r3, 0
/* 802B4454 002B13B4 41 82 00 18 */ beq lbl_802B446C
/* 802B4458 002B13B8 81 83 00 00 */ lwz r12, 0(r3)
/* 802B445C 002B13BC 38 80 00 01 */ li r4, 1
/* 802B4460 002B13C0 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4464 002B13C4 7D 89 03 A6 */ mtctr r12
/* 802B4468 002B13C8 4E 80 04 21 */ bctrl
lbl_802B446C:
/* 802B446C 002B13CC 34 1F 00 20 */ addic. r0, r31, 0x20
/* 802B4470 002B13D0 41 82 00 24 */ beq lbl_802B4494
/* 802B4474 002B13D4 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 802B4478 002B13D8 28 03 00 00 */ cmplwi r3, 0
/* 802B447C 002B13DC 41 82 00 18 */ beq lbl_802B4494
/* 802B4480 002B13E0 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4484 002B13E4 38 80 00 01 */ li r4, 1
/* 802B4488 002B13E8 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B448C 002B13EC 7D 89 03 A6 */ mtctr r12
/* 802B4490 002B13F0 4E 80 04 21 */ bctrl
lbl_802B4494:
/* 802B4494 002B13F4 34 1F 00 1C */ addic. r0, r31, 0x1c
/* 802B4498 002B13F8 41 82 00 24 */ beq lbl_802B44BC
/* 802B449C 002B13FC 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 802B44A0 002B1400 28 03 00 00 */ cmplwi r3, 0
/* 802B44A4 002B1404 41 82 00 18 */ beq lbl_802B44BC
/* 802B44A8 002B1408 81 83 00 00 */ lwz r12, 0(r3)
/* 802B44AC 002B140C 38 80 00 01 */ li r4, 1
/* 802B44B0 002B1410 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B44B4 002B1414 7D 89 03 A6 */ mtctr r12
/* 802B44B8 002B1418 4E 80 04 21 */ bctrl
lbl_802B44BC:
/* 802B44BC 002B141C 28 1F 00 00 */ cmplwi r31, 0
/* 802B44C0 002B1420 41 82 00 F4 */ beq lbl_802B45B4
/* 802B44C4 002B1424 34 1F 00 14 */ addic. r0, r31, 0x14
/* 802B44C8 002B1428 41 82 00 24 */ beq lbl_802B44EC
/* 802B44CC 002B142C 80 7F 00 14 */ lwz r3, 0x14(r31)
/* 802B44D0 002B1430 28 03 00 00 */ cmplwi r3, 0
/* 802B44D4 002B1434 41 82 00 18 */ beq lbl_802B44EC
/* 802B44D8 002B1438 81 83 00 00 */ lwz r12, 0(r3)
/* 802B44DC 002B143C 38 80 00 01 */ li r4, 1
/* 802B44E0 002B1440 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B44E4 002B1444 7D 89 03 A6 */ mtctr r12
/* 802B44E8 002B1448 4E 80 04 21 */ bctrl
lbl_802B44EC:
/* 802B44EC 002B144C 34 1F 00 10 */ addic. r0, r31, 0x10
/* 802B44F0 002B1450 41 82 00 24 */ beq lbl_802B4514
/* 802B44F4 002B1454 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 802B44F8 002B1458 28 03 00 00 */ cmplwi r3, 0
/* 802B44FC 002B145C 41 82 00 18 */ beq lbl_802B4514
/* 802B4500 002B1460 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4504 002B1464 38 80 00 01 */ li r4, 1
/* 802B4508 002B1468 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B450C 002B146C 7D 89 03 A6 */ mtctr r12
/* 802B4510 002B1470 4E 80 04 21 */ bctrl
lbl_802B4514:
/* 802B4514 002B1474 34 1F 00 0C */ addic. r0, r31, 0xc
/* 802B4518 002B1478 41 82 00 24 */ beq lbl_802B453C
/* 802B451C 002B147C 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 802B4520 002B1480 28 03 00 00 */ cmplwi r3, 0
/* 802B4524 002B1484 41 82 00 18 */ beq lbl_802B453C
/* 802B4528 002B1488 81 83 00 00 */ lwz r12, 0(r3)
/* 802B452C 002B148C 38 80 00 01 */ li r4, 1
/* 802B4530 002B1490 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4534 002B1494 7D 89 03 A6 */ mtctr r12
/* 802B4538 002B1498 4E 80 04 21 */ bctrl
lbl_802B453C:
/* 802B453C 002B149C 34 1F 00 08 */ addic. r0, r31, 8
/* 802B4540 002B14A0 41 82 00 24 */ beq lbl_802B4564
/* 802B4544 002B14A4 80 7F 00 08 */ lwz r3, 8(r31)
/* 802B4548 002B14A8 28 03 00 00 */ cmplwi r3, 0
/* 802B454C 002B14AC 41 82 00 18 */ beq lbl_802B4564
/* 802B4550 002B14B0 81 83 00 00 */ lwz r12, 0(r3)
/* 802B4554 002B14B4 38 80 00 01 */ li r4, 1
/* 802B4558 002B14B8 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B455C 002B14BC 7D 89 03 A6 */ mtctr r12
/* 802B4560 002B14C0 4E 80 04 21 */ bctrl
lbl_802B4564:
/* 802B4564 002B14C4 34 1F 00 04 */ addic. r0, r31, 4
/* 802B4568 002B14C8 41 82 00 24 */ beq lbl_802B458C
/* 802B456C 002B14CC 80 7F 00 04 */ lwz r3, 4(r31)
/* 802B4570 002B14D0 28 03 00 00 */ cmplwi r3, 0
/* 802B4574 002B14D4 41 82 00 18 */ beq lbl_802B458C
/* 802B4578 002B14D8 81 83 00 00 */ lwz r12, 0(r3)
/* 802B457C 002B14DC 38 80 00 01 */ li r4, 1
/* 802B4580 002B14E0 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B4584 002B14E4 7D 89 03 A6 */ mtctr r12
/* 802B4588 002B14E8 4E 80 04 21 */ bctrl
lbl_802B458C:
/* 802B458C 002B14EC 28 1F 00 00 */ cmplwi r31, 0
/* 802B4590 002B14F0 41 82 00 24 */ beq lbl_802B45B4
/* 802B4594 002B14F4 80 7F 00 00 */ lwz r3, 0(r31)
/* 802B4598 002B14F8 28 03 00 00 */ cmplwi r3, 0
/* 802B459C 002B14FC 41 82 00 18 */ beq lbl_802B45B4
/* 802B45A0 002B1500 81 83 00 00 */ lwz r12, 0(r3)
/* 802B45A4 002B1504 38 80 00 01 */ li r4, 1
/* 802B45A8 002B1508 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B45AC 002B150C 7D 89 03 A6 */ mtctr r12
/* 802B45B0 002B1510 4E 80 04 21 */ bctrl
lbl_802B45B4:
/* 802B45B4 002B1514 7F C0 07 35 */ extsh. r0, r30
/* 802B45B8 002B1518 40 81 00 0C */ ble lbl_802B45C4
/* 802B45BC 002B151C 7F E3 FB 78 */ mr r3, r31
/* 802B45C0 002B1520 48 06 13 71 */ bl Free__7CMemoryFPCv
lbl_802B45C4:
/* 802B45C4 002B1524 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B45C8 002B1528 7F E3 FB 78 */ mr r3, r31
/* 802B45CC 002B152C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B45D0 002B1530 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B45D4 002B1534 7C 08 03 A6 */ mtlr r0
/* 802B45D8 002B1538 38 21 00 10 */ addi r1, r1, 0x10
/* 802B45DC 002B153C 4E 80 00 20 */ blr
.global FDecalDataFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer
FDecalDataFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer:
/* 802B45E0 002B1540 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B45E4 002B1544 7C 08 02 A6 */ mflr r0
/* 802B45E8 002B1548 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B45EC 002B154C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B45F0 002B1550 7C 7F 1B 78 */ mr r31, r3
/* 802B45F4 002B1554 7C A3 2B 78 */ mr r3, r5
/* 802B45F8 002B1558 80 C6 00 00 */ lwz r6, 0(r6)
/* 802B45FC 002B155C 90 C1 00 08 */ stw r6, 8(r1)
/* 802B4600 002B1560 80 86 00 04 */ lwz r4, 4(r6)
/* 802B4604 002B1564 38 04 00 01 */ addi r0, r4, 1
/* 802B4608 002B1568 90 06 00 04 */ stw r0, 4(r6)
/* 802B460C 002B156C 80 81 00 08 */ lwz r4, 8(r1)
/* 802B4610 002B1570 80 84 00 00 */ lwz r4, 0(r4)
/* 802B4614 002B1574 80 84 00 04 */ lwz r4, 4(r4)
/* 802B4618 002B1578 4B FF FB E1 */ bl GetGeneratorDesc__17CDecalDataFactoryFR12CInputStreamP11CSimplePool
/* 802B461C 002B157C 7C 60 1B 78 */ mr r0, r3
/* 802B4620 002B1580 7F E3 FB 78 */ mr r3, r31
/* 802B4624 002B1584 7C 04 03 78 */ mr r4, r0
/* 802B4628 002B1588 48 00 00 21 */ bl "__ct__Q24rstl29auto_ptr<17CDecalDescription>FP17CDecalDescription"
/* 802B462C 002B158C 38 61 00 08 */ addi r3, r1, 8
/* 802B4630 002B1590 4B D7 FC D5 */ bl sub_80034304
/* 802B4634 002B1594 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B4638 002B1598 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B463C 002B159C 7C 08 03 A6 */ mtlr r0
/* 802B4640 002B15A0 38 21 00 20 */ addi r1, r1, 0x20
/* 802B4644 002B15A4 4E 80 00 20 */ blr
.global "__ct__Q24rstl29auto_ptr<17CDecalDescription>FP17CDecalDescription"
"__ct__Q24rstl29auto_ptr<17CDecalDescription>FP17CDecalDescription":
/* 802B4648 002B15A8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B464C 002B15AC 7C 08 02 A6 */ mflr r0
/* 802B4650 002B15B0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B4654 002B15B4 7C 04 00 D0 */ neg r0, r4
/* 802B4658 002B15B8 7C 00 23 78 */ or r0, r0, r4
/* 802B465C 002B15BC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B4660 002B15C0 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B4664 002B15C4 7C 7F 1B 78 */ mr r31, r3
/* 802B4668 002B15C8 38 61 00 08 */ addi r3, r1, 8
/* 802B466C 002B15CC 90 81 00 14 */ stw r4, 0x14(r1)
/* 802B4670 002B15D0 38 81 00 10 */ addi r4, r1, 0x10
/* 802B4674 002B15D4 98 01 00 10 */ stb r0, 0x10(r1)
/* 802B4678 002B15D8 48 00 00 75 */ bl "GetIObjObjectFor__27TToken<17CDecalDescription>FRCQ24rstl29auto_ptr<17CDecalDescription>"
/* 802B467C 002B15DC 80 61 00 0C */ lwz r3, 0xc(r1)
/* 802B4680 002B15E0 38 00 00 00 */ li r0, 0
/* 802B4684 002B15E4 98 01 00 08 */ stb r0, 8(r1)
/* 802B4688 002B15E8 7C 03 00 D0 */ neg r0, r3
/* 802B468C 002B15EC 7C 00 1B 78 */ or r0, r0, r3
/* 802B4690 002B15F0 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B4694 002B15F4 98 1F 00 00 */ stb r0, 0(r31)
/* 802B4698 002B15F8 90 7F 00 04 */ stw r3, 4(r31)
/* 802B469C 002B15FC 88 01 00 08 */ lbz r0, 8(r1)
/* 802B46A0 002B1600 28 00 00 00 */ cmplwi r0, 0
/* 802B46A4 002B1604 41 82 00 24 */ beq lbl_802B46C8
/* 802B46A8 002B1608 80 61 00 0C */ lwz r3, 0xc(r1)
/* 802B46AC 002B160C 28 03 00 00 */ cmplwi r3, 0
/* 802B46B0 002B1610 41 82 00 18 */ beq lbl_802B46C8
/* 802B46B4 002B1614 81 83 00 00 */ lwz r12, 0(r3)
/* 802B46B8 002B1618 38 80 00 01 */ li r4, 1
/* 802B46BC 002B161C 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B46C0 002B1620 7D 89 03 A6 */ mtctr r12
/* 802B46C4 002B1624 4E 80 04 21 */ bctrl
lbl_802B46C8:
/* 802B46C8 002B1628 38 61 00 10 */ addi r3, r1, 0x10
/* 802B46CC 002B162C 38 80 FF FF */ li r4, -1
/* 802B46D0 002B1630 48 00 00 E5 */ bl sub_802b47b4
/* 802B46D4 002B1634 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B46D8 002B1638 7F E3 FB 78 */ mr r3, r31
/* 802B46DC 002B163C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B46E0 002B1640 7C 08 03 A6 */ mtlr r0
/* 802B46E4 002B1644 38 21 00 20 */ addi r1, r1, 0x20
/* 802B46E8 002B1648 4E 80 00 20 */ blr
.global "GetIObjObjectFor__27TToken<17CDecalDescription>FRCQ24rstl29auto_ptr<17CDecalDescription>"
"GetIObjObjectFor__27TToken<17CDecalDescription>FRCQ24rstl29auto_ptr<17CDecalDescription>":
/* 802B46EC 002B164C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B46F0 002B1650 7C 08 02 A6 */ mflr r0
/* 802B46F4 002B1654 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B46F8 002B1658 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B46FC 002B165C 7C 7F 1B 78 */ mr r31, r3
/* 802B4700 002B1660 48 00 00 19 */ bl "GetNewDerivedObject__45TObjOwnerDerivedFromIObj<17CDecalDescription>FRCQ24rstl29auto_ptr<17CDecalDescription>"
/* 802B4704 002B1664 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4708 002B1668 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B470C 002B166C 7C 08 03 A6 */ mtlr r0
/* 802B4710 002B1670 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4714 002B1674 4E 80 00 20 */ blr
.global "GetNewDerivedObject__45TObjOwnerDerivedFromIObj<17CDecalDescription>FRCQ24rstl29auto_ptr<17CDecalDescription>"
"GetNewDerivedObject__45TObjOwnerDerivedFromIObj<17CDecalDescription>FRCQ24rstl29auto_ptr<17CDecalDescription>":
/* 802B4718 002B1678 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B471C 002B167C 7C 08 02 A6 */ mflr r0
/* 802B4720 002B1680 3C A0 80 3D */ lis r5, lbl_803D6548@ha
/* 802B4724 002B1684 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4728 002B1688 38 05 65 48 */ addi r0, r5, lbl_803D6548@l
/* 802B472C 002B168C 38 A0 00 00 */ li r5, 0
/* 802B4730 002B1690 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4734 002B1694 7C 9F 23 78 */ mr r31, r4
/* 802B4738 002B1698 7C 04 03 78 */ mr r4, r0
/* 802B473C 002B169C 93 C1 00 08 */ stw r30, 8(r1)
/* 802B4740 002B16A0 7C 7E 1B 78 */ mr r30, r3
/* 802B4744 002B16A4 38 60 00 08 */ li r3, 8
/* 802B4748 002B16A8 48 06 11 25 */ bl __nw__FUlPCcPCc
/* 802B474C 002B16AC 28 03 00 00 */ cmplwi r3, 0
/* 802B4750 002B16B0 41 82 00 38 */ beq lbl_802B4788
/* 802B4754 002B16B4 3C 80 80 3E */ lis r4, __vt__4IObj@ha
/* 802B4758 002B16B8 3C A0 80 3E */ lis r5, __vt__31TObjOwnerDerivedFromIObjUntyped@ha
/* 802B475C 002B16BC 38 04 8D 6C */ addi r0, r4, __vt__4IObj@l
/* 802B4760 002B16C0 3C 80 80 3F */ lis r4, lbl_803EC548@ha
/* 802B4764 002B16C4 90 03 00 00 */ stw r0, 0(r3)
/* 802B4768 002B16C8 38 C5 8D 78 */ addi r6, r5, __vt__31TObjOwnerDerivedFromIObjUntyped@l
/* 802B476C 002B16CC 38 A0 00 00 */ li r5, 0
/* 802B4770 002B16D0 38 04 C5 48 */ addi r0, r4, lbl_803EC548@l
/* 802B4774 002B16D4 90 C3 00 00 */ stw r6, 0(r3)
/* 802B4778 002B16D8 98 BF 00 00 */ stb r5, 0(r31)
/* 802B477C 002B16DC 80 9F 00 04 */ lwz r4, 4(r31)
/* 802B4780 002B16E0 90 83 00 04 */ stw r4, 4(r3)
/* 802B4784 002B16E4 90 03 00 00 */ stw r0, 0(r3)
lbl_802B4788:
/* 802B4788 002B16E8 7C 03 00 D0 */ neg r0, r3
/* 802B478C 002B16EC 7C 00 1B 78 */ or r0, r0, r3
/* 802B4790 002B16F0 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B4794 002B16F4 98 1E 00 00 */ stb r0, 0(r30)
/* 802B4798 002B16F8 90 7E 00 04 */ stw r3, 4(r30)
/* 802B479C 002B16FC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B47A0 002B1700 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B47A4 002B1704 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B47A8 002B1708 7C 08 03 A6 */ mtlr r0
/* 802B47AC 002B170C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B47B0 002B1710 4E 80 00 20 */ blr
.global sub_802b47b4
sub_802b47b4:
/* 802B47B4 002B1714 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B47B8 002B1718 7C 08 02 A6 */ mflr r0
/* 802B47BC 002B171C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B47C0 002B1720 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B47C4 002B1724 7C 9F 23 78 */ mr r31, r4
/* 802B47C8 002B1728 93 C1 00 08 */ stw r30, 8(r1)
/* 802B47CC 002B172C 7C 7E 1B 79 */ or. r30, r3, r3
/* 802B47D0 002B1730 41 82 00 2C */ beq lbl_802B47FC
/* 802B47D4 002B1734 88 1E 00 00 */ lbz r0, 0(r30)
/* 802B47D8 002B1738 28 00 00 00 */ cmplwi r0, 0
/* 802B47DC 002B173C 41 82 00 10 */ beq lbl_802B47EC
/* 802B47E0 002B1740 80 7E 00 04 */ lwz r3, 4(r30)
/* 802B47E4 002B1744 38 80 00 01 */ li r4, 1
/* 802B47E8 002B1748 4B FF FA C1 */ bl sub_802b42a8
lbl_802B47EC:
/* 802B47EC 002B174C 7F E0 07 35 */ extsh. r0, r31
/* 802B47F0 002B1750 40 81 00 0C */ ble lbl_802B47FC
/* 802B47F4 002B1754 7F C3 F3 78 */ mr r3, r30
/* 802B47F8 002B1758 48 06 11 39 */ bl Free__7CMemoryFPCv
lbl_802B47FC:
/* 802B47FC 002B175C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4800 002B1760 7F C3 F3 78 */ mr r3, r30
/* 802B4804 002B1764 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4808 002B1768 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B480C 002B176C 7C 08 03 A6 */ mtlr r0
/* 802B4810 002B1770 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4814 002B1774 4E 80 00 20 */ blr
.global IsConstant__12CRealElementCFv
IsConstant__12CRealElementCFv:
/* 802B4818 002B1778 38 60 00 00 */ li r3, 0
/* 802B481C 002B177C 4E 80 00 20 */ blr
.global IsFastConstant__14CVectorElementCFv
IsFastConstant__14CVectorElementCFv:
/* 802B4820 002B1780 38 60 00 00 */ li r3, 0
/* 802B4824 002B1784 4E 80 00 20 */ blr
.section .rodata
.global lbl_803D6548
lbl_803D6548:
# ROM: 0x3D3548
.asciz "??(??)"
.balign 4