prime/asm/Weapons/CProjectileWeaponDataFactory.s

1184 lines
59 KiB
ArmAsm

.include "macros.inc"
.section .data
.balign 8
.global lbl_803EC508
lbl_803EC508:
# ROM: 0x3E9508
.4byte 0
.4byte 0
.4byte "__dt__46TObjOwnerDerivedFromIObj<18CWeaponDescription>Fv"
.4byte 0
.section .text, "ax"
.global CreateWPSM__28CProjectileWeaponDataFactoryFP18CWeaponDescriptionR12CInputStreamP11CSimplePool
CreateWPSM__28CProjectileWeaponDataFactoryFP18CWeaponDescriptionR12CInputStreamP11CSimplePool:
/* 802B1144 002AE0A4 94 21 FE 90 */ stwu r1, -0x170(r1)
/* 802B1148 002AE0A8 7C 08 02 A6 */ mflr r0
/* 802B114C 002AE0AC 90 01 01 74 */ stw r0, 0x174(r1)
/* 802B1150 002AE0B0 BF 41 01 58 */ stmw r26, 0x158(r1)
/* 802B1154 002AE0B4 7C 7F 1B 78 */ mr r31, r3
/* 802B1158 002AE0B8 7C 9E 23 78 */ mr r30, r4
/* 802B115C 002AE0BC 7C BD 2B 78 */ mr r29, r5
/* 802B1160 002AE0C0 38 61 00 28 */ addi r3, r1, 0x28
/* 802B1164 002AE0C4 3B 80 00 00 */ li r28, 0
/* 802B1168 002AE0C8 38 80 00 63 */ li r4, 0x63
/* 802B116C 002AE0CC 48 06 14 81 */ bl __ct__9CRandom16FUi
/* 802B1170 002AE0D0 38 61 01 40 */ addi r3, r1, 0x140
/* 802B1174 002AE0D4 38 81 00 28 */ addi r4, r1, 0x28
/* 802B1178 002AE0D8 48 06 15 09 */ bl __ct__13CGlobalRandomFR9CRandom16
/* 802B117C 002AE0DC 48 00 0C 64 */ b lbl_802B1DE0
lbl_802B1180:
/* 802B1180 002AE0E0 7F C3 F3 78 */ mr r3, r30
/* 802B1184 002AE0E4 48 07 72 D9 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1188 002AE0E8 7C 03 D8 00 */ cmpw r3, r27
/* 802B118C 002AE0EC 41 82 0C 18 */ beq lbl_802B1DA4
/* 802B1190 002AE0F0 40 80 01 1C */ bge lbl_802B12AC
/* 802B1194 002AE0F4 3C A0 41 53 */ lis r5, 0x41535731@ha
/* 802B1198 002AE0F8 38 05 57 31 */ addi r0, r5, 0x41535731@l
/* 802B119C 002AE0FC 7C 03 00 00 */ cmpw r3, r0
/* 802B11A0 002AE100 41 82 06 E8 */ beq lbl_802B1888
/* 802B11A4 002AE104 40 80 00 7C */ bge lbl_802B1220
/* 802B11A8 002AE108 3C 80 41 50 */ lis r4, 0x4150534D@ha
/* 802B11AC 002AE10C 38 04 53 4D */ addi r0, r4, 0x4150534D@l
/* 802B11B0 002AE110 7C 03 00 00 */ cmpw r3, r0
/* 802B11B4 002AE114 41 82 02 64 */ beq lbl_802B1418
/* 802B11B8 002AE118 40 80 00 34 */ bge lbl_802B11EC
/* 802B11BC 002AE11C 38 04 32 31 */ addi r0, r4, 0x3231
/* 802B11C0 002AE120 7C 03 00 00 */ cmpw r3, r0
/* 802B11C4 002AE124 41 82 06 A4 */ beq lbl_802B1868
/* 802B11C8 002AE128 40 80 00 14 */ bge lbl_802B11DC
/* 802B11CC 002AE12C 38 04 31 31 */ addi r0, r4, 0x3131
/* 802B11D0 002AE130 7C 03 00 00 */ cmpw r3, r0
/* 802B11D4 002AE134 41 82 04 64 */ beq lbl_802B1638
/* 802B11D8 002AE138 48 00 0B F4 */ b lbl_802B1DCC
lbl_802B11DC:
/* 802B11DC 002AE13C 38 04 53 32 */ addi r0, r4, 0x5332
/* 802B11E0 002AE140 7C 03 00 00 */ cmpw r3, r0
/* 802B11E4 002AE144 41 82 04 64 */ beq lbl_802B1648
/* 802B11E8 002AE148 48 00 0B E4 */ b lbl_802B1DCC
lbl_802B11EC:
/* 802B11EC 002AE14C 38 05 31 31 */ addi r0, r5, 0x3131
/* 802B11F0 002AE150 7C 03 00 00 */ cmpw r3, r0
/* 802B11F4 002AE154 41 82 07 6C */ beq lbl_802B1960
/* 802B11F8 002AE158 40 80 00 14 */ bge lbl_802B120C
/* 802B11FC 002AE15C 38 04 53 4F */ addi r0, r4, 0x534f
/* 802B1200 002AE160 7C 03 00 00 */ cmpw r3, r0
/* 802B1204 002AE164 41 82 06 74 */ beq lbl_802B1878
/* 802B1208 002AE168 48 00 0B C4 */ b lbl_802B1DCC
lbl_802B120C:
/* 802B120C 002AE16C 38 05 31 33 */ addi r0, r5, 0x3133
/* 802B1210 002AE170 7C 03 00 00 */ cmpw r3, r0
/* 802B1214 002AE174 41 82 09 1C */ beq lbl_802B1B30
/* 802B1218 002AE178 40 80 0B B4 */ bge lbl_802B1DCC
/* 802B121C 002AE17C 48 00 08 2C */ b lbl_802B1A48
lbl_802B1220:
/* 802B1220 002AE180 3C 80 46 4F */ lis r4, 0x464F4646@ha
/* 802B1224 002AE184 38 04 46 46 */ addi r0, r4, 0x464F4646@l
/* 802B1228 002AE188 7C 03 00 00 */ cmpw r3, r0
/* 802B122C 002AE18C 41 82 0B 58 */ beq lbl_802B1D84
/* 802B1230 002AE190 40 80 00 40 */ bge lbl_802B1270
/* 802B1234 002AE194 3C 80 43 4F */ lis r4, 0x434F4C52@ha
/* 802B1238 002AE198 38 04 4C 52 */ addi r0, r4, 0x434F4C52@l
/* 802B123C 002AE19C 7C 03 00 00 */ cmpw r3, r0
/* 802B1240 002AE1A0 41 82 09 F8 */ beq lbl_802B1C38
/* 802B1244 002AE1A4 40 80 00 18 */ bge lbl_802B125C
/* 802B1248 002AE1A8 38 05 57 33 */ addi r0, r5, 0x5733
/* 802B124C 002AE1AC 7C 03 00 00 */ cmpw r3, r0
/* 802B1250 002AE1B0 41 82 08 08 */ beq lbl_802B1A58
/* 802B1254 002AE1B4 40 80 0B 78 */ bge lbl_802B1DCC
/* 802B1258 002AE1B8 48 00 07 18 */ b lbl_802B1970
lbl_802B125C:
/* 802B125C 002AE1BC 3C 80 45 57 */ lis r4, 0x45575452@ha
/* 802B1260 002AE1C0 38 04 54 52 */ addi r0, r4, 0x45575452@l
/* 802B1264 002AE1C4 7C 03 00 00 */ cmpw r3, r0
/* 802B1268 002AE1C8 41 82 0B 2C */ beq lbl_802B1D94
/* 802B126C 002AE1CC 48 00 0B 60 */ b lbl_802B1DCC
lbl_802B1270:
/* 802B1270 002AE1D0 3C 80 49 4F */ lis r4, 0x494F524E@ha
/* 802B1274 002AE1D4 38 04 52 4E */ addi r0, r4, 0x494F524E@l
/* 802B1278 002AE1D8 7C 03 00 00 */ cmpw r3, r0
/* 802B127C 002AE1DC 41 82 01 3C */ beq lbl_802B13B8
/* 802B1280 002AE1E0 40 80 00 18 */ bge lbl_802B1298
/* 802B1284 002AE1E4 3C 80 48 4F */ lis r4, 0x484F4D47@ha
/* 802B1288 002AE1E8 38 04 4D 47 */ addi r0, r4, 0x484F4D47@l
/* 802B128C 002AE1EC 7C 03 00 00 */ cmpw r3, r0
/* 802B1290 002AE1F0 41 82 0A A0 */ beq lbl_802B1D30
/* 802B1294 002AE1F4 48 00 0B 38 */ b lbl_802B1DCC
lbl_802B1298:
/* 802B1298 002AE1F8 3C 80 49 56 */ lis r4, 0x49564543@ha
/* 802B129C 002AE1FC 38 04 45 43 */ addi r0, r4, 0x49564543@l
/* 802B12A0 002AE200 7C 03 00 00 */ cmpw r3, r0
/* 802B12A4 002AE204 41 82 01 24 */ beq lbl_802B13C8
/* 802B12A8 002AE208 48 00 0B 24 */ b lbl_802B1DCC
lbl_802B12AC:
/* 802B12AC 002AE20C 3C A0 50 53 */ lis r5, 0x50534F56@ha
/* 802B12B0 002AE210 38 05 4F 56 */ addi r0, r5, 0x50534F56@l
/* 802B12B4 002AE214 7C 03 00 00 */ cmpw r3, r0
/* 802B12B8 002AE218 41 82 01 20 */ beq lbl_802B13D8
/* 802B12BC 002AE21C 40 80 00 88 */ bge lbl_802B1344
/* 802B12C0 002AE220 3C 80 50 4A */ lis r4, 0x504A4658@ha
/* 802B12C4 002AE224 38 04 46 58 */ addi r0, r4, 0x504A4658@l
/* 802B12C8 002AE228 7C 03 00 00 */ cmpw r3, r0
/* 802B12CC 002AE22C 41 82 0A 84 */ beq lbl_802B1D50
/* 802B12D0 002AE230 40 80 00 40 */ bge lbl_802B1310
/* 802B12D4 002AE234 3C 80 4F 48 */ lis r4, 0x4F484546@ha
/* 802B12D8 002AE238 38 04 45 46 */ addi r0, r4, 0x4F484546@l
/* 802B12DC 002AE23C 7C 03 00 00 */ cmpw r3, r0
/* 802B12E0 002AE240 41 82 08 60 */ beq lbl_802B1B40
/* 802B12E4 002AE244 40 80 00 18 */ bge lbl_802B12FC
/* 802B12E8 002AE248 3C 80 4F 46 */ lis r4, 0x4F465354@ha
/* 802B12EC 002AE24C 38 04 53 54 */ addi r0, r4, 0x4F465354@l
/* 802B12F0 002AE250 7C 03 00 00 */ cmpw r3, r0
/* 802B12F4 002AE254 41 82 0A 2C */ beq lbl_802B1D20
/* 802B12F8 002AE258 48 00 0A D4 */ b lbl_802B1DCC
lbl_802B12FC:
/* 802B12FC 002AE25C 3C 80 50 43 */ lis r4, 0x50434F4C@ha
/* 802B1300 002AE260 38 04 4F 4C */ addi r0, r4, 0x50434F4C@l
/* 802B1304 002AE264 7C 03 00 00 */ cmpw r3, r0
/* 802B1308 002AE268 41 82 09 20 */ beq lbl_802B1C28
/* 802B130C 002AE26C 48 00 0A C0 */ b lbl_802B1DCC
lbl_802B1310:
/* 802B1310 002AE270 38 05 43 4C */ addi r0, r5, 0x434c
/* 802B1314 002AE274 7C 03 00 00 */ cmpw r3, r0
/* 802B1318 002AE278 41 82 09 00 */ beq lbl_802B1C18
/* 802B131C 002AE27C 40 80 00 18 */ bge lbl_802B1334
/* 802B1320 002AE280 3C 80 50 4F */ lis r4, 0x504F4653@ha
/* 802B1324 002AE284 38 04 46 53 */ addi r0, r4, 0x504F4653@l
/* 802B1328 002AE288 7C 03 00 00 */ cmpw r3, r0
/* 802B132C 002AE28C 41 82 09 E4 */ beq lbl_802B1D10
/* 802B1330 002AE290 48 00 0A 9C */ b lbl_802B1DCC
lbl_802B1334:
/* 802B1334 002AE294 38 05 4C 54 */ addi r0, r5, 0x4c54
/* 802B1338 002AE298 7C 03 00 00 */ cmpw r3, r0
/* 802B133C 002AE29C 41 82 00 CC */ beq lbl_802B1408
/* 802B1340 002AE2A0 48 00 0A 8C */ b lbl_802B1DCC
lbl_802B1344:
/* 802B1344 002AE2A4 3C 80 54 52 */ lis r4, 0x54524154@ha
/* 802B1348 002AE2A8 38 04 41 54 */ addi r0, r4, 0x54524154@l
/* 802B134C 002AE2AC 7C 03 00 00 */ cmpw r3, r0
/* 802B1350 002AE2B0 41 82 09 F0 */ beq lbl_802B1D40
/* 802B1354 002AE2B4 40 80 00 3C */ bge lbl_802B1390
/* 802B1358 002AE2B8 3C 80 52 4E */ lis r4, 0x524E4745@ha
/* 802B135C 002AE2BC 38 04 47 45 */ addi r0, r4, 0x524E4745@l
/* 802B1360 002AE2C0 7C 03 00 00 */ cmpw r3, r0
/* 802B1364 002AE2C4 41 82 0A 10 */ beq lbl_802B1D74
/* 802B1368 002AE2C8 40 80 00 14 */ bge lbl_802B137C
/* 802B136C 002AE2CC 38 05 56 4D */ addi r0, r5, 0x564d
/* 802B1370 002AE2D0 7C 03 00 00 */ cmpw r3, r0
/* 802B1374 002AE2D4 41 82 00 74 */ beq lbl_802B13E8
/* 802B1378 002AE2D8 48 00 0A 54 */ b lbl_802B1DCC
lbl_802B137C:
/* 802B137C 002AE2DC 3C 80 53 57 */ lis r4, 0x53575452@ha
/* 802B1380 002AE2E0 38 04 54 52 */ addi r0, r4, 0x53575452@l
/* 802B1384 002AE2E4 7C 03 00 00 */ cmpw r3, r0
/* 802B1388 002AE2E8 41 82 0A 2C */ beq lbl_802B1DB4
/* 802B138C 002AE2EC 48 00 0A 40 */ b lbl_802B1DCC
lbl_802B1390:
/* 802B1390 002AE2F0 3C 80 5F 45 */ lis r4, 0x5F454E44@ha
/* 802B1394 002AE2F4 38 04 4E 44 */ addi r0, r4, 0x5F454E44@l
/* 802B1398 002AE2F8 7C 03 00 00 */ cmpw r3, r0
/* 802B139C 002AE2FC 41 82 0A 28 */ beq lbl_802B1DC4
/* 802B13A0 002AE300 40 80 0A 2C */ bge lbl_802B1DCC
/* 802B13A4 002AE304 3C 80 56 4D */ lis r4, 0x564D4432@ha
/* 802B13A8 002AE308 38 04 44 32 */ addi r0, r4, 0x564D4432@l
/* 802B13AC 002AE30C 7C 03 00 00 */ cmpw r3, r0
/* 802B13B0 002AE310 41 82 00 48 */ beq lbl_802B13F8
/* 802B13B4 002AE314 48 00 0A 18 */ b lbl_802B1DCC
lbl_802B13B8:
/* 802B13B8 002AE318 7F C3 F3 78 */ mr r3, r30
/* 802B13BC 002AE31C 48 07 4E 99 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B13C0 002AE320 90 7F 00 00 */ stw r3, 0(r31)
/* 802B13C4 002AE324 48 00 0A 24 */ b lbl_802B1DE8
lbl_802B13C8:
/* 802B13C8 002AE328 7F C3 F3 78 */ mr r3, r30
/* 802B13CC 002AE32C 48 07 4E 89 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B13D0 002AE330 90 7F 00 04 */ stw r3, 4(r31)
/* 802B13D4 002AE334 48 00 0A 14 */ b lbl_802B1DE8
lbl_802B13D8:
/* 802B13D8 002AE338 7F C3 F3 78 */ mr r3, r30
/* 802B13DC 002AE33C 48 07 4E 79 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B13E0 002AE340 90 7F 00 08 */ stw r3, 8(r31)
/* 802B13E4 002AE344 48 00 0A 04 */ b lbl_802B1DE8
lbl_802B13E8:
/* 802B13E8 002AE348 7F C3 F3 78 */ mr r3, r30
/* 802B13EC 002AE34C 48 07 44 11 */ bl GetModVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B13F0 002AE350 90 7F 00 0C */ stw r3, 0xc(r31)
/* 802B13F4 002AE354 48 00 09 F4 */ b lbl_802B1DE8
lbl_802B13F8:
/* 802B13F8 002AE358 7F C3 F3 78 */ mr r3, r30
/* 802B13FC 002AE35C 48 07 70 2D */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1400 002AE360 98 7F 00 10 */ stb r3, 0x10(r31)
/* 802B1404 002AE364 48 00 09 E4 */ b lbl_802B1DE8
lbl_802B1408:
/* 802B1408 002AE368 7F C3 F3 78 */ mr r3, r30
/* 802B140C 002AE36C 48 07 67 99 */ bl GetIntElement__20CParticleDataFactoryFR12CInputStream
/* 802B1410 002AE370 90 7F 00 14 */ stw r3, 0x14(r31)
/* 802B1414 002AE374 48 00 09 D4 */ b lbl_802B1DE8
lbl_802B1418:
/* 802B1418 002AE378 38 00 00 00 */ li r0, 0
/* 802B141C 002AE37C 7F C4 F3 78 */ mr r4, r30
/* 802B1420 002AE380 90 01 01 34 */ stw r0, 0x134(r1)
/* 802B1424 002AE384 7F A5 EB 78 */ mr r5, r29
/* 802B1428 002AE388 38 61 00 FC */ addi r3, r1, 0xfc
/* 802B142C 002AE38C 38 C1 01 30 */ addi r6, r1, 0x130
/* 802B1430 002AE390 90 01 01 38 */ stw r0, 0x138(r1)
/* 802B1434 002AE394 90 01 01 3C */ stw r0, 0x13c(r1)
/* 802B1438 002AE398 48 07 39 59 */ bl "GetChildGeneratorDesc__20CParticleDataFactoryFR12CInputStreamP11CSimplePoolRCQ24rstl37vector<Ui,Q24rstl17rmemory_allocator>"
/* 802B143C 002AE39C 88 01 01 04 */ lbz r0, 0x104(r1)
/* 802B1440 002AE3A0 28 00 00 00 */ cmplwi r0, 0
/* 802B1444 002AE3A4 98 01 01 2C */ stb r0, 0x12c(r1)
/* 802B1448 002AE3A8 41 82 00 14 */ beq lbl_802B145C
/* 802B144C 002AE3AC 34 61 01 24 */ addic. r3, r1, 0x124
/* 802B1450 002AE3B0 38 81 00 FC */ addi r4, r1, 0xfc
/* 802B1454 002AE3B4 41 82 00 08 */ beq lbl_802B145C
/* 802B1458 002AE3B8 48 08 FA 51 */ bl __ct__6CTokenFRC6CToken
lbl_802B145C:
/* 802B145C 002AE3BC 88 01 01 04 */ lbz r0, 0x104(r1)
/* 802B1460 002AE3C0 28 00 00 00 */ cmplwi r0, 0
/* 802B1464 002AE3C4 41 82 00 14 */ beq lbl_802B1478
/* 802B1468 002AE3C8 34 61 00 FC */ addic. r3, r1, 0xfc
/* 802B146C 002AE3CC 41 82 00 0C */ beq lbl_802B1478
/* 802B1470 002AE3D0 38 80 00 00 */ li r4, 0
/* 802B1474 002AE3D4 48 08 F9 CD */ bl __dt__6CTokenFv
lbl_802B1478:
/* 802B1478 002AE3D8 88 01 01 2C */ lbz r0, 0x12c(r1)
/* 802B147C 002AE3DC 38 60 00 00 */ li r3, 0
/* 802B1480 002AE3E0 98 61 01 04 */ stb r3, 0x104(r1)
/* 802B1484 002AE3E4 28 00 00 00 */ cmplwi r0, 0
/* 802B1488 002AE3E8 41 82 00 88 */ beq lbl_802B1510
/* 802B148C 002AE3EC 3B 41 00 F0 */ addi r26, r1, 0xf0
/* 802B1490 002AE3F0 38 81 01 24 */ addi r4, r1, 0x124
/* 802B1494 002AE3F4 7F 43 D3 78 */ mr r3, r26
/* 802B1498 002AE3F8 48 08 FA 11 */ bl __ct__6CTokenFRC6CToken
/* 802B149C 002AE3FC 7F 43 D3 78 */ mr r3, r26
/* 802B14A0 002AE400 48 08 F9 6D */ bl GetObj__6CTokenFv
/* 802B14A4 002AE404 80 03 00 04 */ lwz r0, 4(r3)
/* 802B14A8 002AE408 90 01 00 F8 */ stw r0, 0xf8(r1)
/* 802B14AC 002AE40C 88 1F 00 40 */ lbz r0, 0x40(r31)
/* 802B14B0 002AE410 28 00 00 00 */ cmplwi r0, 0
/* 802B14B4 002AE414 40 82 00 34 */ bne lbl_802B14E8
/* 802B14B8 002AE418 37 5F 00 34 */ addic. r26, r31, 0x34
/* 802B14BC 002AE41C 41 82 00 20 */ beq lbl_802B14DC
/* 802B14C0 002AE420 7F 43 D3 78 */ mr r3, r26
/* 802B14C4 002AE424 38 81 00 F0 */ addi r4, r1, 0xf0
/* 802B14C8 002AE428 48 08 F9 E1 */ bl __ct__6CTokenFRC6CToken
/* 802B14CC 002AE42C 80 01 00 F8 */ lwz r0, 0xf8(r1)
/* 802B14D0 002AE430 7F 43 D3 78 */ mr r3, r26
/* 802B14D4 002AE434 90 1A 00 08 */ stw r0, 8(r26)
/* 802B14D8 002AE438 48 08 F8 AD */ bl Lock__6CTokenFv
lbl_802B14DC:
/* 802B14DC 002AE43C 38 00 00 01 */ li r0, 1
/* 802B14E0 002AE440 98 1F 00 40 */ stb r0, 0x40(r31)
/* 802B14E4 002AE444 48 00 00 1C */ b lbl_802B1500
lbl_802B14E8:
/* 802B14E8 002AE448 3B 5F 00 34 */ addi r26, r31, 0x34
/* 802B14EC 002AE44C 38 81 00 F0 */ addi r4, r1, 0xf0
/* 802B14F0 002AE450 7F 43 D3 78 */ mr r3, r26
/* 802B14F4 002AE454 48 08 F7 D1 */ bl __as__6CTokenFRC6CToken
/* 802B14F8 002AE458 80 01 00 F8 */ lwz r0, 0xf8(r1)
/* 802B14FC 002AE45C 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1500:
/* 802B1500 002AE460 38 61 00 F0 */ addi r3, r1, 0xf0
/* 802B1504 002AE464 38 80 00 00 */ li r4, 0
/* 802B1508 002AE468 48 08 F9 39 */ bl __dt__6CTokenFv
/* 802B150C 002AE46C 48 00 00 C4 */ b lbl_802B15D0
lbl_802B1510:
/* 802B1510 002AE470 3B 5F 00 34 */ addi r26, r31, 0x34
/* 802B1514 002AE474 38 81 00 E0 */ addi r4, r1, 0xe0
/* 802B1518 002AE478 7C 1A 20 40 */ cmplw r26, r4
/* 802B151C 002AE47C 98 61 00 EC */ stb r3, 0xec(r1)
/* 802B1520 002AE480 41 82 00 84 */ beq lbl_802B15A4
/* 802B1524 002AE484 28 03 00 00 */ cmplwi r3, 0
/* 802B1528 002AE488 41 82 00 50 */ beq lbl_802B1578
/* 802B152C 002AE48C 88 1F 00 40 */ lbz r0, 0x40(r31)
/* 802B1530 002AE490 28 00 00 00 */ cmplwi r0, 0
/* 802B1534 002AE494 40 82 00 30 */ bne lbl_802B1564
/* 802B1538 002AE498 37 5F 00 34 */ addic. r26, r31, 0x34
/* 802B153C 002AE49C 41 82 00 1C */ beq lbl_802B1558
/* 802B1540 002AE4A0 7F 43 D3 78 */ mr r3, r26
/* 802B1544 002AE4A4 48 08 F9 65 */ bl __ct__6CTokenFRC6CToken
/* 802B1548 002AE4A8 80 01 00 E8 */ lwz r0, 0xe8(r1)
/* 802B154C 002AE4AC 7F 43 D3 78 */ mr r3, r26
/* 802B1550 002AE4B0 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1554 002AE4B4 48 08 F8 31 */ bl Lock__6CTokenFv
lbl_802B1558:
/* 802B1558 002AE4B8 38 00 00 01 */ li r0, 1
/* 802B155C 002AE4BC 98 1F 00 40 */ stb r0, 0x40(r31)
/* 802B1560 002AE4C0 48 00 00 44 */ b lbl_802B15A4
lbl_802B1564:
/* 802B1564 002AE4C4 7F 43 D3 78 */ mr r3, r26
/* 802B1568 002AE4C8 48 08 F7 5D */ bl __as__6CTokenFRC6CToken
/* 802B156C 002AE4CC 80 01 00 E8 */ lwz r0, 0xe8(r1)
/* 802B1570 002AE4D0 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1574 002AE4D4 48 00 00 30 */ b lbl_802B15A4
lbl_802B1578:
/* 802B1578 002AE4D8 88 1F 00 40 */ lbz r0, 0x40(r31)
/* 802B157C 002AE4DC 28 00 00 00 */ cmplwi r0, 0
/* 802B1580 002AE4E0 41 82 00 1C */ beq lbl_802B159C
/* 802B1584 002AE4E4 34 7F 00 34 */ addic. r3, r31, 0x34
/* 802B1588 002AE4E8 41 82 00 14 */ beq lbl_802B159C
/* 802B158C 002AE4EC 28 03 00 00 */ cmplwi r3, 0
/* 802B1590 002AE4F0 41 82 00 0C */ beq lbl_802B159C
/* 802B1594 002AE4F4 38 80 00 00 */ li r4, 0
/* 802B1598 002AE4F8 48 08 F8 A9 */ bl __dt__6CTokenFv
lbl_802B159C:
/* 802B159C 002AE4FC 38 00 00 00 */ li r0, 0
/* 802B15A0 002AE500 98 1F 00 40 */ stb r0, 0x40(r31)
lbl_802B15A4:
/* 802B15A4 002AE504 88 01 00 EC */ lbz r0, 0xec(r1)
/* 802B15A8 002AE508 28 00 00 00 */ cmplwi r0, 0
/* 802B15AC 002AE50C 41 82 00 1C */ beq lbl_802B15C8
/* 802B15B0 002AE510 34 61 00 E0 */ addic. r3, r1, 0xe0
/* 802B15B4 002AE514 41 82 00 14 */ beq lbl_802B15C8
/* 802B15B8 002AE518 28 03 00 00 */ cmplwi r3, 0
/* 802B15BC 002AE51C 41 82 00 0C */ beq lbl_802B15C8
/* 802B15C0 002AE520 38 80 00 00 */ li r4, 0
/* 802B15C4 002AE524 48 08 F8 7D */ bl __dt__6CTokenFv
lbl_802B15C8:
/* 802B15C8 002AE528 38 00 00 00 */ li r0, 0
/* 802B15CC 002AE52C 98 01 00 EC */ stb r0, 0xec(r1)
lbl_802B15D0:
/* 802B15D0 002AE530 88 01 01 2C */ lbz r0, 0x12c(r1)
/* 802B15D4 002AE534 28 00 00 00 */ cmplwi r0, 0
/* 802B15D8 002AE538 41 82 00 14 */ beq lbl_802B15EC
/* 802B15DC 002AE53C 34 61 01 24 */ addic. r3, r1, 0x124
/* 802B15E0 002AE540 41 82 00 0C */ beq lbl_802B15EC
/* 802B15E4 002AE544 38 80 00 00 */ li r4, 0
/* 802B15E8 002AE548 48 08 F8 59 */ bl __dt__6CTokenFv
lbl_802B15EC:
/* 802B15EC 002AE54C 80 01 01 34 */ lwz r0, 0x134(r1)
/* 802B15F0 002AE550 38 80 00 00 */ li r4, 0
/* 802B15F4 002AE554 80 61 01 3C */ lwz r3, 0x13c(r1)
/* 802B15F8 002AE558 54 00 10 3A */ slwi r0, r0, 2
/* 802B15FC 002AE55C 98 81 01 2C */ stb r4, 0x12c(r1)
/* 802B1600 002AE560 7C 03 02 14 */ add r0, r3, r0
/* 802B1604 002AE564 7C 64 1B 78 */ mr r4, r3
/* 802B1608 002AE568 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B160C 002AE56C 90 01 00 20 */ stw r0, 0x20(r1)
/* 802B1610 002AE570 90 61 00 1C */ stw r3, 0x1c(r1)
/* 802B1614 002AE574 90 61 00 18 */ stw r3, 0x18(r1)
/* 802B1618 002AE578 48 00 00 08 */ b lbl_802B1620
lbl_802B161C:
/* 802B161C 002AE57C 38 84 00 04 */ addi r4, r4, 4
lbl_802B1620:
/* 802B1620 002AE580 7C 04 00 40 */ cmplw r4, r0
/* 802B1624 002AE584 40 82 FF F8 */ bne lbl_802B161C
/* 802B1628 002AE588 28 03 00 00 */ cmplwi r3, 0
/* 802B162C 002AE58C 41 82 07 BC */ beq lbl_802B1DE8
/* 802B1630 002AE590 48 06 43 01 */ bl Free__7CMemoryFPCv
/* 802B1634 002AE594 48 00 07 B4 */ b lbl_802B1DE8
lbl_802B1638:
/* 802B1638 002AE598 7F C3 F3 78 */ mr r3, r30
/* 802B163C 002AE59C 48 07 6D ED */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1640 002AE5A0 98 7F 00 2A */ stb r3, 0x2a(r31)
/* 802B1644 002AE5A4 48 00 07 A4 */ b lbl_802B1DE8
lbl_802B1648:
/* 802B1648 002AE5A8 38 00 00 00 */ li r0, 0
/* 802B164C 002AE5AC 7F C4 F3 78 */ mr r4, r30
/* 802B1650 002AE5B0 90 01 01 18 */ stw r0, 0x118(r1)
/* 802B1654 002AE5B4 7F A5 EB 78 */ mr r5, r29
/* 802B1658 002AE5B8 38 61 00 D4 */ addi r3, r1, 0xd4
/* 802B165C 002AE5BC 38 C1 01 14 */ addi r6, r1, 0x114
/* 802B1660 002AE5C0 90 01 01 1C */ stw r0, 0x11c(r1)
/* 802B1664 002AE5C4 90 01 01 20 */ stw r0, 0x120(r1)
/* 802B1668 002AE5C8 48 07 37 29 */ bl "GetChildGeneratorDesc__20CParticleDataFactoryFR12CInputStreamP11CSimplePoolRCQ24rstl37vector<Ui,Q24rstl17rmemory_allocator>"
/* 802B166C 002AE5CC 88 01 00 DC */ lbz r0, 0xdc(r1)
/* 802B1670 002AE5D0 28 00 00 00 */ cmplwi r0, 0
/* 802B1674 002AE5D4 98 01 01 10 */ stb r0, 0x110(r1)
/* 802B1678 002AE5D8 41 82 00 14 */ beq lbl_802B168C
/* 802B167C 002AE5DC 34 61 01 08 */ addic. r3, r1, 0x108
/* 802B1680 002AE5E0 38 81 00 D4 */ addi r4, r1, 0xd4
/* 802B1684 002AE5E4 41 82 00 08 */ beq lbl_802B168C
/* 802B1688 002AE5E8 48 08 F8 21 */ bl __ct__6CTokenFRC6CToken
lbl_802B168C:
/* 802B168C 002AE5EC 88 01 00 DC */ lbz r0, 0xdc(r1)
/* 802B1690 002AE5F0 28 00 00 00 */ cmplwi r0, 0
/* 802B1694 002AE5F4 41 82 00 14 */ beq lbl_802B16A8
/* 802B1698 002AE5F8 34 61 00 D4 */ addic. r3, r1, 0xd4
/* 802B169C 002AE5FC 41 82 00 0C */ beq lbl_802B16A8
/* 802B16A0 002AE600 38 80 00 00 */ li r4, 0
/* 802B16A4 002AE604 48 08 F7 9D */ bl __dt__6CTokenFv
lbl_802B16A8:
/* 802B16A8 002AE608 88 01 01 10 */ lbz r0, 0x110(r1)
/* 802B16AC 002AE60C 38 60 00 00 */ li r3, 0
/* 802B16B0 002AE610 98 61 00 DC */ stb r3, 0xdc(r1)
/* 802B16B4 002AE614 28 00 00 00 */ cmplwi r0, 0
/* 802B16B8 002AE618 41 82 00 88 */ beq lbl_802B1740
/* 802B16BC 002AE61C 3B 41 00 C8 */ addi r26, r1, 0xc8
/* 802B16C0 002AE620 38 81 01 08 */ addi r4, r1, 0x108
/* 802B16C4 002AE624 7F 43 D3 78 */ mr r3, r26
/* 802B16C8 002AE628 48 08 F7 E1 */ bl __ct__6CTokenFRC6CToken
/* 802B16CC 002AE62C 7F 43 D3 78 */ mr r3, r26
/* 802B16D0 002AE630 48 08 F7 3D */ bl GetObj__6CTokenFv
/* 802B16D4 002AE634 80 03 00 04 */ lwz r0, 4(r3)
/* 802B16D8 002AE638 90 01 00 D0 */ stw r0, 0xd0(r1)
/* 802B16DC 002AE63C 88 1F 00 50 */ lbz r0, 0x50(r31)
/* 802B16E0 002AE640 28 00 00 00 */ cmplwi r0, 0
/* 802B16E4 002AE644 40 82 00 34 */ bne lbl_802B1718
/* 802B16E8 002AE648 37 5F 00 44 */ addic. r26, r31, 0x44
/* 802B16EC 002AE64C 41 82 00 20 */ beq lbl_802B170C
/* 802B16F0 002AE650 7F 43 D3 78 */ mr r3, r26
/* 802B16F4 002AE654 38 81 00 C8 */ addi r4, r1, 0xc8
/* 802B16F8 002AE658 48 08 F7 B1 */ bl __ct__6CTokenFRC6CToken
/* 802B16FC 002AE65C 80 01 00 D0 */ lwz r0, 0xd0(r1)
/* 802B1700 002AE660 7F 43 D3 78 */ mr r3, r26
/* 802B1704 002AE664 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1708 002AE668 48 08 F6 7D */ bl Lock__6CTokenFv
lbl_802B170C:
/* 802B170C 002AE66C 38 00 00 01 */ li r0, 1
/* 802B1710 002AE670 98 1F 00 50 */ stb r0, 0x50(r31)
/* 802B1714 002AE674 48 00 00 1C */ b lbl_802B1730
lbl_802B1718:
/* 802B1718 002AE678 3B 5F 00 44 */ addi r26, r31, 0x44
/* 802B171C 002AE67C 38 81 00 C8 */ addi r4, r1, 0xc8
/* 802B1720 002AE680 7F 43 D3 78 */ mr r3, r26
/* 802B1724 002AE684 48 08 F5 A1 */ bl __as__6CTokenFRC6CToken
/* 802B1728 002AE688 80 01 00 D0 */ lwz r0, 0xd0(r1)
/* 802B172C 002AE68C 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1730:
/* 802B1730 002AE690 38 61 00 C8 */ addi r3, r1, 0xc8
/* 802B1734 002AE694 38 80 00 00 */ li r4, 0
/* 802B1738 002AE698 48 08 F7 09 */ bl __dt__6CTokenFv
/* 802B173C 002AE69C 48 00 00 C4 */ b lbl_802B1800
lbl_802B1740:
/* 802B1740 002AE6A0 3B 5F 00 44 */ addi r26, r31, 0x44
/* 802B1744 002AE6A4 38 81 00 B8 */ addi r4, r1, 0xb8
/* 802B1748 002AE6A8 7C 1A 20 40 */ cmplw r26, r4
/* 802B174C 002AE6AC 98 61 00 C4 */ stb r3, 0xc4(r1)
/* 802B1750 002AE6B0 41 82 00 84 */ beq lbl_802B17D4
/* 802B1754 002AE6B4 28 03 00 00 */ cmplwi r3, 0
/* 802B1758 002AE6B8 41 82 00 50 */ beq lbl_802B17A8
/* 802B175C 002AE6BC 88 1F 00 50 */ lbz r0, 0x50(r31)
/* 802B1760 002AE6C0 28 00 00 00 */ cmplwi r0, 0
/* 802B1764 002AE6C4 40 82 00 30 */ bne lbl_802B1794
/* 802B1768 002AE6C8 37 5F 00 44 */ addic. r26, r31, 0x44
/* 802B176C 002AE6CC 41 82 00 1C */ beq lbl_802B1788
/* 802B1770 002AE6D0 7F 43 D3 78 */ mr r3, r26
/* 802B1774 002AE6D4 48 08 F7 35 */ bl __ct__6CTokenFRC6CToken
/* 802B1778 002AE6D8 80 01 00 C0 */ lwz r0, 0xc0(r1)
/* 802B177C 002AE6DC 7F 43 D3 78 */ mr r3, r26
/* 802B1780 002AE6E0 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1784 002AE6E4 48 08 F6 01 */ bl Lock__6CTokenFv
lbl_802B1788:
/* 802B1788 002AE6E8 38 00 00 01 */ li r0, 1
/* 802B178C 002AE6EC 98 1F 00 50 */ stb r0, 0x50(r31)
/* 802B1790 002AE6F0 48 00 00 44 */ b lbl_802B17D4
lbl_802B1794:
/* 802B1794 002AE6F4 7F 43 D3 78 */ mr r3, r26
/* 802B1798 002AE6F8 48 08 F5 2D */ bl __as__6CTokenFRC6CToken
/* 802B179C 002AE6FC 80 01 00 C0 */ lwz r0, 0xc0(r1)
/* 802B17A0 002AE700 90 1A 00 08 */ stw r0, 8(r26)
/* 802B17A4 002AE704 48 00 00 30 */ b lbl_802B17D4
lbl_802B17A8:
/* 802B17A8 002AE708 88 1F 00 50 */ lbz r0, 0x50(r31)
/* 802B17AC 002AE70C 28 00 00 00 */ cmplwi r0, 0
/* 802B17B0 002AE710 41 82 00 1C */ beq lbl_802B17CC
/* 802B17B4 002AE714 34 7F 00 44 */ addic. r3, r31, 0x44
/* 802B17B8 002AE718 41 82 00 14 */ beq lbl_802B17CC
/* 802B17BC 002AE71C 28 03 00 00 */ cmplwi r3, 0
/* 802B17C0 002AE720 41 82 00 0C */ beq lbl_802B17CC
/* 802B17C4 002AE724 38 80 00 00 */ li r4, 0
/* 802B17C8 002AE728 48 08 F6 79 */ bl __dt__6CTokenFv
lbl_802B17CC:
/* 802B17CC 002AE72C 38 00 00 00 */ li r0, 0
/* 802B17D0 002AE730 98 1F 00 50 */ stb r0, 0x50(r31)
lbl_802B17D4:
/* 802B17D4 002AE734 88 01 00 C4 */ lbz r0, 0xc4(r1)
/* 802B17D8 002AE738 28 00 00 00 */ cmplwi r0, 0
/* 802B17DC 002AE73C 41 82 00 1C */ beq lbl_802B17F8
/* 802B17E0 002AE740 34 61 00 B8 */ addic. r3, r1, 0xb8
/* 802B17E4 002AE744 41 82 00 14 */ beq lbl_802B17F8
/* 802B17E8 002AE748 28 03 00 00 */ cmplwi r3, 0
/* 802B17EC 002AE74C 41 82 00 0C */ beq lbl_802B17F8
/* 802B17F0 002AE750 38 80 00 00 */ li r4, 0
/* 802B17F4 002AE754 48 08 F6 4D */ bl __dt__6CTokenFv
lbl_802B17F8:
/* 802B17F8 002AE758 38 00 00 00 */ li r0, 0
/* 802B17FC 002AE75C 98 01 00 C4 */ stb r0, 0xc4(r1)
lbl_802B1800:
/* 802B1800 002AE760 88 01 01 10 */ lbz r0, 0x110(r1)
/* 802B1804 002AE764 28 00 00 00 */ cmplwi r0, 0
/* 802B1808 002AE768 41 82 00 14 */ beq lbl_802B181C
/* 802B180C 002AE76C 34 61 01 08 */ addic. r3, r1, 0x108
/* 802B1810 002AE770 41 82 00 0C */ beq lbl_802B181C
/* 802B1814 002AE774 38 80 00 00 */ li r4, 0
/* 802B1818 002AE778 48 08 F6 29 */ bl __dt__6CTokenFv
lbl_802B181C:
/* 802B181C 002AE77C 80 01 01 18 */ lwz r0, 0x118(r1)
/* 802B1820 002AE780 38 80 00 00 */ li r4, 0
/* 802B1824 002AE784 80 61 01 20 */ lwz r3, 0x120(r1)
/* 802B1828 002AE788 54 00 10 3A */ slwi r0, r0, 2
/* 802B182C 002AE78C 98 81 01 10 */ stb r4, 0x110(r1)
/* 802B1830 002AE790 7C 03 02 14 */ add r0, r3, r0
/* 802B1834 002AE794 7C 64 1B 78 */ mr r4, r3
/* 802B1838 002AE798 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B183C 002AE79C 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B1840 002AE7A0 90 61 00 0C */ stw r3, 0xc(r1)
/* 802B1844 002AE7A4 90 61 00 08 */ stw r3, 8(r1)
/* 802B1848 002AE7A8 48 00 00 08 */ b lbl_802B1850
lbl_802B184C:
/* 802B184C 002AE7AC 38 84 00 04 */ addi r4, r4, 4
lbl_802B1850:
/* 802B1850 002AE7B0 7C 04 00 40 */ cmplw r4, r0
/* 802B1854 002AE7B4 40 82 FF F8 */ bne lbl_802B184C
/* 802B1858 002AE7B8 28 03 00 00 */ cmplwi r3, 0
/* 802B185C 002AE7BC 41 82 05 8C */ beq lbl_802B1DE8
/* 802B1860 002AE7C0 48 06 40 D1 */ bl Free__7CMemoryFPCv
/* 802B1864 002AE7C4 48 00 05 84 */ b lbl_802B1DE8
lbl_802B1868:
/* 802B1868 002AE7C8 7F C3 F3 78 */ mr r3, r30
/* 802B186C 002AE7CC 48 07 6B BD */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1870 002AE7D0 98 7F 00 2B */ stb r3, 0x2b(r31)
/* 802B1874 002AE7D4 48 00 05 74 */ b lbl_802B1DE8
lbl_802B1878:
/* 802B1878 002AE7D8 7F C3 F3 78 */ mr r3, r30
/* 802B187C 002AE7DC 48 07 6B AD */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1880 002AE7E0 98 7F 00 28 */ stb r3, 0x28(r31)
/* 802B1884 002AE7E4 48 00 05 64 */ b lbl_802B1DE8
lbl_802B1888:
/* 802B1888 002AE7E8 7F C3 F3 78 */ mr r3, r30
/* 802B188C 002AE7EC 48 07 6B D1 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1890 002AE7F0 3C 03 B1 B1 */ addis r0, r3, 0xb1b1
/* 802B1894 002AE7F4 28 00 4E 45 */ cmplwi r0, 0x4e45
/* 802B1898 002AE7F8 41 82 05 50 */ beq lbl_802B1DE8
/* 802B189C 002AE7FC 7F C3 F3 78 */ mr r3, r30
/* 802B18A0 002AE800 48 08 D3 E5 */ bl ReadLong__12CInputStreamFv
/* 802B18A4 002AE804 3C 80 53 57 */ lis r4, 0x53574843@ha
/* 802B18A8 002AE808 90 61 00 78 */ stw r3, 0x78(r1)
/* 802B18AC 002AE80C 38 04 48 43 */ addi r0, r4, 0x53574843@l
/* 802B18B0 002AE810 7F A4 EB 78 */ mr r4, r29
/* 802B18B4 002AE814 90 01 00 74 */ stw r0, 0x74(r1)
/* 802B18B8 002AE818 38 61 00 6C */ addi r3, r1, 0x6c
/* 802B18BC 002AE81C 38 A1 00 74 */ addi r5, r1, 0x74
/* 802B18C0 002AE820 81 9D 00 00 */ lwz r12, 0(r29)
/* 802B18C4 002AE824 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802B18C8 002AE828 7D 89 03 A6 */ mtctr r12
/* 802B18CC 002AE82C 4E 80 04 21 */ bctrl
/* 802B18D0 002AE830 3B 41 00 AC */ addi r26, r1, 0xac
/* 802B18D4 002AE834 38 81 00 6C */ addi r4, r1, 0x6c
/* 802B18D8 002AE838 7F 43 D3 78 */ mr r3, r26
/* 802B18DC 002AE83C 48 08 F5 CD */ bl __ct__6CTokenFRC6CToken
/* 802B18E0 002AE840 7F 43 D3 78 */ mr r3, r26
/* 802B18E4 002AE844 48 08 F5 29 */ bl GetObj__6CTokenFv
/* 802B18E8 002AE848 80 03 00 04 */ lwz r0, 4(r3)
/* 802B18EC 002AE84C 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 802B18F0 002AE850 88 1F 00 60 */ lbz r0, 0x60(r31)
/* 802B18F4 002AE854 28 00 00 00 */ cmplwi r0, 0
/* 802B18F8 002AE858 40 82 00 34 */ bne lbl_802B192C
/* 802B18FC 002AE85C 37 5F 00 54 */ addic. r26, r31, 0x54
/* 802B1900 002AE860 41 82 00 20 */ beq lbl_802B1920
/* 802B1904 002AE864 7F 43 D3 78 */ mr r3, r26
/* 802B1908 002AE868 38 81 00 AC */ addi r4, r1, 0xac
/* 802B190C 002AE86C 48 08 F5 9D */ bl __ct__6CTokenFRC6CToken
/* 802B1910 002AE870 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 802B1914 002AE874 7F 43 D3 78 */ mr r3, r26
/* 802B1918 002AE878 90 1A 00 08 */ stw r0, 8(r26)
/* 802B191C 002AE87C 48 08 F4 69 */ bl Lock__6CTokenFv
lbl_802B1920:
/* 802B1920 002AE880 38 00 00 01 */ li r0, 1
/* 802B1924 002AE884 98 1F 00 60 */ stb r0, 0x60(r31)
/* 802B1928 002AE888 48 00 00 1C */ b lbl_802B1944
lbl_802B192C:
/* 802B192C 002AE88C 3B 5F 00 54 */ addi r26, r31, 0x54
/* 802B1930 002AE890 38 81 00 AC */ addi r4, r1, 0xac
/* 802B1934 002AE894 7F 43 D3 78 */ mr r3, r26
/* 802B1938 002AE898 48 08 F3 8D */ bl __as__6CTokenFRC6CToken
/* 802B193C 002AE89C 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 802B1940 002AE8A0 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1944:
/* 802B1944 002AE8A4 38 61 00 AC */ addi r3, r1, 0xac
/* 802B1948 002AE8A8 38 80 00 00 */ li r4, 0
/* 802B194C 002AE8AC 48 08 F4 F5 */ bl __dt__6CTokenFv
/* 802B1950 002AE8B0 38 61 00 6C */ addi r3, r1, 0x6c
/* 802B1954 002AE8B4 38 80 FF FF */ li r4, -1
/* 802B1958 002AE8B8 48 08 F4 E9 */ bl __dt__6CTokenFv
/* 802B195C 002AE8BC 48 00 04 8C */ b lbl_802B1DE8
lbl_802B1960:
/* 802B1960 002AE8C0 7F C3 F3 78 */ mr r3, r30
/* 802B1964 002AE8C4 48 07 6A C5 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1968 002AE8C8 98 7F 00 2C */ stb r3, 0x2c(r31)
/* 802B196C 002AE8CC 48 00 04 7C */ b lbl_802B1DE8
lbl_802B1970:
/* 802B1970 002AE8D0 7F C3 F3 78 */ mr r3, r30
/* 802B1974 002AE8D4 48 07 6A E9 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1978 002AE8D8 3C 03 B1 B1 */ addis r0, r3, 0xb1b1
/* 802B197C 002AE8DC 28 00 4E 45 */ cmplwi r0, 0x4e45
/* 802B1980 002AE8E0 41 82 04 68 */ beq lbl_802B1DE8
/* 802B1984 002AE8E4 7F C3 F3 78 */ mr r3, r30
/* 802B1988 002AE8E8 48 08 D2 FD */ bl ReadLong__12CInputStreamFv
/* 802B198C 002AE8EC 3C 80 53 57 */ lis r4, 0x53574843@ha
/* 802B1990 002AE8F0 90 61 00 68 */ stw r3, 0x68(r1)
/* 802B1994 002AE8F4 38 04 48 43 */ addi r0, r4, 0x53574843@l
/* 802B1998 002AE8F8 7F A4 EB 78 */ mr r4, r29
/* 802B199C 002AE8FC 90 01 00 64 */ stw r0, 0x64(r1)
/* 802B19A0 002AE900 38 61 00 5C */ addi r3, r1, 0x5c
/* 802B19A4 002AE904 38 A1 00 64 */ addi r5, r1, 0x64
/* 802B19A8 002AE908 81 9D 00 00 */ lwz r12, 0(r29)
/* 802B19AC 002AE90C 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802B19B0 002AE910 7D 89 03 A6 */ mtctr r12
/* 802B19B4 002AE914 4E 80 04 21 */ bctrl
/* 802B19B8 002AE918 3B 41 00 A0 */ addi r26, r1, 0xa0
/* 802B19BC 002AE91C 38 81 00 5C */ addi r4, r1, 0x5c
/* 802B19C0 002AE920 7F 43 D3 78 */ mr r3, r26
/* 802B19C4 002AE924 48 08 F4 E5 */ bl __ct__6CTokenFRC6CToken
/* 802B19C8 002AE928 7F 43 D3 78 */ mr r3, r26
/* 802B19CC 002AE92C 48 08 F4 41 */ bl GetObj__6CTokenFv
/* 802B19D0 002AE930 80 03 00 04 */ lwz r0, 4(r3)
/* 802B19D4 002AE934 90 01 00 A8 */ stw r0, 0xa8(r1)
/* 802B19D8 002AE938 88 1F 00 70 */ lbz r0, 0x70(r31)
/* 802B19DC 002AE93C 28 00 00 00 */ cmplwi r0, 0
/* 802B19E0 002AE940 40 82 00 34 */ bne lbl_802B1A14
/* 802B19E4 002AE944 37 5F 00 64 */ addic. r26, r31, 0x64
/* 802B19E8 002AE948 41 82 00 20 */ beq lbl_802B1A08
/* 802B19EC 002AE94C 7F 43 D3 78 */ mr r3, r26
/* 802B19F0 002AE950 38 81 00 A0 */ addi r4, r1, 0xa0
/* 802B19F4 002AE954 48 08 F4 B5 */ bl __ct__6CTokenFRC6CToken
/* 802B19F8 002AE958 80 01 00 A8 */ lwz r0, 0xa8(r1)
/* 802B19FC 002AE95C 7F 43 D3 78 */ mr r3, r26
/* 802B1A00 002AE960 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1A04 002AE964 48 08 F3 81 */ bl Lock__6CTokenFv
lbl_802B1A08:
/* 802B1A08 002AE968 38 00 00 01 */ li r0, 1
/* 802B1A0C 002AE96C 98 1F 00 70 */ stb r0, 0x70(r31)
/* 802B1A10 002AE970 48 00 00 1C */ b lbl_802B1A2C
lbl_802B1A14:
/* 802B1A14 002AE974 3B 5F 00 64 */ addi r26, r31, 0x64
/* 802B1A18 002AE978 38 81 00 A0 */ addi r4, r1, 0xa0
/* 802B1A1C 002AE97C 7F 43 D3 78 */ mr r3, r26
/* 802B1A20 002AE980 48 08 F2 A5 */ bl __as__6CTokenFRC6CToken
/* 802B1A24 002AE984 80 01 00 A8 */ lwz r0, 0xa8(r1)
/* 802B1A28 002AE988 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1A2C:
/* 802B1A2C 002AE98C 38 61 00 A0 */ addi r3, r1, 0xa0
/* 802B1A30 002AE990 38 80 00 00 */ li r4, 0
/* 802B1A34 002AE994 48 08 F4 0D */ bl __dt__6CTokenFv
/* 802B1A38 002AE998 38 61 00 5C */ addi r3, r1, 0x5c
/* 802B1A3C 002AE99C 38 80 FF FF */ li r4, -1
/* 802B1A40 002AE9A0 48 08 F4 01 */ bl __dt__6CTokenFv
/* 802B1A44 002AE9A4 48 00 03 A4 */ b lbl_802B1DE8
lbl_802B1A48:
/* 802B1A48 002AE9A8 7F C3 F3 78 */ mr r3, r30
/* 802B1A4C 002AE9AC 48 07 69 DD */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1A50 002AE9B0 98 7F 00 2D */ stb r3, 0x2d(r31)
/* 802B1A54 002AE9B4 48 00 03 94 */ b lbl_802B1DE8
lbl_802B1A58:
/* 802B1A58 002AE9B8 7F C3 F3 78 */ mr r3, r30
/* 802B1A5C 002AE9BC 48 07 6A 01 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1A60 002AE9C0 3C 03 B1 B1 */ addis r0, r3, 0xb1b1
/* 802B1A64 002AE9C4 28 00 4E 45 */ cmplwi r0, 0x4e45
/* 802B1A68 002AE9C8 41 82 03 80 */ beq lbl_802B1DE8
/* 802B1A6C 002AE9CC 7F C3 F3 78 */ mr r3, r30
/* 802B1A70 002AE9D0 48 08 D2 15 */ bl ReadLong__12CInputStreamFv
/* 802B1A74 002AE9D4 3C 80 53 57 */ lis r4, 0x53574843@ha
/* 802B1A78 002AE9D8 90 61 00 58 */ stw r3, 0x58(r1)
/* 802B1A7C 002AE9DC 38 04 48 43 */ addi r0, r4, 0x53574843@l
/* 802B1A80 002AE9E0 7F A4 EB 78 */ mr r4, r29
/* 802B1A84 002AE9E4 90 01 00 54 */ stw r0, 0x54(r1)
/* 802B1A88 002AE9E8 38 61 00 4C */ addi r3, r1, 0x4c
/* 802B1A8C 002AE9EC 38 A1 00 54 */ addi r5, r1, 0x54
/* 802B1A90 002AE9F0 81 9D 00 00 */ lwz r12, 0(r29)
/* 802B1A94 002AE9F4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802B1A98 002AE9F8 7D 89 03 A6 */ mtctr r12
/* 802B1A9C 002AE9FC 4E 80 04 21 */ bctrl
/* 802B1AA0 002AEA00 3B 41 00 94 */ addi r26, r1, 0x94
/* 802B1AA4 002AEA04 38 81 00 4C */ addi r4, r1, 0x4c
/* 802B1AA8 002AEA08 7F 43 D3 78 */ mr r3, r26
/* 802B1AAC 002AEA0C 48 08 F3 FD */ bl __ct__6CTokenFRC6CToken
/* 802B1AB0 002AEA10 7F 43 D3 78 */ mr r3, r26
/* 802B1AB4 002AEA14 48 08 F3 59 */ bl GetObj__6CTokenFv
/* 802B1AB8 002AEA18 80 03 00 04 */ lwz r0, 4(r3)
/* 802B1ABC 002AEA1C 90 01 00 9C */ stw r0, 0x9c(r1)
/* 802B1AC0 002AEA20 88 1F 00 80 */ lbz r0, 0x80(r31)
/* 802B1AC4 002AEA24 28 00 00 00 */ cmplwi r0, 0
/* 802B1AC8 002AEA28 40 82 00 34 */ bne lbl_802B1AFC
/* 802B1ACC 002AEA2C 37 5F 00 74 */ addic. r26, r31, 0x74
/* 802B1AD0 002AEA30 41 82 00 20 */ beq lbl_802B1AF0
/* 802B1AD4 002AEA34 7F 43 D3 78 */ mr r3, r26
/* 802B1AD8 002AEA38 38 81 00 94 */ addi r4, r1, 0x94
/* 802B1ADC 002AEA3C 48 08 F3 CD */ bl __ct__6CTokenFRC6CToken
/* 802B1AE0 002AEA40 80 01 00 9C */ lwz r0, 0x9c(r1)
/* 802B1AE4 002AEA44 7F 43 D3 78 */ mr r3, r26
/* 802B1AE8 002AEA48 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1AEC 002AEA4C 48 08 F2 99 */ bl Lock__6CTokenFv
lbl_802B1AF0:
/* 802B1AF0 002AEA50 38 00 00 01 */ li r0, 1
/* 802B1AF4 002AEA54 98 1F 00 80 */ stb r0, 0x80(r31)
/* 802B1AF8 002AEA58 48 00 00 1C */ b lbl_802B1B14
lbl_802B1AFC:
/* 802B1AFC 002AEA5C 3B 5F 00 74 */ addi r26, r31, 0x74
/* 802B1B00 002AEA60 38 81 00 94 */ addi r4, r1, 0x94
/* 802B1B04 002AEA64 7F 43 D3 78 */ mr r3, r26
/* 802B1B08 002AEA68 48 08 F1 BD */ bl __as__6CTokenFRC6CToken
/* 802B1B0C 002AEA6C 80 01 00 9C */ lwz r0, 0x9c(r1)
/* 802B1B10 002AEA70 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1B14:
/* 802B1B14 002AEA74 38 61 00 94 */ addi r3, r1, 0x94
/* 802B1B18 002AEA78 38 80 00 00 */ li r4, 0
/* 802B1B1C 002AEA7C 48 08 F3 25 */ bl __dt__6CTokenFv
/* 802B1B20 002AEA80 38 61 00 4C */ addi r3, r1, 0x4c
/* 802B1B24 002AEA84 38 80 FF FF */ li r4, -1
/* 802B1B28 002AEA88 48 08 F3 19 */ bl __dt__6CTokenFv
/* 802B1B2C 002AEA8C 48 00 02 BC */ b lbl_802B1DE8
lbl_802B1B30:
/* 802B1B30 002AEA90 7F C3 F3 78 */ mr r3, r30
/* 802B1B34 002AEA94 48 07 68 F5 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1B38 002AEA98 98 7F 00 2E */ stb r3, 0x2e(r31)
/* 802B1B3C 002AEA9C 48 00 02 AC */ b lbl_802B1DE8
lbl_802B1B40:
/* 802B1B40 002AEAA0 7F C3 F3 78 */ mr r3, r30
/* 802B1B44 002AEAA4 48 07 69 19 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1B48 002AEAA8 3C 03 B1 B1 */ addis r0, r3, 0xb1b1
/* 802B1B4C 002AEAAC 28 00 4E 45 */ cmplwi r0, 0x4e45
/* 802B1B50 002AEAB0 41 82 02 98 */ beq lbl_802B1DE8
/* 802B1B54 002AEAB4 7F C3 F3 78 */ mr r3, r30
/* 802B1B58 002AEAB8 48 08 D1 2D */ bl ReadLong__12CInputStreamFv
/* 802B1B5C 002AEABC 3C 80 43 4D */ lis r4, 0x434D444C@ha
/* 802B1B60 002AEAC0 90 61 00 48 */ stw r3, 0x48(r1)
/* 802B1B64 002AEAC4 38 04 44 4C */ addi r0, r4, 0x434D444C@l
/* 802B1B68 002AEAC8 7F A4 EB 78 */ mr r4, r29
/* 802B1B6C 002AEACC 90 01 00 44 */ stw r0, 0x44(r1)
/* 802B1B70 002AEAD0 38 61 00 3C */ addi r3, r1, 0x3c
/* 802B1B74 002AEAD4 38 A1 00 44 */ addi r5, r1, 0x44
/* 802B1B78 002AEAD8 81 9D 00 00 */ lwz r12, 0(r29)
/* 802B1B7C 002AEADC 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802B1B80 002AEAE0 7D 89 03 A6 */ mtctr r12
/* 802B1B84 002AEAE4 4E 80 04 21 */ bctrl
/* 802B1B88 002AEAE8 3B 41 00 88 */ addi r26, r1, 0x88
/* 802B1B8C 002AEAEC 38 81 00 3C */ addi r4, r1, 0x3c
/* 802B1B90 002AEAF0 7F 43 D3 78 */ mr r3, r26
/* 802B1B94 002AEAF4 48 08 F3 15 */ bl __ct__6CTokenFRC6CToken
/* 802B1B98 002AEAF8 7F 43 D3 78 */ mr r3, r26
/* 802B1B9C 002AEAFC 48 08 F2 71 */ bl GetObj__6CTokenFv
/* 802B1BA0 002AEB00 80 03 00 04 */ lwz r0, 4(r3)
/* 802B1BA4 002AEB04 90 01 00 90 */ stw r0, 0x90(r1)
/* 802B1BA8 002AEB08 88 1F 00 90 */ lbz r0, 0x90(r31)
/* 802B1BAC 002AEB0C 28 00 00 00 */ cmplwi r0, 0
/* 802B1BB0 002AEB10 40 82 00 34 */ bne lbl_802B1BE4
/* 802B1BB4 002AEB14 37 5F 00 84 */ addic. r26, r31, 0x84
/* 802B1BB8 002AEB18 41 82 00 20 */ beq lbl_802B1BD8
/* 802B1BBC 002AEB1C 7F 43 D3 78 */ mr r3, r26
/* 802B1BC0 002AEB20 38 81 00 88 */ addi r4, r1, 0x88
/* 802B1BC4 002AEB24 48 08 F2 E5 */ bl __ct__6CTokenFRC6CToken
/* 802B1BC8 002AEB28 80 01 00 90 */ lwz r0, 0x90(r1)
/* 802B1BCC 002AEB2C 7F 43 D3 78 */ mr r3, r26
/* 802B1BD0 002AEB30 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1BD4 002AEB34 48 08 F1 B1 */ bl Lock__6CTokenFv
lbl_802B1BD8:
/* 802B1BD8 002AEB38 38 00 00 01 */ li r0, 1
/* 802B1BDC 002AEB3C 98 1F 00 90 */ stb r0, 0x90(r31)
/* 802B1BE0 002AEB40 48 00 00 1C */ b lbl_802B1BFC
lbl_802B1BE4:
/* 802B1BE4 002AEB44 3B 5F 00 84 */ addi r26, r31, 0x84
/* 802B1BE8 002AEB48 38 81 00 88 */ addi r4, r1, 0x88
/* 802B1BEC 002AEB4C 7F 43 D3 78 */ mr r3, r26
/* 802B1BF0 002AEB50 48 08 F0 D5 */ bl __as__6CTokenFRC6CToken
/* 802B1BF4 002AEB54 80 01 00 90 */ lwz r0, 0x90(r1)
/* 802B1BF8 002AEB58 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1BFC:
/* 802B1BFC 002AEB5C 38 61 00 88 */ addi r3, r1, 0x88
/* 802B1C00 002AEB60 38 80 00 00 */ li r4, 0
/* 802B1C04 002AEB64 48 08 F2 3D */ bl __dt__6CTokenFv
/* 802B1C08 002AEB68 38 61 00 3C */ addi r3, r1, 0x3c
/* 802B1C0C 002AEB6C 38 80 FF FF */ li r4, -1
/* 802B1C10 002AEB70 48 08 F2 31 */ bl __dt__6CTokenFv
/* 802B1C14 002AEB74 48 00 01 D4 */ b lbl_802B1DE8
lbl_802B1C18:
/* 802B1C18 002AEB78 7F C3 F3 78 */ mr r3, r30
/* 802B1C1C 002AEB7C 48 07 46 39 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B1C20 002AEB80 90 7F 00 18 */ stw r3, 0x18(r31)
/* 802B1C24 002AEB84 48 00 01 C4 */ b lbl_802B1DE8
lbl_802B1C28:
/* 802B1C28 002AEB88 7F C3 F3 78 */ mr r3, r30
/* 802B1C2C 002AEB8C 48 07 36 31 */ bl GetColorElement__20CParticleDataFactoryFR12CInputStream
/* 802B1C30 002AEB90 90 7F 00 1C */ stw r3, 0x1c(r31)
/* 802B1C34 002AEB94 48 00 01 B4 */ b lbl_802B1DE8
lbl_802B1C38:
/* 802B1C38 002AEB98 7F C3 F3 78 */ mr r3, r30
/* 802B1C3C 002AEB9C 48 07 68 21 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1C40 002AEBA0 3C 03 B1 B1 */ addis r0, r3, 0xb1b1
/* 802B1C44 002AEBA4 28 00 4E 45 */ cmplwi r0, 0x4e45
/* 802B1C48 002AEBA8 41 82 01 A0 */ beq lbl_802B1DE8
/* 802B1C4C 002AEBAC 7F C3 F3 78 */ mr r3, r30
/* 802B1C50 002AEBB0 48 08 D0 35 */ bl ReadLong__12CInputStreamFv
/* 802B1C54 002AEBB4 3C 80 43 52 */ lis r4, 0x43525343@ha
/* 802B1C58 002AEBB8 90 61 00 38 */ stw r3, 0x38(r1)
/* 802B1C5C 002AEBBC 38 04 53 43 */ addi r0, r4, 0x43525343@l
/* 802B1C60 002AEBC0 7F A4 EB 78 */ mr r4, r29
/* 802B1C64 002AEBC4 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B1C68 002AEBC8 38 61 00 2C */ addi r3, r1, 0x2c
/* 802B1C6C 002AEBCC 38 A1 00 34 */ addi r5, r1, 0x34
/* 802B1C70 002AEBD0 81 9D 00 00 */ lwz r12, 0(r29)
/* 802B1C74 002AEBD4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802B1C78 002AEBD8 7D 89 03 A6 */ mtctr r12
/* 802B1C7C 002AEBDC 4E 80 04 21 */ bctrl
/* 802B1C80 002AEBE0 3B 41 00 7C */ addi r26, r1, 0x7c
/* 802B1C84 002AEBE4 38 81 00 2C */ addi r4, r1, 0x2c
/* 802B1C88 002AEBE8 7F 43 D3 78 */ mr r3, r26
/* 802B1C8C 002AEBEC 48 08 F2 1D */ bl __ct__6CTokenFRC6CToken
/* 802B1C90 002AEBF0 7F 43 D3 78 */ mr r3, r26
/* 802B1C94 002AEBF4 48 08 F1 79 */ bl GetObj__6CTokenFv
/* 802B1C98 002AEBF8 80 03 00 04 */ lwz r0, 4(r3)
/* 802B1C9C 002AEBFC 90 01 00 84 */ stw r0, 0x84(r1)
/* 802B1CA0 002AEC00 88 1F 00 A0 */ lbz r0, 0xa0(r31)
/* 802B1CA4 002AEC04 28 00 00 00 */ cmplwi r0, 0
/* 802B1CA8 002AEC08 40 82 00 34 */ bne lbl_802B1CDC
/* 802B1CAC 002AEC0C 37 5F 00 94 */ addic. r26, r31, 0x94
/* 802B1CB0 002AEC10 41 82 00 20 */ beq lbl_802B1CD0
/* 802B1CB4 002AEC14 7F 43 D3 78 */ mr r3, r26
/* 802B1CB8 002AEC18 38 81 00 7C */ addi r4, r1, 0x7c
/* 802B1CBC 002AEC1C 48 08 F1 ED */ bl __ct__6CTokenFRC6CToken
/* 802B1CC0 002AEC20 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802B1CC4 002AEC24 7F 43 D3 78 */ mr r3, r26
/* 802B1CC8 002AEC28 90 1A 00 08 */ stw r0, 8(r26)
/* 802B1CCC 002AEC2C 48 08 F0 B9 */ bl Lock__6CTokenFv
lbl_802B1CD0:
/* 802B1CD0 002AEC30 38 00 00 01 */ li r0, 1
/* 802B1CD4 002AEC34 98 1F 00 A0 */ stb r0, 0xa0(r31)
/* 802B1CD8 002AEC38 48 00 00 1C */ b lbl_802B1CF4
lbl_802B1CDC:
/* 802B1CDC 002AEC3C 3B 5F 00 94 */ addi r26, r31, 0x94
/* 802B1CE0 002AEC40 38 81 00 7C */ addi r4, r1, 0x7c
/* 802B1CE4 002AEC44 7F 43 D3 78 */ mr r3, r26
/* 802B1CE8 002AEC48 48 08 EF DD */ bl __as__6CTokenFRC6CToken
/* 802B1CEC 002AEC4C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802B1CF0 002AEC50 90 1A 00 08 */ stw r0, 8(r26)
lbl_802B1CF4:
/* 802B1CF4 002AEC54 38 61 00 7C */ addi r3, r1, 0x7c
/* 802B1CF8 002AEC58 38 80 00 00 */ li r4, 0
/* 802B1CFC 002AEC5C 48 08 F1 45 */ bl __dt__6CTokenFv
/* 802B1D00 002AEC60 38 61 00 2C */ addi r3, r1, 0x2c
/* 802B1D04 002AEC64 38 80 FF FF */ li r4, -1
/* 802B1D08 002AEC68 48 08 F1 39 */ bl __dt__6CTokenFv
/* 802B1D0C 002AEC6C 48 00 00 DC */ b lbl_802B1DE8
lbl_802B1D10:
/* 802B1D10 002AEC70 7F C3 F3 78 */ mr r3, r30
/* 802B1D14 002AEC74 48 07 45 41 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B1D18 002AEC78 90 7F 00 20 */ stw r3, 0x20(r31)
/* 802B1D1C 002AEC7C 48 00 00 CC */ b lbl_802B1DE8
lbl_802B1D20:
/* 802B1D20 002AEC80 7F C3 F3 78 */ mr r3, r30
/* 802B1D24 002AEC84 48 07 45 31 */ bl GetVectorElement__20CParticleDataFactoryFR12CInputStream
/* 802B1D28 002AEC88 90 7F 00 24 */ stw r3, 0x24(r31)
/* 802B1D2C 002AEC8C 48 00 00 BC */ b lbl_802B1DE8
lbl_802B1D30:
/* 802B1D30 002AEC90 7F C3 F3 78 */ mr r3, r30
/* 802B1D34 002AEC94 48 07 66 F5 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1D38 002AEC98 98 7F 00 29 */ stb r3, 0x29(r31)
/* 802B1D3C 002AEC9C 48 00 00 AC */ b lbl_802B1DE8
lbl_802B1D40:
/* 802B1D40 002AECA0 7F C3 F3 78 */ mr r3, r30
/* 802B1D44 002AECA4 48 07 4F 4D */ bl GetRealElement__20CParticleDataFactoryFR12CInputStream
/* 802B1D48 002AECA8 90 7F 00 30 */ stw r3, 0x30(r31)
/* 802B1D4C 002AECAC 48 00 00 9C */ b lbl_802B1DE8
lbl_802B1D50:
/* 802B1D50 002AECB0 7F C3 F3 78 */ mr r3, r30
/* 802B1D54 002AECB4 48 07 67 09 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1D58 002AECB8 3C 03 B1 B1 */ addis r0, r3, 0xb1b1
/* 802B1D5C 002AECBC 28 00 4E 45 */ cmplwi r0, 0x4e45
/* 802B1D60 002AECC0 41 82 00 88 */ beq lbl_802B1DE8
/* 802B1D64 002AECC4 7F C3 F3 78 */ mr r3, r30
/* 802B1D68 002AECC8 48 08 CF 1D */ bl ReadLong__12CInputStreamFv
/* 802B1D6C 002AECCC 90 7F 00 A8 */ stw r3, 0xa8(r31)
/* 802B1D70 002AECD0 48 00 00 78 */ b lbl_802B1DE8
lbl_802B1D74:
/* 802B1D74 002AECD4 7F C3 F3 78 */ mr r3, r30
/* 802B1D78 002AECD8 48 07 4F 19 */ bl GetRealElement__20CParticleDataFactoryFR12CInputStream
/* 802B1D7C 002AECDC 90 7F 00 AC */ stw r3, 0xac(r31)
/* 802B1D80 002AECE0 48 00 00 68 */ b lbl_802B1DE8
lbl_802B1D84:
/* 802B1D84 002AECE4 7F C3 F3 78 */ mr r3, r30
/* 802B1D88 002AECE8 48 07 4F 09 */ bl GetRealElement__20CParticleDataFactoryFR12CInputStream
/* 802B1D8C 002AECEC 90 7F 00 B0 */ stw r3, 0xb0(r31)
/* 802B1D90 002AECF0 48 00 00 58 */ b lbl_802B1DE8
lbl_802B1D94:
/* 802B1D94 002AECF4 7F C3 F3 78 */ mr r3, r30
/* 802B1D98 002AECF8 48 07 66 91 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1D9C 002AECFC 98 7F 00 A4 */ stb r3, 0xa4(r31)
/* 802B1DA0 002AED00 48 00 00 48 */ b lbl_802B1DE8
lbl_802B1DA4:
/* 802B1DA4 002AED04 7F C3 F3 78 */ mr r3, r30
/* 802B1DA8 002AED08 48 07 66 81 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1DAC 002AED0C 98 7F 00 A5 */ stb r3, 0xa5(r31)
/* 802B1DB0 002AED10 48 00 00 38 */ b lbl_802B1DE8
lbl_802B1DB4:
/* 802B1DB4 002AED14 7F C3 F3 78 */ mr r3, r30
/* 802B1DB8 002AED18 48 07 66 71 */ bl GetBool__20CParticleDataFactoryFR12CInputStream
/* 802B1DBC 002AED1C 98 7F 00 A6 */ stb r3, 0xa6(r31)
/* 802B1DC0 002AED20 48 00 00 28 */ b lbl_802B1DE8
lbl_802B1DC4:
/* 802B1DC4 002AED24 3B 80 00 01 */ li r28, 1
/* 802B1DC8 002AED28 48 00 00 20 */ b lbl_802B1DE8
lbl_802B1DCC:
/* 802B1DCC 002AED2C 38 61 01 40 */ addi r3, r1, 0x140
/* 802B1DD0 002AED30 38 80 FF FF */ li r4, -1
/* 802B1DD4 002AED34 48 06 08 31 */ bl __dt__13CGlobalRandomFv
/* 802B1DD8 002AED38 38 60 00 00 */ li r3, 0
/* 802B1DDC 002AED3C 48 00 00 24 */ b lbl_802B1E00
lbl_802B1DE0:
/* 802B1DE0 002AED40 3C 60 4C 57 */ lis r3, 0x4C575452@ha
/* 802B1DE4 002AED44 3B 63 54 52 */ addi r27, r3, 0x4C575452@l
lbl_802B1DE8:
/* 802B1DE8 002AED48 57 80 06 3F */ clrlwi. r0, r28, 0x18
/* 802B1DEC 002AED4C 41 82 F3 94 */ beq lbl_802B1180
/* 802B1DF0 002AED50 38 61 01 40 */ addi r3, r1, 0x140
/* 802B1DF4 002AED54 38 80 FF FF */ li r4, -1
/* 802B1DF8 002AED58 48 06 08 0D */ bl __dt__13CGlobalRandomFv
/* 802B1DFC 002AED5C 38 60 00 01 */ li r3, 1
lbl_802B1E00:
/* 802B1E00 002AED60 BB 41 01 58 */ lmw r26, 0x158(r1)
/* 802B1E04 002AED64 80 01 01 74 */ lwz r0, 0x174(r1)
/* 802B1E08 002AED68 7C 08 03 A6 */ mtlr r0
/* 802B1E0C 002AED6C 38 21 01 70 */ addi r1, r1, 0x170
/* 802B1E10 002AED70 4E 80 00 20 */ blr
.global CreateGeneratorDescription__28CProjectileWeaponDataFactoryFR12CInputStreamP11CSimplePool
CreateGeneratorDescription__28CProjectileWeaponDataFactoryFR12CInputStreamP11CSimplePool:
/* 802B1E14 002AED74 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B1E18 002AED78 7C 08 02 A6 */ mflr r0
/* 802B1E1C 002AED7C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B1E20 002AED80 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B1E24 002AED84 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B1E28 002AED88 7C 9E 23 78 */ mr r30, r4
/* 802B1E2C 002AED8C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B1E30 002AED90 7C 7D 1B 78 */ mr r29, r3
/* 802B1E34 002AED94 48 07 66 29 */ bl GetClassID__20CParticleDataFactoryFR12CInputStream
/* 802B1E38 002AED98 3C 03 A8 B0 */ addis r0, r3, 0xa8b0
/* 802B1E3C 002AED9C 28 00 53 4D */ cmplwi r0, 0x534d
/* 802B1E40 002AEDA0 41 82 00 0C */ beq lbl_802B1E4C
/* 802B1E44 002AEDA4 38 60 00 00 */ li r3, 0
/* 802B1E48 002AEDA8 48 00 00 3C */ b lbl_802B1E84
lbl_802B1E4C:
/* 802B1E4C 002AEDAC 3C 80 80 3D */ lis r4, lbl_803D6190@ha
/* 802B1E50 002AEDB0 38 60 00 B4 */ li r3, 0xb4
/* 802B1E54 002AEDB4 38 84 61 90 */ addi r4, r4, lbl_803D6190@l
/* 802B1E58 002AEDB8 38 A0 00 00 */ li r5, 0
/* 802B1E5C 002AEDBC 48 06 3A 11 */ bl __nw__FUlPCcPCc
/* 802B1E60 002AEDC0 7C 7F 1B 79 */ or. r31, r3, r3
/* 802B1E64 002AEDC4 41 82 00 0C */ beq lbl_802B1E70
/* 802B1E68 002AEDC8 48 00 3D D1 */ bl __ct__18CWeaponDescriptionFv
/* 802B1E6C 002AEDCC 7C 7F 1B 78 */ mr r31, r3
lbl_802B1E70:
/* 802B1E70 002AEDD0 7F E3 FB 78 */ mr r3, r31
/* 802B1E74 002AEDD4 7F A4 EB 78 */ mr r4, r29
/* 802B1E78 002AEDD8 7F C5 F3 78 */ mr r5, r30
/* 802B1E7C 002AEDDC 4B FF F2 C9 */ bl CreateWPSM__28CProjectileWeaponDataFactoryFP18CWeaponDescriptionR12CInputStreamP11CSimplePool
/* 802B1E80 002AEDE0 7F E3 FB 78 */ mr r3, r31
lbl_802B1E84:
/* 802B1E84 002AEDE4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B1E88 002AEDE8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B1E8C 002AEDEC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B1E90 002AEDF0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B1E94 002AEDF4 7C 08 03 A6 */ mtlr r0
/* 802B1E98 002AEDF8 38 21 00 20 */ addi r1, r1, 0x20
/* 802B1E9C 002AEDFC 4E 80 00 20 */ blr
.global GetGeneratorDesc__28CProjectileWeaponDataFactoryFR12CInputStreamP11CSimplePool
GetGeneratorDesc__28CProjectileWeaponDataFactoryFR12CInputStreamP11CSimplePool:
/* 802B1EA0 002AEE00 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B1EA4 002AEE04 7C 08 02 A6 */ mflr r0
/* 802B1EA8 002AEE08 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B1EAC 002AEE0C 38 00 00 00 */ li r0, 0
/* 802B1EB0 002AEE10 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802B1EB4 002AEE14 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802B1EB8 002AEE18 90 01 00 20 */ stw r0, 0x20(r1)
/* 802B1EBC 002AEE1C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B1EC0 002AEE20 4B FF FF 55 */ bl CreateGeneratorDescription__28CProjectileWeaponDataFactoryFR12CInputStreamP11CSimplePool
/* 802B1EC4 002AEE24 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 802B1EC8 002AEE28 7C 7F 1B 78 */ mr r31, r3
/* 802B1ECC 002AEE2C 80 81 00 24 */ lwz r4, 0x24(r1)
/* 802B1ED0 002AEE30 54 00 10 3A */ slwi r0, r0, 2
/* 802B1ED4 002AEE34 7C 04 02 14 */ add r0, r4, r0
/* 802B1ED8 002AEE38 90 81 00 0C */ stw r4, 0xc(r1)
/* 802B1EDC 002AEE3C 7C 83 23 78 */ mr r3, r4
/* 802B1EE0 002AEE40 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B1EE4 002AEE44 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B1EE8 002AEE48 90 81 00 08 */ stw r4, 8(r1)
/* 802B1EEC 002AEE4C 48 00 00 08 */ b lbl_802B1EF4
lbl_802B1EF0:
/* 802B1EF0 002AEE50 38 63 00 04 */ addi r3, r3, 4
lbl_802B1EF4:
/* 802B1EF4 002AEE54 7C 03 00 40 */ cmplw r3, r0
/* 802B1EF8 002AEE58 40 82 FF F8 */ bne lbl_802B1EF0
/* 802B1EFC 002AEE5C 28 04 00 00 */ cmplwi r4, 0
/* 802B1F00 002AEE60 41 82 00 0C */ beq lbl_802B1F0C
/* 802B1F04 002AEE64 7C 83 23 78 */ mr r3, r4
/* 802B1F08 002AEE68 48 06 3A 29 */ bl Free__7CMemoryFPCv
lbl_802B1F0C:
/* 802B1F0C 002AEE6C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B1F10 002AEE70 7F E3 FB 78 */ mr r3, r31
/* 802B1F14 002AEE74 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802B1F18 002AEE78 7C 08 03 A6 */ mtlr r0
/* 802B1F1C 002AEE7C 38 21 00 30 */ addi r1, r1, 0x30
/* 802B1F20 002AEE80 4E 80 00 20 */ blr
.global "__dt__46TObjOwnerDerivedFromIObj<18CWeaponDescription>Fv"
"__dt__46TObjOwnerDerivedFromIObj<18CWeaponDescription>Fv":
/* 802B1F24 002AEE84 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B1F28 002AEE88 7C 08 02 A6 */ mflr r0
/* 802B1F2C 002AEE8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B1F30 002AEE90 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B1F34 002AEE94 7C 9F 23 78 */ mr r31, r4
/* 802B1F38 002AEE98 93 C1 00 08 */ stw r30, 8(r1)
/* 802B1F3C 002AEE9C 7C 7E 1B 79 */ or. r30, r3, r3
/* 802B1F40 002AEEA0 41 82 00 58 */ beq lbl_802B1F98
/* 802B1F44 002AEEA4 3C 60 80 3F */ lis r3, lbl_803EC508@ha
/* 802B1F48 002AEEA8 38 03 C5 08 */ addi r0, r3, lbl_803EC508@l
/* 802B1F4C 002AEEAC 90 1E 00 00 */ stw r0, 0(r30)
/* 802B1F50 002AEEB0 80 7E 00 04 */ lwz r3, 4(r30)
/* 802B1F54 002AEEB4 28 03 00 00 */ cmplwi r3, 0
/* 802B1F58 002AEEB8 41 82 00 0C */ beq lbl_802B1F64
/* 802B1F5C 002AEEBC 38 80 00 01 */ li r4, 1
/* 802B1F60 002AEEC0 48 00 39 41 */ bl __dt__18CWeaponDescriptionFv
lbl_802B1F64:
/* 802B1F64 002AEEC4 28 1E 00 00 */ cmplwi r30, 0
/* 802B1F68 002AEEC8 41 82 00 20 */ beq lbl_802B1F88
/* 802B1F6C 002AEECC 3C 60 80 3E */ lis r3, __vt__31CObjOwnerDerivedFromIObjUntyped@ha
/* 802B1F70 002AEED0 38 03 8D 78 */ addi r0, r3, __vt__31CObjOwnerDerivedFromIObjUntyped@l
/* 802B1F74 002AEED4 90 1E 00 00 */ stw r0, 0(r30)
/* 802B1F78 002AEED8 41 82 00 10 */ beq lbl_802B1F88
/* 802B1F7C 002AEEDC 3C 60 80 3E */ lis r3, __vt__4IObj@ha
/* 802B1F80 002AEEE0 38 03 8D 6C */ addi r0, r3, __vt__4IObj@l
/* 802B1F84 002AEEE4 90 1E 00 00 */ stw r0, 0(r30)
lbl_802B1F88:
/* 802B1F88 002AEEE8 7F E0 07 35 */ extsh. r0, r31
/* 802B1F8C 002AEEEC 40 81 00 0C */ ble lbl_802B1F98
/* 802B1F90 002AEEF0 7F C3 F3 78 */ mr r3, r30
/* 802B1F94 002AEEF4 48 06 39 9D */ bl Free__7CMemoryFPCv
lbl_802B1F98:
/* 802B1F98 002AEEF8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B1F9C 002AEEFC 7F C3 F3 78 */ mr r3, r30
/* 802B1FA0 002AEF00 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B1FA4 002AEF04 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B1FA8 002AEF08 7C 08 03 A6 */ mtlr r0
/* 802B1FAC 002AEF0C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B1FB0 002AEF10 4E 80 00 20 */ blr
.global FProjectileWeaponDataFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer
FProjectileWeaponDataFactory__FRC10SObjectTagR12CInputStreamRC15CVParamTransfer:
/* 802B1FB4 002AEF14 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B1FB8 002AEF18 7C 08 02 A6 */ mflr r0
/* 802B1FBC 002AEF1C 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B1FC0 002AEF20 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802B1FC4 002AEF24 7C 7F 1B 78 */ mr r31, r3
/* 802B1FC8 002AEF28 7C A3 2B 78 */ mr r3, r5
/* 802B1FCC 002AEF2C 80 C6 00 00 */ lwz r6, 0(r6)
/* 802B1FD0 002AEF30 90 C1 00 08 */ stw r6, 8(r1)
/* 802B1FD4 002AEF34 80 86 00 04 */ lwz r4, 4(r6)
/* 802B1FD8 002AEF38 38 04 00 01 */ addi r0, r4, 1
/* 802B1FDC 002AEF3C 90 06 00 04 */ stw r0, 4(r6)
/* 802B1FE0 002AEF40 80 81 00 08 */ lwz r4, 8(r1)
/* 802B1FE4 002AEF44 80 84 00 00 */ lwz r4, 0(r4)
/* 802B1FE8 002AEF48 80 84 00 04 */ lwz r4, 4(r4)
/* 802B1FEC 002AEF4C 4B FF FE B5 */ bl GetGeneratorDesc__28CProjectileWeaponDataFactoryFR12CInputStreamP11CSimplePool
/* 802B1FF0 002AEF50 7C 03 00 D0 */ neg r0, r3
/* 802B1FF4 002AEF54 90 61 00 10 */ stw r3, 0x10(r1)
/* 802B1FF8 002AEF58 7C 00 1B 78 */ or r0, r0, r3
/* 802B1FFC 002AEF5C 38 61 00 14 */ addi r3, r1, 0x14
/* 802B2000 002AEF60 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B2004 002AEF64 38 81 00 0C */ addi r4, r1, 0xc
/* 802B2008 002AEF68 98 01 00 0C */ stb r0, 0xc(r1)
/* 802B200C 002AEF6C 48 00 00 85 */ bl "GetIObjObjectFor__28TToken<18CWeaponDescription>FRCQ24rstl30auto_ptr<18CWeaponDescription>"
/* 802B2010 002AEF70 80 61 00 18 */ lwz r3, 0x18(r1)
/* 802B2014 002AEF74 38 00 00 00 */ li r0, 0
/* 802B2018 002AEF78 98 01 00 14 */ stb r0, 0x14(r1)
/* 802B201C 002AEF7C 7C 03 00 D0 */ neg r0, r3
/* 802B2020 002AEF80 7C 00 1B 78 */ or r0, r0, r3
/* 802B2024 002AEF84 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B2028 002AEF88 98 1F 00 00 */ stb r0, 0(r31)
/* 802B202C 002AEF8C 90 7F 00 04 */ stw r3, 4(r31)
/* 802B2030 002AEF90 88 01 00 14 */ lbz r0, 0x14(r1)
/* 802B2034 002AEF94 28 00 00 00 */ cmplwi r0, 0
/* 802B2038 002AEF98 41 82 00 24 */ beq lbl_802B205C
/* 802B203C 002AEF9C 80 61 00 18 */ lwz r3, 0x18(r1)
/* 802B2040 002AEFA0 28 03 00 00 */ cmplwi r3, 0
/* 802B2044 002AEFA4 41 82 00 18 */ beq lbl_802B205C
/* 802B2048 002AEFA8 81 83 00 00 */ lwz r12, 0(r3)
/* 802B204C 002AEFAC 38 80 00 01 */ li r4, 1
/* 802B2050 002AEFB0 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B2054 002AEFB4 7D 89 03 A6 */ mtctr r12
/* 802B2058 002AEFB8 4E 80 04 21 */ bctrl
lbl_802B205C:
/* 802B205C 002AEFBC 88 01 00 0C */ lbz r0, 0xc(r1)
/* 802B2060 002AEFC0 28 00 00 00 */ cmplwi r0, 0
/* 802B2064 002AEFC4 41 82 00 10 */ beq lbl_802B2074
/* 802B2068 002AEFC8 80 61 00 10 */ lwz r3, 0x10(r1)
/* 802B206C 002AEFCC 38 80 00 01 */ li r4, 1
/* 802B2070 002AEFD0 48 00 38 31 */ bl __dt__18CWeaponDescriptionFv
lbl_802B2074:
/* 802B2074 002AEFD4 38 61 00 08 */ addi r3, r1, 8
/* 802B2078 002AEFD8 4B D8 22 8D */ bl sub_80034304
/* 802B207C 002AEFDC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B2080 002AEFE0 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802B2084 002AEFE4 7C 08 03 A6 */ mtlr r0
/* 802B2088 002AEFE8 38 21 00 30 */ addi r1, r1, 0x30
/* 802B208C 002AEFEC 4E 80 00 20 */ blr
.global "GetIObjObjectFor__28TToken<18CWeaponDescription>FRCQ24rstl30auto_ptr<18CWeaponDescription>"
"GetIObjObjectFor__28TToken<18CWeaponDescription>FRCQ24rstl30auto_ptr<18CWeaponDescription>":
/* 802B2090 002AEFF0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B2094 002AEFF4 7C 08 02 A6 */ mflr r0
/* 802B2098 002AEFF8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B209C 002AEFFC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B20A0 002AF000 7C 7F 1B 78 */ mr r31, r3
/* 802B20A4 002AF004 48 00 00 19 */ bl "GetNewDerivedObject__46TObjOwnerDerivedFromIObj<18CWeaponDescription>FRCQ24rstl30auto_ptr<18CWeaponDescription>"
/* 802B20A8 002AF008 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B20AC 002AF00C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B20B0 002AF010 7C 08 03 A6 */ mtlr r0
/* 802B20B4 002AF014 38 21 00 10 */ addi r1, r1, 0x10
/* 802B20B8 002AF018 4E 80 00 20 */ blr
.global "GetNewDerivedObject__46TObjOwnerDerivedFromIObj<18CWeaponDescription>FRCQ24rstl30auto_ptr<18CWeaponDescription>"
"GetNewDerivedObject__46TObjOwnerDerivedFromIObj<18CWeaponDescription>FRCQ24rstl30auto_ptr<18CWeaponDescription>":
/* 802B20BC 002AF01C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B20C0 002AF020 7C 08 02 A6 */ mflr r0
/* 802B20C4 002AF024 3C A0 80 3D */ lis r5, lbl_803D6190@ha
/* 802B20C8 002AF028 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B20CC 002AF02C 38 05 61 90 */ addi r0, r5, lbl_803D6190@l
/* 802B20D0 002AF030 38 A0 00 00 */ li r5, 0
/* 802B20D4 002AF034 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B20D8 002AF038 7C 9F 23 78 */ mr r31, r4
/* 802B20DC 002AF03C 7C 04 03 78 */ mr r4, r0
/* 802B20E0 002AF040 93 C1 00 08 */ stw r30, 8(r1)
/* 802B20E4 002AF044 7C 7E 1B 78 */ mr r30, r3
/* 802B20E8 002AF048 38 60 00 08 */ li r3, 8
/* 802B20EC 002AF04C 48 06 37 81 */ bl __nw__FUlPCcPCc
/* 802B20F0 002AF050 28 03 00 00 */ cmplwi r3, 0
/* 802B20F4 002AF054 41 82 00 38 */ beq lbl_802B212C
/* 802B20F8 002AF058 3C 80 80 3E */ lis r4, __vt__4IObj@ha
/* 802B20FC 002AF05C 3C A0 80 3E */ lis r5, __vt__31CObjOwnerDerivedFromIObjUntyped@ha
/* 802B2100 002AF060 38 04 8D 6C */ addi r0, r4, __vt__4IObj@l
/* 802B2104 002AF064 3C 80 80 3F */ lis r4, lbl_803EC508@ha
/* 802B2108 002AF068 90 03 00 00 */ stw r0, 0(r3)
/* 802B210C 002AF06C 38 C5 8D 78 */ addi r6, r5, __vt__31CObjOwnerDerivedFromIObjUntyped@l
/* 802B2110 002AF070 38 A0 00 00 */ li r5, 0
/* 802B2114 002AF074 38 04 C5 08 */ addi r0, r4, lbl_803EC508@l
/* 802B2118 002AF078 90 C3 00 00 */ stw r6, 0(r3)
/* 802B211C 002AF07C 98 BF 00 00 */ stb r5, 0(r31)
/* 802B2120 002AF080 80 9F 00 04 */ lwz r4, 4(r31)
/* 802B2124 002AF084 90 83 00 04 */ stw r4, 4(r3)
/* 802B2128 002AF088 90 03 00 00 */ stw r0, 0(r3)
lbl_802B212C:
/* 802B212C 002AF08C 7C 03 00 D0 */ neg r0, r3
/* 802B2130 002AF090 7C 00 1B 78 */ or r0, r0, r3
/* 802B2134 002AF094 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B2138 002AF098 98 1E 00 00 */ stb r0, 0(r30)
/* 802B213C 002AF09C 90 7E 00 04 */ stw r3, 4(r30)
/* 802B2140 002AF0A0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B2144 002AF0A4 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B2148 002AF0A8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B214C 002AF0AC 7C 08 03 A6 */ mtlr r0
/* 802B2150 002AF0B0 38 21 00 10 */ addi r1, r1, 0x10
/* 802B2154 002AF0B4 4E 80 00 20 */ blr
.section .rodata
.balign 8
.global lbl_803D6190
lbl_803D6190:
# ROM: 0x3D3190
.asciz "??(??)"
.balign 4