diff options
author | Max <mparisi@stevens.edu> | 2020-10-04 01:06:39 -0400 |
---|---|---|
committer | Max <mparisi@stevens.edu> | 2020-10-04 01:06:39 -0400 |
commit | 65db4167db2ac657708953b24cf26b6950d97362 (patch) | |
tree | db0089734e4803b6cec71c92f8328d13cd56d7d5 | |
parent | b797027f0f9e6fe56c802a46e146918aa884dfc9 (diff) |
split mem_list, mem_frameHeap, mem_allocator, mix, and remote
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | asm/SDK/HBM/HBMBase.s | 80 | ||||
-rw-r--r-- | asm/SDK/HBM/HBMGUIManager.s | 14 | ||||
-rw-r--r-- | asm/SDK/MEM/mem_allocator.s | 60 | ||||
-rw-r--r-- | asm/SDK/MEM/mem_frameHeap.s | 225 | ||||
-rw-r--r-- | asm/SDK/MEM/mem_heapCommon.s | 26 | ||||
-rw-r--r-- | asm/SDK/MEM/mem_list.s | 90 | ||||
-rw-r--r-- | asm/SDK/MIX/mix.s | 3635 | ||||
-rw-r--r-- | asm/SDK/MIX/remote.s | 329 | ||||
-rw-r--r-- | asm/code_800097D8.s | 2 | ||||
-rw-r--r-- | asm/nw4r/lyt/detail/lyt_common.s | 6 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_animation.s | 8 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_group.s | 6 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_layout.s | 22 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_material.s | 6 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_pane.s | 4 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_picture.s | 4 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_textBox.s | 12 | ||||
-rw-r--r-- | asm/nw4r/lyt/lyt_window.s | 12 | ||||
-rw-r--r-- | asm/nw4r/snd/detail/snd_AxfxImpl.s | 8 | ||||
-rw-r--r-- | asm/nw4r/snd/detail/snd_FrameHeap.s | 24 | ||||
-rw-r--r-- | asm/text_7.s | 36 | ||||
-rw-r--r-- | asm/text_8_6.s | 4324 | ||||
-rw-r--r-- | obj_files.mk | 5 |
24 files changed, 4487 insertions, 4455 deletions
@@ -29,13 +29,13 @@ TARGET := pbr_pal BUILD_DIR := build/$(TARGET) SRC_DIRS := src src/SDK/OS src/SDK/EXI src/SDK/SI src/SDK/DB src/SDK/VI src/SDK/MTX \ - src/SDK/GX src/SDK/DVD src/SDK/AI src/SDK/AX src/SDK/MEM src/SDK/base \ + src/SDK/GX src/SDK/DVD src/SDK/AI src/SDK/AX src/SDK/MEM src/SDK/MIX src/SDK/base \ src/SDK/HBM src/MSL_C/MSL_Common src/MSL_C/MSL_Common_Embedded \ src/MSL_C/MSL_Common_Embedded/Math src/MSL_C/PPC_EABI src/Runtime \ src/MetroTRK src/GameSpy src/nw4r/ut src/nw4r/snd src/nw4r/ut/detail \ src/nw4r/snd/detail src/nw4r/math src/nw4r/lyt src/nw4r/lyt/detail ASM_DIRS := asm asm/SDK/OS asm/SDK/EXI asm/SDK/SI asm/SDK/DB asm/SDK/VI asm/SDK/MTX \ - asm/SDK/GX asm/SDK/DVD asm/SDK/AI asm/SDK/AX asm/SDK/MEM asm/SDK/base \ + asm/SDK/GX asm/SDK/DVD asm/SDK/AI asm/SDK/AX asm/SDK/MEM asm/SDK/MIX asm/SDK/base \ asm/SDK/HBM asm/MSL_C/MSL_Common asm/MSL_C/MSL_Common_Embedded \ asm/MSL_C/MSL_Common_Embedded/Math asm/MSL_C/PPC_EABI asm/Runtime \ asm/MetroTRK asm/GameSpy asm/nw4r/ut asm/nw4r/snd asm/nw4r/ut/detail \ diff --git a/asm/SDK/HBM/HBMBase.s b/asm/SDK/HBM/HBMBase.s index 767f73c..cca0fcd 100644 --- a/asm/SDK/HBM/HBMBase.s +++ b/asm/SDK/HBM/HBMBase.s @@ -6,13 +6,13 @@ HBMAllocMem__FUl:
/* 8039A068 00395CC8 7C 64 1B 78 */ mr r4, r3
/* 8039A06C 00395CCC 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
-/* 8039A070 00395CD0 4B EF D6 B4 */ b func_80297724
+/* 8039A070 00395CD0 4B EF D6 B4 */ b MEMAllocFromAllocator
.global HBMFreeMem__FPv
HBMFreeMem__FPv:
/* 8039A074 00395CD4 7C 64 1B 78 */ mr r4, r3
/* 8039A078 00395CD8 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
-/* 8039A07C 00395CDC 4B EF D6 B8 */ b func_80297734
+/* 8039A07C 00395CDC 4B EF D6 B8 */ b MEMFreeToAllocator
.global HBMCreate
HBMCreate:
@@ -44,7 +44,7 @@ lbl_8039A0C0: /* 8039A0DC 00395D3C 7C 64 1B 78 */ mr r4, r3
/* 8039A0E0 00395D40 38 7F CE B8 */ addi r3, r31, lbl_8063CEB8@l
/* 8039A0E4 00395D44 38 A0 00 20 */ li r5, 0x20
-/* 8039A0E8 00395D48 4B EF D6 5D */ bl func_80297744
+/* 8039A0E8 00395D48 4B EF D6 5D */ bl MEMInitAllocatorForExpHeap
/* 8039A0EC 00395D4C 38 1F CE B8 */ addi r0, r31, -12616
/* 8039A0F0 00395D50 90 0D 95 4C */ stw r0, lbl_8063E80C-_SDA_BASE_(r13)
lbl_8039A0F4:
@@ -85,7 +85,7 @@ lbl_8039A15C: lbl_8039A164:
/* 8039A164 00395DC4 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A168 00395DC8 38 80 07 68 */ li r4, 0x768
-/* 8039A16C 00395DCC 4B EF D5 B9 */ bl func_80297724
+/* 8039A16C 00395DCC 4B EF D5 B9 */ bl MEMAllocFromAllocator
/* 8039A170 00395DD0 2C 03 00 00 */ cmpwi r3, 0
/* 8039A174 00395DD4 41 82 00 14 */ beq lbl_8039A188
/* 8039A178 00395DD8 41 82 00 0C */ beq lbl_8039A184
@@ -115,7 +115,7 @@ HBMDelete: /* 8039A1C4 00395E24 48 00 04 E9 */ bl __dt__Q210homebutton10HomeButtonFv
/* 8039A1C8 00395E28 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A1CC 00395E2C 80 8D B2 E0 */ lwz r4, lbl_806405A0-_SDA_BASE_(r13)
-/* 8039A1D0 00395E30 4B EF D5 65 */ bl func_80297734
+/* 8039A1D0 00395E30 4B EF D5 65 */ bl MEMFreeToAllocator
/* 8039A1D4 00395E34 38 00 00 00 */ li r0, 0
/* 8039A1D8 00395E38 90 0D B2 E0 */ stw r0, lbl_806405A0-_SDA_BASE_(r13)
/* 8039A1DC 00395E3C 80 1F 00 3C */ lwz r0, 0x3c(r31)
@@ -300,12 +300,12 @@ HBMCreateMemorySound: /* 8039A428 00396088 7C 83 23 78 */ mr r3, r4
/* 8039A42C 0039608C 7C A4 2B 78 */ mr r4, r5
/* 8039A430 00396090 38 A0 00 00 */ li r5, 0
-/* 8039A434 00396094 4B EF CF D9 */ bl func_8029740C
+/* 8039A434 00396094 4B EF CF D9 */ bl MEMCreateFrmHeapEx
/* 8039A438 00396098 3F C0 80 64 */ lis r30, lbl_8063CEC8@ha
/* 8039A43C 0039609C 7C 64 1B 78 */ mr r4, r3
/* 8039A440 003960A0 38 7E CE C8 */ addi r3, r30, lbl_8063CEC8@l
/* 8039A444 003960A4 38 A0 00 20 */ li r5, 0x20
-/* 8039A448 003960A8 4B EF D3 19 */ bl func_80297760
+/* 8039A448 003960A8 4B EF D3 19 */ bl MEMInitAllocatorForFrmHeap
/* 8039A44C 003960AC 3F E0 80 64 */ lis r31, lbl_8063CED8@ha
/* 8039A450 003960B0 83 AD B2 E0 */ lwz r29, lbl_806405A0-_SDA_BASE_(r13)
/* 8039A454 003960B4 3B FF CE D8 */ addi r31, r31, lbl_8063CED8@l
@@ -313,7 +313,7 @@ HBMCreateMemorySound: /* 8039A45C 003960BC 4B ED 54 ED */ bl OSLockMutex
/* 8039A460 003960C0 38 7E CE C8 */ addi r3, r30, -12600
/* 8039A464 003960C4 38 80 01 8C */ li r4, 0x18c
-/* 8039A468 003960C8 4B EF D2 BD */ bl func_80297724
+/* 8039A468 003960C8 4B EF D2 BD */ bl MEMAllocFromAllocator
/* 8039A46C 003960CC 2C 03 00 00 */ cmpwi r3, 0
/* 8039A470 003960D0 41 82 00 10 */ beq lbl_8039A480
/* 8039A474 003960D4 41 82 00 08 */ beq lbl_8039A47C
@@ -329,7 +329,7 @@ lbl_8039A480: /* 8039A494 003960F4 38 63 CE C8 */ addi r3, r3, lbl_8063CEC8@l
/* 8039A498 003960F8 83 C4 01 24 */ lwz r30, 0x124(r4)
/* 8039A49C 003960FC 7F C4 F3 78 */ mr r4, r30
-/* 8039A4A0 00396100 4B EF D2 85 */ bl func_80297724
+/* 8039A4A0 00396100 4B EF D2 85 */ bl MEMAllocFromAllocator
/* 8039A4A4 00396104 7C 64 1B 78 */ mr r4, r3
/* 8039A4A8 00396108 80 7D 05 D4 */ lwz r3, 0x5d4(r29)
/* 8039A4AC 0039610C 7F C5 F3 78 */ mr r5, r30
@@ -359,7 +359,7 @@ HBMDeleteSound: /* 8039A500 00396160 3C 60 80 64 */ lis r3, lbl_8063CEC8@ha
/* 8039A504 00396164 38 63 CE C8 */ addi r3, r3, lbl_8063CEC8@l
/* 8039A508 00396168 80 63 00 04 */ lwz r3, 4(r3)
-/* 8039A50C 0039616C 4B EF CF 85 */ bl func_80297490
+/* 8039A50C 0039616C 4B EF CF 85 */ bl MEMDestroyFrmHeap
/* 8039A510 00396170 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8039A514 00396174 7C 08 03 A6 */ mtlr r0
/* 8039A518 00396178 38 21 00 10 */ addi r1, r1, 0x10
@@ -492,7 +492,7 @@ __dt__Q210homebutton10HomeButtonFv: /* 8039A6E4 00396344 4E 80 04 21 */ bctrl
/* 8039A6E8 00396348 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A6EC 0039634C 80 9E 01 FC */ lwz r4, 0x1fc(r30)
-/* 8039A6F0 00396350 4B EF D0 45 */ bl func_80297734
+/* 8039A6F0 00396350 4B EF D0 45 */ bl MEMFreeToAllocator
/* 8039A6F4 00396354 80 7E 01 E8 */ lwz r3, 0x1e8(r30)
/* 8039A6F8 00396358 38 80 FF FF */ li r4, -1
/* 8039A6FC 0039635C 81 83 00 00 */ lwz r12, 0(r3)
@@ -501,7 +501,7 @@ __dt__Q210homebutton10HomeButtonFv: /* 8039A708 00396368 4E 80 04 21 */ bctrl
/* 8039A70C 0039636C 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A710 00396370 80 9E 01 E8 */ lwz r4, 0x1e8(r30)
-/* 8039A714 00396374 4B EF D0 21 */ bl func_80297734
+/* 8039A714 00396374 4B EF D0 21 */ bl MEMFreeToAllocator
/* 8039A718 00396378 80 7E 00 04 */ lwz r3, 4(r30)
/* 8039A71C 0039637C 80 03 00 20 */ lwz r0, 0x20(r3)
/* 8039A720 00396380 2C 00 00 00 */ cmpwi r0, 0
@@ -517,7 +517,7 @@ lbl_8039A730: /* 8039A744 003963A4 4E 80 04 21 */ bctrl
/* 8039A748 003963A8 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A74C 003963AC 80 9C 01 EC */ lwz r4, 0x1ec(r28)
-/* 8039A750 003963B0 4B EF CF E5 */ bl func_80297734
+/* 8039A750 003963B0 4B EF CF E5 */ bl MEMFreeToAllocator
/* 8039A754 003963B4 3B BD 00 01 */ addi r29, r29, 1
/* 8039A758 003963B8 3B 9C 00 04 */ addi r28, r28, 4
/* 8039A75C 003963BC 2C 1D 00 04 */ cmpwi r29, 4
@@ -535,7 +535,7 @@ lbl_8039A770: /* 8039A784 003963E4 4E 80 04 21 */ bctrl
/* 8039A788 003963E8 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A78C 003963EC 80 9C 02 70 */ lwz r4, 0x270(r28)
-/* 8039A790 003963F0 4B EF CF A5 */ bl func_80297734
+/* 8039A790 003963F0 4B EF CF A5 */ bl MEMFreeToAllocator
/* 8039A794 003963F4 3B 9C 00 04 */ addi r28, r28, 4
/* 8039A798 003963F8 3B BD 00 01 */ addi r29, r29, 1
lbl_8039A79C:
@@ -553,7 +553,7 @@ lbl_8039A7B0: /* 8039A7C4 00396424 4E 80 04 21 */ bctrl
/* 8039A7C8 00396428 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A7CC 0039642C 80 9C 03 C8 */ lwz r4, 0x3c8(r28)
-/* 8039A7D0 00396430 4B EF CF 65 */ bl func_80297734
+/* 8039A7D0 00396430 4B EF CF 65 */ bl MEMFreeToAllocator
/* 8039A7D4 00396434 3B BD 00 01 */ addi r29, r29, 1
/* 8039A7D8 00396438 3B 9C 00 04 */ addi r28, r28, 4
/* 8039A7DC 0039643C 2C 1D 00 0F */ cmpwi r29, 0xf
@@ -569,14 +569,14 @@ lbl_8039A7EC: /* 8039A800 00396460 4E 80 04 21 */ bctrl
/* 8039A804 00396464 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A808 00396468 80 9C 02 A0 */ lwz r4, 0x2a0(r28)
-/* 8039A80C 0039646C 4B EF CF 29 */ bl func_80297734
+/* 8039A80C 0039646C 4B EF CF 29 */ bl MEMFreeToAllocator
/* 8039A810 00396470 3B BD 00 01 */ addi r29, r29, 1
/* 8039A814 00396474 3B 9C 00 04 */ addi r28, r28, 4
/* 8039A818 00396478 2C 1D 00 4A */ cmpwi r29, 0x4a
/* 8039A81C 0039647C 41 80 FF D0 */ blt lbl_8039A7EC
/* 8039A820 00396480 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A824 00396484 80 9E 02 04 */ lwz r4, 0x204(r30)
-/* 8039A828 00396488 4B EF CF 0D */ bl func_80297734
+/* 8039A828 00396488 4B EF CF 0D */ bl MEMFreeToAllocator
/* 8039A82C 0039648C 80 7E 02 00 */ lwz r3, 0x200(r30)
/* 8039A830 00396490 38 80 FF FF */ li r4, -1
/* 8039A834 00396494 81 83 00 00 */ lwz r12, 0(r3)
@@ -585,7 +585,7 @@ lbl_8039A7EC: /* 8039A840 003964A0 4E 80 04 21 */ bctrl
/* 8039A844 003964A4 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A848 003964A8 80 9E 02 00 */ lwz r4, 0x200(r30)
-/* 8039A84C 003964AC 4B EF CE E9 */ bl func_80297734
+/* 8039A84C 003964AC 4B EF CE E9 */ bl MEMFreeToAllocator
/* 8039A850 003964B0 7F DC F3 78 */ mr r28, r30
/* 8039A854 003964B4 3B A0 00 00 */ li r29, 0
lbl_8039A858:
@@ -594,7 +594,7 @@ lbl_8039A858: /* 8039A860 003964C0 48 00 A8 89 */ bl __dt__Q210homebutton10ControllerFv
/* 8039A864 003964C4 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A868 003964C8 80 9C 02 5C */ lwz r4, 0x25c(r28)
-/* 8039A86C 003964CC 4B EF CE C9 */ bl func_80297734
+/* 8039A86C 003964CC 4B EF CE C9 */ bl MEMFreeToAllocator
/* 8039A870 003964D0 3B BD 00 01 */ addi r29, r29, 1
/* 8039A874 003964D4 3B 9C 00 04 */ addi r28, r28, 4
/* 8039A878 003964D8 2C 1D 00 04 */ cmpwi r29, 4
@@ -607,15 +607,15 @@ lbl_8039A858: /* 8039A894 003964F4 4E 80 04 21 */ bctrl
/* 8039A898 003964F8 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A89C 003964FC 80 9E 02 6C */ lwz r4, 0x26c(r30)
-/* 8039A8A0 00396500 4B EF CE 95 */ bl func_80297734
+/* 8039A8A0 00396500 4B EF CE 95 */ bl MEMFreeToAllocator
/* 8039A8A4 00396504 38 00 00 00 */ li r0, 0
/* 8039A8A8 00396508 80 9E 00 A8 */ lwz r4, 0xa8(r30)
/* 8039A8AC 0039650C 90 1E 02 6C */ stw r0, 0x26c(r30)
/* 8039A8B0 00396510 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
-/* 8039A8B4 00396514 4B EF CE 81 */ bl func_80297734
+/* 8039A8B4 00396514 4B EF CE 81 */ bl MEMFreeToAllocator
/* 8039A8B8 00396518 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A8BC 0039651C 80 9E 00 AC */ lwz r4, 0xac(r30)
-/* 8039A8C0 00396520 4B EF CE 75 */ bl func_80297734
+/* 8039A8C0 00396520 4B EF CE 75 */ bl MEMFreeToAllocator
/* 8039A8C4 00396524 3B BE 04 18 */ addi r29, r30, 0x418
/* 8039A8C8 00396528 3B 9E 04 D8 */ addi r28, r30, 0x4d8
/* 8039A8CC 0039652C 3B 60 00 00 */ li r27, 0
@@ -668,7 +668,7 @@ create__Q210homebutton10HomeButtonFv: /* 8039A974 003965D4 48 00 0A 7D */ bl set_text__Q210homebutton10HomeButtonFv
/* 8039A978 003965D8 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A97C 003965DC 38 80 00 B0 */ li r4, 0xb0
-/* 8039A980 003965E0 4B EF CD A5 */ bl func_80297724
+/* 8039A980 003965E0 4B EF CD A5 */ bl MEMAllocFromAllocator
/* 8039A984 003965E4 2C 03 00 00 */ cmpwi r3, 0
/* 8039A988 003965E8 41 82 00 10 */ beq lbl_8039A998
/* 8039A98C 003965EC 41 82 00 08 */ beq lbl_8039A994
@@ -691,7 +691,7 @@ lbl_8039A998: lbl_8039A9C8:
/* 8039A9C8 00396628 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039A9CC 0039662C 38 80 00 24 */ li r4, 0x24
-/* 8039A9D0 00396630 4B EF CD 55 */ bl func_80297724
+/* 8039A9D0 00396630 4B EF CD 55 */ bl MEMAllocFromAllocator
/* 8039A9D4 00396634 2C 03 00 00 */ cmpwi r3, 0
/* 8039A9D8 00396638 41 82 00 10 */ beq lbl_8039A9E8
/* 8039A9DC 0039663C 41 82 00 08 */ beq lbl_8039A9E4
@@ -722,7 +722,7 @@ lbl_8039A9E8: lbl_8039AA38:
/* 8039AA38 00396698 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039AA3C 0039669C 38 80 00 24 */ li r4, 0x24
-/* 8039AA40 003966A0 4B EF CC E5 */ bl func_80297724
+/* 8039AA40 003966A0 4B EF CC E5 */ bl MEMAllocFromAllocator
/* 8039AA44 003966A4 2C 03 00 00 */ cmpwi r3, 0
/* 8039AA48 003966A8 41 82 00 10 */ beq lbl_8039AA58
/* 8039AA4C 003966AC 41 82 00 08 */ beq lbl_8039AA54
@@ -797,7 +797,7 @@ lbl_8039AB04: /* 8039AB44 003967A4 7C 77 1B 78 */ mr r23, r3
/* 8039AB48 003967A8 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039AB4C 003967AC 38 80 00 28 */ li r4, 0x28
-/* 8039AB50 003967B0 4B EF CB D5 */ bl func_80297724
+/* 8039AB50 003967B0 4B EF CB D5 */ bl MEMAllocFromAllocator
/* 8039AB54 003967B4 2C 03 00 00 */ cmpwi r3, 0
/* 8039AB58 003967B8 41 82 00 10 */ beq lbl_8039AB68
/* 8039AB5C 003967BC 41 82 00 08 */ beq lbl_8039AB64
@@ -889,7 +889,7 @@ lbl_8039AC5C: /* 8039AC9C 003968FC 7C 77 1B 78 */ mr r23, r3
/* 8039ACA0 00396900 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039ACA4 00396904 38 80 00 28 */ li r4, 0x28
-/* 8039ACA8 00396908 4B EF CA 7D */ bl func_80297724
+/* 8039ACA8 00396908 4B EF CA 7D */ bl MEMAllocFromAllocator
/* 8039ACAC 0039690C 2C 03 00 00 */ cmpwi r3, 0
/* 8039ACB0 00396910 41 82 00 10 */ beq lbl_8039ACC0
/* 8039ACB4 00396914 41 82 00 08 */ beq lbl_8039ACBC
@@ -975,7 +975,7 @@ lbl_8039ADA8: /* 8039ADE0 00396A40 7C 76 1B 78 */ mr r22, r3
/* 8039ADE4 00396A44 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039ADE8 00396A48 38 80 00 28 */ li r4, 0x28
-/* 8039ADEC 00396A4C 4B EF C9 39 */ bl func_80297724
+/* 8039ADEC 00396A4C 4B EF C9 39 */ bl MEMAllocFromAllocator
/* 8039ADF0 00396A50 2C 03 00 00 */ cmpwi r3, 0
/* 8039ADF4 00396A54 41 82 00 10 */ beq lbl_8039AE04
/* 8039ADF8 00396A58 41 82 00 08 */ beq lbl_8039AE00
@@ -1038,7 +1038,7 @@ lbl_8039AE78: /* 8039AECC 00396B2C 41 80 FE DC */ blt lbl_8039ADA8
/* 8039AED0 00396B30 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039AED4 00396B34 38 80 00 0C */ li r4, 0xc
-/* 8039AED8 00396B38 4B EF C8 4D */ bl func_80297724
+/* 8039AED8 00396B38 4B EF C8 4D */ bl MEMAllocFromAllocator
/* 8039AEDC 00396B3C 2C 03 00 00 */ cmpwi r3, 0
/* 8039AEE0 00396B40 41 82 00 1C */ beq lbl_8039AEFC
/* 8039AEE4 00396B44 41 82 00 14 */ beq lbl_8039AEF8
@@ -1051,7 +1051,7 @@ lbl_8039AEF8: lbl_8039AEFC:
/* 8039AEFC 00396B5C 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039AF00 00396B60 38 80 00 2C */ li r4, 0x2c
-/* 8039AF04 00396B64 4B EF C8 21 */ bl func_80297724
+/* 8039AF04 00396B64 4B EF C8 21 */ bl MEMAllocFromAllocator
/* 8039AF08 00396B68 2C 03 00 00 */ cmpwi r3, 0
/* 8039AF0C 00396B6C 7C 76 1B 78 */ mr r22, r3
/* 8039AF10 00396B70 41 82 00 74 */ beq lbl_8039AF84
@@ -1129,7 +1129,7 @@ lbl_8039B014: /* 8039B01C 00396C7C 41 80 FF A4 */ blt lbl_8039AFC0
/* 8039B020 00396C80 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039B024 00396C84 38 80 01 F8 */ li r4, 0x1f8
-/* 8039B028 00396C88 4B EF C6 FD */ bl func_80297724
+/* 8039B028 00396C88 4B EF C6 FD */ bl MEMAllocFromAllocator
/* 8039B02C 00396C8C 2C 03 00 00 */ cmpwi r3, 0
/* 8039B030 00396C90 41 82 00 18 */ beq lbl_8039B048
/* 8039B034 00396C94 41 82 00 10 */ beq lbl_8039B044
@@ -1144,7 +1144,7 @@ lbl_8039B048: lbl_8039B050:
/* 8039B050 00396CB0 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039B054 00396CB4 38 80 00 48 */ li r4, 0x48
-/* 8039B058 00396CB8 4B EF C6 CD */ bl func_80297724
+/* 8039B058 00396CB8 4B EF C6 CD */ bl MEMAllocFromAllocator
/* 8039B05C 00396CBC 2C 03 00 00 */ cmpwi r3, 0
/* 8039B060 00396CC0 41 82 00 18 */ beq lbl_8039B078
/* 8039B064 00396CC4 41 82 00 10 */ beq lbl_8039B074
@@ -1339,7 +1339,7 @@ lbl_8039B2D8: lbl_8039B2E4:
/* 8039B2E4 00396F44 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039B2E8 00396F48 38 9D 00 01 */ addi r4, r29, 1
-/* 8039B2EC 00396F4C 4B EF C4 39 */ bl func_80297724
+/* 8039B2EC 00396F4C 4B EF C4 39 */ bl MEMAllocFromAllocator
/* 8039B2F0 00396F50 90 7E 00 A8 */ stw r3, 0xa8(r30)
/* 8039B2F4 00396F54 7F E4 FB 78 */ mr r4, r31
/* 8039B2F8 00396F58 7F A5 EB 78 */ mr r5, r29
@@ -1365,7 +1365,7 @@ lbl_8039B334: lbl_8039B340:
/* 8039B340 00396FA0 80 6D 95 4C */ lwz r3, lbl_8063E80C-_SDA_BASE_(r13)
/* 8039B344 00396FA4 38 9C 00 01 */ addi r4, r28, 1
-/* 8039B348 00396FA8 4B EF C3 DD */ bl func_80297724
+/* 8039B348 00396FA8 4B EF C3 DD */ bl MEMAllocFromAllocator
/* 8039B34C 00396FAC 90 7E 00 AC */ stw r3, 0xac(r30)
/* 8039B350 00396FB0 7F E4 FB 78 */ mr r4, r31
/* 8039B354 00396FB4 7F 85 E3 78 */ mr r5, r28
@@ -10423,7 +10423,7 @@ create_sound__Q210homebutton10HomeButtonFPQ34nw4r3snd12SoundArchiveb: /* 803A343C 0039F09C 7C BB 2B 78 */ mr r27, r5
/* 803A3440 0039F0A0 38 66 CE C8 */ addi r3, r6, lbl_8063CEC8@l
/* 803A3444 0039F0A4 38 80 00 E0 */ li r4, 0xe0
-/* 803A3448 0039F0A8 4B EF 42 DD */ bl func_80297724
+/* 803A3448 0039F0A8 4B EF 42 DD */ bl MEMAllocFromAllocator
/* 803A344C 0039F0AC 2C 03 00 00 */ cmpwi r3, 0
/* 803A3450 0039F0B0 41 82 00 10 */ beq lbl_803A3460
/* 803A3454 0039F0B4 41 82 00 08 */ beq lbl_803A345C
@@ -10442,11 +10442,11 @@ lbl_803A3460: /* 803A3480 0039F0E0 3F E0 80 64 */ lis r31, lbl_8063CEC8@ha
/* 803A3484 0039F0E4 7F 84 E3 78 */ mr r4, r28
/* 803A3488 0039F0E8 38 7F CE C8 */ addi r3, r31, lbl_8063CEC8@l
-/* 803A348C 0039F0EC 4B EF 42 99 */ bl func_80297724
+/* 803A348C 0039F0EC 4B EF 42 99 */ bl MEMAllocFromAllocator
/* 803A3490 0039F0F0 7C 7E 1B 78 */ mr r30, r3
/* 803A3494 0039F0F4 7F A4 EB 78 */ mr r4, r29
/* 803A3498 0039F0F8 38 7F CE C8 */ addi r3, r31, -12600
-/* 803A349C 0039F0FC 4B EF 42 89 */ bl func_80297724
+/* 803A349C 0039F0FC 4B EF 42 89 */ bl MEMAllocFromAllocator
/* 803A34A0 0039F100 7C 65 1B 78 */ mr r5, r3
/* 803A34A4 0039F104 80 79 05 D0 */ lwz r3, 0x5d0(r25)
/* 803A34A8 0039F108 7F 44 D3 78 */ mr r4, r26
@@ -10456,7 +10456,7 @@ lbl_803A3460: /* 803A34B8 0039F118 4B FD 58 BD */ bl Setup__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePvUlPvUl
/* 803A34BC 0039F11C 38 7F CE C8 */ addi r3, r31, -12600
/* 803A34C0 0039F120 38 80 00 04 */ li r4, 4
-/* 803A34C4 0039F124 4B EF 42 61 */ bl func_80297724
+/* 803A34C4 0039F124 4B EF 42 61 */ bl MEMAllocFromAllocator
/* 803A34C8 0039F128 2C 03 00 00 */ cmpwi r3, 0
/* 803A34CC 0039F12C 41 82 00 14 */ beq lbl_803A34E0
/* 803A34D0 0039F130 41 82 00 0C */ beq lbl_803A34DC
@@ -10470,7 +10470,7 @@ lbl_803A34E0: /* 803A34E8 0039F148 3C 60 80 64 */ lis r3, lbl_8063CEC8@ha
/* 803A34EC 0039F14C 38 80 00 2C */ li r4, 0x2c
/* 803A34F0 0039F150 38 63 CE C8 */ addi r3, r3, lbl_8063CEC8@l
-/* 803A34F4 0039F154 4B EF 42 31 */ bl func_80297724
+/* 803A34F4 0039F154 4B EF 42 31 */ bl MEMAllocFromAllocator
/* 803A34F8 0039F158 2C 03 00 00 */ cmpwi r3, 0
/* 803A34FC 0039F15C 41 82 00 10 */ beq lbl_803A350C
/* 803A3500 0039F160 41 82 00 08 */ beq lbl_803A3508
@@ -10488,7 +10488,7 @@ lbl_803A3524: /* 803A3524 0039F184 3C 60 80 64 */ lis r3, lbl_8063CEC8@ha
/* 803A3528 0039F188 7F E4 FB 78 */ mr r4, r31
/* 803A352C 0039F18C 38 63 CE C8 */ addi r3, r3, lbl_8063CEC8@l
-/* 803A3530 0039F190 4B EF 41 F5 */ bl func_80297724
+/* 803A3530 0039F190 4B EF 41 F5 */ bl MEMAllocFromAllocator
/* 803A3534 0039F194 7C 64 1B 78 */ mr r4, r3
/* 803A3538 0039F198 80 79 05 E0 */ lwz r3, 0x5e0(r25)
/* 803A353C 0039F19C 7F E5 FB 78 */ mr r5, r31
diff --git a/asm/SDK/HBM/HBMGUIManager.s b/asm/SDK/HBM/HBMGUIManager.s index 9b370b5..905f027 100644 --- a/asm/SDK/HBM/HBMGUIManager.s +++ b/asm/SDK/HBM/HBMGUIManager.s @@ -327,7 +327,7 @@ lbl_803A3DC8: /* 803A3DD8 0039FA38 2C 03 00 00 */ cmpwi r3, 0
/* 803A3DDC 0039FA3C 41 82 00 10 */ beq lbl_803A3DEC
/* 803A3DE0 0039FA40 7F E4 FB 78 */ mr r4, r31
-/* 803A3DE4 0039FA44 4B EF 39 51 */ bl func_80297734
+/* 803A3DE4 0039FA44 4B EF 39 51 */ bl MEMFreeToAllocator
/* 803A3DE8 0039FA48 48 00 00 0C */ b lbl_803A3DF4
lbl_803A3DEC:
/* 803A3DEC 0039FA4C 7F E3 FB 78 */ mr r3, r31
@@ -425,7 +425,7 @@ addComponent__Q310homebutton3gui7ManagerFPQ310homebutton3gui9Component: /* 803A3F24 0039FB84 2C 03 00 00 */ cmpwi r3, 0
/* 803A3F28 0039FB88 41 82 00 2C */ beq lbl_803A3F54
/* 803A3F2C 0039FB8C 38 80 00 10 */ li r4, 0x10
-/* 803A3F30 0039FB90 4B EF 37 F5 */ bl func_80297724
+/* 803A3F30 0039FB90 4B EF 37 F5 */ bl MEMAllocFromAllocator
/* 803A3F34 0039FB94 2C 03 00 00 */ cmpwi r3, 0
/* 803A3F38 0039FB98 41 82 00 0C */ beq lbl_803A3F44
/* 803A3F3C 0039FB9C 93 E3 00 00 */ stw r31, 0(r3)
@@ -733,10 +733,10 @@ lbl_803A4334: /* 803A4344 0039FFA4 2C 03 00 00 */ cmpwi r3, 0
/* 803A4348 0039FFA8 41 82 00 1C */ beq lbl_803A4364
/* 803A434C 0039FFAC 80 9F 00 04 */ lwz r4, 4(r31)
-/* 803A4350 0039FFB0 4B EF 33 E5 */ bl func_80297734
+/* 803A4350 0039FFB0 4B EF 33 E5 */ bl MEMFreeToAllocator
/* 803A4354 0039FFB4 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 803A4358 0039FFB8 7F E4 FB 78 */ mr r4, r31
-/* 803A435C 0039FFBC 4B EF 33 D9 */ bl func_80297734
+/* 803A435C 0039FFBC 4B EF 33 D9 */ bl MEMFreeToAllocator
/* 803A4360 0039FFC0 48 00 00 2C */ b lbl_803A438C
lbl_803A4364:
/* 803A4364 0039FFC4 80 7F 00 04 */ lwz r3, 4(r31)
@@ -776,7 +776,7 @@ lbl_803A43CC: /* 803A43DC 003A003C 2C 03 00 00 */ cmpwi r3, 0
/* 803A43E0 003A0040 41 82 00 10 */ beq lbl_803A43F0
/* 803A43E4 003A0044 7F E4 FB 78 */ mr r4, r31
-/* 803A43E8 003A0048 4B EF 33 4D */ bl func_80297734
+/* 803A43E8 003A0048 4B EF 33 4D */ bl MEMFreeToAllocator
/* 803A43EC 003A004C 48 00 00 0C */ b lbl_803A43F8
lbl_803A43F0:
/* 803A43F0 003A0050 7F E3 FB 78 */ mr r3, r31
@@ -878,11 +878,11 @@ lbl_803A4520: /* 803A4524 003A0184 2C 03 00 00 */ cmpwi r3, 0
/* 803A4528 003A0188 41 82 00 78 */ beq lbl_803A45A0
/* 803A452C 003A018C 38 80 00 30 */ li r4, 0x30
-/* 803A4530 003A0190 4B EF 31 F5 */ bl func_80297724
+/* 803A4530 003A0190 4B EF 31 F5 */ bl MEMAllocFromAllocator
/* 803A4534 003A0194 7C 7D 1B 78 */ mr r29, r3
/* 803A4538 003A0198 80 7C 00 14 */ lwz r3, 0x14(r28)
/* 803A453C 003A019C 38 80 00 10 */ li r4, 0x10
-/* 803A4540 003A01A0 4B EF 31 E5 */ bl func_80297724
+/* 803A4540 003A01A0 4B EF 31 E5 */ bl MEMAllocFromAllocator
/* 803A4544 003A01A4 2C 1D 00 00 */ cmpwi r29, 0
/* 803A4548 003A01A8 7C 76 1B 78 */ mr r22, r3
/* 803A454C 003A01AC 41 82 00 3C */ beq lbl_803A4588
diff --git a/asm/SDK/MEM/mem_allocator.s b/asm/SDK/MEM/mem_allocator.s new file mode 100644 index 0000000..4472425 --- /dev/null +++ b/asm/SDK/MEM/mem_allocator.s @@ -0,0 +1,60 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AllocatorAllocForExpHeap_
+AllocatorAllocForExpHeap_:
+/* 802976F8 00293358 7C 65 1B 78 */ mr r5, r3
+/* 802976FC 0029335C 80 63 00 04 */ lwz r3, 4(r3)
+/* 80297700 00293360 80 A5 00 08 */ lwz r5, 8(r5)
+/* 80297704 00293364 4B FF F8 24 */ b MEMAllocFromExpHeapEx
+
+.global AllocatorFreeForExpHeap_
+AllocatorFreeForExpHeap_:
+/* 80297708 00293368 80 63 00 04 */ lwz r3, 4(r3)
+/* 8029770C 0029336C 4B FF FA B8 */ b MEMFreeToExpHeap
+
+.global AllocatorAllocForFrmHeap_
+AllocatorAllocForFrmHeap_:
+/* 80297710 00293370 7C 65 1B 78 */ mr r5, r3
+/* 80297714 00293374 80 63 00 04 */ lwz r3, 4(r3)
+/* 80297718 00293378 80 A5 00 08 */ lwz r5, 8(r5)
+/* 8029771C 0029337C 4B FF FD A4 */ b MEMAllocFromFrmHeapEx
+
+.global AllocatorFreeForFrmHeap_
+AllocatorFreeForFrmHeap_:
+/* 80297720 00293380 4E 80 00 20 */ blr
+
+.global MEMAllocFromAllocator
+MEMAllocFromAllocator:
+/* 80297724 00293384 80 A3 00 00 */ lwz r5, 0(r3)
+/* 80297728 00293388 81 85 00 00 */ lwz r12, 0(r5)
+/* 8029772C 0029338C 7D 89 03 A6 */ mtctr r12
+/* 80297730 00293390 4E 80 04 20 */ bctr
+
+.global MEMFreeToAllocator
+MEMFreeToAllocator:
+/* 80297734 00293394 80 A3 00 00 */ lwz r5, 0(r3)
+/* 80297738 00293398 81 85 00 04 */ lwz r12, 4(r5)
+/* 8029773C 0029339C 7D 89 03 A6 */ mtctr r12
+/* 80297740 002933A0 4E 80 04 20 */ bctr
+
+.global MEMInitAllocatorForExpHeap
+MEMInitAllocatorForExpHeap:
+/* 80297744 002933A4 38 C2 A3 68 */ addi r6, r2, lbl_80642968-_SDA2_BASE_
+/* 80297748 002933A8 38 00 00 00 */ li r0, 0
+/* 8029774C 002933AC 90 C3 00 00 */ stw r6, 0(r3)
+/* 80297750 002933B0 90 83 00 04 */ stw r4, 4(r3)
+/* 80297754 002933B4 90 A3 00 08 */ stw r5, 8(r3)
+/* 80297758 002933B8 90 03 00 0C */ stw r0, 0xc(r3)
+/* 8029775C 002933BC 4E 80 00 20 */ blr
+
+.global MEMInitAllocatorForFrmHeap
+MEMInitAllocatorForFrmHeap:
+/* 80297760 002933C0 38 C2 A3 70 */ addi r6, r2, lbl_80642970-_SDA2_BASE_
+/* 80297764 002933C4 38 00 00 00 */ li r0, 0
+/* 80297768 002933C8 90 C3 00 00 */ stw r6, 0(r3)
+/* 8029776C 002933CC 90 83 00 04 */ stw r4, 4(r3)
+/* 80297770 002933D0 90 A3 00 08 */ stw r5, 8(r3)
+/* 80297774 002933D4 90 03 00 0C */ stw r0, 0xc(r3)
+/* 80297778 002933D8 4E 80 00 20 */ blr
diff --git a/asm/SDK/MEM/mem_frameHeap.s b/asm/SDK/MEM/mem_frameHeap.s new file mode 100644 index 0000000..5cca960 --- /dev/null +++ b/asm/SDK/MEM/mem_frameHeap.s @@ -0,0 +1,225 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global MEMCreateFrmHeapEx
+MEMCreateFrmHeapEx:
+/* 8029740C 0029306C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80297410 00293070 7C 08 02 A6 */ mflr r0
+/* 80297414 00293074 7C 84 1A 14 */ add r4, r4, r3
+/* 80297418 00293078 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8029741C 0029307C 38 03 00 03 */ addi r0, r3, 3
+/* 80297420 00293080 54 86 00 3A */ rlwinm r6, r4, 0, 0, 0x1d
+/* 80297424 00293084 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80297428 00293088 54 1F 00 3A */ rlwinm r31, r0, 0, 0, 0x1d
+/* 8029742C 0029308C 7C 1F 30 40 */ cmplw r31, r6
+/* 80297430 00293090 41 81 00 10 */ bgt lbl_80297440
+/* 80297434 00293094 7C 1F 30 50 */ subf r0, r31, r6
+/* 80297438 00293098 28 00 00 48 */ cmplwi r0, 0x48
+/* 8029743C 0029309C 40 80 00 0C */ bge lbl_80297448
+lbl_80297440:
+/* 80297440 002930A0 38 60 00 00 */ li r3, 0
+/* 80297444 002930A4 48 00 00 38 */ b lbl_8029747C
+lbl_80297448:
+/* 80297448 002930A8 3C 80 46 52 */ lis r4, 0x46524D48@ha
+/* 8029744C 002930AC 7C A7 2B 78 */ mr r7, r5
+/* 80297450 002930B0 7F E3 FB 78 */ mr r3, r31
+/* 80297454 002930B4 38 BF 00 48 */ addi r5, r31, 0x48
+/* 80297458 002930B8 38 84 4D 48 */ addi r4, r4, 0x46524D48@l
+/* 8029745C 002930BC 4B FF F1 B1 */ bl MEMiInitHeapHead
+/* 80297460 002930C0 80 9F 00 18 */ lwz r4, 0x18(r31)
+/* 80297464 002930C4 38 00 00 00 */ li r0, 0
+/* 80297468 002930C8 7F E3 FB 78 */ mr r3, r31
+/* 8029746C 002930CC 90 9F 00 3C */ stw r4, 0x3c(r31)
+/* 80297470 002930D0 80 9F 00 1C */ lwz r4, 0x1c(r31)
+/* 80297474 002930D4 90 9F 00 40 */ stw r4, 0x40(r31)
+/* 80297478 002930D8 90 1F 00 44 */ stw r0, 0x44(r31)
+lbl_8029747C:
+/* 8029747C 002930DC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80297480 002930E0 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80297484 002930E4 7C 08 03 A6 */ mtlr r0
+/* 80297488 002930E8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8029748C 002930EC 4E 80 00 20 */ blr
+
+.global MEMDestroyFrmHeap
+MEMDestroyFrmHeap:
+/* 80297490 002930F0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80297494 002930F4 7C 08 02 A6 */ mflr r0
+/* 80297498 002930F8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8029749C 002930FC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802974A0 00293100 7C 7F 1B 78 */ mr r31, r3
+/* 802974A4 00293104 4B FF F3 29 */ bl MEMiFinalizeHeap
+/* 802974A8 00293108 7F E3 FB 78 */ mr r3, r31
+/* 802974AC 0029310C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802974B0 00293110 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802974B4 00293114 7C 08 03 A6 */ mtlr r0
+/* 802974B8 00293118 38 21 00 10 */ addi r1, r1, 0x10
+/* 802974BC 0029311C 4E 80 00 20 */ blr
+
+.global MEMAllocFromFrmHeapEx
+MEMAllocFromFrmHeapEx:
+/* 802974C0 00293120 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802974C4 00293124 7C 08 02 A6 */ mflr r0
+/* 802974C8 00293128 2C 04 00 00 */ cmpwi r4, 0
+/* 802974CC 0029312C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802974D0 00293130 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802974D4 00293134 7C 7F 1B 78 */ mr r31, r3
+/* 802974D8 00293138 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802974DC 0029313C 7C 9E 23 78 */ mr r30, r4
+/* 802974E0 00293140 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802974E4 00293144 7C BD 2B 78 */ mr r29, r5
+/* 802974E8 00293148 40 82 00 08 */ bne lbl_802974F0
+/* 802974EC 0029314C 3B C0 00 01 */ li r30, 1
+lbl_802974F0:
+/* 802974F0 00293150 80 03 00 38 */ lwz r0, 0x38(r3)
+/* 802974F4 00293154 38 9E 00 03 */ addi r4, r30, 3
+/* 802974F8 00293158 54 9E 00 3A */ rlwinm r30, r4, 0, 0, 0x1d
+/* 802974FC 0029315C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 80297500 00293160 41 82 00 0C */ beq lbl_8029750C
+/* 80297504 00293164 38 63 00 20 */ addi r3, r3, 0x20
+/* 80297508 00293168 4B FD 84 41 */ bl OSLockMutex
+lbl_8029750C:
+/* 8029750C 0029316C 2C 1D 00 00 */ cmpwi r29, 0
+/* 80297510 00293170 41 80 00 54 */ blt lbl_80297564
+/* 80297514 00293174 80 7F 00 3C */ lwz r3, 0x3c(r31)
+/* 80297518 00293178 38 1D FF FF */ addi r0, r29, -1
+/* 8029751C 0029317C 7C 05 00 F8 */ nor r5, r0, r0
+/* 80297520 00293180 80 1F 00 40 */ lwz r0, 0x40(r31)
+/* 80297524 00293184 7C 9D 1A 14 */ add r4, r29, r3
+/* 80297528 00293188 38 84 FF FF */ addi r4, r4, -1
+/* 8029752C 0029318C 7C BD 20 38 */ and r29, r5, r4
+/* 80297530 00293190 7F DE EA 14 */ add r30, r30, r29
+/* 80297534 00293194 7C 1E 00 40 */ cmplw r30, r0
+/* 80297538 00293198 40 81 00 0C */ ble lbl_80297544
+/* 8029753C 0029319C 3B A0 00 00 */ li r29, 0
+/* 80297540 002931A0 48 00 00 6C */ b lbl_802975AC
+lbl_80297544:
+/* 80297544 002931A4 80 1F 00 38 */ lwz r0, 0x38(r31)
+/* 80297548 002931A8 7C A3 F0 50 */ subf r5, r3, r30
+/* 8029754C 002931AC 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80297550 002931B0 41 82 00 0C */ beq lbl_8029755C
+/* 80297554 002931B4 38 80 00 00 */ li r4, 0
+/* 80297558 002931B8 4B D6 CB AD */ bl memset
+lbl_8029755C:
+/* 8029755C 002931BC 93 DF 00 3C */ stw r30, 0x3c(r31)
+/* 80297560 002931C0 48 00 00 4C */ b lbl_802975AC
+lbl_80297564:
+/* 80297564 002931C4 80 BF 00 40 */ lwz r5, 0x40(r31)
+/* 80297568 002931C8 20 1D FF FF */ subfic r0, r29, -1
+/* 8029756C 002931CC 7C 04 00 F8 */ nor r4, r0, r0
+/* 80297570 002931D0 80 1F 00 3C */ lwz r0, 0x3c(r31)
+/* 80297574 002931D4 7C 7E 28 50 */ subf r3, r30, r5
+/* 80297578 002931D8 7C 9D 18 38 */ and r29, r4, r3
+/* 8029757C 002931DC 7C 1D 00 40 */ cmplw r29, r0
+/* 80297580 002931E0 40 80 00 0C */ bge lbl_8029758C
+/* 80297584 002931E4 3B A0 00 00 */ li r29, 0
+/* 80297588 002931E8 48 00 00 24 */ b lbl_802975AC
+lbl_8029758C:
+/* 8029758C 002931EC 80 1F 00 38 */ lwz r0, 0x38(r31)
+/* 80297590 002931F0 7C BD 28 50 */ subf r5, r29, r5
+/* 80297594 002931F4 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80297598 002931F8 41 82 00 10 */ beq lbl_802975A8
+/* 8029759C 002931FC 7F A3 EB 78 */ mr r3, r29
+/* 802975A0 00293200 38 80 00 00 */ li r4, 0
+/* 802975A4 00293204 4B D6 CB 61 */ bl memset
+lbl_802975A8:
+/* 802975A8 00293208 93 BF 00 40 */ stw r29, 0x40(r31)
+lbl_802975AC:
+/* 802975AC 0029320C 80 1F 00 38 */ lwz r0, 0x38(r31)
+/* 802975B0 00293210 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 802975B4 00293214 41 82 00 0C */ beq lbl_802975C0
+/* 802975B8 00293218 38 7F 00 20 */ addi r3, r31, 0x20
+/* 802975BC 0029321C 4B FD 84 69 */ bl OSUnlockMutex
+lbl_802975C0:
+/* 802975C0 00293220 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802975C4 00293224 7F A3 EB 78 */ mr r3, r29
+/* 802975C8 00293228 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802975CC 0029322C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802975D0 00293230 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802975D4 00293234 7C 08 03 A6 */ mtlr r0
+/* 802975D8 00293238 38 21 00 20 */ addi r1, r1, 0x20
+/* 802975DC 0029323C 4E 80 00 20 */ blr
+
+.global MEMFreeToFrmHeap
+MEMFreeToFrmHeap:
+/* 802975E0 00293240 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802975E4 00293244 7C 08 02 A6 */ mflr r0
+/* 802975E8 00293248 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802975EC 0029324C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802975F0 00293250 7C 9F 23 78 */ mr r31, r4
+/* 802975F4 00293254 93 C1 00 08 */ stw r30, 8(r1)
+/* 802975F8 00293258 7C 7E 1B 78 */ mr r30, r3
+/* 802975FC 0029325C 80 03 00 38 */ lwz r0, 0x38(r3)
+/* 80297600 00293260 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 80297604 00293264 41 82 00 0C */ beq lbl_80297610
+/* 80297608 00293268 38 63 00 20 */ addi r3, r3, 0x20
+/* 8029760C 0029326C 4B FD 83 3D */ bl OSLockMutex
+lbl_80297610:
+/* 80297610 00293270 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
+/* 80297614 00293274 41 82 00 14 */ beq lbl_80297628
+/* 80297618 00293278 80 7E 00 18 */ lwz r3, 0x18(r30)
+/* 8029761C 0029327C 38 00 00 00 */ li r0, 0
+/* 80297620 00293280 90 1E 00 44 */ stw r0, 0x44(r30)
+/* 80297624 00293284 90 7E 00 3C */ stw r3, 0x3c(r30)
+lbl_80297628:
+/* 80297628 00293288 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e
+/* 8029762C 0029328C 41 82 00 28 */ beq lbl_80297654
+/* 80297630 00293290 80 7E 00 44 */ lwz r3, 0x44(r30)
+/* 80297634 00293294 48 00 00 10 */ b lbl_80297644
+lbl_80297638:
+/* 80297638 00293298 80 1E 00 1C */ lwz r0, 0x1c(r30)
+/* 8029763C 0029329C 90 03 00 08 */ stw r0, 8(r3)
+/* 80297640 002932A0 80 63 00 0C */ lwz r3, 0xc(r3)
+lbl_80297644:
+/* 80297644 002932A4 2C 03 00 00 */ cmpwi r3, 0
+/* 80297648 002932A8 40 82 FF F0 */ bne lbl_80297638
+/* 8029764C 002932AC 80 1E 00 1C */ lwz r0, 0x1c(r30)
+/* 80297650 002932B0 90 1E 00 40 */ stw r0, 0x40(r30)
+lbl_80297654:
+/* 80297654 002932B4 80 1E 00 38 */ lwz r0, 0x38(r30)
+/* 80297658 002932B8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 8029765C 002932BC 41 82 00 0C */ beq lbl_80297668
+/* 80297660 002932C0 38 7E 00 20 */ addi r3, r30, 0x20
+/* 80297664 002932C4 4B FD 83 C1 */ bl OSUnlockMutex
+lbl_80297668:
+/* 80297668 002932C8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8029766C 002932CC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80297670 002932D0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80297674 002932D4 7C 08 03 A6 */ mtlr r0
+/* 80297678 002932D8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8029767C 002932DC 4E 80 00 20 */ blr
+
+.global MEMGetAllocatableSizeForFrmHeapEx
+MEMGetAllocatableSizeForFrmHeapEx:
+/* 80297680 002932E0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80297684 002932E4 7C 08 02 A6 */ mflr r0
+/* 80297688 002932E8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8029768C 002932EC 7C 80 FE 70 */ srawi r0, r4, 0x1f
+/* 80297690 002932F0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80297694 002932F4 7C 1F 22 78 */ xor r31, r0, r4
+/* 80297698 002932F8 7F E0 F8 50 */ subf r31, r0, r31
+/* 8029769C 002932FC 93 C1 00 08 */ stw r30, 8(r1)
+/* 802976A0 00293300 7C 7E 1B 78 */ mr r30, r3
+/* 802976A4 00293304 4B FD 70 B9 */ bl OSDisableInterrupts
+/* 802976A8 00293308 80 1E 00 3C */ lwz r0, 0x3c(r30)
+/* 802976AC 0029330C 38 9F FF FF */ addi r4, r31, -1
+/* 802976B0 00293310 7C 85 20 F8 */ nor r5, r4, r4
+/* 802976B4 00293314 80 DE 00 40 */ lwz r6, 0x40(r30)
+/* 802976B8 00293318 7C 9F 02 14 */ add r4, r31, r0
+/* 802976BC 0029331C 38 04 FF FF */ addi r0, r4, -1
+/* 802976C0 00293320 7C A0 00 38 */ and r0, r5, r0
+/* 802976C4 00293324 7C 00 30 40 */ cmplw r0, r6
+/* 802976C8 00293328 40 81 00 0C */ ble lbl_802976D4
+/* 802976CC 0029332C 3B E0 00 00 */ li r31, 0
+/* 802976D0 00293330 48 00 00 08 */ b lbl_802976D8
+lbl_802976D4:
+/* 802976D4 00293334 7F E0 30 50 */ subf r31, r0, r6
+lbl_802976D8:
+/* 802976D8 00293338 4B FD 70 AD */ bl OSRestoreInterrupts
+/* 802976DC 0029333C 7F E3 FB 78 */ mr r3, r31
+/* 802976E0 00293340 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802976E4 00293344 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802976E8 00293348 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802976EC 0029334C 7C 08 03 A6 */ mtlr r0
+/* 802976F0 00293350 38 21 00 10 */ addi r1, r1, 0x10
+/* 802976F4 00293354 4E 80 00 20 */ blr
diff --git a/asm/SDK/MEM/mem_heapCommon.s b/asm/SDK/MEM/mem_heapCommon.s index 6e2cc20..0d05b07 100644 --- a/asm/SDK/MEM/mem_heapCommon.s +++ b/asm/SDK/MEM/mem_heapCommon.s @@ -52,7 +52,7 @@ lbl_80296568: lbl_80296570:
/* 80296570 002921D0 7F C4 F3 78 */ mr r4, r30
/* 80296574 002921D4 38 7F 00 0C */ addi r3, r31, 0xc
-/* 80296578 002921D8 48 00 12 F9 */ bl func_80297870
+/* 80296578 002921D8 48 00 12 F9 */ bl MEMGetNextListObject
/* 8029657C 002921DC 2C 03 00 00 */ cmpwi r3, 0
/* 80296580 002921E0 7C 7E 1B 78 */ mr r30, r3
/* 80296584 002921E4 40 82 FF B4 */ bne lbl_80296538
@@ -67,7 +67,7 @@ lbl_80296598: lbl_802965A0:
/* 802965A0 00292200 7F E4 FB 78 */ mr r4, r31
/* 802965A4 00292204 38 7D 00 0C */ addi r3, r29, 0xc
-/* 802965A8 00292208 48 00 12 C9 */ bl func_80297870
+/* 802965A8 00292208 48 00 12 C9 */ bl MEMGetNextListObject
/* 802965AC 0029220C 2C 03 00 00 */ cmpwi r3, 0
/* 802965B0 00292210 7C 7F 1B 78 */ mr r31, r3
/* 802965B4 00292214 40 82 FF 64 */ bne lbl_80296518
@@ -82,7 +82,7 @@ lbl_802965C8: lbl_802965D0:
/* 802965D0 00292230 7F C3 F3 78 */ mr r3, r30
/* 802965D4 00292234 7F A4 EB 78 */ mr r4, r29
-/* 802965D8 00292238 48 00 12 99 */ bl func_80297870
+/* 802965D8 00292238 48 00 12 99 */ bl MEMGetNextListObject
/* 802965DC 0029223C 2C 03 00 00 */ cmpwi r3, 0
/* 802965E0 00292240 7C 7D 1B 78 */ mr r29, r3
/* 802965E4 00292244 40 82 FF 14 */ bne lbl_802964F8
@@ -113,14 +113,14 @@ MEMiInitHeapHead: /* 80296638 00292298 90 C3 00 1C */ stw r6, 0x1c(r3)
/* 8029663C 0029229C 90 03 00 38 */ stw r0, 0x38(r3)
/* 80296640 002922A0 38 63 00 0C */ addi r3, r3, 0xc
-/* 80296644 002922A4 48 00 11 39 */ bl func_8029777C
+/* 80296644 002922A4 48 00 11 39 */ bl MEMInitList
/* 80296648 002922A8 80 0D AC 48 */ lwz r0, lbl_8063FF08-_SDA_BASE_(r13)
/* 8029664C 002922AC 2C 00 00 00 */ cmpwi r0, 0
/* 80296650 002922B0 40 82 00 28 */ bne lbl_80296678
/* 80296654 002922B4 3C 60 80 53 */ lis r3, lbl_805311C0@ha
/* 80296658 002922B8 38 80 00 04 */ li r4, 4
/* 8029665C 002922BC 38 63 11 C0 */ addi r3, r3, lbl_805311C0@l
-/* 80296660 002922C0 48 00 11 1D */ bl func_8029777C
+/* 80296660 002922C0 48 00 11 1D */ bl MEMInitList
/* 80296664 002922C4 3C 60 80 53 */ lis r3, lbl_805311D0@ha
/* 80296668 002922C8 38 63 11 D0 */ addi r3, r3, lbl_805311D0@l
/* 8029666C 002922CC 4B FD 92 A5 */ bl OSInitMutex
@@ -173,7 +173,7 @@ lbl_8029670C: lbl_80296714:
/* 80296714 00292374 7F A4 EB 78 */ mr r4, r29
/* 80296718 00292378 38 7F 00 0C */ addi r3, r31, 0xc
-/* 8029671C 0029237C 48 00 11 55 */ bl func_80297870
+/* 8029671C 0029237C 48 00 11 55 */ bl MEMGetNextListObject
/* 80296720 00292380 2C 03 00 00 */ cmpwi r3, 0
/* 80296724 00292384 7C 7D 1B 78 */ mr r29, r3
/* 80296728 00292388 40 82 FF B4 */ bne lbl_802966DC
@@ -188,7 +188,7 @@ lbl_8029673C: lbl_80296744:
/* 80296744 002923A4 7F E4 FB 78 */ mr r4, r31
/* 80296748 002923A8 38 7E 00 0C */ addi r3, r30, 0xc
-/* 8029674C 002923AC 48 00 11 25 */ bl func_80297870
+/* 8029674C 002923AC 48 00 11 25 */ bl MEMGetNextListObject
/* 80296750 002923B0 2C 03 00 00 */ cmpwi r3, 0
/* 80296754 002923B4 7C 7F 1B 78 */ mr r31, r3
/* 80296758 002923B8 40 82 FF 64 */ bne lbl_802966BC
@@ -203,7 +203,7 @@ lbl_8029676C: lbl_80296774:
/* 80296774 002923D4 7F C4 F3 78 */ mr r4, r30
/* 80296778 002923D8 38 7F 11 C0 */ addi r3, r31, 0x11c0
-/* 8029677C 002923DC 48 00 10 F5 */ bl func_80297870
+/* 8029677C 002923DC 48 00 10 F5 */ bl MEMGetNextListObject
/* 80296780 002923E0 2C 03 00 00 */ cmpwi r3, 0
/* 80296784 002923E4 7C 7E 1B 78 */ mr r30, r3
/* 80296788 002923E8 40 82 FF 14 */ bne lbl_8029669C
@@ -215,7 +215,7 @@ lbl_80296790: lbl_8029679C:
/* 8029679C 002923FC 7F 83 E3 78 */ mr r3, r28
/* 802967A0 00292400 7F 64 DB 78 */ mr r4, r27
-/* 802967A4 00292404 48 00 0F F1 */ bl func_80297794
+/* 802967A4 00292404 48 00 0F F1 */ bl MEMAppendListObject
/* 802967A8 00292408 3C 60 80 53 */ lis r3, lbl_805311D0@ha
/* 802967AC 0029240C 38 63 11 D0 */ addi r3, r3, lbl_805311D0@l
/* 802967B0 00292410 4B FD 92 75 */ bl OSUnlockMutex
@@ -278,7 +278,7 @@ lbl_80296870: lbl_80296878:
/* 80296878 002924D8 7F A4 EB 78 */ mr r4, r29
/* 8029687C 002924DC 38 7F 00 0C */ addi r3, r31, 0xc
-/* 80296880 002924E0 48 00 0F F1 */ bl func_80297870
+/* 80296880 002924E0 48 00 0F F1 */ bl MEMGetNextListObject
/* 80296884 002924E4 2C 03 00 00 */ cmpwi r3, 0
/* 80296888 002924E8 7C 7D 1B 78 */ mr r29, r3
/* 8029688C 002924EC 40 82 FF B4 */ bne lbl_80296840
@@ -293,7 +293,7 @@ lbl_802968A0: lbl_802968A8:
/* 802968A8 00292508 7F E4 FB 78 */ mr r4, r31
/* 802968AC 0029250C 38 7E 00 0C */ addi r3, r30, 0xc
-/* 802968B0 00292510 48 00 0F C1 */ bl func_80297870
+/* 802968B0 00292510 48 00 0F C1 */ bl MEMGetNextListObject
/* 802968B4 00292514 2C 03 00 00 */ cmpwi r3, 0
/* 802968B8 00292518 7C 7F 1B 78 */ mr r31, r3
/* 802968BC 0029251C 40 82 FF 64 */ bne lbl_80296820
@@ -308,7 +308,7 @@ lbl_802968D0: lbl_802968D8:
/* 802968D8 00292538 7F C4 F3 78 */ mr r4, r30
/* 802968DC 0029253C 38 7F 11 C0 */ addi r3, r31, 0x11c0
-/* 802968E0 00292540 48 00 0F 91 */ bl func_80297870
+/* 802968E0 00292540 48 00 0F 91 */ bl MEMGetNextListObject
/* 802968E4 00292544 2C 03 00 00 */ cmpwi r3, 0
/* 802968E8 00292548 7C 7E 1B 78 */ mr r30, r3
/* 802968EC 0029254C 40 82 FF 14 */ bne lbl_80296800
@@ -320,7 +320,7 @@ lbl_802968F4: lbl_80296900:
/* 80296900 00292560 7F 83 E3 78 */ mr r3, r28
/* 80296904 00292564 7F 64 DB 78 */ mr r4, r27
-/* 80296908 00292568 48 00 0E FD */ bl func_80297804
+/* 80296908 00292568 48 00 0E FD */ bl MEMRemoveListObject
/* 8029690C 0029256C 3C 60 80 53 */ lis r3, lbl_805311D0@ha
/* 80296910 00292570 38 63 11 D0 */ addi r3, r3, lbl_805311D0@l
/* 80296914 00292574 4B FD 91 11 */ bl OSUnlockMutex
diff --git a/asm/SDK/MEM/mem_list.s b/asm/SDK/MEM/mem_list.s new file mode 100644 index 0000000..8496c01 --- /dev/null +++ b/asm/SDK/MEM/mem_list.s @@ -0,0 +1,90 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global MEMInitList
+MEMInitList:
+/* 8029777C 002933DC 38 00 00 00 */ li r0, 0
+/* 80297780 002933E0 B0 83 00 0A */ sth r4, 0xa(r3)
+/* 80297784 002933E4 90 03 00 00 */ stw r0, 0(r3)
+/* 80297788 002933E8 90 03 00 04 */ stw r0, 4(r3)
+/* 8029778C 002933EC B0 03 00 08 */ sth r0, 8(r3)
+/* 80297790 002933F0 4E 80 00 20 */ blr
+
+.global MEMAppendListObject
+MEMAppendListObject:
+/* 80297794 002933F4 80 03 00 00 */ lwz r0, 0(r3)
+/* 80297798 002933F8 2C 00 00 00 */ cmpwi r0, 0
+/* 8029779C 002933FC 40 82 00 30 */ bne lbl_802977CC
+/* 802977A0 00293400 A0 A3 00 0A */ lhz r5, 0xa(r3)
+/* 802977A4 00293404 38 00 00 00 */ li r0, 0
+/* 802977A8 00293408 7C A4 2A 14 */ add r5, r4, r5
+/* 802977AC 0029340C 90 05 00 04 */ stw r0, 4(r5)
+/* 802977B0 00293410 90 05 00 00 */ stw r0, 0(r5)
+/* 802977B4 00293414 A0 A3 00 08 */ lhz r5, 8(r3)
+/* 802977B8 00293418 90 83 00 00 */ stw r4, 0(r3)
+/* 802977BC 0029341C 38 05 00 01 */ addi r0, r5, 1
+/* 802977C0 00293420 90 83 00 04 */ stw r4, 4(r3)
+/* 802977C4 00293424 B0 03 00 08 */ sth r0, 8(r3)
+/* 802977C8 00293428 4E 80 00 20 */ blr
+lbl_802977CC:
+/* 802977CC 0029342C A0 C3 00 0A */ lhz r6, 0xa(r3)
+/* 802977D0 00293430 38 00 00 00 */ li r0, 0
+/* 802977D4 00293434 80 A3 00 04 */ lwz r5, 4(r3)
+/* 802977D8 00293438 7C A6 21 6E */ stwux r5, r6, r4
+/* 802977DC 0029343C 90 06 00 04 */ stw r0, 4(r6)
+/* 802977E0 00293440 80 A3 00 04 */ lwz r5, 4(r3)
+/* 802977E4 00293444 A0 03 00 0A */ lhz r0, 0xa(r3)
+/* 802977E8 00293448 7C A5 02 14 */ add r5, r5, r0
+/* 802977EC 0029344C 90 85 00 04 */ stw r4, 4(r5)
+/* 802977F0 00293450 A0 A3 00 08 */ lhz r5, 8(r3)
+/* 802977F4 00293454 90 83 00 04 */ stw r4, 4(r3)
+/* 802977F8 00293458 38 05 00 01 */ addi r0, r5, 1
+/* 802977FC 0029345C B0 03 00 08 */ sth r0, 8(r3)
+/* 80297800 00293460 4E 80 00 20 */ blr
+
+.global MEMRemoveListObject
+MEMRemoveListObject:
+/* 80297804 00293464 A0 A3 00 0A */ lhz r5, 0xa(r3)
+/* 80297808 00293468 7C C4 2A 14 */ add r6, r4, r5
+/* 8029780C 0029346C 7C 84 28 2E */ lwzx r4, r4, r5
+/* 80297810 00293470 2C 04 00 00 */ cmpwi r4, 0
+/* 80297814 00293474 40 82 00 10 */ bne lbl_80297824
+/* 80297818 00293478 80 06 00 04 */ lwz r0, 4(r6)
+/* 8029781C 0029347C 90 03 00 00 */ stw r0, 0(r3)
+/* 80297820 00293480 48 00 00 10 */ b lbl_80297830
+lbl_80297824:
+/* 80297824 00293484 80 06 00 04 */ lwz r0, 4(r6)
+/* 80297828 00293488 7C 84 2A 14 */ add r4, r4, r5
+/* 8029782C 0029348C 90 04 00 04 */ stw r0, 4(r4)
+lbl_80297830:
+/* 80297830 00293490 80 A6 00 04 */ lwz r5, 4(r6)
+/* 80297834 00293494 2C 05 00 00 */ cmpwi r5, 0
+/* 80297838 00293498 40 82 00 10 */ bne lbl_80297848
+/* 8029783C 0029349C 80 06 00 00 */ lwz r0, 0(r6)
+/* 80297840 002934A0 90 03 00 04 */ stw r0, 4(r3)
+/* 80297844 002934A4 48 00 00 10 */ b lbl_80297854
+lbl_80297848:
+/* 80297848 002934A8 80 86 00 00 */ lwz r4, 0(r6)
+/* 8029784C 002934AC A0 03 00 0A */ lhz r0, 0xa(r3)
+/* 80297850 002934B0 7C 85 01 2E */ stwx r4, r5, r0
+lbl_80297854:
+/* 80297854 002934B4 38 00 00 00 */ li r0, 0
+/* 80297858 002934B8 90 06 00 00 */ stw r0, 0(r6)
+/* 8029785C 002934BC 90 06 00 04 */ stw r0, 4(r6)
+/* 80297860 002934C0 A0 83 00 08 */ lhz r4, 8(r3)
+/* 80297864 002934C4 38 04 FF FF */ addi r0, r4, -1
+/* 80297868 002934C8 B0 03 00 08 */ sth r0, 8(r3)
+/* 8029786C 002934CC 4E 80 00 20 */ blr
+
+.global MEMGetNextListObject
+MEMGetNextListObject:
+/* 80297870 002934D0 2C 04 00 00 */ cmpwi r4, 0
+/* 80297874 002934D4 40 82 00 0C */ bne lbl_80297880
+/* 80297878 002934D8 80 63 00 00 */ lwz r3, 0(r3)
+/* 8029787C 002934DC 4E 80 00 20 */ blr
+lbl_80297880:
+/* 80297880 002934E0 A0 03 00 0A */ lhz r0, 0xa(r3)
+/* 80297884 002934E4 7C 64 02 14 */ add r3, r4, r0
+/* 80297888 002934E8 80 63 00 04 */ lwz r3, 4(r3)
+/* 8029788C 002934EC 4E 80 00 20 */ blr
diff --git a/asm/SDK/MIX/mix.s b/asm/SDK/MIX/mix.s new file mode 100644 index 0000000..7040011 --- /dev/null +++ b/asm/SDK/MIX/mix.s @@ -0,0 +1,3635 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __MIXSetPan
+__MIXSetPan:
+/* 80297890 002934F0 80 0D AC 5C */ lwz r0, lbl_8063FF1C-_SDA_BASE_(r13)
+/* 80297894 002934F4 3C C0 80 44 */ lis r6, lbl_8043B170@ha
+/* 80297898 002934F8 80 83 00 18 */ lwz r4, 0x18(r3)
+/* 8029789C 002934FC 38 C6 B1 70 */ addi r6, r6, lbl_8043B170@l
+/* 802978A0 00293500 28 00 00 03 */ cmplwi r0, 3
+/* 802978A4 00293504 81 43 00 1C */ lwz r10, 0x1c(r3)
+/* 802978A8 00293508 20 A4 00 7F */ subfic r5, r4, 0x7f
+/* 802978AC 0029350C 21 6A 00 7F */ subfic r11, r10, 0x7f
+/* 802978B0 00293510 40 82 00 50 */ bne lbl_80297900
+/* 802978B4 00293514 54 89 08 3C */ slwi r9, r4, 1
+/* 802978B8 00293518 38 E6 09 90 */ addi r7, r6, 0x990
+/* 802978BC 0029351C 7C 87 4A AE */ lhax r4, r7, r9
+/* 802978C0 00293520 54 A8 08 3C */ slwi r8, r5, 1
+/* 802978C4 00293524 55 65 08 3C */ slwi r5, r11, 1
+/* 802978C8 00293528 55 40 08 3C */ slwi r0, r10, 1
+/* 802978CC 0029352C 90 83 00 24 */ stw r4, 0x24(r3)
+/* 802978D0 00293530 38 86 0A 90 */ addi r4, r6, 0xa90
+/* 802978D4 00293534 7C C7 42 AE */ lhax r6, r7, r8
+/* 802978D8 00293538 90 C3 00 28 */ stw r6, 0x28(r3)
+/* 802978DC 0029353C 7C A7 2A AE */ lhax r5, r7, r5
+/* 802978E0 00293540 90 A3 00 2C */ stw r5, 0x2c(r3)
+/* 802978E4 00293544 7C 07 02 AE */ lhax r0, r7, r0
+/* 802978E8 00293548 90 03 00 30 */ stw r0, 0x30(r3)
+/* 802978EC 0029354C 7C 04 42 AE */ lhax r0, r4, r8
+/* 802978F0 00293550 90 03 00 34 */ stw r0, 0x34(r3)
+/* 802978F4 00293554 7C 04 4A AE */ lhax r0, r4, r9
+/* 802978F8 00293558 90 03 00 38 */ stw r0, 0x38(r3)
+/* 802978FC 0029355C 4E 80 00 20 */ blr
+lbl_80297900:
+/* 80297900 00293560 54 80 10 3A */ slwi r0, r4, 2
+/* 80297904 00293564 38 E6 07 90 */ addi r7, r6, 0x790
+/* 80297908 00293568 7C 07 00 2E */ lwzx r0, r7, r0
+/* 8029790C 0029356C 54 A6 10 3A */ slwi r6, r5, 2
+/* 80297910 00293570 55 65 10 3A */ slwi r5, r11, 2
+/* 80297914 00293574 55 44 10 3A */ slwi r4, r10, 2
+/* 80297918 00293578 90 03 00 24 */ stw r0, 0x24(r3)
+/* 8029791C 0029357C 38 00 00 00 */ li r0, 0
+/* 80297920 00293580 7C C7 30 2E */ lwzx r6, r7, r6
+/* 80297924 00293584 90 C3 00 28 */ stw r6, 0x28(r3)
+/* 80297928 00293588 7C A7 28 2E */ lwzx r5, r7, r5
+/* 8029792C 0029358C 90 A3 00 2C */ stw r5, 0x2c(r3)
+/* 80297930 00293590 7C 87 20 2E */ lwzx r4, r7, r4
+/* 80297934 00293594 90 83 00 30 */ stw r4, 0x30(r3)
+/* 80297938 00293598 90 03 00 34 */ stw r0, 0x34(r3)
+/* 8029793C 0029359C 90 03 00 38 */ stw r0, 0x38(r3)
+/* 80297940 002935A0 4E 80 00 20 */ blr
+
+.global __MIXGetVolume
+__MIXGetVolume:
+/* 80297944 002935A4 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297948 002935A8 41 81 00 0C */ bgt lbl_80297954
+/* 8029794C 002935AC 38 60 00 00 */ li r3, 0
+/* 80297950 002935B0 4E 80 00 20 */ blr
+lbl_80297954:
+/* 80297954 002935B4 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297958 002935B8 41 80 00 10 */ blt lbl_80297968
+/* 8029795C 002935BC 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297960 002935C0 38 63 FF 64 */ addi r3, r3, 0x0000FF64@l
+/* 80297964 002935C4 4E 80 00 20 */ blr
+lbl_80297968:
+/* 80297968 002935C8 38 03 03 88 */ addi r0, r3, 0x388
+/* 8029796C 002935CC 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297970 002935D0 54 00 08 3C */ slwi r0, r0, 1
+/* 80297974 002935D4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297978 002935D8 7C 63 02 2E */ lhzx r3, r3, r0
+/* 8029797C 002935DC 4E 80 00 20 */ blr
+
+.global MIXInit
+MIXInit:
+/* 80297980 002935E0 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80297984 002935E4 7C 08 02 A6 */ mflr r0
+/* 80297988 002935E8 90 01 00 34 */ stw r0, 0x34(r1)
+/* 8029798C 002935EC 39 61 00 30 */ addi r11, r1, 0x30
+/* 80297990 002935F0 4B F2 F7 91 */ bl _savegpr_25
+/* 80297994 002935F4 4B FF 76 F9 */ bl AXIsInit
+/* 80297998 002935F8 2C 03 00 00 */ cmpwi r3, 0
+/* 8029799C 002935FC 41 82 00 D4 */ beq lbl_80297A70
+/* 802979A0 00293600 4B FF A9 7D */ bl AXGetMaxVoices
+/* 802979A4 00293604 3C A0 80 53 */ lis r5, lbl_805311E8@ha
+/* 802979A8 00293608 3C 80 80 53 */ lis r4, lbl_80533BE8@ha
+/* 802979AC 0029360C 38 A5 11 E8 */ addi r5, r5, lbl_805311E8@l
+/* 802979B0 00293610 90 6D AC 58 */ stw r3, lbl_8063FF18-_SDA_BASE_(r13)
+/* 802979B4 00293614 38 84 3B E8 */ addi r4, r4, lbl_80533BE8@l
+/* 802979B8 00293618 3B 20 00 00 */ li r25, 0
+/* 802979BC 0029361C 90 AD AC 50 */ stw r5, lbl_8063FF10-_SDA_BASE_(r13)
+/* 802979C0 00293620 3B 40 00 00 */ li r26, 0
+/* 802979C4 00293624 3B 60 00 00 */ li r27, 0
+/* 802979C8 00293628 3F 80 50 00 */ lis r28, 0x5000
+/* 802979CC 0029362C 90 8D AC 60 */ stw r4, lbl_8063FF20-_SDA_BASE_(r13)
+/* 802979D0 00293630 3B A0 FC 40 */ li r29, -960
+/* 802979D4 00293634 3B C0 00 40 */ li r30, 0x40
+/* 802979D8 00293638 3B E0 00 7F */ li r31, 0x7f
+/* 802979DC 0029363C 48 00 00 7C */ b lbl_80297A58
+lbl_802979E0:
+/* 802979E0 00293640 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13)
+/* 802979E4 00293644 7F 63 D1 2E */ stwx r27, r3, r26
+/* 802979E8 00293648 80 0D AC 50 */ lwz r0, lbl_8063FF10-_SDA_BASE_(r13)
+/* 802979EC 0029364C 7C 60 D2 14 */ add r3, r0, r26
+/* 802979F0 00293650 93 83 00 04 */ stw r28, 4(r3)
+/* 802979F4 00293654 93 63 00 08 */ stw r27, 8(r3)
+/* 802979F8 00293658 93 A3 00 0C */ stw r29, 0xc(r3)
+/* 802979FC 0029365C 93 A3 00 10 */ stw r29, 0x10(r3)
+/* 80297A00 00293660 93 A3 00 14 */ stw r29, 0x14(r3)
+/* 80297A04 00293664 93 63 00 20 */ stw r27, 0x20(r3)
+/* 80297A08 00293668 93 C3 00 18 */ stw r30, 0x18(r3)
+/* 80297A0C 0029366C 93 E3 00 1C */ stw r31, 0x1c(r3)
+/* 80297A10 00293670 B3 63 00 6C */ sth r27, 0x6c(r3)
+/* 80297A14 00293674 B3 63 00 68 */ sth r27, 0x68(r3)
+/* 80297A18 00293678 B3 63 00 64 */ sth r27, 0x64(r3)
+/* 80297A1C 0029367C B3 63 00 60 */ sth r27, 0x60(r3)
+/* 80297A20 00293680 B3 63 00 5C */ sth r27, 0x5c(r3)
+/* 80297A24 00293684 B3 63 00 58 */ sth r27, 0x58(r3)
+/* 80297A28 00293688 B3 63 00 54 */ sth r27, 0x54(r3)
+/* 80297A2C 0029368C B3 63 00 50 */ sth r27, 0x50(r3)
+/* 80297A30 00293690 B3 63 00 4C */ sth r27, 0x4c(r3)
+/* 80297A34 00293694 B3 63 00 48 */ sth r27, 0x48(r3)
+/* 80297A38 00293698 B3 63 00 44 */ sth r27, 0x44(r3)
+/* 80297A3C 0029369C B3 63 00 40 */ sth r27, 0x40(r3)
+/* 80297A40 002936A0 B3 63 00 3C */ sth r27, 0x3c(r3)
+/* 80297A44 002936A4 4B FF FE 4D */ bl __MIXSetPan
+/* 80297A48 002936A8 7F 23 CB 78 */ mr r3, r25
+/* 80297A4C 002936AC 48 00 33 55 */ bl __MIXRmtResetChannel
+/* 80297A50 002936B0 3B 5A 00 70 */ addi r26, r26, 0x70
+/* 80297A54 002936B4 3B 39 00 01 */ addi r25, r25, 1
+lbl_80297A58:
+/* 80297A58 002936B8 80 0D AC 58 */ lwz r0, lbl_8063FF18-_SDA_BASE_(r13)
+/* 80297A5C 002936BC 7C 19 00 40 */ cmplw r25, r0
+/* 80297A60 002936C0 41 80 FF 80 */ blt lbl_802979E0
+/* 80297A64 002936C4 38 00 00 01 */ li r0, 1
+/* 80297A68 002936C8 90 0D AC 5C */ stw r0, lbl_8063FF1C-_SDA_BASE_(r13)
+/* 80297A6C 002936CC 90 0D AC 54 */ stw r0, lbl_8063FF14-_SDA_BASE_(r13)
+lbl_80297A70:
+/* 80297A70 002936D0 39 61 00 30 */ addi r11, r1, 0x30
+/* 80297A74 002936D4 4B F2 F6 F9 */ bl _restgpr_25
+/* 80297A78 002936D8 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80297A7C 002936DC 7C 08 03 A6 */ mtlr r0
+/* 80297A80 002936E0 38 21 00 30 */ addi r1, r1, 0x30
+/* 80297A84 002936E4 4E 80 00 20 */ blr
+
+.global MIXInitSpecifyMem
+MIXInitSpecifyMem:
+/* 80297A88 002936E8 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80297A8C 002936EC 7C 08 02 A6 */ mflr r0
+/* 80297A90 002936F0 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80297A94 002936F4 39 61 00 30 */ addi r11, r1, 0x30
+/* 80297A98 002936F8 4B F2 F6 89 */ bl _savegpr_25
+/* 80297A9C 002936FC 7C 7B 1B 78 */ mr r27, r3
+/* 80297AA0 00293700 4B FF 75 ED */ bl AXIsInit
+/* 80297AA4 00293704 2C 03 00 00 */ cmpwi r3, 0
+/* 80297AA8 00293708 41 82 00 D8 */ beq lbl_80297B80
+/* 80297AAC 0029370C 2C 1B 00 00 */ cmpwi r27, 0
+/* 80297AB0 00293710 40 82 00 08 */ bne lbl_80297AB8
+/* 80297AB4 00293714 48 00 00 CC */ b lbl_80297B80
+lbl_80297AB8:
+/* 80297AB8 00293718 4B FF A8 65 */ bl AXGetMaxVoices
+/* 80297ABC 0029371C 1C 03 00 70 */ mulli r0, r3, 0x70
+/* 80297AC0 00293720 90 6D AC 58 */ stw r3, lbl_8063FF18-_SDA_BASE_(r13)
+/* 80297AC4 00293724 3B 20 00 00 */ li r25, 0
+/* 80297AC8 00293728 93 6D AC 50 */ stw r27, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80297ACC 0029372C 3B 40 00 00 */ li r26, 0
+/* 80297AD0 00293730 7C 1B 02 14 */ add r0, r27, r0
+/* 80297AD4 00293734 90 0D AC 60 */ stw r0, lbl_8063FF20-_SDA_BASE_(r13)
+/* 80297AD8 00293738 3B 60 00 00 */ li r27, 0
+/* 80297ADC 0029373C 3F 80 50 00 */ lis r28, 0x5000
+/* 80297AE0 00293740 3B A0 FC 40 */ li r29, -960
+/* 80297AE4 00293744 3B C0 00 40 */ li r30, 0x40
+/* 80297AE8 00293748 3B E0 00 7F */ li r31, 0x7f
+/* 80297AEC 0029374C 48 00 00 7C */ b lbl_80297B68
+lbl_80297AF0:
+/* 80297AF0 00293750 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80297AF4 00293754 7F 63 D1 2E */ stwx r27, r3, r26
+/* 80297AF8 00293758 80 0D AC 50 */ lwz r0, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80297AFC 0029375C 7C 60 D2 14 */ add r3, r0, r26
+/* 80297B00 00293760 93 83 00 04 */ stw r28, 4(r3)
+/* 80297B04 00293764 93 63 00 08 */ stw r27, 8(r3)
+/* 80297B08 00293768 93 A3 00 0C */ stw r29, 0xc(r3)
+/* 80297B0C 0029376C 93 A3 00 10 */ stw r29, 0x10(r3)
+/* 80297B10 00293770 93 A3 00 14 */ stw r29, 0x14(r3)
+/* 80297B14 00293774 93 63 00 20 */ stw r27, 0x20(r3)
+/* 80297B18 00293778 93 C3 00 18 */ stw r30, 0x18(r3)
+/* 80297B1C 0029377C 93 E3 00 1C */ stw r31, 0x1c(r3)
+/* 80297B20 00293780 B3 63 00 6C */ sth r27, 0x6c(r3)
+/* 80297B24 00293784 B3 63 00 68 */ sth r27, 0x68(r3)
+/* 80297B28 00293788 B3 63 00 64 */ sth r27, 0x64(r3)
+/* 80297B2C 0029378C B3 63 00 60 */ sth r27, 0x60(r3)
+/* 80297B30 00293790 B3 63 00 5C */ sth r27, 0x5c(r3)
+/* 80297B34 00293794 B3 63 00 58 */ sth r27, 0x58(r3)
+/* 80297B38 00293798 B3 63 00 54 */ sth r27, 0x54(r3)
+/* 80297B3C 0029379C B3 63 00 50 */ sth r27, 0x50(r3)
+/* 80297B40 002937A0 B3 63 00 4C */ sth r27, 0x4c(r3)
+/* 80297B44 002937A4 B3 63 00 48 */ sth r27, 0x48(r3)
+/* 80297B48 002937A8 B3 63 00 44 */ sth r27, 0x44(r3)
+/* 80297B4C 002937AC B3 63 00 40 */ sth r27, 0x40(r3)
+/* 80297B50 002937B0 B3 63 00 3C */ sth r27, 0x3c(r3)
+/* 80297B54 002937B4 4B FF FD 3D */ bl __MIXSetPan
+/* 80297B58 002937B8 7F 23 CB 78 */ mr r3, r25
+/* 80297B5C 002937BC 48 00 32 45 */ bl __MIXRmtResetChannel
+/* 80297B60 002937C0 3B 5A 00 70 */ addi r26, r26, 0x70
+/* 80297B64 002937C4 3B 39 00 01 */ addi r25, r25, 1
+lbl_80297B68:
+/* 80297B68 002937C8 80 0D AC 58 */ lwz r0, lbl_8063FF18-_SDA_BASE_(r13)
+/* 80297B6C 002937CC 7C 19 00 40 */ cmplw r25, r0
+/* 80297B70 002937D0 41 80 FF 80 */ blt lbl_80297AF0
+/* 80297B74 002937D4 38 00 00 01 */ li r0, 1
+/* 80297B78 002937D8 90 0D AC 5C */ stw r0, lbl_8063FF1C-_SDA_BASE_(r13)
+/* 80297B7C 002937DC 90 0D AC 54 */ stw r0, lbl_8063FF14-_SDA_BASE_(r13)
+lbl_80297B80:
+/* 80297B80 002937E0 39 61 00 30 */ addi r11, r1, 0x30
+/* 80297B84 002937E4 4B F2 F5 E9 */ bl _restgpr_25
+/* 80297B88 002937E8 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80297B8C 002937EC 7C 08 03 A6 */ mtlr r0
+/* 80297B90 002937F0 38 21 00 30 */ addi r1, r1, 0x30
+/* 80297B94 002937F4 4E 80 00 20 */ blr
+
+.global MIXQuit
+MIXQuit:
+/* 80297B98 002937F8 38 00 00 00 */ li r0, 0
+/* 80297B9C 002937FC 90 0D AC 50 */ stw r0, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80297BA0 00293800 90 0D AC 60 */ stw r0, lbl_8063FF20-_SDA_BASE_(r13)
+/* 80297BA4 00293804 90 0D AC 54 */ stw r0, lbl_8063FF14-_SDA_BASE_(r13)
+/* 80297BA8 00293808 4E 80 00 20 */ blr
+
+.global MIXSetSoundMode
+MIXSetSoundMode:
+/* 80297BAC 0029380C 90 6D AC 5C */ stw r3, lbl_8063FF1C-_SDA_BASE_(r13)
+/* 80297BB0 00293810 4E 80 00 20 */ blr
+
+.global MIXInitChannel
+MIXInitChannel:
+/* 80297BB4 00293814 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80297BB8 00293818 7C 08 02 A6 */ mflr r0
+/* 80297BBC 0029381C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80297BC0 00293820 54 80 07 3E */ clrlwi r0, r4, 0x1c
+/* 80297BC4 00293824 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80297BC8 00293828 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80297BCC 0029382C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80297BD0 00293830 7C BD 2B 78 */ mr r29, r5
+/* 80297BD4 00293834 93 81 00 10 */ stw r28, 0x10(r1)
+/* 80297BD8 00293838 7C 7C 1B 78 */ mr r28, r3
+/* 80297BDC 0029383C 81 63 00 18 */ lwz r11, 0x18(r3)
+/* 80297BE0 00293840 81 8D AC 50 */ lwz r12, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80297BE4 00293844 1C 8B 00 70 */ mulli r4, r11, 0x70
+/* 80297BE8 00293848 81 61 00 28 */ lwz r11, 0x28(r1)
+/* 80297BEC 0029384C 7C 6C 21 2E */ stwx r3, r12, r4
+/* 80297BF0 00293850 7F CC 22 14 */ add r30, r12, r4
+/* 80297BF4 00293854 7F C3 F3 78 */ mr r3, r30
+/* 80297BF8 00293858 90 1E 00 04 */ stw r0, 4(r30)
+/* 80297BFC 0029385C 90 BE 00 08 */ stw r5, 8(r30)
+/* 80297C00 00293860 90 DE 00 0C */ stw r6, 0xc(r30)
+/* 80297C04 00293864 90 FE 00 10 */ stw r7, 0x10(r30)
+/* 80297C08 00293868 91 1E 00 14 */ stw r8, 0x14(r30)
+/* 80297C0C 0029386C 91 3E 00 18 */ stw r9, 0x18(r30)
+/* 80297C10 00293870 91 5E 00 1C */ stw r10, 0x1c(r30)
+/* 80297C14 00293874 91 7E 00 20 */ stw r11, 0x20(r30)
+/* 80297C18 00293878 4B FF FC 79 */ bl __MIXSetPan
+/* 80297C1C 0029387C 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80297C20 00293880 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
+/* 80297C24 00293884 41 82 00 10 */ beq lbl_80297C34
+/* 80297C28 00293888 38 00 00 00 */ li r0, 0
+/* 80297C2C 0029388C B0 1E 00 3C */ sth r0, 0x3c(r30)
+/* 80297C30 00293890 48 00 00 40 */ b lbl_80297C70
+lbl_80297C34:
+/* 80297C34 00293894 2C 1D FC 78 */ cmpwi r29, -904
+/* 80297C38 00293898 41 81 00 0C */ bgt lbl_80297C44
+/* 80297C3C 0029389C 38 00 00 00 */ li r0, 0
+/* 80297C40 002938A0 48 00 00 2C */ b lbl_80297C6C
+lbl_80297C44:
+/* 80297C44 002938A4 2C 1D 00 3C */ cmpwi r29, 0x3c
+/* 80297C48 002938A8 41 80 00 10 */ blt lbl_80297C58
+/* 80297C4C 002938AC 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297C50 002938B0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297C54 002938B4 48 00 00 18 */ b lbl_80297C6C
+lbl_80297C58:
+/* 80297C58 002938B8 38 1D 03 88 */ addi r0, r29, 0x388
+/* 80297C5C 002938BC 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297C60 002938C0 54 00 08 3C */ slwi r0, r0, 1
+/* 80297C64 002938C4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297C68 002938C8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297C6C:
+/* 80297C6C 002938CC B0 1E 00 3C */ sth r0, 0x3c(r30)
+lbl_80297C70:
+/* 80297C70 002938D0 80 0D AC 5C */ lwz r0, lbl_8063FF1C-_SDA_BASE_(r13)
+/* 80297C74 002938D4 3B A0 00 00 */ li r29, 0
+/* 80297C78 002938D8 2C 00 00 03 */ cmpwi r0, 3
+/* 80297C7C 002938DC 41 82 0D 88 */ beq lbl_80298A04
+/* 80297C80 002938E0 40 80 14 28 */ bge lbl_802990A8
+/* 80297C84 002938E4 2C 00 00 00 */ cmpwi r0, 0
+/* 80297C88 002938E8 41 82 00 0C */ beq lbl_80297C94
+/* 80297C8C 002938EC 40 80 06 88 */ bge lbl_80298314
+/* 80297C90 002938F0 48 00 14 18 */ b lbl_802990A8
+lbl_80297C94:
+/* 80297C94 002938F4 80 7E 00 20 */ lwz r3, 0x20(r30)
+/* 80297C98 002938F8 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80297C9C 002938FC 7C 63 02 14 */ add r3, r3, r0
+/* 80297CA0 00293900 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297CA4 00293904 41 81 00 0C */ bgt lbl_80297CB0
+/* 80297CA8 00293908 38 00 00 00 */ li r0, 0
+/* 80297CAC 0029390C 48 00 00 2C */ b lbl_80297CD8
+lbl_80297CB0:
+/* 80297CB0 00293910 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297CB4 00293914 41 80 00 10 */ blt lbl_80297CC4
+/* 80297CB8 00293918 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297CBC 0029391C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297CC0 00293920 48 00 00 18 */ b lbl_80297CD8
+lbl_80297CC4:
+/* 80297CC4 00293924 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297CC8 00293928 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297CCC 0029392C 54 00 08 3C */ slwi r0, r0, 1
+/* 80297CD0 00293930 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297CD4 00293934 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297CD8:
+/* 80297CD8 00293938 B0 1E 00 40 */ sth r0, 0x40(r30)
+/* 80297CDC 0029393C 80 7E 00 20 */ lwz r3, 0x20(r30)
+/* 80297CE0 00293940 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80297CE4 00293944 7C 63 02 14 */ add r3, r3, r0
+/* 80297CE8 00293948 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297CEC 0029394C 41 81 00 0C */ bgt lbl_80297CF8
+/* 80297CF0 00293950 38 00 00 00 */ li r0, 0
+/* 80297CF4 00293954 48 00 00 2C */ b lbl_80297D20
+lbl_80297CF8:
+/* 80297CF8 00293958 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297CFC 0029395C 41 80 00 10 */ blt lbl_80297D0C
+/* 80297D00 00293960 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297D04 00293964 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297D08 00293968 48 00 00 18 */ b lbl_80297D20
+lbl_80297D0C:
+/* 80297D0C 0029396C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297D10 00293970 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297D14 00293974 54 00 08 3C */ slwi r0, r0, 1
+/* 80297D18 00293978 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297D1C 0029397C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297D20:
+/* 80297D20 00293980 B0 1E 00 44 */ sth r0, 0x44(r30)
+/* 80297D24 00293984 80 7E 00 20 */ lwz r3, 0x20(r30)
+/* 80297D28 00293988 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 80297D2C 0029398C 7C 63 02 14 */ add r3, r3, r0
+/* 80297D30 00293990 38 63 FF E2 */ addi r3, r3, -30
+/* 80297D34 00293994 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297D38 00293998 41 81 00 0C */ bgt lbl_80297D44
+/* 80297D3C 0029399C 38 00 00 00 */ li r0, 0
+/* 80297D40 002939A0 48 00 00 2C */ b lbl_80297D6C
+lbl_80297D44:
+/* 80297D44 002939A4 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297D48 002939A8 41 80 00 10 */ blt lbl_80297D58
+/* 80297D4C 002939AC 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297D50 002939B0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297D54 002939B4 48 00 00 18 */ b lbl_80297D6C
+lbl_80297D58:
+/* 80297D58 002939B8 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297D5C 002939BC 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297D60 002939C0 54 00 08 3C */ slwi r0, r0, 1
+/* 80297D64 002939C4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297D68 002939C8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297D6C:
+/* 80297D6C 002939CC B0 1E 00 48 */ sth r0, 0x48(r30)
+/* 80297D70 002939D0 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80297D74 002939D4 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80297D78 002939D8 41 82 00 E4 */ beq lbl_80297E5C
+/* 80297D7C 002939DC 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 80297D80 002939E0 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80297D84 002939E4 7C 63 02 14 */ add r3, r3, r0
+/* 80297D88 002939E8 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297D8C 002939EC 41 81 00 0C */ bgt lbl_80297D98
+/* 80297D90 002939F0 38 00 00 00 */ li r0, 0
+/* 80297D94 002939F4 48 00 00 2C */ b lbl_80297DC0
+lbl_80297D98:
+/* 80297D98 002939F8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297D9C 002939FC 41 80 00 10 */ blt lbl_80297DAC
+/* 80297DA0 00293A00 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297DA4 00293A04 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297DA8 00293A08 48 00 00 18 */ b lbl_80297DC0
+lbl_80297DAC:
+/* 80297DAC 00293A0C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297DB0 00293A10 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297DB4 00293A14 54 00 08 3C */ slwi r0, r0, 1
+/* 80297DB8 00293A18 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297DBC 00293A1C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297DC0:
+/* 80297DC0 00293A20 B0 1E 00 4C */ sth r0, 0x4c(r30)
+/* 80297DC4 00293A24 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 80297DC8 00293A28 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80297DCC 00293A2C 7C 63 02 14 */ add r3, r3, r0
+/* 80297DD0 00293A30 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297DD4 00293A34 41 81 00 0C */ bgt lbl_80297DE0
+/* 80297DD8 00293A38 38 00 00 00 */ li r0, 0
+/* 80297DDC 00293A3C 48 00 00 2C */ b lbl_80297E08
+lbl_80297DE0:
+/* 80297DE0 00293A40 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297DE4 00293A44 41 80 00 10 */ blt lbl_80297DF4
+/* 80297DE8 00293A48 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297DEC 00293A4C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297DF0 00293A50 48 00 00 18 */ b lbl_80297E08
+lbl_80297DF4:
+/* 80297DF4 00293A54 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297DF8 00293A58 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297DFC 00293A5C 54 00 08 3C */ slwi r0, r0, 1
+/* 80297E00 00293A60 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297E04 00293A64 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297E08:
+/* 80297E08 00293A68 B0 1E 00 50 */ sth r0, 0x50(r30)
+/* 80297E0C 00293A6C 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 80297E10 00293A70 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 80297E14 00293A74 7C 63 02 14 */ add r3, r3, r0
+/* 80297E18 00293A78 38 63 FF E2 */ addi r3, r3, -30
+/* 80297E1C 00293A7C 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297E20 00293A80 41 81 00 0C */ bgt lbl_80297E2C
+/* 80297E24 00293A84 38 00 00 00 */ li r0, 0
+/* 80297E28 00293A88 48 00 00 2C */ b lbl_80297E54
+lbl_80297E2C:
+/* 80297E2C 00293A8C 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297E30 00293A90 41 80 00 10 */ blt lbl_80297E40
+/* 80297E34 00293A94 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297E38 00293A98 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297E3C 00293A9C 48 00 00 18 */ b lbl_80297E54
+lbl_80297E40:
+/* 80297E40 00293AA0 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297E44 00293AA4 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297E48 00293AA8 54 00 08 3C */ slwi r0, r0, 1
+/* 80297E4C 00293AAC 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297E50 00293AB0 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297E54:
+/* 80297E54 00293AB4 B0 1E 00 54 */ sth r0, 0x54(r30)
+/* 80297E58 00293AB8 48 00 00 F8 */ b lbl_80297F50
+lbl_80297E5C:
+/* 80297E5C 00293ABC 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80297E60 00293AC0 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80297E64 00293AC4 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 80297E68 00293AC8 7C 04 02 14 */ add r0, r4, r0
+/* 80297E6C 00293ACC 7C 63 02 14 */ add r3, r3, r0
+/* 80297E70 00293AD0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297E74 00293AD4 41 81 00 0C */ bgt lbl_80297E80
+/* 80297E78 00293AD8 38 00 00 00 */ li r0, 0
+/* 80297E7C 00293ADC 48 00 00 2C */ b lbl_80297EA8
+lbl_80297E80:
+/* 80297E80 00293AE0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297E84 00293AE4 41 80 00 10 */ blt lbl_80297E94
+/* 80297E88 00293AE8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297E8C 00293AEC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297E90 00293AF0 48 00 00 18 */ b lbl_80297EA8
+lbl_80297E94:
+/* 80297E94 00293AF4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297E98 00293AF8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297E9C 00293AFC 54 00 08 3C */ slwi r0, r0, 1
+/* 80297EA0 00293B00 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297EA4 00293B04 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297EA8:
+/* 80297EA8 00293B08 B0 1E 00 4C */ sth r0, 0x4c(r30)
+/* 80297EAC 00293B0C 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80297EB0 00293B10 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80297EB4 00293B14 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 80297EB8 00293B18 7C 04 02 14 */ add r0, r4, r0
+/* 80297EBC 00293B1C 7C 63 02 14 */ add r3, r3, r0
+/* 80297EC0 00293B20 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297EC4 00293B24 41 81 00 0C */ bgt lbl_80297ED0
+/* 80297EC8 00293B28 38 00 00 00 */ li r0, 0
+/* 80297ECC 00293B2C 48 00 00 2C */ b lbl_80297EF8
+lbl_80297ED0:
+/* 80297ED0 00293B30 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297ED4 00293B34 41 80 00 10 */ blt lbl_80297EE4
+/* 80297ED8 00293B38 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297EDC 00293B3C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297EE0 00293B40 48 00 00 18 */ b lbl_80297EF8
+lbl_80297EE4:
+/* 80297EE4 00293B44 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297EE8 00293B48 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297EEC 00293B4C 54 00 08 3C */ slwi r0, r0, 1
+/* 80297EF0 00293B50 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297EF4 00293B54 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297EF8:
+/* 80297EF8 00293B58 B0 1E 00 50 */ sth r0, 0x50(r30)
+/* 80297EFC 00293B5C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80297F00 00293B60 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80297F04 00293B64 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 80297F08 00293B68 7C 04 02 14 */ add r0, r4, r0
+/* 80297F0C 00293B6C 7C 60 1A 14 */ add r3, r0, r3
+/* 80297F10 00293B70 38 63 FF E2 */ addi r3, r3, -30
+/* 80297F14 00293B74 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297F18 00293B78 41 81 00 0C */ bgt lbl_80297F24
+/* 80297F1C 00293B7C 38 00 00 00 */ li r0, 0
+/* 80297F20 00293B80 48 00 00 2C */ b lbl_80297F4C
+lbl_80297F24:
+/* 80297F24 00293B84 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297F28 00293B88 41 80 00 10 */ blt lbl_80297F38
+/* 80297F2C 00293B8C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297F30 00293B90 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297F34 00293B94 48 00 00 18 */ b lbl_80297F4C
+lbl_80297F38:
+/* 80297F38 00293B98 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297F3C 00293B9C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297F40 00293BA0 54 00 08 3C */ slwi r0, r0, 1
+/* 80297F44 00293BA4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297F48 00293BA8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297F4C:
+/* 80297F4C 00293BAC B0 1E 00 54 */ sth r0, 0x54(r30)
+lbl_80297F50:
+/* 80297F50 00293BB0 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80297F54 00293BB4 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 80297F58 00293BB8 41 82 00 E4 */ beq lbl_8029803C
+/* 80297F5C 00293BBC 80 7E 00 10 */ lwz r3, 0x10(r30)
+/* 80297F60 00293BC0 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80297F64 00293BC4 7C 63 02 14 */ add r3, r3, r0
+/* 80297F68 00293BC8 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297F6C 00293BCC 41 81 00 0C */ bgt lbl_80297F78
+/* 80297F70 00293BD0 38 00 00 00 */ li r0, 0
+/* 80297F74 00293BD4 48 00 00 2C */ b lbl_80297FA0
+lbl_80297F78:
+/* 80297F78 00293BD8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297F7C 00293BDC 41 80 00 10 */ blt lbl_80297F8C
+/* 80297F80 00293BE0 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297F84 00293BE4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297F88 00293BE8 48 00 00 18 */ b lbl_80297FA0
+lbl_80297F8C:
+/* 80297F8C 00293BEC 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297F90 00293BF0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297F94 00293BF4 54 00 08 3C */ slwi r0, r0, 1
+/* 80297F98 00293BF8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297F9C 00293BFC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297FA0:
+/* 80297FA0 00293C00 B0 1E 00 58 */ sth r0, 0x58(r30)
+/* 80297FA4 00293C04 80 7E 00 10 */ lwz r3, 0x10(r30)
+/* 80297FA8 00293C08 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80297FAC 00293C0C 7C 63 02 14 */ add r3, r3, r0
+/* 80297FB0 00293C10 2C 03 FC 78 */ cmpwi r3, -904
+/* 80297FB4 00293C14 41 81 00 0C */ bgt lbl_80297FC0
+/* 80297FB8 00293C18 38 00 00 00 */ li r0, 0
+/* 80297FBC 00293C1C 48 00 00 2C */ b lbl_80297FE8
+lbl_80297FC0:
+/* 80297FC0 00293C20 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80297FC4 00293C24 41 80 00 10 */ blt lbl_80297FD4
+/* 80297FC8 00293C28 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80297FCC 00293C2C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80297FD0 00293C30 48 00 00 18 */ b lbl_80297FE8
+lbl_80297FD4:
+/* 80297FD4 00293C34 38 03 03 88 */ addi r0, r3, 0x388
+/* 80297FD8 00293C38 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80297FDC 00293C3C 54 00 08 3C */ slwi r0, r0, 1
+/* 80297FE0 00293C40 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80297FE4 00293C44 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80297FE8:
+/* 80297FE8 00293C48 B0 1E 00 5C */ sth r0, 0x5c(r30)
+/* 80297FEC 00293C4C 80 7E 00 10 */ lwz r3, 0x10(r30)
+/* 80297FF0 00293C50 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 80297FF4 00293C54 7C 63 02 14 */ add r3, r3, r0
+/* 80297FF8 00293C58 38 63 FF E2 */ addi r3, r3, -30
+/* 80297FFC 00293C5C 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298000 00293C60 41 81 00 0C */ bgt lbl_8029800C
+/* 80298004 00293C64 38 00 00 00 */ li r0, 0
+/* 80298008 00293C68 48 00 00 2C */ b lbl_80298034
+lbl_8029800C:
+/* 8029800C 00293C6C 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298010 00293C70 41 80 00 10 */ blt lbl_80298020
+/* 80298014 00293C74 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298018 00293C78 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 8029801C 00293C7C 48 00 00 18 */ b lbl_80298034
+lbl_80298020:
+/* 80298020 00293C80 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298024 00293C84 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298028 00293C88 54 00 08 3C */ slwi r0, r0, 1
+/* 8029802C 00293C8C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298030 00293C90 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298034:
+/* 80298034 00293C94 B0 1E 00 60 */ sth r0, 0x60(r30)
+/* 80298038 00293C98 48 00 00 F8 */ b lbl_80298130
+lbl_8029803C:
+/* 8029803C 00293C9C 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298040 00293CA0 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298044 00293CA4 80 7E 00 10 */ lwz r3, 0x10(r30)
+/* 80298048 00293CA8 7C 04 02 14 */ add r0, r4, r0
+/* 8029804C 00293CAC 7C 63 02 14 */ add r3, r3, r0
+/* 80298050 00293CB0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298054 00293CB4 41 81 00 0C */ bgt lbl_80298060
+/* 80298058 00293CB8 38 00 00 00 */ li r0, 0
+/* 8029805C 00293CBC 48 00 00 2C */ b lbl_80298088
+lbl_80298060:
+/* 80298060 00293CC0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298064 00293CC4 41 80 00 10 */ blt lbl_80298074
+/* 80298068 00293CC8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029806C 00293CCC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298070 00293CD0 48 00 00 18 */ b lbl_80298088
+lbl_80298074:
+/* 80298074 00293CD4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298078 00293CD8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029807C 00293CDC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298080 00293CE0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298084 00293CE4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298088:
+/* 80298088 00293CE8 B0 1E 00 58 */ sth r0, 0x58(r30)
+/* 8029808C 00293CEC 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298090 00293CF0 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298094 00293CF4 80 7E 00 10 */ lwz r3, 0x10(r30)
+/* 80298098 00293CF8 7C 04 02 14 */ add r0, r4, r0
+/* 8029809C 00293CFC 7C 63 02 14 */ add r3, r3, r0
+/* 802980A0 00293D00 2C 03 FC 78 */ cmpwi r3, -904
+/* 802980A4 00293D04 41 81 00 0C */ bgt lbl_802980B0
+/* 802980A8 00293D08 38 00 00 00 */ li r0, 0
+/* 802980AC 00293D0C 48 00 00 2C */ b lbl_802980D8
+lbl_802980B0:
+/* 802980B0 00293D10 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802980B4 00293D14 41 80 00 10 */ blt lbl_802980C4
+/* 802980B8 00293D18 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802980BC 00293D1C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802980C0 00293D20 48 00 00 18 */ b lbl_802980D8
+lbl_802980C4:
+/* 802980C4 00293D24 38 03 03 88 */ addi r0, r3, 0x388
+/* 802980C8 00293D28 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802980CC 00293D2C 54 00 08 3C */ slwi r0, r0, 1
+/* 802980D0 00293D30 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802980D4 00293D34 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802980D8:
+/* 802980D8 00293D38 B0 1E 00 5C */ sth r0, 0x5c(r30)
+/* 802980DC 00293D3C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 802980E0 00293D40 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 802980E4 00293D44 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 802980E8 00293D48 7C 04 02 14 */ add r0, r4, r0
+/* 802980EC 00293D4C 7C 60 1A 14 */ add r3, r0, r3
+/* 802980F0 00293D50 38 63 FF E2 */ addi r3, r3, -30
+/* 802980F4 00293D54 2C 03 FC 78 */ cmpwi r3, -904
+/* 802980F8 00293D58 41 81 00 0C */ bgt lbl_80298104
+/* 802980FC 00293D5C 38 00 00 00 */ li r0, 0
+/* 80298100 00293D60 48 00 00 2C */ b lbl_8029812C
+lbl_80298104:
+/* 80298104 00293D64 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298108 00293D68 41 80 00 10 */ blt lbl_80298118
+/* 8029810C 00293D6C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298110 00293D70 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298114 00293D74 48 00 00 18 */ b lbl_8029812C
+lbl_80298118:
+/* 80298118 00293D78 38 03 03 88 */ addi r0, r3, 0x388
+/* 8029811C 00293D7C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298120 00293D80 54 00 08 3C */ slwi r0, r0, 1
+/* 80298124 00293D84 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298128 00293D88 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_8029812C:
+/* 8029812C 00293D8C B0 1E 00 60 */ sth r0, 0x60(r30)
+lbl_80298130:
+/* 80298130 00293D90 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80298134 00293D94 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 80298138 00293D98 41 82 00 E4 */ beq lbl_8029821C
+/* 8029813C 00293D9C 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 80298140 00293DA0 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 80298144 00293DA4 7C 63 02 14 */ add r3, r3, r0
+/* 80298148 00293DA8 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029814C 00293DAC 41 81 00 0C */ bgt lbl_80298158
+/* 80298150 00293DB0 38 00 00 00 */ li r0, 0
+/* 80298154 00293DB4 48 00 00 2C */ b lbl_80298180
+lbl_80298158:
+/* 80298158 00293DB8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029815C 00293DBC 41 80 00 10 */ blt lbl_8029816C
+/* 80298160 00293DC0 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298164 00293DC4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298168 00293DC8 48 00 00 18 */ b lbl_80298180
+lbl_8029816C:
+/* 8029816C 00293DCC 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298170 00293DD0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298174 00293DD4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298178 00293DD8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 8029817C 00293DDC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298180:
+/* 80298180 00293DE0 B0 1E 00 64 */ sth r0, 0x64(r30)
+/* 80298184 00293DE4 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 80298188 00293DE8 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 8029818C 00293DEC 7C 63 02 14 */ add r3, r3, r0
+/* 80298190 00293DF0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298194 00293DF4 41 81 00 0C */ bgt lbl_802981A0
+/* 80298198 00293DF8 38 00 00 00 */ li r0, 0
+/* 8029819C 00293DFC 48 00 00 2C */ b lbl_802981C8
+lbl_802981A0:
+/* 802981A0 00293E00 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802981A4 00293E04 41 80 00 10 */ blt lbl_802981B4
+/* 802981A8 00293E08 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802981AC 00293E0C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802981B0 00293E10 48 00 00 18 */ b lbl_802981C8
+lbl_802981B4:
+/* 802981B4 00293E14 38 03 03 88 */ addi r0, r3, 0x388
+/* 802981B8 00293E18 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802981BC 00293E1C 54 00 08 3C */ slwi r0, r0, 1
+/* 802981C0 00293E20 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802981C4 00293E24 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802981C8:
+/* 802981C8 00293E28 B0 1E 00 68 */ sth r0, 0x68(r30)
+/* 802981CC 00293E2C 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 802981D0 00293E30 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 802981D4 00293E34 7C 63 02 14 */ add r3, r3, r0
+/* 802981D8 00293E38 38 63 FF E2 */ addi r3, r3, -30
+/* 802981DC 00293E3C 2C 03 FC 78 */ cmpwi r3, -904
+/* 802981E0 00293E40 41 81 00 0C */ bgt lbl_802981EC
+/* 802981E4 00293E44 38 00 00 00 */ li r0, 0
+/* 802981E8 00293E48 48 00 00 2C */ b lbl_80298214
+lbl_802981EC:
+/* 802981EC 00293E4C 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802981F0 00293E50 41 80 00 10 */ blt lbl_80298200
+/* 802981F4 00293E54 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802981F8 00293E58 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802981FC 00293E5C 48 00 00 18 */ b lbl_80298214
+lbl_80298200:
+/* 80298200 00293E60 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298204 00293E64 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298208 00293E68 54 00 08 3C */ slwi r0, r0, 1
+/* 8029820C 00293E6C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298210 00293E70 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298214:
+/* 80298214 00293E74 B0 1E 00 6C */ sth r0, 0x6c(r30)
+/* 80298218 00293E78 48 00 0E 90 */ b lbl_802990A8
+lbl_8029821C:
+/* 8029821C 00293E7C 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298220 00293E80 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298224 00293E84 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 80298228 00293E88 7C 04 02 14 */ add r0, r4, r0
+/* 8029822C 00293E8C 7C 63 02 14 */ add r3, r3, r0
+/* 80298230 00293E90 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298234 00293E94 41 81 00 0C */ bgt lbl_80298240
+/* 80298238 00293E98 38 00 00 00 */ li r0, 0
+/* 8029823C 00293E9C 48 00 00 2C */ b lbl_80298268
+lbl_80298240:
+/* 80298240 00293EA0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298244 00293EA4 41 80 00 10 */ blt lbl_80298254
+/* 80298248 00293EA8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029824C 00293EAC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298250 00293EB0 48 00 00 18 */ b lbl_80298268
+lbl_80298254:
+/* 80298254 00293EB4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298258 00293EB8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029825C 00293EBC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298260 00293EC0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298264 00293EC4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298268:
+/* 80298268 00293EC8 B0 1E 00 64 */ sth r0, 0x64(r30)
+/* 8029826C 00293ECC 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298270 00293ED0 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298274 00293ED4 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 80298278 00293ED8 7C 04 02 14 */ add r0, r4, r0
+/* 8029827C 00293EDC 7C 63 02 14 */ add r3, r3, r0
+/* 80298280 00293EE0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298284 00293EE4 41 81 00 0C */ bgt lbl_80298290
+/* 80298288 00293EE8 38 00 00 00 */ li r0, 0
+/* 8029828C 00293EEC 48 00 00 2C */ b lbl_802982B8
+lbl_80298290:
+/* 80298290 00293EF0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298294 00293EF4 41 80 00 10 */ blt lbl_802982A4
+/* 80298298 00293EF8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029829C 00293EFC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802982A0 00293F00 48 00 00 18 */ b lbl_802982B8
+lbl_802982A4:
+/* 802982A4 00293F04 38 03 03 88 */ addi r0, r3, 0x388
+/* 802982A8 00293F08 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802982AC 00293F0C 54 00 08 3C */ slwi r0, r0, 1
+/* 802982B0 00293F10 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802982B4 00293F14 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802982B8:
+/* 802982B8 00293F18 B0 1E 00 68 */ sth r0, 0x68(r30)
+/* 802982BC 00293F1C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 802982C0 00293F20 80 1E 00 14 */ lwz r0, 0x14(r30)
+/* 802982C4 00293F24 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 802982C8 00293F28 7C 04 02 14 */ add r0, r4, r0
+/* 802982CC 00293F2C 7C 60 1A 14 */ add r3, r0, r3
+/* 802982D0 00293F30 38 63 FF E2 */ addi r3, r3, -30
+/* 802982D4 00293F34 2C 03 FC 78 */ cmpwi r3, -904
+/* 802982D8 00293F38 41 81 00 0C */ bgt lbl_802982E4
+/* 802982DC 00293F3C 38 00 00 00 */ li r0, 0
+/* 802982E0 00293F40 48 00 00 2C */ b lbl_8029830C
+lbl_802982E4:
+/* 802982E4 00293F44 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802982E8 00293F48 41 80 00 10 */ blt lbl_802982F8
+/* 802982EC 00293F4C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802982F0 00293F50 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802982F4 00293F54 48 00 00 18 */ b lbl_8029830C
+lbl_802982F8:
+/* 802982F8 00293F58 38 03 03 88 */ addi r0, r3, 0x388
+/* 802982FC 00293F5C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298300 00293F60 54 00 08 3C */ slwi r0, r0, 1
+/* 80298304 00293F64 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298308 00293F68 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_8029830C:
+/* 8029830C 00293F6C B0 1E 00 6C */ sth r0, 0x6c(r30)
+/* 80298310 00293F70 48 00 0D 98 */ b lbl_802990A8
+lbl_80298314:
+/* 80298314 00293F74 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298318 00293F78 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 8029831C 00293F7C 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298320 00293F80 7C 04 02 14 */ add r0, r4, r0
+/* 80298324 00293F84 7C 63 02 14 */ add r3, r3, r0
+/* 80298328 00293F88 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029832C 00293F8C 41 81 00 0C */ bgt lbl_80298338
+/* 80298330 00293F90 38 00 00 00 */ li r0, 0
+/* 80298334 00293F94 48 00 00 2C */ b lbl_80298360
+lbl_80298338:
+/* 80298338 00293F98 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029833C 00293F9C 41 80 00 10 */ blt lbl_8029834C
+/* 80298340 00293FA0 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298344 00293FA4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298348 00293FA8 48 00 00 18 */ b lbl_80298360
+lbl_8029834C:
+/* 8029834C 00293FAC 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298350 00293FB0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298354 00293FB4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298358 00293FB8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 8029835C 00293FBC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298360:
+/* 80298360 00293FC0 B0 1E 00 40 */ sth r0, 0x40(r30)
+/* 80298364 00293FC4 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298368 00293FC8 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 8029836C 00293FCC 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298370 00293FD0 7C 04 02 14 */ add r0, r4, r0
+/* 80298374 00293FD4 7C 63 02 14 */ add r3, r3, r0
+/* 80298378 00293FD8 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029837C 00293FDC 41 81 00 0C */ bgt lbl_80298388
+/* 80298380 00293FE0 38 00 00 00 */ li r0, 0
+/* 80298384 00293FE4 48 00 00 2C */ b lbl_802983B0
+lbl_80298388:
+/* 80298388 00293FE8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029838C 00293FEC 41 80 00 10 */ blt lbl_8029839C
+/* 80298390 00293FF0 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298394 00293FF4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298398 00293FF8 48 00 00 18 */ b lbl_802983B0
+lbl_8029839C:
+/* 8029839C 00293FFC 38 03 03 88 */ addi r0, r3, 0x388
+/* 802983A0 00294000 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802983A4 00294004 54 00 08 3C */ slwi r0, r0, 1
+/* 802983A8 00294008 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802983AC 0029400C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802983B0:
+/* 802983B0 00294010 B0 1E 00 44 */ sth r0, 0x44(r30)
+/* 802983B4 00294014 80 7E 00 20 */ lwz r3, 0x20(r30)
+/* 802983B8 00294018 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 802983BC 0029401C 7C 63 02 14 */ add r3, r3, r0
+/* 802983C0 00294020 38 63 FF E2 */ addi r3, r3, -30
+/* 802983C4 00294024 2C 03 FC 78 */ cmpwi r3, -904
+/* 802983C8 00294028 41 81 00 0C */ bgt lbl_802983D4
+/* 802983CC 0029402C 38 00 00 00 */ li r0, 0
+/* 802983D0 00294030 48 00 00 2C */ b lbl_802983FC
+lbl_802983D4:
+/* 802983D4 00294034 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802983D8 00294038 41 80 00 10 */ blt lbl_802983E8
+/* 802983DC 0029403C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802983E0 00294040 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802983E4 00294044 48 00 00 18 */ b lbl_802983FC
+lbl_802983E8:
+/* 802983E8 00294048 38 03 03 88 */ addi r0, r3, 0x388
+/* 802983EC 0029404C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802983F0 00294050 54 00 08 3C */ slwi r0, r0, 1
+/* 802983F4 00294054 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802983F8 00294058 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802983FC:
+/* 802983FC 0029405C B0 1E 00 48 */ sth r0, 0x48(r30)
+/* 80298400 00294060 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80298404 00294064 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80298408 00294068 41 82 00 F4 */ beq lbl_802984FC
+/* 8029840C 0029406C 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298410 00294070 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298414 00294074 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298418 00294078 7C 04 02 14 */ add r0, r4, r0
+/* 8029841C 0029407C 7C 63 02 14 */ add r3, r3, r0
+/* 80298420 00294080 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298424 00294084 41 81 00 0C */ bgt lbl_80298430
+/* 80298428 00294088 38 00 00 00 */ li r0, 0
+/* 8029842C 0029408C 48 00 00 2C */ b lbl_80298458
+lbl_80298430:
+/* 80298430 00294090 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298434 00294094 41 80 00 10 */ blt lbl_80298444
+/* 80298438 00294098 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029843C 0029409C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298440 002940A0 48 00 00 18 */ b lbl_80298458
+lbl_80298444:
+/* 80298444 002940A4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298448 002940A8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029844C 002940AC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298450 002940B0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298454 002940B4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298458:
+/* 80298458 002940B8 B0 1E 00 4C */ sth r0, 0x4c(r30)
+/* 8029845C 002940BC 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298460 002940C0 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298464 002940C4 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298468 002940C8 7C 04 02 14 */ add r0, r4, r0
+/* 8029846C 002940CC 7C 63 02 14 */ add r3, r3, r0
+/* 80298470 002940D0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298474 002940D4 41 81 00 0C */ bgt lbl_80298480
+/* 80298478 002940D8 38 00 00 00 */ li r0, 0
+/* 8029847C 002940DC 48 00 00 2C */ b lbl_802984A8
+lbl_80298480:
+/* 80298480 002940E0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298484 002940E4 41 80 00 10 */ blt lbl_80298494
+/* 80298488 002940E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029848C 002940EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298490 002940F0 48 00 00 18 */ b lbl_802984A8
+lbl_80298494:
+/* 80298494 002940F4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298498 002940F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029849C 002940FC 54 00 08 3C */ slwi r0, r0, 1
+/* 802984A0 00294100 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802984A4 00294104 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802984A8:
+/* 802984A8 00294108 B0 1E 00 50 */ sth r0, 0x50(r30)
+/* 802984AC 0029410C 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 802984B0 00294110 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 802984B4 00294114 7C 63 02 14 */ add r3, r3, r0
+/* 802984B8 00294118 38 63 FF E2 */ addi r3, r3, -30
+/* 802984BC 0029411C 2C 03 FC 78 */ cmpwi r3, -904
+/* 802984C0 00294120 41 81 00 0C */ bgt lbl_802984CC
+/* 802984C4 00294124 38 00 00 00 */ li r0, 0
+/* 802984C8 00294128 48 00 00 2C */ b lbl_802984F4
+lbl_802984CC:
+/* 802984CC 0029412C 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802984D0 00294130 41 80 00 10 */ blt lbl_802984E0
+/* 802984D4 00294134 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802984D8 00294138 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802984DC 0029413C 48 00 00 18 */ b lbl_802984F4
+lbl_802984E0:
+/* 802984E0 00294140 38 03 03 88 */ addi r0, r3, 0x388
+/* 802984E4 00294144 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802984E8 00294148 54 00 08 3C */ slwi r0, r0, 1
+/* 802984EC 0029414C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802984F0 00294150 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802984F4:
+/* 802984F4 00294154 B0 1E 00 54 */ sth r0, 0x54(r30)
+/* 802984F8 00294158 48 00 01 08 */ b lbl_80298600
+lbl_802984FC:
+/* 802984FC 0029415C 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298500 00294160 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298504 00294164 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298508 00294168 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 8029850C 0029416C 7C 65 1A 14 */ add r3, r5, r3
+/* 80298510 00294170 7C 04 02 14 */ add r0, r4, r0
+/* 80298514 00294174 7C 63 02 14 */ add r3, r3, r0
+/* 80298518 00294178 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029851C 0029417C 41 81 00 0C */ bgt lbl_80298528
+/* 80298520 00294180 38 00 00 00 */ li r0, 0
+/* 80298524 00294184 48 00 00 2C */ b lbl_80298550
+lbl_80298528:
+/* 80298528 00294188 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029852C 0029418C 41 80 00 10 */ blt lbl_8029853C
+/* 80298530 00294190 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298534 00294194 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298538 00294198 48 00 00 18 */ b lbl_80298550
+lbl_8029853C:
+/* 8029853C 0029419C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298540 002941A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298544 002941A4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298548 002941A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 8029854C 002941AC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298550:
+/* 80298550 002941B0 B0 1E 00 4C */ sth r0, 0x4c(r30)
+/* 80298554 002941B4 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298558 002941B8 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 8029855C 002941BC 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298560 002941C0 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298564 002941C4 7C 65 1A 14 */ add r3, r5, r3
+/* 80298568 002941C8 7C 04 02 14 */ add r0, r4, r0
+/* 8029856C 002941CC 7C 63 02 14 */ add r3, r3, r0
+/* 80298570 002941D0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298574 002941D4 41 81 00 0C */ bgt lbl_80298580
+/* 80298578 002941D8 38 00 00 00 */ li r0, 0
+/* 8029857C 002941DC 48 00 00 2C */ b lbl_802985A8
+lbl_80298580:
+/* 80298580 002941E0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298584 002941E4 41 80 00 10 */ blt lbl_80298594
+/* 80298588 002941E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029858C 002941EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298590 002941F0 48 00 00 18 */ b lbl_802985A8
+lbl_80298594:
+/* 80298594 002941F4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298598 002941F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029859C 002941FC 54 00 08 3C */ slwi r0, r0, 1
+/* 802985A0 00294200 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802985A4 00294204 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802985A8:
+/* 802985A8 00294208 B0 1E 00 50 */ sth r0, 0x50(r30)
+/* 802985AC 0029420C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 802985B0 00294210 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 802985B4 00294214 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 802985B8 00294218 7C 04 02 14 */ add r0, r4, r0
+/* 802985BC 0029421C 7C 60 1A 14 */ add r3, r0, r3
+/* 802985C0 00294220 38 63 FF E2 */ addi r3, r3, -30
+/* 802985C4 00294224 2C 03 FC 78 */ cmpwi r3, -904
+/* 802985C8 00294228 41 81 00 0C */ bgt lbl_802985D4
+/* 802985CC 0029422C 38 00 00 00 */ li r0, 0
+/* 802985D0 00294230 48 00 00 2C */ b lbl_802985FC
+lbl_802985D4:
+/* 802985D4 00294234 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802985D8 00294238 41 80 00 10 */ blt lbl_802985E8
+/* 802985DC 0029423C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802985E0 00294240 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802985E4 00294244 48 00 00 18 */ b lbl_802985FC
+lbl_802985E8:
+/* 802985E8 00294248 38 03 03 88 */ addi r0, r3, 0x388
+/* 802985EC 0029424C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802985F0 00294250 54 00 08 3C */ slwi r0, r0, 1
+/* 802985F4 00294254 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802985F8 00294258 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802985FC:
+/* 802985FC 0029425C B0 1E 00 54 */ sth r0, 0x54(r30)
+lbl_80298600:
+/* 80298600 00294260 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80298604 00294264 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 80298608 00294268 41 82 00 F4 */ beq lbl_802986FC
+/* 8029860C 0029426C 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298610 00294270 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298614 00294274 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298618 00294278 7C 04 02 14 */ add r0, r4, r0
+/* 8029861C 0029427C 7C 63 02 14 */ add r3, r3, r0
+/* 80298620 00294280 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298624 00294284 41 81 00 0C */ bgt lbl_80298630
+/* 80298628 00294288 38 00 00 00 */ li r0, 0
+/* 8029862C 0029428C 48 00 00 2C */ b lbl_80298658
+lbl_80298630:
+/* 80298630 00294290 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298634 00294294 41 80 00 10 */ blt lbl_80298644
+/* 80298638 00294298 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029863C 0029429C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298640 002942A0 48 00 00 18 */ b lbl_80298658
+lbl_80298644:
+/* 80298644 002942A4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298648 002942A8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029864C 002942AC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298650 002942B0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298654 002942B4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298658:
+/* 80298658 002942B8 B0 1E 00 58 */ sth r0, 0x58(r30)
+/* 8029865C 002942BC 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298660 002942C0 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298664 002942C4 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298668 002942C8 7C 04 02 14 */ add r0, r4, r0
+/* 8029866C 002942CC 7C 63 02 14 */ add r3, r3, r0
+/* 80298670 002942D0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298674 002942D4 41 81 00 0C */ bgt lbl_80298680
+/* 80298678 002942D8 38 00 00 00 */ li r0, 0
+/* 8029867C 002942DC 48 00 00 2C */ b lbl_802986A8
+lbl_80298680:
+/* 80298680 002942E0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298684 002942E4 41 80 00 10 */ blt lbl_80298694
+/* 80298688 002942E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029868C 002942EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298690 002942F0 48 00 00 18 */ b lbl_802986A8
+lbl_80298694:
+/* 80298694 002942F4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298698 002942F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029869C 002942FC 54 00 08 3C */ slwi r0, r0, 1
+/* 802986A0 00294300 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802986A4 00294304 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802986A8:
+/* 802986A8 00294308 B0 1E 00 5C */ sth r0, 0x5c(r30)
+/* 802986AC 0029430C 80 7E 00 10 */ lwz r3, 0x10(r30)
+/* 802986B0 00294310 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 802986B4 00294314 7C 63 02 14 */ add r3, r3, r0
+/* 802986B8 00294318 38 63 FF E2 */ addi r3, r3, -30
+/* 802986BC 0029431C 2C 03 FC 78 */ cmpwi r3, -904
+/* 802986C0 00294320 41 81 00 0C */ bgt lbl_802986CC
+/* 802986C4 00294324 38 00 00 00 */ li r0, 0
+/* 802986C8 00294328 48 00 00 2C */ b lbl_802986F4
+lbl_802986CC:
+/* 802986CC 0029432C 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802986D0 00294330 41 80 00 10 */ blt lbl_802986E0
+/* 802986D4 00294334 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802986D8 00294338 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802986DC 0029433C 48 00 00 18 */ b lbl_802986F4
+lbl_802986E0:
+/* 802986E0 00294340 38 03 03 88 */ addi r0, r3, 0x388
+/* 802986E4 00294344 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802986E8 00294348 54 00 08 3C */ slwi r0, r0, 1
+/* 802986EC 0029434C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802986F0 00294350 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802986F4:
+/* 802986F4 00294354 B0 1E 00 60 */ sth r0, 0x60(r30)
+/* 802986F8 00294358 48 00 01 08 */ b lbl_80298800
+lbl_802986FC:
+/* 802986FC 0029435C 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298700 00294360 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298704 00294364 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298708 00294368 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 8029870C 0029436C 7C 65 1A 14 */ add r3, r5, r3
+/* 80298710 00294370 7C 04 02 14 */ add r0, r4, r0
+/* 80298714 00294374 7C 63 02 14 */ add r3, r3, r0
+/* 80298718 00294378 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029871C 0029437C 41 81 00 0C */ bgt lbl_80298728
+/* 80298720 00294380 38 00 00 00 */ li r0, 0
+/* 80298724 00294384 48 00 00 2C */ b lbl_80298750
+lbl_80298728:
+/* 80298728 00294388 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029872C 0029438C 41 80 00 10 */ blt lbl_8029873C
+/* 80298730 00294390 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298734 00294394 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298738 00294398 48 00 00 18 */ b lbl_80298750
+lbl_8029873C:
+/* 8029873C 0029439C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298740 002943A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298744 002943A4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298748 002943A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 8029874C 002943AC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298750:
+/* 80298750 002943B0 B0 1E 00 58 */ sth r0, 0x58(r30)
+/* 80298754 002943B4 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298758 002943B8 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 8029875C 002943BC 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298760 002943C0 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298764 002943C4 7C 65 1A 14 */ add r3, r5, r3
+/* 80298768 002943C8 7C 04 02 14 */ add r0, r4, r0
+/* 8029876C 002943CC 7C 63 02 14 */ add r3, r3, r0
+/* 80298770 002943D0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298774 002943D4 41 81 00 0C */ bgt lbl_80298780
+/* 80298778 002943D8 38 00 00 00 */ li r0, 0
+/* 8029877C 002943DC 48 00 00 2C */ b lbl_802987A8
+lbl_80298780:
+/* 80298780 002943E0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298784 002943E4 41 80 00 10 */ blt lbl_80298794
+/* 80298788 002943E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029878C 002943EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298790 002943F0 48 00 00 18 */ b lbl_802987A8
+lbl_80298794:
+/* 80298794 002943F4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298798 002943F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029879C 002943FC 54 00 08 3C */ slwi r0, r0, 1
+/* 802987A0 00294400 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802987A4 00294404 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802987A8:
+/* 802987A8 00294408 B0 1E 00 5C */ sth r0, 0x5c(r30)
+/* 802987AC 0029440C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 802987B0 00294410 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 802987B4 00294414 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 802987B8 00294418 7C 04 02 14 */ add r0, r4, r0
+/* 802987BC 0029441C 7C 60 1A 14 */ add r3, r0, r3
+/* 802987C0 00294420 38 63 FF E2 */ addi r3, r3, -30
+/* 802987C4 00294424 2C 03 FC 78 */ cmpwi r3, -904
+/* 802987C8 00294428 41 81 00 0C */ bgt lbl_802987D4
+/* 802987CC 0029442C 38 00 00 00 */ li r0, 0
+/* 802987D0 00294430 48 00 00 2C */ b lbl_802987FC
+lbl_802987D4:
+/* 802987D4 00294434 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802987D8 00294438 41 80 00 10 */ blt lbl_802987E8
+/* 802987DC 0029443C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802987E0 00294440 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802987E4 00294444 48 00 00 18 */ b lbl_802987FC
+lbl_802987E8:
+/* 802987E8 00294448 38 03 03 88 */ addi r0, r3, 0x388
+/* 802987EC 0029444C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802987F0 00294450 54 00 08 3C */ slwi r0, r0, 1
+/* 802987F4 00294454 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802987F8 00294458 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802987FC:
+/* 802987FC 0029445C B0 1E 00 60 */ sth r0, 0x60(r30)
+lbl_80298800:
+/* 80298800 00294460 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80298804 00294464 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 80298808 00294468 41 82 00 F4 */ beq lbl_802988FC
+/* 8029880C 0029446C 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298810 00294470 80 1E 00 14 */ lwz r0, 0x14(r30)
+/* 80298814 00294474 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298818 00294478 7C 04 02 14 */ add r0, r4, r0
+/* 8029881C 0029447C 7C 63 02 14 */ add r3, r3, r0
+/* 80298820 00294480 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298824 00294484 41 81 00 0C */ bgt lbl_80298830
+/* 80298828 00294488 38 00 00 00 */ li r0, 0
+/* 8029882C 0029448C 48 00 00 2C */ b lbl_80298858
+lbl_80298830:
+/* 80298830 00294490 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298834 00294494 41 80 00 10 */ blt lbl_80298844
+/* 80298838 00294498 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029883C 0029449C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298840 002944A0 48 00 00 18 */ b lbl_80298858
+lbl_80298844:
+/* 80298844 002944A4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298848 002944A8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029884C 002944AC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298850 002944B0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298854 002944B4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298858:
+/* 80298858 002944B8 B0 1E 00 64 */ sth r0, 0x64(r30)
+/* 8029885C 002944BC 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298860 002944C0 80 1E 00 14 */ lwz r0, 0x14(r30)
+/* 80298864 002944C4 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298868 002944C8 7C 04 02 14 */ add r0, r4, r0
+/* 8029886C 002944CC 7C 63 02 14 */ add r3, r3, r0
+/* 80298870 002944D0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298874 002944D4 41 81 00 0C */ bgt lbl_80298880
+/* 80298878 002944D8 38 00 00 00 */ li r0, 0
+/* 8029887C 002944DC 48 00 00 2C */ b lbl_802988A8
+lbl_80298880:
+/* 80298880 002944E0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298884 002944E4 41 80 00 10 */ blt lbl_80298894
+/* 80298888 002944E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029888C 002944EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298890 002944F0 48 00 00 18 */ b lbl_802988A8
+lbl_80298894:
+/* 80298894 002944F4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298898 002944F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029889C 002944FC 54 00 08 3C */ slwi r0, r0, 1
+/* 802988A0 00294500 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802988A4 00294504 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802988A8:
+/* 802988A8 00294508 B0 1E 00 68 */ sth r0, 0x68(r30)
+/* 802988AC 0029450C 80 7E 00 14 */ lwz r3, 0x14(r30)
+/* 802988B0 00294510 80 1E 00 30 */ lwz r0, 0x30(r30)
+/* 802988B4 00294514 7C 63 02 14 */ add r3, r3, r0
+/* 802988B8 00294518 38 63 FF E2 */ addi r3, r3, -30
+/* 802988BC 0029451C 2C 03 FC 78 */ cmpwi r3, -904
+/* 802988C0 00294520 41 81 00 0C */ bgt lbl_802988CC
+/* 802988C4 00294524 38 00 00 00 */ li r0, 0
+/* 802988C8 00294528 48 00 00 2C */ b lbl_802988F4
+lbl_802988CC:
+/* 802988CC 0029452C 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802988D0 00294530 41 80 00 10 */ blt lbl_802988E0
+/* 802988D4 00294534 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802988D8 00294538 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802988DC 0029453C 48 00 00 18 */ b lbl_802988F4
+lbl_802988E0:
+/* 802988E0 00294540 38 03 03 88 */ addi r0, r3, 0x388
+/* 802988E4 00294544 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802988E8 00294548 54 00 08 3C */ slwi r0, r0, 1
+/* 802988EC 0029454C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802988F0 00294550 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802988F4:
+/* 802988F4 00294554 B0 1E 00 6C */ sth r0, 0x6c(r30)
+/* 802988F8 00294558 48 00 07 B0 */ b lbl_802990A8
+lbl_802988FC:
+/* 802988FC 0029455C 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298900 00294560 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298904 00294564 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298908 00294568 80 1E 00 14 */ lwz r0, 0x14(r30)
+/* 8029890C 0029456C 7C 65 1A 14 */ add r3, r5, r3
+/* 80298910 00294570 7C 04 02 14 */ add r0, r4, r0
+/* 80298914 00294574 7C 63 02 14 */ add r3, r3, r0
+/* 80298918 00294578 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029891C 0029457C 41 81 00 0C */ bgt lbl_80298928
+/* 80298920 00294580 38 00 00 00 */ li r0, 0
+/* 80298924 00294584 48 00 00 2C */ b lbl_80298950
+lbl_80298928:
+/* 80298928 00294588 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029892C 0029458C 41 80 00 10 */ blt lbl_8029893C
+/* 80298930 00294590 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298934 00294594 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298938 00294598 48 00 00 18 */ b lbl_80298950
+lbl_8029893C:
+/* 8029893C 0029459C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298940 002945A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298944 002945A4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298948 002945A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 8029894C 002945AC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298950:
+/* 80298950 002945B0 B0 1E 00 64 */ sth r0, 0x64(r30)
+/* 80298954 002945B4 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298958 002945B8 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 8029895C 002945BC 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298960 002945C0 80 1E 00 14 */ lwz r0, 0x14(r30)
+/* 80298964 002945C4 7C 65 1A 14 */ add r3, r5, r3
+/* 80298968 002945C8 7C 04 02 14 */ add r0, r4, r0
+/* 8029896C 002945CC 7C 63 02 14 */ add r3, r3, r0
+/* 80298970 002945D0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298974 002945D4 41 81 00 0C */ bgt lbl_80298980
+/* 80298978 002945D8 38 00 00 00 */ li r0, 0
+/* 8029897C 002945DC 48 00 00 2C */ b lbl_802989A8
+lbl_80298980:
+/* 80298980 002945E0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298984 002945E4 41 80 00 10 */ blt lbl_80298994
+/* 80298988 002945E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029898C 002945EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298990 002945F0 48 00 00 18 */ b lbl_802989A8
+lbl_80298994:
+/* 80298994 002945F4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298998 002945F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029899C 002945FC 54 00 08 3C */ slwi r0, r0, 1
+/* 802989A0 00294600 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802989A4 00294604 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802989A8:
+/* 802989A8 00294608 B0 1E 00 68 */ sth r0, 0x68(r30)
+/* 802989AC 0029460C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 802989B0 00294610 80 1E 00 14 */ lwz r0, 0x14(r30)
+/* 802989B4 00294614 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 802989B8 00294618 7C 04 02 14 */ add r0, r4, r0
+/* 802989BC 0029461C 7C 60 1A 14 */ add r3, r0, r3
+/* 802989C0 00294620 38 63 FF E2 */ addi r3, r3, -30
+/* 802989C4 00294624 2C 03 FC 78 */ cmpwi r3, -904
+/* 802989C8 00294628 41 81 00 0C */ bgt lbl_802989D4
+/* 802989CC 0029462C 38 00 00 00 */ li r0, 0
+/* 802989D0 00294630 48 00 00 2C */ b lbl_802989FC
+lbl_802989D4:
+/* 802989D4 00294634 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 802989D8 00294638 41 80 00 10 */ blt lbl_802989E8
+/* 802989DC 0029463C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 802989E0 00294640 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 802989E4 00294644 48 00 00 18 */ b lbl_802989FC
+lbl_802989E8:
+/* 802989E8 00294648 38 03 03 88 */ addi r0, r3, 0x388
+/* 802989EC 0029464C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802989F0 00294650 54 00 08 3C */ slwi r0, r0, 1
+/* 802989F4 00294654 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 802989F8 00294658 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802989FC:
+/* 802989FC 0029465C B0 1E 00 6C */ sth r0, 0x6c(r30)
+/* 80298A00 00294660 48 00 06 A8 */ b lbl_802990A8
+lbl_80298A04:
+/* 80298A04 00294664 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298A08 00294668 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298A0C 0029466C 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298A10 00294670 7C 04 02 14 */ add r0, r4, r0
+/* 80298A14 00294674 7C 63 02 14 */ add r3, r3, r0
+/* 80298A18 00294678 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298A1C 0029467C 41 81 00 0C */ bgt lbl_80298A28
+/* 80298A20 00294680 38 00 00 00 */ li r0, 0
+/* 80298A24 00294684 48 00 00 2C */ b lbl_80298A50
+lbl_80298A28:
+/* 80298A28 00294688 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298A2C 0029468C 41 80 00 10 */ blt lbl_80298A3C
+/* 80298A30 00294690 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298A34 00294694 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298A38 00294698 48 00 00 18 */ b lbl_80298A50
+lbl_80298A3C:
+/* 80298A3C 0029469C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298A40 002946A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298A44 002946A4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298A48 002946A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298A4C 002946AC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298A50:
+/* 80298A50 002946B0 B0 1E 00 40 */ sth r0, 0x40(r30)
+/* 80298A54 002946B4 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298A58 002946B8 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298A5C 002946BC 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298A60 002946C0 7C 04 02 14 */ add r0, r4, r0
+/* 80298A64 002946C4 7C 63 02 14 */ add r3, r3, r0
+/* 80298A68 002946C8 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298A6C 002946CC 41 81 00 0C */ bgt lbl_80298A78
+/* 80298A70 002946D0 38 00 00 00 */ li r0, 0
+/* 80298A74 002946D4 48 00 00 2C */ b lbl_80298AA0
+lbl_80298A78:
+/* 80298A78 002946D8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298A7C 002946DC 41 80 00 10 */ blt lbl_80298A8C
+/* 80298A80 002946E0 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298A84 002946E4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298A88 002946E8 48 00 00 18 */ b lbl_80298AA0
+lbl_80298A8C:
+/* 80298A8C 002946EC 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298A90 002946F0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298A94 002946F4 54 00 08 3C */ slwi r0, r0, 1
+/* 80298A98 002946F8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298A9C 002946FC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298AA0:
+/* 80298AA0 00294700 B0 1E 00 44 */ sth r0, 0x44(r30)
+/* 80298AA4 00294704 80 9E 00 30 */ lwz r4, 0x30(r30)
+/* 80298AA8 00294708 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298AAC 0029470C 80 7E 00 34 */ lwz r3, 0x34(r30)
+/* 80298AB0 00294710 7C 04 02 14 */ add r0, r4, r0
+/* 80298AB4 00294714 7C 63 02 14 */ add r3, r3, r0
+/* 80298AB8 00294718 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298ABC 0029471C 41 81 00 0C */ bgt lbl_80298AC8
+/* 80298AC0 00294720 38 00 00 00 */ li r0, 0
+/* 80298AC4 00294724 48 00 00 2C */ b lbl_80298AF0
+lbl_80298AC8:
+/* 80298AC8 00294728 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298ACC 0029472C 41 80 00 10 */ blt lbl_80298ADC
+/* 80298AD0 00294730 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298AD4 00294734 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298AD8 00294738 48 00 00 18 */ b lbl_80298AF0
+lbl_80298ADC:
+/* 80298ADC 0029473C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298AE0 00294740 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298AE4 00294744 54 00 08 3C */ slwi r0, r0, 1
+/* 80298AE8 00294748 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298AEC 0029474C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298AF0:
+/* 80298AF0 00294750 B0 1E 00 48 */ sth r0, 0x48(r30)
+/* 80298AF4 00294754 80 9E 00 30 */ lwz r4, 0x30(r30)
+/* 80298AF8 00294758 80 1E 00 20 */ lwz r0, 0x20(r30)
+/* 80298AFC 0029475C 80 7E 00 38 */ lwz r3, 0x38(r30)
+/* 80298B00 00294760 7C 04 02 14 */ add r0, r4, r0
+/* 80298B04 00294764 7C 63 02 14 */ add r3, r3, r0
+/* 80298B08 00294768 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298B0C 0029476C 41 81 00 0C */ bgt lbl_80298B18
+/* 80298B10 00294770 38 00 00 00 */ li r0, 0
+/* 80298B14 00294774 48 00 00 2C */ b lbl_80298B40
+lbl_80298B18:
+/* 80298B18 00294778 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298B1C 0029477C 41 80 00 10 */ blt lbl_80298B2C
+/* 80298B20 00294780 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298B24 00294784 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298B28 00294788 48 00 00 18 */ b lbl_80298B40
+lbl_80298B2C:
+/* 80298B2C 0029478C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298B30 00294790 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298B34 00294794 54 00 08 3C */ slwi r0, r0, 1
+/* 80298B38 00294798 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298B3C 0029479C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298B40:
+/* 80298B40 002947A0 B0 1E 00 64 */ sth r0, 0x64(r30)
+/* 80298B44 002947A4 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80298B48 002947A8 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80298B4C 002947AC 41 82 01 48 */ beq lbl_80298C94
+/* 80298B50 002947B0 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298B54 002947B4 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298B58 002947B8 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298B5C 002947BC 7C 04 02 14 */ add r0, r4, r0
+/* 80298B60 002947C0 7C 63 02 14 */ add r3, r3, r0
+/* 80298B64 002947C4 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298B68 002947C8 41 81 00 0C */ bgt lbl_80298B74
+/* 80298B6C 002947CC 38 00 00 00 */ li r0, 0
+/* 80298B70 002947D0 48 00 00 2C */ b lbl_80298B9C
+lbl_80298B74:
+/* 80298B74 002947D4 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298B78 002947D8 41 80 00 10 */ blt lbl_80298B88
+/* 80298B7C 002947DC 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298B80 002947E0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298B84 002947E4 48 00 00 18 */ b lbl_80298B9C
+lbl_80298B88:
+/* 80298B88 002947E8 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298B8C 002947EC 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298B90 002947F0 54 00 08 3C */ slwi r0, r0, 1
+/* 80298B94 002947F4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298B98 002947F8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298B9C:
+/* 80298B9C 002947FC B0 1E 00 4C */ sth r0, 0x4c(r30)
+/* 80298BA0 00294800 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298BA4 00294804 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298BA8 00294808 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298BAC 0029480C 7C 04 02 14 */ add r0, r4, r0
+/* 80298BB0 00294810 7C 63 02 14 */ add r3, r3, r0
+/* 80298BB4 00294814 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298BB8 00294818 41 81 00 0C */ bgt lbl_80298BC4
+/* 80298BBC 0029481C 38 00 00 00 */ li r0, 0
+/* 80298BC0 00294820 48 00 00 2C */ b lbl_80298BEC
+lbl_80298BC4:
+/* 80298BC4 00294824 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298BC8 00294828 41 80 00 10 */ blt lbl_80298BD8
+/* 80298BCC 0029482C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298BD0 00294830 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298BD4 00294834 48 00 00 18 */ b lbl_80298BEC
+lbl_80298BD8:
+/* 80298BD8 00294838 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298BDC 0029483C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298BE0 00294840 54 00 08 3C */ slwi r0, r0, 1
+/* 80298BE4 00294844 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298BE8 00294848 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298BEC:
+/* 80298BEC 0029484C B0 1E 00 50 */ sth r0, 0x50(r30)
+/* 80298BF0 00294850 80 9E 00 30 */ lwz r4, 0x30(r30)
+/* 80298BF4 00294854 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298BF8 00294858 80 7E 00 34 */ lwz r3, 0x34(r30)
+/* 80298BFC 0029485C 7C 04 02 14 */ add r0, r4, r0
+/* 80298C00 00294860 7C 63 02 14 */ add r3, r3, r0
+/* 80298C04 00294864 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298C08 00294868 41 81 00 0C */ bgt lbl_80298C14
+/* 80298C0C 0029486C 38 00 00 00 */ li r0, 0
+/* 80298C10 00294870 48 00 00 2C */ b lbl_80298C3C
+lbl_80298C14:
+/* 80298C14 00294874 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298C18 00294878 41 80 00 10 */ blt lbl_80298C28
+/* 80298C1C 0029487C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298C20 00294880 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298C24 00294884 48 00 00 18 */ b lbl_80298C3C
+lbl_80298C28:
+/* 80298C28 00294888 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298C2C 0029488C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298C30 00294890 54 00 08 3C */ slwi r0, r0, 1
+/* 80298C34 00294894 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298C38 00294898 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298C3C:
+/* 80298C3C 0029489C B0 1E 00 54 */ sth r0, 0x54(r30)
+/* 80298C40 002948A0 80 9E 00 30 */ lwz r4, 0x30(r30)
+/* 80298C44 002948A4 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298C48 002948A8 80 7E 00 38 */ lwz r3, 0x38(r30)
+/* 80298C4C 002948AC 7C 04 02 14 */ add r0, r4, r0
+/* 80298C50 002948B0 7C 63 02 14 */ add r3, r3, r0
+/* 80298C54 002948B4 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298C58 002948B8 41 81 00 0C */ bgt lbl_80298C64
+/* 80298C5C 002948BC 38 00 00 00 */ li r0, 0
+/* 80298C60 002948C0 48 00 00 2C */ b lbl_80298C8C
+lbl_80298C64:
+/* 80298C64 002948C4 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298C68 002948C8 41 80 00 10 */ blt lbl_80298C78
+/* 80298C6C 002948CC 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298C70 002948D0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298C74 002948D4 48 00 00 18 */ b lbl_80298C8C
+lbl_80298C78:
+/* 80298C78 002948D8 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298C7C 002948DC 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298C80 002948E0 54 00 08 3C */ slwi r0, r0, 1
+/* 80298C84 002948E4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298C88 002948E8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298C8C:
+/* 80298C8C 002948EC B0 1E 00 68 */ sth r0, 0x68(r30)
+/* 80298C90 002948F0 48 00 01 64 */ b lbl_80298DF4
+lbl_80298C94:
+/* 80298C94 002948F4 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298C98 002948F8 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298C9C 002948FC 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298CA0 00294900 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298CA4 00294904 7C 65 1A 14 */ add r3, r5, r3
+/* 80298CA8 00294908 7C 04 02 14 */ add r0, r4, r0
+/* 80298CAC 0029490C 7C 63 02 14 */ add r3, r3, r0
+/* 80298CB0 00294910 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298CB4 00294914 41 81 00 0C */ bgt lbl_80298CC0
+/* 80298CB8 00294918 38 00 00 00 */ li r0, 0
+/* 80298CBC 0029491C 48 00 00 2C */ b lbl_80298CE8
+lbl_80298CC0:
+/* 80298CC0 00294920 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298CC4 00294924 41 80 00 10 */ blt lbl_80298CD4
+/* 80298CC8 00294928 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298CCC 0029492C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298CD0 00294930 48 00 00 18 */ b lbl_80298CE8
+lbl_80298CD4:
+/* 80298CD4 00294934 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298CD8 00294938 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298CDC 0029493C 54 00 08 3C */ slwi r0, r0, 1
+/* 80298CE0 00294940 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298CE4 00294944 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298CE8:
+/* 80298CE8 00294948 B0 1E 00 4C */ sth r0, 0x4c(r30)
+/* 80298CEC 0029494C 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298CF0 00294950 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298CF4 00294954 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298CF8 00294958 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298CFC 0029495C 7C 65 1A 14 */ add r3, r5, r3
+/* 80298D00 00294960 7C 04 02 14 */ add r0, r4, r0
+/* 80298D04 00294964 7C 63 02 14 */ add r3, r3, r0
+/* 80298D08 00294968 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298D0C 0029496C 41 81 00 0C */ bgt lbl_80298D18
+/* 80298D10 00294970 38 00 00 00 */ li r0, 0
+/* 80298D14 00294974 48 00 00 2C */ b lbl_80298D40
+lbl_80298D18:
+/* 80298D18 00294978 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298D1C 0029497C 41 80 00 10 */ blt lbl_80298D2C
+/* 80298D20 00294980 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298D24 00294984 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298D28 00294988 48 00 00 18 */ b lbl_80298D40
+lbl_80298D2C:
+/* 80298D2C 0029498C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298D30 00294990 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298D34 00294994 54 00 08 3C */ slwi r0, r0, 1
+/* 80298D38 00294998 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298D3C 0029499C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298D40:
+/* 80298D40 002949A0 B0 1E 00 50 */ sth r0, 0x50(r30)
+/* 80298D44 002949A4 80 BE 00 30 */ lwz r5, 0x30(r30)
+/* 80298D48 002949A8 80 7E 00 34 */ lwz r3, 0x34(r30)
+/* 80298D4C 002949AC 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298D50 002949B0 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298D54 002949B4 7C 65 1A 14 */ add r3, r5, r3
+/* 80298D58 002949B8 7C 04 02 14 */ add r0, r4, r0
+/* 80298D5C 002949BC 7C 63 02 14 */ add r3, r3, r0
+/* 80298D60 002949C0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298D64 002949C4 41 81 00 0C */ bgt lbl_80298D70
+/* 80298D68 002949C8 38 00 00 00 */ li r0, 0
+/* 80298D6C 002949CC 48 00 00 2C */ b lbl_80298D98
+lbl_80298D70:
+/* 80298D70 002949D0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298D74 002949D4 41 80 00 10 */ blt lbl_80298D84
+/* 80298D78 002949D8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298D7C 002949DC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298D80 002949E0 48 00 00 18 */ b lbl_80298D98
+lbl_80298D84:
+/* 80298D84 002949E4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298D88 002949E8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298D8C 002949EC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298D90 002949F0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298D94 002949F4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298D98:
+/* 80298D98 002949F8 B0 1E 00 54 */ sth r0, 0x54(r30)
+/* 80298D9C 002949FC 80 BE 00 30 */ lwz r5, 0x30(r30)
+/* 80298DA0 00294A00 80 7E 00 38 */ lwz r3, 0x38(r30)
+/* 80298DA4 00294A04 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298DA8 00294A08 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 80298DAC 00294A0C 7C 65 1A 14 */ add r3, r5, r3
+/* 80298DB0 00294A10 7C 04 02 14 */ add r0, r4, r0
+/* 80298DB4 00294A14 7C 63 02 14 */ add r3, r3, r0
+/* 80298DB8 00294A18 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298DBC 00294A1C 41 81 00 0C */ bgt lbl_80298DC8
+/* 80298DC0 00294A20 38 00 00 00 */ li r0, 0
+/* 80298DC4 00294A24 48 00 00 2C */ b lbl_80298DF0
+lbl_80298DC8:
+/* 80298DC8 00294A28 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298DCC 00294A2C 41 80 00 10 */ blt lbl_80298DDC
+/* 80298DD0 00294A30 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298DD4 00294A34 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298DD8 00294A38 48 00 00 18 */ b lbl_80298DF0
+lbl_80298DDC:
+/* 80298DDC 00294A3C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298DE0 00294A40 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298DE4 00294A44 54 00 08 3C */ slwi r0, r0, 1
+/* 80298DE8 00294A48 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298DEC 00294A4C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298DF0:
+/* 80298DF0 00294A50 B0 1E 00 68 */ sth r0, 0x68(r30)
+lbl_80298DF4:
+/* 80298DF4 00294A54 80 1E 00 04 */ lwz r0, 4(r30)
+/* 80298DF8 00294A58 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 80298DFC 00294A5C 41 82 01 48 */ beq lbl_80298F44
+/* 80298E00 00294A60 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298E04 00294A64 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298E08 00294A68 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298E0C 00294A6C 7C 04 02 14 */ add r0, r4, r0
+/* 80298E10 00294A70 7C 63 02 14 */ add r3, r3, r0
+/* 80298E14 00294A74 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298E18 00294A78 41 81 00 0C */ bgt lbl_80298E24
+/* 80298E1C 00294A7C 38 00 00 00 */ li r0, 0
+/* 80298E20 00294A80 48 00 00 2C */ b lbl_80298E4C
+lbl_80298E24:
+/* 80298E24 00294A84 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298E28 00294A88 41 80 00 10 */ blt lbl_80298E38
+/* 80298E2C 00294A8C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298E30 00294A90 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298E34 00294A94 48 00 00 18 */ b lbl_80298E4C
+lbl_80298E38:
+/* 80298E38 00294A98 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298E3C 00294A9C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298E40 00294AA0 54 00 08 3C */ slwi r0, r0, 1
+/* 80298E44 00294AA4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298E48 00294AA8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298E4C:
+/* 80298E4C 00294AAC B0 1E 00 58 */ sth r0, 0x58(r30)
+/* 80298E50 00294AB0 80 9E 00 2C */ lwz r4, 0x2c(r30)
+/* 80298E54 00294AB4 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298E58 00294AB8 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298E5C 00294ABC 7C 04 02 14 */ add r0, r4, r0
+/* 80298E60 00294AC0 7C 63 02 14 */ add r3, r3, r0
+/* 80298E64 00294AC4 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298E68 00294AC8 41 81 00 0C */ bgt lbl_80298E74
+/* 80298E6C 00294ACC 38 00 00 00 */ li r0, 0
+/* 80298E70 00294AD0 48 00 00 2C */ b lbl_80298E9C
+lbl_80298E74:
+/* 80298E74 00294AD4 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298E78 00294AD8 41 80 00 10 */ blt lbl_80298E88
+/* 80298E7C 00294ADC 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298E80 00294AE0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298E84 00294AE4 48 00 00 18 */ b lbl_80298E9C
+lbl_80298E88:
+/* 80298E88 00294AE8 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298E8C 00294AEC 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298E90 00294AF0 54 00 08 3C */ slwi r0, r0, 1
+/* 80298E94 00294AF4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298E98 00294AF8 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298E9C:
+/* 80298E9C 00294AFC B0 1E 00 5C */ sth r0, 0x5c(r30)
+/* 80298EA0 00294B00 80 9E 00 30 */ lwz r4, 0x30(r30)
+/* 80298EA4 00294B04 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298EA8 00294B08 80 7E 00 34 */ lwz r3, 0x34(r30)
+/* 80298EAC 00294B0C 7C 04 02 14 */ add r0, r4, r0
+/* 80298EB0 00294B10 7C 63 02 14 */ add r3, r3, r0
+/* 80298EB4 00294B14 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298EB8 00294B18 41 81 00 0C */ bgt lbl_80298EC4
+/* 80298EBC 00294B1C 38 00 00 00 */ li r0, 0
+/* 80298EC0 00294B20 48 00 00 2C */ b lbl_80298EEC
+lbl_80298EC4:
+/* 80298EC4 00294B24 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298EC8 00294B28 41 80 00 10 */ blt lbl_80298ED8
+/* 80298ECC 00294B2C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298ED0 00294B30 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298ED4 00294B34 48 00 00 18 */ b lbl_80298EEC
+lbl_80298ED8:
+/* 80298ED8 00294B38 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298EDC 00294B3C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298EE0 00294B40 54 00 08 3C */ slwi r0, r0, 1
+/* 80298EE4 00294B44 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298EE8 00294B48 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298EEC:
+/* 80298EEC 00294B4C B0 1E 00 60 */ sth r0, 0x60(r30)
+/* 80298EF0 00294B50 80 9E 00 30 */ lwz r4, 0x30(r30)
+/* 80298EF4 00294B54 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298EF8 00294B58 80 7E 00 38 */ lwz r3, 0x38(r30)
+/* 80298EFC 00294B5C 7C 04 02 14 */ add r0, r4, r0
+/* 80298F00 00294B60 7C 63 02 14 */ add r3, r3, r0
+/* 80298F04 00294B64 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298F08 00294B68 41 81 00 0C */ bgt lbl_80298F14
+/* 80298F0C 00294B6C 38 00 00 00 */ li r0, 0
+/* 80298F10 00294B70 48 00 00 2C */ b lbl_80298F3C
+lbl_80298F14:
+/* 80298F14 00294B74 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298F18 00294B78 41 80 00 10 */ blt lbl_80298F28
+/* 80298F1C 00294B7C 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298F20 00294B80 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298F24 00294B84 48 00 00 18 */ b lbl_80298F3C
+lbl_80298F28:
+/* 80298F28 00294B88 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298F2C 00294B8C 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298F30 00294B90 54 00 08 3C */ slwi r0, r0, 1
+/* 80298F34 00294B94 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298F38 00294B98 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298F3C:
+/* 80298F3C 00294B9C B0 1E 00 6C */ sth r0, 0x6c(r30)
+/* 80298F40 00294BA0 48 00 01 64 */ b lbl_802990A4
+lbl_80298F44:
+/* 80298F44 00294BA4 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298F48 00294BA8 80 7E 00 24 */ lwz r3, 0x24(r30)
+/* 80298F4C 00294BAC 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298F50 00294BB0 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298F54 00294BB4 7C 65 1A 14 */ add r3, r5, r3
+/* 80298F58 00294BB8 7C 04 02 14 */ add r0, r4, r0
+/* 80298F5C 00294BBC 7C 63 02 14 */ add r3, r3, r0
+/* 80298F60 00294BC0 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298F64 00294BC4 41 81 00 0C */ bgt lbl_80298F70
+/* 80298F68 00294BC8 38 00 00 00 */ li r0, 0
+/* 80298F6C 00294BCC 48 00 00 2C */ b lbl_80298F98
+lbl_80298F70:
+/* 80298F70 00294BD0 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298F74 00294BD4 41 80 00 10 */ blt lbl_80298F84
+/* 80298F78 00294BD8 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298F7C 00294BDC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298F80 00294BE0 48 00 00 18 */ b lbl_80298F98
+lbl_80298F84:
+/* 80298F84 00294BE4 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298F88 00294BE8 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298F8C 00294BEC 54 00 08 3C */ slwi r0, r0, 1
+/* 80298F90 00294BF0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298F94 00294BF4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298F98:
+/* 80298F98 00294BF8 B0 1E 00 58 */ sth r0, 0x58(r30)
+/* 80298F9C 00294BFC 80 BE 00 2C */ lwz r5, 0x2c(r30)
+/* 80298FA0 00294C00 80 7E 00 28 */ lwz r3, 0x28(r30)
+/* 80298FA4 00294C04 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80298FA8 00294C08 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80298FAC 00294C0C 7C 65 1A 14 */ add r3, r5, r3
+/* 80298FB0 00294C10 7C 04 02 14 */ add r0, r4, r0
+/* 80298FB4 00294C14 7C 63 02 14 */ add r3, r3, r0
+/* 80298FB8 00294C18 2C 03 FC 78 */ cmpwi r3, -904
+/* 80298FBC 00294C1C 41 81 00 0C */ bgt lbl_80298FC8
+/* 80298FC0 00294C20 38 00 00 00 */ li r0, 0
+/* 80298FC4 00294C24 48 00 00 2C */ b lbl_80298FF0
+lbl_80298FC8:
+/* 80298FC8 00294C28 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80298FCC 00294C2C 41 80 00 10 */ blt lbl_80298FDC
+/* 80298FD0 00294C30 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80298FD4 00294C34 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80298FD8 00294C38 48 00 00 18 */ b lbl_80298FF0
+lbl_80298FDC:
+/* 80298FDC 00294C3C 38 03 03 88 */ addi r0, r3, 0x388
+/* 80298FE0 00294C40 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80298FE4 00294C44 54 00 08 3C */ slwi r0, r0, 1
+/* 80298FE8 00294C48 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80298FEC 00294C4C 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80298FF0:
+/* 80298FF0 00294C50 B0 1E 00 5C */ sth r0, 0x5c(r30)
+/* 80298FF4 00294C54 80 BE 00 30 */ lwz r5, 0x30(r30)
+/* 80298FF8 00294C58 80 7E 00 34 */ lwz r3, 0x34(r30)
+/* 80298FFC 00294C5C 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80299000 00294C60 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 80299004 00294C64 7C 65 1A 14 */ add r3, r5, r3
+/* 80299008 00294C68 7C 04 02 14 */ add r0, r4, r0
+/* 8029900C 00294C6C 7C 63 02 14 */ add r3, r3, r0
+/* 80299010 00294C70 2C 03 FC 78 */ cmpwi r3, -904
+/* 80299014 00294C74 41 81 00 0C */ bgt lbl_80299020
+/* 80299018 00294C78 38 00 00 00 */ li r0, 0
+/* 8029901C 00294C7C 48 00 00 2C */ b lbl_80299048
+lbl_80299020:
+/* 80299020 00294C80 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 80299024 00294C84 41 80 00 10 */ blt lbl_80299034
+/* 80299028 00294C88 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 8029902C 00294C8C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80299030 00294C90 48 00 00 18 */ b lbl_80299048
+lbl_80299034:
+/* 80299034 00294C94 38 03 03 88 */ addi r0, r3, 0x388
+/* 80299038 00294C98 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 8029903C 00294C9C 54 00 08 3C */ slwi r0, r0, 1
+/* 80299040 00294CA0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 80299044 00294CA4 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_80299048:
+/* 80299048 00294CA8 B0 1E 00 60 */ sth r0, 0x60(r30)
+/* 8029904C 00294CAC 80 BE 00 30 */ lwz r5, 0x30(r30)
+/* 80299050 00294CB0 80 7E 00 38 */ lwz r3, 0x38(r30)
+/* 80299054 00294CB4 80 9E 00 20 */ lwz r4, 0x20(r30)
+/* 80299058 00294CB8 80 1E 00 10 */ lwz r0, 0x10(r30)
+/* 8029905C 00294CBC 7C 65 1A 14 */ add r3, r5, r3
+/* 80299060 00294CC0 7C 04 02 14 */ add r0, r4, r0
+/* 80299064 00294CC4 7C 63 02 14 */ add r3, r3, r0
+/* 80299068 00294CC8 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029906C 00294CCC 41 81 00 0C */ bgt lbl_80299078
+/* 80299070 00294CD0 38 00 00 00 */ li r0, 0
+/* 80299074 00294CD4 48 00 00 2C */ b lbl_802990A0
+lbl_80299078:
+/* 80299078 00294CD8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029907C 00294CDC 41 80 00 10 */ blt lbl_8029908C
+/* 80299080 00294CE0 3C 60 00 01 */ lis r3, 0x0000FF64@ha
+/* 80299084 00294CE4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l
+/* 80299088 00294CE8 48 00 00 18 */ b lbl_802990A0
+lbl_8029908C:
+/* 8029908C 00294CEC 38 03 03 88 */ addi r0, r3, 0x388
+/* 80299090 00294CF0 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 80299094 00294CF4 54 00 08 3C */ slwi r0, r0, 1
+/* 80299098 00294CF8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l
+/* 8029909C 00294CFC 7C 03 02 2E */ lhzx r0, r3, r0
+lbl_802990A0:
+/* 802990A0 00294D00 B0 1E 00 6C */ sth r0, 0x6c(r30)
+lbl_802990A4:
+/* 802990A4 00294D04 67 BD 80 00 */ oris r29, r29, 0x8000
+lbl_802990A8:
+/* 802990A8 00294D08 80 7C 00 18 */ lwz r3, 0x18(r28)
+/* 802990AC 00294D0C 48 00 1C F5 */ bl __MIXRmtResetChannel
+/* 802990B0 00294D10 4B FD 56 AD */ bl OSDisableInterrupts
+/* 802990B4 00294D14 A0 9E 00 3C */ lhz r4, 0x3c(r30)
+/* 802990B8 00294D18 38 00 00 00 */ li r0, 0
+/* 802990BC 00294D1C 7C 7F 1B 78 */ mr r31, r3
+/* 802990C0 00294D20 38 7C 00 3E */ addi r3, r28, 0x3e
+/* 802990C4 00294D24 B0 9C 00 92 */ sth r4, 0x92(r28)
+/* 802990C8 00294D28 B0 1C 00 94 */ sth r0, 0x94(r28)
+/* 802990CC 00294D2C A0 1E 00 40 */ lhz r0, 0x40(r30)
+/* 802990D0 00294D30 2C 00 00 00 */ cmpwi r0, 0
+/* 802990D4 00294D34 B0 1C 00 3C */ sth r0, 0x3c(r28)
+/* 802990D8 00294D38 41 82 00 08 */ beq lbl_802990E0
+/* 802990DC 00294D3C 63 BD 00 01 */ ori r29, r29, 1
+lbl_802990E0:
+/* 802990E0 00294D40 38 00 00 00 */ li r0, 0
+/* 802990E4 00294D44 B0 03 00 00 */ sth r0, 0(r3)
+/* 802990E8 00294D48 A0 1E 00 44 */ lhz r0, 0x44(r30)
+/* 802990EC 00294D4C 2C 00 00 00 */ cmpwi r0, 0
+/* 802990F0 00294D50 B0 03 00 02 */ sth r0, 2(r3)
+/* 802990F4 00294D54 41 82 00 08 */ beq lbl_802990FC
+/* 802990F8 00294D58 63 BD 00 02 */ ori r29, r29, 2
+lbl_802990FC:
+/* 802990FC 00294D5C 38 00 00 00 */ li r0, 0
+/* 80299100 00294D60 B0 03 00 04 */ sth r0, 4(r3)
+/* 80299104 00294D64 A0 1E 00 4C */ lhz r0, 0x4c(r30)
+/* 80299108 00294D68 2C 00 00 00 */ cmpwi r0, 0
+/* 8029910C 00294D6C B0 03 00 06 */ sth r0, 6(r3)
+/* 80299110 00294D70 41 82 00 08 */ beq lbl_80299118
+/* 80299114 00294D74 67 BD 00 01 */ oris r29, r29, 1
+lbl_80299118:
+/* 80299118 00294D78 38 00 00 00 */ li r0, 0
+/* 8029911C 00294D7C B0 03 00 08 */ sth r0, 8(r3)
+/* 80299120 00294D80 A0 1E 00 50 */ lhz r0, 0x50(r30)
+/* 80299124 00294D84 2C 00 00 00 */ cmpwi r0, 0
+/* 80299128 00294D88 B0 03 00 0A */ sth r0, 0xa(r3)
+/* 8029912C 00294D8C 41 82 00 08 */ beq lbl_80299134
+/* 80299130 00294D90 67 BD 00 02 */ oris r29, r29, 2
+lbl_80299134:
+/* 80299134 00294D94 38 00 00 00 */ li r0, 0
+/* 80299138 00294D98 B0 03 00 0C */ sth r0, 0xc(r3)
+/* 8029913C 00294D9C A0 1E 00 58 */ lhz r0, 0x58(r30)
+/* 80299140 00294DA0 2C 00 00 00 */ cmpwi r0, 0
+/* 80299144 00294DA4 B0 03 00 0E */ sth r0, 0xe(r3)
+/* 80299148 00294DA8 41 82 00 08 */ beq lbl_80299150
+/* 8029914C 00294DAC 67 BD 00 20 */ oris r29, r29, 0x20
+lbl_80299150:
+/* 80299150 00294DB0 38 00 00 00 */ li r0, 0
+/* 80299154 00294DB4 B0 03 00 10 */ sth r0, 0x10(r3)
+/* 80299158 00294DB8 A0 1E 00 5C */ lhz r0, 0x5c(r30)
+/* 8029915C 00294DBC 2C 00 00 00 */ cmpwi r0, 0
+/* 80299160 00294DC0 B0 03 00 12 */ sth r0, 0x12(r3)
+/* 80299164 00294DC4 41 82 00 08 */ beq lbl_8029916C
+/* 80299168 00294DC8 67 BD 00 40 */ oris r29, r29, 0x40
+lbl_8029916C:
+/* 8029916C 00294DCC 38 00 00 00 */ li r0, 0
+/* 80299170 00294DD0 B0 03 00 14 */ sth r0, 0x14(r3)
+/* 80299174 00294DD4 A0 1E 00 64 */ lhz r0, 0x64(r30)
+/* 80299178 00294DD8 2C 00 00 00 */ cmpwi r0, 0
+/* 8029917C 00294DDC B0 03 00 16 */ sth r0, 0x16(r3)
+/* 80299180 00294DE0 41 82 00 08 */ beq lbl_80299188
+/* 80299184 00294DE4 67 BD 04 00 */ oris r29, r29, 0x400
+lbl_80299188:
+/* 80299188 00294DE8 38 00 00 00 */ li r0, 0
+/* 8029918C 00294DEC B0 03 00 18 */ sth r0, 0x18(r3)
+/* 80299190 00294DF0 A0 1E 00 68 */ lhz r0, 0x68(r30)
+/* 80299194 00294DF4 2C 00 00 00 */ cmpwi r0, 0
+/* 80299198 00294DF8 B0 03 00 1A */ sth r0, 0x1a(r3)
+/* 8029919C 00294DFC 41 82 00 08 */ beq lbl_802991A4
+/* 802991A0 00294E00 67 BD 08 00 */ oris r29, r29, 0x800
+lbl_802991A4:
+/* 802991A4 00294E04 38 00 00 00 */ li r0, 0
+/* 802991A8 00294E08 B0 03 00 1C */ sth r0, 0x1c(r3)
+/* 802991AC 00294E0C A0 1E 00 48 */ lhz r0, 0x48(r30)
+/* 802991B0 00294E10 2C 00 00 00 */ cmpwi r0, 0
+/* 802991B4 00294E14 B0 03 00 1E */ sth r0, 0x1e(r3)
+/* 802991B8 00294E18 41 82 00 08 */ beq lbl_802991C0
+/* 802991BC 00294E1C 63 BD 00 08 */ ori r29, r29, 8
+lbl_802991C0:
+/* 802991C0 00294E20 38 00 00 00 */ li r0, 0
+/* 802991C4 00294E24 B0 03 00 20 */ sth r0, 0x20(r3)
+/* 802991C8 00294E28 A0 1E 00 54 */ lhz r0, 0x54(r30)
+/* 802991CC 00294E2C 2C 00 00 00 */ cmpwi r0, 0
+/* 802991D0 00294E30 B0 03 00 22 */ sth r0, 0x22(r3)
+/* 802991D4 00294E34 41 82 00 08 */ beq lbl_802991DC
+/* 802991D8 00294E38 67 BD 00 08 */ oris r29, r29, 8
+lbl_802991DC:
+/* 802991DC 00294E3C 38 00 00 00 */ li r0, 0
+/* 802991E0 00294E40 B0 03 00 24 */ sth r0, 0x24(r3)
+/* 802991E4 00294E44 A0 1E 00 60 */ lhz r0, 0x60(r30)
+/* 802991E8 00294E48 2C 00 00 00 */ cmpwi r0, 0
+/* 802991EC 00294E4C B0 03 00 26 */ sth r0, 0x26(r3)
+/* 802991F0 00294E50 41 82 00 08 */ beq lbl_802991F8
+/* 802991F4 00294E54 67 BD 01 00 */ oris r29, r29, 0x100
+lbl_802991F8:
+/* 802991F8 00294E58 38 00 00 00 */ li r0, 0
+/* 802991FC 00294E5C B0 03 00 28 */ sth r0, 0x28(r3)
+/* 80299200 00294E60 A0 1E 00 6C */ lhz r0, 0x6c(r30)
+/* 80299204 00294E64 2C 00 00 00 */ cmpwi r0, 0
+/* 80299208 00294E68 B0 03 00 2A */ sth r0, 0x2a(r3)
+/* 8029920C 00294E6C 41 82 00 08 */ beq lbl_80299214
+/* 80299210 00294E70 67 BD 20 00 */ oris r29, r29, 0x2000
+lbl_80299214:
+/* 80299214 00294E74 80 1C 00 1C */ lwz r0, 0x1c(r28)
+/* 80299218 00294E78 3B C0 00 00 */ li r30, 0
+/* 8029921C 00294E7C B3 C3 00 2C */ sth r30, 0x2c(r3)
+/* 80299220 00294E80 38 7C 01 02 */ addi r3, r28, 0x102
+/* 80299224 00294E84 60 00 01 12 */ ori r0, r0, 0x112
+/* 80299228 00294E88 38 80 00 00 */ li r4, 0
+/* 8029922C 00294E8C 93 BC 00 34 */ stw r29, 0x34(r28)
+/* 80299230 00294E90 38 A0 00 20 */ li r5, 0x20
+/* 80299234 00294E94 90 1C 00 1C */ stw r0, 0x1c(r28)
+/* 80299238 00294E98 4B D6 AE CD */ bl memset
+/* 8029923C 00294E9C 80 1C 00 1C */ lwz r0, 0x1c(r28)
+/* 80299240 00294EA0 7F E3 FB 78 */ mr r3, r31
+/* 80299244 00294EA4 B3 DC 01 00 */ sth r30, 0x100(r28)
+/* 80299248 00294EA8 64 00 03 00 */ oris r0, r0, 0x300
+/* 8029924C 00294EAC 90 1C 00 1C */ stw r0, 0x1c(r28)
+/* 80299250 00294EB0 4B FD 55 35 */ bl OSRestoreInterrupts
+/* 80299254 00294EB4 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80299258 00294EB8 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8029925C 00294EBC 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80299260 00294EC0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80299264 00294EC4 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 80299268 00294EC8 7C 08 03 A6 */ mtlr r0
+/* 8029926C 00294ECC 38 21 00 20 */ addi r1, r1, 0x20
+/* 80299270 00294ED0 4E 80 00 20 */ blr
+
+.global MIXReleaseChannel
+MIXReleaseChannel:
+/* 80299274 00294ED4 80 03 00 18 */ lwz r0, 0x18(r3)
+/* 80299278 00294ED8 38 80 00 00 */ li r4, 0
+/* 8029927C 00294EDC 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80299280 00294EE0 1C 00 00 70 */ mulli r0, r0, 0x70
+/* 80299284 00294EE4 7C 83 01 2E */ stwx r4, r3, r0
+/* 80299288 00294EE8 4E 80 00 20 */ blr
+
+.global MIXSetInput
+MIXSetInput:
+/* 8029928C 00294EEC 80 03 00 18 */ lwz r0, 0x18(r3)
+/* 80299290 00294EF0 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80299294 00294EF4 1C 00 00 70 */ mulli r0, r0, 0x70
+/* 80299298 00294EF8 7C 63 02 14 */ add r3, r3, r0
+/* 8029929C 00294EFC 90 83 00 08 */ stw r4, 8(r3)
+/* 802992A0 00294F00 80 03 00 04 */ lwz r0, 4(r3)
+/* 802992A4 00294F04 64 00 10 00 */ oris r0, r0, 0x1000
+/* 802992A8 00294F08 90 03 00 04 */ stw r0, 4(r3)
+/* 802992AC 00294F0C 4E 80 00 20 */ blr
+
+.global MIXSetFader
+MIXSetFader:
+/* 802992B0 00294F10 80 03 00 18 */ lwz r0, 0x18(r3)
+/* 802992B4 00294F14 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13)
+/* 802992B8 00294F18 1C 00 00 70 */ mulli r0, r0, 0x70
+/* 802992BC 00294F1C 7C 63 02 14 */ add r3, r3, r0
+/* 802992C0 00294F20 90 83 00 20 */ stw r4, 0x20(r3)
+/* 802992C4 00294F24 80 03 00 04 */ lwz r0, 4(r3)
+/* 802992C8 00294F28 64 00 40 00 */ oris r0, r0, 0x4000
+/* 802992CC 00294F2C 90 03 00 04 */ stw r0, 4(r3)
+/* 802992D0 00294F30 4E 80 00 20 */ blr
+
+.global MIXUpdateSettings
+MIXUpdateSettings:
+/* 802992D4 00294F34 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802992D8 00294F38 7C 08 02 A6 */ mflr r0
+/* 802992DC 00294F3C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802992E0 00294F40 39 61 00 20 */ addi r11, r1, 0x20
+/* 802992E4 00294F44 4B F2 DE 41 */ bl _savegpr_26
+/* 802992E8 00294F48 80 0D AC 54 */ lwz r0, lbl_8063FF14-_SDA_BASE_(r13)
+/* 802992EC 00294F4C 2C 00 00 00 */ cmpwi r0, 0
+/* 802992F0 00294F50 41 82 16 5C */ beq lbl_8029A94C
+/* 802992F4 00294F54 3C 60 80 44 */ lis r3, lbl_8043B170@ha
+/* 802992F8 00294F58 3B 40 00 00 */ li r26, 0
+/* 802992FC 00294F5C 3B 60 00 00 */ li r27, 0
+/* 80299300 00294F60 3F A0 00 01 */ lis r29, 1
+/* 80299304 00294F64 3B C3 B1 70 */ addi r30, r3, lbl_8043B170@l
+/* 80299308 00294F68 3B 80 00 00 */ li r28, 0
+/* 8029930C 00294F6C 3F E0 2A AB */ lis r31, 0x2aab
+/* 80299310 00294F70 48 00 16 30 */ b lbl_8029A940
+lbl_80299314:
+/* 80299314 00294F74 80 8D AC 50 */ lwz r4, lbl_8063FF10-_SDA_BASE_(r13)
+/* 80299318 00294F78 38 60 00 00 */ li r3, 0
+/* 8029931C 00294F7C 38 00 00 00 */ li r0, 0
+/* 80299320 00294F80 7C A4 DA 14 */ add r5, r4, r27
+/* 80299324 00294F84 7C 84 D8 2E */ lwzx r4, r4, r27
+/* 80299328 00294F88 2C 04 00 00 */ cmpwi r4, 0
+/* 8029932C 00294F8C 41 82 16 0C */ beq lbl_8029A938
+/* 80299330 00294F90 80 E5 00 04 */ lwz r7, 4(r5)
+/* 80299334 00294F94 38 C0 00 00 */ li r6, 0
+/* 80299338 00294F98 54 E7 00 85 */ rlwinm. r7, r7, 0, 2, 2
+/* 8029933C 00294F9C 41 82 00 1C */ beq lbl_80299358
+/* 80299340 00294FA0 A0 E5 00 3E */ lhz r7, 0x3e(r5)
+/* 80299344 00294FA4 38 60 00 01 */ li r3, 1
+/* 80299348 00294FA8 B0 E5 00 3C */ sth r7, 0x3c(r5)
+/* 8029934C 00294FAC 80 E5 00 04 */ lwz r7, 4(r5)
+/* 80299350 00294FB0 54 E7 00 C2 */ rlwinm r7, r7, 0, 3, 1
+/* 80299354 00294FB4 90 E5 00 04 */ stw r7, 4(r5)
+lbl_80299358:
+/* 80299358 00294FB8 81 05 00 04 */ lwz r8, 4(r5)
+/* 8029935C 00294FBC 55 07 00 C7 */ rlwinm. r7, r8, 0, 3, 3
+/* 80299360 00294FC0 41 82 00 5C */ beq lbl_802993BC
+/* 80299364 00294FC4 55 03 07 39 */ rlwinm. r3, r8, 0, 0x1c, 0x1c
+/* 80299368 00294FC8 41 82 00 0C */ beq lbl_80299374
+/* 8029936C 00294FCC B3 85 00 3E */ sth r28, 0x3e(r5)
+/* 80299370 00294FD0 48 00 00 38 */ b lbl_802993A8
+lbl_80299374:
+/* 80299374 00294FD4 80 65 00 08 */ lwz r3, 8(r5)
+/* 80299378 00294FD8 2C 03 FC 78 */ cmpwi r3, -904
+/* 8029937C 00294FDC 41 81 00 0C */ bgt lbl_80299388
+/* 80299380 00294FE0 38 60 00 00 */ li r3, 0
+/* 80299384 00294FE4 48 00 00 20 */ b lbl_802993A4
+lbl_80299388:
+/* 80299388 00294FE8 2C 03 00 3C */ cmpwi r3, 0x3c
+/* 8029938C 00294FEC 41 80 00 0C */ blt lbl_80299398
+/* 80299390 00294FF0 38 7D FF 64 */ addi r3, r29, -156
+/* 80299394 00294FF4 48 00 00 10 */ b lbl_802993A4
+lbl_80299398:
+/* 80299398 00294FF8 54 63 08 3C */ slwi r3, r3, 1
+/* 8029939C 00294FFC 7C 7E 1A 14 */ add r3, r30, r3
+/* 802993A0 00295000 A0 63 07 10 */ lhz r3, 0x710(r3)
+lbl_802993A4:
+/* 802993A4 00295004 B0 65 00 3E */ sth r3, 0x3e(r5)
+lbl_802993A8:
+/* 802993A8 00295008 80 E5 00 04 */ lwz r7, 4(r5)
+/* 802993AC 0029500C 38 60 00 01 */ li r3, 1
+/* 802993B0 00295010 54 E7 01 04 */ rlwinm r7, r7, 0, 4, 2
+/* 802993B4 00295014 64 E7 20 00 */ oris r7, r7, 0x2000
+/* 802993B8 00295018 90 E5 00 04 */ stw r7, 4(r5)
+lbl_802993BC:
+/* 802993BC 0029501C 80 E5 00 04 */ lwz r7, 4(r5)
+/* 802993C0 00295020 54 E7 00 01 */ rlwinm. r7, r7, 0, 0, 0
+/* 802993C4 00295024 41 82 00 74 */ beq lbl_80299438
+/* 802993C8 00295028 A0 E5 00 42 */ lhz r7, 0x42(r5)
+/* 802993CC 0029502C 38 00 00 01 */ li r0, 1
+/* 802993D0 00295030 B0 E5 00 40 */ sth r7, 0x40(r5)
+/* 802993D4 00295034 A0 E5 00 46 */ lhz r7, 0x46(r5)
+/* 802993D8 00295038 B0 E5 00 44 */ sth r7, 0x44(r5)
+/* 802993DC 0029503C A0 E5 00 4A */ lhz r7, 0x4a(r5)
+/* 802993E0 00295040 B0 E5 00 48 */ sth r7, 0x48(r5)
+/* 802993E4 00295044 A0 E5 00 4E */ lhz r7, 0x4e(r5)
+/* 802993E8 00295048 B0 E5 00 4C */ sth r7, 0x4c(r5)
+/* 802993EC 0029504C A0 E5 00 52 */ lhz r7, 0x52(r5)
+/* 802993F0 00295050 B0 E5 00 50 */ sth r7, 0x50(r5)
+/* 802993F4 00295054 A0 E5 00 56 */ lhz r7, 0x56(r5)
+/* 802993F8 00295058 B0 E5 00 54 */ sth r7, 0x54(r5)
+/* 802993FC 0029505C A0 E5 00 5A */ lhz r7, 0x5a(r5)
+/* 80299400 00295060 B0 E5 00 58 */ sth r7, 0x58(r5)
+/* 80299404 00295064 A0 E5 00 5E */ lhz r7, 0x5e(r5)
+/* 80299408 00295068 B0 E5 00 5C */ sth r7, 0x5c(r5)
+/* 8029940C 0029506C A0 E5 00 62 */ lhz r7, 0x62(r5)
+/* 80299410 00295070 B0 E5 00 60 */ sth r7, 0x60(r5)
+/* 80299414 00295074 A0 E5 00 66 */ lhz r7, 0x66(r5)
+/* 80299418 00295078 B0 E5 00 64 */ sth r7, 0x64(r5)
+/* 8029941C 0029507C A0 E5 00 6A */ lhz r7, 0x6a(r5)
+/* 80299420 00295080 B0 E5 00 68 */ sth r7, 0x68(r5)
+/* 80299424 00295084 A0 E5 00 6E */ lhz r7, 0x6e(r5)
+/* 80299428 00295088 B0 E5 00 6C */ sth r7, 0x6c(r5)
+/* 8029942C 0029508C 80 E5 00 04 */ lwz r7, 4(r5)
+/* 80299430 00295090 54 E7 00 7E */ clrlwi r7, r7, 1
+/* 80299434 00295094 90 E5 00 04 */ stw r7, 4(r5)
+lbl_80299438:
+/* 80299438 00295098 80 E5 00 04 */ lwz r7, 4(r5)
+/* 8029943C 0029509C 54 E7 00 43 */ rlwinm. r7, r7, 0, 1, 1
+/* 80299440 002950A0 41 82 11 64 */ beq lbl_8029A5A4
+/* 80299444 002950A4 80 0D AC 5C */ lwz r0, lbl_8063FF1C-_SDA_BASE_(r13)
+/* 80299448 002950A8 2C 00 00 03 */ cmpwi r0, 3
+/* 8029944C 002950AC 41 82 0B 90 */ beq lbl_80299FDC
+/* 80299450 002950B0 40 80 11 40 */ bge lbl_8029A590
+/* 80299454 002950B4 2C 00 00 00 */ cmpwi r0, 0
+/* 80299458 002950B8 41 82 00 0C */ beq lbl_80299464
+/* 8029945C 002950BC 40 80 05 8C */ bge lbl_802999E8
+/* 80299460 002950C0 48 00 11 30 */ b lbl_8029A590
+lbl_80299464:
+/* 80299464 002950C4 80 E5 00 20 */ lwz r7, 0x20(r5)
+/* 80299468 002950C8 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 8029946C 002950CC 7C 07 02 14 */ add r0, r7, r0
+/* 80299470 002950D0 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299474 002950D4 41 81 00 0C */ bgt lbl_80299480
+/* 80299478 002950D8 38 00 00 00 */ li r0, 0
+/* 8029947C 002950DC 48 00 00 20 */ b lbl_8029949C
+lbl_80299480:
+/* 80299480 002950E0 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299484 002950E4 41 80 00 0C */ blt lbl_80299490
+/* 80299488 002950E8 38 1D FF 64 */ addi r0, r29, -156
+/* 8029948C 002950EC 48 00 00 10 */ b lbl_8029949C
+lbl_80299490:
+/* 80299490 002950F0 54 00 08 3C */ slwi r0, r0, 1
+/* 80299494 002950F4 7C FE 02 14 */ add r7, r30, r0
+/* 80299498 002950F8 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029949C:
+/* 8029949C 002950FC B0 05 00 42 */ sth r0, 0x42(r5)
+/* 802994A0 00295100 80 E5 00 20 */ lwz r7, 0x20(r5)
+/* 802994A4 00295104 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 802994A8 00295108 7C 07 02 14 */ add r0, r7, r0
+/* 802994AC 0029510C 2C 00 FC 78 */ cmpwi r0, -904
+/* 802994B0 00295110 41 81 00 0C */ bgt lbl_802994BC
+/* 802994B4 00295114 38 00 00 00 */ li r0, 0
+/* 802994B8 00295118 48 00 00 20 */ b lbl_802994D8
+lbl_802994BC:
+/* 802994BC 0029511C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 802994C0 00295120 41 80 00 0C */ blt lbl_802994CC
+/* 802994C4 00295124 38 1D FF 64 */ addi r0, r29, -156
+/* 802994C8 00295128 48 00 00 10 */ b lbl_802994D8
+lbl_802994CC:
+/* 802994CC 0029512C 54 00 08 3C */ slwi r0, r0, 1
+/* 802994D0 00295130 7C FE 02 14 */ add r7, r30, r0
+/* 802994D4 00295134 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802994D8:
+/* 802994D8 00295138 B0 05 00 46 */ sth r0, 0x46(r5)
+/* 802994DC 0029513C 80 E5 00 20 */ lwz r7, 0x20(r5)
+/* 802994E0 00295140 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 802994E4 00295144 7C E7 02 14 */ add r7, r7, r0
+/* 802994E8 00295148 38 E7 FF E2 */ addi r7, r7, -30
+/* 802994EC 0029514C 2C 07 FC 78 */ cmpwi r7, -904
+/* 802994F0 00295150 41 81 00 0C */ bgt lbl_802994FC
+/* 802994F4 00295154 38 00 00 00 */ li r0, 0
+/* 802994F8 00295158 48 00 00 20 */ b lbl_80299518
+lbl_802994FC:
+/* 802994FC 0029515C 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299500 00295160 41 80 00 0C */ blt lbl_8029950C
+/* 80299504 00295164 38 1D FF 64 */ addi r0, r29, -156
+/* 80299508 00295168 48 00 00 10 */ b lbl_80299518
+lbl_8029950C:
+/* 8029950C 0029516C 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299510 00295170 7C FE 02 14 */ add r7, r30, r0
+/* 80299514 00295174 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299518:
+/* 80299518 00295178 B0 05 00 4A */ sth r0, 0x4a(r5)
+/* 8029951C 0029517C 80 05 00 04 */ lwz r0, 4(r5)
+/* 80299520 00295180 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80299524 00295184 41 82 00 C0 */ beq lbl_802995E4
+/* 80299528 00295188 80 E5 00 0C */ lwz r7, 0xc(r5)
+/* 8029952C 0029518C 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 80299530 00295190 7C 07 02 14 */ add r0, r7, r0
+/* 80299534 00295194 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299538 00295198 41 81 00 0C */ bgt lbl_80299544
+/* 8029953C 0029519C 38 00 00 00 */ li r0, 0
+/* 80299540 002951A0 48 00 00 20 */ b lbl_80299560
+lbl_80299544:
+/* 80299544 002951A4 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299548 002951A8 41 80 00 0C */ blt lbl_80299554
+/* 8029954C 002951AC 38 1D FF 64 */ addi r0, r29, -156
+/* 80299550 002951B0 48 00 00 10 */ b lbl_80299560
+lbl_80299554:
+/* 80299554 002951B4 54 00 08 3C */ slwi r0, r0, 1
+/* 80299558 002951B8 7C FE 02 14 */ add r7, r30, r0
+/* 8029955C 002951BC A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299560:
+/* 80299560 002951C0 B0 05 00 4E */ sth r0, 0x4e(r5)
+/* 80299564 002951C4 80 E5 00 0C */ lwz r7, 0xc(r5)
+/* 80299568 002951C8 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 8029956C 002951CC 7C 07 02 14 */ add r0, r7, r0
+/* 80299570 002951D0 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299574 002951D4 41 81 00 0C */ bgt lbl_80299580
+/* 80299578 002951D8 38 00 00 00 */ li r0, 0
+/* 8029957C 002951DC 48 00 00 20 */ b lbl_8029959C
+lbl_80299580:
+/* 80299580 002951E0 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299584 002951E4 41 80 00 0C */ blt lbl_80299590
+/* 80299588 002951E8 38 1D FF 64 */ addi r0, r29, -156
+/* 8029958C 002951EC 48 00 00 10 */ b lbl_8029959C
+lbl_80299590:
+/* 80299590 002951F0 54 00 08 3C */ slwi r0, r0, 1
+/* 80299594 002951F4 7C FE 02 14 */ add r7, r30, r0
+/* 80299598 002951F8 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029959C:
+/* 8029959C 002951FC B0 05 00 52 */ sth r0, 0x52(r5)
+/* 802995A0 00295200 80 E5 00 0C */ lwz r7, 0xc(r5)
+/* 802995A4 00295204 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 802995A8 00295208 7C E7 02 14 */ add r7, r7, r0
+/* 802995AC 0029520C 38 E7 FF E2 */ addi r7, r7, -30
+/* 802995B0 00295210 2C 07 FC 78 */ cmpwi r7, -904
+/* 802995B4 00295214 41 81 00 0C */ bgt lbl_802995C0
+/* 802995B8 00295218 38 00 00 00 */ li r0, 0
+/* 802995BC 0029521C 48 00 00 20 */ b lbl_802995DC
+lbl_802995C0:
+/* 802995C0 00295220 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 802995C4 00295224 41 80 00 0C */ blt lbl_802995D0
+/* 802995C8 00295228 38 1D FF 64 */ addi r0, r29, -156
+/* 802995CC 0029522C 48 00 00 10 */ b lbl_802995DC
+lbl_802995D0:
+/* 802995D0 00295230 54 E0 08 3C */ slwi r0, r7, 1
+/* 802995D4 00295234 7C FE 02 14 */ add r7, r30, r0
+/* 802995D8 00295238 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802995DC:
+/* 802995DC 0029523C B0 05 00 56 */ sth r0, 0x56(r5)
+/* 802995E0 00295240 48 00 00 D4 */ b lbl_802996B4
+lbl_802995E4:
+/* 802995E4 00295244 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 802995E8 00295248 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 802995EC 0029524C 80 E5 00 0C */ lwz r7, 0xc(r5)
+/* 802995F0 00295250 7C 08 02 14 */ add r0, r8, r0
+/* 802995F4 00295254 7C 07 02 14 */ add r0, r7, r0
+/* 802995F8 00295258 2C 00 FC 78 */ cmpwi r0, -904
+/* 802995FC 0029525C 41 81 00 0C */ bgt lbl_80299608
+/* 80299600 00295260 38 00 00 00 */ li r0, 0
+/* 80299604 00295264 48 00 00 20 */ b lbl_80299624
+lbl_80299608:
+/* 80299608 00295268 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029960C 0029526C 41 80 00 0C */ blt lbl_80299618
+/* 80299610 00295270 38 1D FF 64 */ addi r0, r29, -156
+/* 80299614 00295274 48 00 00 10 */ b lbl_80299624
+lbl_80299618:
+/* 80299618 00295278 54 00 08 3C */ slwi r0, r0, 1
+/* 8029961C 0029527C 7C FE 02 14 */ add r7, r30, r0
+/* 80299620 00295280 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299624:
+/* 80299624 00295284 B0 05 00 4E */ sth r0, 0x4e(r5)
+/* 80299628 00295288 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029962C 0029528C 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 80299630 00295290 80 E5 00 0C */ lwz r7, 0xc(r5)
+/* 80299634 00295294 7C 08 02 14 */ add r0, r8, r0
+/* 80299638 00295298 7C 07 02 14 */ add r0, r7, r0
+/* 8029963C 0029529C 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299640 002952A0 41 81 00 0C */ bgt lbl_8029964C
+/* 80299644 002952A4 38 00 00 00 */ li r0, 0
+/* 80299648 002952A8 48 00 00 20 */ b lbl_80299668
+lbl_8029964C:
+/* 8029964C 002952AC 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299650 002952B0 41 80 00 0C */ blt lbl_8029965C
+/* 80299654 002952B4 38 1D FF 64 */ addi r0, r29, -156
+/* 80299658 002952B8 48 00 00 10 */ b lbl_80299668
+lbl_8029965C:
+/* 8029965C 002952BC 54 00 08 3C */ slwi r0, r0, 1
+/* 80299660 002952C0 7C FE 02 14 */ add r7, r30, r0
+/* 80299664 002952C4 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299668:
+/* 80299668 002952C8 B0 05 00 52 */ sth r0, 0x52(r5)
+/* 8029966C 002952CC 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299670 002952D0 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 80299674 002952D4 80 E5 00 30 */ lwz r7, 0x30(r5)
+/* 80299678 002952D8 7C 08 02 14 */ add r0, r8, r0
+/* 8029967C 002952DC 7C E0 3A 14 */ add r7, r0, r7
+/* 80299680 002952E0 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299684 002952E4 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299688 002952E8 41 81 00 0C */ bgt lbl_80299694
+/* 8029968C 002952EC 38 00 00 00 */ li r0, 0
+/* 80299690 002952F0 48 00 00 20 */ b lbl_802996B0
+lbl_80299694:
+/* 80299694 002952F4 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299698 002952F8 41 80 00 0C */ blt lbl_802996A4
+/* 8029969C 002952FC 38 1D FF 64 */ addi r0, r29, -156
+/* 802996A0 00295300 48 00 00 10 */ b lbl_802996B0
+lbl_802996A4:
+/* 802996A4 00295304 54 E0 08 3C */ slwi r0, r7, 1
+/* 802996A8 00295308 7C FE 02 14 */ add r7, r30, r0
+/* 802996AC 0029530C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802996B0:
+/* 802996B0 00295310 B0 05 00 56 */ sth r0, 0x56(r5)
+lbl_802996B4:
+/* 802996B4 00295314 80 05 00 04 */ lwz r0, 4(r5)
+/* 802996B8 00295318 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 802996BC 0029531C 41 82 00 C0 */ beq lbl_8029977C
+/* 802996C0 00295320 80 E5 00 10 */ lwz r7, 0x10(r5)
+/* 802996C4 00295324 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 802996C8 00295328 7C 07 02 14 */ add r0, r7, r0
+/* 802996CC 0029532C 2C 00 FC 78 */ cmpwi r0, -904
+/* 802996D0 00295330 41 81 00 0C */ bgt lbl_802996DC
+/* 802996D4 00295334 38 00 00 00 */ li r0, 0
+/* 802996D8 00295338 48 00 00 20 */ b lbl_802996F8
+lbl_802996DC:
+/* 802996DC 0029533C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 802996E0 00295340 41 80 00 0C */ blt lbl_802996EC
+/* 802996E4 00295344 38 1D FF 64 */ addi r0, r29, -156
+/* 802996E8 00295348 48 00 00 10 */ b lbl_802996F8
+lbl_802996EC:
+/* 802996EC 0029534C 54 00 08 3C */ slwi r0, r0, 1
+/* 802996F0 00295350 7C FE 02 14 */ add r7, r30, r0
+/* 802996F4 00295354 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802996F8:
+/* 802996F8 00295358 B0 05 00 5A */ sth r0, 0x5a(r5)
+/* 802996FC 0029535C 80 E5 00 10 */ lwz r7, 0x10(r5)
+/* 80299700 00295360 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 80299704 00295364 7C 07 02 14 */ add r0, r7, r0
+/* 80299708 00295368 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029970C 0029536C 41 81 00 0C */ bgt lbl_80299718
+/* 80299710 00295370 38 00 00 00 */ li r0, 0
+/* 80299714 00295374 48 00 00 20 */ b lbl_80299734
+lbl_80299718:
+/* 80299718 00295378 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029971C 0029537C 41 80 00 0C */ blt lbl_80299728
+/* 80299720 00295380 38 1D FF 64 */ addi r0, r29, -156
+/* 80299724 00295384 48 00 00 10 */ b lbl_80299734
+lbl_80299728:
+/* 80299728 00295388 54 00 08 3C */ slwi r0, r0, 1
+/* 8029972C 0029538C 7C FE 02 14 */ add r7, r30, r0
+/* 80299730 00295390 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299734:
+/* 80299734 00295394 B0 05 00 5E */ sth r0, 0x5e(r5)
+/* 80299738 00295398 80 E5 00 10 */ lwz r7, 0x10(r5)
+/* 8029973C 0029539C 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 80299740 002953A0 7C E7 02 14 */ add r7, r7, r0
+/* 80299744 002953A4 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299748 002953A8 2C 07 FC 78 */ cmpwi r7, -904
+/* 8029974C 002953AC 41 81 00 0C */ bgt lbl_80299758
+/* 80299750 002953B0 38 00 00 00 */ li r0, 0
+/* 80299754 002953B4 48 00 00 20 */ b lbl_80299774
+lbl_80299758:
+/* 80299758 002953B8 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 8029975C 002953BC 41 80 00 0C */ blt lbl_80299768
+/* 80299760 002953C0 38 1D FF 64 */ addi r0, r29, -156
+/* 80299764 002953C4 48 00 00 10 */ b lbl_80299774
+lbl_80299768:
+/* 80299768 002953C8 54 E0 08 3C */ slwi r0, r7, 1
+/* 8029976C 002953CC 7C FE 02 14 */ add r7, r30, r0
+/* 80299770 002953D0 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299774:
+/* 80299774 002953D4 B0 05 00 62 */ sth r0, 0x62(r5)
+/* 80299778 002953D8 48 00 00 D4 */ b lbl_8029984C
+lbl_8029977C:
+/* 8029977C 002953DC 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299780 002953E0 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 80299784 002953E4 80 E5 00 10 */ lwz r7, 0x10(r5)
+/* 80299788 002953E8 7C 08 02 14 */ add r0, r8, r0
+/* 8029978C 002953EC 7C 07 02 14 */ add r0, r7, r0
+/* 80299790 002953F0 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299794 002953F4 41 81 00 0C */ bgt lbl_802997A0
+/* 80299798 002953F8 38 00 00 00 */ li r0, 0
+/* 8029979C 002953FC 48 00 00 20 */ b lbl_802997BC
+lbl_802997A0:
+/* 802997A0 00295400 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 802997A4 00295404 41 80 00 0C */ blt lbl_802997B0
+/* 802997A8 00295408 38 1D FF 64 */ addi r0, r29, -156
+/* 802997AC 0029540C 48 00 00 10 */ b lbl_802997BC
+lbl_802997B0:
+/* 802997B0 00295410 54 00 08 3C */ slwi r0, r0, 1
+/* 802997B4 00295414 7C FE 02 14 */ add r7, r30, r0
+/* 802997B8 00295418 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802997BC:
+/* 802997BC 0029541C B0 05 00 5A */ sth r0, 0x5a(r5)
+/* 802997C0 00295420 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 802997C4 00295424 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 802997C8 00295428 80 E5 00 10 */ lwz r7, 0x10(r5)
+/* 802997CC 0029542C 7C 08 02 14 */ add r0, r8, r0
+/* 802997D0 00295430 7C 07 02 14 */ add r0, r7, r0
+/* 802997D4 00295434 2C 00 FC 78 */ cmpwi r0, -904
+/* 802997D8 00295438 41 81 00 0C */ bgt lbl_802997E4
+/* 802997DC 0029543C 38 00 00 00 */ li r0, 0
+/* 802997E0 00295440 48 00 00 20 */ b lbl_80299800
+lbl_802997E4:
+/* 802997E4 00295444 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 802997E8 00295448 41 80 00 0C */ blt lbl_802997F4
+/* 802997EC 0029544C 38 1D FF 64 */ addi r0, r29, -156
+/* 802997F0 00295450 48 00 00 10 */ b lbl_80299800
+lbl_802997F4:
+/* 802997F4 00295454 54 00 08 3C */ slwi r0, r0, 1
+/* 802997F8 00295458 7C FE 02 14 */ add r7, r30, r0
+/* 802997FC 0029545C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299800:
+/* 80299800 00295460 B0 05 00 5E */ sth r0, 0x5e(r5)
+/* 80299804 00295464 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299808 00295468 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029980C 0029546C 80 E5 00 30 */ lwz r7, 0x30(r5)
+/* 80299810 00295470 7C 08 02 14 */ add r0, r8, r0
+/* 80299814 00295474 7C E0 3A 14 */ add r7, r0, r7
+/* 80299818 00295478 38 E7 FF E2 */ addi r7, r7, -30
+/* 8029981C 0029547C 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299820 00295480 41 81 00 0C */ bgt lbl_8029982C
+/* 80299824 00295484 38 00 00 00 */ li r0, 0
+/* 80299828 00295488 48 00 00 20 */ b lbl_80299848
+lbl_8029982C:
+/* 8029982C 0029548C 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299830 00295490 41 80 00 0C */ blt lbl_8029983C
+/* 80299834 00295494 38 1D FF 64 */ addi r0, r29, -156
+/* 80299838 00295498 48 00 00 10 */ b lbl_80299848
+lbl_8029983C:
+/* 8029983C 0029549C 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299840 002954A0 7C FE 02 14 */ add r7, r30, r0
+/* 80299844 002954A4 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299848:
+/* 80299848 002954A8 B0 05 00 62 */ sth r0, 0x62(r5)
+lbl_8029984C:
+/* 8029984C 002954AC 80 05 00 04 */ lwz r0, 4(r5)
+/* 80299850 002954B0 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 80299854 002954B4 41 82 00 C0 */ beq lbl_80299914
+/* 80299858 002954B8 80 E5 00 14 */ lwz r7, 0x14(r5)
+/* 8029985C 002954BC 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 80299860 002954C0 7C 07 02 14 */ add r0, r7, r0
+/* 80299864 002954C4 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299868 002954C8 41 81 00 0C */ bgt lbl_80299874
+/* 8029986C 002954CC 38 00 00 00 */ li r0, 0
+/* 80299870 002954D0 48 00 00 20 */ b lbl_80299890
+lbl_80299874:
+/* 80299874 002954D4 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299878 002954D8 41 80 00 0C */ blt lbl_80299884
+/* 8029987C 002954DC 38 1D FF 64 */ addi r0, r29, -156
+/* 80299880 002954E0 48 00 00 10 */ b lbl_80299890
+lbl_80299884:
+/* 80299884 002954E4 54 00 08 3C */ slwi r0, r0, 1
+/* 80299888 002954E8 7C FE 02 14 */ add r7, r30, r0
+/* 8029988C 002954EC A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299890:
+/* 80299890 002954F0 B0 05 00 66 */ sth r0, 0x66(r5)
+/* 80299894 002954F4 80 E5 00 14 */ lwz r7, 0x14(r5)
+/* 80299898 002954F8 80 05 00 2C */ lwz r0, 0x2c(r5)
+/* 8029989C 002954FC 7C 07 02 14 */ add r0, r7, r0
+/* 802998A0 00295500 2C 00 FC 78 */ cmpwi r0, -904
+/* 802998A4 00295504 41 81 00 0C */ bgt lbl_802998B0
+/* 802998A8 00295508 38 00 00 00 */ li r0, 0
+/* 802998AC 0029550C 48 00 00 20 */ b lbl_802998CC
+lbl_802998B0:
+/* 802998B0 00295510 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 802998B4 00295514 41 80 00 0C */ blt lbl_802998C0
+/* 802998B8 00295518 38 1D FF 64 */ addi r0, r29, -156
+/* 802998BC 0029551C 48 00 00 10 */ b lbl_802998CC
+lbl_802998C0:
+/* 802998C0 00295520 54 00 08 3C */ slwi r0, r0, 1
+/* 802998C4 00295524 7C FE 02 14 */ add r7, r30, r0
+/* 802998C8 00295528 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802998CC:
+/* 802998CC 0029552C B0 05 00 6A */ sth r0, 0x6a(r5)
+/* 802998D0 00295530 80 E5 00 14 */ lwz r7, 0x14(r5)
+/* 802998D4 00295534 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 802998D8 00295538 7C E7 02 14 */ add r7, r7, r0
+/* 802998DC 0029553C 38 E7 FF E2 */ addi r7, r7, -30
+/* 802998E0 00295540 2C 07 FC 78 */ cmpwi r7, -904
+/* 802998E4 00295544 41 81 00 0C */ bgt lbl_802998F0
+/* 802998E8 00295548 38 00 00 00 */ li r0, 0
+/* 802998EC 0029554C 48 00 00 20 */ b lbl_8029990C
+lbl_802998F0:
+/* 802998F0 00295550 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 802998F4 00295554 41 80 00 0C */ blt lbl_80299900
+/* 802998F8 00295558 38 1D FF 64 */ addi r0, r29, -156
+/* 802998FC 0029555C 48 00 00 10 */ b lbl_8029990C
+lbl_80299900:
+/* 80299900 00295560 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299904 00295564 7C FE 02 14 */ add r7, r30, r0
+/* 80299908 00295568 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029990C:
+/* 8029990C 0029556C B0 05 00 6E */ sth r0, 0x6e(r5)
+/* 80299910 00295570 48 00 0C 80 */ b lbl_8029A590
+lbl_80299914:
+/* 80299914 00295574 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299918 00295578 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 8029991C 0029557C 80 E5 00 14 */ lwz r7, 0x14(r5)
+/* 80299920 00295580 7C 08 02 14 */ add r0, r8, r0
+/* 80299924 00295584 7C 07 02 14 */ add r0, r7, r0
+/* 80299928 00295588 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029992C 0029558C 41 81 00 0C */ bgt lbl_80299938
+/* 80299930 00295590 38 00 00 00 */ li r0, 0
+/* 80299934 00295594 48 00 00 20 */ b lbl_80299954
+lbl_80299938:
+/* 80299938 00295598 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029993C 0029559C 41 80 00 0C */ blt lbl_80299948
+/* 80299940 002955A0 38 1D FF 64 */ addi r0, r29, -156
+/* 80299944 002955A4 48 00 00 10 */ b lbl_80299954
+lbl_80299948:
+/* 80299948 002955A8 54 00 08 3C */ slwi r0, r0, 1
+/* 8029994C 002955AC 7C FE 02 14 */ add r7, r30, r0
+/* 80299950 002955B0 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299954:
+/* 80299954 002955B4 B0 05 00 66 */ sth r0, 0x66(r5)
+/* 80299958 002955B8 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029995C 002955BC 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 80299960 002955C0 80 E5 00 14 */ lwz r7, 0x14(r5)
+/* 80299964 002955C4 7C 08 02 14 */ add r0, r8, r0
+/* 80299968 002955C8 7C 07 02 14 */ add r0, r7, r0
+/* 8029996C 002955CC 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299970 002955D0 41 81 00 0C */ bgt lbl_8029997C
+/* 80299974 002955D4 38 00 00 00 */ li r0, 0
+/* 80299978 002955D8 48 00 00 20 */ b lbl_80299998
+lbl_8029997C:
+/* 8029997C 002955DC 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299980 002955E0 41 80 00 0C */ blt lbl_8029998C
+/* 80299984 002955E4 38 1D FF 64 */ addi r0, r29, -156
+/* 80299988 002955E8 48 00 00 10 */ b lbl_80299998
+lbl_8029998C:
+/* 8029998C 002955EC 54 00 08 3C */ slwi r0, r0, 1
+/* 80299990 002955F0 7C FE 02 14 */ add r7, r30, r0
+/* 80299994 002955F4 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299998:
+/* 80299998 002955F8 B0 05 00 6A */ sth r0, 0x6a(r5)
+/* 8029999C 002955FC 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 802999A0 00295600 80 05 00 14 */ lwz r0, 0x14(r5)
+/* 802999A4 00295604 80 E5 00 30 */ lwz r7, 0x30(r5)
+/* 802999A8 00295608 7C 08 02 14 */ add r0, r8, r0
+/* 802999AC 0029560C 7C E0 3A 14 */ add r7, r0, r7
+/* 802999B0 00295610 38 E7 FF E2 */ addi r7, r7, -30
+/* 802999B4 00295614 2C 07 FC 78 */ cmpwi r7, -904
+/* 802999B8 00295618 41 81 00 0C */ bgt lbl_802999C4
+/* 802999BC 0029561C 38 00 00 00 */ li r0, 0
+/* 802999C0 00295620 48 00 00 20 */ b lbl_802999E0
+lbl_802999C4:
+/* 802999C4 00295624 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 802999C8 00295628 41 80 00 0C */ blt lbl_802999D4
+/* 802999CC 0029562C 38 1D FF 64 */ addi r0, r29, -156
+/* 802999D0 00295630 48 00 00 10 */ b lbl_802999E0
+lbl_802999D4:
+/* 802999D4 00295634 54 E0 08 3C */ slwi r0, r7, 1
+/* 802999D8 00295638 7C FE 02 14 */ add r7, r30, r0
+/* 802999DC 0029563C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_802999E0:
+/* 802999E0 00295640 B0 05 00 6E */ sth r0, 0x6e(r5)
+/* 802999E4 00295644 48 00 0B AC */ b lbl_8029A590
+lbl_802999E8:
+/* 802999E8 00295648 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 802999EC 0029564C 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 802999F0 00295650 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 802999F4 00295654 7C 08 02 14 */ add r0, r8, r0
+/* 802999F8 00295658 7C 07 02 14 */ add r0, r7, r0
+/* 802999FC 0029565C 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299A00 00295660 41 81 00 0C */ bgt lbl_80299A0C
+/* 80299A04 00295664 38 00 00 00 */ li r0, 0
+/* 80299A08 00295668 48 00 00 20 */ b lbl_80299A28
+lbl_80299A0C:
+/* 80299A0C 0029566C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299A10 00295670 41 80 00 0C */ blt lbl_80299A1C
+/* 80299A14 00295674 38 1D FF 64 */ addi r0, r29, -156
+/* 80299A18 00295678 48 00 00 10 */ b lbl_80299A28
+lbl_80299A1C:
+/* 80299A1C 0029567C 54 00 08 3C */ slwi r0, r0, 1
+/* 80299A20 00295680 7C FE 02 14 */ add r7, r30, r0
+/* 80299A24 00295684 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299A28:
+/* 80299A28 00295688 B0 05 00 42 */ sth r0, 0x42(r5)
+/* 80299A2C 0029568C 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299A30 00295690 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 80299A34 00295694 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299A38 00295698 7C 08 02 14 */ add r0, r8, r0
+/* 80299A3C 0029569C 7C 07 02 14 */ add r0, r7, r0
+/* 80299A40 002956A0 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299A44 002956A4 41 81 00 0C */ bgt lbl_80299A50
+/* 80299A48 002956A8 38 00 00 00 */ li r0, 0
+/* 80299A4C 002956AC 48 00 00 20 */ b lbl_80299A6C
+lbl_80299A50:
+/* 80299A50 002956B0 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299A54 002956B4 41 80 00 0C */ blt lbl_80299A60
+/* 80299A58 002956B8 38 1D FF 64 */ addi r0, r29, -156
+/* 80299A5C 002956BC 48 00 00 10 */ b lbl_80299A6C
+lbl_80299A60:
+/* 80299A60 002956C0 54 00 08 3C */ slwi r0, r0, 1
+/* 80299A64 002956C4 7C FE 02 14 */ add r7, r30, r0
+/* 80299A68 002956C8 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299A6C:
+/* 80299A6C 002956CC B0 05 00 46 */ sth r0, 0x46(r5)
+/* 80299A70 002956D0 80 E5 00 20 */ lwz r7, 0x20(r5)
+/* 80299A74 002956D4 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 80299A78 002956D8 7C E7 02 14 */ add r7, r7, r0
+/* 80299A7C 002956DC 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299A80 002956E0 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299A84 002956E4 41 81 00 0C */ bgt lbl_80299A90
+/* 80299A88 002956E8 38 00 00 00 */ li r0, 0
+/* 80299A8C 002956EC 48 00 00 20 */ b lbl_80299AAC
+lbl_80299A90:
+/* 80299A90 002956F0 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299A94 002956F4 41 80 00 0C */ blt lbl_80299AA0
+/* 80299A98 002956F8 38 1D FF 64 */ addi r0, r29, -156
+/* 80299A9C 002956FC 48 00 00 10 */ b lbl_80299AAC
+lbl_80299AA0:
+/* 80299AA0 00295700 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299AA4 00295704 7C FE 02 14 */ add r7, r30, r0
+/* 80299AA8 00295708 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299AAC:
+/* 80299AAC 0029570C B0 05 00 4A */ sth r0, 0x4a(r5)
+/* 80299AB0 00295710 80 05 00 04 */ lwz r0, 4(r5)
+/* 80299AB4 00295714 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 80299AB8 00295718 41 82 00 D0 */ beq lbl_80299B88
+/* 80299ABC 0029571C 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299AC0 00295720 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 80299AC4 00295724 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299AC8 00295728 7C 08 02 14 */ add r0, r8, r0
+/* 80299ACC 0029572C 7C 07 02 14 */ add r0, r7, r0
+/* 80299AD0 00295730 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299AD4 00295734 41 81 00 0C */ bgt lbl_80299AE0
+/* 80299AD8 00295738 38 00 00 00 */ li r0, 0
+/* 80299ADC 0029573C 48 00 00 20 */ b lbl_80299AFC
+lbl_80299AE0:
+/* 80299AE0 00295740 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299AE4 00295744 41 80 00 0C */ blt lbl_80299AF0
+/* 80299AE8 00295748 38 1D FF 64 */ addi r0, r29, -156
+/* 80299AEC 0029574C 48 00 00 10 */ b lbl_80299AFC
+lbl_80299AF0:
+/* 80299AF0 00295750 54 00 08 3C */ slwi r0, r0, 1
+/* 80299AF4 00295754 7C FE 02 14 */ add r7, r30, r0
+/* 80299AF8 00295758 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299AFC:
+/* 80299AFC 0029575C B0 05 00 4E */ sth r0, 0x4e(r5)
+/* 80299B00 00295760 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299B04 00295764 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 80299B08 00295768 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299B0C 0029576C 7C 08 02 14 */ add r0, r8, r0
+/* 80299B10 00295770 7C 07 02 14 */ add r0, r7, r0
+/* 80299B14 00295774 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299B18 00295778 41 81 00 0C */ bgt lbl_80299B24
+/* 80299B1C 0029577C 38 00 00 00 */ li r0, 0
+/* 80299B20 00295780 48 00 00 20 */ b lbl_80299B40
+lbl_80299B24:
+/* 80299B24 00295784 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299B28 00295788 41 80 00 0C */ blt lbl_80299B34
+/* 80299B2C 0029578C 38 1D FF 64 */ addi r0, r29, -156
+/* 80299B30 00295790 48 00 00 10 */ b lbl_80299B40
+lbl_80299B34:
+/* 80299B34 00295794 54 00 08 3C */ slwi r0, r0, 1
+/* 80299B38 00295798 7C FE 02 14 */ add r7, r30, r0
+/* 80299B3C 0029579C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299B40:
+/* 80299B40 002957A0 B0 05 00 52 */ sth r0, 0x52(r5)
+/* 80299B44 002957A4 80 E5 00 0C */ lwz r7, 0xc(r5)
+/* 80299B48 002957A8 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 80299B4C 002957AC 7C E7 02 14 */ add r7, r7, r0
+/* 80299B50 002957B0 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299B54 002957B4 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299B58 002957B8 41 81 00 0C */ bgt lbl_80299B64
+/* 80299B5C 002957BC 38 00 00 00 */ li r0, 0
+/* 80299B60 002957C0 48 00 00 20 */ b lbl_80299B80
+lbl_80299B64:
+/* 80299B64 002957C4 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299B68 002957C8 41 80 00 0C */ blt lbl_80299B74
+/* 80299B6C 002957CC 38 1D FF 64 */ addi r0, r29, -156
+/* 80299B70 002957D0 48 00 00 10 */ b lbl_80299B80
+lbl_80299B74:
+/* 80299B74 002957D4 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299B78 002957D8 7C FE 02 14 */ add r7, r30, r0
+/* 80299B7C 002957DC A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299B80:
+/* 80299B80 002957E0 B0 05 00 56 */ sth r0, 0x56(r5)
+/* 80299B84 002957E4 48 00 00 E4 */ b lbl_80299C68
+lbl_80299B88:
+/* 80299B88 002957E8 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 80299B8C 002957EC 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299B90 002957F0 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299B94 002957F4 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 80299B98 002957F8 7C E9 3A 14 */ add r7, r9, r7
+/* 80299B9C 002957FC 7C 08 02 14 */ add r0, r8, r0
+/* 80299BA0 00295800 7C 07 02 14 */ add r0, r7, r0
+/* 80299BA4 00295804 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299BA8 00295808 41 81 00 0C */ bgt lbl_80299BB4
+/* 80299BAC 0029580C 38 00 00 00 */ li r0, 0
+/* 80299BB0 00295810 48 00 00 20 */ b lbl_80299BD0
+lbl_80299BB4:
+/* 80299BB4 00295814 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299BB8 00295818 41 80 00 0C */ blt lbl_80299BC4
+/* 80299BBC 0029581C 38 1D FF 64 */ addi r0, r29, -156
+/* 80299BC0 00295820 48 00 00 10 */ b lbl_80299BD0
+lbl_80299BC4:
+/* 80299BC4 00295824 54 00 08 3C */ slwi r0, r0, 1
+/* 80299BC8 00295828 7C FE 02 14 */ add r7, r30, r0
+/* 80299BCC 0029582C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299BD0:
+/* 80299BD0 00295830 B0 05 00 4E */ sth r0, 0x4e(r5)
+/* 80299BD4 00295834 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 80299BD8 00295838 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299BDC 0029583C 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299BE0 00295840 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 80299BE4 00295844 7C E9 3A 14 */ add r7, r9, r7
+/* 80299BE8 00295848 7C 08 02 14 */ add r0, r8, r0
+/* 80299BEC 0029584C 7C 07 02 14 */ add r0, r7, r0
+/* 80299BF0 00295850 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299BF4 00295854 41 81 00 0C */ bgt lbl_80299C00
+/* 80299BF8 00295858 38 00 00 00 */ li r0, 0
+/* 80299BFC 0029585C 48 00 00 20 */ b lbl_80299C1C
+lbl_80299C00:
+/* 80299C00 00295860 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299C04 00295864 41 80 00 0C */ blt lbl_80299C10
+/* 80299C08 00295868 38 1D FF 64 */ addi r0, r29, -156
+/* 80299C0C 0029586C 48 00 00 10 */ b lbl_80299C1C
+lbl_80299C10:
+/* 80299C10 00295870 54 00 08 3C */ slwi r0, r0, 1
+/* 80299C14 00295874 7C FE 02 14 */ add r7, r30, r0
+/* 80299C18 00295878 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299C1C:
+/* 80299C1C 0029587C B0 05 00 52 */ sth r0, 0x52(r5)
+/* 80299C20 00295880 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299C24 00295884 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 80299C28 00295888 80 E5 00 30 */ lwz r7, 0x30(r5)
+/* 80299C2C 0029588C 7C 08 02 14 */ add r0, r8, r0
+/* 80299C30 00295890 7C E0 3A 14 */ add r7, r0, r7
+/* 80299C34 00295894 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299C38 00295898 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299C3C 0029589C 41 81 00 0C */ bgt lbl_80299C48
+/* 80299C40 002958A0 38 00 00 00 */ li r0, 0
+/* 80299C44 002958A4 48 00 00 20 */ b lbl_80299C64
+lbl_80299C48:
+/* 80299C48 002958A8 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299C4C 002958AC 41 80 00 0C */ blt lbl_80299C58
+/* 80299C50 002958B0 38 1D FF 64 */ addi r0, r29, -156
+/* 80299C54 002958B4 48 00 00 10 */ b lbl_80299C64
+lbl_80299C58:
+/* 80299C58 002958B8 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299C5C 002958BC 7C FE 02 14 */ add r7, r30, r0
+/* 80299C60 002958C0 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299C64:
+/* 80299C64 002958C4 B0 05 00 56 */ sth r0, 0x56(r5)
+lbl_80299C68:
+/* 80299C68 002958C8 80 05 00 04 */ lwz r0, 4(r5)
+/* 80299C6C 002958CC 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 80299C70 002958D0 41 82 00 D0 */ beq lbl_80299D40
+/* 80299C74 002958D4 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299C78 002958D8 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 80299C7C 002958DC 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299C80 002958E0 7C 08 02 14 */ add r0, r8, r0
+/* 80299C84 002958E4 7C 07 02 14 */ add r0, r7, r0
+/* 80299C88 002958E8 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299C8C 002958EC 41 81 00 0C */ bgt lbl_80299C98
+/* 80299C90 002958F0 38 00 00 00 */ li r0, 0
+/* 80299C94 002958F4 48 00 00 20 */ b lbl_80299CB4
+lbl_80299C98:
+/* 80299C98 002958F8 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299C9C 002958FC 41 80 00 0C */ blt lbl_80299CA8
+/* 80299CA0 00295900 38 1D FF 64 */ addi r0, r29, -156
+/* 80299CA4 00295904 48 00 00 10 */ b lbl_80299CB4
+lbl_80299CA8:
+/* 80299CA8 00295908 54 00 08 3C */ slwi r0, r0, 1
+/* 80299CAC 0029590C 7C FE 02 14 */ add r7, r30, r0
+/* 80299CB0 00295910 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299CB4:
+/* 80299CB4 00295914 B0 05 00 5A */ sth r0, 0x5a(r5)
+/* 80299CB8 00295918 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299CBC 0029591C 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 80299CC0 00295920 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299CC4 00295924 7C 08 02 14 */ add r0, r8, r0
+/* 80299CC8 00295928 7C 07 02 14 */ add r0, r7, r0
+/* 80299CCC 0029592C 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299CD0 00295930 41 81 00 0C */ bgt lbl_80299CDC
+/* 80299CD4 00295934 38 00 00 00 */ li r0, 0
+/* 80299CD8 00295938 48 00 00 20 */ b lbl_80299CF8
+lbl_80299CDC:
+/* 80299CDC 0029593C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299CE0 00295940 41 80 00 0C */ blt lbl_80299CEC
+/* 80299CE4 00295944 38 1D FF 64 */ addi r0, r29, -156
+/* 80299CE8 00295948 48 00 00 10 */ b lbl_80299CF8
+lbl_80299CEC:
+/* 80299CEC 0029594C 54 00 08 3C */ slwi r0, r0, 1
+/* 80299CF0 00295950 7C FE 02 14 */ add r7, r30, r0
+/* 80299CF4 00295954 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299CF8:
+/* 80299CF8 00295958 B0 05 00 5E */ sth r0, 0x5e(r5)
+/* 80299CFC 0029595C 80 E5 00 10 */ lwz r7, 0x10(r5)
+/* 80299D00 00295960 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 80299D04 00295964 7C E7 02 14 */ add r7, r7, r0
+/* 80299D08 00295968 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299D0C 0029596C 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299D10 00295970 41 81 00 0C */ bgt lbl_80299D1C
+/* 80299D14 00295974 38 00 00 00 */ li r0, 0
+/* 80299D18 00295978 48 00 00 20 */ b lbl_80299D38
+lbl_80299D1C:
+/* 80299D1C 0029597C 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299D20 00295980 41 80 00 0C */ blt lbl_80299D2C
+/* 80299D24 00295984 38 1D FF 64 */ addi r0, r29, -156
+/* 80299D28 00295988 48 00 00 10 */ b lbl_80299D38
+lbl_80299D2C:
+/* 80299D2C 0029598C 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299D30 00295990 7C FE 02 14 */ add r7, r30, r0
+/* 80299D34 00295994 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299D38:
+/* 80299D38 00295998 B0 05 00 62 */ sth r0, 0x62(r5)
+/* 80299D3C 0029599C 48 00 00 E4 */ b lbl_80299E20
+lbl_80299D40:
+/* 80299D40 002959A0 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 80299D44 002959A4 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299D48 002959A8 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299D4C 002959AC 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 80299D50 002959B0 7C E9 3A 14 */ add r7, r9, r7
+/* 80299D54 002959B4 7C 08 02 14 */ add r0, r8, r0
+/* 80299D58 002959B8 7C 07 02 14 */ add r0, r7, r0
+/* 80299D5C 002959BC 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299D60 002959C0 41 81 00 0C */ bgt lbl_80299D6C
+/* 80299D64 002959C4 38 00 00 00 */ li r0, 0
+/* 80299D68 002959C8 48 00 00 20 */ b lbl_80299D88
+lbl_80299D6C:
+/* 80299D6C 002959CC 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299D70 002959D0 41 80 00 0C */ blt lbl_80299D7C
+/* 80299D74 002959D4 38 1D FF 64 */ addi r0, r29, -156
+/* 80299D78 002959D8 48 00 00 10 */ b lbl_80299D88
+lbl_80299D7C:
+/* 80299D7C 002959DC 54 00 08 3C */ slwi r0, r0, 1
+/* 80299D80 002959E0 7C FE 02 14 */ add r7, r30, r0
+/* 80299D84 002959E4 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299D88:
+/* 80299D88 002959E8 B0 05 00 5A */ sth r0, 0x5a(r5)
+/* 80299D8C 002959EC 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 80299D90 002959F0 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299D94 002959F4 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299D98 002959F8 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 80299D9C 002959FC 7C E9 3A 14 */ add r7, r9, r7
+/* 80299DA0 00295A00 7C 08 02 14 */ add r0, r8, r0
+/* 80299DA4 00295A04 7C 07 02 14 */ add r0, r7, r0
+/* 80299DA8 00295A08 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299DAC 00295A0C 41 81 00 0C */ bgt lbl_80299DB8
+/* 80299DB0 00295A10 38 00 00 00 */ li r0, 0
+/* 80299DB4 00295A14 48 00 00 20 */ b lbl_80299DD4
+lbl_80299DB8:
+/* 80299DB8 00295A18 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299DBC 00295A1C 41 80 00 0C */ blt lbl_80299DC8
+/* 80299DC0 00295A20 38 1D FF 64 */ addi r0, r29, -156
+/* 80299DC4 00295A24 48 00 00 10 */ b lbl_80299DD4
+lbl_80299DC8:
+/* 80299DC8 00295A28 54 00 08 3C */ slwi r0, r0, 1
+/* 80299DCC 00295A2C 7C FE 02 14 */ add r7, r30, r0
+/* 80299DD0 00295A30 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299DD4:
+/* 80299DD4 00295A34 B0 05 00 5E */ sth r0, 0x5e(r5)
+/* 80299DD8 00295A38 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299DDC 00295A3C 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 80299DE0 00295A40 80 E5 00 30 */ lwz r7, 0x30(r5)
+/* 80299DE4 00295A44 7C 08 02 14 */ add r0, r8, r0
+/* 80299DE8 00295A48 7C E0 3A 14 */ add r7, r0, r7
+/* 80299DEC 00295A4C 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299DF0 00295A50 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299DF4 00295A54 41 81 00 0C */ bgt lbl_80299E00
+/* 80299DF8 00295A58 38 00 00 00 */ li r0, 0
+/* 80299DFC 00295A5C 48 00 00 20 */ b lbl_80299E1C
+lbl_80299E00:
+/* 80299E00 00295A60 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299E04 00295A64 41 80 00 0C */ blt lbl_80299E10
+/* 80299E08 00295A68 38 1D FF 64 */ addi r0, r29, -156
+/* 80299E0C 00295A6C 48 00 00 10 */ b lbl_80299E1C
+lbl_80299E10:
+/* 80299E10 00295A70 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299E14 00295A74 7C FE 02 14 */ add r7, r30, r0
+/* 80299E18 00295A78 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299E1C:
+/* 80299E1C 00295A7C B0 05 00 62 */ sth r0, 0x62(r5)
+lbl_80299E20:
+/* 80299E20 00295A80 80 05 00 04 */ lwz r0, 4(r5)
+/* 80299E24 00295A84 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 80299E28 00295A88 41 82 00 D0 */ beq lbl_80299EF8
+/* 80299E2C 00295A8C 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299E30 00295A90 80 05 00 14 */ lwz r0, 0x14(r5)
+/* 80299E34 00295A94 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299E38 00295A98 7C 08 02 14 */ add r0, r8, r0
+/* 80299E3C 00295A9C 7C 07 02 14 */ add r0, r7, r0
+/* 80299E40 00295AA0 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299E44 00295AA4 41 81 00 0C */ bgt lbl_80299E50
+/* 80299E48 00295AA8 38 00 00 00 */ li r0, 0
+/* 80299E4C 00295AAC 48 00 00 20 */ b lbl_80299E6C
+lbl_80299E50:
+/* 80299E50 00295AB0 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299E54 00295AB4 41 80 00 0C */ blt lbl_80299E60
+/* 80299E58 00295AB8 38 1D FF 64 */ addi r0, r29, -156
+/* 80299E5C 00295ABC 48 00 00 10 */ b lbl_80299E6C
+lbl_80299E60:
+/* 80299E60 00295AC0 54 00 08 3C */ slwi r0, r0, 1
+/* 80299E64 00295AC4 7C FE 02 14 */ add r7, r30, r0
+/* 80299E68 00295AC8 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299E6C:
+/* 80299E6C 00295ACC B0 05 00 66 */ sth r0, 0x66(r5)
+/* 80299E70 00295AD0 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299E74 00295AD4 80 05 00 14 */ lwz r0, 0x14(r5)
+/* 80299E78 00295AD8 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299E7C 00295ADC 7C 08 02 14 */ add r0, r8, r0
+/* 80299E80 00295AE0 7C 07 02 14 */ add r0, r7, r0
+/* 80299E84 00295AE4 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299E88 00295AE8 41 81 00 0C */ bgt lbl_80299E94
+/* 80299E8C 00295AEC 38 00 00 00 */ li r0, 0
+/* 80299E90 00295AF0 48 00 00 20 */ b lbl_80299EB0
+lbl_80299E94:
+/* 80299E94 00295AF4 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299E98 00295AF8 41 80 00 0C */ blt lbl_80299EA4
+/* 80299E9C 00295AFC 38 1D FF 64 */ addi r0, r29, -156
+/* 80299EA0 00295B00 48 00 00 10 */ b lbl_80299EB0
+lbl_80299EA4:
+/* 80299EA4 00295B04 54 00 08 3C */ slwi r0, r0, 1
+/* 80299EA8 00295B08 7C FE 02 14 */ add r7, r30, r0
+/* 80299EAC 00295B0C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299EB0:
+/* 80299EB0 00295B10 B0 05 00 6A */ sth r0, 0x6a(r5)
+/* 80299EB4 00295B14 80 E5 00 14 */ lwz r7, 0x14(r5)
+/* 80299EB8 00295B18 80 05 00 30 */ lwz r0, 0x30(r5)
+/* 80299EBC 00295B1C 7C E7 02 14 */ add r7, r7, r0
+/* 80299EC0 00295B20 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299EC4 00295B24 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299EC8 00295B28 41 81 00 0C */ bgt lbl_80299ED4
+/* 80299ECC 00295B2C 38 00 00 00 */ li r0, 0
+/* 80299ED0 00295B30 48 00 00 20 */ b lbl_80299EF0
+lbl_80299ED4:
+/* 80299ED4 00295B34 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299ED8 00295B38 41 80 00 0C */ blt lbl_80299EE4
+/* 80299EDC 00295B3C 38 1D FF 64 */ addi r0, r29, -156
+/* 80299EE0 00295B40 48 00 00 10 */ b lbl_80299EF0
+lbl_80299EE4:
+/* 80299EE4 00295B44 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299EE8 00295B48 7C FE 02 14 */ add r7, r30, r0
+/* 80299EEC 00295B4C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299EF0:
+/* 80299EF0 00295B50 B0 05 00 6E */ sth r0, 0x6e(r5)
+/* 80299EF4 00295B54 48 00 06 9C */ b lbl_8029A590
+lbl_80299EF8:
+/* 80299EF8 00295B58 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 80299EFC 00295B5C 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299F00 00295B60 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299F04 00295B64 80 05 00 14 */ lwz r0, 0x14(r5)
+/* 80299F08 00295B68 7C E9 3A 14 */ add r7, r9, r7
+/* 80299F0C 00295B6C 7C 08 02 14 */ add r0, r8, r0
+/* 80299F10 00295B70 7C 07 02 14 */ add r0, r7, r0
+/* 80299F14 00295B74 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299F18 00295B78 41 81 00 0C */ bgt lbl_80299F24
+/* 80299F1C 00295B7C 38 00 00 00 */ li r0, 0
+/* 80299F20 00295B80 48 00 00 20 */ b lbl_80299F40
+lbl_80299F24:
+/* 80299F24 00295B84 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299F28 00295B88 41 80 00 0C */ blt lbl_80299F34
+/* 80299F2C 00295B8C 38 1D FF 64 */ addi r0, r29, -156
+/* 80299F30 00295B90 48 00 00 10 */ b lbl_80299F40
+lbl_80299F34:
+/* 80299F34 00295B94 54 00 08 3C */ slwi r0, r0, 1
+/* 80299F38 00295B98 7C FE 02 14 */ add r7, r30, r0
+/* 80299F3C 00295B9C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299F40:
+/* 80299F40 00295BA0 B0 05 00 66 */ sth r0, 0x66(r5)
+/* 80299F44 00295BA4 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 80299F48 00295BA8 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 80299F4C 00295BAC 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299F50 00295BB0 80 05 00 14 */ lwz r0, 0x14(r5)
+/* 80299F54 00295BB4 7C E9 3A 14 */ add r7, r9, r7
+/* 80299F58 00295BB8 7C 08 02 14 */ add r0, r8, r0
+/* 80299F5C 00295BBC 7C 07 02 14 */ add r0, r7, r0
+/* 80299F60 00295BC0 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299F64 00295BC4 41 81 00 0C */ bgt lbl_80299F70
+/* 80299F68 00295BC8 38 00 00 00 */ li r0, 0
+/* 80299F6C 00295BCC 48 00 00 20 */ b lbl_80299F8C
+lbl_80299F70:
+/* 80299F70 00295BD0 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 80299F74 00295BD4 41 80 00 0C */ blt lbl_80299F80
+/* 80299F78 00295BD8 38 1D FF 64 */ addi r0, r29, -156
+/* 80299F7C 00295BDC 48 00 00 10 */ b lbl_80299F8C
+lbl_80299F80:
+/* 80299F80 00295BE0 54 00 08 3C */ slwi r0, r0, 1
+/* 80299F84 00295BE4 7C FE 02 14 */ add r7, r30, r0
+/* 80299F88 00295BE8 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299F8C:
+/* 80299F8C 00295BEC B0 05 00 6A */ sth r0, 0x6a(r5)
+/* 80299F90 00295BF0 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 80299F94 00295BF4 80 05 00 14 */ lwz r0, 0x14(r5)
+/* 80299F98 00295BF8 80 E5 00 30 */ lwz r7, 0x30(r5)
+/* 80299F9C 00295BFC 7C 08 02 14 */ add r0, r8, r0
+/* 80299FA0 00295C00 7C E0 3A 14 */ add r7, r0, r7
+/* 80299FA4 00295C04 38 E7 FF E2 */ addi r7, r7, -30
+/* 80299FA8 00295C08 2C 07 FC 78 */ cmpwi r7, -904
+/* 80299FAC 00295C0C 41 81 00 0C */ bgt lbl_80299FB8
+/* 80299FB0 00295C10 38 00 00 00 */ li r0, 0
+/* 80299FB4 00295C14 48 00 00 20 */ b lbl_80299FD4
+lbl_80299FB8:
+/* 80299FB8 00295C18 2C 07 00 3C */ cmpwi r7, 0x3c
+/* 80299FBC 00295C1C 41 80 00 0C */ blt lbl_80299FC8
+/* 80299FC0 00295C20 38 1D FF 64 */ addi r0, r29, -156
+/* 80299FC4 00295C24 48 00 00 10 */ b lbl_80299FD4
+lbl_80299FC8:
+/* 80299FC8 00295C28 54 E0 08 3C */ slwi r0, r7, 1
+/* 80299FCC 00295C2C 7C FE 02 14 */ add r7, r30, r0
+/* 80299FD0 00295C30 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_80299FD4:
+/* 80299FD4 00295C34 B0 05 00 6E */ sth r0, 0x6e(r5)
+/* 80299FD8 00295C38 48 00 05 B8 */ b lbl_8029A590
+lbl_80299FDC:
+/* 80299FDC 00295C3C 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 80299FE0 00295C40 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 80299FE4 00295C44 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 80299FE8 00295C48 7C 08 02 14 */ add r0, r8, r0
+/* 80299FEC 00295C4C 7C 07 02 14 */ add r0, r7, r0
+/* 80299FF0 00295C50 2C 00 FC 78 */ cmpwi r0, -904
+/* 80299FF4 00295C54 41 81 00 0C */ bgt lbl_8029A000
+/* 80299FF8 00295C58 38 00 00 00 */ li r0, 0
+/* 80299FFC 00295C5C 48 00 00 20 */ b lbl_8029A01C
+lbl_8029A000:
+/* 8029A000 00295C60 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A004 00295C64 41 80 00 0C */ blt lbl_8029A010
+/* 8029A008 00295C68 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A00C 00295C6C 48 00 00 10 */ b lbl_8029A01C
+lbl_8029A010:
+/* 8029A010 00295C70 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A014 00295C74 7C FE 02 14 */ add r7, r30, r0
+/* 8029A018 00295C78 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A01C:
+/* 8029A01C 00295C7C B0 05 00 42 */ sth r0, 0x42(r5)
+/* 8029A020 00295C80 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029A024 00295C84 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 8029A028 00295C88 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 8029A02C 00295C8C 7C 08 02 14 */ add r0, r8, r0
+/* 8029A030 00295C90 7C 07 02 14 */ add r0, r7, r0
+/* 8029A034 00295C94 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A038 00295C98 41 81 00 0C */ bgt lbl_8029A044
+/* 8029A03C 00295C9C 38 00 00 00 */ li r0, 0
+/* 8029A040 00295CA0 48 00 00 20 */ b lbl_8029A060
+lbl_8029A044:
+/* 8029A044 00295CA4 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A048 00295CA8 41 80 00 0C */ blt lbl_8029A054
+/* 8029A04C 00295CAC 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A050 00295CB0 48 00 00 10 */ b lbl_8029A060
+lbl_8029A054:
+/* 8029A054 00295CB4 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A058 00295CB8 7C FE 02 14 */ add r7, r30, r0
+/* 8029A05C 00295CBC A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A060:
+/* 8029A060 00295CC0 B0 05 00 46 */ sth r0, 0x46(r5)
+/* 8029A064 00295CC4 81 05 00 30 */ lwz r8, 0x30(r5)
+/* 8029A068 00295CC8 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 8029A06C 00295CCC 80 E5 00 34 */ lwz r7, 0x34(r5)
+/* 8029A070 00295CD0 7C 08 02 14 */ add r0, r8, r0
+/* 8029A074 00295CD4 7C 07 02 14 */ add r0, r7, r0
+/* 8029A078 00295CD8 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A07C 00295CDC 41 81 00 0C */ bgt lbl_8029A088
+/* 8029A080 00295CE0 38 00 00 00 */ li r0, 0
+/* 8029A084 00295CE4 48 00 00 20 */ b lbl_8029A0A4
+lbl_8029A088:
+/* 8029A088 00295CE8 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A08C 00295CEC 41 80 00 0C */ blt lbl_8029A098
+/* 8029A090 00295CF0 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A094 00295CF4 48 00 00 10 */ b lbl_8029A0A4
+lbl_8029A098:
+/* 8029A098 00295CF8 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A09C 00295CFC 7C FE 02 14 */ add r7, r30, r0
+/* 8029A0A0 00295D00 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A0A4:
+/* 8029A0A4 00295D04 B0 05 00 4A */ sth r0, 0x4a(r5)
+/* 8029A0A8 00295D08 81 05 00 30 */ lwz r8, 0x30(r5)
+/* 8029A0AC 00295D0C 80 05 00 20 */ lwz r0, 0x20(r5)
+/* 8029A0B0 00295D10 80 E5 00 38 */ lwz r7, 0x38(r5)
+/* 8029A0B4 00295D14 7C 08 02 14 */ add r0, r8, r0
+/* 8029A0B8 00295D18 7C 07 02 14 */ add r0, r7, r0
+/* 8029A0BC 00295D1C 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A0C0 00295D20 41 81 00 0C */ bgt lbl_8029A0CC
+/* 8029A0C4 00295D24 38 00 00 00 */ li r0, 0
+/* 8029A0C8 00295D28 48 00 00 20 */ b lbl_8029A0E8
+lbl_8029A0CC:
+/* 8029A0CC 00295D2C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A0D0 00295D30 41 80 00 0C */ blt lbl_8029A0DC
+/* 8029A0D4 00295D34 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A0D8 00295D38 48 00 00 10 */ b lbl_8029A0E8
+lbl_8029A0DC:
+/* 8029A0DC 00295D3C 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A0E0 00295D40 7C FE 02 14 */ add r7, r30, r0
+/* 8029A0E4 00295D44 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A0E8:
+/* 8029A0E8 00295D48 B0 05 00 66 */ sth r0, 0x66(r5)
+/* 8029A0EC 00295D4C 80 05 00 04 */ lwz r0, 4(r5)
+/* 8029A0F0 00295D50 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 8029A0F4 00295D54 41 82 01 18 */ beq lbl_8029A20C
+/* 8029A0F8 00295D58 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029A0FC 00295D5C 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A100 00295D60 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 8029A104 00295D64 7C 08 02 14 */ add r0, r8, r0
+/* 8029A108 00295D68 7C 07 02 14 */ add r0, r7, r0
+/* 8029A10C 00295D6C 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A110 00295D70 41 81 00 0C */ bgt lbl_8029A11C
+/* 8029A114 00295D74 38 00 00 00 */ li r0, 0
+/* 8029A118 00295D78 48 00 00 20 */ b lbl_8029A138
+lbl_8029A11C:
+/* 8029A11C 00295D7C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A120 00295D80 41 80 00 0C */ blt lbl_8029A12C
+/* 8029A124 00295D84 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A128 00295D88 48 00 00 10 */ b lbl_8029A138
+lbl_8029A12C:
+/* 8029A12C 00295D8C 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A130 00295D90 7C FE 02 14 */ add r7, r30, r0
+/* 8029A134 00295D94 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A138:
+/* 8029A138 00295D98 B0 05 00 4E */ sth r0, 0x4e(r5)
+/* 8029A13C 00295D9C 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029A140 00295DA0 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A144 00295DA4 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 8029A148 00295DA8 7C 08 02 14 */ add r0, r8, r0
+/* 8029A14C 00295DAC 7C 07 02 14 */ add r0, r7, r0
+/* 8029A150 00295DB0 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A154 00295DB4 41 81 00 0C */ bgt lbl_8029A160
+/* 8029A158 00295DB8 38 00 00 00 */ li r0, 0
+/* 8029A15C 00295DBC 48 00 00 20 */ b lbl_8029A17C
+lbl_8029A160:
+/* 8029A160 00295DC0 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A164 00295DC4 41 80 00 0C */ blt lbl_8029A170
+/* 8029A168 00295DC8 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A16C 00295DCC 48 00 00 10 */ b lbl_8029A17C
+lbl_8029A170:
+/* 8029A170 00295DD0 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A174 00295DD4 7C FE 02 14 */ add r7, r30, r0
+/* 8029A178 00295DD8 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A17C:
+/* 8029A17C 00295DDC B0 05 00 52 */ sth r0, 0x52(r5)
+/* 8029A180 00295DE0 81 05 00 30 */ lwz r8, 0x30(r5)
+/* 8029A184 00295DE4 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A188 00295DE8 80 E5 00 34 */ lwz r7, 0x34(r5)
+/* 8029A18C 00295DEC 7C 08 02 14 */ add r0, r8, r0
+/* 8029A190 00295DF0 7C 07 02 14 */ add r0, r7, r0
+/* 8029A194 00295DF4 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A198 00295DF8 41 81 00 0C */ bgt lbl_8029A1A4
+/* 8029A19C 00295DFC 38 00 00 00 */ li r0, 0
+/* 8029A1A0 00295E00 48 00 00 20 */ b lbl_8029A1C0
+lbl_8029A1A4:
+/* 8029A1A4 00295E04 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A1A8 00295E08 41 80 00 0C */ blt lbl_8029A1B4
+/* 8029A1AC 00295E0C 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A1B0 00295E10 48 00 00 10 */ b lbl_8029A1C0
+lbl_8029A1B4:
+/* 8029A1B4 00295E14 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A1B8 00295E18 7C FE 02 14 */ add r7, r30, r0
+/* 8029A1BC 00295E1C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A1C0:
+/* 8029A1C0 00295E20 B0 05 00 56 */ sth r0, 0x56(r5)
+/* 8029A1C4 00295E24 81 05 00 30 */ lwz r8, 0x30(r5)
+/* 8029A1C8 00295E28 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A1CC 00295E2C 80 E5 00 38 */ lwz r7, 0x38(r5)
+/* 8029A1D0 00295E30 7C 08 02 14 */ add r0, r8, r0
+/* 8029A1D4 00295E34 7C 07 02 14 */ add r0, r7, r0
+/* 8029A1D8 00295E38 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A1DC 00295E3C 41 81 00 0C */ bgt lbl_8029A1E8
+/* 8029A1E0 00295E40 38 00 00 00 */ li r0, 0
+/* 8029A1E4 00295E44 48 00 00 20 */ b lbl_8029A204
+lbl_8029A1E8:
+/* 8029A1E8 00295E48 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A1EC 00295E4C 41 80 00 0C */ blt lbl_8029A1F8
+/* 8029A1F0 00295E50 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A1F4 00295E54 48 00 00 10 */ b lbl_8029A204
+lbl_8029A1F8:
+/* 8029A1F8 00295E58 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A1FC 00295E5C 7C FE 02 14 */ add r7, r30, r0
+/* 8029A200 00295E60 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A204:
+/* 8029A204 00295E64 B0 05 00 6A */ sth r0, 0x6a(r5)
+/* 8029A208 00295E68 48 00 01 34 */ b lbl_8029A33C
+lbl_8029A20C:
+/* 8029A20C 00295E6C 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 8029A210 00295E70 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 8029A214 00295E74 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A218 00295E78 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A21C 00295E7C 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A220 00295E80 7C 08 02 14 */ add r0, r8, r0
+/* 8029A224 00295E84 7C 07 02 14 */ add r0, r7, r0
+/* 8029A228 00295E88 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A22C 00295E8C 41 81 00 0C */ bgt lbl_8029A238
+/* 8029A230 00295E90 38 00 00 00 */ li r0, 0
+/* 8029A234 00295E94 48 00 00 20 */ b lbl_8029A254
+lbl_8029A238:
+/* 8029A238 00295E98 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A23C 00295E9C 41 80 00 0C */ blt lbl_8029A248
+/* 8029A240 00295EA0 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A244 00295EA4 48 00 00 10 */ b lbl_8029A254
+lbl_8029A248:
+/* 8029A248 00295EA8 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A24C 00295EAC 7C FE 02 14 */ add r7, r30, r0
+/* 8029A250 00295EB0 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A254:
+/* 8029A254 00295EB4 B0 05 00 4E */ sth r0, 0x4e(r5)
+/* 8029A258 00295EB8 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 8029A25C 00295EBC 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 8029A260 00295EC0 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A264 00295EC4 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A268 00295EC8 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A26C 00295ECC 7C 08 02 14 */ add r0, r8, r0
+/* 8029A270 00295ED0 7C 07 02 14 */ add r0, r7, r0
+/* 8029A274 00295ED4 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A278 00295ED8 41 81 00 0C */ bgt lbl_8029A284
+/* 8029A27C 00295EDC 38 00 00 00 */ li r0, 0
+/* 8029A280 00295EE0 48 00 00 20 */ b lbl_8029A2A0
+lbl_8029A284:
+/* 8029A284 00295EE4 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A288 00295EE8 41 80 00 0C */ blt lbl_8029A294
+/* 8029A28C 00295EEC 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A290 00295EF0 48 00 00 10 */ b lbl_8029A2A0
+lbl_8029A294:
+/* 8029A294 00295EF4 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A298 00295EF8 7C FE 02 14 */ add r7, r30, r0
+/* 8029A29C 00295EFC A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A2A0:
+/* 8029A2A0 00295F00 B0 05 00 52 */ sth r0, 0x52(r5)
+/* 8029A2A4 00295F04 81 25 00 30 */ lwz r9, 0x30(r5)
+/* 8029A2A8 00295F08 80 E5 00 34 */ lwz r7, 0x34(r5)
+/* 8029A2AC 00295F0C 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A2B0 00295F10 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A2B4 00295F14 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A2B8 00295F18 7C 08 02 14 */ add r0, r8, r0
+/* 8029A2BC 00295F1C 7C 07 02 14 */ add r0, r7, r0
+/* 8029A2C0 00295F20 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A2C4 00295F24 41 81 00 0C */ bgt lbl_8029A2D0
+/* 8029A2C8 00295F28 38 00 00 00 */ li r0, 0
+/* 8029A2CC 00295F2C 48 00 00 20 */ b lbl_8029A2EC
+lbl_8029A2D0:
+/* 8029A2D0 00295F30 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A2D4 00295F34 41 80 00 0C */ blt lbl_8029A2E0
+/* 8029A2D8 00295F38 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A2DC 00295F3C 48 00 00 10 */ b lbl_8029A2EC
+lbl_8029A2E0:
+/* 8029A2E0 00295F40 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A2E4 00295F44 7C FE 02 14 */ add r7, r30, r0
+/* 8029A2E8 00295F48 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A2EC:
+/* 8029A2EC 00295F4C B0 05 00 56 */ sth r0, 0x56(r5)
+/* 8029A2F0 00295F50 81 25 00 30 */ lwz r9, 0x30(r5)
+/* 8029A2F4 00295F54 80 E5 00 38 */ lwz r7, 0x38(r5)
+/* 8029A2F8 00295F58 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A2FC 00295F5C 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 8029A300 00295F60 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A304 00295F64 7C 08 02 14 */ add r0, r8, r0
+/* 8029A308 00295F68 7C 07 02 14 */ add r0, r7, r0
+/* 8029A30C 00295F6C 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A310 00295F70 41 81 00 0C */ bgt lbl_8029A31C
+/* 8029A314 00295F74 38 00 00 00 */ li r0, 0
+/* 8029A318 00295F78 48 00 00 20 */ b lbl_8029A338
+lbl_8029A31C:
+/* 8029A31C 00295F7C 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A320 00295F80 41 80 00 0C */ blt lbl_8029A32C
+/* 8029A324 00295F84 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A328 00295F88 48 00 00 10 */ b lbl_8029A338
+lbl_8029A32C:
+/* 8029A32C 00295F8C 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A330 00295F90 7C FE 02 14 */ add r7, r30, r0
+/* 8029A334 00295F94 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A338:
+/* 8029A338 00295F98 B0 05 00 6A */ sth r0, 0x6a(r5)
+lbl_8029A33C:
+/* 8029A33C 00295F9C 80 05 00 04 */ lwz r0, 4(r5)
+/* 8029A340 00295FA0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 8029A344 00295FA4 41 82 01 18 */ beq lbl_8029A45C
+/* 8029A348 00295FA8 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029A34C 00295FAC 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A350 00295FB0 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 8029A354 00295FB4 7C 08 02 14 */ add r0, r8, r0
+/* 8029A358 00295FB8 7C 07 02 14 */ add r0, r7, r0
+/* 8029A35C 00295FBC 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A360 00295FC0 41 81 00 0C */ bgt lbl_8029A36C
+/* 8029A364 00295FC4 38 00 00 00 */ li r0, 0
+/* 8029A368 00295FC8 48 00 00 20 */ b lbl_8029A388
+lbl_8029A36C:
+/* 8029A36C 00295FCC 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A370 00295FD0 41 80 00 0C */ blt lbl_8029A37C
+/* 8029A374 00295FD4 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A378 00295FD8 48 00 00 10 */ b lbl_8029A388
+lbl_8029A37C:
+/* 8029A37C 00295FDC 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A380 00295FE0 7C FE 02 14 */ add r7, r30, r0
+/* 8029A384 00295FE4 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A388:
+/* 8029A388 00295FE8 B0 05 00 5A */ sth r0, 0x5a(r5)
+/* 8029A38C 00295FEC 81 05 00 2C */ lwz r8, 0x2c(r5)
+/* 8029A390 00295FF0 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A394 00295FF4 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 8029A398 00295FF8 7C 08 02 14 */ add r0, r8, r0
+/* 8029A39C 00295FFC 7C 07 02 14 */ add r0, r7, r0
+/* 8029A3A0 00296000 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A3A4 00296004 41 81 00 0C */ bgt lbl_8029A3B0
+/* 8029A3A8 00296008 38 00 00 00 */ li r0, 0
+/* 8029A3AC 0029600C 48 00 00 20 */ b lbl_8029A3CC
+lbl_8029A3B0:
+/* 8029A3B0 00296010 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A3B4 00296014 41 80 00 0C */ blt lbl_8029A3C0
+/* 8029A3B8 00296018 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A3BC 0029601C 48 00 00 10 */ b lbl_8029A3CC
+lbl_8029A3C0:
+/* 8029A3C0 00296020 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A3C4 00296024 7C FE 02 14 */ add r7, r30, r0
+/* 8029A3C8 00296028 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A3CC:
+/* 8029A3CC 0029602C B0 05 00 5E */ sth r0, 0x5e(r5)
+/* 8029A3D0 00296030 81 05 00 30 */ lwz r8, 0x30(r5)
+/* 8029A3D4 00296034 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A3D8 00296038 80 E5 00 34 */ lwz r7, 0x34(r5)
+/* 8029A3DC 0029603C 7C 08 02 14 */ add r0, r8, r0
+/* 8029A3E0 00296040 7C 07 02 14 */ add r0, r7, r0
+/* 8029A3E4 00296044 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A3E8 00296048 41 81 00 0C */ bgt lbl_8029A3F4
+/* 8029A3EC 0029604C 38 00 00 00 */ li r0, 0
+/* 8029A3F0 00296050 48 00 00 20 */ b lbl_8029A410
+lbl_8029A3F4:
+/* 8029A3F4 00296054 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A3F8 00296058 41 80 00 0C */ blt lbl_8029A404
+/* 8029A3FC 0029605C 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A400 00296060 48 00 00 10 */ b lbl_8029A410
+lbl_8029A404:
+/* 8029A404 00296064 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A408 00296068 7C FE 02 14 */ add r7, r30, r0
+/* 8029A40C 0029606C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A410:
+/* 8029A410 00296070 B0 05 00 62 */ sth r0, 0x62(r5)
+/* 8029A414 00296074 81 05 00 30 */ lwz r8, 0x30(r5)
+/* 8029A418 00296078 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A41C 0029607C 80 E5 00 38 */ lwz r7, 0x38(r5)
+/* 8029A420 00296080 7C 08 02 14 */ add r0, r8, r0
+/* 8029A424 00296084 7C 07 02 14 */ add r0, r7, r0
+/* 8029A428 00296088 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A42C 0029608C 41 81 00 0C */ bgt lbl_8029A438
+/* 8029A430 00296090 38 00 00 00 */ li r0, 0
+/* 8029A434 00296094 48 00 00 20 */ b lbl_8029A454
+lbl_8029A438:
+/* 8029A438 00296098 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A43C 0029609C 41 80 00 0C */ blt lbl_8029A448
+/* 8029A440 002960A0 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A444 002960A4 48 00 00 10 */ b lbl_8029A454
+lbl_8029A448:
+/* 8029A448 002960A8 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A44C 002960AC 7C FE 02 14 */ add r7, r30, r0
+/* 8029A450 002960B0 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A454:
+/* 8029A454 002960B4 B0 05 00 6E */ sth r0, 0x6e(r5)
+/* 8029A458 002960B8 48 00 01 34 */ b lbl_8029A58C
+lbl_8029A45C:
+/* 8029A45C 002960BC 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 8029A460 002960C0 80 E5 00 24 */ lwz r7, 0x24(r5)
+/* 8029A464 002960C4 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A468 002960C8 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A46C 002960CC 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A470 002960D0 7C 08 02 14 */ add r0, r8, r0
+/* 8029A474 002960D4 7C 07 02 14 */ add r0, r7, r0
+/* 8029A478 002960D8 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A47C 002960DC 41 81 00 0C */ bgt lbl_8029A488
+/* 8029A480 002960E0 38 00 00 00 */ li r0, 0
+/* 8029A484 002960E4 48 00 00 20 */ b lbl_8029A4A4
+lbl_8029A488:
+/* 8029A488 002960E8 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A48C 002960EC 41 80 00 0C */ blt lbl_8029A498
+/* 8029A490 002960F0 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A494 002960F4 48 00 00 10 */ b lbl_8029A4A4
+lbl_8029A498:
+/* 8029A498 002960F8 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A49C 002960FC 7C FE 02 14 */ add r7, r30, r0
+/* 8029A4A0 00296100 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A4A4:
+/* 8029A4A4 00296104 B0 05 00 5A */ sth r0, 0x5a(r5)
+/* 8029A4A8 00296108 81 25 00 2C */ lwz r9, 0x2c(r5)
+/* 8029A4AC 0029610C 80 E5 00 28 */ lwz r7, 0x28(r5)
+/* 8029A4B0 00296110 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A4B4 00296114 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A4B8 00296118 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A4BC 0029611C 7C 08 02 14 */ add r0, r8, r0
+/* 8029A4C0 00296120 7C 07 02 14 */ add r0, r7, r0
+/* 8029A4C4 00296124 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A4C8 00296128 41 81 00 0C */ bgt lbl_8029A4D4
+/* 8029A4CC 0029612C 38 00 00 00 */ li r0, 0
+/* 8029A4D0 00296130 48 00 00 20 */ b lbl_8029A4F0
+lbl_8029A4D4:
+/* 8029A4D4 00296134 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A4D8 00296138 41 80 00 0C */ blt lbl_8029A4E4
+/* 8029A4DC 0029613C 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A4E0 00296140 48 00 00 10 */ b lbl_8029A4F0
+lbl_8029A4E4:
+/* 8029A4E4 00296144 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A4E8 00296148 7C FE 02 14 */ add r7, r30, r0
+/* 8029A4EC 0029614C A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A4F0:
+/* 8029A4F0 00296150 B0 05 00 5E */ sth r0, 0x5e(r5)
+/* 8029A4F4 00296154 81 25 00 30 */ lwz r9, 0x30(r5)
+/* 8029A4F8 00296158 80 E5 00 34 */ lwz r7, 0x34(r5)
+/* 8029A4FC 0029615C 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A500 00296160 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A504 00296164 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A508 00296168 7C 08 02 14 */ add r0, r8, r0
+/* 8029A50C 0029616C 7C 07 02 14 */ add r0, r7, r0
+/* 8029A510 00296170 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A514 00296174 41 81 00 0C */ bgt lbl_8029A520
+/* 8029A518 00296178 38 00 00 00 */ li r0, 0
+/* 8029A51C 0029617C 48 00 00 20 */ b lbl_8029A53C
+lbl_8029A520:
+/* 8029A520 00296180 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A524 00296184 41 80 00 0C */ blt lbl_8029A530
+/* 8029A528 00296188 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A52C 0029618C 48 00 00 10 */ b lbl_8029A53C
+lbl_8029A530:
+/* 8029A530 00296190 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A534 00296194 7C FE 02 14 */ add r7, r30, r0
+/* 8029A538 00296198 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A53C:
+/* 8029A53C 0029619C B0 05 00 62 */ sth r0, 0x62(r5)
+/* 8029A540 002961A0 81 25 00 30 */ lwz r9, 0x30(r5)
+/* 8029A544 002961A4 80 E5 00 38 */ lwz r7, 0x38(r5)
+/* 8029A548 002961A8 81 05 00 20 */ lwz r8, 0x20(r5)
+/* 8029A54C 002961AC 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8029A550 002961B0 7C E9 3A 14 */ add r7, r9, r7
+/* 8029A554 002961B4 7C 08 02 14 */ add r0, r8, r0
+/* 8029A558 002961B8 7C 07 02 14 */ add r0, r7, r0
+/* 8029A55C 002961BC 2C 00 FC 78 */ cmpwi r0, -904
+/* 8029A560 002961C0 41 81 00 0C */ bgt lbl_8029A56C
+/* 8029A564 002961C4 38 00 00 00 */ li r0, 0
+/* 8029A568 002961C8 48 00 00 20 */ b lbl_8029A588
+lbl_8029A56C:
+/* 8029A56C 002961CC 2C 00 00 3C */ cmpwi r0, 0x3c
+/* 8029A570 002961D0 41 80 00 0C */ blt lbl_8029A57C
+/* 8029A574 002961D4 38 1D FF 64 */ addi r0, r29, -156
+/* 8029A578 002961D8 48 00 00 10 */ b lbl_8029A588
+lbl_8029A57C:
+/* 8029A57C 002961DC 54 00 08 3C */ slwi r0, r0, 1
+/* 8029A580 002961E0 7C FE 02 14 */ add r7, r30, r0
+/* 8029A584 002961E4 A0 07 07 10 */ lhz r0, 0x710(r7)
+lbl_8029A588:
+/* 8029A588 002961E8 B0 05 00 6E */ sth r0, 0x6e(r5)
+lbl_8029A58C:
+/* 8029A58C 002961EC 64 C6 80 00 */ oris r6, r6, 0x8000
+lbl_8029A590:
+/* 8029A590 002961F0 80 E5 00 04 */ lwz r7, 4(r5)
+/* 8029A594 002961F4 38 00 00 01 */ li r0, 1
+/* 8029A598 002961F8 54 E7 00 80 */ rlwinm r7, r7, 0, 2, 0
+/* 8029A59C 002961FC 64 E7 80 00 */ oris r7, r7, 0x8000
+/* 8029A5A0 00296200 90 E5 00 04 */ stw r7, 4(r5)
+lbl_8029A5A4:
+/* 8029A5A4 00296204 2C 03 00 00 */ cmpwi r3, 0
+/* 8029A5A8 00296208 41 82 00 3C */ beq lbl_8029A5E4
+/* 8029A5AC 0029620C A0 65 00 3C */ lhz r3, 0x3c(r5)
+/* 8029A5B0 00296210 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A5B4 00296214 B0 64 00 92 */ sth r3, 0x92(r4)
+/* 8029A5B8 00296218 A0 E5 00 3C */ lhz r7, 0x3c(r5)
+/* 8029A5BC 0029621C A0 65 00 3E */ lhz r3, 0x3e(r5)
+/* 8029A5C0 00296220 7C 67 18 50 */ subf r3, r7, r3
+/* 8029A5C4 00296224 7C 68 18 96 */ mulhw r3, r8, r3
+/* 8029A5C8 00296228 7C 63 26 70 */ srawi r3, r3, 4
+/* 8029A5CC 0029622C 54 67 0F FE */ srwi r7, r3, 0x1f
+/* 8029A5D0 00296230 7C 63 3A 14 */ add r3, r3, r7
+/* 8029A5D4 00296234 B0 64 00 94 */ sth r3, 0x94(r4)
+/* 8029A5D8 00296238 80 64 00 1C */ lwz r3, 0x1c(r4)
+/* 8029A5DC 0029623C 60 63 01 00 */ ori r3, r3, 0x100
+/* 8029A5E0 00296240 90 64 00 1C */ stw r3, 0x1c(r4)
+lbl_8029A5E4:
+/* 8029A5E4 00296244 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A5E8 00296248 41 82 03 48 */ beq lbl_8029A930
+/* 8029A5EC 0029624C A0 05 00 40 */ lhz r0, 0x40(r5)
+/* 8029A5F0 00296250 38 64 00 3E */ addi r3, r4, 0x3e
+/* 8029A5F4 00296254 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A5F8 00296258 B0 04 00 3C */ sth r0, 0x3c(r4)
+/* 8029A5FC 0029625C 41 82 00 08 */ beq lbl_8029A604
+/* 8029A600 00296260 60 C6 00 01 */ ori r6, r6, 1
+lbl_8029A604:
+/* 8029A604 00296264 A0 E5 00 40 */ lhz r7, 0x40(r5)
+/* 8029A608 00296268 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A60C 0029626C A0 05 00 42 */ lhz r0, 0x42(r5)
+/* 8029A610 00296270 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A614 00296274 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A618 00296278 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A61C 0029627C 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A620 00296280 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A624 00296284 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A628 00296288 B0 E3 00 00 */ sth r7, 0(r3)
+/* 8029A62C 0029628C 41 82 00 08 */ beq lbl_8029A634
+/* 8029A630 00296290 60 C6 00 04 */ ori r6, r6, 4
+lbl_8029A634:
+/* 8029A634 00296294 A0 05 00 44 */ lhz r0, 0x44(r5)
+/* 8029A638 00296298 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A63C 0029629C B0 03 00 02 */ sth r0, 2(r3)
+/* 8029A640 002962A0 41 82 00 08 */ beq lbl_8029A648
+/* 8029A644 002962A4 60 C6 00 02 */ ori r6, r6, 2
+lbl_8029A648:
+/* 8029A648 002962A8 A0 E5 00 44 */ lhz r7, 0x44(r5)
+/* 8029A64C 002962AC 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A650 002962B0 A0 05 00 46 */ lhz r0, 0x46(r5)
+/* 8029A654 002962B4 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A658 002962B8 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A65C 002962BC 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A660 002962C0 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A664 002962C4 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A668 002962C8 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A66C 002962CC B0 E3 00 04 */ sth r7, 4(r3)
+/* 8029A670 002962D0 41 82 00 08 */ beq lbl_8029A678
+/* 8029A674 002962D4 60 C6 00 04 */ ori r6, r6, 4
+lbl_8029A678:
+/* 8029A678 002962D8 A0 05 00 4C */ lhz r0, 0x4c(r5)
+/* 8029A67C 002962DC 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A680 002962E0 B0 03 00 06 */ sth r0, 6(r3)
+/* 8029A684 002962E4 41 82 00 08 */ beq lbl_8029A68C
+/* 8029A688 002962E8 64 C6 00 01 */ oris r6, r6, 1
+lbl_8029A68C:
+/* 8029A68C 002962EC A0 E5 00 4C */ lhz r7, 0x4c(r5)
+/* 8029A690 002962F0 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A694 002962F4 A0 05 00 4E */ lhz r0, 0x4e(r5)
+/* 8029A698 002962F8 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A69C 002962FC 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A6A0 00296300 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A6A4 00296304 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A6A8 00296308 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A6AC 0029630C 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A6B0 00296310 B0 E3 00 08 */ sth r7, 8(r3)
+/* 8029A6B4 00296314 41 82 00 08 */ beq lbl_8029A6BC
+/* 8029A6B8 00296318 64 C6 00 04 */ oris r6, r6, 4
+lbl_8029A6BC:
+/* 8029A6BC 0029631C A0 05 00 50 */ lhz r0, 0x50(r5)
+/* 8029A6C0 00296320 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A6C4 00296324 B0 03 00 0A */ sth r0, 0xa(r3)
+/* 8029A6C8 00296328 41 82 00 08 */ beq lbl_8029A6D0
+/* 8029A6CC 0029632C 64 C6 00 02 */ oris r6, r6, 2
+lbl_8029A6D0:
+/* 8029A6D0 00296330 A0 E5 00 50 */ lhz r7, 0x50(r5)
+/* 8029A6D4 00296334 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A6D8 00296338 A0 05 00 52 */ lhz r0, 0x52(r5)
+/* 8029A6DC 0029633C 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A6E0 00296340 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A6E4 00296344 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A6E8 00296348 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A6EC 0029634C 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A6F0 00296350 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A6F4 00296354 B0 E3 00 0C */ sth r7, 0xc(r3)
+/* 8029A6F8 00296358 41 82 00 08 */ beq lbl_8029A700
+/* 8029A6FC 0029635C 64 C6 00 04 */ oris r6, r6, 4
+lbl_8029A700:
+/* 8029A700 00296360 A0 05 00 58 */ lhz r0, 0x58(r5)
+/* 8029A704 00296364 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A708 00296368 B0 03 00 0E */ sth r0, 0xe(r3)
+/* 8029A70C 0029636C 41 82 00 08 */ beq lbl_8029A714
+/* 8029A710 00296370 64 C6 00 20 */ oris r6, r6, 0x20
+lbl_8029A714:
+/* 8029A714 00296374 A0 E5 00 58 */ lhz r7, 0x58(r5)
+/* 8029A718 00296378 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A71C 0029637C A0 05 00 5A */ lhz r0, 0x5a(r5)
+/* 8029A720 00296380 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A724 00296384 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A728 00296388 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A72C 0029638C 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A730 00296390 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A734 00296394 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A738 00296398 B0 E3 00 10 */ sth r7, 0x10(r3)
+/* 8029A73C 0029639C 41 82 00 08 */ beq lbl_8029A744
+/* 8029A740 002963A0 64 C6 00 80 */ oris r6, r6, 0x80
+lbl_8029A744:
+/* 8029A744 002963A4 A0 05 00 5C */ lhz r0, 0x5c(r5)
+/* 8029A748 002963A8 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A74C 002963AC B0 03 00 12 */ sth r0, 0x12(r3)
+/* 8029A750 002963B0 41 82 00 08 */ beq lbl_8029A758
+/* 8029A754 002963B4 64 C6 00 40 */ oris r6, r6, 0x40
+lbl_8029A758:
+/* 8029A758 002963B8 A0 E5 00 5C */ lhz r7, 0x5c(r5)
+/* 8029A75C 002963BC 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A760 002963C0 A0 05 00 5E */ lhz r0, 0x5e(r5)
+/* 8029A764 002963C4 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A768 002963C8 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A76C 002963CC 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A770 002963D0 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A774 002963D4 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A778 002963D8 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A77C 002963DC B0 E3 00 14 */ sth r7, 0x14(r3)
+/* 8029A780 002963E0 41 82 00 08 */ beq lbl_8029A788
+/* 8029A784 002963E4 64 C6 00 80 */ oris r6, r6, 0x80
+lbl_8029A788:
+/* 8029A788 002963E8 A0 05 00 64 */ lhz r0, 0x64(r5)
+/* 8029A78C 002963EC 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A790 002963F0 B0 03 00 16 */ sth r0, 0x16(r3)
+/* 8029A794 002963F4 41 82 00 08 */ beq lbl_8029A79C
+/* 8029A798 002963F8 64 C6 04 00 */ oris r6, r6, 0x400
+lbl_8029A79C:
+/* 8029A79C 002963FC A0 E5 00 64 */ lhz r7, 0x64(r5)
+/* 8029A7A0 00296400 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A7A4 00296404 A0 05 00 66 */ lhz r0, 0x66(r5)
+/* 8029A7A8 00296408 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A7AC 0029640C 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A7B0 00296410 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A7B4 00296414 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A7B8 00296418 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A7BC 0029641C 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A7C0 00296420 B0 E3 00 18 */ sth r7, 0x18(r3)
+/* 8029A7C4 00296424 41 82 00 08 */ beq lbl_8029A7CC
+/* 8029A7C8 00296428 64 C6 10 00 */ oris r6, r6, 0x1000
+lbl_8029A7CC:
+/* 8029A7CC 0029642C A0 05 00 68 */ lhz r0, 0x68(r5)
+/* 8029A7D0 00296430 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A7D4 00296434 B0 03 00 1A */ sth r0, 0x1a(r3)
+/* 8029A7D8 00296438 41 82 00 08 */ beq lbl_8029A7E0
+/* 8029A7DC 0029643C 64 C6 08 00 */ oris r6, r6, 0x800
+lbl_8029A7E0:
+/* 8029A7E0 00296440 A0 E5 00 68 */ lhz r7, 0x68(r5)
+/* 8029A7E4 00296444 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A7E8 00296448 A0 05 00 6A */ lhz r0, 0x6a(r5)
+/* 8029A7EC 0029644C 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A7F0 00296450 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A7F4 00296454 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A7F8 00296458 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A7FC 0029645C 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A800 00296460 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A804 00296464 B0 E3 00 1C */ sth r7, 0x1c(r3)
+/* 8029A808 00296468 41 82 00 08 */ beq lbl_8029A810
+/* 8029A80C 0029646C 64 C6 10 00 */ oris r6, r6, 0x1000
+lbl_8029A810:
+/* 8029A810 00296470 A0 05 00 48 */ lhz r0, 0x48(r5)
+/* 8029A814 00296474 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A818 00296478 B0 03 00 1E */ sth r0, 0x1e(r3)
+/* 8029A81C 0029647C 41 82 00 08 */ beq lbl_8029A824
+/* 8029A820 00296480 60 C6 00 08 */ ori r6, r6, 8
+lbl_8029A824:
+/* 8029A824 00296484 A0 E5 00 48 */ lhz r7, 0x48(r5)
+/* 8029A828 00296488 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A82C 0029648C A0 05 00 4A */ lhz r0, 0x4a(r5)
+/* 8029A830 00296490 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A834 00296494 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A838 00296498 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A83C 0029649C 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A840 002964A0 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A844 002964A4 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A848 002964A8 B0 E3 00 20 */ sth r7, 0x20(r3)
+/* 8029A84C 002964AC 41 82 00 08 */ beq lbl_8029A854
+/* 8029A850 002964B0 60 C6 00 10 */ ori r6, r6, 0x10
+lbl_8029A854:
+/* 8029A854 002964B4 A0 05 00 54 */ lhz r0, 0x54(r5)
+/* 8029A858 002964B8 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A85C 002964BC B0 03 00 22 */ sth r0, 0x22(r3)
+/* 8029A860 002964C0 41 82 00 08 */ beq lbl_8029A868
+/* 8029A864 002964C4 64 C6 00 08 */ oris r6, r6, 8
+lbl_8029A868:
+/* 8029A868 002964C8 A0 E5 00 54 */ lhz r7, 0x54(r5)
+/* 8029A86C 002964CC 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A870 002964D0 A0 05 00 56 */ lhz r0, 0x56(r5)
+/* 8029A874 002964D4 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A878 002964D8 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A87C 002964DC 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A880 002964E0 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A884 002964E4 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A888 002964E8 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A88C 002964EC B0 E3 00 24 */ sth r7, 0x24(r3)
+/* 8029A890 002964F0 41 82 00 08 */ beq lbl_8029A898
+/* 8029A894 002964F4 64 C6 00 10 */ oris r6, r6, 0x10
+lbl_8029A898:
+/* 8029A898 002964F8 A0 05 00 60 */ lhz r0, 0x60(r5)
+/* 8029A89C 002964FC 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A8A0 00296500 B0 03 00 26 */ sth r0, 0x26(r3)
+/* 8029A8A4 00296504 41 82 00 08 */ beq lbl_8029A8AC
+/* 8029A8A8 00296508 64 C6 01 00 */ oris r6, r6, 0x100
+lbl_8029A8AC:
+/* 8029A8AC 0029650C A0 E5 00 60 */ lhz r7, 0x60(r5)
+/* 8029A8B0 00296510 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A8B4 00296514 A0 05 00 62 */ lhz r0, 0x62(r5)
+/* 8029A8B8 00296518 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A8BC 0029651C 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A8C0 00296520 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A8C4 00296524 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 8029A8C8 00296528 7C E0 3A 14 */ add r7, r0, r7
+/* 8029A8CC 0029652C 54 E0 04 3F */ clrlwi. r0, r7, 0x10
+/* 8029A8D0 00296530 B0 E3 00 28 */ sth r7, 0x28(r3)
+/* 8029A8D4 00296534 41 82 00 08 */ beq lbl_8029A8DC
+/* 8029A8D8 00296538 64 C6 02 00 */ oris r6, r6, 0x200
+lbl_8029A8DC:
+/* 8029A8DC 0029653C A0 05 00 6C */ lhz r0, 0x6c(r5)
+/* 8029A8E0 00296540 2C 00 00 00 */ cmpwi r0, 0
+/* 8029A8E4 00296544 B0 03 00 2A */ sth r0, 0x2a(r3)
+/* 8029A8E8 00296548 41 82 00 08 */ beq lbl_8029A8F0
+/* 8029A8EC 0029654C 64 C6 20 00 */ oris r6, r6, 0x2000
+lbl_8029A8F0:
+/* 8029A8F0 00296550 A0 E5 00 6C */ lhz r7, 0x6c(r5)
+/* 8029A8F4 00296554 39 1F AA AB */ addi r8, r31, -21845
+/* 8029A8F8 00296558 A0 05 00 6E */ lhz r0, 0x6e(r5)
+/* 8029A8FC 0029655C 7C 07 00 50 */ subf r0, r7, r0
+/* 8029A900 00296560 7C 08 00 96 */ mulhw r0, r8, r0
+/* 8029A904 00296564 7C 00 26 70 */ srawi r0, r0, 4
+/* 8029A908 00296568 54 05 0F FE */ srwi r5, r0, 0x1f
+/* 8029A90C 0029656C 7C A0 2A 14 */ add r5, r0, r5
+/* 8029A910 00296570 54 A0 04 3F */ clrlwi. r0, r5, 0x10
+/* 8029A914 00296574 B0 A3 00 2C */ sth r5, 0x2c(r3)
+/* 8029A918 00296578 41 82 00 08 */ beq lbl_8029A920
+/* 8029A91C 0029657C 64 C6 40 00 */ oris r6, r6, 0x4000
+lbl_8029A920:
+/* 8029A920 00296580 90 C4 00 34 */ stw r6, 0x34(r4)
+/* 8029A924 00296584 80 04 00 1C */ lwz r0, 0x1c(r4)
+/* 8029A928 00296588 60 00 00 12 */ ori r0, r0, 0x12
+/* 8029A92C 0029658C 90 04 00 1C */ stw r0, 0x1c(r4)
+lbl_8029A930:
+/* 8029A930 00296590 7F 43 D3 78 */ mr r3, r26
+/* 8029A934 00296594 48 00 00 31 */ bl __MIXRmtUpdateSettings
+lbl_8029A938:
+/* 8029A938 00296598 3B 7B 00 70 */ addi r27, r27, 0x70
+/* 8029A93C 0029659C 3B 5A 00 01 */ addi r26, r26, 1
+lbl_8029A940:
+/* 8029A940 002965A0 80 0D AC 58 */ lwz r0, lbl_8063FF18-_SDA_BASE_(r13)
+/* 8029A944 002965A4 7C 1A 00 40 */ cmplw r26, r0
+/* 8029A948 002965A8 41 80 E9 CC */ blt lbl_80299314
+lbl_8029A94C:
+/* 8029A94C 002965AC 39 61 00 20 */ addi r11, r1, 0x20
+/* 8029A950 002965B0 4B F2 C8 21 */ bl _restgpr_26
+/* 8029A954 002965B4 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8029A958 002965B8 7C 08 03 A6 */ mtlr r0
+/* 8029A95C 002965BC 38 21 00 20 */ addi r1, r1, 0x20
+/* 8029A960 002965C0 4E 80 00 20 */ blr
diff --git a/asm/SDK/MIX/remote.s b/asm/SDK/MIX/remote.s new file mode 100644 index 0000000..ce045ce --- /dev/null +++ b/asm/SDK/MIX/remote.s @@ -0,0 +1,329 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __MIXRmtUpdateSettings
+__MIXRmtUpdateSettings:
+/* 8029A964 002965C4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8029A968 002965C8 7C 08 02 A6 */ mflr r0
+/* 8029A96C 002965CC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8029A970 002965D0 1C 03 00 44 */ mulli r0, r3, 0x44
+/* 8029A974 002965D4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8029A978 002965D8 93 C1 00 08 */ stw r30, 8(r1)
+/* 8029A97C 002965DC 7C 9E 23 78 */ mr r30, r4
+/* 8029A980 002965E0 80 6D AC 60 */ lwz r3, lbl_8063FF20-_SDA_BASE_(r13)
+/* 8029A984 002965E4 7F E3 02 14 */ add r31, r3, r0
+/* 8029A988 002965E8 7C 63 00 2E */ lwzx r3, r3, r0
+/* 8029A98C 002965EC 54 60 00 03 */ rlwinm. r0, r3, 0, 0, 1
+/* 8029A990 002965F0 41 82 03 F8 */ beq lbl_8029AD88
+/* 8029A994 002965F4 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0
+/* 8029A998 002965F8 41 82 00 50 */ beq lbl_8029A9E8
+/* 8029A99C 002965FC A0 1F 00 26 */ lhz r0, 0x26(r31)
+/* 8029A9A0 00296600 B0 1F 00 24 */ sth r0, 0x24(r31)
+/* 8029A9A4 00296604 A0 1F 00 2A */ lhz r0, 0x2a(r31)
+/* 8029A9A8 00296608 B0 1F 00 28 */ sth r0, 0x28(r31)
+/* 8029A9AC 0029660C A0 1F 00 2E */ lhz r0, 0x2e(r31)
+/* 8029A9B0 00296610 B0 1F 00 2C */ sth r0, 0x2c(r31)
+/* 8029A9B4 00296614 A0 1F 00 32 */ lhz r0, 0x32(r31)
+/* 8029A9B8 00296618 B0 1F 00 30 */ sth r0, 0x30(r31)
+/* 8029A9BC 0029661C A0 1F 00 36 */ lhz r0, 0x36(r31)
+/* 8029A9C0 00296620 B0 1F 00 34 */ sth r0, 0x34(r31)
+/* 8029A9C4 00296624 A0 1F 00 3A */ lhz r0, 0x3a(r31)
+/* 8029A9C8 00296628 B0 1F 00 38 */ sth r0, 0x38(r31)
+/* 8029A9CC 0029662C A0 1F 00 3E */ lhz r0, 0x3e(r31)
+/* 8029A9D0 00296630 B0 1F 00 3C */ sth r0, 0x3c(r31)
+/* 8029A9D4 00296634 A0 1F 00 42 */ lhz r0, 0x42(r31)
+/* 8029A9D8 00296638 B0 1F 00 40 */ sth r0, 0x40(r31)
+/* 8029A9DC 0029663C 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029A9E0 00296640 54 00 00 7E */ clrlwi r0, r0, 1
+/* 8029A9E4 00296644 90 1F 00 00 */ stw r0, 0(r31)
+lbl_8029A9E8:
+/* 8029A9E8 00296648 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029A9EC 0029664C 54 00 00 43 */ rlwinm. r0, r0, 0, 1, 1
+/* 8029A9F0 00296650 41 82 01 04 */ beq lbl_8029AAF4
+/* 8029A9F4 00296654 80 7F 00 04 */ lwz r3, 4(r31)
+/* 8029A9F8 00296658 4B FF CF 4D */ bl __MIXGetVolume
+/* 8029A9FC 0029665C B0 7F 00 26 */ sth r3, 0x26(r31)
+/* 8029AA00 00296660 80 7F 00 08 */ lwz r3, 8(r31)
+/* 8029AA04 00296664 4B FF CF 41 */ bl __MIXGetVolume
+/* 8029AA08 00296668 B0 7F 00 2E */ sth r3, 0x2e(r31)
+/* 8029AA0C 0029666C 80 7F 00 0C */ lwz r3, 0xc(r31)
+/* 8029AA10 00296670 4B FF CF 35 */ bl __MIXGetVolume
+/* 8029AA14 00296674 B0 7F 00 36 */ sth r3, 0x36(r31)
+/* 8029AA18 00296678 80 7F 00 10 */ lwz r3, 0x10(r31)
+/* 8029AA1C 0029667C 4B FF CF 29 */ bl __MIXGetVolume
+/* 8029AA20 00296680 B0 7F 00 3E */ sth r3, 0x3e(r31)
+/* 8029AA24 00296684 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029AA28 00296688 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 8029AA2C 0029668C 41 82 00 14 */ beq lbl_8029AA40
+/* 8029AA30 00296690 80 7F 00 14 */ lwz r3, 0x14(r31)
+/* 8029AA34 00296694 4B FF CF 11 */ bl __MIXGetVolume
+/* 8029AA38 00296698 B0 7F 00 2A */ sth r3, 0x2a(r31)
+/* 8029AA3C 0029669C 48 00 00 18 */ b lbl_8029AA54
+lbl_8029AA40:
+/* 8029AA40 002966A0 80 7F 00 04 */ lwz r3, 4(r31)
+/* 8029AA44 002966A4 80 1F 00 14 */ lwz r0, 0x14(r31)
+/* 8029AA48 002966A8 7C 63 02 14 */ add r3, r3, r0
+/* 8029AA4C 002966AC 4B FF CE F9 */ bl __MIXGetVolume
+/* 8029AA50 002966B0 B0 7F 00 2A */ sth r3, 0x2a(r31)
+lbl_8029AA54:
+/* 8029AA54 002966B4 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029AA58 002966B8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
+/* 8029AA5C 002966BC 41 82 00 14 */ beq lbl_8029AA70
+/* 8029AA60 002966C0 80 7F 00 18 */ lwz r3, 0x18(r31)
+/* 8029AA64 002966C4 4B FF CE E1 */ bl __MIXGetVolume
+/* 8029AA68 002966C8 B0 7F 00 32 */ sth r3, 0x32(r31)
+/* 8029AA6C 002966CC 48 00 00 18 */ b lbl_8029AA84
+lbl_8029AA70:
+/* 8029AA70 002966D0 80 7F 00 08 */ lwz r3, 8(r31)
+/* 8029AA74 002966D4 80 1F 00 18 */ lwz r0, 0x18(r31)
+/* 8029AA78 002966D8 7C 63 02 14 */ add r3, r3, r0
+/* 8029AA7C 002966DC 4B FF CE C9 */ bl __MIXGetVolume
+/* 8029AA80 002966E0 B0 7F 00 32 */ sth r3, 0x32(r31)
+lbl_8029AA84:
+/* 8029AA84 002966E4 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029AA88 002966E8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 8029AA8C 002966EC 41 82 00 14 */ beq lbl_8029AAA0
+/* 8029AA90 002966F0 80 7F 00 1C */ lwz r3, 0x1c(r31)
+/* 8029AA94 002966F4 4B FF CE B1 */ bl __MIXGetVolume
+/* 8029AA98 002966F8 B0 7F 00 3A */ sth r3, 0x3a(r31)
+/* 8029AA9C 002966FC 48 00 00 18 */ b lbl_8029AAB4
+lbl_8029AAA0:
+/* 8029AAA0 00296700 80 7F 00 0C */ lwz r3, 0xc(r31)
+/* 8029AAA4 00296704 80 1F 00 1C */ lwz r0, 0x1c(r31)
+/* 8029AAA8 00296708 7C 63 02 14 */ add r3, r3, r0
+/* 8029AAAC 0029670C 4B FF CE 99 */ bl __MIXGetVolume
+/* 8029AAB0 00296710 B0 7F 00 3A */ sth r3, 0x3a(r31)
+lbl_8029AAB4:
+/* 8029AAB4 00296714 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029AAB8 00296718 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
+/* 8029AABC 0029671C 41 82 00 14 */ beq lbl_8029AAD0
+/* 8029AAC0 00296720 80 7F 00 20 */ lwz r3, 0x20(r31)
+/* 8029AAC4 00296724 4B FF CE 81 */ bl __MIXGetVolume
+/* 8029AAC8 00296728 B0 7F 00 42 */ sth r3, 0x42(r31)
+/* 8029AACC 0029672C 48 00 00 18 */ b lbl_8029AAE4
+lbl_8029AAD0:
+/* 8029AAD0 00296730 80 7F 00 10 */ lwz r3, 0x10(r31)
+/* 8029AAD4 00296734 80 1F 00 20 */ lwz r0, 0x20(r31)
+/* 8029AAD8 00296738 7C 63 02 14 */ add r3, r3, r0
+/* 8029AADC 0029673C 4B FF CE 69 */ bl __MIXGetVolume
+/* 8029AAE0 00296740 B0 7F 00 42 */ sth r3, 0x42(r31)
+lbl_8029AAE4:
+/* 8029AAE4 00296744 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8029AAE8 00296748 54 00 00 80 */ rlwinm r0, r0, 0, 2, 0
+/* 8029AAEC 0029674C 64 00 80 00 */ oris r0, r0, 0x8000
+/* 8029AAF0 00296750 90 1F 00 00 */ stw r0, 0(r31)
+lbl_8029AAF4:
+/* 8029AAF4 00296754 A0 9F 00 24 */ lhz r4, 0x24(r31)
+/* 8029AAF8 00296758 38 7E 01 04 */ addi r3, r30, 0x104
+/* 8029AAFC 0029675C 38 00 00 00 */ li r0, 0
+/* 8029AB00 00296760 2C 04 00 00 */ cmpwi r4, 0
+/* 8029AB04 00296764 B0 9E 01 02 */ sth r4, 0x102(r30)
+/* 8029AB08 00296768 41 82 00 08 */ beq lbl_8029AB10
+/* 8029AB0C 0029676C 60 00 00 01 */ ori r0, r0, 1
+lbl_8029AB10:
+/* 8029AB10 00296770 A0 DF 00 24 */ lhz r6, 0x24(r31)
+/* 8029AB14 00296774 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029AB18 00296778 A0 BF 00 26 */ lhz r5, 0x26(r31)
+/* 8029AB1C 0029677C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029AB20 00296780 7C 86 28 50 */ subf r4, r6, r5
+/* 8029AB24 00296784 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029AB28 00296788 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029AB2C 0029678C 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029AB30 00296790 7C A4 2A 14 */ add r5, r4, r5
+/* 8029AB34 00296794 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029AB38 00296798 B0 A3 00 00 */ sth r5, 0(r3)
+/* 8029AB3C 0029679C 41 82 00 0C */ beq lbl_8029AB48
+/* 8029AB40 002967A0 60 00 00 02 */ ori r0, r0, 2
+/* 8029AB44 002967A4 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AB48:
+/* 8029AB48 002967A8 A0 9F 00 28 */ lhz r4, 0x28(r31)
+/* 8029AB4C 002967AC 2C 04 00 00 */ cmpwi r4, 0
+/* 8029AB50 002967B0 B0 83 00 02 */ sth r4, 2(r3)
+/* 8029AB54 002967B4 41 82 00 0C */ beq lbl_8029AB60
+/* 8029AB58 002967B8 60 00 00 04 */ ori r0, r0, 4
+/* 8029AB5C 002967BC 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AB60:
+/* 8029AB60 002967C0 A0 DF 00 28 */ lhz r6, 0x28(r31)
+/* 8029AB64 002967C4 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029AB68 002967C8 A0 BF 00 2A */ lhz r5, 0x2a(r31)
+/* 8029AB6C 002967CC 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029AB70 002967D0 7C 86 28 50 */ subf r4, r6, r5
+/* 8029AB74 002967D4 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029AB78 002967D8 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029AB7C 002967DC 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029AB80 002967E0 7C A4 2A 14 */ add r5, r4, r5
+/* 8029AB84 002967E4 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029AB88 002967E8 B0 A3 00 04 */ sth r5, 4(r3)
+/* 8029AB8C 002967EC 41 82 00 0C */ beq lbl_8029AB98
+/* 8029AB90 002967F0 60 00 00 08 */ ori r0, r0, 8
+/* 8029AB94 002967F4 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AB98:
+/* 8029AB98 002967F8 A0 9F 00 2C */ lhz r4, 0x2c(r31)
+/* 8029AB9C 002967FC 2C 04 00 00 */ cmpwi r4, 0
+/* 8029ABA0 00296800 B0 83 00 06 */ sth r4, 6(r3)
+/* 8029ABA4 00296804 41 82 00 0C */ beq lbl_8029ABB0
+/* 8029ABA8 00296808 60 00 00 10 */ ori r0, r0, 0x10
+/* 8029ABAC 0029680C 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029ABB0:
+/* 8029ABB0 00296810 A0 DF 00 2C */ lhz r6, 0x2c(r31)
+/* 8029ABB4 00296814 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029ABB8 00296818 A0 BF 00 2E */ lhz r5, 0x2e(r31)
+/* 8029ABBC 0029681C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029ABC0 00296820 7C 86 28 50 */ subf r4, r6, r5
+/* 8029ABC4 00296824 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029ABC8 00296828 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029ABCC 0029682C 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029ABD0 00296830 7C A4 2A 14 */ add r5, r4, r5
+/* 8029ABD4 00296834 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029ABD8 00296838 B0 A3 00 08 */ sth r5, 8(r3)
+/* 8029ABDC 0029683C 41 82 00 0C */ beq lbl_8029ABE8
+/* 8029ABE0 00296840 60 00 00 20 */ ori r0, r0, 0x20
+/* 8029ABE4 00296844 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029ABE8:
+/* 8029ABE8 00296848 A0 9F 00 30 */ lhz r4, 0x30(r31)
+/* 8029ABEC 0029684C 2C 04 00 00 */ cmpwi r4, 0
+/* 8029ABF0 00296850 B0 83 00 0A */ sth r4, 0xa(r3)
+/* 8029ABF4 00296854 41 82 00 0C */ beq lbl_8029AC00
+/* 8029ABF8 00296858 60 00 00 40 */ ori r0, r0, 0x40
+/* 8029ABFC 0029685C 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AC00:
+/* 8029AC00 00296860 A0 DF 00 30 */ lhz r6, 0x30(r31)
+/* 8029AC04 00296864 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029AC08 00296868 A0 BF 00 32 */ lhz r5, 0x32(r31)
+/* 8029AC0C 0029686C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029AC10 00296870 7C 86 28 50 */ subf r4, r6, r5
+/* 8029AC14 00296874 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029AC18 00296878 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029AC1C 0029687C 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029AC20 00296880 7C A4 2A 14 */ add r5, r4, r5
+/* 8029AC24 00296884 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029AC28 00296888 B0 A3 00 0C */ sth r5, 0xc(r3)
+/* 8029AC2C 0029688C 41 82 00 0C */ beq lbl_8029AC38
+/* 8029AC30 00296890 60 00 00 80 */ ori r0, r0, 0x80
+/* 8029AC34 00296894 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AC38:
+/* 8029AC38 00296898 A0 9F 00 34 */ lhz r4, 0x34(r31)
+/* 8029AC3C 0029689C 2C 04 00 00 */ cmpwi r4, 0
+/* 8029AC40 002968A0 B0 83 00 0E */ sth r4, 0xe(r3)
+/* 8029AC44 002968A4 41 82 00 0C */ beq lbl_8029AC50
+/* 8029AC48 002968A8 60 00 01 00 */ ori r0, r0, 0x100
+/* 8029AC4C 002968AC 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AC50:
+/* 8029AC50 002968B0 A0 DF 00 34 */ lhz r6, 0x34(r31)
+/* 8029AC54 002968B4 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029AC58 002968B8 A0 BF 00 36 */ lhz r5, 0x36(r31)
+/* 8029AC5C 002968BC 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029AC60 002968C0 7C 86 28 50 */ subf r4, r6, r5
+/* 8029AC64 002968C4 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029AC68 002968C8 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029AC6C 002968CC 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029AC70 002968D0 7C A4 2A 14 */ add r5, r4, r5
+/* 8029AC74 002968D4 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029AC78 002968D8 B0 A3 00 10 */ sth r5, 0x10(r3)
+/* 8029AC7C 002968DC 41 82 00 0C */ beq lbl_8029AC88
+/* 8029AC80 002968E0 60 00 02 00 */ ori r0, r0, 0x200
+/* 8029AC84 002968E4 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AC88:
+/* 8029AC88 002968E8 A0 9F 00 38 */ lhz r4, 0x38(r31)
+/* 8029AC8C 002968EC 2C 04 00 00 */ cmpwi r4, 0
+/* 8029AC90 002968F0 B0 83 00 12 */ sth r4, 0x12(r3)
+/* 8029AC94 002968F4 41 82 00 0C */ beq lbl_8029ACA0
+/* 8029AC98 002968F8 60 00 04 00 */ ori r0, r0, 0x400
+/* 8029AC9C 002968FC 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029ACA0:
+/* 8029ACA0 00296900 A0 DF 00 38 */ lhz r6, 0x38(r31)
+/* 8029ACA4 00296904 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029ACA8 00296908 A0 BF 00 3A */ lhz r5, 0x3a(r31)
+/* 8029ACAC 0029690C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029ACB0 00296910 7C 86 28 50 */ subf r4, r6, r5
+/* 8029ACB4 00296914 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029ACB8 00296918 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029ACBC 0029691C 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029ACC0 00296920 7C A4 2A 14 */ add r5, r4, r5
+/* 8029ACC4 00296924 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029ACC8 00296928 B0 A3 00 14 */ sth r5, 0x14(r3)
+/* 8029ACCC 0029692C 41 82 00 0C */ beq lbl_8029ACD8
+/* 8029ACD0 00296930 60 00 08 00 */ ori r0, r0, 0x800
+/* 8029ACD4 00296934 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029ACD8:
+/* 8029ACD8 00296938 A0 9F 00 3C */ lhz r4, 0x3c(r31)
+/* 8029ACDC 0029693C 2C 04 00 00 */ cmpwi r4, 0
+/* 8029ACE0 00296940 B0 83 00 16 */ sth r4, 0x16(r3)
+/* 8029ACE4 00296944 41 82 00 0C */ beq lbl_8029ACF0
+/* 8029ACE8 00296948 60 00 10 00 */ ori r0, r0, 0x1000
+/* 8029ACEC 0029694C 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029ACF0:
+/* 8029ACF0 00296950 A0 DF 00 3C */ lhz r6, 0x3c(r31)
+/* 8029ACF4 00296954 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029ACF8 00296958 A0 BF 00 3E */ lhz r5, 0x3e(r31)
+/* 8029ACFC 0029695C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029AD00 00296960 7C 86 28 50 */ subf r4, r6, r5
+/* 8029AD04 00296964 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029AD08 00296968 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029AD0C 0029696C 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029AD10 00296970 7C A4 2A 14 */ add r5, r4, r5
+/* 8029AD14 00296974 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029AD18 00296978 B0 A3 00 18 */ sth r5, 0x18(r3)
+/* 8029AD1C 0029697C 41 82 00 0C */ beq lbl_8029AD28
+/* 8029AD20 00296980 60 00 20 00 */ ori r0, r0, 0x2000
+/* 8029AD24 00296984 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AD28:
+/* 8029AD28 00296988 A0 9F 00 40 */ lhz r4, 0x40(r31)
+/* 8029AD2C 0029698C 2C 04 00 00 */ cmpwi r4, 0
+/* 8029AD30 00296990 B0 83 00 1A */ sth r4, 0x1a(r3)
+/* 8029AD34 00296994 41 82 00 0C */ beq lbl_8029AD40
+/* 8029AD38 00296998 60 00 40 00 */ ori r0, r0, 0x4000
+/* 8029AD3C 0029699C 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AD40:
+/* 8029AD40 002969A0 A0 DF 00 40 */ lhz r6, 0x40(r31)
+/* 8029AD44 002969A4 3C 80 38 E4 */ lis r4, 0x38E38E39@ha
+/* 8029AD48 002969A8 A0 BF 00 42 */ lhz r5, 0x42(r31)
+/* 8029AD4C 002969AC 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l
+/* 8029AD50 002969B0 7C 86 28 50 */ subf r4, r6, r5
+/* 8029AD54 002969B4 7C 87 20 96 */ mulhw r4, r7, r4
+/* 8029AD58 002969B8 7C 84 16 70 */ srawi r4, r4, 2
+/* 8029AD5C 002969BC 54 85 0F FE */ srwi r5, r4, 0x1f
+/* 8029AD60 002969C0 7C A4 2A 14 */ add r5, r4, r5
+/* 8029AD64 002969C4 54 A4 04 3F */ clrlwi. r4, r5, 0x10
+/* 8029AD68 002969C8 B0 A3 00 1C */ sth r5, 0x1c(r3)
+/* 8029AD6C 002969CC 41 82 00 0C */ beq lbl_8029AD78
+/* 8029AD70 002969D0 60 00 80 00 */ ori r0, r0, 0x8000
+/* 8029AD74 002969D4 54 00 04 3E */ clrlwi r0, r0, 0x10
+lbl_8029AD78:
+/* 8029AD78 002969D8 80 7E 00 1C */ lwz r3, 0x1c(r30)
+/* 8029AD7C 002969DC B0 1E 01 00 */ sth r0, 0x100(r30)
+/* 8029AD80 002969E0 64 60 03 00 */ oris r0, r3, 0x300
+/* 8029AD84 002969E4 90 1E 00 1C */ stw r0, 0x1c(r30)
+lbl_8029AD88:
+/* 8029AD88 002969E8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8029AD8C 002969EC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8029AD90 002969F0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8029AD94 002969F4 7C 08 03 A6 */ mtlr r0
+/* 8029AD98 002969F8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8029AD9C 002969FC 4E 80 00 20 */ blr
+
+.global __MIXRmtResetChannel
+__MIXRmtResetChannel:
+/* 8029ADA0 00296A00 80 AD AC 60 */ lwz r5, lbl_8063FF20-_SDA_BASE_(r13)
+/* 8029ADA4 00296A04 1C 83 00 44 */ mulli r4, r3, 0x44
+/* 8029ADA8 00296A08 38 60 00 00 */ li r3, 0
+/* 8029ADAC 00296A0C 7C 64 29 6E */ stwux r3, r4, r5
+/* 8029ADB0 00296A10 38 00 FC 40 */ li r0, -960
+/* 8029ADB4 00296A14 90 64 00 04 */ stw r3, 4(r4)
+/* 8029ADB8 00296A18 90 64 00 08 */ stw r3, 8(r4)
+/* 8029ADBC 00296A1C 90 64 00 0C */ stw r3, 0xc(r4)
+/* 8029ADC0 00296A20 90 64 00 10 */ stw r3, 0x10(r4)
+/* 8029ADC4 00296A24 90 04 00 14 */ stw r0, 0x14(r4)
+/* 8029ADC8 00296A28 90 04 00 18 */ stw r0, 0x18(r4)
+/* 8029ADCC 00296A2C 90 04 00 1C */ stw r0, 0x1c(r4)
+/* 8029ADD0 00296A30 90 04 00 20 */ stw r0, 0x20(r4)
+/* 8029ADD4 00296A34 B0 64 00 40 */ sth r3, 0x40(r4)
+/* 8029ADD8 00296A38 B0 64 00 3C */ sth r3, 0x3c(r4)
+/* 8029ADDC 00296A3C B0 64 00 38 */ sth r3, 0x38(r4)
+/* 8029ADE0 00296A40 B0 64 00 34 */ sth r3, 0x34(r4)
+/* 8029ADE4 00296A44 B0 64 00 30 */ sth r3, 0x30(r4)
+/* 8029ADE8 00296A48 B0 64 00 2C */ sth r3, 0x2c(r4)
+/* 8029ADEC 00296A4C B0 64 00 28 */ sth r3, 0x28(r4)
+/* 8029ADF0 00296A50 B0 64 00 24 */ sth r3, 0x24(r4)
+/* 8029ADF4 00296A54 4E 80 00 20 */ blr
diff --git a/asm/code_800097D8.s b/asm/code_800097D8.s index 61646a4..90eac2a 100644 --- a/asm/code_800097D8.s +++ b/asm/code_800097D8.s @@ -655,7 +655,7 @@ lbl_8000A08C: /* 8000A098 00005CF8 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13) /* 8000A09C 00005CFC 38 7F 00 A0 */ addi r3, r31, 0xa0 /* 8000A0A0 00005D00 38 A0 00 20 */ li r5, 0x20 -/* 8000A0A4 00005D04 48 28 D6 A1 */ bl func_80297744 +/* 8000A0A4 00005D04 48 28 D6 A1 */ bl MEMInitAllocatorForExpHeap /* 8000A0A8 00005D08 38 80 00 00 */ li r4, 0 /* 8000A0AC 00005D0C 38 1F 00 A0 */ addi r0, r31, 0xa0 /* 8000A0B0 00005D10 90 9F 00 30 */ stw r4, 0x30(r31) diff --git a/asm/nw4r/lyt/detail/lyt_common.s b/asm/nw4r/lyt/detail/lyt_common.s index e67dd25..c8f598c 100644 --- a/asm/nw4r/lyt/detail/lyt_common.s +++ b/asm/nw4r/lyt/detail/lyt_common.s @@ -52,7 +52,7 @@ Free__Q44nw4r3lyt6detail11TexCoordAryFv: /* 8038E7A0 0038A400 2C 04 00 00 */ cmpwi r4, 0
/* 8038E7A4 0038A404 41 82 00 1C */ beq lbl_8038E7C0
/* 8038E7A8 0038A408 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 8038E7AC 0038A40C 4B F0 8F 89 */ bl func_80297734
+/* 8038E7AC 0038A40C 4B F0 8F 89 */ bl MEMFreeToAllocator
/* 8038E7B0 0038A410 38 00 00 00 */ li r0, 0
/* 8038E7B4 0038A414 90 1F 00 04 */ stw r0, 4(r31)
/* 8038E7B8 0038A418 98 1F 00 00 */ stb r0, 0(r31)
@@ -80,7 +80,7 @@ Reserve__Q44nw4r3lyt6detail11TexCoordAryFUc: /* 8038E800 0038A460 2C 04 00 00 */ cmpwi r4, 0
/* 8038E804 0038A464 41 82 00 1C */ beq lbl_8038E820
/* 8038E808 0038A468 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 8038E80C 0038A46C 4B F0 8F 29 */ bl func_80297734
+/* 8038E80C 0038A46C 4B F0 8F 29 */ bl MEMFreeToAllocator
/* 8038E810 0038A470 38 00 00 00 */ li r0, 0
/* 8038E814 0038A474 90 1E 00 04 */ stw r0, 4(r30)
/* 8038E818 0038A478 98 1E 00 00 */ stb r0, 0(r30)
@@ -88,7 +88,7 @@ Reserve__Q44nw4r3lyt6detail11TexCoordAryFUc: lbl_8038E820:
/* 8038E820 0038A480 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 8038E824 0038A484 57 E4 2C F4 */ rlwinm r4, r31, 5, 0x13, 0x1a
-/* 8038E828 0038A488 4B F0 8E FD */ bl func_80297724
+/* 8038E828 0038A488 4B F0 8E FD */ bl MEMAllocFromAllocator
/* 8038E82C 0038A48C 2C 03 00 00 */ cmpwi r3, 0
/* 8038E830 0038A490 90 7E 00 04 */ stw r3, 4(r30)
/* 8038E834 0038A494 41 82 00 08 */ beq lbl_8038E83C
diff --git a/asm/nw4r/lyt/lyt_animation.s b/asm/nw4r/lyt/lyt_animation.s index 889e6af..2b047a1 100644 --- a/asm/nw4r/lyt/lyt_animation.s +++ b/asm/nw4r/lyt/lyt_animation.s @@ -237,13 +237,13 @@ __dt__Q34nw4r3lyt18AnimTransformBasicFv: /* 8038DA54 003896B4 90 A3 00 00 */ stw r5, 0(r3)
/* 8038DA58 003896B8 41 82 00 0C */ beq lbl_8038DA64
/* 8038DA5C 003896BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 8038DA60 003896C0 4B F0 9C D5 */ bl func_80297734
+/* 8038DA60 003896C0 4B F0 9C D5 */ bl MEMFreeToAllocator
lbl_8038DA64:
/* 8038DA64 003896C4 80 9E 00 14 */ lwz r4, 0x14(r30)
/* 8038DA68 003896C8 2C 04 00 00 */ cmpwi r4, 0
/* 8038DA6C 003896CC 41 82 00 0C */ beq lbl_8038DA78
/* 8038DA70 003896D0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 8038DA74 003896D4 4B F0 9C C1 */ bl func_80297734
+/* 8038DA74 003896D4 4B F0 9C C1 */ bl MEMFreeToAllocator
lbl_8038DA78:
/* 8038DA78 003896D8 2C 1F 00 00 */ cmpwi r31, 0
/* 8038DA7C 003896DC 40 81 00 0C */ ble lbl_8038DA88
@@ -276,7 +276,7 @@ SetResource__Q34nw4r3lyt18AnimTransformBasicFPCQ44nw4r3lyt3res14AnimationBlockPQ /* 8038DAD8 00389738 41 82 00 80 */ beq lbl_8038DB58
/* 8038DADC 0038973C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 8038DAE0 00389740 54 C4 13 BA */ rlwinm r4, r6, 2, 0xe, 0x1d
-/* 8038DAE4 00389744 4B F0 9C 41 */ bl func_80297724
+/* 8038DAE4 00389744 4B F0 9C 41 */ bl MEMAllocFromAllocator
/* 8038DAE8 00389748 2C 03 00 00 */ cmpwi r3, 0
/* 8038DAEC 0038974C 90 7E 00 14 */ stw r3, 0x14(r30)
/* 8038DAF0 00389750 41 82 00 68 */ beq lbl_8038DB58
@@ -311,7 +311,7 @@ lbl_8038DB58: /* 8038DB58 003897B8 A0 1F 00 0E */ lhz r0, 0xe(r31)
/* 8038DB5C 003897BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 8038DB60 003897C0 54 04 20 36 */ slwi r4, r0, 4
-/* 8038DB64 003897C4 4B F0 9B C1 */ bl func_80297724
+/* 8038DB64 003897C4 4B F0 9B C1 */ bl MEMAllocFromAllocator
/* 8038DB68 003897C8 2C 03 00 00 */ cmpwi r3, 0
/* 8038DB6C 003897CC 90 7E 00 18 */ stw r3, 0x18(r30)
/* 8038DB70 003897D0 41 82 00 5C */ beq lbl_8038DBCC
diff --git a/asm/nw4r/lyt/lyt_group.s b/asm/nw4r/lyt/lyt_group.s index ecaa918..6ee6d2a 100644 --- a/asm/nw4r/lyt/lyt_group.s +++ b/asm/nw4r/lyt/lyt_group.s @@ -47,7 +47,7 @@ lbl_80385E98: /* 80385EBC 00381B1C 41 82 00 40 */ beq lbl_80385EFC
/* 80385EC0 00381B20 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80385EC4 00381B24 38 80 00 0C */ li r4, 0xc
-/* 80385EC8 00381B28 4B F1 18 5D */ bl func_80297724
+/* 80385EC8 00381B28 4B F1 18 5D */ bl MEMAllocFromAllocator
/* 80385ECC 00381B2C 2C 03 00 00 */ cmpwi r3, 0
/* 80385ED0 00381B30 41 82 00 2C */ beq lbl_80385EFC
/* 80385ED4 00381B34 7C 65 1B 78 */ mr r5, r3
@@ -102,7 +102,7 @@ lbl_80385F68: /* 80385F7C 00381BDC 4B FD CC 41 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 80385F80 00381BE0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80385F84 00381BE4 7F A4 EB 78 */ mr r4, r29
-/* 80385F88 00381BE8 4B F1 17 AD */ bl func_80297734
+/* 80385F88 00381BE8 4B F1 17 AD */ bl MEMFreeToAllocator
lbl_80385F8C:
/* 80385F8C 00381BEC 7C 1F F0 40 */ cmplw r31, r30
/* 80385F90 00381BF0 40 82 FF D8 */ bne lbl_80385F68
@@ -157,7 +157,7 @@ lbl_80386000: /* 8038603C 00381C9C 4E 80 04 21 */ bctrl
/* 80386040 00381CA0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386044 00381CA4 7F A4 EB 78 */ mr r4, r29
-/* 80386048 00381CA8 4B F1 16 ED */ bl func_80297734
+/* 80386048 00381CA8 4B F1 16 ED */ bl MEMFreeToAllocator
lbl_8038604C:
/* 8038604C 00381CAC 7C 1F F0 40 */ cmplw r31, r30
/* 80386050 00381CB0 40 82 FF B0 */ bne lbl_80386000
diff --git a/asm/nw4r/lyt/lyt_layout.s b/asm/nw4r/lyt/lyt_layout.s index 3ffcb2d..1a0757c 100644 --- a/asm/nw4r/lyt/lyt_layout.s +++ b/asm/nw4r/lyt/lyt_layout.s @@ -177,7 +177,7 @@ __dt__Q34nw4r3lyt6LayoutFv: /* 80386368 00381FC8 4B FF FC 69 */ bl __dt__Q34nw4r3lyt14GroupContainerFv
/* 8038636C 00381FCC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386370 00381FD0 80 9B 00 14 */ lwz r4, 0x14(r27)
-/* 80386374 00381FD4 4B F1 13 C1 */ bl func_80297734
+/* 80386374 00381FD4 4B F1 13 C1 */ bl MEMFreeToAllocator
lbl_80386378:
/* 80386378 00381FD8 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 8038637C 00381FDC 2C 03 00 00 */ cmpwi r3, 0
@@ -192,7 +192,7 @@ lbl_80386378: /* 803863A0 00382000 4E 80 04 21 */ bctrl
/* 803863A4 00382004 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 803863A8 00382008 80 9B 00 10 */ lwz r4, 0x10(r27)
-/* 803863AC 0038200C 4B F1 13 89 */ bl func_80297734
+/* 803863AC 0038200C 4B F1 13 89 */ bl MEMFreeToAllocator
lbl_803863B0:
/* 803863B0 00382010 83 FB 00 08 */ lwz r31, 8(r27)
/* 803863B4 00382014 3B DB 00 08 */ addi r30, r27, 8
@@ -213,7 +213,7 @@ lbl_803863BC: /* 803863EC 0038204C 4E 80 04 21 */ bctrl
/* 803863F0 00382050 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 803863F4 00382054 7F A4 EB 78 */ mr r4, r29
-/* 803863F8 00382058 4B F1 13 3D */ bl func_80297734
+/* 803863F8 00382058 4B F1 13 3D */ bl MEMFreeToAllocator
lbl_803863FC:
/* 803863FC 0038205C 7C 1F F0 40 */ cmplw r31, r30
/* 80386400 00382060 40 82 FF BC */ bne lbl_803863BC
@@ -393,7 +393,7 @@ lbl_80386654: /* 8038665C 003822BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386660 003822C0 3A 40 00 01 */ li r18, 1
/* 80386664 003822C4 38 80 00 0C */ li r4, 0xc
-/* 80386668 003822C8 4B F1 10 BD */ bl func_80297724
+/* 80386668 003822C8 4B F1 10 BD */ bl MEMAllocFromAllocator
/* 8038666C 003822CC 2C 03 00 00 */ cmpwi r3, 0
/* 80386670 003822D0 41 82 00 24 */ beq lbl_80386694
/* 80386674 003822D4 41 82 00 24 */ beq lbl_80386698
@@ -418,7 +418,7 @@ lbl_803866A0: /* 803866B4 00382314 82 BE 00 10 */ lwz r21, 0x10(r30)
/* 803866B8 00382318 38 80 00 2C */ li r4, 0x2c
/* 803866BC 0038231C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 803866C0 00382320 4B F1 10 65 */ bl func_80297724
+/* 803866C0 00382320 4B F1 10 65 */ bl MEMAllocFromAllocator
/* 803866C4 00382324 2C 03 00 00 */ cmpwi r3, 0
/* 803866C8 00382328 41 82 00 20 */ beq lbl_803866E8
/* 803866CC 0038232C 7C 64 1B 78 */ mr r4, r3
@@ -524,7 +524,7 @@ lbl_8038680C: lbl_8038681C:
/* 8038681C 0038247C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386820 00382480 38 80 00 20 */ li r4, 0x20
-/* 80386824 00382484 4B F1 0F 01 */ bl func_80297724
+/* 80386824 00382484 4B F1 0F 01 */ bl MEMAllocFromAllocator
/* 80386828 00382488 2C 03 00 00 */ cmpwi r3, 0
/* 8038682C 0038248C 41 82 00 18 */ beq lbl_80386844
/* 80386830 00382490 7C 77 1B 78 */ mr r23, r3
@@ -847,7 +847,7 @@ lbl_80386C1C: /* 80386C1C 0038287C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386C20 00382880 7C 9F 23 78 */ mr r31, r4
/* 80386C24 00382884 38 80 00 D4 */ li r4, 0xd4
-/* 80386C28 00382888 4B F1 0A FD */ bl func_80297724
+/* 80386C28 00382888 4B F1 0A FD */ bl MEMAllocFromAllocator
/* 80386C2C 0038288C 2C 03 00 00 */ cmpwi r3, 0
/* 80386C30 00382890 41 82 00 14 */ beq lbl_80386C44
/* 80386C34 00382894 41 82 01 6C */ beq lbl_80386DA0
@@ -869,7 +869,7 @@ lbl_80386C4C: /* 80386C6C 003828CC 90 E1 00 3C */ stw r7, 0x3c(r1)
/* 80386C70 003828D0 90 C1 00 40 */ stw r6, 0x40(r1)
/* 80386C74 003828D4 90 01 00 44 */ stw r0, 0x44(r1)
-/* 80386C78 003828D8 4B F1 0A AD */ bl func_80297724
+/* 80386C78 003828D8 4B F1 0A AD */ bl MEMAllocFromAllocator
/* 80386C7C 003828DC 2C 03 00 00 */ cmpwi r3, 0
/* 80386C80 003828E0 41 82 00 18 */ beq lbl_80386C98
/* 80386C84 003828E4 41 82 01 1C */ beq lbl_80386DA0
@@ -892,7 +892,7 @@ lbl_80386CA0: /* 80386CC0 00382920 90 E1 00 2C */ stw r7, 0x2c(r1)
/* 80386CC4 00382924 90 C1 00 30 */ stw r6, 0x30(r1)
/* 80386CC8 00382928 90 01 00 34 */ stw r0, 0x34(r1)
-/* 80386CCC 0038292C 4B F1 0A 59 */ bl func_80297724
+/* 80386CCC 0038292C 4B F1 0A 59 */ bl MEMAllocFromAllocator
/* 80386CD0 00382930 2C 03 00 00 */ cmpwi r3, 0
/* 80386CD4 00382934 41 82 00 18 */ beq lbl_80386CEC
/* 80386CD8 00382938 41 82 00 C8 */ beq lbl_80386DA0
@@ -915,7 +915,7 @@ lbl_80386CF4: /* 80386D14 00382974 90 E1 00 1C */ stw r7, 0x1c(r1)
/* 80386D18 00382978 90 C1 00 20 */ stw r6, 0x20(r1)
/* 80386D1C 0038297C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80386D20 00382980 4B F1 0A 05 */ bl func_80297724
+/* 80386D20 00382980 4B F1 0A 05 */ bl MEMAllocFromAllocator
/* 80386D24 00382984 2C 03 00 00 */ cmpwi r3, 0
/* 80386D28 00382988 41 82 00 18 */ beq lbl_80386D40
/* 80386D2C 0038298C 41 82 00 74 */ beq lbl_80386DA0
@@ -938,7 +938,7 @@ lbl_80386D48: /* 80386D68 003829C8 90 E1 00 0C */ stw r7, 0xc(r1)
/* 80386D6C 003829CC 90 C1 00 10 */ stw r6, 0x10(r1)
/* 80386D70 003829D0 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80386D74 003829D4 4B F1 09 B1 */ bl func_80297724
+/* 80386D74 003829D4 4B F1 09 B1 */ bl MEMAllocFromAllocator
/* 80386D78 003829D8 2C 03 00 00 */ cmpwi r3, 0
/* 80386D7C 003829DC 41 82 00 18 */ beq lbl_80386D94
/* 80386D80 003829E0 41 82 00 20 */ beq lbl_80386DA0
diff --git a/asm/nw4r/lyt/lyt_material.s b/asm/nw4r/lyt/lyt_material.s index 068f311..dd7e5de 100644 --- a/asm/nw4r/lyt/lyt_material.s +++ b/asm/nw4r/lyt/lyt_material.s @@ -1319,7 +1319,7 @@ __dt__Q34nw4r3lyt8MaterialFv: /* 8038B758 003873B8 2C 04 00 00 */ cmpwi r4, 0
/* 8038B75C 003873BC 41 82 00 14 */ beq lbl_8038B770
/* 8038B760 003873C0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 8038B764 003873C4 4B F0 BF D1 */ bl func_80297734
+/* 8038B764 003873C4 4B F0 BF D1 */ bl MEMFreeToAllocator
/* 8038B768 003873C8 38 00 00 00 */ li r0, 0
/* 8038B76C 003873CC 90 1E 00 40 */ stw r0, 0x40(r30)
lbl_8038B770:
@@ -1405,7 +1405,7 @@ lbl_8038B890: /* 8038B894 003874F4 2C 04 00 00 */ cmpwi r4, 0
/* 8038B898 003874F8 41 82 00 2C */ beq lbl_8038B8C4
/* 8038B89C 003874FC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 8038B8A0 00387500 4B F0 BE 95 */ bl func_80297734
+/* 8038B8A0 00387500 4B F0 BE 95 */ bl MEMFreeToAllocator
/* 8038B8A4 00387504 80 74 00 38 */ lwz r3, 0x38(r20)
/* 8038B8A8 00387508 38 80 00 00 */ li r4, 0
/* 8038B8AC 0038750C 80 14 00 3C */ lwz r0, 0x3c(r20)
@@ -1430,7 +1430,7 @@ lbl_8038B8C4: /* 8038B8F4 00387554 7C 87 22 14 */ add r4, r7, r4
/* 8038B8F8 00387558 7C 05 02 14 */ add r0, r5, r0
/* 8038B8FC 0038755C 7C 84 02 14 */ add r4, r4, r0
-/* 8038B900 00387560 4B F0 BE 25 */ bl func_80297724
+/* 8038B900 00387560 4B F0 BE 25 */ bl MEMAllocFromAllocator
/* 8038B904 00387564 2C 03 00 00 */ cmpwi r3, 0
/* 8038B908 00387568 90 74 00 40 */ stw r3, 0x40(r20)
/* 8038B90C 0038756C 41 82 06 0C */ beq lbl_8038BF18
diff --git a/asm/nw4r/lyt/lyt_pane.s b/asm/nw4r/lyt/lyt_pane.s index 718146a..e5887c2 100644 --- a/asm/nw4r/lyt/lyt_pane.s +++ b/asm/nw4r/lyt/lyt_pane.s @@ -118,7 +118,7 @@ lbl_803850BC: /* 803850F8 00380D58 4E 80 04 21 */ bctrl
/* 803850FC 00380D5C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80385100 00380D60 7F A4 EB 78 */ mr r4, r29
-/* 80385104 00380D64 4B F1 26 31 */ bl func_80297734
+/* 80385104 00380D64 4B F1 26 31 */ bl MEMFreeToAllocator
lbl_80385108:
/* 80385108 00380D68 7C 1F F0 40 */ cmplw r31, r30
/* 8038510C 00380D6C 40 82 FF B0 */ bne lbl_803850BC
@@ -141,7 +141,7 @@ lbl_80385108: /* 80385150 00380DB0 4E 80 04 21 */ bctrl
/* 80385154 00380DB4 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80385158 00380DB8 80 9B 00 28 */ lwz r4, 0x28(r27)
-/* 8038515C 00380DBC 4B F1 25 D9 */ bl func_80297734
+/* 8038515C 00380DBC 4B F1 25 D9 */ bl MEMFreeToAllocator
lbl_80385160:
/* 80385160 00380DC0 34 7B 00 1C */ addic. r3, r27, 0x1c
/* 80385164 00380DC4 41 82 00 0C */ beq lbl_80385170
diff --git a/asm/nw4r/lyt/lyt_picture.s b/asm/nw4r/lyt/lyt_picture.s index 3806d35..be0bf0c 100644 --- a/asm/nw4r/lyt/lyt_picture.s +++ b/asm/nw4r/lyt/lyt_picture.s @@ -64,7 +64,7 @@ lbl_80386E44: lbl_80386E84:
/* 80386E84 00382AE4 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386E88 00382AE8 38 80 00 5C */ li r4, 0x5c
-/* 80386E8C 00382AEC 4B F1 08 99 */ bl func_80297724
+/* 80386E8C 00382AEC 4B F1 08 99 */ bl MEMAllocFromAllocator
/* 80386E90 00382AF0 2C 03 00 00 */ cmpwi r3, 0
/* 80386E94 00382AF4 41 82 00 2C */ beq lbl_80386EC0
/* 80386E98 00382AF8 A0 1D 00 5C */ lhz r0, 0x5c(r29)
@@ -117,7 +117,7 @@ __dt__Q34nw4r3lyt7PictureFv: /* 80386F40 00382BA0 4E 80 04 21 */ bctrl
/* 80386F44 00382BA4 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386F48 00382BA8 80 9E 00 28 */ lwz r4, 0x28(r30)
-/* 80386F4C 00382BAC 4B F1 07 E9 */ bl func_80297734
+/* 80386F4C 00382BAC 4B F1 07 E9 */ bl MEMFreeToAllocator
/* 80386F50 00382BB0 38 00 00 00 */ li r0, 0
/* 80386F54 00382BB4 90 1E 00 28 */ stw r0, 0x28(r30)
lbl_80386F58:
diff --git a/asm/nw4r/lyt/lyt_textBox.s b/asm/nw4r/lyt/lyt_textBox.s index 759e692..b091a6e 100644 --- a/asm/nw4r/lyt/lyt_textBox.s +++ b/asm/nw4r/lyt/lyt_textBox.s @@ -197,7 +197,7 @@ lbl_8038756C: /* 80387598 003831F8 41 82 00 44 */ beq lbl_803875DC
/* 8038759C 003831FC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 803875A0 00383200 38 80 00 18 */ li r4, 0x18
-/* 803875A4 00383204 4B F1 01 81 */ bl func_80297724
+/* 803875A4 00383204 4B F1 01 81 */ bl MEMAllocFromAllocator
/* 803875A8 00383208 2C 03 00 00 */ cmpwi r3, 0
/* 803875AC 0038320C 41 82 00 30 */ beq lbl_803875DC
/* 803875B0 00383210 7C 7F 1B 78 */ mr r31, r3
@@ -215,7 +215,7 @@ lbl_803875C0: lbl_803875DC:
/* 803875DC 0038323C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 803875E0 00383240 38 80 00 5C */ li r4, 0x5c
-/* 803875E4 00383244 4B F1 01 41 */ bl func_80297724
+/* 803875E4 00383244 4B F1 01 41 */ bl MEMAllocFromAllocator
/* 803875E8 00383248 2C 03 00 00 */ cmpwi r3, 0
/* 803875EC 0038324C 41 82 00 2C */ beq lbl_80387618
/* 803875F0 00383250 A0 1D 00 50 */ lhz r0, 0x50(r29)
@@ -263,7 +263,7 @@ __dt__Q34nw4r3lyt7TextBoxFv: /* 80387684 003832E4 4E 80 04 21 */ bctrl
/* 80387688 003832E8 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 8038768C 003832EC 80 9E 00 E0 */ lwz r4, 0xe0(r30)
-/* 80387690 003832F0 4B F1 00 A5 */ bl func_80297734
+/* 80387690 003832F0 4B F1 00 A5 */ bl MEMFreeToAllocator
/* 80387694 003832F4 88 1E 00 FD */ lbz r0, 0xfd(r30)
/* 80387698 003832F8 54 00 06 6E */ rlwinm r0, r0, 0, 0x19, 0x17
/* 8038769C 003832FC 98 1E 00 FD */ stb r0, 0xfd(r30)
@@ -312,7 +312,7 @@ lbl_80387714: /* 8038773C 0038339C 4E 80 04 21 */ bctrl
/* 80387740 003833A0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80387744 003833A4 80 9E 00 28 */ lwz r4, 0x28(r30)
-/* 80387748 003833A8 4B F0 FF ED */ bl func_80297734
+/* 80387748 003833A8 4B F0 FF ED */ bl MEMFreeToAllocator
/* 8038774C 003833AC 38 00 00 00 */ li r0, 0
/* 80387750 003833B0 90 1E 00 28 */ stw r0, 0x28(r30)
lbl_80387754:
@@ -578,7 +578,7 @@ AllocStringBuffer__Q34nw4r3lyt7TextBoxFUs: /* 80387AE4 00383744 4E 80 04 21 */ bctrl
/* 80387AE8 00383748 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80387AEC 0038374C 7F E4 FB 78 */ mr r4, r31
-/* 80387AF0 00383750 4B F0 FC 35 */ bl func_80297724
+/* 80387AF0 00383750 4B F0 FC 35 */ bl MEMAllocFromAllocator
/* 80387AF4 00383754 2C 03 00 00 */ cmpwi r3, 0
/* 80387AF8 00383758 90 7E 00 D4 */ stw r3, 0xd4(r30)
/* 80387AFC 0038375C 41 82 00 08 */ beq lbl_80387B04
@@ -602,7 +602,7 @@ FreeStringBuffer__Q34nw4r3lyt7TextBoxFv: /* 80387B34 00383794 2C 04 00 00 */ cmpwi r4, 0
/* 80387B38 00383798 41 82 00 18 */ beq lbl_80387B50
/* 80387B3C 0038379C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 80387B40 003837A0 4B F0 FB F5 */ bl func_80297734
+/* 80387B40 003837A0 4B F0 FB F5 */ bl MEMFreeToAllocator
/* 80387B44 003837A4 38 00 00 00 */ li r0, 0
/* 80387B48 003837A8 90 1F 00 D4 */ stw r0, 0xd4(r31)
/* 80387B4C 003837AC B0 1F 00 F8 */ sth r0, 0xf8(r31)
diff --git a/asm/nw4r/lyt/lyt_window.s b/asm/nw4r/lyt/lyt_window.s index ccb081f..7b28277 100644 --- a/asm/nw4r/lyt/lyt_window.s +++ b/asm/nw4r/lyt/lyt_window.s @@ -68,7 +68,7 @@ lbl_80387F7C: lbl_80387FA4:
/* 80387FA4 00383C04 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80387FA8 00383C08 38 80 00 5C */ li r4, 0x5c
-/* 80387FAC 00383C0C 4B F0 F7 79 */ bl func_80297724
+/* 80387FAC 00383C0C 4B F0 F7 79 */ bl MEMAllocFromAllocator
/* 80387FB0 00383C10 2C 03 00 00 */ cmpwi r3, 0
/* 80387FB4 00383C14 41 82 00 28 */ beq lbl_80387FDC
/* 80387FB8 00383C18 A0 1D 00 10 */ lhz r0, 0x10(r29)
@@ -90,7 +90,7 @@ lbl_80387FDC: /* 80387FF0 00383C50 41 82 00 B0 */ beq lbl_803880A0
/* 80387FF4 00383C54 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80387FF8 00383C58 54 04 1D 78 */ rlwinm r4, r0, 3, 0x15, 0x1c
-/* 80387FFC 00383C5C 4B F0 F7 29 */ bl func_80297724
+/* 80387FFC 00383C5C 4B F0 F7 29 */ bl MEMAllocFromAllocator
/* 80388000 00383C60 2C 03 00 00 */ cmpwi r3, 0
/* 80388004 00383C64 90 78 00 FC */ stw r3, 0xfc(r24)
/* 80388008 00383C68 41 82 00 98 */ beq lbl_803880A0
@@ -112,7 +112,7 @@ lbl_80388028: /* 80388044 00383CA4 7C 60 EA 14 */ add r3, r0, r29
/* 80388048 00383CA8 93 E3 00 04 */ stw r31, 4(r3)
/* 8038804C 00383CAC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
-/* 80388050 00383CB0 4B F0 F6 D5 */ bl func_80297724
+/* 80388050 00383CB0 4B F0 F6 D5 */ bl MEMAllocFromAllocator
/* 80388054 00383CB4 2C 03 00 00 */ cmpwi r3, 0
/* 80388058 00383CB8 41 82 00 30 */ beq lbl_80388088
/* 8038805C 00383CBC A0 17 00 00 */ lhz r0, 0(r23)
@@ -179,7 +179,7 @@ lbl_8038810C: /* 80388130 00383D90 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80388134 00383D94 7C 80 FA 14 */ add r4, r0, r31
/* 80388138 00383D98 80 84 00 04 */ lwz r4, 4(r4)
-/* 8038813C 00383D9C 4B F0 F5 F9 */ bl func_80297734
+/* 8038813C 00383D9C 4B F0 F5 F9 */ bl MEMFreeToAllocator
/* 80388140 00383DA0 3B FF 00 08 */ addi r31, r31, 8
/* 80388144 00383DA4 3B DE 00 01 */ addi r30, r30, 1
lbl_80388148:
@@ -188,7 +188,7 @@ lbl_80388148: /* 80388150 00383DB0 41 80 FF BC */ blt lbl_8038810C
/* 80388154 00383DB4 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80388158 00383DB8 80 9C 00 FC */ lwz r4, 0xfc(r28)
-/* 8038815C 00383DBC 4B F0 F5 D9 */ bl func_80297734
+/* 8038815C 00383DBC 4B F0 F5 D9 */ bl MEMFreeToAllocator
lbl_80388160:
/* 80388160 00383DC0 80 7C 00 28 */ lwz r3, 0x28(r28)
/* 80388164 00383DC4 2C 03 00 00 */ cmpwi r3, 0
@@ -203,7 +203,7 @@ lbl_80388160: /* 80388188 00383DE8 4E 80 04 21 */ bctrl
/* 8038818C 00383DEC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80388190 00383DF0 80 9C 00 28 */ lwz r4, 0x28(r28)
-/* 80388194 00383DF4 4B F0 F5 A1 */ bl func_80297734
+/* 80388194 00383DF4 4B F0 F5 A1 */ bl MEMFreeToAllocator
/* 80388198 00383DF8 38 00 00 00 */ li r0, 0
/* 8038819C 00383DFC 90 1C 00 28 */ stw r0, 0x28(r28)
lbl_803881A0:
diff --git a/asm/nw4r/snd/detail/snd_AxfxImpl.s b/asm/nw4r/snd/detail/snd_AxfxImpl.s index 9ba5f8b..3fcd2b3 100644 --- a/asm/nw4r/snd/detail/snd_AxfxImpl.s +++ b/asm/nw4r/snd/detail/snd_AxfxImpl.s @@ -12,7 +12,7 @@ CreateHeap__Q44nw4r3snd6detail8AxfxImplFPvUl: /* 8036C6F8 00368358 7C 83 23 78 */ mr r3, r4
/* 8036C6FC 0036835C 7C A4 2B 78 */ mr r4, r5
/* 8036C700 00368360 38 A0 00 00 */ li r5, 0
-/* 8036C704 00368364 4B F2 AD 09 */ bl func_8029740C
+/* 8036C704 00368364 4B F2 AD 09 */ bl MEMCreateFrmHeapEx
/* 8036C708 00368368 7C 03 00 D0 */ neg r0, r3
/* 8036C70C 0036836C 90 7F 00 04 */ stw r3, 4(r31)
/* 8036C710 00368370 7C 00 1B 78 */ or r0, r0, r3
@@ -28,7 +28,7 @@ DestroyHeap__Q44nw4r3snd6detail8AxfxImplFv: /* 8036C72C 0036838C 80 63 00 04 */ lwz r3, 4(r3)
/* 8036C730 00368390 2C 03 00 00 */ cmpwi r3, 0
/* 8036C734 00368394 4D 82 00 20 */ beqlr
-/* 8036C738 00368398 4B F2 AD 58 */ b func_80297490
+/* 8036C738 00368398 4B F2 AD 58 */ b MEMDestroyFrmHeap
/* 8036C73C 0036839C 4E 80 00 20 */ blr
.global HookAlloc__Q44nw4r3snd6detail8AxfxImplFPPFUl_PvPPFPv_v
@@ -79,7 +79,7 @@ Alloc__Q44nw4r3snd6detail8AxfxImplFUl: /* 8036C7D4 00368434 7F E4 FB 78 */ mr r4, r31
/* 8036C7D8 00368438 80 CD B1 E8 */ lwz r6, lbl_806404A8-_SDA_BASE_(r13)
/* 8036C7DC 0036843C 80 66 00 04 */ lwz r3, 4(r6)
-/* 8036C7E0 00368440 4B F2 AC E1 */ bl func_802974C0
+/* 8036C7E0 00368440 4B F2 AC E1 */ bl MEMAllocFromFrmHeapEx
/* 8036C7E4 00368444 80 AD B1 E8 */ lwz r5, lbl_806404A8-_SDA_BASE_(r13)
/* 8036C7E8 00368448 38 1F 00 03 */ addi r0, r31, 3
/* 8036C7EC 0036844C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
@@ -110,5 +110,5 @@ lbl_8036C834: /* 8036C840 003684A0 4C 82 00 20 */ bnelr
/* 8036C844 003684A4 80 63 00 04 */ lwz r3, 4(r3)
/* 8036C848 003684A8 38 80 00 03 */ li r4, 3
-/* 8036C84C 003684AC 4B F2 AD 94 */ b func_802975E0
+/* 8036C84C 003684AC 4B F2 AD 94 */ b MEMFreeToFrmHeap
/* 8036C850 003684B0 4E 80 00 20 */ blr
diff --git a/asm/nw4r/snd/detail/snd_FrameHeap.s b/asm/nw4r/snd/detail/snd_FrameHeap.s index 6ace34b..5170bc6 100644 --- a/asm/nw4r/snd/detail/snd_FrameHeap.s +++ b/asm/nw4r/snd/detail/snd_FrameHeap.s @@ -71,9 +71,9 @@ lbl_80370130: lbl_8037013C:
/* 8037013C 0036BD9C 80 7B 00 00 */ lwz r3, 0(r27)
/* 80370140 0036BDA0 38 80 00 03 */ li r4, 3
-/* 80370144 0036BDA4 4B F2 74 9D */ bl func_802975E0
+/* 80370144 0036BDA4 4B F2 74 9D */ bl MEMFreeToFrmHeap
/* 80370148 0036BDA8 80 7B 00 00 */ lwz r3, 0(r27)
-/* 8037014C 0036BDAC 4B F2 73 45 */ bl func_80297490
+/* 8037014C 0036BDAC 4B F2 73 45 */ bl MEMDestroyFrmHeap
/* 80370150 0036BDB0 38 00 00 00 */ li r0, 0
/* 80370154 0036BDB4 90 1B 00 00 */ stw r0, 0(r27)
lbl_80370158:
@@ -151,9 +151,9 @@ lbl_80370240: lbl_8037024C:
/* 8037024C 0036BEAC 80 7A 00 00 */ lwz r3, 0(r26)
/* 80370250 0036BEB0 38 80 00 03 */ li r4, 3
-/* 80370254 0036BEB4 4B F2 73 8D */ bl func_802975E0
+/* 80370254 0036BEB4 4B F2 73 8D */ bl MEMFreeToFrmHeap
/* 80370258 0036BEB8 80 7A 00 00 */ lwz r3, 0(r26)
-/* 8037025C 0036BEBC 4B F2 72 35 */ bl func_80297490
+/* 8037025C 0036BEBC 4B F2 72 35 */ bl MEMDestroyFrmHeap
/* 80370260 0036BEC0 38 00 00 00 */ li r0, 0
/* 80370264 0036BEC4 90 1A 00 00 */ stw r0, 0(r26)
lbl_80370268:
@@ -167,7 +167,7 @@ lbl_80370268: lbl_80370284:
/* 80370284 0036BEE4 7C 83 20 50 */ subf r4, r3, r4
/* 80370288 0036BEE8 38 A0 00 00 */ li r5, 0
-/* 8037028C 0036BEEC 4B F2 71 81 */ bl func_8029740C
+/* 8037028C 0036BEEC 4B F2 71 81 */ bl MEMCreateFrmHeapEx
/* 80370290 0036BEF0 2C 03 00 00 */ cmpwi r3, 0
/* 80370294 0036BEF4 90 7A 00 00 */ stw r3, 0(r26)
/* 80370298 0036BEF8 40 82 00 0C */ bne lbl_803702A4
@@ -176,7 +176,7 @@ lbl_80370284: lbl_803702A4:
/* 803702A4 0036BF04 38 80 00 14 */ li r4, 0x14
/* 803702A8 0036BF08 38 A0 00 04 */ li r5, 4
-/* 803702AC 0036BF0C 4B F2 72 15 */ bl func_802974C0
+/* 803702AC 0036BF0C 4B F2 72 15 */ bl MEMAllocFromFrmHeapEx
/* 803702B0 0036BF10 2C 03 00 00 */ cmpwi r3, 0
/* 803702B4 0036BF14 40 82 00 0C */ bne lbl_803702C0
/* 803702B8 0036BF18 38 00 00 00 */ li r0, 0
@@ -270,9 +270,9 @@ lbl_803703D8: lbl_803703E4:
/* 803703E4 0036C044 80 7C 00 00 */ lwz r3, 0(r28)
/* 803703E8 0036C048 38 80 00 03 */ li r4, 3
-/* 803703EC 0036C04C 4B F2 71 F5 */ bl func_802975E0
+/* 803703EC 0036C04C 4B F2 71 F5 */ bl MEMFreeToFrmHeap
/* 803703F0 0036C050 80 7C 00 00 */ lwz r3, 0(r28)
-/* 803703F4 0036C054 4B F2 70 9D */ bl func_80297490
+/* 803703F4 0036C054 4B F2 70 9D */ bl MEMDestroyFrmHeap
/* 803703F8 0036C058 38 00 00 00 */ li r0, 0
/* 803703FC 0036C05C 90 1C 00 00 */ stw r0, 0(r28)
lbl_80370400:
@@ -337,11 +337,11 @@ lbl_803704BC: lbl_803704C8:
/* 803704C8 0036C128 80 7C 00 00 */ lwz r3, 0(r28)
/* 803704CC 0036C12C 38 80 00 03 */ li r4, 3
-/* 803704D0 0036C130 4B F2 71 11 */ bl func_802975E0
+/* 803704D0 0036C130 4B F2 71 11 */ bl MEMFreeToFrmHeap
/* 803704D4 0036C134 80 7C 00 00 */ lwz r3, 0(r28)
/* 803704D8 0036C138 38 80 00 14 */ li r4, 0x14
/* 803704DC 0036C13C 38 A0 00 04 */ li r5, 4
-/* 803704E0 0036C140 4B F2 6F E1 */ bl func_802974C0
+/* 803704E0 0036C140 4B F2 6F E1 */ bl MEMAllocFromFrmHeapEx
/* 803704E4 0036C144 2C 03 00 00 */ cmpwi r3, 0
/* 803704E8 0036C148 41 82 00 44 */ beq lbl_8037052C
/* 803704EC 0036C14C 7C 65 1B 78 */ mr r5, r3
@@ -387,7 +387,7 @@ Alloc__Q44nw4r3snd6detail9FrameHeapFUlPFPvUlPv_vPv: /* 80370578 0036C1D8 7C DE 33 78 */ mr r30, r6
/* 8037057C 0036C1DC 38 87 00 20 */ addi r4, r7, 0x20
/* 80370580 0036C1E0 38 A0 00 20 */ li r5, 0x20
-/* 80370584 0036C1E4 4B F2 6F 3D */ bl func_802974C0
+/* 80370584 0036C1E4 4B F2 6F 3D */ bl MEMAllocFromFrmHeapEx
/* 80370588 0036C1E8 2C 03 00 00 */ cmpwi r3, 0
/* 8037058C 0036C1EC 7C 7F 1B 78 */ mr r31, r3
/* 80370590 0036C1F0 40 82 00 0C */ bne lbl_8037059C
@@ -433,7 +433,7 @@ GetFreeSize__Q44nw4r3snd6detail9FrameHeapCFv: /* 80370608 0036C268 80 63 00 00 */ lwz r3, 0(r3)
/* 8037060C 0036C26C 38 80 00 20 */ li r4, 0x20
/* 80370610 0036C270 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80370614 0036C274 4B F2 70 6D */ bl func_80297680
+/* 80370614 0036C274 4B F2 70 6D */ bl MEMGetAllocatableSizeForFrmHeapEx
/* 80370618 0036C278 38 80 00 20 */ li r4, 0x20
/* 8037061C 0036C27C 38 03 FF E0 */ addi r0, r3, -32
/* 80370620 0036C280 7C 64 18 10 */ subfc r3, r4, r3
diff --git a/asm/text_7.s b/asm/text_7.s index 8d7d8f0..6bf3259 100644 --- a/asm/text_7.s +++ b/asm/text_7.s @@ -17487,7 +17487,7 @@ lbl_80231860: /* 8023186C 0022D4CC 48 00 00 8C */ b lbl_802318F8 lbl_80231870: /* 80231870 0022D4D0 7F E3 FB 78 */ mr r3, r31 -/* 80231874 0022D4D4 48 07 0E 99 */ bl func_802A270C +/* 80231874 0022D4D4 48 07 0E 99 */ bl CXGetUncompressedSize /* 80231878 0022D4D8 7C 7E 1B 78 */ mr r30, r3 /* 8023187C 0022D4DC 80 6D 96 28 */ lwz r3, lbl_8063E8E8-_SDA_BASE_(r13) /* 80231880 0022D4E0 7F C4 F3 78 */ mr r4, r30 @@ -61576,19 +61576,19 @@ lbl_8025802C: /* 8025806C 00253CCC 2C 03 00 00 */ cmpwi r3, 0 /* 80258070 00253CD0 41 82 00 18 */ beq lbl_80258088 /* 80258074 00253CD4 38 80 00 00 */ li r4, 0 -/* 80258078 00253CD8 48 04 12 15 */ bl func_8029928C +/* 80258078 00253CD8 48 04 12 15 */ bl MIXSetInput /* 8025807C 00253CDC 80 61 00 0C */ lwz r3, 0xc(r1) /* 80258080 00253CE0 38 80 00 00 */ li r4, 0 -/* 80258084 00253CE4 48 04 12 2D */ bl func_802992B0 +/* 80258084 00253CE4 48 04 12 2D */ bl MIXSetFader lbl_80258088: /* 80258088 00253CE8 80 61 00 08 */ lwz r3, 8(r1) /* 8025808C 00253CEC 2C 03 00 00 */ cmpwi r3, 0 /* 80258090 00253CF0 41 82 00 18 */ beq lbl_802580A8 /* 80258094 00253CF4 38 80 00 00 */ li r4, 0 -/* 80258098 00253CF8 48 04 11 F5 */ bl func_8029928C +/* 80258098 00253CF8 48 04 11 F5 */ bl MIXSetInput /* 8025809C 00253CFC 80 61 00 08 */ lwz r3, 8(r1) /* 802580A0 00253D00 38 80 00 00 */ li r4, 0 -/* 802580A4 00253D04 48 04 12 0D */ bl func_802992B0 +/* 802580A4 00253D04 48 04 12 0D */ bl MIXSetFader lbl_802580A8: /* 802580A8 00253D08 38 60 00 01 */ li r3, 1 lbl_802580AC: @@ -61776,7 +61776,7 @@ lbl_802582F8: /* 8025831C 00253F7C 39 00 FC 78 */ li r8, -904 /* 80258320 00253F80 39 20 00 00 */ li r9, 0 /* 80258324 00253F84 39 40 00 7F */ li r10, 0x7f -/* 80258328 00253F88 48 03 F8 8D */ bl func_80297BB4 +/* 80258328 00253F88 48 03 F8 8D */ bl MIXInitChannel /* 8025832C 00253F8C 48 00 00 2C */ b lbl_80258358 lbl_80258330: /* 80258330 00253F90 38 00 00 00 */ li r0, 0 @@ -61788,7 +61788,7 @@ lbl_80258330: /* 80258348 00253FA8 39 00 FC 78 */ li r8, -904 /* 8025834C 00253FAC 39 20 00 40 */ li r9, 0x40 /* 80258350 00253FB0 39 40 00 7F */ li r10, 0x7f -/* 80258354 00253FB4 48 03 F8 61 */ bl func_80297BB4 +/* 80258354 00253FB4 48 03 F8 61 */ bl MIXInitChannel lbl_80258358: /* 80258358 00253FB8 80 7E 01 A8 */ lwz r3, 0x1a8(r30) /* 8025835C 00253FBC 38 00 00 01 */ li r0, 1 @@ -61846,7 +61846,7 @@ lbl_80258404: /* 80258424 00254084 90 7E 01 A4 */ stw r3, 0x1a4(r30) /* 80258428 00254088 40 82 00 24 */ bne lbl_8025844C /* 8025842C 0025408C 80 7E 01 A0 */ lwz r3, 0x1a0(r30) -/* 80258430 00254090 48 04 0E 45 */ bl func_80299274 +/* 80258430 00254090 48 04 0E 45 */ bl MIXReleaseChannel /* 80258434 00254094 80 7E 01 A0 */ lwz r3, 0x1a0(r30) /* 80258438 00254098 48 03 6E 7D */ bl AXFreeVoice /* 8025843C 0025409C 38 00 00 00 */ li r0, 0 @@ -61863,7 +61863,7 @@ lbl_8025844C: /* 80258464 002540C4 39 00 FC 78 */ li r8, -904 /* 80258468 002540C8 39 20 00 7F */ li r9, 0x7f /* 8025846C 002540CC 39 40 00 7F */ li r10, 0x7f -/* 80258470 002540D0 48 03 F7 45 */ bl func_80297BB4 +/* 80258470 002540D0 48 03 F7 45 */ bl MIXInitChannel /* 80258474 002540D4 80 7E 01 AC */ lwz r3, 0x1ac(r30) /* 80258478 002540D8 38 00 00 01 */ li r0, 1 /* 8025847C 002540DC 38 A0 00 0A */ li r5, 0xa @@ -62713,7 +62713,7 @@ func_80259054: /* 8025906C 00254CCC 2C 00 00 00 */ cmpwi r0, 0 /* 80259070 00254CD0 41 82 00 1C */ beq lbl_8025908C /* 80259074 00254CD4 7C 03 03 78 */ mr r3, r0 -/* 80259078 00254CD8 48 04 01 FD */ bl func_80299274 +/* 80259078 00254CD8 48 04 01 FD */ bl MIXReleaseChannel /* 8025907C 00254CDC 80 7F 01 A0 */ lwz r3, 0x1a0(r31) /* 80259080 00254CE0 48 03 62 35 */ bl AXFreeVoice /* 80259084 00254CE4 38 00 00 00 */ li r0, 0 @@ -62722,7 +62722,7 @@ lbl_8025908C: /* 8025908C 00254CEC 80 7F 01 A4 */ lwz r3, 0x1a4(r31) /* 80259090 00254CF0 2C 03 00 00 */ cmpwi r3, 0 /* 80259094 00254CF4 41 82 00 18 */ beq lbl_802590AC -/* 80259098 00254CF8 48 04 01 DD */ bl func_80299274 +/* 80259098 00254CF8 48 04 01 DD */ bl MIXReleaseChannel /* 8025909C 00254CFC 80 7F 01 A4 */ lwz r3, 0x1a4(r31) /* 802590A0 00254D00 48 03 62 15 */ bl AXFreeVoice /* 802590A4 00254D04 38 00 00 00 */ li r0, 0 @@ -62772,7 +62772,7 @@ lbl_80259130: /* 80259130 00254D90 A0 0D A6 5C */ lhz r0, lbl_8063F91C-_SDA_BASE_(r13) /* 80259134 00254D94 7C 1D 00 00 */ cmpw r29, r0 /* 80259138 00254D98 41 80 FF DC */ blt lbl_80259114 -/* 8025913C 00254D9C 48 04 01 99 */ bl func_802992D4 +/* 8025913C 00254D9C 48 04 01 99 */ bl MIXUpdateSettings /* 80259140 00254DA0 7F E3 FB 78 */ mr r3, r31 /* 80259144 00254DA4 48 01 56 41 */ bl OSRestoreInterrupts /* 80259148 00254DA8 80 01 00 24 */ lwz r0, 0x24(r1) @@ -62899,7 +62899,7 @@ func_802592DC: /* 802592FC 00254F5C 38 60 00 01 */ li r3, 1 /* 80259300 00254F60 48 00 00 7C */ b lbl_8025937C lbl_80259304: -/* 80259304 00254F64 48 03 E6 7D */ bl func_80297980 +/* 80259304 00254F64 48 03 E6 7D */ bl MIXInit /* 80259308 00254F68 48 03 90 15 */ bl AXGetMaxVoices /* 8025930C 00254F6C 2C 03 00 00 */ cmpwi r3, 0 /* 80259310 00254F70 40 82 00 08 */ bne lbl_80259318 @@ -62914,9 +62914,9 @@ lbl_80259318: /* 80259330 00254F90 38 60 00 00 */ li r3, 0 /* 80259334 00254F94 48 00 00 48 */ b lbl_8025937C lbl_80259338: -/* 80259338 00254F98 48 03 E7 51 */ bl func_80297A88 +/* 80259338 00254F98 48 03 E7 51 */ bl MIXInitSpecifyMem /* 8025933C 00254F9C 38 60 00 01 */ li r3, 1 -/* 80259340 00254FA0 48 03 E8 6D */ bl func_80297BAC +/* 80259340 00254FA0 48 03 E8 6D */ bl MIXSetSoundMode /* 80259344 00254FA4 4B F8 26 B9 */ bl func_801DB9FC /* 80259348 00254FA8 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13) /* 8025934C 00254FAC 3C 80 80 25 */ lis r4, lbl_802571E0@ha @@ -62958,7 +62958,7 @@ func_80259390: /* 802593CC 0025502C 80 6D A6 64 */ lwz r3, lbl_8063F924-_SDA_BASE_(r13) /* 802593D0 00255030 48 03 7A 81 */ bl AXRegisterCallback /* 802593D4 00255034 93 ED A6 64 */ stw r31, lbl_8063F924-_SDA_BASE_(r13) -/* 802593D8 00255038 48 03 E7 C1 */ bl func_80297B98 +/* 802593D8 00255038 48 03 E7 C1 */ bl MIXQuit /* 802593DC 0025503C 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 802593E0 00255040 80 9E 00 18 */ lwz r4, 0x18(r30) /* 802593E4 00255044 4B F8 19 65 */ bl func_801DAD48 @@ -62977,10 +62977,10 @@ func_80259408: /* 80259408 00255068 2C 03 00 00 */ cmpwi r3, 0 /* 8025940C 0025506C 40 82 00 0C */ bne lbl_80259418 /* 80259410 00255070 38 60 00 00 */ li r3, 0 -/* 80259414 00255074 48 03 E7 98 */ b func_80297BAC +/* 80259414 00255074 48 03 E7 98 */ b MIXSetSoundMode lbl_80259418: /* 80259418 00255078 38 60 00 01 */ li r3, 1 -/* 8025941C 0025507C 48 03 E7 90 */ b func_80297BAC +/* 8025941C 0025507C 48 03 E7 90 */ b MIXSetSoundMode .global func_80259420 func_80259420: diff --git a/asm/text_8_6.s b/asm/text_8_6.s index c36cc91..80d51a6 100644 --- a/asm/text_8_6.s +++ b/asm/text_8_6.s @@ -2,4318 +2,6 @@ .section .text, "ax" # 0x80006980 - 0x803E1E60 -.global func_8029740C -func_8029740C: -/* 8029740C 0029306C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80297410 00293070 7C 08 02 A6 */ mflr r0 -/* 80297414 00293074 7C 84 1A 14 */ add r4, r4, r3 -/* 80297418 00293078 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029741C 0029307C 38 03 00 03 */ addi r0, r3, 3 -/* 80297420 00293080 54 86 00 3A */ rlwinm r6, r4, 0, 0, 0x1d -/* 80297424 00293084 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80297428 00293088 54 1F 00 3A */ rlwinm r31, r0, 0, 0, 0x1d -/* 8029742C 0029308C 7C 1F 30 40 */ cmplw r31, r6 -/* 80297430 00293090 41 81 00 10 */ bgt lbl_80297440 -/* 80297434 00293094 7C 1F 30 50 */ subf r0, r31, r6 -/* 80297438 00293098 28 00 00 48 */ cmplwi r0, 0x48 -/* 8029743C 0029309C 40 80 00 0C */ bge lbl_80297448 -lbl_80297440: -/* 80297440 002930A0 38 60 00 00 */ li r3, 0 -/* 80297444 002930A4 48 00 00 38 */ b lbl_8029747C -lbl_80297448: -/* 80297448 002930A8 3C 80 46 52 */ lis r4, 0x46524D48@ha -/* 8029744C 002930AC 7C A7 2B 78 */ mr r7, r5 -/* 80297450 002930B0 7F E3 FB 78 */ mr r3, r31 -/* 80297454 002930B4 38 BF 00 48 */ addi r5, r31, 0x48 -/* 80297458 002930B8 38 84 4D 48 */ addi r4, r4, 0x46524D48@l -/* 8029745C 002930BC 4B FF F1 B1 */ bl MEMiInitHeapHead -/* 80297460 002930C0 80 9F 00 18 */ lwz r4, 0x18(r31) -/* 80297464 002930C4 38 00 00 00 */ li r0, 0 -/* 80297468 002930C8 7F E3 FB 78 */ mr r3, r31 -/* 8029746C 002930CC 90 9F 00 3C */ stw r4, 0x3c(r31) -/* 80297470 002930D0 80 9F 00 1C */ lwz r4, 0x1c(r31) -/* 80297474 002930D4 90 9F 00 40 */ stw r4, 0x40(r31) -/* 80297478 002930D8 90 1F 00 44 */ stw r0, 0x44(r31) -lbl_8029747C: -/* 8029747C 002930DC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80297480 002930E0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80297484 002930E4 7C 08 03 A6 */ mtlr r0 -/* 80297488 002930E8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029748C 002930EC 4E 80 00 20 */ blr - -.global func_80297490 -func_80297490: -/* 80297490 002930F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80297494 002930F4 7C 08 02 A6 */ mflr r0 -/* 80297498 002930F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029749C 002930FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802974A0 00293100 7C 7F 1B 78 */ mr r31, r3 -/* 802974A4 00293104 4B FF F3 29 */ bl MEMiFinalizeHeap -/* 802974A8 00293108 7F E3 FB 78 */ mr r3, r31 -/* 802974AC 0029310C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802974B0 00293110 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802974B4 00293114 7C 08 03 A6 */ mtlr r0 -/* 802974B8 00293118 38 21 00 10 */ addi r1, r1, 0x10 -/* 802974BC 0029311C 4E 80 00 20 */ blr - -.global func_802974C0 -func_802974C0: -/* 802974C0 00293120 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802974C4 00293124 7C 08 02 A6 */ mflr r0 -/* 802974C8 00293128 2C 04 00 00 */ cmpwi r4, 0 -/* 802974CC 0029312C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802974D0 00293130 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802974D4 00293134 7C 7F 1B 78 */ mr r31, r3 -/* 802974D8 00293138 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802974DC 0029313C 7C 9E 23 78 */ mr r30, r4 -/* 802974E0 00293140 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802974E4 00293144 7C BD 2B 78 */ mr r29, r5 -/* 802974E8 00293148 40 82 00 08 */ bne lbl_802974F0 -/* 802974EC 0029314C 3B C0 00 01 */ li r30, 1 -lbl_802974F0: -/* 802974F0 00293150 80 03 00 38 */ lwz r0, 0x38(r3) -/* 802974F4 00293154 38 9E 00 03 */ addi r4, r30, 3 -/* 802974F8 00293158 54 9E 00 3A */ rlwinm r30, r4, 0, 0, 0x1d -/* 802974FC 0029315C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80297500 00293160 41 82 00 0C */ beq lbl_8029750C -/* 80297504 00293164 38 63 00 20 */ addi r3, r3, 0x20 -/* 80297508 00293168 4B FD 84 41 */ bl OSLockMutex -lbl_8029750C: -/* 8029750C 0029316C 2C 1D 00 00 */ cmpwi r29, 0 -/* 80297510 00293170 41 80 00 54 */ blt lbl_80297564 -/* 80297514 00293174 80 7F 00 3C */ lwz r3, 0x3c(r31) -/* 80297518 00293178 38 1D FF FF */ addi r0, r29, -1 -/* 8029751C 0029317C 7C 05 00 F8 */ nor r5, r0, r0 -/* 80297520 00293180 80 1F 00 40 */ lwz r0, 0x40(r31) -/* 80297524 00293184 7C 9D 1A 14 */ add r4, r29, r3 -/* 80297528 00293188 38 84 FF FF */ addi r4, r4, -1 -/* 8029752C 0029318C 7C BD 20 38 */ and r29, r5, r4 -/* 80297530 00293190 7F DE EA 14 */ add r30, r30, r29 -/* 80297534 00293194 7C 1E 00 40 */ cmplw r30, r0 -/* 80297538 00293198 40 81 00 0C */ ble lbl_80297544 -/* 8029753C 0029319C 3B A0 00 00 */ li r29, 0 -/* 80297540 002931A0 48 00 00 6C */ b lbl_802975AC -lbl_80297544: -/* 80297544 002931A4 80 1F 00 38 */ lwz r0, 0x38(r31) -/* 80297548 002931A8 7C A3 F0 50 */ subf r5, r3, r30 -/* 8029754C 002931AC 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80297550 002931B0 41 82 00 0C */ beq lbl_8029755C -/* 80297554 002931B4 38 80 00 00 */ li r4, 0 -/* 80297558 002931B8 4B D6 CB AD */ bl memset -lbl_8029755C: -/* 8029755C 002931BC 93 DF 00 3C */ stw r30, 0x3c(r31) -/* 80297560 002931C0 48 00 00 4C */ b lbl_802975AC -lbl_80297564: -/* 80297564 002931C4 80 BF 00 40 */ lwz r5, 0x40(r31) -/* 80297568 002931C8 20 1D FF FF */ subfic r0, r29, -1 -/* 8029756C 002931CC 7C 04 00 F8 */ nor r4, r0, r0 -/* 80297570 002931D0 80 1F 00 3C */ lwz r0, 0x3c(r31) -/* 80297574 002931D4 7C 7E 28 50 */ subf r3, r30, r5 -/* 80297578 002931D8 7C 9D 18 38 */ and r29, r4, r3 -/* 8029757C 002931DC 7C 1D 00 40 */ cmplw r29, r0 -/* 80297580 002931E0 40 80 00 0C */ bge lbl_8029758C -/* 80297584 002931E4 3B A0 00 00 */ li r29, 0 -/* 80297588 002931E8 48 00 00 24 */ b lbl_802975AC -lbl_8029758C: -/* 8029758C 002931EC 80 1F 00 38 */ lwz r0, 0x38(r31) -/* 80297590 002931F0 7C BD 28 50 */ subf r5, r29, r5 -/* 80297594 002931F4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80297598 002931F8 41 82 00 10 */ beq lbl_802975A8 -/* 8029759C 002931FC 7F A3 EB 78 */ mr r3, r29 -/* 802975A0 00293200 38 80 00 00 */ li r4, 0 -/* 802975A4 00293204 4B D6 CB 61 */ bl memset -lbl_802975A8: -/* 802975A8 00293208 93 BF 00 40 */ stw r29, 0x40(r31) -lbl_802975AC: -/* 802975AC 0029320C 80 1F 00 38 */ lwz r0, 0x38(r31) -/* 802975B0 00293210 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 802975B4 00293214 41 82 00 0C */ beq lbl_802975C0 -/* 802975B8 00293218 38 7F 00 20 */ addi r3, r31, 0x20 -/* 802975BC 0029321C 4B FD 84 69 */ bl OSUnlockMutex -lbl_802975C0: -/* 802975C0 00293220 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802975C4 00293224 7F A3 EB 78 */ mr r3, r29 -/* 802975C8 00293228 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802975CC 0029322C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802975D0 00293230 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802975D4 00293234 7C 08 03 A6 */ mtlr r0 -/* 802975D8 00293238 38 21 00 20 */ addi r1, r1, 0x20 -/* 802975DC 0029323C 4E 80 00 20 */ blr - -.global func_802975E0 -func_802975E0: -/* 802975E0 00293240 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802975E4 00293244 7C 08 02 A6 */ mflr r0 -/* 802975E8 00293248 90 01 00 14 */ stw r0, 0x14(r1) -/* 802975EC 0029324C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802975F0 00293250 7C 9F 23 78 */ mr r31, r4 -/* 802975F4 00293254 93 C1 00 08 */ stw r30, 8(r1) -/* 802975F8 00293258 7C 7E 1B 78 */ mr r30, r3 -/* 802975FC 0029325C 80 03 00 38 */ lwz r0, 0x38(r3) -/* 80297600 00293260 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80297604 00293264 41 82 00 0C */ beq lbl_80297610 -/* 80297608 00293268 38 63 00 20 */ addi r3, r3, 0x20 -/* 8029760C 0029326C 4B FD 83 3D */ bl OSLockMutex -lbl_80297610: -/* 80297610 00293270 57 E0 07 FF */ clrlwi. r0, r31, 0x1f -/* 80297614 00293274 41 82 00 14 */ beq lbl_80297628 -/* 80297618 00293278 80 7E 00 18 */ lwz r3, 0x18(r30) -/* 8029761C 0029327C 38 00 00 00 */ li r0, 0 -/* 80297620 00293280 90 1E 00 44 */ stw r0, 0x44(r30) -/* 80297624 00293284 90 7E 00 3C */ stw r3, 0x3c(r30) -lbl_80297628: -/* 80297628 00293288 57 E0 07 BD */ rlwinm. r0, r31, 0, 0x1e, 0x1e -/* 8029762C 0029328C 41 82 00 28 */ beq lbl_80297654 -/* 80297630 00293290 80 7E 00 44 */ lwz r3, 0x44(r30) -/* 80297634 00293294 48 00 00 10 */ b lbl_80297644 -lbl_80297638: -/* 80297638 00293298 80 1E 00 1C */ lwz r0, 0x1c(r30) -/* 8029763C 0029329C 90 03 00 08 */ stw r0, 8(r3) -/* 80297640 002932A0 80 63 00 0C */ lwz r3, 0xc(r3) -lbl_80297644: -/* 80297644 002932A4 2C 03 00 00 */ cmpwi r3, 0 -/* 80297648 002932A8 40 82 FF F0 */ bne lbl_80297638 -/* 8029764C 002932AC 80 1E 00 1C */ lwz r0, 0x1c(r30) -/* 80297650 002932B0 90 1E 00 40 */ stw r0, 0x40(r30) -lbl_80297654: -/* 80297654 002932B4 80 1E 00 38 */ lwz r0, 0x38(r30) -/* 80297658 002932B8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 8029765C 002932BC 41 82 00 0C */ beq lbl_80297668 -/* 80297660 002932C0 38 7E 00 20 */ addi r3, r30, 0x20 -/* 80297664 002932C4 4B FD 83 C1 */ bl OSUnlockMutex -lbl_80297668: -/* 80297668 002932C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029766C 002932CC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80297670 002932D0 83 C1 00 08 */ lwz r30, 8(r1) -/* 80297674 002932D4 7C 08 03 A6 */ mtlr r0 -/* 80297678 002932D8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029767C 002932DC 4E 80 00 20 */ blr - -.global func_80297680 -func_80297680: -/* 80297680 002932E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80297684 002932E4 7C 08 02 A6 */ mflr r0 -/* 80297688 002932E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029768C 002932EC 7C 80 FE 70 */ srawi r0, r4, 0x1f -/* 80297690 002932F0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80297694 002932F4 7C 1F 22 78 */ xor r31, r0, r4 -/* 80297698 002932F8 7F E0 F8 50 */ subf r31, r0, r31 -/* 8029769C 002932FC 93 C1 00 08 */ stw r30, 8(r1) -/* 802976A0 00293300 7C 7E 1B 78 */ mr r30, r3 -/* 802976A4 00293304 4B FD 70 B9 */ bl OSDisableInterrupts -/* 802976A8 00293308 80 1E 00 3C */ lwz r0, 0x3c(r30) -/* 802976AC 0029330C 38 9F FF FF */ addi r4, r31, -1 -/* 802976B0 00293310 7C 85 20 F8 */ nor r5, r4, r4 -/* 802976B4 00293314 80 DE 00 40 */ lwz r6, 0x40(r30) -/* 802976B8 00293318 7C 9F 02 14 */ add r4, r31, r0 -/* 802976BC 0029331C 38 04 FF FF */ addi r0, r4, -1 -/* 802976C0 00293320 7C A0 00 38 */ and r0, r5, r0 -/* 802976C4 00293324 7C 00 30 40 */ cmplw r0, r6 -/* 802976C8 00293328 40 81 00 0C */ ble lbl_802976D4 -/* 802976CC 0029332C 3B E0 00 00 */ li r31, 0 -/* 802976D0 00293330 48 00 00 08 */ b lbl_802976D8 -lbl_802976D4: -/* 802976D4 00293334 7F E0 30 50 */ subf r31, r0, r6 -lbl_802976D8: -/* 802976D8 00293338 4B FD 70 AD */ bl OSRestoreInterrupts -/* 802976DC 0029333C 7F E3 FB 78 */ mr r3, r31 -/* 802976E0 00293340 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802976E4 00293344 83 C1 00 08 */ lwz r30, 8(r1) -/* 802976E8 00293348 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802976EC 0029334C 7C 08 03 A6 */ mtlr r0 -/* 802976F0 00293350 38 21 00 10 */ addi r1, r1, 0x10 -/* 802976F4 00293354 4E 80 00 20 */ blr -/* 802976F8 00293358 7C 65 1B 78 */ mr r5, r3 -/* 802976FC 0029335C 80 63 00 04 */ lwz r3, 4(r3) -/* 80297700 00293360 80 A5 00 08 */ lwz r5, 8(r5) -/* 80297704 00293364 4B FF F8 24 */ b MEMAllocFromExpHeapEx -/* 80297708 00293368 80 63 00 04 */ lwz r3, 4(r3) -/* 8029770C 0029336C 4B FF FA B8 */ b MEMFreeToExpHeap -/* 80297710 00293370 7C 65 1B 78 */ mr r5, r3 -/* 80297714 00293374 80 63 00 04 */ lwz r3, 4(r3) -/* 80297718 00293378 80 A5 00 08 */ lwz r5, 8(r5) -/* 8029771C 0029337C 4B FF FD A4 */ b func_802974C0 -/* 80297720 00293380 4E 80 00 20 */ blr - -.global func_80297724 -func_80297724: -/* 80297724 00293384 80 A3 00 00 */ lwz r5, 0(r3) -/* 80297728 00293388 81 85 00 00 */ lwz r12, 0(r5) -/* 8029772C 0029338C 7D 89 03 A6 */ mtctr r12 -/* 80297730 00293390 4E 80 04 20 */ bctr - -.global func_80297734 -func_80297734: -/* 80297734 00293394 80 A3 00 00 */ lwz r5, 0(r3) -/* 80297738 00293398 81 85 00 04 */ lwz r12, 4(r5) -/* 8029773C 0029339C 7D 89 03 A6 */ mtctr r12 -/* 80297740 002933A0 4E 80 04 20 */ bctr - -.global func_80297744 -func_80297744: -/* 80297744 002933A4 38 C2 A3 68 */ addi r6, r2, lbl_80642968-_SDA2_BASE_ -/* 80297748 002933A8 38 00 00 00 */ li r0, 0 -/* 8029774C 002933AC 90 C3 00 00 */ stw r6, 0(r3) -/* 80297750 002933B0 90 83 00 04 */ stw r4, 4(r3) -/* 80297754 002933B4 90 A3 00 08 */ stw r5, 8(r3) -/* 80297758 002933B8 90 03 00 0C */ stw r0, 0xc(r3) -/* 8029775C 002933BC 4E 80 00 20 */ blr - -.global func_80297760 -func_80297760: -/* 80297760 002933C0 38 C2 A3 70 */ addi r6, r2, lbl_80642970-_SDA2_BASE_ -/* 80297764 002933C4 38 00 00 00 */ li r0, 0 -/* 80297768 002933C8 90 C3 00 00 */ stw r6, 0(r3) -/* 8029776C 002933CC 90 83 00 04 */ stw r4, 4(r3) -/* 80297770 002933D0 90 A3 00 08 */ stw r5, 8(r3) -/* 80297774 002933D4 90 03 00 0C */ stw r0, 0xc(r3) -/* 80297778 002933D8 4E 80 00 20 */ blr - -.global func_8029777C -func_8029777C: -/* 8029777C 002933DC 38 00 00 00 */ li r0, 0 -/* 80297780 002933E0 B0 83 00 0A */ sth r4, 0xa(r3) -/* 80297784 002933E4 90 03 00 00 */ stw r0, 0(r3) -/* 80297788 002933E8 90 03 00 04 */ stw r0, 4(r3) -/* 8029778C 002933EC B0 03 00 08 */ sth r0, 8(r3) -/* 80297790 002933F0 4E 80 00 20 */ blr - -.global func_80297794 -func_80297794: -/* 80297794 002933F4 80 03 00 00 */ lwz r0, 0(r3) -/* 80297798 002933F8 2C 00 00 00 */ cmpwi r0, 0 -/* 8029779C 002933FC 40 82 00 30 */ bne lbl_802977CC -/* 802977A0 00293400 A0 A3 00 0A */ lhz r5, 0xa(r3) -/* 802977A4 00293404 38 00 00 00 */ li r0, 0 -/* 802977A8 00293408 7C A4 2A 14 */ add r5, r4, r5 -/* 802977AC 0029340C 90 05 00 04 */ stw r0, 4(r5) -/* 802977B0 00293410 90 05 00 00 */ stw r0, 0(r5) -/* 802977B4 00293414 A0 A3 00 08 */ lhz r5, 8(r3) -/* 802977B8 00293418 90 83 00 00 */ stw r4, 0(r3) -/* 802977BC 0029341C 38 05 00 01 */ addi r0, r5, 1 -/* 802977C0 00293420 90 83 00 04 */ stw r4, 4(r3) -/* 802977C4 00293424 B0 03 00 08 */ sth r0, 8(r3) -/* 802977C8 00293428 4E 80 00 20 */ blr -lbl_802977CC: -/* 802977CC 0029342C A0 C3 00 0A */ lhz r6, 0xa(r3) -/* 802977D0 00293430 38 00 00 00 */ li r0, 0 -/* 802977D4 00293434 80 A3 00 04 */ lwz r5, 4(r3) -/* 802977D8 00293438 7C A6 21 6E */ stwux r5, r6, r4 -/* 802977DC 0029343C 90 06 00 04 */ stw r0, 4(r6) -/* 802977E0 00293440 80 A3 00 04 */ lwz r5, 4(r3) -/* 802977E4 00293444 A0 03 00 0A */ lhz r0, 0xa(r3) -/* 802977E8 00293448 7C A5 02 14 */ add r5, r5, r0 -/* 802977EC 0029344C 90 85 00 04 */ stw r4, 4(r5) -/* 802977F0 00293450 A0 A3 00 08 */ lhz r5, 8(r3) -/* 802977F4 00293454 90 83 00 04 */ stw r4, 4(r3) -/* 802977F8 00293458 38 05 00 01 */ addi r0, r5, 1 -/* 802977FC 0029345C B0 03 00 08 */ sth r0, 8(r3) -/* 80297800 00293460 4E 80 00 20 */ blr - -.global func_80297804 -func_80297804: -/* 80297804 00293464 A0 A3 00 0A */ lhz r5, 0xa(r3) -/* 80297808 00293468 7C C4 2A 14 */ add r6, r4, r5 -/* 8029780C 0029346C 7C 84 28 2E */ lwzx r4, r4, r5 -/* 80297810 00293470 2C 04 00 00 */ cmpwi r4, 0 -/* 80297814 00293474 40 82 00 10 */ bne lbl_80297824 -/* 80297818 00293478 80 06 00 04 */ lwz r0, 4(r6) -/* 8029781C 0029347C 90 03 00 00 */ stw r0, 0(r3) -/* 80297820 00293480 48 00 00 10 */ b lbl_80297830 -lbl_80297824: -/* 80297824 00293484 80 06 00 04 */ lwz r0, 4(r6) -/* 80297828 00293488 7C 84 2A 14 */ add r4, r4, r5 -/* 8029782C 0029348C 90 04 00 04 */ stw r0, 4(r4) -lbl_80297830: -/* 80297830 00293490 80 A6 00 04 */ lwz r5, 4(r6) -/* 80297834 00293494 2C 05 00 00 */ cmpwi r5, 0 -/* 80297838 00293498 40 82 00 10 */ bne lbl_80297848 -/* 8029783C 0029349C 80 06 00 00 */ lwz r0, 0(r6) -/* 80297840 002934A0 90 03 00 04 */ stw r0, 4(r3) -/* 80297844 002934A4 48 00 00 10 */ b lbl_80297854 -lbl_80297848: -/* 80297848 002934A8 80 86 00 00 */ lwz r4, 0(r6) -/* 8029784C 002934AC A0 03 00 0A */ lhz r0, 0xa(r3) -/* 80297850 002934B0 7C 85 01 2E */ stwx r4, r5, r0 -lbl_80297854: -/* 80297854 002934B4 38 00 00 00 */ li r0, 0 -/* 80297858 002934B8 90 06 00 00 */ stw r0, 0(r6) -/* 8029785C 002934BC 90 06 00 04 */ stw r0, 4(r6) -/* 80297860 002934C0 A0 83 00 08 */ lhz r4, 8(r3) -/* 80297864 002934C4 38 04 FF FF */ addi r0, r4, -1 -/* 80297868 002934C8 B0 03 00 08 */ sth r0, 8(r3) -/* 8029786C 002934CC 4E 80 00 20 */ blr - -.global func_80297870 -func_80297870: -/* 80297870 002934D0 2C 04 00 00 */ cmpwi r4, 0 -/* 80297874 002934D4 40 82 00 0C */ bne lbl_80297880 -/* 80297878 002934D8 80 63 00 00 */ lwz r3, 0(r3) -/* 8029787C 002934DC 4E 80 00 20 */ blr -lbl_80297880: -/* 80297880 002934E0 A0 03 00 0A */ lhz r0, 0xa(r3) -/* 80297884 002934E4 7C 64 02 14 */ add r3, r4, r0 -/* 80297888 002934E8 80 63 00 04 */ lwz r3, 4(r3) -/* 8029788C 002934EC 4E 80 00 20 */ blr - -.global func_80297890 -func_80297890: -/* 80297890 002934F0 80 0D AC 5C */ lwz r0, lbl_8063FF1C-_SDA_BASE_(r13) -/* 80297894 002934F4 3C C0 80 44 */ lis r6, lbl_8043B170@ha -/* 80297898 002934F8 80 83 00 18 */ lwz r4, 0x18(r3) -/* 8029789C 002934FC 38 C6 B1 70 */ addi r6, r6, lbl_8043B170@l -/* 802978A0 00293500 28 00 00 03 */ cmplwi r0, 3 -/* 802978A4 00293504 81 43 00 1C */ lwz r10, 0x1c(r3) -/* 802978A8 00293508 20 A4 00 7F */ subfic r5, r4, 0x7f -/* 802978AC 0029350C 21 6A 00 7F */ subfic r11, r10, 0x7f -/* 802978B0 00293510 40 82 00 50 */ bne lbl_80297900 -/* 802978B4 00293514 54 89 08 3C */ slwi r9, r4, 1 -/* 802978B8 00293518 38 E6 09 90 */ addi r7, r6, 0x990 -/* 802978BC 0029351C 7C 87 4A AE */ lhax r4, r7, r9 -/* 802978C0 00293520 54 A8 08 3C */ slwi r8, r5, 1 -/* 802978C4 00293524 55 65 08 3C */ slwi r5, r11, 1 -/* 802978C8 00293528 55 40 08 3C */ slwi r0, r10, 1 -/* 802978CC 0029352C 90 83 00 24 */ stw r4, 0x24(r3) -/* 802978D0 00293530 38 86 0A 90 */ addi r4, r6, 0xa90 -/* 802978D4 00293534 7C C7 42 AE */ lhax r6, r7, r8 -/* 802978D8 00293538 90 C3 00 28 */ stw r6, 0x28(r3) -/* 802978DC 0029353C 7C A7 2A AE */ lhax r5, r7, r5 -/* 802978E0 00293540 90 A3 00 2C */ stw r5, 0x2c(r3) -/* 802978E4 00293544 7C 07 02 AE */ lhax r0, r7, r0 -/* 802978E8 00293548 90 03 00 30 */ stw r0, 0x30(r3) -/* 802978EC 0029354C 7C 04 42 AE */ lhax r0, r4, r8 -/* 802978F0 00293550 90 03 00 34 */ stw r0, 0x34(r3) -/* 802978F4 00293554 7C 04 4A AE */ lhax r0, r4, r9 -/* 802978F8 00293558 90 03 00 38 */ stw r0, 0x38(r3) -/* 802978FC 0029355C 4E 80 00 20 */ blr -lbl_80297900: -/* 80297900 00293560 54 80 10 3A */ slwi r0, r4, 2 -/* 80297904 00293564 38 E6 07 90 */ addi r7, r6, 0x790 -/* 80297908 00293568 7C 07 00 2E */ lwzx r0, r7, r0 -/* 8029790C 0029356C 54 A6 10 3A */ slwi r6, r5, 2 -/* 80297910 00293570 55 65 10 3A */ slwi r5, r11, 2 -/* 80297914 00293574 55 44 10 3A */ slwi r4, r10, 2 -/* 80297918 00293578 90 03 00 24 */ stw r0, 0x24(r3) -/* 8029791C 0029357C 38 00 00 00 */ li r0, 0 -/* 80297920 00293580 7C C7 30 2E */ lwzx r6, r7, r6 -/* 80297924 00293584 90 C3 00 28 */ stw r6, 0x28(r3) -/* 80297928 00293588 7C A7 28 2E */ lwzx r5, r7, r5 -/* 8029792C 0029358C 90 A3 00 2C */ stw r5, 0x2c(r3) -/* 80297930 00293590 7C 87 20 2E */ lwzx r4, r7, r4 -/* 80297934 00293594 90 83 00 30 */ stw r4, 0x30(r3) -/* 80297938 00293598 90 03 00 34 */ stw r0, 0x34(r3) -/* 8029793C 0029359C 90 03 00 38 */ stw r0, 0x38(r3) -/* 80297940 002935A0 4E 80 00 20 */ blr - -.global func_80297944 -func_80297944: -/* 80297944 002935A4 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297948 002935A8 41 81 00 0C */ bgt lbl_80297954 -/* 8029794C 002935AC 38 60 00 00 */ li r3, 0 -/* 80297950 002935B0 4E 80 00 20 */ blr -lbl_80297954: -/* 80297954 002935B4 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297958 002935B8 41 80 00 10 */ blt lbl_80297968 -/* 8029795C 002935BC 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297960 002935C0 38 63 FF 64 */ addi r3, r3, 0x0000FF64@l -/* 80297964 002935C4 4E 80 00 20 */ blr -lbl_80297968: -/* 80297968 002935C8 38 03 03 88 */ addi r0, r3, 0x388 -/* 8029796C 002935CC 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297970 002935D0 54 00 08 3C */ slwi r0, r0, 1 -/* 80297974 002935D4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297978 002935D8 7C 63 02 2E */ lhzx r3, r3, r0 -/* 8029797C 002935DC 4E 80 00 20 */ blr - -.global func_80297980 -func_80297980: -/* 80297980 002935E0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80297984 002935E4 7C 08 02 A6 */ mflr r0 -/* 80297988 002935E8 90 01 00 34 */ stw r0, 0x34(r1) -/* 8029798C 002935EC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80297990 002935F0 4B F2 F7 91 */ bl _savegpr_25 -/* 80297994 002935F4 4B FF 76 F9 */ bl AXIsInit -/* 80297998 002935F8 2C 03 00 00 */ cmpwi r3, 0 -/* 8029799C 002935FC 41 82 00 D4 */ beq lbl_80297A70 -/* 802979A0 00293600 4B FF A9 7D */ bl AXGetMaxVoices -/* 802979A4 00293604 3C A0 80 53 */ lis r5, lbl_805311E8@ha -/* 802979A8 00293608 3C 80 80 53 */ lis r4, lbl_80533BE8@ha -/* 802979AC 0029360C 38 A5 11 E8 */ addi r5, r5, lbl_805311E8@l -/* 802979B0 00293610 90 6D AC 58 */ stw r3, lbl_8063FF18-_SDA_BASE_(r13) -/* 802979B4 00293614 38 84 3B E8 */ addi r4, r4, lbl_80533BE8@l -/* 802979B8 00293618 3B 20 00 00 */ li r25, 0 -/* 802979BC 0029361C 90 AD AC 50 */ stw r5, lbl_8063FF10-_SDA_BASE_(r13) -/* 802979C0 00293620 3B 40 00 00 */ li r26, 0 -/* 802979C4 00293624 3B 60 00 00 */ li r27, 0 -/* 802979C8 00293628 3F 80 50 00 */ lis r28, 0x5000 -/* 802979CC 0029362C 90 8D AC 60 */ stw r4, lbl_8063FF20-_SDA_BASE_(r13) -/* 802979D0 00293630 3B A0 FC 40 */ li r29, -960 -/* 802979D4 00293634 3B C0 00 40 */ li r30, 0x40 -/* 802979D8 00293638 3B E0 00 7F */ li r31, 0x7f -/* 802979DC 0029363C 48 00 00 7C */ b lbl_80297A58 -lbl_802979E0: -/* 802979E0 00293640 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13) -/* 802979E4 00293644 7F 63 D1 2E */ stwx r27, r3, r26 -/* 802979E8 00293648 80 0D AC 50 */ lwz r0, lbl_8063FF10-_SDA_BASE_(r13) -/* 802979EC 0029364C 7C 60 D2 14 */ add r3, r0, r26 -/* 802979F0 00293650 93 83 00 04 */ stw r28, 4(r3) -/* 802979F4 00293654 93 63 00 08 */ stw r27, 8(r3) -/* 802979F8 00293658 93 A3 00 0C */ stw r29, 0xc(r3) -/* 802979FC 0029365C 93 A3 00 10 */ stw r29, 0x10(r3) -/* 80297A00 00293660 93 A3 00 14 */ stw r29, 0x14(r3) -/* 80297A04 00293664 93 63 00 20 */ stw r27, 0x20(r3) -/* 80297A08 00293668 93 C3 00 18 */ stw r30, 0x18(r3) -/* 80297A0C 0029366C 93 E3 00 1C */ stw r31, 0x1c(r3) -/* 80297A10 00293670 B3 63 00 6C */ sth r27, 0x6c(r3) -/* 80297A14 00293674 B3 63 00 68 */ sth r27, 0x68(r3) -/* 80297A18 00293678 B3 63 00 64 */ sth r27, 0x64(r3) -/* 80297A1C 0029367C B3 63 00 60 */ sth r27, 0x60(r3) -/* 80297A20 00293680 B3 63 00 5C */ sth r27, 0x5c(r3) -/* 80297A24 00293684 B3 63 00 58 */ sth r27, 0x58(r3) -/* 80297A28 00293688 B3 63 00 54 */ sth r27, 0x54(r3) -/* 80297A2C 0029368C B3 63 00 50 */ sth r27, 0x50(r3) -/* 80297A30 00293690 B3 63 00 4C */ sth r27, 0x4c(r3) -/* 80297A34 00293694 B3 63 00 48 */ sth r27, 0x48(r3) -/* 80297A38 00293698 B3 63 00 44 */ sth r27, 0x44(r3) -/* 80297A3C 0029369C B3 63 00 40 */ sth r27, 0x40(r3) -/* 80297A40 002936A0 B3 63 00 3C */ sth r27, 0x3c(r3) -/* 80297A44 002936A4 4B FF FE 4D */ bl func_80297890 -/* 80297A48 002936A8 7F 23 CB 78 */ mr r3, r25 -/* 80297A4C 002936AC 48 00 33 55 */ bl func_8029ADA0 -/* 80297A50 002936B0 3B 5A 00 70 */ addi r26, r26, 0x70 -/* 80297A54 002936B4 3B 39 00 01 */ addi r25, r25, 1 -lbl_80297A58: -/* 80297A58 002936B8 80 0D AC 58 */ lwz r0, lbl_8063FF18-_SDA_BASE_(r13) -/* 80297A5C 002936BC 7C 19 00 40 */ cmplw r25, r0 -/* 80297A60 002936C0 41 80 FF 80 */ blt lbl_802979E0 -/* 80297A64 002936C4 38 00 00 01 */ li r0, 1 -/* 80297A68 002936C8 90 0D AC 5C */ stw r0, lbl_8063FF1C-_SDA_BASE_(r13) -/* 80297A6C 002936CC 90 0D AC 54 */ stw r0, lbl_8063FF14-_SDA_BASE_(r13) -lbl_80297A70: -/* 80297A70 002936D0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80297A74 002936D4 4B F2 F6 F9 */ bl _restgpr_25 -/* 80297A78 002936D8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80297A7C 002936DC 7C 08 03 A6 */ mtlr r0 -/* 80297A80 002936E0 38 21 00 30 */ addi r1, r1, 0x30 -/* 80297A84 002936E4 4E 80 00 20 */ blr - -.global func_80297A88 -func_80297A88: -/* 80297A88 002936E8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 80297A8C 002936EC 7C 08 02 A6 */ mflr r0 -/* 80297A90 002936F0 90 01 00 34 */ stw r0, 0x34(r1) -/* 80297A94 002936F4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80297A98 002936F8 4B F2 F6 89 */ bl _savegpr_25 -/* 80297A9C 002936FC 7C 7B 1B 78 */ mr r27, r3 -/* 80297AA0 00293700 4B FF 75 ED */ bl AXIsInit -/* 80297AA4 00293704 2C 03 00 00 */ cmpwi r3, 0 -/* 80297AA8 00293708 41 82 00 D8 */ beq lbl_80297B80 -/* 80297AAC 0029370C 2C 1B 00 00 */ cmpwi r27, 0 -/* 80297AB0 00293710 40 82 00 08 */ bne lbl_80297AB8 -/* 80297AB4 00293714 48 00 00 CC */ b lbl_80297B80 -lbl_80297AB8: -/* 80297AB8 00293718 4B FF A8 65 */ bl AXGetMaxVoices -/* 80297ABC 0029371C 1C 03 00 70 */ mulli r0, r3, 0x70 -/* 80297AC0 00293720 90 6D AC 58 */ stw r3, lbl_8063FF18-_SDA_BASE_(r13) -/* 80297AC4 00293724 3B 20 00 00 */ li r25, 0 -/* 80297AC8 00293728 93 6D AC 50 */ stw r27, lbl_8063FF10-_SDA_BASE_(r13) -/* 80297ACC 0029372C 3B 40 00 00 */ li r26, 0 -/* 80297AD0 00293730 7C 1B 02 14 */ add r0, r27, r0 -/* 80297AD4 00293734 90 0D AC 60 */ stw r0, lbl_8063FF20-_SDA_BASE_(r13) -/* 80297AD8 00293738 3B 60 00 00 */ li r27, 0 -/* 80297ADC 0029373C 3F 80 50 00 */ lis r28, 0x5000 -/* 80297AE0 00293740 3B A0 FC 40 */ li r29, -960 -/* 80297AE4 00293744 3B C0 00 40 */ li r30, 0x40 -/* 80297AE8 00293748 3B E0 00 7F */ li r31, 0x7f -/* 80297AEC 0029374C 48 00 00 7C */ b lbl_80297B68 -lbl_80297AF0: -/* 80297AF0 00293750 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13) -/* 80297AF4 00293754 7F 63 D1 2E */ stwx r27, r3, r26 -/* 80297AF8 00293758 80 0D AC 50 */ lwz r0, lbl_8063FF10-_SDA_BASE_(r13) -/* 80297AFC 0029375C 7C 60 D2 14 */ add r3, r0, r26 -/* 80297B00 00293760 93 83 00 04 */ stw r28, 4(r3) -/* 80297B04 00293764 93 63 00 08 */ stw r27, 8(r3) -/* 80297B08 00293768 93 A3 00 0C */ stw r29, 0xc(r3) -/* 80297B0C 0029376C 93 A3 00 10 */ stw r29, 0x10(r3) -/* 80297B10 00293770 93 A3 00 14 */ stw r29, 0x14(r3) -/* 80297B14 00293774 93 63 00 20 */ stw r27, 0x20(r3) -/* 80297B18 00293778 93 C3 00 18 */ stw r30, 0x18(r3) -/* 80297B1C 0029377C 93 E3 00 1C */ stw r31, 0x1c(r3) -/* 80297B20 00293780 B3 63 00 6C */ sth r27, 0x6c(r3) -/* 80297B24 00293784 B3 63 00 68 */ sth r27, 0x68(r3) -/* 80297B28 00293788 B3 63 00 64 */ sth r27, 0x64(r3) -/* 80297B2C 0029378C B3 63 00 60 */ sth r27, 0x60(r3) -/* 80297B30 00293790 B3 63 00 5C */ sth r27, 0x5c(r3) -/* 80297B34 00293794 B3 63 00 58 */ sth r27, 0x58(r3) -/* 80297B38 00293798 B3 63 00 54 */ sth r27, 0x54(r3) -/* 80297B3C 0029379C B3 63 00 50 */ sth r27, 0x50(r3) -/* 80297B40 002937A0 B3 63 00 4C */ sth r27, 0x4c(r3) -/* 80297B44 002937A4 B3 63 00 48 */ sth r27, 0x48(r3) -/* 80297B48 002937A8 B3 63 00 44 */ sth r27, 0x44(r3) -/* 80297B4C 002937AC B3 63 00 40 */ sth r27, 0x40(r3) -/* 80297B50 002937B0 B3 63 00 3C */ sth r27, 0x3c(r3) -/* 80297B54 002937B4 4B FF FD 3D */ bl func_80297890 -/* 80297B58 002937B8 7F 23 CB 78 */ mr r3, r25 -/* 80297B5C 002937BC 48 00 32 45 */ bl func_8029ADA0 -/* 80297B60 002937C0 3B 5A 00 70 */ addi r26, r26, 0x70 -/* 80297B64 002937C4 3B 39 00 01 */ addi r25, r25, 1 -lbl_80297B68: -/* 80297B68 002937C8 80 0D AC 58 */ lwz r0, lbl_8063FF18-_SDA_BASE_(r13) -/* 80297B6C 002937CC 7C 19 00 40 */ cmplw r25, r0 -/* 80297B70 002937D0 41 80 FF 80 */ blt lbl_80297AF0 -/* 80297B74 002937D4 38 00 00 01 */ li r0, 1 -/* 80297B78 002937D8 90 0D AC 5C */ stw r0, lbl_8063FF1C-_SDA_BASE_(r13) -/* 80297B7C 002937DC 90 0D AC 54 */ stw r0, lbl_8063FF14-_SDA_BASE_(r13) -lbl_80297B80: -/* 80297B80 002937E0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80297B84 002937E4 4B F2 F5 E9 */ bl _restgpr_25 -/* 80297B88 002937E8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80297B8C 002937EC 7C 08 03 A6 */ mtlr r0 -/* 80297B90 002937F0 38 21 00 30 */ addi r1, r1, 0x30 -/* 80297B94 002937F4 4E 80 00 20 */ blr - -.global func_80297B98 -func_80297B98: -/* 80297B98 002937F8 38 00 00 00 */ li r0, 0 -/* 80297B9C 002937FC 90 0D AC 50 */ stw r0, lbl_8063FF10-_SDA_BASE_(r13) -/* 80297BA0 00293800 90 0D AC 60 */ stw r0, lbl_8063FF20-_SDA_BASE_(r13) -/* 80297BA4 00293804 90 0D AC 54 */ stw r0, lbl_8063FF14-_SDA_BASE_(r13) -/* 80297BA8 00293808 4E 80 00 20 */ blr - -.global func_80297BAC -func_80297BAC: -/* 80297BAC 0029380C 90 6D AC 5C */ stw r3, lbl_8063FF1C-_SDA_BASE_(r13) -/* 80297BB0 00293810 4E 80 00 20 */ blr - -.global func_80297BB4 -func_80297BB4: -/* 80297BB4 00293814 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80297BB8 00293818 7C 08 02 A6 */ mflr r0 -/* 80297BBC 0029381C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80297BC0 00293820 54 80 07 3E */ clrlwi r0, r4, 0x1c -/* 80297BC4 00293824 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80297BC8 00293828 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80297BCC 0029382C 93 A1 00 14 */ stw r29, 0x14(r1) -/* 80297BD0 00293830 7C BD 2B 78 */ mr r29, r5 -/* 80297BD4 00293834 93 81 00 10 */ stw r28, 0x10(r1) -/* 80297BD8 00293838 7C 7C 1B 78 */ mr r28, r3 -/* 80297BDC 0029383C 81 63 00 18 */ lwz r11, 0x18(r3) -/* 80297BE0 00293840 81 8D AC 50 */ lwz r12, lbl_8063FF10-_SDA_BASE_(r13) -/* 80297BE4 00293844 1C 8B 00 70 */ mulli r4, r11, 0x70 -/* 80297BE8 00293848 81 61 00 28 */ lwz r11, 0x28(r1) -/* 80297BEC 0029384C 7C 6C 21 2E */ stwx r3, r12, r4 -/* 80297BF0 00293850 7F CC 22 14 */ add r30, r12, r4 -/* 80297BF4 00293854 7F C3 F3 78 */ mr r3, r30 -/* 80297BF8 00293858 90 1E 00 04 */ stw r0, 4(r30) -/* 80297BFC 0029385C 90 BE 00 08 */ stw r5, 8(r30) -/* 80297C00 00293860 90 DE 00 0C */ stw r6, 0xc(r30) -/* 80297C04 00293864 90 FE 00 10 */ stw r7, 0x10(r30) -/* 80297C08 00293868 91 1E 00 14 */ stw r8, 0x14(r30) -/* 80297C0C 0029386C 91 3E 00 18 */ stw r9, 0x18(r30) -/* 80297C10 00293870 91 5E 00 1C */ stw r10, 0x1c(r30) -/* 80297C14 00293874 91 7E 00 20 */ stw r11, 0x20(r30) -/* 80297C18 00293878 4B FF FC 79 */ bl func_80297890 -/* 80297C1C 0029387C 80 1E 00 04 */ lwz r0, 4(r30) -/* 80297C20 00293880 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 80297C24 00293884 41 82 00 10 */ beq lbl_80297C34 -/* 80297C28 00293888 38 00 00 00 */ li r0, 0 -/* 80297C2C 0029388C B0 1E 00 3C */ sth r0, 0x3c(r30) -/* 80297C30 00293890 48 00 00 40 */ b lbl_80297C70 -lbl_80297C34: -/* 80297C34 00293894 2C 1D FC 78 */ cmpwi r29, -904 -/* 80297C38 00293898 41 81 00 0C */ bgt lbl_80297C44 -/* 80297C3C 0029389C 38 00 00 00 */ li r0, 0 -/* 80297C40 002938A0 48 00 00 2C */ b lbl_80297C6C -lbl_80297C44: -/* 80297C44 002938A4 2C 1D 00 3C */ cmpwi r29, 0x3c -/* 80297C48 002938A8 41 80 00 10 */ blt lbl_80297C58 -/* 80297C4C 002938AC 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297C50 002938B0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297C54 002938B4 48 00 00 18 */ b lbl_80297C6C -lbl_80297C58: -/* 80297C58 002938B8 38 1D 03 88 */ addi r0, r29, 0x388 -/* 80297C5C 002938BC 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297C60 002938C0 54 00 08 3C */ slwi r0, r0, 1 -/* 80297C64 002938C4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297C68 002938C8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297C6C: -/* 80297C6C 002938CC B0 1E 00 3C */ sth r0, 0x3c(r30) -lbl_80297C70: -/* 80297C70 002938D0 80 0D AC 5C */ lwz r0, lbl_8063FF1C-_SDA_BASE_(r13) -/* 80297C74 002938D4 3B A0 00 00 */ li r29, 0 -/* 80297C78 002938D8 2C 00 00 03 */ cmpwi r0, 3 -/* 80297C7C 002938DC 41 82 0D 88 */ beq lbl_80298A04 -/* 80297C80 002938E0 40 80 14 28 */ bge lbl_802990A8 -/* 80297C84 002938E4 2C 00 00 00 */ cmpwi r0, 0 -/* 80297C88 002938E8 41 82 00 0C */ beq lbl_80297C94 -/* 80297C8C 002938EC 40 80 06 88 */ bge lbl_80298314 -/* 80297C90 002938F0 48 00 14 18 */ b lbl_802990A8 -lbl_80297C94: -/* 80297C94 002938F4 80 7E 00 20 */ lwz r3, 0x20(r30) -/* 80297C98 002938F8 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80297C9C 002938FC 7C 63 02 14 */ add r3, r3, r0 -/* 80297CA0 00293900 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297CA4 00293904 41 81 00 0C */ bgt lbl_80297CB0 -/* 80297CA8 00293908 38 00 00 00 */ li r0, 0 -/* 80297CAC 0029390C 48 00 00 2C */ b lbl_80297CD8 -lbl_80297CB0: -/* 80297CB0 00293910 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297CB4 00293914 41 80 00 10 */ blt lbl_80297CC4 -/* 80297CB8 00293918 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297CBC 0029391C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297CC0 00293920 48 00 00 18 */ b lbl_80297CD8 -lbl_80297CC4: -/* 80297CC4 00293924 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297CC8 00293928 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297CCC 0029392C 54 00 08 3C */ slwi r0, r0, 1 -/* 80297CD0 00293930 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297CD4 00293934 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297CD8: -/* 80297CD8 00293938 B0 1E 00 40 */ sth r0, 0x40(r30) -/* 80297CDC 0029393C 80 7E 00 20 */ lwz r3, 0x20(r30) -/* 80297CE0 00293940 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80297CE4 00293944 7C 63 02 14 */ add r3, r3, r0 -/* 80297CE8 00293948 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297CEC 0029394C 41 81 00 0C */ bgt lbl_80297CF8 -/* 80297CF0 00293950 38 00 00 00 */ li r0, 0 -/* 80297CF4 00293954 48 00 00 2C */ b lbl_80297D20 -lbl_80297CF8: -/* 80297CF8 00293958 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297CFC 0029395C 41 80 00 10 */ blt lbl_80297D0C -/* 80297D00 00293960 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297D04 00293964 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297D08 00293968 48 00 00 18 */ b lbl_80297D20 -lbl_80297D0C: -/* 80297D0C 0029396C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297D10 00293970 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297D14 00293974 54 00 08 3C */ slwi r0, r0, 1 -/* 80297D18 00293978 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297D1C 0029397C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297D20: -/* 80297D20 00293980 B0 1E 00 44 */ sth r0, 0x44(r30) -/* 80297D24 00293984 80 7E 00 20 */ lwz r3, 0x20(r30) -/* 80297D28 00293988 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 80297D2C 0029398C 7C 63 02 14 */ add r3, r3, r0 -/* 80297D30 00293990 38 63 FF E2 */ addi r3, r3, -30 -/* 80297D34 00293994 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297D38 00293998 41 81 00 0C */ bgt lbl_80297D44 -/* 80297D3C 0029399C 38 00 00 00 */ li r0, 0 -/* 80297D40 002939A0 48 00 00 2C */ b lbl_80297D6C -lbl_80297D44: -/* 80297D44 002939A4 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297D48 002939A8 41 80 00 10 */ blt lbl_80297D58 -/* 80297D4C 002939AC 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297D50 002939B0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297D54 002939B4 48 00 00 18 */ b lbl_80297D6C -lbl_80297D58: -/* 80297D58 002939B8 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297D5C 002939BC 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297D60 002939C0 54 00 08 3C */ slwi r0, r0, 1 -/* 80297D64 002939C4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297D68 002939C8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297D6C: -/* 80297D6C 002939CC B0 1E 00 48 */ sth r0, 0x48(r30) -/* 80297D70 002939D0 80 1E 00 04 */ lwz r0, 4(r30) -/* 80297D74 002939D4 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80297D78 002939D8 41 82 00 E4 */ beq lbl_80297E5C -/* 80297D7C 002939DC 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80297D80 002939E0 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80297D84 002939E4 7C 63 02 14 */ add r3, r3, r0 -/* 80297D88 002939E8 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297D8C 002939EC 41 81 00 0C */ bgt lbl_80297D98 -/* 80297D90 002939F0 38 00 00 00 */ li r0, 0 -/* 80297D94 002939F4 48 00 00 2C */ b lbl_80297DC0 -lbl_80297D98: -/* 80297D98 002939F8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297D9C 002939FC 41 80 00 10 */ blt lbl_80297DAC -/* 80297DA0 00293A00 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297DA4 00293A04 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297DA8 00293A08 48 00 00 18 */ b lbl_80297DC0 -lbl_80297DAC: -/* 80297DAC 00293A0C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297DB0 00293A10 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297DB4 00293A14 54 00 08 3C */ slwi r0, r0, 1 -/* 80297DB8 00293A18 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297DBC 00293A1C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297DC0: -/* 80297DC0 00293A20 B0 1E 00 4C */ sth r0, 0x4c(r30) -/* 80297DC4 00293A24 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80297DC8 00293A28 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80297DCC 00293A2C 7C 63 02 14 */ add r3, r3, r0 -/* 80297DD0 00293A30 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297DD4 00293A34 41 81 00 0C */ bgt lbl_80297DE0 -/* 80297DD8 00293A38 38 00 00 00 */ li r0, 0 -/* 80297DDC 00293A3C 48 00 00 2C */ b lbl_80297E08 -lbl_80297DE0: -/* 80297DE0 00293A40 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297DE4 00293A44 41 80 00 10 */ blt lbl_80297DF4 -/* 80297DE8 00293A48 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297DEC 00293A4C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297DF0 00293A50 48 00 00 18 */ b lbl_80297E08 -lbl_80297DF4: -/* 80297DF4 00293A54 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297DF8 00293A58 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297DFC 00293A5C 54 00 08 3C */ slwi r0, r0, 1 -/* 80297E00 00293A60 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297E04 00293A64 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297E08: -/* 80297E08 00293A68 B0 1E 00 50 */ sth r0, 0x50(r30) -/* 80297E0C 00293A6C 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80297E10 00293A70 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 80297E14 00293A74 7C 63 02 14 */ add r3, r3, r0 -/* 80297E18 00293A78 38 63 FF E2 */ addi r3, r3, -30 -/* 80297E1C 00293A7C 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297E20 00293A80 41 81 00 0C */ bgt lbl_80297E2C -/* 80297E24 00293A84 38 00 00 00 */ li r0, 0 -/* 80297E28 00293A88 48 00 00 2C */ b lbl_80297E54 -lbl_80297E2C: -/* 80297E2C 00293A8C 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297E30 00293A90 41 80 00 10 */ blt lbl_80297E40 -/* 80297E34 00293A94 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297E38 00293A98 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297E3C 00293A9C 48 00 00 18 */ b lbl_80297E54 -lbl_80297E40: -/* 80297E40 00293AA0 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297E44 00293AA4 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297E48 00293AA8 54 00 08 3C */ slwi r0, r0, 1 -/* 80297E4C 00293AAC 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297E50 00293AB0 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297E54: -/* 80297E54 00293AB4 B0 1E 00 54 */ sth r0, 0x54(r30) -/* 80297E58 00293AB8 48 00 00 F8 */ b lbl_80297F50 -lbl_80297E5C: -/* 80297E5C 00293ABC 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80297E60 00293AC0 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80297E64 00293AC4 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80297E68 00293AC8 7C 04 02 14 */ add r0, r4, r0 -/* 80297E6C 00293ACC 7C 63 02 14 */ add r3, r3, r0 -/* 80297E70 00293AD0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297E74 00293AD4 41 81 00 0C */ bgt lbl_80297E80 -/* 80297E78 00293AD8 38 00 00 00 */ li r0, 0 -/* 80297E7C 00293ADC 48 00 00 2C */ b lbl_80297EA8 -lbl_80297E80: -/* 80297E80 00293AE0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297E84 00293AE4 41 80 00 10 */ blt lbl_80297E94 -/* 80297E88 00293AE8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297E8C 00293AEC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297E90 00293AF0 48 00 00 18 */ b lbl_80297EA8 -lbl_80297E94: -/* 80297E94 00293AF4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297E98 00293AF8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297E9C 00293AFC 54 00 08 3C */ slwi r0, r0, 1 -/* 80297EA0 00293B00 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297EA4 00293B04 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297EA8: -/* 80297EA8 00293B08 B0 1E 00 4C */ sth r0, 0x4c(r30) -/* 80297EAC 00293B0C 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80297EB0 00293B10 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80297EB4 00293B14 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 80297EB8 00293B18 7C 04 02 14 */ add r0, r4, r0 -/* 80297EBC 00293B1C 7C 63 02 14 */ add r3, r3, r0 -/* 80297EC0 00293B20 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297EC4 00293B24 41 81 00 0C */ bgt lbl_80297ED0 -/* 80297EC8 00293B28 38 00 00 00 */ li r0, 0 -/* 80297ECC 00293B2C 48 00 00 2C */ b lbl_80297EF8 -lbl_80297ED0: -/* 80297ED0 00293B30 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297ED4 00293B34 41 80 00 10 */ blt lbl_80297EE4 -/* 80297ED8 00293B38 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297EDC 00293B3C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297EE0 00293B40 48 00 00 18 */ b lbl_80297EF8 -lbl_80297EE4: -/* 80297EE4 00293B44 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297EE8 00293B48 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297EEC 00293B4C 54 00 08 3C */ slwi r0, r0, 1 -/* 80297EF0 00293B50 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297EF4 00293B54 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297EF8: -/* 80297EF8 00293B58 B0 1E 00 50 */ sth r0, 0x50(r30) -/* 80297EFC 00293B5C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80297F00 00293B60 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80297F04 00293B64 80 7E 00 30 */ lwz r3, 0x30(r30) -/* 80297F08 00293B68 7C 04 02 14 */ add r0, r4, r0 -/* 80297F0C 00293B6C 7C 60 1A 14 */ add r3, r0, r3 -/* 80297F10 00293B70 38 63 FF E2 */ addi r3, r3, -30 -/* 80297F14 00293B74 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297F18 00293B78 41 81 00 0C */ bgt lbl_80297F24 -/* 80297F1C 00293B7C 38 00 00 00 */ li r0, 0 -/* 80297F20 00293B80 48 00 00 2C */ b lbl_80297F4C -lbl_80297F24: -/* 80297F24 00293B84 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297F28 00293B88 41 80 00 10 */ blt lbl_80297F38 -/* 80297F2C 00293B8C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297F30 00293B90 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297F34 00293B94 48 00 00 18 */ b lbl_80297F4C -lbl_80297F38: -/* 80297F38 00293B98 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297F3C 00293B9C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297F40 00293BA0 54 00 08 3C */ slwi r0, r0, 1 -/* 80297F44 00293BA4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297F48 00293BA8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297F4C: -/* 80297F4C 00293BAC B0 1E 00 54 */ sth r0, 0x54(r30) -lbl_80297F50: -/* 80297F50 00293BB0 80 1E 00 04 */ lwz r0, 4(r30) -/* 80297F54 00293BB4 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 80297F58 00293BB8 41 82 00 E4 */ beq lbl_8029803C -/* 80297F5C 00293BBC 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 80297F60 00293BC0 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80297F64 00293BC4 7C 63 02 14 */ add r3, r3, r0 -/* 80297F68 00293BC8 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297F6C 00293BCC 41 81 00 0C */ bgt lbl_80297F78 -/* 80297F70 00293BD0 38 00 00 00 */ li r0, 0 -/* 80297F74 00293BD4 48 00 00 2C */ b lbl_80297FA0 -lbl_80297F78: -/* 80297F78 00293BD8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297F7C 00293BDC 41 80 00 10 */ blt lbl_80297F8C -/* 80297F80 00293BE0 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297F84 00293BE4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297F88 00293BE8 48 00 00 18 */ b lbl_80297FA0 -lbl_80297F8C: -/* 80297F8C 00293BEC 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297F90 00293BF0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297F94 00293BF4 54 00 08 3C */ slwi r0, r0, 1 -/* 80297F98 00293BF8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297F9C 00293BFC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297FA0: -/* 80297FA0 00293C00 B0 1E 00 58 */ sth r0, 0x58(r30) -/* 80297FA4 00293C04 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 80297FA8 00293C08 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80297FAC 00293C0C 7C 63 02 14 */ add r3, r3, r0 -/* 80297FB0 00293C10 2C 03 FC 78 */ cmpwi r3, -904 -/* 80297FB4 00293C14 41 81 00 0C */ bgt lbl_80297FC0 -/* 80297FB8 00293C18 38 00 00 00 */ li r0, 0 -/* 80297FBC 00293C1C 48 00 00 2C */ b lbl_80297FE8 -lbl_80297FC0: -/* 80297FC0 00293C20 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80297FC4 00293C24 41 80 00 10 */ blt lbl_80297FD4 -/* 80297FC8 00293C28 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80297FCC 00293C2C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80297FD0 00293C30 48 00 00 18 */ b lbl_80297FE8 -lbl_80297FD4: -/* 80297FD4 00293C34 38 03 03 88 */ addi r0, r3, 0x388 -/* 80297FD8 00293C38 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80297FDC 00293C3C 54 00 08 3C */ slwi r0, r0, 1 -/* 80297FE0 00293C40 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80297FE4 00293C44 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80297FE8: -/* 80297FE8 00293C48 B0 1E 00 5C */ sth r0, 0x5c(r30) -/* 80297FEC 00293C4C 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 80297FF0 00293C50 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 80297FF4 00293C54 7C 63 02 14 */ add r3, r3, r0 -/* 80297FF8 00293C58 38 63 FF E2 */ addi r3, r3, -30 -/* 80297FFC 00293C5C 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298000 00293C60 41 81 00 0C */ bgt lbl_8029800C -/* 80298004 00293C64 38 00 00 00 */ li r0, 0 -/* 80298008 00293C68 48 00 00 2C */ b lbl_80298034 -lbl_8029800C: -/* 8029800C 00293C6C 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298010 00293C70 41 80 00 10 */ blt lbl_80298020 -/* 80298014 00293C74 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298018 00293C78 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 8029801C 00293C7C 48 00 00 18 */ b lbl_80298034 -lbl_80298020: -/* 80298020 00293C80 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298024 00293C84 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298028 00293C88 54 00 08 3C */ slwi r0, r0, 1 -/* 8029802C 00293C8C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298030 00293C90 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298034: -/* 80298034 00293C94 B0 1E 00 60 */ sth r0, 0x60(r30) -/* 80298038 00293C98 48 00 00 F8 */ b lbl_80298130 -lbl_8029803C: -/* 8029803C 00293C9C 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298040 00293CA0 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298044 00293CA4 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 80298048 00293CA8 7C 04 02 14 */ add r0, r4, r0 -/* 8029804C 00293CAC 7C 63 02 14 */ add r3, r3, r0 -/* 80298050 00293CB0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298054 00293CB4 41 81 00 0C */ bgt lbl_80298060 -/* 80298058 00293CB8 38 00 00 00 */ li r0, 0 -/* 8029805C 00293CBC 48 00 00 2C */ b lbl_80298088 -lbl_80298060: -/* 80298060 00293CC0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298064 00293CC4 41 80 00 10 */ blt lbl_80298074 -/* 80298068 00293CC8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029806C 00293CCC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298070 00293CD0 48 00 00 18 */ b lbl_80298088 -lbl_80298074: -/* 80298074 00293CD4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298078 00293CD8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029807C 00293CDC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298080 00293CE0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298084 00293CE4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298088: -/* 80298088 00293CE8 B0 1E 00 58 */ sth r0, 0x58(r30) -/* 8029808C 00293CEC 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298090 00293CF0 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298094 00293CF4 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 80298098 00293CF8 7C 04 02 14 */ add r0, r4, r0 -/* 8029809C 00293CFC 7C 63 02 14 */ add r3, r3, r0 -/* 802980A0 00293D00 2C 03 FC 78 */ cmpwi r3, -904 -/* 802980A4 00293D04 41 81 00 0C */ bgt lbl_802980B0 -/* 802980A8 00293D08 38 00 00 00 */ li r0, 0 -/* 802980AC 00293D0C 48 00 00 2C */ b lbl_802980D8 -lbl_802980B0: -/* 802980B0 00293D10 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802980B4 00293D14 41 80 00 10 */ blt lbl_802980C4 -/* 802980B8 00293D18 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802980BC 00293D1C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802980C0 00293D20 48 00 00 18 */ b lbl_802980D8 -lbl_802980C4: -/* 802980C4 00293D24 38 03 03 88 */ addi r0, r3, 0x388 -/* 802980C8 00293D28 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802980CC 00293D2C 54 00 08 3C */ slwi r0, r0, 1 -/* 802980D0 00293D30 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802980D4 00293D34 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802980D8: -/* 802980D8 00293D38 B0 1E 00 5C */ sth r0, 0x5c(r30) -/* 802980DC 00293D3C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 802980E0 00293D40 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 802980E4 00293D44 80 7E 00 30 */ lwz r3, 0x30(r30) -/* 802980E8 00293D48 7C 04 02 14 */ add r0, r4, r0 -/* 802980EC 00293D4C 7C 60 1A 14 */ add r3, r0, r3 -/* 802980F0 00293D50 38 63 FF E2 */ addi r3, r3, -30 -/* 802980F4 00293D54 2C 03 FC 78 */ cmpwi r3, -904 -/* 802980F8 00293D58 41 81 00 0C */ bgt lbl_80298104 -/* 802980FC 00293D5C 38 00 00 00 */ li r0, 0 -/* 80298100 00293D60 48 00 00 2C */ b lbl_8029812C -lbl_80298104: -/* 80298104 00293D64 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298108 00293D68 41 80 00 10 */ blt lbl_80298118 -/* 8029810C 00293D6C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298110 00293D70 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298114 00293D74 48 00 00 18 */ b lbl_8029812C -lbl_80298118: -/* 80298118 00293D78 38 03 03 88 */ addi r0, r3, 0x388 -/* 8029811C 00293D7C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298120 00293D80 54 00 08 3C */ slwi r0, r0, 1 -/* 80298124 00293D84 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298128 00293D88 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_8029812C: -/* 8029812C 00293D8C B0 1E 00 60 */ sth r0, 0x60(r30) -lbl_80298130: -/* 80298130 00293D90 80 1E 00 04 */ lwz r0, 4(r30) -/* 80298134 00293D94 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80298138 00293D98 41 82 00 E4 */ beq lbl_8029821C -/* 8029813C 00293D9C 80 7E 00 14 */ lwz r3, 0x14(r30) -/* 80298140 00293DA0 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 80298144 00293DA4 7C 63 02 14 */ add r3, r3, r0 -/* 80298148 00293DA8 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029814C 00293DAC 41 81 00 0C */ bgt lbl_80298158 -/* 80298150 00293DB0 38 00 00 00 */ li r0, 0 -/* 80298154 00293DB4 48 00 00 2C */ b lbl_80298180 -lbl_80298158: -/* 80298158 00293DB8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029815C 00293DBC 41 80 00 10 */ blt lbl_8029816C -/* 80298160 00293DC0 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298164 00293DC4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298168 00293DC8 48 00 00 18 */ b lbl_80298180 -lbl_8029816C: -/* 8029816C 00293DCC 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298170 00293DD0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298174 00293DD4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298178 00293DD8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 8029817C 00293DDC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298180: -/* 80298180 00293DE0 B0 1E 00 64 */ sth r0, 0x64(r30) -/* 80298184 00293DE4 80 7E 00 14 */ lwz r3, 0x14(r30) -/* 80298188 00293DE8 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 8029818C 00293DEC 7C 63 02 14 */ add r3, r3, r0 -/* 80298190 00293DF0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298194 00293DF4 41 81 00 0C */ bgt lbl_802981A0 -/* 80298198 00293DF8 38 00 00 00 */ li r0, 0 -/* 8029819C 00293DFC 48 00 00 2C */ b lbl_802981C8 -lbl_802981A0: -/* 802981A0 00293E00 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802981A4 00293E04 41 80 00 10 */ blt lbl_802981B4 -/* 802981A8 00293E08 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802981AC 00293E0C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802981B0 00293E10 48 00 00 18 */ b lbl_802981C8 -lbl_802981B4: -/* 802981B4 00293E14 38 03 03 88 */ addi r0, r3, 0x388 -/* 802981B8 00293E18 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802981BC 00293E1C 54 00 08 3C */ slwi r0, r0, 1 -/* 802981C0 00293E20 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802981C4 00293E24 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802981C8: -/* 802981C8 00293E28 B0 1E 00 68 */ sth r0, 0x68(r30) -/* 802981CC 00293E2C 80 7E 00 14 */ lwz r3, 0x14(r30) -/* 802981D0 00293E30 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 802981D4 00293E34 7C 63 02 14 */ add r3, r3, r0 -/* 802981D8 00293E38 38 63 FF E2 */ addi r3, r3, -30 -/* 802981DC 00293E3C 2C 03 FC 78 */ cmpwi r3, -904 -/* 802981E0 00293E40 41 81 00 0C */ bgt lbl_802981EC -/* 802981E4 00293E44 38 00 00 00 */ li r0, 0 -/* 802981E8 00293E48 48 00 00 2C */ b lbl_80298214 -lbl_802981EC: -/* 802981EC 00293E4C 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802981F0 00293E50 41 80 00 10 */ blt lbl_80298200 -/* 802981F4 00293E54 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802981F8 00293E58 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802981FC 00293E5C 48 00 00 18 */ b lbl_80298214 -lbl_80298200: -/* 80298200 00293E60 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298204 00293E64 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298208 00293E68 54 00 08 3C */ slwi r0, r0, 1 -/* 8029820C 00293E6C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298210 00293E70 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298214: -/* 80298214 00293E74 B0 1E 00 6C */ sth r0, 0x6c(r30) -/* 80298218 00293E78 48 00 0E 90 */ b lbl_802990A8 -lbl_8029821C: -/* 8029821C 00293E7C 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298220 00293E80 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298224 00293E84 80 7E 00 14 */ lwz r3, 0x14(r30) -/* 80298228 00293E88 7C 04 02 14 */ add r0, r4, r0 -/* 8029822C 00293E8C 7C 63 02 14 */ add r3, r3, r0 -/* 80298230 00293E90 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298234 00293E94 41 81 00 0C */ bgt lbl_80298240 -/* 80298238 00293E98 38 00 00 00 */ li r0, 0 -/* 8029823C 00293E9C 48 00 00 2C */ b lbl_80298268 -lbl_80298240: -/* 80298240 00293EA0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298244 00293EA4 41 80 00 10 */ blt lbl_80298254 -/* 80298248 00293EA8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029824C 00293EAC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298250 00293EB0 48 00 00 18 */ b lbl_80298268 -lbl_80298254: -/* 80298254 00293EB4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298258 00293EB8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029825C 00293EBC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298260 00293EC0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298264 00293EC4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298268: -/* 80298268 00293EC8 B0 1E 00 64 */ sth r0, 0x64(r30) -/* 8029826C 00293ECC 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298270 00293ED0 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298274 00293ED4 80 7E 00 14 */ lwz r3, 0x14(r30) -/* 80298278 00293ED8 7C 04 02 14 */ add r0, r4, r0 -/* 8029827C 00293EDC 7C 63 02 14 */ add r3, r3, r0 -/* 80298280 00293EE0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298284 00293EE4 41 81 00 0C */ bgt lbl_80298290 -/* 80298288 00293EE8 38 00 00 00 */ li r0, 0 -/* 8029828C 00293EEC 48 00 00 2C */ b lbl_802982B8 -lbl_80298290: -/* 80298290 00293EF0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298294 00293EF4 41 80 00 10 */ blt lbl_802982A4 -/* 80298298 00293EF8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029829C 00293EFC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802982A0 00293F00 48 00 00 18 */ b lbl_802982B8 -lbl_802982A4: -/* 802982A4 00293F04 38 03 03 88 */ addi r0, r3, 0x388 -/* 802982A8 00293F08 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802982AC 00293F0C 54 00 08 3C */ slwi r0, r0, 1 -/* 802982B0 00293F10 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802982B4 00293F14 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802982B8: -/* 802982B8 00293F18 B0 1E 00 68 */ sth r0, 0x68(r30) -/* 802982BC 00293F1C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 802982C0 00293F20 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 802982C4 00293F24 80 7E 00 30 */ lwz r3, 0x30(r30) -/* 802982C8 00293F28 7C 04 02 14 */ add r0, r4, r0 -/* 802982CC 00293F2C 7C 60 1A 14 */ add r3, r0, r3 -/* 802982D0 00293F30 38 63 FF E2 */ addi r3, r3, -30 -/* 802982D4 00293F34 2C 03 FC 78 */ cmpwi r3, -904 -/* 802982D8 00293F38 41 81 00 0C */ bgt lbl_802982E4 -/* 802982DC 00293F3C 38 00 00 00 */ li r0, 0 -/* 802982E0 00293F40 48 00 00 2C */ b lbl_8029830C -lbl_802982E4: -/* 802982E4 00293F44 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802982E8 00293F48 41 80 00 10 */ blt lbl_802982F8 -/* 802982EC 00293F4C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802982F0 00293F50 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802982F4 00293F54 48 00 00 18 */ b lbl_8029830C -lbl_802982F8: -/* 802982F8 00293F58 38 03 03 88 */ addi r0, r3, 0x388 -/* 802982FC 00293F5C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298300 00293F60 54 00 08 3C */ slwi r0, r0, 1 -/* 80298304 00293F64 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298308 00293F68 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_8029830C: -/* 8029830C 00293F6C B0 1E 00 6C */ sth r0, 0x6c(r30) -/* 80298310 00293F70 48 00 0D 98 */ b lbl_802990A8 -lbl_80298314: -/* 80298314 00293F74 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298318 00293F78 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 8029831C 00293F7C 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298320 00293F80 7C 04 02 14 */ add r0, r4, r0 -/* 80298324 00293F84 7C 63 02 14 */ add r3, r3, r0 -/* 80298328 00293F88 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029832C 00293F8C 41 81 00 0C */ bgt lbl_80298338 -/* 80298330 00293F90 38 00 00 00 */ li r0, 0 -/* 80298334 00293F94 48 00 00 2C */ b lbl_80298360 -lbl_80298338: -/* 80298338 00293F98 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029833C 00293F9C 41 80 00 10 */ blt lbl_8029834C -/* 80298340 00293FA0 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298344 00293FA4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298348 00293FA8 48 00 00 18 */ b lbl_80298360 -lbl_8029834C: -/* 8029834C 00293FAC 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298350 00293FB0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298354 00293FB4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298358 00293FB8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 8029835C 00293FBC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298360: -/* 80298360 00293FC0 B0 1E 00 40 */ sth r0, 0x40(r30) -/* 80298364 00293FC4 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298368 00293FC8 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 8029836C 00293FCC 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298370 00293FD0 7C 04 02 14 */ add r0, r4, r0 -/* 80298374 00293FD4 7C 63 02 14 */ add r3, r3, r0 -/* 80298378 00293FD8 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029837C 00293FDC 41 81 00 0C */ bgt lbl_80298388 -/* 80298380 00293FE0 38 00 00 00 */ li r0, 0 -/* 80298384 00293FE4 48 00 00 2C */ b lbl_802983B0 -lbl_80298388: -/* 80298388 00293FE8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029838C 00293FEC 41 80 00 10 */ blt lbl_8029839C -/* 80298390 00293FF0 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298394 00293FF4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298398 00293FF8 48 00 00 18 */ b lbl_802983B0 -lbl_8029839C: -/* 8029839C 00293FFC 38 03 03 88 */ addi r0, r3, 0x388 -/* 802983A0 00294000 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802983A4 00294004 54 00 08 3C */ slwi r0, r0, 1 -/* 802983A8 00294008 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802983AC 0029400C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802983B0: -/* 802983B0 00294010 B0 1E 00 44 */ sth r0, 0x44(r30) -/* 802983B4 00294014 80 7E 00 20 */ lwz r3, 0x20(r30) -/* 802983B8 00294018 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 802983BC 0029401C 7C 63 02 14 */ add r3, r3, r0 -/* 802983C0 00294020 38 63 FF E2 */ addi r3, r3, -30 -/* 802983C4 00294024 2C 03 FC 78 */ cmpwi r3, -904 -/* 802983C8 00294028 41 81 00 0C */ bgt lbl_802983D4 -/* 802983CC 0029402C 38 00 00 00 */ li r0, 0 -/* 802983D0 00294030 48 00 00 2C */ b lbl_802983FC -lbl_802983D4: -/* 802983D4 00294034 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802983D8 00294038 41 80 00 10 */ blt lbl_802983E8 -/* 802983DC 0029403C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802983E0 00294040 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802983E4 00294044 48 00 00 18 */ b lbl_802983FC -lbl_802983E8: -/* 802983E8 00294048 38 03 03 88 */ addi r0, r3, 0x388 -/* 802983EC 0029404C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802983F0 00294050 54 00 08 3C */ slwi r0, r0, 1 -/* 802983F4 00294054 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802983F8 00294058 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802983FC: -/* 802983FC 0029405C B0 1E 00 48 */ sth r0, 0x48(r30) -/* 80298400 00294060 80 1E 00 04 */ lwz r0, 4(r30) -/* 80298404 00294064 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80298408 00294068 41 82 00 F4 */ beq lbl_802984FC -/* 8029840C 0029406C 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298410 00294070 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298414 00294074 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298418 00294078 7C 04 02 14 */ add r0, r4, r0 -/* 8029841C 0029407C 7C 63 02 14 */ add r3, r3, r0 -/* 80298420 00294080 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298424 00294084 41 81 00 0C */ bgt lbl_80298430 -/* 80298428 00294088 38 00 00 00 */ li r0, 0 -/* 8029842C 0029408C 48 00 00 2C */ b lbl_80298458 -lbl_80298430: -/* 80298430 00294090 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298434 00294094 41 80 00 10 */ blt lbl_80298444 -/* 80298438 00294098 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029843C 0029409C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298440 002940A0 48 00 00 18 */ b lbl_80298458 -lbl_80298444: -/* 80298444 002940A4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298448 002940A8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029844C 002940AC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298450 002940B0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298454 002940B4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298458: -/* 80298458 002940B8 B0 1E 00 4C */ sth r0, 0x4c(r30) -/* 8029845C 002940BC 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298460 002940C0 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298464 002940C4 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298468 002940C8 7C 04 02 14 */ add r0, r4, r0 -/* 8029846C 002940CC 7C 63 02 14 */ add r3, r3, r0 -/* 80298470 002940D0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298474 002940D4 41 81 00 0C */ bgt lbl_80298480 -/* 80298478 002940D8 38 00 00 00 */ li r0, 0 -/* 8029847C 002940DC 48 00 00 2C */ b lbl_802984A8 -lbl_80298480: -/* 80298480 002940E0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298484 002940E4 41 80 00 10 */ blt lbl_80298494 -/* 80298488 002940E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029848C 002940EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298490 002940F0 48 00 00 18 */ b lbl_802984A8 -lbl_80298494: -/* 80298494 002940F4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298498 002940F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029849C 002940FC 54 00 08 3C */ slwi r0, r0, 1 -/* 802984A0 00294100 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802984A4 00294104 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802984A8: -/* 802984A8 00294108 B0 1E 00 50 */ sth r0, 0x50(r30) -/* 802984AC 0029410C 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 802984B0 00294110 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 802984B4 00294114 7C 63 02 14 */ add r3, r3, r0 -/* 802984B8 00294118 38 63 FF E2 */ addi r3, r3, -30 -/* 802984BC 0029411C 2C 03 FC 78 */ cmpwi r3, -904 -/* 802984C0 00294120 41 81 00 0C */ bgt lbl_802984CC -/* 802984C4 00294124 38 00 00 00 */ li r0, 0 -/* 802984C8 00294128 48 00 00 2C */ b lbl_802984F4 -lbl_802984CC: -/* 802984CC 0029412C 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802984D0 00294130 41 80 00 10 */ blt lbl_802984E0 -/* 802984D4 00294134 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802984D8 00294138 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802984DC 0029413C 48 00 00 18 */ b lbl_802984F4 -lbl_802984E0: -/* 802984E0 00294140 38 03 03 88 */ addi r0, r3, 0x388 -/* 802984E4 00294144 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802984E8 00294148 54 00 08 3C */ slwi r0, r0, 1 -/* 802984EC 0029414C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802984F0 00294150 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802984F4: -/* 802984F4 00294154 B0 1E 00 54 */ sth r0, 0x54(r30) -/* 802984F8 00294158 48 00 01 08 */ b lbl_80298600 -lbl_802984FC: -/* 802984FC 0029415C 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298500 00294160 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298504 00294164 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298508 00294168 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 8029850C 0029416C 7C 65 1A 14 */ add r3, r5, r3 -/* 80298510 00294170 7C 04 02 14 */ add r0, r4, r0 -/* 80298514 00294174 7C 63 02 14 */ add r3, r3, r0 -/* 80298518 00294178 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029851C 0029417C 41 81 00 0C */ bgt lbl_80298528 -/* 80298520 00294180 38 00 00 00 */ li r0, 0 -/* 80298524 00294184 48 00 00 2C */ b lbl_80298550 -lbl_80298528: -/* 80298528 00294188 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029852C 0029418C 41 80 00 10 */ blt lbl_8029853C -/* 80298530 00294190 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298534 00294194 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298538 00294198 48 00 00 18 */ b lbl_80298550 -lbl_8029853C: -/* 8029853C 0029419C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298540 002941A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298544 002941A4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298548 002941A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 8029854C 002941AC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298550: -/* 80298550 002941B0 B0 1E 00 4C */ sth r0, 0x4c(r30) -/* 80298554 002941B4 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298558 002941B8 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 8029855C 002941BC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298560 002941C0 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298564 002941C4 7C 65 1A 14 */ add r3, r5, r3 -/* 80298568 002941C8 7C 04 02 14 */ add r0, r4, r0 -/* 8029856C 002941CC 7C 63 02 14 */ add r3, r3, r0 -/* 80298570 002941D0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298574 002941D4 41 81 00 0C */ bgt lbl_80298580 -/* 80298578 002941D8 38 00 00 00 */ li r0, 0 -/* 8029857C 002941DC 48 00 00 2C */ b lbl_802985A8 -lbl_80298580: -/* 80298580 002941E0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298584 002941E4 41 80 00 10 */ blt lbl_80298594 -/* 80298588 002941E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029858C 002941EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298590 002941F0 48 00 00 18 */ b lbl_802985A8 -lbl_80298594: -/* 80298594 002941F4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298598 002941F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029859C 002941FC 54 00 08 3C */ slwi r0, r0, 1 -/* 802985A0 00294200 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802985A4 00294204 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802985A8: -/* 802985A8 00294208 B0 1E 00 50 */ sth r0, 0x50(r30) -/* 802985AC 0029420C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 802985B0 00294210 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 802985B4 00294214 80 7E 00 30 */ lwz r3, 0x30(r30) -/* 802985B8 00294218 7C 04 02 14 */ add r0, r4, r0 -/* 802985BC 0029421C 7C 60 1A 14 */ add r3, r0, r3 -/* 802985C0 00294220 38 63 FF E2 */ addi r3, r3, -30 -/* 802985C4 00294224 2C 03 FC 78 */ cmpwi r3, -904 -/* 802985C8 00294228 41 81 00 0C */ bgt lbl_802985D4 -/* 802985CC 0029422C 38 00 00 00 */ li r0, 0 -/* 802985D0 00294230 48 00 00 2C */ b lbl_802985FC -lbl_802985D4: -/* 802985D4 00294234 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802985D8 00294238 41 80 00 10 */ blt lbl_802985E8 -/* 802985DC 0029423C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802985E0 00294240 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802985E4 00294244 48 00 00 18 */ b lbl_802985FC -lbl_802985E8: -/* 802985E8 00294248 38 03 03 88 */ addi r0, r3, 0x388 -/* 802985EC 0029424C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802985F0 00294250 54 00 08 3C */ slwi r0, r0, 1 -/* 802985F4 00294254 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802985F8 00294258 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802985FC: -/* 802985FC 0029425C B0 1E 00 54 */ sth r0, 0x54(r30) -lbl_80298600: -/* 80298600 00294260 80 1E 00 04 */ lwz r0, 4(r30) -/* 80298604 00294264 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 80298608 00294268 41 82 00 F4 */ beq lbl_802986FC -/* 8029860C 0029426C 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298610 00294270 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298614 00294274 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298618 00294278 7C 04 02 14 */ add r0, r4, r0 -/* 8029861C 0029427C 7C 63 02 14 */ add r3, r3, r0 -/* 80298620 00294280 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298624 00294284 41 81 00 0C */ bgt lbl_80298630 -/* 80298628 00294288 38 00 00 00 */ li r0, 0 -/* 8029862C 0029428C 48 00 00 2C */ b lbl_80298658 -lbl_80298630: -/* 80298630 00294290 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298634 00294294 41 80 00 10 */ blt lbl_80298644 -/* 80298638 00294298 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029863C 0029429C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298640 002942A0 48 00 00 18 */ b lbl_80298658 -lbl_80298644: -/* 80298644 002942A4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298648 002942A8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029864C 002942AC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298650 002942B0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298654 002942B4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298658: -/* 80298658 002942B8 B0 1E 00 58 */ sth r0, 0x58(r30) -/* 8029865C 002942BC 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298660 002942C0 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298664 002942C4 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298668 002942C8 7C 04 02 14 */ add r0, r4, r0 -/* 8029866C 002942CC 7C 63 02 14 */ add r3, r3, r0 -/* 80298670 002942D0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298674 002942D4 41 81 00 0C */ bgt lbl_80298680 -/* 80298678 002942D8 38 00 00 00 */ li r0, 0 -/* 8029867C 002942DC 48 00 00 2C */ b lbl_802986A8 -lbl_80298680: -/* 80298680 002942E0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298684 002942E4 41 80 00 10 */ blt lbl_80298694 -/* 80298688 002942E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029868C 002942EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298690 002942F0 48 00 00 18 */ b lbl_802986A8 -lbl_80298694: -/* 80298694 002942F4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298698 002942F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029869C 002942FC 54 00 08 3C */ slwi r0, r0, 1 -/* 802986A0 00294300 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802986A4 00294304 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802986A8: -/* 802986A8 00294308 B0 1E 00 5C */ sth r0, 0x5c(r30) -/* 802986AC 0029430C 80 7E 00 10 */ lwz r3, 0x10(r30) -/* 802986B0 00294310 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 802986B4 00294314 7C 63 02 14 */ add r3, r3, r0 -/* 802986B8 00294318 38 63 FF E2 */ addi r3, r3, -30 -/* 802986BC 0029431C 2C 03 FC 78 */ cmpwi r3, -904 -/* 802986C0 00294320 41 81 00 0C */ bgt lbl_802986CC -/* 802986C4 00294324 38 00 00 00 */ li r0, 0 -/* 802986C8 00294328 48 00 00 2C */ b lbl_802986F4 -lbl_802986CC: -/* 802986CC 0029432C 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802986D0 00294330 41 80 00 10 */ blt lbl_802986E0 -/* 802986D4 00294334 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802986D8 00294338 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802986DC 0029433C 48 00 00 18 */ b lbl_802986F4 -lbl_802986E0: -/* 802986E0 00294340 38 03 03 88 */ addi r0, r3, 0x388 -/* 802986E4 00294344 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802986E8 00294348 54 00 08 3C */ slwi r0, r0, 1 -/* 802986EC 0029434C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802986F0 00294350 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802986F4: -/* 802986F4 00294354 B0 1E 00 60 */ sth r0, 0x60(r30) -/* 802986F8 00294358 48 00 01 08 */ b lbl_80298800 -lbl_802986FC: -/* 802986FC 0029435C 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298700 00294360 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298704 00294364 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298708 00294368 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 8029870C 0029436C 7C 65 1A 14 */ add r3, r5, r3 -/* 80298710 00294370 7C 04 02 14 */ add r0, r4, r0 -/* 80298714 00294374 7C 63 02 14 */ add r3, r3, r0 -/* 80298718 00294378 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029871C 0029437C 41 81 00 0C */ bgt lbl_80298728 -/* 80298720 00294380 38 00 00 00 */ li r0, 0 -/* 80298724 00294384 48 00 00 2C */ b lbl_80298750 -lbl_80298728: -/* 80298728 00294388 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029872C 0029438C 41 80 00 10 */ blt lbl_8029873C -/* 80298730 00294390 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298734 00294394 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298738 00294398 48 00 00 18 */ b lbl_80298750 -lbl_8029873C: -/* 8029873C 0029439C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298740 002943A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298744 002943A4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298748 002943A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 8029874C 002943AC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298750: -/* 80298750 002943B0 B0 1E 00 58 */ sth r0, 0x58(r30) -/* 80298754 002943B4 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298758 002943B8 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 8029875C 002943BC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298760 002943C0 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298764 002943C4 7C 65 1A 14 */ add r3, r5, r3 -/* 80298768 002943C8 7C 04 02 14 */ add r0, r4, r0 -/* 8029876C 002943CC 7C 63 02 14 */ add r3, r3, r0 -/* 80298770 002943D0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298774 002943D4 41 81 00 0C */ bgt lbl_80298780 -/* 80298778 002943D8 38 00 00 00 */ li r0, 0 -/* 8029877C 002943DC 48 00 00 2C */ b lbl_802987A8 -lbl_80298780: -/* 80298780 002943E0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298784 002943E4 41 80 00 10 */ blt lbl_80298794 -/* 80298788 002943E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029878C 002943EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298790 002943F0 48 00 00 18 */ b lbl_802987A8 -lbl_80298794: -/* 80298794 002943F4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298798 002943F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029879C 002943FC 54 00 08 3C */ slwi r0, r0, 1 -/* 802987A0 00294400 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802987A4 00294404 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802987A8: -/* 802987A8 00294408 B0 1E 00 5C */ sth r0, 0x5c(r30) -/* 802987AC 0029440C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 802987B0 00294410 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 802987B4 00294414 80 7E 00 30 */ lwz r3, 0x30(r30) -/* 802987B8 00294418 7C 04 02 14 */ add r0, r4, r0 -/* 802987BC 0029441C 7C 60 1A 14 */ add r3, r0, r3 -/* 802987C0 00294420 38 63 FF E2 */ addi r3, r3, -30 -/* 802987C4 00294424 2C 03 FC 78 */ cmpwi r3, -904 -/* 802987C8 00294428 41 81 00 0C */ bgt lbl_802987D4 -/* 802987CC 0029442C 38 00 00 00 */ li r0, 0 -/* 802987D0 00294430 48 00 00 2C */ b lbl_802987FC -lbl_802987D4: -/* 802987D4 00294434 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802987D8 00294438 41 80 00 10 */ blt lbl_802987E8 -/* 802987DC 0029443C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802987E0 00294440 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802987E4 00294444 48 00 00 18 */ b lbl_802987FC -lbl_802987E8: -/* 802987E8 00294448 38 03 03 88 */ addi r0, r3, 0x388 -/* 802987EC 0029444C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802987F0 00294450 54 00 08 3C */ slwi r0, r0, 1 -/* 802987F4 00294454 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802987F8 00294458 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802987FC: -/* 802987FC 0029445C B0 1E 00 60 */ sth r0, 0x60(r30) -lbl_80298800: -/* 80298800 00294460 80 1E 00 04 */ lwz r0, 4(r30) -/* 80298804 00294464 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80298808 00294468 41 82 00 F4 */ beq lbl_802988FC -/* 8029880C 0029446C 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298810 00294470 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 80298814 00294474 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298818 00294478 7C 04 02 14 */ add r0, r4, r0 -/* 8029881C 0029447C 7C 63 02 14 */ add r3, r3, r0 -/* 80298820 00294480 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298824 00294484 41 81 00 0C */ bgt lbl_80298830 -/* 80298828 00294488 38 00 00 00 */ li r0, 0 -/* 8029882C 0029448C 48 00 00 2C */ b lbl_80298858 -lbl_80298830: -/* 80298830 00294490 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298834 00294494 41 80 00 10 */ blt lbl_80298844 -/* 80298838 00294498 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029883C 0029449C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298840 002944A0 48 00 00 18 */ b lbl_80298858 -lbl_80298844: -/* 80298844 002944A4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298848 002944A8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029884C 002944AC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298850 002944B0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298854 002944B4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298858: -/* 80298858 002944B8 B0 1E 00 64 */ sth r0, 0x64(r30) -/* 8029885C 002944BC 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298860 002944C0 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 80298864 002944C4 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298868 002944C8 7C 04 02 14 */ add r0, r4, r0 -/* 8029886C 002944CC 7C 63 02 14 */ add r3, r3, r0 -/* 80298870 002944D0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298874 002944D4 41 81 00 0C */ bgt lbl_80298880 -/* 80298878 002944D8 38 00 00 00 */ li r0, 0 -/* 8029887C 002944DC 48 00 00 2C */ b lbl_802988A8 -lbl_80298880: -/* 80298880 002944E0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298884 002944E4 41 80 00 10 */ blt lbl_80298894 -/* 80298888 002944E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029888C 002944EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298890 002944F0 48 00 00 18 */ b lbl_802988A8 -lbl_80298894: -/* 80298894 002944F4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298898 002944F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029889C 002944FC 54 00 08 3C */ slwi r0, r0, 1 -/* 802988A0 00294500 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802988A4 00294504 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802988A8: -/* 802988A8 00294508 B0 1E 00 68 */ sth r0, 0x68(r30) -/* 802988AC 0029450C 80 7E 00 14 */ lwz r3, 0x14(r30) -/* 802988B0 00294510 80 1E 00 30 */ lwz r0, 0x30(r30) -/* 802988B4 00294514 7C 63 02 14 */ add r3, r3, r0 -/* 802988B8 00294518 38 63 FF E2 */ addi r3, r3, -30 -/* 802988BC 0029451C 2C 03 FC 78 */ cmpwi r3, -904 -/* 802988C0 00294520 41 81 00 0C */ bgt lbl_802988CC -/* 802988C4 00294524 38 00 00 00 */ li r0, 0 -/* 802988C8 00294528 48 00 00 2C */ b lbl_802988F4 -lbl_802988CC: -/* 802988CC 0029452C 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802988D0 00294530 41 80 00 10 */ blt lbl_802988E0 -/* 802988D4 00294534 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802988D8 00294538 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802988DC 0029453C 48 00 00 18 */ b lbl_802988F4 -lbl_802988E0: -/* 802988E0 00294540 38 03 03 88 */ addi r0, r3, 0x388 -/* 802988E4 00294544 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802988E8 00294548 54 00 08 3C */ slwi r0, r0, 1 -/* 802988EC 0029454C 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802988F0 00294550 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802988F4: -/* 802988F4 00294554 B0 1E 00 6C */ sth r0, 0x6c(r30) -/* 802988F8 00294558 48 00 07 B0 */ b lbl_802990A8 -lbl_802988FC: -/* 802988FC 0029455C 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298900 00294560 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298904 00294564 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298908 00294568 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 8029890C 0029456C 7C 65 1A 14 */ add r3, r5, r3 -/* 80298910 00294570 7C 04 02 14 */ add r0, r4, r0 -/* 80298914 00294574 7C 63 02 14 */ add r3, r3, r0 -/* 80298918 00294578 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029891C 0029457C 41 81 00 0C */ bgt lbl_80298928 -/* 80298920 00294580 38 00 00 00 */ li r0, 0 -/* 80298924 00294584 48 00 00 2C */ b lbl_80298950 -lbl_80298928: -/* 80298928 00294588 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029892C 0029458C 41 80 00 10 */ blt lbl_8029893C -/* 80298930 00294590 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298934 00294594 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298938 00294598 48 00 00 18 */ b lbl_80298950 -lbl_8029893C: -/* 8029893C 0029459C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298940 002945A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298944 002945A4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298948 002945A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 8029894C 002945AC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298950: -/* 80298950 002945B0 B0 1E 00 64 */ sth r0, 0x64(r30) -/* 80298954 002945B4 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298958 002945B8 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 8029895C 002945BC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298960 002945C0 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 80298964 002945C4 7C 65 1A 14 */ add r3, r5, r3 -/* 80298968 002945C8 7C 04 02 14 */ add r0, r4, r0 -/* 8029896C 002945CC 7C 63 02 14 */ add r3, r3, r0 -/* 80298970 002945D0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298974 002945D4 41 81 00 0C */ bgt lbl_80298980 -/* 80298978 002945D8 38 00 00 00 */ li r0, 0 -/* 8029897C 002945DC 48 00 00 2C */ b lbl_802989A8 -lbl_80298980: -/* 80298980 002945E0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298984 002945E4 41 80 00 10 */ blt lbl_80298994 -/* 80298988 002945E8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029898C 002945EC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298990 002945F0 48 00 00 18 */ b lbl_802989A8 -lbl_80298994: -/* 80298994 002945F4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298998 002945F8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029899C 002945FC 54 00 08 3C */ slwi r0, r0, 1 -/* 802989A0 00294600 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802989A4 00294604 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802989A8: -/* 802989A8 00294608 B0 1E 00 68 */ sth r0, 0x68(r30) -/* 802989AC 0029460C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 802989B0 00294610 80 1E 00 14 */ lwz r0, 0x14(r30) -/* 802989B4 00294614 80 7E 00 30 */ lwz r3, 0x30(r30) -/* 802989B8 00294618 7C 04 02 14 */ add r0, r4, r0 -/* 802989BC 0029461C 7C 60 1A 14 */ add r3, r0, r3 -/* 802989C0 00294620 38 63 FF E2 */ addi r3, r3, -30 -/* 802989C4 00294624 2C 03 FC 78 */ cmpwi r3, -904 -/* 802989C8 00294628 41 81 00 0C */ bgt lbl_802989D4 -/* 802989CC 0029462C 38 00 00 00 */ li r0, 0 -/* 802989D0 00294630 48 00 00 2C */ b lbl_802989FC -lbl_802989D4: -/* 802989D4 00294634 2C 03 00 3C */ cmpwi r3, 0x3c -/* 802989D8 00294638 41 80 00 10 */ blt lbl_802989E8 -/* 802989DC 0029463C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 802989E0 00294640 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 802989E4 00294644 48 00 00 18 */ b lbl_802989FC -lbl_802989E8: -/* 802989E8 00294648 38 03 03 88 */ addi r0, r3, 0x388 -/* 802989EC 0029464C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802989F0 00294650 54 00 08 3C */ slwi r0, r0, 1 -/* 802989F4 00294654 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 802989F8 00294658 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802989FC: -/* 802989FC 0029465C B0 1E 00 6C */ sth r0, 0x6c(r30) -/* 80298A00 00294660 48 00 06 A8 */ b lbl_802990A8 -lbl_80298A04: -/* 80298A04 00294664 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298A08 00294668 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298A0C 0029466C 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298A10 00294670 7C 04 02 14 */ add r0, r4, r0 -/* 80298A14 00294674 7C 63 02 14 */ add r3, r3, r0 -/* 80298A18 00294678 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298A1C 0029467C 41 81 00 0C */ bgt lbl_80298A28 -/* 80298A20 00294680 38 00 00 00 */ li r0, 0 -/* 80298A24 00294684 48 00 00 2C */ b lbl_80298A50 -lbl_80298A28: -/* 80298A28 00294688 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298A2C 0029468C 41 80 00 10 */ blt lbl_80298A3C -/* 80298A30 00294690 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298A34 00294694 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298A38 00294698 48 00 00 18 */ b lbl_80298A50 -lbl_80298A3C: -/* 80298A3C 0029469C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298A40 002946A0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298A44 002946A4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298A48 002946A8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298A4C 002946AC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298A50: -/* 80298A50 002946B0 B0 1E 00 40 */ sth r0, 0x40(r30) -/* 80298A54 002946B4 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298A58 002946B8 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298A5C 002946BC 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298A60 002946C0 7C 04 02 14 */ add r0, r4, r0 -/* 80298A64 002946C4 7C 63 02 14 */ add r3, r3, r0 -/* 80298A68 002946C8 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298A6C 002946CC 41 81 00 0C */ bgt lbl_80298A78 -/* 80298A70 002946D0 38 00 00 00 */ li r0, 0 -/* 80298A74 002946D4 48 00 00 2C */ b lbl_80298AA0 -lbl_80298A78: -/* 80298A78 002946D8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298A7C 002946DC 41 80 00 10 */ blt lbl_80298A8C -/* 80298A80 002946E0 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298A84 002946E4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298A88 002946E8 48 00 00 18 */ b lbl_80298AA0 -lbl_80298A8C: -/* 80298A8C 002946EC 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298A90 002946F0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298A94 002946F4 54 00 08 3C */ slwi r0, r0, 1 -/* 80298A98 002946F8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298A9C 002946FC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298AA0: -/* 80298AA0 00294700 B0 1E 00 44 */ sth r0, 0x44(r30) -/* 80298AA4 00294704 80 9E 00 30 */ lwz r4, 0x30(r30) -/* 80298AA8 00294708 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298AAC 0029470C 80 7E 00 34 */ lwz r3, 0x34(r30) -/* 80298AB0 00294710 7C 04 02 14 */ add r0, r4, r0 -/* 80298AB4 00294714 7C 63 02 14 */ add r3, r3, r0 -/* 80298AB8 00294718 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298ABC 0029471C 41 81 00 0C */ bgt lbl_80298AC8 -/* 80298AC0 00294720 38 00 00 00 */ li r0, 0 -/* 80298AC4 00294724 48 00 00 2C */ b lbl_80298AF0 -lbl_80298AC8: -/* 80298AC8 00294728 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298ACC 0029472C 41 80 00 10 */ blt lbl_80298ADC -/* 80298AD0 00294730 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298AD4 00294734 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298AD8 00294738 48 00 00 18 */ b lbl_80298AF0 -lbl_80298ADC: -/* 80298ADC 0029473C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298AE0 00294740 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298AE4 00294744 54 00 08 3C */ slwi r0, r0, 1 -/* 80298AE8 00294748 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298AEC 0029474C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298AF0: -/* 80298AF0 00294750 B0 1E 00 48 */ sth r0, 0x48(r30) -/* 80298AF4 00294754 80 9E 00 30 */ lwz r4, 0x30(r30) -/* 80298AF8 00294758 80 1E 00 20 */ lwz r0, 0x20(r30) -/* 80298AFC 0029475C 80 7E 00 38 */ lwz r3, 0x38(r30) -/* 80298B00 00294760 7C 04 02 14 */ add r0, r4, r0 -/* 80298B04 00294764 7C 63 02 14 */ add r3, r3, r0 -/* 80298B08 00294768 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298B0C 0029476C 41 81 00 0C */ bgt lbl_80298B18 -/* 80298B10 00294770 38 00 00 00 */ li r0, 0 -/* 80298B14 00294774 48 00 00 2C */ b lbl_80298B40 -lbl_80298B18: -/* 80298B18 00294778 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298B1C 0029477C 41 80 00 10 */ blt lbl_80298B2C -/* 80298B20 00294780 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298B24 00294784 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298B28 00294788 48 00 00 18 */ b lbl_80298B40 -lbl_80298B2C: -/* 80298B2C 0029478C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298B30 00294790 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298B34 00294794 54 00 08 3C */ slwi r0, r0, 1 -/* 80298B38 00294798 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298B3C 0029479C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298B40: -/* 80298B40 002947A0 B0 1E 00 64 */ sth r0, 0x64(r30) -/* 80298B44 002947A4 80 1E 00 04 */ lwz r0, 4(r30) -/* 80298B48 002947A8 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80298B4C 002947AC 41 82 01 48 */ beq lbl_80298C94 -/* 80298B50 002947B0 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298B54 002947B4 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298B58 002947B8 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298B5C 002947BC 7C 04 02 14 */ add r0, r4, r0 -/* 80298B60 002947C0 7C 63 02 14 */ add r3, r3, r0 -/* 80298B64 002947C4 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298B68 002947C8 41 81 00 0C */ bgt lbl_80298B74 -/* 80298B6C 002947CC 38 00 00 00 */ li r0, 0 -/* 80298B70 002947D0 48 00 00 2C */ b lbl_80298B9C -lbl_80298B74: -/* 80298B74 002947D4 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298B78 002947D8 41 80 00 10 */ blt lbl_80298B88 -/* 80298B7C 002947DC 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298B80 002947E0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298B84 002947E4 48 00 00 18 */ b lbl_80298B9C -lbl_80298B88: -/* 80298B88 002947E8 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298B8C 002947EC 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298B90 002947F0 54 00 08 3C */ slwi r0, r0, 1 -/* 80298B94 002947F4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298B98 002947F8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298B9C: -/* 80298B9C 002947FC B0 1E 00 4C */ sth r0, 0x4c(r30) -/* 80298BA0 00294800 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298BA4 00294804 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298BA8 00294808 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298BAC 0029480C 7C 04 02 14 */ add r0, r4, r0 -/* 80298BB0 00294810 7C 63 02 14 */ add r3, r3, r0 -/* 80298BB4 00294814 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298BB8 00294818 41 81 00 0C */ bgt lbl_80298BC4 -/* 80298BBC 0029481C 38 00 00 00 */ li r0, 0 -/* 80298BC0 00294820 48 00 00 2C */ b lbl_80298BEC -lbl_80298BC4: -/* 80298BC4 00294824 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298BC8 00294828 41 80 00 10 */ blt lbl_80298BD8 -/* 80298BCC 0029482C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298BD0 00294830 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298BD4 00294834 48 00 00 18 */ b lbl_80298BEC -lbl_80298BD8: -/* 80298BD8 00294838 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298BDC 0029483C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298BE0 00294840 54 00 08 3C */ slwi r0, r0, 1 -/* 80298BE4 00294844 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298BE8 00294848 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298BEC: -/* 80298BEC 0029484C B0 1E 00 50 */ sth r0, 0x50(r30) -/* 80298BF0 00294850 80 9E 00 30 */ lwz r4, 0x30(r30) -/* 80298BF4 00294854 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298BF8 00294858 80 7E 00 34 */ lwz r3, 0x34(r30) -/* 80298BFC 0029485C 7C 04 02 14 */ add r0, r4, r0 -/* 80298C00 00294860 7C 63 02 14 */ add r3, r3, r0 -/* 80298C04 00294864 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298C08 00294868 41 81 00 0C */ bgt lbl_80298C14 -/* 80298C0C 0029486C 38 00 00 00 */ li r0, 0 -/* 80298C10 00294870 48 00 00 2C */ b lbl_80298C3C -lbl_80298C14: -/* 80298C14 00294874 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298C18 00294878 41 80 00 10 */ blt lbl_80298C28 -/* 80298C1C 0029487C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298C20 00294880 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298C24 00294884 48 00 00 18 */ b lbl_80298C3C -lbl_80298C28: -/* 80298C28 00294888 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298C2C 0029488C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298C30 00294890 54 00 08 3C */ slwi r0, r0, 1 -/* 80298C34 00294894 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298C38 00294898 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298C3C: -/* 80298C3C 0029489C B0 1E 00 54 */ sth r0, 0x54(r30) -/* 80298C40 002948A0 80 9E 00 30 */ lwz r4, 0x30(r30) -/* 80298C44 002948A4 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298C48 002948A8 80 7E 00 38 */ lwz r3, 0x38(r30) -/* 80298C4C 002948AC 7C 04 02 14 */ add r0, r4, r0 -/* 80298C50 002948B0 7C 63 02 14 */ add r3, r3, r0 -/* 80298C54 002948B4 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298C58 002948B8 41 81 00 0C */ bgt lbl_80298C64 -/* 80298C5C 002948BC 38 00 00 00 */ li r0, 0 -/* 80298C60 002948C0 48 00 00 2C */ b lbl_80298C8C -lbl_80298C64: -/* 80298C64 002948C4 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298C68 002948C8 41 80 00 10 */ blt lbl_80298C78 -/* 80298C6C 002948CC 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298C70 002948D0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298C74 002948D4 48 00 00 18 */ b lbl_80298C8C -lbl_80298C78: -/* 80298C78 002948D8 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298C7C 002948DC 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298C80 002948E0 54 00 08 3C */ slwi r0, r0, 1 -/* 80298C84 002948E4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298C88 002948E8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298C8C: -/* 80298C8C 002948EC B0 1E 00 68 */ sth r0, 0x68(r30) -/* 80298C90 002948F0 48 00 01 64 */ b lbl_80298DF4 -lbl_80298C94: -/* 80298C94 002948F4 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298C98 002948F8 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298C9C 002948FC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298CA0 00294900 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298CA4 00294904 7C 65 1A 14 */ add r3, r5, r3 -/* 80298CA8 00294908 7C 04 02 14 */ add r0, r4, r0 -/* 80298CAC 0029490C 7C 63 02 14 */ add r3, r3, r0 -/* 80298CB0 00294910 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298CB4 00294914 41 81 00 0C */ bgt lbl_80298CC0 -/* 80298CB8 00294918 38 00 00 00 */ li r0, 0 -/* 80298CBC 0029491C 48 00 00 2C */ b lbl_80298CE8 -lbl_80298CC0: -/* 80298CC0 00294920 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298CC4 00294924 41 80 00 10 */ blt lbl_80298CD4 -/* 80298CC8 00294928 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298CCC 0029492C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298CD0 00294930 48 00 00 18 */ b lbl_80298CE8 -lbl_80298CD4: -/* 80298CD4 00294934 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298CD8 00294938 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298CDC 0029493C 54 00 08 3C */ slwi r0, r0, 1 -/* 80298CE0 00294940 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298CE4 00294944 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298CE8: -/* 80298CE8 00294948 B0 1E 00 4C */ sth r0, 0x4c(r30) -/* 80298CEC 0029494C 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298CF0 00294950 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298CF4 00294954 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298CF8 00294958 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298CFC 0029495C 7C 65 1A 14 */ add r3, r5, r3 -/* 80298D00 00294960 7C 04 02 14 */ add r0, r4, r0 -/* 80298D04 00294964 7C 63 02 14 */ add r3, r3, r0 -/* 80298D08 00294968 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298D0C 0029496C 41 81 00 0C */ bgt lbl_80298D18 -/* 80298D10 00294970 38 00 00 00 */ li r0, 0 -/* 80298D14 00294974 48 00 00 2C */ b lbl_80298D40 -lbl_80298D18: -/* 80298D18 00294978 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298D1C 0029497C 41 80 00 10 */ blt lbl_80298D2C -/* 80298D20 00294980 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298D24 00294984 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298D28 00294988 48 00 00 18 */ b lbl_80298D40 -lbl_80298D2C: -/* 80298D2C 0029498C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298D30 00294990 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298D34 00294994 54 00 08 3C */ slwi r0, r0, 1 -/* 80298D38 00294998 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298D3C 0029499C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298D40: -/* 80298D40 002949A0 B0 1E 00 50 */ sth r0, 0x50(r30) -/* 80298D44 002949A4 80 BE 00 30 */ lwz r5, 0x30(r30) -/* 80298D48 002949A8 80 7E 00 34 */ lwz r3, 0x34(r30) -/* 80298D4C 002949AC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298D50 002949B0 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298D54 002949B4 7C 65 1A 14 */ add r3, r5, r3 -/* 80298D58 002949B8 7C 04 02 14 */ add r0, r4, r0 -/* 80298D5C 002949BC 7C 63 02 14 */ add r3, r3, r0 -/* 80298D60 002949C0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298D64 002949C4 41 81 00 0C */ bgt lbl_80298D70 -/* 80298D68 002949C8 38 00 00 00 */ li r0, 0 -/* 80298D6C 002949CC 48 00 00 2C */ b lbl_80298D98 -lbl_80298D70: -/* 80298D70 002949D0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298D74 002949D4 41 80 00 10 */ blt lbl_80298D84 -/* 80298D78 002949D8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298D7C 002949DC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298D80 002949E0 48 00 00 18 */ b lbl_80298D98 -lbl_80298D84: -/* 80298D84 002949E4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298D88 002949E8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298D8C 002949EC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298D90 002949F0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298D94 002949F4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298D98: -/* 80298D98 002949F8 B0 1E 00 54 */ sth r0, 0x54(r30) -/* 80298D9C 002949FC 80 BE 00 30 */ lwz r5, 0x30(r30) -/* 80298DA0 00294A00 80 7E 00 38 */ lwz r3, 0x38(r30) -/* 80298DA4 00294A04 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298DA8 00294A08 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 80298DAC 00294A0C 7C 65 1A 14 */ add r3, r5, r3 -/* 80298DB0 00294A10 7C 04 02 14 */ add r0, r4, r0 -/* 80298DB4 00294A14 7C 63 02 14 */ add r3, r3, r0 -/* 80298DB8 00294A18 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298DBC 00294A1C 41 81 00 0C */ bgt lbl_80298DC8 -/* 80298DC0 00294A20 38 00 00 00 */ li r0, 0 -/* 80298DC4 00294A24 48 00 00 2C */ b lbl_80298DF0 -lbl_80298DC8: -/* 80298DC8 00294A28 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298DCC 00294A2C 41 80 00 10 */ blt lbl_80298DDC -/* 80298DD0 00294A30 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298DD4 00294A34 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298DD8 00294A38 48 00 00 18 */ b lbl_80298DF0 -lbl_80298DDC: -/* 80298DDC 00294A3C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298DE0 00294A40 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298DE4 00294A44 54 00 08 3C */ slwi r0, r0, 1 -/* 80298DE8 00294A48 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298DEC 00294A4C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298DF0: -/* 80298DF0 00294A50 B0 1E 00 68 */ sth r0, 0x68(r30) -lbl_80298DF4: -/* 80298DF4 00294A54 80 1E 00 04 */ lwz r0, 4(r30) -/* 80298DF8 00294A58 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 80298DFC 00294A5C 41 82 01 48 */ beq lbl_80298F44 -/* 80298E00 00294A60 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298E04 00294A64 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298E08 00294A68 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298E0C 00294A6C 7C 04 02 14 */ add r0, r4, r0 -/* 80298E10 00294A70 7C 63 02 14 */ add r3, r3, r0 -/* 80298E14 00294A74 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298E18 00294A78 41 81 00 0C */ bgt lbl_80298E24 -/* 80298E1C 00294A7C 38 00 00 00 */ li r0, 0 -/* 80298E20 00294A80 48 00 00 2C */ b lbl_80298E4C -lbl_80298E24: -/* 80298E24 00294A84 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298E28 00294A88 41 80 00 10 */ blt lbl_80298E38 -/* 80298E2C 00294A8C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298E30 00294A90 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298E34 00294A94 48 00 00 18 */ b lbl_80298E4C -lbl_80298E38: -/* 80298E38 00294A98 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298E3C 00294A9C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298E40 00294AA0 54 00 08 3C */ slwi r0, r0, 1 -/* 80298E44 00294AA4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298E48 00294AA8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298E4C: -/* 80298E4C 00294AAC B0 1E 00 58 */ sth r0, 0x58(r30) -/* 80298E50 00294AB0 80 9E 00 2C */ lwz r4, 0x2c(r30) -/* 80298E54 00294AB4 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298E58 00294AB8 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298E5C 00294ABC 7C 04 02 14 */ add r0, r4, r0 -/* 80298E60 00294AC0 7C 63 02 14 */ add r3, r3, r0 -/* 80298E64 00294AC4 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298E68 00294AC8 41 81 00 0C */ bgt lbl_80298E74 -/* 80298E6C 00294ACC 38 00 00 00 */ li r0, 0 -/* 80298E70 00294AD0 48 00 00 2C */ b lbl_80298E9C -lbl_80298E74: -/* 80298E74 00294AD4 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298E78 00294AD8 41 80 00 10 */ blt lbl_80298E88 -/* 80298E7C 00294ADC 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298E80 00294AE0 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298E84 00294AE4 48 00 00 18 */ b lbl_80298E9C -lbl_80298E88: -/* 80298E88 00294AE8 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298E8C 00294AEC 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298E90 00294AF0 54 00 08 3C */ slwi r0, r0, 1 -/* 80298E94 00294AF4 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298E98 00294AF8 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298E9C: -/* 80298E9C 00294AFC B0 1E 00 5C */ sth r0, 0x5c(r30) -/* 80298EA0 00294B00 80 9E 00 30 */ lwz r4, 0x30(r30) -/* 80298EA4 00294B04 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298EA8 00294B08 80 7E 00 34 */ lwz r3, 0x34(r30) -/* 80298EAC 00294B0C 7C 04 02 14 */ add r0, r4, r0 -/* 80298EB0 00294B10 7C 63 02 14 */ add r3, r3, r0 -/* 80298EB4 00294B14 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298EB8 00294B18 41 81 00 0C */ bgt lbl_80298EC4 -/* 80298EBC 00294B1C 38 00 00 00 */ li r0, 0 -/* 80298EC0 00294B20 48 00 00 2C */ b lbl_80298EEC -lbl_80298EC4: -/* 80298EC4 00294B24 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298EC8 00294B28 41 80 00 10 */ blt lbl_80298ED8 -/* 80298ECC 00294B2C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298ED0 00294B30 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298ED4 00294B34 48 00 00 18 */ b lbl_80298EEC -lbl_80298ED8: -/* 80298ED8 00294B38 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298EDC 00294B3C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298EE0 00294B40 54 00 08 3C */ slwi r0, r0, 1 -/* 80298EE4 00294B44 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298EE8 00294B48 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298EEC: -/* 80298EEC 00294B4C B0 1E 00 60 */ sth r0, 0x60(r30) -/* 80298EF0 00294B50 80 9E 00 30 */ lwz r4, 0x30(r30) -/* 80298EF4 00294B54 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298EF8 00294B58 80 7E 00 38 */ lwz r3, 0x38(r30) -/* 80298EFC 00294B5C 7C 04 02 14 */ add r0, r4, r0 -/* 80298F00 00294B60 7C 63 02 14 */ add r3, r3, r0 -/* 80298F04 00294B64 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298F08 00294B68 41 81 00 0C */ bgt lbl_80298F14 -/* 80298F0C 00294B6C 38 00 00 00 */ li r0, 0 -/* 80298F10 00294B70 48 00 00 2C */ b lbl_80298F3C -lbl_80298F14: -/* 80298F14 00294B74 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298F18 00294B78 41 80 00 10 */ blt lbl_80298F28 -/* 80298F1C 00294B7C 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298F20 00294B80 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298F24 00294B84 48 00 00 18 */ b lbl_80298F3C -lbl_80298F28: -/* 80298F28 00294B88 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298F2C 00294B8C 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298F30 00294B90 54 00 08 3C */ slwi r0, r0, 1 -/* 80298F34 00294B94 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298F38 00294B98 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298F3C: -/* 80298F3C 00294B9C B0 1E 00 6C */ sth r0, 0x6c(r30) -/* 80298F40 00294BA0 48 00 01 64 */ b lbl_802990A4 -lbl_80298F44: -/* 80298F44 00294BA4 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298F48 00294BA8 80 7E 00 24 */ lwz r3, 0x24(r30) -/* 80298F4C 00294BAC 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298F50 00294BB0 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298F54 00294BB4 7C 65 1A 14 */ add r3, r5, r3 -/* 80298F58 00294BB8 7C 04 02 14 */ add r0, r4, r0 -/* 80298F5C 00294BBC 7C 63 02 14 */ add r3, r3, r0 -/* 80298F60 00294BC0 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298F64 00294BC4 41 81 00 0C */ bgt lbl_80298F70 -/* 80298F68 00294BC8 38 00 00 00 */ li r0, 0 -/* 80298F6C 00294BCC 48 00 00 2C */ b lbl_80298F98 -lbl_80298F70: -/* 80298F70 00294BD0 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298F74 00294BD4 41 80 00 10 */ blt lbl_80298F84 -/* 80298F78 00294BD8 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298F7C 00294BDC 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298F80 00294BE0 48 00 00 18 */ b lbl_80298F98 -lbl_80298F84: -/* 80298F84 00294BE4 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298F88 00294BE8 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298F8C 00294BEC 54 00 08 3C */ slwi r0, r0, 1 -/* 80298F90 00294BF0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298F94 00294BF4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298F98: -/* 80298F98 00294BF8 B0 1E 00 58 */ sth r0, 0x58(r30) -/* 80298F9C 00294BFC 80 BE 00 2C */ lwz r5, 0x2c(r30) -/* 80298FA0 00294C00 80 7E 00 28 */ lwz r3, 0x28(r30) -/* 80298FA4 00294C04 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80298FA8 00294C08 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80298FAC 00294C0C 7C 65 1A 14 */ add r3, r5, r3 -/* 80298FB0 00294C10 7C 04 02 14 */ add r0, r4, r0 -/* 80298FB4 00294C14 7C 63 02 14 */ add r3, r3, r0 -/* 80298FB8 00294C18 2C 03 FC 78 */ cmpwi r3, -904 -/* 80298FBC 00294C1C 41 81 00 0C */ bgt lbl_80298FC8 -/* 80298FC0 00294C20 38 00 00 00 */ li r0, 0 -/* 80298FC4 00294C24 48 00 00 2C */ b lbl_80298FF0 -lbl_80298FC8: -/* 80298FC8 00294C28 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80298FCC 00294C2C 41 80 00 10 */ blt lbl_80298FDC -/* 80298FD0 00294C30 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80298FD4 00294C34 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80298FD8 00294C38 48 00 00 18 */ b lbl_80298FF0 -lbl_80298FDC: -/* 80298FDC 00294C3C 38 03 03 88 */ addi r0, r3, 0x388 -/* 80298FE0 00294C40 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80298FE4 00294C44 54 00 08 3C */ slwi r0, r0, 1 -/* 80298FE8 00294C48 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80298FEC 00294C4C 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80298FF0: -/* 80298FF0 00294C50 B0 1E 00 5C */ sth r0, 0x5c(r30) -/* 80298FF4 00294C54 80 BE 00 30 */ lwz r5, 0x30(r30) -/* 80298FF8 00294C58 80 7E 00 34 */ lwz r3, 0x34(r30) -/* 80298FFC 00294C5C 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80299000 00294C60 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 80299004 00294C64 7C 65 1A 14 */ add r3, r5, r3 -/* 80299008 00294C68 7C 04 02 14 */ add r0, r4, r0 -/* 8029900C 00294C6C 7C 63 02 14 */ add r3, r3, r0 -/* 80299010 00294C70 2C 03 FC 78 */ cmpwi r3, -904 -/* 80299014 00294C74 41 81 00 0C */ bgt lbl_80299020 -/* 80299018 00294C78 38 00 00 00 */ li r0, 0 -/* 8029901C 00294C7C 48 00 00 2C */ b lbl_80299048 -lbl_80299020: -/* 80299020 00294C80 2C 03 00 3C */ cmpwi r3, 0x3c -/* 80299024 00294C84 41 80 00 10 */ blt lbl_80299034 -/* 80299028 00294C88 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 8029902C 00294C8C 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80299030 00294C90 48 00 00 18 */ b lbl_80299048 -lbl_80299034: -/* 80299034 00294C94 38 03 03 88 */ addi r0, r3, 0x388 -/* 80299038 00294C98 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 8029903C 00294C9C 54 00 08 3C */ slwi r0, r0, 1 -/* 80299040 00294CA0 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 80299044 00294CA4 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_80299048: -/* 80299048 00294CA8 B0 1E 00 60 */ sth r0, 0x60(r30) -/* 8029904C 00294CAC 80 BE 00 30 */ lwz r5, 0x30(r30) -/* 80299050 00294CB0 80 7E 00 38 */ lwz r3, 0x38(r30) -/* 80299054 00294CB4 80 9E 00 20 */ lwz r4, 0x20(r30) -/* 80299058 00294CB8 80 1E 00 10 */ lwz r0, 0x10(r30) -/* 8029905C 00294CBC 7C 65 1A 14 */ add r3, r5, r3 -/* 80299060 00294CC0 7C 04 02 14 */ add r0, r4, r0 -/* 80299064 00294CC4 7C 63 02 14 */ add r3, r3, r0 -/* 80299068 00294CC8 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029906C 00294CCC 41 81 00 0C */ bgt lbl_80299078 -/* 80299070 00294CD0 38 00 00 00 */ li r0, 0 -/* 80299074 00294CD4 48 00 00 2C */ b lbl_802990A0 -lbl_80299078: -/* 80299078 00294CD8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029907C 00294CDC 41 80 00 10 */ blt lbl_8029908C -/* 80299080 00294CE0 3C 60 00 01 */ lis r3, 0x0000FF64@ha -/* 80299084 00294CE4 38 03 FF 64 */ addi r0, r3, 0x0000FF64@l -/* 80299088 00294CE8 48 00 00 18 */ b lbl_802990A0 -lbl_8029908C: -/* 8029908C 00294CEC 38 03 03 88 */ addi r0, r3, 0x388 -/* 80299090 00294CF0 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 80299094 00294CF4 54 00 08 3C */ slwi r0, r0, 1 -/* 80299098 00294CF8 38 63 B1 70 */ addi r3, r3, lbl_8043B170@l -/* 8029909C 00294CFC 7C 03 02 2E */ lhzx r0, r3, r0 -lbl_802990A0: -/* 802990A0 00294D00 B0 1E 00 6C */ sth r0, 0x6c(r30) -lbl_802990A4: -/* 802990A4 00294D04 67 BD 80 00 */ oris r29, r29, 0x8000 -lbl_802990A8: -/* 802990A8 00294D08 80 7C 00 18 */ lwz r3, 0x18(r28) -/* 802990AC 00294D0C 48 00 1C F5 */ bl func_8029ADA0 -/* 802990B0 00294D10 4B FD 56 AD */ bl OSDisableInterrupts -/* 802990B4 00294D14 A0 9E 00 3C */ lhz r4, 0x3c(r30) -/* 802990B8 00294D18 38 00 00 00 */ li r0, 0 -/* 802990BC 00294D1C 7C 7F 1B 78 */ mr r31, r3 -/* 802990C0 00294D20 38 7C 00 3E */ addi r3, r28, 0x3e -/* 802990C4 00294D24 B0 9C 00 92 */ sth r4, 0x92(r28) -/* 802990C8 00294D28 B0 1C 00 94 */ sth r0, 0x94(r28) -/* 802990CC 00294D2C A0 1E 00 40 */ lhz r0, 0x40(r30) -/* 802990D0 00294D30 2C 00 00 00 */ cmpwi r0, 0 -/* 802990D4 00294D34 B0 1C 00 3C */ sth r0, 0x3c(r28) -/* 802990D8 00294D38 41 82 00 08 */ beq lbl_802990E0 -/* 802990DC 00294D3C 63 BD 00 01 */ ori r29, r29, 1 -lbl_802990E0: -/* 802990E0 00294D40 38 00 00 00 */ li r0, 0 -/* 802990E4 00294D44 B0 03 00 00 */ sth r0, 0(r3) -/* 802990E8 00294D48 A0 1E 00 44 */ lhz r0, 0x44(r30) -/* 802990EC 00294D4C 2C 00 00 00 */ cmpwi r0, 0 -/* 802990F0 00294D50 B0 03 00 02 */ sth r0, 2(r3) -/* 802990F4 00294D54 41 82 00 08 */ beq lbl_802990FC -/* 802990F8 00294D58 63 BD 00 02 */ ori r29, r29, 2 -lbl_802990FC: -/* 802990FC 00294D5C 38 00 00 00 */ li r0, 0 -/* 80299100 00294D60 B0 03 00 04 */ sth r0, 4(r3) -/* 80299104 00294D64 A0 1E 00 4C */ lhz r0, 0x4c(r30) -/* 80299108 00294D68 2C 00 00 00 */ cmpwi r0, 0 -/* 8029910C 00294D6C B0 03 00 06 */ sth r0, 6(r3) -/* 80299110 00294D70 41 82 00 08 */ beq lbl_80299118 -/* 80299114 00294D74 67 BD 00 01 */ oris r29, r29, 1 -lbl_80299118: -/* 80299118 00294D78 38 00 00 00 */ li r0, 0 -/* 8029911C 00294D7C B0 03 00 08 */ sth r0, 8(r3) -/* 80299120 00294D80 A0 1E 00 50 */ lhz r0, 0x50(r30) -/* 80299124 00294D84 2C 00 00 00 */ cmpwi r0, 0 -/* 80299128 00294D88 B0 03 00 0A */ sth r0, 0xa(r3) -/* 8029912C 00294D8C 41 82 00 08 */ beq lbl_80299134 -/* 80299130 00294D90 67 BD 00 02 */ oris r29, r29, 2 -lbl_80299134: -/* 80299134 00294D94 38 00 00 00 */ li r0, 0 -/* 80299138 00294D98 B0 03 00 0C */ sth r0, 0xc(r3) -/* 8029913C 00294D9C A0 1E 00 58 */ lhz r0, 0x58(r30) -/* 80299140 00294DA0 2C 00 00 00 */ cmpwi r0, 0 -/* 80299144 00294DA4 B0 03 00 0E */ sth r0, 0xe(r3) -/* 80299148 00294DA8 41 82 00 08 */ beq lbl_80299150 -/* 8029914C 00294DAC 67 BD 00 20 */ oris r29, r29, 0x20 -lbl_80299150: -/* 80299150 00294DB0 38 00 00 00 */ li r0, 0 -/* 80299154 00294DB4 B0 03 00 10 */ sth r0, 0x10(r3) -/* 80299158 00294DB8 A0 1E 00 5C */ lhz r0, 0x5c(r30) -/* 8029915C 00294DBC 2C 00 00 00 */ cmpwi r0, 0 -/* 80299160 00294DC0 B0 03 00 12 */ sth r0, 0x12(r3) -/* 80299164 00294DC4 41 82 00 08 */ beq lbl_8029916C -/* 80299168 00294DC8 67 BD 00 40 */ oris r29, r29, 0x40 -lbl_8029916C: -/* 8029916C 00294DCC 38 00 00 00 */ li r0, 0 -/* 80299170 00294DD0 B0 03 00 14 */ sth r0, 0x14(r3) -/* 80299174 00294DD4 A0 1E 00 64 */ lhz r0, 0x64(r30) -/* 80299178 00294DD8 2C 00 00 00 */ cmpwi r0, 0 -/* 8029917C 00294DDC B0 03 00 16 */ sth r0, 0x16(r3) -/* 80299180 00294DE0 41 82 00 08 */ beq lbl_80299188 -/* 80299184 00294DE4 67 BD 04 00 */ oris r29, r29, 0x400 -lbl_80299188: -/* 80299188 00294DE8 38 00 00 00 */ li r0, 0 -/* 8029918C 00294DEC B0 03 00 18 */ sth r0, 0x18(r3) -/* 80299190 00294DF0 A0 1E 00 68 */ lhz r0, 0x68(r30) -/* 80299194 00294DF4 2C 00 00 00 */ cmpwi r0, 0 -/* 80299198 00294DF8 B0 03 00 1A */ sth r0, 0x1a(r3) -/* 8029919C 00294DFC 41 82 00 08 */ beq lbl_802991A4 -/* 802991A0 00294E00 67 BD 08 00 */ oris r29, r29, 0x800 -lbl_802991A4: -/* 802991A4 00294E04 38 00 00 00 */ li r0, 0 -/* 802991A8 00294E08 B0 03 00 1C */ sth r0, 0x1c(r3) -/* 802991AC 00294E0C A0 1E 00 48 */ lhz r0, 0x48(r30) -/* 802991B0 00294E10 2C 00 00 00 */ cmpwi r0, 0 -/* 802991B4 00294E14 B0 03 00 1E */ sth r0, 0x1e(r3) -/* 802991B8 00294E18 41 82 00 08 */ beq lbl_802991C0 -/* 802991BC 00294E1C 63 BD 00 08 */ ori r29, r29, 8 -lbl_802991C0: -/* 802991C0 00294E20 38 00 00 00 */ li r0, 0 -/* 802991C4 00294E24 B0 03 00 20 */ sth r0, 0x20(r3) -/* 802991C8 00294E28 A0 1E 00 54 */ lhz r0, 0x54(r30) -/* 802991CC 00294E2C 2C 00 00 00 */ cmpwi r0, 0 -/* 802991D0 00294E30 B0 03 00 22 */ sth r0, 0x22(r3) -/* 802991D4 00294E34 41 82 00 08 */ beq lbl_802991DC -/* 802991D8 00294E38 67 BD 00 08 */ oris r29, r29, 8 -lbl_802991DC: -/* 802991DC 00294E3C 38 00 00 00 */ li r0, 0 -/* 802991E0 00294E40 B0 03 00 24 */ sth r0, 0x24(r3) -/* 802991E4 00294E44 A0 1E 00 60 */ lhz r0, 0x60(r30) -/* 802991E8 00294E48 2C 00 00 00 */ cmpwi r0, 0 -/* 802991EC 00294E4C B0 03 00 26 */ sth r0, 0x26(r3) -/* 802991F0 00294E50 41 82 00 08 */ beq lbl_802991F8 -/* 802991F4 00294E54 67 BD 01 00 */ oris r29, r29, 0x100 -lbl_802991F8: -/* 802991F8 00294E58 38 00 00 00 */ li r0, 0 -/* 802991FC 00294E5C B0 03 00 28 */ sth r0, 0x28(r3) -/* 80299200 00294E60 A0 1E 00 6C */ lhz r0, 0x6c(r30) -/* 80299204 00294E64 2C 00 00 00 */ cmpwi r0, 0 -/* 80299208 00294E68 B0 03 00 2A */ sth r0, 0x2a(r3) -/* 8029920C 00294E6C 41 82 00 08 */ beq lbl_80299214 -/* 80299210 00294E70 67 BD 20 00 */ oris r29, r29, 0x2000 -lbl_80299214: -/* 80299214 00294E74 80 1C 00 1C */ lwz r0, 0x1c(r28) -/* 80299218 00294E78 3B C0 00 00 */ li r30, 0 -/* 8029921C 00294E7C B3 C3 00 2C */ sth r30, 0x2c(r3) -/* 80299220 00294E80 38 7C 01 02 */ addi r3, r28, 0x102 -/* 80299224 00294E84 60 00 01 12 */ ori r0, r0, 0x112 -/* 80299228 00294E88 38 80 00 00 */ li r4, 0 -/* 8029922C 00294E8C 93 BC 00 34 */ stw r29, 0x34(r28) -/* 80299230 00294E90 38 A0 00 20 */ li r5, 0x20 -/* 80299234 00294E94 90 1C 00 1C */ stw r0, 0x1c(r28) -/* 80299238 00294E98 4B D6 AE CD */ bl memset -/* 8029923C 00294E9C 80 1C 00 1C */ lwz r0, 0x1c(r28) -/* 80299240 00294EA0 7F E3 FB 78 */ mr r3, r31 -/* 80299244 00294EA4 B3 DC 01 00 */ sth r30, 0x100(r28) -/* 80299248 00294EA8 64 00 03 00 */ oris r0, r0, 0x300 -/* 8029924C 00294EAC 90 1C 00 1C */ stw r0, 0x1c(r28) -/* 80299250 00294EB0 4B FD 55 35 */ bl OSRestoreInterrupts -/* 80299254 00294EB4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80299258 00294EB8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8029925C 00294EBC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80299260 00294EC0 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 80299264 00294EC4 83 81 00 10 */ lwz r28, 0x10(r1) -/* 80299268 00294EC8 7C 08 03 A6 */ mtlr r0 -/* 8029926C 00294ECC 38 21 00 20 */ addi r1, r1, 0x20 -/* 80299270 00294ED0 4E 80 00 20 */ blr - -.global func_80299274 -func_80299274: -/* 80299274 00294ED4 80 03 00 18 */ lwz r0, 0x18(r3) -/* 80299278 00294ED8 38 80 00 00 */ li r4, 0 -/* 8029927C 00294EDC 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13) -/* 80299280 00294EE0 1C 00 00 70 */ mulli r0, r0, 0x70 -/* 80299284 00294EE4 7C 83 01 2E */ stwx r4, r3, r0 -/* 80299288 00294EE8 4E 80 00 20 */ blr - -.global func_8029928C -func_8029928C: -/* 8029928C 00294EEC 80 03 00 18 */ lwz r0, 0x18(r3) -/* 80299290 00294EF0 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13) -/* 80299294 00294EF4 1C 00 00 70 */ mulli r0, r0, 0x70 -/* 80299298 00294EF8 7C 63 02 14 */ add r3, r3, r0 -/* 8029929C 00294EFC 90 83 00 08 */ stw r4, 8(r3) -/* 802992A0 00294F00 80 03 00 04 */ lwz r0, 4(r3) -/* 802992A4 00294F04 64 00 10 00 */ oris r0, r0, 0x1000 -/* 802992A8 00294F08 90 03 00 04 */ stw r0, 4(r3) -/* 802992AC 00294F0C 4E 80 00 20 */ blr - -.global func_802992B0 -func_802992B0: -/* 802992B0 00294F10 80 03 00 18 */ lwz r0, 0x18(r3) -/* 802992B4 00294F14 80 6D AC 50 */ lwz r3, lbl_8063FF10-_SDA_BASE_(r13) -/* 802992B8 00294F18 1C 00 00 70 */ mulli r0, r0, 0x70 -/* 802992BC 00294F1C 7C 63 02 14 */ add r3, r3, r0 -/* 802992C0 00294F20 90 83 00 20 */ stw r4, 0x20(r3) -/* 802992C4 00294F24 80 03 00 04 */ lwz r0, 4(r3) -/* 802992C8 00294F28 64 00 40 00 */ oris r0, r0, 0x4000 -/* 802992CC 00294F2C 90 03 00 04 */ stw r0, 4(r3) -/* 802992D0 00294F30 4E 80 00 20 */ blr - -.global func_802992D4 -func_802992D4: -/* 802992D4 00294F34 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802992D8 00294F38 7C 08 02 A6 */ mflr r0 -/* 802992DC 00294F3C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802992E0 00294F40 39 61 00 20 */ addi r11, r1, 0x20 -/* 802992E4 00294F44 4B F2 DE 41 */ bl _savegpr_26 -/* 802992E8 00294F48 80 0D AC 54 */ lwz r0, lbl_8063FF14-_SDA_BASE_(r13) -/* 802992EC 00294F4C 2C 00 00 00 */ cmpwi r0, 0 -/* 802992F0 00294F50 41 82 16 5C */ beq lbl_8029A94C -/* 802992F4 00294F54 3C 60 80 44 */ lis r3, lbl_8043B170@ha -/* 802992F8 00294F58 3B 40 00 00 */ li r26, 0 -/* 802992FC 00294F5C 3B 60 00 00 */ li r27, 0 -/* 80299300 00294F60 3F A0 00 01 */ lis r29, 1 -/* 80299304 00294F64 3B C3 B1 70 */ addi r30, r3, lbl_8043B170@l -/* 80299308 00294F68 3B 80 00 00 */ li r28, 0 -/* 8029930C 00294F6C 3F E0 2A AB */ lis r31, 0x2aab -/* 80299310 00294F70 48 00 16 30 */ b lbl_8029A940 -lbl_80299314: -/* 80299314 00294F74 80 8D AC 50 */ lwz r4, lbl_8063FF10-_SDA_BASE_(r13) -/* 80299318 00294F78 38 60 00 00 */ li r3, 0 -/* 8029931C 00294F7C 38 00 00 00 */ li r0, 0 -/* 80299320 00294F80 7C A4 DA 14 */ add r5, r4, r27 -/* 80299324 00294F84 7C 84 D8 2E */ lwzx r4, r4, r27 -/* 80299328 00294F88 2C 04 00 00 */ cmpwi r4, 0 -/* 8029932C 00294F8C 41 82 16 0C */ beq lbl_8029A938 -/* 80299330 00294F90 80 E5 00 04 */ lwz r7, 4(r5) -/* 80299334 00294F94 38 C0 00 00 */ li r6, 0 -/* 80299338 00294F98 54 E7 00 85 */ rlwinm. r7, r7, 0, 2, 2 -/* 8029933C 00294F9C 41 82 00 1C */ beq lbl_80299358 -/* 80299340 00294FA0 A0 E5 00 3E */ lhz r7, 0x3e(r5) -/* 80299344 00294FA4 38 60 00 01 */ li r3, 1 -/* 80299348 00294FA8 B0 E5 00 3C */ sth r7, 0x3c(r5) -/* 8029934C 00294FAC 80 E5 00 04 */ lwz r7, 4(r5) -/* 80299350 00294FB0 54 E7 00 C2 */ rlwinm r7, r7, 0, 3, 1 -/* 80299354 00294FB4 90 E5 00 04 */ stw r7, 4(r5) -lbl_80299358: -/* 80299358 00294FB8 81 05 00 04 */ lwz r8, 4(r5) -/* 8029935C 00294FBC 55 07 00 C7 */ rlwinm. r7, r8, 0, 3, 3 -/* 80299360 00294FC0 41 82 00 5C */ beq lbl_802993BC -/* 80299364 00294FC4 55 03 07 39 */ rlwinm. r3, r8, 0, 0x1c, 0x1c -/* 80299368 00294FC8 41 82 00 0C */ beq lbl_80299374 -/* 8029936C 00294FCC B3 85 00 3E */ sth r28, 0x3e(r5) -/* 80299370 00294FD0 48 00 00 38 */ b lbl_802993A8 -lbl_80299374: -/* 80299374 00294FD4 80 65 00 08 */ lwz r3, 8(r5) -/* 80299378 00294FD8 2C 03 FC 78 */ cmpwi r3, -904 -/* 8029937C 00294FDC 41 81 00 0C */ bgt lbl_80299388 -/* 80299380 00294FE0 38 60 00 00 */ li r3, 0 -/* 80299384 00294FE4 48 00 00 20 */ b lbl_802993A4 -lbl_80299388: -/* 80299388 00294FE8 2C 03 00 3C */ cmpwi r3, 0x3c -/* 8029938C 00294FEC 41 80 00 0C */ blt lbl_80299398 -/* 80299390 00294FF0 38 7D FF 64 */ addi r3, r29, -156 -/* 80299394 00294FF4 48 00 00 10 */ b lbl_802993A4 -lbl_80299398: -/* 80299398 00294FF8 54 63 08 3C */ slwi r3, r3, 1 -/* 8029939C 00294FFC 7C 7E 1A 14 */ add r3, r30, r3 -/* 802993A0 00295000 A0 63 07 10 */ lhz r3, 0x710(r3) -lbl_802993A4: -/* 802993A4 00295004 B0 65 00 3E */ sth r3, 0x3e(r5) -lbl_802993A8: -/* 802993A8 00295008 80 E5 00 04 */ lwz r7, 4(r5) -/* 802993AC 0029500C 38 60 00 01 */ li r3, 1 -/* 802993B0 00295010 54 E7 01 04 */ rlwinm r7, r7, 0, 4, 2 -/* 802993B4 00295014 64 E7 20 00 */ oris r7, r7, 0x2000 -/* 802993B8 00295018 90 E5 00 04 */ stw r7, 4(r5) -lbl_802993BC: -/* 802993BC 0029501C 80 E5 00 04 */ lwz r7, 4(r5) -/* 802993C0 00295020 54 E7 00 01 */ rlwinm. r7, r7, 0, 0, 0 -/* 802993C4 00295024 41 82 00 74 */ beq lbl_80299438 -/* 802993C8 00295028 A0 E5 00 42 */ lhz r7, 0x42(r5) -/* 802993CC 0029502C 38 00 00 01 */ li r0, 1 -/* 802993D0 00295030 B0 E5 00 40 */ sth r7, 0x40(r5) -/* 802993D4 00295034 A0 E5 00 46 */ lhz r7, 0x46(r5) -/* 802993D8 00295038 B0 E5 00 44 */ sth r7, 0x44(r5) -/* 802993DC 0029503C A0 E5 00 4A */ lhz r7, 0x4a(r5) -/* 802993E0 00295040 B0 E5 00 48 */ sth r7, 0x48(r5) -/* 802993E4 00295044 A0 E5 00 4E */ lhz r7, 0x4e(r5) -/* 802993E8 00295048 B0 E5 00 4C */ sth r7, 0x4c(r5) -/* 802993EC 0029504C A0 E5 00 52 */ lhz r7, 0x52(r5) -/* 802993F0 00295050 B0 E5 00 50 */ sth r7, 0x50(r5) -/* 802993F4 00295054 A0 E5 00 56 */ lhz r7, 0x56(r5) -/* 802993F8 00295058 B0 E5 00 54 */ sth r7, 0x54(r5) -/* 802993FC 0029505C A0 E5 00 5A */ lhz r7, 0x5a(r5) -/* 80299400 00295060 B0 E5 00 58 */ sth r7, 0x58(r5) -/* 80299404 00295064 A0 E5 00 5E */ lhz r7, 0x5e(r5) -/* 80299408 00295068 B0 E5 00 5C */ sth r7, 0x5c(r5) -/* 8029940C 0029506C A0 E5 00 62 */ lhz r7, 0x62(r5) -/* 80299410 00295070 B0 E5 00 60 */ sth r7, 0x60(r5) -/* 80299414 00295074 A0 E5 00 66 */ lhz r7, 0x66(r5) -/* 80299418 00295078 B0 E5 00 64 */ sth r7, 0x64(r5) -/* 8029941C 0029507C A0 E5 00 6A */ lhz r7, 0x6a(r5) -/* 80299420 00295080 B0 E5 00 68 */ sth r7, 0x68(r5) -/* 80299424 00295084 A0 E5 00 6E */ lhz r7, 0x6e(r5) -/* 80299428 00295088 B0 E5 00 6C */ sth r7, 0x6c(r5) -/* 8029942C 0029508C 80 E5 00 04 */ lwz r7, 4(r5) -/* 80299430 00295090 54 E7 00 7E */ clrlwi r7, r7, 1 -/* 80299434 00295094 90 E5 00 04 */ stw r7, 4(r5) -lbl_80299438: -/* 80299438 00295098 80 E5 00 04 */ lwz r7, 4(r5) -/* 8029943C 0029509C 54 E7 00 43 */ rlwinm. r7, r7, 0, 1, 1 -/* 80299440 002950A0 41 82 11 64 */ beq lbl_8029A5A4 -/* 80299444 002950A4 80 0D AC 5C */ lwz r0, lbl_8063FF1C-_SDA_BASE_(r13) -/* 80299448 002950A8 2C 00 00 03 */ cmpwi r0, 3 -/* 8029944C 002950AC 41 82 0B 90 */ beq lbl_80299FDC -/* 80299450 002950B0 40 80 11 40 */ bge lbl_8029A590 -/* 80299454 002950B4 2C 00 00 00 */ cmpwi r0, 0 -/* 80299458 002950B8 41 82 00 0C */ beq lbl_80299464 -/* 8029945C 002950BC 40 80 05 8C */ bge lbl_802999E8 -/* 80299460 002950C0 48 00 11 30 */ b lbl_8029A590 -lbl_80299464: -/* 80299464 002950C4 80 E5 00 20 */ lwz r7, 0x20(r5) -/* 80299468 002950C8 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 8029946C 002950CC 7C 07 02 14 */ add r0, r7, r0 -/* 80299470 002950D0 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299474 002950D4 41 81 00 0C */ bgt lbl_80299480 -/* 80299478 002950D8 38 00 00 00 */ li r0, 0 -/* 8029947C 002950DC 48 00 00 20 */ b lbl_8029949C -lbl_80299480: -/* 80299480 002950E0 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299484 002950E4 41 80 00 0C */ blt lbl_80299490 -/* 80299488 002950E8 38 1D FF 64 */ addi r0, r29, -156 -/* 8029948C 002950EC 48 00 00 10 */ b lbl_8029949C -lbl_80299490: -/* 80299490 002950F0 54 00 08 3C */ slwi r0, r0, 1 -/* 80299494 002950F4 7C FE 02 14 */ add r7, r30, r0 -/* 80299498 002950F8 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029949C: -/* 8029949C 002950FC B0 05 00 42 */ sth r0, 0x42(r5) -/* 802994A0 00295100 80 E5 00 20 */ lwz r7, 0x20(r5) -/* 802994A4 00295104 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 802994A8 00295108 7C 07 02 14 */ add r0, r7, r0 -/* 802994AC 0029510C 2C 00 FC 78 */ cmpwi r0, -904 -/* 802994B0 00295110 41 81 00 0C */ bgt lbl_802994BC -/* 802994B4 00295114 38 00 00 00 */ li r0, 0 -/* 802994B8 00295118 48 00 00 20 */ b lbl_802994D8 -lbl_802994BC: -/* 802994BC 0029511C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 802994C0 00295120 41 80 00 0C */ blt lbl_802994CC -/* 802994C4 00295124 38 1D FF 64 */ addi r0, r29, -156 -/* 802994C8 00295128 48 00 00 10 */ b lbl_802994D8 -lbl_802994CC: -/* 802994CC 0029512C 54 00 08 3C */ slwi r0, r0, 1 -/* 802994D0 00295130 7C FE 02 14 */ add r7, r30, r0 -/* 802994D4 00295134 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802994D8: -/* 802994D8 00295138 B0 05 00 46 */ sth r0, 0x46(r5) -/* 802994DC 0029513C 80 E5 00 20 */ lwz r7, 0x20(r5) -/* 802994E0 00295140 80 05 00 30 */ lwz r0, 0x30(r5) -/* 802994E4 00295144 7C E7 02 14 */ add r7, r7, r0 -/* 802994E8 00295148 38 E7 FF E2 */ addi r7, r7, -30 -/* 802994EC 0029514C 2C 07 FC 78 */ cmpwi r7, -904 -/* 802994F0 00295150 41 81 00 0C */ bgt lbl_802994FC -/* 802994F4 00295154 38 00 00 00 */ li r0, 0 -/* 802994F8 00295158 48 00 00 20 */ b lbl_80299518 -lbl_802994FC: -/* 802994FC 0029515C 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299500 00295160 41 80 00 0C */ blt lbl_8029950C -/* 80299504 00295164 38 1D FF 64 */ addi r0, r29, -156 -/* 80299508 00295168 48 00 00 10 */ b lbl_80299518 -lbl_8029950C: -/* 8029950C 0029516C 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299510 00295170 7C FE 02 14 */ add r7, r30, r0 -/* 80299514 00295174 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299518: -/* 80299518 00295178 B0 05 00 4A */ sth r0, 0x4a(r5) -/* 8029951C 0029517C 80 05 00 04 */ lwz r0, 4(r5) -/* 80299520 00295180 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80299524 00295184 41 82 00 C0 */ beq lbl_802995E4 -/* 80299528 00295188 80 E5 00 0C */ lwz r7, 0xc(r5) -/* 8029952C 0029518C 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 80299530 00295190 7C 07 02 14 */ add r0, r7, r0 -/* 80299534 00295194 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299538 00295198 41 81 00 0C */ bgt lbl_80299544 -/* 8029953C 0029519C 38 00 00 00 */ li r0, 0 -/* 80299540 002951A0 48 00 00 20 */ b lbl_80299560 -lbl_80299544: -/* 80299544 002951A4 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299548 002951A8 41 80 00 0C */ blt lbl_80299554 -/* 8029954C 002951AC 38 1D FF 64 */ addi r0, r29, -156 -/* 80299550 002951B0 48 00 00 10 */ b lbl_80299560 -lbl_80299554: -/* 80299554 002951B4 54 00 08 3C */ slwi r0, r0, 1 -/* 80299558 002951B8 7C FE 02 14 */ add r7, r30, r0 -/* 8029955C 002951BC A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299560: -/* 80299560 002951C0 B0 05 00 4E */ sth r0, 0x4e(r5) -/* 80299564 002951C4 80 E5 00 0C */ lwz r7, 0xc(r5) -/* 80299568 002951C8 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 8029956C 002951CC 7C 07 02 14 */ add r0, r7, r0 -/* 80299570 002951D0 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299574 002951D4 41 81 00 0C */ bgt lbl_80299580 -/* 80299578 002951D8 38 00 00 00 */ li r0, 0 -/* 8029957C 002951DC 48 00 00 20 */ b lbl_8029959C -lbl_80299580: -/* 80299580 002951E0 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299584 002951E4 41 80 00 0C */ blt lbl_80299590 -/* 80299588 002951E8 38 1D FF 64 */ addi r0, r29, -156 -/* 8029958C 002951EC 48 00 00 10 */ b lbl_8029959C -lbl_80299590: -/* 80299590 002951F0 54 00 08 3C */ slwi r0, r0, 1 -/* 80299594 002951F4 7C FE 02 14 */ add r7, r30, r0 -/* 80299598 002951F8 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029959C: -/* 8029959C 002951FC B0 05 00 52 */ sth r0, 0x52(r5) -/* 802995A0 00295200 80 E5 00 0C */ lwz r7, 0xc(r5) -/* 802995A4 00295204 80 05 00 30 */ lwz r0, 0x30(r5) -/* 802995A8 00295208 7C E7 02 14 */ add r7, r7, r0 -/* 802995AC 0029520C 38 E7 FF E2 */ addi r7, r7, -30 -/* 802995B0 00295210 2C 07 FC 78 */ cmpwi r7, -904 -/* 802995B4 00295214 41 81 00 0C */ bgt lbl_802995C0 -/* 802995B8 00295218 38 00 00 00 */ li r0, 0 -/* 802995BC 0029521C 48 00 00 20 */ b lbl_802995DC -lbl_802995C0: -/* 802995C0 00295220 2C 07 00 3C */ cmpwi r7, 0x3c -/* 802995C4 00295224 41 80 00 0C */ blt lbl_802995D0 -/* 802995C8 00295228 38 1D FF 64 */ addi r0, r29, -156 -/* 802995CC 0029522C 48 00 00 10 */ b lbl_802995DC -lbl_802995D0: -/* 802995D0 00295230 54 E0 08 3C */ slwi r0, r7, 1 -/* 802995D4 00295234 7C FE 02 14 */ add r7, r30, r0 -/* 802995D8 00295238 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802995DC: -/* 802995DC 0029523C B0 05 00 56 */ sth r0, 0x56(r5) -/* 802995E0 00295240 48 00 00 D4 */ b lbl_802996B4 -lbl_802995E4: -/* 802995E4 00295244 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 802995E8 00295248 80 05 00 20 */ lwz r0, 0x20(r5) -/* 802995EC 0029524C 80 E5 00 0C */ lwz r7, 0xc(r5) -/* 802995F0 00295250 7C 08 02 14 */ add r0, r8, r0 -/* 802995F4 00295254 7C 07 02 14 */ add r0, r7, r0 -/* 802995F8 00295258 2C 00 FC 78 */ cmpwi r0, -904 -/* 802995FC 0029525C 41 81 00 0C */ bgt lbl_80299608 -/* 80299600 00295260 38 00 00 00 */ li r0, 0 -/* 80299604 00295264 48 00 00 20 */ b lbl_80299624 -lbl_80299608: -/* 80299608 00295268 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029960C 0029526C 41 80 00 0C */ blt lbl_80299618 -/* 80299610 00295270 38 1D FF 64 */ addi r0, r29, -156 -/* 80299614 00295274 48 00 00 10 */ b lbl_80299624 -lbl_80299618: -/* 80299618 00295278 54 00 08 3C */ slwi r0, r0, 1 -/* 8029961C 0029527C 7C FE 02 14 */ add r7, r30, r0 -/* 80299620 00295280 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299624: -/* 80299624 00295284 B0 05 00 4E */ sth r0, 0x4e(r5) -/* 80299628 00295288 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029962C 0029528C 80 05 00 20 */ lwz r0, 0x20(r5) -/* 80299630 00295290 80 E5 00 0C */ lwz r7, 0xc(r5) -/* 80299634 00295294 7C 08 02 14 */ add r0, r8, r0 -/* 80299638 00295298 7C 07 02 14 */ add r0, r7, r0 -/* 8029963C 0029529C 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299640 002952A0 41 81 00 0C */ bgt lbl_8029964C -/* 80299644 002952A4 38 00 00 00 */ li r0, 0 -/* 80299648 002952A8 48 00 00 20 */ b lbl_80299668 -lbl_8029964C: -/* 8029964C 002952AC 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299650 002952B0 41 80 00 0C */ blt lbl_8029965C -/* 80299654 002952B4 38 1D FF 64 */ addi r0, r29, -156 -/* 80299658 002952B8 48 00 00 10 */ b lbl_80299668 -lbl_8029965C: -/* 8029965C 002952BC 54 00 08 3C */ slwi r0, r0, 1 -/* 80299660 002952C0 7C FE 02 14 */ add r7, r30, r0 -/* 80299664 002952C4 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299668: -/* 80299668 002952C8 B0 05 00 52 */ sth r0, 0x52(r5) -/* 8029966C 002952CC 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299670 002952D0 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80299674 002952D4 80 E5 00 30 */ lwz r7, 0x30(r5) -/* 80299678 002952D8 7C 08 02 14 */ add r0, r8, r0 -/* 8029967C 002952DC 7C E0 3A 14 */ add r7, r0, r7 -/* 80299680 002952E0 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299684 002952E4 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299688 002952E8 41 81 00 0C */ bgt lbl_80299694 -/* 8029968C 002952EC 38 00 00 00 */ li r0, 0 -/* 80299690 002952F0 48 00 00 20 */ b lbl_802996B0 -lbl_80299694: -/* 80299694 002952F4 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299698 002952F8 41 80 00 0C */ blt lbl_802996A4 -/* 8029969C 002952FC 38 1D FF 64 */ addi r0, r29, -156 -/* 802996A0 00295300 48 00 00 10 */ b lbl_802996B0 -lbl_802996A4: -/* 802996A4 00295304 54 E0 08 3C */ slwi r0, r7, 1 -/* 802996A8 00295308 7C FE 02 14 */ add r7, r30, r0 -/* 802996AC 0029530C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802996B0: -/* 802996B0 00295310 B0 05 00 56 */ sth r0, 0x56(r5) -lbl_802996B4: -/* 802996B4 00295314 80 05 00 04 */ lwz r0, 4(r5) -/* 802996B8 00295318 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 802996BC 0029531C 41 82 00 C0 */ beq lbl_8029977C -/* 802996C0 00295320 80 E5 00 10 */ lwz r7, 0x10(r5) -/* 802996C4 00295324 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 802996C8 00295328 7C 07 02 14 */ add r0, r7, r0 -/* 802996CC 0029532C 2C 00 FC 78 */ cmpwi r0, -904 -/* 802996D0 00295330 41 81 00 0C */ bgt lbl_802996DC -/* 802996D4 00295334 38 00 00 00 */ li r0, 0 -/* 802996D8 00295338 48 00 00 20 */ b lbl_802996F8 -lbl_802996DC: -/* 802996DC 0029533C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 802996E0 00295340 41 80 00 0C */ blt lbl_802996EC -/* 802996E4 00295344 38 1D FF 64 */ addi r0, r29, -156 -/* 802996E8 00295348 48 00 00 10 */ b lbl_802996F8 -lbl_802996EC: -/* 802996EC 0029534C 54 00 08 3C */ slwi r0, r0, 1 -/* 802996F0 00295350 7C FE 02 14 */ add r7, r30, r0 -/* 802996F4 00295354 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802996F8: -/* 802996F8 00295358 B0 05 00 5A */ sth r0, 0x5a(r5) -/* 802996FC 0029535C 80 E5 00 10 */ lwz r7, 0x10(r5) -/* 80299700 00295360 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 80299704 00295364 7C 07 02 14 */ add r0, r7, r0 -/* 80299708 00295368 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029970C 0029536C 41 81 00 0C */ bgt lbl_80299718 -/* 80299710 00295370 38 00 00 00 */ li r0, 0 -/* 80299714 00295374 48 00 00 20 */ b lbl_80299734 -lbl_80299718: -/* 80299718 00295378 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029971C 0029537C 41 80 00 0C */ blt lbl_80299728 -/* 80299720 00295380 38 1D FF 64 */ addi r0, r29, -156 -/* 80299724 00295384 48 00 00 10 */ b lbl_80299734 -lbl_80299728: -/* 80299728 00295388 54 00 08 3C */ slwi r0, r0, 1 -/* 8029972C 0029538C 7C FE 02 14 */ add r7, r30, r0 -/* 80299730 00295390 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299734: -/* 80299734 00295394 B0 05 00 5E */ sth r0, 0x5e(r5) -/* 80299738 00295398 80 E5 00 10 */ lwz r7, 0x10(r5) -/* 8029973C 0029539C 80 05 00 30 */ lwz r0, 0x30(r5) -/* 80299740 002953A0 7C E7 02 14 */ add r7, r7, r0 -/* 80299744 002953A4 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299748 002953A8 2C 07 FC 78 */ cmpwi r7, -904 -/* 8029974C 002953AC 41 81 00 0C */ bgt lbl_80299758 -/* 80299750 002953B0 38 00 00 00 */ li r0, 0 -/* 80299754 002953B4 48 00 00 20 */ b lbl_80299774 -lbl_80299758: -/* 80299758 002953B8 2C 07 00 3C */ cmpwi r7, 0x3c -/* 8029975C 002953BC 41 80 00 0C */ blt lbl_80299768 -/* 80299760 002953C0 38 1D FF 64 */ addi r0, r29, -156 -/* 80299764 002953C4 48 00 00 10 */ b lbl_80299774 -lbl_80299768: -/* 80299768 002953C8 54 E0 08 3C */ slwi r0, r7, 1 -/* 8029976C 002953CC 7C FE 02 14 */ add r7, r30, r0 -/* 80299770 002953D0 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299774: -/* 80299774 002953D4 B0 05 00 62 */ sth r0, 0x62(r5) -/* 80299778 002953D8 48 00 00 D4 */ b lbl_8029984C -lbl_8029977C: -/* 8029977C 002953DC 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299780 002953E0 80 05 00 20 */ lwz r0, 0x20(r5) -/* 80299784 002953E4 80 E5 00 10 */ lwz r7, 0x10(r5) -/* 80299788 002953E8 7C 08 02 14 */ add r0, r8, r0 -/* 8029978C 002953EC 7C 07 02 14 */ add r0, r7, r0 -/* 80299790 002953F0 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299794 002953F4 41 81 00 0C */ bgt lbl_802997A0 -/* 80299798 002953F8 38 00 00 00 */ li r0, 0 -/* 8029979C 002953FC 48 00 00 20 */ b lbl_802997BC -lbl_802997A0: -/* 802997A0 00295400 2C 00 00 3C */ cmpwi r0, 0x3c -/* 802997A4 00295404 41 80 00 0C */ blt lbl_802997B0 -/* 802997A8 00295408 38 1D FF 64 */ addi r0, r29, -156 -/* 802997AC 0029540C 48 00 00 10 */ b lbl_802997BC -lbl_802997B0: -/* 802997B0 00295410 54 00 08 3C */ slwi r0, r0, 1 -/* 802997B4 00295414 7C FE 02 14 */ add r7, r30, r0 -/* 802997B8 00295418 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802997BC: -/* 802997BC 0029541C B0 05 00 5A */ sth r0, 0x5a(r5) -/* 802997C0 00295420 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 802997C4 00295424 80 05 00 20 */ lwz r0, 0x20(r5) -/* 802997C8 00295428 80 E5 00 10 */ lwz r7, 0x10(r5) -/* 802997CC 0029542C 7C 08 02 14 */ add r0, r8, r0 -/* 802997D0 00295430 7C 07 02 14 */ add r0, r7, r0 -/* 802997D4 00295434 2C 00 FC 78 */ cmpwi r0, -904 -/* 802997D8 00295438 41 81 00 0C */ bgt lbl_802997E4 -/* 802997DC 0029543C 38 00 00 00 */ li r0, 0 -/* 802997E0 00295440 48 00 00 20 */ b lbl_80299800 -lbl_802997E4: -/* 802997E4 00295444 2C 00 00 3C */ cmpwi r0, 0x3c -/* 802997E8 00295448 41 80 00 0C */ blt lbl_802997F4 -/* 802997EC 0029544C 38 1D FF 64 */ addi r0, r29, -156 -/* 802997F0 00295450 48 00 00 10 */ b lbl_80299800 -lbl_802997F4: -/* 802997F4 00295454 54 00 08 3C */ slwi r0, r0, 1 -/* 802997F8 00295458 7C FE 02 14 */ add r7, r30, r0 -/* 802997FC 0029545C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299800: -/* 80299800 00295460 B0 05 00 5E */ sth r0, 0x5e(r5) -/* 80299804 00295464 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299808 00295468 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029980C 0029546C 80 E5 00 30 */ lwz r7, 0x30(r5) -/* 80299810 00295470 7C 08 02 14 */ add r0, r8, r0 -/* 80299814 00295474 7C E0 3A 14 */ add r7, r0, r7 -/* 80299818 00295478 38 E7 FF E2 */ addi r7, r7, -30 -/* 8029981C 0029547C 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299820 00295480 41 81 00 0C */ bgt lbl_8029982C -/* 80299824 00295484 38 00 00 00 */ li r0, 0 -/* 80299828 00295488 48 00 00 20 */ b lbl_80299848 -lbl_8029982C: -/* 8029982C 0029548C 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299830 00295490 41 80 00 0C */ blt lbl_8029983C -/* 80299834 00295494 38 1D FF 64 */ addi r0, r29, -156 -/* 80299838 00295498 48 00 00 10 */ b lbl_80299848 -lbl_8029983C: -/* 8029983C 0029549C 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299840 002954A0 7C FE 02 14 */ add r7, r30, r0 -/* 80299844 002954A4 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299848: -/* 80299848 002954A8 B0 05 00 62 */ sth r0, 0x62(r5) -lbl_8029984C: -/* 8029984C 002954AC 80 05 00 04 */ lwz r0, 4(r5) -/* 80299850 002954B0 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80299854 002954B4 41 82 00 C0 */ beq lbl_80299914 -/* 80299858 002954B8 80 E5 00 14 */ lwz r7, 0x14(r5) -/* 8029985C 002954BC 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 80299860 002954C0 7C 07 02 14 */ add r0, r7, r0 -/* 80299864 002954C4 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299868 002954C8 41 81 00 0C */ bgt lbl_80299874 -/* 8029986C 002954CC 38 00 00 00 */ li r0, 0 -/* 80299870 002954D0 48 00 00 20 */ b lbl_80299890 -lbl_80299874: -/* 80299874 002954D4 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299878 002954D8 41 80 00 0C */ blt lbl_80299884 -/* 8029987C 002954DC 38 1D FF 64 */ addi r0, r29, -156 -/* 80299880 002954E0 48 00 00 10 */ b lbl_80299890 -lbl_80299884: -/* 80299884 002954E4 54 00 08 3C */ slwi r0, r0, 1 -/* 80299888 002954E8 7C FE 02 14 */ add r7, r30, r0 -/* 8029988C 002954EC A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299890: -/* 80299890 002954F0 B0 05 00 66 */ sth r0, 0x66(r5) -/* 80299894 002954F4 80 E5 00 14 */ lwz r7, 0x14(r5) -/* 80299898 002954F8 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 8029989C 002954FC 7C 07 02 14 */ add r0, r7, r0 -/* 802998A0 00295500 2C 00 FC 78 */ cmpwi r0, -904 -/* 802998A4 00295504 41 81 00 0C */ bgt lbl_802998B0 -/* 802998A8 00295508 38 00 00 00 */ li r0, 0 -/* 802998AC 0029550C 48 00 00 20 */ b lbl_802998CC -lbl_802998B0: -/* 802998B0 00295510 2C 00 00 3C */ cmpwi r0, 0x3c -/* 802998B4 00295514 41 80 00 0C */ blt lbl_802998C0 -/* 802998B8 00295518 38 1D FF 64 */ addi r0, r29, -156 -/* 802998BC 0029551C 48 00 00 10 */ b lbl_802998CC -lbl_802998C0: -/* 802998C0 00295520 54 00 08 3C */ slwi r0, r0, 1 -/* 802998C4 00295524 7C FE 02 14 */ add r7, r30, r0 -/* 802998C8 00295528 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802998CC: -/* 802998CC 0029552C B0 05 00 6A */ sth r0, 0x6a(r5) -/* 802998D0 00295530 80 E5 00 14 */ lwz r7, 0x14(r5) -/* 802998D4 00295534 80 05 00 30 */ lwz r0, 0x30(r5) -/* 802998D8 00295538 7C E7 02 14 */ add r7, r7, r0 -/* 802998DC 0029553C 38 E7 FF E2 */ addi r7, r7, -30 -/* 802998E0 00295540 2C 07 FC 78 */ cmpwi r7, -904 -/* 802998E4 00295544 41 81 00 0C */ bgt lbl_802998F0 -/* 802998E8 00295548 38 00 00 00 */ li r0, 0 -/* 802998EC 0029554C 48 00 00 20 */ b lbl_8029990C -lbl_802998F0: -/* 802998F0 00295550 2C 07 00 3C */ cmpwi r7, 0x3c -/* 802998F4 00295554 41 80 00 0C */ blt lbl_80299900 -/* 802998F8 00295558 38 1D FF 64 */ addi r0, r29, -156 -/* 802998FC 0029555C 48 00 00 10 */ b lbl_8029990C -lbl_80299900: -/* 80299900 00295560 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299904 00295564 7C FE 02 14 */ add r7, r30, r0 -/* 80299908 00295568 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029990C: -/* 8029990C 0029556C B0 05 00 6E */ sth r0, 0x6e(r5) -/* 80299910 00295570 48 00 0C 80 */ b lbl_8029A590 -lbl_80299914: -/* 80299914 00295574 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299918 00295578 80 05 00 20 */ lwz r0, 0x20(r5) -/* 8029991C 0029557C 80 E5 00 14 */ lwz r7, 0x14(r5) -/* 80299920 00295580 7C 08 02 14 */ add r0, r8, r0 -/* 80299924 00295584 7C 07 02 14 */ add r0, r7, r0 -/* 80299928 00295588 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029992C 0029558C 41 81 00 0C */ bgt lbl_80299938 -/* 80299930 00295590 38 00 00 00 */ li r0, 0 -/* 80299934 00295594 48 00 00 20 */ b lbl_80299954 -lbl_80299938: -/* 80299938 00295598 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029993C 0029559C 41 80 00 0C */ blt lbl_80299948 -/* 80299940 002955A0 38 1D FF 64 */ addi r0, r29, -156 -/* 80299944 002955A4 48 00 00 10 */ b lbl_80299954 -lbl_80299948: -/* 80299948 002955A8 54 00 08 3C */ slwi r0, r0, 1 -/* 8029994C 002955AC 7C FE 02 14 */ add r7, r30, r0 -/* 80299950 002955B0 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299954: -/* 80299954 002955B4 B0 05 00 66 */ sth r0, 0x66(r5) -/* 80299958 002955B8 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029995C 002955BC 80 05 00 20 */ lwz r0, 0x20(r5) -/* 80299960 002955C0 80 E5 00 14 */ lwz r7, 0x14(r5) -/* 80299964 002955C4 7C 08 02 14 */ add r0, r8, r0 -/* 80299968 002955C8 7C 07 02 14 */ add r0, r7, r0 -/* 8029996C 002955CC 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299970 002955D0 41 81 00 0C */ bgt lbl_8029997C -/* 80299974 002955D4 38 00 00 00 */ li r0, 0 -/* 80299978 002955D8 48 00 00 20 */ b lbl_80299998 -lbl_8029997C: -/* 8029997C 002955DC 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299980 002955E0 41 80 00 0C */ blt lbl_8029998C -/* 80299984 002955E4 38 1D FF 64 */ addi r0, r29, -156 -/* 80299988 002955E8 48 00 00 10 */ b lbl_80299998 -lbl_8029998C: -/* 8029998C 002955EC 54 00 08 3C */ slwi r0, r0, 1 -/* 80299990 002955F0 7C FE 02 14 */ add r7, r30, r0 -/* 80299994 002955F4 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299998: -/* 80299998 002955F8 B0 05 00 6A */ sth r0, 0x6a(r5) -/* 8029999C 002955FC 81 05 00 20 */ lwz r8, 0x20(r5) -/* 802999A0 00295600 80 05 00 14 */ lwz r0, 0x14(r5) -/* 802999A4 00295604 80 E5 00 30 */ lwz r7, 0x30(r5) -/* 802999A8 00295608 7C 08 02 14 */ add r0, r8, r0 -/* 802999AC 0029560C 7C E0 3A 14 */ add r7, r0, r7 -/* 802999B0 00295610 38 E7 FF E2 */ addi r7, r7, -30 -/* 802999B4 00295614 2C 07 FC 78 */ cmpwi r7, -904 -/* 802999B8 00295618 41 81 00 0C */ bgt lbl_802999C4 -/* 802999BC 0029561C 38 00 00 00 */ li r0, 0 -/* 802999C0 00295620 48 00 00 20 */ b lbl_802999E0 -lbl_802999C4: -/* 802999C4 00295624 2C 07 00 3C */ cmpwi r7, 0x3c -/* 802999C8 00295628 41 80 00 0C */ blt lbl_802999D4 -/* 802999CC 0029562C 38 1D FF 64 */ addi r0, r29, -156 -/* 802999D0 00295630 48 00 00 10 */ b lbl_802999E0 -lbl_802999D4: -/* 802999D4 00295634 54 E0 08 3C */ slwi r0, r7, 1 -/* 802999D8 00295638 7C FE 02 14 */ add r7, r30, r0 -/* 802999DC 0029563C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_802999E0: -/* 802999E0 00295640 B0 05 00 6E */ sth r0, 0x6e(r5) -/* 802999E4 00295644 48 00 0B AC */ b lbl_8029A590 -lbl_802999E8: -/* 802999E8 00295648 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 802999EC 0029564C 80 05 00 20 */ lwz r0, 0x20(r5) -/* 802999F0 00295650 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 802999F4 00295654 7C 08 02 14 */ add r0, r8, r0 -/* 802999F8 00295658 7C 07 02 14 */ add r0, r7, r0 -/* 802999FC 0029565C 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299A00 00295660 41 81 00 0C */ bgt lbl_80299A0C -/* 80299A04 00295664 38 00 00 00 */ li r0, 0 -/* 80299A08 00295668 48 00 00 20 */ b lbl_80299A28 -lbl_80299A0C: -/* 80299A0C 0029566C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299A10 00295670 41 80 00 0C */ blt lbl_80299A1C -/* 80299A14 00295674 38 1D FF 64 */ addi r0, r29, -156 -/* 80299A18 00295678 48 00 00 10 */ b lbl_80299A28 -lbl_80299A1C: -/* 80299A1C 0029567C 54 00 08 3C */ slwi r0, r0, 1 -/* 80299A20 00295680 7C FE 02 14 */ add r7, r30, r0 -/* 80299A24 00295684 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299A28: -/* 80299A28 00295688 B0 05 00 42 */ sth r0, 0x42(r5) -/* 80299A2C 0029568C 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299A30 00295690 80 05 00 20 */ lwz r0, 0x20(r5) -/* 80299A34 00295694 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299A38 00295698 7C 08 02 14 */ add r0, r8, r0 -/* 80299A3C 0029569C 7C 07 02 14 */ add r0, r7, r0 -/* 80299A40 002956A0 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299A44 002956A4 41 81 00 0C */ bgt lbl_80299A50 -/* 80299A48 002956A8 38 00 00 00 */ li r0, 0 -/* 80299A4C 002956AC 48 00 00 20 */ b lbl_80299A6C -lbl_80299A50: -/* 80299A50 002956B0 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299A54 002956B4 41 80 00 0C */ blt lbl_80299A60 -/* 80299A58 002956B8 38 1D FF 64 */ addi r0, r29, -156 -/* 80299A5C 002956BC 48 00 00 10 */ b lbl_80299A6C -lbl_80299A60: -/* 80299A60 002956C0 54 00 08 3C */ slwi r0, r0, 1 -/* 80299A64 002956C4 7C FE 02 14 */ add r7, r30, r0 -/* 80299A68 002956C8 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299A6C: -/* 80299A6C 002956CC B0 05 00 46 */ sth r0, 0x46(r5) -/* 80299A70 002956D0 80 E5 00 20 */ lwz r7, 0x20(r5) -/* 80299A74 002956D4 80 05 00 30 */ lwz r0, 0x30(r5) -/* 80299A78 002956D8 7C E7 02 14 */ add r7, r7, r0 -/* 80299A7C 002956DC 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299A80 002956E0 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299A84 002956E4 41 81 00 0C */ bgt lbl_80299A90 -/* 80299A88 002956E8 38 00 00 00 */ li r0, 0 -/* 80299A8C 002956EC 48 00 00 20 */ b lbl_80299AAC -lbl_80299A90: -/* 80299A90 002956F0 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299A94 002956F4 41 80 00 0C */ blt lbl_80299AA0 -/* 80299A98 002956F8 38 1D FF 64 */ addi r0, r29, -156 -/* 80299A9C 002956FC 48 00 00 10 */ b lbl_80299AAC -lbl_80299AA0: -/* 80299AA0 00295700 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299AA4 00295704 7C FE 02 14 */ add r7, r30, r0 -/* 80299AA8 00295708 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299AAC: -/* 80299AAC 0029570C B0 05 00 4A */ sth r0, 0x4a(r5) -/* 80299AB0 00295710 80 05 00 04 */ lwz r0, 4(r5) -/* 80299AB4 00295714 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80299AB8 00295718 41 82 00 D0 */ beq lbl_80299B88 -/* 80299ABC 0029571C 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299AC0 00295720 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80299AC4 00295724 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299AC8 00295728 7C 08 02 14 */ add r0, r8, r0 -/* 80299ACC 0029572C 7C 07 02 14 */ add r0, r7, r0 -/* 80299AD0 00295730 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299AD4 00295734 41 81 00 0C */ bgt lbl_80299AE0 -/* 80299AD8 00295738 38 00 00 00 */ li r0, 0 -/* 80299ADC 0029573C 48 00 00 20 */ b lbl_80299AFC -lbl_80299AE0: -/* 80299AE0 00295740 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299AE4 00295744 41 80 00 0C */ blt lbl_80299AF0 -/* 80299AE8 00295748 38 1D FF 64 */ addi r0, r29, -156 -/* 80299AEC 0029574C 48 00 00 10 */ b lbl_80299AFC -lbl_80299AF0: -/* 80299AF0 00295750 54 00 08 3C */ slwi r0, r0, 1 -/* 80299AF4 00295754 7C FE 02 14 */ add r7, r30, r0 -/* 80299AF8 00295758 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299AFC: -/* 80299AFC 0029575C B0 05 00 4E */ sth r0, 0x4e(r5) -/* 80299B00 00295760 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299B04 00295764 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80299B08 00295768 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299B0C 0029576C 7C 08 02 14 */ add r0, r8, r0 -/* 80299B10 00295770 7C 07 02 14 */ add r0, r7, r0 -/* 80299B14 00295774 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299B18 00295778 41 81 00 0C */ bgt lbl_80299B24 -/* 80299B1C 0029577C 38 00 00 00 */ li r0, 0 -/* 80299B20 00295780 48 00 00 20 */ b lbl_80299B40 -lbl_80299B24: -/* 80299B24 00295784 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299B28 00295788 41 80 00 0C */ blt lbl_80299B34 -/* 80299B2C 0029578C 38 1D FF 64 */ addi r0, r29, -156 -/* 80299B30 00295790 48 00 00 10 */ b lbl_80299B40 -lbl_80299B34: -/* 80299B34 00295794 54 00 08 3C */ slwi r0, r0, 1 -/* 80299B38 00295798 7C FE 02 14 */ add r7, r30, r0 -/* 80299B3C 0029579C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299B40: -/* 80299B40 002957A0 B0 05 00 52 */ sth r0, 0x52(r5) -/* 80299B44 002957A4 80 E5 00 0C */ lwz r7, 0xc(r5) -/* 80299B48 002957A8 80 05 00 30 */ lwz r0, 0x30(r5) -/* 80299B4C 002957AC 7C E7 02 14 */ add r7, r7, r0 -/* 80299B50 002957B0 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299B54 002957B4 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299B58 002957B8 41 81 00 0C */ bgt lbl_80299B64 -/* 80299B5C 002957BC 38 00 00 00 */ li r0, 0 -/* 80299B60 002957C0 48 00 00 20 */ b lbl_80299B80 -lbl_80299B64: -/* 80299B64 002957C4 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299B68 002957C8 41 80 00 0C */ blt lbl_80299B74 -/* 80299B6C 002957CC 38 1D FF 64 */ addi r0, r29, -156 -/* 80299B70 002957D0 48 00 00 10 */ b lbl_80299B80 -lbl_80299B74: -/* 80299B74 002957D4 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299B78 002957D8 7C FE 02 14 */ add r7, r30, r0 -/* 80299B7C 002957DC A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299B80: -/* 80299B80 002957E0 B0 05 00 56 */ sth r0, 0x56(r5) -/* 80299B84 002957E4 48 00 00 E4 */ b lbl_80299C68 -lbl_80299B88: -/* 80299B88 002957E8 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 80299B8C 002957EC 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299B90 002957F0 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299B94 002957F4 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80299B98 002957F8 7C E9 3A 14 */ add r7, r9, r7 -/* 80299B9C 002957FC 7C 08 02 14 */ add r0, r8, r0 -/* 80299BA0 00295800 7C 07 02 14 */ add r0, r7, r0 -/* 80299BA4 00295804 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299BA8 00295808 41 81 00 0C */ bgt lbl_80299BB4 -/* 80299BAC 0029580C 38 00 00 00 */ li r0, 0 -/* 80299BB0 00295810 48 00 00 20 */ b lbl_80299BD0 -lbl_80299BB4: -/* 80299BB4 00295814 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299BB8 00295818 41 80 00 0C */ blt lbl_80299BC4 -/* 80299BBC 0029581C 38 1D FF 64 */ addi r0, r29, -156 -/* 80299BC0 00295820 48 00 00 10 */ b lbl_80299BD0 -lbl_80299BC4: -/* 80299BC4 00295824 54 00 08 3C */ slwi r0, r0, 1 -/* 80299BC8 00295828 7C FE 02 14 */ add r7, r30, r0 -/* 80299BCC 0029582C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299BD0: -/* 80299BD0 00295830 B0 05 00 4E */ sth r0, 0x4e(r5) -/* 80299BD4 00295834 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 80299BD8 00295838 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299BDC 0029583C 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299BE0 00295840 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80299BE4 00295844 7C E9 3A 14 */ add r7, r9, r7 -/* 80299BE8 00295848 7C 08 02 14 */ add r0, r8, r0 -/* 80299BEC 0029584C 7C 07 02 14 */ add r0, r7, r0 -/* 80299BF0 00295850 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299BF4 00295854 41 81 00 0C */ bgt lbl_80299C00 -/* 80299BF8 00295858 38 00 00 00 */ li r0, 0 -/* 80299BFC 0029585C 48 00 00 20 */ b lbl_80299C1C -lbl_80299C00: -/* 80299C00 00295860 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299C04 00295864 41 80 00 0C */ blt lbl_80299C10 -/* 80299C08 00295868 38 1D FF 64 */ addi r0, r29, -156 -/* 80299C0C 0029586C 48 00 00 10 */ b lbl_80299C1C -lbl_80299C10: -/* 80299C10 00295870 54 00 08 3C */ slwi r0, r0, 1 -/* 80299C14 00295874 7C FE 02 14 */ add r7, r30, r0 -/* 80299C18 00295878 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299C1C: -/* 80299C1C 0029587C B0 05 00 52 */ sth r0, 0x52(r5) -/* 80299C20 00295880 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299C24 00295884 80 05 00 0C */ lwz r0, 0xc(r5) -/* 80299C28 00295888 80 E5 00 30 */ lwz r7, 0x30(r5) -/* 80299C2C 0029588C 7C 08 02 14 */ add r0, r8, r0 -/* 80299C30 00295890 7C E0 3A 14 */ add r7, r0, r7 -/* 80299C34 00295894 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299C38 00295898 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299C3C 0029589C 41 81 00 0C */ bgt lbl_80299C48 -/* 80299C40 002958A0 38 00 00 00 */ li r0, 0 -/* 80299C44 002958A4 48 00 00 20 */ b lbl_80299C64 -lbl_80299C48: -/* 80299C48 002958A8 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299C4C 002958AC 41 80 00 0C */ blt lbl_80299C58 -/* 80299C50 002958B0 38 1D FF 64 */ addi r0, r29, -156 -/* 80299C54 002958B4 48 00 00 10 */ b lbl_80299C64 -lbl_80299C58: -/* 80299C58 002958B8 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299C5C 002958BC 7C FE 02 14 */ add r7, r30, r0 -/* 80299C60 002958C0 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299C64: -/* 80299C64 002958C4 B0 05 00 56 */ sth r0, 0x56(r5) -lbl_80299C68: -/* 80299C68 002958C8 80 05 00 04 */ lwz r0, 4(r5) -/* 80299C6C 002958CC 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 80299C70 002958D0 41 82 00 D0 */ beq lbl_80299D40 -/* 80299C74 002958D4 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299C78 002958D8 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80299C7C 002958DC 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299C80 002958E0 7C 08 02 14 */ add r0, r8, r0 -/* 80299C84 002958E4 7C 07 02 14 */ add r0, r7, r0 -/* 80299C88 002958E8 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299C8C 002958EC 41 81 00 0C */ bgt lbl_80299C98 -/* 80299C90 002958F0 38 00 00 00 */ li r0, 0 -/* 80299C94 002958F4 48 00 00 20 */ b lbl_80299CB4 -lbl_80299C98: -/* 80299C98 002958F8 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299C9C 002958FC 41 80 00 0C */ blt lbl_80299CA8 -/* 80299CA0 00295900 38 1D FF 64 */ addi r0, r29, -156 -/* 80299CA4 00295904 48 00 00 10 */ b lbl_80299CB4 -lbl_80299CA8: -/* 80299CA8 00295908 54 00 08 3C */ slwi r0, r0, 1 -/* 80299CAC 0029590C 7C FE 02 14 */ add r7, r30, r0 -/* 80299CB0 00295910 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299CB4: -/* 80299CB4 00295914 B0 05 00 5A */ sth r0, 0x5a(r5) -/* 80299CB8 00295918 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299CBC 0029591C 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80299CC0 00295920 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299CC4 00295924 7C 08 02 14 */ add r0, r8, r0 -/* 80299CC8 00295928 7C 07 02 14 */ add r0, r7, r0 -/* 80299CCC 0029592C 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299CD0 00295930 41 81 00 0C */ bgt lbl_80299CDC -/* 80299CD4 00295934 38 00 00 00 */ li r0, 0 -/* 80299CD8 00295938 48 00 00 20 */ b lbl_80299CF8 -lbl_80299CDC: -/* 80299CDC 0029593C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299CE0 00295940 41 80 00 0C */ blt lbl_80299CEC -/* 80299CE4 00295944 38 1D FF 64 */ addi r0, r29, -156 -/* 80299CE8 00295948 48 00 00 10 */ b lbl_80299CF8 -lbl_80299CEC: -/* 80299CEC 0029594C 54 00 08 3C */ slwi r0, r0, 1 -/* 80299CF0 00295950 7C FE 02 14 */ add r7, r30, r0 -/* 80299CF4 00295954 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299CF8: -/* 80299CF8 00295958 B0 05 00 5E */ sth r0, 0x5e(r5) -/* 80299CFC 0029595C 80 E5 00 10 */ lwz r7, 0x10(r5) -/* 80299D00 00295960 80 05 00 30 */ lwz r0, 0x30(r5) -/* 80299D04 00295964 7C E7 02 14 */ add r7, r7, r0 -/* 80299D08 00295968 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299D0C 0029596C 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299D10 00295970 41 81 00 0C */ bgt lbl_80299D1C -/* 80299D14 00295974 38 00 00 00 */ li r0, 0 -/* 80299D18 00295978 48 00 00 20 */ b lbl_80299D38 -lbl_80299D1C: -/* 80299D1C 0029597C 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299D20 00295980 41 80 00 0C */ blt lbl_80299D2C -/* 80299D24 00295984 38 1D FF 64 */ addi r0, r29, -156 -/* 80299D28 00295988 48 00 00 10 */ b lbl_80299D38 -lbl_80299D2C: -/* 80299D2C 0029598C 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299D30 00295990 7C FE 02 14 */ add r7, r30, r0 -/* 80299D34 00295994 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299D38: -/* 80299D38 00295998 B0 05 00 62 */ sth r0, 0x62(r5) -/* 80299D3C 0029599C 48 00 00 E4 */ b lbl_80299E20 -lbl_80299D40: -/* 80299D40 002959A0 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 80299D44 002959A4 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299D48 002959A8 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299D4C 002959AC 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80299D50 002959B0 7C E9 3A 14 */ add r7, r9, r7 -/* 80299D54 002959B4 7C 08 02 14 */ add r0, r8, r0 -/* 80299D58 002959B8 7C 07 02 14 */ add r0, r7, r0 -/* 80299D5C 002959BC 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299D60 002959C0 41 81 00 0C */ bgt lbl_80299D6C -/* 80299D64 002959C4 38 00 00 00 */ li r0, 0 -/* 80299D68 002959C8 48 00 00 20 */ b lbl_80299D88 -lbl_80299D6C: -/* 80299D6C 002959CC 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299D70 002959D0 41 80 00 0C */ blt lbl_80299D7C -/* 80299D74 002959D4 38 1D FF 64 */ addi r0, r29, -156 -/* 80299D78 002959D8 48 00 00 10 */ b lbl_80299D88 -lbl_80299D7C: -/* 80299D7C 002959DC 54 00 08 3C */ slwi r0, r0, 1 -/* 80299D80 002959E0 7C FE 02 14 */ add r7, r30, r0 -/* 80299D84 002959E4 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299D88: -/* 80299D88 002959E8 B0 05 00 5A */ sth r0, 0x5a(r5) -/* 80299D8C 002959EC 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 80299D90 002959F0 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299D94 002959F4 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299D98 002959F8 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80299D9C 002959FC 7C E9 3A 14 */ add r7, r9, r7 -/* 80299DA0 00295A00 7C 08 02 14 */ add r0, r8, r0 -/* 80299DA4 00295A04 7C 07 02 14 */ add r0, r7, r0 -/* 80299DA8 00295A08 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299DAC 00295A0C 41 81 00 0C */ bgt lbl_80299DB8 -/* 80299DB0 00295A10 38 00 00 00 */ li r0, 0 -/* 80299DB4 00295A14 48 00 00 20 */ b lbl_80299DD4 -lbl_80299DB8: -/* 80299DB8 00295A18 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299DBC 00295A1C 41 80 00 0C */ blt lbl_80299DC8 -/* 80299DC0 00295A20 38 1D FF 64 */ addi r0, r29, -156 -/* 80299DC4 00295A24 48 00 00 10 */ b lbl_80299DD4 -lbl_80299DC8: -/* 80299DC8 00295A28 54 00 08 3C */ slwi r0, r0, 1 -/* 80299DCC 00295A2C 7C FE 02 14 */ add r7, r30, r0 -/* 80299DD0 00295A30 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299DD4: -/* 80299DD4 00295A34 B0 05 00 5E */ sth r0, 0x5e(r5) -/* 80299DD8 00295A38 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299DDC 00295A3C 80 05 00 10 */ lwz r0, 0x10(r5) -/* 80299DE0 00295A40 80 E5 00 30 */ lwz r7, 0x30(r5) -/* 80299DE4 00295A44 7C 08 02 14 */ add r0, r8, r0 -/* 80299DE8 00295A48 7C E0 3A 14 */ add r7, r0, r7 -/* 80299DEC 00295A4C 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299DF0 00295A50 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299DF4 00295A54 41 81 00 0C */ bgt lbl_80299E00 -/* 80299DF8 00295A58 38 00 00 00 */ li r0, 0 -/* 80299DFC 00295A5C 48 00 00 20 */ b lbl_80299E1C -lbl_80299E00: -/* 80299E00 00295A60 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299E04 00295A64 41 80 00 0C */ blt lbl_80299E10 -/* 80299E08 00295A68 38 1D FF 64 */ addi r0, r29, -156 -/* 80299E0C 00295A6C 48 00 00 10 */ b lbl_80299E1C -lbl_80299E10: -/* 80299E10 00295A70 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299E14 00295A74 7C FE 02 14 */ add r7, r30, r0 -/* 80299E18 00295A78 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299E1C: -/* 80299E1C 00295A7C B0 05 00 62 */ sth r0, 0x62(r5) -lbl_80299E20: -/* 80299E20 00295A80 80 05 00 04 */ lwz r0, 4(r5) -/* 80299E24 00295A84 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 80299E28 00295A88 41 82 00 D0 */ beq lbl_80299EF8 -/* 80299E2C 00295A8C 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299E30 00295A90 80 05 00 14 */ lwz r0, 0x14(r5) -/* 80299E34 00295A94 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299E38 00295A98 7C 08 02 14 */ add r0, r8, r0 -/* 80299E3C 00295A9C 7C 07 02 14 */ add r0, r7, r0 -/* 80299E40 00295AA0 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299E44 00295AA4 41 81 00 0C */ bgt lbl_80299E50 -/* 80299E48 00295AA8 38 00 00 00 */ li r0, 0 -/* 80299E4C 00295AAC 48 00 00 20 */ b lbl_80299E6C -lbl_80299E50: -/* 80299E50 00295AB0 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299E54 00295AB4 41 80 00 0C */ blt lbl_80299E60 -/* 80299E58 00295AB8 38 1D FF 64 */ addi r0, r29, -156 -/* 80299E5C 00295ABC 48 00 00 10 */ b lbl_80299E6C -lbl_80299E60: -/* 80299E60 00295AC0 54 00 08 3C */ slwi r0, r0, 1 -/* 80299E64 00295AC4 7C FE 02 14 */ add r7, r30, r0 -/* 80299E68 00295AC8 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299E6C: -/* 80299E6C 00295ACC B0 05 00 66 */ sth r0, 0x66(r5) -/* 80299E70 00295AD0 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299E74 00295AD4 80 05 00 14 */ lwz r0, 0x14(r5) -/* 80299E78 00295AD8 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299E7C 00295ADC 7C 08 02 14 */ add r0, r8, r0 -/* 80299E80 00295AE0 7C 07 02 14 */ add r0, r7, r0 -/* 80299E84 00295AE4 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299E88 00295AE8 41 81 00 0C */ bgt lbl_80299E94 -/* 80299E8C 00295AEC 38 00 00 00 */ li r0, 0 -/* 80299E90 00295AF0 48 00 00 20 */ b lbl_80299EB0 -lbl_80299E94: -/* 80299E94 00295AF4 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299E98 00295AF8 41 80 00 0C */ blt lbl_80299EA4 -/* 80299E9C 00295AFC 38 1D FF 64 */ addi r0, r29, -156 -/* 80299EA0 00295B00 48 00 00 10 */ b lbl_80299EB0 -lbl_80299EA4: -/* 80299EA4 00295B04 54 00 08 3C */ slwi r0, r0, 1 -/* 80299EA8 00295B08 7C FE 02 14 */ add r7, r30, r0 -/* 80299EAC 00295B0C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299EB0: -/* 80299EB0 00295B10 B0 05 00 6A */ sth r0, 0x6a(r5) -/* 80299EB4 00295B14 80 E5 00 14 */ lwz r7, 0x14(r5) -/* 80299EB8 00295B18 80 05 00 30 */ lwz r0, 0x30(r5) -/* 80299EBC 00295B1C 7C E7 02 14 */ add r7, r7, r0 -/* 80299EC0 00295B20 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299EC4 00295B24 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299EC8 00295B28 41 81 00 0C */ bgt lbl_80299ED4 -/* 80299ECC 00295B2C 38 00 00 00 */ li r0, 0 -/* 80299ED0 00295B30 48 00 00 20 */ b lbl_80299EF0 -lbl_80299ED4: -/* 80299ED4 00295B34 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299ED8 00295B38 41 80 00 0C */ blt lbl_80299EE4 -/* 80299EDC 00295B3C 38 1D FF 64 */ addi r0, r29, -156 -/* 80299EE0 00295B40 48 00 00 10 */ b lbl_80299EF0 -lbl_80299EE4: -/* 80299EE4 00295B44 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299EE8 00295B48 7C FE 02 14 */ add r7, r30, r0 -/* 80299EEC 00295B4C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299EF0: -/* 80299EF0 00295B50 B0 05 00 6E */ sth r0, 0x6e(r5) -/* 80299EF4 00295B54 48 00 06 9C */ b lbl_8029A590 -lbl_80299EF8: -/* 80299EF8 00295B58 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 80299EFC 00295B5C 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299F00 00295B60 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299F04 00295B64 80 05 00 14 */ lwz r0, 0x14(r5) -/* 80299F08 00295B68 7C E9 3A 14 */ add r7, r9, r7 -/* 80299F0C 00295B6C 7C 08 02 14 */ add r0, r8, r0 -/* 80299F10 00295B70 7C 07 02 14 */ add r0, r7, r0 -/* 80299F14 00295B74 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299F18 00295B78 41 81 00 0C */ bgt lbl_80299F24 -/* 80299F1C 00295B7C 38 00 00 00 */ li r0, 0 -/* 80299F20 00295B80 48 00 00 20 */ b lbl_80299F40 -lbl_80299F24: -/* 80299F24 00295B84 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299F28 00295B88 41 80 00 0C */ blt lbl_80299F34 -/* 80299F2C 00295B8C 38 1D FF 64 */ addi r0, r29, -156 -/* 80299F30 00295B90 48 00 00 10 */ b lbl_80299F40 -lbl_80299F34: -/* 80299F34 00295B94 54 00 08 3C */ slwi r0, r0, 1 -/* 80299F38 00295B98 7C FE 02 14 */ add r7, r30, r0 -/* 80299F3C 00295B9C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299F40: -/* 80299F40 00295BA0 B0 05 00 66 */ sth r0, 0x66(r5) -/* 80299F44 00295BA4 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 80299F48 00295BA8 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 80299F4C 00295BAC 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299F50 00295BB0 80 05 00 14 */ lwz r0, 0x14(r5) -/* 80299F54 00295BB4 7C E9 3A 14 */ add r7, r9, r7 -/* 80299F58 00295BB8 7C 08 02 14 */ add r0, r8, r0 -/* 80299F5C 00295BBC 7C 07 02 14 */ add r0, r7, r0 -/* 80299F60 00295BC0 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299F64 00295BC4 41 81 00 0C */ bgt lbl_80299F70 -/* 80299F68 00295BC8 38 00 00 00 */ li r0, 0 -/* 80299F6C 00295BCC 48 00 00 20 */ b lbl_80299F8C -lbl_80299F70: -/* 80299F70 00295BD0 2C 00 00 3C */ cmpwi r0, 0x3c -/* 80299F74 00295BD4 41 80 00 0C */ blt lbl_80299F80 -/* 80299F78 00295BD8 38 1D FF 64 */ addi r0, r29, -156 -/* 80299F7C 00295BDC 48 00 00 10 */ b lbl_80299F8C -lbl_80299F80: -/* 80299F80 00295BE0 54 00 08 3C */ slwi r0, r0, 1 -/* 80299F84 00295BE4 7C FE 02 14 */ add r7, r30, r0 -/* 80299F88 00295BE8 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299F8C: -/* 80299F8C 00295BEC B0 05 00 6A */ sth r0, 0x6a(r5) -/* 80299F90 00295BF0 81 05 00 20 */ lwz r8, 0x20(r5) -/* 80299F94 00295BF4 80 05 00 14 */ lwz r0, 0x14(r5) -/* 80299F98 00295BF8 80 E5 00 30 */ lwz r7, 0x30(r5) -/* 80299F9C 00295BFC 7C 08 02 14 */ add r0, r8, r0 -/* 80299FA0 00295C00 7C E0 3A 14 */ add r7, r0, r7 -/* 80299FA4 00295C04 38 E7 FF E2 */ addi r7, r7, -30 -/* 80299FA8 00295C08 2C 07 FC 78 */ cmpwi r7, -904 -/* 80299FAC 00295C0C 41 81 00 0C */ bgt lbl_80299FB8 -/* 80299FB0 00295C10 38 00 00 00 */ li r0, 0 -/* 80299FB4 00295C14 48 00 00 20 */ b lbl_80299FD4 -lbl_80299FB8: -/* 80299FB8 00295C18 2C 07 00 3C */ cmpwi r7, 0x3c -/* 80299FBC 00295C1C 41 80 00 0C */ blt lbl_80299FC8 -/* 80299FC0 00295C20 38 1D FF 64 */ addi r0, r29, -156 -/* 80299FC4 00295C24 48 00 00 10 */ b lbl_80299FD4 -lbl_80299FC8: -/* 80299FC8 00295C28 54 E0 08 3C */ slwi r0, r7, 1 -/* 80299FCC 00295C2C 7C FE 02 14 */ add r7, r30, r0 -/* 80299FD0 00295C30 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_80299FD4: -/* 80299FD4 00295C34 B0 05 00 6E */ sth r0, 0x6e(r5) -/* 80299FD8 00295C38 48 00 05 B8 */ b lbl_8029A590 -lbl_80299FDC: -/* 80299FDC 00295C3C 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 80299FE0 00295C40 80 05 00 20 */ lwz r0, 0x20(r5) -/* 80299FE4 00295C44 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 80299FE8 00295C48 7C 08 02 14 */ add r0, r8, r0 -/* 80299FEC 00295C4C 7C 07 02 14 */ add r0, r7, r0 -/* 80299FF0 00295C50 2C 00 FC 78 */ cmpwi r0, -904 -/* 80299FF4 00295C54 41 81 00 0C */ bgt lbl_8029A000 -/* 80299FF8 00295C58 38 00 00 00 */ li r0, 0 -/* 80299FFC 00295C5C 48 00 00 20 */ b lbl_8029A01C -lbl_8029A000: -/* 8029A000 00295C60 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A004 00295C64 41 80 00 0C */ blt lbl_8029A010 -/* 8029A008 00295C68 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A00C 00295C6C 48 00 00 10 */ b lbl_8029A01C -lbl_8029A010: -/* 8029A010 00295C70 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A014 00295C74 7C FE 02 14 */ add r7, r30, r0 -/* 8029A018 00295C78 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A01C: -/* 8029A01C 00295C7C B0 05 00 42 */ sth r0, 0x42(r5) -/* 8029A020 00295C80 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029A024 00295C84 80 05 00 20 */ lwz r0, 0x20(r5) -/* 8029A028 00295C88 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 8029A02C 00295C8C 7C 08 02 14 */ add r0, r8, r0 -/* 8029A030 00295C90 7C 07 02 14 */ add r0, r7, r0 -/* 8029A034 00295C94 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A038 00295C98 41 81 00 0C */ bgt lbl_8029A044 -/* 8029A03C 00295C9C 38 00 00 00 */ li r0, 0 -/* 8029A040 00295CA0 48 00 00 20 */ b lbl_8029A060 -lbl_8029A044: -/* 8029A044 00295CA4 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A048 00295CA8 41 80 00 0C */ blt lbl_8029A054 -/* 8029A04C 00295CAC 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A050 00295CB0 48 00 00 10 */ b lbl_8029A060 -lbl_8029A054: -/* 8029A054 00295CB4 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A058 00295CB8 7C FE 02 14 */ add r7, r30, r0 -/* 8029A05C 00295CBC A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A060: -/* 8029A060 00295CC0 B0 05 00 46 */ sth r0, 0x46(r5) -/* 8029A064 00295CC4 81 05 00 30 */ lwz r8, 0x30(r5) -/* 8029A068 00295CC8 80 05 00 20 */ lwz r0, 0x20(r5) -/* 8029A06C 00295CCC 80 E5 00 34 */ lwz r7, 0x34(r5) -/* 8029A070 00295CD0 7C 08 02 14 */ add r0, r8, r0 -/* 8029A074 00295CD4 7C 07 02 14 */ add r0, r7, r0 -/* 8029A078 00295CD8 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A07C 00295CDC 41 81 00 0C */ bgt lbl_8029A088 -/* 8029A080 00295CE0 38 00 00 00 */ li r0, 0 -/* 8029A084 00295CE4 48 00 00 20 */ b lbl_8029A0A4 -lbl_8029A088: -/* 8029A088 00295CE8 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A08C 00295CEC 41 80 00 0C */ blt lbl_8029A098 -/* 8029A090 00295CF0 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A094 00295CF4 48 00 00 10 */ b lbl_8029A0A4 -lbl_8029A098: -/* 8029A098 00295CF8 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A09C 00295CFC 7C FE 02 14 */ add r7, r30, r0 -/* 8029A0A0 00295D00 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A0A4: -/* 8029A0A4 00295D04 B0 05 00 4A */ sth r0, 0x4a(r5) -/* 8029A0A8 00295D08 81 05 00 30 */ lwz r8, 0x30(r5) -/* 8029A0AC 00295D0C 80 05 00 20 */ lwz r0, 0x20(r5) -/* 8029A0B0 00295D10 80 E5 00 38 */ lwz r7, 0x38(r5) -/* 8029A0B4 00295D14 7C 08 02 14 */ add r0, r8, r0 -/* 8029A0B8 00295D18 7C 07 02 14 */ add r0, r7, r0 -/* 8029A0BC 00295D1C 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A0C0 00295D20 41 81 00 0C */ bgt lbl_8029A0CC -/* 8029A0C4 00295D24 38 00 00 00 */ li r0, 0 -/* 8029A0C8 00295D28 48 00 00 20 */ b lbl_8029A0E8 -lbl_8029A0CC: -/* 8029A0CC 00295D2C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A0D0 00295D30 41 80 00 0C */ blt lbl_8029A0DC -/* 8029A0D4 00295D34 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A0D8 00295D38 48 00 00 10 */ b lbl_8029A0E8 -lbl_8029A0DC: -/* 8029A0DC 00295D3C 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A0E0 00295D40 7C FE 02 14 */ add r7, r30, r0 -/* 8029A0E4 00295D44 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A0E8: -/* 8029A0E8 00295D48 B0 05 00 66 */ sth r0, 0x66(r5) -/* 8029A0EC 00295D4C 80 05 00 04 */ lwz r0, 4(r5) -/* 8029A0F0 00295D50 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8029A0F4 00295D54 41 82 01 18 */ beq lbl_8029A20C -/* 8029A0F8 00295D58 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029A0FC 00295D5C 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A100 00295D60 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 8029A104 00295D64 7C 08 02 14 */ add r0, r8, r0 -/* 8029A108 00295D68 7C 07 02 14 */ add r0, r7, r0 -/* 8029A10C 00295D6C 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A110 00295D70 41 81 00 0C */ bgt lbl_8029A11C -/* 8029A114 00295D74 38 00 00 00 */ li r0, 0 -/* 8029A118 00295D78 48 00 00 20 */ b lbl_8029A138 -lbl_8029A11C: -/* 8029A11C 00295D7C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A120 00295D80 41 80 00 0C */ blt lbl_8029A12C -/* 8029A124 00295D84 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A128 00295D88 48 00 00 10 */ b lbl_8029A138 -lbl_8029A12C: -/* 8029A12C 00295D8C 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A130 00295D90 7C FE 02 14 */ add r7, r30, r0 -/* 8029A134 00295D94 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A138: -/* 8029A138 00295D98 B0 05 00 4E */ sth r0, 0x4e(r5) -/* 8029A13C 00295D9C 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029A140 00295DA0 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A144 00295DA4 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 8029A148 00295DA8 7C 08 02 14 */ add r0, r8, r0 -/* 8029A14C 00295DAC 7C 07 02 14 */ add r0, r7, r0 -/* 8029A150 00295DB0 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A154 00295DB4 41 81 00 0C */ bgt lbl_8029A160 -/* 8029A158 00295DB8 38 00 00 00 */ li r0, 0 -/* 8029A15C 00295DBC 48 00 00 20 */ b lbl_8029A17C -lbl_8029A160: -/* 8029A160 00295DC0 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A164 00295DC4 41 80 00 0C */ blt lbl_8029A170 -/* 8029A168 00295DC8 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A16C 00295DCC 48 00 00 10 */ b lbl_8029A17C -lbl_8029A170: -/* 8029A170 00295DD0 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A174 00295DD4 7C FE 02 14 */ add r7, r30, r0 -/* 8029A178 00295DD8 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A17C: -/* 8029A17C 00295DDC B0 05 00 52 */ sth r0, 0x52(r5) -/* 8029A180 00295DE0 81 05 00 30 */ lwz r8, 0x30(r5) -/* 8029A184 00295DE4 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A188 00295DE8 80 E5 00 34 */ lwz r7, 0x34(r5) -/* 8029A18C 00295DEC 7C 08 02 14 */ add r0, r8, r0 -/* 8029A190 00295DF0 7C 07 02 14 */ add r0, r7, r0 -/* 8029A194 00295DF4 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A198 00295DF8 41 81 00 0C */ bgt lbl_8029A1A4 -/* 8029A19C 00295DFC 38 00 00 00 */ li r0, 0 -/* 8029A1A0 00295E00 48 00 00 20 */ b lbl_8029A1C0 -lbl_8029A1A4: -/* 8029A1A4 00295E04 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A1A8 00295E08 41 80 00 0C */ blt lbl_8029A1B4 -/* 8029A1AC 00295E0C 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A1B0 00295E10 48 00 00 10 */ b lbl_8029A1C0 -lbl_8029A1B4: -/* 8029A1B4 00295E14 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A1B8 00295E18 7C FE 02 14 */ add r7, r30, r0 -/* 8029A1BC 00295E1C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A1C0: -/* 8029A1C0 00295E20 B0 05 00 56 */ sth r0, 0x56(r5) -/* 8029A1C4 00295E24 81 05 00 30 */ lwz r8, 0x30(r5) -/* 8029A1C8 00295E28 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A1CC 00295E2C 80 E5 00 38 */ lwz r7, 0x38(r5) -/* 8029A1D0 00295E30 7C 08 02 14 */ add r0, r8, r0 -/* 8029A1D4 00295E34 7C 07 02 14 */ add r0, r7, r0 -/* 8029A1D8 00295E38 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A1DC 00295E3C 41 81 00 0C */ bgt lbl_8029A1E8 -/* 8029A1E0 00295E40 38 00 00 00 */ li r0, 0 -/* 8029A1E4 00295E44 48 00 00 20 */ b lbl_8029A204 -lbl_8029A1E8: -/* 8029A1E8 00295E48 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A1EC 00295E4C 41 80 00 0C */ blt lbl_8029A1F8 -/* 8029A1F0 00295E50 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A1F4 00295E54 48 00 00 10 */ b lbl_8029A204 -lbl_8029A1F8: -/* 8029A1F8 00295E58 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A1FC 00295E5C 7C FE 02 14 */ add r7, r30, r0 -/* 8029A200 00295E60 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A204: -/* 8029A204 00295E64 B0 05 00 6A */ sth r0, 0x6a(r5) -/* 8029A208 00295E68 48 00 01 34 */ b lbl_8029A33C -lbl_8029A20C: -/* 8029A20C 00295E6C 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 8029A210 00295E70 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 8029A214 00295E74 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A218 00295E78 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A21C 00295E7C 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A220 00295E80 7C 08 02 14 */ add r0, r8, r0 -/* 8029A224 00295E84 7C 07 02 14 */ add r0, r7, r0 -/* 8029A228 00295E88 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A22C 00295E8C 41 81 00 0C */ bgt lbl_8029A238 -/* 8029A230 00295E90 38 00 00 00 */ li r0, 0 -/* 8029A234 00295E94 48 00 00 20 */ b lbl_8029A254 -lbl_8029A238: -/* 8029A238 00295E98 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A23C 00295E9C 41 80 00 0C */ blt lbl_8029A248 -/* 8029A240 00295EA0 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A244 00295EA4 48 00 00 10 */ b lbl_8029A254 -lbl_8029A248: -/* 8029A248 00295EA8 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A24C 00295EAC 7C FE 02 14 */ add r7, r30, r0 -/* 8029A250 00295EB0 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A254: -/* 8029A254 00295EB4 B0 05 00 4E */ sth r0, 0x4e(r5) -/* 8029A258 00295EB8 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 8029A25C 00295EBC 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 8029A260 00295EC0 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A264 00295EC4 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A268 00295EC8 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A26C 00295ECC 7C 08 02 14 */ add r0, r8, r0 -/* 8029A270 00295ED0 7C 07 02 14 */ add r0, r7, r0 -/* 8029A274 00295ED4 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A278 00295ED8 41 81 00 0C */ bgt lbl_8029A284 -/* 8029A27C 00295EDC 38 00 00 00 */ li r0, 0 -/* 8029A280 00295EE0 48 00 00 20 */ b lbl_8029A2A0 -lbl_8029A284: -/* 8029A284 00295EE4 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A288 00295EE8 41 80 00 0C */ blt lbl_8029A294 -/* 8029A28C 00295EEC 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A290 00295EF0 48 00 00 10 */ b lbl_8029A2A0 -lbl_8029A294: -/* 8029A294 00295EF4 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A298 00295EF8 7C FE 02 14 */ add r7, r30, r0 -/* 8029A29C 00295EFC A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A2A0: -/* 8029A2A0 00295F00 B0 05 00 52 */ sth r0, 0x52(r5) -/* 8029A2A4 00295F04 81 25 00 30 */ lwz r9, 0x30(r5) -/* 8029A2A8 00295F08 80 E5 00 34 */ lwz r7, 0x34(r5) -/* 8029A2AC 00295F0C 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A2B0 00295F10 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A2B4 00295F14 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A2B8 00295F18 7C 08 02 14 */ add r0, r8, r0 -/* 8029A2BC 00295F1C 7C 07 02 14 */ add r0, r7, r0 -/* 8029A2C0 00295F20 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A2C4 00295F24 41 81 00 0C */ bgt lbl_8029A2D0 -/* 8029A2C8 00295F28 38 00 00 00 */ li r0, 0 -/* 8029A2CC 00295F2C 48 00 00 20 */ b lbl_8029A2EC -lbl_8029A2D0: -/* 8029A2D0 00295F30 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A2D4 00295F34 41 80 00 0C */ blt lbl_8029A2E0 -/* 8029A2D8 00295F38 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A2DC 00295F3C 48 00 00 10 */ b lbl_8029A2EC -lbl_8029A2E0: -/* 8029A2E0 00295F40 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A2E4 00295F44 7C FE 02 14 */ add r7, r30, r0 -/* 8029A2E8 00295F48 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A2EC: -/* 8029A2EC 00295F4C B0 05 00 56 */ sth r0, 0x56(r5) -/* 8029A2F0 00295F50 81 25 00 30 */ lwz r9, 0x30(r5) -/* 8029A2F4 00295F54 80 E5 00 38 */ lwz r7, 0x38(r5) -/* 8029A2F8 00295F58 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A2FC 00295F5C 80 05 00 0C */ lwz r0, 0xc(r5) -/* 8029A300 00295F60 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A304 00295F64 7C 08 02 14 */ add r0, r8, r0 -/* 8029A308 00295F68 7C 07 02 14 */ add r0, r7, r0 -/* 8029A30C 00295F6C 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A310 00295F70 41 81 00 0C */ bgt lbl_8029A31C -/* 8029A314 00295F74 38 00 00 00 */ li r0, 0 -/* 8029A318 00295F78 48 00 00 20 */ b lbl_8029A338 -lbl_8029A31C: -/* 8029A31C 00295F7C 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A320 00295F80 41 80 00 0C */ blt lbl_8029A32C -/* 8029A324 00295F84 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A328 00295F88 48 00 00 10 */ b lbl_8029A338 -lbl_8029A32C: -/* 8029A32C 00295F8C 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A330 00295F90 7C FE 02 14 */ add r7, r30, r0 -/* 8029A334 00295F94 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A338: -/* 8029A338 00295F98 B0 05 00 6A */ sth r0, 0x6a(r5) -lbl_8029A33C: -/* 8029A33C 00295F9C 80 05 00 04 */ lwz r0, 4(r5) -/* 8029A340 00295FA0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 8029A344 00295FA4 41 82 01 18 */ beq lbl_8029A45C -/* 8029A348 00295FA8 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029A34C 00295FAC 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A350 00295FB0 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 8029A354 00295FB4 7C 08 02 14 */ add r0, r8, r0 -/* 8029A358 00295FB8 7C 07 02 14 */ add r0, r7, r0 -/* 8029A35C 00295FBC 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A360 00295FC0 41 81 00 0C */ bgt lbl_8029A36C -/* 8029A364 00295FC4 38 00 00 00 */ li r0, 0 -/* 8029A368 00295FC8 48 00 00 20 */ b lbl_8029A388 -lbl_8029A36C: -/* 8029A36C 00295FCC 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A370 00295FD0 41 80 00 0C */ blt lbl_8029A37C -/* 8029A374 00295FD4 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A378 00295FD8 48 00 00 10 */ b lbl_8029A388 -lbl_8029A37C: -/* 8029A37C 00295FDC 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A380 00295FE0 7C FE 02 14 */ add r7, r30, r0 -/* 8029A384 00295FE4 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A388: -/* 8029A388 00295FE8 B0 05 00 5A */ sth r0, 0x5a(r5) -/* 8029A38C 00295FEC 81 05 00 2C */ lwz r8, 0x2c(r5) -/* 8029A390 00295FF0 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A394 00295FF4 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 8029A398 00295FF8 7C 08 02 14 */ add r0, r8, r0 -/* 8029A39C 00295FFC 7C 07 02 14 */ add r0, r7, r0 -/* 8029A3A0 00296000 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A3A4 00296004 41 81 00 0C */ bgt lbl_8029A3B0 -/* 8029A3A8 00296008 38 00 00 00 */ li r0, 0 -/* 8029A3AC 0029600C 48 00 00 20 */ b lbl_8029A3CC -lbl_8029A3B0: -/* 8029A3B0 00296010 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A3B4 00296014 41 80 00 0C */ blt lbl_8029A3C0 -/* 8029A3B8 00296018 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A3BC 0029601C 48 00 00 10 */ b lbl_8029A3CC -lbl_8029A3C0: -/* 8029A3C0 00296020 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A3C4 00296024 7C FE 02 14 */ add r7, r30, r0 -/* 8029A3C8 00296028 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A3CC: -/* 8029A3CC 0029602C B0 05 00 5E */ sth r0, 0x5e(r5) -/* 8029A3D0 00296030 81 05 00 30 */ lwz r8, 0x30(r5) -/* 8029A3D4 00296034 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A3D8 00296038 80 E5 00 34 */ lwz r7, 0x34(r5) -/* 8029A3DC 0029603C 7C 08 02 14 */ add r0, r8, r0 -/* 8029A3E0 00296040 7C 07 02 14 */ add r0, r7, r0 -/* 8029A3E4 00296044 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A3E8 00296048 41 81 00 0C */ bgt lbl_8029A3F4 -/* 8029A3EC 0029604C 38 00 00 00 */ li r0, 0 -/* 8029A3F0 00296050 48 00 00 20 */ b lbl_8029A410 -lbl_8029A3F4: -/* 8029A3F4 00296054 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A3F8 00296058 41 80 00 0C */ blt lbl_8029A404 -/* 8029A3FC 0029605C 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A400 00296060 48 00 00 10 */ b lbl_8029A410 -lbl_8029A404: -/* 8029A404 00296064 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A408 00296068 7C FE 02 14 */ add r7, r30, r0 -/* 8029A40C 0029606C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A410: -/* 8029A410 00296070 B0 05 00 62 */ sth r0, 0x62(r5) -/* 8029A414 00296074 81 05 00 30 */ lwz r8, 0x30(r5) -/* 8029A418 00296078 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A41C 0029607C 80 E5 00 38 */ lwz r7, 0x38(r5) -/* 8029A420 00296080 7C 08 02 14 */ add r0, r8, r0 -/* 8029A424 00296084 7C 07 02 14 */ add r0, r7, r0 -/* 8029A428 00296088 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A42C 0029608C 41 81 00 0C */ bgt lbl_8029A438 -/* 8029A430 00296090 38 00 00 00 */ li r0, 0 -/* 8029A434 00296094 48 00 00 20 */ b lbl_8029A454 -lbl_8029A438: -/* 8029A438 00296098 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A43C 0029609C 41 80 00 0C */ blt lbl_8029A448 -/* 8029A440 002960A0 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A444 002960A4 48 00 00 10 */ b lbl_8029A454 -lbl_8029A448: -/* 8029A448 002960A8 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A44C 002960AC 7C FE 02 14 */ add r7, r30, r0 -/* 8029A450 002960B0 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A454: -/* 8029A454 002960B4 B0 05 00 6E */ sth r0, 0x6e(r5) -/* 8029A458 002960B8 48 00 01 34 */ b lbl_8029A58C -lbl_8029A45C: -/* 8029A45C 002960BC 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 8029A460 002960C0 80 E5 00 24 */ lwz r7, 0x24(r5) -/* 8029A464 002960C4 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A468 002960C8 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A46C 002960CC 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A470 002960D0 7C 08 02 14 */ add r0, r8, r0 -/* 8029A474 002960D4 7C 07 02 14 */ add r0, r7, r0 -/* 8029A478 002960D8 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A47C 002960DC 41 81 00 0C */ bgt lbl_8029A488 -/* 8029A480 002960E0 38 00 00 00 */ li r0, 0 -/* 8029A484 002960E4 48 00 00 20 */ b lbl_8029A4A4 -lbl_8029A488: -/* 8029A488 002960E8 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A48C 002960EC 41 80 00 0C */ blt lbl_8029A498 -/* 8029A490 002960F0 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A494 002960F4 48 00 00 10 */ b lbl_8029A4A4 -lbl_8029A498: -/* 8029A498 002960F8 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A49C 002960FC 7C FE 02 14 */ add r7, r30, r0 -/* 8029A4A0 00296100 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A4A4: -/* 8029A4A4 00296104 B0 05 00 5A */ sth r0, 0x5a(r5) -/* 8029A4A8 00296108 81 25 00 2C */ lwz r9, 0x2c(r5) -/* 8029A4AC 0029610C 80 E5 00 28 */ lwz r7, 0x28(r5) -/* 8029A4B0 00296110 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A4B4 00296114 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A4B8 00296118 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A4BC 0029611C 7C 08 02 14 */ add r0, r8, r0 -/* 8029A4C0 00296120 7C 07 02 14 */ add r0, r7, r0 -/* 8029A4C4 00296124 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A4C8 00296128 41 81 00 0C */ bgt lbl_8029A4D4 -/* 8029A4CC 0029612C 38 00 00 00 */ li r0, 0 -/* 8029A4D0 00296130 48 00 00 20 */ b lbl_8029A4F0 -lbl_8029A4D4: -/* 8029A4D4 00296134 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A4D8 00296138 41 80 00 0C */ blt lbl_8029A4E4 -/* 8029A4DC 0029613C 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A4E0 00296140 48 00 00 10 */ b lbl_8029A4F0 -lbl_8029A4E4: -/* 8029A4E4 00296144 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A4E8 00296148 7C FE 02 14 */ add r7, r30, r0 -/* 8029A4EC 0029614C A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A4F0: -/* 8029A4F0 00296150 B0 05 00 5E */ sth r0, 0x5e(r5) -/* 8029A4F4 00296154 81 25 00 30 */ lwz r9, 0x30(r5) -/* 8029A4F8 00296158 80 E5 00 34 */ lwz r7, 0x34(r5) -/* 8029A4FC 0029615C 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A500 00296160 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A504 00296164 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A508 00296168 7C 08 02 14 */ add r0, r8, r0 -/* 8029A50C 0029616C 7C 07 02 14 */ add r0, r7, r0 -/* 8029A510 00296170 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A514 00296174 41 81 00 0C */ bgt lbl_8029A520 -/* 8029A518 00296178 38 00 00 00 */ li r0, 0 -/* 8029A51C 0029617C 48 00 00 20 */ b lbl_8029A53C -lbl_8029A520: -/* 8029A520 00296180 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A524 00296184 41 80 00 0C */ blt lbl_8029A530 -/* 8029A528 00296188 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A52C 0029618C 48 00 00 10 */ b lbl_8029A53C -lbl_8029A530: -/* 8029A530 00296190 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A534 00296194 7C FE 02 14 */ add r7, r30, r0 -/* 8029A538 00296198 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A53C: -/* 8029A53C 0029619C B0 05 00 62 */ sth r0, 0x62(r5) -/* 8029A540 002961A0 81 25 00 30 */ lwz r9, 0x30(r5) -/* 8029A544 002961A4 80 E5 00 38 */ lwz r7, 0x38(r5) -/* 8029A548 002961A8 81 05 00 20 */ lwz r8, 0x20(r5) -/* 8029A54C 002961AC 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8029A550 002961B0 7C E9 3A 14 */ add r7, r9, r7 -/* 8029A554 002961B4 7C 08 02 14 */ add r0, r8, r0 -/* 8029A558 002961B8 7C 07 02 14 */ add r0, r7, r0 -/* 8029A55C 002961BC 2C 00 FC 78 */ cmpwi r0, -904 -/* 8029A560 002961C0 41 81 00 0C */ bgt lbl_8029A56C -/* 8029A564 002961C4 38 00 00 00 */ li r0, 0 -/* 8029A568 002961C8 48 00 00 20 */ b lbl_8029A588 -lbl_8029A56C: -/* 8029A56C 002961CC 2C 00 00 3C */ cmpwi r0, 0x3c -/* 8029A570 002961D0 41 80 00 0C */ blt lbl_8029A57C -/* 8029A574 002961D4 38 1D FF 64 */ addi r0, r29, -156 -/* 8029A578 002961D8 48 00 00 10 */ b lbl_8029A588 -lbl_8029A57C: -/* 8029A57C 002961DC 54 00 08 3C */ slwi r0, r0, 1 -/* 8029A580 002961E0 7C FE 02 14 */ add r7, r30, r0 -/* 8029A584 002961E4 A0 07 07 10 */ lhz r0, 0x710(r7) -lbl_8029A588: -/* 8029A588 002961E8 B0 05 00 6E */ sth r0, 0x6e(r5) -lbl_8029A58C: -/* 8029A58C 002961EC 64 C6 80 00 */ oris r6, r6, 0x8000 -lbl_8029A590: -/* 8029A590 002961F0 80 E5 00 04 */ lwz r7, 4(r5) -/* 8029A594 002961F4 38 00 00 01 */ li r0, 1 -/* 8029A598 002961F8 54 E7 00 80 */ rlwinm r7, r7, 0, 2, 0 -/* 8029A59C 002961FC 64 E7 80 00 */ oris r7, r7, 0x8000 -/* 8029A5A0 00296200 90 E5 00 04 */ stw r7, 4(r5) -lbl_8029A5A4: -/* 8029A5A4 00296204 2C 03 00 00 */ cmpwi r3, 0 -/* 8029A5A8 00296208 41 82 00 3C */ beq lbl_8029A5E4 -/* 8029A5AC 0029620C A0 65 00 3C */ lhz r3, 0x3c(r5) -/* 8029A5B0 00296210 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A5B4 00296214 B0 64 00 92 */ sth r3, 0x92(r4) -/* 8029A5B8 00296218 A0 E5 00 3C */ lhz r7, 0x3c(r5) -/* 8029A5BC 0029621C A0 65 00 3E */ lhz r3, 0x3e(r5) -/* 8029A5C0 00296220 7C 67 18 50 */ subf r3, r7, r3 -/* 8029A5C4 00296224 7C 68 18 96 */ mulhw r3, r8, r3 -/* 8029A5C8 00296228 7C 63 26 70 */ srawi r3, r3, 4 -/* 8029A5CC 0029622C 54 67 0F FE */ srwi r7, r3, 0x1f -/* 8029A5D0 00296230 7C 63 3A 14 */ add r3, r3, r7 -/* 8029A5D4 00296234 B0 64 00 94 */ sth r3, 0x94(r4) -/* 8029A5D8 00296238 80 64 00 1C */ lwz r3, 0x1c(r4) -/* 8029A5DC 0029623C 60 63 01 00 */ ori r3, r3, 0x100 -/* 8029A5E0 00296240 90 64 00 1C */ stw r3, 0x1c(r4) -lbl_8029A5E4: -/* 8029A5E4 00296244 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A5E8 00296248 41 82 03 48 */ beq lbl_8029A930 -/* 8029A5EC 0029624C A0 05 00 40 */ lhz r0, 0x40(r5) -/* 8029A5F0 00296250 38 64 00 3E */ addi r3, r4, 0x3e -/* 8029A5F4 00296254 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A5F8 00296258 B0 04 00 3C */ sth r0, 0x3c(r4) -/* 8029A5FC 0029625C 41 82 00 08 */ beq lbl_8029A604 -/* 8029A600 00296260 60 C6 00 01 */ ori r6, r6, 1 -lbl_8029A604: -/* 8029A604 00296264 A0 E5 00 40 */ lhz r7, 0x40(r5) -/* 8029A608 00296268 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A60C 0029626C A0 05 00 42 */ lhz r0, 0x42(r5) -/* 8029A610 00296270 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A614 00296274 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A618 00296278 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A61C 0029627C 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A620 00296280 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A624 00296284 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A628 00296288 B0 E3 00 00 */ sth r7, 0(r3) -/* 8029A62C 0029628C 41 82 00 08 */ beq lbl_8029A634 -/* 8029A630 00296290 60 C6 00 04 */ ori r6, r6, 4 -lbl_8029A634: -/* 8029A634 00296294 A0 05 00 44 */ lhz r0, 0x44(r5) -/* 8029A638 00296298 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A63C 0029629C B0 03 00 02 */ sth r0, 2(r3) -/* 8029A640 002962A0 41 82 00 08 */ beq lbl_8029A648 -/* 8029A644 002962A4 60 C6 00 02 */ ori r6, r6, 2 -lbl_8029A648: -/* 8029A648 002962A8 A0 E5 00 44 */ lhz r7, 0x44(r5) -/* 8029A64C 002962AC 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A650 002962B0 A0 05 00 46 */ lhz r0, 0x46(r5) -/* 8029A654 002962B4 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A658 002962B8 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A65C 002962BC 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A660 002962C0 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A664 002962C4 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A668 002962C8 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A66C 002962CC B0 E3 00 04 */ sth r7, 4(r3) -/* 8029A670 002962D0 41 82 00 08 */ beq lbl_8029A678 -/* 8029A674 002962D4 60 C6 00 04 */ ori r6, r6, 4 -lbl_8029A678: -/* 8029A678 002962D8 A0 05 00 4C */ lhz r0, 0x4c(r5) -/* 8029A67C 002962DC 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A680 002962E0 B0 03 00 06 */ sth r0, 6(r3) -/* 8029A684 002962E4 41 82 00 08 */ beq lbl_8029A68C -/* 8029A688 002962E8 64 C6 00 01 */ oris r6, r6, 1 -lbl_8029A68C: -/* 8029A68C 002962EC A0 E5 00 4C */ lhz r7, 0x4c(r5) -/* 8029A690 002962F0 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A694 002962F4 A0 05 00 4E */ lhz r0, 0x4e(r5) -/* 8029A698 002962F8 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A69C 002962FC 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A6A0 00296300 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A6A4 00296304 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A6A8 00296308 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A6AC 0029630C 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A6B0 00296310 B0 E3 00 08 */ sth r7, 8(r3) -/* 8029A6B4 00296314 41 82 00 08 */ beq lbl_8029A6BC -/* 8029A6B8 00296318 64 C6 00 04 */ oris r6, r6, 4 -lbl_8029A6BC: -/* 8029A6BC 0029631C A0 05 00 50 */ lhz r0, 0x50(r5) -/* 8029A6C0 00296320 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A6C4 00296324 B0 03 00 0A */ sth r0, 0xa(r3) -/* 8029A6C8 00296328 41 82 00 08 */ beq lbl_8029A6D0 -/* 8029A6CC 0029632C 64 C6 00 02 */ oris r6, r6, 2 -lbl_8029A6D0: -/* 8029A6D0 00296330 A0 E5 00 50 */ lhz r7, 0x50(r5) -/* 8029A6D4 00296334 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A6D8 00296338 A0 05 00 52 */ lhz r0, 0x52(r5) -/* 8029A6DC 0029633C 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A6E0 00296340 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A6E4 00296344 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A6E8 00296348 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A6EC 0029634C 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A6F0 00296350 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A6F4 00296354 B0 E3 00 0C */ sth r7, 0xc(r3) -/* 8029A6F8 00296358 41 82 00 08 */ beq lbl_8029A700 -/* 8029A6FC 0029635C 64 C6 00 04 */ oris r6, r6, 4 -lbl_8029A700: -/* 8029A700 00296360 A0 05 00 58 */ lhz r0, 0x58(r5) -/* 8029A704 00296364 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A708 00296368 B0 03 00 0E */ sth r0, 0xe(r3) -/* 8029A70C 0029636C 41 82 00 08 */ beq lbl_8029A714 -/* 8029A710 00296370 64 C6 00 20 */ oris r6, r6, 0x20 -lbl_8029A714: -/* 8029A714 00296374 A0 E5 00 58 */ lhz r7, 0x58(r5) -/* 8029A718 00296378 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A71C 0029637C A0 05 00 5A */ lhz r0, 0x5a(r5) -/* 8029A720 00296380 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A724 00296384 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A728 00296388 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A72C 0029638C 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A730 00296390 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A734 00296394 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A738 00296398 B0 E3 00 10 */ sth r7, 0x10(r3) -/* 8029A73C 0029639C 41 82 00 08 */ beq lbl_8029A744 -/* 8029A740 002963A0 64 C6 00 80 */ oris r6, r6, 0x80 -lbl_8029A744: -/* 8029A744 002963A4 A0 05 00 5C */ lhz r0, 0x5c(r5) -/* 8029A748 002963A8 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A74C 002963AC B0 03 00 12 */ sth r0, 0x12(r3) -/* 8029A750 002963B0 41 82 00 08 */ beq lbl_8029A758 -/* 8029A754 002963B4 64 C6 00 40 */ oris r6, r6, 0x40 -lbl_8029A758: -/* 8029A758 002963B8 A0 E5 00 5C */ lhz r7, 0x5c(r5) -/* 8029A75C 002963BC 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A760 002963C0 A0 05 00 5E */ lhz r0, 0x5e(r5) -/* 8029A764 002963C4 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A768 002963C8 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A76C 002963CC 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A770 002963D0 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A774 002963D4 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A778 002963D8 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A77C 002963DC B0 E3 00 14 */ sth r7, 0x14(r3) -/* 8029A780 002963E0 41 82 00 08 */ beq lbl_8029A788 -/* 8029A784 002963E4 64 C6 00 80 */ oris r6, r6, 0x80 -lbl_8029A788: -/* 8029A788 002963E8 A0 05 00 64 */ lhz r0, 0x64(r5) -/* 8029A78C 002963EC 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A790 002963F0 B0 03 00 16 */ sth r0, 0x16(r3) -/* 8029A794 002963F4 41 82 00 08 */ beq lbl_8029A79C -/* 8029A798 002963F8 64 C6 04 00 */ oris r6, r6, 0x400 -lbl_8029A79C: -/* 8029A79C 002963FC A0 E5 00 64 */ lhz r7, 0x64(r5) -/* 8029A7A0 00296400 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A7A4 00296404 A0 05 00 66 */ lhz r0, 0x66(r5) -/* 8029A7A8 00296408 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A7AC 0029640C 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A7B0 00296410 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A7B4 00296414 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A7B8 00296418 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A7BC 0029641C 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A7C0 00296420 B0 E3 00 18 */ sth r7, 0x18(r3) -/* 8029A7C4 00296424 41 82 00 08 */ beq lbl_8029A7CC -/* 8029A7C8 00296428 64 C6 10 00 */ oris r6, r6, 0x1000 -lbl_8029A7CC: -/* 8029A7CC 0029642C A0 05 00 68 */ lhz r0, 0x68(r5) -/* 8029A7D0 00296430 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A7D4 00296434 B0 03 00 1A */ sth r0, 0x1a(r3) -/* 8029A7D8 00296438 41 82 00 08 */ beq lbl_8029A7E0 -/* 8029A7DC 0029643C 64 C6 08 00 */ oris r6, r6, 0x800 -lbl_8029A7E0: -/* 8029A7E0 00296440 A0 E5 00 68 */ lhz r7, 0x68(r5) -/* 8029A7E4 00296444 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A7E8 00296448 A0 05 00 6A */ lhz r0, 0x6a(r5) -/* 8029A7EC 0029644C 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A7F0 00296450 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A7F4 00296454 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A7F8 00296458 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A7FC 0029645C 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A800 00296460 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A804 00296464 B0 E3 00 1C */ sth r7, 0x1c(r3) -/* 8029A808 00296468 41 82 00 08 */ beq lbl_8029A810 -/* 8029A80C 0029646C 64 C6 10 00 */ oris r6, r6, 0x1000 -lbl_8029A810: -/* 8029A810 00296470 A0 05 00 48 */ lhz r0, 0x48(r5) -/* 8029A814 00296474 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A818 00296478 B0 03 00 1E */ sth r0, 0x1e(r3) -/* 8029A81C 0029647C 41 82 00 08 */ beq lbl_8029A824 -/* 8029A820 00296480 60 C6 00 08 */ ori r6, r6, 8 -lbl_8029A824: -/* 8029A824 00296484 A0 E5 00 48 */ lhz r7, 0x48(r5) -/* 8029A828 00296488 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A82C 0029648C A0 05 00 4A */ lhz r0, 0x4a(r5) -/* 8029A830 00296490 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A834 00296494 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A838 00296498 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A83C 0029649C 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A840 002964A0 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A844 002964A4 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A848 002964A8 B0 E3 00 20 */ sth r7, 0x20(r3) -/* 8029A84C 002964AC 41 82 00 08 */ beq lbl_8029A854 -/* 8029A850 002964B0 60 C6 00 10 */ ori r6, r6, 0x10 -lbl_8029A854: -/* 8029A854 002964B4 A0 05 00 54 */ lhz r0, 0x54(r5) -/* 8029A858 002964B8 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A85C 002964BC B0 03 00 22 */ sth r0, 0x22(r3) -/* 8029A860 002964C0 41 82 00 08 */ beq lbl_8029A868 -/* 8029A864 002964C4 64 C6 00 08 */ oris r6, r6, 8 -lbl_8029A868: -/* 8029A868 002964C8 A0 E5 00 54 */ lhz r7, 0x54(r5) -/* 8029A86C 002964CC 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A870 002964D0 A0 05 00 56 */ lhz r0, 0x56(r5) -/* 8029A874 002964D4 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A878 002964D8 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A87C 002964DC 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A880 002964E0 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A884 002964E4 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A888 002964E8 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A88C 002964EC B0 E3 00 24 */ sth r7, 0x24(r3) -/* 8029A890 002964F0 41 82 00 08 */ beq lbl_8029A898 -/* 8029A894 002964F4 64 C6 00 10 */ oris r6, r6, 0x10 -lbl_8029A898: -/* 8029A898 002964F8 A0 05 00 60 */ lhz r0, 0x60(r5) -/* 8029A89C 002964FC 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A8A0 00296500 B0 03 00 26 */ sth r0, 0x26(r3) -/* 8029A8A4 00296504 41 82 00 08 */ beq lbl_8029A8AC -/* 8029A8A8 00296508 64 C6 01 00 */ oris r6, r6, 0x100 -lbl_8029A8AC: -/* 8029A8AC 0029650C A0 E5 00 60 */ lhz r7, 0x60(r5) -/* 8029A8B0 00296510 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A8B4 00296514 A0 05 00 62 */ lhz r0, 0x62(r5) -/* 8029A8B8 00296518 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A8BC 0029651C 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A8C0 00296520 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A8C4 00296524 54 07 0F FE */ srwi r7, r0, 0x1f -/* 8029A8C8 00296528 7C E0 3A 14 */ add r7, r0, r7 -/* 8029A8CC 0029652C 54 E0 04 3F */ clrlwi. r0, r7, 0x10 -/* 8029A8D0 00296530 B0 E3 00 28 */ sth r7, 0x28(r3) -/* 8029A8D4 00296534 41 82 00 08 */ beq lbl_8029A8DC -/* 8029A8D8 00296538 64 C6 02 00 */ oris r6, r6, 0x200 -lbl_8029A8DC: -/* 8029A8DC 0029653C A0 05 00 6C */ lhz r0, 0x6c(r5) -/* 8029A8E0 00296540 2C 00 00 00 */ cmpwi r0, 0 -/* 8029A8E4 00296544 B0 03 00 2A */ sth r0, 0x2a(r3) -/* 8029A8E8 00296548 41 82 00 08 */ beq lbl_8029A8F0 -/* 8029A8EC 0029654C 64 C6 20 00 */ oris r6, r6, 0x2000 -lbl_8029A8F0: -/* 8029A8F0 00296550 A0 E5 00 6C */ lhz r7, 0x6c(r5) -/* 8029A8F4 00296554 39 1F AA AB */ addi r8, r31, -21845 -/* 8029A8F8 00296558 A0 05 00 6E */ lhz r0, 0x6e(r5) -/* 8029A8FC 0029655C 7C 07 00 50 */ subf r0, r7, r0 -/* 8029A900 00296560 7C 08 00 96 */ mulhw r0, r8, r0 -/* 8029A904 00296564 7C 00 26 70 */ srawi r0, r0, 4 -/* 8029A908 00296568 54 05 0F FE */ srwi r5, r0, 0x1f -/* 8029A90C 0029656C 7C A0 2A 14 */ add r5, r0, r5 -/* 8029A910 00296570 54 A0 04 3F */ clrlwi. r0, r5, 0x10 -/* 8029A914 00296574 B0 A3 00 2C */ sth r5, 0x2c(r3) -/* 8029A918 00296578 41 82 00 08 */ beq lbl_8029A920 -/* 8029A91C 0029657C 64 C6 40 00 */ oris r6, r6, 0x4000 -lbl_8029A920: -/* 8029A920 00296580 90 C4 00 34 */ stw r6, 0x34(r4) -/* 8029A924 00296584 80 04 00 1C */ lwz r0, 0x1c(r4) -/* 8029A928 00296588 60 00 00 12 */ ori r0, r0, 0x12 -/* 8029A92C 0029658C 90 04 00 1C */ stw r0, 0x1c(r4) -lbl_8029A930: -/* 8029A930 00296590 7F 43 D3 78 */ mr r3, r26 -/* 8029A934 00296594 48 00 00 31 */ bl func_8029A964 -lbl_8029A938: -/* 8029A938 00296598 3B 7B 00 70 */ addi r27, r27, 0x70 -/* 8029A93C 0029659C 3B 5A 00 01 */ addi r26, r26, 1 -lbl_8029A940: -/* 8029A940 002965A0 80 0D AC 58 */ lwz r0, lbl_8063FF18-_SDA_BASE_(r13) -/* 8029A944 002965A4 7C 1A 00 40 */ cmplw r26, r0 -/* 8029A948 002965A8 41 80 E9 CC */ blt lbl_80299314 -lbl_8029A94C: -/* 8029A94C 002965AC 39 61 00 20 */ addi r11, r1, 0x20 -/* 8029A950 002965B0 4B F2 C8 21 */ bl _restgpr_26 -/* 8029A954 002965B4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8029A958 002965B8 7C 08 03 A6 */ mtlr r0 -/* 8029A95C 002965BC 38 21 00 20 */ addi r1, r1, 0x20 -/* 8029A960 002965C0 4E 80 00 20 */ blr - -.global func_8029A964 -func_8029A964: -/* 8029A964 002965C4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029A968 002965C8 7C 08 02 A6 */ mflr r0 -/* 8029A96C 002965CC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029A970 002965D0 1C 03 00 44 */ mulli r0, r3, 0x44 -/* 8029A974 002965D4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8029A978 002965D8 93 C1 00 08 */ stw r30, 8(r1) -/* 8029A97C 002965DC 7C 9E 23 78 */ mr r30, r4 -/* 8029A980 002965E0 80 6D AC 60 */ lwz r3, lbl_8063FF20-_SDA_BASE_(r13) -/* 8029A984 002965E4 7F E3 02 14 */ add r31, r3, r0 -/* 8029A988 002965E8 7C 63 00 2E */ lwzx r3, r3, r0 -/* 8029A98C 002965EC 54 60 00 03 */ rlwinm. r0, r3, 0, 0, 1 -/* 8029A990 002965F0 41 82 03 F8 */ beq lbl_8029AD88 -/* 8029A994 002965F4 54 60 00 01 */ rlwinm. r0, r3, 0, 0, 0 -/* 8029A998 002965F8 41 82 00 50 */ beq lbl_8029A9E8 -/* 8029A99C 002965FC A0 1F 00 26 */ lhz r0, 0x26(r31) -/* 8029A9A0 00296600 B0 1F 00 24 */ sth r0, 0x24(r31) -/* 8029A9A4 00296604 A0 1F 00 2A */ lhz r0, 0x2a(r31) -/* 8029A9A8 00296608 B0 1F 00 28 */ sth r0, 0x28(r31) -/* 8029A9AC 0029660C A0 1F 00 2E */ lhz r0, 0x2e(r31) -/* 8029A9B0 00296610 B0 1F 00 2C */ sth r0, 0x2c(r31) -/* 8029A9B4 00296614 A0 1F 00 32 */ lhz r0, 0x32(r31) -/* 8029A9B8 00296618 B0 1F 00 30 */ sth r0, 0x30(r31) -/* 8029A9BC 0029661C A0 1F 00 36 */ lhz r0, 0x36(r31) -/* 8029A9C0 00296620 B0 1F 00 34 */ sth r0, 0x34(r31) -/* 8029A9C4 00296624 A0 1F 00 3A */ lhz r0, 0x3a(r31) -/* 8029A9C8 00296628 B0 1F 00 38 */ sth r0, 0x38(r31) -/* 8029A9CC 0029662C A0 1F 00 3E */ lhz r0, 0x3e(r31) -/* 8029A9D0 00296630 B0 1F 00 3C */ sth r0, 0x3c(r31) -/* 8029A9D4 00296634 A0 1F 00 42 */ lhz r0, 0x42(r31) -/* 8029A9D8 00296638 B0 1F 00 40 */ sth r0, 0x40(r31) -/* 8029A9DC 0029663C 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029A9E0 00296640 54 00 00 7E */ clrlwi r0, r0, 1 -/* 8029A9E4 00296644 90 1F 00 00 */ stw r0, 0(r31) -lbl_8029A9E8: -/* 8029A9E8 00296648 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029A9EC 0029664C 54 00 00 43 */ rlwinm. r0, r0, 0, 1, 1 -/* 8029A9F0 00296650 41 82 01 04 */ beq lbl_8029AAF4 -/* 8029A9F4 00296654 80 7F 00 04 */ lwz r3, 4(r31) -/* 8029A9F8 00296658 4B FF CF 4D */ bl func_80297944 -/* 8029A9FC 0029665C B0 7F 00 26 */ sth r3, 0x26(r31) -/* 8029AA00 00296660 80 7F 00 08 */ lwz r3, 8(r31) -/* 8029AA04 00296664 4B FF CF 41 */ bl func_80297944 -/* 8029AA08 00296668 B0 7F 00 2E */ sth r3, 0x2e(r31) -/* 8029AA0C 0029666C 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 8029AA10 00296670 4B FF CF 35 */ bl func_80297944 -/* 8029AA14 00296674 B0 7F 00 36 */ sth r3, 0x36(r31) -/* 8029AA18 00296678 80 7F 00 10 */ lwz r3, 0x10(r31) -/* 8029AA1C 0029667C 4B FF CF 29 */ bl func_80297944 -/* 8029AA20 00296680 B0 7F 00 3E */ sth r3, 0x3e(r31) -/* 8029AA24 00296684 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029AA28 00296688 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 8029AA2C 0029668C 41 82 00 14 */ beq lbl_8029AA40 -/* 8029AA30 00296690 80 7F 00 14 */ lwz r3, 0x14(r31) -/* 8029AA34 00296694 4B FF CF 11 */ bl func_80297944 -/* 8029AA38 00296698 B0 7F 00 2A */ sth r3, 0x2a(r31) -/* 8029AA3C 0029669C 48 00 00 18 */ b lbl_8029AA54 -lbl_8029AA40: -/* 8029AA40 002966A0 80 7F 00 04 */ lwz r3, 4(r31) -/* 8029AA44 002966A4 80 1F 00 14 */ lwz r0, 0x14(r31) -/* 8029AA48 002966A8 7C 63 02 14 */ add r3, r3, r0 -/* 8029AA4C 002966AC 4B FF CE F9 */ bl func_80297944 -/* 8029AA50 002966B0 B0 7F 00 2A */ sth r3, 0x2a(r31) -lbl_8029AA54: -/* 8029AA54 002966B4 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029AA58 002966B8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 8029AA5C 002966BC 41 82 00 14 */ beq lbl_8029AA70 -/* 8029AA60 002966C0 80 7F 00 18 */ lwz r3, 0x18(r31) -/* 8029AA64 002966C4 4B FF CE E1 */ bl func_80297944 -/* 8029AA68 002966C8 B0 7F 00 32 */ sth r3, 0x32(r31) -/* 8029AA6C 002966CC 48 00 00 18 */ b lbl_8029AA84 -lbl_8029AA70: -/* 8029AA70 002966D0 80 7F 00 08 */ lwz r3, 8(r31) -/* 8029AA74 002966D4 80 1F 00 18 */ lwz r0, 0x18(r31) -/* 8029AA78 002966D8 7C 63 02 14 */ add r3, r3, r0 -/* 8029AA7C 002966DC 4B FF CE C9 */ bl func_80297944 -/* 8029AA80 002966E0 B0 7F 00 32 */ sth r3, 0x32(r31) -lbl_8029AA84: -/* 8029AA84 002966E4 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029AA88 002966E8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 8029AA8C 002966EC 41 82 00 14 */ beq lbl_8029AAA0 -/* 8029AA90 002966F0 80 7F 00 1C */ lwz r3, 0x1c(r31) -/* 8029AA94 002966F4 4B FF CE B1 */ bl func_80297944 -/* 8029AA98 002966F8 B0 7F 00 3A */ sth r3, 0x3a(r31) -/* 8029AA9C 002966FC 48 00 00 18 */ b lbl_8029AAB4 -lbl_8029AAA0: -/* 8029AAA0 00296700 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 8029AAA4 00296704 80 1F 00 1C */ lwz r0, 0x1c(r31) -/* 8029AAA8 00296708 7C 63 02 14 */ add r3, r3, r0 -/* 8029AAAC 0029670C 4B FF CE 99 */ bl func_80297944 -/* 8029AAB0 00296710 B0 7F 00 3A */ sth r3, 0x3a(r31) -lbl_8029AAB4: -/* 8029AAB4 00296714 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029AAB8 00296718 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 8029AABC 0029671C 41 82 00 14 */ beq lbl_8029AAD0 -/* 8029AAC0 00296720 80 7F 00 20 */ lwz r3, 0x20(r31) -/* 8029AAC4 00296724 4B FF CE 81 */ bl func_80297944 -/* 8029AAC8 00296728 B0 7F 00 42 */ sth r3, 0x42(r31) -/* 8029AACC 0029672C 48 00 00 18 */ b lbl_8029AAE4 -lbl_8029AAD0: -/* 8029AAD0 00296730 80 7F 00 10 */ lwz r3, 0x10(r31) -/* 8029AAD4 00296734 80 1F 00 20 */ lwz r0, 0x20(r31) -/* 8029AAD8 00296738 7C 63 02 14 */ add r3, r3, r0 -/* 8029AADC 0029673C 4B FF CE 69 */ bl func_80297944 -/* 8029AAE0 00296740 B0 7F 00 42 */ sth r3, 0x42(r31) -lbl_8029AAE4: -/* 8029AAE4 00296744 80 1F 00 00 */ lwz r0, 0(r31) -/* 8029AAE8 00296748 54 00 00 80 */ rlwinm r0, r0, 0, 2, 0 -/* 8029AAEC 0029674C 64 00 80 00 */ oris r0, r0, 0x8000 -/* 8029AAF0 00296750 90 1F 00 00 */ stw r0, 0(r31) -lbl_8029AAF4: -/* 8029AAF4 00296754 A0 9F 00 24 */ lhz r4, 0x24(r31) -/* 8029AAF8 00296758 38 7E 01 04 */ addi r3, r30, 0x104 -/* 8029AAFC 0029675C 38 00 00 00 */ li r0, 0 -/* 8029AB00 00296760 2C 04 00 00 */ cmpwi r4, 0 -/* 8029AB04 00296764 B0 9E 01 02 */ sth r4, 0x102(r30) -/* 8029AB08 00296768 41 82 00 08 */ beq lbl_8029AB10 -/* 8029AB0C 0029676C 60 00 00 01 */ ori r0, r0, 1 -lbl_8029AB10: -/* 8029AB10 00296770 A0 DF 00 24 */ lhz r6, 0x24(r31) -/* 8029AB14 00296774 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029AB18 00296778 A0 BF 00 26 */ lhz r5, 0x26(r31) -/* 8029AB1C 0029677C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029AB20 00296780 7C 86 28 50 */ subf r4, r6, r5 -/* 8029AB24 00296784 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029AB28 00296788 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029AB2C 0029678C 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029AB30 00296790 7C A4 2A 14 */ add r5, r4, r5 -/* 8029AB34 00296794 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029AB38 00296798 B0 A3 00 00 */ sth r5, 0(r3) -/* 8029AB3C 0029679C 41 82 00 0C */ beq lbl_8029AB48 -/* 8029AB40 002967A0 60 00 00 02 */ ori r0, r0, 2 -/* 8029AB44 002967A4 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AB48: -/* 8029AB48 002967A8 A0 9F 00 28 */ lhz r4, 0x28(r31) -/* 8029AB4C 002967AC 2C 04 00 00 */ cmpwi r4, 0 -/* 8029AB50 002967B0 B0 83 00 02 */ sth r4, 2(r3) -/* 8029AB54 002967B4 41 82 00 0C */ beq lbl_8029AB60 -/* 8029AB58 002967B8 60 00 00 04 */ ori r0, r0, 4 -/* 8029AB5C 002967BC 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AB60: -/* 8029AB60 002967C0 A0 DF 00 28 */ lhz r6, 0x28(r31) -/* 8029AB64 002967C4 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029AB68 002967C8 A0 BF 00 2A */ lhz r5, 0x2a(r31) -/* 8029AB6C 002967CC 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029AB70 002967D0 7C 86 28 50 */ subf r4, r6, r5 -/* 8029AB74 002967D4 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029AB78 002967D8 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029AB7C 002967DC 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029AB80 002967E0 7C A4 2A 14 */ add r5, r4, r5 -/* 8029AB84 002967E4 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029AB88 002967E8 B0 A3 00 04 */ sth r5, 4(r3) -/* 8029AB8C 002967EC 41 82 00 0C */ beq lbl_8029AB98 -/* 8029AB90 002967F0 60 00 00 08 */ ori r0, r0, 8 -/* 8029AB94 002967F4 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AB98: -/* 8029AB98 002967F8 A0 9F 00 2C */ lhz r4, 0x2c(r31) -/* 8029AB9C 002967FC 2C 04 00 00 */ cmpwi r4, 0 -/* 8029ABA0 00296800 B0 83 00 06 */ sth r4, 6(r3) -/* 8029ABA4 00296804 41 82 00 0C */ beq lbl_8029ABB0 -/* 8029ABA8 00296808 60 00 00 10 */ ori r0, r0, 0x10 -/* 8029ABAC 0029680C 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029ABB0: -/* 8029ABB0 00296810 A0 DF 00 2C */ lhz r6, 0x2c(r31) -/* 8029ABB4 00296814 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029ABB8 00296818 A0 BF 00 2E */ lhz r5, 0x2e(r31) -/* 8029ABBC 0029681C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029ABC0 00296820 7C 86 28 50 */ subf r4, r6, r5 -/* 8029ABC4 00296824 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029ABC8 00296828 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029ABCC 0029682C 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029ABD0 00296830 7C A4 2A 14 */ add r5, r4, r5 -/* 8029ABD4 00296834 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029ABD8 00296838 B0 A3 00 08 */ sth r5, 8(r3) -/* 8029ABDC 0029683C 41 82 00 0C */ beq lbl_8029ABE8 -/* 8029ABE0 00296840 60 00 00 20 */ ori r0, r0, 0x20 -/* 8029ABE4 00296844 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029ABE8: -/* 8029ABE8 00296848 A0 9F 00 30 */ lhz r4, 0x30(r31) -/* 8029ABEC 0029684C 2C 04 00 00 */ cmpwi r4, 0 -/* 8029ABF0 00296850 B0 83 00 0A */ sth r4, 0xa(r3) -/* 8029ABF4 00296854 41 82 00 0C */ beq lbl_8029AC00 -/* 8029ABF8 00296858 60 00 00 40 */ ori r0, r0, 0x40 -/* 8029ABFC 0029685C 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AC00: -/* 8029AC00 00296860 A0 DF 00 30 */ lhz r6, 0x30(r31) -/* 8029AC04 00296864 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029AC08 00296868 A0 BF 00 32 */ lhz r5, 0x32(r31) -/* 8029AC0C 0029686C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029AC10 00296870 7C 86 28 50 */ subf r4, r6, r5 -/* 8029AC14 00296874 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029AC18 00296878 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029AC1C 0029687C 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029AC20 00296880 7C A4 2A 14 */ add r5, r4, r5 -/* 8029AC24 00296884 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029AC28 00296888 B0 A3 00 0C */ sth r5, 0xc(r3) -/* 8029AC2C 0029688C 41 82 00 0C */ beq lbl_8029AC38 -/* 8029AC30 00296890 60 00 00 80 */ ori r0, r0, 0x80 -/* 8029AC34 00296894 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AC38: -/* 8029AC38 00296898 A0 9F 00 34 */ lhz r4, 0x34(r31) -/* 8029AC3C 0029689C 2C 04 00 00 */ cmpwi r4, 0 -/* 8029AC40 002968A0 B0 83 00 0E */ sth r4, 0xe(r3) -/* 8029AC44 002968A4 41 82 00 0C */ beq lbl_8029AC50 -/* 8029AC48 002968A8 60 00 01 00 */ ori r0, r0, 0x100 -/* 8029AC4C 002968AC 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AC50: -/* 8029AC50 002968B0 A0 DF 00 34 */ lhz r6, 0x34(r31) -/* 8029AC54 002968B4 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029AC58 002968B8 A0 BF 00 36 */ lhz r5, 0x36(r31) -/* 8029AC5C 002968BC 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029AC60 002968C0 7C 86 28 50 */ subf r4, r6, r5 -/* 8029AC64 002968C4 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029AC68 002968C8 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029AC6C 002968CC 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029AC70 002968D0 7C A4 2A 14 */ add r5, r4, r5 -/* 8029AC74 002968D4 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029AC78 002968D8 B0 A3 00 10 */ sth r5, 0x10(r3) -/* 8029AC7C 002968DC 41 82 00 0C */ beq lbl_8029AC88 -/* 8029AC80 002968E0 60 00 02 00 */ ori r0, r0, 0x200 -/* 8029AC84 002968E4 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AC88: -/* 8029AC88 002968E8 A0 9F 00 38 */ lhz r4, 0x38(r31) -/* 8029AC8C 002968EC 2C 04 00 00 */ cmpwi r4, 0 -/* 8029AC90 002968F0 B0 83 00 12 */ sth r4, 0x12(r3) -/* 8029AC94 002968F4 41 82 00 0C */ beq lbl_8029ACA0 -/* 8029AC98 002968F8 60 00 04 00 */ ori r0, r0, 0x400 -/* 8029AC9C 002968FC 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029ACA0: -/* 8029ACA0 00296900 A0 DF 00 38 */ lhz r6, 0x38(r31) -/* 8029ACA4 00296904 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029ACA8 00296908 A0 BF 00 3A */ lhz r5, 0x3a(r31) -/* 8029ACAC 0029690C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029ACB0 00296910 7C 86 28 50 */ subf r4, r6, r5 -/* 8029ACB4 00296914 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029ACB8 00296918 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029ACBC 0029691C 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029ACC0 00296920 7C A4 2A 14 */ add r5, r4, r5 -/* 8029ACC4 00296924 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029ACC8 00296928 B0 A3 00 14 */ sth r5, 0x14(r3) -/* 8029ACCC 0029692C 41 82 00 0C */ beq lbl_8029ACD8 -/* 8029ACD0 00296930 60 00 08 00 */ ori r0, r0, 0x800 -/* 8029ACD4 00296934 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029ACD8: -/* 8029ACD8 00296938 A0 9F 00 3C */ lhz r4, 0x3c(r31) -/* 8029ACDC 0029693C 2C 04 00 00 */ cmpwi r4, 0 -/* 8029ACE0 00296940 B0 83 00 16 */ sth r4, 0x16(r3) -/* 8029ACE4 00296944 41 82 00 0C */ beq lbl_8029ACF0 -/* 8029ACE8 00296948 60 00 10 00 */ ori r0, r0, 0x1000 -/* 8029ACEC 0029694C 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029ACF0: -/* 8029ACF0 00296950 A0 DF 00 3C */ lhz r6, 0x3c(r31) -/* 8029ACF4 00296954 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029ACF8 00296958 A0 BF 00 3E */ lhz r5, 0x3e(r31) -/* 8029ACFC 0029695C 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029AD00 00296960 7C 86 28 50 */ subf r4, r6, r5 -/* 8029AD04 00296964 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029AD08 00296968 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029AD0C 0029696C 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029AD10 00296970 7C A4 2A 14 */ add r5, r4, r5 -/* 8029AD14 00296974 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029AD18 00296978 B0 A3 00 18 */ sth r5, 0x18(r3) -/* 8029AD1C 0029697C 41 82 00 0C */ beq lbl_8029AD28 -/* 8029AD20 00296980 60 00 20 00 */ ori r0, r0, 0x2000 -/* 8029AD24 00296984 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AD28: -/* 8029AD28 00296988 A0 9F 00 40 */ lhz r4, 0x40(r31) -/* 8029AD2C 0029698C 2C 04 00 00 */ cmpwi r4, 0 -/* 8029AD30 00296990 B0 83 00 1A */ sth r4, 0x1a(r3) -/* 8029AD34 00296994 41 82 00 0C */ beq lbl_8029AD40 -/* 8029AD38 00296998 60 00 40 00 */ ori r0, r0, 0x4000 -/* 8029AD3C 0029699C 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AD40: -/* 8029AD40 002969A0 A0 DF 00 40 */ lhz r6, 0x40(r31) -/* 8029AD44 002969A4 3C 80 38 E4 */ lis r4, 0x38E38E39@ha -/* 8029AD48 002969A8 A0 BF 00 42 */ lhz r5, 0x42(r31) -/* 8029AD4C 002969AC 38 E4 8E 39 */ addi r7, r4, 0x38E38E39@l -/* 8029AD50 002969B0 7C 86 28 50 */ subf r4, r6, r5 -/* 8029AD54 002969B4 7C 87 20 96 */ mulhw r4, r7, r4 -/* 8029AD58 002969B8 7C 84 16 70 */ srawi r4, r4, 2 -/* 8029AD5C 002969BC 54 85 0F FE */ srwi r5, r4, 0x1f -/* 8029AD60 002969C0 7C A4 2A 14 */ add r5, r4, r5 -/* 8029AD64 002969C4 54 A4 04 3F */ clrlwi. r4, r5, 0x10 -/* 8029AD68 002969C8 B0 A3 00 1C */ sth r5, 0x1c(r3) -/* 8029AD6C 002969CC 41 82 00 0C */ beq lbl_8029AD78 -/* 8029AD70 002969D0 60 00 80 00 */ ori r0, r0, 0x8000 -/* 8029AD74 002969D4 54 00 04 3E */ clrlwi r0, r0, 0x10 -lbl_8029AD78: -/* 8029AD78 002969D8 80 7E 00 1C */ lwz r3, 0x1c(r30) -/* 8029AD7C 002969DC B0 1E 01 00 */ sth r0, 0x100(r30) -/* 8029AD80 002969E0 64 60 03 00 */ oris r0, r3, 0x300 -/* 8029AD84 002969E4 90 1E 00 1C */ stw r0, 0x1c(r30) -lbl_8029AD88: -/* 8029AD88 002969E8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029AD8C 002969EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8029AD90 002969F0 83 C1 00 08 */ lwz r30, 8(r1) -/* 8029AD94 002969F4 7C 08 03 A6 */ mtlr r0 -/* 8029AD98 002969F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029AD9C 002969FC 4E 80 00 20 */ blr - -.global func_8029ADA0 -func_8029ADA0: -/* 8029ADA0 00296A00 80 AD AC 60 */ lwz r5, lbl_8063FF20-_SDA_BASE_(r13) -/* 8029ADA4 00296A04 1C 83 00 44 */ mulli r4, r3, 0x44 -/* 8029ADA8 00296A08 38 60 00 00 */ li r3, 0 -/* 8029ADAC 00296A0C 7C 64 29 6E */ stwux r3, r4, r5 -/* 8029ADB0 00296A10 38 00 FC 40 */ li r0, -960 -/* 8029ADB4 00296A14 90 64 00 04 */ stw r3, 4(r4) -/* 8029ADB8 00296A18 90 64 00 08 */ stw r3, 8(r4) -/* 8029ADBC 00296A1C 90 64 00 0C */ stw r3, 0xc(r4) -/* 8029ADC0 00296A20 90 64 00 10 */ stw r3, 0x10(r4) -/* 8029ADC4 00296A24 90 04 00 14 */ stw r0, 0x14(r4) -/* 8029ADC8 00296A28 90 04 00 18 */ stw r0, 0x18(r4) -/* 8029ADCC 00296A2C 90 04 00 1C */ stw r0, 0x1c(r4) -/* 8029ADD0 00296A30 90 04 00 20 */ stw r0, 0x20(r4) -/* 8029ADD4 00296A34 B0 64 00 40 */ sth r3, 0x40(r4) -/* 8029ADD8 00296A38 B0 64 00 3C */ sth r3, 0x3c(r4) -/* 8029ADDC 00296A3C B0 64 00 38 */ sth r3, 0x38(r4) -/* 8029ADE0 00296A40 B0 64 00 34 */ sth r3, 0x34(r4) -/* 8029ADE4 00296A44 B0 64 00 30 */ sth r3, 0x30(r4) -/* 8029ADE8 00296A48 B0 64 00 2C */ sth r3, 0x2c(r4) -/* 8029ADEC 00296A4C B0 64 00 28 */ sth r3, 0x28(r4) -/* 8029ADF0 00296A50 B0 64 00 24 */ sth r3, 0x24(r4) -/* 8029ADF4 00296A54 4E 80 00 20 */ blr - .global func_8029ADF8 func_8029ADF8: /* 8029ADF8 00296A58 3C 60 CC 00 */ lis r3, 0xCC005000@ha @@ -12654,7 +8342,7 @@ lbl_802A244C: /* 802A244C 0029E0AC 7E C4 B3 78 */ mr r4, r22 /* 802A2450 0029E0B0 38 61 00 10 */ addi r3, r1, 0x10 /* 802A2454 0029E0B4 3A D6 00 01 */ addi r22, r22, 1 -/* 802A2458 0029E0B8 48 00 01 F9 */ bl func_802A2650 +/* 802A2458 0029E0B8 48 00 01 F9 */ bl SlideByte /* 802A245C 0029E0BC 3A B5 00 01 */ addi r21, r21, 1 lbl_802A2460: /* 802A2460 0029E0C0 7C 15 F8 40 */ cmplw r21, r31 @@ -12671,7 +8359,7 @@ lbl_802A2474: lbl_802A2488: /* 802A2488 0029E0E8 7E E4 BB 78 */ mr r4, r23 /* 802A248C 0029E0EC 38 61 00 10 */ addi r3, r1, 0x10 -/* 802A2490 0029E0F0 48 00 01 C1 */ bl func_802A2650 +/* 802A2490 0029E0F0 48 00 01 C1 */ bl SlideByte /* 802A2494 0029E0F4 88 17 00 00 */ lbz r0, 0(r23) /* 802A2498 0029E0F8 3B 18 FF FF */ addi r24, r24, -1 /* 802A249C 0029E0FC 3B DE 00 01 */ addi r30, r30, 1 @@ -12806,8 +8494,8 @@ lbl_802A2638: /* 802A2648 0029E2A8 38 21 00 20 */ addi r1, r1, 0x20 /* 802A264C 0029E2AC 4E 80 00 20 */ blr -.global func_802A2650 -func_802A2650: +.global SlideByte +SlideByte: /* 802A2650 0029E2B0 A0 A3 00 02 */ lhz r5, 2(r3) /* 802A2654 0029E2B4 88 E4 00 00 */ lbz r7, 0(r4) /* 802A2658 0029E2B8 28 05 10 00 */ cmplwi r5, 0x1000 @@ -12862,8 +8550,8 @@ lbl_802A26FC: /* 802A2704 0029E364 B0 03 00 02 */ sth r0, 2(r3) /* 802A2708 0029E368 4E 80 00 20 */ blr -.global func_802A270C -func_802A270C: +.global CXGetUncompressedSize +CXGetUncompressedSize: /* 802A270C 0029E36C 80 A3 00 00 */ lwz r5, 0(r3) /* 802A2710 0029E370 54 A4 42 1E */ rlwinm r4, r5, 8, 8, 0xf /* 802A2714 0029E374 54 A0 C4 2E */ rlwinm r0, r5, 0x18, 0x10, 0x17 diff --git a/obj_files.mk b/obj_files.mk index ed2559d..8490527 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -200,6 +200,11 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/text_8_5.o \ $(BUILD_DIR)/asm/SDK/MEM/mem_heapCommon.o \ $(BUILD_DIR)/asm/SDK/MEM/mem_expHeap.o \ + $(BUILD_DIR)/asm/SDK/MEM/mem_frameHeap.o \ + $(BUILD_DIR)/asm/SDK/MEM/mem_allocator.o \ + $(BUILD_DIR)/asm/SDK/MEM/mem_list.o \ + $(BUILD_DIR)/asm/SDK/MIX/mix.o \ + $(BUILD_DIR)/asm/SDK/MIX/remote.o \ $(BUILD_DIR)/asm/text_8_6.o \ $(BUILD_DIR)/asm/text_9.o \ $(BUILD_DIR)/asm/text_10.o \ |