prime/asm/Kyoto/Animation/CSegStatementSet.s

330 lines
15 KiB
ArmAsm

.include "macros.inc"
.section .data
.global lbl_803ED4B8
lbl_803ED4B8:
# ROM: 0x3EA4B8
.4byte 0
.4byte 0
.4byte __dt__21CStackSegStatementSetFv
.global lbl_803ED4C4
lbl_803ED4C4:
# ROM: 0x3EA4C4
.4byte 0
.4byte 0
.4byte 0
.section .sdata
.global lbl_805A87F8
lbl_805A87F8:
# ROM: 0x3F6198
.4byte 0x0000001F
.4byte 0
.section .text, "ax" # 0x80003640 - 0x803CB1C0
.global __dt__21CStackSegStatementSetFv
__dt__21CStackSegStatementSetFv:
/* 802FD2AC 002FA20C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802FD2B0 002FA210 7C 08 02 A6 */ mflr r0
/* 802FD2B4 002FA214 90 01 00 14 */ stw r0, 0x14(r1)
/* 802FD2B8 002FA218 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802FD2BC 002FA21C 7C 9F 23 78 */ mr r31, r4
/* 802FD2C0 002FA220 93 C1 00 08 */ stw r30, 8(r1)
/* 802FD2C4 002FA224 7C 7E 1B 79 */ or. r30, r3, r3
/* 802FD2C8 002FA228 41 82 00 88 */ beq lbl_802FD350
/* 802FD2CC 002FA22C 3C 60 80 3F */ lis r3, lbl_803ED4B8@ha
/* 802FD2D0 002FA230 3C A0 E0 00 */ lis r5, 0xe000
/* 802FD2D4 002FA234 38 03 D4 B8 */ addi r0, r3, lbl_803ED4B8@l
/* 802FD2D8 002FA238 90 1E 00 00 */ stw r0, 0(r30)
/* 802FD2DC 002FA23C 80 7E 00 04 */ lwz r3, 4(r30)
/* 802FD2E0 002FA240 7C 03 28 40 */ cmplw r3, r5
/* 802FD2E4 002FA244 41 80 00 44 */ blt lbl_802FD328
/* 802FD2E8 002FA248 38 05 3E 80 */ addi r0, r5, 0x3e80
/* 802FD2EC 002FA24C 7C 03 00 40 */ cmplw r3, r0
/* 802FD2F0 002FA250 40 80 00 38 */ bge lbl_802FD328
/* 802FD2F4 002FA254 3C 80 51 EC */ lis r4, 0x51EB851F@ha
/* 802FD2F8 002FA258 7C 05 18 50 */ subf r0, r5, r3
/* 802FD2FC 002FA25C 38 64 85 1F */ addi r3, r4, 0x51EB851F@l
/* 802FD300 002FA260 80 AD 9C 38 */ lwz r5, lbl_805A87F8@sda21(r13)
/* 802FD304 002FA264 7C 03 00 96 */ mulhw r0, r3, r0
/* 802FD308 002FA268 38 80 00 01 */ li r4, 1
/* 802FD30C 002FA26C 7C 00 56 70 */ srawi r0, r0, 0xa
/* 802FD310 002FA270 54 03 0F FE */ srwi r3, r0, 0x1f
/* 802FD314 002FA274 7C 00 1A 14 */ add r0, r0, r3
/* 802FD318 002FA278 7C 80 00 30 */ slw r0, r4, r0
/* 802FD31C 002FA27C 7C A0 03 78 */ or r0, r5, r0
/* 802FD320 002FA280 90 0D 9C 38 */ stw r0, lbl_805A87F8@sda21(r13)
/* 802FD324 002FA284 48 00 00 08 */ b lbl_802FD32C
lbl_802FD328:
/* 802FD328 002FA288 48 01 86 09 */ bl Free__7CMemoryFPCv
lbl_802FD32C:
/* 802FD32C 002FA28C 28 1E 00 00 */ cmplwi r30, 0
/* 802FD330 002FA290 41 82 00 10 */ beq lbl_802FD340
/* 802FD334 002FA294 3C 60 80 3F */ lis r3, lbl_803ED4C4@ha
/* 802FD338 002FA298 38 03 D4 C4 */ addi r0, r3, lbl_803ED4C4@l
/* 802FD33C 002FA29C 90 1E 00 00 */ stw r0, 0(r30)
lbl_802FD340:
/* 802FD340 002FA2A0 7F E0 07 35 */ extsh. r0, r31
/* 802FD344 002FA2A4 40 81 00 0C */ ble lbl_802FD350
/* 802FD348 002FA2A8 7F C3 F3 78 */ mr r3, r30
/* 802FD34C 002FA2AC 48 01 85 E5 */ bl Free__7CMemoryFPCv
lbl_802FD350:
/* 802FD350 002FA2B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802FD354 002FA2B4 7F C3 F3 78 */ mr r3, r30
/* 802FD358 002FA2B8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802FD35C 002FA2BC 83 C1 00 08 */ lwz r30, 8(r1)
/* 802FD360 002FA2C0 7C 08 03 A6 */ mtlr r0
/* 802FD364 002FA2C4 38 21 00 10 */ addi r1, r1, 0x10
/* 802FD368 002FA2C8 4E 80 00 20 */ blr
.global __ct__21CStackSegStatementSetFv
__ct__21CStackSegStatementSetFv:
/* 802FD36C 002FA2CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802FD370 002FA2D0 7C 08 02 A6 */ mflr r0
/* 802FD374 002FA2D4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802FD378 002FA2D8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802FD37C 002FA2DC 7C 7F 1B 78 */ mr r31, r3
/* 802FD380 002FA2E0 38 60 00 00 */ li r3, 0
/* 802FD384 002FA2E4 48 08 1B 41 */ bl LCQueueWait
/* 802FD388 002FA2E8 80 8D 9C 38 */ lwz r4, lbl_805A87F8@sda21(r13)
/* 802FD38C 002FA2EC 2C 04 00 00 */ cmpwi r4, 0
/* 802FD390 002FA2F0 41 82 00 44 */ beq lbl_802FD3D4
/* 802FD394 002FA2F4 38 00 00 05 */ li r0, 5
/* 802FD398 002FA2F8 38 C0 00 00 */ li r6, 0
/* 802FD39C 002FA2FC 38 60 00 01 */ li r3, 1
/* 802FD3A0 002FA300 7C 09 03 A6 */ mtctr r0
lbl_802FD3A4:
/* 802FD3A4 002FA304 7C 65 30 30 */ slw r5, r3, r6
/* 802FD3A8 002FA308 7C 80 28 39 */ and. r0, r4, r5
/* 802FD3AC 002FA30C 41 82 00 20 */ beq lbl_802FD3CC
/* 802FD3B0 002FA310 80 8D 9C 38 */ lwz r4, lbl_805A87F8@sda21(r13)
/* 802FD3B4 002FA314 1C 66 0C 80 */ mulli r3, r6, 0xc80
/* 802FD3B8 002FA318 3C 00 E0 00 */ lis r0, 0xe000
/* 802FD3BC 002FA31C 7C 84 2A 78 */ xor r4, r4, r5
/* 802FD3C0 002FA320 90 8D 9C 38 */ stw r4, lbl_805A87F8@sda21(r13)
/* 802FD3C4 002FA324 7C 80 1A 14 */ add r4, r0, r3
/* 802FD3C8 002FA328 48 00 00 44 */ b lbl_802FD40C
lbl_802FD3CC:
/* 802FD3CC 002FA32C 38 C6 00 01 */ addi r6, r6, 1
/* 802FD3D0 002FA330 42 00 FF D4 */ bdnz lbl_802FD3A4
lbl_802FD3D4:
/* 802FD3D4 002FA334 3C 60 80 3D */ lis r3, lbl_803D6E48@ha
/* 802FD3D8 002FA338 3C 80 80 3D */ lis r4, lbl_803D6AA8@ha
/* 802FD3DC 002FA33C 38 A3 6E 48 */ addi r5, r3, lbl_803D6E48@l
/* 802FD3E0 002FA340 38 C4 6A A8 */ addi r6, r4, lbl_803D6AA8@l
/* 802FD3E4 002FA344 38 61 00 08 */ addi r3, r1, 8
/* 802FD3E8 002FA348 38 80 FF FF */ li r4, -1
/* 802FD3EC 002FA34C 4B FD 8F E9 */ bl __ct__10CCallStackFUiPCcPCc
/* 802FD3F0 002FA350 7C 67 1B 78 */ mr r7, r3
/* 802FD3F4 002FA354 38 60 0C 80 */ li r3, 0xc80
/* 802FD3F8 002FA358 38 80 00 00 */ li r4, 0
/* 802FD3FC 002FA35C 38 A0 00 01 */ li r5, 1
/* 802FD400 002FA360 38 C0 00 00 */ li r6, 0
/* 802FD404 002FA364 48 01 85 91 */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack
/* 802FD408 002FA368 7C 64 1B 78 */ mr r4, r3
lbl_802FD40C:
/* 802FD40C 002FA36C 7F E3 FB 78 */ mr r3, r31
/* 802FD410 002FA370 48 00 01 D5 */ bl __ct__16CSegStatementSetFPv
/* 802FD414 002FA374 3C 80 80 3F */ lis r4, lbl_803ED4B8@ha
/* 802FD418 002FA378 7F E3 FB 78 */ mr r3, r31
/* 802FD41C 002FA37C 38 04 D4 B8 */ addi r0, r4, lbl_803ED4B8@l
/* 802FD420 002FA380 90 1F 00 00 */ stw r0, 0(r31)
/* 802FD424 002FA384 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802FD428 002FA388 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802FD42C 002FA38C 7C 08 03 A6 */ mtlr r0
/* 802FD430 002FA390 38 21 00 20 */ addi r1, r1, 0x20
/* 802FD434 002FA394 4E 80 00 20 */ blr
.global Add__16CSegStatementSetFRC10CSegIdListRC15CCharLayoutInfoRC16CSegStatementSetf
Add__16CSegStatementSetFRC10CSegIdListRC15CCharLayoutInfoRC16CSegStatementSetf:
/* 802FD438 002FA398 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 802FD43C 002FA39C 7C 08 02 A6 */ mflr r0
/* 802FD440 002FA3A0 90 01 00 94 */ stw r0, 0x94(r1)
/* 802FD444 002FA3A4 DB E1 00 80 */ stfd f31, 0x80(r1)
/* 802FD448 002FA3A8 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0
/* 802FD44C 002FA3AC BE C1 00 58 */ stmw r22, 0x58(r1)
/* 802FD450 002FA3B0 7C 99 23 78 */ mr r25, r4
/* 802FD454 002FA3B4 FF E0 08 90 */ fmr f31, f1
/* 802FD458 002FA3B8 3C 80 80 5A */ lis r4, lbl_805A6660@ha
/* 802FD45C 002FA3BC 83 D9 00 04 */ lwz r30, 4(r25)
/* 802FD460 002FA3C0 7C 78 1B 78 */ mr r24, r3
/* 802FD464 002FA3C4 7C BA 2B 78 */ mr r26, r5
/* 802FD468 002FA3C8 7C DB 33 78 */ mr r27, r6
/* 802FD46C 002FA3CC 3B A1 00 08 */ addi r29, r1, 8
/* 802FD470 002FA3D0 3B E4 66 60 */ addi r31, r4, lbl_805A6660@l
/* 802FD474 002FA3D4 3B 80 00 00 */ li r28, 0
/* 802FD478 002FA3D8 48 00 01 48 */ b lbl_802FD5C0
lbl_802FD47C:
/* 802FD47C 002FA3DC 80 99 00 0C */ lwz r4, 0xc(r25)
/* 802FD480 002FA3E0 38 60 00 00 */ li r3, 0
/* 802FD484 002FA3E4 80 1B 00 04 */ lwz r0, 4(r27)
/* 802FD488 002FA3E8 FC 20 F8 90 */ fmr f1, f31
/* 802FD48C 002FA3EC 7C A4 E0 AE */ lbzx r5, r4, r28
/* 802FD490 002FA3F0 7F E4 FB 78 */ mr r4, r31
/* 802FD494 002FA3F4 90 61 00 54 */ stw r3, 0x54(r1)
/* 802FD498 002FA3F8 38 61 00 18 */ addi r3, r1, 0x18
/* 802FD49C 002FA3FC 54 A6 28 34 */ slwi r6, r5, 5
/* 802FD4A0 002FA400 98 A1 00 08 */ stb r5, 8(r1)
/* 802FD4A4 002FA404 7E C0 32 14 */ add r22, r0, r6
/* 802FD4A8 002FA408 7E C5 B3 78 */ mr r5, r22
/* 802FD4AC 002FA40C 80 18 00 04 */ lwz r0, 4(r24)
/* 802FD4B0 002FA410 7E E0 32 14 */ add r23, r0, r6
/* 802FD4B4 002FA414 48 01 48 45 */ bl Slerp__11CQuaternionFRC11CQuaternionRC11CQuaternionf
/* 802FD4B8 002FA418 7E E4 BB 78 */ mr r4, r23
/* 802FD4BC 002FA41C 38 61 00 28 */ addi r3, r1, 0x28
/* 802FD4C0 002FA420 38 A1 00 18 */ addi r5, r1, 0x18
/* 802FD4C4 002FA424 48 01 3C DD */ bl __ml__11CQuaternionCFRC11CQuaternion
/* 802FD4C8 002FA428 80 16 00 1C */ lwz r0, 0x1c(r22)
/* 802FD4CC 002FA42C C0 01 00 28 */ lfs f0, 0x28(r1)
/* 802FD4D0 002FA430 80 81 00 2C */ lwz r4, 0x2c(r1)
/* 802FD4D4 002FA434 28 00 00 00 */ cmplwi r0, 0
/* 802FD4D8 002FA438 80 61 00 30 */ lwz r3, 0x30(r1)
/* 802FD4DC 002FA43C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802FD4E0 002FA440 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 802FD4E4 002FA444 90 81 00 3C */ stw r4, 0x3c(r1)
/* 802FD4E8 002FA448 90 61 00 40 */ stw r3, 0x40(r1)
/* 802FD4EC 002FA44C 90 01 00 44 */ stw r0, 0x44(r1)
/* 802FD4F0 002FA450 41 82 00 7C */ beq lbl_802FD56C
/* 802FD4F4 002FA454 80 17 00 1C */ lwz r0, 0x1c(r23)
/* 802FD4F8 002FA458 28 00 00 00 */ cmplwi r0, 0
/* 802FD4FC 002FA45C 41 82 00 70 */ beq lbl_802FD56C
/* 802FD500 002FA460 7F 44 D3 78 */ mr r4, r26
/* 802FD504 002FA464 7F A5 EB 78 */ mr r5, r29
/* 802FD508 002FA468 38 61 00 0C */ addi r3, r1, 0xc
/* 802FD50C 002FA46C 4B E2 E4 95 */ bl GetFromParentUnrotated__15CCharLayoutInfoCFRC6CSegId
/* 802FD510 002FA470 C0 36 00 14 */ lfs f1, 0x14(r22)
/* 802FD514 002FA474 38 00 00 01 */ li r0, 1
/* 802FD518 002FA478 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 802FD51C 002FA47C C0 76 00 18 */ lfs f3, 0x18(r22)
/* 802FD520 002FA480 C0 41 00 14 */ lfs f2, 0x14(r1)
/* 802FD524 002FA484 EC 81 00 28 */ fsubs f4, f1, f0
/* 802FD528 002FA488 C0 36 00 10 */ lfs f1, 0x10(r22)
/* 802FD52C 002FA48C C0 01 00 0C */ lfs f0, 0xc(r1)
/* 802FD530 002FA490 EC 43 10 28 */ fsubs f2, f3, f2
/* 802FD534 002FA494 EC 9F 01 32 */ fmuls f4, f31, f4
/* 802FD538 002FA498 C0 B7 00 14 */ lfs f5, 0x14(r23)
/* 802FD53C 002FA49C EC 01 00 28 */ fsubs f0, f1, f0
/* 802FD540 002FA4A0 C0 77 00 18 */ lfs f3, 0x18(r23)
/* 802FD544 002FA4A4 EC 5F 00 B2 */ fmuls f2, f31, f2
/* 802FD548 002FA4A8 EC 85 20 2A */ fadds f4, f5, f4
/* 802FD54C 002FA4AC EC 1F 00 32 */ fmuls f0, f31, f0
/* 802FD550 002FA4B0 C0 37 00 10 */ lfs f1, 0x10(r23)
/* 802FD554 002FA4B4 EC 43 10 2A */ fadds f2, f3, f2
/* 802FD558 002FA4B8 90 01 00 54 */ stw r0, 0x54(r1)
/* 802FD55C 002FA4BC EC 01 00 2A */ fadds f0, f1, f0
/* 802FD560 002FA4C0 D0 81 00 4C */ stfs f4, 0x4c(r1)
/* 802FD564 002FA4C4 D0 41 00 50 */ stfs f2, 0x50(r1)
/* 802FD568 002FA4C8 D0 01 00 48 */ stfs f0, 0x48(r1)
lbl_802FD56C:
/* 802FD56C 002FA4CC 88 01 00 08 */ lbz r0, 8(r1)
/* 802FD570 002FA4D0 3B 9C 00 01 */ addi r28, r28, 1
/* 802FD574 002FA4D4 80 98 00 04 */ lwz r4, 4(r24)
/* 802FD578 002FA4D8 54 00 28 34 */ slwi r0, r0, 5
/* 802FD57C 002FA4DC 80 61 00 38 */ lwz r3, 0x38(r1)
/* 802FD580 002FA4E0 7C 84 02 14 */ add r4, r4, r0
/* 802FD584 002FA4E4 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 802FD588 002FA4E8 90 64 00 00 */ stw r3, 0(r4)
/* 802FD58C 002FA4EC 80 61 00 40 */ lwz r3, 0x40(r1)
/* 802FD590 002FA4F0 90 04 00 04 */ stw r0, 4(r4)
/* 802FD594 002FA4F4 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802FD598 002FA4F8 90 64 00 08 */ stw r3, 8(r4)
/* 802FD59C 002FA4FC 80 61 00 48 */ lwz r3, 0x48(r1)
/* 802FD5A0 002FA500 90 04 00 0C */ stw r0, 0xc(r4)
/* 802FD5A4 002FA504 80 01 00 4C */ lwz r0, 0x4c(r1)
/* 802FD5A8 002FA508 90 64 00 10 */ stw r3, 0x10(r4)
/* 802FD5AC 002FA50C 80 61 00 50 */ lwz r3, 0x50(r1)
/* 802FD5B0 002FA510 90 04 00 14 */ stw r0, 0x14(r4)
/* 802FD5B4 002FA514 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802FD5B8 002FA518 90 64 00 18 */ stw r3, 0x18(r4)
/* 802FD5BC 002FA51C 90 04 00 1C */ stw r0, 0x1c(r4)
lbl_802FD5C0:
/* 802FD5C0 002FA520 7C 1C F0 00 */ cmpw r28, r30
/* 802FD5C4 002FA524 41 80 FE B8 */ blt lbl_802FD47C
/* 802FD5C8 002FA528 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0
/* 802FD5CC 002FA52C CB E1 00 80 */ lfd f31, 0x80(r1)
/* 802FD5D0 002FA530 BA C1 00 58 */ lmw r22, 0x58(r1)
/* 802FD5D4 002FA534 80 01 00 94 */ lwz r0, 0x94(r1)
/* 802FD5D8 002FA538 7C 08 03 A6 */ mtlr r0
/* 802FD5DC 002FA53C 38 21 00 90 */ addi r1, r1, 0x90
/* 802FD5E0 002FA540 4E 80 00 20 */ blr
.global __ct__16CSegStatementSetFPv
__ct__16CSegStatementSetFPv:
/* 802FD5E4 002FA544 3C A0 80 3F */ lis r5, lbl_803ED4C4@ha
/* 802FD5E8 002FA548 38 E0 00 00 */ li r7, 0
/* 802FD5EC 002FA54C 38 C5 D4 C4 */ addi r6, r5, lbl_803ED4C4@l
/* 802FD5F0 002FA550 38 00 00 0A */ li r0, 0xa
/* 802FD5F4 002FA554 90 C3 00 00 */ stw r6, 0(r3)
/* 802FD5F8 002FA558 7C E5 3B 78 */ mr r5, r7
/* 802FD5FC 002FA55C 38 C0 00 00 */ li r6, 0
/* 802FD600 002FA560 90 83 00 04 */ stw r4, 4(r3)
/* 802FD604 002FA564 7C 09 03 A6 */ mtctr r0
lbl_802FD608:
/* 802FD608 002FA568 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD60C 002FA56C 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD610 002FA570 41 82 00 08 */ beq lbl_802FD618
/* 802FD614 002FA574 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD618:
/* 802FD618 002FA578 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD61C 002FA57C 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD620 002FA580 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD624 002FA584 41 82 00 08 */ beq lbl_802FD62C
/* 802FD628 002FA588 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD62C:
/* 802FD62C 002FA58C 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD630 002FA590 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD634 002FA594 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD638 002FA598 41 82 00 08 */ beq lbl_802FD640
/* 802FD63C 002FA59C 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD640:
/* 802FD640 002FA5A0 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD644 002FA5A4 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD648 002FA5A8 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD64C 002FA5AC 41 82 00 08 */ beq lbl_802FD654
/* 802FD650 002FA5B0 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD654:
/* 802FD654 002FA5B4 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD658 002FA5B8 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD65C 002FA5BC 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD660 002FA5C0 41 82 00 08 */ beq lbl_802FD668
/* 802FD664 002FA5C4 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD668:
/* 802FD668 002FA5C8 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD66C 002FA5CC 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD670 002FA5D0 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD674 002FA5D4 41 82 00 08 */ beq lbl_802FD67C
/* 802FD678 002FA5D8 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD67C:
/* 802FD67C 002FA5DC 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD680 002FA5E0 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD684 002FA5E4 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD688 002FA5E8 41 82 00 08 */ beq lbl_802FD690
/* 802FD68C 002FA5EC 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD690:
/* 802FD690 002FA5F0 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD694 002FA5F4 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD698 002FA5F8 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD69C 002FA5FC 41 82 00 08 */ beq lbl_802FD6A4
/* 802FD6A0 002FA600 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD6A4:
/* 802FD6A4 002FA604 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD6A8 002FA608 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD6AC 002FA60C 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD6B0 002FA610 41 82 00 08 */ beq lbl_802FD6B8
/* 802FD6B4 002FA614 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD6B8:
/* 802FD6B8 002FA618 80 03 00 04 */ lwz r0, 4(r3)
/* 802FD6BC 002FA61C 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD6C0 002FA620 7C 80 3A 15 */ add. r4, r0, r7
/* 802FD6C4 002FA624 41 82 00 08 */ beq lbl_802FD6CC
/* 802FD6C8 002FA628 90 A4 00 1C */ stw r5, 0x1c(r4)
lbl_802FD6CC:
/* 802FD6CC 002FA62C 38 E7 00 20 */ addi r7, r7, 0x20
/* 802FD6D0 002FA630 38 C6 00 09 */ addi r6, r6, 9
/* 802FD6D4 002FA634 42 00 FF 34 */ bdnz lbl_802FD608
/* 802FD6D8 002FA638 4E 80 00 20 */ blr